diff --git a/CMakeLists.txt b/CMakeLists.txt index 751d76b..96dd3cb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ cmake_minimum_required(VERSION 3.5) set(CMAKE_CXX_STANDARD 14) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -Wall -g -pedantic") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -Wall -Wextra -Wno-unused -Wshadow -Werror -g -pedantic") # include generated files in project environment include_directories(${CMAKE_CURRENT_BINARY_DIR}) diff --git a/README.md b/README.md index b2b8344..fa774a7 100644 --- a/README.md +++ b/README.md @@ -109,7 +109,7 @@ * 线下: 线下检查只检查第三部分, 组长带组员到负责组长的助教处检查, 选做部分请找本次实验负责助教检查 * 迟交规定 * 迟交需要邮件通知助教: - * 邮箱: huangzq@mail.ustc.edu.cn + * 邮箱: xuchaijun@mail.ustc.edu.cn * 邮件主题: PW6迟交-学号 * 内容: 包括迟交原因、最后版本commit ID、迟交时间等 * 关于抄袭和雷同 diff --git a/Student/task2/CMakeLists.txt b/Student/task2/CMakeLists.txt index 3ff41d8..8c8c43d 100644 --- a/Student/task2/CMakeLists.txt +++ b/Student/task2/CMakeLists.txt @@ -10,6 +10,7 @@ set(SYSYF_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) # include generated files in project environment +include_directories(${SYSYF_SOURCE_DIR}include) include_directories(${SYSYF_SOURCE_DIR}include/SysYFIR) add_subdirectory(${SYSYF_SOURCE_DIR}src/SysYFIR src/SysYFIR) diff --git a/Student/task2/demo/go_upstairs_gen.cpp b/Student/task2/demo/go_upstairs_gen.cpp index b4143d8..5461885 100644 --- a/Student/task2/demo/go_upstairs_gen.cpp +++ b/Student/task2/demo/go_upstairs_gen.cpp @@ -15,24 +15,26 @@ #endif #define CONST_INT(num) \ - ConstantInt::get(num, module) + ConstantInt::create(num, module) #define CONST_FP(num) \ - ConstantFloat::get(num, module) // 得到常数值的表示,方便后面多次用到 + ConstantFloat::create(num, module) // 得到常数值的表示,方便后面多次用到 + +using namespace SysYF::IR; int main() { - auto module = new Module("SysY code"); // module name是什么无关紧要 - auto builder = new IRStmtBuilder(nullptr, module); - Type *Int32Type = Type::get_int32_type(module); + auto module = Module::create("SysYF code"); // module name是什么无关紧要 + auto builder = IRStmtBuilder::create(nullptr, module); + SysYF::Ptr Int32Type = Type::get_int32_type(module); // 全局数组,num,x - auto *arrayType_num = ArrayType::get(Int32Type, 2); - auto *arrayType_x = ArrayType::get(Int32Type, 1); - auto zero_initializer = ConstantZero::get(Int32Type, module); - std::vector init_val; + auto arrayType_num = ArrayType::get(Int32Type, 2); + auto arrayType_x = ArrayType::get(Int32Type, 1); + auto zero_initializer = ConstantZero::create(Int32Type, module); + std::vector> init_val; init_val.push_back(CONST_INT(4)); init_val.push_back(CONST_INT(8)); - auto num_initializer = ConstantArray::get(arrayType_num, init_val); + auto num_initializer = ConstantArray::create(arrayType_num, init_val); auto num = GlobalVariable::create("num", module, arrayType_num, false, num_initializer);// 是否是常量定义,初始化常量(ConstantZero类) auto x = GlobalVariable::create("x", module, arrayType_x, false, zero_initializer);// 参数解释: 名字name,所属module,全局变量类型type, @@ -41,10 +43,10 @@ int main() { // climbStairs函数 // 函数参数类型的vector - std::vector Ints(1, Int32Type); + std::vector> Ints(1, Int32Type); //通过返回值类型与参数类型列表得到函数类型 - auto climbStairsFunTy = FunctionType::get(Int32Type, Ints); + auto climbStairsFunTy = FunctionType::create(Int32Type, Ints); // 由函数类型得到函数 auto climbStairsFun = Function::create(climbStairsFunTy, @@ -58,7 +60,7 @@ int main() { auto retAlloca = builder->create_alloca(Int32Type); // 在内存中分配返回值的位置 auto nAlloca = builder->create_alloca(Int32Type); // 在内存中分配参数n的位置 - std::vector args; // 获取climbStairs函数的形参,通过Function中的iterator + std::vector> args; // 获取climbStairs函数的形参,通过Function中的iterator for (auto arg = climbStairsFun->arg_begin(); arg != climbStairsFun->arg_end(); arg++) { args.push_back(*arg); // * 号运算符是从迭代器中取出迭代器当前指向的元素 } @@ -82,7 +84,7 @@ int main() { builder->create_br(retBB); // br retBB builder->set_insert_point(falseBB); // if false - auto *arrayType_dp = ArrayType::get(Int32Type, 10); + auto arrayType_dp = ArrayType::get(Int32Type, 10); auto dpAlloca = builder->create_alloca(arrayType_dp); auto dp0Gep = builder->create_gep(dpAlloca, {CONST_INT(0), CONST_INT(0)}); @@ -147,7 +149,7 @@ int main() { builder->create_ret(retLoad); // main函数 - auto mainFun = Function::create(FunctionType::get(Int32Type, {}), + auto mainFun = Function::create(FunctionType::create(Int32Type, {}), "main", module); bb = BasicBlock::create(module, "entry", mainFun); // BasicBlock的名字在生成中无所谓,但是可以方便阅读 @@ -189,6 +191,5 @@ int main() { // 还有涉及到的C++语法,可以在gitlab上发issue提问或者向大家提供指导 // 对于这个例子里的代码风格/用法,如果有好的建议也欢迎提出! std::cout << module->print(); - delete module; return 0; } diff --git a/Student/task3/test/01_main.out b/Student/task3/Test/Easy/01_main.out similarity index 100% rename from Student/task3/test/01_main.out rename to Student/task3/Test/Easy/01_main.out diff --git a/Student/task3/test/01_main.sy b/Student/task3/Test/Easy/01_main.sy similarity index 100% rename from Student/task3/test/01_main.sy rename to Student/task3/Test/Easy/01_main.sy diff --git a/Student/task3/test/02_var_defn.out b/Student/task3/Test/Easy/02_var_defn.out similarity index 100% rename from Student/task3/test/02_var_defn.out rename to Student/task3/Test/Easy/02_var_defn.out diff --git a/Student/task3/test/02_var_defn.sy b/Student/task3/Test/Easy/02_var_defn.sy similarity index 100% rename from Student/task3/test/02_var_defn.sy rename to Student/task3/Test/Easy/02_var_defn.sy diff --git a/Student/task3/test/03_empty_stmt.out b/Student/task3/Test/Easy/03_empty_stmt.out similarity index 100% rename from Student/task3/test/03_empty_stmt.out rename to Student/task3/Test/Easy/03_empty_stmt.out diff --git a/Student/task3/test/03_empty_stmt.sy b/Student/task3/Test/Easy/03_empty_stmt.sy similarity index 100% rename from Student/task3/test/03_empty_stmt.sy rename to Student/task3/Test/Easy/03_empty_stmt.sy diff --git a/Student/task3/test/04_arr_defn.out b/Student/task3/Test/Easy/04_arr_defn.out similarity index 100% rename from Student/task3/test/04_arr_defn.out rename to Student/task3/Test/Easy/04_arr_defn.out diff --git a/Student/task3/test/04_arr_defn.sy b/Student/task3/Test/Easy/04_arr_defn.sy similarity index 100% rename from Student/task3/test/04_arr_defn.sy rename to Student/task3/Test/Easy/04_arr_defn.sy diff --git a/Student/task3/test/05_arr_assign.out b/Student/task3/Test/Easy/05_arr_assign.out similarity index 100% rename from Student/task3/test/05_arr_assign.out rename to Student/task3/Test/Easy/05_arr_assign.out diff --git a/Student/task3/test/05_arr_assign.sy b/Student/task3/Test/Easy/05_arr_assign.sy similarity index 100% rename from Student/task3/test/05_arr_assign.sy rename to Student/task3/Test/Easy/05_arr_assign.sy diff --git a/Student/task3/test/06_const_defn.out b/Student/task3/Test/Easy/06_const_defn.out similarity index 100% rename from Student/task3/test/06_const_defn.out rename to Student/task3/Test/Easy/06_const_defn.out diff --git a/Student/task3/test/06_const_defn.sy b/Student/task3/Test/Easy/06_const_defn.sy similarity index 100% rename from Student/task3/test/06_const_defn.sy rename to Student/task3/Test/Easy/06_const_defn.sy diff --git a/Student/task3/test/07_const_array_defn.out b/Student/task3/Test/Easy/07_const_array_defn.out similarity index 100% rename from Student/task3/test/07_const_array_defn.out rename to Student/task3/Test/Easy/07_const_array_defn.out diff --git a/Student/task3/test/07_const_array_defn.sy b/Student/task3/Test/Easy/07_const_array_defn.sy similarity index 100% rename from Student/task3/test/07_const_array_defn.sy rename to Student/task3/Test/Easy/07_const_array_defn.sy diff --git a/Student/task3/test/08_var_defn_func.out b/Student/task3/Test/Easy/08_var_defn_func.out similarity index 100% rename from Student/task3/test/08_var_defn_func.out rename to Student/task3/Test/Easy/08_var_defn_func.out diff --git a/Student/task3/test/08_var_defn_func.sy b/Student/task3/Test/Easy/08_var_defn_func.sy similarity index 100% rename from Student/task3/test/08_var_defn_func.sy rename to Student/task3/Test/Easy/08_var_defn_func.sy diff --git a/Student/task3/test/09_void_func.out b/Student/task3/Test/Easy/09_void_func.out similarity index 100% rename from Student/task3/test/09_void_func.out rename to Student/task3/Test/Easy/09_void_func.out diff --git a/Student/task3/test/09_void_func.sy b/Student/task3/Test/Easy/09_void_func.sy similarity index 100% rename from Student/task3/test/09_void_func.sy rename to Student/task3/Test/Easy/09_void_func.sy diff --git a/Student/task3/test/10_if.out b/Student/task3/Test/Easy/10_if.out similarity index 100% rename from Student/task3/test/10_if.out rename to Student/task3/Test/Easy/10_if.out diff --git a/Student/task3/test/10_if.sy b/Student/task3/Test/Easy/10_if.sy similarity index 100% rename from Student/task3/test/10_if.sy rename to Student/task3/Test/Easy/10_if.sy diff --git a/Student/task3/test/11_if_else.out b/Student/task3/Test/Easy/11_if_else.out similarity index 100% rename from Student/task3/test/11_if_else.out rename to Student/task3/Test/Easy/11_if_else.out diff --git a/Student/task3/test/11_if_else.sy b/Student/task3/Test/Easy/11_if_else.sy similarity index 100% rename from Student/task3/test/11_if_else.sy rename to Student/task3/Test/Easy/11_if_else.sy diff --git a/Student/task3/test/12_while.out b/Student/task3/Test/Easy/12_while.out similarity index 100% rename from Student/task3/test/12_while.out rename to Student/task3/Test/Easy/12_while.out diff --git a/Student/task3/test/12_while.sy b/Student/task3/Test/Easy/12_while.sy similarity index 100% rename from Student/task3/test/12_while.sy rename to Student/task3/Test/Easy/12_while.sy diff --git a/Student/task3/test/13_break.out b/Student/task3/Test/Easy/13_break.out similarity index 100% rename from Student/task3/test/13_break.out rename to Student/task3/Test/Easy/13_break.out diff --git a/Student/task3/test/13_break.sy b/Student/task3/Test/Easy/13_break.sy similarity index 100% rename from Student/task3/test/13_break.sy rename to Student/task3/Test/Easy/13_break.sy diff --git a/Student/task3/test/14_continue.out b/Student/task3/Test/Easy/14_continue.out similarity index 100% rename from Student/task3/test/14_continue.out rename to Student/task3/Test/Easy/14_continue.out diff --git a/Student/task3/test/14_continue.sy b/Student/task3/Test/Easy/14_continue.sy similarity index 100% rename from Student/task3/test/14_continue.sy rename to Student/task3/Test/Easy/14_continue.sy diff --git a/Student/task3/test/15_getint.in b/Student/task3/Test/Easy/15_getint.in similarity index 100% rename from Student/task3/test/15_getint.in rename to Student/task3/Test/Easy/15_getint.in diff --git a/Student/task3/test/15_getint.out b/Student/task3/Test/Easy/15_getint.out similarity index 100% rename from Student/task3/test/15_getint.out rename to Student/task3/Test/Easy/15_getint.out diff --git a/Student/task3/test/15_getint.sy b/Student/task3/Test/Easy/15_getint.sy similarity index 100% rename from Student/task3/test/15_getint.sy rename to Student/task3/Test/Easy/15_getint.sy diff --git a/Student/task3/test/16_func_test.out b/Student/task3/Test/Easy/16_func_test.out similarity index 100% rename from Student/task3/test/16_func_test.out rename to Student/task3/Test/Easy/16_func_test.out diff --git a/Student/task3/test/16_func_test.sy b/Student/task3/Test/Easy/16_func_test.sy similarity index 100% rename from Student/task3/test/16_func_test.sy rename to Student/task3/Test/Easy/16_func_test.sy diff --git a/Student/task3/test/17_equal.in b/Student/task3/Test/Easy/17_equal.in similarity index 100% rename from Student/task3/test/17_equal.in rename to Student/task3/Test/Easy/17_equal.in diff --git a/Student/task3/test/17_equal.out b/Student/task3/Test/Easy/17_equal.out similarity index 100% rename from Student/task3/test/17_equal.out rename to Student/task3/Test/Easy/17_equal.out diff --git a/Student/task3/test/17_equal.sy b/Student/task3/Test/Easy/17_equal.sy similarity index 100% rename from Student/task3/test/17_equal.sy rename to Student/task3/Test/Easy/17_equal.sy diff --git a/Student/task3/test/18_scope.out b/Student/task3/Test/Easy/18_scope.out similarity index 100% rename from Student/task3/test/18_scope.out rename to Student/task3/Test/Easy/18_scope.out diff --git a/Student/task3/test/18_scope.sy b/Student/task3/Test/Easy/18_scope.sy similarity index 100% rename from Student/task3/test/18_scope.sy rename to Student/task3/Test/Easy/18_scope.sy diff --git a/Student/task3/test/19_gcd.in b/Student/task3/Test/Easy/19_gcd.in similarity index 100% rename from Student/task3/test/19_gcd.in rename to Student/task3/Test/Easy/19_gcd.in diff --git a/Student/task3/test/19_gcd.out b/Student/task3/Test/Easy/19_gcd.out similarity index 100% rename from Student/task3/test/19_gcd.out rename to Student/task3/Test/Easy/19_gcd.out diff --git a/Student/task3/test/19_gcd.sy b/Student/task3/Test/Easy/19_gcd.sy similarity index 100% rename from Student/task3/test/19_gcd.sy rename to Student/task3/Test/Easy/19_gcd.sy diff --git a/Student/task3/test/20_hanoi.in b/Student/task3/Test/Easy/20_hanoi.in similarity index 100% rename from Student/task3/test/20_hanoi.in rename to Student/task3/Test/Easy/20_hanoi.in diff --git a/Student/task3/test/20_hanoi.out b/Student/task3/Test/Easy/20_hanoi.out similarity index 100% rename from Student/task3/test/20_hanoi.out rename to Student/task3/Test/Easy/20_hanoi.out diff --git a/Student/task3/test/20_hanoi.sy b/Student/task3/Test/Easy/20_hanoi.sy similarity index 100% rename from Student/task3/test/20_hanoi.sy rename to Student/task3/Test/Easy/20_hanoi.sy diff --git a/Student/task3/Test/Hard/backpack.out b/Student/task3/Test/Hard/backpack.out new file mode 100644 index 0000000..227eae2 --- /dev/null +++ b/Student/task3/Test/Hard/backpack.out @@ -0,0 +1,2 @@ +15 +0 diff --git a/Student/task3/Test/Hard/backpack.sy b/Student/task3/Test/Hard/backpack.sy new file mode 100644 index 0000000..80fdcd1 --- /dev/null +++ b/Student/task3/Test/Hard/backpack.sy @@ -0,0 +1,65 @@ +const int len = 200; +int V[len * len] = {}; +int w[6] = {0,2,2,6,5,4}; +int v[6] = {0,6,3,5,4,6}; +int x[6]; + +int KnapSack(int n, int C) +{ + int i, j; + i=1; + while(i<=n) + { + j=0; + while(jtmp2) + { + V[i * len + j] = tmp1; + } + else + { + V[i * len + j] = tmp2; + } + + } + j=j+1; + } + i=i+1; + } + + j = C; + i=n; + while(i>=1) + { + if (V[i * len + j]>V[(i - 1) * len + j]) + { + x[i] = 1; + j = j - w[i]; + } + else + { + + x[i] = 0; + } + i=i-1; + } + return V[n * len + C]; +} + +int main() +{ + int s; + int n = 5; + int C=10; + s = KnapSack(n, C); + putint(s); + return 0; + +} diff --git a/Student/task3/Test/Hard/brainfk.in b/Student/task3/Test/Hard/brainfk.in new file mode 100644 index 0000000..23a0b41 --- /dev/null +++ b/Student/task3/Test/Hard/brainfk.in @@ -0,0 +1,2 @@ +4010 +++++++++[->++++++++<]>+++++++++.<+++++[->-----<]>---------.<++++++++[->++++++++<]>++++++.<++++++++[->--------<]>-------------.<+++++++[->+++++++<]>++.<+++++[->+++++<]>+++++++++.+++++.-----.--------.----.<++++[->++++<]>.<++++[->----<]>--------.<++++++++[->--------<]>-.<++++++[->++++++<]>++++.<+++++[->+++++<]>.<++++[->++++<]>+.+++.<+++[->---<]>----.+.<++++++++[->--------<]>---------.<++++++++[->++++++++<]>++++++.<+++[->+++<]>+++.---.--.<++++++++[->--------<]>-------------.<+++++++++[->+++++++++<]>+++.<+++[->---<]>---.---.<++++++++[->--------<]>-----.<++++++[->++++++<]>+.<+++++[->+++++<]>+++.<++++[->++++<]>++.+.<+++++++++[->---------<]>---.<++++++[->++++++<]>++++++.<++++++[->++++++<]>+++++++.-------.-----.++++++.+++.<+++++++++[->---------<]>-.<++++++[->++++++<]>++++.<+++++[->+++++<]>++++++++.--.+.<++++++++[->--------<]>--------.<+++++++[->+++++++<]>++.<++++[->++++<]>.+++++.+++++++..---.<++++++++[->--------<]>.<+++[->---<]>---.<++++++++[->++++++++<]>+.<+++[->+++<]>++++.<+++[->---<]>-.<++++++++[->--------<]>----.<++++++[->++++++<]>+++++.<+++++[->-----<]>---------.<++++++++[->++++++++<]>++++++.<++++++++[->--------<]>-------------.<++++++++[->++++++++<]>++++++++++++++.+.+++++.<+++++++++[->---------<]>---.<++++++++[->++++++++<]>+++++++++.+++++.++++++.<+++[->---<]>------.<+++[->+++<]>++++.<+++[->---<]>----.<+++[->+++<]>+++++.+.<+++[->---<]>------.-.<++++++++[->--------<]>----.<++++++++[->++++++++<]>+++++++++.+++++.<++++++++[->--------<]>--------------.<++++++++[->++++++++<]>+++++++++++++++.+++.<+++[->---<]>-----.+++++.+++++.<+++[->---<]>----.<++++[->++++<]>+.+++++++.<+++++++++[->---------<]>--------.<++++++++[->++++++++<]>++++++++.<+++[->+++<]>++++.--------.<+++[->---<]>---.<+++[->+++<]>++++.+++++.<++++++++[->--------<]>-----.<+++[->---<]>-----.<++++++[->++++++<]>+++++.<+++++[->+++++<]>++++.<++++++++[->--------<]>------.<+++++++++[->+++++++++<]>+++.<+++[->---<]>---.---.<+++[->+++<]>++++.<+++[->---<]>----.<++++++++[->--------<]>-----.<+++++++++[->+++++++++<]>++++++.<++++[->----<]>--.<+++[->+++<]>++++.<+++[->---<]>----.<++++++++[->--------<]>-----.<++++++++[->++++++++<]>+.<+++[->+++<]>++++.<++++++++[->--------<]>--------------.<++++++++[->++++++++<]>+.<+++[->+++<]>++.---.----.+++++++++.<++++++++[->--------<]>--.<+++[->---<]>---.<++++++++[->++++++++<]>+.<++++++++[->--------<]>-.<+++++++++[->+++++++++<]>+++.<+++[->---<]>--.++++.--------.<++++++++[->--------<]>-----.<+++++++++[->+++++++++<]>+++.--.<++++[->----<]>-.<++++[->++++<]>+++++.<++++[->----<]>-.+++++++..-------.<+++[->+++<]>++++.<++++++++[->--------<]>------.<+++[->---<]>---.<++++++++[->++++++++<]>+.<+++[->+++<]>++++.<++++++++[->--------<]>--------------.<++++++++[->++++++++<]>+++++++++++++++.+++++.<+++[->---<]>---.---.<+++[->+++<]>++++.+++++.--------.+++.------.--------.+.<+++[->+++<]>++++.<+++++++++[->---------<]>-.<++++++++[->++++++++<]>+++++++++++++++.+++.<+++++++++[->---------<]>-.<++++++++[->++++++++<]>+.<++++++++[->--------<]>-.<+++++++++[->+++++++++<]>++.++.-----.<+++[->---<]>--.<+++[->+++<]>++++.<+++[->---<]>-.---.<+++[->+++<]>++++.---.<++++++++[->--------<]>---------------.<++++++++[->++++++++<]>+.<+++[->+++<]>+++.++.-.-------.<++++++++[->--------<]>-------.<+++++++++[->+++++++++<]>++++++++.<+++[->---<]>-.++++++.<++++++++[->--------<]>---------.<+++[->---<]>---.<++++++++[->++++++++<]>++++++++++++++++.----.-------.----.<++++[->++++<]>++.<+++[->---<]>-----.<++++++++[->--------<]>-----.<++++++++[->++++++++<]>+++.<+++[->+++<]>+++.--.--------.<++++++++[->--------<]>-----.<+++++++++[->+++++++++<]>+++.-----.<++++++++[->--------<]>---------------.<++++++++[->++++++++<]>+++++++++++++.--------..<+++[->+++<]>++++++.<+++++++++[->---------<]>---.<++++++++[->++++++++<]>+++++++++++++.--------.<++++++++[->--------<]>----.-.<+++++++[->+++++++<]>+++.<++++[->++++<]>++++.-------.<++++[->++++<]>+++.<++++++++[->--------<]>-------------.<++++++++[->++++++++<]>++++++++++++.<+++++++++[->---------<]>--.<++++++++[->++++++++<]>+.<+++[->+++<]>++..<+++++++[->-------<]>-------------.<+++++[->-----<]>--------.---.< diff --git a/Student/task3/Test/Hard/brainfk.out b/Student/task3/Test/Hard/brainfk.out new file mode 100644 index 0000000..843dc54 --- /dev/null +++ b/Student/task3/Test/Hard/brainfk.out @@ -0,0 +1,2 @@ +I'm Suzumiya Haruhi from the East Junior High School, and I'm not interested in ordinary humans. If there were an alien, a time traveller, an otherworlder or a superhero among you, please come to meet me! That's all. +0 diff --git a/Student/task3/Test/Hard/brainfk.sy b/Student/task3/Test/Hard/brainfk.sy new file mode 100644 index 0000000..8b03a80 --- /dev/null +++ b/Student/task3/Test/Hard/brainfk.sy @@ -0,0 +1,75 @@ +/* +a brainfuck interpreter +reference: https://gist.github.com/maxcountryman/1699708 +*/ + +// tape, input buffer, and read/write pointer +const int TAPE_LEN = 65536, BUFFER_LEN = 32768; +int tape[TAPE_LEN], program[BUFFER_LEN], ptr = 0; + +// read the input program +void read_program() { + int i = 0, len = getint(); + while (i < len) { + program[i] = getch(); + i = i + 1; + } + program[i] = 0; +} + +// interpret the input program +void interpret() { + int cur_char, loop, i = 0; + while (program[i]) { + cur_char = program[i]; + if (cur_char == 62) { + // '>' + ptr = ptr + 1; + } + else if (cur_char == 60) { + // '<' + ptr = ptr - 1; + } + else if (cur_char == 43) { + // '+' + tape[ptr] = tape[ptr] + 1; + } + else if (cur_char == 45) { + // '-' + tape[ptr] = tape[ptr] - 1; + } + else if (cur_char == 46) { + // '.' + putch(tape[ptr]); + } + else if (cur_char == 44) { + // ',' + tape[ptr] = getch(); + } + else if (cur_char == 93) { + if (tape[ptr]) { + // ']' + loop = 1; + while (loop > 0) { + i = i - 1; + cur_char = program[i]; + if (cur_char == 91) { + // '[' + loop = loop - 1; + } + else if (cur_char == 93) { + // ']' + loop = loop + 1; + } + } + } + } + i = i + 1; + } +} + +int main() { + read_program(); + interpret(); + return 0; +} diff --git a/Student/task3/Test/Hard/expr_eval.in b/Student/task3/Test/Hard/expr_eval.in new file mode 100644 index 0000000..1c19e58 --- /dev/null +++ b/Student/task3/Test/Hard/expr_eval.in @@ -0,0 +1,6 @@ +5 + 1+2* 3/4- 2 *411 ; +0 -1+10*1329000/ 22219 +99 ; +1199+ 98888/2227 %112-23; + * 2; +; diff --git a/Student/task3/Test/Hard/expr_eval.out b/Student/task3/Test/Hard/expr_eval.out new file mode 100644 index 0000000..384810e --- /dev/null +++ b/Student/task3/Test/Hard/expr_eval.out @@ -0,0 +1,8 @@ +-820 +696 +1220 +panic! +-1 +panic! +-1 +0 diff --git a/Student/task3/Test/Hard/expr_eval.sy b/Student/task3/Test/Hard/expr_eval.sy new file mode 100644 index 0000000..75cdce0 --- /dev/null +++ b/Student/task3/Test/Hard/expr_eval.sy @@ -0,0 +1,175 @@ +const int TOKEN_NUM = 0, TOKEN_OTHER = 1; +int last_char = 32, num, other; +int cur_token; +int oprs[256] = {}, ops[256] = {}; + +int next_char() { + last_char = getch(); + return last_char; +} + +int is_space(int c) { + if (c == 32) { + return 1; + } + else { + if (c == 10) return 1; + else return 0; + } +} + +int is_num(int c) { + if (c >= 48) { + if (c <= 57) + return 1; + } + else { + return 0; + } +} + +int next_token() { + while (is_space(last_char)) next_char(); + if (is_num(last_char)) { + num = last_char - 48; + while (is_num(next_char())) { + num = num * 10 + last_char - 48; + } + cur_token = TOKEN_NUM; + } + else { + other = last_char; + next_char(); + cur_token = TOKEN_OTHER; + } + return cur_token; +} + +int panic() { + putch(112); + putch(97); + putch(110); + putch(105); + putch(99); + putch(33); + putch(10); + return -1; +} + +int get_op_prec(int op) { + // +, - + if (op == 43) return 10; + if (op == 45) return 10; + // *, /, % + if (op == 42) return 20; + if (op == 47) return 20; + if (op == 37) return 20; + // other + return 0; +} + +void stack_push(int flag, int v) { + if (flag == 0) { + oprs[0] = oprs[0] + 1; + oprs[oprs[0]] = v; + } else { + ops[0] = ops[0] + 1; + ops[ops[0]] = v; + } +} + +int stack_pop(int flag) { + int last; + if (flag == 0) { + last = oprs[oprs[0]]; + oprs[0] = oprs[0] - 1; + } else { + last = ops[ops[0]]; + ops[0] = ops[0] - 1; + } + return last; +} + +int stack_peek(int flag) { + int val; + if (flag == 0) + val = oprs[oprs[0]]; + else + val = ops[ops[0]]; + return val; +} + +int stack_size(int flag) { + int val; + if (flag == 0) + val = oprs[0]; + else + val = ops[0]; + return val; +} + +int eval_op(int op, int lhs, int rhs) { + // + + if (op == 43) return lhs + rhs; + // - + if (op == 45) return lhs - rhs; + // * + if (op == 42) return lhs * rhs; + // / + if (op == 47) return lhs / rhs; + // % + if (op == 37) return lhs % rhs; + // other + return 0; +} + +int eval() { + // get the first value + if (cur_token != TOKEN_NUM) return panic(); + stack_push(0, num); + next_token(); + // evaluate + while (cur_token == TOKEN_OTHER) { + // get operator + int op = other; + if (get_op_prec(op) == 0) break; + next_token(); + // handle operator + while (stack_size(1)) { + if (get_op_prec(stack_peek(1)) >= get_op_prec(op)) { + // evaluate the current operation + int cur_op = stack_pop(1); + int rhs = stack_pop(0), lhs = stack_pop(0); + stack_push(0, eval_op(cur_op, lhs, rhs)); + } else { + break; + } + } + stack_push(1, op); + // get next expression + if (cur_token != TOKEN_NUM) return panic(); + stack_push(0, num); + next_token(); + } + // eat ';' + next_token(); + // clear the operator stack + while (stack_size(1)) { + int cur_op = stack_pop(1); + int rhs = stack_pop(0), lhs = stack_pop(0); + stack_push(0, eval_op(cur_op, lhs, rhs)); + } + return stack_peek(0); +} + +int main() { + int count = getint(); + getch(); + next_token(); + while (count) { + putint(eval()); + putch(10); + count = count - 1; + } + return 0; +} diff --git a/Student/task3/Test/Hard/kmp.in b/Student/task3/Test/Hard/kmp.in new file mode 100644 index 0000000..7e02d20 --- /dev/null +++ b/Student/task3/Test/Hard/kmp.in @@ -0,0 +1,2 @@ +abcabdbca +aababcabdabdababcabdbcadceadbcababcdcbaabsbda diff --git a/Student/task3/Test/Hard/kmp.out b/Student/task3/Test/Hard/kmp.out new file mode 100644 index 0000000..208b018 --- /dev/null +++ b/Student/task3/Test/Hard/kmp.out @@ -0,0 +1,2 @@ +23 +0 diff --git a/Student/task3/Test/Hard/kmp.sy b/Student/task3/Test/Hard/kmp.sy new file mode 100644 index 0000000..913b113 --- /dev/null +++ b/Student/task3/Test/Hard/kmp.sy @@ -0,0 +1,75 @@ +int dst[4096], src[4096]; +int next[4096]; + +void get_next() +{ + next[0] = -1; + int i = 0, j = -1; + while (dst[i]) { + if (j == -1 || dst[i] == dst[j]) { + j = j + 1; + i = i + 1; + next[i] = j; + } + else + j = next[j]; + } +} + +int KMP() +{ + get_next(); + + int i = 0, j = 0; + while (src[j]) { + if (dst[i] == src[j]) { + i = i + 1; + j = j + 1; + if (dst[i] == 0) { + return j; + } + } else { + i = next[i]; + if (i == -1) { + i = i + 1; + j = j + 1; + } + } + } + return -1; +} + +int read_str(int flag) +{ + if (flag == 0) { + int i = 0; + while (1) { + dst[i] = getch(); + if (dst[i] == 10) + break; + i = i + 1; + } + dst[i] = 0; + return i; + } else { + int i = 0; + while (1) { + src[i] = getch(); + if (src[i] == 10) + break; + i = i + 1; + } + src[i] = 0; + return i; + } + return 0; +} + +int main() +{ + read_str(0); + read_str(1); + putint(KMP()); + putch(10); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test/Hard/long_array.out b/Student/task3/Test/Hard/long_array.out new file mode 100644 index 0000000..a5f9d74 --- /dev/null +++ b/Student/task3/Test/Hard/long_array.out @@ -0,0 +1,2 @@ +02425294124166176216218-22282-34782142718170218357718485218672718700218877718865218842718825218832718815218822718825218832718815218822718805218 +216 diff --git a/Student/task3/Test/Hard/long_array.sy b/Student/task3/Test/Hard/long_array.sy new file mode 100644 index 0000000..251117b --- /dev/null +++ b/Student/task3/Test/Hard/long_array.sy @@ -0,0 +1,61 @@ +const int N = 10000; + +int long_array(int k) { + int a1[N]; + int a2[N]; + int a3[N]; + int i = 0; + while (i < N) { + a1[i] = (i * i) % 10; + i = i + 1; + } + i = 0; + while (i < N) { + a2[i] = (a1[i] * a1[i]) % 10; + i = i + 1; + } + i = 0; + while (i < N) { + a3[i] = (a2[i] * a2[i]) % 100 + a1[i]; + i = i + 1; + } + int ans = 0; + i = 0; + while (i < N) { + if (i < 10) { + ans = (ans + a3[i]) % 1333; + putint(ans); + } + else if (i < 20) { + int j = N / 2; + while (j < N) { + ans = ans + a3[i] - a1[j]; + j = j + 1; + } + putint(ans); + } + else if (i < 30) { + int j = N / 2; + while (j < N) { + if (j > 2233) { + ans = ans + a2[i] - a1[j]; + j = j + 1; + } + else { + ans = (ans + a1[i] + a3[j]) % 13333; + j = j + 2; + } + } + putint(ans); + } + else { + ans = (ans + a3[i] * k) % 99988; + } + i = i + 1; + } + return ans; +} + +int main() { + return long_array(9); +} diff --git a/Student/task3/Test/Hard/n_queens.in b/Student/task3/Test/Hard/n_queens.in new file mode 100644 index 0000000..2a52714 --- /dev/null +++ b/Student/task3/Test/Hard/n_queens.in @@ -0,0 +1,2 @@ +4 +1 5 6 8 diff --git a/Student/task3/Test/Hard/n_queens.out b/Student/task3/Test/Hard/n_queens.out new file mode 100644 index 0000000..eaeb937 --- /dev/null +++ b/Student/task3/Test/Hard/n_queens.out @@ -0,0 +1,108 @@ +1 +1 3 5 2 4 +1 4 2 5 3 +2 4 1 3 5 +2 5 3 1 4 +3 1 4 2 5 +3 5 2 4 1 +4 1 3 5 2 +4 2 5 3 1 +5 2 4 1 3 +5 3 1 4 2 +2 4 6 1 3 5 +3 6 2 5 1 4 +4 1 5 2 6 3 +5 3 1 6 4 2 +1 5 8 6 3 7 2 4 +1 6 8 3 7 4 2 5 +1 7 4 6 8 2 5 3 +1 7 5 8 2 4 6 3 +2 4 6 8 3 1 7 5 +2 5 7 1 3 8 6 4 +2 5 7 4 1 8 6 3 +2 6 1 7 4 8 3 5 +2 6 8 3 1 4 7 5 +2 7 3 6 8 5 1 4 +2 7 5 8 1 4 6 3 +2 8 6 1 3 5 7 4 +3 1 7 5 8 2 4 6 +3 5 2 8 1 7 4 6 +3 5 2 8 6 4 7 1 +3 5 7 1 4 2 8 6 +3 5 8 4 1 7 2 6 +3 6 2 5 8 1 7 4 +3 6 2 7 1 4 8 5 +3 6 2 7 5 1 8 4 +3 6 4 1 8 5 7 2 +3 6 4 2 8 5 7 1 +3 6 8 1 4 7 5 2 +3 6 8 1 5 7 2 4 +3 6 8 2 4 1 7 5 +3 7 2 8 5 1 4 6 +3 7 2 8 6 4 1 5 +3 8 4 7 1 6 2 5 +4 1 5 8 2 7 3 6 +4 1 5 8 6 3 7 2 +4 2 5 8 6 1 3 7 +4 2 7 3 6 8 1 5 +4 2 7 3 6 8 5 1 +4 2 7 5 1 8 6 3 +4 2 8 5 7 1 3 6 +4 2 8 6 1 3 5 7 +4 6 1 5 2 8 3 7 +4 6 8 2 7 1 3 5 +4 6 8 3 1 7 5 2 +4 7 1 8 5 2 6 3 +4 7 3 8 2 5 1 6 +4 7 5 2 6 1 3 8 +4 7 5 3 1 6 8 2 +4 8 1 3 6 2 7 5 +4 8 1 5 7 2 6 3 +4 8 5 3 1 7 2 6 +5 1 4 6 8 2 7 3 +5 1 8 4 2 7 3 6 +5 1 8 6 3 7 2 4 +5 2 4 6 8 3 1 7 +5 2 4 7 3 8 6 1 +5 2 6 1 7 4 8 3 +5 2 8 1 4 7 3 6 +5 3 1 6 8 2 4 7 +5 3 1 7 2 8 6 4 +5 3 8 4 7 1 6 2 +5 7 1 3 8 6 4 2 +5 7 1 4 2 8 6 3 +5 7 2 4 8 1 3 6 +5 7 2 6 3 1 4 8 +5 7 2 6 3 1 8 4 +5 7 4 1 3 8 6 2 +5 8 4 1 3 6 2 7 +5 8 4 1 7 2 6 3 +6 1 5 2 8 3 7 4 +6 2 7 1 3 5 8 4 +6 2 7 1 4 8 5 3 +6 3 1 7 5 8 2 4 +6 3 1 8 4 2 7 5 +6 3 1 8 5 2 4 7 +6 3 5 7 1 4 2 8 +6 3 5 8 1 4 2 7 +6 3 7 2 4 8 1 5 +6 3 7 2 8 5 1 4 +6 3 7 4 1 8 2 5 +6 4 1 5 8 2 7 3 +6 4 2 8 5 7 1 3 +6 4 7 1 3 5 2 8 +6 4 7 1 8 2 5 3 +6 8 2 4 1 7 5 3 +7 1 3 8 6 4 2 5 +7 2 4 1 8 5 3 6 +7 2 6 3 1 4 8 5 +7 3 1 6 8 5 2 4 +7 3 8 2 5 1 6 4 +7 4 2 5 8 1 3 6 +7 4 2 8 6 1 3 5 +7 5 3 1 6 8 2 4 +8 2 4 1 7 5 3 6 +8 2 5 3 1 7 4 6 +8 3 1 6 2 5 7 4 +8 4 1 3 6 2 7 5 +107 diff --git a/Student/task3/Test/Hard/n_queens.sy b/Student/task3/Test/Hard/n_queens.sy new file mode 100644 index 0000000..4dfdee1 --- /dev/null +++ b/Student/task3/Test/Hard/n_queens.sy @@ -0,0 +1,53 @@ +int ans[50], sum = 0, n; + +int row[50], line1[50], line2[100]; + +void printans() +{ + sum = sum + 1; + int i = 1; + while (i <= n) { + putint(ans[i]); + if (i == n) { + putch(10); + return; + } else + putch(32); + i = i + 1; + } +} + +void f(int step) +{ + int i = 1; + while (i <= n) { + if (row[i] != 1) { + if (line1[step + i] == 0) { + if (line2[n + step - i] == 0) { + ans[step] = i; + if (step == n) + printans(); + row[i] = 1; + line1[step + i] = 1; + line2[n + step - i] = 1; + f(step + 1); + row[i] = 0; + line1[step + i] = 0; + line2[n + step - i] = 0; + } + } + } + i = i + 1; + } +} + +int main() +{ + int N = getint(); + while (N > 0) { + n = getint(); + f(1); + N = N - 1; + } + return sum; +} diff --git a/Student/task3/Test/Hard/nested_calls.in b/Student/task3/Test/Hard/nested_calls.in new file mode 100644 index 0000000..0cbf79a --- /dev/null +++ b/Student/task3/Test/Hard/nested_calls.in @@ -0,0 +1,3 @@ +1 2 3 4 5 +6 7 8 9 10 +11 12 13 14 diff --git a/Student/task3/Test/Hard/nested_calls.out b/Student/task3/Test/Hard/nested_calls.out new file mode 100644 index 0000000..cb1a40d --- /dev/null +++ b/Student/task3/Test/Hard/nested_calls.out @@ -0,0 +1 @@ +250 diff --git a/Student/task3/Test/Hard/nested_calls.sy b/Student/task3/Test/Hard/nested_calls.sy new file mode 100644 index 0000000..d1e08e2 --- /dev/null +++ b/Student/task3/Test/Hard/nested_calls.sy @@ -0,0 +1,96 @@ +int func1(int x, int y, int z) { + if (z == 0) { + return x * y; + } + else { + return func1(x, y - z, 0); + } +} + +int func2(int x, int y) { + if (y) { + return func2(x % y, 0); + } + else { + return x; + } +} + +int func3(int x, int y) { + if (y == 0) { + return x + 1; + } + else { + return func3(x + y, 0); + } +} + +int func4(int x, int y, int z) { + if (x) { + return y; + } + else { + return z; + } +} + +int func5(int x) { + return -x; +} + +int func6(int x, int y) { + if (x) { + if (y) + return 1; + } + else { + return 0; + } +} + +int func7(int x) { + if (x == 0) { + return 1; + } + else { + return 0; + } +} + +int main() { + int i1 = getint(), i2 = getint(), i3 = getint(), i4 = getint(); + int arr[10]; + int i = 0; + while (i < 10) { + arr[i] = getint(); + i = i + 1; + } + int a = func1( + // this + func2( + // is + func1( + // comment + func3(func4(func5(func3(func2(func6(func7(i1), func5(i2)), i3), + // this + i4)), + // is + arr[0], + // function + func1(func2(func3(func4(func5(arr[1]), + // call + func6(arr[2], func7(arr[3])), + func2(arr[4], func7(arr[5]))), + arr[6]), + arr[7]), + func3(arr[8], func7(arr[9])), i1)), + func2(i2, func3(func7(i3), i4))), + arr[0], arr[1]), + arr[2]), + arr[3], + func3(func2(func1(func2(func3(arr[4], func5(arr[5])), func5(arr[6])), + arr[7], func7(arr[8])), + func5(arr[9])), + i1)); + return a; +} diff --git a/Student/task3/Test/Hard/nested_calls2.out b/Student/task3/Test/Hard/nested_calls2.out new file mode 100644 index 0000000..661d826 --- /dev/null +++ b/Student/task3/Test/Hard/nested_calls2.out @@ -0,0 +1,2 @@ +4 +0 diff --git a/Student/task3/Test/Hard/nested_calls2.sy b/Student/task3/Test/Hard/nested_calls2.sy new file mode 100644 index 0000000..be12727 --- /dev/null +++ b/Student/task3/Test/Hard/nested_calls2.sy @@ -0,0 +1,16 @@ +int f(int a, int b) { + return a * b; +} + +int g(int a, int b) { + return a % b; +} + +int h(int a, int b) { + return f(f(2, g(a, b)), g(f(a, b), 4)); +} + +int main () { + putint(h(11, 3)); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test/Hard/percolation.in b/Student/task3/Test/Hard/percolation.in new file mode 100644 index 0000000..60b26e8 --- /dev/null +++ b/Student/task3/Test/Hard/percolation.in @@ -0,0 +1,10 @@ +2 2 +3 1 +4 2 +4 4 +1 2 +2 3 +2 1 +3 2 +3 4 +3 1 diff --git a/Student/task3/Test/Hard/percolation.out b/Student/task3/Test/Hard/percolation.out new file mode 100644 index 0000000..9807191 --- /dev/null +++ b/Student/task3/Test/Hard/percolation.out @@ -0,0 +1,2 @@ +8 +0 diff --git a/Student/task3/Test/Hard/percolation.sy b/Student/task3/Test/Hard/percolation.sy new file mode 100644 index 0000000..f3744d2 --- /dev/null +++ b/Student/task3/Test/Hard/percolation.sy @@ -0,0 +1,90 @@ +int array[110]; +int n; +void init(int n) { + int i = 1; + while (i <= n * n + 1) { + array[i] = -1; + i = i + 1; + } +} + +int findfa(int a) { + if (array[a] == a) + return a; + else { + array[a] = findfa(array[a]); + return array[a]; + } +} +void mmerge(int a, int b) { + int m = findfa(a); + int n = findfa(b); + if (m != n) array[m] = n; +} +int main() { + int t, m; + int a, b; + t = 1; + while (t) { + t = t - 1; + n = 4; + m = 10; + int i = 0; + int flag = 0; + init(n); + int k = n * n + 1; + + while (i < m) { + a = getint(); + b = getint(); + + if (flag==0) { + int loc = n * (a - 1) + b; + + array[loc] = loc; + if (a == 1) { + array[0] = 0; + mmerge(loc, 0); + } + if (a == n) { + array[k] = k; + mmerge(loc, k); + } + if (b < n) { + if (array[loc + 1] != -1) + mmerge(loc, loc + 1); + } + if (b > 1) { + if (array[loc - 1] != -1) + mmerge(loc, loc - 1); + } + if (a < n) { + if (array[loc + n] != -1) + mmerge(loc, loc + n); + } + if (a > 1) { + if (array[loc - n] != -1) + mmerge(loc, loc - n); + } + + if (array[0] != -1) { + if (array[k] != -1) { + if (findfa(0) == findfa(k)) { + flag = 1; + int tmp = i + 1; + putint(tmp); + putch(10); + } + } + } + } + + i = i + 1; + } + if (flag == 0) { + putint(-1); + putch(10); + } + } + return 0; +} diff --git a/Student/task3/Test/Hard/scope.out b/Student/task3/Test/Hard/scope.out new file mode 100644 index 0000000..eba9a77 --- /dev/null +++ b/Student/task3/Test/Hard/scope.out @@ -0,0 +1,2 @@ +-40 +62 diff --git a/Student/task3/Test/Hard/scope.sy b/Student/task3/Test/Hard/scope.sy new file mode 100644 index 0000000..4457362 --- /dev/null +++ b/Student/task3/Test/Hard/scope.sy @@ -0,0 +1,26 @@ +int k; + +int main() { + k = 3389; + if (k < 10000) { + k = k + 1; + int k = 112; + while (k > 10) { + k = k - 88; + if (k < 1000) { + int g = 9; + { + int l = 11; + { + g = 10; + k = k - g; + int g = 11; + k = k + g + l; + } + } + } + } + putint(k); + } + return k; +} diff --git a/Student/task3/Test/Medium/add_prior_equal.out b/Student/task3/Test/Medium/add_prior_equal.out new file mode 100644 index 0000000..9aea9e0 --- /dev/null +++ b/Student/task3/Test/Medium/add_prior_equal.out @@ -0,0 +1,2 @@ +0 +0 \ No newline at end of file diff --git a/Student/task3/Test/Medium/add_prior_equal.sy b/Student/task3/Test/Medium/add_prior_equal.sy new file mode 100644 index 0000000..5996ada --- /dev/null +++ b/Student/task3/Test/Medium/add_prior_equal.sy @@ -0,0 +1,19 @@ +// Add is prior than equal and not equal +int main () { + int a; + int b; + int c; + a = 1; + b = 4; + c = 28; + int t; + if (c + a != b) { + t = c % -b; + putint(t); + } + if (b - c == a) { + t = c%b+b; + putint(t); + } + return 0; +} diff --git a/Student/task3/Test/Medium/arr_expr_len.out b/Student/task3/Test/Medium/arr_expr_len.out new file mode 100644 index 0000000..82cced2 --- /dev/null +++ b/Student/task3/Test/Medium/arr_expr_len.out @@ -0,0 +1 @@ +51 diff --git a/Student/task3/Test/Medium/arr_expr_len.sy b/Student/task3/Test/Medium/arr_expr_len.sy new file mode 100644 index 0000000..391776e --- /dev/null +++ b/Student/task3/Test/Medium/arr_expr_len.sy @@ -0,0 +1,11 @@ +const int N = -1; +int arr[N + 2 * 4 - 99 / 99] = {1, 2, 33, 4, 5, 6}; + +int main() { + int i = 0, sum = 0; + while (i < 6) { + sum = sum + arr[i]; + i = i + 1; + } + return sum; +} diff --git a/Student/task3/Test/Medium/array_test.out b/Student/task3/Test/Medium/array_test.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test/Medium/array_test.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test/Medium/array_test.sy b/Student/task3/Test/Medium/array_test.sy new file mode 100644 index 0000000..90d5622 --- /dev/null +++ b/Student/task3/Test/Medium/array_test.sy @@ -0,0 +1,17 @@ +const int arr[5] = {1,3,4,2}; +int a = 0; + +int sum(int a, int b){ + return a+b; +} + +int main(){ + int cnt = 0; + while (a < arr[a]) { + a = arr[a]; + if (arr[a + arr[a] - 1] > arr[a] - 1.5) { + cnt = arr[cnt] + 1; + } + } + return sum(arr[a], -cnt); +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/assign_after_continue.out b/Student/task3/Test/Medium/assign_after_continue.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test/Medium/assign_after_continue.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test/Medium/assign_after_continue.sy b/Student/task3/Test/Medium/assign_after_continue.sy new file mode 100644 index 0000000..d673578 --- /dev/null +++ b/Student/task3/Test/Medium/assign_after_continue.sy @@ -0,0 +1,14 @@ +const int arr[5] = {1,3,4,2}; +int a = 0; + +int main(){ + int cnt = 0; + while (a < arr[a]) { + a = arr[a]; + if (arr[a + arr[a] - 1] > arr[a] - 1.5) { + continue; + cnt = arr[cnt] + 1; + } + } + return cnt; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/assign_complex_expr.out b/Student/task3/Test/Medium/assign_complex_expr.out new file mode 100644 index 0000000..ae3f968 --- /dev/null +++ b/Student/task3/Test/Medium/assign_complex_expr.out @@ -0,0 +1,2 @@ +-171 +0 \ No newline at end of file diff --git a/Student/task3/Test/Medium/assign_complex_expr.sy b/Student/task3/Test/Medium/assign_complex_expr.sy new file mode 100644 index 0000000..c6471a7 --- /dev/null +++ b/Student/task3/Test/Medium/assign_complex_expr.sy @@ -0,0 +1,18 @@ +// Use complex expression in assign structure +int main () { + int a; + int b; + int c; + int d; + int result; + a = 5; + b = 5; + c = 1; + d = -2; + result = (d * 1 / 2) + (a - b) - -(c + 3) % 2; + putint(result); + result = ((d % 2 + 67) + -(a - b) - -((c + 2) % 2)); + result = result + 3; + putint(result); + return 0; +} diff --git a/Student/task3/Test/Medium/big_int_mul.out b/Student/task3/Test/Medium/big_int_mul.out new file mode 100644 index 0000000..b902582 --- /dev/null +++ b/Student/task3/Test/Medium/big_int_mul.out @@ -0,0 +1,2 @@ +3102343761271952753654505476597868729361003112012671299112096683775968059149440439438030623917912792644636180 +0 diff --git a/Student/task3/Test/Medium/big_int_mul.sy b/Student/task3/Test/Medium/big_int_mul.sy new file mode 100644 index 0000000..d2f0da1 --- /dev/null +++ b/Student/task3/Test/Medium/big_int_mul.sy @@ -0,0 +1,65 @@ +const int len = 20; + +int main() +{ + int i, j, t, n, temp; + int mult1[len] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0}; + int mult2[len] = {2, 3, 4, 2, 5, 7 ,9 ,9, 0, 1, 9, 8, 7, 6, 4, 3, 2, 1, 2, 2}; + int len1 = len; + int len2 = len; + int c1[len + 5]; + int c2[len + 5]; + int result[len * 2] = {}; + + i = 0; + while (i < len1) { + c1[i] = mult1[i]; + i = i + 1; + } + + i = 0; + while (i < len2) { + c2[i] = mult2[i]; + i = i + 1; + } + + n = len1 + len2 - 1; + + i = 0; + while (i <= n) { + result[i]=0; + i = i + 1; + } + + temp=0; + + i = len2 - 1; + while (i > -1) { + t = c2[i]; + j = len1 - 1; + while (j > -1) { + temp = result[n] + t * c1[j]; + if(temp >= 10) { + result[n] = (temp); + result[n-1] = result[n-1] + temp / 10; + } + else + result[n] = temp; + j = j - 1; + n = n - 1; + } + n = n + len1 - 1; + i = i - 1; + } + + if(result[0] != 0) + putint(result[0]); + + i = 1; + while (i <= len1 + len2 - 1) { + putint(result[i]); + i = i + 1; + } + + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/decl_after_return.out b/Student/task3/Test/Medium/decl_after_return.out new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/Student/task3/Test/Medium/decl_after_return.out @@ -0,0 +1 @@ +3 diff --git a/Student/task3/Test/Medium/decl_after_return.sy b/Student/task3/Test/Medium/decl_after_return.sy new file mode 100644 index 0000000..ba31a49 --- /dev/null +++ b/Student/task3/Test/Medium/decl_after_return.sy @@ -0,0 +1,5 @@ +int main(){ + return 3; + int a = 1; + return a; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/enc_dec.out b/Student/task3/Test/Medium/enc_dec.out new file mode 100644 index 0000000..fda270a --- /dev/null +++ b/Student/task3/Test/Medium/enc_dec.out @@ -0,0 +1,2 @@ +401 +0 diff --git a/Student/task3/Test/Medium/enc_dec.sy b/Student/task3/Test/Medium/enc_dec.sy new file mode 100644 index 0000000..5df25f9 --- /dev/null +++ b/Student/task3/Test/Medium/enc_dec.sy @@ -0,0 +1,38 @@ +int enc(int a) +{ + if(a>25) + a=a+60; + else + { + a=a-15; + } + + return a; + +} + +int dec(int a) +{ + if (a>85) + a=a-59; + else + { + a=a+14; + } + + return a; + +} + +int main() +{ + int a; + a=400; + int res; + res=enc(a); + res=dec(res); + putint(res); + res = 10; + putch(res); + return 0; +} diff --git a/Student/task3/Test/Medium/exgcd.out b/Student/task3/Test/Medium/exgcd.out new file mode 100644 index 0000000..33a9dba --- /dev/null +++ b/Student/task3/Test/Medium/exgcd.out @@ -0,0 +1,2 @@ +13 +0 diff --git a/Student/task3/Test/Medium/exgcd.sy b/Student/task3/Test/Medium/exgcd.sy new file mode 100644 index 0000000..7588d5d --- /dev/null +++ b/Student/task3/Test/Medium/exgcd.sy @@ -0,0 +1,23 @@ +int x[1] = {1}, y[1] = {1}; +int exgcd(int a,int b) { + if(b == 0) { + x[0] = 1; + y[0] = 0; + return a; + } + else { + int r = exgcd(b, a % b); + int t = x[0]; + x[0] = y[0]; + y[0] = (t - a / b * y[0]); + return r; + } +} + +int main() { + int a = 7, b = 15; + exgcd(a, b); + x[0] = (x[0] % b + b) % b; + putint(x[0]); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/go_upstairs.out b/Student/task3/Test/Medium/go_upstairs.out new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/Student/task3/Test/Medium/go_upstairs.out @@ -0,0 +1 @@ +8 diff --git a/Student/task3/Test/Medium/go_upstairs.sy b/Student/task3/Test/Medium/go_upstairs.sy new file mode 100644 index 0000000..f47b317 --- /dev/null +++ b/Student/task3/Test/Medium/go_upstairs.sy @@ -0,0 +1,22 @@ +int climbStairs(int n) { + if(n < 4) + return n; + int dp[10]; + dp[0] = 0; + dp[1] = 1; + dp[2] = 2; + int i; + i = 3; + while(i 2233) { + ans = ans + a2[i] - a1[j]; + j = j + 1; + } + else { + ans = (ans + a1[i] + a3[j]) % 13333; + j = j + 2; + } + } + putint(ans); + } + else { + ans = (ans + a3[i] * k) % 99988; + } + i = i + 1; + } + return ans; +} + +int main() { + return long_array(9); +} diff --git a/Student/task3/Test/Medium/many_locals.out b/Student/task3/Test/Medium/many_locals.out new file mode 100644 index 0000000..73f526a --- /dev/null +++ b/Student/task3/Test/Medium/many_locals.out @@ -0,0 +1,2 @@ +254 +0 diff --git a/Student/task3/Test/Medium/many_locals.sy b/Student/task3/Test/Medium/many_locals.sy new file mode 100644 index 0000000..fd0b4c7 --- /dev/null +++ b/Student/task3/Test/Medium/many_locals.sy @@ -0,0 +1,39 @@ + +int foo() +{ + int arr[16] = {0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3}; + + int a = 3, b = 7, c = 5, d = 6, e = 1, f = 0, g = 3, h = 5, + i = 4, j = 2, k = 7, l = 9, m = 8, n = 1, o = 4, p = 6; + + int sum1 = a + b + c + d + e + f + g + h; + int sum2 = i + j + k + l + m + n + o + p; + + return sum1 + sum2 + arr[a]; +} + +int main() +{ + int a = 3, b = 7, c = 5, d = 6, e = 1, f = 0, g = 3, h = 5, + i = 4, j = 2, k = 7, l = 9, m = 8, n = 1, o = 4, p = 6; + + int sum1 = a + b + c + d + e + f + g + h; + int sum2 = i + j + k + l + m + n + o + p; + + sum1 = sum1 + foo(); + + int q = 4, r = 7, s = 2, t = 5, u = 8, v = 0, w = 6, x = 3; + + sum2 = sum2 + foo(); + + a = i; b = j; c = k; d = l; + e = m; f = n; g = o; h = p; + + int sum3 = q + r + s + t + u + v + w + x; + + int sum = sum1 + sum2 + sum3; + + putint(sum); + putch(10); + return 0; +} diff --git a/Student/task3/Test/Medium/many_param_call.out b/Student/task3/Test/Medium/many_param_call.out new file mode 100644 index 0000000..57323a8 --- /dev/null +++ b/Student/task3/Test/Medium/many_param_call.out @@ -0,0 +1,2 @@ +1054100 +0 \ No newline at end of file diff --git a/Student/task3/Test/Medium/many_param_call.sy b/Student/task3/Test/Medium/many_param_call.sy new file mode 100644 index 0000000..ec47425 --- /dev/null +++ b/Student/task3/Test/Medium/many_param_call.sy @@ -0,0 +1,112 @@ +// Call a func with many params. + +int testParam8(int a0, int a1, int a2, int a3, + int a4, int a5, int a6, int a7) { + return a0 + a1 - a2 - a3 - a4 + a5 + a6 + a7; +} + +int testParam16(int a0, int a1, int a2, int a3, + int a4, int a5, int a6, int a7, + int a8, int a9, int a10, int a11, + int a12, int a13, int a14, int a15) { + return a0 + a1 + a2 + a3 + a4 + a5 + a6 + a7 - + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15; +} + +int testParam32(int a0, int a1, int a2, int a3, + int a4, int a5, int a6, int a7, + int a8, int a9, int a10, int a11, + int a12, int a13, int a14, int a15, + int a16, int a17, int a18, int a19, + int a20, int a21, int a22, int a23, + int a24, int a25, int a26, int a27, + int a28, int a29, int a30, int a31) { + return a0 + a1 + a2 + a3 + a4 + a5 + a6 + a7 + + a8 + a9 + a10 + a11 - a12 - a13 - a14 - a15 - + a16 - a17 - a18 - a19 - a20 - a21 + a22 + a23 + + a24 + a25 + a26 + a27 + a28 + a29 + a30 + a31; +} + +int main() { + int a0; + int a1; + int a2; + int a3; + int a4; + int a5; + int a6; + int a7; + int a8; + int a9; + int a10; + int a11; + int a12; + int a13; + int a14; + int a15; + int a16; + int a17; + int a18; + int a19; + int a20; + int a21; + int a22; + int a23; + int a24; + int a25; + int a26; + int a27; + int a28; + int a29; + int a30; + int a31; + a0 = 0; + a1 = 1; + a2 = 2; + a3 = 3; + a4 = 4; + a5 = 5; + a6 = 6; + a7 = 7; + a8 = 8; + a9 = 9; + a10 = 0; + a11 = 1; + a12 = 2; + a13 = 3; + a14 = 4; + a15 = 5; + a16 = 6; + a17 = 7; + a18 = 8; + a19 = 9; + a20 = 0; + a21 = 1; + a22 = 2; + a23 = 3; + a24 = 4; + a25 = 5; + a26 = 6; + a27 = 7; + a28 = 8; + a29 = 9; + a30 = 0; + a31 = 1; + a0 = testParam8(a0, a1, a2, a3, a4, a5, a6, a7); + putint(a0); + a0 = testParam16(a0, a1, a2, a3, + a4, a5, a6, a7, + a8, a9, a10, a11, + a12, a13, a14, a15); + putint(a0); + a0 = testParam32(a0, a1, a2, a3, + a4, a5, a6, a7, + a8, a9, a10, a11, + a12, a13, a14, a15, + a16, a17, a18, a19, + a20, a21, a22, a23, + a24, a25, a26, a27, + a28, a29, a30, a31); + putint(a0); + return 0; +} diff --git a/Student/task3/Test/Medium/max_subsequence_sum.out b/Student/task3/Test/Medium/max_subsequence_sum.out new file mode 100644 index 0000000..7273c0f --- /dev/null +++ b/Student/task3/Test/Medium/max_subsequence_sum.out @@ -0,0 +1 @@ +25 diff --git a/Student/task3/Test/Medium/max_subsequence_sum.sy b/Student/task3/Test/Medium/max_subsequence_sum.sy new file mode 100644 index 0000000..910b81e --- /dev/null +++ b/Student/task3/Test/Medium/max_subsequence_sum.sy @@ -0,0 +1,30 @@ +int nums[10]; +int maxSubArray(int n) { + if(n == 0) + return 0; + if(n == 1) + return nums[0]; + int sum; + sum = nums[0]; + int max; + max = sum; + int i; + i = 1; + while(i < n){ + if(sum < 0) + sum = 0; + sum = sum + nums[i]; + if(max < sum) + max = sum; + i = i + 1; + } + return max; +} +int main(){ + int res; + nums[0]=-4;nums[1]=3;nums[2]=9;nums[3]=-2;nums[4]=0; + nums[5]=1;nums[6]=-6;nums[7]=5;nums[8]=7;nums[9]=8; + res = 10; + res = maxSubArray(res); + return res; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/minus_with_sub.out b/Student/task3/Test/Medium/minus_with_sub.out new file mode 100644 index 0000000..9aea9e0 --- /dev/null +++ b/Student/task3/Test/Medium/minus_with_sub.out @@ -0,0 +1,2 @@ +0 +0 \ No newline at end of file diff --git a/Student/task3/Test/Medium/minus_with_sub.sy b/Student/task3/Test/Medium/minus_with_sub.sy new file mode 100644 index 0000000..27940ce --- /dev/null +++ b/Student/task3/Test/Medium/minus_with_sub.sy @@ -0,0 +1,10 @@ +// Use minus with sub in one expr +int main () { + int a; + int b; + a = -2; + b = 1; + a = a - -b + -(a + b) % -(a - b); + putint(a); + return 0; +} diff --git a/Student/task3/Test/Medium/neg_zero.out b/Student/task3/Test/Medium/neg_zero.out new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Student/task3/Test/Medium/neg_zero.out @@ -0,0 +1 @@ +1 diff --git a/Student/task3/Test/Medium/neg_zero.sy b/Student/task3/Test/Medium/neg_zero.sy new file mode 100644 index 0000000..fece0b3 --- /dev/null +++ b/Student/task3/Test/Medium/neg_zero.sy @@ -0,0 +1,13 @@ +int inc(int n){ + return n + 1; +} + +int zero(){ + return 0; +} + +int main(){ + if (-zero()) + return zero(); + return inc(zero()); +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/nested_calls.out b/Student/task3/Test/Medium/nested_calls.out new file mode 100644 index 0000000..661d826 --- /dev/null +++ b/Student/task3/Test/Medium/nested_calls.out @@ -0,0 +1,2 @@ +4 +0 diff --git a/Student/task3/Test/Medium/nested_calls.sy b/Student/task3/Test/Medium/nested_calls.sy new file mode 100644 index 0000000..be12727 --- /dev/null +++ b/Student/task3/Test/Medium/nested_calls.sy @@ -0,0 +1,16 @@ +int f(int a, int b) { + return a * b; +} + +int g(int a, int b) { + return a % b; +} + +int h(int a, int b) { + return f(f(2, g(a, b)), g(f(a, b), 4)); +} + +int main () { + putint(h(11, 3)); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/recursion_test.out b/Student/task3/Test/Medium/recursion_test.out new file mode 100644 index 0000000..a45fd52 --- /dev/null +++ b/Student/task3/Test/Medium/recursion_test.out @@ -0,0 +1 @@ +24 diff --git a/Student/task3/Test/Medium/recursion_test.sy b/Student/task3/Test/Medium/recursion_test.sy new file mode 100644 index 0000000..e5fae44 --- /dev/null +++ b/Student/task3/Test/Medium/recursion_test.sy @@ -0,0 +1,14 @@ +int fact(int n) { + if (n == 0) { + return 1; + } + int nn; + nn = n-1; + return (n * fact(nn)); +} + +int main() { + int n; + n = 4; + return fact(n); +} diff --git a/Student/task3/Test/Medium/register_realloc.out b/Student/task3/Test/Medium/register_realloc.out new file mode 100644 index 0000000..94361d4 --- /dev/null +++ b/Student/task3/Test/Medium/register_realloc.out @@ -0,0 +1 @@ +132 diff --git a/Student/task3/Test/Medium/register_realloc.sy b/Student/task3/Test/Medium/register_realloc.sy new file mode 100644 index 0000000..0d647be --- /dev/null +++ b/Student/task3/Test/Medium/register_realloc.sy @@ -0,0 +1,52 @@ +int func(int a, int b){ + int i; + i = a + b; + + int c1;int c2;int c3;int c4; + int d1;int d2;int d3;int d4; + int e1;int e2;int e3;int e4; + int f1;int f2;int f3;int f4; + int g1;int g2;int g3;int g4; + int h1;int h2;int h3;int h4; + int i1;int i2;int i3;int i4; + int j1;int j2;int j3;int j4; + int k1;int k2;int k3;int k4; + c1 = 1;c2 = 2;c3 = 3;c4 = 4; + d1 = 1 + c1;d2 = 2 + c2;d3 = 3 + c3;d4 = 4 + c4; + e1 = 1 + d1;e2 = 2 + d2;e3 = 3 + d3;e4 = 4 + d4; + f1 = 1 + e1;f2 = 2 + e2;f3 = 3 + e3;f4 = 4 + e4; + g1 = 1 + f1;g2 = 2 + f2;g3 = 3 + f3;g4 = 4 + f4; + h1 = 1 + g1;h2 = 2 + g2;h3 = 3 + g3;h4 = 4 + g4; + i1 = 1 + h1;i2 = 2 + h2;i3 = 3 + h3;i4 = 4 + h4; + j1 = 1 + i1;j2 = 2 + i2;j3 = 3 + i3;j4 = 4 + i4; + k1 = 1 + j1;k2 = 2 + j2;k3 = 3 + j3;k4 = 4 + j4; + + i = a - b + 10; + k1 = 1 + j1;k2 = 2 + j2;k3 = 3 + j3;k4 = 4 + j4; + j1 = 1 + i1;j2 = 2 + i2;j3 = 3 + i3;j4 = 4 + i4; + i1 = 1 + h1;i2 = 2 + h2;i3 = 3 + h3;i4 = 4 + h4; + h1 = 1 + g1;h2 = 2 + g2;h3 = 3 + g3;h4 = 4 + g4; + g1 = 1 + f1;g2 = 2 + f2;g3 = 3 + f3;g4 = 4 + f4; + f1 = 1 + e1;f2 = 2 + e2;f3 = 3 + e3;f4 = 4 + e4; + e1 = 1 + d1;e2 = 2 + d2;e3 = 3 + d3;e4 = 4 + d4; + d1 = 1 + c1;d2 = 2 + c2;d3 = 3 + c3;d4 = 4 + c4; + c1 = 1 + k1;c2 = 2 + k2;c3 = 3 + k3;c4 = 4 + k4; + return i + c1 + c2 + c3 + c4 + - d1 - d2 - d3 - d4 + + e1 + e2 + e3 + e4 + - f1 - f2 - f3 - f4 + + g1 + g2 + g3 + g4 + - h1 - h2 - h3 - h4 + + i1 + i2 + i3 + i4 + - j1 - j2 - j3 - j4 + + k1 + k2 + k3 + k4 ; +} + +int main(){ + int a; + int b; + a = 1; + b = a + 2*9; + + return func(a, b); +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/return_after_break.out b/Student/task3/Test/Medium/return_after_break.out new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/Student/task3/Test/Medium/return_after_break.out @@ -0,0 +1 @@ +2 diff --git a/Student/task3/Test/Medium/return_after_break.sy b/Student/task3/Test/Medium/return_after_break.sy new file mode 100644 index 0000000..2c43afe --- /dev/null +++ b/Student/task3/Test/Medium/return_after_break.sy @@ -0,0 +1,16 @@ +const int arr[5] = {1,3,4,2}; +int a = 0; + +int main(){ + int cnt = 0; + while (a < arr[a]) { + a = arr[a]; + if (arr[a + arr[a] - 1] > arr[a] - 1.5) { + cnt = arr[cnt] + 1; + } else { + break; + return 1; + } + } + return cnt; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/reverse_output.in b/Student/task3/Test/Medium/reverse_output.in new file mode 100644 index 0000000..9bc5347 --- /dev/null +++ b/Student/task3/Test/Medium/reverse_output.in @@ -0,0 +1,200 @@ +0 +3 +6 +9 +12 +15 +18 +21 +24 +27 +30 +33 +36 +39 +42 +45 +48 +51 +54 +57 +60 +63 +66 +69 +72 +75 +78 +81 +84 +87 +90 +93 +96 +99 +102 +105 +108 +111 +114 +117 +120 +123 +126 +129 +132 +135 +138 +141 +144 +147 +150 +153 +156 +159 +162 +165 +168 +171 +174 +177 +180 +183 +186 +189 +192 +195 +198 +201 +204 +207 +210 +213 +216 +219 +222 +225 +228 +231 +234 +237 +240 +243 +246 +249 +252 +255 +258 +261 +264 +267 +270 +273 +276 +279 +282 +285 +288 +291 +294 +297 +300 +303 +306 +309 +312 +315 +318 +321 +324 +327 +330 +333 +336 +339 +342 +345 +348 +351 +354 +357 +360 +363 +366 +369 +372 +375 +378 +381 +384 +387 +390 +393 +396 +399 +402 +405 +408 +411 +414 +417 +420 +423 +426 +429 +432 +435 +438 +441 +444 +447 +450 +453 +456 +459 +462 +465 +468 +471 +474 +477 +480 +483 +486 +489 +492 +495 +498 +501 +504 +507 +510 +513 +516 +519 +522 +525 +528 +531 +534 +537 +540 +543 +546 +549 +552 +555 +558 +561 +564 +567 +570 +573 +576 +579 +582 +585 +588 +591 +594 +597 diff --git a/Student/task3/Test/Medium/reverse_output.out b/Student/task3/Test/Medium/reverse_output.out new file mode 100644 index 0000000..6bfa1bd --- /dev/null +++ b/Student/task3/Test/Medium/reverse_output.out @@ -0,0 +1,2 @@ +5975945915885855825795765735705675645615585555525495465435405375345315285255225195165135105075045014984954924894864834804774744714684654624594564534504474444414384354324294264234204174144114084054023993963933903873843813783753723693663633603573543513483453423393363333303273243213183153123093063033002972942912882852822792762732702672642612582552522492462432402372342312282252222192162132102072042011981951921891861831801771741711681651621591561531501471441411381351321291261231201171141111081051029996939087848178757269666360575451484542393633302724211815129630 +0 diff --git a/Student/task3/Test/Medium/reverse_output.sy b/Student/task3/Test/Medium/reverse_output.sy new file mode 100644 index 0000000..1257b4f --- /dev/null +++ b/Student/task3/Test/Medium/reverse_output.sy @@ -0,0 +1,18 @@ +void reverse(int n) { + int next; + if (n <= 1) { + next=getint(); + putint(next); + } + else { + next=getint(); + reverse(n-1); + putint(next); + } +} + +int main() { + int i=200; + reverse(i); + return 0; +} diff --git a/Student/task3/Test/Medium/side_effect.out b/Student/task3/Test/Medium/side_effect.out new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/Student/task3/Test/Medium/side_effect.out @@ -0,0 +1 @@ +5 diff --git a/Student/task3/Test/Medium/side_effect.sy b/Student/task3/Test/Medium/side_effect.sy new file mode 100644 index 0000000..65b192b --- /dev/null +++ b/Student/task3/Test/Medium/side_effect.sy @@ -0,0 +1,13 @@ +int a = 1; + +int inc_a(){ + a = a + 2; + return a - 2; +} + +int main(){ + if (inc_a() - a > a - inc_a()) { + return a; + } + return inc_a(); +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/skip_spaces.in b/Student/task3/Test/Medium/skip_spaces.in new file mode 100644 index 0000000..ce085ff --- /dev/null +++ b/Student/task3/Test/Medium/skip_spaces.in @@ -0,0 +1,3 @@ +1 2 3 4 5 6 7 8 9 10 +11 12 13 14 15 16 17 18 19 20 +23 233 2333 23333 233333 0 0 diff --git a/Student/task3/Test/Medium/skip_spaces.out b/Student/task3/Test/Medium/skip_spaces.out new file mode 100644 index 0000000..c3f407c --- /dev/null +++ b/Student/task3/Test/Medium/skip_spaces.out @@ -0,0 +1 @@ +55 diff --git a/Student/task3/Test/Medium/skip_spaces.sy b/Student/task3/Test/Medium/skip_spaces.sy new file mode 100644 index 0000000..fae3918 --- /dev/null +++ b/Student/task3/Test/Medium/skip_spaces.sy @@ -0,0 +1,22 @@ +// ??? // ???? + // ????? +/* + +int main() { + int arr[100], i = 0, sum = 0; + while (getint()) { + arr[i] = getint(); + i = i + 1; + }*/ +int main() { + int arr[100], i = 0, sum = 0; + while (getint()) { + arr[i] = getint(); + i = i + 1; + } + while (i) { + i = i - 1; + sum = sum + arr[i]; + } + return sum % 79; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/sort_test1.out b/Student/task3/Test/Medium/sort_test1.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test1.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test/Medium/sort_test1.sy b/Student/task3/Test/Medium/sort_test1.sy new file mode 100644 index 0000000..45c05a3 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test1.sy @@ -0,0 +1,41 @@ +int n; +int a[10]; +int bubblesort() +{ + int i; + int j; + i =0; + while(i < n-1){ + // Last i elements are already in place + j = 0; + while(j < n-i-1){ + if (a[j] > a[j+1]) { + // swap(&a[j], &a[j+1]); + int tmp; + tmp = a[j+1]; + a[j+1] = a[j]; + a[j] = tmp; + } + j = j + 1; + } + i = i + 1; + } + return 0; +} + +int main(){ + n = 10; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = bubblesort(); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test/Medium/sort_test2.out b/Student/task3/Test/Medium/sort_test2.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test2.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test/Medium/sort_test2.sy b/Student/task3/Test/Medium/sort_test2.sy new file mode 100644 index 0000000..fb44407 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test2.sy @@ -0,0 +1,43 @@ +int n; +int a[10]; +int insertsort() +{ + int i; + i = 1; + while(i-1) + { + if (temp < a[j]) { + a[j+1]=a[j]; + j = j - 1; + } else { + break; + } + } + a[j+1]=temp; + i = i + 1; + } + return 0; +} + +int main(){ + n = 10; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = insertsort(); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test/Medium/sort_test3.out b/Student/task3/Test/Medium/sort_test3.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test3.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test/Medium/sort_test3.sy b/Student/task3/Test/Medium/sort_test3.sy new file mode 100644 index 0000000..728d8a8 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test3.sy @@ -0,0 +1,72 @@ +int n; +int a[10]; +int QuickSort(int low, int high) +{ + if (low < high) + { + int i; + i = low; + int j; + j = high; + int k; + k = a[low]; + while (i < j) + { + while(i < j) + { + if (a[j] > k - 1) + j = j - 1; + else + break; + } + + if(i < j) + { + a[i] = a[j]; + i = i + 1; + } + + while(i < j) + { + if (a[i] < k) + i = i + 1; + else + break; + } + + if(i < j) + { + a[j] = a[i]; + j = j - 1; + } + } + + a[i] = k; + int tmp; + tmp = i - 1; + tmp = QuickSort(low, tmp); + tmp = i + 1; + tmp = QuickSort(tmp, high); + } + return 0; +} + +int main(){ + n = 10; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + int tmp; + tmp = 9; + i = QuickSort(i, tmp); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test/Medium/sort_test4.out b/Student/task3/Test/Medium/sort_test4.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test4.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test/Medium/sort_test4.sy b/Student/task3/Test/Medium/sort_test4.sy new file mode 100644 index 0000000..6d52a18 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test4.sy @@ -0,0 +1,49 @@ +int n; +int a[10]; +int select_sort(int n) +{ + int i; + int j; + int min; + i =0; + while(i < n-1) + { + min=i;// + j = i + 1; + while(j < n) + { + if(a[min]>a[j]) + { + min=j; + } + j=j+1; + } + if(min!=i) + { + int tmp; + tmp = a[min]; + a[min] = a[i]; + a[i] = tmp; + } + i = i + 1; + } + return 0; +} + +int main(){ + n = 10; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + i = select_sort(n); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test/Medium/sort_test5.out b/Student/task3/Test/Medium/sort_test5.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test5.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test/Medium/sort_test5.sy b/Student/task3/Test/Medium/sort_test5.sy new file mode 100644 index 0000000..3c80a6e --- /dev/null +++ b/Student/task3/Test/Medium/sort_test5.sy @@ -0,0 +1,66 @@ +int n; +int a[10]; +int swap (int i, int j){ + int temp; + temp = a[i]; + a[i] = a[j]; + a[j] = temp; + return 0; +} +int heap_ajust(int start, int end) { + int dad; + dad = start; + int son; + son = dad * 2 + 1; + while (son < end + 1) { // + if (son < end) + if (a[son] < a[son + 1]) + son = son + 1; + if (a[dad] > a[son]) + return 0; + else { + dad = swap(dad,son); + dad = son; + son = dad * 2 + 1; + } + } + return 0; +} +int heap_sort(int len) { + int i; + int tmp; + i = len / 2 - 1; + while ( i > -1) { + tmp = len - 1; + tmp = heap_ajust(i, tmp); + i = i - 1; + } + i = len - 1; + while ( i > 0) { + int tmp0; + tmp0 = 0; + tmp = swap(tmp0,i); + tmp = i - 1; + tmp = heap_ajust(tmp0, tmp); + i = i-1; + } + return 0; +} + +int main(){ + n = 10; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + i = heap_sort(n); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test/Medium/sort_test6.out b/Student/task3/Test/Medium/sort_test6.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test/Medium/sort_test6.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test/Medium/sort_test6.sy b/Student/task3/Test/Medium/sort_test6.sy new file mode 100644 index 0000000..ffedd0e --- /dev/null +++ b/Student/task3/Test/Medium/sort_test6.sy @@ -0,0 +1,53 @@ +int n; +int a[10]; +int b[10]; + +int counting_sort(int n) { + int count_arr[10]; + int i; + int j; + int k; + k = 0; + i = 0; + j = 0; + while(k < 10){ + count_arr[k] = 0; + k = k + 1; + } + while(i < n) + { + count_arr[a[i]] = count_arr[a[i]] + 1; + i = i + 1; + } + k = 1; + while(k < 10){ + count_arr[k] = count_arr[k] + count_arr[k - 1]; + k = k + 1; + } + j = n; + while( j > 0){ + count_arr[a[j - 1]] = count_arr[a[j - 1]] - 1; + b[count_arr[a[j - 1]]] = a[j - 1]; + j = j - 1; + } + return 0; +} + + +int main(){ + n = 10; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + i = counting_sort(n); + while (i < n) { + int tmp; + tmp = b[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test/Medium/time_prior_plus.out b/Student/task3/Test/Medium/time_prior_plus.out new file mode 100644 index 0000000..b501ed4 --- /dev/null +++ b/Student/task3/Test/Medium/time_prior_plus.out @@ -0,0 +1,2 @@ +-4 +0 \ No newline at end of file diff --git a/Student/task3/Test/Medium/time_prior_plus.sy b/Student/task3/Test/Medium/time_prior_plus.sy new file mode 100644 index 0000000..879eea7 --- /dev/null +++ b/Student/task3/Test/Medium/time_prior_plus.sy @@ -0,0 +1,14 @@ +// Check the priority between time and plus +int main() { + int a; + a = 20; + int b; + b = 5; + int c; + c = 6; + int d; + d = -4; + a = a + c * d - b % (a + d) / a; + putint(a); + return 0; +} diff --git a/Student/task3/Test/Medium/while_break_test.out b/Student/task3/Test/Medium/while_break_test.out new file mode 100644 index 0000000..7f8f011 --- /dev/null +++ b/Student/task3/Test/Medium/while_break_test.out @@ -0,0 +1 @@ +7 diff --git a/Student/task3/Test/Medium/while_break_test.sy b/Student/task3/Test/Medium/while_break_test.sy new file mode 100644 index 0000000..d1c628b --- /dev/null +++ b/Student/task3/Test/Medium/while_break_test.sy @@ -0,0 +1,29 @@ +const int len = 5; +int arr[len] = {1,3,2,4}; +int a = 1; + +int inc(int x, int inc_num){ + if (x > 10000) + if (inc_num < 2) + return -1; + return (x + inc_num) % 65535; +} + +int find(int n){ + a = inc(a, 2); + return arr[n%len]; +} + +int main(){ + int cnt = 0; + while (a > 0) { + if (find(a)) { + arr[find(a)] = find(a); + if (inc(cnt, 0) != -1) { + cnt = inc(cnt, 1); + } + break; + } + } + return a % 127; +} \ No newline at end of file diff --git a/Student/task3/Test/Medium/while_if_test.out b/Student/task3/Test/Medium/while_if_test.out new file mode 100644 index 0000000..ca55a6c --- /dev/null +++ b/Student/task3/Test/Medium/while_if_test.out @@ -0,0 +1 @@ +198 diff --git a/Student/task3/Test/Medium/while_if_test.sy b/Student/task3/Test/Medium/while_if_test.sy new file mode 100644 index 0000000..2d2b9fb --- /dev/null +++ b/Student/task3/Test/Medium/while_if_test.sy @@ -0,0 +1,25 @@ +// test while-if +int whileIf() { + int a; + a = 0; + int b; + b = 0; + while (a < 100) { + if (a == 5) { + b = 25; + } + else if (a == 10) { + b = 42; + } + else { + b = a * 2; + } + a = a + 1; + } + return (b); +} + + +int main(){ + return (whileIf()); +} diff --git a/Student/task3/Test/Medium/while_test.out b/Student/task3/Test/Medium/while_test.out new file mode 100644 index 0000000..fb1e7bc --- /dev/null +++ b/Student/task3/Test/Medium/while_test.out @@ -0,0 +1 @@ +54 diff --git a/Student/task3/Test/Medium/while_test.sy b/Student/task3/Test/Medium/while_test.sy new file mode 100644 index 0000000..d1fad82 --- /dev/null +++ b/Student/task3/Test/Medium/while_test.sy @@ -0,0 +1,31 @@ +int FourWhile() { + int a; + a = 5; + int b; + int c; + b = 6; + c = 7; + int d; + d = 10; + while (a < 20) { + a = a + 3; + while(b < 10){ + b = b + 1; + while(c == 7){ + c = c - 1; + while(d < 20){ + d = d + 3; + } + d = d - 1; + } + c = c + 1; + } + b = b - 2; + } + + return (a + (b + d) + c); +} + +int main() { + return FourWhile(); +} diff --git a/Student/task3/Test/test.py b/Student/task3/Test/test.py new file mode 100644 index 0000000..cd1d80c --- /dev/null +++ b/Student/task3/Test/test.py @@ -0,0 +1,95 @@ +#!/usr/bin/env python3 +import subprocess +import os + +IRBuild_ptn = '"{}" "-emit-ir" "-o" "{}" "{}"' +ExeGen_ptn = '"clang" "{}" "-o" "{}" "{}" "../../../lib/lib.c"' +Exe_ptn = '"{}"' + +def eval(EXE_PATH, TEST_BASE_PATH, optimization): + print('===========TEST START===========') + print('now in {}'.format(TEST_BASE_PATH)) + dir_succ = True + for case in testcases: + print('Case %s:' % case, end='') + TEST_PATH = TEST_BASE_PATH + case + SY_PATH = TEST_BASE_PATH + case + '.sy' + LL_PATH = TEST_BASE_PATH + case + '.ll' + INPUT_PATH = TEST_BASE_PATH + case + '.in' + OUTPUT_PATH = TEST_BASE_PATH + case + '.out' + need_input = testcases[case] + + IRBuild_result = subprocess.run(IRBuild_ptn.format(EXE_PATH, LL_PATH, SY_PATH), shell=True, stderr=subprocess.PIPE) + if IRBuild_result.returncode == 0: + input_option = None + if need_input: + with open(INPUT_PATH, "rb") as fin: + input_option = fin.read() + + try: + subprocess.run(ExeGen_ptn.format(optimization, TEST_PATH, LL_PATH), shell=True, stderr=subprocess.PIPE) + result = subprocess.run(Exe_ptn.format(TEST_PATH), shell=True, input=input_option, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + out = result.stdout.split(b'\n') + if result.returncode != b'': + out.append(str(result.returncode).encode()) + for i in range(len(out)-1, -1, -1): + out[i] = out[i].strip(b'\r') + if out[i] == b'': + out.remove(b'') + case_succ = True + with open(OUTPUT_PATH, "rb") as fout: + i = 0 + for line in fout.readlines(): + line = line.strip(b'\r').strip(b'\n') + if line == '': + continue + if out[i] != line: + dir_succ = False + case_succ = False + i = i + 1 + if case_succ: + print('\t\033[32mPass\033[0m') + else: + print('\t\033[31mWrong Answer\033[0m') + except Exception as _: + dir_succ = False + print(_, end='') + print('\t\033[31mCodeGen or CodeExecute Fail\033[0m') + finally: + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH]) + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".o"]) + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".ll"]) + + else: + dir_succ = False + print('\t\033[31mIRBuild Fail\033[0m') + if dir_succ: + print('\t\033[32mSuccess\033[0m in dir {}'.format(TEST_BASE_PATH)) + else: + print('\t\033[31mFail\033[0m in dir {}'.format(TEST_BASE_PATH)) + + print('============TEST END============') + + +if __name__ == "__main__": + + # you can only modify this to add your testcase + TEST_DIRS = [ + './Easy_Netsec/', + ] + # you can only modify this to add your testcase + + optimization = "-O0" # -O0 -O1 -O2 -O3 -O4(currently = -O3) -Ofast + for TEST_BASE_PATH in TEST_DIRS: + testcases = {} # { name: need_input } + EXE_PATH = os.path.abspath('../../../build/SysYFCompiler') + testcase_list = list(map(lambda x: x.split('.'), os.listdir(TEST_BASE_PATH))) + testcase_list.sort() + for i in range(len(testcase_list)-1, -1, -1): + if len(testcase_list[i]) == 1: + testcase_list.remove(testcase_list[i]) + for i in range(len(testcase_list)): + testcases[testcase_list[i][0]] = False + for i in range(len(testcase_list)): + testcases[testcase_list[i][0]] = testcases[testcase_list[i][0]] | (testcase_list[i][1] == 'in') + eval(EXE_PATH, TEST_BASE_PATH, optimization=optimization) diff --git a/Student/task3/Test_H/Easy_H/01_main.out b/Student/task3/Test_H/Easy_H/01_main.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test_H/Easy_H/01_main.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test_H/Easy_H/01_main.sy b/Student/task3/Test_H/Easy_H/01_main.sy new file mode 100644 index 0000000..ade4548 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/01_main.sy @@ -0,0 +1,3 @@ +int main(){ + return 0; +} diff --git a/Student/task3/Test_H/Easy_H/02_var_defn.out b/Student/task3/Test_H/Easy_H/02_var_defn.out new file mode 100644 index 0000000..f04c001 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/02_var_defn.out @@ -0,0 +1 @@ +29 diff --git a/Student/task3/Test_H/Easy_H/02_var_defn.sy b/Student/task3/Test_H/Easy_H/02_var_defn.sy new file mode 100644 index 0000000..d0d0f2c --- /dev/null +++ b/Student/task3/Test_H/Easy_H/02_var_defn.sy @@ -0,0 +1,8 @@ +int a,b; + +int main(){ + a=10; + b=5; + int c=a*2+b*1.1+3.6; + return c; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/03_empty_stmt.out b/Student/task3/Test_H/Easy_H/03_empty_stmt.out new file mode 100644 index 0000000..aabe6ec --- /dev/null +++ b/Student/task3/Test_H/Easy_H/03_empty_stmt.out @@ -0,0 +1 @@ +21 diff --git a/Student/task3/Test_H/Easy_H/03_empty_stmt.sy b/Student/task3/Test_H/Easy_H/03_empty_stmt.sy new file mode 100644 index 0000000..a8c161f --- /dev/null +++ b/Student/task3/Test_H/Easy_H/03_empty_stmt.sy @@ -0,0 +1,5 @@ +int main() { + int a = 10; + ; + return a * 2 + 1; +} diff --git a/Student/task3/Test_H/Easy_H/04_arr_defn.out b/Student/task3/Test_H/Easy_H/04_arr_defn.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test_H/Easy_H/04_arr_defn.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test_H/Easy_H/04_arr_defn.sy b/Student/task3/Test_H/Easy_H/04_arr_defn.sy new file mode 100644 index 0000000..0fa1ceb --- /dev/null +++ b/Student/task3/Test_H/Easy_H/04_arr_defn.sy @@ -0,0 +1,4 @@ +int a[10]; +int main(){ + return 0; +} diff --git a/Student/task3/Test_H/Easy_H/05_arr_assign.out b/Student/task3/Test_H/Easy_H/05_arr_assign.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test_H/Easy_H/05_arr_assign.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test_H/Easy_H/05_arr_assign.sy b/Student/task3/Test_H/Easy_H/05_arr_assign.sy new file mode 100644 index 0000000..3fe56ba --- /dev/null +++ b/Student/task3/Test_H/Easy_H/05_arr_assign.sy @@ -0,0 +1,5 @@ +int a[10]; +int main(){ + a[0]=1; + return 0; +} diff --git a/Student/task3/Test_H/Easy_H/06_const_defn.out b/Student/task3/Test_H/Easy_H/06_const_defn.out new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/06_const_defn.out @@ -0,0 +1 @@ +4 diff --git a/Student/task3/Test_H/Easy_H/06_const_defn.sy b/Student/task3/Test_H/Easy_H/06_const_defn.sy new file mode 100644 index 0000000..6804194 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/06_const_defn.sy @@ -0,0 +1,5 @@ +const int x=4; + +int main(){ + return x; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/07_const_array_defn.out b/Student/task3/Test_H/Easy_H/07_const_array_defn.out new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/07_const_array_defn.out @@ -0,0 +1 @@ +8 diff --git a/Student/task3/Test_H/Easy_H/07_const_array_defn.sy b/Student/task3/Test_H/Easy_H/07_const_array_defn.sy new file mode 100644 index 0000000..0ae4d90 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/07_const_array_defn.sy @@ -0,0 +1,7 @@ +const int a[5]={0,1,2,3,4}; +const int b = 3; +float c = a[b + 1]; + +int main(){ + return a[4] + c; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/08_var_defn_func.out b/Student/task3/Test_H/Easy_H/08_var_defn_func.out new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/08_var_defn_func.out @@ -0,0 +1 @@ +4 diff --git a/Student/task3/Test_H/Easy_H/08_var_defn_func.sy b/Student/task3/Test_H/Easy_H/08_var_defn_func.sy new file mode 100644 index 0000000..03ab608 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/08_var_defn_func.sy @@ -0,0 +1,8 @@ +int defn(){ + return 4; +} + +int main(){ + int a=defn(); + return a; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/09_void_func.out b/Student/task3/Test_H/Easy_H/09_void_func.out new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/09_void_func.out @@ -0,0 +1 @@ +5 diff --git a/Student/task3/Test_H/Easy_H/09_void_func.sy b/Student/task3/Test_H/Easy_H/09_void_func.sy new file mode 100644 index 0000000..2799e1e --- /dev/null +++ b/Student/task3/Test_H/Easy_H/09_void_func.sy @@ -0,0 +1,13 @@ +int a,b,c; + +void add(int a,int b){ + c=a+b; + return; +} + +int main(){ + a=3; + b=2; + add(a,b); + return c; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/10_if.out b/Student/task3/Test_H/Easy_H/10_if.out new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Student/task3/Test_H/Easy_H/10_if.out @@ -0,0 +1 @@ +1 diff --git a/Student/task3/Test_H/Easy_H/10_if.sy b/Student/task3/Test_H/Easy_H/10_if.sy new file mode 100644 index 0000000..a908d63 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/10_if.sy @@ -0,0 +1,9 @@ +int a; + +int main(){ + a = 10; + if( a>0 ){ + return 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Easy_H/11_if_else.out b/Student/task3/Test_H/Easy_H/11_if_else.out new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Student/task3/Test_H/Easy_H/11_if_else.out @@ -0,0 +1 @@ +1 diff --git a/Student/task3/Test_H/Easy_H/11_if_else.sy b/Student/task3/Test_H/Easy_H/11_if_else.sy new file mode 100644 index 0000000..a4f5062 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/11_if_else.sy @@ -0,0 +1,10 @@ +int a; +int main(){ + a = 10; + if( a>0 ){ + return 1; + } + else{ + return 0; + } +} diff --git a/Student/task3/Test_H/Easy_H/12_while.out b/Student/task3/Test_H/Easy_H/12_while.out new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/12_while.out @@ -0,0 +1 @@ +6 diff --git a/Student/task3/Test_H/Easy_H/12_while.sy b/Student/task3/Test_H/Easy_H/12_while.sy new file mode 100644 index 0000000..374f82d --- /dev/null +++ b/Student/task3/Test_H/Easy_H/12_while.sy @@ -0,0 +1,11 @@ +int a; +int b; +int main(){ + b=0; + a=3; + while(a>0){ + b = b+a; + a = a-1; + } + return b; +} diff --git a/Student/task3/Test_H/Easy_H/13_break.out b/Student/task3/Test_H/Easy_H/13_break.out new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/13_break.out @@ -0,0 +1 @@ +5 diff --git a/Student/task3/Test_H/Easy_H/13_break.sy b/Student/task3/Test_H/Easy_H/13_break.sy new file mode 100644 index 0000000..55b40dc --- /dev/null +++ b/Student/task3/Test_H/Easy_H/13_break.sy @@ -0,0 +1,9 @@ +int main(){ + int a=10; + while(a>0){ + a=a-1; + if(a==5) + break; + } + return a; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/14_continue.out b/Student/task3/Test_H/Easy_H/14_continue.out new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/14_continue.out @@ -0,0 +1 @@ +5 diff --git a/Student/task3/Test_H/Easy_H/14_continue.sy b/Student/task3/Test_H/Easy_H/14_continue.sy new file mode 100644 index 0000000..d0f9e50 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/14_continue.sy @@ -0,0 +1,11 @@ +int main(){ + int a=10; + while(a>0){ + if(a>5){ + a=a-1; + continue; + } + return a; + } + return a; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/15_getint.in b/Student/task3/Test_H/Easy_H/15_getint.in new file mode 100644 index 0000000..f599e28 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/15_getint.in @@ -0,0 +1 @@ +10 diff --git a/Student/task3/Test_H/Easy_H/15_getint.out b/Student/task3/Test_H/Easy_H/15_getint.out new file mode 100644 index 0000000..f599e28 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/15_getint.out @@ -0,0 +1 @@ +10 diff --git a/Student/task3/Test_H/Easy_H/15_getint.sy b/Student/task3/Test_H/Easy_H/15_getint.sy new file mode 100644 index 0000000..5a7c254 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/15_getint.sy @@ -0,0 +1,5 @@ +int main(){ + int a; + a = getint(); + return a; +} diff --git a/Student/task3/Test_H/Easy_H/16_func_test.out b/Student/task3/Test_H/Easy_H/16_func_test.out new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/16_func_test.out @@ -0,0 +1 @@ +5 diff --git a/Student/task3/Test_H/Easy_H/16_func_test.sy b/Student/task3/Test_H/Easy_H/16_func_test.sy new file mode 100644 index 0000000..67645a3 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/16_func_test.sy @@ -0,0 +1,23 @@ +int a; + +int myFunc(int a, int b, int c) { + a = 2; + { + int c; + c = 0; + if (c != 0) { + return 0; + } + } + while (b > 0) { + b = b - 1; + } + return (a)+(b); +} + +int main() { + a = (3); + int b; + b = myFunc(1, 2, 1); + return ((a+b)); +} \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/17_equal.in b/Student/task3/Test_H/Easy_H/17_equal.in new file mode 100644 index 0000000..bce4388 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/17_equal.in @@ -0,0 +1 @@ +3 2 diff --git a/Student/task3/Test_H/Easy_H/17_equal.out b/Student/task3/Test_H/Easy_H/17_equal.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test_H/Easy_H/17_equal.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test_H/Easy_H/17_equal.sy b/Student/task3/Test_H/Easy_H/17_equal.sy new file mode 100644 index 0000000..1453cdb --- /dev/null +++ b/Student/task3/Test_H/Easy_H/17_equal.sy @@ -0,0 +1,12 @@ +int a; +int b; +int main(){ + a = getint(); + b = getint(); + if ( a == b ){ + return 1; + } + else{ + return 0; + } +} diff --git a/Student/task3/Test_H/Easy_H/18_scope.out b/Student/task3/Test_H/Easy_H/18_scope.out new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/18_scope.out @@ -0,0 +1 @@ +8 diff --git a/Student/task3/Test_H/Easy_H/18_scope.sy b/Student/task3/Test_H/Easy_H/18_scope.sy new file mode 100644 index 0000000..afc6d97 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/18_scope.sy @@ -0,0 +1,17 @@ +const int a = 5; +int b; + +int my_sum(int x, float y){ + b = a + x - y; + return b; +} + +int main(){ + int a = 7; + { + const float a = 3.3; + my_sum(a, a); + } + my_sum(a, b); + return b; +} diff --git a/Student/task3/Test_H/Easy_H/19_gcd.in b/Student/task3/Test_H/Easy_H/19_gcd.in new file mode 100644 index 0000000..4271cf2 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/19_gcd.in @@ -0,0 +1,2 @@ +4 +20 \ No newline at end of file diff --git a/Student/task3/Test_H/Easy_H/19_gcd.out b/Student/task3/Test_H/Easy_H/19_gcd.out new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/19_gcd.out @@ -0,0 +1 @@ +4 diff --git a/Student/task3/Test_H/Easy_H/19_gcd.sy b/Student/task3/Test_H/Easy_H/19_gcd.sy new file mode 100644 index 0000000..1d20bc5 --- /dev/null +++ b/Student/task3/Test_H/Easy_H/19_gcd.sy @@ -0,0 +1,34 @@ +int n; + +int gcd(int m,int n) +{ + int t; + int r; + + if(m 0) { + hanoi(getint(), 1, 2, 3); + putch(10); + n = n - 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Hard_H/bitset.in b/Student/task3/Test_H/Hard_H/bitset.in new file mode 100644 index 0000000..7fbb604 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/bitset.in @@ -0,0 +1 @@ +20000000 1231 \ No newline at end of file diff --git a/Student/task3/Test_H/Hard_H/bitset.out b/Student/task3/Test_H/Hard_H/bitset.out new file mode 100644 index 0000000..262f098 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/bitset.out @@ -0,0 +1,2 @@ +10000: 8192 1048576 0 524288 16777216 0 32776 1048576 570458129 0 37 64 71303168 0 4 0 8388672 0 1024 2097152 0 4096 49152 1024 8 0 2106368 4259840 4096 0 256 65536 262144 16384 1024 0 8421376 65536 16785408 32768 0 32 8404992 1048576 0 134234176 4112 1 0 8192 196608 4194320 1 0 262144 8388608 0 2097152 1 1 0 0 0 0 2097152 0 134221824 67108864 520 134217728 402653200 16 201326596 4194368 2305 0 0 16777216 0 8519680 0 536870912 537001984 49156 8388608 4194304 1026 73728 0 16384 296 2097152 512 8196 0 0 0 8421376 0 262144 33570817 266240 536870912 0 4352 0 134217728 536870912 0 0 268436482 524288 8388608 269484032 64 0 17 1114112 0 2 33554432 16384 64 151003136 256 4096 0 4194304 16777216 8388608 1024 0 0 67108864 128 139264 0 0 142607616 0 32 256 16 262144 16777216 2048 1048576 0 0 0 2048 67108864 35651584 4194304 0 0 8388612 128 167772416 0 2050 0 16 67109888 8192 32 0 0 1 570426368 0 0 0 8388608 4198400 67108864 1049088 268435456 65536 268435456 0 1 524288 0 16777216 0 524288 0 0 64 4 0 134479872 32 33280 32768 268435456 0 0 80 2048 131136 0 335544322 50331648 0 268443648 64 8 8704 4096 0 0 0 128 0 32 67108864 131108 0 0 0 0 65536 0 536870912 268435456 256 132096 262272 146 0 98304 0 335544320 65537 536870912 268451840 0 0 1024 2048 131072 1 2 4194304 32768 0 1048577 268435458 0 65536 2048 537403392 0 176 16384 0 32 0 0 2 33824 0 538968320 64 32 0 0 16384 0 262144 16384 536879232 0 327680 134217728 0 4 0 67108864 4 589824 4096 1049600 0 786432 4194432 0 256 301991968 2105344 4 8388640 0 65536 0 134217728 0 134217728 2304 64 512 0 0 0 18883584 2 512 0 0 0 32768 65536 0 262272 0 8192 134225920 131073 0 898 0 268435456 0 0 0 32 20971520 134217728 128 0 0 0 512 8193 0 268437505 32800 134217728 16384 512 1026 0 2048 67108864 512 0 67633152 0 4 1048576 33554432 2097152 1024 0 1 2098176 67125248 1152 2097152 0 0 162 262160 2162690 0 0 2136 131072 0 0 1056832 2752512 268435456 0 0 17302528 8 67108866 128 1024 8192 3145728 12288 0 0 2 256 1024 536870912 134283264 536870912 301989888 0 67108864 8388608 0 1048576 32 0 1048576 16384 0 0 8388608 0 4 0 0 16384 8320 268567552 98304 536870912 2097416 67108864 16777216 8256 0 536870912 0 0 0 0 16384 512 4 0 0 0 33558528 65536 32 0 2048 256 1056768 536870912 0 67117056 0 16809986 0 544 4198401 0 12288 0 0 268435456 0 1 1049088 0 160 33622528 16 129 0 0 128 0 0 0 8388672 524288 68 67108864 0 2129920 4194304 0 0 8 0 0 16777216 2631744 0 0 0 4 17301504 0 67108864 268500993 268435456 0 524288 805306384 67109120 32 128 18874368 0 8 570425344 16812032 0 2097152 0 3072 268454400 0 0 1048580 536870912 268435456 0 16777728 0 12288 536870912 1343488 0 16777216 4096 4096 2097152 143392768 1024 131072 131072 0 0 4194304 0 65537 0 0 0 32 0 524288 0 128 4194306 0 64 0 4 136315392 8388624 512 0 0 0 4 128 0 4 50331664 262656 0 33554432 2097152 16 0 134250500 268435712 131104 1048576 4194304 4 0 2097152 5308448 33554432 16384 0 1048576 128 65536 0 67108864 100 0 0 268435488 4194560 263176 64 0 537001984 0 537001984 4 0 4 4096 67110912 640 67108865 266240 9437184 8650752 100663296 32 1052672 64 65 2048 32768 16777216 8388608 2 2097152 0 16388 1048576 1024 8 268435968 8192 16384 163840 1024 0 512 0 512 0 1 80 67108864 0 524288 536911872 0 2105344 1 256 34079744 0 37748736 8192 0 0 0 0 134217728 0 67110912 32776 0 288 0 4096 65536 0 34603008 65536 0 0 65536 524416 0 0 0 0 134217728 0 16777248 0 0 0 32768 4 4097 0 1 0 32769 0 0 2097152 0 268435584 2 0 0 67108864 0 0 32776 134254592 1024 1028 4096 2048 1024 49152 0 0 131072 4 4194304 2564 66048 1048576 0 8388608 33280 0 0 67108864 536870913 128 0 0 544 0 4194320 268697600 1 1280 133120 536903680 8388608 134218752 0 0 0 0 0 67108864 33570816 272629760 786432 0 0 4194304 0 131072 16384 671088640 8192 0 4194304 16 256 65536 0 0 8650768 32 1024 0 1 285245440 2097156 512 536871170 0 0 0 65540 32897 0 0 512 0 9445378 0 0 96 1280 0 0 512 512 128 0 1310724 16777728 20971520 1032 0 268435456 4194304 0 33554432 0 68157440 0 16 67108864 0 268435456 288 2048 134217730 640 128 4202497 0 0 0 131072 12582912 4195840 524288 134250496 0 0 0 0 2 524288 0 0 1048608 33554432 0 0 16384 64 32 8 8704 4456448 0 536870912 67125248 32 8388608 4194304 0 0 4104 134221828 570425408 0 0 16384 0 0 16 134217728 8388610 136 16777216 0 8208 8192 67108864 0 135268352 0 0 0 0 8388608 81920 67141632 0 268566528 0 0 32770 134217728 0 0 256 0 268443648 262404 0 32 4096 0 0 16400 270532608 268435456 65552 32769 1 128 134217728 2097152 0 2097154 129 393216 16640 8 0 1048576 16777216 335544320 128 512 260 1052672 0 100663552 0 0 0 1 536870912 512 0 33554432 33574912 0 64 4194304 536870912 536870944 67108864 576 0 8192 8388608 0 67108992 2097280 0 0 532544 302088192 0 0 4194305 2048 0 0 16910336 38010880 4194304 8388608 131072 1048578 33554432 8391712 268443648 10 16384 2097152 32772 0 0 134217744 4259840 135168 512 0 1049600 277872644 0 1048576 524290 0 16908288 2097152 0 0 0 4 2048 2097152 0 0 128 67141888 0 287309828 537005568 16448 134217728 0 4096 536870912 67108868 256 0 16 0 131072 65536 0 128 131080 67108864 0 0 524416 4096 4096 0 128 134217728 268435456 0 65536 262144 2097152 0 536870912 131072 0 0 0 8192 33554432 139264 20 8194 134217728 1 75497472 0 128 0 262144 4 2621440 0 320 269484544 2 0 268435456 524288 0 0 34816 0 132096 0 65536 0 0 0 268451844 4097 33554496 0 1049216 0 0 1114112 131072 65536 0 4198656 68 0 65552 0 268435456 0 33554432 32 262144 8404992 0 268435456 0 67112960 2048 0 4 196608 0 0 131072 655360 0 67108864 8 2050 256 541065216 0 4718592 8 0 0 524320 0 8 2 512 2105344 268435458 16384 256 0 0 0 1048578 0 67108864 4194304 65536 49152 768 33280 524288 0 0 69206016 0 33554432 0 0 256 0 0 768 16385 0 0 0 268566528 256 32768 0 2099200 0 4259840 536871040 0 0 134348800 0 4194816 0 16 131072 768 0 0 64 2 67109904 0 0 268566528 260 536870912 4 0 0 0 2097152 384 16 0 0 4194304 2 0 134218240 32770 16 577 1 67108864 524288 65536 33816576 0 67108868 16 0 2 786432 0 0 16777216 0 0 0 67072 0 16777216 278536 4196352 4194384 0 128 2099200 134217728 16777344 0 2064 258 0 134217728 8 0 16388 536870912 0 0 0 2048 0 528384 66561 65536 524288 16384 0 0 8388608 512 1114113 41943104 2056 0 65536 0 36864 0 0 0 0 8192 528 268435456 36864 4194304 0 2 134283264 16777216 0 536875008 32 131072 0 0 4194304 4194304 0 2097152 0 131072 536879104 0 33622144 64 256 279552 16448 0 0 64 33024 8 8 32768 0 0 32 512 10 16 16777232 0 0 10485889 196608 8192 0 196 0 0 0 8454144 0 536870912 131072 2048 536870912 16777344 0 16777216 16640 4194560 2 0 0 0 0 33554944 2097152 34 0 1048584 33555456 2048 73728 0 16 0 8388608 4194304 536936448 0 4202496 0 2 4112 0 134219776 0 67633152 2048 0 0 0 33570816 0 0 268435456 8388612 32768 0 524296 4 0 32768 4 8405152 0 64 2097408 0 4096 4 268959808 4 2097184 0 16777216 536870912 32768 0 8389120 0 0 8520196 268959744 8388626 268435456 0 0 16797696 0 0 1024 32768 268435456 0 0 128 0 2099456 64 2052 0 131072 16777220 0 0 0 69207104 2 73744 256 0 262144 16781315 0 67108896 4 134219778 8 8 0 0 67178496 8388608 0 0 541065216 512 0 0 0 0 134217730 268435968 256 0 524288 524288 512 16384 134217728 536870912 536903680 268435456 8 524288 4096 33554432 0 537139205 134217856 16384 805306432 0 268437504 0 10485760 1048576 0 8421376 0 0 0 262144 8 0 256 0 1 0 16384 16 68165632 301989888 134217744 4096 4 2098176 256 16 2048 524288 32768 1048580 0 1572864 262152 2 2 0 524320 794624 0 0 0 8388608 0 0 0 0 256 0 4718592 0 524288 64 0 0 4096 16777224 4 4096 294912 32768 0 33556608 67108896 136 536872960 0 4 2097152 0 0 0 1048576 0 0 8388608 0 268435458 0 256 8192 4 0 18 268468224 8192 1048576 68157440 0 0 0 0 0 4194312 512 8388608 1024 268435456 75497472 0 134217728 1048576 1 131585 268435456 2097152 67108864 4096 268441600 67371136 536870912 512 0 262144 65536 524288 32 256 0 0 0 6422528 1024 0 0 16777216 0 8388608 0 16777216 86245376 2097664 0 0 67108864 4096 262160 33554560 32768 0 2 0 8388608 2 0 0 520 537135104 0 268435456 536952834 0 0 0 134218240 0 0 0 0 12288 0 32770 2048 545267720 64 33554452 32768 0 0 1 3145728 0 0 32768 0 4194304 0 0 0 2097168 32 33554560 131072 131088 0 4096 553648128 2113664 1088 536870912 4096 2097216 131072 8 524800 0 0 131072 131072 16384 16384 4195328 64 32 134742016 1048576 33344 66048 67584 0 5242880 0 67108864 134217728 8192 8 1032 0 0 67108864 8388800 134217728 1028 67108864 16777216 134217728 16 1048576 0 8388608 1048576 0 0 4096 0 0 32 8192 536871168 201326592 0 0 33554432 1048576 526352 0 1280 0 81928 134217728 0 264256 4194308 0 32 34 0 67108864 2 1065472 8 33554432 0 2097152 272629760 131072 301989888 0 536870912 32768 536871168 0 33554432 0 16777216 8192 805371904 8192 0 256 0 0 0 0 20971648 0 33554432 0 0 0 0 2097152 1179648 1048584 0 524296 4 0 0 16777248 8388608 4096 32 0 1 536870912 16384 32 0 0 128 544 0 0 8 0 4608 67108864 0 4194816 64 8 16777216 16384 114688 8 8 2048 134217728 0 0 262144 0 268469248 4096 33554688 4129 256 0 536903680 32 16392 0 263168 34078720 0 32 0 0 262144 2228224 0 0 134218752 32768 16928 0 1048579 524288 278528 16777216 16384 16384 0 0 8396800 8320 524288 0 262144 0 256 2 8388608 4194304 1024 16777220 0 0 2048 131072 32 0 4239360 0 262656 262144 0 134234112 0 0 0 0 4 8388608 16400 0 0 0 4202496 0 537001984 536871425 0 524288 0 524288 0 4194304 0 0 134217728 0 10485760 268435456 1048576 0 0 268435456 536870944 20480 2048 32768 532480 16384 524288 136839424 0 0 0 67109376 2228224 2050 12583936 32768 0 0 134217988 4194304 524289 32832 8704 0 0 0 301989888 8192 1 2097152 0 0 0 8421376 2560 2113538 0 0 1048576 50331648 262144 268435456 134217728 1 4194368 2162688 0 48 4194304 0 0 0 16777216 4096 5244928 0 0 0 0 33556488 0 16793600 4194304 268566528 0 1 64 0 131072 524288 32 536870912 65536 32 128 0 65536 4194304 0 32904 0 67108864 0 0 0 0 0 335544320 2 0 0 0 131072 1024 0 32 0 66688 0 16777216 0 3072 2097152 0 0 0 0 536871168 8 65552 536870913 256 1048608 0 0 0 0 32 0 65552 524288 0 2564 2097152 268567040 75497472 0 0 512 0 33554432 0 0 16910368 16384 8193 0 33554432 16778244 0 16 10240 268435456 2129920 0 0 537133057 4096 33816576 0 0 0 268435584 8388672 1 0 16386 16 67108928 16384 0 536870912 0 16 67108928 0 0 4259840 8192 2 536870912 320 262144 4 67109128 0 0 538968320 34603008 2 67112960 4194304 393216 528 8224 4194304 0 0 0 2097154 6438912 2097280 0 8392704 34078720 536871425 134217728 17043456 33280 512 524288 524296 0 0 0 0 0 0 516 536887296 65792 0 0 4096 128 524292 0 512 64 524288 536871296 0 1024 134283264 0 536870912 8 128 4194304 2097152 0 16777344 524544 0 301989888 268435456 128 0 0 34078720 0 0 16777216 262144 262656 0 2098180 0 0 65824 2097152 20979728 537133056 524289 8192 16 0 0 67109888 1048596 546308232 0 0 8388608 0 0 0 8388624 0 16384 0 0 16400 134742084 0 0 262144 5242880 256 0 0 67125248 0 0 0 0 33554434 2050 268435456 5281792 8388672 8212 0 536875008 0 0 0 2048 512 1048576 262400 0 65536 0 37748736 16384 0 256 2052 2 134217728 8388624 0 0 4 0 0 32 65536 0 2 268435456 66052 131072 64 0 3145728 16 0 2097152 2048 512 0 0 64 4194432 1048576 1024 0 327680 1048576 0 16777216 268435456 256 8388612 524288 0 0 0 0 1057284 0 0 32 16777216 25165824 33554944 1024 0 536870912 8192 33554432 524290 8519684 268451840 0 0 0 532482 0 2228224 536870912 138412032 0 66560 268435456 0 262144 131072 0 2 0 0 0 512 0 65536 536870912 0 512 2049 524292 0 8 0 134217792 536870912 131072 0 0 0 10240 524289 134217728 0 0 136 0 512 1 4210688 33554432 0 4196352 327680 0 524352 40 544 268566560 65536 256 536870912 12 268435456 1048576 4194368 16777248 80 2 12 33024 256 1026 65536 0 0 0 134217728 2097152 16777216 4227072 0 0 1056768 0 0 0 524288 4096 0 16 536870914 65536 17825796 64 2048 0 8 100663616 0 67174400 16 0 32768 0 33 16777216 0 528400 0 16384 64 270368 0 0 0 16777216 0 8912896 0 0 20480 133120 8388608 268435456 16392 16 0 33554432 65536 138412042 8388608 2048 335544320 524296 2080 0 64 262146 1048592 134284288 65536 0 0 65568 512 262144 0 0 131072 0 268435468 0 402653185 0 268435456 33554432 64 8388608 0 32768 0 268435456 268435488 2 16777216 0 8912905 16 0 0 0 0 0 32768 33554504 1024 524288 0 1152 268436740 4196352 0 1 0 524288 0 536870913 268435456 512 402653184 256 0 0 805306371 64 0 16 1310720 0 21037056 1064960 2097152 8 1 0 0 16843024 0 0 16777216 64 1024 0 0 0 64 2097152 536870912 1048576 16384 1 16777472 0 262144 8324 1048576 512 270336 268468256 0 205520896 16388 0 541065216 0 67108868 2048 8 513 0 50331648 0 0 270532608 8388608 0 0 4096 67108864 0 0 0 2048 262144 0 8388608 0 83886080 32768 0 0 32768 536870912 1 270532608 2048 8 131072 0 0 0 33554432 0 0 0 0 262144 2 0 32 134218112 57344 0 36864 8192 285212672 128 0 2097160 0 512 0 0 1048576 0 16 67174912 8388612 0 0 128 0 1024 0 0 4096 0 67108864 4194304 16777216 0 32768 2056 1 8388608 65546 0 196608 0 0 132 0 0 524289 8 268435456 1048576 32769 0 4718608 64 67371520 4210688 0 0 268435456 0 536870912 524288 16 268435460 133120 262144 0 33554496 4194312 1024 524304 1048640 8 67108864 16777472 1048640 0 1024 0 524288 8 0 16384 196608 0 1088 0 128 262656 0 33558624 32768 541196288 0 33554432 0 0 81920 2105344 32776 262144 1048576 0 38944 0 0 134217736 0 134218112 32768 8192 0 0 0 268697600 0 270850 2101248 0 0 2097160 0 16777217 0 1 536870912 268435456 0 2 512 0 0 262160 131088 0 0 262400 0 0 163840 201588736 16777224 0 0 134217728 48 0 131072 65536 134217730 32 0 18874370 16777216 4194824 32770 64 2049 0 4096 0 557056 0 8388608 67108864 0 0 4100 33554432 0 0 0 0 8388608 32768 131072 4096 0 16779776 134217728 0 0 536871936 16 2 33556480 32 0 1032 1572864 536870912 0 0 134217856 32768 0 32 512 32 536870912 36864 128 2097152 33685504 0 0 134225920 2097152 0 0 1 67108864 1212448 536870912 2 18874368 128 262144 0 536903680 262144 0 0 604241920 0 553648128 0 0 98304 384 67112961 0 0 262144 512 32768 4194560 262144 262144 64 16384 32 0 2097152 0 16777216 0 0 131072 2048 0 33554432 67109888 536871424 132 0 0 128 537919488 67108864 0 655360 262146 4096 0 0 2 0 0 4 384 0 258 0 0 524292 0 3145728 18874496 0 0 0 16 4194304 1048576 2 0 33554432 1048576 128 131208 32 4 8388610 1040 524288 67108864 2 0 1089 0 0 32768 537133056 8388608 589952 0 4194304 536870912 256 16777216 2097168 0 520 278528 0 1048576 0 16842752 0 0 0 1024 0 536870912 0 2048 256 33554433 18874368 268435520 4202496 0 134217740 0 0 536875008 0 16777216 0 0 4194304 134217728 1048576 4488 536870912 1024 0 0 8 0 4 2097152 268435460 33554432 16386 24576 0 536870912 0 64 0 128 8 524816 512 0 64 4194304 2 67174400 512 0 16384 536870912 33554433 4096 0 553713664 0 0 0 0 2097152 65536 0 0 4096 33554432 0 1 0 129 536870912 2097152 8421392 0 128 32 8388608 0 0 64 8196 0 32768 0 0 268435456 131072 0 268435456 256 128 134217728 0 0 1024 2082 0 288 0 16777218 16777216 0 0 0 512 0 0 0 266240 128 0 536911872 33792 0 65 32768 0 262176 65536 0 8212 32768 131072 134217728 0 0 0 16777216 0 8388608 8 0 4112 0 0 1576960 268435456 16793600 4 1 0 17563648 256 0 32768 128 524288 0 4194304 13824 262144 2 2097152 1024 0 536870912 1024 532480 536870984 268435472 0 128 128 8388736 134218768 134217728 0 0 0 0 0 1024 0 268435456 262144 134283264 16777216 33554432 256 536875520 512 4194304 32768 0 0 1 8257 40960 0 0 0 0 268435456 512 557056 263168 12544 73729 68223232 32768 16777216 262208 0 0 512 0 131072 257 536870912 131072 128 540672 536887296 138413072 134250504 67108864 16 16777216 0 0 0 0 1048576 2048 0 512 16 67108864 0 0 0 327680 2048 0 1048576 262144 128 0 134217728 0 0 2129920 0 131072 0 134219776 0 537133056 0 8388864 268435456 0 0 0 0 0 142606336 270540800 2097152 4194304 0 0 0 4 2097160 8 4194312 1 134217732 0 0 66049 262144 32802 2 0 33554432 134348800 32 0 65536 16384 0 1024 0 131076 201330688 0 0 0 0 0 8454144 262144 33554432 4 0 4096 8 8 65536 4194304 1024 67108932 536936516 0 0 536870914 0 536870912 2048 256 4195328 128 2097152 32 536870912 65568 0 0 8388609 576 16384 65538 0 0 134217728 0 262144 270532608 1024 66 0 0 0 8388624 2 0 33554440 276824192 150994944 0 16 2304 0 0 0 33554432 4194304 536875040 2048 8388608 131072 65544 4227072 806354944 0 134217728 8256 0 1048576 33554432 260 0 3146240 16 0 0 0 0 33554496 2097152 33570816 32768 32 2097152 276824064 0 12 32768 67108896 0 18 256 0 16777216 0 2097152 0 16777216 536870912 0 0 532480 8 0 0 134217792 33587328 532480 1024 16777216 4096 268435464 2176 0 2560 537134080 0 2048 0 128 8192 0 0 8388608 671088640 288 16777216 0 1064960 2048 0 1024 0 256 0 8388608 0 0 4 8388608 1050624 0 524288 134217760 4096 67108864 8192 66 33554432 0 294912 268435468 268435456 524288 8912896 1024 272629824 128 0 73736 0 32768 0 72 4194304 134479876 128 262148 536870912 16384 134217728 0 136314880 1 0 0 0 0 0 1048576 32768 0 0 0 128 2129920 0 0 524416 0 0 262144 0 134742048 16384 256 0 83886208 1048576 0 128 67125248 67584 0 0 50331648 33556480 0 262144 268435456 256 1024 33554432 0 0 0 0 16 268435456 256 0 262146 0 536870912 142606338 32816 1 147456 8396800 2113536 0 544 147488 1056784 16 512 537141248 8388864 4194336 16777220 402685984 0 0 41943040 0 16 256 4 0 4 1 32 8192 49152 0 512 2048 71303168 0 67108864 1536 0 0 262144 8 0 8192 134221824 32768 32 2097152 369099298 1064992 131072 128 16448 0 1024 257 8 0 0 33554432 4096 0 131072 1048576 32896 0 640 0 0 256 256 4325376 64 33554496 0 0 0 134225920 0 8 65536 1024 131072 525312 131072 4 0 2176 134218752 64 167772168 0 66064 268435456 33555456 0 0 4194304 0 18874368 134807552 4224 0 1048576 8388610 134283264 8 0 0 805306368 16 16 128 67108864 35651584 2101248 33 40960 2099200 0 546 4194336 1032 0 0 32 4096 0 16777216 0 0 0 1024 0 12582916 0 67110912 266240 16384 0 0 0 0 16 16777216 0 2099200 131072 0 64 160 0 0 16777216 262144 0 32768 33554432 128 67108864 262144 0 16384 67108864 1049600 67108864 0 269484032 8521730 16777216 0 570425344 0 0 67112960 0 0 0 1 0 4194304 196608 512 4096 0 151011328 1024 0 128 65536 1048576 0 3145728 0 1024 67108864 268476416 4096 0 268435456 536870912 0 0 0 1 0 4198400 536870912 33554432 0 0 0 138412160 536870944 128 1318920 131072 67174400 603981824 0 637534208 0 134545408 0 0 32 16384 263168 0 0 268443648 67108864 134348800 67112976 2099200 0 33554432 524288 16777216 1 0 32768 64 33570816 0 0 512 0 18874880 0 268435456 17301504 268435456 0 36864 0 32 4096 34078720 4 512 50331648 8192 67141632 0 0 20975616 0 0 33556497 8388608 536870944 16777216 0 75497472 0 0 0 64 0 16777728 0 1 1048576 16777216 32768 131072 83886080 0 2 0 2048 0 8388640 1 128 82946 0 64 536936448 0 67108865 0 0 1026 8192 0 2048 16 0 65537 268435456 0 536870928 0 4096 134217736 8192 0 16 4194312 285212672 0 0 134348800 33554432 33554432 0 0 8388608 524288 268435456 512 128 0 0 0 0 4194368 0 0 64 0 36864 0 256 131080 16392 32 0 16 4 0 268435456 128 4325378 0 33554432 268435456 0 0 0 536870912 16777216 268435456 0 16777344 0 536871936 0 0 256 0 1048576 134217728 268435456 4 0 2 0 32768 2097152 4096 262145 393728 0 0 256 66562 8192 8 256 0 0 16 0 2048 0 67141632 1024 0 1114112 2048 4194304 41943296 0 524288 4096 0 0 4 262208 0 64 0 0 128 2097152 256 36864 9437186 1024 0 0 262144 32 536872320 0 0 8421376 0 2058 526340 536870912 33280 128 65664 4194304 16 0 0 16384 2 536870912 0 64 0 0 0 0 524288 134234112 33554440 2097152 536870912 0 0 0 33554432 0 524288 2097152 134217728 0 8 2113536 1048576 4194304 2048 256 2 0 131072 16777216 4194304 2056 16777216 8 134221824 16785408 2166832 100696064 4227072 0 83886080 0 134217728 134217728 1024 1048576 0 147456 8 0 0 0 131072 0 64 0 2098176 4096 4 0 0 536870912 0 536870913 262144 0 8192 256 0 0 16777224 1280 5 67108866 8388608 134219776 4 0 0 262144 536870912 0 8388608 128 16512 2 134217728 65536 0 8389632 1 294913 0 1 0 4194304 0 8224 81920 16777216 0 33554432 0 536888320 33554432 67108864 128 2097152 0 538968064 67108864 327680 2097152 1024 33554432 32 67371010 16384 0 16 0 4195072 9 8 4096 0 4227072 1088 1152 0 4194816 0 32768 263176 8256 0 256 128 35840 2048 5242880 135266336 134217728 0 4195328 128 67125248 34603080 0 301989888 0 0 262144 524288 16777234 0 0 8388608 75497472 0 67174400 0 4 0 512 0 131072 1 65536 0 134217728 67108864 1027 33554944 8388608 0 0 134217728 0 536870912 139264 8393728 0 128 16777472 4096 620756992 0 536870912 69206016 0 2048 0 0 142606400 0 2097152 0 1 1048576 262144 33554432 1024 8388736 0 4194304 0 0 0 32832 512 0 640 2 1 0 2688 16777216 0 0 0 0 4128 0 1048576 4 0 0 805308416 33 32768 64 1048576 268435456 0 0 131072 131072 67109376 16777472 16777216 4096 0 537002016 2097152 64 0 0 544 2099200 2097152 67108864 268435488 268435456 268435456 8192 67117056 8192 9216 0 0 64 0 128 0 32770 19013632 16640 32832 0 0 1024 0 66 129 8192 1 0 512 0 1048576 32768 0 268435456 67108868 134742016 0 0 67108864 0 0 0 0 33024 32768 4096 0 8 0 0 0 0 16777216 0 0 0 4 0 262144 0 0 0 18432 2097152 544 8 0 1 0 256 32 64 8388864 0 4096 0 0 3145736 0 0 2048 0 8320 0 262144 0 8390656 0 67108864 0 0 16 262408 2113536 1048578 0 32 16384 262144 4341760 16 0 512 0 0 0 0 0 270532608 0 0 0 0 0 0 0 268435456 131072 64 0 4194304 0 8 268566528 0 524288 0 33554560 536870912 268439552 262144 33280 0 17301504 0 0 0 131072 36 65568 0 4096 16 512 2 128 0 0 16777216 526336 33555072 2099200 2097152 0 32768 0 1048576 0 262144 0 0 8192 0 536870912 537133088 0 4227328 16777216 1048576 16777216 524288 0 2 0 0 0 0 0 0 132096 4 524292 538968064 16 524304 0 8192 64 128 67108864 0 67141632 0 512 73728 0 4096 524288 0 0 0 20 0 2176 0 256 134217728 0 512 8 131072 0 0 65536 0 16777344 0 524288 0 1024 268435456 4194306 0 138412032 0 16 12583168 4097 67108864 603979776 0 16384 0 0 0 524288 2560 2 134348800 32768 2 256 0 32 134217728 369098752 0 0 0 2048 0 32768 0 537395264 2048 1024 8404996 0 134217728 0 0 0 0 67110912 272629777 524296 786696 0 33554432 16777216 0 268443680 524288 268697600 524292 16384 1024 33554449 2105345 33554432 0 8388640 0 64 8388608 536875072 16778256 276824064 0 64 512 536870912 2097152 0 0 0 1049728 16 16 8422404 16384 536870912 0 8389120 402653184 134217728 0 16 1 256 66 16384 16 0 2 0 10485760 262144 0 2 0 0 0 65536 16 201326593 4096 5120 268468288 542113792 0 0 268435968 0 32 268566816 0 0 0 0 16 0 16384 136314888 17825792 4 0 33554432 4096 16777216 0 0 167903233 4194306 33554432 262176 524288 0 0 0 0 34603008 0 402688000 0 0 268437504 8704 8 32768 10485760 4 4096 268435456 134217728 0 0 0 0 128 0 8389122 0 64 536870912 32768 537395200 256 32 2 33554432 294912 128 0 0 262144 142606338 1056768 512 21267584 520 8 0 0 67633152 1 2 0 0 16 0 1284 0 0 65536 0 8200 256 67109377 67108864 136314880 0 2048 16384 2048 0 4096 1 0 64 0 536936448 256 0 2048 524672 0 34816 4160 541065220 8397056 0 16 0 0 2097152 64 0 2097152 17039360 65536 8192 134250498 67117072 512 16777232 33563648 0 2048 2048 524288 16778244 8389120 0 128 1024 2097408 0 0 1196032 0 32 16777472 268435456 4096 0 1 134742024 0 0 1089 159383568 0 64 128 2048 8388608 0 67174400 4128 8388736 0 0 134217728 0 68 2097152 34816 536936448 32768 134217728 262208 1572864 8388610 0 16 131456 0 0 0 0 0 0 34 67108992 0 16384 0 1048576 134479880 0 0 8192 67108864 0 0 0 2 134219776 16 1048576 16 0 4097 4194304 1152 138412560 0 1 12 2162944 8192 1 512 0 0 4096 67108864 128 2097152 4194304 268566529 218103808 0 151003136 131072 0 65664 5242880 0 65537 0 0 0 0 8192 8388608 67108865 268435456 16384 32768 0 268435456 0 524352 16384 2048 268959744 0 0 64 268435456 338690048 0 4210688 0 67141696 0 4096 0 809500672 0 67108864 65537 0 16 32768 536870912 0 4194304 16 8388608 67108864 0 69208072 0 268435456 16 0 8388608 20480 0 0 37749760 1 0 0 524288 536871248 0 67108864 0 4098 2176 2162688 67125248 0 64 2097152 528384 0 32768 138412032 0 71303216 0 0 1089664 0 0 4104 65536 0 134217728 524288 0 34611200 33554432 134217984 0 0 0 0 4 64 8 0 0 1048576 0 0 16384 64 0 0 0 327680 33554944 0 1024 134479936 0 32 2375680 0 16 0 133120 2097152 0 0 2424832 2 0 524288 0 0 16 536870912 0 0 16 0 524290 0 0 8 32 132096 0 64 0 268435472 4 4096 1048576 4096 0 67141632 4194304 0 0 0 5 16777216 256 0 0 0 0 0 4194304 1057024 8658944 1048576 36 0 16777216 528384 64 262144 2097156 0 4128 8388610 33562624 0 557056 2 16777216 0 512 3072 4194304 0 128 32 8441856 0 4194304 0 0 524292 0 0 33570816 0 50331648 536870912 0 0 0 1 0 131072 9216 0 0 67108864 0 8388608 16384 1024 603979776 16789568 16908353 16384 2 0 0 2064 32768 0 8 42 2097152 524288 2097153 133120 65536 553713680 0 262144 1 134348800 524320 32800 0 0 134221856 8388624 1048608 67108864 268435456 32 32 0 0 0 8 64 9 262146 0 5120 64 0 268437504 0 520 0 0 0 4325376 134348800 4 34119680 65536 130 1048576 32768 0 1 2097152 8 0 4194304 17408 1024 2 8388608 16384 0 269615104 0 0 75497472 2097152 67371008 134217728 8192 268435456 0 1024 8192 262656 0 0 524288 524288 0 131072 67108864 0 67109376 65536 603980032 67174400 0 0 1048576 0 4096 0 2048 67108872 144 1048584 32768 524288 0 134218753 0 536870912 0 33564672 6291457 0 0 512 2097152 2097152 65536 33554432 0 33562624 8388608 256 262144 16448 67108864 258 2048 528 1572864 1028 4096 0 0 0 0 0 0 8 137363456 0 1048577 2048 0 0 8192 67633156 0 0 268435456 1048592 536870914 0 33554464 65536 0 163840 2621440 16 536870912 16 134252544 0 0 2048 32 16 16777216 536870912 18891008 33554436 0 33554688 1024 0 2176 570425376 0 512 134219904 8 0 6144 0 262144 67112992 134217728 4194310 4 0 8226 0 0 1024 4096 20481 1048576 0 0 32 537001984 16384 384 0 8192 131072 33557504 20 32768 131072 570425344 0 294912 83918848 268435840 0 524288 0 0 64 20971552 134217792 8192 0 134222464 8 0 1024 0 2113536 512 0 268435456 2048 0 2304 0 0 2048 16777216 0 8 25664 4194304 0 536870912 134266880 2048 134217728 32772 520 67584 64 524304 0 4194304 0 0 524288 3180544 2097156 0 0 136314896 1040 0 64 134217728 268697600 134217728 16384 0 16 83886080 134218752 134217744 4206592 33555456 640 0 0 0 0 4194304 536903936 0 33024 33624194 0 0 256 4210696 0 131072 263168 32 8389120 0 32772 2097155 33554464 589824 0 37748736 1056768 0 262144 532496 0 69208080 1048576 0 0 0 8650752 2048 0 2064 262144 2097152 2048 0 0 33554432 1048576 0 2 1088 0 0 32768 16384 2097152 2 8388608 0 3149824 34603008 0 134479880 32768 0 640 536870912 268435456 16777217 4098 8390656 1048592 536870914 34078752 0 1024 196608 9 512 512 0 768 32768 0 64 16777216 0 8 67108865 2097152 512 196608 4 67108864 131072 17408 32804 0 4136 0 2048 4194312 16384 8392720 8519680 131201 536936448 268435456 402653184 0 512 8388608 2048 0 0 8 0 0 0 134217728 128 2105344 8192 131072 0 33554440 0 268435456 524288 262144 64 4096 144 2097152 2048 0 4194304 2097152 0 34078720 524288 201330753 2 33587200 2048 0 0 0 262144 0 32 268439616 0 16384 0 67174400 4194304 0 262144 4 256 0 0 536871168 16384 35659938 1048577 16384 1048608 0 33554432 4160 67108864 524288 0 8388864 0 0 33792 0 134217728 0 1024 0 8 68157440 0 32768 671088640 0 0 134217728 528 524288 0 262208 33685504 4096 67108864 0 0 16384 134481920 0 12 16386 4194304 0 8192 0 16384 0 2097152 0 4 32 1 12587009 32 4 0 0 67108992 8388864 0 0 0 262144 0 6144 0 0 1 4100 67109888 0 536870914 67108864 0 262152 4 268435457 8192 0 268435456 528384 536870912 0 16777216 4096 0 32768 536870912 67108864 0 64 0 0 4194464 0 268435968 0 4259840 131096 0 268435584 0 64 0 0 0 0 640 0 0 16384 0 4099 16 0 0 1114112 4194306 0 268435456 0 262148 524288 0 0 4194304 4096 16777216 9280 16 0 0 262144 0 8912896 262144 384 33554960 570426368 0 8388608 8651264 16777216 1024 8208 0 65536 1 0 0 320 65536 8396800 1024 0 131072 2097152 0 2129920 2097152 0 71680 134217728 1 16384 0 16777216 0 0 8388608 589840 0 0 32 0 0 65536 0 0 1 0 16392 65536 1 131072 134217736 8913152 16777216 0 68161600 33556480 142606352 100671488 0 0 1024 64 2048 0 2048 67125248 16777216 0 268435456 32 0 100663296 16908288 0 8388608 1 8192 0 16777216 0 131072 0 2 17039360 0 16778240 67108864 16384 16384 0 37748736 553648130 134479872 272891920 134217728 16384 8912896 1048576 64 0 16777216 1050624 0 100663872 8388674 4096 16777216 0 4259840 65536 67108864 285736960 536870912 0 10485764 8388608 268435456 0 0 1024 524288 4 0 4194308 0 16777216 524288 0 69206024 67108872 0 69632 5 4 2097152 0 272 142606464 0 0 0 16 16810496 16777216 2 603987968 32768 0 65537 64 0 17301504 33792 0 16 134217856 0 0 0 0 0 0 536879232 0 0 1048576 8192 65536 1024 0 0 0 32 0 268435968 0 0 65536 0 16777216 134250496 33554432 0 0 67109888 1 0 262144 1024 0 16 402653184 0 67108896 268435456 0 67108864 2048 65536 32768 524288 83886080 0 320 0 8 268435456 128 0 536871008 268435456 64 2097152 512 129 0 0 0 0 128 33554432 0 3200 0 64 0 8912896 536872960 16 0 1048576 536870914 0 4194304 268435456 0 0 18434 0 1 55574528 786432 268435456 67633152 0 0 0 0 4100 32768 0 10240 16777216 0 131200 16 0 0 0 0 8 0 134225920 0 16 8 0 50331648 64 16777280 8192 34816 4096 0 134217728 134217729 134217728 0 1025 0 8388613 67108872 0 0 0 0 256 0 16777224 0 0 2048 536870913 0 272629824 524288 134218752 0 536870914 4 0 1024 4096 0 0 65536 0 16640 0 16386 32 2097152 536870944 536870920 17040640 0 328208 0 32 8448 2097280 8200 0 0 2 536870912 69206530 33554433 4 128 266240 1024 16777216 0 75501568 0 0 0 0 524416 16384 32 0 512 73729 262144 335544352 0 0 0 0 0 0 16384 0 0 0 536870912 163858 33554432 8192 16777248 514 262144 262144 16416 134217760 0 536870914 33554496 8388608 6324224 134217728 268435472 0 8 0 32768 1118208 0 134217730 4194560 0 1090 1082368 0 0 8388608 0 0 4194304 0 0 512 0 8392704 0 6291456 262144 0 24 4 139264 0 16384 135270656 8389632 0 4718592 0 8388616 4194304 0 4202496 0 144 66 0 131072 0 268435456 1040 134234112 2048 0 134348800 16384 0 2048 0 67108864 16 8389376 1 2 0 1028 0 0 268435456 66 33554496 419430400 0 536870912 270338 4 0 805306528 134217728 67108864 1 0 0 2232320 268435456 32768 512 4096 0 0 0 1048576 0 131072 2048 0 0 524800 16781312 33554464 4194304 0 0 0 553664528 335544320 2048 0 0 0 1311744 33554434 34 18878592 64 67108864 16778240 2 134217728 4352 0 0 0 0 0 142737440 6 1048576 268452864 0 0 4194304 67108866 0 67108864 0 540672 132 0 513 0 2113536 1048576 1048576 0 1048576 22151168 16777280 2 128 128 0 524288 0 537395200 0 671088672 0 2048 8388616 0 0 33554432 2064 0 2112 0 25165826 0 17301504 33554432 3145728 134219010 134217792 4194320 16777224 262146 134221864 32768 32769 4 0 524288 0 163840 0 0 0 0 256 33554432 134217728 512 256 256 256 0 0 0 0 537919488 8388608 0 4 0 68157440 0 0 0 0 134217728 67436544 2048 0 0 0 0 536870928 2048 163840 16 0 64 150995456 65537 0 8 262144 0 4 131328 1048576 0 0 16384 134223432 2228224 4194304 16781312 0 16 0 4 0 0 0 536870912 0 0 134218240 8388672 256 68288512 65536 134217744 0 16777216 128 0 33554432 2 536875008 0 8 12288 0 0 384 8 1024 0 16777216 262144 2097152 268435456 65540 0 268435456 0 0 0 0 0 32 512 0 4194304 33554432 0 0 0 268435456 268435456 0 4096 80 16777248 0 0 4194304 2097152 1048576 4 0 0 0 64 0 16 262162 128 2097154 16 33554464 1048576 8392704 16842880 536870916 32 16777730 608174080 16 0 33554944 1179652 0 0 67109376 32 134217728 8388608 327680 80 0 0 75497472 0 28672 8192 0 128 0 16384 4194304 540672 32 0 67108865 33554432 24 33800 536870928 16777344 67108864 0 34080768 0 64 0 0 0 67239936 32 0 2048 33554432 0 536870912 4194308 131074 0 0 4194304 0 16640 0 524352 131072 16 512 0 1048576 72 0 0 0 1081345 0 0 4224 1048576 524288 131072 4 33587200 32 34 0 0 33554432 4194304 8388616 4096 67108992 0 0 147457 0 8208 2 0 0 2097160 2 0 142610432 0 8388608 134217728 2 0 33554432 16781312 536870912 4194304 264736 4097 0 4194304 1 0 8192 0 0 64 516 4096 4 0 0 268435456 131072 6815744 268435456 2048 0 0 268435456 32 0 8256 0 268435456 0 0 553648128 2113536 0 33554432 0 262144 0 4 0 65536 196672 16384 0 32 1 0 0 570441744 0 128 0 541065216 0 0 4194304 1024 0 0 0 786432 0 0 2098176 24576 0 0 0 32768 0 4 67633152 268435456 262144 536871424 8912896 131072 1050880 268435456 134217728 131072 0 128 0 262400 0 33554441 524296 264192 8454144 0 402655232 0 2048 134217760 0 33555456 33554436 536875008 2048 16384 8388608 0 147456 67108864 18874368 0 4 0 8388612 67108864 0 8388608 134217984 0 0 132 151027714 0 0 8192 16 262144 0 4096 4194304 67108864 4 50331648 0 131078 256 0 2097152 524288 32928 0 0 1048592 16384 0 0 8421376 512 16448 134217728 545259520 4194304 16 0 32 4 0 2097664 0 0 16777216 0 0 128 131072 532736 268435456 655360 768 0 0 268444672 33554433 5 16384 0 8193 0 16777280 0 8193 64 536870912 8 262144 67108864 576 0 0 18 0 32 134217728 0 5184 4 2097664 131072 0 33555456 64 134217728 4194304 2048 81920 1 524288 0 0 0 0 32896 0 67584 0 0 268435488 17 0 134217728 1048576 0 16384 301989889 68 0 268437504 67108864 268500992 0 64 524288 0 0 0 2048 0 1 0 524288 0 536870916 536870912 2048 0 33554436 16777216 4096 4325376 0 0 0 0 545259520 0 8 134217728 8684032 67108992 16777216 2105344 131072 1064960 2 269484032 131072 8 0 0 3072 0 512 0 4096 134219776 8 260 0 0 131074 65540 1048576 0 139296 268500992 0 1572928 0 33566848 67108864 2101248 8388608 8 276824064 0 32800 268435456 0 2048 4 4096 272695296 135168 1048592 0 17825792 33554432 0 33685504 524288 64 0 8 0 64 16384 64 0 134217728 256 16400 9437184 134217736 0 4096 81920 0 4456448 67117088 1048580 33554432 0 134221952 16384 0 1 1048576 33554432 16385 524288 1048576 33554433 0 512 268468224 1152 0 0 0 570949633 544 536875008 0 0 0 65536 268435456 1314816 0 0 4194304 0 0 1081344 16777216 524288 0 0 16 0 4325376 8 16384 17825792 0 1 16 262144 0 0 268566528 2621712 0 1 0 0 67108864 40 0 2097152 1048640 0 2 0 0 131072 0 32768 0 1 2048 536870912 8388864 69632 2052 0 0 2113536 32770 0 4194304 131584 268500992 0 1024 32768 16 1048576 0 0 512 76022784 1024 0 0 1024 536871168 0 524288 0 0 65536 0 64 4096 512 0 0 65536 8388736 0 49152 0 4194304 0 80 32773 135266304 16384 5120 0 1025 0 8 269484032 0 0 1024 0 0 524288 1638400 4 0 134217728 4096 4 0 0 268435457 0 264192 4096 32 33554432 0 1 553648128 8192 0 0 16 0 536870928 8 16777248 0 0 262144 131074 0 1 16777232 33554560 262144 2 603979776 67108960 0 524288 65616 0 134217728 0 0 72 0 4194304 2621440 4096 0 64 0 0 0 0 8388608 0 4096 0 536870912 0 16 512 0 0 4194304 0 16 130 33554433 1048576 0 536903684 128 0 16777344 544 109051904 0 8193 262144 33555472 0 1048576 268435456 0 134217728 4194304 0 32 32768 0 0 8193 268435584 2097168 0 4096 0 0 1050688 196608 0 0 536870912 512 16777216 134217728 0 0 0 0 0 16 128 0 1048576 65537 0 268439554 4194304 71303168 67108864 256 0 34078720 0 75497504 0 0 0 268435488 2164740 0 4 0 4096 0 0 1024 0 16 268435456 791040 0 12 256 262152 256 65536 262144 8388640 256 128 0 1049088 0 67108864 0 2097152 8200 81924 0 2052 0 0 0 1056 16384 136 0 524352 9 1048576 2048 4 32768 1024 8 4 67109120 1025 8388608 8388608 0 8192 0 262144 0 128 0 0 8388608 17039368 262144 4097 0 0 0 0 2097153 4194304 4194304 0 268967936 8192 536870912 8194 0 0 130 67108864 0 268960016 256 33554432 268443648 0 0 8192 2097280 0 262144 2097152 0 0 0 131072 268435584 2097152 268437504 131072 268436480 622624 1179648 33554432 288 1048576 0 0 67108864 1 67371008 262144 1 0 131328 65536 262144 0 9216 4 16777220 16384 0 67108864 0 67108864 65536 8 262656 0 4112 0 134217728 0 8388608 0 8 0 0 16777472 71303168 8388608 262144 4 16448 16777216 0 0 2 2097184 0 2064 0 1048576 16777216 69206016 256 16777216 16384 0 0 536871424 2162689 134348800 264 3145732 268435456 1179904 131072 0 0 262144 25198592 2097184 262144 524288 0 64 0 264 64 83886113 0 2097152 1048578 32768 0 0 0 41943040 526336 0 33816608 4096 0 0 1048576 65536 167772160 65536 512 0 0 18874368 32 541065216 536870920 0 536870912 268451840 65536 135168 1024 0 4194304 0 256 67584 0 64 4194304 0 65536 536870928 272 33554434 0 67108864 8 0 98308 65792 268435456 33554434 536887296 4194304 0 0 1052672 0 0 524290 58724416 0 0 0 0 4096 0 16 524288 0 603979776 0 4194304 0 0 16777216 268435520 67108864 8 0 0 16384 8388608 1024 0 67242048 268435456 0 3670016 524288 0 16778240 0 1048592 32768 0 16777224 67108864 536870944 32768 0 16777216 0 0 0 0 0 4194308 512 0 16 1024 0 0 536870912 0 65536 2 0 0 128 512 32 16896 1048576 0 268435456 64 268451840 32768 1026 268451844 2097152 0 131072 0 2097408 50331648 0 4194336 1048576 16777216 1048576 8192 0 268435456 0 536870928 67108864 0 33554688 131072 0 16384 0 512 4194304 1024 134234144 64 1 1 2490368 524288 0 0 8388608 536870913 0 67108896 0 8 67108864 0 67108872 0 0 0 268439552 128 1280 4 131072 263168 0 128 134217728 4194304 65664 262144 2101248 33554432 32 671088640 16777216 0 33554496 32912 0 134217728 4096 67108864 4096 67248128 0 536870912 0 32772 0 128 67633152 2097152 1 65536 0 0 65540 0 786440 0 1024 0 67112960 1024 0 8388608 33554432 0 0 0 2 67108866 512 1056 1024 0 65542 262144 0 0 16 0 512 0 1 0 0 262144 1024 0 2293764 536870912 0 512 16384 19136512 67108880 536870912 1049088 0 131328 32800 17383424 135266304 2561 536870912 0 0 0 0 1 32832 0 8454144 33280 0 2097152 1028 0 2048 134217728 5 0 1 33685506 1048600 8200 134221824 0 0 512 0 4096 1 2230272 65536 0 4096 268435456 0 0 393216 1024 5 0 512 0 32768 0 0 512 0 0 659464 0 0 0 16384 8 16 536870912 33562624 1 256 1027 0 540672 1048592 0 4096 524288 17301505 0 256 131072 8 67108865 16777216 8194 19136512 0 32768 33554432 134217728 0 0 0 32768 130 0 16400 0 256 32768 2048 2048 0 536887296 67108864 33554432 131072 0 0 2112 0 256 1024 0 16777216 65536 513 73728 65536 2 0 2 0 67243008 4194304 0 67174400 0 268435968 0 1024 0 0 0 268435584 0 0 4096 0 17301522 32 17825792 8396800 268500992 0 0 516 33816704 8388608 33556480 589824 536870912 0 4194304 0 0 64 1056768 134219776 0 2097152 0 0 134217728 0 536870912 0 262148 128 524288 2097152 0 65664 268436480 1 0 16 16384 384 1 536871424 536871009 512 0 16384 2048 4 1048576 655360 2097152 33554432 0 72 0 32 2560 0 88 83886088 16777248 0 0 1048576 2101248 0 0 4096 4 0 0 0 2 0 285212672 0 0 67108866 16777228 0 257 4194624 0 0 4456992 512 2048 0 128 64 142606848 512 0 512 0 4194304 0 65552 1056 0 1024 671088640 524288 0 0 262144 262144 0 33030 0 16512 0 1114112 1280 4194304 0 1576960 4194304 8192 4 262144 0 1024 0 131072 16 0 278528 0 4 0 268437504 4 544 0 269516800 538968064 0 1 4194320 603979776 0 0 0 16777216 0 33562688 4202496 0 1048576 0 0 262404 4 16 277872640 0 2097152 0 0 0 0 2048 33685504 1024 8388612 0 65536 0 0 0 2048 256 0 64 536871936 16777216 0 16384 160 2048 536903744 4194304 512 65536 524420 67141632 537395201 0 1052672 32800 0 80 33554442 0 1048576 266368 8192 33554432 0 512 0 0 2097152 0 8388608 64 136 32768 32768 33554432 8 1114112 0 0 16384 268443908 512 2097152 32 0 536870912 512 0 0 2 0 0 0 0 393728 64 524288 64 67108864 0 8192 537919520 540672 8 0 0 536870912 16384 536870976 134217728 0 0 0 0 536870914 0 1048608 134348800 0 0 268959808 134220032 134479872 32768 0 2097152 4210688 134217728 0 16 33554432 0 0 537133056 131072 128 32 0 268435456 0 545259520 0 0 524288 83968 67117056 4210704 0 8 2048 0 0 0 0 1 0 1048576 2 2097152 66560 1024 0 65536 1048576 16384 8 0 0 786432 536870912 536944644 33554432 33554432 33554496 0 4259840 67174464 1081344 0 67109120 0 536871938 67117056 268435456 2097152 32 1115136 0 512 0 524288 0 2 8388608 0 0 16781312 1048576 0 570425344 0 32768 131072 0 67371040 4194304 0 8388608 4194304 69632 67108864 256 0 0 327680 131072 384 135168 16 0 67108864 1048576 0 2056 10485760 0 2064 0 268435456 4210708 524288 131072 65536 0 1 0 536887296 512 13824 131072 574619648 65 2097152 2 0 1048576 1052672 128 0 0 270336 0 0 16777216 144 272629760 0 65536 0 0 0 16448 536870912 2097152 2097156 0 131072 4194304 6291456 0 524288 0 537395204 536870912 0 256 33554432 8650752 0 0 536870912 2097152 1536 2097664 0 262144 33751040 134217744 524288 2 0 0 0 65552 8192 0 0 0 4096 2 0 4 536870912 2097152 2048 0 0 1310848 8454144 0 16 34111488 2097152 65536 153092096 0 0 33 262144 536903680 0 0 0 1 0 0 0 33554432 8192 33 256 0 1048577 8388736 262144 65536 33587360 805405696 4 132 4 264 0 0 0 0 544 8224 78643202 262152 192 151552 2 1024 0 8192 0 0 16777216 0 0 67108864 1048704 260 16 524288 262144 528464 4194304 129 0 16809984 0 8 75497476 0 67108868 128 545259776 0 524288 134217728 268435456 8388616 0 4194304 0 537397248 32 32896 67108864 0 8192 0 0 0 2048 4096 67110912 4194304 268435584 0 67108866 0 0 16778240 131072 65536 67108864 8388640 0 8 8390656 0 2097154 1048832 4194304 16777216 4096 0 65540 4096 0 270344 0 0 8 67108864 33556800 469762048 32 8388608 33554432 16777220 16384 128 0 4096 1048576 524288 1118208 139264 134217732 2097152 268435905 2 32 40 0 67108880 0 16777216 8388608 16777216 0 69206016 0 4097 2099264 282624 4 8396800 512 134250496 0 4096 65664 33554432 4194304 71303168 0 134217740 0 8388608 32 0 0 0 0 131072 0 139264 0 256 33554432 262144 1 33558528 32768 33816576 16777216 16 134219008 264192 1064960 0 64 0 2064 4194308 4194368 4194304 2048 16 0 134217736 0 32769 262144 0 1048704 67108864 1 4194432 64 0 0 16777216 0 0 4194304 0 131328 0 0 262672 133120 0 528 268435584 0 0 0 2 0 16386 536870912 328192 4160 0 0 0 0 131072 134217984 0 0 1024 536870912 0 32768 0 67240192 0 0 0 16777216 269090832 8 67108868 0 0 0 4718594 4096 0 4096 0 8193 0 73728 524288 1048576 33558560 16777216 1048576 8192 0 8388608 8388608 67125248 1024 524288 32768 0 786432 1024 67108866 0 1048576 0 128 4096 0 268435456 268435584 256 2052 4227072 17408 0 0 0 0 8 16777216 33554688 0 0 16777216 128 0 2 134217728 32768 16450 1048576 0 0 536870912 0 8 0 1024 0 134217730 0 2097152 4096 0 128 33656832 128 12 0 262144 0 0 1 4 1048576 8388608 0 1025 268436224 0 268435456 0 0 2097152 0 528 0 128 0 0 1048656 135200 0 0 262144 147456 150994944 0 520 8388608 1048 32768 0 1 16777216 0 2048 1024 1048576 0 536870912 67109120 0 1088 8449 4227072 134348816 0 8 0 0 256 0 131072 0 1048576 67108864 0 24 128 33554432 81920 32 0 2048 0 9216 0 8192 0 35651584 0 8192 536870928 524288 516 65536 20 0 0 134217728 0 33554434 0 16779296 512 128 16 8388610 0 1024 2 0 8388736 0 16384 66048 8390816 524288 4194304 0 0 65536 0 1024 32 0 536870912 0 131072 512 0 0 294912 0 262144 0 67113472 536870944 0 2097152 4 8192 0 16384 4096 16384 0 256 0 268582912 8 65536 18088064 0 0 201457664 8 0 10240 128 0 262144 256 16384 4 2097152 67125248 0 32768 1024 128 0 2050 0 0 67174400 671744 0 0 8200 536872960 0 0 32772 8 2621440 134217729 134217728 0 134217728 1572864 134217728 0 36 17301504 16 131584 1 0 64 32 32768 0 0 0 1024 0 2097169 4 0 32772 16 0 0 4718592 0 536871424 0 2 0 268443648 0 0 2097152 32768 33554432 0 268435456 2560 8914944 32768 0 0 0 0 2 0 32 0 4 0 2 524544 2048 0 33554432 2 0 0 32768 135266320 65536 4096 134217728 100663808 8192 2097152 0 20 96 1024 16777216 256 335544320 16781312 512 16809984 65808 16777216 0 8388608 0 8320 0 0 75497472 167772416 16778240 1 33554432 1 8388608 545406976 50364416 0 0 65536 256 12582912 8192 41472 838860800 0 610304 0 32768 0 1056768 640 2097152 0 201326592 2 4194304 262144 262144 0 33554440 0 131072 1024 75629576 0 536870912 67239936 524288 524448 1048704 268435488 65536 262146 262144 0 0 270344 4096 256 268435456 67108865 0 0 4 0 1048576 8192 33816832 0 0 3145732 536870912 8208 0 8388672 0 4196400 32 3072 0 536870912 0 0 524288 131072 33816578 36865 536870912 2101248 0 536936448 541065216 64 196608 33554436 256 34079752 0 1048576 0 0 553648136 1024 0 6144 5243008 536875008 8454144 0 32769 0 142606336 256 2097152 16777216 12 3145728 8388608 16 8912896 1 1024 16777216 16 4194304 262144 16779264 32 36865 536870912 128 33554432 524296 17039360 16384 0 33685504 0 0 4096 0 134217728 16 4 32768 536875008 4480 32 16777216 1 25165864 2176 17309696 64 0 512 262144 0 33555072 0 4194304 8192 38273536 129 0 536870912 0 16 0 0 0 0 4194305 4 33554432 2097156 67108872 0 1 0 0 0 16781312 0 0 0 4096 16777344 1056 134234114 16 75776 256 0 4096 0 9216 0 268566532 66560 128 4194304 8388612 2176 0 1024 268500992 4194304 295168 0 16777218 64 128 0 0 0 0 268435456 524288 8 0 32768 268435488 0 2 4096 0 553713664 16640 4194304 0 160 8320 268443648 4096 8 262144 0 4096 196612 134218368 134217728 129 8192 134218496 0 0 65536 33554432 40960 0 0 8192 4718592 0 655360 131076 516 0 33554432 8650752 128 0 268435456 0 524288 134217856 268705792 8192 88064 8 0 2 0 40960 256 268435457 4098 2048 0 0 536870916 0 65536 18878465 0 2 65536 0 168820736 524292 0 0 524288 0 128 32 0 0 0 68421764 8388736 2 0 0 537001984 303038464 69632 0 301989888 128 2129920 128 8192 64 0 268501120 0 32768 8 0 0 0 0 4 512 0 67108864 537001984 262144 0 8448 131072 335544320 69206016 32 536870912 33554432 33951776 268500992 64 33554432 0 8 0 0 512 544 0 34078720 0 2097216 32 0 4616 1048576 0 0 8 69206016 67108866 0 0 4224 16 67108872 268435488 0 16384 671088896 67108864 0 262272 0 0 0 32 0 1024 536871168 0 0 33554432 2048 8388608 1048578 0 2048 8454144 268435456 1310720 68157472 8390658 41943044 167772192 268500992 32 16777216 33816576 65536 1024 0 1 32896 0 0 65536 65568 0 67108864 131136 16386 32816 0 0 0 524288 33554688 34603010 134217744 131200 0 1026 0 2052 0 520 1114112 536870920 512 0 0 612368384 8519684 128 0 4194576 0 64 0 16777216 16384 134217736 67108864 0 0 2097152 134217728 1 512 8388672 65568 0 8388676 0 0 0 0 301990272 16 0 1048576 0 0 0 8192 4096 4194304 32768 0 0 131328 0 8388608 128 1040 268500992 0 0 538968064 8 33554432 33570816 0 18878464 0 0 536870912 0 0 0 805306368 0 131073 0 25165824 2097152 0 0 0 1048576 3145984 2097152 131584 2 134219008 0 65536 0 4112 0 0 65552 0 0 16384 2048 18874368 4096 0 536870912 0 0 64 512 8388608 0 33556480 64 0 4 512 0 4 0 0 2621440 536870912 268468224 0 0 1048576 398336 131072 512 32768 0 0 16384 262144 33554496 268435456 1048576 35651584 570425865 16777216 0 0 4194432 0 2048 134217728 0 134218496 2 67108864 0 524298 8196 2048 1048705 4 65536 0 524288 67117056 16777216 0 128 536870912 0 0 134217736 524288 8192 0 4096 4194305 1024 33702016 16 0 8 32 2097152 67117056 8192 16777344 294912 268435456 0 32 100689920 0 32776 0 2101248 4202560 524288 98304 8 4276480 4194304 536870912 4 1 0 536903680 0 4194304 131072 4096 0 536870912 131072 0 134217984 16384 32800 512 0 1310976 131072 0 8200 0 0 131072 71303168 128 4096 33556480 33554432 0 394240 0 33554432 512 16384 0 0 2 526625 0 0 0 1048576 4097 2 0 0 2048 8 9344 0 0 524288 303040514 32 4194304 2097152 0 0 4194304 0 67108864 131072 0 0 2097160 0 2097152 512 0 0 8192 4 1 0 8388608 32800 525312 196608 67633154 0 0 0 67108864 33554432 0 262146 262144 1048577 16452 134217728 64 0 536870912 4096 268435585 2 2144 0 16384 512 1024 2752512 33554464 8705 131073 0 8320 0 0 0 0 256 2 0 33554432 131072 2048 8486912 17 163840 554696704 0 20480 285212672 0 8196 0 1048576 0 0 0 16384 0 0 33554432 536870912 16 0 536870914 0 0 0 0 0 0 16 0 268435456 24576 536936468 0 0 12 41943040 24 0 1064960 0 0 536870912 67108864 134217792 0 134217729 0 268500992 4194304 264192 0 4 0 64 0 33554465 256 0 2097152 0 0 0 0 0 1 8 2097152 0 2052 33554432 35651584 32768 0 16777220 268566528 65536 16384 2048 33024 0 4 0 4194304 0 4097 0 0 8 1 192 536870912 34 16896 0 0 0 10240 536871168 0 0 16 0 524288 134217728 1048580 4259840 589824 0 671089184 34816 16384 0 131072 0 268439552 0 0 536870912 2097152 533120 262144 4 9830400 0 20 4198400 272 0 256 0 0 268435456 64 0 256 4194560 0 0 16384 4194305 0 0 524296 65536 16 8192 2097152 4194336 32768 0 0 65536 65536 0 0 0 8388608 131072 65536 0 541065216 0 512 4194304 0 2097152 4194312 0 0 268435456 1 0 0 0 2097152 512 268435456 0 0 2097232 131072 0 1 0 0 67112960 0 262144 0 9437184 32768 2048 1 0 0 285360128 0 272629760 0 0 0 0 67108864 128 134217736 131216 0 256 8192 65536 0 524288 4456448 16777216 4098 1024 64 0 0 8768 536870912 4194560 0 0 2 131072 32 0 0 131072 134217728 64 0 0 0 1024 32 8192 1048576 65536 32 24608 16793600 167788544 0 69760 0 8192 4 0 16384 0 536870912 134479872 0 1 134217728 675315712 0 268435456 8388608 536870912 0 2097152 32768 268435456 294912 524288 165888 34603024 0 8192 0 2 33554432 0 0 0 256 0 16785416 0 0 512 16777216 0 262144 512 1024 67108864 16 32832 4096 0 8388672 68 16779268 33554433 0 268435456 0 0 268435464 4 0 25165824 0 167837696 262144 65536 41943040 2097152 512 0 67584 558080 16777216 0 8919040 536870912 16777216 64 0 20971520 671088640 2097152 0 16785920 0 0 34078720 512 0 2097152 0 4194624 16777216 64 0 6144 0 17408 65536 0 33554432 0 268435456 33554432 2097152 98304 1048576 2097152 0 256 134742016 67108864 8192 1024 0 2 0 17424 0 0 0 128 8388616 0 5120 1 32768 0 0 25165824 0 4096 268435456 0 8192 0 131072 66 64 0 524288 134217728 1048576 2098176 0 0 0 16781312 64 2048 33554432 8192 0 84480 4227074 262144 33570816 268697600 18874368 2080 0 0 68157440 8 32768 8388672 0 4096 268435456 0 34818 0 1048576 536870976 0 0 268443648 32 1049616 512 4096 2 134217732 2 1048576 0 4194336 0 262208 32768 512 67239940 0 67108864 0 268436480 64 0 0 8421376 8388608 4194304 0 8192 20971520 32 0 262144 0 2097152 131072 0 0 16777216 4096 0 1028 67108864 0 8 0 1048640 0 0 1 0 512 0 32768 536870912 256 134217729 0 33554432 134217728 0 2432 0 256 2097152 128 2097152 0 0 8 0 4194304 512 2177 0 524288 8192 8388608 0 0 32 0 8320 0 134217728 131072 1048576 0 128 0 536870912 4 50331648 0 0 0 128 8 67125248 0 4608 1024 0 0 524288 131072 524288 537395712 66 1 32768 0 2048 0 67108864 0 4096 0 268435968 262208 0 160 0 6356992 131072 0 0 1049600 0 17432576 0 150994944 0 1024 0 32 33554432 0 1048576 134219264 128 0 134217728 557056 135266304 10485760 64 1048640 0 256 65536 0 16384 0 2304 0 0 268437574 142606336 1052672 64 8388608 64 2097152 32768 0 128 0 0 0 32768 0 0 0 8 384 4456448 8 8704 1048576 512 1048578 0 0 0 134226050 33554432 134217728 0 4194320 536870912 0 134217728 4098 0 4096 4 16 2097156 8 0 65536 0 548864 4194304 20608 33555456 0 536871040 4096 0 2097156 4194304 2097152 2048 2049 0 0 64 65536 0 32768 0 0 67174400 8192 1 64 1048576 64 0 0 536879104 268435456 268959752 2097152 268443648 64 2 2097152 35717120 4128 0 2048 0 0 0 0 2097152 512 8200 4194305 2 288 0 4194304 0 0 0 262144 8389632 0 134742016 0 8192 0 0 2097153 6146 16778240 4 0 0 8388608 0 131072 0 64 0 0 0 16777217 131072 33554432 0 0 0 67109888 2048 553648128 0 0 1 0 0 1024 0 524288 0 524288 0 0 1024 0 67109376 528 2162688 0 0 0 0 262656 36 65536 32768 0 536870912 0 134219792 0 8192 516 8192 0 0 8192 272629772 131200 8388608 0 0 0 257 16384 2129920 262144 256 0 8 8 4194304 0 66568 128 402915472 524288 16 536870912 0 268435456 0 33685512 8388608 0 671121408 256 0 4194304 0 32768 256 0 33554440 128 9437696 0 0 16777216 8388608 0 0 64 16388 37888 8 134218112 1024 536870960 0 4 32768 263200 16777216 134348816 134217728 16777216 128 0 0 4224 532512 1028 268435456 32768 0 0 32768 0 128 131152 135266304 0 0 65536 0 403046400 0 1048768 131076 67108864 67175433 4194496 33603584 335544320 0 0 0 0 8192 4096 0 0 0 268697600 512 16384 557184 131584 2097152 0 0 512 536870928 264192 0 16777216 33554432 8192 2048 9502720 268451840 32768 0 1058 0 0 134479872 512 32768 262152 0 0 1 0 0 4325376 0 0 34 0 268435456 268439586 0 0 0 64 262144 262162 65600 131089 0 131073 2097152 256 16777216 64 536936960 134217728 0 268435456 0 0 256 0 0 0 0 262144 8388610 0 0 0 0 0 65536 0 536870912 512 1051744 0 134479888 0 0 331776 1040 4096 +0 diff --git a/Student/task3/Test_H/Hard_H/bitset.sy b/Student/task3/Test_H/Hard_H/bitset.sy new file mode 100644 index 0000000..3a2b43f --- /dev/null +++ b/Student/task3/Test_H/Hard_H/bitset.sy @@ -0,0 +1,65 @@ +int set(int a[], int pos, int d){ + const int bitcount = 30; + int x[bitcount + 1] = {}; + + x[0] = 1; + x[1] = x[0] * 2; + x[2] = x[1] * 2; + x[3] = x[2] * 2; + x[4] = x[3] * 2; + x[5] = x[4] * 2; + x[6] = x[5] * 2; + x[7] = x[6] * 2; + x[8] = x[7] * 2; + x[9] = x[8] * 2; + x[10] = x[9] * 2; + + int i = 10; + while (i < bitcount){ + i = i + 1; + x[i] = x[i - 1] * 2; + } + + int v = 0; + + if (pos / bitcount >= 10000) return 0; + + if (a[pos / bitcount] / (x[pos % bitcount]) % 2 != d){ + if (a[pos / bitcount] / (x[pos % bitcount]) % 2 == 0) + if (d == 1) + v = x[pos % bitcount]; + + if (a[pos / bitcount] / x[pos % bitcount] % 2 == 1) + if (d == 0) + v = v - x[pos % bitcount]; + } + + a[pos / bitcount] = a[pos / bitcount] + v; + return 0; +} + +int seed[3] = {19971231, 19981013, 1000000000 + 7}; +int staticvalue = 0; + +int rand(){ + staticvalue = staticvalue * seed[0] + seed[1]; + staticvalue = staticvalue % seed[2]; + if (staticvalue < 0) staticvalue = seed[2] + staticvalue; + return staticvalue; +} + +int a[10000] = {}; +int main(){ + + int n = getint(); + staticvalue = getint(); + int x, y; + while (n > 0){ + n = n - 1; + x = rand() % 300000; + y = rand() % 2; + set(a, x, y); + } + putarray(10000, a); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Hard_H/conv.in b/Student/task3/Test_H/Hard_H/conv.in new file mode 100644 index 0000000..148cc0f --- /dev/null +++ b/Student/task3/Test_H/Hard_H/conv.in @@ -0,0 +1,3 @@ +3 1000 1000 +1000000 894165825 628928899 789205091 333582260 267334297 671396792 949852600 652868085 608798840 449077056 481330126 436486628 589246595 1007939832 883106784 690735009 702362101 1055664223 267794423 173782331 490915390 668832729 782475960 205135214 917294614 347071622 976293277 447209007 636606787 615863097 869202914 342732709 817999723 909678796 505968444 165722592 68474399 670204905 528105765 1064324208 11427511 947244247 619649296 107567147 1017679975 923591020 778225226 593683401 569443386 243772678 888320622 977625350 413321119 709206113 914039083 916215507 836281078 108749911 342829670 732604847 379639319 252120797 269034888 601594952 921233148 278691131 634330566 559529585 208654427 936856035 771847120 564654783 1053908233 169798284 712432658 561585614 934444502 318979895 64024158 820712306 346828704 761452249 298977429 1040585223 730982161 384166169 592785443 165202827 439277181 488773447 740675051 334553273 468750174 570448511 320678304 68299106 48634696 74002640 521670742 502935038 925274895 162052268 490340636 66456374 956644157 692063922 655723408 544971460 399646369 370537533 265367384 185772466 807792382 837767176 928814137 905060167 365568174 1049335498 649719388 1054753246 678109044 512076536 725369374 502811985 920045831 82747078 553295069 665403648 396079123 662909731 230066463 527975129 205421920 776713180 627069382 685803767 393922090 1047111365 1049038530 1016581343 982586916 665015428 233235773 129054678 361281686 385303098 613435724 206890723 125801619 377896642 992899461 276393573 940894869 166706477 680760287 759643604 636891873 696614903 433599973 229131089 867811556 49867180 438231014 471068047 214589737 14785822 919098717 1047242343 1038043300 257002706 117479252 293783510 942587715 721477770 537931525 393738882 1031903322 444003446 194604796 77714306 793343470 79117118 840758264 232879465 901945456 995626571 42573257 41772836 53465266 1048216605 883939766 187933490 703847970 869792392 782256566 428221396 7645396 778387714 203096924 735683886 426697839 951142730 157266509 272885621 372030481 304182911 917341306 150746655 330168568 1072943289 811660318 735396293 1056529180 413105100 357646261 727500410 1057259120 788088050 999682381 866935867 350874795 437270171 737646758 832101300 214858893 429718791 473671963 187541535 935618836 301175975 623109502 840366128 266193336 1005632426 528312110 147388015 110682427 200572645 112316592 380533250 400056758 525759848 750486946 49538145 89522358 769721357 194875244 297944561 152612126 334903204 839189396 42837983 219664537 884967810 852616246 1043387845 689652118 249869272 395235285 250368861 342447556 523117219 629173904 417940647 1051577818 318518537 23424953 341844634 1018412403 440419763 291092238 875513817 973896956 489881135 477753237 820438369 142162611 460177260 899821219 1041606375 24255598 991396353 450030947 385113600 137065794 588362059 541646022 922898256 446104286 738296234 939543030 181037549 381354812 589062488 3410537 241766413 924913341 938985853 470138944 202386909 424613236 976814254 948191842 141456609 753333385 457865985 51162084 1047903184 305166242 262549731 643557407 544016319 933658200 1021971534 357593268 566609048 1021554707 542018943 207842731 810108549 968103417 811373320 307007687 792762966 1040990636 647810932 878647335 584681044 334965962 883564823 1055912048 94604685 290171175 298897660 961718691 388481910 590747845 446797056 162853402 548838287 444289306 369028263 458411646 879808086 16914162 791379585 258357634 370594758 70018840 367920072 33442095 272456409 850215209 785490869 963632185 196551731 727611479 497028572 903122683 393631720 622002312 929538239 771420173 921079217 502024749 323884454 979173968 308946874 836097270 601262055 660539779 41545227 61337991 175376293 502189600 878906600 311663679 720018076 936654637 288033176 951276943 890661509 1019713448 864207495 207161692 537941778 88765710 8767149 941237210 906247974 522156598 518462100 579129069 672437705 618381545 522913634 709781555 949440732 183283146 60036468 392339968 629931136 50093682 99689792 742501416 882398324 732029350 758681921 933448175 480107608 194731270 895922133 883254626 76908053 11082043 499838312 887524918 541856164 407425355 477916449 262454586 26432659 840270184 22712946 278669573 926229283 1050602211 493969407 705054057 863899859 251289079 101009175 977702038 990152276 300770255 638586222 311806689 637624122 923535758 715639018 341685737 765272049 435121408 71517764 377560184 286854884 935745817 644282222 441809585 1034076096 807852745 367810840 735199237 528907068 222197464 920895692 370594043 1019435008 1064298516 624242857 655647603 234667194 887176441 474875794 616178097 65853544 733718918 526151115 513642842 640357002 723938020 751597752 435354256 5628252 1000123738 59062751 498828763 702230863 983405144 279250196 30460438 478381147 1039952149 171008397 755608094 364775055 567671745 49564560 135582824 148515761 378876678 541621353 211401030 234384067 1020516999 81552030 492007810 95925509 995716250 204676906 708972751 811522417 734949869 923281850 598443528 323842010 1036228606 203802029 1062977803 616088898 267069987 249115335 398172177 1024401011 181451542 41629978 891904386 396343219 682161123 87119942 925395310 852366573 851667464 946506102 680677993 75645898 327897139 740711181 853587080 757770377 739928159 142295914 358856886 919739333 451134549 897909278 863954383 718524905 454746290 892642272 899549977 822007559 216350843 712914958 363049736 188360221 502780076 977456097 210784510 1065145691 485762038 827425850 385628516 185043561 600537403 866037592 408185100 961029719 726372062 990591496 650373212 725317246 950089409 569140860 317229081 26480770 254906722 871882760 516101091 528516025 512471251 385896763 562028914 692969497 51547450 280384175 13790526 58243739 232032586 829281702 594272657 500651971 603971652 691973856 998299947 305572019 646245204 319033897 993356953 38554075 383483932 125561781 565436873 148165143 410494558 1053006342 457159893 881500703 71962771 450155626 12975655 331142114 713256312 289240131 981880036 473308813 483801790 136101460 37166707 950065034 158366439 486339007 618160488 63574490 301653557 171769728 772693367 316806123 66576370 167136690 389083717 705477565 132863441 832001468 34610467 537051043 10521359 933289971 781982123 855024573 984252913 869103982 283518435 755350110 1014460384 1030082156 513913881 709122053 257627647 570785035 671611521 916063394 326175522 420285353 886921895 289472227 731775643 311235790 254272696 111949004 614304546 183268740 350880734 530753558 573573712 120175773 814891705 322660332 639474893 97227706 591396178 634952687 659575450 663840734 694735591 611829525 394187350 351805718 569911791 689827479 448595297 383614494 236907124 976252047 346717188 293559760 721882707 611187107 1037833948 443901550 23565328 900713792 100186554 527266874 436457534 401699030 853798947 382698422 706378655 444073271 411507939 10396778 780303400 569836349 65276574 944442243 609889379 295383310 263386815 197670209 1043747645 385330695 1002692376 734177810 653123904 964218001 399701608 494757511 268529947 241572330 133323075 901917733 290173367 898136293 924937623 647009080 599906152 336526451 112559495 607281908 861073324 792243447 39324445 113269847 517633933 1003813808 477704703 582246974 395788192 155488359 223574081 349705 822373590 927987017 9242156 967634061 451071487 187596005 36634295 123052484 647314259 863818420 383699287 664797669 772195419 780236595 432322876 1044317522 683705072 544571862 731236014 1035915416 640217875 843805704 409911470 626761795 78802408 721371785 606917192 363154509 282956169 959978594 1057458705 477391453 844982860 68554083 12235694 685554401 820332736 925987994 159425128 528310281 736750584 30969458 890197565 411424449 392207847 362263315 326885026 349872899 164115729 490449710 203504568 940404813 475682698 149861063 215743899 219799701 667371392 372883234 747314153 843577243 788308121 717250148 867758466 250240365 522031561 190408263 442861551 862346507 132234741 476172185 320745776 961850883 777786873 678373611 538420896 572479022 433972381 696614431 82914684 534287123 733553521 196496662 864757911 620600948 169974508 864823126 758757039 294002354 8603229 7093829 698622833 525251729 237527926 600690543 291570455 832329214 517884387 118754295 257989766 677318489 651809718 856378442 485399232 683783839 176111528 1037974252 468704589 117434411 630641065 973383982 88285557 464592338 749947648 1014681436 999210725 1055372685 906472541 854374328 589292550 725649719 315172108 932214216 941288231 951244549 735321900 569611869 934652028 613881793 435521406 207520852 82982301 124937535 304785424 255283586 201448340 846242957 868524621 1043886503 813588821 1009359126 585448902 489339022 48079110 1035496339 1016902486 91783752 815872273 306630367 524639533 752542193 103905530 900988094 529504551 990590032 195624476 769933022 711429595 667385869 596508746 847193871 760949903 92051834 121314495 134202897 919023826 322943284 914756772 744699389 964823210 163859848 988833472 787877174 681629856 1015985667 893552429 972602243 967812245 89799610 696854937 214174194 638530524 793752817 975528563 386364305 531333116 306612817 7987432 982328817 13311072 626145507 35374107 387292449 522139023 153256282 1004429691 663116747 699348506 485640743 755051252 608413198 716266454 563298668 978739647 129072173 240027002 258573559 620323117 594105736 104192206 736488669 527562075 1054759141 37129296 564581193 416733516 181996953 1030218283 1060995804 854063997 681008679 880978219 216273005 808258808 599896447 1044316303 368575874 843615207 255630350 889473901 67493655 224077937 150675193 308079879 1021943635 795649325 621722828 114608729 314898030 171723905 809484750 482953690 722366548 779500299 230150190 274796963 544950278 373218871 575228747 425129621 420937557 431964944 956235021 290223748 778533139 811072119 392864719 981614918 596619074 254151259 641086981 527185238 603183876 1020890570 427927838 268792267 252154116 86445877 740529493 349225491 948577138 671238185 1021704871 501739405 399485153 219670081 1048957605 60291916 774431574 390721160 744116852 501127930 253108176 260493494 30624593 163865627 575906752 104433026 296545151 78959031 77302480 50587085 568569544 549095006 14450023 324651034 384164904 527302627 318939842 753870122 622654538 727585512 718707696 921728033 152504042 650561285 255990298 800233814 249322909 190776487 1064198928 1002449844 541791087 1036833789 562025802 894885796 168516206 3488308 620082933 156215394 904384625 131219004 215546141 242780446 746139739 898956063 276931972 212394867 832610410 501260271 273298893 718762537 297993050 933380682 726448824 793369820 498317326 550677242 429908804 2210061 141232198 221013007 520045769 802017158 993287705 260123791 418930694 232289083 956999425 357214084 544422120 352016837 970959845 1013981119 294218067 186801164 835070767 702457117 958232930 573973282 209342152 85044217 739483862 774876525 823969677 67032098 24119002 1023148684 252916401 325066130 211537642 738219377 167753325 719743792 106796427 306495295 313039352 802123988 533724973 674488442 376972060 154756463 713379860 378821711 481177611 19853833 74338921 30529632 942475161 635874346 127811248 702461928 527952097 693778780 669557344 954676464 640241681 66859250 581218226 500919183 724363373 466501511 878491780 29782356 132439002 111168174 445870510 16867891 918786987 18615853 836718121 907926850 798998001 407203516 1049416233 91623419 815831630 884767407 344473527 732972648 687512860 907609893 472412680 150269357 691796952 913728172 232593653 308081494 934290478 67014235 472419882 830019835 289139690 484153045 92188063 992703474 980904332 287747188 890060078 577147969 251146382 502083641 199267764 962518607 794011291 215369826 256646835 206191869 323071061 225097742 995635777 226217942 28175533 339195785 443527848 215442055 623621125 134647076 801008303 971487620 322515767 403276295 706323368 349228214 440242135 53436515 47847239 140534936 887063080 559939234 637945402 315461916 340609839 143255361 138714870 402825644 923120086 560638037 196679401 673474671 324882986 728937360 607505144 554071123 379521681 596496211 531727887 451475161 254579497 1020347410 711508166 8383532 733868124 121387980 877384656 636757046 298203908 1001577006 363008980 554958723 789579293 954453963 1013815298 537341541 35073361 23076674 897603967 465398394 799137149 113522463 488306902 976990508 210837896 607190487 356673817 243721035 1011246458 616173897 100427937 573764643 939718420 8148909 941336149 953029164 222625188 202295180 151110479 855025944 910032904 674709266 728811335 1007399752 948618644 50992282 561149803 742572543 45558037 653186153 941739312 266419873 342619724 635265763 1007165651 323835266 137256706 100890295 117849534 636330746 628698074 881313419 720743882 582901918 684962994 562636490 464954737 305699233 142324103 442674977 775890933 716903824 1072816516 289299068 777309820 267927130 523996601 507309711 161711306 1039409140 890114316 775927445 677016980 203079627 63223770 906349052 993838738 996754 361840271 272136461 395648113 320842503 979724486 852254564 100841335 839376875 98886309 433559954 317328932 35621849 857347267 940320069 221085238 970583911 150992026 996760465 409071983 681674334 765767726 582453796 335848894 104785411 620270682 373669302 74897836 860017768 557581736 519534978 430443379 71822845 307953449 691419248 709977609 937793813 49616243 506543216 685697252 269513237 1019862076 39656498 459731046 613739122 698119439 284257181 283294585 478839535 681922319 580823187 870962486 709689446 859403275 476838876 548440343 53495447 94157672 219269387 21109843 906024189 532279417 570536183 872831250 581046738 118832424 269633339 288967647 476305079 234044034 431064724 264838190 523897142 896456136 675993131 443785631 193047478 905992716 337417379 940495432 370541271 882566831 100570956 779697049 531410196 183723859 662635652 15782498 607237524 905467330 203622437 288008749 611663631 948162383 534699696 587030507 679398488 236025440 352594803 438083872 774863483 298096763 613055195 741473154 401224151 879442308 167056714 959793304 364983016 752439440 97083256 825959239 432915377 929087962 142300456 390797819 318458989 639824966 243839059 562943002 394971110 122525283 303479556 1054241146 584854447 495419751 145936006 901129457 979590399 11238298 670624884 26433546 669432739 976132007 647360392 410713276 762259510 57689712 749729717 262201639 579904661 459642835 647516742 269004998 316775607 880837929 937120285 273024167 122509907 719893336 868566347 137957382 913596417 677189695 788215128 574272371 890755435 403205742 580270415 49037326 412559229 249652066 802393205 203430091 1029865644 886717955 185400187 801421417 988414240 1003323771 959926405 564802423 594663196 780535951 516726944 172588407 562096375 97668394 213888163 613416598 483483810 1064933358 714031133 810525777 456075335 253743073 405439609 873600540 973103910 218829663 692916153 216769275 19045888 104032352 688382267 945390475 67723134 12207431 777163752 459541699 1001076181 172122634 599441088 29294167 526836444 310217924 453872595 709242072 903786246 1038360110 345624940 181219895 735340808 251162158 634958144 868121737 865714307 81300481 263094711 925420351 425076317 4104995 991613062 190063718 25932503 656771051 658788298 706572427 167109799 273139215 323111669 320801610 1073630904 649535027 893871318 640535288 32434718 631508103 118513377 342303609 376162509 20897103 169521762 847206728 92645811 937988857 494757303 434249668 804841478 695549513 1010498631 965041224 233470126 227287664 661510588 193191779 487370765 937412377 426602864 437310059 389104090 889857601 142117683 148099670 609376285 856762611 48523443 175893279 640779761 390591571 63267540 757842294 14818741 704406142 536979487 1003689443 997075263 325251480 975783967 286435088 1019584711 801665710 948561983 682722860 499603867 890253805 907786138 882733149 108115417 57378265 345547022 427030335 916190664 882868215 702617271 302137027 954381592 50404650 333999038 687405337 806671453 511000511 134780500 1070517636 1045087844 399649443 753913056 810879918 989627792 296926507 1058913614 877268161 717629377 1019369452 904999506 985639465 1071138580 952195740 734419836 983117474 788384349 475807514 154175377 973615991 909547499 760932226 606326209 1030165780 109204569 945059930 170635646 565802458 379147738 514868460 891620118 590935616 90349668 718327713 168787265 674725417 521562589 5014541 264191326 614513837 1042958060 528069473 662827978 32741664 661302204 861990950 489657620 431838921 689128821 562942961 205730889 70607205 566877895 694024437 441436058 212619153 221459964 270889473 943085397 674927723 497745536 932206452 937861874 596884877 930246738 286142245 567411669 850219460 395459661 227822817 770038285 1001616128 241242393 433211077 829598905 331799059 611455649 590649818 13323464 417550307 102030090 1044708412 521534849 796571492 37845588 1052368895 134491465 979290987 869337755 856406413 1045165156 604857839 229804069 907960950 7553849 438686774 72735938 883747337 166621716 90417887 965555168 491884607 738494070 240759463 360949419 958682873 354226574 551382216 153172395 602324884 504914879 347087379 979379773 523967617 634475875 273257568 300333964 478060257 160713446 817592807 890770086 182775350 154985242 962766894 725943400 135740041 735472021 200724781 600567419 657614317 760767972 460765428 15896994 470996359 523108582 31559544 7347490 292235209 776297832 256996839 770412930 820518994 200647831 528469995 822957884 5843646 864173290 560841516 134163084 931260232 422164641 429027461 1054133462 662122431 445825604 1006763861 848774448 830959522 505260049 1048551163 444345344 590418251 877332010 453450150 830413566 860682518 414673243 463904913 558654123 102011013 586932641 523784086 1039218617 1043085952 504032329 262948431 689021143 185319254 430008569 267186523 324879507 341664114 969085401 1001657015 892386247 441879593 241303054 467481058 607542671 103769128 150079583 991381007 219047875 918180467 1064135614 833224083 229798252 612633630 174291588 1065456861 293175739 165136914 173115728 94656323 132368490 888956992 289122971 510183651 888859403 209712677 622810839 1027407160 493191829 177375398 267262757 32607447 724979715 805810735 854381721 830893975 229541322 1008176708 740768637 102796449 675696189 119067174 685506984 69472180 474360557 461745890 916689570 559896187 33102906 488467471 420216207 987732382 208167663 74572627 518575213 41682088 911369888 31383241 770888260 109701827 962827147 183186382 320748782 68381714 277766957 294732080 812809022 815947689 431314456 969551313 1045989866 843316847 373860854 65331193 1034053856 821047815 182921465 968415645 153460944 427580784 935529766 689806111 872624380 654969323 773447745 508830170 893401067 17122519 783857859 881768385 381845705 923366324 435631380 38939585 799697931 944203411 400789700 183452729 118498018 915403775 987423047 15766764 804412961 636088634 178440638 641126525 139853331 404462458 121322218 843879813 1034310861 954774153 436213607 899038247 293711682 545660759 1054036137 425833521 603759458 197258368 619510016 1011525761 653621490 945438249 101916416 964982263 276172436 849004852 617118054 822087415 209549602 5570062 477683430 67351258 884234943 200890175 749852218 447034205 272521034 760441889 39029705 12220824 594728962 105362149 174949964 771790932 420135022 668730865 1008332678 220685905 289371196 312705939 1015906094 538667448 490798038 840693512 374381064 789162387 472416375 674347133 530068680 799023946 160148209 573997155 271955761 1017211760 78964631 951457936 898600768 640371174 94557892 259506544 275252366 838112579 251848098 92771029 414600059 116931811 259209411 842024987 893550117 348070998 138998737 982484477 833717127 144701783 687750605 906490758 857654141 50913163 477773814 399779465 701596665 29395196 299286935 861538585 987108988 763804552 273062413 714627518 862803820 977058452 483526842 904956996 115893888 215886641 291507137 908757575 1007669999 204358673 492195758 473410686 684014535 1028564926 215578379 418031990 498628739 717843984 940153557 608294142 644177306 378188782 77663623 541038647 84523835 961502988 747936044 902210803 197016500 468569758 1040579452 320413509 745852268 116822215 681258285 551403615 675027415 107512387 110625544 954456124 387932405 970340514 850074847 590374327 650449015 4608930 178454886 866465690 230555697 601589896 161676311 554767976 799043191 690606146 362172286 113601647 893337047 188381426 92627405 52637928 1059322869 895203617 275874166 124193385 751877005 604290242 382976712 188513436 654534884 438779248 1051720823 701993021 608566326 192453081 531821527 553979517 1000886885 85673803 266657682 591259261 35789281 91902542 581301431 1027980503 1070505388 237733149 51503265 131507704 190396550 1001797767 105519976 775851446 311846615 763068041 419220982 620964587 70288578 305167410 351461168 732397845 293599991 103014798 33089945 118923864 970680595 523933747 314667011 309233359 1003689275 702130291 692022516 580070186 821564238 338979696 792757406 646548516 256407816 167465018 93633298 953080910 432095060 755233272 766186790 1017163223 1001359143 1052687468 687895708 347815883 379438051 924136357 473069298 19790691 827609139 600156137 71243598 93230554 624404022 676104592 768691915 622472035 264066482 216361619 600320946 265214374 944038323 562189288 366710566 457510980 1662991 821701738 594011287 167861780 86281286 870655244 146965722 47093681 525281920 339180882 147838531 782026309 266076798 1001605473 575249975 926135703 544297943 1061204711 853356356 239602814 1058375646 90823013 362706600 889005466 515537119 215821305 552144652 557622854 539752160 939736865 2060423 662157721 317464470 885862323 778566617 352288813 123324895 351851749 880401467 354850461 456030880 41947504 549662335 767133095 1018502450 920872853 961882591 687875928 9658619 469901848 128332629 770872414 443105503 35335587 927343317 37868728 928265483 616019746 286927599 35929690 686598736 174285844 948973779 1064499111 218272400 117266551 240436314 1069053933 659554385 220265116 719002296 576407852 1011536778 711365973 605465719 254043440 469972232 882849357 194244909 422594478 451911656 112710436 751350297 130698810 911260023 333030877 406897788 498575517 353818190 412544183 1038948435 338344021 188639465 788250460 328789511 335412725 679177039 161116375 614760558 789863758 450721527 161354319 394179542 565808710 81983777 574688381 207041445 619497617 409691243 339405901 967549729 670297804 38209523 594190325 300784229 15822664 494702979 163333147 762212005 856350446 986614212 1028636219 285447548 476361779 303659215 553397280 483291696 692864355 783233976 175876073 662441041 558867725 512079316 79051811 1053667827 605818062 348973858 709918981 997498798 353595347 794567483 433637088 497788622 252679488 712850303 999713629 941641750 422413637 388828934 622146919 496434733 31890331 551959126 962370267 741248451 307785166 472527062 768021146 283514732 1072381959 708968992 554431636 786243015 218026096 21818076 1027480442 85807675 213906385 645842764 336876272 174028323 45862107 748237093 308829715 956137611 446277402 906936645 1002330455 50727809 21933756 849044839 958364185 180552811 517147223 209157960 66262157 488088334 14198850 120281182 604832991 323959758 605238711 670072420 356096459 677701125 592741592 90667861 149525787 572995531 100760885 439386496 771921106 342586122 17751213 71766391 721000217 152181194 691844051 903045323 514726500 505143640 715600973 738160034 297648822 138126798 344580965 781066102 525016751 883306406 1071931536 1014503652 618961200 991999163 879581188 774764802 503530758 671175461 457808390 713258861 256744097 728574214 468310185 723704443 1005139031 1007448379 512907304 960142359 450966927 47576460 905137468 410305414 453797937 935222932 412225868 436749814 421241479 806769633 34169123 180833917 519775930 151520791 422467191 534178440 561117588 415695785 495628968 841608011 707044832 894464012 556746072 921005993 716521778 692340797 308808097 553876508 1072925742 115978636 611162427 65719008 36610238 724399442 702456154 976974515 948801887 858508429 439746423 242293160 973748887 33669448 154166872 985476201 386269894 780115104 258536486 380453642 586007920 268866654 251206357 21749331 678334434 254411789 56686552 943319733 80581182 601042048 983571110 54159783 274656081 17037318 97807271 736715147 959348115 834419647 441640314 416613660 251663908 988201806 98641516 1020627371 936433886 801052094 995806279 512213784 1001897193 389960601 86963046 393615023 841163885 206998294 672031211 16982211 1059823806 90166363 314897106 680419094 109620819 668423866 1036642266 383727576 129565564 745094955 1050298133 422713228 3518275 121442551 686617283 186279439 119995094 23420114 186498322 440849222 39966821 762480024 258957437 567121846 924336500 259590831 543700237 888972933 565173729 1051433135 306546858 489513407 876714605 492592098 526363279 733381732 1000046532 946019392 643866446 923267208 368011302 155082127 541495684 983908457 799903316 398871933 245588128 347735378 429633840 296101547 49413362 805748650 170642455 836899338 747724579 785342953 248476167 209614045 361815952 424419173 614237598 1016023719 681714006 514173579 477016252 57234702 20753470 498796139 276516863 371474525 294746951 109964192 774453050 99195548 945619947 673038955 556703496 676696383 1023884064 630201940 941996795 184758471 877924763 974284901 541030657 21501936 554505086 197643312 750673791 854455272 79651715 351575686 602843408 592526088 716390902 513853133 671433283 1007908621 686287498 500846345 9307177 961310767 1058508217 1017130149 86694481 146568007 1065914058 842781025 1034290746 610096732 261806958 149974945 972654894 498290426 296291888 1060898369 80185988 803378953 886060231 168205622 408114361 808377120 280304009 278244990 967651664 105361820 409922025 936780577 294081827 344397028 1068746462 440924299 299301597 463800388 979605423 793009279 1016396091 300580308 388054460 1018274123 929430568 309882177 554662903 446987560 759760221 878365688 199968983 930011437 371928096 476727781 476123736 921478014 492214447 345099049 755620471 10302814 785479236 828904154 448026221 1071783489 18992236 786966246 418439545 514131325 739701026 947371941 111219473 68202751 687455532 466696763 285908120 520435314 80227887 55677041 451926914 83910979 1073001827 245984923 822965026 732916344 707181768 590259664 474456730 404064114 401893691 743038949 662543441 705125147 811284398 727318140 964155152 170741980 860954348 121338519 107191362 1058686004 204659105 447519094 635203631 125073257 300206008 898868689 174390623 453785242 323002763 761434350 826535884 884728992 1063770980 28918383 1067542495 508078168 477591948 990203063 528531826 209562636 784059754 600194810 33304504 73120179 432921065 690754351 521623671 908224241 50926461 650198396 481648911 137372091 762767916 98302763 472826459 822395894 619353938 855927362 576952657 425939968 104280561 633540912 113605484 81240128 836847952 563811498 380135531 930709476 440977764 827968429 103582775 837078621 787362523 413810201 8600432 350390167 400941710 403988972 626401993 757519010 631419902 640095036 943917574 671152305 397059958 62688495 228119368 611292441 254567614 491879975 201627778 429356564 998928631 747809808 815522235 1038503814 968609449 942660477 893152755 1059769312 963786920 221744222 387998117 595309216 700167234 970528371 100787386 895520398 320186778 956653155 824106784 339791893 109322085 644404138 444421906 679228425 431833926 223576613 31489299 1059590060 244240327 364132214 488313524 369845156 313839171 761118195 863945637 123640750 762087444 742429755 994107749 582320311 1013782827 1067462037 35543501 739140656 569384084 230647427 683642458 91501995 222495571 370992502 521855992 580538340 1070499044 1039738256 362696319 714926506 836920244 827077074 291527309 704610594 1063616286 104917994 373637961 167707012 667563432 719960002 151263608 695199514 825312837 477162607 482002151 694664116 862381213 1005071672 159213460 176264701 158280607 205271032 119132222 77934034 416202973 445576937 524370580 981981268 417783048 682175097 760652433 1038908585 754549833 250421933 146210664 552790771 569955319 401301460 114447487 699057186 1041514850 367664979 629603278 293256729 122824174 321453645 824755995 163944694 28591508 970648230 845040975 225050150 733280201 631632181 323372098 425563656 651628894 644619581 6204839 229397919 189530069 1009000287 674896294 651731493 805578281 790343499 465130141 620167763 423250688 511369610 312344959 849770954 678400980 368940658 351721590 678569323 467698622 1030961984 807849018 563236268 100201739 569062975 485514723 115304176 477414204 360333138 984932994 856116470 77048949 129426379 108678037 1047808400 642563366 515703082 299202318 578245101 276735947 1057845263 767745625 182653585 1047634605 994878494 892510092 391486283 538519344 705453789 164096577 41670524 454661287 394189454 4910534 29768761 24577388 520800771 175369068 1010823190 163927262 542162605 282371152 437342297 919803711 1018748602 1025849116 394454694 504120218 742908790 128005255 966948484 1033085054 140463270 778245914 786061011 344709961 966713771 788250037 666154050 714556830 294382901 147345442 348005242 204538948 421512829 375134965 928314085 581687210 553091009 114769348 816627765 219582118 797850885 457532662 800663768 352288582 784002816 448204291 861256492 575926989 360144820 621068632 842273540 696274408 848636768 961667805 918062088 1060828921 88316004 739034025 457706763 301805010 346862067 405916561 846722458 134861880 915860846 684621050 63192740 952574356 376151564 410189810 484581143 782978787 768217720 115662726 988559108 247960915 329560621 556764992 570947705 141768305 813507688 783727174 830089142 301752557 692482447 235904989 247831894 126835333 535259652 548104387 133905052 286570247 297466995 973514449 592647979 982537666 1025304085 333680197 586437499 491400101 905391347 191585163 473545322 525691350 503378476 357828680 552777069 605300087 539085071 775558085 854612644 600643567 261979773 272760776 792660680 455971559 796609796 78403424 717421774 813210519 510293601 775006511 411462000 659593728 181268940 115659952 571425871 156999602 909117758 1068507895 797695526 992781036 30835537 918229325 768494524 975827043 360994280 905153662 552258006 588359885 1068807569 1038734079 741449084 881570153 251372551 691066035 501055086 827055845 275935136 852001377 654134299 1068311058 726855181 1042974293 353343277 269304130 293960221 10228829 725134823 878260430 243138530 508690926 800378947 689340376 656291539 39646436 696472664 376835182 840765812 629775814 427383974 152340659 946819373 186526750 939127733 653668016 28423014 354752498 902533344 871188453 863484541 510855171 1039301974 10676172 417325106 778133533 298414428 822483814 969909375 1008490247 351021868 948994557 194478493 531253111 72486858 350047692 395562737 160166063 517409771 716838881 768656624 601128802 1010070249 540980415 644255706 614980712 582948608 554698311 359184537 497188590 772998175 407120820 479506927 1018314990 455905126 569225071 386561602 260848997 185747216 235624191 379316841 383038833 1042401570 790151648 194388553 541219574 39068261 737034196 318423635 168456044 209197731 259034303 796257191 468436627 414766350 646145341 691563741 718488439 775987922 860268918 938922143 268601745 898604038 857574107 283824646 395007539 951131388 433921605 675606265 313741378 652861389 430683910 143442901 508849307 715270722 282701769 776187546 1059381326 261386541 397217657 675441299 953102640 880494678 166338933 211246056 534590719 833688158 65766619 320950733 354309307 502812172 549667247 55446794 386814266 332746011 183117536 612991973 216212385 998015533 638258622 606874246 114163418 851441437 4680329 622195266 162740311 520067635 686639287 71402950 469137863 948754460 491829987 576705810 309992735 527469476 538201189 588034953 734439241 431494094 184785773 320453773 436815491 305674374 410523905 4037689 897519410 239026040 514864595 641664415 712072877 117174888 794307743 18619339 97935773 364573335 663355931 503935472 567914878 356716179 648947764 73613809 875273866 187586955 149969434 1056771273 350223910 28299411 1053102584 646915258 956347719 3162053 902983205 651178099 877377681 785815250 1015333635 742423821 740024087 544963717 766873320 867659157 562526742 137908207 1026658450 510001498 80622513 90294603 783220834 174690377 197844557 772440598 69399545 385184342 963355534 936694032 1031527696 13211511 57791365 230486209 671396208 1039905970 536438490 427958359 281400746 383504666 305313025 767848759 864270614 290341732 711747810 55820973 19352191 396970928 81467542 99417247 584589667 259436955 368635415 1026016318 879748341 651414239 7019373 506023367 185997141 817380827 205460943 186412155 265973525 713544453 710635346 697353833 480420102 652535419 177935058 615384085 438576867 2496305 171465411 712757252 749942106 290446273 603142978 163667573 760183040 156499862 950959378 111330742 907962994 523711379 682552627 958826608 935654998 78004581 959278587 494447492 376448726 310800288 58194497 977031372 567779683 876398200 972925498 854813713 3067245 461214708 601214709 432103747 32986073 1035803334 892927312 304604671 486151211 735724629 785853239 554302618 648839621 453983915 230496644 363144268 285600450 561727012 188873736 879396053 55743184 956080727 425623620 418480922 630433425 158741906 383945544 159640410 234647011 586496364 660071684 479076756 22160960 975890165 259128857 394033382 629064429 946506415 427991663 970598042 270753906 486116545 999045830 513528105 1002188070 431101913 416800127 507781321 544663057 755519836 117781160 1038655127 191607665 638707081 659360036 168417502 717236862 1032485560 780382561 318421751 50608435 344098402 595105367 524515936 538359755 939219302 1002140085 194762638 11534278 264814935 1046645478 1031410056 908844378 325587678 419726638 332183318 1013592543 333487094 299152962 145476454 363911967 592688951 422867110 3851347 179826810 93617777 273920325 261611910 27852042 103716892 533342360 994304138 903359042 280261711 242301455 795696975 863553316 308027498 527835498 547141928 235696197 1049518535 147082291 465044805 873534598 915735362 1048360977 89359883 80155894 1038083471 998235028 810335118 141968662 145120646 655935327 28516880 288847332 842522567 592627991 363876879 273004074 384568355 96317269 682178942 1060054987 986430176 408748594 468382040 114500853 298283703 541055105 450293503 277943083 190843848 756237708 437159085 391935329 78187889 863398123 105951498 780211141 881007279 1042977471 240972192 62617562 877127213 245750039 541213147 599717933 729194469 392005372 570704329 874348477 999905693 677253674 609720722 85454776 708792610 29702001 806493855 688745260 363514607 319447247 741724825 639678594 549691555 338354678 608602889 455821176 863528056 831213264 508335423 563344483 738300790 38165865 823300448 543696164 729034250 996415094 485352566 227426598 526710455 382611106 880737243 1015975498 911702319 209257641 490788394 279253258 885247574 506700628 531958964 318615119 663177223 746353183 753778590 757455268 463005338 687701216 461651947 872390703 756534688 67426207 1061617535 620290092 27076163 912287857 946084957 817664419 936413917 541044767 791880508 476818396 182660330 181038136 878931889 570757356 1020876835 94339001 742488567 648216993 55735337 315108643 786131607 379202103 550324337 158042658 900571584 461582848 1061327274 475375180 72138321 1034881469 774609239 477699520 715095554 436705678 509548591 102721810 441028685 625718089 903376846 1058653994 377258096 641810109 455510564 49579262 887376179 474731614 903828586 330255433 532085902 1009089092 597149539 511925803 654333575 539750513 688553396 643762686 989591324 776122275 915298808 763282325 51424875 821977053 797750170 627172334 986133593 755776805 115715849 746876843 71029251 152247668 363823932 230982340 298730604 967939584 660878149 378370594 498240243 940299830 63307729 390440203 81928079 363909737 94462598 787588038 463080327 925921056 31228344 751535681 251758797 556569295 251673747 953974450 751416638 596336572 1017085189 646425492 721314854 868187262 275218366 62092475 716947016 491119001 267122739 16305034 510579697 1027730482 181067630 991193012 533788093 323013433 980952433 866966041 326159864 821058948 9231900 622002945 572742522 366418842 152644340 616647454 93645623 207290644 914488977 74184721 341483778 434740005 502525153 545845323 1056309596 950287662 976842513 902038635 49360975 847875198 86121618 572600721 598943985 616063469 2792531 380011967 902754463 407453078 80119199 981773118 463180006 296043101 880752668 356081802 588782888 836539449 18541230 104290682 119002724 505785395 506184473 1059616324 474377600 1058953963 386999139 72913085 13501755 654024527 1034571013 857447748 332904811 515260409 322088921 259967652 19487351 163171273 937563754 778277460 362554691 441632777 279199069 862351898 304062912 118754782 589713531 263858252 698551911 1011522463 360206028 946971904 554150909 609314277 565556498 642517596 413916110 254999763 410945005 97513030 930761523 763380524 435513049 43251285 513781367 573148028 565291839 782912574 340097623 248529264 625191743 73290655 982944641 76481422 837937132 135677966 649060160 528631645 579945872 670949123 501199244 623740607 1055669520 168479555 823436825 867264909 287097207 941764250 649183776 802615519 510016599 284080217 374337668 849512233 792787113 1029946440 435845293 320876947 961291452 1071974751 582378543 980779999 448938545 846815439 556381967 778064731 603677916 651817693 579447171 651672222 527167966 453994860 820279659 367127683 931829028 695574629 470490743 902022555 541603565 571300655 446443720 952713421 240771390 727195344 680327374 895685318 643056794 225890156 299678957 1031019153 410875150 642749541 282475630 113145271 901648191 1064259535 380752174 51633317 492700282 907146841 492252534 208553493 673540549 340089161 113904819 819730695 398817678 447291396 263536040 142428426 425959486 961990467 898793027 530416887 463506157 1023346127 629453946 602008145 276649851 222519716 170652574 930650553 215299923 225301126 1064148813 959116074 253861759 610902131 195800843 1038224285 437966371 412988897 115731072 725451445 169261381 1039301920 508957044 912842930 84837229 530687781 413777754 67676116 545042074 550970347 771963881 560710925 147508773 943585521 2781799 959998183 1011258604 267808362 478076856 603497397 388700204 256804819 695470429 643348428 803429101 961360008 457866995 361812356 281556601 315031463 1063040750 686264170 396184076 574833222 664731792 135985738 761228545 252710205 949243742 325007740 788045309 313700148 973690106 11508383 1065666658 507144682 782363888 279248230 876033994 203421441 79999950 836296301 358369437 162000097 1028595970 898960523 194193515 880505970 399287035 235958566 1028022299 793755987 841409140 642036770 790702727 593162516 1011220639 468319194 69714729 776330182 626685663 884615521 552271220 212162492 951886701 686197552 512923656 648556087 581251988 530330048 1035482423 201381404 321697647 342272167 917304433 712526829 819448614 257478717 829534833 879770732 211172811 93619276 692948336 389794472 210654629 830877350 851605709 322815143 383446791 402990830 111291092 853312996 196665234 269058548 760373490 761535994 760224098 881570031 703172249 293657479 1005987961 1003044331 625765684 292897988 501204442 811723881 114005091 631889731 652190339 438789454 122630520 308649556 492401722 866535815 934922039 734895833 145905574 143760082 17175919 908064748 351042199 989098628 241546297 45767824 710062080 950431894 277170857 205742815 970680765 497552125 792588325 104872113 574668470 468124909 814409530 557637153 902828255 782556063 1041491556 686291316 781460085 600843537 55514930 997167181 39179416 214390079 1821271 520196226 259299514 663280920 795308661 692509582 8734476 217863940 801037014 411866549 543324998 483188705 1006341295 606888512 659111708 519104716 452218881 111953890 1052554459 1018967094 965908294 953858929 301345382 258730633 131488075 955991568 637548794 712429982 162936694 962416901 502035017 962170420 811805625 396775929 474800130 856542585 654152555 205661143 78316079 401238423 903591947 165818919 558484491 71485413 391731426 547231491 482140152 11555459 378844228 283057709 680649468 782804926 735957182 450161062 854924793 584455919 265833035 615323306 501560269 49571755 999911434 748201335 288390621 814955474 72977914 415253116 1018506505 499627160 52690617 110855011 355963280 317695662 990698931 604772812 716248336 90306803 872322211 788351278 828981395 999991951 500728007 192924494 59221204 607319632 988663413 1040158403 699161424 920602971 794461494 258585960 634656699 580457928 972309115 298765636 345404262 185892607 841157992 347789106 917305675 24874976 316475689 1070926471 18630364 421212979 896017907 324896327 3119158 776874329 184021699 320238362 807859085 868817470 480711309 671338859 168146971 756326976 619940234 364653850 647163502 44460478 882083940 304961422 142964733 881184962 747864258 201908815 530227937 794419560 191911657 696479550 762367661 334082715 384890864 755409454 61058292 80113509 229094828 347921685 986379938 742612981 727711290 378179657 409259472 760433255 164761706 1038146743 271077346 103619574 105769554 33515694 829523569 231961996 674556801 624894441 611085297 251029563 886644810 735695712 180951841 299922709 299094363 493993911 579138833 160601957 1683428 584987457 459891179 692125673 868752514 640980518 36182628 999108230 731300769 613265227 351773391 289079586 385104721 312702605 630878959 391242793 971800852 491641127 728700680 472437580 369715829 261793836 351694604 818956536 734965604 82874619 26509467 267068751 353273281 214401903 644330850 581514973 574527709 459622220 822049494 943369292 1029568264 160340250 115789876 483239317 8764204 1052862563 75755627 985375704 212810695 369439465 566628706 151494472 11807467 802376449 331787432 260853248 620689511 565058643 22428488 729980749 1049591801 52314194 640785832 742200994 490267011 875880052 307286153 399480058 129653643 326977564 370006769 821335720 381430936 446768842 570193424 400866268 183573464 75335324 817249749 413922251 730290821 900987321 341655685 735218653 918650022 919475541 1047893698 448428409 220518789 893463997 397268360 594374398 873215007 936339615 636544704 858587377 579385032 585658854 217942567 704862610 860308184 346169706 360820142 1060156044 768068444 862091224 339476723 227135441 494690264 971938820 204440840 7642030 871425153 957892193 239237091 644552708 760694061 771435325 990707440 1062686149 1038731870 1024982824 556341041 940281605 297182505 248812921 1023675642 818626640 108560811 731928859 670634937 570001007 743551159 225318916 266495871 1014294913 324492540 746765793 828129073 152974361 742153931 190935202 1053614794 173483724 826563439 1032980621 357928710 944678449 749496648 801291826 421286766 285352938 317682748 816352211 60482229 847193174 152139379 171697496 665766001 764209156 163263662 342062079 165977129 249169251 841409318 241968804 143159780 1060082335 17055694 813902053 258513724 79189276 892906842 712280978 145194415 456195896 632134021 993495000 337075124 502938259 50180951 561417922 413621064 173876168 213875188 833926521 675842365 703205061 151817201 9205631 763532078 974409898 189454661 745299514 60349822 167514746 944617767 828439603 487779806 138474933 680922512 427389331 30155527 334608494 962887749 966738055 730403857 691958280 187731200 601485834 447405557 913721691 548513677 529579075 159793862 430522014 1045976039 724680589 41705973 588548049 340247740 799470247 1043045289 735075357 376008559 150100230 441973352 321948509 91810829 660938592 240966235 219914193 140719037 1014781567 986457499 1069252030 332820742 764745593 317413598 937199552 672629672 29570914 104210212 323728750 668138020 478523203 800241118 334441397 401896903 42219994 954297435 1068408867 1049069213 1000100339 829108361 871442253 18715283 1035021732 263772358 792730567 635657756 779216154 361900773 740091581 1046374539 242207341 166695973 155348775 73940809 851427889 321785885 563349468 233065988 971549296 231575426 252963996 801274358 11624415 943745219 332646237 391273814 832706353 813751403 364428837 996177787 1049152604 769467952 1070564745 458795593 238842404 158016739 698078249 305333965 798744339 270173820 751030854 85921608 772544922 659946944 17015420 433348017 350748855 993992330 745852457 550422387 432271638 187355252 611488952 25516698 412837334 651623480 284802847 1071016311 904307148 596752712 140593910 390126224 390849175 634921466 295181841 999684772 472124099 826280972 1004789614 13501140 705321931 183905032 754853783 495361121 896214068 338719073 225521339 758107188 705524511 199867449 909339452 974491907 925997363 831978589 1037529071 249401001 438523458 432894171 194156533 765069131 228101512 516648021 53698185 287582184 168219524 947375936 812907403 185217580 786012403 138910966 909951417 201630689 247111638 463677332 906524598 899847681 117101347 783382215 290785915 668984770 181725255 631470869 402914897 778048690 85571907 965947572 785358666 667380425 399572530 687710687 882965305 150403062 668883992 950115735 273080403 504140306 261706342 143512940 513163798 335659786 385718011 659894481 538577096 979888306 1060289548 1059693970 361529345 784183083 394351087 714002704 520692779 347809107 411561954 375150961 358788797 77794246 980538217 625853942 651949078 888439678 781902879 771487156 868927718 611227485 527554113 207680908 128201363 395214822 399308693 751862285 542249863 57000246 973339118 7866861 616542715 318947293 1037889769 262977414 468701733 1027416882 16598893 850357983 630466967 242901573 846529903 952794693 833178680 759532948 280217416 567124335 721325300 933288017 35483406 1057766233 639759865 998675545 1037211577 994589531 984449772 188262762 234553075 479316891 205499719 288447648 507003294 730312016 1062379165 633449069 653767125 943460855 26542534 1069366176 336253974 423962646 14574082 69868081 706183387 211374433 242960133 1055211572 341784786 30870381 477311319 982844984 207128619 1021192084 428224047 913465605 285744335 285037368 186161910 633283235 422418717 664123591 338698366 815573607 761463363 477230913 724491438 110419420 46729943 274707689 761299489 1043510143 759573085 193020571 157102518 706214138 998136650 325143772 654217534 836440450 1056351379 1068164798 965535254 377675913 2898250 877951561 83692453 875356373 580311610 549357822 968357237 908105811 389014683 32461111 738882065 940587925 449330411 950065016 464742485 117359581 930170773 1054324117 616587471 904684380 766449243 67212191 166190450 722167537 276200946 379431248 246708317 263899687 727185392 984991789 131993741 421403745 449855796 522749492 970611799 668479777 923005059 553455035 272354512 881378495 7816629 62504214 172382809 655377945 335067960 201125894 1070729458 540330521 955882989 660774010 314059851 240911751 864794896 842642833 926661085 955582136 970353723 587917402 435442146 201615857 665460779 156686664 670965670 844564179 118101207 798731398 854185888 884938893 154664875 79372106 418451532 252600738 287414621 434484520 806050051 467541349 657352361 786767006 442301218 305341393 403014721 948260510 708407550 321779809 1067286039 669437292 909197156 700971818 882076572 423200621 1003452638 1002421488 431442600 132384698 745930257 1014608124 690611604 90259355 213869093 651652364 243739947 190713796 1050387993 611664983 550820220 359730663 130279212 224059457 1061644106 898177711 1024058616 612339457 752235607 667212081 978490217 1823735 545982767 99496186 1006903835 476925837 468456897 1056720816 410617780 641506107 404348266 295415155 240996024 162179606 298601068 6144315 386701192 179200151 424121262 477036335 556865242 1050700387 762952227 930522897 859044527 825062173 492007913 294498414 288250227 227313207 417060172 696202442 89379026 998820859 733393546 10555586 992032030 459690040 112837063 441943327 890187001 1069011248 860746921 370014920 112907090 812767120 892652917 457785784 513182721 513997821 684201230 51599748 771589937 158135567 875926081 838121155 665464104 1055585187 968264219 1045966106 1055052599 742215015 620712320 374268507 841299018 78558543 677039904 90769759 811035445 488850948 791078588 1067996427 972834848 535900782 699498551 33213985 845528918 483801507 305888303 904704826 17584389 1008337978 598199341 823505497 308281585 650384029 672638620 546883540 405902562 397328613 187637008 1045880177 331539033 602595776 729442652 543148443 282383192 876266605 486994588 912262097 272212851 737184374 389761081 712000530 829635350 639072158 569084610 713968345 201224799 486518288 32559917 52384576 613044045 793216800 980851037 404771833 937457751 980006712 427585725 498300381 134070106 115175638 747254791 655032956 925960561 1057489032 165747235 1010547197 761342648 605806649 923395615 166128197 1051448669 209795892 487545409 271159394 86744385 17658199 553977239 72975564 786882513 828449666 764264160 11409501 939520397 508182080 78837011 911791000 660930494 946984034 866855330 734924401 822123520 929470965 358722025 254997095 316890966 383126992 768304189 331717122 744239136 7402257 648332320 634122147 57937108 696113478 327998257 317318456 713552902 438568692 347851724 290096583 495004773 166626071 294354860 457127518 183443720 109107095 762383421 377354396 910014549 382275265 697491377 148403612 726945425 685580024 937481633 31789294 414559033 253040106 911939859 276772437 204492636 561437575 641547909 696595742 332511415 553704750 7562956 229039590 937468282 859504790 393484640 783432915 883616143 658674226 334892177 136594871 184253398 756714558 172011753 710689958 462596707 676467678 703703316 273664223 12412129 44844782 707153295 1050554186 263255899 143330168 889420686 917213720 115078608 1058361141 238877178 1745459 23235917 145190051 449297745 185674648 92134577 891963551 268898386 447937004 919423164 118645462 842477356 919617218 577733639 239699039 469719111 576567284 1024789472 1063000854 1053182087 902131406 423947276 358833886 1024497134 131126555 663315998 221491664 1020370290 310662414 521488846 828216768 401125212 533325506 1066660881 160361964 464200011 761961574 250410098 440940765 366253081 717855489 903864632 302942874 339595430 297971313 916758473 1060781629 796845512 944184124 554579791 189104320 987936209 477973213 571838015 698991907 184166952 1032407564 202395438 355531443 418696072 160563213 452434374 275681112 474687485 216418685 442158707 914410251 748342512 493864484 1002679265 56320628 858322517 391413741 997878284 9780548 225371979 580435872 941126871 603961090 623706192 909640438 976730451 407012210 98135608 107440714 483779465 487967087 112470048 228709972 263501310 859949985 330635997 590024385 918203063 999916300 727180749 468674289 248102915 1058853064 757131029 74087980 811717504 863589868 953374612 873736934 98327069 703263270 542370998 1040671605 617506220 175483657 881213392 377909535 130003425 188559041 495823041 804997401 447024266 871240292 1023145681 789056282 463815541 1016040003 610193055 511441081 90947076 76991801 849881992 701409427 684538524 948711806 362393574 719065993 29569795 1013299131 519144903 1062795462 976044031 356623832 686486796 177249204 242829042 218437868 391447572 321847772 49512278 927589862 772453362 405448007 222911673 208490051 816381570 590936512 865183604 177586069 561953844 777774880 173484645 57482787 234789651 486891127 108200283 539649363 48180211 779315468 51100398 809995073 204048984 660597799 1011927934 1013970267 644006673 85755265 450714761 560818064 265327356 642555094 102373583 355163112 34261714 1011403576 99936571 913479313 599008519 552093644 581334597 542990818 217480911 759315500 489830962 444773819 243612403 74631889 1021978770 879286787 1062287959 752845759 479814127 1000535533 712339945 767846057 837971896 690482715 299055693 433709822 1068146708 223886515 1064723545 577076648 897311931 366465719 762193953 384294997 409401475 924984128 817894258 114362749 458386461 740440458 658912593 341203946 86035278 1072206656 788647158 548170542 694722152 452512125 787415217 700826208 242670177 34151498 642105911 475346253 190227644 582821770 720399408 369854492 21340724 297187076 797739908 826504326 585609675 497350300 1020577845 839719289 1025149555 293829030 530422454 269638270 476878723 173480689 634027246 9529567 220673163 38854100 732770727 285407025 756782103 700321584 377538883 526381755 220737509 581636260 691616268 328352095 624559965 188600273 871671635 265813366 291866713 856148686 875277348 11347625 191356967 826443229 226971180 1047579074 550692029 965451502 998449800 57845516 167444625 726897600 478080767 84915046 114139043 721971544 912987083 637594999 448359426 220514094 779421501 908214470 672176663 1025903555 738964213 931715551 144478596 369133659 530260190 341377643 852964069 893689515 138956393 95068972 751549412 476484823 736261081 807998012 1057507702 136456182 245304116 292615773 958836994 505318858 602896202 673491000 131562205 639285591 638747741 319838338 257904881 179324224 434265068 367982766 267702558 266412390 297871624 364553495 76594236 293256501 427464222 967239027 688289045 739499021 965807117 1030485436 298475764 995582817 177798454 952128177 293175592 901834322 873732206 742203650 438694263 954841151 300369665 412278119 225048969 12967176 470424389 647866833 785854169 508537691 705080761 613208908 458640675 671616819 861186650 393214064 365167711 717738458 889265535 479650363 787699569 694440343 358696448 149244977 677986840 1049377550 288126191 504694841 667419371 329760457 38697103 624646769 856093466 768839971 837895969 258207647 898347308 367242342 16866125 79540800 14835479 69512113 429025293 807181820 280944029 46474394 646432485 919220481 337364569 357958534 103440760 871572586 332186395 133564562 500442705 630539222 802735478 297669338 795341291 177787162 528050292 3912920 257663812 274137476 789894086 358890894 503996064 170070611 745284018 981135043 770816072 218051626 322644530 660125562 540149127 688326312 1058277157 962378392 31723927 456373739 955539440 918942730 659014497 594184941 936627530 996750736 530875462 810704467 950256381 80007361 976107647 911183833 495457740 869087462 597280991 728233807 1009602405 434534151 411748924 912434099 560983249 206193230 772792812 476647435 891778921 1009393 762425878 1028940868 556924899 970676807 581063423 660798755 488581803 252892735 529325167 760766782 944728596 311685361 164476877 130903380 922094930 95331014 617448693 832061819 796234163 727524312 516006405 407077266 779480112 519148447 622645357 513561598 170943780 307986218 699677336 689925601 1036560838 368663372 702810849 870266019 320364606 561276993 756745800 556637680 948935106 404522916 122335135 504253460 75435410 39487126 782444639 476803734 856391864 429564337 51675648 704831995 42332257 457966818 1004405702 789457496 467858625 807247239 331008957 112458548 254539156 137572396 310495245 323558951 890810909 658750656 776835660 779255570 856172629 608185856 802795781 1056354258 161782614 199138351 138421350 595467196 883440430 740427438 353988885 710474143 964229580 835448456 886208342 955921069 724509839 308407890 1010028007 819278501 685647412 501716299 963175792 788223692 1038454269 398806847 29183609 586624132 971913671 656213146 649549738 989398456 556533409 957562010 655869573 475849507 540445315 332052543 883080776 121332765 244120908 933839980 276676637 262811850 436993607 592708615 714407360 661150543 155990153 891189460 1022864212 59057191 842877257 482068976 57343695 119887564 427824702 265753453 262509369 206388509 922585439 1019337103 408216292 662181760 1023643645 586377386 223013204 594778256 442452929 907777369 682557895 553373290 518643294 955448004 545631712 856828730 537471595 619810894 396759700 560141883 74731726 789396057 419051535 663735450 873439120 512335338 941034631 691622689 547768306 1042531209 337966916 538859064 356075463 1012471743 652955539 41946010 489117603 330644853 141895058 262410242 260224358 267129226 844402365 466036413 791759909 230935496 524043857 225262107 561593412 991390225 601961623 226280778 28991825 935580905 749549367 439317892 194641659 382792838 78153776 820111415 72670230 662272432 189325482 62513525 871842770 180150850 559432156 400851291 621375103 649410081 118897723 251059937 225110491 970635993 858575947 288239843 543919480 974395494 895452810 193730453 35813911 912643462 882678750 851272142 929634397 502096441 805634754 132727649 707704770 592352572 8020216 772119295 638107943 462321814 722234670 688031518 466373367 957244408 768844436 121978556 250566813 206807845 773443888 180626537 536279875 1072004628 89316265 841729481 1033062222 327803147 1070540011 301899816 56533205 539183965 158475350 115239634 710960438 399755119 21433122 1016380178 997596256 978246926 394372515 439814152 321624135 145482895 41498633 474360918 1017240407 186838008 222556173 542594015 396936127 839954120 961750764 164562048 685484176 788328667 1053634111 891817799 788420329 106552951 585232650 730125974 281072533 832048895 293355018 790357600 875301445 146089016 373018678 251088120 35023258 895485786 751733186 417236257 510243458 53021313 268844724 872338676 613505905 83914622 844012327 772077963 85231880 1065562536 577137243 756779551 970852005 111519740 697264525 969616016 588448320 76725443 98444838 242881535 839793817 436152172 712899081 753419315 500120040 787586001 884526645 845107771 690565828 435631661 347962151 121476186 667885589 3526389 904763330 217796893 103892778 297795347 950951334 603998985 667437377 10637369 348094684 483285009 146530920 82522957 718542298 1020855744 459713352 1039592235 127217919 235002174 26727501 817377740 817428228 109990450 827547454 883043044 285361519 790251785 93524455 319943387 316638816 901619684 106013407 875606445 673597166 792506375 968606917 910582905 144744801 737862413 84760858 762912312 77748431 966842305 705331982 952253357 539025816 104116230 63173264 603163545 595756368 89669990 705144551 1051162873 839640328 234798416 776545842 790180881 272156643 796198798 788865296 77031000 1042231946 676244765 970172412 794050807 986687764 276620918 857556549 36077595 370981502 318851670 195525206 532163348 814556271 23546581 781016616 215628537 372445994 1353682 23484997 487200403 83698915 426315706 236813470 169823404 956274455 358268880 200673039 640440631 416993039 575673741 977107990 599620087 799556712 959252294 1037863107 780506072 184332985 321055776 571233607 835849644 565409050 516245348 232803414 433397829 1019269117 478883443 1036363247 66846927 372912879 933356728 844156555 374351584 861904295 560032656 9194303 15056357 670105694 232182191 297096053 397012576 654964060 14997207 845511974 450682547 215974863 292323122 67717624 812597816 261982664 855463719 831419792 942629186 640322969 738949906 826059410 533735984 656739374 333123063 429483981 729988262 141702326 404928910 149933067 230979510 15405840 762284149 141612182 362437996 252669809 998594520 29605378 659596917 17218312 721480943 436218324 599386995 1026682773 631434655 995363477 805166065 14665377 902865392 170604280 464371710 354102298 896038783 812835011 539610636 949218446 170048586 603864277 162814317 604532683 757372491 418907168 802410406 670121186 202274550 450390417 998628537 309136932 79139563 69672399 365739946 541136520 374100545 1064972062 479559631 229198576 352138200 48046929 373238136 313204365 911576046 794278500 615958640 956872809 923959306 970366458 179124392 815813894 759437985 115092909 898191420 89637039 212981669 958070205 938396724 556982709 757958745 518816602 371982183 924298195 957182960 902862829 661416298 995622936 40123781 524901672 203886461 192487917 196096534 217413880 439925336 267929117 820740605 518426727 55402058 482977981 196244180 182365435 45454668 810688722 65135094 9418011 558169932 1047857822 222375441 800188948 48661602 206831207 688800549 884068164 277794941 374748404 1009826781 633922805 139364267 588184601 974952000 1067975245 500523571 65985391 532288475 75781515 498244649 161352871 703378194 345082605 549898413 470766117 720636081 844193605 387090358 898968078 32996437 900181094 382242198 45549353 877373160 726667319 801915787 869589908 39842457 689678375 452868824 1040292788 18894108 89360977 353831530 605204424 439376026 618630253 429281682 973049431 910411806 939224342 905099974 158358801 207821242 102250060 45669425 211568441 215010273 496851103 893263082 52409754 163236342 144572754 766198313 233886885 511746638 534639828 828557803 144761383 426207605 1022938356 927732728 311164042 980568354 1040800403 454988534 470651304 278753633 821990748 561850288 791589334 395412542 784212111 419140691 41616370 14361047 681904358 867920651 282753122 628684799 483533945 100734494 740556110 711554322 857188484 102062783 645310930 160241945 1045706091 207712579 334487400 343073819 399765739 356487763 298313347 302277601 703690236 376144271 14656258 366625246 90709763 7507350 809881382 951865284 287498798 459814875 974441514 824480926 213399236 760736794 467203731 766679775 46637728 182045789 952379564 514790954 380430495 494619666 773686440 813107625 723494273 920231450 128848661 82623396 665345767 89879729 705542362 487488416 610586283 629632250 202985800 74364038 709590143 455291834 160612584 605926465 308404422 848623431 801220993 894760700 399329250 606102175 686159012 69286760 131082966 57154211 227303950 575912474 42041053 596710907 273090634 1017869138 940796787 8733891 3849234 955213241 814223790 148808712 688031316 720438668 56631725 828869636 387781721 237772904 570736510 48291760 181386232 758936314 996224691 555985891 1029395779 297241257 440479806 623330510 1032032323 148426168 62933590 513227258 534448475 484257643 160647176 888989259 986152371 451463405 780348896 217128590 206488493 338416067 175630189 151992544 906237596 673576100 542986209 741125228 22392528 359277656 633535230 813702168 481840152 717401480 518811539 314680579 690536063 560281800 182031291 1063427781 899754684 674173966 484850223 726893393 673985469 103394047 54641189 372954443 651551246 402240569 59157726 398286840 400571828 11371223 974277739 622551043 768657839 479167084 428622017 128278543 1019843860 649082456 98587032 181286253 238426220 261849767 837776915 75761672 166815627 697513873 811058536 742929911 394323873 405277534 1061381504 271004995 478775995 125100882 96144071 102982766 675202880 343769825 158804302 390467595 211348227 777095378 738628909 991900209 871776720 331032339 881381569 298553785 282707358 1052361945 748360990 178309156 764457044 125020997 672171730 249794846 393945753 1036148933 71753894 1027656977 1055521736 656017645 728205733 283894391 234005652 908484245 266735579 886467705 725017528 473112955 370955228 363018791 752026135 529084065 394677661 453957502 290860975 700771624 220363897 264990419 340578289 613494122 749434045 324741235 842583305 221852728 174616755 511073150 254832655 451900842 66973256 753624081 374750676 882986578 830583274 228927204 871372868 666297486 1020771861 812287871 1045482332 1021781630 669477073 963805802 481546373 195659131 586413869 357959002 790615333 416395315 536719239 579571022 924764412 1022304472 803365743 267531023 790201624 467020567 769702258 286474170 732073226 931705940 1003816346 885455542 464493741 775530227 10833006 389878102 1006310605 950020772 1038004719 290308086 441593596 518272545 161147709 686729324 878302101 477309298 836642756 584262130 928269439 79082548 464751485 486662410 905310018 341695228 502951071 732466993 882588410 57839377 378222435 194443971 806952018 490274109 910481384 424956287 784720014 575923962 546442631 179873468 632349224 72070519 469263869 618419550 739099477 549719789 889232497 723191169 29091861 977291684 904733463 102605423 171541112 177571394 253348241 398649919 405754824 454086274 960744022 1023066695 949697934 557731962 759645696 893181947 635760625 1062260619 665693329 1007835126 875587152 1068761798 144194069 550237398 225821622 26839793 98566984 701960435 938946180 434156179 692385589 2032678 675018495 1050014626 375636908 1044625848 154205756 177660027 470504304 252208476 419048277 921374122 374538077 785262780 915029525 322071312 676465358 943785934 349270902 894214744 1010529351 857165333 1042177555 993986818 547476382 365334563 1033909878 594181364 1017782051 611902814 36795214 969151056 580419042 15076467 680846820 586775714 626792233 814398914 141077181 794079765 741381974 561819872 531344595 987537584 346086971 588093574 411287391 25359038 896441199 60135130 314895442 669977183 844194008 602319770 286385650 289615510 49343573 611335395 649181510 795010022 1031828948 148447358 638767535 690800392 373032807 52060664 477961191 644226376 1058732418 29379566 72583738 1030307265 342306503 704940520 876015128 363233175 859542813 942799142 582147601 580038867 994656500 91657111 793610942 939731048 215983421 110995985 247361045 557529399 717965892 432016205 1052901100 810709223 546797080 793808642 183716630 1053510847 180292754 808590972 80415881 639448949 54022773 35123853 568549489 793787076 451533045 545131812 677174524 248085332 671111248 709928049 774633751 38922585 418791867 228998201 566397139 779522289 652964716 229098179 669093925 634214815 213121959 386680596 455409830 349057539 440538547 848606721 194431117 323637920 419730257 685680820 260147383 687269180 267053892 1004622543 209685918 134490605 606429973 589604174 206278438 74662931 889529613 492055386 1015770720 94236671 948714891 282714645 972534135 1027520228 751876788 400279563 212132444 166882066 1030325923 540962423 193927239 740667996 937934645 750629873 1067016521 628340519 851803151 274622476 263464760 375555385 463693347 123646787 926712596 322001082 242123470 1028221311 688563091 304245862 619817915 745674718 593852198 792842172 683457619 204873293 691221882 183820062 455137496 584758187 19398800 603563241 55828116 56328940 385806975 424529391 785629678 503137424 283134786 906953250 1040903634 322811432 481389329 88229054 823959390 865142090 160133994 788259284 180171735 484411570 709656051 1018829301 814307123 1009806684 108531512 91171713 702033472 1026646879 608410084 312086 213733878 502160449 1005635771 142831003 1049564093 457769411 133751972 538277781 590241692 954281481 165662618 669787022 761892158 601440685 128105415 758965167 1014796594 957391988 262962666 1006389249 819171927 67715573 1035950469 376685097 745854435 473049221 548029383 39180863 362812491 170093469 205646761 199163407 721372178 102581645 215850902 144801155 717687942 1053778723 160518848 584839903 137467031 529664428 382430489 547376951 914669934 474777655 327999729 909839469 518707085 403555581 136728335 664678005 11472187 864821690 542683000 763870899 847953342 764862642 158330267 254468376 500478393 750289174 723829921 940676759 992566656 643097104 433037624 355629706 961784655 527296344 782598046 360185189 790461119 635382755 437006400 958390643 111723718 514247972 774173496 187390485 485882307 322618958 841787258 589021478 464696527 285872157 508887258 790845220 215002096 340987924 655072707 263580947 778593935 800586985 230982357 596243227 231660855 401151148 863403111 195795744 838524384 485523020 904653109 339711109 548189345 801057546 349307730 347312386 653841800 399699545 733761737 10555104 608290533 613688780 640431072 568674234 330317443 1063173088 997329454 440227336 786548071 839525324 876608051 845551722 1000347561 124216603 197100639 803318952 1027157711 365920238 889587054 577084854 307219702 102457118 299190551 830838012 506082966 186640078 233436153 701103198 727425233 575852420 773251667 1045760703 725831880 32065105 551870984 816024661 1027374406 934862985 684751807 55048177 1021222413 306947465 871424511 580636465 255680739 482293619 170316224 149864727 154439011 215482165 125650590 602012818 724086043 624521156 743659177 400165008 389973507 298225712 278606251 382039352 670783447 1049818115 481956437 26582510 1072658721 35464067 884959593 768526315 787156003 343618177 531705318 512576914 516325654 235038338 163720583 890198422 2319185 755691184 950039104 139634674 712196813 660796432 603331626 266606144 910868798 689627644 144096915 465229627 948404791 664314831 735583478 120978867 314430409 685942634 1044521307 77897197 708556679 477914616 668338761 84112528 5211151 66688383 1055461480 721681120 557861797 953436920 6187549 339300208 658047989 473234415 454455905 586753005 551651833 867751509 953393574 888665269 44956242 914198475 691999324 986765192 1066692969 831310299 345841413 779650751 220816831 640691194 249883254 856476699 514623714 889986588 663228394 708951461 218964950 1043926113 47057160 1497538 69738364 113732268 381064919 1024950354 944061781 720535905 428641354 511389641 881728015 151288396 697479186 995589849 308205624 184322440 548911663 134614330 954764508 976062343 609804371 519911197 144329757 1058855117 461683556 316079569 446181586 687865158 189510790 709327226 945284253 429684679 173966267 532017598 879365109 217484681 939262724 741587487 918511597 37347069 88463904 70089099 59811154 177032998 647838920 56188166 383850717 1020613935 1005975564 627975065 178569338 55336279 320671542 625636924 975021888 992685258 759262462 656801422 1041742045 808734126 555127397 840511165 445835456 501131482 733277660 261790743 434336695 317359843 457940989 174266584 671437850 307053684 913707417 295481272 14269541 874902476 826216599 628482151 90586283 632727624 339422775 659728737 979947153 260356033 1026649461 586573602 450964626 758109916 798017025 804813933 665562550 688522327 33257994 789721938 207285187 296520235 490625482 481420303 721049433 65992543 1012972561 911272342 854807243 753259300 906894711 1031682805 934287871 208295453 771930156 171267318 209776074 228539655 120957287 929177661 924760720 791983875 525274056 642155775 655779229 238446100 727930301 371384721 894934658 1024580685 717002464 173281852 307829924 215420326 365097773 348686074 75457870 685144023 121739212 73571530 934676343 185157052 166095700 82809699 369194520 629606259 456827827 1038765405 866689343 125746207 25987386 389562684 206151718 195672561 502109701 661423517 303333836 34065496 700037370 633237129 317862432 88755141 756144698 1055074619 925777103 67641907 642791525 441945108 583480141 794453520 363510300 4450581 794010790 1041006382 426567133 52228294 328970272 295180854 330450789 299568972 499694503 72177969 435186319 656370287 541180959 242456307 1047166625 854105809 755683302 141442842 783116832 111982889 274227534 753794408 339396972 193126194 955986544 318431727 98782607 633158261 1065088079 129841116 612218719 380016812 767993563 184471317 916255463 956996726 1037548407 929206589 795436121 260821566 930595929 590527650 537107113 578596605 348119899 1036754094 616183405 946555854 111790173 580859556 104036637 880753598 980788538 365629798 524367417 440490127 373730835 398671087 152159870 839687244 946664370 941546635 1047715994 945651271 456044299 997322936 798042041 238541515 721759203 156028669 146178053 684976805 524884329 994311470 134729842 213955172 311621174 958590214 178123141 213013179 27415073 539267016 568052898 632220471 588280391 220038687 488323326 568625990 1043678328 83338661 546301107 1025219968 559097487 489367731 811045008 244168800 438506772 1068645592 855226052 1040994190 482172698 385755274 562914427 822582656 936243657 781027273 593363 571628987 848089275 994692669 187271102 1039110665 661006983 906364497 1033809583 730889786 912470079 868675793 228347750 192152496 1066684223 291096097 708755244 104410683 325154583 605493520 597089647 762760568 574430199 92176555 651254134 721495988 262318180 164291636 1003170811 46565116 400354481 742402464 860556351 722357589 499252002 49711909 832888240 424519886 145324041 322321233 632851718 51414876 1052732326 415372157 566513749 100087693 601334732 657815531 368030727 615735021 533416685 797105152 743382047 791417857 11301520 453248912 969534064 658027964 579269044 564169105 374242880 889713146 435738189 37598123 592872619 722727981 300166248 820328814 596126051 1017476176 1016879163 27454362 442978308 259427517 245693662 557138245 586381310 264957733 829908251 638485358 332234404 938711969 80838754 12341199 416533068 506950566 1035827854 913153979 87642137 215778913 796737044 651962236 911410603 480244227 760939494 409992628 394422152 542062940 965602249 11210512 483477659 357647385 817712493 614679868 349775243 544149308 216558686 650376197 999878111 682800575 617214271 277068259 567732316 126434175 507048183 701531699 90588066 408840153 1032021305 175757053 1022069359 647113392 760698770 141563594 897272080 170742862 329650928 815888068 133878060 167558023 591231019 432761205 299567259 879654071 171664907 319503031 1001913562 981249597 242521769 546968287 252523446 66464766 46285995 607872062 191499566 798440070 602110125 641027613 392878623 533383524 518455096 14824723 731165203 30179506 120999770 273472720 310311936 41143156 398383558 670476025 147185734 926705287 124905563 271123505 569818628 1007279218 729766415 524600742 451034679 155977075 687832572 1032553316 717909938 292565798 887510094 437700647 899195237 1057620732 841425372 966592876 277027623 674396993 79330708 675601695 274698056 430032871 119414467 467903261 720753225 40417497 797874722 458216508 891244688 942645376 20607232 541568352 49926533 347047027 820471959 953597141 997556660 907498652 182773169 293800875 820825568 650111377 242591325 802526474 1004097308 940513715 617388507 769558694 577461067 659964981 999451385 303313955 459824399 178247395 139296881 887000410 86654678 903046724 822332236 415992113 590972254 669593757 226821052 847413405 803143043 787183136 569404146 499959151 296867494 35063305 130647422 281469598 186646526 556761230 559799579 542705636 651264983 386685591 2652681 149295003 1038069142 280454017 216992196 121848003 1022475470 205377065 1063721530 1029970817 587747258 552622324 918698343 259609698 55964968 785097801 703349572 66896769 749890065 82784909 163836820 929338006 953633342 529054054 679886543 355930023 895983526 298315712 834000167 582398263 348466258 883651829 48260318 771320756 96227816 196616885 938370712 500843655 58025696 562126726 1048780403 817544797 829411397 392540528 376645032 794715905 776969840 841373321 197623350 456146953 240321111 895006713 396471060 349046966 248172154 734025942 589197971 6226353 356203456 581603995 438911277 576398479 405200708 37115778 119676001 408291872 164263184 239273255 766838276 316668088 770956631 636032269 778142969 1001923637 515035472 205255627 410081061 888608475 105640404 479661677 639727187 772023214 839520194 896030431 249599889 728271685 962924285 683531245 146924809 309955240 410843116 447723409 1040145314 824627819 793782939 432947768 31335450 846666999 497733189 404382247 811140186 158295847 80473074 968096193 267256135 528026559 276902350 151554991 255280540 1056437308 558328615 430539368 56557765 865928120 203769176 758482521 803343155 737249605 686638990 1065752208 831802742 861484746 655104599 1066484357 184444399 515403482 58319360 750283268 368005775 922431384 710563526 909417653 104616664 859189736 119756718 753761680 629861575 294320782 589043409 327598160 639704281 384611986 911730996 563350619 533043197 612550424 312474390 442051410 863554254 903706548 400594858 929300401 692268965 624947223 824228240 661871775 1016354124 144066573 670715543 624103488 749070953 448726598 941578988 1060459081 899027806 223730151 400119400 1069335483 262357269 908741621 863869501 789909409 701417042 41849537 930665303 257981342 133017866 884220543 473776630 543823913 83514700 189912285 804910443 136439007 1022335977 725227003 448419912 530585451 309269154 340945473 143786562 1023440263 117586013 694206908 478142496 511346787 268315525 797730688 1032273994 573352376 910620493 663910939 224249416 753687841 653154022 381888844 73049733 448116242 124682600 148970620 405620093 662867508 1060427260 1069999311 993500864 105633799 831477982 121700844 384992063 537697464 688776140 723724708 464270574 24992760 596229925 642236125 441846854 815702906 426997602 871880910 151802275 1009850744 695033996 753881340 53375643 501247936 283946664 126018278 1036220718 621817513 71463037 658814994 507449311 696663409 950530504 265426223 413819520 894159722 351506762 259869194 986817825 695811354 570538456 755075923 9950701 824478137 490295403 824113803 476850631 937193797 178859822 1031732976 31883969 215544859 796434484 611804637 1069417240 270208087 457937947 759534583 593314844 529605934 120472270 220943410 293530557 984599687 192987713 771297036 637305728 130509950 192243986 217108530 845634866 282555723 275229086 1052026488 781606706 430630026 670714226 356885233 491470442 890139560 444552266 10844332 191584268 623171070 725864870 857954704 491545037 665124573 323550643 1063901007 865738444 164730791 822036656 24789626 6358674 119548630 656715857 45673582 892825520 20006484 98001546 1008693298 1059904645 985463046 798213317 652478012 227707965 62050169 275942624 950148548 278596293 562061540 828785490 795554509 657667789 556001733 895477505 756995649 289444738 375642869 530853157 657838110 226202036 808941304 51188004 952474596 249373613 359678350 1204569 102928039 806188196 819159324 908006971 326989612 598757607 567932218 889803137 374791706 105775480 799566993 462718214 484466949 430047961 652038261 504217109 182541552 1058959585 616081272 1003417418 60404270 976287480 840669577 353314771 573826258 198009699 635543622 368050126 37527166 119143691 452226349 1025400309 102085945 878592917 122608603 563401758 433969483 749051042 204612502 760423977 105356195 807484596 821313112 151649133 312764712 743126517 707303447 963286891 451811460 780504632 758303444 691098556 941674148 857447236 17727873 181177829 766734973 331067234 1027056091 495299847 121880492 662777478 964665602 328698671 910687033 924476221 241661055 700107542 331623040 807891624 436141886 82804276 802457141 699446292 796920498 541828235 266616115 514496561 783661603 1058513325 111001228 412240917 342873397 542884081 250110355 543185697 916448407 844054895 744423814 380708886 420133072 130622396 662482650 226548584 364540608 550682618 718423713 928855416 710469997 253690647 322668600 477914791 632849608 66607168 774296597 708031283 257312592 871308574 366058131 648884720 788533385 612608759 828793492 1029666698 118542881 706252099 321484971 747553566 265929874 245644058 682681701 742293465 1009874948 488002467 384267929 824714928 167603424 855179567 388036707 26044616 161529950 1007100317 857645842 558284985 328341706 549025612 602273082 190972697 182797092 389771522 1026866690 410682746 666901286 1009624975 736495225 589708968 59278324 291091249 544981000 145714831 459346516 230235213 567329685 946317620 707868073 695824617 558057188 282128459 14755905 974919372 710643708 18656131 404344054 220458243 216518067 784340013 359050186 268569658 979905384 120114954 490212283 792666507 1025803976 245965806 680086782 608431306 139917860 669372961 618520858 212115584 160000156 324472227 121717673 802888052 193397735 860800596 861267356 199359877 382509355 942705862 137394851 835524242 939243373 1056191651 288251896 82366971 1039359678 170931024 118602509 152022004 347732539 826908957 461796435 426299314 204405884 378322862 505363235 369907542 456611593 300607342 586469717 229507133 860619122 690920201 700474511 748473378 762479359 749589961 818878583 247176120 585882787 35054820 439474804 384273849 705902705 640816059 558557101 119672165 681477114 271095809 745408551 964735686 548316091 293673339 223312903 381068680 277520948 809255066 938753913 601774792 8645655 37177041 974343814 955518432 322547751 893410329 531222977 966567040 1062358357 599091064 560238063 725513017 74978614 222729375 831026891 542538485 953024262 954952698 719715416 443962389 311614168 221636845 674283233 130994494 107913642 182456963 242418829 724537783 126362166 572490255 55162584 237338646 762793695 25391097 728715948 933800898 826917973 157658017 813605977 299161360 884634255 141085728 767586647 797602866 887531445 182346117 389019058 970172835 378498828 760105885 730440395 921954168 416339315 137280251 738624882 586615298 510450820 57536519 468838270 732990689 208454333 18213006 483344968 340021838 954500277 414948528 303145867 971987831 912895190 664476978 1016253460 23645644 353538748 1056239680 818913166 680417157 96226790 1017840295 470496735 323573343 17322342 580038843 782671276 597308664 466605907 547255288 953183900 653808497 846591876 349884642 657802002 519907841 832466281 762064059 613044377 1009243980 885636303 618286862 743506121 787812801 170826579 918511410 592569762 410738497 255521813 247802898 246118333 67413298 819714897 483343872 562069618 319963089 54461296 750207931 903144054 376716059 1041786369 963088447 424948567 658160344 837800178 59605593 1055068519 1008031971 336617495 109225103 560428241 876627602 1067511948 179101868 796499622 1024507021 276436678 39493711 350701408 895737629 306848705 508978012 720413099 635654316 536509014 948680245 771943969 621027129 934963619 403642076 187995384 255416564 1048236287 599184827 436953795 780338632 780518853 152202966 949516135 259487456 1001308019 533053598 564031526 98005562 288701121 560458543 467636180 301459010 1024699684 282661611 958461739 525354128 1016094749 282688730 1051143121 236515265 795079527 787850312 768341382 644155313 499862217 253102687 934880429 877482966 796768970 7766212 915275496 913821611 8227795 622116499 757830841 34870924 43215617 954594169 640952173 574449595 1039113517 842919485 226399744 29405960 106344045 677323054 489225080 736910620 1034457774 159968043 1023923622 946036111 579590967 202682515 284972388 272611711 605830891 644436762 514585012 833240994 767801188 272534944 441372988 320230167 927187389 179360241 269628554 662446566 882337042 1560154 70281842 1001880797 945718762 696850141 596477109 29435565 239339244 237434568 306922003 81352501 938981605 799160816 3345447 465454590 267999364 949216894 993296484 225210674 469369223 962567541 959407031 706930768 911292649 623945714 893431590 883970622 378635471 1022939566 327405572 314462190 674965134 927454234 510183628 40707218 796328483 604706434 79523742 681363627 6885856 671440507 17240558 922497612 275414416 924698914 600319046 67355509 107013065 123012734 973159341 171380312 655547142 372829149 363514502 18539288 497033212 16489051 263811091 344839061 120938592 927941382 384995751 503523708 296119469 668566190 309352515 800123397 371400772 510120636 790984399 596474869 801864836 269702347 144860362 209378169 237037448 716742486 895113024 457278508 113019726 809652406 780386788 273778280 975621240 512789919 525832893 493746223 456202378 444418242 230478087 7594397 523534375 895587319 606649111 241880383 390412260 1053634426 27717813 575605478 941246091 91270464 650557299 42359803 754296736 716809932 75336896 164336176 478465989 845285534 10522467 1066360458 825669954 287139847 211756668 659825552 355011618 484202860 534400088 896184905 254741088 735505934 887365503 452606801 722854596 101622296 82028155 263750183 49908561 477922143 993723332 468848063 646630019 939349115 601479353 463175210 134943378 659760392 972135029 251536023 919650755 1048318478 368544838 113292341 474035416 430544927 801423312 586371517 673115600 511201721 1030980717 493222373 833500687 708618348 352791887 365062824 668365476 11858180 406400167 763386542 972094707 1022642213 31529627 540133377 625226557 992201277 978679572 114250390 231635762 242979401 441771977 77401536 783699797 776069740 179490889 892706314 884199082 668703071 94450884 353487055 401413293 471713434 51627266 705360159 1068459851 261466993 743852200 1022011986 946456425 1056952889 587335598 496834467 744561112 890839933 901139311 147538347 460956093 333696300 826191428 974981437 531372430 221874284 563056551 187437384 480988703 412430965 207612695 700521558 880583237 1064456997 343432769 787945591 932693949 1055968601 704579543 204953479 288614511 947869058 593108167 627292406 283846161 825002383 53680941 215191367 998648429 522570475 22379913 253106854 482071838 986728217 341182905 746081179 740924871 903390672 904879953 163292289 943312673 560506672 353813322 235746286 468076574 166797538 287637278 878753477 464646844 28075461 969751659 939068593 1000700439 1009084207 820879951 726500292 779894236 217936432 549101641 535161106 764328919 207318837 1005227388 108313349 469370882 524653160 898975862 524801364 654497278 873344097 864686195 1017774956 145737198 842626579 391570340 351101458 107278931 339411756 866008907 881722212 528490007 734493244 593139361 339753394 633652300 728610709 387759792 110279892 490715761 566182454 115336274 595043714 843958555 947263339 202906144 693132821 238977936 783173165 549253528 217471289 525162960 789876406 45523288 254158716 595719629 271743010 555715636 684846531 1072581281 423217187 665607797 250376792 925003644 217056707 456749843 547348111 738473592 389159362 64769280 789601632 214608123 823295372 246114146 436775698 49855310 696941107 683053789 628563647 564849729 186875454 277993062 1015884539 668165494 335207527 266164864 833772410 63656928 872208954 22910007 513226371 503284315 1047772297 161958575 817727864 777982987 305619906 887274729 1034431613 1013631194 206031521 1038238824 469733111 267892311 1006849776 398137567 576304347 933657911 403254068 474403784 390687350 52108841 495261360 899825163 508594438 418273345 1006621076 344854790 41429700 357477448 956551794 501239988 158756081 1022523833 580447117 587680126 121142966 495098093 18137744 9582844 657631387 369822468 622225995 570009954 726319429 663936086 833994593 330213896 1055270374 160160027 133834313 179464736 334412414 182488555 1014218080 991590063 749480697 200292110 465564112 158993944 1031253700 202155899 249249042 273870019 451764538 1022062782 545735302 233079571 1056080435 700559095 849308792 909776523 766666572 630869853 1019079580 494237891 96766161 726061263 356318299 69502394 284962842 450688644 689369631 1052986230 205607256 807829714 140797739 364309936 569158228 971525900 371481590 989646689 899349001 623260004 547801093 951169619 346079463 783841466 964802389 212081584 678490869 815715328 952282116 542622443 746742811 664799713 538883582 914562218 311028291 142061757 429529958 6287139 935595246 426953587 315797785 517180780 924211070 786434239 576840480 172261264 427060366 701560531 551051937 6945746 373043613 185812268 865753951 680537261 72703131 32373862 442157366 197051997 99713485 1006279501 1037427909 325184481 912115459 968031384 74372747 161324417 1053861510 782813954 975283810 309616427 732188862 239749721 797251802 485586595 589589693 56132328 939127144 155407541 138549582 422872121 141131133 966778759 808916669 711041346 222522830 844339469 705432467 652739989 183399205 76143433 969314135 170876103 369531361 518722547 671134841 212656266 90474999 15519558 928419847 880415395 398868941 39889793 145589718 509383943 108897395 336760275 515406315 187216615 4763349 248919253 402520179 910551878 594484895 475300282 536676538 690929733 1060438885 1013125454 776439909 698587875 912405935 793164949 190816575 56855460 14253654 948630629 200933988 1027668721 889060092 638578521 1044380975 630553951 1035874097 833020711 363305556 158919389 764042538 64108664 70833064 453683644 351334116 696699724 16342005 497743173 885931313 720490290 784210207 765334757 948515717 250174512 958399414 820109866 436926130 899765897 962292310 833082311 133481930 621037339 140926085 795725272 750218079 247566341 41039536 349804178 225561696 311206904 927137335 844648396 436042036 930593956 215585605 73915312 680923661 500163495 150959208 311036783 482208475 655549309 692125614 592976214 348323790 590670803 161817266 623691451 339269026 130719894 46653261 150246527 812295480 1027258250 704162173 338269235 272874371 466572567 652761342 366591454 620862543 557492034 553056533 604006119 554881114 714859073 928145003 763229402 759163582 701680199 166483490 127122479 682962833 237084083 505972542 708034111 280632127 820906684 971091481 1006828713 995705998 252814351 663493003 175995989 353588773 881708210 812186995 922991293 565740857 27916905 495556037 864387596 786610291 802776990 828698058 89723519 610792908 781769943 307944491 542620110 547754083 590263775 903693426 996129706 564341934 706741006 78456810 906839510 73516742 749008100 416570634 731023631 783306056 635182332 1044322822 210025924 551263973 676139164 613921421 668735438 519633797 191538792 432617630 475856030 1019605043 514184498 2695122 443177535 573162266 565784329 575618301 1004004691 997816528 110182642 974453130 472117490 579672876 291178718 723455446 65540215 954265997 69877062 393779766 595063178 919119686 455832048 202671036 881224003 93488951 760168987 410863701 602729758 975588065 296355535 236618578 790137002 53950240 871106261 395071563 835554266 234890276 431426100 481817566 275092591 513975971 185792840 362125656 972521447 57912605 35937829 243552304 2128728 754076834 239880819 306248464 201174629 742388184 713534089 869372591 771302398 163585898 612711354 968542524 927965920 248738560 541158984 491229586 573013574 875274976 14640897 842661766 775363811 67279782 902581996 362937374 799451658 410265613 511973247 196441157 1045925199 394551280 191907717 884168587 38177096 105483468 975496762 227156649 572433277 685467063 473846042 28034163 285107352 690549563 334167302 1057093046 562954783 1000442265 858975136 568736737 709083083 326735259 677438234 965510351 424752208 384888978 431849664 852247227 111918465 57853178 77094588 121493441 147613898 523218083 314898086 933041664 530053233 342726545 875111549 21603799 547459107 339939211 1029679615 956327524 935442312 91247439 630518005 970898841 1006264146 907095104 780433228 756616315 423983279 424071332 554641036 71438133 720783253 1042861173 609200931 908710779 831839408 351843062 327605102 315856671 983683066 154075153 993671197 847557541 829490779 429682793 552505845 964169358 773758996 575583694 23442012 23252073 883436652 885965424 35792891 208356138 613213600 88662852 115187271 294029808 158385813 706520403 323180423 333413842 120775935 498118637 24647665 491316955 125921756 319397299 242879766 919620672 546800506 635335262 608926702 890443448 687897630 798307644 830281394 675959429 909314430 143500634 520162834 173039991 70001893 680943098 730238713 795580516 488114548 238084360 232059451 456137318 277461378 832744302 600461619 837516420 223586000 625162369 104817314 1020921669 247542720 100057360 167836808 101719312 690333472 644742805 31115448 368016231 113563264 799797885 606667486 492760874 542781881 802668969 78871613 562554534 1038039133 657526748 900544720 778755184 700277087 171945834 269592751 361618602 425360641 620820440 666455766 745926147 153158441 756989560 1062744863 1030031959 77913309 34095340 352899631 306000805 561034197 252393245 734806566 126822310 792750867 628118308 691567042 448591558 909319872 458015310 726722380 473697381 503281418 529940804 379311231 859959969 121988121 159431664 679285631 835408977 467634890 883453108 1051743377 976075082 1000468513 134893969 101564904 313180731 742393337 541269173 408329122 526507842 375955878 849579199 122828715 442435067 870351853 303695628 53084563 741915062 649798232 380443667 320216550 276522403 825843154 985388935 919541540 403607794 262979983 266387608 222664650 544899732 16332746 201832297 371000055 864308446 646858721 1041227222 182555401 665774889 1055066267 805520151 391896377 121939616 464504851 28424490 797920797 581937126 928899854 887589560 795268136 928688992 1062998306 353381561 529065401 500101262 938230704 1048549467 723717528 872537242 92944532 914440796 470188856 635628683 683645493 806575038 430931159 619136576 758568079 30143421 105128625 1061307424 640202220 241007110 815379095 528070022 628260861 571181190 598570590 1030554491 920190040 874999823 560060864 308857042 621890885 401413114 776288294 332724805 635391426 543241638 604792302 56115477 517499210 5184498 1069080574 47977783 961072310 1003510530 31554773 1041939176 257603856 363103457 854585963 507500964 106549300 312776505 1028068050 509792098 129234271 55712470 430582883 463676837 320501510 24366564 803858316 175062245 628038984 101460782 494520824 274612939 279744479 162555413 453029316 406253474 391461609 824923366 177334867 976830473 772896726 144171464 321239263 485588831 411618654 1042607024 139812132 111623339 689406876 386506080 1050613715 728948198 17130702 20808770 798070882 18535033 973304601 175439753 838970833 131357308 476894518 842286348 946618563 282380340 202104711 588022419 737314838 917970800 1029941420 622521002 420249222 555300752 808518404 231088923 87573873 880937454 290765297 896219874 7208157 130327276 194724575 336241329 38103176 225435489 295773149 520116841 671895086 360331057 981254838 332306868 588217286 195142524 872435208 653854903 48091072 48234263 890385507 371783627 914787483 874320741 384276504 344506473 491660435 627255701 594698276 359256079 489301833 844419047 665503901 832995654 352297378 1015334676 596778681 324672793 245660313 941987599 425917459 639802233 300179850 295930413 205582211 900801319 601214796 302688521 683726 1062626658 554494730 847381674 787922033 561868391 176816476 212884834 755081873 648652054 755850930 247887116 737657467 715063772 125106278 94108220 517750626 442196571 419630887 420241238 921727279 197303210 262288966 770032210 851522452 548272321 460020322 470018659 756185390 615437283 1057288497 540064520 940424349 558374493 607825559 906620651 809367131 41695866 734074088 821957270 984822470 950075402 680464826 886357490 548476143 851591324 798125539 667334750 867615917 426150363 712503442 864410390 807996518 292891889 141409765 967909918 578754291 311613649 37371897 629051205 111335520 1022871326 289344401 1062382562 324529841 447700870 565036998 1045771860 435213527 445907892 1038052259 994926956 155483759 701021742 82133006 194496161 877764791 873890545 1001008404 920086135 831899115 662254304 589220386 508165683 833574471 853699274 780456368 812762100 571892365 610633594 278433788 130899044 356388012 184047055 136739997 360638272 1005514144 833260931 509355376 1059293193 354763410 139468250 405177557 34422241 922529247 577135881 357891262 574623031 693557884 642257809 503148541 120287418 1005479937 989950920 71347834 19568617 313785572 342532608 1968554 156772936 834566470 469315116 543146206 818734230 135895953 889228157 813374426 339361034 531587449 910777868 401283226 511481105 957954766 920806870 332812985 231993372 508108234 1019453911 318547456 630376242 971778568 764131937 324837535 205721989 154513056 505939531 748506802 616121408 70122011 975312782 584608336 1490386 62149968 474499375 488100873 1037554782 683145649 389263735 755943552 723182879 619143351 624760767 267833683 585543255 31755453 899808779 1029798846 660164076 683294603 170586454 177842929 120655996 672881488 732398184 617212672 637557297 619060331 981434141 513142805 167010490 429041301 1016743268 974874108 374105608 993027097 830230806 469138143 524612290 742384450 115723171 262150499 917817360 522911005 839034841 717753663 378510240 392293206 363410683 1023177153 719422786 971993770 609168479 1001130099 84721720 725849654 627056248 733732307 582006825 614992182 867828619 316333737 967552559 531726124 24507357 511260674 491850448 594584649 92820846 737444074 445211068 494019866 306730986 134346721 162990875 992483760 455356367 830425215 187264135 151324348 287045696 323892669 823923108 22837877 780503489 1041612970 84982297 741242392 182360589 810104842 584582109 149454561 353234928 934040317 400835647 653870523 384866935 796734161 877205213 414089385 820716624 978210884 156152218 1062441870 596827551 688510005 243700907 170371574 1031933173 899804698 912121358 783256533 643958764 1002666236 697113387 63927714 84454145 727496095 365380593 953597440 11216698 733533417 106271539 161809752 775864718 40139126 257390059 107716147 909408792 762243849 677194157 151084668 346609650 51746107 163430718 348680029 971144472 276974664 786695047 595559201 438151427 55405215 244130207 370042920 776954025 843071220 797060578 1004857751 458009902 91666512 429704024 992673747 97968871 138271251 962055997 404652061 1051933696 860767577 230372897 658017537 1008403002 530995808 1068539555 760900701 786790146 679528288 730487006 45199687 684263537 678535801 885209610 840845254 581321688 980606471 584885632 1055124475 554848901 785822126 428823383 754707252 25339074 447405156 307559816 302112126 602386228 746691278 960577536 311160351 81527838 184652305 356213331 720139870 1031936324 986129071 480607304 423144532 272405335 742119975 169781614 204737582 507425766 314458981 189743286 400470528 492085045 742037041 489296050 599563589 630317360 600073287 48869590 245294620 862836866 841994237 265535060 775625954 382485172 849013134 1040350308 140655735 558849731 930951513 320647599 629404363 357538891 708097590 32754404 729375016 971436202 998633712 698698333 85017415 846333758 334618410 560802599 426531421 414876153 70872944 529012134 381801733 748382590 537872906 598743980 865783752 555093417 62059494 955492090 89934247 284814285 667892279 624345055 632333507 610243545 757543487 895155582 173894999 531252934 642102604 863505611 225841623 276823029 204967159 689116301 946955450 836868756 804846941 534235820 1003609109 17737901 589733678 167106812 760190538 35128496 322473410 72697815 8014214 1056129135 821324803 516623579 921785943 556357662 189129092 828346458 291202296 887791350 401323939 566645457 121525532 503225723 24627778 707360570 73070148 828129924 99563256 314071987 728602355 616655341 984740767 891392031 57567193 253590190 762123806 783723076 742634895 896138861 165551776 159154142 349815265 607219951 348514662 964405266 443642414 795838990 330142879 265266378 155308404 86219309 659465766 918253890 310883536 647672906 457353691 762924720 797856180 140886585 393856506 543208933 238814728 698981249 151139607 476027342 2951845 510607484 323671906 485826083 720828816 424410664 770468492 423656718 370461395 706088595 507538874 885005206 679878593 1025138402 141610490 556511053 516907987 776700206 458846008 656678048 540583586 786634609 757004426 241680668 322493353 522419936 118545900 945465976 370925701 798203518 198279186 132733620 1008976846 998037645 638921982 450400475 893347635 877221021 58174926 475406821 744680739 768337506 612341929 463947879 168509827 553692964 351977502 261700790 255116043 190530027 277515334 302294819 561993647 1026792052 592773677 134717024 928100238 860616800 82835063 852019616 213819472 1000269294 737197233 490320217 257607835 970444248 546087352 608314767 884832125 667268402 566970568 828105840 897310441 928514636 514850000 624300491 707797238 701650034 862591587 854559345 1023132771 104911968 127754695 40453413 311240144 945926350 351747118 1005206725 653196665 914207169 450202205 143741144 730832830 209239880 688828653 61823034 413817565 1035315172 180542987 273505688 265746766 215116871 976482681 600456832 128743513 39521606 192054677 774717222 467415087 934395496 971531792 368032163 828801450 983423332 921369820 78146198 924973576 904235536 383692798 37587174 952654477 585941138 355135926 868633979 221725300 348826434 732282740 415068647 57275389 273727422 461636823 334529716 467064469 57497133 1000221794 988513304 628293148 372056331 30805351 608368663 170377026 291558142 750733870 817173993 777196652 263691261 831930800 446981088 921936478 140400892 412437002 169087151 404723301 722290870 660274653 531167283 761833341 81543474 1006864134 20436627 790792528 332520182 694506408 561096836 949746757 454129062 923569349 144667854 469428365 239149776 611772734 894702250 476529404 943026185 507434084 590215197 733833102 1067612433 134198790 552075454 884125568 639351523 299265683 620222971 415329895 260273921 413825705 555865193 523660312 957232833 11420817 330373558 978624921 64241379 154883264 371454348 367190855 565859796 626647012 863088229 25804847 341103369 63063358 952022076 927278369 514328176 70776922 105442400 1061461152 97959319 605853676 822572096 21768364 107872532 275381515 693206600 750910418 1069106478 626374537 101893474 445977679 999996767 175138786 834790912 820214334 301368104 246209680 711140864 398004338 249138236 250965863 303349230 362275438 134393882 286288371 702833884 279248855 529194930 375871506 1062188526 702892409 292353788 396147024 236657243 793239752 1019197599 213162181 577826336 247999891 424989485 438077345 1007161171 363086930 273783055 782958126 182171562 358427721 964082764 435626976 11786140 854918994 438604038 629700978 408951984 78237948 472781836 488827352 165635575 253206505 349670977 1023584702 137462550 584348780 736275514 238226425 334648430 1056664452 824589323 685490704 868827166 228956226 403217141 684628283 450240484 512988853 249446829 334136818 332606109 764981487 608873895 83495614 651644418 328452842 141757380 228600908 760211933 866100504 407290191 377306942 742284052 980653371 814501609 853559536 359359909 667045022 512558655 17347485 925405685 98760025 780746147 745152506 575765109 221029889 739687277 546915203 911323535 788385411 828637386 433697042 665354814 836698320 776156084 896485579 1070948122 600434744 19661343 927356549 1048909104 528358520 1043020588 623246512 509399379 779915312 438453972 141157963 651256373 696110949 207332298 125519669 915931456 369430218 983739075 750139756 647631950 809039779 945563938 32523194 113543789 8670136 947596142 305615893 762334539 426738603 752806279 45222756 408464387 13025883 177661215 79623159 524537002 462259281 198549531 448875983 141789213 175271106 42162800 388468759 303616434 792447211 183440616 532443773 985217338 169906409 794276069 859947626 251194399 1016197565 466981727 568561820 887429840 991432398 958424687 877405487 626052446 440172435 601236072 320267224 722167592 741258734 845234076 604438350 887632904 63375604 128611031 810744137 55755736 23205349 949607550 689187181 439399636 363050966 982167792 889466713 485638160 267194970 28605120 106655444 454642306 1068708344 564482633 234944566 596211183 846961317 792844592 133469631 316267993 972133310 627760933 56566146 628776612 445892120 896810970 819982302 789363120 465523019 980946387 680369522 995876238 275084213 456689734 875841907 1057060351 362631775 512676066 638319214 489823706 665292470 190767436 400090822 532167396 421425428 264900695 433300213 952843646 200982007 797551458 745850893 261695811 541368686 255114548 520563814 272209533 1068892454 424167567 58442483 708776852 431976904 538382975 179036349 409822117 731061485 248374134 536117671 108728224 230088583 423394777 32988409 531556010 976290091 836316044 285454903 755243629 940501970 552704193 191092634 535155255 1044066082 449880375 943600966 133531578 209857421 610033819 972829391 188630227 125710812 456937247 188894674 449961590 156125264 133157663 145646181 271127101 808641085 166550830 828838795 459215952 878170705 550982230 47048983 700697406 633685641 713044414 468950376 708858391 653690259 269503995 37919404 135560394 214599764 1066801435 1033287366 548625770 668504566 619504130 124612390 741050166 982081691 993257523 857483292 787277150 118183521 886575466 524566645 988167013 855068194 912281554 1009560812 545438852 862115993 110008486 416091068 525201335 919218946 823776493 782503446 304607085 700242170 479193190 538425271 379492533 747149539 1063732398 116810447 1052825371 414995707 166642166 153615241 192489881 604967553 335754492 1063120640 180720732 385182220 950469808 792310041 792123723 12818818 376261443 870358946 538531787 894831182 559120054 286212802 613398967 253406209 147983209 131318577 858664316 641213198 126422204 400771012 94143823 923768796 22975017 218631624 656344171 251524121 140093584 239853813 504563983 249942089 676060887 747117567 147271666 782901017 838970825 159112360 1012351395 49038683 304741644 802560575 718004093 449821335 516181421 225828093 761518146 581577218 59778637 36617421 14340110 575624978 18378167 299849362 926500142 431160078 225033206 454554002 11574772 9993459 438215713 1056936865 681181010 247098565 313033472 982067165 921191204 765076768 257367176 226440131 295585777 181594924 994590036 366600022 120134144 979478131 234371276 736806527 714932125 548970803 580039253 1012656773 416605471 1019840486 810426662 812827147 492822241 439582046 1050738591 1027773932 273559592 845834598 267175212 920940912 615366125 1021248876 1026524312 501057021 1025536279 638744805 359629446 887556927 881778806 832583322 170735867 157227738 618105338 328435751 1010468749 556996471 395538642 45037677 329149906 140222440 924858346 750983683 332276248 556538134 858713898 1016998738 578864817 422233068 832031295 369901199 974821556 331216795 591685412 105217012 696569832 257298374 626376177 852081702 328489756 12156860 339866712 85152184 421499252 725453944 746346162 742274094 508072805 621893237 460928 181602881 654897963 623121691 115417748 567563008 681009901 1021188936 170367255 960417267 807148633 526814018 753342843 771698518 179732980 4875226 718726865 716495928 749476352 72913269 140859515 700023457 585590413 254220295 1029645784 951754737 287919889 489220469 185166490 835439891 994821199 367917401 126379403 246200833 594791378 322192026 910523008 944394934 849872602 479430309 289801523 979836836 517293806 548160458 939759599 94228858 528799713 933290608 821098476 589494821 578478375 142142740 607259162 503302116 313281822 418133849 315407852 853269458 583675898 800331733 62026368 123560250 969989354 617539459 589540537 224504838 1055534965 979719886 330183833 1002783770 973668772 198847923 318855920 179696377 741318955 85264773 121473986 402617298 598216706 177912553 968301432 225362609 692315013 200254105 974862423 12169418 45690222 157889835 697536500 793667608 766020060 711678257 194488649 493037185 12424863 509580806 978247051 295525156 886830934 1012323973 734463583 420049629 985467225 448266964 191047352 641582993 442565219 85366116 151352974 1006404831 21168982 995883866 719639067 929148828 748899372 340392682 168701976 668874546 421697014 195789129 1013512995 693811070 22349708 53224322 155161353 600599422 722219854 355937152 656083389 180447313 377767978 929810924 185570061 709869588 892304808 60470517 901763750 362577499 1006632385 105699064 64591150 14876389 120941503 1072655939 1030566017 687401919 738644629 1056591828 16680757 863419927 1061131196 203306698 488387172 727545668 203678569 89664504 929617489 760393272 330661680 744717820 578561450 38241156 27157663 584517176 1050253182 773495592 186999203 633399562 498625861 843012530 752298375 753548720 812032793 917982601 49252636 260236389 977579507 136734324 240296121 393626965 333327550 800060548 1067399612 932698800 453513582 47643351 371030083 312097869 548557859 718885068 602656233 44232623 521216194 708509688 82387497 667420370 16595024 909728010 649359147 140965561 472109869 546078306 1043017706 545400188 888031570 1046416119 148890537 448717964 89422598 300181288 727509490 360439789 1020039137 324806423 32518841 296673303 1064319920 602665006 679229225 698041128 2215760 478775099 1048579287 484195345 472359245 925303778 630638822 167677387 604534570 247330971 403457905 599674270 624141272 155570636 589287934 771847953 647297982 740007062 551223858 155051008 238558663 159044183 818972894 133858490 895130438 378885786 915405154 1036400652 579571889 892787762 273655869 685704480 601380410 737026528 635388288 660172763 104259563 538599073 588203099 482878019 683508292 37791135 734060555 799898586 653797087 875049076 754766260 623279531 54919187 906462084 197867542 420511992 72060634 792058792 674573557 60166787 585808307 1006973010 68247245 505929281 63624855 633851484 44537783 499426567 246939459 642112401 834635667 616830581 167942520 545968659 770509447 570218387 678958459 215129342 442115102 1048889329 854976121 131743624 819790847 864405513 1023533014 655946911 664980147 141334236 445112828 504806279 434448905 60317457 497615566 294726980 802327478 425812285 906119698 686445241 390996396 570300600 306795751 121351188 361488903 562038537 1059345728 312836041 1054130961 265106688 306028174 997130023 240451579 797959627 179649468 49579301 803380262 36050599 1042257894 616510351 855374529 948315914 492062165 963579449 680469868 127703829 932595945 819499872 48762777 739624056 129814277 665381668 771893104 707742021 815897267 432780756 577575786 196072194 64713031 798496554 74976375 337542471 1025552905 401316535 764270765 211086695 317652682 829572281 771522353 175025965 407785603 124370038 234534595 871689228 408216631 632476819 376672652 524866047 1048248822 890890530 952903979 16942556 879174167 679691827 855056794 670209439 968723793 947690000 573539284 245970986 738818891 141917372 64399637 433067262 83756523 484145379 99562413 715119314 994432795 168377736 196725499 517762483 78634273 29661704 533763628 145256616 703859962 787643028 484501190 482979798 297319385 249744105 519290293 254422822 560426048 912238669 819336356 169933349 766991179 590105337 71685856 499974704 413928448 768740317 179617625 139186501 487137093 831824454 457452278 984641720 1061218332 552788258 52828914 567907440 514060809 524265388 683028433 163493249 504546906 909607886 661693205 648224472 1044503732 364535990 453174031 39545923 364185436 513233997 641074178 403274911 590853161 805080373 957993556 593430145 980945593 130669512 364875574 193329141 635987136 393991523 211999532 165121265 1547550 447282381 269470145 459541101 215018185 147598250 16169227 130094825 289016966 805152750 967224745 152858844 283149689 876128022 741746882 241686320 840053577 627279170 608017371 504738227 61697534 73336751 582151035 967644228 254487808 84526715 660128480 357316193 467805143 284819192 1023991674 520316904 472684431 373369717 435003863 331393621 128975933 554957230 588704341 684534521 814807520 211197789 409685478 606875178 997280729 577945547 1073361830 531301301 577844656 974229346 447173172 840455957 382515325 516110767 932611904 433930974 455057727 383698987 322353605 880496743 898865500 486900825 145532844 914895020 271493409 708847769 529408004 1001872782 140174186 827937986 471880002 325144241 51996395 412870939 421994703 500336149 647114612 300892851 969528517 226081418 841499419 883076974 1041712683 241833172 834615286 349375594 285288666 130370428 720781986 971186408 30919891 98038691 71303441 561683476 890917289 216219090 188320206 432707501 486308213 155374070 276170624 61600671 895499348 848436506 243130243 239500518 1060529437 506285036 788191894 624522731 186006108 1007725523 84916220 16568085 56561140 743414164 295486279 761423089 300078832 293315812 183951958 353242923 28545760 549493246 531662482 189394503 17403731 275605490 925438942 546953936 357290340 311531648 111007603 872772958 815273247 68476974 942751427 623953195 71421308 30832486 291444065 1034006319 29985169 169518462 526406052 920353940 667751118 216900698 365748214 432465023 791152193 626680018 299758602 668836364 65506402 895701761 133997076 166834034 407908215 304147160 277466281 280872018 761847076 341001226 457369146 826353164 165151674 929830353 844214965 397816577 692952986 2154843 63277331 653739543 843975754 5963102 775280976 589256883 276375807 880117111 264733501 738166178 843800523 482919748 715135986 225207053 312152500 678938693 103390740 32733936 806078850 449754609 908637206 168187259 522206401 857622791 620712129 237384620 948661285 785670930 999288901 1022249024 26524802 1008288834 681421606 57160491 61825609 899363713 189049031 73262919 317745339 229270430 774569756 325295157 488012102 305353120 405659573 402710670 828110757 241206068 772964259 130226017 537266390 240162979 867804913 67850418 363099827 738933823 250670991 247472189 584319547 746625527 690001420 971704617 163909985 227080897 1020517392 1028415298 859355319 928600813 86553386 859213680 1008253629 403489482 982252254 550795751 817085805 767009186 540115251 567916361 821745200 378116354 655880908 377077050 175797844 945677760 568583273 314631601 618657736 726060179 313191619 834410953 29284144 502785328 750418023 141324489 150454093 41447453 663709876 243162760 37501843 864209861 992879825 845355439 934016679 444387988 630541731 368223248 23943036 778119029 309301204 267476649 897242441 111250479 535692389 598707838 199338834 120739034 833300132 682035008 291704768 858885399 183228965 218594080 254088332 527091129 362728833 624049059 1065329341 188464900 265011452 344274660 30829071 155772004 510065631 315728012 930547196 431398176 639235772 175019870 947802847 752929822 360789166 1016379159 257396271 563772574 426042252 1020374153 611469118 816686009 609120224 1072427893 603938096 926884218 390389176 59304260 116453480 805088986 253493514 523836062 887773346 913374910 1018311468 392185021 305082049 202758154 981309380 1069359679 811386103 525496059 720923814 1001552686 996353741 294128339 952367509 909659616 532974879 487959002 906747519 973155331 236933569 223281049 993391131 519033370 375529540 444629121 137096177 379483992 786355234 66009550 290121428 27411592 1049599098 149752001 14586464 587364047 617808967 245479900 826232664 302779744 752963596 641520341 296284120 336585185 263317646 1063795766 80343974 174571472 722029135 80323846 37431957 896644263 203867420 980701474 717796244 379503165 919314711 163558232 45661149 855964422 497605335 770482563 867145344 559209546 1020864692 229963034 468628959 631264586 339896281 181806687 986028775 671634757 865340325 517171748 640947761 413455272 330387843 864899435 281105531 860817407 865113376 58449580 544802471 454247604 499450359 868883237 629359635 549381578 79760891 582021172 273446230 711013864 339292296 424386959 984011919 376257170 546560809 359490984 864462623 393342788 680115502 781357095 817575536 660980830 300936639 746867732 216787736 739533680 584821804 420106850 649321841 767397218 1072022230 600127209 450405345 384204428 833916775 967652700 783206574 371474913 548708963 358791026 571160610 175365866 825798113 42680141 1047498062 366503284 59862741 216186108 998582549 279086204 469405525 990034310 1007102589 609527944 222318957 1025331276 160473381 620561241 805185879 770167803 570741280 8598345 6574173 984351830 978660666 89423400 697106771 236083028 348836247 4181224 257049682 320345501 233908864 202123884 365567684 358348649 474991175 861555097 1064327146 154239271 528227043 540987464 1035534267 759056258 125955433 1005510936 205109630 1003073688 941226803 1058022820 534673531 1048439321 997114580 299164359 506466154 212967893 285834974 1008985484 956347177 968426967 676620023 14855162 88314867 809033375 982560380 889106013 797585565 40358364 559441249 101141008 827070274 436288964 837036640 365615815 746237111 1045327301 411088309 289452639 657277268 731950260 43153786 403236607 366563169 614529649 97297705 2464465 850226139 287711363 819896949 292492317 573192604 263784430 696273844 529438226 204257992 878235688 226821083 900513561 643903741 1016872202 528968741 319702149 741595182 602281294 701201832 670410076 223757581 269826978 607935967 498563391 453219503 272469043 672549355 1000697239 1042077657 362961969 685329728 459294978 800865630 463050378 954826428 848402702 975329331 341975689 1048764894 962060617 460965138 910601494 919898191 273410868 307604791 1028707512 1071172191 129473954 102428970 944447959 74133497 1004353295 904576426 674270703 943191775 989412850 601852146 12125403 714503797 470723755 264638540 5674104 24572894 742562324 427876182 173183154 545744118 541103224 959136068 199978409 160791864 920222582 751492081 363887416 222434735 878100171 712004802 293210396 247163414 727172100 568500296 605660064 1006795777 1034765803 251573130 727005452 754191918 700867355 309142331 612939466 576059452 960472566 976430784 520944457 716588404 915181884 725505320 1059107329 229366634 956323107 95713083 843042448 672172121 627987351 179653457 85770238 515379781 447983308 59655022 581208571 264835422 697115148 257871089 50629376 82727537 587745441 538781586 137879729 217406165 299559852 269943188 502752187 987505125 647763211 6866250 763920562 652685776 1019243542 248155234 15712886 104401224 639842809 637788887 757152649 770725080 67342918 834002675 187010091 851305978 916840071 147871786 606370885 875280514 973863865 1004485798 861817406 643685195 672107251 802706647 611351149 609112595 369867768 883310316 865027617 758713225 551753298 456337043 389950346 949040268 866137107 1000525466 564570338 820119045 315132335 905561721 220476988 120108676 336306661 193412036 313161441 678469638 694755571 760121724 586987390 507562181 691864520 232627491 1047495311 454366111 464792556 613584666 499146700 842845031 929672552 102191321 919132887 263927221 848735603 182994509 813163860 251737657 480238051 566486999 916086399 447408712 984699990 214216403 777820278 549911122 335711226 988611889 24153918 791060733 912359693 620951758 378507086 539309183 787905156 282293236 82785203 1013516995 7082194 262361912 13687157 444179808 358632922 560835871 776616751 912085207 608763411 653092976 932427565 776743295 687912273 972488591 996814619 166585506 762443949 543822974 454484443 807489949 282556381 717944832 976492073 314601302 659229174 776541724 973777222 1051901523 388152448 197083550 711466905 267936621 710776132 767099043 765208538 366220938 559528465 302541272 727499040 598311396 317361443 602698624 663246188 597171900 946844547 1071280710 387028563 627220005 842699089 18674847 192393527 66379055 432709337 440861271 546321692 523765086 224180071 405579765 334586569 579289038 649714647 105622866 960465689 903065437 818733885 429189169 188905437 737508282 1018325032 230407805 919684793 485322037 275120429 85227683 454160645 306491302 534572571 568043705 1073191404 135769083 1032974083 820718941 724124484 578096831 906771966 573391506 131923075 187045485 805230879 390276944 7077130 643481437 815302291 846283448 315810589 1051100736 604047705 395192238 11886947 600249339 463737121 299933213 618384158 250196038 463821388 494611629 928210749 556597577 683747268 447530656 283255619 237957980 320971281 818993168 434954793 1037119451 325688179 413665651 1060266175 301958952 184994765 1027520497 1049465239 246068005 670390581 722355665 13488153 88144973 61599673 584295422 897051743 726825559 521470079 168945227 70353890 871243184 184531937 1489863 997078831 320028787 963840436 486341886 562702498 993791538 1065949852 499347439 196251927 1033892061 595576190 248442437 764154582 167520205 542685307 225818075 786301303 649057309 35552226 182848788 385532843 651694037 658378809 765957977 340122042 1009231487 107959654 1038950389 707725286 994860233 26647568 830799858 1015771830 536859570 247131488 933894680 807575893 75069815 39543785 305486397 781161439 912761306 574616250 616259583 804337757 322586313 498731067 552046785 783231606 233997486 502833358 228694261 124392519 880022036 234764810 113760092 926349230 847027385 585073244 422148238 210962410 1056778156 784613143 246559321 449126318 366491192 386493913 796597046 501340659 605510465 221847198 1027903277 277186396 966909546 7810285 495130164 1027847517 293840971 951462319 477643620 206006261 462507012 460117088 234789309 8981226 738975304 540588719 748967364 165209300 567562110 1050237592 694966378 486537998 11052679 670500371 268102281 828658728 411157345 646610901 506177086 984960328 809220650 58797003 612985081 120816606 76438289 932393242 296622296 483631992 155283131 969106433 499359010 387914331 859143503 193920107 1041203021 609621701 530170193 257552093 493619125 947598094 112360370 272603328 30491760 414096445 368055688 476136428 535689778 1482366 772823584 961046248 818283446 548221857 935355147 856057639 1002345741 656884127 126654381 732401907 4196610 874731540 19706432 297208862 11758738 450690626 232211601 977664669 26468378 756187237 816507739 972990668 509301883 901488876 92617919 16136780 889452403 32368060 1205400 649865039 1072346411 1025932342 222843794 726246544 269937295 925002752 818714259 1065812698 973608242 388389722 582201898 1036400278 629494647 486737953 657501609 174025137 635839343 588163449 590358280 549155371 897704300 608808962 465075361 236555783 24529485 372627956 213437969 166585905 344279608 497514849 590670910 688622480 248349964 183086428 872901045 203512723 516658089 206174632 335708348 87936977 299557278 778993378 640069838 713606586 338988218 610510967 75331543 11821426 14057061 310846150 233206979 254443284 1066814447 332654300 104547562 74955509 214361443 19606295 134828610 284757431 657178133 905967138 390219181 300769359 427408127 606661611 252035912 442997824 118238194 942951172 229428402 371861043 916565308 194426396 742961661 922430473 580199209 384847324 403092450 1037017857 422451535 120062271 347193162 161524125 322308353 361961454 25295381 742525017 732729202 691413599 861021617 21848112 254767688 292691508 184642302 45732607 393851217 732373800 318894349 762329399 235043494 357764197 990232567 7833195 889719844 517008199 551749234 833794547 520335072 289699503 247145463 69716721 486174209 446955683 805982251 926268045 289921163 463947322 156908773 88635942 180445279 723984394 412427256 1052759523 106063658 764797004 210416050 298628981 378198794 345046151 27392175 870754767 720066574 827647908 145099072 414408362 331121863 1033595770 337497756 396323470 954615418 731026787 1012133945 358455902 462865924 823487399 597781461 851667584 485667022 232459703 163573091 500467144 166123273 779957962 682280997 1009328929 59832133 795995496 518574453 845185656 490210713 259689927 253729150 132474554 426634714 904955660 152505260 886119850 699672395 77223771 133177457 1051859527 221404740 952989305 804317398 881252108 1047545828 693559103 342285224 256838984 162146455 341601020 563260136 282024010 418345490 870228654 1018808645 669856052 877619051 991600871 1058709668 477952788 776310550 759716920 977896460 622680516 257438892 460872680 708424230 25696927 1067023328 377234877 951534414 118391281 252939846 38020299 101353524 60065473 483077739 683100554 12057619 464753873 980613869 501525661 310179840 384153262 587113969 986808203 171568937 38725760 216058580 914579691 106690551 352392677 74206487 654274421 761914109 341681191 962797013 1015812404 395828198 67353888 792322314 114151557 466807298 199633555 467865210 843396510 420690645 28496272 469773531 11835214 1057693973 451278679 880765841 268979191 667763420 828257730 807829595 633086080 24894828 197863085 1028230234 649629705 852789864 821618952 574119712 309249518 957992507 923614038 356493039 470556121 158299114 1055618145 271913823 568666197 936018545 666905770 225397587 473917307 796929199 924994304 781619690 16815278 1040308656 65997442 495963747 22724018 402487503 864644139 820337849 665284984 314784859 82036714 1002781627 388529125 583622191 461424170 1064139558 823654114 759652244 957552013 720251888 121415833 260061835 685709675 963157375 862572421 1002371359 259593428 143328265 267913534 1048354449 386638887 520494103 979470997 673568793 562812087 142606395 110419330 377972827 337097578 292581940 692212052 452975787 464482757 226951568 816250326 884806404 921762458 882379128 319088628 600878169 102670056 578539337 376775932 1046583957 637914351 816368777 65735233 142974998 309738267 349391755 269335801 394136464 173847632 521176956 97168253 201107389 1054933630 244008232 247624325 515612006 608974729 18199609 716972788 780445299 849700445 833889276 835811352 400597972 408031279 130866506 488682055 343013566 125720541 343062110 1051883056 524073328 321126651 638434124 48244796 32526489 490822327 774709854 157020968 544839833 1059281172 556943310 109798274 226903204 6943235 426405139 461107485 313357060 434579605 715502287 504653586 234779269 871741324 361027018 829836058 220559738 15183991 898276764 408513868 244363816 181680960 475158166 459764294 1010603259 913176946 469698571 450302925 300964610 284313249 954285731 91808678 783017097 544829669 233394320 57113352 291353004 305317827 708455886 433722136 958572960 326963843 852214942 829599217 258862478 383575936 471059175 699909988 323958814 297896474 300068243 630927137 635008375 197483798 443555088 344155256 862746454 205585980 698220932 1033547867 1068071297 226681620 338380300 708967503 143879444 426560112 457221356 882769936 605483401 812451623 568425312 645670376 665611176 143681541 184078195 210969772 63589139 961513379 50032394 481820225 92049130 423584190 686564714 440407732 26763253 838724554 908558694 192205460 861240190 953263998 205002954 475354181 123749751 647907924 767330366 30558981 908125821 289849650 385299800 839376683 881052984 402686043 106589143 658212197 822975808 973576992 469751463 844612373 42964902 195226961 1028035158 373540475 964154390 623717730 521472770 798989203 800064056 18258781 1055942787 872357859 914020274 328363372 1000555893 636240899 110200657 987009664 984349504 323997967 447885484 758516670 381017619 136090686 777431354 1044972068 556309866 743360053 916626556 782767232 810784668 693439590 419472289 386782985 1006293677 794809215 671030727 600500212 983873288 437290992 664542949 748584260 436620522 876319759 49109640 773318554 1017312861 485786119 763097701 89409856 422009953 550381466 944636538 259046671 405551718 54453796 61255171 726695476 743593806 590996188 829865778 958094163 794309709 258049539 224935757 300216219 535410666 898384658 744297146 417806549 727079016 769449342 704404068 393224577 684127856 678516244 325321398 1071791129 1033379844 194737678 1053847397 972543684 972469918 740700424 897047390 442196466 548522174 48020504 1009361620 125195407 263726081 417662011 643081956 435444536 353946680 64472678 328514336 909971096 698936103 713539092 493091222 202801391 442202676 1047664993 443540948 89552555 659367732 952554936 938272524 673994604 761535775 754454446 1069114281 1006889887 874977524 882067611 865803049 285506642 368864620 760956737 928475492 197559232 17266068 442673248 669865745 363482784 300499602 499687658 937794922 878987444 844284333 147906747 849506208 902325414 27878967 55003136 378253736 289900242 43586430 161684508 447239444 535833816 915843051 483453037 734148433 1044237664 51033625 675779923 964610946 626869686 7996473 465185999 545440392 576237081 569266542 172192283 947588508 125085509 660209537 704966922 427466979 81455393 821031494 348184631 252913714 21932265 301163258 765374792 1025507330 661170293 207618229 572037824 725474200 520863046 1011884914 886005569 26090826 63464173 979401203 885478723 739689210 631391857 4241436 72472942 988424380 595666577 771459158 379536807 101870327 27925382 987713036 197291376 748849333 263994075 840018123 434791647 391832537 986630671 663898041 1068419265 317147687 760410482 1010471244 368647229 753967949 980970856 309239340 78918628 125527584 836113198 832997525 592984887 915014681 408153655 554768231 826295713 787882144 807789972 990492060 92308902 737193593 827346493 585203021 331083448 40716417 499040753 52556664 407594740 650565987 966912159 82799256 58420180 44781915 697899895 335715857 131278938 567457242 689203670 849872815 443902977 9794702 118050748 229256276 101856382 772626332 565996690 1027874317 8151803 118016596 206706795 325671451 515933686 724216885 970356628 878778181 866549098 656017267 127120302 719760085 17918937 663838096 340828856 302732607 584551819 240081495 263275008 870352103 680934252 945431949 1031983742 442815145 265906457 72117864 1015693848 658458227 769009430 688624356 10141562 770052161 102867170 515969962 1045567395 207075604 369658366 1000940059 445902216 195777990 245011268 156644004 971588992 136251775 180748066 679275545 1000113895 81030277 176711121 136576702 616196376 892570725 186263163 989048047 682259873 923046451 137843575 385147417 386231361 1058016582 599008617 814413481 434858674 282739257 668390650 248836674 832048134 805280538 492800351 279718724 422919697 350747477 28570795 348452227 263328612 530485779 192918525 261465764 1042076918 584502421 104356952 980927594 38516238 284101121 509425342 82808457 357510802 845196095 13163392 616930129 82231553 213282239 722772259 559405215 228026617 613285963 248143362 473653870 66525185 96366275 347846635 323704797 23280604 269136587 1041847007 527758716 21268584 689001619 562682170 885361310 74387182 1019383100 409692527 532439157 739489379 217283165 508461734 863856581 1016680809 494474135 764667721 832367176 266198655 755564766 444132669 341839573 314546034 383826879 919109806 756521788 155862243 300936225 663490888 306150400 912969103 87777580 1014458340 752331688 647595730 446357384 616267147 985174375 645086332 664242753 385521969 465221873 825534446 125221898 411789247 803011554 330344490 177463157 270256810 15040466 844262246 544890879 639074466 683874196 810692346 315320586 72780502 155130732 618405305 114772658 1032574412 789429101 563505542 210578791 248768342 403708261 278601723 513459484 335368117 485197690 251476375 506773805 736136143 656774697 604397246 252935806 594020798 1029576533 1068352683 49603030 271884059 214885118 758244412 50477852 278661063 905338947 365259907 303429157 486339974 265073748 490625705 294713708 759272394 786300068 686148823 165823779 155797823 381308514 862466170 721909239 220203237 709512590 816934727 975770184 710361629 706914839 321626164 434878273 91811938 289857605 33436234 193098430 321596460 630348352 736451780 146884355 479674091 944028364 377539299 695567229 508576445 480182077 1026151903 1018386522 768428291 335277606 16024511 174836705 413121699 768807220 284328716 766987745 1008150709 891406403 113438592 519573302 529602817 271660131 171542276 379714940 456523885 908992600 210456067 246777339 384855246 408417137 433454223 356594667 620380945 680425238 726962215 398012522 169906589 746644031 281160651 435262664 82349327 538580504 36223132 905155650 667440145 237770532 987063665 93746744 433829812 113804116 288707990 312819048 969666468 1024634936 764179557 793331488 547652648 375155191 986071739 208578527 861702233 63278064 204125949 470656154 528837726 449553461 1060786723 55578365 385592515 245486488 26385400 870044052 221719152 853058770 176914477 559935393 728260728 109961201 520824707 956243380 100126238 857669202 789794983 121950539 398121296 196504411 461586784 675134252 347339597 801201184 550640746 166909345 903173631 746624170 971434541 742686997 54484905 308976023 187001598 446763599 828451554 227533614 894465976 559943174 761751021 106980546 71976573 815848257 366950157 925937152 726176936 175343288 899428620 193638078 64258108 883452651 985924362 385351060 352931248 481549920 735541628 347779147 388645149 841901368 491033051 58028856 226829666 848886367 753439453 670125758 771765894 131457876 876277098 425894671 315109298 717403640 256513868 982288039 757366737 45098383 468181555 263009879 211285647 736456330 187697867 54574437 588508602 767695904 579563847 267671074 617845426 947577830 163301874 855167199 284905461 394396605 993590281 1009182481 584571559 417664578 120078692 75937431 1045854725 799102933 473824787 252450755 1060148923 832402504 173803728 974857436 87088567 593879803 701321653 432366824 946653338 403775240 178551690 40876605 252598004 27117153 459478175 175326781 252612579 76356309 1022505076 266939570 353253149 67651375 852487027 433831523 661379784 820080986 971729803 566945011 868734671 698001790 649916176 529433968 246149917 178293123 250664258 565776789 133616959 1072047772 601993332 830037640 107700725 5991309 872747657 315444824 841335739 1001150721 608142182 696863577 459396965 805357763 564125533 868528791 239823652 704147407 867021716 925553166 1035689594 70374066 172256065 859087812 67393406 990748265 31010740 219446330 305832910 647697913 370333835 632942345 105786406 996348318 1010594989 399956233 695256854 692348293 163565068 878487685 74077837 624674475 205388457 775672583 817218594 219474387 358239123 40046498 340821599 304011372 440031389 273026523 754537452 826735113 698194772 693624328 819818943 361534306 475287767 402142179 726298949 780190307 465651700 807969136 1038217917 446921127 510135221 252710653 453820177 809451793 800475077 682288325 630586115 88254123 26509817 1038067494 485216593 152840941 723353004 66993486 463696718 580756504 731572911 182243961 458782636 767344804 897302665 507876236 121949718 423977092 714181956 434024393 925622637 335692549 283931380 840630010 428400709 505778040 714998017 575620441 1063415091 244892631 605416169 432547137 151870107 877390451 891490473 713343461 582398461 664219486 575234277 793876760 569153299 162182908 247348531 381692053 967113162 24090224 1038708057 864176059 1069894356 233193274 407763913 38897254 913125000 164297963 219261872 486418817 622788618 595308081 177788506 111392920 170117494 639665147 415538786 140473777 64956055 186436753 147966265 243451953 769577584 357540088 478027487 520477157 314586049 746112839 801784 734438110 137895848 726112555 501335290 694727765 1007815059 959611772 812949090 809316456 474990545 729137962 926720224 449082424 478135566 997010435 1019436729 602429645 357201183 119352461 520195507 52054333 302174832 557419939 837837575 174740586 1009736420 673849484 791889185 78735822 38601409 851335802 503153777 934698763 338851465 78491629 832673817 6487089 49776661 835681144 1041056957 165196606 22207889 474178043 679889910 765618102 438219354 751750776 1061279167 192669210 235179102 67526202 82147245 227825048 101186113 753413913 22827530 363498162 152718866 480693597 12830894 63182115 867059011 793686360 766371369 807045151 595325079 927766685 893911645 303168050 93875944 873224239 146428781 65117266 18456625 200255120 380196020 873436219 445587170 1022116480 3804490 225179445 869398557 15534980 130260549 16274845 692133653 68559210 716819560 156732444 277394378 757149037 948931856 187193523 635366690 992512417 419298369 241389811 83719970 482541444 697227974 165863966 678305311 522681506 958506824 622748195 301604352 166890978 781545875 507815942 615630474 1023501554 263198569 1065784980 820744765 72914948 369791753 241134233 607684285 154659833 40271314 884621993 554478550 193151776 927589614 467120294 491162097 1010361048 443905486 205160307 578454415 613710533 616658760 529131256 538023020 314746488 62265849 399715362 394553247 129533176 821260760 79874645 740599099 86793428 79757368 951752167 105984144 803356278 423232576 425626987 1012946050 684551411 827503945 655791551 349050414 586580259 235549798 726911085 234072802 317881961 931230739 823822030 255907172 363338671 357817613 98577080 841485687 902408799 394339344 787235727 838766170 750679623 169567703 850435148 602840810 876660361 192233702 313916220 967216198 724781449 859348914 304711085 869489398 516072946 1066026991 720813405 455474919 623598254 1067568857 732075762 764315113 87327494 517409383 607664558 856481730 405982114 283817115 678330922 220997856 82142765 550577762 359519711 649475669 650314724 654752329 527013592 351357245 143930325 159233078 696736167 1040732877 69051754 799850587 607829493 354861748 451868171 190361985 265410945 775201048 994860779 377677876 80982146 111630194 1015153139 483460816 572024185 824125267 119672246 316834261 375650936 77951411 267044243 518198053 1008397582 882429321 586708481 66176456 387728887 491264274 20093066 716941027 306554152 948327237 325335538 401969431 739976896 361933868 915093757 711863441 501685016 450623439 317104559 558603305 167891578 955130914 455723955 19783247 141368873 692949887 473057972 1064635623 900341002 373110056 600584918 959125518 609436915 12391595 998257248 476265528 385483793 660422707 1058065264 708103921 868491568 523510895 713119544 659889533 810795352 314742587 181476564 61023272 489872534 316662653 951345480 803084801 333673519 168462201 823289338 269152690 431982671 574058242 280297095 873190556 897453582 245667987 882859050 163300045 722686205 581022926 718808535 789391522 530955324 1014431775 345341058 633828347 444691852 337517953 1064245658 117994277 189214577 902523005 891295239 398681020 839200059 568498463 484885173 669840095 627304347 308535554 772016977 1021385830 160317366 46033674 1035613665 297439062 132612441 719077027 568442996 453914123 117595669 1001929358 627202938 437632659 777598445 148714409 332150706 590567401 670053523 1058702986 624256855 59539845 545121198 420194166 706996895 174163870 984069814 21094967 69773247 416348611 363637993 1048368598 173583289 1003632348 79213196 1156727 48514059 695940971 345771669 1047654259 80012148 454548996 40192579 872300262 410569992 531700162 1018984526 422985685 412736919 454292758 729596871 553359763 337692609 956917007 642959867 353244812 679340078 913319366 121375057 474546319 594971578 528400168 893721593 583807193 352501963 33815965 830305532 429214400 229426095 56047153 230503053 657521849 1031509898 106455360 615954585 6508707 577000173 111392524 28898624 543753723 523918472 1050539973 619889756 768184453 677357805 495831891 928541976 927498997 286326314 466648442 391656198 608792292 299482198 621017986 195675816 347540504 89775424 285407478 836013896 821400957 54246701 347942405 682767538 25254486 737695709 737413681 311664302 803076445 29314263 851176026 9128063 417606993 496427404 267460016 702404157 920458056 536961132 157648708 1016764883 748796745 568012888 656979729 927456247 713224197 837249901 244636413 550802109 210251307 213375594 464373857 443939670 333024659 343180634 1072679701 183941920 328034974 856873434 481816479 605700028 360174575 172399496 239276398 523615263 355570597 201937060 731569036 420445626 762822744 935311976 237594993 547239804 257954877 638069095 785995307 240249525 880129943 851171019 833864368 804484502 228925183 918963884 668538917 122210444 552422285 742248703 560240156 168955251 418183798 434237284 692519358 954241297 590086351 564760289 932349488 1009407911 576305100 206977226 312407002 1003610794 349590060 951916537 221559624 935189042 941122745 945888625 727592820 380982662 774650358 986386341 154928788 735593460 180648807 695556872 730920495 779423633 234864699 273199793 75485670 153255454 371274946 884351328 245390255 528142065 940397095 752303540 827302581 714659911 312402609 766983687 56971435 35241949 600740936 427951473 719991210 562649426 788030413 817153291 767887357 627547341 939663854 608252828 929262831 249348144 654096612 816992013 491150348 1026056059 749559558 146029927 207581111 858845704 1040991699 167001049 441971503 491848213 403320089 331630044 224326488 939426428 976894161 491087953 843465149 84994853 196249096 71034288 774224776 379531864 42467490 795793757 583288253 730653110 1045756082 541036668 224220486 370254034 391131977 824674847 280552491 845856932 412708403 239772734 777545197 424745547 905404959 100998998 992606698 110272979 97367611 135513836 754457506 651236219 188913293 951289964 1065144894 71731992 913779227 789609509 448345163 172126431 480086927 396393226 858875528 869646241 157438293 917246441 401694799 286383119 353991524 362531055 115527608 706889789 899525847 840427985 774288523 533443861 446875909 270275621 437952252 220147363 58591374 586513595 420467141 600022963 131964605 562331706 470358025 1015937139 14879907 1068000027 408724034 72572104 173741974 624666195 787763554 1048481211 738543828 219846781 558969042 1019628975 383890148 238427115 160607085 580741876 124431387 760026078 397672751 742234229 82434093 626508722 919438421 126460499 770886188 393638167 359452258 632153816 53981823 421831226 167644931 313579334 78490033 751799063 727247608 174796659 204217010 211636679 780083868 398033437 54284756 423283998 914229140 51708476 30517991 904798006 926384469 480137203 831375771 292880847 751040439 509668141 963715384 335822721 125213918 892642664 260952965 851769902 725361308 178844380 449513662 573570292 1060979971 535181156 441060499 219734969 879758478 691172750 203726120 219538445 485689664 341548968 820793817 580450964 730584109 922118999 429374637 238801600 812899121 110903655 761067415 898702893 206394814 688558614 400790879 693888624 596657 393987333 997506451 492829699 364669242 567136847 783346064 916188285 232969538 470497620 50479733 661051270 860979593 91643238 746353948 1013948124 818971145 600376608 907682658 912321874 967361786 565092791 1051642407 536297492 311929103 894464721 344648076 607614163 265795694 284735889 974634174 892554290 459235648 878354662 699897536 276279220 973064249 1064395210 800478903 658229953 1060454704 148936868 851152932 672627563 796344843 213666688 411946566 92391048 433988574 455983271 984380756 711827909 964241176 447148670 840064903 617867943 658811056 1002361700 498049231 89708556 265120782 386920979 878582061 452756611 491891117 739998442 762870021 881949292 627299959 978255479 333491679 19522958 649247785 519165881 432193378 562951987 230581470 212717665 634980444 716652132 896670601 991727237 916716474 108058138 274678384 146895439 608749471 976043991 559311849 9257387 952105115 122371961 533154348 539380541 412444824 212727668 559734664 888365115 1032528231 865296140 956570489 28211830 372986403 271872810 528281634 151374478 426119308 113230958 997882333 930608622 13546506 915029324 873567753 766636874 1020684749 885568642 692547972 729762496 754324391 835362279 428076792 366610099 818132397 894053034 667897691 6495510 767857261 1065664842 899581898 652389245 815124297 837871564 961017422 810323005 883073591 822722420 79233712 710640982 33383497 652409399 1015848867 176966935 973088359 293236005 792110357 560608877 509717960 225556025 938255335 1014225881 921879508 902841830 1018635869 1066170975 80889271 239237868 616307149 597683122 404214599 320837936 679495482 692422904 249405179 1037310686 943150065 818615870 931711428 853254557 531013425 726633093 134247373 629932946 240792894 93423023 290041190 994901199 47043305 58877801 918634800 63847520 755615526 352195732 613395721 164328775 249477804 283689514 173622645 510981651 628310396 41794448 998315122 720079167 645849989 591772466 482223631 560037314 209435506 611503607 607861036 555572956 341684833 530282861 1019282474 237789162 624562553 320024602 646318760 782393193 655810569 702588440 471390956 108217872 696347942 908503688 524484689 814815452 733306513 1048202567 36536311 460730819 198060433 689043969 806537626 16810905 127405919 527404735 370772038 822927938 806690445 508345682 274590507 345866221 159749111 589292315 343459744 199551533 184614134 895965430 887436352 191853696 170175528 489716575 31968717 225533050 637710461 545239332 333325805 800894909 496364366 798396927 931563079 17498409 341723962 550358101 498872984 895977475 957753477 150037814 809554804 615594322 843385058 1013787858 640466389 1035412093 420065685 452960718 775033768 793482997 756411762 899955412 757673780 129958219 721126414 1032840488 220079140 528143122 681912197 120416456 482113691 789466956 604858922 153431966 429171616 243020138 248191020 196835293 769989161 663261504 281344158 704598747 577509956 556554955 420645822 383416776 810657435 801017964 725873479 494223688 822044123 88032234 356341147 181952796 121843674 788315191 953649317 944184436 233667274 404864973 238154361 134011919 855140283 287548990 562300558 350496333 74479373 996839246 376205156 354712846 256192031 2290450 267727555 457554933 1033032265 545539053 372664265 379445880 784156190 291662379 456129048 176192767 798751312 132309376 334670142 678378709 613132850 311912688 759741508 46452685 690515866 408684050 876021317 1046537940 759230086 1000051799 632405318 368490634 780746001 6524972 467232347 542426282 53915650 694275565 77103961 468986835 172691393 442826408 627991770 729309236 1032343841 938973367 703452034 665926433 667329428 970326510 1067029400 364644647 44657656 231773935 565585910 963032213 265067814 226313914 422546679 661014479 716087101 239853371 971421984 702225854 803232233 952545598 955141928 171545759 242665121 33812956 947039451 834897527 612214954 46907556 276343698 470290821 700647527 778731453 723411780 807527637 390736979 293014263 652041066 73965779 419823390 731226040 893055283 753883759 878644060 610601897 279704007 2160743 477819138 723741250 706350928 473059018 471130571 184528598 25295614 642038877 449750217 831135475 482303573 678898611 992785863 481734954 239886755 353570191 772312002 868978827 138326672 542553591 120207650 933884386 678732511 190808936 191370221 884832379 793841917 954180124 393541502 1056396608 778298266 760077776 865810109 591254432 508864857 1045954618 244636293 991480578 324212679 487002212 526426135 1055891871 66372112 750108422 86611141 882576182 228731535 808221300 144641510 863366315 225781910 677900577 897189715 593484403 1046214474 54033224 908856815 774568995 146436115 956099771 662969468 868314180 777915751 156565196 827157701 422091313 389342420 805931816 529948360 828015967 446615570 382897714 204349265 688823434 324506923 665945816 700587891 579714121 499429344 137691463 677681438 263601868 287393454 1051673263 22284497 909466391 141924721 1065955431 286837626 244476769 841730830 1028036569 82379912 529960491 454250442 110640043 833648354 431037808 124446605 592340388 450974933 443928788 255734029 95840508 10447041 432552430 704525286 746977415 302547489 118226582 73798314 775300723 755365205 916886017 881106245 434728973 402230405 996679932 987842750 717344706 157892814 878186495 914416088 997750956 512557880 816965743 460716587 628436329 806594444 685130583 414400806 481972548 325567655 488962974 4157415 822999266 215781997 664822874 365117527 1030857546 472941241 863327730 134278201 425435109 376808992 366049764 143229108 371216025 814984561 42081120 309339502 115975301 546513181 910128558 322753275 232053981 1044889331 1017376384 368505240 552914406 631239273 124055149 623240834 1069430900 948393394 6999815 503545555 939749919 976332792 459979430 829478762 1070277794 958281818 699879287 525697173 784930792 475016531 615666099 136466872 171354114 644411211 421748914 1034948235 276801752 188572998 240163099 226562682 213946689 857419074 936875893 426126556 548182760 971774899 145800950 1058545374 738111323 739444208 344505986 956124020 96151917 594859606 513693338 905695520 846006788 735640513 315920965 764140898 597222967 600229426 333414111 233951465 348479830 472131786 481365689 411285463 1015459715 417073868 110301792 300096428 227684508 312738876 854170557 1025653762 561313848 537175052 368186764 744295457 352707109 436349719 525835261 368103813 968234946 704593813 957379764 774909065 167913112 37777476 286241889 1068011752 341368796 358891448 454051139 216462672 591330792 417020848 531213528 275271981 871814714 672052438 856871565 920992668 392785049 531916061 1062168281 496985125 668874379 926582934 667118782 318631200 695530611 196442677 442100931 710633997 741959500 725961603 775438345 59740818 724914109 867494006 258257349 520854722 571967913 246009169 573579691 789797166 871324136 691640453 431470682 1019909106 372176633 317320530 969013152 105325699 437184938 47129596 945969394 575634967 119995637 992775613 52291783 919425144 423771727 609679094 866851451 447607316 592913967 58373249 736100967 144256211 268791650 347112548 581167893 683960906 379732479 1047906715 1068241332 638735688 221188964 292720938 914603752 150070178 574524743 544149164 501079542 58704009 585327796 458577396 839137995 117020202 609917280 758809889 710602518 931823018 762403466 395879530 449518340 48505077 690111593 704108371 654521828 97361393 461846025 865758098 267757468 807202236 874744278 432796844 914100482 658180560 255499062 1013374991 744247109 1071510535 607964154 327452626 46645425 1064222713 672807444 593692347 4041306 965133942 977432502 735492653 527105507 1063812142 1029301927 29296376 745732372 587204882 832997684 594437011 979279923 20653748 986765046 208399738 264937195 985338282 213087133 845840526 261055810 715740085 787169140 729243107 422472142 912760608 616061642 420836188 700577389 116764598 487390188 495796215 595488565 857789782 525936853 417039913 386116425 242226028 746757032 642630237 159353266 289450974 442724803 85247268 26676779 404652972 310447028 543167279 429861491 1063099216 805039590 515978320 155228141 609876564 280387019 987833840 424147409 130435323 518578226 584096670 448263271 119427571 727025838 106814135 609214239 386248613 186994206 353366766 580686315 35394083 659036039 176766298 645899454 678177504 548876367 266191479 460902689 250310041 498290768 118984028 130353790 665938401 880654264 460847379 394815228 759623662 888282627 761916925 377510820 639054322 56115946 920099740 185037370 50039036 580331500 486255530 667738145 215922175 171668149 309050616 525728116 49377141 419515426 145454000 642712028 262737193 698805554 891876383 100944488 385248875 576070615 167204398 76950926 280907688 232877361 154139760 1022873864 1008132992 103484154 109940961 629283663 297991958 133531298 537496319 28956185 493293913 98874460 553167914 1056838289 30483075 860824332 886636196 794979841 813774004 429488974 745151701 968305915 1053087811 756091857 376085471 29351646 427836791 618171301 906480178 1069544730 84430257 700273694 100872153 160162486 1066159460 256689818 466347007 1017601852 1065570632 564069924 421524529 686708414 171551212 57655918 330604847 305297731 741393722 211695183 738840649 331467775 20866683 128438799 815367172 137435135 213682389 193469814 79416955 794248512 107970355 618153409 935097744 532902397 793842255 721911627 88452855 932819338 1034173158 511786734 557470683 797065297 114524602 1029382087 505134609 151548995 56141790 103604136 131753345 999068629 658915698 751153800 129096927 106052617 1016168237 595037739 932810346 1068289072 197045804 645133704 257946939 1020920963 974013790 944375958 555450450 566657911 512643277 777063179 932487308 937704535 842763243 491627156 86167775 998438344 520074840 179770318 264464696 689543835 347219756 262230578 544345366 784452914 411528212 227936021 846624349 171806070 238343631 685886448 906180148 44982050 411169765 431434083 123275777 954344197 66864084 149683016 454864563 671311524 686192736 6839507 185676793 386097786 1064934345 226072400 80212807 733989499 385008504 30590902 381715867 929374051 524048504 952952496 355787065 422739105 639317786 629833967 976088928 533749657 814841195 31773894 851532318 682138006 370972587 383935897 391388102 677214629 55822885 224029456 706278642 405547526 149168746 220259409 582445982 976648371 538193548 745593019 936973375 507739119 254481386 118692051 373309192 75758263 726038190 960449491 199268147 377284787 248143836 695828830 71585649 775965577 735051159 591334468 294100075 962220195 1055613746 232812907 164230571 384407495 568152322 787517023 428649394 711102618 267745232 941962399 109431211 969103225 925617865 77883157 103881024 640393468 1005215543 443967629 507643814 825588606 808640069 1044901245 150702255 81408437 800275896 402980951 727905107 79491170 237502509 1041723809 90598104 607618490 77662955 832016799 11188689 221508545 808655637 1054754318 674755726 445905434 668340907 46850442 23868573 305892535 294331326 830444946 326947902 128205638 711181611 602897654 753240098 381823273 889505940 28231767 645589710 581766819 741256619 1071306323 505760887 76422055 785089487 223609047 910050587 354917913 826550219 606076518 508736882 164053555 992329082 311827497 562268422 579658787 192586569 500203136 594737287 469820840 885600392 325605589 858138651 831375269 689551255 253802228 171523879 442894989 681413109 364215306 427017473 875667093 58734280 531508561 356139063 8153673 613984087 32160942 919708138 45658603 762129940 404447004 91634376 611131311 923877435 436145447 464773672 938905646 607640256 965550584 292966081 426361606 929512468 593449054 197617908 103354817 132219574 570947787 964851512 683370979 947730679 574537378 958030546 748546097 1059672432 274762659 12332897 821364965 136490763 8868040 643849367 827231713 420603935 943041055 56833907 451852592 402068525 913034933 692588129 854038836 167232774 289010397 413174422 432112073 302176658 565590495 112629981 564422597 451979094 299834458 548489064 49830386 231480200 536985222 978727669 397964366 634634403 12697977 1028369135 301938384 831873904 85797341 427336954 691242397 1063469315 406237567 397661250 645173175 185353687 69889645 235839164 738366521 899638564 468498027 194171775 100169115 194115773 93528627 8670985 235106146 137906801 123297445 752374078 86783664 345011099 80721091 524433216 500775889 367677137 1071862941 410697397 217443401 474517694 268621624 183397902 937947453 457671215 407959013 205878541 58490921 567024380 841263826 626554903 510243740 21055844 101718004 318685576 747843036 461867850 282905037 308786835 348526468 683762498 286744603 512610996 583612210 1043070963 149886409 51502640 321044230 923028058 704797275 527764082 542897420 598101368 178445083 995224086 503800396 32618740 426450026 345250806 188465494 872376143 759257537 726019625 477856392 250344341 497415716 831010759 1006976497 629879441 86283869 401965564 67648540 221563712 119558351 648430716 278216880 445721454 508020440 16556338 129395574 269668380 224415158 950312507 880017452 155522988 430643622 746643494 241917533 799051893 870351293 363553045 171664038 617075837 957545832 658224468 440196742 745159469 723265759 761465814 755306968 985052410 46163605 592263856 1048221005 939824769 163108816 766834575 640451602 901452978 901392771 797435012 1400543 797919702 578843825 525937891 892772027 930210396 919006358 492217095 573538891 16604009 1048048752 390876865 517918998 964997444 676670577 501073440 175964134 784483879 1010113036 473721917 318796305 509097723 227780841 776708019 571591514 834125618 776288182 835279030 49843820 1000812977 136812842 880446330 57130422 455366531 618418519 513594624 960186939 605778368 873942917 641048736 121685609 151849629 395106566 305747403 305035749 248401552 86546668 970594472 196177496 506249266 73573248 690037959 787710441 257393878 392694093 775697879 481763881 505329538 556715482 123091646 229541224 606047580 9639500 989357503 403096361 488028178 1059970327 794727377 528134827 705170558 576326519 1052636613 798514363 235334570 385964369 1055050246 312476404 200763050 399070801 869470874 184580319 1058904841 1010006274 718832143 298178418 753879694 792724699 409365092 404686818 592403612 858870414 547327694 907126011 161091793 515470675 1005243532 1021340050 559336415 1026962141 816148519 1065594806 382857486 1000711360 886551816 557072861 78916865 1019110926 313859451 988112248 125215170 1006653004 1069618350 791347436 369779884 616211623 107989268 827255922 464165186 677717788 167908855 533087943 710454736 572305247 45165987 918210530 244150366 984997049 898200590 302352744 665279864 657828088 1001615766 356154314 748970977 464094290 256227285 575823459 49771947 462986869 140644593 977251074 914471829 130395287 685828615 1046467676 289100872 115064054 107448991 294704566 366751286 788827513 981729884 126341979 806523233 610046711 152629095 799130193 268769436 1054200217 233282990 24450215 984648040 970267838 972464121 1148399 724221643 245640133 838939629 801593233 688405116 450560264 564417519 458407276 874377655 46481784 767307778 952377738 1018893600 302308784 273868046 862348732 949532317 732881369 690409872 786578160 181970394 1033035893 570105448 213965444 577690773 880316976 863854656 192847998 369606528 97653831 151686547 508771231 207061117 463067728 761326371 447728448 104089856 510296247 573097773 819909131 198926059 563029709 651882827 1027984756 601881455 561806962 1066010206 8878974 11948774 906215711 663078369 357723342 1038358212 766708709 586353959 951165944 60534371 725194099 326435952 488776043 78093601 995278658 714697736 975431768 209456587 260292703 104430560 834480376 448471985 862075185 1020300230 69831672 784946958 566612314 500459293 234870907 6308242 621713295 407808724 518210873 969191513 207804302 392350868 442025128 792941383 349305171 204931161 628572348 471223314 70360306 513783972 1038712981 957897306 897877969 643912274 713050408 323084083 366544696 959135945 911733952 593979370 896235105 638493766 405627575 813273940 936662021 990504383 127415487 375291755 361644959 647459997 254919190 122793194 321993401 651533078 241708827 593096068 534811753 442797841 1048075390 234696263 847216334 259797694 775317642 1067541924 109199389 894563713 792383136 662824777 911143310 500326267 36768080 555877674 287833158 938630620 93782981 941582007 838622137 526193391 658933930 381637034 1037455068 200478645 570262020 523001034 1019370172 938088455 311201552 520127977 575188902 366265371 994995124 90214219 417753818 161283710 380785490 368457534 409055623 939317082 85332939 513905339 277589656 924236190 9075864 960325021 344904480 924742860 943737715 969357260 186844091 595467912 368010529 1066142479 841984229 463170476 727452011 28534224 428474600 782101710 161928423 104735889 1047511058 271232544 954115529 321602785 382544436 983104665 856126216 595511984 450389181 369335279 593987835 738323305 602464502 185515500 578283185 332019042 121614560 330158231 42520272 398264904 102690596 103352692 198556394 276871037 439343121 606794039 60856445 525829271 370832144 746957994 40602408 191321244 471268375 32858577 1000332910 456128407 819733365 668676400 885683778 160606916 800023357 152476867 131823502 891843957 64052258 963615973 885419979 632235299 137809919 462419917 907736944 515203901 1013035286 973257772 969921745 900764757 541127872 500346045 948337187 252683889 838416732 452379426 1041617313 993407869 881451994 1008890659 624606107 703143775 598749723 524068891 28232158 413156766 102610439 522953565 851759935 336625682 466849612 332642638 540084700 555709469 1044134752 370002754 61595884 75538076 780210059 651371878 351942005 904742378 651791767 507615484 935493730 1026961962 694012660 666996287 245076138 615357035 181463932 987536405 20978960 761010258 477500566 344540941 394554496 379700136 565991406 633743262 332092284 923576099 314893103 77807037 938170777 850273585 961913813 936949413 445852415 414799555 886223516 456066544 537359808 499734500 765465317 343064326 924408461 45259046 537407584 279708259 691311912 142079440 370253149 26695662 779667441 347746044 33208353 114310321 302479995 569399273 679807279 909479902 467584288 205414436 143788374 764802107 668834017 877540713 660632025 741918157 317508839 1050925954 193221718 943761182 286711798 777314433 333412900 447900114 88011835 43965478 628840774 915988468 261433988 17756575 923042295 63639572 76171978 767658864 1007456068 657467058 162317058 698688624 929490759 819661859 1030009659 95680856 233614168 412784747 628318664 395280213 947452181 621033570 1039007254 690240686 275559697 869999623 350650908 68559377 732165255 404612566 919823397 935177178 436697282 173185775 765887751 512688007 928197655 954063103 200622819 560210480 509781542 274184817 246075761 713229353 767501775 996892008 556549103 946061690 604405235 204395967 695386756 386728518 1046811689 393506455 1012845193 446809970 196805007 281639620 518008538 249004425 777638006 717973303 872322009 405895081 730697208 756476255 754992618 94701275 49463742 437893060 240195426 265136482 169454816 535273118 888796754 1002534899 9381550 638022448 936014662 238790463 688725596 363764934 1019133968 438204938 818856086 46922982 1044205448 534772094 402442837 1006161603 1024877822 506680696 582791450 6550239 268397868 911751864 13960379 185624050 501483173 365519878 116440602 389035114 661758495 73924782 868400385 892599217 284054862 579514572 257574197 131742138 1022767062 713725990 256975201 273738597 816694550 551825712 809892094 693343584 420496560 894268629 743975336 284637924 836565503 102643875 463346147 64683005 117641851 792905411 738717393 763682673 112499892 1053092215 558261367 1001752203 438718601 699459222 331888736 490116420 553157618 64554419 529786075 653666064 876539949 107847869 919723521 319574240 696614106 290959340 913312580 753785218 251102009 912703973 175825727 111055108 616999944 49623174 865301879 598263771 1039917756 675458897 774638353 750769731 521294990 162987500 162367796 1037677053 92337377 605573231 597162858 443309539 355908596 1010418681 476570691 310214870 879282395 636151986 69688232 139447855 126568210 515914692 649922493 783886814 1040693862 93500864 860864258 1015660191 1049482629 1002715749 1072777716 287014525 968048614 467940246 97047629 614555631 46378847 256823737 117808932 446891507 303242258 52298957 656491076 519256460 204866794 264012695 588267485 528963786 282902024 1008976339 681841750 245242306 254633189 612220974 1003691468 81796081 664599990 161147147 787626340 371821025 707411301 873941354 127735278 727705869 840700878 951676809 606663946 815845764 233848713 414198468 418429175 391691365 357100529 782649723 1054470285 467909857 50705222 390882402 151484282 974783181 690560229 806171007 284307344 175990292 228866526 328886537 777865261 511468623 1002967802 932681412 630560704 446128972 301998349 805380336 224919367 856017092 952896323 258494347 74695821 935618345 894246141 918254548 143307823 729276519 922608609 874583562 181330740 783184944 955942212 433495065 783418425 1024502086 522570912 205775052 732039284 505861682 248634116 116741581 78058511 727212194 342570707 648052254 46498946 206417842 87813940 539405615 62046858 920042562 551513385 683355018 402248175 821088376 809607128 185236564 978667644 902797333 367660498 99733400 203522542 657835174 591768679 589663815 280159222 843813404 769563915 257761665 811022426 749043481 582380730 202332566 931568231 174171213 301853847 67042719 788139765 710990751 768024010 860718464 699968681 10993639 781318070 99133174 914498664 867249144 56056013 87847029 742113931 300346795 7700503 265510215 703469763 1013746858 421168476 671792855 1065220844 316131933 90619760 986256444 117104626 318840534 343268375 232713206 665790983 295175841 395455183 24443964 1058514565 597004640 553172412 220957005 450491754 401841964 869423832 196227959 556933122 433113812 715384582 43077778 687898665 393166073 937344797 212417675 578312078 805056893 937508485 775742283 895051070 11280309 854204809 1045791681 937841906 440081827 635126139 740917934 78101698 256079033 442322405 107097085 510474145 251568044 131601910 979753730 349134631 826278589 513736559 70150815 869814676 806927740 320087839 902528533 85187466 80078645 200188127 821971706 225089295 334973154 490801461 119492150 216393949 202916706 790896257 954902314 627803186 1046962490 340391713 230153300 131959567 636089930 667635832 68969053 447125867 738676229 543134373 110482906 1071128401 562015182 522325576 837382940 472980064 979196289 446617643 182741217 197161991 813736591 1010210909 961402679 861375282 801768873 657527798 644208067 444537145 624041446 701076120 947130562 14614512 587712005 419217106 787991416 314087486 256444191 662260630 954235681 805709460 1030470182 201138387 86714125 724052611 674674565 324023056 179195359 707718412 758960393 919515327 905883468 947234116 867942328 897907239 759864370 745696484 168081261 860398116 626969129 923002414 172214939 712190897 625276223 181916248 969537706 89989556 332595118 609006221 963311106 789021803 970452510 889704702 309362754 781394626 314610738 201290593 907667466 989036552 532188406 705734452 180646887 1134781 575495893 637509257 387322416 547343804 639038955 467370561 1032687360 498821104 210271898 331332984 591296477 193972494 926071826 94323634 609056449 448817788 605418032 824875845 578712123 975980567 1039294617 1007492454 382506946 242013503 1008413278 997420062 116604840 626403966 367560965 925566752 706297255 10790313 462202891 494936195 952797395 849136745 759030995 915322833 468151040 624048150 521015823 135640456 457873509 489925225 595558646 385240046 994708430 142069745 412395092 274730061 995419848 699702074 717837631 411460158 983579272 421746675 317302611 436190513 51835529 276905898 356477268 1023172620 780047895 486342830 358575528 855839940 756703039 422988523 299036918 1066626159 770913377 734284040 617442457 955767066 221790175 400755644 738154461 644948609 865007692 973912287 1009565587 441701859 994167130 463808138 120657127 528707408 575816543 623993695 851359501 778133002 1028561446 952846661 245756360 292373889 540779619 61809597 728169575 631484739 729165614 1010127215 707567716 481718738 119578848 175861014 330241149 367650037 463122716 486910288 1040804843 253589551 649873212 754078380 448606458 992246849 689471260 90174552 34620242 1059204979 176973964 141442966 885770973 606436657 1000821536 63560654 665665300 818321201 802240167 703370880 969396753 369491608 324097024 992384395 1031392969 607077834 651756091 480136234 594152164 112192795 802987882 879912189 599504980 225492497 313056530 141638016 607205901 396358151 920894781 897904442 288006129 542345929 286560873 796118200 564686295 841974997 732570427 1049417604 509477713 687261832 163885707 902610700 528637451 697894321 868123879 912762322 386410896 834366169 202105794 202198765 843338307 576577030 428139747 530238966 127239280 331546437 825706640 447059990 133904008 150882557 77654936 1059126587 903428939 952583390 549257272 8701294 97074311 1035428490 1017545175 970435265 232583221 862562890 987710255 798946147 68478810 934251850 288827900 750756499 87096277 329029066 454494304 121318850 879892228 767183136 201876311 304532263 564260443 737162714 738035335 828047329 794473354 754793846 494842055 196812270 170000181 320314428 189719551 36248576 200047120 568458654 705981691 380308240 105857056 1046734226 881140570 548337157 981432687 703425861 339427718 834509391 205091101 684012186 296079133 923979232 563568682 527850191 682489054 573697427 911228244 364236020 528407516 480702015 567448642 614832714 413372967 297466545 863868760 410234356 407256391 434363352 1008276256 1069062793 406952609 59512971 240792926 657167382 946573055 856088154 135224460 346850786 132583443 404023372 430946247 379467560 619398210 422837314 104319007 914694879 636190621 377409528 92033082 170848820 838360293 177446332 278297973 312222154 270953205 338218246 1028267342 185244889 958051477 123766183 975020341 730524388 72099353 1004372447 69900014 99443732 951238105 1017540766 966194202 179484696 519162207 844436836 126361942 448615111 844540349 680121791 963731468 952736503 632576295 432431419 58731720 180303594 830388638 744024468 343001500 548347075 1029866372 521747656 442888009 514814909 366656537 16952912 629011216 163130547 111630618 140630878 250098456 598966773 733056897 392233425 652299083 583425206 179984185 314530849 1007636434 927315852 546976343 778191743 166701250 736743583 129694867 931681459 994131922 93045931 320054850 1042638231 380921975 789112814 173614879 267664829 178347734 767989857 628020149 818015384 324338880 914686555 461659233 210567315 955165276 866487618 563801037 100507480 345009354 483397681 26786501 408584690 707821305 970733476 159491319 568249813 916554045 739141443 813000630 530840677 856137297 86112275 2807699 726944633 992231073 1031194204 359760337 167152677 495307116 238592087 16773847 573512442 927232993 208548896 188515740 801643171 388425267 607724936 954009099 767975968 849548466 100788720 832393086 742695544 601879648 965907354 804057654 332049096 1016360447 994816018 826452564 869391628 967936775 984237908 892554395 538748063 223319538 83637903 580062070 715864141 844204695 661590742 460662659 409867106 637434968 607006591 833287921 922133460 464774517 14262341 717573757 813582661 235328496 420681396 950252824 88429013 1070920831 14793641 678510575 29534570 174875541 548339287 1073242927 516520250 721884053 568517245 396794291 252619497 515918226 639017756 229111450 136851830 100691898 635044411 741917509 350571953 189235847 873113721 889729188 757762760 281227425 807479612 1066304352 468376081 1050729011 356243533 201846329 989979330 323238714 904814640 439691506 767420821 1065437194 1050509348 507758799 312390686 237983837 433001326 477871455 1035859024 176069622 1046852467 959982925 230951212 35132601 553193897 900122969 393636914 545199374 461719763 430984856 966781268 135501351 68197774 615975570 296416208 131754910 59223397 441385421 117799198 711506849 998205381 949007004 492681896 551507030 419950387 171355591 832869222 953233021 716116508 604780195 202246687 289434523 148491788 586916225 877667316 577013372 444008546 460879214 368671248 460469971 326026133 978835491 155219704 965508546 812488885 1072000935 97997651 598285378 154283279 415254574 726778299 117581177 374158443 19471243 747407162 618233156 356088912 39797788 439078912 291265345 216787119 24583576 540427510 225621052 209727889 1020802438 31276789 950994313 238001002 285580383 1062430926 929568030 173638347 70601467 638803489 350682944 801254514 1048977148 591326435 105260678 150336744 58894892 633606509 279283711 64555937 164622038 1046415195 761458710 126823962 750828149 189304568 613006227 107097868 967883611 384802725 443164008 1021587848 100354442 1063019245 256441693 338360798 431108865 632794430 965177040 495853754 3851169 156837646 318134406 236182036 802164594 65019277 100286415 250425622 879779197 1055791769 171913426 737771665 749051595 802801810 996378669 813892353 780712320 775634337 162845886 474779803 475683967 905705445 614593471 596284400 589059738 441980972 294480014 645347764 744836890 76757414 442420153 384586038 410006265 521344243 172981212 148955191 358800440 937493935 227999870 155607105 749285294 684541214 302823486 121642934 247192086 1053539140 1072965116 531561138 564730232 672749106 290725167 72251390 85145248 192366791 129636091 813011808 922029496 557317115 84886666 24089544 48860450 622049163 272135130 72836768 1035459008 613170171 685791334 569715837 18844488 61679322 745483199 320733451 801104587 361615058 782125861 655284937 481904826 547783293 8559344 892657622 769166539 1030979389 896001136 1047541901 26399086 698867273 1008194515 917310145 897983102 843370271 441618550 1033247290 524996465 186878038 803005822 261469431 948689240 909639373 576806570 179190467 232751681 917321026 790856436 638172767 979385066 475510328 613571626 527437222 882642856 958908276 760206813 575917261 590740962 293780471 1069584120 628064178 997390797 738573288 386637277 897500002 855365874 318762887 994393340 545099440 407572145 74229185 963460367 1023632394 923957817 596292450 228990901 246648605 903074619 549175905 434592634 963732534 7878597 291155659 372761891 987169580 566690247 706779920 610808715 590042874 273955411 514816698 93365177 788387041 725391739 255973318 619279018 987856769 484061451 617616778 411379252 192545799 385294009 497419495 772492216 671331453 466969283 673503810 979691059 765148921 532370334 8175766 943139319 780317185 166730959 595678689 552694098 461616809 382365209 17308748 118197270 211622144 490858967 1020149630 733525600 42761139 403846625 695359016 216016435 1034902198 840275439 182117679 191118122 655788209 132130014 20347058 665427489 452683484 1072432209 505689202 149650131 752822829 764918636 693327023 423315980 26904633 1022605615 291134878 684464042 1056271703 734421103 406916394 484188717 438523879 759550908 781773755 831358896 494208279 71104056 782580479 21791022 434765851 385227206 646305080 653803780 973383221 678571907 626637250 939597982 1006583681 797593241 1026220129 732782826 425182630 458481393 265179491 620652014 373753101 105953752 657626737 223432686 564891984 436133848 815592912 823563515 293254273 258269829 990026966 176771835 160491000 74366724 716473683 577838868 724989534 323036565 427080324 796758843 203168600 513442858 626201591 580548554 794417117 464376510 1031339273 352571246 709040907 814326718 451592585 394440363 137430688 512359703 113329767 856949131 749689897 1053805819 489608691 19269806 1048809301 787696469 995737694 473987134 648892868 980395704 214747363 377442285 880373708 951382613 870999718 931220664 1027181203 606105294 172730412 271927365 1067360325 1023799571 767263112 175755159 544929986 622180180 306309271 1004485414 964234294 233730055 103034254 1001697703 540450000 94493051 663473747 884723159 1053046607 895444037 241373228 985925060 36039508 207694086 371427510 841471230 443501940 1002799029 3606333 64889080 345663447 595675147 216890624 721622784 719281509 186989588 256401899 140872196 487869280 47757946 487689388 96767405 908646784 261774345 643237527 429903237 1045672687 286040065 963512508 627937088 941058141 944930767 917570000 597151801 807105955 793921240 246163660 609331127 267568108 130456802 861700514 360217463 366310639 749288942 996614140 803072824 234013864 285411631 537842193 237393619 942966306 1044363308 534448184 657988923 307334037 209246166 857623662 27907339 717735935 504662850 542587838 488880061 213458899 547841074 770430152 421998535 868242946 452740776 430889359 709476015 498266979 457083084 797931801 1013480541 273808193 587832349 676737308 891764706 666422902 96831317 381017398 210235578 908409308 164107588 744541039 482232246 813333944 48869969 726231365 511802265 526193265 295720559 513586067 497004275 318453543 5247458 155087290 16226495 839888067 938397335 336882494 748796666 1072341310 34042741 670649231 933815756 364544543 368604532 250889222 991668626 582723407 939507444 161009877 903202778 420194388 355655683 844006204 996408912 868759021 541755333 452828137 964559244 817549689 987038245 850305578 367087373 16317769 252881268 668614259 814956378 6575082 284263625 594146406 212081705 96562409 372716063 263834858 117156674 524104754 359136671 697899251 143257062 20774850 1022931988 306466712 79757027 363151563 648627103 1009804861 503143268 348834014 1014620415 127243063 750825496 189188192 237649305 80659224 333115060 195073296 17267922 737650159 92389540 584407215 844783487 121007580 610305950 966779360 40950626 830740814 30380090 435806594 123605697 454208903 697895781 576265280 849141266 459202577 232219404 228101918 764260241 1039100484 740460959 745409038 169786952 9835091 179187075 375505272 1047784975 226810660 138957309 253677388 441029835 520868141 12719983 770027763 871433011 734372912 235076894 120431654 222675906 997096574 340132646 493861708 6811722 464421636 438729143 309746564 623293931 979595819 339502947 120917949 413223747 516890892 360462790 304125466 502542628 470316972 925184888 268898645 956018892 986411808 154844554 552921428 959774229 882528142 532577124 366947018 621211400 325691531 515688146 346083019 952002590 978597229 600635809 487512857 228161707 575284111 991588828 673353574 328007215 85339027 1065849144 89281851 393058606 467362686 922047687 748803961 486083510 624486114 1039758873 611511067 578693914 905942506 802377240 987415711 58442527 927500059 775772658 839526196 783602320 1018077937 998944934 1008080724 830280191 290651899 280082322 921778269 356157559 965006929 1045614001 917581343 1025606234 970439027 621480782 192665603 929583767 82550752 1009013278 715577632 323545407 765530700 554427937 835523476 617513333 725303183 815685175 902279517 935548153 294906543 172393885 784516359 603083546 909772729 211122173 30445077 32123346 149875421 814590183 395952549 1064821361 878745800 27347939 700749644 177765802 356721379 609637623 243176032 154376424 277317409 120855490 231297116 43579500 480375686 695332338 858914769 673127083 360746321 977721003 531958319 879637939 288279938 715203723 207414512 835920971 956281047 466160070 281851663 457138773 1015025150 7321752 306860261 907002418 168233471 357970102 758994710 749475031 91560192 392074912 153990086 587850108 40696367 316642906 745084443 350224055 314960989 95676967 945528514 993789896 925790127 1061927811 609205235 728426640 525967972 614944265 504353171 186128714 1052345951 950541699 921443852 276862026 84346703 601558590 196160192 459998869 240745482 586542798 1008109064 394086674 323618025 727192941 333886737 330263759 618281007 512993194 396721132 1004280621 941187067 597672082 493693046 550529923 556851404 609044586 191883692 943868743 700012083 20312295 432701796 765983523 402085243 374295647 675502377 930985236 384410477 1059587064 154008447 966837085 225198698 29706368 306942762 946423081 721109019 1068352757 305640621 826473940 712874397 177248073 686984051 457929848 489119423 417747667 307469402 905074037 975869094 843421688 644833495 831668419 195065406 811454104 20620014 556330467 331010111 21544806 195362381 17644884 866725537 1914567 767292568 320132526 455186922 329385091 625887479 695722059 610677923 116441843 893580120 613941138 438235044 502507874 431995442 663772375 702506168 65507916 419039524 451399448 1000982915 633877395 328641531 484880251 224352415 678599695 413846069 629637356 468216306 313854997 1043735657 255671728 447857124 314505906 1028974767 685801228 721541096 857738984 246347365 938484075 672665200 129629231 300757597 612617437 954966299 71784176 507856682 1031433097 399471777 696122976 92602731 97491274 1021759603 675473481 858942736 738830834 336672397 817884891 587103590 224616167 659923751 139249767 802167264 604616538 188802625 229216639 220127602 698351778 611750923 929199194 643057661 711891405 678796623 203189358 745492139 552045573 746628235 88660835 836273582 684579879 510783328 228814873 368835344 1062766735 18612947 70563547 303431252 17436668 269239669 184933682 292736801 121989973 929876356 318427478 267863922 77020646 1021784909 147542644 170355772 530782673 371081404 766953899 582638116 1001412864 1050714328 733775095 783534667 858610609 611892816 543473620 807615379 665920192 456510461 450623920 285122890 1022635753 455017588 250514011 286285829 33605638 322788583 105366680 17785083 514496121 616582411 706582380 433088893 503919076 225289266 529826582 1057534857 126672836 44959285 807787 730243806 252981698 265734266 549412346 1001423183 965002963 661820239 308230721 576725188 944572921 69974999 1032305757 281067540 916629573 605598633 768032720 657343204 211693674 746990629 644511223 1009928442 716438949 469316425 628730714 441241703 942474275 542571369 173592562 650371694 971697928 470897871 713668484 72153928 618075117 837133311 626884381 233495542 317390907 118280723 941844459 63244489 995190929 539026376 158145666 13877053 929757978 459444187 523305538 1024062126 36127016 117828684 838434935 711349382 597746646 646070162 592404867 813783796 935070218 503873161 483966067 1059643914 318803343 565724962 12128023 395407464 116898068 560633937 81084785 27634727 190870704 1065582005 1064188942 561991769 650993787 823345084 963471900 698382245 884005061 572768898 224961629 575335911 888771884 654578118 199754980 87195343 540137052 975084902 794476883 911993338 668064420 914343786 127697116 544306954 1026558582 30358510 1042863472 91731595 699796593 446231955 77678684 662319900 497546752 371904996 197029309 856879290 356256468 515549590 796720157 484397142 623095365 394772769 524485474 478092153 521937303 850327429 217293653 648002148 232868983 83214388 412168345 194640671 594218438 195014815 291822138 255992508 249339770 390624997 668024592 127564253 227458482 865690691 300400012 318289936 831849347 275408053 285146636 26066877 91130119 944325730 301175631 216663968 772364374 757027087 539749868 1018241125 967806558 963238814 376285997 736505490 595194718 105214011 807515456 440837497 825154050 954843456 1002857044 133800631 1015824874 907757161 644723746 374545029 2067673 437929495 688421224 476344025 751603790 628271868 130447185 468035135 896849822 650927075 533652609 743969365 705890261 824624336 557124833 175792992 872194914 1034264216 13393307 654192630 772064864 476700623 309881198 7736640 53679912 306643664 525955202 327700251 963465309 537386335 120212644 953729383 892244690 724092547 371417081 421907615 810592104 93320617 582534279 460869229 76927177 733544269 504071125 748433418 477005313 184643158 222095326 731711956 776608663 1065736442 509133110 348759502 580048182 162211614 451079844 707050714 762188297 825015126 412991542 312941812 345371771 913346828 10643903 229825056 858741244 361519787 159124573 191220570 693222307 11049900 523715503 187747795 835461701 24074635 999210803 659849174 906638014 586059284 451892708 648084749 68966859 829085319 124645258 727253680 74634199 502205039 111673047 191237509 615358615 408536292 305519963 1040794705 645937884 107429482 151730379 981268657 610178985 978885165 452286065 50089696 531343196 953578850 205301607 700995512 719989080 976114801 148869444 886884155 506265742 628991769 137254094 127904102 167021621 600789529 656140034 829274431 237351451 904670252 340041335 431480189 107147695 922536629 955529761 933708133 952250544 313159949 408239203 874701403 179170947 213678115 333241527 859562065 557193774 10911635 996729415 342721563 818809032 300309253 766498338 633205603 508040150 343726325 551035996 481216982 1018381677 27937555 480809768 429127742 1042788186 851002703 781635182 918201032 728853979 545577493 519614195 201653649 574668349 136985319 526704555 797753915 775705156 696931220 964108624 73849241 1010285813 379423425 32729798 225479079 421817376 897662205 723241322 29293130 54838977 540827535 633801625 95590826 86139465 871563066 801427707 443143228 59398099 956774561 648813052 341283550 794540607 393223184 691315975 711809700 687441876 340691770 131399103 594115315 544955948 596113075 876928785 308807304 413118185 754259604 105502526 416408180 902821341 778227627 423952060 907248972 309259617 602402911 413469565 103355290 240909061 855188171 734449477 453626517 277649527 423730115 759762350 952996838 161516197 897107153 240149488 820533541 699545660 942339552 129449077 438086472 722307786 637266838 693024705 651207543 930151755 507544418 432030828 919546547 1066848120 1056839772 380512068 637273446 520245039 664163652 59042270 187523622 628027358 94738702 69207602 910774752 869371933 465550339 656335214 130527696 902418307 829995817 926471657 141187117 976510396 556862514 112129632 978667236 739049604 7825123 32483346 317134310 1025006519 985503562 567805499 256839656 687475585 813050898 753261724 521205805 470403663 170941680 713147193 956658253 637281156 228470395 173558625 30319956 827420913 991817266 666051072 445592238 200069169 592599442 480514254 513141340 690568293 90386821 729234043 1036285094 365729247 438919210 223472065 701674854 1047982342 696824742 224308520 401002361 817076625 717926811 836945839 690423701 281229576 159760091 752564457 1063409949 187374853 877540595 458957411 926011776 607165008 529332228 209120750 429254651 96487661 839568313 105719034 333788787 151452647 817742349 132640172 764696362 38530408 736489269 437330378 284731940 655775268 438469886 337327163 882084667 701250129 96251495 48248761 529143541 626267198 603403401 326168338 788364465 942360003 124118491 985944836 1011400561 204891414 1033613709 348729608 975690178 1045973702 647796443 291135211 844801379 145162645 266538934 441817782 318276445 771834307 821773411 135711769 445607181 765931699 99331620 953195307 175986867 568067689 1039902447 301424816 152749173 683230388 264415947 261591086 16600928 614348468 686588129 178922278 831255469 626696381 959583388 513335987 257281085 157358706 53120284 82455673 910892475 1073141054 1058469046 363931968 443612521 756913484 851135988 735599312 388057294 1039395457 1057826198 811161788 320468482 1059474373 255168591 411842738 661716160 167415098 124190388 662551452 408032447 1055000465 371728324 903689049 54175425 597059254 1025144116 8549688 298661208 256433772 452817680 1065224529 557109514 797731591 805399969 82347375 869332099 221267372 732874040 305906761 267752671 476131655 775050298 1060575626 281963244 903898809 26776203 402024133 337985945 403854216 61737029 955896017 310072706 289617774 666384628 407874960 304493797 946530504 699183627 997288532 1072068681 713457864 331971725 706189482 652636652 882670819 422498189 710920346 458445255 164602607 467101419 231413969 733910607 566333173 58337753 600943281 557316841 191984280 753293084 639967980 566924254 856517181 13724685 712894603 671455917 410976635 398059049 72345183 41384755 128454820 349308997 30646890 738751356 68270582 618613314 623716138 487209335 199415530 237960398 492876696 94804126 136208809 797872494 811995073 703215641 714652643 938145201 884664875 932337185 198215933 7900323 443587898 201156553 648565280 445910691 1061006873 913759132 235863662 264248846 116715445 769385389 1071196752 165261056 458611868 300030623 516093943 817138591 922343701 328255516 598777865 648648634 451151494 1038146039 604539993 994856803 234133749 529043635 728300387 607929138 261327500 844160463 542166837 931058176 745232920 769750080 174387316 773291228 496322061 885696062 205829582 308579924 889822848 963136963 455452177 196600514 456032982 306170997 940703279 124317960 494630404 739479407 275622933 819245967 1012996728 323501389 994799825 523606725 313678336 356806369 453278381 198148511 487701802 516564443 153530421 731433028 100056521 336083357 258016044 625790223 382622319 382639318 676235917 576368528 141493558 1066200814 606049314 570685116 654517726 755585430 226988484 466344201 407153338 843426901 445552349 165797548 207470771 417563308 195298642 451538351 937983706 439623705 163978682 1013604458 44157370 256097700 833819004 75226642 520004471 597880482 443393715 297506691 824591685 50777411 98260351 252909957 819063646 924656823 715722261 164784115 480688153 837749756 398187332 1069291601 72562643 239587843 806372244 407816339 386486319 737912853 1071058756 720403691 1039288718 288234178 269352892 42296161 376734543 965106408 236408941 361421736 224260695 76891519 535028477 1004447978 1029550467 459517313 1038982158 58392840 761806097 553489096 343002770 952991279 700485726 572054484 1049574795 510681695 839029784 386204295 1039115674 791381010 561972101 205000230 632157250 377662769 316063940 456756172 695041154 865199867 746207392 812064900 503776103 891799750 444034716 10793113 824155719 76131071 347861622 432287523 581552386 191016271 656154752 1634742 684970827 77495218 276144426 971695644 679510257 801634354 559832131 668058896 105040548 93605936 1053937482 380517645 278849564 361440271 524588940 702990396 779227466 268659853 806623228 620980750 313934870 915305932 900932742 721460507 125575074 681356683 229830518 689275760 1004939862 383950319 807716166 577145446 535682477 316299723 503128444 978027975 698466289 219746546 832401978 284479763 278253415 943369170 1048513192 1012666641 618248463 107519490 892663019 303160367 236709827 619026236 1002264944 498951620 790461319 605102042 242474146 46337063 454674914 687720077 214393666 27825071 779352773 453383265 86694502 692707222 1000668156 685550635 416952138 144397075 230956410 1047999871 575409456 794971183 208781997 506405138 420522990 959083403 471117376 410230051 59826315 874796219 633401417 478103588 603321892 977060477 634609582 543200366 198342345 443242187 518956007 52929698 829236728 669119091 95761872 509162190 947395597 250646848 1007995223 689350793 859738070 478868439 633250972 35600510 1031619777 345052015 54428904 165708405 545966389 27581735 475874161 140681243 684500931 21038872 327587867 918460148 631809113 183831570 667390917 223524588 1008918073 434578451 715749996 858310743 80720386 740065284 124059948 225314913 216533885 398604256 326104414 700726833 506300617 687506701 245113397 573916789 446947358 784430605 991001343 404376763 738066248 929208596 109496564 314498524 623832492 127409383 511373275 98226815 105563073 571053565 846367064 151064279 113880555 518112861 144724048 377406818 1026909969 851410636 471005136 566713647 914731096 389652144 775148921 1040020737 647744230 475529612 925545286 613573712 975252025 317503740 315298573 786518935 190043742 422839430 153194114 876822327 300804249 732320082 334821411 902387678 19891560 804185922 777799616 913858364 966183521 554751652 739168094 241066603 912540756 193291680 806603101 321330614 142790938 901688065 598826835 63936678 730237862 314318205 891116472 788683769 618828342 561295408 622000085 403722289 7543102 1051139962 122032970 73631583 556876303 322924018 99149741 58587834 396357095 857127494 715756316 823990922 989478714 719331060 775050044 708525656 175224630 886887332 810712804 725515219 774962481 755777937 147273780 378537415 858209556 258184504 399235442 680358084 152324007 601148064 655376937 637337575 305104907 221121394 972405748 478364423 330969003 30729758 317753547 968713622 525328786 411505344 686379780 955005491 858769209 938679600 451981821 604615099 157906234 587636888 531588693 515103676 578004834 878809242 1032575703 269070432 712074547 281893851 729562420 848981884 673902035 554968432 642662152 596428147 490200371 887123855 429502298 1052125378 473426973 1017536958 741134178 707743748 105372551 324763231 442250607 903584269 830963103 954925977 782596726 466126820 516456018 690870496 368322569 44408127 216941011 866517552 960020693 417729227 341955731 833952795 209350822 331416350 532211282 270814967 39696751 192814297 952332640 175160505 740810673 880659263 779648542 304522691 115960514 736261818 712286104 717959281 476933612 513217394 438617057 906843527 589561083 803407094 889992145 581620103 942582908 379308 1029818884 832423493 174228029 938547760 483507182 651735721 571945713 931817421 881632221 991002392 792583353 599939307 110991969 249471323 355622460 452274478 101382267 439857436 580832910 253652111 214135196 364517265 293286284 227010707 506412546 60303347 31383908 356338024 691699854 1062302327 198346134 888708924 977198957 66825653 366394199 299674693 670127022 593372438 295404709 379673074 956036275 456330398 626269753 291629999 115783425 483117071 850275683 963975855 868616282 635756039 296186899 206579229 1072220190 136414114 43310937 843559911 157461236 932598785 1005719433 272581246 72031438 943919722 893160297 958390024 296304008 1039907829 324270913 1064834310 971014235 530527362 6086735 791838496 76194288 898854748 60582644 655485968 672141789 118029728 22328229 187250355 430051205 1042967577 732001487 918070362 906355138 953904540 177950215 779647384 562072979 36212813 814492514 111745674 787331762 78770013 446375175 324602026 408954665 1064779220 980858739 634640908 16834156 24185779 388231935 431109787 832754508 503152829 775726026 107474621 985170119 773135060 562463669 443250478 407578662 416616201 430253972 428926826 869118851 734145630 991658057 70146873 603165031 690814420 658523309 150370809 811336176 180283608 169848903 397791961 683218412 765950027 263543988 505921204 478327120 343819580 100731133 966980438 909892023 34569206 765690334 914651386 681272083 898864749 735307139 120420463 407787861 146788663 558532558 973596610 45887703 256859045 771512877 262715612 918723695 757441063 12290684 957645560 211989491 847687469 246783996 314982775 210878951 700405085 323340237 561349717 688413823 492531971 203616935 644035572 390032315 411987644 29160219 278766632 658442030 1053277461 510175582 448892191 70349157 787571916 198876910 60026522 842294565 612794141 401027903 206799613 502064551 535961185 411519159 392949412 890395464 72878008 697545380 835508725 383479525 743503364 1006488063 739444715 546688424 687472633 470870679 748319925 818788392 983700792 359107291 926917071 1053664749 188219707 811154897 390778678 345999556 164712766 341816105 1021504407 663774646 263362020 805127712 260538243 884018159 611631527 386067069 856839180 966758697 793693983 228182512 800752876 105427863 55539473 577137324 486613685 556694833 1012592745 156927102 833815968 783636903 465825408 207195869 512659195 703733089 738212866 560789602 646444002 330683387 134193056 73574522 379114117 480642921 939565 703468734 411354092 356514681 318926776 584322103 224707446 11852159 576379103 904483444 500906751 269794450 219565050 765898939 515244294 196003716 274758844 974696067 557294223 234918492 529609925 60175763 568018387 1052642849 262733118 23629620 743996635 541777700 1056393394 56404779 465320241 786178368 273783320 246828085 315459867 988059040 600300093 744811955 187581672 1010280223 709015329 91728486 432003241 846978677 511894714 347006475 822324045 93414593 778738190 728452295 766805084 217803827 678929221 451577226 466106094 261659701 639795551 1035898178 451980756 270961843 144048682 914898067 598580989 34601809 942019668 765690637 445132985 828149903 231057258 949023898 885487549 993559370 647293915 236725795 31150963 674716718 94747299 119670736 228915700 714665818 561241999 452085729 298669194 734106754 960635177 44965368 203839826 120320688 138217007 532810973 417054616 505968038 489816545 29162823 1021218560 41348121 632834397 120721738 848092093 972076039 471989254 967697605 32549726 873952441 1031612700 262322672 42370519 336349505 794619687 492251985 689144939 202047047 1052773819 401252520 264690990 93094507 146042354 332525265 24759628 506129517 31599634 735051512 390494000 743468031 513747576 974741070 839230779 337170054 520859721 89724982 373323593 684741051 907611438 842132134 960283493 998063 538873767 297828866 605000367 415927639 234071521 488842083 626516634 603902166 711521515 136893737 339860273 1052411315 652165236 368132663 641355289 211049519 990303721 904604137 420988365 425957360 24356051 469939083 986642710 884125748 24352477 803088309 912833471 422171729 126303316 679512207 560673295 549940235 245691916 316962486 214177781 754848805 950857382 850870982 16611717 89146657 394559385 1025136501 849025153 938282571 902384002 420389276 538618341 893349500 398303749 993514546 595130339 655597353 495161125 775342953 802956487 589636872 340766676 887281883 327543722 688219623 90552571 502293618 165498445 48271716 224451855 152475414 938062231 503350684 227140742 58906948 533268622 720823472 921187421 104012304 897778996 6468487 650262692 825309854 331546758 821784685 400035845 786022947 91579310 736192373 359346731 982459309 66673418 543223400 698251091 585435458 913628117 924275848 744729600 576249694 513270916 840479963 224842686 430402391 943967329 377697908 635975467 606343926 883636092 15893997 382715162 26652591 314747597 1058310177 658414756 480215579 238151158 209495692 197817882 549822075 416669734 205929922 147594416 1065032763 1039714699 805002280 655220272 294824116 615454729 829122658 492041156 104570638 491067641 228716783 661050668 300570634 318626284 587746957 51247233 396687181 283891619 680824668 811017982 589609 417690190 396201301 106666641 211023372 843075082 61670042 202845565 310378079 511124576 387172616 785702346 658966442 969520132 924802712 974770647 42536901 31996955 104837016 611481599 168348149 187390034 794488193 620913514 12346498 498880041 838709798 296273911 439667526 1933334 27943296 323725669 902623178 1072796633 38356023 259443008 1016871088 676612757 257479585 199927878 750538286 817906375 990525793 49849401 679180689 416481439 569361984 665174054 338223026 305051889 876025572 473710550 66630920 177521361 1048049098 68562965 151622853 286781715 598856852 724401621 809693009 503305796 994863173 1069394951 739416262 570402743 95274433 800407824 549688164 776821049 846970166 19718612 179304752 604199347 777388929 577854874 644704563 316067579 394084441 617683794 658159779 703839746 453249813 926296851 23657632 387612851 451372305 695074175 1007377514 135984952 561499512 562125004 554909835 326267177 972886161 274969962 524076665 207967958 933846681 463302541 283629231 253224899 875916072 382848676 1071649419 644111999 547403265 440458851 443080180 238113401 304233192 800934444 916194421 484609853 402901533 641555270 836752447 254898262 135003601 829868568 417034218 878165729 522195079 217066773 170020522 884989217 753808825 799227448 1004150453 470523379 245518936 973826632 169540050 589374330 55726039 443322279 351375548 175893566 660463530 653790272 340877170 498051247 52479549 189618726 160077183 844423696 715476005 461720484 641780800 104285749 814506013 572429327 184408284 534369807 193647976 74630912 634383818 747336684 580047047 1042624195 833141999 642076056 859308283 241612989 690456599 280089407 483152712 606535834 654163486 210374354 681414625 946733158 750653394 790369369 933458555 715961563 157382874 108945124 274157101 926023006 337691096 1004243991 1000487571 764678469 536270290 1071717697 285157697 255203488 874085327 696803989 952435621 841349478 212565021 534287502 631057839 806250521 741170564 1032720963 593970072 542170280 820088350 391050376 467588121 856677726 620794079 10233728 1032632869 370876568 298023676 349418576 352551282 137601934 513447252 956039713 1052430980 798838173 841330379 353627385 977492475 484073898 726182966 56493312 870935791 871958335 1020625143 133102429 751396868 254905641 131324257 82761242 975517157 808628292 263663613 848751735 436476264 319978122 253904569 305139576 999706025 957141974 734934120 89721655 481052130 20268913 635853301 496283114 1033731648 951261906 729345412 575644949 309920056 1053777570 706078498 546458915 235960594 943262238 930766196 355367694 200829166 130043650 601267662 365408923 936910269 37135682 123047924 466819808 461080555 925443701 118260480 475518152 651739995 245189519 274793605 870441161 362300100 78695036 15522388 480267233 40658992 402686150 294242977 29300844 452858919 475320750 907830716 406840451 187548107 684267106 218871215 292975095 281404487 1043680086 152975954 258174836 738247066 803362012 1030736752 365745426 111973036 871470311 934706443 736734040 277286870 591048605 455395948 127280492 760387786 788395299 353398538 470761704 381684358 31276318 583037335 462748636 452081503 786495901 856344827 566237710 421487277 886784292 17180407 795166230 201729356 819492126 541955818 16977812 464053124 315143791 1072311421 854260461 77534340 639964610 419720015 468948088 676887082 294576971 155176044 453897924 875658 244618946 999674988 800000792 722745055 852355767 472624259 867474869 626862623 985390769 715461308 686886227 592280463 783641855 558688731 310788104 442931445 242489743 560155788 915025099 480619733 120446472 565643817 605203038 43589607 288992597 706467905 1054992418 743388079 844215010 601809490 436707226 505609215 395482466 24379722 245150654 1049189887 944314197 660954021 856852033 664078536 1015278287 876194170 718594166 804094401 927352964 1010060901 77703125 594893761 314461567 115125999 641474753 712223504 452892460 690511480 641637267 670761618 407783458 606346287 168852688 399358758 632265866 396322003 383061728 207129240 871021504 304396702 255709790 760343245 95795897 206784113 695894314 755522069 666142474 944134803 202395523 1073006286 571479629 207963121 139157498 692885171 996636387 573615522 790913235 946179116 612874558 494301855 52437224 476746835 817103639 619137628 624408157 913514218 694096244 1023749032 237312180 954015639 326360571 24231719 234283250 859888128 151364359 763440587 257855881 787378309 980952330 112203784 231156584 855243545 119626525 303569036 62253973 355698040 415566566 444978404 765601474 48640127 717880441 995397247 988873681 579414000 398702290 627371500 851328132 233223746 1069354039 703771063 924153951 282933517 26675868 803214914 1016914269 789858556 95283618 1073038402 57875406 877669655 1052138115 1056927956 564532589 77742508 693276161 987320783 947755534 603686586 832688261 629139149 667781335 396855515 881346304 717752012 634553805 222646226 318220219 931215219 319643360 89027830 469883760 712901456 852867444 482692810 141069824 148829647 1047992568 904453340 649263240 68759083 536893197 859303518 618078865 222013919 246201581 482990729 537695083 752584330 290185263 449823081 331859273 1020934854 925260210 132219875 734412273 195528805 340310887 329214149 1072610965 798069786 297276785 301023067 574678349 143564176 601813914 967172656 36552147 1047339907 873458516 585124483 74862940 944042260 919070691 450778110 575141286 587832081 279507817 1068167676 515245175 847131444 1003115755 609196480 200644300 446030679 484475897 83375887 823621927 513898616 919545539 943314433 599112650 522196067 423516872 690333379 982018370 694225366 560141241 350420890 191611792 47612667 24690350 716360050 112037850 391471119 596393021 483089324 326449907 1053271555 893008988 719841564 72339339 448788676 839354411 993539104 379969671 584876220 904949004 11150107 682884983 873926964 912023539 649259093 85929182 767382892 499517064 295039544 734650546 608476087 67966495 204909998 519839876 147587943 1054928246 357581044 600286641 622628375 364024872 353117783 175568129 126303566 985477449 994976199 511513809 689793061 546846224 623134470 487524715 380132289 827092956 162689206 909613277 937465423 751939469 876900483 212359720 382356848 949819831 361034039 699488253 868638860 849250121 977693425 891591881 208774932 1026631384 762428778 564516926 177575354 906947598 314834537 228581949 1030603828 760358092 52213192 374280162 683799957 939578744 523105827 443483082 165575875 251380823 1072875763 223879692 277655528 145197392 8905666 279687199 988503936 32485879 571697527 435550756 856017345 52359347 95700258 21428787 816366085 506060339 308479969 599514469 161029074 784666352 45565882 113418494 318756836 200757406 848924853 317653761 43490771 669819384 834081924 52864634 223384854 1019501100 384164020 459462286 780321201 524732171 908407487 893049174 842311453 1025678913 816839885 73974028 217675473 616276242 266309475 78834269 257468507 479258858 232375138 1071456720 202441079 328840071 170374321 939653115 721951381 608862080 17911113 298940617 980342400 824401702 1019350794 51066838 654081814 88033725 194335192 309516474 884079031 653471580 716445355 996475090 224073015 281520567 1052876125 340897566 431531498 174194598 635995901 449812069 1044560928 668742222 656598106 1072734925 340697221 678015882 602718678 35051839 375411277 517447540 522048754 170111168 603763451 296450207 874844199 16221943 447619193 580971723 111112829 1031311696 574230591 994287966 5185333 643782744 537372673 603124655 660682366 733922656 951513928 490602656 936329291 83785222 967381404 789315675 456325146 709237051 303207827 5276451 594982913 34619072 756961957 982653109 546304380 521989544 811118645 176149727 943061557 721175548 441153895 645616928 402335961 815256726 233189636 455879757 341808219 84228063 235374486 690559830 71119021 576389695 726447664 1057428851 7949870 968273566 987576991 298353341 643560727 353148045 613832831 315169983 936729594 900122831 345487636 592455635 560990248 759142316 1000064569 494221974 39765780 723354340 122852478 329158406 925066726 908710532 103406500 1063344180 821503904 698647070 777730265 730949847 631803220 171519606 1037488384 1040675208 805753420 395573077 913828195 100782803 678381662 339823735 612907075 84065959 588707689 743996043 904744604 934765946 644244410 115274796 839258039 692329998 265996361 390940602 915458031 589356912 254461325 142075909 170056345 585823991 236003994 253973005 582611884 1047234402 351794397 165928985 385358623 999701322 195277849 804076510 830678110 585406221 941893343 803485161 354926022 344497090 841052408 1034884062 695109214 332090509 193803601 330556412 978684207 708688342 184406274 245749610 793951177 181665773 395077807 753626465 851894777 382945608 189411874 648224240 328866094 968075430 617664091 180194434 900946578 329634834 663310050 464861778 514739016 394793976 1025572029 564707589 480420041 766739919 1031307370 305890315 888851379 335743315 859833226 372239516 652601746 108970767 752221479 108779517 202187334 702585302 413304746 1063429771 2780196 377328284 1019711272 72003934 155274670 220506253 496519510 1016243330 274310602 913053782 450217948 382655588 468248258 694906291 791395179 1004992627 1062787192 171852392 394766747 87613228 593456983 294262691 688359729 565395257 572335649 69042885 968095741 6062921 854074977 471625924 1035336877 721091734 483753755 93188013 172135334 71249050 219853721 936210 1002264479 619478115 485908252 1043245138 604924159 1058357311 846719865 81784599 56879986 772513219 783510284 801561008 742754055 364144670 168037937 549582339 294050093 1042711167 776723314 132957096 799233809 590569614 149203653 525662084 923733113 915879139 299415209 698972724 58997168 598726928 675350555 290570414 293506907 262810732 277373463 271314874 304201548 209040496 80394587 722202854 104578148 734066758 211694192 239820742 700939876 835278884 334301011 881206931 929003960 808524974 755395327 913039246 94808693 908590193 288897296 382958256 134113309 760332253 119677974 896330634 585462157 1016984160 543983548 687090958 981774999 965849287 98442325 422831106 421644635 88636445 306450868 773743363 160979822 746918144 824329385 774758828 331778853 695774693 539969390 1052485337 11313743 203358892 705333261 512275811 392842404 945102947 388653531 856323581 1053372985 413427793 257448125 1064442425 829143061 508491772 238828368 1063455900 743154435 437287629 1004219747 622014072 396268338 328760934 134989750 983162033 863985953 277135918 757216633 898179505 849361184 199510858 939923212 969084981 277529884 103776840 505401516 1044440419 401582321 517606765 706128989 388744303 191267091 621058623 563739795 661487713 237077528 541075633 877732149 750382545 244571929 106169280 967972986 44089616 495072810 923476785 339138821 422331579 400626920 577017776 88163122 505403786 367487736 28610536 412600976 908356884 754122853 666569294 994701936 692080701 191936224 1038712845 317762442 247412702 647723841 283236010 67963025 373935565 408599704 1036939964 294995771 398059806 749666313 603483354 929901897 713858030 371444673 862333166 453765881 666988827 921541685 162570946 174907871 402789364 856385612 305853014 952899747 284888522 616919996 27485200 723679593 773524243 214456138 585103378 80386368 963472584 553889713 573800557 293768794 677397489 789231187 303921569 279029978 205313785 514089041 300056346 450889746 346737541 34164168 780620263 372468780 718390432 107432926 496806153 362749334 995360006 233094772 987659444 832768848 683342487 34734602 640740757 539183213 839701245 752481519 1029943794 726030858 794762555 71569277 414292485 556985332 140017954 887078294 496146353 274942215 19686214 735399407 313616854 655908585 908904690 676267121 79252148 167556998 548845209 875502882 565038199 1017058813 475810794 361199233 236477905 277393744 609004578 337953706 4258581 71915507 920967366 597784475 204668073 716440470 1005083022 863666822 1027607377 536610691 225422254 390847953 723216592 1062180470 63963447 272546952 468330932 308018539 1029109588 251142397 161584970 567660541 453090750 43389717 355107385 1039813976 837247597 1032004938 641051385 1067451664 889301113 1058092674 248986924 783342050 232070521 854340758 491949602 261605060 798132744 839894681 205842887 892937176 17172571 991381154 132577568 912647563 808194791 608506803 765502958 229490291 741389839 563788753 706813853 26876095 138911501 70494971 666657043 615710966 432511186 37014383 790923787 240392984 125427969 583250129 192860598 586975853 26181671 755548011 407657640 192861318 917838552 389060337 775200305 924301854 445782067 809864404 1066625624 867202439 1068455729 972531530 410978386 731642430 707348575 868506386 894462409 342355651 492188007 720928387 468929757 492254172 801656733 92644678 844733482 1059194303 126756240 1047848530 543617940 394231424 808732934 43883319 821458785 1057731295 779289640 806640425 973154722 680073575 307174640 260887354 203634002 1062797069 142539444 1072243366 654445368 472380855 135268525 776104862 113036440 995598979 951612384 981245957 220367738 771702722 34864717 887622509 663774988 633003399 345473991 811853462 231330610 898545344 289945907 312564642 176973959 430029026 191454172 542429441 285279101 628411278 19539889 893875566 32483776 40140703 253056157 524580418 930585004 138551573 92671054 83129219 535044877 564076883 618965438 230047817 846943416 588877327 1044735086 927260714 836744307 868798149 89290700 787130951 794308806 987693998 195496853 759189249 937536385 932326335 545444851 304092087 849821266 673558642 919375268 434311462 708873074 234479239 681207327 707015835 60846136 865062781 411570495 209266969 767265469 129568866 632002191 1026516072 597958993 891133828 439924536 680766143 466039650 588665566 1007133951 942856360 843656312 277731711 473933133 310975863 169848155 340545713 419238829 155729709 782083013 863855546 16102509 742909048 668214270 702987111 377938829 931972659 806267407 42264046 1057898887 949690253 219138996 537553924 19255768 961209841 366769872 783100236 424818857 441789364 396256564 20856414 472389977 1027413532 560680523 94787651 75687083 432933933 331759430 396708001 853984730 913461404 203342275 903583076 385097440 1019975058 836083281 199130337 209503782 470748774 237445395 700527172 891360878 207265833 1001081504 299013271 1011443220 340063364 1058624315 310989384 795232999 1006737720 482079405 913249990 699164014 728572371 570770769 573121957 962822984 867831679 532429054 521458034 534529960 927632421 885358800 956560509 905001856 409181008 318919397 264303313 823346192 375638492 920294493 887796731 497172999 875242938 401928930 1053316973 1067976238 187720917 1067237908 643379452 892614949 46886062 942704437 356234435 884942365 393325934 49600272 1071890064 579029659 474811704 537912508 238402641 376458652 996460378 121653390 413678413 962054690 512730199 531646999 267316771 418540610 291509868 37994836 269439765 1001687412 220875364 272244426 917172099 489326669 971704218 648971989 298022494 885749063 163916094 253240251 1055459984 240392053 974087995 733232245 619877218 311770040 674177209 953286184 232964942 938357457 32158083 59624236 466751073 1069652566 416830788 109556418 250557683 25801796 906857010 429540568 320005189 729766058 944977805 335165314 57292262 49487987 508966697 312631483 56784599 107817325 581618622 360843522 527185376 878531882 468368625 223012135 1015491879 458533837 611982743 1070252669 667459653 80922174 331718560 739352619 641411515 909448372 58721694 796002189 624951076 14276819 336207665 1050188673 1054536781 41271702 382450190 145287730 765923493 588256186 259907119 417765434 58601805 468191349 186285080 283015299 1070728419 426878557 303459663 992585869 816576270 769617926 908720661 995451150 878415368 713371909 41371894 270506540 874552041 607247640 773369542 387858582 704595027 11835319 387656333 573582613 1072374776 193608126 481811404 1003261475 599377641 525817437 770248506 897225469 510801750 776000793 384724940 15325580 118468970 642739594 539909673 739618628 503785669 781949392 660987063 377433029 70789660 814034019 603827770 675945035 303934015 460768456 427692310 296000922 831642799 626588202 735355023 430342328 87129656 362943494 829113498 477241006 653818200 547370354 629058782 416442333 8224438 704469078 789193460 906452119 270078032 108165046 1034973374 993577740 65765868 1072218162 738205942 573237024 345038301 511716202 959286766 505398189 481693535 700805353 69446403 82975422 27169505 544758412 668225860 819922292 301186359 997405718 173941254 804108517 744582129 176390264 196997017 435186042 298501028 779980335 701201864 58583112 929278262 986581187 716807001 495667381 154565094 635846937 142996145 835176084 677991939 1018386464 417885214 684003294 589395932 704942994 987504285 221662164 153132964 920516432 105034598 623104428 212213542 1043208042 169260289 834177697 217914000 968817962 257761911 23592892 683065636 243542624 464296760 262530291 412685889 570148188 365647873 96781237 307710283 99525452 607491481 686367268 266863067 793407507 753180464 281641727 888902714 311145105 15454150 179267988 1055736192 888601893 233262914 838737862 906727850 862538704 13163309 960793580 201899937 53486049 832278169 363620235 507460551 392942205 118940476 374882615 937533397 653120007 290513497 660052150 696711173 984111686 348546274 326423436 626140462 684660260 1031578676 781901408 1054069270 157680359 561786620 561285008 786499524 213067336 697703722 179094611 510821314 634802058 321194503 429506254 345451113 945145206 403548495 261619172 922265271 323933061 750639247 378712514 521689291 599680519 943741601 178471076 154662471 553518769 452536730 988376334 169856405 471625693 716636965 258901782 758406380 42501653 524396764 678700948 721017081 682192977 710163128 667218874 534106733 442119465 333170084 982414871 661007830 187048259 848847082 33493309 443819051 551568888 739147834 904732772 612368411 413293915 791749287 108142350 66873712 668893774 319192105 79954891 398481801 868338761 382824963 1038183017 488916435 271871382 789868421 395500684 772027455 816185976 509873016 754109282 288992795 27832730 63740904 461332480 488999567 391771513 979186021 687548005 991961896 821732383 650027527 219759436 335315687 210402406 699572783 600906691 368027760 636052443 159083710 75281149 97598719 820139166 476400632 74413896 660139724 634080704 820205803 806566368 932469564 746428901 954217349 5101501 798231005 832960853 834874968 741680107 735461453 649844497 872283446 396270120 560019215 743026306 908019298 711427129 706792663 298964337 585664479 470824636 221355733 710601167 947717175 170185123 1051462125 953800745 927085670 896315933 262722931 482249769 1045194266 681526595 625269974 1052125670 1008840558 829535953 702319047 812928232 600842216 805959015 505701289 420107615 301797373 582326411 122505472 175931083 359454627 935374067 213662930 873849700 542225605 701909191 90143517 448881878 816725730 885579814 335163125 192579344 268916422 387615211 138271014 27919439 109101841 1057904078 646043354 607833073 989786256 635634457 69365368 909702800 897941259 166558456 161224780 650319506 426679077 176928413 436676997 926880323 145684691 1021501996 594209388 209788797 58226840 466132360 389746664 1031838806 961813000 485653659 41518942 578992187 875665497 524603598 905796538 763838771 944975261 463384567 29025564 92687784 4166448 663409224 158679527 759603101 769546654 318910687 1072371729 272744085 149567003 25168330 865082646 891193781 275379287 381121044 720887958 811298596 327931451 865945144 41393862 876565869 672620910 398300019 932361545 307545540 475166070 123584971 68782796 622821315 621545911 294286779 934432124 967323495 395580320 955987964 364491652 364274762 778616894 630371605 126225349 163367038 193658231 158805580 12635704 622743542 679238077 332259844 690247681 43302270 944543261 623524024 915954386 906293265 46849575 178812278 104064210 62542395 800815766 150328334 676383351 913532747 438477198 229228454 786250397 152484425 768779416 240789631 889047847 561257624 272712695 608040534 95859755 554270109 138890198 886788059 28632543 169820991 708719050 695891783 801422887 532575502 590741670 1027155890 485548637 125233699 846028352 746695886 288891743 688246584 84805240 491852574 1033829010 932076006 373420538 771068591 486752480 121325589 444747218 1049304761 229425405 94857973 353506689 772335665 102859961 357975452 246442067 124406789 610673496 153322888 633236790 552821429 100173219 669022098 653765512 427353102 634614435 472791463 110535319 241124303 408213783 635722291 411613596 175960867 25853803 543097290 436912736 526339921 1021528122 130632341 930117522 531659152 565991485 944507716 1063060401 411064177 538739300 69154468 118244071 670462235 47501892 513398697 293045378 917834266 948376203 114277748 1046517645 506414788 216686234 329180808 1004961484 503374102 29232054 180223467 599202844 51413015 1044502971 376343843 433632236 192789138 102996743 979583530 330899054 745597309 119190930 997858447 625410803 164246638 317429021 469775517 895171326 959784334 520940453 562908987 713039737 396611765 2564912 503796035 1066557221 863507896 270307976 269328213 999084083 366819595 920903981 864266985 196228935 717886094 425224946 1069159422 85999481 323182460 901375577 1071087528 925579241 334298316 592342912 724430269 987952071 364384021 793732440 1045721939 324813507 1052877283 404542150 185475604 1049184046 777771108 668913016 872872033 1007139096 1046467857 925068767 834296822 591650918 439020640 561270876 525203890 944438974 936606275 59034739 966953701 719178665 433817550 760438586 742343345 315360249 286721126 597811711 472066401 78447172 817996643 177174506 130006972 433641932 806370295 556830039 115548214 724392249 38323527 177943398 357026055 763527082 699288525 81119474 953125940 929117451 881227982 638268973 575770919 56618104 99069197 579139749 299032185 983825870 1072907517 1036771750 39530167 359759606 577094105 314788949 365615850 128623847 935592182 1020561282 358559878 80760130 450847329 952574778 288928075 592291672 160896297 392335012 312012707 98155293 365543707 893112169 142421025 586968325 20410714 912043953 1038894062 657060279 290513759 335082303 108553727 691811735 731992239 396270460 899478578 971818373 440613160 3597354 937253788 163391627 65623915 1067279937 764825248 548230268 1015606024 91368843 849174982 180659639 528330010 962944045 416613151 545003356 22781738 840013984 250626773 679206745 593349861 191553929 996129758 928988655 430022975 131486346 410774988 826652080 3317632 556000616 17129442 764405824 1054313886 850114693 555207660 674817728 978255673 548366290 328917459 280694696 548705573 463439920 813598167 941896565 456989103 615177921 216922648 700137812 371918754 245796804 356842332 374754360 831678709 55140610 998196854 722272602 364239318 530016053 263031176 568245682 906539980 57972280 777955212 402573952 1064220540 336692993 184515067 946752629 795823751 413259419 100577579 248151558 361217432 610874960 17415217 718857518 485066797 346096742 113555575 524942599 119582023 861334578 355842808 81997106 321676190 372133638 598547788 621988192 1010065010 669364797 595920569 648869093 3668535 168729032 706823643 7880737 212655385 245486433 509682432 403535725 990088838 587726592 682816648 397072002 1005017836 429318083 134303062 162878289 981825272 125816281 956038058 379839003 685565226 669349518 1004010731 651225118 996113179 8437888 906704959 486436689 228038278 913077347 38507061 786138360 864117266 861179769 919764641 65091303 397996969 615497042 690203008 548556787 673277286 718218894 828214159 364216743 386829721 741109890 863148521 277495543 471121800 975394959 753296912 181588312 378575924 323483868 300110708 465762112 845375529 115893219 189488016 7219443 55652979 155781768 614165768 248040020 249373635 1025299436 73510446 46028387 918770825 904936935 839049258 467941888 852264493 267585480 957447869 32916298 416913663 509987507 997486771 210081028 572147868 192233518 453379685 772827396 655613144 559736812 182160101 82737623 161376133 871491692 789701443 1039919648 950183404 117593041 557084478 1049260601 733824324 447270940 917319704 58539509 191534009 1047355220 385241203 809150289 1049543272 91325866 983028995 877464510 567422910 908640132 828741501 775690733 569854155 288188982 1012272124 18442261 753171789 131685241 9386421 910011849 237759244 401774805 750098492 661999061 72132053 680961954 101068312 771341090 208941552 542455684 750437861 589685511 829619040 249526928 928244042 71956331 242601581 485588020 960877205 1049902925 974885549 651827064 936030124 156394924 709699082 458175711 656668512 823343892 477483589 206767826 590017023 232132954 111163104 969959218 696221068 581390364 674256614 780232769 435863462 985458344 650255346 1069791378 32496138 683180926 383346698 725676703 210246247 712862465 351939362 826220267 746521432 785595565 17418887 989081387 598116489 281236216 317283468 218937004 446036730 773453698 322836172 16349541 86326175 460936310 339131232 547614137 660322520 878815386 123497804 434868395 441711217 562837883 196040663 548689996 673070586 785968595 444972865 535528434 743635517 338939393 451302393 53813854 596494332 920602013 363988825 295892862 719641109 751916475 239291751 145557591 8410111 1059528908 89609953 216481872 1028249266 366499320 823403495 84719943 1049266021 894236489 967989843 881125666 109371323 334243342 293028802 128134044 326640097 610869437 64528318 106465918 434171483 634399685 36668290 384811628 964094153 766759575 821985756 939799806 556430820 740686534 842906544 272777058 1062555654 902524860 824174508 1037983431 202514355 698434904 795596922 895282011 582071142 1028095096 369283545 677092528 413517089 267065047 801421358 386359213 154974781 415098768 982226019 861260753 497702544 828394259 930370512 506304699 840950393 502826798 909342324 502024067 146314126 510925833 24205197 806107058 303555602 893570158 321447626 701096938 436943292 679186934 668563913 543030867 468600273 310819432 726497500 713995497 268271508 902828520 1051216166 303603031 171473165 933110106 671967266 611066279 909834584 50135098 700766037 389670924 310091483 1072387919 755288678 567469508 603679800 15750067 591047187 492187181 262974570 795315271 948491423 867000157 980227720 595724626 175943351 997299810 449743868 460853530 298819130 139478095 851125554 304358131 288154867 858620568 88941213 331824486 208994139 320087771 881411893 259925801 530087331 1007611393 875785102 379036985 85959179 175394619 703076784 503902385 856975481 291346572 272781993 413436018 468547903 1040724405 596717957 483839224 857985167 143768804 157565104 981363444 29142356 245577227 76928051 1016996263 729564932 1073120593 570446292 1256099 183719302 240100428 315505396 941311750 289510102 126919597 118348327 600526750 340752045 185399547 826979257 201510682 392089066 626010779 911489320 139626147 259193003 535254008 436294529 294670486 125145466 197287174 1000322138 364636695 946153237 117626212 884722340 3217997 805247289 875707383 826010915 266673982 716870412 506495736 643628461 357002196 400502292 207129011 619495069 884458058 14077574 767802425 289892277 545110254 297262734 730802410 974869774 587205876 194579793 308140226 443873096 522419383 654443610 208465747 182695094 962005243 1073049645 52982042 546704489 1012474625 828192792 403884432 158645783 752372665 673043041 1023109240 290450476 1017788404 181586164 86894870 624464630 1040994765 591259724 474139191 76388945 1066937093 446678394 1053177955 976746545 150177986 319217988 634440018 992020482 369197401 390055633 110821975 897975943 378151257 296914552 290769305 140074858 264427332 320653811 363966966 172438840 59692637 774624405 667974757 1046096408 569079879 440603754 217369678 652455213 788788802 678318791 92595955 535310782 567064110 866420513 957031761 1012361039 898338670 798653469 532682071 180370089 546564150 989088427 665001526 274965221 390390938 1024530679 251320017 60507702 45489724 903748385 85249028 458737407 794466762 467329289 876395822 11719896 160297221 838967091 682154825 207160360 678860570 181462182 666022934 702212789 508172714 178530347 87309039 570961107 186884537 657901438 756025871 934206771 1000057605 391964020 895289779 1022317194 356112906 531899756 502835908 827109135 136353251 326212970 787037809 929817409 406253765 149732265 247949373 884350317 87976951 249690887 953129455 152873356 340027888 949663014 970194529 1015554841 146033211 605720825 546065727 260724688 512472195 856417195 135058663 1065972092 520010394 804709816 780178755 23070691 1055469301 985014346 116891488 277099540 795568339 527005115 275535984 144505788 229423997 569227384 984307632 1062962610 299232104 330069582 662646398 1009795236 647266425 1053551901 904268306 893460812 683841784 572804845 335645721 579353346 487022744 126810429 240159691 233053495 957216256 763011479 105577035 1031355698 22648965 386815050 527375334 518613631 203377918 341606657 1046911756 381220289 627396502 674195587 1062855412 654750098 730324641 184614069 1010818908 331021104 183289 914817968 286539666 715083353 569556949 964334342 864791380 517372736 462214109 988491031 691278450 419051678 473281718 815395886 761718272 952212586 886052799 934172552 868039739 453960980 432527556 720417021 664108750 53361296 1065617440 888017619 557125320 29324783 678657380 407081008 674678998 937626223 379345307 263336153 849043294 403612867 616152240 944231407 842197459 51175277 704171750 289119331 163721462 682645725 10101744 290785010 433588673 306147590 60104567 142571238 420837266 985968513 1064933986 639670123 235073558 265284927 567971063 849453511 393398169 552062721 233405130 371261420 151992242 403706349 20142269 648006422 466968604 682753447 965359866 93523621 1035561206 967933680 678192037 953436361 405489152 649689055 393228716 619059313 766335053 777955961 885562401 972294010 446040729 757404362 495032898 120935216 682238866 150458637 130511231 192744195 397873874 1021027680 803856271 281633693 734686911 785284554 27113468 281041166 706407014 378310082 81253619 868299317 146632432 644346560 160129894 808153380 44309654 812500507 920236050 72835562 389752457 752022159 856533139 17305211 771751143 530323868 351912402 822651908 883079128 32944044 892796549 630879658 204449338 111852752 703740464 361477721 25520550 694097038 355293738 216741633 390194439 67102069 65371692 970806774 302661320 687243408 139250962 655870304 540155306 1049964091 596898546 708061663 495500153 338749689 613324039 174249067 138798672 237716975 1010860234 687460314 385613558 184778768 301057682 284271250 226527602 780612698 1020281829 757438835 528082740 1014051026 185549917 729383601 878740013 416525803 1012171601 398742286 1003776681 56305175 1003908004 792938077 554476846 691822960 751771266 368765982 206471919 310855314 608396064 692843924 780746596 294682855 265878813 264998681 236239782 217870270 439582801 735235404 110050480 829129545 273991904 697204426 834201987 779809003 911062561 847822801 659880419 865486088 289044464 326451239 599779529 12110430 966652413 561992515 636131962 25634053 700080830 331384045 617531950 233350901 434793955 860755891 553675276 901424329 1073215359 246410099 973652536 383336479 317109420 394294184 927989922 316970064 66065232 744640690 890398368 806161058 1039173940 518701265 24271024 686367245 264002866 586661496 836076581 250549840 257708655 1033791701 325891992 909573749 983439274 827833345 148575305 626398459 397984974 1027468239 305987793 829389559 586405254 452209783 625810491 980972475 544563668 216666085 133482342 731435794 809859450 1001367566 171614063 394232250 1030750561 59699289 562294506 280859657 22697932 585936443 769001768 532650640 315426025 1005993030 388830022 693115844 822648763 652474599 48407555 886595903 55844067 325596208 240957115 682278431 154507033 699857411 35202941 492026015 729698043 124245655 756917936 831824732 615433652 958872618 190024201 56101522 60278477 952988033 441943946 664508657 793137151 467490344 804012299 139621969 645141356 528744344 740836731 970497597 12167860 377816595 946269541 671719176 743099604 863147220 522774260 456466196 601390713 744565726 588360828 1064830993 24925904 588721875 899927783 863362805 540085197 268797054 461503073 138564433 824449457 556247345 924884964 89606866 31459442 613745727 775914285 565082577 331563877 529037427 110206342 848517616 401872753 691340737 482749489 963861202 657344727 425173640 1058119790 39865967 258771948 189857776 890597836 20809820 220528913 1860462 125279015 478940480 58859576 454925803 1042111096 582508386 216881718 354182287 192838330 748299320 226409578 102889990 956752156 279600694 707644283 227258151 214310053 337954131 230019816 1070557940 819207882 26663023 464624218 988650835 222592337 916183865 1070340380 661291236 174283939 421793998 95887129 686695176 614027046 24867862 694480598 1020737317 675820479 932893728 322728810 127780590 867903993 588962104 847510642 381923745 625253124 565128526 91322926 675258286 78111163 17680802 1025637844 563075880 822285229 529979264 1007472796 379161124 255015208 45222577 216672992 557383183 42609757 152892343 199547803 347166575 69896043 740539276 325107505 626424799 933258679 36302227 675550300 60198474 12950145 491905414 847469266 761842435 743248970 644634692 550635583 154878128 635746100 1040216938 22028009 261024163 600899395 958025813 489871674 20201414 133001668 940907750 735629813 443204288 890402405 678360499 93017715 727020853 535403179 706159917 902003701 189688705 1011823247 815915681 705985223 893105952 601942573 131292391 276627297 161003584 371943848 574013445 938718024 213931137 184136730 325559116 413559257 412161545 559165505 79188310 441906098 515033938 241717165 10521369 1052892606 770012604 636681948 297956967 853284351 927494569 1052535775 554169732 25586193 773953691 793005814 886062162 907504490 864293268 781729405 675048312 630091521 399690337 354206965 61125388 1042904247 498365352 443449169 794691969 1032792709 167618331 913012290 236229599 14825323 205497615 953425260 15360272 810476333 748952254 982323371 754329917 300882328 869471838 212854412 54019505 742978407 254691201 915451523 692394345 264274776 4569403 1015362093 42601858 654710042 415777983 883788619 616529517 486667024 241411162 957607961 887130648 887877851 805337776 489657263 930324661 1005979428 972837052 17481081 598167091 999290616 732198454 565925855 150829416 24346321 961540158 338330091 993275825 970920048 658526509 586009945 506038187 607561008 889825598 463051065 203196234 1010069422 207247775 549291991 179576449 345854164 718519488 751081433 286060730 685625001 885376461 654583378 844527673 126276557 484795425 593955898 688955137 665042602 326595515 922447200 775581451 46279938 142118117 723694244 350818448 688705352 1000276780 439533938 905965120 215309850 987938347 695009533 887607938 471595740 397933711 673978280 239461807 870936341 559238533 876479249 432998927 707767230 567982368 677670823 868779689 736929961 381275780 609140085 756136388 402903736 649524545 933186216 342917933 385030799 272384363 541428353 967590172 530207923 896996771 744589364 569015500 485992683 671287169 1024773187 230360423 91583501 77518424 87552996 435457688 332958643 384668733 801121980 862417129 444451846 18502829 821898545 291261783 359358475 245836205 550921519 687950971 1009200501 263363217 5794097 852576449 912874511 592144210 589784697 480853159 548819256 723758181 1186527 876446849 890866333 973348550 897797314 716164030 1031933103 927592103 568077816 92638371 56928278 661105120 408426587 443362108 875564258 1071449751 965198194 1049047074 28560292 439366549 216241275 1037370620 70829930 522889064 344657524 396447733 68043311 710614182 845811258 896279523 748145028 588142361 492905766 461276913 565413122 352264314 877808247 861124968 1016144475 208398422 900252013 169217705 551209621 792734450 367632494 534969542 328223269 70940930 304315065 441869343 114805202 454927029 277769694 535337699 232285546 689934078 791754659 555160774 440847418 105163126 503848669 407233571 378314270 387103813 276582223 842504022 85909383 302139577 893841590 174697172 548574773 24959530 468257285 1010904951 295218543 120156661 772998440 739324433 822542387 110237992 207100286 1060059040 1056013845 878961650 728272576 93927588 198501063 532021481 289586148 191078694 112504253 78883625 133451469 55654279 176027402 175744986 18970506 814206782 736528367 745678997 999670928 854755360 540602407 1059386269 521767246 189794473 531471698 98046430 253639688 516033972 131510730 39328616 930754224 458649990 905029505 847626284 304238900 430870730 102118086 370622379 982790971 603759190 960551837 342448504 1058739724 298255063 1038911965 287532454 918223370 110538210 962322834 790981707 437256597 590380300 935046946 1003159177 841733535 302312199 997259632 910904147 194290230 700635353 555353165 450654250 172492782 280760748 978737438 922375605 209029212 422082070 496799840 799268727 722739682 89577679 109548385 164521835 732404899 140123214 958524419 851239693 443842126 18350391 835807052 534296105 416411418 606075149 1007605495 672470226 604481674 546315442 832966887 526762163 931455014 492806880 448120379 608513721 847620119 265817720 598490212 865919264 1043138340 727051018 985433242 632570904 461682699 632529977 378328001 26904217 918680897 800210055 357349915 510056085 269658038 573677669 370837704 168679131 384930267 10771374 429855944 343451221 932963195 345542750 498568292 935519426 959093899 685568726 476564520 503877164 268252415 167057888 1030758176 786243055 29071365 617834761 146857844 199969466 677079498 469828512 58535531 175576873 934061682 413470826 1059739698 957693114 945500268 173290288 289495181 110724706 764129978 30041908 658858897 511303352 830519943 594863526 399395531 85361127 306251242 770946612 967072000 232584936 916342320 190038868 1030649942 102320802 215154918 489397293 178842851 80429087 293757780 410888980 996576276 983320039 263893065 912316680 932557850 99162103 673077451 398801193 845961476 535720979 1015844935 16361352 500515111 280886179 369409464 681643077 1025010175 899856278 45915471 1012863449 436299507 570870761 775854577 759224823 658489176 967835525 873142065 70117451 592553691 345450722 575338233 868135931 1069048187 726151303 715716926 534814270 172533676 594346584 426061038 152986409 305661561 429603481 914310360 342696956 212586064 941347551 652708914 294220412 120376725 796709109 787791260 589499683 782307770 355317191 900091068 1010492114 919613174 649187826 342271155 482439324 480156722 517558269 967570471 564299488 436932476 78674089 911795376 738930004 403395971 173789238 810182484 98184719 163523093 863556539 480919086 698975767 273198443 324483764 166458365 311369460 653923886 259992408 616112992 627348876 551070554 825899900 122270480 424060138 468306578 846575587 135325144 940098423 156190059 158138971 623525333 208323761 92815692 126174151 767502985 795574181 346445770 947702266 41836556 873416926 905789285 650266916 1068273539 295159508 677981751 1056664018 621822965 435142301 443393545 367394668 885047264 294272907 419090631 212335708 667767787 39979859 472010865 195765551 830051168 766226600 626274900 781576668 42950239 483607800 811968372 989712881 352949530 1060039541 734568797 690997431 732440032 310658677 832657769 759792289 361940603 805069322 129506161 348630288 158096 740512575 346726366 712912996 67030283 49716103 214073119 605915055 42002585 519433759 688149676 494673875 289117163 280299451 797626441 448307871 412575031 270547210 339968840 916272955 257327015 475718680 839948809 515751095 305911980 913852669 501353425 1044557359 769001471 778163829 325671373 622828962 124891023 65636591 283473392 171608985 481458898 1031539462 465424212 753007989 1007892371 272101165 997378389 888182310 79496489 946468041 50804728 857595855 1012792348 942634087 15880838 672150458 639439805 751399740 41211519 422461834 611527011 401760759 773931016 456416220 550063373 887213744 527623690 186007773 253923541 883651038 747354697 1005284167 470435323 1004267734 879134818 789156921 352011399 201209233 738305365 462948812 976838551 314562739 664804644 998284425 67640055 990801718 1034539031 207271813 12663088 959450946 699824125 965058106 606697189 929009331 426622644 536967234 334629537 796698367 1047212505 113810370 217696490 1043240824 772471659 368053958 223446404 580470645 1005945894 652540408 175578063 424354917 254927683 648087152 78391374 142142628 899421887 853626267 563034080 747419238 450388128 424619284 596738306 1052364731 815431947 499134374 2025591 353634181 872937603 381012661 840650933 73548992 26629525 44835428 377468625 297683025 782103304 258697491 413631211 419726428 980571098 54150190 117209430 321845989 559578580 255764439 421662592 144595284 333067180 1006698342 280202196 384537972 984937870 440688122 229727402 929240123 61442593 452315456 556998508 169980703 672406107 501333567 398509081 146117764 102167651 675978313 440005089 359382762 507619548 668841814 434607307 750635320 328535445 580507175 332092298 1049146491 179775926 714164599 745305439 854449516 699377894 265988747 416266073 308270170 429934034 723828345 41397114 922671195 1023477981 822076788 815275590 634350539 779703964 699277819 1025175225 632367736 733490956 137425571 156714892 374106711 810265742 369361480 394640030 1055347649 744922897 409731903 849872936 996711112 625331686 771142086 288313060 893582513 678063218 141908805 201237519 477648831 786947393 535190691 999623235 955876959 397978261 919206687 1042758373 92713284 492951958 12511962 827859967 539448086 160982313 108773202 308965239 619316077 164587712 723821923 736098580 441516280 75095697 719395905 830252496 127767815 98227901 500912046 661698774 821261572 131909827 447428090 953539394 626251224 566937421 1064087695 631643786 638882858 210524269 742564313 876722607 576328861 12447691 137022937 236061027 405145056 713426493 276163950 185026576 631373545 926717474 876337007 598271169 906386760 641675621 855015966 2903877 810227742 172179215 293810804 518994277 481102205 400100664 755509255 1048443002 207841378 794572060 349184405 953056162 132686912 696648905 834508911 905496085 360944531 12022967 1040625970 221278123 834080385 474469948 930312406 392822851 718190866 678735972 208915406 518850134 152554706 47739323 962919720 463928164 842828790 1025576381 615474961 636614933 213656630 382448370 995397315 537793884 969933900 883989832 1069280575 40652278 941769564 52514415 421765228 212061251 303860643 475200058 760008147 271122173 557986276 95948524 620964005 177806363 372153522 866681592 544775456 183183586 408895844 229884740 246963181 111058409 536333965 881274564 1057367769 683055110 658383478 732926843 1024484165 614151666 452075096 75973206 757069891 12071257 785545981 612284567 28117802 672933371 1021345145 929136648 721473406 119045492 796931971 191615973 20689120 662493955 563176498 303470699 223468461 1032866057 608582637 981190576 656373703 882933830 694563293 610563624 579160802 976147061 926824971 699367486 182673368 312582440 606485463 546340368 346323850 230804968 576602787 82290268 430944609 251615437 564500069 332967294 931721824 907636349 140273096 738664297 30086488 461173419 911496257 1059433758 303735548 640931442 440369846 595639490 322308868 413033866 626970345 145696375 763798414 498028199 228413846 130947115 507898704 794107963 104574532 598156643 651649566 283555341 55422482 469936740 487881705 668455366 940069048 149895585 142989126 240832177 1031745397 1019912762 719859216 713400911 693427334 583429137 725870337 60840875 899115117 227569451 865049367 195571140 689882072 857535983 352031439 572032325 48526155 191904674 1070167379 1065834494 254844706 929440808 876267436 429232054 735774868 673770453 38068981 849687300 119257507 621944743 778130915 338315889 428169807 781931859 895351122 341582122 422015820 630796368 407041601 627724380 305342081 659166485 993457155 626631658 537669250 977123318 465921458 250035658 584388364 341616764 378746525 153965454 927371291 124618648 528434181 670166182 71319547 97154811 877201208 927561869 683891914 594967540 771402248 957742047 1066749269 798369744 1067929334 589731797 24210356 309024873 910959267 136682464 549916739 233661518 778198485 1040788069 969825046 200331977 890475672 754300088 729481288 349287076 88679872 358634328 705034083 281614442 9150775 135886139 223271377 907816912 24030149 301007349 687086238 80707284 523734527 233795848 116679008 450000788 381013055 159767047 130032375 548358201 902167570 181136592 68293552 271744173 932860944 609086483 811575569 119262954 244188157 357419033 400357295 810734130 925007140 469821796 1035782400 350590952 1008825461 191505669 129142961 1055116141 219137766 347200708 72470066 1039902503 742484956 502118569 58225978 1018443768 843370544 482741939 891719940 979478413 1038192948 609575797 993911149 1061818062 107117105 577932803 533442725 131602997 544699571 936007148 1051775943 162096146 115201917 227247554 949230717 856768692 429669556 74908403 1032490675 327575660 12946773 199627215 938625136 367019190 603833325 501040892 71999838 786714151 852503849 203003632 753334529 640979248 117811116 489784917 31419784 397775572 174274796 178337976 753410139 377446101 158277747 319101517 993156601 995660273 435043213 257754130 380722096 631792752 381248886 940574220 303288252 636856422 335812039 947493823 1066246168 190186031 1024451068 641412913 54293639 634465528 837067422 622305598 437263386 928146521 11523857 530590579 55951863 126035110 508213435 950679113 513169735 699962638 367444027 897998375 618076708 1391754 59212967 981579034 726875700 164485373 699705115 501194322 931355949 401812243 195395539 789797332 486187790 279543760 893657762 421699931 201367311 164508718 712642418 44252675 587073001 11091662 829195916 868362372 993649224 990922203 764786231 433513710 100215061 190808716 86302576 79918345 800921900 875492522 742950328 870579808 803002381 553813592 748516039 272185854 973376973 250734920 663179529 532778320 275858503 680010731 978143055 687107587 430094389 435867363 1005091396 548573046 659359017 85255839 742381949 944555025 917254846 841153035 593978306 599240663 1040040746 144533331 755349840 449465287 88746130 136103528 1066776392 786717224 188556609 59128596 399857262 70783654 581343783 830561831 561118968 230208802 469072686 731743592 681023910 569229247 220424455 146812946 584592790 739453982 122216539 72592240 605686458 950824532 688625931 87732275 1061228524 501396202 618601575 847180499 85068175 41285162 86928205 789529351 371903205 321121077 877882850 522821813 63700184 958954819 241365391 801473188 168892514 152926716 615092330 881410594 1010192198 861474906 131589598 575627872 366075380 513632408 816171810 273514834 601886061 796624259 360625657 50131095 230914152 1013674412 549353229 166869542 670692293 642737467 148569058 114674652 674132100 794742960 798924692 623569904 409156157 233485865 571321793 184794799 673691264 44538017 833029935 742298294 590530528 764558763 1049111158 179571554 755819869 79343501 159087144 637411851 291189559 195608420 289518160 110187012 282093044 925991559 531688621 697041227 606780689 784184828 931367090 88151521 102854993 616006846 473181667 579322187 740373907 647545559 221522631 348515712 119027604 1060375936 847590337 360579312 312062370 825488459 254518640 319043919 697074029 362157631 453710307 351566536 165834351 629372360 76556357 5507213 691081845 623795144 481872868 551114456 23783607 951660997 174412578 666363280 937104036 189398837 1043839654 604573698 226231397 515841277 697225759 781609183 9833036 133200303 533593217 920356477 388103806 591098615 739532713 776252144 387389808 398191828 129608828 839324155 930206646 1007847882 169678725 98245432 123034026 816960588 158445103 433579060 216339356 172244652 32473052 1022789145 231162851 269890061 19285503 1066445621 221867063 289529332 672594956 919533049 213743871 370571866 839476906 672058693 49479003 778100854 871898814 405459235 903012606 310083749 201629059 102120369 946397984 386731298 659520706 328399973 709342186 912742440 786225960 1058403404 920010509 991363192 279869532 177834276 953418516 376756652 30238548 123359070 988034310 433827752 755958542 963579384 68779299 645268471 266154124 416106689 1040024992 913332188 869418792 195395205 469715011 584424789 894044362 262656005 897059278 331963621 924542792 464579564 672692193 102050185 792900716 333906361 566967609 839659506 928236390 338953097 1029635052 282967111 281168691 985379608 846754795 904328606 854672575 823654918 264646111 29493042 1044249776 132304449 866261200 356667405 500353867 1030433952 1034936640 538042727 831558198 313459875 488614105 494479423 849266928 473849473 245539648 846092624 207669202 420736264 475468476 91950532 428966539 466800541 330611284 280402341 645761602 285052623 793308979 226879772 428755752 517312494 263706801 694616278 639776045 188348390 131796074 912541557 94930562 729926041 930901867 453249754 568386354 1037062708 530698350 543641764 753607117 932423875 329517690 954704557 28189355 531241277 344241292 765999625 1073387595 47524345 539453357 447654182 521430425 847168524 401527704 165539128 715786151 166855033 401610826 1044824931 926990085 807651824 410786362 760510387 1048408894 313428069 69920005 855813963 1018804459 192931474 41863008 421387835 992489292 398827079 1052407499 697369904 700516132 52259732 407638935 1001847873 417359990 893596110 847456395 714687340 1066396171 440356377 343018754 761680041 470968717 712565153 632671704 856898755 360224131 295290961 361844141 351582743 178068964 971169854 845877016 315549644 290303288 413661858 824653387 800255647 356793638 32069947 745613967 909080789 276504443 877440745 1045401473 318984735 201591115 251594325 493421236 90828744 761604102 900812244 882574640 512882521 45058462 280078510 233735358 643106580 548019684 711254554 398171726 974957902 238062552 450332723 382626215 358941826 694545328 268501174 703891132 71254270 208157167 448147701 962732354 692086594 709675996 675095341 412867289 926813371 320314542 388015679 223125362 430015021 68871419 239628136 440918104 34073107 65076010 991793145 852395865 164507466 103971642 688068673 137707147 802871600 138725794 18767662 428009806 649021230 308988130 714878370 1873379 462790704 540656558 170073573 1016403785 418793073 954003472 131986743 124149239 303886672 385505327 874980668 289683248 355967900 352422313 680878558 949636243 126026668 152751990 774323490 467430538 935756572 171844726 107064931 227732206 562218514 537467192 325248300 396427770 745975328 797306785 929049548 828171641 89121178 706747663 180560317 299133364 641409841 587498322 108739920 898874739 496380581 169752439 530963035 46277536 730849760 424827323 289121622 611263288 992424130 337693870 904807381 909772745 13659878 252865603 485606239 786760988 27189558 678833031 520472061 193348812 715486961 422129832 732857886 17357020 390820156 413027399 282129770 701092839 852340295 784324733 779810162 785506500 568192847 811817772 382287419 914094215 490184420 414884847 333835894 658459685 397544594 1020887624 1059789983 178220245 143804852 412004027 161311820 373761041 950270874 240789216 215185357 187498037 590614569 734360496 203249112 256368719 438567977 431739754 548014094 646960549 587533248 444689698 143364186 60638918 706898798 186202590 89133573 439098705 358127773 83110735 772828278 869412261 653034104 19478615 467587246 104071864 1009463957 681129638 390136690 535179807 53846928 889436985 603841107 408474896 347230627 797133505 817514077 965649404 170470305 832080788 96198642 567890618 681189949 647196941 469351110 432889128 559359285 730400005 780767285 538669271 83879198 962940241 798996243 605229283 789251771 1069824422 101081385 89582470 318122007 1073464835 697647379 885231012 881184788 587862466 501324978 676783842 752184132 996509384 516313000 458776667 374036447 421510891 172129661 732807856 649892482 276790947 710271167 411233415 775807215 1071802492 326999355 9569262 1041097488 631900914 852061189 856417658 383179193 741910905 200919121 608194240 627487611 613009087 834131894 407964059 9548169 1029973560 665018173 443953002 645037605 353615772 812726682 564890473 60933877 264922894 275461791 575732087 343227607 450464520 597977439 542942552 452216716 802485419 933817434 415748840 588840322 623096336 438180557 152213106 346476364 767699449 464034782 540849936 812338322 890643393 578065935 395421269 12485435 905061930 832481271 538921771 939775316 103637818 504199778 1070348240 960101667 289189499 455087148 991272276 1006295685 135141865 127659337 876154768 976446398 487497712 396116857 225320547 887513612 222261112 813742479 948122332 319121054 347826443 812894631 297641384 798403887 600190750 161663810 563853440 179738727 196417620 370781593 69658597 261374662 855892459 81852719 446410029 271493490 945928678 999947179 68655713 385928903 765524663 597237618 65360498 1073267034 87665147 1008425793 480945991 322443467 1046560970 808544406 554824489 154137013 709108959 423092880 634455332 41514681 424626912 797034408 87546843 217444354 607255051 494534636 113090911 298922903 1001796492 449929881 479168752 26604550 448395870 48579587 803032159 900441851 585628539 976827293 313037627 987814560 1003901644 419042641 295859281 969930844 601116308 852669005 1057803181 185796951 990916841 844718476 591926345 1030432708 740530121 550995816 142851995 400328356 391272629 86651780 275613266 904942351 598248150 695510974 380719586 194209136 571338356 391473474 955244253 459920462 82425323 538704624 387206869 88197869 409302244 181368679 341575230 127301933 578810180 251947888 877604028 52140806 85954987 757142791 283864776 783331974 897574753 404759067 253850578 278145866 306992685 475867512 1035207571 807000040 673091945 771644884 37309832 871970513 38932488 204244146 1042987962 370992076 296013168 715792573 866165501 446800437 570012838 153904968 605889432 860497038 253100255 97453191 427085657 234472135 939938224 889395898 690615075 600487164 658982937 50013007 417369790 846089911 997389658 788648543 742412065 720488757 1016437495 142176871 916094997 288606331 181347471 84430375 88980401 690909329 676557352 606594753 782990960 526653703 380259924 897948435 185440444 240165729 730920520 433354002 465649219 266339306 906732647 522085554 247148810 915699087 158206482 667823149 434568277 447373118 311007896 134659644 833774331 929342249 476907976 654701225 102940142 385127745 940208661 368341260 194008028 669000425 510718722 778835221 715813634 542165510 587348274 857308325 433416438 944900292 432182550 82828186 299558203 381973996 265002090 324925266 284381551 722532531 454625618 491090059 641434846 812039350 60744021 545088241 77742628 825636232 140540499 466047605 926287608 653425182 251286814 506110910 567042191 945134286 205371511 21536719 33510568 646593303 415832098 598461027 1068249930 493896934 1066126200 959168255 818422983 87338819 855466885 222527658 116661063 89710708 592554953 619549962 101634646 940592574 241693767 204810951 267133095 649594265 106821824 238077792 181572779 716533249 658402181 905305208 927657628 417722085 979831616 45945365 1021085444 1035590151 106222783 445308995 304777795 282377815 382900737 924569464 224725264 626069053 99484496 960970277 94839293 56469481 886228656 800332859 39502642 788280516 832851863 469900806 762091952 619863061 773006925 896671485 896918299 574721397 97016031 321685731 208631923 810650012 1002390523 99090816 316896536 436798320 688874039 1064784969 56577914 1035426262 1067010205 716623419 423101311 244929572 416938004 569595042 746188645 419452581 798820116 192615847 625335209 467416577 298512130 719428100 201604743 197542422 472030397 555777148 623516547 618169196 226171986 162989147 212879529 471927715 286605003 38851364 412546166 366088998 417785790 4636562 43083206 29493546 540066269 615965303 188306655 1068188216 816093272 628749416 144754949 53333189 682875838 1013883360 936459683 374902239 382974290 739044062 493858351 513874889 183009227 65963326 288520348 311681890 481915574 865740336 703629841 820246529 616908779 324664614 156998395 990486209 244552338 425630568 622888474 907603608 965087595 568377749 69740684 836882264 234583780 200978181 120590270 339831110 52136877 156060165 55222598 821353376 426595411 216565244 130928797 38459018 880145615 684681014 883772057 804029074 963333342 796042456 267870788 576744333 622397267 38677762 424114602 140497842 711202997 358452282 823493067 589771579 975288186 948648685 319840089 387277259 383525382 359749563 280871497 854713976 353010791 569830076 978496583 229676287 160364247 419708317 548056052 123931590 456991805 269972442 578896164 931108086 12888684 42950315 577242224 946227776 68387242 992289028 722459371 770208073 687763803 66781023 988752949 1027267772 340203050 1034806045 490626809 930259307 246447801 403666076 178904474 1065163262 460025896 957468236 1003876978 532149187 841585081 897981833 166490695 271063359 289361247 809701997 174943755 707324512 144443318 763963766 615720101 810111315 972820538 547434214 411386720 1061857911 390334736 292665565 512138520 495917602 610543064 189617469 533785897 421427165 630924046 242777987 1029050467 821552012 195727380 683438461 914790703 660238643 664944399 786132159 31573334 564594789 649600595 442392700 901520071 523098689 554132757 919451813 725405611 368232504 577350906 588285480 646979505 378343361 901187241 1041109917 598395121 39437342 641962846 685180737 657049530 1006400248 306562861 925111745 903168972 626117580 143235112 98779820 990873630 29544536 417935718 601643150 563207912 628045550 238764035 632826399 1035126740 610861791 309045879 899950565 116039858 233648580 475037773 189362809 559117904 70104065 949257691 511352477 285302917 900167839 1067492629 541109072 26377592 844915015 384652321 208717065 261754425 215091970 696092349 474976437 492708960 85218053 433983893 495072672 700940503 771672987 242003231 268889140 792356519 484137688 427867474 976862542 527929842 618156262 363213780 991001929 101492450 923024367 861046961 358145086 166525041 355886210 545532076 341273907 164987963 441325620 985923965 150739745 982044054 44913654 44272315 852917163 547511524 422350921 976844167 713599280 435436605 971096064 854268012 791391536 133920937 373685419 627681976 952421689 864042551 553363578 226946904 839632968 635072249 880084775 548043426 847519989 1071931990 1009177971 266137721 178288969 343788159 291651132 500997768 678560523 272712165 539669615 217684782 106102611 707070503 743205111 186172186 836702703 960608863 947249899 897868496 616537978 433557853 584723056 998757644 84729374 405459013 177875714 251553746 950830968 737103878 854163972 281543977 970150697 427796288 818388583 278750186 320088136 1009640317 753901473 768782281 303935440 604133747 701610544 882500310 574699003 267277222 443649936 856340270 600334319 498571078 1065746478 788583641 973986161 169712516 1007038435 729993634 670091723 755782447 1026583942 824456420 797361784 413687924 1005991997 889633235 717934478 886956727 694958232 895863731 242994167 908862423 327570181 697845702 799667100 508889073 951886327 895847502 556419341 602470553 151055752 530396316 154402189 177949880 366978045 982688273 418424196 239892601 243320487 470042912 608436152 568487859 512892286 809097758 971945723 266706197 186197088 440389656 773750780 443869369 440316412 862958702 923169155 240402887 635094991 757594314 664092606 752131669 648265587 318548571 206661336 1001491825 332133968 156017638 760471958 466505313 797101671 189197524 472862272 241155952 216516770 662624169 6053810 783333419 947060072 69491123 801723963 1067297288 667605858 1007420312 923926661 777521119 856607001 289412831 23294292 1069154542 127092851 107018199 230738177 777711273 23900333 156005936 185593298 47114389 783873946 552212806 569068899 111282870 526217076 788518540 1060440774 300260206 518810146 216757308 134472641 366041124 377889825 634357972 116793016 26544991 377431193 1558955 971478080 753876372 859068820 203125536 162215006 723263862 329995275 3682002 33611478 628671979 529364117 405280836 412511426 845910434 239645262 135391075 78155120 339235936 961912378 296526145 853076866 686711875 1015463807 828371391 274253755 458425917 846267754 281473625 31773461 673380814 629227132 431414895 665241792 409857747 689677720 1051996313 333313092 202557872 759679616 641688089 538168123 744639392 993964605 1071810128 484611459 294569825 735627096 854338748 334413578 721448122 401864417 469061036 1000542659 870333419 960389721 989154445 436247255 1003471324 897385883 829999769 1015073729 683377536 78294030 428615333 965254118 322028974 123218023 85309383 967037318 399799731 655786240 830205061 697048829 583854895 806346915 700811057 698584123 949070378 665623858 853283329 515280224 278269387 24374385 1068616198 44196371 314145396 130232221 230469048 68132240 391411258 320527809 619115417 972226505 39727636 767890405 852730752 113773755 543802166 77042457 284553762 1008505776 412864755 488584872 352420741 282774286 719784478 165351429 643310175 1047308531 700935695 209711095 1023534173 756021372 150000031 31236788 758694233 653338111 605302671 658302811 599818495 172686782 275620138 469879436 91769601 276490472 1007892289 947671629 117457548 1000479594 373720392 824370275 360560917 43082603 234064105 88185341 718511725 892782982 960382855 282746968 931661755 559349864 722998730 573958447 1052252347 531142623 570415092 800739165 826775039 665786497 527298709 333094516 565697469 275060699 501061343 554476192 120558826 252148106 905502313 938894642 11187497 1046019853 771378476 743173203 249053999 782599086 163896258 740761976 414727784 500342768 679873644 193898392 890818578 879960220 356459869 455739684 206353239 689302878 181181756 1020975950 805277254 728625651 688448516 283022611 885519653 307565615 687519911 126875854 460260498 381206869 174060696 243552225 125267480 517127576 281238209 326404316 882196302 9428830 751836643 459007389 913537691 238282798 1066107504 212331297 875026418 638500023 237031701 89539765 1007974309 631355069 145363409 214182613 825972664 520724214 161011724 470926463 119081524 64500023 41579842 95645681 177236568 77633827 35405651 263501915 343458039 307482148 317979642 771074075 565412343 63826246 942130385 1950941 745389380 114897233 691857122 363851688 399391581 428847266 681446514 384377645 518230498 384745048 327107500 324035622 902843338 905267696 345767161 981131819 274732755 603780526 287107664 604577389 870089523 645702142 122509801 910239118 822540348 49875199 1021649019 463879698 1069139047 977548514 809874731 498462057 742183004 370068713 1052390053 10496468 530410258 397465995 175775742 713752892 1009844833 822280151 327927989 920184152 44462719 601850915 435440759 502949605 593859251 476495691 804193167 988459050 638792947 117290715 554798889 924496971 854112231 753053995 695029762 837014709 92210454 788763138 86922092 314295568 549916553 907777223 28835044 762240437 287482114 104269877 939200519 855584093 294240467 998919673 422482457 68592940 223439506 994060005 188741081 434155592 132114481 167043677 306355423 172591932 315789137 104216627 911333606 872382932 188737822 168620620 618420841 512360462 138650149 439648939 761395969 843035656 425166584 755761410 452970928 313154605 400834548 567543632 476904328 393771063 624703543 962401367 1023294775 79408147 275957748 711162677 279473494 99994702 1073196930 546527591 1063637701 767317279 370823939 524938148 833594581 505974758 205284223 939075934 920596353 70280108 505410304 645266882 680529610 59171427 293160280 4255799 514727382 386356024 256185180 378568548 174294693 217178309 364181789 146750286 377293929 310003196 320606056 544625100 554515363 284757548 716772800 344822625 157483764 840013889 412166428 174952237 834915479 349344939 1069743749 613790324 902969089 322229064 131478694 229429799 620278477 929807415 948561169 731480529 389252320 703637462 121740851 67355661 481589971 6885249 907925940 905367117 618484848 4769546 541795993 185511122 667486736 840902611 707155915 1009993111 140207979 197469364 574138277 893807395 602060215 178166575 167950953 432126988 787858381 841923868 759397716 482882839 765710332 141025739 363828182 907416373 271046554 1071754465 755459847 802746614 940018524 461388331 229326248 852350041 1035066457 761209073 748620225 1040232734 578479945 405748841 171218982 496028886 861190512 421525902 655194607 277853659 1032168173 67245624 209304494 185159028 259572084 222012590 707956065 112517746 416326301 30424444 1046154647 1048314204 598538305 253527540 417283063 533339128 821827763 599885098 684113882 1057915219 835770846 110334043 687756396 334181417 1040389634 658988272 881393780 333449901 835383205 954016166 996695432 1067753467 559631017 399902861 14734823 524469933 1022308668 565312235 722541775 78669770 141641702 106955205 713063791 829490449 183498061 576109200 1032530819 224899374 489252553 876160822 497801105 533428239 52994605 435579830 236301604 521000413 430497675 644376146 681147227 539704905 1046106749 1059588874 391278915 664633085 565672299 628617948 510372162 182585216 762155779 286793447 78459267 836775858 857789540 1058995775 834094518 906272194 1058574463 458382954 812299767 434088867 662219026 768471152 627664204 170748050 190046759 659928081 919335165 452270801 69081052 437338514 194133688 483944722 392531815 25137456 797140833 73616468 95905047 494485012 372436720 956040704 754505552 141692821 455597224 142145205 430645765 507295112 387321333 67901647 73409234 871359326 911694740 397713076 124209949 421270081 403271034 859113052 626129780 771662637 1032993605 633638512 136180596 589036191 207012535 996685078 133117111 1038641511 885459174 614388405 883499563 195869830 639140017 591101275 421047689 901983792 492644464 15882363 305614224 807207563 262530134 281306398 299502174 1024760172 106033269 912679697 51426117 263237134 1034737209 485106225 808805979 111592108 326138713 518031822 899982768 478653689 625546393 736557444 715804115 964331027 243618681 835093660 249501962 1036698278 117020038 213169175 694839284 763713773 12095176 944846490 1011525659 359269018 249859863 919733503 33774831 300323723 455557948 371427081 945932131 82145549 953731175 606329251 333545407 196123278 44094850 530740805 1054920162 37573416 412002123 895100334 431748291 118633971 349722316 277916149 746430422 832894419 298962793 991329663 632225526 419894095 209695371 704091731 580056636 79523517 898473408 653781631 107054803 338457218 540809579 420295939 67849159 574357720 958650252 812290625 325351677 688345963 581081369 466826635 1069510051 627623477 484613993 217200581 123831457 206316094 258519607 881241207 296708887 1050816231 8925250 655427925 603446345 52573394 195163625 515108797 74030561 339912693 694161294 56264872 705189818 1003798263 841469192 738183360 1006296943 750794675 657153538 267063941 516435890 463661122 146077770 49542181 188714498 1065353105 256492300 851121808 932271079 606744510 759503453 690827403 730776604 682241649 252446167 225354545 715868102 907288751 933547755 503255061 317081386 15111193 311552075 813522432 54384675 705792027 984298109 368039630 801295837 72447839 60951321 898891571 818767909 925819231 364804521 174154519 452503746 839075185 916078100 163584690 334023449 466505032 595326761 363396494 334752840 687686774 317408607 820106431 414416012 206835078 101108456 81589576 425464798 428854478 419769439 844611507 223144463 504937490 678235201 619425427 246180140 448726484 22587235 661372698 841925101 82684216 925762933 658117845 423348686 652320137 573297041 663167438 975921291 909187054 1018079857 556666483 22243786 1026248803 381401322 689946330 928622567 579850618 859151991 783791956 747124360 267082001 329981170 202250490 1043320287 887984075 57967366 580549349 937135460 594297883 191934360 1049162351 145014973 641921462 677869705 568185566 376038576 614778233 398277342 337193987 690814175 535541186 119514331 452898794 510721398 822066600 393014180 913090061 633880161 481886183 462223776 419479262 926323325 54646493 239132074 874830616 809352517 95764708 525707141 976864675 1046958834 175347199 1055440692 326878311 28222425 724605147 76813552 760921899 164765686 926283241 168425749 904043050 656255321 924984094 995533314 91889019 47165998 960272293 775913944 506673134 893109592 210260659 745441481 588946029 426205752 80700254 28670035 377390952 314078048 471358900 326370291 709942321 473478517 377783682 18030319 893671403 988691980 328512843 807693608 935726570 171547603 635184480 787236455 970584378 587626071 812267813 721869931 1032246980 254372326 989525275 787799743 20520460 234433503 100897712 445276492 419147646 992796093 684550290 548648666 774326138 567528019 302006977 805299309 736680702 503833351 864694472 696653875 12010841 648629200 535692505 989572350 894523039 543434001 591125972 806335675 322450039 378025025 461075861 692128218 66547318 432811393 179269264 188487458 259531435 1052328374 292646149 706335085 657360696 86161069 526015136 763145031 802489892 491615950 424361277 330316626 37440880 1027691942 908611285 914727813 48145018 465995124 937525030 946814663 1027917602 534903791 553255623 857500846 381534228 1045623503 562132345 1063215703 10784406 460477915 40613790 693051916 651977763 95862784 909747785 878574615 751515893 940897303 174337128 136539506 998354774 759735799 1060145859 672577191 128921502 535950548 60693912 226819059 134907842 568855429 777218125 149207933 102774416 314146923 417919434 649180531 16026278 330489180 344989090 711185560 421589890 567532089 259521206 899876302 1020296356 343289832 61518539 447142090 574991581 251832202 502906410 44497221 766118447 597653858 476985925 779200211 272121373 294000017 611787647 532888105 914387756 927351464 519967641 1055530021 823665973 345003094 437626792 938420611 514136663 116056247 795731076 127108235 113252253 1005138740 73743129 889205482 871431353 862688800 473857228 817154088 830233308 262396696 699827280 940696012 1021489652 244501085 557907078 866134456 469071274 1030064694 397585373 123701054 516207147 193062018 492966279 986346939 945666152 335705760 518435250 637063964 866966325 304649263 1056384829 645628253 335949576 539627213 873132837 587023426 639435934 582833316 630569519 864369711 348378768 699200040 835440048 576443141 692877373 532454320 762069124 254969734 799127365 601362347 275819112 788038317 560180523 622429070 768772552 862839122 708817717 173932571 333047903 856503254 143705949 996796706 698395550 1070700612 24982831 454007154 762994074 940773638 874081811 483559965 781872336 170598357 430927062 173889079 275379631 843678354 620527340 585910130 326551525 184333286 1049865644 326248112 809032536 891817046 707550133 405390825 762545521 378930418 397553007 784684009 193536643 125359844 436987290 552248132 392704948 793314809 626559956 906695954 405939553 1036443854 487125241 638215608 472831010 122868639 896313627 367820171 434106898 139358505 702838196 2699555 765787492 153288656 464892645 1069853774 544922115 894638044 672679313 740225644 602517167 89070342 658377226 427601745 1033089233 202209916 826391233 577586659 204047568 267006264 665138665 1061458644 839601223 889258837 369075902 389675010 808973218 646794985 676558988 381303905 268843060 633354640 729167087 155995461 337433092 15125767 227525453 385875474 193497442 281169218 101810526 910786191 336933221 738451322 264901203 660479445 839072643 76622932 605125823 103535950 1061133666 420279648 1047545043 807355631 1039192535 624884908 91094597 447247964 62289975 734793491 42918273 868449502 908853463 794129266 400274843 147014228 857434334 1027794466 716502391 169214239 737039607 875402563 685076808 20140423 180211533 922174762 809291415 820180898 1010844430 706945654 671548721 128501928 573514358 1031398219 184870659 922545000 452195104 615038408 971790420 73707595 298427334 1053226961 794461658 134848335 207730090 1041879166 772397836 297943418 575940338 552738258 887414318 233457456 858871066 309250322 210921745 145349786 747609467 302641695 982034981 292754492 293393949 848866128 799530943 32712725 654733387 390767960 430801828 752900084 874639566 132037213 792204843 374445894 4471899 817833585 269720786 994262735 45606223 779942850 623520870 68119818 8868261 622419406 476218575 950498391 420944459 70800054 538985922 985825077 473585572 283453172 183205966 2256965 82887216 869472572 12546954 1026518681 649208900 396895814 866266752 551772400 367344370 681211752 118580208 799580636 64169132 425423081 662416072 250946838 1027833976 953756296 29803028 707813751 665546164 1035630488 15862903 89796676 317301278 338429547 645315198 391503716 336438408 849571052 453871653 83316010 428303337 723464190 263972341 479664696 808181711 957139626 1036544506 360447443 310809521 994793373 12230813 625347698 1006509397 697621213 781493386 757214603 956041992 5648020 153370439 39625412 483951248 80098153 910060280 620530112 581743090 442329223 342933514 415641640 626146200 25946404 35740518 344391260 114616939 787642368 450852419 119107990 781941820 62667002 285505221 677879604 273562604 404904805 444009005 307616397 681227448 1067011137 55774362 76270686 73849183 659380990 591651363 867998642 733606514 595096163 108164584 211438596 859865616 811792949 443280865 153406689 553911834 76196434 117118316 598140060 934329006 475359935 423273812 788050436 214282565 966761580 15852850 418125254 205919497 386995599 998824366 664061736 85272611 1048027833 739756933 441316598 351609564 49638980 1061385452 971889107 657190627 95858527 30455352 819024689 175883072 217682769 741395905 674382501 1019214217 714911490 88395674 1047467469 567199254 59132355 683900348 323163739 200487569 493065781 65153039 154715950 735145789 15665156 423674969 840809231 980482064 949177509 17110871 210307314 535800054 115226610 845938310 595204259 608815194 294795573 307495500 27655399 861265751 1010853364 26743476 158079929 904537885 327090110 69291046 369278807 442811394 1064378104 996373530 380234158 69844601 819259972 608366921 112910449 921611804 451792607 268104721 985105970 907250750 822970410 467813647 456774482 26125291 203992502 736387534 1058345769 72941106 1061803654 811509368 380715826 669103209 13432477 389376828 399866423 1067555026 198102763 972023393 697089133 447802446 930614785 796140650 416400256 38562685 774964318 357487071 820024113 870320727 1037031874 607155547 229609348 19271995 648286482 283807769 60699901 272768757 901792287 810622518 790272317 774566092 801084627 583103143 48302057 1046825850 827912946 952000520 962035411 639138469 613535691 882008963 745131172 177040915 626975434 284417174 559128403 452105171 15260093 1015538110 160968655 257855516 389773721 802242103 961438223 171700834 531768213 314916185 1003588789 380388090 798570772 626942181 429009345 575746109 472443117 352497135 765711252 169875695 889840490 1061363600 592505672 360623848 82148970 1054465246 343924132 773661096 246907424 181703587 960598184 428363922 811171437 495850591 898187232 55529731 928961765 122698502 659483184 713954028 1047866825 684582646 392171437 794098787 290354800 237137386 314480415 176413334 834058532 1024317835 867992678 863015536 991372392 554915029 157920413 817847706 897232403 201673416 120979642 506088882 941592433 226297740 28486981 470683954 869254648 785626845 1065911943 543855487 35851624 441509449 620171453 450548917 415185654 949513045 565011929 824236281 171156095 217781213 509205118 807345304 940413325 1041264698 8804205 256293411 1067498788 694125537 940865828 362151610 811051005 196331567 418431839 761104794 37436629 863338138 231587302 774647888 108718302 991244697 809627547 992208042 577192469 146027053 717522503 752768766 532694272 1008641946 580109850 723901328 913224532 429746584 333437703 525726558 799873042 789584744 822194430 696000782 576061011 330013637 99462327 87284528 350946033 375065882 195704310 786119831 87253799 811080368 61130499 95566075 29601429 1051589770 303575530 1045321298 796497759 239550253 1053070377 111686248 428510354 655330002 950836755 481608096 964394469 256326631 548704223 489203928 818036346 531785492 812767300 689087168 571944718 265900359 651573174 782022483 950073339 972165812 4893211 290364150 982153880 936669436 436885040 740891782 603317142 615544015 271832437 986970593 224307171 244091245 374108715 241287530 204601484 6699382 578544915 57443569 763739209 327342206 943403478 772981835 314159341 127256346 233589292 652880368 654601042 979259710 578028491 604206281 307099344 763189468 826775240 346430970 451654101 553800275 1000530935 218454187 635455115 938351745 857056513 311099115 75411000 594361844 408107927 951226715 621782985 603126583 984523725 976962767 825055702 1052748587 365078300 226886598 523080529 756442980 518110206 15896705 777258344 523635816 850128610 132766707 838735974 951180538 862469937 520326687 600929432 106511260 5147407 998826883 194021706 539565355 417033682 114041560 466536387 970988128 181179710 211214283 209033133 48813770 740214473 613629362 503202091 682672048 993539306 550669009 762404589 703615187 647754697 384717507 681973531 80024706 877507712 1050041032 476009847 1040267574 197392215 208877232 81934054 974057918 864381914 512425699 702002709 562432006 635505828 374834664 478410391 861267392 388474625 435851062 161278007 37503417 551553789 516240232 668463624 990688314 859219622 975437306 361564259 707368664 1002907621 612371281 83569428 583624141 599611302 805773113 909536848 374215041 646512191 262056138 482006510 204887459 629336217 488105884 251782196 477664401 716099914 415564497 41902987 471074268 420602483 19729604 310923677 163308733 673347256 763379811 305227808 553542573 705745971 931601635 231925072 203055258 417053580 944852585 961347954 431259912 141976784 937209339 234551881 24300666 655418261 785360938 1034897150 241928889 212713624 802794054 816868068 784610025 858353253 847788998 1036625826 684333868 349376935 314202747 435760208 378370728 478971527 104906799 486646885 897993276 111647470 1017973406 727120521 137070227 559221024 606032031 484182702 49155534 113210404 421749196 232170814 12438887 525367187 400260081 612035285 758833589 82899070 664962870 1015790943 764673195 901481762 727089332 102039436 945136963 649790835 836019434 483120591 68614127 429076933 720848518 298353962 498115682 695988758 1008194489 630283703 937445934 151470608 354019561 966050893 1049394160 913221914 395518048 1054968914 843649212 944940403 883413924 242618099 545609324 989447355 400895189 1029903272 798652779 597793395 371540270 557956116 962569900 814012705 848437060 712319339 90431716 131849408 598318844 463321672 970308211 621837528 498587601 654794315 302161212 45652692 589063281 396293906 539780133 165522977 844099405 20575758 877549376 44944820 303404795 1062213991 768438887 746239714 694656109 1069484425 627314077 272893321 314102509 427007623 53509442 377851951 465958326 1059428823 807151549 185258003 591690375 761540765 95841781 505380180 253926195 800385919 842523829 218380604 599564016 822903097 135986337 403774812 328569094 449681905 864540922 107702570 127910654 895434596 48057175 514013414 558567008 130538768 962435700 661712465 52869199 47679309 40025600 856381581 807544987 1007341711 668975590 601175796 595124162 258313617 635068544 531887093 856352398 637078704 567756533 552880743 729621160 612751830 528848034 1010662746 957386391 192514682 634436651 63973530 535967562 486008272 927701497 913782285 823902614 916772238 651217198 751709442 831848563 14101423 386919787 292593694 209962605 881561356 709331731 983452782 169060675 428445913 751674953 765953736 887029965 561559154 67730903 734035102 405021758 169635395 676293219 496994437 932447551 19170662 909800117 334451779 15597448 382721661 190223516 387738204 524355097 338795396 536709348 942599279 626425302 395388525 212580095 40861208 950373325 76725960 885392511 1042791796 707823184 164746353 97599217 883590527 199100639 50190180 657632747 237107774 647877038 291425439 777654954 344243482 815161892 1064799779 119963356 346375345 390739623 1073657319 137805570 605640731 478022738 940659243 879873706 431371102 827705071 85894486 215186810 930674377 462554068 602030339 1011377880 596444265 472601076 98982691 973243716 750176619 780734447 982082451 184923673 223109911 685444968 49491074 414944356 312045217 915631387 536934894 643916943 696956466 293898038 836254149 520217297 1025733295 428532065 782657301 131606937 504360631 66043795 540565899 882879114 693975241 323197685 188458743 668259647 665601045 918942849 61809802 405218064 365225885 722507893 495136842 433620616 265021979 653231890 856741163 257567714 776272535 95124493 958696761 91992546 190451234 624790320 1044191872 820197458 322618290 36026411 178246099 784098096 451682516 329836120 558271647 772876396 3128685 894530645 814174969 542093804 765810595 488742416 629273579 664264208 487226817 582968545 693664525 745135984 210613592 731923323 47425243 698829919 200314140 1014123767 204151938 672511795 1014820475 385876875 103244547 320266810 888097137 819087702 505189622 576081447 133055388 303923189 145908650 943064121 690375809 650769040 525597884 142751123 780840610 53010464 110456708 287406759 357089404 445403658 923343526 253924648 826484803 569608311 965832501 839360333 690799379 816809307 161916558 1065274589 1018796356 223055875 982545806 953854798 760273924 177196326 543765166 818625864 253544883 394031706 657818292 370807130 1026576976 630393946 553762110 360509865 981041425 724175100 826730299 834154139 830792007 973200207 1012130326 533653032 139885739 873554760 477338592 267139123 940012117 513927681 397280531 946458246 210587834 348389804 1059416743 43310143 182388828 118663166 577100095 996509151 300907552 464314840 217315135 179511871 857877073 63859885 740611744 99917806 967779394 203178324 171109229 670213229 1043110579 336265001 662262120 91862858 111829345 493840995 541811959 494460729 617308081 731962228 855472113 229502182 232961358 999027352 322378585 144561173 550288087 714180310 415601422 1060747546 129352140 47647004 71404252 796971264 886308603 892499792 787663965 14936581 450812083 301475221 106201082 762887444 429972271 663212534 448202968 798392164 461205591 397628423 810824060 453034472 392339810 1069998883 836429264 902628902 882654786 439158202 790827156 300314474 141748912 446119816 1023122541 686838399 1070225869 326366260 187846960 432139298 361329088 86019568 67737210 606301547 14451477 584220704 990506654 1011101650 1069439431 559777962 674961977 628392069 385667706 824361825 701996472 875092114 8747014 678864513 1039939504 618389127 770496131 944984844 1003817613 582631504 683425279 19838857 656595190 1035337251 582348171 545875141 473678565 486900668 562145006 180860711 483800187 191745595 997537171 238921569 63388994 704935568 876363432 1019465928 910150521 739432824 221197998 314464260 167467879 300432130 163113838 1037596302 109937202 232830461 143128388 148148617 266037304 587019071 665307829 691940975 90983265 57084038 636860097 612239941 594322630 874954032 156056279 344602834 371173222 753393 767564988 554503919 816687825 1031248169 837176963 57818288 418309708 903327350 586044002 320147734 691941227 201995759 203670190 838954167 495602446 60486385 480433080 62149645 826743291 656897199 788569513 972453677 284232932 424111228 533465711 614624658 755596827 105326141 267318301 184769094 895947030 1030812215 722640242 765102483 189233406 287235258 47434910 599612860 213462146 493574074 172673349 980395124 214225225 1028627798 1033448635 511998650 1064783048 255520742 830687548 961117529 78363766 1057103567 180024390 597095759 293108527 552095424 110302073 1073078030 490657786 192366639 331778442 585459054 444275787 103552363 252472665 152810266 684305345 422269451 735028985 373325122 805460272 277520854 872986607 191224657 27642844 402244635 968316996 424348163 184083229 756174168 97975407 476297878 748452466 588844086 875723890 960338179 575824576 497229884 560288061 693081125 291889375 388784340 343783706 818820265 972505565 41122319 109539939 1007930981 450421126 121043775 697603310 1042302733 1008511034 50196368 733777684 257189449 114931757 811620232 591684257 535067963 812032395 237245640 519827853 164258254 43577015 297838229 311836501 60196109 835429134 84579102 914218611 470558690 63432143 197250822 801716361 771752233 28976698 1023500446 1006635903 16082009 508448419 818852486 186579827 867202301 494757104 842658749 392672748 198291909 15124849 90681071 708198521 361238037 883893094 783152273 723717735 312392621 547302583 442094567 518789270 930865307 251336 909185352 599559253 494440011 694828112 616910126 869702285 118355080 751538469 865336453 960669406 131888762 736238317 721661344 1047728302 770077037 82257598 428758870 551917189 351723048 257752432 95109453 632643460 87856713 265018566 157312166 1053943059 691165910 940051072 216918813 829535802 495330028 991301109 625796526 15174816 59407862 710987473 712254592 860950252 178802979 731938668 813040476 51451423 458295249 669483473 516456512 378804787 886121124 252088784 244070120 204040115 488091372 507633723 600372432 62225589 507111402 947167880 763144741 473966513 1055131898 337016478 1044681693 697990805 819914434 462604120 410388255 618945556 294788819 299741707 1071273636 538876396 777719128 172039908 538541448 275062309 711259409 885963618 57274051 407237350 932440156 466808723 128447413 614361128 858765648 17592860 108962305 384678691 5800356 722703441 551971741 828014831 246411153 647048970 505453094 510607407 295662968 1065199771 776591284 81768764 940489680 877038479 368875979 150833118 887703635 507782594 609481189 202945433 1008651308 645627056 1040481469 399671483 224110968 75544480 316676074 549530394 658229485 547139235 1057787397 609030682 768568926 124628573 304556306 888435877 1065006228 199217968 540593106 68884370 205627176 788008185 651911017 649123135 460019449 990768145 858016213 643317338 945151815 351188484 115138498 499164252 1073570781 191991672 25730933 551196300 284551306 756327307 196953815 884148175 256902464 422587410 309840225 367915635 1033439253 704127358 44346876 256355228 278278790 216472455 134288178 359121553 647382397 265609524 864388180 412301116 711648216 1058351919 896578327 167613995 73480769 1069901142 233773490 825946126 164981691 195072238 694772484 754785432 536410331 809922410 749616699 683793594 700297994 1071369470 772590577 774020590 79771460 345798770 25226837 178801719 807858116 138463651 723579290 374191945 96329972 707552258 856222578 150870632 788971712 371572944 123296571 997272640 622033663 660327081 411271729 744987979 797342476 1054485442 111482647 581905020 62883283 382077233 276433952 642042230 201202914 116790090 294038043 796541951 674013821 485350648 606827025 3083958 942334471 249025793 303503166 786154742 272616520 595296146 702172829 1006834195 652274631 506134326 561116517 624586648 731177303 1059742185 273118321 266920190 861296405 768052855 336045123 457789532 277899451 111354037 18950735 212171014 60197735 145206714 350660932 581425678 70136754 60438028 869276442 373966904 357568535 68573553 383654401 108067857 416127246 870653146 475510798 397786539 302778356 972108248 787960004 78352315 609629642 82706911 634020600 690913463 687686894 493703511 239425581 459554125 395776005 843764075 141354494 295240287 234924130 1013925688 1054814008 1024709500 812480854 725277719 459920736 485390456 950982110 546058284 750565227 850289644 664496335 12537619 35758610 1001427758 396744143 863347307 700460497 463221146 955104100 903329158 590266373 123474657 1043091768 114440326 579473524 35990737 182082047 285893878 656411925 744494114 256967741 671748194 891728026 871970010 614091700 218118887 43075577 744618995 764705349 474504702 541724234 296463541 797234174 873220930 551684737 354308222 489517425 147235969 336797221 540805464 294360240 84445178 691791923 313260431 1027968133 180905852 764154299 865527681 407201726 519095633 304835496 103355517 476249771 781466028 194968785 244704169 721649026 206703067 271433012 712009658 123961228 726909077 701251431 660538824 233468902 12164568 548766206 640034077 783095468 663644751 832025575 948711918 674154078 149849811 572057969 758395442 306397191 987579017 357000719 229263379 95158560 876207219 1021166783 494000189 872676120 118861965 411491079 732384049 964717276 664927818 885451129 855686212 89507378 1026845501 233870546 912298576 137709785 247488658 147324061 1072057558 659378820 980119483 174168719 770932855 708751092 950015483 1047810859 836274101 96958792 439556318 397838043 502154241 563772107 150135377 262147442 724637629 167960373 110338287 1008901761 236452492 139749859 1068290202 526798910 1043238375 483549197 921215918 252320057 88506592 994443289 606906501 71567689 341947413 652246935 9139772 440132506 235049471 741438496 749306669 974825876 927540119 285170556 554940202 870782307 479742328 799293458 559349084 62970260 216686853 516312806 269719828 182084452 126958960 285252656 74032226 161432769 110583972 62651590 95879198 555033401 534878729 293755389 719447821 832243876 263761820 963995311 946654028 541234417 170868554 508228278 317352849 949928723 411247484 924599587 52915529 406808311 409778825 736961728 1009220868 61207499 34473715 113127932 152319502 544150068 14123359 615078619 50344646 103267994 798411880 96107225 1014479803 252054644 626648129 413369973 662502122 457640032 895793567 384634410 570521485 992913932 1033763195 406785165 850794205 214885322 933756420 326267295 847066612 427155639 322803652 701613572 198367868 1001572820 481680354 999440337 16319087 293477879 496370148 661152252 548729141 775362942 845811903 475572120 525330263 815424018 742513534 182637331 718606001 532467763 895181416 847530435 638866991 459791765 1018931173 359543397 576368225 136085716 506477668 468678566 131694493 518520299 419900455 329963056 217097879 894992962 990437810 162285541 994261828 130610023 640216520 489702662 286088850 198344399 720146359 686115445 485705571 346021035 358326621 927431093 957330099 281815770 39963425 543254243 853653395 603507169 685289028 595422140 349813273 305100129 142954260 701491505 214467157 416424428 946787657 381206634 123988184 150557912 605633202 930692176 174331988 259948922 518658310 560405904 98073387 783234868 576141893 225248126 11644216 590288266 88205156 941600202 709036899 703404761 1020215921 751630650 593943952 90274230 256228231 23383134 994534051 278332577 95260322 759708914 683581096 699120349 724965006 564982153 674479948 872989183 151633771 1011406466 733335500 267806243 996985493 939735394 785120875 618520802 1041120623 471650317 585204648 850185717 211268666 869866017 806002789 1051987247 468275654 439414344 512992211 849805260 285640685 361813361 1028122363 493571414 796823395 263292487 229697826 493176908 238430468 678892009 944695061 570423834 606113597 417167215 507767877 740608884 616070238 898083921 918208821 559785497 980917741 1029348717 946925353 358190259 281620051 71759286 526618027 76529900 558542448 184999950 1009458035 873871470 452478800 410316795 286149928 490363984 989485039 249459859 343714412 17195527 295106530 821283736 38913346 1024049424 73239556 317144214 857802178 679055951 283202457 780095535 480489754 67017732 409819065 31613732 132539844 500886716 491382930 711422928 901551028 1051027060 746571830 1058285191 864777729 160166766 530482695 830198291 45690800 806314434 371054096 468555357 933912730 749581580 950082436 66125760 550527101 85993854 658239454 996946168 362333917 31123921 231744320 342600283 1045125416 643790721 652324797 162286167 689729866 119706636 747998286 341336321 752721918 745038008 664409398 418583414 516153326 724103024 78464611 160205350 279569757 170721769 466156669 798948498 1066426264 817769562 958827765 820541427 1030489746 829951232 447267923 494268104 879069563 19220022 857682036 634898013 262519385 434182086 921451290 673955783 58107056 904136875 671415464 434582957 155780253 955762150 107120000 803265950 147555373 526307967 798048802 652151022 50072446 659264453 284163200 271969803 108230017 531247720 302137491 302470475 695103844 84735070 20105109 364458238 257665388 793415942 245674654 204889348 701186701 230505883 558560265 964388383 562432995 277787936 297467705 448263367 230460317 981009110 666696673 948711644 8967957 1018017062 360135791 266784816 354433791 629287508 25249120 859125901 193069761 461517313 699477040 418110271 620343276 147763903 158835480 1046254464 919481202 354884741 953384038 306405966 378261555 65832213 713207966 721964494 1018260830 784830112 351714266 674739622 578161492 1005614335 573714067 1044222106 294740175 1037331782 973998066 2209467 258292783 879206451 545943219 619196819 646714844 829670600 690520919 518417962 159035475 414955124 349786404 424871896 430552241 44739565 121002674 316929878 819326883 304977884 928469425 881986213 88403163 622098322 784208155 445811668 979158230 1039103013 929157953 63933917 342897633 1071133850 852862330 807690381 904498658 448606303 891229558 746687680 321651018 371324596 658164852 446773506 273953557 713168770 714162765 693986653 998551834 394647773 1009225656 651304240 768697097 312707402 675933056 300550978 871784978 840089507 819848979 927581803 414658297 349853952 480168739 442275709 208551640 7374381 995310343 784428014 533878586 907503790 186563024 834505052 1014571913 886742163 320041790 227697782 23234193 1062650883 415883279 415161627 702497419 411925866 388268443 586083761 103013230 949715961 422761398 690446607 886420240 532102103 123990132 434022276 614156414 960256417 233982630 218200538 200691029 370026134 1006489211 324091481 114661220 787574157 894919554 346191185 1014638061 460768987 962880555 921583717 551687200 557364817 160240732 918080206 448071785 69348310 369380143 851660562 354248421 373314637 988103361 954353691 441409998 783887751 153372883 423343435 773966658 448594041 468333417 229900247 606508384 923040065 312297958 194414360 367105068 456780707 619138222 996517018 283023945 1000634217 865611166 205563964 646047433 462429670 742147547 282734533 771704801 986737908 615891347 774684663 564696345 699369754 259222860 303734001 602376763 71750418 531348706 879041362 621203040 807347461 639763189 561785014 373213469 341146171 371847261 543381536 417117490 434925614 686238042 658819602 184777247 149212831 827185435 79125417 746019684 775659925 216490066 31407356 1068082486 851382208 665776723 942082453 77837895 735970685 137840205 338224362 308341169 449904915 863975131 98678052 676388083 817809592 639405809 399396757 712414228 127711335 332205890 582659144 796316116 962096678 606595107 1050665834 947132588 349279680 336460907 418824109 215106467 745421522 127839289 1024219473 939182459 643781237 833985575 109901563 524565862 1059055668 300325099 46583337 722226054 365624723 1041281710 24988027 916651142 212234038 574120429 330461330 796165688 390174011 757451221 672014354 357525649 418698618 53198583 342810839 200965321 991990163 473849776 173191278 718524428 376772422 581200911 1063553515 770226680 409060437 684472121 65915393 412973769 405728868 258699959 295196181 533339720 344516937 545065281 182723237 838529609 284106130 1035138039 495383258 167749818 81939707 863099386 136769624 199105496 88232047 638292274 482106190 478531101 588483197 273017471 748437614 854091255 379811689 548299418 655427855 815599365 819628639 141487089 717665789 79973077 708644784 158389992 253418843 100147936 26459071 1055630525 410786438 755184820 1066826745 1070366739 450138966 411558146 459992329 571534582 157790089 654941226 687578987 136026835 608864911 184176717 1017057259 118428574 137400945 225958368 461358884 408016380 945291627 345714865 78158617 1037184099 475715298 835342615 720851227 481197490 791603898 603068708 251207907 892443666 498016888 522527549 473546455 230099462 720838317 379147452 124357408 426002912 363316511 275285828 4689879 671116282 671706545 376426880 905668044 1041016861 871780446 300860881 312106619 846623682 709182990 590921799 105735419 565028566 1049131567 566053626 651872508 283748438 431425706 711509788 691227175 279201813 205618424 560262362 938955197 580871943 1006546077 1068547360 263694621 823836346 11726173 925829398 642385237 648363890 732731810 848627230 71770513 939724641 462335895 746897301 682098063 557238876 44041590 202061791 218496718 663207601 561403908 465686101 723377393 305650016 362181783 990644318 535206096 611445433 488475719 332796375 706784586 544436418 550954080 651927702 135039232 330957249 210707967 968643884 842991954 750741271 1039755201 120564062 584165551 400606365 1058758354 313376046 891842211 658104350 1069652527 405667381 922265566 750775685 280752569 245467573 33495857 240359416 823113759 848257888 407890272 288977933 503392313 870172476 94349223 519166728 332760480 380309888 56227495 222083066 603798234 421336701 715816495 36810925 253923417 460263684 806613441 1025949071 2223288 288942233 174120782 710139478 942457287 1029480044 894539550 1003913439 31117172 711950191 714484435 23756727 397793661 521762701 547701663 736156842 609369586 396568585 711801323 130674250 1057958677 77552214 22393580 1065463606 281911755 397749315 18047538 815638875 359770118 699745432 988283061 940256655 654611405 241553959 102530923 953150364 817624984 772777167 931615376 118101857 92551236 645488988 865123412 274166861 78775113 279987280 110086221 675953315 778309786 474574082 384142878 285408059 626756742 229870269 89824893 294004080 80542959 971330471 239697525 1035579075 506358762 439766325 840039396 114406161 14462308 353002581 641778714 585740832 820838471 663453861 131937174 898183631 622336715 580348012 237255594 647987112 34695624 816570884 369055789 95869468 186404653 946952622 173858456 418984084 449078154 739132076 873489052 718246048 359188260 909713716 274725399 101282366 551052088 920503072 104564926 138149608 173358352 572410104 326236571 214631418 806408404 657998234 1034950738 949938554 58495107 1021349018 101684387 734234764 17525273 682433783 158551001 142607557 141932547 687879842 942202154 652776723 371068432 846514459 512303538 890601875 825066905 143918864 315791389 58635341 434408561 801402812 762502034 71343931 96301089 172074189 513664053 328095537 139276964 429866094 708560930 376346616 598075522 792236959 643817573 786102138 796803446 1027855579 85669377 765509482 16630308 488274659 25035917 88598593 398176768 847412728 658013061 237194414 667699248 181362539 65038091 477297535 148468312 356576276 927306689 713159404 59027297 965496757 737341850 838506583 289991551 779818796 549365701 136557634 394978180 142828341 664214549 260385994 891910381 1071289312 131409236 564603675 931679286 523158436 588685296 55740559 284023305 242629561 963094220 487275018 358219708 446701870 971711528 954105949 840273805 926715610 936514189 564494353 189036992 43425949 239201240 288382898 617657798 952146064 420823615 58883908 426705404 97157845 269869301 290041793 999891190 1008991516 71658481 538259858 920516658 814471182 952621131 147610398 777140736 541515616 1061475528 591784819 691694223 901574597 425592272 502593240 645304352 798910507 511754889 726123512 404989111 210641179 219639261 424464934 175562502 610838312 312844990 227804841 452701355 674783822 76631894 708091519 231393636 850877029 286988150 654589382 408817822 134986359 465949653 688256576 1038114406 803286084 813931250 575984243 171094659 641625591 681532952 234237721 358467838 60688144 458413866 728468540 923940649 721279689 524465677 426849223 699230230 350026931 298703399 845262179 932605116 1025026242 201945128 250917953 491304075 1019657779 924340339 718291482 927345115 335887364 1027145411 374666780 517483450 445126579 829596942 997656298 174719610 713290070 66409745 347285761 706327672 605086974 273457978 664048735 949880417 33574663 853506445 42245775 1032337107 12315676 737302836 905683558 524784062 304431520 1029352626 625964210 998855232 921197738 429532210 19355882 721228255 366919754 313105316 682144864 187187994 298996260 718761226 953728958 695308112 528804533 608493132 471281194 513849998 118599328 320724006 869892696 936168515 606508626 864202383 395147065 715216563 600715926 367003138 1071959735 305107317 180992122 409732813 705915595 967857601 483503828 103444488 788480528 886781502 957101861 745423606 948598197 199923559 135950374 613383925 984434706 82649878 995346558 151470237 625578491 25386020 1005637190 355605288 288825970 932724505 1028701769 608022680 747057243 194720672 846386057 420874110 629369529 84714408 679751415 293085838 154229686 696616061 626296772 79296516 523395335 998366837 108930485 110616146 328733416 876660617 821713451 938612528 119293845 967999427 609746587 107803821 568863097 444502721 801320576 962663291 979717787 853844636 150844212 850666090 913055272 31601096 615865305 580987003 928077000 352799733 430405849 252725003 934954654 863478464 570738731 258458198 419046209 22350874 216952126 817273794 271523716 543614788 559308739 1033480298 325239316 536089216 478709790 27162470 729801771 957654339 431489084 565629586 1069931561 858458394 835215940 72095992 310224883 10633952 586057620 456576527 1069061894 159330878 482933675 53767991 174155001 362970276 548896000 87831681 25485628 1013225025 185256557 85330865 811781062 591728012 309532114 199509841 843728507 740983886 302187932 310702471 786994738 77993004 762981564 477926503 18845396 1014311928 631833319 1002769063 732391833 643444620 891557232 998032507 775851534 391048246 46909802 31338673 613165060 748715396 102779094 484704221 608580835 299513208 130053104 490092304 148976614 270384595 351517726 843093588 385519670 485318967 413376583 796150531 595193245 477759691 539645880 778028610 113406279 54524032 663809284 901949732 154261330 869853009 100197464 849172229 180707142 238297837 836942004 1057832706 971447516 938170199 798221208 474029040 124495197 292643346 774510016 709245435 202508930 309466976 553092491 1563141 533618213 391353925 576097572 560526193 575614139 516495322 982654342 353042128 131361250 901998560 665463903 440485343 246910419 611261763 858054604 174748936 694339298 1007403213 539231506 562724085 589569149 246868681 120658513 687254307 194626839 633653190 134404698 1068516066 526319032 334819316 40682099 232367394 837891082 942457107 350099517 15632855 728357365 912292461 912317906 242218744 203646616 106536147 598107704 814003567 580061237 847468989 771352697 837267661 583958128 750328103 755261208 223181378 900265474 770183165 875847929 359352471 424025206 923207177 596249491 119869548 1061691701 1055327923 586285492 717278173 810676213 228731176 124524550 501216376 284558025 336727984 717172965 114469279 137173967 435304725 926885176 428311329 905963960 862624821 750699051 84243404 918630568 723244368 256696150 1018767785 608480647 996719398 650031394 510160770 340340372 341764966 1028317326 1063353513 986071947 710792594 109779829 355820070 286622725 691841894 41548183 66022141 568936857 391028172 908972868 785201059 802765686 970923138 137863468 561425157 190368875 210225005 302905422 936446301 345599188 1050794849 862541611 841598406 896845425 188819711 306387599 983660777 395663760 407113954 372293608 458239128 129429876 632840598 793460346 836710303 112789842 805767487 327528182 640145041 97449558 1000235918 732997716 556601734 921609710 757713848 244374723 151496773 160726460 817424018 55707155 370566018 934579177 976428660 300869810 849388700 250215270 1068006459 215326904 401160461 534791520 185165154 643067263 415389418 5169568 119702993 936211679 1028454110 1034136245 568477701 985653821 808181983 656955084 250069241 30015473 425445366 75813333 502523076 775973177 245354891 504299772 781490320 247892514 300692419 143740368 467688012 643771536 506914040 434795677 1050305970 359685690 770887483 555906077 810536388 839020002 242978931 197549971 814028416 1014991712 1061232202 63206275 643278785 699871658 726211199 850052368 395435932 322571211 1011766200 203017572 628065346 119739432 273387714 128872459 418347070 874767826 967236110 121836616 518027971 909104203 343118679 406950359 542925746 38602152 754451370 551423032 987784409 23152169 677264596 568007744 825305916 570537797 832003151 955075321 180045545 1037034129 92407432 2819460 159486895 204990710 709031050 1000096896 191226616 140777531 932080112 734896360 72790577 423274363 380218829 886819207 985820973 900431596 873884324 571279480 33460576 533725204 227504064 986757381 431755660 1046554157 847086549 40178469 399737546 436611529 500395082 19248231 862004010 971095479 1034375753 482946830 1008678296 196919744 133592465 33444039 281894569 294055771 526947010 838064638 172670893 194400462 1023204447 646238559 626545341 539010663 848649239 712328929 62704758 843921050 3598625 533126310 478192221 416781 196273629 937772965 505314285 1020844918 111242842 949349692 726338418 417508591 299350593 103927887 158357690 250686115 826341983 358038027 675348797 832842408 726922255 293492751 639054912 989783991 95840526 964758696 524331333 260932917 263657138 151151408 478192141 177143272 132090383 729960132 190847275 219377690 258830288 628447255 242471538 374618043 953611773 479490001 289510932 651788453 392978784 24687231 709986215 264979588 248082056 491465951 296144610 401977778 638823296 861861562 578559046 187040365 244233455 630498585 158535124 1048431541 561229150 931145685 963639116 943843224 398288903 789889719 502496029 370261995 1051693526 306106275 520330239 517787330 843716767 486440877 608899242 905896188 1029394931 158601754 216755499 422892797 570533094 392667540 157406440 571541417 898636625 898556478 559167118 546768954 637635098 451609107 467217453 1005809894 880376138 742541854 336314914 525411709 664906599 626346432 967943608 937770656 787702011 13240780 260248312 850711343 919497357 602268188 310989326 446221470 982358770 773665060 288534623 17789518 287274038 76337766 201728320 921632653 301175406 447808832 353381125 449354791 598460142 160070773 206903071 215844217 774792299 587930649 328381532 845575704 793393640 859014825 376942696 588085305 868988080 244161276 214590763 314977464 629343662 436138443 244750972 104607125 629565937 151847542 459730132 662593594 28648918 233030816 895079119 743108172 375721678 451657579 171922725 661907875 81387360 654394161 762936652 91709924 450874584 476502147 270886441 757388368 770123195 589429447 1038916509 657290826 97657350 336951915 450200726 42161308 106587687 856421981 701362882 433307223 24883147 540975854 416491270 486065493 902424395 300976663 349511215 476017641 314621548 906239308 431990125 77708930 546688802 1016339253 611961198 415076374 186823967 728049956 68084154 518194041 930391083 355949181 485681728 277546104 886290744 987456932 957116510 302725239 715814570 642971869 448713710 604379157 126286416 161847495 1052458825 424390087 801817291 680222933 652619713 155208887 698864374 883556846 188614591 1045693675 55353114 501298354 433204376 35541262 372805041 303303281 696328871 1034522905 659023276 1034640801 914990430 393685746 945548698 519421448 1036218166 794547628 581901355 285233744 1067980208 1040062874 981490705 410708658 329855290 650580994 262824596 435977388 620372753 624191461 444825449 799954266 311987340 2535028 565881960 969251592 803657485 607623854 94331333 74677034 309389345 208687374 384953938 776419444 147765793 562438238 88013455 232021680 189529435 44297648 890440282 924720249 331215759 787328220 607259304 715934315 762351355 742092354 892495297 108276576 857117142 84671506 570303055 879030078 418176129 424180176 355794964 1066190216 508001785 134755215 97968621 285654345 1064416629 833844962 847193475 235024773 656495540 518848538 877914622 653729171 1024327520 15235621 532036403 731231064 936982127 452727777 981018575 761880534 538717001 425588208 212919488 711887455 1067347015 100788920 219687140 160699663 248174606 306431735 507619385 807204776 27461632 1055830910 652847042 154663452 469555996 515098690 180868054 255681432 713998104 425336465 594456017 587077608 1003469659 508738640 320080882 523035393 929602366 732387509 28071934 876921033 721933989 281080643 312496202 1005741994 925570960 328141381 443622760 71385309 697028333 593425349 934464169 757016718 952998462 12417534 478144812 737117429 352848557 536974905 463443461 956270559 372254855 345944200 755224842 176565112 510580627 31723458 276234317 370778698 1026923211 865828611 633343180 871037073 991073586 118636235 952812781 302692822 504960078 639368392 503017185 727278251 790751360 554809435 20039140 703351055 1053748089 991266645 64776401 330918180 486596766 635202009 395219411 947452908 631979371 896242045 438289906 335052278 445232258 482672393 935947471 867055822 95867999 78814805 764209962 1047180296 360541156 1043245306 243690803 132629085 871437167 915811870 809716840 655714616 630296172 876247382 386806958 899687258 185788096 780531265 563574653 791235536 648843447 992847689 773146840 159568479 1014612708 64453539 232131092 571016091 821256692 323535592 441845833 331869541 1026155007 817832492 682250570 588148014 81921818 647576921 519011460 324495896 260259979 348738705 824198706 32442561 391387945 980268993 290902145 1041502209 572606560 820293571 537905992 941871817 961189550 612506423 185819426 97552635 420645367 697704884 106761776 951670740 27165294 223270313 856613101 249945083 786801787 550038324 645022792 492782458 295457501 368822781 519641192 873590733 748234741 491380746 940393164 553907537 324399801 191658230 705442350 763496165 941209600 906610712 90233777 414037547 229554886 636439357 161252441 719065667 335931856 535580005 64215709 14895684 839715805 733873004 1036938742 152726451 256718733 374583010 756412853 573643380 304040964 425866133 958995636 224574735 911556780 950314411 520283350 573936114 588887922 918873445 835480538 127183921 1066956671 80324417 615028912 546442236 235275677 926218439 928658646 331008427 39158031 832524157 257584396 153561533 936376217 1072004815 984885353 32561941 390767646 91055149 297967804 215976100 786145899 24580703 1054264593 51942947 321727151 639694018 902017813 885271457 303133379 462380782 57979406 536437514 752322033 732589637 865233124 677676063 251888805 184598717 616793696 951669537 880564273 1015414830 92031432 829476789 997454934 685861171 960127127 216784479 446775692 299569668 299765612 456563145 1015781811 501523668 516914814 378718706 804160464 797021219 572988326 729868912 303559155 403929767 816316325 266518886 758705151 387884596 471573800 556271584 785797609 754193427 1035498787 365476605 658182886 303096367 233148900 803144508 976660184 150232340 847743840 562343911 259538102 457109791 965050272 775657975 436739045 873987736 398955344 172114631 216133053 3498549 511852872 914971333 1063750209 1030793486 191673249 636886158 815316654 856660649 64606380 1051675692 4445701 327528627 451784815 253049380 153852249 548351477 1041425861 777575226 884898413 398246488 164954130 112806923 1019381277 411812678 1062961869 542962969 347942976 277046941 303821453 344747606 394883799 155179797 621998302 211666371 827874781 275026682 1021794344 979366941 24575006 458386835 243834113 271015022 575788009 1032634380 595377416 898882190 723740762 484544554 422569068 884672358 680792007 366698566 122491326 10291895 519806943 932107968 969327437 668661413 725647622 769588889 1022735536 938157827 880601613 978551278 946721379 1001407282 469028217 371564567 640690284 861225499 1027030766 765504433 75463353 688143666 377316796 231247350 873172821 331166470 945971226 41995814 311042923 574542624 689840372 1013170217 584456305 581275492 217956498 916011801 283116576 394204118 788667906 670623998 1008258768 780551721 1060581483 966197741 1072106422 574074129 177789988 714011240 805780523 530548229 962508713 748527850 283859180 795920034 593419591 995169086 616875317 715445372 661393243 985185176 113593561 34658330 663974215 36017437 671055557 573263097 943244258 1035717329 787104232 6709207 113771682 515565417 391969333 501084796 313101305 783843569 13413771 158416043 1021949467 1036234171 207795797 610626457 366212046 326958398 919403846 466261360 836229232 760644565 1060617447 819577722 13761607 1036482936 693643415 161921521 152748358 489293698 141286325 837252614 627583051 49777065 5306898 144831928 998678183 1002750050 242195562 631429709 633751676 373093960 409668400 943136855 48912118 469838850 830417223 583766315 214778627 227309722 302471261 596195440 212989811 21936334 714081308 881435595 703418603 656858690 110307681 79658468 438918040 818332655 542986116 772918823 935161274 806332895 392837442 940871027 210258382 1014041430 561797230 94450168 928588969 671419175 216932008 317492689 227357102 502865595 157101498 136622613 217781902 974262976 85935865 494306871 241823310 502948686 318414449 896162987 768258307 370295029 476978928 548257728 495012188 644826247 1034353880 326389904 472361006 655160795 93328670 442437619 487400115 735720140 296533402 49776934 972134030 577024620 65368359 633083796 820356363 309887284 841712731 94980960 920083247 921628699 575626039 851869450 243764561 800392249 136238297 324379326 691683343 714807165 23122841 649628677 111064822 795314510 314649259 327480805 956323329 756416287 961228031 490255906 782622100 238736057 583763593 327742147 920176270 893154496 832965604 543415822 577677516 95194 746493857 1018114271 1022738110 603962070 989099011 125596500 691907457 675237441 365278239 488437535 1012167998 1053993349 856438833 546514051 8855405 581848317 210004199 920285982 495949456 178739159 383989539 125214850 218204168 165521836 686339579 735697161 394223164 439856514 632400197 123851646 468351244 346545630 115624856 288315693 580344458 73441338 815828932 876857954 133302419 963185386 41940418 798255391 35742884 731374840 205032596 185430782 102598066 123009760 1021679233 1026491116 1031445449 923886428 331030725 350476689 495914907 755142886 891669298 613101310 219195892 529870406 435604194 505707788 771421833 157747017 864828097 552242452 311563410 517210661 502018015 358301199 81171067 14893418 326408417 49453486 1022716235 22567347 846220236 776147596 274035730 292727234 1009477939 648747631 586125869 102548195 776662969 993850802 429504286 581368600 113528422 1071311625 960936837 950164493 461689923 270118643 721177858 425552132 271493083 830970448 941647775 71741348 415557919 84866489 789555385 955333098 887048780 655412956 770666698 160216483 336184458 193372919 1036288241 30502197 1015155294 237679790 606923099 949295489 164940127 247464788 47155419 797236468 774906092 919781671 458958000 663544103 659055897 561438230 599798442 235180211 797992280 853697605 953896374 890514835 1030439876 493592449 582701810 919071570 657552084 93852575 885762394 15791419 936621313 919813264 882331089 125288940 244630516 481704570 379322306 1036486803 123901388 473134820 755460232 529757524 987294489 614622438 198866077 687444903 248841649 992966276 408977520 518525093 604972617 110078101 770668048 908263457 62611755 923232636 443782400 484509373 352915896 659009452 883146421 706927369 481802690 171112793 943100450 528373234 559602150 1035418211 611997568 754172193 953221398 978774588 699540149 228286962 1029908819 437246894 595335246 41425149 1036267604 776355735 576692765 757995449 472180760 726964733 853418814 750007884 423570883 297327045 706949655 861589743 718659658 195758765 711725228 582064173 918038952 794810872 347090744 499736203 876935962 619049294 637712776 733093666 1062256050 218628205 384092378 76743498 414693590 1017489375 909843729 868140151 307118191 40192197 931298416 240152894 377934580 519104538 818448251 331391924 1040065727 763685581 505813937 325884364 780117874 207525282 303484981 859981977 373469794 156831835 663135428 984389661 727751839 38123676 983215645 729623407 289497018 150965322 530880454 26539729 19025167 250292954 908987407 120422766 697704134 883837527 690941397 722162393 878332776 64090637 961440589 1012411519 531318208 470595869 365751767 434007718 16431221 859115580 370662628 247532118 45609352 673958318 676234564 507219138 904541885 407629851 359074935 920922030 590647974 111010924 323020703 730741368 1027215703 883963499 473843270 771779734 599710347 859192330 1010919034 703022212 1048786851 290801414 460544293 216500543 863340634 420650444 823852469 318688377 923488731 769944391 496970384 572822247 726535353 480381725 619266811 106378894 626606706 909039244 31907040 33447030 29154745 415336020 575834316 733759518 350428050 914267472 518011102 816655047 824944211 109300497 470560467 718485818 209917495 849568135 274565423 326146467 5809639 1055300724 264321011 679217847 312511337 808670321 241360541 872745133 256462304 98852913 847596912 121655276 533875133 400509741 256841305 1020241160 118736503 461528222 398680977 586469523 758932062 418348213 648966075 267595426 26931074 617406317 78119946 926775956 9112730 614155162 911641613 833451797 1003583845 796923811 480385360 939769036 481826812 115631607 184299026 78562151 932670959 697985730 569522802 680787036 442523909 1010144445 162229772 365572926 849762669 1825848 1002129157 339597153 83473510 852595686 729546978 724257317 671414747 925510978 246399483 49698522 882862008 1058632458 300227974 833967768 720055129 881020126 972520938 887859416 278169666 470228773 1056768453 116025245 942856755 1038081631 1001016442 616878086 180386626 870692519 231650717 346313640 515493859 427778607 322539366 303303740 476158580 1073551967 196663937 612570968 793821661 22673268 449945679 681448198 186136488 332937772 451953405 442332522 237291050 293211758 372791576 1004258974 105486085 152317969 915111958 245305684 622314943 1069943910 364625218 498346939 110566063 531234159 564352925 20892295 72664057 596360665 8398558 790668789 952124571 913867438 132443620 378376078 185009296 37142811 431088908 345353673 606184576 510044653 315173431 316090542 444095774 615278017 464594042 312913904 132528595 432667115 406167294 372147523 630833007 709741568 651861688 257240578 1060685106 651880268 869899462 512764552 218153682 671599682 434090802 800311910 258851542 863496928 1001107397 487259809 3389265 232131458 5918585 51303599 464762873 272524069 138939124 605555491 324059064 683305368 567017322 178499427 64622109 736036072 313786034 169809730 879470210 185026400 402651726 967571113 347472539 183635396 682993137 714793257 263047537 46946189 132868029 376060214 249786295 797592276 821382610 366926414 715661171 871518583 681017175 70548686 212184275 1040134877 502890521 849819115 866990176 879163041 235069405 476614693 196753812 1036607525 559769618 498524145 59022480 817467855 836466411 999057783 430145745 980687926 132130877 531499203 776450461 44336173 710258896 438282079 1035174428 755455747 479061063 150458757 783908724 147024573 301587021 141832943 513186535 649998407 967702571 330959285 872461444 384289685 805172183 157236892 460851547 583731724 417826610 523255750 941424061 974941398 780740318 274992781 157991294 469974379 29907324 1057383783 268963949 800129230 1065838240 444113512 179905656 392634242 870427150 692534757 1063946627 484657462 763856817 229202198 83338773 1029575844 1060568536 1007228807 48879508 100665040 1068604397 975401393 91122407 599866259 818953922 771115298 646269344 918352299 592412456 416484212 641448797 938405850 794918434 978078172 121925084 744866117 504570658 859789318 795880389 776292952 685902027 673779426 568565695 575638886 274642337 243881063 172317595 1027322206 793033131 857522444 1034301459 195936808 1046646260 527576898 213250467 309564551 311372724 128039003 1002795246 167965907 958549906 460755869 991681844 888856383 783037626 850251574 30884142 987664108 481093821 48234015 742984062 714440264 12346012 522425549 1008846235 368757159 520433330 204249235 39040944 531119512 651210010 680564021 797850310 130423332 38498530 974762455 452538913 56172993 781854827 610731514 727668976 491705726 770809988 243851082 577718733 781984910 894930016 581486934 626487563 159711811 173035060 788557010 516101606 1004561506 248684007 1006536089 1058702074 959877224 509724733 614188475 881456757 99476736 436707073 1013480167 140049700 559199388 108915031 511992156 306551239 1028390060 1064990774 1064836843 263320869 747130152 836700727 595513477 552628842 415798279 958058507 686565575 627682412 404180114 73504925 513833542 908949043 323447549 545700921 104237674 1060282173 35279066 13410351 369308355 221488747 341576195 659083358 935686595 242496315 712426727 665566807 110542128 473057669 477381261 398018679 238087222 80867907 196469023 902465084 663908228 525318248 439781527 1065315622 298844695 471898495 827649076 303832193 789099701 679953873 507505938 283575847 732199264 942676497 233016679 357288441 1001393850 465007766 1058595838 584090359 88519788 117714209 742762288 587503449 536196822 443275067 895298635 336066396 234332512 885447459 596907743 429792098 631186808 878441465 127248378 8034195 101000791 972523227 10219151 386456729 475104916 263477349 326337535 454857964 456854148 858636571 765023576 145915372 694468505 31643244 360822609 357208883 999480460 709258447 640848984 720845486 680102449 828250846 406186498 593513421 672335747 13889005 682185269 141820842 796264592 852050442 49987879 571227121 619324300 834913045 239473777 1040603591 25200738 841288693 232686058 360608843 70571678 991149109 964931041 1015295921 964685054 53600085 801058672 13665604 458729084 567356307 937670097 501164952 748062046 400118274 220058494 719641747 684570461 245159589 378888214 480158323 426507683 653934142 592009199 263894332 864834996 961202374 250457454 167417871 367965723 580982711 733933106 51762236 23280466 738680975 683828651 547490606 4905922 143273628 661774958 33638034 677026591 782401359 736005740 658320225 581485471 654177621 116278504 310986336 462012706 454043089 248516683 84738997 1048037208 643500294 983617670 88777666 975984793 370910273 529583547 510578669 574503296 722338994 580747593 602703383 334183469 564120462 80639074 5002605 454271846 313874226 530566635 360054623 513309237 595337415 427665814 1059942064 461356379 259234985 944734081 64340932 903579322 122788957 958452058 709300605 366616124 213058383 34578132 650505215 927439600 354548318 940636787 852075894 820219729 57945989 268435762 138939809 183214366 90963568 574753816 99819998 893893020 521819637 233485882 1063656223 717057693 892124359 714750449 5297798 162580848 1043497668 717710799 338173998 250963657 858276709 516478687 153458176 392966003 996162875 820671446 415985465 746453626 103111800 242612585 787895346 438848496 967078897 858480372 882484991 28778370 412035941 928332095 677519696 834028892 775749408 188381084 719299810 440347953 98033475 139953541 115373504 667892736 700110595 851983772 234244860 345723091 982082058 252097490 444920828 872755613 441904578 764954772 1030915489 616937522 430316229 313540950 359663947 807923884 725083312 220842444 13844133 72128696 88459624 603324011 40511055 688515867 734967169 644500980 278994691 367504873 903982621 445913812 38130331 345395485 944269574 51191907 733007642 267700700 966318917 315356239 473417949 22631976 5389408 76763901 195817736 899445058 528613310 406912483 649030667 843738383 345192392 284393585 383876622 829681089 649705439 729416402 30695699 56872180 421457107 492118740 517485152 70577403 235187693 596205590 860903929 54698514 113166290 503510493 25654133 357894499 755566667 1048785325 190187603 837054157 38600888 966382686 361792353 455903474 371225566 857456253 331214008 334943435 1034643658 662942697 684950823 132570808 166240017 348922941 957877596 160720191 314251346 484645533 938282058 482056867 676757650 894907011 868476517 604960578 1037514124 930616934 390961844 394524016 920935267 503239768 169409304 650239269 163976141 868298390 441619427 353374309 362620432 100111572 448683182 61750566 1058787419 417833696 225438994 641012621 971627358 815329963 207080998 1023961929 297623526 659129612 1052058393 583784042 463703285 41236370 976029660 451764235 262781371 1002954835 247580371 141074856 26224876 146988080 622197905 459862283 1007081156 819310003 471984882 663902678 672468236 32132035 347219328 135086211 704580862 837790038 285959977 912123840 468475246 10896962 938410965 107622429 548561266 543777854 115259779 955696169 759891789 275873260 1030199327 364613264 1028942256 659159886 1042192546 468084768 938026323 927123300 600967004 927004865 1042062418 834273985 146678885 902643412 356593644 10131412 118484773 820501320 682409523 997055792 1026383760 937329681 13232000 941672273 680527265 570985473 1054972604 1006792524 934350726 422199076 833020148 626816994 204244797 542395614 705961049 807739692 129196860 359715992 16518100 526484549 680981634 918550207 680964315 531661126 1056986283 666558984 68841588 761046608 776045416 535613831 124742838 757350614 1005837722 30041986 171719491 754572009 237806238 475257356 826281725 1069194310 682479246 805786586 620413516 451631599 407692145 594545778 281165217 872616394 344481597 726503041 879807252 240491583 557884574 553897755 307868273 199791799 1068472040 115980047 567551921 64848252 894665984 1039673362 604521095 932347476 762831341 814554547 14471867 441760170 497751739 345974156 380023914 996866762 238986215 631640638 871910673 901313157 582938436 827675673 316061403 980512687 201833601 314180484 1043006237 604184254 539750421 189892179 283782510 1047560548 388588500 550458576 66335198 630290646 113176884 955337916 507592912 273870335 976394622 959586722 428275006 589818752 592213982 1045085386 360428578 331559993 678544293 395601781 861033291 803690526 449373746 277023090 315253664 386822293 169750561 874325163 511549194 533274941 1040216356 823024781 271606025 434583200 682469736 354190545 718052840 166699786 1073309658 1379348 688012966 707115045 18623 880810719 1034424858 816007316 751729568 624432302 793215935 876028077 317017469 48570330 273414792 926354405 459335217 483289824 769447319 547297211 515701052 582163308 798151938 81616537 985972895 863502502 975723668 925126754 594368390 1057376191 493090180 789630937 833622693 886638140 745913901 244934211 1048962157 826820334 129566529 495212454 83663385 315581468 976738438 613501389 1020584338 195033681 690027477 397474378 114647252 70279752 790202292 735143336 758757725 800589123 815885544 409931912 793903448 965540722 179668354 786444940 265001389 1016868171 725987139 239271292 162939683 62071052 364652553 937002142 2754416 968416425 957284153 904166706 825321796 497551798 25837329 245779619 744207599 875017180 931200141 856373620 744615147 382548560 534200851 983090636 1033441307 316050186 57030713 743689023 572315853 13087595 664583355 418421520 597015199 754289051 848956998 140128482 388965750 54211124 674542343 697633823 159177121 623088059 980698589 209685843 585424669 782040488 775618200 205482886 863656732 124517319 764298079 315621032 138298616 971757855 788154149 647529359 21804812 976003147 380707030 179094622 645776704 56714334 550106035 695180543 697963002 171393873 242357110 987927567 1038120523 701748134 296564434 988389436 784255901 170821887 150126734 975071089 682183111 549970104 930821380 281399488 197078094 287782613 871651091 545000245 368733975 568618191 227123860 1053662422 516579947 27708208 117454085 178255704 591644226 482597472 134641041 489604535 564540438 477568453 804467465 401454531 814563039 638325281 650889260 925133127 1047848802 372120560 919704939 70343493 719833583 302318131 220172996 420245353 492585669 283675403 84108960 498865460 637949655 91708460 974490146 632891005 1046086961 777669010 162367402 535581041 245708163 824497200 442642779 610030290 942665210 953378787 384242949 332640253 547305675 967113922 619175671 1011344349 696481829 955067370 389017563 896608342 481626975 890673304 572164913 287066465 904411787 993743336 763900337 1052877347 613526052 677439514 733383030 714711928 164357591 924210208 853639283 637226537 970511906 1048151620 598909608 41266242 983605744 263458283 988689023 997244888 12003649 932347594 550035338 542811137 880245500 843312316 770808349 602579324 191845748 960733048 32071091 590764132 270353308 919925002 695036150 235456015 747682514 104061196 603270240 75185537 405185233 606856302 216298093 200555651 790545110 344962378 840091758 1017332069 592415568 279687498 347102499 846837038 545660093 645259691 991464272 499368211 775334691 213856907 396985238 3013937 521285567 426563717 24265408 518256265 961834250 617393571 922249772 525020343 248701142 996377483 678097685 124627715 180470884 301924602 997220804 568844153 695504342 654539019 218604048 310896652 525618397 1002254180 788726621 48662765 847655169 737866712 684007712 151039438 556628819 195543832 505497700 914190275 902316257 1018052544 650304813 820863636 930587379 173459278 606678602 421877047 342461250 33371292 944053656 338041876 115908508 648689293 43103993 65310768 730983843 1042873119 60221015 628827708 313022557 562616085 184277082 893546052 984072132 382586855 7022921 659703289 917358795 1033109352 106555111 623903262 1006374754 191162706 772328773 169327181 969957562 16054349 254367678 573892982 480068152 528847569 666804135 407444429 153213864 100864565 874379589 85296482 737410994 97983220 79754946 501714035 650723358 933166740 699256503 223902687 669281305 538682998 277214100 324469277 475233190 909697156 919269720 322325109 1005340130 988492368 324211342 977129937 329999987 881254132 634747933 856255969 463160276 999924268 358653700 509172996 806562414 482365644 771069710 115690963 165663082 272973276 794352123 930399380 129808196 821278650 261659922 321168418 198781981 946110400 681894189 911674323 1018798007 818513528 13618601 40735045 671721475 309288481 602981627 357319751 452823377 649446263 961971472 692053638 550182778 812887406 693571418 146711506 658972178 881694049 19382719 89558143 439950437 34269535 485712758 839515648 1025004201 937116500 696886830 792866169 615434156 353001170 1017327597 786682053 187232619 1042714712 421838628 1021709987 485133793 273801706 803593122 30860990 721870316 302367741 118344817 365961863 368252892 764535899 139996073 103379644 679404829 966564636 797565784 293450817 912906584 638064559 519999879 694465557 599584841 561468709 43185308 1059418458 893664271 1068748562 568837644 903637944 187781465 675233409 502837563 1033281406 1069331769 231059346 507475962 654197695 585187531 15932433 379436722 90349783 868538686 697445321 1010804230 961664087 794103420 198362835 430228355 188700482 501239549 1069656185 478252636 961582687 859218412 721940998 662182441 246165497 580906792 484982901 692402397 616917549 486275926 926834301 588195578 62183621 564332324 591401478 184105859 667394223 860586655 247814995 255053942 87428193 646421225 456245296 346349723 1069552319 626140310 558592966 853513347 377092266 1051259980 784749161 416026455 175543827 787646866 904764676 880679832 791349193 382950410 258959978 212294815 812050867 106066978 35912732 188112543 315869583 536298182 131957844 698329438 549499478 737354678 616301673 19820855 497908233 525022775 685623441 537087107 441191690 569339394 105911787 434744060 484864439 130163465 1047426032 400991126 874492960 989563830 961616239 362764511 310262505 837671547 162889027 566753024 636508782 952701519 775013339 637798473 861237680 116837452 51441046 864447111 579700223 75629011 505068225 553568032 565003005 694849486 535478044 26910999 981744374 1060432727 151290669 242711535 942803780 223922902 218170081 271516518 997936326 95696757 180515735 403513484 774300576 880232792 64025453 308576457 410831181 394254152 28363152 482146426 911750921 134519162 933687433 610703053 486968613 814927567 407551451 273060596 848189447 216985998 309414468 1055243629 923757146 219229001 117980513 937720991 645847843 573465993 968578435 1022063670 756773607 769099728 156616117 662654279 876820121 816850179 351347793 662472383 628245174 4189728 415797582 829178378 240900127 898350159 846808980 1063365960 875800316 253105284 698766259 509198954 141020583 768145042 464616328 202292636 92304679 1040942893 1058869312 404226004 669803057 909672062 395112048 1008278748 926637989 118571690 556539260 111742798 44663331 793107128 814440206 1058546049 620724723 482821473 634771443 98634624 1061612837 19233478 1015082288 607806481 1064175772 35247703 519942554 777665857 697958511 822620665 962914321 986301139 815558769 266058709 173894415 355209054 497886442 627732230 863423778 895007294 898732743 156700737 48387148 993702659 143790706 263650839 50582435 642013100 565453946 335936699 1046387904 807063730 459002629 592904851 425439476 96499107 346598819 987373651 137864369 448571609 88903669 643784744 951535593 610432547 224348965 486121104 1004325203 1064157117 310491549 768825101 517143749 811272556 645613975 399138083 836064141 769782234 876835530 196197818 532632233 677040577 795822552 722022464 576730708 851625465 196375026 915858664 885627895 398877965 272414988 634606561 729588354 767503995 548187146 18765768 433161083 336060514 772039174 286153366 651057537 947894836 721041612 112902749 640280101 143260736 504579971 952657300 730865838 913025641 785875666 832679621 157581697 529370276 701290258 119954026 576202463 190667079 417057439 758757851 870029430 158101616 451791214 45270931 474958621 211302747 1006019100 643041640 460988606 313927580 199909158 772074591 666937370 296213321 162799266 183000483 637393606 1047054140 287142334 264737958 269556876 705219938 710306009 519055340 1039832877 363932648 984695138 782447160 524858241 3083204 135034151 865583960 88979267 53314512 509641478 999032223 127753209 355380089 409271766 12043769 780787216 737571116 774219010 1013278370 868302494 766098747 1065577091 947486025 945354485 326514448 444800155 774536337 643549 9592883 344423648 354518711 69774486 931220322 423724598 773825886 239211840 848978561 544197529 278722455 479673313 16792351 716684398 398463275 499783624 761686971 868200496 463205240 16063341 399946775 999776576 443315113 97307295 414972194 734378181 419680799 728826451 498989632 749296882 1029211994 144065906 225449270 621029638 49857325 629459572 488830782 821043073 275992771 69999182 139214610 734095495 635681179 1053722080 47075845 296058072 739326831 574249022 690155562 361274773 939191939 742861585 570827046 88369779 163737968 109981676 639510531 357830703 868407763 917965048 327093505 399896266 941085865 212364006 791512388 782896415 14152018 294442937 524069147 435983226 315510111 155516158 841085225 22910909 116807007 178621798 722637894 812023559 855693586 741540196 842062611 627036872 315733736 615608352 168113113 385114961 349933550 782277591 816744688 397871857 709530485 1021795840 781937069 919178497 867736409 387840004 193080531 138218744 164772139 910389976 848975788 31556568 237706203 246869020 73748126 881685820 297893154 476143460 628844939 457157389 807100433 204687795 216726201 237948620 1000988101 1070790746 326194829 787523837 596440463 351094486 668703432 919598772 327054396 629827912 864235688 889914812 874367691 181603422 1040286836 633997503 51929197 894547010 986004101 468484030 29916837 45078322 53041357 219801157 100335098 824783434 844724232 422472047 42326493 211034043 700582857 829807886 386672838 873654489 269143413 135486025 692093227 1015664041 27064393 358017372 298904531 928908239 708314058 903441122 997425483 988918454 889021349 268534393 129819949 316901133 299346431 16687920 427737405 327717078 979982504 72828483 53961476 490620516 894340719 957750038 419545675 703230045 276447421 500228747 878707262 693828595 1070445142 46944117 683257273 763672919 1023938224 764803621 2174375 1014706289 854365593 1066455715 568291188 835871814 590901428 1067961189 1028794091 594075750 875447854 815321105 132304951 786675525 114948733 105442190 646352662 1028608920 330412158 91052003 1046078789 925870584 614560497 444839355 70464926 865295940 244116047 313178656 738820485 880831326 556038413 677214940 1002184668 898066689 381044068 535699531 138638556 235887054 15775283 853371448 60169603 289189263 192771232 197186238 5796235 673823043 917978172 862716005 922499297 1053701347 487830967 1048212699 623907529 832442236 929275757 428032458 848281025 366828021 47477750 1064127445 472216227 264388790 934700197 741205284 374416295 508476336 959963198 56265021 41912812 874704780 593520107 36667847 538739421 917028157 80811496 33502285 656465440 508953998 618017013 653371170 905040463 1065222800 25863683 600624483 45955648 87369671 358413245 911200053 912171640 343721223 761171685 257323328 132271565 976506890 123638218 554847853 1070376861 685847428 569096192 776234 237256392 657450429 881718683 329325185 687224903 704505702 543433709 388185115 612954539 271918942 488797147 1069491073 109766297 1051450599 547644660 742998304 1052299296 142654795 542868579 641002744 197324911 473579397 606137385 753901585 907224099 1058432993 1059451507 566125411 203619918 1042458095 56373542 970623943 1060642804 298841335 106925234 499893073 540967298 657477942 940203314 892680419 743356867 20801309 824148287 360645823 728900291 942385517 13056345 117553845 750308413 265398530 1051223081 274347676 838159144 634597230 760105907 507634532 440142411 554276200 412414203 519640591 958151257 512196145 738997303 144440400 680621501 412161474 251287715 603784849 240414012 548641979 674807935 853081091 637606027 179903643 254228409 493729456 660386347 619567467 244616759 47368646 359435220 1012849493 496296554 812665650 557503797 515037327 831090872 1024853580 18784643 86583195 535476325 857193734 821929005 191606181 1038299903 491371772 314051909 30889116 711571479 331624942 30411903 271031049 749682555 1061853005 442160805 618527206 533741869 418819471 290476224 30471154 250242016 867430921 688403082 909519812 378985424 273597960 89995678 585767473 872409035 35380969 12421716 105769918 105670936 85013806 493083630 493562160 209399404 518087792 831998460 227013939 122222583 97112683 905466880 871444700 403522129 496497036 747192541 431659434 737920485 632155653 498189623 562313342 118824809 58722629 811541276 947645362 138806077 356954197 336751297 753379168 842139762 375194978 984446423 1055661327 402811468 925441163 444483428 572250584 736377818 466760037 62104355 326482410 246566083 890443080 226819774 333193959 49541138 881420833 502784062 289353674 329808753 873648465 494072046 326052487 991855710 473759990 756514782 251351645 825983357 191800218 115465559 385110347 337354202 969506666 72496085 1018718001 805853492 73269224 1011829775 256241156 991902235 485170689 873966436 93659453 1064614960 891167227 793771265 301784844 589867709 1072753717 703200627 19997096 26644645 1070232580 44286030 572324067 74734912 843964298 345126689 160390358 845488496 103261913 743185480 917969689 853185867 754474524 534095428 777588796 969525886 419978836 743371703 901844518 167662194 381785790 266038788 439716254 881990527 858601303 623073516 909903082 842094526 1057097519 1004272751 684070276 825708850 718261 1008433407 19010852 165069935 777546215 352195324 891557093 179333443 302879142 266211119 223557514 786856671 935139139 331593741 432154871 188372779 585567944 406944806 619065007 637110721 533631679 664905937 1038965842 221025466 1050867509 142769011 534631793 420526020 360218345 960137215 522598862 516734772 900401715 191734876 1051452867 779346735 830576780 751490610 899038132 619107069 22928754 25523563 356159324 815922464 821866203 464905619 149318417 242464286 817815939 680809855 748687011 464006625 998022702 756034225 431230549 15142205 297018570 478058489 180384039 722419011 1012428802 822224720 315730293 1036102386 389412122 826851497 140226151 447960027 1046389392 9874243 108951549 613654322 605588401 887239745 267652562 855342935 201767920 559490142 350935605 138656171 166626065 807763392 36261290 517272345 543439509 702713608 54716014 31580163 61279162 623752011 375283378 957078314 459470942 562337110 96547448 589991926 572016956 154282990 515148786 995892090 298689850 804472789 660597172 103551982 485826890 613121701 321981610 558177129 266877503 731615029 377677237 46708492 781679638 225219398 467119265 959721766 660894720 567289971 370673845 1041624434 241284094 368831108 810793696 338845173 168453493 241746284 662647051 611800748 278663125 364292316 865367561 324545286 607814723 173851715 228820193 952714996 430993804 117421451 1018323755 96634776 412836286 556822759 506044630 852073822 300611335 933133128 366948354 1840140 552897459 187501199 980821965 704193732 1007613792 993910458 148904180 789861146 572307882 623320652 888398912 801670414 343591068 632552755 932243840 289019798 651595841 238029366 14580699 480759498 536752085 121526931 1013824768 111387419 1960750 776214034 5036813 465228657 728828492 572357647 940992784 341225495 975778687 54852096 771976849 1051802680 166926193 724000837 363477003 956727257 129063216 309345762 775700631 825814825 939530728 314390245 758125963 42401630 475023737 322458139 77694476 252347088 972355223 1009153032 109936269 603580030 675166334 254630837 581959621 849584869 438898610 110582851 70985784 874145443 298715020 303261149 919903323 993372704 1036369174 508202276 681548918 379470489 507526034 803505512 388173909 230670897 532059493 524495456 372954325 369517401 732171734 270596419 191601690 338572540 632579259 791135230 187960170 544665818 1031937249 464787343 642017494 993940464 757480836 383663136 10346653 431341198 248479593 1036834040 386057171 742795908 27069438 416905345 693283950 802945407 506271847 516817730 531611996 936163186 490915072 1072188851 200563338 134073614 479485547 552154726 5626315 917341243 855292879 734539961 890304311 725268558 983790945 247711368 1063115206 581263748 104104311 966193370 1032489244 661107372 194445496 726989581 476625762 795063990 798775779 379175246 868574005 628386379 821589809 245605412 878891827 65576830 662959959 756553474 964172319 741159245 100646501 248998559 676233243 552354938 810090889 206240636 684421366 155034531 737413155 836930425 97034332 301775858 363177818 459856050 305228142 653480136 230731474 244111594 263023033 709701570 685840689 297154289 372604786 474667316 568245828 597426172 983895809 410511308 454090538 860003832 880275477 85467718 783941432 143852879 607811974 493540884 837900262 508450370 49578997 341858408 648808882 999228785 416727445 328547439 93289549 356476098 1007044820 720867788 204562323 447452753 833500954 282766680 2353294 282546709 683867204 1073210334 1006590432 800523690 16217680 468409722 663788667 724315262 563901599 100591994 43305103 660305418 104488119 309307186 139586287 245982282 784411466 1046343246 219498149 345615980 865104798 817612443 26586725 828378001 259660130 599694714 389333031 320807127 646247663 515697778 75526273 402408083 59350499 167249463 759543918 654310768 772297763 55398554 168013792 511019085 874073559 906178086 757969396 414449986 606674428 448739149 878545824 273467171 541215017 166978271 868641161 362680279 299836815 191142277 352606301 62580998 40088617 941172623 809855260 930410301 589683667 1017634884 806240461 771212603 135332720 702562528 841595797 646313104 666009785 789846269 893363952 297352807 287792884 426828366 184104649 548990891 501582358 138285921 186754761 467776385 549792955 384789638 726157801 970544881 205244528 172861458 777586871 308279562 697707180 532280142 376176565 897816927 670261930 418356865 458877959 333807674 515599969 209999404 474059508 92710615 7056235 415564745 817076098 571299988 719870302 370081024 363113495 672939773 817659961 791864726 468317175 372433173 140018313 443113078 370342420 191185204 50498413 623996202 360570579 978752506 411177446 364071736 830227645 919772991 1009873786 662623618 297398040 259484175 909998357 420627209 343618139 1056644062 621112151 1058967738 327997483 661505971 822187040 774267468 868871532 382184914 961752529 599329903 660044796 818376509 822605467 387532026 514778363 849850240 69450694 684285264 1003164114 564911066 556382760 811115246 596572184 620278630 297862511 25603393 1015268782 152009998 688798405 257790198 294530724 668227655 707388155 13698636 817709288 873717274 40036551 517877686 51769373 566459176 5862752 790261314 409099405 376838533 148440380 304357430 149978511 827348272 404784681 996579826 795559636 324401812 352040693 474815968 361729742 550003012 390684416 763166749 619563410 244782297 397983874 134270003 351343934 86573741 457244112 145592762 904430813 515509467 309346542 453311941 796039251 911187458 676912593 653359676 1025367233 901715885 654431931 902484059 500135267 869344860 699180710 447072392 587398331 650984303 174766396 1060690446 540843423 133412504 54923641 245342906 845422949 724368291 572945081 437866668 707958156 476084049 723334189 446006487 1035260662 792649224 864956255 927641538 671428564 496563618 429037989 404674419 539487694 1011422848 603839087 190007723 566666023 378317963 412437198 625086761 150165557 506403299 614682529 788759100 349513692 188119659 886856742 521768372 171570019 441513360 459865753 104092349 191945000 500721872 979244698 195388831 1029602200 1060064465 680576121 890299027 9184554 216219680 937358108 27306025 349918969 884622378 670634421 715400795 1066398687 83526333 492901892 270819066 1000772759 132302052 423458878 964343306 526567635 989640136 121687806 137161924 582750065 780492228 489831616 232604159 852539038 953953298 551825715 317133244 729073623 435154103 560228668 962461964 724196173 1061893787 195922947 531035602 153455877 50259379 76431549 715893570 140722843 929956448 778338215 168369253 1007832496 1011411736 499258824 299311984 213871984 397547343 201915922 236823320 559883469 432843820 893611854 895867560 452925841 845917843 176653661 161093398 662432423 645522026 648008586 589662047 27385991 381574231 364673646 856162765 887723505 306674748 823921807 455717903 299664436 561904434 874612517 119626595 555386596 837480685 944922859 1018022740 782085929 380352877 716109718 241709585 722874304 383992011 765739474 253550745 640024877 728488599 1011964356 39163927 724956201 331989060 885515066 675592685 570780963 379019706 291949521 611273758 594146697 445658273 425789215 223315753 248092215 432935551 15961534 316486744 995708012 138239228 525331557 1003983633 457163881 75622001 193428587 152455575 309644374 316053657 488460441 727412920 743774083 291766677 1033390232 237153156 418686371 988522209 1023162816 789786511 540443200 431006922 612694121 35898417 315364902 426033191 421204446 333623510 21765490 37717727 733001881 414509175 337427353 1052582344 251795203 54743048 112850119 311213820 1001955678 975360935 625391389 248325650 231812096 295373921 108830100 303271286 112912665 943998383 468974908 1064186657 391129970 27347752 777939106 869613599 1069082023 713143662 624439205 1019917249 664400923 663827702 582963359 724484972 7403561 1043721742 897613813 82983841 382576924 586240095 18430023 979625626 24288351 228034752 302707722 463077395 707311246 779742404 74138545 159410061 706118738 684464491 472303380 568311895 1047863868 105179874 586579010 158739019 338446003 840701382 891763865 693230421 204476918 873440984 421534789 3371312 998172003 992987435 907980682 179924228 327237988 1007853931 1039593279 762313250 979813356 678212549 1011777319 877226164 670960047 240239219 981122007 861836323 878334576 850154963 579703 670397705 743073188 455519385 947430360 243506730 248420368 422502003 652968697 162915310 910687261 220548775 62833363 977263466 746530064 243386810 279504899 331341324 300545013 642294353 239015732 582623631 394988895 15066345 944116781 1409720 309120839 906901167 1040533877 113859581 337323633 917211892 1012498922 589221808 531524541 1043109774 296306995 108147394 744903144 242618806 660621978 303538690 131347880 320561726 741361002 749102220 965003227 740734642 810350844 167180922 514350615 112888303 11920409 81518673 1005709585 447014686 483316421 872784954 365920750 1035450657 675759298 945374048 752211520 481999647 177543299 635219926 572136748 741588507 399144344 278894086 782322105 403289005 976048741 390288387 103397422 556372772 875244881 371481942 320834962 223300713 37951917 1955930 535583043 749216071 629623651 564155617 149572935 665546185 366619636 29546815 60029593 15709009 818233328 898689338 1001163889 892462579 480715376 516816786 601152687 456634088 617383731 459260389 933918974 333783727 764539157 925608013 928011168 721524120 699614692 1061712179 1049241408 205185372 1055042674 931236276 195583719 294472896 615384605 474668752 948430946 748822273 354590385 413947495 1000898448 756250785 543580302 555662425 1698877 763734608 506919383 944551799 132624445 778914074 857982940 233567357 210331902 319716301 885359799 973347315 22906877 1029992739 275551270 91717251 411408383 802614825 552489073 969761048 47656671 957948815 1001321728 639926516 792740028 439704025 670000438 306851183 468874575 615641330 365468212 136152286 687809042 800931238 48582911 80241611 77312064 933655454 565160585 357481264 42396015 582610521 256967418 121346053 483925454 15413294 959311597 233235574 451002862 107831913 117925612 623512935 785387430 845507635 529666300 264646677 495788595 425605213 876153012 122288957 124374828 735585200 506363220 120639062 649608298 981231002 594215907 132181093 571262287 349123816 750182159 129414835 102942253 251772730 7101998 988401848 948650365 627691831 340169658 46926771 1006163915 485487323 174271712 768049041 292273539 331390148 541009989 1030300251 81181901 121605807 357074341 185360371 114838438 12935834 345340146 381389363 921185327 66914612 615243042 304934075 102848450 165473365 252441177 602425031 969839372 106917947 23261841 12552569 71978414 564418760 1020342380 611781675 548154475 314275127 571329871 526476391 326693605 907780608 911355464 499170244 493440404 120892560 28239892 729018396 675130619 210771890 163117637 890259502 36728273 663495153 614024894 365540566 793789410 1069268291 138497602 481806400 631414835 813965811 65299996 465638718 827955913 443675262 824326399 396037536 256376998 359778844 1050534004 618389966 826201174 874705770 59146725 950794839 1024569463 413754424 595996274 548106712 595019476 131515641 962641047 690473091 537497055 917128425 171190787 69311820 39157898 243649224 1045324318 419026011 197189959 617605708 884082361 299541062 87572547 373712910 48330162 553577649 888831518 861983632 829146952 449293451 991944911 109183907 810880694 258082713 555476123 861295503 363504797 645380615 668714392 444935912 920904005 622333465 324389672 91330330 137835633 119305658 307215669 30354364 308993296 461577889 493373340 323102964 749219284 981139326 1038647095 402227134 677443340 763928742 963089593 169719278 938434194 64875374 687006142 434908950 169247593 648277766 49902045 986016068 1011075987 40752933 888878579 1012900310 868502521 96957709 401430862 722554398 869417942 387923215 337259397 496680900 101904962 659075794 786421448 378589022 1048080255 871050076 172774552 488225794 145391388 624328384 994321794 532985713 705251055 127209157 127744291 1052086381 6126204 343454932 94151766 1034398275 470156981 322690984 373762058 522429374 287278684 480675983 521053265 314045615 495096973 76266841 459546140 287250181 967025824 1021696679 786684324 929165806 909686285 1073690386 692894830 950340271 450243005 578049331 885911294 517703175 539476155 485199168 243089316 911817311 559752166 623402271 657363043 740976277 328997521 726664371 568079412 339346680 278298443 405776945 197188239 190097973 921872264 940813770 535309765 243180915 966301266 145808917 633694719 500742873 435143543 80061744 333342251 515016380 643172341 293906649 148836760 109771708 708154041 667660581 594661811 889239513 742306091 177333769 773924033 11239828 422269693 1004759469 772294150 821783752 86349252 322794480 1050163998 165141480 955642277 618681011 272540228 936198 494478959 345713092 927760780 630955458 697316164 817016684 658984901 903941716 430216299 774118347 727796929 988801869 804810242 989854171 770559355 828348414 915775908 729285381 65869784 310557017 159890577 410211974 119254153 891616583 115921308 889365986 325812763 79610631 665422537 906526928 124886177 661167925 539178671 706902896 1010951992 669311803 685519763 670845881 394408927 962433202 43231244 887596270 947601069 462248982 938942386 936850420 881981912 169697173 697245668 712720243 426108571 3135108 624829776 674391292 236407000 522606490 939163752 356025782 330891989 907450407 794054516 359269662 706439509 918570365 215855275 518999955 153978761 371305298 129734301 20587124 1069007509 489321190 508185862 785253171 491634856 966962573 363029387 178274533 650437582 2138142 128744370 99845584 24749649 1055967493 333185483 565384255 359792227 395504371 140174980 485902105 452448217 491926470 538265881 120678738 623369217 101422858 845413050 1046701526 286457614 16900286 673562824 1008906278 228123185 55959356 719266734 829667400 785701674 546727315 721135895 567149776 299470479 204626381 825842594 415517399 843407627 831147179 278980783 862396774 697827113 662016004 254938291 248772417 970646852 25054767 123973514 361443730 181423933 1052076445 104280102 678617004 919293168 708543244 828268893 843412398 829775464 917568314 874100324 760689175 381626711 336224090 639996468 918091885 549458249 176215696 683729225 350515043 1035584606 605224871 564271442 598331380 266120512 920111703 887316928 632957817 530241632 518723527 605769255 110035443 690914124 556142327 133951019 88987422 156523224 455240776 745771043 1010383976 910669142 62897080 635084195 486281089 115262175 1021240343 862850893 644829197 84259978 215447862 1007438268 196131654 199253821 684604531 176100121 955411570 69327184 1041959580 605374898 280521738 742366374 289650232 29191222 679354293 233823048 952540506 611912546 777461702 350504381 878712594 177330323 613847893 197121172 659623872 927146724 1010029689 270607589 1047571664 353624693 1053900560 545915420 179399252 835503977 227027765 966034171 690615453 393474930 149001549 312909947 983110000 192387866 680646671 682594066 350664851 437041581 1046523372 177158668 717883952 1051262418 1002861918 465402465 373466664 976859297 813299757 577623065 726054314 345054687 318180401 244060919 93348359 847868578 555201515 552372084 206261483 369949575 968598838 217973009 806100325 284036139 1034893544 426634549 389775377 790896764 205572807 972827278 101063273 316465673 1037510888 588184031 363769689 510598063 16292063 521969195 500608691 176534012 1049374887 535932555 213285689 209375525 910231952 223599564 145330988 659874080 586239026 734015541 912642278 939546536 125450186 387033999 1037225721 21472831 261118252 640578554 930546726 222595761 1049772184 663993502 773238916 344543952 32140039 376015195 104674007 346782095 505696011 247266916 293984515 1068268741 239053024 856438777 918678472 869170166 271486028 228123170 105668424 692932465 584255149 556875771 598014962 906985599 965725922 1069423438 1048555557 595270603 789451115 961571312 930544333 173487625 413523867 777423228 661377901 31838410 250426008 243334054 424746399 957904150 231237772 587637955 91156285 359977439 998049852 97779511 860089824 906930049 438319241 589587206 389584340 326279862 1040966604 600213308 157881792 250246442 997319618 655324457 127720860 543937129 1062470721 379639883 965022597 616143942 539066045 900088843 146175364 384716106 409395986 499972934 191766789 629686306 248432818 814151476 1043706587 236326208 666095511 515473117 47222689 190734695 345221505 760547617 235998808 789316367 581545174 811833581 604434573 240007935 965689578 607524208 431951692 510659287 907559691 308850717 76180559 507162722 960134209 299247959 1028025013 168790740 98609424 396647582 398144920 451006472 693518028 120761744 755305693 251003418 796455515 825614522 546409954 575093625 822680685 325360761 500860613 818574468 640485012 86237195 315996558 234180599 1059872429 76166549 241441648 936930759 863997238 689067012 219749228 669325678 770560291 733938699 307316871 939320870 850863721 497542082 184292682 918111054 135062631 943745511 669963690 21002595 718998616 1037757253 700442157 104899445 680085733 97457998 264040565 103940923 686292621 84588552 907060702 353565796 993068575 613064273 745220626 847825728 208568040 906161220 59003910 59308006 92062805 19043708 930237168 596258965 530669039 634868718 738129011 406980906 508746128 996396577 315020434 213134633 1015420651 564052585 336708734 591231723 908704228 465816906 113509917 288435840 412325903 848897123 1051001903 12878845 219860464 31023440 672543883 573863133 460812037 712272468 992166719 700400827 677750165 794461919 930566129 71668699 1031447529 711075171 732736884 768050126 1072584665 898834139 181082893 773599689 946837410 637377439 764746006 865199919 786600513 147381575 125100008 904892743 955315749 865194869 672500757 525689465 765788399 384184966 1063397229 401953593 709571325 865148203 787032892 487091226 780458434 553448802 1069282810 735344197 987870017 484572127 663681189 399382265 705128081 451651130 604580580 861593033 253376795 277012066 146482678 422247785 386148499 761221490 127675393 1062927495 814561862 242420022 214586289 146547940 348421659 519568041 780538639 454959575 529068598 367856385 670638400 309009366 38753196 320427732 523844470 928394885 105973263 757494652 773698673 580421170 536404224 841140166 268466874 188224915 386696206 877536382 193581325 327273680 149430656 352446723 807679165 550616696 1051902979 433091213 361753725 400295030 571793750 854515722 410587213 83678837 541647014 342796129 343521163 413608042 978977953 872717437 799114123 478926792 673934935 891801126 702803523 441737654 224768392 847487891 4838265 544150905 716355560 835998138 164274736 503714295 210091103 334445308 803554561 91483934 917820838 558745065 165197506 761819672 312091444 756672381 225126098 884223110 1033979929 541216171 966945121 72999573 226033724 1019702529 8031114 676531314 14968750 479136921 366390370 250408839 604758243 811072396 636170465 255351181 859277139 243247480 925005867 539069762 427425525 188406228 252922336 726269962 945875647 813634860 58939884 952463901 375715253 367229745 546221403 893280459 346955654 277550717 1042853546 674862054 245641397 1071509526 715012046 597050717 1040018091 56868397 904496529 342788128 1015654520 185146811 726271850 696694586 98626424 419668278 1030283784 380131109 759821393 983040448 1062951328 98364539 715033956 363947745 888166840 115530688 769279000 293583894 945692583 341753287 1012550682 1056583860 565514747 254082993 839697468 678089605 773282724 479829356 92893480 66905418 745080236 963537032 291356301 19473299 3386155 51084718 821673481 471881248 470785950 571978353 705201601 885224441 1002105752 614313067 286567030 671385545 611482910 834417760 17696549 594196291 225812344 244800062 157247151 958788675 66398645 287544498 195977151 713412548 26859745 628251814 800903643 977265866 190542688 5085360 1059532885 113115964 648449160 429289852 905828717 346795614 854504910 102347053 743086338 265812637 81675618 131390993 689754324 819172181 212790310 755817837 825506937 380003574 292642016 237249018 265623825 776463298 409302883 799676925 378024786 1064768672 920946695 960207372 29027871 41289609 828683597 416844940 174765042 167410814 771043188 420890264 435862058 569394276 309983244 422799081 41866806 804217417 854965415 914861723 238236989 977671295 961621936 597579866 227981678 527539086 667751309 490146968 527526880 139598259 526675272 866745743 164067605 522150151 557847970 794330906 719782503 644261451 274952662 453924647 315759881 394394741 823495804 1037665591 995928816 570492379 764001363 332943728 932656937 506661645 8825809 266094855 855106877 649641285 1048943431 816314320 299428571 896640080 195818726 1047401385 669149290 14360238 302201234 567940831 281716910 106412994 840412701 477668546 621407705 346361161 196330363 900776614 828460535 1048417782 14359460 1032265655 476533286 700601734 1046151821 292258828 1020569116 676063588 1009192033 332482077 884251491 354362664 871827955 624753279 874454205 718914677 499996282 848039803 372823288 644994940 462568917 808881876 984774003 88103325 323038713 157379850 152955464 770058897 286517695 811128712 95568809 489262182 555916307 351340389 501173221 552610668 547407832 1026708181 215100735 245836463 1049910872 387828788 484967175 733233288 805234203 369104816 523807626 829781999 573466816 417874031 845388976 573362508 224215468 973249371 652868365 81805817 402107141 147484649 621701717 244628018 518765616 598463440 439797565 982737550 747341361 967247808 147354588 535992315 986934133 345121773 241953524 337870766 493199769 990533645 766540676 512456079 438591631 366646949 716555156 359013390 573188430 443818531 103821342 505292557 341643946 933940422 154263322 1072112302 86758408 115433584 592516441 573119494 857192523 351923070 700258301 926230733 722065764 316865636 73350900 740657105 892393890 4779977 267938569 954731367 597263851 696881853 464917318 747183290 44869543 585596809 193025791 370052864 796623206 770837245 902683701 931266971 201872681 881492475 55874381 40904107 538917468 525671405 1012438264 116485830 571247799 1010468984 569942027 790748913 1029056126 720941654 100027502 1063351633 536143290 926076021 894027840 807572806 175432541 440028255 566849915 1023666642 497388615 207392313 37276142 834407761 105166286 340944417 774981010 830561590 663615105 621659383 633868214 822819589 514970782 471148976 441613341 67273027 916837361 145692101 617897734 532713113 268943298 245550920 922202238 729329973 909286853 341455418 904492483 491126533 545121776 1317643 781165593 483342806 776051722 605253415 433017093 1047588323 904361604 900170255 741308320 600084549 977842351 667941629 717420639 883555909 295673606 123912114 594545748 442472897 1029403006 614755555 919015039 9520249 903085351 772666904 628692618 871502945 1068584299 122576819 950803937 822633939 559755768 90472691 758021665 452711735 268708265 712329795 151846806 892430358 690111808 174859494 618531616 936779818 106765937 551051137 709187657 252719727 435691932 303816901 1030493677 776944118 1032061160 1021390690 337990242 638424624 1029356740 788606393 833628453 30252500 121708911 119744491 109463573 1028003185 376251969 606427392 748266775 369547363 839350536 500529929 966344176 596101829 444297253 138085331 104919338 680347769 335180406 890788161 663720829 786616132 1065727089 757501916 655024872 615868953 720104506 371247356 898349939 662468224 94380327 465776284 832576484 101585849 268373622 186066658 853303373 903978860 632429982 364990248 599373703 129323316 783436738 243733724 399377656 375504925 162560796 563890052 655070295 489252094 843222949 282221883 447984790 877869691 52588055 603785839 1037074405 191930583 551534394 54034867 267322335 642700060 977008524 735142296 304415383 321029906 15285209 568776739 1073320749 507690261 725647180 796919031 841433840 615501334 653336862 1060679237 472827627 293557428 164306854 401360462 890744880 354256008 853930688 409939237 319002256 1010388891 1026557806 457315480 915999577 153251136 965531261 167243329 905588847 413524909 430255881 682501564 132970348 592820082 901275182 362182325 188961428 985834068 539153803 895291502 588144607 865211656 148890655 535666808 531053907 48124458 638100527 190865835 15564681 633112091 1013204491 943071360 949195647 76765404 778754025 303158638 100869106 850286289 699542035 436852635 947098332 394432147 402461953 783430001 412731938 263041439 594500039 117975598 186165284 87716725 54740193 807636119 688330535 287158124 253070174 456615657 782701484 364199742 1017553835 254682223 605573086 199984146 166232423 309340221 549060409 1040902538 769298116 379279527 871456679 444390240 854420158 144158039 400837328 804026280 222695544 1071830499 342933002 412525036 163414526 879791574 994437812 517604286 321112481 621046260 992595017 305028393 840898826 924297031 794547080 110077388 832244102 908926319 206279930 687354306 260892668 43793555 39531315 10782536 437162636 58250340 539433899 1021525601 272198535 59010754 485957686 438757477 831114847 690653982 125313294 661650718 939015302 463276210 615829994 341735992 448547532 180613057 78814722 7920936 128053612 31052188 813621786 139331668 677268170 1003965613 383687084 89577918 55375403 1053997974 846187209 762105309 60436847 587622714 1023804273 542080277 35628160 684365536 723803640 56708093 31662032 857366777 522859332 416094307 635828692 521685363 278246914 306027942 376703810 948311309 877925647 227560409 608806068 413394308 462064380 1032423269 83391919 957858019 836993255 489100123 684528827 430914626 1071307567 758890159 804839213 1071777479 796934392 351182297 910129702 357410716 930146492 273475147 614827045 567730560 86777555 99197134 449231763 752828308 426754700 42930200 555519495 572863284 908763172 936973183 862628251 317321374 571402916 215504827 893892490 675616625 687859006 307295978 588378639 654898916 415367344 719002490 779328293 312157653 979463475 21191870 964320185 778771674 775764024 263180022 448829490 9743453 848780413 464423967 427733886 174538509 453719802 220684539 479716226 310086949 477403642 642725014 54230714 656321058 560990824 523882702 782019234 1002558571 906958290 640213206 803415834 97679641 36018832 1042255524 189344332 957925501 349021988 380324892 1013841220 680663521 683279049 449609873 821112153 841797786 104744002 1057065005 382407452 661289013 247471035 136385671 244997925 224333113 847895470 60717484 680252534 1041043995 982537514 902483532 1021564805 182680344 159614371 825077469 917411818 71227321 668677739 934580962 983728858 640628378 53071717 437736228 357938081 474433380 705003424 51327651 412190615 430825207 721924211 956557222 513922199 393997672 596337844 169036113 1040283930 652881975 546589829 930996233 346799191 83320805 545384419 986772785 358255952 483260711 497544695 107038592 109250007 721403715 486912731 451719452 751212248 814611110 1048909054 337028758 677087689 419357026 940241193 213051517 133080192 115178071 235370142 535327512 953227531 473754967 1014193660 138357648 444906951 988372690 341928050 14639301 284070219 406051402 62670377 850661609 399585821 215403462 199693421 93532443 973747759 1042709495 849894349 304088641 65949643 28634063 581715133 943976170 691133980 472027767 954004781 363363653 269809146 917742206 420702858 144054768 1062410668 868140720 449350993 966453722 670247984 162961599 264076804 85989620 762048934 171601314 433296884 415558392 354649038 875869203 392989204 725699767 461232505 681360955 1068482497 213810955 224530403 998411740 214879413 784487883 82647194 571913925 228675463 83049020 788228374 751332197 746618246 304517454 301954285 287242640 44920571 420432608 866460369 538904251 725581631 779834036 663260209 71469200 576584767 480105770 591015398 380346963 1033927518 443311576 271972045 677863681 343352668 812688550 943309872 976291139 492584354 205820051 286813618 992276269 302695851 546472717 605244374 679675611 168819342 112672077 807107351 144043526 595815071 360006366 930454458 900198762 106862698 146560312 423798703 594814890 428704378 924174455 103259875 796239483 866682891 747978187 274575594 426212641 884451997 177965305 536437719 817973765 339668061 813414739 300421777 958824621 911286537 828303262 202792149 409914415 161783577 768373924 483542562 242901448 912270805 841873127 1042566979 186313785 386746364 1001958723 382687907 194930712 756180943 813027838 56825867 382692702 924036592 862777599 40301758 12059540 511659046 920996235 180254344 465346384 49479366 603352820 768311550 267378044 473579815 520291762 553316145 349360318 859359781 147276997 174243841 765318360 368983299 273580630 918737687 253106600 46138974 435694561 272702089 148686608 46559038 509795453 147297451 734123983 812760517 293286869 898362436 1024495561 750894542 473247995 411214707 74999646 485565251 737198963 359942445 1000606399 253554729 909498855 382264854 540376171 1038321936 737666642 269636461 398925172 362230582 415287535 13226227 639987115 560522310 428454078 769659440 227778673 971120368 442099440 427695432 440071079 471417599 239332245 982629090 599821561 518992171 20894607 319164090 217408320 129473998 332828152 1000359730 966640624 505673188 520890760 840771460 47695543 991210539 355353489 235891594 973517216 498082107 1019059153 934195360 503261350 923362319 654343986 236180929 120266101 478320937 485445506 816291123 644351912 813539288 230891252 78802924 229454901 166377269 626115398 150117382 71714110 753699409 831669938 848119327 320645496 319713641 46836207 677100949 934901243 708464060 377925720 601831732 254225784 14577324 78333610 647939282 818447622 132263820 203006200 262138559 575824423 235139827 670085223 129569958 97522178 661299020 874006292 1050382505 167205037 638716921 653181028 468355578 810004991 78940949 585383701 383439444 147485235 723520083 204945940 156257205 718523889 1022494918 1041636533 701624470 917316640 88792178 113271903 424739753 837610353 917385007 475319433 179180521 159643282 340526924 959282985 889741094 104399963 505940602 135160474 664743281 610079322 37025788 572049288 262185515 569921891 874023234 669295316 22221102 827374371 685861807 422245492 102698233 181517573 389616976 1005752368 291705372 43995376 281880715 1038054487 667257732 856046225 841676445 1053094649 809175315 1018807339 456548218 895604069 113177699 65261464 13163299 973919531 1064439698 710686580 794262105 412705080 959596682 752022872 863530037 881190254 784946742 1001256164 868439955 895421978 471964023 922030809 184105981 863269796 590223065 475990714 476854130 1027246419 896229531 353819987 1037155175 243921269 256491139 535129812 58116043 228144715 68854263 429553853 60908659 621919769 706538684 162490142 961867902 882712424 631992477 828495970 211505393 159448186 376579345 316946305 532796882 240329499 1019038586 291960636 954968158 147494561 282948303 806089762 926724623 4223250 723766981 409189579 505957650 1051437951 496804833 778887297 744731052 397072551 213686327 423866740 561164159 439981468 581857923 548412055 729953631 743547796 664797453 260202861 157279234 779063836 956906851 871226267 93735309 709108083 132014465 26452606 790517091 855104118 735809736 970576060 910916301 667003580 553874616 183355515 123665574 266315442 533881317 897207749 721375253 51066836 53999186 877793764 983742638 582215781 626283348 883981766 1019930290 1007928595 985868369 87688731 986203051 731514013 520251434 410070109 754212419 17315494 459734082 455018900 316480745 644364935 148674084 424008582 488527500 1071134027 617992345 372974033 665246710 589180671 709722689 519075051 530505861 600516129 21141746 106596056 738939011 304230068 414050835 845249150 590844829 588887561 763643883 748765496 203775847 575061002 1018180053 811256915 233163980 215663312 315437613 75434232 620679977 170766460 400414676 818184797 1014708311 516096074 606037113 131777777 981592099 381045822 211975529 726643573 23114232 10342811 88063748 684030654 333801640 102741772 130007176 265281324 658607599 318064786 928381177 97889197 10975664 980910973 400932471 9712206 889805816 799023701 143987174 130468808 361443126 53896713 349555105 1047821941 202997378 965767866 985994881 230598106 225369043 421883911 880411878 165052728 450915562 786243782 284145909 911718806 696755033 590656827 158753056 284792802 132686296 651193203 206475971 35744218 424930266 44731235 453304158 164167550 124599316 1007942382 669081840 254851603 35098901 1073513664 940190631 42668896 357765961 998209206 580518142 116771900 864278027 136928098 252374320 327769764 639385598 775240192 263856065 999281568 973026198 322112533 656429165 292327695 466460012 350133802 934814762 62001654 212860834 526896711 674333166 328480651 661582409 290976479 756567433 796281647 255089915 372634560 770049812 956919727 974912792 212251248 618899983 706156155 449486685 31728594 182309513 941048022 379385440 1066320745 702903672 906468334 237622116 421625958 855804736 988793099 45627931 501557629 65455976 143709791 857535827 924581855 194965425 104168939 117785433 985162544 163267436 793534156 819264708 265710985 365678219 249857106 977073613 597925846 476368171 71298096 769781747 284153497 633793070 564131594 621415519 1042961059 481639605 315539082 563674954 924441105 1000692417 208035864 464080487 1006390534 68725177 805530232 396886323 350835543 960011248 880826646 865435410 810847218 583604905 937837387 638510366 117293965 81235488 525446051 1016135609 1047674394 898816781 374100455 366100597 818576272 1049876619 87030485 704458015 682183588 753595658 679214531 280368883 1018370525 4107952 106551107 488575808 356723685 701473776 985005786 808267920 366297578 594852654 109380984 214051151 611593380 319847738 860108890 954548910 1058432735 486038899 473875828 672658248 1001904851 578493431 376391649 511848706 979298009 744284264 5167689 206095848 221427930 1039983617 684547874 372060379 723854866 657239326 727746307 952091186 610925598 500599999 643549532 1017113119 168011233 310507314 400184494 221093270 213460323 616285431 533924360 659807393 224043498 518244481 319493796 602136690 336152684 579850312 235076803 861943729 984069967 693654481 128894380 975453628 1070250392 221616036 60296736 36022791 815739110 832061402 502334834 157800275 6871838 858943058 913598334 615427023 335935394 853514726 27394303 485529927 565123890 733616692 276119687 71246069 821782401 846718232 1022522016 86739075 192886335 246079866 451416967 661981591 93992225 1070757651 849022224 786487890 170373305 254645726 422431699 999373420 433166081 796072916 146730097 17947556 263475925 585418280 993247377 711850714 747258920 528452738 111635792 876228726 924912734 870312895 780266357 127044396 909598662 844615653 220262740 1018552185 121088633 881713180 640486393 33518640 131614584 921953806 492059898 918926498 457988294 957494519 136017976 80416485 912147398 118425933 824365021 66163287 810094310 127645622 428079306 1022348729 177891966 956484075 1052970926 725579747 1001570387 399220595 722438799 137800994 66893747 175682616 44374976 148441074 986514487 669895446 4703154 506042724 157705780 858258014 801146298 667343439 610148859 605873351 728915277 406878125 1009813961 983651781 514758700 56083366 547605194 1014987438 201766392 513306108 176217013 936456199 468448554 757329152 697684634 2863610 39173777 21046766 214597923 261904028 638194537 689856697 559290609 64710755 830377006 754815991 410451650 214320565 905082499 180674596 998291582 899059977 771764664 1044115418 687392738 1017979586 827931953 653134611 798774058 1058221417 443853206 475995861 872768190 60534673 27950245 264550320 375348868 858444741 308047843 560988281 560676931 1056523699 288693365 513038812 83904344 379074004 119448543 448300867 644483279 775243334 52592750 956725773 180538942 831126468 268075831 693913429 725535020 200191550 88335011 786577049 612327704 337997620 573150903 915249339 325994468 168559581 496539444 947299709 123461619 199400074 952427061 97220768 507015863 523831853 1048995866 629298133 214592429 547093240 353682022 722750989 70838662 942000497 393447473 314491743 602447637 656743475 639150035 189057453 929205223 799044894 688368851 992460535 519734199 62420128 329601190 1059067906 340104826 967581928 213792872 19985102 13386643 445876326 269514099 733371052 283858584 675914858 145586358 877966956 21745642 206016459 97170122 792536373 864927735 966623215 992623946 344017657 56148206 108060275 203049518 401052311 135759102 912591686 280019852 374733206 845471293 614035794 989501101 807713705 63656688 780879235 1014811744 533356095 413790861 298616374 642108240 15862227 701891000 463013069 843947679 365799201 847206233 190803503 876736204 721721702 529091312 542452607 738165254 61236840 690709202 140501089 26613118 516643918 873194860 1005384631 220298660 781116378 798817647 485848378 759252681 163088943 145507922 741593077 761732531 539388823 131499664 1012234147 155399783 236195549 887316253 345440794 582861408 606994695 142944506 152953108 1042177594 946776528 613040745 1016044269 242685635 182280812 922229078 1015321724 146148430 401516709 259658753 492403754 705312727 746684562 334474515 239615068 489897627 367362183 220786281 816510079 451777603 551264362 823917859 599874172 873930378 175733962 191746604 309900957 54886915 218731836 965742722 990384895 63775613 627995454 98201385 823770197 407722955 485561282 462413135 694407967 647394425 980607543 621588140 754459082 579854499 402639244 870776824 285009608 58399767 716391324 175078656 508437013 1035684433 309147223 623315125 483059354 175688583 347240391 567629029 191783912 764303901 128099250 251207157 351614078 74058504 755092137 870107543 323797442 200102606 10713765 1005454848 462345111 985235236 274503957 1018783833 243630642 106262070 859904802 924793498 989335492 1010783930 750896849 51769857 287488746 84084289 35641699 526850445 514108353 525588005 623392005 364893998 53299660 677206970 721964796 175860950 163630610 35382264 745450572 975637141 1017604385 668229600 157842172 1059826492 900836667 100491386 998652726 547892111 919907336 21821943 982634682 821430631 771374652 306971299 200409666 490506754 436779070 146420404 199777113 310315172 233138188 962479999 705245376 1067569931 765829888 794888711 97491229 274790477 818161894 1060000400 445493484 849434083 930872538 584608035 922465944 982019385 508550208 264581465 1052391971 109642304 721648419 1058239306 1019368754 741277879 864731416 464836759 245606294 814441104 180339750 619530922 92941987 289741527 689856019 546383914 864481752 368668018 485021153 42073506 235450627 258673672 503718103 23182228 174740150 436296855 931382238 212147510 825646988 386154383 980992995 970553365 227361172 267816848 774811184 283648600 89889979 455875112 713924305 889112073 499018607 254447847 575429073 225212823 992703036 1041040597 19824823 55992558 64475948 13889523 550933854 936836039 593267156 812252801 818190464 467002849 746566454 70203410 563896636 1024159004 937179520 620308273 915978502 824295522 338540695 297251677 1054868583 2827577 1030023675 1072229965 982522965 672464379 200814531 553869370 866897688 637195486 725145488 570050101 297729936 834562516 1052492028 631290414 498704835 445502449 420235860 386968899 161348821 739865328 798352144 261912141 498338945 113996903 44732252 1019621966 253131604 1016548294 938558584 709732978 334140204 30163116 57782014 643275728 915633260 905628555 191941221 698705434 746120045 734017410 789608289 795797602 491387828 98718082 792934780 241039647 603644545 995060419 759901225 1051876338 980638736 845951915 350131909 545083901 359920827 768663768 618395082 665714309 152242567 813618349 445233191 665293 823786209 387178097 634208813 897475469 866442179 397499917 86031578 180930722 352676695 936331107 507042770 652878406 1025153973 815898795 896684936 233206526 56752075 715963187 541258744 578945104 818283862 337216019 1026883931 97009882 494590272 652673583 853710148 405151141 655557076 500211442 272184904 805755505 4144010 1052652891 418937140 313843418 53235797 581136713 350051677 994463782 780885064 81473930 94579559 424585020 135272111 409250839 223092808 967333962 221396850 849568987 1011342224 602314267 971331779 111393034 233675681 938128449 65328411 642367195 508804780 857526899 811647955 893043250 175599621 1047299600 998277812 676317601 86480715 588048953 399943362 390259064 942881751 337946810 114018691 713171846 444287718 32124626 147085738 121043835 292081265 751764426 742702460 348072618 964048428 470082629 837293542 468539079 614545710 209341523 1035867967 952705328 869662464 642192298 55914623 267400711 747104087 805923427 788985301 375367326 566588545 933794129 16265566 223165958 658063649 227628751 1044881746 825086640 949602510 437962357 940289407 941142451 307662793 1055250937 106183894 328431967 364596190 1013872376 764033900 373301073 873157127 1024998142 810658486 39103815 570611580 64270159 263144860 321813772 468236979 123225153 931229919 406106560 587016570 241887916 481311863 212697009 48251230 17229274 316861547 66122805 936213636 441683711 213271502 26813963 409140774 2623409 369308771 158345186 124318279 958913578 122978288 310251951 647572515 927649204 428252952 514001431 970954593 578328983 785139593 283419785 860559161 377711427 199858436 219555083 1062515895 780715817 173536085 926433881 954823561 173792030 191092081 335754112 119184296 27807786 212126787 448682301 472000035 424048154 402332596 727387439 958252144 996516782 124670389 1004200428 384271572 4505976 525605883 297436559 644730670 971387967 444583978 439017969 653542648 421787462 708535322 89921534 22961286 687577488 64969808 827099463 221531989 797189401 757455441 753893304 209536593 949662563 738239854 834756781 957638976 743256945 298816890 650726696 58887550 217103173 22016422 659900221 516347410 861756592 754211114 798003830 339069028 987192229 473779209 944718591 954852986 785226612 1027495361 926725956 281841632 983957845 854982660 833379491 743059498 84662207 233366682 723477265 483043429 303162659 582460747 759364029 199071914 1021665706 843542761 327701 393573451 1013219956 346048908 494022680 35331051 260250920 772154831 341652419 1047108914 802451616 118456341 764099191 780769712 571596293 447127504 1024598106 666414257 607035779 94279762 801616365 923183586 1067704232 325574830 653829660 481965100 387436226 890192631 225367018 996269706 157305290 287968351 232325664 309549800 624366692 937860301 517423809 19828060 665682016 987986649 759786217 207744561 298682096 814800566 35310062 463599885 157451439 197542609 50857172 349575168 715303891 433721912 625501023 208909660 198316823 789413531 174542558 909430274 368938155 260113490 702748343 253442147 959515112 19260541 643532942 335998346 63510437 110220058 254219562 125976311 564231844 22748103 97603316 263850690 589198759 852302465 425830938 600586540 837976785 870808372 46029954 56711802 232564861 391301155 367851800 375244487 940588225 528440820 419907836 938415966 270126798 36084399 1047002031 1068247071 619788965 447373355 674472764 676799793 435241820 735079041 776165712 657458243 249328327 915078004 394650651 430660690 1005197603 465668363 135185731 638401321 666831735 1024671908 175946192 610794193 868526437 295752731 970283879 412675463 275979234 815260928 917593877 644938867 1046644983 497099968 71512552 676897712 296653636 933403917 995016500 917359828 270486641 267577305 590425790 423748306 495824238 705934762 79303383 312763709 762818642 343884295 172969197 62968208 936171688 724760357 830979831 626457077 669178696 840748380 940682358 265146965 283337089 374928109 134933230 891662903 568680979 569565792 929453792 287973887 588859334 648175448 22046276 90161356 177554854 288675744 37330755 730388008 680544681 951710089 63603657 756964800 604071882 512840187 808591772 417111561 935023344 696463350 279608080 1002069959 939024121 117284399 362223186 145484564 952726653 662004099 184432785 26903025 637426351 243808406 397608499 227924203 963781787 825956146 617579693 41716081 393185871 1016965671 616157042 192163716 90167985 459538050 772002451 544033350 52816824 828431376 678201877 163475007 562781157 673883504 1000784806 198920791 640034054 1019401012 65534131 905349007 597344297 537114242 77265439 193916439 965567704 849174977 802482985 645935253 89738860 299922965 701564260 368675346 1021473233 828145209 535987287 586966374 945263311 997535716 453151854 656596861 718319938 73262101 446065758 889927028 26147507 260642874 666977477 163513062 658254591 300986093 369467529 334123703 821664251 647312193 900532393 801692013 503394060 774457886 871132783 136302833 112810969 284058077 741573421 1006260146 448037687 579603866 318869435 914740915 700073756 799482629 951536810 693929391 619530848 918489697 84333732 745420462 5662106 619069168 645831176 932417770 300496803 841003786 785236162 751843190 107380200 920201188 222186639 821716648 446450177 190653905 792573051 691642060 30797320 866150004 209604686 510221855 249510282 598643770 308555616 186018310 987882631 113946887 1025599062 376466379 14070184 161337080 987022711 764170368 334494590 79581764 102119595 774812219 664440129 375181426 747584183 875987369 99834676 296146485 316702899 766995919 9635935 918398743 379927456 4548627 893603305 113368621 364566987 324534181 413973890 489668598 864913243 1002640543 486087314 461779665 726628067 1058043571 603083909 747542116 338153978 75617898 900633270 358597084 449337171 343664599 42649961 525525026 189421600 810064211 713208151 718163305 896678950 167029038 394697980 838116597 995055342 160954440 719716298 827832032 185793603 621902699 419613971 440926591 470290691 407874572 27839542 10801552 684366242 761142982 556901699 1006969493 76837575 927216888 757329471 95484218 621832379 316073169 138356930 667080092 9907564 930453214 92692745 496653266 1064485478 986975163 850416436 175929192 240823002 435135526 62401971 433223143 193535464 616490342 552288829 456646687 304324570 513124798 468315948 675986599 489138845 657506463 385814883 689971026 13701563 381620966 701066228 333084554 742295943 192040362 823689553 305430559 812736286 815037926 694648262 957540554 114708007 698485651 260775622 922055232 803766028 379035981 496656592 884704955 760647740 841245543 157010695 552178790 136954035 591754622 839948401 799451017 191394260 874108167 723628679 1052767721 626496757 1059669899 219889491 51158470 1028273248 368278728 395349955 978395034 1043882016 1017461003 728715612 770437828 828687 567990193 320145394 377359912 839393880 989372354 644626423 61632652 802327698 365451351 647565922 962825326 751549857 34761956 399628242 575890430 655219750 549844221 176537637 767326602 379289860 509383439 194930579 166970215 338722114 970121588 1020912226 936972943 778080786 300101356 665695042 906775128 77953998 740499698 867017850 598127860 446286448 87080914 223457530 234582542 513311354 739465566 494952982 935874073 1020808239 678850322 140571986 318619385 223499328 1045135097 218441043 1047472884 764696115 926891428 15645798 133093825 940240285 704970477 401484085 320619104 78907315 695676280 451471993 571181322 436811612 666674291 1053907901 468985022 36726366 511124640 262742081 449458592 708422364 328309554 1002918626 294982171 1030986360 749077945 321370129 85325770 728207313 38111641 139315895 611065955 1000741809 383547799 900330550 572007417 407104333 378981201 266359731 110150512 422536297 22345169 330419173 113635722 435702593 880629155 489228377 856891845 32230415 345399919 171113195 204848387 1063933755 784634447 899796807 897895949 285669626 535911073 673485568 763663241 944781118 261675784 207173585 906418776 182637640 34420415 481658703 882995509 418705692 731835283 254147685 489577061 334722547 295895557 372369261 614118950 199247041 141180414 810444259 678587385 440020813 823890846 517038100 856449208 529101461 192265577 429041280 8894732 646796176 579095182 171764718 510913436 854990613 971847831 940643242 121802284 440147102 1006841358 255154687 635625207 400981279 944379003 796024352 748838803 206293975 331031058 211603010 640640059 370221651 180208767 182882252 45974833 752544312 409059459 124050025 684310841 430914959 61125962 781634888 1070148284 316373859 115770050 513210341 352373419 140453623 217558554 45382123 326437663 184275331 670210907 700823367 749822699 782149909 652443834 270577012 189270776 708961890 921331899 237505295 557864216 504902961 373463781 252038598 643734479 679890627 545571655 597323223 91809031 179743642 749157083 486305842 772588244 308708468 903856484 653865609 373747083 304422341 251310984 1041200251 259218650 691983109 513087027 965232684 42991066 71077414 139131603 735107707 106920061 171345296 676723669 282395193 296706090 591689557 1012703459 932649266 439344435 908719359 648571364 414503128 242013960 733553930 760165362 162635358 815433812 1003296982 246040831 790288446 768128992 740935149 511308064 861890660 1039730620 519985811 638896579 619606422 331370222 697718202 463128619 483698785 357094255 529152537 294701414 407088515 364594758 990041760 405838389 498222990 487474919 42493175 423439064 955068402 501198551 400072217 44472800 1068451072 3888849 128899963 693479201 523840352 357838418 254402453 23952695 567637504 567713866 6882025 324042760 577033926 947489776 775344166 595321681 412332868 470427823 283656355 540278040 116433248 836037638 78120211 377405858 489972250 108710864 628799383 632268652 299166868 1009903385 293356726 180456339 694419714 468909429 482159993 553693662 872963020 504758479 309275548 245029579 257158831 212989226 993994614 27478075 125841818 526785314 330419971 616253801 71700796 302640854 70107356 571033247 82747208 194986539 624833635 921033847 997907305 26244452 856871322 639289114 646577493 552627568 222095639 187375605 718244384 934407494 641631440 167785475 25980642 732074293 227679910 699613458 372609577 487071990 1043168685 83291960 235758338 842108950 153446314 1009642632 21415626 217847258 529491856 1043075745 101147148 86704056 917234116 243125259 514079140 670520604 25132164 360036704 774569348 1029597803 434043739 185299171 779604332 588198271 337687665 889992882 546432884 734278567 876364443 50680904 435452647 693088790 854829557 872425935 484667144 400237418 150045063 731178863 568588325 185142826 508405860 202626905 580799347 788425619 680022688 808118423 1033430448 843343937 499979993 282137776 186535620 981129815 821287893 429880722 554544202 968959699 794202717 296680849 906199773 368099685 260236273 378834680 106521070 774618486 1043528545 826430651 1014439883 607266043 112576396 1031034719 689621414 828190016 462546778 615215147 999630161 785175636 422656021 155467645 919644749 635446656 214959466 52965301 61439020 238003363 554633489 54980712 954760043 31357380 671337380 216131463 314818949 271586816 985373152 731948729 864239888 941402897 171651985 814616464 449280596 41461990 518860187 45353534 617722017 542284992 164193896 642900866 776992031 304931733 438361030 383156518 396456302 650883286 989657825 586245628 898897769 371290198 524329481 1053466363 299239223 552672800 284113579 865532575 112100560 1018254251 225248551 800721415 221097306 2189639 709181054 453263932 1002783023 765744879 290772211 637938530 1042374558 331443665 818917103 885233723 447426783 530609406 665921189 177454729 460525993 155725779 174036573 65828491 216941592 435259612 530477976 181348457 342581866 114296721 347156085 687047345 683169709 784126330 265199046 970917350 805931275 326208983 38259196 490643254 655720804 313318440 122678407 41006101 414770604 770664046 183517702 1066910257 869088598 1002048797 484011675 875569358 946270633 976505311 694075359 622920163 409166947 1050752163 866681321 452057336 690554004 854589550 14839481 465006703 983610814 960766650 393461993 728651739 786673636 297155910 1021634610 9782167 798759081 1024170200 147705189 471233508 262129546 695534306 114468590 203645483 31966337 648547749 649462024 493549980 886365747 79784095 6451792 771327040 463672019 718256242 166156469 599672700 126870763 599469634 206892713 336504756 518504553 964422652 331168731 411091277 568325137 84955952 268125918 366421581 847238786 51022387 111558298 596572499 1063324009 595050949 119534377 873015890 187335189 149266816 30549415 429395415 408750378 946068643 51866583 610958230 243141778 481510865 960823495 1013059471 60959629 521219595 705370130 1016045901 873216442 1038803080 824482935 188260190 596288632 658412626 27958423 973683121 657568003 455490628 59214073 169553708 620432366 904551583 118680715 935389847 1028241656 290579574 734824348 378680437 343929970 1029411108 996139880 880789969 83323407 872058093 819482634 214840849 702718020 226386001 656238851 492321422 513004744 1056556976 452346308 66270728 828765577 512388814 175252253 538906923 143204575 802279672 431567207 455079857 810389693 152645180 913013640 638558784 612889329 813323778 723951278 29605620 634732208 306245816 609775686 104559759 413038912 478225993 386408575 834313010 376309277 258650415 336138371 412902498 299663481 238115673 151326817 998202338 903742997 74551403 429224571 828119872 825429442 718431829 767768558 887466805 605051593 166867698 332560272 57320888 852612195 1034274297 812649711 705817393 782880817 706353425 811158224 1006334742 608361049 356798384 837285245 999025867 285568734 713763604 357645213 166320731 815061245 491211628 978738259 159672142 1028887186 318612906 588275651 791543407 904859375 275250415 985338008 573615419 178471681 437654929 782262129 637365319 11948331 899575615 414230721 678877450 806649279 619985656 645759906 769324941 803477973 1057307333 291405933 114965744 736726354 678214199 888121713 875737850 654619017 388086284 647242326 670572420 813238299 868229519 279925629 80894988 646241453 662486162 494942612 413705436 604056373 814294073 183089807 346887471 814956405 263825539 428032417 843645766 524923325 315791937 917976177 1057106017 169492984 527693046 611881325 602137399 325653110 467171362 815560567 721626398 314824642 753759620 609483076 235247743 610946147 95586504 350682263 514485620 896685082 405212905 1710430 96708142 1052706771 449030335 407476356 548921488 3339907 625268877 116759978 997609426 695522956 468633366 492017527 145818945 33802648 259367348 446062319 228646863 1061343548 346286790 785628459 877603499 995059701 403156278 250795619 120575441 244460537 529317410 114748357 587535743 740395979 646886707 995150351 603758470 734330085 927225928 292722515 964716769 695763889 192182851 836220150 1057642444 20859221 319950841 16744175 748216208 297155429 944459051 705184237 458050160 248334187 282585322 371029968 641034218 564469026 757151889 569821579 837359248 974177080 647911066 442800856 1071784184 733788974 992441997 158287075 640791783 902891058 119380729 174159881 322985675 537056938 809860856 919388143 905929803 893240270 176292888 189380344 261994495 457821486 881367067 803660599 516797172 247801207 1006709424 774841115 336179000 859992316 794108033 614730617 561705291 851748707 128324152 105900290 55723822 240796915 722391266 1004484249 166322878 54753415 356806698 180287041 682387817 184775891 789726181 264557661 507380326 9487977 574667073 10435314 461681504 1001738490 429164442 881183782 983544682 98337888 247108572 807733414 84993593 363697210 211261414 1057853592 667530637 884962360 770278258 744454227 274779614 382449015 206891436 10024119 504071291 792323682 358032849 395941170 941342908 728765395 149145651 689504898 774682902 587736143 548120738 599607654 574120810 20461388 25094460 588168942 90771619 219452690 714315692 679026605 854709279 135598058 1068271660 15332709 535970237 551268908 588633863 102598585 539903135 421010985 305277343 762673688 684446331 518013162 153885782 651032555 221704883 698321110 626525020 1007246828 269090971 598413489 718963621 556215095 664898333 1009424800 635221453 848300300 586788022 247357105 374917477 149596736 295964824 1054210445 275887552 768913926 853765641 107187404 644764663 1060439227 933976998 1042615136 986299112 21664933 787654619 329496242 223074619 674397131 146416233 370688609 123776796 656201262 1410292 644496397 391541255 964184714 689261578 358196892 1052103920 293083758 918298254 987880178 606958897 247063780 776379113 830443986 887788365 380483037 620360536 518877782 208933712 6163127 105297119 396971186 1060799446 85780395 289839485 947363091 505408849 967087565 307064679 49063711 414697267 73466241 764595606 20947347 39851131 639431917 1031053030 145435339 628253584 94668723 1007511893 364589923 684021984 779853605 811361841 233319136 215063018 12775396 126580205 196972432 26763132 797335209 48937940 185699121 320067376 282948867 1038032848 1030645706 1070173661 325056867 641931832 606834093 448289963 286920011 831531959 641873264 872387946 485826870 353687812 165429969 589124983 544274587 483510748 929731384 994330403 7818556 757572121 227170606 221824279 286291877 834509992 761447823 403657722 307964865 729322851 623841250 543359216 1030037077 937897874 817625489 419930427 383913436 82464980 836886530 301521674 1060657085 438867850 344315153 826960369 187999840 204136395 572015618 478827386 466056160 415784020 817050381 666609743 381631873 8040428 933811429 1020811777 112679148 211797064 122021639 590442403 8366808 190392098 495469630 493229606 1050849236 187945992 434229367 671341684 511969864 558864779 152014859 43509845 377306217 596154571 873046724 594744951 758610826 973475153 209084493 769544433 890335700 857931732 656702678 642615018 894056570 1017852165 944953247 844411036 412846415 691550391 195805321 1010023744 233642012 947347897 867943334 308473793 66600743 492529001 259336998 643350219 305460512 146114864 737972849 522512421 1054178757 51812622 156023791 114540182 305682733 492657320 539654625 106061557 215680420 133118586 435282359 346594682 417730936 461812822 862304570 71363349 697704789 719784396 579192237 979326590 1005227710 1008674562 623672350 865628539 416336320 989393868 916339437 300513133 721229045 145385601 359506465 540583118 2368053 170309716 628140257 861399022 749459256 332626794 203305611 221665960 95084975 758766064 785023317 508675985 813193463 772038577 729577993 924653037 253299718 67772313 447987125 252503238 351676163 406734614 536915486 340080657 752174002 867894753 632574003 383248572 476301830 139932405 794940930 190354681 665087034 424060581 438768743 505319324 928867304 290711247 899423951 171546019 886426352 64229701 366594517 295800157 104078612 455358670 921267772 554606992 331502592 1019925073 732148642 491748334 570900657 511817387 414605422 588969343 993328776 109869419 286177934 110748178 276223270 801520017 58588306 55170137 392375508 64091965 722061890 321445919 216362864 160179336 394869365 666842761 201265041 200786486 126489228 692232573 1003012695 886871981 788159516 181763755 775739475 92763759 789629491 759717145 237138834 134659831 287353417 750944804 728258167 631678912 825715998 825043311 192615045 260706773 662856952 458224585 663546179 240423576 444496700 12538258 106209744 1007779322 947979345 807891910 396901424 574981456 781704744 62798355 463157501 159645050 470620573 487149824 80479091 913251701 193937884 77049662 207330403 531245022 87845680 821922724 147865863 235769305 767002559 201598415 416364895 1034990532 409972025 1020001028 505197495 238389044 1013663125 802823128 1059237185 681267649 278328020 953824212 400916750 675789843 968509793 242998797 717025066 23629408 962578062 191536015 153414979 891221973 735089480 1014602110 514876439 112699885 114269132 1056135385 201973952 451330744 813790678 503769817 750481802 893014623 317272960 621363594 804066982 849654864 867665061 675357767 628712117 1039772770 1037305303 973506831 936963327 1030590095 741548354 760548297 473675212 413118441 1030347341 742541180 448107593 394848916 165770963 445549444 764863715 313637275 694148827 136161311 819160099 1036022958 163729229 798361979 877942947 843803245 602143063 947797531 182905291 958832855 346445416 943934171 977685156 1052368820 1037480321 169353245 823091333 991878676 260869871 675976650 946781368 992257226 407345287 310416659 715498212 445730386 819231802 347558017 539021549 201423011 254008806 455044024 638652182 313560301 949494931 644059814 372699136 67453906 374081211 1017055255 114506176 146854278 14606597 101818685 56487223 344494380 564033308 346475399 978271634 339563231 859326844 1040035265 210070145 788281695 1031097844 1016079860 662189625 148225465 642851384 353929943 107655813 610512367 1369188 854530192 1032020346 712615316 247639845 661692438 236459861 235990873 269487252 23722203 316089658 454323459 446733319 741183472 402182567 732329284 409326698 186822056 544246281 431365789 396230214 846773502 248178994 78196604 719408560 1013286833 768993047 35801523 116234212 67274746 39602125 548809955 969400402 112151086 186558639 629332847 106845457 468032247 1054282014 309043152 825382182 987800184 486023723 828990635 878391667 994493663 527200130 424557313 16009674 560837676 168254973 1023531318 535662448 343311369 919023111 623116147 641940683 801571178 29744691 584480823 945356628 465440054 1066553748 287851041 624055275 1033626969 620544840 789426097 1001647186 320091490 887555535 999379633 884987331 577734136 279829156 400335158 910961937 183676790 610610649 361400835 113309053 462019826 532506897 1000083615 835788662 529948488 789393299 492742019 935025474 53683011 251700302 548841205 570774123 495865097 28505952 967039614 320910668 941346290 428778465 11888009 693688788 184188392 660874093 128380049 594394148 362075825 116470907 478716089 701315169 808358073 233108003 459523445 111239144 483693444 161498643 709819638 909945151 383276059 363909635 32701894 678361309 525763168 1052175051 441621323 440880544 328072223 265510308 448922765 103856957 552928914 545162129 616820838 670656333 822924410 437623767 11884814 434467250 862116755 662807953 1011588711 796343508 236477172 840996635 1070673289 179800929 364474901 132652194 958577491 636531694 121076922 622194542 458631571 679185799 174359052 571008352 236712382 308854125 888246599 736622997 418336423 202432094 633531906 397631727 283249769 880697468 685121583 3135647 775800540 768986677 802053788 750522568 110288611 562073170 1035465908 557935514 939429530 705397348 554455901 321379232 98305500 958719684 317650092 839685411 210336909 294999503 345901568 567426159 212714006 572864211 380596222 584593447 404867200 745117978 316779063 228609129 549901144 935208447 596939440 537666444 1021664600 705625764 382156055 161229975 526258203 330584203 999771795 111057814 333076296 1026090991 109179204 834087047 760364680 141775291 74905294 831288169 965372992 682670703 331765311 589286734 840401394 735020864 721703347 832025940 41226867 142224329 808296203 260666476 895962172 120364442 312939468 526770610 659507945 383519568 405079362 416813996 476157559 772843498 639888833 834838785 918884004 339214461 670340476 557889262 660253613 253254547 42830862 86828813 1066568228 769873754 12756326 222828527 209172247 442036966 937799902 750356743 494880049 558247027 1010730020 173387389 669633994 149324823 667463688 88665751 32186280 303640036 974911885 481816598 278206998 740907878 934123383 271115349 1022461743 606950721 438835255 559579955 261685166 230363078 1065174401 917102619 455962189 569865187 716219425 62014229 281944098 227640860 709570724 736576603 300951342 98487232 339584439 157551939 192743320 17010605 932294118 638610975 162738807 345026074 225378173 632645087 599999237 993321801 267114870 941958418 585078443 556730156 613771979 369429984 784588554 607364358 786903491 201211689 651539649 697976817 638800237 1009035193 409068325 200773909 238270579 952156274 626461525 157738224 626241858 936062810 685652798 951069030 220087075 229847743 698483229 16411452 523421182 307092389 172265279 589467962 718039943 496069503 513818686 785564088 609497571 906999905 949852762 622268698 171608097 724041282 252714305 940461594 192873946 79304547 1040164439 350888556 533952865 409299545 1018680315 267912386 22914060 1052596226 127965948 914840358 291462153 898800971 385868173 257989361 522062621 1004210959 83193362 285680958 843444706 85544257 223323890 660414779 104032469 837726717 920121502 998509889 123993287 349352568 244386281 680999170 216106575 755850105 435592794 487344473 533396859 958151154 636396378 63968351 1692232 689843348 469351125 280803181 595926486 342762306 723075838 634430843 110113714 413665860 564319972 423094736 719813139 211530397 37575298 804819941 564954802 145116827 831698749 36182530 220675471 595882328 486664770 1029605989 631573250 279495597 988721188 266667683 464470687 768540673 1010154163 907964180 187889085 543309578 713608177 812244541 269088381 173871021 1023745922 200906754 767746517 956195487 301154046 377895243 475367917 704871147 65517566 823886318 1024346434 789739038 1003905606 417169275 542635840 41006192 305590908 777365761 910628991 827213781 206983958 1071286096 9755818 360103005 1005661366 414166680 796340091 716874325 322224045 325781772 200781587 1051690371 737984557 434593089 1019210472 835157980 68734744 220335156 159853046 505815247 466602127 24356287 402245001 1028877335 54389093 455281099 559848918 596930245 205614057 428111425 64526032 411795476 664544084 910577529 315562364 221944107 185905101 520889137 336621730 649059653 416120517 1066922946 703005374 131118201 1031828563 631014284 14388129 753955531 823217145 498786600 143004306 400749443 396670922 967938429 167377546 1025516292 1053854087 973497609 325501561 124824032 701081097 471617296 564416130 820647362 201660040 429304831 855517488 359506091 69195285 383239184 524213830 816413769 329503706 857870057 934724647 1072022435 795591497 520207912 549360129 204683036 199366522 290283063 919366606 30898930 27852721 755870477 418298259 244236287 820685494 479197443 419221342 464110842 1040692758 665945554 836757615 388215440 792172622 191762537 894091879 564444154 145156578 303396781 914422070 263399780 1041699401 883702339 2649059 882839195 19105993 999655141 585604170 569382864 354326112 725561980 495768532 948890932 401505631 459814114 794059735 224126495 563830502 354204670 902652424 811469079 467687522 102537754 742517568 850184817 539903104 1071446231 296978473 531674555 132443333 1028105961 886717303 73995415 1000164445 428372965 858311286 403439718 240588649 902997217 874178349 228303725 374599626 1068326821 533185128 1057417245 190757629 426569621 13716346 361775607 359727352 727243890 450792103 808612188 92178763 613748432 737688712 693822656 453921117 470621288 417744305 390452433 809872358 755491069 521313507 1003972222 103007928 478446368 957258864 835795231 1067376513 278237274 432402091 847242531 367771539 123686155 741642684 43230273 775435041 840741992 580288515 1054408028 647069687 306919900 627708881 724932778 255070525 878473875 527607250 10728587 763819270 1032427780 534055244 869251992 430913128 788233528 94729011 494314171 988041610 278744580 458895862 1059207618 447611002 684932623 699405349 385846003 645695292 292369283 962669111 54840934 313588341 45359013 351187572 629480497 602383906 434663454 403098556 1031877734 789464122 406602328 362877724 668081933 447439724 423755177 108013686 1018123681 701236780 135615937 399339823 547987769 636037100 482906956 647937415 323455724 561329156 601953129 565048690 189659248 839043659 595837897 37799957 237095329 967109942 917050482 440429791 474673669 553264880 447911752 629671432 111549273 540282170 836956762 596686769 722692141 744068629 961533056 39912686 226773824 908630790 439056989 992457923 354929679 956554865 853795690 72396464 672904890 786834074 1017468233 1046257551 243418269 284509409 554843366 206996036 712483339 1043615083 513958897 995994189 941292213 328896372 84497181 995605187 772935801 245766252 860436120 60855845 884030698 800085730 931068991 642089894 464045207 200631605 882889714 249942532 662340092 282879656 811185673 426718141 134961295 170844409 873674262 921196337 630336810 940516209 538933575 584976271 1056909569 389138080 611265345 106675702 4713251 8400389 796222299 171207752 671724861 311715442 308183393 613108058 189605550 523579221 623386761 347262639 360525296 259077082 13804268 301289984 869006292 30517813 697834763 474553599 595881708 947962278 688429507 728330151 823852011 441878302 974452553 497187442 370788493 626475355 558445404 954919582 387788043 882945155 831785512 126415011 880811035 789729229 886499019 429776868 766449232 784573014 84359135 448981919 471410221 710006165 176541977 747342977 736580242 855544321 627310352 836937847 503984527 712581294 452855520 881631833 818496066 371937376 911249381 216920840 678923575 839442622 469443122 185600712 787806497 641595481 972873051 959998216 767066840 1052435017 867835325 580717533 221769469 799392365 849181352 251356256 75292782 731634125 323202618 654856343 591812506 744589319 638008591 179839730 1046639033 834045981 493627167 363501749 237652023 22550176 895439892 1061451413 144614057 831452230 822138721 278827029 124990963 1027386856 1040132169 45950546 752463802 54455170 817646929 889953240 690717533 907068021 976941446 73447251 91468737 317206855 780993290 1013945709 780353932 300155813 572194810 159297768 403375041 878897466 550533311 453606854 328085317 441275568 829918711 263746180 538490018 707777040 358000383 44695339 381558110 1012606315 22872215 474791153 1044558482 88278727 619183425 445512970 205257436 375913192 635936817 615463101 508958536 72435400 716170079 376032242 177969071 330637855 713142577 279896786 340222886 844980068 1000133539 685011876 973628595 256361724 175641342 122759524 173128884 1055300057 84536057 355908539 515686977 404030283 991379961 139068040 428344243 566840121 29913147 458971965 846957649 82083243 868668914 427737609 755228269 637898113 668586501 953979478 223642870 289364431 352762966 402902173 386405961 744124989 939743152 53079102 999583562 718403186 78814139 156678777 383665259 826769895 1053056987 723993705 888332364 266528292 902795515 989381590 458284044 334422789 970433032 912094449 477059353 362257028 1073107416 29635720 222563782 407235733 370111373 143329982 944962722 243600939 921741124 659896786 463492887 838675822 920815614 34701935 933703983 619429011 120445960 214662174 289810234 446238218 1029475346 355355507 823136146 721373910 393677442 299110770 913973472 460021912 409825411 522871881 495905841 989704676 984488312 292893201 39012302 325213999 468133766 79989535 756773591 670031761 415896770 795789593 143195685 412371339 715357132 405615433 319999505 422166932 66507444 341889373 284484996 476346 903416427 36566987 530176925 288093893 898030412 155654819 552731563 345185854 434935411 386859519 951103059 851913347 307993138 768639218 231261426 480824971 862091499 330431212 720658000 475223032 886279396 178331727 785671050 387137655 804189345 107715876 1016481896 101487985 394403216 341028799 557020475 628392807 162767093 553510382 311238964 36963378 935648992 627412538 723181171 513700751 656224209 331461398 724305711 764209975 708617691 555880381 984602076 703508608 529102350 707775271 428298801 358877189 512652316 530553306 364762138 943035307 372588916 712058124 106948022 33320264 637776200 104537763 517598983 588856558 399186567 901228542 147966707 1048951305 15836315 504921245 441690168 823396559 788298643 974792158 630391334 460513084 295160388 823456419 667598365 62223732 176223474 387110584 30591836 828001070 860973392 825886720 364322303 533645487 497909759 330387220 666778852 403452062 64641847 902776789 642447975 540118991 551766689 96713201 534541863 43903260 870898490 726597334 59497318 959158671 669208531 99343843 256925933 914562011 597901834 64725307 1032151393 681289894 765647780 441389928 120732699 367022936 983837617 397751960 96623245 804856918 851570206 339638612 531128831 313098515 83239195 1063035662 832526753 801984355 721290427 614638123 736888416 401988180 563857477 141309912 816010285 13663406 263900531 500798655 533574427 743748108 266908239 551548155 421190505 477699354 140046070 929796569 28221791 1001169448 782019350 755309752 974375567 683706202 950126059 763535413 630621357 10297740 1014057234 745340717 168668338 959360888 987247763 923753307 67967299 1019272910 619030541 741793971 210985720 795957860 280319820 209147171 743334958 644450492 468996240 34988668 314858320 563265917 2099424 654815138 697224103 166194555 774466283 342490396 148132768 993580026 168810124 163753682 1033484048 233337532 608113846 314750013 330875081 576715514 810108188 112716608 187617352 366345651 98852477 274324914 865065428 654500455 435790908 708460775 750456675 1001177972 1033516299 668201786 663821800 314739174 239993688 525151920 679860772 723829236 480233265 582594277 1053191587 831211576 362105228 966524939 179771550 778906890 354065360 594925514 796836506 1046567533 1036408823 883093478 69741065 455803831 219181437 364962972 757888437 1019654433 599658258 110693517 608572735 968350329 75074602 270413642 42496423 87333086 803654924 816962987 713904425 989399624 413516414 489731744 975452751 497039450 547485928 262402518 980544860 383931795 908602746 764628444 820297192 824192603 676038532 929905503 161377188 739651999 933725914 143963815 731130880 178190473 1005147357 257328102 503903403 295774082 206801111 782347351 213404246 674244860 661556985 420003551 300136350 976149877 319284451 278807748 562954689 326432091 16217432 428345883 770258239 573927368 328017286 32063052 595118532 186548429 213077037 823560543 295840283 1022472196 852030481 89113066 125137929 872540223 196133147 210081980 832680439 380675862 389740246 446488531 495939708 681878438 965272465 833714474 768735914 89349046 612088469 100312652 571408416 371419743 966754499 943486393 995116921 234375923 496688021 645159126 140118431 502352628 830860464 922356712 33412790 794812405 707369355 782412550 210584347 380823388 114471821 580206559 816306672 227125850 745982812 16205629 530799762 645408528 384337224 425435949 727160030 802574372 200162649 576000686 769821130 58449809 86466376 370270090 72611401 617384781 1028687382 330441157 636112965 639505291 83033865 13375972 504973435 471657998 1059181130 427322611 1027882433 173988669 993730906 255283935 818278946 645883826 494671130 854699035 803717190 110346028 842124082 215852929 176080585 141513640 848923589 877247737 63878489 1029632029 1052463897 801503222 597041107 545228669 534443104 221073812 671959033 594577854 347762740 498738862 385786316 46916177 211025512 67297558 738511214 1000395534 165867882 813290820 698199048 959825816 702257575 6603761 591734496 756632508 465803083 968106904 8464126 86759876 971866360 286296941 988318188 844132984 606513372 798855839 309992521 828780875 47356401 856911463 711349407 1029998686 32095078 854903709 296665867 820107616 277742283 543165133 1044912926 956297990 143191897 969284924 76108352 654885770 511242654 679104502 683297757 864633531 452791845 848619207 442986004 167516020 802717750 263494195 288300455 781229931 690862989 126510154 364422390 202651563 833103593 470731914 1054606019 226373630 745975264 541930627 613789517 75054525 518253160 961270305 433872178 171798964 41089247 803643321 594880646 203558246 917908772 189249770 56093059 20108778 523987610 892513566 186321782 477702690 97479064 380467765 93299571 447020385 826800320 243447437 1045594926 777127632 279672641 366347737 889262309 420814291 611246810 287873933 840413800 143695486 458510616 227260448 770096800 414450281 596347090 876918535 669029031 484272775 340305812 673689202 294686083 678014846 677223032 885844273 825070007 982913495 599754977 146599784 710580179 461507278 836470339 1043064561 828890663 400378708 863068204 139553615 261902412 67779823 887180826 920079483 381124012 484137391 956619557 317041043 713148433 713324786 512641728 774342437 673987232 60216066 567867089 765334682 280589700 251344505 51506873 707658819 664323260 985218737 158698516 875845433 64150689 940693483 114250260 663067221 255765267 916107203 443941424 571413898 773488651 34137592 77612595 301560116 412946461 551029838 727459487 811131912 1042328927 401882644 1021620639 514965857 150144959 883701529 791582405 452858362 278097655 610995740 58353838 56609879 620871522 72921154 279453863 520708741 649413601 778222916 385530422 612740258 109887852 850411949 484806971 853946847 888278642 498942840 429219136 266774157 233791696 392837251 587055131 948190835 488624116 299300998 26769902 918244639 929870263 683173497 440492852 181652016 920588686 293632933 320598047 418142575 447758960 191391945 466033910 396703042 495353283 386157244 81900576 454338484 117377658 485395509 1056111517 208478624 241467650 1035483959 935423098 1046131412 963640844 228990569 471474901 192177327 201868582 294080655 613966737 972979226 768846445 533639911 433920301 860984327 554686713 346477078 214475594 280074816 516327454 544815571 899266810 458890689 238342318 253639170 577765342 483888924 869568578 889659284 517233166 466290839 380232026 109452271 677713850 864494577 28691326 197630039 996245963 126074335 678834684 73407279 1019820490 491971358 1068913151 343280940 814549099 427931353 337120323 764013166 637068814 1012163631 787477919 969694803 232321733 138497415 590556627 95314370 1043715232 335672940 206311316 826965790 148158759 775382924 526535945 161119841 861002201 855130784 32423990 10506346 465515025 236055924 569970284 1051008613 149540257 461760468 70775951 1041054084 71640309 869165522 418289729 81425221 449269985 121350377 1058276007 778370526 336700377 604198102 11871556 916608629 425395974 428126672 654605211 889529298 691884321 897843532 215022284 440505026 28507758 126942181 97604108 144265749 710111526 140393603 771780420 267259966 499748860 266462932 214576650 654412050 149722238 555076290 260341938 104844309 579587483 91532354 371386163 475751593 175579327 382467228 872545666 897770555 17610826 294884271 169434101 265729169 589916679 222031360 698083527 956766679 266909228 366744903 1042452821 67677134 59248070 1017087384 423054640 179327229 808632667 924332333 633012145 318877138 51804471 677546304 666008643 40138812 744720692 85930176 748482054 499366974 600198328 372234449 462096000 359192159 215859173 1005840271 825375293 60706506 1032026530 459896499 360732229 172987692 797743243 911158998 874966642 510370267 584111360 781404297 180376141 315353097 290953715 1022102618 657254551 431908236 1004582718 155393195 534325517 188006115 692634921 845154057 276069588 938061824 98910006 1016403673 876092070 458204892 242174707 175394125 686652740 696037587 277642190 892615186 660565514 309167325 312528893 419853517 362005376 315735889 595415208 364379710 265248016 584018288 363241016 242354708 183359403 375241891 191191374 266310856 606228249 247938256 589948520 669562066 29465286 129651589 104577832 30075717 8203261 173103538 390152061 942493885 898801364 726174958 33607606 189232480 332341524 775311563 483123560 1052976233 854880088 269120977 752700018 723630788 272650367 210557668 63967202 574421664 623837853 246588240 915449960 1006268279 446909494 265997485 520914981 537331018 108659535 321365695 416351996 1064361294 980479049 252666609 347680686 570108696 270981846 826159248 436291695 386916502 692905341 157883545 1031888372 338544174 838306120 833051587 557606057 16433262 976550640 419208206 329502440 946099224 239956929 685717671 380647912 704141540 804839094 195704875 680351146 27826428 71271980 343285462 703869718 577123487 92754436 759587827 866497125 231183770 789290492 944586237 481622270 759021622 771816836 838631838 931953356 803340794 832011263 834917406 595148529 693121978 435365869 431369219 545147841 957763077 867598275 39842700 344132460 1020029294 537985124 447592941 1017194132 490426957 2479796 259429614 333843442 385330949 1031188919 886170144 432120954 483965936 1046119174 27983542 678546487 512360743 228443953 941193153 200691745 262332557 696737296 853797183 912203839 485453088 888589015 193380979 549949038 547816315 279348504 796832072 354128543 823532443 783230861 709245180 710583128 927774596 616179365 1025259244 677710083 136166354 502432139 30097534 930350140 867582147 111426174 874672147 350925169 496004490 459351547 909458217 93560213 1054138449 121171920 420422756 261858777 282897137 23292689 145265980 82896260 528653585 115969524 525167447 257255370 126000368 761975052 455817264 979380521 512032706 735333540 469145426 987810105 449153962 557131956 896640669 496468964 145935477 878094934 352820403 321680555 841748581 1020846365 416541051 563173940 1045046188 233207919 791317315 981359133 69581495 633978836 111657540 508361693 496425267 925846451 35953798 998803166 238047773 1070320098 230978376 614720065 785525526 420769304 986306877 1034521778 189513804 1072115842 151991543 1007281219 404033994 992089949 798466631 957957888 863690139 611061194 820117530 284915963 593731096 150900860 748736332 602341297 207742469 355209960 888581506 3331233 268629690 545361416 536775036 428376969 669943706 377080603 287043597 167545762 277461411 108150547 129005082 470771249 174231912 237494590 816605954 257542005 174135531 495083024 120601891 724537835 883040099 982053346 1005210545 423466239 1010163180 875162587 182766657 802918034 279902248 800156456 636781051 331839867 1026557439 239454977 648750831 240082440 575543551 346556036 734669584 280167087 1063975202 365420921 112497121 170871019 535954573 285202820 1018418935 901088767 1005051667 681708111 468481647 177983455 498217000 184525009 115480975 500781912 850171423 915573497 828815592 890307580 254748292 749618711 290466808 111073329 350468408 827492823 488068082 319968691 941706394 723766769 1064017454 838612276 952555391 125987612 306274045 679859974 493915379 623577523 293078143 843849164 440846123 854384321 153904276 700835221 42825324 537458798 77688236 933475504 779822196 520678632 491079179 885074145 817533188 458873759 196031662 460824062 353939338 8539503 245438284 504582267 777350780 636373668 195896598 76620268 965800564 988226993 381528787 578390328 234489273 70021985 206079930 137138359 145024710 941971870 279700833 166435696 847524580 793523868 535502045 1056467213 842379366 659466059 1053668681 7687026 282944284 13783588 343099431 52941642 265588545 369735728 485607541 930400875 811076481 823841404 469664153 524504569 96280676 20327996 553299396 168805323 555199445 404942855 892786692 988055370 1016939361 1000333298 647384547 369922895 321216055 945915122 846228909 709463564 111185112 1051753650 206491364 385414395 997316292 251009190 638218873 53755018 994334399 913634395 527474773 597123317 16850569 126255646 889193917 785436942 561534175 487616850 686014715 747306856 458626527 779991049 951385944 1021678424 1065852796 1030934470 888552062 891278094 1005677027 865891207 803873508 498619512 833888858 746265896 993204431 195889586 834126346 963081774 526553046 472534286 906367719 979698627 604489535 745835126 582730187 944843557 508674063 903145239 49321605 469989785 458448486 837323761 905851506 631544515 795244554 468790272 30629041 541417775 118623818 909014815 428601786 938410118 510588307 170816170 42169764 965198293 124605858 6988627 90949530 261586769 528142948 829712180 683482807 1069876758 347163742 326674486 876047693 496886417 545635881 790732337 315747288 959595286 168394180 231660287 859701890 622575307 131635418 691532200 525972266 436808147 794648400 893749550 918090830 522991040 1066568238 901337546 32470091 100822219 431071301 115426464 219989259 473021424 961370291 1009675516 895997948 8923698 647081351 225965982 673201024 252487319 146080514 823148901 1023164407 382475344 578652995 795960110 492312853 78842534 507470962 727728385 316419069 116296211 611843887 967921700 315500683 102210648 686485595 1007199637 285754879 844647312 935960720 472524373 260852810 693612824 702244148 287159984 504828134 95389884 334241416 430636844 176743933 20084624 32878123 925110105 418644938 758087398 196770 1010191401 428429308 374764040 893523760 1063351793 920395234 392768752 905605905 562828440 773342245 512199043 778715314 618292774 759120958 425532540 217798181 112841155 260566472 250503180 870922095 254048804 324872551 521143873 602864110 857454303 173835194 903946055 154789688 755144659 915332706 494343092 1023399223 372571026 274112689 162615384 377995260 395819605 310192024 367153497 611826552 116603631 537842529 482305572 729143745 554756018 101186396 21012610 422243839 613698883 966970771 1059711104 805468276 361941654 923635899 960911950 816643289 732195897 44277898 985646457 654041342 845169629 356480168 501582703 95540733 484227512 239686381 579788854 337576892 322797199 277714338 292106418 150586926 284432710 310405626 351212650 1065754832 888169240 197258766 279096820 660654353 94445542 776014856 22175428 2538154 1009424824 534938974 30123503 235021843 350252251 341927186 804617591 858971142 156872425 351597696 476904966 742710674 234785653 773781474 800054475 1002007388 996741892 485317157 645605745 305464629 28729693 579263009 144011926 41787815 630247325 472302928 540662389 952238437 450325787 101126742 148125877 571233740 1038803782 89306315 312131028 403154590 504664601 565197815 934838833 123605187 365332360 928593191 411610416 567076481 571295164 754715873 760320775 889260096 259423221 258246824 473679585 1007053867 377740979 230768689 491632912 137779976 303703963 453041845 372852479 981525749 1042126794 82155461 147398528 1009563938 483770710 622213292 1068276590 739959066 913458092 1036450305 7660348 77100246 623754395 109669262 949787130 442057054 471372914 982214278 589037256 129742194 922688448 59827714 529039076 651626496 674304413 617961168 608344231 100786283 848018441 1028341432 1069372832 244390357 682663005 1019744907 163614776 161092392 212085042 125568126 490230649 74003494 904010067 223487540 886159239 657460696 602163458 352951771 893914680 343609432 118961914 323501259 730264152 795748484 853989288 659309980 332244385 899131368 952512615 840689276 687556573 470890464 206818813 364690572 142571447 124741305 635627243 1039562876 908799776 288783911 177801820 754911080 180777167 341677701 1060384766 491024829 987368468 647384717 19681222 807172337 154083230 516921847 678201843 827159929 949065645 964930649 800040622 907969456 207715345 838440601 1005682436 135151944 151567995 978083231 380909367 98805693 926290000 764384940 1064909911 331249037 1037039950 950828980 178404596 513169899 757352497 118263081 932480562 385113545 754049131 589028773 284466864 314893985 552187199 655195229 836311540 694782981 826011071 701199731 913258535 802517380 902429999 134331789 439063143 1047964551 511920634 471196654 338227721 690381128 482749176 1015302983 887392875 975069289 766043487 506186204 269055669 136865441 841981974 983766072 616990990 85647420 850188478 784968968 929317302 676819320 536809945 790587091 375269007 526440861 458221812 312879715 154642745 914741288 318377826 611568912 76018712 571190832 591155153 478229935 193890986 880310033 654509670 276968952 321026859 137369455 248981572 522766838 731796984 912779201 895183620 522398921 795654319 130944804 530110774 972520942 970997026 1033706990 116023056 608191515 557665308 701746618 996751908 165456715 730660025 73425518 309650958 1003946926 544655987 980813904 319857929 651988571 311408097 117592118 246549599 471168373 1011803600 536614141 996345147 577123396 981421105 530122190 552922375 987211545 1034065088 540432079 43068828 186066803 220591280 145842089 836835666 1003771806 426770636 865930887 885239473 46337032 310297192 884115573 483085536 578184570 132026752 309350276 623078019 876177502 948348988 703052156 771554350 639822567 791873105 895423449 1038833586 551639084 530290365 779270671 106269430 275151526 229721413 858970734 790931614 219671650 181979870 340554492 566140661 805341 152414606 90393161 243477964 775354658 406277483 248839978 799627341 260873477 595017216 50768249 481175094 900115791 105062898 635817970 892902131 172351675 796475889 752056885 143830375 802275946 932279984 615485756 931393681 432062427 876778980 873017907 628132642 753674462 522115616 1038174846 303216189 1022194986 84877357 60208987 596026007 1012020682 666761136 792034289 1053838027 849521430 378756157 985616706 829888268 703677244 30959062 931422102 6262079 482344970 516058224 66704963 197318804 741269412 1004840349 331988385 21616861 132725447 341258866 1008520700 390082515 600498120 903807724 657600368 530841311 619629875 421659483 355551475 74086307 203268478 138136860 496023910 685350379 926828097 378581082 810588720 95242543 39591483 1061983853 834761473 1064758638 181650058 46330813 28266723 806837372 13819510 854967020 500214257 948156878 742778171 241135494 250224535 471922458 286345948 941360379 503820059 415621337 305381331 781061007 958760419 1024104801 615229081 271925271 256604818 303688195 58363226 1072094686 951410927 1066066753 419264959 603535254 766969438 865129758 824340012 361358822 933659017 780102147 275258632 765007812 360154421 334363694 798210389 839457990 446101754 53277878 965550839 483472421 843896493 1017454512 629662608 886357337 726398367 1022154858 185503177 788022120 299665343 617107431 138563283 766993174 582295787 205251215 989651909 84748957 146224175 364025754 308151627 232301983 343525741 430559787 426411701 302704371 988059367 732053523 459478239 353012454 1011238383 897373514 877411141 323006853 155667257 1068399958 1058556458 699375312 905109676 61133917 843427622 830255791 436266973 623502733 420920427 62245803 405599745 801068960 858500938 163536900 216819465 479307387 853398035 510623593 756161585 125028728 943797523 799137204 289978635 98164376 298266322 357998319 199767189 150664039 288700599 59236395 637255137 424595427 486888468 209671166 766190172 274436943 919804669 347397693 729337125 539860706 592220503 71081650 275122273 680546678 231276021 438809255 732612802 723794295 656934798 231567127 374605923 581733706 592838356 590058433 166892896 975035608 676701770 1010062288 1009587702 20981501 303618740 767408707 35193202 132175132 547715820 885299018 538537272 604543551 527343643 696641491 343390938 1053305956 356310760 782149253 986582168 51239982 715239725 461507969 634334346 808266860 688097920 126065126 318739150 170816913 323697065 741224272 884225227 725167895 12246549 529171766 1068285323 101378783 845490149 983319166 520276699 664941490 825975551 573935037 846348958 293744331 412633326 73257267 388635500 355204892 1057942256 613912461 661195514 45659625 734372867 329979861 1035286890 438033824 444586832 253364931 571124128 345767168 826227815 833582935 798770817 209920655 273933977 140922619 721955000 785883972 216848023 487922370 1015701832 898342816 265828190 174876376 425432788 416878710 358747872 115053733 1066144789 506448283 908553699 141651007 150463787 890001215 978761979 667713124 634355550 231032455 311230746 323713294 564864689 840337846 803285175 573320641 525607594 754566662 964062611 215518494 221407306 946980492 929486794 128711848 1036696750 883985650 471665036 360865124 405425066 9580106 312722429 586763079 270924518 569569638 463919888 350473821 453913665 203555259 89962253 459121385 360829485 903752868 499223375 874194759 91077425 30089645 632975365 48551988 80194458 1002215713 276289861 778540995 1057291855 1012622107 890918220 542159957 232704103 597165034 769192930 773621026 623933943 977574279 28392556 891951834 669016914 721809286 217117558 205234729 202647613 391098824 646644615 988421030 558051432 918293420 26266197 291022491 171573249 113082289 207852517 17213576 1057710100 501006703 856306216 733025824 1006519125 601391713 450650109 964263402 181096973 1045589210 697226498 792587163 709292773 248326729 831411963 997958074 116663113 11620789 974066555 1069907972 358832255 981167882 249366073 63845293 112671758 1034182735 654264892 425273860 314712202 484110766 459219530 620493864 836305939 141948068 353134581 42745370 899014400 29652277 1025969878 318391638 208899074 174286634 110265156 461634259 273555095 800634478 179407152 1049193508 965541473 371232591 260673719 365283354 506693708 157313444 364319007 251954613 554382791 779511465 826808817 378707424 516099586 990039643 1073561345 1059288953 1053012922 830738692 1013115754 104597692 90975669 982262702 235312922 680596584 522087676 1023015581 1063388525 1019147579 905985875 161161924 933753005 88097367 199768056 371650432 719865395 35004212 1016877266 380469160 1021136547 1015097968 442434000 728098670 307811331 542928393 780512594 1011183055 622783457 155915848 883290757 451533440 788826438 698861658 289064089 108953712 418244288 994266080 842095373 354832080 884742738 884874695 903216659 612623708 171902881 949813568 970890080 878974868 1016443624 527095076 823864249 738763138 260705100 1030091105 363933641 516691086 198677307 474468395 382832456 964863071 644521297 686080627 530689474 43263003 634907503 686482947 705958455 701414825 141099083 760599807 456059582 803597686 1020382506 87504418 372911382 943341757 834346006 941616800 28804867 1018234316 485517346 433360476 518855555 908538046 62514888 323718402 546153790 665188735 889720859 621726012 378895904 250836530 267599498 798854552 666508819 655113976 221800362 394560165 876976612 847199558 496788073 196111055 580793254 243804703 70786045 448469697 189383300 929360716 536431191 992290933 717553300 806185956 2062886 190129697 426375498 169893786 109661530 720868953 326917755 982327646 467968508 61364738 475944649 381366125 274085419 393997901 534483744 365405383 712253495 453804332 564816240 737281858 892314866 679164697 320387906 463965865 443214472 1016574166 837114564 32813543 854237272 191131974 921377619 791537725 639771822 308030494 974746493 721184046 546016441 991806029 263274354 347830750 814915184 26683741 745608335 193508861 63706133 543615784 1068479854 942541863 1015067282 759315048 101821449 130716032 93159889 362259839 1053305549 182127721 983938179 322131988 557983800 507082213 91458231 824450502 932000248 638410342 319436704 994166629 321725675 510078114 822607232 398899297 129192023 422301001 371051550 992061425 994152578 182584958 1058608919 876812341 90466832 688063948 837568513 896030675 454580947 891143088 204455315 681577498 749073091 216234418 923740780 91456464 1067520249 183408358 433509068 144534698 314371717 973498106 589746023 212557234 1051939652 194618435 615642068 30419991 683410365 516514456 530841465 943985177 595766735 140337337 34622925 833179556 263700137 278652967 713649613 495044588 253409801 159229919 972407004 69720476 677374894 108533944 311380605 116308940 214106051 941108660 806012902 476790882 235441159 72527502 62785835 553482098 781860062 654597527 311076860 1012188302 139051514 27909304 216243651 289991306 193075819 541532810 808651195 601977098 473793565 916698251 1021337309 435303410 854353283 122090066 416248461 518609399 459616831 815464096 24644314 940773027 595047704 1056172000 784848243 871732443 10595491 365461547 895419690 749130616 202925442 515794540 631157909 523432574 1029622915 281934608 554174526 248342211 7442512 484871534 1039829275 1051208150 419718974 533930415 948935512 1026654727 723720279 724031251 144907991 862987221 502055516 588013506 165401052 811879214 520576688 295816959 198332040 904789975 864032315 1047920559 1021081266 633546321 914500142 517867169 900782221 653326267 1050934451 769442921 1000421708 899840449 656625286 589944838 805701735 220747337 963868842 545407831 826433618 409967829 996047934 959447605 49180738 1054965038 153752250 992375833 463278754 263028689 1068145687 734527079 206090789 458005898 1052316166 163115766 150869811 963133440 346275575 355662166 309056230 865224048 372682369 831158636 591390020 453561308 962744015 607367858 921869372 729119981 504662597 349901901 115434442 639756123 134829795 217877799 394387786 286020464 714574052 348995466 275472438 173958137 364944640 782454569 190264442 1004449220 771081728 41683982 351386958 339554003 264846234 487151483 622214891 198044183 602081153 814283843 33176804 207990284 411277918 40880907 352860336 317042311 45524614 81614899 110455322 363287202 180569207 224200918 784670444 111691571 267057205 854454105 59898526 497891823 948236060 716278758 634671704 679287739 938720442 217448873 112025914 293759589 751401347 1778959 659549842 105857291 347624823 768383648 874390474 876273962 961823656 1046999218 441670980 606364826 834173233 305836284 293228490 866931125 500779198 840391789 683962378 658346358 774633820 558655147 48707274 609686229 299709986 641656557 387792452 993530924 20732078 1009087229 596526966 352988760 1046425712 370264212 485695928 29523061 894576876 221022907 36102770 153375128 1882648 750601978 807406672 87940977 268499927 72779735 216661234 957201047 431942077 597501137 155089246 792597793 767442734 828017186 363696172 50941080 437709488 568535504 822704585 289654544 466155239 322502734 370308253 732559120 75422719 450272213 745845699 552103701 540216587 517294557 11053520 877923980 182466568 839784836 782671594 500010755 549958864 428956820 337185717 1052768790 879494662 576547895 1008585746 806884680 515851239 410143564 721550691 40795488 878447626 7650572 5046289 906689944 165741240 541362518 921915550 824251488 1033265764 99570973 1073661005 756329279 982593720 576785677 492249767 703730186 69633871 872297081 463006072 1025721969 761656243 697808012 357032637 682494791 300749435 783068863 321541310 48357267 504796870 586847534 961845630 884510524 919822456 468012772 371289497 346144270 886579014 168541762 259533151 947744547 118951073 446866522 283168811 977024491 937457418 871868486 848786592 199985116 409793276 145859480 426243336 323353834 512914603 780430802 95629566 514581232 305802966 622471478 766402889 985261643 922665639 861855046 708246045 698800318 145047766 954365969 85359483 417382206 575215880 552386875 183955920 523881425 307530052 821154503 54620768 38491202 421635479 499410685 877810904 93404672 998177052 532171065 866613815 1048196641 381245612 54069666 700081892 371877769 1051304715 1001068557 692937279 1012043108 731432719 556567872 20897125 339120961 407814630 70927710 730373143 384909470 766341830 106335073 1004174553 461566943 512958615 417429957 737011345 573607209 278601620 269229 144289257 1016431662 352101262 253919454 761226227 797446879 745120219 226437751 948759994 1010566054 1010367700 217383897 1028294307 589851853 357615661 934236727 114299455 352550470 313474054 215974736 870894166 250135488 652159581 708102891 707744758 731168484 574316508 954834916 776829360 484932359 628515751 856743645 426622697 565222668 429199303 781399977 906955092 679238979 163299155 595905143 812886567 1007189397 815214692 164750394 159851733 221584998 59171714 843797427 524015162 379582568 875777451 267925676 432368862 960383212 996542902 1049182544 917948276 678793893 385311742 787160928 22180004 157330301 215360921 398656216 421827930 56446412 750624403 144151563 276888656 832785614 31230868 170949120 243324579 316588015 808212409 55969080 396345391 776228099 262334752 467096401 586511310 5020510 933096590 886930711 228276505 322090956 751684230 170523982 563542889 194704010 947310432 942809677 998219456 989530710 41572491 897438606 774120545 1042288851 208753439 428786887 947827861 216241229 955249470 182770199 864783046 559858168 1018590068 95714813 22796357 633443235 640716871 1000314142 762717564 645411156 504560419 813398022 32019628 929901866 299920532 516173025 723442957 430872961 858868535 323198215 935160214 504870724 665325058 301733572 777027257 362073682 715960580 508834705 475332191 264389558 151956244 313551664 853330644 879330888 937452762 100314012 590274293 809454351 568072383 246794507 375165066 720022566 165554084 140113520 609109962 597668432 412509841 1059589628 456906813 911681864 807289946 831501422 49958195 501667071 478245330 1034922321 688077485 305719072 1062469841 612513604 423654857 444703571 297978175 1034415003 771075442 539977435 562258169 149244612 463663781 897300089 1034317859 271798118 993295540 805341329 824396070 1010571710 567450169 267036789 808120341 68279473 742894747 129797571 122055098 235418758 333190901 585220262 684688583 592629811 766579330 724653653 280884100 495012105 156530326 454415369 990302150 755171693 948988755 617494899 922591852 483902239 374784060 635026952 712625386 112706429 355603920 627796712 574579621 407107168 248143388 287452265 219133607 579163931 999795955 18881215 363969971 918868864 945583153 846579051 393850932 178146104 356041357 719016700 725879859 476803499 1062269145 548644090 1047654087 391280837 602852856 501750255 120833956 912295245 906121080 58787489 378648005 970244814 671900160 792930828 851468587 165440776 93339797 271451766 491635718 459909249 22618954 447292119 980816907 92110626 37871833 718347832 471634762 820951845 150995815 190923307 202261747 817280271 270118138 1039435853 112267566 376889850 42941209 2109625 792852077 328821858 691217972 381599576 346102031 145737920 55445990 17935618 322306257 346889028 567975986 49215703 371171892 1059593447 631004723 422694637 429062439 644186989 388174916 1039343422 916185375 120452473 466066309 136797781 737549225 1048974977 471633711 534185580 653424188 475126136 441744987 740872137 951131697 260860251 613824966 821207876 147861512 420533410 423697192 653996096 53489777 367258729 510586250 183335263 888944754 885216960 490591704 556561027 1019213124 751313169 74065074 871099972 744932520 609030059 617931558 354919828 854263602 315757122 458528410 406029618 831929048 976764116 128267278 469802896 1031612168 904640974 1068008772 898451175 156787467 210422243 1048898902 484746821 124674372 683554605 623532865 869213053 847674656 185835571 991462658 822841226 367102774 830322073 538420148 59483699 302660621 572702627 953616089 847683031 61926684 445738562 634409407 203014463 136462416 154860210 902891853 515157061 123790107 29536813 102129263 346114030 157323549 733781254 50060147 507409004 653943989 747101932 953587617 651268053 312335230 427451838 962830294 878614403 757516371 997776682 48905948 658943374 711713163 245169932 554496114 570350535 354401343 150956789 207975774 559136398 287993878 235450370 53959314 307346077 301797089 902483672 992642424 216937086 696740604 981854865 764534507 685288563 788649008 410287757 755488239 299421789 747747335 315221072 390603402 1016891691 974023636 725716470 129786111 817446832 346793661 558992441 187620519 581874065 874508855 402977033 896871796 595410663 319304579 652833843 799595030 778092423 952294601 750434539 453537164 909366275 719728472 588384587 851589534 283985555 712441272 814556535 649140375 271059679 278875948 572847565 338760834 501450616 650568831 1064656534 954559408 326903065 723811716 214876974 467325664 1001982508 754997308 234527036 693751645 349337574 977195988 552853737 881444619 1067032606 145528194 918497196 891654620 29304729 769577802 673572844 408024557 111291302 1013761368 356484642 153111483 961166384 650491279 309190108 869777858 35249528 352439618 1001073020 305773716 185640768 640393725 704744520 217340638 296790907 452910631 976947790 443957246 642085675 1022114889 648751848 1051172150 97587700 892845978 309297468 174077852 735919257 670651486 75853748 458521518 238187441 92110935 920314656 758025031 941720596 180934903 884808480 458443300 226389522 7427075 580028024 996987373 79215419 955859760 591473357 872445423 984788427 135010571 876670247 469752268 373589157 373624146 8203910 77172379 238486237 143170095 604213255 804617313 358878570 575559875 2735664 407943287 593813718 500283059 244781936 311501556 775214453 272440664 910783031 35743978 144323675 1058012891 263711856 496346426 618995393 841390352 771532594 3595000 943746135 106895651 825092946 1016527723 946365944 967431900 67221773 927478130 163621727 969797968 958469574 24832302 530419433 514207520 884503282 979532797 470371708 993335766 858666662 994175139 102459068 813358693 896256936 697383941 158338483 1035558115 441135175 940826044 981360989 903048552 672475278 946543824 419774673 781274587 293096447 151768727 605186617 969343511 49221588 388001454 52274501 60636244 416467479 778363771 255595249 238649909 420451133 668973297 54707542 962685850 610399914 980669826 1042727955 687324420 181905236 872124076 992691987 583386144 847657481 9392063 601159547 893330204 76372976 982224825 144791427 42320434 530803171 95126785 524270675 581808171 84905283 1056277672 741550265 721017216 641878696 215305164 600700614 110314744 524055992 720879967 270267283 25351593 399151181 832707713 497559752 765324611 581790105 325673383 673404614 63931393 200591471 490861087 658221319 1015527641 893429733 601027259 815304181 236002970 121059319 361969457 774960985 172126665 967693740 699323233 116585494 94937900 417244858 285477233 594245998 157803442 154881035 887126853 623943772 162737143 307685040 1057419751 90938083 602590709 762842888 683012291 311331320 976720846 433517795 207833069 733040371 893926377 671324755 303726839 781281464 1033878417 293449310 948901026 750551204 778087043 817989461 605075882 331237303 403862172 984670429 842746838 19266276 968895943 244652777 336972334 600369235 957590406 646213394 81360697 666523180 54310100 462841335 939002194 543877279 181109315 709739058 957120902 923654103 847874278 1040703090 451332265 620956611 355283859 402527859 929334796 460553166 532125885 82919323 277537004 903478456 364800093 817437166 543326444 733488129 291879670 573878397 701492704 282311141 864974694 626502475 1011455127 267730199 835030432 541508111 191997815 598364081 401547692 190639742 587101387 104382022 576953800 513216467 602884569 263226547 102197958 713108740 838309456 1056781265 483234814 694669805 824793259 992251589 636206696 715166763 432310065 386008089 365080088 744361309 834034167 892980105 833182720 572599612 232184441 245124809 302294170 574987648 64453334 496970385 773239105 546276478 630660280 392423092 168200543 448486509 871352189 640036843 98651686 342285234 216693110 129030464 110598117 64369392 470720991 221487268 77126415 797026228 855786780 854337955 262387737 757868861 396394017 643671996 579406894 805867259 559561187 968174737 600691927 669188782 520113026 820194415 743587528 409934108 185199788 323030954 398195164 441268807 567042457 6017421 30797270 6654133 587083258 206209376 414848855 829776959 449893885 354840394 815829461 6889279 1038988468 888444598 118552788 665286364 71765361 319012094 146926138 465425880 921678427 361840965 91205823 226277306 30393289 298864006 984727066 426552509 965998192 862145281 779044987 641121293 112706522 953412224 216746115 16798174 916589667 501550600 245976188 521918342 925132398 6044584 780608761 878459393 766955779 63237752 964418459 737931654 480268072 538717032 229309255 672366690 216874965 555119473 477749337 807747073 118484059 112105131 540833815 389341164 828836839 173341557 164699577 705661837 619893593 723267792 663535355 186025010 121790077 346151342 1029623154 496492284 51692572 393150185 377796136 533037533 485002916 750011775 915569046 21843104 913339715 826036860 662836020 361478241 931241530 988522352 792412154 1040310907 165427332 363690474 309050814 457804098 440925827 500803604 207369174 914290114 605323945 718549264 681364995 215534197 467728256 994136269 823368177 530931328 233560483 103084593 838804002 887606035 617994876 470431460 607380566 104177023 650295121 656949223 1039919088 699763538 618060394 958796875 698412479 1024041816 385848638 579241638 371663013 130070543 776001499 106422792 903463126 217191541 702763955 84070970 464362162 982418569 1004808360 426478614 732354047 346972055 87939849 1067237362 975179804 640548257 360347565 921815862 187754258 965987003 90396123 186037182 349316015 329715023 254015638 738241675 208065384 959292175 442666328 318131223 960764709 1026136564 340431833 602914320 654137382 302765293 165152626 766252118 427825287 1003180519 716794980 717887825 612051633 489272551 793537641 862533954 349431345 775009159 299862883 630332435 184749494 779097482 623793465 766429915 176400825 373283682 815656364 22876739 883865219 734257858 993428583 144313100 492639256 299974364 790240867 954521933 960437174 33478246 338461942 800586982 10478402 246778321 233191035 707297594 514360707 726484538 306833686 763596799 9948906 407493535 727339283 805433329 824076644 598899032 75353035 407797598 972848958 40559682 599463658 873669798 499624218 649576213 850473748 527620535 647566407 966424255 876255737 82394762 47180220 869383791 367489315 925925188 125766995 983039610 41815059 49018104 70478305 1017469618 385304553 835159937 521787509 547560123 254113573 966430464 405700696 51466045 349553683 664434236 802129234 775675322 991581878 858708595 1066868854 614806597 357325885 846596709 1023266330 910581916 113971861 47248002 595793107 547744154 261844843 263322318 152750894 862259315 656525828 206033455 547277657 229343574 1029127014 933439449 662885911 185375168 875380551 142553331 277353562 201933589 204442257 990089433 664809393 327883125 1061715126 676709061 733271251 245820753 116013890 156722342 319004395 167404780 840130605 58217368 1027961554 318450828 69835711 594695938 406558182 42686252 1044100264 608921349 304399071 547684637 666360310 726651285 759050607 353496802 946361272 654427712 603051908 174785239 541578376 360640083 317090 170443750 601646489 603232144 547439096 238130761 407056266 276611426 742299701 703802157 747929507 955051181 134674315 447716932 66200994 883362366 387707538 763444872 944931533 320566416 122913008 253053157 854671191 314209380 60787136 24393759 456560765 346520481 106600898 76594506 410040089 693411289 609705454 776052376 716405035 499727357 589309369 924966457 1045066826 895621259 406661110 742087203 209636689 925362575 916907371 1021205565 77518301 489403963 32031273 237198699 1063658991 439503662 202900188 887525225 41109150 486333383 390885313 614389006 138762938 975495667 819791913 918501908 1038998752 205809589 1032325923 323170660 673584771 923287376 695820764 117695710 2247942 1036195218 66890604 57402242 364805904 606030455 799552922 794627004 834044057 109109430 811538958 608165424 224471528 511813130 547607846 871833943 619433566 179325861 1066924626 449508230 5018186 686118402 535030998 1057713889 355975712 690064403 622129395 961077514 47565481 106479822 129400469 993640084 718028564 239310691 366265142 57994806 962527426 956273613 972690455 483181349 951499450 850806487 765416389 435219726 830607542 54591097 61472774 877170779 273449069 277469505 1014968256 1018705686 561352039 148992732 956194793 178135789 357371399 321539280 1068303114 346137307 376317496 6770778 848244347 114418200 823750990 23412191 331881974 1007143589 800450524 354703476 429101814 179954584 283834434 537601259 82330444 354954004 282268687 1043434560 1019431782 716709550 910997972 468498527 1015004109 637199053 1060507145 1006146737 22378430 449978717 285304061 18152171 955228557 352553004 386442336 631660596 331291402 414920955 722751978 888990399 476389731 960779703 26655607 74211995 492444729 685441069 1003968825 38061599 105819424 202925274 1027405265 657267750 713953554 1007461000 217236175 956606092 41909960 975057148 619499125 546701229 1058731470 432002873 663744739 777331188 312300016 384485680 341631433 1020904160 720762554 422782559 293307968 623371019 79540733 265744867 626500818 964053197 977404630 901822846 666790569 54741728 697180202 690689530 352852031 879654892 662378171 72004450 452240618 968449072 870949326 21384920 360234530 1024058976 505261514 181160299 719679850 914347963 787643509 34620583 107914572 424310331 565602880 491910687 2194610 708344263 532611322 878278118 522258066 165443640 98132095 723337688 122592447 137100880 21902321 81059259 218695952 725259376 218619062 594534869 676890525 390022048 413102355 549250460 879447414 845784663 925019281 820692809 846011294 462158711 97888201 926200494 162074833 947207810 74058154 878213587 830108631 957254089 980461374 623501168 904089095 1035657507 406141767 376958766 241903773 384587644 463454727 818200445 772504070 632365072 374614236 693722369 209372487 248329065 231870570 71856076 626606714 895172825 230055687 477416999 624127239 988295707 774150439 720405075 637859601 424060018 1012277121 855449897 950108030 500810672 639357648 243499010 650053569 841767906 618240791 235234056 894524257 255704281 681940318 924505256 558624522 601289198 798606402 645982323 217671679 495181712 672227677 512273649 275622861 830082000 464746642 526955366 626724498 571383934 937645823 685082250 790343110 121876122 1005866388 122384394 31768882 106522464 957806829 709048736 396304017 685064620 825659484 624333304 1064875105 1043391456 402648354 150073723 682797574 642750675 41806079 967344163 760557671 669131053 106516652 486437499 314352752 383130810 1050240366 938885582 969702543 624348773 1029374163 912151654 545296626 549338677 600596272 192667118 73174011 334746362 4292693 383679482 603555916 154621369 81571647 317049992 221879476 306336262 175655625 1025211993 349671798 152870800 638699916 314500184 916959415 1044872699 912176375 907233374 776416391 765664894 810427399 1032015748 267076062 442128803 351450366 283738129 476123893 161018096 465054014 907505017 1068603176 219516724 1012370580 983624458 545759690 560732216 91793585 222701118 400388220 477851977 462516092 518326184 178847651 100678153 775605503 634665666 344200110 258947210 264050910 629092517 867770080 318424987 120316301 899484879 304754592 366635310 279439790 795369748 125062114 1022221782 492292217 288894670 1010513188 1058124685 673168995 195541811 325576568 883664903 247848604 854055788 898655936 570620849 572994424 297870523 653474783 415399840 673593590 1049072364 379121954 406554829 830228706 1007774836 579506448 608876468 1072273591 798838302 168026461 1052589486 10847460 752467869 7308297 511742706 390012624 28714459 177117906 106306688 297857148 621451505 177466826 712744214 396738566 948364634 478578417 153794158 192164195 865537652 280403072 577829396 37297026 197973361 1052656166 84622429 252751509 24043911 25934458 126905646 531999867 612516574 1002936704 838433588 909990212 191575194 415618903 104461717 640833819 396908494 674126618 188234396 239672384 864406656 353293618 747586904 571888820 278626354 231049716 603706154 1038492846 311137584 81223640 488368400 814042980 1041843205 202496431 297759681 1016836417 836596990 701811733 260555843 642894342 1053142641 846100689 349862334 33921941 932999949 730005433 362683549 784304678 335081678 1017522181 57549896 137134651 927694886 72094991 292640921 155956234 153123916 522699268 1049362480 881330663 386489845 916467279 924017316 475299413 1008202129 868305038 1017965405 501512660 935101303 549731963 90972327 899594521 873467647 362628303 838337076 680008097 845219338 1044729197 562839856 1060147868 443651222 589233749 9857221 13120723 246508417 492356945 8688818 869486152 49876761 490150011 15700762 77002682 14448370 1006566061 1030534191 785745974 937979669 437256141 216941193 253953285 242841727 244066879 377790194 876556704 306075974 909041685 556407830 99561551 231405082 236705379 381549701 411561100 406538405 21664338 968158005 969757874 38897774 189521586 472409121 575378356 461224386 1068999687 490890276 1507037 82821905 96424675 901533781 935237036 804396259 138806669 753585223 559505352 583775482 954153404 282181271 267968029 1022896178 1002331732 249466117 697789046 958459277 387046888 410301574 358744281 37310076 770535484 452179020 30271790 273265175 472114313 1059063975 702923231 183762489 1027271083 79694830 359355315 217471745 1020074176 1025518458 563911620 154177770 898829075 280555952 826412637 221699059 1040528873 240279648 741757106 313321048 728663845 699038149 94926148 313997211 374262992 39920781 469387664 853150988 217641894 555137016 628873869 114226385 47745419 1018173232 118422830 803666346 524785528 846472621 547559289 295049058 711664812 1043822228 561716525 977232466 597086878 804059032 333481729 2489832 990995204 242671139 577290319 791537156 287913508 87632762 332674589 280330219 32119978 400450213 66032682 67413554 846533873 859198345 199425656 1025669436 392229232 792294141 143904282 42453074 961194680 14915511 743670471 551712975 79044720 964823071 591396817 491210553 703205601 385847066 803622565 123034449 37614938 514184322 15582928 301983005 412803621 890039225 1061393795 113275643 454665033 5880186 286699216 923772471 189162844 1046145178 130666782 139016509 257348586 149724700 120704014 918351160 215657842 449631803 987799154 658447398 282221598 206208011 633167552 507903901 800556752 115339699 629401542 893359598 240868259 1044016813 1037701364 375706850 7834064 387342854 633254980 124415739 950745812 32011626 59531981 871125455 107390626 565099423 110435051 791732349 802915847 816923813 525893687 416217047 431388805 670471367 572884054 9706617 765067734 946927815 452055343 224826410 773785158 763658945 139387431 994839959 664896624 320715795 5600054 263495881 84548056 409275996 924550690 625832900 225616530 868832536 128780617 672940984 789288163 171268484 932172578 1059134954 434900414 489052685 722117483 847853963 411603380 173087443 966797579 1012972941 985005666 851747980 101464428 399041029 743161540 1067680086 282317320 81386643 287637833 521396174 837142967 190845858 430082094 863642232 737932249 909043512 712230758 264441374 236265226 742203185 458285 544573659 370245376 86546079 148020904 999118436 632124458 12705170 513924257 1067949686 1011558664 174375980 297427331 658980954 21750595 1005656927 215167775 785012616 75962199 65234357 414358363 648759607 326442224 163211300 100569796 1070653473 668389443 102167954 324769597 884290556 16197344 175219641 21918117 972544118 542026709 707181376 1021752362 793450923 233508483 179994068 322072481 373434290 362049267 189079133 265461292 735073049 720695412 769369288 525546816 415421273 837665735 294884510 240851055 375586113 234600719 663711277 140014765 866139108 53839689 437088006 933972840 718425089 11256987 195508861 564485179 3305960 231982389 883274709 212619234 712188609 34950174 535809044 187259966 954620888 628853166 922232648 491256190 431875124 487623219 555277300 588560393 9876709 895547866 941184992 508190647 188872958 626997501 281593955 640735587 158911897 438708720 846300944 555177133 961776906 837678132 406302641 1059382998 942729520 806288909 332544542 20795358 491926179 854986836 131391594 836316005 270268173 1016125664 531648638 910687757 265843261 1032053868 125406472 351929680 962036192 803734083 15470247 687901779 414468625 255612429 272327379 408326069 482661121 361337751 758153137 457060234 464976476 519721084 280710065 684045911 656752082 517396698 901569883 1011324312 660074774 200907229 249248809 720070897 87184703 309030194 1048441563 310614429 828609044 450149808 661888625 337992827 845242129 105189703 394685717 159673483 42668350 579703064 443758916 624228410 612057280 468975460 89838254 433568022 827826220 819527267 190132098 167917210 926468445 622491584 559390801 402977314 927019482 630687917 410791312 493966131 969224816 242844386 976344399 337970494 257129626 1052149019 728640367 830247079 35669593 854035182 1020120747 674447364 224015942 105161405 334638539 840888138 700317719 1024567037 927041339 613946104 776378115 952411391 589197478 615019509 304105626 209843778 469206887 885138672 285226697 213622862 990260534 979846229 429649726 265664153 819248967 204531456 387406860 1018041024 271572212 303287203 304398500 1063951052 479971639 704258531 397091107 815426854 734265189 720485629 121668480 972236300 182104116 420676148 692042210 306262696 631243941 83774761 752311890 741433517 948959784 678636088 857614914 546957381 426833975 860848426 1061537075 477787339 312721548 642471769 528005152 722707571 150042868 202650520 951529006 749545767 259520260 241120041 1052330364 729850997 27994623 1006175961 468082540 661871857 440654922 925883126 408164796 696491763 664736796 651829350 734282034 282754553 569848162 141754948 498747676 379865308 39490843 537477915 452683555 971432246 528897991 921989398 812503040 425395457 859408766 400155267 918261345 587290261 561602157 475765691 406291796 1062717840 715670939 216096129 31971717 700852407 134844141 326420629 809272621 726368390 818142020 334194402 86913600 279534448 451542198 765875928 652386098 711528089 443899276 985730888 515393122 686899105 273112580 952299436 982521389 216500701 534025490 91874076 921080599 722703444 841842703 883834356 801136744 419458526 347909242 205028488 313654685 1060704118 994353720 78598565 736320883 93065740 255888735 460865573 274067993 318987080 227927096 893156576 894868146 634058584 349463201 883231914 418817804 589055037 983958902 691869435 800675486 1046467455 316707536 60217925 807165505 781494747 274401654 448691720 82136508 321240167 249574445 165116050 494469566 93549488 18922521 65801769 504907937 328469074 334783957 461479290 761812428 547650488 723307254 177353041 618229284 178255996 166121318 1057529702 353280659 397226797 342336622 1018440631 1005766830 754991171 555772476 195997911 321320396 501191406 237566651 711240283 311873375 899883839 224631387 1022878259 1028183972 1038165984 850631618 479032069 150600231 62601473 444421723 552239242 822041406 309281900 855430665 559570236 917855070 601543782 752579480 107142622 892670255 144489550 136714422 982006100 170672259 995446129 561170779 34008625 1012068498 744033725 554080251 922963366 817614538 14473569 479857387 750555781 16955202 350832408 809944346 161207777 489601667 62736075 318542783 167632721 448757902 322325962 665376754 1010720316 344311506 1054991334 777339976 686163643 827174408 550141461 674716341 699171196 73856757 940609087 195854166 711582585 874623757 578895695 35457874 272177364 869533810 78153067 271020276 310331211 1007084151 663888429 838734021 236099549 738437841 357466832 648193745 741945374 345244713 962698664 803192215 28307910 782731911 810330179 548370912 106616228 312139234 952963473 1026247440 472652419 892155771 639712819 579674132 982788565 753624422 853548273 602328792 133964482 621741673 143634113 294829790 673491201 945950231 677899087 346614356 990140650 108494635 78696330 197815970 608581849 20772386 493597697 344883747 680927289 921483292 595159300 655750856 538225439 849005207 796807123 216683115 817706841 700745332 992002359 255071538 53568117 177504146 416864478 317482696 461801653 660979347 478208282 1025430415 580285961 349854666 523098291 824646958 321454409 976638148 893505241 757266783 426281850 152715518 837744461 965659617 624420049 34773929 984751121 976655375 1039370729 379317694 439239437 1027697277 1061450953 622046419 944169404 42984683 550821946 376337433 654454930 356237395 300783030 429693796 530495096 757792183 144965302 428095418 469335871 572084501 4983006 647601403 1034592711 303816150 391405102 1057595324 53807698 688696770 529303870 811147581 333979656 625023499 600276119 256250956 288857129 49777745 244227098 382595966 860826790 498763303 353344713 417413397 604516034 597996947 1048622066 164639658 605646212 370289957 602277057 892852622 411622859 801173631 174958934 453860254 35313260 621028449 289534677 238257523 405013233 941708670 581855749 174716296 473372574 490815176 747324432 171682999 798734018 610062916 376839304 215108849 271896261 666425318 63788071 643205316 22650481 1032806861 210972865 299596329 641214555 1067488435 1026363874 709235285 990510777 412371004 1821598 362832599 433177315 983975974 54898839 217011962 511373512 639368948 206877185 495930129 210814751 143488056 764136402 531993548 483081159 894751916 326922264 329548533 923954982 418039258 649302743 494110200 211113144 686643351 907091713 787619477 47870445 290627236 376354226 221628166 249012290 224719685 1041408865 139690124 647495549 182585162 713531236 976576146 727088147 407750854 899322155 40268682 584879304 687854753 950506034 935492919 799503183 580182752 221910911 642921 575356090 1022317701 695850231 515486244 473075031 521241276 641670548 639570822 180789449 750783566 1029935854 878363902 770903973 43511503 385195869 934638690 376457705 61245658 969840454 689300760 267421594 414817232 311111554 54172246 626366402 596968549 599529815 619048843 1046514641 309986975 714852522 542330108 497408601 215571925 154474895 593097071 544104690 936402560 336437249 384630255 475988675 885055797 802390844 242060899 215925892 458714344 904386425 540217283 35127825 756343674 520502055 72304822 385622398 920497247 408845103 718547739 894089274 938808566 601028274 203249219 941406188 1044846815 567449834 923147240 269782666 239340328 925857120 378419275 944346536 698283572 625856189 815430552 125393938 632475857 235179790 68083865 541227793 1058932661 73252892 592554266 822950717 546903698 966242276 966554144 210991469 570423140 618619569 530763279 261661258 68377866 829228060 905901242 765200825 1063371967 30484246 871632856 804188987 554810463 278887901 672291182 542864390 970318190 510513704 438554489 481847294 595005223 625861161 526056943 383576506 9270643 11901058 74245176 725395128 574666964 362286797 554646405 444204006 747699626 121299740 762213931 230403331 603431899 266573100 281685886 947970711 536445211 548956845 582237347 636597033 871526954 178772573 217866347 350200878 643323711 90022495 889457975 119576407 571521251 743250415 962245962 534769557 550255650 415497844 693890230 476506492 22677157 566995511 255800892 427871628 753477593 731159170 817901340 774829124 686503792 938240485 576422553 403513518 919787593 383720581 685144422 441694647 406584580 335702220 1069690809 868540774 321279229 437015782 285681284 773433779 882179540 534343255 865210821 419188973 529162365 71045661 824270324 664732083 989586405 648720945 8489788 796431227 213949594 250779225 44814156 178698035 563130928 200961750 682575400 207531117 979128383 1049592068 676912797 202870650 192389219 384273684 587734944 513835343 585042686 243707493 441320477 80872383 324962046 255749015 941190805 861636678 731631578 523111279 447723383 204546358 169081215 9722572 1064246871 957371080 993725556 180053496 542775688 124969921 72002894 354542259 876374150 415017932 1685699 34947236 601948949 845335298 761850609 804075809 1062117646 480087878 228966078 947783836 981071631 1057852173 152993986 230549200 598342407 55455406 250222459 961179639 28093755 150282927 372947332 246978020 719402135 459611329 254403243 899614900 502837626 109218500 351489792 92773717 145298670 127624451 86011076 2512712 759245409 833648855 802360198 652123818 413395589 958913534 787118832 630731178 80260026 88983213 112538211 363316971 72297499 910392461 1068109198 279433157 345153221 689109082 169982345 964283878 649412722 700504143 893223876 1020395567 727946470 260921011 743295208 156069479 398050200 880218162 983803627 1026440090 64187368 350446371 684167872 261320171 1057333434 371534302 971113828 237721987 941383816 883902354 521076876 777347283 805868753 291899227 544406155 520639680 293962516 296034413 768334427 583537023 1031208492 66617594 221915838 951031150 428301869 29633008 795937913 429317346 149779103 138237001 403543325 687412536 609077734 656406580 702770919 519199648 642120107 151152481 69355834 1034185642 224941127 742770117 266822218 879490641 975531050 392529864 585630463 858979518 56099082 813377590 125914961 376644671 143710093 342920592 375501584 801978010 158748030 226851118 281929268 438764178 848375973 381810225 251908949 201287341 382611091 884328408 896872374 450845017 763279683 791780721 409146139 141041255 67289697 956635869 966382189 515206312 45868599 943292692 347696203 321644928 872334431 352458914 35127035 634196336 705734084 1053832664 658578102 526074471 532562138 588285171 881010384 466094861 1051010069 755625359 225947810 594726423 392821783 240786891 614004131 721586065 93311891 808381279 593820846 988681035 448722773 144515741 741170959 1023336421 1056792537 651517752 196666292 108200233 369777965 75162189 775470109 62503490 549436814 432359138 420991201 472696580 93096870 20287371 701279100 1072324341 909475731 587485066 702582606 1006058292 650980728 904518190 926705570 907399832 178248448 28240341 695649332 31642813 43859210 244771689 985777517 127110074 886961455 391721970 412983257 580745484 481962817 32500014 146049281 175400509 415596143 272476614 244871907 456399604 577213012 158672616 257277751 213406167 937162530 867780621 386465326 207724952 662617885 753177076 741884363 288053923 62898312 391851981 567039461 609074285 868166227 1031835249 7154807 1055763456 749053649 508429500 647305683 342553013 230844624 938460469 905045655 565696198 608577925 4870497 608024637 875262640 748818799 973380500 43104561 90960466 1049430041 343774944 209935797 13047539 765281302 707341887 171447119 981764316 157582969 752194756 244027427 31760208 219211199 786844368 577882936 877174980 120199317 578107351 786267017 249056327 849755232 654699393 648084755 997830110 703335854 410578307 306815438 389592962 620022973 124311085 35457969 427808492 942391242 48422552 595211244 251940969 214401544 727470604 722126270 662355437 808069182 213713006 386993847 463374379 537076254 897601921 660469981 392123012 1040084406 84663131 954787008 695619546 421608802 221779535 314153289 1047977022 81548193 987654769 560356285 853015099 735825377 168200707 483826812 170846422 124297199 1789046 933222902 655195595 899588676 330071095 611329032 126625883 195303988 204101390 345185805 630820549 187326096 285027235 269399579 912701098 853207186 888001889 777105669 42964130 563051830 502472063 479283260 1069880053 136041775 296782824 312250596 662784324 911226304 1001576155 769691239 770942079 890643461 913634228 236610673 532989807 62759191 39270423 653305037 323758129 539438167 128823755 821033773 553710871 168147009 634295407 407240228 277985367 17048245 539630559 283373900 909105742 75616825 177434451 599720714 852457747 818773343 645584278 256005073 658512646 726969094 750206017 988392461 733022414 1058572122 1001367415 259260720 588224881 620528318 971986479 717510648 398583296 1038042635 238696563 626879506 1032181034 873335402 931041767 1017800693 487759773 759797419 42922181 583558002 294087122 926335812 336905888 367077577 946767425 955286368 735994328 227901686 19331208 745765329 793492651 764673506 361623890 648783634 862308595 1001128612 541552858 781241047 499876397 926888396 543027536 981238520 383499780 107429494 711202930 1037046179 526927811 939860346 387532562 428146377 389812050 702291821 1009405766 695588561 1066275934 223571774 106390052 1070104739 842057288 795558041 520885911 510970092 140556669 45728483 690569291 848523994 595445363 1045087545 69228089 983003919 1061433888 136818666 570448864 363145462 530614265 389519066 110287380 73032617 637890464 772362463 217224754 818902741 499042006 39065875 116288791 801403803 731686367 1039730132 202466400 724795903 920992073 1073654179 347038770 673574572 486435057 527138853 768436217 1072655166 997413426 602100005 230240833 160000064 108242977 927039168 95147018 645677678 630905864 1067629910 417249204 898446374 511914294 869353150 215400540 948446310 764217718 332486625 27796629 725375429 46930354 892738819 873626378 912285120 277953584 692255387 152417592 674811339 109661297 426434443 1043296615 67639009 573853777 297774761 543061588 235525881 558270243 926980605 531135330 218056568 307023594 619488547 557513616 810617619 171614236 48158753 867805286 497248386 294315850 52143796 478115041 33501006 160318162 893956543 278174629 19499959 159027199 399734929 25511932 291379692 54439738 273226112 154722965 820942282 898446592 137364819 736491436 1047269595 596244152 561416517 61903892 553750122 1032119380 800928516 673346817 179638108 241865750 480556421 484859172 115313535 72255157 120637188 579795980 554775229 540069176 864402694 433441830 360197334 967610683 453569460 680891710 717122595 922140102 188333786 639797870 871077606 1050250052 593155902 812152790 167535980 828915218 923313059 476647710 754043854 329935982 910151581 557756320 873521641 124371876 392938681 490888177 994136673 1032103762 109596320 736752985 789479785 135945343 195383818 747588491 971962815 7448031 238367215 64882350 531686819 674505770 768684958 1072148305 1020201829 855293685 220003141 212878462 29770626 146462252 37262202 557839722 921989279 889411428 853947520 830652321 886668775 837997909 141686250 346916788 818192056 642638974 1028030456 61260678 648604019 10377570 119182922 508542022 557209496 505323933 21187371 973590023 860507128 584775269 989771427 170241968 756582691 670082426 580415607 516418433 1068542685 307846348 1043312197 942906120 100370237 595224927 345383643 637493050 89561879 748099268 692769715 976551754 341880371 665710132 888881528 409348729 430340329 991460007 58798368 771137429 10662974 124405525 20158921 14790015 29903659 611207327 892040687 271098525 93210056 528654557 829736424 641002067 1005110075 208854119 630703322 365462375 160405965 348761588 928539161 516855633 688114107 5132763 375876867 709813061 708290939 642984938 64497330 169785229 84000164 1054445080 953150362 203584159 412445270 511474377 61341083 789023127 369993485 942600320 50313319 49545555 902556461 477969643 390842569 396591765 334023446 896073283 225022129 947929306 765007531 407403994 679360207 986253063 684947096 379586806 429123238 2916396 315099175 683017976 609106363 469132529 771838062 731402654 291634395 605772099 770481656 587151576 213641827 430329741 1049906635 154338830 48852336 1071467585 834449830 1030289307 652733966 68351099 734906939 943862444 72506020 835323103 224117618 922301829 587774126 172925205 450341531 600203768 246101049 358623597 734094480 36205878 938211849 286324254 863756252 829679915 821870180 186388122 413747893 1031633267 43924267 1054227864 322896928 396108181 943996270 665526621 903945794 526584538 453444287 354160036 988009848 451908777 772225685 614257127 62288049 168792840 507608528 599168335 47193528 130665859 917429839 300028759 273791886 457787315 1063131565 212327173 75998123 165940929 523100556 696141278 584721176 132342294 212652944 149336078 836235290 670610120 1016653408 156882377 196618193 537647787 971357671 613417309 749721442 116015579 914565130 231995095 798678407 238864268 320745860 349198836 871419865 202452883 453954283 334900093 558681754 441679166 399664291 826249467 920661587 149313087 4642684 63689353 1009525437 995431952 1064995094 241246666 640040542 885127310 216422255 714598324 646921638 571940562 882418297 953632532 80080850 725562475 918523343 564781238 293183882 324930451 146653046 399872899 65832421 201260183 940720873 145418227 235003354 640017899 581030727 173366141 838830822 344686985 834386485 257579644 1065027030 739920387 382628809 451562785 334276105 554122110 579196826 936081238 962738812 698276354 23434311 312395344 403021986 578836436 686869257 798669725 413147835 346197277 1029134062 587900848 156199992 87406377 500424647 603939362 913699761 87771095 951325145 345448580 351811051 391439425 74075206 387957765 260018516 801490659 30403597 866771091 45140421 772870049 739055853 824828318 549042509 72797839 1049385628 1063451701 875348742 290517452 1067498934 71897673 876044504 166328073 908804505 792853134 49668994 126840455 98252173 971638081 55948813 503253806 599113613 361749819 899588198 882060956 561010285 891706309 77058379 347884557 530358838 407466078 546436624 295766927 1072624196 363480288 3678395 53302126 42625759 193721096 617778546 3955367 1025909141 570518311 711536562 170056947 563363576 287621677 782971939 745646120 160455917 79495867 557990516 244299867 384187802 613838611 225256672 40446856 588350790 936774965 941260380 328683200 144485537 883794853 28958117 493339754 590729456 419283457 559024985 83719645 878524835 823501604 535056155 52312990 588550010 461303795 944376078 442348052 131180603 535480004 821749820 430460587 182302448 1070641002 271265061 52941297 417418562 33267938 1042813733 1010168326 701825804 113421023 584136163 549532082 138598596 203487141 604949443 820540318 631063665 600537349 913899572 449895009 1907202 805386470 219945116 549673164 580667334 359893080 996342014 472931960 968704724 131170387 786460663 443653509 697789348 947607628 71623628 139265009 46783316 73218861 71828539 338194356 114444546 312810909 305971865 1048575816 670010477 621935390 686041579 897663894 241148860 235759456 801692103 403947504 882518064 945845089 877363835 383083683 779398315 492864143 505760877 143318851 1028467602 289191976 210386879 983284964 770763252 622039837 562676976 582642851 769247955 316343268 556014446 284446297 890882371 547566736 645858416 406230487 30604408 91360163 969051579 278738512 617472585 132232489 186529143 190337597 44180445 795158504 598352193 950340963 694957778 1014400868 483708371 735901510 1057687542 649666482 1017087153 617645611 827848531 652256393 122185406 823914430 410125341 366637017 262297696 159538958 497947217 448156059 113933363 407223425 106843319 544475480 623890044 482935734 753926448 510229593 1021579962 1054681149 1025293799 356917072 595719275 760322063 53878234 316104349 321312245 130546088 942061052 912287595 712497933 210585127 384179854 527665813 109380274 552020772 797134760 350733860 922210458 68037455 9249376 826224720 955293215 666595247 892019067 729175476 955131952 408166444 1035489491 624512021 995116715 700680214 792634164 346234830 590777239 58047383 181777469 507185901 684814006 433873774 795219052 855191211 496958943 696878011 727048189 426456820 556116273 310211623 1013585410 1047463310 24303540 951758856 316939719 778460651 827954322 591267538 10831144 912089720 639342029 243320586 709515752 546626500 330370557 353484786 876634709 835157772 274740149 327771065 808792583 936013384 136096605 153013065 21368680 924608594 861818886 472169341 904206402 795880701 33723063 1017804814 848386488 772090743 746728615 1053328495 996424851 679568526 669869937 369013674 873330711 992827755 795901005 380467579 297711101 502566354 200084251 231549482 953152298 475811638 964290628 607695897 1043098849 852908675 479924901 853797004 552670623 408727885 794081547 478511286 1064823634 320692153 837378952 994032174 638382761 592434709 686335316 479314702 611276503 845999213 692600665 714709940 31446781 231599728 867808785 300716844 815765162 410136308 173567323 609217460 635391761 399689483 229694359 594548634 319722081 755167849 586428338 700599344 457989787 143742565 344618839 779369489 603039357 169275841 92400734 583196674 564259219 345564960 600938053 220726374 842105156 417478048 571587402 263524663 942631885 50995916 236792038 319886075 848366979 717707061 407301441 257631419 41148040 948242266 216805983 913498188 461142844 738688738 12667209 597414957 826304708 588180146 551255646 254445943 541992120 65907716 297735196 883331001 1056991153 1022745975 588701429 365230705 813708706 822800742 711247151 467843952 342539938 241357686 825575719 786156314 831727368 1004924805 413538529 2577504 711017739 523532879 994458730 524201082 892629256 605323173 749079862 891636016 429716639 172478185 150527597 947390058 764576579 70326237 46657042 156422376 90355684 270423499 893233720 892689297 318381321 966529816 139434526 640157013 848101014 758597969 896961801 868617950 312056138 978685257 982708589 1072069301 177089013 983572747 278718586 613092134 1000969218 435088843 438613609 986970410 8452945 961381688 583645340 540242309 794131153 452852560 8892589 752988354 608069082 815723458 587751777 778871044 453673440 877263073 407992014 480782129 908266879 879482125 446270506 609013075 1049317768 254450569 9993477 288013521 867698385 101285674 550711774 251914872 1055908911 292553783 564825873 57088423 502349789 512938241 289536888 873117298 1054607721 566954812 112351511 1053025283 621878325 758339696 821729418 446543447 530757561 917517142 642016746 726096009 712934430 296139992 779521542 565713654 419314362 478131300 313655434 74352826 738314926 894013568 638524622 109109672 416033840 497537515 413292885 582330465 315965483 113086112 397754264 125290555 527126022 727994773 815085264 433879809 263223548 818146263 641678258 763117195 662396280 399639885 828043372 995891597 830724477 890660473 1004669541 119735310 762601832 412472635 686848878 9383100 140011423 148000929 327471254 775347431 553671331 338069686 364736493 444877798 361154316 994295300 973721439 1072923310 11822778 653007864 497591273 100578063 417007412 138989988 443629439 969893276 254120668 38474908 242871749 169468633 757538957 536375157 641580740 71519996 1036880082 365624283 714187286 714735762 604431027 35608989 727203376 478540177 317590619 407122019 68799346 826493878 560790635 13573317 1555370 222927187 431286516 748773213 96102537 622077739 632362744 941083690 818477794 571617615 848752815 464759493 977575711 772212405 583309376 456256 723454043 507191134 591852305 199140841 268568924 119262004 2616185 654960574 816229217 827514637 667147036 357643060 628657500 86516982 801466605 101811588 836470370 517586845 451465369 753886801 142427314 122282070 254469724 669712378 51301803 393657652 72930593 1016893246 1002369189 706990487 766197239 800478284 452725847 26797733 1034371275 589024456 628445599 523586345 776719676 423714178 203565755 787908802 151881488 322879539 400535945 702715698 28366464 150194069 57839575 918810015 448276796 976727885 22156463 270262766 594787483 455492636 315794132 93024705 501875051 602489911 728101612 390988655 262278234 440707187 980036855 803290608 729644668 266391264 534520546 1072159157 306544643 930213061 404527589 1055444868 466711619 567143035 37278553 360344684 652230524 821574582 855595248 565262288 583573820 5303584 261089210 583373803 415231079 564797079 360901820 474160889 626757152 57473500 207938969 135092527 297012140 104716707 137459357 235672370 521479770 476520871 614102008 926814116 1072701844 1071239722 541108530 455556933 247961643 421913852 349407470 1016738513 645572800 727071003 77187267 916548373 4406186 998821454 626388246 581146892 334692466 656041276 637675999 371233878 227070602 825878822 683333005 325401407 263084702 350678577 52616146 389613628 137487810 552753728 576058529 921827302 634165268 778650299 677132131 3611519 697243974 527225197 794790524 832362046 167963940 575778489 949098522 69004802 1011838359 271994831 495780061 770838210 97659961 1066266267 577817220 892764605 764355382 456115941 519898097 337134815 344427563 273835051 381688102 412498856 501001728 851289644 1041210020 693823954 567164162 24104111 530354471 97366211 274587432 750467410 993033405 1072129971 742451586 879892229 61508244 1010608725 281368260 548769992 289060260 220625509 493453463 127026673 404294125 593699347 36321781 340655424 420982312 945380611 77992564 848447155 805918750 1059444585 1006010456 660167892 286339838 91214378 333835769 69833769 664423058 989810303 472464158 594076043 465186739 1066372951 482811406 778938168 667419263 268344402 309488384 584985808 608166171 933375883 533823945 211599655 813840891 683324636 1057150867 465107263 217052426 132874648 348870743 1071195089 954106860 129044732 947197910 718233083 842501875 874433221 313546165 8497800 641074074 597627480 1037913984 728641105 670660285 132185476 419195277 1068587095 346840727 250537601 393208938 652095552 709647903 537003875 294431833 2099138 991424652 259040657 925641101 647058944 704321787 530165257 178809738 63235873 741634992 399635378 250331375 341557093 845591684 312802095 987620423 967307640 133153545 417494181 567771896 462672452 807529495 920148653 156973934 612866376 395988416 84066912 342441038 647495121 15484261 89335003 614351350 559560290 441429214 640148650 237346701 859050236 1063977893 875640005 313516366 551291758 886793284 550574704 685097682 179903277 264011513 290224764 567446838 740960953 890045740 325753799 100379196 351318766 438568665 725850791 260274189 624341933 390204551 147686218 1020166459 259104619 517759040 850873329 857900834 953010078 1055786078 759693661 335040700 583095955 507081168 539379331 558789516 1019976586 1043865480 402340752 786758935 631899330 277390881 93095234 710235170 1021661718 557682842 785950411 854397010 1046179491 993376619 331243743 194657985 773227701 437293371 206435988 109556840 254107340 640438424 662271946 672750488 807559172 1048015008 264393097 435078314 653006391 906073654 728374659 909845835 999088717 568443975 1000018886 513026912 100856131 382110323 428283418 806868296 641188972 949427306 418948015 656267471 968125404 166207731 120948431 881954865 878017523 910770480 820571544 628007170 500435119 308204417 124473725 812052948 136104646 105749134 745399591 899362744 126948123 429076900 783097306 941015353 827855136 872273344 600151771 472289204 565437781 201805541 314313557 50046844 636119575 453078482 649257001 457465305 385603993 970170537 885224940 1034004259 926825054 1041487587 345452100 410472068 376792699 473112562 535347815 276778519 517717982 169939324 548803603 640965243 615642155 918384179 909180635 881829194 637306934 708039591 232831330 517459117 149782332 663886876 668277370 567617138 670355535 382131218 860357713 521792839 421941924 1058139810 124710451 213291291 708614983 673014213 260906106 845003480 88842123 657681957 109446564 244060437 893243140 425505982 1061219999 904104282 617017493 476204422 60410555 215019915 516046490 1022978852 830430281 105345694 249147772 441844873 413649852 172189230 746287849 890369736 798366535 815200082 620006508 653901644 685310937 979635261 40182496 607109730 793358774 34340021 1017644144 201379772 187001795 203089216 264076861 770961775 943918140 691270750 563102511 813094559 1057917565 349914471 386478370 500717613 57156906 17383941 948481529 945011599 812360789 1011934855 884130192 705598072 593766808 664053055 291332344 987748133 350182065 706775585 726445194 872404102 175498226 306542075 554972850 167500627 230488180 154156590 243646474 129029807 197538554 288120842 730185779 565871520 690929469 429043799 441090619 668266884 217288660 123725179 600441757 368432098 455402932 1001208294 23607830 767773797 12552485 903174377 191720153 148613687 381037007 321148497 721094259 424221001 6630598 734806716 801376661 333544547 804742674 157500454 791627960 543112527 48999235 484266121 626462476 545114470 1024980568 929978143 668453539 387009535 696991537 372909952 720720529 373561444 945832222 540815156 195232711 394820443 332530802 890379863 851515674 140653288 318261499 85185279 175377751 102566710 324023771 287958485 981680356 469967752 671496734 420067149 344023896 768511170 26452171 509110805 333532804 953363342 274956797 731063648 24521829 413518825 265887834 458999371 533584365 646109608 685658913 1043130065 351161960 985100353 1070835217 481607305 208850268 63638076 444848986 563483617 490328416 363480060 292188093 491963558 589798450 100557047 583620914 751543893 873604131 194585913 110749707 263998487 307827395 665854017 127491344 796492362 14472242 25882113 279214617 334896003 459780693 91088404 268140937 66073280 607674096 149900116 140169665 450361740 323363844 73952053 532397484 624003929 719299108 839836679 854081793 83550752 547372419 290693918 711055099 693371277 748608077 757559608 439828211 149401937 1014585083 363007128 493524816 324875200 712190218 828347415 670105478 1024141998 824657958 554483417 178896505 242388363 102669721 486404070 898630712 816653991 279392399 313011926 534231370 966898981 638878437 990528011 714623523 824543732 503719280 637097175 1051077843 436753632 888289916 905274069 548047989 111001266 210793714 357939391 953578097 559110500 711575009 759788136 352740407 815005885 60305601 815183047 507901901 941441239 905720065 199505773 675372180 927891714 266714237 232743625 844856344 683785586 699960200 456334871 173601315 615992280 595550478 36321210 389726930 283947421 538175035 747239493 388472740 518455647 704360868 1033488529 117996962 951114883 247190841 977376192 158722185 100945659 838334282 1073248659 1020254002 229083630 455725215 448105764 463815859 318371297 594646581 359334541 278822781 445216857 218967241 527886609 486974773 496713762 916357875 972045398 156109695 698890241 498831042 138517391 76579801 95485661 516748655 961052130 845011499 671266679 397070068 905692182 122706296 1024857544 953179188 41859287 984703863 119725976 328099953 525450054 979811890 1060184182 268505590 843875178 900521055 863148874 225069254 883342258 628409952 989741374 45289935 759345600 566712797 18553760 1003255250 1015252516 766315975 756110126 132038202 492890767 831019116 192801154 899333458 651410217 944139399 291402432 547993516 1010775939 719217999 610290426 831452858 467080075 203571 204217409 878832310 375028652 869409824 646749716 910636586 35251223 1035544684 876746715 681937787 740636582 343627531 678185559 455735586 908532764 894080658 1012623168 832805843 627707856 978624079 681478935 454558753 248184 114927434 801616635 491292743 75423831 318317047 891306318 566529500 35722923 938258286 743773517 1037827820 561696113 261460445 20459077 851006988 417254095 807759053 1041595194 174479682 947343362 667434624 277682745 476762648 325250312 645939181 859830370 75141213 546756992 249789165 762213965 370270911 951591740 303644156 427202859 669654691 115586777 18146871 408638394 602055450 674348656 25496084 823849008 52003763 117899831 729745924 246283309 708871488 814796700 580475942 211511107 1045384282 618116943 26441924 659972874 166369337 281177886 758644142 954322711 985065087 1053008802 1002107661 369045815 247376001 753921948 1041927225 340616990 509430739 375312734 826112910 931278104 641438288 32128239 497912415 56209930 916869168 812223185 207282264 985388496 564220202 854664546 905153227 568167038 646209030 351515466 879356367 676128344 954347240 448736905 1012030288 1028905540 1071568688 416444294 433182399 934273145 57044290 1068079646 112908564 667099569 669795662 330349613 16681437 944986491 146622969 96975502 409634760 166624349 675868361 965975636 206295299 518558352 814037060 195324517 370413524 827831360 840293031 561843389 663481540 867840406 917892570 90160119 306711031 1047843625 87563075 413860140 598173881 707232113 796499394 226814445 623974135 596353068 255752212 524278165 1040736879 71934145 515943791 668984003 763999220 926040490 819418865 405858563 534058005 4960213 605418115 461737182 474646942 423636286 924744282 996716270 771499568 443638831 831369075 942994365 337712677 13857858 11322199 283788701 689922023 923714005 317717380 274098474 152881910 684512141 471358405 995266832 632965502 851995572 407029398 655004485 512792974 949623584 79363431 537095543 174317584 613913846 101003031 295349920 590729321 310863644 726703836 219869012 402980438 91575276 108993546 722945521 309853679 343933113 119058068 987188120 925554266 1057122060 14568321 211691496 300084553 163831499 65708430 452758826 434348043 86015932 614059574 139269621 23348692 1024175028 504371482 594459122 804194685 25490548 193847046 558523827 43346270 165379155 986799559 56511322 922134997 110586369 284754216 784111946 52356927 654266628 384242690 742901501 405006395 678445615 89829903 607002963 14773012 374397682 328294115 892171131 568890964 586595582 357830021 407428870 413660900 547699319 549836222 686487846 936601738 471994660 754488742 214909462 96645525 794907643 94230883 758897775 968240273 307741397 838500064 579700370 154872180 390550679 738129918 341976003 844837904 416597410 896730202 43304206 302812336 649528040 580994078 282689038 750325763 563489881 940101381 919586822 959669379 62314221 405202280 762983269 273106504 523147803 299255516 510680894 938900942 886098337 365673894 278531662 538453102 879865710 331561262 489784063 859492090 86279634 585879967 1038474063 264091600 983782468 1011573142 673074836 340625968 427570924 821392566 666091956 4881790 1052253297 518657912 371361085 40328008 157380163 728226605 988953381 132140924 635887232 673351788 845998397 1029394713 643424073 601049333 662636847 606752504 39043887 412789373 1020373761 155802406 795488095 643875143 190547219 754572298 245738352 317989393 885814799 118048501 787065866 1035812173 281569093 54187004 894593620 914355165 290707443 140326712 715703655 336237944 950746417 481434401 527703648 955794228 298584630 1025532724 541859779 488291975 887335319 935008335 56208800 68905790 32517071 69362892 514371230 651046755 576129985 528974155 252888287 787263522 883773750 439420785 1006108049 776726129 416281663 695574188 684126545 443261214 844851911 486050306 475661767 203249391 66784150 493289999 855433106 492008532 180167396 248462931 389437821 145281983 846015652 888999646 374649327 240103417 290594888 310160357 954410477 405932726 1039769187 462790748 355839638 871238740 569249324 856853023 445135597 512621304 1003526410 1053077642 402622786 342419492 348577302 93971859 320602941 373620361 727320446 1004014898 993269754 111383071 496826121 1071463738 866238243 676214707 414712403 735770276 161574809 794217345 841712685 1016989796 8853462 797353920 664406137 951024178 1014614123 1025907069 507104751 346187087 183620871 634317354 364921985 1052027287 196410986 821674756 912910653 605371231 129013910 697319956 268439476 1045455544 776943231 479140219 124760165 717331304 860031059 184764406 295863482 14097788 390130252 681752130 660597846 820618032 232832550 876518623 697064952 225944270 411529921 107591988 448689491 228900309 201266241 266114920 568074360 791168864 119002165 613280521 811733289 263582778 990908100 240339560 499466459 351769802 1023818599 621204271 975013620 4680345 666999629 79718410 59361100 56240124 938579175 246120119 298369106 672977457 663690620 395051468 599210968 364794591 864822370 499427532 595745108 935283670 347390227 160554553 1039857074 471482416 830917463 154226064 111087557 206880929 609052415 844434933 543340679 443976007 265102349 173572128 882207479 483487706 365500072 147398337 672688217 201132096 602190130 751100881 260632762 921091523 498831648 408632442 87919982 750701605 517637984 936244890 579040487 871572026 540577330 635971379 922786575 265065921 254588525 111613024 6449954 582483043 214476159 1010058353 886343078 537185853 266206216 92738354 786638198 625580628 615429028 251065151 81326905 317578871 543587938 1032259605 1032686286 1052087947 682575382 318767884 934871637 728518499 329830880 714696997 220010569 861432783 608894260 497084273 623331832 220109504 277871063 242095649 347651440 231678649 643830148 799501750 936137906 375308689 1064990011 154718177 916638609 573103889 728044465 359313481 225871772 538841517 455503907 625115876 737936763 1016181695 654638130 169430475 744031064 991401080 279873541 554656584 768879889 463395614 322793383 133467288 186624252 730208268 1063053958 189581343 171875848 834945316 317403032 976467476 256531083 617556236 1061220928 574430697 770330421 148778769 97507810 376156807 767781438 689631015 61247234 524177197 606489361 777136763 278450331 518757003 915975078 681486153 306404247 705242535 791823254 553940111 495768389 90823210 614145749 398396038 405511813 422027647 730947599 81732785 837949853 692364609 232803474 172930195 859908075 159383558 839338763 878196710 946870097 312450653 184547494 348351642 738670375 695225680 762353270 675185584 328282733 743069440 324645339 144719352 1059419083 593064245 694607618 708953496 448142950 485775473 499572911 408169969 20739285 712562373 808282727 373835779 898969548 839633335 255580254 444160269 1045008205 142742317 199028070 777776337 834193354 597641195 32077451 882136338 183990072 979061626 842642687 859734088 758406831 875694388 888242505 1038075130 391885500 304919772 39386647 682387707 787035618 87243677 717029475 191630120 170589734 277442520 192190484 240022948 463172087 26882620 867901674 931557527 984584656 27265443 133360582 948878609 627928071 372326537 1056371671 1017210555 814334613 401840472 971500249 852567683 560733674 295360883 596128339 121466879 670649394 425935824 230576756 945936543 782190249 414180566 408099429 183165633 14230881 61892371 872514662 66903091 52201322 613663453 381520236 822307847 574388546 80309863 474081943 693572777 839127167 952537233 434229029 364867186 804641447 480877224 864792566 76680956 865648651 94975530 432172560 867422727 670893491 205866292 183768287 950657732 882401324 84941360 345495648 880249789 84247123 302763789 641742082 892328855 929879668 575771775 638428199 99089640 137168249 249071665 935494241 704827258 186055483 908699403 902757331 855887780 386433565 145063374 293865446 528724938 267073772 120336513 334526840 1036300477 1011124572 520356357 120358949 537875390 593074139 414954824 174663796 170951587 927641683 36622208 951330846 1064654130 827713361 679793660 62619286 219445362 649158444 268687836 744299083 190911442 306659949 526377582 375520827 857648924 942201434 929165416 694869717 941327901 856972871 450696090 428786092 763194421 937928077 68956264 869764728 281742272 707189972 830778750 175240718 154728780 84561853 789414738 1057881527 119447578 91752475 654998707 782477061 132320700 99017800 358225176 120450142 186472314 592094556 610782716 351853059 833588194 597022800 279869334 943295177 489796270 1040200271 706129691 928241930 913827434 272639619 379336773 1072936301 271131983 138367203 116347397 583613544 577180991 899917025 506103899 215148977 509508869 558391753 493380917 857337723 725060119 1042731575 385697913 865761586 658824265 60649186 672366230 906359654 7412480 337872810 326014824 879742903 1034930192 799531330 558735013 969943668 232502729 351366432 534031992 863386127 177967845 215310982 611715780 224086576 287216366 153558536 110956611 748237679 153825809 1018160544 25209617 225368985 15694715 263670603 522056898 682928309 749740627 1021033840 411381726 252226115 751116521 241724789 601236716 947375471 457742423 873405533 30861945 270137341 3600997 305143538 746693380 240599331 722899637 705007358 267163452 581199437 553684563 796804515 943355705 546891231 610864345 327402232 957908710 775022820 334674169 204607236 1044492527 637372090 5360502 903942084 921493759 313432639 1066879316 456369866 852293075 806491183 70336502 405628741 102019513 1037399666 694528628 972426106 7123979 600119942 1059091979 207531759 97504272 734633710 214854032 397349417 201292950 915493973 669351852 642949158 582774281 867024557 750128780 490364113 210386271 175763808 65810158 793869696 984616944 282397218 844521097 411432832 607643891 85113742 809787901 768657659 160757420 930855474 690586937 243472469 174175370 548468681 134846870 131317251 169179266 121384881 738307473 386739611 611124695 536715933 803264832 345095345 409480738 11625159 971410777 819790688 372096003 313534083 947086280 141480543 789509700 266448216 455403493 983826139 743991228 483429838 921132878 490747137 442569371 731982153 66621742 397078626 439398749 568801621 601205984 234171187 397977101 325783271 950151290 809401164 80688835 457066093 322236918 826947174 462051917 278744004 964959114 900241296 929714331 631118399 446291971 309031339 520800849 86081951 124138329 25859156 522934458 873921702 464275286 968425570 524935049 690360976 726079880 625403301 455320112 339727617 869246738 591341408 605476566 602904690 747094710 421059139 90140902 348573872 796922788 268344590 884231588 858041370 561854416 81858353 338977154 15822107 384879872 593512968 494297858 124223849 350986119 584077470 877436015 964396762 497517921 1031423227 709229550 831423543 1036075547 660619288 911410853 233911911 971108074 612799336 751887852 998308689 308326026 156769741 353012488 936292514 264168393 528997608 297268791 33037079 720253954 63455416 253801433 330803467 478467824 223590095 176739651 406522513 835676652 799081551 775602081 215234210 481136025 1033381643 1070720173 687823103 525470494 935628914 324093423 249989746 606627624 427072861 972860728 84409829 673977383 377290664 269823843 838597580 501601847 656647177 440754706 364419837 912372499 461845774 537985134 924446344 951310071 478525496 302495037 1066761555 313874544 254666680 431769005 128398265 869879503 1023493771 18358617 879804214 312468580 417387805 345755956 451454663 101059618 560560727 625126825 141117 874088412 129823080 875264272 538296379 952506474 729841105 837447635 377807303 43752421 962371843 569312336 459358716 1054197651 921272209 852366177 985595798 229877585 409678810 663301323 669363775 900212026 344936141 521934837 477046941 305417548 437773248 33256750 1060171602 218665042 402637246 277130257 383055682 139245524 76796637 838080967 446584021 128055108 67836671 202840921 1005101313 626210049 329782253 700795890 843250909 273406444 255981187 791682074 638722594 267492930 256446019 316688784 750509015 553848717 102396261 508640508 826144722 205139075 272900109 198580325 504311117 837650698 404444063 992865054 794597046 332405334 862602085 976378706 309408304 282656677 804287478 694668654 410330057 448789021 464605473 1058598671 372394866 63121411 266904992 956219935 182075414 382535245 1064104296 917395834 91647737 196285004 271301372 376698250 481329142 703578016 416775367 447129869 1004764633 833311210 641510048 781162792 836730832 1027295191 334207848 1033721604 912154706 813343489 897010983 975790154 1007466415 269198759 909832849 172128078 668676442 95423991 323474762 428821170 718060018 913836778 92050007 170517880 26519830 627822588 633630939 38384006 736204885 192719436 637946345 284374288 1026397562 231490835 234945557 545186685 800986859 934002022 986614948 841865399 409322545 778925048 698330269 322092537 145450228 944886662 705212058 410229282 645487493 1029286440 26859631 893357207 263762674 816216708 3822604 65448031 820775244 388625286 622051984 283318326 291499478 947770005 462535805 815413210 369453577 871652541 547301264 394614722 643991633 1065851736 413159718 1072462354 866866313 230282086 211779953 997905847 385008412 645883473 374143650 747196969 82088664 951340891 624423028 972731870 343573606 728875553 236519354 701916332 986341428 1054048953 979028182 493179038 554325017 943142845 96582796 993439520 521544660 806930793 582967076 511699553 633563833 469519014 459251616 841350927 830947846 88389102 157878982 534567967 559421266 671620629 641125834 244582281 773887792 199204015 334701192 392836300 1023872181 223710933 385723886 362635056 927586619 300522957 315585789 844079314 323069866 196466130 96516087 668659997 188480099 154126337 623109992 258674793 961704249 580022614 229665108 736784733 982521234 635421894 349474781 768023053 267593858 689577219 1030159328 282297905 7241279 469723260 263755599 181138020 980777113 145539291 423507754 1011016768 688380418 525822400 389564848 220302862 858103345 283553036 517182213 692802318 433011583 1020032235 433286676 454355017 146074031 667832621 1050001702 271631146 120286216 681325607 246160564 1070503697 134991130 64783196 714473755 430310167 191799666 832772009 150932255 691270774 876534566 477696431 227653959 969601693 27729586 1072401323 892765865 1061227335 498926859 885282450 455591023 223375223 756854383 702279542 663597007 927797932 106431338 336122865 812323623 272583947 608723087 988080199 60265709 126062555 774164927 131155382 161053636 607071993 261547182 1047662925 168822976 815838351 717234848 828396093 297383172 1056909605 358544501 576039892 774713778 200738109 472022472 368741696 336455170 1045415107 985292491 186330611 1004400435 611373811 125413512 269287958 85550419 525668899 11695910 304535228 803933798 694644609 305171224 568879227 799368152 1023038424 13000790 17512569 609199984 637681699 907841279 877639534 1073666198 896530266 107496133 1000542735 372897097 725194035 544599428 715791087 372378475 386158036 811283723 527486100 132155053 65880507 55751032 838843067 886087341 287732507 136540699 191479800 911307441 263202486 810849563 688515812 469213278 901716378 79580364 567782806 716815454 628759476 825761844 83753524 352970762 322728871 629951681 755195991 568579172 924617107 913646371 282550930 292806130 1029491960 970024035 478410170 1063783147 851015558 330932752 916403013 760478793 503451266 200404277 58799363 122519422 719355956 819345209 144185983 1004077213 1025708225 509360225 501574951 698987808 88261025 714130571 734217191 832882194 582048810 258401479 343774271 969396634 878837786 93428507 717734117 1001806325 751124968 232043046 942456201 460964017 312664803 308960159 901283476 59538655 891409814 363872376 32622542 101623067 484752525 992400466 535083476 400915803 348173101 685011587 386692122 1021984917 311601264 171729350 359018716 487807798 614860583 789519739 354612704 443618282 483749549 151858182 499490192 760833865 666581305 900595020 427269840 171317434 699485640 761434718 397848111 695470931 283489297 713206742 567819659 370695733 62500444 213374277 356328031 834582344 795833157 952064432 846787244 654768039 174324915 525563471 233051604 1032689585 865881392 571986027 59613244 440730287 547339073 660123251 588584528 281761680 98548874 822218415 668197959 136537303 926454480 896337189 295124238 835658696 835045884 425056242 259983396 103149996 670907821 752983170 527736132 931915722 664707131 608900547 1037072031 173704777 911664226 693986285 927797840 811005399 382469769 471914534 734322090 435383030 479367996 903097571 642273547 71403013 714435119 414937007 1056296593 599082567 607074568 1067613112 454431360 282208499 387107563 1054326472 186915282 747504936 862896648 536234909 763886627 887113551 707514057 1043577660 458566608 832793969 77893924 940749150 991878803 903692648 170196315 137838954 345756166 512800328 688194056 557119403 794524859 891450271 32274442 555619909 268000647 822761231 810575195 242668500 870069860 181042065 1017211692 558479409 166691564 249775299 289677905 600583715 703120996 601238725 651317981 1043504068 310705124 939044980 805547949 957869927 525770073 388075870 526807851 474233117 431754128 936024318 693802733 1057407514 297548751 713394452 50932392 987505274 209871928 179894571 652215544 439207214 913294461 773891837 146807141 717616428 822857869 1036494477 444314287 884429080 977764117 976566344 318142068 36348511 713727171 904436076 903397335 906636407 461632793 129177509 245583899 411827148 307335742 287800386 289748760 826897008 726821149 37349293 253866675 169683839 186239668 134996737 1047372965 598472236 166681665 863356468 1055042686 323657758 943787912 660644423 880622067 660640778 611658272 221024924 328284326 593668962 242515840 824186861 917050336 364560703 875396656 415988462 622252343 941658722 688245408 816930396 921072838 534154036 128049643 482226986 759085954 922888839 514055847 681759496 956855439 572644150 77705445 193448236 105179397 700810465 951562628 55976304 962090417 676219987 408548382 687008370 63153428 564367007 830262925 430104701 219928539 776303083 564099140 472035073 704631839 386351154 943652225 350184805 786404530 284281484 665116236 127301054 226559555 578590451 341166051 899112507 347562473 976639999 490790863 650734226 720689349 830669430 956863007 541833118 52665104 832367932 481380753 137877685 159242816 1031816154 794907715 142662964 12140865 581928122 984488050 741064958 1029544936 346335757 639523330 779327986 292705128 467817566 28934580 582980093 468315250 282404811 219258331 608118656 973361260 224071000 680927905 500833058 68665273 523715476 1066049344 913752137 1070988303 86410783 422126148 492563958 294707726 1062520558 974490408 723148109 641896576 682124447 651153077 154395272 753732883 189369790 525516105 290859039 513833602 671199643 851695861 669823020 1045120048 259386907 74831335 771791106 12052572 529551426 552570133 1053642857 638350634 334333871 284431935 282793619 615335682 469108223 848638122 1069830804 22695246 957267827 127662379 817245647 97275667 92141372 809638928 16547966 775758499 681429872 1004537770 153948449 144609373 916636979 371137829 1067858909 299668732 725659682 699215786 336044972 710590056 132755349 542470473 667956696 132676378 351494073 341839057 316009910 816446875 652438874 220504700 97299869 466623952 648087780 323646025 335266692 355566464 800684167 791353047 383897233 979112948 427327206 564934036 34879185 374855897 633872490 202253783 640386710 464496610 948629883 493630994 689110510 1003322498 803482301 128349712 1054073848 191136365 29407490 528308650 438529870 690319611 930200713 399664582 793228374 471991621 622181460 891268965 996108419 952485712 365106703 74188022 958516282 554981347 880221833 39097778 17977713 979402228 806409701 248070378 136561941 701808985 906573639 535960471 853123142 70306124 172426259 1058760381 47656578 829639326 28628956 943624835 1035938537 716119192 729032586 790286120 150081765 180344105 461658857 949608673 116160608 506443157 317544575 372944167 787356672 208490465 934204488 408530318 960121234 923308839 877598480 302487487 604867964 471875035 471109639 23710477 661935227 725030792 345579857 942446329 23359086 95918032 1049873411 163901603 625396484 468705079 620210046 83123138 20504583 205989269 625386951 560773447 951082926 1014137192 508493326 515455960 999933338 400218477 967580714 290886081 39157718 45362402 130649243 799937556 316961617 807557420 15041036 780537384 325027259 321703585 39219209 999996859 590692654 925304198 124039756 657178152 374804710 678816107 1070828378 162911666 660466814 411386508 328289675 239370527 167938624 620221385 1071507317 1057844587 290461131 562100223 946467996 1006634208 902917588 572475320 936450306 52222778 1025595269 9696071 141927821 694421257 251595126 901725849 6002073 4320298 45304588 1017482452 724033231 82817905 844979369 811405404 188294193 224327507 961971223 717292022 864454503 1012403268 37004578 266796603 285527958 828922345 133238583 947902767 302291647 495411819 1025855727 965983872 806304668 63233267 10860306 892458900 54529752 985643049 730867175 261306766 944776658 45143688 857418885 397520021 134260079 1014690295 831427846 454739020 430198025 250100350 531376264 749938354 225326514 641845807 911150441 1006956007 695879059 126440174 485888934 652346258 926991217 577899357 649669663 494370015 628493358 615909702 842773676 515092870 828465961 610169419 243075153 983219305 690950255 978891261 539224080 1045855833 646645765 591715827 574827850 549044102 499678392 232197505 814719575 23194035 716054913 484502846 732549896 613174304 910390378 416022757 702580757 197699965 684466381 651474602 65678989 315417261 314676849 722703543 256154377 675435681 67301513 227920332 112497836 528178400 681499269 601864514 193385443 349906351 658719707 701158315 481721434 779593888 1032377423 71091525 141754096 340938234 811417750 705725796 768450667 719542651 811008506 453925305 509621686 135020230 417306961 640639735 243764445 57101586 1044713184 687269737 945296454 296479984 611375498 518574418 43089328 786420374 283001854 810160891 181779328 524944396 973988094 240600955 90570789 1059952168 233081573 245161854 500705596 1068787355 542264268 390406657 836699217 189928287 217720888 655588232 398028276 108848530 961012582 256835747 474028163 743025589 877637891 157361157 875702438 190149721 797795316 473916771 609287120 1057264444 122686101 898926762 849318171 362294052 744548743 611196769 949997625 474764822 944355018 771483866 985705344 15299694 104456680 14119201 394193876 585840419 939951274 75696415 449893380 418292599 5009352 946764837 270508999 480530581 548137968 530843550 56990218 118074305 529956495 908040754 58621024 903689663 475248750 1060968208 812102828 827221274 536607772 139655042 719210180 457418910 1043869442 434364595 145971983 719425476 420595567 728643445 280847745 575434708 368912865 588591700 871665548 777348329 28204156 976367364 262191660 228378577 940088081 841782352 1059779220 538654666 642445535 940268897 155649846 846438371 533233560 8709015 756407146 851055776 26311356 550109252 333795680 171689257 509074713 71807764 370052322 638672184 128748675 1040216852 750022588 304889883 901306165 186918597 553469695 429147635 398382423 1045331109 538002468 690887437 428999265 516572684 973454563 381051398 369065903 958524806 412468843 567018408 116619644 680924943 460722942 565819326 152203453 594058365 962026099 297823984 499358491 593730855 358140137 458555555 634810447 648832808 451985632 191160768 234801249 225181803 974438907 967012635 287959649 786750700 320628215 107073793 900680202 44855096 475174802 280850436 429626749 285937193 530240910 611656678 598561835 982753644 520343702 241038452 968688899 246160854 81645133 1039088077 733297739 1008657502 574540968 263393208 561512080 85991421 613500690 455325427 377238470 968482984 62950688 679268321 657230289 461315629 473378292 914914709 653123690 70832016 546072588 340019245 481355809 716090243 602258975 524956993 1005735658 663631276 822749029 558070165 93781426 751888158 644825837 109991320 612474330 1037163059 267542165 20311281 578395761 289171777 915383131 572793559 607063373 487223214 650892921 195213629 283330278 517762091 899559523 346825053 874438685 101836239 795182576 1054535102 550235469 701846301 719633023 70455269 447160336 514354426 196041128 71807057 56302010 25683983 445778840 493778700 592385005 208102936 476535867 210021369 793617217 215356368 154321000 294876965 842136881 917453885 14085810 442489544 159487008 28654753 181384514 778422355 775919027 46500108 684067305 249012168 193152256 352567888 840204766 806034239 245937402 795378148 923866118 997579566 142447120 653800263 89095385 278546154 436522534 292686555 1034411098 997372107 730259818 808779896 412318500 963909502 865165474 262341563 349528770 140080321 890875994 585981107 121714227 409646938 611445285 738253216 854411104 541867094 501248987 684557351 27058892 556168827 975965903 982031215 939836063 704189680 830181007 906017024 49915952 788784031 58045291 903301261 202079711 403452990 619781002 354443352 38546871 744988051 814943567 742041119 771616094 918453675 175747374 271921724 347929189 416668579 569506979 979224721 950526499 908837905 169491787 1068890690 472090580 939580428 883840584 465495738 965476297 338804925 86438518 1072312610 124402587 733106713 50229754 286438293 841468187 868554532 692812503 914973079 587129918 353139006 393337558 432895956 356063724 56970178 193228905 286919445 1023872285 969768106 510484807 739639874 229139436 58955587 838187262 152225163 547176394 285534263 356569650 1006246918 591025604 812432325 775332458 20159045 821249626 617583652 782242165 712447493 583929237 208420492 535307651 1003800525 855806636 716010035 537689694 609607485 382492290 879398541 7242787 598581044 745620790 561669007 400158362 860257106 236254248 97374410 108053100 241612053 756299468 698470316 530996228 1030135816 1028748846 462640878 264286155 411153580 77572368 529479711 55451922 854322974 460117739 254308734 758101095 597952150 205295113 605090968 314175686 875237719 813396486 5937639 673602779 657580685 796100955 275395225 187473452 303624563 747891858 864564341 431887248 814218177 1035473997 999382699 220479767 370702077 90473351 852189221 28938895 315005784 235870518 398475540 908764959 74523239 899061863 344762138 343992476 974353438 836553307 478389206 625228854 304762889 677630250 723463714 381847589 1057975410 385989777 1022511747 27890137 371060629 1018285162 703023434 1059670349 484201613 933871754 172219489 461954225 547370754 775693691 881985455 363866566 1072350746 627247117 533039705 1061893923 621893870 189899843 75634276 983837484 220693469 85830632 1022202103 625437240 1007013078 830711878 392847613 65638399 727109609 75807189 954510444 556529003 940900672 921448311 844861471 634407614 375869985 774902521 1038240139 547359022 374092341 895527674 467024052 505679943 840716375 360860990 1033635859 185303733 882413450 220555332 926380000 743446299 192510859 788183394 892049940 70647157 441605748 128645941 1007973666 297682697 876687514 997567615 173472646 710463726 893972368 114273344 243739755 580891340 318789292 148068496 309605863 866643028 580338249 708254519 327664826 174250642 729554384 961663400 774233575 246752334 281655649 473797692 8470178 398780168 1046193834 253936530 954295567 286755671 418127404 301524298 421957621 38862275 297140972 504599749 149228601 930990958 189779754 177293005 260322826 521334621 37455755 707778081 794246620 113322987 25740419 853322988 373361825 704038634 420555127 945092165 499231382 441360220 685106277 531430233 946596325 737154947 189321607 389387295 292851080 92397744 277159596 851202820 245293164 640741320 20145473 907878232 894117229 779622055 106345617 946611973 204274274 527962088 592483507 262540233 314579710 794907212 917593429 400521014 1025725013 675119160 301559405 335852418 443858506 164004657 893837369 11828738 925814992 520567933 513146129 162523153 256852475 1028150224 322433536 646885159 33102166 36114799 612416218 793863119 500245946 483911903 393948834 831412453 109115838 748989258 961323586 745319219 736618972 81328997 209998333 756776130 43513993 1012365240 373236811 789664265 805931411 827839843 1062519688 952319715 596069467 172289315 885822427 822880101 909360742 1073359319 212279253 288515887 1034497566 348020071 222391014 188873410 826598447 938355684 808908525 376773285 876946970 859240128 970103187 912488346 164135694 70263208 48800132 61969559 193400374 276993921 540488744 535758637 4306331 754571433 443808190 48593947 248947977 67043714 524515984 62110683 651938952 42835692 593228390 701966722 266892768 606352853 878296587 565986632 431734005 930145261 325064259 746069225 94471306 1000254509 548699662 849994599 873776311 436508244 1035939687 279733790 1024573896 1040483988 79204728 380131005 287881823 5399005 100723854 562980312 291628894 431053132 1845997 615815229 400069820 716724485 585680477 1044575928 738064693 358894615 318973917 832841081 167286317 525986815 418686810 751731114 867083869 250941727 1051039378 728792230 178378813 921764652 1017152437 1039701057 436441519 1046029028 598613961 242700935 459661980 408927624 108666991 127666805 153243803 809893740 732712775 776112656 667141816 1015843469 743119545 554067306 332410530 164476634 112061082 911321170 757212744 860430602 812336954 528833420 688224735 32908439 950673571 716242540 776271829 387663532 909074511 933127444 301170655 806358833 374491004 978835309 305043411 600848436 220306853 367796912 751044026 339137193 853776862 374349257 796216660 768255739 141720917 773903925 986345132 915727347 432686197 864565262 923757777 345727850 894482314 521543630 258280087 193277993 649806987 392786575 317584367 224457863 782116738 197416705 154342722 925532851 424057522 757354774 815547938 125315094 102545540 295524820 709255633 834486280 471793841 740446904 710104297 967547099 687214614 337467953 771031369 833174523 639228610 849934650 380500396 843500112 408863481 569656890 139446862 455904407 176097706 1026069772 12269590 240518387 669406001 581080699 564456082 136658891 819346936 631253310 573776435 658801549 782381870 192833220 293024219 70500064 154615345 521211878 884677513 1019102654 949798380 754998664 376076835 103385970 658860684 7370105 172609305 575211675 120724739 1017959611 1505256 127658607 416212619 556566280 159632450 115963791 257583913 592407404 416104285 112320926 895446337 932377283 582224029 666533149 20883892 364744344 280004023 197494138 543060391 900063637 1060257824 493210987 616213179 956069237 277788060 1031014884 493120900 870366597 634409891 629763958 648729609 18700087 802357440 83318701 864547803 1000452417 872201230 629801806 27380841 214315826 223506624 972630582 501519514 736264376 470884841 462373930 299539324 978397761 606527822 1031234213 664497561 729355774 725732373 768130061 211472802 366573265 110107836 1021525668 575498947 729206401 8184994 617644360 746939359 347940319 546265511 495334370 863612345 524404419 586872837 754428247 328240546 175482116 292767031 144673291 198976339 322666368 825184240 600996338 414962630 313658553 259266613 54765508 31645382 31477831 579189729 776914365 424015406 240149499 51690276 491033590 672214139 459582238 321458543 322345740 873052526 918507426 737995453 256731518 468425697 25160636 799064991 495223970 222185045 525603088 888888902 1032790484 495612408 643464514 85494059 450982809 791499670 250853430 119502590 486774566 214901389 250629659 277349006 139356901 597898221 831820023 856539856 509908846 583687563 168974792 235416507 878209455 63028925 139689870 45339734 1064089521 969305132 632680191 406474561 366727772 665090936 293695131 906231198 202588235 489262309 312285240 186306799 253500636 871045379 757360322 607344319 630925068 110400426 154628045 948819796 1072953524 890057099 390822630 11968535 879525972 486600446 314118681 35963299 220447027 657735298 198559022 95004762 917840045 39662056 21909043 608886692 1057937024 760716792 358384602 1005436168 521716286 538281394 89454547 401992706 351103561 828904385 546630828 815476068 451252910 67962884 132487547 79150044 735086234 565906945 109772266 188318738 254588628 913689584 360903368 389517214 190425440 580086910 317344967 938647467 336796085 523172701 183417656 251685256 757979408 438851746 1027483599 720783296 888639319 544773838 496580236 400303894 385422281 782868597 294357684 711010329 517037282 470635419 79480798 162792350 857481748 137701682 48502903 5133218 721900702 169612405 546391263 474027474 784150303 717962598 669735725 481851081 885315537 186172466 16134331 869224955 898598906 620095463 634063970 472478389 374935793 990910705 619404779 736664323 612951391 999848960 1042849569 409671930 644870863 254968825 497792489 708000862 212669004 341546690 862684179 457846231 99997224 538748551 671514490 185977940 729203445 557035290 725664405 913425736 323623963 1044624261 521426983 618776894 970141847 651388222 764069968 167312322 966021784 102988001 342624183 884697796 541864016 930803882 114205546 710149851 399655488 550534459 174647430 306681256 572457833 450641700 753140380 837342864 219603897 920341822 303533879 435970026 678078988 803844464 997496838 780811243 568492380 916332123 450559695 491728526 567844193 809332515 617937039 328264527 286256290 152832509 454265396 267160985 132592718 225245852 1018184002 576359351 667128652 818161734 103801244 314632648 724754996 853662330 784724958 201958153 852478313 256318320 770687149 477965659 308827502 570730671 185662802 142725055 359831500 619561049 754609861 1023925031 38327522 976525524 932873823 617064713 27625075 955842843 320690319 170587735 617991971 726435411 731826735 1073200546 892381841 132885367 539633239 957229082 252898616 677530082 534954396 944918009 788226898 725027621 762183657 302478995 974796983 338699305 335281466 494481976 371716732 910711219 650036431 964145085 664087950 469044426 1039931607 337235308 594707355 819476674 915723158 563410580 806889817 5370470 934867203 802087089 311163754 869046298 63097684 945779925 302276786 441713205 501795489 347541324 101364065 165801565 735336086 406838208 135368510 985995523 65279100 572643373 326678169 1019698837 386041828 784795856 317398499 65443019 862739673 967947150 722904791 912814442 407680903 354441271 53055443 384247070 796484716 1071472868 331871328 1035027587 827135427 832909591 46088884 820489849 51203332 321552274 385452547 188942638 568133667 331108427 628815437 970770580 533714063 198136508 473844707 38283582 507388767 898579924 539127248 200628895 834019021 869340633 941351365 587277611 830791505 1025462610 126317137 850343117 238059192 495955794 804207239 477150427 280916256 492717427 347863931 368945809 83153893 985113070 1072690070 655524961 451096782 1067351347 273771847 58061383 139183262 361627181 456433561 574964397 324625900 442615823 1057075292 16746832 1016207987 973245783 844431811 373845873 563766996 486777199 982590190 40466306 976335062 628958823 15168732 1019458317 320697054 460004838 884021037 304761459 750363896 571349038 216450518 531393497 671370812 661735807 821548858 582152248 770392122 511778122 85908534 629766365 343777150 473630976 1052373194 51585442 434220475 647101826 310168457 183708740 138743958 878505406 61763665 483161025 384452425 769247030 948205976 208801000 179646169 959072950 505508745 28008601 27159787 974418576 632311308 914120677 462586414 526844104 1046479784 981137831 871211095 192513046 268919343 771218790 696040128 889075902 521413630 859340080 675062745 721025775 436117993 224576627 163055143 507548383 665268163 505181713 1026930640 1070215696 66397230 267637376 619059288 336899132 782857565 69503271 753900514 507696832 563244514 287699864 635405186 188729157 309069868 503645634 934942717 227326069 331906911 127422540 76042459 2983487 722087524 173362880 331081639 982042043 918844315 114918249 500700135 938716128 174901233 23586598 915107576 591278319 181297601 775138718 414765803 596178626 746587069 31976846 230698382 678133018 1876158 627129699 158226582 332096234 905110791 272306693 39526998 124401114 390586205 896851057 200061585 953876187 876582507 928913278 833966309 147550657 273446566 749182731 399740863 478595636 93998309 400347333 1011892875 367786523 735462703 395259197 895519076 1009476193 567203468 782324501 966403835 389616222 715410847 189937510 611144053 1021273546 971898685 414524979 514766069 88064179 213674209 241343244 303194976 659990520 295182085 483537988 624098225 66109339 457833502 777468005 532094602 608410148 806475905 500804216 676265930 678383556 840017677 72085841 64093620 61900327 316220518 429693962 650427240 1030769724 317122208 259125496 829324091 442953501 470416163 206171823 201349433 822016697 851445737 929022599 1042279214 155441895 393132253 148670818 774710451 482518980 61427700 215147288 683469609 433117101 210369834 540482039 737104964 921325922 623885810 298872052 994288377 625232761 32759961 1018355488 682161380 464031177 321338006 893452282 205319274 362774364 586855900 104269219 407350500 658294848 448731466 97137948 933835220 700508857 897560321 63169579 406571045 136240919 880038920 386821546 681293039 379825826 44577892 774968356 420546953 555515404 593557011 939583985 751955827 250491995 877466079 537750422 199025470 587324919 971154449 541619233 751268897 474280045 1041863488 184283803 504879330 207256521 862458897 1062480858 585716704 889601031 840880759 347277688 476477909 561314874 752512575 1043899374 284804856 253931068 127998804 394884355 1020037035 213840097 362674520 1018652799 133233911 13701982 312007341 1028323620 1012626502 70332214 703913971 663469942 866611114 420920261 588012693 798347466 443448390 645865966 356489467 964374563 408155592 409157981 614364812 542571219 54387541 449527714 1046540232 676454438 667833996 819386303 859426739 330976568 279012666 742825596 662793066 916864959 738216245 38252709 886756400 256083150 950556732 465762210 752717198 891313294 806390642 146494247 499110224 263586047 493398361 979437322 315191796 91202968 427099264 630004554 38853978 1069444268 34658477 612156700 788908345 839474306 298012814 774589181 499928395 972149250 1055163503 401104416 570152348 678614614 312531699 717051164 320231315 116741502 448594036 395414759 258054390 15083974 68493560 128879339 393612601 1024093595 118157163 822384179 1059004749 675158508 103203267 920745793 770869783 683027201 760631988 736456976 461295986 444902365 553752504 336668506 1036241517 748425056 742939212 342390755 766944564 785078956 923181270 469992165 930250068 745771888 1073669672 601851181 685274273 74798647 76011441 1050089208 986238205 610208546 434320789 301150451 33000495 430571390 733583243 682271469 614088255 758477806 169391217 402363296 955342695 316142391 1042373884 23239086 616119332 766679890 114225940 806956531 228435265 427746005 150803974 150119081 637035794 768052699 546475522 82768440 844716209 1005011496 478783404 60964573 1059738797 781481664 474610118 50699386 167633560 412004457 783938145 581445490 418801861 752384411 397083023 805335694 278635889 569002927 592017004 178118383 1023628421 152841057 29283758 94067752 989561870 626660714 607892693 663810652 623369660 170410810 92876980 788752249 619001809 410161094 914774533 318671843 217935725 461806554 549687902 987239710 647265372 755915656 493045819 561578332 375233538 971213478 70118357 406965008 324646715 298486704 879997366 321521876 100810396 280418987 843649214 627079220 1000443790 384816488 661830713 257820581 18863408 408523916 85361408 495534796 1001001968 8963825 709427380 429290375 134304688 134662422 36735826 1012126092 232436792 523857346 397009147 561285032 342339365 823985432 471423335 1048238273 511654537 222820356 835845137 259218207 189398421 72104254 879950853 787405935 986155729 1069946550 354545863 1040551350 717877388 474315190 997275384 1049584119 1016873681 20329067 252379350 1040170234 1059979869 351134030 44125701 107860291 266323694 210062560 20243776 359040481 324306293 905771507 496218791 914825278 209808146 908922968 716307399 70991414 600750867 89832411 752397933 327803173 672278930 393471804 957043711 317608710 69635638 420557047 586630812 457198389 675056203 703531622 654070757 96417643 174997108 734942705 458311470 709015931 1064047821 1004817448 320986489 756746345 930635311 809550626 184400052 637542669 596517280 421570608 752979918 345043491 303214143 70524657 275190030 863777734 159156897 269109190 739707151 728494230 341600822 836831040 662072829 602997171 358054878 781561334 366802363 802396422 244775769 499705860 1016788943 382356540 429593112 358194773 541137901 128169325 703811727 840091151 764358468 160857826 1064945999 58573828 372399415 686777951 6415111 737943259 476306945 108004533 178983179 334014142 856383090 966687152 69854213 454107795 201571441 353718892 854675573 720763824 231204033 389592003 640144256 406658631 94406749 155955921 1064926250 525645997 816080326 229005331 387270004 589654720 714712448 1069246707 486633553 750435266 845756046 1020769943 830702767 881904484 886043250 522427962 373179117 307606989 335409779 397865749 46038002 46579217 276284785 1063519596 417688994 788448146 503901398 286121073 595102929 123606326 538847166 406670088 1042486977 427456676 775525803 788552485 318158473 725568649 763597564 201926799 130826583 875588615 330601074 623278495 562707149 26852906 1041745080 329674196 702536926 991771396 499605048 177399446 499421918 581286083 239793755 674905200 936463656 610826463 439004517 700970934 308502089 231494796 893747551 206464959 180744194 847241353 675685591 872119845 234375902 1000439005 584814508 587128808 742600899 715343169 710374671 658654583 362859012 727999285 84255065 888534868 169348143 631112276 503653469 376297632 808647456 1065612286 541763608 83427296 977679838 232577382 284009776 230492000 743307291 631804018 580292324 685140222 531088930 125710211 962344785 762061676 82039153 287015481 524290543 274961911 372583242 141472050 31507120 588412665 973188260 338280804 330133969 553386446 770305216 213421211 661941585 354447145 940052861 778379408 202692492 739948879 519803476 908030907 503234663 885141603 804394245 520235881 71392199 903851384 170740885 159220354 736678000 412909616 12971131 995189670 469256340 16686979 1005181817 937774604 216929208 28163910 266622799 906427818 41952664 829236399 449437609 550168396 576048708 741504024 70504874 1008733059 49860568 24151579 527367017 125720731 363883363 856039286 83453850 756234369 74060014 766933773 924921063 434765772 734354911 672357455 770417285 460424275 336792003 891678755 329899265 762835731 570180348 1031156479 846675450 220021006 502402981 441780969 639655742 816692190 866428822 286108734 10997317 516576980 185961256 141620745 424411267 688342736 206091173 580855932 695569627 301344095 838298368 244781471 55658467 109715419 361963661 799642572 922224859 232363927 559091057 1029642138 531384480 852063815 126617766 579432531 520851445 820688893 825203276 258393720 761490676 60449227 1029660215 384911774 634832569 17517390 377473632 70962334 594324216 748735978 771528616 848110942 977769507 667448127 818512467 418758010 409526112 557901923 546762448 675556757 280811617 977896234 106747708 226426611 931422719 961936115 244441782 212717545 1068381712 231525407 881812052 1021322295 562248293 825071463 863614760 845811159 129886680 471520495 758669932 404167842 166864858 1065665417 703111736 467507529 541798585 581061144 372033950 753936934 185156857 172721784 967392735 91322385 452134108 147344321 839782127 828453144 611108982 1056482714 912998379 853777263 338613586 592617640 878961587 944349178 357375786 218105474 449420142 839769120 495167897 839650526 971519097 8785944 950930707 628519349 588807538 732542250 408511121 994908722 389485293 1024386253 863797707 634892718 15236915 549410809 392761303 541520445 503486740 971056655 785199068 64286270 1029541584 864028696 973500335 622487936 230262705 896007309 879612411 60018226 559122671 785643672 591075036 410210829 265700966 339252778 879263055 622306514 18279452 434179065 670504821 196548463 202433455 525586345 658766257 1038784515 624118735 665431474 62546477 1017671029 527647586 236202914 150945985 207870860 449808618 287636355 406270125 860466217 563153906 1048184377 555201352 246799867 218215559 925015941 1055744495 511162375 300433514 287597642 858099648 21730518 447200329 191938920 660375284 92988355 471299305 19261505 242918976 244323660 357420757 950140061 1010073731 702973438 718535984 69118938 400763685 1006924727 527214773 351154344 37530726 657217822 554002005 939569841 2544865 702635333 490516933 1005531255 464981831 711243992 37886000 324043158 215041585 619932388 354649344 65821063 600242084 309504126 334557303 293281524 306341304 10747733 553588415 53735157 825828046 385255018 71995268 949640690 45373125 24275907 1025432753 653945346 490847092 724434876 612820372 799596724 177685508 686188624 449376943 940603420 3490793 103733661 1060505309 150915052 410833370 1049408244 1041063743 169383107 109377357 1040977703 811000180 1071307635 967268126 852602805 752026676 77174341 725000323 358867602 114808064 879498831 426401939 1059903881 49166190 630411166 606202189 612459039 479595195 860892624 514097177 1028144834 701479756 432586898 11770631 368212508 650841253 218479636 85478322 682297576 632802699 207562980 183097835 178409869 708941530 646107770 534741318 618658473 785074969 17065521 1023358598 768434253 185980269 124724643 346500878 232158988 945824538 852834256 181994399 68793891 371148449 318134746 907000010 449047380 887707590 904872870 922567676 917709127 50928205 842460700 7008608 772819857 795929878 799588082 611986229 838937028 516640488 271641860 700582283 377829220 246596045 446564869 171062345 642886243 563948975 333581845 479923342 239399084 570038255 304113965 879751814 350427332 869207850 721162849 987205871 1029658420 1059713514 342538271 926428817 710666250 950443783 495372129 641193032 216242249 750776103 1020319645 1006031889 453723562 1033812767 155366615 895007030 956866789 172103687 164102171 430360705 194242815 392654869 1070318406 175873523 70479456 160485331 278602626 141735647 714139413 568397710 364656127 662563819 390022564 149730691 307916228 930434879 135527756 345712517 24751685 266571072 104654537 866354752 494909146 467978250 135717537 934108811 100109118 950958793 299502931 627910072 8353953 672612119 910305363 873651934 346080155 86858040 170524763 48615390 664602142 808947306 56282384 310674844 571522719 441230898 920411083 960382255 904219612 53032229 714318374 949499407 995350787 1049852194 923952125 172218448 347072621 20967783 84112459 43129596 624697457 459907531 569345520 707363988 674604369 317462991 944833216 973069951 736232721 1056406065 671522515 850003580 867744815 517443992 28472404 602531820 257673026 826649607 76530891 506339352 134328289 667613642 242771543 753746596 329853512 172880269 739340729 105242291 288326355 983929633 299226035 1048175476 967462349 325804042 911089954 160041729 552458484 858143951 544204801 587493982 498081978 317011128 630192173 224015782 691308051 957288106 996531429 423755919 746101712 374391853 328699895 828593307 591503945 150477571 754297219 1046999053 154089047 863070974 472572738 539433259 78625963 690373694 98667382 595901199 186694375 309149633 672505602 719795024 270907312 819099749 755367927 22520398 378197105 547471508 1066389134 863306466 489908434 775451294 321118865 288968709 466076978 883478360 840233531 491741013 296378352 463992888 877300385 845179308 920565726 438698812 481594933 1048207586 738029406 869810738 900994567 263104148 68881969 823615667 876974845 549301708 794917260 328777791 720478161 437054716 653357625 846597633 967268214 864057977 514171348 816417996 274983965 239269073 769343302 680216092 430033693 273102427 223111080 706965076 1036381506 1043726267 756286655 870162634 939273885 973043375 609682649 347169535 816431502 174364869 747573614 273998008 1003899249 993677099 900527670 601505374 5139733 805179984 161018452 1048246371 384847827 1058550078 564563255 690402264 845315339 458459252 864961019 615803325 857335790 160123895 728880000 1051411334 353776410 904276987 768119628 833585249 251761912 675951196 512787059 994993317 930043230 973304787 885348162 221037193 984318852 1032082614 819423402 50793680 209336765 941259369 728962241 992485821 795515834 910521998 291390006 327271146 147997434 1071231749 571500858 810122909 218373760 785497455 42400722 838985330 279575509 910732302 8787200 1014926541 103312168 750734464 995012352 222944881 904106844 404240073 764777017 183891940 674721381 209768107 260871794 288075816 831204160 485944768 964017252 267260842 692137421 506987910 417436011 723500502 1003478110 578279990 1052139053 12110145 129867877 813448739 18490184 279358736 571564437 626238292 1071675856 673364223 795268849 62570952 733593019 488512026 146703059 1072400064 2512762 375813640 952394708 836478502 68540962 157698867 97390811 791057359 724530565 209776092 43987182 453130838 255734816 557548557 273836588 740182409 204796907 455975855 301343743 897710517 747048423 1067014174 525921207 1013937612 320473355 557641982 705293245 465158212 1044545671 727577849 439606269 849651857 403940186 562930771 218914617 787422063 273705280 721286650 342868405 426197292 404181520 19588675 211511938 698740273 774798035 127134718 86234538 285374911 57968603 34872210 871935019 665255575 352301457 611893122 432147188 601872312 854664334 719169048 565245443 728249797 98577911 177399608 956729562 969960739 55436212 240963343 651162262 176613704 245726410 175516734 507314935 979497250 889086621 1023381389 544740166 287989780 311431741 917609691 132239823 842301676 592568795 85838361 282982788 304357532 22663940 614038131 411550737 427240997 632996953 376744814 1014288915 558802049 547671698 615172908 851402470 774223084 284432773 626523548 9208304 847271668 39871858 954285048 725711458 1009660691 143870273 643480239 747886241 495926038 618925524 483230732 471300636 1009560291 1008911444 336826974 382597700 452130053 781972620 712061407 1000734457 204318395 819243438 320160755 1000311296 450764065 186621309 396358324 1060575040 545908740 879334569 1033089163 434180665 820023729 278784931 364881043 606526231 99536838 108092030 644546311 208195499 934951804 832965522 54249552 105379870 139575638 215019431 433856346 314250861 992118748 121797923 911214819 88073605 555577610 286096928 911397537 270875639 365004249 699440422 648340990 14729727 742604310 426275562 960507102 301497278 582336680 710271341 611245528 693340873 135075549 360906695 126553441 787036837 1008924127 440184345 653974956 980066849 496454242 449023333 851891515 915070370 502485752 373378746 458265990 883178578 584289419 526276697 558707109 660301053 304001645 434599133 361295752 1008890525 140068015 905226298 328793628 933946464 107711632 337673860 812640515 255836708 895565626 497395099 38403390 28624342 254768926 333755986 633314753 151637277 967928632 388923518 599784124 269408744 20749793 532470240 1028048690 744295986 117612036 1018175281 639734294 903961523 794610481 83193064 281376466 200871312 989048372 670862048 10185614 87209240 527625603 290765412 262407975 610621075 236906041 759036039 384245754 483183929 927262973 389090150 665044353 672995393 516025903 725910075 201358552 331660445 43314082 822964000 45829881 1051762945 460361888 893472478 763106351 1012944407 95077544 718754630 598568521 11915096 1037329554 49492330 864669051 619983594 934981250 421222641 638715676 834151955 737895760 817513217 122626414 1017138764 401084518 919545632 965969714 1024510555 21988086 367334665 899917637 751724939 847501820 127546639 558600760 654350202 926531630 946660564 279538898 472370887 337535447 527393152 942151621 782100825 574641100 64524492 462841788 890151208 296722194 182630721 413387866 1028891274 804601044 19349575 1152356 793831497 984989921 516969571 780168760 703472074 221670240 586005267 3837995 211238404 601952964 970657578 129435063 823483846 969211479 107972712 40339765 969731459 1001108575 131818233 1061833522 1007419695 841622572 261514668 328770270 766525019 745408865 259116184 857406331 832430326 471007950 754256 170630818 1066257359 542336357 894189580 203089207 232946481 620535777 74595697 939987049 471622356 465169316 965581071 914276613 1008489848 630527237 275981209 314560537 159943753 957004091 837268540 281167661 1002632927 869893940 932351645 228909457 960284407 277394728 298874776 972524282 98316445 341441535 943791090 364038291 168002377 968213565 696629927 675725298 180877521 589096735 658041617 33966494 610602106 409885143 802128999 1064411900 363761360 1002364165 214498860 720253769 1040205886 90888151 428946512 510478230 464159117 714473634 17891697 894529693 184844871 109387555 541319961 320710486 130572993 581443739 626596532 1018790845 490576771 450881265 308607662 106247469 339567828 123097022 642989884 692003441 400031119 326291367 850251435 424980557 284078511 64973611 91366392 533817542 311630016 17539774 168375090 1202451 220607098 386819455 914432609 741112632 339778608 564516588 770339566 304838870 263032844 723676725 842047275 758296745 436907571 663021167 695155475 540653398 92693667 93300281 149015996 143614518 755877780 998191181 796123308 839067462 169119862 510615423 516680435 305523215 558425532 366824565 116148225 635028705 166338179 985280556 385000609 918569847 594913558 937596379 820913229 3793461 99129855 1010684242 399389212 1031523762 271750225 404106029 804907974 206145327 553964248 1064690514 38653799 472291004 508026312 1044737413 819128566 661868251 1004802001 900616865 673274451 747509320 839113395 528577665 443165042 285119758 446025296 24354140 668308078 755645528 450182419 523539942 1036062899 166704661 658137162 330377341 305770750 457598512 841236171 361804027 508783657 123150934 838721870 178952112 966732874 765172367 162859641 847234455 770203689 609221245 598767599 645743060 1068569544 837125230 951269072 411820211 356957418 394230099 794283253 1069744051 920078359 1060396793 143304457 725417688 997013422 495490640 129340109 198301058 252423596 18665818 611410735 759813802 455084355 7144516 759556705 387186788 906842381 566657282 413538230 182578828 620822529 281605106 1013231568 729251736 939500843 533028183 364740935 768464655 576362930 656643729 999886449 826126990 901744789 159614602 380423303 38770020 731253243 220527153 377593003 660304095 382520137 876061696 117115731 3448260 194721493 768401215 518880577 912667071 744448165 155140803 689738080 437700599 912731387 319177041 89419818 848441028 654249982 303499002 357537422 506932778 453622593 825669937 904250747 329941872 1034894945 493182100 561935346 29548434 375485275 388632719 656675407 815609099 678058868 281970824 485385239 504108744 252419486 55297833 843282581 103572211 911481994 386422710 910083794 659088805 218529053 122020449 1072099899 902012296 906165448 311677857 248753720 257616177 586994663 753767377 781978477 122164022 721389575 326870062 637377878 605395639 125932455 551652644 848709383 827501323 204416161 332729154 319309120 732567522 344204590 63816513 245619745 426577845 604976481 660475822 749795629 1023928392 63184490 731710747 848726781 935335461 1011919920 928548692 444691991 559619895 802752471 444247030 740751088 524528241 300261068 795235401 486552980 917816701 1040073344 274248550 762988706 96720912 942980875 321641888 915671069 857073915 550122162 365617753 123029269 351798443 890200115 620603826 51169169 767881039 383535936 1018224638 675498616 12258308 499738754 252456130 1063669363 140721303 75930766 625402812 733665025 309694372 451411591 18541767 771304481 163344901 966943107 219653580 333012304 143831627 669153012 731201031 1024459238 961843711 522172661 236396229 712491870 755711723 1045554133 826466843 200522885 8148312 974997555 721898500 481618342 968711500 732987794 766471309 416383379 211706642 678265515 770542945 489122424 56389002 504488986 122387358 98121310 756936053 97213058 781819994 467345089 1055996836 174536190 987955883 996958211 608505980 647461909 231651127 386943947 1031838019 471106738 91751812 295361572 83690455 43443918 815940887 955571993 44572443 1469575 906548531 265059760 519682014 105740825 913360316 447717630 755086631 109191329 333650945 176074770 377241016 542250209 53762542 91872995 181983804 911981071 868549826 111762999 258663545 772540437 663247237 699147920 557485900 794885730 761344040 423628661 667541244 776974460 329715211 761876304 936821783 362170043 804817215 739581035 296907045 1006616326 825309155 629515452 1064130948 577056084 973100854 1016066152 239660129 911551462 104783252 909869805 138437727 871391086 418472586 653266931 76671801 817855275 550096446 865733292 722009595 265334925 484430381 795371468 834995215 969902492 726802157 1042591478 540434462 314672929 462312721 816352881 504125593 51012772 478840018 148388096 570314788 237099025 973385347 495067912 803399717 626553424 15218042 472361206 735826130 279602630 430709882 730269642 707499732 364668545 684978128 379161731 908944710 696441780 468583451 958027001 185574666 215459277 925663585 436803238 840024803 361110295 333523141 227245200 256008621 343348079 470904629 862762180 829500908 963462842 584370584 1066182066 394537758 321032313 864965432 947211101 897131781 404831401 892745722 565193474 588825814 65498719 473780778 219953497 804933756 278065266 662802803 634150800 692170106 424481101 929245006 399401575 843416716 295543688 776233724 123770569 169957803 634440432 686399468 789622570 345202528 511833686 786676071 906095008 354940429 602547489 833333912 726721352 968528900 976757366 840641693 1047831580 298141166 159915323 1055209707 685635560 984134129 251413048 51606477 919916198 871298754 210100098 43189656 996859395 321475512 930608963 339315078 215614194 700563931 803405122 102460883 861456169 446429795 404812435 875205339 626229187 973687754 343294955 551687000 165448909 784058994 120649803 953834773 841117693 312153815 125278202 808281318 998563479 134871821 57773602 772851234 1039411496 233017799 569220905 935626517 473036525 78518746 138832678 1031231320 368566042 821986984 122990493 702698567 965873959 146528586 376995732 59590208 850748366 489257802 722791604 490983625 822776659 368522086 384996580 962198425 34940071 48281690 944517216 201727117 95481856 1016372209 106979536 647696466 185267902 993789624 338771994 1034579216 146892111 131483621 972584455 852180144 880018742 750971711 595027716 102961551 964796205 349619851 256517028 634141917 827368388 475827138 328829184 696206013 366827042 54768613 214089032 932273932 319726807 29702794 918689311 683633365 971422779 270429471 783201424 94259136 842083401 359442245 713967522 125569583 208667732 626185528 782419351 1069229090 144656271 843610957 331320463 600078991 603283738 642260548 256026322 361531197 598218529 730241204 166557759 483888801 800661496 998091873 608051359 515253265 261408188 146754999 405109947 916099386 946396454 207176842 512415832 945468509 261813166 752846746 595183692 176722797 630280530 372087685 790325380 457798395 264732595 628344276 542454489 463050562 908961780 364345455 909371425 236051087 1071520035 373405497 79723582 233539002 597084662 152245346 543421331 1000683044 995780558 156828176 658870105 784489074 413028437 180474764 857761831 808727786 1048558594 712696448 246851683 429175051 524040298 560080419 532809688 756938249 752862405 1014864845 627216811 386947319 415945904 858944588 900623730 752549922 746598873 147183130 26922424 168413368 761095560 680445232 225192929 143908801 949193454 809429281 223244061 309887678 491344899 831553630 586899178 247156327 676765876 883357780 181293071 791457096 22635088 84421545 276258029 91517367 500732895 92625042 289019151 33567885 1015485559 124274118 979659687 329412120 137258101 623210380 681171514 1047259422 1052882019 936321831 847318005 809091787 836438702 662328752 40884506 627238529 320766920 892855547 810111903 846392704 254790327 293596971 828394292 39124596 803875835 366666415 582118832 12823738 169361483 125727885 771304245 996362374 616657780 867084311 839847680 323307060 79827809 651826388 804058781 683048473 671239263 54934647 638611181 675678165 795019390 753264659 556592702 184745847 523616415 849595708 155078456 976342559 543111937 117589716 313034149 167931221 644277645 648949644 735730350 16285172 442951300 677598168 381716698 981785900 71908471 628553488 189313350 302273613 656137418 263761156 922855571 875389004 290036608 322295460 560528272 352956197 469551562 318035063 125494733 653073888 299021238 406709377 734804056 108816919 683670546 86566541 682457459 133987174 342492891 1037586015 290257375 797362138 1023303099 362042887 120305068 1013176588 875885057 361388882 392806059 622061992 763513093 391665731 570353275 302526863 309654570 861351729 605874888 566840761 240086293 424401897 512290230 199116514 336924513 1007390216 397274853 797722375 1003982876 424073851 1010691880 964908852 460534644 952600053 71497615 677595780 647139117 335846144 300028457 466634076 808003851 197447022 490224744 1002055813 949828282 77202490 783878474 748062541 991511263 560195066 355182140 532663855 920849157 228905301 327088422 447686629 1014181300 566479084 728803162 250368243 154994714 549046151 450459987 1005233681 442306261 28891401 210251044 223837090 718103899 873479425 40952846 522477119 964667474 385305618 474988217 286988153 714624624 869345348 324455728 113524523 829582959 185315150 247905650 1027683176 705935872 894515375 742162294 978104933 237594670 253527381 488895858 433443965 856578277 976481950 669974164 52102549 325521479 324533928 881768874 393885351 442488275 696098567 593382476 223740549 1059400643 1024772220 246429931 759946027 572589351 650877824 955478385 190478185 974411451 759894038 524358202 956677913 183933369 475013641 81097446 590854544 923735651 1044080013 366591302 897456865 657414790 11451338 210395087 657524414 866977699 527884791 684053377 854201503 826086915 446432734 959440945 434426659 1014461192 283949866 18848031 81269516 817284736 180534406 1068900111 827252488 481626153 359139305 449460135 601010564 472164805 315474830 186154108 96012316 978926342 900685671 401551702 367303634 290036429 976642264 867979871 679149403 50234037 52688949 831835567 362901879 497368950 666491434 462152010 162683300 397741740 290103474 405315915 922616810 670647076 200712251 1054813853 756250759 955592101 968478073 222274097 516905951 787024462 743417549 4350436 143200222 515186582 317043212 604820474 183853001 552559006 439215524 307256756 703589537 10363206 993759853 677075176 1058045452 983461459 553265663 452133397 66232524 1037866294 50786630 982852050 241335103 751986860 646888576 622413051 521047944 287058718 217640416 514063343 715034098 862371396 586513867 181859925 1047968836 489840283 260122197 629262770 786195650 487371542 630686149 76630737 645469472 680854965 574871073 120732012 892478376 448493001 658322307 1044884412 637548355 846391842 237320195 296498914 209334907 516962249 400664126 389194108 501301970 205314977 1001975154 88572325 255299941 423855113 385431568 274897963 262600164 300198815 328937516 649338297 928253845 537339797 646733358 215332915 923952880 607601735 374881077 805671981 394856941 283465458 395137467 368946737 1042482419 468222655 347575284 988533858 916078538 654167988 14909010 954700117 608613550 675857423 859857261 548754731 631137927 404030969 21806124 820198784 975835992 642402134 830604729 625606280 198945062 914621698 510548311 732669983 952221397 673903260 634987427 343176701 59017732 456345841 336455732 100833957 761069200 517629712 794916115 953343979 571694520 119738834 412698225 182782429 471007306 355688432 325832120 810985483 714150445 223595273 108831484 100852339 91027592 353307834 913860942 1031096534 566858198 924128903 891076560 511089356 205050260 392415149 602208202 314254050 75791709 968233887 598446301 947111870 127562525 397470763 32976213 576884718 483163058 706773935 351235359 794777104 815808395 344301706 312934827 926069767 813452755 1044724544 900927641 399859703 979445523 340228700 538491578 988926267 107570225 617361142 1003027947 784828863 474507344 379960532 38311054 544281581 442113126 145209675 1065606195 346946056 413244461 968340179 1054688480 496090573 1036432654 620146739 297416685 796276951 48130698 1828376 291870738 588628878 673266031 942050449 414781309 160015887 989560755 682602900 738932735 772838565 643868331 1039524721 640050958 306594532 304080034 497207602 742719071 493835145 1020389997 915817595 981594481 619837909 860772186 492928644 808569088 111463355 689269802 195691027 624361879 372090083 492708210 793710141 799099070 1062934870 799185767 563086710 1052717599 376073687 1063032293 76499506 924161144 604758139 65391402 793598750 945747583 348447796 295047434 699268510 861956518 555231386 76646413 572249880 772956847 1056451945 717597556 843770541 201758325 28590686 134828401 70177777 862173197 188028608 112784306 168739478 393732127 552172533 993948672 457641104 227681043 7151953 404445480 543233783 598496232 1049059943 475362837 874757319 828315125 96643071 683751774 442161241 571497353 340816390 1067337817 579663870 459411233 32477859 351572196 394402626 414733278 806468994 748130223 362172059 908383097 737860990 965844738 95886334 1030064744 531777376 616791967 810876607 509774090 145861652 563182848 505973941 96460168 722229787 460311061 934860658 857417045 948395793 429652041 426354326 70217946 188505023 210007255 834688642 1008739122 864929103 471144325 830519222 816760386 642366136 662344469 897048763 303765689 693505500 25683370 326585992 35560911 694374992 106806339 114080343 737693681 343930212 12640957 619478134 960252347 384296355 685410286 365864175 434210909 706988645 860002590 454947826 394151973 576917455 392484984 319990500 657170799 708854613 892652490 212444672 55138495 979827368 135526306 279226990 259945566 194654633 753391202 171602094 548884083 326705605 804606293 682965958 535432790 505169480 551693756 955938097 38939562 561600757 816731279 501549467 350968013 837817032 464445810 969231358 741460135 453370489 532622740 788709860 182154520 786030198 353933427 956788621 650552485 135008102 846064560 801684274 118439459 748758475 1028511252 777730940 396925169 846850904 57256469 977415435 48336452 154763999 756016866 592793710 236326934 570270884 660037250 312368616 953238386 883122105 449502472 699328049 899509933 585658394 626637048 528291092 1048754731 278779934 433965756 990037435 927757417 43988667 895897614 824841445 991382217 514566701 107793311 702095044 277414196 910802456 807542810 730999375 950955175 822123953 518436737 8365322 628458632 1073628564 995185885 837285313 832301292 644694379 698594749 498184141 553341180 124710317 3632285 58686118 924817934 235980754 105087887 742882277 830812093 111734215 1058622036 891920311 583735422 993366926 140106591 190144731 915745897 281476923 785668955 947254474 1003105811 965805491 113642855 337681280 636248302 355628040 547374601 1034483053 840897532 242127246 523738969 167049975 72531924 131275132 743817875 566900931 799134478 385475533 865650522 557294563 971026298 767254699 1069418902 593228167 834407021 412085498 333888437 355986762 546198867 1073457102 750209564 606508793 435773323 430776834 1026042537 415600377 113590554 603417556 786743368 139962858 289569236 771873750 843753539 936174224 288550520 166251972 119837464 135940727 520007027 367213603 749201168 409135279 747322187 239216125 1049444683 466515591 308861854 251822447 113170016 939779363 553827505 54096019 534196370 675619632 400016962 329141155 970124472 423074314 77754869 1052849211 892451112 19054485 925474274 738547346 842063419 905310504 779034840 377316284 1025212152 791954371 210879306 124174342 5465652 488565780 243055918 4815798 969449127 900253304 747575518 955468302 718498365 102184916 958196872 987748818 125776680 577879050 253245427 12672126 156510644 118022433 119259196 850963757 845659251 681642213 814973144 975632110 841904970 826775238 858696065 808212329 60867613 516626358 441805899 1006916990 723362103 535747135 174941700 641056423 46126963 643639560 926713080 859957983 49590606 516193399 797364294 933076478 637704388 372347966 263960234 869455763 122143584 308584141 132223659 715349347 753609585 691211819 1037808334 965352569 990903233 960601758 194658712 138827890 221940407 855303115 875474364 718030131 1044753967 457092629 449378102 308535802 877685991 369380063 448617920 558379497 982875488 551051706 641638651 536882216 612688516 1037298317 185244912 233051762 513307101 913621281 57865951 336643981 209283304 114741861 20302657 956444822 668973590 207591416 121266594 5348330 554791412 337795663 499800632 1019621201 974922611 79929985 174288317 778013060 204750324 547272200 319744813 350144607 911253673 564316789 989487156 830399631 244529772 315339894 1005483333 499943963 253410829 854698705 732439730 337720657 787473408 418737259 1035971738 1067729829 892417336 82835612 691015837 840770968 1012583627 798028989 254250447 628288064 974452773 942519082 383792551 963538606 323847695 815981476 745248733 371145768 458386051 208784810 1060931324 649112549 100464368 1058414607 876059171 39622472 309135875 883148670 439100170 861650096 341433536 944951856 765273179 99291900 595355853 431550459 470269244 747821268 819074688 431959384 235803458 251624015 682494219 541437376 664987777 416523754 28029246 818327783 915392391 1003832644 517358193 486858338 586165571 620924425 775319005 717166225 192736360 290055132 15830190 671502040 642491365 195079469 1054582331 331717645 974963834 570501052 842396270 493947766 318475833 342162282 1065225008 141812039 763144047 147093355 776536307 27133253 664709155 708925955 987453794 754945824 184669685 616248198 983959478 470784045 663443039 103986995 360943149 563409469 859961471 554704016 376378857 10247111 715493168 261244086 497161506 377194520 193976504 124495161 563437748 512073290 324207736 454815527 571979 1003641108 987415852 47274371 105539154 646978256 573527475 217798046 1036056994 390932297 641884396 600934958 243730859 57433501 229984089 800440072 674616263 643145587 877147814 872885689 434463262 220703720 526222626 1057990464 441458422 707624563 780557745 171402230 936615836 683803725 449181763 118834674 790143515 731873621 657687245 218763538 182548042 312298869 230197968 43558577 175433865 784475569 251790239 414614274 610837099 773599996 12993268 1017567952 247906468 285611805 1060743206 502501994 561690065 755289806 604975106 246726145 855032190 17020912 867515873 1029037424 820281651 82632100 693228232 142559916 389306975 73492445 265299347 239043778 149881491 443444994 614151172 929090269 1033545672 725878118 614404639 43722053 275886719 1054064702 257456454 999412189 643062758 410349971 824932148 996344553 506218908 960922775 260243410 493939714 766218746 861838795 333710548 213141467 761940301 221443291 135842546 350862812 921857672 580126579 837677283 622871699 938556227 210378932 1007710442 490466913 293708213 679215918 186993786 681862407 299393409 896517946 905720363 937831984 836281988 269936920 507041303 35305708 484117389 417455982 505180070 289852483 897425709 1021619819 543881525 801905254 248597672 993675242 1009441939 764551253 477847211 455060527 873618396 683218998 360295952 105944833 520863327 718647751 529609058 108415025 872482976 510429168 403417323 740719880 555846 959921047 1047502001 20194992 114690530 364177022 678322146 139484832 877573757 25347757 155223979 376778278 131095154 623509775 99510548 98019489 1492375 828251218 193457491 481397514 106528264 48776414 865381677 845851464 710848585 254342573 89109422 732115736 392039041 990086099 985304156 978593817 307331005 327673854 308253103 387042644 890015886 516889809 516217684 759650962 759054902 410654089 398152582 442330527 466184371 402780746 662692169 520119531 569805125 695220037 618971585 869330820 1053469406 258063617 422277557 622391038 9405268 377509437 375630358 491890914 488118705 280819550 369243749 694216112 15636778 329917269 407221117 862963268 412337465 456667008 760339691 639369005 297194387 383247924 205663169 1028026728 583042341 701914512 671335364 629663541 164330092 777040227 167552099 898561867 937648844 283159955 354593903 460480457 670413567 329495304 397281774 281387650 558814393 223917402 725404146 28461717 153318654 403328837 580041168 842829118 1065923733 674311518 766296841 942775120 297504342 169255541 676075408 142309977 664399444 98589083 263260163 824595124 566359722 329999863 653252699 387490634 367906132 810348076 264202816 203405517 511271089 1027405876 537998881 517288376 257671417 909837383 855458451 933614353 90654068 474252021 157573127 459889818 1059161903 756970567 816555147 989359833 29818 146749737 955087313 308439501 38283965 321332504 214355866 686996667 203980696 968724844 801140792 81486812 1002527435 617805256 597815767 247218960 880377940 918643292 492333377 687394633 398299072 904963912 116953625 259173557 58506101 355862870 1019827862 1013017612 49062041 406038370 716188938 222661523 959961688 143990665 374891564 496082258 710440729 58141849 599632884 367234723 223235410 106655958 435673569 919369733 172038047 871465441 811023349 1025736504 939630347 829412788 440822838 123787961 583964804 281714143 14516785 499219425 420343609 1072069311 430796096 679725079 970717076 919517421 309116737 581994900 734975547 661466446 547647879 502468926 178003179 334851097 557978737 690078159 566608348 368532443 518152230 582932430 756473904 831449653 210730895 871020551 670274882 241504623 339307638 540511858 57689733 858636551 1015485470 576192638 278303187 350961355 27725328 1044336623 812322415 231612469 414227178 660878984 6411807 421818052 783317554 706434938 740276927 37240274 746724714 851747965 543038062 650128188 957648403 909447638 911387443 891747807 194714003 624354463 81915787 719099183 555995718 781551133 498867105 469243912 154310854 890679936 285080173 330707392 70972919 221545299 359017611 325362369 461869818 410516890 316397156 322189408 940854045 284171259 906997773 675240753 593112246 635385971 643971698 623136950 312626618 1053303986 942961521 348124437 43466422 415801569 324248220 109920603 694138873 296312419 793217101 1049606911 790780167 868528097 486653122 703270549 1021547664 1061046739 883153128 977798996 322810290 294506291 585598256 371830491 322579834 73671294 556478206 307898622 767414661 412734018 300471779 159674181 683090080 669889143 371719935 859994806 21834337 996242485 962844262 619487003 644123647 216688836 409368228 252179781 541226436 1041786339 475052331 346020998 3991612 736531494 807081971 713124923 762068437 970994063 59979893 767602603 622189028 850982993 191166596 573210857 547992281 748791072 1044625973 884295442 892993327 90979480 515822389 917975296 321795675 717980862 268810360 809649492 613568262 912388467 43485415 777534483 996168832 340913453 350071635 372767609 842343558 340032921 17201351 746414747 538817213 763755892 40011699 608605694 478346016 957442987 695094729 56651500 518470096 952078661 429240974 281366126 1038774463 1056914608 667959057 45449200 889221068 704129595 286144211 528693792 28089789 254179179 1025616096 632298275 386498676 349350737 391285117 925116640 298058452 414912245 291831500 982929699 741477274 532936893 339098667 404979696 416845664 817317691 353095513 641467214 985724621 79328344 41308895 553522051 618661638 1033499810 751888091 779493439 441054845 382550556 393169365 869976813 129046190 1046384178 427303456 212227511 235004251 315587480 679439930 771293490 519886503 473778999 452472386 154591478 306790413 159982630 738001964 752123205 144651574 933543219 177031102 485210148 247383150 244493621 104009182 380781543 936819247 608727700 572380084 456043308 864967372 501553429 9606530 732697747 595027822 472372475 89388638 332743308 35714976 47038379 565012222 633648667 421079395 931971597 561439331 160387562 799949114 512445477 788186321 509257146 965689615 158011333 315395608 35664601 432333432 811737180 118923446 1021708165 719472984 692691212 744046272 101507262 109469048 812658199 307019502 962102838 370137792 333784181 200991269 1035419003 348842829 996893728 746830150 114039917 615714057 369223037 165948397 284337783 789637682 884837489 531003347 612271903 17818809 316278920 204368107 597737351 789654400 1010557144 757539847 54734599 177760705 226992209 114570084 55814821 782873738 741433946 429023839 1061607569 379195161 216268554 412264481 288956294 143097942 342104254 253254113 975219387 676468143 396052198 252538710 33895776 80020150 748775509 490576098 603868584 991160230 514317647 901534379 47799704 245916208 111944303 956752839 698973306 8044422 704079682 885958572 901959464 9345576 65808205 739956212 373297459 107074031 256095514 290080626 494191038 349878917 1035836588 352708286 459198666 998568948 329873558 1050789615 513970333 937157029 894861361 22334492 809919944 694157083 97530473 708483462 527049048 438540178 211173392 736013176 574534263 803561556 503812283 475828032 614198398 474553312 918052479 606525195 21590970 819316103 234683456 205878542 270708337 39142133 1060568821 1050408288 233377994 134904048 139940893 484936032 28936456 287236148 523775693 21485058 850670013 100942382 480187991 422632310 294283931 739922873 90976513 567258579 507115694 76130230 194670067 1700110 497569264 505990446 197806183 1005982121 951671769 575901978 818808132 804420502 754338567 253077431 89522529 314165033 225404759 232658740 127741986 1062066324 984658924 643265030 973893528 59381485 329719324 1063772002 737980697 468675910 885683250 760041047 74814166 797735069 170673153 21122122 222955595 45044636 351963886 1035655152 1028924429 962683054 831645702 489100107 699471811 172921322 461862596 1065073347 521620834 872946382 269836389 246985622 892185795 25573647 998806830 830960354 913895181 673232770 172834866 992959749 845311362 292024512 550180616 794241897 998427003 382043248 293275395 812534514 229765082 767337943 758808308 298744342 764193452 85352489 711891186 910369912 692784614 194180249 367367057 389098955 406274809 108467992 844723344 536256559 1028316451 33375083 812563139 147047760 793574710 187517598 138537332 1072819154 494604826 157420956 342652807 331342980 968651086 37950268 598923297 395575037 576549480 254215394 604412716 1050844659 196070354 913186916 126672976 565323385 303938896 786400311 651091536 143345812 338928538 925546455 964610412 601658681 603291649 669908930 139531218 178881453 946895369 536996283 658943845 187276461 442300330 765239331 140098912 905580302 885894634 172440927 1070110574 386524812 350443471 102945940 35921871 618496763 830505215 1039067474 744094359 748976718 101576467 670605983 973689498 43708904 68865662 93720577 229606558 346174859 224658299 607195968 202040110 199757375 283252810 582848675 493594589 502776100 729397172 420896964 777468819 586964583 1021660409 795080822 1067728174 715907388 942503566 493407946 293393061 66058741 781749556 583063115 363380404 754299427 613086437 715794371 155913058 998711816 311590349 307154353 574877109 941835212 625671074 85374502 979454050 957997159 336260498 458734902 870313901 994557006 121779868 995079968 2982022 388517489 1009927137 540501714 394934586 824800229 8064242 421628485 68093199 204782900 746969454 638085420 185654665 322888279 584164097 563874303 424813897 527033176 102196648 90502866 3725250 430192120 1044266126 31889975 311855317 849415114 876677516 469945475 362537028 652383563 576574383 249551939 1027273088 112323284 135544210 1008187165 967431234 150070111 310527473 360860301 268788040 131980572 620460304 759535329 864945378 1030184653 74285641 176618020 794632539 380182638 694803862 297822729 1019800285 886329219 333486839 503811510 702325618 610219484 389869205 150623847 346018856 561937707 314776241 282127143 284137055 542944645 744437617 390020471 805310552 1024842204 923262887 728185250 376118995 53528621 132935871 711062094 101323649 353542114 672051753 134539229 138771044 89892573 608126266 700112957 201779975 46032663 1048742511 1039734389 644407656 987416007 906104791 825467694 944172007 6040152 579624252 84747499 479239087 765925779 16097165 470895080 603458654 618560753 437222089 1000722600 631783052 855104680 278276790 53682240 358722275 249658612 423541476 928761186 1073359878 340553335 520130314 545986567 263195458 69195875 939408100 792102390 542116301 176185320 636226411 216007564 889119466 262893369 815462351 678112464 977331659 139868043 791391389 572610129 21322412 516104669 198645499 988165877 552498908 755823974 212107430 698313968 697007233 336200936 265276724 999562752 371304890 37243499 255614881 464395208 620423372 508365457 469442842 384671193 143489942 989273365 200351690 879501967 177710803 203628704 822374294 718218007 647347208 780213983 161664001 978315287 455197091 203240417 507863285 125245758 355759700 554866696 120653032 287302222 496947705 680287969 875907418 581233993 361788730 1019363798 916439046 246005919 982592488 918647083 914916825 773235748 878466478 613922931 878157621 1059772996 387602272 1061503716 334740867 186153187 210204228 565514075 424355537 660123352 494571507 541816214 387724872 256216292 836780513 644200964 954682972 932264827 177374602 69505870 342062106 6226387 397739237 120299912 173191144 936346622 464112785 327277068 216072248 624392644 491588995 1027323084 619239011 340734027 78296288 64868902 301065835 379699671 922384586 427510290 575323509 246404034 624194950 746298862 1030541726 669476512 533104743 280046646 180905550 826843794 319692323 254545005 1021920457 166589780 148386434 776832925 691122901 574708737 372610130 231077596 419159074 613632777 571764049 774286717 423770425 768156271 387900486 635500852 886716104 174767781 975093097 435857555 344382661 729030487 998081307 955606228 158249277 772957857 234224211 1046168789 588245349 700039215 831426400 258261208 180386510 411066014 435755272 642521545 344680382 103098146 922674614 577214148 453098546 515827171 1008381415 647594911 733332265 72497421 437761189 745957596 873389501 377332220 537693411 154054804 1676591 943544830 1053031616 153404152 428224916 1063554391 213373422 186104848 656510580 699777794 793314023 56143901 363557545 400633825 970630292 715437441 561766747 487489818 843444136 391642653 707697217 395323214 208346286 52581986 302867092 284864732 538839493 807034965 178291703 997263971 638356371 846164569 881628666 763392870 278012110 724946705 410540312 941257889 386982075 1063562252 103866816 777258545 499135272 682896801 357659978 470952008 364180275 627780184 607400044 646209730 86012813 29632609 968741698 689635010 821789418 851996496 809238120 865336973 4628310 218629689 150038952 385283500 881294729 972405303 142264503 815984922 659687557 248870912 979197478 639657111 1030119847 488866042 1014417045 248906409 992025692 161281435 381100218 298789445 9844482 989312458 889088537 611160593 1028153657 735227749 828672869 466412895 110720659 599346355 327129782 499304838 232345815 549082221 420970593 495390774 752569973 135234839 523763957 944707536 929833838 951282027 18853474 379143191 986485772 836815340 911791171 985588312 767982251 421863617 717740670 764853192 598446725 781473402 471139344 374883270 472332121 366309387 476110166 680607382 516430850 942769821 455429753 584683193 862103605 907814728 264479265 57661697 432441126 172674417 814343942 937066505 43211689 217320090 1043221691 413707894 486648319 249457865 8697965 109290435 544887092 381889583 297971504 556964636 652277984 665488295 902487638 834572165 954404194 995381603 428509113 458922674 349817546 938482564 531239051 280560647 1068594105 29789891 1055267060 563975088 1056117588 22540120 632230133 553962547 398728172 921470124 1014689188 745917444 1050468574 202593902 209867116 816656101 865040310 562143327 154719760 250029529 701212246 966042481 355095770 594242681 10441030 785545457 787400339 825773657 65639976 998987634 197498853 215708049 900931993 990114846 327596544 462036481 915772789 135814651 52220268 342090148 151452336 811203188 828511829 661237642 147841705 343540593 746470111 309094855 253721171 919021560 652640244 512915544 168320733 79025390 891369492 560249987 756293481 309632346 775422251 671230870 535986865 96253978 453194328 558315972 1012530825 429769081 787390444 165536003 784353376 208376252 886170485 732642073 956136201 71573856 14781953 649970401 265962901 686973593 1031832038 388152217 1006220382 6231065 381768237 211108108 597889622 1067681739 642457949 1057057622 534937182 219316334 820002518 566192416 412588018 354601516 15098684 432876878 949057414 218831276 521406885 82857485 1068611238 642834048 196897132 143337435 158345545 62438923 603306213 310922457 292666657 435737408 245944224 484819326 815511936 60697143 108120218 707430715 925909514 174852555 661135937 549865539 932332657 195932915 218233551 361765968 747206100 791620235 749386680 398277547 223152498 741506928 723484014 666223556 900492199 319200985 406120366 1040146797 500373085 874724066 700311931 977633700 3157179 902019754 179197376 871035687 331959118 939131107 430180631 312506989 201831635 1063317117 960278508 745275725 560871093 831941411 88737778 181047700 589934494 545802327 221621438 561429943 978019346 534099519 430338329 750049284 218785351 1045360483 56128288 917112393 292342223 148643126 944988500 446818306 422357806 85140075 618022181 206306816 985193733 144726891 807310619 1018297840 390056154 248753741 281466035 83006239 616636536 393714590 647641042 527546026 380234136 418517863 1070991360 816294783 373717068 895461391 187725661 128159369 916531300 37528938 905405746 272596414 242476197 16502680 121349988 1029042978 651814594 668979113 180156928 670588400 616791143 985079823 1027856345 366522395 740901145 711362064 837988466 120416997 357946027 968512704 86146612 118103870 110291495 30920699 201610637 540901105 817318653 676969868 477415284 1040606642 315296194 938699335 607878053 1014248018 101037989 184459126 996852467 362088074 525945556 710806432 221990217 896680434 495749361 760406826 333342866 868296631 659816210 1043702178 19444822 58476981 194740156 919612471 37346962 706474353 181776546 831908079 161851669 199075862 966682326 748994616 768860543 425116618 854923908 535146272 854570257 1029447622 446164148 87867715 128900832 641765672 903760637 1053111429 438508059 616461116 710789791 451762900 884535446 841314600 173948835 1016188899 437472542 365669919 815794042 420176505 51807087 668049163 679229090 215623640 317014811 557225149 491231890 785241692 891562180 686062666 64984601 178045109 913627881 888454392 1052546521 571590250 37440882 641933882 520100629 250674655 971324735 654250004 160331181 985345964 896157468 550954026 161414900 85632354 506776058 632003752 1037553408 61057328 218065039 1000696862 928302575 154421110 488303936 67302342 862835034 770070095 925862534 948066505 427627985 686869513 80280960 389599325 609592770 533884597 163838856 1021566343 467645430 229100968 685889721 244282821 358364895 228926424 561161915 412344150 283250277 1012693829 940640901 678265194 792886449 988607184 861169108 7818022 580250539 785676712 161819193 517105775 940370016 145051104 995971667 1036919405 232704376 859624950 434970058 624551444 493380943 781908072 159710163 482642278 853672875 965302548 833088187 536965526 295415060 809969127 295897079 761245481 197850150 630838841 77967211 268942565 160062469 203326817 826470814 926789359 975995409 1003684980 63819738 686330027 8924486 865606580 218902395 199499663 172723771 990629198 1002777836 60007390 59009317 355237677 343669993 679289745 974958885 150217187 794454512 663219265 8053595 197491370 966805045 1062534116 173598435 661480966 312101950 6050901 651361029 1067619386 1050670168 891687832 335739932 493689953 740914476 726109905 695964150 576555961 184772643 186292003 281568333 524345437 826633528 960184703 86711561 943524974 335486728 516239888 113048849 787191174 468199779 927541076 128143826 205812081 867844495 198721572 864705316 865883374 512970622 21194963 1016915082 744912804 738255550 882650478 960962878 790984756 1039410401 266559882 413310260 807629227 580102231 245867152 900310269 438109682 670156696 797456614 356552663 1047052586 292759127 1061799316 689607875 290796942 151498384 938744319 549316760 442686130 140196267 555931066 914121726 666428767 558062751 311597018 321811374 412846562 306871021 177585084 89642942 370448231 459128757 145256919 392306181 25900493 788531007 7360654 177478688 632464343 221731758 224471709 510836865 462349580 117735989 757851009 714380958 54811843 592433722 933670896 193221548 84937272 893011744 187633659 226523230 323543910 1033613990 358665595 939274470 606661651 801201310 1048499280 334827838 740418452 1011313502 427833041 602554768 888471778 7608395 204501728 855979485 110992792 727180581 305631027 96808457 66228028 1063333933 980600480 929131239 150002305 62652417 255030408 681401835 956698093 832560374 865845580 281548871 842916301 150049930 346269027 408168441 609231739 660663797 1063348178 189719794 351273080 726362043 759678769 213669816 550256110 127079515 128124586 39430153 752041722 760617513 108790310 362160266 461846253 1051271375 286054014 14259241 532865868 1068443439 692049614 381336862 728917821 19717524 1043842804 169176206 1038509139 186648379 1058267011 232658406 725555212 803115388 320860569 272474030 778612291 885878067 707315529 502894933 533752289 34177325 321975512 412075287 225830481 109143764 850442217 435587001 703391709 384007323 770119158 425033953 273440201 945389606 147976515 841834648 766273809 1016106079 699026321 620585498 14778999 1070445074 396845241 1067409481 332266059 734727258 761049165 1019335835 10244013 909859485 870865815 1050160107 817893033 488946962 1012157661 656112000 647152942 346044121 601712289 46033352 47434086 832043117 266528656 831056648 853812926 239869195 1033851807 473558921 494450094 1052570244 510299625 759646156 22101636 1066234009 717935611 324638594 287590110 559315451 570186530 86059567 717143588 982443879 551326193 390033624 39193484 1049853398 80523515 605760752 144947553 1874561 1029545976 534115832 1042937605 965040217 630112059 244274280 561699875 217927357 974242914 807537929 961259259 557874935 976778158 92769199 695179469 154749104 269387439 121909977 821265040 132832035 90235354 820206976 1007950601 354616495 244555057 300664241 226309591 503172547 543287915 359151402 964550240 264901572 134830017 392687197 1015412741 416424155 690971736 555206415 630016582 682958273 733929143 366718304 523520309 924352556 748377705 1026331410 748230651 510858951 62006388 445165147 84892912 17701080 594178460 558106565 823935241 601739252 244156424 696902901 917426295 551282157 930616412 703773586 380423795 592056937 120726186 229807888 66529035 540265022 934912522 519183073 909670056 366524227 836510877 565952361 924663854 68567252 22375151 341696737 944590014 235485020 233023660 1038182094 271094420 284999249 746866820 254641005 719665650 142205826 1040959922 288648601 969443214 348800377 684853503 908354732 323798808 205044617 500783056 95765374 199905965 600145847 91353405 51180257 276404960 178373814 677961015 777587575 739675949 15904094 623184817 100123117 485748508 931991042 712758303 300738764 70590035 320688948 129664635 22638532 464458515 737133167 371706742 364622998 77924765 83875375 366286363 612167682 729352144 916680627 927915129 371355527 337535593 590400486 506424542 1006221050 1064361554 222663097 549674013 948054121 959217943 730561959 1057438161 469176180 772111029 878568637 1010040751 458138169 939600979 891658331 29944899 383039731 162771711 285477814 417150515 986524393 1030827234 1063103610 472041403 1073484820 556735719 887583852 3622333 229308679 958128952 582710896 101741161 240499406 208687607 256463814 258600160 336433253 1062860638 731716354 817160664 92629129 123179195 197414640 1053273114 231086751 570497350 70043424 365037652 257132899 643286376 567439131 288305163 798315278 274530370 901209046 661371276 641797933 956767343 411401086 593364094 593729367 13856313 111280866 972959707 894148711 575954123 288083053 677521272 453479497 432677566 118006851 152467562 894552585 658928317 445237510 509876502 513682915 456237232 407604732 365086167 686159927 661487 129729158 725740142 367057644 686066831 742531911 63628004 554625631 162147606 799966390 961448760 154410231 252054539 982797283 401807096 226295527 785640048 618743554 762829292 149914332 1013741052 299885326 300266838 239151413 882923560 377896121 1030010079 265747061 602872466 595771392 663381613 1058181618 787290955 688058089 780815692 738190260 83791174 719755246 826662400 796951675 184882898 606201229 982472712 751555106 258592809 447721989 409551330 740034614 75369473 708823974 277894607 960819411 488488015 609106482 670696653 492350631 576682999 283878789 275692811 701210538 640786697 651637496 398199646 1019346370 1049946831 118472240 121328591 969923500 484344165 339233432 205447073 361005999 407610592 909652879 224661485 789906161 883238522 981908670 138871058 337727011 411381808 142822807 815841269 555112648 661299993 183903777 205569744 2026372 942131443 942228009 458909723 646699709 579655313 265974655 248841649 1038067417 522019291 302015766 895292949 366354292 57763651 541836249 790840608 328029796 739672446 299376485 375681550 469701651 42910932 229257217 505924223 249539982 257815737 136572582 330194360 295574095 72245343 409288185 547640301 271753944 313333011 359832395 697185961 856755715 1033537836 597668191 681258312 1007410053 1041484396 226934877 243489257 271478106 301564533 85917669 530927691 529414072 853567963 419570990 976355810 81649178 248312077 306411992 995370135 795175383 619374564 10098473 454902819 43758531 533955888 332248599 351164980 622652653 611721254 839880796 297543684 11741289 769834539 252865680 1061652920 576760836 596317683 661198635 355591562 795651143 729189126 298254861 192410783 642400914 302288208 998048063 902846165 55494054 167685351 922131221 1017607048 393603870 408925112 583121277 593822468 848617867 464504460 912126271 747177065 286540891 805173502 758220113 112675686 844352698 796270455 1052806105 191588939 878664911 948310454 212406877 798895997 691496832 748875765 985894809 359666182 437347461 692788214 356532487 97471498 562208290 452200461 457030992 506734999 222432227 867196970 299436235 503015637 692166799 987122315 400573238 293085021 526350289 265932885 883432181 334869233 496932691 432760817 725051473 659902673 649106479 991165024 273365958 453790198 292848375 370269282 582783736 605827571 445430317 1044849571 893268438 518781494 726954859 557554190 753671308 393290307 109259337 956862357 703922151 615504751 503398371 263724251 280891301 518015325 540417189 394128373 843023680 413824291 460522505 469361468 567875029 5702794 406373132 957346199 238547806 382197825 982479295 940858507 257410995 1026446527 170749960 820161245 54266781 1002908884 344643743 991613652 521531337 213059725 380754003 763715240 689761493 202427378 221260431 600103139 982219967 724210308 721039593 125086838 28947184 331261602 577065307 106619539 323562430 168761062 376475175 569759013 118085779 822789718 964271264 58975817 334186316 101020278 902666450 104661106 1044730202 253391772 265525763 260633063 21936834 276122427 208391833 836983427 815724836 20720767 644641316 334656438 75781167 448016509 688398710 225955133 228882693 848473744 798534520 427426959 27773146 357978933 352277281 367463888 646665460 479396784 28313824 29533483 52994420 406295563 606547009 94396776 121242423 697657992 787228067 621911378 712074710 191684853 20135381 406157316 834795271 184440993 82707519 1007575082 103600288 341150437 699035602 354422802 211954028 553449273 261724383 52731741 110986296 589410599 667633719 520748370 480637390 76883947 373518149 158619308 605824483 526575401 105865389 801081007 507442821 749990610 992353014 947463172 757260171 938739719 639738801 901374637 443276334 765730833 285202591 1006855728 687340349 420418613 885857984 869104527 401114524 253135804 431609772 361731306 468535988 626247844 906978467 601168831 854706123 341893621 1038099043 776413589 397966449 925742619 844269095 122889781 798440961 877730462 379624704 548718936 242984689 833255566 1012642235 1043005858 698080854 834857002 596083680 324835347 229458514 884970168 282379174 351548886 431847249 23103330 157659933 66694143 194546961 164017098 524540742 1042818322 304866618 57666689 843285763 330898152 984867268 530762032 241476415 414533673 120267172 47713377 857430308 359927668 638923965 85902475 734853175 856071103 952642050 858147773 447843916 236744020 1025290487 100979460 827453205 502903257 643372406 677444494 816360763 567336876 144519696 317186312 3273791 205751336 127521212 963660484 308460562 773494213 166938076 1030057181 160303771 932659567 55256186 711636024 58669830 32339663 538171435 464647560 123776527 122800320 947444566 495578066 568003853 194421376 871507755 431653048 1007348683 553894135 897106712 392542477 223734708 31255697 385142036 739989517 432251507 214074105 215938207 934883149 124583929 329943201 398447474 998678022 2963635 399396058 66065394 22856479 525821295 74826824 921254479 134538141 313695083 492179623 882403743 201787974 206177589 993761849 734719043 296966221 64383858 779906193 23017834 281257580 577185051 866345383 476316964 331590691 579580872 351159912 1053866759 671242667 106075352 312962603 62204103 315066197 565178288 607195946 1068347006 939218454 55829732 397728237 629605107 732274935 428042409 997959751 682262641 701890826 377016879 281386682 379269937 90786075 527040581 573235131 276781066 9753926 14324659 226794152 187249990 562920943 397632714 18638562 359184988 784558520 792143512 561302171 85463754 79444565 622268852 464673191 758109214 342908945 224383820 219337492 577939323 811374814 1036251709 5195904 651786922 166610605 192911227 822024364 50691798 614388614 41229232 806368453 637675688 362727081 791349869 614468387 285273218 245950220 371432539 677240768 256917220 904959802 216986301 631385661 82316366 441567877 953644081 231716021 985925783 633375467 37360685 135682682 818541166 770056013 496789761 729531288 211710367 1046565780 744736451 124565058 19850808 452029248 810247989 137894625 77570599 319624071 186580127 213850364 1028613050 425507101 835147141 720510706 566440546 656134864 965271852 283106752 165668287 910879013 965115793 57862867 261913632 1038482570 543714261 65836682 627622577 381284113 373942579 440208678 322668357 746301963 64306628 116626663 229369449 1061980046 880665607 35641664 995327204 273828586 686925602 638697035 194940255 878326220 973032588 750169575 148086407 145535740 195021900 802632395 195720535 66377052 601800979 889125083 672853327 993385115 788130732 156391034 840105156 406690278 962369590 411432575 284656836 555570294 930512797 536855910 615938817 854913154 329865490 46593345 876102652 64097085 557288307 77085155 441109208 442343212 941305123 308110102 644193949 708381164 292805824 360580309 180554993 437240547 755122625 388355558 241026521 490614329 231813006 353145423 812413329 702327189 410183039 608643045 101410532 722724318 951053684 970359956 307130390 868143587 400823687 186840671 615674322 636262762 302876141 555855155 42005925 791310780 900025269 165371142 975231805 684313895 81464782 1775506 25465152 551240629 535038893 740506580 410153725 344529733 120630236 1000772241 478427913 481052452 584123565 595851164 391971976 446649376 187130292 266033402 715899899 1055691981 604638904 304229360 858348338 470125474 794928863 1049294186 326849897 723241834 106559772 15141409 935386602 228209960 284268971 658589137 137369623 236039616 647893163 430679051 685540758 978666511 911132336 436368841 356950908 910344129 272834756 721949324 207037213 151915586 676614315 201553434 409981943 675311278 880276855 138298221 578409592 604561177 165469819 422644671 1016439333 388475995 964657835 97518429 438943270 627744252 63321622 1000213745 62359090 310291549 480928371 272273069 104232610 78653901 1032627075 393181220 124616066 276266026 679547032 156040844 952798922 388749627 338931296 288844655 463000659 356368441 1047459522 875652347 931776417 746137561 806872488 965207597 160120748 997795928 482120851 599693033 386907131 305995177 907187282 588038535 911292261 764553375 576722477 677575232 373866150 289510755 824133270 910157487 790529302 217340960 567579281 201334935 591855098 105415234 681581314 361100605 561919164 73514371 580269790 567253355 174940905 303645170 629707461 694989780 935229156 678933580 344575168 611101932 180368701 45854215 996526826 1007120390 1017321983 428844412 1039925835 62639867 789559122 264489560 296543111 478957226 590193640 258055140 86350120 1048001518 257950621 23646428 530512317 359916510 871672978 158097933 230818818 666680560 373583914 75815878 362248416 524071748 578875283 364177351 1070944467 1025438722 94220525 860389154 522546121 674229311 143740097 834486258 698923795 61937060 88660581 1053126461 346823230 241967715 582544549 655590247 427700363 800153525 311394496 513891381 77093663 5277340 130149691 696906865 728449649 405333391 973122253 432108038 25848521 501200531 414233863 141938174 1058983846 678179096 631826826 510563661 980088944 34217114 290019351 486741943 614470711 158487122 1043941768 763822179 533764731 383595021 552925737 910271207 747924629 245155557 20859831 353387818 270668776 655408955 584090389 487887864 546790746 590088571 1065088239 847605798 958220962 837674429 539771899 413785255 572053696 872691607 277059884 647151079 924649072 319030705 525291406 188312558 748317618 739589138 89154463 509039806 569315565 1024056234 1038047058 1041926585 923621279 306479890 892518969 717223042 121308989 11163322 139650546 257760588 313692866 326900386 594770108 1033071744 221910607 140079179 52923167 1060139607 27166699 40530422 249653275 973867209 153548165 713755935 548114670 330608022 741779171 463433132 1011900403 620502015 474638217 758450547 32556385 217594271 833359482 846694531 660752044 232698619 287992348 73281133 649912004 844176615 436949066 102278911 738947361 447329167 29905437 965666980 185546055 528138414 488058167 792214518 578869228 913860378 11685839 287027512 471169786 603483008 687549590 705241148 483112364 693411837 809038187 5472892 216389376 788197052 551588640 676182979 400973032 388714399 494069681 55571348 9936172 840031139 178138661 25186567 15872461 663928569 784752572 657635130 205063307 689831916 514662289 881798071 113491577 561671024 797065206 922965268 412423592 702166057 883328632 1033798185 990699685 362688306 285678779 873388510 130321999 168403768 955612769 239633609 458769540 669445878 154718872 723412746 8354483 617788447 1070389645 1047048286 138995122 950173632 430788631 758643587 497236938 747073780 91590927 585865435 546895279 331288957 558609358 790174433 1005321507 250078826 942511725 267812408 619915946 404873910 395758430 1036019386 1064406462 682993370 866317759 81830244 728515545 712559802 592225249 875615179 777380801 927064518 111130162 422759205 779861145 1003536232 89883187 318165617 172510645 28903986 919645671 422538414 243274594 78938870 32698955 534678452 243620696 908836076 322223760 755807109 393411851 449177274 932940447 54462638 966526222 677742413 797885949 288561539 764268737 947572731 478431005 365187198 79609587 72008039 320608713 389833603 617022598 404849836 896880930 617879168 810152680 767885851 333174713 32034669 90643321 213125407 726181578 371808882 1061979703 227148043 833593556 981892216 517953886 959084790 732479235 106203629 863861398 172369353 411906338 650973404 844775508 647774113 179308509 593681717 250472005 616091185 209077379 1056772532 166177056 306753493 726035793 47124281 161077692 283234443 736687632 492820442 634978612 812224150 891800968 649213897 551007604 337395533 248141944 419450917 942319801 1031858006 466801157 895319914 619519668 706980781 499523995 541230758 919883228 317352062 793607187 961197699 197429811 677960945 670540424 231156527 776704413 373241276 284463930 166458553 322734685 857033056 703502351 307540461 782744603 281559148 649479066 77194684 264218757 504479374 908768069 689667428 192652288 758061 156869224 263731048 668559445 341573735 1033455521 600366935 588649253 313819007 635092720 672093949 84023988 301837129 31559827 559982658 840405867 776740714 1070128084 108390114 1053275582 873986409 212329791 974423661 110062549 864458302 877090295 1025605469 224804193 265433284 979168510 72470569 394097683 344640134 76575283 750542261 1069963228 523615744 745248837 685690679 1006797481 126580301 738790249 1230227 183468005 897989638 72303667 65375793 931266430 312853148 982435996 324761584 497910393 229841923 950335323 567675989 407858786 999670823 1027915032 3018019 157060949 266547216 204467820 45755947 687375374 985702684 969438969 545839818 685432156 387999803 274525421 154464904 565224701 533877421 204478440 751746559 582274354 492394288 230690127 681103726 309022346 4183850 797480241 956008846 193097356 928791977 1045958775 1050979607 644902259 100808946 898975562 967160996 295034314 549653344 341736152 400472069 810303076 710792318 119617823 322327422 504798404 463116447 544608887 114375718 367114286 610004573 346706625 464186842 453456613 683323758 272403693 77240661 1059723013 694236560 390531086 1068529996 683640592 242474106 491838434 438935132 31095719 264859676 27067072 496603588 15407925 250352609 570508938 262964495 66829776 370764924 755878410 304072594 339821824 132037328 896517104 939710369 295000713 715039143 219737345 1013046394 813061435 729110987 851127181 187048551 989226457 458176407 1039322238 908255609 121036846 267938463 204897286 635447421 241999792 417315750 360899825 415280344 366617245 543347871 854514399 215138092 354582816 87439921 716807971 1054493094 317416594 613398493 429029474 1048254426 630629946 796344837 398457568 695693488 538871137 443286620 302110781 920294058 759361314 256644350 458908 948093037 958586165 700377765 918544480 625980927 639636075 342798076 309433822 506465098 473517487 3024607 460521512 812759884 272276249 412432601 866483543 792694414 917058933 1065484395 914210022 892287200 937040594 363258288 606994164 142497401 623585759 875815778 855585135 214463255 540447446 646046869 835989702 771785857 94780739 462254042 772876554 24369314 552531894 693558919 121405012 992340019 1071270225 364733844 118754500 1042127260 909278101 862318786 293759238 788585883 435062071 248090624 215021969 217985920 359299323 4252750 391928498 714843436 31342922 704807518 749978812 828652149 96657389 459217526 970972141 686294748 658638981 527364829 49822554 808678308 760685249 423357149 1052338280 399758577 881332176 948608937 463517809 121805793 1032946670 723610642 423310742 1068270050 161334955 838634377 283858187 258968416 310072629 661732554 537312242 322118172 637705650 491385281 198121580 402973015 85841604 813605321 294654282 1070603769 627573825 845305575 215173897 596565171 972191856 291825988 520581280 124886936 442176541 884678910 800648795 1066992427 146503831 892147646 603835149 772684362 521774701 265070777 986418682 874378746 459617168 867676021 731284506 272769985 463532157 324017916 893659913 789222372 593685464 494286586 289200587 434800989 22860403 704256711 448825406 1073738194 868000621 953744027 627021775 822817258 658375620 104377732 738194914 339664326 119844274 44007549 626029908 386093328 362802191 1050800717 799634634 777063895 71284335 83098115 754041824 497137694 778357915 859640555 829634873 1073472667 302796592 848592018 145786770 303832320 237385402 48216704 716831741 785106979 480568280 756630560 950527890 1013648425 385512302 293473861 721787051 89382609 1058151935 382906540 1022585915 799215422 1014776019 709052328 226775055 980779819 1023391337 295401252 243977899 423777968 223614181 318319329 377845066 257341910 806368471 972709236 769446813 501445676 700990011 980811681 537236003 893673048 35760365 441635796 334856864 316963441 8653279 1045941089 303205184 161580467 420153189 465727270 603183754 232054758 609599382 817275940 969645702 477947876 563031976 801728576 203642866 1001684208 32030237 611337862 893513018 335411370 536305944 31414181 229271355 723370859 836057882 606484910 395183761 704487162 559498760 151304439 559138871 383867612 233669031 334931147 166557235 703346091 599541947 59569216 337320037 557090184 585186478 458197766 775002353 666581221 215369150 848148281 489818682 877919119 525026692 298902223 646888184 302288649 454186300 80747318 443078873 354956253 360747748 356842110 183090193 73443480 113044910 941557663 302907884 591885192 729942419 446601775 304782227 270599703 84540759 74474843 798010102 624770548 1014546162 776531161 947600253 714371391 1055338156 1036839677 881424789 691486026 211824409 977810765 439481521 863871953 1015433109 1026448022 878052919 865016481 927480540 810517493 351835141 442322825 855882867 321173268 1000414422 1005394217 229833514 358050798 378278484 608759856 752726104 55473942 381911444 272897754 1071314164 833743789 697622862 609747980 706939815 995553368 868989144 1057457300 77164539 398289727 300071000 479296159 156892360 520962323 222216924 477003003 850450211 71187946 914970753 741335027 371572180 139563952 469798929 746875253 720311469 541498552 541502113 322499044 444234896 71234648 20187524 623075392 910293033 115985937 495737528 465322599 304494670 486881378 723980583 367643167 505712880 727912009 960062684 668148504 1050191819 194169906 341524800 358887869 271967776 679330502 885238466 172050439 575397083 490230700 796483958 160326927 617924850 817064545 435119767 281333137 781578205 484313461 839589601 929087710 625271372 184138011 131137535 346351953 165904052 898948907 223163628 982716772 242754517 799453048 807119150 1049998755 770416896 321963119 359642146 582888056 584583295 265234687 711314649 140446069 523229853 359508720 955517256 465762956 121968442 144658259 535999688 882281835 492076286 810146026 944972038 53111100 61859512 846267358 526146933 1043669298 54658974 519431411 424196292 921580093 270268513 402620195 52977434 124094832 164125958 894716838 603966642 396852653 641283620 538485979 115099098 76533340 926426866 170507096 200058008 570427846 703435596 406683800 1017049824 786561363 316281915 904721726 512581163 444873133 1034186863 333381593 450666136 1070928845 766536456 730430077 420223685 579048876 215632755 421516938 885832141 708767879 729494465 315112391 181080310 1008701811 830293301 217291390 982541722 556883841 895652918 175056488 173462077 606218958 255465137 935242443 883623011 463067389 292488483 375659218 780594684 187978958 173402722 296183569 110285333 232857429 295495407 1042096537 558184786 463982974 470932596 643652295 800172011 749660843 1031407415 954776808 435019228 702401419 557028824 488583865 448964597 60452484 425948322 813129971 849119900 517227067 623424595 610381559 679554093 428379660 619953102 961690930 309904224 679293059 39306583 872757752 729401655 228545251 753047826 993114331 218725468 51286533 858647185 222285851 1068756681 915742686 30271354 1068007088 74620964 88584256 350211841 724408054 269340177 748673907 982845661 251232727 5343612 455042729 799208516 125773532 989076393 983704244 524730090 753438708 169720941 682387712 688031736 680570050 421645052 354916220 191163793 822575373 379784836 175331654 832827261 491430557 640236900 161437059 482301147 21792826 33854131 1034316855 10429177 34299444 539827312 736028593 88662320 357867971 69086311 617797385 653415832 30488150 36926081 197084126 610100488 222792972 942948423 252375059 217745578 71735009 75542883 835972359 424602383 858319952 294390666 897611600 883239943 677592291 569630761 954879220 434743318 106944993 435095677 140243761 256397799 402681667 360243288 164831613 198713263 316143686 851102410 489289392 978810588 684183066 147748408 603745722 1056447763 218464078 960764091 82365939 528979985 153948303 336304614 823978783 676322892 538460103 697422858 983479278 844165625 594685971 49394210 401770737 776591567 884353459 958131722 14424137 648508439 993591700 157501695 328956290 607164668 869791346 593718684 81626098 836533231 822714905 818559168 287803849 249597498 58821048 61881556 362624336 704296179 310410055 207178436 195506475 125010445 508857766 30002428 793012671 70216767 259697442 180981758 699628768 142708208 166715972 54521812 528716699 916618156 697480631 498509740 940292874 785546791 1043951484 225181494 385285035 350365103 449389065 458261426 241433824 816825364 253186393 901025076 583861307 233310707 483151100 405223192 715702554 738690678 407660465 471955021 209157176 718509078 866231292 1055498235 464408224 361983428 226454880 473806136 241819699 157779383 709141719 765575683 952908249 159974253 13658282 740815971 698417562 916290075 378424193 759281824 101403009 207315490 609556963 503788475 147805857 490627975 262050842 901342857 950107941 404152164 344323187 125549569 175472686 143514586 150839840 927835742 978248916 680621097 663836525 270428371 199233157 188573430 576077818 99860463 44532458 52387776 265345642 984128226 381535294 690573725 488193568 643325921 687038918 548529208 438426704 697742639 146017648 659240329 81538455 405782493 273843378 599781530 56319373 605030018 25811277 327271757 434259676 320162581 232219489 9666088 730096495 321888630 4489423 1028869337 511705166 36311717 981659952 997013576 771707234 272754334 271496297 27069706 790426321 21287006 23001897 210204081 267947098 552118997 78949750 29245439 979992901 7626608 700951914 6264807 976784214 30798822 804856819 735454958 308492122 172781437 1061416072 322010974 923340604 854136916 755414561 718852159 104899602 391919048 555064409 993433590 976281993 493725862 64752388 611737323 801576993 555545272 736804711 239747275 882127575 7472318 532269146 133065391 166925741 449566971 62476336 120610301 485688818 378229834 130989733 287611580 324380011 76305809 847454081 1058246849 610430156 363516143 396747265 934704407 697650102 340541423 673094025 403785414 294634881 844098200 985439294 376486176 516937360 137129648 901040223 624846561 31064616 570837374 562982026 686783688 613263258 607902577 801500161 489056061 574652474 388253669 182925387 98486732 1064896338 876129754 718026301 426369564 869678882 524899748 1016055679 879938228 288408616 336868198 532427716 69914347 351204305 202276905 519507998 368008753 343114333 183098951 419950265 352414128 45395829 131490691 718131158 836230190 402236543 263277995 613779335 402806014 357496016 199100295 195223367 997794964 946039442 433789602 365406237 32075749 812493540 700292659 273541546 750483611 705231735 333823797 452488413 1000153003 356729704 510620380 75740650 994190925 783650142 218116770 641177302 1000712019 433337410 587080156 505285962 162994532 739468074 476357171 397003857 613926934 493578156 654549388 954967030 379658334 258412066 428984956 327801960 577057180 837696993 1059230654 126626485 845532019 201356230 891070529 878534451 88858323 457428466 1015702059 173625809 300789370 923323590 139829282 594846569 371078667 98580233 490709279 215289812 489468972 757122253 507839966 699011017 677845850 186674992 730295349 364296479 804031396 428183655 439875775 26531675 361973705 952460990 559926343 997290002 854815157 700787714 747245506 195405079 53704423 212886970 179463543 215497759 372703769 265172185 323274943 225976550 134939708 371425126 487901551 360692398 665818145 323768696 610138630 557236088 85978165 567096957 751642511 34339564 1013425956 332781099 493203139 221478118 532127216 219877890 1008523703 952618129 19773746 816828731 373116999 623835303 744728165 1029704608 300431482 520594574 900688956 908337964 401952411 172490216 644219588 995073189 1012400744 348013049 120730740 82701357 249707162 476938447 959427525 737910709 251064690 811818809 299572394 525511235 10702021 156974899 498032330 982725147 421625841 569297175 442623366 1032739722 96936287 801472860 96427754 36398122 149517476 779560369 534511323 345272940 241783882 787945302 411091075 1048348398 884767897 330309025 241164209 324503077 810472998 98341256 606274380 38532435 953076385 41677016 802312130 295990377 6349945 933859800 514762523 38583018 257241375 95072534 312112851 849971500 382553910 817041699 875025215 752083891 173275819 514842682 206444029 505107061 1056185096 896466495 804204017 453455470 272133182 802653436 208210010 105301082 285713685 304144597 51682263 868919486 699728220 936122670 379352644 740398037 449110548 203458693 613536168 35386324 542482477 1041342483 858602745 626809942 120408459 899554975 1011404059 543607899 388563205 491959783 276972028 841760652 697623266 29984967 468172320 579847276 353651445 412231971 14452284 607921332 869314871 237662516 751725723 285332785 824768345 299107188 282319479 359148428 906688864 210157511 316688549 440683353 551112219 494322137 136017415 313245724 358753671 815762646 258744163 954896501 282609902 370839584 763064558 271127420 483343963 534999345 1038830832 766436216 162816712 735010995 677035486 934684012 902930584 240533441 774754002 144826125 488040201 747384734 488608324 208473667 99026640 881826014 801869482 884328632 671823268 298400452 296417756 304393083 783514698 193985406 333802068 373526569 150569065 917749520 384545298 479669948 830405943 3642360 414258375 155778809 104412914 470439077 295287641 201076980 300547457 728673424 742730386 75619803 50549526 232253152 214383912 619472981 956212067 781741142 951268367 811581248 250991156 991556069 616342499 162800919 494436520 759012306 75894710 535163117 157901611 929872488 728526282 3403408 344588489 107297511 1046598548 533722054 153390926 422509400 693022628 907943904 779082745 667421019 797638930 585566330 680781853 525086961 708891357 224089516 178907518 198595511 490982864 550431214 200222091 51029847 719401318 1015229587 338269713 990915441 610295591 236222139 532432699 496223452 58933509 332229867 1004869601 157143668 931344188 700796676 727270492 765991215 1008204210 472550565 610082309 734818199 817251106 256297201 424505162 509369421 456274882 256739705 478298067 609953454 776952675 1001008688 532476876 726925484 203936390 392715843 145480616 291723817 626955838 827436351 110195359 479559700 961228261 200157706 219733470 141504682 679501878 1042002752 331483908 449083901 823355898 685894367 96255888 309300293 970043527 932546864 95452403 1066514508 44301332 895367886 428355812 189923331 696690893 168364957 989087732 690763485 555701421 629113708 587220015 288399091 1017842661 725178478 346509171 317942016 762860997 902176968 366487523 834290008 317463365 193144728 1067490723 275222561 400598782 216833657 143501516 944403403 55470401 57979373 435427371 613235320 370116736 47426932 677216118 980606480 127814166 1052308855 28701382 832773104 645399675 339315868 563655499 412591580 849056804 83009694 461477528 776832731 909667860 194536203 197641767 681440139 997437654 812513495 233459001 36298884 496108984 583863460 591878977 889800878 17503878 1042405374 671587364 245802381 1012429142 319506283 541322096 615213779 661147445 730817036 5697496 792761051 334812603 29631231 450414230 353089745 936846794 5594167 936216587 315925121 447416218 401648368 783535931 353238999 301301295 139399169 673829071 881872816 545401044 976319744 1037664517 991090639 1049409951 899807392 752707225 912963672 387948595 528934052 833030937 136997907 752842003 999343304 471089686 300960105 90167954 394399439 948926918 1023693741 883470183 604702021 426135555 509528732 270028223 753121959 967113901 615481989 438180057 809080202 997509703 741901857 461726397 917895334 193093597 988276383 590720490 681871749 177204457 391444864 65318297 946310090 299699021 305131656 6924182 974050474 790599976 959491975 76327627 16788783 313858833 733872075 608014315 542068494 1032732840 721592648 348065416 848185397 854840467 755738872 994771795 895586804 610500996 928678844 486908341 259007718 977614492 11380513 601772336 852437261 814686305 37729428 354938160 623526268 226765293 640757277 446028726 897388952 891502272 676894062 814763795 395045540 969350843 574794868 547013808 965860089 340582973 438976493 725245293 26579898 199982576 801064168 97956805 629488603 17319127 784070221 34191694 674023135 379658344 1024016804 693596475 322426824 709173151 546237232 26174338 689640274 912931033 984518498 261153283 324684714 958153179 829045683 231226036 38587103 319840581 856950050 548410832 685212899 309438166 399356071 370923225 840970953 774672861 577189231 958065212 410381502 516539949 591495970 524075547 877578630 5910287 601567130 993398623 126186667 692635949 46625973 277779222 379206773 510677592 977448198 651100804 543333045 754861896 905766092 344691853 594491377 390038394 405017086 438744091 1022582091 379368127 24968951 915468129 255338380 930325958 474161428 213311465 200668534 233635553 866545597 177338132 919086189 387544223 57618539 1063404228 439699329 419712703 795095365 293035814 909253435 510668074 299804411 638551402 49690893 195822689 557911141 92649933 184000691 802012870 916434075 93269402 659654813 1065970173 157933681 561677363 748457505 245145032 567653901 337869352 1034653879 476416876 295583482 68362697 51975478 573128132 956640045 372478312 243803382 954217271 74643402 179652155 25001811 519926097 395895136 899183861 31892497 129909060 805056673 510312903 142756600 830352023 887290333 676595831 455415281 61013858 172113344 910552770 531822877 437432701 15295244 412704301 919329375 57333257 726041687 1020964671 752303858 555154252 728673800 175165307 102394488 881587343 302298199 600206508 892725382 1034276869 340241626 257214183 867570682 782462521 29139598 846769719 313884980 405743766 250884801 816780051 438886433 384843591 13225043 154504455 394035528 1041497962 30785248 36642982 22420985 47390504 501051047 218787918 405303908 146479493 818407843 908061888 904416871 842666813 317277302 709929576 179099746 735434588 934512432 262787586 413003232 419704923 628275724 670227740 84505198 757331065 523530722 476035725 761380547 498560763 984802932 186211936 473383074 265261771 698674510 718577436 1068838254 1056318179 605321755 210311912 1034086833 126321085 50083211 187144115 150605420 708199619 1003544805 31050764 137959860 466380509 769345598 1033609962 270080849 726370295 990983364 108939312 1030724745 350063984 966021440 986860402 141658621 888649128 96396002 358607338 432980765 787547536 583863128 938663965 725517250 409795440 64773677 843251851 167455449 977325030 972281259 158888889 965371327 533957576 432541705 53486960 842292889 234487197 665088829 51105521 282326061 340032606 486606421 966357439 736526575 207809789 600114684 311463918 425975635 929519920 693699401 850532724 706780128 582628204 697549615 700537240 827568508 404105560 205227551 457805441 102724664 936384970 1046453333 582894425 575665837 343360058 677789253 168470331 635308665 937097432 805507385 770475951 892533568 774079391 740326456 859490046 5093303 266051960 948558619 790656328 982727144 196029342 395867511 1044961182 637391878 232305341 794921043 689445600 931448221 638176740 122868226 353047938 1016378768 1068895715 205127378 362723535 482390903 495547393 855147816 947411337 489144595 739201163 829915537 1069470835 187519343 1052213265 987515802 822121634 1001506224 803409143 390132978 577501204 844640247 910883200 93540910 154604424 928505628 652249983 208493562 521326650 115962980 918772977 312671521 689790563 961172902 788887472 442915394 342188295 162931528 636056184 754372141 882897103 315532906 727113865 630385589 671921256 594965181 926413978 698444564 975539398 677322099 853917330 669114982 207425152 247337372 635847174 84848415 83898879 853719724 947874757 768128320 38866892 842785921 354460925 722430444 671307872 962392877 1766620 28284699 733983952 737287485 769246590 201863485 228320692 34908589 963099664 899840337 137844876 457498206 302869219 890425309 95864345 780757872 130081077 647122743 619160003 794169892 527521907 984100596 324656944 78294633 216072168 177413628 213032981 188940484 218947118 437527639 108182763 25486690 323105466 766614591 703679405 686959821 865432537 607577258 482801184 96430386 1036915372 901602991 806822150 109708332 1035359715 374729302 556231961 686568360 1032298419 146420265 1004891399 542049774 103625003 563979338 865733450 898879897 665718173 944837528 84655554 172121243 711312272 936496824 510802913 849752180 991884227 819628088 481192711 212468217 833602549 30919092 1059897075 231515217 225949812 463835114 322708804 809569158 1063446534 951378748 970633250 982644460 193325966 912281406 163712664 652013647 1019868337 88424603 799121639 580509474 28822153 74004433 846788445 220165055 570691585 702895053 947488378 428241775 259643179 448145107 142279641 653527732 835546746 292774356 944293889 760589857 281557490 1014777662 126102075 289051834 583549704 676732085 945004684 29788747 481980087 659929991 47129439 372018471 553172908 68481484 929438242 1050392991 349400925 637931667 859032522 109445478 426981289 551683138 1063877163 554583226 458261609 1058520741 881991786 509423815 572215264 237698993 825713831 438810341 620378070 627044843 387689 992543893 780998911 844622669 642070774 134393807 635318979 792646541 407090685 616584334 725550564 342043130 906645882 104350059 718869947 24322151 784019952 205253409 505776839 420570993 124343281 978035428 971589381 258459718 76013799 456708140 949213360 565365806 259169887 761779969 593759351 644844135 516080883 649618964 576707667 16572105 193565410 906128439 999723103 1034371989 203235487 96159444 270122949 587282356 458584068 545645483 519786698 124572542 106285080 278730075 831536991 931849886 85346094 750175676 112051524 439671039 14584960 1010222657 582973569 861208373 667634202 616600160 140282352 505716524 422797639 26773063 801118644 236394720 396833310 1012425421 854694083 624553360 426826702 49226471 198260594 482128250 700419797 1010976226 931456158 724082625 1032658467 230457808 856507686 272644574 64704604 166046498 890331323 304350379 80571893 183170743 105007412 314179122 784844377 51079581 575182898 751818243 351968306 621053220 346530869 104065077 23048215 399591856 999909512 772454757 256773004 898460551 891805575 230028473 388743282 72301960 277450390 513900215 890598709 595191770 47433280 644042314 349869299 307805948 646342705 762912816 965980 594557763 89269894 695377964 575615213 252294185 731479264 147402347 901739119 239696199 56821995 283057040 984578159 1060951937 378459187 172706149 1055122315 864282871 440503150 957741417 724597705 786795674 190398781 319215548 90533162 534881088 395781311 848380069 822193277 415254763 612669438 1024647077 976117821 534690294 357650160 759454098 97728917 436869383 382778108 670312858 1009082440 19012814 953689006 59072144 108321891 86297113 810082693 311801352 452766480 532524317 316472627 1021147239 89896983 893597763 457939907 161210770 859920706 236302906 519113198 120818890 29988957 360834696 1055686804 744729447 162663177 643367151 63774859 1053339255 50853051 569986344 266304621 882949225 700683905 234076979 272833993 892260425 570940410 221074255 723877921 944929888 696855534 476143054 616442115 121264591 732449901 31513315 135274635 714705241 79911571 245505494 793651401 596906149 101995333 485533955 138990070 812431814 257086969 106692468 16021354 1056980984 64455028 895167253 49591690 647343037 147038914 665953358 1029516773 274782212 359635452 302292570 1018532881 279438876 85664275 258172331 112736167 346940671 676370030 656921543 465719617 495856386 192610879 961051466 556883898 89815572 248063123 635566128 90617356 189514200 340897534 243318570 163428138 635028841 965047211 461135335 637661529 279740381 10097066 1038335183 276384145 898880595 140160543 739875140 831531481 617522848 495895611 478665599 887878127 384254831 213782850 895533613 749424569 252779404 415967059 339958190 784357397 557363109 245603912 842767049 1055122266 595243595 439716971 1055980860 901277052 171236287 552586860 268932984 741351332 35622953 309500474 136478977 226898748 981457666 72986160 500259509 184488529 830968421 99189375 1055936618 985506933 434006489 945527678 424777542 610603104 943099185 1071997352 1008628549 577720344 234724621 295192845 346849078 709873466 854421934 131647842 1054333873 1038260292 686505197 347771300 209352788 1039118966 797427357 656985334 249522154 578393667 597422669 1065931737 211121463 291306068 549558687 804937123 254946535 699135623 960299855 1006542484 479389389 686502696 781784040 336880469 493156205 798266008 189196404 591311378 654856805 861362343 343191339 1012572412 841285985 726504251 627437658 1029681197 817049560 979960381 204597376 328352155 846899999 244476914 219986954 654463844 1050250588 1004590262 494136681 171323517 665447462 839282505 576521272 116372676 484989063 700293211 293249856 995607240 523643841 257365314 503643932 456616558 14709394 10521039 132871778 233053701 402219781 320398010 702902291 325247101 512934337 917234076 414911803 737295503 942771432 379562808 117441450 87877750 99297757 73270951 563320851 466829529 337213200 146390413 116016635 913365163 334590381 179519602 194963692 262524636 208215904 334015956 881149145 504554729 217407272 152642444 773904789 1046747541 125325083 437661568 521313509 953137078 577427221 641687197 306246073 906116056 525563439 1009664673 780144433 910962166 990614844 987312714 510165045 774000879 855775899 712559699 916636303 939796938 723054716 300188046 707877767 888141650 415471923 124316627 413072519 301503980 643538713 675310321 490558378 228355256 464672355 357725774 758903219 348438743 360847174 310036614 767593340 966952388 467842637 123428904 666236783 753855233 1017789074 830974064 214182585 936955647 940286127 837452023 817286028 315166911 22620467 697192095 147187292 677018936 113314456 967735494 235804949 1062837518 906146913 919014444 484502402 874656041 721962824 565248888 613875136 1068210200 347988469 580720545 96431401 350019960 186838971 285082942 218178524 742381605 356504063 818774014 954382974 280382959 543049902 13203966 713708497 831157226 466813975 822201272 706967013 1318165 345674727 48807902 240789791 397148286 92894181 448969520 1044622719 112933395 646220260 1002720777 600114070 915108051 281541385 961164206 633755850 380738287 17377580 784130858 302605469 933839200 498578981 435302762 290761385 1028352249 380775884 6922669 864374382 569425140 421393714 168187087 418230496 441947712 153728340 576147786 338480594 597152076 482049702 643316693 304965407 643915625 672094154 1047859900 509497285 142042919 1062040230 681657451 559104670 8020803 456072482 140295661 984840108 874569017 761127448 19025558 696065568 289845114 390950477 1071522504 225179337 761331650 914691050 410940092 934070037 138678337 331754622 417257923 783637141 467013845 627390435 99173292 139832492 415645546 99261947 777261894 686144260 771723575 816832897 632835098 526325036 696029143 1031606168 665695983 200435667 72704593 122150589 87116892 294222359 932360632 864595448 554982020 990342666 997598347 636380243 567055822 229719502 727580688 1028066968 270477401 1013411626 625611553 889610570 667073604 964072778 752697051 577789618 475615898 846084408 27494077 309560708 562137025 504004996 76715618 183555698 605164060 1066456863 338622435 408825478 1003106666 19457252 267966867 321506491 164845356 669981921 552579339 179555593 565624658 662130332 926032578 1012377143 218991748 335675862 856888633 88092852 642369849 714140543 552304770 256665564 704863964 308074389 753482957 324836438 303873177 391099993 409050018 849251890 581893402 986556124 292834255 482589013 644340469 597111809 629839007 892821499 1014370241 452680520 138931270 279985860 344680857 802264558 133543912 126585381 660775608 878526302 724573478 235872455 79148929 545164865 434980987 881958150 454012414 732432957 397400019 77745304 1064719634 815359606 60261725 1025907900 625057440 739413167 393800481 683072212 698413697 208595002 329626501 737861818 665400512 125961343 682264701 836561211 61355787 446325614 517755088 46126145 1064454705 408565667 346121917 242081897 210635176 588511461 576406027 573872867 124952142 844365032 683015934 923804991 985993171 757662744 558525063 459477278 574646545 557534804 376072740 759307916 4923567 357593373 880140491 619012022 813810184 126763431 692234534 566311420 479442175 408174091 702145205 145429116 922694924 400696762 557130174 156524660 1053775979 969431176 843600999 1018347739 1008156226 895954794 782020237 429716391 641401956 535963607 955349700 580535056 588422084 351112170 664006543 1047909328 290824111 449922033 521300003 183652097 1007509719 620357018 961816448 619352718 17465315 110131150 486762861 791518700 929035695 998882373 767871864 263468794 475314007 432434577 918668115 668068440 615771996 483515733 87206422 571565568 310839151 642223810 409752128 47529257 8280519 540672351 525067526 666707498 372355582 34707372 282882616 380670674 1013847863 226323556 227126894 543757795 123125045 375219135 527625110 17591324 4670677 378889738 154325883 522196693 1014610274 73206400 584677221 1044134059 570717426 523257605 425149501 395810814 968369883 1014548189 294026836 370299897 174186480 448203874 437874101 29871808 1037242454 338740952 497353465 78002039 971345132 587638226 332588823 411340879 315265531 945308458 415034480 883640891 1056023293 1065799609 297226724 360876808 1042006975 836077024 425109351 733567246 427555129 113058610 371257531 334200339 65724084 247012744 1009327661 983294968 191982984 249441681 607735215 376181523 648552893 675917310 621104785 1057891282 489487849 608478862 191853705 561625023 229555263 345867548 74247469 49897354 183512275 775465891 972371042 929745075 729166417 270967932 319072062 199812727 170854074 639118433 345897597 991510624 742023982 775493899 121985214 1020889571 1047400880 70269444 227699573 809992760 1042074717 1059060466 234873215 358721700 712991334 642136201 603196581 597336598 456981474 925375753 864149457 629372206 825439117 987060662 122695248 849086267 638885973 807409980 584724415 228385667 282770483 1036936823 771742917 509102754 408120725 923410202 557781458 662589120 136833532 285844056 41808971 464751167 1037046005 563851994 916464657 964768754 582975061 395604400 433322956 453560030 478493867 104746395 96169942 199522934 174538637 512951872 915746811 674570741 698056835 400715423 934390199 220744332 323927383 864982762 1035884952 841856183 318951280 6841075 485815477 209120894 909859317 315103890 75424903 311412134 469940944 18941612 226035954 325066137 250491337 6901979 645336565 112766722 59067465 316555021 373433376 1002002553 23001614 968897436 43963034 1040025741 398306826 747626174 872171129 786172939 1009855012 1014806749 736096180 55399519 405451534 710805653 170555138 58450824 473340724 562296502 865444800 899885169 795235619 498981283 664583212 548188247 284033277 206251384 638172567 388148543 885561168 627286032 145558079 705453081 89261722 231459085 999935884 187691462 446855463 655967399 455749497 756617456 711306350 2145894 920515559 528436423 754251953 485229855 999783767 921387135 762885923 652452818 478442666 517295086 468109110 2554707 638796620 468560837 1008975637 577614036 822094204 205067627 892543645 376727544 729397767 113463357 920784327 760798688 709578412 243482094 964163721 97693701 400632046 784573005 254310973 260594666 582820881 161368187 325455415 452912957 146606137 104693405 720531859 147793826 798639011 863066977 465873504 283832095 60409143 141868463 333756303 381656477 598907429 145665815 615735705 370762585 423589564 705018669 764936274 279597685 526708597 837803302 1001175878 840847519 489726267 427263776 327868134 492466129 892360867 535883536 322421925 930471834 911838668 44196242 352511494 112546899 393354695 591464324 738842134 819811707 442790694 833513139 230716368 1034798618 365341043 547723959 865460316 267404858 531604736 188083972 347863668 360423269 815379132 519586523 985839737 424305387 318447779 1040437064 402982356 245852432 26421563 257085417 244942631 454474842 274118757 548311069 741317109 234813470 585072512 382524438 522341517 629489456 941775270 710396389 300274270 944946125 799192843 964061223 169254062 91565170 461082343 650493004 205683167 257115682 918907589 341596256 710481558 1064231404 1057789729 378470135 498821779 308570918 656164160 701838030 584975685 477483583 1031002440 501700360 376422471 643541731 811678516 215567201 63810782 169103805 249783147 514338407 805639980 705836215 804371088 387807955 908793714 919474856 187611186 332922671 757182515 1013958118 1012380974 335783615 801819224 1038374034 660198268 253631625 818212867 164629273 27301894 620625390 1043557882 989121904 810737847 465190593 1031774936 189224941 1069721861 598239378 133226052 1020566965 407649202 350256664 63585839 986102144 76673967 786152439 243295236 949087362 288882037 193955750 476022813 242093635 53148042 913027838 742661856 45789188 387234024 689305727 867670715 764526797 74428080 73291278 355775890 522095358 650442616 968376736 91052167 579860011 278656525 872918339 170397714 314106214 292564805 1969892 622572838 727179290 239816459 137312599 302743687 154141647 178818572 288737469 795616806 415093755 204987459 588031381 203336482 964398602 554937828 501054650 740514094 446345022 963518825 993829270 808365316 868408289 657288469 702836970 609222494 789271659 531775052 579802742 902746800 696780125 443605728 874212671 408397774 224745387 991137828 99369908 214921583 877465550 28469086 684675852 877026665 935306016 1046611469 293365918 138257886 1013647392 635337235 149798193 27344276 164825768 674465139 164947789 1049680142 814500184 716333411 272035122 899614412 486530711 1024096658 1014945333 752418168 70678118 1002296663 276960671 927199798 18841167 65583992 86121571 140560863 1052530059 154392088 918707085 625928395 464791733 516403311 638611494 1068687073 344912929 741078588 363025113 206115251 284067863 1073414599 474819866 197403483 82266780 971179845 835845326 997616316 812574950 767058630 309116859 386431313 128043937 310392487 69846720 1054475249 740877515 670384621 123695634 660085997 138452876 628969339 355353448 675401331 855896934 541512676 1004396457 186243151 301529714 342664284 989996204 393861514 37242250 441626570 823249953 567785306 871554880 1016450829 932974002 1049304517 949735148 391056766 696145812 411520304 684909135 737741180 498042823 1039016790 947061449 404328267 26035941 682842414 988521249 917865542 440199204 1015806530 608909812 550526277 67588482 324197396 259093009 334444955 445024983 346610239 629693755 1016238804 143548499 817139183 214754213 59090289 311567405 32450618 636426198 957198194 674957132 773251279 14175760 171702354 349006061 416347447 107660446 735855082 160728509 616525161 483987974 955788451 643095245 732951466 822581213 967687557 947252907 491927163 116170817 247870706 416410948 38689096 914267791 313599578 481358316 405625633 691334741 497093800 642610363 678438016 101896035 775513178 898506167 409009876 620719513 275977858 807946712 496019588 692848957 333662618 324804829 1026710246 156266960 14277867 917461203 621327132 454979271 417937599 703021898 637251648 896069919 1027576262 821958344 737490680 495620779 248304743 546121063 421265832 891997940 329306108 215220360 179568721 999631029 512555745 189131329 879932223 959027176 821939133 474841760 253059419 364977517 386988328 676523854 169858265 694832091 1014745100 855017822 448418090 676792856 457907288 919154638 854053061 797224741 525610684 592162029 926114323 541723699 931617657 121878096 143163206 665483733 325960794 548022261 427973151 830960969 1021028529 733893854 498412604 1062115208 978135430 691471919 309240008 579260948 139458652 942843522 1029985672 170633451 881632851 467643203 279154934 576751034 648663521 142147183 1044310454 952616222 804468085 171617644 809987830 791895985 408177661 1000206753 825461453 549783815 839138929 264957053 933712868 146198223 909890677 599725106 880684223 621677678 663887018 540460393 527383331 429896818 838256355 852152164 662978539 190138000 181335280 191689003 835269776 616912991 117352372 904928041 583700752 842217232 249710262 745196905 503453004 46522779 573530896 645148394 657382886 890316453 506625472 139553822 402315512 470849755 41783209 893395433 902961985 648826021 598091769 317689912 190709052 864244490 706275062 610889981 686649990 665551460 49518486 550357232 487275137 255369904 174203872 359468728 930850838 557153398 488681917 187762762 288988472 762796774 974569093 541212403 974233080 128869563 599570349 1049155141 458731993 926365320 185991516 803008720 208613154 470449840 71002374 371004276 701929496 715781891 903763669 562285973 724570191 405703104 39949709 489988114 22358782 226822932 34099147 269960943 701767905 343234186 61934735 1068978740 497185735 421045010 630762516 572552153 702662124 781352926 387385790 383046233 178909146 445050941 663125633 1042406921 618510900 683930144 765362923 290092940 390627349 318395539 279888051 1071208981 694596382 458585388 687019053 1041001369 1062372829 228772437 570356361 170375127 628944549 497568115 823437309 1038363957 868112706 465546950 813833017 766606052 269790419 656845365 262426708 421934790 305060556 683932485 969063660 37411493 256914371 165527624 679276386 304476766 552424936 756060080 177562875 337948013 334991233 418150032 223030712 412004277 71646624 722675084 190993055 555385279 388337268 98568345 789671482 756362517 711162266 321687532 894349444 46629470 1047624247 278418894 948581794 587703555 705354293 294414968 903613181 1034970074 409852369 987143486 778477029 75508714 426488316 20340400 742599853 405535459 334731634 932049156 623979261 703800005 240620732 900839180 1019471453 653282352 911585642 1002592128 149292782 1057483364 560164005 425347449 1016858580 194931008 708614115 362330055 746953253 512752205 570199103 341659538 151744273 82003169 380346844 130276702 233489077 319933319 128771235 755785153 39427808 580474561 258612334 1020734311 1042518411 24858462 385358368 566631486 231295262 1014205738 559756003 385703225 121809823 661334721 997815577 662331734 867833905 659172971 457151523 720849984 275470312 1025580326 297136980 723935604 386559197 121560790 579973194 940247719 366930894 855208356 166232361 628435630 664989170 40127283 974838750 994867991 223573195 886673409 39774482 47543647 329767579 891144535 388951711 989071425 996240645 636506063 722585766 234272016 978546122 228957408 1012518569 273619126 21125099 261501407 915825917 618963117 237248088 1051175389 968087178 931520150 327076092 1023086039 346703321 702461718 740733141 58648013 111165873 117867451 826575358 369653171 246910185 350453702 992229233 348082376 771622285 110740727 244560547 64167592 1066098162 151685731 547371012 36997799 43028674 653474464 1046786005 734029619 87318051 390094013 309248995 108734741 308267079 793012013 771199423 352015150 872229531 243676302 3689895 1017035073 84128557 271621373 355363467 746681202 7593787 578229138 230915905 936627891 1010447193 839639049 422048051 467210526 902116444 262457837 271767973 822493054 94491743 131115896 279384536 539787802 1066833425 933072990 373331150 387298877 554324457 873370359 871128885 155193914 1018417304 654074052 1041394932 958034428 769217415 750152353 764734017 110560012 587985677 728355564 228960082 1016332880 376658199 36689139 528718045 159589258 944348014 132336236 343418348 979032185 460580420 202157627 594968143 186903472 800760490 1013701986 795510204 698823742 884530211 379490441 427315089 421008994 504324610 14515955 208832869 420694096 578890668 43697079 729657056 485075984 575725769 84032346 88799998 1043560942 173597953 56410348 938641179 623905900 661472049 481705395 669308318 742171473 230566676 647300091 640508075 300790430 445623854 134841706 714486805 1042228698 382114645 365254459 807389254 275272222 1029438177 1034384536 593387169 303913540 925509626 942813780 549834535 712429718 529145329 189758328 503690479 295074667 707680526 990015747 853408758 430186759 953379424 1060691656 300503160 266656663 242752977 1028984318 739735998 984737036 604650127 842802198 1002817486 287792797 719730845 554329080 327932865 522592237 428711915 44007460 799775709 942605508 426785868 711022368 768713550 735543089 342948098 712747593 614231765 387030289 161491315 269524507 923006467 257334096 94767901 526383298 308982369 20890135 157081171 246204468 930233462 45424672 546781195 395451342 878646692 126867966 244738396 442798855 359158869 22956963 486680663 68854784 489504321 242523177 634534187 672400427 698147285 44529888 361002898 530336316 68490725 272136465 24748683 1035611551 276889140 534297060 185130756 403372585 359885244 1066198016 1067111524 335807912 327757390 886823787 176134009 783297231 940823615 724494977 94680617 859202302 280890386 932476921 99898116 514614290 377006671 545525763 334639508 816684157 814370374 210601850 116049910 446699471 738452896 109472096 137831314 109335127 391311836 520703379 732844410 792483846 400044804 22673781 12324534 86383113 625705398 639158370 359696860 197386347 90149327 552597984 91612063 397868038 858998255 523022742 406608441 510564658 770591561 592740182 310489841 351163746 485363193 351282975 411052242 792413924 423715688 863812798 277718143 966689115 68547723 152238579 463499476 830320838 372836979 557182199 341871260 102535250 255750430 705568139 576873318 180896113 1056348199 645643927 856079898 903507054 326463278 666470167 416185377 469345258 1039033841 386398128 1003784561 119900707 580537552 333105737 536109401 849313376 861929014 789868363 617684419 513424670 985233424 111176524 227023956 354091631 54807942 104065279 762699019 490160150 99496039 401166240 323067900 949190627 283319868 1067868035 848469406 98909353 791912692 500911030 202385704 893084125 244400208 805158078 1064104722 974510494 542740125 431792494 650021240 526011432 584693142 790716223 382805475 885150980 520557264 420997019 499489330 42815825 265574818 93174417 102184523 1046865668 1065844999 467203010 542983400 199087538 919757931 108010589 311930170 1072917608 824238580 597884479 44325631 681185233 142133211 552664747 995946637 531442055 947130635 73118258 162970918 961775293 223081765 623971215 499334941 362784670 456263248 49030704 368076501 780607151 89466786 834143341 694607183 967112986 798214960 763926892 161170984 628168640 363711971 378763976 622577267 307499375 931992876 943107711 98080873 761352836 386915116 630473961 50841026 348964416 979317117 517842774 500089444 1032250832 74786005 424031269 704547599 464652260 726669344 232519850 302754632 447321937 133526779 1060504565 282871959 407634959 963148803 165089488 1022785119 223556722 704416289 935654699 554361397 549361286 348445007 621825892 466056658 377027043 382627860 523728468 482837663 660602748 627856942 132617282 372357666 350671973 317505585 415390189 518950859 273985217 620243720 399425570 714773747 574792199 15862148 52948332 270178522 496441645 806133357 574716277 833364202 661136320 439951092 351141365 419215029 844564735 203756511 456312971 506911558 371572335 735875379 557002959 926370409 896498391 950014894 709156177 338992231 974909298 922427751 709568605 898505038 209297992 505099482 987774116 460469884 480614253 64767349 275796590 1024602913 755272633 866401445 935754062 392052057 697527019 60289484 592420092 89328275 221593625 373456477 967019836 112106326 587430237 915403848 769334843 750495291 158704881 616159432 70713647 451607305 115662117 64064946 753102993 655204292 668483888 889559835 316580608 87806216 780589600 33702743 357817476 325992197 524944762 218740243 931551341 1007655762 427552910 757005201 231563827 908204747 760925297 1048166335 317687761 199356211 876571991 438669927 1011185908 547250821 147849228 571326801 1017947524 267350348 745983662 1029044881 571729591 1070790326 817158032 694885571 119847599 217005295 715071623 786575386 642831221 887792912 333192232 758105446 826355360 929757923 360616837 799511815 729542063 38646942 837860369 348448473 494039912 173267875 958659945 974632646 397900375 444723987 1026852155 623816335 478633146 397063891 58169853 531409156 575164270 556225426 1021280656 938120110 1026379704 668398256 591808491 950496502 337176541 586864469 129326283 495019632 217889822 225464260 685721477 154881555 197503782 573602490 293412533 378095550 367312965 99852766 851358764 158389365 579209393 140218029 354682935 144186340 184761364 558506434 573203571 143779246 679251809 26168232 434617408 318131073 50570612 868620003 900236473 468808416 324867010 237911399 788573402 6190733 526708061 176138363 278481577 283146286 191999496 1030846668 749817944 692219767 928665216 377185632 719112629 700886935 702233846 959079894 713411729 88855539 720574561 161770930 241867674 524020021 254555023 749589857 530844784 506685148 62916843 8194023 564844640 901346633 331992404 923026183 85952644 680888087 126346913 72342546 1004509984 1041493682 33811083 16484832 4189376 507045722 922501042 488661187 881052280 672233027 107357065 942608826 835140304 807213887 241418739 406942271 599239204 207992277 232504290 829817101 519151191 520784501 1058112918 145065288 408663510 70651615 505112295 415449597 557428262 963202006 426592518 510220053 152737538 444119802 970562766 57959328 474512085 732698243 811295578 163649354 204982797 271588500 264859890 1024958343 660648438 542226927 80156495 718929286 1021660432 299589944 944637086 106221529 856593133 428131273 566987767 157299889 343109290 48860011 298108105 526625898 631453016 1016129296 41818701 151874448 306618544 294857473 272901576 752446199 226357928 730602537 757801025 829594288 948536564 370328469 63609137 513072086 875187080 892926607 988287839 1013505674 212929753 580695964 1043737770 375481809 1049165841 619082626 961571571 840472416 367525165 627405190 359059369 379227277 715794752 57703419 836428212 164860897 474956948 617314239 235413848 439082535 846173484 7902860 82433134 1009626913 676689973 680313430 90875596 171340026 30596440 589529213 253820492 301490162 766747796 505999179 818173366 905381561 378517365 1047937948 947895684 960776470 928752964 619498876 739070125 1058809339 233264704 251562873 270307350 343925573 709789193 982880498 143649002 115699954 12994685 77566851 838539113 1049484893 101168394 1062009218 140245540 703612730 887699222 394064583 475996178 1040523945 307691004 420834724 220847363 139976106 733118128 23574469 901145872 664269329 1034150165 184360059 75603503 103474780 1056683868 405292803 405514494 481679120 358597518 530000382 126839780 821218241 48469046 525314838 212658471 299686165 336380418 363514392 845990667 174910917 646696286 932435682 746788012 678529607 428614362 59795484 284308450 956116745 124816817 1060751128 540042366 816189633 720165634 1056284033 357016958 495515636 1041205878 854657199 542060164 841559663 556601795 671116345 74100692 708279368 585660916 999457915 663749015 484679019 700301624 918217545 974291899 989295353 102218261 926087776 522011370 344689603 472710887 387872031 933142924 408064031 117154875 453669322 254336910 926349768 390470251 550374441 732295399 911933623 28426361 21930203 738639313 255012494 907084452 525108403 382404364 498457347 983655144 613653111 240096919 510988502 994074957 6457060 663572998 416437468 997087900 500653239 714253831 391777354 1047733178 3828936 421719652 924748187 375414693 481704935 395368141 53353524 294015165 26643700 1046450094 865811496 242510940 342078776 956809973 999946617 1026032392 592624315 474255536 900487297 929611019 668262020 64367348 94170300 127447138 65377256 9755597 170468178 46270530 1057946967 789761179 437274427 210665237 642123275 332630459 538342544 287375535 756673957 17334901 658421049 612201442 837462663 837417041 403649088 964278932 672164499 818419170 437432309 372914648 288040943 736053629 117359536 990518760 57700405 706144735 953893703 499949328 958755033 588127558 700642667 768290735 525031502 733900104 1071338917 637077455 584372791 770203957 1026324244 606594494 808348734 1033438283 1069221638 109490866 907174627 579911494 730455931 556495248 871606414 68249718 573531340 889102472 491066808 865578313 657679201 1025294114 222219850 175064279 127326681 504850812 1062181758 393850163 415185507 387149472 286665003 473329927 218883244 723915905 691756088 218940272 450912456 1018850147 246348855 664227704 398333408 377451020 456657790 230993179 683365352 929087094 363133703 265836877 187877857 62434899 1071041253 4925710 178489630 546937103 658818927 327056210 1008939905 1013242806 299019856 747584614 802481605 652214931 873450052 288026651 668351383 568976484 664862505 578877952 193270295 593969533 985963745 897264764 1055276361 774534499 509132671 965061174 955997594 381152206 220784951 630010940 97255593 643612778 534457624 586581016 210816841 708920707 702483134 840533646 984152555 571468471 1007292528 77401943 887011658 141940561 864584560 896809968 350739270 739807007 715095910 443601918 27022488 783214366 738288316 997040990 16624908 992624893 1039242674 187192565 302256511 605579744 716823374 784751234 897190471 71604229 293458518 240487450 83810557 643696359 348101993 675027938 870770092 341211188 793856327 1036895326 216061291 394606865 491036334 521851104 355411398 933521528 904223345 666773529 228156063 556406971 185984431 497657172 119201936 873703118 740885375 472175054 105632668 718864751 862258471 598430590 947576499 132999535 1062145654 82404638 18956177 1003258685 55798070 725433235 956611331 565817836 910744285 1048534950 751423361 883785937 791358752 27543030 362501972 141486893 991570722 622045497 375921942 97684228 1071037283 587326432 288268792 231051582 673974516 295469890 456982295 298878068 57275824 797573541 162727107 69047286 224835673 746520275 783337471 111208154 395969772 251701049 440165308 751837438 1059989584 504468930 852544294 338486704 551618420 637225900 450927680 66623281 834431888 580937636 998821911 1007194344 141109666 7284073 358657955 162938313 371844367 99813579 333314310 107850445 657038996 229196562 222206268 6323743 816916117 789693956 900490993 588017242 603754470 486590389 500498815 691147286 435397956 886969955 225560608 966745249 454681433 1042724908 482410144 65211187 70467939 721471989 780401445 356660230 901795845 205445803 403102534 153885517 848707173 542096978 521574847 47929409 908076181 227523652 432752218 311438529 736812886 6283951 426290638 904016073 766157741 1067829638 421601168 195207634 543822905 425026540 896874837 868691156 133248753 453055184 767637423 685563399 786301268 445013348 742787612 801738488 542617000 924602020 968655697 528109830 988262734 1017014903 244816123 730197698 350136583 657833345 626272149 630621934 270205730 548650164 30949621 156605097 948571574 410251729 574589231 426081753 416626546 248792584 701104960 1020454175 13683491 30059040 382638045 421722660 105825242 182456082 76490997 935364850 697282858 882659308 1016748641 761735080 277364320 739081807 768875172 603221062 432669033 999573918 429349220 620117807 781598680 576422203 425329687 279805759 209137847 665243752 1055009422 630258910 602249808 362721591 505837836 166516624 13867190 9378494 238633337 1052016004 924517438 690819051 495702798 440147476 1071840670 833707108 257659647 1035173057 713177629 592517917 494593819 334599102 7826775 286397855 435774876 1066492688 944803421 12918160 993524782 989977442 1019072905 201376050 600657475 353891208 786952836 110268519 39567857 305457144 374295330 668152992 621452098 794416411 737898454 247907826 919406465 631160585 8914258 442887117 526649050 59631061 525833307 528665509 80016892 329353760 621726651 612476070 824667332 646293992 872047646 95495655 66212125 128409736 339306904 56623959 297187688 614630448 198617255 216011457 747623915 117854934 651477189 250010337 699307473 584095198 302909360 673762 544294033 48149542 550041498 203243183 7590423 219082239 44108395 596418345 946195045 172796908 407118804 36607387 288369540 101936387 237184110 100145367 3548199 235359164 8621791 956505808 1067318525 127276706 676288434 767466955 456154001 379724690 120782905 452704756 172919483 188515575 963888115 716816914 339994134 1015372501 246518538 1050541589 310730505 505929753 1053034874 1064061291 1063671243 1029739445 358511362 667395972 957801727 481577233 230675446 645364334 737004997 910013444 22073913 806985039 868110157 417968704 132913819 1017734732 203290545 1062866175 796006096 101012114 207098269 1059516445 273521794 480110864 379634695 37816477 1024031198 199888272 318746060 882833162 749806225 756552944 826868578 351745811 1005316729 910427983 634419063 505132633 69831545 121541642 48492705 314800288 50563334 136789045 101979210 46380597 974572573 25950049 461332884 1040085400 106353460 222597127 157936145 575771542 607820847 1053919173 304866495 86077931 263169560 457208172 86716304 940551493 309155170 891644104 307537699 1038754124 327129115 85656645 534923925 322011074 468763453 732936624 321022839 842199795 131883572 498378472 540951325 836714989 124872022 363267296 372774086 697960474 42853991 222904946 891393253 220711008 952133685 99288148 1000875075 9944321 23483786 415220674 22956284 425925394 928758656 613090837 6391907 242532633 234840711 924647012 651494088 671012346 447696261 68867906 846504253 400130079 184218641 40382857 87361254 275894009 196890683 663872034 1008511621 768292573 770013297 648280508 560781872 302728592 327609697 524857362 155113062 1050942360 1005437145 608467450 954209119 11415059 436085445 1064052150 500371354 1069351571 359401635 217126373 508497858 555005726 361864923 1028862344 994671930 845182438 249673181 50178899 863377779 423809742 787528368 1009268623 861331674 999543451 1055554835 493419154 970131010 188859910 152681602 932357889 985783381 653120347 659875764 383572570 116123174 971633584 902897636 565743489 9766936 648638046 658141508 462658966 176179745 398151403 234802796 279254974 34370505 747913444 312126582 765204957 681443688 470293224 715174210 505187745 271862112 956553513 160435029 405983260 996254614 368404989 569905025 550619275 256843020 9804896 456894115 987841967 417682347 683722464 650019527 1049202966 296759262 956638300 131097789 793687750 931863287 900413612 249002194 475709139 11788160 528787503 959271172 615887699 201121595 269184030 994978016 42771031 363611523 70479830 939642239 817673777 204095115 805920483 493133479 351733329 934311908 652875397 406326246 35881104 186529343 802877204 283478015 169877876 286145075 203032666 570030027 187157870 657522709 504123389 161117496 463487850 826791513 270719245 470740380 524320475 32324411 316744015 393127109 324210663 58353267 379452144 292191091 80522753 818176596 940474613 653904131 1014257005 70353262 166825936 394205006 1048384052 859689095 931377022 512079739 100096774 785629998 821092912 84069852 815101782 95994479 980464749 912717335 876352293 121694351 966306895 61141247 435392095 12018763 1009548731 803123840 259407600 854105470 837117087 1069560092 770213822 134169766 499723990 271803658 613342238 649460086 763446357 803092928 59196164 212923127 101829292 545680565 532992279 459778379 348021357 888753659 518875440 39968688 1064989098 365523648 794087141 818234421 950237191 341975521 65729980 613015620 323041652 733564692 66278913 990276104 794271631 538469734 636887195 28096255 615922671 305249353 840768665 435397535 102715379 486298023 97646453 856635989 547240157 293007206 388826971 81030005 25472440 1710288 345940760 143608685 750695969 797242809 449831762 502761328 686218736 213486421 19348784 330876642 824650636 274433846 853764388 373055876 296106000 502673667 188447032 535071548 145247714 792180121 324495936 874387922 699092763 507431603 669215250 585184570 583633701 848324433 138197313 650180421 45952320 225266841 242473785 1072263949 560336467 992897550 58591176 347510300 656554062 736577941 95314986 166947157 904553728 458764280 435260492 77372809 148088575 525934146 158815031 152190545 269508223 1021144651 327104176 917841602 125875601 26301423 873046302 296526892 996097291 555847590 691210809 891143808 1043726731 496350659 85842470 1071837323 735341490 151791015 1044247828 43359829 50277138 2189396 336133461 271264843 410329071 242800799 305352761 963814991 651552480 431212292 884352075 237642384 273309231 804249209 557522653 161246905 662080462 821623211 441902125 491686187 635502233 953802155 108275361 871040267 228406672 293275768 340765451 756122542 760649035 596829257 973364692 21444668 312211817 225238860 576186586 326523858 414896161 683324192 392887377 600730774 826636684 956909351 738322924 116269619 594042625 313641470 24372487 877525016 836407467 427409447 400876829 336577921 709052729 863931705 16557299 484167636 595776448 24423817 442626503 561879129 738992567 109365238 814958139 392786019 985982033 405189226 224694510 88695067 909056205 503402547 300062933 847354646 490208363 959497321 833163461 1029146821 971928528 969836671 182450593 282941855 971719229 141717738 365055426 486031904 490678639 893091897 213066415 879486339 457971394 230461485 740102570 122061563 524382264 220103059 249971059 23132168 764147480 223417113 258958389 41640127 441159415 496622497 335333731 796919149 773620335 951502573 580258755 774045957 931821168 238551292 153185043 399647 503283934 821687683 27662971 405356002 824688680 326107425 627576467 194769227 233594620 884171958 403775743 506502058 120118227 17961293 366551896 738708010 1034446217 374104759 318950928 318572566 330596154 449095763 906612150 844982930 732765926 2752618 783830662 147340594 254249407 105440980 1064463659 388571307 168875042 35782063 287863699 364471100 192606120 566825888 616332072 309825709 1062047696 599684263 581018584 574514194 714102660 90890614 404142896 591691224 558424226 824571744 1018573443 547411240 1011101903 609551150 1014490167 583234081 303138202 742081587 30763546 974041246 1066341869 218079484 579204340 135942252 825493858 760304180 282982994 904525285 685701984 185417637 706101843 927689374 164892984 862702904 740084077 1019180661 317097634 589851583 151294848 746776176 915104241 227765733 350862670 364956840 838013473 675987110 725259497 481127614 258173300 248694572 217048883 760565901 613227076 1006704894 645845245 583578023 792760305 136887309 875865261 57643787 133741813 641429456 347460756 673929609 390374119 805420178 385910819 432196986 856757205 781174494 615288523 801887615 610144994 954400024 670846361 560177519 687097398 852731641 169380830 852227364 296471651 745887186 997894338 670546884 45062813 402308179 757286637 955171507 841638766 1046771356 1063927687 243642589 944139828 462635487 745763359 990198500 851453945 748139650 719336718 810952058 489390916 348218401 573219815 814000155 1000199700 534656085 791627325 1042369569 728829269 299265777 1063017280 163001095 1003813016 341665475 488333568 725747184 643914148 103674101 507537206 509078118 648211579 73659485 19356087 336759755 588392945 38523815 342402141 707503904 883500524 436041224 1014275320 510618744 927048404 745890842 11196452 244896019 527648546 519240061 203587564 800893340 897432274 388916444 812729852 223317038 67009916 953853224 768218176 139541207 947715754 721818035 835810139 57878618 104359427 1041961056 893579633 613608862 543506424 794001890 29731481 210257486 1010886709 793610992 496263290 736310557 1060281246 357720860 586525121 374888590 49020103 611651363 220227663 263086868 1006719302 122081702 827458426 949118467 1049723133 1011252012 368138559 820076480 842984184 920455601 633298226 889908836 1064481929 553304302 63199306 243183676 557953221 53773150 746100549 979821117 1052361893 542438102 1026863863 432538174 543942690 888935798 521649047 469013164 436893850 792545220 629762760 153874837 113674154 223410864 646552156 347596644 745190708 979866529 79345475 51092770 530386216 113226155 307225893 1044557417 112728536 88024446 734735972 550941660 450057543 698556563 617394004 713709195 21960183 606345194 18931713 13399899 220017005 52113332 676768760 852370659 864270062 479659702 1034943454 740422271 165278775 617718813 547823223 822418757 612513102 222343667 630265813 1053682287 1050831436 793126181 127016044 378923563 152889852 64451533 600214620 719187519 738355415 762851640 147814968 501729274 786005544 90809988 267607125 441538283 918414752 524905095 391720115 702357310 417403737 884208694 929451616 977866921 185943682 445971627 218782579 226248540 398252431 647065867 838410513 915018127 157112174 972812260 613466968 777202022 776366264 133197779 582236936 137218150 205168434 354721265 194010642 405510764 720875358 500436195 673187627 659087316 920577738 995323091 818313247 801909119 641475908 696039153 902092672 734493525 936663908 570965848 252040332 1015753957 638097733 962898322 37150437 334954491 598080169 929597703 410440496 45762584 653391692 877608563 431174166 989486003 656942944 162041532 30981710 711278679 283424470 605050588 758174011 325776872 841343346 104299089 174257094 707543923 306959849 78484401 1021026938 598838848 237174375 831011545 1013884655 441518201 593888051 619825408 817521126 355174221 416650006 1069160911 1059774023 905851749 35925 822468758 153663944 720656950 559677835 1044315877 835967865 718435200 417049623 162395246 387077266 765244995 458895952 1008513324 663733277 708784691 1032829967 315971947 36369538 265364622 758825669 183209005 594800982 858396902 295148608 1028340647 569778134 1060447494 820941020 701397977 206791575 897355165 555133529 594075924 797230820 57411062 510155203 85294088 277446812 225239175 996824894 141272353 612657013 379022305 767299454 943330124 1043118847 632598293 946390302 27499124 420891910 307561463 503100076 973182397 580701528 189440378 520668878 155097390 434447515 179820611 670866654 727124340 200268405 985618764 422549552 306799969 951389965 1047461500 963479339 434957102 260912471 515312150 853148458 989939506 538316481 564887189 817971611 1363893 132493261 182850633 74419598 28481515 581566328 161181893 805658050 337335625 479964065 739197071 261306515 409652628 754319165 1011824648 259653060 59011143 263984071 133230482 532909378 964857110 924460729 515817622 74827769 162175638 449971528 213329321 963467320 494867341 260705425 444208437 262950900 200889746 527747856 611923292 857032754 313226345 760274725 722617158 32135454 1036573663 653211949 804292316 5048347 486878463 158813666 213341840 456180735 348184014 495600788 492581941 431781623 24720573 469487730 943617389 915264347 582325848 864612403 232832775 913190923 913343846 387526282 372609613 649741489 42724672 844264852 202871585 985508130 689099885 891632734 1027622115 737860970 690888734 242535694 1010825249 295989620 932252905 558404100 540023907 1003402792 228272049 217894996 455865956 345715349 112565732 459158912 53398405 249939779 527239931 1006131859 441939719 684366378 565657325 436207890 893476110 110693867 679761565 424700087 117504931 41200276 405073447 342476759 429964373 102570424 957717954 296187134 978075888 20742445 751761569 572987199 903546315 17897940 262979564 632681349 235069938 497841333 1013800621 953459943 292774191 965171864 594489767 281089990 784751032 400239970 874546037 207483763 292960117 965908906 137404656 602906719 894506956 488231121 468200111 489070156 561460068 664600710 252474910 956185279 629192903 566303240 225436841 846017665 348401455 488444689 813574080 101979880 397834467 22136067 80410728 732312033 324935104 351821562 180366734 803313477 1039947863 1037140558 103988064 569754173 395583005 901476034 901333943 138982553 708624619 515045243 1013956254 857394924 97909051 301073468 415771566 537454748 573199296 722453483 714623811 619358055 675335211 325291963 628814768 488410953 539785725 380489363 1009161938 793528069 1072871465 253614106 1036573247 794393753 511414401 160984875 113880504 828474710 1060631376 56773968 20744752 1046634110 859316190 453878850 104967226 1041331127 176381821 581205518 611600255 738511483 309997836 1071992210 811302195 1061868868 862656004 1060693897 536791973 503948680 443085811 23409708 1029062478 224082453 354936463 565783280 190810384 354842868 418495921 558594219 999662420 963276509 181275416 522564344 489401028 102314302 680791641 971273561 522156787 176968254 617241886 1060181992 88486586 724783321 213420075 303279 210543075 367595817 459755441 388702878 737286942 304369978 865594836 1021769181 473816621 184771360 523228471 833695026 891988086 264651024 72612230 141948573 206565611 579409386 333578856 950406692 771657215 537984807 213142866 164021070 703293221 81761775 473082444 535647031 257133659 74896492 209552576 318114937 740610172 2581148 669038458 948463920 426667862 314738809 719448643 401658320 412779425 393042480 177217097 404408769 306415744 718632286 489324502 821629838 157035144 943566140 910192699 345859881 954351540 928187186 24699795 897933347 325595828 811915939 742137986 682773642 505888557 277320912 139860597 947927798 169172717 802403117 295783696 532279851 532288334 27377000 882505894 401783018 920808760 280338199 729973141 957818446 916543940 468143906 5870056 74175890 968652833 386598562 967127391 680973098 14890729 307035764 263203112 122353324 541908255 1015651364 283833289 724092478 134691917 884383383 935366828 365530828 593551565 984558937 905981714 767397438 171216766 1004230403 730222924 715856301 674357158 492805390 421433437 184605663 178394250 71860733 456139940 874126231 120361380 32937573 475404987 664464192 500266645 382774255 777350397 121716909 980064382 174037264 364613993 43618714 1037247591 354153115 846807663 35719382 29212704 893585191 999929829 632271615 426832376 4847570 448677621 831333299 767172018 822340387 1068564938 486851440 1359786 870553054 958642434 652499913 20486080 12033435 299815492 693713833 114869226 646256552 58715065 398577171 157736671 161960332 468676358 197474013 760666402 1062699257 408822194 1031631488 720550655 391073727 854183676 711335176 753572380 548087051 604884542 978576717 632113106 172119545 147437845 892334434 969074971 412193461 974848364 553981344 784468443 706854421 152385839 82672643 1063613212 563416854 1038570474 551902238 917452356 328492307 101393384 829757320 1055982782 585876577 746392344 845113510 624749137 442405553 52339915 641041987 331797969 1009117373 246628542 925961487 478734144 902648273 42263286 1011393533 485152516 381784758 414132658 594341743 309473801 1014911356 490383639 552677367 691105343 644838647 991627354 198480087 600914250 680982029 888838789 680855120 658922059 891814917 90657216 851218169 904382378 1066103736 315024938 633386264 92330177 937137226 489949115 294905659 561663795 811094328 342557837 38283159 45741156 334905618 174500021 561076823 302937847 581582876 445716216 663618790 370874242 833286865 73533315 1015512550 707713128 127758798 88177683 332735462 49109626 71011855 1024666747 338168430 111972891 72980888 1053382906 996628653 129148700 788189704 81275409 724645526 542782919 1062688460 266090707 406190901 743203854 1015569244 961029588 920586258 982741257 407732078 45253454 424229795 797733956 955492238 903936348 190264009 337285117 1023708506 822606966 544116860 904790733 234417126 166840013 467303132 604232952 302342248 587293145 506629224 873323125 109872981 50574986 633186288 565278970 620281048 86469818 1010088624 1006774418 203676763 940262590 917944031 848794824 464232263 229332275 479086447 741942248 1014453348 547734124 291017100 32517962 632929501 88215698 572768017 893761169 294699565 709242471 390722734 718229968 965622255 414031558 726302594 356636493 920435835 896153567 466565855 510666317 640440203 887213512 481417405 248409919 25599869 184787919 292757558 512668587 96704895 959707804 1009539299 216174675 982272892 16266390 967697711 304319793 366730938 874888488 228101398 973319466 936479343 177361688 521154858 28680392 958045143 751349846 652271430 517193515 226656781 998005209 487633630 54657777 99594210 455660225 8590338 67184286 281095328 755126709 711272662 753165836 488911622 816864396 67884844 317158984 550348193 328587525 301736586 337669875 445528356 371138252 213515330 762465987 463035076 962086870 862819111 580851177 64635724 1017408273 363047809 1042932382 578003168 682794679 305521258 235227513 890680153 1062673581 697322184 597868690 760848007 822101440 927073356 832739243 853956270 947296179 829868567 142062740 804071924 542359831 211526520 596364638 534971333 200549560 1003843188 355791445 443206608 336162214 978228200 137499918 200094779 894961672 1029559503 189901796 621532733 362968509 951896684 875945185 308123158 1019818579 476066622 297125252 141775769 800858404 658490126 763494795 683655208 866728165 803126095 320281375 19126994 245699134 1001281003 732241891 909335507 639178650 823515827 592389041 877424261 673047000 345115843 297733030 114887375 973412426 445655734 731496270 547629984 1009099719 692487158 74823688 109635821 153809565 480282687 494076953 547392602 738546154 740570165 1056152168 152306780 16406552 887967030 964230413 666100439 444945453 1042516472 907558902 568528182 461143351 1038198393 115998949 1004586850 8677662 210354113 715983443 117924019 923935412 594653698 593590103 432539913 302397651 309340169 56106548 131614189 204930056 489108027 547073044 762760968 778326866 858942314 870557503 846916646 681996854 898207950 87103317 78025360 925330341 321377925 117609593 436134368 855326156 63700197 1068341515 590617486 265028302 855874344 656867395 873353782 294084046 633988998 707806821 690841630 868854205 240347850 774406302 128773197 490698016 119136700 657347391 699499390 390899570 616644987 1060812754 308597818 479909421 925062922 735033082 983207978 212861433 764523629 291452376 944473484 1061215146 783696198 329660500 827410768 575965939 146372488 256422075 316753632 597964337 739451211 119757331 642409853 258495377 28882611 567846909 50995250 269737306 1027392018 720428689 183924216 256785126 572333465 714874309 421333557 428720826 864310958 1010489398 333503939 332806273 270954669 450399584 83802909 698820289 1070678729 622413615 652101659 667544148 100436914 49397186 74637726 1026760006 649315844 836197733 967034342 995803416 895523936 638089910 752572636 491864317 625033522 867445179 519977007 313355228 667689725 367276272 114668669 364246803 1073683191 600598441 362970412 788271867 1040591661 38376627 1071138695 662387012 6128173 542251 938210677 166456920 828166992 433509942 885325654 817426520 277885391 100979783 56850910 614657843 717531517 528563696 197836623 885494662 364284928 792273146 291204750 860021337 763890280 379106172 65667070 704376858 102791128 958937844 843786692 465951115 1054908642 688748014 359643686 620747708 1061003261 997002900 114698987 816210874 932339778 360338576 286203613 933024730 891036775 1062306549 713686931 777516994 918504784 304607944 976539050 445610886 100520980 777957326 353774731 991700883 285050958 80663022 1004860259 972520229 202212172 460249304 158961788 254553895 874439692 1065115058 74859932 152104903 1029121333 218970265 739323510 54796461 448685778 897812061 533360074 998585633 937616565 672852574 678511411 612073199 716062516 874460817 315720638 226896037 421601823 193366724 742003339 270432537 102872793 562230124 380506254 714315306 731209731 9119225 351097519 543090371 1025519897 184918647 54250136 77879564 75860599 715325481 359377261 612611335 867804566 591930810 849775215 898788146 633753233 992163531 832592440 737498268 408022399 215790013 22125503 91005926 938601066 337408947 980527159 487425452 505507762 5649627 661179464 95094134 235385567 746448735 807235564 724314838 335672268 36538462 934108104 207685593 216590576 379842864 152194416 713046463 469071416 539743813 649858405 526294302 707665651 323934859 820554 378659292 520001796 834969573 431300721 383079991 337371131 656328943 765135361 504919283 610670072 526374590 146420862 304946234 920997735 826884675 271717976 432581130 105325014 835601516 540085498 632000523 652387472 59066076 791387685 691996926 59634873 362906551 479668746 1018511478 307708402 939717710 964318245 373092147 610614689 607381523 301943512 455922802 692984211 529163156 216860871 974725700 376689120 562019438 516900501 516892791 841461546 296297370 740745998 1009159080 341001810 236661609 987814781 407228113 177152160 978727599 566479999 187591732 1063557861 176169792 210104098 696108412 230665297 13847069 427098940 409984946 804315449 1001318558 891013565 184301167 277057527 337438432 22639566 254326256 654432793 641365261 146589996 993358116 52076717 809581120 982459414 141807365 553256805 310063097 731923125 275831029 265418970 30083760 179465098 690850793 1006409436 383255128 892181863 476879289 651704236 587573858 344391803 786893361 32457314 9047344 114464608 140675052 344155567 901519991 1049723485 771271514 579725292 588302897 934191421 201306803 393518983 770652065 320806586 17846491 243219077 856682816 1010886787 288001152 264921416 191510898 966459281 240253123 379083953 477753449 941362120 383135697 509763188 382423891 104403598 907297942 602682603 764742688 215674050 143596853 854749839 504087397 399978047 503820570 257974873 891020255 963122842 398966714 601154050 911305879 134915001 26017841 38509609 674334640 253211531 63300644 679846066 838825425 429427316 945164965 928205480 130232846 68554202 534687010 786795349 212094122 557861042 253984985 993885626 893897475 276706279 525849195 79973694 276953462 982551416 229502571 769295069 426442715 804616557 769693097 821002636 181914059 132701281 571707151 209284828 339995669 1071449002 92875405 413778951 132842775 221147440 846876257 219258515 888198095 752140910 986474895 23092513 505546688 258431485 413788277 735617150 460274544 976336206 22610883 938805189 173725019 513712721 142735226 983764429 872364674 993399556 171555198 214241665 87000879 385100017 565519381 48782592 886819309 26683730 608971061 927182915 34444862 962304368 863408736 870931748 66403788 851584181 302528753 1063404098 19493135 976389169 586452277 790976317 542438298 501578561 1064943375 369111171 983355508 716604339 387209055 680570748 763752956 865975072 749724565 547310161 1013176268 287656729 363261480 338985580 215676188 2786327 923314052 782279210 648568950 460418983 195028408 551960046 851914075 986632464 507670175 106095219 65667710 891701632 1061777885 1066671638 1006993035 685130286 859679123 191656729 84415638 255131846 383957988 348452080 833183001 306781276 230106951 295812753 637633464 398840650 592218483 881126639 947110775 479304713 523604639 1023518912 958247000 851959985 253550440 310792296 1017326428 1062198169 175072930 817285515 882722353 809734784 737056664 661497372 298697820 299638716 927211300 861542191 583973101 120160376 878353932 262182604 673676001 709992753 111822077 222779944 216204710 291171319 581079730 656591950 864366420 767756457 19851601 308254052 1070114333 647491339 49073845 665133404 372094380 449159990 76689945 932647910 281999202 750344199 1036883193 492883996 191530637 64877587 431736702 804981629 1047078325 262429168 629617757 316753412 343399176 857276565 436859860 46011022 965837924 31950864 437085240 546265153 456145750 895192448 1069105485 235295618 854113568 324208201 381160136 1071702922 458371695 694539293 229620026 736841828 1001732303 287633689 1063192835 757083587 561674139 986649862 1047832397 86069730 241923041 748447710 548603260 630676462 734430642 769408612 152360169 500391960 159433565 312128740 809517247 677508186 497076878 450381156 141553003 367635389 369855158 724668476 26023955 576814469 204475424 107715367 836336526 911176449 355307016 669742683 628491973 765151305 714538696 644739921 242731939 210398050 928194223 1666868 100605092 554857431 559837009 652282687 587852595 913213454 283908817 51307191 173614270 220463277 217994277 4976126 199261285 244144892 237094732 905593571 1055573680 702373252 718515596 49716693 937646108 944419271 603721186 485902697 93602296 951394448 330765366 744855915 136880869 331046987 947905293 124464910 917156929 448638932 47802142 464031662 325140954 329235525 686919568 541706631 938775395 317265755 166800216 514598158 835807280 985208385 740411613 224364505 350108955 467602379 335082659 79702913 462117897 900014230 74448561 163823739 156731855 569682419 803822662 32838033 782451648 416319711 504713291 919288018 356408104 702998615 600966361 432758765 157401796 152936736 570961104 8577339 964887194 480537447 900039838 169248864 908968873 620498380 564718301 34193439 777600163 138687337 560177655 814970934 784973521 725451448 564201355 44923958 870384443 1015118502 209175246 1056892909 853649188 921462823 345829915 525969897 569759580 536948133 1022667845 316529104 527387629 275633097 190077658 1012569665 34573774 845835000 320326608 148275630 618854176 510581370 647449766 343420248 990358468 679442797 68852628 997540658 838664908 491897645 484660441 5564659 961150731 222019980 314940159 141014619 829070054 879238770 815622145 564796516 351788117 28476357 444433746 460930442 428569236 343145220 1039211025 406380546 244687331 661377366 39498390 488792720 955546446 991306028 159714895 260972033 583992120 302682691 834301807 981375343 103892796 839509654 974512643 841271184 467936783 496825106 446054332 807031935 425317394 512064841 1061254573 118015964 394434399 262463066 464788106 642724191 1008244510 16207190 178068545 949184920 816071559 1030906069 771736243 395570061 369529512 701117066 811059569 692881421 218999258 996258966 681132889 12765729 284806159 507251419 196151088 516596427 414425034 411493736 326860007 271815416 958827835 917323646 618234312 825476765 874092304 527208006 746110388 98675235 992536465 14242612 612202070 308325716 363378817 255859112 327112314 171060607 350391697 283735958 394417975 607453480 551217598 241929689 996668128 823890232 735948901 440605390 397802709 391521603 1062595667 214440315 754259917 607594967 22260910 144242533 37705967 42853152 639139254 674573601 771980487 19301014 781937721 984245746 516232658 858063620 481233811 22947589 401346275 275057616 875940261 552519895 1067006937 630744691 420609145 56068999 468436559 672396868 434794486 317835484 11141480 908400705 326138442 986212544 384029847 212721494 208042272 350910879 1031600584 278666370 475238300 669582741 975699338 704856036 454775886 561220035 78155361 672054639 49882224 207042886 980265261 696923104 1000115414 687146034 997641156 232920111 267120171 73247192 371269797 781697081 909646083 347798187 28975004 295722147 64822667 390383630 656870658 10912433 629010816 162773167 824687810 964842325 998125784 123033339 764572967 862614908 508212499 548496197 212828260 143364440 554438406 289050214 788573092 952564177 572621119 370683122 127224206 43588505 929940470 32347389 291987749 769085892 12401410 410670571 123785394 834006160 131094606 869091283 551418502 888354507 598736552 149365753 687005661 575628270 868978781 702058735 184785595 208345962 326219860 957527085 320752909 671038031 329170025 636530360 886327816 411557030 100886951 177029178 542371441 598323136 712247017 1022688788 122972888 431136029 175352547 297855949 818210514 304377093 729046041 216732440 769285129 621761309 58294275 623902934 467244847 531610044 810976196 12864252 517125999 634344473 447563686 666043475 946945256 131407354 537521170 388645477 421003233 234988413 974400832 777517044 429089913 824011817 35496588 671205984 580777063 703069125 977352826 288318201 403277663 1038474688 220437523 1055926980 201722671 813665251 681764708 979074362 958536712 24694850 1043677675 644052250 401958846 196603162 974060852 779286602 335868142 646734113 761255860 351902115 528018862 395793142 768672186 142745703 880590472 210345961 318427057 441253751 840519378 430752424 404537984 1000917080 104915756 447951450 405625068 586791072 575703537 606264953 552452356 846616800 1018592900 892437843 934760929 1019003290 336332877 1052387622 695404143 80369918 274303839 260162276 333283505 351230901 85386600 59111808 875697272 293868288 1050308526 798912451 832907031 276437671 841764890 121853170 705790399 341811996 637442455 770753712 443101737 214940500 153683557 386992643 576030837 1046091640 64395246 574017819 259737938 654803833 150320348 400178095 121898544 843747863 230949760 896851828 611703087 56840574 857753195 667450384 555976889 839171248 566971396 741040335 193629874 852752343 891906268 182782923 961655085 682570708 933640019 645279907 514893134 768609873 604182950 233458877 557959041 482145774 142816384 963751400 351783793 128747771 561138218 1041894795 860904826 892635998 648130954 593767974 1044522964 791035463 394274195 993729244 883892121 962415465 1003517107 747915530 1629163 638569777 450072228 681869261 606970616 563963510 386919266 582245600 404776712 925871820 913614578 133548568 919168767 99082431 891061437 179905060 477545978 28784588 624054590 144427085 787560289 857690639 528039168 298035248 936088938 532929210 719406695 785655208 712549976 522786243 745027603 362528318 508860417 180543679 890372857 541740214 521300366 451973853 370862263 711790569 884719738 377779475 222477361 698145842 340449931 518590414 141210824 265151685 536278839 843268146 279249301 687125822 827840909 495729376 17338004 348521230 358658241 207248791 349382836 698834559 422089949 570748073 607440276 76935340 618685919 343684178 111377659 961408428 946157168 589159304 925434079 548527950 941185466 582291409 665763100 912407645 10323238 54659426 897903731 747495455 908224059 817023464 194852800 629832329 820143242 919512681 490916336 444682695 797843979 840159474 1001083487 1017929249 999759437 606346944 4966611 146294321 752524370 373749853 731431187 483110941 788261720 812046135 943898525 706454537 988221210 699464914 19438168 87225775 819517983 1025486993 912797260 781812640 319256545 484544990 1012342901 376216435 958284220 144998617 995268243 851870632 920084966 1031592934 619969417 197866766 943109808 194885498 150510566 380428248 160946571 1055519692 507433815 742976901 476775446 1070998966 435147712 489870031 31940121 1023982865 98947145 934764118 655998837 473134379 194786584 844717678 921164559 176105146 894643357 614199016 584169977 499563139 582050156 1034841190 419631010 58743188 493383173 179865071 501719749 201661877 924713886 872487633 360487107 274049179 418985880 429363098 547766179 396988557 899087853 541870951 875690647 208728836 147908744 802067570 513304822 630993394 455753016 537420438 492530532 536983653 448002912 911592814 274091778 136495420 503246641 942585701 114279617 638111951 125222240 601854851 607243695 979272113 458753270 714246516 485732440 496956197 73105788 66754210 555552389 5676744 164380108 152579410 472128497 551396134 671393597 861454597 879777312 325101637 824973760 517696463 587920527 1065463527 304222469 613855434 875487234 550365366 981726627 1054211272 298501312 238946068 568805023 369981241 141098808 708564563 197655502 854274536 756850171 838552823 358747622 613780641 819576701 757654573 535323621 837340973 169818821 92680264 820895707 807035224 1016426432 288048596 319210007 195295847 790415272 956609424 573516020 88113342 343117505 746250174 233265411 587884433 651418495 928751229 970745878 471292867 59683711 755696076 904386337 818457346 244879915 493168342 235621682 956710558 809998130 965881165 146650765 705878447 1051882667 426299145 526657127 966809735 780026859 1058616704 447099775 416836440 623865677 611274281 495730589 242668607 184170022 981660751 269488379 309646350 745607621 1028248408 834762803 248001355 371818781 577783650 640109762 267643414 462107937 648518211 667716222 441198696 781960766 1035103356 906353328 134835166 711863376 563087301 14348848 66115220 239341217 645547771 417589698 397777904 832127971 416750840 218644774 238076007 331078320 8562937 894401108 1009995535 490928700 833433783 310833358 303041943 158295893 569020336 372545773 8280252 179377899 592648528 45371247 906446154 969877372 849914555 533919549 1061806993 297644319 725823037 654337254 672002246 241580723 83390263 888485036 76262911 542943376 94136255 976049938 377958344 500500636 325966119 462062929 485410145 269504928 283119111 785582800 561729842 241764528 344440550 877854235 302741317 280321108 1016138061 841725348 387995595 719478098 648376674 284050296 408385559 1052794680 64970448 833059100 731102416 566544740 480904005 2269529 285701598 7873424 245591071 596328776 965340978 911747809 326486231 1031572759 97908497 25685992 696240248 51763878 29558700 901895780 33281834 75350860 169579532 801848643 542558975 416782950 417837249 166386729 1059610331 726712031 870731622 116203767 23352136 576149248 444953682 544751907 494812253 381439189 380409 103697227 350875438 66193542 158716443 699466891 393372633 827568810 208918965 366086797 670904756 706444468 492462363 915154093 466296906 556926384 615575214 489398475 111013094 1070812293 681562385 658938487 451648551 308557850 124592265 715346801 872378946 62402888 681416532 54960730 810573693 703098884 946436464 940741784 678250332 230426142 737301813 1021530805 159149431 949544341 839697239 792053496 500941149 659181382 331618896 1025799792 967209503 180165323 597719245 522276921 377120492 1023584794 678409649 498415042 851000005 553422931 737144519 61418831 642484547 879302428 12333164 306600612 946208667 973719307 833648531 877822748 401028585 446064578 578834352 873662571 987266714 1061796314 908968310 874556651 621129684 1012814427 398177657 799305693 1069612813 10134521 426040111 658308439 301389880 386065175 596474536 17831190 588756829 399248697 62483941 923453052 1039446863 231909939 795979897 270625579 714580023 395969884 714625431 970078544 269539202 785160467 828336900 733901444 988389802 859634769 505995181 1056897516 298325930 784560783 766019927 350479348 814934359 760569010 768296100 927988844 814164011 63556531 633310743 335710051 983063022 710021134 656175726 698094859 1064879237 523631802 47657017 1037879461 132682293 982664425 1043945787 240835667 258922507 473060946 373529700 62911835 962441805 324779300 905356592 315063127 846831369 73070285 151870656 379407365 377257510 589068265 524565163 560779513 423785461 720094045 280307537 783361486 168535494 271887716 1006959933 244220357 477941376 889015740 404643759 457830863 205739042 553006216 182530317 957065543 409425280 144177435 973951147 442200331 457830493 782161192 578148701 278702554 713508981 137860820 961971073 286529837 1016890254 554774739 551868471 496700063 227474252 797527051 516523099 591890570 717350838 409403262 809714305 700065316 1046652394 1019651760 817481870 166412341 533448108 646697764 311454459 456470371 387903007 936251815 257283317 577875076 669593199 550504377 824240734 186873970 299102781 968296090 964811345 553426522 642171010 517493920 507139582 839883615 249394671 242526739 321524140 316652662 144917114 158434777 215013477 502681515 274925848 332020758 13752675 14943221 607304442 863330571 834143927 676452191 546468868 491839822 962350382 29333779 821085716 790452117 94977805 747140596 1072286369 337701635 185245359 579218507 400086139 305858036 815699210 297239575 1063334429 624174312 1026266263 362206528 395555224 363193629 701846463 733900023 557201571 365753455 792977432 660130141 803542217 618603178 471560039 707731159 478757008 41331159 688076249 638364630 421971074 290377011 189506757 516532657 358181141 497383127 777099903 778329240 586576914 844590223 983897541 422322494 69508259 197595255 852054781 282182789 362904137 620853941 260624515 114481375 325779204 638107607 144616345 1037566657 826751595 35422800 819382369 708884676 988270779 1036166994 313804001 28309470 787502195 545769970 528625249 532323854 952650355 245398421 255579551 7251527 100018360 191575473 556897761 188516800 535202455 867381775 608055484 867113843 801964660 377750809 912581453 671529920 465888529 406536608 539540642 867459403 117775494 306917162 68307431 798608530 874397781 899434113 153821535 445264819 971209244 574323674 38123643 372616080 379073537 299105890 1028500774 941206103 528151066 1027686526 754113600 646692514 409884284 210082211 860359872 85460342 1001532860 311162724 1019648617 481265981 505291063 704148777 540279903 132948572 492458943 564890015 692669957 28932234 815714164 75699436 525938663 504305970 752356231 101271429 116866651 121816529 208972549 409190872 672044974 932453203 296796762 538743946 236268636 488987360 457723434 533833483 695030031 1053110525 442277570 926955 480951689 54828607 400281424 615147734 431991941 175491416 60985639 496765303 1071989848 208106558 957981440 244820879 768753060 463392413 326405559 99935183 211727445 1053396737 354866410 585260744 320473747 952245758 1026562636 104646979 554455632 181074459 948055555 559965803 1058021300 827450787 2807222 137088612 549159870 943792562 558832968 479269183 348093974 509056518 513004103 184554408 92599534 159162896 228197365 404272215 393953041 569607880 329893921 1049643534 466503621 219072604 515941585 1003171615 183971787 930813947 895962411 10207497 793030898 395092081 63838819 327307527 195207632 1045612750 365926668 1037486495 499178456 677906037 927839269 732371847 898090612 470661917 690844706 96096944 546686855 371892522 313300848 691287556 124922416 663758421 1071538624 991818085 545908749 763651823 820174040 568926114 974625089 994873637 637802993 678832503 21423246 139797618 1018022206 1044759931 658479931 208034988 193928315 436440038 1050272934 132203363 278464274 49025888 841040172 466994446 35488423 1064355566 244596218 267334190 651561328 31906389 777381754 246508216 43547549 423006769 440948772 54726544 102507114 504517028 16488199 1069257420 238779867 686339654 59740307 675193947 96889380 117509135 1071201503 207996358 1023691000 680620146 779980834 328362658 830313963 1036742525 535255449 91928365 1032407538 452115605 594852249 635408890 278858854 16125268 910731864 585523987 1004108910 273291986 755250657 843147709 549925345 320263264 738365512 808238728 8842371 625399630 16793052 1017742763 1048804795 825417510 461829569 138309679 58634669 531748398 159941918 610759826 402772637 725265635 213517160 847591060 589882518 947790820 1072673070 157049760 589326835 196231528 1045881444 806822765 754753455 865367283 750057604 1160550 675918759 435853958 574666760 330219528 720445458 684774413 326845662 871259251 630303942 698716737 325838462 421900256 117315204 907801257 671821248 920511640 499084603 1024708840 333740056 898093568 40682795 449419057 57561376 437912331 346596922 695751194 490786369 742532710 173216235 797958577 619396559 88838850 606052586 344548590 733091397 550046735 600361978 907177862 62096573 479545066 425902450 386413521 201889856 174414614 322865782 664942750 51117912 261667792 811329789 105686990 1024979217 746700588 704012008 1029106938 260087581 67280616 376726710 394786398 631426326 506084166 457555598 380034534 28396432 707238777 1005157280 194826412 22615673 940917287 533960315 566430635 805413534 652829856 19542009 219654245 737696054 676537655 364651283 788870325 39991523 408819166 175174107 308113249 536724152 630062182 889651876 502166209 838633052 747801973 282238422 883331117 609588427 451803508 922149325 785757683 927433867 240367441 338471984 54186785 589473152 186931788 120488505 798164743 176542442 978368773 308962831 1054520435 1051346846 445732082 827266431 879798716 906402883 359351586 750150557 676064488 416124402 306943599 3310672 442583469 420859363 159570304 1063445961 659592067 497416686 380952339 415404045 994520433 1068894908 146277747 424214689 698198585 74223311 122541200 252687007 517634813 394616595 613054520 208292259 315772883 188874080 980616957 997746754 567421838 990138869 881979588 774746971 953978190 656440441 469620647 202020470 922500016 980531483 267668429 300785168 740928322 184867055 407937631 817938553 657908885 278628333 909367756 1041328969 351713867 859210014 112161583 647188953 508068865 422902959 674587097 1056207537 718864461 202389063 941375178 754217389 479323180 379031889 723704461 567702702 829940956 299631207 591445949 428859789 795251200 47838216 719397231 271746005 169076300 483654538 992363086 981104120 213100032 390336415 433571616 859257574 588601425 51220999 1057006727 1060099178 1001391852 217321276 180428746 774709065 308207809 461863834 1017532525 606935736 801175430 445403728 951563252 909144547 735898298 327428345 115945099 489889254 352186518 274551395 772709469 589336720 1017427826 443915561 1049109547 957104947 1033300424 348917514 940854376 38759894 112448721 974950203 472946944 582171180 78898478 272050014 549471490 426549965 224880237 768485237 58681384 232601464 629204566 929910926 699932975 374445029 112492791 787221314 819948151 598997785 675340436 311690072 166659534 245503709 1040693388 277452770 602102891 524055112 465852858 391193751 108340921 217514125 759813591 427421625 538959829 279773620 12583316 820472497 446487329 6322448 297266108 717330275 371745112 817102489 934766772 263481663 577482599 577036532 328509525 596322998 1026110986 889649877 309705347 84286705 993495606 1007792988 7043622 406249655 698867563 639432890 1002206041 764677842 513262648 608623676 426441853 588252098 920105988 278561012 89506934 683544506 949660089 424800418 912610539 181386295 873150679 302718395 577576224 34377211 292067019 640387979 499786351 192736305 772679216 558824728 783955069 912926338 637192505 476130576 63477871 326280159 74079718 832009291 77387598 391885399 67965766 303875407 1003022428 151624882 323268178 460290776 675853928 1069889336 822435112 511162537 178029392 470466955 382721075 701875472 703749171 414889579 719061128 117762028 496239666 674911460 999035716 432907222 824536156 8936453 804077088 73577276 263371837 847543129 696478403 1062334777 51072949 604248104 215775221 143219386 186408009 431667178 765191658 411160375 61927458 304605362 984425860 400239804 868904214 670977663 832027259 662702924 146363516 615885022 798760731 931485013 404658969 829997282 64746900 633064386 1072824985 960518607 321075577 265324472 320675515 280054240 882397934 1044403414 402180328 509367870 1056429926 443730723 816437157 1034872056 472203589 375807057 894566900 352058482 29909654 816760345 262972883 752730985 448843934 1063965897 664203971 665790824 58272733 85301830 942107621 683693069 409068659 917189854 108725826 1000085368 754423216 1044697881 154006236 719400823 764474487 792694772 755280755 439876947 411309933 559040435 445257461 260463143 1068741809 302529790 1034447557 1051655420 376542902 900111535 839702778 443393467 709710409 555714114 696943768 792164073 940096207 1003850099 1034180124 718390372 751931760 677506915 428108757 630601618 487403429 556954330 695889072 1072012433 403599971 511853277 422835595 991956084 832054645 519125917 1036173134 44004936 566920178 1034770750 1027808830 628300001 245564409 1047382254 746759995 450022617 612961891 497915702 991301640 976478834 420603816 538619210 1031961885 944289668 676962007 714994859 175694622 690859885 976268600 601351274 767026666 390289052 479756189 731559310 895803249 649379725 935217639 963240222 958026985 737061222 539444330 22398036 838279519 393159740 1040694085 112233792 774299204 879587221 848740744 823145986 533480169 537576975 598176652 958420437 1022038801 544743139 436119417 309593082 387560035 336030344 271807200 578538787 134364494 84774263 561696811 948533305 350916580 55214231 197052283 156309799 433313371 875304889 197309065 287326368 772905473 642981639 394139280 1003982722 13927270 623083581 681505752 314367870 1831079 536872978 761763682 37289355 396546674 99041555 775394692 568569568 772095266 325544713 579612368 527714171 198735236 497146103 43505299 802404776 973397026 989708316 82018558 348780964 939531843 1034868673 479951532 180187610 114186028 721317270 85140565 98805366 233532358 595648563 1001343538 674029250 780440113 761843050 221901775 867561890 818564345 764951210 949387874 290803212 212892844 41606931 576931271 395660597 341049237 573178190 213802167 210004409 294091063 829437886 498582840 601246119 777834700 1055263056 618233558 245514016 1058538130 589732913 235411173 115757249 271524293 325676354 369815270 901643227 470756017 315080203 362705473 1000899784 308776892 598904097 547759836 529414786 1003890373 1052506108 1017166585 978843765 358720343 1029404325 774649404 440799582 730373040 825601824 185993711 303454709 625361355 925271400 593470566 608344578 541138139 754834858 19148652 903389492 475474339 591622032 627213586 918395564 1046576194 108533025 195641459 919709390 270629575 158852637 574391787 421645032 453643661 456340385 711201918 273010121 101474382 958724866 872735014 183907215 111685524 886787570 233547627 632341944 920806660 141370535 919348380 745238158 359473680 934018817 76749186 864509020 782181722 1016307621 1061339385 328615111 64974077 284943454 642053440 87478579 744895017 799373930 627480617 573956313 90984947 513566292 516814399 455688549 33625764 562770529 400818977 821978970 70983385 881907005 505015022 283802531 486830039 478546518 908635123 746321093 770860221 959664152 435214270 197318723 107518026 555284531 786450338 137793905 766643853 366289822 552913295 394043511 836851107 126176828 301195237 371664969 789845870 362208331 1058810482 256096240 464971117 48761261 745250537 1015357054 294117410 658528173 950854882 975831307 612173036 555087759 63327301 194550246 798609528 151837000 142045103 866161418 484898593 763927345 994972997 573674306 425544470 333821828 558226840 602732390 706838529 296751627 447249836 808373777 926899221 640300836 941552986 750308715 1045119281 648823628 664846001 489660215 65590319 630548252 257314198 1059842153 336107767 915612492 417250584 284999402 99385928 442023549 567150753 196998723 518661946 134871810 80675898 971216091 710877272 1035001631 526745171 626772874 350364338 58140199 188756059 857063306 661485768 76504261 311970082 601110487 393681397 74054457 335802856 1048707677 830108027 909983049 96041850 320978117 736738001 872381317 936399786 491926034 1062875325 981293869 387095718 941660819 603354241 988077759 420505676 63832275 152831059 415674616 201015073 938058659 925117474 979881546 328529814 863583470 563554730 799431174 571836968 782621286 839478428 392432560 252841790 800293609 663279452 354050972 721878310 516998898 508345177 619989918 326511992 348767429 110628722 920113036 675914518 401465595 382704982 251235480 192873030 413271826 1014826450 707240277 434284937 240552797 290657278 236061971 691296445 700026203 233649572 309022592 984569033 850900708 609084622 327285473 991673759 469027833 735251758 86917410 797931899 55294710 927876048 753163211 450057377 710472344 263604228 366641274 427216739 1028582551 897094433 1035927550 729246069 492725413 38293964 287537764 1028751285 233846810 408640887 911639306 101102523 971339717 245801472 647407176 670994964 980071039 11460391 332198671 680783817 837392172 6747098 511848007 835837804 974552582 310832907 949913910 367859783 797729359 1006435533 363094780 772197533 283561702 1030508802 308605494 66182800 870197949 708137725 494656245 969324249 754564196 669140011 312244989 290516167 389988447 375016769 620233471 993535356 775718349 704187494 565322443 608662164 430375379 887647026 122156757 21934354 475349658 509268917 784558712 573799597 902905325 12122867 515686569 185154821 65380452 942364753 111593384 291378264 558260024 708724771 413766140 94062238 495405969 870100639 14462047 1073088878 1011220825 610077008 194334195 457947195 579555810 971734116 734322894 683248032 144583946 265706094 202174090 26731816 761903831 653020867 989574878 392241852 456048785 443310797 1011645172 371622301 440981026 630145417 1022142117 575397157 493335399 387681845 728415356 422189586 783107039 292034845 717832810 653718819 392415100 10410084 894792149 353460374 965624354 392720162 94312186 863763577 850770537 47729443 493260557 458761948 202571352 296167991 258932601 648969610 284201409 170638915 261458181 220042466 189336169 670820779 522979930 463658562 1007790109 194490625 81451820 650298397 1012304285 786790234 825425122 950693149 474170317 265721186 809721964 920924259 596334611 747702336 422451168 89764898 686631226 486896123 1012199075 992761662 739653567 523132499 678728376 289922618 260959258 953064950 280264089 386886035 1003170711 770892568 119153984 429074028 869066326 249646184 794417091 1049241149 104538413 380570331 208406258 332174446 270718705 468787609 1068848364 3220551 824570010 442257701 1070493033 94531934 676621290 998911464 642231784 257918739 678004768 296977128 91431052 482365404 593666268 920318408 641346573 1020109440 95531667 440272177 1044323682 762158948 411973517 454025994 456793585 1008928211 281849591 582065843 512139934 553023129 367500822 550328093 670044329 235789653 248842534 617146074 497949222 898216265 1026964429 209369039 983741687 231633366 480016695 861258422 217174244 401270353 1049457258 599429655 895952717 719211218 51964776 847436312 493216871 599090085 1043153941 930313011 133511820 350531739 239996354 580445135 836848683 595900607 778423167 859194860 177562871 418267485 111955213 18225614 849293822 466167129 416413820 921703231 1014759684 768334226 342102180 955941744 1008684591 1022821304 310679547 126396466 614940093 173724165 182372006 847665538 882554887 734989704 966217322 712759923 1035663670 626344333 780550324 634566435 678345136 699733863 313404043 730417241 582888286 829057534 316639396 781269522 519961753 758712623 610085762 851479137 513087698 785847251 127948487 102094829 702341797 584540859 255864851 418375461 641553896 126983363 335775240 961743448 127864666 927475024 737773274 523423887 227901906 951189644 326034688 313856546 709640999 649889913 339027703 504371623 41755017 999333239 722837355 182329641 760638305 582084676 755419471 680977459 18347748 85648603 599241867 491038111 998841257 1060561692 2888802 457610569 162654801 89910879 268881918 417246733 25225855 387881849 387191132 308972069 918090936 765442416 927981153 918803827 83732882 717738829 85915711 510049957 478205956 637375308 851076995 592357656 766863345 565083182 464378265 616952244 440318810 526772648 317668651 1006664160 123192302 690652250 731014712 1009147661 271547559 661398654 330204450 897684066 444872904 57953880 849692535 372471998 82383000 859740015 621740394 684127325 126556909 574254880 584028840 185445889 407028614 715099540 276557324 405657755 221589319 13751245 127307848 19874493 884146073 839246513 856389258 564850794 918199905 644253345 484490234 1049720600 12178669 1066437469 595821394 757755685 1072678210 341314982 390115645 666054572 772844553 947792736 866360375 499196455 32525977 756749118 354955101 126277472 733657571 998338410 1001047718 951813085 963804690 356388639 67603468 629724037 66199510 449717441 474038285 243289545 718089351 749769236 940616501 363586892 586913377 850548324 769103021 963116669 522018901 118007460 771723518 934697776 927199941 393432840 636346332 412680551 782609399 892473410 558618552 311459820 722799728 518747099 271771246 407609207 928022262 409197048 61559575 865338586 990353602 5522314 719300302 159137921 79900445 249063934 812640316 375015349 1022564209 667294863 201352841 214532405 174645123 244707723 945324549 648005861 142506145 1008945256 690636238 612327813 1059441269 523165013 455674371 189564360 386712908 439117684 328591438 974893292 803105948 491427194 6471265 557151281 107918219 1038767268 328655083 372863787 604303437 623745590 931871195 798806042 265268622 468890308 1615188 336752731 418428260 982193532 1021183255 536036003 583294364 426079364 242807976 436166784 782146935 423395578 1037706924 636084294 227058865 566555008 584463362 632277905 930026982 145805560 753517660 866061405 1045186612 810589759 197621334 619917642 447305501 322060732 647653651 953709203 680933255 182222420 522679428 720808649 899344607 483041910 690211884 207056068 518117467 1068057885 314062085 1012697284 845716701 492606436 684485671 103920495 227120893 337303434 526316758 799419165 664184816 1001218838 244947805 575119774 463427818 1068189384 232294871 191688983 606093216 324055637 434919516 591503992 544066360 955349174 372576769 927215103 136181800 575443650 675489978 35089385 469654825 149522917 909777268 562158811 809630538 19910730 424275510 777586114 782665444 528020107 596414657 336966434 9228918 946116694 253942091 865016873 207271660 678812691 472137803 482283251 161038814 202485388 803556332 676049806 381187290 257305036 925493953 192043590 395890012 1035075125 921465574 808479338 16060745 780780685 433769059 110883077 388185784 509822808 677944158 276415807 888520465 913348677 78040459 1027968100 157698934 175173155 956335830 1059755132 290741300 288896725 48871115 713802622 701585708 441419635 119816340 533446560 300662355 1066908739 738143919 24125069 154241305 938415289 144871144 785600043 630535817 633661838 503500465 306093899 637550741 351724245 536029261 9173555 827162548 334677561 774289413 696152104 507008448 243756548 677987620 602033312 140973339 476579476 658222825 576416497 358354266 283572426 233922449 870821483 516095087 797090291 205323005 793611408 782039257 643906489 367809742 790440438 66401653 797777169 929061298 763130786 872100550 446241445 306314968 388520750 249892683 1060018044 264729735 221595789 789446374 452368568 1052433329 257283138 957706883 799610266 664178193 457652735 859015688 661965660 280347274 390857532 485949918 432223574 901139042 1060881312 602827031 683581241 407945285 225619191 222233795 223648659 40574699 703999845 141080330 247031636 585971533 73016873 726690715 101934849 103419534 193631327 502388918 894430574 276751697 486094478 1001280621 224064037 540653398 472185133 873566675 376667302 964731286 630051492 228157517 672694975 362997898 789192672 718273612 145067743 867769132 769428651 640662435 816210125 332004369 251293665 784364543 692650073 824291550 972026664 547277240 744600552 422992180 204868179 308040397 256959052 946544651 1019754558 162777268 392461237 897339942 1028327387 484645134 625546631 553515386 746197403 657908292 828185218 17509081 671057297 686897838 551799925 240862056 749421307 363379259 655601214 308977206 344021472 770194413 1004197761 135591056 780848773 1056805262 659771567 336652287 742269274 195542560 434052600 686530414 176077509 21280104 452174401 17873448 938811527 82425059 369854319 775059051 266430780 986533277 743855224 321078144 50689029 875346971 216838181 999562166 712077354 435558596 338414271 120044843 668772945 897797256 751449684 523550374 37436236 333477585 678240669 473209097 390426253 670000794 591188381 183603011 954368629 961230544 1034489304 192410861 107406535 397729005 820773159 116897761 183947687 245668630 735699146 65607343 994164953 23194120 944146085 397133509 905493738 675863899 87306509 317447644 322004002 557911387 708875143 25661917 784439091 990257610 174350352 787434581 108521911 578359336 136762732 664393493 7767037 42355297 338214060 842425910 141840307 662996280 1027756724 690415362 755758242 245042527 732821501 224963518 529145167 107294298 198166961 224730032 685310780 811328870 925907492 305302320 921350392 973559243 12179673 19725793 319662254 159685851 207542881 187702689 372897204 587272419 292920590 227546388 550900659 620969476 370840032 117251937 623253312 315050512 571712418 694027456 25154105 287195655 123569947 809429032 1045902486 112259082 191534636 134264608 77738779 673991002 206774063 470251655 303392475 411050658 791770489 673304447 393585807 206977807 263793308 792018888 791275690 85312559 109682051 83098090 76538952 725210101 145505998 873550072 486598675 131098195 641002507 922657006 638564269 905118045 55554383 127374065 611087227 434411869 285284197 572302995 284901145 281805878 706292768 217393392 347957978 736404504 432265648 104387385 449624498 637081365 684359248 588602286 372627854 250573151 296338524 328652027 375595835 905942848 469908897 987073120 169048552 569615572 301186281 632436777 1007940394 143521456 117478051 913916086 664052374 564554404 597036848 273358713 282277033 44321923 1019338689 888192469 402485010 571559512 358766781 339324557 886977380 854445622 992802208 887532151 801279314 332625003 834410250 3965294 391700341 71500193 244692239 404589834 387689834 720015160 74629531 208579966 551088306 1013508068 459342171 347413773 70472699 45514872 624250991 752076570 205991993 586540936 1012083264 996795515 735604616 1010933424 732870969 540311693 909673055 31355872 910169315 329942620 106866576 28884791 85449057 52795397 416100891 397202340 473191485 359553303 608238334 988748417 873968692 415886601 629679666 798978977 49613939 659882057 710661549 847277121 88163726 214780844 151129978 518599422 1008287073 45742970 169641657 742781018 398063469 231150505 476968162 1067435007 79170782 704598266 942364447 503241155 562061856 103257239 733808746 452292466 1033313685 599440938 602457722 148729819 249417918 550981211 758625769 1018474708 9552254 530009702 450280765 53970619 579443505 1032685595 682070174 872740302 632249304 55947639 882522391 426215879 1029032139 593912950 139009814 939448014 1070122914 303522052 38803574 81242415 985023683 133895642 477179248 809309762 68484549 565762158 542013598 55656871 113828766 182640786 799423608 980662552 925695171 173236406 557301557 320172897 160899453 102584405 243543859 843570206 569153774 231031126 462311079 260477709 805817788 587114974 799901687 649343415 388401383 629976413 679787639 509715657 1012655968 392294449 488134760 232479991 91309212 652585058 1031331284 757890418 824821424 45519705 646158660 250032754 44085770 472212776 282091219 388087154 955214688 229467156 484368107 403447850 721894324 84456465 447797049 904660926 85238447 907487287 574628972 880420759 410153136 680932298 343085000 255801410 59814369 516364558 458839864 176358877 726266317 1031959366 414317885 703221239 666001133 998576668 890968090 272839772 216465425 1000656794 513392873 843299844 288298158 824050968 63796548 226990849 147565127 18892566 772269615 910026995 857646930 265296659 122569889 41924942 337818953 345044767 320985949 547734187 630906205 486979786 444023752 739331659 1058704749 939506901 513636761 341064077 845007642 359626518 813837607 973823089 876771575 711986874 286171096 430344646 574368472 336476567 13628410 91774824 885887832 935142118 1044721549 898975412 348040951 552156579 390687455 960785105 351750 344904981 522651201 662332397 187712437 989549528 697974640 767363733 82416678 436702541 35218858 609610397 979001529 220641775 406416168 525606346 265740721 285613028 1014804217 200316168 92716112 525414916 903361564 33042811 458715498 544103855 614711793 1025898217 300676851 705868852 680443417 670864387 449624038 477124594 200022801 230900125 622291725 373752245 833149899 78575096 997178701 276921691 883940092 180871649 844035103 849586932 884097808 1001283108 485526086 478487723 38068818 966510293 455495230 904204953 337645977 15885997 430617839 453444951 1059518563 768010710 881425498 155668070 109112735 329667531 930517821 890316181 956772337 1047028617 664536354 155563739 27382290 598915297 53430367 970444850 141822488 522122483 853677238 119012925 923532799 351574900 841848883 76371948 733941521 513854482 1048342179 252080423 860129590 593454529 541221065 13236966 430813682 347635124 886420675 1065707145 891215108 899395299 381416634 163117561 243742239 861497492 81785950 411023095 1003801433 396908765 733272974 937182341 222560272 896125609 949175378 546557659 386411418 154200427 677458891 388892570 227544866 637766568 417119272 367697065 362075570 919158162 10386013 264619702 124748566 412470002 172466135 50753008 637810478 319170733 848670817 186610668 343008130 832095955 927211143 227483792 1023257768 179493 794602822 510608425 256049881 959047671 784509104 760614160 903418008 941247388 845550079 1050469951 711673492 558231807 642186597 911163118 306636058 295716298 993975646 549398465 438809499 356288167 457999417 377872551 777096182 10922495 1007137040 171497745 460195917 799691631 698230857 48047055 314151253 200501753 1024835067 292240587 1008704127 847791530 1049384364 410539974 777020326 417765712 358685995 516360530 1036549969 592611394 379428748 69621488 715835762 274510020 424610722 294341267 574591732 144411675 654578191 617534973 1014997125 1057359644 773539964 244095942 196006433 43252929 404769644 1017389108 647708892 322988132 409567909 1072952521 741872490 798931127 815399686 220290709 2476699 753811051 81253493 628561266 287627966 191510970 793849146 335028250 992124331 354593313 988019722 322011064 935404072 215382538 12891593 1032453742 34577575 483938312 300812406 462733994 181389273 518746688 865372682 249051765 283925062 613966565 324966384 181790560 77025145 425303241 981435302 685269723 332720459 213086704 827029718 70761431 487886792 388536119 862091168 613368033 13175719 1007468363 309179137 36938027 379825535 755204147 674763668 744476929 884540099 338068878 440800025 924488840 819135890 601290954 1023117413 851132574 171183350 1049062873 465437226 261522033 1002293147 873155101 202262772 342580428 366492627 112198196 388523523 96317798 296233116 262914336 202827460 623298312 750617518 331682277 233631670 583479767 78744275 763659782 467655878 596744350 588364655 73567179 826279205 462171338 458759749 668342246 937166432 341727056 783519527 22054229 1049003655 631805329 15828868 1070134909 723888203 548567053 452342996 698639324 586274496 447021225 147565912 330760364 37368843 393245091 548978950 909755075 185373992 369444114 60030880 479839774 552939714 467416079 802569485 896211368 913137536 106459478 764617808 373446317 582833402 569841112 1024169720 914241707 521567420 321133096 723535294 915954605 844369774 930299750 212544390 643550073 122688601 839628296 58987347 165393861 226287733 326477950 120004892 378400926 590029031 866809828 337823659 675870457 142921150 413806002 780268645 470631819 854076673 778080295 321655639 1000272625 13196913 978040015 964658600 840502707 636251150 553727039 990264564 858529992 880746468 981230884 613137882 1028815639 514950990 62932493 394027031 45614465 454522112 68949528 525858100 891605487 340961651 953729339 1008496563 739095754 175074439 497990188 157663962 820256546 803553867 900271297 923513664 766418578 669284593 778907473 161644232 857829292 604448845 753337766 343431797 1009369622 62836925 780031374 466183628 146341844 93676904 54419182 1026005629 215038695 920984458 558421360 672838618 95535618 789273341 46144574 894040896 236005222 922366079 553182999 734848929 97627241 645770243 1050157429 7869945 875042595 611025194 765446169 64671353 376912417 656808932 100767783 203335507 839142887 164607254 450137433 493635744 853957456 745170942 957393911 201278209 807877755 874722051 1024739734 314340090 950433805 686550714 512789330 360373112 716805542 605074671 57170424 537973768 295227819 634883781 584891774 657179574 913066427 574804658 337984940 593562594 5230271 159952393 431941743 853655020 106780371 594703205 263362414 326137439 520908096 293731789 461767317 103914302 878979567 17004309 870988087 877621369 746885235 319584769 64742451 867504499 364222739 95579566 422448572 10289082 399827666 732021005 180146822 794090873 869392775 384876878 351997091 933876434 1038544187 908300617 392912345 233886873 759469625 382143584 165561473 79368891 181025133 932140007 195569694 1045703506 569957776 472566099 76753908 1034982336 901025500 444290445 152564162 410120145 878503598 488847449 177972131 245573999 994464550 662349989 742323496 972930638 847450713 580032084 40105760 367217934 277676734 700501254 158839796 562899814 7220915 1030855511 114575139 474672288 936241878 187095685 277737553 230319907 978896019 381834870 567806907 167744764 49640362 806028178 806474507 743361600 282400225 110256287 906811079 424145038 254154533 566903770 109065753 525191500 26392210 1061884909 441408121 27490115 1014603425 841933477 586331292 167646747 338476471 975933106 422622518 895250746 362496953 860521661 462634530 576427231 102827511 1025635805 478173735 204870914 303179827 1046584344 635628807 858591552 11977664 404117831 442477800 1035237504 609890399 632548191 1027522637 574854994 305331221 345585668 550494244 151052052 953143578 788525087 944599043 475076349 648741143 691036960 402325826 452569605 852629007 958605276 138056812 796267247 731164250 737925558 723742136 153484977 77656520 342900212 902743997 280442293 684558066 249867970 84291606 610352810 429458425 913852040 442742980 721982830 785480495 975377513 977572775 706688373 961124205 45707680 980949074 977854748 52617800 880681550 853594727 822211356 173951444 167103525 874048764 714409526 462494773 778772298 344095437 791695744 325377860 670861835 644936852 1031946920 1065768923 433140715 903985563 235868236 746247933 67360217 312892778 284658344 898282006 468233969 89526791 737983558 19138996 546576883 972780285 462538168 609801581 931024656 621677688 602989862 884427456 431341270 38162863 371971351 206090640 937962347 63169182 583003062 1072522507 863198624 117981484 684256492 969042164 233751475 298419992 984345221 1017583421 844477184 380603892 1038840462 69203900 219503646 448627419 541965083 201083087 736312966 742455775 848919097 666498635 388363744 339903755 808912314 671372186 678844071 394272457 552734966 585847655 706270871 203157161 715636843 1046750436 82053783 133181892 896428675 1035632299 591755418 91643599 900402288 6905302 688426176 552441627 328856958 942343955 1000178687 194889704 383865712 1070311692 647470336 49559387 683878221 283793664 953814515 539890429 597722370 804517815 498989362 33525285 268079664 957542548 341053655 303253909 885018199 976817508 371267521 502644579 1046302461 779708582 211040719 195650107 56975267 68155035 718960363 925775935 584770359 881380212 992995397 164005723 637694523 560513253 213010263 541108018 552646074 501605102 484885624 980753 676191455 14921251 122271153 506094869 251151537 10924444 948877288 999195495 912074002 377930095 932372114 566075754 95501463 942089547 903544153 960060618 990655466 198017321 860704777 242438212 319951373 938333307 697796160 146211669 867788731 1049838417 1071688343 875518411 772622808 322318774 143347105 670614955 756478482 822124320 1008277203 130878087 1006164033 683142439 24985397 876545499 442665799 81700301 524976063 593639177 929430152 657882170 1040130238 876816514 388977618 336297835 442561526 839254797 60191991 916594108 441893193 225469282 284490397 360114903 605329930 717238763 213638249 1037016902 468646094 958903087 1041803639 987016566 346153364 55105036 584665149 455612636 152351131 177495144 143943826 829708858 241082735 296938918 119587266 527808693 1050229958 818107633 236289198 173842494 253168263 634031323 139296638 672219509 356076834 255004049 622135624 615540372 526103114 121686716 626007766 971977657 778050480 161489636 878755413 1066034677 64874367 644872992 823006895 948195454 664621550 724104743 158597231 1028288003 539239708 6842968 807149815 881654601 941202488 724353950 1039369322 96047027 512030735 111156593 1015497980 458329331 442756026 537185838 120779964 721750645 879396827 656917273 82504828 737797271 805496298 82144129 1042993906 249252285 627071956 389388422 313357369 153792284 82052989 992546586 313287767 151224961 573417279 691924366 151845166 114971955 512426949 879965664 317397136 263596177 603789761 547295777 229088618 651256275 837535287 499381940 178944955 541618799 14354913 712813368 324360454 1007808336 496099060 385181863 759066099 303867236 838053457 232344280 71855746 698903353 616098372 319656988 132468980 763588496 665975886 927236029 938285313 532260947 54083718 609461672 843772319 3405099 681598634 507005697 994407439 641671517 362217274 813404978 495336126 697363339 579807621 1015363403 41634012 341815279 551465149 33464398 1072837101 355361235 973616132 172712112 656085843 347080747 920470623 22240087 95348769 959974690 827037299 224393867 516034685 975189550 269132625 813311824 438217434 263157943 903232209 279961224 394587632 1020690637 310465063 184560747 757690578 869974140 674874609 951049377 1044048692 425192113 742997964 372925432 325437978 843225468 414617314 700163390 845556955 912143335 262562568 724458863 633636956 74047259 758690503 640550966 1037737465 759200329 1007900076 470873747 543538280 851322065 414537173 856548476 83703408 157993824 535337165 800901444 503492963 677087552 52995412 8629069 957135456 343500077 872896002 70000179 325389117 174190066 162925725 793270454 315127324 728050056 641892323 597433722 497207504 335824047 571033673 239235978 881374484 718732195 733618997 767869631 548135010 73083587 59951670 457285475 997962798 1014710379 827223390 813942446 597727033 257698756 91525478 750289559 608801163 341954727 124613158 520374093 1003095833 832492238 72516153 499912563 1034524351 862726223 779004906 67626413 604377081 351242737 708434368 808855936 705466405 52076748 665007844 92944629 786187595 143453027 555660157 292930729 417015958 208642638 712082814 458135028 344194115 2538021 420893539 666114689 332932842 841072001 883616487 401176398 103936154 246633580 1062589071 441110465 808731674 519436390 247082007 393351341 260846058 205217634 832374666 274347756 393436687 175647045 695394061 907617557 933755856 850141491 142007362 623130196 13142404 775909305 575167949 204792917 529703224 852409250 471231032 511275793 316090492 436183759 404678958 358305982 260284968 366882157 605241832 600621199 260432691 441964322 104639032 133361072 835106164 25401380 119073879 664284922 725494728 295467867 122376280 132598652 792108535 225238124 477280186 524266932 201368777 464475115 509353209 349494880 12587165 279011022 126236132 956291224 891763194 188897503 978204358 508237426 678400452 469445873 971776096 129037096 744752804 325419262 837537098 849531443 577447383 510990924 225967188 665714740 712176440 673808381 1016866402 63770770 1054435227 673133897 152092051 371944595 627025264 802221989 489055234 545227906 344609083 747108998 193245482 545753607 93882417 758360533 398668906 28404753 896549792 432467021 509579128 548478498 173058119 363918981 216194431 951687180 50755355 418231236 700054047 1036580138 51075296 613918794 817940227 88903338 783173410 123122113 688609565 29571193 496325652 1072498757 101403040 831007764 68867557 639689661 136574126 866761687 81494648 522614455 332540275 597096859 785603814 852750433 808743064 220502651 712093036 734652878 417667074 1002657048 680595840 299820052 472096502 159755450 760671000 1006920828 244223840 294653654 557298297 795360762 892544986 766984903 345059397 612114787 926496651 129639343 1018123027 188783539 1073623843 83960159 695132751 647582103 474866069 912085807 774022660 889916328 177578209 733559998 824240253 27043525 228910788 355631465 117352705 924174369 930447366 322516865 180897582 879529496 731105985 547475616 516619815 576868463 758033528 534042822 791053398 199317058 978547633 152566769 1040785195 922371355 545371674 938583785 526579876 347520459 518784035 1066255821 328669865 445172083 371377351 967964879 738847347 727621535 440561275 813888923 274108013 619035827 468849729 134050185 180076089 201794152 612067422 394852249 519776880 264875715 645275557 227352531 729953009 110467301 208906719 531504775 4093280 486752028 723539914 172496782 755501884 113321714 1024310008 336423706 646368448 840830114 465443446 268656380 620338865 545893557 477827447 436985955 978538599 542026373 209433688 717011403 415392990 73027037 918209627 259494325 891269459 949222152 547363341 858591717 570141210 862653887 800027683 527299388 760784318 909628933 384764349 4912752 1002120463 529104344 768005175 884169226 906761429 328195577 406251799 437693683 908728862 213615454 219455372 702929919 197500697 506450508 893163138 643271708 915095561 657732862 798276770 992446057 41821876 540701162 608825304 1065957229 389598451 1049144789 1036104369 989680037 1063995679 969819753 169282287 930129892 873291849 33244796 929251159 483197469 543087270 143369803 1062801884 5886763 177788562 732275143 649837551 1048048029 957043720 745453174 176684777 785091662 1007507483 894678735 831648258 318213487 431385287 406673513 794158507 473206727 981019770 455849880 132960866 638420436 55666848 953324020 167767634 709008916 887688270 455703316 748593475 437965589 1031933798 767590341 53456408 70227699 625217421 399179565 18183573 28587830 322178078 250862620 274322742 801375062 823590917 806055552 765605672 753496803 611285476 924653422 438669770 978064247 139869926 692234696 691558015 970411147 929318426 574173162 314579484 262344113 366572986 392645053 445785968 376381131 293662504 101008801 416316316 603165941 261616154 215840270 662196913 889017775 158984677 90794212 1016621649 463134403 334992534 513200451 806391870 386637765 1011148237 1017023464 19268582 192720828 140266350 87365750 842578178 274252156 30003821 633669946 532461113 544000836 879568062 1034172981 1008152152 395406679 502673674 894465859 262381750 510835348 957970788 887614729 780308700 945609750 328471467 784451201 434994376 192142561 636240510 528121187 139714431 1015269482 352682843 239579728 821486504 496396454 850502660 758270475 776340678 104199769 830456175 99341015 748462784 1049695573 456086073 451081869 896887488 189481031 734634554 839777228 526936250 608398786 348769952 488714406 1024217495 832605057 396683401 461632283 448104046 377165095 171676256 496202556 246068674 866203025 203965734 579390388 142711244 503343941 45477431 475106110 994805418 578087584 200674205 423818825 932722474 801888331 536698001 374306480 497193258 401836423 644501780 73125488 145137009 388351961 737273770 704522416 865976281 713234597 435044498 246559036 802223238 981050068 297356258 584146730 633995915 867116841 177322908 250665007 462830426 675606719 370119750 888996349 630098786 123488341 609964921 163942216 859678588 570672967 675856660 621167121 840311705 990045573 992069377 223540819 601477029 139904094 471750244 368164171 85256085 78929718 268742630 408030046 472995983 90972322 1008769443 411711192 985623068 378367522 792265361 464181404 359090602 553018908 473248026 636178756 753163895 3560183 637453548 650948898 436750084 474583393 413838865 674139576 282470538 193764245 447046165 692953630 929181127 448062548 1040742919 592082155 209514613 949283309 632213008 351107607 910332101 978572737 438457495 36467116 794241538 1062823935 610134890 747509552 721600698 407726744 551886869 890536763 963257410 319936676 264082925 583716255 472920471 61349883 956100403 301647639 940593785 1044349075 984840269 777690686 129853299 949140359 44887025 484453136 576273515 232029178 841441215 308946053 837011639 568715145 650848843 590954877 573275347 381294396 351205230 288598884 1009072928 202031530 682843485 839285947 649112756 483929979 951743251 296528479 370902071 1036459449 713729343 995187397 572682550 518426961 155258526 402249027 719559009 254434440 788709480 1046478011 133435105 1024757856 791488139 589846008 498903041 806916339 753192744 892145282 984090795 250165270 521437541 1013050502 340682326 281315877 159542439 637727525 1024217926 724575115 99798018 1045545119 223256495 163965311 780512445 192325565 400858925 180919161 64508202 968815807 444034614 865676753 403503614 785515081 224379854 971953560 951502153 962677749 427471771 757172776 764191220 449172628 570876646 451822919 1066841050 517679712 156562902 393943005 937584886 953863501 406273814 833451959 465899458 572697659 801082900 571522109 206508851 34971578 1043476518 845049145 313451634 679073228 866345921 837097528 914703829 25760493 1025609238 342428390 765417011 497147168 252015903 269690224 984209515 183093983 824093706 169979360 209817607 954071627 1047414220 795956475 160064751 77461250 762836972 494662662 334845429 583681808 415403489 612869328 89737697 781739757 278677198 1070242193 527641446 155793441 1871665 135582495 232285872 948375518 723225950 730770579 902227599 175118242 50542822 812356826 320941421 558449448 209860522 114205122 106233134 377563750 121323308 406519448 41506926 881447957 363159290 207705883 480519185 1042828589 743051583 659629641 964137357 334291610 732503373 879966572 888518568 822105237 268363572 76065530 890558010 451270493 202132566 795659158 1026880443 585076880 295178862 507491763 642969264 281855325 600980785 793980177 10275555 792588363 162765992 143161142 211187447 766898669 402120127 496986575 496578485 374928544 747194246 139894469 42192516 704061248 580061003 209702688 906830440 891398762 579908340 366141762 533028353 854427813 748809434 249477473 185351106 104824276 585235374 613507482 565795053 158646459 734546810 683580155 582802066 390485788 950480521 987212544 508519710 428568615 245782742 495181516 84911980 1054146114 1068489366 990531284 564078484 515168853 80437800 223525490 378426842 158577416 719858547 204191547 879858602 648946517 153390024 327596757 842808422 346894504 1011720435 671667548 1004483538 514505014 1070975337 474123341 896687514 718946029 704255972 620507490 290289690 284687568 104777845 724109028 820217840 20856266 202989964 1045387072 716975434 470733442 365954234 818059815 305080753 311550659 722586247 272923938 531007067 538668077 516991244 298452446 925733877 678799710 234254832 122433871 161736523 286139633 369232384 522903549 524174044 922469658 651495704 164879742 829210481 143587841 149010081 108019989 21766675 909811589 122523055 554063396 448001537 598686855 698435099 4511640 919848798 34674524 309586557 327486805 293874209 1008181229 936457029 989031924 765233588 1040834970 637280880 561763349 583878319 443273904 371850678 855086314 208037164 776708553 192181119 1024310267 765768084 357848784 106576037 943123784 878964570 384267777 404141435 345135874 830089658 41828796 428206588 640404144 976183298 800715830 652482770 175284839 35976187 1006519330 913748735 172593026 431258406 711389606 63771004 448798276 202774322 643271128 244779122 601570046 656026382 682580971 773547237 811014632 182441873 601249462 255243529 923187112 641549353 210657588 84379631 26822825 629281851 372704415 536768078 887395531 775274070 74831811 654393508 174192830 951629830 800323384 70056348 720901482 714331188 873206926 1063749575 365447721 23907110 763060591 87549288 726758171 927808399 1071237915 243167298 713059427 874806392 308923994 875399837 297692074 640163897 253277265 607715795 632426472 726445755 719683255 758972745 393782907 1058941639 82998932 361721702 267076687 574201074 877245191 538758614 1031372059 55309204 69537384 250120373 103323028 762693623 571811821 559062257 912332509 339327818 92979932 939425510 149509280 918727017 586363008 503136964 945300445 485659228 178338394 839244360 440840274 555760973 341198737 603750051 345037165 710323694 768797192 367340486 241462859 476021387 328522957 871554725 258189241 876705486 682202316 1042944354 386425591 38128616 547878597 746950501 1009012060 531392301 521375738 605479143 986086163 661303243 179773864 1062926169 705911684 27080879 717176331 913699139 243124871 42202710 64984503 156089172 678507219 322780482 30779896 587775765 613408484 510882869 233606662 225169374 760696574 751760296 1024574270 371652640 802942653 351288593 321427862 224778588 352455500 613240820 317426841 30662589 220882989 911855077 955333722 967090004 1107146 41900730 875120811 1002384015 1064539524 995412350 931847101 149431132 753638560 651383989 921781146 1050706780 142733678 408787363 884283285 650306315 375746195 233093254 57385969 741322445 236314256 388078529 778498264 570315993 940363782 635504957 416373574 951225616 446551855 279497849 463554909 583840591 68998285 519787281 681387663 974489648 955973385 37303993 643414428 800285223 142105221 6215872 400039763 201084726 853784351 1041617992 867053574 298761129 827376614 153702796 687032233 774786943 1027453723 459105404 146540403 747483735 412916286 62890566 272224460 635568501 899776710 658334131 634332798 1012792285 1017072878 241315863 329722641 612883219 93272709 71982693 136091527 396056081 796066278 86043106 531514539 797557709 223212664 458319709 729182084 271283522 291861518 81081958 243838281 252464418 562324699 271795883 781159074 1010613033 996584522 17150975 792251058 350452535 902651754 944190440 40470705 840560662 762860235 271140572 1012476721 361825507 941081238 355243123 190741088 107137445 1040959750 56226783 384197475 650995489 56683336 414090936 749108170 74728534 775001885 910693420 686543726 278393290 313968720 697721139 150482525 686890220 721253516 488052560 334252755 860368755 742672079 811290101 350657857 179340715 693094143 193789077 330012822 632446531 839597580 561658728 305020047 645467148 859934422 972435482 343995451 960911825 663635623 410148057 410318596 121130281 605148761 806720502 470425566 651969864 722108978 362854861 1048180175 486986737 1010346148 523343154 716461860 1044907590 751918829 770366688 135377955 491267807 841576874 934191066 328994073 984593882 506470418 613557261 231619062 596587337 999121662 567206449 498641238 653999779 1300663 422978686 238062829 816239567 605289830 814019409 169040965 1016117265 517478804 399605098 811586674 26457637 601205641 579972116 157641923 704774662 568359464 976748916 480023337 1031932226 629658802 358543801 612681803 1059474899 201122077 101487569 358010809 901459906 769736398 539041493 187126588 247925766 208786594 10952086 875047133 24864552 458682785 437736287 223505372 182073738 421765709 814648041 798284660 199885942 253692948 370897330 217700972 1045158981 293134871 1007541406 782993181 175496267 1054524933 237579560 855860013 184039152 604424991 166881199 456815519 751513492 1045242885 450602608 1039963576 691087829 1030317020 833942950 469804107 224187111 520529374 209056462 715226254 804030895 901563378 915187271 77609227 921693017 626962802 867077219 805883954 742002539 1019953951 491001876 1024678903 1025951295 823495374 181615157 87450540 641749376 773680184 34642286 25456832 583840816 708034858 175614699 656565562 641647285 349447668 833825931 137887228 643882419 143427128 616929805 358163220 12628040 991605819 777181110 799587386 876863319 358809518 608849175 303792667 566562711 665681363 475199803 937377814 788547926 786068599 389951325 293114069 637365172 18998885 802103222 682310943 132760374 34762702 419667219 905030792 1018464558 937928777 340258714 799694654 273212442 63307492 284133745 885504559 971363298 1073323559 998902617 730007218 190715159 72722138 194706157 948727666 31353144 916456697 622251193 178423389 710437865 465328237 445445785 461468500 80742031 316912876 937797403 769870189 321358424 891458896 259852170 934110934 316735732 838411468 33692474 914790178 791663903 444354069 812190050 612100887 763967721 816085893 172695096 354703715 721785377 752102870 674201787 511059239 205717338 448507475 916093891 627030093 571903248 599987699 1064400857 42471036 454193431 904130173 799565781 836139422 46570023 105618666 468529547 250254952 1036849903 703574888 997023984 126788796 463644266 824423352 912139383 740493123 1003877539 641411222 30119216 652704507 735106999 100385687 253280591 837458510 132695386 247932486 1002775621 642513316 171997233 427070451 935944532 500721963 714901272 859026509 145808300 602331078 704034589 661132672 41516614 916469503 553133917 965211397 975177606 748308198 303847699 348292533 204790750 483596021 687995753 227229328 555908137 76304515 263808725 994371266 1069877397 915209969 984864025 621352057 105867806 874042604 1033797329 274025424 887003384 715454125 513620056 991737226 90319161 969948892 68602764 828640688 854054469 423563959 469524204 959957765 859167835 769366221 986559257 157259512 295720856 26561407 532544427 867035687 617801914 43043281 1012992649 815660456 362334235 148972468 765949970 622195265 287961614 539459798 1068119877 98650060 775029573 1065355249 175407673 292159396 540766884 562677538 989831320 128411426 1002606014 596828625 61863729 466213192 663976865 292522617 218877702 57249824 90281455 519182499 208794210 1011742002 726799395 595833386 551004437 649470495 978476891 490978167 973191320 389914044 513266937 110507779 672105638 717517089 143778920 912585258 978938933 347244468 451608333 855243111 827166090 214243743 403033696 797167746 66249638 85112803 310143598 922349956 714494034 280136504 853471839 26123295 374701721 628178927 124212800 1068091178 648484607 1036102317 376950306 151545255 469922951 1014010397 220817069 925643526 339023517 406819688 74317342 286295517 221807986 71593023 418782876 154150583 260178554 988946151 554400515 453716608 544174338 933627696 400677244 175388455 776123872 50445026 632962643 279102076 192840650 964412176 339217175 370745692 974647996 286989133 741260989 43281207 893240378 629089354 915635855 1047943274 775067645 969452317 697248772 27923072 283962100 12181763 563705942 795996727 122742130 947328927 143372008 86478198 951406122 1068765076 1034160680 788783921 847997061 534950800 627304144 723379463 902052776 888427399 78822949 941321441 299779983 901944375 677919118 445856537 54265061 828721975 285491407 7126623 1054595145 284381350 711126513 141225913 28516055 1012707756 435711190 713052979 1065872892 161828629 519223624 187298989 618484716 629496875 782945946 254333955 596110368 292285445 146000227 394312063 207268664 39825998 347003856 661623596 403365933 884978361 560129164 1004316749 637404263 69711876 67402681 582757197 659765716 645915716 794754750 603410136 36126194 732967196 659080035 338579876 89442432 280208279 848997018 488143552 788069143 309052955 950976573 297064866 734225825 581013638 591701905 153364655 502014384 504726417 395730201 547813507 1024227148 269063859 52202022 483537221 751729877 918962207 939198626 861245759 502605267 160361329 298567245 589347485 925688308 382691434 310336875 967513798 560534885 239205043 125927059 733349578 215539755 762322059 255951088 492462329 351952353 132304187 180555135 174015573 770725738 652805153 856790475 165277157 106136901 36515164 537063445 395017447 87824689 834011062 629184680 418034876 313975074 947833000 775591305 159772870 840337675 771591665 200993299 617955387 1007023267 29780447 1049939926 338432296 92102417 806954102 1020872599 454618123 104157425 606710232 982217758 839997627 608985176 266298779 888122774 954434509 733803459 546545140 455211216 19531277 291511839 574006230 125096198 240787242 823294332 656643421 804696174 1056342858 257181736 550604379 509773225 1050002295 448731406 134983018 793412021 1014495891 10583514 574747935 398370186 346548553 306172818 773760111 645125047 711484572 161294186 736410269 561046811 13588593 628140287 147231534 240412200 69018920 330212748 107164524 960298185 40766409 356116277 642803612 506249420 22000212 402281669 481122437 532334630 583438821 83760984 893309108 646611021 41081014 984797786 817399806 921011893 514261265 90762949 453392510 879566029 160847058 516927430 50506614 532339896 276166323 4097362 106217935 464854266 334912276 933908785 440422180 1023824399 234665241 811852929 769040053 55030058 455220964 1062602672 786026385 956942498 65174845 540329351 803199178 422157109 507776959 721296067 702432096 340300654 906632739 717572362 362382719 1065549038 661548068 661858683 705643677 353551316 435345938 703309230 811115372 152456396 505406931 812856674 124905217 432165231 241503234 241084136 236280273 281163798 652624044 687985147 9524274 237919066 132507968 395705840 904217835 796683025 702016779 907011559 736503264 975520955 565257444 728818975 141993594 830515468 771899516 749011639 455534045 140752291 413614339 128462072 345928352 682716529 336024823 198782157 1066391514 87170367 244328503 376132157 472658956 230220698 938059604 78938838 800008151 968659216 932559048 545087558 69698016 979413678 446891684 91686818 890138755 804582736 330665487 234416454 132066802 372290805 108294139 50820848 927084875 553695548 1041938990 508388926 964125328 352283062 773596164 571854901 782195345 712816411 1011358764 989388143 895111633 391555596 777324643 648233108 611977203 859235033 808422245 55670911 462036306 286357184 559592281 394205594 952195827 321384151 523408730 238675998 165696840 922848079 746423946 1033783881 998288024 607832718 633976327 523801556 504190903 386451512 74868321 736793183 819870993 18198442 701744941 942671064 98162176 245281312 935418673 128299026 549981510 505073563 877050060 242050414 116356982 341488980 520821713 542563767 663385590 613409712 1071186081 580596276 600625435 64416269 665896663 554471655 504912698 97977264 19721748 268385652 94285843 659535038 1072007382 598980246 1020212092 400277913 955016824 117283006 454098904 501461561 107290990 495775784 367786564 53812755 867032278 817067942 376851611 417050124 170823615 978055474 921500194 379447075 813425521 488199560 151837707 187846982 233630857 940600550 474377481 1050414587 1050402001 357695292 144388155 12443633 710985567 809239881 1046473207 122641807 388705205 573106505 820221776 734580614 428100333 275916704 159730019 640707276 397899252 1022652112 28343198 1073676774 59934692 1042654222 553806797 333777518 868164289 704426540 624265809 148332944 49086605 778825877 913992967 320655239 193948365 417035532 645867539 695510586 615446746 682536954 519347613 457727220 981664282 468782256 213865137 248290546 450329445 143984985 20289141 975882869 810300071 85784164 97950195 927812462 644523600 120526205 541887798 1044839092 496820747 507441709 951922480 463341642 13088599 559669565 150640096 665242857 498753881 173976038 865279610 278586833 1035377178 688471272 927286495 702884799 409738399 758246547 128607980 701420888 362407839 1047863906 132557533 633235610 500768784 602575303 483607927 864616930 519296771 417102346 6677283 58747913 798217851 751653512 943281579 584866589 659182556 798302564 856690826 970566332 684631209 566051997 639119617 876684068 901102948 708868321 42500772 345267070 188353906 28877858 671833803 445255324 762136236 870755050 993957356 1041145047 652718472 142303447 987736118 599666212 485230751 1000542145 533709271 320051175 142040005 301160422 402367815 225823223 695052593 118116152 6917670 739646163 36216218 744447673 719690800 1055294443 516030082 726334112 237569857 299328711 509814826 976518324 71487197 305586044 491966040 961439652 282299524 509460054 698181289 916558476 651990036 740889383 131780867 597655148 637470037 127279273 996467180 704245573 895973923 614606887 234251438 365663534 346048334 796598999 533386320 262906309 928021044 927152726 240684355 136431679 937829131 630809445 851340289 583468639 126632776 260729591 285683763 503607996 448647828 500586646 153592105 901877162 191567114 53912256 1002726869 996638436 265113618 350691454 407428728 697243878 790833899 777451292 402586435 121630080 931421771 651130871 613390154 932248135 165306691 671129404 624373864 101280714 342600279 574514751 233995838 815568923 592515157 367619681 465858408 641331271 867137734 767843001 342311438 531805495 398935268 938437647 47366884 286561977 919002734 876184531 517543724 653000644 557735418 413432371 1052832073 136669111 749530265 173520528 199039814 207360156 533740687 109227738 210505752 577673656 424572463 263230305 1038677343 380196524 686020306 581745782 405004213 807846734 711938571 769140729 1031169615 598778735 980288579 286152870 60265599 175946936 935207601 769608293 775265413 469352750 75586337 300424405 1039793664 791613946 408432533 585719813 765735802 297805829 8519946 970701161 750976581 387604909 420203693 821670201 268895216 559533179 1044487731 79434938 278441023 957197715 43045786 799578947 1041514988 998621714 305177369 270602931 1036258700 529268192 455872104 791946726 72254901 560781473 988423721 576549595 671664655 539074815 205825156 86909512 256299808 324241063 1015553580 561863099 120808907 346145764 601620088 3956141 727165669 176912841 470422582 40474189 90886898 23352583 245166034 78551447 958374333 499820878 32180685 217508659 1025258665 1061852468 143683544 410190422 148279597 199846923 53067582 509190929 598368318 177519020 380299258 652419474 800909441 386180462 1030370571 276502677 253297848 716565665 936208983 706300424 972951345 973716101 352582350 38091884 654544535 460296895 244478255 762017060 269009259 227714702 707829938 461193996 128872477 687571762 484080409 990981233 154585009 21586013 672852484 317165584 591327168 99017095 227285949 329381207 175651221 375110733 137506723 703651117 606363776 732763226 224763481 489969785 700100832 907398439 1023499660 821217009 225176292 985456996 50574709 845785982 463673513 358327900 138688398 1059996724 1042397629 878636603 610477864 352244884 478561558 490241292 1047546427 860947864 430697629 592941738 332158406 817458374 1050333306 504432758 138562056 1048301737 969866199 30394932 346635262 444165707 856287771 723247600 510640031 897962972 332714989 449514779 559763121 1055164394 41652336 154917306 668653257 733901048 517241806 1038803378 1057314191 325580388 974870998 196076558 868520805 211209020 983271356 598478143 551222329 353066806 416231455 1044550117 996370235 745475589 143752094 754366912 274063295 575259049 621992851 374900646 126874296 805659178 59250068 138690345 570661648 423291090 917640441 241371528 818484625 217138381 162646202 283089290 389634493 134810225 938397769 665613702 555742581 282532745 1038899509 108003165 966658349 29266228 552139827 39662729 1048453717 1024978097 135920593 796416382 660566707 106156831 12648078 628422493 191602082 247423335 605520656 1017379805 525816928 464628326 226395874 712217473 824195233 490867272 101329342 661464845 89080875 710028017 908508785 942872952 685287781 206042579 798093225 427361830 97033367 468272520 69118540 330993028 129744740 305027127 631685182 884987353 830837351 887462266 739821804 349684905 993726253 342508887 924469764 565142898 484244061 134579085 346048787 960505805 1002964951 547948234 9068766 321451121 1071663898 807739967 1003907878 789589750 592268162 434101382 373145498 937380136 858582632 908287059 214122907 36517146 1047493555 225816040 67250718 665897824 1070800756 993182408 44905803 938025990 612651647 232781830 957874773 846546820 913123744 828666471 899700466 1014632061 135095947 103318675 101298852 279816199 200523008 270645593 401858544 239989790 277970048 461798512 868236525 369005551 573267463 935476659 51359933 447178017 274065695 213810822 165251305 747424595 112499291 581288860 119565134 820497445 543965346 621051607 881430706 401849982 723069625 309689426 914480633 1021849049 337966808 946892763 350965904 924628586 823545137 823146540 109307268 559483602 741816363 838289395 423618797 929430097 922636074 696327587 769099185 333610032 829734387 524815346 766061826 298577845 441182458 673893418 614331325 909110895 348109175 995628469 355371147 914652723 12281731 71450865 782088521 6032762 873126466 773709907 650452692 933169277 592250649 671996023 876636908 701650938 392257171 557158225 517397506 367407169 346941770 839010585 115562816 1068659530 1038267821 1043633147 783781581 89062647 523195868 623977805 118813125 794673175 787794061 156831606 27309917 268437272 725204799 334950158 785870616 915215659 686557157 740994119 289488725 30915690 895405678 956578373 723990978 872414279 967347069 988512718 536251028 609401649 584343852 497649006 366045974 756438659 566619691 761724661 1025274083 708811226 459912381 229413780 291550940 369006715 371440689 67065603 914798918 336557350 155870363 819900006 1038020768 977468340 960762620 284347555 286132443 108800126 745477531 560612065 859211638 334888817 1061055790 852456441 1005543480 940196734 314256925 630836562 541412630 381139702 764802592 113296686 38124484 191048944 1009920632 298936663 178577306 488547292 930539026 401818771 542942624 874729151 318634389 692680204 801997740 608785608 160007027 207524209 17069419 926049216 19500177 503163665 522063294 101187146 757042935 373854534 19866562 224165046 188507381 395255407 931199764 376695096 1062090595 751699815 441974433 8241448 485244835 485331633 323434122 973405221 538392483 110991640 84383229 694165164 78154002 225599617 419287391 313151921 388013662 19997537 680737699 993775576 491130270 626977125 838355121 680676224 655022521 543792738 711740850 920600165 906690219 901263123 251274341 618137079 366307529 710491053 352653174 607590167 822258452 946444248 331093196 971603364 834886259 894209636 122776631 18813703 505680993 1034439153 273805018 389882080 644162990 625432320 304703968 639221035 1028994613 1014802400 349219606 487913805 192412518 268416613 245994892 134656733 802223605 909274500 763878243 649943443 1010437449 1071221394 605548266 244686808 1029276683 824065058 351634642 410404148 271555801 1069777663 173465797 672270284 904373275 628590718 175267371 476417190 61773717 327007182 756351485 476086994 56092945 62952303 915494716 928819126 399261809 1000708518 40862387 391352975 269529131 269132560 411490950 491475519 307395667 138530084 53967369 825962770 34812421 460414641 17673110 140000447 52039568 95747803 339523294 518330388 689293910 326263050 106509543 638032582 761068122 709193133 433333292 984688728 283222502 349555107 130661396 1058421117 763649962 423236382 272039703 535012821 726775596 120763520 513949919 45020226 916909562 410561518 921063955 689964578 965444154 1038807333 586902631 154744771 489624391 538204473 594512790 565692902 227122480 806648712 128633207 669289095 1006841198 616060700 106172892 7331753 878728225 48722572 836988342 86033238 962382399 695758745 21712409 675882861 74001979 612482256 218356134 666368808 1048640 957962555 790480994 144742847 755847798 361877030 651300971 814360151 950283443 833575280 222437966 490988152 126395665 621340108 284964688 205743964 1063170377 532228753 649619869 361749179 447044069 385963744 372213020 325292761 798423942 516200054 341685091 408521336 721847021 823945858 650316711 310068677 544371799 569021251 260622728 105494742 501869507 629797236 540629067 524193744 893629239 244579825 297607679 321483199 350920068 316827717 660758278 911017564 1000160777 661161908 918431747 152697648 730381909 417878602 663158138 315945366 755584085 863115283 962645020 752179389 78831286 988910010 400335368 785427493 700093367 118192593 871183372 578886126 332426711 744111278 650010306 357269264 677247468 731584983 302224546 834592465 491779243 989493413 136509625 919028945 920496735 631949957 1023072097 432121652 797671162 950739994 856708753 280787479 572185816 926788281 594243358 811411273 271470382 256930873 148928831 305210794 421734350 685374820 971059309 593161599 720474831 621970383 976952977 300145469 32772539 656058626 620436879 619821362 17482136 32748154 588814651 427444257 581366266 281778296 750948421 143793617 511767387 88846943 205348851 801505479 626387694 947367570 834906783 939747345 469563831 869871842 695211111 757967077 176776535 564448785 332421900 96265554 568111014 759890118 614778167 842853473 116633199 469127755 338844746 367463715 569037411 316662603 829681471 241661365 538336911 639643357 138823839 619945016 205367366 1051666447 641663404 991771169 102387557 470790199 848696338 562594497 481656843 274245643 541072099 694414298 711698593 448707157 407944717 328288788 323091930 623660039 938010582 270731569 381651676 131440095 59713952 212713544 120245862 692758965 137203676 76929269 418847494 394494572 824896577 472605856 533316099 784951458 1028002255 854422490 998358787 585324471 612489846 976560062 259857315 577675899 424062276 271152467 73612990 127612666 554270839 27267682 247825226 494875196 516987898 43483910 563936982 792666691 636967587 583233627 85507045 389398212 856709200 47804243 900472364 78419279 196466065 12127938 652573870 958665533 260759090 946800318 951082877 920218642 506828795 240735798 472859611 460896329 209956257 458136756 463647636 445108041 317522247 746438647 354884454 1064176514 975473556 910938446 802857925 485996436 922270199 516736969 571957287 544714438 1056093217 381287448 44120074 905835161 629563700 241043032 963623237 113078075 672217634 515276880 185917377 236178832 847145554 243963732 890544678 189256936 367188664 1053441822 248805920 420946716 134970708 753645650 319584387 328097138 857058104 687367709 348832780 983189129 895976731 122747872 193200665 43011617 351514305 884658390 90800013 995966964 524620602 363247095 870781159 277698093 531529075 444268020 44137776 812470171 241997172 4035413 978561636 909274133 976487892 15626181 449158523 714735752 829783786 291820910 855113286 353414903 1069536085 65544681 200292638 132314297 846283988 855269937 303407767 674321697 1022617206 1021902101 613873352 119407643 799749794 138050861 266737070 306486751 1039316084 456462809 596732269 229807089 700131767 573632239 985510796 678309617 842919616 467997958 515316179 52024068 802862166 733288177 743701618 1061405383 433331932 656307285 725132962 97805835 551050213 863700080 549127705 33603377 319593129 576874487 914244827 661220433 609326746 1065641668 251890168 297867530 536969797 472331246 384396118 573308884 866038312 1000890517 937221592 89854140 487702977 211488734 114270255 50940971 264622528 517636308 816464682 925368047 765933537 185413541 997343686 1056074505 351929406 501674888 276116519 279845443 1023225910 750890097 548191468 568708328 567737593 644990511 1037503282 1004811367 1014886395 675103982 645815753 899453886 795364802 316092812 871753506 884534415 599519595 268604105 791686919 1063864827 907051067 62653752 36808564 161081738 202161071 233110936 350624495 599653943 125670532 593100089 430232145 488043589 838334669 839340882 7284568 552876808 68041083 839117962 707301897 852672943 627387713 883708534 529180030 809755887 924743302 116939081 1002777044 852587881 664888185 535932868 518162023 4434761 151076745 737660745 495003171 656146236 79990943 104570135 181408354 650643343 489310245 396517138 19741631 460802946 544635163 639166869 129294251 530273160 794788932 19930289 291738543 235535927 645654061 1012277735 904074905 1069795771 176200700 133080127 1072875383 507771371 249172921 624571444 248223844 1012373809 378416098 750244670 830338498 177940820 1043817362 281466054 176118156 354166412 774060276 133685665 11777619 166374699 413385826 741637095 529642005 111692557 176794509 693708984 531443912 768530713 202116092 530820661 511383383 660343293 285842645 485136434 108079366 1007677228 555348093 976707861 879588486 503575697 896716907 1005627742 133146073 596767687 683643061 626439706 964690669 231518232 402168182 823211 990347392 590461025 447259278 773476290 798846717 716106029 415641478 698763078 117313823 744530624 683172109 794195130 1015468532 958490403 845278834 450368920 52319000 959446723 882227914 225604807 640738863 221293712 386005800 93119323 325122187 387734835 747644727 1021162035 558331711 679646345 961830920 4553169 149278028 515201702 676216512 806976087 246581043 395955211 122380931 118090977 596659274 753708516 341547473 978698411 557312422 949136710 505016612 113419416 1051138021 407455440 158199463 290549224 785369587 463346342 497501267 802161978 98063403 337023465 81421576 163982004 282141846 326937088 972067649 936620239 250592124 259424013 629274632 46885782 750527334 640370400 1024924886 961078132 345544667 600400548 218019646 212788986 641658430 274924501 550402146 719598926 340647318 282165569 366509018 274458607 670835851 813756587 343143148 604269906 207004807 413525689 943122785 345886560 297460208 187906187 535481768 582649672 182573817 874836722 621139380 510652042 714580855 889624477 431507528 882469357 322527264 796332877 227008518 906330304 861334711 342884105 1020324704 66714323 49847203 488530513 11212526 529537870 326651478 152152501 1073612717 881738532 313052083 165400908 230168004 134357166 801863407 417218188 340998714 1056420601 901433372 731376589 145743846 71027748 252021775 695280428 492119391 966213006 988656973 782524526 907093460 100009635 857919580 269301652 1072537634 487546548 798976829 308655423 639700283 720636085 707348458 421064140 948230085 473150053 735805471 798379621 165100019 934808828 455939312 551540627 565725632 686317002 304081080 487326839 774525679 735860086 626604727 129856158 734209889 43094924 642865587 127041317 637264830 780167014 821943232 947486549 20200503 1065049968 84040519 372254895 942540858 547143321 217832496 707001875 1023792032 383482889 891181097 597891748 530452583 453995751 80774803 174233269 949553271 949140698 704866248 1064220680 953451683 602886522 22063662 644087707 517083579 194918021 149956661 613112011 741608658 467067673 825126571 453131132 779268428 201094602 967701260 99231957 938531638 893215793 500474031 109562597 814571387 611634220 936568829 730649308 692709822 304228567 863809911 295154733 1066553158 667478413 672181419 463508465 120777397 378345985 856829570 752877604 252804884 115340532 280272332 166400496 5605002 247792354 1029903024 1032823384 756393757 930325956 682048353 482669157 779938046 806390352 1056711474 983509426 440751810 303351563 344933707 500582627 106982203 574276464 539571883 649449675 762393666 131568447 272042398 642864102 330704890 597993766 287024209 323581103 292704115 788919700 512375799 995881418 433159522 746802215 383550515 872522868 907390196 78660539 612316113 792910995 32675138 775600807 1478205 534463869 477646930 702034576 805171214 1009156162 301888640 1036889391 923874032 644600285 1044294267 5349207 827213488 47859890 584598892 572346975 266026875 689039696 580604106 867228192 204373479 506795882 897654954 113213595 655992741 419466178 958738187 583271382 391280584 486270148 1065172402 319807993 93598084 864337226 346759236 138634414 904449129 811763413 961802421 907272181 781684706 976511000 245173529 636256921 173082817 227912847 466721436 362952344 887418444 533309199 361533957 38616908 934892995 488840313 193567434 179446792 506822891 723003916 761292860 670856348 317201422 642501308 697603818 453947503 376912777 343904823 182777655 923121794 747551608 733775127 810646099 635613881 57698868 313014905 736529031 356463480 720131401 245358299 382390759 1022327461 908060425 521293799 282391561 668975726 491158093 474471831 534105456 861229592 973998642 737468347 734758499 252616260 812632003 517656483 854631568 484047757 921490142 324574317 254780694 837227942 1062196755 958350992 135341027 762373671 597545519 1017369736 721573017 974625663 410452391 356234032 950779870 887918782 552090288 960858317 344529175 501278683 720114018 419049249 338421875 449786171 152048594 367672219 914252849 890646932 13855295 743295109 143401585 1006450371 557648127 824258334 1017177817 531541160 696721839 690722965 980641252 805495202 461454684 783315321 301412852 221165558 376958764 943840173 458351031 657640979 906608916 688521629 924026060 927959172 232482012 705954229 394500105 51291947 83330934 74007987 362812547 830325972 412440415 237459436 168442530 187739759 113363107 804999600 159738268 347501740 12752083 470322174 451529985 1014489794 266788088 758993485 445155772 103012275 935411871 989293656 7452380 453425217 55241770 933968243 864457341 953960146 317762635 735104370 447429714 798875408 277918497 77498195 726038967 753358010 493828600 537431053 945244890 479005689 567931109 1051828234 937558796 205743265 728872292 15879229 438432615 561931329 329920451 170072398 862662491 247340665 666091325 935858382 693502179 520626429 144682097 148896058 994083324 186125665 907604010 561897236 992053884 665031696 917998987 120091212 138701598 158733796 111033831 634783906 461262776 138687484 491812383 781390478 860578608 1019979547 657643832 984854706 972012799 923910446 825091950 67951840 1036354739 596645215 45096249 37350794 704772501 194641968 686827848 138364490 842527884 978487959 677212839 380109472 823361754 466414276 996576784 599542938 336713925 123092696 953583445 648863377 646410623 523845123 994456033 629027102 707009974 676711319 296247390 72593526 1054120437 683808125 635445402 379710411 118972397 107142957 436702090 206664850 736254758 247537226 438919166 18698379 598136035 1033752977 850575644 137372623 789793093 917749176 445306317 184641087 131623245 143882458 336929106 218255767 472890195 883168988 707560912 637037370 656404053 875505060 481154795 967559245 809384453 575016984 481014151 136720320 554503426 357350636 1004203066 759875707 80988892 300551027 874093176 947054683 453301030 264919778 328158473 90305913 980419948 656334928 173218711 844611726 1062452743 69208566 433890731 273485525 712460333 519485375 453059270 562378666 270990069 910916676 496332011 466816612 158229832 153225628 365869779 981556014 367340950 446348113 654663974 26022181 60073203 683608953 53706280 385456017 146164841 413015022 788246723 789815806 449288119 454862202 129805061 217426448 212203893 805764997 1067474813 1040790830 4061870 799023132 422001964 565082546 667199816 678033336 1051422256 201072335 699510954 630484467 708411060 555152682 677604669 294371697 972583821 703187510 404442934 427730445 496103285 357595649 480494217 484842660 28231564 899014196 441996403 428521501 588020613 652375103 64091806 229162971 942780016 6988442 50308956 682186319 808917692 305222004 773198311 651487697 304141049 404355816 677845943 946810989 703809281 537114874 873811228 298957073 380113323 853500615 1053712982 112314513 1009269695 911174028 594354748 362176769 1044027139 44999464 144175776 339724523 275037938 744082802 567692383 970470512 440246947 1069771632 713517488 723421010 593644544 179041934 390626955 99248103 673935605 28646601 1049605080 453775091 778560108 712601211 868114216 241796529 406225425 508598387 303219644 48840851 165946176 334011622 651184322 412909496 115674876 1044013060 269795971 430474777 555380236 63143967 602193536 588433888 178990579 1023942693 403201073 779747111 312923936 168300708 235330137 223992650 687379308 106740708 221986215 953043860 986529014 951636912 1048248400 807693762 744417615 1051749214 614722980 214874594 20058530 405466374 306767927 526610482 337630093 1045857203 734401669 876900621 556179484 870080940 301847224 467138693 118734629 563254625 693380271 185739793 905162684 754409670 783710661 812682901 414438142 745575483 186428104 321910487 893195764 957256127 301670394 220431575 255210605 849319078 936005731 511230327 376800734 203239195 758683200 905724687 46299788 872467913 245771396 860715900 786449561 780296950 111999749 1007786070 843638007 465572777 270167098 874421682 258589063 104174143 289559585 210726187 1030586911 727222276 647363339 440200160 330227035 38259684 130238284 673798388 15364866 441765004 329605401 516983263 804746457 1057916777 28770713 1014912148 713098131 76504836 1006343838 13421402 1071517650 700339959 441572398 629847269 762035642 647526462 840165626 511023662 968346296 890865585 930725869 414446958 623718758 655286002 740748907 930427457 658839727 933995441 999029724 305992908 555022094 681060078 940644460 131443935 704341930 736322608 423307744 800113228 216221498 271917247 392537149 829809620 269717832 901952551 137919390 749128870 101819461 928797799 372968633 707844634 674019865 550415752 887587900 569694954 822705774 532569659 984275619 449248239 277448959 323450379 173128766 858190423 1056464953 948712836 653269669 246996521 36673037 707772402 357910464 982406326 546908410 119981083 1005656780 573216861 410263775 741163361 766907157 27411669 121092097 62054191 335657526 154190377 203994022 165495667 571635387 223257578 530655934 842083941 787709001 770413785 266878622 934964698 51849210 806571838 194118095 42403111 854500106 659152095 963642153 154654478 306001283 920785029 759762906 451982886 291450381 1040478436 262937899 490584080 290466579 167557319 169994718 1039954856 536083412 824868882 39054844 983705549 992181051 1042738951 378133975 378731064 635085425 827683307 560246622 615958709 457191249 655449631 526648529 269950340 1056800891 692925213 701985365 356926414 792627931 24118700 1067447439 626878209 220809117 330853818 376018970 136460707 611472542 922797698 298466362 560359956 498122450 831353506 211790670 71595219 220547629 563134969 733127760 406589939 952190062 3815069 548357455 910990280 726783168 747097420 778091697 653524519 593708039 653849036 539043198 338466912 720517804 941166981 456114505 858753549 308999904 566527197 714753433 527414242 934269662 768086270 910781461 606986374 1024242110 72758513 593757423 145532589 214763594 837708375 347540101 693936511 770443446 599562805 15330478 271111023 576714024 194878658 754401529 448152095 644693529 237732568 276456256 97758617 363849071 104234286 304491724 503623262 881956555 163055382 149661443 937939880 570338061 800111682 175646695 255707593 541102272 128219897 442802908 454272434 556750269 920591446 270938406 665319764 358775428 629636284 1006586685 819870764 102650770 724326780 959796353 125746728 1059402571 1033440580 958122180 299319597 180027668 553351661 197878021 882782047 857678221 417456279 168473775 333073442 360633144 200724146 952107588 280494135 404754176 955229906 713597349 804135217 1063454112 797507282 1073281475 658909030 97663938 872798507 1052886503 254458925 679320502 170153992 650551786 61412502 737212876 485860861 362813319 779454985 755422971 283407340 140262801 11732031 230056786 494068878 616139053 87397716 237843485 897215989 564842815 817643263 704440258 94845350 977767213 891959617 750888628 414301957 799322579 1058109695 135489448 675209921 700152018 682197970 89548504 333259385 1024688571 350142440 1002675521 546122463 721722055 298749200 808342390 1024474444 1028838525 821225262 778856625 564857376 64302230 477870044 750028801 523424580 643189329 671388178 431201838 529792003 91283545 553486077 531955979 791032817 823489668 643452289 146835207 980686746 982344155 120192154 20819746 935278235 454310730 710192443 311816571 217211618 761623816 733902797 241058046 996248469 983596710 626169192 106225917 752471598 572032701 174753875 606456755 1073042087 904900852 585700103 479450293 708548656 87459528 68307292 131496606 305093019 257121894 675171265 380753481 319344307 585135388 69344415 234905498 957483153 80225591 171801859 851746012 221540031 959468445 695484774 943841167 118640334 896300599 370385650 99822904 479987148 1062908819 153906072 801324540 377217465 15006739 283482902 963534324 446855720 370813407 177723198 841877537 905498607 202391159 26072389 385999877 32366930 228330742 71879699 101048351 973828575 516711891 656007836 504238452 306195044 930588422 406306937 902815556 1034037148 45566679 500323075 254693996 184035432 303381413 631100575 169186694 71127316 1017516228 543120804 961160552 867709414 901727873 642806184 679799343 169362743 626649810 683511998 699377822 1034893680 192085227 660370369 55999490 215995439 64736192 905762216 1001340317 561959064 876350472 951854225 705766941 911909197 323869956 33955708 988867269 716436761 694220546 561009844 403046626 457816970 1001670975 659289499 173790689 1003878540 530528964 181939268 249221488 279882400 39390639 936928481 421691655 921240210 470390027 521738788 106723834 581574754 57203701 270953244 530194921 18277145 369502616 633659069 78250123 894860602 521321958 724416592 74207155 148231647 885520348 470461912 1018671657 707059261 552357515 386827870 117865717 57980113 771627214 749362624 307064516 668997740 10611272 244511198 903841114 1028039869 744204128 922723182 41406143 146671430 290496417 811638288 355311752 661656525 457857840 595027660 372821628 122332261 231368625 655991545 85095594 905628454 354759253 533296371 200894174 81278487 468274345 801725382 149697548 572158875 639710069 110993417 921378375 408582654 174215776 165748462 920827425 1025913446 1051064274 942031760 687768496 1004754960 100809272 205186073 474404711 412303829 1054847752 749697894 540530415 381876137 911016834 114284195 439339497 968067469 858321320 823487118 490795309 956002147 745416026 165976507 893241057 338038785 617077260 1052071702 221738615 44450332 651808723 865003622 479734647 739300064 899884858 574753019 358844591 971494815 380122633 42120182 408056862 948333944 801713263 161647994 345799333 786094108 884406630 166130038 47048317 351193093 167772092 656997445 739355801 459239360 21322115 431933649 360241468 638343833 329260193 1025971896 872104663 785245523 107477936 72160544 209741630 677030828 227289712 658038824 762599270 1062174039 373825495 330881465 1042791684 1027118953 196600750 432618779 33484457 15226576 410108868 983613536 960247675 459980683 1011779065 505095968 131855072 211100800 221254573 2120844 798925702 402284965 1032320018 1006704920 697615821 134963495 405135766 37411058 37638091 749525384 556138886 970450085 732055850 616095391 136277640 556543881 413040898 38624429 577744392 311464793 931732994 597849489 581507991 474042914 905508159 735979621 835477726 986739565 974450510 271748240 49578827 488060558 517750667 40623255 655615856 601669175 1049746697 100108890 919344124 354470932 76740961 336089782 233879953 7063970 104125815 441861808 153859042 561682870 912087094 256281247 647610714 165073160 366720048 710683060 920812988 829440580 869156260 720391396 512683073 733081176 604822405 64376938 897818782 403708387 354851270 597091565 421844820 612878993 522296673 703501657 21278970 428414278 1043109028 36953091 535140967 311774832 524049714 474800872 235848667 207401601 72436871 553815878 379813424 960057569 860439429 260251119 229185598 65721469 1005185624 783622305 308767805 160689387 449764420 211947366 494830708 203125230 297273867 84542849 123663332 707728309 616800260 744254106 878390549 678422132 389149745 1272069 687553043 549285724 88027887 891905738 756029972 151428824 993710007 661899599 536527110 528525102 138736494 478271817 49098126 1070901901 331720439 271150923 265524721 113909939 531228191 820443360 236712804 385415718 489186511 257823358 57860633 236477285 158740654 241452130 403567088 588126227 488349276 863423317 1066539933 810643790 43850630 843619442 270587848 551908770 879228607 500158591 1047178607 878890661 645479688 869790818 109676833 173192695 340442006 694379512 202459018 723938409 265028829 475820513 359619170 61627670 754129028 524656000 519146755 188119451 27522810 355252690 266437642 504592631 944019580 78312653 630143571 753074616 50715126 1039783530 898570780 23667472 269108630 70271417 1031706312 806079402 1031358393 997456143 979443012 236632953 499715025 707414371 843159456 928153904 796982952 801073112 135018339 705732948 719519444 742707528 375728768 221787734 375776320 568493698 871674429 300854639 949396899 209904772 403607132 116279135 391045085 965749654 971287899 77733967 300250383 329325958 674658683 711859880 1042928377 769069712 824450534 15649049 192973639 652067399 879660099 473075623 121260991 462898607 515765298 512104996 780207598 346508325 371140951 176268929 469821448 244301202 902423943 1034018375 130776651 446854619 442110192 130053727 517017040 29210654 145394937 940959949 841116321 487876744 919891708 254263877 189362974 361367380 849749082 276018946 814703030 861054232 700839004 362811715 1019332921 658725691 997917902 213483974 1067746900 723249777 171479033 433797543 389005341 228688199 64041240 924954290 744667176 470512729 510200574 1010020424 781476198 765174433 830502118 950328407 133184159 515910347 495131133 440513871 992278799 824280504 4322324 210032462 802241936 291851302 205966266 34130785 907105198 629530862 27818480 673306724 1059578740 659060283 644753124 39580916 705494387 1058357307 476706705 613159351 971994256 641610101 158438692 510757480 377183846 303407345 254163254 174416378 286273176 71566471 588636470 541758051 716708732 282307761 524736977 387445604 878935104 1071852226 98957936 1024007014 1025755489 708087652 368221342 723790052 853741192 61355936 883267138 284490374 442407280 287876319 944708550 683861491 366837743 294917973 811195722 553663291 10089489 109281615 566978408 324330340 897927746 614784233 126536250 497800304 240591976 1010314694 365508517 889063145 57187136 61801570 521123153 955820254 692229337 791754012 37876054 334101938 960681302 624007926 91605108 1038901848 95190118 997185305 681055195 65558685 299848306 423194832 67007065 391384816 614235698 501969862 1049480485 567395231 772483151 435923582 804932729 411701857 255820553 499713886 571018666 546178071 412007086 82622042 211091437 952067524 456898916 528355347 571912097 797120424 497133093 24456668 691882301 676809568 367904749 11915590 449723246 36996207 65564486 182944313 1014820263 195986576 545504246 931742455 930743177 237713418 672469043 767535374 959542521 594850894 951905202 917952195 777247453 234941157 779439786 409851471 19751702 216070228 362142480 275854908 673637728 616421182 360259153 812566324 229695158 327079112 528801010 795219917 218644737 772701883 649525886 476620410 777671262 494446361 1025248958 62234950 14262379 804211304 234213241 954244061 1026089073 349046594 343276507 775096376 548792404 348902491 459912992 539665358 316503486 475205866 765808759 710481447 1059960411 1042267183 273248875 275168855 870023996 811869961 1036366594 212822834 333148233 727632291 258049859 1024823069 571731423 409296851 443071813 934498561 875178883 873675147 846305665 829903999 82404539 316368798 938475299 665100892 262489852 290197514 434113018 957490627 265739096 587464545 935223077 458907180 853352196 145156389 690208269 793881802 471566426 935999917 600864374 571824371 890689771 1021614809 437518381 228649424 269118469 1063491096 344319058 393370274 719504896 842113159 591072637 296989026 107700913 639195806 195371640 317159220 1033744119 764776087 811944735 801715405 73411389 858890443 320334092 956522049 293335531 999173930 701159383 641945323 209887780 756225552 319712417 123908548 503782478 80140086 363414266 247667399 509767388 500549518 8839995 499247473 994586124 17731040 1013230785 176457474 113067129 837578777 152852311 310980223 297735509 631343910 202765927 369331343 892823042 155746815 445125324 649355608 571234062 426622297 868484050 270528952 521090026 572885178 32084 504878998 168978149 406185595 712525033 362709841 201493990 1060973675 495257325 489822528 466673790 936337985 689209902 246593290 412484521 93123325 470533050 327024647 885386537 590649354 171485430 157664469 144137110 878707977 874872147 451451099 377645019 627387605 422369095 143348280 907820886 814770371 700682093 409276935 749131005 490148375 90290485 642627295 629237920 517847166 25923335 794476953 621879116 1064039356 946855226 108552254 932978308 449822040 20562750 291015143 941675522 68503950 194141237 975611434 686255070 349119617 524452067 382914636 397648030 1059217206 699065783 728827177 434593221 31802239 957059766 729003378 1047638973 1022549040 833541608 359930519 866118676 500820259 34549699 692929945 570973401 860442166 867708806 267964690 104415026 245890171 1034933752 114182041 533907577 969121805 282623593 179468576 837843219 479266432 483227855 573413057 905477603 647145553 14195481 365824097 840453689 941029816 153854377 1056937115 801273166 301008477 470912633 40712158 175904571 105961714 526717061 76254209 200892428 375592799 994377598 870571727 653099848 915598246 678468410 377275313 377451584 756404465 124560533 915119807 1042661710 638176293 851260251 966744264 299254111 859944286 146453626 448772387 448329386 221006275 341470905 588661615 37713873 583153770 931516660 842700224 306234876 107452435 791669932 995284770 885094171 692011477 241688066 530386592 778022786 15232881 129670781 347961995 556242577 448819871 455996683 618825154 724866012 993131360 670432149 491934871 427252037 805483635 461280438 322427328 870681554 124858880 785508605 955215007 64495530 713328226 234207471 980840017 569726200 300633995 833680371 1049617473 896057342 386937557 750061170 1072266763 672846048 714613725 758200470 125519814 313266070 301956626 999390427 1026784682 119268349 107896701 955445649 122274317 497376768 185937042 331285941 986706728 1027042755 378402793 304838277 118787657 147805179 884129855 718875160 133754129 160987587 993857975 958151452 617447430 158647816 534584447 819420610 154763248 401146154 972725709 61372628 267033847 1055879089 940598475 517131437 15484253 707843357 82068729 639228105 541430446 740585481 315122735 851704241 217918922 167963262 870552736 124565533 14306684 455609624 1020175413 1030122378 429902673 927050676 939772096 706011034 120581841 392454099 217058684 245501180 617737617 190432719 269223539 784030310 563761715 945842989 644980784 165555500 170986094 677538509 722798966 432659462 380171652 470418566 545431794 350096142 401578873 701384235 740108088 777810980 714003406 365928393 235716061 289336293 615421799 757285184 19803584 553995382 664838090 688687360 862722042 899183701 1043284063 452980293 161970116 629427454 882430213 839116481 368766863 872184732 752271984 985529462 405226413 312041374 1049774736 719284966 473378197 336416604 303886396 424351941 817079386 1012934717 289018997 662187609 706778111 2608751 281482238 563467612 608885915 82652532 21963628 873311476 797587605 551411835 894030705 1011491572 291973063 680381367 262103347 788243177 813259379 823111600 550609112 446715970 193499645 923596343 479324498 1017212872 514554976 595358227 307795951 239320289 673266401 671386376 916131600 492917544 833051648 122169442 427904136 175982811 217341526 679759441 769712790 161777771 361501073 763414042 136939073 204711681 96729686 22861879 709100436 222779308 303218008 372483167 906161149 118516144 506218468 29942686 19461070 560085984 239202693 605872647 631632191 285784947 419517159 551983647 1055196319 488802789 285513902 397262126 57037218 217747061 341968970 583083609 704187549 979166507 443461008 201703969 357583554 70428839 1059244265 685650847 443999727 144349509 784076395 876842379 716425688 478521556 46085569 395134499 339107331 485778946 841383087 328379822 511184253 702489436 343049132 41991645 187065074 164366991 447630158 563936846 690085762 626986678 947610042 702648130 82053453 540973480 508425492 843278055 174283435 100495873 506958961 191339328 1005194134 192313685 687013864 419417519 31587579 626936197 216974975 63693075 965814400 311759017 384602599 386679198 431315354 598884614 557232379 671708381 941107379 1061195795 103657593 369183240 565185757 261091538 389635382 434954748 732194253 864288895 849141103 548130546 691167469 408458813 93203794 613119295 286240367 851567200 198316200 28943148 168286952 533877947 275958925 761066367 613531366 535197084 696488377 73775316 569076891 46742094 141241928 642950247 1046374349 120560281 1006939073 442288141 704223418 449956375 145540703 13936775 151686118 285630117 51293048 1073267510 117543681 310835003 687903789 126921430 76575441 391749781 69932382 873043735 705652120 582598941 653550109 507746506 525120845 624681551 918364850 685243259 890730187 527515733 547145442 213556809 942018023 95291542 366504060 424616500 525792145 840782959 141175480 949127528 946148487 208140472 391115329 422198943 956760221 967847958 282796446 739856344 466545178 42316994 1030874986 664704324 238870298 381281804 653140036 50966096 96238792 1027649117 303345807 359573135 7330199 658309997 608709902 146607932 586528854 598350424 80942526 888220823 813638670 441877293 329705520 243280693 728698666 30438235 667500737 935717081 303231158 944200092 109667239 501601908 488055518 822093366 331136052 290473470 805303063 47179835 1067701190 876826826 812354500 254393472 862359441 60967567 548300585 114706907 151052978 1004468342 1002460779 260271973 645007172 1025235315 1025604654 800560502 629382037 427196136 201128048 995667211 570083180 1035055661 445307918 1048947582 267678182 671860272 745550724 588097829 868067465 694351905 430627478 754226019 55772654 773302293 382274954 1760316 307833315 124378795 413315879 276440293 472368451 424643763 950562243 450261385 925911099 148003309 684153070 536934110 259779277 92292377 488095990 521975123 438893219 179668209 579293181 462799670 188803025 543037615 994249902 165701386 254798073 889731067 33637123 625561545 698320899 384694719 618355918 199478389 1021345382 725593602 280877771 1052093672 899449525 814789051 639149584 533191542 663464812 473243027 574594006 712363470 984882401 224215781 865791889 850867896 943634822 360269271 818854066 920028729 508315214 946409266 373547516 680031461 166827212 849268704 852142441 945559139 376327661 489519086 37702746 754845888 840699505 725319513 450435948 856911463 1054977961 825078402 93930434 677225394 98942122 470632928 824348240 1008729789 758912936 948789408 896134228 893437038 787249880 434620240 1030173613 865318431 412792914 472260069 871001643 546681001 335481542 227732958 945373190 556919542 811748554 750426178 207509852 197384192 794832738 129601244 379016003 271017255 559954271 910728873 130556281 307641264 735927340 453806042 33458124 508611327 851660243 865802140 94371359 217118759 852488701 363585092 225213249 1033531660 624026540 349031189 619549075 378302824 654471985 193925553 623902774 407883119 521179713 368007061 575291438 584014657 553445763 350178767 582155203 496257953 1028858465 760161450 962072603 803811363 594182832 1067627232 254187169 636358849 554430873 540059997 357292006 799396787 1054017087 492954125 660608118 311603930 519752600 5718603 508594609 406545094 887041877 693131533 469978579 564172237 398298578 457268388 671599818 294550927 293432360 1059477045 38320262 584364796 95413004 357155259 646571199 164410343 1028898434 788774357 651109650 603897846 520868289 375175363 56733141 579389182 20113139 337468464 472188212 848947905 298511007 505456925 765758761 950297153 324173363 536442354 604721362 128546804 76650271 10384502 903770056 819793558 383185122 19028581 535373802 152988922 804796242 307537943 720704399 95787256 979409385 625541508 344495133 280495682 592819684 346911406 758858043 610702213 907285302 514172338 650421177 157270923 645109561 207297706 136168212 826697803 809264310 308668981 817253081 383047755 822560407 957988715 957397802 883174073 729386451 577498154 725232279 24287894 362555577 859726222 1029825917 619599989 331542623 96843673 630895701 19730061 48162760 286550021 1002435479 666411670 770190556 97418861 89948580 573926131 913963445 653167137 1006996820 75353799 982808584 324545439 737907502 1068498261 600602295 76333930 1069970992 636978397 506262390 80143638 360095994 934539579 196910349 2841144 281679218 396192786 714806517 975671996 345673579 315124158 145446433 500525937 187658248 527998942 787680652 307648682 441802735 750347947 931265992 29783303 771220586 497379173 479354917 76608433 833537500 752281333 1002706187 548656234 466437328 1069994119 62515953 807599087 566481697 877040383 193280192 307487012 125954507 17793766 670665656 875310748 108383538 304610515 669239907 973207487 324894143 899109355 496719307 971941892 405143323 667311247 888982269 221052187 957151173 496403564 386656971 802995472 178481266 788769854 96138717 361919751 210860143 338656619 1033179538 343906508 244855595 608512335 403247581 360745141 1009368598 309171348 305167446 512105176 185986990 1034159922 963467660 848910797 978506437 952130623 299394419 608190231 438649579 469945879 561902817 850997993 724411938 914162678 992198397 1065106082 764355126 791848155 41080489 501460415 56210275 224767813 183418723 79139746 304697499 622922601 577283464 460640728 694628900 927180225 187441291 844619182 638745194 564069618 751261379 648807338 692932331 537318927 985727367 221819764 279371659 1017524676 392306443 551021746 117311945 242693631 921919274 755939890 59133963 217929096 1026135897 455333534 149270511 404122899 256562249 874601350 318432260 552408319 296888704 368703624 832157251 985420372 241153669 474921778 331455582 504284466 310532163 866177211 269427926 540088119 1015790228 219957089 610118129 52228153 1004956319 77205384 980772044 1023803849 723069297 419038161 556759286 512791176 10305311 396292692 625438915 981993292 65442824 175620841 1040445174 59286311 1022148224 409125761 318765027 615722578 636935856 93678813 398497535 658251529 916143264 330810903 36077688 347110524 212453208 665611261 329203854 240507470 955340971 733359082 548592286 722214534 687058116 296304028 1005664614 244473343 816784938 240079949 597742725 343638713 583806087 229465676 941426488 342761914 1025481785 343394688 915744907 82687581 625014939 171792043 696739670 738626604 146805880 273791813 699827613 101563346 513991652 898201587 311323756 649167379 756225093 364031703 746980236 301515230 559504250 1061405629 18545222 1037093765 824206544 383639447 398390846 320997496 551307840 909933580 757171357 150578347 1013837616 709292288 913152532 898632872 54453790 514304141 239103456 638861294 629677569 10304713 719026826 273302437 254352682 378049889 430727543 600739050 688479460 664111072 209568321 1050296460 393833607 566148922 594659041 676259706 976181541 497251935 29336735 566654292 534272678 1003266210 296561856 594775031 1013568566 854574594 55973354 704008756 576131133 1021928334 1071437961 668155474 922714037 804786446 145961716 915891122 130227064 346734567 27049999 582282274 541768126 101359365 925628024 385811370 755644017 816671709 458372009 83819127 827692886 1029806783 874734084 918975417 889730059 152396144 888405105 623808328 860213535 325905680 481406259 431429099 808814569 722770115 401742192 305644186 6142805 19621872 1017047512 269288385 502424463 1016085651 957634827 276131862 92994972 654299112 777865177 1026920164 424010371 114193698 390838789 636052481 118921456 644937313 466440963 456117589 483434517 58800174 357943807 932459789 545377323 457084515 528838841 308063160 229704702 508241145 877417286 694237309 350383310 452187343 398635410 60914636 678493294 78972742 414377781 19098390 565773140 909328705 968673184 909671283 374616602 252630596 401328087 505102634 705116040 199496054 25767193 418676135 503533830 106646070 307107784 631233779 337555872 988348702 1037750897 1056576515 882617038 880004727 437580835 1013593781 233695890 315548499 89808536 335123399 923737866 421740410 39473584 626997910 296149085 998160623 647215254 707989841 100927969 550835291 773724178 666595298 86143211 499929159 206747440 532481203 852775498 295877638 702987566 157243652 871577494 316409500 430474022 798868421 841357836 739929225 89344823 940739051 428774617 460792078 794414180 135782862 905362387 720636268 955419372 985995562 1058897006 705388866 413175186 717817426 888874582 446286808 1063768343 485243877 179989219 958373174 131467204 587023992 824684963 251250163 374389175 156937390 467674169 256895978 545404912 33038634 799705846 179035723 357212942 228409029 896311421 1006527920 792962864 190283990 954514353 768087135 1061471361 202083940 842363688 527086101 23729751 844994847 611900820 376554029 148320584 926938290 818528078 624360872 497704310 833876311 257325841 281574537 647958042 516256398 474291622 296328165 466122513 447437487 1010763251 1054063379 402289503 780018757 889682147 232419073 709709216 466352318 202015015 206522732 325782920 620082012 788929759 624148791 43099933 916530723 654343275 246039933 896369638 489776054 607102419 850089561 1066948930 208124176 455928841 315071052 791422601 661795276 426130265 19392134 880535056 697945360 971559290 379844456 678308044 503192645 534206774 979434120 1013714276 79039705 863523088 988572102 972792409 924725751 825754205 670373363 645485519 265514349 1063767546 129458105 988282659 10590134 244934824 225292062 530056867 136861628 906609389 358508444 520833191 120302322 945595983 951220515 637347592 300603541 866248589 728029663 904653884 624293013 1043312023 884397526 276164076 828792416 656889277 135773680 982091268 502511262 82673610 84417184 211670948 270023971 650500508 980063476 1026955008 60999531 728285363 872556337 318467225 95169617 123003569 207742420 78714291 368177961 485402063 175183142 997584755 681500525 635419645 535115019 910268064 965149598 1002288798 328290780 806715136 985775615 698957391 996945553 432828443 666769321 997283558 930189630 1034492108 392403226 1023857351 506870991 388882704 213736250 266492303 964541464 393772110 75626272 167375854 520814 314343627 446127649 879447636 561428479 786754048 1016381886 1004372039 239757567 427387932 452748398 227431422 175092138 190142944 769712759 612964522 1054416420 113620143 532668859 513953866 172847079 721224441 958583675 520949221 260922730 820119958 854154615 140692772 830603787 589713451 962598986 613618669 76589369 100017198 768271832 525503781 742629437 954259909 350042905 731590763 186034739 201998397 859324699 940126107 607006696 908376564 221101311 306507107 985018350 979848809 261384842 993602598 329410042 433911926 481677999 652601619 738989791 261605345 623561319 574388963 120241685 543191286 275420701 1003225535 644136245 760170308 363904992 97380533 987987218 651236458 820239673 6007111 1027346708 369932101 73658043 4271074 591477407 343291718 1064857077 620707233 480339826 458051591 25632251 405150398 898993426 655389138 312071746 133261480 1046366671 392329853 888010284 368542785 1052482151 266690547 999937980 402029895 92709844 672123575 371815405 67594208 1021736295 719257902 449698962 366210490 157590949 753723011 427833989 684383940 366862705 1068338193 405001411 1054208347 330952105 316702171 813574119 806332564 884025010 703871867 292015192 50106408 742195267 521306976 189070499 720288921 264716918 357729273 424465241 992181034 28514699 570790723 1043403793 13029519 443110046 105147621 959664964 783898077 876927639 872982013 1060011681 841871960 818335534 85341715 906763180 914296522 313452732 496746144 866386862 372361267 362635790 760719149 1021478939 418692334 149287599 466330449 263816774 111645357 380153150 914587177 135782034 61868022 895609292 490247886 1050406066 815453694 177777082 603280806 801338017 707955753 208672526 1047019548 129015682 912514775 414196865 220548666 507117615 997717585 618619897 569653348 887708824 276538738 368087480 592721000 32155666 933950730 374480464 659579051 886612762 508471220 526965405 115642327 959178410 852561334 695380744 978404593 432487284 1027042790 455249533 654675874 446820567 1061241309 421861609 57512999 238310857 1035960182 7087074 998774010 275948133 768975703 244607049 603468579 876292006 726463351 990778917 18343886 838724803 619523365 845847019 234489311 928006625 478497550 925302872 250575638 101494269 932708059 953840272 78297301 131374670 253908246 71919679 855904007 1001523406 540491364 267453130 216582574 245705995 925782617 230009131 261725910 357089159 18326005 106205567 46513054 189313207 546812041 470428555 454778691 570324248 436783300 889981868 172775286 640520857 12232749 871507960 325495086 505063836 285050414 252297541 367062151 532524964 242825262 339634010 77104476 340809761 322496487 607182483 523827866 865272837 972502729 205254041 1094395 872208685 1064851884 656562797 796435040 147872131 634152138 705935265 424375531 461340285 83215359 322458103 218817223 213463125 1029860017 758872148 714090290 774926000 806005756 795594634 590323328 771958431 742147203 469059607 667216794 313329585 550630772 650261536 459731772 330592265 793449728 587630877 162951022 390012069 972573227 455271062 538481802 972053588 524923382 571401930 568303323 525704470 513815701 686977991 721829764 767711521 99409483 677639137 998082467 532118727 631695316 941938037 237822918 125051553 1049876064 500910937 467089112 1030082099 340176086 113554100 584990002 296492038 290112879 81842230 462058065 1019385122 64393273 759114563 177232702 123862963 837141403 392205206 39050957 487524948 1059918132 18756663 262139309 639576563 618513092 728640112 70719980 793891791 638096526 251576567 561786112 814813321 741155975 353230580 1071932338 919354212 816044902 554329997 963923674 151608779 177962382 496102417 861804386 750085662 235491322 764465255 307500270 118465267 54484684 870477280 915958596 653084765 961535917 613657188 644883375 516332681 711116615 671030047 502838884 757692231 481885919 39301250 558497402 313917466 797765411 261336563 457181674 992939956 687377057 572293864 836195650 686772346 764534209 1007648042 904254872 50334878 672468328 631336612 297081172 881583773 1068788689 308014622 820537972 848620589 152066055 183223908 582681091 270378753 844364960 542712012 363420616 392694667 578637137 864068381 212426536 319983534 1008372792 822833116 340484761 557678276 192078396 593314334 46545834 738606509 725176214 508837145 828027358 401174702 324691976 549491955 850931324 980986169 970152863 127888316 242890853 379469329 111744137 131559005 980321250 722659751 815521534 923767241 545299154 323719322 598486448 211953117 742318796 765297629 106123458 1011252499 761791137 525293193 817536156 1031243182 917045157 989157250 750786510 602470500 791391785 464152831 432759056 1021344059 397837110 722116352 93529026 829409742 999967867 708839664 478177515 985897771 520163604 964455128 702224188 473852392 644125642 954662654 679352463 705799081 671583962 558041473 768720980 806626732 675454957 1009210604 1034832566 30750627 574420580 830450120 364580001 875450945 4932972 625284279 993683222 559218212 520826879 26285581 129280925 198886377 754139819 575174501 1064885418 675380939 259590131 299073845 486684962 810778410 549757470 772335161 678493755 465026034 326003847 775673229 444564976 536115544 690783651 804928759 949371798 954065986 372484843 898616589 436123540 569726970 45966143 928121653 771581951 442077270 985660095 771140810 746535476 1036969336 972478396 877485191 190083246 518479150 705160845 632207413 751825282 881728379 146257604 422580681 449844147 714531304 287862104 413805566 407722072 178743022 716613023 461310760 914848676 237580328 879195598 987917498 631816303 295135250 156682417 631370914 217500788 891419211 997445458 234300623 1071262303 271392762 619432534 136387706 970098155 814691289 962469630 740734602 925698950 801328386 861353631 3182007 47196821 544811262 488120204 307169221 415477227 959542336 1057769116 238192486 472053738 877644620 411592198 737895108 517976320 589083955 540981833 795044144 212827498 848810543 476070977 816345418 518443383 265939066 352398215 297664809 702649211 1015031930 680814350 928162064 704843132 786913640 813459634 787684641 472967851 402647187 985797116 724282468 910650359 275058048 159524340 425422903 705046839 878664514 766700361 907050304 149716341 192113427 279236666 614782486 619665765 456620124 314265792 625396169 841921702 23538668 826325920 602025900 196806288 856444812 564268488 653377971 1030545021 597584512 708272942 460357998 327570816 533035422 102656508 892664658 894762080 418462287 273438962 893616733 550309561 918722206 85757002 899545211 178350198 656995282 925154396 482730031 674311134 576456324 128485867 985271834 1055355118 622960420 695356606 270594695 79748978 536007384 50675917 936784696 108353638 717851269 50613306 443173321 691610615 863709764 802615402 402775389 688448860 54285900 768908412 1060131261 113601117 1045884252 395707179 324059938 316346074 58466549 139601434 1004768944 25143687 420430059 302888176 562465504 550587874 474943511 663696577 960537646 132455713 596932425 521484852 508927173 680075404 790942288 122721846 163547738 105329689 633578841 303202796 704753241 192165515 367480315 167872113 475371757 568956127 539126599 598238196 95062793 952718354 762946770 67327498 990000466 8962930 478566999 369130037 71238631 1024304719 298160770 23907840 759411509 1043267368 806799420 898448822 524506797 646088296 15902350 296792632 210587942 924898053 1011037372 549755652 869036031 722819191 686591638 880441213 972064808 938173945 682308562 742990400 767661522 562888439 574806675 318656822 64677534 563380019 215954774 692932156 282131129 1015664546 977216631 755823906 922699741 209516197 797167918 1027574076 532305548 714081166 318989927 813727851 686007363 489824863 1027833450 88356197 544715941 653885013 1063759607 65382108 62401230 409509686 482527201 41826526 793165860 349464541 899676998 301676549 593511536 401433476 693730560 578190527 748402323 335814796 310982097 158937158 93019019 366418077 148533129 989147562 547572738 322245747 591850129 594769631 142603012 56975436 244749009 190457740 1018762203 598899550 674448344 495469104 907097981 408936697 440588658 958309353 952439506 725552689 737430444 428640825 329464558 389744866 111134595 989744887 863240601 93201313 51271915 699969075 869512780 12840172 794491007 557861494 611739202 593682462 790829213 456839684 25044688 603782376 661543578 670828550 171152105 1049887464 806412207 832722360 958070893 863771566 238413593 871240160 208550056 20802032 671094051 434583474 616696049 551507627 436525341 863132238 63838640 257067651 582927410 909423446 822214763 84977514 918639162 57948376 462380038 725421475 311739325 236828400 10678420 871350667 943092089 104138317 999257494 485085203 661879159 631989700 40308671 1055452126 601150164 226898071 107879264 113374078 541886133 562680081 190746627 558619225 565549655 303468716 884656214 369815547 260757470 188259554 378259729 77347780 802631309 305475090 1013465122 471261194 220908905 728350636 122021635 397580299 980346077 355229649 544123980 8499528 1052802641 37646211 637573087 497562933 460890197 397022326 99879477 624175467 690022975 410779925 727200007 269102914 981911192 323659799 236057592 1069513762 1012601904 973505469 635590524 629406190 1027138700 573078756 218107105 968238639 53722766 986710897 96577990 433896129 637393867 523950493 124885796 10222617 678509168 275529889 644344593 58578850 302893968 1002805523 317160356 208128730 645642558 220706447 550246255 672159510 899515465 1012420456 454151428 1070023314 254324521 389412256 491105278 391906262 832082319 272178767 271635265 967859376 95269621 975266734 1054397224 329267532 339251591 738099405 1066357693 888216549 945529967 1020964817 586807121 147881411 744428625 833095460 55354427 938318692 1059655626 91799747 193742003 653186430 227351317 602461926 353332931 917642070 38067705 706662259 923418775 252066028 734028000 181981186 823540025 704180346 511489060 677683618 527385535 384813789 375578542 325257849 4765442 420068502 423193721 289141879 255882934 1060442657 568164123 51516474 463164199 218245011 31036360 548324346 397952926 933195421 829243668 390593280 926086321 903517481 880479715 3577653 162452891 146580763 614193893 527312994 427937000 667752248 460031469 390180247 555201887 111687294 518240615 130927191 295281839 254810302 1000440709 827157202 580746038 163988360 570291817 357012041 907353713 692298381 800291953 463978834 394574056 275919025 676079720 17885639 875314122 1020655566 263505778 1023903298 949175446 59888266 483618996 881928138 96119884 480155530 709303395 243154440 154353303 772078519 315467858 315641306 43844613 686373398 326382571 359337428 224183547 265820379 1067236249 999513196 530879126 498455230 948225603 109846390 335729936 546625852 532015061 202585594 928258992 1042062440 381680882 215767483 15060279 189669925 424348382 919740162 732804490 811085011 108152410 959730608 70111412 936232184 727984771 424913961 23584106 750988940 597169258 853798653 682963089 35062241 875198430 354782238 545618160 704367390 741692608 163695818 20479944 696444498 10072090 19875351 362394317 344601838 314273899 833666438 600610564 983312658 733201543 680089898 259333099 441620089 756651126 366466446 1015399122 57958838 289366615 445757746 867937603 962907072 434194459 385400368 13782518 995061341 894282505 597625960 932726250 438789103 508327194 914372165 627907118 885161144 937546910 25356722 175097438 227067963 637634003 125949210 755625844 909495171 183404868 866034148 890175320 824603722 612124857 323100947 909600509 665447656 173409322 774555861 894606933 137654252 410119391 998390258 1000807835 502442601 654751869 636377406 901311243 154772739 1037034951 814302431 558793283 1019943252 887851093 873599410 191113886 116692626 422679963 522393523 806171442 131940743 246998922 817371536 696833251 511020109 788129181 309314161 529014168 1002802846 480148628 349188865 41457868 731198134 339146153 217362712 51931602 684499351 718017826 1026888513 717434161 367142247 860686520 590914747 633686702 910394816 270980033 956191988 854842340 302654162 875536632 719862127 1055165536 50782678 1030358734 334623668 932063429 416207515 206169287 732108000 236217235 996158788 52668909 588160869 991743124 419715059 202227411 72527287 611238508 493347059 909607265 994325701 355009656 111017617 353932748 827648248 829232955 267550870 866014112 167503163 265861117 680363456 1056608983 395024351 947910617 79789959 919249880 455995465 1038283193 1051538399 550111714 617324039 457025323 922678656 213182239 1060448729 470298544 172483828 724499413 621075056 508656827 360812472 613838180 678505400 959372115 109109943 746167765 940038716 917446868 981474666 257774451 246612714 316340355 100998369 202992103 498744665 484832951 931008471 916288528 1058491819 780989362 732925559 923650021 109456766 664278418 827860111 20694267 432196275 571303724 105185316 242350515 546652658 176699645 941906605 705256520 593231390 293137902 474035717 106505011 445081607 150932816 653382803 31106060 606333926 438227523 1052705974 623790867 983637735 845787555 709864840 722780206 1036503510 683293918 154211541 665191016 9277444 304616433 242969868 974577425 605704585 369200690 12591864 143800024 821041936 325433641 188112837 549005555 268999284 553916242 118247867 169955390 355990726 816163055 915880814 936863385 568528560 660857585 687349347 450352865 109965252 429934020 456628447 812189551 805762021 99615705 1001821280 570132353 147683006 544367945 87447700 513025476 662886231 529248559 859143660 50398763 13423006 406062807 324298442 743473394 79606531 65584512 414550652 824887023 877471085 821501999 476028458 448283891 1020569334 924078372 104782319 462094131 911598136 98909761 346291957 370060434 380787625 522963708 510471477 443796267 330361521 89270942 297202665 366750897 855844564 390004207 240846437 234854962 977556979 935979404 1072852490 1046949826 951201263 192192861 180538143 382484883 849092317 1062144773 802923181 529509718 361062157 66158399 289976280 1047852059 106512787 912140380 324230761 439726020 878737361 896921161 559011632 175516220 9635747 189064574 1069101604 682951572 864385091 268382068 23939683 1010948971 196603275 479684 554467672 549707998 410137199 419223430 42071553 828609111 500471337 646569111 457004862 425305758 141782971 823015930 947413036 1021993848 1003253733 167229736 479567941 464754060 689592222 226787113 109343981 391619248 909624314 264087443 532644376 627822596 118129444 797465677 1040938465 411016391 650219663 1068450421 23460687 293404911 368956325 666864422 285483285 237717963 546298166 622510347 617387275 423017596 940409905 277751773 255391500 230481122 238817155 291285278 539793274 733663262 786047945 89687166 559047119 1003500243 100773857 811918689 959049540 779367393 874311682 595792966 684508959 738436153 860053543 400412407 430911458 966030660 143592734 372728497 197034786 1056920738 734568580 498002870 481639276 690893044 751483893 192925059 954641544 729136892 623311855 1005817340 86915976 1053379612 651700997 131374280 278180801 408682962 5514318 779791479 556371265 897899688 685414300 144342209 79800491 84081895 207670974 168676887 38696480 862317123 256994645 750195244 352518585 57394427 109410826 410067130 541312646 976371253 35719308 239539258 421476319 1037476959 79512980 281228308 51982041 937628249 793846089 128008834 533075251 368788060 877326954 737841623 544136340 58955749 708967125 942213694 767896324 327409795 479254470 112121892 406116144 395363981 322664078 394307995 458123567 500448211 434386275 529597671 242367840 311182913 245627938 334070606 800908181 4120520 92049698 132720969 573960960 220480413 617232992 933635930 957818914 975714989 937714304 258784239 935047364 589282839 477749993 634234475 693228406 560559547 942264450 602556409 83301186 477460114 108545216 886690151 660351372 850158 600058262 1019437537 364327582 515445659 322277872 489931645 538358902 467576327 948797029 1045511519 930278030 187010705 962818308 387254085 913037801 858488145 809074208 220130185 876239250 939982080 1028331880 181572927 829662332 1034115718 982218762 632956681 676407873 953661757 289531280 122839362 693913795 406109811 917102666 1044953262 1036430186 221470214 680646986 809834578 477175968 191557322 756440869 822686238 572382119 658022902 332649359 289007000 51845633 1019333729 726704522 550301914 424926002 698995639 746377038 587651862 155571414 895530070 518070665 928158054 156832494 779599877 258030921 1017828100 168421015 919093696 930017693 245265404 40607370 680392589 45834127 565821462 442512310 536407051 323898594 1009969872 333115389 159308727 331439661 281878621 30675705 858094732 24666354 717106933 324309391 299103890 677473620 46455321 357888276 362348067 1017808014 203292193 950620752 383294158 504763530 86115338 236326988 34178499 605009589 636571907 119288004 849928712 981184960 793702799 137026546 529070069 130663114 272286536 842165116 205707578 1002455828 878060765 120672863 818804310 105649617 219787587 408893774 837702455 941801552 168327467 41117308 288708366 4389137 228144707 603267746 546575867 924335188 330144018 121554989 926780942 414004186 759812408 506898399 275861862 58768278 590765056 633523163 479502224 76622164 772918757 1010375541 369452780 637363799 960482364 592721885 927352351 893857455 19252612 258069283 197532308 241385622 155218431 195153265 501405735 289925165 1004433862 361902308 571808725 932166926 746427384 826777923 999347800 776970267 494758227 869073084 84008290 273266978 543170400 689849775 979556475 7874916 729970013 487514484 801536831 44819162 864649566 470805430 811671381 541057757 773381858 614773672 851603043 429773582 285054510 404816740 582812839 658311058 1017098775 905481952 305384127 169045110 415913484 879880070 745653951 179991103 378627483 340197594 199717502 903645108 777889465 795840890 719036359 995320219 172690544 800683685 892147990 893683616 882969345 693620665 549963853 693376156 245970910 1030007481 959865423 538309970 813578706 359837447 687092103 65667448 792892328 907021175 935122616 795811466 676246726 971720884 598815975 758561123 127382233 1002901397 21627453 707578113 667288345 505454509 564790549 942732199 741644014 97230712 885454913 170814448 33246465 287876405 527011486 17006877 95946005 158957427 928022783 785489654 147989714 562201770 692528563 257297346 311007593 51729633 636414741 984363887 456766365 980249163 481500858 110451752 671099656 291886247 914694802 55967714 51939380 947545342 393164230 257929071 696625482 706493409 897435941 495304084 354725058 205842780 896343636 865466531 308752570 245055028 571900185 955980768 1029189827 695125842 1000419717 872430340 903173259 251693753 933189767 694865050 793415744 882037332 555666798 108062978 899144239 862207634 5117757 728340394 183482073 71597650 591655433 952416430 934649565 1058829056 665049131 922846352 304567161 696727534 572260982 916056103 1052078998 558946659 612830588 683794514 981992824 326004351 218775847 680078189 604668677 368374497 719893305 1063635607 11297917 1001520519 85742439 736566401 92775926 801692875 741310430 496230094 1011091194 871750680 111560556 638792071 999555357 679294495 802726282 638798712 986690729 787317139 787973480 617843065 316732156 717667561 102335217 968216346 587232341 395057393 130476460 502995289 454656185 834016585 352267087 663794569 75064941 9687114 115456329 789757570 73005981 956688506 695425178 574069534 931800804 975920814 522662937 593532669 64743113 1010083300 883881792 77789682 445698481 281953061 603794464 944115457 241338583 144675373 864275208 631436113 277643654 863837410 485725987 1047407488 419397613 156861939 312806951 956150060 353190791 355531729 144160428 819724043 343746547 321642612 221580030 798057950 28705200 125729194 1068590136 203421504 941378274 669191160 113308364 302134192 33784237 808374519 345793624 541975252 157847667 215948118 513285255 168468982 648034939 471379999 514136868 766408100 561566414 151002784 1051979667 664885075 37249061 783773221 294729626 466234475 853860771 960679456 1032297096 84928558 668282853 693768293 760596837 346796105 985905610 809738830 874733220 463067588 310551310 466694281 310645117 563583239 847659920 170253039 925685846 614290162 930904010 883138025 133961210 663712955 693422592 899761508 144906748 501356264 388399354 286491427 625255361 653980318 329137054 949355984 1002568701 402025204 5035785 356825939 1001870982 982711758 794071325 779674022 887770026 920696519 624534644 78974280 803550524 796070955 1012770706 775506078 958303691 262757181 979779071 752770399 570337462 335948557 685324350 662930112 502842071 83119536 845909114 385148177 133165878 698453831 279839266 312731281 691900337 569128102 436293197 59536540 799638128 484322858 59959293 867061708 561259754 953893755 925288039 927943067 195499478 934241876 833573736 330527721 610027786 347586513 508470578 429710879 945952464 611043097 774088731 865127137 1000895377 418834965 609486739 327547824 903791847 91948322 674047740 93600272 1044762877 694726449 1057531213 491451618 837455715 656660522 986425173 416088362 160234530 532652145 415734786 939019185 14793745 191400294 330564176 387505416 209842082 161018769 466045662 192833936 633531939 314789578 298866339 389246302 373558421 592020235 551105864 731210212 17926487 282205316 899974021 1036753556 425874677 508513575 1024477904 474565700 232308031 136571049 298853256 47957612 102977195 549207653 848632267 974456473 673235459 404050718 522839993 352247254 906102991 715669561 353445344 74557612 123130333 456450938 476755717 1060085798 1062749183 67615947 63408260 240782919 878139076 962272131 365034521 58833603 142402425 564496554 557198140 209908647 530979177 227146369 1068205426 488081233 576831421 198842854 231080262 218492537 248147157 515468344 872627994 381130755 167737018 834390523 957745424 663260619 690480942 125457522 289942249 301113641 220356520 689526767 1007798978 1072979504 838379507 230547939 117364437 495387106 349329810 665154233 279643141 373678722 974452873 844489401 896128514 545427555 257374031 875628243 461458077 859975112 26381269 75295530 95654457 479961379 523004146 344930674 279322129 163796233 734199975 1072007757 161043190 216412922 202661236 21178082 933777921 824709880 89757864 100398048 404405170 130645694 380054061 159947711 302979267 99274774 377168069 19406203 1025254732 278044560 359747839 294941478 859703035 340268449 1059927561 552896111 667429858 288118848 144894413 965830230 915325227 61974393 790389282 213943417 236980107 885277480 831147223 30855353 294432079 216474901 986718441 1039443018 1035109114 323414157 778096320 59602499 945104883 430920067 252720053 272526382 697421656 683422120 907628694 500108798 689264439 324300876 314233074 110049158 565331761 665139113 405829147 611146658 315383332 28368424 579088446 977293352 839511311 980146343 1061465761 205303840 388891821 699737734 88962696 150507235 983386100 750939356 353282298 746919742 1058026223 940320575 433518202 613370687 157758313 163271288 323151658 132122882 38823285 925978329 992809341 969356928 171633525 89647419 224320773 624970031 260705803 852790433 821025147 608281712 343312367 583535149 646115393 168079334 843884319 651996636 951387494 215410867 697647546 595097048 547157319 788254973 212671294 2644965 542534876 478641788 33272225 381708820 827733004 997277591 297566087 8458915 109876695 630842432 386731957 425915310 480817519 975993088 526682464 660792384 220563428 1002867964 711636392 868581716 1033670107 688165053 903346275 643874411 120423661 145264370 916183210 535810986 429377824 537228410 691910197 890311252 356275127 364624690 675000042 157768922 77766125 408401146 441586375 264384397 615866547 732965796 113451433 918410951 795244840 199264853 716793763 230180946 38813882 253767312 586211861 333120219 81103258 826768768 191423359 81453707 373367889 642846513 997234237 649641798 956148510 797704163 860497783 281515009 515561219 185332491 559889951 131546172 1046554704 1067603773 601357196 945089251 487417931 993529540 263470672 832005955 80085732 545974191 62560368 744035433 486038286 847058107 636327109 584566270 10800285 816289444 220618698 1008425386 960787390 782351366 39317210 345796057 170770078 946431364 454460203 86951456 932345461 8890208 667236811 947863768 983842413 765809163 69247260 227926922 386913307 1056775532 475744974 320579650 282985975 397276328 3582826 219398352 786891613 384169042 862315511 461660702 402725947 829007157 95472130 921860877 360860030 9174742 234231131 53241986 724642531 635451023 233318483 743582529 81210577 718173972 3764816 664419304 1037099237 438872696 125582371 439997142 246180892 956820371 919986793 789091483 356102615 832277357 130283707 460967735 561726834 666427027 981379257 260871739 336756501 150597114 948694605 1064242585 2438102 370707369 890455251 299736246 713569386 574840748 626115020 645952876 215410599 17262394 204782443 411534528 306997888 998509092 539505991 372797514 731413300 455615037 417287353 596925486 610539766 1038322180 95298968 706258159 246727979 775429265 880129130 1022594818 387020470 1051927707 655687453 967934806 59509116 584516812 809891907 585914188 760158173 1046469945 841013014 23439568 29941642 1042333392 800596830 466545277 596556664 845814433 144013814 992196976 121168202 479791246 202119336 760481419 1049046215 628181824 810833257 679203612 366055802 883649645 874519308 1064442002 751931418 209441521 228701057 586882615 882522903 434549413 1011314278 1072950558 620798591 599508345 331976223 628435473 650747058 897186886 268066179 304833387 539557681 152556627 630417557 440448737 195071346 1054717464 175451491 633427973 970396600 543450046 713665332 51400251 391383374 771273128 489394324 1010838760 636215610 451340803 941960503 207532534 128425885 670211967 856652069 574813250 78300108 72821465 514451911 468628387 486158088 308929883 1059581753 26912171 137996219 985174072 766578851 531822175 396331462 142545930 264578977 859024875 580642209 373065578 134461458 741693718 989321217 262673909 785205663 995338308 896776124 101214413 491947381 175052969 730748673 814191538 584892984 31461691 1026671955 104357110 627826460 813196313 910630279 43172425 249138630 217420205 427923092 277170300 988903107 375247314 587827979 897348553 905732323 438497572 955208885 1003758656 789009612 519543810 492478328 461907619 581345931 930116378 670860056 159991563 521894817 124899494 232147305 243812795 755326348 1002742770 91934330 110619330 842660976 913510297 433141796 1068124700 766470950 24352341 435203573 171848828 404707875 410578850 405709513 513446716 966082080 547593588 315417508 619469852 771846197 52295506 140633532 1031306077 1003306603 383164937 722961555 258918666 310624013 1061924537 974126439 207836484 385636006 503220615 198706473 969316580 966647594 383922083 1034857610 671627823 153972654 632615295 774970173 441801161 1036338729 43830560 888200523 558760377 201135257 294630923 628925859 25434299 463997342 234653769 885533829 793885233 151182904 791011516 345124783 641876321 593023048 489276614 670801029 951940307 389643598 180331340 300204088 23145917 11135735 387766313 498172483 773792740 613952202 960922158 248125693 404568098 575558856 1008011758 577016130 663489255 395593097 771952324 223205923 342151584 6315113 804623822 652112938 133865614 734598181 899312784 395068979 435076725 71142452 179572985 299440381 61132669 140310618 124190215 374984982 732896254 684241666 630372915 460517199 535616780 567535078 383394478 102935404 217339760 381510019 371343050 556327787 212509839 869834191 98696872 956486864 455135227 178599916 302492291 650409661 215753703 155669340 9370620 485224312 552832943 413034293 360727881 751878980 487003105 129900914 409574574 213147368 924382659 302826491 127650029 222753117 454267750 349645551 635047232 952382444 594593739 916573619 488928408 511247922 882229808 106125782 702026013 120399941 3074589 401436045 290758376 305479401 450433342 1005489470 658970520 701577514 863414842 269560338 582677375 274978889 879638840 826047321 607160584 125420965 535189943 974983027 272211017 871433926 480955672 230341068 291967503 29295898 313254635 163719497 397293272 961536643 56812210 1065764897 707764697 957662346 1017779551 610167467 528356062 1034418602 520474191 58740410 275233690 911258726 802470039 776685292 200525014 980822746 363764640 545980498 827238477 931944472 450318086 2791927 523659499 16803760 743867497 466953843 496102458 74964137 27690734 994763353 682996804 792118429 844048150 898826453 735549422 748645919 471730681 544769044 317550506 987524842 681606946 224439631 1019971791 343880669 710942864 252195117 392561631 72587092 799140535 951169843 676401624 234294303 172084571 42354250 157393134 142700691 978862411 66328294 119364253 424791478 56112957 839221918 156461491 718557679 209906077 122778628 714942347 802991165 562776246 459235133 100097904 258419342 664232620 176018667 488423193 823801427 763261980 332737047 963376434 839608643 11056651 33793787 712864098 57593081 631916298 121729290 247947073 185583688 15885047 660601552 329064140 630218444 289572212 728383229 584940987 205502479 227521218 145385339 450348622 203964141 1016508628 965259140 920481630 810957553 58486369 345101931 216936499 1054495068 790577261 858686292 676143683 578259044 545392449 445044568 918789760 341182598 14143827 74640869 888484828 212985929 260817204 1004462148 989158000 734910481 785512078 754807383 316913008 401355391 467085345 827441230 859377351 364299978 84248679 622656180 525028308 155959367 188012803 869280789 394213950 332031863 308431049 831138981 536156967 112507730 768041747 592545801 206921870 604752481 1026654591 342854185 86136014 689597543 752705950 974862931 114634344 571801644 926083719 33119677 295529728 791802511 305298548 916687010 232989689 438285357 191255517 788398023 1036150956 432047949 166461742 240465860 880906348 469773783 775818459 902646400 890086332 951550762 161854743 544356241 27471136 785258549 194912974 543149423 846366476 428015305 522685143 818837532 329417905 209615381 901911336 609663917 733804466 290687297 192949161 51165782 1011902730 120353982 161580696 485895452 1036584394 952585859 516843233 947343380 605633206 665623051 462575535 1052345342 1005124946 724477497 485197296 127087604 115801104 927237476 536886345 784454523 321658858 800206322 652557504 266741611 931685522 575194262 1013832632 442972297 964402126 465259834 109055742 614928741 942045619 27796925 996151535 335943558 318846887 886381712 998837809 322017932 853216853 64583129 495640912 19655100 470859096 1006428308 481489550 897782840 1050489616 55981823 463571547 524630599 245678864 664803260 259909301 865532846 1020931003 627244161 572972712 29234201 272893384 921768995 915248713 1007299149 873129031 655170975 346150733 1028661879 891414434 353208668 724150511 549320985 835510150 155596050 485250480 890667974 428685176 309867805 125480637 764452030 571930555 222109367 181267499 520200888 773171537 952336503 772448074 814871134 233272768 993596 228674422 1071624446 370837755 878593017 321560076 736097568 1063988374 1651527 537892783 971240272 786027045 25022484 219538174 889735775 652204953 843330778 727018533 296247940 798758155 538496268 694878943 820217701 963915835 539126695 540480797 620886009 1388132 807505543 566819187 34706283 784592018 1055538618 537455371 1047256364 983885804 658812363 217504019 447906107 495923460 659411509 93030092 429871288 169292796 1010499187 508739114 675356062 151543385 392319865 120866409 316629603 435888614 234401874 664814050 36843779 828474418 623583237 1069018506 828275702 548288973 204000973 438528099 1021989950 319118401 604993602 994809607 348120452 667157595 330058237 309093754 995697469 541828425 514687716 109630382 478807949 210106212 853708384 17692316 442114336 348950425 1028307639 199085742 292108275 641639383 613167015 869323166 667478242 555509518 979409481 346837021 608606853 451382727 576736960 708455425 634704687 532052110 878450643 804248819 487367070 679432364 83848533 552336954 57933456 518585288 287409972 122857640 1051354023 891791096 362482048 825090329 825254406 270067683 723926709 209425546 52122705 167795525 143936283 434489250 856737450 31903695 189801864 277441174 612191002 613971694 466346628 37023715 928001102 1033747118 952703369 3934210 971928153 1011266968 686888925 302714909 950621908 889806682 882119888 744145840 1023600975 900401238 246466584 321945029 949307861 804820486 257921995 397231583 927370547 261917587 20179820 511266674 647629528 25725671 297948848 698393036 584123088 504547334 460296112 126351705 43759076 943997294 835335341 1055444059 714773867 7499318 721368416 516273365 912494313 895376739 807000793 1009323355 700301525 903750568 97375693 615056809 34355840 292847390 791886196 928434629 1052931725 665206439 287811110 87566826 859073311 521579063 781817319 571498854 221118806 753056386 633730995 197942379 918428152 544979203 781167283 382015758 821843733 267742132 78061140 941028767 954213359 859651261 859761757 117860922 1046822305 445605421 234977249 646431520 137389501 610091280 243702058 915361305 937947551 1020595469 480296452 856974599 141193269 398622799 729595857 1024000546 1005767723 563626005 522687905 859623867 713129420 897602594 280223980 804219836 1038610036 585713690 1039822094 145421361 625144286 353270221 594192604 1007101866 364752566 510573837 841458198 854487925 788644636 371916372 638498394 659213280 1060008354 824300492 945217655 215917453 274499929 292668604 544550036 408811298 192034771 324277956 668837181 749119403 294586329 252756433 359749144 556864350 1055754705 872872724 1042086678 807956698 606863505 590984166 795089981 1072877795 986335612 236642553 584466208 1028170612 688083927 5127452 11258082 47885870 36709476 563143445 992423613 228156270 402702114 171617720 525889301 993916034 900540242 505636627 113766286 513500803 333540067 435498907 205154924 164141229 491732375 99153217 882253456 1045319012 904445416 1071986045 442061317 311568817 899813094 1039628292 506140503 614135046 319029981 750665019 897866069 202997663 984980733 37306045 363129818 146965928 872383488 731924169 760992581 280839188 326638811 39609638 662022221 526905757 651614111 1019692998 361979050 948291152 950412704 823766218 77499502 915215829 247599121 477091596 800765083 453089300 602315930 111312059 572044673 24136786 234242997 798611674 273990199 26588659 134007457 811214688 526353940 76344932 693823336 439351730 250155579 1028624017 837319806 122222845 473468509 212596786 465792681 479306635 686304469 494835562 104671265 915319817 183001792 90303826 942218446 158950162 274662771 799061466 664801297 611533395 572002446 91717153 102262325 410005074 234163461 142183593 93753817 991399955 841411949 483609966 449252920 347624082 409984696 778156465 686881121 756206488 119369636 451767238 821764672 934244995 1053332860 330272508 231816026 180707662 498114080 645597100 1063091995 912139721 813925105 984380655 950730503 163077354 57085796 978389315 244586199 1035752274 380780008 626574952 513546311 852329862 368212850 111205997 244208697 356686744 17785071 773859277 519751210 807621538 532875734 429688594 453506116 598004515 685524492 708306169 140323292 7585486 164655321 28879739 695203326 484147976 361710025 635341549 597786512 885899924 442994279 212142546 77541068 160817120 990741952 334742892 457900577 438813090 520954299 414751904 192986821 31586007 825880100 384617269 714936670 1066545288 1026863714 953153059 218506724 1053171900 117177103 746719665 971822865 468089861 792938789 731436391 898889022 596058152 458882076 293349807 1062322488 1048808292 235317779 114549798 197609841 1581706 772241808 136220973 574044599 950215427 104514038 1024549970 579627265 487961798 167077700 55041364 585404984 155514848 945028260 606964054 401561674 259479429 590752613 1050849395 955931766 974051304 920735721 540021112 190283311 15060345 15303361 996625658 359503280 622465152 975087260 220103571 257580357 800263983 443222905 327003129 839375997 1025074047 694189054 393223379 421183573 39746438 1009731201 1069526963 529925165 707958979 1002296634 408939126 999601144 535420092 911735354 142274270 261497404 130344768 155853136 815404838 826442157 156462192 714412582 1060717504 841938919 632185820 579934556 1033008525 520513236 351264273 62483954 911987942 258664818 661203830 234013763 802687420 193497342 490046996 1028367296 1061573230 29902607 957583196 984848252 752189012 643068396 231306002 88963232 628886893 30522199 332915248 798267617 148976825 550409275 461867650 177427094 907321377 688972481 550231562 478587003 687764823 785754988 287301186 542839675 980197385 809900533 25884330 887348595 349940780 533305689 460406230 394581407 373958815 634211323 250162923 999906093 47591313 401583605 692548341 989460445 969308833 340236018 831877805 927461173 772490722 768834021 561384512 61510539 42371502 102939530 24079943 556424941 426003207 279112467 521483073 733817761 397379617 448821362 155005642 376840605 332977581 188332538 1064792887 1042970018 111761394 258852432 753643412 777167343 235865413 297700683 806837461 1052408964 1012049515 501720796 403517758 706742110 260840258 827877956 433451687 590446498 17713473 267218927 118985031 783209673 36005323 232335566 132242826 495100856 332860483 541044878 127307206 49159158 1009633058 725906480 485503186 361537136 547070776 34356946 403821789 616523413 112798948 934492257 126663906 671437182 777408871 195380549 1017523111 576904876 160117591 47067202 474255147 525521723 360461956 435304544 233328103 263538165 544577696 695943946 243001138 49040598 124827406 818874646 450222491 305605434 1058173182 865105118 373315355 296954743 581514722 605799479 294109685 488938008 460070357 551789179 115171240 186406933 1004670519 615592941 449043397 479208368 960267442 1040098214 929007813 596839012 678037984 981938091 657376418 487111365 929523623 267703835 780056463 144737138 505350992 95561509 663902334 205189284 456918530 781015847 13455788 724861901 688924865 640160075 451067133 472448688 222826264 93207431 836896776 229063496 533268983 262236638 1049381691 136366438 154543245 460965683 450144142 396021371 565595407 544841697 607046574 885154422 545431204 729153944 1005927044 301602908 880943855 820223152 221339608 947990356 909265940 86702616 24957445 870163204 72790624 47751005 584983340 1065569557 420913288 449787006 194521471 862343984 412638240 736055665 217260622 815377193 757456023 489420354 495476108 500901420 945561322 290703252 376440694 187913991 525918791 857401061 230512394 461976413 236364243 840416729 941208970 408621673 992173871 729747279 361787043 876322645 86389506 772469271 626636876 878061182 698976189 1030104063 558672895 281597017 799858321 1008458558 108269038 263996873 649386339 568615566 195371197 986113218 631143471 62810989 940493012 184592458 276114985 544483066 638390452 72825519 552547428 44330921 868917874 572398533 365628750 472831193 923460006 567934004 183369597 478542884 115293350 675224641 762339815 871117097 705052678 1062817514 688511362 422445882 289147449 125736223 860174587 416010081 605948385 88433600 411155183 359751596 513864632 572661979 381610198 488244166 992244132 312180951 525485930 680537526 794068743 462975169 1055601395 805324286 941053564 871287679 691559172 62508867 33460247 167740501 907330244 156257161 814799880 1034279728 301490777 574923311 315566111 607613377 944987622 93795319 795170744 1070760405 328390397 1072987668 362422556 990562584 1032830595 741366381 69781882 215582487 332504234 600798433 387774837 808104417 90293950 887963965 495038540 982379981 1008759397 408755392 216170516 921109072 1023394336 264057833 619780728 866176155 1027941098 137222648 566053203 710872632 493755712 207806406 117706689 217414320 965710375 136034838 740552432 803640097 970506997 858790777 747271576 1040739316 80800823 1008902300 508067303 1011576554 35194734 593392927 57622748 242034988 156450779 341773329 480644058 885889594 439279443 384802280 117533397 811219766 955231276 819203712 914173701 659770989 987195637 259853345 63026487 798863196 850328366 904233764 992266612 392364016 479896115 810634382 526412684 805505283 257479234 543126824 437630519 1059454725 663326368 267994646 490074044 140092483 885774145 833761311 876979837 63744260 1031642016 12835101 173287751 991752881 742625726 713795833 583109544 117391108 1071775441 40361763 831429142 65456228 266828292 159309308 771613016 740282677 632189873 150326481 881513875 789303404 90822027 100986510 850456888 374977362 122310858 999293529 851027760 110301766 319035536 163731361 297319502 37461708 127162648 1033811760 682645178 357992705 447822732 84236049 275628867 1045562915 788998648 827595995 61435749 93453113 535900852 66623669 1067529803 880972547 82452662 373056304 745630594 696063990 1018333114 204208328 261025043 1049516528 596683242 1045029610 959153063 317881088 3366672 426253178 934779298 339337897 1048838589 909030310 196491402 1022132423 940860893 87226539 726222393 589698012 859315954 182952452 798366880 243744121 5388623 596334024 60460500 338268588 864184141 402267103 888573090 970271802 1059867481 847873640 521115277 848966640 339986790 176904799 41486564 435640113 31385699 1042329804 610776517 411479372 353888473 590981603 410981699 30832387 862891753 153629765 958271006 876243068 167355122 181150931 54142792 508458235 506617415 560386088 64655638 266379981 214657520 526514527 923946474 363165560 117326490 1019397718 764774480 460707465 556131339 570706284 459681241 613748419 359765084 605978605 768991964 201847860 707035297 686211233 413954226 666556181 737121583 667815240 741724744 555900266 94614676 583799848 989521973 830518213 743793195 1073471257 958032082 632872509 498248855 117769231 482474434 689600158 170536270 823813704 449053640 727367754 540841472 841272189 684402174 452474594 1045285553 169961158 331827732 157647341 238695561 639034765 684559808 768347593 102193788 505462793 874532389 950529627 472509496 526081899 232913675 94063005 79930780 553793736 644353407 553124628 580934192 268021624 814545501 76722552 119254391 877703209 796660433 692188905 873136875 885555655 1029737727 80188106 536157554 733044536 119419149 820735215 475338840 702030326 669141104 15830887 464559283 969514299 714930470 262478667 728477446 137176123 173466569 340152621 861236621 551344853 719623848 173319682 120021768 630343464 942591140 423112777 656931469 348465983 998993714 365123908 711236458 489521627 963590790 288478043 471835769 626451677 114897183 451268268 327790649 872103237 131011002 1000893069 806365821 843497559 7316960 965671594 792355755 756870113 677439178 531522063 761145395 727798321 660541874 469655696 936816682 753710174 918503220 634158480 818422397 778636363 421926245 76777189 778327504 4942791 614079483 567737309 102157672 813089439 544002660 414038014 826595260 615604236 496617410 991857987 596858387 439109131 839072433 619769473 698046723 11019669 5147625 411602079 37108567 329667820 251458581 492545180 447105509 385121342 652096357 655820289 190220441 515328599 826967275 185223174 653095475 125919020 648138283 511794187 450903793 964803507 586061076 893543395 93169086 398851982 861642148 267639045 997714659 1055122637 224947156 79405385 984240773 365105292 12603731 836752917 745605924 1036044658 10272178 244457612 426448578 1055968180 549706353 738039759 494438621 980671453 92549317 989070863 302957570 669942670 247927872 413471644 328536656 518206193 438918453 675561636 401429553 25869301 216919098 1022585851 510513124 107733493 281237746 713166582 927653101 736199238 987687452 334367642 430120498 975563585 863023931 1020471080 894826992 397445836 330028832 108843540 254727610 666478053 432828186 516777022 657558690 686700129 145220458 262593892 538127525 492291147 357377977 1033102360 860176067 892264694 743011363 746697475 340266056 842602160 1064338316 776065163 611697369 757386363 221448099 464076690 28161576 31064375 1024939850 943922427 73849999 716244087 378771164 428015292 239160158 670871941 5071793 516799097 753439818 122669619 547372694 168231795 780099278 98835057 855712575 943317267 548413329 901779885 157559330 50401694 397727203 400906645 290718824 137363334 749823439 769677976 991666724 1031418958 502857345 22708501 174665900 422950628 640106545 294852265 442379423 32563668 38627660 484103460 247418212 249179207 276890283 836897675 644700076 322817237 631923794 78370813 70859878 189127212 266895246 706020177 837654493 755751064 176037433 243801106 1020524679 935180620 921993037 792066563 515447941 388312319 393068110 774060409 92940644 867560851 260271702 467683685 423581516 704431261 589851237 902906722 77408231 793152586 815605231 837101212 714155343 669004407 915736503 75389925 864802306 890212485 282763709 475972844 185985597 1002012222 537656871 166612212 160347003 629987001 790541467 463321821 687333785 279031608 831989771 963916850 825643822 253382251 498251140 205470974 711349939 902771011 85547551 870881626 749215912 1004622816 856613641 662378184 877929389 606173173 386849783 210457254 384444775 806104486 190646870 474278375 1069589992 1026432489 657317755 950135998 740748366 481155826 623526225 680830548 302513263 762530488 652404119 846812572 348166026 622641584 960473569 391897901 521795280 749848818 718854335 150493093 228220658 760472671 175177615 78212514 1001666833 1001456929 19359693 776974904 149677210 918216793 480855531 454984412 953156509 419138972 67595447 666255268 372909364 628088003 604581082 328754038 303608657 693475725 128200883 219611154 191456511 640172848 467551785 486529468 774280397 8708826 200744106 827766320 211731459 1050656205 617036891 704300474 684095649 699491713 975510314 1053561983 243592169 185934290 725791243 890578642 265732912 104104792 181468744 471885586 833853804 1058095114 11385381 799147964 178351177 852340810 547956221 139471881 144879007 66695547 868320585 104618920 192618123 1055206321 342705856 3701850 502259845 455798404 486527611 657003249 341666894 447783330 850009514 1072035636 90408345 632880796 328206672 847945493 40186284 409139097 985807351 195992992 861400952 1028528109 420362409 265580230 570521314 208068648 783137864 563717058 352271795 277792940 907777166 12311993 730562251 366819832 537051889 616984646 637692306 791830530 658136121 841030091 975646558 266720121 178859094 612134525 583335543 933054316 442020835 615122399 260690780 169643426 525146003 502203931 241108205 52786708 938873895 689659681 1016662435 831499931 130608905 1057811895 516735082 503147423 1014488282 484985255 377170766 760150526 1051202106 681209778 687362041 870851203 486651023 305275263 780797789 1067967212 1037064772 1037146178 836545892 174574844 175677487 1069554352 237616544 755709052 889799971 641539249 253270622 276614007 63788637 16033121 673752936 1010948842 80907858 786741696 744389888 638401642 412562831 506524051 79412074 1000868014 960596919 629987486 137984053 1008652182 1026048555 423076216 990928467 428626525 199966282 686162961 529251132 610996430 1039376809 202218462 156935750 608639107 722489772 10748809 89095064 706566743 464038089 711994914 118594450 833709788 631749587 632065786 75457998 503360464 514938103 721066398 1031903795 315746546 566694451 299543641 555611309 896214351 7865008 61272457 797682372 728737772 892387039 725914514 520794716 689449668 19439278 442902011 505321767 968547780 251048478 769817287 754750230 27731442 876287126 188056309 656710340 256495505 123508342 1029390038 292959757 939793392 1025585374 483096132 365010510 680496598 643186457 764453902 485026397 710607849 826987225 121582586 898088124 522816620 857056615 960533566 719328447 304984892 405107923 61721948 364994717 288119594 974585661 34665637 1067479408 294548118 717180736 944091963 1047447776 785510140 219270577 698875464 591679665 878375768 649141445 1069965738 139194789 596122310 415276190 316616193 266876642 502409639 181865887 878410519 194894685 759789797 187464764 864077882 528100024 1021090105 81759036 152340820 385877643 344470315 78668286 303918572 930639173 427390661 636250873 1070306852 918927363 898672777 842637821 862904650 241241817 144181360 323267514 304657540 840118364 41226218 684391301 714408260 61291946 549244719 978227705 590956377 32182793 878638167 867569074 996160675 425076478 982074780 774253623 110387579 65621332 7051158 202604877 423218606 839235662 33200111 1038189337 155871596 626460278 722503531 6150910 124223628 837547779 95622923 496813121 386670475 478599779 66454458 1045314706 1068220995 531647040 1071382760 434478452 1032192205 655249187 273612664 30544180 182528263 855850521 817122273 150262137 981226062 883777697 367186111 487004067 143947347 556805219 822149257 528397477 303313843 124495022 498705753 740172468 360983698 488375541 528717940 1061340763 803138344 226102525 832366478 774517364 392123080 489151936 321025034 266542879 714199144 834404852 872366002 760139908 326032726 995689396 283225557 549853685 125567651 1072977627 428042374 483635342 594752608 499242668 476822063 1040675365 125978230 905132496 895130540 1073696194 556078964 787108810 638136434 1055523187 862819262 1071905491 723697195 52876950 269161596 706852962 9698561 750416414 999510624 87378882 982267213 367250191 921393578 457904393 233800541 1064667174 897071305 666958724 398163229 449324722 98019177 354833899 1072456519 54970949 402216100 110573280 139780690 672964624 1002071133 547841250 479735954 103785573 41464054 885496429 245125249 118441819 947825675 700149627 1054832818 23344568 406028807 231320324 977108831 574877603 788314403 1013199274 1052848751 245960607 584682616 403498009 942937960 775789085 206144592 76470992 105091091 1037769713 8769424 18552597 72199139 371830804 96996738 799289264 1050664833 370432476 346818731 737342526 26178040 39834246 486924124 387945785 236853956 1011442487 544464206 844310393 792506923 753149098 749455670 630004187 309322569 292575666 239431235 253158069 711668314 150908575 151321610 31774924 808657955 732559078 575264459 809295596 200318211 247342440 397358247 413762028 743976376 681587429 457297962 782210282 358023825 595946645 83121648 1055638273 736631252 760230681 830398576 435200555 653854149 662952563 136757638 421668554 501748326 982031221 346983043 33751170 928894457 386452718 863123046 616625116 977190341 504763166 346681838 205593088 371223952 72933910 489883427 490050126 722441852 621526525 654395084 430730992 912145577 571803053 638945089 246172696 200370472 197708977 622787157 534600031 684963553 549560884 371065839 310743735 369075916 344954940 764428681 450312031 907790775 619608462 885377240 1062493137 733232371 7727398 23647982 41123954 715568740 172991220 934837019 159304092 286066882 287039883 608652249 603427877 566833477 293641712 362407821 322529530 885091899 515495090 908070881 1048472681 922256937 285560565 690201833 471002770 1009995973 158809150 789371371 272845311 315019424 97877935 903519998 507814537 874802781 827378034 238576132 995699146 829734446 580155804 84332869 657099132 254594959 505439380 828433846 129419075 1056240708 943588071 271755361 550235972 527109064 514949294 80630298 352178471 25979121 647880814 926547860 148677038 5303781 427267192 320329920 726808849 74290801 293974175 69154962 2606659 535322005 603701 398148958 155918907 91987648 360901428 915372065 376192897 202870056 1031997284 509049243 112542798 264530496 308353732 1056746789 128184517 838056046 324461489 144007048 282377600 431639097 790367920 593262663 820842222 136158391 917929136 393013147 191302002 183447076 754427733 237973351 408663650 28962805 885596010 388618662 595906457 576387280 224080331 131354048 626868169 776788148 550727386 811651333 857570962 504163556 936282557 37582028 198163737 1061277092 661265446 193522044 550707421 226113554 777659956 332999568 50734862 1071131352 1028943786 612819200 1050042405 59070111 604307853 285997464 96382573 635048001 150245087 412521964 957938531 827839091 789688289 217150027 968690998 827805316 607692823 75111509 594824433 534592208 141965712 307837156 259505091 358777182 502673672 484047064 28273766 67546799 790885302 201740085 1060841368 569156964 931782367 927085424 1012234435 1060360445 390089496 272069856 599042632 1063407818 637094314 387332012 930285590 165219256 63336878 988630648 932740560 108735619 845169677 458120447 712436177 425262152 2507558 691296964 614267118 881912837 476697708 876340900 614357651 586560353 765611751 518507002 499985967 804003580 416835106 203545550 76398888 164025308 1066985861 332017913 239953242 459192384 155656008 583546837 950687008 936841520 1040668868 18545413 456002006 435560389 1012703536 645762705 493362471 408606699 177152109 452626154 669295035 252567892 295732285 726727175 469902216 622489112 1003285689 612243273 861594385 943481322 162393117 364023826 44634415 525176868 1045592739 224375916 581502439 387413991 647660278 878184509 406813361 420989414 971871812 574777797 824872661 849527973 886858082 738891220 651892104 175435378 281068359 886821682 205402846 834647432 352147208 645848680 527328639 415825647 447906745 181182254 34193107 134894451 630594443 1002526214 906179897 972989375 425072305 814430880 192936694 97192264 182618106 515652302 170740944 977317052 764798939 967041083 503589912 795313544 510086323 721955118 356038817 180691787 198025135 350771651 520729889 1040146852 679233103 605375290 934359222 251843487 369023438 681455655 656679795 50566884 671861914 656001524 118948615 642027173 113131455 979182693 798051780 1040434267 46771397 601038621 1056753179 683516305 63873472 28540394 96175777 13419895 696978227 296619123 904292497 1041766163 366016919 912477743 747615807 960402127 640260174 826310539 39255972 872702405 669172901 44250165 254021910 348459677 926732532 459687571 49774775 903013423 731131168 459287216 956171325 585236965 353798305 869715565 148021596 30815134 521400573 821497110 422437014 808641678 764942778 769466637 60938589 89779238 618325595 429376844 470420063 623872464 205237192 726927554 736550267 108583722 10398907 97315032 763026485 1072369646 94685010 877665888 247834285 572501551 480837440 14519897 283546442 218493706 93944478 191476327 566191555 449877263 455401805 584126272 289271596 632117097 45747539 84550796 300575389 916422053 385021442 565694270 838584164 623736405 831252955 419470837 699300505 49234293 199701213 206420446 325633565 924091692 265218466 787129264 680392183 505943166 648126442 59292117 607963356 30251790 726394358 372772656 273072881 1011281272 226955063 176971100 1064423887 476125178 116026886 552984044 327117108 677073351 860610172 1071343005 610304460 540859712 403106871 628080499 1012145889 1029316198 844664756 452496276 54762541 47687065 620932469 306818605 33998149 304461165 68058465 913906945 487123810 609872259 189053452 790965042 116975006 2887074 761172973 238231450 843882672 757684687 614891602 767774154 541316937 367185500 869749122 311868109 983174015 453438338 173334792 352425930 590413328 702164952 483571534 237461386 528097882 950941606 600687864 156161879 77673483 914221062 206240387 901498557 900812728 227497013 35834357 831698166 661991737 850250274 888920817 297671458 565558538 188251761 622068732 941336842 772214973 474166952 955253172 972886253 632585832 1023703028 187469686 579119142 975017807 144389759 415657050 562516685 579369111 503406497 383808437 586150733 351100491 92756658 693882287 608210878 1061426659 623563892 825385214 285697837 757954756 55394952 490629444 407379444 698116424 138803970 541372921 950287560 110858892 480944450 1071151156 819356921 252833330 95979786 993335755 902690162 876235430 377103559 675854628 332996843 102321971 182067136 1001622458 57966329 1063373885 689627554 871163265 448136919 923078005 808158712 586328635 634818174 937861048 439183463 918733847 804121604 173170821 29581865 477668335 974222934 1039950475 767020773 241979442 279588153 640443645 465320223 490639874 417667470 948905657 998392523 523134584 826100336 298939585 994660017 191180964 1062342440 213849964 168038288 1042291150 141731883 111952227 48353311 1054353445 978600497 718095932 585653959 657761643 124506524 311253169 382941720 526361621 716275115 986409552 73445590 644187830 475859690 1069891030 938680247 707790235 663306492 1014634282 944544180 317681736 265784964 13060834 466740590 497510141 530657543 929227372 93756694 800811404 874121239 652356999 805942046 883180370 576950448 684121957 12082767 803017181 754218736 61972217 916850884 819542900 790470119 524202746 504720894 145210506 419008143 471810498 93866887 916201910 1009562107 799491803 142535492 773081927 690423048 972438494 173518750 1011521865 819413437 183016940 322543465 331610776 190125720 686474310 148974347 755544766 862788910 50259354 966049139 99457729 511149894 626785974 49775876 387951678 12296586 83935226 395974480 654142666 846708518 564998903 332754054 850886142 844604020 457367225 799251967 568610907 123446691 967648313 128461662 30389773 190467671 470255236 417786564 517239629 450852969 949732407 946281685 789855564 674644678 354785301 972710811 764556431 574449718 78737697 940713149 962589013 878990493 309229654 564221244 687438370 744063203 623734517 346279598 542542984 789506038 495478632 1033673254 850786053 130986596 986489213 507311113 167000473 573124619 75591267 469576642 902899780 976311604 952658338 937605064 378809762 51272521 329293493 539071107 777199945 173035710 881859703 745395350 450281130 48398367 6696211 645123658 100567723 676435295 162448772 179657598 300857009 206681717 1071398797 934385417 1021121873 454095219 481900337 893837880 324050717 408718483 54711611 323052227 77254879 131850560 552040593 672214879 131162860 580846383 176249223 1021394001 1023452470 802038886 603783628 458220100 999488562 79745224 472461110 41453568 525421841 902126401 151819654 630035711 12424677 816651329 307171494 547798083 160001147 451452991 239370105 7508845 793511424 621423549 728480639 691396156 340878371 275153417 916743957 636944555 1046345010 310982496 475725890 395950512 164134584 779768136 732266704 37725751 900670358 306303329 734551188 204152989 775461809 151631927 615542845 284690918 975454588 807579630 441035267 610335333 264045793 896700264 212548137 713979372 375515664 14965146 61249369 226750395 721193082 1002293651 535147657 29304065 105396768 355512514 130354561 1046298185 124621591 962579427 222738817 7894820 260719860 139038121 761536317 247143704 819619173 183694940 1053892067 889176616 998295641 911825414 755664606 716019505 587182464 276113714 1044267510 709762890 11086701 666131674 418505451 422284585 354069759 304559307 826889619 96856810 63344487 871531561 682442745 764926427 684150794 778657120 212528074 70133275 356615678 542585925 207212703 689333028 479540226 514139850 748947003 163738655 222146639 375055590 78683391 604788672 371136182 215382939 277737380 497560713 290174710 252437535 123758095 12622876 579672081 1037248833 685854950 832759626 723830751 644994948 611812513 960650393 108295937 904416988 275295468 587007100 91498843 299383348 411658306 826683153 551728241 1048929501 912710476 669073479 939914575 369259297 311801365 528416227 382612442 274879054 356627489 932527773 323915711 249145563 410452382 110102785 741463245 276873533 565943394 1020586724 166608716 578517757 423378829 904541225 686246748 412850210 660805877 1030051767 391306246 804561404 878744595 971890731 668515905 1057110075 123526830 726390061 210226724 141499640 1039408845 640250984 603992878 324321123 840532639 180934287 789525154 554721151 97285176 508827805 249740919 41381583 662288556 1030295634 616810917 364584705 1066830490 944833579 171850087 991425159 1824959 927053619 987934891 342554698 958537567 685058306 960328419 429257997 286717998 951649937 355910562 897427298 3798640 962090295 815854552 828517509 535228062 63622748 225708932 197792265 611998223 150684292 355525491 249164465 1022242648 460000961 1061352889 78170698 956959835 850567992 898751426 571639196 924466777 66357846 76341745 664980174 845889458 34681072 700654286 668378312 731435446 835118116 367872325 890722564 919709423 679518726 165337289 735563708 507629451 464587769 174414451 528208572 455769891 642949249 687409957 1013837648 965762104 64115154 845106924 684097086 1016533979 76308410 110036196 149635529 345948441 43330672 607924785 254696572 472059286 247381557 645231913 387987765 951351997 532758849 813290535 161168323 881816084 427314747 725860316 950372217 24564785 671045487 537753266 197907938 291097384 353167718 508520953 25692477 986632919 886782847 946320541 240607694 922248789 872328783 221229267 399946166 796599348 131450659 1010998433 461906826 616032973 287838285 159028238 270281946 685243199 853154679 32995058 463269824 420192067 79844514 874993476 574926436 1031998139 902761618 468557164 738699725 138842914 687162125 571030256 846379265 527777803 312453191 260284372 32132161 55775925 879869545 860042706 543401188 228132942 771049004 210350725 337288740 729422190 202550699 426310933 880781462 1036507946 733597605 933620359 796687581 545114038 787020487 778146993 192186703 369703795 663090559 754540237 740086108 824625944 892947505 146024692 900281857 657044231 13542927 61957516 311734805 889782199 992970208 685098766 821454641 327682445 453060987 172742644 487426070 263041972 922557745 675739832 1019237658 115468545 870940223 648426124 348040138 261317455 975162734 881370949 243151612 9467493 440340104 938866255 226119123 876830150 426117329 223370770 89194871 371624260 219077900 530067098 435468743 592521593 893002350 1048749815 625782969 431412062 150818382 237895734 605890962 40249806 116658305 936940258 75097198 721784126 790070795 436476876 976248320 272344236 613429604 291599114 914887607 120046818 797212459 374636339 999896632 651749885 382495345 385121776 460429388 965128473 210520333 788519341 212603805 401320300 591666399 891893529 226747445 507962231 944826983 323730384 213327428 700404814 250011431 232529240 880384355 761854084 869014814 265056638 906322074 708324967 138207587 316637015 853151616 850737328 624621702 449018710 666646064 256170185 607854369 575096963 898400411 150063438 472714624 602061668 1058029704 6450246 161772011 804234484 909245103 1019194776 613639326 657759147 384047381 375705050 675055020 203009321 430900999 853448160 781453808 954436727 63882182 98099231 890379817 624318797 453052338 905755071 195008953 247643194 1043752407 368985005 764253 428346014 67709112 889192303 954256872 783960138 866541487 293481128 809410685 642901827 891316399 19780701 437630472 250216542 182074482 43500363 456203507 1016521512 648063771 765598478 260733801 450758924 751959372 1056066351 803742116 182035399 1002669807 1060247151 339887871 607532607 675858852 780585790 120481867 157982768 493111143 495591015 10302517 433008950 128221798 227155926 573278847 779209557 568511552 801687797 498606507 936044551 103611610 370487986 1040316677 424677160 1035801745 828033176 946482886 40236526 112997909 589053647 603536780 176256442 109114177 686173781 399299842 751798646 562045348 649886055 207981078 56278423 54034145 941338447 30070489 560708295 659131650 219960478 312363472 655570919 936056490 1019468125 700938060 331925022 585728560 213217138 324168813 808107879 1025949907 856903039 270523182 505470004 1001390873 845306659 250227057 855996573 215859882 1023463539 564324544 141580590 529574257 78887770 628037364 757742809 734268445 582932577 537645735 932120002 647396367 688997354 334422813 687592791 331430642 631143055 872041735 689913897 94740149 925432719 41372483 613002651 462726 55393287 903062190 458750730 575828563 874215638 866486432 1001125480 797654928 876287763 648760784 96848979 500865232 402094897 157886722 858152833 303567269 446498260 413112372 3702687 656048918 679069811 8964127 502856461 790035735 802059333 847234830 243498504 240784194 596720588 38352275 902156447 860987335 844180503 598253650 37020217 590288549 910442217 377499028 488148304 819553389 338655010 673606770 256140072 207639837 897372040 164426133 1028713936 562989048 508320989 287920560 1001982587 57569513 87753541 992322983 565543625 896299243 496078466 726622761 562110730 339182891 210873421 183779396 938663853 689509211 799781869 89596792 265710395 577048751 539744988 611735509 942529371 888659946 70273614 336410333 286702043 553218898 811639115 464813140 87606185 1007985861 810746599 213599428 252427179 730640123 611231054 256789930 694385756 252202559 602447759 424815053 1002203183 521429642 469289833 262734254 814965798 581207410 509082851 792671289 763340454 484707430 446923554 969220906 842915074 1065430993 322480654 828699362 351858867 994287922 380529148 349318949 416215899 289480393 243763221 210067331 318963696 233459078 142608669 996466402 941326487 649713173 731904569 232300914 279119412 484016473 383604137 467854018 568738782 717670557 663541027 230827398 326025074 164323743 555607009 266825535 252460420 655829270 513913422 467900844 580911759 907657955 442444200 515465311 615249695 941018131 181308228 534314012 486353817 119540308 314194639 720342388 430788593 102834607 1028177268 132616514 207154096 164942475 510094458 724672018 887577440 25557099 1053161927 480341471 554731476 839778707 926425924 43141533 164076824 964199519 1024713767 267807220 888303836 897973119 420520551 51416805 869601199 215955623 999056451 1065494900 679053089 644347320 87150763 225414640 838418069 752537607 113263435 266870285 86499765 453602892 112446689 779417297 380196780 598366433 60049124 337309088 1064195138 348471419 428174563 145347862 199867503 531588852 173381433 541985974 760045454 796338025 905610990 212584115 874552130 349240300 637590482 948477555 364467379 100476939 160003590 423453979 70930733 178173703 193213707 438036557 989208592 899017514 260493244 262322531 660949070 1001798673 91402868 724104763 1001824847 402334965 923868435 555645532 978480928 813620179 214204171 65170179 119775856 805133321 16912625 244874194 1034353483 27024094 338355565 238493088 428146956 449156271 175989100 814387275 69389558 105388894 702796624 140990740 833594548 294939481 67921103 128632877 926699914 528845290 1073543347 537162395 567843767 496036027 253262260 226724791 663772982 1061610022 633513569 999628248 389383461 756574971 408819764 790952063 538950334 912640900 380971587 747550186 307722590 914204766 328860735 200911972 886061200 180069096 329802878 279498153 921272987 614667048 492533334 57403213 330901133 706616256 524575899 976508659 126262489 217786982 324126693 872461837 164521948 111690529 695443374 505825398 207277624 609727850 599419885 969866741 50213597 262183107 333058391 435971812 809078558 880053367 713568314 544642192 515797791 418306936 766864988 434570085 40818620 487464411 710340364 100579272 931216224 489862649 224020566 194592406 611589833 1052316509 176362844 751890737 1046808247 651987416 894195299 541565286 301390218 376584158 480752369 723722349 508748648 603821597 904658155 158895921 259663028 904268301 637765289 914522310 313377901 40903278 870904099 247427271 135632840 490797927 167512259 877066102 650746435 925264700 164177976 667584863 803842491 605712836 693051503 1011951644 614050725 468326330 903584584 928929649 67440945 308396500 249104581 2993403 415781315 79261502 686958682 742351055 522485342 684238433 42718374 374657413 941308177 529500120 53707566 536495519 144415052 806288575 685086771 349843100 684891423 316172643 741557196 754579415 545837602 269724458 643329204 469097714 1035908345 20413216 457578069 357392793 830104039 709465052 614195288 252850290 158159696 1066539499 970726662 64477021 762427086 48262479 604299635 590083300 1016771574 497368526 660949505 509955259 864538260 760547751 1059873290 107817878 101473310 941632289 409055809 1053928302 192187163 768240519 1037529203 676614215 211224746 35933426 1001971432 438400675 98517008 765338178 623839824 694643020 403585357 244814986 984935329 420753547 662186290 531303881 779707037 851671764 184215952 1051777805 201504083 159903265 16436131 872812702 468928454 87471604 143372069 68481414 4778444 475911883 563006102 506226664 32245967 584652815 177540436 712017002 918573554 614416130 419235111 833938005 14942893 972266721 362363532 429781033 1063332906 279510876 445033717 394481873 1039863447 259926386 1058202675 16692914 344852188 314992300 62402511 732115036 25488969 588121109 433702116 673062498 81361574 781548636 802042206 647421926 258946546 450983148 501034507 590767764 552584563 431327420 397141371 882021972 578838878 316313625 738654490 653523750 421453049 976902946 508465174 234686053 342596727 6053356 709150363 779990100 426905387 1002050525 906621867 642113100 672415817 379886566 747929226 478812938 880613232 482186638 292509933 1048227583 889119258 415611170 438979697 635577666 114349261 743770890 688572075 794956207 423689858 607975799 19079470 203716905 961905654 27922151 945751410 200636773 431231403 25359082 914748134 493388849 650669992 100668411 442971905 151470175 105499948 737089225 994364964 59156634 160161710 677282567 516374419 78756900 705877932 1051238986 373391405 594627217 1061631990 723592268 667377204 397606261 729715098 609341277 82913713 399258654 1017062124 877086214 648350342 446206801 682097853 600958785 532980149 258051575 105558236 306979173 137045306 933048072 1001323076 864198653 99155048 373192837 354115092 241466132 259044193 353489538 122223236 170327945 491557199 521477551 658909813 262252159 427317323 297764428 266412898 457337204 603445550 736957047 1049530007 688013837 248499035 501890499 810854592 668475437 952176125 766737553 62236313 137206933 892215162 582761988 251921719 916831256 137456358 560589099 133566021 192720118 988851966 195356126 923330202 977922390 791262165 376583704 956607218 206140353 301453964 213627352 683105288 89979106 680386046 694315116 671185019 1022361487 722800043 641220933 214219199 414825119 294787800 512533951 542621012 163600385 441847699 125922942 593446985 703039194 563300423 136985122 82304319 399287238 122680722 718631368 464421215 678994305 275614599 353514971 365526696 402698603 252205763 1055310875 248228185 897626560 685888438 134994184 330483959 1005962745 737834116 888509135 157735167 206955506 457959052 359538444 139893004 601523700 845334313 151978011 174191465 68732827 611687743 343347154 918423003 34628249 107334931 422990228 263888037 491551878 891181036 440020651 98389729 80054341 804761978 352952742 94125324 391333574 450418194 537696244 880423047 319744316 914591655 17127400 922007277 919053359 155096599 15971412 976298718 407978366 557214980 626395203 197696451 926838703 359663466 821408028 1015755313 714849042 289519963 838109669 367954910 804651842 322461281 368092591 757159378 1019970862 532872508 946268394 669425434 696014591 50558559 258998220 679515236 39680560 277097540 905910052 515936977 909195679 360698893 213688416 433908401 254935826 1017708336 183396519 889831705 1030317205 459772440 635172514 500812314 172391364 640855514 91410925 316913748 139615626 385577008 999950012 628202287 240106004 58014880 270306083 150440781 811061549 787413978 69240762 207125781 340217473 182841197 344523040 40981552 29543750 155404435 802412529 549496864 250334668 334384176 715406460 225414122 964889986 843033274 508025476 605292464 680306919 542321329 512759048 877436084 311533131 496211533 733411988 819253914 490406594 122931620 286502032 68877053 478664954 1064301605 30146671 935633795 791289325 784939223 555462888 1000460897 391114314 1056301672 595404488 845288553 622621873 754519148 612720508 782193779 833667475 829175644 1050524474 261885568 544963795 107594448 93918949 815564029 905513860 959548672 889713768 614444940 809401725 278440203 98263654 36880557 408847731 715071395 199868704 495708375 380881537 373051588 1068715755 559864262 789631286 503658389 237280232 308571744 1058081861 91099326 52009496 495467856 766457101 236658947 859242274 81112268 369977237 82941109 729263687 694911193 489146202 359288319 987259963 967625866 554787933 518056249 960980686 1018357994 282343279 1067922289 281769169 652027720 924877924 378649925 134915394 527173666 87768058 913358225 357792437 609115679 355943437 121609528 1038814033 213681414 351368731 1025537688 446339641 435406489 281812166 747276375 462012269 177489302 931427629 933290179 327192754 986366971 530773561 849899993 1061443053 28738213 2544408 1021392013 952650847 554305471 265862842 903580593 916166102 85416810 44482970 380090832 199836548 647145357 960312421 15164912 500608623 155748041 184036193 791402670 451474316 51822126 158699400 219577944 516205723 1010155839 666708949 5676767 440685010 952871940 952392522 4903013 715847052 155076834 30017238 920913388 866294550 117600749 101082315 992943008 558493025 1063744752 372766253 761678471 316052606 633952371 869075038 518599309 835136672 815774622 483257179 261060706 411967680 1024332606 457982317 841083676 218606862 387992616 112031642 603304868 551712869 267744174 201655871 523707458 823497505 412160563 814409150 831026875 110834405 6479520 365891684 587783054 919111432 427507193 699377065 535561975 624835990 186890000 1070338136 547938054 381737176 765876133 638020007 100545538 380733501 321417938 451669692 257335257 130366507 22008807 920082592 553230468 103388650 749371986 346102898 200199304 1064690306 553445545 630775265 877161484 426671484 102490040 270859576 575952692 600543629 1064785385 325059919 350886328 534847355 224420397 918304262 28430509 558171370 499054131 626177543 492831397 263517757 1067832457 963826114 601610154 833939930 268746973 1066496906 913283418 1027460873 79063682 649119520 17207126 183003508 989290934 958902942 610323030 499597562 881555181 402318962 447107634 339513804 11876429 20704224 279195427 840423790 977451054 936286394 115281221 640223110 723588759 769386177 995856620 849245145 726946732 931062785 1007625591 257922011 1031306230 270435605 411714994 924534658 211101806 829312527 954720889 522205825 799463823 950679531 500774018 1071496920 917094353 550519011 1018975421 296736093 624853513 648419909 65745296 47205716 1027068568 440676916 72301026 738644807 371099582 432238176 20943446 466401333 950581291 721673841 708686865 995402399 653216159 574581665 1060533285 266466112 1009767546 32959062 630991461 911958506 446268353 918391183 723866183 637373782 93046246 1015969 222228111 45100857 830751697 994174393 448302791 343525796 760387296 53299720 485198295 402382504 996753812 312841627 970613338 743080130 889495261 958316429 229936248 31713131 899859387 880923580 731458415 793678463 328826646 991938926 658542072 316656008 693573005 395698365 398593214 761744699 383469161 952492946 1008077675 949792204 58746068 215085839 628854048 270620609 476915810 1049102323 761172897 69366188 69941783 778904653 862988265 544761578 585892018 368006285 437288751 853290394 984747654 994449385 864463438 701603229 238707533 408989094 426154214 595729648 596915371 868330768 124908254 317517107 1001914698 1054649513 983067882 557659106 556762010 613751345 684261998 479638930 162251767 435719910 316520805 67450985 818975719 484069088 456420942 244005546 239936461 145304905 485104181 376471104 554975692 163266155 279760115 928577803 1043705569 412623763 916870123 677944102 375224290 205264298 498375268 495981527 538159392 208528835 934930969 46250652 607738617 561161212 174193252 902687671 1060290140 562854877 829355996 620437508 510120980 171898871 461532524 600204746 762381185 473990648 725052837 281019474 187750496 148460552 109588495 513122198 296769170 1029260566 95737610 1068057335 176266532 771014535 396418082 45603218 991320102 191924638 891351502 151272676 767193501 883059701 472808467 429114498 959997200 939653352 651432055 688455002 215516749 878285836 48661348 442715948 457363141 342881922 1051776002 369306776 971204153 958363375 142117671 626816739 818400578 563193023 946149210 580386864 20295467 512239328 892256845 376772152 1056515629 180712620 506527452 921804271 317951426 136170963 301724957 895934034 957548995 416345940 344744417 731305497 299081863 220740390 618511137 995133588 510192165 119050075 524682906 722437581 811698844 1042829554 325339883 69859186 229012259 474461264 872841146 621703221 312852700 118749367 153166117 96584055 86615761 748777438 940648583 573737327 12966505 446490761 703433810 855811163 758473782 768125850 96361532 70702061 746691719 413740158 297944801 724803720 865599604 944125221 743108125 238047710 187662859 204561085 860065187 45140836 364128466 334222986 7532472 1037600237 985185737 1035801374 1006815257 702125579 778011835 613697708 202475491 417488761 767792682 253688896 320441187 143168027 997968255 1043241953 473953685 567071122 284661269 88010448 1069958716 818811841 642890025 334258340 308351902 967944474 1030066238 597283823 494411897 891701635 283372289 137213492 620978229 391214828 116628055 297990449 222648510 51168754 901463532 676110232 331026000 90321367 1056024832 1009129506 219851956 289423641 320061153 611543828 36109401 151339883 34591712 624236774 965294319 834214947 641050426 884171643 869349709 892346245 762154196 186486773 683256260 394434523 840436417 93267107 868932679 574432611 210355723 161679063 660834912 110608477 988661425 999797500 133155915 700369037 467799305 821878660 773314391 56126252 977042778 990984868 675316551 875303950 999857056 740073109 834402911 986813284 164536095 926910086 610251326 464422851 319993166 204381815 500770490 216916952 35735222 320584251 1027685815 315349140 657770699 62633380 1024444663 180309906 278387442 748602924 914854772 450407953 977991277 314285263 127623412 609028993 874107410 513276419 1065934110 1645115 842878636 641241334 387722227 915597426 1008744483 895821351 726224380 130524456 158877256 691062462 194424206 999132263 924219392 522592749 39120088 566861060 64982634 607712984 1035807246 637716983 993109602 492872967 833462005 1962459 987009210 629909346 255885043 235235415 40714975 398811967 843515549 372161479 318037909 575181538 968588233 689653989 310920252 1040908744 520903366 945808058 802750758 148814289 614383901 850817682 864368105 762521253 481633014 565224804 858151779 174279641 671438194 614126526 104930505 411415761 198389870 967322344 116839401 864850097 767847684 234409554 308989552 1013268842 670028989 452060152 629510862 798226282 81184938 618598569 1059097856 300364415 658064446 209729283 293769911 1005904290 1068560226 102049719 410509781 870395027 525611496 69406052 603505532 379084789 646024331 160465505 677074701 286899185 522868810 475576870 652197701 899751726 464856165 101904152 451134526 427682463 39516017 237847254 438895514 978256730 717152123 541673227 636249753 920411429 1032222013 963482092 291432168 542939190 729551424 714481409 684241348 468346637 691378968 309341486 90924535 812609103 315224482 455394793 1002665081 731036675 18695087 296609870 344609702 931943489 424717508 936627349 377715624 920666644 1048340789 472852140 884338295 561862349 746978141 870442422 1055375523 718248891 130590921 339951419 854649953 27319779 431665965 197490006 799412678 807007434 923634977 520680823 663397563 73276882 100710825 517617777 721115904 953931329 827406448 3212366 966454453 469698445 445536610 497072367 213881259 955846185 400891410 474511948 859758667 388504102 597032974 583416494 156752949 611241248 778162344 768473415 900452750 310890460 865511282 907167463 670122331 666351603 937222984 612224860 1010722478 506761926 321937114 1039434250 116256807 317309460 141249327 398611554 1032628674 103093828 1021700793 563040542 143373942 400450172 267271356 1019150721 638444434 19775123 982049620 485030483 713775802 167700108 597233369 325628316 334444411 652165565 753646449 613556262 253213823 197291598 384096277 928459861 103664125 47946429 1069135152 1030571695 831827074 349682191 285374182 211113438 845584839 819333312 954425260 606337554 681806669 404623500 75845670 538664885 554337165 613228872 1061059687 940758994 405564853 210321691 467471474 53130225 414754517 237381200 231205471 164327257 282209632 553073967 96301759 235122474 919432526 346316043 455263827 468712122 215706237 270324766 290326322 547197181 758651114 26198631 362004634 306634075 416868686 140220693 261694676 842417080 621683469 479067271 592500781 861065377 290855548 938725810 48476048 563437850 187720498 694034613 201862205 161594114 172498708 510592937 627308326 356599382 787049257 522071408 594502528 194692636 227468330 591786639 374248222 562017284 961121797 95248727 51324783 267001108 4533030 704707956 807638392 101273755 140933912 197758353 678520620 917730657 630180046 494247954 795819405 573448603 205580192 281630646 931320254 328257993 19304999 811142604 188522804 1041552602 925768779 817760004 609427938 790169242 58660985 176945185 616319889 465494253 536401943 26834960 156430498 857052127 926270317 312253289 255870131 919394009 1020858186 1020990004 997427698 2526964 524173797 323695955 884326833 747548297 698814916 353673766 1022223128 58502076 413874945 1040825092 949101282 776266393 613638696 810438028 453872923 109912938 814076862 664958767 485384847 946308071 697060202 306848271 651821397 15385581 289045105 97135613 285526792 746745887 1036221822 319547051 937515707 992111440 931756189 226644282 182143036 131389271 721590082 72140356 1027582287 886458950 167286185 678329729 211945321 779782712 226639669 484047813 236023701 353817169 23965229 25233644 302935272 323274393 8319576 816138849 1049088959 5559314 168272139 275648905 465303271 379913765 195610879 437066140 341327473 861026754 707950620 859382446 832006220 707220736 639965266 305542355 28665161 389771440 787581820 470292486 897178752 477195533 738906528 376678583 805126195 398571375 55292815 1042904120 417241953 605689564 810215091 707401785 1017306851 904456406 395913003 302144323 809060863 989527064 508830787 987385620 134107628 959046200 889625434 969302438 976823765 818984197 658766943 644301176 400081139 862625237 335490433 616672650 661575013 303540162 805132478 225460302 254772097 179170199 23548044 383537550 389471893 403619782 834271298 455181264 350164036 438229586 203591648 73691406 280690255 591974196 833742596 498579705 1069289726 459953580 930369992 958274935 424299517 955956799 364262814 512929264 35319082 14738016 399094233 776716509 780855989 839887822 762589513 71053012 1062957180 599499998 47962298 215191914 488617905 617490986 641886261 208841572 638060838 671403714 855953205 36949805 389482702 787567502 660615682 699243245 785651841 978699268 191734646 462456092 873739427 842374362 128832704 478698556 696152365 368706893 856188004 914706503 910446011 584248003 983828097 16248377 21166614 66284054 862893782 355557360 958892760 837499763 262464589 535099615 517426218 1021782931 400691420 13095295 632722606 773674257 957754313 845661559 279918862 851561589 313793592 660013014 736490390 560589848 962008985 98185602 348398189 836094789 159642787 876761953 408612763 208788086 134066314 1046404042 779699000 482770157 221286506 421669933 654557045 403174678 418501467 363882611 167760952 747376724 103474355 691266578 506177340 76754243 72593466 313079166 15793598 126783950 590012463 56985016 927651848 1027924087 483456864 96203609 59582703 924518921 52925614 298877503 500691921 250999301 689667157 568292519 1053505004 670724313 409983117 615994953 460456563 947332183 847427838 518249611 1044248654 210866286 645288066 201336521 361936391 1017457840 385935968 707295101 705065472 839227562 25792277 293515732 418672518 396667150 55770371 905098639 21596287 308447442 68568130 1062159706 133625390 334773723 304334985 486064501 200298914 503028719 963044686 973766007 56256548 412023424 807051366 1058804024 396466915 112451540 465483243 165977684 624807689 852048841 672915233 310614611 487854165 77925461 195309859 866657687 482946839 1054889511 344899379 634704325 99921615 331317980 75447248 1001087186 210485616 939922114 1008582653 17153783 700780475 587858837 831957969 557291092 293195663 296917034 38732152 688320400 678124978 843744641 561807614 496371386 563269377 576137814 932201870 697464839 663932457 837415163 793232396 669573876 843974431 181999818 110939138 777870861 565077187 1055965697 721131338 208586792 370430140 46807818 495940321 236989573 641911798 710509530 144792623 941432045 710190045 338344437 321216881 733365994 736343568 799367521 989707865 170402310 39419317 892018775 875984056 477269636 560014578 7786203 610537111 648606868 148356672 281631055 312324348 33399690 213638809 850379565 745462326 16510803 820446707 952320462 84460056 129316359 568536298 454092676 940979181 337231988 892336922 185250199 857981755 688471201 447074299 936447413 917609171 527817495 625891478 980014541 1071301756 274565585 541041709 852481972 1005943186 101823808 818648091 970399187 53636709 206973399 736532354 874138940 785956568 710223366 415232466 484239641 264337392 907790100 871401303 426073314 970572843 234595940 294490448 945816090 1066707019 500875512 260622971 594751395 742429117 236920960 993710079 532094605 743312133 170811872 653377178 586111491 169427307 698942635 852985456 42157829 1071437109 322383050 577524777 707648305 935750801 184194215 1003690087 1025744390 177834716 75433916 800601347 964220566 552528768 130983674 615982468 81018959 825620463 470240807 303396963 587785904 651658204 284360536 526013913 222815876 294632751 808341435 533862514 939845042 474774270 582654844 884210290 804043637 335944953 340731769 632254718 873023574 837930610 202670590 368192284 1008198704 815603386 954423755 665768814 1009777498 604000669 952325590 203223928 937742703 250125122 941713230 391587644 870667668 222658637 1002550364 324904156 341630458 712654754 842984069 344178720 587929740 151054978 81487167 9520548 985209577 541855852 416112650 1052530822 435827843 445075447 674579667 13071710 681544570 316870509 158362406 111547499 529766539 483398180 417796360 663954356 873068517 259120668 956427479 488367956 593886548 247213087 1048509778 392674835 178306501 358378333 864977098 296125144 932523187 1025427481 975525032 587236819 575904691 535661822 116229236 714810532 213264607 424482758 857950873 100591813 283925793 165566280 150177512 1031692871 984480204 281925081 470530952 789342763 681402060 51324724 513459890 852845622 371789275 96898907 816412234 318331336 877224637 171692594 298850430 780106334 267494755 495824446 224059433 956768445 471089178 923438814 1024001139 843027796 847257737 657960148 167871715 428069973 871571263 547076071 648517582 695992318 475611826 518708640 1059351897 311846422 661551107 142829769 107384172 726431913 558129706 481964610 19127487 364922731 287489509 884407690 447746130 705190882 990764706 236459363 791127925 157502691 577870425 764197937 66345244 757449315 375974202 512508556 871756928 645867765 1070703129 608175342 337229396 116544566 746952383 190302394 103734848 71175589 641056623 912201077 865698744 953835991 900263372 554720568 456832371 794774587 431135219 875566627 299049384 3293893 382580264 602058767 802946297 975840940 366228188 369094082 620003357 824923713 94631363 286134020 835218168 366260986 878238212 641377164 360559109 1041335542 29807956 728897742 50241320 74577408 825261541 23256001 401267690 1011710866 5733214 424863707 61684547 140160687 104026309 352010678 773361995 359487279 821898390 108430533 1057328941 853905358 32300080 332518923 711384141 644878272 753259766 754843757 25747748 234823738 592422630 240893691 575705236 36218152 718827299 767474417 842459239 1060912198 498751350 786371173 832671363 884456382 5085272 799602481 492186099 894085843 305805519 841766390 36656574 355012117 1029635104 314556537 120882540 156242675 720183895 334278173 801445248 782604404 801682589 94228614 403230179 776881201 727948750 727725470 4973233 393738611 643475043 341616774 286317559 1069325866 697601109 346203283 572571175 751406969 350635409 275180493 130602212 645324026 687369299 770560096 620978927 953532615 91501215 584655367 555589340 143690663 678601388 575973797 1006996838 710775412 137012497 830300341 1030661834 27314902 362231226 171284928 794552226 146366842 265325916 314407468 392319959 746093035 710714880 464328856 384432474 407500562 834316147 316854048 292581475 681837061 250063019 829924987 952264703 338080904 732600778 290132325 306805167 347023871 808663652 460612914 692367097 938454470 166142074 856749120 864121536 20959566 975665304 205856682 720775407 418453215 845626108 598868400 932316539 377021097 729244236 507214606 757471095 480264637 107889515 234422751 922439926 145817577 755032066 1068348422 354654361 905099467 431436231 224280946 247576362 802714293 622603514 216422200 19649206 32798019 248938801 831249841 1050695842 301107276 649908777 633584434 154557650 720058449 1073602266 8866218 974328757 519100227 469792255 878955799 85866303 33341628 383146559 948617334 437758872 901594653 645020372 133409545 994748666 70804100 341417605 981913427 458894588 683898599 767551352 48650934 583607430 924971530 920695112 775072202 882823868 1065497673 430548945 611255937 485489043 552855985 765020034 109840784 137885760 976915571 758994646 73475819 76775728 851714233 827837124 31620222 39473377 59501459 61746479 545616768 340726510 186138535 637917741 481563617 268456179 303333031 582026152 795703369 964813127 79174462 542692423 849811684 151883043 209664231 941960091 927196816 911527147 372431320 949911847 674705303 978385163 139536770 16812554 643213929 140484431 922627249 653243427 858801049 150239372 258765582 287336428 364601820 356865717 864888953 329178966 226318930 949687621 579743535 1073429195 524245944 1005869928 1044416638 272348430 449801601 538806202 1065906899 506007146 232360347 29598295 711142632 742609380 884373722 2433620 836408226 82613054 999036786 687062771 298515725 262184107 202567387 47310060 527731205 617304969 11100843 732369895 1017491824 806555872 1002979903 222306422 769407811 254112845 462858025 350228554 195800648 15568701 658106299 5956072 502070761 463112598 942790388 318948586 619319202 496584343 171925120 543284374 583938443 893422779 677464209 233062773 746616603 65081862 886079429 812184936 933303137 566763995 160069741 714493735 813216392 963968750 876507116 603589318 391012642 21431591 806830452 329142738 1041521342 567715189 203022078 231527440 444079558 1053466639 462470006 817466196 87978738 883011323 528487683 592176496 135424960 316560806 485296299 439304250 629771371 841728291 465677995 73110762 831337602 136934227 346926530 112914833 974096229 232206946 111251008 536939127 953717817 1050390109 4657759 874189044 92080195 196714578 743161052 267430002 747242893 314142930 103663637 690795085 364741917 289500510 938781506 544840583 745355730 796359614 41742792 76432783 281477747 386052036 417055660 561128814 972261649 349829162 114731130 978937146 303528469 596986526 976392326 559782584 843825122 101877114 221514116 195726080 469960623 407064286 614543233 569768355 789690779 652591853 683246327 494446621 119210961 83811226 501639158 32554227 166209278 584889400 598773948 318622861 89218454 541947113 901308687 758585922 168405295 622166131 441005988 21776870 901357657 926848340 186218611 239267571 447454008 369038442 237319174 18129788 643146061 671886168 832532656 649275380 938550716 710192600 747454285 641504743 90536668 114917864 45982007 397144165 938792649 55899559 135452792 986752544 998751669 765587833 229372784 332044977 230875908 867391413 808263549 606196541 454139958 650431917 391547868 446031856 286266423 1038719797 380307864 337631318 555750679 697275351 825029292 354486397 867404373 94362284 668347213 800211861 17013835 870353438 482286488 923188538 721936006 898223990 757331906 275393348 250921791 74333602 995031492 971265301 913604013 113835403 292353041 717807189 803748692 582747923 1021220162 339868599 471578588 738653474 521320740 20407493 603275084 622454509 176618496 860885327 715092435 373327454 571050872 346790555 322672169 479335658 969124161 804095835 381645162 484256175 190275060 466120930 398744058 1054648237 513506916 950804147 336201151 47532210 784188778 292655941 182368649 223569773 729786699 759515490 257279552 137446771 765389112 83873042 996851960 581552108 747718962 834738757 525077507 982341107 278142173 485658612 829223922 103731390 1008380540 361234739 702497605 108810594 67483978 1063967905 339277902 839025539 297845862 235603268 569429325 969270333 357948959 479207729 442298511 944803550 1015835526 191667849 825232586 80597001 623090568 154704526 838982078 469335000 567834707 727968856 43396208 291292051 164047941 361758347 813189870 473774451 840224850 990611555 312196824 400611717 701607470 674230642 479986290 965254414 46226800 634541381 33854633 296919991 752978103 827377253 643355453 559660768 886422832 242582032 534766958 484763621 19590261 670840013 756857987 1017831856 740666832 487317795 814723353 1037071595 42256898 9451019 955400034 763107523 896506225 902882363 645891569 824807470 539497057 1012390745 66258687 954441352 823520151 737052204 304030485 411119415 246652533 82533312 657210680 909471591 962407724 315913808 601554062 797376954 341886840 90592649 154531792 226804084 549461876 866598048 347063626 118822121 642872756 324683149 80224441 1066169171 608789492 474812423 994053585 156181664 236261112 640633466 1057682954 529776133 974618594 235325412 952474946 799985609 324314389 225179998 183131436 584403400 9749275 446638716 993322210 1071175423 30739982 810642342 513440086 416347982 324055065 852278359 844488506 814032352 75189282 411035399 476022572 530813528 980729041 333996964 961131113 176906359 1014566123 706692541 449169268 1028569540 1029454626 291633102 385882313 458657371 550556231 647317074 30418103 85673455 980238777 339834982 883429960 924511860 286917444 109507481 215676030 61921713 153438587 895121147 445176134 825592132 402253569 828559390 446991595 539809224 1016352108 247669738 163906513 201249307 399448882 231161066 109034014 204780117 571513418 1070424192 965576995 1045857139 328637434 469664696 330663708 290395075 384727765 680995641 456078109 821919975 99774412 860826700 310368504 561881383 168162528 864482785 698746276 412146520 923037421 1057818622 307622904 594008619 685794758 268933719 381596507 75368404 1024629687 230417306 366431058 418379119 191273251 764035156 288200204 817261353 133626495 266151904 374835414 445401637 1069643966 573005725 470972454 30543355 767928066 370096310 352833776 77269125 86328697 137612072 338072566 122361799 702187142 568531720 246585708 447533496 984777448 1011977877 738340467 967002549 874142003 980954496 38996248 1059504848 70837573 451192427 421133853 654049668 190545019 545398048 936794249 917123100 42888585 844319847 931563633 258485325 228759061 1025892821 154562063 869785397 159854101 47255418 106270978 193890610 211189517 556781127 139713589 276838164 96675541 483140882 472147147 264390693 271054070 721647715 709487599 800068383 594366999 736803061 935366461 845933865 6206473 546447995 195495136 262170338 380694535 686430956 1005298449 1062542519 764279456 501620883 732478129 93853507 557535712 680833128 130901229 134194956 200917225 370740089 673940862 825209345 815550543 806147670 834623946 579697406 1045727378 212080116 854579863 884550180 420316896 1063313007 472317014 1027939356 658108493 126590438 620797733 638462321 888046789 818589391 508065958 186291046 961105103 413197940 246272954 503252830 78765541 1005006846 383303745 1008963742 864774165 263292253 71071477 9989456 831927063 880110837 675770883 991210680 962321139 425364575 795009553 454152959 756356900 86111052 245944768 347727035 569396932 885919768 93520614 258130823 206551258 364427089 150051956 424412067 685968189 170331763 652277055 354220534 249454703 402712728 612712585 731447378 32866379 908637962 302348682 277130955 738113030 474292188 137149699 668186017 756091776 717647485 58503834 885667710 874233840 613790216 202383731 25764369 887613180 847700978 987581185 736840304 859435045 258539665 490684118 61671233 379585675 884488579 31033687 366859912 428873792 508995585 9419331 920437463 415174503 703648996 652549090 9213914 1021753006 342386432 330820604 485625475 258817288 455135497 375285378 868339001 371152323 480464368 389061246 1027707552 1016463153 422448247 628589633 187270592 795437018 47618504 145029726 861542572 237144194 220942033 887581404 282888111 229553727 532651708 682100916 653980906 596368179 788931365 1038818141 976908737 498632799 670210233 207570542 682991371 32638098 268358102 219850335 164993848 48714652 808442240 49113969 927384818 247340340 987012926 562586335 3025560 425251968 49438031 544284770 529696304 664784041 805768837 278679630 640604887 887756979 126294128 837817937 562285140 747631960 951824464 851169088 95735881 815775310 568925405 561294481 910332867 190058925 183086199 301852846 15198617 464122675 750269431 638229703 102565411 373163292 659083506 870600231 570614306 319430254 853272476 840969261 962152071 85811442 688023971 914816548 415793872 500888435 860327223 156377098 335619779 1023292983 552689313 277805215 858504679 308225502 467049836 704013334 747371395 912488828 135094148 426965710 952261305 1063348198 918348445 90661136 895889611 895469051 34391557 701151905 242664612 1009831206 794435229 328632730 239642113 816379077 208725476 929543926 502782158 625807372 143240431 688793759 809055593 303702531 204799432 470852554 1004582085 1044916140 1055504229 640716638 233239236 751287274 528193543 759381984 771780508 482667938 105601966 601576024 936117367 1038579608 934182724 247280319 1044043187 425927675 436566094 133675732 470447314 112985962 33801804 105995278 387007510 1046837428 969688586 42042927 164575043 134217184 833654514 753987972 24190093 202778702 855387964 853276807 560482403 950739032 872557789 514747452 73371363 942717613 335669733 1024006590 856521356 199658145 658287234 292831131 724864846 194571394 480624616 698375023 745688208 169985354 183366818 72262029 1011631503 843008897 342569191 167590848 86504950 196749879 1015521452 95385171 474276399 795445065 639808254 77929618 900760503 917721207 793963348 680427153 882067378 574369022 629501676 142352326 357700893 22758785 641846918 374717729 277941595 864691665 402152984 775726891 564042572 625458434 1060677456 422403068 768889797 550227857 334772112 1015270638 821896217 635087630 249863700 1024639290 170614536 421442950 371767371 240115877 976350230 450442424 675023407 425888790 786829665 796550951 549253826 580253940 226278437 843965789 1038493023 226079588 679392950 667527396 514318158 430771005 584444656 927540050 152083587 426745296 999431559 759865848 917718161 369354766 575749895 940555384 961219714 371499656 969715360 105280380 832966973 893608432 596235939 671035816 676421536 502913193 361722111 79713547 298642032 582721091 472953681 299546153 17554624 886033438 560257179 578785796 607136190 482535855 741337218 785741210 20477898 344763171 109741934 138911631 833622017 827284098 602871749 256228104 197216954 947547907 967678976 625328635 885982387 32355889 611027516 935791599 781542795 950757636 970714448 424313839 380619925 27520517 40281363 399906857 253324414 491090809 757449695 494800106 200580372 301675006 120926550 975235574 931753510 141917158 751759373 984974119 164750872 604199977 56714337 668550703 262247133 694876062 729838629 469583106 828533146 1034872123 447751095 393322509 261609520 639608862 350297644 210932935 785336129 260298495 731501800 810917338 920338266 438698323 118429822 344471676 875459592 882214181 585438029 477270669 1016861182 242295455 833754448 131781740 534664259 256556640 259698451 397812336 687376953 616379124 516438746 861194095 1023991945 420308968 653947085 1000373436 713742970 1065130239 1036304028 554247067 783673592 219849690 1052003488 470459266 23669195 192136592 413316303 886428453 1017011000 533810353 862290098 292660860 752352508 1000674912 161660597 222867813 880075009 760022518 763508838 332348961 263704435 355411245 329656869 310717876 758933094 921639361 522867298 493760166 207101571 696482183 667349880 113845163 964793093 966854984 655123983 217345465 998229266 502091701 936217485 458564533 13417237 223546055 260029067 271388693 421743343 527694734 230548392 684693459 530383275 640278823 90321915 734189980 633264154 87232329 466520733 27446585 917894526 140394325 593611361 488532766 322022916 1038764829 990998639 3120171 683368296 734252218 486250969 257468213 1021524519 280665212 162459459 62100961 1029473515 27075935 577320848 172143628 639419232 62977889 107977559 55704979 491408054 250025161 295583237 766908953 658352530 559676017 156270041 398803876 68120796 37023226 576469311 592155547 664945750 451029139 808478056 794355268 654043789 627157144 471387333 718661056 278647925 674885583 548519632 380151580 339407837 538654067 441434335 439465382 14843898 485803412 691735739 505077000 474562276 690115446 249746708 870600548 316791944 124834022 271155126 452917366 801630776 779579861 447244681 245065388 287685562 1031230878 558648908 424393315 476208628 430762575 622422345 266303648 505365352 380708203 917300550 439026520 1030789826 516042696 835271110 291591643 664092852 935181919 561135653 516235040 924531152 397200076 347091151 1013109050 196861993 450286668 7309431 525512631 361504153 190417212 1051553696 649759195 360071224 223065972 795891543 772871822 970382580 803541684 710388579 198796933 916997151 622586361 523490150 468506905 518155616 232345852 415658533 40323918 161830911 153297750 489659766 467028154 91105053 14439581 453197787 485698642 1055574241 531916573 5577731 378726349 950975543 352634390 452974110 924389162 227427675 93449231 300607709 483324007 655267777 235100783 895844595 890026971 473596606 220269471 612897636 339189045 193576241 777349412 501127451 21103445 649943657 115753810 622873225 889495240 792470683 756264898 879394252 929370760 423868963 1033464230 1051406243 83959560 339910317 1022764189 375787489 630290114 45196102 953566558 580246845 132393085 88460759 908083565 485432475 1031324729 1035316854 960528904 183786307 807205520 404690175 486787999 1049118944 16020804 394315463 131664779 874242893 101389807 948776835 388166764 202808704 622415523 842968529 650536336 1002597749 282432382 451605600 697290776 765289139 222347821 611160497 621321991 425352395 960183379 862337550 954334803 980504435 755859274 447916979 59967478 384332469 207915659 17726309 937049429 539586131 521138743 780536730 835517153 39953844 13077128 274019246 876792413 181376779 947289901 524737408 775130616 783052519 963562736 696659215 213490525 993456459 833754130 782785626 485425742 628370062 90061638 621428248 1064759214 569990276 261664384 454620813 626558516 276570900 926624035 206268316 124703234 363230289 812568993 520995653 753050564 344534542 873370147 157866526 725005536 724288450 795064811 903290233 823652126 465562608 633284329 678720293 683419736 674084329 487292623 393386207 1653362 572073481 1058437009 737548242 159251043 33541264 667001580 365287030 711696587 823989524 1052895650 982474582 403955395 1036792425 339870391 353997355 41799505 925429518 237387351 591712698 631107602 584293891 845325484 611586846 116709154 118045003 106779456 339900522 259161402 447022554 425849698 811583181 899009861 568155695 347040571 149169079 228848004 338603918 244135265 282890621 584584733 621757826 311610311 164153296 17780910 417179783 297960207 213034063 379561333 610473718 868764520 474371781 539928569 137627816 372825035 765839463 828480631 1030868793 712459757 885078868 632526761 314736310 108462409 588879323 445362242 957044216 713901008 748866610 703566595 63295449 631469515 202396446 964018327 29259539 708851048 414396890 634658611 581130599 373984132 933182823 491603529 1026162052 900237216 1058078909 357079725 535012759 237688827 981152718 32609065 357629083 472097892 192511434 562737580 641516710 1042888866 926838373 1047618500 700086388 485634888 607579249 122254333 11123523 702894612 841765706 851357311 739080830 543054854 858698308 1023905321 891723336 632294515 18717261 955990010 659154341 226429689 1012573409 803001635 392575262 1063804714 506736584 715492748 684389185 130862274 496764996 593524085 643207534 924754726 597395787 404071939 433019218 46362356 916088880 573661243 254238801 932716692 433357390 355232612 711869429 405052139 633188600 755942288 47646399 706240558 78712536 276980521 98420500 460210216 200759324 957435705 662839156 702039405 105438254 48281760 649978817 435086980 743359746 773972936 854190330 247093097 621164689 836679865 424275134 12735068 756882071 201472460 235211730 649671423 240190448 409004342 141361074 790145113 47283005 1024069408 519465290 716014847 1047469133 186316771 825528709 28290646 610117279 911776853 332949896 369251178 358487047 139494328 154904309 76127538 720772930 768389919 535111488 143148589 913216125 634573393 796930473 355252549 727975721 931295642 1016778504 859514572 94010085 108351822 467252452 569319128 682177320 789191577 1036905189 278477328 793124801 423545497 541112807 877098694 1060323924 287844920 374084828 802897363 453633611 944521752 1059763924 614008147 257644690 52767488 464627823 413517267 555152674 856648535 488486693 19122237 935084195 867640029 184225156 361016907 315458385 443688036 1031323493 851551797 156636275 911694965 124120020 833066201 1050809018 22040045 8388436 737508927 54009364 669236185 577624569 366669297 981159919 726892618 36017493 4422389 240207867 413799900 368753462 387666030 131636621 762444432 229558246 1028795576 167368664 104834043 725816684 595220952 381393056 554088884 947539570 540393350 172101697 548070740 650397802 372570277 628934414 680352075 195501623 426569267 952696397 502893045 1030891027 717115709 381237153 460244944 296997766 812561396 744445704 171650931 685620925 853271518 931482613 555977906 415866713 68734355 855186933 522890276 101686366 865746925 1020010628 672543979 766743586 370869611 265470713 789781601 652767002 46287114 798283267 181773758 256951902 1065229205 1014829435 965862190 176675371 21766880 500230189 731064504 99925540 645353874 545976245 46820632 884735810 348017567 714898797 543371613 361585490 638119540 517481980 712042517 685588282 142209887 795608501 589774838 803045170 134601846 1021758598 766881686 500821419 446695167 790894416 1041159892 452567487 111150176 548876889 815903211 317670941 552953870 613064147 57499683 900147819 306316580 372881232 906769770 140460585 646242689 82026124 847691819 419919456 1047880532 852616918 737051883 276325774 365799517 949542321 481898929 299427470 983837355 726229580 762342702 345246937 60816948 9651926 941192457 918705242 158318108 858189751 627036471 731364165 596217804 370141573 978620871 382809627 160242961 1053546100 1064439109 84265122 636187464 690574738 242069901 607910458 730591634 749054047 295935719 152192402 240083071 929821207 936444995 912017596 63696665 822986934 1020452969 278769740 720940442 425600546 332970705 123471928 1071786439 282079697 1052498565 576026912 956426451 555339351 865390743 893418115 92258054 76432213 59384077 476430508 614316809 1039133041 507546721 606249792 31397466 792528391 104408787 780753170 578481510 868357687 344979411 78153228 899819821 458389763 823738789 841786045 661179907 885431593 535563826 491299596 717007049 761810380 694336954 468129221 645939309 133162650 590036611 416196351 121808038 455952620 439016732 378412053 241458503 24021816 212150932 758316508 128161526 21443700 714602582 42586788 236482249 10653972 194258843 779637159 510945136 998606494 866537111 873482169 886152578 22383286 222064661 96279914 330281209 686266470 510866732 171861366 771060749 936968424 939377034 864293783 223799672 333076719 701079716 646379165 590814731 1067617201 627525645 995119705 501354800 139973516 354491144 390716891 848927135 586385040 711497277 1054998712 201803793 270731526 301851683 201546639 100287441 384153968 929269346 918165052 779812764 889299343 388881904 169984766 636205053 207331796 279427445 366976217 261567059 1044691858 18942884 814381855 157785063 88528793 839467448 497642422 586363200 749119938 497267528 37396419 433020979 1030653909 649182071 27908919 387360972 633184865 74446891 758499361 913870678 668144886 349341544 61562034 547672046 1071570942 1008480831 903499965 447380305 202620514 1023875414 192912967 248771457 310536881 304349249 665765978 803685565 646892325 519908852 4551333 864611272 986009110 1053827813 306080953 405433343 1058118413 342083751 651566163 741597727 557576558 887017480 523178768 584054827 574766649 832638107 168927711 136239269 181956996 560834991 628815090 964898251 926463908 755022097 917843319 102638021 586401079 263014837 388033430 949028853 692110816 573400177 1013453156 893268500 778273446 272450944 728739784 809950267 105830793 246891451 205915402 268281245 668839729 251404196 514076852 425993309 594363393 664221906 509599054 322779842 48736909 405072830 633797253 928173311 1029243031 933457293 4410920 781364103 690151396 521538246 1072006436 786287696 436451893 139908416 764851943 305669748 590404574 584850727 6886225 943641357 435242620 792791195 457798621 946880015 672974843 101449242 177279721 930558651 518659503 927526302 333152170 989621053 840253852 747421691 222134222 532746982 857788571 584690170 613257385 369311259 633233454 22647402 896566484 850220603 585539795 280876714 264484913 396614919 786357470 45393102 58505882 548419015 424112193 466717280 607153565 2437731 855813425 134686140 93791471 1042219837 1001368376 645359589 220331945 525236590 26110972 981584782 287483263 493097338 381128232 590540272 887223060 652315672 459525047 1000538158 791662336 1006059129 544793235 22540374 93778502 810203803 278193761 452015118 399125678 653285134 229214108 365850151 589911597 207646036 474726668 783489220 320534897 451415835 668010714 147680115 574395794 453090556 252991313 594639181 768326659 1009630025 1035683995 94685758 775292995 626330240 866232284 255911713 651438467 125579476 351209824 718957247 485897196 674422681 969482971 670540389 795532952 58961539 510526737 916124216 556652484 971196316 71357008 533734432 588337728 85803726 742047244 359735196 603999381 543826959 362216616 335537659 835127061 584405962 295180597 953408718 113695086 48707180 323775275 85976155 999846575 473889833 715423189 1058921393 1019550588 501984347 36784830 392485700 435748488 204598421 215793093 246002734 539013570 272124769 612812412 542718996 945346941 630008283 309058043 64529482 479505375 81845891 877622868 926182985 487405439 4775014 800995298 830839631 760490191 242626368 499244044 7692482 136136054 146898667 985396114 498660766 602752484 1038856444 137025439 877132287 41289306 402641396 95390580 184618193 77444799 961556933 112776563 435752154 218915873 473363141 184116148 750547362 617002717 245146070 964266235 179342556 234843479 71297807 358327671 1036727064 137672457 97436861 301882221 268319852 886999597 1026960223 288391330 76069800 869457945 334849003 6519891 1027684497 403076429 820997375 87558935 66569393 652481435 1030652638 41160621 342152494 191546847 641825189 460895751 941425420 891253316 441800871 993258132 15577557 868997820 582246200 264103715 368531170 939364325 1040293056 835833630 1032763024 327925482 680907169 299732845 981562516 682995057 810293338 585607575 737537176 273841324 776891045 497579679 169036352 227342457 469403422 625821068 249076986 611302327 952572252 1006882370 126758141 71070305 605082597 528741508 125598510 942229887 127866639 71749575 1003526474 180221641 480750651 70783154 873507544 546113170 1051290722 32373499 823153995 813566396 350210418 491731396 383338198 360848862 396153620 491723805 227239113 445800317 652248799 227351308 874620093 1046519078 589775879 946288432 593693780 668236523 635023924 837475178 103416055 18063912 104944378 19253453 976316879 756024546 1011110284 832927160 603094303 734788582 70090540 147767811 961064596 658678322 953693846 107612638 98745772 171106446 176536226 925113790 474786504 368369496 730296136 428123307 645891853 18806477 631038275 1059665293 79716930 576771937 966664414 436052424 854586730 494123975 628459346 400295235 1069816133 519923947 804743134 940798643 925190165 265150345 454220323 239138468 447460139 18030938 350099278 405703319 511958292 512757544 82342205 856972337 189768479 495498036 226803568 809355092 427052726 350413748 420510913 1042226387 401523013 664623575 266089936 721575494 1057253056 221024142 499081909 289255860 796058538 286101541 652560183 714909954 196216191 359032519 566767526 417081218 860775258 969873651 384334540 686903499 1061998255 512184569 367635458 134249169 58188698 840689365 750648210 278528228 645930869 73022073 375162896 737827513 69152300 350996886 802311894 123432530 849648779 950469653 733273345 732378466 236049652 751879489 362968904 319736230 27313518 650448485 410064747 562424603 915507570 1013580224 1016929412 822020863 1013280660 929105803 238541945 818488181 66757116 182568234 904886919 224081673 943000884 903151263 792653518 378906232 663220075 250636942 860627298 43809821 812513374 893158856 591681408 510049552 675082672 613364724 738582888 23617948 1012415079 509668790 435677527 512121619 741331846 442696599 625593902 259987840 446358163 496590697 956082270 694374304 473863130 340759001 381898416 1056016471 542687724 727178615 494891354 143374063 497349178 597897371 866132165 171685385 803384513 795722839 768817951 286839024 973336383 837687436 624622187 133541075 450649750 962649542 37056681 166391053 667219670 450617459 92021822 161564367 410802879 648845062 1025803703 133736143 725601363 840706618 643896862 304589974 690292186 291190249 618997109 58372478 791395148 493180043 225909117 42139093 1059774933 1019459590 47989023 666928092 182169231 832598454 438085212 590208008 838736407 276195956 827979145 135268949 805356995 558020017 81531018 951929416 800320451 554832587 1033323791 608891144 72059671 744986318 999524500 790878554 698393359 1052547755 392164502 593684901 274461598 269933055 547187440 163769518 70721813 357484463 599301112 292620834 580376635 242713613 75804992 319910363 211215236 1042461490 705167893 311216095 536899837 862453964 911521248 499380377 234446263 499395010 52343936 819886413 930490376 459221807 771228008 224414999 1055924551 20599658 140815589 443623555 161523918 674521591 989676175 885410081 648656855 852817022 883551706 442232938 26644000 407016683 231254019 329652151 291379589 405387597 972616792 850239321 225286767 752128003 547348327 565685584 540827044 268207177 1060485504 410150801 1004520967 457391823 705405198 172995355 418879203 14713531 233626897 645004144 954343852 172063970 138743076 604538692 292851732 820749557 1022938028 17615085 311335829 29040655 104874235 533148474 538722380 239947283 461337710 868819466 287677816 768228517 447126197 1024042241 759392294 281861522 500798084 151501575 725865429 440051687 517985267 54863083 287704613 229714793 281340683 714390557 318222285 358433053 678599156 151308029 577131228 379398784 805833131 744213357 867383023 616209859 462521966 932997032 88677369 164489313 622430476 466348909 242205217 500283175 903067156 249607397 979048916 704237130 567499028 719817590 870068120 388579085 879184824 188083486 59056175 72071439 1042177424 402241581 801526696 1035103520 713603508 880405868 303447650 328381062 723705442 12210940 45386927 489950277 314951622 3176237 120001834 410772180 173974283 828680044 833827214 1072965476 64533688 893753776 26611256 51230070 186327760 931734081 400060030 403967675 729931402 716034128 653274848 714432765 551602678 161604496 571267761 755090018 320473551 448333006 374426823 856398136 1043558737 416192274 894058916 463522036 159919902 111428042 933986760 85493628 1068226863 1054247898 872706207 57703844 967842724 815591397 624556640 351739503 981119993 448800654 298587050 621657119 895623054 864561487 757702098 466847776 735308207 958837131 965180285 960017206 113987600 1001807456 503928830 731102125 175057061 763514309 950874700 522447446 606278265 791626004 577616796 264313577 818565990 802339132 835281861 844319255 858316451 585250243 1015395640 644272645 861455225 886330817 624655428 235790369 155034319 475638555 484083674 972413688 752224714 970055015 74198885 240527404 107465122 153836364 880170788 814456038 133260407 1044764518 589950593 530701406 238287938 850680025 476753128 60478243 1004000281 864619617 294789686 872786878 761205503 590443745 455600943 175226886 58611885 250356287 217181122 484767044 339663241 203892256 211503786 617807745 742530179 837036251 758938703 797328815 455281118 132189024 691601647 914263361 11366928 729226032 60378026 908859836 1053736147 20061208 400675748 108904896 552445349 766817955 235402427 335651833 141691007 210622391 805636121 641161381 197136345 152508281 801905576 983567513 1633911 710660155 96816774 863326044 215137888 670992683 506894723 636649925 348248150 182895690 939237807 480859432 949581693 895537769 1060767663 255844759 104857954 56125152 85620692 1045615433 562330461 179063204 659390629 911342157 1046356845 858176434 906293808 295833622 911359911 421718299 709656002 928901570 301864624 840037194 407150487 101239775 857895333 728310433 13564002 258464328 731426137 1047271993 438574359 157167869 419032236 788048077 424038693 583006150 571127347 980294099 776718575 711227257 237605563 240244170 801071966 771727420 387840294 144569656 669398271 964536023 710978001 769036250 620071460 206634630 468186259 172807223 662018412 328740517 429414266 31976943 799602553 631242326 590046878 1035765782 255372956 878671592 797539192 407536039 525320014 259100550 339631024 1059938127 1050826486 918396430 110200356 346619974 645023697 966389656 395759170 838477270 754933116 1032561256 560110464 341981928 633578132 615805058 1026415188 1032346982 215761041 317195846 315774557 59292939 870591536 734628108 585087860 544926636 951857440 930791422 987699808 183619384 390128278 578742417 732215789 889859420 135853831 767258167 433166547 418051644 100612554 120167086 290547587 103536280 100254562 770429029 65996411 620337617 561419724 1059631057 16725227 316050591 943111097 86468076 541411764 409391586 383010448 11532032 536912576 668546944 429607487 631751818 626588114 960847488 673704512 980210721 392000869 534804726 279178673 468426203 527567216 1041830168 136992717 57963495 267279098 467745925 1028708842 913431474 194065125 271333448 463471292 648362071 872372818 343590362 13966234 888956878 140431760 99818288 809679464 374613316 351639360 631618063 163109827 1064256449 237531126 395927931 528688461 187596906 195684816 340630861 79504079 829820817 128862485 777468010 162367700 126745646 601826071 471487892 682671025 756989490 977013629 904628615 734532459 583629975 188986326 277468695 459912986 243749373 225281706 115520896 595853414 774356609 401646647 749800322 31885001 757581523 1056795951 978901430 472407007 254884779 550502093 512269044 714395733 741755548 479095300 681538780 174139265 167475219 143821096 697976863 58610042 558365396 798395108 118654742 647436197 567391309 295361530 242184291 852824158 738905546 343912463 789145100 459743591 158403531 328308592 827154779 698689259 550785787 952993331 66647070 724383536 695162878 660991701 816333703 963839969 618738490 104423702 104271434 382540981 319936530 1051751646 230022203 724234240 479143235 81714202 104809649 263083950 1056183034 541968003 987774737 524950992 1056401623 470733476 146158765 455740784 294320371 83981172 1042598018 1007406214 252061470 983847557 530058050 1054729592 270320389 704297096 278145420 484011740 865678679 56008347 779478537 842119429 1071331011 182929396 18417737 122501892 216284557 433679216 855079766 709229874 479730861 841656560 19012195 946923571 507266295 1019055666 933637035 843842770 44047172 272370330 621597600 338720267 25474154 749738941 746897981 528656433 451571923 1044506120 436860326 805088632 322183734 993136280 219841371 375366639 380931853 492775921 702217284 732578029 684004896 627437255 410306562 120944746 204563339 652308747 301086396 704539606 571048800 724958675 286232102 679413347 402976276 946517474 724266038 163925896 105678165 680554201 101568444 845142142 741099732 69293207 600839955 598890002 418584040 900331512 9145543 117041496 702877079 87300372 12101287 846424486 228151640 972764161 967890541 306406693 120255080 21600256 673731305 282983521 176785951 905935851 1048587352 862033428 410893218 238417378 439105674 197734080 131421476 829691542 840888838 1047508934 948339692 986799952 15653949 807371645 288965088 637609697 315896191 416334778 852666400 376061228 226274212 551968022 612059445 703159401 326648834 248102851 1067469683 954030473 83684080 997966993 698654919 911644808 396285922 388736912 539336718 704409743 873913320 221255732 47356559 755221392 572183569 105092805 160444654 131252141 139065312 97122208 392633334 99683846 664948112 1033252752 126026692 969219807 153458850 200443220 726093672 1005009676 291272529 178684654 885291526 662979897 67135212 120443694 560645236 897177143 580333997 425357267 68931065 767119173 886166634 611291283 404065397 906870958 495046992 403489101 399534356 323730077 935671408 238347928 842727055 213271319 637431621 1000142659 712655135 622325682 463612641 568599799 362729199 456787848 651884592 238280767 670712490 315974656 401169615 626642038 800067141 738341941 208209022 165167335 529596950 136386138 789329884 542184443 246554760 305006406 424339511 725150033 133227244 338374401 1027951759 18103244 903805778 585942415 473401758 400662012 634699126 909110901 242232283 401478188 612296522 148741482 304434480 617983185 324134146 759318764 461403622 818152513 476867351 129476766 428972695 882061426 732586808 878402804 956508374 499685675 394521295 763719353 260868833 307440436 166288177 858010448 483365904 394075315 777533413 67450630 4616576 857985496 492688845 439613976 464303865 306388010 770909727 862056821 1066466106 281268922 277768363 770510065 666515532 60760867 787439761 160955483 958278885 204840363 114584894 64014199 616004587 269289062 586154490 295580777 472341712 503152378 688033450 281124010 775348480 873583717 885048133 145766137 448913627 311059173 702128867 4383515 50600375 900003935 230635510 358999067 771460634 147591823 21842775 639942057 492540736 297161572 861259516 835979411 341777957 817961361 710627036 119225868 328670149 516164954 326048676 499798260 91292018 730663606 425769717 248271066 630163164 1041502730 913470286 66047927 60959595 245023742 850547827 212524846 680397193 325461783 584247384 679799009 713770733 867188265 898456571 534898883 297970716 808565358 767430713 838636733 414155830 953116627 352908578 661266966 266372021 67511987 323011206 577952285 344375884 851901982 925601040 511497400 1056380950 866894447 89221739 309278654 687784871 771617510 887543201 816984730 1061457759 950732931 978172954 84834830 10133197 473040972 819816182 901882836 607861763 849999726 649163455 685745199 1050325108 764587222 910602415 957271662 209266024 952498624 884461147 399791750 1000453791 661496826 190747661 562756307 956228593 354965056 940766183 92514760 391561794 614473019 437193528 217970814 884366018 52747934 470021459 595538412 4335242 333456973 915352639 49399217 438778247 494910516 872937287 232814369 914617260 1070404403 848486320 788875894 850056855 153366235 18258215 276723352 780367312 81015839 661069555 510967146 333155931 571614040 298702842 809633950 475936552 8215222 467259971 883399824 59603864 986963568 45116016 693067473 396271603 886445627 442340553 103637433 134750765 922588521 935190962 361225529 485738342 402979595 963549022 627691443 576170213 191898648 457991191 160970574 882446629 410015713 940479385 45543928 804809817 798478550 608696774 471840530 859573615 261502794 1004988887 657649617 209965501 574412323 701934244 168515901 571963710 827443038 158238795 650581032 658610075 473165690 178914006 598480681 857673107 338983836 509020773 326665945 1001015517 962874956 998934780 617697560 823058152 580554782 722943888 898180210 974617764 1054001281 654429565 390044264 968140871 80831416 859164169 1030387296 843182117 857081727 214902972 682841580 1064108176 137581656 307898793 937356838 198581197 103709853 376966199 16889251 354678678 935342664 249862412 746278405 419102390 980663722 210776725 183559021 522582614 1049366696 707444222 696509166 374680554 820086450 338328594 906801137 530726507 181796951 226428856 611902846 58826459 875696920 576166636 507715468 108833679 807525324 662348199 455330425 300394089 251678004 1002716855 740387379 936762429 342454462 28797035 29251843 930548049 976084868 60419964 451848888 396813642 455644794 2768810 577466822 839630610 619555292 359072753 592471055 232119238 55849535 151596546 949183764 493740181 305398077 103677057 456000829 136346576 487232508 907372954 228234278 123588496 15189095 822071403 423420076 792414929 546684629 998478818 713414839 1068396981 60099101 773571569 728637336 895901799 1036046118 475001203 281549383 589181576 535408926 656428103 25409157 833128428 688735418 343620750 807056299 710949977 224708206 163842447 647258763 195723081 55998255 235412656 867813806 733282695 541199945 854862008 33792450 190894258 1020861027 616864973 824132857 379010791 493713205 996394533 818085135 411762387 4150053 281887468 394697290 806318615 884957825 701312634 977451995 293451464 111069373 1073540029 302615283 744190982 517163274 65748891 123324715 245765491 444275535 544360857 6829940 512159402 755286702 372342525 402615378 774750209 706608856 262987323 932148262 90372813 272752148 978414293 62551884 56907529 624805886 256894830 325394445 217166599 567033564 831298871 919477342 624448557 1010099884 518048366 863671572 509425132 144862928 903564427 285052276 611648188 565148756 597135372 56834874 529485690 409123260 1035187033 442490210 808384779 487668419 100980061 729286099 415778369 837614150 2851890 401263663 800071353 914792672 796752634 369155798 367649984 482880804 606898882 472378271 480479323 1045195154 558922347 354634939 1001406434 509147357 577284767 341002597 170044158 762530521 996170473 783288965 740667202 89633578 608766353 147484261 51204347 60474842 801112689 510067878 49582687 827471534 305658485 857860752 763346649 420444526 666348008 3759045 376694672 879584671 206547950 766338328 202612845 85658067 1019981355 495415415 332032944 425760735 202697315 436940586 158483600 778904521 1009040710 26792366 905438054 87306424 382823006 610961184 826696022 568648805 95951795 532060533 583825140 282349037 49345194 923980092 446872950 554055011 930100260 517897035 283772744 437596895 1062347858 382837815 700656622 38147445 306213863 612296652 1000381987 988152068 955629594 643028429 670604452 623349430 267561522 777991142 549883480 567997626 689206374 779375642 916269732 196186258 417497898 948819414 451340216 221740156 742115417 527286635 975087746 834304667 1055683125 876656246 427204746 745412494 616728816 922938192 335866619 132026908 184207149 604017911 956344070 743222302 675507242 226609077 800331943 863595185 556368592 128095961 18281378 518858739 121276163 706146510 87787530 964699972 901865716 809720378 345272881 972584912 588310586 943470000 782700594 375929622 789435310 464634628 654309851 338717481 460970509 246305298 341429824 61014298 390159168 742428267 334330276 251172420 574943128 163163861 661047579 101308750 810181483 150067053 863192284 117155788 940382236 896224895 898401194 532167433 175736279 714764746 266339306 919110344 1047831538 613499829 103266572 444498826 980353726 581114291 58571109 145420547 1072152522 613781697 922847046 765178294 511037885 211097023 910714701 123046007 316362865 27798634 314900930 645645175 27486850 368234555 646854292 528153625 462860099 710680023 245430823 874734600 51185553 131761935 242819418 1053396330 368548148 162143059 727456513 318074949 224864071 613290786 803612674 759375753 666458241 305191884 212814717 1015267005 785930184 349551439 514883441 770115386 1055928986 737770500 221938964 805981784 203774942 989463758 357230331 668479012 177837685 663994519 75977773 301717254 420402094 730112968 1000162415 341369465 4043428 860411036 333213437 71781423 290112626 967773167 98783641 284014537 689919100 642221096 1017998174 262734196 141380876 916826777 896978508 1072521335 1010128329 698566874 863962662 168030432 909407987 180493536 134477653 870064094 239253697 595622044 725528449 89692399 393490237 709903143 977253400 74719682 234873057 54899907 121320570 538368623 792087255 1052934223 537960173 50625250 255835701 389223179 230924660 709224219 709858375 315926620 82171577 310642725 115463293 1070470852 953464762 51639428 437658043 534268325 598107436 1040258694 977970156 941342958 586988084 971698157 187244176 262936699 1048286263 600278072 311063402 36271848 1047556868 277294601 53942410 502332324 99252057 950710137 223357945 12185664 923885628 844345968 1626641 386021144 911312777 242513843 614551291 765207418 321304931 424812094 214071210 224386984 525839928 203020295 165320631 278784146 668747655 150137649 330875138 671060217 1020995902 1070425271 192070333 196510635 1013901194 994945156 1024027362 962230693 971301180 217581433 630580015 773154491 656818135 1050073034 1060031005 650779905 2012244 74141024 1045926633 208085780 953070670 954943535 800356864 857050906 600584267 54701307 748861215 1024350735 885694033 262620553 166144144 231509970 623088183 891831735 628002696 966400365 937404515 983333271 749836645 996080793 152227439 191217287 307080471 714444503 446761871 810892364 245872539 753361457 116986373 153094249 985763498 319793126 146835327 781979769 899011735 220251532 719016116 330282308 294768754 194977208 828097792 1027293993 760661756 841555196 195219293 416931443 92810541 988494816 295172346 406844495 814084793 147002544 144791110 206481000 890693202 747876801 46436125 717638178 991800887 500974057 897070540 168590577 474677564 1049010991 343210785 630843438 181013352 176752688 609020435 571224576 640005366 253506592 501263752 484551499 18701867 15803087 47351282 401208274 1017452077 919676079 506601395 235383698 280897784 405798858 461006463 665533178 343635372 154057738 942023866 779042158 506419336 132622292 738402997 539531339 525722619 683551909 103920369 547418836 544599663 614856211 1032514546 140312558 127534389 907264618 773514064 782298905 426964354 862134172 964321003 1035240503 634101659 795679910 449110004 652484527 642741365 306146329 472812764 167283914 25923399 545996444 172957885 539306858 939420827 474736721 977710566 958862790 754155700 568889254 398045079 208691712 1053407815 774356093 25542004 933015927 21180027 515724089 564033389 517184148 169352394 193242834 243535890 140588980 565496528 208234629 803513494 124053563 622846495 852859259 1003054786 834189589 299991080 1034655253 381958450 375060509 668390886 322776989 1020638266 542775917 769241598 358948794 42843405 631524188 746931418 416814883 1036286482 69939040 574369505 1053245231 478963714 196465873 459343066 169223579 327084944 235135871 757369858 385332440 831402151 280916954 1015063266 219067610 895889212 45738995 913288992 351313088 435492132 933620709 303599859 350210256 614488514 831101548 542285167 637554512 886501746 329523210 51382241 958823812 529882589 807462007 606984166 624192595 613657369 590155218 1073184718 238325485 943309032 635742984 135778502 904636593 777203807 1039027363 4032155 578746283 1057589675 544093897 525487556 367794475 952491436 585712252 906480576 934360691 377785259 795114753 1012671563 442394542 260807039 54992112 85763327 182548381 552958703 95116705 46828456 373218430 182073698 1068554730 951337017 66824245 563441258 856842717 369963548 575798228 541561460 558032689 4167571 72838918 752137952 354157444 58068261 574838316 365042769 396241865 834574589 315114605 517362686 300984156 111095340 949594693 184822728 974601137 31859734 671750448 1056556151 743928335 801805968 933175604 2256981 136403127 156257246 295797363 82341169 494155082 636585983 624000059 169420716 93996671 774489667 832696217 117253389 180318061 375576304 76165100 298808987 145986645 1055682968 16317403 1046480439 217081824 504000694 906141610 902203553 562496255 691361368 377614355 902924645 261844170 891548849 930215205 575091712 294143826 666121153 1053838225 972099530 12895759 864343114 1001441953 352656091 757760356 799315300 269130840 324641418 596173844 975333728 421578949 1006152978 832125012 1047593536 198380644 73482690 982661323 626770503 991425699 1068297084 105939338 482714460 681691987 693061069 336633114 1068997550 60942236 781598534 176656542 790360755 753093759 961814053 977169824 406225837 814935255 472641851 408154056 967874183 175380439 1005411703 147236720 437607020 687147851 654314296 167794603 783742047 713241535 885724333 194667243 80438095 622695821 450888630 627604844 60073575 22034356 617681239 701027846 265343475 945740207 254846142 751910534 773521755 1040947183 157198987 180012995 1055844022 906513068 882713652 144740194 931440134 325661377 570521942 950200147 939030163 989644844 974120407 786614593 675587028 438110916 996570584 537599416 707219075 192992975 658568577 181500057 350542697 295518178 117704926 105127562 556131876 736269926 609960379 260503124 96086651 451357755 746472949 160841050 666212825 473068486 795642723 854932969 106706698 220239663 922941457 501073873 37296210 121570138 418052293 6809634 866797921 776166177 45689911 686158099 483659901 688972913 332790767 52090777 739723363 92004681 738187358 683491921 584902836 654040687 282625506 722466678 584025122 300437416 456742698 531222061 75491584 326810233 160915282 860342924 348318561 808360912 441515815 736806929 1019648215 514399479 508592951 912021059 509916527 600187399 722625757 600359908 569070285 317331346 726634163 127987190 314070584 176507585 108179049 961099683 417553325 639879787 467145589 692906601 589356116 391129469 295035888 133906843 564508322 970867667 346333782 371974146 266878475 1008909044 712225820 18888549 699269112 1022070120 308693912 394652354 905395087 510074618 323909025 297075883 655557591 504937332 142342176 321240653 313497850 474094790 718078665 26225342 358028421 1041139747 888794026 734944236 562130366 393418431 348162510 785950925 722051476 326516921 526879443 567771839 775230128 885691308 419350223 298147713 73770835 793279364 315616159 852158076 133708244 998464332 707542069 973368199 657034536 1068846117 74004779 587538421 722869037 274367652 42160103 140785505 541621549 902196746 991588245 250834396 874796842 521051834 485718234 228259914 484273771 138825867 46422781 92894022 741384507 1072283530 782874370 736028896 1004386723 604642219 992943587 1003154522 223651169 664449569 503086162 566529568 326904068 541056783 397789351 992417287 133865061 477857743 902854715 385376558 878471949 270724806 1018928823 120702965 508301713 670409644 549756236 531609726 324733562 642059862 762083110 909909152 587078437 163606145 259496640 373760439 750873406 629947528 954819474 758526699 366115000 548599826 806473003 725177544 233104437 1005266713 460227744 776060094 600699973 152564762 208965248 160040596 848176438 683427826 551905133 476805494 322349387 272212274 26999201 378499271 41631439 53212371 938091456 525587124 1032649074 29599477 37313894 368722251 725649361 406308051 96938686 960164279 881980230 1062799588 982114537 608409733 219196374 888751671 410116287 291631762 914934630 511486078 300557604 929516014 907186078 42769795 407360319 200435256 359279247 295548913 272187798 962136511 330170445 166383310 393630872 585041495 986279159 834628601 453500594 821699016 800105997 903833975 655422066 644719409 912329005 848486564 652907151 93988502 303603154 269093411 215923447 841613478 867300796 973152429 973410545 426339740 607046215 27661579 619608667 135971182 477338411 466171369 644924475 1007633823 317303544 672905031 15881012 222226155 321699164 294488375 345286077 546896910 571816659 533202906 559663244 416398694 595817460 562647561 1063394332 700973217 808299120 316857246 392931276 53663301 847977690 673303085 30807524 1024126271 492486262 570256220 22782156 790206987 821925617 20841909 618154517 133767191 191396628 33153671 685482215 53563784 577745156 402414384 260361786 183258055 648771317 704085413 205736758 420295348 425868353 786964232 871526281 761442344 545377182 372099780 118395244 596855276 753998670 183729648 393915074 564387074 128818541 1023091487 42307843 202536229 432708004 420138046 939410560 262053646 666274795 122453665 938167551 298043439 559168908 757665098 433695744 851332011 616096631 597467500 557278645 41109561 895062256 695828584 10500459 765928023 665585817 391836648 527951040 556326409 582349342 485120722 931322046 1013846017 218065552 57890220 355498437 218210991 277825705 665655585 990960465 1003286134 874465408 20742567 1019202493 661590607 709223315 392938588 268379043 636748637 44439458 38403325 1031591578 178771129 121111822 566502274 564039243 5569869 508705710 364507796 1006955921 231427365 777515040 280003628 322627007 727301639 632483632 679223633 27176224 399851958 620028506 833520405 689050384 169626593 101711587 747028185 179458403 115641290 924431033 619438820 72278091 349334507 825163765 653619056 998357930 539451702 691885641 835467358 170352994 997649092 134844044 954875157 481408928 117398896 176471774 304722913 572956009 1066331240 1045735956 94973529 759597779 453559663 964623409 886613317 1072549058 54936776 150935675 514466940 43988962 45677629 56825431 857601171 612565613 444742117 629576283 584270610 104759638 841709042 344037710 582112512 706577764 399458258 1023838422 407722687 836772401 725607479 511724385 611978123 854426730 54565470 112150816 605746084 215251825 624275495 688508365 1065544345 1035678644 163467894 822426729 576671505 195480416 302275835 1036859429 66290098 19861452 193506106 967549958 372593972 297025274 957021419 454880466 211842491 712693960 732715713 339181039 753042559 99513369 1066477340 415794712 312458973 87481952 462743401 708510941 769369252 236192038 271744091 1026592867 217513290 237104162 954648491 25314376 812160857 947138169 838344217 260324121 19817703 79473492 286662161 971879508 974831952 728785289 1053486675 450885248 247876204 635727456 110853555 312558682 902396769 594811552 222892461 733414705 404932389 667061450 566291356 293292076 540098281 944508000 11423322 1047838780 404939029 402569580 580442544 974506090 1002104423 654123529 1050907932 152002067 997644054 693932759 25695089 788859504 358150119 359063997 304539120 404875232 1016412058 517136252 860756175 808901771 578918250 491418133 1057076490 233663323 262679081 26599236 579292261 993468661 870801667 827109986 183761542 202517613 439820610 491567413 785888651 89610856 441546944 91238376 87491117 839334012 34302296 67859200 688804009 1013947075 331410583 84295738 552058616 579413656 595947777 535805337 399323079 628576784 858062768 761514392 76420676 92478121 691222245 331361553 1061485620 52412564 1004422389 673349079 931303334 471627002 986888626 491904461 208478703 565195185 665968094 76293071 545234649 759169400 835656880 716597811 581547177 839638410 316138336 179135280 126466437 689083439 74224512 964041977 199504383 240091383 812625804 779395648 171291140 82075356 43732989 844864878 452727756 729689590 118523919 39193432 171565424 608502092 200628810 200095511 812074875 991974835 430819381 935511986 1061093077 399895727 918610130 299257851 396192652 612215694 186642923 280384888 688641108 669749028 429259528 1062748996 44918005 430763857 708390697 125082908 704142046 655696265 397371053 163493875 1013505401 648411880 700695245 999120645 106022064 826724202 944134063 748207902 14915216 824251985 969558404 703525517 404672930 898330253 870060690 5815000 146985388 83311523 55072357 1072859923 723709624 573700851 645478549 419248038 1017173371 302594671 441281163 72025933 565893603 1073399535 163060894 1027975134 945459204 121590148 327842656 817442410 496989909 435057794 322334855 986030626 118774547 403611020 1003822413 891736349 897412222 670304025 830359420 693594085 90955174 45958450 60993724 376252172 262063301 3731937 507841452 598213393 632743533 314596849 797791562 267542096 351586837 969329912 872097500 7538000 447887375 102688484 240333641 379640789 556135473 963935566 1030168947 897576027 886582802 279528774 22571185 963407609 453125602 770440576 278443631 571041002 1056809887 887512839 150593071 226986904 470279555 332164998 307807214 481664067 397720929 535852307 374627147 151136528 792819102 87968353 169251298 480453679 777695261 1073225370 908265830 481032179 625300278 320628390 276328304 39092229 805038940 634986701 614362588 1068508450 60085502 275357930 869836017 792092823 200024932 243348918 991951550 307285477 371188071 491915851 997931419 840831832 884062744 782537835 836854438 599052 646793582 145796236 158903133 482806192 976103425 1021699566 45818233 705082641 251591565 974516220 910602244 838298431 165701036 437013196 950160603 326293735 950870489 623449700 165720153 969225033 8420498 504659306 406123155 119374627 409529745 755163759 829992361 356015191 960308243 685910379 551476027 641441071 431959949 977575872 899199290 614297633 491475678 756056586 434412412 539824991 744362992 63422638 1432621 536368889 570528715 145191310 561623256 622691910 532690948 676852296 907224822 885027327 337403525 419720988 209237080 646812086 1031766404 663604970 22660190 353965731 287560011 749131932 967211154 646329685 416468842 270777741 270670113 324524838 854873528 265471906 885403420 999797274 274837874 997621919 198039849 281974565 672180066 162185307 697758154 723312018 672246573 64009288 905756818 319165072 1005330572 731599974 595154837 22591533 907502990 809411560 804189810 320763415 877032942 416913457 769668632 970489192 491226649 177007757 1039718036 115582881 996747302 397353471 261312179 655980978 198981308 933673796 697424728 266223931 525887541 968648163 805045877 519934993 790760459 1040116157 761585815 29623909 29910089 708906580 609021743 990172091 819349650 131595773 245737685 899728198 252199886 152876476 415407149 338254313 282189328 720942380 656321702 902081736 462175931 868487205 763207887 855582278 317023304 160828082 1021853902 1070488090 539986669 956079302 34598955 684197026 991234886 93277915 383754075 890225212 803951022 29375122 812991154 982794703 1041623325 374494335 889966100 614728895 717477048 178836697 461311020 218062253 643353432 290937753 289565041 858262798 114992064 36698631 274310233 1009909380 803553222 720974858 873084853 779368029 553314480 211030520 414454124 249984875 953801571 524174254 933936614 594400124 111789425 498166613 767840922 856794854 705918755 680602635 1445441 895548398 982866065 694972090 655455048 645267582 340931399 786932533 598646482 226370257 87626862 203853531 619479776 205411766 862968396 325468188 487867967 906347593 244479308 1021352057 351620609 870276868 776398433 560287814 454316452 959667178 438345869 864612127 672655401 810397227 608607042 721197505 323622747 978508662 1014568144 844718343 366217617 765870533 387945446 366245674 691642750 680407692 761357357 1029240432 685388037 385661295 854588476 1063118777 731936126 384605461 553580891 335467655 591032214 694282933 939686597 174978330 810286289 669622320 680128770 869742707 139775420 385647452 694954261 752756534 354708341 134752632 623216598 495839832 972336611 968900631 513354810 888490412 792000960 544095412 517184888 712627908 358855899 913856159 355391060 293978146 400263253 643378445 896665700 754124259 1048211629 981295331 605189100 1051478938 310455299 288063531 332523065 1142927 596718794 324274307 673089917 298010157 6572722 552411086 643051516 335629811 326803611 237378033 922051421 415470065 569612060 100397968 583561898 1018284964 510576212 329643840 254745242 847514490 91335170 419751547 390071593 354841557 1019325488 88067429 493531979 593086993 185222591 555979348 1009033458 803522103 803682458 919922039 536375785 572158753 431932171 567805441 130795891 884158212 978233221 439990590 919955531 29157048 69845445 243809604 166634051 1065995606 538282837 405761697 561733986 257669560 152276539 1070993819 591338003 452375568 360541458 960949230 261216047 359055004 79217444 131431872 95663335 133409275 426195982 831129858 40143034 260198295 366041241 474424191 580834475 966865093 247347697 174824149 150553323 602365632 6562549 800896163 986470964 152152204 750209662 140057294 143305645 742141555 55695313 23303155 24068519 549728412 798653731 499307433 512194804 983948775 593543047 377547509 1000277540 1003544090 119870415 586197392 60907752 834274173 1068675069 856388259 313615712 542705686 146334257 168321458 1036557931 1017394031 365093584 26085204 1059875309 606939232 731485442 239761994 63903931 185627028 114916104 519488494 757246445 456812972 331198350 276866043 310599487 176925696 428891478 788173003 1015457550 224980697 725172753 400569118 1070291789 1016338025 673553274 689778671 269792678 69412166 932931866 278283153 898193903 235723714 834221212 466585589 1043758061 347977301 788832704 677387272 941923014 796404933 405345666 582826816 458767605 282533841 151171800 878487820 1066414707 152920077 1000137974 135745383 1062005685 265817300 858373587 433354851 477165357 366165467 1062438592 1038586224 37605487 696976016 89218752 94453957 210115782 773202434 506622591 551878745 431333046 788235812 239127954 716248536 147626770 66011543 521679732 596928753 626375049 15229719 323512992 196975869 987048031 538239986 278253398 463742197 252716417 864296917 957444360 425027288 145155553 931585553 450824594 512956763 392505191 783737068 425709628 953218614 73989086 584397000 666558830 521619772 837901765 296579458 305415640 799535902 872123643 955901737 60918994 290623270 968079522 744595562 1045642527 975689379 513112846 37857874 210319488 213726676 258317178 473592257 986959444 277089630 798938289 259986494 765046382 392444597 309524703 303886583 1031762369 806714796 481351690 711495135 892721522 342330631 80114141 307133896 500961740 157883978 870245936 578414278 329440447 744465215 799192391 420289841 265634514 121512608 510482943 80951644 414604544 515933674 929415209 349566393 994404749 896079480 132306536 17297013 186415116 367512357 146603807 63490682 133985410 864207315 598819268 828981421 785649373 220176375 909444836 610564510 148020619 280673013 48554394 894284335 895991406 97165262 395066895 215870044 775303189 899549021 912462849 1045590776 714705901 712899639 794498002 945294114 628016400 743921298 937862517 800313836 283706794 929622073 462289170 1052262256 990963625 875214325 631657113 29182999 339556676 1002597751 900464687 635996654 84356097 729995892 740313370 787726147 963397668 785909805 1052885227 284060529 59762610 666341700 30449246 673126755 226325015 354752731 392378950 628633446 403225113 1012371175 900710791 874166695 995958497 82352459 1013131252 429405960 745082494 555306455 378389451 917106886 814337183 633614981 857660408 128795191 815281097 222662407 1053910816 269102150 568546381 1050691914 602057817 652499832 550150148 926243950 573656524 812497835 216394738 817574822 1007061432 919640861 781271817 1058789360 354794356 95900216 324211091 248972466 458451711 988308176 183499276 792022261 467655532 1018824672 203480080 84897671 1058224514 509233691 569039134 11455454 192707360 207594669 500010717 118647399 293990019 951187202 633911437 470004178 494075154 902037909 456714756 985884547 777112363 267000683 187933302 103461087 899331371 72963131 408609969 488840686 835798120 870821372 416915423 724411827 894019294 153854229 928905 629979973 999244970 797067762 971469329 183012172 756789000 982132916 1034045598 897269438 130409511 425318393 938580928 711474331 20382624 929485325 779660837 271468339 941267658 814932035 368007962 235203937 287293522 800520734 144857948 114928109 78479267 638731620 266034849 864793736 122569390 649928464 503392474 708364147 85857914 334720251 754629368 502573201 497158464 1036816352 54896652 17689417 115533516 561280901 263271953 281255224 1048598725 239552495 895169890 213152728 100450805 935841192 299931545 1013066380 915991391 141567330 985314711 336838833 710498003 41964607 762806006 843503137 281744163 820157521 45285151 453291402 924391873 776330962 1043858015 868346445 770603894 403220293 1000801164 894158003 643995407 361865743 214259000 517220474 309082434 627851948 635290070 278310159 540289807 186648621 555496563 542581197 603479051 695130077 1035047304 70874031 847609241 729778768 558189909 773046631 92529204 37628820 359198870 425033575 891828622 338125926 905763112 832999214 840240791 645994438 61455866 798388912 196283113 1237530 475156387 102774081 281029855 546653565 976807988 1060098681 912128975 3798896 456065013 707710912 914550684 551151876 301424426 232205804 202373711 181675399 509070367 495996751 663272974 180964763 124231061 499312781 506704776 396540516 1050395714 429326800 544332015 198162833 302064239 108359077 677781892 972781159 910119557 559281413 734482335 521377931 366446123 406185941 434092696 128969502 189206317 646376774 340414472 743213493 1035303035 254961252 153868377 530434109 852093290 147043702 42870720 1027600875 403431488 182607522 555375540 713180505 635932883 288275311 324887782 333186510 202702210 195720345 575219468 799389164 246344511 1027842225 906080558 895939783 235335751 696526299 674416655 756824677 594507051 273562505 1039698850 1044968932 654483121 131605307 308421105 61164864 387359172 734989786 902148073 819306945 952791725 750494501 97032911 727740484 141165213 755583729 545842845 287215743 942558787 933790024 381227737 415081484 367890571 449904312 197060795 574423862 46141959 415146503 415824587 176458664 599362589 308634361 272192412 743692413 572155374 588136784 818082928 1020324664 926796293 1017047135 975817191 109661290 802174700 1060862726 682318688 165955238 812754209 438003200 1039414065 552101413 545773389 970102300 478204191 387167234 707832432 910020409 648623831 664091931 611472762 882621911 48876120 639460089 654279761 843661494 1031128005 881847439 896963984 874880784 483377116 407763893 425443194 221668237 709719664 715282019 689442160 612025310 606050109 511939689 792504899 150989673 368808442 657014524 731941389 1018537253 110465586 505020144 430290571 700235142 528735763 724922741 1016467582 743770748 681566049 79729102 396477272 171279611 826179411 603455233 478592658 1016264595 526337997 240736249 1054080910 721427410 435759889 87714434 458019451 61507406 982908637 217661844 560614643 541136982 468475281 883558447 836856802 270789713 122418339 73762419 24816538 768174335 133874665 1040395933 223616350 172840009 553515470 598852054 870042338 646462727 151713915 1042474012 1044371616 495248506 78151400 487624384 198160668 805234015 637470245 570373318 1010724630 382352087 45045991 1015547807 128704012 721515366 374037078 574242275 764416561 144922254 585735884 832212521 214353884 743501983 515643376 208948536 561574508 636511938 280131315 795365088 353694267 927832269 804081933 1023790128 171178430 198673817 703967628 1017687263 263823562 524050814 417693306 126051267 942744495 814436811 288784551 788425932 25333900 1014541143 1028282922 1058317738 317613752 219792164 779406490 597394263 843332353 148258252 510180993 66314159 209928147 124623847 68824198 3874304 197616689 664359244 102317758 224587794 623663721 290681197 362374720 565828726 40925545 404452076 383510857 444551727 141948552 542854262 116033021 644051254 655749108 956459498 652906836 26783028 695054347 278423813 355494238 1068096391 328363091 528744141 273816288 266833396 40450939 769317031 113193196 981602935 258132906 31142903 528578598 723607905 163249548 339429036 174785050 479446542 1012112306 643313082 347936079 388403201 340958243 520513339 735978393 517953454 358372938 114593470 190418322 664686466 279896309 333318485 145699827 695038838 369819763 365366070 362177592 294448611 309489918 456128321 1007554908 1006410992 642253969 467897905 323302435 149076868 1019561402 725543000 907384693 494743858 596660784 948568695 126789822 591125205 613851984 1068844161 255482723 368328023 897832741 947017887 307698666 1029866387 81336420 321406 391515602 1063774426 464097652 619131301 99866410 145947373 497878738 603775366 475898950 1031839275 619262915 462329184 436931792 771375769 118526932 926197792 273937441 1018332016 775641968 658602607 878999179 869096217 166903169 1008173326 521295163 563404463 495372336 294550913 353767924 797947944 188453766 196352403 176826242 694948386 264074860 723700361 732168372 963664744 189364035 520325623 595195655 752000224 855996871 321788942 962995035 778164691 923317896 565968260 278700140 986918091 702844065 1066104886 1063353889 429560299 884709434 218475292 347774010 1017778821 951292793 478043459 657840901 979160822 682935688 824805850 280954453 122571199 745542952 601993491 307545729 265261312 1066690969 390058074 794062722 631083468 638111568 189309816 184241819 300039699 970260543 504284231 57195417 459735916 395746728 1020215478 195129004 437971615 1061787385 632744842 530731807 182814607 308143915 682777156 850728480 210524638 1072206678 129620300 219465949 134056744 559566602 186781896 1067097453 603679549 163611747 822915315 347567574 129054585 634538147 722846016 315079147 86646142 92483375 630045943 842481356 506834356 89613960 731444933 909048198 215153495 979142784 782959543 388240300 1025822172 170901113 185964113 697429151 12206865 544412628 41396624 488802562 136258637 388504934 211458558 748839596 556195429 281941400 405714227 181121111 199932617 620025593 591838124 82201306 840609185 421746177 11358786 430505941 51159308 529123520 506230728 720450692 522448650 256604819 1031778813 665839633 8116148 851622008 422541368 506946455 347647582 633891499 190132485 649185374 720053854 664391707 587908964 794831912 290289793 216410631 126967908 732965336 201287800 737441189 1007548247 340297694 815761388 139707671 150562673 739720793 369079987 633837955 310073016 180433248 933918867 916618074 505461756 881506201 96333576 920814130 437616115 676692951 419589367 940968819 789033425 1067153395 1070602481 3130284 365414999 1039022713 559350841 398970730 1073045292 511316813 762593004 1059338885 67342955 701063446 1065583053 143390078 802411964 532015871 349997570 998825875 944161 737441021 315568671 519213969 1042756067 313155837 891041442 304044033 279381194 709735958 766003907 294976892 758702915 357833203 944970417 377290458 394311517 562759783 247869318 1030374769 778968766 226999331 831957542 857351395 254270430 427661015 944774733 274783865 589987297 1062225878 718341298 946115121 75217319 849049697 262799140 853531903 7793166 909212438 208515036 23200911 793170774 476398418 851468513 137887661 557014835 780612445 342477490 972479840 482718697 332018212 162930216 327840826 758975088 786611563 985943163 266671389 1010038236 712537659 966679723 55542958 719907530 147007092 159305774 805719181 381544131 158098938 678003949 540185873 259202857 108264094 684450985 240346734 152855885 541135972 918295923 252643507 276743219 1017403617 570400799 742383850 998820942 444980827 773273077 828710156 303425761 231127094 893641388 115109866 250949297 177790908 47025750 647359825 252155258 206949154 17572748 106832075 624033482 288022618 849134149 295327837 964683532 637193597 397479177 615986603 860976270 400537072 249224865 554606013 599798564 773857432 501514041 26371895 558172184 291900814 713218991 998585548 10039108 174495942 397193311 98276886 1062044496 1019311961 838333353 190960486 211770304 192083448 1028566324 353025894 176221574 292148652 836531739 996043561 421965415 790553397 314517616 1018653583 377310852 179511330 583279547 704749904 1009953075 143743229 23592099 482286260 92196969 671278992 815894729 38336861 26089019 836593669 169455468 429937113 25950170 192676754 524294002 281742444 838277493 815218977 943423663 251537120 784330616 1026232427 207620129 1014422024 263394808 930094776 607907446 393768238 583416800 98373755 425434634 936111690 150473220 818684727 210234495 1072224678 118159558 224159285 561758527 201101423 657691801 835713260 437799204 512876407 828430104 632645335 775945507 802071955 101767797 495759417 417166120 538708259 962692792 101042768 127294310 410332481 712685949 234312843 518171805 1072490959 524702998 346613225 922260738 129465831 589755214 950167070 217656476 889233152 19502686 199529627 404340296 956838948 186482408 573839189 90476596 397786279 74897084 481371174 123676089 844248505 383098680 42963575 870108808 432581852 147478441 443764487 223808489 251310408 951811807 198339351 741281084 1055234714 954913987 895592209 856405423 87870933 603200069 370128221 416221463 810489333 590207386 984891788 358050582 219776619 226629659 695338286 408366138 208171614 469437961 458417013 681975761 553619206 834548239 145733253 537258976 79892109 463399566 639225934 578397329 549353641 1033363258 1054677476 1015134530 36024760 209140633 1034987059 990913236 858418064 772281690 988753720 69336639 169697242 252303345 290724833 1045847990 745634070 742949570 759736699 85326380 899370200 190087892 410777696 565071733 149902248 533123117 860041497 671465306 241982574 847217382 757022548 707743340 979869816 465211232 925129425 465472031 40030658 677167438 667166672 532421564 634273535 698294203 655334821 382837508 1026570312 1053340731 408496741 597900700 419510344 1004703319 325639491 128497307 285597777 972917172 508269387 814114415 519450562 119571283 313035719 142438707 918180505 155069911 909175016 933764093 129807447 875296714 550816496 316051132 490293320 760425369 221964350 121347321 758810568 499288020 225852022 302386599 234644924 493389173 690104626 945824531 378880702 720506888 724984965 717162474 120547870 744436589 87884576 49687431 349566791 595937969 382485249 335391866 1058543013 556243045 658070205 832376497 126571372 69070146 542779729 799335292 692583423 798475748 1058578927 956266526 1034577328 820466613 497141495 1060149805 1049342123 780648776 955340640 207544853 79689332 641395593 304972660 196285901 365336300 726677508 799844609 445527133 455671715 1053064530 430172460 362208179 242398629 980472100 64354964 176489935 924193783 254659733 520780766 52653694 127106230 192372882 15711373 627962844 515997064 855196890 348334152 264656931 489446459 85053644 567227650 727949740 1030241690 1011354982 474208356 296574955 437022935 615097690 568897215 83839317 561414784 424354971 792935407 726146319 549341360 361810965 925654244 152225228 530208952 906216377 346178926 1025546858 497993851 421939366 592633410 832690710 333095621 894543279 171392621 562052695 601327053 674836131 602336204 1015944685 913531823 736125621 793032600 287209659 135156461 823568583 264999210 637247458 498158146 501495507 729117951 716520563 452373616 235555592 141551614 604217444 61103913 585197711 568057376 215283458 547018903 624653836 139250227 343452394 92748621 273917448 185598116 465049384 203147782 310074092 986084433 910175886 325430180 779745351 402447193 431165595 886657313 753762927 871818208 904407006 1044266194 385223251 882520024 490338079 988462719 660887933 470348250 819505029 586171247 543114214 950851923 421431736 1019317642 115213780 779123339 506224349 436717271 1032838799 544924580 1039237682 335180948 718631254 210945135 923131513 887191816 340288909 867067393 913181055 715672620 431363840 901380475 393475142 538022198 454237046 531714265 162535987 808757123 572212008 337826258 126430220 173004418 676648987 989336659 130667176 949199656 1029336449 638939933 184459186 485954478 685805595 286526330 946625849 621860747 110383559 776636787 160321102 134186106 982577285 801411775 624098605 470368503 768800736 627988677 992539934 814279037 350073241 401773557 684642376 421093265 133217107 696752475 807462104 704122648 174516207 738785342 268481048 259751872 597215984 85815263 1040103997 187477040 278516985 293037967 85123667 780723015 314169835 640673004 993425836 614716518 712258120 303086856 307760105 563514570 850648793 656423015 297172326 760923014 1011478916 400774370 442648436 438064998 17511530 677705111 319418476 402707390 555929521 858487327 440270253 425066104 750390621 103416824 420402220 392438319 39463681 874302626 620216238 763854030 694694783 834799679 543943944 638678277 1025849450 173029527 1030370772 385208081 915581896 841474963 588285122 651859772 244952436 444728286 32582852 1014754828 35321155 509756504 172253911 1071260758 152654716 605857203 733667352 893833722 1003135774 74227385 770511543 389552805 70957667 298549629 406536446 445613988 206990383 916604460 165651731 779166275 592532174 775449720 938907726 119680767 503859188 871577080 1038071453 604543492 314071130 330199793 790024344 256461383 1054211816 686313132 648305441 322471517 261428571 1039223701 620890988 614821499 704415853 892941170 559386487 141898807 353174182 60346555 1037362530 588001828 468965679 954848586 493585716 1017682638 984666324 562140589 487669372 724979619 426003029 300292813 460693731 23274871 268232491 955381076 61727499 217775832 488374047 637495539 1026395082 875067197 528848991 1045881062 334410795 341183562 742872855 702432294 32880864 795676849 636895839 522786134 581364865 858705009 460521228 760282571 41956668 688490250 990972325 762899519 786040854 267338119 243353100 1005456242 532693631 343795549 256221306 803335500 765714901 552341729 517284452 965019770 321688710 84655828 711165425 149896212 743809192 257632467 496021665 166096598 637428895 1008137017 703058453 396858888 135671951 1048093873 449288963 295994148 250418092 611788645 363468082 654313322 730862789 986263890 935922441 257153417 535945719 76386452 48721204 916312125 515930443 214053252 820049892 933741331 22282447 679822862 498090441 14258000 457143324 468955057 1045232442 154027673 1058819364 464350317 659130824 651157935 889441761 177563189 52294195 247987893 1029243172 754322552 3271348 846165227 117687126 880578771 524586232 919365223 271911456 256611915 385995312 748611036 524624435 1051206621 315351123 174081763 435260750 971317706 451886008 279567693 692262380 379742272 167794472 541936392 797959410 1000426602 461490122 209210430 482285929 400066416 861656502 117188948 318819295 652729078 1056671545 597236235 413666942 712903408 28260945 638899652 475397222 951069478 61493909 288090268 49201431 703826248 696873417 556004724 227975148 979478890 957198720 748640360 281779447 139578655 503365114 956665125 779600322 1030704610 650563198 155768992 669460381 238223641 254344183 883447448 481718828 284275896 972305625 963475387 287406993 825636415 947655709 210536337 404194782 780919839 455596280 666800648 3821492 690938499 113956829 668263034 711749530 515177085 910088099 550073266 807083121 794751309 1049538706 531863919 340620076 1026838981 883637168 563698343 860500108 422063304 911580997 526371449 315967961 264866032 908908540 688251774 566209361 703536671 278368709 345382768 528203254 675202357 971638131 159664251 372247369 65609124 757897905 199737061 959106569 799921193 358208105 157025976 697409909 886325202 801999080 74375865 661809986 242683535 559542029 600988452 11174908 214291938 903206558 994539921 303566642 2790852 1011977005 897069411 533597951 1053836478 589602523 1001836687 931928178 747842358 1007272215 397765738 856499536 610778854 985104973 945720710 632107722 35629110 421396957 18066177 1031330454 236688456 520913055 289282048 648408191 593780067 799115581 734609058 514003738 627266326 69154976 456659397 825869252 535514303 294803271 953195666 167709912 763118224 134071436 970350476 408016030 269341777 282385087 387585825 353992932 400241129 636016885 402955892 979632983 936323877 362228210 185210199 1064388194 358508249 422356040 529072712 911642765 587713883 570295652 729063641 1031267528 414338956 344653137 727712587 623315960 299434486 312397482 509046180 213388277 801951901 963633529 856124537 604013777 755059961 538540524 253238540 558532518 936187723 219697473 1042012410 511421829 281311111 54892141 360523605 839854134 127911295 363668776 888606977 541864213 725171773 174527568 1051602200 93211590 104286865 96233944 1034888931 53525321 568305843 314028154 438319600 703657726 550159850 2232446 242924104 1024771222 287746966 344732698 213181138 111575524 13440437 698701612 573024440 146472694 726442771 765023138 395655285 635805780 336180585 896197162 528850466 814763816 852706639 119614529 54585576 348989343 745987769 487037027 338691069 424611836 1009299157 494147256 687145531 60263537 690494952 861521232 502741818 344733296 212826433 235315726 680902125 510432041 1064518165 371973878 617184582 79625737 947055021 918258184 1038175075 673975235 648639585 983902870 951593182 68901891 732560292 848342509 890246053 719660863 176357589 1008878431 423572621 928533166 1059333098 941332949 64503638 777015464 191546441 442601779 303566688 184266629 728931043 677705145 879076859 809358924 787352764 530177465 256714620 306552624 405911301 284761751 1071664007 1021260994 466323119 940319487 550589485 857431019 549105114 847007871 342458920 530898759 526248554 670828030 294322396 104373500 504733052 89633488 585003648 943628597 536736297 632977715 871394568 430769177 11943553 424054020 459582722 376888181 748239622 1042669795 1041080313 653139003 1057967351 697804152 992907395 175358823 986581030 97301842 362951211 515180230 799874103 632450177 847563335 9369937 594855652 330084967 659941096 565129009 1029743931 600340332 666669812 655699508 930272148 545866180 755841988 417380409 732928605 733685601 962738972 915272390 104309273 475848565 93631048 500240003 315162493 809295241 229824237 418380187 677142107 386262172 442030305 898148183 137165516 972651739 362630796 66354882 851858913 832420120 1027957574 656604622 246492494 421252939 864962998 444493102 528829835 99964373 538115607 822576023 253017733 242511849 198085802 422734361 1071046990 215189731 400024849 794839319 569875408 237123864 176083043 426091383 331701020 282837294 773759715 115558393 675316742 438662917 453716103 654851555 337876500 214953610 223185070 335763219 240819278 773190824 636363668 377336096 995155344 416374089 724385953 929849256 614575223 73811048 11548950 995594540 590794485 598651330 238459611 447472021 834346867 194608910 516717927 247694419 192959828 381320195 412898375 1016509381 4435786 112283263 301338269 707743464 438601796 328478659 766490761 914085391 717348795 463554938 669594300 95939517 559126152 671634721 40743692 343885372 67551740 460876760 850535700 934728325 739023514 487897053 974685440 246291839 407303655 85031956 8809134 571459365 269509028 241846167 749277270 727943860 23941376 496864043 289333055 710066134 1049952702 169258511 405013894 541804630 1040397887 430483107 363064460 628458663 1068653551 695977385 630712181 1035650345 806401542 354531560 328925405 1048054101 968826445 253814160 590405372 183859625 123203972 913646144 647761274 795096755 148325882 417344211 911226827 531449841 267523257 945053850 729148726 1021190099 663818067 764858285 584350501 355435031 204817205 556417022 537183567 151649466 73838209 482549918 20112819 631581597 233360995 704067301 549066078 275206197 307903965 287956272 752121379 909421610 532620476 784945145 957286270 458650377 265829497 677982557 757438961 567977134 568282097 320812890 267074855 153534542 455607604 771279576 779332720 459925118 416762603 404839453 784476136 927609270 725674804 728859523 430914127 864153219 886692042 728067443 492729633 793465651 871635474 835774146 772289990 231479957 75776233 22229966 828086326 375879859 991821852 686303636 199450598 228222162 153702588 987020014 1036203013 766311352 732257502 738230459 999035285 621450624 959685940 544322390 939902615 309659486 612367363 622782331 1073481438 854154894 287723499 796142314 234300953 689172855 132441759 384193897 929972181 227451355 104610467 18497086 561394600 731712442 630621662 330099492 578799226 698733454 876550612 539244163 602555378 331191568 843145609 313669146 992707530 537768980 1058822298 104872740 292789619 588666035 700057125 759789646 770216394 547126814 458385715 597429754 298702567 304216818 811404297 367233505 239500493 735038440 761918401 372657505 243543349 828951041 661437599 930384537 207036223 579263424 14791416 1044576955 885246352 351679746 294857386 829642356 623477120 1008191360 665205425 515125683 504932393 875187060 632824773 906774705 1042644364 130481124 834385302 533457464 743815687 721317763 35893577 917211111 326120442 766836610 626376749 318228429 795803118 474697592 78615196 125062489 1016045865 1009237322 502565007 369183177 652946398 663872052 520405733 1051918752 525748098 149078828 837296333 321375692 1053471843 640287750 61894945 918842949 510517028 149484538 593293155 1055083862 957039443 622759344 863545332 955024986 659970319 440318726 411621306 576443026 439777765 207321545 629802097 2632908 1071065756 767798060 64186273 811305929 452208412 24234529 666973675 99577004 1073530973 935763024 424130975 525873577 972973602 909193756 960282684 671935686 210958977 232720210 368369655 50227917 116473750 2742811 445389609 817502336 325862084 473782972 590128010 311517531 701179881 728588712 306641308 439560057 385705937 599872496 417470565 319067555 341143151 1026718916 623786281 89834193 682306223 515208907 281537558 822401924 981230953 467177197 624439559 914831646 490295289 435740221 856100482 883730526 812912464 880342814 307297003 799197258 370224128 832147880 600613015 1029234300 367091259 390431015 659060706 737737954 637809397 11296479 417983077 784570873 132612298 658289556 70970563 177554578 106130241 181508466 692499288 298035038 844521863 940369752 585200465 488537704 523492419 638532040 102012096 848805513 544184659 967568801 31084333 796216588 503760839 117730268 589756124 427560250 894152661 225262852 152276743 62579250 85518923 849150743 867484198 332561579 129674379 1048343892 760583337 114286318 904795437 623815749 861297749 124331380 464335318 950463220 40427459 868959393 150749536 419424940 1048859650 213769772 651859530 266429610 483724907 648450310 867125122 629119371 692649156 661043165 683085802 89141645 610973105 1051165232 797762932 874179617 790775538 22326935 189594764 524357751 121624358 853031728 910914146 117646656 547978978 610113298 544906849 992458216 344915926 792794081 99565742 61131419 367667058 876300967 604279562 40612017 506758889 854832558 266706019 309080213 144897256 79102607 1021294717 79595896 852075575 12611455 744587688 382744655 822552747 8008619 140821054 992201353 96799640 479308430 420566567 253585897 208596065 25749298 389392364 464994994 935734549 558876223 942795476 349033733 668244035 188023524 102112420 573297312 1015240761 495411547 549497515 912047097 171648051 523124924 680015287 1056487541 861921078 96324971 956793810 370887750 238002666 32106388 1045171963 574260906 363674556 543782934 40572361 518817909 370625898 330604759 627366537 228770650 434379283 407255688 156570985 99247698 496079622 362479515 539005801 940619210 404830125 760762150 100282405 187367329 556032707 543999777 693837137 547916745 521264245 951313831 657528492 157939060 677063746 180741049 680029 624141546 692144770 684980882 996917527 898653929 186589204 24530930 363781216 31511962 265237698 392523962 335720244 1014330358 782949183 4896302 274755450 67936117 395715047 110905216 534744927 137888904 1017118281 100974549 774994640 384518432 180813872 733219468 911640221 877161593 290865176 602136875 387228577 1006403730 750848645 509366146 994277272 840428831 94949891 466416482 503526681 242689408 306497812 213232394 314551075 64803106 854240465 138850549 558479512 584428474 371232201 1020182994 281153231 1014333809 75271936 359376659 679727206 1025550186 580217964 670731166 768547061 815972211 646700907 388642108 779652858 577391981 528867737 291118979 1072206200 41241575 58205978 789298885 188027833 172652527 243923488 234236230 681346628 381398566 1003811514 1042785155 576897212 65121589 441044003 813011836 811887027 66172324 1002314410 49367666 201038187 304661930 25122316 913051733 202074022 731003989 842283017 397052665 741905062 843877943 433614466 337920318 30113934 128084432 353651520 564073245 741179298 19866717 971163210 943098336 493905331 913250521 623314878 289797150 720223304 227009342 254307941 602960124 210893901 750593759 950556417 1054837481 374471997 61141919 681718656 602747401 889112767 746664516 221054296 991228623 715919170 222407494 330675403 730159207 717282474 46425556 675715395 995437629 488388694 924900826 640687485 1071242731 352257292 206811260 299462638 158149516 1000945369 51363549 779147446 186767634 686986143 819189975 22441980 1030449425 851354763 808362661 748294679 168993141 553262282 30433981 76721338 462384109 475413032 27732495 318348309 1031337688 1057399960 46526115 666961602 449685735 911668266 888330422 918457273 937115659 603955110 955568180 265809357 1028788740 413045888 57617730 375497862 185718098 82614129 570786839 391814282 1002681579 326866735 346046916 846887234 14332361 547747523 426313882 232460690 233160693 445932322 661269386 739705303 137030730 651018013 218012080 427412414 263343009 482048263 791491491 775231216 391322699 507878604 409681392 492057257 455920912 647921629 867247047 541489146 857090636 951118204 575040074 566175655 521749306 422405918 223890754 100346865 312950289 217025666 147323212 479231187 80212395 1052028103 361601184 610201584 389633578 534688738 155453258 665127178 227996164 1032946773 1065152907 607715120 546608754 571500664 617669540 584506938 542056315 953408172 473123174 435823827 818666196 49844936 669553831 790441370 244676195 152701922 614242731 1065953897 1065360636 486449078 1044445423 171981604 654061212 137469799 69442914 985274134 240853952 426141877 922959505 1034508434 556097139 605137273 615975753 891068227 541486693 443258477 201980636 352736377 184422539 729216769 181418438 988428227 438819258 506919651 1027095009 163282536 47191650 128721764 69761675 664099714 358847470 694975233 841693392 596105050 870421740 778992715 671074503 853344297 249948552 477651159 75334819 469865945 213231687 687775419 536663396 1029838536 278995838 354799031 1057366622 468498837 992816444 1072549518 219017890 801687249 52884239 113915700 503460319 489026832 567613258 263423375 817185853 233800265 477584880 998363086 954614699 797353651 771618531 467685748 1024439544 50918079 373308582 438886305 465622025 989956323 667161431 999499491 893318538 166016739 1032650719 159815559 186218182 385071764 752383707 717703308 1007089875 559098461 745182958 977976989 739384405 563351816 512594223 682073062 955547667 765613533 751338441 623790695 203421779 956378389 837688642 357235914 817922723 200728737 682649604 645562559 435375334 653644753 797338497 49927134 382431001 1055392256 1041666243 192425727 801190314 557372277 1000277702 201338082 902035464 539305464 635875699 625988327 208961118 835940972 80536650 30921072 120910000 970900710 766838886 426033207 31855328 371024227 1026554199 414219230 809470838 683766654 991754437 772814198 112724619 549544150 863565665 740658996 89541774 773939165 1070121947 704256218 432989871 1060547549 556808935 811982974 932890321 372046704 426478206 663867807 96068775 93054969 361560183 909272976 58600138 648681859 766660685 757299636 723947600 109505589 976752675 491727083 399186931 838054311 565543317 770624402 402621181 356973548 312500875 717161659 662043131 149850060 287679749 970789807 27537448 397362421 51266929 420313871 118963256 1033921584 847424472 264990760 251971945 961963820 470761656 189688405 638229884 375233636 144668459 717517012 616331985 678677004 640002484 505871510 935207733 136046095 768657550 424915714 990620967 585024644 366950897 1021304167 617855727 177541098 686030033 375605686 776380802 895778072 434642701 21077231 827787790 149786202 133281102 219147432 349488158 577665448 1050650440 1018646015 352142582 963309865 180738256 892775142 721666555 862864833 790541448 72884382 658489782 813146484 299898194 922643371 801284114 137295551 755859710 225210453 386321608 27413854 31856354 1012993684 48637848 543427858 1034054927 968562837 251726358 722195818 232187810 154036414 600904189 597933054 247617346 440538385 459159119 738595036 40905150 332937260 199210241 9252964 701324933 280421004 509198064 39819140 637861063 505615306 1055066143 1001206504 453462009 1029557463 845381414 749198733 503654718 187110627 254360311 1067708383 597400837 838689619 728527347 860796391 500753883 265707636 42265814 765201281 913005073 261152041 1040408035 121231033 430344418 317212881 659821555 692178043 1060325783 686284238 941750984 339617834 381808259 507861071 187765697 996330317 302672206 620413628 295442278 864684017 926847474 766987863 502576034 988160687 139441814 558445424 445507231 788879259 636896851 701090727 358822830 955351314 239165373 24975123 952494940 805824187 466844487 512530916 430120198 161235144 261028701 778082265 794931219 659085492 422026638 971683212 55135170 101408787 125262438 262389975 49603441 994017725 301574357 481373205 183171858 50853744 376948314 864423387 402940483 274025040 763496201 800186145 1058021472 15276367 697115663 223287833 394094530 47202467 223421341 1052162598 985404943 194882498 839671613 381802958 879447358 538820611 531022244 820992741 343686726 11002612 349932613 611542762 617002269 692700776 780299615 212300 899112762 905039539 52720930 659803033 254144210 266026316 675555234 201794192 1031517356 896178331 992147574 319186603 534596566 129504795 937771677 502740031 131742933 542472808 615787298 1656964 940833185 696252081 796727121 947351325 766290021 517753973 1057789430 739912809 11646881 242499022 669302857 563321511 1012069301 426510238 455399699 917744011 924223857 967123585 72560542 136495368 405742533 107570472 158456824 791057679 54873610 702599344 445368192 65428735 593138528 635419657 382645683 521051032 692182560 697165868 450504630 1033799929 539463949 33043858 326223289 49018750 1054354353 533260884 299379639 867842280 611333479 109184832 157423076 565892566 881856633 665924947 419782031 906413365 448394607 443208841 149914888 878140562 51678487 399868725 750037708 371846853 241818014 929956767 1033711788 515486833 349673557 411608717 109833645 840891680 176685563 293133905 495424701 855558109 209089922 434933761 247120834 707322313 430135340 901016941 57981639 1044373724 717020092 793441180 134495990 375636768 114309246 21364491 796825902 567248497 67710847 733007544 770439932 1014867206 1021948862 961311092 50185790 649402676 1065072476 170877517 644431805 1047708000 58066025 374222186 760763490 723719350 56352595 867257517 750214943 786757029 417701860 821384887 863586896 942728730 208392028 1026115480 220099636 386735369 701327102 910364987 775376518 281114924 799907959 622038499 700507558 890115204 619450594 976927980 831087906 1024178201 360109489 435343032 97857361 583250691 122149200 503937190 355272615 446838448 923170254 55580114 633284853 499054410 346839015 390189320 138210217 213993118 337686315 353027124 396670263 615542635 960059821 522125201 386004874 274313079 604848166 1039248079 630587047 115034527 166683791 333158079 939269019 164546993 277319937 426872841 808731001 257063796 200637767 235763291 559567690 186746332 875514180 928689296 723669472 996609831 780034509 301364656 169324397 757105338 164553899 671885044 823221513 40703932 101167412 176000194 912958483 233004986 614153455 486807536 1062077543 514432768 475709373 963745032 1036839607 271993160 782219893 838759335 198231136 568678946 1046135382 199719370 420562994 959605341 993150804 322659203 918055908 957780151 444867120 360603791 653915991 821412035 30186749 874856480 883303772 432385959 1051860053 573507016 318055620 464017202 1047567120 55536646 420170582 644762000 423969985 569093096 1021125995 1034484270 46685579 463055832 517641023 911270911 23640314 261046780 542546309 1054076876 536908647 664606060 803526592 176417968 91282311 984213945 464716026 351217087 1065939353 320230916 182908842 588106159 763040330 110823953 1073528547 501010393 1023452144 377844255 959188358 652038625 1070466805 370718188 258358785 93711928 773654903 68579230 566562047 56233121 813343744 547731298 1061507672 897278410 250564116 725192144 371204483 675390010 542128461 862852946 610690981 350476255 349730795 344315559 225427973 200290077 161535113 454879214 476803486 670127376 543019724 468750196 50111095 578627968 546458227 289674313 679979494 563706594 416535507 261497279 675752893 903697512 431129023 868132879 857477987 914663104 824644303 328340572 883218606 1056220809 165948392 951926717 498643385 659833900 776195534 120741663 281396647 857053096 909573810 964540123 212277442 685239215 866742237 849207576 844112919 274700378 377330799 353800533 3160329 326345411 503262012 494246422 298644175 211261709 442485957 321884152 137734708 839135600 787954716 131353836 853165340 494645361 901513684 106830665 533495393 243330086 988262941 675414744 430170798 191041713 812530383 911039200 352229655 459139117 47112631 983143694 939208370 975592298 796973512 650193462 590046142 83620971 139038618 464899306 3549934 641155826 815136237 159451272 233366617 90112874 146219363 160873998 717210240 548779838 17415702 581083246 473355761 907627174 472808564 622730208 375245680 883254248 989555339 345961012 468195505 928391819 659099374 8268659 524868019 502322261 340197050 25898149 1065033206 52152025 33501995 571679872 934048852 255278681 402215924 248329581 774978624 295720666 870698503 274707179 965759564 634179072 95474656 775971292 1056303869 597239268 773195671 210930002 134068777 434134595 853446782 1036494189 487780139 537807237 1062366016 915629963 407882285 945124252 720584896 639818167 323210398 59800049 779041651 459878050 908630608 826453940 894507120 750280037 639200958 103977251 1039262934 849612331 136347401 662433417 256210374 208146268 740285000 767798956 975973997 874051904 408350738 534605481 70674013 845238012 850339095 151315319 417519244 26737738 942868369 971834254 903940589 1025514391 415249014 9300636 617005473 697693760 365682051 654279473 936059207 92530620 130669296 667962336 974843744 235710275 709461549 793658923 568052498 323245071 58722662 540054985 427060666 742193918 961124604 946651347 614868130 945680826 789808509 348666562 1026611730 388926600 487371113 153449737 385168070 72947690 902563848 13474014 287691223 164883957 759499830 472367885 850146987 575393591 447466349 275662651 365336006 204161586 997105488 619121277 139702571 108554140 276438836 510529043 781640327 723062777 116672891 1064581043 533531156 152541429 1054850772 575858858 844591756 152031642 598365459 663488758 855781379 817414421 129231127 115799162 147082147 119148583 61375438 618725268 815216396 934301141 417391393 281546738 508534168 208245163 252387748 620796869 1022217140 727471999 829199316 957926839 825713197 331123681 721848997 86768032 689992465 583789762 964267408 824036346 20738322 1018226907 321107085 380265346 523630937 221990285 851019122 872128322 260190205 282237334 476320908 574545877 871683345 891492018 169704811 466382183 1061748668 242197593 750804464 374135239 318876670 189517141 99592244 592838329 866423542 59740320 83219202 190158793 121372909 568687184 637323403 584982983 866650128 9829754 899002483 440296461 154840702 1040376109 453814511 351995989 15226334 997339628 74561565 187819236 856563502 711273580 528929307 595816996 237790264 915153076 451810323 475192680 823054488 771987474 578440866 259333259 72041670 981492778 798787034 545211854 518011681 362566521 526207997 85771574 195291284 61665951 666457684 149194280 116725846 109885255 334030229 224376179 218352520 3849709 131076963 61110868 92288964 403606467 447909901 449429192 234821193 92271939 942057592 122197501 281092544 1053000159 209163613 1008658185 98340428 718826113 886007267 660480560 592300582 657575682 945777577 227048047 56713613 342454527 421617391 418949624 202884586 660523350 61466160 331678199 721527801 687942153 392533340 901923101 516790690 897154902 651264353 480733968 152657435 826766986 823571401 947072381 511230083 693686837 448464086 246970099 835922533 620544224 339567676 318444696 964033485 688080309 498135458 833932588 625328564 361491326 263261323 405367713 19634807 828931163 859544741 372920517 98056692 973278257 292534 235347923 228697942 382915228 326406786 732265637 1013598180 654583569 688430051 607941017 510541129 248234664 997150124 729408072 80920463 474957456 854547855 669302210 420783249 405522010 196688263 293656004 3332094 239209309 737319165 242278608 954908489 1025008225 98674867 1047191930 60982353 428427314 1011940005 428332298 352947038 195519940 246843544 848200607 369574012 947075608 894017628 499992742 311341896 263369063 879609955 200775921 618083126 230471540 942471117 50535418 865056402 463870407 599662750 58121946 859476844 540009011 258666168 860023143 850653232 1070035567 567840058 540360367 160399987 237634744 66349947 810044868 1051185773 271937532 402438079 394028040 455553153 623707817 1002022383 521943586 308388458 495288743 91199011 451785058 964832954 278367624 388639424 198393302 1051440662 53241787 29694965 736096651 747835813 767039069 894437081 657050337 936766252 80268420 720515121 1033933295 645320631 907463446 749239029 247485484 411502554 363694217 1048780920 925446596 695176984 513339113 894203345 714811888 1052160811 442616410 398252328 977038097 577184790 620272587 214776941 212425114 359056564 881685938 485547162 607844715 908408339 1032098883 1044859980 940420080 525624414 997752636 778552496 949137962 390441047 449141611 992459827 1059928679 602875813 1013883038 477602358 926557173 401174279 896290939 31082933 123957374 864123261 58756328 611144151 575335922 294765400 838052874 804691636 736349342 537980437 727692993 894157721 164555092 269103866 689563497 615192082 359381294 163324833 182546470 662866412 301224145 879075931 991646593 396726084 44559023 440233389 987705150 777368198 723090740 560096946 670448854 967627892 770362998 164976338 458465963 185729035 816529686 1024042480 866687646 312980640 928964236 801637818 910434713 216152961 149181503 140311950 511920722 167051336 650915497 627228166 227057836 224903327 88120224 682806991 1041574612 237565226 592239890 900108521 983615891 961621326 905822470 56212291 571497159 928698612 705605183 689491914 899172196 638585355 1037901888 534458008 343505763 920134544 582125760 73740401 484018817 496741434 151589461 350221071 922397461 1033364835 22311726 175909655 660882338 344106458 1052346079 249107268 1044211819 385213220 391344900 120273327 890877153 590782953 342465033 36660277 809739369 36131960 841134109 941764308 194340501 719238945 554663008 923421685 463459958 25561864 120137944 228853946 204266749 600977695 106341682 939051986 976216867 776831885 886737516 783772411 234954666 81042117 705510029 941909317 293713186 433976913 297780059 142435423 291087986 735192930 973667429 56548933 818076468 258073808 1055025119 13136398 410715008 51207033 57506145 724053172 30002198 194041836 985381062 836219287 41000516 1009034201 32694669 334073418 388955661 700238991 682286485 999653010 711008881 373104331 327473789 240620813 632319843 573542431 835909468 248935262 831577748 76816830 828005746 718745216 1059799662 1033038192 202233439 915413685 389645909 942238039 730109333 152919424 1056202212 1050556371 421708902 987469935 343445957 356811103 926529237 671443204 142887824 365435013 271342736 915559892 722928196 230679524 534838940 486146025 732366439 63900710 107988393 282492973 1061989209 398536577 1018036814 14874142 92169365 741186785 293353129 979754391 1072528477 1030031456 468011927 230117533 59661033 477032799 165480445 207066527 501861792 164626655 1028279714 59192350 908128794 114537322 171519504 838547786 594697459 32294491 867735614 448485925 359039675 168634754 439960158 93914754 1045008927 550166815 343468152 440869393 896223582 945476793 79340735 882016075 226181368 412351290 54592075 334891737 267940749 931930225 12696060 270049399 250127199 739364469 851140632 319500677 667269594 170471972 836848859 181339645 168275534 121799944 937087033 103279974 706097386 1017384280 915798029 17274998 897771873 795175190 1002501594 865363321 137006533 622284927 375542042 940612450 908075510 912789451 437662314 122285981 940291269 444919992 228493245 726069467 143665886 769032550 335781881 435841078 852379719 601583164 255422903 920093258 451281263 502609877 217755009 184907989 824741851 212048334 646603910 724561534 933889796 508275945 511447778 181916015 675546492 575019546 913701829 269530987 334925106 269828031 926754220 150635262 1022318183 765213232 241451685 821254355 513762112 509161034 754661245 746987546 452549125 310185018 161486845 811342237 739742692 1014200963 23242787 812092349 674076578 792888726 295124598 816570340 355099394 439284262 1066290890 246320528 617358841 893310902 619848579 946048668 952692958 742366523 1006767893 708035342 250967705 579767542 920971528 1030245589 266091602 985286446 994246420 646131244 672283612 2565276 137323808 144427898 1073479221 764396787 758926617 560910550 64829287 755837002 244055904 528896139 665933391 730524024 1029305226 69338503 1060940571 976926783 324689260 404596258 83607690 1040307275 118497942 433698939 469670367 912749804 234443510 211886547 823784872 421655960 698687950 205051399 395713125 938579751 809444162 813488490 255967125 974539902 693569311 699484038 479973199 365895281 304375746 885135467 460252053 379063156 677015216 695433555 14028407 685632114 819957624 928906309 943901040 1023149718 803940105 801379298 650643293 239005183 937459179 79764819 196298357 156834152 995714998 778554537 964364548 979153632 762597461 427100693 398244886 274774858 510060579 980960264 998927879 740881844 109551994 1028477584 243114879 525335961 637737700 467319556 1072754946 902691644 62119229 526098542 119097481 863396905 110372079 26375539 738770992 617958151 9911493 722008938 878276690 470665348 221450877 1009725679 604404112 788742263 339064634 372172398 393023847 852188955 573553746 444125864 216045618 95792220 95445469 348000232 892836787 341033792 534963702 1027242337 533136383 428789924 731308832 500274690 602980110 586732526 82895263 825331086 399798729 689602777 110227866 80235077 134461096 905165246 759651966 974376316 139781856 431216216 987012924 1007782782 48224887 221521424 87839081 68982391 525893591 605923513 141891626 588924947 717480070 215495436 586143980 298411311 66335953 258470164 470389122 187893761 521220585 706532274 655848880 588158183 342618448 110310 949733412 378427104 144402512 460742483 119092705 1014845919 919564866 131377751 190180804 127509439 555946617 1059620072 1709812 1004541165 131964149 1031716237 382158477 131954254 407514738 827782609 447471764 883535264 367385120 982385722 491051106 171741011 974035597 103028897 432557139 933543742 103739851 595858263 209204866 490415812 354240952 503149503 437934725 58586890 374667726 883537585 315773784 330120727 697305871 267147336 837502097 654473278 289136976 565814184 269517560 138864205 431635730 43750614 29090083 262857692 742941820 779976799 378305254 25258023 426083638 826162577 16234963 930251243 99475150 542425225 462893221 542040541 806240598 597131759 1029918147 595863733 810438739 343690763 1071946350 1480428 916029901 175202315 788710609 184320416 725067146 271622297 533464208 747606795 98556878 918789084 636153426 347412599 432070190 187815397 819998107 153339255 53318974 67642345 713968515 661885475 370848226 380863008 730882628 2339979 816348323 1062288953 825539671 530132157 728381449 470996330 774468754 823584132 971857617 878699239 1021833737 584198363 504019108 236662708 538479400 740345355 314117677 201867547 633074346 137879472 1016955401 609162878 216039120 824845049 653474127 290336617 1070999972 126321454 901693145 789267349 661395799 884170771 234915943 217948769 304247541 847865531 643853879 911089778 1054460010 87736146 161414164 811677072 497390285 734233456 255437928 952854233 321455222 530363449 745130129 340203801 3876307 400942508 573771288 356769086 753549437 578305373 421416556 6488541 808851814 507549 808097706 990620377 1071402817 714663522 1014243508 987569598 445425436 750902243 190550604 989298218 326968650 596178188 369728530 153817587 40847205 96650198 559234298 330698745 409580154 996768918 1012991335 460339484 552385360 148888418 763458620 540642047 833666780 557631126 955866440 6174890 239424916 211126125 732946345 391193237 595016381 588983365 1036742402 195213288 191409253 807223790 110571188 242418653 975742084 188464760 515380509 75088476 679150035 627358711 894025260 232261702 291103968 652216 107602602 96807791 785462893 270434100 1003075497 309380676 499811737 1036566563 904348827 629734008 861246049 381545474 106884494 648174229 449599445 384276770 61731775 687747718 775622848 232319852 512384326 464857568 1004885847 147051513 217253383 91613519 713115266 252624362 297226395 221739092 714421323 659790671 47707346 352935277 499683533 46128139 702598545 281529056 56422564 300635942 362337847 223299431 331537112 542222809 836376879 850141216 788699671 293755232 598739105 913073494 33634081 698197002 901971302 629919040 810044921 1031569147 994339797 474027891 906839586 655359914 364364584 822218159 1048200691 942125691 681582276 441298135 362588259 470210702 263152891 399851527 217122385 396930176 810903061 874409854 179296994 505705601 72284551 298565498 759817584 323560975 442723707 639704698 937442156 423685351 335972195 171131099 900276148 579972651 742707641 56575962 543956275 211062080 674195846 120333549 311846868 81282862 996404074 185460495 397482100 439763454 1004093011 138055467 231068529 999234221 701523816 77942024 804548089 888085929 205452014 807425603 101657346 124065946 290835105 189545873 301023980 533421998 539977747 639448534 947632816 878513943 346987161 760398315 693231197 238744593 691075820 739213030 1002347143 665530579 174714253 560150062 653658545 218364442 976224191 891842513 387534785 936123592 249957030 539877113 1073071451 813492029 105281403 45966820 870408599 853331909 685602182 411468924 392890311 360066488 107810530 390163733 894799115 1059435975 631187579 498044810 1040856988 3316262 366924628 867718796 131627884 458052885 999171506 339755925 891652118 547138699 786788756 214157036 880150685 61505083 760383350 315066115 1045995346 204699650 1071394312 833426614 1058719091 895638010 83283729 277656352 929028813 56013803 602883085 995784810 34832006 210408087 193441550 495229601 74591719 343382174 839101029 441851190 150653679 846778126 525103340 636572482 425513279 194985938 417654270 417651230 880556455 997584762 184750693 693097902 825750158 1017785478 207908823 607294953 558941812 518474924 873472440 852650762 582332033 143999937 19041055 997117288 354468454 10170528 488432009 178414839 1028724464 582573265 964462822 406858323 245874002 220374599 1051299652 472654284 845030608 505349290 277290575 582453148 131303248 496752495 240268531 1068003854 541363634 312459713 161230702 350306215 230319446 335888428 337875537 553728994 621550757 337776507 789547094 1020511829 563618078 935218719 363108652 400890141 460078051 543769585 271582774 106003390 772579935 532639961 117200470 346599236 874350410 309791556 140669023 866787298 78961525 9738299 641117348 610447874 117145060 384485635 904196059 196817543 430697328 366903183 1004806381 652641362 599790807 1017167197 329649742 5629963 197511340 980676114 734659623 862664154 321743113 29862613 815007982 539222365 2638908 34087184 581463197 870246251 521902944 825071463 676576125 59435264 721674901 376499662 258296932 410870405 920511850 718742403 394960744 882033626 981672261 1060203453 431281006 387067351 965520155 179897102 246594828 594291880 1046867125 720932366 409139097 1046404960 529929313 834472656 59988387 40998079 75125018 75592659 159305876 896320186 996465179 403633724 173073411 476989509 164288821 766851412 570669918 390081581 573619337 129364113 213074448 959189760 192811406 215336902 793562095 45533180 922375716 319431257 743642113 425259614 315885829 766940322 135326285 913158560 971802306 127301614 851517028 390616971 883522835 670344109 1053665671 988634635 764201418 1055300774 850221638 364438603 96513530 234193477 205980190 927020729 227243362 25637769 498120196 295325626 445891783 487837827 429189190 34368153 424951104 373291833 106155160 227355852 606467191 377501778 776706783 971656055 339253939 928507029 589365092 712230333 1070296323 557385257 829002825 802645482 226240341 612568395 542332617 955091440 723226389 178124936 80120115 226548401 524854955 1062537957 65821846 264231744 202045524 786059858 782432298 803832166 382711551 255598999 624386362 860382714 692907851 148903560 468537789 1011454538 17900433 44939267 586275631 585939491 849502458 253723945 876491099 13035217 935522560 311094631 338266837 117381213 669725571 123624970 787474287 80631680 502782946 994957543 854451021 769252139 937537178 812685712 285413397 712161411 733507324 225698686 1069654898 839840788 2889745 384907918 608385349 243804636 190008075 582452835 877270740 418646631 137022624 634162071 1047953838 525017658 934512201 1039904717 327299482 416902101 293337199 321960245 358312926 289305838 176029755 15780580 791465902 312956260 322329031 639980396 449243670 10145224 347288842 747778282 112106123 269612848 241822858 265460374 825638833 257092987 771376117 970608107 222923178 800669142 985080449 280262141 833534196 317440603 620002081 1065130836 83293851 53049422 261133593 940630038 788042239 861109588 1014557869 492217535 100030527 196237829 745731267 1015430093 434333191 1069030240 690429262 349220205 105031071 559135152 838823831 677224218 1054289054 437972091 714477030 477514458 867207272 635525354 367670783 1011773916 494653663 727324925 514693270 656823717 6951297 312759505 101365278 70982146 790920321 68424664 534684882 315858362 836046772 937961344 563411696 656747296 21111250 1037087025 836777173 877991297 547195264 888833186 161162685 770215073 265272349 801517493 795830334 613950572 779736896 153426571 625085298 94190033 976246064 909818324 586742899 812309252 559644983 890916872 340643904 487110622 596695422 913775896 889652954 407707244 982793247 56413950 234209708 997418069 174747287 356309888 40868928 393559785 218875478 463118767 452878997 740525866 272245124 968142410 926891804 65875298 676340290 712790559 592768238 1069140158 984618769 289382043 822339419 424830493 899655884 855577484 712378631 1038061938 305504788 984129279 899324239 383592653 986297713 384451832 271062516 786423936 408895305 323306823 18835066 1030634660 931762098 693834089 610450368 83030203 125861907 117874413 229566125 940152972 802688315 648438390 331626368 50680645 607085032 293274610 845807209 388681233 354988837 485883970 974922997 689150384 402787592 235285942 380620945 68276121 612871226 199402392 302156559 962450144 1007865268 211535278 232939063 290029695 645957938 889595192 406626223 541906053 948399574 711612554 796417466 225209409 845318780 95951640 746077115 496939118 472914634 527070479 203292660 271748138 731232451 127709074 892117864 550390545 249044783 86220080 1015691465 415063424 323692941 930798886 86189363 562346406 736348288 984361302 651590475 428714914 455446478 628377910 632693395 779819732 863130465 455474119 732216909 681546732 724929012 201632279 46357916 372553855 376083364 654928314 196314190 871956422 146064868 845149591 383161588 792399126 804765311 868376627 151494380 573789254 1002950805 271256970 617941476 1027616561 893259920 1054149933 832966489 834544146 33321832 706012021 161906434 926899853 827201579 469347016 622338960 372002589 522994578 572113502 443616063 262988930 969986775 699223391 655506765 951099104 117460520 24208415 466453087 808197337 126294435 1069060535 730894294 79895717 723883400 810743565 679087352 526755922 946621046 155811859 981978500 281982302 421141818 983822767 464767696 948203250 617176726 1023353783 346954863 719057999 748295822 632073818 299013490 52557318 813573982 998381837 550449296 831885450 1061102302 135311660 689461002 364259949 973537716 761389522 555331557 530317567 450297802 537396817 267500892 994036407 1066018691 952830707 54212072 545466698 365577258 212819909 493703458 680408329 832901070 361252602 425167181 343808932 1027030718 420249697 678375322 539120188 2128886 225595168 461540902 621415170 955294214 108341871 160531309 625680269 981875341 825638771 708801814 871402341 1040473959 969294821 959063750 245364965 109631739 309702337 356109267 817425207 396219268 760388959 452648594 108886008 605414293 331402442 418886808 439521787 43419342 124284513 134350328 132329706 136393787 991922033 101115196 947739051 197600331 485961285 220884649 795814903 1009300411 9128837 79960485 395422031 807358963 490842945 428986102 921584295 251434416 301657092 543346071 479237865 1011507687 221475085 291737108 771013965 729209886 137650870 509635785 618287328 622296089 1073483033 969805125 894767814 1021235207 747541814 540221208 858259888 710975661 318104475 914118455 906976139 329838570 752638421 410492404 131370993 105878663 112011470 222961994 670596994 1022059593 197213518 667654051 824780207 860435664 514988161 1056188900 59750352 510066016 324494006 1058919808 440744370 182517717 174449137 61181493 399742700 449441911 111356622 974348500 679484252 894320180 358085402 780454701 566450294 428919313 658457122 277202388 340434566 299738922 201624134 297230697 1013701569 212525223 800048308 893250852 1014681687 428367721 333017158 430368951 696949649 846176109 836926201 297153803 1034201477 1008323902 946386769 506737962 673967723 1043222362 785245342 488948611 923118222 319725476 645182785 174983924 724953724 488923849 443272312 390898235 88609159 447400867 569986714 785301202 1019389503 1010824289 592458260 921529196 601254556 14706273 50290567 133842842 47389469 808737152 285486934 844351053 1035590755 925543665 947754809 213998268 749179075 492738006 679822094 195980658 374143794 946401829 738673950 13706178 1050638543 1049928607 719387540 725310995 317592648 992613058 387931269 500269048 649997771 715764545 663717926 791045711 997063869 796602656 542212066 293661281 383801371 738244521 176348622 713846956 811594797 294422860 465945213 682538889 849775469 998579736 622513903 691544509 141795029 369517176 942226545 1013518162 440072361 748936463 1055370683 385078265 591785692 151330743 389587267 1068315801 59090852 237019571 1036589798 491698358 794121090 597702107 756062053 723916893 769225867 842984183 1153039 250397223 47006080 775227289 306530186 211933778 39683621 429144954 178848419 560584007 1004496381 46198073 1049924494 154007456 53622544 999376112 415363829 515702946 356924617 949413817 726538322 931406169 848745482 729167654 75222213 272903958 18177104 124236336 271821162 60021178 101618625 934585166 1005375515 974780025 13593223 219648298 1030266918 1022710010 249465199 29042059 785141501 263566803 203301133 714623190 9080851 555789558 634511423 515372665 764993357 768603451 790928081 968126420 902772718 964162193 205037730 804631038 887444129 187929872 739083699 218988488 731352086 393899197 493189028 206476907 270062103 57266384 549734731 632938155 373676563 1010898704 1039161352 679122583 181288892 39511860 546701652 820292391 189850287 36039448 369910492 369464826 777169539 110427784 405767354 574734093 75336385 661430991 157160458 459887129 78129040 179562729 273522319 42609903 77975618 724623063 31453267 850224022 355556917 565490032 979909219 650351733 720701709 853428134 265499896 559388394 56549978 437590906 96980806 917350149 321580096 790672199 303085837 14631551 791651698 184529943 489385249 401036056 780752737 386579086 1048031727 944749636 254879140 486813421 349692217 954498052 598444493 728357880 439435173 716754638 631919133 788748758 82139932 360904887 1270959 452110614 298507367 124238309 566723911 827203340 331851813 213307536 862590614 315236907 1010288527 473556158 479470025 1003065840 299575972 540840806 414644423 465899345 875817861 788101981 825342451 610180414 100485630 1043330597 472008771 38562940 93010925 335640948 158782715 957076060 349045054 148332381 23492266 1007577720 970998464 486150266 949482989 419291629 212801561 122618626 548086302 445539743 83671511 310331778 633388918 473727376 800762825 265655290 1006949101 168853070 327004697 652743877 447062609 968543925 16393477 373404130 463787398 315926973 492002167 188462090 458728297 584814170 115221107 407272507 323242966 626883339 934475141 610241790 608119936 478779468 1056176367 624905986 706929708 676876542 90473239 67512841 849067141 713434122 894882409 377126542 983439869 36278543 826692121 646116679 106037531 858964445 736677142 777758857 796210165 767467576 322032049 518096627 340989940 1051142 511777035 45525031 320219124 96563336 461474155 963045513 774743743 952808317 410281530 180963444 489823533 685592718 550046800 778851078 655597516 91655060 522150071 572331773 46022424 542445951 68357273 49943289 459403835 1066701205 675526556 514384860 737893810 605091001 958542389 218401054 365678051 773080235 150783251 1007578145 782008973 921254231 838237018 797427161 720557566 328404858 792368928 408879381 93451178 117224892 910024198 310194614 717296652 1020961410 997926232 64703702 819158572 532083283 486371669 354540495 477799593 660399944 1071181302 525916676 100731149 687222076 616745189 793356367 548380893 912528323 574857541 630171918 1048058873 1039746951 13981102 175500515 772554926 986636103 703131250 236566974 917738883 247175242 756040916 1071574889 114340199 936509820 244607312 118099004 95966149 543569203 904692635 664328534 494670408 927392768 1039275865 527291889 141228175 921927438 625604590 699220067 57517220 887469098 888607762 21308074 54106281 645628005 891273533 302973023 326123319 526250133 305555161 257984909 446794480 153946303 899070919 557893283 556216493 908125464 199805340 328325393 72055083 395953785 54955363 65245123 195563760 348067145 360909507 230044182 84666792 1009125934 362933108 1000532929 491755752 1032191458 774448472 216916864 867683480 109755248 606963098 840993841 312378335 784016703 143056369 98322384 307823509 97372558 561644659 610824800 943310967 83681425 575607445 637881847 1039281295 318879527 157852049 329242617 136763304 324171626 624468821 836723276 905073057 159178110 135416850 678312485 858944386 219528294 992521219 508950280 962039051 851309726 657714566 988960525 649265670 899924853 470623947 981382482 333474580 617315031 994067634 386432360 328672885 710900562 1036352407 502954569 155276879 1071648709 920010597 598928446 229780165 405678557 1004948411 528375692 948323342 755923559 78926139 454800996 391631217 316267833 860192276 371557343 309618773 81703440 941077409 643237052 980573422 389526794 769542333 842047558 123599279 775515100 35469186 925532515 286541455 651171089 323240958 462991930 1072185839 540756891 549069895 413083108 951605191 885293265 990122553 1071413414 71587811 120432707 524829575 409817728 635983365 91010385 93638326 169443886 928977614 722485683 199024472 757907205 438479765 575367661 607516805 20628506 611129088 427342161 105181270 738094755 800307341 736444256 397342920 23463474 512623057 718461711 666698079 555267499 762896860 818745603 765361176 482966576 846609801 157639555 446947884 294251119 951325014 52037595 147212260 116257194 73149543 616915507 538902430 353264084 648008528 916700973 245279996 1012392435 61984318 1032815732 817714547 612014257 1026980463 107772065 213523393 216304467 436997643 330719463 864314067 751261082 246797627 756260802 126295957 555712213 244216600 170805672 68033225 253197806 33320854 338164036 120543738 587024584 348216730 583015784 842471030 528078372 784591164 873260412 534018572 270727549 8635593 158467999 853942072 723018201 455318687 277118597 769356198 195641758 603726102 383896877 222070747 342584135 127159466 126060535 355877134 140290844 498776536 723431130 265559645 1000442156 244467104 650729318 659187518 713727135 67588016 115143197 773765785 662626714 659615284 50844349 136440712 377690055 467189492 894640260 132770329 331239500 865454175 713004763 212327223 67305749 924273331 157311913 215504835 906007166 864040675 176306178 238073336 323847124 816178630 955897179 1010539306 251620753 48951427 386447319 504370155 65263280 270942684 367206584 319646461 940662739 225538831 1071193622 115963406 1038198475 362255524 540719455 1061922835 327289398 690211232 852758471 725972076 606744085 601864120 334087214 263873750 556169052 261058957 671137949 972803486 22114250 347530391 2222354 376785365 998181683 732098475 648970889 350465773 755199256 623921844 476336736 557882066 820248717 944410099 665575865 608565035 663946270 661865371 432386645 656452203 21555691 278663180 222080452 1005846543 651213243 77826624 521221195 552281330 577004448 447983455 1013123693 568907788 171168306 187660506 271633824 143034138 160031599 677430936 973816952 491663693 909121592 1008322245 216487659 822032278 324808128 549493414 148790473 215223688 107962648 1046433007 58429989 905694167 787675606 772196556 432862286 318730003 754220075 49111741 155817489 489915712 535594251 263577877 220086633 406482343 635478459 312990758 165891383 452891700 653426491 510708480 550502280 411226437 355857742 867065271 335223243 797808138 395232868 633085654 399994432 856013256 612610836 841089318 13639346 211917808 2509848 1031297652 167691573 554129087 593615944 472007635 967356545 692647247 303407698 75423271 259543958 198534055 495402748 32580820 1024824517 601231608 322054147 483056174 1068047124 414253533 670647370 273931187 910070804 141358409 532630176 262622377 582631467 255861281 314612192 250112000 614705667 277254681 974407385 1030526898 126817427 391116476 709130875 358768872 889057300 647066787 569069494 37074232 976861061 508951083 468409195 55539216 319222627 851686500 213871240 200741018 460230406 592312458 664757613 298531977 197389450 235977418 636005782 904065572 42999307 788124024 361536334 255327857 337423882 500334641 368888879 906088762 482119102 328579347 733767821 301880924 1068146962 375152815 112651215 1047981205 472137943 728643434 1044588971 205019173 1016702740 358799771 706819192 800658720 97575671 356719952 226469918 64104322 972640662 569802353 976016773 1056571650 85434665 74443739 225895466 39013037 222280952 97957912 91074136 234080163 495824326 135258676 153493962 985331207 468583371 1008232691 785505892 71826027 905225587 562051044 946065763 1068594866 334296315 523594004 644624999 519546293 874675517 942990196 972324544 156931094 23110422 117011291 1017607154 659034639 565590670 640969521 658060808 1061076985 1062772243 30663589 441141933 114105830 266131894 855787585 865346046 80138511 822979048 826953403 885877739 643210710 891205876 246942941 762021702 871528741 309075276 531434115 133729623 317993106 413377230 10271843 333087098 753857785 741599375 77940818 746454706 818508723 407596102 1048832153 126085495 335319301 1032174023 827560811 258321820 544130172 725281880 953959577 450217814 68682081 626133555 1068412382 381967731 471546222 581410896 231167035 356879488 1032020249 470173014 956347888 940588337 575187800 61497147 712511452 589030287 706358187 436271360 15282351 673147333 561019844 201332749 40455846 1026205018 796222653 133282637 165345450 89842214 652754918 23996020 985839657 889683419 618450798 288385089 2810722 748721839 72456120 634773038 663980213 1000438549 19508599 221363715 948729364 928961830 908794143 807045742 1004677901 606071447 936669907 84607584 164025441 538128529 99527777 873030123 13676906 100651456 921089484 978816534 1051285058 777439056 675510505 619253832 1057013943 235734490 248266437 1020151826 555434427 476818711 518177977 305624790 236716830 948721228 923271528 121388567 362103687 972238573 275289070 744485680 771503711 463089919 223218440 481943439 229431269 589131225 86489178 27046503 240177324 268041380 235238989 48540756 880983876 1046223872 1005401401 64334936 985920691 593036620 321877604 198178019 939715460 56404674 867146305 509748215 18686643 699830934 496065399 1058788475 692457915 161216967 396197711 144328257 935275184 965142122 694179912 406276607 203528989 489440719 763720712 580910712 225567053 669314434 424172350 899067805 844914492 544928831 800362993 52071642 624457267 346383561 323178264 292633474 447061893 233470359 324797541 1048418655 987954107 204168865 487198448 661488734 368410875 901750346 807609007 302439505 143357627 878783293 632547932 385379145 928368667 139260583 962990620 158407295 229790797 329483816 643106329 368528790 462880445 258217989 316823980 1041219736 406593074 515479006 833820305 926418380 549800714 336201516 531224550 450159524 664842204 40916752 528535420 496990384 244457464 299919438 513414708 123812096 491802483 41136793 752565325 160653941 150135194 322187643 459002401 1022079548 466225776 746913451 103156424 671920358 520546422 1070440949 605372247 458848375 724310255 1061733009 640136809 375090087 482352029 953327201 582954039 1001914305 329854567 134902877 1024202441 247027231 266827395 653840130 683583880 1025578933 277859796 223862016 246399975 887488587 860735710 546929682 927614419 1065919415 425663506 694272672 153468665 171217662 766709750 388144527 637409950 791357308 730164976 725979002 640229335 986276267 548176111 395569455 71768315 334342520 687615431 97288964 497300343 572028495 1067952934 424647848 270231455 504528823 71166831 50543667 773492648 911834606 203746774 608116737 61502946 942789206 555966011 173171894 841527626 812665888 374445042 546456523 3112532 428570230 810570508 223494032 21109742 421596509 585691753 877465091 283870567 897487544 650841876 919213365 997577053 405653926 584483741 356607902 1069647922 247189996 24605675 101510672 599542768 396663557 817138344 223014781 859032733 205339207 207878566 1046225378 154369590 752299422 453072472 222977699 295228641 484619960 169135705 789457469 87882163 189109931 252441414 649311214 85497962 742580019 310278202 843677623 467152444 850251170 381178476 670569775 1035830501 736519507 599266533 347283758 696233488 603228133 370386561 542211480 37497655 997433379 1047431474 570332773 36483061 530763812 347037121 764271789 321939257 677385226 651387711 574727432 464301281 26497179 1070280474 667313660 525761177 281798676 804588761 312097663 966238418 859766504 606204898 701777785 299174106 731970093 393791095 142390110 764139247 275491101 93242581 934840975 1056363806 894196556 619659628 356851965 535638148 153542152 332977290 346594152 123390518 775877649 741049887 310842453 280038128 947603836 747594298 289429123 1029987605 466659586 388558734 23564411 81302318 852102979 1031653551 704939429 465494945 549911945 632637111 983772392 18034174 572863742 260582015 872690020 741225088 319860938 312359358 803771392 164227292 432991590 166913032 357553532 806259065 433649332 309932638 352391898 992066847 304029865 868392394 23757623 586440116 740607085 509451620 574860511 373504931 1327008 163944979 43419724 204204504 1005748713 585332697 223784977 655857400 140260150 942979766 395790149 426488225 65642103 545708744 83188208 427764173 158534195 943409250 521508742 400980259 957974668 1014979457 356356012 322880679 720812639 227044024 524779816 775544272 885009617 634295397 395974354 466949526 687604150 770075489 1012617480 826208160 733525008 579825812 134715829 193101118 337015734 484246586 1029985563 205607207 1006779561 666010779 655168423 19714249 463956715 69652112 581492068 430154662 940161098 494939990 581838052 1034689893 412877808 816259345 1023945201 271784895 854712798 995249991 706549418 237231370 592115014 174858182 417591249 888569651 164522881 27953595 902437574 686225215 198288648 342900708 377132382 963070997 399656882 814875622 497489751 171863639 860560887 1032201332 141088340 87809085 813813230 210771571 1073438466 492144798 342704376 322517151 572838373 528048601 710587597 1059629872 51067490 502955566 1030802630 936717932 14564593 1058382754 790716277 163007206 1036206872 65496686 529891010 827270740 96851444 379842803 77499199 888736665 830296701 345821118 668911425 184996135 294068344 930268603 1005063500 380246348 7019152 726937354 701922396 251174500 219670117 842246547 328370179 513554867 693346244 270878444 292874778 723582007 820300958 428033601 575904941 630671863 550267640 970303651 891408573 223003249 210610602 376649307 738398159 161884824 45925618 890862496 732672578 47145107 774355120 936482523 930686038 708388322 938022342 354540508 701900186 398832540 630858530 989500790 703707814 611139231 779556253 487722155 851250301 584198300 274405310 889069128 638010912 1020894091 352961211 267258068 764859172 888556164 650819458 233763147 766944619 1020282058 109479423 371578612 969857642 790670522 78407024 260136841 139921399 239201004 87092430 402837099 207821645 1056639525 509008887 177697156 752145506 697390676 344588885 1037021463 651705144 385386929 625655106 256032065 82617579 958473459 881031683 600019087 291418297 628816640 173555037 248129884 519897225 63110587 240082564 961552019 51423577 255496224 985876523 648010899 1026839369 696751000 669160977 77085959 1017367301 427777297 996947934 389482969 725067275 848314082 90177708 221668120 580491930 292377348 657391097 496186344 917517225 382875116 921353755 559044514 458352111 677545245 933142526 611170838 587697647 894951261 882847426 653093709 762710092 522879981 776344212 173474848 1064349283 564314095 751817085 475040588 718701313 1038787672 827880402 353799731 137446344 826037166 303297882 1034799840 953973103 247854349 645570275 854532647 970720785 241508008 595698433 974925901 1073650812 137401915 312790643 496520248 31498157 633488382 690407824 288469522 93325338 555360826 307226233 350307676 658932162 163471115 89922106 257080365 234998958 318568906 263405935 309008395 604479172 157058043 577052224 98408774 7930379 580070331 805352894 126065087 107109244 904116717 735540048 586648255 418935921 115602744 433106912 103232602 887781886 1070603537 615206691 1007731854 741591789 395495874 157399162 217471529 324650001 125503740 1003258317 146237427 554729782 419097437 81390422 366844340 743187884 213300204 185938022 993675473 1023961994 822150953 551913946 836677561 224138655 198527916 390323104 325048848 1001179328 965005891 611963806 753349497 977412349 1031195109 928573366 2055635 887185672 230006157 685047784 82790812 270626403 775821811 455186165 515586033 736911925 505984370 394675690 65297119 259697516 815254856 733703957 322654021 305058106 283990713 126519593 886876782 612046607 139829008 708212088 764898001 178818494 324631913 226907276 755658933 719588409 151405677 329108139 499549212 147332210 474925964 879679660 236897127 21404797 800268229 396946253 178598984 1026873814 275276140 906464343 633806733 452044371 459180161 551578196 380089860 815552959 992444277 15999096 206318140 180707783 20664046 565723415 1004358983 443940349 444681038 358606206 166795687 827561431 389354299 51220925 195479140 59267586 976599512 621487012 419669335 306564784 706317277 160034468 188808010 94954935 341312045 614959931 185088118 5112809 315186551 38841957 859002793 756289708 665890282 447236773 860994584 756349498 1069379708 375651545 275918822 461347840 64578191 987887609 398966731 1051960260 250946891 663367113 779872784 823566561 533249675 741116751 443320682 173285584 617575874 127457942 991772746 819082411 1062001250 34514304 441369044 291831319 1016412430 501230694 535052804 745293890 1059581500 481575866 507444122 125149418 671450100 530946649 897300421 488989299 742320633 141542184 269316537 435155440 197463219 476096826 423980635 739026286 250859046 955915108 941522957 414653032 946872402 741819567 713952512 790434943 140330958 403288798 267156082 679619353 895730173 739193815 1017486513 952825490 701566221 15836616 56019591 665540314 82537559 744774168 191414052 496518700 195273873 120280492 878706005 3760936 824538834 60171355 726383025 113347770 719053624 657974370 630752347 693625216 257206212 591179364 164406132 438576301 724294018 406783406 601178479 446657775 376272912 617695450 219101377 319302402 58692044 37831888 336044694 170809546 155499520 959247690 106920508 118049813 214158070 642960384 555003145 402422575 6674815 464830505 335359933 739811874 801447904 339642720 283477327 716013466 656681434 90493242 157482577 962140086 170736739 695860332 902464559 1032885873 361768489 919446669 250404306 753730975 808603224 382753379 320413269 607155520 236761034 1050964850 477944810 398668719 688413750 407764992 611858454 795202905 995877048 1064229074 669556724 76849352 623365791 618357943 495731281 670119096 727909047 88990834 354289069 167802647 134545916 913084613 695892909 1006481454 121908574 410183047 729571695 165890377 16535447 617564730 69086329 146285092 881072256 17282934 929203 283743889 227838377 1064754303 1063469607 210856907 305686048 746766299 223205483 597935182 32637090 314905353 973958159 331807139 27516111 1057052637 116435897 919451510 934128686 183397119 989099123 682442625 164319865 166041488 970517249 72640841 357118267 289989458 465161797 87459539 327670811 26661043 1030621304 715393700 484496567 448079337 1017903034 147019511 585536661 489927308 146782316 642268711 400259038 452744713 461430506 1056383610 734914743 1051042928 57252395 517107600 226177978 330565000 474880698 331369885 747404839 602743206 282666489 947690174 978046320 1001226401 593084184 731646878 458121181 759250154 613398573 548623698 702354280 765025427 740151672 618340548 433229533 913436263 581869061 973872761 686818872 820294226 695037584 513296308 111623285 45494147 150479408 553896757 372927471 535047439 271716933 466302426 614614363 17650215 1052591072 567503521 519088135 973900473 223346969 713361181 381158526 189432210 199033145 455598802 666192740 675216189 787185681 910263263 68810753 545004276 485854044 309744433 834730388 850648737 461927716 690301497 550935477 607192551 938235248 780971649 822734546 269075701 167226854 235327897 183944236 685549184 543744225 183310020 729658990 303179237 413732205 114840884 567745247 489629150 823501268 454972560 643376945 546162622 1067989679 368319019 338445373 210448026 404980451 205860358 378788651 804534221 596535495 129366804 102520844 665123535 801106091 453968867 95096035 848362508 218751594 264073190 955047897 853154658 147427857 466062217 7039194 214500835 936399789 854950637 338970136 509668784 615536459 435754384 1053888005 382213764 875519983 225553906 523958720 345626744 803089958 524712616 910027368 876952433 717826026 446217934 578130565 1019557230 653343333 75170284 506410430 437695023 971520991 751798417 690043974 855879678 344112947 824549156 335329821 325702772 27103255 823965655 316157197 319390025 627789011 317478370 1031998171 348453730 411301410 237324047 208734735 517676379 138363126 455537299 308271226 1027193065 10210907 228606368 6377477 1038386364 607780216 745741245 373961643 285864368 616781766 526825163 1061996450 156321145 789537852 550704704 23889837 938646056 442837531 465414889 547960274 125115078 209520413 600583341 827641203 550722660 806869287 322294107 447482834 725025056 1055980820 286430943 404483285 540392783 903772795 118859620 953444988 1022364605 923447783 369150570 807508400 1056975762 89735258 950043400 669873974 808376980 849993692 760773880 374537536 601880408 914276275 658856534 670074378 258448642 790375743 459152840 874282353 590382325 1060322800 311730795 664682345 71144677 246552901 882107895 1020314845 144626800 32249070 918059450 24756568 151363042 12524069 219901904 682480636 180713460 633953715 921982557 820530653 822033901 313100335 156469585 601582665 661351999 77695510 791763645 496501369 1073093965 249056021 839878716 111184080 658335818 919409789 1067313528 1043054496 475693198 475561482 597821821 630229779 879066763 222236326 280838017 1058192447 282857723 795885357 711314812 754000397 187142216 52669541 660392417 554802446 485924921 21899460 325007336 468566696 134545260 489920658 973564874 654267203 414085288 980053937 1011142777 424797205 918471753 613941164 590610834 386834893 919403266 1045379316 490231236 671695622 595664846 901714899 232548761 286991321 832750541 742703398 651780182 852862150 737254622 409241721 842806813 1030445979 1056881315 239113306 46311698 235862565 906020033 558323807 442381975 367661542 759976073 832568606 937177484 73615021 1073400092 952075367 162016509 273781416 999760557 309869484 1032973508 30653805 332840859 62895292 800927644 209669143 527934648 777869339 421671394 129933193 699504746 947636072 391712849 306975035 903176071 262938792 562726592 756627756 481653261 738322733 907675178 321293686 839292327 585850063 817924185 83069297 677907756 1160913 30689136 389025541 737296285 417954654 547148120 328151802 74144837 1014970670 1069912742 1015796680 1062575991 800815420 275353855 1038891216 695589183 550470545 542142293 584594808 1004839338 702079878 645209788 627734669 360856129 61595265 777816131 289118129 207605879 766516689 169800181 748201508 589341821 666096514 590225945 391294195 41017864 987403150 573029972 53367636 921429478 8509633 1064896785 987250319 836639360 537909769 1008277406 641677374 934567764 377000366 1010620959 872667679 20152252 619187544 427409605 723565812 32732024 7261789 718672798 957185748 456741025 492925746 698217074 947103100 931751128 575950420 115817757 381169556 646160480 901839392 866822114 168923468 505493110 686407550 655071384 710667862 351662588 1022119671 599395275 1073653694 321394352 314509169 487232689 112494808 383500109 1026367611 235834080 261850203 750829212 78362310 225513888 226428248 868362168 787942149 626742634 772310936 446601900 768996989 295817273 309129087 509231140 819439717 393123583 204667357 18229718 94139471 983214503 665982291 188550487 522897235 333765846 999961996 1001236492 352737346 674771338 216028174 987884668 27667101 747921245 928131227 111523179 248078277 829091010 304628878 172736383 480468917 960694929 471849177 1050687887 787424394 452602052 761652118 507337117 827233964 30139828 434549593 250640075 516872412 638948214 148956168 7226397 330630646 74825658 895967220 217438205 604701446 11229702 387610490 12931119 952104926 762354819 66840335 304948674 986520838 469359829 430467618 664763064 583202249 1061693082 87766605 296170205 916718759 343612410 308972521 981012612 276726448 604056055 27244948 672325274 139352235 559137288 141533381 566651240 391748755 66727872 624732432 811700121 726283544 945314790 709521106 812743327 663056065 49178480 780968904 388676297 877812350 24596720 752810519 234459766 968534686 877650329 235284338 224926895 118800678 870484395 29299970 704694526 393402459 683333082 927540819 68389501 463682876 158511667 1048256959 790196685 974614153 755175184 826564685 234439238 377595960 543355513 759547329 774767338 865595286 612998931 1062559477 129106950 110818804 965744139 1004652856 291569986 183929816 153867595 174342002 388483175 975273131 187376354 57258049 619646502 252235869 335849996 909291131 866220083 1051537795 944992941 146453704 651808781 123445140 176420206 626028567 756123673 580357653 189954682 997272785 158340864 641239468 233054664 831432428 190852124 1011453944 101113717 776462334 908609411 462520578 1018683410 209848352 611601573 820878030 1013663869 1952084 260639509 313063428 184786657 614133088 706462921 664632309 314682690 1010930231 630974228 362397069 546019980 515828888 84268641 620620420 448825157 535194354 953784135 1029246172 895163439 69707488 276665114 121435525 914084784 118454651 911290280 672781181 870448445 80606188 14170360 259427374 77294726 505851261 680819217 566283174 392255027 244320787 36717145 576258048 812757075 986917559 504457575 978923123 246686898 42432424 664629860 401765218 19637823 474075045 745682423 181571338 618368881 898314988 1043348955 655797407 774305944 2874435 613983709 584001173 58793157 280471326 237558358 967721443 538179191 758143543 756812568 524400555 221542692 193330236 613384823 675734969 935925401 585369080 848467497 631446052 552236929 661753791 254921920 36816116 170888210 118324257 814796631 1005543675 740636637 320851013 794459315 659872165 963518390 286298609 49885900 1013923904 389137906 484839423 570670322 154198449 296190461 889773372 495646492 336721457 311067415 805431168 130926559 578277162 333465567 863511955 850020701 775852117 698333812 792500789 517976108 943445856 639206370 550744442 167994819 674332297 790910290 598559437 851982627 750602942 304448973 827252137 781878771 590631014 952084195 996610034 236450074 275328100 260223296 1035885139 1028485982 448869786 909564892 646531232 332561207 550206413 871869606 298201083 1000888147 240201293 626747184 724298568 358067266 916551377 144465503 1010794579 45707772 283034729 153437322 476090313 336207820 16916927 564205165 68418648 229907339 165072513 14329196 195116759 721029294 694506048 838649305 767539047 704601029 754606553 385343377 59451899 662175008 267122852 810713194 1018627281 415685953 271661037 948115950 929180104 586846387 973121971 862627903 867757746 103229023 51353263 94537612 711255065 199479749 893312328 915623592 738619163 353823566 901916749 750118099 38005603 520045027 7637909 419040157 765942595 239264846 410829183 217083228 725626437 11552242 519534499 773988499 835531589 44321266 1021283299 284023662 501377243 191397417 1050272497 716037702 212872117 672888786 284160952 87424811 29546397 1015560102 517879334 838520485 1044223513 880382614 1033490693 176875363 483505782 47960452 374189100 776772039 725805943 752948244 508622868 856663242 649117886 47307614 207683498 509292827 535504330 725876110 518612103 390021297 462298511 842290954 181120313 1013742667 898824179 753547173 311742475 459725942 947967064 733627982 582865838 781039803 637901109 891811334 611937387 518833800 550452367 429447295 140948318 247692718 306165912 877725125 906060994 594518642 404087265 694058588 514957503 137935652 79049682 432578455 1046427351 714768747 407933253 10175078 646126224 1034199621 284378929 108444127 602532645 461481852 18484052 127094990 717263408 70562062 534717654 831459907 680017635 654773616 168448555 194790533 599816654 648972111 616170096 407902391 1065070434 442950027 329984371 906762357 415079587 611831214 1037203249 512780171 489690353 845422776 62056370 687332631 43309475 859580137 402948983 997487892 70591697 836424758 237649164 983340459 282762917 231317343 813094346 635007325 827765096 811340251 1029606214 806379821 562080853 279186349 568595703 321926852 428157558 812163495 35338618 3495999 815556320 859969404 1022982863 902327321 738194631 158841064 466373895 66072928 759456089 29089242 326877747 93406115 910297942 526635816 50091065 1014431875 578721917 302015234 737264333 875928344 1042685752 328201816 67385877 926330109 839935963 39782744 983679358 1050799623 650676481 653678500 935838540 659029487 558998913 877834971 906871457 996377197 380614068 1028307854 924985224 90579594 1045528178 566412212 1034740876 237054513 705206375 215164022 841644405 391407521 608381306 908756092 1065932157 45150584 821725465 736437808 717461173 793742038 472531344 1068878663 17134826 722257760 643468240 518400856 293372469 962899081 832307170 442027106 306541742 559923781 988507981 599040194 493211395 218451591 545822389 538954918 75099513 332784506 742566891 454950758 96191894 110155402 410922398 562737342 590543032 1056588270 676318051 392841274 402786055 669489086 246970282 293615118 577791240 292118705 1032182413 450134657 514250965 474989314 23123343 5888424 820064641 921839845 632712782 166036877 844171808 1066829139 542853121 144507851 599896291 606273157 1069021654 1864570 851248118 391627958 656921696 965817305 504012054 413860957 275645954 528257561 913638664 95696003 18255199 965172123 617665323 1029684592 379814685 782560896 438714467 891597375 985315529 81693254 1070573263 692418719 431854076 681535546 99545712 728341875 531104190 492695753 236191690 484206244 649116270 729110850 387882147 1006180230 39012827 771920071 455494565 790296299 335583615 443409608 976683699 118355733 942625754 185036164 222803258 888288257 422752524 711459352 354171541 399075993 928197747 294699682 699338404 998555582 1036739672 315379331 943372538 473720247 566558675 349910368 568368243 138313314 726382943 59106350 32252544 649551525 726945538 757924355 108491668 94132026 785012976 635914318 1041753045 697840277 81339281 954277277 55186653 232665011 604169769 282514849 143580772 25617511 543473774 628556000 504265882 276477566 788149483 28368522 459509231 87102806 667171730 666596713 899666784 874752331 554572332 1004074587 487463413 803958808 577986480 525568623 667162963 815203140 489098187 764796397 577537122 191445554 744217952 560049737 417599505 667194964 402529932 937683537 797814330 278097140 336087945 259373043 658084680 930556226 629021652 990494840 976600412 555470415 893869135 927504368 702399956 1002421814 671821148 627076935 286500909 915016638 104584713 6487708 406157014 336319380 533984894 493421319 805778568 337429850 938452818 498182722 270011572 512406646 469824757 289630998 614789203 290332571 449114813 59880873 485980046 28593448 727083944 399014679 937124996 73284891 748498431 825931779 447190214 541532682 138368317 478439501 418235279 122586626 445197470 734049612 1042493955 842632871 251718337 912831476 705424792 596232877 372171607 767768657 801595944 300545939 1041307158 80615117 619924205 96883058 605870012 549702239 772258663 86548493 986778093 382924859 275374804 430338436 536815681 535726618 391682331 76029840 921847645 466321798 414832070 577857548 15516689 118994876 490582856 312562814 808908454 335526178 1037181620 970061961 722644972 624524428 920847111 618036980 73786763 500654965 695362677 375500897 646373778 868652163 343332642 953575743 720734147 861792819 215425307 897975465 643812817 780417069 223198431 453818895 877036042 1004995123 451478845 363693929 757858307 986373018 222058575 746447590 669064648 1002694064 379225906 697873456 5151663 303911002 1025111981 604163557 101271067 693028027 662407920 627392019 553559436 997591313 252490888 487239446 106120615 466044774 846464445 380387308 441692834 498893465 739327664 448695990 179496756 914018798 918303878 198619553 619376690 754893979 5609323 866167379 267741479 1054190842 1059165795 779381726 533654684 763647196 359482980 113533776 803803831 863786693 20524755 614517360 283355774 985609959 390109936 234989208 691348404 228528843 280066938 35835180 123695471 929053025 666892602 477875286 192134160 719119180 527897510 909796810 6025544 686725716 1065931267 466511243 620456269 503391092 665632601 1014934506 490869317 729209976 634870391 255405849 174190592 910242220 496470123 337118903 797374101 189112443 93948520 948395297 410271156 112572529 708803490 719304429 394463862 1024744622 66655456 366467553 410466448 427459994 131353143 605651124 202208723 385058047 330372482 689411541 388869747 474618387 548430804 4493837 79816612 810733635 782133940 341856563 221765229 267650557 591397122 907914265 244408093 190757842 102859113 654295340 524616224 578571126 97034469 337313249 1068192225 295935727 855403595 394939837 999095015 653519249 164031188 320291108 338049577 946884089 50460516 747923552 1054022821 295461524 157560571 180654464 937228234 151200133 308492156 257030507 1026458965 426183929 644964820 961487255 261836294 248394630 225291734 411392673 758832844 540168454 551055741 765242878 375048352 783758776 669197417 961141546 589555431 1025427970 7072412 886959418 445362739 803807639 1070529263 632422728 2388013 113558411 821696860 599963464 878769970 125714843 570201256 629154127 1067298727 928896152 674292871 317999543 497048281 368933399 501095088 730797659 1035923328 938901704 872368385 979855149 1041704496 253372905 474838088 36294868 731966479 812054605 723282864 3420293 888787564 511259660 369818831 966767763 663028263 170074137 915229844 917367477 580063457 680878764 341333894 917752275 724687161 861532533 1018473438 102746325 42520156 160407840 839622572 23001820 717796905 911622884 719141299 756708025 802431052 985809543 335074606 391472434 688334585 919023005 14168525 38233377 957043773 964968107 742877683 930643780 265665817 356728026 10541265 909646854 1007766656 712043246 290192949 449295250 50691760 419856131 207657002 340594378 345843420 134533327 823902590 942074298 822882533 722851754 810293094 83262081 107978334 766152933 331025610 655975054 1007716361 715985617 1004902699 97233580 432834904 575558888 365677905 758070509 1038969821 268864146 1032207677 1011613818 885668478 318453724 397506409 571043379 785981467 368168976 973054520 120754600 684990507 544413466 835598718 47858252 664918324 829972548 732704357 532953442 674981906 406161790 616932083 177512790 893834500 459371987 668639173 213146050 1040555470 6950811 269225602 269651062 399732947 799239923 138245801 255074792 976734627 411663828 232139489 249990367 806934953 367686955 876683528 152395246 266175546 689122610 203886322 767051600 524381989 484565454 833094610 225827355 666669766 833354494 235794716 580846360 17450919 1026896717 451992165 167987925 678167896 170665720 48428866 837150150 930857459 334272677 244952301 897976106 667871232 550621023 327435345 153908461 79700900 769394667 984220649 1034398990 159929737 161982884 502055711 387142286 98991192 631703242 19482939 47491097 54220304 895243493 929485727 10980865 12770487 1036600289 827623794 58494009 746972676 853744466 910698842 642831135 897363087 463535619 17290439 446994307 16633052 1070362944 399877731 781055891 474770692 173067532 387443391 919163404 69026025 913898894 633432318 71743609 979568749 289270561 456569212 461234287 792735119 369051598 406339730 516214275 568359255 778709975 621705843 484759197 112908918 385665783 289056927 944785732 714572656 459147491 978503419 415196722 896838131 69635074 706345194 491634708 664033805 95472759 691431409 826539478 837286346 307505732 776988576 668048153 320874579 589421589 629543950 393367788 817446390 280030109 505318162 760795547 869002075 214092094 8917735 190475858 357735818 285783707 929882694 1003609615 498025111 796310535 469875808 319197469 393239458 180332175 826174122 928260371 779750840 1046345207 405187976 882712869 175860686 507287290 402786278 23582664 560233217 1058870774 748787704 730549489 693775317 457034236 760339479 992079569 765739839 508141769 205976417 202902351 479012910 487516063 283668069 252287850 706702903 263040835 1000655679 1048920764 445007698 193408831 220493751 488592981 1017688861 522924720 421173985 434636720 467866748 777513955 475328642 241865200 771505274 57419771 521755950 470849219 385783906 722314675 321359205 864562931 676399395 672742721 428925805 567000596 125448056 564685924 514037812 930891806 750364982 329529715 33836632 145513150 803442458 975171578 1064796885 863442052 674500217 414185173 294500929 610203486 720656204 619860088 198195250 451303332 647987173 1019226673 572209530 527542539 863272895 941971185 838617372 508083303 107001727 399169502 28505765 222705169 399071884 129227708 822119344 571452587 120691314 144439373 983456467 340140763 698111759 255545577 697544285 735853604 118979374 245999210 407238699 316865428 478248001 1029715999 636563596 531599249 209121573 577297253 680753508 471960971 562967330 703204763 48947300 323828576 1013197436 884708636 734620635 662096476 464995929 34285634 192923706 910322989 462144675 277568353 549581977 255838862 323656154 992064500 710452962 975977875 519409954 121134070 552591653 321044736 164617745 858250543 446847721 327391881 109155128 615796150 1050698421 882809976 332815014 798007321 1008826706 43133921 1009959489 892099527 958469475 944998140 274035409 241324028 129134987 267369266 88137327 690142101 315637417 717405103 635181694 17351154 114945703 1056951070 227943244 411443985 686508658 139462662 393070351 637634795 18670226 439547975 669939797 607413843 638164164 32482136 361412031 68877960 535426952 830021898 284754397 792967176 1048595102 703641208 299139443 698013465 1000641418 98500210 146952824 645969750 679697332 354252705 423991955 100425860 338023696 558946405 485810961 397983537 133140365 450153161 679194497 485279495 529095928 796560679 621496835 483578415 345219232 744429616 1046467350 453591258 433741924 816402510 72937105 871055274 739323166 224461578 60401484 75853651 754329235 880245658 4827650 474539071 12577221 411330948 198568692 1012409228 81683445 455530793 319500184 502413165 415426172 455179882 880471262 116651698 443135877 251180257 222138589 875332168 974238052 243606348 135592106 267979955 438195398 1061817589 319119615 423919900 60235584 26868545 962473784 733986925 158523033 30533061 235430024 794736225 922881992 786487668 906755334 1018270338 3917813 603980981 102565572 756526022 935103661 428843177 470996059 224567679 441034980 1018891409 297115187 220341126 625043810 192644947 764115746 865436366 421569014 610722712 508284078 70005090 360652708 371682612 408906245 328096271 672832976 226816579 445358450 819895615 733581074 136206214 772878553 561759128 61258534 30791825 718486283 221169344 519318143 503962092 509636535 1006624296 569490941 174586358 751901872 324574684 750230542 919733676 756555036 59264487 874367925 220621817 633090005 934257923 1037735486 1003726189 542035949 516579675 731748286 397511706 256191013 531523794 912362627 506788166 159908184 409435927 971089823 828713491 767025980 888299845 706463461 1044701930 619422010 434408081 946934258 561790678 1061085057 915612213 430377931 587153609 4679198 161706458 811418105 531429013 477556974 522078509 449104562 256140550 242760612 292652065 502426301 222961975 249688207 819568678 675611362 1056594694 106759326 1021041749 659997050 95199252 152798376 666051753 71141729 634126788 543875350 154638077 223819469 922293660 138985899 261442837 865092465 11704547 990802794 388987853 537906747 275026522 505355149 1058262171 840824373 1021269392 835090297 470764443 855241048 432842434 730181693 357615852 154072618 185468006 579703419 321804555 99700556 580537598 422925717 411075818 796777738 296723113 905328004 586324592 413680754 259710425 27057172 39910116 220757084 38230287 135360012 13813080 523822288 799901628 363311380 82182672 784391805 219217624 231425049 913050162 80936823 511666134 737748073 1045924436 556886452 788170842 9117917 459219899 429089011 665188389 727644202 86665900 964859387 968529981 404048893 487104581 1029013766 556065168 542201549 644311183 98993492 512779271 848082305 972321480 532378442 374192714 675700904 247637051 840633214 191190929 198886385 627230718 659994142 407551707 18163362 756676114 208286225 58605887 579833979 724397619 612516129 556687532 8435351 919484552 244280318 148087963 874071418 613240110 46569378 244142368 811961708 348311379 528510315 615704394 814189283 250951997 671569396 746301239 105579051 385689071 300439119 483855462 67859886 281984818 340636731 189276561 927989580 64892951 195769442 211703331 195996852 549436084 522825197 254687079 885646153 888685964 66457133 735044261 1064591598 217993069 130744899 214687452 378187306 458497008 625158127 577113858 146211384 402948779 486973757 293361064 139271442 55064416 151091206 984033393 349687445 809843461 557074927 724338643 1009435391 630200142 277807250 823843088 72208 73879448 696786252 502807507 1027297976 408776870 763699919 627173142 155811026 892847442 64515351 939603483 290287849 700955189 195176178 242732530 888887443 1037975902 502546516 228952393 507690633 35164405 288594381 936454073 684960874 11802405 429823067 11254068 367448419 435197615 726606097 993977878 559564694 56719312 662325091 281007476 698379309 1065701527 604474714 321234488 895054074 127283360 1071140264 534257228 275995539 853804406 499284860 709859758 106307679 454402766 451824039 788436427 149655620 572794090 84136161 661997017 638202736 153976207 971037513 308649947 35447933 924843950 485994322 478135605 101529049 864591999 98710825 937980724 751068790 100891799 997443169 842166702 1007561376 791639263 119848662 132484109 987817312 875625121 64494312 481714305 299217698 180037405 415390062 465255873 791715925 976358440 484993210 366651349 468780683 823674045 1035711149 934271884 1019806694 175612572 612208438 671168000 843812832 1009061168 131578198 24993393 945504419 410425375 817526564 711920156 268174889 70676326 603920416 611877929 786781336 573174304 416187898 671781660 971559796 331703463 956409327 515369350 241915572 258375701 325916317 1029051280 625024931 260753356 338829930 486546165 860864368 258353138 642776033 982153348 35759744 818719560 506580806 20704472 1041573652 889456606 564026045 691427620 532018695 123243888 215112483 838664861 213807212 894896527 515313562 63580834 84811000 161721098 473709943 856576968 861274543 350189184 41659810 1041733676 870073959 253672116 197884397 332063349 799122364 434600884 1067558546 770359649 461917548 1035142371 927427595 450701254 914236324 1013219276 959063198 789435989 946009926 459068182 558508303 458155233 379757578 714237099 239876154 354396945 574123315 696144130 737856390 288448758 917906720 841155692 438041225 269125729 513217127 271329055 657681777 297510529 1059382792 731069458 144384846 1011001676 101878568 356168821 726261580 1057939149 68201675 146799726 456312226 138748311 797391483 76075050 562810226 965946296 157719564 622804460 796155878 855600865 926254409 1021132982 61289753 897081966 420199786 558161712 997108666 313295640 1061292019 398196560 677052131 898120142 457869145 1038182234 643336607 1016396354 221890292 899847124 114129438 305290622 461539416 431809445 352478511 44953607 310441553 571544840 164731668 327794256 763578860 819912146 6980817 240925577 437359116 404395076 185116275 919054673 714010502 42682694 478608837 277562138 44329273 1037373942 363477619 741599758 706448625 435558637 286632580 336276081 106501099 95875792 356395380 1054310625 490000403 958531360 140111995 949305890 144480049 71178597 1002185274 972238413 319539051 140404549 492044576 233466451 877158421 614972335 720228084 10189752 1071988760 426247680 23454278 686482462 841961295 174487314 242425823 875039775 152903790 919667462 393512782 929359405 909968161 647409793 698237911 408819134 362943307 583722030 808003062 290005638 530926337 49032101 857788168 986377335 451888790 981590327 1057838870 643285326 470326802 524071869 438715741 505072103 945332650 963245661 835564288 595706788 862808433 385763714 910083938 300973563 1033069378 320824022 887067571 814130917 709130990 260715234 633042702 955238024 710544663 126200943 577519582 166010153 669039843 438803734 1060669448 22389209 1063770948 428144715 242053150 207872105 401087055 159964552 273848248 932193845 531903459 308949329 271799878 642369838 315818685 382039386 505834209 817452820 294232799 943561675 100785939 533985074 413698949 327421939 807449341 203558927 93011695 677874801 699606907 350133011 143298718 20420807 724231963 959267860 716646546 118870726 72155333 583303824 497469028 877670574 997366372 449857742 445003730 69705346 909450195 945373377 972691704 842722185 311547298 500230825 273071621 258723020 497128731 705296308 844461117 629570788 43420396 1057076 102842467 1058523248 874372952 15493499 826881459 153160501 923293079 549077994 855743413 528219005 551581144 906369935 184542513 797264797 437017991 1063338136 503938138 710853950 444590928 264723515 352303328 453601373 1070114118 643427284 885102067 605447769 784769890 203393673 922198475 812468762 776183204 410903708 277705596 557282821 409745883 883663224 883812156 379344437 975238357 995574727 20501976 151732671 765952912 898621929 515083424 327428155 498241893 218112956 790768693 590708270 104484435 909484007 222133512 143244164 575428100 138311963 391729570 848527024 592017447 975501141 987911011 709413390 137861349 1010066750 817178580 962417563 272387716 668952592 174684206 888603618 676147917 117557194 797035604 257603549 729584689 340292104 485233245 20753331 65748747 937806134 891048151 478839238 509157151 956341443 544769954 972382309 1040043094 812567063 327625002 395322645 959055165 447283515 973724483 918474354 10075172 465998009 902744065 402107853 408164352 758945479 938845433 1040456223 55662811 1053173179 247100184 430767516 906631875 559703520 786255909 277339166 857954781 55988798 519213869 929494940 2109671 940311550 777333995 138846800 753027967 253325915 572890908 324884333 277655289 904556069 528838853 561152290 640846929 960000236 27882138 860585188 243229160 20615930 1035086436 141460614 495531680 251665667 547469702 668834185 997048734 714764486 550015825 180146451 167387491 971228164 470803136 745813558 971071344 598729417 399533824 204755573 605691308 440605206 935654471 1045772636 18445570 129053003 183768982 515975782 691756116 439586255 670325770 120482407 1068008095 74699276 220773877 634932980 469505963 814351960 97679729 759420499 114648491 591791648 754166840 247338058 470055985 881558668 824938349 534542133 311967600 860257923 1063134776 123786347 452876912 622500485 572179772 1021009961 943960841 29293955 207326130 624449541 436759056 496223607 419920905 96249474 2670502 382436217 669522498 215091685 651666210 349479350 742953928 175504920 1072915985 392015799 461846445 848292932 626301490 984934141 549576849 694874312 119320214 974074203 28268731 307126133 335656464 298962214 966504115 897025092 550950167 324694936 144863289 49587090 762086390 256950766 112387024 433039401 936190399 1054878611 288150852 980945266 721149488 49613558 54950379 671454300 869544074 430992739 285174510 454952658 795429090 687431275 70073983 466471472 104735480 848608591 466722656 514095540 435715739 838791343 60270456 148094093 95955497 893815142 394293914 275139886 485737346 217625988 772495866 974906208 859788648 876397341 826014626 307033437 22116233 102464222 555110350 737804336 1006004723 785738179 1034124577 569548233 920672239 305030645 717154732 352519940 621271527 1022255186 910477282 650637411 756128755 703784414 352917025 464676189 782267970 110076480 975561960 1063901073 252173653 611058399 975795477 977943770 685494071 360796802 1014073664 258107291 238865083 245426211 217045986 858932775 402087344 847857467 412376674 404761548 528886254 526682142 688105237 538730922 145682517 32043529 20269425 131167424 396051599 994547667 698950070 218516039 1047951703 799266186 511313044 402211668 234923956 919123613 1005473124 488703130 522780097 851121319 648403844 481533864 504539231 282082906 274887860 289758490 45828550 650303965 511790697 323192704 160218769 751357896 797449468 399577638 432105690 390696632 251600031 904861641 636416575 604812527 83962678 703713711 826985250 421985403 540475036 80365629 138499114 118366722 294103723 860199231 866375706 376495415 509012934 754445257 262527735 709280618 79571637 609115624 224744139 26208505 237822826 896581934 246973109 463226300 243853155 573674748 807681457 30734849 571901887 6999307 774507435 129005467 134860583 996070150 595107136 630175832 355792645 331610776 413586299 998441814 492481385 695305720 813993670 636027047 333615855 244644911 757817961 748718559 701848883 103755568 105619605 168023154 989489272 417151366 75285302 123500478 771846479 913114035 657091503 525603359 735070342 161775217 408258942 33388913 337650940 834370167 326030611 505432814 504524567 958607503 439502621 1044129119 863029461 87873706 895427687 526315342 29673028 820268715 922061137 1038206210 920389901 734931696 814376127 498620882 664331166 753962782 580793346 432129993 486459576 543582681 508294961 531598533 512399284 186299997 681162784 928791103 451964973 903993877 432280654 995597872 495708635 994139418 959761067 386211908 353364222 575176637 1041874759 7887713 400937420 65205964 362887173 1038736624 1010385281 1029820834 795860737 675635860 203333702 755154123 744706286 660689719 336564385 153821717 108614639 638555087 957761392 749534412 76750037 305547789 608287741 271412427 916054633 1055746130 762866886 378288332 484883500 970438575 819531137 912314422 53582826 777087268 908570446 580091325 916011781 293476506 272794612 969049071 803849785 473243368 1054129109 772589970 487405503 103772687 1020948805 22711557 918585055 589320498 922084494 634688233 583252897 609097142 480563266 910407215 419929895 601198903 478819520 41405456 101685423 904553929 397162223 845877555 156175079 171524579 68597386 98570760 486806857 409850659 190945424 312756372 417793384 713632606 704374853 1024819858 737839811 38640517 409885329 734242609 500008654 429596503 517343717 139987352 888166237 411675736 183389492 903394613 451664071 580479954 64615051 663961270 73897305 1024860611 217118965 521576488 856438300 375060172 106130200 544061780 641440118 451636100 478483855 695932549 743374957 11985548 302794056 30514014 566134089 542998332 210479351 99712892 883481160 94894040 25356399 174898930 1026532021 121353152 706733312 166753512 589850044 799859495 101658501 322958363 783560727 546706113 19988966 151809916 485637841 869080639 565409671 36761818 451999162 808844352 121229226 155580502 1032202217 833806099 54075598 849814115 42805450 987806415 576479411 5089169 683506228 154411250 1043966153 211357750 463764384 170862268 847702129 675177127 548205356 700979699 999636651 667559282 777844451 867283533 429064411 141151047 609061836 555888180 97991730 919376773 935079340 782781863 416584452 657492180 120620498 641722525 264285067 677526651 673169485 628137247 172943050 1001656297 579970831 753122647 1050989135 1065937327 787175376 410604182 2869795 329360739 828114956 892623998 153142111 700022548 990280759 1033782280 811035188 691070538 163373064 556158463 947236839 284100659 537559450 455188894 554112831 410944218 760942299 873644709 40782824 336604067 710907976 1050967116 937796863 1070811587 465438079 435555523 110964940 830579679 654321783 476573940 182789 304227490 294664843 857226481 986195184 408576047 209021396 90121040 386743560 432656248 552695452 701401485 79408098 899654399 606661375 318924751 950453271 801299383 1019656053 842909647 617958883 719944806 687763121 40312118 885846540 759974594 211529818 296264114 547390778 240310922 100266503 149628405 736881992 1065406070 789246207 594059700 146974782 568154466 497865093 375800057 982979802 247169997 543502578 247414708 243461922 868632913 967866792 736072183 593441270 906224600 18853496 548418888 47040224 1024398481 848640310 905589493 621876045 247530564 1025557882 31433654 948932255 987260908 570307570 944254776 833697643 438803242 168073469 445577217 247272319 703758738 241197407 835926414 381513072 33107767 180668142 368365492 1072828949 108886088 542065026 226905910 981479965 845097088 688206246 704732952 200414590 634984345 238051443 1033647430 403098559 110421459 168732861 763933214 1033055931 565640275 506082536 16787605 346020246 326197359 839912446 11590258 962110905 394063918 208070417 905338273 669608573 222510516 975658270 769217749 914660592 444252534 575506920 66449144 390725049 536622261 212909825 1018649942 296838686 991307958 485231929 783105531 456318546 484598966 549458579 605933455 1026437096 225721543 820797879 23108869 720050194 661382265 717644711 914116088 863019210 600516958 769906993 989276264 188231465 1064811660 403457212 340478767 961695202 611170435 435457328 827333474 111639634 210670987 829056163 214629734 34179152 251388957 926418618 1057093014 372856480 276363425 409054042 482547082 625443513 537695601 917517570 709495514 627789850 3895219 984706971 221876570 475713181 538482304 102729596 590639553 695610054 271219382 321698742 629323703 98992533 130296820 978136340 164908874 648077344 1042068503 565779366 905744500 644422213 380470963 36636340 970702177 762016772 136465732 777179058 403453183 255955506 427603393 216538962 837817973 926677981 90431759 849915621 341748758 959046299 785767696 973842635 479476170 541996586 570998463 915798397 855463430 581637362 466846081 256956760 781696721 540155176 224349740 108634531 259277948 337043499 555606197 199880020 817925437 1008415504 902527550 17469582 861916471 730343186 10186520 491182881 43307083 451755843 803379944 836558737 63678883 73541256 684734914 997057537 94136230 628066866 23756466 189739106 1050833752 906243170 242419045 565608720 701893642 445013169 674153787 211904918 86055780 1053974934 542584681 897427343 763903275 713359177 972406819 23932421 341290500 1024774647 171497544 88480572 621986616 768812399 728953777 513455767 47410967 411680886 869673919 677298312 436982308 601237110 1038861001 320018847 173060949 168834429 760558632 990446394 308011754 967152392 1041617156 929489384 426949848 588659354 262080400 972400078 1034758023 165348445 985369672 290849000 685494027 1028272278 555794069 916463726 244991262 1039964352 738037734 310648557 355715311 932262045 965026614 1026652385 558457215 970758768 885281443 456823235 382624492 1003757765 418110389 492273786 547823067 626177096 915848108 236340105 374635362 744011140 795809057 558535802 148854976 634834557 578578539 535684749 636490713 462950346 374913381 710966283 1003797703 139299360 19751554 1061955593 555354549 557258471 219805571 224383910 112494690 87022528 406913462 687452872 910864280 49668563 639362835 806665709 99170281 22284359 530660910 1017479811 178056362 857516027 271858667 905829583 550014589 747072400 940809237 84599964 180461879 121070308 549971571 574861153 522379402 84318852 760416889 772399526 900481218 243381643 672317526 909466060 439995567 273864174 321994487 220149095 174810934 555384441 794582189 380435489 483475784 277689749 601097278 18424051 761269946 1053089546 89585782 557681201 539383277 600627938 490837148 613599566 236258227 706632513 625442823 812423422 868644358 892584031 1048331327 786980574 1045935577 688837293 762133854 965789630 725063847 162642986 412891357 615367666 810967429 106916630 111142649 41564045 887197630 707718426 453320283 152362568 861937934 243043322 358510028 1042759968 429761558 968458435 88835933 637157542 978789315 630279536 525667893 857234927 406654632 268778400 458890129 386525929 214856928 643463284 215126400 765973599 497146938 1063969618 389799663 555901105 1037588661 745480117 160703493 302318650 683152480 411903286 452327574 860106067 1064653399 751569807 600884593 1001884593 21419398 124877195 591353504 887798143 13945202 972648588 512937033 1053975556 1062533367 487156179 783522879 39126505 662998891 729953960 179086145 633835730 699939829 985193187 666893472 1019237148 293782194 870693087 859297478 565954302 545036297 184609732 145468310 319608429 585117211 779250106 602427520 186018016 527303721 353178617 169923696 832391368 145780579 519872827 457026469 169821498 967146157 692079770 469810679 790054487 620621067 416113861 124470007 951573591 40561323 743287513 259175311 212855319 285194644 813152779 949228412 183564352 762499090 231946360 257375827 909586969 952975486 914545832 931317395 784587285 3367061 962955944 225995474 35469988 852017597 956561923 1008852425 566197501 323172675 582783757 586793637 26217150 741928468 575160172 816077270 1072187134 954809305 417403983 830371105 12082715 876958515 718559555 925869675 615396435 662826033 33529592 831695040 66817832 455825575 1003725029 578367037 944827521 872400346 791176447 1041443160 59356417 880433873 641528098 591008059 438321689 496928011 67209600 128540989 318895455 227349344 598763344 259727106 682424817 864825211 500410464 891868836 808276939 418980628 218827116 439734975 728728312 1059943855 805362881 139131499 626916980 613777920 301979291 918217630 636680273 53285530 762546036 34419310 11401016 710168757 233680403 328902985 586399279 501572264 173563658 121432865 445717887 11887847 784544942 986017522 290957007 801072330 536754525 448576041 177747346 450778572 621321007 256341142 951465623 639717603 143997624 519528232 800248875 921442790 689611280 394887436 136638732 401450496 917736380 853791719 970819866 893391260 937826833 900042735 643414649 331761064 887070547 204841756 889597300 120309858 125148286 555762435 661106277 1056243602 520006291 864895217 390403572 644707592 990434757 552507241 686144093 999830903 611123458 981731575 465359122 854956927 442177058 503792106 708283002 711216377 347829874 644515089 852979771 878691836 725409068 918164910 217590269 47076346 191942429 592712926 548440137 1030262656 564605264 641458162 267434408 764398206 140833797 341808303 285107907 543775609 15972482 315211461 301079336 268331144 632769222 610515837 662523926 239206034 392946505 623499423 654154743 743985637 203511548 800243191 109118474 1038875662 801535870 517792850 933071136 781492615 1010675166 295535322 262934073 136883872 217482583 679860708 536173810 892175109 1012944202 566920618 189583242 806625030 656266805 827552700 131541184 641932311 487085000 578021744 790195329 163545681 922448613 319865627 456808946 395473311 581822551 897929739 729071115 466467231 775209356 533421751 940830050 321518432 613382962 341706265 608185434 1035977316 780275762 229463316 46580903 11993908 257306595 420810272 54156339 866820061 147375998 92902541 123011094 837018900 1007227136 703751469 621750306 727627644 368632610 772651345 654609808 991451679 716359565 897693822 822281080 330457495 145726019 746825678 84539951 689000514 995186608 786929471 1021816997 2408066 341837898 753044723 368502655 830711203 1062789374 747669265 264722262 201702421 131653989 457534754 670151538 555263366 330963407 254145144 985755504 312163416 436718721 395002882 165354033 196681262 125708980 1039728310 483763790 10144760 1004140230 1051972075 879503677 575333840 898094560 781528344 681678620 1009080288 773301649 541485316 787905445 844149965 45362510 1059338898 555012578 273609939 40991929 596098324 729661587 264980510 455844470 990086746 883279397 653920904 980498566 34283502 951537660 230257397 273524543 93810838 318138805 591124384 305326611 855072351 567461577 330572291 502821657 984196061 735614640 966588454 786214629 751525046 545688898 339679918 707930939 136328931 375067023 1069749457 86991618 937567976 32545891 771466842 678307157 645678640 621916573 860515109 50564917 706337845 640930262 167607157 986571585 916842386 901658842 897707550 632537337 598842501 485153868 768991821 981759194 161600411 705123642 799137851 187480001 951365517 241879540 928054830 427659456 457570827 286585304 111849038 472942323 835217023 709756279 285976779 12178420 856144132 489046354 352490145 248149069 1073001309 55740788 617742932 1003688105 487641771 221474628 66663171 450617105 335716146 733812331 1025279230 919862796 788339459 1021617924 923367202 652078160 966078986 921979955 499209901 143874325 126595977 320787506 591533445 720791366 679788171 631788901 331410723 953390005 918354785 56942925 869675364 531745102 921826938 224061557 25702896 4689455 670321480 803974363 969698153 440141112 928880817 250975431 105586335 326158393 128797222 803438810 121204080 578595867 321132722 951002567 164873563 319978016 608378657 228384149 202295203 1111200 172476427 993019329 794581130 493488428 511133148 559238657 69429308 112862121 195420266 570000068 443841173 844207568 936565294 424371124 557221595 801503548 722944918 1059181359 319119932 628935038 87831677 178776682 34449883 455152827 391867576 188500653 428473460 370572928 848506137 360893051 1042600267 561708864 830515076 677659687 416563984 746845659 207516267 335760791 369093498 923255170 66808005 930328544 784217988 968969011 801853176 800225634 1028445319 841452445 615072998 126759809 603088367 40754420 64012830 195357833 582910789 167251995 274816892 955721953 83097670 593330804 471498987 621590547 767793052 916319907 510763489 178935343 708476591 204579593 972240290 232180241 170652572 155058101 649750364 571271295 603277666 90629782 636745593 987734929 524758423 720092093 265036047 466093152 263822167 555584053 697568827 914427745 403435662 449582335 54971370 940217451 908131238 209112476 634585945 427085405 1055396746 632614333 824168162 773842462 768400783 519247753 889650351 996084541 182461473 656354893 724059769 833399098 175474630 216164475 324501016 523219434 637067122 100723134 779502654 699309398 608917525 357703865 652993137 576662962 6908175 340447864 754190093 527627509 28025150 297314015 299779754 170552306 515868930 767861610 888964784 1072768140 806274200 254640746 61955172 75910044 394463839 415987893 53074568 794550490 29296284 121305757 890456656 19300224 306617670 874289534 456455541 457734571 459838389 146778915 196293689 7294454 452557739 259849630 923300517 283496513 537877586 700787444 967888736 376190704 384189709 267864481 246368222 571842946 590934569 635923677 1041916094 66938115 988205415 890373926 601374478 571918841 723864672 620893207 1069525833 429264702 570740191 385875765 645790653 540311243 591616407 901006481 303102551 374057080 524859691 114764548 439245556 371385009 295705008 677133926 18109854 434620209 1027046236 288586386 352891161 64861888 642833690 790970200 964953589 316215935 885211560 815042589 4431497 923240712 272566344 984805683 804000598 240494226 730061557 330176130 138785340 459497479 508041859 58655338 628196556 296380177 330719182 29422148 955198619 249523319 261606443 848768776 267875696 1022693527 755770020 146856019 284856823 771811563 930100377 784982597 107665882 774644811 667911034 1021980884 43097616 241196399 1067615446 1071369930 458857284 1009756528 117823756 72382076 42626504 673063481 594413943 500754485 1032748045 881401737 212848738 459382185 275142864 413074093 417525425 106523798 1023357118 446759993 304826521 279218540 973252531 689047168 269105020 377402898 131854439 453282693 747128119 739448420 273438235 536180260 586443542 306485853 15046133 208100069 371766172 735597735 320737130 402130778 654423796 683175342 259520284 211982235 128820678 434976665 861744163 490265084 1019203966 694424331 794499827 127358367 612022907 396533682 369732603 149649502 1016148156 920407437 9957999 394058155 236696348 748277913 588748524 796363785 836136686 698299366 515146937 277133939 556433585 781817680 47497198 964306879 21602057 283428863 129285596 620441995 660357084 273165385 953762151 850004217 671392295 704056571 744456632 229905735 570206824 1071926663 658361192 471559674 207045285 543905511 1027361502 125881530 357592722 788661755 292200492 240708378 441810089 309127713 627218441 1020227681 427177135 1040230132 62423021 668728112 904144683 422696916 355390394 980744505 562517428 337942455 761901892 656680590 362478754 59962803 873483130 279583563 697832278 397459011 771578468 221872981 113940281 102026847 950387049 1006202186 286892649 1048784646 624064153 1024744022 705855517 567273903 216354395 929073048 1012128378 76826186 286843173 34309340 691798225 781518093 36079972 626499545 23500364 668107435 622125774 259685024 572737827 310372021 113071410 979944211 130720050 1044344353 523522807 742351832 812695050 460045283 45106720 788355199 361057410 408593630 283243073 177570124 539279186 462250455 555943098 479884588 979527718 924940776 976936463 437384507 222286208 1068701208 339799127 874615664 698668858 461943292 798690946 441703472 417385447 196504327 105929876 138716733 958701432 235230938 495953544 935398452 367791837 352833247 102124117 1059682193 754368085 455771203 4813296 59247510 407469139 163036388 462549779 879917282 684095850 881167403 300644844 842188413 634118472 568613788 355771218 1023870661 970659215 470798282 925468059 193581215 689318883 361953899 494115906 747153425 1017967266 691291365 356662316 708906868 984703325 1066248235 88650439 828022822 597298938 638498068 545248990 883294977 539279971 636787859 935150969 1016714914 442235827 464515808 1018754834 932472506 69651955 433007347 1025935287 957575669 863997580 354564996 96877547 487767871 47078407 639645589 222398727 180217259 829713415 921760060 728229417 919984741 763570725 292029477 473940065 442971809 902753492 708866985 778416353 1025000207 942579864 790882383 389524677 124586544 608002193 448863446 922362468 820083098 272535344 1052755535 1049453457 147244268 651981594 628746537 25990410 872111694 99379727 235194348 315614869 593472001 468013766 451686143 161745791 87241326 353369162 953147075 392439950 430019248 569244570 57790532 441829376 319355864 359038527 551560054 943435972 571396778 51794448 708504928 255607168 713138347 280171597 750955950 480989589 685409972 309010596 1004888227 828455826 513505882 546226833 684622717 536237108 229754325 794404074 285155012 341516005 132274515 362240260 393381552 147982677 317418675 254867702 1055125435 790247595 787313394 250281196 508016328 182067942 139873209 907803779 275420767 371581993 34186836 706290013 936704340 450631948 700337903 878131250 600274226 945927500 126301398 778648584 253397583 929144491 349327164 930455643 246121709 428106544 961374605 720359160 499831095 147549221 375305804 207447934 72218214 444052380 549212590 239356671 808881647 716335749 429337172 225610301 645063129 846457755 1037695665 623785430 760806192 286324176 1064086207 850748772 470818632 4858751 962427369 329041831 892666604 498689504 1017084449 217720255 2656004 1020093045 66905289 320579384 937764469 579981440 214496569 1047062993 483386512 60727475 1067752335 252972911 836418935 15038617 34330009 387365 1003852856 122918200 932943254 196612535 639653163 347783355 729639354 686277518 257765059 892850296 931456134 653301362 264698712 97944944 326759944 545211331 508535370 234559601 522451655 211254830 684965190 931747173 598948996 494822650 658435496 569068592 634113057 1038060638 735552681 927879736 954958634 438781071 1017394700 176038428 77666721 456566490 962024541 914611000 926691061 266607423 996978651 84893417 400930583 679424023 541991111 309105091 351414562 814170358 977788203 383592341 152798486 202116494 219335037 247731207 779570923 650016261 937659135 321563860 215082933 902477028 683325707 689850599 767171650 454157224 478525083 1029291504 83325738 140013391 120393306 619831955 967688824 23186437 377040393 697823224 75656428 17656666 439484182 494640628 388126031 164321486 441712607 625828654 306243286 219458284 1053492031 629245856 991863478 559913534 966812411 471507050 528422511 363341361 1058534107 674617142 964122500 216298404 824342560 439175358 690132872 1028795690 440254448 364963879 968074541 910895317 812842853 873148501 594744302 159780839 487260495 65911897 692352065 131484661 116130876 189847998 593905767 407005154 12396172 97249698 368053695 994193301 522444261 484300137 173225183 970804167 477708197 706598705 689075492 384449721 198559706 190260246 460420612 432300319 750054678 1007636246 277782975 164442044 485284311 952955927 660440962 1047868780 477828734 1063348946 728310913 323708066 708402153 921098142 614548145 592432574 901555668 657414564 370366301 612489326 408415111 300257404 560139562 735722455 676638604 1029289450 220406838 892177948 323277803 786554855 110207456 390734965 390834364 646053866 904407836 668428405 74748746 481935698 712682447 304144354 906587557 906650184 455850421 967312868 2878040 846598548 74623035 476887938 422627348 1019784201 1027295761 522289285 304148114 337180259 428571367 21122079 297649619 88058442 580368275 256071455 283874588 1058946493 270143858 388772742 796156928 1018405839 262119190 540588148 345241004 1024408067 356496341 276210942 362899747 458812091 245076206 883479039 927926649 617672047 122187195 489503021 729918814 193786986 335525794 458695713 633550150 974922254 694248886 463751822 74111304 931304547 390155513 512885716 19425406 952070369 1066753649 823146274 74650802 888203230 712709843 216475151 1065254210 736585445 1026093312 861785693 959123846 432414473 721889801 253472681 441689652 956308203 340872494 521864670 622611901 706497023 133189411 586699606 782225990 192593635 842357004 1014999210 842787334 356413510 996774648 369574269 532629741 475424789 100808827 701977748 634937391 749844837 488983844 17091801 980908849 51299653 1042080964 229471773 120158948 129562028 357755239 331819535 405296596 1070048173 859050656 734096042 649032955 1026983476 993628421 166740100 212703719 71675694 29705395 521640043 779984689 545413308 177222608 794520558 27244281 332150765 737544991 444884036 897373404 846204305 1031779419 354164857 852814430 504651838 540134974 534578610 271328540 802904161 502300232 803593338 88019464 728085 447656104 69729779 1033144834 342767207 783579969 237456745 359659635 940307482 61786017 658086492 165585692 302670197 206457185 828092949 350422338 1072395373 112205963 404488785 321201220 328264105 935491087 377587936 865379993 162584187 299361886 207751484 404629432 268289590 447448677 514342925 253672934 868620930 875089459 411493722 890018899 77219352 893687561 372709395 659700235 852375489 889697460 335804630 603952076 694086604 689655662 1059542199 835766909 396036537 809481273 727630679 766726719 353255761 790135181 132413089 435704195 231129140 413444330 424788532 243774022 127488675 64370417 404298435 235621497 788270505 1013256260 836281623 654129532 372049492 604981780 720646377 750522791 47090839 815284205 515597403 785090507 241640015 506760078 114171901 362519399 427832647 515528946 279361213 885752905 435920890 579919234 431985927 80990722 128567658 418243142 263696160 19944569 731442672 649565146 317465598 715474259 810847685 427018935 61438818 1025297135 659091913 1006204364 234808570 476693201 390016210 873547428 571355406 436416023 940057473 787368732 654887409 946592472 236441619 304667830 893127636 299206631 588445693 324439918 865462284 345178406 741863940 750068581 475469819 1072995622 535194078 346865495 31609844 103831050 818533136 846012995 836175151 121670790 730391369 58693751 1056185863 157836443 1024625255 781922433 1026002872 609251122 397544121 316437588 62553592 990208430 775475557 977955146 426892030 232843532 565046949 127712911 758708393 788127324 961897070 485105755 25109269 363642892 791997751 142833496 5416861 755539014 232178034 551736378 441306385 617329556 499922145 408162628 509950551 592848306 67849600 766740108 652737860 999184327 307241911 705397514 1006214662 55470832 621156297 373063155 132375767 187702603 157787534 435328092 248507716 590608665 51301272 473911438 210325021 541781602 577027183 715965474 253989271 290419196 588620629 97669127 305682146 67313493 847336337 804820354 783735686 635345130 72922037 678436156 387231311 921052887 10550723 1071349877 640771426 898718835 325898604 330357264 117721879 20410552 676517818 1039380843 948292796 712714649 818103945 632064230 102405304 955589827 486513435 446694821 582169630 719672843 979134710 996411658 291621728 471170829 907413685 184642325 423143988 562445000 767089276 449749258 72898299 530974325 166665567 528824735 593367027 994627534 843240837 444314607 688006654 289974821 573317802 455145747 770612119 929814291 818635851 744318188 64693350 232793653 912506949 431309049 492353211 1060030336 526464046 392954321 518485738 448059763 350481521 965591945 624987043 335610500 67257491 409661727 401160337 1035328676 138157278 640145134 743410387 520388754 566336709 1020468073 761758272 36927112 19806192 713545271 79068804 962582677 870784864 1066225436 404556075 908741113 999851807 451355499 1008758527 367565246 67212439 1049840207 625223577 902790815 804411139 374227526 603336456 612121940 527726629 526044194 437233353 675918929 301955429 573392188 1063930644 169510099 499119191 705802055 600143204 506712473 1022681396 128719402 1044955000 967321526 193753508 600337069 495240359 882866663 32355721 139746138 424587554 357053202 813844047 38208858 903401935 750560581 1005412272 743451733 542026563 138041807 293185485 622932522 370082574 517003449 373432923 538181157 23941410 579049094 687016478 63648788 752184636 1038601358 1059280864 985725097 179284554 617921355 462633910 760278137 490816348 738854814 788732994 286342297 36949941 1058486771 3699830 900054748 657361963 43730874 616582407 166729317 197975813 879115301 1062152270 392623653 5662622 704828175 11477523 54824521 78183859 321775613 140584307 147344976 769967962 98607146 962538358 571053223 675747796 929056123 622332990 755063822 801326800 44249265 818634423 67161052 132900626 92127206 431427422 918634407 11215316 484307863 590842820 51280399 707715206 568032024 270284464 819771207 1056362535 1036520597 40363130 60413541 591268476 306230447 445933374 828669783 566974997 332642414 1009025135 459470995 388655172 816354841 562503321 288675845 764611374 591160137 929387942 861258662 251539625 617360125 554276875 616095804 248711334 831423544 112416031 1043686208 485444576 621387160 177182038 698670497 636431826 682204042 671657498 210694347 348351997 179699907 950249188 366103923 465369499 919782665 700282304 756940049 218977760 318265981 1068828125 420910946 14151951 257251285 550689659 732021527 749897733 874435074 483435077 583441556 540941490 950628451 17322591 1057883484 411732572 388106632 76315292 94706041 39953057 1018270681 639952749 1033765344 119665031 548909914 1028741814 555959272 23255929 922473102 96941646 969287466 408900249 263824013 455774938 840970742 1004287424 172109991 975736972 581578945 124436746 555189685 967933064 1024266831 715786054 1072341115 524186804 164678615 748205553 799370220 302826929 938113180 354881228 614064480 306122295 663439164 988760329 1010215018 702035328 911578201 291475306 672203084 335024190 636577233 983401374 157573186 524081465 283505557 761122601 972092517 439426264 487066667 510823020 974194768 761346352 618419700 540576038 249423187 730144848 465202715 804031043 579347359 774836531 590948138 900128071 920560251 260075218 1013748827 164086069 55225559 825940223 354204408 378282571 1007897896 692167037 181175822 1011171887 402044896 768162916 767675609 108613739 671647878 16873881 375530788 507232038 653103118 988680012 792801282 594198381 510350838 1010425779 445362386 14569587 551818526 844051365 202425137 984498588 707219156 123291058 447057235 840895450 338663303 716658321 166745129 978562287 120043111 497075073 231090142 624983575 799883965 229239425 657700775 157532514 9719171 1023007600 403306336 188011666 968971056 619152939 645219526 784771609 785282223 714816039 396157035 340922044 883174109 701938573 699172180 722530349 181975640 229231311 458462306 648453051 948179061 196259152 1003639904 580369529 293061768 1060134411 746032400 495448165 3784754 175844602 235974628 710311459 333328065 141274540 975764918 799185660 9910621 646325998 969801195 748916992 344475591 708928549 121880819 748117664 27167649 509601552 132269781 706096128 901010257 1000702979 771028822 162636842 156553375 1004817195 429517976 82291445 727903741 614376477 375756268 874623060 353106232 229833168 678549273 758356906 641956035 445604850 284292693 123206750 484126674 1063871544 570874318 202896333 914141184 113904191 12591328 529838322 247041316 381442599 495175561 1003603345 783735214 585216309 245812659 944898260 357600087 533046951 957821975 387336995 390395088 578982843 504726604 273022817 402196138 810061452 447855556 961192986 868730174 333889576 154025100 209586969 163181852 690941901 1052368983 440740205 733377751 988286458 763804256 876180139 541007746 658600220 1020164477 139757526 291961414 438335960 892106816 416882236 703111159 9216792 727190283 735146386 1023542301 811805539 1037393022 326325384 1035633201 649401905 1024671552 193318540 162655957 75353970 688609312 866857373 685422977 454130499 669245456 643307147 372093629 663587390 458838174 610219903 513315005 725968412 87962254 931657692 553336743 147746590 448739994 1032314586 981640578 239012902 1035173642 473249276 20052149 1073721242 323566957 817121954 840515322 232999477 329526068 896319051 792821445 746217715 699656795 928182478 525300076 192978917 223327980 993702033 136087939 207477849 293875037 831676561 558197078 859630126 50196242 131380709 417996723 806150617 815169245 348192831 890111968 48721895 490233495 925372198 498014269 477660055 238953146 785932232 112631921 90514533 1010751001 998044547 450093896 374103881 701273439 709747936 162776208 832143622 607737815 39423067 224827323 49018572 156441920 169762648 792125039 951743406 328903269 434820572 542519052 311912508 836513702 393444977 898885955 213051095 318673777 338281429 575258967 817854672 627039145 224000811 587503403 533856489 205838680 264542823 68238094 536314384 634708337 916962686 682253072 816259863 861378095 1046387796 178881315 779128807 340037250 88005609 1032550780 428312685 916449216 182831733 1026559165 512632232 230888100 752596765 151755311 929229751 585572525 101076399 577291486 566332106 1041720430 288080673 674939592 857930759 296166568 80564152 291309238 110996038 493364185 70661026 470907515 28243547 436523692 1062196113 634667981 113895489 761741869 978182615 413138668 706164066 374401228 883393664 947442921 719685474 570311105 5829699 838506646 358865800 355322513 76834299 1027783000 348261956 247209244 88131619 2279851 844495902 341949856 407633286 467598073 550709324 871687131 953555144 646661433 599555166 140679726 652957255 153859288 755861203 56470361 585859601 743186352 515786482 378982824 567330616 619636509 660139893 670907502 98703452 125877430 89313099 638326504 833452679 533463137 895106723 623454199 316670505 492963720 937114829 253151506 26556597 841197660 593068909 933066607 383865742 813254629 599203382 85751535 423611167 993738453 283966955 785045994 818738186 84493758 1028213116 465337804 734107222 841051896 67374276 411428425 346530932 773192574 318474528 272077171 731692476 456971467 733541769 16498130 392580817 759068826 78667663 167734604 644252567 7426687 397355814 583010520 39680580 1032240768 1058941558 950351254 628528256 229652173 460667525 8934778 743654030 560174644 28358747 322617941 53397698 782652655 172443271 1054969663 914864424 252743870 34401331 754059257 939418616 1046346491 910278198 117374710 811332653 2733542 983118504 873856734 288843701 240943951 691725233 788809245 38325974 926815057 12806980 461469660 265374192 391067378 911543638 10435192 356729051 411851764 409887395 1072808463 434281331 793514881 479188690 913676385 27527147 1057015302 374775445 635282394 859972349 947780456 628222395 889227525 873008634 795029165 567096058 80370091 893551403 859059949 575268282 486851089 94410767 523769057 752050011 619068521 260603125 1012947080 927128683 638494606 237964810 81401502 588261223 447217110 109770510 192930319 122464332 688410098 409978188 7428414 745897111 923143361 28240766 381296371 497039088 46233625 1046736122 255241017 5577539 473295839 275727170 64202216 746519159 308323685 508830416 181404806 142563500 11025868 570132793 507054913 518899062 110143360 600115201 730359431 669841020 804342639 446612602 975731657 963390135 540451080 435843642 67025072 340824347 12665072 119502501 227737168 1016149828 776096497 248124315 26110241 689335608 370938600 849474028 984438570 797100245 1003772474 37645611 2452622 298208673 456926120 651648980 219575472 670413787 420591927 412962524 672916221 344411526 201595608 518479170 225999644 515594617 595985068 775127803 278559335 780383294 642562264 218435487 201705165 94304704 364523679 309484022 646312010 960141525 47634074 213034231 253762865 579767130 693610468 943916983 1010852091 83477480 607012708 432546113 35528937 752472525 343148245 399588247 128893523 204168297 462574756 443467363 171473058 590639047 416660785 314101010 117821184 554519862 515771245 185147428 80421056 831012760 249364304 163968129 992369045 145422934 191252730 1059200873 275761966 439683431 874375020 362488657 1001525180 427251297 21408235 200498851 745075443 354521078 984528453 471189603 861736812 968511906 847181051 958263799 701781105 608522404 1020709227 539655184 881196722 1050305693 1001658470 828022479 306040841 709626773 628164009 1061095189 765851474 348472189 224011097 663307187 689019692 639258215 890307226 327107070 420089527 576220435 341833264 856989442 479804481 634112641 533543809 168252460 897309407 323254301 235356899 76568378 216945024 824778973 725685421 741203431 946544519 336168060 92480338 146711363 444288304 998720828 555985439 584273785 823545882 324654789 640869902 779832092 813337378 347712808 681099378 508246110 423251599 816562108 715275971 903627550 211461428 647025917 1070291559 135954572 790867374 232928322 691002687 462124262 806511817 342940940 115286227 316366630 289104740 116036089 603413915 328171769 1014151502 197054868 880957835 1014658227 247113141 897253828 30823115 182296023 551589651 297659871 503492992 305638551 401684506 520853402 243294137 435595336 355065300 407752295 172225111 816859616 105851752 605099099 863423333 740592778 868383112 727972443 914142905 108422129 280075302 753255959 201754466 677074500 223481540 286107010 925107534 945209771 940669933 612211040 263271084 556861590 1019917907 1034803180 930084291 276735780 994888018 115196421 664298101 730117633 985926847 7708817 924206348 756740004 215038903 551225824 651437428 411466735 284368243 631021554 731741359 815860059 926939536 594634620 405433688 959162266 618812289 68860108 893983129 840780180 614046882 576325297 412820173 660851195 772535161 777652358 242848984 420881895 467337288 20095208 1032661446 698631 721829262 696663170 650591816 667588591 576160174 93882307 284655280 350791428 643200794 924504620 540844709 435416309 896851243 887760635 539325666 527842803 336780904 622960835 815743 202215017 141776349 668376115 336576442 990725975 166868863 219983245 216915863 510726371 880677147 602864340 578694587 704954260 34508712 899929472 897671691 1057475346 1057414644 464950327 38369013 480477678 363753038 946769928 76412754 919803473 749181840 200778367 1072886732 567504236 123578238 901236169 112209486 144944663 250860864 707576462 866502727 415698113 986481417 318414279 225198133 713693190 514870754 963950695 170169556 651733754 21767263 928416386 121290166 349310865 129139190 196178620 298393228 201523731 452412085 706851573 486503760 714333693 403942673 423910816 440076217 661274251 575741704 415694422 515179340 33957348 93412864 404603670 281978771 130331502 346760075 995590582 584810050 68836735 278238745 589133189 990194900 616558115 384931151 273132268 605049534 561872102 27940407 296835461 816957053 57096838 83021485 956992438 854690969 1019204792 1034420239 803901897 492286445 396774965 540807688 833430739 81973707 658234835 460555923 517223107 252552413 937919562 545120082 775412965 233095231 168181454 152340190 163582147 555349751 491521874 408202750 692305174 11538553 949059713 546041047 638315363 364655468 1073198782 192195665 47929266 21234204 655052674 409388694 212436033 200490383 977147459 605911163 166977155 428643160 726496764 88645151 723355501 578520181 885621699 723574055 668023778 722600433 798624651 965391079 294247946 124620006 1039418777 665201582 450444586 764255395 31480055 220454971 458896945 563093693 669741601 1031608224 219846367 622438784 536374811 107346784 735156372 652580308 595669894 850485515 654195830 775960912 92690342 611457820 243506905 466399883 389231980 379516951 261298523 75881443 103683580 187607316 630032550 1023115642 285676244 284385076 184246086 358517118 864999182 417797248 499291637 465006487 754367467 451185011 581709739 604067234 37026255 224599703 264453299 879527348 997281976 463886051 828296352 813782919 749463248 190921134 831571099 471119536 810116997 250037245 101453490 648004614 772097427 683845967 108348206 385022730 129730697 981180370 463239260 606048856 25484836 1002967950 332168803 838463353 297749022 176126709 118929742 57833915 917635246 313817864 960880733 152703575 467730643 1057206667 125925237 403045121 407726129 1062899306 717653292 197279961 527924484 276183867 973908828 984072435 274372392 826698564 466554816 1060268060 403173895 940921545 207807434 1011017971 561878684 534170974 288102601 260245764 752049442 903687929 286301541 442635317 333014867 189153048 104683555 224069933 542914428 832885141 817024176 1012874640 308546372 1061104466 658275906 454331582 965776201 1033789513 583512190 417032608 207334499 927917762 723643382 939452696 209692903 850782788 313868052 987045796 430959521 656600810 427649224 910893275 294332262 427466963 1071129798 418448511 25021496 910662998 1019822001 894108523 321191468 30113520 313085906 317206060 754162249 326224119 658524874 933419306 527646865 857180222 733774323 958515812 795583962 220970187 1034261241 989630096 847919461 396569819 950419294 812744060 555917843 103413859 214093796 645063768 258263204 385199312 612611577 887740388 258016910 862484569 20935584 259009168 988371813 679887837 597483339 1011908362 664640036 201589114 4387388 622800140 825385051 1007233499 1011288023 280473957 375354987 653269619 407124117 890205364 999182486 792591090 581765182 824744088 140058085 11317190 570749613 993197493 682413570 1023708980 868040034 57741103 763765444 590886627 905248145 91235245 956109703 1006154659 662378989 976584555 802823656 848141197 918784496 150063901 361951432 93024492 341808142 297773484 1066869311 62508781 53656473 5319640 452118915 813781624 231145132 70057161 1018759656 352573970 79672170 426658836 411104433 183934592 883512548 986757119 835133135 226207279 818079493 295507682 545841459 23933818 394891878 149044769 2833138 715577923 192387027 739169179 948189200 665457626 14314008 111564208 708764957 320517092 994959092 137201427 80567050 1065502324 663174239 670313437 916718950 728835915 555232296 81568309 411973828 335088103 29953778 936278150 181428459 278047245 665474141 116906596 974710044 200342512 740814112 33483832 772781173 1007925282 76473252 805792501 664367572 335576186 225448745 154665479 963677258 643828737 394712625 928271252 176478325 86098982 788386362 149679109 145303512 969926308 697401608 19426157 374485554 188715256 245775017 655420604 646156336 224795852 939579592 978907851 26586118 381329917 245914844 557024678 896922811 783826079 1040947088 6624755 149237159 673934365 875251278 146687195 224266728 737321356 432602191 194191062 409567868 277606864 711215921 623876690 266463097 1065735941 546523634 1002301780 940960600 175762844 393863863 875737578 72446896 982651221 891954980 853997471 719289277 187066108 344487954 71720524 631112281 663610425 398755831 866758456 994233680 246523658 413016416 680270394 164585361 653813502 769423864 521281125 431541176 242718781 60888374 537383807 752640483 409931979 804711693 169232158 314956415 976175181 1056232190 548876287 366092971 31752082 90590079 281623825 143767688 134283069 851972163 588984646 716127802 383441747 595044787 88055848 173300938 603575998 321496312 379087651 441103340 339580498 199395333 890005326 960397031 149413158 812901430 712163805 435504961 154027523 386390734 608240041 90406212 180997084 582667064 859905424 1034804407 986812707 935182173 499805452 594176628 569543353 108823024 1059349440 384239480 112523964 654416914 797503218 549641125 5065246 371523587 987414695 156245978 480045670 628970292 192070425 358423616 102318784 207503331 154091955 281471194 270233262 18475366 955544273 74424854 616997756 727252673 45175624 787864890 1024108132 185991677 601911101 569131299 772857180 553604346 968197350 1050175210 956531624 651376226 1019622632 291980448 375918544 875818249 860499863 356372926 415522218 606473587 737732588 1060364209 620104159 406849691 1003213430 44866849 1047540770 793166692 715303983 455111607 876624637 696707055 898199090 894473510 335873469 246422967 50005986 98657502 45274570 679238950 101607628 516506380 875436173 34882202 853218579 606197927 240544638 822214399 754382666 1028300091 532700460 1035122512 587233621 402541691 442974235 769250610 502368704 219991089 210593134 767769196 608197975 561220216 145548032 289753621 410739734 457510106 815640816 124153630 687699882 411621564 162815228 231884826 1069240925 117988532 359252348 965312630 102242625 1059240318 859476050 165889012 334307403 825228061 220580717 1011908647 793195899 173927272 254950734 1067241063 88455080 494255709 116981787 724695286 676607679 779247332 325410827 338700766 861846307 98031623 176757709 1022459418 909487065 603519759 235554721 358988088 637967490 35121899 556331812 294558678 257409976 118857408 863903651 1014926800 950788378 1069057105 550744808 957184046 279169391 424649165 1054791881 867448717 726151188 603799245 10415991 431770758 93949594 242580779 954443117 71682272 941844043 67936303 48151597 455992919 841289387 248547420 262134997 74600919 221349498 94408963 570982694 512726260 910670226 254128377 100193458 881842881 467210431 10061584 7363424 9522513 897062656 74555967 1063850587 422370945 407269017 819523971 758899785 199063668 865461912 240505057 625055236 468731574 388524833 701581455 671879801 456976215 712404226 433914715 864942388 900832375 138494940 135767408 47761429 116923933 1055703035 899221477 473723297 751333379 779391920 1059713677 917653801 1060579969 482780441 382979093 211010980 335912579 794496937 615662309 425910213 820075340 791630319 448139024 657509096 506606237 880989960 547610180 836024535 732915463 658477875 247376169 75453473 152028815 443479632 412461369 931187868 576859821 132750820 873669898 1017078539 297347117 78364461 466579426 810593756 1022665000 1022421827 919674694 808184727 1052357209 454028743 709311893 49390756 268241931 557615542 13100323 303933352 444068418 1035334411 659543107 812476814 1020065719 776234606 644189979 756172258 988898573 599848734 248147764 461232648 745155372 472503935 568632582 149445438 1011391114 454369933 560800468 859526776 1057303459 378204017 810777994 407355922 292785629 996524811 926347510 105302375 57723362 172484480 803306534 698091818 337834077 575122357 2442329 418680506 710382478 50591747 299620220 107538092 112386397 726718752 679099284 348316529 901425568 549438139 771995667 66540791 1025602334 110044159 559652383 549420004 878200955 458563755 554216105 131740306 392132512 220100050 701955659 394178119 585994289 715894512 478282380 631226550 239522697 5288445 762571215 126448173 683200494 222826264 434631354 715980837 452513946 332580171 627437805 328352235 970240758 470124862 896476920 104434538 340992679 687616361 128199859 319102969 61573749 10799064 318457910 599582882 20276932 196752271 139533546 57459871 1053087591 682970041 897991969 82803718 552732253 793616675 126689707 378658521 290887858 198744136 356696185 19868385 404579467 76879377 163560925 52638656 670783545 466482223 392008701 506464657 818831485 496248627 182154667 655643403 690180454 1036722431 394168402 1036468864 401321348 788448409 469336247 1026778867 770657276 811027169 331052931 112227497 39031564 72343031 938298460 30473743 982749426 522653700 1033724692 741975673 123708229 393151822 644839437 621926311 772021255 779034926 587665075 540152663 534985958 221633172 388060999 969257748 595464448 500793485 907647062 437345909 688596771 516537616 676607371 123590249 642230636 228361641 663901853 535685179 36055616 358483343 564113622 294244954 95979022 41831772 910188374 639160438 470171383 1049537604 742158958 399532793 733930703 964266319 1010839483 30290180 406788260 88694387 349459135 973149927 379345026 638415928 603409830 454092785 1028459688 478724078 606900028 370560007 402542642 637128227 523789748 415029159 107948140 910193074 783094412 651605102 603990156 1022458271 993490449 828459034 735575752 34620675 757977262 594396245 743179663 203351105 382911894 656511034 276405973 563796853 5694177 572416348 501412221 872458651 257363631 749738665 1025487700 1053040191 1023840921 93487206 395278825 459545543 526245813 313540637 905699563 301077159 555191721 684567245 358793456 615757760 964894 314154119 844041486 662100088 1034394196 851078696 724949440 935287352 142011252 834264682 760985065 86423323 843170000 256048611 5906386 393748990 995876500 33677524 388709640 18140770 1008233700 481872894 753002640 300566904 880996219 99770458 576567282 709444645 118471488 537069741 999203813 656883873 695111225 1071264607 840027160 437080928 599150288 692173863 48419549 946296882 679550280 198592473 111172322 638947260 294097649 585267416 319424480 630516767 977243743 705035607 1069746233 446741714 926998908 1022145893 461444562 333059445 521482084 1011635785 339547967 84229024 411307608 583232246 562248624 226374351 887787548 151053636 704446953 1056917884 288558786 973576252 584909287 942778148 1055375477 441097205 971884311 869408565 926833795 1054890878 1024409028 761293269 246715037 667567271 265565402 28298828 138543760 174238754 688944892 984941761 352524919 548532091 980746565 711851066 921184837 655490466 928834455 160801940 950363606 815984738 36759693 21272656 1017761690 992310895 971737265 832387808 708901513 577990538 80540710 202288356 192091158 465779663 938930538 162802486 329344968 108723706 512539902 359093980 670304076 809800378 719827246 643200947 147515887 55153788 1027653510 995675478 663446025 710738705 52813625 1046641739 30596848 1044222638 441407964 858312487 260924402 733973674 505821266 830588120 509357779 937100281 876233337 316699668 741284603 39413441 283413181 1018174134 737073886 109903433 827457483 442447637 647239166 194907149 67383401 283599455 182404637 475342637 612576390 301686480 834547773 300264631 308396208 984643526 283582432 565670197 971340870 12809939 330569499 827143287 224888296 823497360 284102690 1031394853 900641432 190777471 914986004 1055692476 1038531274 498098794 394256628 220375391 596021053 867460608 426324907 652935338 286425686 332887278 671556084 412674713 620955343 441242321 518899916 889703929 373293835 23876448 852644988 456583796 138569363 201668376 441243710 694017888 669832815 81349246 524154517 609586988 595017569 823303263 981078018 103240207 1073137760 111628446 824044365 824306403 326974145 152655665 326115002 185882777 776151758 815318843 686679340 852343780 837562942 908311548 553778863 797160811 117402350 38557167 632980161 654987018 720565310 806927058 851640717 214065249 649223720 472240662 856448128 679667519 288071131 430136630 779986914 735487771 805390824 1001792210 189667272 205171309 319700792 26405773 747374676 181039210 393896840 797655833 605455531 700533310 803131581 474971793 614042914 215957403 792350732 347597171 171270179 784806693 783632345 438283063 583532747 275626890 157631471 186085476 712710784 731197371 295592388 399696389 898471816 207219151 764753428 236927167 773776580 308054485 759306633 298181286 252833767 670010536 367264885 384690133 624939261 648836572 67671643 1061247164 170650876 539523692 132615387 955230175 60005933 414991645 703611613 47350427 892668353 4850146 992732549 55324694 284845883 495435449 514476771 375481488 896417059 682871116 289268733 873297609 475215995 970437509 392582573 882542163 561447146 535831592 245389262 217208356 529278413 614398764 32288273 159753887 214195912 1037239828 701916923 705937912 12634004 982475716 111972670 905467195 1064646678 361795684 236733578 606909713 436720095 660883525 1002186815 627084908 1736831 251562102 832416333 703686754 473470394 289375079 459563270 738815688 880467307 728661543 965535908 80459744 91019989 483478875 434537035 113293548 590613043 513031877 519889513 11483666 395678305 509058452 331393628 768287314 966280619 664247634 134682780 591995773 107846174 1015454528 118215468 680898101 359834688 799859066 325178232 1012517541 930074131 739275974 56279563 303006760 500462163 111488108 219085774 363952994 406145203 1022692710 626751843 155274064 930257490 244495432 627342984 77209629 987601639 1069397310 447348272 250410930 666086536 907046225 737239715 553512256 137373903 442967351 837580189 388954906 924197652 1030213096 1041209830 73257968 737949083 792539830 938707981 225455222 145693479 853581391 971908158 90846564 196729662 402836734 319945963 877626771 1005139788 161510020 117735928 452756341 379951634 941589516 359572649 572038641 467625575 429328761 710707302 1036257345 12715969 306377934 780068103 368001545 533368024 954156564 294438203 1027639083 1015504734 682106061 592533611 1004078667 306071924 711884976 869713066 847840125 81659420 57507788 670249373 507841696 880749743 502054282 250301603 1025733266 557399623 481623381 638493429 412288470 684564247 42061093 1055227200 121172055 50060151 957663887 549445540 485269267 682391745 124788735 720812196 245499380 483763372 672310766 236191078 152825495 504707699 61722691 461235561 552425213 483187947 564184277 231292480 288322570 31015812 828317792 743583852 613538838 512748859 604757638 770353108 314605137 702790828 311545081 412092014 1009438225 502185030 754409641 831862716 1069834409 1022365836 964526477 369305630 461814990 177927946 439481593 905561486 823543213 919966531 672994351 767129253 509763548 865580218 158980887 670623371 770462565 293616434 574667134 756743646 649325132 328434698 788707503 220941325 502035860 687951791 27612297 1052984983 1053596827 213552206 942975662 354891692 288783273 251326057 615899949 350434470 496312326 691650487 466307435 234601918 130711060 615746557 450242928 397072005 800726112 134085094 976860469 579399430 543115310 212370337 908135743 867188957 864778913 479329916 840148714 430335270 181706940 1070468699 885909450 271872365 1069628597 835384962 468743079 505829549 26982978 54122796 791348216 346685901 671795050 778636745 383494775 69211847 86439693 1057912845 484022249 386361315 539719448 1047382990 771513855 367514747 235041227 709664191 615770860 728872559 492566901 548080816 244627918 1046841220 313269620 220809464 512697819 238412545 37032207 903349879 389275386 354348427 849763023 923113757 889244776 858510299 780399744 271426009 240819210 112546511 458420654 832859054 723172615 639276780 122887395 488370794 543625939 947462299 500060357 547643631 525583763 2710791 407177474 944502892 1003613020 555540473 704169666 160493604 156351401 153617070 965124694 1036255676 619829977 578957554 298252132 2286793 787813023 457356359 1007535998 332480529 888757493 209587464 658553722 40470944 307146660 64728085 135514302 338297501 708065511 108007385 382261024 807438573 971729047 1046846761 541539540 844732784 51186875 407709114 816394864 89394244 917165996 700299705 353581035 188429409 989102060 230518372 363796363 406571060 272678187 691469211 162932260 503572181 803284478 702052492 28592414 929766726 635966709 103966788 567650680 797616223 773223503 582681117 614380566 69970783 468236074 653880850 127204365 394648043 680402062 953397459 221921281 266943421 119886436 817647436 335760436 264374682 475301286 270093805 35752205 271116499 1071963562 124416072 1050005390 1027479228 342379146 227374654 1010718643 144397456 53175984 961855858 725830608 198586588 971119208 1047623064 292753776 757334517 431265326 158561609 252377578 613067677 831263422 739904773 881662649 94244798 331441472 455120749 867825857 571677520 101444966 119475854 957315553 307006484 711076611 790470357 484930102 801171463 287643047 218281263 1008067459 998751381 1062806385 371518208 199778082 811391446 390183603 935385863 291067918 630131141 485022548 99226553 474218995 266261803 25463141 940674390 279136206 622346012 596814458 407947992 455742681 235758438 808318213 430148034 556525759 446640087 598652052 278896218 844624450 871537998 377962696 115171584 765807352 202810300 510687425 625043896 68193895 969513106 714987105 131018043 975465080 73325767 949823441 65321311 131159423 568594553 651593289 563942295 690511373 492058718 479433645 29586696 171944786 690192045 944182736 1044443120 22018234 136949814 846115739 1034055355 419131650 666411872 185167962 808165971 395141689 840549127 78584284 94104872 817739693 293395231 81846403 422544223 344197311 181314738 409127347 77023485 21311368 497844658 1064604370 516956049 667534304 471940587 780122601 670964511 714929357 227009860 826301737 603415390 935541770 718813132 1009265403 238636919 342665139 378274293 954424938 248455391 519046744 326943194 512838526 672085951 629311546 364464801 1041723715 589033198 23166266 104283028 551780915 320947159 66184413 755371345 407388976 745737878 31430504 146645227 514085784 191271369 591019319 553470587 825636761 915741418 436655417 365478818 476405379 981450756 22307347 169303953 470108919 836630274 273316955 407157250 266512173 251075800 666630293 700935627 783953893 152173153 200379413 991530009 841658891 189172028 844350620 352350076 21081119 72183600 623099191 127096706 477856412 365376580 981709572 620404093 73813322 750290240 469826205 466150101 236269069 332005133 208731969 232775268 120670976 998116620 743327080 310327553 452055469 549140573 527723804 286026033 782833875 536738840 538264047 186884940 637549737 958813590 1024328439 595663555 817447420 195570779 313222897 267026140 842183117 882432316 148822697 489045935 863708931 479822790 657615261 997249342 175206548 528791268 995491592 235112760 1043197803 838120275 593729661 91531079 71739353 799467285 616542075 830775543 841107977 297531370 175455928 1001428510 874447082 186568028 49920903 110931550 661438118 866097991 355233487 817731096 302332321 813055771 794664729 547541725 351295916 952778578 493841411 37515515 884686640 615451687 149069103 655700703 627010605 495585087 377967249 978279917 249517374 461222516 702926002 268044471 177444359 831939173 711966982 552459678 1048479821 603611785 601700697 349018361 46661357 575319701 198893936 238331879 233318971 213780368 507390560 933484849 1013479581 896881856 76478345 247726925 386996439 517818716 544369582 791788243 825866023 593650351 1071420833 870698635 659368794 350742397 371350753 958229370 814539774 397694102 191641287 596021373 812957255 956643691 678318461 337347345 230165702 610214619 367842218 813611299 816130303 780967553 774302095 596260420 463240103 1021117034 471746151 768222487 479854012 267868331 538349923 77379343 469458978 68334366 210002461 20832911 393067935 222611796 918092396 335084444 672872137 417457088 935268743 233689080 529764514 440873772 802479636 306055640 992028394 888125255 814741534 571407605 935929063 160966713 832554620 264326105 692432838 754633814 1045925177 495418718 667771964 695901715 821047547 417651151 634387489 347622687 35538411 529050236 10204738 130846639 1011029389 134012744 181063266 529155171 1029869346 525821952 275616959 1032494383 318489032 51357081 898673988 568449573 1019572668 887241261 426588302 827114451 978873751 904582898 374166227 112558286 917843539 957434314 1053133920 111708061 625645286 265924928 184482269 964068528 1042061585 563421043 463235020 248360964 52265840 789501795 570409981 79708941 352567727 446623117 280469030 408218016 853252581 1016296544 573172742 67346002 145364655 1053471963 899803874 616003171 195451409 397630466 1006918143 533352982 15555827 1011783707 382009427 374596594 362912275 907198364 308259375 524426909 127376044 839712017 877783472 781885010 601381588 428073403 1063029066 645478305 873141978 5684679 190092735 550906570 979230437 437052066 67461060 512439522 897991977 850087004 416100693 60645278 287901521 601882144 297046015 729807214 937380810 993947381 374964600 595260429 991169104 625211791 314887015 319023720 386563805 965912998 926919264 218058798 960724970 638273593 220508071 759365284 346390374 166972607 854891924 763196571 22944825 141321802 115310956 875490723 81151622 97415340 836970799 48686042 45689061 90102456 988166671 472808889 100981073 383279439 238921205 659815583 457009477 373387657 301067143 381940897 38519854 60640929 671230157 636362425 99175998 399428293 152366366 1059034414 6094735 640540771 639120517 259211655 487427519 361396338 332022640 571876987 417384007 915956965 62808731 287713556 443618748 718309557 206180974 176435545 846076116 741007375 896386783 853948432 755077073 5009159 277662086 74660129 503029656 785072773 800483214 247863606 256574560 700006508 549815555 155915370 600395203 1067745968 991001671 12369601 809128571 143492565 161673601 366104285 902193621 535330448 391974652 762307347 337886400 24628924 364496462 860506127 151198117 425085814 723446396 794557485 446581981 514259077 912738146 878181645 154819910 227613508 220045343 184913396 716949786 163086984 566872670 109166554 878718232 695972384 325678393 459494588 474493091 762146472 373821190 230950373 687945944 680675263 830981486 995058913 1000092682 1044753793 171967471 752559220 200825333 101069122 283280904 756596618 412266440 347080109 510342433 979357199 264935132 968564527 714804828 1011880063 15796455 138948044 907837198 522062890 723105116 572448442 275391040 891798887 93206078 459371789 116538556 713013040 836557601 1040195429 576129406 961735471 192108085 620403246 528118805 741702356 291711688 187098115 988496477 189744633 189158456 987319633 875988281 793011874 956533975 426221485 647073738 273036077 426413657 959256331 602716347 257947776 791869248 782141502 565802650 89559693 433700293 99929548 268238054 676183070 548446305 1031456495 355713471 308956637 281450846 524611187 940723560 166143605 92066511 655340078 928897979 448352272 431886168 314757484 452845274 654732837 958360947 861727717 500099806 719855780 648092050 146080235 847760529 253714996 1021644963 109325555 484836093 242737538 934339015 343471345 29712283 1036639537 576673262 370112791 960920935 331843895 322401963 948780724 591847859 1063666108 85030608 982254932 889860034 465708766 404055827 176897708 263280596 790116224 308315176 77863088 237989143 44843919 307577461 128427139 158589434 419704755 221329197 455564842 431024598 986751922 424898860 75456722 52920180 174917439 205617501 1065982613 100515537 744807275 26354411 782162339 719023505 825967117 551705677 27148360 1042884827 99498430 261985916 462195989 337777865 587078774 894851563 1062887481 591767598 732513736 292183164 353537883 384725593 545985536 553357590 704171991 437582053 612710261 601372505 448262576 812366463 479567876 724979837 142646441 1073007668 868389230 190933369 965715928 821107625 31462071 533405315 667268408 993688232 986731367 641303285 137808990 78941620 1048830504 604906246 125140241 81878311 674398861 212693070 304737127 1023238201 538934330 255112240 518140224 656009154 598371309 806382356 149343379 637485157 427605178 179786699 73250785 253963469 476527888 737478448 312025582 854812818 1057429640 576757045 404567824 380555467 940552086 478397755 48284322 844467929 916829822 121880254 732507769 145083115 104143385 561913981 1019946112 371928858 174316434 923504446 617520304 820997678 401766589 497097900 264453306 832146314 997414697 900821750 363066804 462529488 172845972 1001750187 78085425 394733507 73150206 1018739505 983459210 109555829 168184572 415468781 878245667 166250951 1049089632 67487425 73595218 66788780 560874167 44303257 777617511 547734373 83873064 835522798 391834507 540597278 439969032 885225972 216077092 906498085 1042792873 217324661 423498919 614625534 2896509 887603767 540582779 384315680 525734027 805326546 584048350 42237573 80662827 180266260 790887926 459250405 425672643 273319220 699824587 433713786 1032711851 480351135 201603715 693574267 449585066 92936865 435908728 998314263 434199914 211930061 763259049 346601271 934593086 829691329 622935813 470691074 334960632 886151118 1029972154 339331529 488419384 541412520 384001536 685281175 1057307359 1026766125 235426064 911741160 820361692 1064424011 540757739 254868651 682706221 175396277 142946486 1057697148 782880078 371729270 185064670 470411127 328623334 192006497 902669322 612516147 21640835 847694801 103561061 182893965 534340506 1051763932 647235040 1012151795 403088315 388457406 501793939 647538600 16573564 812459595 116637280 190363787 700554117 440831944 844962927 364611925 697907747 237132639 68328715 155558603 296924121 24071965 1019925295 472013791 1066962542 1049936025 289085810 376717504 521709717 1028845250 514645568 645962068 223086554 510759511 71570977 918902364 45825807 989501428 654073047 217668840 829362687 599897078 85745296 945434645 339401423 76734284 416968158 988130707 1021009657 219085535 179468673 403738872 138977222 847361455 425462488 774188832 781961021 275899891 122758840 363914261 490402349 907123673 69237359 930216941 415676256 23694352 15861442 298876166 298256006 577436226 130895077 539441674 362491527 482221407 547940429 689182088 867747737 224878403 1067143861 658777654 145820484 375234335 232469888 111507596 573520296 848850038 92441569 1016162895 850788609 354040839 611579123 106559371 916565612 141189181 396688307 1036947658 553982745 849219706 1020768058 499460522 439115115 789229890 456829826 864187549 27290206 36894006 853638282 964519158 717963773 1045961558 48808140 54831508 254102887 389858952 772927702 853701279 517264410 76548721 1021101437 27896409 182763485 617988317 612858871 1058216385 523972387 492582582 479328797 1056195283 678792270 823694074 748604402 259032229 1025494566 986350895 51105991 956797698 290905073 293191315 912936232 986114103 917516593 267289432 233131123 405933608 124322068 798079259 393391345 431458817 305481371 899565314 166504084 909484985 483718935 1061109406 163022641 884788237 1010721807 740989597 854988586 947022500 379932290 547408415 308151341 920086412 1027813088 382341468 258797284 722282192 1017595008 97130525 287633693 698361474 997171044 650950532 258514299 882724191 436783193 62283104 891369613 825699663 72872396 763294082 180669384 766037288 280407446 367385712 895816983 650391543 1007470715 858542526 793028971 1039945734 543314475 825023627 897540665 826314205 259719729 117250429 910704323 505176952 782457382 945621959 360783580 1066644988 223403708 858927569 714288467 1009783576 252767556 847907202 254221991 412550431 200528126 166681808 767988096 990483857 39841516 165207367 572666930 547891587 1026367896 189963694 654276344 532521679 996669243 131539170 486007942 835422808 273787882 97588919 1033003859 570284712 439207872 1031801667 281607311 643272955 1020653384 854843281 550901346 132656259 483621551 38244617 111177567 145377521 98696618 560605319 274122845 139980164 984496807 855807749 39812066 409097422 1061164447 216400556 895146776 836344436 840441739 741537766 1023123489 634451331 944733488 1007154623 436413548 854786584 814453312 577044072 289994800 148699191 530680748 782206903 808351213 373735734 32313591 1021882032 783430724 258811674 758602497 357896361 519810911 515001015 947386717 880735526 424303078 114965297 640173537 919711432 572871486 304350802 23458510 135340048 582521993 334951601 636643444 686739450 292722095 1004454256 271440905 811227883 91702886 825010640 532024001 288853143 232080957 343542322 542074733 43319534 1010792231 8785608 513052554 213352632 932791449 867795417 73674271 879702760 776455333 659298113 578844742 7220484 681074758 914715520 707088369 722304102 118252926 626117770 929974507 68612102 528393273 145048492 310672095 420597650 871588369 203227620 509276613 736091781 536431264 590713373 681186224 594740514 994488659 759586337 529784795 322705096 247298025 788315 954987643 142326007 983559566 775235938 361774549 519590336 454147492 894152961 1018873836 777087533 480247563 111652657 95087232 749816949 219697975 459400503 485713994 267125892 1049963306 796408174 11356370 426470992 711152135 616841295 591620310 87505574 307446612 599890200 776557733 1061593194 800391079 681862256 404489625 783995535 95427082 579883636 788722553 756581585 745209758 921043428 844492365 366801761 142114796 465477981 999345422 148111398 260343672 763436223 299225484 110244462 547688911 505642320 137227160 828227371 370187733 138364019 588422864 363022018 91216096 727988816 859008907 709565102 365772867 761653415 945337362 966548025 596350942 224505328 720213978 62083630 819728943 679831019 848192182 780571868 943071639 1040295960 886432455 309499899 481982318 199074249 460574448 699060909 808445224 516871647 1069912373 1070167783 892016343 532503372 163778568 1017889023 413034736 124544376 113608345 505770416 582924559 968387628 580923356 498943301 1033686164 890326633 731581898 137307988 26893186 1060441743 296269331 701888381 845805321 915244802 259070269 664027048 36137347 12275880 218707300 585521216 265956913 728114448 308696208 602568019 625943449 804413196 558212844 378696764 763717810 270576548 879641707 344922802 927308123 250114195 606979929 668896180 1059842119 681981859 324682593 614279750 540298966 754785632 842100203 1011353768 687778462 720834988 340620631 155723825 785677314 428314033 745847625 165596622 605596959 477227038 976505295 312626147 500343686 664457974 990093860 876543101 278496468 317474243 583425503 260314288 313894798 56214800 695349501 472858871 715724215 292359906 51200303 548764882 145411276 704951106 436946093 372619905 907995974 1020522084 1010398052 884710280 657422495 352518840 951967516 921199774 179019243 298790379 75338573 4958279 243366305 665455719 896935060 83558680 711924870 674341110 9562194 756185320 51068547 638382818 695309303 675347205 226744715 979394684 24688959 51945943 17985837 323696416 952194005 959285473 502269931 234876252 429737134 298500257 692999383 532247069 218866753 1061757754 300812925 67693838 71128413 496045967 1035131142 981369237 316390515 907329553 504332574 220628560 517360240 749304220 837161561 448835747 979530832 367851616 120207817 732863538 999688397 351445940 478226875 868013754 864540052 351035384 628831802 737899954 1034372611 549440032 573502632 866860027 336263033 236391037 166562472 176807549 166001594 9331930 1024597478 944836143 559728210 710385083 822082162 41479255 860869396 506888113 144729106 704066983 240902477 1050697371 836931292 649624816 1065519128 43357315 629932050 845770369 209462572 787589891 1051073963 690787041 801017061 144203659 619378304 136594640 48553318 427950101 1040218134 792205583 566084637 975345465 352342112 28687786 375879501 620507998 159434847 105004587 551888328 392521718 1048701742 805353588 366141746 1049166428 832988665 643116603 227362289 896336923 145873307 424257283 972498356 547623750 824985742 749927347 98869399 1037563107 482859938 823940131 1020493021 534711115 510712188 693584272 813476131 170141805 372345514 935472754 929175834 728918971 1070867936 2863248 604466435 692693363 922136247 51180875 379574895 394703752 126598337 63543302 1068191110 733048571 228006909 209188742 883339002 498556717 482400828 413790137 933916421 916538990 81746834 764066238 110730364 940468143 1046908065 273018276 233484975 106678402 929570171 12147951 652172665 831410084 83462197 652868412 125725273 282278158 189399373 730921814 162494896 199276337 1057381644 609777583 190502394 167122729 196086967 483188272 219639648 420368083 493415623 201541604 169486692 416885639 229372078 816483546 139291776 46977715 151434719 245103392 374329147 603082232 310274561 86397335 50208490 654718532 512059630 492641859 340992310 1032470372 756800562 958406239 158163447 968954202 745912831 962836332 445731592 446009809 365295464 1039376261 690565908 946689046 552880045 21948667 682517997 918559860 667946143 325859091 865901047 881108300 347911671 591850390 183883339 1042341207 360321393 530940626 740977425 652955265 618357781 766928662 158042306 797947068 445919934 265749825 287343744 559410975 91356428 202585811 442365827 406319475 880176875 199043281 733324755 672031932 994975093 923431948 102272556 440728163 650556824 43332221 977204198 1012101484 171631246 618404788 546886663 120797699 604251187 951137675 728542827 141567849 538440771 67752045 86955416 335236846 673865050 405461273 976412351 659126392 826457606 360378393 403346432 41205646 440151626 799323356 411646078 172812170 263930122 91587446 447673958 1034093248 882477435 614095569 319329611 406493256 661997981 74583803 809468799 122202910 109631987 961484521 193848088 869123504 30409673 1064049257 764999003 186698783 419592916 237669096 326967129 326852634 906127734 677929303 160694219 528008177 117607110 519075620 544826362 403870418 1031432936 410208526 393166131 296585041 416976709 432037237 411758695 463215698 324267467 884775881 1059466579 127932605 1050753723 648554809 829928789 152658155 589103447 940425594 516974196 942621229 760940742 719349966 209658705 962669722 320969289 258782593 234674437 384518915 431055118 847166128 228145544 944227039 733720000 917228554 876194829 128137497 212058143 1035908999 882286403 15578178 211620442 208709250 336376183 56351571 535624285 690447763 869220930 580282926 921235521 337943896 724821174 1044525011 73943712 143379539 221968917 94817378 984480609 54265861 96304446 886676982 202619091 185256904 71120893 85496858 572210717 988683902 953467787 117091776 495418189 598540676 387940639 681702007 56202091 360059264 138882323 18620070 852703804 447972194 365484108 787276075 16465897 512464058 1019969141 582522172 33860038 116358014 420493842 898143826 786240490 90928951 301766281 454627805 864881566 641398301 354994763 66042036 752939597 555903770 410405383 1068179336 368101955 93735286 874487405 562457725 916196910 510246184 312641351 145354198 704149738 1023897957 700760069 415948992 931814785 284213635 977599623 917135204 969864933 186874807 1035323056 273697316 969257477 601700688 498537244 28309108 299754539 261969808 857801283 257828415 5156450 55286483 24547859 263450479 990804951 460541034 326690684 1001338980 1009090246 742706745 74782047 698419826 886006813 441363988 734930608 500491340 491313941 796555634 805487541 224205324 599831422 248753031 132407929 786439126 564031225 588089157 274442299 191162564 1016853532 468010702 994659147 1073521323 851704914 58404985 1018692974 904691400 94858425 45544586 621816868 354474144 983139606 54016745 811535782 966825258 151895276 102415051 810628242 216665297 105704957 548250172 901451792 100137271 1023969938 44851396 906965268 206845156 170000071 235823929 510772730 484137082 885993752 365274171 502895512 387349231 513335959 207314345 497446270 327540909 571545906 467457882 606063858 734409552 1001389322 842268327 513170912 239979263 443294889 101091785 650235584 27964564 879839322 379878137 113856562 413456614 148979973 763225878 506661178 152319826 431389977 1007665045 401696176 939927625 512587677 912975657 641403513 131492088 948178104 103228377 464591364 640074157 967172186 426291240 1052487569 473709525 769708025 872351582 993209588 593666119 371198943 219195042 260117347 1012856543 197144435 645009622 766336194 799492542 424896638 403011058 591543034 734575539 171855887 251376854 614705676 181965666 663718369 166445118 538545409 446624062 36214577 975570127 951155736 87911972 1051508925 517594540 106911077 213386701 276847951 799178533 715390769 203823643 1064831821 706783853 979589344 724037471 595317646 874965658 931487609 958722171 519191415 111323880 83262864 291001232 4831682 302232376 146853804 1060287583 538437959 159269934 807860336 526475350 575998577 582023867 1008356770 976431606 661119727 622519450 138506194 1027617666 808891196 986855818 148627988 655399272 789058462 814696822 923448039 901028037 76911889 80115738 559851652 740530549 982810721 934271061 33314061 667961857 257092605 826961197 1020532047 780494476 649936452 88857872 947621942 29049677 466663978 593810337 833687237 751716468 920991321 980862002 580376687 115868882 692064627 607282164 388267277 721775516 1024241672 440305568 826518233 835007486 412634947 103368088 978312776 887945994 549333769 839784454 150940151 1007650020 339735572 462980192 67408164 336837911 116459772 268593185 512924225 593238487 1001152080 47018378 986259201 1004873656 696321848 35599773 272355424 525807232 535242033 1048145208 462363722 574169212 493713977 365537530 40110288 418734513 95323498 346317485 399194574 238674312 10954077 528781931 857247585 564649644 159510046 476727323 512134817 983163257 229327537 690486596 456303734 500814858 368535934 488600653 610703187 295127450 569363571 190632696 658631624 663245058 439605044 70252983 4398827 88594985 108116356 725623146 592376300 853422857 247663610 1015876450 1043293686 439019099 810198619 960375486 401286122 336672303 1030010422 30292927 820589379 826268320 727584924 620368448 14914068 713122198 952599460 541810268 390266351 292753450 778967598 889319718 1073317695 82566406 691522343 18868971 881024323 346628898 709656882 744822520 448128116 720067466 219496784 653488233 791595006 506783938 771931296 884356905 654728784 109461662 158754804 94917186 315735537 13975010 660742303 1068861602 189378571 722425845 5321962 874560734 417827718 399889641 43866643 82419028 716619423 945192647 291597120 574648283 250331195 443105351 164446349 360667068 702081947 1072131112 7083380 643829326 752602669 823373991 777835683 694186062 354513113 18653649 191184354 983052582 1031821243 815011461 717665963 266277252 973760453 591857190 836191008 96284811 125134553 337140738 658344498 1067442956 592614009 860867761 682699066 110083575 315758029 938178714 420586282 558825434 270744914 27377253 508291415 352245382 395131629 909527885 494553575 309275930 311551716 872094120 761767944 375188268 983011219 209521280 509054786 1054467330 997745631 975797853 430980293 705389802 442008953 365200477 434616613 212564824 455792967 847795095 393202895 29543524 546608959 600800764 440510354 827353081 848693053 1001436536 951828573 392292716 502298228 1042400105 235603007 898700909 138450699 364982410 253984389 195928290 921958486 833922355 100735312 144404017 882897045 694631937 457487054 233362958 453461309 97708535 386193651 276911341 237820971 230021813 408286787 1012017732 75786438 427473302 1034718450 571416808 436576195 295713776 29709275 533109247 1001432680 945642294 307016367 641794269 434119719 1069328827 811913629 28897460 200817404 871231305 554161732 162609475 630129608 1028907303 77212546 326346544 563266830 1044911603 71904912 808073664 164991441 833239115 558440123 966531864 785627400 762602663 953876074 350479085 339155251 581518730 395946795 473815330 777983421 555028762 105342972 989411366 948122117 257531538 949465166 496904714 937420838 423767812 29607228 709089407 677335337 29063769 341703891 957027478 1070570486 843622073 368190199 565995428 98953204 462297282 86327184 185247759 970555329 623307008 684705011 738078950 599753932 95976399 748355159 471764254 592938388 636609709 381609244 513003403 1033427679 206312069 32375723 174504948 977560656 973837382 1046584639 724099847 347251141 529831286 711185784 311803481 514733820 643398825 873400852 859931322 94313536 250472572 858573042 631995014 184727488 60563278 599164772 471488802 201862447 542322288 746130301 171345383 256862121 597334858 923677282 945429024 194354340 681875381 627273347 389356886 448632432 635769619 971469964 545859357 976567581 180485688 964792647 159460598 484842094 669751001 603619122 145838124 692388554 475285542 872575609 504474796 977972752 1041590294 631572647 1016217230 1021698328 79553470 985593868 358583653 458150239 56317405 638461136 923920865 937289497 147706793 912908240 592208595 1046376737 580005627 878122496 942195228 931982875 768934022 134982287 425756412 1012579962 881703671 416371650 61236470 18310555 672291463 731544345 179353864 763856590 536377366 185596028 83968683 906103525 677870559 903916074 913301950 669659126 732674434 48479096 794792478 978157631 223834922 758739862 969706438 631867776 904261376 173857342 580546986 506257741 207418273 183318738 775974888 843985745 287852424 415137514 928434406 595974023 477131594 953591796 621477333 354840067 793628859 151468334 888218193 592939084 681827600 435590594 176870173 172427028 60944689 875576497 719288092 935170329 867638709 646672911 66586580 579976019 47696479 367243890 134041398 34464627 695455885 452186317 918726650 927591287 1032809899 344241486 655888040 989723963 509711271 1020390472 717731077 937136914 578585412 143146875 174100467 352980082 1014588614 397671572 705365696 116864766 905904511 350180648 1042108657 971188157 791346238 788210674 1034951881 587171384 162674333 133792384 1073242093 168180902 230864978 956837174 843683750 881984834 280918115 566703544 816441129 649518148 826766294 248446326 1058466914 902956499 369832556 198497583 313890816 23712261 892519368 154300660 894047349 848470146 263837114 978914927 112042011 392314919 764654075 931528764 764398372 699899341 470079793 633303590 615542279 317874311 157123050 769358369 281938607 593020662 428043320 818657970 537763437 455739000 719288564 641156687 501462945 525570273 695634859 94048946 239000561 21143503 927534094 214092115 1066330870 523363597 973946345 95138056 823976763 849731845 837603016 905347314 228736159 599258934 223881151 707265878 102850058 296551705 921318622 307362796 484261672 1017191554 605742019 96853524 816599851 271615121 567584290 641282818 474660837 540194321 519634660 130611022 10142615 865883008 1060763832 186564848 667360246 103726920 767237364 990715846 40424089 65912116 67191110 579237297 405415111 459510765 202058464 511974936 219588230 600696178 553388898 430216943 375853429 424735879 311632628 261037479 411856450 703714014 1067495660 749990322 590847226 863230534 370569007 821448797 955220725 24796986 1007034029 566524114 470987781 231020815 64582572 894177789 620132464 781494661 443789319 333349151 571873914 31289305 323694836 1048276758 121170346 492855763 533014172 420328592 701490610 265085756 613649065 814244201 577539918 856666879 491547857 349308644 490865857 639652271 360725818 640896009 370459950 22995740 834620109 872038891 31570299 118982864 171138412 972899421 1065474969 460609619 341408551 463847694 32726768 311333650 590612642 999128547 302473277 198095901 1016048216 230498568 489512864 174700598 620912328 744741152 673788428 827347717 522859664 791219866 557506122 694293301 190565061 168525909 366377389 535944228 682402347 955261663 489507707 236523614 73663018 957303649 1063517002 1071958680 316620382 177451566 114370324 985503662 756687624 728029463 422831103 630656555 431443557 501412707 699232405 874863257 341923011 476374422 510419389 15683809 485840477 981067264 119322307 560415115 285479312 175082969 426921941 755893076 1003237529 437406984 389686409 571238278 671608383 91083532 921388485 221721389 514765160 575427049 1068075600 615746884 580521876 479498077 1025394509 365603180 999955389 400390854 966023740 886861695 978559668 712057554 852158094 259138645 352335694 1066754608 962815759 184858627 265740087 569798997 873088947 943586328 971482955 533834606 898373937 838882623 488257620 82835263 1018806874 855822040 139396381 439364632 364886225 400139869 712865712 264298613 619988179 890143385 990375072 555840411 281822018 956180805 1001958441 970497256 663298170 755566293 636798825 228772848 145327978 313439603 7141240 264807404 73240862 601874376 171086887 879781355 419960946 247522802 671213609 911553959 470463450 325054118 1008043771 377617995 610716933 704530864 257929255 358792940 1048501234 109360562 851532459 772197080 275032502 519193995 17831350 844462579 821944605 214583630 1049918559 10435973 1016531159 264249543 403151330 1003099694 914282081 580299716 202471984 808891180 713857540 957686243 851171351 755845171 802801233 162981334 121633027 576842995 187634874 379776878 935049577 1014471780 1047269411 728774504 900581282 1378922 23266316 916831636 140545776 590951904 580085269 300922256 595598204 59955624 673505874 36342131 1052601354 39524777 115496112 630165218 72974096 501046255 628081848 332224217 798782 477290838 428885454 73756155 19464204 614734670 559652537 287880820 516313848 956295750 595007997 14619033 459166998 122349502 34624667 815556136 933629670 8495141 305862126 197456115 402094098 968322990 996519282 704326211 624390071 478347242 669802055 558776647 315597083 986558898 502474635 991660343 966011385 368461688 50032219 621519966 550459976 245815656 653734544 52081459 942979892 274162110 279465786 17788082 85372146 197501530 29092818 896223985 661323651 341609018 590840156 614832299 214254505 589125308 115755769 253341703 397073322 1008106148 55225320 841030288 974460976 97402701 191322326 500333092 917095418 955534056 794579149 497507898 789766832 477406800 1060672705 761761885 492294369 682557299 615452981 981762159 235000936 277007829 878970738 797928822 584488184 399336033 732004922 430866434 1054597244 335926163 75431773 962420381 742977352 895972616 295003928 724408883 448425022 643149092 967667836 895396936 879859509 105723955 272716579 931802764 1005034930 102906499 418070179 337088930 1024403785 347711130 687078759 431030588 710564180 164770928 974601291 440222734 779503765 1002506396 42580756 873681325 534990604 492626573 672055450 640053237 535664511 400313094 955890888 227127243 290256841 560269446 664030075 66691441 387180421 306204151 971337047 277026689 190042268 654304797 488530621 1070450041 470394898 869196333 638219871 208044406 524534086 944214618 59430487 505753390 954507898 187318944 395460094 620633940 251920800 589438511 174364689 500096594 406892178 60366875 1035510654 768867633 6399701 819103334 276400362 195924881 325138827 743848997 988949203 933432328 171386369 1058083322 270615386 633861926 490893180 796908854 797542975 708545622 314243417 92085547 568566271 603897361 199785480 193532959 259860367 599847919 992015833 498510365 968950533 819248032 872449290 283140289 357643517 151400777 1025933459 836135851 247143995 947794385 844563535 689237933 110330877 108180788 682677121 869785842 139354127 379015341 414592315 359753912 1070449285 807726127 490298286 201938586 661344570 424185615 292402822 34565921 221183776 266966319 745509961 133010850 825397888 963104731 1051135379 737203473 872640170 549577644 857649134 543261822 755234418 635162273 891996578 856232634 946088576 986637527 532016407 501775355 442054787 204960991 719740457 280024581 133643775 111070256 488280274 903820248 999170477 342947921 888160652 526146079 662286474 445410930 518270056 333288498 718932349 844626781 689948531 664395625 141210301 396076886 276184829 649171205 275548767 605456377 928597202 156585799 694749227 447238459 235723338 412796763 542767944 222413478 939302898 482158791 1007139932 874735263 654085768 554444848 76274512 371120962 748204464 475605827 332498685 974003712 1022234400 932295061 321491819 683667917 876214456 620485477 697003984 585827179 525729486 449178897 1033304364 424752631 1005714502 291333001 1031978950 123749465 293136057 1062672654 68359524 206891670 866668650 792389813 470898493 513592115 79869510 760700584 539548119 744054678 913447541 787687517 997662183 978417044 873413439 1005898286 133837077 287377594 326582505 412611776 870326383 628889321 160669678 950396202 409694690 299284635 990574851 272771632 1057073814 952171864 974520516 527377318 529279559 606324632 267920447 213693899 237300435 593052752 1031016856 898485714 168895700 260985780 738330727 997907646 171919530 279767610 150926470 1036613215 758414953 536541788 523012013 578623637 525928513 556689423 1030870339 422550144 34713592 203969714 683555874 112269760 845635402 359766068 770875679 431942 284659666 767933316 669520422 263963548 918537380 574698569 880297899 834155456 291176712 887700227 245738338 692027625 275554619 595006877 259356959 234556464 890333575 932416324 592292346 506489559 543267579 913142743 447508245 1069955719 977622493 160653027 429300229 37611547 410874676 343479197 71414061 1020439584 502164470 54301446 935581884 108499880 463816252 226336215 1054581086 802156204 992044877 429446204 850911452 185845941 459643989 982290494 359249425 838596097 526136685 570452114 695525403 15360093 818528240 380849760 750622605 446306495 154857219 734824367 1013707075 904433237 29912962 267237072 51285409 200559932 666751012 555558533 465239065 756661805 347147907 556990523 957941848 127970621 964401856 429889541 203329244 1029969559 969332233 1071105600 1024698135 7548275 349574232 363512175 562188523 794828922 184745591 283213741 905941713 287021513 383170687 340723662 1003165930 289118525 615986450 363283996 526356231 665664018 441536084 532432204 741054194 958926851 349893738 747244434 370055579 587754378 94842480 932686538 223387514 50450919 388680295 490273176 171937042 76655408 346220809 940038053 620729967 985943713 1021306968 42099584 260499747 189558121 79198500 348176765 951856305 636272718 442971656 198706720 810859128 86713595 204085520 134907235 679111088 72835517 731220600 286790526 432435773 90441365 930781371 97416043 334032272 767876878 475355584 827639952 884022228 725437483 520630807 1051297848 543551092 467844940 590455329 763713352 444706579 299952372 989616936 531357059 31483087 553911350 629347845 628779507 494499448 690510631 326728012 216110990 370006158 734721962 312988001 626685981 904672893 396539546 398566091 367056069 983247209 101395397 958220441 50339742 924892771 93963171 268211768 648202851 771454783 257756907 749937473 753113886 72192591 72929881 864130811 391636254 148757017 443933577 373521109 53536837 112414144 1006929301 806898880 1026645918 467826058 491825284 582085331 553409433 300033765 751410226 1032300790 1037183717 984964645 732455158 556958737 707121681 90900973 76337994 392291340 777276806 656121905 790777754 727116094 18670940 570414043 255452348 50166258 53595178 1007956061 702241723 931324006 963811260 283937446 662064583 873745590 892882398 265646782 701924887 880688170 86223630 835081155 33996969 211298588 198175834 405799962 992565605 595757940 141734115 623846280 273812238 572127637 890496181 753671065 635310346 965305946 36544182 628175456 974195533 837488666 503826233 164209331 974923491 139514902 547811317 132539321 92624423 116783344 713869884 130391128 884651109 30382090 403771433 125357813 161155408 893628653 595264570 872412615 146945330 1000048575 731936698 29891184 397903718 1050196582 932103756 701604117 345786991 669444668 62844491 10056981 748888311 150257590 401167247 92435289 323912812 77955110 428940682 974035071 680296038 660905678 904157204 896192924 647001233 790297036 412930390 935833450 290439879 674621584 229338328 404245137 865599097 442583380 389152618 997482337 473465264 1066317726 104447265 147773417 846678282 964634706 334383083 506510859 998146214 529012162 101959220 393208304 582565340 858506998 567821632 1039919968 329349157 991249456 469399870 34061482 560162407 280904624 388814393 897416811 918198917 728443090 996086965 517400197 473857785 348150518 743244773 806803156 730942350 839469956 54256025 1048103174 482581884 289668289 718791697 1069317749 666946728 114957484 635369187 752199220 424324657 620319751 154748213 917462661 231154083 266646906 849945480 216478594 5276034 415474271 1063133267 992611608 587790852 759694229 737250486 604279309 747698584 741281510 41548289 685574557 91129218 804670507 737805587 761521204 1044310773 306342344 577612373 1054092323 155475897 362362959 955909129 547355837 620425520 578303683 216607621 509975121 240208527 395260978 685330224 347036204 776062763 742722467 664854138 6892109 662600312 255333488 477028415 274317991 511089201 328886697 951431044 654726247 492072310 503478155 372969695 987814240 10515825 741233303 28119633 214471243 539917086 90326109 493121286 573969541 135301666 431374307 856886682 594362364 613658933 242993111 374005981 405716707 980030532 1036421283 1020037397 656968273 316816829 556234752 98494723 212208545 951705806 343428365 1004652326 241081574 1012351379 71171020 855297645 557719104 465858699 979034251 471232555 550887261 103647905 593877223 496730011 276215633 892077948 133857223 352095135 831908466 120143782 482671929 671924891 806759443 981376440 977281270 165849806 791028580 743507161 588328549 636210357 822827484 524339172 742700492 458433396 343797187 449562234 335222421 63719385 566208679 1064824871 928213060 767077820 725566268 525545166 649626717 206422867 853658562 304728557 651222838 1026490705 959399681 1002308779 750062640 1073308323 244377668 117653050 198424725 1059717543 889233002 953782692 353314277 810922874 933685889 191621963 813427912 617976640 1040956386 688464947 676767212 850344129 346083749 819516037 824503421 437821039 422843650 530421239 480129303 980374000 421337420 329480409 755286110 220153220 484633591 752376252 934642341 1048474329 178609899 841384637 53018029 204910569 1033046311 855301604 855509920 447482274 811687957 1009667500 429814543 834305629 627426331 798218213 254282919 777923855 668432333 238337326 225822537 159994195 480315126 477212010 34012595 644912402 935245230 851582420 6386379 172531924 707936452 901134723 901959909 510126366 336313280 969994824 588983966 1007092215 630646760 405280147 560168809 12644619 779896089 176063670 115115063 813215855 693317263 623917528 488321793 524612416 966727042 880300326 424709209 128582121 69431034 1047709859 758728634 115889350 932738140 741153180 469419242 903066731 82274817 350742391 488886874 57278860 1034487194 972953269 354066607 86968423 511491064 778340906 684089570 628511837 47091751 106050458 566268140 955039509 869779013 620239665 518875966 49004720 509036846 824060188 1011986346 160314125 1008972568 146827328 1005572446 191431901 939895529 489464674 1055998897 50612567 938145616 792918877 896946995 1008255981 536726737 492991490 519347963 903054718 1029726182 888032551 65958549 987365861 192800366 432628853 145633691 62111326 851706830 269123562 363866607 100676538 288854647 40623716 977654732 18167703 559422602 891630632 661173214 261220858 695976010 660071186 153878982 24235095 772762176 1051778067 972049506 372875341 919985529 120706196 760625006 288984937 1061952166 826556535 87530778 175647319 144850709 672762522 8871446 574775828 1057540298 657967546 758686838 376020527 133348946 54398726 124948075 188919001 968433817 196273169 886011986 776571840 438090981 643130047 463274822 908639539 797431515 517138112 939870666 875950683 633252642 376128289 57082821 239147157 652563442 777254214 169215743 320401493 847940024 26243199 211329902 786827398 182175840 892994854 1000657226 629623190 812993536 341552280 726308003 340876433 77397463 913068054 297402591 796370897 286773210 499518924 746102694 241545688 933556251 19039516 972611172 1068116133 616260569 684799522 51518755 481385833 766488838 994242660 824811867 835086085 601880830 307754348 77316755 368917071 858628806 855986247 721646004 508663386 611061628 412143203 57684190 991138405 427979591 326876470 10651686 383037103 799158299 828806911 846152953 378595139 987881409 1053167500 41003933 934918793 1008436422 817603457 1005308428 947470927 758628806 488583543 786798107 381982141 437521271 916466685 537335923 168762282 123365563 623379069 432271251 795380029 39820160 52723192 26127191 371806900 625159941 711056766 60234154 733310358 829332322 445152504 854567719 759911229 777463955 794545101 424351407 665152471 140537660 299508359 184090717 852025275 865699260 490096302 660196630 496264065 189841220 915984647 855279251 89390689 384170102 804928647 607484439 974355163 209279782 386872354 363041548 905085482 733638157 96769665 241642548 193384694 121145986 779514630 1005177657 497610053 306193957 343266458 783550759 921927094 864315185 1042213025 70568280 565990401 48734900 943368378 1008292221 579382960 623081281 762054522 575826848 75223550 950531165 448289315 1013189230 901014084 666425353 902186939 698982337 735602481 63596057 517752016 516592902 27991566 760863544 149043585 355341410 532242957 153348183 1051371085 850305652 475034661 220346510 910953786 893976582 109861645 783147578 442664298 566592074 898967829 644040560 735448952 124299067 586966064 857063325 32137043 506041696 481749639 825152720 161381150 21988152 417084372 165757888 496716054 233305309 985898599 694702988 980387079 716084184 1066497443 625844091 723172786 840722484 405106603 511015454 777324229 377790524 292212248 969867005 559830830 676358015 46306789 142524009 505056658 542428162 204237412 136924487 159710080 718715484 780550189 414399948 721470198 805099564 645272534 129502892 765861232 798083037 339138886 896042324 611640992 435442116 1039675405 660577434 746146895 99738160 267265635 897426637 847897595 430633532 40915976 954663453 359994068 554670174 644261006 538833370 158696896 774642845 83120249 164305195 129554975 496598463 2771197 309428014 487924675 411305084 150625598 16399016 114971787 677483782 41183796 45735439 638529988 1035543107 984015592 265433156 186293520 627823470 488998486 539991974 6193259 170554687 938184668 1032233499 748591056 859032579 581567138 899446122 582103777 828722358 722274261 988540711 546880441 56397863 545929834 960681963 358587052 536830952 937871990 969978516 383463040 945983416 625934572 260335280 365116301 209271151 284064674 1009790783 882873012 674383152 314388634 297250564 524031174 265306003 263996304 426368377 944163450 634929839 1017207635 570148717 147947338 917574927 1060888009 445590927 1023176990 77531039 765215077 206878875 389189674 370938242 878447577 28860494 770307437 538112861 824241291 83744245 165399231 341288195 617127374 1026333791 339011896 1012694684 935412288 983736846 955399757 268315574 8518095 30926626 148252992 287304263 829190524 856803154 246943520 827475677 615879995 875969393 961721747 730440486 79849294 37841542 622722580 566257332 613554503 1041644453 631378915 1059093004 513784078 499438967 703023139 104352013 148331512 1031765959 789006597 576112896 267463159 975942625 472264269 995001478 1063156427 944774600 102017586 971295802 802115720 249423888 587809134 344210572 192271173 533699466 696897826 160828960 540492127 616381119 161601766 1056811653 690727282 621404968 717588508 554699961 153788295 647090369 504561707 449386075 370691584 18357660 224280415 398796921 682174546 139988716 736760939 150942923 561400351 202879355 382003146 723602970 1048128681 198882333 921468652 312482522 163740371 599853387 535975465 971767259 1010934131 105589530 581953840 490126220 1050639736 288827794 519318196 302678214 146936581 881993310 698319007 966654210 507098406 298549448 297679675 728488232 374187181 385230406 559558527 786585617 308707747 99653297 864374439 775827917 515934883 683810792 338525763 573729158 787022185 1015288087 792491636 28212632 195056903 209061475 774392673 552559267 740953629 127566393 534362148 789110796 254548095 150578351 159458082 736218873 766030854 869750130 178137584 847922870 162053665 280750198 985700598 585746004 525568451 282221319 521310712 344794178 909986894 501279417 688639426 572140498 85450143 272553365 895857289 806517459 572501503 82308496 415870538 1033111776 283651273 280603511 939051884 921345902 704890192 1020310074 943501701 865887845 195767018 329554686 189861485 709981113 371126905 622327024 974505705 89790707 467532791 932695442 619641157 389071549 574643448 54622439 855266346 813839193 276182614 87571028 276992519 141741147 261530921 108150367 872047712 217437804 844209227 809019659 854581814 611512446 391963158 320777877 262719642 818087895 615620704 366096083 349045075 641840451 827428231 1000976741 206059274 1040811700 1055035176 496979395 17008477 105348160 969153229 143753812 300242664 653381176 916388104 442307070 1057421803 712781905 384223887 441675488 934675425 433245136 866798933 645437649 451017636 350561639 692836954 1062038467 192302984 578834054 840778823 447874050 410538282 170821904 316667534 752244415 290564736 986925699 281899709 12884312 789837949 448874606 565653342 768855335 907146160 1066184269 717502066 839370347 441781593 510024408 654484601 435755556 832638333 135244392 247351030 575153549 924138612 83870389 116225729 697002170 370546907 898831846 126547545 873665992 899671703 139971781 319437143 105591561 740331025 900147371 554082388 233891544 520313255 1023346732 148795841 610630639 1010239448 132123572 787742200 980347288 14443223 57976470 578132720 532862318 738023143 618904043 530945777 954797813 443993534 1027219200 273659799 430721944 522951694 635819428 113429539 381140825 580269186 36091607 459618950 766517154 192303260 274024027 593935178 1004620069 92086281 225482039 9339422 161295099 389122990 158908935 1017467247 739371147 692424916 448074917 591820398 840511598 449837996 324080391 452680515 486182380 1027756750 636177820 998401938 233068557 418957422 127738703 1015960594 688823951 156544963 333529947 285577927 579802434 134725577 246826785 918139247 306885503 891359449 866145508 372985230 102397116 505969044 349735253 893751042 522136357 742132792 931148454 423331089 190835831 827186001 528428114 530708898 1021001957 412221044 681486250 415025894 964826926 779011295 1073214083 315670099 100962176 952113097 715351603 844984833 395374210 595219163 753454115 320761374 44871035 827032987 545346970 1048809770 612916045 1033070438 729224829 903848728 240156216 716816728 757014556 9536606 794402945 503151521 1011264851 733821953 21018400 408473458 515859578 880785599 670499125 1030160804 1012534818 190524780 278171158 551405076 280146975 585932391 887522826 809652421 23211643 579487247 928823144 1057145266 893883836 231360217 355620399 333013563 528133361 540237976 483396799 944444167 172159878 146469844 748463946 357997075 1018427254 213588754 616503584 471651684 708660320 194578553 548945361 535197917 518203345 962655471 137427410 799458017 739424885 679968472 396216583 445256993 950706192 926079090 625011376 774757899 487596975 23108698 416484982 1034960222 1048860712 147170105 80678739 355025291 233653697 465680449 817367207 617679520 954332185 70159979 922429594 982563437 557881078 768610829 719172075 138177465 109847035 362740751 94972201 854269271 461749221 362231384 950003302 264634575 679384981 504647288 665081854 668961178 337680598 995189930 881053767 1055651522 962477751 682489383 429129872 535047752 867880389 177032346 442020380 52441953 686750871 813063597 496838345 1006742582 269693479 803543986 677023603 873380091 787479732 984556511 463078158 41765704 992314759 972176541 586251506 614390786 470123879 90412335 894846470 318198701 1021429572 613537099 740483795 810816463 232332515 677037206 434912614 1009417055 725792023 411036367 345047102 178106722 1071095243 382250091 406806201 999150277 291736234 20399033 262927777 997536200 403231297 104804490 1047414205 213704166 1038586238 1003046052 1011658589 250480748 233512226 241008026 175478176 423760160 865962753 36044915 666277909 918976086 474461095 233850708 262011469 933998357 702038268 489734520 960478486 925666730 830297530 161724802 802308653 70490513 395359920 456970977 257645254 99533606 812340474 463663906 122320426 778878845 281030154 1002528407 744669375 994536014 373046409 1028421531 1030870890 550826308 720550939 632852867 406443740 554332410 518231194 948313009 319987729 435623782 417727365 1043407832 129915366 558285229 957495402 963420278 608710761 172069418 302221500 890123750 1017431133 597076781 758727692 163402221 314484742 785539056 803025444 360209584 529598352 225603038 966383687 365602884 385331825 181565487 731078384 1073136869 867943737 604561586 53374973 930479785 934964837 506837891 1002600389 588943340 440466400 168268747 469957637 294095591 847625592 751413150 290468789 97490410 789618269 760107477 981832514 310833053 443419204 479134587 354710160 723690334 152986357 985660878 182647105 339654188 316500537 688361358 861954676 45201156 975864718 139675586 1000532847 491098280 928492832 792538935 776947967 700558330 353608043 330414990 745318436 221213871 115319641 1034386769 373973613 969178773 1033228401 979849744 658717974 618967272 695269883 568126940 716677447 644757308 678760862 381491884 638987565 496294293 820520398 613839295 265014120 788727859 1044060273 944391912 801792070 87342963 478539779 657034907 149419092 484407536 540232047 931933793 432304156 131439506 685335659 473384029 729937533 499510196 475993112 419940193 998961479 231088225 494659098 482375706 127974779 979027551 541753224 410950340 948281282 994997445 2684000 752498368 436711320 347345834 697289385 295322556 400345930 602814499 342824245 552905753 40891275 977661307 508816701 653343647 396688081 599192136 652514669 921455966 765136445 459756336 166610326 835299688 107188368 831763150 1045901973 850053653 97050165 464591952 783354772 797214399 64201080 662025228 861632581 51522786 230434736 145635255 816051510 1023995356 832075311 578626857 558275873 740793383 894375036 119799835 759672512 226189069 941054778 529308255 69957534 217440576 921394152 1013691938 565186236 875870570 832891878 525438694 119190316 563852940 711379755 51926879 415455134 858739954 1058865754 244566055 106806475 4387007 672330995 100826359 708534333 127870049 27408710 587039126 261273800 878121369 643449339 630187447 139038620 418565539 108709345 357064162 264785821 124492031 810201642 87790421 25228045 108514081 805644402 69484228 316966204 50312788 290012452 209206688 21597146 83367140 804723635 939967594 654936628 1033576312 543886122 300976605 5626307 87425707 738523822 174697809 995050293 495608726 767488560 897194513 1065542125 205538110 287694509 419110414 952412354 158368698 826317401 91210091 573421899 204583854 730334272 532043540 887083502 135398983 52400931 446391694 1011064137 860324858 701643239 597693262 641227578 625130432 597558865 476286111 543853369 839711046 314638366 635627854 767954339 480305719 1044946237 321293975 566121775 562016449 786155764 647286967 699635672 57610614 1072335922 748775113 479736784 413838923 340811256 26292571 768499106 615783081 49020031 565399787 246709937 980424375 715078140 484608319 53611011 70811802 889017368 823142784 540800571 390054224 350949058 116002521 478220606 556833556 230512312 492797493 180118589 521688723 359437446 830360534 856460301 929721304 1051078564 1061460598 310906000 323800489 595211835 878268469 671071986 929318879 744775430 228352221 450832118 562177487 553957240 696795150 192399686 739183 974325931 830666666 679321208 663766287 1064745363 5275103 171387839 677572486 932123957 972729953 302614335 613384397 494234064 133970798 1030203370 821640602 230634979 557335112 1064932756 747082984 749891721 536302145 243834528 413762952 281230694 983233791 695129421 80530667 1037956176 875407766 671035589 23756780 417452478 540315342 1014916667 621943155 956614445 5273078 369235241 955516063 762318761 80215306 590915816 101105846 603816910 943102010 448969000 864131039 717194006 969340089 127800867 662778567 728131875 71076103 601401822 1002411235 2182813 380256700 357795654 941061001 87299885 763157038 986797895 35581706 164061803 314785243 312400777 1072838759 429010754 152150556 769503762 570942491 245263426 887929769 920147548 951108375 646090338 219358787 1033790686 678661447 54866269 551963184 108680156 970505015 767536910 624656879 511739982 182230761 758092950 814205355 40640642 591437764 45101600 737028348 162416424 1014832916 38406759 72983533 209718557 628878196 511445929 735047472 576812946 717766387 999079329 1056526385 941360043 843639075 1056701732 817349451 975655826 120876415 233512607 992234899 295689265 219727468 169109947 260585499 718450883 73505732 836965066 385907180 188344376 668400018 896613285 185159410 325676178 245462860 659231049 179707695 255151053 207293852 170812293 674583186 151116677 739120023 995067908 897763711 674108885 437985448 593556385 806975524 274612834 6899160 985953828 291546664 581178379 602797399 1050184590 466055348 349404764 685013308 881539878 914825580 421321895 360608934 398334139 1066229453 533122297 67584693 590303586 923199368 694161018 504247827 7355264 65967189 692872304 712510184 729220839 39126357 466018109 134919378 264694864 31017348 596597437 917928856 1064527277 905966008 1000571500 351954754 154909963 836970398 90154580 173771333 40951801 506848266 267184599 749322911 1036683333 732893479 565308721 135591693 915591551 1064521661 507658909 596814509 83706447 374784675 646256280 31795521 67481070 8603404 535684958 616818032 904524484 226330550 464073131 758791742 613903491 222413119 1053326974 2809141 1023240094 85581694 967743417 359197736 605109627 890771292 428302993 131160319 495762755 732384285 130321799 207349582 206532216 155463514 12192655 940390651 532120271 1009550264 729757375 965994173 8238292 207976030 272056099 341984765 509068675 355628856 4283156 243179036 95319023 1019181171 1046764210 82149469 57126335 131483969 488503268 672729682 1050980461 63181166 736722104 148206924 693564064 830108179 438772818 916672692 537683222 483401563 484385355 665852265 863132653 893831270 916020695 782580212 879837381 559766521 941957458 370610284 544639040 772692521 822041232 770387914 433879887 639754444 316767028 371807064 545335198 920710281 756204318 666447923 954032149 90812318 738296172 105167510 397081451 287244715 737014889 196093284 1000883150 230619652 991715092 455924369 602691925 989557868 28540084 896974694 852469994 577953800 499064538 910784484 633639303 862604137 637199549 392042518 837172808 889286594 703641451 1037991786 715212393 1072541665 120681072 426007220 662571620 553524423 383183365 184744024 717509453 143419607 711831168 1053490192 327056378 346178995 1064247638 722876305 796032388 416999773 891429170 522925607 547039056 375842729 997821918 317627577 794753681 458769340 925700983 911385942 899669231 786427671 7258 971614500 8966832 793387009 520809149 423750086 264108467 32976352 603436518 429501478 204878162 228026175 435215903 807399774 12139888 936468736 504747794 520518841 162732082 709039039 124741151 558330241 40825997 240707114 1039482377 435150450 898280926 395914847 649838119 45529792 343222491 535299597 73795170 938231501 637058706 499739560 26512631 982601080 271343049 550377326 826920376 76196313 925957809 310418439 102676992 1010762662 878413880 529029922 289625730 60960608 385554973 142589630 807794766 283804929 216644837 277994180 49434411 955914832 291764944 813705572 347765953 933428550 909632644 870253062 919292362 326118197 331358264 733087899 57245724 449471683 987936447 594127466 791865228 374422151 479266178 118066048 489749329 502610276 815222185 1062838348 802087705 681992256 726456074 590567729 272887470 492872547 720244443 780753924 999934625 7025748 663487382 138311629 282990318 142765906 948157832 105825463 979865124 529580620 203108935 627241907 802451610 996283361 980305460 900047807 39104678 805450913 1007113307 946982084 781049544 443981090 1071165862 1047427963 421841918 454598953 952664894 58220717 124230430 308426601 709390605 535541126 112244954 450532585 925235734 999474131 103702141 686127186 393898564 302930282 584412009 673147525 226947046 620429981 311281008 190668886 27631990 700869754 957808906 168273368 1019172702 1064652741 899570768 493996208 294149601 624803068 242983091 695459806 1038426861 231149578 697915270 816398290 932062552 81004481 969747200 774410221 569671250 222367991 113323902 684204132 618279767 982635616 732673417 880382659 454073366 870165981 821043930 153178752 327023590 731318136 299000388 237940116 517046552 607057408 933116706 298636972 32770812 860770487 394509668 579567277 6766020 853499078 135670328 1031547448 676522153 1006813550 318332698 588563177 828332982 778417077 184942504 310350321 110998982 47374798 1020166673 377555990 172584325 627965645 841721503 898982491 1029142440 355219395 901550055 341144316 670589052 605055373 686183472 162998183 1036091820 146183060 844223013 261426899 985843061 574712675 1038652733 868360810 975449860 623981162 828780641 116323172 355296136 800728196 665142451 235565231 146781876 330601344 40600538 140792566 979345180 307526356 877698949 512055076 527365655 349560570 944059128 874546901 870138355 331708976 165897150 1001776998 178552081 122561449 1011551081 725220772 1620781 688115853 211546268 143280668 372901104 789422331 604294118 1031779460 596402956 49145832 585588744 158287636 856435880 229667789 565043803 320746205 221388808 770115613 53569812 663008500 1021757266 233031137 797720037 169785769 1018425845 1042243688 253956098 687385125 65826461 973255982 382764786 170084740 53394138 740342910 606369776 907968331 579927690 238535384 914020610 44618731 973631092 858349776 888168868 1026797987 125551439 589045561 790923090 296953186 102667905 323409936 86661996 447956589 1057222570 334723014 656850015 761281083 568030158 892563749 184331358 725815344 1068883182 131686316 984078438 1060655010 653853658 568152958 295446495 773873658 968034751 1072102078 429207504 206882516 163921339 47557389 251557992 245328641 76867558 770974742 1028663133 708365984 352788438 23644899 256097915 834429492 381110059 823972697 252328752 354005347 27319703 987721560 387498714 377825541 358342072 898056936 712492529 91164918 628477675 694984056 73591025 164488517 720129475 976015685 740330799 180166482 434011569 668090427 1035741622 1065333615 643102469 944684386 76590786 435450996 131690305 1004202200 414619362 246019277 109453337 109019017 377180130 343114384 1002615592 674827151 511658089 406898055 776118492 775414715 422955857 25177841 877409456 780432475 637439426 374421694 194317369 881261519 165350006 943342001 782182498 736731146 9717271 590306236 707715907 73197479 168254450 352897402 167610200 593657676 764534489 341680950 836058298 242426028 152344935 835678533 914787293 424118444 869361136 871978448 1015788278 661835298 103594945 889173297 871067232 1053638492 210380659 953954483 987259841 449360806 759689767 593320484 335517179 775162735 598774976 677210809 678343878 896049473 1026777637 216037788 427358553 957924260 724629330 202994186 846078720 614387343 107512769 1001793678 654537755 971606010 1021430320 773135117 332835172 192565910 84222991 582209092 416216536 908917950 976484478 354213040 844737123 549032555 930039261 113888999 73100533 217174192 602068733 945126160 16153953 410825734 646145605 952770663 764225547 559510631 127224881 1047139852 727505 967122556 189360237 267996546 473392187 391188258 683442104 367274261 596758806 131311472 615168973 456624853 15347347 893249431 867197887 1063193150 760290392 487066350 897849783 259034233 625587388 76583807 401355734 798272853 614077957 41219208 176110038 979901305 714170828 318222193 389849465 790778057 683352572 673632979 288137788 115587372 321083973 265451010 847491382 1048398485 886069420 586927600 412127184 265589123 587409184 139601113 860150294 1068855459 641218005 939797458 124163552 26598937 628749905 390102789 98222953 202144338 634597771 375893121 93603764 698221127 122939713 459862291 554074963 505024661 936036274 71678162 748370661 123438487 680405105 8884517 931972979 687094965 543250655 724775306 979974330 251980323 893352527 822831772 888393834 678509544 684450774 951062149 89012429 260626537 201595392 1071278430 770939473 662419644 318044274 895944274 500575969 174263187 789446145 945082980 862031496 58450677 438836150 168818421 147734974 646490392 972293860 1033478865 437115308 157216532 572951748 434369970 769846727 282903558 701854004 25736467 5844807 198832705 776351650 1012906216 317164062 972030806 626897421 757923349 629962776 748857902 1064132833 996170904 262129498 921688300 844917709 1031995642 734665460 626451342 813657609 479308563 474796111 573082907 416585626 608931997 729622177 507548274 586494061 200171222 982992654 242328498 594228961 52104822 151825558 888926992 1070635312 267744392 404305202 962315814 867610395 812936498 117293009 568841598 491337421 1026430319 255677218 643517810 43074545 205937263 38405932 1070626106 245729541 873306430 182380727 295872630 87222155 50961342 732546799 847811912 257849178 798325452 710140519 90088632 961216565 902338263 958581949 756679666 635051333 499758046 76122084 122593995 205449028 247975574 756614155 629793947 496741630 1040922261 529450193 342008266 224763335 369705497 507390113 269580650 1015267132 346718284 136912896 1041790835 533894096 77175545 716922825 1016528975 644294864 536732232 266290822 768437764 1032257380 271280925 239668982 1066189001 436873033 1061096408 362423294 397807062 168072679 106943794 79298349 526099362 748807908 187700434 709550659 1037385096 187901669 218970791 919938349 144825501 918359806 484201738 526258038 1056990055 123727618 785843901 81736748 542299606 380918899 582104149 952048293 769273762 933397061 856461861 411461473 89640957 313373483 883224840 437954020 1029956981 458992425 84335019 775364614 969218121 524600423 836411740 455127630 851039843 473171078 134790774 219938730 761106301 994671279 142008474 588831456 151063690 735055261 748982064 826370863 300151907 140252259 676933774 277424604 706060269 712665285 533503362 1028139178 912177202 451897869 604949405 86123046 75173624 893362866 934272117 689004183 595148025 292639977 43129938 377618708 631605618 1033882118 653764157 348927465 953018715 831471862 806239176 683836268 739252409 140611584 683046007 625480484 672818395 34532643 956162657 114586158 88827542 194280450 381581892 18048452 157622228 611620534 143292145 115228095 994842479 819896994 702043667 875060997 204835823 894894086 902591450 602037067 206400534 914336779 962817118 655686256 522935623 24463942 269828252 666305991 568594528 225752984 247640328 175319613 877512906 996466476 347659760 987102072 691776008 816522613 539530676 412777555 357386206 538342602 339959851 844142878 563440688 658634424 284639384 506969240 870675107 772063741 958440049 968679198 570535476 1036364105 347105165 531981323 188165851 839778924 462997344 129436976 192800299 685013284 218727864 926702057 148630699 551879241 751934601 25891915 405780834 254880058 471640980 74092955 286382433 602171487 371353657 225864085 711106701 945881945 873014816 247447112 440533114 840264470 175740920 639786772 172986302 593002347 1047055108 255254132 556525019 129546577 444406061 35445846 753920646 676469644 18635466 953658783 601324047 697169051 573087007 267903280 574881448 208772437 840919420 249122651 977496881 442916569 821428110 242061713 80758743 464770384 651350995 221912771 915252598 58082023 480566313 762416896 344116255 606799403 18235864 904694438 50756738 730393511 1043490259 666926899 322984571 253798775 479909156 867075577 355937870 391376443 300602695 406284584 857100396 715262703 205001185 724726865 590230473 182435326 36135612 757340900 38597910 980512300 1044986623 444984709 905262120 911143555 846340668 394162783 125796361 117559653 784072449 773165854 265215997 611552514 561559802 93679136 182049230 719394250 530172537 23043477 324063017 778528540 1032767287 314032026 336369278 446101822 941735569 742905845 353593580 1018408519 485112209 464748677 703953747 1062005476 455466953 861598635 710308809 1069346312 520559741 31969301 916707868 44221030 288106241 1046997885 960867 883386332 806627699 695224708 568556016 371018126 852216701 66604549 713249674 1073722177 142031638 890410056 138389794 61893642 631027772 1054047121 1002680746 133657379 498783645 369155605 62936521 300297552 938227545 677941918 289103044 827018522 922824117 513803595 771997884 933139168 355654174 119996233 933590324 452042921 676482527 1055638542 644737517 471879540 961823269 382714966 85366135 549588720 221503481 193948216 10723203 462481407 500013725 902804774 543595856 341590231 738501101 954117694 714612899 913394845 513537063 366588017 739273511 827675721 66471470 205213940 1027038879 355411805 764520587 813168557 830947577 990088369 71138986 322944717 343995131 929365370 735468692 708470380 1038753817 1042041431 676276025 877811107 18130721 224628766 720788206 201608549 536547572 992115612 899631057 579603687 891989403 365918326 744825633 795002906 367735288 668353757 579564674 361779563 973997760 15899200 887331329 472924122 434949048 1073296085 18975269 174501572 177393113 349101252 1046854416 568830648 523962755 399872834 482362016 745034197 818234848 983820228 368599176 778569573 691733575 799753885 233311398 980020636 38434267 951363420 845579989 750265167 169207870 387309969 436586403 44267270 435240728 493441716 720293420 1009431452 559380930 993143666 110262590 728423857 540189504 757104188 874280868 506456230 244567776 813511868 732052114 644854075 226364273 121923100 276454697 931270513 300958364 940091059 26987478 70538370 658400516 579136345 946531243 521320803 150133819 523334315 910987309 541300155 729049233 87245922 647009139 1011016665 51775298 380288147 1071147554 651555700 489346730 399438049 771206632 685342391 979463142 261744286 1032833461 282031505 160026121 908630641 550385741 592949644 859245923 894264785 305137928 444799370 610128488 186599209 795557118 677795625 839600334 34720862 30625736 50534620 433714870 437315586 743322562 752573221 760716173 695449690 1041931121 1008227908 337821137 950051796 259536790 794838314 630969611 364911203 603365205 446708775 369110365 491941556 59798090 665233439 445056042 338508083 1009905211 896206816 1037688422 685571390 286354293 231861054 742976100 618912955 805103538 218489758 339599176 232600724 573516668 585738134 386260911 217606752 935071654 276302539 899754845 522949592 710986390 273500232 188585619 725517013 666870668 319907433 616914766 643104676 959919899 911304862 278567980 631220821 886075077 30675968 530136836 753975062 704640285 397574982 416693882 393698442 638439546 729382412 264187751 46191471 767014660 474773812 961297023 611900131 101256307 128092354 279177648 556343854 676876845 787891978 409176731 951382861 214864522 779607334 116695792 321311105 708799351 546556352 82105385 581963321 622478733 761357819 587117482 926275012 636821611 742816725 819998723 667052661 88057759 169720211 798097351 768652205 281206224 826220986 312671452 359450718 200074721 97826293 643478094 871495148 531034572 1014475335 293393937 924508053 1061973317 145320825 1047839717 397611849 769335900 905118847 851389693 499001136 808471050 105990065 195111165 1009915652 999837858 378731440 845873289 551301049 602891008 1042363069 991944926 87360669 684531524 765332062 989081562 736248967 950178287 647423640 447344310 1045094270 1019742923 731355254 774603185 897540157 412895583 30520626 613736429 343944493 785856703 972889979 498912367 233293934 84143048 621124368 457897461 945874473 330110014 678074292 585065218 837814 1051337809 474085154 307897538 47168362 719252123 823777463 137762150 1011218879 798809951 1003631902 638189231 1056254327 197716728 735679426 792356382 229640354 60870637 259817653 354608575 400799840 415966414 396808863 572144291 139179339 890420903 959528879 638485272 270811917 443710092 63367081 564123744 899918021 600782337 506538931 43907446 350441205 455689859 886503295 684530893 567628160 123523549 168835957 590493802 121051772 154489451 599972876 829483255 134151167 797432161 151542074 352396221 790592345 959552184 29030770 788171849 242187908 107368675 323020137 166574877 658636824 485782728 462447606 1070541141 91803732 34611513 348810376 942941594 419177913 222456818 435558509 205890462 860825375 63953495 94472019 181383195 40401826 34648063 815622061 398675254 474602819 755613624 351887166 309436767 957756239 1057635104 659703965 989296917 119386844 443872485 878918751 420380677 32786503 15034362 993968819 22707421 778268884 42396164 392351324 791556203 881127819 392405653 703324409 124274430 394769789 302825403 733797231 266143201 1012496941 780134205 143128645 411322570 477482853 210065281 816126917 931027007 98594378 165617938 215167837 1015899933 377082068 100984990 99537725 975089319 242371187 161101665 1071481785 609123793 73625671 305341328 264703951 151545272 652515759 712087076 196983091 965785772 822363333 985124157 651809472 770227475 515891532 389507439 448280393 189059723 240891523 756183851 1044700488 517167754 963089282 399445737 132135342 876348496 50727114 1058871101 76465707 723979510 217191050 218608531 313167761 173785991 622996720 1029683191 105330814 372939554 533707546 574572281 275797997 165776354 828529234 953058466 962564923 311172966 934213472 473445405 938815312 741574037 688050868 690293581 590372676 829629057 740880817 339456387 261717302 555486685 355018665 743387144 479751576 70572748 334081242 100264412 179305105 566653221 480859876 308487656 301497681 325174128 544640891 580044935 484304620 125974544 918758766 820622164 531966185 791008794 368322297 229332099 111515101 754547935 994644953 1013562869 506483482 543566507 824299980 282209772 904546481 166529940 586556602 915799952 162910522 837001234 182976819 865149822 369730372 664484370 434583874 921888464 594541080 218929845 363590806 389476531 878033136 470724926 215654240 136667196 758982566 842745464 678369125 781496735 982238487 817551740 1040223656 1066127444 219237901 265265439 258965675 416679746 989953650 586119196 309693041 349587907 467292031 350462456 795414918 219093299 115161506 174936063 589822097 541657827 15746757 384296155 395466840 474884396 358726975 312264095 115250411 28699491 127228366 934518416 839634250 1070112461 808706646 799233 144485789 360568775 429556791 504891345 530538194 74007650 196370576 675877558 444374480 734020608 995570630 227962700 700948222 872931575 531763247 305078654 465937361 755750052 410203772 21365610 171189709 510696788 422407233 818545115 741465735 637908779 1069269901 839748841 345552785 909166325 290459817 222181297 911435653 208686277 1004458445 86070746 285587056 531847134 368987058 754244895 152189537 201861777 375559963 353666384 508612564 214728340 771607296 108015508 60146748 652289993 317816194 608652416 141477915 525973594 1025036608 53266065 296194064 772474391 994992375 927639804 843871081 534427879 372278921 168896995 546706318 242694998 764277073 974923654 1015915622 757753166 567148733 382564345 845655100 135500302 955761566 839785610 530781591 463993598 184380750 274304579 993898317 12447098 1018542445 531703296 228085795 379107210 679516477 994790412 777407012 224089834 683653359 865027815 676682665 954084496 302196872 265865601 892788719 28397788 746688283 1013751138 459965995 966122951 662085408 25774412 919856538 894159112 128927032 18756039 626231690 1019330856 605595165 264692014 283480611 70025573 712719143 941699444 39283372 34313504 892720773 438482152 61811489 230238252 341501000 621696913 901489803 463874743 969268219 38343971 983769176 407169321 280752743 832213047 806410057 930741375 868341654 334947225 429489652 847692676 5062253 700188454 803614881 436972968 322559487 1037398852 366943898 980167361 631537418 678776327 817279428 927745158 859928632 116616080 334996758 547845415 359706075 141935903 183274365 674776651 927499040 108904904 953412976 606605819 465251915 661405733 110373697 874152182 449649600 82000658 19072586 856660330 517371578 259871057 964040448 219226627 324144401 418583659 402827907 810151767 207979688 684302484 491840279 873431166 621419331 850834546 960230594 342706185 576554085 518774649 280005065 402784353 215745957 357818487 796299561 803162988 463457927 69301603 999384088 642604513 570719249 353903479 136320100 256853968 460554517 597084103 902020336 777454599 384100685 18602467 689494514 211217671 677774419 699083648 976702297 743442470 876829221 483574436 552836056 607733622 1058155108 763353733 145595085 544228160 29690820 610165342 959074145 1016743507 777451702 219617820 898526722 794416433 1071872440 79459205 40343205 784972773 898517949 225356639 243478135 190959494 206063431 663562771 472444861 144349857 446060303 817425188 640330421 910656836 443106228 79204005 794457270 964546125 800554775 1060735600 842997958 902430804 168573148 102908612 594117741 527873401 327962891 128131108 182989909 677043773 649181530 743704458 802976815 267843287 90122137 682672985 754729169 13957549 901051931 302733104 412448046 42668178 918576156 956387199 638153837 1003982393 775085527 549910873 211893747 870142082 321804923 164573310 679386641 559959838 1064235672 777089438 501088876 311680811 678138636 247863814 766136161 751254169 98155583 67669413 625174443 205366515 841828463 876912718 160619870 381811180 327544559 529049844 109855215 152203326 435947892 197661744 989298751 299400903 398677351 590080434 462624491 621938041 773067009 216840668 734191950 212383362 604732461 34815165 734969515 871827069 676072522 410667620 7041571 669072989 660614960 758615681 996625352 894315328 571953127 1055416720 981754645 522302288 1037486282 978050495 108299083 500919262 727313423 415024979 750284199 434457360 9296639 728937820 219616465 372651647 152436116 447683849 464056450 319858813 358624000 262501988 122035024 712040061 718860127 669787319 210671373 946647816 673009555 543317600 153905876 260942370 267397388 85493459 188302988 826995638 1032770960 910008368 430703539 865925905 378839517 986893749 926931593 729773893 849112509 629689365 1069691462 226118213 711005899 352580475 746996759 299678734 371760825 989719485 10440475 164058620 240870265 915696949 276622986 183420187 913354111 716558835 374663792 47537502 1050335645 103173667 498060979 337250663 128150387 382999690 819048801 789492122 324380670 850913811 1025099323 738328335 465487776 551151832 494056588 632934529 233141765 792402660 175201894 133844695 444086636 334293899 883730838 760791627 230831832 915605427 1051622225 412334126 763957580 655003818 613628196 941197961 804029436 700755873 662031379 977552383 41188060 157712355 1027879372 1066192439 456042653 123455223 440787698 919304460 249947893 441801868 540875123 500065479 685774267 1063537506 589746242 179330578 817583267 245645467 105314047 664933357 18611967 537802093 520373826 922631919 90132478 967881315 649004272 453972083 605126053 172580979 627292732 90037977 546414711 693624254 323788431 226711523 797697920 172904861 610586972 297768881 201152250 177581165 731860127 347058198 127937297 866913340 477861087 1073653298 267473249 287324844 896133520 702984489 749790653 407714509 294095835 13427287 1017387715 16323507 1023558625 422759953 62950683 659728463 701152331 460561603 742736171 647571664 372205062 878985587 141160503 119740204 405413287 912173138 283894680 98188028 392227339 496056491 1035554587 209795072 608396398 552869906 95904474 853438743 916218835 157928956 322024096 108951010 888543739 29268371 354886481 547089720 804736559 700227538 848254134 655174991 797740180 701766807 939499948 892119867 865104186 861490972 724100562 798557685 768021855 935078284 739381563 595997200 739696427 104799797 620144807 335921422 175706000 96738490 782460327 697391677 368757052 195297329 261969450 502242530 752997515 120411245 53298297 220204892 343307791 1068711814 681625615 608623842 185685347 77161484 732033536 539404664 141866162 831384711 38777733 159477620 655201013 651125389 484502689 990656281 179932911 537990001 58754567 102113511 873976440 366824855 392630929 153639069 596263677 137301314 30157845 148179480 271140886 840996785 70862206 34654129 184271863 996571707 556035706 179769055 224489876 673838338 657848513 258372077 835021836 467787197 46930456 1041541799 364556131 134355473 1001403598 975139013 912963097 651492217 421690429 610739889 1020701268 700761976 298825864 751458122 786886360 851025907 205260428 820944827 586647375 256831071 494143825 126043049 50220250 572542494 248612452 103881869 240931251 174830988 321575537 124970155 755001453 439288890 162446157 441932314 767817959 846181532 184521729 883009520 1000127730 387782225 456615733 1034302878 498778152 708355155 686677179 482505768 462700351 606227336 88154621 584045260 926279382 43649563 1070574626 143971914 687071587 157853221 1007008014 157855345 468267417 914238916 806005901 913654873 513754663 93614059 493016203 938878488 131032094 539078426 362621287 107761128 505863932 1053136526 377115357 796957646 122478758 337749460 722918266 859542811 1004921981 41096940 533045835 545723007 1000425515 303163772 197051068 60432459 261820030 239072052 416618239 942170094 361662491 626720855 75507490 763857602 115205486 640012515 217347396 381129507 147581059 974915808 306416105 395686368 456632900 79362970 421994407 287631628 1036189990 352301356 159444895 97077858 870256352 402988988 689848855 442636976 426547791 2135333 524223822 86172266 557338580 541545659 708523281 241297639 721285027 917170439 665118075 402479751 306366357 204459388 233064497 714309699 215099071 973905378 1063076822 301392103 954901168 138285956 903685677 349161693 1030137064 462280571 527331206 977479379 244938894 382251161 375355561 379918513 653521337 34457867 580763082 780079244 663447805 1044691828 296726382 33437053 221550591 173781606 190059955 544766291 831709978 370049204 980568054 776746441 210104443 662859529 528608081 535223644 671121553 618992409 425484370 650075677 855618002 150995714 547275538 772495370 756674530 905150466 354288737 1018182328 411137298 527039059 756393690 328182919 801119923 819701973 486041771 340975239 364399190 555347066 970811135 995178961 270582856 891889808 561670018 552549078 599700179 151295740 698380361 919248309 823464605 484532788 39251530 538979061 973397031 730803444 288913767 81736969 894725447 652939594 195757166 835611677 299919261 153752126 398783393 790313372 925223195 767137127 225477930 657271410 881483762 282649964 261834759 649437963 108129771 554042717 878876521 68961076 771396464 989058877 972652886 919653101 18220919 178989356 149724120 158687550 79687722 550562921 310480538 783761926 35440621 568055034 447620436 596356891 127604530 345269884 923930110 822224402 737749788 855185506 454996595 582247625 568852768 84750699 172423252 378746213 741983682 253008349 414921125 884112019 760203907 994415847 1016064233 813188821 464925601 976168042 20971413 340161679 169664670 923933526 561397618 123598778 218409135 570227722 548702896 790932684 929226354 325023935 648238706 517882636 689106112 109446701 346365081 522199267 989286435 354054422 599531122 241612753 839977471 835884095 48117751 41582857 1004584257 9115306 985174294 651049200 747184583 191442589 624591237 1021484488 816061064 555071373 989742634 91973260 933765438 829158915 698381394 845417402 40750525 1020914339 432043658 252377438 939912673 309553079 48525922 734479998 422293760 113099494 58692444 302397542 4512501 92335817 448515750 1048147552 822235118 718472571 1031365521 404584681 649153285 102645660 626965693 367115550 747038169 758747605 1071462409 395589813 549711468 215995983 320610756 953568067 79684026 888842341 92666821 86269450 849662170 626227925 374775750 801983444 696578925 942262386 84657955 252139411 163832765 661112181 319579014 532958922 1053594486 1034104886 830300014 1031942497 329599185 386693699 680940426 235561344 242299705 672105974 383784898 15564737 917921857 350767179 221271217 574390209 611469523 455739818 1070674030 66057748 931285409 263953707 551556858 495745578 139023273 1039192071 473970390 133475613 47809110 386677297 397708388 136010045 801412143 154920190 436498565 693668355 976153794 512268057 94937095 514443880 649327966 1060231408 582302690 876324015 273159929 508788191 663944076 297953077 281295250 194788700 20922928 129460532 590570202 722632784 452893606 740209919 724848912 651487193 304208072 99512045 1045984894 952398060 950335510 484800339 713112008 589590308 863222236 1028058797 433560351 290575128 39271751 129166840 753020996 14259668 520316642 95858003 543206771 695362736 266814344 45603649 183983720 444808179 121010102 95792992 80586448 609267624 858603846 1058503530 227440814 1037566665 748568164 936294223 574734900 434918782 700440706 871419078 1051811733 32349213 497359838 241765284 502901418 485264720 411731891 564792301 400811675 472485611 738218158 24501252 706111088 917196171 204499303 328098248 638227747 623364912 254267260 124616179 472307882 83019447 150621281 314439210 751420403 1060217100 855166307 736813847 294514745 528335926 1019294326 603694771 530911321 698243304 624072390 691660337 903385144 618979745 921293603 271872467 97892913 334138939 62043573 784939957 460588812 387983780 424193994 278106792 331656811 195599975 199695834 915674689 443410237 681942767 595256364 556272172 946207553 788234562 484550209 427538565 756268684 17737174 561825818 546159079 333613539 729012251 498086175 769139629 788978517 444690655 51982136 446609726 104146821 427251913 445310123 93294646 466382940 22579191 258045560 383062709 676988575 991098477 865571875 811690663 930961839 214142608 637213456 104154082 1055903365 578686671 436830623 361229635 342272131 435232955 25797785 854508812 106381440 330617305 134972995 972026636 369488530 560696831 888217558 777574340 1047046848 742181374 237144500 1033355330 138914639 360986177 976850389 986321339 811888210 814408526 259291857 668829813 1032478390 238115511 539233103 1069458249 418851097 770248764 550878798 755993694 966699553 346410940 364925598 525976962 351036020 68337672 424102976 107684086 566839419 277020482 980218737 57812551 737489034 402869385 504011786 518827801 1010327993 296632970 359975181 617161829 1023116722 46066926 752323540 265870441 671916235 322871654 958590998 1058508296 28893081 695400552 899383316 134986214 577866291 585449052 779261288 633198563 804698067 549831362 729478959 427744823 595409260 755008061 716107141 523516592 571937000 955949447 441024362 822089724 745728242 518655618 359009035 1030654934 1071005174 474769530 673233710 1012508452 25941407 458119572 588283369 199204691 40981390 353168661 759591399 534152106 185339651 33134255 694789180 391720951 334099107 818904618 680787032 811810850 539083166 895392749 321773189 456536997 312313168 443062869 1056885872 1042664995 977327722 117489667 356364580 820551114 645593617 861339049 291083494 174407524 476695488 552325309 1037474849 402828834 750202271 585705031 144522326 143424275 12343714 460316862 525504311 847382699 427464565 306650790 636618099 926121786 447258499 973078525 572451262 702538866 103561471 1070948353 340245316 209209485 695744472 582097913 836703404 722565845 878121645 529600221 315748020 20358406 97105286 487338039 281162527 555872769 629868935 71013772 574712751 220678840 531975015 899409204 376110664 361466409 234956981 401212645 218106745 482121827 386014224 13110765 587407391 1024737253 815736911 86459585 308277704 953489741 457601685 176970390 905278781 716517988 479462472 1016149616 706875254 414396578 226649991 1022070750 730647463 318243393 32506595 351941921 868886284 157830667 850677215 83400799 694633924 345045958 520247025 175342585 152680273 627843501 701265105 659659338 110953379 496314991 635915808 1048751957 870283168 1064403206 1027380930 688761500 716017629 963321952 194505206 413819032 912497543 668291353 1046328715 883136099 983326877 596326472 423663742 63402481 831425101 25428889 946737326 891763659 606246084 467133311 453363426 490087008 621250847 639352668 989998516 333552715 945480176 662026391 873836986 222726968 644855359 244336241 795947940 116803702 649676724 239874098 874523230 18559253 105953935 447811741 283307620 153121892 583968504 355806253 585187586 806399912 212438136 12396827 254656786 614747043 559847568 646748252 64916388 670549932 642708359 276415698 877348367 845329443 1039566776 368974264 871041670 805287203 811896098 180832486 103690893 474857751 387641170 129058871 674413697 743952247 628805672 47607319 487021190 836054203 814554498 991213884 337968859 420311467 618324134 223273117 316239562 13338386 759010220 122055628 332190302 97224156 114109808 264653238 1000092690 385429060 601846369 133727541 177268036 945316346 825006135 672839984 668555907 909187150 1052183610 679390918 274966928 68401040 964050716 870728721 440694027 144397027 503329553 1007457870 187338161 1069429215 287935033 441951266 126880964 512144264 296193450 484960721 449350381 522148574 954683459 236027180 1036195189 313501101 187589091 379986928 162395063 157776933 906233275 723713881 1024874662 40737489 1019793269 414504797 100171204 204809169 106194752 866844371 778324631 664341977 663423952 512719925 947149299 115062599 682260268 447943595 488902382 1050982358 778168410 170244305 470828405 12826926 9606480 688548107 290690709 1072597820 765960266 136793613 679009700 805642550 769871899 70837415 602901528 601342050 92518954 644522880 393680860 910959046 723242868 322284037 512570555 523957211 974029810 871401050 957974964 431642715 845491291 391513690 789004669 109171618 26968646 414756103 1015568586 541908396 937783532 254099724 824214512 1029250320 888113682 970894160 832032540 324674952 515930131 905388069 276954172 936766428 895173811 418981327 833880287 97817634 399502399 240411612 547558739 198097594 417660308 697727644 69236611 352597416 11142221 448555022 332283186 780696205 265187353 674564871 23696838 128304996 639892953 287281757 652545086 444869375 414200571 613610850 74051512 932563411 733176973 687861472 636203435 212299758 72084773 209552816 86400075 448533331 240191388 907888312 887413851 977404506 827256206 840276713 849899545 617024884 717167608 421311903 445184040 124421688 671457662 646999206 945773159 731287236 216021959 661997308 541864732 608494428 114416522 749389523 1048892317 195421388 278529662 317723681 1044513792 974372788 828432162 86043119 826880721 804452340 720820484 541819920 749810802 414695152 777382757 556465421 269950631 610930900 1036958339 1040083090 342346224 1034262109 531643240 171467700 360619640 437837838 957052321 119454399 952040822 982774892 874641738 104156540 720066087 900826859 109356989 771151511 16098205 556056655 1025634074 878559431 783931486 533282806 957537587 443638948 1012446162 491347197 704766586 312859632 597821365 607999309 386471526 678883626 116904499 1021514432 599430598 509845214 546719180 3175842 574060246 586098917 605182404 478727751 894219779 58907779 684222583 845793695 843949924 1008567477 276794113 568411968 482158438 1045150395 770359707 813352098 351461256 491887716 903554231 404934307 52854930 474176859 374750354 990616708 886449156 151460674 555865656 1033987678 434186600 111870634 1015576853 1031723220 867607363 652288598 163905261 832152179 653283126 1047813338 849341121 207970223 216007399 568781002 29536458 416840909 98889902 828267596 104165856 1022689983 344816940 440718078 811377637 380747527 1071129970 964755086 76191789 306970430 600135526 734658980 746276267 614868707 1030532984 735782254 862340290 415932929 805427192 975585401 161898548 384305141 179438740 749635588 243869801 758457986 476463632 431680610 37435923 569928303 948118091 1005357813 280496632 996968346 66788795 425755761 551370813 1038563142 260322437 908907253 34922234 696697094 300019286 627998366 971953134 67345186 856291759 572519245 580456914 309547983 927849189 973008815 804709856 165111111 896941567 167668296 842435011 637501418 633296969 82669517 65758087 556069831 105443331 82646269 647329140 959370734 840595966 475937916 237627421 543947411 546839126 636309645 128453803 364628383 453356953 163100522 539448370 592714591 532304345 215166146 414751639 711806663 810432682 279686236 70591837 262565675 864434410 941432066 61945857 935212117 1065550362 357146819 852565498 969461956 166892169 100684166 901314397 115177914 847841707 84983330 676330110 419655341 2924089 769233535 719623205 673917955 973327533 571767679 251593096 212035655 483560005 38058109 957982676 691258465 550225311 939944039 330143838 760927126 337236369 1019186827 378016709 606210479 490566438 1071108558 331653318 82650187 59341881 1070092629 387812814 150991869 934777726 408162637 988421182 892721921 843235660 326364404 731635413 178735253 434336225 826018152 1041568967 282777533 577269361 184555368 1019575281 172451734 623947887 543544306 933224670 1024591185 196838150 449894468 927951698 579947677 665409604 369053474 826959295 760603514 720076658 908692310 33178182 659522991 105353486 789068281 225119057 810964023 980053014 18406523 825866116 124692196 935251249 376336555 248475504 279418840 171877744 880239668 719941884 209476207 42356841 959663786 164833211 128688955 403468892 782938465 801798091 1015480089 131261759 874837432 232264003 923449860 881641204 950567905 428542209 664836532 998741891 228801071 221199142 142220084 296113273 820629779 265021875 991785348 550391443 833823384 1050983527 176817356 7606308 512020509 62366503 688041234 987628866 178931381 923443601 450263500 108720198 971759238 45509833 815084656 624929408 618708553 615858368 174973597 527697913 1022761535 569259343 407718090 995524362 244553315 989048787 321274539 1048393410 282403827 888149875 846167682 989258719 363116356 941842860 309854010 894091280 618227751 842375901 966215403 130889260 114808815 197425024 869620685 393372225 509584325 837788681 812875161 8974661 211620949 543240487 432155591 492044856 831891314 230619308 255113309 881559655 936294228 1000458598 462808800 280238769 430584732 479672848 1043615778 727153028 268968105 640239042 983446306 740124127 701359663 793783983 15207530 554678685 228212764 954315740 631411217 422542846 1062000827 591997442 948762294 133363255 812234252 345349507 371913736 303656903 457426412 1051373010 31054762 314548582 720373653 32658384 438790256 105707597 276987560 391191643 264223279 498213120 483428425 371673743 755728695 812488173 797647872 115354537 757909137 683055089 422998506 278727983 875841955 264690261 282034862 946621789 848666197 696680702 539161243 90870709 419227540 868305804 20938154 699407088 270375338 861513638 773495659 260596194 1038412320 356314426 530967450 678615005 273113484 838855949 593099675 388647377 710198672 871069951 624455197 219508601 1035275973 809436034 113027804 483672687 660664759 878386110 75988045 913246669 477713939 219583828 425119614 8080137 362407198 212412271 1004210935 746590805 442874979 228416721 100942210 457438463 101164921 919339742 105967824 332953180 292131976 290140369 384478531 379461672 837500744 717161364 635356881 517830452 659107817 324721240 124633798 972711721 571413194 4637724 823625187 674784881 517184773 707476755 907634103 209084256 618318905 714723565 729714495 498856671 507528005 925218385 934016738 506550899 422957060 3539464 651226705 1021605669 168927079 486807734 220053102 700119652 2748823 180354661 946033318 165682903 436124392 248700385 573156393 490705760 423405308 859667698 131424703 356734443 176572765 40925572 154191540 463601055 925859251 858606116 389750737 314861816 460233398 895576935 925230792 28607250 336821493 191077565 239064623 359255963 764227234 1012930503 587624577 543302434 868675750 61404419 992479526 387235235 964038143 941923569 192525960 176517067 877848907 283870278 813496197 746021708 105017385 666966923 12207636 917984489 609807321 979119650 219809309 682936196 551154680 49507756 1006697416 815245245 187467650 43617970 379678281 877937896 312330859 400599682 702540598 907457466 94760155 477695449 1048876862 609163309 737533243 527240350 183006215 771600599 148669310 202289989 1037994771 1046540262 451686981 778216840 110552407 375525370 243224877 45244457 924907801 84343170 3779371 609030763 1070544819 733851728 849006296 299836545 510771011 56627174 551455913 206268089 205474672 854373431 325204384 678351829 335439414 676930125 29367262 596149873 871214179 950594397 51615380 378332061 560189333 295940401 660842422 127919105 942004620 655698593 20316219 922717464 943840748 600699681 221127461 459383300 119834660 142899115 347654888 555693538 252655937 73509073 266506312 469318504 386361588 720738983 822812881 144947286 132703407 115933881 578436836 858724458 427238627 412895427 977896020 201171929 525992863 163993912 973576653 644050819 1034287147 229267472 88579260 116049300 105636572 255454819 188079458 829769558 797029520 107672435 994489026 98462594 807107146 550365641 344011115 916755727 664369285 842402835 356974602 439415419 15322283 1036820502 273534205 999317147 688005422 541749005 925637961 745499862 624989428 6140683 568714081 614190209 709007715 628440542 979622941 406852248 69192678 534850325 182432477 1065775501 923477191 446335390 619735664 302679970 693759337 1045433006 1017968063 405059236 261501408 976505473 46792293 690567799 780505886 920299672 633071679 793284060 89079810 1009913650 639122439 146623269 507102792 66800292 733582875 588402083 139079 360853082 418830206 617244819 780164324 896703668 1054014554 927565509 501517222 866474614 273620718 538184686 826068689 549029966 45525093 29479836 30595911 893945598 602750 670093960 401675936 912691127 960884926 320707708 159178041 877833894 138720612 423572713 411934187 1008411681 942662095 613682326 492226726 770191377 145124208 139843361 234055428 473456927 204786556 952455700 483951873 421478493 743511397 903703713 60633455 471118691 997264703 67838628 905682353 993648199 1188316 773010115 198758261 88140231 679880730 214397675 257812710 637718893 419752777 661106802 103863465 894413 836702046 27517954 444905528 403361768 956516511 449523533 92484860 411330117 220248068 1045128753 898993632 415315733 841714825 950567833 442108379 636292954 88944340 371439984 629527328 731369372 603626284 918452013 304588268 979060662 1004937378 1068325009 330575176 22616550 813668946 1043479960 96070662 348963584 914426648 915023638 535629800 359876357 639650291 138208278 503713119 1060705584 128106499 233163745 661881445 34697378 676481289 860126291 623277248 62270764 741688916 909976536 1017671393 44210959 931757395 452487106 582349866 1038366741 293084532 507751386 629901951 489883302 746961865 407952698 126409129 423310376 238079940 558800177 975569657 558118314 14352168 1031891649 394974 127280629 508616695 393642352 885489803 555834454 307103572 671369758 467247407 490829015 1014116271 872947405 71516880 754312039 680665821 626622226 932123533 231526193 482298650 506823190 8158732 1055177895 859662752 867749988 97129645 193438745 563535103 673757394 763907466 860762138 905084688 153746892 297207829 777951451 838917215 747757535 352342033 570365850 577070116 1040665497 57832519 960650783 117948659 929499643 669749158 784170449 1059012485 965467709 791695676 86517885 806718143 620565203 409693978 806297022 914024343 1025967481 211408542 62819506 693572327 477340720 578920703 572323367 621065483 574449064 544859596 290842216 464967011 774407514 638971135 201802513 586082042 550853447 217707594 119857643 1007658006 483140934 795067016 982660835 627375117 430055624 638381852 524199478 837098919 122246318 193620138 382526071 1052661995 239463972 276506960 268149980 764733759 1046727732 545423501 317915262 78643767 1034679539 673407735 375069548 33468756 948190218 137260264 568258359 1045357144 201224526 668503321 1047341406 819195930 101562791 431782297 909857893 558313421 558509234 177827778 891897354 814788847 134841037 471462813 769150632 987342993 602679324 876572922 662292983 294888721 858654069 127865906 683811861 450922696 694565202 938051803 222902302 198929983 986573444 217052832 46327149 891790786 1036731228 475562245 606201579 1030506318 633133580 471951521 1021485618 305037019 124353724 167477812 944180035 303321954 230533053 398883027 789736911 894104806 654053383 479857713 790820645 943774291 349535575 670754134 521753469 178767791 691710107 709194436 31806638 99739468 139886596 270554860 126429554 853480846 233344809 769313353 448970681 854403213 646272759 129974271 605528833 798371743 20597235 84276806 438431636 213781627 467670571 14556851 459489695 256360966 749704698 928067249 207114635 431666300 1015648198 44635496 327870306 413141013 702542071 374185618 970211043 609664722 369686015 503475848 494399457 379215262 865105409 135346163 1059328412 948111871 814727315 639191826 817724355 266464371 222656586 198730573 652149234 886558883 956555729 887062057 346175726 477790766 961204804 842677236 139377207 705379605 28970913 847142548 1013671344 314939379 657515093 431521769 516846201 205447018 444105128 380116263 127268545 148344796 1037250376 238304762 865079735 39334563 604799023 933028841 1012449689 990371404 502959822 322483582 854694490 651842873 80576284 775751928 806882639 71279904 201137502 311168248 974932707 815855553 222226942 630584874 732154859 208239423 483305240 1026212754 268446481 580983657 557066955 518847756 597979648 1032059645 514236203 203715987 655462675 1032330950 394884163 308422025 2091202 416234868 365503676 906022246 899659597 152075397 1013899069 129751398 900444852 788933933 768687540 902945413 845778240 354230446 761612821 682101024 255632595 1009104146 286062641 606190255 402827633 570565295 444367918 452158966 738146314 1062636313 157371703 901423955 979524135 802592633 845121471 1035350774 41941220 681005159 71008785 122396819 207427175 902125486 537996809 729596075 429722211 669169556 928806925 374267719 10524140 59853628 258343575 360563842 641416701 932308716 1063969507 914902131 949193950 904977627 688216295 218741053 991653840 772468391 279744805 899219260 779852025 1030084343 67969249 30830144 275228530 370613721 300361554 250514310 172248042 628070147 102037959 652995700 221556546 868561782 117335542 291293045 1010097484 730406618 311372996 960845335 937647684 1014017987 1017647568 919163226 432803714 49582598 519932866 738291624 1017283703 10988861 447588354 596740630 741692331 607609721 360181047 831422097 53385461 524898529 421349318 831360328 813785746 326408037 393475316 419305826 31629712 32822422 778307814 899554961 484658833 184030913 587921578 561753077 650389564 521470048 502199733 135815554 407782850 139996122 542877199 331380716 285163621 973508077 699686975 1058363131 549101634 422812814 978849881 510149491 379109865 215340400 1057471053 160156095 901917229 643925323 101522496 629941752 970192867 229426218 293801877 599509261 727453400 811204892 397420545 875652334 556099698 557566613 903332383 817538687 699954236 1052230223 137727811 811628430 1021350654 217241488 60476664 410379287 940309486 58525511 992565388 256529240 5085802 404772573 751903511 712326533 1033161833 304945269 615131913 1033413687 330907251 598673232 444506341 712429974 882359602 552048972 575087224 395489951 724101552 315829344 66777309 771288838 633892183 185754464 581894075 485789192 1011689077 1005657118 119887494 75933867 965474327 294679177 236737803 1057045952 458757329 758680070 277357166 1030292723 501999744 694822908 626495589 552968725 703329363 647316344 158348772 225316527 557031771 946468863 84595035 204509980 856434771 73189770 66614462 1057516052 21681327 74224741 184338413 232006523 244629398 585925800 585430687 834189544 731222272 116450029 755455594 969149723 379771295 545130782 666920721 942623096 346040778 798499539 783296295 731698418 371184698 442366070 380093996 1033595016 560160992 337133872 563508829 242254 504898641 768823248 384230783 833773895 980848785 472545637 286372866 1042843760 854744331 1024944341 672480955 402693460 704569441 687148011 748350448 118788751 59637379 554591441 295278049 85652247 933326802 185888408 713830313 117584285 259195467 448884772 712528446 737560010 212930979 801086372 621953191 863880781 1015302693 752300778 952376351 610274368 633617668 413579455 269907004 557823379 995798005 142790179 708350755 598124600 962483668 484405788 481453162 312810569 604131795 440932765 341505773 252017866 268229941 407949726 835915131 423652267 768087371 538513327 455396003 172811724 590113247 891003203 302845875 571696697 13683173 367881535 221633257 917704674 397185291 959718666 495191611 42693833 1011841164 313201885 79268146 1070192310 323639768 168741170 745884038 411970025 150937094 369186982 655024463 793670880 1044485988 235774030 303859232 179904621 295596305 892090688 844272175 774366449 604756055 406013720 34763255 513526428 40560845 896782986 320344158 257187756 247529410 677854450 141193056 801886966 402581079 351123655 5484559 20270100 1033440636 534563398 773603505 945614550 382900923 290121789 181364519 216933390 572921823 169886576 641860224 494301261 435203966 520061009 911877249 599425514 557945640 394583203 151976560 562751056 1007110167 486604975 991727184 311488476 286838949 485180621 269112602 300133557 18733360 1009261395 482484489 664131967 543704457 694419771 872241025 253803008 182604356 970338016 15480303 808759728 568629953 973107196 796082732 334797171 667870243 695962705 810036764 493665219 914679443 366289198 597987292 488545119 653400280 3511723 222694722 1031781870 699492341 512485735 1034199763 279007937 122017585 951316516 1036018361 27734097 985832491 431948710 770646430 527503049 1013724659 599153872 204613303 297869337 273969082 795539150 894954081 423120284 41124426 348150987 924660775 817528644 163532904 415366610 765201273 639755724 457666044 747454538 859495811 129444801 739942678 354562500 9554662 592656123 743954827 119442013 89608590 940302768 86873911 677945034 122729044 250085934 495705788 425301411 289727540 804271044 618863340 78725626 1015896579 110375813 457509729 495703649 9422625 530014472 85396147 167109016 1011925553 895783796 152414191 43155902 252190270 3793675 826323363 448886097 1033164371 485382570 244749035 596051142 390438131 503382305 782885344 1006159085 824066185 368823408 947508432 741554223 648799586 723579422 707758637 342744757 996195654 38320708 331349655 767653439 541016697 472175725 173533193 187375305 871513727 825903716 712129487 229893388 85322880 448255264 953339208 565498938 41207334 382189697 763703679 961774035 459373551 140343152 937887449 820235462 223224500 299547624 126773769 703008855 350816754 89414639 185756355 959481277 249482446 762332638 466939617 812966425 473974068 931597596 510433081 69599192 698218032 118240469 666326167 319775821 83385680 839437215 550506392 808613091 984121284 63631041 722954603 652418042 1058129455 405053336 578369698 698723957 498645385 97671372 741406113 707016050 440127990 919340273 321269262 412761255 55920962 269445001 826838403 731945231 1057036250 844082079 747347668 14451078 84490034 566292963 588024064 1054601306 101732193 239089333 532364259 1495623 962040289 636422024 895776010 260700369 139482813 525157403 697441377 19831221 957262175 458999547 91185209 650972235 374051008 735592542 436133218 728323239 1057790610 711496204 974401195 191796949 147341835 704180613 957765089 863461964 1053651600 702297384 250638808 928890172 8734633 111403455 865899389 84412640 239451138 343968535 532798832 232382636 1053165651 984420748 780712047 464359930 17891707 889839664 589562763 928758191 688243653 54430667 75919364 368943336 826473652 719748885 581882969 935594048 49162344 753235922 657622529 897264306 131590565 391495351 939093334 535363178 720889798 351974941 12617684 499096893 751984625 505359041 90138564 762532068 367488056 96534877 996751430 1016081417 734415934 353680914 1038541999 858566981 35775564 598361272 982612364 1020613348 32507824 605017028 843404721 278618759 579261245 739239130 1052503649 1007317318 263921721 77656402 642568016 936506951 869244181 597816701 724317085 940077675 89335344 110306470 481490838 516166892 733362682 3311952 619007021 362199931 500193144 958553709 352904726 759662621 783187607 604601075 703284574 1002189755 245679244 527673779 145001567 271325324 945106522 555162902 17055397 20495055 531600236 810552375 631145726 300389001 381327565 1046226322 1032314695 661286935 81198773 557295849 896018472 578140671 342407690 167389808 1001157506 89153 473218223 667141444 1001376711 121822307 443584180 640056973 608585853 1049200502 398569504 1036588299 616890677 1051810916 434694597 748661102 651908307 789664485 1046706565 976203544 972458181 77145719 334839120 116657079 334835057 880668460 780992704 731936306 203878251 441130710 1017555888 348051893 870766081 493088009 103913996 992979759 13729578 565262014 514782613 292393481 47453517 785378165 608966741 55060906 109030810 907961335 675289711 797921667 700073065 989565085 96170423 375804174 349781223 577842445 191630707 119115842 143519908 667645535 814127921 313610201 788711647 259271209 605594310 461122598 404363505 552562980 691552046 987379109 642292355 34223778 543674569 23090652 525453022 792067168 459652960 210799426 880520107 677304285 394192914 176920535 851404742 784605624 504199048 890735599 575271945 784735442 693441288 431318280 777153847 298030020 234141584 108685245 622695096 829139841 316712366 218558025 724865366 432332942 613497443 849409296 180088648 866281159 109292977 742122572 324090078 534222973 891112981 676943016 880719681 810412437 887111209 868349894 527530964 816847153 482545849 86872716 133089436 551878766 551975154 38987375 338272802 381977249 359379561 349941720 905087890 766060821 17654012 96780104 706233566 366268857 243620030 186997262 229031782 695675250 1048000614 682376263 797106742 742146416 814324753 161324153 879340228 498269401 591474191 953798214 358963298 693121824 1015670908 496935873 566257484 894498678 717173590 1019909305 699509254 340936984 266397683 1009135475 813974577 420972400 142675873 29283472 193039137 838392851 691751028 738130152 179604178 952904127 789171264 1007408560 388520979 480501661 865246539 705750357 340160296 326735437 442495368 229790977 617025321 336940672 412274490 886934472 768952152 677860671 215047686 189463340 265589048 158498397 537675706 86051047 326192847 125240009 870566705 605966040 824806722 585320254 55383428 733244507 980841276 252325051 800305703 486386465 186429074 773125511 323898302 713138711 211621938 36715901 874030945 395273748 1003741830 95714531 302747057 784420221 195001521 733229543 831158708 115837959 861572737 90548879 1051477283 993730452 914241014 411922628 531368848 969335787 279238523 399724062 106013910 423739075 513737606 222780705 290183905 375809975 89331716 549678039 1056411900 1010449117 767647471 1062964314 499703977 622317734 257489286 687899346 995500393 914133126 387773285 1045253768 53063618 507074652 336713121 904087988 518147219 995687843 890522193 481916962 514125741 519416663 514084629 232537717 367840286 352912307 239047477 482187507 294638075 256317126 490764471 418916847 552563691 945547274 207366719 149715042 798415585 779198612 116373553 829833675 1067285911 551996121 1010807883 319276018 668369848 944481656 911926153 680234002 1005461751 498750522 14626685 804570390 469302651 656054597 735207329 249195901 540943533 176148401 597829952 575877359 901851309 841788843 842155543 510980577 863559292 577140808 546725510 761369343 593206191 440287185 333464707 47044561 329768792 853583357 892369535 802654550 415142203 518177053 483866584 697521827 850274841 94307628 1052534046 81604557 752891223 174678236 630153925 340601599 227169076 182941138 502735441 1032129053 67639504 362737023 106448299 741472208 314730372 962150700 19063492 793170245 628962447 524106380 4472067 60916393 118476365 462945721 163811185 934132637 9261952 482818257 207523208 954992762 853302149 96603985 197722637 253152612 26345743 516494429 464208228 563374053 320774302 529385999 1007461403 270176685 728581178 283153533 408469789 810372777 568565521 172786954 69367256 154297442 776934198 603260511 639675477 505808340 329202751 654683925 441656138 681233466 5589965 748843214 413090142 875929204 610662096 14230164 254928641 291534464 341817385 905292004 721245770 613821270 434460368 239030971 694577611 387997244 257671459 88309476 481181975 339387191 925643841 119666404 184098152 95396135 27042982 167642995 984038771 496487693 525943630 1010666034 130683830 2960753 228781308 843611326 540553727 105417343 667365492 899549668 806198725 944271776 746262337 603009185 440874630 730076169 45751062 7026825 755509188 1068021007 150713196 233211990 933433802 1017320430 838223595 949334127 737087256 519680792 488616289 794026035 350932900 290394869 777891983 161594509 579629882 858591676 955769757 693832019 820468697 790613981 696049122 347865888 708204377 467671328 26360658 154432069 680960696 593078262 599525276 826577628 266206042 1006018216 597695653 563966402 730805124 988481228 470033204 806037429 567379936 879940010 1001377522 984534026 945838234 1009870580 491061516 246891995 178370277 955603981 149518048 187811135 819892236 698724792 416522097 932694504 697884185 368493691 591569683 912091178 810058468 380693168 174823129 149137255 53849195 51299014 53370360 1007335340 889219997 428579120 1045413087 337506251 838725429 13442039 258727442 652416944 25436663 543950241 842075346 952637241 1012586092 339694740 382754864 513207117 791198887 132552060 144367623 991427533 653933515 688931364 710086415 990481770 1039421436 923404454 886614040 25033992 165080715 544869736 973436644 458944147 378353977 950715692 603119333 736109843 416377575 245675928 476655928 354036753 430335348 510502495 599338587 398796121 395466458 980929932 196055630 376703852 587470329 691598392 607587116 99503103 82385749 95460021 928651482 1021643884 645080992 475278368 554097380 537273489 270970447 274070718 731846927 569046916 336438324 183527548 621571784 850345919 528929009 474512804 804423616 168686705 788332175 120076623 739950254 138095269 499701972 299357659 212023071 775832168 476367 588723906 1041299765 412342649 816937293 685720217 996747591 915954604 829135275 671502273 124615737 1065881119 1041914255 224756609 880903716 89498598 145294983 290801718 111610749 1070744512 1054697105 966047877 116448667 1000349904 761743386 10763162 567972596 418034207 271736007 382664933 10501638 154863906 1029688017 1019941754 130646801 1061384144 191291043 71316910 457241259 995332393 59961148 277663580 842013702 1015438184 659520728 230704392 427392618 406417917 615235610 776746630 616542153 376027245 662934058 685826058 620880219 328764086 711677110 161512296 542577425 765994068 1046015863 528281649 200750450 114548020 396032470 118480381 446158999 775572031 294040648 288716821 250152061 481911098 389637070 88174929 206483399 356839466 971221562 60961156 881046166 219041137 653559313 256905781 879406712 516980151 24280282 219110873 574281401 349638376 642083085 595594820 277270886 738067852 115925271 851132809 804774433 323983092 314574310 950470472 1004466716 624411135 316776168 118720790 122867625 963294669 507570795 649341381 633345651 872650823 901741815 1055223900 841569237 1063438150 169010759 479319249 274599288 537551608 712504915 292611497 74967430 273764779 26879807 756036783 122493627 204918903 47515423 523437243 364090810 12410583 450522144 168694199 958753259 401830575 644400830 1011071971 691884456 449295658 21634592 148525968 472654803 182569217 125354097 395461241 303774841 891179744 961972906 963072636 237324358 199458442 74542769 81061874 1048931467 366046611 848870269 189622970 503669605 13447988 295373513 1610256 505185391 425309819 678565443 857496810 258328414 839617698 810063382 883047121 319193458 96041581 47779112 1057076909 987717870 249269174 1055513493 106312700 199514787 384217299 419351761 745773538 181709975 73395690 245005213 359081071 666978821 294508988 502252092 779640643 279719197 689468444 631506696 233149731 995143242 959069375 1003602664 242672147 1022145703 869227796 203929783 240799112 335458915 509080887 52979659 1010863041 601706705 234317981 836295234 134812219 116414427 207119205 852108397 488056008 505021207 49183942 464985269 60727756 849934307 780645715 965560195 377770962 1021134222 333179545 194093719 365504105 919880775 897144086 21661108 1059243306 383709176 794997834 107794391 4377166 50800634 786927270 894706041 331696371 700232968 184387450 535585928 76406360 600466144 790903428 90507955 818638506 1065326473 199268990 620708342 132133560 494748294 134763746 361979957 156434840 851995043 436195054 625346140 1010504473 321612240 639805275 500695107 971583968 970626065 624261443 541284032 107218713 628160645 807061287 357631037 922712365 614788802 780324467 113792360 875049547 896492991 834792720 960429454 173549716 782559975 278301537 368748346 909376295 997245894 14904939 961663907 69656289 616030774 466317260 967489808 104580305 571252106 354514225 216621317 531115909 59022040 157216426 469867000 239956028 1035601708 1044666000 633812288 229665031 665284385 687970081 928278139 266793625 204288251 655494324 262372992 234771228 777513325 881645927 741399305 948033632 608125467 708400486 932755599 662037032 258910812 108177245 1004056062 783757830 1003146858 770371622 750680258 570998950 676064315 164356338 247076081 595945722 168059125 649612603 711829906 153689213 457619796 192062341 669580073 416976755 911398726 67648951 305121588 479315053 719879854 364373003 249731114 838747376 845506162 354389619 909571103 103741249 121879032 736674341 1065881366 929485599 16810938 25106842 290395720 941848479 788674832 530548336 789812595 957844329 210143887 827503901 711733403 558264878 421310526 603264004 1070161781 580313847 517774174 349308845 415938236 1028172020 995592455 927496229 771402580 1030061443 951691053 300111654 264639650 118972388 114554308 758523168 441908082 535201462 237914768 539519963 289966712 19414808 303855685 917444320 795690702 889277215 656363286 78938496 205794744 1027939191 527362836 89688584 800388283 197332248 465078558 39102935 66513348 1001849948 55278312 748743563 680542170 575929411 845329138 50876462 41260619 255963419 520344251 1018490004 43996399 999577827 577540833 230337770 766398254 230182758 551111229 668789667 451696434 144077979 776773719 899462007 338651177 483053232 670610726 806283005 298818030 241526899 27643770 683431093 319616628 721058125 332761221 387873132 192775694 316719 242934655 758325068 441934551 798366376 517151964 553713947 444472660 541816481 838455499 489354853 220640574 624796442 659038476 868249247 180352553 353179742 20531976 358993096 705841820 451775964 749076106 893471788 802408283 555856055 1030573306 65151763 969166780 969360547 549286739 778511570 583935152 391463132 323182344 561143964 694725742 409782286 50492235 1072660619 745835715 599544837 429998126 589853860 844001957 274871339 555150227 875026589 201790122 60866732 167597778 69224677 834401759 585278157 827866151 819986114 148328494 464199665 1043237530 940610668 84005404 388940161 12442698 721893304 469286176 366707153 75938929 448610999 194928270 1016589492 246475209 644718104 855557677 391334603 767989725 702254477 658857381 185450624 158542494 959458969 533311908 740374365 837241236 705874543 120595933 161437275 46428091 477672009 919882486 863910712 125020948 449932615 952042421 882136645 924802211 187152284 845297000 719952017 1014441703 647560858 964941260 741137022 895604575 982948349 137673960 263569571 713224966 607566713 816028504 384137941 148873005 145363554 754833353 263840865 757656830 840102738 384394572 470415977 582746044 394864916 287636675 731018193 261082862 429749314 288324430 1011653091 142331423 817295546 319159192 400834610 591159103 1001193483 961783867 167522595 53073223 336291981 752804422 238398373 694743031 282238125 419705908 481088767 983292662 27916360 500523178 524671858 921450677 18833422 1070222140 526112882 242362513 144403403 182279424 319276792 800340318 256203738 898429016 317465680 448877881 16246468 147178329 15304286 755818284 1053999024 865906391 384889327 16269576 753455226 144697875 548608762 710097252 669213172 633744766 856113421 779386070 105420130 512592042 81409226 652773578 263272545 800845297 436334055 219979933 815514748 1067844954 621397924 151712943 916865976 389458180 1021821603 120229958 661520914 585388093 851695478 692698806 189507972 239125895 457315963 208992573 750548157 840132643 425157342 63900449 1018390272 924014833 423134286 583830541 536216393 574059175 81290318 240679166 362360094 393699224 738684292 407806785 930354890 222059846 356068769 548997428 895911509 23399125 775806349 158732677 15759332 975003707 83992957 916089251 419405376 986487840 672208338 1073111961 585066866 371894747 958224727 225089738 1020392535 863119749 350643885 792424778 523639597 611932786 197354785 139283990 858792254 398664781 230078955 679847501 739795758 150364605 151105348 184113392 809284280 327767314 468308752 700627041 270753665 379851301 539874438 102897897 309061371 236471181 309256555 1041741546 318938551 1049311091 682765148 47700414 575059659 380630163 814841489 777947800 809256298 304420327 884229264 315458441 225355198 641549241 475621464 107243263 402575208 914470244 459070840 689043682 617067491 394343801 864178310 898925110 5472880 939594291 635344958 1026187210 968529181 788890962 821327516 738841817 35252755 643264980 175609895 138409667 982117921 940015830 295123548 175887194 921977340 688973245 835150828 932432046 835616713 901774527 165367823 574044139 951310010 854389038 321830554 556303473 246477988 981680319 25586746 997460711 1021766705 238168967 66965594 20751015 1004512286 359418849 383309122 643224853 458421999 1058391900 1063054221 647393406 827413196 528144048 141850702 930277603 555281328 698668838 55289469 661916100 782064380 191823442 282639746 381528746 583979264 248866 184474379 524728433 743350982 117775234 934125191 450054611 21710343 232607803 136394210 287737119 401503101 229651491 583745038 92749523 110628526 154142518 78386153 915155113 78373758 669122495 782252292 176698149 436815530 247314610 676814781 97140991 874652790 492524425 729493083 591150313 868652911 695762341 616004991 284972170 1013007571 1046498068 991433673 810217 483349941 13795568 787511609 361457592 428686587 987390872 903381352 219835328 1007633177 260818079 808208924 1060193687 422817111 335591474 1022070704 18938952 800639375 203270524 953867945 937043741 470891725 1000550671 941550683 741151937 5728883 859420756 562654755 552040023 475767588 982892656 1037983709 178020909 289712620 358691581 292407306 842957449 342408650 162758539 486785061 323105812 16897740 803198915 313441008 925972888 528448685 497000946 451944727 799288966 93017889 959574174 573862031 53131054 689136596 770735330 899940585 322140622 959604125 327917852 559095179 760847192 505963051 495271507 751332137 652554626 586665003 308978826 813054297 95825463 114837692 64482259 687785903 366914465 384609093 1037948785 346239340 374310102 485162921 361380369 591524039 903405045 618982466 185161843 424077578 102463039 977867559 322475755 242121843 351757826 252123811 255719892 481797029 206472535 661973344 641146540 1003739110 319254058 436271950 843011728 930766524 665109474 353618080 332710495 48156128 330597646 665059076 328889588 33668119 713526638 221080156 579164576 293422970 606456945 285529099 517143411 156279793 881689824 996729346 554605590 922853209 37692746 814377202 329334897 922808744 38000123 219894052 769766901 680575446 507328879 91885674 241784051 1044589785 67693692 479920321 250642 953234756 304976132 1013635538 203266326 808966109 823705049 635055578 657219063 350696381 650444259 450251195 514807429 322848604 333575505 603166716 836468700 972548209 855159145 351461766 40393170 61349139 217903993 201963978 880915352 678495103 971606411 686247469 869356635 449594734 550768811 223264328 987577453 47591217 147752356 253731934 612943261 682704858 392770253 647862905 460244272 451728875 564279675 150178151 935177635 1007843018 411774505 1072101389 920568952 81664596 306680236 102049757 964385135 776682264 948320778 797510357 652235701 209885937 938086072 283180433 945495143 911095292 480229158 50885624 396146990 83404111 919753983 861393169 101177227 521148124 165429710 643615571 149901777 147384679 136850749 47910508 892377339 381160542 740527364 457252580 212642004 820375897 966299796 174398224 940015077 179496343 1028898634 161348508 92100921 737395790 517428534 109195144 139895637 845439427 693010079 1036335412 1020585011 552392703 329001314 927656274 205430980 849326746 425190146 95318541 180857135 791124874 466429087 837407250 756343400 532403166 963726861 204997444 378570445 917452996 1000348334 1015607104 410621787 1040797232 1042636328 772356451 286236426 94994729 430721038 297845940 580882883 459452339 70644090 376314914 334943327 192531259 830538526 745003977 346310979 927705572 1039405636 899506103 931760832 711464032 311439875 823329234 336513628 186061942 179206328 452077140 795335041 687911795 449459354 181951653 897829367 134723698 230865092 188552458 621133205 871069759 48138972 445314325 168357593 141764211 23023109 508892957 208846338 570975104 562064736 367690033 798814680 687448576 604535000 543991427 426098522 695745641 1042072218 810285486 403928352 622226988 250497788 6172402 12049118 335621017 228531523 519402737 8658694 1065934073 16780431 962835979 787770118 684391781 1003642385 152677918 775808149 666866338 375767650 949679875 351073127 460033030 809813518 178113198 132384269 1042663694 59479975 441712251 699725368 586204067 435297731 1032956879 619923820 1034665357 169661217 817534527 172647327 376264041 862241007 711004367 481879824 890852672 592797037 242871805 670159138 663624725 468431870 916865151 335938358 830288135 350027496 88018447 460425552 657038109 352156913 281957382 420170952 378090987 176312680 303163495 727251772 484631989 476582061 1010141103 927419344 656785169 389916883 616998202 497011322 154380065 72259318 1058165910 219888510 318736590 35134306 445146834 589291972 198247562 266945811 973285845 879733337 642815970 714430887 985963035 63843820 540460661 208121078 625978464 493553570 419454206 791364150 295374198 313822748 1050368773 603276141 853818870 128420011 1053362118 111270849 756121088 841199229 899413428 133170104 492292802 784469176 954767087 640653525 717294822 211519082 134423212 117661343 998398265 32414804 463753507 623226438 927913647 79369618 990544972 684752465 215054020 687984738 345440538 693124328 304275094 819068353 519966688 783095515 11240416 1054380080 905701643 252790181 528793967 83279754 869173917 572544535 607279552 163710725 816417537 939240289 608541999 845032076 360648012 458886421 747737381 848031372 428607014 629714294 123281814 709484696 280021803 139133438 403570753 1053221408 720852167 772678069 513387035 1002841743 403407355 540617670 106601062 1002703356 84891773 1066188694 703830794 586597990 850304650 514528048 78479402 924117568 955636643 1016513158 240967182 159777387 67539328 1066937207 26172654 351737764 293228571 563921498 264064261 244610701 261371572 1012258266 38232563 573828009 555336797 535801922 121434477 1008905913 541883664 731660163 689573298 764000446 884906506 169990956 426204689 598836693 721745701 363839754 307225505 142363350 639655991 417490036 481443127 382387147 790150021 415132728 733599967 924839902 751095015 796495641 644626601 103152675 1047063419 523913775 433944075 144295811 15670648 617754980 473030269 469209568 482547777 427751621 905674260 581381194 621800478 530159345 834963758 93939309 438928178 994766175 116900476 893806757 552204136 205012225 718533322 208040972 855575744 747621664 766326558 19304320 572415381 65805150 564920010 50141660 700039990 905057570 907296017 504761377 884524924 302696525 450914579 160389579 225286179 626788876 149004344 944150878 507454006 442410264 351932753 115161928 974633331 996254388 781532630 135054222 158706934 869220328 268341334 423474944 193555077 88476665 1020586540 592315698 1053291721 633949979 699321658 839097696 146534163 346432192 317427797 701236252 405710901 784489007 617289417 627338118 1008871971 125857307 436220078 815853424 824947508 754633901 135433442 719345020 95207310 242997107 233451416 644300165 508592340 912800498 204596261 442361298 471906317 56017537 879558358 975349762 53270758 593678656 794862823 948024838 301578509 942122302 427083503 920033430 757152991 235545702 315106604 392108702 878934145 353292642 250138713 960406222 1020237500 622581303 160282294 566380827 124905158 848615916 735679709 540664805 438012621 437724605 446146118 420389297 268561278 358986319 1020687446 137296122 132946305 1040455676 669963079 943898612 494122406 758576178 789433122 861072650 66080910 835364795 651893980 1042426306 644085779 9582294 997371291 531152349 1050683833 665043562 345144625 678832600 464472520 335961755 115366965 679669841 491922355 106526931 547756886 861972244 860559080 986769883 104352988 966708999 306105758 500442540 921457530 780005464 547940301 101236842 213724394 453516378 291846624 741049002 554728828 1062938593 306776459 425149587 22641696 117995755 796436891 760300403 921666423 451397693 376015558 1059215041 799612930 338828303 56522957 774288033 979556230 1039819691 682171130 308084163 329881786 532202480 704861117 575103700 641166900 747502226 136756987 867360423 435570744 714087107 311886936 315120366 445993762 474098610 673763974 96705557 351981248 124636505 894134817 946796093 608787339 690398903 891564350 758435377 430358377 1043032421 926559354 1005839687 63528345 773260024 707354888 952520239 501947250 436711280 661326350 563365722 690878232 837209267 582699003 355668534 213195403 516853622 151259687 1026538356 108211533 765454317 469355692 680908526 366732223 894411924 396073683 327099670 877022315 449845027 842535998 766542341 756193349 177536757 279965753 604885940 878659053 833756206 773301985 816533747 739191539 1039198890 613119365 566462183 841762245 74307917 66656480 691306672 65985150 23302572 711422964 245920874 734506347 713956352 1071849965 65221947 952979406 710700913 91685209 67716749 827681045 144552284 590207165 903810196 560075656 559691898 916256528 128739671 681013277 712200623 996252776 945189683 826116948 1062813798 437901899 644347704 651443139 764924062 825506440 185548284 682816516 875661110 931303182 202878787 1039132514 333165120 50345356 28236918 677693676 863214578 942010786 380074328 5564249 911360464 845299868 442007426 849399611 699707956 961363218 211165895 726142235 331950952 147329763 831322631 917301621 509648965 181499284 939619527 559096929 548028039 497285339 1033137886 478388212 682754032 86474081 782996679 357750822 101820440 12013288 166609843 533221419 85546098 571934880 219255541 793554611 1013554437 610890907 213072091 452314227 991555986 774999164 806171291 347452441 20714565 357945625 407622597 749966120 162794251 405319686 145727039 893360440 438282840 511902942 634041327 858706367 879696648 594157349 1052406557 100005719 380975324 485666757 915040650 285669305 94565926 864576041 519705367 329899692 1062234421 851238834 65305030 853534261 420111144 803606687 428579781 381203566 275689857 632772457 213425066 21107555 26105168 347926139 502578489 1051477173 937090094 508578587 857127277 968667105 49943362 506063866 271872330 921032779 737943846 702540240 282540244 574030039 299253081 974881323 805441344 5908640 477239496 44599151 726231321 112035874 304107755 317354846 541198278 1068272169 837265960 975987519 529653334 367415566 603126248 1064862537 385131181 839905716 1051521736 1035376200 267498369 265696439 20978559 658535390 435798130 9278235 408657936 321399716 593990978 563587080 809552474 563980479 528939501 742514382 22625627 248163465 961548283 171625928 725687444 826465278 171842712 746173385 577997767 1026872091 1027066387 739853089 495938802 674442209 626039828 554315575 642889257 855563753 31239519 41697800 983885007 476072412 292240029 85424895 784195904 730241086 726722700 286336661 348041891 986085621 401934838 31920154 877493087 1017738326 1043080123 336673734 900915128 614675349 1051472571 746285305 8565574 942674464 937063487 453475827 61860083 292256895 589676606 659179002 410383180 883747916 87290251 128076706 603622072 384242566 521864201 658515189 88370195 88215428 334106840 700929859 16053283 944697107 885195912 893502491 37031111 1011827723 366147325 158345067 17272618 244560265 1013685330 919552468 1019942836 307514849 229257909 319982454 164364777 29248029 558879128 946687377 141442703 939367998 862546005 92384877 284503026 689837973 942019448 565880480 435415734 1013329602 267263582 250627375 46171177 601082942 345753615 683992323 101134461 544074458 436094923 280505723 344291640 914625945 520103532 1059918344 71603277 34388937 751479404 1049816797 969060859 541028457 377025653 700331961 252292341 496016828 1004081557 465594295 775422122 16807412 314420246 698865562 96290908 322417507 512568051 890250125 350231231 664855144 288021411 583082673 48192307 169505923 726611074 589342815 577745237 530818084 1006610669 899288159 859532224 859491568 634756331 45752624 911045232 312025465 700627597 611299664 254069239 812522594 638262581 620631906 250157177 704618067 354613408 1063249571 460252262 669657969 1037363483 812352293 1021236380 698102115 304299895 693842158 248130433 447032327 297501675 835299091 654733985 805477825 999450965 521702246 990670692 290888288 374333403 949091680 78915721 887522621 61189598 1067134795 632975514 709427894 241093234 583096862 934465422 958131386 138970515 416306678 796793532 650342910 85326335 927666535 344594526 889149327 770106088 14730705 948805806 613643476 492205471 138655350 325623964 28992445 174900872 216947638 439541746 585237313 688366598 319135187 314625258 318527702 692369035 735541094 889472282 354280835 751224710 462216298 1050216536 727738082 102684154 789125973 899852345 1054401259 235690993 842807069 828704174 21518715 543218469 546695132 637841063 766436984 633522676 755741357 144989211 92653707 268291150 1015824051 1045334945 966998768 110501120 57742192 838798485 363942581 725423039 756406169 74224511 387143042 966157913 326539494 891734298 779219305 776748994 548576511 120040046 344372402 585282236 263406305 499643922 884512258 806579279 736139510 6107855 559992295 565149967 1042720178 976769199 557430419 286103134 219103144 1047553508 23647479 240717092 841764977 683955874 406201647 900046904 658352743 124584622 382763319 558808952 470511453 929316638 660043910 237602150 57647711 1050447690 509742367 17666032 391793795 133898348 394099505 450020185 833804339 45325847 213324366 624185629 220597746 37085260 295927921 307181131 20894432 769505460 918598840 103940376 662179656 446087254 497741855 950734482 627537958 735955050 529929144 452937808 848435093 608437893 583239409 561786691 54845639 1022982739 889013973 289883998 984071705 165643459 703810711 575623452 399952046 51153764 26515649 841503640 1072868509 249550159 460835037 256883219 750453568 294364927 810525398 807300197 724766667 261122038 502123476 617650455 236028399 605545424 694769740 491345666 866779813 989781844 227476624 514411888 754437839 912164444 125176195 969675867 568211956 20931163 807279385 251996026 126013350 124828077 529967816 461793890 876226708 743397592 1000404057 973825995 214393764 113730225 706190580 943172623 590942468 946818631 777227803 48921938 696851443 270170439 267788422 43928154 116232052 237558956 573457048 1010334460 574129461 317525247 974417845 711801287 306547475 226965350 676035948 551613099 703491448 726304509 583960585 979485250 703106680 406057916 622608124 842119452 30838838 1016073441 221185658 41780146 901347274 974520843 672116072 203921265 1027893146 947925037 539043299 98991444 116920413 1012983684 761531507 647518863 678695809 821177971 669690228 569628570 513775212 526607180 609489248 567296874 1002085557 645979320 431092304 1048752888 862603831 292262379 300346364 144015673 750431839 781706301 448105449 336232937 717117042 1016204855 754347982 165630122 315126833 251158447 623946594 497742617 971383834 192289840 9966056 638489653 529666059 137321665 741136920 947873538 70634407 11136790 790124943 293275723 251065185 236332273 53656733 698531009 57247604 575146567 33529417 185919191 216636953 452695310 229767966 531874290 763779554 1045410361 89617767 655864025 350680924 272192414 408733654 6573373 242368460 955967091 569421420 495607095 460346884 1045974361 364250767 525113037 379744389 41485339 205681510 575456661 953235864 75452465 459721519 402560951 84708820 432006341 420167701 772468375 444726184 596067064 442384518 113410369 867577394 772336282 854398307 1072673703 762996959 740684395 419469963 1028325731 95223040 969881186 1070706702 32092561 1071523021 741680758 826250739 47368031 635500649 262025920 869721941 908500902 384824383 661502446 667726499 865337808 1024619553 591485173 117158010 200638175 357580363 242872741 537523548 545795857 665575633 958759761 666930652 1014909737 1029714614 138546117 1007073904 181271753 14505282 36062012 115433003 545930187 188346381 277510997 65837164 377233563 854352997 470981848 31950940 287366881 435096016 946689647 71551617 384742218 14299530 438979217 377935304 382673557 962009717 758828882 832210306 1046142980 1064390134 489994719 72932354 755399285 105610178 381970416 717626399 1043662309 987969962 898878401 304208731 31215304 875003951 326160495 635960211 293599542 81126455 242357770 1036638552 1066374399 257026686 641896187 1033733738 26241207 416424075 332510867 198512005 994519264 717776823 791593465 1026596885 795544592 639533171 181855376 642895716 233897647 512875794 643831461 244454873 960338266 259389855 551646451 976805512 242885362 38022573 630754813 399151353 570882641 808415733 818767384 384688463 736444080 405216463 564755174 667453821 906617120 972244132 147245534 210588317 437699899 569749454 1019103553 681036378 122283909 589762395 1018050852 198669774 312442542 678679364 734934085 794896757 653957078 824254583 950780694 265242871 409966275 54263743 623804472 656844639 217577458 515595385 93820703 73036034 30236514 956199429 105409628 1034544514 201684305 880227382 499535167 150796628 363165769 333793805 713454363 852846725 171631319 974439609 706553329 167004867 492863142 362731776 715345125 1021883053 34504545 256287658 406915938 970137037 138130828 857133723 615178416 115997368 852699842 909204488 400304550 893834599 1068178470 416854704 101617515 198946800 142782603 746258731 631966758 737079029 946414388 882103346 193529486 470684754 134493611 650711647 2918617 294273168 859117001 557918703 80061437 321125170 1017667574 15054654 984667435 41098764 893205310 294281548 21471195 881989854 315856805 959103864 752990707 835658696 350332578 47259483 243952212 902876215 386782171 493744016 421012523 742538994 878295204 469370881 599913832 175155211 444275871 30887488 117555076 259076057 308338174 947756427 1004879409 538941825 431565877 574294400 852400756 946597551 723375439 625634541 265193182 63179767 983632718 644657493 25215405 890038301 122097241 745349319 190435160 337037547 869702834 755745431 1005221666 439259554 837799351 1059211862 168160130 209321364 831582815 840579086 1057288749 742810868 443961236 100425159 1018399776 349241978 789259015 113952672 443218237 5810533 941495726 1055030442 1032011724 794951852 213642770 292428957 193899145 127653518 786951458 286165186 600759962 547888520 1031153114 1055588125 365236182 399105991 101767554 1053491413 987560073 26527556 732752726 880502407 154724970 797615823 1071142544 808460181 793757840 249269570 774537576 270810810 242421170 29162895 677416472 325406365 549888234 634990845 795022110 1008483076 33966603 976067947 198130887 12334179 277195339 1009538279 298529517 194021868 463727019 625011251 230464561 145154239 657172925 478139219 788615309 331688495 1012954187 109300608 978630629 875427608 961047162 173495331 587667828 940355455 836108161 1073331842 556032079 262337022 698809489 1052106224 534831693 621477844 297723152 450411563 997031166 741142031 814612901 937355223 571716982 446537126 909688076 976213847 150111727 663632262 240024531 358547136 643222157 949459392 85873342 463584003 709831853 355079316 493503144 1056762294 737321281 565536896 35247342 505366277 399034439 283545356 175188118 571351563 406785754 981393627 961224714 177380273 817931961 283754288 382780563 304258501 168592294 940091591 641125199 454869917 257699045 109160991 737284188 45066681 821799196 1019338347 542597057 26015533 718602942 816655377 1052598974 869048463 515457204 24226129 617200811 840468568 502699585 262778260 953824425 517976956 575467168 464484410 996172923 837396708 464452073 877953244 628827675 515671446 794188860 513061948 759807951 573301367 860005365 763095110 947641153 867227449 210263724 536518475 919916481 871497602 74657678 630819001 351825023 119461273 39643189 431164560 128157500 87468943 712436447 176238052 17612085 540095239 70771304 411554752 504711655 394128864 538716890 563044836 196511050 332911432 284634968 770566231 808726396 266058786 790926857 1001901398 39321552 327952100 1005330702 171328573 955263212 595197978 113801050 513525779 403861331 274170792 14020387 590759241 445968387 14739107 542665549 907507774 356652693 717552936 468145655 6899308 356013581 228787935 388846370 554898625 930729115 111522313 287182510 620694374 54292442 988108993 804241845 266857860 1004765068 811644802 521474794 572532963 929267709 10774 729596004 238879577 834174589 995937437 111066272 427232166 962836494 385169150 65156064 159761494 903628334 32459475 727519858 729255263 494831004 106479726 474951199 143379640 728767097 930158921 388786207 920730978 798624351 497683220 809175414 929206909 108272210 328083225 196919099 388224471 290527880 826646935 1060201190 878124340 697688357 897145143 462793247 445107800 458315181 902451560 674177225 55255868 292765524 410484955 1060010477 999861066 221786928 757936835 650487541 412063999 194816224 898282354 2726325 1067373251 243323385 642372809 18380274 836951102 166678333 849931543 561546527 367193895 585010561 358285814 446515798 666231632 856280734 654968188 30868048 1025644682 788012792 275534624 465851415 304514705 577215253 158893855 50103191 1050298597 597210274 294166521 126054965 121799415 398626856 248405983 33084745 903553428 292683977 239732937 692799956 307002406 904660236 782469863 392975067 353302783 704907858 614464519 609614254 685039462 766724541 258913489 802205631 664375310 88952851 412406657 612230931 969447378 367502786 257993282 1023711271 961611225 152331190 636366674 937279139 1013117930 999993155 401311953 516472480 890430261 999538147 159937341 278096351 1002095433 922657894 691836848 56897474 808984798 264865739 599706190 876528818 960628561 796226106 677304600 217832813 856822448 345954048 722827797 83798516 180297992 651597665 557682011 149514827 1014383374 176106648 259379586 433752359 149256537 571453496 555072575 501524181 1028847705 757121212 431433283 276374538 576025845 776807056 69395146 698865081 877950171 655940241 697510143 240361345 932664059 585025331 51747023 200577666 188120972 313125956 528983056 766846492 393985095 428819758 570804856 476486320 217874117 417038713 147181135 769708894 37166917 486218923 330938956 262708631 217606179 180767703 122754119 555729482 15909302 718978121 1052013757 446228050 974706287 872852068 830768288 531427724 1008308444 32317703 158076649 427286070 617938959 478889881 549847254 987218209 707694899 229852519 351168715 131508777 711246389 107505883 30577554 544707121 117750738 108558620 62734626 993527282 203153473 501512706 1071257682 676843503 493768279 829831504 162557142 127068266 816351207 804049268 895572681 910086929 435088811 146515918 408639958 787751462 990153171 640473161 42475423 1057650139 189291965 621263854 36886307 755263950 289733994 963457947 625947471 527504727 807711574 570288299 491118069 451827810 606008743 446460673 371564169 1038209902 456133480 755561147 516089744 123746226 930583557 110740790 33584432 986855322 188601127 62959153 740584704 975032488 860576005 824244174 998554038 143514995 1023798303 898437956 838207716 546055220 630988634 727380445 880608349 650337952 693020758 557553298 725907601 614352564 201438667 248081522 499760579 764674251 256654337 359989853 300625339 693723129 728360947 204417774 337570718 1012913493 171024989 714775568 50686760 87932997 394230164 1020439663 660621375 417278863 358406046 1002629075 301299943 32939273 546006087 751674669 448418571 621773841 276643151 875720798 304426479 243500778 662179471 194571364 93949872 74831312 216959009 100106997 468796273 681038658 596527852 735977425 354959516 665344583 676211446 131935044 2515847 518165153 160836720 183682225 1003930203 484540267 1011011446 653325474 785287432 10866495 36834588 972919212 686745005 804444158 55126903 631066291 690846515 679076927 198505137 946304280 91425380 371533597 326307660 582652014 442263204 216289621 852974395 716059563 340494518 244282356 981227055 874575736 429566663 759997527 622415749 373021792 291835123 156709228 263312453 999616030 351542740 467486490 618409107 779726010 438571899 602867746 350379033 526062682 930954369 1014890472 677961168 710085572 190631583 370506309 1073661421 180530733 1066615153 834519562 136177088 341803866 656483982 635340581 605108100 971329845 24801402 935468582 478551819 274456746 1005612357 670454099 897667407 74851051 273387534 542071996 840687439 71487513 375125739 721966948 573689189 243195750 271456527 58126348 214717303 340938253 727230029 85057504 885055248 749700610 696566960 101899597 561903749 298256101 772265576 834654854 470356243 532641965 923545479 50963995 215117435 590423044 389891573 75323094 390248804 240604624 942732854 447222780 714748319 353009012 115449847 236583396 378185808 504677897 644723588 1040606379 1017745133 309386947 263736050 238869722 172916871 807350388 552816773 487317853 483549230 842911399 223806851 141396160 376139618 272426344 371421803 342217743 817199966 158206216 294516055 47941309 69839041 442963440 931725581 980900269 926768793 399359852 756951376 563821894 510326556 648617469 213900334 570552433 379619766 769136236 431320503 173537100 95392177 576368120 445845626 29296338 8465220 601060090 978798765 542827116 582891198 616330493 155845863 357030233 370607703 769037970 266712893 120119357 388509486 1445881 846580003 38929418 385685846 654344700 206425689 1048574767 196595503 567954706 224934822 509785033 492792255 818927138 99782695 270350870 597331297 824431855 847061865 53027928 273549839 723574673 1014249700 368426945 397018588 849935829 501275864 837409787 713068597 300880687 481470701 1056543784 810868588 691824227 546766636 344484134 275698642 747280175 34100099 526253503 122508597 250550032 756261787 403398086 556460468 618429710 157433326 744047704 685360121 485487802 318074665 847387104 299927459 1041195523 751556742 126902143 937975358 389888535 58480564 888713847 690307222 858109979 547750882 664972595 1023180013 988379838 599892006 674575923 930284776 408152576 113696206 264999421 858522282 1051945063 587945459 655962125 39511130 985483252 773812469 77332432 831798511 671523774 313326527 374256771 913875583 298311453 582065358 783832289 786346036 623662371 39111010 163520617 165396652 937094077 879295710 733637504 1019082787 646784024 106235252 417494745 405168538 888141282 837414083 361365294 26096606 244838331 385644493 207587494 697638632 730889157 226158854 888352331 303048740 138705893 831958096 563608684 408572778 543849542 35766233 978792000 213369328 357661634 102455536 400396665 43208800 161724978 985686897 434359118 117262473 662223258 324428014 938667764 1069964373 795212444 199886906 981614610 243412928 927403433 353219188 430433919 59205473 571104327 81618522 297961261 845984846 498304131 929437263 179990029 285336874 822393964 358462298 617517204 569658363 944761218 36896175 106325163 349161871 975290497 566899255 171512881 991755400 1046428946 120318139 902161384 566999867 85509085 429347556 987367581 1072304748 537355802 894747144 419620060 220380424 156143681 511483014 282693414 952486890 1063392423 3698024 656790027 684732760 29083187 183850866 856016583 291000893 65590548 401996267 11464707 949770300 941736198 206248092 606144344 682314680 828061614 41051397 147258599 954684107 332103439 787850933 365192233 182270836 90431330 516460466 55221959 696520101 690146774 953924566 325499577 944263646 253661071 73583111 938503911 951053399 692478576 744974654 145513694 673698185 388857589 158216888 55029905 445658188 377215222 564657330 800485685 358102200 285549378 693913648 227168328 16098986 737919122 963330491 918870723 776730278 837021125 726272885 647172754 237698670 874075656 989187818 204790887 488393563 1024143766 939859905 674351373 787464101 626982869 231446024 906586583 937083165 824819574 805169610 89236010 28251285 147475263 1050004987 631422030 129899527 459556325 1045777918 191309466 145943116 1041278191 9026266 837575216 631468278 663941122 267730846 1018707072 522995297 492893853 605576439 999637722 793814407 261747658 896377469 61252479 11163786 831235291 856656491 557011813 1044314146 1020323295 759236109 406646061 601961112 774031348 79355423 426514422 639199669 705423512 239195283 842835432 1013004981 559085487 1073721499 1022176928 786235745 888018769 894994470 1034905562 701926137 847010870 404223254 388796121 811516664 833832994 129306365 337373203 957003546 617937516 753019465 576079858 269249159 1016710181 1060519326 486231635 789996078 40767445 261162916 58152368 478178660 97498205 1027670884 28982292 802836957 901193132 772266291 820891399 726168965 523638911 101207451 1036733200 695860495 912775082 882238558 1038669867 698030626 437112371 182706945 805914596 23731566 853772556 699550977 249612221 264224416 287030755 958484817 651422602 223668300 579479156 407531073 286559845 18082248 504945418 752335348 350016151 398267292 835056272 594149087 879643173 1022216684 56805562 914744556 1040519482 394559514 881883885 215608606 839475895 812272328 257438046 434930291 187203794 1054409369 518648688 633614039 454662673 1057444534 132591300 879453601 711508526 519122588 833702333 226725205 100351826 352575973 706429155 278500236 684141186 720754272 438053980 1065350897 118406428 1057243722 801875495 825828898 377035457 791580963 935150665 821337401 434099880 795878143 286511969 795160288 41415786 150185638 889388183 216465953 1023978588 379741913 51377180 340405405 456282514 833817360 674359042 92239760 329306410 387565896 1046794391 448074760 902563143 672003161 496489456 1008700624 221261508 2864572 525350954 334270230 1006293864 354442399 10746283 535888149 1004319287 572652503 288031223 774170227 409814007 656810236 766944224 743946919 433677490 169297949 877074423 419329293 894107930 736787399 381904696 640677279 326238411 817009312 926543297 175583476 1001990165 19997948 428438510 1058520697 393355051 693473584 643170785 1058264186 1046159560 283723233 886858215 457967822 315716881 109718323 465324453 313674815 111196718 689123129 483257352 320429236 393154581 696371752 473612698 563436400 87577045 982698056 224191182 484358195 1033247315 37166576 777930962 875231096 539082821 638495581 579570987 1017002861 774323955 851557281 30628350 445926174 894237358 842400444 780029147 11964685 232287064 367863745 240778545 505720864 328748069 412394667 1024607177 666009876 115787963 822104957 738850679 235733203 428473720 966690166 694847089 119224390 950850914 902376770 534821603 731458857 511591695 739768665 137307865 754020722 306500414 858900385 978419906 128862665 315752551 806819411 174223460 411912677 832266669 190109367 150389090 413505918 276296022 671455721 211607451 583191110 786429721 300956283 326117935 945251690 1005410653 586162291 804528563 944515356 464352114 46238490 599111573 181298122 646219192 26887280 1057964561 651888840 392042660 260555203 1028412883 710263989 1037033617 15897562 547952460 138592948 1021075054 432645667 585002675 803980064 159435208 31322604 912324726 667996753 642602574 377427615 1056791213 921007657 921426964 17040267 720928313 906733588 991177158 958799780 868907999 593314794 166747773 665630307 900704737 649934928 10239240 289330013 529100596 122181125 443789218 507581995 857204064 606858166 295434874 565783667 909495232 648000856 270761553 566569158 114011315 246878981 724730818 330837839 816776301 769573578 631510321 291187670 449491078 364472646 1035011395 955974232 71200311 680430915 611654760 423588397 563824514 1063989510 736365932 1044118222 218575957 709581385 182409973 141182270 716630915 95405789 728702049 827074681 97681613 246537772 367461676 649764229 863231328 725092417 589189772 47396787 770178157 45502617 328155894 802872913 230898722 470021748 629736877 864898286 872577316 1057861930 242829070 712184892 610937681 77770288 344194641 806816285 1059361932 785774799 506056548 405024589 63900830 90412037 474291304 111723807 837242422 1026587084 133579542 541655273 711067314 382128699 747477365 994930267 164808123 342797903 718461601 513315966 58530900 840419592 504509548 850371281 736020009 104275770 585369992 886548152 775642429 113652517 950495017 95060072 202683966 953377861 345039966 8046115 1006106516 953276453 993664958 216519915 50712503 770381442 64970430 500780644 967606199 632729756 553127761 300774279 1013006528 258592929 993155728 769668881 190740587 624021246 1026762423 320670611 568542694 262977335 585863783 849855544 685253237 502805460 208584966 363872643 72944871 531833493 693946891 153421764 599577044 944165499 214398342 406491591 994067936 137298437 183558047 676486847 555747789 107425612 70486110 281496769 761910217 544456886 178807235 230789077 634054958 698463673 497119051 98542742 39115021 412970266 962389691 1048273641 389095899 44659298 367902985 333060687 65522476 135992542 614108795 220052062 535155769 983099870 854900560 534038905 222547337 504928745 727679781 850093591 421918988 674911260 803562355 142035085 170251940 808781192 1066334038 289516771 1024195001 687457094 148430513 124109938 945640577 480644225 115566775 722513658 299728232 155025079 82044397 1052082309 280114083 909258080 278603626 595230474 440988066 833442532 340868245 261833890 159817551 698589007 732255246 937610449 846341750 717552926 626921061 671906802 1059625443 915427653 780459921 233345873 647890105 195531471 373732086 308371362 475041073 937844491 229138787 220479530 822430601 204918365 35407434 480565860 1013894655 16598836 258357670 276693086 136162917 300398207 656753113 113042406 596416227 155393559 712337803 972183501 943231751 273373415 263448522 439433170 317935636 795213997 238924508 656141663 231934009 107338449 581735421 870442744 144456114 29490578 363502192 656216767 625543939 963307797 623764923 636324162 50886175 671627509 531986889 913388414 87358907 608893500 20232700 603632129 388747101 1034992227 972865820 607454192 582572028 178128937 248090993 332570532 360037139 621435810 818981299 975121014 812376405 605573108 902951373 561956885 66360331 705747657 224682809 378637025 1022857243 1043770487 190980205 802127622 256796131 870927462 449813956 416479895 788434666 755996686 717408866 395532885 865200892 241117133 408399504 340771001 442879495 733960211 161762367 114976847 531502640 668205412 1050849415 986570974 434690966 137676293 992600857 778115431 6645317 323950242 1070952589 107569000 722361600 450008323 555542062 894566784 924193757 931762499 776507264 144522064 1055968805 916085304 517193874 495878455 631374282 432085747 301992692 1041918333 228675602 1059292940 930501796 912397843 454368462 340660022 789760524 1047846675 564061941 545428965 274166073 1049807887 578407556 1030905919 61097265 113647233 927858119 675898924 686718200 257422101 956299228 953037816 668917487 796629688 437011624 884751525 302731391 292291783 851268591 510233714 147421854 133719996 752250434 900447959 837663243 872839727 627263425 142459950 24549895 648081474 489461886 606019796 828183008 857207219 335671615 81504388 172249528 1020137825 606049020 521129069 221124233 954056626 187372030 735462890 547005779 362592683 1038514664 568047465 175850577 860535364 72347499 494165872 466917168 772923981 177712824 969201246 672900034 661422751 687993748 1057938198 484268298 395494671 467175221 757888230 309465942 996893541 623870007 799676529 69727287 78007960 457414571 754781289 331196024 641411183 923304759 450723434 597367678 136132178 341585825 198361308 738775028 610044517 228529165 689117838 213059636 689067111 235838545 609181403 92363150 64967925 116002129 151429342 978474323 165201102 240852677 913019863 666318933 889968636 618967217 432805391 1040545156 951888289 584441035 286505202 117461561 269357990 80387013 455148008 258263578 1070149793 706553227 81902788 1012262403 26101910 404814892 155732808 1052937444 245643955 691864195 182549882 708873450 437719907 695416157 202275260 601341282 717168612 388342523 667550643 426951706 1034829034 470137988 770759822 628339350 373939283 21637481 460080353 431473435 462613924 221422792 469467976 742132154 947340212 809580687 566966541 1011744183 177685796 207993715 957026204 832973006 522220697 886599655 838592084 546562937 697125931 284714111 319712237 528979806 597007571 919235150 225007471 965014440 470065801 371643936 1049221770 783418904 409250066 20290939 987035442 889359683 733646560 476694538 707677699 357334146 1063147355 835350318 745433781 76688473 455314973 554403668 520260886 1044094528 572943925 684338813 616574232 891560569 143420520 128662443 702668944 798728567 625125897 322391276 436963002 676202049 907023113 911628329 51539012 907070748 105576346 655080621 508828748 254983616 467535676 935363551 404921308 64778409 452649345 679345932 753809661 607757425 896324623 245306526 681415979 807986288 1001226240 888553369 983277669 572171769 771230223 440314442 536542716 429914277 710167426 323825669 670095811 104112946 351772706 520254876 509947650 228290171 507338633 228551997 1011434207 578958513 392509124 320010103 183544814 24166283 269384647 880273441 853924463 435542222 408154321 265901200 533376513 930357882 356051175 126555573 814603060 729217228 193150885 37475347 7264666 138587645 1065113589 382099360 188289834 19824073 121360795 359211942 309589759 809584603 383031405 13501731 709022789 953476261 373343664 785648769 920974236 1047189640 235824004 232482528 949645458 293659402 339772247 829346218 486746079 133587647 545377151 513434966 743034656 631770922 41545898 610346892 613776222 358858195 50152665 464301120 86976344 790817599 852639859 54591042 415797190 1025030098 445899898 498701985 391888767 791187931 128252115 354342093 46810955 640664264 120431718 502546134 12298387 788504825 421683248 224061324 516483548 460511997 946393840 1001201247 94845353 13910468 10974243 527216190 349115566 859304573 216500519 757909295 741168529 356307954 808444582 1030916739 907536759 313319008 352691829 383789729 725447373 135987019 758011117 658739324 223362775 52049104 258185878 509078847 119610668 149889900 506130150 1072974423 749685861 755544469 481872701 989306427 1009888640 782158547 408721929 595400848 617383244 304998797 409866526 551087975 897444660 544458559 967978603 120409512 310588867 800134946 520009791 322122475 768926852 171403560 640773490 137791629 805170131 295292296 288201368 931471841 566262851 308673871 702236598 387808947 629424751 390550774 740744266 596664322 278817090 1008155861 77625092 447836332 781087521 986311828 1020409059 41139608 747802403 176480622 723982222 54578217 872254578 677247588 994971638 507719522 972303948 454266161 655469870 110678012 596295167 659472825 598769872 351132440 745555250 198265042 530135095 464836463 384288696 220452599 993643913 438133062 341362660 260104457 227082455 796663369 531453925 846093876 328146015 506237254 76030154 28916371 91757989 244252860 75355870 961711502 434564869 951986357 682562058 490912882 613094500 333450294 419540730 83131062 782033542 804874448 453935836 801151773 955619826 771930058 756233231 209046768 572047556 88325416 449176960 664686112 1025639766 446908517 8897746 607086532 375203264 684987803 842106250 592424354 855243830 911294924 882149921 931409826 319335694 461145421 971232544 807897093 158385504 490043984 225576551 182821293 125163347 644897362 914199899 914674368 965526324 988436376 957294391 791453745 143612920 681967300 828340664 402346161 292435433 229646927 783481627 821272467 593286800 835210374 19036981 193041674 516681062 552890232 805632722 658572803 954421955 671331734 284608607 929497547 814839074 780313413 741904278 559465011 952893624 587874244 233330331 670452327 1761746 417582581 960098098 829394575 1045108437 698199298 975936974 560264896 57763644 918967588 623587351 641901524 879366397 113041061 112400687 1029302388 227176153 280494140 500421384 446769911 64948211 109153852 711215390 53713103 537541017 766847326 34479691 316096947 316112539 553239857 627699648 485744513 114564566 89963081 10119901 412321426 904574200 995117133 196460998 493247967 995297084 75694233 381191999 358186557 830850783 373941912 379448239 817695774 668790152 572409802 752457480 187612776 905622312 365520871 387658590 195790132 934637267 811779402 733876595 442865415 72170872 979728657 763531082 850980821 796347246 169487668 308086240 619711440 376573589 948211362 559780824 295315295 94884757 959837933 354494885 844605082 1001718136 251174167 571305134 934900035 294218589 768499973 75804274 428620739 76370797 700646749 1020613794 899143769 867198022 708357479 123207303 995212062 780139737 561151238 437555360 743883769 327940542 1029624702 1042948786 572880432 540638601 784387125 856294851 346764369 970846109 387390434 661684551 1014872296 327113827 140847894 719877981 390143327 929739935 669402079 517570147 532348836 525008054 101667948 805210448 929942347 824011728 993992686 1042219972 669594373 1021235046 316494698 630558203 1019421865 870792935 125457779 782403616 497203969 938287443 972259344 88881149 718918851 147898724 139489537 1066074247 119526337 961875412 730510683 1049976134 915140402 234138128 983666134 646614073 723432765 227578594 849883319 974572103 206022584 176901412 278578701 191799222 473789612 44857309 691246893 653413614 983958547 434972024 375694365 725252567 194119186 24356763 197701132 917952641 1050629751 869119025 708643153 299349258 759514169 1018907577 269998105 474159576 115346134 373781283 462481556 923187458 186473723 952510037 901404783 307697222 172586956 765500530 376577164 1003938455 360056086 482173571 405272484 368689869 559993371 129989869 397040307 152165864 824367077 869676632 539113463 1052265757 754411284 32347118 449539329 713272641 1043069250 370128075 76607445 428663431 367653878 735662983 857348268 930833658 761138914 90327174 262390991 513718067 151846057 632218360 947495201 267914797 162947941 565015159 396322923 634607085 1006870166 964139741 722550827 836683517 106745318 388119354 716359113 394563019 406200506 1013105956 747007639 570900443 267311744 71519491 514651960 767908014 698640036 384619489 869611259 424623595 564494909 616591126 952762621 548272457 844994656 797386463 843137098 802224430 577115285 566326746 457033047 844085686 393827074 407953289 221059608 999777503 847555650 773332759 447791978 290752058 964210462 958437907 636945837 370173514 186063579 93134999 58437858 75495268 795828135 718219196 238585643 1034771545 654706758 144266497 434442240 382508030 136873288 1057683525 103446247 141883310 559197296 467901974 508949347 641223126 443902482 1069491889 314075168 467473204 1053306774 515632039 484324307 270728135 131613640 414519412 635089565 372264477 640287074 346992215 140828753 665458553 300312452 529060848 96189720 806855551 400545430 821176077 223822176 159078692 181910958 440381840 931346691 943929158 443408877 292376546 327794910 429350084 940820486 871604538 227781393 284861070 608437593 133059605 392629775 694310277 790878616 328027953 203271342 773594595 405843531 522343028 46134693 131481565 734910119 699690638 469972577 470057153 80782660 929768156 324896609 158535339 470507004 706653464 487359919 243095308 205648958 53830597 876469105 141775790 563631560 311817542 455954520 569517913 281636445 332303377 725974271 166716506 995521699 964673784 334202767 1040164547 28154027 287214316 696939356 279576679 1037117143 512262138 1033002286 8636753 877566186 156410659 370039681 50003822 154116429 242706396 227928839 906175903 744267718 547018263 842727441 72855829 440583356 45182161 858743032 675446559 336890776 68396584 603638237 311488794 298467031 542695168 823431769 914928619 992098827 995078902 961348934 907171387 861061 831318743 827049365 428059791 852736411 297579061 943432102 537906447 548022326 406107188 533297772 383053550 349382941 1024493921 884753270 590860495 453188735 60751729 193292762 525831404 85924394 5754107 725169956 209167530 793884310 986665881 286505803 352736409 423229727 602093054 613992603 121615268 357177606 752060856 938276970 526964518 496050768 850553070 443868153 965446157 235802426 1067765068 841905073 437419620 573221158 29808748 213659521 979779293 3062627 643004807 979321141 893834896 200488868 271423288 435914119 947447705 211772996 1006505564 760555660 902939034 197519880 796845134 718971534 255058462 726981666 1069230826 852977629 596370452 316999128 271319572 863790369 863372881 404693278 293067237 562238767 381787014 661775920 309727949 331295282 1066715498 944188104 640760917 758746088 360790921 199424487 811683624 881706129 613342562 647344235 693832432 946768416 193551477 759467027 593391429 714599008 513472115 545745511 180447044 78141926 175260225 1046441003 194270833 510081881 1008795173 974842263 192991995 927313885 11272059 426522999 100180353 342558360 328791862 794210714 1013724835 620904268 275500236 638673176 1699041 729857593 885768446 463921143 329433345 400091095 706166430 407001943 492215247 43118354 1068162627 207429281 885821322 853460534 608880448 787869516 355457725 286350935 770405135 790270255 699027332 470354493 499689276 572994808 450191138 663171667 112504053 3729096 656114437 857566694 713562989 1007696910 928395469 375615336 675795912 170838214 618009988 1071742762 561436874 960791569 605251912 240774655 140397620 180178868 83051857 891323367 686759851 964684751 434569846 122862572 70232762 115235308 353106626 638235516 626212765 807181217 535497169 281058608 597063939 447977424 844325590 150694988 502755040 797655173 296851254 1049800287 101341065 977051553 621186705 858479444 479797738 187737100 375898473 472021958 799332763 973754016 142781181 534740850 406853900 937004835 270925669 86845837 689148680 841199926 238155805 477311157 346795147 979315191 358294812 792838417 1062549427 936426431 236514779 335483846 1065839414 375165415 601175613 710345131 245829437 516953355 176735875 218843106 606894734 1042945449 715914055 434291377 276326994 611178692 1049311777 837531771 205291953 833369916 765771852 162920496 655035889 371682673 929024885 31912953 149351959 165474253 268462457 682547235 177167659 816056291 881307683 866460149 813247116 693176834 945827325 200434038 679962719 968712526 1050765067 60830219 599596606 1003655355 130683690 886972850 850088165 14718477 655954676 527586970 171758496 14212699 867688722 619382625 713062021 72743843 780085367 704968324 192176545 857449500 374733912 684063415 395941200 125700575 1028729438 699530007 679367220 873576220 211144159 1011206556 199267869 146188177 915997588 1014000757 943413696 1013792447 719250904 921207153 422136190 458950014 543477386 573819367 1054258758 583199344 519400660 22077957 382283357 425096756 411474831 371575331 696174147 968659325 277058635 480613659 712773701 281319388 401374847 466335462 924137468 153486727 560347467 992762025 435283359 444562426 166939242 1045016698 857175550 154703145 35495937 743252612 778243822 962034987 847300625 605939838 26547007 450138322 330167989 1054144234 504146642 293554044 590576239 366936837 172092202 133460664 517967678 1050320724 634124633 247550959 523523358 893198117 72359948 387524014 279525059 641549150 817034890 265066943 583498904 365041357 285318977 578548015 875664259 779809498 641666932 863798906 193229059 412949594 127528278 650895917 447571278 913265566 380951350 8836925 400859904 498278859 592512892 554699786 663709698 249486072 1004425214 369775587 723096201 101820497 917692357 271634204 6800692 469200227 1069788382 527821140 297087162 696136482 1070940539 798077390 84076354 335157170 1769755 923322653 79740571 826163394 901340942 967919746 1010155757 959219503 21211226 814496015 313283902 40316119 796028467 593552673 549695122 457299983 1029768777 378027216 727289244 467173491 196131742 18967304 211153637 773340978 70313956 266381437 730486467 8730651 500419599 87867915 249425839 977203880 94507737 396523433 992445403 35668862 785453122 671973786 679366471 732368286 499483826 700647652 1017011800 544643809 9362633 156775267 141192185 989804830 872438326 324806951 706138193 380600415 585167177 880332940 795003760 602093941 390826421 504200592 379199095 456043908 547806528 777518506 775557018 906337816 639557199 392312389 412109224 245860992 290329270 61557618 1062931765 17220826 830807135 701224491 406178715 433063898 638428916 75376116 701416922 809997952 942046167 988113823 319408333 658130362 123776842 1010955587 634779774 151637105 32991826 716224742 181588307 175141613 289053451 759684919 412898056 461212620 719956123 718355410 776929279 545364512 443772394 59203051 32429964 604944169 804872257 535956236 440832658 842149676 1072466736 483089490 492448845 689879348 786636364 529061514 1071969357 632570144 975157830 602126931 301620507 843595181 682716069 403212041 924003263 942189654 647645706 242495402 601387430 614686938 113823009 697069235 650659148 1029018352 565975749 432372886 778974432 911076757 304562246 654885509 478898934 428067879 72050455 1043617949 1006316128 1052311691 539591908 162790446 746104661 981947894 127380424 32790387 14166282 542504163 211885355 504769112 105537683 394040021 933225307 980996214 533045333 401730693 559021106 199790797 48472149 628939617 517250477 691599128 692719250 650385175 871755650 322948936 626727119 988726410 43667158 537831980 445189383 283086315 819362072 47309356 962418245 227464698 968682858 911098323 13216753 130483856 779412680 222189643 97948114 985526130 420474008 962901142 807494586 202490270 628938041 811151912 339647346 335926584 200153931 478748833 592437211 642309746 163888263 367739068 817188562 387972576 832043611 500376744 430119776 588731947 486334432 340217564 397449924 645396604 405844387 711221839 184814629 515063309 366515925 346150679 370770473 719882137 318372879 882152122 1002898385 867528497 704554753 210701439 281811060 6650083 971197097 401140439 261004029 454041979 587700765 9428010 803256272 467588843 21069693 860831558 256141125 525825527 1023936298 796021508 700932365 551875165 198355569 370717315 73912920 897034475 223117951 702060952 180384425 66209273 105870914 611964765 126470292 1055531216 946114402 18803670 455639312 360769631 179449387 780174983 386875298 901447025 464303745 646439004 289611744 401819057 592633066 356726510 262423529 526897270 836361003 447753513 404025934 1059642096 533837214 548537771 1024662592 749575935 944140013 357526985 174359209 80783619 465252155 225300134 281467 254485219 462539277 244970475 918635690 771658821 669008827 602686126 918777431 730669493 1039183413 231322818 931492756 510728119 31161891 88310284 589868570 792217664 251369854 600595688 841920958 877828993 545144987 966266422 114386463 134884086 667330158 371714332 652155459 184298123 866769478 431835776 537380124 710096342 465442437 299800004 318619037 92805941 87719829 784412454 268398870 464628408 357917386 720349533 1053013495 1064044127 1045767574 1022569686 901216957 999993271 617970246 953712517 989757384 340750329 478617029 138403521 459816373 982220007 657977804 493718801 930519958 618548070 662510658 260582054 762862993 338209646 752047142 226124002 215615408 668742671 1054461976 770828433 398038119 296280838 256045018 94827476 231821842 883203515 189614901 476305363 951629442 890485895 218355627 393457246 272018984 630948819 875388273 1058459989 754631746 646231972 151505483 670559300 1003107307 631220513 927197797 1001623126 735867238 417964090 374159640 1008287969 814276841 653351743 879494313 968932865 209192250 154329018 919228050 1042893138 681133483 512638085 190376227 339493602 653321929 169629428 1055242281 1058930774 216139507 206964114 135405156 632131646 726730593 565055412 63095695 868691360 1030867554 736252395 1069441898 485481161 350988359 976632007 197423008 150190029 512564050 509091918 147931385 414399134 1049308260 1031534491 352215339 353104112 925696918 94388922 763989476 978274118 972039774 763299960 354158234 184214010 268456606 874337606 515613995 707923568 282693078 106455439 591444457 758135840 732796812 919533522 546101692 280627636 433933062 332429686 703717828 529749960 863362991 1017398620 380150156 76279107 171345306 527548487 260907713 299057736 417301448 903376696 756027932 844241690 19799345 939862120 240947117 622835570 583852241 406833192 881748034 971688436 598877604 16552881 1073276917 1051901836 276713561 525267928 854792909 533862177 332899012 92820327 665667677 341176192 938586904 422669628 630227596 466438587 1002614120 540412597 779029534 526371255 64736442 301263679 788169542 39285051 453188031 196335319 659209238 947275700 966649979 11334817 874617547 910929188 456816587 412535565 952927901 306058319 781361426 113100797 821997304 362078081 68112471 130870621 156681144 84094957 339968740 686071941 624927246 687026795 484068696 170742730 76682927 603362673 314978657 163224544 858399384 969528544 779554739 692084383 123042863 833488258 387841180 869362639 708950011 382132032 999308569 988739050 638751974 122607325 359940220 122472306 978266543 129140861 947232338 788612641 162847796 1010333377 818540122 899827310 50066584 438394465 791109581 789686748 311179941 772001906 538320103 147756881 324812242 460350952 969004671 401455187 244256454 441407339 325192533 276469122 657203065 1027807256 1022212972 708383394 788220883 8830765 457073539 649528161 417962480 243080128 467201436 990731385 945562974 927423349 1021003573 427247571 562109578 850376283 416303812 548875232 628374662 118384686 964833170 256055112 265862289 999272128 699596620 489285347 121001220 880284739 183571539 237579577 727344777 524695556 916200482 239205063 136591399 141312091 680322565 353777129 985330208 711862880 112356191 805927969 929006431 466622288 656287325 830114737 533878009 980664019 1069772732 836346417 827361569 531220213 18652783 535912635 1040651868 629489823 531932781 590467493 736658778 151094722 171296394 931429939 884789179 156266623 242962587 338178573 762088328 76702011 69697171 222210439 568784102 113599164 984835488 558670878 827204682 490077109 45724902 594289939 500982356 253624996 838255037 850112259 857690501 400799036 229466499 57497346 886437223 462294496 821003736 227557498 760652784 876734395 760433130 537456214 33101284 353931814 833681332 664555409 232000467 828371528 949792880 106574248 1042246961 250283806 538203302 656704399 830606114 453004985 164582745 253115831 1006551400 300725581 160076721 312752108 292840455 370976378 116962736 701755120 1060014298 155682996 141060072 140124136 8993904 873875931 126704684 276932426 461336148 974670503 190638333 569515888 284785660 730844272 603614693 295429782 988285933 309722447 315486624 297615313 380741338 641857412 261647065 95525763 699284709 883097913 653964501 649655329 965375853 596907006 185492483 487038470 558972183 99438978 106928494 555312268 874446936 620855065 811754577 764502857 791801568 868441175 807087545 59565455 1057966191 752782641 541938939 524853113 677564938 623210514 763642106 760362585 224353877 96296355 899703762 578991647 612381880 850788011 221514588 94982335 985057661 52621993 318072448 386183340 362398609 171055044 953731635 279709808 673582001 1047250873 1060250099 213125360 663708729 414858920 424448075 619755570 21404433 313485790 854275802 79357470 729969222 19342709 79199247 351467367 134735025 244736765 521353982 953075212 760732221 815855070 639261849 768099655 154604346 1032334246 188257329 141577332 490938854 466700484 880005056 276046697 1027598336 1004710067 578706232 1295949 128594825 813100178 553852847 631716116 331167524 1024490927 756238162 134017722 714461852 568795527 37605821 881976088 414017816 107367114 456716616 534405407 415341558 410173164 914888700 465744080 700899681 792741395 864452754 564074113 92663451 720760276 285903573 497955453 913618321 292787312 979680318 324884726 626112218 559383148 351787102 138039656 488803166 187471907 318720155 943437133 666873891 596338784 181407359 498583804 359245397 721857974 515954435 535826899 389756193 767670968 165892359 782445638 39360166 981963560 484725501 224146970 989313615 179640837 932294959 60772485 1002921905 639896072 999783873 318275700 1000458462 381056871 389963760 463245837 290465657 622656292 442914432 778043314 440283658 791658073 121868857 570090213 919445920 494189485 359575622 311964045 910453643 59471896 348326465 568513471 427696281 498682272 398970282 9684892 831159973 476145945 1009723397 683547122 273302491 167684899 329348633 7539400 879288434 602403413 933175726 80305805 465056288 926419596 251872130 705062680 664673381 837644142 388098083 49783719 197865398 197493573 735898684 490583626 1015810281 149070034 142876411 117380100 189989263 998431515 824780372 508908311 743643495 727975242 78105131 412761379 913318959 43698169 79308863 937177494 757577709 833304854 841570841 153706549 553641604 925661433 441504749 909698404 205022785 159426563 856050934 411214709 712270400 981459014 918570342 774535404 93053774 749867926 856975874 79909475 1045016745 355162537 753930955 256174058 903342969 350043995 845191806 30811939 199906970 689128972 301811084 549261631 801707938 998968751 758425722 592484727 628157514 286335368 800844608 108991314 71727536 545946370 204052313 989808166 565901518 805953280 959519796 112637343 354439601 497308230 852284030 458388062 676616772 255562394 420913880 986254588 242087000 326067075 593982374 739711801 285170395 885210884 524422007 1057267708 816899753 873243048 389422020 314973550 948601018 1015862730 376767928 712713245 296407834 372610553 136878313 884985228 224818052 544414749 907345876 640461940 248149184 537249173 591703038 878036794 549408069 259198479 227113254 194170955 231609480 780690677 364515382 265815079 556125624 971904480 324553347 1022498264 865426340 621402343 935347456 933391193 879153386 1014989076 686010070 804296861 24543090 430511572 757632598 55545650 344527382 37583994 103493013 1008569190 921969222 265109455 178996670 396306174 100302884 86903784 353415167 254241449 649610182 171176531 178874411 687703821 240099072 690201525 1037746092 280769351 943328347 746500459 942279259 637695062 955546317 408256106 793712654 445759681 837393018 760437569 1071641687 214143280 463308487 71543204 753479931 772651182 196167079 1037042455 994076291 606938888 943704611 369805630 814183421 90945733 415067705 953458985 969928845 537670271 520372509 826658099 800153238 458488277 900879855 916325674 344152357 694508782 759586229 275563451 315281181 776616483 489717224 495760053 256491171 63930633 397694807 155579801 1042072447 277531345 253078144 882395597 600045340 568831316 651287580 999083971 68689894 520715884 937487214 331163294 943051941 633855581 316693171 685925236 490091800 382298333 235706187 1027383874 1016168414 868920104 392202324 111422900 489177654 995663110 1026639515 611902657 142068697 964972577 802817655 602369118 947660834 60343121 650206543 167340037 584635687 932269385 937312815 543111652 172187650 297171575 1067918960 583688772 457320245 803659614 542222067 1050175292 143516536 620156940 519569850 543069985 289357228 827032625 751994588 894850318 297196679 533176113 1068112769 851815837 838754544 578866482 32244190 288548518 210317048 74638628 149183992 72189803 268839933 435860163 993457888 958530143 1009256971 987254897 754426372 955876510 700442006 157900090 278419933 402720400 419466629 523542718 266187195 329903643 1060945041 9734726 466716962 560445759 256624880 776321909 298412150 359549586 22950716 1036689457 115461236 695119868 561186619 235374906 322487896 651913671 99824248 444770575 999198554 771686726 646474574 904000926 262519936 776620170 188144316 496580449 425149311 1000118761 338411233 394280451 194350315 68537016 1031217284 675324968 381367233 70589421 756179893 810749007 979024220 155028888 891908 353525570 84591304 278775523 970877103 897848515 572120637 231452817 855702934 164356919 1013414813 812898320 352198916 271239541 622084763 390110877 472109188 817979023 407410133 868190330 793681061 253308113 333275481 610460747 191307390 286280959 122653403 1066497906 336789846 419691871 866529581 766904849 294789585 577550436 578596242 45405088 109390777 647301017 839093008 1050850839 571498006 360956912 189481393 47418175 1047194599 265766594 911441345 561080579 69889292 834070795 376105083 311275062 770736072 532946161 912325780 454543567 846126373 873874595 719354286 769382673 950273635 353725646 906409999 102988694 620336278 450130117 562521921 716167012 934834676 158533249 1016103250 863773104 399114484 271954775 621952360 254927316 259049378 180359093 615794387 106371192 743337631 427488761 644688265 324085469 338708795 971577167 458660412 613564663 293193423 208111845 676493685 117705971 131223923 280354065 200464718 379393443 373171681 239799933 913406039 587745300 164246911 62279968 175530599 403717625 1066775762 587494183 748330390 82870797 220806733 301237790 71294356 611538039 741578031 105489295 169193388 247374552 157469555 495793245 586261432 296301258 124541187 448204992 208823772 519774582 325992162 507660525 826090300 751575345 634926803 345663564 417500859 709797171 314071258 698875518 706447106 602206587 787327370 585664977 613833759 387160435 75150068 118040083 31467044 739607082 715643911 631864096 611724255 439837559 556249523 656392172 428665784 94393609 927390728 1019346652 127713987 620084210 1037005748 476560634 434065080 391908141 247712573 840098657 710414331 242663293 159978878 446932960 277155546 911074645 433081529 396857240 836332004 206623898 375831534 840119464 267557477 149320136 876347847 533909909 817801267 756517219 838299762 441035261 683041622 139389961 590133376 72181412 611770542 873407090 827706992 329618756 599025633 1003598776 596624335 210547362 244463706 719268925 811831871 498338768 436954448 698963354 698528479 210466643 712408203 677146442 25233165 882889632 563970449 549228122 790135566 429277079 189547856 109519635 622273828 94594755 185062839 501076929 883038361 1066956912 410368769 147734435 391296431 398239551 936299445 176233768 693835174 324658218 181318448 210505495 97992801 358586938 784152421 765451118 859263118 476811946 850749498 144727116 774563598 71545410 288251942 248544186 610278029 812556368 332917793 825227214 732336177 1045716837 655538935 784668506 336536291 873310085 291936460 666096619 254085796 1001766622 471071206 441613233 451391701 221281098 22099418 424549188 661053811 700563814 507544250 948293206 429041007 72067334 538450168 647285785 375222389 936320418 1036756850 977273883 974190750 573446133 41624473 967868324 229291769 569746915 82705537 875487013 18264054 167218256 705229039 12542940 115682803 278882912 801528708 133042438 715111842 155497257 795032152 909899070 944608587 187757578 106714956 488262250 91068539 640056266 73449430 417051441 364823225 647839578 895128500 73636993 326279958 355020916 184361946 976959301 923627446 556773804 454487961 310750617 219078347 12438315 868055441 922953740 1014815696 279390721 746795241 929509583 1067780663 774862306 911365181 526156291 455560534 1034180770 254358480 415083385 946287019 73051523 559025408 226856074 334369096 149553215 297269103 205563422 101614634 1025030339 441812912 528525448 961350877 494260322 767404133 1022436372 539905740 570707770 529609255 57472218 174399641 738320548 86103236 594927767 287493534 578281644 136472956 389727986 708123165 584194623 236910321 137377745 477623227 276630370 939688758 371630477 155244861 982571740 943185512 215625365 562247887 992912805 829678818 100808032 255056605 99245972 876216595 397543424 980191429 916755466 157189004 324089201 911416109 1028714465 130850432 438232573 481770480 1061124418 775819631 421164202 784198404 995771099 303082593 549900873 772272486 848769632 333536010 590711666 886100036 57971415 681642140 138946932 659645579 667877188 373049708 200891932 209989037 310049401 47684635 359719812 35293582 534129497 48444475 886203439 624674014 134954540 620048853 555409151 998983911 846145661 1016564886 683920948 1017783017 801917901 923238315 378252269 1065353479 401056224 544494248 524518242 118484082 58292077 141597948 706196772 614937980 701531416 485712467 486956742 819286773 943097891 565490673 584518254 962870846 931955720 970201074 20675472 383375008 836830784 702508442 1052458919 595353782 444381106 603165914 751719070 702717538 680685517 667340239 852499432 337792236 222632419 498349083 705888377 671657424 787557403 760918088 375493852 394327970 496937786 120804810 582853576 687491521 979212166 873179382 256833890 513542182 459431165 1061850933 290915179 34943372 387243273 505548065 890280244 586169009 652719687 830045336 1032253650 849824591 652977511 344217376 719457616 507030147 287847186 610214576 972816032 283701414 945267337 965638486 941486349 152093912 277807950 600466317 865173440 702829436 347035324 353497595 914021595 180667307 206496575 500217338 499398530 610678995 224852493 750833897 334674608 484766858 252136323 134493562 569937523 765681655 341011664 504947392 639945198 946550017 820830820 264445842 610313654 820814736 377438954 413755344 810797906 725382720 347198814 269707934 747468967 686778060 749939236 923096935 935415069 1001020443 847948144 597399557 609227943 704149591 847599121 616724933 1020172926 918227077 409716402 501547058 811314949 357409408 226482388 879607590 203983876 1002163556 492803803 726980094 292925656 720275244 911822983 546591848 475951027 367631604 886751126 770264369 652341694 589577746 239503430 847970038 487296306 403323233 932551065 279145547 782897037 198985229 910122994 849035429 370804266 1016868465 243555282 43291109 417639967 704551109 961598052 584639122 288827152 144868834 287727286 280426611 579693814 783863217 1024247861 955689679 995812156 32155281 1057347328 305121257 1004628116 693348871 508431206 246012722 214287010 530367934 801571136 787789951 735894461 156404694 347898144 639801233 1064446269 481610633 736705820 912598596 1020408956 810435149 313829128 76065826 765241920 616522108 68739492 56834722 17470109 347661718 108173227 182096770 602102507 626641437 347148591 212293677 987052996 284361512 1055888183 351164488 626702099 536107256 405348838 740822212 196204441 337372455 761957686 1179625 772515524 53631709 358788387 238049807 932683131 504990921 190694897 43574859 876024463 109718401 421906165 684332326 715102809 797941029 160148087 749104455 1010941243 932808728 1039239274 993663881 393814711 169053670 131476290 1023651882 575404347 258086860 394017520 902694925 399764927 759926816 431422096 557801740 950278014 298804696 214450815 121776611 43474870 763347616 324869653 381106469 841676671 1064811173 607091086 406857999 598890285 4318263 1013684425 752432116 471622657 492802008 1000311401 219361191 62210032 930118815 804483219 510073931 208649733 379202680 596884518 298677420 477792450 755177127 439929796 230151141 463010667 288332102 236887335 646001654 413622143 880772713 578448492 50956232 758737312 47582164 584732213 229246475 842087888 738844644 353945352 768968699 305330983 829125953 1001298251 216609849 101706411 701988526 302300385 601665917 476756886 2034177 981583925 432779197 637463268 53316836 551479238 7848987 446874945 494919797 605008716 517518369 278801427 43015769 785737804 638411164 595813939 1000653321 734572950 366199927 792665802 473033935 512579592 1068090135 736528018 115763801 411672251 856822866 528042059 141332576 759846776 184618405 656311594 539966438 579237530 971099534 614699036 714137838 906357790 785671315 750786894 842565705 729021256 457391936 29176523 832645319 424354228 363209048 566923533 80333885 703178119 641567910 1003692637 680304158 127786169 744543122 527314250 704777297 60094492 626468769 941583989 777029362 964104971 701491796 506214964 691771617 324777273 891785916 446217150 384760755 953915787 800593715 247749439 95086679 38333645 257539387 417148756 759521237 271057653 48016622 897881534 59793165 800334898 681025474 296985540 908599697 672448447 94150820 930174999 282535585 573056695 201195088 439526964 266432325 441914732 649944123 591809739 39838250 665621018 107261428 208823537 953079747 690265362 301679486 830004136 991197041 570588424 468139361 449509636 503204108 941445953 604362034 648082460 550823961 670730274 307511864 561276531 280764869 270648385 1039885591 330957564 436765353 887126511 28201330 239505442 807601357 836883241 852190965 578353627 487041127 621434440 441650883 83481627 350250861 639603309 3350316 793498155 285637418 361042902 296066461 461606797 719547385 363740227 358134959 111770743 202728754 541005962 975749129 255983157 494841592 923042038 557182817 987748423 484088368 478539928 192939586 39514893 417655188 828529082 439577036 66198619 629732095 233264686 313301212 107956796 38790132 376449408 677850471 310207168 505124518 184075868 753283258 1054313941 949982901 195243892 942387982 577220493 456975657 432184494 907439771 118435998 470346918 974102964 717883997 364116905 500048718 246850447 223374696 578301679 697014733 463088234 8712136 648721513 292200004 603772762 790288489 222634278 15271348 468538375 1001195963 397485228 495626981 531489747 480066623 876411992 168684738 152350415 178549809 183441515 93651253 719836526 810553950 352927508 850307710 636701577 202353108 402373045 680504601 507973865 1007178289 1027546315 651137732 859855036 662448460 706187493 92578331 844191718 729110150 68532456 800261419 508373695 573029045 612402571 547127318 748832476 364246610 1059921876 207263126 39788007 494155981 94591204 952860790 1056725107 916019509 1065933362 365707143 61089836 2751290 846228438 551621289 677286674 578839141 1041046873 418665857 357402396 793377979 853962161 323941749 66800688 839331372 251037318 240514288 120622602 25872327 1003765688 624371301 694772577 140830533 356720975 43861348 626751896 1070128610 120781148 1053088180 30197693 766591905 115309782 173370640 745741772 1022280735 798777060 112089521 436256264 832008688 502971322 674013060 670706232 263548385 227759987 715348476 390343533 309117641 535422925 217351349 677078267 243847019 432738693 160244709 528114962 631433143 260475848 97665800 649629526 1007665932 712773807 308798066 956466522 603985472 718947045 387402335 1000136726 694418846 80329273 33803035 406692421 601996817 903506275 1025964857 137158065 96030947 254587205 575442726 1039748994 627996234 454667185 819259469 766539873 33326416 165932416 120930832 914858838 101533332 418005198 253802087 81861900 99854791 121306044 757285003 170695467 536006823 408914608 461802529 285859627 30556524 355840945 109915998 715761616 911369216 151898693 663677122 713409525 860552845 69811213 146284868 221583587 267952277 1007587998 320932193 603072358 765459074 50889638 100635627 304724153 887541763 1056081528 376073911 339958542 595054026 310223486 726062987 110403967 49972366 593903960 1059558744 57999690 349197195 602441305 202821325 822102559 624716838 424976768 646676245 76604662 876911164 559282734 380556757 637456382 364183189 726895623 453146507 766009799 918472431 513277422 589986816 985022030 253779253 745469945 938257794 550340271 862470666 504232380 674583735 407870482 919725737 468849309 323942279 1015472035 976752311 1056550081 924718833 902350944 564950760 202033680 1002570496 814937321 1032001650 509033125 98728137 1030454930 769269424 546960111 576365049 768376369 640459805 917273874 260941062 645808034 74191017 359549911 856264460 712370324 221576318 201463897 724295817 919857981 868002244 347995675 313391652 127242183 123281990 667851409 588207408 337120102 959358953 930371644 713831038 604848718 104801278 819005892 1025284317 99126284 209188621 1051939359 950908833 235919308 138249904 308331928 1046939319 1032307720 828341759 816168039 312791526 59447239 219564610 441276354 394186129 195549464 103750500 124498915 634379667 970110134 88888901 988726454 230314978 400577338 373475995 590535952 805113248 246308910 940399127 604209993 451316651 796630408 687574140 849434977 306362053 621438390 432009121 229081211 399914515 985812422 179510263 1042328825 197605600 180751745 782268028 487721129 925119551 791670104 993821930 1033475474 1063633248 709935909 807711304 388105503 835065938 274757856 715903021 379381154 61548736 24718155 878728557 424445639 975415421 686266954 312985249 593176030 1029788365 529234280 148408152 850049255 847487004 248048585 711056279 392504053 107523600 379163024 382075898 115101803 680032622 1027450613 818913785 658483734 1031512368 891077571 660899337 435772878 49025381 741972057 480476028 863949187 861484893 904914678 572956191 972498812 600256549 733750458 996775529 115026194 937697581 507039912 348764976 772198244 356069608 364041104 888036933 155457037 449742093 768472211 683406974 816270318 645608495 6143235 872241400 577639137 359088293 1062258972 375991700 643920349 795779924 934485181 606655519 965581569 692173387 543164570 399151148 936716392 847036811 22337463 475076 481924871 331609509 205510999 378087612 188448848 706407499 800311674 576705341 951845160 364260091 683031468 38514075 776705538 839085485 439341521 271675939 149552513 978137022 736268766 739473203 796320200 498414840 978933778 470666601 508730071 80385142 460314437 690516666 473474169 794751046 244958827 750093194 104126450 770884248 726188319 709741703 956856486 1050958774 84974069 890729944 48917775 159547011 1009125153 1002918455 520314616 554390918 445985456 880523758 772329599 5388701 55378141 627858380 219382165 516631557 652973352 379699181 713812378 646141532 1006665614 77046574 387678996 557238640 852276080 421132420 897601872 7672928 266708753 607328962 1056770816 736037083 1055171444 755177811 1051771766 480567411 536037532 214716553 1000198047 353758035 792299558 1060035896 258667518 558474294 158657719 392664496 399827017 786861315 8734235 42437537 1045332807 627707369 889189077 282965883 995857388 334346858 877504438 273490069 469081129 287737282 1018402137 31098109 132671304 482610176 51873296 367618115 841112085 924624983 10207437 795271736 331668377 406220797 278897400 143195821 608356616 794173896 668057447 659461293 581562276 807376810 853977803 479592953 553389747 264795245 77675293 707016984 801639787 888122929 508312950 852175453 253305819 313670501 910787393 805939550 757247319 1047021138 719345249 220799846 978596127 972493447 874335972 1011058796 922287299 275290802 589525082 752425247 49234341 344815213 919839793 706375353 377289436 830210152 377378112 720697489 427826248 931120820 941063915 636195509 318003105 757170083 858933725 886490340 724149482 381082360 373989598 858217354 180134429 889577858 296227466 389100600 298024398 892021675 402146784 804392226 504166042 848051488 938005194 796394674 959943035 558693932 131769276 643165602 298562187 36074868 123295724 465816198 15993921 637043853 968848551 217528303 370165828 721607997 304463980 338723759 505225920 89599179 977462917 975807524 175663609 56287852 885240179 202864717 555580437 201069440 962496459 567780984 492910200 96141669 412148031 634331655 612950274 266905584 161045246 708479449 825455682 868397129 154206865 521262019 203593372 478706431 1069550919 78657430 332376425 825417361 977939907 983426260 982466373 118829502 430533256 752858396 438674066 891515459 792816514 510967561 1043655639 1002581074 746159360 899091683 118559023 8807008 830016496 680470154 870771763 767748724 952277733 511668372 146852316 575039387 601059151 540031616 51321862 146737406 296126013 934773238 401994211 1028526356 363273726 444048849 860193848 685393587 225214117 913530806 551706915 249683401 455497558 959548712 168409892 338666684 31925501 384747628 440879245 652330363 377334052 215556314 939591111 576760107 130802460 187882772 556808605 908509967 684942956 186888724 965799603 463341805 375839094 1067270937 559090106 67646472 492520260 433718030 51593603 104072750 916357023 10681757 715432590 373840362 1068298295 25882306 239817266 757579251 1009172908 919335916 734357802 538704433 267122452 280704233 1058589490 488877825 346521610 714848596 272678352 155197047 166655900 282053026 305035392 178513893 615684694 208666551 835213265 588247740 156388878 125073943 779042506 962771893 961005157 770306911 143021253 118474194 969570627 44835147 740624799 844167104 169453307 930659384 744266269 828352928 502665637 69375561 94327857 16283 636273104 58496604 79185842 437579538 212874861 754128660 915332418 1003519466 278964115 506295629 437082121 404027277 944068466 416318902 890729184 711103317 87210002 623297507 209119755 377045880 147433082 542167409 879548313 276644953 286603965 910695693 538928933 279902390 717127179 754093304 52884061 705000887 40625702 353095874 151259009 7709603 995689522 444054214 950593240 467673199 663264401 421136389 344542906 1060058085 236443877 476371766 704946970 18772642 227023181 834081633 667313144 1043098186 202468797 53000217 499328561 755756040 288199648 979981701 373579191 926892854 834570612 462357302 66521272 848904795 442979621 469744697 238503162 527056857 500730860 815130414 534154462 154760299 769616090 802814408 1035860529 179882841 263616775 999480006 243279911 733609682 416771225 133453513 217731668 425136671 833867318 967435143 762274456 919872109 158270631 1062294763 173305061 265365832 675852977 956945673 1003854169 916646375 291560108 1058813408 60918951 402792105 73495153 492966199 958876158 927053873 241396967 744772496 578658637 626331282 893580358 53280513 407883030 241087973 732713862 1049770157 372654143 253686990 86160688 215140230 174821947 212026444 961825818 988579099 414669831 528538394 984161535 324191833 83857899 367056149 1005744542 976654411 949098608 213404597 279347881 797151544 850868592 484486789 34376134 669858688 963105979 281430563 28207591 940475031 1011013666 708094073 784448788 421027646 541179420 229304756 44432128 410116341 689529467 305605572 11453991 413999477 160788031 30116415 470729134 805740708 866837390 602857541 618355367 822175527 611045964 697772573 158110261 469631339 596901765 429861101 894184734 340911209 7834690 633084282 686878103 527821837 824327776 900692346 763209916 1015144497 534503009 1063072764 691493389 264053620 550829408 654832621 896184754 969915877 780468976 803038779 291984452 828533317 434146647 1045177685 870044646 882800936 199172733 963168896 695309873 557071477 423316241 913346177 462479519 962550680 373757013 268063487 319454220 598412067 389032941 1012165591 1061096983 555521407 259916049 131079406 829304079 416584929 819617314 38590986 806573198 52446996 525799385 459785103 279847835 170856245 354137689 190503961 698598558 551900169 595794807 241756508 845885918 982470825 169752293 778306721 12007474 272768589 209596405 556502094 754105663 918181000 58279955 364558959 328490175 753360212 893619026 685354915 128475210 234396662 471539301 294756026 961670152 240715204 768721496 908266584 986748450 798360791 843445062 546149892 533539396 640628095 344517095 946792875 726963368 764604136 84840768 387803347 702654809 647849636 590217638 667766554 1062477735 481615752 197626641 326030269 1006286996 961066953 72377558 36844313 943048617 1007502057 43058762 225668484 134814332 524748364 805470448 220950272 887165077 1039193358 548662079 244841906 786522784 507163878 738190372 450703680 212653576 182025824 271101666 381297862 39485273 842444844 727347831 775560638 303337180 370687015 316612230 131941100 421011775 854682163 692936615 979350331 162387720 387104541 421835971 731981693 606719151 661723574 1043621023 331791291 604316271 401725379 481733889 942208349 834356317 295947476 26506279 946023862 720322272 911733328 126318441 584679577 10835047 117107877 648216297 292600921 422287515 486546444 165129828 441745894 656085527 7790096 897377206 1038982271 617137931 451199477 89441954 836664874 89271265 271007363 1066755935 2832534 479126498 206212690 264435478 825876095 373104775 136077292 830922250 506035662 885271500 353211944 969321303 88453201 997143518 724843758 856938322 849029957 494107996 519545949 772899476 278230414 1003689988 353349551 358258589 417177006 720182899 382197975 385242152 160393549 673228391 538747047 778647499 849095643 26260569 231356226 126448712 778622333 68003251 947495777 415246166 356695433 554069640 881381128 436634947 514773170 491706661 799601757 1007683926 326639772 922276292 247927936 963588450 435486431 95269684 294342397 185432148 725116468 228292665 366322118 563297682 719719075 592838836 895890736 220111614 10451165 753791130 820455284 474523514 738639207 596486992 586146473 468196088 353263421 435690517 458770139 134829701 360977871 557473992 583507794 221136130 557755167 354346638 363049731 435647947 834475089 98795502 933399592 705091674 517173619 245537236 544509383 906438526 256212144 980645789 1005056611 1036533230 781991381 82804319 1014323233 912822084 1007785072 558861182 1015160100 442531414 638495079 705506859 720741061 122182982 543287073 325439132 486928525 327045958 716951817 59011960 1002149357 993930900 858094031 419831134 826163646 823075758 375812334 52320483 857173691 226115856 534295664 254337145 371515256 298506096 42577054 100369421 23330789 9803786 651731050 709142198 1038750830 51538318 999468306 630843220 539869109 315208925 503132062 173208414 720896573 1064654334 489745602 114203496 910848255 267577426 172667036 154907490 29834918 976994756 1049926547 670241556 710401535 257598639 541724045 408147635 91040282 834544123 534827646 81321120 183630541 540254747 396738053 476692493 781810904 316575573 592037347 564914776 876114570 599303752 922491345 716440298 1043887987 238406549 708670887 503484999 341893790 165701098 834836771 660255952 952298199 197329180 76590738 488048366 102599537 220402318 168365051 695154911 291980268 607391625 1005519477 669211444 114229735 289199159 191103096 639962609 54404428 133351891 357490605 992046004 965106306 720781786 467116524 616678750 889237140 615172710 889994354 160951704 517361957 428955530 372896008 1071386645 754327286 854746556 531543078 78245131 106676804 957605159 171379921 51676052 64070070 941988275 501974006 373564327 213544741 62520307 522494278 481079745 315627603 228594711 463552092 531473776 701402522 726279659 60388683 765461886 961231243 1033797454 632282409 728825324 112371008 146890485 750325389 200085904 940559315 415876536 425903689 488247042 85987972 100088610 378195687 597102789 313216460 16337231 827299841 423231787 922943321 951704982 675962629 952862560 363872214 1050507048 733632934 193745470 218443356 993305564 274600642 208960902 484099649 748966795 695421254 31026225 451758640 953222825 1012205576 266182599 216176751 531643287 713030192 513487983 971263182 634247974 768479987 683242380 1002905202 910589791 610860474 596446217 1105727 722169246 933213689 340312362 252631568 282230131 3317497 584002065 139265570 789976522 494277722 641402508 977563031 686564283 301358985 424493938 74927692 987521598 482305498 173039135 635791375 491238626 762682571 479394779 344148720 798842457 396001619 760915119 58129564 47702739 852756500 640342135 647091415 324328069 780226513 404267230 935817339 731902739 391641044 517595353 317342166 947242860 334700993 595640903 515208730 308583084 492618191 721496742 482512347 97343384 1010588232 328871652 939416431 442380240 742368559 1067218387 58545557 938279662 181654868 848040178 958376342 325684967 938819883 243776321 621217488 772255681 705935793 980919016 605118204 585183601 306979579 24921007 814644362 765602130 8392494 91955533 254873771 990262350 219344527 925749215 389158697 789102891 906323200 525575898 629241769 625341787 740828304 147591665 532962146 593750828 305433592 199474070 753506808 285257278 959207941 628243114 514590413 921376533 990096560 896937192 651522073 527825047 452817094 338682190 683078829 948435330 16912405 523285944 639530310 810704919 946033189 483598477 372971724 150095442 860802007 476955548 1064105571 234422642 31361859 210913757 969000962 517061548 152300367 814234859 728395341 483350545 975375338 57735489 692054866 715603759 235011676 159043028 454327273 68086269 443992115 679867332 573127643 63938505 78672132 28091733 305194966 523518944 782856146 1001437722 758897650 823676472 382696100 656461513 695522922 951350423 50676740 668506839 790579495 168319304 924230306 637822349 891125627 461000184 374093639 804271668 820381879 784436246 389799707 1021814152 494231003 663255864 777318413 310560346 383857981 999374950 799860020 55628742 73072359 605629471 332719533 738475492 927200046 263694014 61447282 588718140 109132402 635340251 297566834 1050140265 407977057 893078417 356603163 10412668 864268157 552969128 617561684 996678696 967020633 851161773 104883531 218582022 847727998 341028348 886471823 765202677 346411404 283052321 1060504615 641898579 844770961 390915245 308798938 326613255 349586296 156893225 927262383 351411965 256987090 795680247 674699711 165036373 694077791 933398937 569906570 849699106 394602147 840641350 828183510 426823182 146640855 751526002 757514460 835280509 13380734 439344237 311357563 887320541 4566407 792605207 787460725 10687280 194245501 1018661090 335656507 52829444 213321782 852054325 488205454 515228598 179521799 945778264 319275012 699461550 455392571 738712175 853873876 530891450 253951186 935529747 34293280 999806870 394120731 208341066 163768266 544879266 33622339 1019713514 961329179 946354743 750723070 477418576 1030852190 530220324 871328384 518817443 455934410 207850374 997480547 737867309 303721262 247153377 752516336 565505731 714209029 446296909 319758258 778481421 632201176 871740101 96500341 461528584 661030628 196087023 557397593 1031330055 653953488 698775007 1045424507 543125236 414117373 922145129 449440782 157551321 654436786 799861079 689136821 651805485 379442753 487049003 934076738 320779413 778838518 436795177 119204158 810582784 973708963 85414158 320784825 241935191 873048007 670339313 1011502902 646213316 458534019 473432922 255250057 247382056 1047094756 485665308 656914018 804721757 768442104 38961582 937837624 417177120 140954388 939516938 382421068 348687881 944610919 705241283 793119889 651393217 847360909 209545960 397021075 477239656 929691681 597893095 458795547 698590398 116954277 913108426 120575288 381506119 1034748546 839046293 245601298 962200771 815131344 488482860 691971276 63567522 542793688 58155792 332887251 936706190 863432799 269576997 943020895 697172871 141971231 936636582 591858011 201796648 525755755 144726891 816533463 1071875969 510601646 933116613 330324709 620827963 1047892933 390662379 444648003 577154511 554701941 801620855 686615939 577221502 1040107946 687236236 260895838 608175866 760624745 177879931 376507871 142081960 118776365 417695162 237654964 65227866 681906665 648329390 690917396 46653112 733356465 426474719 439767229 1057283108 247859567 1059741518 97478396 360871256 132386852 21637558 617303003 455512842 930696225 788747338 994679180 421179966 491923453 895696619 121238962 1062730831 46112214 326821054 865463858 972429367 595453885 233451442 694325552 117212540 269831734 894369432 435078168 794906483 914209427 1069861262 188035061 140683268 974616642 47154825 685651825 221325570 198278534 996650247 1019963119 869809569 722365846 923786786 1048288065 215131926 291639029 916391813 367583182 751873866 166496292 1009121321 18049157 1021125388 736110822 321722437 308927731 100242652 667122035 705809315 895873187 98764031 6752919 966817963 219967573 720479647 478916624 652602255 935271301 128911678 458390689 666829646 710036473 367335089 551771734 547448726 1009255500 490106522 1005126687 190155562 243563892 300132057 842978357 880115737 294132053 725285161 560635236 178562762 797261364 116714332 305404118 182830234 606954810 718162788 260266183 474775648 153955161 928301237 925617374 76138534 233492181 580196689 782589555 553676847 590068512 396799742 783438709 249528929 861738660 256929634 199514953 11214142 179647296 76632961 640793743 364557261 880283516 6306082 435763098 367362431 815692711 149382956 1064247923 1048971544 15580316 912332654 22893585 595443431 587765703 583085536 676945427 327521816 814844593 250182421 914314673 767621014 634082089 304615365 96290191 1069948383 643292455 516072439 854157933 237921080 804915595 742908921 943986033 340341266 641584780 634744016 302640434 630420854 379967587 676593437 359239638 373961753 87666875 643957211 64755329 694639146 606818754 808965928 809990907 246517825 867186182 326369424 718629603 157805320 214901491 934977462 875696853 222535413 858478946 444580327 254707723 415524707 81420406 781502776 495432984 132988302 642664654 812312326 880208576 725103145 536343134 978637180 72727798 885845853 1021154397 444998728 302393690 598241103 1054943940 65001933 750833695 670211055 114791188 322177456 772356335 940675252 801031831 573394460 431678468 368455067 351835668 698962613 39909188 471698694 821950373 1013086938 245835420 725675028 933677883 1027030705 929398167 235193315 560769787 187164195 624499336 95356378 332962184 583123055 621486347 1023168683 240534797 150031912 325687884 701143594 461904192 7913987 616997718 399583114 1012897453 55618019 154454345 357812503 290909602 210164662 937085707 429509073 469391965 640457387 105452318 719272049 296988523 74346010 740649701 111622220 509578428 69753114 877665906 405000923 151224521 640436402 120076141 92504006 696013420 315324316 384310880 524884812 1026825641 28945239 884090661 1051998738 734617508 482107475 862203428 210171337 400013525 66251032 922465852 945932493 806557847 894390494 227979597 759587184 965877154 505023323 105140635 471176494 826550836 219126278 557393346 300849034 998267202 100494614 25081696 158581354 100546334 983986257 323405786 989657835 170275511 838847160 46415614 1038631411 1035456911 210151555 541037526 589655236 858545525 145334340 716553892 507745440 683319292 484676640 52631782 704766750 258330018 1038923881 629323393 608024587 809420949 557556823 656023886 1023945492 240824128 822172931 39557935 263529832 1058546612 233387281 513942425 834348926 712373356 907963547 905185363 441208910 484599997 745163500 233516697 321266098 714250372 938524599 778818573 49061190 1017995675 980588422 515566006 162221214 891450003 345247475 7535771 320106892 223288824 972205337 180832331 317639909 153746620 456343528 53092052 71791970 428179448 301877532 57402914 1023858076 47998042 511926705 614649470 926117076 820911586 836373782 282739433 95272014 1040994209 77777521 497073846 932510252 146792551 456823579 413986648 241094080 947039331 668952854 366085970 1000798148 443795354 400975923 399671408 271984066 636308419 114537234 37541214 156540867 170831285 85519612 790275304 69696929 614205441 564079600 848072613 575300786 119986552 572586752 142988288 297580722 794761046 813751221 455978000 328248791 180193409 537986954 298806165 610607123 457748576 335589470 681218334 43098629 169346130 829510704 52776981 588054072 23576817 758108837 389637169 236941122 987488779 564063747 449910202 81694537 238375212 424888990 914651761 72531636 400781066 825320066 956452877 388351413 599418228 254741310 199887614 737463174 271032738 521535634 933223204 513008376 412706188 307245659 1708615 193540291 663996090 50119187 1070118793 492731659 383700173 1014778145 152593536 405134897 722357005 474070647 87673738 570318958 930497301 1001480093 780901446 847796446 1021518016 848776317 653560583 508878274 740511132 378606598 328112575 927302563 327666243 421105371 504127367 570124358 947938983 342149331 274529626 758885558 50839521 115193448 678919779 887295923 338213312 374563391 594197285 749903974 1003104420 921106986 942811628 181563869 881247433 494326806 221695634 721909080 763356874 950169585 915867191 525140904 557534507 906651641 167768610 914810624 312024357 468907692 112106121 264092614 1046935612 762920527 546847499 572003024 107400770 522789500 509432541 8748079 433398364 1000962129 363734113 649251352 763495432 447194159 179024358 213864208 61310771 803482843 82638451 917331645 952112792 198490427 552618482 1072699512 4199113 670015766 828813203 142948835 725849974 142394132 886729811 133894353 765388315 1010427504 879451760 88731179 760916948 361855630 606381879 689090892 234156677 880480137 1072990329 294273123 837178074 564226932 484601600 819636614 824490873 127008593 572754466 45658866 700768400 1015949893 608441020 213125754 289579100 967559709 591149389 756761146 447206282 810058314 644666513 1051618349 928964246 822549446 146106545 1032572592 1031258125 552345624 522214379 704008459 784176514 102731829 637584443 876452282 92102467 722512925 410325192 612352437 229206934 387672109 155144752 199699951 737051722 383773808 994144275 291477355 543118499 485554092 783927914 913690179 641290427 162602154 116166801 1015217518 253080383 5751832 295832275 879322150 756493359 549603438 281404701 962671234 320311550 919485981 985407754 526978238 358537030 254229220 630380364 789608587 191078842 1005846388 137459509 251121910 969242341 377450027 620199134 503467374 978461994 25646286 974177899 890945263 675975287 461032216 151159345 671479960 662160669 312068524 610326706 982662720 636987010 673934989 494108010 408769660 1040051821 53081920 981446141 44816478 820685337 178189188 27654622 502845416 709003411 1043105382 698450034 15500590 667639561 829810598 209510984 403253475 1026194627 471923873 930771453 701825553 356526809 1043099052 763332409 556947254 695531087 782366434 661413690 774212525 560298829 255917899 683018652 866080422 367238629 297038336 459965669 499330640 821233469 192414469 690379907 89762952 53043696 851859562 788393673 186584841 484938905 373790518 698223274 778423468 16220998 872579565 236731073 638717947 591457 17315781 869334685 881252998 60774768 786480086 252697529 892739100 319216351 398930377 386754470 932458102 68804418 96457793 668429731 238247260 346392272 521131585 570256519 55668073 552577641 737829041 845315472 599454670 198150618 1031705309 875209888 621341661 394531219 767465836 1054184471 347459809 656284972 782820159 680720485 1035259403 986879580 535437333 466300126 421678970 932683791 24296495 905000851 865507959 661121654 464616270 716439659 242161990 332392200 639547996 670739497 1050972608 98714641 607504113 970816553 448150167 157209279 1016687786 293824296 193168747 153987582 384567844 667532856 135687020 1027940628 984265584 341628043 731474984 471808299 696044557 192707731 479880293 1059600451 551165038 723740582 424362153 497583745 656263618 929316762 273686950 490398653 925885085 25537202 387610788 303864873 774204987 319492939 1005828203 502379615 605108410 593501539 364472885 987529970 604402117 472387446 849537954 691806136 225373902 644635201 770396444 343396915 590906781 333825975 972119517 834585796 174633386 930529007 999134261 644568117 55804167 1071411240 811383434 144165083 316788351 1066160188 577428490 852119797 757578034 238194229 108190705 878566744 437660937 588591238 191681487 130687777 70894082 618553529 553570565 691476544 339976033 104484665 32395374 924301215 642393868 714559169 516240053 570860183 1006509603 349528442 1030102772 112215967 834532607 251447111 338958233 362880007 439156452 850718107 706402956 298600386 841972100 986312894 269517684 46272861 862609664 174594009 499265115 775738132 848904803 1067061888 733709340 521864497 695500171 786163251 146137851 488991937 625345875 163510009 47313899 225782478 413847136 297564088 730362308 884784577 306591723 995853172 643468981 5715471 65756332 781966097 284904348 608500384 357016162 637406315 950302381 942583758 565700534 761842948 594302260 172651239 1055603966 398123070 232657063 992295605 831316925 474446680 683032708 1061322267 534618551 145426639 580209436 344957349 278502649 813985137 502178559 882809934 20274717 440115095 1055412542 603287124 930392452 50670067 875536073 381919287 1069577023 824072094 651993823 186960880 908036165 151034422 1057800944 535787784 503618435 148973622 525225928 26291701 405301755 249864126 115284187 179829323 1026111860 674640062 36185724 833920176 641124955 1003360678 108793100 826773308 480118868 722431208 724992592 39677767 444076205 437824409 242858266 911412111 944565627 1041714888 520407534 798751189 669214372 644216242 807259253 971664185 19636844 651933995 298588728 857268112 914800715 928199922 270648969 305845157 471073201 257111692 970823023 406317387 228528808 817953933 656436482 590757883 104274393 83784545 588524912 945540171 554824622 909454634 997585369 509925835 445212964 8717310 563939387 235844063 1062452149 438454685 436750675 970982692 353756690 219649989 539056433 877493341 147511460 443866570 185448690 407255505 303814339 973024079 996961883 688772225 470846823 472644491 466086971 989831483 640668264 894312270 365815708 1049765241 149024240 449745226 446850100 312999565 996484105 409748671 168981401 773606096 743921518 277218371 680236637 497980404 914215902 275916956 357412043 669780450 159702682 595022739 354215009 1005107172 512597226 1003381397 704186426 141656569 430709559 925213204 88149963 720036434 588165324 589400775 558633947 170621692 392145337 16130053 421586573 951940133 807167286 33604880 697811048 359005558 1045872672 499546113 278148622 949954350 221194741 582760105 359883763 486876751 954428689 985139131 612536175 394011643 1007753993 704673815 271619855 554238619 920928457 992791745 923246378 18923966 227581771 215077158 990107766 521590012 759690408 178454752 931977739 69913600 903661667 7306275 1064713443 210462985 484176759 953277992 834758432 23868652 67090431 539937548 326692770 968830987 739549027 784923928 885213153 469140979 781601168 350168461 543266574 1022902306 409875904 357322311 659747711 133843269 451793312 593876356 991023483 195934863 226188988 99825763 266223854 756735671 574554764 482610559 938846716 215394441 6774128 580074293 491055825 82797063 969913328 615280131 758314274 470908571 870542024 188745606 553629637 968009493 403357334 118409108 849558427 388315239 119671524 1033528816 847031977 154897582 511754670 558436550 248665676 392576945 342336723 264686337 595992984 839024129 923729463 50853482 65528225 971249695 371388100 800252097 395842731 681310937 1027504382 238824054 675484693 1033451125 514757233 649942441 336037935 458158739 821588365 173686593 608960400 1012730540 604571718 858152351 837138170 439501404 350366970 853014677 419084274 760491731 650574634 223496254 51837929 490994396 962957555 553229126 335698794 768787929 431136542 418584503 694182869 194980272 844091160 685287428 497055832 1011183307 497583611 999640662 963250836 1054344500 764249170 900856961 968651892 528483031 545851022 770913533 548255307 1072933240 286712873 409131372 1062965761 930466997 1041099802 1029476881 614567927 1028896301 376837972 815921831 860642379 571395622 751396492 131744867 1055895937 340232395 318477892 124635440 360241998 536174982 707444768 1049709962 561588028 645055197 265409214 814895564 377375749 686459054 623162922 627844949 1038709474 1071713409 662834355 825191692 42578878 414237612 114710829 119996689 941301732 499073489 674277802 617076739 307036752 282401258 181292755 605883669 244071371 403846634 271200136 637629487 727109216 210436071 356893941 611956483 701640 196530560 513561943 883042985 1013248527 454184965 704936244 399787140 444132086 667091177 250834484 68905339 454395709 810863593 380202639 205902535 407338357 126270584 305679955 382409031 841446956 360882002 660539662 650528187 50657557 336152096 934858365 431934734 98349839 496114987 477789681 258477102 657546481 416182940 1066290667 668436592 552642151 603636284 314792956 850579615 987035640 185006085 114537967 647232287 164371985 430088022 258012091 387345118 726051825 730522844 510397313 90511251 211945434 922939641 157107877 60732411 221126412 163847766 208314395 373491458 1065844406 640032118 690845721 208347577 538606989 352456809 43063733 525979856 624806833 885935925 589729319 24031671 669733131 205923820 948519045 820240286 707795270 819197150 376140707 240813048 365994473 327029306 710461860 808480671 773571370 186291401 986016909 455440225 442379851 136332180 518495027 754458772 1068666414 855398877 235194613 1029507239 674874314 949456498 914305613 946188577 728476759 97910576 886726886 856327662 658057833 535460085 93070868 1063559515 930927370 963639679 216969935 106352828 69692693 932537496 899996559 199035655 41926347 342100470 672878536 917233401 553769427 224943847 74153556 1009667192 297346670 1001261973 37627629 477858927 759283685 336453655 800949380 306013438 583634566 354334576 876013100 265224614 870182068 519622245 857334023 787013581 1066206561 469277331 90927046 570268116 184534653 483918468 322167712 834868893 690805553 59411060 634045167 662383273 804050931 544916860 1045159784 312374227 526779063 539336985 276082454 130983216 1015272687 312069564 646056103 685632944 608442962 428220047 928886935 238688344 57206749 1033317515 1072571220 652456751 623179894 145435790 174561138 49785209 942909379 58194365 577376809 205909102 692281470 2148185 1018962985 500759287 572793739 316077458 816423216 446552561 642124646 248336440 462144500 484067852 425008973 650888261 137775263 320628897 880768297 890325704 900819383 1003411361 830686157 589026595 259911524 928903056 452939648 464187267 756577608 74178412 726107228 978268982 335692712 842434285 764515777 820856225 590360745 208752217 17169111 310032550 133072087 954222456 376181968 704312281 229507967 254518602 589437333 938264826 799326658 1012502806 217806519 5279595 48464058 365407906 861767017 742985349 399528758 946752600 319117811 267730428 707272711 15756447 475725598 374892690 460431441 754033621 70280204 733793141 629864732 198390176 330292622 359432735 132546144 536965653 384588692 466124362 700998696 267097667 57889353 833579389 631370852 592420334 769818197 471636448 880119237 1000070458 215655582 12410833 970998257 407674836 205747418 421111712 701360590 813566523 173928748 580208260 587056884 428130509 517326762 1040289957 966574439 602824683 544598000 1054903584 1056128604 874100499 663591330 436119810 869506767 945958558 1023182947 129098747 211868199 160739402 893008555 706425892 590776032 256107463 484105035 197184031 910271051 918538865 960688693 384327111 1044852246 915704281 67822041 187588813 1054299890 181479538 563546526 148097167 800540614 434341069 12022166 496154257 81261738 885117872 188194267 608525042 68891507 613558726 235213710 828756443 288359688 530947864 413973269 304279206 946933089 922266216 544904346 288895405 60694261 835713665 230785236 539450267 315506594 794360883 80502770 789365055 976706328 964635119 197587053 452592591 814234364 638872278 484141072 844224576 820546596 597460686 250898510 168235562 689073510 524180333 153941036 865528086 929880117 64498525 323148472 1031144006 267094353 906588174 1040898633 22531999 127351938 553846479 969108524 843907369 459631205 975770960 102819703 357651338 1044644002 391246198 649886572 682657123 699969155 1068609987 676255335 490076513 438166446 141554724 854066134 268941615 732960102 508248512 995480535 348825409 814022098 77615227 905004255 204599894 870778429 137136167 540286444 918917009 784266059 914867496 770797310 322965586 495813491 300708245 511938537 607155825 257978461 1055738644 803660347 478869853 299441909 873911124 174564236 358993018 848037431 720460552 534011865 1049793259 955305814 595405578 828203225 42057070 551280262 77513531 15699945 138876779 974928923 118644725 817063990 139624946 143607122 459880784 858898412 163145827 512142396 814341450 1072990676 332643244 938616753 1019933980 308240942 334131418 503604980 1048085006 271041818 748735352 426714679 283010456 338619293 704491215 346380157 459479845 129786287 828728279 517609786 186420501 425607521 637574297 591426030 582396382 850648312 841144106 441776343 489787710 503385109 749801181 792246520 776196824 917369133 1043906921 948567292 421248245 502778583 139354915 942928701 281009706 958375392 2959562 915703615 75042198 905755227 793887420 768630780 659664919 214741105 548855412 730595693 46544182 388346385 776735323 792411673 525990233 912216204 1069420982 37394340 197637180 806313216 370504980 403469613 818426421 576020205 793005156 401555654 810461297 874718124 672184251 575700563 451669996 1040530086 416865379 646961145 680841524 296811650 771291227 31668071 189583486 606558020 496274662 672209847 124084265 234458680 475934894 571470120 692359968 1044802414 357468596 1047156819 14378843 872682807 692257796 943952799 180995602 930299809 759735598 728943899 501639601 387885948 715210543 739581000 235738985 896337114 789332745 82342303 610351957 282350417 507492431 158493529 585798728 37376969 342003578 171998686 809456727 709135959 262188887 493723741 520605017 733388808 288369828 834043570 778577030 897621582 775723173 1058739469 154636430 653795855 1057473098 686906959 909989185 377850006 860858482 495484754 20100576 296375129 1041739535 209547156 734393932 246730927 854675036 927061098 165841142 377318058 175095453 221680282 968698662 661538330 170433513 916474297 593787598 787994187 434819996 94648226 737266045 979130706 615439129 547609058 330129718 825575765 176972264 38523646 676972084 1038248126 392596795 953916385 44513252 913252458 781845728 295478985 505646434 174615332 947177832 280781948 1021210056 305160367 297416261 1066837278 464879838 444762158 626668519 1049177514 931313413 749695158 920479712 162100673 924989203 832461831 820319551 178597644 536005 903175763 36488369 88232524 365754001 793670380 161580407 235486165 167544713 774453049 786387074 517878424 866160195 129252352 569148255 232215144 373654637 105675058 589219553 819459274 459218539 167280265 580124010 176953816 231925100 431933414 937466605 19393432 749445180 203316870 395727345 253975514 433303016 976806086 537200776 906319227 1008071971 843037652 255058037 1045965475 85737480 128150776 651553949 636765858 296625691 775912722 396955079 829317467 731793811 688871116 896574023 976420678 783777188 636592988 32153775 959340343 514843324 236856511 993661794 978428606 41893152 175932434 294182681 24326749 517373077 420460052 562267884 506153219 509119871 989435144 70724516 1067975677 695059099 244929482 859480044 370426417 75575650 375704365 505542734 68856827 654859930 186716546 343361886 960578074 942559775 465544627 794346276 797082755 673467373 653054687 654110733 890673517 985921048 95015104 147156353 290609171 71782530 180884026 349995186 768107721 158118263 958569181 27029378 30482162 914125752 15616339 555896086 653606842 769426554 998202234 879649737 261487136 1011596208 259332870 34260430 961395012 229054254 964677851 18458626 64115965 100589042 633776644 550512746 954034879 59798811 694382194 433467359 419401176 527465858 540996081 905282839 389075030 824733709 257019009 740983887 269760151 478149783 674956596 885410222 587473760 167708303 871934976 955497349 244731455 411937590 312456638 645659999 505491470 474098426 75645721 652419370 123789353 730259971 367253334 398959064 412967477 653086651 4913266 546639965 725932718 623946997 1013287884 599436964 646009986 702083126 134992110 968203438 154649160 162515181 200563161 714988242 411786967 250517029 499628457 837875826 979550901 61972795 749383034 132913528 227957878 68767780 523958642 368246792 904601219 343070540 965827510 534680427 703397765 1014559633 351096330 90254682 200479906 697770622 712141605 260804099 1053276189 12061007 629492460 959237496 425243357 37489663 689059124 1045635710 98571862 623784455 333238327 362617806 636481930 485253779 647369042 818952305 524267568 225875006 939483259 277736362 47741271 22676449 416771256 408380827 551716445 996093871 468886618 763329022 277570953 2880198 353420224 734758946 764438915 326281038 353152212 361862777 677383425 409881017 227820497 1013419055 743274388 697721149 985205499 104208342 807203005 67155867 847005003 979874496 91812820 551045639 3580118 390360931 78320924 173065121 826417964 50599748 133851902 787665664 606296339 326941521 966797778 1297645 846795363 78600669 363519578 232559833 513238125 47810096 175998551 347104179 1006709012 1062025776 159294449 1028146103 871243776 908557544 424191488 501698121 343501395 550743315 582067086 1072890190 652762385 270406221 380709215 258641244 225340658 70528451 1001197300 834450231 286745701 980897976 816110999 1005804799 185077904 1072033661 774630093 569675722 869965083 500813241 448936242 906910249 2089163 233178835 205635359 429750633 250615442 933062290 73821285 816323057 179914107 532784540 857383583 569689514 248877497 44391892 65032406 771120796 1068548772 784347468 620113833 203517829 322400652 918497455 21819530 649859938 962622027 609045734 492319663 930694361 996701512 341491969 1027308169 604841894 97528832 532246307 636030980 218300344 132211039 442163529 369434638 410671561 825648515 804186342 743920957 209579418 450519104 556910150 297268707 190977981 217293120 661055389 149661329 195837975 998119878 205837368 635742101 191314402 634975015 447018153 755934904 1036320473 781765425 421011883 216122041 302059026 577892892 65997048 268979967 821481595 150652492 349463192 942348551 283964856 388854143 714830247 914838245 164452939 321100204 501990568 182373976 380223995 544186861 974673795 768792521 754563300 501317334 255977991 204310384 551807883 988243674 694351502 136764249 976264074 280607163 73875561 621854832 724072436 424288483 22652161 255693359 142795733 669635566 705587516 265142186 686170757 791484203 128499767 408700647 27509497 547008762 389814237 124185523 113481604 130571525 600534547 945980624 23098044 626488700 226135061 217990776 879560255 339679624 588352656 311048149 56703640 807673157 562438531 148774236 440465696 195030101 229651805 683807893 616460287 763646157 905936301 992424547 744251059 902453847 528401418 798582075 596154491 914423463 246206878 962408078 872364240 485334202 740232354 702706296 483158695 257932833 354664247 799142718 875595706 950123804 51384395 916902350 723938022 827096845 224877073 148745596 371480836 545883052 559357199 672799373 318835918 301029874 64445883 242248482 668005058 302228728 842241609 226077932 563761157 147884741 1023627026 605264405 7948548 1025024468 887105281 505957099 561643746 240183941 805455732 970174267 528455253 392362616 1064412817 616537669 668029653 722157776 924838926 1043224896 713651413 997305428 812629012 316251997 563136145 699283154 611916327 478568661 40496143 142172295 905332961 698351993 167605056 1050232412 624407822 622598972 956137847 456414639 916958469 904255349 466030095 965502765 219633541 610342006 1007098711 490611113 582229418 699400677 851558769 923545803 866889322 600533711 45806700 925248839 915685073 549700158 627252733 281156512 435473047 649226656 735990167 862933746 745329892 993413920 790962291 780956268 763887102 291351719 679649774 542285422 1067637670 1014818282 982874447 736198596 150184984 338179022 898530691 763432467 71739453 139483015 337848952 954050447 1026595908 930075362 96665312 374788054 1064277043 1028080648 294131427 582637188 1065465081 786174764 902675580 661211808 502781067 158722781 794681810 478841725 1025807371 661015496 531004292 900064340 238351220 1063756722 999114014 369547909 334973627 593197375 267557709 25163063 135051636 1005059350 43710501 461182332 903661252 468517672 737920240 62103936 1015739124 63515584 907546020 1017192272 63851913 1011534776 428315597 673089119 27616594 147710179 1054878877 829546078 535441991 899093931 988130327 354897976 763553962 920032913 285908571 603593331 358828254 940923888 893324976 1010548958 1002834343 811603328 186670014 252257820 669830079 892461370 594921462 332539343 774327914 571624389 61795112 807262641 741100905 47032037 952958116 852751940 984421484 629226863 962423128 1060913039 225736580 1059099266 682202557 184517925 759738607 717166478 338747663 79735651 585734382 714756814 985986042 15569937 395648735 62420470 210795704 459367259 16063957 39899092 954021359 329668275 257083493 63658683 556891436 457960091 343166707 576569803 809717754 70104061 102398499 78719115 120150818 90441794 598882795 316674708 465091107 765469129 948380437 83802120 390995774 562219139 56577623 770256646 57584968 983639354 74540669 603323183 399122084 954080178 1042092300 937089554 76670934 670127458 666991246 1035566910 249951571 243947623 647806222 890062223 323736599 1048765402 490930104 228954649 70325501 321571083 50261094 508341136 494191064 511800081 490746539 775277238 38093913 612976072 979844244 856509601 429982094 982271684 1046551250 693915061 872854575 788670358 49411429 821795743 60079685 1050698746 1069474898 899452276 666418369 254440799 252842526 606415701 157168778 707924519 298280794 688769314 38628608 836260362 632091003 191197415 569669379 559316187 412660604 391377688 1021395594 170783804 685012395 903274474 688344144 70329450 247334970 928236257 859194441 593898894 377000705 750526138 714652532 479111836 625487481 34630843 161902464 396023045 426124694 869577343 222199584 637789725 777654119 219494246 642226192 27017578 511779430 479702553 905480318 614832825 958957128 389230714 583782839 176733970 1072942548 152640292 511121695 739766899 30595361 91190622 120395430 420397636 633370699 503336081 493236660 52626340 498951791 427896706 56908760 50268491 864581844 557188688 670810334 585527973 1057143290 351183958 467089369 676053189 658027902 704482313 555537880 958586162 232736046 268814529 425546612 103252071 612335666 457784822 187503319 390399894 75799329 954480185 339014985 405283559 186164885 861210974 579096729 380859907 189765517 412024952 57161004 318870133 46451406 652202952 731800579 443669862 51025086 853001705 182183032 990889473 84538247 397719392 414998405 351551767 425681772 941152092 718983381 536040528 214380605 192849922 1023036552 84021172 927902155 263756752 262704810 549335757 816811073 925330806 99308194 548210154 179138735 977252954 547947536 203177956 257405457 295923903 519319625 232711439 478429524 919546573 923737050 501476915 474350496 326421539 633923850 998886370 520709515 539636785 167140029 80046017 113339628 270169368 533358905 495313467 640374757 391241909 243833237 663770821 231932933 78949929 20320274 87481911 686198167 347906251 151143221 357765634 649868153 986105797 4802839 774699278 668195922 765689095 124555465 33896775 1022099177 183020669 426316123 897775334 688503515 991413546 949445801 367214030 209781596 852904850 891791724 757080953 829587683 769631661 121159451 351861626 540750277 209398617 119280820 852107086 398387238 444650684 1051519749 225910369 958917780 331914105 84856767 948259786 612506989 278549096 360122355 1021166040 399246162 1068284911 24763275 795220615 559989854 767822865 204502570 28092472 1067848254 468116478 811977531 699429495 913886384 338573686 56819707 962404273 641767479 810957513 268194589 56855069 1006170743 642728501 29389744 235835372 86462996 38475 435681251 769527877 707301800 987113689 327986577 851361213 1057566512 659438162 344370565 446622915 295497206 543220328 412384970 339732920 214574169 676052267 63579344 326056153 197263369 688028275 600673246 385193551 506542926 280619562 783182066 790917988 853046340 799209734 333931690 1017214101 252027784 223821153 738882217 787424262 413251631 215742687 941306338 974506706 437752326 1058117436 579482863 861343760 393194427 912457643 68620782 741379818 562462787 6429950 38339144 153271680 232467622 352210163 778775886 460349202 981288845 647604387 67634382 83683508 57776049 821458237 533117818 218578568 28163524 708874602 783227772 895872870 680623281 713195539 341971452 759887010 946486191 19396008 61347109 430519553 212379886 81593408 299125335 552357279 1000295019 386711276 443357493 54215471 868808428 401327516 531711733 471601166 986850499 996099531 58941222 677001271 84990875 71697465 225016259 591530059 226788267 1054029520 999120741 312011905 993586440 193303671 282540299 598238517 421925584 387518672 269566701 715446854 1069385266 631895976 786174985 942329672 906840220 660344100 443435655 1007388804 1067071575 445270840 625625655 1011020336 1036540240 38034598 106546054 925617954 719956839 875008089 1000456402 662471910 519155552 186175159 871326850 798947636 537871255 799297370 712067675 880014797 57204483 462061021 291593862 434006809 143291819 1044998381 568354959 350474950 150403099 269113643 470243999 351106149 687330696 299704045 550630774 228267074 922674454 361875596 855997899 768879162 69785838 18226020 412294340 481835034 710531527 959344777 572724556 969557520 718563110 901720458 997184839 798198196 830961241 460977559 991388743 829515464 208319096 528048023 527587604 1017770079 981691285 684381108 928334447 293546493 702642629 946577538 736270388 701694106 299857344 450302118 897469082 20453281 12078687 415595855 626474286 158686692 210678266 1059615823 618162955 154051429 834688095 126777791 354376712 39497929 675929952 222323599 663082057 753957973 1026086233 481618584 484731133 155537216 614582332 369347878 714327971 1066033128 257990473 764422873 773382520 114357381 620166424 54381689 964247511 618979737 932813616 519077563 988267664 774022403 554746256 595809088 927225687 1058469500 384365928 4261748 1072116597 452307801 31000550 196388133 411500336 70617929 256554733 403861392 334282456 625282686 936289694 687739989 693492095 318743165 445599210 332207251 452646577 885204762 409312082 146280743 156508745 959113718 789159137 567733488 224747556 978435367 843914441 565602342 553423670 219405972 653584476 537704699 639594427 325524311 354342245 999773478 747305345 968880391 1001492365 970603018 114000731 441489529 857498579 119154089 976760342 703957968 563709082 391062201 552394450 530090202 453322008 432899986 874403651 975261965 893296010 660369957 79962812 977354302 866615923 529722816 238701999 113975974 961896993 66070912 919181088 489780361 422537187 917650573 692344382 482360646 576582132 164870666 943663069 696510455 812104247 347734613 194040650 398190643 1055035538 51015595 974041104 550071154 682388362 539473609 3190698 849627426 922320144 600084484 766856567 444662101 280152658 566666063 212547286 58756007 312800275 1023993354 806480832 196708542 804363422 982959413 986327346 1046854280 643798711 48896417 1023114133 808439411 685903684 605081613 281903402 574992652 689974890 40926196 14301247 505045444 210777066 322781852 325441931 451493456 736737908 909449643 454226989 318078786 867297744 443341320 366177526 989477088 547269023 463995754 767772499 223675876 146062428 494460338 682340070 449576916 1042075776 258160723 511402752 1072064612 288303376 606130397 373338691 331509200 35093574 1047820793 660229672 354742976 201396219 364619596 1042703 588950722 807759676 366229881 1059809154 52655640 975919336 648934650 546619184 651083525 985218799 342276632 931284649 550814010 704521530 759238540 665343185 285749654 667154112 757755935 271423621 252860729 107370478 523331688 828065908 679864707 23257134 652850345 451898965 280556249 1067095905 933050244 690172369 938031312 961638433 270867527 375333955 358478825 507129757 762555709 231418426 271813405 983149195 726943130 769986782 402271388 583219030 708515640 652170533 1073283961 748491399 578243795 895924067 956571333 123875592 624428029 98077083 657681282 889919413 585478236 457391372 154869020 305987244 803296980 850574437 453162724 792154240 1048286165 799360195 693698468 879157391 932890766 179941628 393806002 727340918 759890178 861984258 920552328 520612221 419953371 670809740 442087862 650631162 526785336 470226111 192574856 40588290 491695234 284143914 183336907 294380716 248430189 537815960 51569815 224019741 69602811 215688163 782966479 710471679 1052979231 647118335 248060775 810680641 555030900 423030157 931125429 627673171 770575362 322397529 764732669 748843845 382945668 324574365 825228452 1024854523 700975704 857011639 385760929 972684591 701968094 606409035 654821017 488973818 573327444 560038134 1397129 55263452 711654022 616476198 87875179 596772570 543953500 267684860 426080616 1041954426 654406628 891135923 873016022 221620822 216917752 111235775 60507093 5448453 707700677 403987970 122793260 501565472 850996622 621704452 748499894 808363548 672312604 899548668 829047822 792329544 406220733 1036105994 400284916 494726667 418063303 593392757 262539580 1045763162 15361710 507669859 1027661424 648240000 394089394 796649638 704557142 1010430882 350571996 136682444 283532841 663407434 190558797 93221534 246373406 659322099 535013584 520858744 590209730 202610391 790534830 208768052 805509101 729854878 68012211 214579020 391802911 758906421 149846498 491874439 811163542 609188295 117708695 514612072 49293116 265811216 734238233 560276462 79958096 8101312 545461962 989452002 998861295 580436053 562500283 535402389 231182772 123288868 840751372 942241490 109252059 279427639 546411716 537879161 567968041 343565516 203470524 642208918 205501660 613229637 507738308 743498546 24352486 539282681 216343748 448045792 764595896 644741910 603261732 388170085 249152257 990791582 1034220271 133899931 157563835 951173153 473201717 978377609 389553855 664329355 974320239 141959822 986810234 538632710 281973248 225693736 21533588 990634336 368902644 304133011 16147458 505910856 691980929 942006718 484137579 879371011 76128462 1012105509 755057058 135394036 222940645 894802056 992347268 187095233 402793886 875028465 790309306 461423343 793576170 846027519 676128974 877392595 186074972 772376793 585601885 518562972 243677788 616938569 760819157 1030826571 166820145 874303538 959616650 278359708 1001030930 710132468 935180508 930276777 212034036 342224622 941363531 187989127 625301766 495110692 1049747962 593556038 387037644 237227089 1037240111 88829842 928267147 860798073 587398842 742866553 558194244 750093803 615795425 1028603149 736508174 113068166 86780889 51437422 307473127 354982850 238664906 159967358 203372859 655666755 256013355 333720242 152729808 985937974 331368687 125085829 141505175 696229480 37618311 937160132 260701116 109502573 262324168 979621421 580297344 869189449 638569409 813318314 248845696 332313105 226863832 686985092 350529770 1028983064 109047631 365271779 676299726 833314815 160666009 873477922 292814326 328962863 793849126 166029430 659367477 31043539 721805584 666743027 332443099 377958467 127084432 354788066 341092945 673076083 234550326 305231718 598556404 606089551 257730376 1028225172 1041875966 192043930 558985521 1067127998 521692335 793600777 798979144 671795987 221377220 219813480 761049359 180577469 378633443 784335463 769856408 419974976 64807964 270370671 755756174 901970530 451360967 396002859 165054357 31760443 364445863 336545994 1002516746 608288001 623454730 99806713 791786630 581929106 150507969 364298322 425084605 585104812 511626885 800139430 765977603 45459348 1002708549 678970619 307334870 263986425 378078365 635089303 602584352 1031963373 647964274 926710933 561803811 448233562 183468791 402145741 959745558 686502637 695595932 357957425 798450592 269330658 305451793 664450636 95406002 883307852 208775788 225572885 796176403 977350537 380991065 115826277 633021781 533442588 536974733 363689513 609315629 242756711 384545913 144875869 26898715 3032293 963594383 984778652 1059378129 511588419 670695202 681711763 627831295 949727011 128916075 614466085 862423988 599057266 463336246 596097057 689478176 237432864 800853188 43353825 1000841822 401220003 72713685 1054558630 463568323 38826359 175026667 165978927 744874867 49166486 879656842 1012875050 720864915 3864858 759336148 195303235 20719888 281658777 756412145 688128994 283342430 306229061 416002232 699458134 691031201 304812466 405878408 636082136 1040107649 900252163 718811692 318831508 603679026 394406412 53670161 45061365 347377339 607551164 633964548 62464666 1017624397 22936569 66809050 442233812 87290661 155487383 1002119416 896148591 179787858 416862463 266860146 1016699868 302490517 748138405 171934653 773183511 879540281 395258219 511407173 426874359 133529103 150773128 292777536 1060594384 879915305 770550124 434270206 618550881 966956812 212387329 413732474 305874622 343184657 37421903 710273370 376031111 646203212 340261938 942988304 439010042 353863259 954179948 634691911 342941885 353146060 121560215 542248762 619044835 379557173 547534630 363803204 933286253 1001363563 896025399 754391240 88251816 554218713 355611812 830458385 401617046 861337344 779828619 946236054 825380566 784453539 1061526150 1032898305 251589608 806582690 609401427 918918959 936094078 741247432 693566981 879549200 524842893 139220044 60685070 709989440 361005076 361061631 230237729 61431413 95126789 317238295 766295623 635410996 80753254 969374027 935979907 117826678 372502758 575909970 1038979984 782533938 180304392 773176510 55833176 1048913579 900704242 425276410 392702728 424759198 22930473 934574400 762041883 613879284 845733846 264311507 640245940 1043085449 161336177 357533822 513168205 692079965 519136116 1002751514 602522606 4147854 817402940 937606864 686935625 377708149 908289625 409652787 210018473 814165501 353056957 948006907 648383603 183641268 618171550 762144757 853807134 617120214 414073311 730434678 900196668 289284678 1073344785 627436165 596045574 606005875 509553095 989122075 754827167 366783663 879099353 547540643 355552727 1028243552 121980421 566662447 743136320 31227290 308133041 677072699 573534970 494920018 438557504 1002980013 791996633 650172587 767207012 243050678 879163535 857963648 657362070 849525068 451641671 1036149780 517276872 1035100299 601722475 428480039 906040302 648091116 59815650 711130819 533846459 799579795 234906148 212493085 234293408 996111351 845975142 571752074 165033844 894373850 902262251 880428305 525730259 106427754 592659401 197923182 921549393 1064108675 1046666827 25507491 997511482 400117902 437848218 990673091 228491440 1057411151 683432758 346820183 236216250 963466475 109225315 237100010 398104769 277922954 621899095 315188015 150921641 554081490 45679022 1069738022 459238092 886480925 722151139 332058644 654603195 954341103 810408511 1062520470 1032133634 500005042 494310462 823158013 532901654 807752261 802618870 946649903 1060360653 515731741 899715052 615753715 592186385 51575297 950530069 385989332 237937993 912236848 527392049 683513332 879033457 188808889 1069657244 598333695 987267387 829999574 104778408 5061534 889588910 900227275 382027878 323215057 632080 443449828 861763496 92295516 253845631 209674855 359071658 346131269 705709522 507302583 424253112 283288708 66226304 88061325 751252723 572188717 420171498 617605274 430207614 353710297 445777350 947953211 611819500 148765027 1025561077 326909187 634796601 1007134665 558149598 123937275 1055128874 914838759 917263936 566517476 80057536 1001150467 495628498 919131438 869497340 476715888 286731602 726812777 481545357 499746624 192623637 83993366 751667993 945231275 303860155 299076689 831207812 356122368 972802129 675375196 611449657 296185760 738777498 1070938235 1032650657 37488379 520669170 729699183 305633611 314923571 711217394 208499662 132712549 197459814 942872207 171998333 133406278 219073568 984506841 412678046 234989017 410896370 486663336 98374280 478417561 1027783541 857263270 826158831 1041561972 279286997 36222367 904328283 777328280 566340646 1016130677 324292108 10344819 586079466 915327307 931105297 904424008 999429861 792966083 700628572 420152415 373283870 562120315 983571021 556202678 272252752 138258698 15165183 533129709 1063426472 928617301 275872603 209099582 412741519 500839982 682072727 341480042 980876597 115279663 1062839093 1066593005 162475331 691123238 514504652 283318888 846513127 451197144 236869777 251864865 615324595 169876907 456901226 899494080 788218891 194445404 531049164 501693599 254429755 1046811710 324820209 304415019 239328853 442121250 713359121 690078161 660936389 719159338 1069510129 113040266 672595153 409014215 1060453902 507406257 966095386 687740720 384267579 625415720 644023589 134424502 1030504625 625986899 137667340 1029971643 570898010 47089718 1070001752 264716589 773774411 779614692 199504842 736246683 482338038 710377436 830098173 210136943 738566182 680912437 146115793 200229044 1004509699 621974543 559987206 161588137 974594058 322172951 184051283 626597569 468777957 623445427 521598330 556923716 660049150 837831928 198021972 319907074 106693027 25328139 48311784 251522770 335554557 204051544 1039808478 562284582 1064650565 95954900 794053676 729456512 379512386 361472042 496428897 566954172 12287239 719371103 502511388 894465289 325677260 589334756 656634433 212534315 287686288 155969959 1031621674 818601308 475077300 106065478 433670906 173707082 607675914 607333137 787585821 1000640806 882142710 1031750117 287163837 1022825154 476193889 1029869187 416696564 813568523 580132219 808667491 742511335 396611592 34675687 177261114 923593613 365195628 627935957 261540644 856645733 71814138 1040177551 793061425 771170628 132004310 262755212 675042869 983788375 623286701 432960141 751095032 296324924 466786167 100802732 239387270 127579635 542916732 548104430 840375685 13705827 582738544 617330010 254261622 142986680 129570327 513703785 690007614 216618489 848942031 966316265 923589097 510153390 992965338 1024013388 282473998 648432209 910284620 729316380 929176096 727914285 1018074853 309580824 478908728 393375827 16301580 934424541 253350587 658579885 666391068 533997050 1005276191 758269327 127105618 1053594916 823638123 389376735 87066639 1047254567 348221965 520064871 892975744 919047916 910625889 718308862 194493319 662146306 882158755 210054822 142323027 359558784 617249755 85127342 236508539 1010444010 491052693 590013179 296756043 426131464 971181497 928881062 363882076 66023415 535689501 641132291 964136638 580338877 42951659 823572698 966017367 223537869 517809356 670551298 895931960 641188150 2814234 983871954 511413102 508389888 1049726139 739233652 855198974 94072568 1483599 451600298 734569739 196844539 17367175 829951141 950705210 263737341 98134365 83353227 542959097 907621546 577082563 1000074281 392728798 99383838 47750947 837560604 446178608 672522893 509807279 880531049 926619103 470128994 368621133 917777773 456824021 201963852 295127521 322144584 490155342 585858757 588278740 518444264 591555827 195932418 716661952 648208820 229592778 427061185 545184885 983436210 435326002 65548036 22109197 247786168 648456550 409722801 154756682 344409873 254388633 268457201 399123776 952253047 135671100 898994627 587129560 591238046 98837585 404523584 343481398 115908114 51198371 39049466 897756936 214359867 1050724819 707283770 599508451 958150637 756411966 413696983 641553656 155709321 885426022 389689748 791789321 296459779 622074582 176965264 612536009 702367536 721705687 782050860 741757972 351676887 833164592 735191113 65475020 363401848 954109566 335238676 899535334 138416891 827449376 587737824 114024346 831893806 230159529 511757494 744727319 54263994 346727121 24317241 905041684 756905021 529965637 431346898 432714711 1717640 46121849 477428896 717041577 891614467 200902390 856277716 511533245 1018705873 854170509 860977802 347258936 791834661 43076555 965833994 639765469 446552245 288446330 209981621 948096239 887659887 318939073 426717947 848163134 61549941 843951065 1030785709 155845884 425721420 581759649 703205561 67121883 477068221 684880191 618017210 264326625 794317982 174061306 1001063988 1006332263 714235589 410857611 134742334 522026242 328267658 514083482 98271885 698828469 671774011 814636638 56287389 15993113 799982645 177069428 668797264 529173708 67872310 274100348 888056984 958209662 281318002 494088697 138366824 767890282 877505029 452023772 339430947 370645193 934423279 614725913 41432601 759903014 321217830 808346422 943364303 257632188 1072239544 42820989 262781718 347287110 459058050 634515435 449871987 971633394 761698387 656769948 106513053 353796548 465797089 400005761 884914071 313472733 894662819 225768314 1069106944 179829163 529065713 266717642 627337267 975363066 901919012 74702216 217817501 599736899 454293365 434527100 373434053 18385643 1016742092 798304137 155674879 320789568 320541739 1028701917 722171550 1065536212 1046432288 497812354 464758461 822192590 428760433 223122543 1000373215 981933507 791321797 163901332 924627884 709776164 100512494 910126504 468384438 189127887 552652009 169992991 510459053 642886541 366575297 287778229 682015839 366574825 999700884 631220301 560893560 926273600 324961453 117250035 844418157 858336950 588179889 711058420 408727312 1031616737 259387416 356227811 918672393 1059108860 965949985 352060503 1056670325 766728431 823732461 783045365 842048382 778451586 447319470 711020524 215092703 468293254 242013555 64488441 81363133 866048404 247227263 302121464 960873265 1022214948 480278814 219852818 490871209 958420663 163618132 356806555 790484708 613892305 711155010 1060093300 1069342186 712812253 501202800 688884832 313142809 758915283 97063858 554298457 933940342 709677083 712578010 580671468 1025381926 475134727 688025804 836520626 463868934 18690216 312228164 228773883 236336944 494261350 363711495 731255860 435348922 833885801 373382424 641686429 394874921 7787345 825351151 331212271 358574168 525374839 200130334 240522807 911851423 642441410 428554920 388041453 443704522 18477019 755318754 457108794 922293845 883543787 896683365 484977946 964173969 731934852 850014212 162464457 160221739 460572323 1041551964 69346537 81654476 93045778 506646984 366577570 399480150 426030080 876317125 516666097 147310392 650321478 862916217 151549119 837286765 414137626 626098970 277197671 425888314 36059263 735963573 537946509 259063537 974523447 450599814 786847845 258490174 632498880 90824270 832840966 293701275 642330052 134104045 940383833 114799738 649250849 197700465 346303021 721887785 156420876 12658665 601196131 727467087 122338130 68797736 226301597 852488944 778539285 71323015 792194593 386326522 775575174 601383205 117071011 717897805 803582770 215173483 366680401 122208311 154669833 326423089 418269323 601075327 372221547 626264483 134101673 522648189 745514704 993990428 209014455 222974904 1025740650 587485467 779777350 644697927 623602790 524951603 457245737 159801835 37467223 787901521 548536405 945821502 1068430856 672782548 430777916 935665859 278984634 111549985 59988641 85170662 765961745 901847220 371654992 501968131 87928196 1027406662 101943963 330966641 266879865 533803368 957326693 676996789 1046966611 1052079782 508694144 808454591 987152851 230021882 415481529 736769238 637935745 434278457 1000916278 372471145 11942463 53135678 619316526 1042664352 402243297 940293889 76073320 268831971 303535616 432527022 601363676 889708947 148192682 82970827 484695291 352983115 655035848 780897961 348729630 1038014 805645667 433228870 945087867 645234759 609185792 232335977 475537617 397579586 51887368 449151260 369692345 740492800 629374463 916851977 683994627 878155522 119207824 957538183 416572647 992821912 603839880 236661844 975027602 686568615 842425919 626752358 208611014 753614578 858639190 1068844665 1035317527 958348743 340430659 406524330 40725037 501904030 880143780 230912952 14569528 778785610 898046824 47263653 754030764 316404309 931789485 179683284 800660095 469342368 189285165 19309297 463342592 696439704 140931023 899532949 582531875 124210372 222264007 285518493 959843230 184927205 779752972 954707974 315047266 457530366 860150282 810378181 703656848 713863626 581635521 728109457 320963122 20794785 693237007 675638765 98231676 120683872 977671315 931355906 228162816 163490031 424066567 536098593 1071694171 223246188 193036695 321558307 579466250 83623458 455331175 505495521 592134273 668670110 1073159375 109037005 95855738 47795322 864746904 956905779 101421017 37542748 834707580 436439600 736669614 409225276 104125580 589069020 860622938 1027156521 352915611 427166997 47807588 764588818 1051612593 165392668 696715316 259086590 540868101 930933643 857993688 261602136 827926277 184569596 196072782 1058013190 488525898 609073856 200503533 749695017 857610363 636457903 378763795 250197610 973231558 724018021 441665479 242335731 839156390 116805933 199897396 576082332 764620667 934633917 61496107 109022645 1058653514 872311192 968896246 3980275 727001697 251687472 990337202 177026699 860944415 969733667 626374222 965204553 1062252963 597318201 39976506 410293599 870240429 160002770 906213209 820580849 719431280 527567659 832696769 707117175 271903806 840063804 1024587251 173735557 1064689129 719490530 890509271 837194204 720612160 109132309 566354942 1014336698 316516743 1063812858 918675631 720284413 263904652 1015875837 475217578 99358370 300145993 659191542 520463380 870275101 567183598 751202779 884729566 356245479 951882670 907143542 486203580 371346554 35316135 571554957 343591973 252714130 157677597 627540634 463253416 119445027 399976374 424978076 1020976817 660454481 200388209 651975078 272828655 501618382 976800037 574937362 932939613 124299217 28969768 805635979 877186190 526849917 505712343 791173161 714535796 739908332 711424624 649987575 744965348 868363953 261393821 1033225112 747765721 1014573701 153420049 947875782 1031215020 538569694 588687453 43291752 278052003 771587951 47904984 144361318 10117754 270284720 777860498 713175068 1007711828 482610002 3611704 575936542 733718623 577765826 1035470309 403391457 712512817 100997416 16054301 947786350 836020820 489765807 801828209 2654668 1056494484 276015106 146001205 1008985130 507013901 360953571 80253062 786518972 273447351 468897652 480450509 208731854 222753530 978278842 675246238 80563547 964094261 458953734 39841421 266033681 792943035 354250105 833011750 233186496 941415830 954616194 704869043 309895067 587834374 563626273 782360892 790529569 861902350 715585632 128425674 486527374 1004750373 748626640 590546580 394520208 388612043 587364042 975482116 980248408 46959455 166153027 192008078 492715805 583822379 440998027 552788884 334426304 132696721 530997395 335422250 150364116 396546564 1017214567 919099776 483667105 211751866 259675445 981502442 268145285 959304269 481046126 815775113 679022317 1002784883 872935306 811204502 882846559 470325626 212491563 592486727 359648063 85006451 102402863 735238249 297652262 239494347 160803581 1014777897 963984034 640477706 300517491 238421222 254075736 1020377324 838573764 539502395 356453004 228427968 257786080 259225958 200322169 129569967 903813560 888491892 647468813 23319849 631831698 1072742965 401054374 122228593 354624279 21685730 856755136 345256892 774718100 560044354 1051614697 938912177 318869556 691155044 317460011 654323027 718447503 571531154 607219776 127161532 931716933 706131453 709466012 878877602 742129426 318942056 636031383 922895360 956568846 47501030 911216805 563734950 967785938 977558539 146150425 981088663 979700525 1025510093 478153592 320857783 901958081 401779945 1036179936 367500212 533038942 57559991 926581754 404735195 107480997 648379035 72981862 873976698 912899070 708157789 305331152 124988885 970641370 670278263 1714990 518545974 426139925 992674099 72640347 278348000 767735180 243580351 676022272 941961647 45388221 439471700 741462490 71143666 674509934 137905007 1011763939 439586231 167649920 588820917 863012544 701367754 523812561 502024165 256298285 898511506 203076621 923133393 595865211 226510256 322001896 749866416 552115439 766588044 455801330 829648613 335093864 874130810 16513472 337334142 299361332 1017843973 964700121 849668740 205538340 661481135 653552697 359838011 486878159 305042199 460982357 227992568 660548943 130527061 753193982 894602977 42680067 803486658 53193847 230205064 187014439 935501375 383795943 820370838 784854832 27857668 1037361724 141919419 67531811 358276360 184240891 356092699 599921648 286398243 207782999 205238041 1058641532 186335414 828656964 833333183 115101645 160826221 543783904 742991579 323183694 351395672 232548388 426598470 938600809 414081399 224338076 443761599 245340145 516448052 841806739 654784461 563690159 90780872 961531761 964859687 82049073 533106206 547033307 405954627 281670630 64124173 124705523 177337761 112645151 353197112 195487506 934279777 472016178 308080336 291311859 508537346 1058273216 313778346 656380200 669348591 446433983 504933436 262370766 765701863 781809426 922851528 534308726 362886055 685666147 6171926 951906434 451299195 471431125 324343765 873824712 355416949 875881187 750048728 127747009 913105011 774163149 935728487 387372296 440887347 871871188 687181111 1072820704 1054320277 151756883 402079724 50770478 769964626 752915675 903496974 447101996 143882615 218128564 588968224 36265708 606784479 729252789 18437470 416750766 663075594 223955588 330583603 464362645 458583688 100409590 1065137342 646172584 26099335 743873426 204753926 510659534 1009870362 825606154 667311294 790101652 497277346 67282502 920306756 581118031 710252772 268807157 756659740 993972699 953562388 807427428 87110050 246539355 803090944 888254007 244926012 1052171618 857511119 213111754 77185813 668223239 347087958 915409603 143791650 753770856 727041854 962460669 451329336 695432973 989656851 593910806 1130545 321671409 765993176 125167929 708345608 978234324 38911505 98343808 483200519 381893659 12542708 872755926 130295787 599528022 700069240 437120804 576930256 230720613 185040947 205926288 180650367 123431477 58036531 359037383 335768956 105382320 318041323 103456825 139799373 358780148 163810126 533735075 596566211 816222429 198654651 1051541512 592874855 106181131 725000943 772460568 493238728 537291604 775306152 168712854 542745521 331504148 1028136180 239934426 323533396 896463964 592146746 922683316 352786366 155330742 473035811 248726558 570329911 376791650 992377148 635877193 1026582080 834748146 653615703 249555380 470559379 516110054 793419581 84166076 139319768 318459978 62661417 1050218003 666194183 796759185 483743330 326448576 248130275 427126862 787569206 542545617 407229434 107159772 762309761 345835922 1037869578 359993364 319829566 537408579 208801682 527490191 605695276 1070422846 639590554 271611817 488333745 186184176 939362065 880507463 461775485 533813703 73453211 699234781 986326409 439845011 60537686 693998927 746976476 1005743722 1064812296 825554373 244627197 622169619 747085466 954063069 862242507 1035844343 953219719 923046360 170372058 559610642 420728945 92483326 739956310 1070496657 536172962 706580115 418122387 869411386 641628098 912992079 345452645 742986981 550424706 652264047 237604989 3737609 996433112 562621998 906636626 683792083 84021792 1030982342 1045502728 729054074 1011153655 948785093 847681530 865883799 1018308608 184234849 713672217 719316937 751216155 455474355 307277921 413374747 290701679 788717137 1062247998 1035546579 323216996 485619926 471884956 215674935 185470495 1055429670 717813817 628772248 1037417753 719297638 307405815 10487037 940148934 1069774528 143883535 923900607 288125683 758604112 614648752 194487813 33773324 96580757 556459725 518705614 967788147 363424679 876659392 983087972 787021881 244644083 486819762 929523727 240019464 949747296 157340590 880105349 532993312 445684015 85240855 392630490 513083891 938737657 1054488952 915446931 942760433 351444920 734367326 798373894 222002636 806527344 546593209 691000701 541741983 199111730 1033687890 410707093 495147847 700825903 939061191 1007656697 1037069431 172286772 511200010 861868616 827436472 367715178 822588946 862100693 210252020 168654701 4129951 270165139 567928427 863905839 320215488 501896482 921376216 457033492 26586572 241694841 480622227 868814332 736469323 985640877 505308783 55264517 870985624 427116820 405167756 730731103 451073340 314180336 435371309 623729196 830341453 804436947 131443716 423276220 679914405 172790914 781158086 78612941 521856359 920013447 763975208 757758538 259606527 335739990 302709569 622247178 142807891 889341763 726316060 143614088 648668240 766625471 273988463 1046003291 382390821 997044652 488390014 968230155 178861184 631287840 946738231 1036714237 371529992 766081386 435853256 167744294 137312834 663693887 523895361 860981527 561193273 977419625 81846521 274874378 683142937 639464153 272090284 996694134 109065896 765859444 826489663 486056272 887509746 68119357 388401424 637064524 1048475582 242638390 875231140 84533459 68833519 911031137 625027878 1071583018 162217272 213812497 620576600 525619127 186372779 181117741 773212105 741845811 297771570 856560252 682139372 566216367 27133225 361266985 960108114 876257695 190763541 316283358 806367184 201387409 680375560 558815514 1023058162 771166346 957714421 495238686 119812095 826573752 630697376 472176031 258332110 787869056 855511965 172651391 955341599 816287367 908420643 843067767 809154421 1005124172 735774206 706043975 681406669 908006874 748814733 483489115 154073770 515839152 901094909 47602403 808299417 1016890527 323419182 599742050 764432511 520654672 612108731 73945834 255160131 214432612 385865732 340618564 793969840 220555848 783922937 558037419 1032916002 1026150571 856256135 1054934524 226842197 395362573 301827094 961291817 976416664 199773841 748397198 250270942 370586972 590826262 932188939 214667744 716770811 922471427 600219842 471988892 411869281 167839971 625049512 359099066 667352582 128668647 530463037 577331636 375061999 549703749 147136599 246924458 365538256 598535366 969329536 610493683 430623536 892006881 221612430 546819111 123283367 441167102 949642062 853579088 209534555 584730280 112174676 340945156 628826503 371950044 324924698 1024505946 558123960 595624817 48310256 1014786632 47993589 125185504 336037813 562555710 390127660 133326763 753760393 457021262 696444731 459456514 840790049 836477604 110622984 480473877 375864804 1042777450 503111039 305874218 534131896 551236083 178970826 737012175 1062352297 373171313 263322192 569481931 884447219 165801360 441334430 37171093 150664364 456800587 671884216 871405871 682486999 527748559 191620793 314539180 632405298 276704729 905671373 982301872 228952551 613144524 303059236 1059830788 225382618 347647434 67824753 212499152 37976093 579625153 663428876 260263803 298299720 331739558 559113860 99472556 295240776 797821231 577473496 909336938 1050116110 106697331 633338631 469711801 647193032 185526491 902494088 505488820 1022426480 854947098 442832085 361825318 369439783 643003079 986362295 395059375 779334616 558065987 489658462 604379782 549494898 116005526 173105707 378048835 1040894913 689017796 932173853 376200537 290909306 34877883 796772292 583886787 1027960179 640265180 744167509 680846243 1013703115 343788119 517578327 1018356624 303882413 230916756 91536806 867827231 386636455 585288253 196859834 14663781 459424640 354546478 813789567 364627959 1017995286 387749994 490080249 468270277 360095504 421683153 997186116 409007912 977335234 79988463 86011374 1050257992 748047837 520720914 139210932 975379379 633412853 661372765 347619766 770118534 1028718132 750352773 869835206 165551712 239286214 580588168 889773555 694253518 982750357 1062323245 397305099 298814761 67016300 388392868 189988306 949370969 903691529 136937038 486363034 438640174 410687227 739191082 567034600 921900361 663362997 495411621 1019449418 517069520 465998789 28241810 1062022223 1027838832 467500389 11165425 986308020 361233922 92404874 498409826 391866750 220500691 497082319 380415694 965264370 796473090 509682293 520654340 387689301 678766849 498947182 175153757 955212269 609259010 898003681 558875031 36160247 550616613 230792077 747819406 845600895 367520206 54406583 389574404 738881377 879580168 930032692 312129305 199731476 219775291 731683808 697204278 734104444 878123795 731864643 511207882 576123935 144761296 359847415 1051566918 121760858 146975991 744759880 437931970 227011415 124705873 57277977 420322593 163440020 875602160 277261696 891183348 376414130 257460366 853409256 553733793 469590514 362543715 410336006 108842834 345744336 118283413 698556910 644566972 299126524 141706333 930775753 991438319 585885002 1049898016 33924120 897181928 3190203 701359001 787479133 444926795 981557311 562703128 993352221 610649904 105194588 374465227 879767374 907970559 567248526 738265161 14411853 133392527 859118389 793202648 169470900 1064784699 375783802 390799667 192798723 849509061 964062394 889910755 614622436 325999660 145033262 805698263 378229824 1030481077 6783297 638523173 521563726 415218660 505554655 28204382 658664076 1047802814 66773490 374022915 710308116 698559904 850995652 247943622 324785931 517901703 299716549 199437832 384284938 260344020 831564383 734522598 569399397 837756974 438767527 716094404 19033819 509438906 68304055 541901519 960608288 614667056 376428806 873290855 587764617 498104023 614520275 1007241713 416231530 954666637 230417175 34079060 881848654 126692520 989235675 768240952 418847338 100827987 562638137 238130529 715606320 412021761 1014846016 108885576 692138652 887086120 854377655 930427541 262678736 344553873 438065290 476792184 420148189 194302791 622650710 805254679 606516984 201425548 719805763 369811031 805441819 156777157 482658749 892190286 448576002 945608181 1047742488 574501076 73057260 315527460 179655292 122448275 1026316643 568132817 541368258 1030164837 555135134 947486394 1021994477 494636315 655877617 429880538 109702496 945123292 893679931 473945916 774531707 841412115 145701583 583725387 307320473 86225311 327504841 333186088 1006266046 967780693 218830536 1030007467 203760574 300587082 1065849276 945484226 400364785 730668752 89184878 87941328 39594607 160718377 80100689 43960405 924107238 298264451 974350060 631666656 815916813 616457924 60257613 309999855 542767114 357174213 424884991 382099700 838783067 912630403 685202640 824239973 912317963 853540207 821970307 416352614 215696957 382327453 204828347 741129902 410822999 25211308 465242612 1046300795 1016649106 384531884 80254814 38632648 373125209 291299715 75890162 1046748789 18685199 759054939 126158552 102872298 334338000 389554846 587483673 207447045 320347962 917342330 913129189 731547728 632421575 470042818 1054723646 1053600143 103388406 423999682 230947338 558904812 94931813 867294232 152480213 533748172 975927288 144712348 486568756 8744794 532292716 611812384 755872508 1000251170 513987914 41721533 376856624 313954825 748132725 801202505 939796453 733405857 165904396 364264175 64816067 266918288 93632654 566989136 212334590 582938752 488818206 1013788561 586962218 110746121 812429092 962759381 607594896 869751802 103381190 22798771 951544020 72816090 804171873 225536178 501410018 1064396302 98979152 84206459 1027190178 365036364 261019465 565553012 958341543 570244614 585706029 108059489 818993970 965734208 464615812 1058379189 401275366 611995155 638952758 668756929 1023266722 18144083 301354002 773105705 422287598 430912593 582771237 795893720 571980148 25453244 1052920942 297100782 659039848 497194109 207630275 27728010 669811085 996337778 707004793 656551961 128093460 288278373 951129375 813520323 812961607 1059628478 204064720 872661919 582298968 427963422 835116761 898841883 78661152 902145591 1072945723 1073490578 779891015 712077342 830822752 719544846 620063323 169980986 949565880 357681544 587370853 871070081 225023320 803110162 160785119 640434436 923944484 394228667 558102399 430311353 197200040 983442502 954504103 13305088 172825648 800289217 423509233 115520142 2243082 798452124 678551086 775965192 771179691 1052699696 173785688 820644353 534560809 405618794 984676832 883839433 965259373 370500960 748426258 437860232 187689688 4482408 1652830 26529531 1055402619 844271023 539232187 227131520 391370248 443812081 1048253122 912535353 491948934 885830232 672275848 63188985 614243661 628215040 531299548 558018421 171295696 599104015 147733149 126822299 881472344 629633485 648792536 506517184 647045426 839500852 1011766616 243168925 215647448 697094963 20557146 453080393 952928179 956478323 20398542 745593837 486410647 955087009 55781080 88500803 727799980 170106627 258738341 737817709 624733223 694776930 854050425 360360261 629844727 793357354 591876073 987189763 137642632 135747408 344534842 689008884 232495022 310996391 219128250 692768875 1039466866 241472276 83816922 909856709 155861589 249872799 542224517 743760823 742832440 134411245 717415607 780677806 174209244 468420982 979616092 627385209 302342543 136527015 30966347 320109740 832942005 695571081 405563706 649747883 779117795 241491580 20128770 855125117 915373830 11760125 282529486 1055046236 855836238 76617613 259483908 868663340 461080258 1052933497 743270436 1017417551 940571659 758138377 519207771 1036838551 401161214 798870977 862117689 269566551 651907111 688670711 229736631 974991598 512179467 456823928 1052831149 775268415 313606402 298378970 708687709 364106877 856308733 844190588 1017927647 531896564 293072674 877147346 350151715 709046091 634089332 987900195 1046009960 786768460 391088098 914541008 793274619 576987350 431562922 400811602 191791595 282947570 334150022 310934786 407848104 982757229 979975923 1017336275 143897502 633803091 822268772 434631284 248188981 416065208 926575999 808842706 776424166 616982462 238726880 1045173993 468486109 540674185 829043444 895804831 687511441 40655347 839677449 816706238 666682598 806959933 298903107 411159570 663317880 997124673 365304131 1053775885 276111703 409196401 294749237 519977678 780931047 844117089 275901522 779624532 158475146 568833637 56771638 703936112 64905557 504390055 199476468 491704700 292234751 526479942 748703407 999598804 736867176 539287064 106713602 146084295 1024762768 1007371340 721055410 81506731 987462196 161121135 550957894 879627073 310895220 247933626 497447838 380352600 418755287 117348848 68475219 962823204 93261816 261179239 989419447 356477229 633977557 155502365 945151451 707190850 236950988 813205068 818380003 103807604 835690752 438292658 1072142476 605620039 945971154 492956192 791409351 836652859 196116260 288358793 550086087 410177255 230839356 872836494 873380366 277921786 39361057 912703661 138740084 378673723 291731345 975574398 657078456 945478340 709516325 272619183 384099297 790361682 482473056 900725315 509549927 487291531 115263000 382940989 423771530 128539834 87754446 762650547 26641823 1029680048 186170928 393524545 833634629 582445757 482491194 357809031 1033661144 498410574 119683350 397812485 562700327 605943879 6982842 316638612 767851243 789076369 192195393 554796194 202322418 199620415 748078247 901833681 129403974 779484835 413797968 791878122 112262344 880094848 1029048225 150753333 3263937 597213959 834908469 234190186 1016260339 700087659 731312944 425113079 166673031 403700363 995102570 619573036 138408241 518208373 551810862 898753775 927829806 114743419 285659188 140772715 842593382 852441286 534023803 352637764 1009818605 606271960 821774361 237038523 644724811 295107660 2734692 1009027044 545279618 1047365733 288690399 1058119227 678415137 90346881 417578549 389679155 180745895 579148975 319114293 168361319 89199001 42883712 84748219 12129950 705560000 168759831 63760485 963188388 580453177 384267092 681735530 733554044 5168279 204107968 916773219 845585216 472953726 184854331 658212804 470344213 372690009 756741106 102051489 164836788 84597753 254230580 544015151 729378968 463993757 480066406 1038249303 460586506 197520560 989137544 2312243 1032141843 919267661 875957148 627943795 495994167 410041758 391295982 725904341 271736186 156484204 70394174 1014529416 810113095 736027183 555456468 623909940 627350472 528617589 79705859 995313633 406717017 427239163 466532110 869878837 586190180 994138961 1063757809 288554921 683597880 37925066 435674831 620457716 855820478 905591307 979609515 253101682 603035929 512724196 540834259 448957017 792572210 185997955 124767219 1003537653 469581174 98537584 742343135 696624137 237665902 244456887 350943929 688043066 874337785 1024875101 785436642 749062232 741538339 525257618 700201103 311210760 760342003 574886300 799160386 672869567 956593038 903322775 852284564 832087566 648103190 587447575 332663945 795333943 989927594 131834107 967926984 963529101 366305423 961891489 99844443 657799061 535967602 847932729 960432334 979171337 368404708 54946311 779893643 892682059 953655317 328578772 690429755 709075156 299837876 1065738197 495871529 253884405 264089631 302441615 625618253 202783118 6427046 554749839 346011933 630573849 430215940 942278372 480257456 252272102 734836906 24745375 1038752413 90482511 748969040 904911317 580555945 680202078 393048400 199059761 288801037 627281604 50261500 835917176 283164818 238408264 641871893 735267700 737463243 468244263 51630934 373700720 696658378 466767330 958663256 564447327 363344430 606120777 589079785 953550775 653386818 477921625 90103352 957132717 510880458 84656755 182374764 143394649 749340481 994767905 340438171 940427165 684525682 267912373 85491094 1012558335 471464243 398392065 620073112 123357040 767434000 1016748496 609364716 743796432 1059817970 872351122 887166428 152736449 957314312 670571365 532643090 454368532 525940072 982765500 877122551 596368128 833827249 723317160 473625923 742525864 153803963 629540214 826931135 444833821 547074301 386166123 305354830 886975492 118220929 899749696 584299883 743002496 992890096 695942529 113645651 166228038 1041426118 155873215 848566418 568599248 358042949 918922430 617853240 831402840 165874484 768416160 50056088 334183193 755891978 76857765 739270395 66756888 992243747 778633792 879921145 924983166 542742895 965107366 894132745 152005564 755812834 1027236288 408952082 184613761 985978931 599624690 1010411134 85624407 423351354 232252572 810647034 375298344 117393294 378641529 38308347 245760796 47094464 560488755 398445690 884495948 164599875 804363402 279017607 47478293 696395952 157352798 874272665 200429571 597148652 870585730 271096654 831238978 687094853 653986005 978265596 119914661 642671560 650803957 255595662 907062657 28831585 253601615 734948755 948938572 255921086 129305306 441700207 1033512955 332491320 1021265332 375546241 433753722 908932003 594001316 497676884 773938545 414211857 116175788 549766885 62618279 1039231644 1006969931 1039262694 53861970 386650944 623955067 224048913 758378899 388932198 835692079 64934018 487962730 312653998 307519249 1048434409 433656335 234629381 971135675 219731817 619033051 670762990 742540131 910607758 164127310 756394733 72965540 609787806 795770398 270911503 629958611 336780698 708445993 983639110 201973948 665977433 302129605 449206733 478926195 97787920 723700062 479138612 25440772 620715321 592192879 924219976 438020166 731863886 749438528 287327727 662208052 1012693824 700737329 1028994769 885720687 931390913 522119103 329241588 788328919 440394588 108654785 341176334 633596041 1583005 444542678 764121168 403488484 506748471 34416343 613610051 4570225 912235213 668880877 244168021 387275138 698196119 742631429 67279887 175790887 457844457 152764935 1029418639 170806270 212325450 789246189 423565936 164038356 822193173 1005656150 282738857 224884974 490442525 676682407 851506891 876746503 393731850 160563919 386433707 200372216 188215648 679684254 567938704 1720350 810772389 425758309 349962253 261020961 137280397 1032363914 1070699706 756461917 210186058 466108744 926258943 885301089 324641623 3667769 76662114 7539618 7208312 141849735 414549926 147574481 444770682 1042377896 589563501 206835023 807944485 24197474 859356184 335787998 20263591 13819308 67267613 103325358 725654678 348594954 268093504 764144464 370207613 587211746 654604081 681142153 860189924 210711516 316611757 383494981 122205955 160167368 656494247 276495656 127652330 827687676 696969256 102865584 548600810 977022864 96467262 43689496 698171125 901305331 597676223 476000285 796952503 831815174 913209591 599376109 658862566 439952008 782069267 765603541 96681029 172114700 516437726 39935582 415574249 909885349 26752247 730419371 1022034412 188707701 383343678 91578881 625834205 494090835 214621700 99689208 453294967 407122480 1039435928 498207301 942341935 665814062 378019265 286298067 331220795 651304288 924948058 892944674 442651168 75128838 396246601 389952334 642610969 845337701 689593845 196169279 991243626 82891821 975103995 800449256 692244139 9781190 37127089 980048297 891649286 966764580 694559598 309899324 547064995 802275015 81482352 247161490 774877294 561340408 134686956 873615110 286812007 302608548 1044612189 406146257 205366063 151744072 331203128 702075428 387359719 798480921 914561477 709856696 158477509 878937142 989415743 303639451 460558968 500531628 665605735 10659873 9961668 1016062371 636287530 271890849 910536226 706913083 348914271 558808266 317404231 704261531 367365128 672427403 722275313 993579455 313985148 449181765 30064615 400886827 613171018 557613583 349010739 103522365 378058789 251384977 517734099 749173540 402360964 203519490 277414406 342508987 429751890 474434845 344845198 64489782 290684306 737631337 193330311 973450821 40974556 545354314 567648126 693423462 587160563 250316371 913099424 781648317 15487919 870684744 508947753 634927367 75695637 432372559 302049771 524611064 598486967 406731584 1061964395 916877800 551997126 147487639 619121425 161229497 242613154 869301509 977329099 468778898 88541320 945839207 750568246 312135027 853146408 429004152 475665707 236020875 296240302 376556706 1058168877 329571607 500634164 323460994 668635187 94092847 465895086 849194399 508360308 930118076 288764271 81507184 774322300 426516201 414037161 759690875 1073652719 218276704 1051879339 651906924 1064032190 890633019 467341927 100530565 315861571 173914486 1067258112 620343023 243548194 563750573 130859849 735808288 648339115 585606262 144837789 149238491 648037166 350823406 68777948 3403280 325327162 817622411 265090905 349893844 269437712 519539585 63072268 866833729 727199179 363804215 243727538 143522267 410469112 13720128 266328836 812755263 91046168 285964001 57136250 749824376 297780417 1778379 250760292 479577339 980469042 698695783 936746943 776021281 593165158 54704566 117340618 627483630 477423698 583195285 294904004 744847377 435854876 131420034 438265273 724375524 599690404 689092501 586007399 958543517 201866590 17484319 602553994 414443367 76616088 165678927 679220221 751638506 644526608 471047135 248219566 324213158 236906742 124965055 160549482 1022582103 568535270 727115094 799887019 624971423 30861986 1040414510 968737953 149652492 359499935 1035947494 1062577767 625769948 95237200 360936117 789205911 530779554 840639277 96051447 1042277882 847039610 1053042583 160988734 645882424 58166199 326828104 612857624 955901038 978496663 487242434 456674877 238852829 706014936 98835085 410769008 951753417 807754197 47285753 506607950 225817571 950947852 899741783 210735252 343552937 701691774 15266752 669068860 306407293 570178587 860479417 279655965 326210427 1012178812 303782340 730521444 662563258 408413166 1024181210 1021474692 361874895 563111342 574956421 1059745636 616055265 690768604 74211567 263346660 274672217 808513878 844688523 313695202 875243091 40080734 615495185 608768167 890571695 80599566 637101365 500216388 148478811 68715184 392095509 21865481 305401224 307597494 906891923 677920448 147163987 77307744 291002595 28073982 838580505 221119276 1037734381 363312392 903112224 379892961 112753223 545036853 671076043 145179379 887175973 158250614 611633674 562545596 874707775 610816313 1004533951 742914296 521086811 912822982 237076571 1017482430 895089043 173926551 758265394 871220545 743785541 705925774 225823206 471758087 706732324 748967055 298549385 483050041 910605155 529060000 811887996 850918053 537106031 680413796 998899875 790226876 755105274 585476337 205205755 833590476 274401615 1055042630 341692018 49129457 1053493741 636940173 616644733 1005443132 420313025 147944480 808733753 672340696 777619298 383422575 604319037 922222782 68795384 803762773 157535061 807033153 241407259 280144525 442375367 957116667 916790503 218057906 532911323 762821852 251028299 990311747 620783327 668746553 75293687 646195085 905225810 970549909 621990632 390929761 661190630 101291274 636957893 185527279 938546903 698247168 549828213 691906074 311654867 499969152 50329051 466371959 536991709 168396275 457801505 680616346 730419551 761809402 871172579 1053001966 707024052 506137013 15413506 1069356132 1040894988 342954025 380781999 129978271 924486681 305947792 957060472 457833439 897303272 754486278 433417449 471815245 678066417 494792987 399912461 317165736 861815134 101113990 904210800 967010789 746089958 622826426 988062529 378896371 369726971 366792009 438574470 267194625 99879949 739778494 830376030 76456768 769854125 361591177 375443399 890844317 411631307 653214933 740756034 98493753 723170899 1052799865 1032218893 650813100 127978448 793016875 832355376 903552909 788164985 240371974 533090894 76936803 325901078 415078528 73180396 76054144 161544885 825951662 270720933 724844820 597558206 158747218 545161134 1041879806 302320307 980722463 1012137858 726334421 1063083251 509792346 126131308 134518901 1017626977 1048599733 60719630 242624043 802436512 18247460 632629152 906467265 745798089 956171568 1029767148 380398418 804807309 495125867 645347988 45546555 833266306 261968123 942643842 354672122 1070350303 972425906 494991633 563053936 236076677 237315837 966010492 315864633 778427567 724595250 131925565 476287921 63239632 317973565 1005209030 776626944 843875638 70565420 948309341 420129922 454276265 24913480 488727309 371443011 1042987414 761152610 682874481 272086811 752617887 122302888 59968968 741010122 56294109 860208869 460893508 528724932 43897200 76525467 1019553955 682651938 360548573 132055527 77674967 392462141 740965969 646904584 360462908 131505579 309562976 908154945 325619241 643995582 713409486 713114072 408988767 604651908 295864355 659776847 411248723 539429223 792019487 182037040 716907914 37517245 538820019 918849119 584914735 1058823356 63358374 887525528 417074801 993473094 838692927 274327398 975979540 164503026 463794320 234814539 324437076 818477733 899445612 707371202 1063476770 642073123 416407033 629567883 638614138 927170548 302875541 851160075 869547717 283077582 480998595 969417526 582061752 769030830 299800399 994067541 541662719 670299447 270597981 477471563 842162348 448383026 468176028 743669876 528236201 705093751 966317971 85724101 215996507 361994493 1019756698 831194287 607200844 627113434 241395332 61804906 686260404 121181959 575316945 639055246 893387125 474014497 69624193 768907745 405171958 997786792 788915794 971406641 1066081893 263034935 196195149 1020082841 706247599 993885717 184071818 243184220 538771510 1010658596 304568056 510870710 603438231 331808108 813103900 862762342 892316127 340218330 34013810 933754653 818717383 446834849 623920615 212198482 159084767 963628149 685210606 334934356 610267475 874825194 192388885 164755840 12451614 1023174587 77788414 477081974 100768803 712612771 873384238 636372909 360286029 496313780 868099035 395864917 104756488 531466088 798842700 23744806 1028518052 446419773 333947046 522448655 418779874 503262261 1012759840 489465252 976787944 190917711 984105841 101475596 190996874 974148490 390537851 260292222 266176844 122516472 603350983 568358444 151615699 452932139 509265874 21716249 649201349 105581358 628904085 680519136 99278710 142312108 223745197 888056599 948005280 617462744 702799276 866712457 576257206 36654689 825067428 438304039 1044343337 324150170 728329321 70455016 529293696 368739416 370630020 198687776 1073222548 73354708 408514837 197250957 216990637 31912280 355519399 1021166218 484258615 433849233 258173695 503518680 68327529 860476060 132694661 220946901 381923952 260413685 830801409 881216199 995184927 321775607 734539010 401750945 604150219 144520234 1062242510 494478849 468395169 862046280 152358978 571017125 120778124 1013470800 271600850 59752330 1063617434 130367323 794261686 170247850 318306999 82921092 337145877 880056753 638549309 182183906 330073710 681809576 811586745 368310213 12334391 188343236 678845733 401993692 529244029 168131592 266842275 63520608 889651012 1031264796 594660602 359857335 861355682 286251782 366542359 505668991 521644033 985528896 60428731 668893198 366865945 695081368 497030644 223402355 491536985 746044522 749446218 980116731 618369915 868558999 13784785 43022781 909273362 744886002 56083566 163451503 849197450 881368043 893616270 352257429 1032068012 380127942 145741708 430772184 370048848 671217192 601802629 984123747 560110321 609667885 519804426 981978552 952383742 577648689 190513625 934925822 14093650 1024893276 144007026 647914194 522974687 531530190 649385521 1046951542 856902162 440861553 799906893 32488894 174561117 421875753 483428869 165204095 741594448 19702953 918653567 1009365166 65426973 238453523 940366123 779719310 573910112 251814014 583999345 893657242 894216632 581117793 268241724 361030124 97230319 708088422 213619218 472955660 683078857 1063920230 962627014 32317477 34710056 1023972921 292246538 17703385 773290118 883538241 805098054 546713144 536551157 941969245 595304107 335576664 801460558 702790127 732386443 782221951 301969012 293201505 51008264 1069961266 48994850 918456502 244210843 129386421 329854743 685551086 111898941 618275365 692844830 932100952 768825168 37085880 233605572 810245914 409999885 270905651 209635622 84212203 169247253 910747763 211510562 221214060 553640613 193396618 608113331 876080615 517581751 331090566 965349533 577298715 852139043 918085959 171716024 165874854 376128556 399169598 649535042 171500131 208158657 87572014 678276823 152143894 501849742 701348160 1032492016 244461373 721824009 33637170 857351539 797272493 350788430 870868942 941294687 323698468 519415985 788697518 399381912 891574402 583225251 4553501 84149940 666164548 1068963999 296163877 736434691 771542192 220462234 1043488231 445206361 941019952 712737625 642990753 503972005 551609384 986780382 558070503 667149900 322464722 284208277 16793282 479988084 1046678540 463864477 1012408930 432338781 479735564 22672659 634889045 312586921 185140897 868015331 845461234 1054936623 676965433 913888785 164696078 306300938 310867601 324882495 85923406 132215943 991860235 457103507 461598726 1028816154 880847239 1061282359 1058179260 340668404 193018154 811885206 409445830 507710603 330514512 474834267 769418230 745913840 913167231 1063172769 663964006 235457474 43614192 226718193 395301967 47019599 945166054 748797007 849646579 1567506 371784798 869775299 806389236 69682936 683106687 676760717 104094107 698091565 2870404 108209272 729381444 1068821585 525285735 132560522 1022986589 304447005 823752226 871735611 376975130 1043177900 481474716 866400198 789578110 809183552 453267594 134838427 664199872 886717887 130409349 376896194 61852236 348594245 1051451122 134277426 378490946 955078030 291160494 892616514 873523129 755015973 68048388 936120981 864758653 746333567 185768517 64095940 710057764 948454151 236829574 527422249 508789098 938003196 1045703314 322957083 722419587 1028293981 710243651 389748773 529972514 324933698 78822315 737084458 717449129 884171413 623308660 629314426 855801447 1062289839 873964400 231478386 693519620 407564718 180382724 507923213 198773321 186617064 1002671479 528802622 377713388 11179970 336353493 38145139 341046849 580494709 391860043 734776950 290248466 207575233 278473495 521327822 869366369 52262295 939774026 680471239 16138157 535735985 780992207 29872523 365449918 232019360 377475747 54154173 742931433 381879836 831250317 193877595 66672640 266285798 612831097 357564453 413657645 697465363 131861507 542754922 579405113 102939728 37497505 817224101 570714919 952231927 499289654 56544686 463661648 757186731 672154951 1044139681 301387420 195949794 809619613 41766303 1033544469 286393495 99601755 920014299 874816899 539606237 734992519 632098923 489810777 826352188 803500182 798492242 254913741 68705477 249697853 767758802 735145868 485545541 30560737 963654775 641379547 733754623 617529924 260726719 481665153 771384617 626967095 220751 926228061 790682142 268543337 329020494 1071143607 26142621 625745249 639179014 216440088 855175742 346060865 642891084 732677988 699394267 935981513 524460370 99043541 781581395 1039355370 486933265 94328618 601492650 129699242 33921998 1052245670 478256508 172340347 755660249 995982098 579609253 531724559 969180168 629294700 274938661 433471730 126717783 464999553 91911404 338958287 968785883 962639019 90928548 1014298021 600889895 145477790 93678329 610196192 653258381 153217471 100691946 1017683324 266384670 815254502 121618482 171762435 156636938 469557380 880346364 1013792911 1048496190 349406648 406539450 725972598 738558889 385287122 416795283 1052312297 993437695 750595870 763806653 1018440278 466903628 230427509 381497387 740800880 40040242 379021853 524899225 961455105 763354520 770424796 814232071 403145832 37090699 252571981 258497083 1051484760 439621511 376049757 607366418 879434781 161870038 535068590 927319682 867778927 397070041 732932917 535939189 861244074 988130857 352795594 603113776 809763345 1011127219 649365228 941073175 527430494 575808025 280936865 319312787 107122815 14458998 859964374 248765484 833483344 998432344 814142382 88296056 51927653 503643196 875309592 986573144 636141621 905092225 556005962 787337550 782417470 830622784 85368025 101921044 75311151 831505923 772205015 693788686 874301414 846767820 781689161 384397856 343534704 629393414 406011965 432682910 1053307446 896373438 111414230 888173182 638924990 798526358 108486082 881230340 130083108 493077782 625853454 425432317 655881905 718985954 638526639 794720885 715041725 756564102 619995898 488200622 951347288 200753288 54471646 371123721 1010223332 1062736265 873316262 992728060 596397989 801126520 880838671 949120005 804837901 331244785 510493615 78074797 989108700 849806876 959613912 382672731 843720314 728731189 451610045 164080386 944596233 785700331 834405882 453784950 973161278 335779590 413319025 1001687520 250127827 354916302 746898919 551689066 81003368 131615725 713842513 739734676 886103560 81041178 611616437 504098112 521958884 35652778 362790792 1063048953 993608540 525569337 847239879 560028843 57825875 1071675480 634605631 334863112 693447275 878078510 105502300 189779539 47057920 199126393 110814462 122077061 104588606 229310017 242982776 668473967 856397688 185692432 912303629 1019859120 596751748 572737520 209274430 625857837 470672389 829086568 932410513 787228177 935406860 995300953 291754763 714914744 181711895 160285724 167778458 576227313 553686127 834958020 30910326 280814176 28192687 833717467 277889686 371595068 100116361 250726117 764907548 585895880 41231786 862690879 206858972 216207516 292128359 1028664339 974193708 596961299 198579676 946802225 1004492830 446575223 932292661 328011564 39275630 920325772 488292153 891868929 244577827 805595103 71958977 552197284 572733217 866462943 415466306 879296374 284136813 794772544 224558186 224154430 424300440 63786965 951173033 814382785 78412709 855219192 128484583 451071546 779286286 848362848 240642030 107817638 429740585 1008735628 187102589 125994048 386577129 318214369 580074012 203315931 997671964 352876895 956311767 1015520745 716767668 765656512 248925474 1026122192 255020092 14271986 727522874 320638005 856556959 975683614 173293869 478046026 625715873 584847916 762207658 479031998 378585043 363906982 560360515 535611558 955180884 624453943 972092131 525975036 77818188 1000961405 23842955 969997648 855431235 728745285 277194188 136768562 934780251 645668390 139121079 721888366 682259379 561331948 1016004121 847426492 174390633 478716163 438911685 540264095 533227364 948098038 625590322 1006858376 1016485346 163848925 188796862 945382451 863376056 1036900330 920832756 593788736 609604498 725487842 978402219 992992564 425281557 294207709 728240478 852087862 318430300 192108790 968140943 289604773 410506087 89361016 280387765 952491372 756287169 652448340 589700666 280233033 722751084 340870970 209547929 52724986 139853051 734892227 32952606 37917097 676268829 436509335 938931064 1013477483 466115481 323399754 655254439 991095706 475387662 864179232 151851672 688487774 279980259 733686840 733558726 917803881 163635884 949268995 642485406 20467663 124910935 846247104 770849321 309223967 598341002 325790084 254225092 112143950 32946759 246169010 58639637 239244085 146470339 443333826 113685991 958726144 388575499 218438021 84446915 953026426 927462149 65057814 835854613 565347467 919035479 861874972 536583410 254027738 86541847 132865397 476332931 685338172 594035658 656841483 485801357 691420922 877500360 346769785 888796848 603698639 373227091 309520837 754992875 112879697 271575230 464948225 860323370 666183776 490907680 1044516581 411622339 62453414 332539598 373533495 214086623 595941828 519274037 775194072 111412615 166742908 848570322 671413413 700821623 584460071 507841367 24870912 461498412 339009659 117346171 603315391 66576676 860826810 942125819 221048140 569867959 839440251 428186719 737665880 961279969 164015640 913529334 171124451 128658688 405731550 286094953 624930465 885342665 448287476 771417984 41092223 754558410 260147155 927577956 213193263 32705657 901630070 94151747 117908768 149435065 522205664 533579394 979724437 881699669 541785791 197514893 142599763 101814846 628684866 155943450 463560397 1044323021 532438768 181561725 144504793 884362109 810726837 228811722 313953359 1033865911 271939729 1029671535 897983333 638534438 38983290 354230811 948403069 843084907 8822361 221989939 717390129 118123090 695947152 989595041 220982872 331452160 1068290578 160087649 245178435 629800349 379921430 826116096 556202167 177262198 785994255 389310172 619747597 787198267 692268057 183799454 786699421 513398990 252273729 553381402 133251151 648102953 688877047 1038515611 755514975 273077632 911165893 1053323759 1049847961 873050024 1054951579 458294646 18541768 662897389 111743312 275571804 274909147 753115717 261483554 378267960 93675821 806368723 350163243 177374756 483187485 1046724212 571242755 196373129 705615588 18653818 740230012 940424136 394918065 889904668 208220538 314517556 173076436 627576062 382434388 93437076 576588181 318310566 788919549 334693400 316626909 460619735 83826032 238527464 338198796 1013383005 510265854 219748831 463972364 522118346 237072502 457542522 422513573 1060434124 1054070159 660979552 954987992 323102162 352505310 508616526 225203855 378841544 708410597 1010285170 318840227 841450565 303733788 377267335 888203840 284729354 420628538 805430850 295728232 264399147 149807531 521358315 238634402 152062911 801235006 127823648 614847362 906635839 105853210 1048675072 729406123 207275463 1008355260 991183916 291868150 765542986 539595428 87263052 845242416 729875934 246446321 301626306 236735632 1044780179 1051870770 287971865 222641213 908147805 363260724 967310648 869768383 375493295 91401651 430926418 38667326 303267825 984569938 212205827 872047588 879149373 347420608 997657117 373898164 962286535 1046129403 199650620 96197619 36374295 917168958 440446224 952858596 325882559 414426310 462594977 126557880 415480995 1054387156 454916481 636497041 235679364 655795170 894259218 722653321 221523270 349299387 3272119 771687446 311914583 971540485 99011290 219651234 1024590069 885834264 688416083 487361698 621472618 987352348 320141875 502501524 276812206 757403796 594106604 539533363 139043674 678401300 185438862 720136272 786242730 690689131 672674960 146939478 450785584 218528188 386205845 793637333 174074670 1000652457 723231154 730992155 218224109 936142099 923631797 879298104 480278118 466917348 307691452 1045147600 353067062 697031343 990983045 168580646 515526572 486669768 678917211 172451297 520720558 588404643 895519965 204890647 263358778 774364586 462028846 940119955 157358965 434046374 229670538 422840151 657799481 531274066 793171474 240331675 968989483 628838910 235740451 221375643 425153408 461975079 796920281 314737796 658732388 209809411 124356386 428604178 366497161 721189401 500962417 699276536 805917886 654824877 832793993 657973164 451990608 668611790 476521840 389503752 812803183 333984340 140581038 642805185 825144135 163296564 552521037 504016192 125348949 1067456545 424363383 693294879 784734503 469505078 191166248 43651677 1007813911 85506863 466329940 57040827 80345333 469150589 558253061 338010903 376894085 473414849 508468567 849578061 650694838 540301722 830349078 106228278 166447212 1014645787 405463264 357996114 153089492 221672286 447434466 553307775 968512420 477443718 79805006 203230491 458830967 188625479 713911242 384017736 540432185 831002995 833185365 1052625756 39641904 293935208 65143349 839428177 808377966 393855420 491275875 495243520 720389763 182878271 731248955 603544403 110123011 944623988 542541000 310750706 772950690 456327725 878173554 365617531 832071405 443683000 416446816 5771175 426683403 852002043 458163105 461767653 113320235 908586909 312486221 46254143 294285657 612648108 905647304 841445677 689312494 340982320 983013655 1473761 741420774 384726872 966310846 42591645 730133514 963337944 1028299457 248800873 309790607 723823660 859174126 623528148 159822330 5000419 798068896 900908448 1060820513 351325329 894520541 952587175 74502848 831210423 910321973 361604214 510147572 1035408113 452542611 554000099 255478470 297591738 554366438 85746169 777579452 235326067 975190414 19880150 22321097 378008197 878226679 505547222 198444772 634607544 758194293 560806201 901263070 783341023 777454156 987802460 665397934 618713397 14923204 467709605 352233326 720934260 217465841 660005255 753125502 440962413 194602571 750065651 708225454 837778314 915486371 608737637 1066676877 163367490 48304872 831432534 3466894 1070416923 202536893 268302302 855781890 893794364 976042273 1060013807 158395947 189977356 229398684 243357378 183810787 718103581 561538382 394557610 822887193 1064026520 536861814 164991873 782439411 1046466293 341753750 98778365 850166369 236036992 536098787 756901021 190534991 883925165 298276463 67722795 939003936 105221502 927265103 973509470 703404426 188025722 878894661 502008236 693256678 325374149 568499091 102148226 144412986 1065492114 636203099 208633013 710687584 616013410 907170517 284608858 625508698 51713848 492157725 662211762 166951958 382298193 31022542 665719351 239124838 968551944 946521174 948014492 875322796 285179947 516135031 175289538 551881225 810002162 854954977 849487632 412512061 293886779 337901785 999268236 105843896 644350920 652241551 304501701 766992020 541463392 227896659 401286509 108726311 503741194 6852100 159417202 592138546 132061255 709546642 183155369 1000597584 956718725 1001430619 380261182 390136451 375813258 569399258 990153255 955230031 884024919 288478958 451166958 383770255 584637440 872949316 634024181 1023772399 444786980 210706700 1055136018 114662212 48795564 705144186 663147856 446987266 576424007 456714977 328631239 705527061 235188838 194612497 64992655 569251727 824998784 499025092 756578777 771202461 1070569026 1059930709 689199301 938591803 224885008 418266402 429606503 164440578 708831041 599464597 848507452 252937769 217180939 793828218 235128230 201595281 398579392 333378498 424970354 47194340 421797031 970556904 102670491 359201643 400794419 186138546 353740135 27264586 59234852 62605343 276211122 682698679 567053982 650531083 229527020 241526534 225510130 138428607 848015512 173810203 668163278 482425693 263749415 575083999 208192492 886241946 28409056 154164949 460197592 627731706 786459453 551548884 693081048 57587098 194933092 328438660 925669858 1040888898 690475504 1042516866 455679178 63523 189879798 506341291 425951551 43648074 526169073 568701793 128487925 429878089 275747194 433561822 136719806 846434416 1005435396 146337827 527598473 63231431 977365326 585733154 926926846 855550761 808646565 738241638 15639508 372904060 93482797 413706040 263257622 963674255 849008124 324637083 978436219 562189 524890026 186679027 180675538 436524612 809932566 371640498 232523244 27846032 43047142 972552360 492605836 25569737 921029990 894801636 234993673 208330740 178592960 6489415 859413853 561252449 5767610 379671975 562237384 132371711 194143251 407837872 263407904 356806562 577751018 926886101 809143042 831917752 480091000 1057384389 1049260206 894603388 196506687 385199693 376336800 745421869 752479832 715194221 369161122 125329817 536825775 767004656 560702475 602777933 437444838 968060832 358425860 408699452 731771111 276348740 114109138 998342788 106225855 1012693946 351014685 984578231 595969133 71022416 725734349 86019923 572945823 1025390894 686347594 565646178 223691603 999156120 112857462 208828362 285870852 917254991 64952948 513609116 366429801 391701939 655382475 900171210 202789172 854111943 76418853 1055547606 576370258 700289412 245530027 7078058 882672481 848895738 848140764 395927203 12220466 236273011 871371420 1041170312 871259499 165971362 591630881 959700831 127640116 873151078 687401978 197513009 971157395 604321238 260795790 418095270 1064194386 961868060 1059981974 659196321 685264434 960383413 811071104 1059965781 2974051 439649452 212050429 1025208211 515380687 188025410 947349767 250819891 126292309 157022615 191108958 622417775 756151816 965184798 580019613 567520647 803721607 465868920 828480534 400360414 372120702 939510161 428488329 396121179 558248249 320102008 1004261228 150762801 190632185 491354886 360961612 276659327 322385498 669062925 206811614 177349637 614043407 980256810 322428832 30098095 873123321 621477662 821245906 637351149 642905218 280117326 637971259 589557891 116820638 978180832 637533390 403200745 755650619 774180592 1057106763 348827487 17207649 805299447 416456754 537160651 245884004 841625154 100754852 821822624 683886434 622965769 392551825 561395143 652531308 587876459 997365076 408257893 27049088 391604294 787804891 263723094 633788307 839495076 374356839 1061696466 934609372 810155041 869260158 897160896 426447030 923770493 473929409 825796530 1015973025 526191409 401670502 599749816 507853402 62794832 172879990 287272196 799150634 956302637 882534739 792056433 801386618 725151795 756409509 778258298 828614578 146750199 963399668 40067498 1067375778 871386752 304296089 88686272 412287232 997973742 718057399 489727504 527262126 444661887 616238196 580261605 373552225 456360075 487626970 961170893 346617570 644096615 142728885 932216023 808329376 488299352 250115117 635684229 845365282 33674940 821709961 617175824 378299929 606627232 99858533 43904409 497345306 49411478 640003301 160945385 494813082 89071791 46355408 234411217 563323770 1030342885 864621284 410218608 527671227 80450219 125942339 1056436844 691398379 396800024 324946964 546072226 508713425 514830051 284691283 941734442 393710162 618531209 1042365969 98164818 351676560 7018568 305762390 906233157 508356101 83990165 637534374 946155604 479297998 148761697 964939609 537572175 736320977 185144681 997188519 924889598 213428695 942285208 825780378 529912605 226130922 22898859 682335159 600647497 96244385 518663918 703255653 135629957 921395572 971310874 979982787 182039098 130210452 804943239 176501295 593202698 267381536 449733833 938362672 12580504 603452363 758319449 157724627 335472013 131756199 607524427 257129663 913869607 883442794 600668876 1041100259 103421838 672509243 163336753 824737778 539976145 962900328 387155969 523536960 265992211 165615563 1069441584 24525866 880254312 98616066 825246944 1043214066 241285351 800584608 75993950 605739375 876373385 64451567 1008264129 60110898 800977632 996130506 158714363 979274302 132458323 20430390 57753854 780519566 68604771 1073374415 288077666 341280745 475548967 563529483 333190879 393686609 999666931 796754146 135591620 15727622 98092189 807830058 164694845 92173102 1064317195 774669789 263972293 521208064 135698218 285722066 967625516 908594391 127723225 519324175 119051247 546113547 443727340 273610908 418581985 337331985 570948665 710891198 145398776 792650107 749428375 168843871 991223397 230169092 560922795 972986437 167554283 506055339 691564314 1041828880 912414501 761639601 605214982 651681179 456622266 768786986 543489603 385713078 1047671964 137911916 311023377 573122028 1067187227 914062461 219072768 808776223 174111191 547977387 764470546 477108773 902521261 485491236 790835116 316768509 820628006 443294820 960744841 473017736 875493682 921454514 604230170 230864675 941161807 13839700 983854326 307395063 860902812 20748981 1007215540 742781451 221670354 545911684 327178866 787942346 522863727 909504847 7074993 588051047 246452903 71754087 1009561636 820700030 742106856 953703226 984363372 665284 256299637 956095168 311054007 88991729 881407562 1026528380 924572347 397285138 1003018108 288139922 600628191 865626546 867801421 463807678 1006224068 278018994 251190007 111665784 986477279 791058133 99013313 1048294449 18527025 163530190 498916713 575699907 491177006 974012321 618476319 956456274 165461426 403935005 510128629 584839732 650173916 257899633 677158755 146422431 208407669 1031260196 294636328 704269391 193916507 791612081 214671411 557905003 748929206 197222928 970562376 907939485 627198995 338895043 970275725 35410947 726623236 1032222546 1071842065 969224674 394964086 855472205 9572666 237079549 906305815 89414954 268497609 609421360 497384663 375319691 868892474 109367372 507277869 370382193 571808709 112930615 445467286 749270059 486321995 760427330 1070439465 438015398 543675525 127092958 434528179 432425598 729525857 97525502 745972317 785998467 816006993 778663195 207901166 1010325742 50756247 447006626 1028081276 738569808 379452872 285378445 237410807 680616437 173484933 461336668 337343662 10023006 967526262 171534908 669089524 95955454 5858606 953452426 117274002 194821913 110714698 161964047 422932884 166573372 423573244 1045574507 558327442 158856348 242843461 723578209 558996910 927441073 266066474 1012319237 87505263 180363110 507869024 1025705356 778871639 801442044 401863883 500656181 138150973 311736128 301197115 435573087 678974880 846344443 508253355 279374901 272709090 345778623 761428585 742492358 582471992 690185956 589534218 395735506 1054554297 928321034 660356600 540166009 322599501 43421271 849908542 201405400 72341961 928101579 1052778537 52375959 1067048526 223542782 136480367 403563893 656332208 432757772 288498587 985787329 249735192 743474246 964218477 402924639 132570657 91384908 681560749 924864625 923177089 1060015288 517050578 462209323 563340216 1010408716 364136810 883420166 113995519 401116087 951568922 563192454 849723129 674290297 196249307 445101182 757622456 679929791 819912185 948001256 29093808 361790531 26359111 55840260 123382726 397385750 181542639 114559903 363988239 600873521 335359671 1072151933 3702499 422109857 599884327 952919199 58136750 928514652 383931028 762219471 694236693 307929531 952638940 546374798 493141068 19430707 295126837 166586277 212551197 776166502 987207499 202246747 915681515 662707194 204633180 175133120 661255787 612282285 241032767 854356737 921263086 120092302 895427859 593788329 979114592 302136965 341605129 623178885 534948314 515628637 139404956 460427246 696097876 769372591 710502649 231512503 388722945 123418956 299056788 411021944 656506678 534497235 169464882 965248624 658166620 261634934 579836094 1049684417 202174280 914913060 552367648 934872089 743069102 789239009 204403498 225519064 164871156 172382392 860800774 860230077 633184746 399908269 335223769 829223562 256140054 751638821 420102413 853989078 39254842 364080164 353872725 307270692 972945096 46272366 509850107 1054060214 1039919302 834414795 334284425 627849532 406028732 569159729 40022517 216132381 125739733 386400143 1017479480 343390373 130838261 73150417 565673873 740676031 840469446 958837674 769648504 28558999 325673750 1040548779 636442085 63568960 1023139135 77382968 523858013 884917573 476818677 812965372 33042132 1001659077 118480880 722490992 331325551 321266678 810887609 971164720 601566724 1003107009 661155457 1009247441 478179515 137206713 976157837 840183917 125348988 523707836 642955712 395890636 947563056 502669104 28180987 763321157 228339655 963216768 1012099116 729321993 831711202 250376534 818806001 389624768 731894740 288396076 747976859 55602832 244981209 801838073 1025084740 7977574 986875110 281692703 997535355 572880900 1054700979 330487488 189072574 188359827 560721004 999055639 787753188 255073651 510201898 409503132 553628418 726562192 550397004 468162241 240553957 166558167 676096329 710631600 692265079 385256313 265596472 75779977 747067651 407408694 680779007 960248999 30819517 280384615 608549416 846779335 740568348 395617481 695852699 946626765 432655151 629624983 739392422 713771953 855519281 891573032 934192541 1070194899 218740521 837595369 727067228 764866828 485306662 996323427 947426636 525852736 470844926 855352374 873642472 755388085 396853350 614063988 941706321 940162598 590188223 24591350 624917423 366104692 592663403 22947786 198189402 957797383 817456910 860695012 412784492 494959997 536167362 1063394566 873680534 49679788 355893838 81837548 654602644 450395789 1003030488 567245238 707436748 205112207 609424825 357238711 647557268 418243941 16766181 130941908 463282373 160904725 445634689 98295128 660809800 494541904 512195572 136437258 748366209 987947758 149368184 688130982 542247064 15350521 70857435 526749867 1003001147 545059443 560231303 344945619 892569129 828659995 407356483 181478577 874921578 875566462 774789065 384720058 269540742 1064696879 557711784 414099168 874058054 239969873 140733991 598954636 711304802 620840902 197847948 992023075 261359524 886234890 749490646 1051629077 515415859 841014576 369664182 952756881 502440382 894261867 88425277 99677542 301479353 757509055 281662699 141257318 716509657 689093470 609487425 1022834828 543190494 240771668 806287314 812052233 323842660 63774536 244569832 620389786 727683516 911567725 900578500 1045444061 242352189 905579325 238224974 537371680 627510703 587178606 442607375 463187950 291255177 990691050 699830519 451992534 764093081 588869373 70658446 826827535 64793515 209986959 663297638 139198181 798211272 212230478 294589927 262374062 692815699 904408837 643058743 78446592 461057257 88983921 70955355 191579224 852239893 363204408 415620486 867456126 509789576 297654739 611896447 1015038108 56749133 706226049 796515745 12144393 424253634 1050995492 1033020248 830061918 582858052 913133338 91037231 838519126 156340232 56471558 2895950 774220047 338324074 863821130 650238570 477558861 152497040 643369110 248109034 806480488 207257158 502405222 177612394 417316125 884198710 488923835 202823283 975748122 816966984 386545062 938379478 1012084272 468427635 623459422 952273918 757719368 944958175 856957932 92907413 595886857 183078637 108097276 880899990 159165799 108386172 780349495 74548424 446358252 190901444 848006873 932129464 584700525 33548857 176632236 567726600 700307742 959552771 64621607 448361766 395532929 79836285 750921802 586512710 92002043 969190667 13196388 127523549 423357777 198715461 723390940 683998500 165904118 154011163 598345435 121555687 114861115 916694199 649671422 938032715 215703115 1034545045 766247869 396970495 306124409 374418901 681322686 539373943 1063552687 685473868 664994621 703588290 465283665 630614386 243415027 945583910 584733428 52442548 865263896 1012011904 602949716 426116237 235636527 651932100 388224560 865407604 406417560 620728049 934355162 818265334 346062170 261184248 665113910 1036867371 775404422 67719473 481852136 1058970971 1051180097 397648464 943107934 832560055 858329466 316108042 424419167 680434830 579151196 813355518 45100829 427790442 24259679 472660091 802591932 201458077 609421537 986755252 488592505 461205034 665393464 266755680 610118473 517702516 210239229 729551348 965849631 1029600530 625659 239853370 833223332 734274435 180602003 767593329 795055905 662855069 743448159 519243100 1008716150 412848773 23303642 236715901 1065883036 116105311 65713120 1020246774 758843119 347246057 391100550 794139672 296274695 191427295 531327919 812650669 256149002 959767 781984939 185915927 1010928217 649399036 893104497 310152850 507080909 851670586 637600299 638878808 45659892 622536869 146112710 616181133 524607142 96075100 343142662 46273417 583050704 207043952 193074355 883083326 387820982 275628985 732790448 220931123 1013676583 9195990 923451331 570646426 927930058 1003840314 973922342 399529979 92163716 741648190 138919422 775854427 893779674 772425496 1041128738 979678558 976500552 955553205 128051492 959158660 410124967 1017022769 369040878 639276467 228705156 1008053309 784978291 906917948 932414531 463173541 127274555 289417385 790303180 63814534 689797117 539195747 711789270 481231933 116760684 563596247 75447398 953457345 817470156 963000625 775089442 977335501 614465430 339448493 58192696 480389606 656428520 903267212 781804591 535645283 99809344 4049523 756595295 922270463 441067180 89045109 306076512 4233268 968530628 310260730 803605099 423073586 386502190 238554499 29568145 586621623 518828107 829733555 749318750 482849011 791289540 302680100 597175856 595038731 121880928 522316744 557789686 630335717 536094069 575447453 359938458 319048700 371112181 933004779 345429148 883335086 378683973 353865008 327669739 989690945 904692059 146980895 1054498888 908295029 513987278 632633368 755162647 10435533 1028993114 397956621 612187909 270472807 299950028 527354075 610734532 328299011 542743870 1019065483 466861501 892891102 320722160 429956934 567865344 26781937 170931762 165013467 569940244 325194834 1043388131 683936448 724630194 539097014 458477200 976770096 102057609 319185032 48899546 886623442 229987103 869540921 606409350 387329256 626344261 662357979 689827292 573799143 1020131617 781583028 318183639 349102122 962437018 91384325 989781231 1046366452 660022044 155866785 844488576 686268530 269130089 50632798 922551290 919094292 153641573 554306015 483886838 603132374 762304586 62415200 9277665 1005212517 733994829 227157693 1054702296 583439240 691742691 500498624 347551590 596337828 264239937 1049167628 20590355 973747614 931876023 588500723 294410873 787526719 993231073 477443051 415064155 121225705 227896813 593574481 127996142 387221765 1050762192 381713987 83051754 92337623 350933806 501547558 373675846 662559957 656580858 878758729 211084862 894096374 878098033 987527782 136188443 514813627 921962349 347973188 949326091 90861086 470229008 482749016 163081278 491460362 301596848 408308411 525623927 226454598 986832621 457776830 536710549 127752065 252050628 111476188 594307320 58364323 147509241 992923754 898231767 299828295 1008883973 983135348 919158854 324207966 652281144 186834691 124056716 327777775 1009775079 255428610 483969457 528277364 149732949 884150203 218077641 376045165 971658685 675845336 989289573 113822334 867131459 453401342 323438270 643601101 836377692 987790882 480788025 334285269 138437410 827451203 729035635 820124672 359399204 827149849 1049753226 645223321 1007179264 15332333 400125816 919559317 326087876 430679586 231007092 539046130 601575103 859058388 249107890 198151711 993419135 450075574 443389528 400017563 300312225 235526158 357148033 90151298 588459330 762697314 833846664 591035816 896387018 210933906 817507190 1069979708 174017379 593938893 523401058 826250886 843821712 373473341 364496967 783328792 586117994 1027781230 148485860 70418408 73001817 541632061 710799272 651556959 925745705 182344517 1030865251 27318680 577622862 345361330 178494636 640693780 866700910 303702124 81476561 450790462 792818264 346206555 289508085 70370345 891808768 256427504 404526509 585369556 557786983 421725158 830415493 197106677 311220018 379637253 389936366 657817746 434836588 563605636 644738956 291323993 441913207 858973016 120820975 808203295 926668822 893840094 566464081 684177980 932035163 853949433 141036983 77249207 569313721 794579005 163508761 801373917 795103635 726927881 980809039 579260812 1010866989 482826741 815176484 765583446 800972128 1072611037 248046931 347253942 694083015 911606860 555830505 221352571 20242509 457217341 785727522 672981758 597378000 501091404 480627591 905862992 725921452 531703722 846471816 553124659 1025546654 514030081 494439391 963640988 832168199 839678791 773299543 163423064 912124613 597751208 387039980 944819015 250690533 163796238 895247331 765371808 852926975 460112373 137055638 937058370 348538342 719218576 867525885 575584569 523804177 757303581 504349406 426132352 589388624 364170515 463317692 161139525 706190446 375872723 788579751 527792439 472822142 1001750155 1044309706 999701590 584413406 578804898 732335443 1032873136 437455746 842954147 604140170 555128675 76611875 860035046 391306928 340363058 949325052 470069641 550072215 398453417 837839208 943514429 734815396 618218507 879507407 294651811 557378141 604809603 450565342 37504581 463003680 582225982 607306589 655089749 548467896 771701122 153425245 748889140 658594205 320435543 200668963 230433758 26970674 1034081074 232777394 879813659 620618191 472017610 708260634 5519162 170141348 945372612 581210911 215895698 140540267 188044648 75512092 473754324 887738732 976888684 505376250 22242143 564069327 45605407 506307930 498093117 253424963 215625352 1034584031 333465309 250908470 718248988 715576629 1038308185 442965031 254866390 966739269 139405678 258286021 621434557 953983425 707455076 858379678 17997832 110478058 627738834 205532468 671582672 981276995 679248034 53112562 810186815 812810766 711271239 480001967 656713509 134538444 698835832 922282635 252119670 667957260 801903235 20341916 747397655 789950288 694598420 249467768 575014044 606011153 942373329 725361900 825590011 723964039 938098094 543054435 420016303 703523205 351511604 520867641 165348114 105708584 56696906 534408320 274582122 240297428 764525419 496206640 99776338 546192454 56865425 36090716 975094020 71879002 274216079 999391091 310594318 1021822089 958135590 86722416 1004467145 225107119 88904025 357622951 900618578 226483341 223415437 58559284 733840240 381683302 730563677 368431373 570866990 1021765663 796875725 834027842 953164192 93042190 386947772 846833231 175753558 965356283 579522391 467644037 146393723 893553710 481831745 514828390 680743049 682183164 946859922 331282263 388469490 1073055641 611841500 940631462 94159450 172728739 832887886 526916598 148344723 906677159 543806162 911303435 451468079 475317817 427394373 173099269 530027511 973675287 264650433 222342926 460302822 930905901 637235650 905299716 552099481 195181390 617891998 515652721 615998983 1063950699 215558227 518025813 42190135 839525974 361760706 172853737 47190880 957949183 56291704 1027049662 451524576 757103670 234319834 830971075 829466134 89611823 818030717 1006489493 882907938 344719322 36981648 667905381 710094080 261856391 607061844 929205514 395788534 413981859 952708901 477476195 723779344 389689602 466480356 137505268 247988625 348815750 977221818 397577549 955702652 777198649 441733481 644542067 148487537 508028515 628831642 477074603 947480111 694502709 263672466 621392572 643032736 618563239 411253617 387781707 713911663 587176139 56846530 892508819 318636 899247889 351736804 60592859 563486356 524183025 282585455 944785413 811925580 4016675 982591300 478093059 751687092 55836406 1071177116 675262378 76869944 486313635 123064637 112555324 225517217 446950948 1027182677 167665336 5237395 711573489 812170858 113542838 787359477 202148086 406958691 525118039 1023374864 207828248 1025051235 524071691 1051255240 510301874 62573125 899730642 1019768897 843237869 310024385 591084814 1045071417 106177837 302021211 1031492674 682408144 285737678 882100712 499206316 131261687 837150674 648354395 794765702 749343538 454673489 202229856 267728983 1030742098 821412250 239414854 58283973 605207932 877686336 110874948 91053252 597336899 791503428 207316919 457062646 160335440 937304508 45716193 1060538192 862827446 249461562 30184837 378022816 310086570 849648287 1007261081 182739539 544382171 925819963 122265726 1052231495 488674311 209895550 424906794 125451330 586410456 752433234 415192051 73172270 58009725 959793769 687477451 917759980 171721922 770670862 402461083 734084777 234024212 1015596949 156867629 1037002368 306103529 684777393 665782735 900192908 872870407 832718107 275432596 31534820 129955182 762838983 421597910 450372007 583264062 755858746 852565444 755415892 613959502 965225251 982875964 156786925 425203627 956524483 590075001 763731300 21904673 801818116 55644386 915772737 892315815 868206027 124765816 347828864 948360908 900812533 109521852 768749083 565615260 910343055 166992239 704236082 1048814991 224667414 501491009 580025219 290036358 371932951 860218472 242616739 823328228 772925057 495938734 408606951 777335385 212933108 552834368 566794672 705365494 805346179 99202983 196180504 821931531 53775512 225722072 950028199 653999742 814884843 868337954 298606608 430549651 675268388 11053107 611469216 403969293 988400057 929809977 958693910 610657798 1037594416 508322768 392639304 913114096 125919978 296771478 769732472 254662060 910202818 1034881164 220175865 464134965 1036315977 148641250 982475678 200933369 423436785 90882103 884408578 646901512 83685757 7897706 962326837 950192230 97219125 897327507 1007871106 1073515520 819393269 75980433 241048745 179945924 412547684 1020478378 1021261157 808212992 650834546 700350112 457940137 22036348 1021705399 454944883 896122255 792465193 423971861 950386853 846841022 96356969 218160051 1053281292 491153136 760084645 940655182 104278758 281360624 314527966 298907544 562888978 206198167 822207588 656571853 409056464 1057767710 944061880 984223174 1046998689 780469204 295842704 685738142 908482467 967943816 546026317 433679724 498920697 263971629 719530376 1020396132 1017580204 940875265 297129699 596626465 994033991 807282148 790270237 544243538 999026887 300241156 183029444 339281744 672026738 474052438 547182161 682385521 479987049 114197005 888152014 143439329 297133317 522341253 1017925997 786354012 676639566 256182448 237750163 174746264 403023656 976084183 570803051 313677790 941974114 824786503 928707768 450371760 1042393544 503855735 1073648801 665287098 97721698 253914657 1022527421 808365967 822498497 836565500 724453784 1009398128 517288205 508021131 525794447 802622855 184494197 1024530896 942978371 37484804 902910051 794542222 743250140 150694253 587633917 849621772 859196807 197104393 448806586 1024692207 586131927 997910046 226018389 493371409 285450053 1024734156 1057080344 88562924 45567939 433285360 28593006 131645481 295924229 264435649 454859313 275483610 893470749 288028771 24769267 967432766 1026493465 986226035 278006825 617291199 509948231 640771151 759094298 528048815 234966527 506289509 224730401 376378424 161360854 929342282 277602263 459305779 643516136 160799159 440050096 226163672 99244532 779254173 531492697 470075512 215890587 929571166 574718571 699756257 180088722 621554656 166162590 301084378 902897893 406798274 991264361 713384160 837213926 785835939 722518796 576136645 888105691 363350165 147708890 914796503 1069579797 150275461 457612390 508827866 863816832 1070105564 107005487 270565540 303114737 171713153 26894849 1020176912 124659983 1002637203 698225905 612540231 821780655 605880949 859597032 1050491675 970637195 183615000 921070158 1901477 912830059 876755288 259013479 246071151 67469405 248458441 459039586 1021387830 189301380 473916191 676880591 653360272 866573101 653408569 476466262 503645623 405572419 474443063 138801511 571421592 457730089 700696828 257628013 875365803 784584913 221713955 877850966 3486680 1020998044 74688469 683592183 219684443 391131537 993605861 440271558 1055206665 619518777 240676620 245102381 952078029 201160432 992853706 264101275 107641768 32338110 879608588 340513369 7786242 181056870 416101840 283224995 786010895 798399057 142803095 493207465 304327146 941717828 621749076 403742616 777195044 278589821 892083259 239356556 365269695 759077499 932212760 722341930 758720947 998858069 816287412 407193177 80211757 674380094 441749607 395949978 150640085 727549271 916767061 258256512 69680243 910684569 3123250 1068937003 351724980 804675675 395758422 419978041 916643619 400612664 719078140 145838153 34243454 955662164 615269517 610554577 66332774 277520720 928989649 440794088 15605991 817667774 204998206 773343567 92775683 693508497 557981909 462342308 1020690847 344422155 831067288 905053650 972476731 223271405 274224471 457861037 25631620 269248030 585768924 241502686 307708443 943582535 673671107 1071434062 267607656 474356891 600968029 260695346 249591557 213995720 888461884 1040796087 622735618 945681296 669740905 849105578 8288782 794798329 848614213 1023095800 192789357 7583959 99059822 277581159 777948865 714222542 588666090 320263063 37517892 715988597 1012465911 244078232 37998966 825855335 268362248 162649649 21832886 1025941612 999715549 585840165 541472908 947438626 996082859 766957441 383125772 138827359 759471426 975802702 535967188 492453604 138346169 413162882 725366196 797293202 75136982 976301838 606426572 321091662 618101696 1026013664 530035591 770996266 866573312 811417730 514127732 85432297 661135369 1046583878 237262677 160142597 973258889 26246676 986721734 414112559 230689260 907682335 591388490 351917502 1039256617 681731495 913774807 202666064 701503829 871944252 857429493 400807802 625925259 1073253438 527439815 291901790 674131442 109267714 859243474 102930313 468611395 389302150 639496761 953557328 3370792 711729090 301747965 315650247 266297783 633756445 906655299 236521886 431395790 792462103 313166727 88686398 814366036 25480119 154993441 494820738 941272747 269965498 700936930 140837841 1053616931 80600767 457713377 634989251 1006924510 966938380 148660302 1023267551 85174389 545695893 767460941 517599476 548728971 216697162 126802951 598408378 1056698243 280944662 1032735670 203435447 780153134 460137240 299305697 606929077 748021751 382755404 398335457 998685458 138425864 371222509 138917512 266068262 1043853072 76682971 48744706 1044355152 464396753 105195265 158605611 205571924 423210663 125976597 473665779 838975232 469719338 666784465 439645495 838553951 203962399 378248995 420262290 1045944574 974371302 331631672 173506032 834081113 752468537 401548337 664352228 854756860 70311945 432014544 782183493 790390997 9897863 150641033 966991288 365076476 117636483 281435211 530189192 356927600 419640756 239742807 491549843 42472056 14304256 728155577 136404633 1048929368 294398534 6336886 200226915 1058459592 856934665 579549287 483159347 55490696 22048866 99158828 60878478 565078023 943380607 999967404 21145232 984586636 622604732 200964953 697422482 1049682943 452614523 184934389 900717948 995503231 869930480 730282292 132817441 156956834 699280285 602704880 829566320 1003289047 62087497 268364510 482508016 802855936 903257966 969571483 628442322 177050821 372104322 1072902712 862674501 410464912 292361528 946670407 578083683 1010995776 923837174 881849051 1007824953 976854261 304652563 333240640 1035717116 555035321 1046207706 992466296 516012550 525856300 881783528 743619957 82540209 943466847 356571782 90916830 210775085 490067840 51719190 211119796 706197119 410835664 166716198 756345841 338334969 818171475 577112190 576286086 377723941 898840325 485812090 218410554 829984606 862495499 932875189 695657397 901723206 1037140637 767532558 137542370 344997058 501990268 568494665 400570450 222810506 762200729 974631475 1038971974 861839045 348040181 347174410 206645735 584760927 811865255 182514587 1924877 116285404 177399681 1031746797 795339480 263285902 1005454664 13451396 157791605 537741061 837047828 307623199 882404725 806813491 27961059 651678211 140894486 334247513 733198367 267022095 1009681429 630407930 1033773364 478587135 954300408 348489530 98792636 156926194 83794124 249102830 1052434799 515132449 173574375 149647298 245454090 930401733 1023746599 527292666 223191258 420281833 787136123 331547599 155789325 774695 824935528 429770024 1047226621 697529792 180673720 608222903 233199625 85604724 299120804 24144947 403920421 580826277 167960552 344227132 352652817 314633363 1042408062 807475356 324572517 941799916 873450856 274305217 360262269 669942967 479041289 878900154 919798201 1005612612 32237843 439107607 953866890 314670313 834843605 241178320 226073037 451164462 172658416 404661716 827209369 245232672 455662269 721067731 687948990 712323066 305599411 914727378 736302173 412004578 774467980 536334349 764689690 352955781 169994642 142805467 276355640 1036659197 721696937 903299762 386208273 227024731 196193248 612055227 958556163 961862892 738276128 807382078 289789059 996821157 1049392314 952270999 973099300 326464671 877623876 1026038082 742923024 742571916 466465772 438740149 1005459100 665476453 375652542 1070903214 114752048 57566053 545046701 1049410396 459360938 7352396 1050731398 710707712 378519296 608436781 393243194 98922307 120269506 137443363 1038825844 720135165 246901311 975060941 772018999 833391419 970230858 358284123 319737757 841926384 733056913 325299774 722969560 811411766 452289338 352853034 1069469171 1060409325 46823593 622092465 74642917 268736155 834473047 843272551 639644214 165679375 380228447 565493319 758691264 765709637 613735692 782338724 784745302 334184499 462696337 602248840 702480606 393367170 675011758 151954603 443312074 925836815 746697196 156179113 132237911 131076124 1000355659 498573738 958844643 379180065 516752099 970975661 33369846 340730820 867957818 998139994 303496522 222018544 829283278 128944704 426009439 1063404867 172747473 298649207 926121100 364544115 758875296 409890059 947923358 310697027 888022594 511025437 305761502 108710440 488843529 1022832930 362470278 351921434 862030941 496887171 637651055 464370798 16193869 64295769 1065631048 749545061 812674184 811480364 208212471 574353646 475906275 340267999 162278647 921483320 672470007 391059433 426464292 962701382 1048853268 751707671 905389594 98391721 1059933245 1027042090 1072328995 931681843 723038506 625495803 278654807 682696647 386995913 553478242 148963181 195088308 441763882 478784507 643510285 506579419 1014766792 953301721 321723049 219443514 944713697 76919535 400521027 591926179 837036911 797348950 777931398 659965745 340534346 618214160 879905551 861342585 631526598 507352968 53662604 827059616 334712192 33538336 1006103071 617522486 407557406 146183734 1002654937 777931078 691093830 736862177 257078357 396158996 489370521 326844821 513887649 889217175 474108157 265214287 827631850 1061664791 158937271 615336110 241417992 317742376 910261105 185486914 1043342727 238484670 385716808 60411797 80570245 888076710 23367889 212675945 840276777 504212258 994794341 804423279 224394166 790173279 291643402 1014879272 44037904 741498615 86110216 404010353 515616655 401252715 493609553 931025135 808468197 201270003 118928956 487144822 502100876 120049681 704620543 646503876 284056906 950694205 577588294 617154618 385853059 536990129 279442848 661384047 173127237 810882690 892543461 650231364 503691258 1066301321 481163590 501191679 427401892 285575250 827703058 256212509 1036682733 480520427 691735042 983478934 234020069 734548607 543166730 825355198 833869608 820962134 932335056 8363425 803210456 174818995 877769319 550287216 958677204 892339098 480859203 721967469 836420717 186566043 833501157 892777828 219486487 932218024 618998357 744939389 569924114 627849478 787096295 82257967 926048122 36761349 319097120 613246199 539714454 743027269 100875732 492606743 859315491 271306033 4933782 143308402 250686082 122930250 37967649 358646978 443919642 641252959 716058093 390285315 457665384 552073494 311226821 847178305 186143681 56641353 1026810165 564119274 1062296030 114704229 457561993 611223100 84049844 195193127 285950919 675168758 167141235 871618629 834631703 1037012331 250165397 41872586 63770460 553090244 379250286 636649950 366376275 993211663 318317685 934234388 44683330 156177335 764318908 1029600700 277589744 89321014 173344221 742686726 787509632 561093849 773783443 912621416 1004508522 891283158 729195795 1065943390 483819888 662841201 661620401 1071255613 873696702 226553725 194426124 253270491 840567207 138540418 1070486424 109233918 786446992 747713875 100846194 433708426 617861741 61645469 584315368 509649115 790352370 781451982 127438982 957378155 137761030 624460177 981524338 124558996 121776833 806067990 615479473 47969681 78518366 292282986 1063975485 623504415 351993173 95356379 971406314 771010545 292342137 1034144924 118675761 505447171 1037955553 232574004 66714097 731062176 546137735 768847325 857405644 535005426 202435642 610871991 5026081 978339386 26701254 107807888 212918285 401987978 140097590 345984310 643305037 22848090 593063565 116785171 710707550 107773216 976252326 335385632 768408807 78789032 476548805 452157269 599015976 186078978 652085020 832103194 408473367 188979188 57962705 433121299 322763851 860009509 79047823 408520562 587139413 921881454 184514557 663205274 919773104 370750684 922473282 47021265 984595844 117964625 388739694 451973741 971174491 624505486 513922549 455486070 247647787 438952800 837392554 931005336 693353875 344816053 142734277 146289587 404650685 813306443 1054989625 447428872 727649160 754194587 492302700 130324123 106660138 18470851 811188580 495938530 14263223 980441709 663995803 1032314265 421070466 758170305 147098886 290019837 302449605 802338990 394949578 1047800476 326212620 665658862 9223549 977098195 285603749 744296272 1008190392 419608568 390925432 514656474 770334760 315902693 123679715 770954157 558117333 31874004 136376002 891988592 796991801 939348218 840532025 715246311 618179912 384808528 1035798575 1010626545 334234612 645190807 674834574 977485694 991058835 507587877 281031747 550486602 424324307 1054068382 645319575 973504661 853778689 699044756 905450019 93938188 60777558 536345804 342465656 112602591 265403602 239403601 785974834 598041787 359304047 284463759 354889451 370075347 89674131 821137545 281942028 142741521 51529532 681387377 556165331 522709902 485133473 376522763 632043420 278452062 191224677 44935916 879279329 452384513 485039583 924412333 912088967 853305093 446969821 907139725 933296266 793940323 410072970 756198872 306360830 768095793 700393101 693610569 821487835 510275932 657362295 795655639 488249536 302808942 908767274 175647926 549748163 1044549709 656535130 200119064 832543942 610693208 140651735 229312198 218435143 97890039 506878203 539270759 781269931 853471465 65994960 640981465 118126176 1048949126 951302996 953246202 609531634 952360205 962472133 41171614 622072193 539648278 587840190 299373453 1042973075 521082029 758404010 608864613 607747648 316038098 266836923 1457331 726625548 571785667 993227325 1008337160 83623439 299686420 591991601 173168981 96013860 929962455 436634030 827206346 55327047 724791391 405205710 911107513 993649402 731126194 381803074 74694288 1060058132 786219206 114140329 407798761 489904655 614090309 897783839 756126032 68911223 887174656 24406228 446053325 433818066 362227599 175034841 842886656 822294987 223164550 779135791 722941223 662547521 527113280 944150161 686908926 771073860 475960813 1000193767 696443635 306996391 968910409 1025281174 874513801 348134490 623704678 31784198 424907693 1032943649 108904447 180015101 181086787 535634875 1062093764 72054277 527425684 607946685 876173436 824903951 56355185 456710427 609808024 157354710 635687202 88429662 106773258 854006115 1010806738 310653602 908198431 53150092 862288005 308419160 665520907 782012341 28231667 926116038 7906828 887924942 692334714 183130809 274428765 512602740 209988978 844290029 642832930 484091384 988703642 193916232 747575009 584234266 75877621 390555631 1033611776 1039686466 855103694 819078734 1026627593 587746189 85313071 555281450 483800420 1001736367 621583303 537648397 766535183 739109142 1011122758 654627482 414246665 869203956 123950431 681912973 22408059 912923484 112133353 916788293 180192418 537638218 100700295 20850099 402800301 873844756 543233597 1024606362 385716836 220032498 425432650 710450672 937875114 256723483 14780219 437485391 87820357 370866602 302492668 686389847 310830253 531829134 819116081 355444916 194006376 156992245 386453372 815406830 246521231 924416231 270612959 242433114 641661427 649906599 963200266 484796338 23669710 518928226 916054508 1028657957 561901578 63302528 144005549 482919811 15557493 839704175 178613459 345195052 1055415607 830036428 639340572 160682995 434073869 163166449 778787229 1004129809 906080679 424269919 696981284 919347934 430687242 808846846 912655660 477337297 290301479 56678383 127459874 113208186 986198983 163323713 375000759 928931343 391780466 657525207 1063293160 387893742 922705725 160008976 617358339 545699500 735396346 95514778 452351509 931041826 453234856 524553791 499412947 184314443 317637056 635567600 20391634 868459904 118356443 333701488 205404338 961181310 571260879 936740635 744806471 1000959091 582970246 718741224 307667107 73679264 444493740 1072156029 943877489 939640427 602234557 189040330 264518365 122457833 644416281 301649823 672014814 920029674 733290746 744822800 465605164 55239006 59234143 382023833 675322403 530605105 894562184 847202365 316923875 209126517 501141020 720579344 12390195 6296837 170046261 976752368 301120199 212181930 708432143 887308083 836783790 428978752 144295105 769383310 544343086 574194032 847471051 983107245 505009981 620743249 324770252 764682793 1036066230 129897680 181439116 90010437 371460511 471243521 161051055 847218355 1052356596 841005860 978823283 106970909 1065537483 604039139 882740676 569480209 412037815 909372146 264586618 287538276 381449745 54022884 237624740 1055683595 460231784 1037351939 42492688 626298346 681743103 616323383 1055676157 688664631 69043288 572909495 1034284227 166494990 232813297 697836540 942940491 340013265 758800035 10472587 1052561915 70334066 906868489 892612931 199328090 201343527 986920312 689529230 238534093 246332878 849621423 1031191022 172605790 1051732051 661259831 1016152351 337109622 164923907 731661630 1056435188 591396696 716667925 965723594 51698837 312989615 94387452 205909789 583918075 366342484 982238151 484461153 241171166 667113039 523691278 245304271 43774770 322306955 694740269 613964736 959468505 676191660 837148310 645956249 51864066 780531542 181684657 907134839 43976305 661294671 664453003 36499652 315983857 521908538 1065232921 1019216696 356770977 425134739 92013171 194139842 726745014 320257930 937096753 421197616 675225597 723184303 765945931 546662227 877820797 201520527 663771531 801183634 333399766 209971745 950904539 381180528 631456462 680507544 638856501 983230388 128006190 950142931 278466902 27116676 319615610 775370942 945034775 372368673 380465876 948515732 657845259 689864023 95081405 1057550237 561248636 554216056 453997652 663613631 251047132 505531116 255495885 252630823 722326656 775171578 598375302 733366979 148103501 80968195 741243275 929469901 1036426166 24355475 362622920 178308413 101956491 783990427 462903448 768627726 969386093 398889836 951768727 245616451 770278262 508935923 672397727 894618314 938249511 165994107 690619962 1011812648 642520830 808185587 658852308 67228701 117660403 520376344 322560346 37130716 118879888 164646938 40298384 634493218 529167003 127203279 442850589 92687974 161978152 795629870 435949915 115872819 864095292 177376344 995058413 818984639 53755597 445110128 577701231 52879763 642092627 975917038 404197752 979531606 942212324 766886747 64233054 980538761 579013854 354812372 947964293 778915832 1001929323 233716362 876020856 455033717 73945865 128340509 452981431 130965567 73771705 743616496 572306094 372393000 78845531 903786219 695225397 490830432 594953463 891364240 112799500 881273800 221200695 415139361 647023221 356553374 589476678 207147231 644117218 915244376 681365660 748907732 149696959 694868776 194655687 896530821 336449941 961593007 115611282 54281093 730816298 101052552 550093467 289605165 23242196 973936396 385316831 756434234 750347536 614310879 110502519 784318781 917097893 902205278 129976750 697499519 322511249 174757019 39372187 1057468893 384203204 191479806 685473781 919654665 186150140 161271568 399686914 243457093 906857465 442298492 1000550725 1051561813 817927677 525358804 132389101 150434655 849679446 487154938 2442147 506850633 149918322 793389400 614913975 899613053 628659955 40317063 912902226 283871219 105086362 982100862 61039805 547898790 828039274 553477293 748639553 34969666 1042905085 214214952 695629263 86692412 363448609 393704624 821957122 144920102 232091420 891012345 75148846 285835238 1002956196 162953239 772900687 417857436 973729695 486185075 1004023691 748930252 921869575 1042428835 573114774 662008364 9719931 986762413 889726385 86022713 616746919 923859343 755123253 65707651 37566668 220534072 154387363 222087186 74319855 1063071574 451169324 510813341 510217154 31589803 1062270365 156981007 149850929 810613628 908111886 737426126 667318465 203142135 165551994 455304242 160091056 817536125 40217269 523383219 904816975 831379040 1013947172 921994288 644993353 1030542307 563373189 583481935 681230 440470622 754547108 427982495 760365529 129811003 491637004 998120901 53835271 183691375 1007375387 987325147 959171258 807779061 1012806983 395871006 139255985 748400931 313024660 1017711180 468006061 952973117 994471188 262105088 357768615 350857396 58462646 405717555 446468018 957577699 646599225 156934548 423992568 564627415 1011207284 458192071 17638256 523029095 801531093 894986367 872809342 175374623 541906638 107111479 537981370 165889275 576002705 1023779535 802034687 445742205 719618858 315325449 49406009 711087415 175594610 285616038 414199277 516100593 317134225 241566612 193519486 389069913 529801775 325214116 591722895 667290117 498543047 992191756 798762561 718516634 322106980 801195019 513453791 673015569 801319652 925874484 809373248 500040774 393302738 795381708 268137643 57004018 758965192 421118722 612225935 989182048 1070682281 20167322 556983277 60067066 1071337386 1024694288 676131596 422214876 364394510 669334589 727890897 626156348 177573466 679454937 1000450333 597643479 792358321 335564368 639517784 152033740 460894485 1051110140 948019247 629185619 232503835 491384691 346356841 561514550 754548509 615169431 600577010 720543626 1043058377 253483038 1044217463 70304025 229047980 834223925 758190889 567137887 677796373 810611142 935455056 325780586 158938300 991165338 396049074 161237057 463409833 469470823 406940295 1028217547 437239781 25794248 13284522 110974623 859073752 1059502092 720188699 861051876 166315866 838152460 661848545 728292208 210314757 353388079 138596408 585537226 744994639 1041771381 369324211 414418228 48115048 1001039495 685308391 646607794 155518229 891896969 839787208 681651459 989895836 845239109 248890272 58177563 153441255 42011875 1070166213 376287036 418297951 881698008 613446796 169689137 689884472 841531843 910408604 764741619 995480473 299499739 211507690 1046522719 503602724 910476641 536589523 708888774 1015193616 154922403 814599301 70077272 891995932 640479552 368972896 825900357 250876494 637521391 486611477 442833515 124884034 2175852 253659282 560605005 204928013 1027924087 750486719 105326887 704893795 197998820 821726941 549317677 264666765 504367083 299424020 291511284 50003071 1062439933 815564399 1054857308 614587883 417222758 247774166 101780642 170443135 178615675 7442910 618189277 227625062 1012050271 53476810 417551249 268495574 992069774 318049410 709512852 109376705 507728705 682519605 595026424 889141148 32977389 1042119395 899572295 768345132 315944222 504289896 523196185 680147642 785736129 591894656 195763221 363736162 296433122 326550564 164207010 34316363 190718478 860231049 113345779 891046956 150925786 736396598 197114841 519258320 699575042 956601810 822000342 771420603 534341509 239545351 940679974 811343702 91049776 14541723 175228821 578095229 470668879 740354430 171069820 673329380 383776008 834788080 823353396 852463937 567169042 44384171 729335708 822881691 502731164 996439788 706424524 548917855 35601717 306952404 274466674 36640805 947539730 639684621 738741205 259671205 613011947 553337899 735566761 516317510 393538977 242660960 927390907 994110048 980268390 446601107 493354077 101627803 755414486 553040521 487881333 922400126 1071086000 465166761 768921789 37535853 1062053180 458809070 647679993 505402765 693630518 271006854 313147062 940694336 343684106 1024935529 492365572 276240651 889766135 771639217 1011909742 625252334 964073246 833378890 776133393 159087272 475138654 604237806 1060289419 1019282125 182723523 612926841 275189581 232338473 667109471 222478157 176410634 290511509 810194753 250507438 656043717 704617114 36525156 714381237 160968601 1012095076 270367894 297802940 976042456 1039468502 415224791 36102993 587245757 56554175 13692421 91718000 936782831 922072343 94206427 442729919 615401462 314769544 756388115 589941584 497959534 610637564 646191181 351280623 584594424 224990399 730705995 232170344 488435859 302617180 148002884 967393197 431550096 229201527 277821349 1029688563 1022530689 271266624 668849270 578521390 129472581 1007690582 436090853 170456180 454613658 298530430 1071575004 83975694 68304717 780526996 223158737 456517317 1048311623 880131217 664705270 1007191059 129406105 637656764 961219643 907304571 459171501 891984800 851505861 146898502 698888717 494866833 13697345 780319388 983107491 777007150 1062110750 465780031 882103502 363024489 601211858 817695936 255899359 580007636 905467437 32180875 952112334 499912292 920299316 413248610 248026495 215001649 379306915 84494732 156677332 886577805 573186855 234383573 32413823 1006225550 591889885 696713263 829138029 724911549 365639030 896299032 777547855 1006661930 880497393 1062683888 905074252 528738043 72958896 592786027 1047014690 159352597 596151698 1071661854 108637779 760916367 435438834 892957774 84700944 761285248 554079254 902670596 964228608 52901917 872078182 504288615 883977881 760585721 1048486735 779199306 590782289 657867148 536319629 316854977 295703915 551978409 387511237 285619011 852545779 978551720 499464942 351818595 1015357687 130023772 376300529 1032679566 990698581 992051706 319506960 797076213 244256846 401406025 390914940 1006445027 279830898 594620916 124870875 999797938 330572807 180756653 63326297 995011017 983367745 683108225 20829543 959197166 1061746125 397108696 202217161 521699720 418381884 394303193 75567144 91128896 530958570 119226101 646995645 643630351 42340601 204858627 610319937 181680911 208757651 570699542 435498637 196994186 815289497 294451739 290165457 997870137 6828060 280971318 809932110 20251644 733266671 999479137 951013306 435911545 1059068365 517448595 444901094 358974261 175200545 765735495 487260137 94082184 947149036 563464515 60901375 91257442 629628765 643117069 819839491 384768721 441215513 709061386 200751432 734945315 76645575 832491128 535838910 150434192 839341518 5705644 441761757 842215809 546842024 969263942 635553553 459803504 414078659 672326601 718591496 104292774 298039148 574648198 544180443 928221403 559607622 629337043 34812069 477460366 850598754 894532694 744803995 240343439 554675930 1051705764 575600513 988951267 758787103 199278859 376738021 275065646 97498594 900892393 564174719 218836133 548597503 94196897 861965317 656574842 408191002 362597884 602015672 338066849 629866821 208160982 1017157116 713582560 98756663 927314886 318692132 601453987 450647879 130478542 140334707 648246175 114793418 233436308 725029780 454812253 451969567 175308108 818052729 501026180 224182715 729190773 1065775428 578927901 673107481 159356966 1049200460 837045917 725155741 912732271 815315502 563524829 215941247 173228577 471032114 52380041 724966460 695187848 397532540 778714996 16151345 473551032 724668032 332695640 601027715 988901881 701738776 454884102 643915094 535444434 239013649 258757069 532573267 648866485 803907057 1026439549 851722309 726022649 660051767 173587259 967002573 884182934 336784010 586477470 18443049 477423970 342731919 701493926 863901312 289849896 194891751 835217427 863428959 589955253 443455546 785606819 388468631 1026755304 669573970 583158550 1007907791 526163280 113757358 807273749 609896716 454859028 761752605 1044289575 600759299 351341060 563832381 353099719 484029605 291118820 484193992 921192159 471012235 776781299 317930756 131431850 947690030 2259309 463612202 266406585 592478685 757340075 1032032664 344007741 496956097 629018287 610269664 941554332 983694377 160236704 491515326 480008359 97945756 661253715 457775737 386467954 62393680 550899568 750552069 701522052 940787854 32487306 908910190 556234302 543333929 604931124 855211288 268852064 576457401 329999004 116689615 123150970 797574160 160426317 522693247 113523813 478372150 369635401 864280520 329558990 1034499871 309072849 107663843 192007620 601433453 323576244 814765717 942910835 75529040 976168111 154337076 30380029 940794748 896054991 384423221 145728822 215171298 453005830 140358764 348453403 256240833 145459743 447202175 760702389 985241901 919626144 735380240 676741178 550631358 143176665 1023859133 479809479 368431144 968950049 81017811 150991301 410438902 681834782 462337610 201172433 846959591 50148573 678112721 236966450 334633587 636362454 126348552 586031370 463607582 640482067 27974364 404154316 901891005 618948481 629430180 173376142 456711392 69323993 137895733 865845715 226849953 188793987 864921650 641678973 1208970 231756127 613701945 701028146 68610936 825475651 913527866 1068908458 810966210 22471284 178780778 226500980 981197145 895185603 447187832 675349420 778403768 947398311 579689880 918474463 501246261 294838967 599926288 692915128 107501046 924559438 984529057 237662553 757240279 109663884 776483032 355164903 1056004113 688162752 400932786 40711064 604057103 979255915 126339797 602835772 138381291 1054649434 57005134 455176107 564184277 480372832 863203332 744444670 297486046 898238516 338797336 968647300 916507274 733493528 586885157 627782514 297564760 87846666 113947845 612365079 236488048 6985037 445345206 762063261 999925827 71031095 81818461 698092351 396272063 207549487 920368027 896129806 382705081 304487837 248490903 212342948 168815426 1026485737 845242342 586756522 671904567 402108787 828534643 144367996 794845644 561001265 553042601 865715803 315379117 572911135 736018006 553676171 1041101361 937176402 348811325 691894159 751165582 342328495 611037792 292421463 626976152 225653183 886684924 326356278 273855385 32245862 942687694 661983959 70535781 157088556 974982051 241480332 127508039 203242703 519974630 249323029 798370786 157851059 117071748 350356247 357142405 34044601 218388692 757273370 707618960 322746781 59433450 616551014 165050584 750064201 515108101 943117484 271688628 320147454 854211437 1006991577 711049725 284761656 741283542 204335949 485837975 465988220 100634499 59496543 1007745719 1007202396 783973441 407281315 479730467 633568435 619451586 256329824 580669785 783315142 236175887 743719710 82519073 764564014 856302472 1032033114 91366097 766154312 777114279 14200174 515163826 239508980 479083946 377105753 1022553718 810480619 710133270 987109127 746965717 768479375 1029057952 594733827 986179510 1059878226 972666397 137408304 324466958 821691245 899628014 183404276 386506075 397136111 476116056 512681964 34565410 91771753 730303510 1002556140 887966651 598984909 591307889 819505245 706669218 710871588 632081926 503381357 180669405 583359499 864768472 462276324 908007249 397925276 812471382 288469019 626489926 910080562 117020352 474691801 1001574467 520651340 180532528 1003654490 482315442 253853943 286271123 815995892 664625115 1010566546 1041267012 374700482 175428428 564037717 148706192 234788212 258877370 125609994 614567280 249333495 832929487 1000636974 112952254 878719131 1059196249 451551609 983852696 17664486 406565910 494359578 204340498 682963726 791434330 518941252 906702247 7667483 322120917 868828754 741827591 428390818 79359217 785301822 42473139 229035292 901845457 749539362 29785491 430978047 247245785 949609189 208140827 143008168 847890258 819976262 456667545 841441844 66885086 833765106 786752945 343386783 275735065 650864100 186755955 126962364 691845693 925950336 304849178 894174879 956611717 759890483 675510310 1010448856 199152408 484968716 642227562 61885483 473717734 509036652 326379319 747022175 493035845 867178428 845845526 319338915 87080397 414809656 1041387896 689160408 377985822 779085546 712965341 406014753 904365101 608609180 390935692 403862853 519622764 674935299 377568071 427260426 931040068 463720874 86861622 407108945 817996749 838754363 1032734669 956599697 290938478 753863154 919177725 508575416 62708400 73881519 951353375 632948431 1048595780 640729304 332128229 593970243 1010836692 227459289 462962606 136391263 418913913 157939981 973522055 751923444 9885585 992623708 206445369 1026048860 110279679 383664743 339151283 798638947 845697267 387883603 171721451 95155357 672814513 818556541 189466700 976390953 214103015 59079121 260662220 509245810 256272212 1001216822 1035627779 465306797 140727217 213993031 532134833 681715281 901433228 379009240 232021004 338162239 767161756 110742975 765836143 453707568 1041948078 914608207 884687450 398943851 732275543 274799087 570050370 335711175 537662128 181403065 750707616 330813672 662492294 462950277 770200123 515432054 173396227 442261215 805654443 785119172 209637552 1062088936 5744058 183761378 922790821 401051378 790082273 509374648 864482010 1041903902 291563511 327459665 75907299 163438250 2506093 825485808 964817272 677813131 943336775 962616312 112726029 109423182 183246148 770140734 746248548 989137838 667726592 131803241 887803812 1037794057 866220860 199306425 215103353 1062371346 1042124543 607839403 183514885 626307660 378003711 875786555 189433833 609785144 558847828 164278754 110731076 447571532 559861481 601597362 305590555 914557713 192526396 55818254 442163473 600459289 978307411 832766609 610300369 57143590 741304613 813395899 565064247 577742999 612991316 840736824 499246453 361018277 306585506 506872121 137020591 386734543 20458992 966194129 331306069 963931409 437277918 189230634 96207462 612338489 499782272 350141150 1006240531 555062152 670300351 242714789 960980115 922105636 607940208 727331162 357654083 224357703 845522440 275501757 979651703 1016826998 967203115 776890174 260660289 238603181 910806012 165580321 51004221 1017397486 967616848 352734558 333705991 622824014 492996036 491140137 334697566 524075794 955785664 889496076 516520664 141440914 657604234 460843879 841793933 998115576 661805350 128473947 1005638021 706239487 798461497 80532664 6158404 872662256 362844805 790545557 536810851 856618788 937882456 6181626 864008895 460103375 991564137 1008900328 382637706 122946029 418187984 251387283 345010123 492175733 634246252 268721853 7786727 936434491 806589758 596254823 370174475 829551905 352095357 785460938 625793219 210458340 489188545 650425717 927409648 204841878 360119380 52329496 249265925 361840773 1032903981 99753616 682252293 757264686 430526353 755551160 57517421 638593706 170622885 713325581 530306080 1002867461 531236651 576658032 964942122 97999790 971135523 725770834 400136449 1069924250 323680754 279436644 31892316 1035727387 931770119 23788332 38911964 236929913 703238905 49538206 605901399 653484781 246218233 911939207 698684646 575158413 738768372 599356681 816268751 244759450 513498453 915085310 365213211 251594574 366763133 905319282 1000271580 144370038 226741520 311053717 899540940 805741414 194403316 787140733 38452134 809439922 798665980 863814371 516636987 766251735 691635470 269481029 89712231 747254754 1008796149 501903026 757653300 532641820 252738424 771362645 648960901 764734192 645907105 1062173073 1062436876 713901325 932787820 150050847 312320744 353872521 1072272618 526713505 97307357 886259698 661017779 1010175930 560333983 469265171 902545040 918808300 898027654 26252992 15020509 426490809 777281405 169734854 358831023 641160550 936475120 615936578 267862763 155021089 829722170 516585268 1021569980 381311847 592778845 426314548 888907533 854635376 1053885159 825059977 1001149755 114306056 136638033 150541236 98162105 615777563 965853796 1010702034 806622696 951684268 1305307 454858336 276306079 859446683 230538376 376588306 328654155 512690918 66131044 659951574 986557401 603488005 695670463 1013989092 850557504 535730532 735157584 614822675 884152898 350380019 569216590 782313669 75181901 259733433 718618639 351662793 179540859 277556120 380112023 540315416 61675849 476479393 26340685 755584641 655377060 634696050 937482138 943578600 707199 843027665 53480708 755928752 971115002 265841950 399180596 886805914 942687652 84317050 620415321 779762915 740833239 724676074 148052310 347709762 77312929 873104042 897463570 737184292 878721809 520711893 722560053 774901529 148148435 100809632 79339017 309828761 517687828 423001121 627540528 200153808 163975045 215216046 983392498 446680834 465172771 693496281 765406684 843393223 205173042 1028759711 1040122724 62772650 485867857 932429228 755860743 280654877 826080733 965535776 627908363 173765419 239428445 172960366 539879093 781638251 38646039 945548377 89652022 280246353 388552539 688589772 772759759 914323747 584204580 923295413 529134016 807502842 967989564 830960049 256610948 27696774 158896023 561694557 157695465 377842589 858094268 908209028 173664510 368262389 474985307 668560223 288903403 455923393 805255907 137970438 195715400 934827176 318779784 539352162 847993365 901860869 409281354 983939587 361714836 746025159 484574772 559842613 677852250 283598422 105976560 53402196 977932246 209909826 142288013 878562869 771366668 963707232 895437610 942626888 129614613 867150471 150365739 737777420 458329192 553818815 769063573 550155228 282073078 338457256 739897188 145013683 1047650972 909808637 875354057 355046031 133421646 787296187 859709394 368257943 1069251351 499435551 353376395 396203001 817789510 103853372 964799897 538875704 456650843 579897010 581115979 320095781 536118242 24688382 1049366562 767357452 335139825 1020634489 328083496 690609950 115823312 932412590 790754812 571482972 889212381 1001092591 352135603 352652411 889206226 970065322 860293992 929601298 735690051 829786409 422906911 963261285 105174255 259702377 42027832 1001326614 702532777 349426201 69065394 654382488 480143684 525774224 1185131 134859010 197248793 193907614 144317494 209278525 41779521 532022730 71799793 910949506 468727427 912531535 758843271 649473415 560403173 927363103 1017471311 319304275 779143932 866932384 363809025 300724735 409691379 90041211 1064012707 676790471 788952672 257241109 6750602 1061840139 267442990 654510285 873809754 1038001578 1064153760 299034056 606022082 522039988 307356694 447926600 631883147 890666039 9958561 1052670579 290235481 88401126 192505903 833461550 857893143 436582318 436040654 584012713 454461709 734641493 771008725 464600869 301748341 200753451 80026981 185963764 713475509 18304208 261217092 996947122 111699943 527321546 324500768 984436767 963554323 47896113 829298904 806040590 282873387 24569281 975027706 745663943 963355690 153164873 520177966 38433794 803545980 905276607 884285971 587723304 561508213 1009955120 615155045 963396273 386839887 195516272 5691885 439637751 227360137 389226033 986065983 173344231 283314526 47941329 135351947 624557170 813472967 16154694 46277683 579423247 401687690 904787331 788031447 25789292 507979617 901129441 1059722591 378435484 102523736 504606193 726922943 1020495057 506656681 178534677 939663425 804511022 969604156 908528982 386575641 899984213 269213000 1006017482 922832739 54128396 196496974 498886517 225850657 856985725 1014011250 133830980 709803671 752451039 162292185 288970541 151383093 964965547 73979341 903010109 430306487 422633723 110731212 849026496 518098871 531508026 822582658 291947799 96102554 1032166684 183369465 864740313 209460514 514852837 706840282 580541858 946591717 236742148 908499258 175139225 1046007636 121470260 734042395 688686098 348508889 716217759 63270599 208687039 994600240 808382788 933657537 171074869 349579548 267818078 766140114 778527368 575692433 160208876 11302908 765783286 141795231 398467624 822220702 840107441 922645033 644643657 390495891 628803482 462075876 722134008 829887893 816701284 220805324 560264037 80120744 759069245 865466733 716399656 1069271029 526019129 980730550 87760113 405298452 333584883 800559916 823098748 1035450521 483192722 206974629 735766944 17433676 504833465 851622636 288036608 834016065 125398743 271978832 770903575 177828221 214016607 295829268 476535289 790187141 1009083063 94415068 183667246 575381725 407103334 59782975 175058839 104541779 1042157096 260914426 1058791563 948407941 512793470 920484069 372212705 733599289 990934011 901861279 826692714 1042621794 290947515 109695063 313550938 694118964 292406987 739765379 49408305 474678027 310278000 37907073 686079130 1024025343 349727654 521162691 3439511 337019210 661795675 31780857 929298744 1046320770 35128867 72439280 586706352 50081489 6651810 216256227 478111144 942228477 944467206 342243202 104347872 384317738 208476738 380377104 119435706 931591460 1043760423 900093951 964652193 226548971 957947241 940794501 856262128 856695253 619630222 399432585 670473501 145868594 366127978 923090096 30384798 928738055 382101969 37973878 394862558 330646544 898577097 427779819 709811374 508177874 953603008 465372536 895769436 233840698 528633166 540758301 967253009 632707018 1069469220 441387076 197018400 183151890 351082505 634861767 375511147 574334969 701983980 1009538838 784647340 330799195 525074110 690098505 587063630 908107757 255007128 783847739 545166014 44222837 21058116 110075463 78142178 145246797 950394619 530253384 502724664 121970455 706029172 794834289 793063001 222307712 424852579 394995132 206920633 34466175 659953382 583950253 847678965 1040825425 443038006 548441191 933138264 608099362 285961579 576825754 1068955436 715574336 116791607 1062360554 280787064 841831081 51450805 59081615 783064772 86527919 1030624082 94835423 786737526 249389034 993029346 124173788 749938300 599302974 345265010 674386451 38434066 353985756 374221818 1030050306 189528219 505128599 46688863 600867760 920269982 197802242 794385239 1024936701 451517297 371624862 108649234 429851859 132744167 787975128 638928380 264579245 159594706 433027124 703481470 168433652 676598776 600020888 678343214 565261087 397223306 170481974 992103430 531964166 196894497 524068450 14978126 168975745 114810946 284040509 395431420 840096669 1048587183 508901751 394831925 796724061 527161415 385414387 306232314 647145823 968744691 456891444 589182932 283094556 166651758 953077867 614879175 987884559 869084860 22016303 229150806 497115892 314739807 780398226 830211831 507373124 935680543 662205316 33349683 598984774 123979869 48140197 1044244487 440120229 492779175 791297618 932363779 124014141 479922349 927700667 948043912 766908365 1033922971 720722353 999936316 748825939 179804714 57364980 132723678 851454404 980614781 179073853 929747295 787014137 652409648 26611867 1037741314 971548574 177156467 304179230 791219962 1005147248 729997393 1040742738 766836340 650515072 348895563 1005121486 900656387 766249656 190686708 380648078 445456734 1053575297 966715252 297517311 685768910 64285888 666611259 197012295 12966642 825386023 417404395 1057903291 815089377 119780915 305259006 840485594 467875362 493259608 365143503 455217029 915375297 447753326 411038060 689368465 160751799 155463160 882876350 829514017 820900520 851308826 227026826 503247810 49717780 28927999 348652953 211482448 751633393 294335912 560758946 652297494 173800530 1017073245 635259371 135034210 609177111 611019404 383636247 957153770 1000812993 232418772 481124903 225175446 87297875 444109278 1000955814 832418438 531525928 711482492 495890582 324025648 648658263 305606145 817940367 336567790 1042743251 812587046 126281706 30905394 943677141 614259600 806681283 672631528 723441485 555956477 205575877 1037100083 541486396 107089228 374082598 622494232 151469850 695514300 398928690 1056286488 238008190 736870486 937875369 661607373 600947670 46759249 777055696 752911833 445290191 86170031 418062793 176692742 219667468 734998553 611781589 966220493 704553084 457530500 874015190 180303119 462204266 290335320 697761223 646834720 276666655 758582039 947658872 115400794 1056429206 377445437 549110730 999086617 654068201 1032000845 170143407 840496539 1068387386 428614576 811614562 238563500 347999878 75901842 454825675 321975569 153669375 722354828 545763004 163397839 593563759 121309073 866639195 556083584 704539877 32442663 752287322 100225768 336711565 932631659 425248878 454344474 481920576 175627349 214137306 163403956 245180210 300124467 791250004 800608417 353772240 294720198 167924417 352021382 305248385 834577156 253405544 566380940 341542486 259795136 358166706 883644796 671799936 1005395329 762373065 269138207 659368725 218326217 395186825 725301179 132455199 57399383 761351204 391139123 201430478 378841268 696139786 79510540 221281997 853852821 614602461 310018647 428683345 769989667 297098907 84609339 328376169 996014515 690348710 312180424 116402192 823063010 65892616 594481195 739570677 198484850 560902945 986433394 676908535 156845545 151086392 427844357 253848733 883581677 422717622 525163498 846206291 286338723 523674473 265873138 950377402 588642367 102414354 107893048 247706839 511850343 1041303760 963370511 250744298 696549151 712199564 958070752 504269294 657221015 724840602 228163125 746662663 969739691 955293804 785772098 536542110 493332560 110330642 717278766 531284194 493811086 779873117 579315721 173791513 847422309 585714350 689362955 134460281 599171951 640149227 548897029 27889405 205381854 574545449 573867491 27794929 671148016 244216203 293416419 534971650 773590579 896334369 167028527 1047855389 890083179 883845646 97466252 141934585 501010418 400987984 1039070178 471276925 285528219 880622309 255770728 594541621 171224602 609106353 439912162 835779019 319215590 1072319313 275815345 428534567 316140179 364520238 268306075 565213040 963096530 657007437 734529490 835120819 857644300 386839141 803919922 99987183 719809377 638283406 718188203 947214745 512233817 200207553 148879751 1019917105 245782933 650519951 721550494 902868081 513138357 548982534 560807406 831254263 731992776 717131494 930460834 624415937 141962408 153140933 649987634 901838370 787243043 911469800 332160324 561223474 96830427 1066099 811279645 309815252 612399429 902771309 768316294 974667776 886807384 699053814 476214602 703386788 620180927 852867113 76018102 231789081 788063334 22330986 1046701364 994493251 985283205 876833378 246970360 891154640 836814069 209520199 211135384 513205864 78077894 12500907 268991087 396130986 611959239 1034981660 768129378 200222762 169700904 1028703063 928078318 810179463 859477285 84433582 989629838 93862133 874090637 451745155 466716650 89819396 122492527 765300408 193057747 444825329 975711605 608362736 113661147 703529029 130475042 835708235 76611398 647716844 990737881 393313879 386017751 485304305 665772433 579104851 1061198709 1066524067 506092605 23025901 672109707 739346511 592815855 685069117 116129631 12477748 625603704 710232952 649122152 599367283 376538677 303839013 208921679 139796361 1001639376 722680110 230407991 266279622 436149821 1031836641 769399531 134045224 302695528 240442284 799233824 707567862 794412374 58318629 254894247 887681993 837959780 298367768 121612999 658154550 922731 915920056 405531782 925793278 608396382 310836142 351514923 173949827 492754673 863589019 711394979 251237411 427296420 438529692 114711294 933971161 122201942 220058439 405725817 252695549 914088084 1010643289 491467697 477374584 1036570263 193539728 83232217 861402224 145392340 198606895 804413175 763207307 29686685 849816069 891020226 237398384 529214956 394964076 1049046497 90474212 698902441 348547925 476772527 461307848 1064303131 865709035 634698023 324393410 478198722 760648718 762793938 970799250 979875225 1061817828 932541783 653237798 559685707 582565822 937900424 400251295 118268691 388585539 790850780 647132859 845877490 223930685 672382054 577236447 220612786 357646585 311289292 898731731 181119857 351461802 771334744 154798380 988096476 921924546 150060007 1009591701 1041513563 516778304 732997868 695731800 806116793 233388724 552438124 230670779 33558727 947601537 354888447 521900930 840982808 968539164 611825147 996099791 996572993 407428784 244036630 869250772 655328830 1020969919 215077233 517186720 370616293 352676429 244734684 7918512 722084305 592534322 921536588 1004057631 507390258 597498222 261372481 457809100 263487232 1007869733 550914320 114677322 401550386 1013271832 584808913 1018732068 407695359 298507704 491490855 567027864 994467976 741842104 951403264 661723075 53255401 546612419 737022353 862700295 761944216 611623655 871430938 995494666 102271059 274162407 985368073 797769361 172741333 100309638 10500897 1038840345 358017640 1021727021 977507675 414584629 757365080 187226026 636411970 630074351 852609572 640058706 298409799 487655004 580828446 686407566 134684789 264578280 35972002 442733181 297160168 348692201 178912907 822958745 525536041 824781801 200737297 353010324 123049172 335207881 174732840 358444534 887957543 999179873 936777625 999483385 839360193 938069600 498891036 549087792 51534788 210422829 312591682 19779284 997320807 53503937 226307787 39381908 88415612 544346093 573226785 630625603 499962804 1033985499 594964969 404320506 173280339 917419384 527971062 196672329 642064668 667769336 422797375 715165309 129356284 562959772 10456925 629281200 196292148 529121640 840319923 682819842 516127084 849918473 528550576 719483483 279569138 570857773 369117348 374359874 604465826 596660820 222550537 240394565 965088818 320151043 221953636 491639903 656989343 925281256 298104154 809457712 830207393 865751011 272186918 631327921 1001033737 640848851 316653559 756375489 291422717 758492228 867336988 865458528 617372443 940577857 454594834 580780899 506192220 992264486 826537298 433804943 980282147 837229745 1056605101 173051508 300481996 619835004 904207778 114143360 41627998 854208560 173177841 775787118 218341026 588832078 462200420 439807870 393586956 680745198 475538565 860592850 834859608 540752942 787957402 900273544 991762032 481803269 454770060 513863328 501678067 307082656 331957787 113244555 325607555 355785028 299523270 524861138 820718042 204649184 175789175 70237554 113645383 988337923 802372696 50548580 681796540 1065289357 968717970 449414872 408033112 914989121 390156322 94552969 265215346 570949771 652067995 911732879 822539182 568959785 992630614 312599938 705192830 730848408 231899531 377299160 771455360 1035184077 728116271 1010474756 483484507 407502472 823599504 128323502 5085006 1004107993 1064864795 963602628 498900206 480068312 676034595 158684707 929075221 430420577 553125369 80004680 740838019 539691395 1066534386 309314513 382995792 364820547 363328213 832667306 568872922 894103551 116153683 665235952 93079996 110630744 649770270 668824372 570181568 1042856965 969464836 523150250 1010521584 725896846 913547100 516614586 244249453 17166368 52098945 206877994 957616646 582650541 752331859 522204576 700176920 622002659 1001086454 529353433 588614191 582719145 548409334 260081311 194525011 80883579 305377340 10843186 948862175 497427728 844766725 288159066 515391329 966251502 253920998 645670160 1071838299 873403891 103508367 952432140 592339346 478307171 798794157 421989832 207990996 83961379 786767671 632568159 687281416 707570086 346863460 1063590729 739067440 473391681 596392711 256429457 1035550704 1058962028 556191868 967923101 124455358 1020916303 264385080 857381978 537564069 126249478 142825069 596262620 1063291944 622227341 926565752 102342907 433202645 578101313 606816644 835076531 149863300 149930098 539174092 43254512 122958477 764606446 683721624 646831996 508539575 735341920 634809802 753187665 749226736 916792689 552691678 637357906 943008366 245509220 558234035 485293926 1016903560 676388023 543371831 328225294 465509193 178587125 494719939 20933703 315529218 965579354 872884072 170050427 815748110 652038130 795524748 487471363 537101946 1007374875 5747090 450782537 591305305 884727631 967359466 437901352 281920758 276882903 716734248 274463090 75533091 578526811 679478986 397417398 548073875 817262537 24534638 711917817 760234687 986495140 192181786 973575727 544662295 834624885 13606285 40581618 632307687 330810166 756347833 739165133 141931591 593546227 1020036565 496163716 610335808 141288253 603059496 211195981 223305133 20976722 842925507 341557328 898981327 986712771 376640006 708904770 467699286 113513076 197016054 23791149 135385132 11485056 622876908 939343617 524584297 953377215 759750874 380187749 966478441 661592629 1055500236 328029638 318334921 334777761 789490735 969610183 23762904 15949863 1015095521 470015988 189536795 777685070 987329312 579077889 399115645 366539678 635433682 507285767 229787435 883724737 1042039941 491763204 87077102 675227535 267920328 860668625 176975732 925656569 11587685 314186439 1040915140 1054082163 960012494 856597459 139268960 13043976 230644105 987161557 520557410 1015139209 519873589 583583120 188172444 221172318 580351369 45569358 265541724 16880247 1070647400 276161259 811899010 958255354 828941202 1046563589 665222983 668220184 445317278 808447683 279729041 111919687 650361966 418983296 405108695 311955300 288442821 240949188 1063419031 106407255 210326985 15267749 15370595 81343652 434355685 204603834 26107548 946757810 156595272 259338678 778657662 659345190 53958314 1042955376 979786748 754287532 38745421 777235932 188841058 216945515 723066558 977642134 295020843 515012525 578573148 576185024 175467974 112594496 391101061 884287931 658047767 193104639 699316601 401565569 289691280 332179681 480010239 73446350 215579601 803479309 386258640 813672394 882207427 34920807 1055022690 836423187 699544023 574551431 441193478 183272014 408869058 1016000867 401742285 669652925 376981966 857366468 709866424 636771486 421709224 646097531 435690587 775142179 50574197 563920704 159470437 120683884 21286144 94953280 88685065 114159790 1022244375 517066792 66660699 504672072 659319593 365675074 1029162339 961439499 626384709 173479179 563024596 311070503 331799364 411824501 837897072 1068575984 971108843 825538967 596655819 84028306 538408863 287910140 5580880 442171418 6274971 520407924 1043051507 988520497 52349055 586448120 54638147 1073618932 1004717766 499072032 162117597 292361662 310110842 801222105 922976769 240589949 70655680 719626866 1054765506 558831187 946553774 392008782 957663502 29921002 479651404 551109149 1006372722 92454032 630894957 299269143 68282650 618461852 89550662 781185631 731907058 589745231 912335956 108441536 552070170 540895996 979460251 482290389 764039870 599244451 949311512 349475885 542707778 977455754 658845993 426715687 985962321 423467632 383363492 656058491 155813762 734873873 589989894 788286981 391854466 509777300 179053935 563171503 858099511 645192199 676125729 998107674 403018985 428307127 1068099179 28818971 1001403408 1058674007 57865004 881040258 847384472 1020706857 873110905 1050689426 647453021 629743192 227016469 733411698 302442665 459632722 112461617 527947477 111976689 1012784751 274835236 151467723 721217077 1059820389 331493662 178623607 969242232 1046776367 396452081 808051080 885561183 17446221 479679885 814468530 988167426 49179530 806742391 428719008 439367582 42524541 211290896 671093864 627087879 710967328 129106244 53203325 665934133 1032375099 63868923 707898083 27496840 114278258 865455854 946508764 641408743 549688012 215619443 107357682 484010907 732184596 547593137 630945109 215464712 877389886 569287824 411483452 1031024659 545478271 313252701 791336734 592649576 824637134 1045939697 255973634 261215397 954019821 374167409 336858283 951728979 404517692 335748736 988566671 257373406 137957824 473963654 967033072 5104957 373346671 362226030 145351461 344233854 901891872 82383508 102820459 9681766 194656245 987160760 253319027 123239345 183045798 284407182 33834845 1038108962 345446289 609781645 633771968 404222912 1020526598 520434341 256999910 945909711 168598028 367207474 571750808 98571631 748993415 514016639 660476965 878699852 221035479 957102695 273069891 885128129 261244045 407029323 479118123 779298810 1004813724 238397647 1025165011 15078763 843768416 715475221 796540326 572707084 68898640 494868196 612108401 472912275 761109657 277106977 638636291 641008118 222434427 211531358 704635407 779155101 904548840 221943218 881537338 355216903 904817638 948740013 266802606 573277082 623965206 874684202 951377772 296389258 698688446 63891178 1037413354 485984068 699895421 282061007 763208624 9649992 552152816 921324854 103217045 1044555621 491631557 475391832 941855005 349628992 153437265 214785891 132011116 857480448 1053793451 946907896 737519323 117130453 437204167 860301224 242841866 73139120 862281093 117407442 22488049 36294672 90212055 403012344 167746503 215792558 359160948 470067585 121671851 990828815 526677084 976291344 755167309 18413238 789659485 724739122 462659259 87048609 151100104 455246400 321317335 33833101 743633332 945427901 260196150 488660678 683669996 306044250 3436065 678627411 343424791 622804601 449416245 634640558 86839412 733832711 999867758 69109989 890474370 921757416 757163573 287604725 876128399 802021746 867807255 731137773 805072575 830934026 309366680 32918184 905290316 404552699 871204956 324822931 627660924 766829376 700808531 347264379 423951953 411106806 273098162 9674819 114783084 729794038 344768975 874916042 182637072 854620534 976723168 49083320 688505192 422795487 848492570 860542737 616502153 695861518 393625834 906151526 1013730791 410223266 749528929 570690641 86958858 545091614 339272 523993476 297460091 812571841 783175267 907660015 1064917207 997471175 40231030 200138585 1072078607 984663636 349147352 141745374 265072880 1003148165 950297101 221276606 214269530 995279861 21061915 589324406 388743570 309977918 371747350 2020232 965785326 190884959 1029291731 343544059 144542567 649459337 957629991 947637347 428288812 157735457 368907701 619677681 953081844 185515471 929758551 195690521 1018838066 406670369 912574897 269973264 823027036 641991598 1033687387 577273055 43902114 470951615 860830176 823145713 826648277 868795406 900334779 989423224 907421537 11963186 689401363 345592248 319684750 387138548 783994363 525209177 895786289 436662101 777441555 365670188 276182777 802425861 838208769 273930471 696059127 805168397 274995585 717794728 70696899 650337251 327175093 341506324 932686912 426021907 520955420 137978456 113272427 401800011 429636796 106874340 842616888 291679971 234604946 52239419 479870602 370437345 515173388 879216022 57116158 1033628951 418964649 214128979 499764921 471832838 326295327 653197453 538303180 810863312 688629756 441099699 975637229 455180828 487873829 581948017 999303041 700917257 638356300 559790722 135595918 386121688 323287702 928071614 1005901784 64605524 168009665 534021515 433202632 1061580473 538486979 284837422 401557455 808612665 299522856 116580374 216471992 762269241 764579791 879097401 692804216 836949963 334716568 761014914 783604083 481773371 430126731 796025698 605689460 121219167 193426766 1012561438 797195970 381222934 24641746 127904218 195701757 138099695 104412799 670936724 991729530 503890619 4681339 797832682 495587296 580307057 84866265 800259743 429879816 844804473 606843978 877094395 600318056 151340099 985383221 372910059 946631728 91505116 808070316 195528128 257046403 448858828 675434045 942448130 100615652 349962441 559637052 704035205 324465121 498889191 455722645 395323737 684726451 1009250230 146561604 256300521 779221789 403472272 198893758 564457288 853368792 197080725 373641959 49316355 849310161 860464457 1068180034 317049382 773715959 1030617023 5328009 727232607 723931094 189078958 661125657 605676134 289618734 875679862 195520211 927561069 108419521 575033033 343743328 148860918 320900132 437339557 366490618 682961943 371287512 323603347 847884048 632220884 846593668 511691716 143591141 828249726 179037245 13669455 262924048 86738102 282823590 726893933 378771742 62416286 46340765 28165582 343936117 206893453 993999422 663689815 689155768 360927759 258608514 1030883169 514375813 326891366 215048761 319204627 614834771 589808421 351541501 980998000 635694037 906220217 71726612 673609083 881598112 208793687 363014190 285538307 899003119 663270988 781459027 192486767 584033890 701461954 285065435 1065129278 926392815 909221298 1037506307 276389668 826672372 963224728 836409452 1057039643 44637506 143472082 530979784 517471731 332482419 588428190 565891123 178817560 162501706 622805133 120288030 210944246 198003295 124965790 647549648 568193612 759742633 802685518 681753170 943363370 616817293 990348337 504201830 780525299 1051966488 583081631 970033739 943066051 1057920170 782969526 541132238 908680350 55494189 770230733 263902193 331042380 418338244 142058490 703208527 409953607 1060502668 449039248 660506600 540060679 71092854 480860078 685302553 1027057858 280056282 378645328 2613687 154382412 716014112 222217144 228993465 406089872 550195666 1071847881 635351037 743735247 649127334 144435264 815747334 1026991994 759863086 907773578 550800501 697180267 777585574 138024440 245920328 344071126 826686655 1039511015 266903488 318748814 719412558 583723756 576300798 989213881 611810139 296822099 735750217 579423504 367157760 298966356 739502318 430878413 315878717 968006713 127771025 19145657 415726623 426674641 773978876 611779122 421643617 817988002 578689594 1015864378 160330389 807309568 480652457 764286698 778968169 25016386 68536522 189162111 320956228 960606563 295547900 109121867 744461761 371988861 721715543 932464937 788918596 355563639 962489747 854094815 86433700 960075045 339565089 112264676 438736596 493009405 739046435 154625852 635425939 582087004 867925603 59986501 218390041 190946626 54144904 864956386 387296065 528006702 61861912 806919991 8069565 512632659 146867995 279028171 252656064 376500597 516467705 765950905 975266960 38200838 964528898 490087084 7124599 736850634 335725098 572147841 801737615 1010086953 146612448 154154629 592298127 838009593 937886373 168363653 635734267 664207367 459893856 1041073617 603090585 711419523 71782237 1068618276 5129758 495400593 387694461 760171164 424936629 415952802 322507312 587941540 1043282014 384749932 776468499 382170768 990395565 812141913 204266924 50973742 53815343 86951038 258988864 155532235 406707795 726385752 464762386 872604597 223145538 700612644 291079002 1037969697 873573162 882499471 600774528 528678618 608167803 883744651 173255172 181848391 139908673 312141845 967521940 121613087 319327644 1048890716 489175511 206976488 419755878 938788965 972956187 280363798 931320902 656896258 734171355 624701722 1069709922 590389279 599351819 720144972 1033545451 202101019 878898002 526043974 1029617835 160486252 558801799 40148932 414102441 1067491959 247950133 578634473 995722044 262998211 903786534 494381083 271884612 283505631 847520181 571227149 301364856 832599293 345204456 112293680 276222481 522599512 341732383 245794818 648559513 771191670 1036929801 852166832 457102916 911340076 16148621 235975668 908239355 220207245 798039716 838775978 631843618 741321802 479880034 826561655 641606205 621663050 286712750 140060239 125865010 525985354 749964267 671893665 887742986 269944692 125451163 229708744 101402100 490634913 144468594 404874801 810553487 515205153 740291110 970426543 1056626755 120509896 817773519 872998108 525885340 532255198 558508980 709445410 254381412 707346786 104230873 623548958 30666562 397428014 368616390 639174049 902073548 659619722 969378295 1063495283 838459397 110075497 961889832 242236052 1065216443 541801002 909315000 523766950 188076006 728666571 200725573 657731008 187483114 262636475 273923076 956692138 119089520 117955424 977305555 906655115 88163742 360608462 624993409 564982432 476074753 182721618 635956706 431268125 608257251 450187195 795266106 509816987 907493722 407368019 504916094 405240803 526611058 771945607 307722881 643628045 484228017 291608555 865906495 825039855 1010522039 266182047 738490192 70041270 805526967 576574429 363047115 310374311 785520835 227517893 646251651 791460826 138047820 855233797 902616626 930674318 15123134 692085757 1066137724 939264208 197638451 383665163 516486885 818379833 520314795 656518414 761228663 13754445 428031212 792897458 12321787 399366371 499671701 64402651 373710603 283420208 462183995 544620245 341901670 773111850 926364134 84921197 99132223 442036096 469462835 916448890 618557392 838514900 193859828 243577401 640886304 456383866 994536827 707359050 625348826 382588160 450365614 461954337 867458602 1058222026 500556479 927537422 350505434 369875526 304004156 1051646885 716294766 912448100 232839541 126260786 59939993 521213893 769320870 8077684 51864290 963221064 971722148 741099823 351936060 1004376641 186272082 498318417 574654216 684668742 841988871 409898531 293420514 722028132 563760213 519302590 710820556 926287236 559354924 974653327 746461506 773112599 773312523 994563236 64815116 135843070 950742363 611198916 256008510 1003822970 268229074 79458923 540309921 209245470 80906214 1046351039 778935851 424378344 823173732 931488232 1058711336 796781435 492402471 862414077 144933927 408977770 370275779 1067006829 267965659 405868864 682918244 932210657 939141966 871364297 69779228 316660548 86613488 1069330419 618085723 156487015 951308258 489184525 280590807 186467948 361923683 674326508 648130348 876571349 141197040 393805339 368175617 1007938734 966044164 335148481 400736925 1031630575 821147211 697314292 87467097 435671863 166148588 822449368 298008766 640325258 289304868 1006895833 517628366 24100385 668984129 516993295 261021060 191243366 168430561 974425256 446013979 1062361992 996673356 658492748 828645039 1030378607 36428211 190159798 491282414 740024524 15894992 48275299 576996631 844434582 713939543 9624292 617484502 748282080 661430910 432638352 432807028 578687441 81271390 276421993 328203701 221556762 99518699 714364726 942151354 564244711 25621845 451635011 766782179 240893097 770690638 201581251 284057720 1012533475 1018991620 927056271 754712793 454998838 1001690733 901963800 550668759 636547539 501778468 466868552 404210529 951214063 160732816 682059404 854337138 12304560 770572815 53312560 187416545 544533907 439570408 542899207 722037702 828918609 726748369 518888306 1064720674 628342913 759802676 607892110 34920943 347272184 1062731533 664678712 325344982 891601112 608011656 648081689 744144389 399703514 625889927 456294909 940074075 511865204 958065933 134544109 390493632 895384716 15838189 528206600 196599095 29227241 387925495 449200165 804747500 883345032 756449985 176546361 113015350 510543864 408585860 759016352 91910570 154660424 553480264 936379578 25812336 498094805 258280056 794892991 230617440 354218995 584591081 435864242 19169928 179692461 868607759 259083067 593044651 763565962 895607252 900870010 393627737 406463533 5037116 348331011 297168214 726121006 681392494 398374260 750515761 976290590 868397435 324015227 807592313 908675314 751651586 837076090 1066613041 745876263 584337375 52273105 404465401 835060646 319347840 433783318 207413039 953546013 300505211 937164318 495497002 1022275759 50549129 380739568 424398626 57777113 30618824 632188453 934056166 707339862 359329791 306095785 350466694 267680417 624492986 813076254 420492166 307876424 1004619724 755235048 365729968 533612480 982771013 534208496 798306465 102833193 1019445390 325206610 371097342 471742798 643175141 851716503 72673889 967069539 535672414 747843057 134253749 965823281 961257731 455935561 610486913 603169823 1053548308 174391488 954331548 893788469 862580024 103066342 226261119 821052697 238433523 404983271 543200627 351790087 640270059 394231865 769031073 706407442 1026043984 30146722 289371686 977381706 844035846 340723470 465357038 483587162 686511767 793478732 386111359 566812123 255060198 948117804 481188822 169788566 568207064 848900333 119845188 536672556 175674153 405972994 752567024 590904158 214520787 625073736 767037830 60727871 502250154 257486922 780640403 354606543 763500915 852334988 1008989697 626451462 90200377 706919294 355480540 326282044 836120575 737269413 821209961 154171832 692544724 100255068 111474612 887132287 560972281 1041661241 384670932 924862393 929770551 358733784 3275025 279585987 671361153 484433655 891262531 635218209 19109166 902096117 822410495 864200822 23599590 789815091 837253150 1018324509 351611174 844539347 1004327614 829847973 424585607 846225647 445121621 293896582 685639484 1051488503 262237125 235859188 523634362 255071226 720869182 700507768 784534964 168535875 304259104 1043556501 1004474221 448467022 646437421 591968428 132693806 948765739 880219882 496031770 152404057 675618922 593489099 93029102 139495822 942796301 151696333 475557650 412107490 689099928 718288915 85821418 923208985 666955721 314731944 543508251 806850396 954920330 138094474 880606860 522279752 520176304 327699608 51766357 127972396 488269860 649150391 40014298 206266404 5444040 392810389 128827568 1023636411 881305071 456647126 692284463 269480164 688236855 184413195 245438444 254873000 969856952 573672407 1026224204 544944975 247641718 718712062 675088804 605432952 703236935 822897924 363595926 695257136 55367127 802222099 67078521 345402057 751682679 377799767 864127467 929922210 685784708 891615681 751752905 208167028 484594097 267192316 836304678 738713344 1054032485 770823936 550696368 480983198 918222639 607078721 695190017 940097645 154815972 15781585 958658198 112060311 975185070 175573430 230391953 148641405 321523243 679787257 365214069 215754779 916552070 990449439 290012132 30240118 27437982 398199508 104030878 9045901 810518082 1035545915 211997662 244617621 655753271 86112818 784909710 1031018570 143519481 789732227 871102348 85111092 377216532 999809799 213800736 1049434517 49160480 527909216 910809886 1059166741 256331904 464655954 265155135 528615611 1037063348 305292514 138811413 832885985 862652650 729625527 928371317 712438079 652724266 474669900 697420468 285302470 128639629 607747041 303516445 215366594 715639651 672967612 752161131 462628329 554656707 813808184 400470643 816280226 472391248 352815329 946477727 600653893 456253746 461832425 761027852 565159095 396144157 340383428 149341682 688238757 649526990 425122600 800054745 123044325 676495535 100827988 693673700 483816192 280122500 389265248 793189122 686969442 610572186 795881208 668574689 1063347988 878318320 1047766772 701253917 107315933 479785532 570075928 668005238 344512962 50623162 249761768 703905658 97567774 473391345 729908828 144080538 451983690 736909041 312004854 725350341 301288286 203368428 962279861 366111224 651224280 315072320 726942026 505137598 301465615 112846078 1059838364 116738029 354811059 862795257 731425521 59293198 960831558 138286668 216685052 241826510 999520390 932349392 318933220 348686453 515888316 241153282 873530170 866252035 200401090 967280337 269016711 94983042 702954851 18189448 167942665 954203240 30794247 629003164 686939360 1040774363 553003879 953425744 388396803 661092769 991028912 922644462 44251467 72953618 468630211 803402235 373801712 650972661 476560125 608763082 804566714 868847164 1031742038 125052736 675160999 499281033 265117855 718507061 692736783 685522452 1035656485 407478137 472674002 665435045 307185533 124662153 372695126 366296922 364125430 237291359 680138592 995839941 557110678 48064404 852117142 340604437 206465356 130349995 155724942 647333434 209164934 68618980 656280858 282939699 189507311 928831817 961495326 429874340 608082261 105888784 954422712 110201642 418891506 1049224948 139212796 746036418 590278802 590457819 732832020 475333171 529589943 270075382 1068204427 970406801 114602377 209847546 708084557 479707425 201216397 96768006 477630325 910539543 435641141 86263399 432947740 495154143 875173639 597221488 53477559 569618009 811472982 125285971 475929084 631492046 576773226 938484442 328815306 1038944575 138796851 798146026 1023394385 1073559331 478583298 892018748 421286652 396381449 711756446 574783570 534197490 195776464 846714677 49131739 873020878 450792467 821326455 1000436068 587478168 865142461 359865012 300613645 475760499 1020608678 652987777 563715362 268991587 1013142872 22995659 391895563 336446028 365536344 156001121 851867628 63368169 435409727 973644232 124590741 471578468 748653282 251045619 562803016 939384276 1020327078 432604476 467056189 592957376 457600864 537598776 397363039 780202074 942888720 487781877 320299850 104387424 961077854 366549204 263691483 289811055 656223235 956799044 686959438 31682004 743590407 121646057 165738009 955151587 129265382 179704122 104048661 987152812 1036638271 698438017 629590014 985781136 791031485 605711434 178995358 155641669 141680607 581931767 863252145 640128406 913911188 263157641 869038446 729893556 858953980 204486632 267711113 356111425 904725053 759603479 806888442 929398257 725354933 755456479 457500938 672605369 724502236 375947740 523675355 651797298 1068577407 429144822 669554825 364855351 163724261 867650745 500024086 470662173 215107580 604758130 438462578 226859794 63603670 888400993 27221715 401908921 600116167 614496084 227309440 1018526153 142628504 800286731 377253573 741856060 652943909 1039450279 790868361 210978295 777711854 558762899 1034262463 352689511 70609584 691884449 9371094 698375657 216241997 754716188 503751484 287746219 997171649 915038471 54100395 585245510 1058256294 412374161 269137039 1063746743 198556322 482248997 626863385 2091664 766257527 744268023 273287600 657399382 939083503 885134778 115316733 74632988 174514397 31278033 763825529 234380568 770624034 60563779 175042105 730301810 170563502 608909862 898739340 254738667 219680211 184019780 310627030 713402299 56885440 232083134 929137471 843097678 1053990993 1002986029 131849317 575724614 349667694 106569259 940826132 330533184 208741138 62809934 951354946 690031879 187725370 30260691 300036930 604566201 461707520 52157157 770333987 898773896 743975575 701867237 247324971 627736513 151198922 744936496 642164410 708357069 561792371 312509001 789951703 491346793 526423858 768933749 75004011 490601312 580962510 87126711 468910897 1028824473 279434592 499186769 452062563 255834179 953079411 973266226 367875953 826995650 505352204 569039810 84472066 887592377 361545085 389610913 421099239 879520472 450470238 574097479 744334483 152391457 755492590 388745754 882292630 198090816 502045667 330033836 121751721 375498922 240508461 385274869 4319158 464365043 697947710 702264539 467504932 1044320707 850594220 972717233 192849253 726888430 573865060 791962977 157233208 419704237 33444765 386586257 406503460 1017934115 128965336 572590225 975831177 1031750162 626118836 150132659 759770259 37468019 784053706 792277405 380313602 1011594407 1068413680 1056232944 968776578 510962463 518233007 992759931 65126514 174115589 498836394 950133001 548400487 746007353 713565709 105011839 766549246 247344237 884600235 601059444 582014448 870817305 455302443 63830711 691860732 1046549035 756242185 825961230 409714500 877407551 567220031 971717625 585661026 12893072 990588394 627377653 440971533 593250138 872417574 4364644 326846203 871042234 743042828 785990636 111185691 653942024 638103903 886979551 163277823 651526891 1066523482 414428506 8228328 589585699 588637106 671842206 155241252 409347249 697890100 162746899 501118379 878020064 334582059 973282295 774187912 413187065 52284967 829522483 771234937 24049711 768829399 49086531 466325250 3270208 1040081987 750989953 126603192 918189587 530519945 619934182 68688934 985538047 1019151124 457120302 300314073 30573771 20599407 327853989 456612625 923674697 401442534 356238409 686265282 42354926 882777766 655170731 100058677 737761766 140374051 802730891 684546595 507235967 292732809 431107004 767775361 362277940 821920275 755508239 1008004073 204607217 230902390 801257585 640587296 137361147 140973640 894305739 343094183 681910020 181141965 812075114 341665162 528736587 954979402 536816068 988557200 475110132 525333314 26811398 96290144 376256107 677684639 172324045 267432704 726724313 143424882 528703338 698581147 407449752 457852396 1023949549 123654381 424736432 805970564 504346257 835030044 942834511 1059575145 312085300 30170000 670487556 932611878 273632868 881913050 898249252 659331009 187129639 845368868 837854781 72558673 219971973 52627951 181515774 592415174 404461756 298073790 167807428 268250125 211313188 1067870546 756885315 360595216 372166875 609958691 604727511 998401122 461438763 14339704 179466782 781183297 17396495 210847742 141099295 829521451 184266025 440417077 872314686 555861756 125621288 1068128540 900795882 63989826 288759837 529624035 336012078 915359285 97796595 2003156 808636855 369929611 726731311 898382963 62468615 753676353 1070965480 1058459847 866875605 923027623 702448104 370994119 732051350 335940716 935786379 436037138 1025139186 23479294 642917188 313943368 671789117 541152849 127590749 849922718 163179654 627428217 677006356 532238346 170886651 47603901 720665956 338496237 197438242 510392022 234480331 268244285 827685571 914849528 683682290 1056979728 534580662 25781294 111664075 472088156 778430752 87674684 477032669 478750404 748304526 692656091 349902889 312022890 125699234 856656968 929849336 106512914 190254550 340052811 595569067 539630053 620363856 454661643 312591105 426277705 275559440 547605318 686894125 1071597481 880890737 931181858 655925197 978447682 542112499 193699180 425358983 292279904 665117541 764705674 278007314 519574318 19715714 1011457715 488015547 114391267 783859358 1018348911 176177629 41237684 598940519 827944116 1012928037 618582162 756960771 364640838 533477773 996722231 95735554 701103042 627657693 323443929 619628074 20682200 204804800 109288250 357887498 723490825 489925365 744052059 464801988 731788392 474351352 659378948 1044439622 377762604 931492010 965886020 1058920053 306088721 694668125 961858029 130482462 1070818479 461504420 431624913 13077712 1013884922 217831837 521734795 655796642 121696347 517013299 540298713 480657875 627499743 121756728 1052883100 1041657481 204832272 785561535 36842774 890788417 717076997 24572983 182264611 2618120 493952039 60157529 575937869 762022778 317305674 860483556 878022531 1026662684 191507875 781091755 870828538 832808214 808289005 497912644 780488309 645030520 691130677 95126848 696212348 214314764 984894403 276735173 520857658 837954795 645162301 1055984948 725784180 504029526 132824036 1039944414 466727744 24184921 543961888 180700910 375989215 844969093 376799871 426242320 949357616 63306259 555818033 773942003 823523635 705026605 415080026 400576171 769366774 729611106 99968280 1025251794 190027535 226914895 351656247 499641359 1016931366 997409173 440947987 969706383 967833505 89382916 755043739 549730180 469942900 794854883 661627338 819290799 961850924 94471898 302291679 1026926708 80094814 500499541 690268170 855445300 613161543 734029292 1059324431 310032865 302863654 666110344 405935252 16061160 924080401 908051160 707878196 609663209 766151817 55410065 887006072 704400805 404148717 420913362 1004647478 650209086 818318187 705729604 914674052 46150658 687895706 465795966 983992856 441596618 1021305194 833650166 623462026 75572895 498095384 362520300 828836387 757526511 5297627 379232408 604216913 364422133 446286462 72533416 426723344 717174311 698599438 833123240 323192588 531735679 35905001 409383771 960476302 714592348 52805450 663985449 783551878 95561210 613633445 497093647 35354923 16566968 14824740 262605966 481127375 806000974 994566722 969564002 365817558 941099719 750303555 703807054 567559612 807004391 496516498 281971324 768048200 214215947 759335636 896584071 22326841 465670515 193609035 789711444 67417104 11872692 496063540 58200537 50788816 985710183 880098516 285703666 488744533 864450698 123276005 544732306 466312285 540164676 637931955 173200534 223745746 115348169 521620273 147178097 1030907612 1069858087 568071829 199996710 478525715 673952083 709030588 974315762 235171651 988662778 19750927 516950279 888182089 1023494263 536908799 700035030 1037696287 801747760 497438506 224203425 723932160 490873263 482045185 611635507 1058464672 247647286 575243291 38981149 466726104 190801418 636121254 791520895 378767281 715037247 258255695 610391333 728525164 910300141 571385396 322614573 1067474258 516762631 143272763 1043201783 472852975 849279147 501561146 272364322 217465479 467404268 352692390 806458909 597556928 492974485 253201759 221314329 1048049205 468708461 236297463 980453256 364926829 455816153 213433507 74567230 513027324 2354780 430297631 143748314 967380186 377540010 797293253 265810869 306629240 558962016 1046543750 194343899 762114295 772140534 829601044 173295767 830974116 883612997 74126649 1029816019 263564693 1070006555 341868983 81533827 865972906 1062189763 553811028 759342824 185914983 497160987 320430462 177388328 462649017 1031384301 982778574 406165144 940849447 343530357 581727499 203264271 229923896 212551085 985967616 1069595102 576769632 650804396 305415918 383223845 304702725 586273487 442608397 878538356 708008934 23609733 316480023 773864851 188526083 565764296 993097583 942991390 796737862 583309065 999895178 382501030 580267178 304475653 111752708 619376372 879762505 405627954 958976563 633686623 212822102 749197012 22931621 586956838 1016450457 473479483 835236609 632860803 8178265 935401354 629603011 1017699138 960004321 520024700 12887942 187461654 1022081568 594404188 805884501 743088525 503881204 453128781 333863636 649974364 528244375 938104061 827248507 651331630 542876816 286825394 377968647 998553393 311564933 826860310 809793883 130418703 232830092 633872112 256320219 41007374 355158495 589850529 881919149 254495277 230031921 17940666 478809001 535564291 1000302141 466995227 154046628 1036998312 333399947 606392698 889039954 562825894 106000612 668071685 1007539862 397720472 554743828 12951656 619515217 971984256 163563923 1039696412 213456155 476981279 532508272 951754159 166968180 459523585 23077689 203380157 88979596 660752813 647591335 1013689031 564188423 912454724 280994292 407205365 521540866 548310220 714424993 609923435 25092857 965638201 510140384 499468793 854652361 700257015 838463461 142102041 613979496 720369603 390015110 1025056317 613752777 134852659 542566730 928503725 517288016 493780214 96921603 138379465 549829884 943763332 507190185 651221512 743865233 504183387 367787788 395510255 950547895 322801114 1027522146 161971025 470022453 1051209863 1043665707 96802642 711008671 563562857 83897407 778661936 1027779439 414930185 486328323 613835345 295502179 477548621 926838550 834674204 567944600 34680201 506279540 721500924 777625322 1019511020 251625004 809500034 961507776 577879720 509485023 788171841 270152552 634689964 969112402 149478487 24132856 471647283 448602423 43901096 417454584 76070243 54994012 1021930775 937355898 160709038 17155667 165917005 505565949 424075363 124663196 456007086 644241466 711023218 781373068 1018866414 386794725 1046685888 1052722750 415563155 135312258 696031108 3698953 255302944 921297891 430183072 53324708 168452226 589043477 246955967 324243951 234287637 522464314 193132719 230727422 616557438 399241219 530078196 89553983 534691319 966082231 683765585 865052648 244170689 486231259 833233172 583254036 331194511 203469043 415366401 19705515 903762920 899758923 304936167 164837018 563199822 800326378 826987447 211285010 123143383 707753852 322862992 906735271 91478164 819800478 707898502 372962065 262662599 162553601 107407825 65515354 552636386 1030050784 155253275 511184565 662988440 8892351 288996453 248048335 738325006 594199151 366117715 449341647 642227928 339718199 176998651 392849731 96091270 176393739 415313247 188705123 502587250 235791690 827465346 258369707 381044505 373524731 270931298 234333348 389419697 955005286 569445515 647113980 745573962 27165221 804874363 373254868 868830910 278778 349287274 129597055 1057062284 784590008 967080005 745781185 219395282 119216044 528458150 1048467421 261262955 124452678 66865504 149855825 642509638 981742737 870802161 300560620 618525208 93920792 903627178 213049661 493667904 913284523 1023418783 870990081 282638337 401002530 137940466 494642973 592658005 126887859 971070786 713576786 669814537 1002337099 284089257 97757994 355406144 860326512 250180391 660161852 1003763205 1022041125 5339066 891166358 229084244 715539196 121696123 177223637 994375851 878855712 303932999 328611542 563759130 193943891 104584843 202180896 1011429789 513751408 267750821 90608997 948219655 532737089 426826959 824710711 535875816 504245600 290575505 780060420 205849442 156566424 807850812 849027388 441071988 356920241 45557956 687039623 53603499 609242483 1033399734 955612936 775471049 931963607 1021657214 444451850 533337597 973548252 293406734 139092535 71876564 1036433200 1012486512 375559957 646106196 289937886 747864751 218881828 516013763 733274405 684991133 134568066 387958139 788525446 673868651 750866993 178689023 1060525377 597314963 534336147 10633420 660213874 982445033 174657784 107885411 942703297 1057945668 1060633134 422898712 192462655 536455682 22356477 65178277 839545525 902225056 750762469 402241833 50577312 153205091 1047573905 670920454 219112262 496299937 539159062 502767082 1056602917 468437804 54152833 658816209 861800199 330380220 2711506 338441967 643482143 725782269 699299362 69550788 72777923 691706205 925303036 64091659 9620662 443767200 272153280 427668166 412150449 1032360567 767345164 1055912892 284769504 264159036 862528917 483505325 297550959 722551383 607795482 707738657 557754829 322499824 332378791 516853584 1019234463 267532818 658995381 662563371 894549733 896845389 502325319 757111983 841165604 258255400 598635808 402703205 322829334 143437468 892748711 731388096 486916993 262574296 801713022 971843014 85627478 545684894 417152540 848046935 499703372 715757067 794110950 442200195 1069500567 830580283 283536803 228171400 730975300 209030190 539946879 525186768 923769373 10595886 299379728 592237004 400822980 205259505 128133913 78105995 1015502399 331990300 936136937 93504338 83685065 820538065 341464472 382352554 223899057 1057643593 848464563 282535629 772667683 648599616 103706651 155685471 218928964 547984054 641135001 821380631 9266547 906934777 703337549 15896957 625384466 732347879 20108187 780486096 466681127 733727564 1004192932 151350136 1059903811 429837060 683288006 893065562 1003193641 740495605 362522925 143457334 182394529 514875111 462392156 818510638 976155871 700165381 361124845 789376092 186654857 696977249 813563308 683352865 177905045 141082048 866272558 789041311 583596760 557528418 919291202 253086739 558829814 775488700 430845959 119081875 234359796 612249754 312590797 1053356777 531929426 1041047228 666954134 188522686 815143070 938891789 287887222 154081009 620491714 609346419 955466351 960101647 821150091 386042125 968134052 250415403 602890321 150938641 765388696 678862603 10325327 148500399 254290312 108629912 674697018 638400922 565468189 385242828 441762232 113195550 967851913 1025053745 310269954 126615252 282453146 700314512 448466718 1070827365 190632618 106840142 484177605 898976418 445743794 964090741 551524057 405494529 9284236 367616635 913030380 43885786 244232058 522628132 226856172 398762771 302350446 614628932 391216157 845720685 495665685 677475575 548919221 715607934 884893515 794017734 89856963 231390356 223983029 787645647 746708283 968615411 325532442 775379320 578378562 292034287 226302682 414539332 187285689 183536220 1013502305 393255230 234988650 257633239 759112709 856196299 509491025 1067885618 414571414 730385880 43581933 138020610 764516186 320019337 759595838 827269257 506146980 347438020 593113271 664233744 524425005 53086217 849913910 926093177 55415095 847454856 732166342 709493196 663985621 141618655 877588490 77333297 702992993 719552253 866325083 32345527 923532210 903488830 518057615 218206478 704578654 929992092 1023029677 95222254 394751353 783706148 880528465 309187373 520337090 548446112 729636077 911373776 239457436 504252565 112675470 1006794358 957543347 22595470 372898395 847081612 666195223 599015926 664868758 1032888539 777593618 274722887 226047895 92696070 270667878 866378142 604491100 41538392 245276617 656926970 1024054286 1055730927 369121553 578346758 463498488 804344050 538240117 901411121 1064819984 71430424 901591397 198434851 62374683 738442465 76539949 143871257 884285880 304564305 598623552 916499007 630771042 1020022581 653308461 583763155 423392489 658711385 683918932 585115466 979913814 385841920 103759339 912977085 193731941 369617991 892424337 591478579 150031218 116217488 687429168 964884244 635784640 1027067409 252661785 897168639 296143714 479865886 179748809 204620777 448590962 712981421 356337030 871293920 773470540 722582726 463977630 941251255 57085712 364385233 152222077 3314376 514811303 648253409 392281290 95214589 153049751 280804934 138445586 370381786 646292955 841142674 459118605 105086175 203828368 508852305 274025784 648969476 586874155 747961999 285139035 323381146 615362009 258073760 55340575 981288165 185935623 892654405 1055647777 199118280 322341499 947731415 931278560 530709153 988835733 634941535 631647181 31486449 744811324 883019730 126388055 326610299 181608976 544419231 551664173 129962716 702190721 391199462 376658617 712297961 1055809463 785674183 1036478840 138265126 991616354 978031368 337288405 870952643 449833565 156983223 879166737 102570768 523912519 882328893 135899910 749613981 101295184 160713694 834506992 807732249 624255765 1013269670 32072283 870505250 38521699 880003388 232596541 1041981615 417985887 620912079 659409458 165278568 499798619 595306223 641429545 974847339 645549668 887518103 1040393058 647746286 399674407 610005600 148730835 902244142 11314830 254504454 390565293 26083860 6667853 929562974 479497673 623340759 727047727 404108224 337236968 835003620 93912918 398387709 552595136 531434369 57303799 674696165 690770933 46263431 461900062 180635287 92885129 389100949 644633035 616390693 374716179 918537789 834525194 367354006 272479319 674309652 407407044 775008889 614578713 600349998 786118455 88837258 165737828 362704038 805449336 403600478 498672768 851127064 1058017135 308959251 28939058 739690358 426067730 791354255 414907864 376291985 473907839 829408317 169177972 413554053 711527122 431181555 755821142 1055931457 90355028 60435601 531324298 471324820 812077896 1011396583 525948356 27980520 891271423 490513145 804993521 33033907 277858686 1043147944 154544955 546756697 7807237 245556044 1026762222 497407684 169632078 810499563 659848564 479484384 14109960 242579823 333643376 41653654 663093794 180500215 492866105 569902387 523017395 333841411 241037367 572032681 906239115 124712772 902376914 1007237470 343702493 403576889 510641859 183209287 128241220 978708394 568442996 1020278374 1073562851 105069042 995508903 867514257 844327049 759309907 227321862 244464718 212952856 614903561 78595771 789913204 387886446 763915086 687175117 1022769294 235399371 464177667 809556026 551865329 96564275 1002753010 98705923 742656286 349674783 176798682 107355028 899516559 6133802 176169953 310365237 351771587 406445223 694445979 60175986 718866570 426943644 123310524 722028239 679616619 989532639 847817212 1070332929 519311996 381174423 217364618 746992994 513910218 399103510 857798864 751314548 580116285 265296918 818585836 957071942 429379427 236790202 1003860915 105748950 490510116 186575838 102423869 1048475165 835950668 284505388 111644185 360445560 1002541 842344070 576091710 612014847 210188914 679004456 203960395 516048688 487716817 660348174 597536036 143856480 9716890 326087151 134785780 1009727758 582541178 45766277 107268098 24533227 794806785 438324393 447113294 813181700 74477980 381245774 252344069 635441181 536201238 741067464 957798204 769537518 118874049 317340207 926516006 145093800 466883962 360271131 86280711 415340767 836649352 150711431 662954400 880816205 413998767 737187903 11756777 679191575 236029301 264470556 282270676 848658726 1047960018 311355810 587901865 109940014 22882542 30442224 942168223 891743199 295770236 127648284 488694635 162594606 794389476 265097578 296546632 461795080 675135935 974672221 454513256 637587064 487600420 647320188 612232334 38459018 320539259 801205375 167221366 150786276 876725980 1043758613 611346257 166447500 172267046 185968103 904578370 771777650 642562336 4328015 64632416 881373124 854664615 477837085 1049189718 420153073 170875370 472574700 626268210 443295578 649089574 812659084 497532278 855789040 434760323 354166256 458917390 166109977 792598417 235959786 865167381 135220134 300002249 598838087 734715111 312054831 975843202 643900154 381146672 838219523 735224340 1067472633 1053450377 190860776 316866039 911807766 925405221 1021705680 18131604 113123510 1050743017 398829283 64651274 690115396 1045968413 108998065 859671792 386957789 662074211 744935003 672133879 183919464 921357915 475258870 451471535 251645098 788358270 771096602 949312274 1013627663 395522712 94455323 463868485 282410572 520240321 33184545 534995950 1004925632 242787700 464533190 917048753 500093556 727683800 449742614 919750751 743481003 783667387 342655408 171419970 8157267 89951677 463531697 986646268 903924158 162413609 800548021 909871066 389891807 136146202 380147903 407042987 1063960451 835118390 813658252 984207195 313602581 201971220 36509877 256755625 285460964 201140480 1049619085 154735980 315483151 331927339 448629253 201829751 799976850 1067635394 488730839 354943485 201220040 512033721 538278355 911680320 859193585 478846307 92506201 627282614 819446716 136567085 308395434 1054881063 683578495 290681507 830716236 875827710 790335480 764521457 532570576 776282803 654144534 114373673 991965635 874678414 668228149 1027406316 438914272 609297004 615251004 1025129498 1065212721 347086063 1008875007 571503737 513649620 12058321 471064552 141885100 729538087 742455892 37931596 419524459 659322724 922022842 1071940168 664565233 774449706 504381362 654769561 728389370 786619545 959474272 91622643 874872384 106505535 453212537 34802747 868919345 870636777 158928128 577448231 507557489 150995116 454727082 827177535 501864091 1014778886 30468184 310343494 1052764771 687921698 679655402 1043379001 199920645 253940416 283189111 422890820 1011637321 817393549 565039072 448681885 961491587 451983802 75132615 435174660 174490655 207029339 131006335 813041389 927798516 455705939 941380754 141922269 312490102 202144890 354210152 810527046 657807711 525917274 883561129 550683394 719763097 277703649 685594526 1060728769 825772704 532801559 707130040 619878787 941044308 1058470812 67271992 875132286 665649150 790701504 398025859 315420228 664679049 860704458 74484092 506858061 58849137 964305796 424235490 998008727 322808622 417754224 599110574 480205051 828095704 278506318 834825778 398924222 772345813 879330700 874209798 855611344 566916650 1009595402 392550117 174504514 131214253 730836923 21005628 179943624 941568559 472574837 548657784 465449717 291616369 687314250 1031686731 728455962 581672141 382306883 964040050 71567108 156858829 346908044 466358981 642859545 1032756910 769796618 140658188 86175289 655321262 607198271 597183949 1027383086 679985271 434671944 580521291 500635745 1009676126 126566978 524126449 521624869 264825079 524427377 701741820 921623454 208758270 363101426 1013369865 706489529 12429717 906469726 807445499 506587479 66708555 1007668526 1070705449 364534887 258405418 773488888 877849610 1054385327 46662099 517882417 839102255 919611487 497089456 946500324 325882255 632506440 661917950 856925801 932730205 960835547 328362190 978988409 1061429613 384706077 190618861 322270686 719070231 635603131 38716527 1043005923 459350157 668903571 584189217 89468715 505249680 635289282 433129659 863632788 433364920 903013244 352356433 91858701 920740214 726595989 973717003 330590396 538923528 655310028 954122196 252351483 1051253077 674482316 813711213 224223232 111632460 208287302 100910701 47750793 315548424 346843154 494463835 1006262051 449779529 170397225 833318180 349805473 832106607 389777506 161394414 228314031 706267993 33618726 514816935 534417485 382786156 194025923 536939124 934326913 1022009434 958940258 486966099 956681080 259345158 593414772 995986006 253667162 738242888 470399653 202773016 677836329 785654178 249360708 949666357 608185159 948251116 965704268 283975829 758671520 178213188 53324310 809431366 1043691336 564791633 844673395 377952278 245879260 972976673 75316625 667536409 493956673 633534015 331711055 717996608 600329225 365976697 464602091 361059112 25168229 1026688856 249989456 948087 727010948 846248318 877687770 1058855106 312544085 313010148 353746683 599403634 657688415 921750736 149972787 526486648 877482848 120076835 743783109 34721385 346311758 956704499 429208713 934744095 750823579 564952280 977559830 804908559 358203569 856997001 549027612 505341214 997797648 576037725 800331479 59419240 337436717 739961684 480343323 234475783 368937249 512140544 522088811 741331069 1068547488 792841742 773988246 442993654 629650107 123763850 687617680 359436330 622813611 118496695 339847876 759828278 1037495696 693359427 921675987 746463174 679797447 316645976 448062128 215118022 379494912 383045734 901904446 627477795 663149827 901960619 599942490 733062916 457935281 143222965 816492451 478852071 610744224 286359855 195085553 2061239 577485217 752971697 1012352379 286590558 773278143 610346793 404338046 751109670 40138661 526239862 456689943 217952660 1002677487 191890790 21104108 811824523 582628291 1028138336 265775550 40837273 93151493 780812902 225387766 718312461 674879983 816873758 929850354 342346214 575976723 798154723 1002256133 32175782 242458143 781878871 397034659 835780521 218085988 1052446352 897052953 531506831 931109883 249970587 693094937 396056952 504309709 850191569 364342205 11191895 621624519 588641989 81056054 796231426 1004282851 1032730850 949924528 677685011 592894862 807378390 277360333 891847 139662353 1022092652 411590836 1026194646 445467409 711609806 678442543 199874526 398987103 963523145 631689532 612473955 454860974 255135225 470651999 624783657 280831903 332538103 552033754 1071632904 713731197 368008922 62203344 543785803 169178216 159879305 293002352 221516771 349207272 248731757 567897990 189783592 335950757 563100135 451707343 753363957 488599652 780988866 65969715 581674706 1050833486 309770247 379405162 1025244761 334936781 529163592 643831736 987647014 18340199 1011205079 375767665 828625215 921765225 341950220 863074938 550769573 313933169 263943639 552074562 794653278 696987486 178562043 166088996 560299189 376881979 1049255088 865973794 719036715 164132366 54232832 82954255 982208268 26642924 598528749 927317207 607676057 958455251 1021256001 502517960 577242415 719825080 714920226 155227358 446235389 438193813 780999649 396082615 763304634 543562645 247892733 840490376 334086815 836523635 136606070 408093437 399343745 576101065 802281634 939142653 374153368 534713374 1059918838 773365121 60784032 896223961 404121897 852596105 43772218 844397433 70312196 994133399 770323942 79562625 669674017 107258725 884688650 819308625 612298485 908504034 199939941 553641167 64602724 81604959 392022396 972616885 87780407 914632212 373295989 217798043 200294204 611714971 383405365 1015709845 330606783 612058388 479047372 806701656 224389497 325064446 334532816 184982373 630235919 894868728 472586408 44162840 1020824936 79448451 860830523 999981612 406163795 146541454 215975196 240876301 157143697 636616168 686150961 152560691 843673460 943425029 215974671 195419382 272959478 213604416 466570791 680360773 980144643 51629241 934064149 571644622 574666128 1423778 828736054 807834945 540685866 16409004 881652706 578977802 347018347 838679256 5378000 40089706 645388413 281340114 446710379 873624001 801093986 182909707 574115107 457203817 22478032 482146237 1044183210 683878521 1030705455 200519291 1050297935 822325668 824327284 827010832 709541766 450442726 486997992 358199528 238388675 67306418 1059909958 358569983 360210989 5215714 837742952 973222656 106321600 785550240 200566297 2290765 777685550 103377738 61069303 198608301 158063989 348884176 600225518 893545987 148379 74808469 766856590 941049475 821773449 256191987 963405114 336848942 687185851 645480310 651493851 349646674 420241606 782424695 843055979 1010069388 332609771 551821769 313207426 598067247 408011336 1051634140 476561460 844940796 685058473 775953620 640533230 144904550 655485135 782552982 723285262 746761235 36664212 509834708 710822366 605528820 367136829 30813496 449841772 651189865 644181565 346289757 1034747305 69443569 1059291344 1878485 490970989 908396731 571582986 1046393096 363633825 368516823 862963293 783416761 926231182 144014336 896215646 434546107 435194797 567387043 321983395 198036610 1002701303 633294812 34208896 404856662 171440378 348833700 334159688 581979402 122557197 153278992 492429588 344728479 620682972 55610240 507935655 226557630 717514849 386166262 28099046 416995523 465168820 191683641 143385991 182546476 481709284 933027543 255358965 311042912 287023824 786646531 963135526 392161797 727175638 586936533 542272510 87892918 318393428 866246860 511789521 438064281 927909007 508506604 971569722 102052386 108736345 729148633 597906643 764499949 1008051488 401184715 305168129 69866347 13357233 1067068156 210698532 828000391 103871946 88888819 452368738 368872000 456215957 946822909 536927787 356148008 621858532 861119797 142969 172765029 915608401 55292645 968719896 527689800 519744330 404909546 328659423 509691474 475472466 744978443 841862105 704211913 1050919361 516608454 28226457 77014640 495710235 520831675 581236980 555545990 237689034 505634944 555921265 443708951 354531646 562174821 171660122 829390453 930435323 739741916 765331029 335476838 336797642 650163645 564849040 456301909 315344655 83787140 857704824 594853478 649275410 413191864 42586012 99480097 718142086 93963443 978163700 246271220 86212208 665297679 596927226 752349345 754895004 365032734 255179862 943687658 156896806 306764373 558243564 493214643 584045956 470073215 826972645 185120570 1023909523 613728692 235386977 309181293 853257663 295990550 727958065 5271767 549234403 853116656 268745133 902731381 915930682 551080125 773325599 80399339 497915925 145392687 390583126 892613251 101725621 776921536 932249725 105603576 1022659289 510945117 303489699 201451213 26093615 613060612 1042490022 643543286 608553795 139119513 349660579 721188394 354865772 627115537 708992666 71190343 48807387 1048399106 812059624 319439930 419812673 636092056 272463671 466841742 613245852 828642482 713308929 176658214 974730384 489616894 47616696 970188902 585847942 162032689 632800759 88380289 381442718 293595263 538490932 48699526 1006419805 368903988 1026701538 818955847 487076743 775338066 733665755 549043045 929560131 641677707 266163582 38045062 198100677 435393594 133671686 788981866 109215077 70128407 570505220 576433066 948408659 125764125 630814706 14011005 676888149 599309587 456146619 450950496 1072585375 545934519 944667601 902085635 211191677 635420443 964828393 705972820 390645753 1067644493 107725259 1052602728 999382695 605671432 332790646 837468139 143143184 20450499 629588987 935828174 121660616 866408611 415393370 902154370 930118507 372375939 1008217990 603197773 629379210 337011228 463567946 612568653 409242406 96801553 233736682 190437874 650064376 387856006 561136996 325089963 368967900 226092096 788586205 1931334 141295777 373570821 902701317 48256580 218072013 5855023 523373177 570476338 536790480 900287247 428505004 692115381 980032903 208976693 874213082 562341759 385097361 322348443 907884038 411473818 925905348 757676806 109412602 61883041 727342011 499110303 903147109 1008830660 451466216 396564700 824459998 330079709 193999248 596669650 911308286 441619496 791050477 607616880 68930080 160165720 478566272 506613760 506288909 318302559 309317220 243310609 283805252 318394465 12615016 492133516 879900597 530929916 850792687 256118328 139464319 493012241 880101582 329561509 607612502 641035331 98082058 352616678 63013075 116911346 962093558 893770859 166398732 721371899 536019323 204249287 519062470 1019713311 74549200 33763097 107179022 1002557266 390987084 102596666 812399033 890623183 723895277 12789098 309522783 248188360 768376392 333990422 697843206 1048086744 449362191 222157349 627060895 90895672 943253027 145120595 339816322 293800831 822454026 698532342 1012279930 811607066 681944999 220137190 280883225 101163695 314638977 296923059 564151346 522764422 941400116 179739926 565188705 23107958 680628337 463977615 879184665 966053270 530505751 924513194 882110746 188489858 596043795 849240872 257400557 896492145 363329153 367651844 93160266 734813688 1068805193 295132057 672867458 40043570 357544240 939696311 681093277 1063355395 110688838 777557858 168928402 677458016 479414868 216755231 493526089 1031590266 1031854356 980587384 65094007 719628780 241040964 522810776 522875176 1068892444 534763202 843079935 882884707 12462508 410614127 935652333 337694125 528194015 928636318 259123899 606333731 962990876 1031346732 70286446 697848191 668053833 678509929 483097900 860244380 969522137 1035233872 138925414 102315081 678354093 635401257 797471690 624454624 535562668 886031389 966567534 369593212 387432220 484281820 784049964 191399384 950572757 862467011 989999590 498880676 298230547 784305500 826973524 418240473 528171523 925758781 648685627 229189531 133837884 993229152 378429034 1026364143 1020779862 907015676 163046784 771704704 764278449 253462522 558590404 468299754 843771743 722759242 407864834 987273025 915975124 438814429 325743357 650343299 250714662 541882306 133647744 878018907 373296162 486152026 223523805 30860125 1033708814 601637748 510531763 208832765 403758661 165374920 981906014 275816303 948738370 334235298 732639979 276759295 1022771840 92066214 501581200 420481724 781022159 361208046 756050615 822879999 548514980 505647269 400486188 723878125 455629333 76418192 267743150 571479320 53162748 572943700 564473672 692612728 657715432 800457634 596195080 698101485 688540540 376696018 266947338 183443555 127028811 793335247 588707499 92856587 517534573 1027507267 363866743 966175393 145607493 760710794 201269981 458045996 277667818 183037137 790430724 865042162 429549799 547975014 824452590 9352671 310033437 296528162 874490355 591016288 209911039 627586457 610079390 193986163 284389818 679723517 690182763 303202009 941791350 464311783 495539269 190461778 294362760 104186963 230018301 1035069801 27848113 91529557 624021650 62459516 767335938 893013891 457691055 809236561 819239774 21895854 161665059 12098460 92394943 20336000 499411572 513396916 801459486 393522424 71020508 584581762 819614332 665193920 158879976 702801056 219078732 397193208 942966215 240836640 71414544 1069448202 1048925744 219206323 426568226 428656622 1067968236 405119127 732738558 984612610 240227289 793450453 459626664 550705657 629116629 271753943 995760836 660151649 778644534 59141266 809574663 16791733 536880615 1038560542 473144068 249674774 778483129 281499995 465333104 676204937 961006406 710103504 744685707 28360643 1026511377 954221712 330072039 87289315 765957122 617999656 803837828 540380462 265965478 854379346 24632238 534939167 357678189 1062490341 414110323 1000142132 390689129 638388489 17235432 556681049 867807298 275275347 239610005 193169536 351655966 952637600 348568712 118276832 481285412 1041687181 290465642 684109668 686107385 324520725 398823823 703957583 283010429 445654209 269378860 507268697 1068774433 834586766 918479959 35814184 562555566 223274497 230798055 791186863 210040223 46663123 309107914 320280915 623514068 655118293 240671784 896415889 811020509 843822808 1038824364 891026302 51800540 191193695 437962856 134164201 296536687 878047262 786871025 175401043 547120334 530227937 778128075 419459773 78100400 229540745 762561530 753222826 772215052 472060357 1011369610 232026776 884525560 830851750 828095361 214717812 971250346 711585197 840063328 732104838 869786073 172796956 950187114 1009370056 986847320 1058014632 1032023940 157984625 903242506 15346234 492738470 805293006 1050255037 825117944 914661778 817111437 902681984 116776447 642237023 85524666 576742995 335231185 916383566 150132828 284745148 152449364 223162375 694262548 319844165 948026312 287452556 99948207 177118907 385678136 885097416 65002154 797270655 1071784006 570331652 188241345 523221604 212848129 899201253 926680257 632232657 598637241 443210746 32266057 85794699 522890630 298008833 546614943 850414403 688667525 962580395 587204919 395820920 304275663 88168061 731127504 171617927 290275132 205275861 303577482 670648341 708309363 1028168511 254079868 317150913 139253803 1070542717 169331438 477588737 951541705 556159333 917742061 765079437 490093273 308666030 972846310 116332489 317318966 390636150 689080930 773228766 995618487 812040138 90847820 677676212 676400019 268787526 431908920 373718008 791250506 1055585870 1017384924 922051116 547923753 982433002 635360590 977489058 96266629 650390813 728895524 906197584 637582411 1017125862 347797982 405285266 360230864 736319765 349345645 575261196 674424247 260350449 512719693 479863115 347941978 221606129 347306618 813427614 661718864 243323383 302954855 872237645 779392833 418341618 1070230067 467081956 161357589 793305707 221478316 664870280 246218775 53810756 946351258 518430238 231694362 692575493 630580331 722840336 612862896 899405125 422682882 709177803 67294869 479886382 830867814 374286184 975448288 430744619 427838133 1064802526 937591126 323485389 302160969 783253339 749102912 80310841 239700924 828341890 281751854 825281725 362851524 436157699 287548611 991412217 319999905 663952005 357199696 873821225 802506457 853702048 40599357 672322835 118823645 623639978 288401315 365595258 254701075 983110123 114372819 252049095 164646978 738152271 317635489 136015157 392001615 612984812 826579716 880975394 191535182 892158871 150930775 384716536 367677306 897556556 365981737 279282649 916281253 517849380 527432217 556767183 302078856 177235566 540064939 705230126 264423391 959117644 51941991 577354554 707976431 460609536 15614176 238721491 960196431 828163486 942200874 275684997 329345528 810576836 647890212 425766534 851095193 666536756 589564312 173517991 473885088 2478981 905190088 1038518585 477954620 157115634 689580754 307422140 302006603 191883652 294673298 802645696 280310248 1009189139 526142213 27028362 974103724 1041746214 779953828 684921640 965338116 219930810 864289367 334716691 666987524 251383773 568399085 888409295 897936663 190777310 357612531 879614173 703912602 841029172 603206584 251800330 199328153 966682638 982941951 767789496 150893856 314588833 231543045 376684168 510553068 187580564 202057460 205703019 368611871 809506920 767425755 225033642 446822454 478863510 1870096 958272826 863853156 586801284 37185668 632650033 880694673 320667412 268337874 239771688 1067405505 602801459 229537491 515693210 696294836 182111980 80174232 159793227 979502077 552219569 107103017 463030087 675184860 14980804 828647472 290994485 638411011 687761514 539557006 767262066 53946630 196477224 4768345 73229786 698917342 291986413 377916910 289066947 520413581 445871286 920147345 313365204 5861083 1006863649 162939430 958520615 123530774 315217677 441680024 440699600 197874611 1017883759 171672958 244822431 848564482 98228766 412102702 966648256 842007947 582428321 129612007 718940805 107734161 965961780 466005814 383672356 436862838 827136705 473292374 646488931 865899556 980834800 41255481 841398452 460615965 776269638 623695361 530944866 711153531 340001582 745282926 189384985 1043972769 729305821 585293117 598351968 816949007 424413984 102686917 445844101 935269907 450897970 138505875 342150400 903977544 672858533 695468683 375835929 251915753 432301606 61423071 449943061 690516363 772216497 480267164 44395327 1006339445 451351504 821637444 158812033 818796601 564812645 284692260 442357041 617570948 388630282 478983965 716176504 946176876 417209659 52277602 338018669 639639816 286766314 733801593 1032432100 148178540 39135630 498573359 87482108 640753797 523182735 204321900 678918003 753875866 1019881751 96725885 63186350 793489239 964036843 356145686 810671864 781713415 86393905 721323423 797118101 737817818 1055779372 308526227 127250778 513748583 553143943 611970903 753381192 109320832 333269360 969696428 234745592 168128723 277352331 467965505 329645175 999727711 201923597 383264956 373438615 941506166 375423265 334977795 980517949 686415203 423906030 1042368745 532868539 568136865 1024062050 647769976 806831911 150285084 967955632 447894135 535197836 282327656 267733799 149928753 396570617 1033608397 97100560 36912148 664952344 477078128 93199898 248301376 512735217 379590059 673839767 925219474 1044276511 542165658 601338143 236152529 576341948 487541885 528584140 918132773 929734795 560568422 822060465 338646518 224223398 116073658 612432402 547080873 531050674 1045587084 9599790 251199295 613743627 908420433 134599484 367750483 643987035 190119429 712848850 593259273 954674787 1048813748 273820734 963972298 1062134764 50431726 212097281 1060958601 862288515 737299848 922547421 789861124 440049331 1073538979 20780990 674560433 791947345 975861777 375459938 880642849 249649706 705305467 77463315 579481756 649788898 787888811 570158551 958171103 543226943 183359555 461790481 226836137 1009411732 126687187 443450572 632769005 649057708 71277025 42742136 333188017 842991138 886828536 498922688 273477216 722088132 705724874 881930856 168095082 142392101 502530452 34901151 827105667 28707900 828967406 567085306 348171686 71087481 298647566 271928979 36993445 770180535 262122923 1048788011 355730707 1042209751 34844963 553426168 632021596 375470325 903386370 767879194 99860801 1073667982 39484876 246081415 482923462 294644177 337045743 644053360 465013262 326884038 34868725 1039120149 954756414 156420030 948556405 723281173 298887061 574170083 595231251 763799074 1017509711 522908671 289653992 266479340 740920727 1070612131 502308265 502655290 887606322 956599622 741310048 656775679 793081379 808313137 557231625 783423278 44217520 1068571283 830446351 1056830900 993478074 84662905 222294827 488296421 8133897 593658938 51708657 436546216 401984349 862096046 105480090 399385168 916809903 683986710 334320667 933530413 747420061 1019520816 554195686 854249457 731170589 38717960 307651738 351749227 521337119 714037438 385142445 631163775 222985323 635195602 310011609 769553573 936322759 928898544 182760001 544977560 582546811 852897112 11489522 993134788 778575675 427223217 926152890 19825567 271858449 312342337 30289201 647133884 131727072 667841558 1067777791 453692961 95192949 954860825 68289101 582151088 256521599 348462447 135433048 1001150678 740392567 134315440 478260435 1070164944 592084749 212706757 1776688 449354744 165509000 499369637 1029886579 323762919 419389452 978661537 1032745093 1008817438 702395137 868098353 819618072 321096098 95189309 945431821 445075949 819780382 374642076 891493157 285664197 510577206 257707735 705133694 183381148 706643939 980564333 732025197 872281991 413640531 505029446 826113560 1052622359 1055417573 705626264 371225986 190874178 230728556 272190787 648462223 191845608 131109664 309846261 291703438 756874658 714435081 100100057 597191468 680939990 517714447 344938479 262026175 839076565 484357133 719338399 642982653 890989162 229979377 744079040 130519404 988382232 994005608 869998768 317677159 96128180 112042857 983289150 215291694 896214970 1021877149 1021797415 221560982 780365748 224446682 389462181 473780779 1038477139 66970259 728795233 1050290409 569630230 762461100 1072447350 134109032 472218529 290972239 984509736 1027593314 408716691 490290206 931647100 262761836 482345500 595024555 369118616 59140329 429037408 1014266320 275854257 323500126 832892025 779369443 50475177 841589658 504819936 226048461 552965783 590198868 299100744 633221140 280083799 622458846 855377336 398488381 889294521 531513506 633113258 984717951 297863627 197507689 883838948 706349896 742465730 262025204 421088435 805636424 96509707 803231470 267935553 331867018 1033507055 492910384 23035141 448694605 682832407 772376487 93189224 504511705 365261284 442671476 353013512 59763462 404534496 1061284604 652477656 675323838 690474984 796438604 80420326 514241248 379791901 890946380 323513578 197391437 1053259973 946163853 145236028 15575633 1032070403 947203045 420436864 1059850893 258041582 165845781 1044835613 451694405 104586821 506048953 830849020 368179252 189178613 642269225 594632029 193234943 246336074 331162762 627005486 132838637 199774497 18583888 1010681177 391974676 376624323 924290783 607491608 915134182 1042800138 980702460 681750270 830863619 744214902 265012863 277726592 862514372 164115438 799350330 536902258 295082737 442900949 700345221 858327196 1006513150 973871976 290330007 999330102 31452742 586767726 135212780 985312494 357897018 1037707801 223514921 873085886 328988785 261145032 50370665 815592215 1068582795 74491768 11139369 320646144 432700118 920671652 594660898 1040290207 716078658 892210363 643223446 729300509 826052356 846458870 895549168 663412304 481189332 529786728 120563927 883568385 918791456 1019376793 594555440 451911974 810654042 997797911 1016673281 619100012 222637694 576673835 1055498556 721149499 81054229 543604618 1003098882 1010151337 475231954 339883939 315369233 254704905 270125795 240375653 929278260 8345193 649750214 188652536 192289539 1004297945 413414673 753824392 925498457 232634172 728608405 401677674 70061870 1022191461 466630552 487900864 673639179 217691233 684311035 271647447 752746673 70081397 74800044 524914048 378851948 1063526221 734116517 88412695 773351662 626610856 735209773 359018487 637980746 695905592 436897112 383978733 800880557 815906724 535847957 141800608 566006490 243071264 99260202 846161450 803582822 873696025 1052026546 471152175 359283635 61710224 538923035 166435485 885429781 9995787 201627267 649064650 246889171 877629088 273359766 658113288 844417423 451792068 663984694 999614173 55342183 629803077 76146823 1031075400 93854641 467267148 970802145 147132671 306584529 109978789 1025184321 341647401 424701361 157179710 842209210 830941314 62364192 651889823 7213680 953662046 453471238 154728648 321191705 1004474718 288581533 287253014 266365867 400064271 578707932 686453171 337011919 366673367 669544455 410336020 577229860 150702811 950017306 992868896 878277091 185398400 815479949 856228659 584104865 499747382 909121988 560048468 681630664 873169523 929401928 348489969 640937289 377043012 459285150 811423469 1038694322 902528235 402803457 184207093 831206778 881371353 724864484 288025335 565591738 614036253 998250331 859049351 628533702 384866769 889379344 220649210 346398994 1005852571 410658520 428017032 673223489 841653746 988576424 511441134 422951825 881708988 464044767 763773995 968065842 887568437 646891600 433931653 672314981 1049508673 671344818 842529623 672665806 731880623 134681588 855394003 413260213 69105090 170253359 212018627 800925931 470857586 189291071 920133750 17344443 171008430 300076800 982321463 181725296 592675290 968819485 566170567 123041282 940861207 282662394 699621060 404493656 357047258 157510634 189115626 37172421 237730994 590309601 806488229 734333530 667055870 55775179 738628850 841543167 950532536 174904467 255250480 792598878 520952255 469334517 713232408 267097216 40307981 183124820 755889014 860745683 407749795 237491359 385823170 336018055 538352128 995560070 926605962 451486556 156017920 258430325 475828908 366273111 17656036 411327642 298679947 687354217 733338000 869815816 441707273 844994164 909017418 489378717 1048809416 146555005 234348951 941510212 334638193 524171137 167415731 525630494 409024902 946415454 922070707 885822750 547363129 962505067 165828101 1033969054 199553457 690776039 737694085 449078432 898688226 403360527 257829125 231415082 31323153 874865926 581544315 905802010 746542395 602366724 1073586513 498987241 546619401 896567468 702683817 1060009330 383601257 739868763 306940473 827118378 345492616 287691142 162001360 155918135 28858649 1053220274 598919334 73415758 111283070 841892195 527794130 217123425 1017532916 219051687 971418167 776170449 936342169 840759800 713324036 1022618087 528219003 1031513981 242437717 719312239 397302578 989966707 527074243 419087675 505615646 86661393 886817342 407941414 358447012 219504992 235455069 314785254 561527112 892480457 663303270 904702330 650132384 970280406 437829394 602355940 288239859 221247969 169757603 389265992 8593826 783860312 746159247 4228659 806363872 977144970 862834341 67895773 292214827 1012704217 875303592 929943898 409583849 261913310 594838303 565764516 1002101234 994909512 781097595 768559822 293661494 96251793 131882505 1063276760 256421460 45204957 1057789782 15690336 1036203855 874517 802768755 720393959 55540437 956037198 247716945 477381567 871760356 887710974 780057605 241385153 118931900 768367676 216367533 355181276 348699829 616859121 277012648 833826052 1070668270 184091173 1030396585 486901682 898840042 920945724 282015944 859103064 1064426840 983743326 59236062 124851463 230904695 571015543 857523403 1012173874 26777024 792128326 825507090 846580721 447432900 245656279 87866766 730905178 253494430 607408984 197543210 820120034 537752725 527267845 423197233 741584898 595159434 647077300 202398037 1031938890 766315345 950219033 432065605 677292688 741332656 794795283 322684721 525218850 16895829 170264919 403142120 280756246 641238672 742475338 796641329 644090355 486108779 268716409 797180642 555816067 901828298 469805426 306681213 436803739 729482401 34265349 5115252 507030821 888110450 621120486 11374297 1032286923 383013510 572567028 887939890 333331930 363842700 269177306 752764331 1024698952 242207628 868618868 622918742 733975603 867726472 399305594 734171308 215482603 509789685 811369548 486756087 951493270 866983527 625377635 605778711 927878521 1060914197 345229648 590777279 421080909 281544791 1020878261 36483110 612988718 529450657 727249278 736464786 82417985 539469834 543495680 447263398 957896652 545243640 38792175 601753771 759730938 647333461 890591240 29923876 281493702 212825680 941903142 67011918 574670358 69205187 748984424 839965708 575945390 571042791 960489989 750726127 226214376 65578529 119726940 224004838 397585790 949160820 632174422 562979392 398328675 637726976 491317255 1002195353 21541441 457800854 762933529 839266408 849637379 1012771619 945758810 621844643 455421795 425871234 617359988 366135044 242784531 2448780 503639440 383926085 624662777 214141085 445162497 779622307 955941043 891021162 715961840 278905483 678263595 986873618 784039418 591319869 263637165 890181673 242222013 941145438 379247690 156607842 713613844 873160594 803676339 990687718 1028689842 680231318 208065639 67177087 700217121 1011855849 317545076 812885626 314044716 150422862 843438602 646655164 540689006 354100391 399737964 274426572 183891039 910050755 157780134 25191636 316045249 975858940 624148033 226519028 580968416 855341387 594333460 83059711 351746159 183405632 639506227 566387502 198444522 1044736911 1028344086 539843454 678009868 87088000 732992427 228579736 954162091 855556736 336577424 388649620 935218521 37952487 1007175412 890717093 21246645 467817471 444853639 949591035 651458028 185344369 910461548 761916504 294935355 383244438 541048848 332250712 162735909 716976280 328241078 372449619 815582973 488306533 560036898 799881975 958762864 625962910 875807000 260423512 332013389 422188517 982559439 355908248 1037950773 621352560 519217784 117187312 506024846 809709295 988072092 883339067 339994969 172027900 218021996 540840602 941934023 69644913 707463524 242155393 455688446 853967841 23507579 908707667 501155975 900155138 22359108 1018708450 71756620 865958924 24667588 516191613 930983091 543133759 20712584 77019933 899007888 931551006 486537576 940923592 277800117 240646104 884849387 555192364 591062313 1061269917 181966598 178423147 399391280 786044042 108357614 926006192 247468386 137375530 494171461 300953731 640841928 425853835 288458022 844629122 787217969 750636518 946675945 562045701 208153324 296512610 52073004 664849179 1035655615 1033292912 318063358 758767080 783817887 122111079 526437536 726137049 239126817 658131112 397506575 5157723 351711628 530597816 64792523 120408395 865839805 550124394 853792508 239152959 886468020 360744232 1018360872 938650968 716877755 353018609 1041150508 1067999954 495255495 344893334 574359848 692877514 158572368 182888552 724554628 154434316 731365641 758863979 835018014 517354166 263635727 1027722348 423635606 172189889 261944566 418678024 580933677 75952140 220404269 599037321 836948166 6233048 378662607 236950107 304451193 713073487 37325457 491149073 702717250 345600017 424130974 177445674 997627223 1043098590 994822819 707460573 199969856 698404613 978196003 487196683 106606278 568883498 387299364 342048421 825072154 80581688 402508635 887540899 792972625 481521186 77093551 385537281 160087681 289337885 412219226 201108158 380906594 377666042 280666533 406457208 937903729 938693743 213965102 240150994 919966266 926745468 21475361 1057052992 880559596 272706678 651267123 640461019 484254377 34920153 840686266 296687013 453454688 790795644 181609945 176868009 158361624 491806080 397623736 115555819 446851729 779391725 485508720 853510298 923887966 305360184 966832045 1014422159 797902240 13874607 433347053 622910852 586823262 515845989 986319955 774603390 1043141317 427260332 398174766 373420523 613361944 921770674 1059754039 90502664 777837958 1026311000 597870118 167049285 405856882 1033438629 143040906 964818328 346949322 797485657 789029324 41086325 767301548 586621430 851806642 763321406 359280518 385088036 173534081 220729930 141576026 680714810 10361833 927484548 877826493 19798242 291363017 705762607 1069061439 158944091 534105704 878168409 405572479 789533315 81366847 1027060847 1046137397 282145167 268217649 1041228744 664134944 40320621 501734022 960344843 801927296 320069562 978008503 878589277 94415888 658757227 451775933 525639447 870384615 156862204 980948959 727258925 938027411 591251999 767087929 937683359 698839206 56326076 324576508 884817226 500370761 228412698 176496038 196909345 582763233 754001457 822287945 918280737 1066866191 1005036972 544403396 320776509 770133629 592586115 366967441 794722614 151949868 140952406 1068352311 38860184 221324629 846859946 714464969 769751506 914877159 636880657 717469319 483760441 896888009 201356578 532201196 581679678 759302212 841012640 708661125 515889838 934102938 975683669 501145537 920750191 869738876 93378429 588181878 916414056 1025914461 461681762 17375176 384625919 763085728 682308572 163574822 110337543 454724336 945914315 866026464 974672323 681044061 409149357 551886850 1067671030 635177750 1030289846 608295240 102873802 553581110 298218630 191822612 353535874 640196992 750948061 392975119 573819838 77455814 374823757 181780797 795725225 565377304 575528661 785244130 82235707 1062203903 161298080 953461277 836366385 878599725 577233695 187200630 167711978 701520402 380851127 163725269 84764040 711752264 1004778378 640165484 855938623 134001585 1029718638 297169802 402010165 938965015 547122593 740145913 1054753666 514629322 952329958 496120848 647093260 383752688 804455010 632067173 41580729 104736981 414126345 949101325 821980872 178671387 784268665 552144202 922087347 741980972 312643309 308406405 458146756 486075949 751873340 1041803494 241463672 450495750 415639655 23794027 431243041 724250421 386924307 355914107 859293036 479333672 950563076 118241722 850621616 547088953 503375958 895605837 911306781 170606321 941164739 833819187 340472747 533030354 625003575 528633306 968391922 152234529 82490230 23968552 258404816 360148532 849581028 583251978 169606808 465436220 841852173 705420151 703291477 1048309408 979570839 950623891 362575420 67181797 826825384 177758053 149536030 41832141 816112554 97102989 314724229 163210212 85211274 508817595 557778535 1044818944 90648191 425159386 725215876 826162176 957655199 283864080 226445656 1028739273 344310754 237502664 1017540775 633225756 948864919 694503999 677402731 597696295 952927842 906257162 877270596 941461916 282510330 295505512 56154117 893403909 246358416 552936892 84205695 1007270271 259749287 750217793 358577048 206659868 124772451 529366397 155893451 470428962 109188213 163394285 513943976 558881580 169134951 623043479 464687696 196055635 157954944 581347322 97397089 1068356614 732364283 260893983 701094197 965235472 33418796 1044065691 816860607 122276221 222677397 1006412566 752366390 134172904 480587607 120111298 244319922 904533317 1013928646 511067127 656741269 831532040 642051561 758355255 495285954 1034341034 271085774 482634805 530388247 457678673 795211489 263753222 658862652 872340321 38788264 739809145 212061567 319405080 95574023 3545342 363175016 230352036 561980034 732864717 1001275197 103601903 925850161 287056527 412072203 510666881 917206986 453295130 957640868 378936452 81385282 617735145 630005668 121389733 787613232 667412432 214468646 562120653 744516080 112275525 801037563 278454654 1058717291 390811524 196568091 378821703 542230755 152699680 846203680 522687289 576363254 1013802354 1017453529 942084679 743363476 592068426 704623014 388780077 1000810616 134375290 205465405 974868383 133189357 341223055 803234188 473703886 998733183 754094481 182885115 297894701 957776989 172111873 244162260 150404020 126199327 808424538 1000060837 538794721 896285943 115877452 707482234 299697277 132272848 68241781 497154803 682194981 905128189 831008758 740783182 851119289 277209596 528760863 300901666 605671309 923271132 765122873 406644578 36246881 689660055 257250198 840306348 443824281 108422242 768296550 4585142 716353104 957747751 989344875 660511384 679096873 819236451 96569038 614443353 559262306 383228296 377742712 385330985 559452872 502650333 25249559 206624986 198343708 93047909 460264636 292899373 156303693 935635297 757532320 1013202180 198637981 872603983 456660690 595943253 277362968 262768004 50317303 610709241 718357852 646814766 352346130 149670255 806952541 473227165 627910164 416394353 286800298 568490504 642863012 547881088 308317640 808740451 32687079 827460247 260737857 143826224 952230601 478275295 55339754 861225416 325799803 537584376 437015585 1033052809 145917037 303082754 730857717 461306164 670695476 918446331 1002555167 232586297 566820555 146381762 456123641 674584076 1070812683 978545299 251546150 64070627 696969986 17344646 317908243 856672792 242691017 251945266 514839954 874615915 885063969 453185786 427806594 293209840 630921913 809294509 474762164 889118469 571717949 597441405 281214302 128215863 405926888 443342736 363151085 199202160 676571966 94201197 892772015 241002223 99239837 427139304 786347829 538858051 127849384 1041448234 838381538 24112920 233456370 1016711761 239145000 608692377 264416278 761690633 663161499 517760056 90714554 346848319 746055906 384656589 805550273 610071563 1031244898 12423934 113650164 365581079 617180674 207960249 844770498 46661234 170192756 548641819 641853297 855476911 440955729 895390484 832977556 462222929 908963763 482883124 1007592826 1058672336 274338105 814138701 195717055 526572422 354062351 679303003 331773536 596729426 1020619822 114364062 804060133 534342504 344713271 612631839 1004068003 673073421 680908422 39125014 169675649 855151103 370723914 1491424 741004310 526894020 621791480 909664486 412313373 98845449 998482840 18295530 193998961 861320377 75668623 105285907 136548090 268379733 235178186 175987795 463230657 663614599 269291402 797856921 218690189 1057918737 944169234 811351926 459283102 4846925 156698136 452584767 81874309 131504313 965427030 365484771 730800109 625642969 1070675679 537313129 376568468 85306887 699808524 266713087 230622712 240524453 198086449 553627678 138878634 337697967 279050104 621522344 997212977 128216081 158482100 894066156 1026451588 1055026511 332142574 521383453 26479340 572067089 382868308 161623257 507884239 926002468 875340335 65395539 465249638 517121675 470586821 256651251 47405564 533400365 19258806 853534987 260633847 503953325 205453424 644184043 911118170 147074697 580401817 228698240 959675116 916844393 469967997 506504661 330485158 623293069 686439082 185115407 123666994 683638730 92844571 365008584 40077959 316044891 931139687 340404041 1051289532 95586402 536611720 848594077 569351694 566987442 17235741 1005843293 525586841 741160028 790642994 47217977 365549172 509155808 224302233 430174751 843798738 343723172 294846400 390291602 1028616329 970308306 4267546 512192654 60020980 631352183 17333155 33162688 792570028 159228195 897476119 69102805 985998905 419013780 397939 1036314461 312396184 990432225 668743942 142756853 490146137 714829587 371833615 726843033 821429287 597295723 992921510 358691011 948658879 223358561 680565147 307040953 301053788 217008513 370123536 567504331 918237621 765507869 863141307 123564784 580309550 449731099 396450789 1035172907 322878392 20168588 380206566 379404302 716969161 813495995 470535439 57999447 907547145 782697330 881069702 935069535 14245290 627684050 139012020 296432906 339479398 410869983 221835184 1038647794 305862043 1044407579 630937153 66982216 109796333 273950887 66186974 1043361493 313662659 217601309 99243959 355367613 384362014 520059689 717597037 441476742 324423866 25804710 246922821 367581444 928776403 542509784 165218435 623994090 837314070 713293357 994941846 187099958 692205274 903089999 94513841 407159909 709678132 1009228781 897580166 1065508456 855931190 343984860 113712774 181779242 162319908 889781426 561222797 316062941 839863147 202043927 33820736 986976809 537210124 715804377 331801474 877223329 37045579 806708434 428585175 423734940 153163444 61597185 639682815 479214808 432958853 101794274 601964973 142082704 804192779 321862221 539162642 496283333 671621774 206661668 557118861 833600304 276410957 132720869 1003934240 758597129 69151551 378646070 581469101 701153585 292319695 897870129 352885387 112770638 120967416 178204987 455347194 53864566 10816918 1008771114 217248546 919300024 594905064 227296058 1056249030 623232299 70875470 166790241 1016797199 952347770 54827584 773031201 729267639 344133596 456911180 646337590 347280274 808456023 115328316 78789604 534780449 186271133 109581386 911830713 142709384 184085237 256902960 744883825 126481430 931399649 942616223 558299779 227291380 700698366 1052503629 25020442 855704855 243640721 591830430 655741860 906609335 580884281 694494456 83623880 545170012 1036140266 699688836 854253457 129249437 404152585 785114700 231483403 613395147 171326950 569456974 424133738 650932772 697309160 333878832 99338416 403180602 718522821 607651466 708344573 1053053269 1021151355 542472922 660784243 184907654 897668532 555275757 516940942 620818189 796595840 953726218 175724507 501713368 74899736 707967661 818248934 753560200 625521500 403349661 870143294 1050981467 433680142 126370626 457431138 94629034 30239994 487217557 849817045 916984176 398596795 999074927 481332902 382846764 596028800 278888200 1056496244 693599712 997965392 830198242 871329270 588262163 998687175 857347016 844072876 800437760 137379944 827305028 530657919 884866400 214432692 357239753 33951819 769488326 155877143 916617938 508030473 225045895 998584177 1004922773 981051407 692656494 441179204 773642357 562315063 311971439 738807565 824954478 1018492131 46732720 187670164 1022621620 814710968 1017818273 893684152 596732355 954439614 221466051 759854512 88978424 655094878 649819741 263310414 410912100 153053416 865451182 662594685 1004131107 389236620 488266010 867142076 534914007 418680161 685611670 851417571 925993968 84554740 512913892 765194225 910836055 104275709 143476840 319078451 295388083 706522699 407036822 542460488 636353356 344245473 328732066 486159188 640491707 1040895218 944536752 192253343 1049635040 131643616 718394356 212317360 183160233 208899551 201953123 924945231 358125140 840653769 646467360 690322151 438301879 955771347 808160687 60663206 458436384 612097026 204686572 434605027 652272854 751400298 757047275 291664723 831598951 615426327 575929269 592809320 600878478 497893381 121904512 405955803 1049817317 290141955 317624826 891542828 72911966 985177348 491809122 1035144028 717333808 192587987 1068156142 165546153 131009173 955014245 1008699332 433866559 826432082 72092057 592132738 493113862 989874428 5682852 161322336 317905745 1012587050 587720331 869046641 592720456 1063397106 565491993 436004221 67142418 604258985 906774286 346868710 1071929362 189097450 568011141 940696794 438504885 254457373 637260563 152763368 308758531 122805066 55276893 1072635593 602548883 166726621 5547100 802216849 695170682 977306519 714029251 861365946 127131859 824362610 634854494 312543191 208016050 604049289 798353274 441796618 29242153 526008252 6859531 989133790 145914222 262059890 369871309 568958318 814407394 847634559 338073390 1033377897 402214274 495487999 238014578 941268105 98634125 453156347 74511563 422887521 455986755 52243017 455170083 821659225 939520688 465328649 1040782161 1025695986 27162024 575041916 23630150 789780806 522404555 790512282 1066644923 252633348 601282856 541597797 742869838 849443064 535953438 936172657 21221898 888108098 630958057 212600166 520829590 807441464 146371312 769472663 371961235 482263117 766396728 826975729 727113502 818980153 497790152 899062929 14131063 852314481 491028405 1043988700 495626843 927987717 14133336 690360725 599552559 843451603 728991242 964143080 416429581 1054045150 773471732 1046103467 20624864 822745217 919573518 101076130 1013998582 214834453 1013464182 334850983 641066441 218196955 238436181 1069266042 585817364 399913679 1005988479 673463526 763667821 76923309 448312768 1049104081 562551099 223394962 335243812 247075248 59297255 776833262 472306359 315344662 574224982 856991879 396311155 967369189 190150845 737787433 653930973 816632033 419362390 1017723358 669189731 374290208 424237989 181132019 285198396 636923118 835978958 282794951 775223089 937091056 667400854 399168511 22166094 46666131 635463044 226232850 538598528 241769828 863468042 767317536 381368127 398348514 718661737 792868597 591527301 175653830 942415114 135766744 365380604 785673196 71984224 456987060 746133384 466224033 1010803643 62632879 801860048 596577520 604829516 492735089 659378791 207297387 396704682 445797014 601009859 729630669 465295042 171165925 974854540 544267072 130175839 912332129 137200639 480374955 538411276 909058827 536795669 746948219 343207127 367609526 974629722 798231439 1033664130 971361274 939570253 593619059 717019447 781843888 453789339 202199801 16920556 962466010 306022327 901383238 758176340 823371327 55424348 812972124 743851600 87069850 974364078 902130650 150200510 648751385 393834411 543435973 1013922177 283386629 444498332 1053150559 224850261 142673122 511135465 997626430 1038963057 42310528 687556324 560387057 611749174 92973391 795072196 674925702 573480182 731838990 559581019 487049915 1064989571 437380805 599668106 583785407 237947504 1063862174 397152046 690666799 646001874 930333389 489004001 843287804 596632249 727616522 736793456 77182033 446828333 424825141 283658209 92160606 259558885 533649966 370409136 77110591 218316521 272767283 536018854 352907669 344386939 833663987 891622946 90213822 830977015 226065785 882904434 704987558 488078108 26213644 1035034279 31371787 1070172493 1006795317 450983805 748466991 346911853 735142864 309176281 616256264 548998015 527855331 519011372 62077431 978946009 674167613 858649204 509375706 259904817 332220436 663533078 701949118 873926323 443935 844126151 957215948 1035335242 1025776408 763677153 552283742 1034759177 446013612 66514600 636101454 594660340 856316085 792311329 1004622360 758272240 816097819 68368984 780125016 868798241 709603167 1071418831 1059662830 952338667 506799462 866088976 603563164 818563636 774030584 53263991 1009423655 880097053 924638486 330695850 377436458 950021928 865866305 929670779 12027668 115149238 414531501 31020188 363040835 448837086 310534445 75858903 594882249 154206012 510227382 365220243 732050650 378878581 296893989 348723382 119100675 554726123 555184886 201339268 141385433 32065343 370231948 955515716 939619807 775898714 334953084 295109644 655760816 909290966 789204323 766698887 281056676 56140228 695799633 233500147 950408377 293317532 204644747 966674923 514705520 107812144 313818377 1020077636 795340583 431919021 725489798 26162938 555453870 604087698 55415187 649870497 50075627 377141035 415699496 277879219 150020365 968264234 357124389 327935681 839129864 442276121 517591346 320309714 387785631 735021690 144816186 746909314 726768360 171055438 696206413 498388438 634887128 922469119 379990480 798466934 19668587 951756239 391235315 1038750710 847952895 154223928 594894212 349234353 421333340 110530546 580747023 881555760 828633277 668463674 853849205 681494761 124003826 255159070 860833633 1061584249 394178718 713681865 505487331 420714530 917412137 481261886 850910127 763540508 1048719006 1036421044 970454431 141425737 245578658 378196204 869879749 1048501537 876146507 153497698 88826707 610142699 533835626 173319439 752086354 385775463 430825785 1014186448 769466959 613384434 883695320 479129511 86596498 280892323 131478365 113870495 793719926 870341744 958445414 1028080031 716886844 904813536 263048575 114423628 910786473 930675799 568595902 593955762 908665858 520431581 864017105 708181691 509019182 29161265 321884341 570905366 472486908 988465756 754661689 240858763 1053531714 664345239 503380210 950946376 74672684 475166267 1046361754 200772606 747902810 957141012 114388584 91059893 464663338 500122459 120457081 215617748 476669691 230769291 274220497 453577697 533201857 669860072 165807493 544017036 718214853 361163671 866520771 407663952 332842139 879898793 650580797 337113580 888808736 845460245 716121841 515095744 57444926 289192654 1010000496 630213495 233078498 1056744347 1008454286 85317689 898536831 1008185081 465734798 1052780548 799227147 893753480 820107782 424427665 648819394 423321121 841036515 969713645 438775378 42687334 180803057 557833748 214408984 404356319 949051139 651972743 929580055 253075723 623856524 349994679 696273954 1020677768 857321571 826502710 979054567 452523327 394389631 420868423 305884619 127077418 520972499 516251176 162296168 664011874 214346063 358069723 405971474 289306336 361628164 797207520 668725337 1016924480 658323096 625371394 788316185 343213387 671844002 430504777 358843961 248326076 763089133 31846184 373844726 732693005 719643038 1050793272 58272195 851624823 740249874 643041698 495948837 206063838 679856009 143239750 781906092 689593697 1023571678 783562952 596182745 942997812 141832967 317384562 236586340 80161581 222446036 855384521 290767054 1731215 313559010 698645535 421286190 237556306 727010710 372719117 613135918 299465104 250897844 329408229 554021728 508203032 157841381 601916312 886500244 1000563829 424075713 899995774 855344796 141065130 26742770 520785958 955837448 227125524 628025031 18570796 177826763 214322971 114958968 586120979 437734017 333111733 111164088 732778379 245201831 506193730 770535655 498956100 439189371 688992065 570972141 22428802 265182483 360107651 332055042 233899603 433357621 543918815 979699097 1049833895 1007721631 471142728 524703037 871501547 820614111 1001825315 1068001352 882132823 508480174 790794835 1056978820 877804100 1040464099 226826230 423996358 459230905 286254458 411858162 739495863 268353547 20553144 977126666 293050897 313977663 803977993 204355683 571859110 423152202 782345849 953573112 269384312 637390651 501025853 710775257 1036953098 403585947 576705660 318474960 957488579 495991909 613000776 881636497 279403903 245764115 681715213 21033174 131985758 309446973 603144979 1018044928 873895085 453561619 45114641 441163553 767583046 563995972 362023838 720245275 137468255 193916081 406594918 110283728 450160094 131967420 610817859 85736064 658783047 895777710 1034454038 536342417 442304635 1022245033 63596716 1009288920 221895545 746058999 166363491 536636711 585897140 151090557 1043343603 369975034 523885571 631003936 801894447 748509976 805081799 657032565 212470132 348536180 540651958 163987144 1058336978 965662066 493296904 285198251 537732579 1729115 893528599 287806204 903873452 9150172 429825161 789933914 150305025 769402211 874067953 144417352 636089044 262752286 980336270 642791197 141929068 748329439 781882214 1032636816 977287466 41472327 683235079 368173969 719964252 95349511 515489426 496620181 393884172 89402019 991535345 566940614 883826719 888910192 449779835 488419135 711945269 1023152088 599828010 951214132 306610905 544214167 1038912877 87368430 912449045 35975437 1015553255 156642241 465669905 124476887 209490121 126924915 1039771374 40878397 549094125 169529187 701859013 274178165 134952830 687579242 192218708 9954525 9477317 482649395 132910491 827772777 838876954 1064433595 470010240 322151008 656033105 348234130 810567848 382750139 752379133 897327830 669533100 384385648 346210369 249781181 111416739 279969074 894399569 629687642 676225617 372746653 3335163 921810752 395525405 472876758 24596997 1002594261 858623917 696762042 969578588 472499135 853417870 191698342 303083757 579676881 160940389 340666481 880126036 69244766 210269510 934911426 449696336 620905445 261717706 587266056 710284832 14276636 536498458 896290034 995029843 551253652 1019809895 982553848 881459462 660387051 658330688 1053273536 67232115 94441801 1028021232 372370551 560566842 280172995 555998552 398219660 1025154780 485223138 763693825 590007223 362932003 705378432 502030080 817014144 574534560 315274821 261977054 989094093 472540347 109737488 501045841 317093967 890441954 795070814 597691010 846456720 1022841662 374990283 843642632 386167115 971479436 128433019 942295706 424954707 249247291 496453259 703112062 183585520 322406968 40544506 1022065924 782194094 462303978 456117060 273339732 538017531 841066831 381932977 838913511 664399568 1022539336 928448233 717680793 517294607 28405876 247319014 520687783 802357630 748543467 181000552 218463689 406412619 919386081 519828189 606616726 80550966 314111996 924968955 750609738 446286773 462798350 622470206 697052212 169134237 268256314 850006822 840127645 1066628271 415232810 982521692 563469804 177917115 201089743 682282327 843309387 103648957 450198080 303436284 187487856 635838886 51489924 607614651 794217400 626798126 813238033 548415446 564291825 544264987 766456074 93536595 672729923 517388284 881492107 745877647 63060682 193423468 132500437 175782111 629156522 532472123 393337792 449179022 468940140 211483918 733176487 344143422 334459814 318525893 360408838 454002836 342114206 425245472 814212569 421598224 32358453 864210787 907708931 520090743 766878394 953279200 51655463 241449538 398780980 419075295 1062410375 89439041 432484804 569962232 949560410 98880428 1045315029 783326986 120451634 755651425 236102690 605650036 1070327539 420766950 267556611 24472010 810048868 545300738 797661833 635560754 687965565 907104456 572067280 113719261 189898776 1016969299 46000004 442342601 821004520 221792385 650699343 432224150 435400965 338091506 269781295 278213967 915887911 965680806 518259284 943261944 522178879 141372710 398553123 625635638 29113028 1003804196 25483760 636441143 953364406 1024491175 379514803 850974158 17407759 903274757 808731169 452279829 457348227 665366098 314562396 642724978 720924669 872748283 589442235 411452822 274052546 57400797 58040166 438097128 626402257 497128154 674893096 69404292 299150964 958863572 342723944 580733788 677129726 930940846 419742781 82002478 221544626 641124749 968349930 1010132936 760446863 548032754 793804869 389207239 482289610 1018523819 777640580 763383346 282575338 661552336 71321697 919303275 1042259307 42656794 223751393 566152739 262562496 924212474 865041893 904999611 1054728192 149707155 445583147 420925265 915987410 576218477 1010657936 929229464 211202678 99818003 515073745 532530903 590570259 838428765 622135346 1067001234 376898609 844008510 924702613 597976072 1055909983 394811981 675049149 480595915 761857042 933443838 1043473826 182114463 671201899 569704332 494271268 292935840 80625410 522886530 459031188 483165577 558218184 305167256 770608515 164110939 578175184 324024584 768848281 474140479 478241732 78719270 254066899 344727679 11593371 698022026 589858241 252663874 641605942 457095607 1059868841 679117151 773020759 32232718 432822684 986307625 257817566 30676920 950370547 75822923 293444912 450907665 844098063 933741396 780600759 290136074 773163531 780885199 1024189994 915816483 724008920 747613445 366764110 242245776 473989358 930158101 475798728 461447758 838055454 35048906 781327039 397376674 138212621 536613911 501181592 493529229 175790806 643643629 637883211 120709160 406966830 821014109 1000176125 679969818 852448433 895170446 292563553 1065386965 858514755 1061986613 772730975 685033815 541975015 865826819 974416678 634543600 353722223 913525782 917236011 546314517 349516178 1036166928 245345078 64400772 560175712 192692956 423812905 599307165 817284221 1029826895 173301495 979709180 81582886 1056594029 729292219 719746749 854516227 641988851 236751149 992350508 1067106110 351638420 258651051 288318655 172237597 203511746 275934585 1060326451 341363577 408221357 424122251 952607829 1038479014 872071880 438500894 918249109 1008760626 229722147 700927657 327698391 420932689 40780597 743870709 34129850 379569666 554610073 518708872 18588281 245030912 513286572 91910402 97257071 1014420093 130451724 463333151 333171669 933204172 865310359 507692922 746766554 805184880 17076782 78734068 379897876 880871393 141229696 238675555 744123945 467673955 293352007 411167504 270798563 574189499 584836455 12178338 25554609 434810595 165374433 413860328 405896928 796557830 250787202 408526827 339974854 58056899 86694189 542631914 691175783 961864742 1058781688 446700360 93821527 683067235 381040063 888263225 1016124375 483283481 732141625 393467114 1003115525 353834194 591754936 1010777822 138333090 905118030 221159564 1045538975 825692054 122014685 225150712 721399993 150097308 1069662269 364295293 633265298 189400900 286720498 218151949 1029339636 824528426 500036199 455189469 858750271 933187509 662201709 555008737 126219621 847544842 498962007 12995802 877525344 864293468 825758579 905259389 861951574 594562768 859921967 523061823 546225178 776029891 246846694 323787526 186667095 208910572 156270449 653223634 516228177 171523439 587754518 578515412 935037314 524884848 777356961 515337413 484850328 52395462 21407542 82432183 424273231 783531617 561309881 873139133 912121661 779489006 143473612 358778099 82181146 18664152 48676164 219525218 487788372 803524871 922431763 465686565 1058231282 420743030 783121706 573669098 980330216 321522878 424734876 583134864 146837782 282345614 394917598 902114660 253099887 200322809 165932139 658267535 497563111 489807718 600599288 784974079 707213309 231264466 138927962 230175740 993893247 203280831 893583929 857797126 583571671 238688398 966985792 920922015 241541719 683611653 994066634 92233845 937122556 553696000 1058788240 1072215610 798565024 520913178 962006455 423925398 654710978 720031248 783683615 326272218 958697289 796191212 200443873 249768639 565638206 476104440 569973458 487058995 622494779 19745552 196634007 845705576 440797902 161281353 429225948 1061720542 127486561 27755211 361094847 403123217 596235212 501163555 964602818 897940189 714597659 559031374 238251718 111133792 62737250 467695620 741826963 615176782 626940920 88439432 896178086 954719481 295875931 561295010 1019519875 297501208 774085264 525675829 411866978 1002090582 975495520 404294053 470332566 248889726 278137693 941664141 1024720225 895910267 149588208 650967519 446584572 159724736 484449706 401492123 387829382 369242703 1034366009 253106657 937178416 391882425 560315098 5318021 901659688 868315122 693275986 332747973 953997766 859401968 590083300 403523023 559789483 83364447 1003771395 289163 313928827 943732324 397326914 116232010 572804269 1067309459 509985954 931540217 444527349 410750441 717672807 1069799921 1045579733 941406652 109326093 329738843 299163236 69755435 973225426 586025332 638144315 111910677 835464750 897470979 191153559 197302424 321284474 43664323 335445491 225949608 252265712 467321554 463854060 940533777 214523738 494743007 384545432 640590694 387216156 580821256 602795600 398874137 810615070 829373173 38379921 956626691 9583571 613686861 473011 1067044288 435071927 140587869 1049335850 561889475 371051152 757474044 958199157 197650682 196392398 158452750 1054697656 487887835 96238984 48665714 114526604 1072823554 907657528 584979602 527485320 376902258 480727458 1042830911 28208502 37226442 761212255 744096189 606539381 215421997 565762476 448331053 235048578 921262133 169362776 523345251 1005707031 43781583 228089206 691630902 211733607 602471804 721819113 445060671 991834549 242606384 35446020 630373116 1002563876 602767945 638993885 1017035281 896912784 42849620 66603840 791729119 330492810 18877072 545118273 159473488 638852582 1033870927 986837525 973373644 139959313 640799418 1051316174 552126888 464581653 28673536 833299809 441348487 88985319 645788706 88701745 137222375 94658254 453024654 768896123 620323982 156433548 637019679 1062427262 388943684 62877894 310496805 555803333 876734900 25946251 170239277 594510230 897424796 344048407 386269670 262036540 873308677 833779586 371681766 978948834 612041031 181579664 282044244 447534210 520530548 310713136 960719602 532326047 24911803 349332916 613313994 743560981 276416321 660676380 669281693 42850067 522472409 908680486 1043934936 495641199 99967368 592170585 800696345 719160320 571169232 454375036 1048015969 597497686 335812490 898351219 43787048 533971028 93980403 815748492 395406253 408080871 673616777 392300257 44227158 114020189 284852879 813459323 766608171 229109415 727063100 787638963 757870000 985645741 403067148 314962163 963199487 1061805746 573278823 324887161 978902554 529038976 307575622 714617187 9475376 179185684 610567865 917861569 582621525 639191316 701084753 559169506 893796856 931839404 43921693 531460667 441481257 1055064431 206584635 817528302 13132753 1069828878 384538847 582288358 2151208 842636128 827219340 162767226 629070852 286495552 458195404 561420074 208019700 1003008065 960860542 996813385 432122497 818902458 305861073 334430012 363067548 843232566 253714149 502442784 219686824 874007297 28403435 131058952 257973971 358439925 479802156 52084169 513160214 660395143 947480045 213430901 47254735 48377562 944887252 956960192 1053821376 850727651 223673988 216087573 904460648 640000718 92410748 316902671 604353151 423815256 684461871 863245450 637904257 281905181 78559109 291892833 778742861 453817258 748967798 254917542 677109479 549064296 986909550 410498597 217920898 363037950 32720590 864631450 1010193415 984025893 796734372 775698884 1017346089 373815120 198326017 737442708 696990286 404935974 529620173 288848118 254603220 411441210 195750041 660908976 774432741 95817457 507698129 626677653 845257480 903386259 286155564 230571318 392476951 718962477 787011698 407367143 158964357 392088441 417983279 559562766 127046405 761332090 185191239 868139613 364368173 626243226 117212750 595047803 415533569 477735814 687759363 233650136 356392546 378924453 985616070 165965048 590360239 642336191 997692647 228880542 883881800 420736038 821315066 5272095 34199683 573253526 517416613 1031359142 376771084 852385170 729947234 547021588 793883191 151838371 841656511 1019134565 120532266 76437763 853195760 722122368 565357551 887748614 963319481 2945050 84519085 588608922 809900006 584758558 537214803 432161403 946698324 314573976 595440565 468418399 879766506 1050132428 304465182 706903486 542338610 869633116 1021434892 973335225 731333376 758513139 238028035 825299967 639976061 948760424 64324529 905822674 428016225 634107176 875174543 57409370 535251674 598212997 622268502 712454295 410638793 828439117 423624557 374190158 1057003533 1030819262 20293905 1038854006 370713362 551200382 806943578 243736004 335193742 994609187 1067852420 427701285 619831949 714173336 727397528 911593991 535474962 106771028 640491538 502833256 887931296 64563719 87943637 77179997 967500509 709996489 618291633 725458899 169695060 767336920 499020243 502714975 871385382 879408443 737116119 531611139 725807836 472764244 757268551 150189973 926320567 453645047 865227419 676136757 1031010791 470449633 695842243 371517627 210223862 825906729 471385027 692558736 368209540 190336445 805421073 831903294 1010703109 782867341 422159541 138711701 171197113 61195232 56401729 923118644 787774154 132213914 245194387 75830179 125668073 411990330 404448341 859445578 1042937257 881363695 691538508 569325507 772684895 640052478 912659317 167253337 168044522 2669836 327269509 624331860 955793273 782823961 499145405 418994656 991216900 673586074 746203233 442099445 266297174 695695995 754170701 655900707 236557731 994609361 783907499 1049711970 453048542 1001312812 6588577 136564488 935641893 561121767 193075 152312045 1038779419 400753013 506352683 953265843 602129877 516333359 125014010 150199191 705198414 646223771 220280689 365011627 23777701 245553107 837535286 99297937 113871199 208309876 675162801 130978551 734134660 210851294 513614270 61349147 751262635 45734878 1032395540 978127234 108843877 964712143 305972375 12996318 176185535 614848737 468486357 203512693 865487171 206289266 712105861 649088395 390971687 378810700 267625932 247398275 501964592 691448980 128450943 429233374 138689900 316155599 864714817 270790770 1062671243 1051668720 367275971 343207903 909534180 1040040418 1010406819 898849982 970313963 216096906 709213801 989106163 18385555 66591423 367836765 631798868 1014352691 20002237 764032553 127065276 658282188 68778956 367629302 930267130 349789430 681275593 379411759 650073837 929092689 19949540 212210360 558693188 131561821 847216782 109157118 859574662 998147560 657449361 237504020 507308731 171542279 983495397 283018235 815130113 222378920 537797778 786038430 47344267 554713707 692045843 556389722 925114215 706630724 420000521 972866231 36946713 679901061 470598982 844808781 742355145 940569461 252964543 592488298 649317731 466235015 165578111 2123626 920227031 499017112 198198881 96033209 1036618390 1070997647 455240761 346126937 14443644 1014357446 704044736 1004910874 491110215 556333320 935775970 442493497 1006764902 904608588 100991598 19650005 593217997 431823656 851877459 886280150 189495349 564169703 730029406 699850263 44646457 956828198 787418739 327401868 535535829 15237422 133642823 562248989 599187638 757158870 803171449 168723171 959585682 693701018 50775007 528568064 455984336 140297282 856794469 962183567 503814140 964865454 998765905 394850944 319545681 553465747 493522452 738899562 29035617 749621520 145149593 474252168 862189276 533711794 356172383 1015468001 544018662 161276809 599836518 128057966 503035407 186883085 843423276 624267610 559632372 821677394 131721299 174098895 407552683 416623797 1009126737 21053725 501841359 940917891 656067168 752809720 37666439 545294200 612014999 974616522 605216843 811240989 954229790 81058154 415297640 18429492 136966322 921560721 149009476 932417542 654173158 344762586 236738353 91131885 734216412 867792862 808672910 694007980 385326853 889723786 536799319 886941334 150781115 749699115 666668858 139456599 235913593 246825525 87360759 105740570 552049893 380768976 1029937437 871707082 416746393 292123174 518594912 417691939 331942014 355674206 93583730 573896787 538675631 703365196 283785715 288689188 1030923531 733284659 520588168 276631317 925771956 545494517 173688759 768112746 519864642 547353358 924296875 254281584 852519916 477672099 102606547 382923855 1049048279 459693189 1001676872 663076170 402316043 981203965 954592814 657489297 35324318 533709391 912981246 787357173 661183145 811853041 413521097 397876588 243643362 298917414 954527440 703018561 235038207 87417795 448116656 52166993 20897325 689847730 785417082 484375866 879936040 731442057 473636645 139927839 305656368 445272419 762839210 439289779 29124792 769047046 8504381 367823058 102596228 405270780 887001803 721598134 356319269 152030921 355154102 656265309 1010912532 267269328 249907680 780619861 7875597 899500826 99931062 648149938 317887888 367535170 639456629 690448125 432415599 813843605 192219977 148871052 345907294 750469334 112008847 472346571 573712359 376298488 14450572 34751510 901671758 1050640874 448388966 885526737 895835631 875487761 474258515 462219581 437920059 65174424 310051705 593443799 914856218 623496608 217216886 992121675 900641791 216638509 631867915 429618552 622359631 265543089 874272326 458419598 686031407 944225682 215056378 779132803 50636604 624884889 404686090 377543631 858174459 557208825 682217908 437147581 809126441 145052823 189528218 889997872 720534878 575332543 1002722273 263468344 988043481 156117480 362687390 1058060230 497564755 781042012 316390316 187395422 229607400 868814476 349095746 30289407 393326256 720972518 323886134 801015741 1067769958 230264455 126917026 926288408 655359658 887674382 616006390 66279547 411327975 751300987 836403804 544918231 31404734 70938914 501337510 755045033 1037218340 410008594 256704957 29485974 725826365 487577160 602159084 227816723 889979209 83751541 758140764 434982980 567306150 85698123 1017066421 953394817 86171911 174005163 949802220 555057450 377434064 782715988 144679901 254879399 1043703439 581002920 764336589 254725841 914199522 1033591426 802062931 323767437 446807801 80525015 9107924 984903822 727598124 696615112 1019421792 692604851 343727933 672622892 776574988 721253561 968621340 309171331 663548475 782996413 791189543 324791507 742465901 114265576 767474483 790757650 691388372 689981669 786647657 61077554 68103676 143803047 341510310 660220034 1038577 464386120 74253660 304539781 253859319 627430240 1054596550 457917235 754187855 326565142 898608771 1060564826 561234823 895950199 833871211 486282279 692454968 267928775 105801386 156359194 933854425 324466885 679563907 1045807062 353521179 586235083 1052440002 257325091 369489198 418742953 846865550 560019679 587082421 4982314 625941202 597596354 874994885 911312840 661773710 940217691 1065080834 263919784 721408484 213459152 247544981 909663618 636178609 557015592 884925135 70928429 735685746 134717278 209603139 629134699 12295859 115863117 291067056 249642419 1057424201 286780934 304516052 291205504 472888978 39254263 964764003 188666048 164983890 181786431 378052553 928694503 540932052 811012122 348096531 997511676 1041079566 664061347 194428284 142447913 200625989 945455105 294825202 515521188 638166966 140472250 1072967670 704849098 358015012 372776919 1040717246 990420262 148820848 337910478 94691837 1026370524 410917496 751032624 470533606 444336854 310097173 638225391 452218982 737491175 926837407 88181033 695588693 203639872 26034015 212173754 83707728 648670261 235525590 627655623 572417827 193302654 396287824 1025685829 412168092 719196043 387677554 58978931 572888885 873761470 1055052744 1006693457 105322573 587006513 352949555 255939049 616147053 994756643 465660549 494328477 211107762 937742536 1071240607 805379770 372854163 797577176 615808220 705408602 430740357 553205602 534465971 127552755 282571849 593666032 999649807 86539774 377868663 444686114 39335454 364985251 550129779 198494691 799011293 193493478 967403842 194549775 288783731 493602501 584491032 924882916 65040267 980878577 616532060 80118060 780507521 923096359 253213452 696303431 952385553 65506678 530920368 713255341 977769415 843887764 806443270 567762977 256010442 64014120 549948279 950512470 44318731 998883194 98074483 797220088 728635918 417583828 1053988058 184013809 475386205 940256995 746388377 886133797 304371532 600477725 368368700 127730953 336188633 882512305 885943094 16871093 547785894 329868293 469030449 736694339 686970939 257215484 915596168 481481820 976767493 915262420 289174863 559963437 99703006 698068421 653593127 450847948 517255291 689478334 381619856 466277446 77505227 486937663 882139906 629388564 127757339 144937795 10859932 663190172 1023914482 482330084 926984768 91500832 798903241 493450481 840728056 851102047 170406619 338380721 721653890 790459786 4398846 950988813 745253444 761272943 848478976 740358220 334428840 920166546 747620116 210342325 892798712 944327724 897202887 726128317 475359274 474318812 264838904 494967901 280511325 1004609983 564776636 428093983 596469396 440352901 485920797 216270631 163748027 622577223 795429852 316756968 854877116 371816831 445813267 263271687 433072086 490729808 655190475 840413112 474598717 249874355 251051140 650311595 126686585 802084362 328646599 768663610 790563300 195401647 157650438 90453809 605173099 684921237 795815895 488277498 992770866 647032210 465819441 398155725 373329084 35151790 815295746 36297918 526614378 929059741 913427113 826504921 710311095 843498359 968970833 79381257 242083622 959814372 451740209 973365110 1039368286 590050152 428299522 58469660 979421554 665225860 258091158 472927416 273171289 270921480 569113207 204239804 390880286 692615867 690288513 964188046 387013822 606588265 512493131 448503362 396893155 504392802 660547315 696467944 256276812 332087673 191019633 400841819 823471418 364748056 512217221 1046982723 865185697 1018779738 86112428 352505385 803242515 290313555 451648190 151173981 464597590 762777716 257252578 1022724854 319098625 286129478 416606529 377252569 143707205 114973265 425879146 6536343 68338743 27132238 787294904 325827616 708610055 763668937 818625846 993676338 596455763 361935315 344724748 5166255 775831197 522771932 260891753 1002011572 415412800 251721480 838800540 117351503 772317203 376836810 350262733 911048155 1052109007 810936771 391959914 374279356 628465484 350565904 158112027 610620518 75326871 797168505 1056582707 462668916 524952952 986182053 347733302 548392394 963227464 75818031 50767079 167590608 731757411 63958495 427909266 518690708 671171433 367301721 420906069 1024899050 482360159 629134374 619022682 115650906 307916077 322346413 853259813 504884658 648764973 880409746 840267107 992279585 829256588 283556449 100943533 699626430 89793215 362528492 1036322732 137440379 591470241 522435808 892502296 827405561 337480123 301502366 648976257 392782669 522628755 640433694 1002365962 966146126 117195789 375199658 565199487 666199190 183581386 557110025 356114050 993254896 972759452 261658264 363682423 771359069 37947641 7968596 1004520768 1072485374 733283229 36741302 192485174 475982162 310467519 312026063 560503316 848526125 179230320 871854420 1013928706 450492147 326180801 4198190 86644533 690855129 884563672 736434641 307066506 906411014 173634384 965109212 53464328 849327937 793027844 61358948 678844145 154454565 356176847 126275050 761113698 854900459 1036942631 364659618 465055486 948554546 764296849 423292912 509319881 218313871 241640510 83116653 817503942 711900022 94643373 54708782 454391570 662915365 726543330 299260851 801629089 70737821 683328322 944387391 999532583 1057022031 580522857 739085377 1066311652 545609415 512595617 69260060 740946401 226278113 624164474 410325716 460998216 331819902 123532523 506780077 212968054 988174204 91782515 443958449 280288230 525981142 103931221 83422922 516863684 485124257 854350172 609682319 650093217 527520570 63901377 210483358 354751179 581462304 448149538 566607517 1055155583 294922048 400220752 401521641 93063048 222496622 823462736 345644262 746788655 988784348 364327855 61127749 1013333310 262861263 874581090 334983184 433301832 577094887 297126403 837299099 635847054 933873254 358201027 280765198 250428282 192611803 585751398 684881136 815418271 1003100711 952724184 507900043 987443008 124679704 372206947 945612365 348620302 328291710 904072786 46715036 514084101 326267566 884661510 484170547 26266654 225149303 469790966 917860395 1067324759 800268352 1029200907 812874016 467284924 223739961 175414106 765154459 142163123 910938109 404358693 675507821 983733421 10692165 567969201 327984100 1006570058 594516929 985860776 485143163 569171296 1068864088 1032451207 25732005 902807585 100763123 666316046 583711098 693760684 704734557 806068073 468583214 89503318 280289741 662372670 583233244 248551887 29472240 64233135 570137389 95798513 198888534 722735335 609183606 317317616 427807971 406540308 298539963 93048596 1031616159 320026644 874657118 544278212 689582901 425465667 773765778 912726741 29515639 917657575 528468397 714989405 679589825 86939989 913474063 987304473 607150704 1050285557 662422934 1045295339 456091981 801710623 610735792 685878187 745145017 125126293 770819371 819348527 69622979 765692597 334740702 351973939 115831210 447756725 716427921 922950228 488400185 988328712 756945983 997583597 278250731 695469447 804118887 1062233056 112510750 30960052 191874347 347999663 967409320 12686414 619573882 838925361 408242045 513738124 614937006 183848771 356985307 19480274 552646324 839347093 613544138 985157466 819566214 542036677 478073240 255058292 1069694155 114185101 771218867 504441280 411698879 51240347 77949579 690581811 201276017 502875751 429440689 644262122 165483600 1286295 302672037 911689946 508083537 545532346 663440312 338870860 81510843 279605750 356817372 373760696 949525598 266997232 972005787 550815773 712585269 171608701 1023056928 785789935 791640230 621683061 662550180 567217613 209438385 396802858 618260540 964304538 152295688 60364391 862298114 712254833 602677409 481178932 1027819809 457016663 232621451 595139830 770037161 247218330 514731928 611571932 1025320672 336391986 605477126 600774117 884787147 666578262 947726850 262981070 678046627 664634463 43024795 966247940 563777115 428687997 334775078 492617258 307591414 1067380902 965623870 691873711 731516202 416890158 770892496 785390000 213491957 299902157 30402992 600689953 951163121 579512972 32401645 590536942 709605927 959198 877488344 510130682 53284272 1005158090 674613714 884876472 505287230 897391293 297478216 47551795 400906689 749504356 264553249 666691116 1046214350 16533321 780419114 111514876 829665058 413505840 709743592 426748450 87589534 387089866 946307582 624550363 997036116 1004274689 832266399 417928951 812478291 335921395 1051654593 226465644 580799083 426539838 784182830 632928668 119572270 146304547 569812278 772932219 971412939 185150527 29244175 858480408 191159206 327294267 64874130 650380085 256621996 504001936 306294786 954856344 903558734 653090824 523084959 821289645 989315538 153080994 465667883 629907762 413812299 161664649 435854827 712884260 238396487 791038899 892061934 403887324 113256261 943406979 74138601 476397925 567788396 758022284 343115997 833406293 981371058 651270532 225632144 450011646 868367596 341905864 1017805779 778273249 983458169 998414107 1054402880 1069428118 841354795 69864527 1023492668 815232333 405929172 862417749 97371214 889211132 202782018 488312063 555245727 324420314 893726863 79142862 166405144 582223048 424247646 937780518 239892579 813213742 745200164 1025601291 97624230 589649924 449753997 656192445 154839722 937369710 536729172 797850177 319608779 370279026 33435424 594611534 42853136 903926033 257602771 1012381574 646169627 1026138921 750285367 1008105790 683663784 719568359 984921740 289864021 600941015 868186754 547417607 367922096 472095234 914709286 464672526 453611833 161723380 807098204 563625152 630506475 254234644 898473856 341023857 759478709 556777082 81740516 714883252 429695299 431146161 1059414386 112134452 581851485 284290576 395172019 764793292 970695300 379577935 469767956 125774384 421144879 789295473 577076523 85765472 1050293007 654003043 194173000 771419730 498303555 202285608 16664502 114992658 627256983 435692758 880491714 454232049 306144801 342956672 845250022 342014086 559589564 31617200 984835602 564080344 203800931 1063818621 520438536 267911700 830652730 339206638 863658663 509579333 1014152743 661317292 1065524675 777315063 53370655 653992343 912400801 1043802162 710041590 779774143 267106430 3214695 768469912 602534058 260440192 823685736 821342943 359056859 382911271 173259092 940021080 946551284 629943582 1007057286 485942094 955467871 101161793 176721135 316249307 1029824066 839169951 556895928 743996715 534244202 969273789 819615411 274556335 1033702048 1021532929 192285037 166172217 562955211 243414993 644492415 192038851 556546285 732084128 855313502 23586172 285474285 919262169 860795419 1063723705 489275795 697641923 16014771 312066729 802504706 540492081 5632475 490349764 478172678 618055808 557238983 1004699107 1034217211 527259768 403195094 593893054 1004201568 321550245 854762362 198427926 848306576 22067109 982314491 71913386 697376894 614305626 561228810 614996351 627954802 218634040 81268095 308282547 152402944 706962341 171788791 983551672 666865354 829240766 856816648 651257493 1060098174 67238618 406385144 294013274 564006624 186097195 1018823272 285426951 476629880 537536506 294202966 63212236 900239255 603275121 957092969 856721341 31625796 217468181 824790776 228152314 469670508 944483815 456932142 969349281 953141520 841029088 430638534 560545497 110750001 50051793 830679391 149254796 799025234 562443648 131074447 201625991 88580805 7745923 110283663 193436256 320738760 189050549 916776866 772496358 14395175 787913590 132890398 439483631 160783307 259423730 478049764 751388620 724238438 203456892 736249329 644221573 575397757 82022290 661551607 365622435 487986577 328151814 650721589 349345739 777329235 763618843 148846930 312479173 787722536 341656715 516848758 185161166 102310220 840128984 541527491 360069099 645177737 613390150 1005500517 14741970 99022416 924849358 265960379 1061909108 99006445 727247870 226232851 524507219 345738162 165203238 95965257 895774592 268810953 514474501 354862650 358157932 98988517 287059937 720032367 220124797 1008440187 781078170 246074667 958831192 83641839 714283299 31279616 921574502 262586795 288047918 752299647 720839529 673660185 140985868 243761000 674775707 123126676 274310142 572759281 90863073 618605405 1014948074 1061014801 746511525 587536482 472176290 690384600 657138846 622249188 195171780 612055690 367831364 419337649 512556981 45720582 588866172 579484645 680319254 1073682522 211406433 474132315 594765621 199865673 915666006 13202572 133450539 309223548 520292370 135540137 732690270 629248784 850311640 889534811 133901399 852123130 87063654 573649902 237691121 52955694 808771750 877759541 711388676 873200733 783552483 930336973 356342139 346352153 998048459 844751814 166609628 762976933 271544222 229488599 560360871 680349196 945458536 789166282 1010651992 620770117 147048159 153703180 337098846 301668771 606463358 1045117997 1000319902 10039137 89999845 49403367 239259806 888897566 796868291 1002603259 79671085 624955089 551265572 852667581 510589890 323334252 61624719 406310183 911537794 578673182 5495497 27698265 563373604 116609488 1037825651 887349069 13820519 945789283 932215234 909930602 905842438 664387128 255739754 591717011 789840313 735615792 812512578 440248794 719185638 445519663 757527444 480654012 745058037 1007598893 500170867 813971121 1020019281 511904222 901961460 133309645 455107241 361715032 241963677 606463273 323171409 353874562 686342543 519290955 931577320 397015519 45266991 313201151 269796242 573154134 730541085 616256087 815395188 634616920 806920496 168555798 306051962 498611460 966480368 988665263 525817225 560626778 783199520 52325259 776158454 634164535 870122581 965603153 875968354 87081017 280939020 294967382 986076712 1070413187 495976978 497447641 92441705 446890900 377569016 637770694 471171441 708166556 864703163 970525491 220247764 600316604 746037876 96191716 652540312 344100213 463072125 457434954 952614028 558702626 571493676 130322940 742178416 909500458 611640288 512014029 1030116429 91877162 977400681 930337547 821230988 896508849 858031297 119813598 376969422 484688716 695209928 18195731 762099576 799878656 572410814 913707529 718595464 609289237 1668844 153337514 848637990 966031120 183123654 396637446 494977950 882486900 262920151 977982461 599011668 167644498 839146741 844155134 434787825 583799452 130196901 292670920 206805422 653220108 460066644 792401201 183737896 226963796 752770678 675188201 624549259 992915067 193377512 205456230 450333970 522044887 799685495 827948137 1031244556 873257829 512732653 224481983 192499429 938776284 399169248 845176780 1044265004 523814648 418872719 555669045 481457490 403859221 466364899 128625124 751850421 898192005 249704771 289166013 894853269 450985822 812484914 932307407 277109885 922765868 968642817 502058774 139371436 372894320 215618926 659335176 219025972 572407286 572264686 524936970 500241980 104996274 561694181 120051324 481837012 406177059 824395732 521313240 75079246 1043843291 24287972 580621902 655907320 927313163 745578784 386506576 900237183 439331617 1028865063 764570413 241886993 896619776 761709711 682153214 212836016 539435110 761442547 619679877 289720698 28956308 679562773 72206657 633152672 91476911 797794691 287468838 684688579 694153351 792389419 158816400 406856867 329751609 847879972 173005930 486219740 517381860 1017430309 596474759 243214174 1046418641 870525150 444971904 183443515 466250937 425253451 818392338 592695461 951364297 528490843 1030751076 981155733 568641359 882372386 994953084 1047216609 993521393 1063330971 861651632 15233755 1005487909 152434734 202404354 701734632 351450051 1051228020 884413039 843656789 408033085 637653251 139015756 13393638 653573546 205477929 575590620 217037371 1029740460 884812221 564416655 211379529 207958107 691303320 1046688773 22963752 441495719 749369186 505418798 954771842 964390136 115945620 854207343 244673422 303132845 512042881 344411002 655906445 700792632 852925313 303350850 183964046 91686151 492324291 484487145 151159797 181387777 197355097 909393485 637267571 526149819 358489213 563256596 861815090 1014945937 622846853 949967423 21414109 915008636 681008331 968066289 189155166 769927655 821880171 200286190 1041464890 450562411 76170793 15863356 437928556 243831402 310981117 463777241 637141149 902921538 200248159 1059906133 243732448 886992544 406247585 940806661 280865994 337949287 2915081 745413142 871857561 886997501 255332600 169392457 15084687 709746300 723034958 411624305 137116187 865534650 306620765 568028065 347019003 19610313 814689497 1071739663 863302115 968527137 432032825 878382029 869169128 494193948 651613134 6965279 224134538 999815940 352166623 699068968 941370706 948246750 626305090 372752486 508503755 1017159267 196513104 691090113 29065724 1011110515 532255728 387501331 347032349 1004476283 162926958 984938467 1058712785 909858876 410096950 980525292 841094443 878335715 239054166 1013241593 1051750408 250233357 154633184 304450800 1066618372 874235936 797191642 674889855 864105534 441931215 27420794 294829775 282232123 70069668 705700881 923804659 505477800 876728182 704595403 888735751 471530860 7256154 271758674 18550051 881438774 227708090 101926193 259574978 884080014 449569393 493263239 387602196 829936959 255398900 588532181 391367509 897336174 1071265861 771010190 833334858 465024244 1020382628 474878331 219845459 647214240 927511832 597865824 232425003 10113598 582081929 155492499 619012406 509869115 203350092 701546559 113189082 684483378 209485351 422135029 436279028 806878243 440711525 20258521 936911138 761611846 607020967 900378924 143501571 99795536 564591476 497079700 1017068569 815746406 1064786585 46923332 813459869 590798291 100689055 137447813 491310358 568519406 486411493 1068737539 878984471 1048367814 818520632 962054572 673539370 598997094 528982556 883297946 74792617 108875269 854402842 662641137 641082081 750426512 461168654 632257208 943229956 228303855 1055489469 505244563 51645612 964404153 43615828 58699655 800393075 373361549 687977113 119734292 880114944 671617149 279975740 314667931 756768922 120909960 775501159 614019480 39002330 298875204 834250675 1006922398 932812389 179825205 290993672 581763972 599247683 234523598 906060891 147521785 821726158 757544505 204416291 513031722 377232772 788423709 6712024 629143941 794188057 392764157 521124869 22319478 971342956 423273527 310942424 891663243 403037349 27652305 152976787 424263885 887747603 924431156 277844346 528409770 147837223 361070993 733633898 829213306 888562546 940829124 124013134 77625802 265385955 350448068 190539647 1029166414 999130859 888583902 919280945 1005367147 968097553 15138999 653537326 109374347 108914749 494494063 953417211 123402772 798988090 246002758 231584034 283150575 331168375 114074550 802575762 65274433 456471755 989590523 356847902 11497821 458576950 424731659 313291479 253595084 443921866 684486589 224116794 733077553 1009276815 338758485 487861151 1010603205 682772570 828394554 1012848314 35002368 564989180 746421043 595831952 975136158 152407502 152931159 407035467 1058635408 638371656 459525866 958677859 911254085 941826499 137105786 628150125 243983469 565244792 870868189 1004221841 769010610 998712900 495750468 744902669 796039633 313233508 1045190555 141353184 434673356 917991642 636391011 646948573 123858299 517104091 731878782 136668204 390602655 239249051 935432508 953520080 569666262 482290185 944765629 142681390 338958363 994714088 831378030 853140175 16658603 865250172 1034427693 704332492 785778381 463527469 238828768 167608748 994791723 460555022 214314141 276055356 22346925 715643600 622470555 1052708932 375103201 469656571 982466952 495644434 652822286 1047873473 917741217 989313134 751059382 250323920 87533784 216102958 703353058 137005490 880098545 1071770526 923702831 730672429 957102770 596427230 522144681 962297159 831871177 39003591 141226718 78724593 744859430 435266995 700985511 68259330 104884526 683561880 474759400 351422316 257399440 857056693 1043203685 545386098 384207853 113792131 614831190 619478826 279380699 333696799 411874034 865902979 215206300 434866973 840883142 624656052 1044170790 1067296596 951047082 40535066 405396945 96164425 827226237 879011951 399820897 341232399 465615965 328927675 672591613 429587664 56281857 697987235 586350674 756239516 790223346 464916010 798560958 545026286 868001928 769071379 100531987 426714187 967812335 358205608 452370162 268415591 422466473 1069861914 246459722 517932470 808617125 499251855 52899003 1029808381 688999697 651074365 86515398 218826695 428448558 387680721 50965588 597033495 572240816 177056651 511005008 530698572 52941523 212886063 105565106 440978080 704708517 190333276 227055036 399617885 621401981 689680439 377489587 506772438 644886007 721153396 411542454 633635175 73952180 839056991 467845263 955749222 673237669 266908839 120064504 620292812 681411684 714859016 1029464876 142067063 373055127 77424025 953728084 199700430 1054647326 701252242 775312769 79136585 683726810 90140919 337769197 756205174 576717158 447434338 1010512294 1045270535 595278965 639740166 888775403 775629996 789167981 550208955 1013090855 283992047 727686970 905025485 1049318155 739522148 42080571 262755867 843951008 910860374 166780972 186030298 602270299 469643542 525943352 122485157 942964408 79813282 46196079 264288997 605593377 822970350 792278911 639743061 941062410 314653940 893916212 139839683 73615110 210961281 196348368 247047742 137361671 983957052 845610745 80203886 291845669 576238985 1016456653 719024837 474693025 184430520 975848161 732620001 542422963 180617764 377963356 32396754 1011840405 93943146 32914326 305824018 277714897 306756101 801983350 464502655 485387111 234013559 189651095 51114360 683144109 1053560644 917434582 820157024 377991693 993545831 971284639 370727929 770300742 556103893 33769891 441248865 892911712 845011744 984269138 708875036 932073724 1038009667 1072044720 135873141 52953731 671782231 251955608 120081991 593041933 1067918933 904171600 873019794 664367937 620704284 43047298 249157173 466387102 533180441 84321916 52357610 12649516 476893426 199343955 625582987 1042012801 484022928 679850723 905796741 535728562 704578370 15513134 635907118 612617386 177364023 849891026 754817008 241808321 296616131 64450375 1065438224 598210942 938699636 616486116 1026853743 486089758 905698542 867367126 1036101310 696672489 900407086 492008064 360668723 616678046 583877098 971207939 816930824 902104792 329095484 754766859 765854698 17263069 61508330 361639140 781602446 619792017 258470030 424996925 787535154 1053049216 75317069 97357764 579953068 208553503 363861178 1046828601 1072082277 234126648 655348398 980962759 794067185 326372450 632291103 113842674 537609134 441931003 210318095 862295437 676450012 899484305 838283271 261785345 141782031 225809727 554604345 602198499 1072976022 218055119 491521832 387593454 414939535 565936408 838442372 110824612 362744717 593522071 524676911 106825674 390392033 74822001 833180411 561616987 508181306 735741964 96214393 752014788 413955269 1006108958 807907142 337875008 576084489 710134900 256341403 727776909 485966734 580523006 841516005 288779617 200420647 402152061 844684344 292024971 786366757 21481205 789085462 985295461 183097337 853063039 644356379 984670217 162397785 428154452 1031809494 540185263 563955823 142665095 145680648 236154838 727824202 503435648 1023015982 983129341 1023061225 991397342 463043601 935229424 240144942 408656214 822265220 806558206 610032277 166712512 30356441 395294940 142803946 840426725 769965420 440379369 694327523 495696312 715031342 634341502 96092379 358072509 938840298 1073328125 455007940 383950350 661988520 933219604 951221667 665102985 552514627 135436044 284194450 160023115 146644560 302532855 334248662 924414499 330897710 490239047 444128738 554525776 788662440 929645315 54812145 860702714 1032667778 667271061 416580707 491928968 919841126 292111957 1020527642 741489974 1028991060 1073498745 562259205 530404385 258465562 869604106 537410620 444048925 790511220 478483402 684044970 86587695 982159551 513162866 624297470 551999575 998521271 203919935 459929849 246058615 671505698 1012771036 355320384 930199451 632661790 848105604 177435164 851231923 1017133503 628477839 911190644 920235526 480644558 601437818 892819671 786677011 67327121 635436570 256792878 409731509 217762366 823759646 840484704 640295343 696991492 754166852 278779422 819585789 529461718 980336868 656288404 711450921 863902877 383842087 189025747 403915171 515445345 101834550 615904245 725869416 82015669 820901293 709410294 163503446 1053765579 1070759662 453288589 187105030 130724537 325634374 715169356 910846078 766750693 592187449 739931811 879548590 204332218 1012202217 553506270 127350492 548830313 701818513 780663967 278881980 304741390 979745993 1013062809 901643214 126606567 242738773 78266328 623837818 363995729 833208988 304955306 914377967 355491483 290432892 818545983 597293324 484070604 31988288 1032931085 207876116 936904349 165236886 377303777 994983391 358290270 448210692 480795244 947066435 348793982 679943475 519321520 757779820 839569629 421615048 139620643 1023115393 5828210 824844009 129227222 496788386 747775137 986559602 153856582 936624828 451393684 345059103 950792210 790270815 946793970 765604421 75740704 100214533 645304212 26136504 316926801 452821365 222488818 898175563 873274907 252170979 464234314 767735625 319723418 276875180 892588049 1052837899 781441140 20607066 103382334 354298832 659823639 613077227 614670504 758201844 64713859 424304236 782258956 265625472 860872744 841395471 81087968 106320216 495271328 847938417 259628201 152755461 570501063 398922516 282088916 728288754 73576053 717574410 996908253 560172046 185355760 91316417 1056310011 389770062 1069934799 441655447 1024671397 615459706 573668410 191963483 916835475 390932772 213518760 438293131 757903343 232421745 293425440 881913883 142772345 936416171 203330167 274867780 863641662 603306359 4340426 485914268 405041181 1060654046 272743085 175013319 325492314 827639789 270087627 373701567 146459664 721047880 581777580 243544946 259073127 930507905 258811103 61715151 273387278 498975674 613481973 678703670 1072844076 937184914 15246290 303699581 523261325 93126269 851081264 1067302348 394884784 437598369 46875145 679478048 298771442 631178028 802924981 108524833 21921542 652006795 244347470 986668222 681953533 365773938 776910291 478428385 615356359 24019163 431937522 457066929 219973974 280645674 469869376 451491108 927631049 970933650 580700418 901722692 1028235446 665387331 508485318 395234600 342161671 189513038 70740613 314691752 272644696 263769269 1041354132 488432893 916155741 47409464 34854222 342995529 250101427 251294720 155555498 625670848 476676975 478186101 65486538 703585430 461502614 982351616 894290658 766701224 898083964 167666623 773041339 529905805 404951055 380707955 5172622 773118695 149817639 607109992 294406322 977813629 808662169 445812523 810509869 620637105 681265869 141082142 650925155 849820102 324446980 396274052 852611188 400584097 709794789 611294788 594673236 1053112189 192548149 55755089 315058173 157504704 460415910 853838535 142309138 451113958 483472319 92766478 427206355 389678134 786853222 468647522 793827946 530357079 169066217 249135054 852828925 570401263 19598516 2257771 295035890 472301734 1405810 477213589 717304891 669902206 508967105 914651038 828534723 929126446 355294565 68737782 486375777 755786500 559896510 471147878 592953068 359501744 219246026 335188941 993140269 835547905 161014662 399289145 332966094 417173160 477357981 313499534 111804039 89954997 81789874 215244902 566364207 572431703 938511945 470661088 1015891803 260989876 503374123 861233386 1010467910 938238096 16140750 18483391 886995077 370242519 519849282 615694380 525828360 675354558 193684105 321290390 710582115 158532317 968593702 1025410330 789916813 41291249 546228992 447475719 520801643 592278374 293582693 113463312 224832530 987023801 213013462 227514700 1041317583 1029150053 369010092 677664072 560544789 342849270 496450711 322017539 319834868 418703788 669441234 247285487 631092388 582634528 287235014 30299159 500310303 264627728 387448228 586057759 721975219 963293556 362300746 858477850 912063863 1032791190 641258831 110042511 980806039 444866708 973186180 479392893 441860311 803501171 1027524636 387236764 530278788 641001957 755672671 884498837 548940670 628836764 733108291 593217166 891693253 337531292 803670754 741817810 891514012 500082740 998522740 863389115 131265334 955927592 1024194705 34534731 408937429 108199815 733377691 614699502 257537404 931816101 45906793 353613674 247611242 1051902710 533715053 339805282 837318702 451081643 499945499 588013597 997519981 254624970 378927456 730121844 79407988 539187850 916607499 434296536 1058134967 151673837 271713950 930715517 556327715 360705210 411363359 931677558 259406247 963512037 586534248 978454534 441996113 22871028 4196574 438829300 708082365 150725713 465545435 538535081 192813764 112326822 850565866 596919711 756710344 313273184 244914312 973654452 273142973 978977924 661879432 357228013 433364420 14040461 335195056 536347236 661633374 98440294 938536595 260980154 1001422455 744837268 629079264 1022130497 362417607 169230677 752660793 1026035087 881045391 487153446 1071285843 245140587 737350117 557299758 1054914477 296083898 141384761 40922850 677311524 716482636 514474961 428342574 713823942 717520596 1072632055 1002398044 67430779 11934306 351142487 662035008 443987268 362009521 310595962 209050729 936313288 947812097 832184165 316192153 187030419 1043910578 663137630 1012203978 877280148 981841057 521463981 526209192 1020563269 294797570 533328102 942595717 596199375 293000832 453069754 838484034 385203729 280354227 914385787 54068600 678668798 749444310 474072157 199355820 458995384 497761162 624526439 397043376 115277697 662122435 1040602296 549207069 767022087 219478429 229138186 1060357237 906297524 777061609 782420411 653753961 972811369 908022457 577178448 48947129 820576837 630163071 907905437 606195809 967918386 1030334247 913932228 70675108 435666992 965955514 236292458 55553152 99475825 767891356 335254719 84765922 268622174 538584429 625232391 166203233 239596508 805585671 51584952 493682968 465782010 517975281 84170259 309975377 510007667 1025477715 484642770 552552464 950969133 586517694 394329055 602750465 39500081 836658435 854541398 93659375 606367596 802921409 314477136 821026563 246740064 484077780 1049958433 712338400 274350496 525816776 883935913 499959896 155530907 354095218 210653347 197706822 205171195 165785849 893639418 266187333 718113094 264814526 1066481643 781184422 882956780 1019079062 173917935 1003441261 565284169 749829203 914212549 663299116 627222956 1070925133 203382444 35337559 246264582 446117589 969663912 866091130 531481790 744796125 764205279 466093587 302448875 52882689 790476804 506992958 511290325 256788635 111797114 695465562 997824304 31408081 1068474676 874297693 57866770 553090384 1067172488 114294134 411996078 524839960 553295102 203492907 764857971 341070399 565241177 951638098 851504232 724481106 147809619 445321239 181031153 880832700 733027781 220693523 188516192 525249600 46434692 807850786 853029768 517962504 238455350 293905265 582304756 634311561 213570617 592222483 830949026 232447436 563531197 199827611 1027151082 57224381 452849984 848127159 317120629 505773605 750166245 484017080 319158537 269575047 523672122 654508987 336881713 910625814 74032585 730638762 430583798 223388967 313000471 364299077 608809578 484930880 756482756 1054833603 417542466 125246808 414950286 399863072 920842279 289091826 978815549 178670948 42528766 484885480 899694175 685616408 80783226 707197494 158182958 707562323 1049359843 181461634 723382869 286943167 814871753 958859004 1002208570 122751927 1030092819 250849485 329985628 507853122 277052381 1036772670 1043157830 809110104 995056999 216112612 1004878395 604145955 87125603 544401843 769336422 495233693 217179777 587610404 411769215 705662205 158111421 547084710 770286349 993572547 454971952 739200045 422376779 122625981 424265457 572420209 648193647 341351710 86556443 934478413 860927736 1042079421 1011099420 9690905 98089599 317539062 434821725 411052399 556409442 155949078 300697067 842058963 198724034 882762583 55364166 208118530 311323809 66774351 654209854 1046714898 356597483 24611982 914951684 938975530 817362475 443002521 559094073 1063867503 229592229 667823597 684075687 569606967 869407370 198956834 706436002 355104011 439157832 754520006 38862007 295743257 429052823 51969270 91823638 969595183 940125311 434645604 652251161 786248344 871743447 463989560 1048107976 53646077 263352235 142284881 370521728 609633738 735104787 461801363 725354895 1063662063 702532525 281612118 441160843 381549543 315097342 137081517 93668495 388799725 729799941 458238229 51315599 600459026 1028830313 338138499 667809579 926467380 512421741 97028434 769085731 348216645 292638329 239987870 1002465861 141387610 636938695 819056347 42463928 805666322 130982546 109389506 316939321 840044275 56869313 662538457 422800695 572725240 790333172 940998067 249418510 32128243 1016327587 429557333 368066947 190437945 557095790 144415935 476420863 536768170 736856581 419594820 1055885765 313705200 77963168 946153341 481133948 785193845 1007455558 867245183 835220202 541904816 714865062 360597818 753101246 749329916 928402317 79201112 183036993 66407587 34038853 955488974 136736500 1035214053 708876259 117655274 457189169 676759178 897938057 294134550 335332022 303686938 409091951 793259514 1026276518 470641324 96823664 466589661 916008700 289410098 764617177 175982932 804681435 60424803 563538312 596997611 642461520 932868127 501935958 88561666 949256299 896072089 732465690 182697622 573153006 886157047 1023361544 3145217 960005543 55820513 503206824 705017486 1041757929 60551721 216677687 272793703 950554581 416886962 681172450 656253676 461030962 886040960 477742324 1014354378 1007966436 719547734 608770785 715917028 1059947373 982901273 135663993 115861075 73720225 287989765 926732188 884824707 859621522 379114454 611396217 359322486 29350453 651622988 538803915 629540216 508440975 115914925 228287459 1008752218 89056907 727443251 153230334 972089304 71777902 184625560 682356418 175349683 755085877 453701887 201979333 649103612 405014261 1073448749 844446636 850551727 634763235 511349854 239614234 1071704219 602883608 793828112 563744235 674559092 634416769 494346598 529331286 274001410 698001423 113878909 1022342759 283174136 639067702 199359181 611668632 206734122 641655194 923878087 693405168 787586481 198840867 440907938 240924437 651026482 877211019 455994635 487274013 705765446 36640561 314971127 865510952 741903216 34059897 104072144 253005688 894928522 428941025 455929593 31408288 990664907 594903949 350975214 501475545 806044395 396658867 1007016019 368356508 224852519 877026805 716008425 292314227 642248977 625755503 649729937 242971169 412479312 279276508 888638423 553014620 1019483810 590044828 956266908 959485901 79828544 886965020 1018733718 104915431 852708355 762950418 834818183 37497889 850611480 373305467 109851727 598549984 1034741460 167815943 841035069 953460338 504951480 911780052 171833237 1052710455 94192307 794340168 202452395 1010498870 43318299 707696131 279163213 255501700 368299028 117036420 452283916 580163967 4477583 714807563 375581930 911918522 582453137 469236520 864131194 906499685 244158337 1060991549 946196746 860891045 663205698 700431144 720137489 871024798 480014761 347925207 518598557 469717672 433152043 1017624934 357653826 722123390 527581039 477381022 973507052 955619821 219792320 243221321 1067601190 110366008 179925786 153849971 356383037 651120269 779217101 845798490 53795889 598067211 982258253 94551656 862930864 479671206 627820796 791315784 309581190 211907887 221568912 107428134 780958532 890183104 494830975 289683328 73293104 579676207 655287633 13941950 17584419 175593133 437681793 518232478 481559068 668262269 625985276 420914808 229620077 160377237 321343898 786553689 219005600 1062708000 21073104 688005944 45463462 479964464 680752015 753865400 547358757 1054976099 653495209 685347102 208566662 21657809 552402076 462277343 340696397 345211200 950862261 402729328 141811154 753091825 778190497 960651650 643156134 941613867 615307733 1020602855 726523527 311503907 265537742 179767803 74363406 289285315 981094441 314328801 647577235 781433394 76586110 56420913 554528840 440534163 105525277 904812895 194204041 617523298 301772405 61828921 163606749 521959565 1008475315 23429463 148486604 470188844 298445919 772909805 888786177 441781761 875799690 783031568 791585100 363693492 49879993 59410085 1070006430 166391487 562281772 238828968 883791215 908965675 529911979 355260764 778572566 1019804906 382343017 975955855 27248501 1033657216 38013276 301595417 630673815 648698007 572431954 429551643 531575351 167626113 174019742 219248937 627357385 503272728 286174193 1035213639 839074552 165591539 446158361 186415584 1000204711 928838228 844223881 607494749 198269375 1005717748 922490570 264247008 588508900 986434355 129368258 301362363 843003252 711328980 918653571 322209326 936664546 120700241 552294147 607194023 70938692 180140474 821074221 796712834 968425823 49095307 1018481538 383507344 376330882 376565442 906388966 769077745 562183909 1024395726 171947760 1042115230 872049076 23585042 573781232 948413012 661005592 386353547 961200664 677239453 530818354 606479247 444649486 1044509845 100027212 421338483 49029238 551760568 1021607071 191149847 37589189 10850125 587366247 48072087 380874960 649133819 890676761 607940516 331744986 620982001 982198391 584786357 553176689 369143259 19226853 1008006577 499291150 612192581 752610425 1017401518 479856799 271514047 470217399 42151030 1018959880 797041909 650413878 250907864 582584174 608057637 695111665 533020342 174870980 257405584 27673442 925311210 1042248244 402097534 568359629 337584767 700890424 1006859019 40482813 52427128 356676262 72212903 94645505 752861146 375970575 34060128 514119219 378767131 836312872 697976840 63010483 891009746 684398167 609036714 1002465648 193429664 784118267 171153502 544881466 75476035 737867401 412753604 993069570 516939498 858442159 1024191107 227759271 721080903 98642716 803707240 291626526 627619196 433884149 1072697862 666577800 684703911 416108881 711260690 575962245 532997541 299256464 444060476 803419111 638645191 130135451 353521228 379183665 460891755 1071127104 746606947 27534503 350393548 423657786 493375193 953125049 303755877 955489518 1037174434 847229486 109229573 217960572 219896873 655663139 247063030 962866075 888153073 571337146 449072425 171288778 128048250 935779626 999056483 229225852 387192238 1056986322 711501641 210213910 813968374 913283699 459482024 347507225 905262668 314493145 796980249 798653226 950297124 538498990 718519667 619520555 204321598 1021482397 610796473 985333173 290510796 423279874 549472190 978590066 508848035 858988244 930653184 730386171 903870487 399158900 195382436 541692338 638803083 221409339 94950417 1015677395 506756975 382913437 762562772 831942460 960942492 765820977 426846667 429241713 580991324 601795435 275092388 400689343 697980694 477113094 824021490 897373035 474561587 696042857 620859949 181110935 411907368 976005766 199880502 526201352 601374757 316814667 844191336 793163997 879277886 793379602 119861725 12785097 369849900 515932188 1015774303 121199854 337919204 46978627 594209187 193634612 50365860 293553980 1018356477 880687195 323523232 733957583 661391725 96899945 585432113 580033146 371593916 895021795 102153273 399985462 316302530 374327735 557066586 414008322 544399929 8768858 115039217 91794079 236316282 105671899 827218644 636880431 849521150 182405334 446018378 209277409 834010 427066217 180386259 198984537 13936314 86215041 173644914 708190433 492684718 154877928 506040758 1011892745 277197725 282695060 500580668 983519362 293390267 995790792 394088274 156979688 892845686 854719414 734653500 754401827 729247825 150574444 265444152 688696524 1057195392 281604563 267822973 812362347 448947065 102843917 984509441 599542634 346275056 710262918 1038219898 552818426 676482476 981502177 108373661 600999799 658762718 346865219 813154118 685337895 734336210 242116609 198816443 113311094 923272947 87985104 184822899 490259763 631506787 556871983 544156854 305882686 86614049 758235083 744191325 917932956 233341319 752451930 523279194 504520305 94732492 1029286409 388958873 953928265 271205528 1020108378 57140068 505675809 681409787 308247594 574245617 994504507 154043722 744967304 515965300 110272774 892996767 444363879 223151633 364729295 639177581 600587224 328886708 993476628 619835518 967689767 313726542 971138403 1048738422 6870162 184705574 989597323 764855088 904495297 612886634 461016061 815623121 859590691 278877325 276210121 501309595 458650356 834586713 531704411 478534336 389885695 139365595 306656365 418713127 312697092 623833756 303602298 987867649 136173438 115616386 186888034 339819315 1008630136 844576407 739634343 843054735 374828585 771575282 1046412510 242083258 70887683 1028026456 240805687 270717784 882991441 733108230 885321773 789926180 889566307 196864231 513883894 801221116 1050780903 168454939 929127892 487762311 327928229 398819545 125201115 976190000 610625122 219941659 684736346 137321538 206582611 201442543 515707074 343976116 246270437 846484047 357030615 1054422143 611545721 619339323 566878321 196950882 922415827 967538263 157704416 242504116 291081841 124500044 830974795 727481926 484036640 906641847 534790539 409900475 749335581 714122940 610320784 814154433 543822244 236927592 380313869 289396631 889707574 162618203 761379277 931809267 643910884 1007525188 160918908 200860685 826173639 908814056 718147609 150908502 544382489 545713722 5136363 1052626350 155981306 65932019 509325833 970122704 815657346 831781104 85272623 97679498 646524905 781298612 184236358 372510812 473585739 693752009 1029498795 549812254 727086720 497846926 55610097 490843378 791048567 107001338 1017526721 105756057 383211675 88943102 275027957 980830036 838904510 248663691 742414991 91730928 42500041 98071755 317986073 829052296 22937645 390796591 743693558 539056355 408114119 927266622 767013037 198571636 348478463 373947405 757725916 985358268 910251984 943239492 876074854 220265854 280400206 245046227 534540163 845893493 668981691 1055081313 493436865 635897131 634133887 948106923 737449591 431125936 424826798 1015872583 605514749 1067980076 366616020 662454101 453777460 106370400 366497552 739313864 953145361 851436989 749717584 946100414 117959167 143905132 998335752 433178444 519736940 700060438 972384535 1057852117 828327899 345123213 183191660 149281864 853243033 229411955 245770018 316395421 436803319 84679904 49553543 151892804 850754359 768132265 846543188 302467604 778107009 519200956 177193306 304625723 365925261 685061166 608015902 195229149 937872754 550703067 204492159 287664880 862346633 512800623 853657683 701591081 521049577 337446546 450834129 206791849 1057076358 1053480367 589219695 606680176 272960553 376781337 1017532047 778034895 870588373 787420926 647126710 642255551 815027429 177140330 494892224 400165910 1064819461 403801302 412417107 499976013 760409358 826571478 644324968 195964390 761967709 621566612 479383276 839738691 26848676 893594939 189360428 709049188 806958673 654726007 39261183 970126028 324223642 341575858 158339987 528603241 68632140 7094915 689383504 602239567 907038674 286688797 126355064 965001105 619722802 920364466 478176008 751783749 96288226 15210332 738001725 324068461 547812517 1052328885 1017203629 637950156 976415327 390678267 961105847 1062822511 23353985 104425470 224485515 475656991 219139878 1066906510 255880861 959848805 949545098 703025771 956754245 830822872 897535516 105049722 30154703 411075325 727738461 542522455 27537035 487292082 124048360 839276602 502742271 1019831729 735191398 805237077 320860141 645241807 516533008 167151277 633331938 90247594 226728858 175090896 567564781 176789019 369049556 540882056 141036406 800254355 543292056 768087878 59602523 1050563021 200459003 337770326 560826780 372693213 895447301 271802065 370956754 202360650 856337068 314114130 211561714 277670139 897057061 604100431 457078264 341253279 441472603 37526012 75889190 523087632 567025649 937194233 236453957 223882058 681617395 34640850 591207609 136891191 898009904 981750417 927951935 1012562599 595323840 879902372 520440030 47099088 919966240 892753036 968232152 199544074 79124429 785193900 994712274 381023256 22725724 206346144 687247186 421926744 137302023 741709070 159073753 840123101 99488439 867740037 322498483 787478761 358607197 761993357 817889738 760114172 703472717 913143990 543858655 697573832 713145159 754365332 460444911 100992094 709259668 448820535 175276277 251749715 82342470 913715525 751147408 837898926 713330519 560097267 269800086 997177604 389063140 384420233 921577370 612245064 944644115 586202579 732437024 518509344 794755687 195500426 741841358 447442372 447527604 748685380 962934650 886413163 558812459 514774712 385144418 1019839835 343626349 352221451 158650624 739159609 706779236 621432016 375246745 1014612121 145994590 986997898 403404617 464423784 778451558 252376747 91912598 691112399 212286545 148173163 201933006 941878600 743551693 77408611 117147730 8433350 528771822 1030811410 191473450 367181978 91494534 940700567 1050623506 987778661 147360803 471819248 469523151 737295503 253323936 342822493 467839057 837679975 508138707 591551134 967156767 560858775 539582899 533339276 182108004 481214121 292444442 569818895 26542950 461829184 46284024 413159056 376720353 147698469 734732731 137044572 322603205 73420720 1034590760 620942757 16362897 601319683 718958791 319407172 326709288 28119656 788620574 860476016 358018463 799391015 865089176 679614850 1001672429 963418531 307233199 242748052 277730383 944214560 736552047 23422232 40734481 557726844 629221563 328602230 213022354 628931349 321761836 281355974 122080040 1010549365 489082716 837254521 891812816 337001730 1022700185 207844885 606980584 567083816 195387989 324212613 563183506 855985648 217209383 689734424 292948184 430965553 766514025 95973027 998175994 580186842 248559874 188200137 128506668 430573191 284756519 262636979 653212208 49034600 729131964 444556641 943762040 74191673 894838479 744923562 711021361 828174867 476163528 981133643 1058503799 864483090 863841301 151741665 33240728 33477113 345196169 715497121 330864162 963996997 342552527 580977874 987918601 530964808 207219218 616352667 978024303 99671796 418970613 146379486 253410301 1060165661 86700384 795363754 919701458 663158282 319693843 122482112 530278862 713599393 1067784216 658383190 175861025 859498477 451244854 737740311 811742628 1003866034 613248910 298746505 527634777 49781990 921057488 705437824 414284030 661598391 1044657109 958241301 932210948 457480531 878424494 976154514 617291363 966924735 1038431045 348283054 882789579 101524111 858832377 286781007 474772281 71351814 788108796 494198840 708881690 308530437 105374917 225054209 87230660 92558564 494631012 122258139 545486564 962593984 908924255 582455962 997254394 583103702 38446543 574188337 740899522 980284542 899879476 463534669 1000421938 100959890 857108134 959337252 644218771 1023351012 773862292 1007069524 767321317 375896817 931059254 1061536032 337392651 984883280 315357380 1047657730 535532964 964499228 583341877 41075781 946254642 971499855 712501123 618410749 606487566 610758919 237565836 632284444 487154333 84819852 216037456 492435595 1013918126 261153531 4556541 449507689 289149376 1014364579 427993514 391630023 477551725 918069300 808967018 731355030 138626273 362580264 805012589 29055005 1013506210 211668630 576419304 938200536 510890986 545560955 1067293817 1048614701 555245238 790165881 389348513 707968177 87064409 555449158 861914217 539604674 343206693 1013504554 739399558 86771675 630936929 193484903 163870828 507098097 547449617 449123494 627713193 287777700 797518379 304467748 113515797 394653859 213738362 302514112 861985786 617261832 456571451 446476910 918175187 522187760 133805948 440076409 266493002 1006034225 764198237 493716147 1050766572 16519597 527489327 158554791 887208728 178439497 531300225 884882108 919598913 612866829 416029806 208476632 208400844 177219586 590502164 35764161 634297114 566939686 721520967 105275615 412209406 727737139 1021078602 112665431 1043562900 955124069 154247462 14112240 549115379 560872299 858697817 810202669 727442729 327740180 808139808 94122043 112560302 584853965 928584733 850360722 261429900 860642189 746329171 243069480 394607963 849584453 190956217 878321361 316649710 233063958 355540525 96992181 961477795 310233962 1039121146 532507451 971288585 852306556 769492939 936671571 508752759 225099380 489553563 348840539 432127808 381595332 356895015 729001934 293504563 889285020 595925147 974575689 648484813 893403663 172803616 232838399 509599578 135412745 254704207 426691776 163944715 375818617 33780288 32589886 445140628 263260070 54764461 71684160 609009931 984210161 349453828 912944268 1060666528 705265560 536769803 712305054 798765648 152212973 667086670 752711237 858722981 26322704 579334664 306772923 921620973 318031970 1033282949 844888336 354594942 522950180 775961611 855707822 451019357 250181777 538953796 250373209 634969039 986535376 50307020 1059275938 774939265 37813689 939726952 1019551483 778844583 338492004 171768262 709446370 540108002 714330518 861198244 990804526 941030265 879606391 626535045 208056235 539781699 825699802 1010460797 534869903 288227079 778732247 547175025 847570767 913738974 911512140 861145020 441235201 36872236 745262350 939383173 927770236 456845433 387434577 816863888 132448818 394075717 818383984 210357271 507455135 325158782 116521106 251790099 892335623 967894158 214776806 800418902 52471869 350394679 787485395 221179915 350362030 560601890 775503909 703338389 384342237 469639161 1004130435 358932944 591689508 258805475 805706027 637610141 875823538 349033894 553640405 970356579 451964176 669094724 837757112 135123300 961523493 285072911 151347605 59962295 573329884 551569813 540699889 731217854 903120822 534994736 521804085 305578593 966415220 300072306 583617879 39740398 124948072 479398552 721928652 1062167089 870211843 533529849 30058521 494386267 1028459584 296992873 226677623 414695548 447506829 1049723293 441925167 81706916 978360625 409290923 378237238 218359492 222509129 868013128 994824616 535504054 8963381 668393197 899693714 489901968 581529993 754329014 1029913062 249299530 273938031 1066271884 50608992 481259214 360253551 850723731 583456146 528027688 533178276 119535584 865797956 385997881 450854759 971341239 112289516 161213498 267380038 538965080 339496703 307295859 520126474 971051717 1027417746 825789624 371297949 412341629 159810667 948434742 295800823 853955378 857885736 652320182 730254926 727053187 820519412 389833999 471651367 681987042 954697706 234869343 631861817 226961346 144205740 388938896 714883109 186963093 524281205 757726615 375740356 828918890 728232473 173482967 207163567 294212252 559453771 923685164 735236268 467517538 278344781 488501762 108887433 969490682 576509505 198476860 691952218 924542490 794990111 184477331 813600298 477696328 588667782 318510802 723831569 681697257 1019080639 187445676 826260414 720769214 347766163 137153234 770856710 897426414 867375135 1015560160 73923607 75064568 159052647 500924903 785078867 18051734 344007839 469959882 109977899 748759416 740583037 408250177 357683132 582489170 131131801 332737418 425363990 42855901 710478877 382135760 269711714 376433761 71349915 115589278 447882489 427551022 275066953 908776201 57122646 469571681 824797719 715637541 37191059 648241293 500328796 240981582 57932366 211868601 669947315 902692128 138339301 810098542 923915828 207699773 24185430 111323785 845975267 805224696 641612410 693768324 42924765 236986222 830600801 893908071 624181376 319029206 43059067 790636351 431893194 1037086892 646170407 463069654 676244307 353788930 408941309 748392091 158193658 854663692 869575370 758463757 271410676 818729932 1057854709 646640173 551504864 590299684 153147293 190151477 123065510 1022908796 901311289 762222901 605596625 977548539 795794123 1009361536 344714305 868591743 893631349 472050278 140064323 600848549 1003609668 224626481 673385158 154450577 140986294 820802576 35602852 784396923 901319057 472876882 541966602 656069672 580875590 362659060 551602149 375781103 591203787 804000515 181587770 702204747 536772561 593107062 838786267 569435321 533555830 325006757 463033156 557783068 151941756 283480038 552268674 611072710 353565802 87539620 972339885 181335237 488035859 130006399 229260456 929235309 838237376 117526199 852024390 357369398 162977189 872798353 930239468 37065834 987890822 642116471 204673196 463255126 584877215 469663846 849202179 549149160 565838648 546891628 572795483 891210145 233070500 85610712 310226409 568378473 17467947 134461812 556793305 855878348 652119550 768893114 762098622 667491941 883401746 882246891 975132794 32569741 639576254 800611325 896017279 179392194 205229305 851216321 193380631 432411717 358769920 392421531 352214537 279195901 110974390 370473843 758914856 471028654 1052674415 792841400 747869896 754786129 1029686211 21672453 910526714 816985555 454131577 140898573 614272535 782134816 123391554 92182313 419933837 296186162 509622657 332939825 918909456 777629392 12100442 857215088 688390374 926494528 950237687 682289706 303525086 712255591 550893583 938004707 322478918 984058597 600940499 799133792 539699451 883194614 723844033 956238061 422221964 710705724 571252928 1027483552 1039062558 30441123 343775558 1043958800 582620318 382079549 595067183 720734313 935139048 974187035 246577930 438649683 507823517 83293194 545698249 985447997 194538542 563607626 887106995 878109447 336794829 293657753 864804827 212018778 309151687 2802250 468118016 489735013 332127951 996460172 425739291 14121771 882306768 304142937 884725670 615999491 287289078 63587407 918179787 612370694 700054837 942659137 921307355 933129729 411580009 216754104 334203274 497022725 800073656 445131815 391254042 747669863 122134409 344016440 1000387927 547490131 62702655 766386722 837603980 785436080 625171442 797515223 741536463 331122640 450746857 42600734 960875666 786469888 568425865 117503444 75327972 194143423 616104686 39892520 541448972 491830584 244977442 562114472 1059510395 818651059 921209055 844810282 788265097 920710489 79696998 967407401 718683654 844263828 654141071 142194127 136085887 725269235 956615649 1050280435 619449725 575762175 314091486 517978167 887409020 986459757 488325226 598737635 1004683901 748268261 200377723 95032246 692294476 335618086 819304452 71958218 354511875 7914285 374730591 612339165 619393548 677942115 581600651 788550654 689676665 857219488 122051744 881285375 862978911 878737957 257659049 661219812 846354189 659583692 274032867 1065711053 1025281421 471036113 265501565 837595895 721132186 431584863 957749386 255163889 657652150 145630908 169842697 383134800 369177952 601441146 509858918 940672776 859085894 816329809 231115228 484070289 608457037 358808524 707071727 292025273 112328397 164036645 316282037 4573995 255812818 624990613 599022973 875284681 569507069 520881003 166054950 214540194 387819150 934681311 827873773 119378207 481625765 1002198060 242594732 113716447 544249701 830441763 67557731 25634991 14917232 515938555 992739901 817387182 834752591 94843819 472614429 34792993 18377038 137750548 558146670 666857130 452585095 24768740 1017195838 986466491 383849496 126433846 705003026 347885662 800782052 369226969 1061672270 354193238 407367073 393352148 876408035 445198738 556822852 87995935 356392746 467673934 533967234 573718574 299383815 631247929 249972084 1069465505 288787466 991398487 142524774 1020545802 651471278 265245552 139484342 767228850 20677050 809420729 246637610 473024721 776329480 301612784 88312067 36277498 975097523 604528937 420163847 743906023 972178312 445388979 577525058 710868179 517962351 320225605 129678363 866858453 719985445 441855317 531332676 13989465 531350228 579912830 749655720 868120057 872481318 765917288 801918806 706009117 708777268 867633073 334835627 533662451 511764714 86085700 929967787 299920616 1043823587 462257231 684745498 112515596 501845915 993751620 318178557 224633678 210402847 411231027 42578918 488763413 340337299 629064522 1019096715 997745412 559894977 391348707 1406402 613081860 471566478 545586476 569427437 449073782 845104673 567458926 1066411945 981073035 524338278 840200405 791898202 125508368 451974339 327883769 1020247923 137606790 354041876 223182544 482764044 879136066 424334926 45223351 779585778 938247763 553940867 588970578 430100206 931393931 981193985 321446518 766203391 446447941 964647948 325864827 581548056 974775751 836297130 1069904799 624645478 923555344 318831758 534945287 979700880 1014535920 350589562 170029619 453966621 102025864 780422172 22330846 422505027 230138240 909684525 270899450 369621374 52568887 756102733 743324314 110722378 402802211 969252712 162629716 12202417 979020610 839348495 688057443 158533572 177733968 92176881 593350621 881959997 21320786 426538682 257041503 929205811 841892687 953259142 249095628 681878354 771361971 915602217 153305308 716249700 189009969 638475617 178178379 648386893 365668858 266610983 246603102 820765783 903708049 452148861 331889108 215294509 750972311 713849143 502627446 213655376 611589565 717612687 784131900 56088562 354767299 943590207 374931103 641875227 965365313 1070488621 312306353 766119760 423131310 162816918 145489445 293991761 754617843 772415972 517693551 976791195 692520380 667957999 851214467 580688596 798939641 1040057607 1064491493 382851914 458577366 496655470 472042834 190968844 20507988 768587060 762399958 969924966 465155405 858215968 99734710 51796153 55183115 429650982 410582947 975763388 855459612 220173298 384082676 231808476 666148935 401991249 24444988 927502986 667726576 1060800049 756624039 799844501 108937222 1046884584 143541195 347788754 922639076 90889289 714471444 552588621 791824872 1010023854 403280018 925762748 587664321 308626134 540687143 921731434 247362406 165481559 172382611 743960781 136478718 600574251 388313019 694654485 212526174 594937221 646200693 452658872 645492363 745014087 147324799 435582135 79979525 180202042 621694823 977263635 867925769 717979659 156858814 497200201 369587150 347573371 24040724 641208307 293159494 720294016 643091923 246246188 821371949 812786698 55524025 178911870 487857454 161335031 106656861 487891585 870027684 598039270 755313532 649577109 1012715718 360093081 36022335 383214161 483170348 169759051 918837957 984712312 1039320703 1050695971 378190384 549315193 796661863 257022443 475872516 56110538 94901359 198009488 929277880 81597695 793066395 779727184 843651251 887482257 839984609 224393815 959957910 875009689 483902902 859157060 44963240 985396270 193048470 708485669 307920445 974678982 4204984 1043951113 536852516 156669549 149868644 684128405 1073421663 505428004 527253944 170064635 30858542 360647611 735341168 840365818 1046358705 104889756 312030547 782413887 613192798 251209640 753770451 579739662 174332529 21418137 220509364 905180780 392002322 423213908 1000025385 843861434 956289406 671985863 776148361 42568764 130978550 729128025 53046568 923468736 71603 163775813 745004604 837687376 911086385 1017636500 17444573 952920396 917272530 896196015 828156256 901233649 203975611 749912243 265882017 708882261 544166654 794917007 643102864 336773473 1039138137 659997982 24548345 40950527 215958159 3563142 146252289 705880711 173420114 689469947 655966231 488450086 1070418516 960338152 261855791 307099893 175433983 1001665185 142787256 715011890 962801374 625424943 675821128 847319830 929973236 195384707 860582941 358573396 918949354 744504015 226254694 1055909085 333145530 188104621 458043021 33286001 204148453 489529774 828935872 693877605 42248065 429678772 44818660 988475224 1018601271 1002632424 162464101 385450449 13214915 1059656185 288855516 471825057 479408783 333984240 18113554 45207860 844461285 861920792 258354853 208391117 556660078 234524432 596033948 765846142 347763938 880418563 516617526 110847177 626943597 787762399 237591258 523950122 660604196 95477782 805207755 786692145 540478073 455101632 800054754 196989198 34065408 1005134045 1015091676 13613375 719294815 867148900 868010394 485847760 104677186 571893516 604363538 809167924 297196324 331874280 702975564 66791778 318921983 715140128 406906336 37440368 519180517 59342840 539366804 704979127 1055218573 195581114 366239728 1036009632 405130766 1048346088 52782320 843782660 481988804 267692240 428904601 471188457 195080174 727218782 688055251 645349137 4833081 584660952 117159466 12707888 546235380 628912721 733154292 78370371 16149497 98868068 204566949 986507497 125194373 657350283 727606770 774059360 126987662 601818187 613211287 376163920 732653275 809999769 174076790 119576905 579596911 49678793 915221534 461379548 656684602 163767684 1070721053 226814380 625223258 917817657 949638981 156064799 1025117286 276272884 225595687 725943422 369839479 408136253 664166776 587216119 984429881 2054441 246838049 803648542 384894689 679315966 660659066 1066532237 436345592 251918169 1008634716 881119286 704367237 559872283 344952324 616778266 887735698 76321788 96376145 7256975 622700521 746530512 163316939 809695984 818717097 475756478 566494756 675389561 535140419 111719955 435471666 350073274 773698937 927900053 1035479802 1043528691 489736734 388504464 46209110 464392265 679540746 1045971592 518288794 368732360 387078085 310819123 511769986 854016569 192675662 296933056 979046752 658817450 1020992565 256731370 569683886 846989004 1015646115 953545247 946752167 871105096 894432996 396888439 154125637 153716400 308526278 630862894 915605658 36946044 413344091 64498174 396000113 975423669 632008961 786992579 702413140 450865561 942790272 586104929 940593016 607304102 439566228 823489192 745679834 333376008 185763414 905927770 699856612 465329571 403832335 9233136 531610130 289610146 1071647948 24547752 778946529 119014319 1065770890 649327578 292057901 374113147 848303569 912975547 742359526 346152018 79568752 298513244 318552259 797592650 168756803 822072574 200815740 590883327 483023780 752398977 457335739 12406265 1031465367 909354274 805098740 248330065 565361057 681232438 229147152 896918230 417041107 1043546193 930673694 771509335 1810307 412301738 93570332 607825184 952727271 169866839 1067729965 131351582 264144839 442803878 430017583 1058814842 427618695 825689080 783580830 81489405 453037143 208876829 812848363 494464687 69056345 141542943 1005175729 331482075 910706819 176379602 693029378 330665913 1034110533 147081004 877999376 1025738765 443684063 1050218355 516763488 586505785 286438238 723794531 534647640 1070572870 750607939 92622217 946066308 749374416 28074235 277631660 854606009 32085688 273992283 122996239 528356574 192065222 672929973 56993769 269242342 1055364210 236461507 460220877 186744436 82528202 513287646 1009254280 233129589 962167647 675339129 601215177 49088626 511890871 409454068 814102688 263115165 468730689 484605824 894773125 871672692 363073043 863056987 1003818214 1027849799 504453807 30953782 837136583 278305781 592737322 83184660 1010935587 847928232 618896738 712556468 911065147 974068664 952528052 560135439 385171653 827627416 354982970 785267759 71751550 94734677 670291811 430923176 872983848 348127953 784783860 994370054 713705840 633913690 186062137 722328154 447785969 886744860 204457435 113792920 870459052 500399404 283848275 355076361 645408691 316869622 932717039 139166688 548401565 238090497 41850652 129935046 1044556192 122725669 159702877 536089891 16491312 705230226 303728755 105097723 21067750 1066362979 1045069703 1016917461 394162269 1025337524 158832123 921262590 1006361865 881639288 216079407 55041384 626778137 1004613174 765306585 372748110 419859732 719285608 626990091 886308982 196550849 633468978 818960434 630181811 567694664 276266394 244779239 179977517 324935237 871046242 711885179 677990105 498558962 315965791 898457476 211671593 917777871 777732655 855413222 379432704 44211000 52185396 140177256 616526344 742073550 574716866 309202759 636682447 228318829 621661557 963557345 473279907 30908828 267582611 599242686 121680584 1069202343 235248486 337256628 969423294 243880078 248380344 579076121 951361463 1017926551 490248042 469232595 481046796 93152560 121453899 374401507 967864401 382455556 29299881 559145235 716801128 244908718 1009404515 606274254 767762891 784991834 569659063 373345437 789986971 430356789 370283935 851671512 6231625 303341811 1066122870 915864179 358433515 172909387 562714193 877488321 288936586 187098294 431075672 214918673 923357058 528064131 56043337 1065311417 688376274 1048264273 478438126 768552416 600778116 895613076 689167465 188317379 573150115 131975347 372903242 727871359 365470077 193675333 799464399 664398044 799163908 539918074 440626565 144967188 317247827 1048296894 784416752 848876709 861762422 201385505 135486802 842860296 897940531 893728991 610909835 145497478 885375483 276961815 1003720731 2515678 515737330 719564059 635018085 703869180 469137529 616082544 566471002 232695207 285592261 863386697 211897832 100871960 457867142 457442175 21359822 829568439 389625131 365525126 975377178 581681197 756396288 591668510 652571114 946351857 849395471 600792603 817180728 760421870 104859295 1010898780 665427222 462159047 23610907 267449239 266641341 955065035 91813794 271695967 338987937 390008703 562828232 89587101 41492931 861224622 38568919 176672645 882146877 853809842 684625699 608071771 578629859 863614472 128742699 530112401 878259561 203608475 64108903 434162953 745726475 200303224 157712636 531495523 983718263 1059877262 960319031 561281345 248183091 741216786 243804730 35226214 709139034 1054203989 2677094 553610407 344573480 659778823 693046193 155295409 136002397 454439055 965956489 831217116 1061039434 593294974 493065699 204608283 59279652 700516660 414071830 220791990 568977854 683426667 54955681 950201044 233940029 4619408 133899609 245268129 788299857 669192145 655165317 229522912 581646519 168750685 1044155044 276599861 109874568 887323441 458791617 823755998 653203212 837281662 332250121 1305530 1026417365 812871397 303440944 407443204 611857365 193657283 271923589 822904613 603253713 524942634 570366769 608547034 923108365 454287532 853662187 676264776 915006332 982803660 1001698034 227326665 780455563 787682821 1014792290 108586236 524122775 820379125 191298915 959177083 1000248176 755099580 711447701 575099630 403717986 786992434 670650932 622733687 418345150 70832146 247894419 1064474770 544506767 618812496 563213667 359257094 287778707 582768156 1022757236 722119368 254218231 942133895 439111161 178542208 839236799 846234468 242475551 681002433 655834097 574888296 597482559 446068690 355764595 138788494 680747332 182616997 454104118 430614881 710318728 22544559 166096617 423655439 714560093 187448163 120739098 960096492 391766967 528131620 126239448 297595200 28082708 200839635 559688624 361896260 97615302 141212637 460981510 850159082 607778764 979307924 275222748 77037182 318726050 330367844 132583983 631277341 188259045 210454931 890873709 771227171 230105973 491014112 952099354 599460749 666110634 252010168 1055110474 64585902 713728888 479082222 382385174 1036636737 431309487 598890551 869602771 343355340 133675006 104952530 177869635 551064540 191162089 557495609 1028161323 785677068 710957466 1059631259 797832108 381983361 639867417 726818326 623829114 435527581 234599229 531011609 1028381159 716840292 959156689 1044426169 491640206 579536826 871092142 265121859 962950295 303740548 851226274 1047168156 200531366 749193907 157704975 604702757 337685129 1059714881 986375006 457603372 486880810 878838449 678145083 521917322 931261833 674924240 688967780 987208196 51239399 375900488 638454571 60703312 106261002 86576328 996270040 795283176 21633528 112719335 330796690 102858058 536694388 771244788 675876460 492249207 348751663 882507717 923165289 975827778 414305833 645508707 77784054 1004316637 1047153055 15909700 658186841 472712957 20461288 733963475 1046282096 58536151 1003133111 192680299 255701923 156046530 633686398 314646622 418072182 990573258 409771958 773996621 599464616 469047060 66755294 98170179 137196478 257180239 162355932 211520313 844090437 853250140 337508739 318123990 612026146 930381054 648327649 595271573 205707848 602677169 147510657 524897772 597070310 423593343 1018978259 8919516 699350658 106216588 824318386 618125140 200734403 492071699 417936892 151412121 480706947 214006190 419388739 323295549 995339256 1060272668 130696143 486131237 949544039 204319813 287315636 57936308 399485750 638594463 945798130 985426974 819680956 18282150 1006899960 702587035 521057170 531385159 445235910 741696588 958417495 561477820 327633852 33341503 458332365 693745113 250642280 667712567 657458702 411392193 762818949 714068871 368183610 972689647 1029736171 157295870 1046394328 76762157 66569289 279576270 926739874 709972836 727569250 303967278 199446633 383493554 284408822 1001706320 682587091 441402221 397614124 713157801 844443474 863707100 906643550 386747292 315835316 571482136 462076583 548940472 281118136 1050806202 759340100 735565424 451495038 204510737 124628429 540192965 672546410 766565520 736590663 68532889 516603677 132682662 458426730 817617565 821512823 703136628 479567019 169044265 625289940 409678694 417065308 363695318 673852848 701235693 555753787 503019475 285777975 412605343 1050146004 167259890 830476487 472654687 291757224 85311779 377914395 275873462 507900557 715275227 586544929 734672134 12871664 54302183 656620081 829916926 889026425 918010611 259934772 179591347 48697208 917439230 513159374 410703197 296211469 945239719 465405515 924383296 998520375 969250745 23436032 379424854 873491501 990118078 369588400 987901727 675779013 387209470 367581487 372797882 61385202 286186825 479967963 69789088 76398067 581530071 558876359 786251517 31215485 576365338 644200365 972666952 122899622 421791972 230196631 58221520 524505841 1021431865 813759753 126370091 288006247 1007791679 920018212 949587224 61068091 220287090 624332992 618338381 815730830 189114989 817431751 268384602 143813436 369095456 731918231 347029443 137723295 1037728299 406189044 517088557 144066630 739114462 258829097 648558358 839473959 1016243474 623382396 15986273 441315921 473644880 682714035 526743191 673103388 574942906 1063481023 45748484 634903344 228693176 476969799 97584602 376131718 848731669 571066015 496098883 513805491 421841987 547184851 865604931 501649331 330951465 69633768 728472654 280691774 64408549 963385091 266873057 234731975 394103524 265773897 636769128 430747076 529545400 282235872 804591366 121291412 75444329 140346066 159076825 611483609 792534684 294312573 557966940 374557125 612510532 586044617 663833731 855226267 890875754 897897678 43442512 540903127 346630969 736114280 421657912 830750123 236551608 834071521 829891933 279233763 481140330 105586327 1017264791 532109400 50548263 219434809 261348082 318039325 37574135 552538345 338240372 505791542 327921437 1034791582 763228691 195481345 661143228 587992835 400110862 296876345 879330238 458893959 296662899 381511562 999430146 354364619 929816310 641087487 416280409 849057549 433832932 128006200 627784023 383565314 516442195 45219187 378126904 653001178 215037235 229105482 418401193 685313102 612339441 343953955 231379130 902486347 874577152 910256563 931941753 313678390 358029448 638750048 115101489 391894380 665891025 1046939703 568831109 712905045 603367961 74627021 225276707 111086845 769205444 553392028 411548443 1027791177 719401814 733340424 918503174 265652464 540549890 531271487 618075256 30371737 792849789 86426603 165248657 344900217 413188023 76082427 130505694 925501444 488529033 468153270 376263459 574899040 281920274 721526410 46444436 710315161 865096446 575251688 156124378 147682388 398428982 108548242 915343158 940925861 595112495 453885496 424289237 536705182 667041523 573483707 774179273 12274132 3429230 986940455 117176164 913373967 129261435 772902142 629506534 547915330 328290098 281994284 662712266 862076343 965603992 493602530 799840522 1026684696 747656726 382975033 859038722 1035820907 893369543 985933407 606039072 1013812894 95774618 570077893 342466032 746995832 644513431 26197517 249756260 83754657 179789735 474556991 974871884 98781242 287151503 380594786 180857907 622947036 16846948 115290981 890545652 609009181 260266143 1013690871 284210583 60090014 952009499 197924082 287304505 234705409 410491800 914843418 639247071 232985385 236044604 721962928 648602529 191909638 695574074 272302510 818219010 974055454 248125205 954924693 96562344 94951002 391784778 918715150 299655551 43551541 883973539 882267873 93457886 589901975 390888698 934829368 659988528 196558477 928889238 190108054 131543527 1676414 593758004 950391666 1002817261 973567903 258291822 334011332 8135800 548944479 205163212 533916004 576006128 557130324 312794073 543333024 313782293 980498656 235224155 1068663728 821037793 646176834 92754041 988524843 465936543 840100509 699498083 731100661 495283378 187105466 399917364 392472041 954995147 592134205 732441022 305417028 821987502 257252721 909701253 266297796 243422142 133839330 1028310795 828188240 458610858 125737224 119569226 968372987 419787901 150021510 42325957 1009139372 786016278 1050976221 315153951 195612691 42703198 281193890 314097603 493672510 873591190 259147784 289285939 898287000 126064611 95656390 241590281 691319948 744937345 54702975 930172157 47739283 625715622 816996956 341070906 962270729 352090966 253676377 697677834 917097281 911759133 386990578 1030485822 642931172 802826005 375929505 1070966364 732914659 323364728 474821748 974040157 900999020 26029062 314956730 787626508 243618691 924686293 922917596 110727456 443503264 985174418 819719991 861050808 56075872 1007223250 753791766 1039697001 1048937229 305272621 444280942 431899775 942333651 31356109 431821268 857107491 504422270 913844196 598947659 961737581 361033030 543393410 812338877 479461573 930733479 713206257 271844836 642346591 664189879 903308404 772733944 439436387 409235045 56681360 944149353 8954386 280438713 339793220 536894997 521269039 511106038 370250938 433745856 862829019 339144929 685567524 253376556 777657190 590728761 437136449 113298738 504828557 962066266 887405829 503772717 765392221 56731541 963080562 45383794 594593506 855270125 364635449 480413870 1064535603 129916539 712812337 720398507 19676364 384297953 835225054 768689332 412961742 414426209 533769379 102890294 852623804 126460411 267028200 391366987 186026065 240355075 130567265 815473924 139044807 332181918 941794712 212926134 186765749 138647009 426195242 835028351 1020703019 698419743 688514412 606358272 881843438 863141444 3377380 1038529540 219052772 785419792 1069923008 1029405755 953275704 1032764348 707283266 848312796 838306415 1054473869 1048853307 309705531 1055172538 1058533164 353492028 280424597 408846057 139329787 308811524 416003725 357574254 670793750 1494134 531537671 661292852 370047718 648913450 25527152 616665375 240919365 194409676 23869916 327014669 711088375 1049098456 89860951 15626367 328811731 588321251 893924424 780616843 938312168 844383156 497287435 1028009326 448975767 146891746 328889265 782832390 361642698 483480343 754865062 877427246 949407764 282737901 302487218 150581837 82904038 471087824 401914967 948278729 519487359 671713277 520298858 833196200 1003326550 431940862 253559298 430562198 839318291 349822831 242147486 499068327 610728047 584425831 298187092 344291155 826078615 467433951 457613689 464081642 829697107 865532942 696952658 375953322 430402723 701913583 710627622 528740717 392356892 82773452 69412190 96809411 34968279 372844203 277502167 509262235 759195203 848676804 368458724 348480198 552593531 674440160 832873733 435827234 444188986 743325818 595324380 231512584 77201783 885833920 659666195 921478377 432031656 904398449 462496220 889426017 809693533 811543692 269077798 26848753 255003316 160442247 946049897 109379961 701362332 29469734 624382899 704711703 878443695 854027814 731323566 592222572 984159990 216895820 490598831 382259673 727003888 131700862 1015475832 312438503 714322472 178945407 688923975 15675937 1051329024 351599900 498431282 153287433 215814992 965748987 486718285 675868626 560558580 538840664 899629365 129141480 85375754 1033642280 197729311 422794380 474035541 771108520 550481239 895554821 504713037 326825591 371341903 772071401 247248559 769605578 16262496 848979610 649477557 892356063 35270712 755948212 574184497 136759414 319375151 1249300 257161183 481564514 680130253 700421472 338162 265197376 285688584 824914645 615504214 581063218 431216402 113862841 73024397 752499993 1048278699 57063620 929932020 1025320533 355136443 161206609 342536871 906227122 722018645 980551819 177175326 214732176 931697278 989981058 282968362 319157033 738886536 817935250 353250120 717788024 543706758 201622448 986323546 847304883 517719486 534576600 386753247 850168297 552329030 302684058 339681955 626630028 123884997 50254935 452859285 864327814 46155590 949006398 971077055 563163320 529669446 299399754 799450035 398720164 316862740 737312253 979347932 530827854 17261638 822113880 757902409 462148438 25374565 529834162 981939471 833285710 984573907 762642652 470429200 685183732 15539816 536708343 915355096 550468556 1035994430 522115240 543332416 688504757 200282158 572997335 1071975705 365481647 737105482 963709607 982345606 1017015469 860695582 1031833242 836960375 251011242 965627020 532704122 901526262 60443987 12311222 105266257 979232184 83837474 418656552 709098027 621810396 26799587 97433191 452139086 851827279 220544764 165769222 27494970 121513488 540448269 18947574 99779716 907707537 12024757 445857701 740673692 831750265 656780530 182648589 28354916 975624167 168796649 754895289 110244000 179185558 648776047 359640957 781879357 495603369 605639241 673126983 582956197 712283487 139774694 259813608 871987051 503775736 501654068 327323933 977618661 186886681 437060990 1024049592 844812697 871575878 746700863 270982203 115806409 430831706 229071003 800581372 280661586 682660988 965222407 1052018764 276850050 72216138 744582047 380935215 417069650 107852079 160265326 844368745 1021488783 374364214 928599443 742377054 769801114 638008514 893590601 810573772 52816638 586679891 592904902 528304539 842761060 987460534 589455162 472711572 425998651 988975525 1039176421 632682596 524821587 993046396 968107984 126993192 195933748 10055307 774111513 519658090 339263663 863694054 734199614 691420505 789832348 922965230 708020070 693957907 749059119 142723349 853884801 909847985 670352076 829176603 456591076 926065481 522423408 43422371 812939559 1064149315 280611379 473500957 148765473 121113790 827062145 97187508 1005979294 881807239 192601233 382470533 493090987 672836695 600950744 968704910 906423188 656248726 131358779 764238342 717893936 76653038 168858489 772056068 466346400 536547345 452365375 720882786 82902553 3160641 894625528 584927486 368040692 385092124 85855767 354679606 327521529 1006721420 207832920 453394035 102870558 872068941 888129036 422491969 665399118 23612512 911729858 341911790 584401415 660506811 379041073 892931443 478796969 189355601 239236916 470300469 1041919382 972591475 1047121564 63307186 60617921 1000496466 147699795 160168095 753843178 663305026 1068073385 533344566 506934125 950813890 70918527 928504750 546631319 744836692 69923362 559218942 897221920 456864965 525864588 336127656 672714124 424554196 171089378 944062647 15845676 701061767 210067565 1070346686 695485671 147066847 1038318739 635205043 120109902 759321233 936243142 246986024 833758601 383422000 546538980 419322092 452839609 579200138 835971553 1056527388 1022849434 473960575 996945129 199150756 609738183 644837238 740684007 345070294 663593218 848616519 654235304 670562707 315810396 659384316 579839423 209532174 764019143 48901461 284621505 1024657649 115562003 1056533622 532772172 449630618 846211294 968800134 162752278 111628285 122947860 97706277 597398257 503727232 1056001359 625794514 205316677 383283036 802670139 36596165 910093276 26522845 805301332 31938547 14272226 933614987 833798093 872807605 972315070 948014990 229106959 628875563 441693841 38479911 51826572 508549651 324428045 640218791 516627047 950557760 868225636 176086902 973763422 282577021 944642442 378789406 911735708 361111816 130045591 185210490 229589043 846940926 57118294 250830146 295628610 1053760205 326975299 816253463 851733804 763942659 401806027 296740450 580501041 781959785 565954713 76650666 528304920 495317051 138285801 381002469 579438645 681502488 124791668 636158847 265089287 1875236 379326176 1016866874 40778512 384509901 198353154 1005954987 441666405 736186353 548794572 873512031 1054082620 616697083 223842612 658858964 491671988 274492133 911367548 919361921 836730508 1034777585 931844463 907312452 593039916 118615992 708307110 921144421 350503144 657507504 918609336 614620964 946676317 90944228 711871354 981111810 336618130 236230384 611382229 965034164 493272067 367107134 565268453 611314341 643166503 543829557 299966159 811997360 105189086 965325233 905234252 994987756 350275487 574230270 674530878 1025322766 891336835 165521888 76733515 976818521 1030210990 336421320 733955807 98576307 294606401 984682087 698025583 125219865 406193633 805921088 1562061 1048811687 479241754 610463674 231460179 65551580 589750242 510865556 659485348 1035985204 984456270 221102555 596451368 124467200 864405276 112689655 463233274 1043279750 588354192 714519192 1064297941 94222075 380109029 8655095 599477024 339944558 752754914 701192816 422626808 890408076 205942024 263333649 963522521 323934509 613288414 619576663 396402090 406734472 29265318 301585759 730822359 218203180 800720863 589446566 614489273 184095961 664663800 635023138 139531052 1050406609 963062399 118178367 911478931 181694234 192487798 680167708 459608084 362709282 699467650 57732120 539482481 908856079 387173793 727153849 432488625 748160789 67153067 496640106 98281927 44029635 872321155 496900870 938078994 530735330 94677978 367172294 523648013 336712027 948401538 190980356 728961323 331075702 470142828 715559596 46570936 721360773 622267655 911337828 199888550 85597037 407468246 21485138 719909490 486044096 416268071 5412236 772133774 1037018297 953633942 791073478 884191892 533269704 105336371 16368461 389441059 969995783 760641148 423963354 774428429 843806241 563255231 1031309599 594827296 133444532 41289964 130929462 553295692 329900718 389521174 139419147 28281955 530505333 936709001 920595011 392586528 309081821 1027801242 805846423 391995417 339588448 18801309 956047708 1022118195 582116232 1019757805 720057915 791822606 31686150 956370017 3603320 680596551 712692092 379608637 69767685 941596985 613477604 23618706 162673470 103982441 88588029 210931114 458472271 1042093953 678024370 183244859 916246986 1047863287 230042110 175140421 741598823 1048496439 703375721 387743880 666991535 61029664 423707338 1052381724 615303875 276844245 253658463 199739372 137100282 376258306 217986060 623583709 841184979 560364668 174009993 777837395 152250275 1028430484 233781224 603945157 1011723805 268353181 468839630 476888793 102165363 538817423 14940163 259793005 403360501 857415167 438208304 1053350238 128311119 891148899 635908445 1034165102 227081413 359094696 282662190 915255080 469048008 280039744 27006377 657504318 682521382 1030001879 360437073 276061375 952435913 205310163 679626713 930871687 998992719 726137069 870191632 413741496 32575464 128052558 725302899 837119975 405386948 131209086 663061894 535164914 257937920 853311362 520297568 568001756 80539213 964675483 677474038 271519047 987191885 642589327 182273177 477577114 562358701 55188966 316122354 947722347 403870651 24123062 117439749 704811317 694836825 426952526 1073399873 456867296 42752004 130700531 991559353 377123747 800353282 389529032 295327805 801089277 3898736 328543650 459849865 903729321 212224659 439431703 180217545 730733834 593024820 201194036 142129368 561831282 155433745 370981708 498821491 152696865 933062160 168727921 808212170 611657650 991984281 737887698 373235230 370181939 840327874 620875865 1048249270 774702979 511679151 727157881 1002136951 656210836 579562421 820220118 1032090967 450278610 853001678 788262562 1021682364 237741363 150787003 1034898987 948344738 769784324 53873612 279446763 255625583 216635733 122552436 500822982 603540903 156700318 628587677 951896198 1020071777 865709964 460128132 615916709 348042503 598302981 20856222 955011489 1018492752 1061966123 770737814 854069728 323940745 742810467 740347459 39092835 143609149 1031308187 432847917 645704980 277553813 398220066 339956888 830735060 140896728 727007054 147224668 48017792 72981954 237679271 363627975 85243364 412237866 126661465 473244884 242479828 328525927 509083422 99926092 655407154 278315451 745057453 502409550 339836252 778362334 124155878 1068537064 418131030 666652361 794480813 460156288 1991144 9937719 298658358 654945222 1004809074 264406718 508367860 459197807 311435252 412540055 976213459 926187421 727469241 551349802 95778435 714078329 471222047 1014462980 71075301 438120142 648943383 511694244 107356820 926170531 468034269 193635130 510767683 1014800735 352509063 237972823 792586321 541199783 1021865097 428513676 73556289 410326111 352676087 335033915 409772335 683748012 1031708810 528283218 1034062939 628902370 608105154 978934073 853326554 653882076 412175391 723188590 917280473 1066948045 532631829 449009201 946903156 743268154 662219351 682634666 181547040 289262650 400146304 6056738 817099261 56487196 345909586 181709333 68611318 1013257379 581489489 90237845 342828915 816803930 449523016 274382193 389765653 700178551 475830751 41360508 900896203 604557704 602133065 598369111 905570895 245592537 1030611446 344634062 1052589731 354472698 838228569 1009365651 228649758 216248029 443082291 1003775100 598627280 662404992 827540859 908101541 333282746 307122164 211880717 449787183 805795993 255424525 72456890 365532934 848368680 739985989 906424142 87721725 582671768 117435489 457743909 621937466 1018827310 63225278 907787123 902896380 49396181 358970976 479656618 710651285 1013418385 845902882 252510920 936407384 508600116 982069842 73927820 892833 468258426 269457021 964957154 162540214 473851051 763948930 635489883 547831433 598491849 89252076 527654014 116083671 477524964 512209708 284631337 580197699 701418830 132166897 884747599 4504061 698189013 477277516 637479762 95168690 105238931 602139406 682670572 91056048 894056509 196075273 1013003282 79470322 531600939 373732898 288255174 528692290 1034078731 57543725 874037225 106245912 305567909 181997994 844413105 590115758 136268199 708411278 69483055 27966763 43271789 240554758 618102474 302027388 815027273 833110691 895961538 839526963 124340365 848463546 314490279 534935218 181715215 647716787 807049206 100050767 234812762 146170445 510596597 331980967 524438526 823090084 965075805 756714763 482791611 913856651 466033429 129351569 1000591471 1033270514 529240711 1065758516 939365963 578933966 831815895 321382159 293361666 863735373 805576305 479909433 113727037 607577639 427061260 21754222 1073136134 290676377 633698651 753572840 845049878 644430355 737357462 769989603 56524656 238831488 614666203 115611845 780015696 179001825 540777112 226195859 146509445 796856731 873558292 98247657 835348896 150095967 238533856 600867995 631885002 88069990 881162483 94902908 86561057 1064698337 23357588 164588511 319917523 118166609 1000251019 625902953 64922561 604084807 1032548125 117359387 1046537867 886853617 827924912 115669562 124139745 385485456 48901400 670853052 796777304 1046622800 978398900 412252085 982952922 327465652 96740255 540161590 567524419 854926448 1000342183 468173174 763084670 348481821 486582089 837090919 542009415 430463190 675333811 686814164 555898367 971190988 186569608 930826817 156568971 430800083 312179258 884461235 43524421 276457868 443934540 33166813 1071386923 966458886 887600889 404904706 376333945 800238243 667996050 40536554 738785935 85387355 495333464 623957734 920130747 795275401 887117457 49771836 215301344 1068821674 505682448 861596351 275031811 706053528 565233720 935157799 930687837 783981491 120408181 174119516 535571048 993398133 607510446 1003778562 678459106 55799803 993182018 847794535 680749348 755971709 27005735 1037280530 252792459 528433324 461860022 226238471 884576335 533796407 543792446 32071106 934958631 349530714 372888941 419150422 128156806 90153894 629463350 972659357 829010371 393822609 328869793 115519663 647944366 401235998 289346230 473351321 340446669 564232587 280871481 68938834 483074303 284666741 966906090 1070230997 967150418 894177240 1057890687 365129133 479266168 667480027 713114528 925157861 481173365 219272840 1047598086 1067244063 354845985 635659975 310450186 514559045 549092476 1042075166 574255852 878890886 786834477 739314858 786760971 84617560 134628533 376509339 102529601 406671447 471789808 155740667 1062131810 438984742 786719441 779712371 1008808032 552375344 571091860 106511740 716551178 894419316 969297019 800972208 497264395 853714750 456457229 812551149 211650030 86381561 336528188 292723414 477693734 89608098 246788030 739778080 476529720 880115743 730445599 628836262 159227528 664730409 432873113 1052762504 17122505 667098708 1066342462 770990382 64765240 136451338 332769443 926590029 172054 379526858 252578978 181676832 514830776 440950432 29190537 721468470 42638827 885228007 410103428 624969624 602044418 164181654 628754048 374274408 206216434 711458593 1017866841 631900746 90597955 357813542 857117733 746762727 517441117 286898311 113225202 88755409 185204257 888040647 320396843 1025962439 46712199 246858783 355398911 362126059 991146614 639451949 639817564 435363669 162863380 389276125 657248885 321034365 720883145 219375138 454929598 203435614 239556949 615688114 609858116 550715176 323701430 38733063 691710210 444149044 308609305 699904280 106383165 425901555 921682908 78198183 1034268839 553609449 696292354 120695627 105775292 89143039 233483097 579168729 921809831 504472375 972064718 1030911280 100637812 1011553166 247989782 78316137 464936600 1016833415 702292730 797309846 526947721 192985158 14165140 450574748 1013223163 618086384 318122489 849788522 840708129 392096010 193954753 233940726 924355216 460330339 1068210632 1048285848 150347566 758449994 833947802 160676245 635644071 85434872 875324844 913833612 665716559 207479622 166518664 388344585 787423611 428756769 952810518 257766232 559585118 841116299 829520938 367367721 84454317 712283411 394042714 994019034 89161867 142796568 58414692 446655135 188684846 403845141 128535545 724838731 280609632 633110687 807796423 411023953 475015907 820805703 731026898 787399403 685372434 504836669 782300102 69820920 957053672 111807460 1011051482 907395998 948196536 377424723 1008037832 88159625 248783026 865205674 705153637 192672174 838121473 774815954 976503474 236428664 85114315 943075969 1015793656 234215036 435903161 901949156 939570301 280996420 862193807 840585959 789794465 445048112 454621808 692929693 79313074 1068069541 36769207 555465842 404003674 718693294 677996105 657419470 866677113 609025175 183087565 715530730 918358608 993337945 361598214 1045447085 64851762 291562478 287058144 515208576 953867025 330756702 601337376 222916234 101696538 313794258 208608016 784149394 352353513 644601038 934775084 336351432 734748334 815697831 252028713 965555160 904705712 820063142 356625055 621131737 43604307 329441113 246720790 424662061 403489197 1027421309 411336552 217069660 921031913 670209016 205981276 708614598 13860753 642526595 346258504 858993397 103966773 745723332 328516149 1069450385 65908937 508185106 224943592 634128286 439477722 16042413 875821758 905655695 405193255 452482746 124759255 556999092 1027319430 398740027 888270979 228121537 591238121 606444253 322087201 266766796 167003661 83154157 633304992 284350681 193967375 286861018 929390672 864282861 84263215 869349322 653725225 570591268 982022556 378975653 299629222 630437951 759920591 46024568 605155153 863107468 948068640 1003505520 79691881 1003636357 702491295 116153663 407515295 63998930 430118178 139911255 671789387 949204993 955834737 334313575 48841696 876702016 195906701 631254111 806123624 325746385 848349518 436273439 458046655 424714365 399151116 399163487 388224679 903000401 597072906 712564449 461987152 164414738 375639759 201843270 934989925 873126662 761904380 260040846 695002818 986473648 477941546 747226976 1051941641 94930943 1011241952 96768198 101847941 871014457 18602906 397534886 267220000 555549183 496760017 444512082 1005132345 65997884 758579736 835153639 920022016 910178129 204059319 773525569 477656790 175762383 107232014 740124672 165038228 1065572147 978803670 751481240 464647510 885978881 893743762 112433570 654869799 804578333 513596340 72366525 519826472 29489338 779845174 320455845 309820798 658036558 444520091 749960454 533100410 203005255 731144917 346088075 595491223 739413341 297734663 602801972 1012794850 980835621 943175960 265916593 375415196 682669870 667685089 892276978 336846490 357206762 158157994 949876069 477002116 305411527 278357811 612671978 922984803 45690417 24696493 773886228 675361653 67284858 915169514 403304269 294563730 529861283 787492934 771261204 318153399 1029299979 388678020 494590782 687124854 493694189 55082833 983025217 305516191 711994822 861223303 771746910 813775505 543424733 70810311 863157322 667727493 1000494638 518639042 170217579 1004980855 547867559 1028687556 938323273 34565772 498703635 394306940 534346376 314088471 9450521 117636010 978580575 121501140 779035033 825119140 769504755 201250618 801359336 582499560 859316701 1007483953 170596149 688885906 664629891 894918236 63815241 772263184 257778887 17014559 1000687284 947224734 706832749 345422562 550553509 87523658 620318754 874541031 587993620 640590913 1026328214 127450533 700836255 391036740 617502872 103463040 100590634 1013946222 1339877 159365524 354022484 547277514 280898549 643263576 183296148 982060099 388088687 202879383 786722020 613015301 211480182 818735048 618551069 640549362 93002076 220614343 715317856 266365435 328655428 278903026 1045757321 342750784 282509389 369497881 813155122 1045324805 349976869 610595362 378120000 763603943 950449935 275360187 708996347 489574222 886529160 823155159 847653645 715121223 569191389 443108869 664949818 41742575 428711565 429881213 1044168458 207643002 103082089 955499191 789368717 306469686 900829707 665393533 1068783630 759344263 527220594 173612144 723015308 529089630 306234123 839131139 753208318 2080580 1010087888 37383194 870273978 343114957 95508536 113663861 274038643 260581041 406850108 313928419 290360990 295207012 721912758 591685319 698876572 965074888 1036941602 333357440 905376226 481063542 96739455 330547660 522500638 921892878 371640230 679459681 129602856 26102237 245395140 969918881 670537974 587041063 395276888 1047753067 170465207 288521901 788160889 732163885 948584280 843638283 283042192 663016655 1693952 1014016769 252128000 224843767 75312831 26512214 816060982 423094634 1008916546 696016313 865383531 717010982 401267857 85064747 870308799 878324738 402689278 887341892 103044998 619082318 556243087 581100398 1053105920 244317421 848430319 1054910260 296330666 391080452 636994411 612845237 522679247 1060662295 838990324 628396476 693738903 301251522 345884106 744390460 1066068740 829636229 629800678 941123676 707932065 641723166 233129649 877821391 254387402 101672152 660522234 442756357 519636371 342354230 980848018 485166273 679647859 271239366 199323391 700090600 826108148 747141390 79991945 669903158 142370270 996283035 750002843 831423755 921050166 389106974 19703981 544394922 919723887 963870359 44440865 861102008 604165637 918439857 535770614 994683675 893269776 460383696 254051555 840829579 304867343 276256417 662806761 269755458 299781706 678832394 644051901 431775490 1022188150 677213610 899683861 871106189 318506487 507062695 21610831 711511974 155799238 200390476 1063666304 809746579 338532664 710917155 535183466 48385648 828704597 850845618 302889622 118480693 49634742 232918602 265039065 192118441 86744173 686129952 601132049 234124946 637662301 355446823 839205829 73753850 513015720 738647796 277467790 523144861 870354234 106069378 950843761 955030488 492450097 170332632 155658998 413683657 807310982 931183528 444509330 122505668 228645823 1020474255 283740458 405798159 1014373963 883078454 311162987 608128102 652931379 669380552 254912763 414785419 819667334 580884872 858582909 876245947 625141256 182430607 519803008 320446865 159027266 855290924 955870911 427300912 779341137 1071709778 549928874 370290520 895775027 127432832 802505959 253936765 732433349 101793435 342753191 6408903 347694828 674992394 610249682 394671154 154664534 418983672 927702593 1054437393 139721382 1007889897 42981049 489107287 137814876 664597296 263920938 487876164 1041950619 92810026 1072488483 664106337 15552599 119988890 572399296 429970964 15084328 801726545 295536841 598106101 905950806 242947589 803968401 378213826 519302941 785864181 556528120 204319916 1059388297 684336392 1011429331 723878601 395061860 972392960 898268855 1042556800 397177197 547866062 719458117 474310835 401672784 830095142 1025252876 567454985 551050017 836441157 18172644 283982975 493886255 211945200 611161079 8482018 439940770 778972979 986046108 613272143 891927352 378858621 456479343 723011316 802570945 433295524 76489919 654335094 237971439 997778526 992265948 271100818 551547251 583884150 548731215 351174324 416111299 570170647 1016282644 301435857 657853766 467695211 265561658 367416152 364218356 944707155 956497374 461767610 1049611439 1016222878 708730925 571182135 1047823203 353029111 39347672 173031775 460386305 778193685 1013259276 509987254 169295724 675278726 79071542 378371770 1042191017 921450704 84280345 518167151 336821538 201570677 608122315 199802521 50152167 254675753 577758584 44726749 887998306 951229360 649679741 188543270 967813926 728341902 866292080 457677155 130418482 276426338 1009313376 121541128 377427527 1018691678 584830432 719425765 167197894 273783343 307337575 552118571 523185434 265930933 431378789 810697718 319062260 8935965 60441453 666674677 536363711 907785988 909364444 647476122 113414730 741777644 300780074 821248191 62906551 176241995 776720174 336863563 879489905 535658543 959397482 997503735 153908687 143772206 145021627 128055523 844479025 841887335 433893577 327331542 628085842 480952091 451077868 804733484 335555457 854636086 269954526 43867521 606750699 977621979 737112941 110953119 957006216 291346208 738098151 255211695 1068473622 881476893 278535906 916845750 694093504 808485167 957292927 562229047 1042306212 859340317 33701857 937949435 983293109 1019126297 775067013 675854661 630194324 310144469 322157488 30731419 874414972 344802622 147291804 207966268 891761955 210871957 45775916 859412128 408212811 144153926 253232227 934478181 924482754 52644497 632865096 291385167 43957527 537657061 715807366 71542213 187134861 670347706 942284160 1016964392 854414518 672495571 203738234 659600469 85539448 206882573 512406476 716821210 43154740 1018229706 684217099 526362937 1009584087 431260091 332685685 706578012 518244739 410632117 161821117 542033571 636637661 144582010 604395156 1412802 975473855 815815583 1067541648 701599604 82423653 32111453 747400525 126808966 450380527 124750967 876034596 441325096 655507547 898386633 510151543 253898219 881215870 977114337 398057889 183718661 749463895 375545551 37016823 788321274 789421077 348498441 947010731 172286896 242981389 837611096 469897273 233160853 185568305 534069240 760162235 810160729 1011033171 950233065 701644122 473924136 1004667949 607864389 764286477 1011352157 154178715 416797774 415366886 218212057 815310525 930982371 49176899 825983737 266952589 400151733 36696704 475439262 129778382 924892281 37791968 167107101 449451561 297387837 330502319 601286523 658323889 732442933 411914444 508607714 122233562 678060408 792310374 334994098 797230543 972930754 661304260 405444733 238554128 385917058 241187908 924352036 533345512 1032020175 7081431 429648263 668536900 696195393 229647973 1056402709 552537948 90891618 975095286 513388880 919892383 132702590 192325636 148992004 809450352 252539525 695908255 1034248978 973648417 930788563 126893357 892704154 157821165 50421424 29137441 519010146 240575446 11902610 713519407 843818813 742111827 222793180 510193795 951228448 481891214 706346302 1056296934 836506773 417147413 825743658 632433523 96700502 416101929 576381811 794471205 110033192 402990983 819917410 990531252 488758022 1050264461 405527131 518123489 353244679 503160322 936485985 841739856 138499861 662693432 70889843 19782020 131874744 400139140 70047082 926837440 790006009 396055663 558173675 390965878 587941181 801598913 419889969 502359454 497190010 1023224378 201416347 479823855 605331166 1014578756 745239178 70143815 794192875 238864885 1068748025 1034830520 1066251191 244417486 389150448 104634723 942854040 732475406 862741563 89244890 344939462 166898857 164392572 728316057 768581806 230670825 455014591 721393478 204623579 796902501 735200986 359035415 287454005 974049024 403246890 30034565 781336883 588132125 430233278 415969396 275153131 398826097 169231721 77800500 82097154 658471465 1000074457 355210663 961413385 497410491 482342585 460922536 468826404 543478203 1067803128 39214525 195060333 963768099 986542987 176340479 823380144 562621219 712690729 435626114 33485798 185717204 547137210 864610440 787277849 913911821 913423747 479567346 965569207 754959367 210948938 630128980 679230017 502091282 634445994 344609386 560326804 745230044 70548386 994015337 808066565 61890249 273389675 599530578 339803755 657270498 1060333924 685375506 370080663 894706532 981389508 27387180 92629642 477226832 664767198 510179583 378371984 749226506 193793057 706256878 437796529 139166310 53111137 63502546 578609555 201361620 1058485263 128598793 504540067 625350999 670058180 641169668 992105072 18096280 903790966 290398668 980685604 376992398 315945897 99403423 964447492 979039868 497974352 797170589 873445316 406467155 818509468 748440412 523374051 767008090 829734864 827033170 226061608 414247723 532554220 1005776585 843077811 876725626 316560038 401857445 714225502 588453526 710386417 574940317 743497855 95135361 556881767 509777664 290670031 939778883 907716186 487683184 406107665 87828117 800526422 536115862 65801672 125249325 206722417 158196998 106311038 337303225 396990412 225012711 1018433395 976082775 466251280 537587130 507693937 242452199 205957534 369130556 502065541 149589079 378249254 79889755 361565657 253478486 597500463 680155481 918781867 111299871 396369752 764716441 361794332 1055882228 818163889 253157645 1009989584 714078266 228748792 500432075 3408731 342639589 165259255 705467213 749660137 813266412 229840551 624994866 14425435 714411557 577256968 896577666 1030804934 873790559 406623883 800430485 544851512 1035079409 238672451 207654044 1011606655 937252069 618174178 965480126 161701594 132073035 283692674 329394042 341987312 845586882 549155982 697765061 642717672 622582729 721642485 92611016 736198086 340185432 1017551622 118154128 780212226 252951872 409762781 688853673 1022979570 758104488 993100661 464215934 388301597 503402560 1002557173 905727241 719113826 647758167 849609608 170880374 611718408 1007250436 567446645 548017081 283439296 194577417 772548931 684982969 484327216 1072728440 109320611 451919024 776355270 728819504 978017748 427750093 454309502 962895899 1017936993 26209915 520226608 127864574 110249836 371552357 751020795 350774066 326745817 246650477 914554264 695745287 324586544 365737855 598043316 1069054676 111255453 130605464 606991034 375076995 174897559 313654464 1051420402 1014542615 974356054 714952833 2520463 1020248869 134294530 859212617 293981269 550549816 1051193665 258828104 856633148 287750968 319284968 932932097 891284668 441374214 946842728 679668618 726009240 156893291 78556174 495964271 771023040 811806566 558167402 683837432 43095616 653222471 967901092 100889056 1053337487 952077676 380386716 121407711 54818557 1014229245 1002356804 481012660 87574276 66310603 912355827 632796839 923662995 613573748 1003291900 63696684 17839633 117386377 410053970 10011709 808268602 844780319 2369391 305597290 373762956 808652575 830232866 993024383 585253928 69226450 205490100 388892909 394344151 563515572 423863694 924951224 534637328 143125709 883325873 1002797800 524861514 501504408 620826447 59656115 71424548 58584633 420266038 66505074 868628438 540345329 548716835 943410194 467136142 853523849 256178976 355334677 1002390668 853028156 390638217 979606525 544047877 804779372 908060836 683802523 1051457130 959805967 868867152 269586300 115527797 457102638 227791378 1013057770 756952910 53119361 425470001 642599155 364669768 315280754 605744376 311644565 684871522 47076996 48423183 518234617 216112508 799813960 493514387 665811987 111844630 112836039 679029126 773783812 875127229 104076216 889936486 908875776 673737214 974551609 894891694 674010317 977812267 494222404 934829875 173912178 644124388 378802063 580217189 230806024 1068681148 451890037 609343993 1059371965 8102812 1048264811 176143297 681657092 986667982 161162170 628425996 343734293 122636997 433797721 320913356 117487264 823546230 524639287 93481969 499498115 842502958 253879641 476932951 58809084 861687062 910774062 642838159 226103615 786036386 681178590 870455090 181992044 190896204 483083096 786297319 865237003 395445020 24669020 167604311 161100608 439067735 125110345 832444772 276324537 620002737 644399965 722715071 186601695 83162310 12308664 1051106430 264295738 177959206 583960886 538334364 4989898 966876112 279244016 898614133 312018819 848803762 67963865 861021293 364378196 559602639 23906912 474361045 902788949 299347287 170103606 508753468 617971945 1518556 888165307 257887889 405831143 752804468 260423394 937778960 165922944 515117534 453335771 386337984 13070092 353261113 478452817 483842453 668951204 578899394 124533914 5346309 984083114 820567182 503629929 563425931 900123663 988934589 940295459 515158351 365941323 230243104 342481134 840178517 663888052 962905432 763230687 955005285 432674172 914759401 8439673 338754909 945321968 743396800 842838837 748354386 873148967 28508527 287607094 766930667 394688318 33226406 550780557 442182192 327990505 779766766 515620137 945558337 68225317 1053420208 195031692 761673663 1071461371 601368937 1046827383 1029498425 1030824966 404698416 265749007 938176695 229986341 752513478 915399871 164549555 684668768 736371131 366696484 102342048 595699621 970245969 654867469 282280332 447610298 899803819 444192940 116199574 694809324 164532172 295092494 20209497 69467729 924634379 820794324 265636028 561704271 289768982 966550104 1050218048 1028666390 474456216 836075315 531883964 1024554893 268033116 273900895 910597522 360274365 623375138 630512642 97659830 398311412 787198498 767022094 434568823 342542102 1024156918 74667347 746757866 635294839 734783019 32225990 198714469 293334510 112766581 637219543 709110919 763427018 148877320 383867022 180480951 750547302 315186378 454738875 398929019 821666866 542828704 795140604 876335810 479655491 143424056 785321035 957541648 441901426 1059364822 589572778 811722112 929064082 119138395 730654038 505083070 815153703 456154168 286161833 754260303 615926446 996353107 669520860 781901703 753410881 813026572 376891515 512405989 160500461 1016789569 657391699 700045004 90879368 434172421 173750408 693375323 862772848 217534539 16233376 371663858 96474543 488190049 182326106 980849115 644671290 386773455 274583799 625487603 1050233951 290460282 834948449 879994416 317438816 294022003 704019675 550464942 674376009 107976520 427660850 730635077 246177627 403632591 770504454 821494034 720196155 928772742 504985978 677126726 742251653 662539705 548257813 1039440452 131320634 389823291 1047462944 641099547 671865439 643749318 1057841694 148461711 106800661 1004418374 823556926 992144975 243390242 418978448 470078742 552629207 726444083 747707613 843331620 324588326 957019675 830294251 909539266 654834749 117724558 974620920 731514949 107709248 808647196 918701298 467929342 715272804 61423317 629152324 718024162 459914344 205263081 449175339 659762170 139891604 235818094 874599996 780561517 960145473 186985228 129201720 872545499 691451254 960678484 138266469 416470834 275604337 38017780 820843390 701746885 140383805 295347462 660009010 493101581 981935331 1042095122 139320931 349031730 465766960 795217837 314331074 351102408 868188356 253553753 414109943 710061564 3846969 1054451280 490910725 394239894 859099186 636876454 385923119 1007359316 705179229 681008752 412919169 418940809 580467398 1013239035 10967115 818429023 74949577 933754268 217277273 482613545 933389646 2781127 589725889 214039664 412554865 974871275 730022920 961516849 501112815 189678024 238151690 727305750 975554740 637747055 419508501 380827555 1009510810 549452716 492439651 648670694 564015315 926196936 468981807 561390790 705278036 601559442 229822346 298898695 852950598 62042867 1055394766 421359982 793785026 837105814 296813466 200004491 582940162 393255348 231381387 683644795 317223027 258577588 642479688 586099295 314544557 661075270 708216654 537556660 271825335 286632618 808498781 1019584498 616227806 317065085 647174154 338112407 999305066 541946865 802526149 619571547 77043285 364993753 1043109012 615255906 298045307 321898011 163457081 165631239 84171245 134833219 206386971 85017426 96741103 359508606 140785666 542954269 779225704 899786671 1004938397 90572115 357796591 947288293 866704997 471753031 114904419 643135085 744608604 876554349 945212537 914290615 409568778 1073645867 643069797 694244416 1065366571 728069582 336840938 642389189 62359165 115321821 29063971 44880216 359461520 600297387 626553467 360467572 710648037 405267484 702756559 213965154 433317417 964876025 507435793 215341537 724604966 910061589 996256598 126471292 615834351 912051283 179375594 219173654 129593992 759334375 1031105581 714400001 840850958 889480474 544365527 262819687 273351764 173599953 238270117 399781678 337517905 775263213 156452637 670701500 934821241 494109546 334345264 836199050 417949048 941583475 121442283 151690995 274179314 240288231 340162995 471725477 498713752 997272668 1022682437 307322425 1006429352 741308926 416797281 803470953 257237283 389094485 277012712 1059712559 618602796 164155135 431659137 582251239 934110485 369108617 613489510 62373203 824559260 433965876 268191386 820612606 373006091 549458189 716920712 987990694 169943387 37410814 148558130 268556909 852168723 796457498 282556107 1021732160 329693625 1039588683 167306359 328993564 38456913 723211963 186326046 635277322 134921303 696163911 940651046 868025452 751751676 771516456 637020932 643950760 992065956 60447143 158567773 247046163 921874433 849360450 169291937 580914176 833137963 136274985 816925554 648763525 396902639 225653408 958728592 704212764 948516405 443138401 586852839 219676177 631165613 64496641 416894659 86808429 789799196 786042575 10122321 120146747 815720542 529998362 854044390 851579978 37270463 650300110 770578926 492414398 953594851 656549211 679445651 162872177 846672632 388350411 21784087 647604809 319957172 118592221 597854940 81150827 777157859 86096082 709893074 517778125 957372466 784486803 287290806 1032286989 527025428 553878080 737381499 734503300 872174182 1060647676 1004193914 71408453 582818309 747939220 103670352 990422209 687996403 482756257 61211268 653780647 986888595 687913619 664135411 239580737 704226725 827802531 657926199 590963152 420217475 824403305 456041577 416443806 572947527 57016412 407190981 819890736 390181820 824333097 129475114 683521301 298458049 199203869 926189437 199702767 863946547 317365431 312815101 69662502 107912160 310458009 496598991 921436994 118153395 86186568 582389536 645522161 475685076 641869177 320620993 603815031 349504091 594845866 805981066 21862536 607032450 536421138 928703250 585785791 1047387121 813649155 541973525 955798591 7562649 464654197 302052303 668745970 985278455 600903976 385000210 584748596 139034310 983253285 69050409 648465375 822508757 125770113 370170572 891213138 1067933353 232240345 950837852 115189142 80048983 158042980 517478599 601091002 312445574 1012637507 580743106 1036542523 555528366 597463149 139908710 748588118 403903369 307024688 640734893 987413264 924193159 464439069 797742870 503994819 704040693 780035694 305811330 473950742 461783066 256993482 792673486 890791248 93876120 122832549 407311020 705289562 491632831 502107954 584773980 912120792 287140529 302595599 245840488 562812981 786215003 217507990 1035962110 1037010325 489815990 868352202 1046973244 1021655820 876891559 797575428 503021892 624793488 577975889 420267684 640925635 929359791 228480385 826239800 514682885 627459864 600984417 768379337 650910564 821508909 957049293 476005197 166170987 54049841 308417337 377795680 1010245930 440553063 435465879 593715652 56403794 670847675 467015408 784510529 682259050 1021325601 1019823334 635422485 747827522 897722543 397260415 396788361 983522059 789811500 738394649 433409138 143662529 739413451 280649153 354336892 225163331 1026192021 643549501 41967516 150438351 75929882 439194382 239044765 1006630417 721047801 143688757 542581689 844917060 227243989 454448469 685782766 465281915 287726140 395632806 723271293 1019463932 544261750 406226019 308778888 281164297 384778050 293259347 355373583 328098366 354535712 731973563 639983715 115574002 887331574 672390853 718894894 86907254 1058390264 909382082 1036516956 396801104 677314070 806104913 577411867 143835495 825713243 511450926 935261273 684289875 519145364 503167137 700197522 696966782 994823252 382028909 255038450 588644819 825739093 521165018 645088908 1003666625 537650630 300345116 262721309 891615979 958498295 723667500 559411775 677177831 714767107 73445875 45413513 335336394 357185351 571126372 365442666 697060486 631723358 239481572 222106633 107447499 1040649606 456084493 205538423 375680685 553494651 1069564625 70688067 1040149975 324974813 677193315 989368233 719745575 1047566789 568960389 875837675 322612621 971286177 515651466 1029690399 624504327 754898393 896092384 1038252499 1025015998 516628300 971600815 414451564 440051419 373001320 173677696 923608621 383944887 445697115 708111699 467934296 640337034 37470459 154478546 782496379 924748079 910932133 466451041 292706166 666082245 589297889 124005149 343406190 261964593 701516955 806245578 472361966 528965462 285059969 375858257 952990791 36297508 197894713 150289605 329316928 796653815 59751933 513212092 741799659 953589876 1063537830 902526153 425993231 179568570 466370338 1040697853 664823150 1009836197 983551301 125356143 171451040 352714610 371345655 456624602 73185891 144467900 112106283 463175731 795706253 264378843 1016542227 852846298 421147633 1019998416 265919973 1072617487 813330640 278978119 320958407 40363689 777287270 6327917 139312010 582176720 41271378 507747055 348869012 723219550 813285191 779581908 298876061 527785448 289089339 102898312 666985026 661797658 827349382 477387747 573652986 993364837 314623835 605324128 338942235 918287251 460134387 312050168 849814656 848994563 911789993 164932114 305908335 102117508 335552412 115946030 115502798 383871474 527815316 557143385 570796317 65292861 199354661 189010779 338600020 430783939 840177741 445892696 60594914 181954153 484995323 503196773 300187913 115290524 196445735 177514101 848768989 749017868 183364758 401578471 173743739 64548487 810685874 342702828 240125522 714685301 735802610 939482265 429168109 408233889 159319328 958054039 50502174 823976361 659874284 769672488 569379353 925195314 23007496 366389662 748921411 784745916 66321118 117648920 615131718 900565764 717591073 98474634 195516954 386499869 13558977 323722177 197377192 2207559 428821728 376625265 147577954 1052961762 742537813 853500103 260645401 151113950 142881130 240231040 302416264 385264377 102749454 453534445 3935899 120510192 407134689 364646332 697103560 851952510 774457177 130580353 848958408 792004130 541074585 499155124 915742557 430102062 102794023 626327706 317166165 398474315 251069807 428747003 259546329 1021360272 865426595 947742257 21961125 523475601 494688999 655163972 593799451 1040853640 525965127 607898732 274015605 831703819 548865843 730695846 77775109 327700933 847875272 960035412 704574107 153286837 146922516 693027492 607645179 350226232 615262304 693624507 466892574 248519956 896384194 882994327 578682083 17043520 588363487 397221737 975024346 631815132 1054574817 438268624 419305672 296672374 158356058 558786948 569707261 911551522 83630544 573370363 331032145 195988021 571375337 692377322 703784384 680311491 829175679 669410230 943086278 318316277 586287834 537829360 137981567 665617431 925056740 141596289 315421803 230136887 929312253 27809320 980008235 441707035 156376433 530617658 802868572 235089386 381215188 89893721 156810034 28125393 649752598 626460294 801010793 233716476 1014592000 57850155 548879086 1058259008 721774746 314804382 979395729 482150412 249299390 417283429 211457227 475267749 977323517 1006861012 356102520 420674900 372539998 553137346 465451444 581940647 545420747 698133798 458931791 148803011 468869785 148335042 506046236 210300071 509145062 284817549 1033664814 904258451 615259252 117207104 286829416 228370442 594767194 70219065 823539540 262696810 700135727 295848929 268809310 827195226 175255024 948577452 213146098 700791520 835294541 275808656 537602698 322880670 721430759 553267157 73716600 177091227 106485818 110300478 176476016 375873046 351267792 217624251 1561249 922482317 302983705 488607032 16356038 99686615 448135016 526131158 522124599 123118039 690719150 352606132 627671996 1068503178 518853742 319084260 637475777 780262799 55790748 91374183 271375066 630752130 812611950 945608472 732626811 952977486 144814627 275636676 749493137 882709198 233025769 779857172 560555898 619690083 295146660 582634652 322126181 1025636908 674847038 915054265 268561520 262418791 863083639 590115942 344939606 174988955 393288265 222258866 498464417 463467810 386403038 382637781 63048007 195872695 901592457 742018490 749786422 783135158 95730521 266014335 552361818 955741450 1040810158 503768149 745265873 255513568 537371141 234328100 758477628 405873731 573660154 651548058 910994230 904706865 535387049 71963283 389867747 470554291 984237987 425308608 81231918 327853972 699082681 55785665 686842053 849059663 467645745 50235020 200762786 422629006 551656479 127452384 825634643 477614553 795539681 492876272 309985061 663377935 818470101 311388703 753055084 288879052 945953866 414779834 426742994 132691270 942775615 812100977 689834008 955048125 292910609 976681791 171852034 765349174 880696524 693865430 983738141 370486746 101941393 124222081 610769348 795158522 864203799 431970481 967252114 490463469 980805586 560813704 1004286047 969217715 390438081 809307288 972447370 164031592 468738568 579600177 44760140 513994989 320969602 562055634 386553992 235903564 797682918 818716466 285633847 661386667 976663401 656022484 803082616 426665728 598416145 145051077 53096405 562946692 499859073 553730723 135094844 158574794 239060544 291701150 585407507 788100270 826266334 439833909 900657492 459141546 437146487 747537701 1021274379 839469067 449129289 1031194450 183291764 367485715 601550086 128058882 718305427 322167644 809342789 400676961 884121963 941413384 510357135 372297176 182334521 215925271 735070946 714322748 711328261 961051857 815068201 633908141 584403672 148118604 197747163 593981864 599903467 930090238 252442537 991450349 691827493 592549352 591352003 846296209 18891198 786426468 322479961 189578186 599708749 937460849 1022888023 336982607 185564448 189585010 845857368 255328680 870816223 178611722 940390244 7593997 120930606 865948923 242925285 131530287 66119209 978424228 201175256 825420190 284735426 845516895 520085710 758772197 130067349 714421343 714087230 755396479 692650751 832655718 272316371 1066885825 344412151 452188928 154543033 867297711 162142277 764160046 440311900 265507285 301824476 448134536 409898140 954716848 759723038 707579998 643164954 1072870413 387492487 589865432 662206941 831444562 859800036 179857564 206438331 553875865 357144310 5441075 409445990 99958906 63813959 955814766 740405640 796013191 966422155 529131206 710697915 659310385 289580743 740460274 424334576 631309278 414423807 343880078 1003264395 458769315 521426546 173743408 575206691 567182017 66980993 197821225 386327538 152723842 708363053 286037557 861996099 435437076 170196313 952956396 351699302 249445113 227938118 218040747 598544398 220455445 74685662 241526617 530837607 655721915 899272724 672768246 858661047 786222307 1045685243 740990166 8511684 909699316 811388313 994144131 447743244 980355432 303489181 421621730 1063337488 47580625 493595706 424060911 914329784 867764080 823756281 642306529 903067460 41623188 897094010 761955198 730176208 776370209 293922828 538791843 137792290 556299221 809607433 885682312 51624787 236802011 356404087 872294195 230941339 326999915 902441673 837194201 735502972 232494616 344940762 832407441 1025690561 184985285 473224739 904516159 104044788 750718425 231068708 381916138 588081494 712076588 456418432 28171243 356630866 1058903606 79237250 217158369 495868031 777743435 1000159810 1055525323 4881152 450183683 906384564 247700207 32337770 472514161 712507336 81567403 548254457 898213663 200472762 293356494 977134289 1024602453 513006769 944020790 720304793 919021120 265926043 694192240 575369491 571512373 1012882506 880594417 671527488 124173590 821557770 292946493 222664470 574214499 357314742 952323343 599156334 938190385 270592519 749362761 414189398 564849650 459512306 989967975 955708734 800646627 683622775 402047987 497019209 518622771 640387593 1000260707 452167319 810739474 465082233 597965724 715069142 247224261 576547622 396392313 326922471 155305315 340325877 982789457 249712159 60795793 1064985442 754893854 615815563 686911668 608745438 48125310 474807246 717151893 559570946 656301457 466628145 258093091 136823134 989136742 654269533 85449855 145947459 842497375 507822779 945536302 676638003 867284683 718109757 42936492 890989315 935808753 90786095 531610195 850881844 269236405 636716833 47568612 962065212 78612921 730318898 63961330 1027101984 580966702 325880173 280308184 523393830 536242001 351027438 391276825 731905188 386815583 566824084 783432966 980667186 578790690 550477457 341194173 627536846 791842334 92370794 445047031 1058030662 601642309 121087482 462709077 274985643 684548758 293882151 861276522 744011086 1024786555 781349965 704399251 118752559 600217750 488766601 680121444 618377959 394529845 923516728 510283345 802118709 850323543 603683423 391053795 464474955 127463710 20806066 343665652 1014806055 907682830 1035579374 1053749507 544288376 661661650 1050485811 379084714 1065003847 77284756 660487653 257594296 302458913 617900584 1063874003 1071865853 353504691 441367276 994222943 1026094111 54904515 982645974 548661352 647407175 359546245 993059084 949503910 312674410 322424912 739636271 1015489150 899529248 1059216897 434506273 939331622 704956076 1034926135 205354625 573683821 557460105 576921693 999543304 759137286 402760556 673524559 929754024 1047572772 824091464 425475116 280984828 873444756 235853117 838587432 1049514174 867252402 919994455 1016294188 258899195 260401843 550413319 957785431 956586799 36841288 1041248756 667875614 56619773 26568248 544737792 1029298940 352652524 957228712 480676896 70891515 701535129 53673634 243582634 273552136 683339489 15410348 494606193 196358876 738933200 527520668 529149178 226383030 3544824 585199508 194638078 684831970 382192110 956755402 468314056 121993784 171587203 351271567 81357683 504859278 22571712 285911022 53183535 897640959 694789004 216039257 919260111 72746320 259940257 286304964 26498140 463813470 878166434 261463640 656921924 243669135 363712088 672245911 761903366 333329013 693591989 393263988 300968027 589000020 646532789 12252300 318243260 516101628 567211253 548841043 442713841 963098755 79619619 1030667440 1042460754 693475814 73790898 746130961 359487866 715896503 485891703 725803994 850323898 62928356 770730835 827973055 436898358 255286939 118877716 877918200 703705144 16604118 133412779 660877405 115968536 476022433 830712859 329063117 322861937 707890075 1023615635 795905486 813555999 1072402740 141106970 140541332 1045014022 193839119 578171557 692204519 547957128 95625595 417656604 750998534 409962490 519865388 186953791 145198157 637824730 751878097 686109347 355089627 195221586 805907470 42604210 836076041 903619074 397890744 673418580 402867957 925309094 1037875757 89738611 501593754 795891711 8507884 773974795 475963758 886447215 146734527 806800850 625360499 333083865 143008789 135225973 410363057 608878841 20765306 321248406 973801975 191644373 1012292933 727156119 1019183175 44642125 1015898423 495244966 205739757 889672726 548015060 937741210 253854419 648892359 364456653 674498612 374857563 392941428 151640505 237538878 507653207 979755676 643100414 247336184 313166083 627592984 361019182 536484256 956406103 41495646 545584623 772861358 936793920 637843232 662489104 696991230 963345046 249612936 586034019 848889561 826177258 914876952 249800416 856402804 138337702 1067779186 310145232 1034218518 667796645 313460969 1033183550 894768577 441568482 864311077 127377588 483763067 170155367 1035071605 627882527 355034081 898563370 644015472 161018468 622085284 591437549 737731284 563999603 1044394468 383875234 400099850 154906314 828712820 273894239 245751518 529322580 519737639 385047984 136669554 1055138716 777547340 108254354 584435362 828689637 554631868 897719470 214896114 736299491 893772152 430017129 875080422 595600739 937272234 349267669 938155874 747071263 597730177 456643041 973094670 306896033 1006924259 414784565 905775237 903385917 250035760 270780574 879280608 157684264 712261911 910977868 906417350 332260012 437590655 979337924 789166984 200852690 58471080 302830238 456298132 393621783 90595178 679241527 185811057 822079041 1038838648 244078149 576569884 963218759 73369695 777887177 648198253 223987340 152934695 155457169 315106776 895194784 337646711 265614169 566888107 289779823 123555815 708260153 452352026 665942383 44004108 775723663 236722712 993119880 384814 569828368 18485770 855287530 94273001 1009727833 579920309 976902126 530412185 317785255 25702538 102323367 816964608 762511553 148862929 598988738 868833908 1013279326 1042713397 208290609 1004035112 922940793 991347544 1020676320 805236879 180565603 381884477 80415942 1049817311 892435081 821682802 90503858 642754399 141389187 918091483 982064481 105101782 973106765 574608220 1038164941 173439257 159351615 868417654 719009672 367237219 453493108 102130126 192615095 740989235 983592516 133432843 606784696 545264113 427525704 397610579 225490732 980398192 541590330 549694460 732705181 859222100 545986213 683676221 473800692 289690832 279562742 845892547 389741766 805163300 420394466 163085472 883263353 104381512 171731218 641113931 1040106916 457367277 685097233 389982503 159244873 609507144 429345646 1063315416 611860028 185663972 434725127 894417763 1033108545 85239341 546874350 911303620 334890801 802525765 745862255 518818068 28408273 496402190 175800570 896142140 619039341 322366588 772852564 314640215 1050365978 496741067 803464186 541336747 171911683 415481593 6080478 945276161 355486489 613000765 773685164 397354562 568108921 325816855 62366727 620341552 781358661 732483825 16940565 392983441 495157964 763585904 1047615038 651290995 660762952 939804141 179067238 771129278 964502343 108890800 74928263 938524140 739816866 998750224 1037424230 989893966 682683508 532443877 26715413 584315088 341345219 453677373 12426831 193362553 866169993 871203011 900133616 916954982 505889510 896869431 549610193 848195572 199559133 1049845195 907908107 183136170 1072754085 283496330 786286366 9336936 775461970 368333872 306922359 220188338 713885357 717098955 950939491 7414798 745619715 104273243 956033029 488215457 638622549 304218620 18088446 784685896 238908727 386214854 129051599 639352558 409911160 507007449 482773856 963631638 12718392 553594803 793972885 28565287 586835184 683978604 766435100 123399872 881980714 276406033 127094305 111277275 188316418 924570175 595810218 368459158 511231845 997705436 961846098 761420486 79784313 810637151 449682803 351035361 41595502 411705066 306839638 889034039 584253410 246226475 437532436 589174829 722172409 732164359 1022225916 160641442 143385864 586406487 1057218021 728956621 14162189 8625127 169705663 820539501 107554472 298885477 290419719 658291032 276043167 1012773151 246620464 838019430 384650796 894094008 237213813 613060271 938441124 1029436746 512608661 680034418 114055949 170012880 552765502 310807160 279969780 593416576 906219673 253695590 101640123 976920985 735875720 538314532 890155621 120181869 209482669 505338837 797191083 779817555 1069568523 828934671 389552190 990089564 749707178 541419443 391347065 280304584 151228787 769778801 397999762 247762645 1055762027 1009505924 30652380 589652900 1039620085 1016254550 569359644 510687200 81180409 159014963 913619051 569441822 196983320 298323698 308820274 590139719 883126482 22082067 1017066044 1038576970 89789595 1062019261 373736946 64444357 439773162 30952811 1060227037 618328012 976648801 680767148 332655454 727595662 318123166 503379328 431222842 835092168 616464025 18379488 563560468 895976095 418905258 477967100 27493539 217028640 735076388 1071413779 645959989 942344529 468640558 835947094 650335889 818572395 967091142 404321649 683974171 52521480 204167642 516880763 313211428 236822560 14397519 262581577 133403655 214577436 193507007 323377335 146310005 329953637 209223319 261531291 327874542 855434657 65620101 552215724 200119504 688513488 675967337 60849342 381849686 525034665 714342762 896166409 876427087 952820765 597012766 446374644 512876547 699555015 424936667 286224110 177850343 501577983 287085155 47205932 967222559 492435318 272579979 202170384 381175275 466890252 516164704 871535128 803309993 602006407 914015183 564033206 557413336 628065790 577053591 950045266 397902284 1017176967 169936304 163130219 190103553 702005891 280478569 410851335 320308128 550824274 823843344 506988748 245373626 567251135 805545048 348559945 288667964 313380039 958156220 27661021 36452377 1071230482 47545463 511811913 411511585 697447585 795894201 1054387461 248317879 466580468 535073936 866771522 13806338 412340113 232873213 388156799 405399050 127974986 92844476 371657948 505538490 757755499 439664854 559899065 657895982 622777844 868191387 490214737 623823116 562706283 790183071 128740928 323561976 98707239 981597002 338528918 507454262 300575705 722532307 289567833 637441439 603239090 601564431 298217565 351555790 1061195227 434057356 534845051 262653104 115772361 594849133 491559326 824395307 109836663 374264661 333583358 81064542 460103947 510380383 478104066 746916914 1032980264 967113395 1004149201 435069998 597070997 81116640 740164785 244812434 846778982 969957096 89278339 121008761 1027963534 537678609 133570749 397176381 917530749 137431428 342219170 828727983 117377698 526655231 127563309 907554405 253501563 221440846 367515222 942461565 680743478 789369603 49816244 729401328 402428488 410038118 519078901 691805956 1001217186 584802120 31401850 337616719 843299890 745554814 545618835 572363111 714074443 76807843 744436029 820357140 181713698 205337651 803467996 761170976 374396394 776385099 600418780 44249350 19798863 599346403 365331583 145544289 1071980181 964168435 588532780 656221706 990786458 148136467 591387317 76433519 197066218 471886862 597980108 376698103 652737137 387058007 284439750 480769943 960016694 503980719 477143495 38323583 741020703 251670669 708427184 722697681 591678002 671606750 782238699 430459598 354399293 1024482936 955121725 30985707 439175100 740054941 604928112 1014818238 1072380355 921999017 190332142 70045193 971031429 1050760370 719993550 479083896 98309208 410666469 173136369 662587312 567473668 822656009 76871433 145110303 16291854 619578656 704627697 307379560 614208405 783133785 965207356 108627630 864956225 817095259 876083150 673869192 112306044 565197053 434684750 777951048 160781751 624960482 76230937 581323400 505808334 448840358 959004881 379450346 213690803 306015915 165183928 400707173 285158732 463046608 921251559 623958534 505258685 238199720 1017140774 270874348 345827223 308134833 657835626 594495178 959083740 563194017 595097257 53331291 627511099 107123932 889530651 22654445 827237138 788746530 581140841 66088207 424900240 374726695 995830262 440771873 283982455 952956523 1042370095 982839153 116028798 675352751 765488393 60110575 1005607675 454410707 544757122 220847637 942629605 721686512 942964869 721346962 682372405 31485227 640896523 338701435 772731908 669436157 119598010 649323902 128377499 634594018 19852900 377259120 233378257 310186261 37075992 872832753 790375893 365632984 920320859 707010324 188865697 161735850 830731849 245424495 668996696 1003763798 55438938 119962517 278282248 908941054 65029946 533044669 458299445 832184463 489038453 345925776 425385020 803249248 476283623 449144622 212836668 841936369 787568023 190099464 687017064 7654777 992026512 2706006 839177462 865514053 1033272169 657904153 43891950 125423211 563011670 660897988 769573337 13667118 603170442 65624557 136721159 744884680 609088803 629129882 978911579 283247270 43110649 261572140 533185171 746504001 1061835388 235904715 697390014 434536866 512368416 904395322 596158683 624123914 1006404802 161537541 557192021 147146134 584343735 256595693 836716802 525610995 1006354139 1058667544 216806601 706538394 679786684 984749126 813160795 117220588 962049446 524161515 685107836 471600954 708705835 213932928 163361012 616830828 267366479 553902729 408134724 985931328 392623222 233781530 683620242 104720480 806313217 982072432 422469303 766285180 305030122 1055430031 165827019 824903389 1045689162 436569271 781345367 342969490 803455632 850813007 789850330 919776051 985201177 566243572 813311543 360497878 386601832 419667619 403897132 670525886 203625083 969292944 683027461 444517494 605723618 574170373 599495038 503097214 435443314 828921596 781031574 944745812 994137313 501610686 614332675 677171740 645298846 152937060 523444100 457161031 281330308 458399213 1008528406 395085897 120009361 837420558 864220914 849926706 676044821 759639325 210358846 572719328 558471367 1039837001 216679721 799907156 26950511 17142621 709957043 3175938 645297537 359377773 413678765 939299305 237310848 239130313 265994592 294504850 396000849 470666614 188715163 1048046292 811060406 512699481 271773872 812074850 943961706 448709256 174395598 715378124 1014875641 88031484 1042911037 173717467 137918497 710350948 818208377 261992852 437930438 280709333 686554610 601134127 338400618 182506010 422840531 445464668 508899836 115787264 108456827 739492373 778962720 106558014 214535892 562214713 257649345 549182261 512395429 282968215 160955781 1062252451 81898693 71479402 566027036 1069107065 947351569 465796053 598018671 571908547 153815669 559910972 907681331 637255928 309286784 317551822 813211433 721069481 519923031 885100116 146288120 156859078 201581361 571917212 841748186 497644539 783232417 673259462 721400220 695564555 393188652 260696960 567739528 1058967990 473535677 782020099 876424698 951846541 642013441 647406057 1052540668 810173692 1025847324 358885573 179392140 345561704 119622726 528635228 479167935 1057236541 713773943 820611582 895750719 717961128 864850741 327308762 866017204 757657951 577201727 452337592 827386722 930033737 1001113209 652746671 627004762 650222383 784452616 156418455 599764589 385742029 943892966 292485076 398570577 666332208 975347068 410707411 298255275 88982407 761685095 206796637 240796082 380990886 1067734999 728851861 649904533 382275081 936954893 231885124 51036512 388616840 495506248 388396973 185602693 1056431242 294218921 983108838 675094321 208055744 615555698 167357158 335671091 759010015 19655594 688990377 16645646 156098325 513658749 239362044 538046445 865145059 403663117 193364021 762838749 105588840 260466793 235744407 209745472 775330016 788439752 161822982 817865699 842837772 886992688 443107261 484375667 341695386 592812259 106359773 550733004 220264426 832379304 210428383 276890703 461854344 430055988 337856431 850664990 547602439 726178383 278083015 328188520 181477541 3622180 673223136 303643631 975617738 1070879199 694734324 846093972 506246810 646288776 416845211 969798508 850398094 1061822548 99546658 474333051 379136350 567087530 582010637 1006173701 857219573 1005938485 349724165 964459083 625604033 614616164 665575065 851183370 789483015 314600042 1051967026 25581654 763927168 571789685 63564305 378970098 970351538 1034629451 207409404 944123303 256842573 625756287 487531623 94692723 684006739 581727732 576229012 487236848 744532081 899874214 626342922 485952921 291566135 976587599 995963275 953704707 547394616 43519838 93057698 237816259 261944679 936511702 869056093 428987403 300610152 858922245 619589423 407358169 963816924 339897241 670623311 70023756 550319127 549359008 355326716 863143068 641399902 286153853 967652689 819164102 797649278 875744269 376312613 410952093 734690489 26681049 901711012 178134586 348931425 558110898 801761329 1039331120 839049590 117081629 682205313 407926859 276214702 848389166 602541960 155645716 420560627 864551078 727890744 529650680 76889750 851447542 760133504 239638165 29388522 668502130 292691577 1054135955 1073437312 414372463 252307463 922737807 274313666 317575368 600125941 543834811 183043999 26961411 183877647 355441839 601180638 950814635 882605205 602745788 935835865 238773471 796300410 1006483220 257308555 176798056 422459922 432219099 328547284 578369806 232940586 409830117 489041201 657285602 869195215 458044962 625465621 913942568 306255732 276077434 81963647 664053899 475455559 724002617 1042874814 1039491130 868036448 728943112 734457853 447035344 1000021642 234939893 674078092 894586678 231166186 1065544278 377115007 460433481 521877139 1028500388 892973243 1026506879 298737090 607537908 984586764 912232205 333470806 379272565 215213744 228872880 611325015 50982378 403559005 303893512 329919766 886200202 943672953 841110295 314316474 738133460 91073155 733374573 470084517 55845647 954027940 653531689 466499206 228894116 358413224 77421786 1016125349 574790299 326379581 847153873 436005335 264993986 568499910 236036498 570325502 934496031 63486598 717869532 807313022 404557230 247708810 595078134 420370556 431351059 785722337 586754040 552093323 279687110 92862883 482271704 83935542 3180561 231054310 432297265 231677465 712131573 639238550 353834943 268643392 401845813 530104223 425551641 855038655 782508581 1005445216 993021266 594305348 194932572 715687006 224529112 240735518 480081415 372250723 499867549 532736970 16728310 85935053 520151950 577411070 728502799 112909043 65096770 1017305105 356464996 779435362 749468764 737974156 347463499 175028918 340947036 274529507 974858906 470257587 782023150 133221235 272168681 663377941 447690052 34887880 461638164 613562222 618001024 494483446 213587359 614756078 498908277 357456563 759451090 908966673 424914715 763932257 526201844 49545637 501690296 570884767 1046849125 3641659 559139328 284519811 1065898628 783792134 933586889 549966167 1029253647 141586130 702274937 624224165 515296294 76847313 39369100 844556720 391938923 71807591 488357516 42459647 646451488 885912953 661667136 153053585 808878764 335700650 948688929 795354669 167558305 179505514 453060238 904572701 393282017 159867655 1005552650 354516093 323713665 261079725 926907296 846024352 213859950 804391035 372568402 845804897 851907268 1066057561 78306598 650744052 123423933 296522627 55003653 306274296 26634333 382641982 295008337 1063788441 351362343 242013520 799682557 658845504 564764386 852234349 953611097 907280991 1042492548 394740400 941322604 329264646 305579749 917487790 275239104 607239895 943329816 1039870905 111144352 738556496 663479429 301625542 892193651 479741213 1071685010 948062965 626297500 409953065 106681483 483419278 236416888 731153168 729620930 301809832 171397286 220565446 97928058 751432110 807501074 50018030 432655663 882186225 719877559 623761413 569606107 237868717 497551383 443424570 5621973 778644729 7133503 258180772 537425127 431413341 396094323 441883918 320647607 124797886 378779672 613527490 133054508 921216507 288887286 16937330 909574690 722669083 734525466 912764646 52700556 156776127 591182460 351446029 34332116 47372284 817407087 276749595 600189978 86777508 351850519 877611727 626199263 900513592 869876339 196272271 324914190 656236784 751952035 314300728 165687066 493284268 534393618 170034215 495626093 245756342 87043404 719047547 668305923 218446144 221442043 662508074 332259775 492008472 36693742 648017720 109834910 204959174 1054755198 606423833 533088599 479526236 176199706 246890119 638184715 839476785 45405305 905599184 194910964 215978317 459070908 485071126 976099341 317531857 88589809 678805414 783740184 91850897 862182157 799093644 1007436338 902935032 759123853 571607136 740740901 167562416 14738402 393157014 991954714 235127273 607138885 291613425 975844654 590904854 487074302 206141597 287659359 175393779 14416450 901766210 751973207 825327656 651601933 601607129 1022447194 348672288 28816746 604473631 625255888 747122353 733242103 726492107 542302123 585955979 260309647 235313242 277262801 802732940 353319303 593878137 35704953 226473653 1004658887 141594556 47450859 421775765 406833441 821190946 296074131 489864262 328363990 921481561 244078634 726834945 834407979 673345427 467443430 844828779 240009416 621755587 427248551 604588354 488884374 965770519 194486080 1009128460 1010022165 752649533 394252847 281940225 1067555503 326454408 464087719 165117808 528391840 137240066 746875992 463724997 42546548 961404451 359718377 616149434 835715482 696799937 325380832 805295800 739028284 524548378 127520007 907831572 154696540 20835622 886019564 41655303 928173594 764802082 678748973 278349484 922370455 1060096627 935024086 263434908 170162504 473022932 74173549 998774155 954854818 840259412 921255605 684280501 739313396 601951915 541263341 569723926 430502839 501227558 432611444 1003939277 11013149 823279077 880952233 192411730 37527246 674327222 939931003 242795201 1064726613 641469296 641134833 269312261 85446247 598252115 309865642 736122354 707500708 567715544 625008586 120763885 782949118 21762930 1010995911 604396281 227507219 436821792 873570084 979371243 623933694 521339437 143753728 66049745 84523469 664445300 450268621 971896184 722451438 984025951 378490784 30862734 630736759 710584598 533902205 263677779 547750623 298667889 224557380 385706407 98302647 649126636 368133291 521039868 106039045 515113348 193498963 579603990 281004448 762386605 1032148933 263776065 307464691 811939410 355146169 739643839 927086700 314811650 923189621 524444125 328861955 70207808 299989628 34562871 251904904 403556245 495418929 204272111 291233033 164497610 28256731 816417138 316791916 184433162 153487283 715291336 784216271 1005189540 489081333 1047696260 782744661 603567282 668157159 1009121565 527148642 199956839 607754461 665987819 43809308 76078644 33711587 197495598 316733932 843977523 621610891 1017656990 81459815 842731240 660086555 167256446 721284354 631301387 1038537997 180654110 1057365176 688645511 765778904 32257555 525443014 841340602 953012333 15086878 454658968 796160327 749712568 173508970 331437774 1036044338 529935712 59668758 699152657 409458229 237768806 420616617 1026577402 82799519 57833655 593668829 940623610 963463108 168066203 173142717 522688954 748825142 50482093 107918437 552624037 688380450 26212580 243789942 257752037 1068972932 238580126 647537842 256709585 892201477 689702488 1069703134 406975237 787256513 760502922 863354445 455298739 420800637 786742154 968584162 932518847 908193390 782832200 904006102 983928359 531064820 425008637 301376057 880792053 380350498 290482479 918863534 943002315 239002901 1057678290 151631292 225289886 1018101157 774375230 616815576 422575595 989083246 1058611123 589978591 349734849 1056746064 1052785600 703935517 641548152 632337485 556477148 1060051157 1072862859 17319434 19470057 12282646 100346349 468313164 899027558 223013382 368874160 824644309 47985759 621084487 992155989 450847732 43431749 845154773 989487601 1009699770 931796710 383789367 149989217 665611753 24772768 263328737 694730851 700956459 88929158 951798451 174108614 425220831 1059058980 783709714 408127389 447725620 835561393 766076085 1005238066 755348334 222612606 443197749 144897299 242234426 745821958 440754394 63955706 801681325 491152675 731189534 665270280 1003921355 503324510 828879851 56692452 199883170 839921444 1025084375 806372348 1028665056 110766037 298767338 483101330 230590517 504079841 705363711 340839521 710017658 1063582914 24728444 382695719 771603354 599320425 338419852 855983168 463185289 859787596 614226012 288373953 383449685 813123357 820704059 237714668 543032338 181354267 321453404 981829095 939558119 893593760 650552633 404504102 615794915 983805355 151573034 58679818 109392997 367743983 182735262 895763312 598980731 660704753 243848081 816981309 447997334 102063898 520270254 58169870 664610262 169177256 902665883 869757210 7764647 410783298 715069339 25340545 920041989 284008136 1064112756 614839493 78764515 1034763116 497106787 175395154 576613015 1004140158 189949772 613344739 930766787 546500248 312997722 591827322 959097288 910910122 791989129 933434025 441334245 928979220 21156838 448913842 1060224676 413698482 708558766 579674704 974187996 328520401 983685924 742456888 146202365 730148846 566458494 609357486 220047195 12743040 590128868 455262907 553418691 291347307 971711009 453003729 139597997 636431471 658824945 746839972 91262122 164041561 184038991 722931516 298076072 294151876 686024697 912135143 894426225 938664920 904135534 1070730795 881870814 157522736 133665628 180348248 827379439 891249830 225883447 206008089 97685785 748558118 457392569 733106136 306951323 886225175 974888453 927333892 46812155 329304480 687370176 1053913051 260391126 531511527 519131304 838213492 593826304 645973533 837209830 676887425 355580167 797547002 432387975 444421242 700139842 823576656 701266035 621500753 256264735 368248175 589382707 526913964 797922745 591013149 382298165 1053274725 947125294 532995064 99074113 346009536 95482496 188228804 344114945 989939782 985050106 671405756 860401689 513871168 299242436 173613695 124929261 1031980314 261452740 710866313 355163629 579559665 995197382 268942916 715665835 776327635 706922691 748681032 342650504 511442822 275490555 332204033 449871262 57305607 911389674 162508592 6400586 538485124 912128395 19184976 1007857194 324287982 574534217 403329608 117940380 338428456 160765760 138799255 196354117 7084405 918390238 651338402 187942236 916249082 166176129 670347742 235937693 290968927 595098059 447490831 849552249 486527221 144880479 794565719 67974148 81306308 52282049 457156856 749760134 550628557 661412118 381438545 566593975 857429990 433387303 162946396 28838470 714839805 331070099 312005599 212207847 593205700 665298455 205175173 1051985323 374661836 84419536 1049471151 922343283 886204010 366868573 869437696 960169874 872050875 4415344 188296750 555497840 531065150 953857922 227220461 224602566 1073049143 526496786 305655729 617534032 916641818 984468684 288815622 295055216 600755923 668327189 508433781 771377733 725006147 262936869 323391727 589876453 915080052 860961320 668877172 201592959 567588288 427169792 564313791 523594355 1008334712 156944712 332009767 295655246 798113942 830049235 347044637 507304738 1018264078 239483507 23045402 211408825 508421660 486241197 907265737 58917038 621713278 115945311 595662625 21582808 181171076 964165707 1045089182 293572157 972737467 198668375 526345161 862287 231307978 666068741 838298097 984908666 711605123 117726750 120604754 361917920 601920643 71503720 672508547 147283329 975207756 703696196 829958837 385197073 73575079 217697270 268506772 208381239 487164926 382088611 408937372 125953164 704501957 224188589 884823837 669879284 732382204 248533920 137785891 900186477 551097178 16973637 371857207 571793623 1021829953 553851193 781067183 95813937 498955246 303676091 862490411 526080560 214055735 458096923 599044824 161451630 46412368 1017090232 739086302 1050937436 95624482 1013390585 118992516 580859424 656056224 439997184 476919304 759511437 914955291 415073345 825392895 1060519722 9699382 1000780835 1059503956 427748232 435315935 457926015 188677527 557483227 839002276 338873511 731529142 885819010 626561568 99992907 324851647 324808440 340539151 392021300 1037662859 903112811 722468407 102798389 326394223 98091525 959462411 268364292 952948565 394833373 413544049 552393195 823434353 692585605 697897663 908535775 849813269 402309526 989142294 47115496 520301678 841444586 896171880 12041921 457259172 629846877 460348706 325167450 975558548 1002609944 401526241 273333123 347641688 579821901 713747916 448004807 530408175 152659956 30191457 74304726 922769735 702156534 159145703 149473862 191676543 81562328 256093999 421496918 112450605 799418599 57436519 654340494 602225208 55744931 933792451 83393300 909896741 290414283 1019371886 544518887 1071038237 677012335 73610570 334716478 553596071 819523210 1013106238 793493018 948007442 234861706 477890206 336051075 728158708 914450335 12733781 292281360 846566708 572097621 29644913 638563323 943377705 777111842 707402433 146360316 949851739 874988994 1014068765 571484476 989216991 617434458 944989264 694501118 885368507 23962024 967336347 62036975 75006398 137032517 37389542 749345722 1029060335 650515660 294726453 679424409 354954747 878720811 577960276 867874596 526377532 759834367 388042598 914677269 484084762 347325414 96599202 564793248 520083541 1005643227 230744033 590814860 417274065 857691995 65389175 501627150 950471517 836695054 492830401 354229538 988316063 485322421 540141898 105415584 51173064 240198211 698873105 299602282 1004339253 978816463 75562521 459071122 912048961 919939103 847375283 302382206 286707724 297451153 715887373 450063612 1051082844 518898423 952076596 679335486 148634733 440987896 905377352 940253678 380640963 352318809 229542726 845621560 213832183 905326160 417042151 827640731 621590230 326099214 787402620 749330601 771612979 974483318 423021383 416726334 831027088 109487149 699604494 113889231 636155602 917163743 184648126 1056428769 37319732 784236400 321054861 1027725930 230558818 121450992 863655954 257248228 558496016 269952423 1037226998 26461057 781529033 649120753 511945278 416047347 972966620 83473932 121167523 189270409 389294902 734125369 629651675 867691965 241123540 543518326 646948818 329923464 1066183417 502183118 1057040973 523836324 862748059 251778238 695530291 1012305968 736563835 745204008 943702731 68969516 578495968 509564001 5668606 18597953 893290971 785435892 10640949 975312855 1034740813 458179531 95188046 170500209 181363836 20968648 196265432 708827832 906589585 707861262 789103973 649057024 857462482 388212347 864639716 893429839 492187870 271053698 961748362 994000562 822273948 810210388 351147094 905451146 731186954 666129536 886828998 305642550 666624973 518549073 760534421 828053704 216384465 1042629109 706398329 1032949471 444785748 30094888 174081207 98029226 489939775 439568898 721966981 840282919 257382705 220662284 412549851 182274683 648484818 456357465 605596464 334122109 571393568 5399210 29737238 100711253 274325296 1027871101 601395334 543904905 466771816 325386255 998957847 361046008 119914610 250531160 1001261603 914851783 276525685 715296811 333359481 945693012 444838980 588073763 845410913 482780964 915866918 179630111 45693005 176624535 57203669 688233689 611480344 706651717 184247719 811809792 524369062 200433622 601446427 794237205 196065622 1044220064 890443664 135915546 224442407 960253797 564828176 1047675135 498222672 267816843 582735294 576991602 135983756 67419674 658165837 258466865 131996836 893493085 152540306 158782575 722590638 545995645 179856100 45114998 68162349 945085087 263643123 55541439 301441361 101892582 737780992 474735383 960981609 391057749 627098950 145117083 83818350 268841014 846455172 644335429 185801362 1007143771 65839389 482139341 357274328 664571619 636397534 318574801 710131210 1052792304 337244996 439102076 278287012 956993527 1006508607 50139617 175369345 23328243 102364227 404683038 1026159085 692332082 340115241 301404929 734719931 199218657 399833308 916516572 651288650 1071540980 573186374 83279684 875055759 578381357 670436004 561198554 51642784 63604473 96127437 725749995 190887464 875913169 273460666 652017603 946737134 419574748 924819562 150895196 1014964755 372869563 681012891 625801277 604741553 624295792 462560873 171582323 325121948 406147608 170908336 42413631 336646129 878200401 1011774187 652824122 1069588767 439369632 319162248 1073312000 580777666 221890587 608011633 704637240 428157778 808421903 421390310 689401829 478676688 408149885 954609384 1003080122 738823952 71213284 856244502 926432412 370399101 551352742 885215772 832840216 966452213 395166237 280092928 652152473 254789159 754448683 952832657 123692865 509574891 817952125 222396093 800248533 898159775 918103756 694955807 883025852 571359599 395220504 915826241 48586339 753280158 606695122 182927325 523593776 877993399 936663065 704543223 597836728 984982409 826950234 124480 34517825 663034850 533027268 961492354 666733645 672957708 373464193 161824345 83576999 135743297 230100130 117090527 130913467 1054592472 322475188 402949546 502190847 197986333 252988147 419587942 797031863 330609789 427543753 948332953 549758042 230236343 493573166 256791041 127580587 348471768 412506613 66718141 1001333076 223321226 25206847 56207141 777293208 517227723 748817726 1413749 618222922 104589011 303041126 954734765 561430020 617837265 1018949811 239942671 752031037 892982324 294157602 887890110 255623178 1040456900 912568264 802216595 621431882 846782434 332350392 189841773 193707542 630350245 55302900 76499807 919630188 44775588 30282762 778699489 926225918 261982517 315504056 887085689 441407715 137406296 784121828 96112791 1014755056 127350141 766831162 920130249 1050568082 496911880 387458397 476575879 1034146645 642611925 523621581 434424975 111166157 354955450 185185987 528651823 255003981 589169685 550443640 886991131 260487243 249268292 304573801 530347705 1002736325 478334282 12507927 190557464 608956433 229584658 347698606 122779867 439305150 668313913 410174194 780622903 493572576 102200140 397984519 854640200 758830981 426331594 683342732 655328885 286619045 453286849 494350902 905307935 855321647 736448535 688259725 90653233 724023351 67901303 225027660 520406596 419491690 743332849 873784546 847963372 368181954 398151256 324851393 627033076 708547968 488602509 598011956 627908600 818439723 5783052 456578706 645213721 620778202 362437140 992123288 279689941 476827308 110698119 278189099 643392186 646437827 694811271 672650979 912186272 671567502 913961912 4857409 651734301 360005854 521768700 483015836 655673146 596937323 361234178 956264925 361746620 550953335 1049304333 979478079 459320306 956994090 812930256 567171110 658197870 838191577 982150641 43866514 235788506 57747413 522556996 697351380 439536564 767405857 225563065 754013176 30169828 590390872 678557893 637071554 155798486 580791192 635509987 586830272 901703416 294078585 135221008 65054446 894154234 959569679 871351225 261766239 220745197 117877623 361108322 415871754 1069290261 726017694 499604590 903946743 180310751 411016298 652461171 1035834589 781443908 448750063 273133528 390000883 12266533 206668336 460262383 1009076650 159131828 516313079 985404193 130749535 688751750 199197774 191854676 1069974720 181910344 612799781 939711180 796327273 693836727 828954830 803662592 990299418 195494376 863788549 23509093 206081451 367913666 408356911 790355378 118634100 200572879 974762697 797480787 385089976 681515694 649707090 262030767 778880126 313894709 497192730 930138420 209265770 264031299 52663516 339695737 581272730 577930092 129928389 342935973 997232609 991586209 351564353 435956880 341095515 816621029 966540942 630373661 518616616 691583346 325416448 860591711 845101011 148958687 251370588 365983597 50252847 776262386 792485079 327054838 721915275 1008403603 348369053 866992054 576128534 10545597 337807895 269128569 669977274 794408115 111942709 481083318 525251983 92601598 939081216 527878504 356521985 95730110 329654492 1017127478 338269516 268400744 929607901 168684562 287549624 297708435 239426260 89008791 524564455 66757371 896298746 253110736 80449738 874379029 982853290 892179765 909194733 668133631 823860236 203437213 342135635 795203815 201399855 502162113 897212850 201532326 727632970 294711336 1051405384 266411598 400317363 570451257 1044623221 413173098 604569172 898246429 92753882 913617035 1004621109 977327939 1040880673 505302849 92688631 1003717001 702094771 665923464 189252899 593282230 732750830 342595727 136759358 594645691 794595994 198182193 451039038 1067931720 852800203 637163481 201420685 874272937 652651810 636710311 358275890 608272354 520543446 902041381 418963436 259090163 495178152 871140156 235407211 62027161 406951253 757900442 968904894 138082781 541412174 359816266 452909706 380826450 686651189 966556241 113666822 797374225 164354833 712444018 913157182 8329845 735707838 858156351 33000152 642265864 82601010 163379362 847992429 979557266 302141190 482936810 624745491 558506648 473640973 66969481 3769494 639143833 512713954 420540991 397453546 212662604 141059311 1072723114 523724907 811644848 761523907 602743708 738145805 961294894 596986979 305135324 88538529 849926084 999873261 625630247 10117694 336080368 21130537 705088062 978568799 959055148 874990140 750544147 680673631 819821739 31835182 355460973 158437984 272213279 88102048 428254643 299273856 96935013 583472585 255819650 982661859 80361304 5927240 1014366759 986361662 1017795830 200866295 704769911 313492445 1021812925 393236247 68712704 332873701 294777399 987170622 5219977 1054249201 686233109 1989931 436100646 489722094 308203797 633341041 61947987 618483796 244930697 998856513 823974364 999570895 426049578 407041488 1000319856 940525468 794001324 345403882 854598051 773323115 511884771 933715480 428324419 1033997192 424735350 243124384 426915892 236026673 624952078 139004538 82662542 509509490 1065411013 46705794 43665425 958016260 710446857 339736560 857048061 331293397 995297872 307464227 974913650 584232946 853439767 839336833 836298023 175347893 790131812 417734620 247210429 218955058 769736764 359051836 393268845 485336691 495927875 711596929 4718850 793800399 133505096 939473366 1023356185 891889696 1072785500 277562965 1026138675 138557694 459544820 860135594 89795458 749420811 561130969 814714830 341664365 99326388 569047872 1030536186 677873554 847875679 777357187 843486839 556418100 224331455 49499877 774875837 74155925 872202513 1055545564 556768355 1026072761 162891621 630357936 422087809 458414102 767603316 704961920 133286340 1000179217 1022628817 88782337 650423365 947924091 894628907 18580309 862361010 577072023 33557402 940253905 492112449 811329392 735023431 875123033 518756532 2507533 944371992 1046745419 900473620 106115672 643214558 44781597 330835901 810906537 637953209 384812826 223716420 238514087 803254192 474161890 339301014 1049565934 128963751 922354733 100668208 900336422 573156201 859579108 836793727 351762830 59621138 923792505 328594100 708941889 969681715 670997022 180802565 484948898 142636207 797722395 329135735 533845243 11215720 330985657 1013488551 1003646592 944547914 176199120 497605222 472300095 359971362 81432981 1018851275 95465791 61763155 355067657 336595244 447482739 142583696 995979209 977492563 348657450 855665098 393851494 242301734 297292369 374123404 773173305 198588733 557147022 421853805 644752856 463212873 757779884 298268010 931721900 45439817 751087486 924727927 271701864 834118611 37872366 7052871 455416009 337680543 709201414 716167233 665180605 937141745 600166118 838921692 243793752 422644182 842869941 387929675 59406770 552205386 1002116249 386320423 473459276 713931391 411374274 757743340 829097169 438742047 653943672 525127037 110453757 97115835 835693433 440219148 471536033 258287922 760606780 440246709 385636081 860213996 340415500 476162540 1042830035 1002093929 621381717 503102435 754265031 467755978 734110713 681126654 677966054 709144533 70949706 406445484 385785855 735205176 126005421 240220452 994909502 241682499 513716841 324773068 998379108 223115045 937665423 936749118 682518004 861333568 712755299 623770656 1031335098 254349976 987089553 613754732 702420503 747260192 209140983 460240208 560694226 472142728 516031703 289696721 838152654 713946172 799905944 567125321 738838961 135486668 270189469 623786057 896411945 562410000 45949638 324565477 443983550 684718646 865987536 996352128 787991853 1063989064 875699858 421404563 966912656 1045514901 768322295 466009304 354637430 63927753 831096681 835734350 823817809 160929474 889306173 559068380 921024779 595492167 492355879 411612147 271489648 937590062 965045623 892613593 981464910 800492663 116684132 932778483 345985858 659217492 677239740 60893613 218645523 563299040 960011445 353584207 98311499 6385365 960197933 897843795 81454799 780091078 1036026447 896861563 1028079494 591429166 768103243 858847433 52894090 816235863 714599021 544420948 108204048 200137281 30160737 534564898 215434067 842193494 858403543 448978210 404069640 763831764 45578124 205356180 628447728 697511256 365608581 212529252 283218070 12835985 116458968 653603812 401902686 391958270 213294034 91977564 604750398 998382557 345996991 56365295 810767613 912482646 332792577 472882286 201073033 282338012 701249401 294575717 560240388 274355421 416633626 572700294 253772998 420481342 394063663 1003813128 672467179 368878094 600794827 1001152814 1040325386 1010061675 210912277 152508819 933750004 847888941 954979010 464281740 468519387 63692186 139277716 311182225 267709603 563041163 260646119 165417891 848969794 259681373 873226067 949237489 1040952226 515810199 556829821 800575684 725789550 690425531 759068346 574012293 357506375 1032257920 876047028 218387731 842750200 433454479 145665566 1035051735 511304962 220572500 193764540 748942144 939349828 180114473 917323897 937020010 886160475 799248759 971039394 21135422 372289655 692113065 513626175 322727835 415218289 1013008426 339308361 944765396 567031263 621126148 981756323 456660578 415006835 91364286 2861359 985947880 672950221 1035912620 247124265 182466921 646279950 326280770 468885959 89212675 894928302 841266193 408400966 599099965 863293029 1070750598 142248174 938731151 484801406 489232583 904055065 1021793027 254909512 641628204 380011227 44539830 34788981 347856320 498687684 139645690 876980107 496226362 322142994 884360351 369894758 38602201 883976786 327339228 673958477 773761308 532224290 553197747 327390966 258321744 414323081 263918642 537176083 646741101 526134039 440841932 685733290 467225652 770719965 977864286 504115318 888824924 1047181644 714861343 865848932 742713705 130961707 553993710 998725892 653726154 236957508 190056311 112585151 625044486 931217709 408224716 316429888 986808561 727017597 72076510 966872639 172661496 337360698 516774995 113081447 947147613 83903434 1057463306 644686266 745361776 321338499 951096514 881003650 676787120 238710078 86482786 238392549 103744424 83536220 395118445 59528920 314045629 96794124 409382151 577437593 756306919 1037454119 439972058 507172226 366554130 618687210 465305106 361115180 185641488 112659881 88760218 1067447455 58455745 631671675 609453456 196110177 814909378 944654309 499685803 363628080 334279712 699797956 920204509 350992944 510779550 416579446 188858604 115654934 727918608 533115883 783781108 591095325 1005189598 182882028 443622974 448629823 1010620018 225596269 612988470 88282958 345956914 214777695 234632520 917600349 700754820 1071668375 745157122 88931877 182994946 544104595 566860922 364276109 389955798 845091215 817230570 382047984 270098834 1024711682 135712417 12556281 733480264 32852401 49447783 1058705160 205153707 393230847 748072273 992276331 917630262 18659400 174699893 957532844 690938784 47808377 108584117 117829502 713318523 655396980 970615822 674793746 175396836 760949793 735388864 296472651 157827703 710097907 833174479 561266916 466396799 140034040 663685702 973007709 643623929 241125 865422767 1049976915 143670370 425314049 744564605 388986571 98268514 271091347 160460715 711098474 911270829 259525260 317274460 4243602 394569625 115712823 851967726 711311886 703631261 830703295 458769392 303633170 698147121 958623761 281096988 619037968 266290904 93271047 791872144 504398705 283489921 915336969 968243184 857623463 265208509 437455047 611014754 810400096 449415423 1014822506 44639687 18082871 376920940 990300457 359288891 738943982 662416302 982708659 45026449 377213141 713949375 692283252 849130678 435755454 990137034 312461455 631648317 476418414 409557383 827765103 527752147 604649134 708368257 9974708 703305401 798558411 828131268 466999219 199578448 768091857 938500789 545373643 276204459 566665132 1033607731 5627948 69648439 670483715 1043326831 787890659 14943227 898142864 898368954 733458374 736301054 405403200 707563127 202450967 381864654 372732458 253202308 455044323 690485120 380202056 76690815 997785289 866540551 534993688 16447757 52065521 68647502 213078855 488980834 153350662 9879545 850704995 944482582 852161010 953784883 100234174 791148706 334821 932116194 24932595 414408738 28666368 913805415 740807738 548907089 997417185 566108618 701002582 803367443 222404291 975674958 877338713 536525476 1028715032 228445436 730784203 297309788 924625836 923219948 699806405 234393769 755075559 849298610 424813086 1019067557 234059516 76349588 594660782 921741137 843569814 933825505 713189583 219579694 803455842 407522030 388464473 1025005148 768085020 773666659 224965858 732130111 548600960 425845950 232355337 127243465 1064020219 348757843 885301277 17224154 268631131 888527085 599422765 511544571 171901346 801138167 854321445 585718220 921899010 777492587 1010088183 579361521 794546429 749959661 111258614 687070840 518434998 650704524 909695557 318456397 474024436 95434978 1072057133 393509818 605823044 178043246 463179130 1015120909 601706226 534529010 238173702 339318499 453206938 347947972 555136667 364339279 336547072 960837021 997710835 940044219 913140293 331516475 1072256070 735402718 404131459 74208547 204387533 199406823 629070911 361432016 691485397 869094189 186745057 334799843 52098658 743025809 630738397 489794987 964038673 261332810 770532671 383041749 118958879 242197912 503874274 345621796 382025738 1065324415 49345252 90082935 646557695 144668551 240445167 103310311 693558134 301742883 384462299 386868611 279431066 467816292 2509424 1059138605 546363798 409895169 208021736 774614664 302548436 887903955 336490685 640608857 30509062 404825781 451403592 566844668 566852332 914536389 518989479 652953843 641517977 47009172 379902794 764585542 985872831 158347424 110505460 291147597 888879844 59263461 256227848 286815620 1015498657 44929884 59729615 1059322908 375279204 483563687 115204457 830204885 192333285 594168636 671521347 705871864 710828502 621937430 479122853 884319228 528807813 557251078 479198408 441230598 271944307 755254137 1070293059 991582503 565316838 1067771349 980370639 322277770 173257603 308771725 604692395 1043349294 345145846 1034889428 515411925 1008022907 695977595 236935713 601260256 119980522 807218340 617264399 818023806 404794702 353241071 305824990 584347976 199234990 795551886 1007970443 160174437 814213618 234289729 275078450 1037342183 473933024 510860173 762216693 694497610 358043821 798210126 515868470 53835359 221690090 221797893 75594900 316361113 643533001 524696441 347504925 170219824 983546666 527034952 539123161 422302865 822771216 293289360 835910255 505119667 975611721 248545226 804973111 751361496 963545327 527702680 267207783 3141137 513906583 113901226 517825656 545320123 733004163 33606048 697452280 571926400 699713370 423948253 971490036 633793235 564713963 916957173 366594242 412852393 491614835 681726708 35039258 511076770 657022717 533703826 393980832 102561467 12105569 119563109 724375762 262759859 530675908 217026204 1032258560 889386836 509334232 351672336 797087285 268848352 1025074163 842269419 1048209292 928459026 85196007 327433567 807287044 486281217 18161943 790252780 154327134 89976079 940094148 151196594 244826024 374121905 369901538 183993255 255178625 920053083 1056014525 906736259 2528930 730590797 619120846 57950667 1054215820 466788334 593865697 765092534 416544134 818033802 684198706 624063895 800720048 1048904260 973767817 196667332 30268852 334851135 849096724 619735404 993480256 114527247 983737389 819000548 575109779 203354449 693640094 843669610 653156650 563838474 958136137 673656691 439769769 959013671 738955864 431018238 97822446 28033207 906037841 339382203 178542116 1017049968 854854879 1026754115 146584474 498028031 532912081 125391717 371312998 885306173 209940944 610544330 628055908 380699677 294874255 843148284 618850411 603042064 559996167 348424828 999131247 436410238 452987742 1000282907 31768938 135216297 899463523 412773808 297803381 242286891 705932243 78274163 726002270 338211021 809022673 117629511 532129165 446659119 472790410 92410510 838188512 325364103 979810866 508002118 671392299 645205903 1052527701 473578490 365315779 196488660 1036095998 349204578 704655767 928011871 238599343 166494044 436427267 919633186 1072595484 321831730 198199895 612651651 614474672 628028752 642918932 792374074 500112326 464971147 595387989 515459158 32374783 312958956 79030685 109109866 997744682 1016505608 677892825 758764142 668399204 161214456 106563249 618823981 318001074 655919540 817217658 1022257967 609841708 536456719 62540024 678857815 772388619 632266122 347743470 1004064946 248140377 178726947 609552948 1050854009 946352396 241335840 812149508 589280689 1021780728 594213585 274111631 782882078 1005973404 135639309 474600231 554089380 604359924 665962068 931453822 349672337 720437654 348301321 24239410 305228882 894249796 786017171 473216348 1052012105 280931139 205550407 999597553 905468075 932707346 549384265 677405155 939913580 1029811851 649793984 27174472 887837176 516647079 820989927 510574287 448786672 1057450990 446875930 639892861 852238567 58905288 277811824 211498060 689658803 23502296 6946458 164899986 9760798 840014889 872033054 442546031 357687377 271069573 176190431 691032196 660874311 769387725 558387317 785232976 696358812 964651459 362642101 1072087226 132393627 608118146 20964990 90085483 744632793 53147014 287868531 700411695 364098763 673605912 308965348 1052179308 712587707 960724963 872579923 1005717963 815140891 242492332 40087140 116585325 1018255100 470857455 676559924 892433885 44559498 644672713 663034989 1064558630 931710982 952072389 50439214 147117 993763602 977681544 280918230 847227769 752009937 943220173 431831740 828917090 834145369 334377904 582078059 689800010 381167753 111649661 620479318 15353991 842293290 1063595702 1021120730 65650996 1071518690 15648707 408405814 848989695 600152097 234603447 851457783 232821560 637114106 612243324 1011580520 7183591 932605636 894811102 352474460 123029392 90080944 660540909 580067758 1033910721 83997019 71781182 826527125 735856728 73993854 376891084 992343962 403377601 128299045 933777758 684318354 836597790 819167083 171441524 710516459 442329556 745781989 687203914 916354224 284111534 25038220 16710535 600222723 617379021 270960561 488417250 629892761 309522957 986361492 516154891 899295436 368688709 324171953 537085394 187501873 2910361 756037294 668474434 92707908 540881860 837691173 7161371 1017248090 36356133 145321462 1066750235 296589302 174719554 595928566 357433128 517001424 673261153 630635230 442680116 787912162 93862246 834849802 672470775 1032596704 202886552 122574147 249541604 149714464 82701026 416513240 770943332 399869680 338269112 303775388 758048046 659785973 691052586 158728231 24090428 780424883 725585046 627524397 776171131 1022649782 589239866 659829262 560548167 979421939 783328414 20890773 226046281 768029860 999302567 646307461 202561112 691846846 147023945 476961794 907734382 712129478 344745011 11133562 770240703 956537532 12963689 1036096618 405600540 952118742 196429518 445094377 535814365 861593576 650644729 691610020 501423864 503563000 19563198 797855258 674254129 815445043 387703200 127173364 432192760 532455328 55140543 406401517 309856261 152978348 759369341 499980643 921336651 347145961 211414138 498886038 322054889 44171218 1033302668 567625544 241186613 591929487 58137723 805127984 181878470 705605691 816870341 529176630 623622390 239436441 359525130 30022672 1056605347 542749709 670451806 681765296 934726124 774861119 342537972 447290278 189562444 682483225 737775198 350502087 49610563 363637061 938792976 761054457 953385043 387133206 149937921 124094622 478851535 797407118 798907522 347015674 353131499 646065497 482992240 869439765 450900447 918605758 928423325 899584879 716450086 171847816 71577023 1070008186 792970853 338836952 587691437 483186878 883728282 540193523 663040435 291619973 609687767 353518945 865701712 589742329 255234699 730320279 5158718 779206458 856737742 186183176 55925276 913543065 650746616 458578643 693609382 7256300 281614100 839367556 597556109 35261369 817354208 562154632 882063543 945976845 690345454 49873399 797930516 328997260 725357239 432681419 486719158 623894072 903941483 90137886 917790 405603571 942658070 638043414 3246125 189736557 390156750 125202888 378973173 204271627 11098690 814439262 262427962 905403334 780890224 298571240 354385730 474929323 307448056 398233248 308435876 283761084 375720890 658924380 755459340 453995456 551378237 509463182 1054011901 242550161 963833723 645917865 447058564 943713555 876746656 351367408 313010454 90241142 964713055 129374753 283507672 108431498 922425644 228294181 178177038 39199752 814016023 189762628 865140198 582076356 823300178 343898991 811603474 1022471452 1039556558 768042775 962867864 484017786 90160695 552134604 271435846 324916831 126126322 651630228 404018890 581056436 129221 667451532 357086929 497282773 15722398 457458815 189297512 104479090 952826101 379587272 1042543619 94355072 47966936 773692230 853584777 19128099 998351431 139131538 159173099 520478053 343945721 583867116 712298379 77118454 632369645 142896702 100419173 290710974 122933188 389009152 595928034 263712752 699499394 541822954 143878454 35717207 990907419 882312998 199578320 747061927 826750072 759292096 308680574 534417675 90141676 317188315 671790262 798514469 531604280 873994884 1063905120 935817950 1013351635 130800096 951656202 1052463012 865174395 760420206 124549725 280043646 30445926 1066908022 535143990 838739218 558095887 414673402 170428252 106180400 106128273 167481946 796749314 273924044 116543860 480551948 135914136 686463282 108697374 642605102 491589658 899997093 547623963 278321989 754645847 761622482 624760120 179883623 75025024 176321878 78577426 542859688 642714651 786190567 141739045 8973421 802194724 40018174 265957330 925085987 894115045 643064481 504226438 883112170 682076948 221560962 183833055 630609413 914827300 953120227 783082187 311851770 449208264 137223001 309718533 7227896 901163505 350427996 604658321 405234417 921331612 319867038 128363747 238331754 632962772 284702975 130414247 369558723 171146008 526621633 69619090 413387771 1006383150 552757031 405502447 966133034 31850667 434052173 1056148679 416729922 656984672 723288456 113920509 890638321 975522837 985421606 546946137 273917925 161621465 682006419 832630587 889776170 558800835 432883252 183206258 77107440 992945883 345241501 17987331 890578368 879067067 952920094 783658691 140406696 438613097 431418392 49228975 934768809 202053232 506320933 808847562 974759404 650121541 72677655 473024022 627155915 890355535 330119667 557522987 941116290 1042076021 757637601 793697413 638578148 756408777 831470029 835645030 640594879 579122343 235157485 887511552 956430585 149748277 955934974 24181279 926295362 1062002279 852392442 485865311 957456231 425606370 497653205 763911865 700233715 1829739 577221883 663540294 131426326 352672780 843885645 683664756 250697377 1013418515 649237023 447637559 1064558689 106296744 336530379 619512141 44256355 900028565 163742964 934572562 397403246 581086618 1037033113 391807654 772001200 1000400960 440043424 454957198 437639203 700472716 28729456 430209561 938592430 822745297 771355036 1071639374 141995006 903917973 309464550 380190576 400184832 609672870 486843718 23425771 109513750 952099574 165918135 499346349 481546161 100465983 400136594 154205406 464584370 478874181 1023216096 625258201 279107032 847788401 51756485 843817091 602218840 534088347 239131737 160023147 575858241 1003323175 308193370 495492812 183876586 797045196 1008827689 150387106 510368574 26276615 774614674 640648528 1650295 180845697 938157834 718248703 782060233 117443696 7966004 316661455 750551217 651336583 151844344 103924635 146588173 682667489 779815398 439702911 383494420 944872765 60377341 865534367 1104472 201688395 351580276 659658122 874893083 207101959 571826128 442916135 782537526 857636506 125414612 913332410 956603686 371727922 647812631 978034397 1019033462 994953021 361167814 483182204 557060889 810060554 223904313 683859790 872864753 581559854 585759743 303175394 857946483 224369059 98303318 967251109 951918610 909139168 895971140 494025707 688389872 322968591 440566183 216347046 255047826 873908965 152416343 242425812 862320084 979163925 560106979 482314679 234320973 520443926 1057721156 995148303 928800140 370164379 339321953 45256023 348990141 1010513132 530337266 388009586 541925133 798862080 386032439 673617305 464632118 1065007525 151243476 1031546815 691065387 204926768 293077914 846195344 996899887 751282991 467617808 19770456 57698504 953948466 554876935 520845553 614514079 67529112 106776402 461345207 465159632 895101988 771203589 118674403 237352303 42075202 151796649 431165150 89348806 239050711 903761528 667832388 830522462 892142063 843084108 109194181 755513387 403385604 844195808 976921855 861799655 610259552 962300001 619460877 272047868 596194628 386973793 613009356 640218730 1060307544 998181967 802047714 565514535 355662509 655604019 676056302 1040458790 109255453 195189154 586129388 591389176 1057416536 795751269 211708254 20664711 925875336 537971401 131971830 425187760 380381587 3310169 557563075 1011953605 921637818 1059303178 564472037 942891351 988823033 833361988 265355140 315776302 709034909 325811470 306887925 620527099 831389259 561484620 802814729 9981447 947214879 576890334 464312204 972486353 200329299 912677837 399942118 976787604 1003646449 411147592 1066100560 895255560 972362643 992264560 518468261 440034229 838952212 823029695 796203845 232107767 74407435 421443244 474031289 554890331 717582212 570443505 885193291 676667471 1012960637 756910713 448163502 783183485 628297021 448498550 957682349 554499911 657835049 1032005436 873319051 197608911 225826683 893658519 299123397 1015828321 106514844 363427813 213170963 905568925 981537792 1069692025 314537292 714212133 43879125 4379869 232417579 335473692 495698528 554543006 191452353 614028930 408045114 856622398 638560028 226523510 978109039 897281219 874328381 57019026 922528593 587849256 616878846 690940969 1073286569 915238218 731298283 428030371 243018684 951829475 520862571 45043214 269385733 989810662 81261821 404753233 935353850 642249312 935279035 76967750 1071569228 205876879 18295502 684086584 983682946 549815210 305074905 649766221 611643672 522843143 163319403 572291546 92251855 169214719 866587020 447468949 1025819792 267657274 399426458 436727105 425494132 715219475 68463581 1066755624 659941071 794913034 3289962 478609035 175718716 883893847 824951289 498981046 742777735 680613895 589598996 405067998 526884801 377981230 202389722 299572885 711607350 794741085 436349530 296178653 286505104 955111510 884363149 436734753 94988219 82487129 456738479 331693004 330808055 663199865 354451867 793774917 280984652 1029866524 483792484 772246543 322092690 133289716 783648072 868894609 103191796 744452445 257114138 50718091 328125120 497430136 227601234 989374713 581824723 253867510 434432766 235779107 363076215 355091064 128142787 231352908 482750298 611209317 367493767 249938280 150540862 158303516 42295399 405029340 381820936 274426263 1004645567 37741877 409239058 982737347 705196673 625081857 881408838 772252488 944005569 253127915 1052231082 356507517 322855365 23535474 455660111 1006994897 244351774 998213307 26251878 595544984 404054847 719865230 22163325 95876446 14184170 347335070 739741172 126589014 946696544 120396922 993090454 1024561316 566914498 476188223 997395453 441514108 17623970 342563758 1067416196 94011225 991972401 554970736 489784729 917976035 526842108 892924009 930357081 360568631 694702352 525414182 154731805 673588899 91522222 1070559631 27318309 184491895 675184222 1024061408 988535300 810242271 366800547 406040939 619638210 970410763 874337356 349273180 537468946 984469765 375402696 167599954 397052887 280564101 662111820 946944765 905394282 720177835 258135554 103784890 890667292 444612762 729132669 232593595 90909273 195211100 1041612348 997310142 218787828 225418493 830107175 684519455 666213706 901534925 303576483 249660953 417544575 600507182 582380943 125858284 360418416 445345504 655736804 672486389 28177758 169734424 756676232 687126003 396275665 138992167 96851766 721939187 65347350 597181376 568470368 104624480 792129327 714579832 471402110 581383050 526150223 921587085 464482344 889865101 41489785 938877852 484608626 887952242 854183416 143644696 821400671 94137418 771603561 779424986 856016673 509165835 233336428 12107359 585572338 551284979 473624902 274290336 458054770 663087665 74105452 778063185 807190592 202424731 904786583 173844485 605212896 915523422 433636418 733216074 938214358 911537949 703999150 110162744 819880714 59751666 520867635 901264540 2503476 189559616 222296072 887907694 192593137 25565897 978103484 965029231 510771580 926023231 179975523 911189086 513675200 1037397028 672457949 715602606 836520117 466304536 422420580 563779782 476085716 698291442 165355615 218997823 79313329 956426996 444399326 1042161637 1048801194 554510065 41861571 393888060 115507672 400972018 13602120 876896461 174118120 948736699 55960734 272225083 455385371 742563017 235945633 385247166 152043445 868024075 188981864 237612704 74618869 164082197 263366790 638284814 712881240 347842526 1050640293 552381599 701853579 72778421 314025750 86003998 24858869 1056840585 992755577 191709755 217110472 659056086 118297372 245861350 432070705 135711077 229178414 950024053 876415917 348929617 567363394 248147775 182899036 464675682 615626255 13520992 136061893 731608671 456028622 422209534 13706094 415691267 139160325 311453621 793323513 523174499 354133370 51820493 418212643 607009841 726317236 529602485 546160946 526683924 71379812 995046501 280145665 676897501 601949764 319184293 414751073 81657600 339474179 274145569 846010542 779935209 486084766 712153302 587549676 750180339 856479699 838503474 800155115 277937405 92740668 798361720 855854353 180792055 1029285635 1019567915 943294141 216771136 64992852 647684027 802922370 600382093 765305924 184237578 1018989673 243102362 703583489 746319697 507169496 964536520 178547144 199208857 887607189 956704858 1064162174 245368963 839138371 264768631 59986036 340051892 905456044 384096605 583013143 689080346 306064487 703288850 850299130 527702027 655817203 885974982 382894470 102672513 98982005 500342075 417662647 794133987 905760895 595243622 599072497 208528929 786623584 895132524 831615264 1009951997 914553025 352279785 269319293 422462488 980134924 832212026 349260479 78421533 695384153 38038442 364073970 499465748 316230088 63277446 711343162 302672604 303082494 487842336 753648945 315376132 749464766 495079185 1015626530 522559793 261741124 769929474 462813416 666750591 714703914 465982105 182899560 992878837 125803776 166732603 702469024 459394576 850581094 385020266 515670133 276448962 741725881 132549657 610390408 605129060 932535538 966901957 982372091 810068604 932464764 978110275 108069031 858265324 507604746 568725652 465886692 222143643 960946575 792824471 1072870181 125727618 532733612 732383511 154927563 875542465 788721675 904397436 380131182 26011725 653381287 343312708 285351893 746009512 36560817 230872039 732405505 981931685 601194741 740722304 11870794 17938919 546582562 907365016 443440142 538410740 280335172 495025408 1051438405 927765405 815292123 139852493 960352661 464571772 446211260 61999561 508642539 628212442 864528962 40336108 510548155 965107953 484206684 1055287235 372302305 506131323 1046306892 423652060 1010837012 960478699 7306459 653986472 301181200 285787811 382755156 816771267 559669985 1004641010 168271011 576610912 244315481 248919130 409118513 17571612 676320744 848779917 1053679372 812293067 273454322 738431020 615953360 420018334 696829969 513561118 737587618 60202110 1066574048 738823222 728450844 398227522 636916625 1050768493 1066730904 176616420 680680424 886857037 1007865861 805204371 851403643 613158157 242366806 599606651 966368537 354179296 232433412 140588573 723924252 86110287 820865459 150626293 227092529 874527770 979380812 80743211 122490385 956368806 570584836 981251412 662086321 673426251 806224302 593153061 661814380 474418251 349426479 919651996 359213067 533242750 103736468 499441258 235164007 657789283 149784918 1051821066 567759455 220978411 444137424 51447534 226483663 415915987 323473159 858157696 32679143 1038656330 17053062 844244182 391621413 818271019 1024883122 290058994 462606613 303084412 959585226 1003549545 587168757 54227737 451199691 455802824 120026472 1004194885 12603977 590199272 58376412 97517143 802916061 1038361025 425439597 425426426 1037913733 1065465074 730315062 759468615 175384727 1064767888 229446780 1050924638 98517243 659621149 511671413 623872491 685255973 181970507 827308508 381945230 929084456 593147414 991495635 729046548 309714333 13066721 186008517 310328908 710353825 380592700 505837520 964320267 703214726 858324217 429952459 965326292 123604743 634606156 516282202 727395108 976525642 312648616 716563123 989435451 349823012 473641646 1056636210 847692966 243558929 435688870 101473709 248631164 507048939 914528148 867736661 972823662 837786748 624657389 637084852 252303020 658880637 591340219 998769137 421360893 753439034 153125868 246658579 616134835 599917458 200777645 140927776 214478899 34061534 880790708 77436139 923366909 1021489756 729735381 368950343 168816923 434112705 49664382 431453634 973752506 131028784 592908626 823964374 157322200 132749480 59617640 82210836 513062672 33305953 649461162 640149874 892500758 281517598 891511710 324730790 285790932 480958448 325291697 1028938240 579733330 37356079 465384287 940182648 811414162 1062940953 684326384 608542039 879795543 168639765 312054102 449480006 495794394 200906140 458030381 417467014 867197289 70928042 1031484016 916082503 329003959 631619822 608162115 162219725 1038539820 637697297 363087221 690129447 575768591 364400551 560513510 292136769 662163084 716891536 923090773 710171865 432682535 277256499 765181867 89578148 624575814 570535338 683956298 824392998 821642411 521307115 3811188 21841874 326367184 149242086 859290776 925110118 667975492 259090129 783106619 511769319 140380006 570911787 225823802 99505855 646489556 1015447494 987606659 272768868 790972631 550844228 863259993 413651935 761282306 442554835 276993250 49403442 98361968 212782928 526239618 813522106 178094849 304877464 442822525 256023580 311955870 210701111 765243100 432940131 367074418 994102419 283214012 496830280 976390477 489177092 524861991 381580797 757931674 489740571 633640677 537260683 608595500 471859319 22547797 919760503 410477612 150066243 503688953 912687030 390390791 766026652 225906244 766020275 67762023 373647997 848041371 18596276 724743133 796241456 716139911 482891918 878357588 583310411 629963803 705678406 941268590 840178569 210524821 191549941 585887811 793138692 105665154 963972882 256340791 687125257 812021959 1014196324 501948636 629108760 560157221 943576832 118462097 437816196 473738596 651225214 350307118 115400563 677258735 637071028 300076744 397711012 102482453 890970987 953448196 556207217 846638321 746591730 511513818 811394501 687120241 1007492390 680628910 415318347 224385936 833157986 711698967 523414462 912262241 698235812 360652957 383957473 178022501 957918354 167950258 555503874 478582818 271445474 810455739 1060743448 194573981 239279312 135543225 569440918 487734639 908062455 1038054587 1051955343 966461602 546239658 104059974 268966454 700465060 48640679 201878083 417317627 248904537 553528000 1019062674 931638291 308113955 9276969 419538280 500810214 352219480 803586950 167785980 74588502 395909027 653225316 308108348 470033218 555261307 458558211 219764420 496002576 834637941 866979119 609279414 901412976 1056676880 797325919 967717796 404356959 1064902135 263602269 567568533 992222742 684064232 12312082 1025379320 378401388 70028128 223881281 833962786 81646952 94290702 634774408 31220530 744025074 736138884 697600629 789864407 670592889 285504137 28376853 582090315 317995114 1038206178 157216840 1062307610 360367739 1014646303 1049879537 513497493 364138812 721179362 387936486 405862812 182820315 940944102 771403817 402373535 297891245 322580111 539139126 138123339 475199277 813612048 373515465 412109868 925298523 293259374 361159219 1063225116 1043442725 579712274 358226390 502986954 200225674 351949325 1035678165 371797283 849059052 357324188 102545602 613194029 169641381 54174899 395552903 697736692 849035713 430205052 228620593 1067282804 709356483 589628917 641412409 730643947 735518217 295870343 379818275 503773036 886965170 20031719 589277643 441536829 998643192 746695369 875201891 1051846979 561721495 863160768 878942600 541841316 1055005688 661552550 853600491 733571508 395959932 548892039 424493833 927936445 894422585 1042305941 152623701 846370358 697238556 731242044 895402613 867907422 103212824 39013922 371100077 1007265703 207542823 576527834 423712664 587053562 765868111 64863560 532966206 706337870 676386410 612305191 201580364 888879564 43658873 1072012476 1034528014 253400347 874258180 174133648 289791765 247859749 541525863 757870604 641520676 386907597 757298287 1069807795 91702510 86561986 611323146 309612634 675763398 735429119 991759260 556560830 262722162 825726194 573518627 1042289468 1015261048 461790918 502393625 706121967 457078344 11454901 535448314 1027566706 282130240 875375838 636203370 827380284 61095924 540049507 651381937 1065564227 740615139 820804114 105717906 941734211 593543558 855640195 340301159 32035235 348238520 740643798 16626319 890984647 280270922 656387756 558265646 979657727 928485367 634222728 134169908 171076355 206527596 586423300 445751703 634499318 1071723022 612273819 465183271 573824371 33618786 58621798 424344450 16702145 95432943 380006149 451672797 1019288891 401925938 90802904 789572689 273922613 282554136 352418211 1037212472 592618998 265224554 46321532 176996409 170940366 780827181 535720437 106890034 172824389 923984786 228398431 1047760570 669403142 582305233 686618058 533763143 671551615 103190430 658458453 1033344440 738290580 269418577 1038437832 816435729 851581976 656000518 72459385 1024862984 144444410 965459272 435707236 783589244 913635727 850982202 242372611 194856409 510638195 153743259 801430962 782961143 775470350 519958001 980207716 731382547 529471343 492444283 632582298 184206394 426430955 495133936 179835769 539979343 488094174 1044900764 577419957 8864614 271941840 654646148 834619517 422315751 579853 857468086 699931075 845939989 239579279 1026384595 532840375 11062591 588233977 907347116 803590283 366370224 485292772 380545047 697535956 750562671 545360017 976963482 1025805386 760752361 706277673 586175870 642026848 551051415 822310852 576123791 822163214 333256291 12877066 779824454 257747099 311923032 57822298 880357862 1049008040 79036124 306933910 892126048 826195507 356122942 386161940 419829827 691439185 663488782 78499769 661449629 928227019 825223169 85506611 697690321 866595362 654609856 567904448 914368917 336565873 192194583 273809828 183980263 1040656475 187303805 672660102 58970979 575693331 319663745 341025914 988951556 354655941 923828825 502400743 1066339039 313609972 884487151 1066394638 500447945 640310637 341024345 536896178 707240977 993120617 562259914 1026741252 517543431 779872459 125628468 744655995 967285154 640891101 273274624 1064424069 25085059 495419764 318425018 718035949 405030816 272981426 149686320 958889987 566435831 450181841 56563186 378286985 198327872 198403932 856971978 495558678 591069601 10506157 87275373 680365775 537373545 377903908 160526123 875736887 327400098 972388131 879091349 109016334 1072071472 979158422 222946763 880104554 403781577 402889644 88756534 811819606 916886488 717996878 441451148 32543309 856139151 23292728 1008142821 774613224 1026641066 30198958 595870228 354283226 884313276 774916785 813234080 610145288 518924354 482144897 866911925 233405028 261093485 92228085 752261389 503047762 447271058 219906380 916863625 724234311 50920875 730748369 383891347 372622638 706024163 875145612 356376690 396887078 979029164 184589146 679645967 162495009 59634205 124624881 651020127 188146379 793375702 289655591 371803314 862438768 201603173 729301746 887855578 139810283 908446439 978542391 128797227 44287603 469167444 1065838695 1009479099 699732616 25741628 201530016 289414364 288438091 644483361 477093268 175591359 641132974 459341165 389442695 451855559 649005139 131930566 950203386 123524509 1030986544 733444045 433256416 843225738 1054154127 925554564 481931398 355210952 242254261 741047606 781635423 544692361 521012926 786712319 49811395 468300937 341045842 710927006 104589024 655120039 292453710 1057764169 85195602 931510076 953603847 1046816105 278806910 562423492 757936704 240858097 190991455 107318559 180689020 889549978 1066853197 879228914 1061624379 1055874275 15768052 521025712 1024348296 952691785 406330439 223327836 927945323 638822613 912064412 852557207 393238949 325554384 557192248 810766086 55223924 410093697 930135655 649569624 852168824 14304268 994710409 994612989 7708178 109392804 556953941 388862999 456322642 1049105565 635657362 786006862 766324965 840211050 10033274 1033352073 670085423 1000786543 717594730 297154653 698515275 622978298 441726881 597030141 652554507 420641902 922468850 438230012 482933836 107959961 224625347 656953149 944983758 442157457 971911554 696842938 91192209 333142286 731710917 293515511 305393700 970730059 1021740675 673690472 259031955 294378068 866033638 173460838 920754696 334854291 339730997 608261545 378294260 974640582 663469666 115253897 8683610 393129572 581225916 116261767 12689764 643062788 627980508 461522396 292455604 451719117 296848477 226066332 681080572 400121202 306571490 244699865 1067255838 428706439 685008273 312647062 263895766 641065214 870064348 1060235347 897572890 692441194 133588647 416940333 468540854 702703697 330142982 250318743 821618286 205548256 666320812 739938892 419866222 275777155 847090726 452141621 850431282 937456833 482183 74523915 923140455 103595993 532831807 466779464 400741202 314406927 461935074 413496001 154381908 405484496 655669830 519809477 194310736 562633998 579114703 297149533 599933476 270887578 976318103 646100122 967150815 528962186 406228820 71077983 84427364 882929711 328526670 825187706 637683710 791331845 90673692 198537287 439667493 692426081 698956182 850396085 223312230 597989763 6431066 315808944 579223752 528078027 814843426 983684214 584984669 1062411710 593992706 242598681 778551820 75051978 940004965 50551955 753408929 975990437 750344245 348582429 445880055 836223953 288214770 425964314 266274462 459052927 828538777 1032643134 445608935 775426062 674117508 345048004 482868348 403930557 416757462 664396134 440378516 400545973 434242844 302939468 913220274 616327395 427873249 207363851 116019538 916627702 927425531 722433112 359179034 609298030 514690702 182425679 968611149 676754146 717927060 377351334 842525484 236314142 212718139 956919717 660630215 384584437 912169127 381179371 890560569 197557841 268293926 182210852 52650960 852359635 448380447 268881634 101588686 648345601 211377389 441480651 431775440 1058826526 893310353 498152489 841664732 903183192 884109426 699540843 705782667 71932702 755468380 1069040888 666056225 87806873 498033407 751364366 964346772 312075605 672495091 142104770 205711586 581653462 326099956 414960961 9177319 216056692 67599264 483807112 877073575 596866877 11312472 1072815781 180660443 922166393 866330380 649951174 497800630 981053355 386553512 215016579 633733704 686708986 692718827 1063616267 551728016 498877278 243425341 557205745 14738083 490265218 815262285 737944452 993604979 850129628 302014664 234359617 806181776 571944508 369974474 3194575 784565330 428437068 220107228 1027504719 902063724 15932321 750206555 459183713 1056270525 250174103 906406856 752945590 666054606 175472342 155588516 538148257 548525686 218303847 466816508 300797001 779074142 348812431 501354866 183073101 183039981 291547935 116818624 892291527 15717274 128442078 703205855 10987121 231578854 333104892 390614553 420563154 1035377258 324231738 814422278 909468785 175643408 692267914 325989814 897090983 980452711 393690768 572283006 892132075 434617688 788082847 321367529 1047174171 451348665 686394771 840905406 584954235 714661823 103691644 871257626 19669479 511773888 827789955 360760764 534449426 898525996 97510463 855749763 233273495 410935977 909671791 111346999 149352571 49820103 1069556216 995159440 525819427 540263938 604946727 678281937 1057671074 738472912 764249459 520243665 644619551 215362624 1005111332 754888413 737288987 656353169 127819022 889685961 873666381 498452053 17330811 636366715 978621529 1007693865 16793792 12901640 212305982 1044140107 584708398 236118250 491131593 856427937 126822430 335228351 30589954 988529208 887874699 259143632 1018895221 925669047 1049185514 847090224 56051321 301245188 39557149 5729338 872762519 791669734 826722859 788005140 754026652 10911484 268620389 834367824 491883068 10575126 506918863 575776689 730209994 956613336 22800059 863826841 821896669 311481225 692768772 460576259 400083183 838415957 921799286 88311503 113398361 27062680 309331149 988682400 516280361 55872004 222332921 52012612 475491058 684948055 310484045 367268535 521447402 809806946 961293993 110486085 773611082 467691764 405423471 796869010 782326360 1044020104 676554451 181583595 433877118 627539582 251043936 42782818 909930656 1054465445 547661495 782571867 274690014 1031623147 1000494205 776445808 589123993 67682912 343843955 205486536 538019920 1006736269 1003651610 879146823 969942859 723596048 407965082 525009896 408465061 393312865 640480280 145918275 503418659 1028169395 707973705 401489093 92543219 771226990 10929535 823290189 715650129 642573106 193509274 421851499 308045217 1061493281 319446182 265809075 8867249 955211310 634310446 454002177 121836176 410589284 4773598 827595788 692395483 1042522084 88042379 678818684 109697881 825093493 395021433 103001099 624086815 293315025 468342829 244347868 175201071 215847954 966808768 702848322 305717011 65629449 570958462 471900057 626693339 82507460 150452637 245711970 263792130 37612468 110998760 183392569 330366589 31039565 647774550 517640790 13393237 609406466 1019961100 602213577 765146723 682635830 698112815 102475833 431344287 650924196 423097809 997966204 585308654 497639908 81080010 877281056 437404908 975394466 81731404 645094181 1060390299 294143896 732805795 39786373 485719138 828539133 472487161 401206083 301260623 6091825 398636841 1014544788 600802601 859930122 344556726 414872657 226373742 849829799 827712060 586154244 680786567 1036703524 53400129 908789329 732872555 184695283 130190839 416599048 995897507 182770342 20626158 778071741 406894104 531170994 885700997 314676456 756573273 549237148 420898296 15340007 832812252 102270062 663800961 764307796 984963345 508839737 943718865 318381257 624208108 1017088292 52910645 840062232 329979968 362641910 139709564 319141367 609026241 460777642 769550607 866566950 337747087 945417493 673281469 704049328 988559244 966309320 950592834 813726942 471055748 768555393 122607963 241137130 928439024 565044710 48546478 877630542 440351953 702532611 65443294 704577415 418781679 219153502 259775311 42500781 1037017960 912019653 601019693 1046987900 6338558 28825885 672222599 30281359 320718109 771574062 847007614 683933501 174798984 91232439 684557969 991514423 195720342 719390050 803665210 567595667 807411344 963561653 967878842 303146204 260346141 888452673 813014366 489464861 594089684 46302857 469882910 180733042 952023572 598476336 947602386 740292577 762475116 372929623 568063684 909899591 1069179838 130727956 178609064 455985261 967993029 696057012 150706179 496138723 1069459744 207578179 145278235 762345935 732094439 980301160 526146298 973667722 126507205 349901314 472848820 493845912 14473098 108377818 939360669 986578227 979849593 817015183 204483082 428049471 411877998 104657770 30904233 741890323 549016003 355046791 984102870 46582502 35407316 828467007 736404756 100685849 855872164 331196383 836732405 815383792 1039908419 518971662 30067696 171722586 286984571 778247035 763402533 837862370 1068444986 300607792 562309297 582749455 1014360384 109360737 413542735 61833492 629256440 467079984 419907787 298060004 319403705 170513647 619838180 169092375 505520675 362957680 131812720 253067888 1029456115 824823027 607236250 61702376 152085764 509720400 735267722 623729184 667943260 177419702 713152423 462796619 352290644 1053433433 494343071 237306853 646208879 1032068497 662526972 169800411 292171031 532304821 758200621 370707616 334500918 684591366 988903597 169947807 750494739 389546128 383202883 575166164 427366764 482166351 335785744 560236878 259210294 75407851 483556098 988161341 152477528 746643259 809668998 591548299 493006198 574371501 482579711 184619071 496894633 85811918 520859327 635574233 1024520644 612523364 425799920 279949497 23407623 923629429 142102705 1032085138 144095916 550134822 655771200 520074889 174179526 943916650 262581924 871821245 1029013684 845967019 922117344 122756974 848845293 518693828 983314867 785259409 645757587 550197804 493424359 177258468 327385470 746000404 1041698945 291793313 129111235 269945199 3864646 1032066680 390605179 224299919 463100209 328081493 180275224 197461920 369000983 58206820 807261334 427558971 1011741168 994376883 831173849 915558408 491606161 353633411 218754138 920750521 802840855 801336423 756432 168602543 903892810 910561599 553160371 850429382 1003988529 817109592 1036631033 79500074 1024721205 383026356 79900736 418500603 559903643 576347920 114543150 613998121 544991226 549484988 514249047 753601098 768427632 693234702 731214657 288188274 307981765 197680035 248712870 823614339 544892250 507132187 675716091 741864502 681727968 545208655 554578247 646929961 187606316 993463657 76982322 108843786 738711523 73584181 928900821 38972202 871958739 874442326 1071092162 265359504 244728366 696691994 314640549 397813820 989399776 75031178 941402033 746791927 1066398756 478664793 910612481 829207811 607561103 1038178447 860266378 332441978 941985292 867288634 43959072 548275877 280917690 381827787 336228872 799910942 16848081 323641849 116642537 50310552 461672558 367389930 961503558 661115808 1012385685 450322861 32019884 347961287 513332637 290337257 617655795 549845564 504920532 4871761 366841133 283935103 883572451 192277520 555748699 485148831 288416304 74097275 288234355 818685271 522672901 700569273 794387880 247832222 294678699 800546033 194710163 667459665 798264700 670937030 659606180 258937221 498773149 319915928 458782613 566568135 821343717 613787536 247956948 143599233 317482010 1000478835 111814663 810472717 889738542 962498461 815756061 37907405 609375202 763330324 1053893079 898963642 244167772 915139005 207875713 725101785 867939302 517377278 489504974 566505518 884154170 169619817 513811737 712072397 617409706 715107681 482492878 166739476 770881469 268430659 945905657 347378161 106384498 342181352 881374933 323471471 48613193 578337948 779947322 647147430 321958610 500206908 236406057 266212877 959439331 179068876 108646769 671374913 1067936623 904089466 112806546 428442296 476250677 991036236 667998925 287886230 512704658 211416042 1014514470 780821537 601729536 918207043 888581537 428058196 459124682 221010196 1011102276 1046334029 646257572 923817593 1056207134 570529454 623631381 254612795 756271186 518065665 804578812 948869452 882832991 490375020 118881482 921501345 373623986 38731414 693080040 660908420 213961404 879974235 335784626 380662739 983745928 777675725 14407345 1035939514 633178298 192841680 104254447 742770269 462059047 855735871 381545586 439127607 333535185 166294979 507447130 372621698 337925524 912917566 883261638 548843224 83294227 1028782823 697246571 7794537 1038194577 376376588 535495382 429600559 114209018 397755528 1018875503 251350053 303090475 792842502 988832959 932392625 142359590 969722297 893817855 644223297 1004285372 34134047 115911514 177852269 359386196 475114032 144418642 693451095 906305520 271771034 340452355 814537173 140292594 669605483 420434875 181753653 830604755 813954176 1060660243 591408525 591833506 689868007 982812183 846996961 575767111 541148898 805140442 317843504 727109764 708990168 755077195 6751009 301321731 209555396 396612280 131650000 647735619 133820572 334965439 761205242 859607724 476183464 559310706 707424261 48533610 626917048 186946048 546356719 75808029 1039905984 450042069 585436190 645904005 399024585 167546129 43673736 29668291 500321368 352322969 540015892 336966360 194145586 928534551 831724423 275359088 772329951 182240954 677891882 129252212 53544035 380443021 406181107 334679131 626850482 716738771 39521125 724741593 354231253 113312796 119324500 414039161 958775148 1013954152 877733323 82540396 1024371870 146428841 128545451 860789476 672088741 1055074843 715333931 191300340 31899330 143003386 815791370 948568559 882356420 680750973 791050336 877281920 479871073 785929296 489387485 394034715 95113328 311373638 433458238 783763078 360221043 419095320 956641908 622789638 469670661 608251490 3318363 184105344 34135464 203812443 619423726 532963034 190812746 833123847 653713290 234528093 787410228 219894125 996618201 54614191 1021824262 349181601 405529622 683415670 559357969 1054632344 746171833 196583830 916706770 620293912 559014970 216245060 468337961 763153910 45734478 166976884 1741313 514597237 331797540 939593559 171878330 902854633 925676509 601290160 678920434 1032176415 182087967 62496725 856018327 615767037 477078552 802038733 882419961 204529845 767239970 480143658 894163222 527523227 23255749 1043826782 843154332 276491949 208714292 779745872 1023747883 836479047 378983905 992298053 907894873 208978430 18877788 442534019 599715307 608268094 148775588 319978204 912990206 772577967 160168442 776930676 72395994 37614364 124561974 189991802 891431914 689919002 356977568 713806168 165420166 702251435 538303243 251572174 227912776 221300520 360872986 870302954 763552601 677011319 612277746 816052017 398552263 263877833 728776347 757598494 823798297 818238600 552963716 530078770 476961737 377399609 423888378 504989744 372916067 763050791 644464661 10396041 515141615 238068495 605443255 735986651 233776397 867063502 417489990 152831881 935355509 35600316 1058638441 387163946 923468034 714449129 294551160 652704619 841795841 664714376 618220989 742222408 82865801 489936259 209091394 672641559 943720465 45171487 359617892 359372826 564812090 615734248 126951818 914186661 996411228 871733292 343188100 417062547 853111957 850350391 886961746 428298511 22347756 497786246 978211696 783105375 278079998 517337997 847417895 860546196 670223252 142304258 422597719 181461935 601454980 386887456 642478733 574634451 1042213256 1009516603 48952526 165625094 1067206238 394215473 623881443 682273030 968764614 749550785 950420207 618804152 809712020 165907514 1069956833 86228311 330546352 729079240 71055663 206880170 1050762156 207983672 540627847 606667765 168250598 490292256 235575973 971589 788373595 624528108 970103991 974708479 75443764 117618097 255355545 383481362 216189613 460918358 55345649 179539052 386145919 68258944 518594147 343510005 751405257 970544390 875348932 212063842 572543624 674797881 232755793 896015418 896093537 545388100 537446590 74369049 350845622 262944735 698335426 1011528919 2038201 6363549 247070749 104305507 834269086 1056603332 692327053 969409146 893316180 840133949 535769278 718687012 401625150 73480019 412484371 331681830 936890340 404059988 242437279 934458282 991580120 642429798 498418521 736360276 111072368 682558164 173792086 264978179 250666359 663072186 263420127 53331306 843089783 873147858 228360758 966456774 911522426 824929302 151807779 985451554 735401347 362053148 616425470 241926685 243400631 308736027 645185292 416347758 671969818 375779185 167155759 324385147 347358441 85148566 329108388 66063726 80413528 439564814 1023833142 586868565 550010611 401076981 164360025 977381313 380763019 986023741 1039834311 623496635 494136257 878587238 355885710 419644748 53702561 57977553 865826720 97025619 632147692 580454019 542575600 14992251 883016834 831615498 850007066 296267105 187831310 885009140 1017382881 746494043 859640154 215545490 802860323 948612247 597622453 14148163 949198754 124110971 754450489 284736880 944155846 307932862 342121672 749056271 555213316 992813505 260807726 999457000 704005187 726749832 353940776 319848576 839199383 86989429 654132588 274108777 1006429530 344388945 905774453 488801465 638256991 312172373 93166929 321679925 1056475695 390879889 859543636 607038036 169135068 732193233 978625206 186306461 734205801 33909430 234319092 139541293 147548013 322728555 1007800514 788695571 642429162 194886228 716840996 418303579 269246707 228712880 439086768 47051172 579751317 104393446 1037888853 380955842 861618666 245535538 780016689 822973597 617125154 854767531 257870025 860473504 291645649 28300703 955133230 430328133 241739200 757289703 196635794 813973299 725120579 858309068 703505837 60908409 956147390 494991572 796082713 579197612 253591729 101866597 1039338554 799275151 977237266 872989136 892372286 129613298 274546856 1022041946 852501522 810991677 822267686 36287937 203036317 1063189293 766361332 851930261 907973318 504514983 699204649 651867823 28902266 964304412 447649959 234559093 961153344 622676257 344740873 631630291 799031268 384988456 537187439 375908089 334044100 14613176 620384939 142638666 332684206 587615880 1054111971 696419690 793312857 419010565 910645019 896774586 910209958 1053762945 478163203 413253873 839681400 630445209 1017303142 85206805 560047805 465868181 514818955 264808467 561656753 993598669 887145969 586309621 801051545 970441500 539284284 406835916 901225885 206301771 695792409 481734465 697258257 22052751 713763166 449990237 827899585 1069892353 77097162 452741141 19881576 577147415 151035911 397890520 115308758 800007373 294343599 258903518 524373957 656805554 849444317 553645067 934607637 30705599 806596047 284269153 814287775 388900302 270569323 322305130 1059995355 728375428 576937061 771620479 598010402 740742545 228367079 544518188 1033472483 587931823 203894812 1046207376 371455098 165624023 989726451 35935384 944584357 59640075 459012831 164069773 324712882 264368002 844348837 379876334 766929586 1044330462 622332643 925328262 772980292 951070852 70813604 5768433 1069369747 289147957 857547726 116133418 530412473 327949415 844554644 1046499596 95560029 876279576 771746356 377912651 109608700 107756351 1024580001 586277693 929491086 922758946 21452466 1015874350 1029815735 896115960 49105912 344885527 629254466 959833273 108759800 170015465 954589045 321680564 680659925 698134084 760699798 1044179948 939361080 719184098 251084207 863479765 875819506 35411748 850330792 312365563 102602993 541842204 474392059 232857632 1005287382 748661704 224866085 130042756 3294759 354222534 495627541 226865683 247726638 296844460 542854571 184155336 1018283475 6702621 412159774 24998456 143679950 811685198 307318821 1053952692 958306214 914668954 951987641 1000532781 150067056 591169170 455458731 786822515 681723396 995467211 193623744 587818854 930144336 1031943869 707424283 386768947 551448865 1027572439 804522051 842039505 417641315 755668266 598588680 385852024 1071717390 150600981 32936247 158127091 588779711 738930274 1010646955 979778263 77451073 716148435 1026955868 542646434 997896207 308819199 879286883 43461112 989272272 620753572 150667932 538527804 229861707 50239510 564202741 719498500 763260054 628321296 585910745 313714681 284918123 157876661 783071981 998183153 715420198 398555107 1064648358 216765048 227003250 134883828 871791397 555416433 865350933 205064727 62327629 96575809 204633771 31828649 199981499 1068407854 448043656 357040164 755049207 561390243 47494487 1067562942 178410713 432181869 393816556 103299493 756836243 742032084 632435113 265344598 543098123 232126023 805204746 132879306 892055144 91343391 274147171 181231959 1042479830 220625191 802790267 664373508 901862125 429231358 468520390 452717913 589318810 972775030 1021626407 1071457809 56570985 842350169 935407751 934049186 77165668 936261745 392144120 755342212 285888630 1018138377 593898882 33654683 10651873 50634208 321336931 164955462 597587406 484500864 211812687 967717115 808532839 483619865 355222822 229558322 60847557 82600721 865647405 124661014 81336786 747189541 30335925 227518935 265211629 365423103 943453598 295700163 38002274 666456831 711804797 780647383 719627230 611875968 733989716 311242631 973166998 798902667 346991479 902827086 238208872 577823532 1034193141 221987876 275643862 986377063 172632846 771390224 227382226 630600769 747382640 31213729 393468024 161047632 626716639 607162845 696490764 772702726 763549336 927300508 461280693 107546367 416948290 313153649 595360843 681434887 1064958187 968111199 46309452 1007534675 417403501 11644520 362817232 113678552 654832191 431656697 913117397 282036863 441653012 645130520 368470694 1009643238 747067390 252095021 1064755264 485873253 851345850 1042470063 210392971 237916380 726774216 548024578 768969310 221617035 345031142 206040179 531504695 355227504 691104640 647956690 706590757 207383820 5889931 177551723 59715952 929576836 474001831 184398341 1026212270 1020130776 208048497 331089339 147256379 503056903 686719682 21888781 550134659 221222566 676844296 816723862 69848400 883123914 346061905 51407739 603676370 157331105 683947563 1030279419 185587354 749424333 539385971 315154753 383783605 23736076 58460020 300120111 573485126 134690293 951547316 879894409 540731750 399497219 50167736 247551740 723357988 579412168 341542218 12921853 95693319 666175660 545608924 150018806 1023239991 198239808 498851484 437378604 418930622 578549786 311054888 468266488 1041601825 284937421 66426967 367103715 635290735 505837068 947468987 48368891 1009018920 146342760 488516246 642341176 488903267 92132756 842128026 343669345 485862982 177215988 605463098 900972837 600785710 868506238 938682031 104283365 743579602 634517307 316172253 214552777 81806514 243887977 816472491 226454748 976900760 22485894 302265943 53966636 859378533 478356092 1002210186 1038213492 481198029 767280990 580983408 917990798 97775795 416590575 957359818 173388695 36490207 385584112 893147769 1046033645 1062490984 142550433 342811726 562258049 336588331 191326247 110744017 268839736 982248755 565952531 52663078 135719942 635680264 473713958 503099994 148346267 534836232 885084931 109242339 635605978 917440995 285084196 854462987 1036143576 787852978 196906131 1027742598 637879874 410132738 186476522 500509947 98950624 838293299 125441594 193305874 858019642 422863704 622856663 291664145 1065862564 63420865 411546737 22507254 277522855 114739004 803136333 884291984 948727117 417082036 483669364 918262043 288266016 372558142 1006803872 191317309 1046423648 614999813 210848788 955134250 555516942 993016293 875872606 512897258 642980516 149367700 405577142 808506563 607536076 441848995 494877436 945748378 10904424 969226815 96274046 800823815 95445767 391523655 807961536 1010622683 6093924 580778922 369771997 569420453 778941610 436420089 853036263 356166018 731575684 222967437 437071968 212100153 190889880 243603572 49781065 53967528 387800453 249798637 691419072 503620085 154791171 965016911 1054594568 857842015 545370440 295598019 935447650 306991058 255056638 833730774 26268923 357535603 178453349 1753931 1016043132 463835001 802225611 1024525602 797029552 917866337 222777440 460970977 217274360 426520333 997704883 118560348 954311972 634636501 645361710 944654138 845590245 983366390 60125778 609200516 1008424574 144223593 470207460 393465881 916102229 330808885 1018584494 557276640 766745085 186454227 969401005 79383940 318027504 919744308 54540420 1004091545 212785137 931482794 963860830 380077027 432376159 690134997 801105045 601228695 146849591 702558150 462859971 255943387 629784346 130625208 796045741 521226035 1054805714 595550022 108871821 439139761 586085562 811362027 709271498 75294068 408575554 228480625 889588686 224429217 622805849 713499743 100838345 950450651 200622953 538285902 1059746137 431561115 124494303 212345008 844626133 667024772 1058523483 301271096 939177099 435761545 798021420 719266802 470155330 938211157 14661301 420384312 1006304210 122194144 369583750 343726390 36508502 745178797 737664718 918982440 795257007 789698417 320627403 302542098 597621637 803746790 424973350 174555901 783030084 215426211 771010001 486226403 332378790 1025883352 130792836 488526870 77289615 245346547 913021454 512053421 534045946 230835400 928656838 149959118 250290654 899055844 935097630 850716684 560837559 519750273 740730423 1037483598 615311907 907984773 697231601 375472433 2970436 462893510 355850508 471029092 116859422 108562164 901029262 809995775 395796415 371744567 123758815 955843287 261158139 8779812 723683495 349268111 300065936 168331083 608356955 118374497 145648237 601367064 904752689 374534043 188964235 101114997 661620231 68831010 597751650 1016255008 346103116 66845797 987359552 1040830269 948514065 275243271 595048482 305080337 988194872 268822982 971724140 561351620 214793133 1026415152 383984237 1026533683 101775751 665301195 86090360 625343151 56329918 293861130 884275459 698597433 635049737 380863938 578922501 298262722 36856051 645662456 15918127 942728371 510971247 265631769 118278383 831091439 771216466 489944051 987677910 135231960 1001221854 820198278 431601022 246557745 1051206711 638542327 133664905 90282511 950902263 716477000 661178138 1010587750 839055496 577660246 501782628 1051057968 722784593 362780001 582271155 913888630 942551808 2190618 1045361559 1024725028 983048610 922759906 457879692 280940047 814615698 908329184 11743782 478635151 326210262 487719041 703994497 878837876 809846751 490695412 1035489653 838970299 142557659 92074231 398817095 161839252 844015081 69600807 662308005 179562271 853630573 562033444 999498627 34211097 293588276 466346059 904511589 1057426914 545004921 473496665 380147883 198980341 887722025 289273136 459356813 432612004 750768253 154143273 473344541 46060924 239152733 229478112 113149267 965232124 572279811 880287042 19937494 424904141 614539977 646028035 527248003 870296453 367186391 495820320 184427641 610732887 906416353 1011531466 251288268 619049849 559657471 249329065 627959487 423214424 936580483 1038825013 845289947 738176232 437191231 469638188 44249207 478570245 131163779 20052433 228647192 848837050 663088051 1065028640 782649514 655764081 514919416 629775705 850903015 976339656 1066661113 452506892 639629683 507781857 345788587 338865845 779021852 341408308 833461059 305595075 656820625 467047870 246092754 292798793 689093699 339542998 535416095 601544978 123085696 469865587 883646504 851270410 108303543 107803273 523541634 589079217 260585094 925985680 469983664 814866094 355078198 237369681 743320335 192216780 1049490248 474322192 312172332 474383750 755750125 464100831 998313727 288819775 456290152 857413300 380617900 163040310 453306951 632124058 68954127 41179955 996950953 1001488861 434026835 284834319 927591747 1042639204 736024916 14790917 573608471 863998068 537066022 133911887 1068177316 414409779 720882671 22637568 973748355 942224260 471077925 56825957 1019632235 743870263 643021064 260593819 710524822 587471164 969889028 371917242 401388243 347140972 131702457 344139532 7288655 759937004 393461423 1045066812 17685179 804880909 481753848 927455649 191264808 1057917117 336058234 117273810 70061223 158228068 23715174 872408395 114018228 228325575 274688823 801950697 180691672 41485349 1006984922 114805338 302259731 876615505 313567438 690277544 360272853 180756720 1007674257 109079633 326026092 801268996 303295573 254776914 822207243 394306790 918135903 1009289303 450597575 681337443 115598033 816182145 604452060 792262732 804054423 704565669 719600323 79715489 559236973 376978996 1059082373 397467671 639459545 773168310 974606994 66498017 74829510 834165828 560012266 779814719 467905220 236661821 445895722 867312383 887304682 870455193 66774318 367577684 467748115 153810802 376742964 296017438 133020363 91085224 432703848 393470417 793469655 1049876306 869048063 291254856 63269221 532584156 996700671 582868113 753445962 136465283 256700353 159071071 57009417 612720351 928899186 118916497 979405159 875936667 68617928 633375659 554334526 297386750 600665575 441167601 190746798 894568668 228091291 901620691 195691978 610022590 328410830 169122939 1011122917 444595062 707679555 777877085 554581931 918003140 239493313 1071332123 871720333 794315718 108362027 942513629 589941647 950548498 381715230 542267007 171086966 557951570 780997454 157818048 271781165 866481393 128285015 583725566 82816693 591975057 783045585 81518443 686127069 80568948 443564445 740764209 905807375 979485251 268655819 986319961 753423149 277437658 583659015 720291285 666455212 787750787 248382283 786376402 683383270 62946522 91404253 222451216 220810300 491740084 850832240 425768672 31521216 950434729 396609674 473849359 488362969 668667657 573123811 807132425 170037772 617973656 223560765 197347272 923660755 176294824 677041224 984749257 848397648 614008103 22460560 803656429 523088459 13642427 774693367 479014095 47598339 470579733 768959842 871598643 303061067 6033396 718825790 103609718 1051872138 402756681 735231747 381366439 21578765 1048445332 75880818 303388188 452069301 415855400 713546629 349615106 769006910 436645133 214158583 960816059 275183983 713328785 1008620705 194266227 839178758 401699904 1040483414 210063426 926008638 33520603 3101814 1051479383 719982136 366826182 636212773 441663878 121344912 622914776 773126335 993186578 1028213078 809659047 67854768 652130266 228424755 821882484 699060649 337418572 221350632 483295706 686840815 1009158283 821579034 802275369 128228524 932949208 914953858 482892624 767977379 569448057 220220512 44838171 967531259 102218078 376468819 196525383 547698332 667096328 1042977587 133441284 252952933 856059510 255851124 741272938 941103621 1058724474 511341062 909554269 975912955 1022140613 318895814 455629466 170791642 324012057 91107852 894984223 48803822 100857574 543277925 450637264 598151177 782124617 742322576 564004235 837914527 591198580 241568959 195431862 177265426 812411999 615971919 555029212 192721232 598677046 468063719 194340929 847840341 661592712 844555368 56143620 248938026 982702484 279266087 965436232 249956542 396429474 943589803 196308056 223774339 831319233 899436966 763342763 196731111 306709985 661434239 932221024 246774309 405510921 965836238 961197385 461077603 431171530 864274440 573587096 639838281 760072745 100928187 530877276 699578625 148507942 218814440 1067633008 464274430 855647940 496865154 461168589 203257091 146258320 238289804 507231986 747554593 37326078 315050284 975577692 274030694 802586269 624215188 330729739 633508918 190078186 4459545 206029673 66293290 156419329 684375789 595859194 209205735 106493422 232627051 451022033 905335442 77011163 510400954 487001754 533530635 837197006 22524117 704607827 108577464 187105592 742464479 90498397 601246270 885313393 89414738 638233971 383441500 212663740 923321439 241294113 337686058 337657911 240175577 598880978 1061273656 688578728 824709101 358504319 455683234 813525125 165922757 816752546 732039557 638157028 39980714 58875604 388479433 925697663 945805915 726044769 58244904 343163490 295390401 924147779 891463507 585217341 727656245 81847397 429147372 429596576 829506918 814061418 837295822 864510554 250127803 651627490 61058380 109039437 142334782 847162412 437600375 655442409 283941012 1065344430 167002978 780049989 919910017 840065431 620348760 776209040 1011389365 342329749 667314248 48221250 340791186 558961193 369490096 588358476 801530257 1005541231 930566093 515483917 577561027 71387768 891416583 218095173 900876953 1000590568 440021510 807490671 468983463 225551137 631663865 222168979 595822499 573293293 562507967 847515309 451529099 622752496 1029213164 451988879 849624160 1013661381 540312000 1045739718 47546049 412828634 38968043 416708563 702395230 2380885 100351772 494773168 360000746 419876620 405756885 610455400 281345806 267884735 996347884 636602214 256146437 737318278 573546592 307071929 267677837 743586327 396523342 794723783 445859642 927215610 643212800 567346277 931140096 532648260 158361177 518533146 248306502 753908598 260154834 1070918290 450265504 1025068813 52956514 220562852 391631585 71932286 582025129 128111216 265121692 665253163 684384702 508130836 605861334 288877922 328596691 1037734338 995448065 694037064 1071401377 202686784 90069366 669801421 717943496 958030837 371290995 782845016 1047729388 957099942 426432718 374530987 477503465 237081719 7767332 713123495 21263417 378782335 841275730 982296335 539358824 672699980 578532785 493381322 948671881 216902693 746774229 35042521 625547093 634155373 433839399 1051727937 679497919 78539103 568863541 747905547 58173315 49419622 768033113 659327148 393755139 96616212 428755121 905889420 482036010 69886638 923169974 486424061 371764692 181563473 596266866 836597130 343675691 831051413 957828249 279983471 290872122 887935924 1072742141 923772834 715010122 431655068 592774631 207092060 34205171 111884405 209372504 437202447 793867186 1005325902 361848634 17875031 321219284 979198101 442850495 538280553 967861675 1023587854 953321660 846906744 74627595 449140423 582830662 138133409 965704665 214382133 762545596 46957955 1068226354 465025122 1030685481 22482546 553407910 1062938189 726706944 543034765 719466924 335301851 38981719 1049960478 883781453 191565839 49658365 121259574 28168848 564340879 961797969 995541599 872886149 377056931 113939004 937606073 576416140 77063928 710872636 335036115 63081787 260791828 648844888 232359603 224374030 191131162 852584686 184642816 451737910 928962328 341667393 118867566 325294501 1021518020 923886757 481284723 599872634 927513037 215092367 200499233 74490439 371117178 179830767 983285640 686069615 969502990 95586255 446795939 148014222 238206810 9382979 959022548 404443460 97319295 120278061 177598919 974764404 984716695 101407847 885665806 832534717 636861080 763733237 933197390 954749816 578308914 831265139 41762200 116772257 768272431 600908494 553051840 102832626 711478616 821106001 827725314 1035774409 475725749 806078512 393050226 700304338 615128281 465496730 967506357 61414739 10214483 902154245 706439212 508763531 1062123620 677603521 456461417 228971822 936689049 318767229 90430394 983148574 722428441 886769866 13119556 57856502 673109766 253984648 134153102 160928073 495073070 1064305501 896410550 852378160 732868656 332577869 43795099 616152103 173870642 941955830 733025377 439461228 358515081 136823731 935637570 354783078 647685149 8875703 70731545 484816777 883038529 278905104 338447462 791527812 752326001 954812027 513832139 487638310 274365496 964950021 158521442 700376737 574967768 1008076729 856117692 947371324 963677215 645244817 207477932 181031009 508767599 287834302 923625225 410102313 14713963 3007720 697431874 114473865 819517554 753062084 812340457 916807200 869950386 486820672 220597026 157726133 453212983 581295651 368327072 1041980786 630255058 906962668 988073995 753156271 841138446 1041347643 203437878 132965997 355528353 50029088 821002843 1032245010 696502071 60605281 649604470 910698137 575752302 423462004 695657542 222296216 637759428 86572665 610774566 948520005 187405385 829321277 16765132 928673936 495212538 639551557 29007732 589373712 285231699 1057623469 289813137 593438028 705002444 10539887 422539245 1064914026 250696087 414730535 677717205 396153733 28167223 379817377 267365388 114246686 1037210872 398812840 604717579 817275054 765980194 283134992 111769009 114287637 519001240 844056616 374063248 1054911152 418799536 135644735 1057699034 586546887 148254165 334841038 707352627 514969490 339615490 101724308 269560146 608917546 652276367 367146953 830511789 979495395 421117762 764797699 395127818 727188540 774423283 811839265 1022948940 297570888 301748060 967918661 1057702715 481118517 86810083 783899247 468985467 184707855 171063596 315740663 659654627 935370801 343019370 23328167 489944222 224866090 751497671 39561031 1038250049 697843584 128693111 553128512 998845607 560796409 128208596 164913046 503401938 306351611 1038504714 378030454 597165036 870558146 623279415 546728689 749964038 554791372 94870288 37091698 445836862 954695691 708124438 760048940 964313789 68580372 1065445633 18356444 658940982 314850220 233458673 300589483 201424031 665722423 713266514 683465080 113281887 20819253 238293475 618154516 245347205 557584214 763900610 872370053 427567735 4802754 648196988 524375856 683586185 223033830 943659718 931121185 1019472403 565898475 885249023 304833784 11201796 1049433306 325371778 945139102 995665362 633359778 900299788 973696955 771728785 361677696 642610157 528820774 340999219 999372695 883678710 805985824 618604182 1067541053 201624268 432833829 473079534 77766520 993625892 445351885 285272174 551142103 699762005 548211989 32154609 1053375343 8519913 639246104 1033398248 217216311 735659667 140147259 1740847 77673102 328859532 587329217 55977751 838390377 713670944 243891401 209800358 419555998 623549780 880672075 931380109 902769283 516566612 721430654 608549093 452845396 721958150 631863820 898152728 870064515 1025094473 334341986 40283893 1041641400 419468429 200843417 720477571 679079780 89103613 253319286 19190315 814807717 77930423 195332637 787894047 312576017 748361015 700079238 804271772 658426563 963058332 777312909 8068717 395886699 918699808 1010833394 986836820 475221603 334457843 994222714 377513258 823981441 87068140 749504986 523260877 501548041 408473837 391103221 225966689 277032358 8673971 590429951 716179956 777860845 325984070 893180628 630133681 465606891 975950058 916431915 594008560 747499703 909613582 444837879 560782408 94341595 184059284 151950736 496879908 736352044 175957413 145625932 458363039 69488324 970320717 236707415 626472121 592530678 1002514631 737538155 199166488 495997750 689387765 483240025 30481208 367536827 667769853 937742366 566954950 229901374 497494440 567862321 917908120 266695384 490348071 654862212 672160832 1006299985 676964468 121104267 73732165 195970171 850360570 340376828 596244936 299265701 733992466 564033968 537282846 746906588 630620447 58059519 721476288 164510633 875665362 173855009 472395617 65563521 69839693 628368130 769743948 488852842 467995776 94426050 55215463 450202178 345460166 723259061 688684841 327844231 644693738 177323185 222694410 484521465 400723268 420513288 868611794 582571779 991750873 262896021 396327051 513312233 814900755 493538692 375639050 540477224 445217016 902115315 221214190 731457702 621801091 583657440 515885449 133727007 460744324 779168636 972051177 544745390 210351109 404673969 205309016 760127174 707514839 85297854 328800887 322732463 621434144 1054173840 1037609886 189377689 326608291 803554364 978248001 746990181 784721 957825474 705218935 464358417 875952296 1024775843 521266762 189555829 633050447 24833636 287770312 302010089 14788011 242775542 366944683 420175158 433921029 21898947 608269516 28522767 1061457829 420625930 57759973 874906358 1008678664 835115384 1031714573 477836806 939268121 619931763 1008040873 562786136 227497159 608651556 582660729 525093475 620767632 841603511 189171741 119466389 942382005 999845629 506067466 969792306 37055541 568524220 850234678 720435155 890732557 307092563 271207911 1062723265 116444103 248407237 482367678 70000620 637210579 259318831 683554631 712407774 741390606 668516479 31110633 467929085 881467645 536592711 250896911 195955620 912914589 848175222 90956558 720997143 480693936 592747732 15636006 521454566 1058027432 935246034 43588741 676054099 829516421 301492371 1057888702 331433007 341184669 942581140 749140377 78712797 278445366 278694290 123687154 147988466 227962168 537652184 104810196 156281434 135219431 295407105 402002440 118648020 587374909 944738815 445918831 788412172 341286683 990764809 902988984 308584739 63567842 394084008 973867350 384577095 148945446 1013440510 635085765 98531065 64197964 705607838 381482908 385565800 165580375 896602248 48531174 817510120 99511935 500296968 48728633 119908234 538858486 370642900 119045701 1041782423 425391617 475175704 528096357 235980699 353850797 464585774 404517081 965891272 17401727 202407700 565562621 57766297 287906791 613546466 409640453 798179633 372275431 286847500 247824753 710471271 515361663 191379119 720397101 980438780 97887216 712705840 953562649 329680573 83254192 474685392 488384310 405945612 425584285 33431128 909278777 406129224 627160530 1016651341 693850974 316861897 635345764 363472655 771549555 392736206 343951988 972785344 565517165 866673401 869377670 248045266 872334140 735235008 470682180 682019172 958607066 772603938 174747048 13655097 832422718 870111929 127228919 30421310 889402285 737919220 569432365 221469031 58326222 914470437 341515759 654746636 932180971 140591326 110672973 621891046 454670960 689555839 693493493 823217218 383310631 326599885 746519259 1010311798 407700371 840805902 891318415 1038488932 353395846 630375527 620217724 513313475 28203801 197074430 114926683 95894696 818525708 87692086 184685092 435237434 311617906 896175085 59517947 779495 613157937 205440206 746095460 972839579 264407375 977714667 190322123 671978147 666538898 668176799 93219076 120218157 971334275 454499376 863841822 956675637 979108593 843411322 968953940 725085583 49543311 730770638 791639845 21461121 674476739 103409747 724651444 218690970 816736528 20838351 1051497517 11758461 723936138 702455001 972570982 821970310 413922520 186843229 790333139 762691087 330857293 849385435 267713576 727727367 996542320 532489842 36689710 928442264 111724261 167547637 627575660 429967924 739672167 889540205 267078711 182107570 768273392 428139896 288772170 809959189 188278994 380873996 851835650 781379839 580814735 571187434 843743740 201029186 518876766 301620132 9984262 688129502 418797587 1062792943 884830457 411072353 839342627 54339171 932007846 144800547 886746443 324734269 146627234 863817164 999571198 742411709 744883696 210272191 115621106 470975054 1049532952 635993654 736226731 658880655 924710255 970577552 275583159 619569009 67182682 485857154 849163224 262640731 671514341 107936071 688249439 628349995 400783504 565169969 1047313020 41207901 984237661 372177702 566736694 749769010 152077727 128831430 216383980 490765800 669095189 347322037 248467031 664873072 624996427 1071975069 1072201508 774843313 484688444 917250375 65113937 273529541 664316091 19467497 563026390 386090560 610343255 702893466 39847717 1037862536 618527660 446391416 765029423 1010231553 331740179 599590866 936148476 221208834 76646842 112195117 225146565 560057784 958243432 345509977 987477100 2377316 267267252 45366504 273977213 969331587 967005517 465558891 808512849 1041079903 61591868 480973185 153300297 31368787 53315239 198743389 833943461 423037862 289120117 988989758 624667734 563088277 354299595 794853500 579375045 124333730 600633695 179833485 265799821 533370766 407763759 300981413 1004979807 732317565 914481265 904947552 461103758 936510064 594295925 1007322677 214404500 235579317 568008756 417701574 148409854 265940025 621396367 596151075 291357513 407228577 1007469873 50322554 283415802 189176976 756292973 172980656 880146621 749856344 31489936 1052163582 297478146 268797263 301896002 575427479 525080346 385721777 119710322 941521395 693982200 243165419 1012262530 747853725 187855523 263830913 457440649 896088348 520184381 747311438 78763403 474317121 451912734 879962756 892092769 521170089 510993654 229545521 551602135 248661279 909088626 606363808 17170801 573833851 446200457 145082127 818367 287398480 173437004 1010113497 355033595 848208382 2035717 536576112 659270479 170284535 754541583 556474622 681180271 339611164 394490804 988347567 384585 468912016 292131596 173616858 899160607 663952521 161356169 43138511 1030449258 1003547462 164388817 621849041 877118952 645358614 704899824 236390962 595310603 994487290 412513077 732923011 516870764 844572180 813831411 388539456 872242010 1040661720 835036453 603520691 301815196 836107241 590285490 375270336 828374466 1060914303 904029371 327499945 934654629 303776782 819191775 302668643 404703461 905795367 997719992 574752197 925916052 205682087 442370782 422185011 1004888569 667517931 819491596 20467622 586683904 355490539 87217724 389448540 189417275 194060050 57938123 538492146 308132298 44921800 261944995 514227406 294526111 321475477 683502098 903536319 82777388 913335973 151076042 833323027 817755224 86273878 170649435 343272404 71572681 400145691 910488022 415727099 660481185 529797367 405565265 793104612 550937062 1046177517 618359198 991622291 837398378 342376597 166612711 662876667 967327961 702471434 479450871 1052794502 657063734 973930463 360906754 359478313 323705440 466062908 1000962903 795120274 481358601 808258881 672366666 533816360 56654551 993467864 40897631 738683950 496966666 452278411 292802070 790128757 22805446 580122998 1068887666 966189673 37370459 675099729 907992352 354315423 417947214 177796416 535194309 280068209 401700340 868785993 793054154 66439233 889852536 364050481 412397981 630985772 609010398 472836867 686754780 398899444 178904392 948697465 222618065 752686800 652239777 807956156 253930023 693543523 127966758 243673467 1017813537 901171849 369408571 312434092 179805077 886778475 317482587 699386074 934832422 932513653 321815612 565841837 904380510 53621003 651221753 29025348 159859114 748007898 435004611 420374624 190064212 743089510 144764811 283216724 143210467 707679381 167136334 948349097 595366249 345890325 69143002 128824821 272863087 996610055 448097234 595744251 580846466 443627050 125341361 924292471 64536379 401359439 647882159 439312271 758037410 337221376 842544278 231092364 552838416 996106353 505048763 131095459 1030311187 813417703 764257620 508077688 708271220 420978459 541945811 1045866436 635815474 733443749 54016267 518357048 921127493 66898356 358506226 132771850 1072849603 1019956673 291454196 807802581 49051416 848414367 153739352 201741981 494915570 1025888943 485446273 855610812 668437186 474242639 134222058 751849260 230845142 630645935 766223923 260931835 841164515 895000224 812243122 157184782 839172243 719029245 699939131 904709410 292997772 918317826 297712948 172328477 611853559 477369160 393193966 498146858 966062969 222079748 165484993 858779955 652327509 916052296 763885733 1044622846 325610957 829686113 847338825 910324276 672070564 295025435 578642143 66773665 92278949 312273675 689070306 759165227 743671845 799998014 701010956 1050421741 805540018 255203944 338880675 894870173 303217157 1007377129 318794147 966658407 581722213 317937607 35581861 364200211 560197279 546110122 719875780 171991909 378865982 264386240 443916819 6120811 181097281 283537703 44476132 146675192 13320883 686837820 194605428 136907439 295535860 157651812 234854287 519297351 412201131 446760442 854581046 718470773 989903141 298327259 109126009 218136112 936988138 881301465 257895261 755080837 1028471104 54673334 450468015 634912271 909497615 892240325 500987774 651561276 596748764 9367699 228087071 790605712 687164973 842044659 908638124 955820533 770399535 42695229 770653681 747062155 471829234 361009490 386976554 409194326 311966521 1059425132 65920053 283154532 550971909 1019421616 489278044 401816319 868477635 461336501 121180486 183724412 535642460 605064578 155606030 648103419 827351005 176984947 40510082 179407220 796298247 578021074 535903431 309607475 1068464411 96858953 782926223 274854136 929235110 498541761 720628076 75134532 536041199 375144797 903858879 778969850 717899995 510445628 442732803 380181271 225160038 302992570 424994026 634473948 1018280009 546628313 333085782 399254265 65310499 21037892 813631648 233915044 449635581 360291909 861059139 410136862 994361622 108258597 599616216 700831043 61864197 899753767 760145001 447886628 299410879 261022343 156291875 774821167 636359547 70979509 790933659 349686457 415432280 265653390 969169573 500778385 497436991 369882977 705061843 38168601 354987496 424033003 450696412 578769462 530811838 342520575 887920908 1072695392 465329199 497630771 547960313 34410971 1000891108 8077737 1010398794 680443875 1073538371 769804937 395453839 551695226 237283692 370220401 587164493 1070740658 812555957 723589397 763888426 308536268 505145517 830582670 505124532 1061029278 1021565489 562600997 92521063 693840703 4041276 809470484 537387095 1060583371 652857589 250447573 863961115 89638628 997459588 117948157 763918093 551501143 834904274 990126615 295522815 145691640 320250828 794835691 996537681 261731418 597150464 781388511 255168725 703163290 137215402 50794663 874862435 706188100 338381421 779113899 21936598 193347276 69429956 207269905 342188469 752626478 985401342 159537131 538585423 378922864 81656548 689732728 517562642 286858961 253529204 754765965 1011560267 756659498 559001439 864551316 867869523 935145068 278745672 787884104 541587039 202428165 715292554 69337476 632816729 252960195 822221788 897930244 516039641 855113692 1045124556 271451922 427595789 871342526 272924646 432767855 264443382 99507572 586632200 252378262 246288770 351938882 463663460 798972622 1036040160 365019449 76695171 635645293 48861844 759377423 835171683 861174709 44181315 556608770 567889072 179996112 538444789 133945198 885692151 867168499 59480900 160265887 143250997 74440804 136102562 151642047 498661449 849584853 752215726 418334831 938024279 26755722 349422893 762611994 1002140007 480406578 763645798 536918697 10857065 596257936 924136747 759467559 596836211 641590790 606836931 813043097 889308288 1035773564 425758116 666184765 864713025 107774330 531185144 538164771 149125276 622430285 775413613 966094031 248576022 748611963 958278989 961887040 771007976 543637163 959571659 895357717 932619695 860428008 844764869 92022043 428235882 609154997 854459622 974020228 438787700 657811550 113581794 485895984 964757182 157089526 197915365 620507376 468942888 783964778 408150231 649896047 719109625 570197174 148363387 218871703 556393221 945920513 921889608 823549253 123296984 884846050 963138291 976626880 522702302 973558679 253086968 976833391 429403833 60183688 393202618 85905597 552707793 25525214 711233589 491235088 723135002 86327103 213911051 52195929 28026765 809724049 940776034 352325628 21169091 537636819 588779205 1066985233 887671547 85645525 470308776 245981935 810893214 669909833 813114985 442682180 432608271 39205279 597669470 491106745 229350343 418257344 739493496 771614069 57954478 952047856 860215572 1032413764 409563053 616002017 446853639 852564966 264038235 785259359 680238272 50640506 349730178 633983259 297643163 372527296 849621302 618999300 443297811 607241526 74705244 377530399 910832252 68792279 748973139 740266726 1004618188 631016070 942474536 341223028 977300872 668503154 141104115 670104301 144727881 790597428 997304269 619694011 482343434 57303895 901252965 47991942 815212810 297861038 226397601 678025153 414143912 334036375 308004442 573289021 611271494 78509556 510112149 459347139 654539184 1042653789 956260078 131296357 807708438 569432542 799713455 218856957 730158020 110809512 924251418 598335167 872232647 920197412 620910467 665240303 1064449680 443920334 582034172 286503033 929577246 89250308 763965979 618831717 967408310 902327331 297397289 215015865 806191256 711503009 811064797 154359710 132306065 176789428 1021645549 554724764 374672404 316536585 132810560 283097785 173177478 1021333304 781093871 1065896219 1035820079 366430688 276070847 142799894 617691082 16418372 7290601 983257415 438370370 303740727 852757639 986086750 183589027 80835296 588010861 748850185 153266048 557681885 926766335 421808588 215830352 400379754 994739748 393474916 179035227 746734443 213305384 130440157 1035953330 726866957 497699473 416146883 395092216 374139099 920515169 1044744901 90400817 955678301 906310089 812978950 656740642 388628877 627366400 606614094 188946805 373454128 249744016 917621616 990271415 40885229 491859465 662982933 478754622 198629172 243626573 624101074 663377253 470012518 929285213 609469941 961077004 16803742 887925451 106475835 903370465 838374719 959271213 630458326 449265430 948863552 658928939 172481493 261051664 706052064 700024229 286941950 672887626 915281403 468879540 339637164 677758847 520754436 884301817 980974367 275413286 133916979 411748922 149168926 838178030 678596478 1040617084 927935146 170908916 812140268 661536289 963513584 927526468 607655147 169380159 734106241 121085352 210997806 554590575 1025991770 703860786 40446881 674324728 942805665 91349772 899805487 407743991 641962499 602888025 1032304971 1026416454 322261921 928766561 86313825 762491939 10910511 891578074 931939900 972669874 621085595 905828277 126443973 160282688 250471322 531327205 83519046 675109218 898242642 952674032 303886864 574392550 232788278 994875937 632408735 928685973 352688480 859899764 495345126 291860260 78213555 479672258 1021901496 531874619 585885509 829001916 69986433 906977489 566575755 718502638 66384885 613597351 1030978945 955430333 399868655 596190285 584564181 988696400 174978615 837214929 735545408 771707134 555867785 287734159 981780682 1013859902 419537781 297081632 513098141 993357457 605212835 323706810 620057554 1072012089 348315375 896274377 722023115 744573073 66753804 143682647 270562390 907357962 636488407 739346568 143752488 503818948 426585606 411503233 656129268 667123611 32924440 623127575 1030569062 251272681 482574716 744309523 511852233 531822513 1073466852 1010445683 954063224 323452162 750776429 1021889200 88476347 1044073279 454067376 337531291 638355493 505130646 110806696 216201056 76106615 862046722 190789548 525469195 63614972 481616868 859811085 774651771 81332244 490122541 136582090 242330337 702398909 46472395 330209490 826883923 59658201 653145699 920991101 43053558 508819841 416675258 293787484 960127631 343468302 644338233 532852190 614034505 927964235 73851260 811102649 346078069 156008041 810681623 1057058049 327681237 300666256 280483815 360746420 699928860 1050677310 837321816 426334500 139505555 76373413 458977370 489557835 95675834 9675220 851142654 305184212 330455770 747491921 365140147 857846197 985146407 386391116 7798974 101027824 200742994 114260076 289728867 547714357 720456229 473656407 54806358 434611358 650503325 808493698 714712652 300511423 105580447 93461139 1053882086 182685807 343431176 18873922 411162017 134304330 233666912 939230030 416740005 269486478 53999057 337671730 804516410 1065795391 445200036 721197205 178489640 145507524 506119868 242349825 317995601 294847254 114913108 315511132 436380825 910503330 101262792 645696869 172224419 843395755 210957818 205865532 793418734 686004956 342862444 979075143 112485306 81485006 772313240 588827965 434222745 853281085 970013102 602695008 855800629 819025506 985936259 5090767 1007113094 1073460106 1054805287 226924180 309208577 374756905 537048359 779238635 48453590 979329660 404035746 987223136 645798972 907175378 352479007 375351531 846874803 312448781 307750297 818303356 1034100795 834281928 678103937 839163757 362037910 945644281 920449328 586157248 882139701 208278620 942626464 201944209 204109789 718513674 965378271 279413335 389358446 560023665 334763712 579523616 284607574 190357721 86472973 533310593 1062831710 875766836 206833988 878922216 768875594 540003230 387624798 1039371715 111542617 425596969 156262965 908267105 756060291 585406460 715922346 314634976 706385726 307838480 1005314882 961764063 309190810 268638553 194219140 408075807 336179637 812161594 657508809 517800141 55100716 72498542 1017436344 582353712 657084077 905457681 54954721 475075308 765270272 764359079 557838937 449764996 200143357 460807687 478245602 142180106 203494992 411237974 555169573 898139946 159607475 1063162657 591927131 758442042 1042415706 45730982 827712036 274032440 950403047 764355934 688036838 897955176 56942004 713083530 866241640 419443402 927402959 1057944573 460214267 445811882 309170145 588010331 380246993 386994839 640580139 895817587 503460405 499990306 850159298 998955702 230246245 163287962 532108874 643564491 628553395 148135681 668432605 591923742 952576339 79521764 156635790 426952763 128081120 69714509 221786673 678657222 154509057 7309917 661251121 963715228 621719943 1067239205 1016702786 640043534 429101764 820057468 715887506 689402619 740031531 745037176 434959595 999382095 475125650 411283266 829701818 679039022 218933422 579359511 198820489 564800957 499571943 520011411 345388347 963961635 783712338 1046842586 14354966 120975759 414293903 642288980 802062383 452373859 1040088106 894536699 299199504 264068679 602511956 274399244 558896687 741670183 577560619 306918237 287369268 124127654 1035447554 396364006 791121412 41319578 1015799125 187056269 417397799 36618534 769639241 956694948 437411810 180600060 255463799 248081935 1015046189 707023121 1002759546 188311981 618551538 339182986 328981730 321878156 1069556917 536141937 317084699 528225076 165965047 596309834 756018240 569949585 550385929 609279967 13714479 145551380 1000783315 893116432 577296617 594541740 1030933299 319988526 784282721 884729467 18922472 864143669 493156596 361956171 596490624 825596999 107122242 997603362 104841184 321426793 1000457254 500066478 199870339 11128577 60741540 344854596 727033847 727310976 376676969 362590443 714848947 936608925 712184845 848930455 72545199 633263831 866567085 660439209 455436948 706697343 1022331931 958037287 896849016 80252551 239931571 295577990 738145118 771019692 809220528 587031962 353844960 233253676 57271533 662634586 908311021 598478124 609814109 932782621 38538381 983483063 769022068 466274962 911699236 867851440 310552140 702652806 573000366 184139259 39324634 57760166 868491279 841984962 16801714 1020322682 181717697 1011318602 346046433 291482005 260114504 487902041 725479170 953572550 856088883 518913517 815500363 77659081 314636166 304206658 1010239749 508368869 499229432 15838017 425877057 915590554 124137286 480892426 692310386 13929089 151935579 320490283 382263810 20806769 299958600 4814192 946289380 868345318 501421570 622422803 914938368 1058594159 517700328 71313258 922471495 729771586 556134435 744181840 592098644 42680087 658539893 160137404 527190493 711335661 6591603 639517048 818617262 858525800 476584913 409037645 92964611 560799133 1060538884 379220791 262570283 618573851 171041090 330026423 874999382 414427783 291836148 866124775 559574653 997758078 272181659 582991168 550208376 223308024 254832442 439111395 13077524 331604954 71713472 979400532 228148310 723019342 94720186 74773937 804503097 56695257 893529951 570561889 385409858 361809803 25761776 896817158 539650653 695190599 879624345 106681493 503628892 957916201 130148018 1002496736 1041248787 192670855 747945382 210654708 987116962 335189652 584603575 613622071 774534039 762423121 711200048 638439824 5553724 37141281 889234110 936831734 118600045 360652767 518327052 275059071 135081649 1050370557 19003764 615662416 453461741 740036447 611986903 456872733 743357085 267173253 420313573 611310417 1029074885 743050301 325160733 578846234 112583280 314402640 491079064 29391975 822109293 136802205 270271267 206870856 254629651 491516756 785078971 508168411 575678210 154548124 1010693729 699449822 81582806 1046061868 644442046 126128349 900152806 463062905 793502344 1013916188 346944854 649747747 523408182 911270107 80040753 649931407 425743431 1060875397 107012057 536470753 71677096 634368285 418427782 339435809 978964712 481476089 288835766 491760030 1059886649 239482779 1030801494 353827424 647683863 737743503 771391286 510734443 765443074 24680591 641103141 567437048 471218303 894188250 989516094 98416449 318436146 755246451 855428216 286587454 853940579 338701568 84350055 275851350 804668399 523227824 507704672 401026310 730134174 885272858 562184198 768632745 996349658 1015442502 65645081 832208133 564330661 750258064 397666425 981515111 932943209 236105472 388030437 374244020 331211563 313817469 399300110 196654621 190098896 857735047 948521937 735624732 166395747 1048728016 248091674 328480234 926820173 639598360 123087134 848266401 941152037 903977344 651215099 215142752 863851488 178160881 873257018 304934354 645909458 393025673 805224518 927684744 264799160 546523823 445976298 110239165 148275205 188614542 896327174 871550184 491681297 620876518 936367455 932561013 453565289 611289552 292564572 884937618 623224573 333246312 101305017 8401019 854936707 534579508 314584552 95617570 850774719 214082314 398626570 299072173 960082912 1006309766 573324557 1034101396 499810597 404436307 807025673 136636249 37461830 903457839 140343355 54772398 187527603 146468718 41348958 814191510 576583215 582654779 65678791 38417846 848426532 403706989 210740141 107273725 48607430 923277582 966893886 872006473 954294365 177512374 898753801 197708925 400939134 189581905 723734420 71406038 365163726 892336826 385557655 170960754 399209609 944348124 945869612 253626188 418276324 228590376 48928328 233214329 922282331 699677207 735548417 784751528 1026777488 428168077 612673479 888094811 423497732 677677582 247352650 828216483 469331971 850570566 463106945 59466441 8194857 1012330943 539175554 429017152 119750037 957467817 216253693 956407306 924905747 962742432 175799072 48590729 781237446 729513437 825531815 961513052 494241026 1005757501 958327060 843106719 154592836 386921817 985983925 898441377 345808975 655037619 236663341 709123764 960263798 26909424 902392439 533490863 543975511 782010675 446970529 627392195 1011655551 1570766 360833776 101491560 437732961 904074233 932956758 758188860 310267093 129000579 817300276 499053172 960591341 439804175 261503679 913760828 444286164 1063592308 224525616 859371125 514562666 117695354 886669838 577259983 612266234 387473487 668618740 265425547 11482140 175349612 564016620 696395298 517364243 430291737 10509889 663545541 698652394 677770232 231228565 738936043 838175113 958692104 236714824 1002333679 109296635 494127163 19144998 270404758 644248270 65130570 744129431 927998813 917817728 256430666 516709770 200873318 146119482 466483732 793576488 802018165 757860905 190531701 961832819 945228519 754680781 37565688 248089904 501233928 994312617 979302533 117627150 266053760 897551096 442010305 152075999 593999338 813662325 98718140 1053660129 211542766 570278913 771132784 760669314 522609341 21959128 701682764 322572459 944929864 853618179 204741540 133606203 1001526796 75082245 979832374 696172341 452550774 736947627 324436494 139515485 885177610 864397049 764755000 1066693436 323793197 456437971 391573102 743209014 382894510 44322120 156646282 734396066 775233029 895460500 387996700 338885419 608560280 953328160 769335478 402497392 460804604 177235448 595676789 586486306 290506566 433306429 481429831 339072501 389636766 629680567 127719563 937435139 541498998 640443208 815234653 111110346 1066223974 693546859 317256604 680424872 790370705 426984721 609150135 372728575 857644731 273211604 651432147 512658069 449334893 749615812 612286444 87688120 504790827 743463886 425748002 1056951492 75273100 709112926 91139009 337030763 321410493 718517863 563062829 861500275 837693751 563081782 777388765 125241716 816234789 618501199 825890761 1017182038 896437067 689786432 723881252 354475125 918078388 1058330144 546286270 443876525 988240146 145659426 679782400 490248070 466404712 91671426 603976364 718131744 1034554388 892048375 269461657 808952329 867497694 346878720 406300594 294346650 498044922 278402684 84442470 876231621 540813925 785537301 737310152 697447586 145104945 988735340 732573002 288595243 667535810 577812211 882502053 392226346 745344636 868171387 1068391965 175455197 948801177 805477355 673659410 428809462 437365261 1062380890 1005042691 38168957 324126072 539249655 221349903 547222063 1051338884 102848674 927875812 187899112 183649111 1015708603 279325305 5081889 998357650 616455007 195181285 875148014 851239427 985930387 239620364 620210499 1061702871 812635680 611927215 488533385 1036850891 658375992 250787538 637241082 875592509 1025967102 554310324 221638427 1005430119 660408702 798969944 11700574 604348444 576993662 614116105 841449092 372001228 826210112 466540090 455007059 1022930871 371103814 669084101 977118661 951280409 537185954 303507280 67221646 133103942 709062787 882750954 834285102 843798034 485248907 875738308 277592222 265370460 677021358 776911604 597479485 102297281 412126566 790379810 639672962 678594029 599695269 326640719 308159949 767271281 1061126048 918891747 881059927 69065381 562207391 917236321 829937615 1021535908 502376592 520732547 400838341 697083130 767573651 748194350 527959037 126952491 310842958 498474767 328252376 1051915917 4888844 306580608 994142597 464946861 703151313 535180785 156098668 572068430 560570727 582420014 910197246 551724011 883799650 237437344 973703902 247173797 207205901 308440753 623066965 94522192 908049863 283057183 889621909 597252742 892335694 535083522 586703728 745484764 505586466 430755679 309490417 332858858 978697755 529647024 75700503 365472409 443928751 666739321 124582877 441914006 279737646 235884158 134854593 537504318 16071878 283639648 420982978 594374383 584541232 128651626 765163613 640109576 544058099 258983823 364213871 788244300 810279885 207017412 725385069 769323304 455721740 487406029 472692562 568637779 360918277 205462456 147852138 869381229 281269729 69476419 920842021 1026935902 275891038 87572453 182764790 1024320144 352595103 484925497 791117917 888305619 348847996 504610616 175529200 43878352 467324597 902820395 1028878033 562770698 758218258 83316993 101239389 684706407 586185224 99175872 427873371 784803633 285933044 638412352 445566576 343738126 407725486 882772636 639629185 612337467 10671359 815706082 914650180 701742501 676762454 17902184 586377558 877792767 844407801 961998277 433810117 522525118 842414869 991518359 1053329030 33372093 80136516 694748744 106276763 874396215 51984203 787221448 741548795 649429675 875700737 999399378 472197045 478119336 544078702 647333137 337840011 849517435 985015529 817118788 461288877 471126574 1001084012 899882621 1073557221 663267965 641150594 550159864 84755408 862004445 705981946 309452908 221669170 522416424 245003200 181135632 73679877 61754386 626666823 1053856723 182494775 164940588 971573260 45469437 212018926 511796020 291007119 527653117 514561397 489366290 773033079 572408640 671702837 280404039 778469309 632204008 662857579 1127439 325039093 479820062 912977116 918109960 224001292 114526411 711469011 137690308 445546374 567674629 914398565 405296312 457648045 387003776 600065515 497524254 1043801152 835246252 791709192 1055906265 579537738 986120404 428124011 223795818 25271494 919249940 164192870 44502440 1019905228 706874829 309279434 179526262 404079545 779683944 127884171 997326650 548119307 161581709 502854920 390789082 632865457 996968099 695412632 64361130 944250088 560704472 563794544 663577152 808281505 930538255 565254029 170845909 848355313 303844855 599390124 740249473 928308185 770876408 1000224388 857656200 656344477 134161095 396558892 113895450 685861968 80294112 556548099 465482105 600261952 565778917 889124794 132931446 1072509782 380113814 1047783595 34709038 824484274 682079902 14616226 762021090 201666922 171191946 60845979 685087477 608014335 910501527 301276470 282064422 266162248 608958548 280050711 46472634 790629600 396766875 881382475 554841108 114031340 922311950 478005001 598233155 35267072 592396634 699426986 931235589 218135112 609831403 364670823 463938199 430418809 284024366 209552196 609298431 773763113 3730140 663118926 347346204 546631391 614036474 205307957 218785637 518913049 889142551 933976281 678412037 728826238 806203550 336969482 848886556 223911996 343511694 270166804 451822737 156724750 856173911 597621223 530478806 109921417 990377454 334257865 367768403 1055536753 342913613 888863159 793971710 863719143 967975816 396271335 1054226532 237514879 431969994 669404583 678213478 23689372 586697334 784920700 496809474 1041159410 292150974 283239478 731270349 669191278 300298534 180946008 72709352 225585732 744648605 343349403 16792025 989597484 70349483 668450497 641801791 130325089 356694347 1041861910 310627634 448671807 525570214 613365599 346765214 676165484 572381513 506375514 623586827 915795933 876351922 626561865 33445506 108502231 9759466 205994841 24463994 744980559 9575597 236897027 658852773 533007712 791608139 987912423 468383769 761401473 809637672 505334958 634289046 606143635 503828418 858381018 130677206 798315394 421558510 492100026 235602345 512668919 917736161 780224702 82552134 527872496 984469286 627998319 832951431 59641136 461007560 492194349 922982219 471230337 802104813 543497590 1028085707 623058751 728947662 18846126 339189835 339033566 1018708603 191214047 454581934 888032420 829779050 721742124 440183825 175206759 143319377 357491090 612717375 679221865 221105550 554997697 727667205 581960457 531518852 368293795 185613036 196884529 165947458 579607913 735643100 1072815580 932038126 269911573 1073312298 1009747497 556601994 207265217 431177852 23026428 628102364 144284188 593796793 764972239 874326036 266308995 962621028 442380213 1063259941 285061522 1070725215 987231700 186605229 253465751 469802994 236439036 76322632 634747556 353179728 20149127 288028294 498577481 230083328 449119126 102482117 993224653 78701917 481687032 2411393 223656261 547002511 909508592 716751709 747384840 1062739621 204659123 961839725 985816834 772714601 774591209 97767757 587556436 758385844 952908810 227567903 74379342 348949383 392279950 410693699 261054059 1063523083 855321043 820223018 1027502521 170784991 27919895 438864321 485392930 1018119424 922107888 588318316 210754466 259081013 853441052 629170113 772735587 823419183 627569454 719908593 50939586 856325403 292308414 719265599 835569328 522243395 1070227217 588286098 530170900 440728609 262191517 861686653 385132535 301437704 676403475 13559896 588980716 308402525 916387399 337012142 82763829 860164420 764512565 1029300738 1057957916 376977954 1025688582 546895620 598410094 525614803 454719185 672523468 312441991 41518205 680386422 460081634 620559731 560250115 388264720 836871429 252977540 376902965 458079470 406919531 643186180 93904857 435291427 892816643 535016599 1000860657 894877352 368440074 956231595 975191112 474457475 595351180 926739452 362243582 825034699 956129743 559367855 30195495 904938751 721149520 573634677 922321086 792772071 1023265322 789526955 564226187 155439528 565242359 775291765 144969231 1016702108 992552219 731777238 234602862 448700804 1030245419 566544632 475344705 801564925 342576943 49353018 564964318 83372759 530716921 168088445 420292629 1044209237 210852838 393024533 819792347 530277653 895458519 253616513 570060472 229434045 996454688 918600504 879619288 164163764 65631371 733188603 817559035 358336655 32573747 716072800 541921643 622666169 937582336 961339981 106711019 226153026 895144854 147799530 144716729 74890263 581182361 937249321 14976416 762944877 175454993 217591777 1047055871 245826984 52665250 584331114 793322450 521312391 529444976 748751530 948223434 649948392 442321502 938906529 349184432 872953352 1063466683 53681165 938519422 410175675 523018288 880605928 666886246 411916338 566285553 12091379 87407684 1058630210 889944897 1013009919 16052445 97654649 190049248 271704384 847539061 557528594 99451746 618111311 708604468 1017995066 300353698 75529982 937193345 1016399280 444304018 506054426 875307959 374531798 301227167 769754343 621920700 499221836 182223464 890850000 362918881 573324156 362457597 899962680 475053755 56770172 61855732 1012584078 158303023 186509576 238222473 672515399 99414217 634780470 708475263 85394291 912116829 1025355107 1041587987 193614497 579965140 222252936 121793429 155385727 350196401 127087075 33339127 896240518 527299749 288878399 552071916 905738895 973689348 942272937 925548151 638826136 623414507 224179443 46073559 204148483 423627574 411465033 1028307569 1058520518 218456379 638273829 913485449 768655721 421381620 549132685 249610145 366028502 716822151 597693562 900954951 101761262 25321961 411564348 116092717 145529425 514057563 996154651 149580235 452798507 447888399 336516529 727364754 254138919 219929724 949115031 1060743121 874809093 807597881 375709419 1008002419 738726987 379906708 491437226 342388065 532521078 585749800 758213666 234679044 112438639 430426769 966962953 646147537 155478297 758799492 751903482 18283240 882479296 273489204 401731734 48178689 482665298 83550520 393137151 797492748 398219165 11555581 223386307 140178845 779074903 824621426 63002466 529986399 69740964 916143396 337972778 822656909 511677948 691607628 788667200 544119105 651256213 293657466 429565390 244353130 275133628 161632528 380668637 164828078 689528443 542693696 695902365 975973399 631549904 613225964 98091530 131752911 636071773 472777393 691331944 1070288081 1011839547 967186337 849626747 1010396120 990832245 217417752 22381125 844127778 210154672 24022870 145393473 592303251 524451239 620628091 23014028 153658763 620881621 103236032 871705248 299176112 342351809 334847577 790341178 995527477 998152020 607808087 801261315 118141532 691022143 516385383 89712430 474786313 171612268 278572136 500403284 192019505 200002246 500429880 446310534 531378630 610123988 919675521 508104721 108129541 1067058287 733574949 292785176 974278214 319860347 356335724 225523433 187476572 599023916 300433405 607540775 80698328 440931470 917667966 332923164 406329888 336904638 825820471 646853875 599826904 81425703 262801601 347236334 252210714 136561487 431842452 487876584 30137338 77896071 805612928 701180947 491668018 383118952 951832156 318959263 325068295 1007717378 211367735 212569466 211585521 944593122 1006190356 59934014 449374770 584611881 477846469 424385190 791332025 659555911 401944069 276463529 245449494 772063565 29865574 746606091 992009435 442849858 1022353717 316236477 517024755 999555770 359188958 469878395 379668853 545628092 982235545 448397040 721234508 181202491 633477200 673207962 252682903 1049135472 151749026 799780808 531411203 432570137 731023098 649723017 578178991 238850177 904672834 783178020 823163669 639269003 768928976 789692152 895936423 171773499 795593034 821309486 660359411 396704725 645517042 1065294919 100192790 994563518 35523480 401160067 332029377 799509868 926654599 577504819 860787475 308880772 1041576288 638943805 237052920 927993806 1002602265 664584413 253415470 585508416 414007158 863322478 165565089 690054080 695876545 1058872228 421329766 796921055 558693110 1019526658 467036922 885360239 1018106122 957407049 764790190 802613885 224710733 275016032 349396392 282301119 591624749 266920983 875807136 664583711 1069803187 79122401 464387093 787419868 553776443 224301970 863152634 151147633 435286400 972084084 313227367 229938354 110886998 74274070 833155422 868828814 367394048 115658264 856497361 979908909 831701879 672226486 695450810 473907714 123356973 925366314 897911446 949479374 356096957 41422280 1066308279 621252943 1058465563 492770996 285014708 652146636 864471439 567248662 657165651 43925079 255841704 461069045 431461354 799032169 873782720 949469041 491484277 69071801 549860846 334382642 146607902 172198928 444722608 183891789 483297512 131804417 1524207 215714374 14344266 546624267 666651697 397498815 190239295 13397544 452090919 586563555 456363550 156659679 283293045 184406097 921765249 17278975 1025338996 851375718 708496215 118016319 417977614 640693699 208603443 825987979 335996292 297592214 830840575 817348663 490870737 514225207 789200593 563934280 69060588 723973318 140300438 829263590 88909689 429097853 410486325 365630600 264608843 665512289 756764238 483392321 370957102 541914276 342134877 980571842 869212967 700516433 673112950 25378337 761565008 439606920 97114503 232526389 613065238 299738534 898276140 822218369 742345406 155892045 140615258 112996921 998105816 829403452 433437930 964610427 250286304 275432917 712826939 1061492565 684218747 545301139 117211452 1014124634 398324151 526740365 22695416 1072431479 819008899 787768471 742886409 1000854633 1061811231 907537630 684065784 110340441 946668531 355987739 105725599 465065794 164852957 614227829 666602324 161416521 905697613 718360753 625857137 985914407 245171566 866529017 666703095 161547995 961010394 714896309 782550057 775483165 899159694 105275013 320674970 452934510 1036182057 155597775 459123195 714978250 589907995 627584982 417093104 622246829 869831239 500804605 848232354 20985452 96121811 47280091 324319857 909331376 756267207 767697777 578380984 561643550 333104669 119962418 157763827 604478352 532702697 78353151 593556120 1009648188 221766636 681146574 376895985 907058252 129253993 646781332 37800311 983838935 577301382 602270933 1059365641 941972126 586190138 166986372 517087919 582710033 610910205 459276256 463466792 86867602 296489666 369494162 570005016 656289162 441000052 103419909 164754042 602072051 893678295 283112713 486265061 61295593 104585163 796749981 239351520 319772985 716343128 384938896 482105813 428331047 555389104 743876655 210242842 796168320 809840161 16861736 243546322 849591741 759913999 746002701 60126926 46961448 376568537 761603111 420640678 1002025467 148243933 742745682 842443897 692179347 713994727 449065266 626501782 89751754 955285566 402747186 238911575 912542530 530473841 1004571415 1051792400 811122979 938985027 210786914 359242699 995364209 654778006 307758926 553931860 895847986 438839067 22732325 852650650 366118898 808862255 839118858 446148355 855560263 818327653 733474377 466798862 167777478 831694203 94708637 607146056 993797737 71771973 904112325 127913106 547298657 270833357 230278757 46186020 477037364 463265997 858457120 270517349 222091109 804092298 644095118 861227161 737082186 898291042 246843662 908538091 447413502 578097171 950935495 389311100 532747441 779234902 1018717005 998636541 461185406 570926297 313289003 715711001 669815286 411547304 237182649 729641902 457082974 425067985 1033533040 480666256 670470536 95432572 965492310 245406965 950135998 457752447 103810049 642206329 19593599 1060870574 217842671 211133448 899855131 891458007 201684749 577371976 908528463 880546796 637970943 924570531 129842600 163962879 120356773 846023443 121403183 989239773 883070439 409581055 440052704 96639503 524628794 873101627 1731381 663508535 290325554 923635022 535744815 933707011 276161644 273105892 201535115 326066598 957349741 387296174 195173868 1054455533 738857703 837338434 851022887 124409636 65289200 579276738 289061497 610396404 1072336333 786884580 589614057 997632522 296542646 39676437 883025580 371677789 564988732 880910181 1014540000 796934347 489887334 266890564 949125910 313705109 365018526 394564936 618327732 253803539 463699982 897615445 806862578 171544888 409402458 849278863 953637913 357824494 708973259 193781926 381463127 175650228 1037616971 427258095 883530576 689794224 310402351 1006829159 819268873 86286405 1041048872 523554599 138278423 876449488 229203056 150198588 699899114 391223707 534562859 572669025 775115565 532679877 510645740 356017282 213168391 62994775 521626777 107954052 1020983865 642825726 508152781 267933432 539744076 235121221 376723928 493520523 110424821 935399785 471520191 179721396 652360461 59390125 228409572 833645356 1045597542 294712838 202870477 1065659131 550257093 220042433 403526347 12295622 45168690 891013221 465234786 1010531314 67111668 95155830 577426270 696206501 281130082 270823159 35609955 67543128 271815680 307822325 43158884 72050272 1061559069 19952766 588321083 1037453677 680893936 25053469 559107775 786423619 725580266 974871795 342749934 512665126 658238337 396758120 205843125 807635346 271075716 65674231 717443986 739484754 618336025 252827423 992068352 363327895 16613864 712092213 465072870 812489794 935909035 70819516 1024960363 187522026 638143871 870815807 646914599 1031603543 45537984 903676565 891424258 993319688 705934202 332044993 423585936 342002509 199255591 202659634 811616088 565859865 155222076 1015888924 643631936 751057161 938661392 759006213 108960690 427753247 92082058 605521230 496422317 804642961 863655203 564008257 737161395 460355586 444648858 497492294 674960275 822972624 680612370 190250203 605535341 851643143 456854986 334473958 1056527055 840321929 591037036 980020366 934784646 825261405 894763141 290304525 343335292 385955410 1001305621 255385897 543342015 926335048 218812445 870141959 343873714 483882987 785155418 17239812 731447379 56611308 754015062 713390883 494779251 517323488 779771441 633657058 542167832 334454469 521334029 915163518 583904122 724956753 691070680 1011855868 284098044 746039206 37771998 844465785 621234194 296018174 863281742 809179065 968594814 754492158 682616047 817707737 896995287 66475179 680268173 267527196 958493820 574614535 960407795 1039291391 704458341 1045580546 75807790 344752178 374747403 205447598 755315371 732733738 485849134 297820226 719054172 249093016 441387634 979084069 94868191 459255595 544947814 1018229428 1014881322 610921288 579366545 762848550 231223582 288811530 635204791 596483475 927290631 1053603928 336489295 926583247 378769735 772730071 530105941 272795358 288921492 528746925 144551387 934847079 324452080 1020773223 317155995 313049815 971512760 826113670 597913325 124665361 871096626 8835375 502680282 37278535 346174558 878197556 921899649 140825651 276303019 673688783 641251872 431066412 635374064 250230001 365651950 389846521 577755334 308233032 447422150 861784574 532980125 220787241 276577592 1042689785 808514814 264614411 918742503 774402053 592243966 108069083 554338371 313225609 415341136 286010060 193877077 736400346 389202292 104513092 699645262 873253019 980720923 605711095 385202481 603563534 901753841 785679759 178775471 578784748 400313046 887868263 976472661 142287781 636989736 236475212 681502015 923702280 938384780 365900326 59252226 360125911 494998760 158415598 1019545120 264894198 72816882 850797408 909431733 980520303 757327869 976166649 1041855850 722619291 427938559 73083340 287290609 568484988 585141737 490405886 931745164 379521006 33125236 487275923 817466158 651743616 946218412 707548046 793372343 559009241 1021974373 726124382 485041853 214420207 998007608 1029306512 863537818 1045222863 838943177 405279490 323647314 181465548 24965851 859290559 115508062 35668854 571694138 234408684 162418925 291536081 684388319 50843760 173735276 84706858 821258270 748385026 449265442 235194428 532773604 785809002 510657532 327252205 18394988 834394492 535723442 140627733 184026246 738027287 939744158 209275591 298353856 1072100202 793662686 1070677502 699883965 604567180 420241751 253804930 441445662 498653149 316617105 603394278 249549903 750750359 1053373406 319742838 194932462 1048812688 52687571 635665692 860985781 665132263 576714675 827540971 336816530 181484197 800293829 890380247 335758275 1052358877 978119293 603760512 360840957 673503402 142592946 284691620 200136087 618431759 282863713 939843055 213982043 303666162 148041140 1008464779 704744167 990073462 977339963 599233678 78980318 773733642 916308360 403782758 628004044 471833750 527491083 77924370 710703255 277248824 659350791 276528995 101129363 496530088 736669191 698271805 986780058 935275695 653257408 900605488 935067592 1068786099 267405097 743418421 160280906 136466164 550588946 480531145 521204891 73514638 595370292 679071490 910051242 280061800 471140099 803530213 547896574 889046035 538683929 578321644 52797281 337988660 708121884 120025919 401280314 975155988 749684199 741462320 340151707 196203584 560176412 48173122 388437726 593275317 426631004 303227722 568959445 980952080 392220874 61371903 879230244 13902967 327621001 328409014 1045926164 922298665 777399204 1018634003 425518761 464854950 595651960 169071764 642076314 736179663 902045870 110138919 65120989 177596040 128012277 738587231 266144906 1016732329 640301585 987088 459015528 427096126 1056916710 313523222 627423988 792472232 79641766 159576563 105773656 757138765 664149539 206529607 867561175 15179612 751566242 676419693 936398078 290072111 305256095 682893002 441361390 330660070 488727309 717277543 327487194 407121425 625158611 400811092 519919691 731564351 121050161 213424609 190754264 681764267 45152243 334625075 472745041 811215792 564255177 121415947 718814698 394460352 545038989 752962241 272128764 534993870 291772150 497617499 66007813 578041499 380978944 715275086 210534703 1007310858 198313049 194781321 151003656 978286145 441850845 461847844 492579601 947743262 449436796 896077188 1020491169 441270388 485520714 1062269403 303168590 209595643 929443939 857058849 278837938 609290920 131991524 760298012 726844105 125306275 726103455 205528290 709750890 400515558 576233895 897578591 147406544 693819842 19913461 221394445 274321280 412421493 143266595 253160525 950758649 97487905 633243829 127140039 142003316 989655051 404890704 1073623024 720758660 472784872 1011971329 662350058 430608087 1018759213 641263315 681192991 698677038 786918790 472082535 591631760 1030934695 773562798 449350994 448248266 192571581 187344803 600380509 412898879 340416964 6333263 1073553925 71111409 7786821 88705595 77236154 555188516 714967938 252602393 881621964 305715900 1040345173 1039794135 516667900 106753725 319817415 342681367 362590702 180381415 271356007 790574871 339129016 972557802 584589050 690888104 796877250 996713114 502669723 658809355 750378180 900205017 307037034 969173173 450728960 9440764 321829161 844991574 10539644 1005700584 117871236 73499618 816612592 765186411 351895299 102603174 16119222 354453386 828962599 238165132 856919504 1045524404 274983965 658317456 691366415 926949997 877599433 1038091982 471999771 653586784 569928461 545185968 188969070 343844067 306045171 89800759 994464670 340726965 1011319963 809275740 985369820 882550372 175707617 649138351 189392253 688692468 1073557429 963310023 853346233 781156427 321481412 132227368 917127440 515035734 652405548 987447869 936552783 62923604 81947888 117778518 742651457 958697038 511411425 820323543 594722242 250612265 1010957262 417920242 289963793 1060917476 812830256 961061343 624555796 812367105 319814607 363834725 632567052 65454233 521832382 523971736 6906621 709811249 527385031 142245701 96471208 1049767545 2513107 902345725 704510487 956362718 404344006 381190202 301322198 920445941 861294527 328737169 987660692 819668919 974162014 1013405785 290886319 980021052 762414665 814608158 895523775 294586350 599640691 644817329 587521205 549495741 1053361421 532021032 800806567 1040730553 559984294 498673768 230481747 481602185 568309064 231898868 3888142 67638431 779946696 816973056 254073864 717983667 106073578 450068911 821127111 882119229 432009975 513097986 739872693 206793771 991022839 571064540 496287610 545896625 10369789 908575875 854905662 741398205 176828779 714706470 438503897 488077751 931781459 249556716 456769877 538901991 105927758 560859075 961148243 659575520 456804888 373175113 464758956 884316582 834954763 319837138 525847502 261405168 423799654 579673957 970048321 17097435 339634286 981107586 692795363 1023832149 220825808 310209880 293319772 627198452 894729841 405119738 281809429 718896936 597199472 255635450 443628849 671270470 105000975 948169809 402149691 798238506 128781005 894459904 1035932419 744795062 396031183 330213883 832400808 603858613 869258605 489704119 948218155 591119881 228216491 216989498 453653033 771618984 519957890 382090913 302048551 467855101 871391357 196692752 629369644 294880274 501849335 825505043 80909961 537784036 818447801 698929520 841536345 271097325 503733554 994242987 484631993 635087682 711043690 960937611 909314350 900669436 840473579 348384420 148849567 591285530 1052253669 1011286656 961588056 3896826 840849861 553546490 460376384 577698695 378844368 330739069 748038047 32262944 654554448 29554075 1030977375 938879104 446314739 72164988 970810038 692358696 1049422617 908708619 778453224 108078023 624813425 704643239 17385141 759970927 908993545 273609052 1064120542 364575632 464225975 101326227 1019690344 130353953 290543152 900563959 1054361363 737345736 1031712228 559249578 866457643 901721841 393451354 576601619 219575055 253343835 239114884 416195493 702728747 456239632 316746072 141063589 908962962 780520294 136749539 1029495359 173847954 79271065 198728256 78448434 907848244 1014218823 989314413 34981124 386582160 939922615 734775453 860858377 337911172 296722472 227341224 904535514 758397154 166849943 435832779 169168642 152643322 866009981 813201889 102647021 336513874 516315723 226889509 403886973 700360780 816488151 892395553 511873306 910385300 704800876 16222530 501521621 523351481 1021234846 494658860 102281911 419843449 158321062 229475817 494237384 511900011 553721721 209898931 470337888 100732907 436177356 801022652 706479939 888189371 787409164 925243590 492322748 220285067 120414302 919501190 1071834434 344921833 300366744 419703668 63458464 93567866 270665976 1055016575 988878115 877089265 201230899 214826350 71520188 644337028 257118487 625756330 453951614 950883623 252346979 213182237 390157319 730654521 685720303 76576559 88445477 71892751 677572151 608614425 1022977811 480704660 990718895 841894671 226030404 482890643 694510984 800890561 118727942 392223015 399246248 505347034 459207051 516347543 523213094 980171801 798201540 1023090151 214800539 79922564 147495176 181321546 139145352 21456168 340077339 528077022 1021447159 814838850 1000021486 513243220 943554590 153953998 701752134 627635075 659143980 466633898 833936112 747697768 746122894 335259046 901496899 733515937 495756743 100007606 880058117 557173689 875089332 435251973 588850943 176671034 476231933 904863436 576575313 497037252 223849628 161471161 692018466 322093234 762711774 646763236 643869376 218436731 724126272 826367304 412502554 1060846643 756729366 812818327 422278266 984320744 163696484 517247947 772242155 1018179504 219472315 98614163 623677805 184677564 27682150 145765539 745674476 451724401 666929574 454942115 448452462 923146013 543700141 72296717 692814913 523338291 566469975 923344164 275955098 466855456 667228365 275598629 383735627 782595405 356515221 955415408 196091361 301218570 471724331 399603652 267623449 337154756 659701533 529875856 172482181 301342171 755389934 177660184 1059080085 12418303 992237891 265891067 649664190 534142486 592928607 1048540502 933256045 194464040 265361232 13408686 1060058698 197120663 984701858 390232474 834988485 230939528 58060908 553709349 587687005 651427261 118715289 258284519 153155251 756513714 959896683 71018726 776498654 60989105 837358311 73552232 515203625 108858412 566476127 1048684896 206283366 605035089 770310915 429392648 775368292 744631676 1059389540 467813235 177153432 992716211 404310144 603307786 616539814 859427867 1042154098 433505390 458398188 63168845 791994844 636246752 1031293138 1043341425 841057933 800299960 582918850 985863082 776623313 617074627 617324496 57037481 1046360987 621328713 688806307 786382984 485421722 179281876 5202405 3254407 1056857221 601959024 667045723 429816848 673566307 1063792085 669521602 1013638460 391534844 988950910 618606730 868010863 852672605 170505265 708337966 292382208 543827457 133690156 81127079 402347378 468622781 359047131 447794169 982164908 784878690 545001879 1003416156 575449585 459383392 496516221 91712052 836152296 904343360 768398975 1029991006 362566512 808120831 945783479 802671812 1017416372 239388169 752039334 817950456 113233866 670212322 165002521 595060009 946574414 304369862 742938054 747030474 659854727 800435894 975734476 211530184 983820781 64465521 498054328 543987150 358622642 866847261 1030202076 240073453 989103980 684511156 837322754 189473979 817762364 576863775 6452802 781548812 24571622 652197344 984368550 711925517 764570814 94976378 633494429 56733763 534657846 480246243 1044885630 609509056 66198120 247286022 989157242 101881635 979310231 44401999 110351156 163310062 143680445 251917758 831909012 181541991 595334538 712392541 230543792 282377644 122457523 735682116 127840326 464667903 813659222 1001390875 107836471 835320442 84326248 301997374 552979091 882282432 548051658 346008942 137251435 306119806 765828458 82593706 802652134 856483490 706742807 804840695 30945615 564224074 1001623545 276313335 308981631 444052636 328692168 442711723 375690652 144532009 692275858 543819672 1043016378 808568277 432966050 828427442 554725597 207537857 919042057 870505194 113632085 756374561 396488183 634432056 319224793 241731220 110393554 745769062 431731471 435879372 855582207 968530099 1022031327 621719380 1072873335 1048089398 355489191 1043344620 228589890 492153073 360931445 1016109444 105178358 212921385 542904168 136593474 1027665322 28121679 173050983 148854919 275409437 975807472 697777801 612365440 790336710 248720055 1041633471 30665983 721058344 32979018 68726008 67058870 627726921 215715517 90401610 772780416 618020602 728107108 130065737 95056274 922127464 380630169 513129741 108090499 384599963 356838531 203106928 975784942 1046601015 196492919 321892485 106335139 230566946 550046141 468210610 695553370 753650274 573800813 918282975 80481091 773776210 382312763 745461224 274541821 154006914 614462638 434825113 790946811 69647632 293478217 42204619 443619516 74092979 50187883 223899763 571864726 576805277 585778402 293336617 870207818 310211151 941254612 811204253 342834956 7241332 94340647 165429377 879932877 892695675 871859055 1015250906 636602595 244865726 750410546 411251112 68559515 759701601 25007694 755363214 883936881 1032543125 288412242 1032995841 959232476 889466108 527116908 45159256 840667084 731586300 1001870133 473914440 835523169 741988944 968052192 560750290 804668033 204278451 218545793 45130969 1038347019 604273924 285261242 61140642 745348545 257260937 141534984 232795182 1027857913 587156773 363949075 680007953 338582398 754616562 666730069 1006772730 509979906 1044335971 160839462 452342635 785721520 426066182 924865269 87745935 951667627 230461970 244103690 168191304 933166832 263240775 15119244 951828002 169835776 40517141 764182148 175413891 854574123 1030995014 735412048 984945039 282128528 337992684 583214362 481344187 816901620 300170128 185193487 993405214 150659294 81239735 670630060 1065892086 734216567 764204748 983255863 918945344 371707541 782138159 739934151 297864765 1033640508 821165219 182509625 510793355 826417208 548928030 170625127 450224976 795458319 574405192 621475306 1034115186 61121187 171470883 399772260 616110032 63739520 1069198470 642518557 841421855 535960619 1001145563 860718701 187039124 344595172 387707226 521152363 47331176 947041095 744654017 119611023 54267259 886820321 774812770 440030258 412366545 626566761 64556547 378959769 1057666837 16282975 698157286 352034713 616281269 995373464 718188804 619293529 726255036 110147973 184812066 845424360 373726105 951841893 917257045 217368585 61465948 574552973 35030453 527301253 927726552 20624343 631823569 147698527 341291716 839562767 1033154047 1010248423 947235740 1025915963 404706742 470140502 509928916 968588063 287468562 259106883 1058805883 926810312 1057570621 860431108 405455134 231522007 1044039061 575917102 965376778 424908502 1065164554 586340774 949433426 423281849 501590301 201024874 308116958 381559489 993762845 797354329 241178528 445976542 697906812 694304108 751993323 823280612 641814305 923622540 517990728 992247759 845263934 564444604 927204757 826168356 932980968 975013860 179872059 113745016 967940221 718252775 1060163821 392921292 10405452 704916438 587335468 349503869 702557656 734467527 312753162 654837707 965081263 98776165 941780298 555584377 997683282 774381005 219358310 258348566 738992166 1057482788 101207989 702145962 351958150 157196719 296631629 778505471 79404125 366705075 25850544 1057668101 1046223420 445001458 755852783 767769730 899743302 447061291 14841987 1042635518 571884156 163316741 60281571 1069428840 550776381 186703958 338139322 367706978 1040299210 1023584950 644102147 275418623 811075077 551871965 875374308 796755749 68557498 325171549 543913887 240071521 47505214 887990728 216472042 154757271 529625171 112769728 708443774 975073143 614819230 1005804145 1041033275 1976021 128825389 545396915 99889312 587483529 1060308474 951610127 205928036 452855228 787474745 924386402 503186035 713500853 397812155 1000482727 1056888969 301922218 59770863 149472489 119535385 797139914 935421802 1070936385 652161525 567975032 426267638 519928418 105317289 753734257 561780630 782357281 127792463 460692652 308406781 377715064 603180375 1001098335 52159650 127968991 726546213 246220722 476404285 457416411 857734062 874149501 943943619 455285873 112724996 721555151 693361772 822819040 279495477 748766115 207861450 272955897 768599349 386415193 1052929647 587636016 849038266 120604575 536406131 710860021 1069039949 959195237 1044038958 328779667 261990387 364460875 265730717 71073187 513114646 615471640 847101174 681501542 991299206 174705187 746907721 169258902 114946900 215743325 578462115 238438579 733910888 971029955 57393639 835972064 856947205 1036780362 430630947 546102706 324985170 863777232 701705303 895335207 750029410 284706607 712166171 555053032 110124181 650953977 323611802 824303623 315947934 34519031 396135947 915201759 848293511 360957101 876906358 134855895 995873937 645156613 462211827 550318089 364252386 378629295 307416031 399139053 25222873 36164502 26088321 552413008 713163492 491823634 333977885 281893971 56761073 1005731869 798356270 362084963 408289080 572356692 374070750 820212645 1060772263 931126701 357987233 825410457 748525786 907781394 186947523 209839193 273204531 19617266 958171616 562833644 803560759 780187304 168242906 275846961 817020723 511186131 203149786 257298852 557351743 163038310 817571935 451319424 801159875 1002871427 854761750 709274940 528304624 1008468565 312783519 43728316 616096207 804781910 65629180 74118650 538770900 362454579 724385551 199061977 910512426 464556754 621724119 431091046 70675095 995111683 831137985 783146107 499486716 843827566 501358327 464553512 396744001 984309009 566735618 654089926 438121149 84703751 818023892 656114894 697423152 55063385 618126492 752437562 500780305 1018276602 651333429 664483917 142941968 665641339 1066423712 181210406 430611731 492067686 470929883 232899909 446141044 146932409 138746189 42518209 43073890 1041677336 571562714 234126313 94897907 697258470 220908338 834063517 931024245 941923469 98715567 340715952 401510009 553580278 531980280 205232461 712442518 170686501 219423856 974567234 376119257 1019666727 622798280 325781652 880109948 446010002 411279518 128663636 196196071 370383159 1018346394 655330593 150530189 795270543 538235272 111783160 619469557 489692397 561821476 882705377 708334147 519403919 490960150 697532766 591293271 364930181 826010808 675583690 981668430 37424029 1052044494 582859310 972393412 295317269 383306591 436536834 1069334484 698594586 900947029 581840012 942083089 423968564 38023169 579576278 491939511 427339933 1052888983 72707589 465401257 996745349 1027652402 421316822 534118641 969856165 783682740 877857352 212343826 706684382 306400080 501389941 720886923 899841159 641907490 98856356 584026254 908173403 7280083 872045561 466758546 848045819 662649191 684945773 36156930 1010009094 344236800 521425733 200438124 341638542 27534426 602130077 757556627 615453166 192629759 2213477 474391302 491975951 837998410 219728978 324061616 745346666 832757617 109411377 87866380 977732599 658149448 406017474 638143636 976646663 342907208 568595103 718540115 504404323 837583522 1016199464 606327660 663689209 1970404 584435581 122471873 677650725 377802332 273060737 279238446 781560284 851811697 516268440 640613904 998624472 873689722 195627287 835791128 43441397 943653667 680207962 54398849 748736781 198086977 890966671 863221591 645322149 884452433 575309701 483721542 745216525 926525193 715344392 314486636 445811678 684984444 900876276 552898187 969646277 914337040 466598550 270158912 704947007 545500638 449192117 281139014 1066140572 39516964 245286253 894286389 605620305 429476404 958498206 248577212 959998622 386073879 909995027 512365910 735882965 954841131 151850281 929810029 334213283 25596817 971405522 470320620 753521776 603062320 149520436 866160084 812037407 1035815973 274816931 456671443 734840651 874636879 207449570 496847318 1006824414 123168062 25770969 138873351 1048085770 240772889 134427533 633230360 969204526 442468847 524847644 826165465 130926739 114447812 1739661 689153 85494727 549906748 150519007 133183345 350559440 491216414 425774303 318614953 855941282 154632316 558559501 110381918 348023320 971871643 1058430604 259467312 362497341 1059343903 299801634 827872743 633058751 728114674 383675160 889428370 398156605 272362456 912362712 750823701 439317988 383776303 283231207 672166593 234609327 319139546 32511409 1061591835 910570163 443027959 976269693 860433786 804702109 1038034395 723641633 494617063 391148337 361163647 161850830 550400354 833810967 908915212 701481507 639845950 934679122 378636239 963973490 816478607 658523237 864265249 954280576 179952570 566399534 715105742 503346674 272226012 979268516 403500815 283362614 189801002 874213522 515893262 404753336 397126297 170190164 335946912 882308726 763049988 876781759 525803628 484498952 149342910 53111783 360457251 932546095 187132590 188074747 973733447 1022034938 812483042 427748050 299141191 783611199 414824368 765366701 140309781 492974668 523559799 12213204 563898762 423022047 510742561 536043039 694595196 369868581 927375684 519294178 678873127 557509105 1050628350 465154215 449957460 188435483 217195130 526216919 249481840 493336172 338984001 827487223 724195599 15030743 838503819 517790694 428588760 759699921 861128249 533671728 116004799 148364277 598413622 72664753 902698254 510763289 23309961 551020219 423439789 279869406 466199333 5869968 661907717 562421746 473008341 123147994 499336976 152880761 694236589 1661528 18506147 1035789687 801779226 96801204 462416428 808284540 513517063 233354145 330405279 37696407 806474232 539977998 255416822 575981875 845885257 574990243 260840945 852139936 1065893140 50936609 582830866 680733518 741512712 109951293 192017133 337288541 247969924 457402166 170861678 989525293 361133186 414618686 890877120 124625951 478968439 286544498 978865749 274538250 851350454 806633180 988526249 463463157 263277508 273741768 731351631 676010104 618211965 75660018 825995855 243830667 989562979 257331246 355338512 1041055685 84287466 897285347 253358456 962103036 120104150 163139135 912986598 586850312 944533281 1062787126 579721583 897527681 500389263 1031360744 348641666 816873515 1055310874 482424635 800381918 545479275 557218743 773235771 290315003 931182850 373937594 545520562 915746370 273623205 786468131 430836820 218964857 729954214 1062350643 809040579 759476945 936676615 447528039 262038911 593645561 943043905 516805793 893978364 931645129 361005651 787108006 909869745 746128109 317836924 723871653 561888697 332564913 726645391 715365138 154032411 566333267 830884197 764353913 94104284 1031241994 967027095 781283669 360649874 734844714 866260667 695774695 263493364 549559057 799378290 1044013506 376030370 619118923 41103172 772791091 180161069 25622571 155288048 1072719418 291658801 379435805 406298617 744117477 235655647 1065827942 571063287 1026889519 657125962 216754346 294045314 811568835 180454474 252379446 407522170 39454976 726664668 763073141 354195580 22955579 790114945 381420483 449434067 934782196 278641108 1034679843 353433407 824837257 1033025431 45203187 441154784 6121613 475426510 238812555 338571570 56890226 575039909 64700867 815688094 178890164 862838602 841986907 99846868 76452235 463317650 186922012 466397437 1002221868 736979282 877442591 311654175 720676679 62650307 846267537 791132658 254995594 947946655 402601214 740329971 390193687 165131604 195436315 410184271 9619682 485815253 22084519 561189565 429416001 674355909 947948198 404624954 4587591 891389672 34937930 409218399 653492788 1031226765 696470294 812616930 155001360 287061859 806733663 129662541 1010806006 168170992 354345360 539855717 743505722 245917841 244257781 655322679 583509987 30727229 228543934 510692260 99227839 859619945 720988732 39559768 311157129 582593510 542256145 974567426 586670075 463509058 832331761 975128422 493929163 458312974 926744829 261511868 165184435 152943841 11907353 69122800 863828167 706033530 509539432 656384841 1003633504 31437094 813293279 635165949 540085139 248519006 195548452 202250650 846602696 864639672 714413104 272875703 37958987 530875495 412078374 36459022 1030857813 1056258240 167287348 357721865 967916994 490767491 180214694 496560604 772922738 293840505 41128404 433344221 139536280 283631272 937346400 525381964 337015777 731587919 341829112 460698867 493564210 50249214 917897972 589104354 249080589 93616816 180417071 966651317 359247063 653062814 889175795 813921620 336066730 36460885 77481263 545845676 363499997 62258774 763494733 562851751 977364458 71159731 665370675 639495961 493046926 886337964 183510778 241652384 1071039891 853802334 197411362 865116277 228514596 535930369 748806951 282646584 573492935 817486702 118733374 948387212 228260378 689135542 183633590 1060391426 353827068 629591589 572595164 523954580 910908411 803845239 723494415 355495816 851401659 257077875 532959402 738533371 432701786 905771165 684421487 267789066 740170903 847510023 383610863 129473872 653345688 263807106 297254171 736545660 315902866 277977692 375104582 376843505 625450598 9431248 148396242 481725633 767228243 955569002 799310026 570361686 599612450 260865434 1020842557 494602106 730377106 1040799688 812058363 361756486 928606271 304489779 242440482 268050267 819659012 708100793 832720730 718549327 29107134 864719349 451251428 420510389 194493195 12915517 446755964 515568767 328207043 666349588 617482128 260550841 554537817 937399330 611027093 297266092 402782925 986735785 312027346 973269724 48553684 449265808 575350448 69347948 525778990 302086741 1010424915 270775927 461991057 332383040 245709641 194034379 967985432 59389376 588961599 11821643 1030807744 303876657 138981455 331549309 905241486 543397310 376672287 533881568 133267384 132137105 632324931 493784820 429859274 674173551 1010313295 875873334 553426708 661262295 605606148 311043099 319560095 9903700 988532423 154351055 520899235 292620977 199597090 328915059 698608927 901171427 998152254 284979514 123950439 490908605 175359123 347252261 64188083 686119198 605041973 392690142 325568381 1042217491 69981575 1035057954 8063161 196327759 454630586 669233158 563905495 455036832 553220003 920584105 867528422 355657172 22801990 42411680 943208979 842910024 1049878509 352636918 69416313 235020261 569552821 481763798 14498075 892524548 34190888 246806339 904617281 1034163380 740025454 926037592 198938353 31621103 364193084 559539673 93271297 1035576047 439322830 178695421 423951064 160040638 726134030 195430998 337035317 958660776 892692519 74924417 70367594 260945048 846625752 999759155 881234480 848300628 212803057 294623020 736043047 843830077 48465717 470794270 921892155 650047318 322685576 116338776 783345609 279098009 825651114 105736594 927202627 950140083 765395681 482821183 1029781868 506470116 340448115 740484754 758471481 707836439 205484541 109008529 949264515 733795855 885392499 571425486 86867766 727236833 887340908 768614666 606411534 528426258 961597618 187576860 838306529 159443258 366174802 544997103 987935663 694724286 786160531 856085627 493339561 42474600 346243573 594036402 628990603 71694745 514197071 132367936 80907685 963899004 72356837 918510936 957818050 335051072 937046699 1061263711 1052918490 280492161 557680729 284680181 24865505 772037879 596827474 165437018 230298331 268154945 464383322 59698744 181149254 545215433 453706310 932116077 800561000 135219665 579364611 1024295290 19104176 196071952 118799910 116998198 661036713 1032118222 144362608 452634675 704123527 660892791 248649379 58223456 946283727 209315360 259446599 154348165 439947964 741967026 78079008 492321043 21680781 392648977 161142318 548018081 877394956 385334046 121971412 767480527 272063157 754180897 444799597 1036324378 458639528 181827236 722535795 491602350 494711313 436879675 640761188 890553858 1023180138 25822577 777334107 157427122 387553740 54675051 626488547 233160790 938311722 290307364 860494179 392777878 342167744 462422241 789441137 201785418 30620689 289547939 1034956435 888413144 128725161 746935549 111233989 610793596 940246383 871608014 330201724 385279544 347917358 593540561 158981342 431573092 46198799 1058932175 721277771 833225455 514369694 4489642 586600556 894174056 864201633 647508552 1020661329 148467454 1050519958 713732802 720562144 1029556732 570269984 432758319 376283367 396496775 50328457 380360579 107237114 1064142131 249655186 542554208 644694612 385015551 793929140 788180248 718113784 472566508 50999477 734364053 10579016 316725889 707217397 471504876 922986878 517227419 686498146 240635667 380316882 160599865 443582096 327675531 814897649 140994870 840064887 971377345 806844695 208541671 1008303718 961036727 580311025 121214770 947805747 984524085 502062191 588599786 84264526 755757935 838650830 500888041 291617569 539715217 472212535 462767836 328416560 556559717 941822305 802749935 256715735 986502535 348931877 219266104 402792465 45844179 131906981 648303880 80870435 750802271 709638844 458950395 855127646 1066992164 947049135 148316695 900562166 849697858 588670835 642827305 691394585 270923433 673586731 1035324168 776818392 467029503 587392735 512425294 547522965 318762213 11697893 541556663 161631739 358887928 1032181920 41050079 765038874 467093525 559150609 31580538 1022174872 73976024 878007433 923015573 636508355 108845557 653389855 163937500 15693388 1068664881 452662426 894919988 595052031 45552115 311116484 483928666 401064001 7295250 125572812 728656440 911342416 470941251 823674622 101924365 510033379 1013995932 22763857 1014312319 73372645 575467313 490687519 94041680 646199329 254526921 170029902 129157832 251772596 958917958 920378433 815525328 904321981 548746055 1032397081 613748972 687117744 613681351 1030687149 45449108 512452543 212919567 49602529 588294811 895310225 336242078 86375643 1011161050 824209876 462201332 323563224 772020255 500277874 1046919401 271802590 848539468 436493558 551043413 589022421 223787474 489672188 866755457 313169174 1037503567 105123791 340942026 800241026 397671252 143771891 246896456 32103556 458437723 697826011 1030264665 209111464 981642796 568344198 720657288 421047858 552693958 565907638 49195159 208451037 477757139 416710365 331399150 482146630 185925862 26706584 772264755 552294054 126384904 387401009 625088537 671097499 1018923220 185821189 1028649590 687822969 649514573 866621774 905686105 857804639 319629124 1027343338 685015010 769368850 441445579 463114583 1028878420 1044705369 919592172 732533773 717160682 187310757 58015338 457907236 306982092 622835907 116453549 231206549 695749685 992046886 410735383 1027583136 508005987 198326955 465834680 766259688 610892150 594025113 658436707 259062297 346883106 960856538 692463062 755657545 599088336 974371973 706754004 241938899 28287581 886604959 895522523 921061 46427073 993083053 549381838 86490611 272620294 844927588 554926377 599853913 1042427476 446728925 254633065 745111612 91013902 693274333 734691046 637649063 1031511015 340278298 303183638 19733804 759289969 541599882 93129650 697234878 835461690 1056905261 601671386 517439738 435508309 560271680 938010598 48526340 913447530 868509349 435493519 846284827 58842442 1040973958 317345825 973716172 529229310 1052192592 624087161 498894564 555025555 530261609 926559407 357477599 302180777 946545038 994346197 239137618 413652445 317857735 404580925 86949936 969578401 828469435 417419047 987978156 12531591 1070301550 635777326 1037870154 123560527 179389816 888887163 723986565 1063514742 750120478 190443377 282189484 773609595 934189638 57273585 140034111 1067561288 683639073 556491616 1035741393 626529455 225890392 170832575 538512711 512940689 482224370 145781201 2719950 514735912 613088940 1002019602 669865982 433481502 475267832 577484650 1003315590 415805177 367282944 729269546 427504356 449944639 1065692156 712772694 1019594506 529153424 909372909 255162789 822816130 928236958 281580151 71453834 268567876 305638982 712877951 381448258 573307939 691100644 1038166283 782387013 468612605 858616088 89818250 860175434 1011583313 288495824 659913781 264119182 139040698 625709265 481539209 714118132 694815591 242508731 74626113 769628369 853807757 370183433 201163277 3175552 526788461 600465345 445657747 52484626 227169389 1028867053 223833801 667262094 837498231 916004050 891204062 354396002 318842847 690520784 472052912 178732804 301366461 501733314 796237308 4650791 745973723 373827626 377519671 1017865399 284831500 686542836 848778106 642851842 670632275 70692946 714694108 393327659 740848024 1038798946 748734861 288936748 644573255 650612029 417570295 65569910 533473352 452054044 476207154 301932203 791848210 151269580 180183517 676229621 553050970 366628354 384902622 799497534 1026988129 295229233 158756175 205458962 166844201 699826871 673736353 406922423 267923068 888755832 24046977 49573537 468375513 296121562 871282279 358131665 178934413 193344040 670314826 975043669 500486709 84174081 847168240 481045726 1066310098 125604789 646524711 555078759 648976329 734606592 899029134 1031493199 512511555 647312252 489296230 669797445 70548576 602543602 761606269 173828174 637033829 223114339 445772223 165044642 362183056 251186161 242555762 178964991 434731883 197488699 285359455 377124277 1067748751 241174547 202055608 144901284 131503542 770668531 745696160 652541294 560842549 1073737059 757495888 1046558079 741975906 484242063 755397091 616265643 171961673 554910298 571481135 638772290 264171418 212780224 923444236 984780391 280204134 160362373 701387232 326306362 470728014 387628752 625823044 612951316 799605038 506129636 54338518 37464902 835577676 515153812 895719317 531086562 84648296 961704005 771405407 605587710 1044678164 743765834 592288368 605517216 390311981 56472872 518900216 502303310 917585031 917262881 988041681 991699270 730178690 759563715 683550768 64767207 112525953 170293571 979981968 471559109 556640726 1051218425 753630907 322044736 865062615 540049985 953489720 571300969 328956537 137352673 643871715 1018977318 553968144 909555625 1039348176 54252366 1017296701 891239944 525237479 232315782 960942643 627453219 307989386 359205236 117713900 1790908 587965759 212618529 122830965 901916927 226626110 343333109 195979842 359178513 417933314 1023622299 833056154 937269625 965187726 734366772 704530290 934677285 135371645 292692363 455692127 705269113 11309256 70367348 315064790 353903809 270317682 191839465 689442854 770133982 937250915 912667733 551061046 842316903 780842579 249276626 1049876048 591910966 111249988 812928122 471071455 890308934 939768442 59461490 649716660 528122763 804424396 195731484 54897471 295569454 1001221138 562349220 743187344 162994073 1059764351 814680037 8847354 440856547 318170497 725249175 738684735 597953620 257527612 530691819 658762458 949645649 125133951 518163444 209073014 715606656 415680653 242624854 264443147 361370709 784272566 425448548 255406144 929293419 483721391 584055743 626800650 480273298 718065753 132330699 377710921 54869355 379013575 569395909 368601455 325110850 256659363 131213375 159380408 802989185 391497998 818502952 789421120 116767123 930537101 243746688 1026137955 185406532 526773712 888636002 255973909 324109080 341861512 261580158 419403304 386896075 510597754 638054322 680918012 24902016 994686851 170353477 78002588 976049353 518944532 565263782 823573166 919923930 4849406 632519078 956544205 41582215 535333749 213102043 403675950 285613694 674650889 542351192 192900594 867621616 1042597471 1017763159 43497581 453251516 917671206 962831837 696748137 930263704 203823791 500566475 19598039 674946563 831884420 90723629 300191497 988121280 522113392 901052 699897096 428623602 249662953 411562089 896708006 842586060 566655188 749440285 673015871 1045169425 725079938 959694681 684962256 97731158 68882145 835709783 310920261 955352769 32641761 390523543 148488713 727908386 864633768 9035253 225008886 528930261 769613223 303781598 651065351 14354728 209867852 701042513 148970484 573932629 1056503733 199180388 884411315 913324913 1022425379 180190645 548535690 309025881 196801354 674848993 868195462 476563313 226245842 744543111 835079521 48171910 1030758523 95834283 77210532 961597868 397844066 695722098 405896406 1017031302 799955084 664605189 342105166 2984757 476106783 146659445 750141979 900385449 777880080 1053442296 1036857469 136108345 781286736 36133044 127352901 930270202 964796435 289030493 963573669 933732101 703325158 606826239 934938524 1034464112 565482692 258834462 868696307 306116523 89495003 533734943 113980090 871118171 567354910 49096886 609701213 607889524 81930829 771109929 526443666 894053448 600380539 16070410 992692438 211186274 281521277 849975650 1056016889 931509665 219510788 567569700 964225782 946671087 77008168 366883258 53121858 988064197 261589560 463659443 145094478 909240147 835149399 282455208 575709546 852676347 189593665 1027247347 626938714 101298730 619592472 273484034 227551542 16693823 664919229 911835176 475335481 821168386 743444625 162240578 889607623 378243068 479383284 429912750 883743684 420241107 634200639 31462684 269248974 222713540 890288249 984437700 245622803 813032716 705291105 826379791 1042438753 516426780 28822603 31823047 726013717 392610231 63395145 867910310 443344819 983214538 975312169 855063888 1063909238 308758272 443971154 460711901 128484760 747827281 994092532 38475645 502455515 375095036 1073076645 18250623 374473396 1015535288 710339047 273279410 297419006 1062165535 673664328 316120599 892468829 194918899 448746798 547073593 802735852 132358739 895656070 786979694 853860195 730571136 34238519 591951254 426115837 578754642 930177979 222454309 671125663 1067005525 1014863329 959577293 461624913 500997627 260576654 108225703 1059070994 75074387 897684940 172740918 574988546 314571217 804590653 65199350 990045908 1049120931 364169508 207920491 405635032 122366449 592970155 866099205 537243042 756555135 95661375 803322045 268769457 103580239 1000353150 830851785 958677660 163632673 186595914 643693591 644085885 36231675 717229132 476042700 727533296 934357511 429994056 400759312 246680169 766397636 838414686 966151866 536670992 690956849 483067754 1013661972 417714952 856003809 444057617 641712191 563848076 480648988 545355781 287288600 926772126 231955395 888377762 222815196 1056454701 757703367 83113591 905523228 433663830 779558873 340868931 236988781 624627063 629027596 535861120 660486047 809760085 487786872 981767027 848938508 891078692 497929119 989129357 89548314 1029357481 207284623 1052805533 978110498 705292612 972436484 33802936 661200403 1064138551 590116496 913138229 246290677 442666729 52723775 297249515 32568269 423940251 955887028 5489403 814965843 451110291 149263114 34536621 604620902 737891417 67460455 711199943 527042531 943398038 921317670 452123862 522572623 552399069 574828621 62548389 554068214 712756868 962166966 851433203 192011451 975306950 41207039 275933850 533731401 813904047 850996435 985263453 179745036 619580816 749126625 597599304 920870634 258189107 651391388 60330362 319457723 351036294 947460684 280145467 706554467 757374367 326662628 560041380 928566603 95188066 868506138 904470220 767024786 202609324 653955066 601804124 557688133 5217396 442201267 802725147 1000024217 1020660210 618839914 113671009 469473274 491638305 38553941 229691978 691386708 551461217 32259973 111479459 1040317298 109125359 707166809 291356083 642284625 652026547 54148634 63096631 700012557 156489709 592994941 797502761 109721911 762576357 341629122 117393281 568851232 447815076 797847356 266870076 529628861 882034097 604795730 270883960 368226682 365726458 301131627 1010473889 951406091 765636463 447189188 843310395 674768500 913206679 345726193 517410146 822415732 360395089 138585288 10980584 885880948 1049563486 990558760 934205663 328848814 686864994 845608619 242018761 779608760 801660846 967546251 88250019 1070717301 808131309 135235574 99630805 361863769 268035696 765694119 592113699 995578858 207806793 973612991 677717435 301530481 423569911 202953564 287244355 650138128 67794693 43005001 881393460 961668294 993004410 235168205 331778544 358684263 708717719 24245121 821484923 805290598 230850157 134027304 669713114 656838708 878838347 540059879 816634917 818604447 453899250 603139095 660903321 470675340 275289996 714424737 110732037 494941510 985804150 706642251 612331186 96480128 200108697 487570413 846535733 578447779 1026982866 745072047 703213728 187867641 551129203 587587409 937853908 963361883 384425176 86729048 1037745179 366415570 735625989 486607106 898653968 203303036 702694154 309188274 363988944 867322733 243643156 276577586 180829037 5792845 655675573 721339483 1027720124 650983414 703153715 620076647 534219261 104740118 999458385 691686890 168878554 895017046 1021678291 140986393 338564384 34368810 392158646 150436319 36316762 816462385 198499768 177012563 184341409 280831293 136582437 767636332 65073050 991724754 396049287 356271452 628586788 452186296 264034258 1050423260 1056396824 959851391 903723994 921390167 170547125 324031513 670291748 318518923 906370562 56905792 628785450 232182416 635763077 588983161 686410001 998625616 1069523742 221689759 365365276 807233718 791136957 621990351 52410487 894414323 159798988 355305178 99003356 951226539 458627858 408747533 649023050 983947882 593221184 423206400 58801895 1046259018 112672331 593368133 471647596 46942073 809557090 38286715 668798938 500244490 765766587 843913312 948519106 917968518 626563845 518995296 307205449 833875755 121734217 20161251 933662378 668333408 765126645 667137253 786470091 657833117 334894513 989245949 807258805 1001390305 773324829 122318361 36456964 200566761 777397968 532718960 389507637 338932512 516319148 1019470239 463488479 832938199 940845570 104284514 337122897 850610033 521499891 1001611226 984746789 285179819 645533580 18616650 106063545 917898933 890612188 805920779 545616476 65834796 133029259 209709413 926849857 849714176 657577615 820140856 414831272 249315829 911885371 8684974 443777509 935340752 926875512 363960272 833412829 612504122 757385680 822275619 999026573 234673336 228961413 469071479 178421777 102257791 325783573 811280155 861339613 895057675 637359235 365723419 1064087818 266128723 964310632 561573440 484828674 721642575 709441362 66396660 67817531 568425902 926731530 566225948 568053407 569976558 990170972 542189866 1055075388 568241911 559470552 843597481 11995676 388736841 386271069 916956859 909636488 647368500 67467359 847731257 608953190 604931772 761435640 850931014 806392702 693954278 660578703 938899358 1001697126 1054245756 66004209 376730601 287206824 989503272 900379681 538900168 818159499 684332054 803734653 527637066 818329257 236600648 462438401 440023242 796730573 710850703 256375653 9751283 516651840 953369918 401266971 892697738 982201151 604466893 36348251 1055698268 714264096 749811926 362617869 269850798 299868651 922619431 450578283 721304783 284425146 510942195 656057369 717407183 703560857 181092812 366506201 298103378 180324757 272399599 210026142 255051911 236219306 1016348477 279457759 832791188 42742852 581230368 500086726 984366976 136883246 152633897 157016460 585539260 283188294 569681335 238992647 460109196 252333646 506021395 598697145 58259872 775714251 470296191 582119656 120588150 1063872127 63134585 448744928 611234373 331897196 439156950 632136757 643807838 813720861 828613959 242074425 1046787126 206548791 768297104 258701895 787683603 382144551 313103440 38792508 624573976 1070633616 122654926 523549352 943152110 203820880 268797875 9961612 69397922 237535969 688785511 22399148 190287953 455443345 308889168 398566095 417118878 910695830 1054423629 590296736 420752912 273083643 252716452 309960782 288323395 211189190 640683837 376100428 836236562 925299995 77317456 953323985 6714503 574964951 539583729 936993315 935891427 813340442 571309996 592761471 540822690 293395147 603628648 451694672 738454919 124758697 788024207 836677480 540797995 664753359 125415077 125596352 68890586 729463453 198952051 1058070350 966945813 612653134 989413852 70877985 337188164 618309347 275424404 318102465 205720542 393659273 468854844 994075147 384436429 649896904 144720547 293701486 1008605121 150056157 1053096582 496459735 224297745 920942355 860234848 98548725 57775540 340419511 174908220 711684240 962838844 972751025 481013313 572298747 925315315 701146842 948975556 690400150 982507440 769954464 382896255 470497685 434877111 347390808 449404782 508496710 886647245 205270192 227608431 924866800 537343635 827131960 539868238 691556500 873709007 11017132 366710232 937023701 10095283 897259461 360083132 395400380 907968131 16735219 1046443954 972825377 851786833 992322114 433748722 671564276 661385408 634502377 3869796 384565625 966954223 454082389 938345733 62754257 619788544 729021042 179082788 1026746288 77352358 1058941703 846103472 33213346 237987443 752825350 315191964 542121888 417427063 1048878444 858489608 10284051 871684198 968258242 69589971 220628483 543434823 86419999 219153621 723725149 340399267 86999375 383273696 65471509 933437706 33632300 332455691 193487620 763778002 90654866 457157062 360950823 244415295 441726737 216360781 995205380 106872372 1018484805 974340878 1047655258 855439992 1071839890 428263794 904637365 387740355 377547641 525850467 1028239369 403981619 786036305 541068137 311146498 184005596 217962721 977422236 217021133 636131528 126342060 139118973 451391819 618296137 147642267 194959627 861079182 232824023 326271612 867646629 4703679 1034060197 140307435 1042344733 553914679 57221316 464838043 629846266 778806255 1046021855 405646684 870343764 370549167 467043880 958606621 948472177 156581337 279966161 267761466 506604102 950748591 946592738 564570921 595313022 71494904 532506733 896672780 668017346 831800888 860498321 1046048124 510067225 237157393 128453909 936295228 898644456 136430813 61762450 413182454 701635566 724910907 1021717531 589705707 263622863 13362061 1004681061 510530021 676870342 166160336 880402049 770750698 11616562 793312611 959820192 330943715 964265440 624607234 897941835 928281758 552668434 143963412 296013150 659690547 692842558 32027003 591212460 717795475 1011780754 884148820 605286988 424601806 763972334 716101977 875674762 338043181 882313322 355569216 576174023 951284957 586099722 292558664 635611822 631565341 542732731 860071695 656356158 1006600415 206327966 516597184 629847768 523109874 277387275 1019615688 438864470 805288963 229698405 811083094 153153283 403359330 831589078 1053869495 962834441 238875358 406868209 1009912439 271903355 276837217 385151603 963032327 34581101 246057668 274589277 882724803 495411124 359824324 31138516 869577838 124456305 32565871 814202560 777474890 459129185 450161504 871659436 583701928 1058923907 165091663 52816347 296289367 114804789 370175959 20634874 411587945 464289061 200596901 1063604532 1055418738 987456661 625174929 159079202 727924622 239840314 374546492 520524537 769888998 381919265 321726415 590652855 996772176 1059888113 379462909 51688192 1067907562 524749328 334552225 659945201 977202126 897466647 167707002 455969192 611132481 628379753 778101503 1069427618 390258786 111512730 11593497 498857606 999223756 559039109 419576509 119534851 847920098 116221234 580461018 175958554 282941311 510383488 850106161 884010248 863925090 784323217 470448582 897686400 442401176 59317179 555289955 1025762486 23404211 550474782 507816930 853191961 258628980 294263004 581090460 798870833 1055702400 154290454 726414360 128604157 545878426 297503412 695369582 721435398 520247985 1051347554 850633590 527715111 911782331 383694455 394478126 242499190 1013189566 556494512 796608093 274020746 391268975 200151684 895322621 309276160 407159313 561970808 832375306 327387670 841710656 1067773434 288655135 205980132 732831724 126254052 928133113 544998111 197988399 266420901 797013534 307663375 147921802 725503887 246720985 554802910 1006348849 630847133 689383506 95373705 118109549 185182108 307361841 1045422599 1011801278 825193440 111393446 1007672928 359649090 481126127 268495550 437925552 208050382 1009884448 7243319 314976052 39126348 1049615122 759407975 305870963 753075020 571109179 275685253 770342959 509901385 283779881 444324319 426478195 368099332 686754185 165631605 358604021 681482198 933190154 115393307 361734572 61074198 1013750163 420596283 492667597 150289474 986187175 324306949 1010065723 832794331 780660194 659251346 517801800 766015071 680932156 125344127 1011685744 319163270 10246263 458701678 4611331 1052023197 604832747 996713598 51950296 163451748 1045936386 943375541 1070807918 679267124 735770448 902604734 558518090 178770733 93139785 388321141 959307557 545526624 959172435 344022529 333166976 888906910 1063136595 713583124 344189744 910759759 579726380 630797772 286459003 1024220243 102427234 104773176 207459913 341394794 1030466286 687519755 40781890 154076290 356518883 669085056 786397858 850253701 667572564 862609277 165983650 773485645 488965009 399927352 924864831 956810494 1035421905 124690541 1018188116 1007420660 528365609 395983200 705957392 178634328 694154772 923214810 578629635 361691832 880152475 592105939 491953666 777065469 544533341 429550093 92355977 677538589 72874670 95333100 315550906 2280330 655911247 606765056 41903096 677794980 208707667 802467372 170343440 730017663 876634892 232038567 945752862 435949778 715052944 649878939 783958329 16178043 236810703 19425522 202557104 614990018 624217022 7149439 323049974 53400807 720397601 950616162 661382858 954077873 737072645 765297782 575745307 284497048 1050197458 35896530 917524188 974070139 250147826 842593507 383885236 289109186 796796090 656071657 749605677 500837406 739497438 807564234 947709206 371944189 750786036 466571211 239580792 422690695 97480692 661122901 1069187425 199820583 312238928 717796198 374792952 187961191 608268902 539329220 368859343 322002522 663992906 296288350 696301264 3944367 153627020 520993116 831556999 432068857 45192805 470685682 474101707 916741725 675518806 192115505 834658855 125510592 632602718 534911042 491483391 107449494 62591779 520782007 768210667 795878295 391680610 391432244 589176110 1019244611 793122142 197133680 185388449 180403035 1023576547 778257079 941111588 733893309 834080219 234998806 322221333 479751089 303905036 67639970 119064984 514979449 540383611 476551466 387062783 522256353 875986187 543665372 935159835 137594198 975034769 397105938 720876860 149261745 17129885 838842561 892850404 92373506 490377784 199959449 351509765 893247049 925869051 629858627 357585618 187881201 90085331 726259098 252098945 685439345 887449696 547779617 663695411 513432856 419598396 698972361 617399513 816750124 376101520 518962314 441231500 955054911 1061468861 19014460 982003017 996456626 1073472032 597435349 868098450 909018454 52220914 637241717 117092964 350916293 745568200 799726288 113740612 1043052492 277310824 914703017 193387258 632926980 925773328 971511044 696936857 800075896 724777233 155853585 390970898 329952893 103313828 583005648 966336614 689407126 345230073 503444474 455097990 332431616 722356838 584323102 692566211 96206903 193063741 734622268 301560095 764026836 348189566 742270411 209149515 586252613 685911208 145177581 830022416 956166282 601444578 645567169 7135820 448786649 899182034 90968298 789015602 984463164 694964473 292701988 45260190 15952180 783733523 139997038 359956293 598145106 541736323 627128100 284336895 986484496 337604010 280979825 852522880 463972915 203046246 814265008 866832255 214685977 950522717 73169513 196631950 871435064 406386982 81387635 832763831 58200944 600822222 134161264 395098789 462788411 644715195 999491526 425093000 15046718 198442986 142722064 249619519 545214043 387919009 476259688 948422280 820445904 632302842 81863744 1059256199 116569871 233469120 990481635 889217485 1064330076 936950103 139687426 817904605 319231733 184896276 286458257 655123881 497009871 432756590 226170797 848972668 986197124 152024081 362610652 621543315 175494874 39435348 226272797 840677985 337783150 523779909 281610365 672177221 226571704 219429510 330567572 353449716 415274650 980136394 753315126 25501262 1014375682 872289354 452424588 129765584 810843229 629202594 804259703 972103793 72959026 132788386 900493133 854780016 192847167 192618759 763013113 458447708 117436875 807634949 588188571 997777787 511718822 1019945654 316645176 716847621 251975572 267625999 863923684 313561905 644970647 102284856 211382178 462206867 151038034 836982389 553065386 414639515 391361161 265069933 733122654 937946596 343017742 971600464 6766577 291373695 554512251 61004283 360184304 518075048 702699201 656252700 846501999 227037476 555447132 1063329262 624063995 7634503 1073564358 273727626 522706185 41475039 856844200 142539462 822699883 820544449 117853690 11217 153370730 882501318 985454172 48597110 717280213 900477740 912364011 342899994 687988627 138000367 311208888 868758138 1000226655 816156755 415219662 823681455 988432749 493730514 567288920 791076466 92483424 905673819 618001785 344903512 960216331 385384118 298938774 410353562 492977654 208788693 869205318 348206122 285393001 353841832 782746230 225105030 112956697 676103924 25577584 284362704 517460401 482445363 131694086 222899372 10079783 960698294 47949336 1019690098 739531655 664096932 1057554793 274484717 944253325 954993506 472737300 186073005 983037249 409825706 209283082 954384412 233138606 501045876 699993384 656118638 907260832 939263926 343879369 28226065 222948428 939903792 446577038 83780767 462658977 704051687 392988400 989938753 746405820 1024641910 355077140 1056995848 298120124 883592213 839885849 893116189 843944062 655908138 643942404 932670611 921444465 370807672 321331851 722576047 406152704 187110623 406284576 56854771 200657067 458532406 281089218 822032012 224158826 779884813 984168514 122673217 125387766 940662409 1032649475 105172367 237858130 789939924 675794558 799029245 808269515 745009438 813217313 660955853 199147307 895803768 1005820643 467398959 1058563639 15156531 261697376 798751992 558785884 1024962440 267943656 183489591 262119943 788653247 240356773 962152200 1016957157 601330678 78602579 583227662 458350303 16672722 385126702 36741997 1029094213 733312815 771438075 807706661 1023654962 300219234 349575221 835277135 401890115 1042461557 195857700 171064215 2903800 335539899 541040580 14684474 251530323 854199578 320584552 533831270 564425694 249037665 142984525 770458026 844129421 294652080 926668757 169716765 440742191 204231863 244954938 1011038533 18638252 418975299 244194412 117369125 1030251373 568413473 479349715 698527242 878923958 8736542 1011217574 353617705 1053417478 701998570 1000405479 921200785 895273403 180637739 777290771 722553759 22701773 1058510749 63617225 195349804 991245180 494735285 302693399 647311418 876053551 833628811 626458574 838778241 228480401 1067072606 833013359 200987693 173591585 384863445 660194467 170849161 393701698 160474510 898993969 112674897 883488010 645653467 566066678 340440773 399502479 450283585 268572699 991036964 744837469 376960696 937757824 345843212 212638439 673085090 309901866 108035285 774454613 855575321 920263923 834615599 760268394 834581427 923313926 566864158 1020990757 1063280964 58438811 277736285 1063848799 502927019 487348275 764883478 115621798 426864664 438004396 1036326923 396357009 398381488 392035379 979441910 464095416 631122884 640689268 102345210 589303395 982496926 75763762 374541712 1018317037 763515842 938570756 536962499 990649409 486565356 910729387 407880846 930723942 446728427 144274457 728195792 1048485386 640339719 284847647 851374440 336796948 416442058 975496615 1048823304 232463165 789875543 558003069 174819229 146869714 420702244 688626982 273909540 610760904 74502363 847723222 523627323 765597646 681445758 340110523 910057159 374718149 939362056 527096349 350350255 250641658 869223321 214912379 384194611 705264604 664807126 467054027 88357485 863834773 548512587 555155971 14840380 952995913 178675516 361377400 733549205 226126861 928267878 539780747 858558295 381679848 923210182 437001387 393968885 247189126 223731892 544312169 955697983 1031079320 256925812 134134864 736201084 17983654 316106222 400302278 95709093 866731394 239267863 1059402862 1024830541 480408399 798460373 667691953 247600862 524497484 289034349 695229062 2552828 289202508 647772900 680521511 287991416 856077066 699623332 434735891 102297814 122591235 899194585 400499258 878366648 694482453 89807006 150350887 344073865 120899473 155957934 724726357 474952113 1042123651 24623303 1064994648 414145484 1066698551 943407815 23201872 165990280 767931277 74923545 808095425 302171986 185393537 469633511 889729822 299587548 219830887 908694359 1033376268 170371697 1066500428 1027653064 884930701 773982326 932442299 205099756 833097023 891936887 813875533 1030702389 426243949 178606778 788055599 642838316 257455018 837099750 1015756024 1065519462 641061655 518882485 894319283 318343219 838672594 893106298 347562336 73790120 416394928 792134045 829169855 1053776324 1036348542 231650463 875481612 79831866 950408396 1043141990 267271430 1004390445 1028039977 365592112 238885498 765365828 901966172 514153377 311467826 536850210 87604962 900324470 330128339 583856062 83260390 969299854 849218720 133667343 52462513 474676993 403294161 224706042 608148911 718608068 193812989 84861924 931622918 910637882 489724217 661829667 279681396 140398568 206026508 1063158798 127052764 928795947 131840685 255955774 777385601 955413410 637258649 281140830 701945969 801326045 715035017 725889352 77226086 179598940 1028668329 596584223 796229624 1001909799 500721669 619237075 317436190 791378116 31433173 774645458 801201338 432100358 925896027 776873871 564752940 251619941 640875956 335305298 705585544 355974464 950087238 597800723 764856638 703075856 248000366 1026225074 981323128 401161002 332858603 655602714 219235953 189044336 452332029 502489361 440483495 237335802 962278519 771506800 988874280 157679779 227227236 1071957385 729246548 675675980 84738019 399158444 189946847 195816030 9926266 225678502 410011460 300353554 374099954 350280933 145890609 431924883 790325417 842670370 594872251 1007637766 561877676 557137768 286819617 487039526 1025409816 755937910 711376620 472657570 256791653 788126405 134172593 826035001 85677271 435449249 787401878 934093632 193659693 125849997 108280622 955734882 257860705 466704366 464617366 955060068 74897408 971861122 992117759 28058780 654819742 883917736 939432185 593036527 614821562 618982750 402726886 149449070 32253631 718458316 396530144 442618362 1072164184 45727847 842765787 179759401 662923446 557371904 234221558 374094311 497884015 636128164 10693015 150788575 751380807 593622572 976923222 190493201 93540613 130276966 13238212 702740527 557909954 895320055 868058696 78545115 917752176 149460736 574193890 843854167 562551328 69034243 799876725 168291364 9531985 793399254 528203799 49769894 47883939 163238126 773207408 43569557 476128261 811813558 696352198 254939122 671752455 333812022 645710841 951904067 65407385 1044366241 835422986 778042168 682657329 451505607 54806001 997032065 515662727 697507463 568872179 418895449 1056854292 440116678 600054281 1008548638 706943617 757319569 1073179430 627733031 90766939 1054981992 653084148 981325787 931128364 682609621 1037873226 112045465 124773143 1001990371 852723956 1031203974 759268620 581177694 487360735 359294710 141716830 187726794 552909713 207417987 1019762012 173184720 813246623 608268648 343048146 727438600 191699669 886320483 779052217 72036924 35340042 112336064 347148833 394501069 1060989512 121686894 604594527 982630027 325591297 52295337 437014925 137793008 55377674 820766245 980439553 820291306 1035569295 9487328 454610306 97395075 86555462 213262442 430300840 400317446 1056364514 136334135 688038530 158305782 959074943 132802771 1043539903 390636442 92086686 565315451 357305998 314201796 274081730 15836507 976011197 1057772440 384686520 526777368 755769700 1050738952 157740486 791384025 948020702 936577012 641668585 752672695 916143892 660682677 1056570173 593361485 1070787960 313282574 177840155 1037002321 734970007 1002047486 428460457 486149422 856204222 105423818 1008353519 976128054 508396958 86740097 506800379 184770430 297178074 196541495 216369899 943945781 347875175 484797865 610041015 270354410 924103360 510739852 811383779 619843740 117429635 184960690 635566889 822200666 883244385 895416650 343269048 575617306 299133123 1003039957 849804520 963626909 818283769 481052812 873844034 261620061 970839554 926753364 449769050 697541868 505415798 698755459 847981224 380473506 887005400 429678611 697197191 773676170 325716187 217972657 659550612 701671733 472940207 819702348 510234466 910502995 1053939883 861621390 48450267 762250365 258261410 266613738 519640759 990600045 785630530 1065819536 64132535 114904784 925148671 217754352 412409799 863103538 817415919 77487451 678971055 270375959 950654699 790174168 334635489 184473063 976871204 604654325 978124196 206144463 743487413 860886858 464725764 954649882 187125512 203016686 469843053 250706187 7408330 969894412 573863714 455183296 349928422 1004496369 895444529 25458249 1023637475 615606157 667034199 605761137 991757639 210946413 646208521 348534976 189811570 989187124 421991975 235463127 38293757 55843967 1016285391 999643235 855788190 496130646 645766628 802963127 1022270439 808982780 737805844 418974601 154263137 277056731 628234910 541401043 356916807 731028334 415128201 980885716 830104703 638198659 506575912 1009835280 368403149 962919939 291780034 456588103 648151115 103982593 1039486522 1022249900 374804443 914259009 700374984 645706644 503612728 688572695 934616625 729388572 1043159788 668735623 695722026 183444678 294070867 568246648 986798322 162311289 857518346 417620600 1032594483 41118244 965371960 145017061 985123088 818505285 556644633 178873592 298374474 374818527 444463849 285792079 406490817 1041349145 532655922 566450265 97211303 664648178 440245743 791267952 910107920 296041772 291507718 906730505 804229912 621831503 903562380 531947569 573537167 450297238 602358691 711497433 442319739 714698872 269302516 942144615 1022390263 956818907 649241159 244200567 635116579 1043525543 561627853 865449497 389229680 918144096 497821952 447501892 903366587 114618618 878982456 390226880 828452365 321575660 659090269 91939095 457350875 536588656 469180154 521646287 657184088 236984543 214951166 568433003 594060206 621154489 200535381 518709634 537845050 930617842 1072249467 903850800 70075666 401208033 148005853 741099974 1031807133 376299584 649439996 777089268 566037497 1066321969 74772441 476305738 751072777 149720783 676609419 33927798 444932604 555460714 843199259 629425097 475589931 767529943 395963535 680949050 924374897 605829055 1009750737 215846403 133366150 712084112 367318742 411035890 566989906 10994873 933350882 581481909 1002150780 130529485 788664698 1053943630 598504451 768515808 172682786 410654606 280061217 779209273 925925800 542569020 560482821 328372038 964665046 547755904 767117508 666829584 540015437 798890502 961525653 45619618 248374414 176009442 263232933 194663503 1026396596 80432863 493005601 753713000 991420303 591501687 600881692 269404374 503914500 919865528 777400455 747429355 547765669 978483734 583878808 132126602 782136942 840565822 860513445 706902549 825642634 275056906 876425035 872753967 30380959 323483418 574040449 328683452 434103919 808762253 1026004687 902780012 462106103 800575335 271931605 413448600 488925611 643513984 833418385 1030025846 1056266757 32714496 671729517 1031569613 994400010 845568435 292946894 240394979 258581525 320817459 470791838 1018300062 49645539 116400920 653903413 1023485410 297773713 590473364 47635434 801251557 104471409 580075842 367800598 327852644 644018181 1044603366 139152244 635317241 168101735 489568480 197203215 299822685 932835005 718695762 536970082 145698262 694172522 229448219 1056341199 234500510 1042603474 907790091 807025177 624285044 390989287 1048320573 312325516 241521646 131019779 53141953 637975446 575818101 802621400 938142571 448565773 385281240 302387122 1063266207 903310626 587607571 222364996 315421058 875877596 249913325 236077596 255262522 616309743 575063725 844080546 731865060 870575201 99127336 595883958 566642203 268684335 617976422 33370459 853563269 500712058 28423398 418634350 389135878 857687544 50910269 785479523 235777422 328145487 214770893 766157798 590384310 612670490 469322024 126866111 996086984 135743944 719625107 82899039 87876022 71204426 208915407 453899490 141761893 441756399 915610432 228531761 392167051 893527721 485871131 900839162 900451006 388864488 114083624 225958731 507631849 296048693 384782617 164666486 919934992 368366841 366897189 509230991 378621278 986821122 391297575 190730556 189402863 304185346 489071346 790957650 502053212 894245994 780078437 351830105 6930329 319698297 1038577343 713226223 916938364 223186725 564622253 339159234 394630050 1036889676 743687375 758636124 609190389 376781182 408820197 658395024 597437233 928160486 396531758 343161286 304162438 871071350 948301054 806332062 914620526 319028802 383603893 882807578 431399547 590498093 411470545 88735146 410038526 357255514 700728701 985123336 982753336 101987421 829054156 464558080 660357865 637136202 431456038 859243313 450893966 462570062 13826604 810322510 494378043 416004929 545773352 755865197 838143826 194553181 174951427 726662136 660091635 789157519 618917748 1026567879 598169148 634116667 367421517 935904407 151138679 81846048 331323866 1042117000 701813424 18269246 976741456 99525831 150228248 890382134 545451963 373926984 710860813 174562881 720256726 448216503 371916352 118505287 303280105 212789177 778483053 277482067 629961075 484197904 1026892272 313543492 317106344 363798730 1007621757 529863230 730589918 940254472 205244592 876778943 1051281501 901658224 59392988 590168506 157153389 299770959 819141685 714720297 777973239 151868572 237904610 1058744548 332553896 820450667 640353475 361819794 439180566 359087143 500694309 332644797 151764926 862491480 183688658 1050191502 187245079 5704680 606197479 612770240 181126709 825634285 909328997 283287574 137401335 31366152 764750644 47311494 814153579 543436934 75796385 253863162 645481333 1035264653 565891860 145436685 994322024 363486581 929165500 286407400 442893712 16806065 325090070 512973376 658310060 926493969 215393173 923424634 404801698 974402728 568534061 76534089 16993198 906061266 317140178 382231105 1026238672 669693332 839041426 675997970 67304787 514355384 935327536 190912079 940089796 987394179 461606182 1004618720 591711455 1039712989 248868818 924434646 425717892 943351871 1058684392 638912925 733242456 973197961 1071140847 869157764 190790285 320270441 263909712 286371585 905399652 608781604 433758805 521181779 696410270 789013007 869251516 699634796 226825120 835735810 529926494 635393493 817171609 533710866 196555661 534724780 731798274 231512359 483030112 442773400 90026906 261969212 636115149 614755048 106202833 388960632 343767901 879470092 365831379 547531823 622551647 352556632 5526661 897383567 393043987 830969790 851852534 792560978 934041193 975852054 922857933 578704741 219819948 564097869 572537552 193816603 55055670 263562842 319699616 484443409 48805549 790642857 687848160 238704444 574740852 716050948 658429981 29869840 450328060 929377186 768440260 1025521156 871355098 150871915 428565630 159175017 114597063 803945635 292814855 542706064 682922883 464585576 576789644 754613188 1018911923 764540840 869919101 252686794 309891343 623532642 815906763 24198355 110547282 262470497 247408094 463703031 939175160 484709259 778974147 76451841 833958423 915378378 369063151 743477158 77577017 121676504 699968215 40665886 332756540 372800502 1068691777 352298343 176980502 500100755 1009244389 531910542 499828664 663979026 286701566 380735508 606470376 246515248 530915631 95180587 178815164 99672928 212779986 181333441 628878036 157541707 540800933 946642744 169266101 837070672 803950411 393000004 70829918 316513258 205878991 573108130 301413640 294351207 916580907 849471535 549127023 644972716 974138306 299768061 819419763 185569285 224220467 265094356 913159950 836403726 629997438 251708484 792201873 443444327 558926649 419987854 107645711 1072375858 673674440 324527881 142477990 314967180 359554054 797128621 191435300 658113372 245479180 281131464 657607448 966085725 116153084 1051707032 685668803 955144407 352368694 678060037 948928463 367987174 547814883 1061029674 892313885 762864194 345158820 692416019 730100892 785987678 948048234 686873900 450311772 83253875 541802706 598004704 126044943 303899517 130217211 454044301 82472538 581950701 760022266 695393045 429328289 255215925 580405046 188798362 406812914 564599310 446156895 222377044 174008585 465412947 64647692 511824127 476845927 843751919 959081311 393412705 52725791 79194888 904831349 714579899 29786559 377804038 153111694 884305173 402213610 689153677 94015225 445431381 55317229 486909559 773118630 951662346 954612545 973830351 270735307 560428318 841654911 732006014 450261052 661955933 704622532 20067937 928764925 139126516 816742831 540411440 7028977 448515700 584758299 475791169 746311288 892615737 819452747 774798503 54580255 375624091 597706956 601956561 619741310 277600178 406887847 395387858 264267371 296983673 682558583 290961857 480385925 363258197 204957180 190725369 982807181 956309763 411397275 402945124 865384078 871721409 681121223 956747117 247689390 563663537 458965284 81089837 824666836 184270549 450243743 442747209 983607865 356576031 311091533 955893755 949590929 29208017 1006784399 134614362 665964188 723062567 273339525 939099149 632586881 974685891 16939527 593977945 518935566 922056666 891330531 563600628 634051924 877878791 949860942 107272857 562609540 983020433 999397957 223264011 1042955186 141005942 418225279 289024710 891868378 339948628 927711623 648555683 86167589 829563256 1061234774 217208628 331373165 561705713 714087816 526483536 188958649 20011198 44381712 644323345 307612268 379277446 222577484 939142455 445802794 511957131 955244124 945222960 266631050 354380108 569236748 613328549 353297502 387228149 1072837039 459171442 108194756 512616184 345993409 590870383 528278902 1005188367 461360335 643708342 1013550737 749957700 617228668 582528448 286709718 613186869 735997931 1027499925 146216402 712720151 357285082 797337807 567491106 336497980 413854958 956411930 572038985 1023519302 441532096 151824599 209378051 1072975573 711277152 99575453 596960249 793994143 613549914 700949701 967828172 420102430 879041465 503669747 239280548 517081916 861273939 369147355 723262779 483662332 968442011 954374902 745163221 95697110 215473693 507448638 416395672 565532605 221241620 993739581 221890489 764083960 153363272 861316919 413666449 120055896 942470783 89518988 315067242 67416656 232707672 285991327 982370771 547058453 430663164 320382670 207413343 735684132 658850087 1006382031 121996004 350241763 970746518 85443964 333654039 120636221 159895651 853987022 645007191 153830085 1031182703 546083574 209768364 336723883 428586450 24328680 224209677 164037503 294928426 362115291 18916771 653564706 551727634 222986619 5162739 1005950090 839424824 185134038 654329209 488214963 294808315 630291142 627739905 565782273 970372908 638465151 107780992 739773750 996870751 279630354 156640923 868873810 153439444 142832385 865599564 287326861 400708259 704453472 924675631 984146537 468191027 473436737 144839288 1020364679 799376383 881934110 920881525 264880621 827846987 887455575 1038859734 657798043 762403521 914534573 725328414 1069530678 941284189 681730041 824529584 425507940 210525577 259779234 216501133 728166203 114507781 56063062 666392880 1040827544 1041509813 318108793 474718626 195136842 554802531 238467708 1059972718 1022870517 142101702 116188661 946855931 222226575 1066263304 620484047 587940787 378429371 939712090 984232542 25529995 780671343 222407865 1038041553 973607542 27973441 544724857 152354554 918640661 329911790 341771579 922496695 884587754 1065081176 531289069 25414429 778473760 751513900 9588372 526534893 204305978 1073064075 865404522 459619433 297254004 318601036 650429051 465539278 899135688 932642439 2771339 610584696 771720989 325355455 634374989 112299275 831942180 972145762 607009621 1016596177 563671722 615480737 725315111 1061602172 664718876 679260124 893822835 448239905 680228726 131655067 881251246 264567835 484050283 15141976 614058872 288711762 72512509 400520926 926130717 435112892 619420064 889836978 388192461 555500056 389353613 48333857 496625848 953321702 1052658116 45138082 138425588 597291628 781524264 476282330 442393342 512559906 951442265 516631347 217142015 820018024 187701167 321019445 862364319 749077567 159975825 938797673 167466961 168745486 408578389 1015390414 879166209 659519793 84437167 672855029 292522673 924974487 814741475 692937714 1031783546 797437463 957563275 509663827 261646835 510409259 380612644 212803660 688784432 92166287 914944345 235341517 80760668 612329367 26366521 593321299 901376428 765404318 757541921 662646918 234990186 943721649 349145554 365383918 540448797 306819664 355423008 155632766 595657578 131066045 165687013 134030466 284215452 135156628 1031505804 691814831 241147669 858246564 423307934 234922574 793218618 618144165 163391000 529019188 883852609 145524676 948898240 988603832 157356706 287486324 461490801 577551811 320753404 251273577 806832292 922374420 161947643 209387501 518695899 341247220 1031268091 416730547 492746715 922511232 856240231 313919821 46655820 855778079 318272575 9265459 574028921 280373240 870790169 430957017 241952979 934744553 570178722 611719594 629786228 459467574 811636437 561702044 60148315 639657711 1052377813 735272787 31418066 999849258 122458237 918784236 770186322 494391160 439023554 548732393 986035496 1011022428 187609519 515070002 470220409 226942743 941344531 112400079 748355404 832566688 473249253 731880527 890543479 379924252 337631368 252112665 705171332 591975050 202599010 886056496 563349236 914680515 608332602 1059292322 1047853803 98769664 927147104 518183947 478782096 400414789 517722155 191266724 786283062 1070050382 584382170 148720666 745663570 659895238 818534720 353764091 64107794 590011844 931026124 550440251 400225638 603442443 183818871 772243924 699634315 534149968 63374132 522426050 692439384 244288082 664147587 379472532 475982514 1025119731 903027594 170652591 68851751 11430268 172834508 853923472 222746023 58245445 482226936 116714191 987174495 33327197 425315775 666112098 544018243 355882302 70677713 421321387 79412584 424815541 783752558 460928502 488832768 282984349 798565436 349163150 594548430 537296232 735168850 812082849 466922212 396821660 472228298 57179 893788475 76788681 51857094 925370597 310850553 369793715 373492778 845369562 727766263 9802188 178028952 966881510 512063161 985688710 1064898135 1043289266 524923526 896601477 787433780 741965234 703212044 770257559 382328819 411397647 562774029 1026641575 43897455 164846472 150219796 593608475 1058723461 954592242 465607139 866496248 691221487 478428139 527580080 964678514 495771199 772296209 281269165 488706981 457282128 5124657 180590096 865344941 105900456 192834275 949175699 4915119 197248564 593208732 271314565 1048786608 523196234 864443098 105450054 871396483 408154507 560202356 822651674 635955057 934490689 703755448 991911015 702116402 358421198 196062995 334379532 93681248 237545264 721871417 418949410 186257926 254706744 1053042320 947445092 868618440 621749095 764629817 420207540 1017409438 1015608395 709926535 40518498 906370977 632679911 744801708 1021455306 256169268 440446620 56540737 401797240 377351494 943012622 236752123 260302657 300143425 333685109 627366150 1066044022 1018137834 1037172586 597995117 406994234 657265865 1066156787 145910890 310112926 758651080 203078603 888632067 234289688 1035410086 903647038 142328563 464386815 242537267 149607071 414657953 829321396 995628814 315838062 1061049136 24969107 556234788 781433779 963519293 1016287792 779884545 574599565 544932666 3004505 912020911 786524984 181677222 455899685 935981246 308082351 428423582 152780000 385144443 542654273 252242644 422886639 570642316 178921620 46963975 455449637 704413582 921753314 79415398 743273435 369227466 478321490 73877037 344734422 580459 360657623 217277761 373366527 321613811 297532524 169242011 289569432 915270677 409993014 775791680 993594300 447325780 546423978 210545195 480370883 147240555 529181550 1012316246 723745106 483548416 140922502 770004544 402456322 648352159 309811703 330809477 456370909 252632770 476523652 65130458 1052932172 817823515 432534813 189172401 867419610 825400200 1062217355 328515258 543930043 900333369 768998319 374791311 718087549 922658887 396539104 1041259791 429772729 66308197 429343873 250144186 751523637 476252711 249615641 290052504 493680574 348363931 635215450 596642459 650616966 521849992 710443043 874428049 401323545 421140221 887528728 125113047 423593621 639369926 767225014 1015867508 938086303 151375914 26203938 1018289323 979375185 97855800 1043204901 429434833 604954883 984042511 729176629 357799880 488723525 534858360 249871226 82134517 178651663 70702288 760140179 11081753 447379213 962283620 293088585 472029794 153591973 974787431 879019263 597999332 790397475 785283658 471823126 300028246 426171021 759057307 1048476648 204587687 914465728 248450522 1036108215 1032463247 1010041739 803121096 1003663422 66586928 227995973 193796823 232936101 550787023 350503681 235980188 155952854 398289981 710390957 593075029 673954061 264175980 690227014 1028034768 82047957 607870817 337645842 744700938 504217240 419526436 241655292 513327097 599984541 673786101 717354380 407593859 127465011 358204942 780743965 381580259 861207169 429881897 102820088 551994787 239909738 543694260 689040463 885276647 800332852 206818450 2979360 33243553 211671918 787148322 109557125 989284873 223130294 779995460 412058951 629123412 826056483 421609715 600805435 165796196 517855056 694077187 1026715897 884952189 378158947 478790856 284754334 526970607 403056445 835944142 1016873727 283000725 1065781239 1039881772 916507253 854162981 878701497 554111613 565871735 954031474 661507626 440635901 562828345 662844750 522925555 494584834 242162069 973236374 872422040 718984350 482346641 765324399 94772693 100476901 762636460 813181625 700958840 220991643 1061315159 338425253 516542060 112307868 545862245 494840298 515056408 99968462 906924572 538032455 487123079 523664481 517270825 97362256 228159191 425553307 551043897 835287060 592353187 233408802 953868270 382407241 204264690 830095865 694306839 308848109 667190074 793730615 951335419 1004633272 11030714 71626599 626053710 696334340 988303409 434122750 977027741 1030599031 14239002 651826654 23274274 99799150 17790801 3738550 596278243 504813725 25541484 486466344 266730409 952913370 549911633 234062650 764489296 918359666 592304745 356672469 292053408 872224497 88093076 435413316 154666711 848486539 994510255 971556437 435704435 470269749 623113090 84455194 347934797 785257506 189221790 438714238 261487226 499452016 109627073 822572353 629648463 668561041 864151829 700398303 621316863 331568412 254904450 175662130 435911201 845534430 315630298 35880476 400797003 1004143487 761417953 861731396 333452367 405739439 728558894 511544150 941870058 589608221 49749817 971139695 724164667 382838731 331123862 139067441 651725256 338875295 671407620 101590078 72457291 408099493 633447045 618270635 640683097 980530990 884159805 117337128 197630283 542873557 723103084 521655696 562480233 1031805022 619035899 182944039 495449691 401183456 72811701 532956033 845686406 61323653 935658245 852687664 43551083 927878858 682813217 596814226 15919687 656639767 204521316 667226405 513673472 20829403 989867768 996027127 89871967 900583278 448628375 999084410 721284974 512143442 5837634 663844677 269659059 408693050 140763247 828886321 328159823 736341514 407619454 732792789 845758127 356759906 626597792 943173926 902507310 483157633 569120711 267057430 586722466 44595393 281396274 26571136 357151213 679430494 501575260 192943358 1019090433 520344813 1049207678 996671204 176415564 879761742 787960904 769297329 137056541 864145245 75551513 426025179 772225836 643407654 118648391 331932094 507926015 374887165 323118723 381561732 539755495 988675659 47638147 731568046 148383499 291184647 95404317 1014212710 801037659 394599878 160930998 1032880270 311345955 313745094 467931408 124294298 500614176 279003204 754789723 899646042 595204602 484722707 813635730 108517002 160532614 658732685 270220311 285136988 180022275 476305790 402477743 183987146 741841481 913313037 1031505690 842022354 707037857 724003270 1068468977 75434197 203555608 722260642 800012240 457510067 239020695 881542509 348907242 942572087 662057771 1011993413 174091814 410499521 693330506 111859646 799042801 116340127 895236518 46525113 484021452 792976188 242983988 704097438 695621110 824431447 954125079 563136716 671915808 54965277 698600158 787663965 821014130 952726653 670152472 376108103 92390349 346371558 177608692 451901186 1011905981 546292379 498113209 930517930 868961720 371664278 455002780 699011298 278931688 562522046 905702885 587841056 281104598 521328185 561584802 546032367 319000872 296276894 669625526 925377457 873770776 1000793087 985352619 698628232 266493062 778447866 730520805 293598238 504435447 255562178 932411447 187148339 1033307371 420144500 597158327 1007913578 987257325 749908998 123321467 103953024 141072851 760396605 794912046 747999601 990956387 18537837 919837766 957433973 250141779 540206222 218307494 619488849 1063540288 727654941 179644242 868798662 820735093 821993901 664547910 296701943 1065254530 114516838 782082584 827440019 341904793 497746998 870367297 514090286 1049073933 883697997 69329593 770528388 854297015 11913804 233462580 609031829 357868002 141852087 1067110274 433574180 270766294 281779246 418290347 1062047873 296104384 5059446 522100780 895686506 591360971 6324372 763557468 41328253 597969788 137267950 160932688 134600781 343021843 209809883 334763597 749803632 418357238 576067182 326380859 890451762 65050077 206781670 744634089 742971912 756041297 147765337 330779513 757817213 662339073 323119165 813317859 139410742 631263107 910831237 57295732 947346595 235547175 186152671 151153359 789394636 348288011 117680956 178436362 694636757 234710218 699609953 789049466 475608533 614289330 1027127508 816677763 229287472 792758497 779225997 627681618 62752991 58291588 867369881 480585293 1025734927 262308586 815723996 181087749 914646657 665622383 417748451 700052023 1023825585 1020144542 293290680 37544849 770825023 657196375 763950179 471487276 987248737 606531680 519309986 104205999 288722921 818180509 367825218 594331036 888103592 437882093 713916895 333879377 275953517 561623288 855826366 410748361 895047665 356806768 233830671 868152617 85597673 78716790 790793628 332275995 512398585 946429433 188511090 627039206 273734538 737273907 57149047 808616755 902757480 232780293 266323372 1078470 575752284 17796568 812064717 604783607 852628910 756522932 773059153 377758994 348397408 484436984 660290742 380720347 163013813 866003660 1019377383 453675171 804408537 451512860 1046745803 753596615 619425769 234594097 440602930 484897484 983674246 938633736 122473239 1064621651 204534741 1017868715 358278 963519552 1006601493 439254389 320562482 526298174 178042557 107866605 906934363 418301688 230782539 627718656 231713182 554493969 337126403 725175109 66695858 860446193 1045851141 419878930 116383677 286386695 351846520 866366985 1062012870 518821228 81042714 286497891 852874721 138810989 669461645 1042382641 437090098 295688949 995264406 1004513614 514411492 208364376 540504406 365031393 426188698 140232153 940868895 1063255711 395432855 89529489 794890507 777694970 355755472 427317206 468827834 717533939 520786996 331983079 770669638 800034908 795106968 765796821 692765879 458301864 246060406 202120667 497784893 805686212 520893334 1046685136 876802815 1027605995 213058482 82582149 35212166 180731222 897032121 311796965 837075522 610842551 569210485 183087686 995599296 789298695 559115712 257314545 365972236 706084740 953987489 261946923 231766668 921090084 987868827 503929963 648067004 853211119 874543812 114316284 931636408 137513158 611085744 401490550 465722324 469550269 753948752 490577774 867296582 217047740 639576093 283788942 21714861 693708114 777245482 577583492 8854120 159534724 1021492217 471076939 898302467 30507453 454063289 336115425 376195614 1029686351 1121088 805008929 986647618 208609208 1004137624 633310567 579177077 636219438 355465882 657178988 516031005 394149801 1048742342 182078918 1054153424 91490337 353207783 711868288 922454389 845600524 1017492644 234872110 446996587 769875761 357281672 227418265 600718445 341798429 424422897 804427893 536348271 916383167 804158793 844990741 606993548 779921218 3147935 1058218743 318443637 219157700 97681255 696161788 455388020 229828357 393279521 825025398 700103993 610967247 969985921 77691509 574712143 303018116 158889694 836256947 675076233 969802782 575007166 18222188 924458906 422640456 89709661 16838570 893249333 292157346 559178145 614770469 665107959 234924088 395529057 775163161 117998712 697353685 408413945 692766099 317522446 606632888 383894213 830799387 535114131 523806906 1011837218 920554252 1001668022 582981696 863871698 100311273 999639535 470253413 754337367 831728317 1020679291 132888341 199811568 975763545 866229936 197484008 651540291 414263613 658127643 632979386 215942179 162469837 448631547 427080658 668268899 1010432440 846763297 549238489 265063317 225565405 900243604 682410803 902248263 854555289 405464774 572553566 726690031 712528446 804907260 97398119 992366596 301123482 1070931899 971406653 261737379 588247020 426504074 561748103 1039409075 946638528 298071104 830918430 691470278 273918719 425687368 618715084 697105643 773243149 318157968 833695814 392529252 832871700 335013712 507326409 789336256 333093591 811601351 98435716 442542259 325429137 822031179 522547206 812073511 722507662 351517946 784984397 258031033 85880263 813733945 895521128 347501580 428821077 1064396781 565862882 951291272 315560031 380779707 893879912 55046005 77572761 512343515 302569089 101813136 1070767742 984832308 833285478 485458314 622317255 206025814 966125020 437494131 533523230 851932018 270153732 575232904 354173705 710686906 612010235 867293297 899584195 196956338 996382557 962209948 115591786 577194629 621622660 431091602 831671221 301404765 753772946 949732024 562515312 878267541 899866677 515170460 1025743892 118634125 396029509 581731202 72341656 810743450 334360740 970565426 419271591 501479880 810651178 854034764 874292840 922698617 162876160 386133598 754428361 387889274 360686731 622531238 930602948 724298984 655762640 644103426 817268141 866570880 128387708 987192111 262786310 999479232 662630833 378769158 193887673 364513015 331029629 837466688 516740052 52810232 400791661 646732614 428771501 306032838 362414053 55662286 633990282 756051522 1073614985 212376527 415836628 509635596 357517457 449762082 203849132 951010492 1041465138 456208361 655819297 760826414 750789500 1021425145 59735644 686298971 116247468 354779875 70590224 753525799 73374365 54680813 471900145 43367750 20903935 357160373 225483791 719536571 850587186 160474233 1044006723 674869990 628015705 25113611 93295723 89720656 309808235 56667213 492547677 246789716 6708851 363219049 838172471 551454217 462242782 339329564 814235845 635523239 897555992 1059545000 242205758 734054621 1007716376 300045393 806578012 531267143 175582890 700225327 324107474 732404961 702372065 71217507 765695477 365854136 849895687 711804086 504546924 329046270 1070601192 568317151 49100683 143887308 28482127 745730292 406344595 369441699 336298245 70486505 407675568 323015635 47481620 66337748 733214809 827347429 601741896 374013169 38501072 1016766912 158604578 438638198 105649854 440578918 10715631 380796192 825497468 463760043 848342024 191168997 1045140001 552663742 888926267 882780269 62722702 118977349 812342355 1067251246 699988181 380771260 614741900 648089673 900390062 588542967 556514864 916110281 909001213 1032909486 930532902 373484899 320062827 1010355186 607274797 1002958952 189887773 750013865 115525806 767632720 1017130738 840309166 482512931 937189420 321893638 1057285852 195938849 881382984 558953184 653131345 182563980 81227721 174818784 380337611 548541420 892852111 269904832 713783438 885834510 521599950 734815143 749695464 255066311 161146091 736889236 161324422 476722839 1029038180 527931084 225091177 45125103 674223483 78067659 358047581 291141571 365294505 392262488 722860986 750743176 962837690 632057452 282409229 404255238 74468204 782030474 304904429 480037988 544513223 575692390 401316963 1006138813 228844581 1021807408 802600846 265475718 974547798 953714990 77458410 221496023 557386930 427872167 718852109 752162508 971775074 398639010 733263125 439324434 533306238 594002116 568371986 14371956 666429310 509790863 577928251 908189943 70895516 704347453 310488599 387034151 765532761 700542028 319351576 396594760 198102267 72790670 838894943 732760725 826188671 864295637 345752304 345078536 670981463 246344791 1068267207 260138088 1055874630 248581513 901674849 895700920 347186636 875129521 923632813 853030345 997754963 407944408 622717330 461417603 106329993 66875140 910994496 671959725 904829391 444179716 422319142 834031943 565849389 32707108 993218988 385842342 301020651 366915837 718719671 974368491 1046089210 831941336 426870492 1068585210 818497596 493099935 103170536 977798485 626408318 789440278 895146557 711298883 555265391 521928782 784909561 707831823 648529067 797252264 24949920 583463669 677220764 647810835 898565733 297641294 156996786 66593426 118396852 290493791 1052400688 256099498 469891117 543926665 26119031 1009454191 916709267 140353181 468194709 122238505 137607252 552144241 497927349 847014891 409359020 132738580 150933042 187047293 381027911 367650459 1003957783 482353827 822682293 1044674085 178620578 4520736 503697319 792504979 259049815 134569150 987328750 661894519 936843388 723183941 995566982 819846248 935074739 269436252 943795197 732845438 751890031 350349627 338473619 913111624 593203480 767050380 322068369 769871878 981424956 849193498 446534358 738387743 498915904 1061283498 615657381 166216777 480041486 447829202 786922126 893465400 930890895 678319093 47470083 249046456 470008192 336123792 433492768 238728905 951940260 1065568720 294256740 228822484 552703811 208377726 373177784 653565243 625388795 141093348 876599005 1031536923 739579538 172712562 689624110 117979639 148560431 968666833 565807384 405381012 55042638 230807971 767461915 132789622 210833426 585667620 283137227 899280335 731479887 1045833806 705677192 866415905 752336974 57197409 871552219 199806579 360221806 429991839 715780736 91289981 428901134 147289769 720331408 352964506 344469327 500985373 1063008136 262888188 460675762 713687465 1016888865 421067273 927948579 455580322 820768988 895875376 635425825 773054085 170458807 384280783 830292647 660534093 357816632 820763826 927420464 90323872 80655882 600766310 721505446 759708965 1008322537 542557936 67174126 459786888 424338451 413050673 473738732 986401399 477351965 849268807 666387625 131833138 196791429 529240021 627035906 1031325349 414242941 477049599 929400336 264598116 364243249 206707076 979016825 161360885 693883348 762757743 476867079 275220258 28433864 1016286648 813522035 241486285 807674810 75600193 587209890 52198364 490568263 1031852280 575477607 5850773 564092749 181169466 594629353 36060347 828896858 877837023 346894300 867177400 327894107 1058381222 432341714 838841452 1072025197 1067802849 394443058 49517526 1055905992 1051641300 1042664578 39381708 71349480 776699013 659352679 874810902 600350095 392686006 683455097 822152686 532442788 558225155 389601802 284602384 974740469 102912972 864801401 585976595 157201374 90519629 525723263 664219181 863917609 24520356 58523324 567337882 460468705 1055951375 730842080 592134063 965729525 896176915 573257623 15960062 366062559 19036680 870520219 460048279 136771540 103912941 973462518 6916292 266041036 847960047 234875723 169148831 289227626 318346694 630956068 307105235 957444176 917177687 54030792 273280822 391598718 663209146 348504144 265435900 354610716 521683199 828109250 339051309 244481467 872850696 630427331 786861171 836971161 520720942 866328440 555144118 931722022 618287397 729457704 876767782 520127413 436375638 995304695 954881972 523932254 841392867 316180269 1034222729 928511995 709554176 134194624 729287507 871912319 152340240 426045079 556664626 529904655 643416483 1028313639 292584660 843179421 972825344 204659540 875795321 39408551 819306465 867389814 537074133 256617632 1011427237 603469670 584582183 781789857 491638863 762924549 531178079 629430024 253023200 183786435 650880130 759919976 524306531 142681177 985023706 403545353 663383264 278502047 1033986784 322502072 831521458 81022885 245421352 596620208 810997971 297365317 915769496 802277348 228430211 437369161 665930011 420958393 594164169 16678997 372652587 205470487 332879010 785269832 664940649 186467221 253221306 440185746 1060812741 924412401 909672878 370993728 525028711 443048062 621263857 933716531 236341177 712095094 289213139 180560291 948660070 828172568 294873644 545069861 691103900 210949290 699314136 98978718 93656574 1055663383 619644584 264732136 1002634945 246317033 616472495 214553967 956536818 566537197 562357955 80076349 91703023 746463632 77191215 927067682 559284330 557420714 775637697 904589671 837561675 491490285 669815064 418714655 227502979 115977759 597277865 924447379 128902916 108735842 8391317 969475880 1062480382 256596397 102803844 771681209 280592875 600547679 1006596313 415015898 545065649 154011304 203508332 461043022 509471947 54967889 847046910 258458263 461336475 892613218 638865188 455515659 996634172 1070424556 811798957 497571235 29368080 433251389 266293441 852428549 429669223 874136602 149987655 462225048 961550429 284692427 23083528 964381705 804977723 256326899 426742476 788410112 635525938 113507183 825691270 767066839 57599777 507692119 636100053 295203652 1061460089 488138020 771417194 657283560 211508723 911303133 352318441 61034276 427231264 194084115 21500583 1065515762 1008970740 198752239 456516976 655488964 535621051 367445862 725116584 497415471 1032101449 916598372 326438113 384752560 98301008 1013632629 614780961 688954808 495263556 837549193 727597511 678951154 174309691 5861968 629674233 606300586 123574512 121685900 893075386 338442539 8746978 156963669 186769170 267311206 520197567 19450049 369033113 959737605 337973758 562181586 1069688885 332006345 27682558 114350594 629140205 498842287 90217101 1041973140 721088023 94493726 373319563 322652439 810942804 940966870 5843070 817498646 763639616 182701351 668994788 1070494005 1025877718 317190451 45949913 718139574 160142173 26565947 537054734 964728542 912949695 338090359 863709185 120029180 317492373 512923189 451106037 80371516 505195492 147245836 50202526 753955517 641257867 160043636 358019089 461765402 1063349432 813850665 83212011 589678038 790830517 988211072 452504387 927083425 128936986 41111263 667059093 696277019 825894327 481445647 814436904 32004141 462838884 81967163 282778777 836817740 850633527 396679859 113621376 146252817 419517858 1019197075 389199485 28938621 906665807 479254107 963612109 645535607 270906360 684454487 239720866 530862075 730976305 34289546 561267836 1066075119 273356460 960594986 431221246 601459483 622095162 1069972090 286320034 792542082 959795741 492228394 962399119 403470919 694618735 796524617 601415864 543754295 901162735 12951765 238229503 553653655 614379582 580478266 134900206 790220783 1008890115 724676479 743746712 54134132 777899586 285889077 104341647 245001062 719393587 706800188 1069204422 142603967 389483532 916176770 161917139 52473303 779224590 127598947 810078495 646538917 796566916 945313657 393726457 299586509 557205092 418709061 836332655 918755933 672950120 215393291 823603195 361657616 780479174 671766913 1046608404 884589768 358958986 128004932 623485997 993354939 918398329 524150256 764343993 916666765 684183689 47821885 313545116 516526124 343605757 701269643 839015933 1071783551 892710769 590906266 882520063 718952881 1039364349 534593971 562531304 93446126 559173030 415522518 119683761 2351705 169826945 353872316 322704084 801457541 462857776 494227782 602238263 208872405 296438714 930498310 368574284 60147580 607493716 443017833 218279347 1016139722 922115163 562524112 270381495 446160940 773468252 822532550 472028702 645662908 203515740 771850931 525979266 764608651 920605179 1008129339 736048633 660248704 456553660 861786064 531998277 960955922 277175145 750903054 755105197 627410624 479811965 822724711 328385278 965318846 264298702 238824211 228143804 34739857 480436906 171072680 58288301 212278731 967926703 789031707 868109684 977890817 843381566 1050956241 813003630 226505588 756774952 595082390 774431625 205308802 562061548 872524432 80458478 176146156 481317450 474443351 209456640 531906704 542241951 600449883 664324413 1056378793 259522146 905765340 877315716 536785815 1041865442 428777834 708869485 901523758 1063788575 68323083 758624628 463450144 254190388 382816726 515461620 750563434 153826775 404718202 332666346 573989394 804707514 955333891 554153935 884201550 395473016 3540371 147692318 1001568360 292263200 552446854 407702402 795602201 22793348 1053577892 944116845 880236781 28210690 695899051 199564452 331819216 440753476 821504280 427085077 878455748 697807482 695556055 251447362 568839776 50497778 963621431 656047911 533902167 643208894 688622732 988728267 347789277 546695745 820695173 483591920 1049676271 361094609 77213190 714616590 432149528 869733255 658964744 1015200156 689970416 401917199 774671749 564190729 358792459 87821105 1742247 465330723 453559810 393525601 266186812 878983917 703456964 26375703 201722173 128298384 610322170 162391391 826141052 200484473 682807616 663022953 30221337 858417029 229394533 1044535911 996294287 219061594 436228699 101171240 978512200 771288394 810064985 965166768 133540483 690086494 68929944 159493508 892390340 47599166 475880118 27132043 594574660 635357141 610390597 486191032 482489544 837481424 927319438 1607355 737175494 286368987 560315246 522578849 376710014 902197290 63173845 271306652 384937846 470020854 798525678 861807193 815274046 76018252 284881130 473792373 473116334 296548976 235583404 16237383 138590395 62850192 702631336 98403515 238576247 306139781 175740441 218056696 820095782 23369187 657298942 395663578 974490741 77464868 414203507 128487994 289100172 1065244385 942045319 857477021 692404344 30303842 146767240 101396918 485810590 1071232616 723095940 353143182 480895599 957881418 855293920 374211941 585472439 117985740 1019977106 387771274 386966150 203929036 957883373 1065945487 419288353 716401803 984871752 452886846 899411906 36316935 238050740 854414960 189655363 446093077 924961628 467325815 993383144 38700860 531265731 126552858 170322809 1056876638 100403704 1003198064 148489127 642229619 506318984 434351154 827469185 930844613 584780380 413992377 806268616 416651837 759132913 723115577 107023959 809315169 662184658 81607129 645864615 531299113 407555893 738260613 675620654 596222927 240690059 152006650 958619607 876541643 362036931 601803714 711842837 684656670 935837278 14240310 266379380 809299831 831205692 461604916 301442044 786457116 862397298 850253661 992547185 276784749 399801678 529572201 983204086 197153106 445523863 82016630 766452491 884212870 594831713 730482849 240287858 572198567 95010742 686898140 99635384 154102321 118452200 730804362 119527133 534591283 777428177 79285410 915644901 899772584 187076471 956388281 335613941 407481148 853494595 930143386 264409530 823079938 14694768 197424561 806252489 339523370 942453601 62444365 145925512 834456243 701251356 473437681 784815443 44844542 195944076 647092897 229900494 123573661 335385775 180998234 103726063 772525754 843921809 692449551 509615286 608027504 606481115 855124883 290468631 637023248 845361198 767398040 1043792307 998993222 114725250 66567149 345233698 701902902 257487464 394778866 100178209 349641341 358048601 315856332 726825361 205639629 1015309442 99055660 219700028 478647122 880574367 312722177 319649543 738649961 347966849 655906203 227662278 667302043 623005297 181189838 670800866 561982645 649213281 803664263 415753622 460442772 1004788238 340702048 973993997 219427238 860066520 323466603 198438188 521232836 532917886 108720629 1048569220 475579285 694390860 1001622906 43552334 537907169 176052943 227833153 932023 215690295 53579722 133546656 199828836 420076181 94162642 447913839 616133318 436122381 360565359 1064523317 26647273 58686140 600344721 205307976 946189070 648955499 663116807 33000919 517648485 665489174 816421767 734902460 398655464 30682531 384164736 94163509 3131791 184556821 383205083 331003244 131163610 861238956 272001769 856182202 607338150 278665801 5952187 906771771 399175474 1009248070 105279370 506097249 858170638 236234071 23486971 256578831 756241846 614952941 480574308 730964213 202614844 907181912 350471614 113318638 1031514087 368378384 146058229 624180337 1000414360 1038106654 459798026 430298983 788468416 636298173 893201927 33398251 117041300 460214993 390318348 294319935 204430133 90956899 164083697 562602900 877063706 1015151255 915913161 1065993560 659730633 263192188 604254430 317593493 537589017 826292356 936368594 278913154 1034709984 253796033 165334562 1028263121 519319832 570937607 267123829 687893536 340741966 963111131 1071592984 1004439673 812683851 670459673 766933319 981449895 1035566884 1024325467 802061882 833351926 105061341 335791439 456538996 285631359 268570529 397427523 198710883 309284054 690537748 657914553 390854839 295703009 361143967 950686098 677011670 314656276 454743742 652153250 999566809 1053956844 603967059 300925444 750205267 824264139 1024241441 471309500 753957130 993962423 866331096 603433235 468161957 665876051 982070010 328380768 228389875 11192930 256581036 522900015 700020727 646226809 354183142 423085524 102690411 896933964 911989050 134175037 778828833 279889303 210679850 701859460 945467620 972872019 739740032 67042502 515631559 380329567 903098763 330091578 637694597 1034094128 658225456 533526888 196743642 498009703 811771129 971499949 971437810 258055635 451460836 1045683068 836136308 207458173 99203509 905885026 1043104950 143084244 795946746 825066148 277288859 907981218 229032992 740822508 261162024 889640314 390484606 24158918 705598843 1069615434 691918376 14766030 352212056 544194548 783260422 256216828 883717580 272655649 238034446 266987481 130737728 949227498 281298272 839237186 58492767 214600228 66774213 872505166 48613292 152451932 124070482 856690905 898803527 854891309 547539059 734018305 608092909 378379302 136061952 45092167 802787482 65201613 205917062 605180515 1057227850 255248764 949686181 162085121 588977450 132457521 126308798 387620488 537350677 740718489 562694558 799389826 497306541 1001594361 253011068 608089818 581135283 863206754 136571465 243752965 1039003873 566903670 714715643 918091453 24446186 143379378 567271045 99356931 517110834 528301097 824757679 562439614 537623273 18453071 325407592 200858079 447708996 248040356 1051468955 1047194811 303112626 440176985 352602984 305866008 205440576 540593960 995396751 878003818 779775773 882563867 185374225 566346453 558033218 463019118 552546939 733270709 134979298 1019445310 390794603 273087407 132737591 711176298 840266420 754788260 932075723 547744988 869673563 174527527 50408720 903853717 429859318 118267730 487806699 819362199 963209683 49545737 423612611 248949554 382511226 733341010 1022267885 907531790 840486902 1036706104 889027269 454477467 271002510 356260133 137445798 691335662 214708629 610460806 841226862 118288043 455775936 187598349 573042181 667501544 444271818 545207826 509649034 750054631 115612727 192275456 621604470 320025031 405869117 843925812 1059187181 916573758 271125655 858058103 150526044 203411177 970336533 475821936 799624989 892821620 644492730 935078722 866999396 415652983 937322732 639161707 488860810 432373252 298391871 951074710 852047221 301474841 564953191 690083561 1054005095 1073650406 238149244 682747261 13229353 702272224 699184295 139258050 346767178 442738475 362994916 832726988 584061436 356875254 266216811 559676520 489042190 709367712 696862851 23643455 924675178 655149172 740396910 987431723 705255808 387465916 602576574 306905954 642496099 684525742 171073490 682047276 616786067 202902015 459806634 948231857 766010211 188657170 840288647 976261501 575588807 432463772 331309434 129382891 660533808 744085934 27236455 251349561 646879392 602489696 106388285 992568065 754207755 658084376 4699992 477662136 441794385 828771998 392949041 11280846 1020666165 637639252 999776908 574952675 376514046 858787415 486307178 371459021 1068699317 838378205 809253843 932268693 117631051 693638567 276677048 236828618 413571668 421450905 224495443 490373419 476158535 273017915 370927307 368643722 566216585 555375568 300530346 958914331 528620997 317739769 48813511 53268457 89559893 930972146 558025357 396582937 743972469 845720139 303188506 521990111 675034267 830980532 1067772485 195029154 913816940 847290820 329675235 659580609 759060303 907090629 686011040 874872885 314606997 404383058 1044272477 810728723 340657770 231676379 953551075 880844561 440907060 983146894 878129996 613177158 776998880 546904108 929382096 262902557 5006006 650267884 462958853 401662192 855612673 566935159 270618685 934463247 1027653030 849057881 778318049 434391737 201155297 932682783 436700542 538915121 87533483 963716689 573368103 1065000177 817530528 818079064 1062106746 308252125 19734594 1045201706 375605713 609508614 909135407 313808701 485124289 121694692 372153580 968825107 65188939 435399579 991621712 910539503 539695081 333418490 360553739 872355940 962289504 930375676 454579949 810809799 540160564 280580464 625910635 125365465 607311428 974223354 747607471 539921529 181765821 820051573 1020550455 677702237 860689667 503666817 924793984 637775611 812252950 483155708 624323509 1017758975 893394442 502166641 265906698 288563378 875164217 638945619 896247684 179924330 942307810 673160345 548398617 1052651953 27924737 1073591220 680337956 915679978 708689784 448481058 986826599 1049676983 952886750 231987526 964690861 870352862 938855604 327376676 7689142 864814094 432044934 608055355 776389148 720023691 603830101 615540895 481445571 993981389 800292315 656139976 761749459 688576975 743970304 16045953 424139486 100308732 681175543 87269456 632711351 694937911 55673838 444256178 978293976 7615115 736495293 665702448 36364978 90236114 550057615 703755227 670470544 950903554 656595307 382335609 751087621 782728945 192788809 114273610 1065729850 192416452 910194562 351327988 960915744 193799804 714288766 256548174 550385677 566542146 193626399 66676211 750399234 330388138 254925384 631338312 669323234 16333887 591059701 407603109 734896306 732286795 779331110 1024183122 435750638 149035471 488320376 1059185110 559586121 686916535 981778537 333392434 186077359 288371276 570975658 762031201 133470706 401681349 803286476 744601047 818417071 1053284868 605349709 723087302 653803687 3833060 188333696 688957402 685880876 483188535 8838373 5431988 284706528 113437932 106070986 348192374 499205034 488851465 828216211 749917168 325361002 691740905 687680575 794276543 624736603 106258838 656797090 523909854 18484809 551546444 1029648501 991212056 616432277 338615086 1018571158 856848198 901984168 1012789560 944782467 978957287 36702341 596491405 591004258 437341810 713060349 473905428 210658106 243132184 321982710 735659146 69882763 924349064 1068160593 48829651 909938137 298865222 270866215 690636791 992972950 59856621 688159747 798963963 824941961 826210558 639844153 931359183 596557359 506983029 77501681 916838432 219968596 596444123 944007137 1039215968 461932680 660063297 304487079 231505671 531718700 561874836 741945969 179986810 125307251 1036380562 301630206 1062016532 986700447 145034688 333838939 763831030 13266152 328660604 41201184 1031581183 972590847 897591615 612554775 141113574 832131282 117176905 968752721 1050362096 684395678 809227084 854123467 342832910 596293500 648583896 730875338 532320164 635970009 631947182 158352770 488243168 147395617 762966758 660485152 535273059 835374981 731799092 96084541 930750118 370326416 976503349 232565329 51445416 116633954 511878382 490404358 1001866040 1030935965 227318969 235488088 103488737 430167257 1035199532 149282145 75825851 694729602 672482884 740419916 353395087 421933671 318473133 71927388 1056679942 726380611 175920873 773854263 385335743 9723392 448537254 531917555 116827074 44217942 5214240 58912927 464861899 92744150 189867949 804070819 468750540 565140017 416593817 627644274 492036724 415557678 275225146 158775975 512888116 833829171 1041454607 147950699 643744972 820832215 293456061 32749322 251961227 794480237 244256431 1032884423 471065034 109858690 197177671 571797631 80450949 1036779294 702880070 848023088 287457105 417737010 625123764 234784488 1021910547 267200496 548098208 728644908 399276385 46250810 369753302 1057988239 785266875 354453503 36057552 278169996 113395239 470348157 415421324 993952240 831129016 16646559 482773822 903956319 1054462500 894524035 50289819 870815960 255542815 716520036 107081489 592131641 389503303 351527816 800321750 694735429 886787226 4386429 951786838 115427396 1057257489 14212294 592847637 951079247 922049703 117584261 1010464687 486096313 222164420 36802755 580595785 357677348 758175611 579854327 808042779 846941371 245537116 835233426 740117748 86992731 369287596 659898464 578169693 730213275 604662627 855184593 458301535 535709354 95792648 745321369 216435275 511994151 701531653 180684617 1054068443 829735075 620380701 928631183 20553059 327921055 483914879 254442419 116870105 451013188 267032139 171182911 968542939 637978016 251006895 226334022 902498926 826779033 1048109785 1010423185 556714358 618178847 316461295 1073023671 423233626 588180896 531921734 1035950842 85726509 216106706 412762223 86429855 516870621 1043728629 936164536 285413817 222473616 72634354 225358685 102057660 919016412 1062040338 168355010 757143698 457651655 793013659 291446490 158976505 473655977 221097663 962419652 352337823 151596147 117521535 922467490 666833097 440309971 49550860 975030560 586973920 35381672 69615369 728343702 816458103 324968806 351688306 205995177 64129996 53340842 1072605511 536795047 674112907 812144032 419038501 988761876 304498514 711495479 702675063 269576967 776289417 36977582 730511091 183571048 1006989102 189791603 961369572 152332867 203378759 667525964 359773486 67796257 313361733 717817691 91463589 610873905 962134182 441790475 556458365 733794221 222786489 333688330 315308174 108679132 656846297 773371907 438562925 884605042 847472160 48795445 1070302103 31287488 233878415 994162628 841837856 1024413874 653222625 693625529 641758172 388437298 37432413 336764697 682074007 1009464971 335526831 767798585 441035501 622638967 892394416 977613607 162434312 364157662 529797964 389969650 692135434 144874724 509026858 766352474 802669955 662463094 967486888 593897024 523604192 166651142 576448562 129296525 272151369 761527139 910606317 4178405 977771814 162607788 24904115 282333063 427012115 62034425 779139218 386585220 277899127 1027896919 624613050 277763324 116313731 699449376 323888295 718544833 655261739 931941043 80200354 1001936949 89005348 582408668 680190834 139751850 746543885 953568158 629445821 255552375 455400495 381273106 986175469 267880302 518318734 934512907 835578314 14539908 138945007 896025976 307978919 210314031 766082888 806889962 132934421 109343456 615059946 981810459 748054694 228825168 277987329 703773061 887733945 11106544 685517377 819954375 379038929 775550397 131400372 450744439 629715926 1015515459 686028392 332017108 78079245 627293484 868160941 129416220 1009760240 814140666 11875014 1051394874 760241365 798250839 952385720 519807285 179831919 475260843 397422688 277501515 546295722 36379982 780502175 217015001 701719097 343814997 292007112 192405928 982191163 311545382 345657862 762839594 654480296 433156961 831215193 852668411 29402426 522782467 333547677 415974501 923735596 167616231 1060886123 871004966 671841169 1003965690 425149028 160284779 518234183 754571336 184994295 785574331 846399401 209604152 748395663 442847222 976808993 1069860685 211801708 37741617 1017145426 965781446 752561585 101619138 63936531 1040896369 136822125 67655985 562950575 981399277 967010858 750745158 813231039 760651821 825551479 588790283 328431168 416795200 530207033 74765991 840405266 219265969 456991568 236430801 397989080 382992030 59793576 186545958 186382635 627573473 757534928 576324254 622628707 718068247 743349544 23331855 173610479 984017875 756483439 19210323 585593973 217661491 646485233 39046599 954696746 69160390 1015221920 259160253 601327582 475110078 228053994 693054996 358516914 622664083 621885554 164774111 124400098 208468118 306375103 663942481 808937089 544942861 70834325 330154759 899201623 316282375 355938834 937984648 602683732 1047514755 768100567 619768800 291322088 574920968 869551239 544258971 346033132 575341540 99499097 477575617 349051507 448601598 22432259 348735286 733342374 758079827 65788040 1016533023 453256842 395604115 837631942 1047594255 542540413 748133779 713934503 572901426 845077588 423469765 118666106 379544402 228624748 254431213 1050572986 320759363 434037525 435616311 121213051 880645166 173529742 532094999 204753949 1011133821 255752995 252592199 467615363 539317573 555803897 564477472 191923115 356222909 11058959 543294311 1033772292 715470172 787816439 608895767 778234554 648929879 789454267 184741001 728754125 680313402 698022689 200481946 565675233 409198816 448583533 620738071 695767695 20664892 575130195 24537463 895960306 682226657 510495469 401673356 333670876 934295238 224162097 994280711 505921193 106593030 954984829 50480755 1070932705 638848965 766466857 505506295 412334552 675772900 1071869628 785482107 804990378 740729046 729022323 652683824 859622433 432118963 75141572 870937757 311098348 396610332 874271124 369304191 481435159 495906990 328396590 220918497 287909947 250298463 996799134 601108781 110136294 480697575 138911936 685265622 31817266 921976678 763473545 1051307359 1047105892 736574604 460593180 446191912 167498656 625016541 284864829 782830128 273963291 1028634790 565160135 409535972 863760772 343209046 269993662 124372018 257247667 453551926 464611464 519332065 405650234 801228504 469356426 196181590 64987153 873951440 552465169 1042127106 280824326 67121160 87260062 682555702 348670597 298231484 337648713 270231328 195443378 332089008 926956688 93017689 395877978 432394333 980800380 422259838 600586485 1029304221 878834339 483509923 1069799959 265553934 656643467 152885632 743953385 344234471 294096960 707696777 51358804 695554965 825869744 823723702 886848592 293078115 406794713 315199616 1751759 882688471 221338369 1032524239 35917171 912445057 506867002 362271011 989825921 121253418 648874564 93200134 804000540 978805229 805025442 925180755 336881969 570774349 1068121039 887456568 45213416 660433324 615644511 248400931 159885613 1040159998 1007002696 268674317 985293499 103026950 553563888 307815970 153629755 409616785 372934904 632154889 305529930 50520068 730991805 686037922 903287219 292701354 543197132 918307518 68554050 979069716 203095921 509789989 820358515 339936036 838401837 147018593 487204389 338912455 61489643 392706190 201506716 926363538 758209600 120545742 457130178 64771830 463009151 808326361 886287473 1058023898 291860481 615937735 1021220118 3891191 927870105 634668042 511035349 841797613 419873556 211735899 709864528 777421026 372915955 812736401 423575879 184701187 166885932 894741303 214928455 906839421 331886815 173409753 817290501 216464208 602358322 300123010 73111511 383741413 411196506 418996373 861812160 822917386 828615574 322919326 894042516 623152093 594911233 898327657 919133448 66171013 37185119 629212706 298284142 178013291 496995405 105547119 82992614 101829535 788942321 251498806 892797917 877031497 252905002 797662560 944826287 37181636 584997356 38690469 353766377 347506589 190629486 1032060407 1067351442 11778036 300382771 852059051 684230819 498525824 680489211 455652658 76504411 674112296 187362867 437203054 78266248 734593670 848502933 205778748 83417496 492588057 56282832 303871113 420954860 902152760 1040317658 182381868 778458023 233848103 47473205 707044390 177337270 572707496 587298124 703743613 462624444 795853119 772887238 93451720 82738008 690639205 245546972 78042962 742526979 813267601 807084268 163873569 389232967 385104577 563290455 403061910 304737028 302004614 938789267 293437708 729358729 1000043806 660295209 700886280 786149030 508149955 847772329 514901969 910314870 241615123 373109783 194262423 876823129 519918568 1026676119 612278982 288551252 395816 267287730 1061160544 339918977 951555369 792586447 800721244 368600179 612335508 1053474052 165539073 989984693 538916750 815905898 560773020 532542735 805988634 21037629 510840967 34205692 180141363 90340396 819330038 417890783 473564393 89554089 756091534 162782961 686585413 1032098343 1044302187 66459397 133519548 772633511 434082940 956581617 977770832 165488863 928319686 866716218 730977460 300948929 508530717 725193234 461533773 972752058 1042508666 965212531 267439787 471590327 578839559 208347246 735233531 134067354 159142122 25107342 78950802 410199800 1047292905 350097506 669609394 735045526 1064885350 554005065 654017344 210527020 185472730 923330114 59113200 220526634 130660018 292748050 239361182 829865537 778984599 631789584 239493676 603900847 451542667 972316924 826039216 773365963 92416278 1007845681 574403072 916963012 386108087 339983484 218504611 222837772 5146752 814973766 817203452 656654940 327229348 556325568 748081418 180264117 795734232 822655236 93180328 54332940 166827044 370193420 950740876 542536740 994400363 296886577 873791426 847864934 919935837 561634719 896948245 644478185 727814886 118006269 895126137 228800076 474660809 319815218 903138707 599963943 661006719 108599014 267170305 1006193164 64694711 891966564 956267217 805310764 280683644 624654478 204832519 904398577 90675580 402921113 934443274 412187905 925700286 179805673 762130959 157344740 894568268 958455273 133009663 250583946 1018716899 563410938 646663369 914257019 561548261 67577107 221510114 677603600 55662216 749326374 644140235 632920478 1071279769 997338962 301168265 173543716 962880595 298166969 833435225 534305757 376197223 990236709 951496081 796369692 888438280 166983511 851807549 603961378 687832536 310334897 155258902 713225461 128386034 378380963 1041886808 991134022 622726682 896522228 346761576 619668536 513474267 626189360 265242173 583467688 239726533 348839801 129620791 826901670 542003853 1044115433 488907716 101340478 9908256 972429890 456328320 250497366 704743637 25802810 57994220 214913254 112487262 642834171 326590493 493689831 1042817528 696510357 650518122 465158993 249053453 233145235 565381759 474661949 700566102 369830600 982501276 59044710 304867540 868326372 865219791 327206689 876178829 994319039 239952630 565987851 77794364 248490893 548265325 961501480 146128095 285608508 492033864 702403915 718782255 687084399 17886081 42640523 321381337 45776538 63778499 391454976 504244614 92855103 896921179 212724851 424386326 901643140 1070602490 669559962 1001955098 302862575 977519809 698873745 604904336 476076020 636931678 602226731 66133714 288215715 597620075 407023658 188554879 758870835 782032745 938295808 252003698 189665364 768396709 511640622 77007577 1015385942 372469966 439415644 113203715 723892316 334762949 869574351 598192304 938702709 293405677 163499759 197225469 916400395 1055903990 470902954 820221609 154099934 538444697 939736452 468240729 801552250 843868133 653914764 739277225 807746008 1009461258 531628278 503797778 1000492313 16457695 819849765 301554379 738905283 629485471 268077902 546084398 332168727 549535598 172838419 928624509 117223928 525855520 49942677 16958946 38332036 330013215 927272494 58520471 795175070 831997422 148903458 337565369 190136606 678214905 993456330 930018461 664487130 671011916 55459918 376822664 605654044 1034955645 346703958 295348976 676706094 830953997 379686295 828786897 589755804 645750402 666829033 112149733 147431168 731029940 1043654892 478949233 630636589 932404054 890821561 675317279 648967920 797776887 718069425 70314203 577783513 32077335 612801822 24821243 969030892 805154778 123030789 173709135 439652207 7861104 523597434 47838880 491285934 610844431 828539432 831722342 720932962 756897198 1412664 427169356 833048143 514474656 48296522 5849554 384705645 772382602 565388348 203101881 305239491 107845886 166633265 461630796 120791386 976094859 97706582 986695566 430452672 712244893 587838998 293518137 318159904 1004686311 643032812 1021088983 353924918 938588251 255138252 202850404 755581065 4308495 1020372466 857828804 1004138809 116985758 833702322 528488922 452467763 174621379 804136605 725991123 375559415 553286453 527020398 428255189 406229148 566907397 636226069 204891476 416382464 858108274 426523994 39867727 724651521 224689637 728723065 151001264 362289702 593907442 639955337 168382262 751616006 623840586 352738983 692800736 262289197 1034512997 1050951101 191516562 44378091 14526603 67651204 856434723 801848921 640468414 215216241 472225119 112842382 877608466 299696203 563701536 739129328 69136517 967189736 452701362 440945294 225965135 157415759 909082312 66377315 612272782 767102902 1046884094 341798036 213451904 377883786 877794796 702146410 243089710 871262551 661241586 953545646 130008143 487693626 540083470 565213456 554377310 677450923 458214171 175100826 326504161 949089537 681093214 355242410 554692407 401781897 346615863 839754209 68177018 874525252 120788029 398903030 132958402 857081429 258831839 673312641 576309962 807649376 1032544529 452321332 553942785 12548983 205071165 969099215 282956273 582611237 609071721 756614957 941089788 133088951 764776370 401188476 871067905 398900087 411113010 133587535 909622888 37287081 249617480 871176899 499529303 427512426 211538936 22176939 20790358 419252027 593768535 202937790 593348578 35878633 694501600 640359833 891360146 294890987 935609276 373898409 1014924995 579333714 781506318 702702297 853247190 761374569 404102246 674662126 526401502 51845666 182430998 311164812 868100799 253002623 1060647592 506662123 989949217 1051912999 512899730 299272647 211644023 171774317 151005226 906704774 537896742 1050100553 649302442 398517354 771889639 1054349775 630094917 710319153 23952869 474586829 595258041 694654342 19425237 1005002433 298749873 584384755 858953834 130909812 83482951 962790503 144581257 391203111 244721930 685983946 413336018 469818086 925284496 371684257 840764423 329931574 184172821 476497088 1066312712 429640063 823257711 752990000 302183306 1047429491 684722425 510749018 901084754 636303393 155975775 177973622 1011503734 400544340 737826704 813334062 530313522 31417426 691382893 777254127 1025321514 92949459 328948176 204224638 186931657 718583067 88498726 76286110 887591873 143334539 341504466 732117768 325307042 238673670 159178846 46326571 700410024 588190238 941856935 331858751 599648773 589151024 102462388 293118347 365429662 73556985 376114791 654223927 510815668 473547053 306040418 583566984 340482527 74541125 692523723 193940360 571372482 787043624 471375553 63344831 486634662 982329288 668600814 11255915 466074959 274663764 270736483 703297405 669533790 675998441 447264948 925127453 498662672 600363003 338088851 35065086 607531067 801914491 424777493 750136645 638357238 862995937 927305003 810574451 627595238 702122716 705954114 243834959 783897160 106633876 313570624 958253581 443589944 936427621 292568645 617573973 694037987 598832223 602186389 599426444 372769871 920735818 224060456 141343749 446424524 419016733 142901394 724413486 557870490 704438468 543602403 320947943 753887349 176738147 677153943 902338934 724015414 275402674 537427862 284904749 766021200 180698911 407313810 997390727 618503192 928954472 583492640 230317972 949914541 774284690 826693956 552493668 740138863 200111596 866867411 322782011 345778676 117905343 741627357 995695575 616393478 654751894 59625682 722640462 409128191 96889255 734639352 266940620 235273756 934465838 17674548 954786282 683013004 921846583 146453734 415662882 555455431 854895683 627416712 639964899 210879392 520886725 585547939 664252952 773060457 647938098 466727799 1016145214 145350319 386213402 103710783 313752981 111788683 857975468 954986642 44562062 139236758 322511491 670179051 396381031 823148473 770035471 1005448738 199341504 740558426 514291864 234833260 59077177 680998841 792398646 148636853 496255385 325622536 453782785 659718917 934124618 362008214 236581123 980700304 416348418 376484255 465224151 296536447 1073701084 687941916 1067858240 808170978 517348169 193651771 1032018462 342400908 325573882 397986069 182745483 865422541 222684561 212820944 455249432 1071375479 135899576 866713856 909535654 841269916 481749225 185770798 72179426 1056832296 525606390 570274780 350945146 1037432568 400906403 531954953 367096270 373541084 138718387 71131272 498655823 1063422767 726733561 334922955 68304939 788564263 952542792 721756949 421218153 1059146571 580156317 731841668 764128837 138616898 779111452 1014038002 131391752 105437984 160851774 827824739 591874622 818682095 25875524 778747836 801062195 828047926 400343954 945551853 596435444 418285213 382598241 384465239 1003725460 24046226 623411783 79427377 723001851 274108056 17687244 846170136 519661003 498257170 779981640 402094378 214097587 855868335 527180345 102494077 77359493 499718954 1055328649 353171765 406681901 736438758 342544339 670399779 830307085 408795939 345655707 905816076 24685710 132106856 1052333889 611887343 777326219 20715534 731037310 137697770 441311484 467706582 584676680 545992527 778011081 190379495 876504901 84981033 130353966 396568445 68642606 1061225504 149429319 151050799 1070662891 298365034 495729182 587440430 687262587 981202816 101070134 28668055 116957885 962929826 297371962 145685191 422515772 515439093 8452999 134742165 4889637 12300695 93016543 681986389 732152476 532646011 33954210 694197509 442074963 92738678 961057346 557307087 309686034 687029151 367390773 230390482 938125030 678035942 146734687 522777230 789294289 598817947 709588461 442981657 468201864 497107441 785354177 841341824 625350036 382561760 179732827 969199064 872809446 476956349 914002250 560704315 826345247 841795485 231062866 856047939 596695568 220372679 399290819 949419338 638025800 164879292 912102084 404523060 963442092 64662855 308905209 868120761 96053210 1054037672 583543126 551808820 742137958 1050096523 661733142 1063423900 576175880 852030577 587234231 263889049 8930149 220420128 382779204 26747664 399225554 426493294 632838857 126634663 325123841 1069661404 737882008 342482103 994992896 453367863 915092807 369224227 922891356 225636901 1071732694 109203865 696834690 420647582 811092036 551319498 345134715 724788391 634743770 218780028 163128798 774275568 507362139 582817849 769144917 774338883 150079570 147141194 729737990 986637842 732959047 474878230 915221110 314734593 741895269 3670123 751603757 933614403 69975905 125052235 98828714 108790369 200747396 464299351 599142826 823163687 507081168 414718041 138409104 738115516 806184150 962343375 339405789 510587471 906912517 467599535 139025559 310487056 304763494 531409318 303597589 37234905 1065632960 251223348 347015907 94967796 976701518 994334734 50581675 209613752 698514465 142749216 870166473 1022845662 914099436 650454755 201398405 1029345449 721963064 489550435 1002423616 251004314 405247194 723574176 574064540 454456238 446613474 618656022 276658229 946543069 375258370 87651325 238841338 938350336 331407337 223301953 1064279274 313508243 725372416 520570346 397142547 109797978 625373914 784303757 819502497 817931570 308666349 1038029671 456037383 234191237 431875580 47975679 578926755 990314599 77490827 820843831 598839155 203501232 734072383 180611803 885401484 415037237 1007583577 1013020612 627945772 35573060 274301219 873623095 282390667 320390511 792543745 145667124 240050720 318114710 300893335 296601553 545461791 363908450 233286237 800634136 408242157 166923346 841657342 35177724 902819278 224432341 585790045 739689785 638717537 403710690 255976539 385624038 294528400 388128893 127374636 877223756 952652724 201313781 372262884 513861715 595993033 1009989942 921781142 406516715 370461826 363460176 1023538113 219313882 547234983 345133353 182873253 223141592 251629419 1036696959 5509024 99094504 478586756 776843675 15681568 847212820 388098537 395156048 674320912 693764769 533498928 285460386 700189909 867142019 863313192 150585028 499802834 792082338 34566778 1070869081 339285421 440452315 237724346 677457924 611637953 660201550 436232537 618437879 405522183 783370054 911260530 811431533 930525068 10839718 1012681686 649549706 348974835 420405628 584039661 870812365 186081540 698613515 478842134 81571566 121672642 9740134 1059674229 163092616 922747378 940270115 155666120 969986910 58573229 337920634 175738416 467268947 560863523 168177464 511031073 152059025 603799372 863953356 613076175 390678950 879035385 150794087 985808890 59218004 1030265980 493677288 686437677 572141373 1066286767 78425723 618268464 99787934 595175720 1050116891 403892655 440771491 347026791 469278672 491876818 997909660 926210979 1052760706 905701785 316508876 942778805 611892358 342856151 466459641 1004724490 1057831759 497878225 715273839 169421655 936918806 803182948 1015896612 1027933365 356231414 499094239 315206274 570737767 765285876 577679248 511986324 970118761 343955716 120193928 919502896 703629676 711510321 1063268578 296164318 485179823 328937009 206633299 394045082 260883916 1015569997 822469180 537335222 322503617 1045936010 798541435 858572749 744419526 372282527 882714379 625130345 402083425 883344337 747511940 701124475 39193777 1033349831 762898687 516306157 351915595 719071244 1063469199 94585620 431460465 16925544 1014139680 979029710 9445965 668897524 350625190 566297328 915836659 348618237 662879693 733104103 835764052 1058788691 262716535 331189517 607346308 935688132 1029386499 524843430 915323160 993390177 309556879 692220995 242554363 907364101 612920399 1031574221 100108028 312424743 208396118 245627657 912824618 132681543 992965715 412325678 343744550 230176000 282507000 761442847 346415676 976727883 284735238 82222588 52663911 168293703 166629017 602745548 975880437 768450931 197900364 1052855777 515574416 987687139 32006965 552943013 1051143023 508171714 622606769 677877443 117260747 542367275 240829237 1063145414 397031527 770291891 684616251 377358410 607084120 529390647 368633846 46597289 962491268 934737561 620525751 403094214 1014936682 685361793 1022257402 1017015122 83068889 396239309 212541100 1057321900 340094186 209680804 726475013 866068418 757074144 572674247 328812716 538452137 162555633 987099316 495142953 789525851 880121713 898177918 748181743 334480567 963685595 1067584240 290140000 899363251 914553965 1029275448 703160344 833118777 930994558 270520223 377399362 223048678 688263645 139386789 398025947 55046888 643016697 959649858 534261846 279997179 292112671 751609069 297350605 296424499 727037423 893274650 54964873 1014924671 866572638 377231311 641106539 541345290 944347029 73557906 1061366633 218495203 987603885 121354100 1056722019 851080737 20690404 9785271 469255299 22815089 209587245 839153376 417078530 924029127 370271717 663315978 831028880 364362069 1064305430 743220667 854562921 333467523 861912777 441556691 590411277 515484182 59860536 730158856 372076630 976482921 316988628 79323651 723029378 834212912 181896654 1002019261 207375425 770473516 731920726 93630366 745138547 29259445 964544764 322082381 393291618 454820247 20328026 498833212 643988914 855426664 932919410 633508824 539544849 644810654 455214724 480043610 937813395 178451740 231705805 494562338 663095995 81840208 332732595 26490154 951917856 759611483 128221708 634411564 212597964 526379439 188284900 308000374 223827508 955734813 599585402 982344731 1008059733 408443578 827276312 123099836 133081658 888892350 709622541 371551457 922752197 463781441 598043276 73702155 38846551 178154395 707228429 110371441 175437470 62894123 249704406 180146888 472411711 57775654 1056876517 714073141 157115145 932077979 509329892 10205283 298585010 857731878 88624953 297852701 155760921 596699174 343841147 589971480 21383 8609053 960060700 114971737 280551619 119174584 633088109 7568008 471244942 640684976 673976923 455040306 1019635694 282211039 360273781 683332342 183333880 706607989 346462451 184128258 653218079 926661025 697786161 766254022 853968261 142769820 511126520 947422196 51982198 499870279 59964769 598353136 22721747 47377185 913991811 172768261 556672875 984201773 67094742 441490762 141475869 454575952 1069308964 1009251596 698688013 855622933 444195957 628721850 813051369 27086509 56844231 312009631 32493237 777043759 753497285 254353906 59560094 457004313 258704061 413450868 39794292 412683088 801603677 921145300 451676333 89630124 522895234 987939810 900201970 282962072 594362072 258029522 953192356 570142616 392958804 1029553873 273047500 142546742 255086252 985942704 909356030 816222358 477988700 218107121 1070600308 918656824 599635692 752595626 903653958 339287562 340455866 909635306 87952339 145294641 819955955 620538517 895248249 800366805 58062058 701076665 696644185 1032847821 969835025 92833904 77986449 798267600 627938405 983006640 837387499 1020970697 88045457 553853071 835595682 526572878 907902465 601339708 1057413993 354477414 481542274 840189248 819511968 682054259 453941590 898150313 877209707 328631700 20287027 802183142 734927777 833351741 795971414 436544252 836394719 772955031 921872525 232599125 248589570 115798456 721459009 1008129891 139029993 7369689 661497254 587497204 80437312 43835672 528887294 446154902 251442224 268448321 527560102 570664380 278945568 135491332 368283294 1053234530 10514236 1049054583 704508843 1050933736 122497375 708587087 376022555 770538186 928476865 906119342 635235493 6166394 470884973 277230020 871822772 1027113479 793579382 475217484 306962536 505347344 420586146 245812968 1002937851 924435671 760302465 531931223 152962835 958104969 528951882 533366880 628339511 1013961287 13074341 438780907 149028095 863047495 598446467 90407509 678182575 402058819 385216840 897242113 484222004 794251598 330777856 182866692 1040509358 16222898 693101049 267543305 568642435 772132930 675499205 396356990 521670893 94294425 550638630 80034175 804967287 41700866 76613849 591036666 1012851597 370089158 359865042 761946132 265225806 169240959 873948984 849597358 133725395 435205833 610977843 218490893 906523848 880922613 1023732041 617605787 855899405 930528084 380389539 385352417 296397578 235217020 200161193 287372669 71860433 254668601 12809553 499376773 292009987 563905913 1064795119 482581958 342249699 911351542 385704181 560063532 324914954 870225903 233995351 612300566 441003286 950512242 957265670 178046044 639273829 680530437 300050064 398346382 182313310 717533831 556653276 515291542 958838225 939518100 302022258 325748657 389010316 82777527 540686890 423780628 410287813 497200409 606298576 581006686 450834349 636304650 548355912 709528110 489176270 443482221 298856832 360616031 912711544 202647311 120820317 939583969 102889003 987484075 696379527 651370695 428910480 704610634 22359737 158454848 682128487 547913996 625161366 584037142 8163238 64954502 456773760 108416005 41338451 785931505 48411131 70726664 105709464 361391474 908915630 483325662 1024675285 930524242 699341853 827613311 440994982 749552929 735547402 201449868 847252269 506203404 639518765 507493943 590481566 236914772 96958887 357598392 525291864 654293684 247032843 978718504 146455690 786714335 607891570 173363789 876175495 622150876 490201538 295369506 328132275 568044063 1058990148 945750746 807333575 684622633 903023815 486530132 148448707 804860658 808795121 211630600 976635085 581137343 624145900 422644437 614801618 646852915 372597488 198918395 85515582 688634154 605493764 634104349 503032762 587585555 53766092 474160581 600370350 428526358 334492134 1061049561 130942811 302378997 347728720 493441020 784864688 834131252 208751802 496314906 901556523 169397806 137579065 356811282 501654400 450431070 995191369 686963528 170747292 993092047 701653193 457565109 29849198 705400332 39532501 663685720 750201272 158677535 777615692 1025286093 1024348322 67353843 989926778 522695063 547485371 968486363 582174091 1024158197 389435574 518000456 222869169 775763664 575128313 578859815 698848870 697712326 565017668 868832036 575245718 576056971 713886984 127996538 824303055 267882767 750820087 772143038 482407193 389825878 290699213 891178697 29085176 421155125 746130157 414371693 323857799 52463047 136466209 569258914 186854404 806983493 182163051 459663891 830086782 188376554 766150714 155363323 827186294 184748613 277931208 753065155 164595269 232417310 512417122 58037332 9047788 168881286 68144263 987188070 328706618 223861411 834752714 311783584 577480376 119405850 553245612 456651578 533656410 895545092 595098780 301829097 846632975 208127680 704847214 355435770 215404825 363980055 811807767 659577838 462810871 337480851 612945589 834486742 527334474 704247553 1011383512 686527784 86866774 47703866 431704861 78034236 200761037 1002521258 914742615 24991614 710453971 133402134 11657802 535032512 1016446273 754688271 862570209 1024701311 42439690 827238634 642811056 644683702 591917 627632707 279290608 1045328331 264005832 860556998 411828672 790991732 141294696 263555717 640340101 270675493 241871896 452726587 624799630 596738929 704246044 945187885 283791432 570485519 672315166 977198905 341094423 804163543 117402009 59121443 272936914 680176557 130913220 447888003 430402013 7393785 60989272 473017650 542029429 1026643699 911143696 589916483 972438584 536234772 641746513 293068179 703755449 1071994908 1030824268 964763963 634596348 949203893 832519552 374064323 416649000 40679089 451168598 571037762 95196337 517514637 54942609 129049786 1020796259 351435790 1011910356 534155252 662247170 1018584843 310057604 25331536 507759716 426074393 88295029 186995113 885227582 987155385 991914010 614860321 903000157 119262286 757587940 287238137 711708142 832510920 169840296 137469113 594075764 940724423 336463178 1042232915 336008426 528111854 411772777 1059433269 68765880 681455657 915970018 788400176 1001575659 547187441 851384676 57190791 179068107 141762375 734005123 32232247 824985009 721526117 224155350 268281617 670125216 290318107 468034206 782842799 594827159 760447354 83423478 146715867 731775676 866259613 99670682 92587559 921891030 367715845 727388274 447724544 975320723 51938609 896241507 811623596 175468086 449553268 143031597 814940562 1038598263 314827123 696497736 761231013 469240637 718153808 230821565 71416429 882576901 1039426771 935519558 686635522 649857584 539478684 468133025 569566309 277452548 990078297 284566213 477358003 805541185 437837409 859928152 438566110 1060835263 134205643 382767916 218000691 985525380 672082197 557210409 522974152 291069296 1006133385 901874475 35513192 670125577 178580962 317443510 974028684 883954427 184889492 412874485 1054251907 633046961 754552811 771527683 436697155 525742731 282847622 138263468 706541614 1066933892 421913779 278939476 265031798 70395176 899675666 882323373 1047266601 203419345 750659062 625722788 381319027 107170737 1061924700 936400793 307307482 299140497 742033814 53967033 548948639 1031184229 422641555 559433110 700490440 881114260 496159582 173853686 830540554 775072396 828528390 434270820 465141083 868948858 907617149 694547483 739892621 816154075 1001570786 712743696 715910366 682265684 837475449 181159537 479310531 1010310311 277190920 624452626 288767761 953224702 317820368 616385620 821725543 491721947 866962231 499159744 838367260 146405240 340506169 288840640 939564502 1072806981 469363674 573502344 924105261 661288132 506177787 232909454 930264670 513603224 826208406 460583356 564191143 441143623 899401370 925430552 692601595 759298524 343081515 971728660 100981994 676430373 684610308 24043330 911513427 223682181 927856808 878831757 100114018 53332348 322912475 262331297 249247886 848474335 596439276 956427926 634777233 504129871 587952795 746384671 377468593 281233341 235562626 567324574 619577953 197313513 418202792 1006914722 535452307 308214889 722790885 1014652387 877255004 96112107 312699466 441803598 673089644 696661699 290762000 96320710 543714882 667975315 647906286 572187086 1012455208 449176529 28825114 349066555 960395008 520041073 195626103 435376134 823220378 955406123 173562920 870040880 99895900 1045429582 405594709 21871072 807411690 767237831 59119379 279371537 794915724 1016001142 1064707186 535322831 200225628 32552793 900748298 208991270 391087393 1011240884 517876988 1052419194 951769552 698968092 854056885 68278598 525607211 38085342 364894943 494290605 758096101 264075668 589248199 793798032 495186155 633093988 6517226 635740517 244482796 525122846 547593668 253908150 910817235 139154188 245101781 82104786 974602123 600329970 604066074 120825049 1051050822 986469363 688710226 379418008 404035912 963622337 385800039 824682527 613283430 961618365 609322168 1017155959 768586134 809267361 177709428 511547846 935386717 973441538 382743125 695598980 1037819662 506441211 467480819 98869899 99318304 147711292 271177055 887863420 1065407144 310781346 737050662 411185249 576487152 643619067 509800593 200812858 912274039 270427525 231969184 988011466 33946380 888189456 532245308 301153836 149380737 502392140 607695734 108168021 807153975 35831422 430680865 757601642 65573346 663087968 780354067 553996864 349848122 2251365 82751221 8647868 349843847 360035277 888225400 164206087 735838853 913633269 524704810 496856744 312361066 103882177 592108476 688753213 380070943 843081407 353543919 13019480 1032062192 326600397 690659361 2977812 465628695 967957127 505864325 891266189 705712824 341973978 338723440 1019802059 813228803 954762957 24879207 588569915 737862668 77428333 503902552 1026665057 699988134 398164127 453419690 553206681 410470563 32384230 151628899 408896054 1027213815 804361763 694475368 265845794 906579795 686865701 493521506 431825641 807963945 53101253 434944251 783341236 458989169 614384624 499906306 175643181 430926987 464293652 415248370 103647497 836497489 47893593 762333480 795423839 1033999753 425049232 1050751388 218867904 728593724 464442313 358074628 309221680 46381287 99281937 1036513275 17702751 921100492 116060480 384298197 671983597 684245154 977185512 967041603 24593594 606167417 106809141 837181623 830870365 395381418 3238277 1048814562 705718199 513885558 484334943 103970534 1055723177 1037387562 842970498 737000915 787328060 644676778 561370759 15492148 325219221 462822082 983766854 345609868 520030975 5669132 562624068 902230664 397930808 577193997 845026852 859701263 956050210 81325127 640700213 623336193 867426503 507130876 802872758 16325260 816941309 279208154 762977839 802528756 966074883 1055796608 54050285 1068797108 481347614 24485184 1066349581 407042532 242880866 970327893 26057648 105848570 1028289386 316724103 73883325 926339146 808365542 508271115 6340737 608279065 699462014 602106844 426804444 62257120 98902319 334966459 1026211967 265458156 690479956 272463648 230116279 17591187 113673235 511856983 919415875 990166192 544774094 90342271 758664306 510365596 384619276 672931622 1047279071 709517180 57778980 468683463 88395620 439347882 125728479 709652870 298337707 276677948 36725548 988313426 66084093 838267094 729510433 674577692 651871006 698883320 589587195 362137911 884191558 1001770700 522597327 1009818879 619854581 271321167 1018510324 354605336 480203058 799528174 1036008581 259343532 187570961 129415078 1043409589 286299279 249318481 83420319 767403847 744888139 558084738 1021894738 298087215 555321497 680795609 970539243 413070052 317082091 318697800 1054741991 437900923 859626291 1056132759 524225130 248537714 473140070 919859744 962615765 974432666 861001165 366460177 1060187216 1030964343 59102414 429675647 837383092 723282372 315981306 223883053 469154972 665564868 171273883 195741531 635549908 78028900 833508222 790773233 132273285 911404488 393460401 106949860 314265543 1035825129 1027824589 829645214 588939720 62251599 555194883 890821263 191452088 548718655 705038952 792232981 140959246 904753781 119348671 536100136 717826717 1034781766 201946987 1008546754 137811199 1026014039 577421625 837470661 826169564 824018798 636304403 1054952985 212175989 755831358 405859132 641225334 294003541 702326265 102555333 1040365637 378818853 746899651 42310991 317022854 532080861 982477518 919142471 571008619 445776557 657147131 273751705 569165464 1004653697 841711816 912695342 1021150249 819826760 466407334 1027883566 470045992 1031421190 577899622 219545629 951660671 43075010 561473533 224877580 453458322 210234653 698618418 964443579 734086219 154836291 1034125726 356736623 492654236 39078003 464533546 807085310 68676078 952661425 483479772 1023177270 403548989 1066544431 545593048 1049996008 919721403 1070501530 401889928 365379064 138488977 558429115 949062574 894609974 1051949296 457680544 440815863 795225314 410229765 304620183 792747929 177932478 198967485 683492274 814931153 779473099 144541885 340890096 989211589 46064989 710634372 8858380 957002200 953007637 698328356 619510849 823951008 869420428 48604904 622603300 442537660 986399001 506283318 881756418 598822758 439434952 854169641 177106208 587845858 893739522 549687360 48799346 549511876 285551876 647712278 107281344 632688249 118989540 445230206 685276383 564350419 317868568 68837392 192847403 545360544 583985951 789988495 612729806 723188431 384661955 246117851 1028362874 448649471 228839639 85493082 131053409 785541428 1020193560 610106027 393193015 45154766 539273406 62438760 1065413996 1046417795 312614633 54719205 918201419 818303771 292067661 111602121 220330093 300476760 9635083 167936512 62266794 880172003 473252605 588510519 93376108 639610728 546902536 898975728 326070026 178081087 565944339 286134101 640796930 23475634 958376729 325260290 148520443 423932424 836755302 200820667 494726933 467768907 879899254 5949208 462732696 1045260504 1012217988 743011449 105873006 773841385 721123902 523496392 677382816 614207897 9646104 186206353 137816282 570949838 937741625 1070080403 1038493362 273380754 695699341 95294480 257720989 670008067 1058130472 38440569 221166127 175587146 357065311 981416126 362157593 431612836 1068206127 615805124 90677274 160641030 665993954 42539511 430640505 736041271 281456807 529639206 21249645 859048033 173048445 779352314 409626859 188255699 398646278 232664714 397469463 953166371 317903514 714659442 213198053 137341111 23734085 521694494 527214294 203074779 371472573 894776149 563728756 898279503 884066925 1066827260 235295196 649868045 4156566 516606815 867543780 579667100 820161203 75332054 312771448 319118716 507723729 688596366 539575939 436353228 181447639 22088412 52769126 309034308 384298885 1040951674 971507685 546784503 430212377 1041867306 442037853 916223954 795312797 1030889938 89149996 598144009 270356537 832897047 542619212 860294784 671325662 849166179 779802214 278919374 210947289 365652272 144274749 178582083 648367853 524463864 150901392 7270053 959252581 956728999 98664571 818929947 891415495 979419065 196848324 324559001 792693713 249756255 448480303 378435921 111726128 444623623 117848762 738448715 398371457 912970605 961037143 16820462 108954068 833778451 508720125 5361724 707709225 369325572 102820105 201573711 1070618161 929340222 264402921 664418310 799344905 418146655 515132280 542793295 591601781 534090594 290918547 980977026 491749501 115418289 978275058 739771860 566607110 684642281 1036854041 793325999 329913584 60926062 780759634 53134933 506167873 1052413008 525040276 810934680 677747157 167875776 372319559 595401663 1069586576 590633198 666727937 16926902 385881538 148077883 76639815 367959160 63989987 341022435 711867228 166308083 41069716 247547797 91075796 597581063 635140575 1036271384 502268154 514879139 1035073474 177246751 407299914 548616046 487831558 970350374 198471240 801654969 1026854174 231877887 140358507 65488986 86797698 802059690 991374788 1061770249 671211126 632038206 650365899 750516804 875878720 749575645 109697019 325743018 48258688 178266132 62267956 1005294570 221807147 837149374 692513184 299739742 861743420 375631198 842008428 934268674 519690117 791386789 663155540 426789276 322423725 1040146888 528067977 906603824 556599970 16382213 94952853 8288818 515542412 1006021986 219455705 319738131 108846782 739691926 982769559 137434125 689403327 427900274 45554578 324880464 838753075 334974972 16793707 1009497743 862737559 530910833 34349198 67670749 250580067 280489065 236206006 659775440 535593133 704849108 591764399 97493314 155540487 713822204 669546415 283527149 551794968 407125031 687733961 999215400 433701183 594983826 802895186 861987894 1022711782 218781133 862370801 635147352 148174634 819783391 864075983 556481442 934462975 596275308 990507447 409114961 305643421 910081248 871143109 878097974 289132781 741776912 659768572 834645213 608532378 914785049 169359425 163798072 833516927 376782964 41700482 756187160 925700498 1034703946 37382043 917268073 722315980 757784623 399911467 399608372 203309648 66561474 387758844 615261328 862583236 328830319 681773068 987681285 589767323 695487122 956434682 770155541 172355605 772665021 390431057 992134422 1050921232 867518904 1070353655 72335858 457107672 260556756 644326886 54791558 327284140 766702197 380030475 220106969 506925602 420255272 347355675 17448942 253722130 651391698 496254075 522586493 206423278 493980263 826512633 106126880 85895484 21685670 810030428 791500838 601494009 266911428 114085862 35348910 951543695 896950917 428308759 699181495 849305205 846516436 751051218 260152457 869902390 588295761 469461497 994550078 51378750 1071038594 509167664 24113341 25281254 20630858 535111861 565161769 631994963 1057298715 71440923 645857006 803922437 529240966 339830576 774106174 177004753 119938177 717305966 961851184 479049464 545960417 247028402 698573254 585125644 720222919 605328738 487994928 480575374 843152935 283964597 731562029 1048093721 50276278 336250990 213842722 511316437 55611820 857385191 940270654 1016957521 1072661789 788805209 766920952 937313958 73582311 726218358 531932951 211126026 227274611 172895974 413698207 667520160 96156308 118951287 751340277 142332598 48009571 272684008 301828106 687301806 903383790 999789494 864974824 386990751 374208673 821342360 490129769 858135357 745670592 571644738 594174459 346172637 1019277002 381717460 76677230 166694674 928947532 574107841 72964521 715163173 410231831 941254506 807945392 1033774942 8205522 720208780 948302697 587297641 1046671671 973114748 199665758 468853854 471771761 1034667678 809566395 862349150 503276378 810485144 305673586 920357269 240704183 560501500 546156966 390852926 902290469 695108148 530895624 533598333 133017338 268405853 909514201 343254545 702707866 995725936 81720475 74158581 512889254 214694222 395128373 707946222 286324439 333061465 338176951 410960572 229324173 871931924 159403893 979047404 346541628 262483873 277030959 974943461 503746254 1016316726 443775605 411519934 535569522 674053739 363785758 713412733 291331254 264087825 1059031604 863539519 235724951 256898977 270404953 243818673 495621652 437902928 67796101 542894313 362948979 17864276 1064373859 399049590 623875588 989825407 850756431 564925073 904803480 270680917 142575217 138286057 7847436 477863359 535394353 943301737 205846267 914396283 147888799 998435191 696121177 1044837094 172445843 939998597 508296889 833401413 915040669 404866652 921870602 135584963 754583620 222403759 262610675 21448218 381028152 200051888 32290914 621797561 377532364 910374000 800232244 494591376 85201790 262593381 103341545 705624633 42870808 999690971 779878727 466383695 426108699 117128409 617400003 619767752 2778454 628347462 927489610 929810086 624493930 743432670 666943665 839031488 26690005 934598255 418215135 861342396 837658656 20333894 643099366 563601805 42823060 672272787 837891240 1063459960 935938519 1020174239 987866298 184676865 405878767 835738680 830322665 239237212 227801891 958819658 232656489 296371964 1029319478 646971080 980525114 1034806449 14143407 785345833 874556545 126495886 959590962 881087589 548873885 1070140841 301457699 136981185 25231835 552099656 128103549 187141964 307688023 495832791 641845355 1000364458 205155913 129756869 498622821 308435632 940577250 98620292 451126388 402052086 201169072 484369084 505038947 183064688 654014648 34890724 132939042 882948697 569067491 402366204 834376590 947082098 330266106 365399447 596673449 300724519 743675189 211195568 912866402 658392614 72741146 713783519 606398724 849372251 1060545842 1028211128 12086801 1026144074 58209301 402444007 426165647 816684715 590445070 194094226 172446471 448383003 840227438 1061148638 788947364 273135930 167152520 801919631 979637568 502844671 1015844136 500000602 399672897 562904744 116560644 507079750 210519510 190428406 1059019147 949807394 1009407407 845505642 1022138054 274903538 124154985 409000029 569330042 355800871 429885589 91659605 712653884 585852450 315700160 454456370 882531827 833617013 161838279 809560725 388966113 522951686 452866927 343572305 738002061 900234180 827471049 1047529647 139422528 220624002 123499994 1028956083 995697331 731238615 806235083 595945522 774055159 630447412 844463808 323954109 301118925 189102046 1028229048 474726713 802480512 242121947 465376044 855147678 970012904 581786195 1068074644 447639422 711966806 419379732 282549955 520496300 990858421 603529758 788721994 812435663 599391882 621811629 392227501 630610842 735426837 752073889 997629175 433344743 804179368 371228982 474084036 770172568 238346806 178486605 543853085 563051154 152827276 26040902 518739448 888462749 254348509 13222233 851488991 550405621 1055639795 422518794 666027957 898200727 699760897 794338451 719717827 995345697 517870397 695448927 49273894 694083934 758699459 992132388 273280578 901843131 784466139 929944553 1069752895 807185539 1010263348 809293111 1050766061 613147187 756533784 27132787 534617062 921116939 759726435 486494387 584982969 529523549 747651739 579831314 899944659 1003699402 736773909 891534875 484601465 1070860744 657094301 808234727 1061102287 680968593 74175022 368348235 792561950 92218805 164740470 616382103 760388017 569010722 907985435 217918731 215523182 66130003 496481463 790682919 917320406 786012374 237733392 365685658 639441500 149717678 944485682 364389106 12997468 338190784 903525882 249234652 490928233 260945588 600328177 864902749 891858755 514815035 868178934 982937433 910023486 690729751 419892152 790284601 643275734 375979602 686542525 884533391 152112878 690598533 251885029 1064167031 1052504136 309694283 115954620 815901950 635442806 159520422 642648215 272046100 480408093 5910529 408236819 859830482 111281466 724069259 180232562 522017738 445419558 528379526 704394263 1038047141 785217089 718450516 892640586 144810941 1032077936 472301711 150200319 1031547287 38171703 729724115 932501695 1068870492 928345448 10851036 744718776 2124107 597233358 522963751 269941075 110323765 281635874 1055832361 886606802 414550016 73241406 903049674 84976498 367847021 42559770 583704532 1046399179 385326865 293616183 565352316 102574753 955817165 784161494 289118277 633984486 581915383 1051724165 600854887 742527730 164962646 298388253 1009477656 464131551 916024626 308153243 928432383 833919196 799223275 15394386 403155903 281438861 335238007 220688447 1034127215 268829360 428110410 519663839 643524648 912570386 40406632 436733562 845488708 614890409 1053923452 353381022 817396089 86026549 68541945 407056794 100762349 933926164 381730519 373883406 717159103 1065490249 113802693 34444923 888084260 1014679369 173473011 859134342 709408224 53523171 146837358 978115265 447405684 76166213 832406619 752973177 347646693 564154777 428519105 727442648 230035777 970038106 81616323 100571078 770111870 257313402 280749102 687287692 912557898 254211981 314477119 683236033 553168989 324765010 147473521 633581987 134308517 94817428 191493412 270138908 792451546 598545469 468412235 20752215 798972841 533687492 78876111 529587306 225113654 38320590 139667993 699822025 221260834 329181655 754852602 871278538 509755071 723305382 793338855 572156003 964029757 1010150738 988619161 581798491 658727947 346059706 724279693 1056769834 485041909 341067977 709761443 1006384602 756555434 235133 982452977 861876803 676660743 584066181 914348001 406030694 791034772 925569294 698830897 297933133 468770341 108069619 236547510 623431668 481104049 424032631 863041569 511372173 891419258 933710918 498373026 681095718 370625758 293193123 611200262 226690810 68656609 217527574 530161055 783207092 147447807 1041501033 813349028 506984355 755348976 170901460 366273585 382683264 339387402 716475079 702843421 1070979931 619405911 368580651 68369169 708559975 84261007 332719542 723581402 77633219 280000114 683008772 640401669 865552569 1049132983 451663057 638913791 394787076 939490057 755995300 592022110 81986010 761858742 461049216 343783240 890061025 665771647 957038812 706470508 177785891 159284625 188441810 767749155 351729507 957367919 482001024 1037335132 457076860 270652516 664137671 1022650224 24636874 400923145 4691950 914692813 198782023 324207670 36642846 44845107 46088027 143892291 459113901 7397920 482924306 295559111 636491695 377079156 932038927 37515867 369674688 508556897 331837183 32071414 383579626 165842237 674471377 608530052 216634767 358237346 725105377 867535588 177495902 856330788 91974213 915290274 317852928 469915336 462343181 868394193 623913971 1019992394 718176560 874444856 790128242 490836139 816563555 1072755624 380945505 594077863 108597915 391224571 446465927 231100694 364486043 739619665 760239658 1011806303 1041852016 39523076 48663914 969827396 489568553 424804635 956636574 152627638 551230838 264850593 889441843 583470159 937820788 383791704 226081564 845005926 717919716 165272060 503904506 102286675 493689947 423075860 999567375 135154347 379878664 52147283 1030397196 786499366 668354532 956210340 405146057 310446225 662926719 114397639 770273513 962350209 877327103 865420507 189788705 926031672 950637784 928965009 973340757 571679164 863522470 11831377 305559215 637975052 277023335 492297184 2420330 443188122 122400515 660365731 221294374 55223001 479580546 805640520 260584298 942956135 177835615 255181819 865856472 705278177 108016847 373379882 76885134 695103168 928440923 869790381 701267179 731492650 530482599 871759443 185999371 930509458 235235171 471879190 1046690866 255276976 161620320 208804477 974557191 875295962 100828539 165817381 868739487 1043496703 105233720 798524412 823931040 154679098 49495035 565482991 25609885 964301946 780450852 374894798 297669558 160611835 953312122 400099123 198424999 998465208 720654473 423704118 914947813 288070647 1013321135 615840757 1037238919 353399648 50670003 686863500 897848329 475853506 324843857 620855134 830829972 378258724 96312818 935338109 274861035 1023496837 1052864105 549122358 464209910 297293901 270451844 148072070 906999369 774311067 1030209940 706387078 255183772 219722855 160037529 131149787 178574975 570989585 549069168 1044373120 1041003982 265921432 889937948 228772493 141669089 909168545 884919691 490241641 465461764 1072144688 869381198 618751077 170226880 863129588 69221047 945108369 198371443 287836122 780284702 635991283 307578994 741343944 906057358 547150976 941766196 588131662 589488655 724044833 140408461 484533915 453326080 650006786 924939181 78732075 925373539 935893242 454539333 537549756 765924745 1000825929 290267016 752094544 173338720 608848585 1041656063 315822825 142359803 383527129 186661156 540717487 901198411 424593464 34560947 486910167 161632841 237086982 1068911449 891303760 10547531 953992332 248266865 470760352 343487314 992759479 645249981 480836515 571339433 149135358 18912095 982739693 321825302 468080080 471862051 564742480 436626063 895899666 539462694 176020937 934283761 855521830 17359040 926849117 958405789 86153344 930366627 781266524 811136558 313926298 799545981 711086117 751844561 672916718 802160578 712526770 740094896 265916865 918014885 401367886 463674607 605318834 666001254 830581715 610831330 245396222 195863714 96797937 450795830 48923022 244371366 119211613 1014639074 285467148 814295130 811883967 515611960 25336189 937954003 739213169 754812227 702871855 220546150 280076065 269972791 72422173 1038101176 24642620 768473757 722100396 420767430 986077665 876540004 194105861 486364220 619995706 156208280 821821425 1023776875 649464354 581936072 940961670 476124420 793943469 635877586 631111776 316065001 54645668 955304736 1008647593 146657728 276512505 336557052 231963017 651787432 419911731 94211478 621768008 269785494 82188333 993577368 268349855 235515473 1007073673 452671756 295246338 766538876 327106198 415037594 828624027 275790366 774241893 754603782 80188941 407141862 425470303 725864993 671804340 896663585 378714708 924022375 201537852 771763386 1021524501 194895782 1016040265 41290364 416378131 636786234 267813730 130987261 1030761016 609332940 864260065 418895003 473387568 911755516 918159662 1008210378 316977729 435662716 1004511534 263878527 756773057 331460296 781122473 715609111 65117721 847956087 508475474 418038396 520578844 519550689 190521425 657304912 958562019 1044201734 874144910 29754117 1006095188 81929799 773724125 452112484 203245840 280888817 200811174 803131682 878831133 260184423 544250800 322618603 495820001 675199741 542224097 608633920 984485707 763368190 658600442 173014427 726340605 413684942 454707479 518257130 100483876 823286613 436279133 688173026 838982954 41636282 779353893 89874742 879792107 476993279 124778239 1050169934 778663903 177388464 655517179 560706208 908645733 385946963 1058618801 206503314 296262702 366868356 973557293 558389200 721287400 708544442 308626445 1023905271 870839026 220121542 583606764 435190602 860907340 668703653 919335495 873965509 893239996 997850734 672216625 255262870 980426932 540026031 981990548 763624038 407539745 52015802 654324362 143382466 135052586 663437050 830964404 222081502 700284939 76206549 71761297 639800785 894825472 641810146 163420196 747931991 55810029 460871652 323794028 967694126 166694511 305120048 810754170 694942519 1063492418 238619406 873865842 363123737 918299195 39545044 715890340 302366765 4184365 664505992 224870788 161389597 960548149 208791790 822037997 4052554 380798579 381928070 403860606 49698404 583081528 440014456 880562299 527900108 722941278 146891689 593130413 373486522 425727228 930883636 679865061 110745016 880823156 998606346 1019223143 904598115 902666597 944404317 231284229 929295610 693621664 1029526032 950187178 119065594 70498572 568569160 1037484147 744124270 800384955 59102685 584961319 602883778 302821425 372800698 308113466 1063938352 903606821 297394770 783459854 511493256 816265551 668805824 784887785 511849210 333912936 647956143 523816279 496633 783650373 199453501 249691977 300142330 719348896 992949106 228639950 840874483 249223413 588174421 754382100 521333030 738065675 848765028 943086060 29740961 1014340991 764909771 695171023 1065442603 191292415 471657809 48936282 811122595 886343556 488687797 432707212 907278370 642457362 425546447 567263364 328319200 405831886 656053812 554162077 139033122 382418135 250991271 89817174 236745816 439792152 594811115 932396965 158259920 214022483 382071319 294753515 757215140 323021576 926289038 172203996 784490657 958269973 1052338165 166300142 211043018 31535909 95299929 555574990 317550346 281009523 633030185 65045032 196249650 396576613 275266746 261196755 779363037 24110193 667602108 67530181 1018701481 288482398 627354361 622864581 96720783 1045251683 227053962 992657010 782452313 275266151 564726077 749800867 906677188 22747869 419457578 717497238 798255062 511432907 929462263 678088594 825711531 573958488 231895443 567815009 53807947 794947452 66220946 127456340 87789192 368589026 949762073 82406733 294019536 1007361997 709400070 399200451 784870150 740647369 17833878 244296605 492207833 216163163 999737554 998674904 92628601 329074021 778319263 293683911 581389978 444326886 79775659 261529455 778657560 836527830 619377539 383459859 427889333 479098577 997565938 1068751020 211004515 647743053 728730241 467036163 97539375 997505260 887316297 362044510 881916676 383620665 921949460 843010679 746134832 1041724233 531982652 482802768 336094955 607488339 281593159 514507163 883624101 660470748 648931148 924417010 368626666 638924900 366607712 345356413 804914193 621554656 249629001 156185637 165536436 281676078 245267122 700168813 553134383 1064947305 733777933 108117553 255702183 1061219719 834151568 864251865 116535751 979232227 345838906 451203623 594014870 27833053 170753120 514323247 332267030 603918256 340318171 947730260 512359886 982990691 194565918 843790603 609954747 359853265 22783102 305421447 838034066 326906227 787697690 125624801 218541044 1047969864 925331125 605232820 13050014 584417298 716936586 250385224 865248220 858943994 155825027 621864878 983612068 235337454 452566367 429767188 705974228 311074645 295538671 562243761 722593146 1008237538 355641450 287712763 908070424 704870868 642881163 983284645 282166076 1045004539 271021830 535259861 441840542 409333491 987723624 433195447 1000200733 663284066 909034944 978167115 412576273 266700085 129826571 468760135 714577614 554143824 114548727 829375908 346894138 798113821 632386668 989936203 286577104 122857339 1043601378 587896145 303439665 1001682282 442773408 338320696 566439222 890978315 822161948 339358815 738967455 963757065 832762348 328888648 851027433 546751430 44437979 726217781 476048594 493575407 381202806 358934698 126084059 151896018 513277439 507710163 120755391 134273437 925486810 842207779 214854643 131384309 619423649 126433774 826145331 778365140 180453341 775628029 365894544 632308460 831222912 788945205 919797006 358949878 101568562 865532344 829377520 825870254 23035789 104203626 514203687 974997964 677242048 259132094 316283304 482079517 791427690 268868455 378723913 719720902 800260202 414707429 810403408 664730615 79767372 937222966 611012162 791393608 665670169 951875980 496591915 554486577 849017210 191103036 202864736 182313107 670942766 499164188 554013810 394420856 581072560 543725639 929986663 976215003 824230162 702008753 393393003 114953176 892756829 886044237 547179229 458588610 277394446 301525768 988547384 381182219 387560647 331471142 872342686 736329665 238460096 138377451 416494187 11194921 549210651 713368042 258401777 608551200 513827504 365651391 164947759 976489682 24920253 409888174 497195552 159018607 1059120918 722673194 432446926 264731557 677880333 769396911 654720519 876079245 413896041 193162894 46007879 374147843 646534449 632519471 31322929 903415283 51574863 158004969 65684087 868606439 56919614 564161271 465796950 609295807 50555556 392749870 664828222 183172167 203282052 517604673 998891404 875119278 277649247 1041907044 327687006 389079898 1063055147 232487856 977497459 302276995 947184793 980071061 1056946934 332435829 399339995 714904200 180561874 115083569 1034060589 257637506 2457954 849866187 4206065 216451435 626128656 203282530 15659579 330419366 22156903 941349802 921618958 708116226 869207541 863243578 787649616 715719031 362771395 1005062021 761785411 201663020 391386468 371874748 633650002 275652686 775661639 876209972 835071244 785682995 970458641 650445545 1034856862 304621413 273375318 346533180 181678086 989202420 436432583 437669750 11583585 200893400 632331139 47389775 634599523 624115980 714949299 457835078 170083375 832786546 742059433 19194194 562083559 69018950 657150059 370352084 194739357 202309728 371460993 838715492 554187491 885323566 675168546 1034099944 841887517 277572130 764329731 4875323 995514413 494517347 943010829 74264013 125693728 208250118 511498829 81157411 1021457352 684723011 553998217 457036573 677332578 599272093 179522361 224992122 136014792 15162397 409240719 570506995 1058688718 376252376 510886179 739383391 988394355 340473665 115610256 262839177 494443032 912411357 1070343305 196008582 642033005 224669185 433258040 656642305 57773552 751846316 923867330 768683677 47130260 950410831 299935710 579021163 401066022 760796539 463551384 693458926 863535625 1056172098 360487418 711143077 561024288 752070835 897663517 394998639 320565004 1072225781 97473209 1008938701 659883283 671717491 137146693 214662781 846160919 806957003 447347632 207739737 139103680 810933430 869933759 402962626 240804401 776607339 412611447 1024580941 538464604 891708657 36293673 606431670 725634664 520185978 422988179 98563052 495304068 967079665 264049271 1024774610 725793769 827455227 208378761 73246029 938796953 230793817 782509853 681337830 723871394 485572404 576759723 576062004 910083974 539686527 736199089 58265217 876132632 916695342 653772009 58994628 915781083 1024630735 834327013 338487140 553306529 975402809 775333833 518420741 993464020 1002247477 2323441 998664236 45776762 130379333 1035952022 403991308 938439628 743287906 642263774 159223546 759669011 348528149 228628671 843833022 321912699 620724566 922986417 678402233 471089917 321576610 634269530 582301868 543072488 815575064 1051984983 215828679 591801762 86268239 894085959 170690844 48576633 542732790 970917279 281075174 994003296 111923003 255144463 457885055 200679736 416501827 700288520 504720331 655916114 1056707198 923177193 573414900 895313160 341505475 171629243 252728760 1047492314 593365172 414384321 134144193 647400660 404505195 307677328 455770043 1035095041 935291558 609884019 79109742 821139731 93798385 361341799 811872683 120871917 884584353 620169979 154699392 456376238 242741794 621550626 14529021 645620395 16638638 367859442 751905198 851676575 661854211 336282125 35474251 801917679 57261336 640975362 21155909 39109006 1007204068 793771874 503631299 379225020 973752564 780277378 417831948 959939816 246640146 197940521 78097414 599545280 1009644427 269090919 887887635 166610177 193901533 240672563 838601708 478921123 714261693 651319159 577038454 418176450 599979345 338393348 858978130 722368532 378806742 655861425 831298068 592941625 1013515793 274382906 43438303 309213377 466732203 22560307 128704012 944553215 696360380 296542730 118807332 76148846 861126077 649296566 344530592 651249497 948690389 1019462336 601947887 738011017 953371159 852935974 433273591 922524112 903062043 1015898858 560215657 104733589 456602019 960628592 330811727 837327582 937514495 77064233 382853892 931237060 766033701 857329173 596767595 31688059 181560593 276327108 315792126 676497631 415480872 1031299527 803929690 98208747 320715929 1069485143 831010158 271726885 862486067 824751874 526270824 1016206051 998763731 37296223 34438730 56955110 237959525 3513021 713412476 262006087 267690972 467019824 973069245 273808893 200830919 931610023 504587039 356354865 312345341 1063496794 755809017 969077878 758620618 388515477 593460880 90532859 322026024 161075013 429951289 966699343 233901018 730058372 752997479 887361158 655737056 414543933 846810921 6348707 939272658 13421752 1002610576 315128643 72345632 800797981 666082673 214690982 588956743 921066844 352119358 563577726 359106424 758380739 165104846 688320752 671656055 964535883 677574980 1048544622 893519023 416399256 437164150 204547620 58040331 664987796 322562408 545008241 929569664 518327205 888165469 621635745 257238140 752238671 1053508261 553434596 639996774 46083418 1033164141 395178264 44481446 16535752 687944142 141455614 918446055 643895053 311429633 617691944 1004553064 244810245 154621666 33564014 618048642 254756910 603657306 860640329 206840648 237330697 145439852 684929714 589188887 521469919 716032193 235406524 644634948 559391370 159306896 949429871 29984028 322312197 205290242 925429788 37507460 898808125 762301110 723737718 487221654 838294493 365785527 710963743 614435744 1070093050 954330406 1012560466 1071894017 960499766 598026180 189015471 927789865 833494815 1053362463 1052483864 112315175 726387048 1055484650 317360707 572662665 333650048 1054498350 490010982 664524120 981042697 532060117 241431366 484931735 517105827 921839406 686320050 222988935 458483969 1055216019 198625562 992033959 994586458 357205812 803804841 932574589 478260081 510400577 422994400 878514774 599204067 867316716 950349380 455317528 592909586 448277515 131357524 321501210 1030512342 545409838 1061998625 348309634 774135879 2228026 335860760 652565525 703223648 596769364 945030908 6730773 246702519 214368481 421622680 381625154 718590878 987394581 615004099 85725492 48001136 379782415 185578379 972425602 664405080 222136445 665670177 238420399 1010415101 201983901 1332353 829927590 971125222 367230662 1049553389 25375101 641754467 768394431 650961667 936517068 792244340 74992116 272084486 908877447 278407654 402897746 28482419 806174333 165157638 805966052 804445681 260117124 736602929 546329491 865391125 28803366 805292067 378611036 145282532 906943181 99372220 350293908 545293139 362514518 523547702 774361313 643575858 1051099725 754827275 33717267 596159390 87200330 813491338 248895086 278559239 194518987 229915306 220254917 384358379 607890505 18325293 895278221 1069296649 563361414 251560851 569249191 6743788 936203267 264979296 323966905 381227119 755257329 437790251 240564238 998456816 30733508 114446160 621855133 931126810 64332761 255029773 209336943 892067874 104747358 565271889 139730065 610679725 272866236 842661659 62707724 523716921 903315321 144708896 1050793117 89782685 697591153 164602592 92474190 144844115 627307724 293615790 1071758241 568061930 227008921 375678576 387866695 66278229 645244304 789989656 983440445 189067215 60495356 726805451 489788124 341360909 614973855 692299969 88159167 115147563 279458744 458297349 948873501 72487438 402172497 570817548 336551180 396746836 647546727 710764757 905559715 883400588 818370102 543428021 726088486 943491809 392424044 164785453 665197853 871760944 661776994 241122671 620925573 580164104 1052176210 41442135 1005755354 725652816 221381284 682757160 331752554 152498738 502217881 533193991 206987203 598686660 566662983 317949569 127042105 793988122 265598823 330995378 695936431 223309192 383113096 426208781 835518873 731332652 1039013920 209004351 1035152734 217018795 911274168 744722251 696528457 835116450 294884225 1040292924 487998786 914369776 1027334383 1039334402 864406731 279489690 877257142 939332251 760885933 402090057 654720711 957181838 916949675 980586645 793551059 100164517 96957291 742156826 1052203436 1024378359 1031981105 541789168 82334186 332240519 241304592 552875194 753935630 860953265 634925542 219523789 467822752 911826461 883058108 281381669 123507348 668383205 649395759 340004334 293495107 244878181 26184827 249425719 952601266 335227978 553602930 673979946 746091540 812153588 161605007 7066838 216350291 428065928 1064221345 279591321 203781417 1009898359 797684646 301545563 18599902 515453550 783042127 862266054 873520274 800267458 984478178 1009887237 762642741 237832519 84980210 278219525 560901141 397860874 132317610 1020694394 28781429 19242635 695775036 1071923090 333789468 925481851 383320390 306638173 39054958 538123919 938008596 95394765 904702235 319671341 781945792 552199598 90815105 267744677 1001715653 1025084814 184338096 391621869 185824848 647889137 916346376 731649090 68038341 42004624 910814303 78211298 440252688 113645290 193323602 489686673 505601766 428257881 382011700 708504252 536780722 443607070 672524593 90016784 33134505 907152870 153900349 920266519 902727031 566663867 188309488 638458030 35779354 1019312264 92285365 630549643 693834507 926677106 951045644 409100228 741994619 389574693 545750086 1068519428 613275479 941803989 432691331 219502939 105927064 810829615 966773599 335760319 216724565 812842894 892171194 37726210 341943188 964957437 711666694 369601329 464433461 201395869 425489757 282379680 31102798 961472643 874386746 770385527 920218912 192864175 338978726 321944403 159532444 322889348 840156898 994839258 748278646 806553653 298543462 772440566 222151626 765989956 427143610 556510580 442115590 464751444 775972723 907035489 347369160 423106772 70339647 9722199 814354521 1050222162 334349730 549021324 681426807 4307969 298557690 191651511 485867136 235749904 436576841 916700073 7328069 266812593 185287811 626208322 221899328 493056707 978080653 800833859 480864867 314810401 1005839831 144963560 715670857 743410126 48275940 289889619 111890501 1018595822 1029033073 1026277248 348038208 647389544 476060855 253155684 1001256223 813483400 242775301 239964608 758993191 234258121 596423622 759587365 1052033736 1018291306 929032015 206876005 312551221 724964236 578285115 671883371 241740924 96478807 213491029 281938235 357260025 91726650 1035314653 123751749 55320133 438149636 690643379 300868429 401696857 588314218 690579730 698578688 692668857 853941462 288745606 346087260 311359999 70742307 528772764 933592112 183248734 209448260 540777284 638281302 408435940 325679859 69156334 506347069 161717640 253337365 1063918638 998327838 811025378 142738934 129433088 556012467 213875342 992519821 382639786 990831988 460509020 214262066 748693932 693642515 68092023 933661715 165255527 69806708 570100359 802597458 137894720 245313875 6056353 470851774 838416826 826549550 831513310 77857107 884133070 219129587 477258987 142828691 196925188 660853990 154028282 89920130 878166662 620644205 693902644 603787831 124202453 868974609 796777731 789390297 351136173 468753734 645854499 749739578 637315313 776495264 888596995 458814144 993509499 11045741 16938611 228274326 1000238126 560878413 44412218 525486847 197712023 885608774 214044918 760152245 186201539 1035846759 947263016 797732051 187460224 1009090995 637929265 632269881 466172141 183128911 684124479 738165251 292414986 90073156 581330630 464995400 798385786 890730885 235053879 750218406 849039416 63250335 804951635 392196631 145872015 169901962 419562070 576192159 490842101 381066940 191318833 629507639 235818473 575090635 404675508 383803159 878725083 649481572 666426883 232008348 561608305 477755282 443244837 492249578 266830285 900842541 967124038 662057241 702455955 664781353 310079185 690687592 13911232 758260684 979598561 238926659 16453756 866062577 419856500 243132747 442604189 568784597 683520891 698252110 647170763 711946560 998704066 989229295 182015331 631879859 521744778 1063751634 966893381 948715731 392736199 837944088 302756438 951138054 350866983 662620088 100920682 178857479 589871423 23329584 43597471 123873253 565016572 68619255 36347002 266339972 635577970 298874143 1071793000 234832102 192775325 357907106 755339865 492378502 778535364 134200944 411229005 743848350 201055799 408879887 523637888 619690094 828102943 1057721536 285765407 540025392 3231895 548816859 940722388 888485834 966069590 949529650 862874133 717951315 31607353 179095021 278763832 467701426 750437178 861169232 364788704 640869772 761068065 717934264 134105502 482912608 46194383 826971157 333894172 480863956 454341575 65145054 11551329 325308647 175189232 729769785 918095682 998801734 345920495 143066521 86556390 574578317 668132051 595297154 307058027 498305326 767724457 637758728 565441364 662905459 1051100520 623488506 372631028 735099600 131476078 619012658 106472936 38737976 252423373 56960716 906132548 756019241 942279646 618902307 472340832 1058692545 237772436 963387025 606846745 439138774 623449800 602858846 1050176469 251336484 114414390 885183403 268399018 405869 871072431 421542254 864314659 434637091 703219002 397608496 658992014 17836455 640430451 342464094 754824061 947834994 591886244 572762459 1069795954 568340937 1000174602 283931164 257913135 944492546 189585203 1023613258 600376741 255264937 146305379 719301065 35582582 57733751 969288664 471048226 653693578 90728968 306149653 852536702 956142478 19968461 964580875 1061941325 422882133 325049195 169426466 656845427 934219328 773399514 805776314 583017404 85142038 1010214989 452028386 994249760 883433978 477549842 975296789 43297341 548806076 1004929010 141410859 767647233 864663986 214343314 551504544 235403055 296644973 280389905 138820845 1017063747 1005908063 672626080 286010522 650859676 774537894 173109074 108035472 390887211 492725186 483717132 141867001 546921656 763253573 1024752057 470448342 559368039 143775700 132323340 1019245582 2342044 649723724 971113003 152889693 878060570 663297677 465146411 403658714 362381772 862414397 723781889 585137086 521169838 1000127574 107636426 784500260 851678214 4159250 969316416 920200841 548828136 1037022977 52779518 700743632 170669668 169973724 654304953 406050164 931966292 826974985 351695308 626602631 247136304 66080968 66985521 9207617 695245946 885510966 519243486 157174920 922580823 559137923 933037002 322509621 291044197 356480872 954795291 966242022 460452967 726095311 386153107 1040670044 880547313 698670871 513166799 739409513 126681370 829240545 210989752 563406021 160636885 1004526863 450763378 661393393 846699985 602332564 204842626 462540710 623435698 546800206 412384301 502706637 879019884 889736417 309835361 26867931 620649697 686530950 140019029 68358416 77659611 868612905 440796197 187248656 602189519 437591904 775085870 1061758846 611167004 778716892 135951424 355026895 362377190 513101288 215408508 829300490 986751511 1023642670 949655449 48814715 84722701 471819001 893306367 633246803 38937399 48242591 1013218459 852870042 353965726 79660360 866145538 387879557 543034864 617935560 981274504 698614015 135083631 555574015 791112298 357468833 730480699 1064117296 932391992 1050847479 72340337 880889998 712567431 420637058 274993979 19329202 449995788 145273774 44797177 40124095 292883625 920644113 691083957 230913403 491441019 907397903 517029432 414966370 94123858 98692395 42059997 901887149 1066415485 465645776 314432184 458065639 995288562 429351167 723709579 147515313 929015562 172768919 923083552 517439138 837813419 932759423 894661078 287640852 936773217 973096517 860557403 534288847 961487019 250191951 515468037 76704953 1038782439 455204562 567054106 82758771 257968127 889416996 981390825 558655786 818701449 926146633 666036138 139654412 652904549 1067572938 595854637 430910458 983143875 147093306 643913417 1060181386 349148277 1068842535 748065887 924583922 401311255 963173655 292232040 1011952528 63757467 1045917562 886580005 747069600 289710692 741116810 765159931 229924584 417292422 1024113916 702693942 463162914 286857029 480656653 926372997 90853818 853024326 55088803 395795542 851437798 132533170 955277110 1046270399 427058730 229212937 947568001 829616163 473220541 417110509 724181078 959500107 299885252 476442352 953563396 482498513 630993187 476336133 423750809 316011441 161467338 811103463 1014362371 934640107 968636765 463989671 236630699 874481463 238255526 1053498281 869025004 788145982 371490902 303215509 70036517 614788913 646240493 847151449 119802092 1042493426 815205026 1011546672 117253552 393458151 918088358 148969679 487156805 707757540 1036152604 217829306 1045294922 372498309 148763297 69540898 661064333 707221266 669953630 570282825 879647109 770832471 975060141 175061480 492130766 903235207 713600612 1003930968 744123074 381131760 162178158 252549992 226924230 118494728 188611235 656713073 65732333 700167867 753802747 459390225 72201298 758721955 831317398 332970932 481965434 723372184 1002898614 875914242 868360287 550880921 62734670 117340483 514347222 655357907 604438826 14443969 628668123 609748836 970664956 530585247 133598037 275527629 576372861 953775245 689010377 741357968 864090883 625409675 376843109 186010716 363169819 867385141 494345881 216381484 173111597 1033652666 942289613 303599271 874124743 516863218 1017410462 266368212 626353712 823323256 199687623 306554043 139311805 33357414 158055535 225381288 442828459 409895922 584142757 1055442805 1032090468 284937386 137936025 446492507 652259305 1037110531 966657430 347582260 202374013 254348918 1025163759 1010325325 990596971 522294868 30332451 99362607 572700971 1013632613 315745894 898644274 318720595 196412105 821188865 704001885 743543805 179380647 808231833 571550159 516556097 920687606 330890584 132067895 975333270 717212866 131225136 723984318 100433154 207847269 250881412 923747561 865793933 40200901 723578998 788293783 914512716 779873679 476371044 586881348 1024360938 1055938171 848634529 731084532 612306058 1048981938 853332627 1053993615 859959247 1064728925 143561510 52922571 654152752 908150452 810564588 810594740 63248559 329842619 576047852 895785053 391078115 1034093146 474737308 858761595 243590097 61019492 448614390 304766596 827696083 945186524 99242094 539551853 242082708 917741155 18483483 364504019 766903851 150627868 240451834 144266181 1061105832 931609167 765867413 780271438 949960171 140778385 603307365 891768362 244145254 388772886 903302378 932532218 65477236 781522553 916306803 838072578 519471887 437242627 101785958 129227449 708851836 947548281 658101651 207822072 1053632551 688803966 857165586 407119202 806479579 542961014 1063635252 72645645 867783881 546897090 18588478 513397211 780515144 391663099 1027220511 534315990 336651280 390382021 880075365 31977552 972685514 242839328 715541206 687108330 729953531 26700119 771776442 111170706 146194229 293158376 495291693 242773206 375874642 240458280 941194204 389750364 288172784 99531595 686447229 931888817 817298490 614918516 241065840 418679547 450128615 522566172 145622271 258464947 147427366 660342865 868304101 156502573 508874252 997673175 403673944 474304288 1001296148 162733518 168091662 450902426 377805277 208297171 897828242 1000632074 760372309 242972709 980407969 269214846 98232487 394538687 137365056 680974527 211813067 839241726 661498772 954690136 133796588 69903605 182164087 350288177 346108097 670482823 70526005 188130393 840383119 471895211 716531875 1054227559 638992953 569751869 522072213 729179470 38235072 806323843 706854572 49960043 724095597 622874479 670728072 843856603 502095354 1041523862 533580594 732743814 465413812 865575807 498070978 564839789 995514709 838730391 703285372 743601404 685678414 432835866 714411927 891431409 494511876 174402428 832227109 410774490 663912621 643391482 126498125 576516448 224054602 283023427 1041713854 929477498 11484112 981335121 805241733 24901477 194348061 814680825 656358971 175538075 805961669 409979471 812725561 535452114 65870446 743318783 980209808 708250237 896462231 218449337 381131754 339728085 278556088 969052640 977517723 327023354 718026304 944543386 348318021 879219823 54183644 927836373 521094978 473081656 191266912 1034198985 387436373 582413669 995165530 218244011 661989914 527454910 439987119 832515311 462526152 458503418 321972632 600101893 132752845 603256120 820581852 395473366 958298796 796299791 1025733441 919167078 509771294 800938900 1034742706 692034913 828317058 82001602 657812162 159921303 1058881762 805294278 742196702 820636100 564588257 397360540 602602000 628972273 445503327 20327256 521141072 652999386 1014067643 589401268 6524594 383098790 757774639 972339344 588012731 622975395 779712496 778925249 512182407 89470708 206809886 752380948 180660328 36973293 753870921 694544868 557617011 735881479 657461249 428952388 271044670 254847974 229363484 906171346 621295498 776620438 564715077 629344696 813280057 408675057 1026045802 1014446011 117750603 631642415 129491535 256370118 24585939 332486653 450811356 476675728 221793056 1059776463 696375600 724161004 44692231 485633383 993881195 685244111 850801406 1000394658 348493833 659439567 748685002 451959048 240619406 67713662 133372894 101564777 492727650 607619689 1071635871 253628958 143744404 1030669533 557687937 711757785 375221247 512036290 204046362 615786810 690385874 678809541 771081984 959918913 75989087 837487565 114772572 539343849 778388950 74394675 229085973 819699460 809452092 525039209 828084353 691181887 303884021 666333409 249639469 875917751 115183328 945327286 961691954 850164228 745009917 809009626 974711197 648427489 192220168 383352754 27491293 563294956 377010075 1016024102 970988846 116771543 499021522 140177686 62554094 772252064 591337820 213419857 937541302 865524215 510797631 310797161 444803193 715972801 887755484 340456249 86588133 1054536096 473955683 913170006 790980998 952054550 156615023 1023137531 829577642 188409640 741367775 59843552 765893504 295180832 48462521 938016335 466174612 693128598 133250596 621652471 759220344 567793365 53016776 186603814 616055712 419805033 754745616 917906160 405782206 133446481 590516896 341509061 60036607 546918344 104138829 300947926 977761391 1041247757 723605989 711424396 671851854 658845940 247344041 160924192 590565384 167507912 85276338 675785453 998177924 733282456 619080791 195121942 827585486 555691284 60678937 258840444 565931922 651901460 580174261 200692982 213071435 832426601 435717909 654601744 928889336 1039049463 628766759 1064160830 326336465 491453309 413084517 863937740 652177603 841764593 229815939 715371784 384350582 378479865 406276347 68188713 264859429 604214111 979512096 323991741 775465527 399843100 265047512 223343109 324537392 168410002 980168991 156375805 551787612 990250022 5218373 252097137 1068142741 659895818 622155821 232652825 108527466 399812858 709639537 64889376 415426400 683659940 96294677 128350744 383472448 362720184 695292956 447558947 1066617542 857431495 1013140391 109892992 637764250 235682790 1051318593 961157802 220630927 350161823 884476863 465020577 1072964104 823008813 477966235 1002978771 680718946 704083024 629434731 237874707 491930340 835825113 446580313 874285962 705372644 422097504 646448971 1041437727 386012979 666255882 496272660 525612201 42765718 508780641 73791177 958627907 464665712 424823686 815612936 896244576 375295813 733785903 527071195 686099071 587772549 220567077 571187440 57889773 675958073 572389522 183707054 831243497 191459582 682948042 407726319 1047766648 503439959 727259749 654984964 1057032796 106100804 424284977 924142194 724636252 569319680 234261113 709156910 877126473 430277161 25400164 879175653 575420977 789140964 640474446 265938107 343468544 1037268284 179252177 993137833 912581492 329268882 639187548 432303153 827446990 393803914 196749501 470217168 815636933 99108217 870449700 925037412 894308235 376966201 851876463 928674025 600262402 361150203 380186419 29862022 825264398 913675538 84323109 712887848 1021333603 91587081 832672098 382306317 881488001 266397324 1006463484 858474891 83644056 98173554 509816912 393652241 744710672 653778357 388886714 509647539 848045016 968492095 272599721 865879039 380117034 3304763 326190605 654350588 692868352 449956779 501388155 997581205 537293496 665187691 127088638 121529722 1032669692 248182668 626424987 344393776 157275126 480974810 433014354 394304637 192672129 205372170 278894286 621749274 878018917 621791083 404621401 836061866 630465912 204950704 785610003 914513910 1041503118 636037848 1023902171 568900657 708660696 750830743 192309197 782280359 723826289 513204293 886510951 720719686 881981528 44772157 514772427 404810622 929030619 216236662 519577905 124596671 450065893 297252575 429508967 30310973 83428906 849037258 1047967381 882111531 251853467 1056054768 1027698222 525711382 353869737 392209916 192594842 679835768 1026059499 27588225 614171268 925910653 294424007 382534108 819817987 868125903 320743770 299207816 590903887 483164471 520057539 220798994 127345295 125066834 845604821 1035844823 896804646 66279783 786646426 906660580 541816151 594664029 865510062 720975434 782983806 353075059 184090955 343794504 488114307 56397741 706282829 673876111 827403095 286502743 346256721 182547671 976666723 93555252 111517834 324160089 2836667 890465289 557858254 850791382 54008407 395427732 718925981 963984694 785170426 1058218447 1030514594 712145744 520626333 1064093872 515717937 674651700 860111140 94300011 1021759391 190041459 622858446 911608930 138623067 880397382 336174661 138141247 389358875 395157899 246349356 380736645 976910779 177584058 832646421 137734259 183221646 244851001 30773674 194499817 360471423 180021009 1017866301 942091699 892016109 445593094 30627213 557331276 46406509 303412786 327896190 630183869 935934020 232061365 903024859 365722777 555182567 56157276 303166739 1026117870 1010586955 526656114 77715619 644988935 468440120 470154243 795276372 179412426 617497577 606487096 665754973 695841132 231847713 1073552997 1011851447 453507772 570216851 682099190 172372438 210565154 436594361 568167516 1042475206 380486170 1040124097 956471193 147941029 1034341662 657172579 290820054 610370987 730238947 534276541 231483298 523008718 599578075 229844635 63429409 533240658 572902282 930737612 110910643 929406501 618859350 56680051 752833198 80980546 460683032 936098237 726716026 252145669 31354262 291125111 497033626 244745196 246444493 366378330 544355224 587521011 994919303 343577516 370407474 399649065 631085511 177908747 812712555 224907877 638211134 840080316 553498637 222957038 150969936 848468027 930001774 886726706 102138109 458692387 467854643 804040581 54330829 700683865 1071524091 670167359 4681950 853454936 126470566 760359753 658836992 918229275 152475949 151933987 57092347 311245078 468099716 694205631 21785228 644578356 817039532 679224401 737058319 945529987 264966857 195050019 977243831 154342871 992052207 278875238 578959443 91205254 147226398 148443429 221103035 741945984 315707061 920420098 931017845 241004823 301496478 45831029 1052091652 878489648 155139364 339298758 323390756 874370357 582589626 928719514 722993769 374873343 822160625 336834519 162799258 602397635 524909765 791938894 687072440 339189143 441851856 496843430 434516098 16391249 187372770 52942748 179859507 57375926 906486935 536768006 623420181 434943766 718862356 426712182 930625419 576922253 915328669 943128835 821824884 811132768 201786307 766538844 825840391 988411675 40864838 1047818756 914386024 902870636 406939421 991714801 112983516 952365159 363729057 461365373 78460203 498317641 55145119 712730433 367243720 1051047428 407703240 316954309 640288917 150819263 563700368 680022882 320784084 379273190 918560974 664931053 753302569 340650620 361320923 384494532 889583178 1022920071 500984871 360527020 1019185505 1017847439 478446320 789104833 761969935 994429780 1019595850 49689249 616161000 575292404 132520641 584689924 772559169 153704565 314540938 345579335 908719408 44404697 366594900 517301382 1022902388 382402073 936924957 181450715 1028557744 867327449 362815406 610541301 681682046 1016431096 356505958 349749373 110170928 381020863 661276352 196853100 514508266 872082904 230515425 603529130 325584888 365690208 539480604 597670425 681863958 1034155334 339294344 38698381 1006611123 844520524 680599173 953906032 61136221 749671946 194870255 953882529 411063959 713725926 803709677 1061923895 965454654 973363743 803724766 790621203 501226985 1028102772 552228287 739194470 622704066 648977003 1016489054 788170294 480977014 783025296 723962239 90365939 213869163 882519410 458384219 528084406 559036184 831450147 415132682 454295295 354803501 661187835 975052683 605134066 573268607 778936680 248022374 139719934 909585085 848720567 614720976 667686850 131839778 300832468 895393300 319923597 986723134 876015737 470257424 472885519 668820398 680613786 94077791 1018665657 685102820 15400975 713748984 63301766 519605086 767504656 663300489 993716435 25033380 547677741 560924951 474596840 205372976 828111523 308877909 60057361 486123532 339381080 896902733 56300698 965591014 376071570 816871701 108832838 324685787 711665098 65357151 195051698 300744756 173529153 147892901 195745590 426016391 604160752 469476813 721550117 78764428 799217290 546865813 88146608 567954594 414632981 1024865259 418892964 418015981 119364511 382154047 535642441 231798504 521059631 291982817 859424348 430415654 619763804 703854730 705639970 35218771 793945562 384105881 206665976 175892968 238622977 931441640 987603702 245306045 926777769 476649460 33136052 976631804 26884153 423483428 236048795 605890889 619020232 967913637 880544289 876890860 160749036 341918254 853482069 604944658 137376476 158215818 815299345 285527408 149410829 576801914 287385265 925027964 64094497 4519076 526949635 44598215 961141077 716284348 347638545 294596120 107586007 556456037 38256255 271765906 589421378 214264399 315414536 701060159 74335465 836753306 258597097 1040147563 378711015 818150810 441113778 738299682 699383818 807198290 880562444 520242088 535301867 635150555 721323461 1012564463 91736351 132770756 204814821 944459116 2888877 137128715 141120727 640030846 250453940 506292779 673054686 99243994 515167234 80620181 123176322 85396950 314265668 156299204 741324449 935137479 264709370 964410085 125384073 382329347 696782290 732253839 727602438 164054385 354420745 26050089 632047377 601491526 420990918 62011172 503810639 342878886 718487463 142483242 284844728 456913058 184212392 60469013 655223428 832739929 1049277001 387949644 284975803 766510695 470323147 820285727 492032334 1012711835 818486570 589035319 1031692902 155993391 182371991 793065499 800250559 334689374 971356400 286286033 101929548 784213949 417971980 752583276 641089551 54663321 1037814430 491631683 420623583 436752853 868012507 916013844 208298913 288604582 726284230 828499522 244359713 855633035 930002009 284437537 239489271 1059879488 444774311 13389671 981188220 721594009 219984661 88121646 1054318418 158029445 320696857 684609263 864925110 192672629 442483958 194763325 823809712 4585911 990288582 748216515 755859602 117184963 57955203 954946246 817141964 208362161 186606211 229961560 793423938 1031901345 176237911 235936638 290460168 231341730 151477473 794888815 309700189 1053240087 996292582 493784941 852785125 861472741 207235932 871646265 757675733 121423919 172272769 112426711 466525299 557281944 691419835 114429967 322825259 457323112 718421808 748169885 906831093 231974151 446741759 516691582 1012187393 661648436 753445158 621527438 411563711 94177624 745045073 471742648 816395704 893072666 81063695 626491002 284931381 510316875 854860121 915453084 547527715 1072218073 246536153 552322106 57620629 999824095 54265427 683042098 453922797 614425521 511941839 97939413 3118021 770144725 876180829 433692976 704416835 183473468 426249758 98190550 821249140 948295664 272169530 910657846 832612650 532537351 936406690 844043183 943709917 715281892 941802384 429707806 245414630 1329626 803709563 56761076 414258719 477905753 629572993 617162352 9722072 1016226817 559018977 804115971 414219144 393008327 116611424 221181009 95844146 156396163 454723168 66491149 111344398 956288151 303080662 693783253 671729752 962058176 326341322 326114863 1027554973 1040109168 299785847 484658910 744201636 753793927 718226640 944406352 856015617 472096908 377493341 196983342 860614767 779683647 736352402 15870259 761300055 202550770 595334311 608547496 630093362 590620507 377556380 695150000 354086528 20181395 298645021 680921670 494864039 380524165 865938505 306244951 327250083 636606252 182700423 797094695 761944152 152729712 872148598 431444204 103789233 447216929 202950421 928003142 1031331281 592204964 941441401 705003211 110109508 354226653 996640881 904226400 467928479 95467960 492385511 470703669 899112658 783816380 623591417 89428544 938849410 678914595 700278040 990722697 188961737 768658019 416366014 808812354 880238405 930183247 183875980 181199467 965719664 553282210 253464530 985122108 340265510 811240795 250726334 756433051 356650317 84488478 1020490249 107228967 1062208514 739736476 466119435 917155133 946381351 844447979 651320431 115204730 963736317 287760379 515124633 140620690 677268953 898595091 480214123 729749751 186694769 14785623 490009398 935659760 786688921 449370536 638970662 363617051 405097978 782420315 1023135121 72316585 550420022 240044562 490198536 1046030340 245967971 825536116 176995140 189693939 72459946 721718563 169679689 282188272 879358886 1029046673 183111620 171915153 880714694 782317904 473331290 217726488 287885075 47549895 521052600 700501514 220687646 879279843 154332502 416425788 203356500 411531029 243696436 868116981 640410260 778377459 569498113 470582014 756920943 345596008 165612383 792218617 1045730616 75939167 414493879 788852610 582558651 827319486 119083286 327191404 173965422 296534929 222843958 605714927 4682633 1032114887 807646399 1016573630 292617893 711127610 946941488 87937342 676582586 302611536 346109693 554924177 917714749 237546501 780504779 423412018 633077176 167434671 920938592 619441226 566551861 418467753 392414180 1023960753 546530468 190079964 31495 188811184 195879436 457063937 100172833 715412176 734847034 265585818 503196707 371834163 316366664 2608241 925991827 486242969 1055980707 109026673 118454199 111042991 474832988 267619296 484209490 296803179 13445183 1063988885 518867798 240085862 440998550 357662203 962937009 161134223 610091282 546513667 291361575 852625923 124185656 827911292 1010903697 1004116119 597843823 460615551 876875553 288838500 862097775 798943044 560027122 1059337721 355244579 853855817 319185681 81683970 633980107 722382377 145996227 252952139 216480509 232378078 52189363 737592378 433969213 885640435 985779616 984792349 881895467 440206521 517047042 678653152 335226388 491895448 491657974 170443924 996891130 1022752450 320651190 827033771 621419342 102242133 990346072 786485735 850321547 609187369 390209900 1061559846 95284788 265311231 934223106 585408653 440207040 1038084709 705094096 166699629 897002407 842621858 323528682 405770854 1015242088 588774204 1010401190 464920313 750204227 201775963 894040957 773198736 238752982 452772615 139584221 96414794 728568789 485331456 311971083 856035896 836091906 386311868 461791674 855994241 695407251 728564127 753781115 717228081 442880003 1061913621 312314330 286568590 1013100262 427159212 692932510 60477749 203004277 692037228 929236638 335859746 715507753 1020937921 957693670 115498918 200755671 29267983 581373942 862687567 90045971 104779480 931688166 382454506 1050387778 1036048071 385221699 886646668 308782319 44806837 544272015 396324290 18818652 303365253 145532155 405273188 64700166 7604927 552791144 158521040 283834375 733793330 402146173 515190244 768427343 1028635664 165612076 262307356 833795459 348394334 614302791 698174897 697927400 463603991 706485540 688291703 550741925 679681024 612330015 575081513 193900125 938284566 10824208 20948077 203948504 253725696 505134417 32036652 414251444 805840857 553247971 705883396 1068762508 49883490 282015317 910860178 975668123 1036681525 148975131 217404555 466204030 260349710 576210649 237416618 433264154 1005833288 80763498 1052708934 645516895 1035595600 677878624 314554488 16926902 368347938 555476741 903289643 436156668 43547133 538855431 1010300063 363011428 649029393 1028006851 158572334 790422171 402894873 711928010 519556993 373832329 191222649 813721809 940674298 319818577 826095941 84139683 283037561 753005953 718501949 597154051 365782196 485881085 463141411 622905292 498791067 60471192 968807353 380878291 847762163 763399940 138553222 654746208 710806046 23665067 372073213 541646431 404641026 190508861 226044973 275067769 831885777 881417247 82631374 493067098 725701971 1047879168 122998546 1047866141 828296127 219706336 358053003 305104232 48765107 725919662 892353238 89012374 648437594 273435600 74418877 368762899 828835654 917261882 896691992 451648746 691674971 232615417 180248429 232482155 911740113 668745453 103194915 780494395 350737979 169539685 787059878 782035748 286015259 686340014 799455215 642766003 356770499 641698005 438346778 383501975 993403378 186717271 133247100 304323064 793742210 828142336 83954067 1066522143 26633968 284957635 210493417 565899013 263044079 1044911971 576907402 89130432 180698579 586123755 954536846 756360774 666940650 909906131 457712170 1029385272 21697158 868564569 474921863 634782493 586645129 239456675 560542369 76999083 818719039 415169845 804018649 644590346 569601443 250667304 1027906429 719038918 349911316 583892775 663940574 341798523 274864082 694949076 408391219 876085083 520833902 106100009 304001018 907182794 999036187 363245059 942372949 929399644 32383217 73065830 45028180 287789171 782910125 310335392 389553702 946031362 152528360 100290355 190934419 797327676 919352706 1015374222 94048074 186743502 918594979 60315642 408115165 725318025 237349557 163757580 267460962 963052251 372695224 433177055 894107601 124297076 867131203 483324856 619491265 277057960 343503470 769374886 250224323 853714654 379388508 725702997 165967123 413417374 654457517 334468994 281823833 798589740 377249367 221273240 107872021 789759586 867299317 85040244 889123783 1039585323 701051291 868697415 333506671 670116985 994213652 470997053 978659200 361241102 887959688 551138054 96763147 913795584 473996047 86828599 447782590 490827852 622506971 47447839 356255545 778031237 159551569 696816686 797712054 438026342 325863395 665960997 1022217728 1014430539 267450657 31813992 723557082 1000197466 611890479 865456654 538418747 757107112 600986772 1023169239 568285136 785762608 901420423 151554930 426428757 1014355133 125050972 1072057522 512483421 215036189 112519899 454005878 366360705 224104553 916689039 824171641 442387494 654593445 656076069 30705592 901703988 195364701 817699552 109418782 442944930 1044953824 38153738 573266664 669944835 297538623 266514478 276161890 707531051 1112868 557868283 351776275 694711374 893916792 887407767 540831682 728249874 85555054 742443876 1048133282 822182555 16862018 627181379 1011498129 16981546 308450484 698436059 178054564 608948816 156418818 292779187 855542978 990318374 1051419353 534240269 331665659 948133738 550714505 866576605 1043614137 520457165 491828476 502035215 200224127 705588101 306335725 394433162 889821440 511346609 126997237 516838923 1040255673 249997860 454345680 871663317 302598121 675305787 68749726 482106421 929206864 115454574 1055818958 186454510 24078477 1047261724 84236406 214716877 460113615 492907600 765526132 1041526477 193945576 342351560 975176759 684909652 869517473 201301550 562388976 886415551 287356892 586819187 407492356 857631360 91252249 467377001 32407965 191978994 823238909 588844165 131608933 510229932 305025525 841599937 536774865 763385352 93474769 358209049 256068607 479271627 955617497 735014224 402984799 409750719 374419512 21362477 800818845 705395170 771142549 930365855 171117818 981044738 290006776 549718048 616514814 598646783 429612182 163939622 241276348 933760543 7126261 253505479 841131987 196991886 1033477584 1070074591 163666037 179067864 394631532 50848236 1067923815 398784961 1065624169 927262080 332470704 713349786 877165191 571456985 753273622 319068770 1045470402 60928929 981144730 705291280 105178017 257429424 963551107 387109814 166988764 819803917 357130784 602216558 164761578 546060293 819548313 1003142280 673955445 848337329 446703372 574290030 154954758 59224747 384991691 1041388825 404031729 87962388 1065631481 781253853 804532765 787941378 486624400 608715710 692709465 960794381 1041407220 333719791 334019399 141127139 657749208 256732077 162041869 827112281 225819124 656939795 926309240 116283491 751936108 353090958 131493525 726852598 841766099 760274796 1034031072 514556806 759588106 698970320 244952453 421620016 354145549 500756811 413700142 268250823 768564411 979432412 145366472 896254328 1052376978 797438545 754460869 532877320 312438375 696005649 496848920 203727322 850954034 363367944 884132273 1051569837 120079841 773006781 505383104 993789193 12126450 47864201 938822201 301757761 920817531 778103923 586947725 605503707 956797573 317709755 67876199 868218035 168619262 173984567 330662010 312157570 187744815 619477346 1058566697 924074613 841617423 542468757 16058483 190425954 378249682 848950252 247243512 181271493 430442827 737527835 348494900 137732694 532350247 638972682 437891352 775265709 560703335 1056767271 927957209 727315793 797835527 855729073 233299149 378330307 37276970 287216996 261451289 51563132 415808342 235713592 829394092 66179679 684941321 443164757 872798292 182853678 726700727 197321698 922535729 736154462 934891589 701291818 549576674 1016321965 75302776 509756151 909580073 978003066 659394928 166593551 299322136 817828072 1057825921 235046902 769520790 312929576 723092865 37643757 226112402 319898672 251391438 362189949 510399032 278815116 582158432 232373034 528175408 109952943 958919706 1009930535 551952776 260071719 889382984 309887033 273940903 830479340 1049535261 715498754 241428966 150974179 162305194 385451612 456454239 812806864 1003826321 1035239937 528900946 1050818390 825638855 944150416 564701568 348925534 446738425 240638822 236476775 491847945 722305446 63842039 828295131 932123726 852453479 470517906 100011476 284454728 936129108 474970452 726579328 817918218 624493446 988099515 65345779 645703645 313405803 139915469 215451218 174814201 907521041 784066756 732896645 306018885 902013714 965757114 1005966986 1017304484 850038310 240267937 360982935 290573058 189622506 350459244 952843017 405174490 244516687 770085892 711337183 1004545234 761393393 693054322 893572502 638137125 497673087 188975463 632680847 860428999 351535994 796677290 693190264 95652266 869026479 776170628 233433969 258202802 22883830 1069484002 198800018 1006356049 813381035 218320683 538797042 618068631 209623167 437281169 311146626 720488415 1034187415 156254692 773914443 326385830 462018529 562973818 869406932 719687842 953822217 873232575 426419257 702204030 329702487 1056783940 781920341 659032650 33081794 426333428 817233560 654338379 706803406 168323895 889623016 280266577 229067152 548076144 580478118 298670133 697021480 595517985 778950640 40443444 20224690 870071111 709360167 635580937 992732185 1040934430 583603272 465274806 442346258 1044699932 95529163 776016046 990210119 718050250 1052812247 758622318 586694554 11358214 666357955 963266582 822852712 723233066 423439930 651012145 207371453 950529810 729323487 771528475 618112110 153102255 80558730 914824830 787967628 996332094 908488630 691965324 352690854 58740043 651823566 23457949 451947874 1035306268 851310526 654875663 284803227 1062460755 373411981 903732541 948064348 613253830 571779953 547660535 844526361 851827245 120614088 38041087 315686596 167270744 764166308 947295743 344775695 770421496 306505283 430375039 330731332 514726562 79256629 796542746 812614583 303759773 145539026 295545532 425837412 433766332 950959455 510701014 996421205 953514622 236566154 149700149 207910379 600329915 1045528198 263860208 74505474 452687882 215028689 111529647 126323112 566258000 684410128 763916467 944157125 44588071 808419311 755011021 611815099 317420529 908328919 406468618 190612042 191697775 332442446 654760271 650158783 1010945658 550156848 124492853 605032032 569475058 1001324224 623494688 481904186 660084186 369673819 851308734 586008433 268050661 175066642 609244493 640067556 650668736 324388564 1039031457 556898059 334561238 443141774 572237107 230945236 874156548 779799497 583203026 922441895 549346574 977423848 721174934 126383850 413050248 1021850169 218250550 104225763 342368405 148423997 90660112 298749585 132141193 470406345 1031872758 1046658604 158785493 468967131 799162323 968105983 585814343 239375668 760196945 433988922 495184881 411334682 548649829 77683214 118291822 788798353 335273301 135367501 343643826 358646661 198601182 22578341 755422480 161016092 508934372 817522482 723121726 461565517 185071403 154349464 107467402 693396379 742882927 186233473 777096795 978386307 63220378 293972233 967111970 316958667 186157208 34564279 684871888 144287048 286357118 226188754 255323472 229460952 734694028 117463 380282830 1027081293 471117041 495264927 1057487687 558734860 1061295307 574027129 245812022 395125684 543358263 231406548 176491937 738401709 694454499 737490378 534821870 359984389 241139464 294876068 398755334 797811806 289493282 1020033991 1058868162 294314625 782459132 45047837 496861252 790286414 635024655 698150815 758113551 789445747 785849272 869484991 709505291 342462229 463570565 228459588 485190257 681116310 1040825244 818696814 990566736 120503391 607171700 819202775 89645261 367069167 588324884 706470574 294751578 283551514 820127547 997958904 1003359162 795047274 855681797 715392506 155002961 1051054252 384346772 198886482 3726699 362877075 592955530 292907073 681827978 256063250 1053963427 654482608 65922122 986979015 47474833 472316169 537835584 415566890 942933064 366560202 788359302 30839646 555961857 789307898 337676838 523154688 475653987 109605457 802758227 147317346 547308164 162654974 303991521 1008177359 206901861 841560115 852617913 79007418 319710246 133379803 98347003 317582856 165396656 21856833 927775373 776225346 853447531 594500968 175703959 660592299 318244083 399313448 643839201 902258825 101956040 920718309 568759738 494307071 1008703257 998643145 890328706 10725075 341626899 621050753 316767364 851003054 651152722 912392320 471848081 88095904 73829766 19306470 662985571 989184288 200280669 167001118 949816823 611349020 802283115 423051690 95487482 990455273 324968660 832427862 914996854 375718704 992792803 485800244 834381187 704189714 397587706 916814231 704063316 75341224 963612592 449728597 758266602 671751290 994428301 560019756 975238570 183523346 638353682 134562859 592960307 209706216 353042864 322503758 791960575 27193252 371736800 110038642 455987848 437542944 709380812 864588533 973178793 359639838 356742058 122111271 194192869 455937684 674893731 384757563 988319582 578451554 633496874 170503959 295942241 162190589 248801607 336827915 542740407 1047932951 782207122 233674109 120438233 264207672 915254288 495364213 121269017 326710966 859068541 536028821 922667020 904538419 6205668 526219498 924422057 256565871 414306423 893785635 1018810107 600467556 216254979 312628854 182688433 897989856 265963970 122926992 325789942 3641641 94042004 161775620 484523506 869274936 574883605 888224886 761750989 643170729 570909789 92682725 813955114 364395213 145933490 747941439 255600739 587262214 936393346 126254754 254240228 207745725 379163863 244810132 176666134 770260197 196120720 172260874 136942704 931161617 720707417 722035999 918587817 534450210 792721897 524909890 245796029 339237435 561798983 934972245 102932081 188955612 926628555 225637618 247319336 501046017 392042117 719328122 460657992 649538866 488160654 506435751 370094764 151722254 195122793 698115962 910622246 538980236 998468329 733683146 856087300 495912497 245605407 36066027 429435414 391670737 4790690 544606354 546559063 974971313 361210093 970167693 173759980 181189209 753663056 411430143 587266311 362714916 432557849 80344484 254232371 479954737 387943267 133973997 226687712 892700638 520032332 1036743134 974321584 942899515 681348717 656725798 262779658 507333564 603159309 891140150 804741317 387662890 528976372 103317006 1048719309 131539761 150127407 400797358 307661664 589642818 308924973 189252397 570489271 834863376 601959808 115212371 774049391 308771759 461931970 998731195 1028805969 181156435 878766277 304962065 756028923 999780776 470546141 263418211 312614617 235900478 653315950 455884456 473805123 386858402 523290463 235483795 742985003 298769318 1070647482 865368043 494060709 1057754293 554099890 847414056 732423387 340267976 371450878 144993349 734855104 95898567 741702494 997533641 544121617 489163320 488663859 971262068 177070171 361471248 876387335 710564273 388069072 457992886 93636933 872079887 540091102 461836253 923236597 193528144 780550569 983996288 313399591 1016790275 309149375 778078090 778530161 939928333 105775172 628903454 731766506 163903403 174245754 192923274 260023535 410695217 424058758 897168159 47691151 328380451 986698981 712860163 510208003 981462787 934428730 669744873 161382011 430332088 210063319 109584381 266681381 270846346 774122584 323241423 534704100 791964529 417761155 409877037 113431171 1042502101 1007038705 449928722 781239261 403763995 198062258 152540973 446172886 404779093 842091978 222728284 447683430 306139812 237469575 801693462 371907049 516039147 47802211 731566620 959986512 469267889 14997007 899351046 1072718781 507865435 198158319 141023560 388884257 125996487 728754309 338862328 708227898 632693850 991012902 691326284 505035928 963541072 110050589 824138072 885022715 370653166 442759522 875441757 132512885 393514970 67357005 950568669 137745996 72981890 782068884 659526904 1063174994 996243794 46682859 865653597 1070473642 380639369 979117809 115006007 888431591 231153862 679061912 602505731 247720621 645483174 944626278 422395733 962626352 913082840 1066513263 835050771 442085056 726608121 1003954918 682406382 360087551 562592184 236960881 724801896 461669880 841359179 410389869 137001764 654948767 85316246 565034400 1026798052 256822732 811768354 844648161 545161020 148346078 896655791 127286272 29014328 112895471 573294516 717918858 982282719 440905388 381654429 276082689 386585227 972228758 676119299 894655630 264903539 129227049 564919821 820664216 661095309 691608354 975556474 992036600 198510184 800946330 512012887 785250332 441960220 834550153 565266939 570338743 615380802 190771493 870482220 889123833 648315397 62867480 61443544 826483891 578897293 573981761 708523032 372820183 348632362 29497354 459694542 806014088 59742565 738843084 522007047 845572760 728788250 263971667 157069325 1003081818 533591850 435857792 994994282 754562326 678417970 697930381 188010613 325952651 456497715 8598984 186827325 691317480 669835734 60864800 477662125 502073362 695332171 229135635 355805979 484183525 659928180 844692526 626964130 367055852 466518341 528928174 983504629 541517518 1069443164 181472117 845352476 273176100 689533867 302832734 205629619 549014428 966814663 275551995 874464032 195250781 920783547 1010419768 323818572 309448014 991150407 970870104 116947610 47172614 513450785 1034683905 100413606 916630240 237010376 2215401 871496814 759363462 908564273 659442273 214670564 977183921 157709470 546906745 869140680 720645210 1059920309 6185354 813059675 32585561 69422859 957942364 698999029 255822574 684967127 15853183 349848382 288710125 307474284 619101069 859653639 748657664 428670410 918821829 840970425 238728428 1052752616 408642231 920932842 847385458 579944128 50230133 844013161 983985809 722764910 905615508 343498935 449337870 20118594 192402648 427591251 320043670 906131490 96017410 999349100 1018973300 589622480 379414555 841507337 721532194 308528833 944559639 547964882 314806813 198914547 140702934 91572434 266608488 225974709 333147613 967443718 1046510440 342693357 633470791 834659478 1066641139 372301225 812262871 840397504 900296422 73995563 59872770 594831247 1005181068 572976428 1017618863 412475122 928864681 695902257 872639257 669248777 735358755 245251397 169884100 629117961 489826812 603421059 932034178 199819436 862033249 1051978526 832548202 752974487 670882326 1071629955 583044411 1036186373 975008025 484969947 1022086843 185760141 608430653 713970004 523110370 918369129 689698468 593552339 420901225 70910315 77718030 420475432 545768005 752703425 26788598 165194432 89888627 668535024 28199234 856962644 754017618 67052489 97671944 625480527 1008508825 850209054 328147968 984811881 149179294 758122117 100743599 21468292 987051955 849625827 699580666 744669131 281299459 811415102 277176137 594305503 325490919 170046941 466121517 552805804 588523892 868624015 803137848 475880476 438777458 314648226 832767231 478355504 435602526 42547634 335487372 664879034 6206219 934922308 152166746 742780449 188370156 41764244 385768400 120961032 1029984139 219659295 170147724 955637253 857728293 341351581 848694878 396336438 112846188 698535910 130428616 687388584 101606512 488442293 269596407 361986330 61422959 149549949 960545059 965318535 680990520 600873945 453330893 208865646 801845059 49017994 467674780 657391001 919334996 208401125 728701476 1012116656 362923904 264244516 338138332 979557443 981285805 155942621 728118096 846212378 684401693 234729448 638953158 926982781 119856759 632881443 737002993 794979875 631091079 247839077 988636378 528147707 307087607 847947891 895063329 249829624 48256597 386442719 232352480 861163462 515016937 80689885 882089122 1040510301 940018837 141733221 875471981 854835852 1012640466 255570895 928414312 973216980 840848498 214348032 870644568 311322915 871046767 702225500 419208291 887605270 899953484 16445889 885477201 751250007 26599249 997089490 485810782 70020956 966656814 103776561 837702646 715375493 261348026 651852442 284143097 418131763 567435849 889077078 641780066 711131065 820938801 100077899 718657222 11985934 340967854 155528436 202793009 364900899 628119624 722272353 1019776155 194420509 595094751 241372872 119953209 954910853 378734127 112844059 644664573 958034016 523958324 864526857 289926161 694399637 115272725 674282035 469719116 190223703 630229986 317621295 625559606 1038593299 149782103 765648041 738300522 715512365 700137303 176465943 41752945 590808224 878830009 796208697 707354476 741029158 24751578 181899873 823056632 201238873 783347008 610986340 1057241131 659047851 1051114253 234890269 290578564 588416304 259996363 103563496 636675439 698198519 154924215 911848065 440638161 234535697 1070698509 785988408 40659415 931447896 825236791 368383453 867243749 680482977 667932041 649339556 6972885 1067226958 75160205 268638184 1000613873 142828396 799587279 163380770 227862742 606030672 62258963 189524112 558670068 524773320 677941544 419261490 873032478 1000642597 395822584 129254107 359728340 254891217 931271422 783351795 859857444 768909630 138060189 311328894 271613857 547681370 681879624 2628265 848886047 967339343 586598944 314888674 4833561 466704959 593398253 38859816 724194070 521242415 1067632227 155809111 685650593 565136371 479427276 1008141675 462922204 10446673 299150778 809106056 937999005 921309564 916053521 326978363 470717699 154222916 479628761 1021438218 675045596 533973737 160482553 945925208 120126016 914869420 678299253 682524257 244184390 148829134 142082145 766151216 167622279 207479702 422622144 677935564 405001879 348789210 684145725 553348759 74388256 161589013 13270225 472683532 956560853 977663493 244499917 866885901 840109771 237842081 981636721 559576366 797005266 466220379 826198461 145419564 949607113 105898092 266812331 345549990 141879545 879444775 361080880 950436467 264107882 304719550 408253139 47533388 164943246 898642172 478240060 203618787 871890999 1070240044 651389313 284808921 527189735 691334964 827150975 684574552 964502960 68856501 670519259 596975237 453679117 681595481 13448801 973491782 479364813 295852527 606413083 1030939337 978172475 750524984 128138368 728874976 540377286 398201767 965532378 900601945 722744432 542988625 405415785 529069518 133944303 136013974 392974715 689299855 544717466 486261957 641346470 889431269 622721445 785169344 84150850 573705894 616076509 920422702 106758655 384576580 716720194 978636893 245274868 646637249 742697326 3151393 406768532 182246626 795241792 286371728 741479044 80425023 758222475 152836570 563678391 1008705749 1064700905 951970269 48833880 805692892 247542956 334751862 253314891 534254476 176165182 1037853310 682933572 497559805 360015035 17006667 219248323 411220511 907060401 228883550 871260404 585235830 788986099 673368934 21176845 414719328 849546682 67967326 763821030 771131681 506228390 632115238 793935779 1060304925 390022861 113230240 216235440 314780834 564507485 949369032 489185108 315252077 253024421 969897669 508966050 706412975 276037703 173367705 866229912 466413482 782173828 334981017 907482339 532023126 540525514 833886001 97587938 358583305 257609438 711840201 90828569 1062740077 70160931 187856342 32628500 448940647 354529141 681910941 698259217 368131732 141009470 615039241 24461664 923639042 349846009 420376321 284719819 24278448 126641491 744363763 417525662 406771101 584777230 43548247 649979420 958881739 499547808 157681288 221460204 324001841 869409176 1035182660 354773716 715174494 611598855 209080671 938128880 325270005 457597640 821531410 700234915 280558943 76447780 1063865842 157266509 71794658 294863568 651203009 906906492 166790773 857214130 951003438 684999582 360889788 408474714 992376665 150804816 618712563 209398638 785283139 1033292556 996319967 949588142 48402170 934300651 37733829 845077303 437349643 398841635 653491699 711108830 107355821 938826768 382541131 126292744 569500293 168507055 858275038 765685807 474531337 465447971 148991724 576860048 223399202 770071582 712220640 583566172 696934951 331486018 90242265 615488995 626583044 45227864 654325103 546275741 159398567 1006575379 1064373396 293704248 46976395 116280849 128225731 154598859 430033972 801846663 178392663 440058034 544896318 88357921 582745816 269893241 604460218 73838502 41613435 78723028 701859658 1033719385 1063122337 446858985 308376908 143666337 390840045 535390551 372345503 1056029922 1019399555 665703996 455042556 826012939 179421722 907108553 1051876139 422425969 9662826 934751880 482499975 725079576 422594357 108121235 959029848 697630966 405356033 278149543 706392952 768058417 363639663 425480126 67504775 1003871991 936924552 425173662 914051092 932853407 597659039 700176735 622055539 379184294 692761374 211638205 240225227 259881370 146873370 982642775 503291783 800885177 86940838 582399785 932774773 365289042 146497790 275462848 284424379 470419254 525629317 178770207 846597967 550489027 560211620 487995598 185585705 714441924 450053463 569829950 48291980 360184085 425439818 995787402 504414386 872045334 752799633 185595407 121411551 860918080 9071775 20480715 1040753565 411045475 612024884 115788403 407354443 354217871 810316632 468769131 251732331 400143692 38696318 345781459 266896746 673889056 485862098 688751741 148084258 294656762 335871292 858057335 910273449 363572638 36941583 650539403 445582934 913836976 482862777 42568678 897583557 838722758 382659589 242912023 422350497 381535295 770926623 323563413 929566000 1034557244 463268417 1067236049 859286823 784680957 900075208 979097500 299012929 448763172 631977095 189069528 825924952 323167185 118834968 575030679 826106847 422228672 940546131 1044003616 850561252 892099724 550162949 630264934 504458867 524125556 546430955 32780739 682457099 160995492 760598712 716488992 304415393 146440025 421793536 254487591 534988342 584579052 43585786 374968910 300303445 217737891 49479635 399082796 934600176 1071968357 409126815 577977477 943847043 402178444 221156516 499441803 898375836 595942490 775299633 1032775849 639713721 518209255 814293306 638471235 945032232 589218952 928448635 1006123476 837285275 946691563 859597531 582445912 51395491 681897893 783863540 469239388 693265069 681967890 320183060 534798597 633655330 525062528 281012166 756887255 769568382 331296389 807472845 211767714 904177580 238257748 852416320 90690650 365202362 78078868 80034821 349284375 180631239 767231351 454761258 1001362223 209701799 701827319 33507489 585723609 30571940 35934734 90551494 979422619 376295718 191841467 844092143 1062853963 466365407 1175454 867413119 318357250 340097294 464143508 191811194 1045940278 429029541 861534491 1021592179 943166782 576557687 1027020165 908703944 836481563 770262079 468562173 453562476 733235804 811572669 530162642 57537233 723420339 614217140 458612193 551765218 943075089 661739565 844567906 425797824 573500079 629328600 467714109 292063912 921719762 240059391 478889399 614715105 259348736 451795212 367661941 42267702 980022529 13350863 944360044 114498122 6640757 998732267 334508112 475817249 170549508 472198358 193360314 1056875159 95441179 582273740 411024603 394365619 302936333 261527164 264168396 591606567 513667641 191954423 362848433 707589244 898626205 958059067 606147362 540646907 384665953 622233808 887659609 287104803 928009607 805057788 554247336 1004665296 781891583 633725143 865510729 569852710 370757963 12145441 871168280 148084313 822919022 694965100 398921700 585166017 647253081 618357355 1028846857 548939905 205236802 681779190 664162159 912561771 753812708 117903560 744851783 820078677 760237900 665546967 563515684 596659372 69654298 527118072 72589189 87856736 789489336 1031126696 207707900 904236903 759028993 499241927 735689938 741212798 757411103 60673758 909752229 178359968 248833805 854987047 816469522 508464340 808028027 74743746 894714300 76038420 96135412 919714294 302202828 469662531 658596456 137034406 298510563 625185531 756541162 349916409 486014358 1009306739 1021749304 595397119 701161068 246578791 998909487 854924918 271942448 735893626 314480539 892538769 589606095 949785304 827330944 425043773 732946987 858577884 881303699 918242861 247684074 780282408 180617136 292158430 769782524 198054244 133158324 231203637 969134136 882528569 371309054 1058440255 326121024 277449373 365873224 542979665 349788461 544823114 702782084 245867181 602063758 398125696 718883789 813355850 812105619 1007284930 507205807 374131731 908314203 708169765 32364817 947078598 588486721 286831281 182589409 91487566 449675935 335070223 685480114 1044597692 231838739 227560658 660034059 806664526 575623749 449036586 949783760 568593842 223445133 952373620 322515134 860920612 107525031 849878801 683150064 1050663130 1022819721 673541140 351483910 412004114 494703716 796700205 329521882 73767233 529229621 483141622 314815255 234188326 63439855 1035033868 615609380 685875536 1003148910 738609757 247594183 996504304 1016882612 883671720 224388784 716497910 169717418 459710798 171622160 21087025 651638524 781696653 102113002 632808231 70675872 568132266 466477358 972811337 105408004 824269458 609442401 439187495 763791985 851456631 58222641 973864243 389211733 126029588 836909424 686399170 1050824332 378643161 431791601 482659829 75739763 61086253 569019649 1000447886 278739253 445997434 366782365 938650851 31009917 894458489 840515765 622365620 971405518 346634729 357780462 3511704 646883903 801259656 696459892 534341395 670253312 289074094 736191641 35982249 284362861 882860954 473366289 158665451 157872877 382323807 56337890 834762521 765915643 320107230 972807117 900245793 609752055 397588923 402586131 808097327 165732834 180863926 280624235 20277118 333942679 206782701 1004697145 845775731 1061659363 19719738 729208961 818653290 82641168 212017994 151316026 335967919 839563176 1070219758 472726838 450908923 892467066 682726716 142109305 361521213 496858649 104188548 581139320 854981817 754002495 620012290 735674025 166984765 249934242 584341219 785745816 588217329 482731109 486314319 644474320 390308090 117994847 757397843 117741502 194760901 71199551 596031169 931983782 333953958 925030290 259111282 261854376 149953876 83321259 813366807 620550014 226333930 919193617 593068431 726315286 866059423 929700669 61831453 1017211722 210808193 1001278880 462949133 38800564 480320255 606764002 418622341 775832689 497143290 196513174 933381408 1025101474 284671082 553817458 849567737 233820036 10951177 932871489 884413475 435499563 398849757 1002933807 320953001 508170075 1054296546 713454476 349981039 350288511 822242337 477175018 809488724 379753988 947484997 187518816 522393152 519854128 116753508 1047875050 880705279 1069000564 42014456 721295908 452768872 415673474 944214655 603288034 210003915 431509741 13164239 386846152 31212987 693970028 458736592 398714374 233470541 649924188 823973008 748579809 516218809 782487378 287720396 316083570 681115876 424388460 342601805 318228324 1055517504 977520089 117028465 117547167 217360318 897728834 299342467 549361221 894245728 883591941 85018228 946293519 531708511 618278661 698397228 638127119 389853973 160703823 628617768 397577974 312024405 553372669 353476608 275877246 1013305513 960101488 57441544 800671919 264223243 314860962 352170052 437356911 732098152 225584790 223836314 112599700 290262840 348987505 481241212 171475999 262169623 654637721 274347969 243617692 598169899 80069090 435183656 189736099 537147175 921458781 443298687 246637790 193908563 1038701818 359719871 753786035 952491408 632158710 327140001 924897536 248478391 135557981 696912728 54889933 939103513 408783712 885873789 172730203 659153969 73416074 300730608 732776419 721008498 592038690 448154089 16329383 357145847 654738947 358700175 512988951 324812045 59293975 1011004999 891377447 321591907 107186116 356777538 794496925 1068556494 992817177 605792356 772606358 438039734 638411618 472073644 897967662 497215955 886558500 537030491 69901588 14909132 111841026 261197703 100563489 318412514 103792466 833453112 117974103 944601801 309744787 64134758 179401770 278179048 57983124 986684533 81123383 489119896 914913991 962753202 156159206 163560807 64274359 423066255 366219933 272802748 1006192371 1022578726 620482260 883714539 274024121 220814684 1005172272 430859155 358061615 278450655 726790506 852438875 395418594 150096886 993234019 519964741 124633691 481535366 1010894618 863463792 575374956 332115790 911985573 858362837 201100009 884516421 272952720 443206055 318483426 387757949 479547578 186132474 819731611 710338069 574105930 988480218 1050487064 575772451 172343011 192305502 1030066107 821952713 897041964 156315193 580308284 435931241 342284327 831057702 917790598 1058762455 533458940 1055675735 425082541 303666194 1057715713 440559189 549432143 862893845 590161556 1030935801 900751037 274067863 354035813 101210473 555641867 26761421 866318259 954449429 274555182 711648903 184625101 638148548 122037258 71934275 209143614 667701358 1047684918 593578576 410167774 503496971 183607653 285171576 393998179 635342302 55479351 564811177 378277184 1013498877 689358490 1011925051 1072009968 763103708 705872077 403299574 719194566 172259948 198760053 557224146 595344265 922015405 141858257 202440874 164026752 1027345113 230535198 881613139 1038306422 745406015 879713050 214404109 702720064 3292404 1039007670 44868160 845835709 702109982 276958500 18565545 84454465 903746458 537851850 254299587 903391612 487469439 916264198 278628808 250708853 607020712 315246623 282115330 259641570 774064020 557953169 665346978 41084380 949901204 690335303 404922740 305955634 993536976 122627589 809817462 482012798 728430070 266381226 530014585 196461177 43233219 591067699 1057660074 525737119 26907932 881351208 659962251 624321192 604740884 254179525 463761444 719259887 612301951 95948244 175603818 175938301 655075812 193525814 646802701 439854686 852351967 844837915 425109684 8021306 279364884 504804342 131265310 863960876 864242261 914091473 288388311 837171540 359299521 171216756 40472428 987696651 962940594 172508794 580717718 143162682 843682582 4582990 541887758 613170792 480133928 937127589 428147394 1012150681 1050190841 713242466 585837759 746185232 786073970 994798460 60055228 531118976 924116479 297991617 702538084 282726333 801115981 531681752 320526559 214359533 66543899 920306986 977808151 824292762 494676398 287482232 468204440 488717088 643453272 369040404 859404406 266776085 836324788 380243898 617210648 599026682 731383534 483017832 421218778 285342877 483619793 606697907 532667433 889675942 457749829 452582756 244114722 451157979 160383755 786076638 401571823 771809501 104645008 869837204 246129943 596476814 83434818 181390799 79625861 791545586 235374704 348233142 297561308 577811688 380439385 614287780 84449275 107734492 629559727 826032585 118278022 1026204129 995160006 1031826752 104041893 173197704 607379623 653109418 600713548 712175619 192527389 555672826 713079970 887477378 212815487 796481057 114759153 426975470 958159680 200180359 386659308 967564596 687172132 230187660 138556454 730697796 311670948 353559897 649718355 885812440 264056405 351137638 71396423 342065819 821016219 344855898 786703103 563858611 133133009 233802231 178183122 148030770 974403536 536706215 238296297 767237457 132611815 587188671 912759346 959568075 733370325 814192843 933608401 67700218 607172921 583398344 606547402 705154577 794317770 648996551 120436022 465148171 396872174 294632914 126217847 163324115 630019168 412416505 987639261 747530117 738415070 777026309 176565876 541943002 657562760 779118141 296847203 524800975 986507621 973633792 62483088 61890759 183708373 863027849 168004639 1064413837 724932972 916608977 268311723 827465930 56134245 137789201 896510632 1063391349 761935049 350565716 405465149 707588401 213555479 729545216 800776853 1035556562 206699713 86858544 794579274 666620649 208024907 993547259 988026932 1043878209 1011158545 483333734 767137133 530767619 827822760 151030972 997603932 811191158 611671419 444075950 209410012 249173889 712485022 243612409 524889981 611297543 84714213 878840012 605284685 759569821 879860411 406043247 608826140 701761439 1032983089 778479912 481118108 492611943 7557392 957731823 759632573 452917761 1012768588 499564305 998943287 994791427 228300760 869904103 264535651 408924641 325178447 314452447 904150539 553271434 169688792 634817687 1032730231 743510396 157497740 44276111 663975761 935926505 35357220 752606459 201635308 42997916 814067069 497434222 763815192 291879114 480485850 217480748 195563478 406871576 487907169 542052257 377583656 551226414 913148074 190821193 742531855 319611156 702589944 985313975 215774710 278473008 1042524108 14840208 275437797 111295167 536377239 235576126 189090763 657690582 105834927 430129087 427195428 984171091 264448216 717009161 961775130 720701911 809571612 643661753 159055801 216741364 1015056013 609227518 467900910 258381668 426588453 552319931 436418194 591042745 498838633 486660271 829165535 179590235 908755823 942921345 714444948 611828603 784394012 317047952 872383586 763877126 923527855 953156648 388530706 203780477 197814749 550933484 44034890 524286725 306745166 972381547 740935225 881633999 950542337 245514351 475814243 775511243 742624652 1012972629 125893239 275781186 187168640 146419434 387543315 756827301 862340880 321880063 402367421 478317327 796493572 422038878 170369231 71827827 141613536 1007113382 124213963 796250789 1063739791 579750764 458601408 14699394 936899472 532699768 1051778319 1056916618 882409131 754026429 213041919 775738886 513980779 16768367 360491442 1010975701 1022196845 630551510 942872280 946144973 891731803 127173388 547799937 492423641 612883854 572438424 939739918 910861149 410753663 345983376 721046006 392463368 741166041 666477513 915136514 42605244 794927255 420162586 824090912 1020654112 633340488 694407058 580410428 130695301 55021688 960446484 999765800 610591878 306924125 161167963 714603736 769517590 27556003 182050921 431075051 227505743 686473198 679500154 262892048 375881534 1021403979 953314552 269821930 509712226 76812256 447928868 663478630 939036451 127716302 182553909 906426449 922845871 116488641 830076686 921429816 346498675 157736568 14614597 997425626 209632942 112168523 1034737539 550934751 149817170 1025759277 857173516 360502857 867261595 60359626 508526415 355811808 26463354 392684287 499594783 1007465429 50383587 578124639 851988717 778215350 836028918 443463198 1035049748 158867689 487360877 808907745 270647965 907526716 279662047 402776525 325020124 714485403 434673936 712435343 83575385 86881466 708163253 1049474625 91003918 317273961 333562161 412015518 796890487 447071978 178635968 756622904 661647499 577820261 351457826 144545124 540959119 28084670 126795041 241353867 244552621 306662546 4050335 1053481934 21953190 618044212 171521803 1029973480 926116671 1031522252 934394057 481466926 90049283 156405260 912833002 198027501 93162330 482860288 615377531 1055555884 999757664 672669906 358738289 652595333 854097461 259706267 1049119548 690998804 1044740699 214035546 414756417 640457531 794289550 790408048 577009585 1009092059 852835710 414376196 852997899 758731785 62856113 693204152 4041117 304575551 898034501 530230546 767423551 398581139 1038585212 12215542 987264293 948862126 983897979 560698941 1049613324 901384474 568187247 872504707 364192513 487212888 489950605 865250136 654117278 348699866 318106735 196972524 692348965 177828916 460900618 949295185 24191404 106450873 321362423 806318545 721582078 1038492166 460146832 317180411 688718356 360873920 989458814 561657439 721713836 936283655 843753476 771658161 360229088 410621407 804734191 896247916 722843749 263217465 178682126 100221458 348613012 54647643 936307037 292757864 815223662 800925477 672762611 492428209 582936313 914075002 248778488 729460411 458381514 120991524 419588652 537055519 707497322 388809747 15805606 709422908 798932790 660592754 150529856 954621747 605254772 742921656 812731917 287552327 1021008988 633729872 720480738 329805653 226745440 86614832 684454809 376420054 930384627 1050097893 400103894 796031696 67992205 1010098355 609344174 147031479 572408482 385331421 625662938 752793155 850841882 565732934 1047949983 731532579 803015472 670036888 83555170 859698845 163595681 548170517 580538982 107727521 491114674 515813470 204724335 244232174 539988731 271990830 275829755 79618806 892325437 279708999 918039356 923827516 843864558 914143818 779556947 261411288 229201940 144194268 997634066 212894810 677723573 604585920 971751148 49083820 635402209 40694894 920809550 163342227 172244951 1063247041 35080873 358040911 807936281 941812147 477360852 1003520305 406728830 424399669 72423245 942981671 386221074 970073521 256376010 150152988 490727123 568406209 45986773 706238898 213749019 410316185 490510433 533103642 475571426 482087548 735285023 737927546 340094670 880073433 489215461 849947351 412661735 948311381 1063006801 638284357 941082497 67749971 719891546 373845236 10776913 415726274 22154429 329492075 593948845 542816236 637863602 403461766 622764418 1004162355 607197049 608183161 475763506 413010302 620522336 478606665 742483057 710263965 430463235 302376734 341515426 807111362 417116758 995556044 589817228 527086643 318529148 659002215 468770014 744509766 148396648 145179300 588126860 213955814 78432463 1057932585 256242910 218941286 874860149 646086779 921752126 222138794 1000870179 843904373 289248767 132994291 539313983 525644166 957727339 475477983 158255951 741193748 24766626 141322414 348298559 159690419 970808422 978898689 120207315 852575063 553851246 689830051 833315754 207961695 178741677 245700765 736174186 891163620 34202443 895844449 396431186 517731212 292053355 23910915 307850245 257353764 841715128 907535491 751121865 292330817 655226670 264319755 239914038 277471610 225995367 751090242 910486781 363590192 972112892 647176024 965254291 445634727 108947132 1023325041 368232354 156390633 523559953 1052001684 824852639 916347094 33425517 189321336 930246609 891396574 211723393 682528995 317780614 943408038 410815569 613054226 479283535 469398531 833509625 278203283 100853227 554798785 962481967 549714272 258009367 897743574 601473405 815083813 356845163 882312181 862560611 223562237 549449747 746397486 463933675 544022985 973976123 65861015 767134885 158985247 666496437 36039347 1063505753 994142659 439157168 890935135 191676095 612648835 1069387809 490774109 656350993 1055537639 10494618 1001955878 607580504 92458272 860336476 551126667 923349758 724495871 514996853 454692828 268973909 224439906 960019854 311822174 210274510 134708977 88388758 949717970 120436816 320757443 334535983 411664521 536525489 373417670 104860732 942515240 358053166 133779411 436371619 28688666 923567874 867450264 576484109 869471612 597272148 555960901 266357291 1036451993 799177205 240604382 1045838118 386458221 606500765 803361160 451390883 1014741430 492316111 201640973 983218284 795143539 455586298 870928845 866492204 862717989 837134800 1050360086 128791269 595780626 530963846 249925954 419859042 783051640 144874312 895768338 171531156 432494768 365369220 952559965 335261121 281764547 268686203 166052198 395789043 377397509 513013073 899086614 819659361 306344831 1044555153 195165820 658270657 703991590 916978014 751478175 17355965 834254363 385520306 255758034 660437484 121532498 430488408 1027377814 269481358 382568608 929834270 359839466 1059741515 182494511 263515602 671002149 291921388 173040098 69061533 70568696 742215565 514427298 923080428 395291920 110263304 138777264 288644325 518885949 1059212292 612885355 643458621 962260841 1036087499 812362613 340474873 400351098 300133402 748693014 457424398 769201002 479029535 728944083 487620940 683895234 875565694 393455896 659997593 685919516 438531148 878166365 956818405 1020224932 640570637 869061794 989326257 1057340819 915133243 619743608 338961104 446429794 367733386 759935251 308956139 610289159 420264263 51474202 656544416 492955385 384188967 569932263 601463685 482838179 483583815 385681074 450421095 384814397 229075138 688670580 435010844 307182579 848678272 527820365 45663931 967467785 599472162 455768773 726703453 104185152 838073910 431112367 760308765 786820968 211039721 414604407 987756038 721089014 335023616 949907974 430585481 962802513 880468751 380731653 900022659 219779336 949466831 1038291736 991898321 189022252 829746442 728940507 515828551 942898829 103352092 693322929 911135395 612466646 293193769 795291016 576558853 4029777 103129166 623315318 81429519 731737277 895808995 485942340 235656596 373747461 682301040 693462145 389910845 818897903 810331458 952984547 747944085 245267923 771040513 108042057 764304611 28096219 980370365 505863528 120923700 444926505 1068138444 1066007391 513547827 744770113 695624893 1047795798 634022205 629425243 594055016 560130867 379820337 940071786 631918376 202913870 1004316395 452199292 860537861 792955679 738580634 572163231 80690836 665081897 200931945 241356678 535380241 167525477 855436651 60488179 991308787 206937678 157266766 70985708 1072652881 426608185 880175946 26792926 964629676 263855971 231600107 548056723 788902994 991281979 98106491 36593039 44210040 461485187 762704712 732005586 152082918 961867872 1044726858 785017408 76631802 868446548 262045018 897816203 607614248 372059633 288927407 753294133 91521527 74567850 51381238 1003066749 611231358 117093606 622825672 182563112 199510126 730003488 316897996 922897830 1063491146 569479425 720093130 566031112 304259705 1032036778 1016921287 644411773 599268326 347613740 590038079 587479714 807183153 168847564 335130606 931522746 37181596 893093230 216975398 340335814 706016261 330857843 205615757 786803186 699773936 201039195 374031919 165319244 776585773 511183305 422015249 896322030 38372697 169003234 272491726 809639516 85439462 34786824 711279589 351146428 376360148 739458384 871434497 796547052 333351249 441752668 560778174 916672889 642192937 133385728 446249263 766175571 784313944 19662532 782244173 90209906 961013956 353620033 621378166 853418917 116276163 632900837 723998744 883848331 681116890 853324395 9583064 50284155 892861646 393271675 318547115 348240413 612145627 1025761921 541901401 159851855 787051699 179363587 1034017689 323418242 847936230 37287021 817218178 444815478 829492615 14362432 27837260 253760305 814583776 33779826 844578424 643016572 894573333 821964392 263433279 718087241 509068610 653311374 615055587 226543547 235752064 641384436 385008668 984951597 960904482 710471901 35174451 695320002 534204457 787613902 402213405 590095993 343832978 470424240 609022220 842134439 242697491 289841598 521754269 588350392 29978219 581330125 409139251 124182730 910495832 969008095 488600556 945599269 749143729 401509055 542280569 217939891 841757535 155926594 831276307 140586027 61722220 466952738 445546684 993604786 442055453 542257997 175689951 916409346 977597923 560892353 730124118 80310786 128386667 331176612 229477435 137789142 616084509 240638866 890250882 268581803 586919403 642428750 404115165 559262226 767133456 538291328 286924677 9232998 1024812462 729612699 727033183 346299422 897091338 1051371302 251434692 246406319 481173013 912864211 426654346 603717994 306409715 289264212 883218012 902567852 258005393 444239424 234959704 57381719 902101256 352172308 882236261 1062978900 898187892 805393447 554109493 180028240 411695547 718959804 755185087 412830785 1053491633 732853788 663750306 847026463 706966005 119496208 851835997 635015831 624773731 613527550 440936509 683439822 417490424 847945800 483940870 929823071 931584750 594776810 1062960312 560576078 836973057 74256554 509311353 692686305 983182175 988500973 475208704 1068068806 272073926 40332984 512899285 356778027 791640363 35806886 788329888 17257653 549053613 577148433 497144340 961951075 145467371 304595963 171792558 601196563 842918212 688284801 520036156 423279204 906737601 625273336 445898748 336261343 616856019 41224136 1006674709 975483503 167887343 149194029 709728856 287952009 37373044 1067557316 689438974 587211673 673981665 968124690 317187934 750069610 144594036 267000116 119272525 818040903 938958267 567082575 981342138 673549442 698383503 254598050 125977375 955424748 867579369 783301660 146015073 795779368 354692591 424461941 820402437 146466036 986740549 683102844 1064857238 335301570 931243589 721914683 750743652 645408519 416696233 909314764 761307412 387688208 545365822 363072456 525545033 648244115 174652475 228088224 311933421 978813570 977671526 981541922 979923456 251309462 711694303 705418632 1059359517 226602694 194946030 558405142 805149117 73675365 434699716 215252698 741144528 1054521458 158937039 677005036 339874550 672355754 873657698 797647729 717374729 509750879 676086021 754309635 969397611 244805738 43249778 93814059 1000466939 630483515 497275799 1052941957 13138346 84970280 68763180 768971941 106475517 520049064 115167279 193943119 584904560 878732999 375753166 1036588836 951088699 778738946 582244601 233695936 547753379 471314800 474418817 249376465 770252192 478955646 915779363 237322693 111040081 70381024 636785981 223622928 732134638 659976163 880448097 572394954 846766509 1494896 65566741 360044339 1025677203 47454085 728874138 272571355 813526924 496391587 743787577 1057681201 764027860 671263028 83181194 938154370 91706447 406137038 474425798 283266017 522842235 877526055 331324881 431922200 764461518 381768717 1037567717 780317393 974452696 648265663 149561734 721442307 217058433 706984094 990938114 357724426 81692638 985273514 1057197940 179963826 509763753 1046212816 99207887 146247364 810690376 936510470 987223163 287851324 120970456 221997461 764931028 443058186 635340509 432446618 336059741 292448368 640602595 101330380 618456726 726580457 1007675817 543522499 551495405 989461255 49133465 18293809 67518364 476557196 406048118 405053595 680551815 531509648 166728270 419627386 117178753 777371157 541454846 4791765 443808524 665572314 874397938 134407200 142630417 869844385 83537622 277130193 938455009 188610128 562878926 627690138 128362249 185914221 415004704 150961024 217750910 519870736 181442658 635234148 555312086 177660414 462377494 1039426444 135643747 861553178 23836773 748869429 554793389 580041080 675581820 272569979 646696016 124439547 652138869 218940782 1065140760 12382982 797235786 523795860 532898069 617106623 831765408 831052103 892365509 494175760 394404291 930100895 262601622 225411832 363800040 948178402 364944214 790493440 115441612 752901393 905923743 497503748 447909337 460561714 484028998 715069116 150094723 698987982 488292631 896070441 128994733 1064662209 525702652 960764270 873082569 656718668 403797862 412005045 772312847 553657349 112770357 807965500 505725997 835941238 965776333 307541249 778198976 1068602132 20541538 194779206 168274321 44697058 598275466 436360205 591950024 371285259 172344191 247548954 273506311 405930206 92922535 565835 771648451 869762759 748810978 482891096 951068804 444647365 755590045 891241220 207741201 665314751 359329923 585871559 420435233 976932067 956357115 85356122 1044359479 661808658 318773841 918213194 189738829 81596214 583468134 404452018 172252410 913902229 1006149616 943367600 764673270 712901311 423331605 527634961 272457263 501893269 223643505 683697188 105559174 354465853 777254643 424408771 716089914 945227992 184223204 782455152 473009054 960330964 426888166 988040553 298077637 172575253 941619065 445310857 772501672 1056917491 212495150 1003941299 901956555 190544189 884494458 602379076 221201944 428848669 680290525 778479151 200575695 135432836 846789949 652728578 739368466 505699022 126285798 1041596291 699814851 399013079 1060538760 599989538 18440440 919588073 587276911 732348510 700977318 826039689 1044323865 802745771 205611335 973737920 926356336 103909677 321445791 144682362 786126028 581320240 285254281 194106443 549734600 668108886 287413360 848483432 390909017 954978755 470064109 395807656 422217336 114761155 441702978 430539003 232800346 338163965 194447777 214465558 343688998 399291915 439623427 402902201 478353151 355859587 530933918 634388494 301048547 721689605 181503551 327165104 141601635 168449856 833948733 626460855 616008803 521511822 239688811 394885065 957997347 982881090 681728445 690984226 924031491 637374989 574671275 482879028 770119539 623792316 52101764 80890584 875882889 343177452 621888185 650717027 747524061 336708328 755888550 445922407 1056917600 822978435 64195024 130697474 569991941 200604072 400297697 725361750 14642872 318219735 253681290 565646114 862272785 1006946834 514941679 1062132613 612936448 881552365 933442294 60637184 851348809 707837633 906570904 880434876 150787403 772077862 465701310 621013180 567690491 779764685 823301463 760262121 507422575 323906493 985072715 530745220 1055206943 339018939 567473569 442252179 97916839 805997456 963932542 241362318 1041829168 331136595 142071533 264104090 673695606 730438748 377455571 600070229 1013773128 733250327 969699503 271267933 287852014 139832885 986003879 846130826 1003777851 984509019 524796016 220831799 157931488 181852312 52629390 1032726166 56990136 788712090 311576791 552916232 219548194 49562370 652593041 119335379 58908652 42744743 564600612 96343870 661848967 480486723 285413552 490216745 585529318 584920480 737470184 631822574 646720204 614824616 1009948753 491435980 775647251 1023409218 217916698 625985480 367358105 324615605 462066483 761203727 42388515 989666044 33705489 199195032 208763021 775441606 764137821 24720977 18527126 926950654 392017388 1032890156 361561858 991247763 1013962543 634576520 494397421 875606407 646418579 1026999497 652415783 602129525 25754616 719418673 156751852 581708542 761592940 631214791 779316606 773626859 496807881 294564739 138762584 259068240 1059385168 515247723 182525986 964334839 964098147 914280342 179496721 697084118 1016976797 589019193 153936666 225032779 47165231 251544678 559185626 110776450 66994078 79355964 83258303 839297015 1015293844 330822256 371037797 817386487 96539326 914251642 666556293 115172108 756510702 94986293 6092591 539541055 1047102678 608830367 746296023 860656489 820940417 177912396 567458770 448502088 941295142 316348479 141653581 321751917 524499900 249971774 241380406 331563555 438121527 388070071 475047670 828406066 992429907 528271539 506768856 545506399 21235131 47771168 48403011 304162344 181374400 481881568 689039550 1061565386 132393116 721468622 389049962 38273951 312234397 778410821 261830725 950515460 573247226 451477982 761989852 476939362 494632984 702021707 694444371 1070668089 889048311 238288502 288781877 296457359 866555401 292106850 594372234 417235932 765369535 187630250 403508991 645474501 556839089 960102049 603316796 543180200 551892688 617722612 458956176 263598230 799273077 347867424 16958623 985498792 273074365 203937111 332470261 20659212 966566349 140333802 847508122 308866763 179205580 209691907 425752330 722486351 104759018 321342444 116055638 81533575 812230757 90695020 237743174 143915178 762657285 358498508 88028788 187222711 1037096149 186228303 426314246 891996787 599778253 832440112 507960299 813233752 1013545509 18241901 908336723 355496735 494929578 993415385 417860015 201258440 303272316 939932170 105105317 384599744 277165596 7879696 999280658 1019269177 352133104 896875728 883512268 328695183 902054746 288458694 180774540 227197781 302474813 181730937 480862916 83471094 419850686 111634409 874591376 873519361 27813846 1044880030 228974565 802253104 500388868 297938573 499548467 580324670 552416164 98116770 743919436 458181727 124295007 24275240 1000438199 1051152942 93932626 1022118523 851221211 641611181 584307907 15646720 497825472 1052359073 911532532 797287647 1040881794 615745331 967123229 777561188 293313387 967686194 281035647 122915340 464248632 255478797 115423793 47567438 78687854 144660637 407254134 609905283 755561520 92158903 693133215 48014864 506527833 836710920 220785654 1051926843 595239820 90015814 1019449751 1055907577 918074781 929946624 249860356 457417142 1004426629 554911246 726233420 766114286 924976747 330595356 415243104 1013456134 752446718 237886760 423934739 671999085 465136911 107740387 30382121 755339030 726058927 1071494766 191817147 798619246 639605546 985276093 431015499 528796446 137106831 354958594 56612512 957291352 677181242 601133113 199519579 207039277 928565926 850681770 1034898413 150841918 110019766 139821799 861348709 209144200 870636059 941333833 253676386 355046287 954189391 667559032 149182900 857658784 960043151 9454309 736829585 1016828247 444151154 1024027741 426664474 603141593 309635396 243380714 880948502 488793111 816592221 720317131 851433186 948189942 206290856 230423050 837131908 827874465 472460324 123505589 962428895 571045523 907984398 414739958 638365026 591671981 414205224 718266986 237854564 696899072 40257647 118506270 830786325 881953114 824288560 549411162 117483466 309840477 57072217 724278324 565464910 992548363 16064159 1004363512 866042761 957734928 719393490 676333777 163746958 557276543 488962322 722249926 226172885 996320391 309161130 339538830 555823671 627643614 799467292 854660124 887568367 972609750 607229259 1069828072 74245678 238903674 486341249 344397378 64781840 678901502 822304945 155607064 520945917 344161058 823360900 406324967 279507927 999660611 230308860 802977912 420004718 876331626 1059703667 117668621 180597701 672659510 715409301 54755482 528097043 889757805 926897201 942108682 53915563 82865430 867555086 471056348 659504141 550798642 476103483 1001299486 494849497 51870183 153656329 498201801 340747416 12039716 970212419 836334918 779351867 390105360 622692810 818786823 745607891 867596254 863856784 1012094814 924701873 275712161 727827228 22426518 616362917 541792838 289053046 274112940 396550202 914695580 266643691 449349718 662069337 287010990 347151599 306410894 1048896628 846738672 261558803 396062501 396179781 511180521 108682775 535402928 816396988 979984678 525670881 242450311 813395857 1034412240 571858870 358106745 463321524 273559146 684404827 168167510 523603195 1761369 431070355 386774910 602075684 636038518 87682663 227082859 403959717 184378986 789642738 861731128 640990028 184531969 239054539 698356143 298919387 546572998 688559611 638157703 717778274 837660230 124459005 816683361 752843311 436896383 234968959 914350520 423498516 663939850 634789556 948738918 531632632 1060478616 434052951 1054355148 305820209 443828649 81622043 534900254 145754188 576200296 1017913633 114294571 1041701531 342986002 713670234 14228382 19520822 944477619 266355259 832779868 504256828 952661263 897382155 802614171 941396037 256176622 822423424 832204018 1628196 648067122 625752371 29614706 839546463 611926355 621687526 1053866712 441236536 22561131 941888596 184258983 916551530 474323764 762343252 663630875 232383020 471461371 296808998 385249635 352402484 591854843 763446590 868179766 221262992 873215933 318597566 469286214 888593956 1006083888 165772839 657286829 604098009 354524020 241031168 569151698 561194347 307026843 541060652 285048326 225652370 518792884 509468149 84124238 582408086 514935601 872966356 880197971 358571169 421207761 663755982 264046721 481893870 790431340 387959236 1042945461 553657992 308004500 487688539 951441368 600595454 350604262 631558278 503072627 428105133 891150995 429394437 641534871 413461980 699530941 662467761 556025935 808071796 215174992 294713963 521841990 248097824 311655541 133701655 371150598 129285200 571975286 420602640 1302667 409265817 600340894 278283477 1054356434 205646258 552685129 779254469 885417474 47041914 899396120 11903022 834954877 415964457 739075450 296729175 137407985 797643039 119986166 688694554 27004656 545339050 806038644 1036664247 874020927 439406467 969152602 820028231 709077267 252788149 309827756 860384718 227925387 2128038 465869192 728895502 135485028 408900860 14153086 1023028842 633273175 177931952 972019464 710179035 429959549 947307948 45595361 700841071 983861416 819512156 835957348 384384063 965001959 250016124 422934858 624352914 42984476 376009601 144348330 955981024 58195798 546703024 723335116 545907156 830292534 465947443 1068688925 282021698 378997637 717655900 205001892 198136834 996829510 775726463 405225980 1064929865 8096804 880207812 258238863 977782737 747785314 371340668 1049872481 668100667 881272291 257675485 173929406 825393742 319343649 801532296 568672179 294299370 677614283 272803057 1044505244 767012977 600848147 738942767 300435627 95721713 467221009 477403235 776264921 945574389 971519493 901274613 707355045 845600254 1049924378 820807631 469317758 981072841 1066859525 423952282 196899395 334744020 600005382 549303343 549758418 1051321382 848274403 590452918 443011926 787906783 671670808 210825738 168340843 927329429 760827083 281300561 839187086 672642249 134273258 854620128 137358532 1052398074 220694694 595355390 586638579 367263936 339035811 906702845 541636797 757769507 588263098 163507584 193861507 896126384 964309431 204408454 1011340629 967739816 405179932 483462014 852894695 536178117 655026948 623370611 993910341 755609771 590822482 914100316 934311929 381605929 392569660 37789844 527262988 1048855583 793325486 721444492 719557455 577357704 214083588 269803488 981123957 831069507 667989715 140177559 168068315 692298167 687311498 705801466 183077109 53946954 1063016376 345180578 371415717 422818851 11984827 673341473 26800717 1003737265 324882372 720651586 889204658 844383314 442026154 963880688 1025642611 1004702490 98731180 1042097648 956085016 834105420 853868979 834006118 722999320 455467088 717963625 946184712 184056723 109127379 388026467 146894581 186131245 232785082 235874304 663514807 285056414 86214842 432543006 949354291 400542072 1013736920 398558661 427990991 247741940 411031375 744208649 281544678 382223452 570038860 624401599 408906232 493425404 598831390 788369550 863863073 690325794 170558453 889824546 900839450 1051585330 404901104 296144294 195064074 499685113 666109717 810825765 287709844 795594423 133597592 73715075 419348122 774021500 476950107 71996853 1022471200 262841719 763821794 605204985 246573183 451216048 726215828 991220185 815426414 38963720 555004434 379424669 499937641 928235027 281665213 995966519 533182558 132769693 537251279 728940234 814217378 960197376 141297402 28851478 887750445 690688004 122127734 960405406 285021325 597638109 378264888 584730754 776972237 122129831 447537198 699785440 840135198 420822203 428972760 481596466 373103539 226320264 190241874 319521633 991721533 506200270 343115554 345320661 1002853672 930679850 927538626 1005943962 703485826 405105932 872100285 515672709 133992932 819242493 313519475 702449316 1030661625 29512105 495682902 725711457 971436391 369473987 491573523 832127903 638349473 521091133 678443673 113758650 473418509 158816121 623071208 782680592 487832505 123785251 893309637 184193121 542516488 1005253126 982680590 336412620 144784783 611327097 902710869 1037391913 111270256 962135567 454786183 569825169 788245769 707192589 965625269 52884455 1029234659 293583067 5694884 760200244 63960479 450786418 84569285 90014897 415774146 1004048942 227704883 297841508 996010139 486808266 75164589 704132738 327837773 446474127 5126232 978851294 170734977 461854734 294906799 1028924357 611813506 721693791 224203568 375337130 668642555 472014906 324771922 217360760 560835153 107583865 597968228 4464041 26308183 243616084 403980940 161669588 601886245 732614121 862028823 636203797 1064021374 380250256 262061765 384577443 952240552 299414919 323150275 609133166 36818613 552947393 833981215 573493075 619448500 198937693 753387522 194478985 711955901 910910257 674695102 220085848 1023404243 578197573 111526057 836535563 713943334 457412340 741934926 728421115 362604781 556445641 498688722 109170580 826734725 355603326 389664004 355199654 183437601 643190567 644215514 122480563 720905715 802773745 566653570 727272678 150349693 684844161 629631381 520645743 871622770 616794178 32496310 131527364 642395205 811148873 759994362 378013574 299362654 1067648801 301176147 199213491 1008997329 1041314917 463154331 250660073 900063898 349181055 736818378 831580809 711813226 197357099 171836056 604854124 968830826 758429405 924136535 106168560 381529528 22028645 719576175 84153461 900464185 160681333 130279443 378404237 510885749 310069939 486376870 257605590 1033189630 579548551 319192792 518925722 29813602 609692730 569904023 73208349 56152613 954498012 327132980 606184581 788621574 453353616 1006383693 292361228 396034205 1019770317 235958039 453228957 722952869 457179740 931230345 471293101 575795357 307865331 134117006 745706884 945247671 212754209 930104149 786736778 723788821 219370615 417728855 598744628 381068092 460913173 460055737 75786208 828415896 74716150 100370745 578258921 832638653 90181253 1027946171 365608628 458028505 85522812 441115296 820474787 857156861 232164036 266161861 522784418 718995665 152036283 952237010 655604794 1018798465 475877777 428357477 432116537 78041781 755961693 919752097 50748594 54702188 735314500 573910280 610610052 256537848 191254590 529984291 300403788 926393363 170517791 126882293 867192957 508335218 998344664 329652360 1041195658 264992867 1018277221 285638062 561158602 1036237429 1019370970 313447747 24412243 466875270 954431119 534548373 979218103 14750265 263546431 25301202 104357167 22256559 451326359 553906321 796822004 106191958 900821996 870731816 504757385 908403157 163792562 375716666 669324640 435305239 439828137 340415138 272182448 379690522 405722727 397214317 937835184 1035029304 173886593 1030799375 432862854 480328512 1059491578 230000651 560540239 342679432 433190814 941737712 654916616 252094732 578553474 607096759 899226149 207633008 506830234 810487147 1020272786 257492330 744196684 136499808 143947980 872953819 258179095 448484394 422018292 703396170 366156407 411140078 594065354 835316613 890478177 165543639 874627088 156251626 711881654 415365380 608437962 628104367 715847386 610104821 15912046 956873329 955026052 262521433 780316002 64673903 146124125 805651216 855885683 279479236 169235206 584820744 713980444 1066789282 430181874 742715167 404924030 86185444 307243298 156574685 876055013 478567152 405794722 203235000 296162658 755421499 1012140122 936666309 602108031 1066294143 367011166 838646644 749310812 339228899 928613046 371918345 683463901 697820497 661439085 1027915104 1027926785 1025297366 817002118 163832765 479496464 123869604 80967195 625219202 686822707 270219854 826099492 157562467 1046346190 511545013 42196885 534552640 900592498 903482759 704088073 658929054 387689384 581301360 844515629 654670978 624087467 774059896 874271016 684344664 736369800 121449508 109861060 732092257 890386161 965740969 254222014 650928909 1033286924 21452724 922579886 366763599 551558412 272170340 759978531 520176832 261010297 193193038 1043802717 1042988514 269472399 204828508 1023120635 651731925 989037358 1015916746 437860089 842797934 84212096 1007149461 444997900 972003276 188492427 262770679 421660041 723187179 375270215 417309835 735956694 845974008 831955998 884724614 896431097 34953398 109312136 98543896 665889106 448158704 399993778 842294137 381601225 86019087 461657443 997525735 829355710 181110698 1005543890 743254407 493596108 367104347 618284735 963414508 923501465 119490725 173063527 961092084 815977339 132511323 531900022 291745493 161182737 647039907 128776471 14907124 595480403 360063392 106539889 142405582 751272363 470397585 111098870 902000334 103763430 453833972 672138785 1027964356 679008101 142865015 463031033 675516850 381625516 889792375 759010877 112001199 16653034 142035221 571763722 1066271624 972830126 579005282 715499461 539491280 984142346 224650552 141160752 964261379 938320281 822524496 792557263 271199229 878727578 887774275 735521554 380062634 917686900 895925487 544988706 959461292 16023703 842192124 43703244 862898013 64032835 614495916 233273168 399863983 906630579 599175089 569726731 245670019 1534856 143691821 754958514 101604806 404950698 396609891 843672502 80039662 1062294197 981753843 845566695 567935098 969015631 885293862 374133311 1035930553 595551998 943687773 714201002 933156780 908179222 413139445 343970671 517966205 844194508 721294172 1057044303 784710469 496592598 487675449 754276190 311969891 625668384 334189689 339244667 61656775 218860432 766231527 366517875 389452842 277042127 938579437 77839273 1013761742 878797181 43443198 310270028 814098708 642911755 634981870 17058055 403650747 363784467 938822637 1053332107 627136226 566873632 1060075472 34693187 823641878 408276831 177639019 979285763 258043479 670637394 197980475 674945367 650636398 7276568 806757137 175768064 516852244 776197697 777713166 165876266 981371563 216747944 353964504 758146347 434072204 236424434 1028878837 25003915 205765821 1016060414 455306704 906004639 645461784 94616566 344595099 756681856 993130690 697000111 572143386 680597191 877187827 511834514 202434909 274080771 572694478 166997220 711441890 929156086 391177534 326057815 878764118 109790517 959327882 1039303286 489213328 1013156398 983669783 681269665 519558218 262519961 88387757 542735643 467757825 707145803 869844193 707791996 4017265 841699631 348262993 730629376 998378215 160168669 473716576 329046217 169662580 673013346 846518286 917778778 381408463 520008167 805119996 479266982 722827597 597513143 236048440 183356995 672802196 902350107 299177228 153873950 286889501 1017255419 709136451 83509118 1030669181 613082063 425031141 217752483 258509801 643979761 902285050 6797323 387277520 1069322670 833470667 979344551 852571909 135483063 387693558 899981165 1050158833 1054354192 324274840 261056976 613945092 466922503 915399166 693519597 1045275395 603766108 502358057 1018620943 60185802 711386363 775994887 549833935 946959749 745887940 43641235 352346076 23769529 191159004 253352578 448134663 783986728 784380229 765292195 601060359 175229582 415263389 49638704 772928900 174519371 444412086 7346590 990546928 818097720 348717466 972539084 740229320 133426084 656820564 704109046 1046699510 299152390 1009104821 663841141 916284578 255409858 60292547 422222417 726741917 96402701 346569086 647506715 646000140 86281206 615544899 181653004 860053752 636021732 955848669 466866772 487102831 308561702 490989504 497211854 182668740 607577065 694329481 1062018866 784996494 97260677 156097700 885632442 519210993 433491101 691838659 772179373 444059060 56404398 834663060 823387138 572694412 523749456 825105370 256691249 292432771 541049448 989371315 208683364 804455266 630630913 586392173 568289537 344371148 833562926 791189611 1067145430 292700077 601404353 125512160 314542775 264718404 434784828 871135239 800584040 860613676 864404916 784926452 265287286 234296732 909482400 961342486 315165429 731040687 817982645 977075493 307838688 827256062 363312904 584545714 912865744 412915811 858947958 170246021 685494269 656809765 985190174 714761991 790335854 231296403 239428385 854529588 680915905 773447503 310378461 800873995 576692000 700679069 882913765 875282569 359682741 936771827 167951557 1005371265 626151670 517334982 985381484 303339869 316978879 65713626 853893273 179592578 578585758 115266762 193472156 150325723 33084463 195578898 1047743020 941720306 477277322 638178211 247250888 878097073 127496786 807746293 916854528 253465266 1073319845 851399780 300490790 1032279553 822189087 506302468 134077591 497801828 936527671 648005500 654034840 297123298 147982208 58270471 508617384 562002334 484785071 184253533 1029094653 787987819 535438047 513704293 1004830702 414674572 272853852 169157359 997777078 321401668 819188481 913888830 872994071 676876889 201854424 308194383 123619930 303994096 635066211 656986562 721737790 919482102 262318266 1001429104 1031896818 483182616 115418945 978874676 273257903 341340583 784035029 464269141 643712958 96027114 304517744 250637454 93056201 420419946 709855008 258136291 803298009 562787707 997368993 296898096 393152938 629806841 135838103 647220986 780478689 148267310 185385534 800665029 256507862 641696326 528734601 87642805 276243962 1002352480 319614172 763684903 255330387 925566807 890502444 302363701 185705983 530775747 895684205 142689738 49722765 825543195 231828030 947495903 952221538 565310181 1060401842 785920052 872759194 422112967 283593822 819359991 904436028 488377371 716847217 1034919205 352731056 730051952 610817728 955400759 552972304 183900128 322709085 617115556 167516957 81615138 217485845 957396998 936659773 449561685 553170129 773116323 10885515 211814308 479753546 890579581 738840539 405642555 183966273 21257830 238268278 170352866 701755795 665678855 1028110222 307263334 834483015 728751863 371135297 445345474 1029422264 601853813 391264200 472063752 811920600 147968388 178111800 315491812 25562467 1021465588 983914426 866185162 540234904 936984247 52424241 844249260 1060342237 268580582 600485440 511649701 302294853 395509284 408025458 882160362 911096773 177168961 758294298 514731432 334938794 351696407 241598907 116885162 699832998 379897706 992076583 981900081 696978147 525684448 730179366 1011789904 1051368605 207851311 558032995 571354067 578123545 191760928 595230475 733595281 999825943 762844526 657737804 773199413 443444654 60811740 686562726 823363980 368964964 546656161 684317854 746834681 861983271 8138291 344244959 639684199 795062671 10724214 880459650 849946397 241745078 534889156 965150904 866982951 1047215851 437681478 325515783 748585483 732661479 755887025 221595677 71420219 181659989 1000225908 574594195 652815543 197868780 403504055 863749521 365398388 894732368 95709205 413938816 189161950 386321923 700551981 432392477 600327609 1002518937 658610566 986131166 240149455 255425290 255939423 902103284 995477756 9710584 6639966 377109261 634143231 599606993 388635433 666785382 647009330 268345486 994368222 758271030 331672095 54524079 424931736 407811528 260011469 316151454 844414995 1029205981 226547556 587674395 58252545 679154846 19905824 484435036 173980242 311988595 186671873 417809318 216534116 244578398 542489855 827358072 658389243 486138595 203513987 612997035 66928334 359221017 144996387 427928681 1042393491 507044067 337564011 457730275 21206527 1009535129 909476103 372390230 476085615 878064648 899205525 314292947 945124370 190096926 505037478 23735779 602813716 923088439 704371489 308568799 345068506 515947403 216500543 506041260 317105487 1064508852 726251709 46997306 1033270464 944990056 190687717 856856416 944893877 414785407 787829471 619780133 687885548 116453414 383580856 976789607 382018121 232851263 114206178 557865369 1047380409 985035889 491267134 588650334 798929230 241871162 67071631 858806983 1065619457 713649606 1039038979 524376203 760651371 780953141 784496294 14035769 874353061 975321569 749955964 873768986 993914144 556131830 106086227 405414629 143025869 356110212 561846342 645125885 658458305 895406288 238592132 84457679 791993594 28998883 941700739 272132778 25847384 525274872 47840354 974771759 838747774 252248259 196015957 411056665 857781367 871409155 897979637 211184631 697013647 188867645 18915999 508599272 680535374 408854732 1039469577 508189506 1009372212 705561066 208267820 137398997 1024503308 719497292 721219162 898384367 759324601 551766540 565879884 986344270 537662180 371287476 498718629 269121334 471011734 572414620 380633906 726477637 999399304 1017056926 658363702 859147342 300942563 372661998 568173546 363633368 1005174800 560016293 638585799 431061679 362150629 459579462 379117734 572226024 243093577 938968581 546579269 647892280 282959657 956433045 855772238 659021150 813887514 787150333 31795618 906798035 734844612 961867492 133797196 472833151 90105217 266157888 970461980 859305998 975738743 271459121 18198944 500168895 811121261 796834192 324452513 547495920 1069346105 1029851223 995371977 849198139 252154662 527670434 894316092 446017519 76449585 628977955 544020415 986771088 95596643 161575688 418353212 227659548 354153281 173830269 275375990 564832580 234264269 1071766434 528142026 806311273 612217186 398708658 497487343 643450953 267343059 897957301 311513703 548285009 407936397 743925217 907912023 347607259 960517554 94241395 612230785 960577716 686846124 438007428 24985428 142973271 18220497 295879685 547277412 42004194 474739179 706743407 853123054 614713635 128451339 545364678 902202981 464374317 371034286 83388484 307982096 859572552 415638115 290359313 657426574 374818362 657889757 991410558 560755572 505554467 39076890 987802561 805449704 287308358 365440946 163656427 811772276 825839319 858541154 754334279 136514259 418594863 2087288 875884137 149599800 927940699 155281679 108607372 793203681 323387265 377036042 242260190 467274030 695513930 48974152 76049800 79271993 646552765 1030545195 496607920 112220923 174903112 1028144714 96207402 258211304 482366396 1022216382 556936589 119571147 78773220 787474828 509657035 1072386413 851518433 944542640 238927347 946313554 639700037 354102954 255335543 855119109 134230364 813687007 713678790 760644456 319905745 473447431 448421977 821928203 925490435 1022828208 899826780 504539982 264091905 855602122 865124699 286891728 771085349 899629402 114434412 453512521 642556340 778780221 406226387 714179058 558179101 480142253 918503403 232510804 356853140 449202358 596204541 511099392 29182497 941236875 311841692 373732592 483734657 815257083 269153833 740997671 920683792 653007200 562240145 645113438 533597297 1773152 854102351 845984314 977005528 395774409 180631097 271541550 316639340 914339226 316115735 271753304 597628542 547050060 1005385448 519116727 240050996 3266329 331333329 306923305 1054303020 800719745 265106061 418221819 1062026817 380778732 346014799 38441211 886015061 770463000 779610446 493821329 246321930 280721749 615472898 159326419 218268631 862521259 1057740978 77736225 475207231 917999118 565994868 338691627 39971840 559669115 1050300714 129878944 533565880 1009387805 9404874 236204699 812549833 1053259867 894641550 872008934 463777336 659779397 156180035 279557882 450891554 998690370 274418488 490567034 658110711 589584320 854359479 247847763 911135647 901111764 994142315 338285483 588721418 762340994 343204437 271162114 236715461 15687249 17541786 972249996 958631104 352484922 212593353 706190501 886781089 255338678 502539439 987209673 379338517 134021646 77008948 1347543 505496913 643333068 965808793 122143135 486849776 179272114 732470015 135551754 251632842 584408345 744878062 825617468 881919078 402015252 572197033 182253630 343186760 745053290 774110925 709618897 1064886134 303211522 1442291 728827128 361518485 1030857184 355458439 171475703 840110234 603059952 1008808304 1034461092 968725574 451452521 439589873 463993488 1018407263 230491568 784840175 564997335 603037808 399266089 946000340 839276678 334743250 79005114 743370695 926556491 43491959 754585435 812937139 40725003 420246234 658006405 276291732 389458051 747211099 77671801 861998474 1051575134 206021926 117834925 35619711 963549036 816785425 697745186 664782107 605592248 866851998 443463366 725919767 889691818 245922642 750807614 795417780 343627482 323796583 138413546 169418648 737002915 517605441 472895995 790419927 930063537 25902496 608959573 185447867 1070088502 903176318 319172395 912265960 185130697 1017685913 639206407 372360057 118790864 323868192 1004540622 284176121 82225225 778934621 871592353 443079306 764055374 614586674 955264265 1014508759 700292879 424557604 291261503 128513531 27241944 780305626 713248224 290433683 916483547 164054041 862084842 16408752 738027335 664284837 107392633 818639128 617922146 756388885 367358284 91624933 152102214 910019773 123580128 639295119 229816942 517474222 68809608 1009914394 946503934 699392068 919821483 155576311 457390916 147116852 967376860 204557997 500197106 979291480 886914370 673327422 597942465 90475725 657990344 198043663 259727016 655734908 508640350 105827215 612686126 756949825 532674518 262674453 856201218 605544258 1010698725 533378783 147606011 266885400 719703585 37339232 17452430 824485379 721898510 726035366 800912338 993930457 750359729 318226659 480186206 590603145 44296750 1046662900 801336428 833046901 367665603 73048155 212167645 986104955 379882272 193348184 660709615 834895528 144556037 4218862 902053903 369297132 482446735 318802727 648001691 833168433 298510050 450957080 323875038 643567062 1052768912 314349082 136495952 124400508 571290556 840805168 616966852 502194946 703873740 330607346 482933004 436028716 622464290 432237977 871005054 736562624 1003229799 733301535 508400586 882535385 17096202 456711471 687892355 845689636 731055032 352503425 805996024 290075619 708185460 194167037 97714739 478182905 525614174 594279742 742293 809114736 157890165 945117941 983055450 688529055 1009288378 766292039 302651891 398418433 526638236 1035407908 233657365 91829163 171005046 411075218 975202993 215626382 904792263 494295406 193853368 140154536 449965852 701085232 83761065 188407714 579820407 665334618 347261083 823774408 990146891 646544452 253015702 210929691 492005655 713216132 219577646 1038592680 662923059 71625672 271672412 915787813 931771581 31177059 750215186 942421449 45322515 320441071 410373988 223571834 359612302 665462373 672331589 931664044 993802661 533521195 771323688 264392954 105271106 1004442755 915392748 706827041 844334660 277603984 1026107020 579398665 38629266 799650246 1054634505 19491087 289588890 947400909 953542300 834170184 465167846 898986623 108913785 886537524 314598064 331409735 402699143 120062801 975283926 762733923 133045714 978619485 876225718 1004343693 465812618 904019898 1022487397 167910380 851514951 1028406545 518989418 385642111 24948382 981094654 584017348 956610338 235855845 959986150 654613677 30288446 766499556 701205691 580711819 34281491 499977220 885582029 442222704 850354804 824082947 560079607 649342902 572358687 542023961 560879397 894163088 222700042 827538940 991940235 618990859 521579122 836260669 243341250 330400839 716372120 918584875 835440672 122121776 692537599 373768520 394194240 328573363 938963429 249227877 349327648 81233390 630401946 136428651 927721965 69224682 48752223 734708345 492908357 611948256 470996312 471542398 80595817 118665598 907670512 270631368 503269229 505170567 306456291 307371441 436845574 305969488 37731410 40708140 333160175 298472749 774932624 1004297918 802480804 207611171 975783355 376748354 874074705 90028499 956569906 840595400 510486280 416094031 509031076 685534500 521894903 788428896 178002641 362571244 471523352 961383358 950919611 879799349 323573629 447469886 599428106 912052911 386504388 1056625121 757713796 70693821 926221209 561761482 583424043 858497449 1016565056 410172454 929290458 397390647 581620846 301248174 103581955 38698144 347245624 605831553 652885944 978883553 947097038 490716514 217036845 269547728 319919122 644009881 941308356 900492115 931032700 83025396 930556943 892443493 566857425 109846043 99390448 953247030 1007188258 953037520 1027940479 903450823 324055441 655716252 22530658 365699879 1000564374 1024498120 171479461 1012548030 798164848 807427057 15344615 495803122 723738729 879721634 823528039 1025799465 188090832 410971488 994896477 59327994 736093625 973699948 676879933 544429006 366786771 177324950 44353120 396841167 936684987 518285590 145527200 894681389 475682721 877196956 306236396 183440495 309002371 492946462 385470695 156870234 756767591 1017952354 581282851 1039737311 85150552 279141614 836670885 425695629 290323345 979096697 714317028 977416126 885576747 115900159 99045553 543124794 1028922544 737837060 732641799 209566494 61569509 146559976 177811622 15818641 828293177 458429602 579678972 206104454 462737964 125884891 587298681 230256785 495883295 710578314 440078986 801054353 607455005 108156552 285541278 683719909 729899225 709730726 402970717 396446529 698806361 408206850 347656425 777372011 568439638 944924085 460600584 83275670 823121472 444492457 142063288 238454862 800166378 550999167 810170979 544262870 1013483497 748862803 1032572043 741968108 926329145 129396452 211181078 290119226 776550839 103618473 339654378 3857133 304482932 236398427 216243317 333990641 930671365 24884097 68298547 462299094 843458902 430121346 24333417 712711892 906033667 978548392 565067432 1030345189 13611665 53700293 777794308 587355779 1004974905 999049597 42210611 389499021 951297499 259480638 59743664 986653499 301242658 346489419 888963104 799273430 248949086 168322752 823880356 678071092 612440583 1073501448 246886415 137916101 809681596 756502940 835896047 625027741 735765153 218465830 544607777 434904604 651889318 8564576 779048343 781553198 313617446 408567917 272621319 24819841 15472969 554154041 525675905 455211754 992503074 23462749 553594218 842243237 227760737 543341452 913750821 162495075 87809488 742917179 493903125 592602672 167866424 399015536 374290837 504436157 1035971862 724159256 395832338 870641835 785001037 45400521 102499464 145655591 1070472356 1013553703 505141590 462223379 468020517 92175649 272231964 480439355 801255727 175395797 122340279 425934209 763107170 618004708 1066088236 120197234 897669238 174944271 519688563 244744058 566881168 97891374 952096334 246310417 956563551 266061489 337209327 763106352 459130021 921164777 838491904 527028983 171874010 49020828 909588556 90260330 725331909 893882061 259028406 695675857 900676141 466901461 519888592 231193467 803336283 351071793 698463885 709653005 921062661 441146082 412680238 372971029 496958812 446742843 203590141 291067033 282769110 740558472 191570548 447311551 502833048 816621280 176197233 137166733 995879396 717271012 665887580 111012787 600317790 69146586 560955111 906911931 797737630 382705489 739359802 23031476 844599937 770973853 603852334 109132308 543193070 255045371 1072207400 463215679 180335130 236252904 957015460 214545949 844069155 2869721 602717721 606757374 997281232 695374232 634389096 161923131 126063795 475479761 1065366822 682942611 1063792702 865239230 618127616 222935532 734662759 267385199 630859211 96058841 1014915123 481321258 258016105 397660509 552323822 298299475 35922169 484338619 50547280 662320647 936448271 539209269 793521004 616163428 526716528 988016344 502921741 119910026 25572470 39792576 427066169 409717564 182777269 525615123 275040853 645509052 560285095 33803581 784240971 466265854 971698988 16324345 732995039 397723022 729223586 906320784 40923246 215116525 131732437 529457967 117359126 963162883 764380093 975106398 841266976 108724246 759312021 1044324312 788366558 118729108 930412958 26308779 423271711 628536622 16259673 721358957 222366835 327442459 420756873 990328165 253890260 686850500 693638662 548647231 1054907808 160374579 247985362 331949746 268991346 335416745 894844585 133979908 102584378 1053851021 667616311 264098830 867558209 747865469 990596014 41908279 715843889 50446188 495013354 59713801 568365046 214366833 781067177 3771320 1004497483 426718897 120511919 681179433 714448600 262642669 960003106 297415304 453823551 737739871 228275429 236943941 256063892 1037865049 690077589 672176784 656292739 398989778 669117970 443441919 456423553 1023072369 727337280 826938902 78986763 594465391 1034780688 880564566 592510984 881367413 303606289 40368281 944952222 721126095 407700312 598088888 187622582 682817902 884804473 368723019 1061734593 496266780 523735084 96926652 479099007 279728253 521378289 111137088 841876706 988553296 82000473 197566790 577502715 936703073 564087565 62189110 14725528 298123988 312064210 415131592 846453911 829982474 598511971 591499075 415323452 697582333 265107776 565993507 922743251 624219219 209448463 804313432 709996225 978197717 234551298 139017536 747148172 841320929 249982390 333728087 602402713 1000982027 301461799 747388421 20642224 446184540 1066659341 806382976 121575058 879413595 507128966 981669687 297272025 180186298 909532498 105159408 836538569 579078129 645568968 235427436 391646626 960006513 625337864 972415878 591476438 412647980 321896879 816281195 186211504 680409496 454662379 904222496 122955715 803273269 1039188870 304650090 172374705 591516712 540350149 608317821 957071410 11799872 147978292 454803196 479861451 873455846 351258574 401536971 891403929 52247369 72096784 985254723 775415911 901369612 34321234 882388140 941112073 262905691 238720896 707117021 249431246 432602606 423744912 48007758 1017090020 530730443 367571601 324624458 386441142 1032589524 132657019 176137343 786645453 689727973 722548804 439593604 1069518364 380681378 477064638 853269888 103624816 310407858 357592827 682610475 21617087 263157241 376289874 198790568 1061476823 821074098 322573078 123212108 669064425 64893235 77068723 16742822 183235821 530826035 762845307 1025588889 77091536 352885927 464485957 974274946 428305197 1057598653 704838977 906027094 5650429 773104788 829581405 686566555 54265075 301862941 832648880 197795803 174945369 26273959 497203725 961549066 283989198 919468898 468453076 515053460 317613472 779336379 471573101 299356125 679924550 1015566989 420132384 997586923 939024801 97999915 20793750 26098324 1054091932 239619359 6043841 254209201 197708042 102054580 596301102 368609729 516587310 661348263 615008895 874109610 552569778 300562891 405572350 454332746 479463215 123449011 806597848 978085728 93767554 1009365836 334026844 743291405 780427571 60521349 1033996310 985316504 263840066 13867453 537736245 444512829 409236409 369571696 208617617 790843497 692880450 499902556 209940096 245259433 760188639 708713740 405493161 292843426 589069441 414810352 552707121 501840222 186579472 264437882 789470348 706540698 180556666 562615869 456579188 801740030 59954502 819511076 609383313 606479214 497587394 619602595 260962745 444885363 621203154 323215864 351601955 563179114 1023078249 579859313 662138030 806618284 35562972 286239631 146074796 1067033389 337198093 70180858 374014296 88047636 668125377 292858675 469607185 555376997 158481015 870021972 818044397 431376477 961461367 765008697 629222419 896526611 457662618 313568585 943079539 24937213 705374338 242356811 769394631 1019155464 386543002 486875130 980523014 496675364 1005021198 558994433 915342311 800698881 14534974 419559494 648268231 58016906 206744924 387984873 343743393 246337766 628688905 795281483 785588247 93777163 227394876 381223960 121154691 255887606 1027407251 624537716 496576935 296425750 367307196 113702605 783343252 1015899230 736364859 384488595 651425860 868462556 872999218 188274211 903909919 194708102 200772205 656550552 190126661 268651481 789267878 629140150 168416345 180844894 283784276 431791272 266864702 469106959 1066170044 722583183 225647969 304572663 923705651 442611852 75044797 709040065 519292744 948240003 464774059 494407128 80635896 120575944 828492901 792763159 126762659 557106117 964072925 1051531051 690614203 697505959 780571618 78962024 612544642 374971977 413516226 25323539 971412216 648055990 236851202 292222080 109708072 112523537 786140174 968579021 284472630 332060717 558939089 514936010 752991077 930129982 926417326 975798969 299014077 819853776 1014514826 382076197 222946544 325780154 276327890 919801540 525920125 502032730 561480223 583612895 131493350 443281960 864529787 515538626 901221168 308576924 607520527 369315397 546150459 544070777 831226705 871241635 3305239 962853642 1004319837 996990616 976751464 517356617 538262590 213021900 484801998 647301493 1049066660 659074011 534231097 4024755 91207977 762054298 758245090 696768338 757596161 949487076 364597223 240005609 200196592 321524666 902812805 485589042 1067600674 453289393 606993299 921011544 865655660 949642759 163436172 765770688 81170500 629809949 941189178 537478772 168265036 456108359 58492966 444774764 662314482 329724341 748467922 133166145 293623099 393589843 17804290 918302729 217815467 498654009 710083423 201440517 529532419 96570894 563629158 1018464554 324695939 201102275 640775839 143714531 788355421 142459987 559279670 186440079 516639476 892785871 133632711 287320346 669289395 864457963 879588296 147236740 77331524 811959318 237163948 617054353 920100059 400483110 698881327 31600008 523007784 50456079 608433761 299926076 457734832 362194939 890513369 985018160 879990352 304498450 425186440 1014831866 779163635 374049518 32808218 452494265 59799479 909893443 954275294 164530181 309255523 250126498 397921851 494924453 998036972 682554985 685188704 53656361 605898105 167916408 530805000 786940761 792351265 310603600 265031526 505308609 539161558 147191755 213699725 888595253 756378315 957156960 587900211 1029269624 239973137 975104504 878093031 142817668 970596913 776500871 960393830 978094079 1010398474 623738005 319972454 376497319 728826087 373446836 645058649 681912470 680787398 810255060 316712899 75047097 781573790 104046300 155707705 135739588 432188062 634594234 733408093 83495814 644639549 1043828048 277825515 692031309 449177843 650087484 958567597 1055719132 331806838 798908427 1011078894 617332994 890823749 25468495 311234776 785211450 757794211 294356279 824236101 670491392 875734635 1039615227 199088147 413674540 701670560 284271378 85178899 328250322 886221526 348484708 270994964 319367278 276245669 955110054 588449727 143102916 1006254465 311062036 681689812 296866960 485610716 264025560 96377520 945822590 590669658 469258227 237071053 855011345 572734627 899804129 907414304 317466330 700699812 437144871 731007265 852935090 807770987 458619101 311654301 225340838 16072996 898238317 300618465 286378679 964135697 98377405 787813824 553703047 433329112 997012125 859425871 975530739 453931105 757255082 524130369 427403124 700809542 958704433 953486018 92324467 209008780 989340205 619037916 700826086 456115483 664018153 349036599 844855843 295479435 869680377 180971729 940033648 479356277 498266000 631248602 36663334 534766204 1034744843 319706355 672538614 902267159 807476102 456069847 281635168 714967780 335175527 321116432 1054766152 493104799 310628537 180379904 550014666 353799950 270015021 674103751 70906303 95694738 507716824 143950224 388890148 71398446 640943200 185135174 169865972 172878381 830784417 491047742 284921732 305849186 37681298 875696307 706096331 461787992 605056813 134517067 90274406 212037081 650050015 52859828 447199341 1007554290 546823286 644346710 1020625177 620159563 259855973 50958065 303006108 537612765 926169739 202994410 325612946 14374083 917673139 975666863 650901779 68143251 337096674 465033833 1057116088 478236838 12463915 427112711 563207657 127269832 698304061 802909970 818828676 645554517 203542424 1011941435 173918641 333964508 341232447 266372626 50243735 432917253 895246000 999418669 951604360 937249995 465107585 39748779 892837379 924680031 712964423 618302837 68009166 114772755 604791885 144624276 152077704 931208577 71172128 899524916 438136012 204005769 146870375 595043720 82987336 494939602 265637396 17463953 445757231 9930255 488158599 582516752 283800071 85624324 681463006 498118424 671271161 960455297 335584588 910020592 130107733 198257297 75106275 187289840 945653214 73072045 615017382 719692688 198453513 1002586668 117837869 518972016 304375155 669858432 935497771 109815985 554833062 1013278295 339255171 882058777 617106320 126872595 953113698 694202073 313615706 99878389 856741950 754446417 939112020 428897962 654554258 1007572065 399092075 607224497 453015954 1029294438 513168712 177490967 1025069037 707729687 455269612 1071019967 343853358 84321521 702864955 911129032 485752497 812959600 734473892 286530326 306038342 968743025 755178494 830023554 786309707 670707449 118389845 467767386 695065159 486479474 51275895 1054422324 509120023 1061443174 393330017 519235339 120879336 1039563264 971329452 526163055 695340927 174058911 32831396 550547100 120575638 352845872 169548601 90635324 924987558 582844935 1045661519 943454488 293345447 1016094891 1060861177 683766428 390594713 465562360 236051709 409069558 494166395 1070600526 329399833 944706481 880344685 988577488 17014957 233390317 627590087 28015417 753084619 399867390 1003178442 346598562 982286153 144005519 441521659 25639994 315534202 492728354 462061575 483941535 147055473 573275291 200882968 46311781 813021387 295772928 510357877 483834441 731012268 1040349361 163007661 1008164514 961954551 592967418 586323815 677841496 27696825 1070067160 488480226 905207403 226525508 522602215 160953069 622015290 463494777 270894456 510830024 154278540 223938506 611486676 471550255 794601160 629075841 447586297 258255093 703669506 307257898 1025134048 549370859 275860035 923182323 960214826 441892869 621021878 644223579 835921951 921333191 354505450 541923052 151998953 751861210 712548168 549140583 368309917 409997961 763416869 120967623 676592229 922986348 160730729 475711075 767540315 650839026 662547592 751733796 111921454 668160802 888179309 1008620273 221271049 485688084 1010063400 813141384 738504576 1014751547 509489098 349732172 536807509 203728008 10553492 798948536 47130132 971606654 379589573 415900187 861109103 1060201146 759785644 918494501 16288049 733001901 567907612 969724914 311391374 828044239 101724910 170656043 521789345 744556526 935026485 213782568 746052567 360484046 345181250 947699189 718394936 32179121 377684195 259800083 762860628 714165607 858851960 919274652 294889611 238177981 993849817 198259841 500466657 604487133 329503216 17080690 231367860 951442677 258945815 591435416 676655923 27582391 437557295 637899449 809674607 20894501 816845797 675105006 351713318 1053347235 1032832947 741842110 108581407 7444467 361391095 939327468 419871813 963904732 449162992 331918169 936609991 939307052 358949678 54222638 1051469435 737717461 864600663 819737175 301081281 266951808 997814052 711346104 408591527 272194665 45646663 994862429 514681831 319313385 937471632 727991069 239184803 175582568 674867061 969664649 1026091822 54939786 481629145 230326635 151343951 170548404 611875758 857219772 1069134162 550069643 188383304 209127006 413017076 904290872 467633140 434674900 805077842 3337406 236385779 399826352 857732367 827748901 118886281 590151044 9375254 964713053 31024061 547314624 30587249 929674535 340982848 343960612 455915900 159094176 441548940 592695387 637083486 137085619 483967555 303584229 329281032 15237822 810266230 112040233 91158657 911545855 8571163 733647956 819645513 484553152 564412417 283406662 1069988758 94574243 507357870 339732281 759453889 409502505 424951078 184067564 960109733 850578005 464645508 1066306383 734883555 611940110 954698691 671241508 515838417 204847163 543117126 152114050 827894155 25029039 668840574 276783512 965036888 55452462 842831636 404034464 1008692428 33950951 469708686 622316649 247747179 272679650 366146984 758578706 164390274 699130975 432651757 369458700 807553993 470273982 516133898 808323096 422737353 41398568 919103813 169960333 46899119 655215069 512226803 473993578 885200519 792602681 844121581 992975873 282713879 574072074 667351591 813939852 258852270 345696977 87068537 1053649217 365031855 239206497 250813306 326036048 323463259 753451513 753417295 998932035 624994435 758910372 523884884 445901202 602466238 315004162 818693943 86718392 672295576 413448774 1038656417 257084991 3670345 948830258 397602809 27060083 69450841 995834292 1008882869 904518327 321257783 266187789 856048423 566232476 571121152 983101358 386352243 623658574 415476014 324518422 459417265 743575698 645731809 831449508 318341887 872957844 753740708 482369435 183621046 663282883 766226682 262731239 433049281 832559087 192600950 116023523 62132832 444720518 460904795 937760525 900271689 49324303 519670390 399568780 714448804 724296244 760121403 156647257 41897062 102585970 25387000 895216688 502625403 961525394 426646342 1049056629 693992351 339370371 644011628 913874208 489020331 1058774481 315235454 158387417 887905029 993065723 51214883 380428557 516977290 141521553 200214214 318963084 762053632 389646548 216597066 798061299 617160681 131291793 498227616 292984357 980402418 171038027 284593678 909844052 985126251 831354885 90454828 616049055 622151365 68292994 291648351 590514623 597211268 695220539 3452355 375888995 586536275 516699022 472010712 822969887 300990633 895699781 550450308 136199513 309189764 579225461 608654935 447537180 842391417 615858575 656273089 654607967 909374302 1025226307 952184310 645658496 680745778 562623768 195340580 276845228 144314924 29252012 936216176 185645615 209906179 896785991 360881848 1011001311 28502620 1051488947 96773584 403810541 777119719 304954051 730938937 322076125 902769845 774116056 692218789 978923926 27007762 318358060 29737288 877272014 617371336 516143535 833283356 764994086 665736189 16928346 933327290 377280926 192123810 591083766 874929522 16129946 1051142803 813804340 204653857 946789841 781828203 225281618 717706191 35520083 829785178 500700105 105902084 586423987 1015400944 939214350 987506827 847789997 852931955 883736926 539566395 391027934 644453905 399797059 503525054 717873215 30242986 687622573 23382987 316238418 550329882 867078986 516392185 715200363 743019814 816528380 929502581 607984448 267822720 689900579 881512142 472639779 11535587 448897344 107959855 577964698 262838300 242486045 748835747 520765516 73397221 217933885 505170452 1004817377 341277575 451821334 640998994 697136568 836826455 725183291 809533927 13327585 926154659 296916209 964816399 431421554 1028900527 896358528 80840714 573690721 878301431 597177023 1047445648 949030227 109811834 1049619500 81430333 314113179 54741567 601734642 230375537 99497024 435392116 649539332 6454635 942278943 190750487 1049126604 176177201 94427792 151603747 60879357 334943593 105241156 329841534 333332156 983417144 374003003 739130260 673588987 5304105 370252042 951198791 1035431732 168085384 132556132 629235079 802148533 666082857 885050750 1019992031 684944258 355791031 765863646 392467712 225996437 275324816 189465402 888305372 289454595 224218025 203741004 245193882 611475498 566141944 527434078 852040191 919944334 53702374 469983297 723341463 566691077 671967832 811625180 755237707 597398499 500619692 221225458 568886406 624479432 737756127 649250793 501789534 878516111 840481419 110659472 949600102 600999781 875046070 516458094 195156619 949042259 473334281 684939494 579113695 909479081 1010970998 1039826718 465347854 132256840 617444165 693800379 674785918 1069230945 766242121 882487170 904503005 914316857 866905473 733992619 58592987 435570457 124382097 850954693 159317318 1015858252 600113359 936298813 63085623 864645091 40075170 248905729 957781439 483973988 9731803 32354144 278366320 757790313 477754902 142386276 402615759 1021063186 242314360 126027162 778314342 657828968 915918858 784595788 910608295 619858509 304385970 858266391 447099580 188745266 539192835 874212472 872390492 383650234 399009481 952300365 741636847 942647179 2008331 73778431 77949670 874180554 806768604 729875136 678923060 424950721 330410646 825106285 859349185 745198384 709527781 665790689 965279426 738064716 379910748 322219532 199415413 599250656 761470395 362849295 1052490108 621325054 319524672 993160233 473391946 777393504 1063792534 255299138 1072995186 156818637 717578060 131939167 961310409 455641258 197875933 888160961 255016254 24925388 871739529 942430253 44286319 952907540 796781691 548042740 955039514 106265019 743658041 47518980 792873140 165761765 27753487 836512581 239586614 606127603 597814905 1061645263 457927399 777470997 466771815 1023100425 212236813 666567074 136432485 265221963 257189 55655730 37802546 928347310 96199 273179125 726811907 516362802 845841604 278650432 965136572 49841365 29604027 979016522 442823995 108332323 141879608 519502142 1065496488 703919962 245123326 189538407 361868107 28076507 558438710 914367019 299768199 441037415 169806571 928226009 1041563582 1073283990 963097925 162001347 94239113 1052498997 1052419170 846050176 560743110 167845305 196837817 654176583 166324274 630216717 1061596696 843991588 527228771 437868791 127767522 902776680 526119325 531949074 740664304 135550821 636424750 413915664 846006178 733283176 438810794 862567983 618403233 436250015 370767212 303966486 216330239 168968512 299632753 72137392 461333117 793644468 1015624887 971319031 1002283438 719213396 1059025724 634654577 943585028 779582977 166514194 920110019 572379478 309777406 1059914817 19033063 539498190 503762090 543022274 475731762 770964344 704457895 46362456 424872478 435570352 342407191 367338819 751338920 910326208 1008694921 552254678 1068605341 754185514 1012800924 744738783 918402364 434615122 532809449 387698104 905353368 894924042 761825037 972694852 96534480 946119647 585676291 553013554 469148113 498832193 747228174 917477761 605446277 767292942 541545554 263930095 67557303 173436744 1014425166 874615149 218097712 512947574 895647708 951916545 132479205 292037531 95249979 539923692 690818451 449365313 255758690 939868731 852929629 295251863 964076054 537785088 1060389228 628520037 213201210 513920302 1070192475 972635033 325284979 388058200 934116899 263502852 1038455248 38007924 667483482 303429994 311191366 409279595 748494844 490175440 708112154 703286103 336794647 710821452 1061577192 203789466 347037913 1061229664 614032452 477187059 242929849 499707937 504703229 1044575010 978425349 257404945 750592191 29747907 426043724 272981886 990437834 708213455 804268289 162583419 388079002 816669287 941964222 915608584 56484519 964726408 427332316 448666051 906756525 628032969 945628037 54297927 436546340 715699092 794307288 696816389 339586228 11934662 633304699 403101570 636080365 139069272 350556369 674718099 273614209 370942743 557904946 325854663 503376633 552602797 1000067873 286432646 142462659 491319307 777326117 708015052 952043076 517406452 99194903 603165238 447129904 916561884 774885450 988040172 54034860 999135904 3851098 324304299 172659121 594281270 666895230 968832838 218037044 894999723 674253563 434770030 505796087 726407868 702686364 571246402 656433262 464964528 586735891 894326481 569027053 1022042613 735451314 729295166 640551741 908190237 602973359 34168214 630250543 567048024 819757716 428756908 371275816 680900120 263818429 326536729 116466379 760407446 396219277 436830904 314879997 1038515326 325870852 562071830 151955152 351517122 815915726 85778527 891960187 520010360 138251542 637378574 952485783 852282448 785596572 580569568 80802528 812016673 169733062 943721731 1060876846 868186944 993778994 486921625 289198914 692861279 124702262 935899503 801700758 740647166 738908329 461960016 954728546 139473293 637101694 60022954 491897838 361214744 199525329 717665631 563121496 766623925 87367100 447235154 969791255 965797175 317799739 2099485 198394754 573243013 416266230 830567555 201772153 356610988 108864212 722564702 803830312 933293377 279873212 643318741 936488121 935090110 190157430 787320969 93842 237109105 507219564 393386484 586006376 310602738 513935957 854399775 957022246 41583042 398149214 726031297 676404497 317891487 182031929 456655927 433710353 85009415 37313525 873568753 954018269 444562104 1044155756 1028995310 570842694 162074131 455992176 946447808 244386669 91280499 107576024 960737175 1012110310 532982015 634332951 759097357 462253679 920551490 134179753 560620230 830788188 229965190 966089430 662635430 829824601 493464083 967570361 712741580 881626083 496085419 544736621 824934607 25042361 876356768 27796928 928209657 938776392 1071178628 94412104 1047162323 489881306 708822922 1009484945 186427206 111880188 1059652899 398313941 524585581 384648582 763236145 711162841 585551507 455934608 732226199 103379106 785587936 181784976 319200883 790978627 59859995 48801129 118491861 323464173 189737967 67316765 291125629 188496397 370527838 312641919 363993476 333513253 462600371 463788344 836406487 498511196 676663240 930120124 981319537 379159285 458032545 569187691 1071639011 66821888 102776304 1020546143 544356774 1054071922 234037568 961489517 831716263 518602257 289327834 322092601 961491926 316229617 394993335 989124408 875659631 111123724 479404396 1036879749 42947847 819923750 720751430 282331593 842701937 971084904 739838418 858520976 255695749 755015561 911707045 988357656 498499994 92832506 318247449 1052413770 494622649 128931788 467319213 436076039 441874826 684091547 768751977 1037449909 352862261 278649985 175501707 289166038 843300831 507775947 862564930 701457642 851953970 392107802 478884302 265673420 516705995 434221422 1037652683 753273719 225148860 173459340 1055528415 166446989 1019433862 373861273 1029218069 272711421 64933409 280126644 443859750 452486656 173596779 357989758 857152628 293601261 624693797 948424692 353444657 612615133 729999825 278756468 92174447 341090477 94910241 116889579 1071946593 839139776 727402814 164405709 682852090 232020255 379170725 456075412 29851986 456024159 450006283 161252369 699592759 189875769 350880095 16582601 145447412 1060839319 946767591 795408367 438453342 457422198 566502394 294590511 215173832 824675577 540643383 709831962 734866088 440398948 425097187 655391999 847458340 895741806 367570435 867408700 378375532 579734340 73163383 385019961 653755753 427429163 1018364622 589766197 240953278 321596053 641500385 748552660 490891025 157425503 343331848 419811923 1003168894 1047721831 204149413 1005331716 93729574 736656520 68705214 808638384 758968955 1069531995 199516216 811740562 165842581 817233456 981690028 107129717 883577228 736043638 855861446 429681807 507200620 643513773 107798385 156243741 121696807 233091316 893597783 129705875 562460381 898268169 885782910 977214486 627027012 210454973 549113351 1043780143 161126122 650578013 991204415 569748171 236203630 390075239 849568079 563368256 679365160 1028816637 73632129 344827786 556297962 1055229976 113969959 575661938 687909861 831527614 25505414 1035869442 742118898 894892944 782585131 304124333 598511057 453402241 25728093 270442358 863532871 833985100 797109525 183054277 17754099 242808809 299801752 526393418 952189493 130078206 535302128 31305548 73378871 5574149 346066143 357704757 825809785 691059888 957626464 542072656 314833669 932207485 446738038 341458368 588443979 255594469 400677882 479080336 485186414 792221024 775051260 81386732 692337974 513317385 281721779 843434598 924983554 789454627 970432495 477863527 1019550054 896806054 175535643 780704628 828486750 592295748 853020605 415810738 805017821 614873987 887147952 262249245 175325956 546742140 598209779 721303294 1046610443 416820505 979442279 25956644 353366326 1047838535 553966692 611188885 306099275 506180019 82308346 706573664 432244817 115979898 960419101 354443308 397541858 958269970 714308238 888881844 1016764817 1008789375 74485732 484920003 485310086 599709594 262241699 702970316 23246785 355021034 356886898 115317915 651167590 502404523 42845139 246216303 765622089 838613398 401766134 132635231 339703546 940999191 989166724 894327297 264934430 127303032 732751578 22305301 701060443 812328718 448511855 768709844 996365601 156543132 929005018 158532120 30631372 76882125 921396641 65365028 1033836605 28925704 589389947 1057798194 752205659 19436758 431972487 1006127388 422824071 485532532 1057210144 399827681 1014895379 236109449 304619423 739866956 812981938 745753796 1016577357 741245252 909347451 609930373 44235191 862036231 408292488 830510740 192148193 356031581 1045690482 1043417230 787302518 117212460 33111042 466844464 550028300 833553888 230427652 586350501 645052809 524640066 625112316 328955039 530490871 220120287 795481969 361911162 72307993 469539315 758440542 656317523 947937895 677164001 621970050 147421371 54190142 973591150 134813343 378451510 14025590 341970467 171546043 736833682 94311577 404306756 430036620 503782572 513608404 875756376 756738303 575638998 336656024 141159438 912008327 884284109 367729037 650158799 601477142 663556168 672366681 362648219 143601975 333424852 358790907 573016971 994366099 754638844 137947721 493715041 287839969 1021196878 91281057 113239304 94524406 771971755 598067396 984954728 861541099 696363437 626601541 818947897 962740275 257313329 224467165 416480119 299463522 828281955 207938857 647145224 773023121 448690252 1071245724 671025438 728569735 1037717382 259939728 1005352699 93863344 780359667 597224864 995433059 1005531676 879866979 848332478 966992552 736916978 781039854 692461897 987270985 473660485 182501736 875044874 174487497 838285638 722023234 836229672 980016693 137803694 297910353 613393911 141846310 472356657 728324923 697781618 125657907 651460433 126910234 895526396 571497202 130794090 65170323 1028102116 911053596 247449495 299613587 71846658 474597031 897295169 788216473 203001876 242130947 894040360 427343441 495051099 978532464 912052074 323643998 388269374 1065936445 379275179 548697193 933478202 94271161 172239735 407105787 532268194 553234063 470720549 629465566 904318296 931350326 629994301 592896011 712162752 446382262 817236120 980541279 565931797 330837745 851859837 274479768 593244653 237753878 943925497 529686001 907165140 725872726 577924247 707237006 1017978396 895290278 616983922 799460499 507277946 196886359 807404184 909454281 39061442 126733120 916096557 73115092 102107001 940992121 361523180 876002946 665881350 468481370 608594119 66202332 665840190 489130940 585662450 133711424 990021675 973275488 11083783 491231289 366080136 879839179 60444913 732803604 347604562 380503930 906476139 290438702 109470706 51950316 273715047 753900046 1001711563 660337755 506261666 283772053 1025417284 514740760 721096826 987425945 914121193 496292830 1035354844 434079438 864684980 635032562 590498152 977337002 231391384 624392585 803513930 649467383 752443906 838772103 903149723 651210643 258128177 359013380 44268328 992603215 260550029 90334820 721515650 1050079905 117190170 466659059 431863583 447695798 33650540 971705980 9060827 808518500 893252447 102359224 421418028 705899309 820515426 39123223 201373212 101630760 911582034 351206626 951182762 608417113 382680192 1045163227 555154817 343925114 434524497 426667945 215926920 1027863804 150175778 33687884 347163868 994520243 594326605 1049638847 816683816 249823884 128725946 741002576 983493731 498753362 86768299 237816295 167755504 433014197 564113368 602359098 126042609 505024505 229730922 232127603 527011329 571561688 836848842 1043918293 342723327 886276581 537696676 152506321 245584786 193269371 286439487 937923557 652574496 811088915 60115759 967039511 563899381 873103361 400411338 415181874 715789096 751346766 390324961 1064847271 272516898 799807042 455125259 1071246719 488849829 150864524 130385954 42532418 89612052 479997672 1035640508 503763156 556421060 64516629 384817039 111359173 398091216 478813873 284197384 229812755 795991258 102694770 737755929 404439628 513023149 107736550 834932394 247175289 437306126 960386208 585406929 120460204 310029800 857354877 464842263 239992529 590427522 402337033 635076619 98756909 18156380 831512523 507135055 56935451 784667136 1039979891 585064536 19624889 29890590 86134553 586728156 945548096 930296831 444965170 536200510 565074958 370887991 325797177 789347193 820707409 434182129 856334241 34972154 1007339395 943377870 200206025 202014296 917550402 916688024 744771221 875084307 745727246 774369614 917157580 607352934 144580545 518747786 844887135 272267063 592383736 385083296 84698858 956410395 722601154 318511958 893442341 786430207 286207179 851704350 100898854 849751830 830644127 880927133 541371928 935441541 202701960 659748280 532324606 510355312 882872261 1057684125 529978101 41401237 699249730 681372288 1037181683 407117405 740796380 751075937 142548723 471490356 116636143 281707171 706920146 633960695 808348096 58484370 539960345 873732171 405029337 156256028 756804215 356668747 428779699 41128613 840988776 107090021 191604832 424382136 812026217 848140052 931537899 256895317 748441719 1018737499 427817967 173643816 38790486 908994820 599321032 235788770 169446449 957103883 313826360 64628999 489897897 998640808 116638060 524686246 485876075 349221082 186674440 491415323 936939810 660836091 579846589 149546245 881152444 30673841 640945401 495438155 951517232 491356902 8301016 375730032 645743775 1000420997 467749948 836768970 787500814 970090612 421787630 216345397 358139682 801634677 267179469 778310038 820819930 173089718 847210955 681427111 826168339 567578410 207714386 225980754 659027464 56083703 63807591 456526829 464278411 934124472 932030799 856294907 814430361 180602211 1005555173 1054454917 19123461 883457746 130565542 773907701 577415009 796943898 821767932 847060062 446728235 663336690 711088223 17735209 484463962 1001658219 840149053 392652660 878784101 929691534 77125987 341202366 133739033 650550174 5037130 460676409 247590112 900628149 718847102 648617417 134008236 541047507 537528925 481882777 1036712818 898793806 921584646 142851105 65826977 604623968 987322816 20417466 234037435 62517886 164285431 289101798 1019153527 89818326 388646200 789140953 141222235 973230949 646690426 759983974 138944726 314341425 265123568 311899378 531396744 192089995 517454943 231872783 127981159 152537523 953366154 174421531 22714304 1006126117 572266621 355163267 96254586 548380700 156930521 637812689 658387932 842041262 998008018 403678793 654864153 147187920 49652781 515687210 371507428 500300398 863645520 733441695 81055389 81318603 483561138 452589393 440620910 440288327 892064900 267331022 466850473 774424771 604295127 276629657 1064193849 130248537 466931138 365786419 927461868 526486271 560208215 1027762157 832521954 948277864 414337136 577773615 326156443 907081268 999062398 801525753 968961535 539751767 1052873063 845315871 368274041 1004069115 816239104 75900267 581189228 171342171 981869208 920210915 1071932292 226171167 765085293 660865766 662387795 446056673 845102163 538666894 1003302906 265486660 444977031 1060001144 578780331 705370992 565621073 71534918 508719877 165442009 206206507 80065151 689827357 129688244 374577819 50763591 64278338 953198542 320604993 365918080 848584466 1032182667 1010926993 888562237 84593588 730847204 946769859 4082650 344355258 66548281 850399186 972437054 941284992 657014953 112990322 490770628 57472069 228219117 654381204 357904988 340363476 268295451 154890370 170709131 562975758 532807632 598004944 715970 297199178 873706530 1063752389 886002039 928042597 630122124 303619347 648210797 553843868 162475579 27541835 73342281 449307168 190673664 1041546434 767395669 102483340 805927654 192354612 631748498 734198305 1026655443 445112750 844320063 591214950 382118021 594090595 998356983 18827195 896300944 326982872 832263328 938041703 436055775 481303711 361719418 831255566 829946508 979308806 152504327 1006852665 257042151 242599080 47329773 685353742 249651106 794159046 14522487 414916756 408813128 518096665 496977769 251468333 742272474 937226506 596639376 905648982 740032808 543914845 20938428 801923036 435781753 139751927 983841443 561787444 355784554 352576485 597817915 868060139 116653674 722128386 186726344 238340200 497672239 855236700 322955689 64012462 1014359816 102379170 443269525 610818098 717850166 953134927 799543503 100462065 774211221 608186559 374893442 102198170 715975683 737058263 369941244 260401566 105426062 538960458 400822002 87074291 88197851 924511460 179971641 796244648 273341307 145510461 650218318 174876790 834296378 337024006 1041246059 681552504 852157567 101380741 300459263 599447131 647115360 810767016 12180702 735932837 441424334 510530592 84389458 1003137386 689238850 338887922 662555595 434795950 570077982 448467277 37720182 393863288 76763809 690555715 673533582 980203146 490820590 420001400 189223249 760371623 799077473 1073592323 248191525 800475253 979468442 790214324 494139899 14091327 158227111 353801253 463161532 598299540 912639432 1010233450 566047156 987171943 417932292 1011217202 1010218823 231277335 542956792 1019632016 1023001038 645942631 833299747 75174734 666432680 923493627 137591433 323818857 20902874 315765588 509646623 304258702 51780362 1011270610 724476913 712718427 176019196 571958839 514569837 568716351 147797694 441614926 465449078 822890711 657500012 507479873 223818746 82629859 426498558 227505870 184769909 282410746 617767178 743125153 559463597 899089523 286154886 442168218 578496465 302765310 1066805892 790599970 677407293 937613824 1004286034 837252951 156052628 842775016 612317262 819611368 548408077 970118741 39777071 236744532 1053157466 86376104 382519774 523651273 502458505 356963888 203958513 806064695 767428384 43629897 956393987 512272041 856717200 83997522 404259675 979059569 506007884 790824163 58737468 837280747 578514039 584621423 637948237 956623030 911798747 740974591 582019804 1068213137 158539319 9272730 747243446 479088159 1027960516 1013011205 236502995 901706787 834787451 14498186 170885753 866503734 970849182 748498994 822871080 803395752 221122772 269218835 991136600 28429558 420817266 48376524 169521731 80202920 180415388 517629783 602666985 244459078 267156699 552422276 396182993 589592236 517738093 145879737 84419741 238050325 449751811 845609070 603244642 672286348 1045700041 429684131 638703287 912006214 447829121 981782268 119617075 881297348 532019980 496565188 1021696852 249446055 524715245 669718861 667519180 571801360 104585111 667706258 774578836 26356546 983800104 956042049 133116160 691395605 301334300 485423058 720647942 776336808 449543820 300291038 392798045 978277984 813396678 720609280 832849840 962822222 149907006 835127903 5264282 961610237 339215858 619070424 392628082 436744933 309570795 969646505 387362918 943958102 463917820 284253030 182540095 559597796 560525951 161589170 951280560 581944219 735154734 283699443 207075766 629521263 95871831 1010022090 58371108 668715404 862499650 620596195 965751302 721529923 225766037 64420850 550380660 601730225 988833559 762170154 220165047 552044231 318408142 748109272 791675570 366695720 432395982 159599844 49167619 600447886 664337536 148299380 612240157 110551498 984774822 634717692 1055054992 297927426 633717580 397762704 168030772 293286390 359229192 986101339 618639949 69590319 899285917 494400856 464934984 631468482 503261261 241436027 871844369 1057018223 1031937066 516141678 113487259 212115704 247524946 467752804 1014145973 703191818 64997443 900297953 289040021 861033341 607921415 149875335 36928114 278012193 165738916 1062316846 319471702 768608101 240013972 43442449 1003954315 628296695 221779878 510930226 379101968 850452537 477217840 776604136 868171284 578997289 811131707 513693815 938442757 391623179 172523574 56212917 28466389 412749710 235467759 42883394 559787943 107558926 557082721 625593297 613579130 707257235 670367898 532919972 998130499 834720802 76959001 215275185 444006685 477515572 34609581 159284248 574349892 411949027 161301387 158184968 265146507 92023187 1025723721 478456363 489814970 781313523 443508974 1034303107 175201970 1002960736 456500838 936823374 167547241 344095514 824860883 277338803 275104730 864832309 497005466 417541551 596016004 401943046 116622334 372608611 796362897 955684355 8562513 115829593 228584853 543490929 269352159 912123925 356685443 248409412 696001198 673274130 33348457 808293518 113057714 108997957 380476576 492737017 825699664 38701258 41659662 147370287 758402897 81757306 124950600 401790973 370100113 536738157 670043024 698288734 624923525 575304268 96173679 25893969 106456111 224518029 450785998 1070058647 244205945 877150355 958767239 725012175 416084373 416813150 417672054 464606594 813548272 229681472 363709208 374922832 608767190 1061647764 813875938 420598280 1062451771 129143456 809015547 280513547 914227155 339188622 913218462 177749038 701621128 423629732 689988346 605817547 934414235 950997136 487902591 829747099 87166181 96590994 154047618 162489233 100465584 413835770 812973643 218976988 1008803871 544710074 83688910 426608322 854606301 131704034 220771642 885964306 482081506 321415507 286781445 130494912 405387919 435044738 937746105 697152825 864756883 712413658 193785421 1044642664 899354312 564591789 390033832 956818145 127853089 532925070 891362836 75232348 135631338 414997174 577178941 1034078653 379040470 781761837 281691443 193185936 551504468 696191062 213405627 319077242 435724734 625700425 115404862 318601106 683740041 852715548 1063842003 404135577 788776211 687667043 485772952 1016022323 388421358 855569300 692827943 688320603 428432027 767848044 1028388821 379009104 824414976 693310844 1041565417 893476952 63151976 934625494 376363820 1021830041 96372221 123718430 1050842105 558295060 31345968 898289851 461438177 124746758 541311286 944330190 1043089344 627929231 359169123 932685100 47954607 1070220812 606298239 758508814 746265826 597607231 79787067 750496901 166576870 138100431 215467258 70984738 919346062 824921487 1018304448 3402075 1037274180 1047947788 678711821 483201947 313916459 276834365 969580090 656878727 737681710 487634210 678462263 293248099 155843270 856316764 717266190 286199555 391775032 669183433 560175847 23712714 223912784 967199069 577173214 409159653 827498511 535330174 775069377 197856177 363649505 405176911 16305607 552247269 699960702 206672480 708405223 847202452 995018053 352456104 955315093 149375316 679425703 890107475 311645492 244884391 243134699 903179800 455721740 505243155 150688760 864537275 424207964 748051932 172797993 690394936 610509910 964830272 180718060 384580809 925546479 170206032 940446395 116338012 230527203 485527959 1002110004 70405791 432737518 24685506 579894903 275843732 154661541 284817045 506645545 519829078 146529818 635188190 304268797 604501273 178717064 1024245626 310217689 961695482 735395226 54891408 901495639 509406924 274198702 952857969 231085308 1050301858 678920193 182105985 983493179 287062864 945719200 1021855327 135263639 241565910 34737259 450385657 593679759 386361479 722580037 993058383 800602760 483255025 953336693 782910445 949861163 157726915 449784220 337533609 899836270 698765766 57464726 266184708 776109355 87805237 780944808 45745915 122170857 684804759 612334110 517582464 974420534 23861705 731901460 1000753096 949056443 508028147 15698926 1033600413 752813551 785284468 241351588 456010346 974737227 89715946 672196976 475312829 1028344257 335327609 936283705 754583289 1037862444 215975049 123130512 766224599 772328499 423784735 400486226 681990698 198881803 657377859 1038160910 1005205380 935535557 362592477 189652964 63479526 186793371 741090176 35390825 862222023 476486896 772885978 134378736 750134426 548485987 126804676 956328759 557822745 654221298 666993769 63476134 442686161 1033198604 777745940 66306929 716208787 409206375 143125924 906898330 295943059 332698870 445477871 368330704 160878500 293364298 143180450 900423376 170278170 1023238221 619198135 944293566 231195365 592049847 887693602 582326141 201949869 937824783 311122838 617060637 1052030512 1055918520 924570006 498382191 218728749 410725523 710847418 633086958 418470189 839661682 504543878 489101734 606003443 960554534 924545061 972013020 963326207 944592228 554919886 822541011 208781640 1031472374 59721177 424888971 623780220 124228080 694326487 53913613 140064590 359579963 621005763 436317140 920397653 511776106 171179041 395441641 577060534 738678382 786836407 411541148 27809533 864220097 224949850 935881560 1001657862 787129634 456370787 621189877 947679289 851748643 995034512 543773945 576389109 421058200 415080880 691558301 516503645 674072429 454151613 351455780 593528650 41360077 504220118 153060385 228653183 702263950 765168344 36326875 374380557 639499881 217806954 924683406 18521997 473545848 513198667 627476678 80158324 1043637120 909305519 284880013 690059364 576178670 136997921 251621416 918231016 732654646 916623396 535651365 874817654 624164377 644473114 231036381 477051613 444710441 405372825 977471716 566874470 707244402 601750441 441579762 484888749 687171358 148944235 1011320487 174666754 588962962 154933791 822721287 465916075 434617621 28050397 1039905230 899502743 927574475 615076586 126214840 429319368 985913300 518725051 791477869 1007698577 329632917 749500753 302440614 707752868 437990335 147908141 862752854 293547686 50507647 967741767 911185604 130896241 1022090844 610289028 82089349 856549860 767264468 784033254 901814261 803890103 1031119325 155280901 598205250 825154874 722413558 187081139 662508494 732874903 541327009 376163622 875723887 489056662 2203725 507682796 656924739 596429599 870833705 571661935 348330300 830153876 426147421 1059157823 943909172 550785714 63419549 643719975 771818880 190540928 44591792 307678180 763222956 224859109 187028246 15136032 865824250 240986466 182548010 1049853233 656781359 1036573738 914223872 31182133 4240737 753672033 803792137 850171521 367926554 610148497 827430732 601737953 353135742 107864891 105557594 147435287 562088101 598605498 948079981 233421128 833334403 647568679 907089070 769461902 945837846 568579896 572385485 818547386 513575060 348996012 236654275 403935477 293492494 132553070 185487733 479784746 604428497 740949599 366527035 886668876 114249326 253200956 401333238 571671398 243280840 721161072 950694773 735317473 706985456 743680039 773222237 277359669 72888020 1042344334 792651453 228678117 96615704 762050936 500237453 748261591 405845827 281152692 95632642 660925311 956982816 217380782 119722015 293634120 815194913 869688372 1025594854 312041045 715970637 232127367 847411220 797895451 69791373 606414274 89240471 432726856 383670858 309434515 520277064 912580360 727854747 116751176 39471908 412791685 262196361 538490621 415639315 790184021 901148399 1006292738 587306833 233688970 174138275 1035347581 981913515 518183557 965689898 609632501 93332234 393864048 124606644 552678511 90135901 967259010 55711298 187506750 261814036 197701811 152645463 843085395 755136061 694015172 921367665 198965035 102987400 344393215 76003598 883907621 71672237 684989646 840556928 551560807 781418625 47513274 513698369 204869469 163972094 222142611 92645240 92898483 469927693 810147386 208296068 318218174 750536002 890697166 350554725 397913101 923362972 622745064 71916469 83597565 1032419888 369522773 963053143 975329745 751096048 936549622 49759913 1029358704 934950068 980428507 106780467 299152363 672155695 955019459 445760919 611244101 1070417181 572658772 99125429 847039434 604693827 778691485 561727782 640997199 421030863 727839832 661852399 804371751 324379540 417359902 145640629 988135878 835971648 788062632 661658138 1050719732 593569947 188852462 862360611 629604442 331485310 124411347 687220550 78191230 173725951 1027792834 575161663 676050903 904365851 499498419 628586212 487815743 425836731 833127685 961484098 414915400 969561524 531973777 1058684124 687979108 877236767 522299226 464504572 759901231 924877663 306860173 1029399285 815833612 784613443 1065911123 864659322 379791264 571331358 996621193 65134584 22174380 272410046 370860852 1006283327 732980498 1035947541 126133390 152637245 570300268 332777240 909000767 977472367 652000520 843623914 811063729 699746079 955011421 498780600 886993788 994657705 95032936 1045373260 437852953 572820446 576814758 337833588 544928499 598892712 269902245 535874086 246699126 771217251 54794737 820859694 693584313 920409272 212835881 750824329 37115363 1070665721 694091986 958903709 87919534 292748261 277859123 216318993 955731990 248751086 887636497 383868281 946070446 901290046 193247254 587586127 182101112 33180472 220557864 984796605 832694908 997157705 23232564 1017960828 257530694 236710356 89681445 835782689 211239337 939768670 417172362 625186507 729214170 73468039 520616969 312239909 698097892 912262443 517323399 1040752794 860506694 303905529 12222900 595078917 852601333 259106322 330324322 247661859 717119244 689289702 365175248 961468838 742011003 729631503 774563002 355905400 548919572 445749785 291368413 149205382 74001224 426321032 184497871 791154990 485331877 1065732707 133160349 1025570952 413598527 945479493 412162462 996230228 669455032 214750681 237970175 807725865 1057100013 359771913 473335077 343698857 485395071 662634571 1072018445 139819813 537552345 389140512 490631676 861662921 399147821 102291625 122785180 939406651 154907551 575764334 344702212 898373115 584701318 62524695 63179041 968878252 29707069 437605694 341256247 445563352 812307238 43892605 393625001 776406673 705473510 55521457 467180567 936065228 582662129 718471448 393634243 576285203 250826940 297207092 54320602 584051791 488416761 641765954 458969237 1012304355 171799196 964617810 347709626 593088387 268207468 447689737 254273215 597357805 744765140 224022816 524610734 53214843 417442489 570875372 394015244 366979850 760956140 711360120 611160289 757871432 812473202 167608925 92827874 160440607 959560434 427454089 618110675 570484527 235274706 1013272233 969441978 995831601 688162802 372122267 128933124 427253822 922903243 368259748 829631825 882406420 229417390 489847722 553373356 243457579 206505830 39199555 104836099 465643500 914823526 111910773 475416307 338529389 565358365 147570821 302272806 398933120 363148066 1009573866 1035785830 910599098 531012149 913424712 915777912 908801952 486998368 431702753 87624603 596833664 31296724 956299115 237833465 625346541 1037260312 73894546 473389193 598844361 936843417 435741939 649451534 968299342 968706310 23538485 531379131 220210412 608454167 483376152 35871089 909797732 470009863 202895783 851285491 499001809 919185020 561703071 314648445 841587221 702912595 867648922 37773088 558804474 443733149 174750115 433122431 264212835 1048595354 709711395 286235561 891348988 25705249 448165822 185327985 20315861 466134475 641732632 823927769 601158092 954526160 293603170 943328035 4941906 779198838 579882846 230433844 914411982 118044275 1018741467 607198471 345681707 101620025 792880159 278631894 760519697 527116400 603330789 934861534 821258894 892535644 586524071 456882234 1049914757 811123198 440830389 985457192 298565523 658459418 520316731 838990439 823531936 197822915 435331967 408212270 625169905 836723392 611230329 316820809 462502010 108176180 439943188 962045949 438614335 394070531 125629421 1040728780 262385251 1037177103 147006236 352741535 24347898 439009786 609214536 443594730 543128728 472019025 812832012 488514789 84071059 78837786 571972567 949742022 920999908 1026761656 103409688 12950441 513396893 1000289328 962939466 311994698 1038984126 404938466 746798783 944540145 382057114 519910185 234937067 280282474 445158973 489539773 942540270 334353566 884803673 782991969 823762866 297776588 27218211 481323810 148893343 611049705 1003429458 824572635 491569433 759443785 727954833 344216978 65376101 773898228 70575484 980087795 376201753 195684437 39250608 747734907 344938051 695325602 705380631 20290671 923093731 633489024 433112879 39525065 594309638 310474984 270453822 1032352923 905484804 422397423 1002115055 323676442 837527343 527874663 347592070 361816232 930794929 816801563 204541701 31488625 603746410 377394853 87059570 159702563 553280589 277769460 9252340 117381798 744757485 734603433 597712955 335836563 672488695 1072542922 19997092 205151096 982543673 440670981 196260219 798364570 513954069 153653613 873277074 1013255508 957099518 971764033 511319267 3006005 252205575 743411412 274043558 632100382 462296493 1016187846 178878228 599372487 1038336099 453073799 282450685 351196158 361203679 105825911 851372699 952141656 771573545 270528307 92821000 464402663 991362595 332033645 977590 1042876312 383485591 1048947699 649283944 515338899 910514039 835378978 1046683621 447594535 322298711 356591064 893848092 276178065 661171448 1061876547 558251646 270684016 418103226 861776437 367438866 60666292 447175632 969528463 214883440 106437113 653873766 24085586 632634975 526126305 213857461 301662270 1040069293 1022703286 99115644 102663050 1012673156 180163228 149823309 17885512 981895146 151299487 5045016 755406716 344231926 811065817 414913856 136149273 45717248 137101007 526990796 1070939842 137782370 253703988 649028298 294535990 1049999684 324791993 52163068 616380302 1021657544 995708860 253573001 173909603 783921995 319851419 679114377 346207476 794286312 58044182 46446138 736521275 329217352 812601742 816970419 173672338 2881907 22839442 992439942 268824512 234296890 351797123 1014508166 685155058 942560905 136989876 494698268 385608925 201800156 360159894 237618129 174855044 524344964 140277506 768324576 956361529 399072056 294321702 908163479 1029141548 701333584 484260172 513185630 981361687 128264878 776009577 780118768 169480768 146072149 338787483 828874769 7962945 371155282 768105596 400202829 1001936899 412437378 301432309 296573416 150973754 216438946 432249744 376588227 574504140 849032537 463387181 1009578288 226733820 753442515 417552272 875831173 666433693 607850947 855976586 835407913 466413811 636946746 834762812 514941405 801261120 505170182 633359316 284959672 93091961 54216602 611400250 39181848 381834514 274643842 358350906 1053703182 802284807 1049144054 365563451 817994000 253705995 31853686 68109810 989306719 44857385 690295358 168043392 376414117 623502285 258340520 61403136 349896158 1042345811 979833880 2793807 748481296 276195883 604115017 1005196872 1073173062 217202067 778850936 258429825 205682775 329527131 989318223 303902511 944778546 1028795818 968688977 1008625454 314398759 981062416 411809583 44092065 1024229453 947140649 333509288 989314416 502979928 110966703 315285856 409514392 339175368 651935167 1022674676 20005894 658097462 800720543 332273176 704931152 541078679 301978134 44627869 157308408 710105260 950374947 688839983 901123179 432688002 99820468 225322613 457715638 362594266 686715706 238532576 498074363 830010088 506590510 1072738984 705343983 24364199 265855610 418762327 1009708323 631852753 263151927 64924365 897161783 1011570140 404887528 604930222 402452 367542790 956545228 329314629 649138629 723769730 277681874 188934130 473085571 734338956 618895516 967362731 771842668 224461072 928538862 434930119 968274294 834545412 49905974 353814201 150238269 1009454480 637838361 734434726 743041290 934120529 79580993 30742879 521410506 725444059 650843307 29715136 294510827 895249993 402549976 19175244 795094126 782926875 850216977 468275885 288739086 378777881 711158309 315094196 504336874 788369390 198012939 647869514 441484054 318667460 858525664 579217734 410960775 584471400 525104155 583146480 582921901 696149911 262264231 45209277 799577228 580301636 768438448 100253267 658725553 62526722 237970609 874139191 525530484 394890736 253537149 480976138 340289863 299716840 207478069 523154901 1005454331 611024249 995513573 471273473 417054859 127413734 340152581 246636313 190211259 655110658 645812057 758589286 958639022 163316343 475880319 735822068 993352706 123581605 110879081 505183351 1028342318 36370407 982768265 573424120 701962806 224253365 941204649 1021522772 804563872 999856002 350795153 136554287 305778287 308638065 742313173 927734949 312512230 888537534 593497000 520524566 577594105 480513300 620551459 449148706 587023261 544124204 505555860 325918745 411092419 35001250 17589093 969836522 828873350 471165985 286292572 184141864 295961757 311630583 43936630 859706817 315007925 313690584 536162278 1026239590 15213464 163042669 707099230 818052595 316259757 104879871 869386291 43451681 1021159125 828616556 437354180 686846675 540174664 792563988 964759910 958903795 486676159 1049379376 1002344126 214552868 657061125 68127182 492661538 90788636 262164934 812522614 330609806 415746015 886424692 349605398 20186190 427336048 124005449 218771348 634086876 473678260 262686871 227006721 635661666 300359137 536080787 157018108 42965982 200212449 33288776 407078860 221110950 600899873 904107590 947971219 165927701 844045531 844903315 978012612 705015630 766361077 901290881 757298614 58651376 649894878 996398459 880103916 430483562 800494903 762071151 105205492 663085905 459048455 586794704 636369292 729409489 249281574 707412465 669466294 15613226 95228124 699598927 1036152489 893604700 568745310 129259395 129583784 867336502 201886142 553757168 605091692 813977511 261039326 504194304 957059716 319536429 184589119 239919881 353359299 404219575 564973006 440858049 630373075 767204925 1058729938 710274894 582597641 396398870 832225654 312352543 431032878 129115933 985508811 645336650 953908570 425113243 903152321 1015320304 561738647 78417028 208915070 86769851 68238802 549693938 742911299 821178509 981786495 245471480 269368106 908190337 571547805 159063762 414073265 494726731 504235230 79070038 669051273 1020361612 1041055399 783129515 265342557 40855019 779532322 951604649 10503831 742092830 828725538 343015147 561693797 344086061 884940753 947967774 760344265 258972106 230998512 79176088 975620973 76105732 306230043 52760360 918929926 783516296 832242773 293656128 362013482 659399769 563525657 177489933 585263537 731892504 115414694 96155698 1046013423 740465881 905405302 576331043 565966719 634585893 805158630 691490556 565221081 669000273 48424712 952629998 745471705 984766912 522499648 680306413 620649117 425316820 742066835 186909514 1002994293 228056413 861075078 311597789 640826725 970501189 647658967 679437164 716360315 749859484 245298834 83962249 429322794 325885795 232758350 434678852 1319339 251420730 985961968 770500515 1051949255 1001034932 16006649 993239290 316077677 379854178 394825804 1059592952 711315257 17796985 462292330 32740210 421700008 920727575 809020256 551472119 479870335 178516574 561230820 587146426 707099633 165758959 56653628 430061318 899787575 156728551 826554197 779783740 190388518 760211000 98272196 233664732 335033118 96739473 817849219 603521745 647793742 259403549 476414005 655924904 691893897 543915093 162900017 996664781 132834923 254073493 632376503 1027150286 942059294 630524649 459182224 466417931 611435160 189562020 283357148 53144389 356911346 924584807 706662558 718661770 85423059 1036390967 926983315 331042341 306011276 1025001524 224944851 937368459 181803296 313659024 49004165 457959681 246344250 395511651 324722237 627040624 939286377 831219991 980057665 564104435 452979841 1011358036 521576619 490930577 708355180 382160979 744957540 290337030 129146306 798173960 766758650 583227207 62229903 455367766 603900724 435347849 73193489 350121745 815336746 481023063 596960318 415026270 503006686 185921545 86650901 776305568 1003225080 19592443 510565855 490801795 786700551 166565201 45878207 17502639 371069925 148860286 123726741 277501170 825575916 785499441 174612556 177974013 303390762 995880871 758597064 743924486 124488666 288744215 949741878 449593072 897978146 410094912 984873095 226712962 924624036 108396744 1026627564 104807796 501035067 248506544 869955882 463847690 979886063 127962960 109329350 211525864 981794364 374484018 962390970 759680008 1002378059 35786691 1067768806 562576347 18715939 255253685 913253213 2514231 712787962 760361780 873944503 365798983 741651115 77991565 1008002335 338320363 522850106 480905041 1039385323 387468291 649457792 318379628 182779816 949140640 489682874 674962634 876597327 182489249 1036649176 761072153 1069807466 217276899 227308390 844080722 600911082 359546435 772151996 126513457 278935373 424787649 585220934 81181070 1003562515 108232197 172113461 213067196 447601450 841169897 265276237 1070784031 17562252 457902118 106195978 924519918 1070223191 677801424 517873689 1053475655 632018608 132761299 170536696 723869924 367111938 217815026 957463312 668644768 626282217 672654977 660882859 565474345 702580228 264630569 576969099 496051301 602215688 778815981 846267795 638182671 135149353 483915366 250465989 998106717 1036247167 526024315 209194760 427337015 143744719 37592678 231079241 927951333 366902703 467163588 816605265 584457371 107813589 950867954 673047044 944949687 305667979 1055173139 1013255952 385658420 677937273 235599660 278495936 370995858 566828537 96724142 773194978 639844956 760833325 220632750 925139941 787361962 237065436 683789379 712522596 289962979 884571959 759155886 121488549 121058673 387266623 877100701 414580845 211330455 968665067 526724384 863413075 756480359 132033012 917579967 276216458 93683303 149690124 337707743 645586689 808830347 361086913 399854272 112234169 691445424 545117824 1465131 306567225 873798972 145182295 262845096 409057543 385646325 497715091 1043731339 202071810 523054762 256910806 625784416 966770557 547907182 458562997 218165187 189432994 544790860 393252517 285040536 772971164 1004703999 158013271 295392494 1066555999 270060900 495668361 175398670 422001570 642951270 469772247 197203923 27465952 260353721 763646094 467944341 694836034 429500073 344152946 1061891918 95959274 36915394 505225637 519595458 266472481 401019439 186671829 466092390 113217049 556399266 91510191 74480118 431723190 649555563 967230840 667514144 176786674 715681650 219254965 1028288275 156388358 119008343 455862213 29760546 80192839 674438941 2883279 1003643431 147501316 664612976 119406335 270843931 537569911 549787852 795522622 930683441 115464565 175991922 1046945241 316691699 1063290632 73421852 540942087 794726480 224205371 445800333 921619486 499858118 615959664 695093820 318795006 616108493 637519058 718123720 688491043 823917521 727357642 62982307 619415432 999698697 600215798 959234615 982491045 785389616 592574058 197819810 686686510 423312988 864640983 374023996 489849194 290667868 614183268 15689096 337350609 479407208 543931953 428680682 306387032 826522549 592273215 84137425 865259714 370058717 15247592 242107389 553916519 1061830338 400385302 506548735 952633568 5870642 119638385 897674747 911026933 138179741 53213971 573250514 59360710 558517589 587343151 624865966 878942836 332316583 232555008 624389702 991967251 146533436 325236991 724517874 44608956 1067828826 367670127 904876448 753789707 758110515 113535637 547589622 978570079 772306845 375545144 347716296 300556300 608551416 864155324 214471824 645132632 465100054 864881708 438271636 395584753 632508013 961795460 772543517 253247284 106847094 551444732 972143663 829386951 920503787 1028289206 28932961 789345946 875954814 930579492 906321583 779178920 497352541 794523865 1022409645 239505992 649350081 714277349 633061791 87912277 909065778 462776124 299590635 751864838 511922390 593210899 707063313 768313846 897778155 213488141 628948731 867543945 902358582 72290129 159315717 261008713 21262492 545622214 76566474 752657707 790060306 725256597 201536917 401270677 865355505 36381367 60045885 1019341976 601691345 688636880 573915592 599139661 554257147 1032640626 765234347 1038161395 143366043 470794844 123438021 350744821 689685664 177221186 1013328104 432188811 473810988 427010265 654998971 24886981 964556768 168329832 212164004 106994345 181684721 1007424626 381205886 891935002 351367995 679040049 519607679 575594876 938912180 879912142 912653464 631552706 529431686 542984652 83512204 1014330361 90526158 776242165 711033333 298436152 540684229 28303048 1046123562 485450783 695512244 662569810 193466685 235250070 68477540 774219505 443119827 518475651 776579697 1041205621 297226809 418665288 99862578 473482674 46734533 574281552 501435829 487811400 217530750 951420358 435607374 272018372 795423669 884682901 492708029 787161463 471568214 196338728 387930218 740969370 875813385 913285842 769509694 365965054 966178276 823773870 768558 278925709 948265482 757725665 1011548023 1042665452 650409282 497308374 954838335 617980331 691953482 941628273 889452311 758417520 498706008 692534810 128608088 454087816 990340838 421775654 549848518 408115014 666045517 1391836 690025220 419550841 989457127 571380726 638709268 95473673 486040568 1000047409 420115892 508745186 351159324 197462392 566656733 605084493 987833438 26650537 141685630 1007745413 602375985 525253988 941294630 633978833 1050341053 1068959124 682032762 426777310 786164206 134204540 680868535 312743041 862298239 963609931 426101094 814504220 417979306 686768492 681406302 723478913 736377542 4566848 88064566 698947067 733709229 52204891 287291807 657805236 767603597 382546820 776166052 275364157 113604641 1059832459 255056216 1010485509 934842020 201130178 35386186 597721441 272505874 466627804 306969135 619975928 208478094 800876478 614562627 1056795522 866837844 473154083 669400884 198653682 911670413 163977395 927980061 113832912 649536568 30093284 546498223 674382619 595593110 654415008 819938665 10487862 298818342 517686595 193613121 342426371 878126233 638270970 452977157 581062528 33050039 515823113 704193888 963654153 330046248 140254208 284283949 801692084 1053710408 297253262 494750302 908782890 290197914 772661709 53938536 467651973 292258720 107258877 726659337 264106486 376559466 435058280 741938036 155561058 985631169 736526823 634141884 853479533 499889603 447516880 792184362 987567688 44845833 739069089 479173890 981396702 958897672 447864660 508042172 105959689 335230261 707858009 711600813 536576183 782358881 850396050 521314791 595673416 741240076 675530782 488012292 169579863 823307876 811730331 953210665 292903964 3341770 687096262 846189926 719108321 919220344 709985283 389300975 44299623 625915051 24358900 299878204 213994898 475473642 126218414 800052860 1056770560 97045879 6672610 755054825 284570766 672284665 1030607904 576042478 399537664 533307149 153237835 350615819 384917911 809062342 595120931 657492959 723437348 53063634 853565083 241416262 4329815 720155928 856479154 925815147 284961365 137644340 990294922 312093938 651419300 207949555 810069814 139425756 743085066 1051769482 699394420 29843180 419634834 135514906 1039521614 52777724 233099150 88366041 233066689 812479547 887795577 303990737 355672511 929222580 357763057 196090990 922189774 858153933 478932094 669009165 132580604 861847011 914000826 515874696 827584760 304514894 29833622 554507685 121490689 107781918 418204670 886319465 1038308045 583936261 785968860 798010470 791518189 113892300 370483141 259557246 949722550 639850368 645464784 673195005 370615746 319222437 517155941 324028621 972105106 8632210 542628158 361198388 51075623 187266573 592215629 901618247 544569451 138890448 380262680 213711723 291361066 545600424 919626922 673324343 906615102 233020017 978715357 33455506 33643168 300114371 579914531 411555356 730397243 498605320 778246021 171305646 1068990691 948905528 141438446 319656516 601288639 811243700 172588865 171627454 205847070 186622885 650032484 56995949 38710756 201972710 243529326 746686778 682137181 852333500 132057180 1047874531 304601189 364088597 567925494 467177364 484407643 840706175 933516116 378074158 354822390 960147278 929293485 317437997 741706525 130391643 429631266 95912333 169246872 349712242 193194284 1032576635 606677514 273695921 548690576 408553194 594693682 446899485 328873374 294016784 312652909 30674407 633382664 321168023 898439059 922529023 1066919376 1031554059 849841484 76140334 520905855 934226398 552233907 875114216 536166192 413710159 527587880 522834221 37864605 796331136 597204550 720496196 59499768 153567820 673585555 457257780 55283872 674941167 805081395 161266914 860987096 721989002 1000404137 583358969 796942712 153916726 1011790870 176297270 364048991 881799108 91141655 683497981 216399979 889879504 440482808 753127146 907261069 625050780 617009557 146790330 515752329 868291683 761702433 670368244 906484677 138264656 944154157 748213124 574271218 891265650 420928173 534630342 498125815 480418735 842589846 870453934 815245239 241918645 980291781 146131356 580512168 108960317 797815980 929181704 664580182 85791647 620379271 866060124 393494202 739309789 166751831 750652382 801854029 872147042 593682749 855311724 183477832 170769857 553797754 25624659 941037392 905660491 373087165 968954060 482468385 624350005 577005506 1053661386 968413157 823502402 812934522 5343838 819280664 837586271 880840879 510369124 1073270191 624371343 364374033 827056953 709052292 384452802 532210031 77274016 281343877 681083649 65798701 669248452 860004053 74430037 840110217 696124162 412898652 157919670 950411156 725899951 929927315 811009169 289017335 90211373 885928024 419663705 900065955 786667359 32336580 627355301 297103005 993102232 424436256 969836101 653994028 114477267 474910344 175993303 301480374 578189883 463974339 602593190 4519447 15746520 460831439 604609442 379209994 735316350 638845207 657508007 406495520 10218500 558186636 848616937 949077165 1065080009 560915975 402207597 445026094 581617974 749885801 243014508 368364520 406906052 789054081 409102067 735749268 1065668196 1988916 317276531 368696093 1024824201 502011290 820985045 925185058 1051509293 603654022 849688214 234224889 420681686 207133443 828561435 417473555 218179686 855632433 197130413 245466628 687972848 724893401 58517340 1000074136 335080860 549106050 16302594 582741963 973044519 837113309 996068044 883402109 310570994 1014236858 859490455 956113950 652153555 1010794850 770834641 92423273 42711012 50663727 636907279 760582830 595571030 317279447 393455364 626655251 424245365 455886415 369147206 791129949 830165313 916375542 744922235 663948322 748056806 762844608 669876414 1019852770 557784263 530312667 870066784 817770280 137808369 211958219 820515974 371006082 65790564 310017813 984716968 333533979 144637294 95604878 645366630 774421488 417931948 96131421 55423332 251022234 219164719 174390866 841882879 616712194 562397537 863072479 472643782 134402076 922768222 59238109 720152123 791725505 859930183 137162667 983656793 555820829 1068351469 384019218 320953314 539437133 847679968 827217471 1006511853 223484135 1030530010 39155940 593700742 89218891 256417332 310325893 1060279525 356059596 526577028 800706290 196628203 1035412204 451219805 163511610 462900595 447333829 343287905 839036948 1021322305 745963477 700836923 1023173086 314587690 611031587 287639905 405480192 588840961 377724159 403215113 832679567 814543058 672955710 252286701 299551673 857374392 74427410 989419078 605280141 685242617 513165987 474634305 686800447 355329789 527041717 763668530 510754864 769717304 250178689 196923509 127363197 917845894 981379740 1052720883 699001954 541801260 691733705 681000722 889653378 654659687 419742165 795596355 1063954506 473523222 981727482 939580695 278671149 997197778 837100747 51695960 520367198 557732252 671859587 514710782 152002499 545476550 547031216 226361812 147476252 903852558 209523554 1047630770 1065309539 217276410 148900219 311257272 233498616 271451293 210127113 540490700 448611731 766197888 854809548 300380316 911936817 275737926 1038007751 561286982 1005168442 708143578 679854672 798141317 329076189 940811569 579093325 642410715 988765003 1073187633 735092779 787856685 140721356 1022865822 229783530 424453491 79582504 39257366 761476793 127797076 830892070 802202770 936641260 890812989 294997629 809669979 93086878 619339096 414534459 51402806 181177837 861630071 201234391 459034923 746195722 401373962 636251801 858798938 1064141014 673885523 364227909 1014672446 379043006 582743417 19552237 737625550 388556765 182150879 1043070257 501577594 803101958 836593380 397437473 784480870 68186380 511771142 345547839 336945069 836245313 63755048 64947771 60880371 705346031 779260981 950258675 491897554 595710373 732708995 58498270 909247266 938398370 1020418257 296323792 799622702 83909817 108349483 484628525 47667084 280093373 944703561 125593402 920128123 126146979 537313080 754764470 23138350 436460687 774360773 433263134 32536030 888639528 826538764 3096565 210870828 726288026 861986312 565827028 884828465 897872629 775719877 772794165 757165763 306043408 264643479 650218435 589822528 163230828 629525275 490058727 749251433 709738828 297196751 625777772 683204858 822657534 509123021 295679593 871248753 950044871 113278682 741868888 323161685 931484736 338061887 689571583 923603832 661058694 267009213 995282265 153175264 527814406 970867981 431125252 1071254359 982110758 504710540 958284229 454506780 379578511 67863612 1022807129 112966692 503862166 1045731966 92158403 681118347 451575420 164003015 76984079 313427221 659720815 101229280 350772481 423651390 91392614 296692641 962590444 699365534 815755653 514575864 760207649 506837399 733286559 1047863344 352861548 86449354 1064858130 936196255 519522745 696290869 60506341 168752943 965969326 930149654 555090349 366075215 683184948 879040016 496288702 1057697639 652642132 634849389 774486148 312658121 52407177 567103080 241000756 991965332 246309808 569189025 274704904 325337663 601165435 388639682 701681836 1003911230 729764317 462225533 233091973 62988099 637725698 771783652 742522698 15570721 46512134 846926063 557533332 292594683 432742609 1025515730 843601965 963227025 783714817 892601797 29846602 406320650 993639463 566188332 1067464926 995001178 688716982 278900241 591586921 405836457 424595197 212245919 484405522 508670728 721416044 166094565 665055513 626909607 80425228 1029404128 130033004 905866335 459515686 378262609 888259276 639457669 199618548 783820440 821806636 739789933 100080512 174223996 325821361 149593475 500915688 330957557 528959265 548435530 41768427 910326037 44702808 911175919 812639299 519313729 488240307 859645753 704346026 601886266 548306699 535714381 426952010 223199108 291794001 987101849 175310896 1008107548 782573058 38118203 545544978 876308676 278861550 355609598 180483 234124936 702481316 277666954 210306562 135997980 53854191 847648452 366556738 429164928 18765159 813910119 705907406 885423818 830123582 468034553 779977730 367480984 133021018 79623864 298984062 419514649 80677902 245296926 502169588 845439934 306807664 995140563 162030396 378555769 114990815 755018123 501617246 453269429 244587748 390261828 392488910 156554772 636920648 197245489 55871120 442562288 444738838 184368052 420506285 862405734 80730411 928497911 51676917 23800690 941240451 975187709 778452220 706893056 319125695 12282354 766969018 412838116 517841014 416401877 668396547 322376829 139240410 553929860 278397192 246949147 227565603 598012237 849884526 832463733 1026529439 872556995 220339598 198953958 73253990 977708940 887336803 73534594 673605393 450785394 888294517 751381079 262104424 65088376 127322250 29192171 1058881933 758009201 587712425 753826408 805178781 825642875 910429678 200503004 165622016 404700212 570967769 446024879 120143955 804750353 215093240 6435965 730054216 451473190 436213600 920448856 1029947281 1038912991 457786811 1072082545 487758780 562708795 111804059 1045727518 163638604 979186708 966080578 1015969307 586384787 179660622 67401162 154357022 40619748 83908755 341752973 138815119 901453520 804559550 862347095 296357942 1013109164 503675458 95187941 980576244 47782238 343194383 704582509 285040923 661105961 296786965 446266437 24637738 884713362 296921921 435861265 415164052 883251776 286900959 337120894 105345902 665502511 817641629 541265521 66373440 325781857 179481527 980041908 368982855 31120970 820369026 105179400 708805989 423541047 866319619 990341992 595502370 429109179 591081567 78242792 653864533 415557417 559109173 328878334 337458206 236270524 768643930 401585936 267760850 799954670 431706956 544124313 394024236 959445561 15541315 920276196 881936732 653383533 603730630 1047558470 266428053 729362730 232397085 629710458 742497488 50278791 165820871 798832192 144871275 1072139517 711385423 480498306 30006081 477467866 1005924004 300161148 1057039896 923857132 251910614 1068513881 828321601 275652673 193677125 876150208 101106977 485762260 1022414541 1028099062 542905262 610685169 467894759 435578667 753315293 328846661 396457634 966462309 79265428 237954812 904863039 558865870 762717703 591271110 934018747 664189035 511091683 764916095 306006949 509140499 291894591 827965800 386321929 370153927 106173549 278820900 602462770 1060995003 532101742 333180289 755983901 555900712 133875050 757271731 255288920 875141104 528815374 423234024 323713193 299253262 627172642 888125612 1038088142 432879733 413285051 54262696 905427138 1047463539 192704383 956153664 1055576725 375898991 337841898 683845484 212764898 235919969 443753498 412045189 781786419 795016643 274684991 322972768 172178918 611418590 805205807 932244991 997963182 529647369 27512367 114590026 147470242 519142762 1047624868 590594000 1068706978 1030400118 554388656 300518757 740913704 412520103 236973454 231290270 179676823 955671818 850341577 1069687155 246031751 915674752 885775179 688302975 148008094 230985687 23627823 548440864 174003200 960190054 1034167358 111010662 325230967 966823374 35427980 311386155 953799926 740289276 25914103 469371927 1048187495 118223131 811843802 854310161 250489552 949669581 48522063 862527601 288505826 881174015 1034329907 437356815 232010333 884124143 1007631567 957157018 150920064 141444647 246797113 996794235 756287795 744526318 72068119 758115173 472599107 742645227 351307336 728718200 470684708 880556395 1000778625 459933727 609084501 747977549 704818009 896586389 219575217 325939890 886638509 840275525 996242585 349219457 86218362 802597319 193010496 51235445 167995856 464247112 184774081 787215812 148910335 992014960 475375574 891728525 886759982 926070076 286671536 815101814 38862901 428231746 465116787 31088103 308947762 565158478 550093789 888296310 1038933948 350726667 79330134 130928583 1041885024 797104933 929899878 329655809 291969641 306631835 932816248 221331390 227869000 153674949 186494672 767585913 48207193 402515808 572735534 13790250 97220598 261838680 243927839 11490018 107454408 435454800 64982303 383900850 1013875987 282007960 110174883 259382973 918600006 367422079 605918810 1061678942 800342691 764804526 419286261 416673986 30535570 649412970 747487440 876526076 1038275623 24194028 247571984 180809268 876959731 598922391 478082830 169075154 314774365 612483307 431186454 574509899 1005446601 532293510 368273955 81766932 885068254 44076931 976546741 782350916 450836673 123769827 609661343 39333261 242033933 681090342 679365404 963688234 816371678 714351008 953905398 816420347 1041737710 818257678 581729153 1038243506 128019465 478048076 171850471 449480526 1024970749 717380735 651886898 375842905 1043182189 896738854 895530806 1053272588 35250274 700519759 709465864 813083115 871872668 104907204 23868317 132388061 456708770 940856909 335078154 819877827 610691143 624663384 126751248 338605124 155265153 329139903 974405736 408324260 453807304 321118954 669863421 244924308 202349922 860076029 663685498 1060755313 235207347 650176070 374528638 87425419 223501119 894979074 655971634 775131804 661149367 714297388 248640349 1056493691 728669488 325836709 42547199 1025268728 761594248 543390976 995820725 637707646 1035957115 952311389 390178096 913028798 566830351 160165110 929565267 692226424 38104752 267431736 850504065 457985522 437264169 387271023 561535803 1008702803 820632254 911370639 779393191 505299984 586608249 651013269 651059297 336993215 1030881418 148128927 243819834 1014560053 143803296 467389327 1037177150 565745248 834899668 1044869800 438916143 989016259 461204959 921424033 109700004 691566483 1044145938 606537837 104791070 1023581564 919050205 525034119 431194988 570998456 1073285943 157746244 94153244 811503892 78833605 8726677 1048967206 720967662 956391203 817570185 986001532 852499860 1066988559 628589273 195360626 933646043 607543208 548236661 1025896368 738154912 1035624588 183320315 294407559 166704892 1033508085 26539082 718842396 701399111 119248284 267040934 749982629 362177495 657591613 93532690 887310688 910185553 983011972 943863017 843076764 683058756 487103895 803067672 630661800 641316095 8025757 54871623 861343452 121603335 93254802 868251400 264093085 210148145 256293631 419921412 520782595 343803475 863685841 586396505 914106102 168521465 1069980271 221455411 478259205 634023331 955520304 747422978 982664843 122359652 937677213 265938351 375236560 702890108 781042198 560559542 535379900 375048868 822503246 963818209 155861540 937222075 455709133 637907896 758186948 509154267 602518272 626991351 102727488 281097430 989088285 339336872 53375691 22678006 471980429 287608450 5151999 206501781 516490426 661660617 171928446 698568240 45426313 152416737 96199209 969545541 78024882 864453611 726026257 781145103 336892065 283981370 821148893 900006071 282447827 197001677 929208779 494133756 239090487 794085308 636536517 648711379 901700548 648421935 1002930256 558183782 552243995 863628920 515534296 362445122 937776804 405626071 406872344 98490225 957162585 994197111 794416020 637480085 698833212 73362200 580733644 1033200953 313397288 975417365 417113278 802950540 199002895 979126658 1028694861 507812672 381263794 687393407 1011390819 133223602 776837879 1021608781 530792462 209138426 275836781 524973479 1021305968 336493876 947315735 673220803 840477505 765629677 924762468 466989200 25031018 262369036 113844997 493665 438073053 44531535 600319008 850581058 1049560201 890562552 537551394 91625693 1065282612 892576398 661098304 40142354 839268124 971151543 609755626 767288281 994762971 310129159 85786605 397986151 619953320 193517584 451724967 801537464 543751296 134984377 249748369 301498685 209774245 552946263 89364925 939228913 255766850 1038771426 223784433 638733313 272838997 375853560 179439193 1030175670 687432884 407473448 276828132 350190280 259697074 541270709 932338449 382332038 342970589 670742463 726409385 397262669 825647110 175865207 29030331 292955116 860219402 901677309 24581419 85709683 905424071 615797752 994778478 69128334 276711744 70036910 909235619 572844321 392483141 890807647 501999392 24631835 970614709 79084555 242822738 807994408 67287706 1009139986 741486575 755593656 698944717 611413281 473728948 136888987 1050947429 955223754 850808478 845073119 938543129 782930041 842660988 235177475 1028183440 298102462 24052838 41396492 721586962 395203940 876576113 848102619 535982172 683784252 1001484177 82287122 570360121 5767192 298662911 628191156 800505866 973798067 554948206 469588729 105961992 215799801 720525510 664526203 1003566302 1029141333 389436643 25648144 438712832 355846385 49781253 84863203 3358792 487213343 127318561 682273461 436936666 957650407 242088084 8072535 1023735420 824539657 883568156 600177307 599929293 1033191209 106834511 568956269 295009198 996177552 923968443 454514149 196915504 545827889 694390896 505408051 861013207 71553014 886693724 68539331 871805028 279879991 718418153 427724887 723414956 1027607308 177238559 974346505 511550910 1065525288 892493851 690968131 663454535 50943912 1023057139 870563518 778428145 508066365 308905079 308423722 679435692 535235098 780286685 579607303 197162850 782117215 979106337 124037708 576914479 797202686 554286411 675534083 84097543 736772333 739677023 1051207337 817529182 525395253 998629924 59361575 858856599 949998615 56698865 903164542 280936654 308570112 322277430 885523013 209999380 125600548 498870173 1003886955 711437437 425603216 687727385 306449415 724099465 22622813 395086866 215570020 994063622 871294300 113203348 1029425070 372398261 752813127 995875295 1057569806 765114842 381837041 121813488 94897339 768323561 434703621 731879236 1001603879 394951966 61566140 729019234 136385475 530345838 522283844 883468558 670355308 992361789 107624780 542823389 280910530 206109205 437425283 121749772 326474614 146055596 389164956 940025177 578732763 361676686 319227086 1036254231 578712596 225539349 533123862 140524129 785520699 1061214513 876043764 50684925 61960543 849672427 599079869 32528779 570162926 647667938 369280276 751016228 693187216 528541376 876211097 294174685 254576619 96903296 277523597 88047388 891518644 37863914 1016031007 740816090 254151099 1033044041 753806649 1038163654 877612203 775635521 162060332 461147383 143138292 121689459 469498744 652749991 366897566 686442554 885122889 433924986 552963138 1011372475 234663022 420176535 326202865 874511972 693495116 245179008 109890940 814387536 941273412 819235836 220381460 246258925 243020283 964747033 597100427 546718388 208505147 242087342 349686250 903541294 323200180 133575418 632586960 982259886 374113621 453990436 498263633 117654662 96529481 636587217 14551851 384072819 169437648 727641059 297556860 69884409 722982480 29994298 15490639 994294650 12463839 130905173 261229146 150883961 802019292 1033035046 722961242 752896477 725007715 593902833 1050200153 922458092 772964192 600697894 889831540 486617053 61174990 441689510 86713159 555091561 406186258 894460098 330680447 207276015 288466186 457605521 558779647 1063793684 661214004 913417887 572035463 283195864 811301028 358410014 491953264 953375874 997073033 948982972 344062245 934526304 988369829 105993505 18030590 500419859 425645624 215842475 714844609 139876372 861403557 72793187 608807860 811514540 593555096 849842265 677131240 367039146 613772862 78552105 995919081 440518077 1064574597 211805224 128979617 934438192 3565640 734156986 1017589722 283928460 358433498 1013678763 704789269 153352359 596607302 741977703 519173487 724929390 195225026 662663086 672603779 723122357 522539480 454910839 284234215 514295187 505823954 404899198 780926348 459968200 514289968 1009659581 965379836 167446984 798407132 515158390 819784429 1048017789 699648664 971391825 240612819 1031998510 458278743 305965329 131029527 477191062 739862429 489396797 344530984 242847794 22719585 273786490 806121829 1002083217 110686096 1063588000 717724120 719312117 691490810 598012990 592907942 374837872 796634662 765627369 722906525 59637495 556160140 579857635 685604309 185219716 828536855 87300930 518439443 956091587 238474257 145373230 415499164 129738803 769263567 644329663 315722651 861771739 758893762 121981997 419113506 508304238 811458675 712976076 885555365 576655973 729954244 562989081 1035383361 422753534 985780535 707510852 968853549 374223889 1050938759 1067941752 208886264 198665914 253410874 577265571 114040388 272796073 578659622 620878144 142313549 778709934 963751464 38476480 76931434 454079072 236504109 347125108 1053262234 539832864 207305139 71457289 506842588 1034250661 432401802 879021696 148886018 488118790 700553247 915558901 87859943 891958091 872756508 112271365 734497267 575800324 93445780 548874414 997500580 714166208 647000540 824254474 557900832 680651062 775382091 1029530027 156640999 37486255 865849475 914837759 254062787 532895238 534057664 405008322 26495790 898954944 352145516 359713097 181055340 342008175 78288517 1061200236 921938391 152231323 30937773 359295678 654054750 1046083541 518580512 209849380 508113448 759974158 894176278 895776804 983216587 289712926 651590582 663993359 298916447 651799252 202743336 293052947 472158827 1052221570 810577169 223788576 979338785 804997355 34679850 338564440 600523304 191694823 398036519 283274443 835992765 458764101 831848415 991674703 140490718 973835008 996339674 360935741 964141209 34495550 381501528 681478795 217363605 955923044 870915180 1019857767 499965413 32648404 429558641 324683878 533591911 308680005 304358847 510476454 138575058 665090224 1061635490 704459756 359346530 591554594 368397054 429078009 219995149 496486204 901402 974433753 479715861 172476536 454172384 1073029045 17341033 880683542 330438356 590336394 432159488 790492873 333281560 79119599 995679173 308223237 144920925 941311470 450873090 796101880 745827691 978242371 876139973 64595902 720106822 467202649 686683244 151509271 1031758445 730981947 470924468 638012445 526273847 1007353913 244027922 557777290 1006530150 166949494 983282084 181147687 909254558 373311411 822396712 758873106 772327308 568671026 260989965 171913734 137322838 363670697 842174706 392747983 409022315 110679505 233697905 220299482 625326242 556682378 384205492 109842125 574070435 407294282 781861566 905334927 43812568 153847718 401048114 178435085 270514770 1013910077 146582117 1062363623 1062735510 194725421 450865402 983469704 251283726 679048944 293764672 754717625 663422871 573987229 601151946 232012167 195379496 544013645 939987386 745639474 566018389 782535256 1045115792 532960782 689148677 98894838 681987530 934256921 845479035 477764068 664572398 824600420 77212618 703447699 1070279999 569514708 82164190 678752125 807002446 639020843 998165033 332640227 848861233 149119334 875461212 365674348 921611955 775307283 275183150 510340271 615567712 297306331 363954336 397030899 680119688 1007939683 529560179 860575045 787829421 251750865 522622810 578862087 717771613 1068759568 670965409 606357215 501690375 294385826 307512815 232076667 877981437 286523146 239512639 630419167 632715928 329824330 273029088 541132034 595166514 1050032331 1052633255 14436551 521004838 839477220 805462957 981024182 231073992 271776179 912782976 153263088 154914540 791180297 325787961 73150648 119459704 173416696 748548730 616544746 464777917 411509836 453677888 878740979 498155735 370050051 243800219 148394096 1032073925 681464807 636751418 274635502 888639638 823662087 895148353 14217356 616339561 25266074 951987102 633167682 857803534 115459405 995576987 248847790 722359655 1052956731 149565609 71334168 116458288 398877217 287076216 552198166 617303010 55218684 763500130 817726802 417515533 514577776 850885914 302661573 7241267 694693293 615763368 339599090 1044942539 955963500 364140917 304300709 234778426 481432473 674803694 19036596 673520556 824333715 350623054 653541203 484001000 267863244 372741970 452555326 970480162 817141707 104913215 292151453 128195884 592360412 1072688236 428754637 312320248 558518894 318469055 751341930 147815367 588677411 1902370 317444301 864430224 977152219 13286548 195703704 776150324 92543869 12743454 191114800 474929935 318322725 586752416 169380036 420628788 634429991 679760336 89951522 250480725 363611381 875545068 383950323 612461252 539518267 460585487 693684796 917265037 832669266 966915347 796345830 131663402 214828116 129195354 1017129702 394146302 422219602 1048464692 36747820 641850474 222717038 1039399058 675520321 552849224 53357065 768721018 87743981 565642742 943746061 906108415 410919102 918190685 751336094 685038103 396160568 1057034325 937007327 972893165 595279307 1016035686 761043455 309746238 697805468 494382739 1048081634 537088095 976569762 215433498 565758362 428817333 262286569 635659577 274649076 430125200 204797299 704278104 1041594061 67259337 135628568 41174444 862104025 638833608 346438950 1059611502 280077709 992372256 356605893 439803427 1039919132 341555498 365320304 451921844 758289184 787256161 138478737 578694010 27761383 693069248 179643424 83278470 579863001 697956057 553165001 94139882 624776735 666314395 361649808 900105388 985575110 960420624 48205520 271146758 337138659 644287078 826849001 835237229 826317538 317200598 147980685 745765606 834590364 197228285 25812325 470468606 107055441 420539386 509294714 816738706 129734711 929071840 943424617 1069400301 242984470 146166073 337557803 990111879 79007870 1010887820 211001825 395853972 641888912 253286388 371268286 899859604 656523686 539286829 733363182 164991190 362989107 892699163 510553109 998132989 997384659 613442473 1014842803 41158731 27860327 4310618 512065399 11556376 353629571 626890388 119137924 248017164 894671363 370988297 462791173 518644064 712345100 731216119 134296494 809521343 1057140691 879111810 697621960 844447985 186824979 147555843 797234966 623571880 239708987 991610934 455749049 810080701 350034629 743875264 587151960 1059053280 877356332 910716006 728201953 186634454 749410483 644661201 120101519 346062285 94815701 239533288 816621393 1056752474 64588093 264248354 716287833 775505420 171466611 413735263 483949428 841031605 990771373 380596546 781739995 836937716 341468610 490938924 613502596 270278018 274084641 308753943 66500147 712726097 866526114 1072648053 659526978 184997797 754910012 189040619 24597096 393051260 905011998 232121351 404701875 742120212 991273967 118970855 958112774 463902571 379797146 192082870 964439014 141586433 536261447 180536446 539024998 752354313 879641754 762269015 727252945 938256462 483928369 140495953 853067654 168145625 1070672118 401486582 162724649 569075651 317486583 415975747 519912481 998841776 471800399 785173377 1023535610 436367958 546647920 616848305 1050594100 584157123 448543835 168131499 808820044 70551039 608476920 97033197 405276388 606454051 681294649 520995486 898780127 193420059 375456613 1061702545 849759012 745960902 343159544 825379617 787721789 25380248 1026263687 884640289 114498729 351701339 241508398 786602118 432623137 1018000717 417653905 212511274 149097553 483214395 265481901 168547506 788885918 675040295 496437180 507591426 1056793721 916329837 553904308 1027484903 291675929 227417696 466131138 449607516 144401957 378149097 948359112 287472725 941770578 792581710 612781782 741581695 1050180179 705874201 430337477 238267283 393732073 527691999 715958230 551406862 112523718 696329381 626188131 608577301 95500430 280028644 164451034 656263079 677705430 932295332 735080697 636702047 231371574 1057816793 292914502 1006719184 97668083 762489155 532636742 70827040 63651640 539108634 929832840 627446545 209452595 876456789 76153849 302423786 572292229 13644272 703964914 1045235083 136134020 839031278 304310911 680927114 594432144 982291605 949169295 824296548 35309906 25679809 266847094 230597584 66991405 971809772 687538515 983217585 857592521 890357282 654965132 747168354 544014346 245718426 598173807 844451727 1016047535 834485982 1071486246 511872916 843514936 67615440 371894090 619974941 616372287 301039672 217748635 704609378 235829749 128786721 899655492 538973475 48634917 473103957 82846502 680763419 617924066 205395808 973034771 859248265 669254479 580819628 744285497 892955604 606306759 85707926 211561169 236963584 782636368 593610451 321794559 600514946 69393198 605244866 963150152 540129093 657688479 32004189 93619922 396092358 440934021 780108886 949125869 488046534 955298172 460042124 690766633 314531753 755607337 29109570 886547648 850773071 454596533 228436196 161514883 265616772 941652091 448194141 353948039 286438513 151113393 139302914 452364749 735697760 577684075 458791933 780006493 1056263806 568205641 129476496 547418434 202895696 548875423 498058344 713776336 183960508 541106352 465159807 907457275 795456063 531805196 474643046 206516130 210837481 24561291 399943967 411542005 560957820 591938331 959900422 151625804 615683174 8743372 498632948 518271980 709900812 753095260 950573094 387664087 507410119 207788922 313521049 1009246096 482160181 659520733 983689121 540568221 775538896 792548489 963495455 249048434 320494834 1011658799 276348475 377742441 132703311 336382062 423547699 1013629312 10834797 351217210 222933133 960972085 516208915 17549151 589338009 1010832560 1037346995 1056274950 930037070 849828968 5090565 1063753307 622950405 230454936 687370746 535975196 989937819 910422874 554962417 500064751 561675618 193376917 690791575 190465660 382781907 578344864 108755993 543806407 134303949 634866502 472263110 512362970 255580372 707022167 283960244 321553446 141330314 856033132 348058056 587239527 936497484 381740878 739129936 222456988 262673173 955315611 352237621 451267324 86777582 447609452 784553500 599953647 974488428 945683244 290157442 579803922 75245295 889973435 176757376 813425845 315609024 63606855 760083963 613281932 734868909 947297096 125239347 105590502 668054655 306712919 617479770 214734897 996391622 740450976 858645303 385704771 123938664 799279368 833620574 257220333 657675458 1043001719 340748246 564754930 786093588 200010474 280320205 658787425 697594034 1067784420 340518508 1009871641 328173665 85269083 592552927 194839084 1028351414 1013381206 232372535 402231701 719539135 840589467 62125569 761947849 644937944 1018775235 888724402 492162201 971502565 842306063 1060883938 577820784 387895185 971520645 325401766 1071617079 150655829 850546404 592766370 623447843 231890482 113435770 258378538 413107716 505967033 642156618 231267557 105717776 865887008 914384864 799053917 591439541 715848145 605063106 621868186 303374110 671723676 643334879 677423627 16587528 199703444 890474960 786635236 841268482 283092017 526958563 499195552 1046556483 194392514 209774052 825070345 41243910 389762321 825442189 704628126 80586742 25024953 764237924 811484695 701655370 410944200 790145752 720130730 1056768198 40497085 16830532 535062951 46979128 91229944 547964773 823791980 428275992 596427015 30453398 834688528 940612332 46879574 506524660 786844108 633099593 31992786 874281647 365916707 301998705 93391803 664356925 923750924 382844561 373060328 192224358 205174084 90358634 537705783 661785535 1054087995 815914529 780455005 119667366 18347216 434836469 963336590 985600619 285488101 897333396 1042879917 346959374 701815079 181613860 991401995 922198652 154130977 1039957499 937347544 569739134 397824944 94061910 443805330 648130165 469978501 1043029327 871032679 515189413 1050334344 909770308 629850264 491326089 592070028 297839712 325028042 42753605 161218453 883608548 914510411 38314864 939971673 382943855 349585042 595665259 837706845 485494525 967840837 908509137 160711878 765255679 456383888 413880918 551697330 448111776 65807446 181579732 824854754 677447076 941791684 638390845 187882378 14343255 410956587 599306465 356165285 799922640 90309657 118994145 287426321 988469064 639978369 279906026 1042657608 94190022 259051942 88754484 797822276 951038206 83076842 1034202594 345221856 811312588 736356564 364788660 140487962 296491453 949186855 937379598 960068442 270709661 678623628 756363704 542001182 297431055 997268948 551652762 187744360 49863313 118620119 813890182 972756401 252352494 351800114 265026849 793060754 12916220 221717640 394973172 1052322364 4721642 519127745 264160456 857818370 921058709 74541037 71122772 1006127513 463201366 973112679 610679650 398996122 420270661 142842353 537180581 429212737 429313081 265389471 567430011 989305418 123188711 385164010 1009332421 714621007 830212330 501675470 509338380 615427327 939521262 266766305 892306882 461784837 174750182 208579722 324173623 365214167 546095796 930210624 1064259597 806303929 57985737 755799486 150386201 699249760 458550832 854590893 689708355 966143928 677347946 33302715 1060099433 21441671 74165810 1042612585 396575529 110468147 148642692 1030051836 517901386 94373401 1012172485 1013618674 964658136 549243784 780422000 266029478 540777672 756523009 770196391 732374628 214925034 127228995 408558170 584296634 118439889 979137813 814459764 773410127 818577460 883374908 949586329 946090472 109824413 372017296 40345353 955005146 824843511 153032049 555065581 616531221 965874299 90950693 73800402 918980732 819651034 176383849 304514243 639907533 2041826 187193308 38734948 560225784 630157547 559588377 466547722 764053406 807546872 150829498 443754455 41915642 2242783 314253494 308859641 894120119 943054668 349692900 1155941 429056365 285967112 400572961 503680700 456998553 892637823 906698526 485100555 73781787 45723910 1067382243 172473862 963828706 433627199 713841321 927777009 1021386287 193544695 1019996414 649595682 397637219 722799878 690186253 79472403 487912369 234739656 205662278 699364960 445497743 957177647 56042330 83658565 877593548 235821550 724077560 54294541 1031987067 347616871 250862611 931316836 1033232131 771327153 911192799 899621993 697699285 755889265 767473496 595045051 13013014 874258835 1012591007 331538046 88946010 14796268 477493905 59801038 28785236 2622773 941851315 903830144 705053242 617166706 844190797 948295909 978053336 537965776 889772448 928835167 955379166 205740162 791823195 643186462 27727053 770321497 905573815 167424893 170067663 23585139 622026999 440007792 175946012 266988820 254831634 72934050 418647284 741318678 789671880 314400252 183385986 293269606 237245479 305952090 354953942 838991976 902721628 222311076 353441771 19606979 306583783 759538741 870499544 712445264 131522752 612600905 725876741 204662080 668235357 315546030 916599559 61895471 812788634 597073327 900650438 27735113 115135880 469752701 406844397 1065334846 1002504811 943450282 187976543 579252619 256795612 555517490 317303082 978683362 27523286 620540829 453931373 526140097 519124971 438141284 774225404 687783047 311956714 603001512 941002312 245370132 1071443197 135916134 162547127 715105147 303091184 853106461 659661247 472556341 223686842 229107968 220122674 326224087 754919414 978807108 843240977 438987177 672758938 767634352 950195063 664280457 837561636 98924775 112389827 312957119 167090679 926340581 886348252 438062631 919003753 63695200 377699781 513768535 412454147 470791998 573907551 666133405 791040508 176583806 559207385 353649951 511119264 856744031 320115684 814773014 438746022 643113824 551249258 524229554 119742233 504367851 964659730 308918594 737365634 831536117 269334300 179875471 570669772 429281668 228609075 500705258 78158916 639365154 117699714 163119011 4112214 520848560 1020601129 390313800 831955153 454173544 64249730 955881963 992474755 496799692 805866890 519472443 761972736 217356645 655143146 956113978 401957044 649716918 620319932 557720461 291607335 759627336 668177823 370136686 74484264 966252063 92827271 971457361 587379555 480227333 872806234 750135492 1046584725 759123586 1027342904 165985704 1064951855 535090383 378957178 848397023 193085315 594672055 249474813 196170923 636836421 171453966 242959804 11941629 866983349 500774192 1048867893 409763979 839419524 1021924514 50455921 441188231 142752928 229870171 976058714 493881935 663106164 671867872 930100127 97801932 156404021 615176659 886204515 600363307 613341173 961846128 942451355 424240883 763400693 351909204 716107193 114848419 574617199 776723873 174923359 641037096 16784854 529425679 391946454 615125217 476320608 184626346 567723581 366210045 839778765 639502278 173276854 567980555 521737012 571878694 798907098 918663040 296555959 783601177 541291174 153876419 1061039769 299900062 64382435 149767086 845511084 15718922 989470694 705327192 997353164 534448531 394486172 1048900841 18732800 742442498 703221295 287319531 930423272 864873704 101432942 849389374 209426140 154871634 1001538464 650049714 1040700918 242629860 52826505 85017322 136096397 842145177 1026311191 492568839 488199177 685216615 780774946 94550643 726324277 366186406 1014738170 8699991 1062115994 907753378 733381396 1031989415 348518672 125210972 764848131 485162973 974502847 841316826 879258687 695490576 158834944 738625456 257494848 288752538 266826570 808472458 608838171 476426869 456677207 734958981 240210583 286093891 796897907 273711230 514508628 611149904 89881848 379595521 421143500 839007194 925350686 594653259 663289834 837052642 192361848 992928952 989857279 824673967 652604168 1065373003 432057339 872483815 573685258 154779406 788506932 579869403 1005308464 853373597 73137625 919000622 409468912 94529159 185423120 428831088 820879218 445305006 1061618454 49615088 578074565 41086410 847829898 933664550 569681011 24784462 573789710 173784946 512872411 982959836 902818796 371791900 528633743 49261953 91470661 997045963 1067608835 983253678 324510826 521656763 999303447 705364517 711805905 48860689 442001845 119372554 252456579 392787534 963780676 247356335 1024199592 383317753 935538025 212751499 888886042 440798695 127271329 493247058 750542636 1013908512 1016777198 1025014059 479652412 45450981 502559611 819407673 388272933 1002043142 339206738 488060746 675452749 411020623 136893102 350796297 890879955 1021886730 494500686 1049338435 251869054 231478011 135487668 137142494 260861856 474863390 98457578 716420101 234039637 171587805 669854880 935878549 105734871 391937276 74961605 474544793 24858873 686727365 415956649 784337426 457001330 800024681 400144583 314008511 415140918 658866411 576263963 55146409 425507880 120740159 58160653 620609946 515731381 1025598571 65764964 420979993 708452644 62161052 558835986 976409432 851857193 793584501 384798997 834578911 489331812 737110722 1006681997 1071312588 519185080 588424119 466322042 803523024 250106684 120723988 360603229 751477931 1039279784 549094644 267347609 62057846 830336992 860502018 573366054 802939 313214045 215775378 629991340 90193189 166114151 816503416 995318056 28781570 516900665 463025209 199911475 800808602 603976737 352952786 591242292 836432786 699079811 144345634 212952581 945342287 216526083 1022803781 946271098 668326725 846918682 291797388 832043273 115082243 768904616 223450813 312778894 759633731 946612452 1065736546 933314921 1018190592 261848742 796040008 910174521 49563711 764796850 105119918 114152377 426834940 730744102 1068055040 979058842 282705127 731759377 224902106 639768421 78613001 910237147 801380664 873033063 520962227 1752080 911676169 246333857 893743299 620999926 306127462 1066748140 521867829 730406081 535800813 276571635 468030666 78038341 597574274 227517503 207162357 374790371 91500670 622988598 887735412 787065940 465457340 318959218 628130980 399105673 102098121 109197560 993947504 883833097 942012879 135653298 37682250 64392170 348180276 917342044 573258099 533486759 719040290 485504773 999866569 1024301390 311895814 53058439 321839836 929029651 788174857 256027472 978486120 861940318 786477726 392748054 633913323 1035582007 48737751 301248870 954283365 75415773 1057090970 667592490 597286640 812285270 376035393 904929792 1047908131 496374198 322832470 724865771 207436176 1070626481 95333891 692256402 1010162611 142854767 546949312 525969430 745307748 335838625 983458838 359299371 991484162 877278649 140833637 609106801 663398101 1022946733 328876052 1065824319 71869611 347635950 245814842 79837054 322510294 570910961 103924878 780520154 260026389 1040841922 911729278 892269747 36584440 262335863 790668803 511261540 340972940 269929765 321943458 1073401933 75211255 458008931 728306219 360337519 730072931 1052704347 413385964 933599015 754952820 952889264 133792401 225361039 74206302 762215863 952883217 310406694 147337814 821938870 494445160 1041103595 428318456 404193113 725611434 603692853 65941356 653986266 728983780 1064296568 571943428 280709305 987170210 148424569 248110285 30360246 50685300 1042489092 611534486 875503774 254861877 187216536 799264778 983448421 1038277456 308245931 342510083 36407602 10494534 960643773 423227694 310851026 794602016 272179446 543442700 186183644 144611624 276224454 865071276 42980060 119728815 457668865 928170433 942200691 843587664 356948040 774765483 892819827 545072043 505795863 729039099 495120668 615493763 392809693 567455466 689352932 521102285 297909524 422907678 302552750 473509645 208181083 816288949 1045393306 105655869 297656930 494284799 863637715 241618860 905230437 52076560 902197783 655671527 131430755 306267872 1022703329 805957610 716877171 263683255 770739126 1058861505 268514872 953770818 515982870 98552834 582594789 304144479 76491252 382692984 976326944 651052863 69309930 858808312 445864522 400678826 136938676 433378246 424392045 171284774 857384358 635210135 184940761 472519298 75747010 809475389 813706309 175823644 684071286 784338116 622838588 709228335 940948547 1020554479 712008495 712128269 175069056 446103836 932449686 166409613 632479899 863140876 186870653 737134921 159710732 887046589 434934389 975974171 274530257 607116886 967810211 314281770 595541850 993520037 228729985 491089896 238394827 800756911 1000880877 506526217 80617798 1052453704 446166086 6029903 539564351 1046194451 64820477 611174671 443731149 47366343 784998573 899287229 1062766614 209442948 27505189 996728952 895409859 424373667 78175948 48933479 254013695 669783168 260142851 910740777 199533921 562301073 770168215 467743530 126517073 38206042 980171807 200816163 996961995 333659177 667156114 5407665 645041650 1011890052 70844648 126492378 257023710 206656157 817708810 342815473 751835108 884889551 249795203 424577819 813272834 516044631 325738483 77934563 418504397 652328940 725888190 342792914 663760940 11447824 612458705 610952472 64656191 284948013 513764288 565378051 764544328 710240803 557131938 816762189 282115868 229558623 127241006 385130878 684746185 719140029 91925295 518558128 100114049 530055047 926629437 683269079 915420783 767473920 928079346 100250987 836616860 167221041 129297811 154218267 1003812348 144388628 843202345 305407421 194452532 882990434 70142997 949975305 665008977 360722873 882565280 412945990 765142472 695525505 61521769 748718393 742564889 692791973 781094341 422064991 1022479362 392763039 615225138 854490757 1017007111 344198874 100688738 171353239 703088299 434962919 562123531 975733369 240527883 227263004 332245670 694026387 542229738 971009475 255132368 744823237 842189512 1070488060 510646309 933209436 262657389 16213640 1024916813 153952332 645395618 887348941 692985332 860411960 845839540 936795948 480146178 774787547 749773136 1061067839 946954106 62317998 690241005 124116237 766725860 370965883 259282092 96854343 494386884 902225992 97302891 460002306 53021029 1029290703 16422223 438743621 135113574 863969670 391560238 612239843 779112212 536318994 535485169 988230022 383866345 398975328 168652105 726655358 1038353209 813215250 48488936 1073185669 1056612612 514898191 990613120 745825085 629556714 530881921 749095085 552409969 560201145 266631322 1041385622 314816661 962404739 1025113243 563081176 831019872 784269952 367194129 682174516 430788983 795846451 229299025 830597879 865820606 426573545 650767916 305066853 691600892 561664431 639441810 256722905 754126535 522248266 100356180 933030794 787789021 327318466 303901729 353585794 952268936 896341848 441495074 543073410 817637312 279935414 97560558 869319345 336134710 324200919 649460142 859059133 787996049 16723058 406654708 24058420 165118559 1051417671 54646443 408431965 817665320 185367770 91219638 504092412 388661967 880897944 961592225 35176465 716424230 537247736 180922081 191747817 147738463 874986945 811565853 56331153 441146098 598278589 495805857 194392657 1037367966 416297512 930680128 726267568 952986505 255965180 509411477 83560033 394283168 601722704 517492947 480500698 991564459 904746915 387097385 1014507535 368859481 174901629 952493994 891560438 631664610 1069330333 1031243058 427284520 823059275 288634910 84869982 51075221 800880952 417535143 153913872 375491328 1026252299 1007529338 238232771 277544824 135171949 908547443 1033322709 268801640 851564952 599905518 1035774847 745945983 630522786 291939455 1024104663 26081761 255892532 311204916 707761037 91797866 350710225 254245547 532310848 567619156 650049415 798256234 498327672 838199815 89868176 445461523 695974105 651891918 495013832 134696947 462925827 80442359 315606996 585797873 960276689 325744878 144941407 56651857 1006291131 741885487 1007445828 607931249 551811707 317245868 319455672 155144551 538701206 531608616 395430496 1007191369 983697408 859156988 162842481 243336417 826727261 888846823 150046799 407538894 579977443 105644875 433860158 416045406 992472970 458194602 698889398 378901158 1062308459 628792039 980883360 144730020 451075374 987717924 758612044 478083118 147311628 121339262 33849872 1058516366 493429058 437886038 976940564 3523645 290831656 791444140 517515891 166228067 441771121 302914556 518240794 792903221 677608639 976029863 225837182 587449030 341473028 458215628 26471416 684392537 302792599 754575312 661301291 721791680 577542248 651564082 548991841 370260016 2650006 746015827 324214370 367125613 23697896 285669872 200407046 872748862 202761302 642957653 532072898 76280596 112409494 537797516 736357348 1050621498 836449205 403449945 574942745 800233018 998653854 396028489 1016497796 687280139 46465220 168157411 868161622 676955662 367035933 537488300 832675515 241697147 751717306 550176467 516940992 721188197 687378198 249498118 746686186 17869708 558779737 820108534 932581012 734807532 65275764 188959249 138732975 15024481 957809986 506134446 23330993 54385067 329421799 62254408 196630784 695513499 262774856 814547656 753905880 279629096 646163440 623742404 1016454325 99175455 1028437482 982696038 30266819 237399664 704183738 343123827 690359817 284379722 215440186 6572963 884272291 791205902 916597083 307976989 298453794 130745432 230631550 417694794 918898167 265262417 667555906 824026647 263249748 829258667 824749780 764556910 971726481 791008848 23618421 1066043596 883902559 978913523 276378615 36854826 47685368 909928159 456893615 1016879561 297419982 849296827 22741537 925481119 358017326 290388941 476109756 300056086 801800223 542056112 701984172 1029180116 367697793 134668762 185974230 6315234 284481402 821378250 1071214931 267780212 117205496 634132166 733589208 549883016 1037635058 218329448 148768921 415823862 778281842 635018145 218980350 788497553 88998649 313509068 30039128 885309245 412297159 409648859 471417189 109294573 589324167 472725734 909759648 48785263 1069341309 191792720 162983249 958454327 879915176 962156931 796343374 273015836 899366131 132049426 1035544715 921059101 530594680 1037366280 363476727 118488882 297353180 1071961143 150377822 800682167 331170011 176402920 737666463 589464020 402393537 952709009 963211872 965584106 982890592 802524621 507930921 134601146 363448195 872526974 184987940 1031666893 663240784 913448472 919061562 595226194 648932756 366118959 920919187 442705534 208742354 222149640 331332495 889723097 127651258 586269228 226478734 742904623 729534508 921273432 906594013 100377704 28547109 1047785594 439591698 485199495 647591799 962560330 47894477 840441169 434112504 952930622 387781226 810564585 474440449 708197501 634157196 347770678 763180482 382546409 1060585570 985739393 866056101 553538076 352428239 124809664 404713424 248838949 1068270959 433393345 621766723 548172979 14503150 811911866 335397951 957134221 196994188 928798039 373426354 1018415719 392511454 717390356 132304534 937575751 753799578 660425456 524782916 167372910 806764118 55483706 879584090 790263832 661775813 35081803 834015239 875836948 800545867 614355932 620456014 859779494 876390299 16642868 275636786 72677603 619059583 711681476 308939474 225991395 548943866 319273680 3161244 368268917 988675478 526428485 901469856 1771092 25802012 596423507 78376283 660933442 199747976 776587553 685222937 560291992 380071332 702509471 90318633 456885737 29163718 92902091 315981733 425905506 69079105 325400915 481132725 528284170 392936057 565570634 465488337 673214032 783423736 887031944 348284479 45576096 579705005 352419093 927683625 43729295 97667904 619605417 709036143 301867894 11069660 1014974398 990686895 630671905 536779935 832445419 584190432 919710590 1046077348 544276836 116095020 685382893 153073636 974418566 566490289 279893584 937442208 78608834 113514492 180379405 455791920 309573685 380222216 662987642 511171667 933732603 16401038 174501965 244287819 193696999 230648355 609769806 579096452 696790698 271466150 624288650 433062336 764976284 179449733 221989988 983532926 908980088 754902154 496396948 890856338 764138914 613260690 115865653 150420716 68433429 691074522 805316687 59077768 405592292 330747742 131921548 162034217 591495767 54358995 999226684 143133255 6893282 425798183 823672134 519426408 260077117 942355969 244709816 101694338 926821126 22096918 786318732 682831472 288197855 679512541 795348441 819261529 649646080 57347618 894533106 933911158 1049566024 262622441 41703925 868832601 636238835 588825095 356428659 303319716 322017111 806902611 917175347 1009910966 1060506742 195240657 237791098 997938622 77440610 245873293 171257591 190956541 864586461 450262086 323304277 490740267 20416274 703429355 16422810 748879310 863836543 464914489 970254793 116058015 386997720 171569957 941819082 98387126 1027118508 484930853 716891002 904714625 885871133 661749040 70085861 3649980 830390911 213833425 858094421 352846972 475474747 130052689 664984590 1067148198 505479090 73675183 357982965 586907023 825492695 546869654 432205516 480182769 458950439 31733151 439113234 218669251 526995853 701626648 631541167 208928568 408077095 415386786 176959796 222779676 42170930 1070860448 442353224 741977745 357150553 594655421 1036119802 5745947 713574611 245785565 1053390916 52524160 228929098 972837160 301711638 551506851 211796666 628546072 213853876 893338839 3942640 717951935 515944069 1020504304 1067196940 365166117 946215423 329608380 508535279 96310988 591574786 199453441 304538184 242920516 657803341 243401040 139943340 95505191 996692129 204046258 561112283 679786401 89413912 1031326180 171292136 734471183 896567934 47919650 120840029 891845747 469583505 569669705 414918809 461338504 182399033 1014815875 453022872 881517722 548934871 352263243 381001392 710001293 963077877 52820375 916997397 10984269 252617516 856565164 1012469707 271520961 677018965 629554867 788198469 851434273 124347076 272946399 466839961 628138498 882864934 775654590 466133442 249042837 1064801676 1041065705 742438711 963181478 589981990 841239424 737671879 456348657 134120901 4003382 497584390 1031018893 420481421 996463099 12905022 967225876 419701623 899326405 313580956 543545594 922750556 407961483 802295558 892337025 301293228 921620525 328061509 283587744 144459170 450622322 912495527 69552055 555212319 1013971654 351496919 697930004 666834918 669754836 1013798996 1032665675 236200173 58898715 648548030 457939317 224961071 266563439 297943803 356512081 732011221 392812085 116257208 157818813 334656005 814462555 154149281 478624831 94227090 825185323 987567423 831651291 491663907 800400658 701569685 596367272 554733841 878337215 484505099 876827750 203124720 97568975 1048446415 521804386 753942665 830775899 729093752 218597841 1034097535 529794506 1072483665 848751153 741175457 87512348 672544285 575817264 979623849 867906405 166755136 816570754 583382430 968264445 699221217 436339718 124875322 914358946 339440619 333354442 367372975 432616842 447317992 551458744 587803470 169573911 347328452 926932781 793151588 844115551 1032580080 771237326 45754219 501235656 851815958 159104773 773810859 58496841 437495437 441298073 266563502 193645287 1018105629 121937554 876463271 226960909 340232815 60923584 894641623 480477042 921686539 897737264 773586496 489180416 100326219 677827364 1061114088 586197306 493958923 832125054 995368206 602874569 706636129 665356204 747018619 629851730 360275046 783197682 566671614 291208355 592911744 73141889 952323288 256180069 223660227 648288497 72673810 561063816 816188071 698809690 544615837 707898 403565655 108300196 235383231 960073467 914800312 797641089 528781350 355416321 278075982 1010044596 114532805 1002903279 1056751106 602976282 960287484 657356166 787710073 85204799 249457454 525771793 658083428 748805398 895769538 749525880 944738631 425022867 807804883 303255060 507369947 876156498 118072052 810398087 421182341 905894050 404673048 553522081 887473347 486965780 957153365 705750935 383654323 113315014 998572646 41446312 827726029 657008135 498623775 645725024 1039400034 803045906 612112751 45878423 163573692 996286324 288817415 844160607 441525133 359695197 754168557 1244553 269344312 744477181 852543151 239697671 671037722 819491346 607290320 212179286 265541999 394075238 358207223 890962439 793761527 352795981 83428501 795121395 544032622 1003674978 1008979887 101559511 257814956 969013070 479379109 781617734 304420814 561868541 453103042 758344848 189192973 241619076 995209764 773451042 804850292 730130526 1008430060 148245100 663683694 874151022 909867256 84942832 61564573 443242498 177056953 1564552 584047564 504626226 65428272 1028512095 161039227 586491158 628752133 996689219 350446497 647050459 631954789 150819545 763266568 542945673 874038326 202297849 494039437 1016064635 733834569 46047468 955556713 330314389 704177107 940720183 331483341 383497264 503815322 775739328 1072719518 709827758 861589394 1014939746 1036120938 694413987 135442200 848188811 63573397 347233978 465516914 359125920 470115370 1005675155 739653658 1030404584 1063822508 668383057 917265572 881367595 141117836 124644191 556067297 1056944017 483585085 540675540 349165040 356971483 667875298 921362449 590332665 122427349 602631359 69328886 710734886 251749220 276231362 504072929 863778160 609749723 781004854 898651421 535163571 869798761 876842776 368436844 839378011 844469751 735605659 819334370 760907203 416969698 145634613 222694585 1010348195 823533323 962952736 532719004 1046603072 883681064 330933281 364758919 157371119 123408286 463850481 550391722 75326125 347271680 328167578 366460498 729439294 109583921 494730271 687989786 586016957 399612100 275730071 873166053 517396758 74725762 52290113 391223009 373266313 330869448 950591795 667643670 1022071366 176552394 474672285 587634432 447946557 117042810 95351223 23449389 849895832 673371701 748213024 479297948 456989299 444029332 564114496 21931830 194977359 649617984 861409493 1063392174 1029836317 683400269 171572929 409402085 110358360 20184536 713669336 1018417384 357424873 9147630 856689324 26951507 78830528 664142501 793965089 500896467 964609866 902037932 942624093 65182422 690415785 947827086 308118430 295888491 98693140 932854042 157527161 466604452 899901073 27081932 807296421 561241116 749113041 623259880 547853646 365359322 526002689 873892203 258409492 792795428 266028230 131763951 276042296 256883356 718680090 233607765 866178594 807999510 411734990 306762426 248309719 816734383 724033148 1004484430 301710101 228890885 704294443 405752924 762629249 573503812 503701746 935062700 187806929 1018107567 90313068 421169273 820986163 436276566 1064778461 997890898 173744022 44763224 212982643 995047667 453620402 189137412 703233601 1014515094 25716319 1058840155 997913208 993459624 377283752 264479956 158758059 705611427 647736994 531436725 428005430 483287974 32275971 673370445 828273208 840281799 486412704 334410914 983793737 644045930 273651184 1062915629 882549964 120985798 394898167 889245891 779084079 402978090 283119411 226372220 842278119 56841770 342349439 316607179 764881449 827950485 483102781 343755125 542781407 940959032 291388748 263016780 760360406 869202086 928782104 140950206 843878588 53970650 372573567 206233772 347187932 824702481 242738577 744405638 887868840 191151434 574910237 673688152 875814732 556541988 816325962 1025314091 339895595 413113866 87670769 335098349 964437317 945542214 9687828 383019625 635789900 798419585 706766707 583322884 788217165 105932235 314704390 298459482 762199737 530046105 1004566864 58704356 445894881 9857356 837620130 278253744 850543757 867776667 910500198 701821765 1042688363 837010626 923676110 927198452 416387754 682389771 902296698 520128246 906232097 671797611 737449022 639547085 220623923 749682442 145209252 1037022873 799555756 220361059 53483957 308669759 110620326 335775481 63983342 829069627 888803015 247714808 245526108 951953500 547921920 234036219 487482941 348601527 663495408 249350991 959770548 444318852 94125787 476454828 907526429 916006812 371725678 1039432383 141347144 13965955 296725608 617031379 986031810 1066109233 457744468 165842577 454694363 343267932 277994760 700854226 561811671 63857467 848240837 408470925 58172312 98493464 664700003 836702777 836001829 355874101 157619737 693128243 432193832 357470932 422191784 573297364 368420096 376048370 948888306 470761601 110944270 1024339135 494867891 989646899 469509360 31681606 999194511 273244160 937397889 353209639 917090271 1064124139 81791043 363629584 622581279 978607944 884798736 694816717 986671070 783093259 46486001 521365367 835870013 842237684 566329856 262289950 242189839 1054108264 822326172 1014025531 875926122 718616906 161473380 9758661 255072784 389391530 15126140 329891857 465189931 847350831 965573586 866097176 903284288 489632305 768036129 352784856 369318319 758288419 1010540125 1029246648 372238592 38308913 690862134 256794826 695121258 655718543 353302305 363053311 404231257 122261458 315797595 598521787 867796001 879983926 834431929 806173234 760148748 760088346 221446666 134751614 800876296 643996930 532356406 457655616 388181797 644635286 891706975 505630980 734209795 96960654 839468615 932131995 263498881 193511106 329495798 983580918 863233999 384490987 326213694 246637986 766917443 203292261 709013755 822287306 304396113 954385741 802719063 904817347 208779638 973995674 983899638 546402724 250727875 379667706 218905431 632340762 133007690 262257914 876547582 818458958 248238794 1030253680 265767891 184897250 624380960 703022143 660696773 1035706687 1071901080 107324238 44119269 588186894 69023857 213158542 442312618 578831076 277318390 727520980 1011004287 869515691 570871433 184223348 508172263 344479075 402889742 127431092 789631197 886665796 736193613 713458784 948462001 140193060 614158228 257498212 1033811570 399930605 536208302 1019512116 178163523 266478600 664973752 297940386 450972758 940202458 926200602 1044592675 384523407 1040598084 70522699 748545678 1043852020 466914603 360440759 111223788 470163734 522545356 94308655 915412977 430999365 431610581 280581997 873033297 813498135 743917007 922331375 606421378 235363900 714484739 523984201 695899463 841760880 763078991 312925077 903899924 195864774 132911273 298877285 857598306 40930832 1235696 7190177 884097625 86723488 884864177 497318583 791451459 307947652 436456276 199912319 815888519 817957251 980080070 343097601 66334909 1026862953 1012626807 873344744 291741856 1021825779 852758527 433203954 189495288 465183037 252226534 467907124 613190353 668687306 346432670 1032586625 727206454 337740550 749958031 961943425 588020401 337382530 897578302 1024175411 39694829 1013063557 1026067797 1036978259 318397791 824297096 450147713 415624483 884278446 939146149 824182344 655516328 631393925 201479565 792104525 1031918807 985569483 819931388 289851747 858970248 653824867 343743847 510763329 154462243 770282390 310320318 688676824 218591298 106774037 755693048 60143333 747730122 224658659 30520395 335836260 96184886 447797891 414571288 562363685 237013846 661375667 447914589 213895918 539942456 808389397 1062324926 315729444 836739663 389432653 885437923 759228987 873345390 475049990 728642189 692776189 335521395 975219465 267218567 885540835 390119116 404146495 174239197 161392933 417767754 867017606 463606745 307205931 231437229 376557923 672354602 88072718 370915145 672881240 881742447 524511326 936661711 1007161870 738694250 532169476 309331792 92689828 851949780 819979537 661191162 1053976023 893134994 37699945 429329586 236915389 166794766 819538399 181783066 4583790 1019424082 498903992 1055920216 999561968 869283415 254622603 55061107 390627184 167568907 654990139 152839376 349777420 657787789 264248671 119194565 13536245 868139767 273926437 266635445 577085491 101014908 89747922 130660114 895649321 260328465 145859182 504535976 392420373 249653064 997276619 599147478 16715636 595635975 393337192 664648601 646199503 247906820 652049150 783623174 308456721 340361827 1040927746 916039491 1026267046 170584680 108701619 399633879 619710913 81155229 397315218 634831595 395453600 872793143 380788865 231217617 1022498187 867213774 705088455 641491960 563021020 779503470 815194928 683801472 156171825 436216843 525103579 324986822 567616289 277548124 237471389 875563852 578110156 728710932 136967204 731481363 858303609 221176064 126912031 644496359 103730744 296514020 826260748 920069108 840519903 1028287975 884915246 588607456 236498287 796892981 448810834 841793266 165180904 295049797 109587741 588820931 657319398 185983156 750652236 963110265 893313617 697624449 424893474 395371970 792669631 856248049 404009383 388643522 649329514 186165718 532211543 984276958 913559194 691452428 214004403 684489815 89074718 795729575 578825052 1058734743 1010966895 603097983 94660382 1012701462 820789833 588732914 60029518 939314512 243671307 426010145 940996643 796932196 845251501 923900078 309335442 519611860 632367803 43702195 1005352374 184876132 427937212 684196794 204104233 340370547 237045768 768976517 1010747944 960418496 989072018 799119575 307417210 642836730 919237895 345342375 993774511 1010510256 666116344 683319999 83364098 728093118 854887485 578592475 758003389 377781494 938731964 20997555 807466750 549895262 993359111 275589519 108373200 290057988 452963097 299950354 355862021 777038126 1040668357 211646195 310046315 218510993 916757054 81576852 594425218 812409809 986486020 722794157 1054293695 614155549 348871807 376037544 246685611 245089563 307160203 5201498 528832660 398304302 983374100 108474007 978047201 818486618 592962566 981037666 548015800 752310428 778717371 1061763658 1061105325 590470392 40579678 149998972 788713826 1029015177 626521747 150167900 458836499 945895330 865651642 51971110 641338893 570811694 372075712 817685300 315148645 608202494 334509376 894661349 799101525 382350231 467855281 762631954 1039637448 660471727 148663250 285068765 227798202 273599233 354639833 1046681834 708302616 336028845 919235985 701637660 78289878 399463509 204712432 612371156 756466168 709209100 884276846 197822389 744191829 1073636944 366810856 394871298 1060586605 207888624 69289522 595380163 178512596 84396825 47612125 168772564 71658134 943998211 122360761 210769728 967620910 744418196 68653898 362239432 446777453 974894235 160149019 584034037 35488135 700908893 186985066 230582349 156046270 769343030 996083983 926701346 855372203 601931180 280817529 203330775 777591680 899832600 743815782 96418511 213630316 1004859068 282587620 879001679 438992827 209115690 423431919 825428971 904333656 825411904 451984397 1019372682 267693600 476679288 543501700 650248341 625484137 431302040 937973584 81592667 579145062 681959513 577749959 1064474301 384069350 222940273 1064580280 503078000 151488980 558953782 577599 1063098785 297556620 453154127 372465501 789580540 641559865 354269525 609795530 114643464 38152061 264783900 420674027 377819712 486464406 573524352 444142943 922881721 624003974 358371202 329386715 94124427 793686453 311383979 292499375 1003963732 727235087 139698374 564545968 971088899 71465590 415815303 397066276 193175263 1045658398 921293907 677417340 55342155 441951945 141766588 981960600 168866849 955478585 705731329 646111138 695291883 307140707 129660967 772777152 935214004 236161450 855921445 704299871 402607206 453396543 506548174 142117453 601246913 1038572899 521953510 396810418 512368599 712577995 358565551 456774253 124486506 686680216 630642661 60929249 928675165 358920357 288544836 519001419 304139865 745361665 848007673 511618398 724872789 672324588 199432100 458725853 649480795 943660786 457972889 782117036 23748191 579276094 652618407 678833398 132823290 115535450 418696723 466036385 817203659 925057597 4857768 848249986 1034745100 737069298 1014681909 1052889157 1013994241 719011109 216262130 200860850 523170140 257332006 432020336 620800578 613174977 852539492 652702091 723333656 720605729 63323633 998286449 308898770 115564088 671365288 215210187 272511457 860919546 70630383 839821709 6423043 1022813813 34654786 468490555 16450493 613945103 353815762 1064677939 446899915 430255438 430274628 577640569 569906980 506603205 173769639 973917597 718613181 913630131 441537445 17425991 608128963 200019361 386549098 867473854 1005519786 136701447 977715459 806192119 702808953 350252952 441309647 637441989 1018924207 933380326 981395944 609090697 1064721617 201317148 817644485 264843366 679561299 890701107 42915591 189847528 967627082 150304019 430554850 286347487 99232794 711702775 521712184 422878090 653237025 567588207 380070681 674884147 261937048 944669083 815434698 760293298 592881022 429647157 296082551 1024259561 135332315 1039229515 440436019 407688299 769351779 68190197 529813222 410259435 645592503 322900685 728245209 319607177 800413143 411817978 320847299 993837917 611695567 875494683 344510964 274996145 268097716 622525833 207127852 1073343742 818395000 703310910 1040046680 1068424339 164266540 918235521 364615335 506658881 280145218 865277929 605118625 15254505 270484060 622409025 282731661 789183679 985551084 869715421 94051481 741919697 121991063 135241689 716460216 701719022 690003365 294932260 572706805 122887416 504568922 590049793 336696714 718640265 788029690 420810799 68744477 956376324 229480541 1007690658 770575164 290842903 856405017 491976287 635302302 878165265 29798397 899800580 1042576242 431483891 850339263 67196751 117150993 458604378 179601182 198646462 87522955 966551708 271913766 341998919 902385225 75680749 941373472 394961393 367915851 946777486 141785775 733821535 81743006 1014592288 177903866 462591160 861975519 115752693 919797046 1069194305 777599096 294922714 594740604 233513562 243740669 1003248656 939459597 755296563 698831275 704358004 217762665 47575544 773552871 955176534 961696444 603350833 980271509 197851838 159494121 872426129 450137355 94296373 385443339 239493646 1034733617 411659546 805355613 887685851 74576937 493604702 666983602 758701529 544775219 506857036 1015573448 566693918 325990581 733899209 969076859 371886995 658412692 161236074 661450270 471598535 886157000 270508175 916348248 794210719 957477001 604897926 695846703 219370734 368954880 531220976 336086391 674651337 512424086 382828858 594102434 127212220 59712092 878110653 414709826 377040666 449978315 151478084 364261811 710815711 766932546 373100478 75635680 1044955091 86541527 1047927479 849049872 980745329 911343711 875877208 249996683 133771781 218774676 1001766278 200947653 12575754 1045322846 402636507 775067609 334136312 627838760 398817768 1061084964 806506179 1039831552 638588045 904409549 1024243952 582724872 622976018 873121001 173630768 245189695 523805886 588197146 709580200 838053960 889178696 833825037 279373676 638035587 1054698617 930280946 523169356 211140398 1059875471 192047291 9039277 53600443 944335911 832185292 971023777 855938511 1017127229 673650074 377988334 17742129 130234746 427766916 1021307189 192316893 106652394 258053085 111118311 628717876 892707774 407602509 774910259 464508357 1005569999 108435006 421280893 500586847 441443216 548979023 705769863 790368288 948034245 906943391 202796528 326994821 492055463 470539802 444759631 395761826 577047065 709034526 569624271 402562551 1027601871 558705304 377284279 962955604 631549399 211669714 452150506 565646315 856293004 832583344 171552256 893686171 528473556 740950099 266033563 561306861 536887228 390954355 929341840 960212037 181215340 969776912 584137056 258968190 908525861 1061885880 454265683 1014129925 430850762 534478644 343704976 117161763 232045266 428886599 612788128 902641500 1040119652 21321344 897668515 214482430 570875124 961839450 498912826 71089158 1047569971 285789051 641463030 909484317 790006160 105115474 245204496 234373515 344562023 73855344 319960357 1032040575 59668845 594262380 788739019 392544682 709305721 82013620 646892371 834528919 141652400 231338112 74135180 554160183 720173643 999528329 901850797 306836211 976580046 1067577866 48049851 393793008 778242982 876901651 18572615 820766933 852877157 531711820 28295107 704153478 935020280 66775544 574738802 1070586031 492341307 402319962 583402517 397888977 671089703 1008112235 950883548 792294925 565336171 1060367062 815487657 202016130 130406832 33772307 734416034 81701173 1031918726 759861191 85761799 41976570 84388809 439130993 900369186 884356247 517451487 636996879 146965516 878223176 331512210 705253446 469820321 531330899 512716164 765744202 84981416 490642862 803674361 1036433381 545687685 352369151 679956542 428211726 80240031 390400085 546469415 591565061 806953131 609789415 909569394 10513827 810396346 908818537 403633261 462112933 571327398 29055694 684548716 162451981 872383535 79521890 425581054 45231799 288978105 518952370 167350781 760168863 226415896 438198554 508685043 196790127 74856556 633921951 120735759 729150407 934254891 434879360 162666007 426046504 711720978 309892462 869637897 543749290 936284648 390909851 713905636 190335260 1026401474 363326959 835511792 49213531 313762580 238353328 451423416 291262105 896840469 951915678 687675728 188488894 36331430 41791635 152922259 227001910 527570436 452487998 42705846 894304172 969511732 946153780 207054926 380748048 448606120 513108401 61627287 995266530 660357324 962757407 306737749 272849679 973743826 1050640024 750250498 129748427 441778510 630505804 1034767023 542918425 236737911 398103277 108461681 891134652 549013578 993770700 355491512 201318450 663215798 947777647 1009837235 418896503 653773789 368613738 473180695 120401806 589575297 970776921 181338006 184112918 243948857 481604624 375118453 693078503 484949198 287518115 990723415 656471981 53147842 1040642707 528211311 327149006 664432542 443599651 584121553 456409356 511230933 470708123 873979221 618053880 287682575 854338997 252509729 142156719 828980561 970184479 960426666 1019663739 967450137 276534898 838896020 1028934790 19629643 870991408 352275253 122054982 113946120 544722565 429043735 703453106 260581514 247005222 416025777 340515220 131601717 487208546 37732988 319334719 447931930 598926677 98413989 411989329 562505065 511892362 687620672 960919376 594519163 981910788 250465844 256920094 156973506 702652114 162117299 504493771 406511129 236103466 895355904 1011543865 364346688 430746256 683687949 267384076 838066578 1047590622 346945864 330922530 387228070 933397257 53029293 407143168 832352109 362910308 251819465 510704782 543608029 427957146 228721714 1065704563 902534729 514494621 809359699 333067942 60138497 100519879 135757372 818824709 416892397 698911606 84507701 126476208 33944165 324298512 795896548 310991375 36347867 467489616 876125848 1010221250 923544184 1008507869 246864242 825593013 27553600 591395348 580579413 347048512 698725262 719061192 511722742 44138264 360578111 818789629 209763378 609879302 956446908 139083277 634804413 293279845 1004507042 714695978 855473537 232357204 987533403 623512689 282205436 592692584 387328950 503421155 710584858 865243742 740495028 35208118 388964228 910265124 666055270 867703434 534471735 1062020952 1045119231 697987258 474837689 108968324 509111666 1029227361 381420336 1012644545 308052226 845572450 507376170 657869174 414135304 685478676 31413898 1032210957 706094635 104264494 703860256 968889981 987358912 713973433 606309509 226856680 68134659 937362219 117945454 587211134 684342366 814096497 1013105208 876246957 384982490 163339126 525315920 375069932 612685919 661335896 58976496 698682744 324853901 226500629 548902225 903397398 250829301 899898022 226476754 95464038 918999477 736980943 99275848 981133689 1009919301 132592100 193392496 967604998 1030967866 89898317 115417726 550448788 241166561 687301190 975580841 1061329377 1021210292 1029655756 941250668 6929410 736519734 975677026 821824054 257611775 856496781 500124593 421864823 1058757268 937227023 801290920 702707868 413566620 496820203 459365773 494864856 126169265 100261648 51538671 980714346 784244325 1051561685 193407297 1069517669 254576810 275905650 831726644 809267861 970626185 113347032 332393413 652735520 260379489 327988248 341088241 543309903 369366608 92412644 838959228 983194916 760245384 456823933 1002614904 1039498688 633458913 129236220 379212748 931340948 1036186531 188823644 438167652 468450134 726991800 602471191 598822831 296980701 473537201 912600164 36839993 684920187 435058573 335130537 674135725 202901355 867242915 638846187 119371880 715469874 1050245025 689173262 805196335 74236121 344425687 955553135 970428057 802992630 577145666 419626193 850659324 549927199 916692101 958329187 86333940 796915799 139650894 828079521 800700101 791339094 984571850 394628782 952641504 110768972 778223542 1073559844 493865752 546738508 855472788 472737096 573438294 213517409 73605457 602771512 217549507 494020182 83333930 392489306 111904255 842626189 1037286540 881664226 335625379 220890675 775122641 203376243 584357120 937846257 418797261 411267691 818305551 644416217 743632976 537284545 830545174 1058781356 278447101 217142068 253502609 391381227 736656380 264019397 689924787 1008309461 395331843 356771207 657705636 279208094 1024373283 397244019 343438318 272128908 674695359 475782513 950082609 345622859 835314111 619827079 678311005 554978459 935890371 782027699 109141831 720467899 562899634 790975086 285344487 786955246 285890983 896289624 494218015 624893236 113045089 507010227 945864848 363439117 253851236 389506357 282069202 411673627 97053664 217033841 252444471 237320471 110095851 537319223 1040065762 352062278 242950614 93455987 309635309 264524548 165797413 672289501 299688941 104657464 648835804 302732827 611282579 333581272 833242208 378818477 822126844 752405973 953790294 22759978 24438465 59998591 774332173 671372387 266038944 313483485 996172089 670161349 964358402 790536084 280646992 676378774 851912141 464962486 427481128 485214491 366878554 357209517 390409947 819660095 1049305115 313914663 772304670 896378260 732706458 221613078 1070953037 682771821 477974071 387972263 118362809 265898277 472501794 461279395 787425220 254691005 937833495 214567632 328387791 148240542 220451008 505538460 81068023 18820913 645709055 891348996 963690539 493770855 765236458 706105665 145058715 757579632 361042997 896240435 654008740 591678534 773130272 307409876 705951096 80185414 1037168964 687719922 631559413 29117159 113779138 957702998 656652432 898689854 69721528 1040771761 594023452 402989507 908487994 740309315 806753263 427139878 746526929 769928789 805856375 256533386 169316785 347103492 94684316 512537969 274821125 776144343 607246499 115631269 515715336 406963010 894760348 849002924 210684665 1049132303 794071518 931420714 822926317 690233684 302499469 623866794 488028399 197369126 929840215 288112121 700200831 508288814 1033688439 581996879 301801827 92483036 434868717 457542242 864207503 881096932 1030017033 537831364 798087027 726178573 744055797 766139616 446435116 302831315 539799446 243992336 608577014 226046737 89461396 544091022 437564008 428825671 976259572 664503853 422578338 424876107 38199123 672303670 114192936 716132206 432908840 81616678 779357967 123780607 228395396 519244720 373019786 702794333 720339163 616743037 1065534532 695607493 404850508 25471339 226262735 970833812 472670079 399121573 187989092 157003213 639110242 472322817 675189248 334774014 31043098 251582241 983249648 291597973 145537800 376837571 145835729 533721146 571895265 825866508 592448460 685911701 2881708 515354656 536389758 115211366 545385994 53415047 371723944 398275879 374821406 527610778 545090153 1038962037 85697963 970784559 398111532 557513465 414705889 1023610230 218847641 554779405 385409515 864635275 166023128 752713494 269951149 33597477 293594062 1016907667 14653862 1065588765 263026328 1056434818 718775459 924935503 650148 423728936 616562558 59417975 403990802 415726232 359940571 911247778 846053549 892615360 732603818 475880312 955061697 401086176 530501257 728749294 668722749 379066430 116855727 1018281999 785033595 281828981 351247950 282483503 591829151 934174140 1039001891 541582538 214762723 963870424 180983735 246767942 640358049 422129449 451056848 810437656 566895173 116252440 560466435 209228754 279522791 501224175 313292217 864463038 23854346 468990595 521222771 538099594 679312942 999092954 978774837 590010722 1060655609 198848263 1067698855 136904218 757806483 357918919 466381052 1060064516 51420079 559445782 650834052 1012012774 239386168 784270959 684608965 675306968 1058874701 781500864 559521076 586891421 813946802 303014846 793688114 823325358 310335873 698756844 414752748 964793569 648975685 961807085 1029944003 482755859 923837716 638600054 910542124 710186674 491983635 745459316 506769007 479756826 812098511 679882802 1011438806 505573343 11021786 1016600345 676748381 643958434 450391936 124752247 59980025 137743580 191961618 78012125 1045760731 450678962 762310837 3826067 250568009 897132343 142754084 243019027 346518077 1003712581 964387374 811798600 1008235889 961962928 645707344 476501506 525972423 459936967 607096910 50140181 929984648 94695218 432669717 828599445 590675298 760832276 796871886 272833341 472238198 1011148640 445046147 851486256 791380006 544258104 829933657 240758967 44251697 790613427 770269251 137418880 798314748 1058972322 1019806529 966670855 415066947 1035180928 75858940 779747961 127467616 92218824 93191267 875122286 1048774833 547825600 622627885 397047248 526121218 1047218033 1009746398 630788185 692556397 222628964 663117687 878330006 131642763 627191947 201396959 130750144 748815878 967269613 361420349 488340324 773604543 517115861 559066064 872984705 601513054 466630794 668596473 874989835 591670716 39640020 762549750 86242993 666320450 816387171 685498035 645775073 383132487 408721455 89051262 794979840 507671704 297287611 190211305 478444141 329572237 852023630 493104126 562368047 657375925 327445869 886295819 754355255 489796297 504155397 1001278801 306887412 308730905 976966672 468557720 215785671 966909532 656503990 61770776 629491964 530057342 591333083 853223661 375486136 231048835 459122290 595887910 780383786 335563257 526965507 895865250 28163237 68951845 860794943 223900408 925249057 1072550641 617945320 867107946 512779101 437391134 631044988 217306833 28078795 890886192 450702438 433907068 632096817 854554855 552935306 808576215 527002050 767825093 974835988 799209285 809152977 881071738 761346143 350258586 847329830 981320605 985919955 564221351 654091086 1071345026 661297458 889712430 825317207 244075752 378003408 628541637 793187570 697638781 342295241 86866762 1045468873 166390046 599883663 475105088 111154286 579733818 704188388 358993119 683751672 385374950 942448533 827335209 722273958 205521205 1066041297 888762431 855991198 851410828 346556852 883271534 905837250 731050975 362483484 742968042 618672447 997854902 833796700 278177318 327020960 10257023 910165387 26020679 167397125 851488039 841786514 669529359 1067475760 5581949 164012119 572382012 750593770 718464729 817885461 746265768 103979052 820050030 13437790 952955355 670674591 277594235 578746083 1030450055 861698854 370864309 768881272 765149310 654565744 907961400 127862001 393391911 331191079 168246767 224074031 386823870 641888100 1025980266 344394136 480882589 348469129 828325572 810207252 890491360 567376004 876293972 719666822 171242188 670763966 86788667 325809465 13757104 154551296 823611899 981853912 75123888 625425925 739696439 289839119 39917422 757474563 785474559 75152971 800422129 30196704 4675101 618796082 300995649 468512184 989941286 796143839 1047751669 447157319 378763833 974323498 309319937 98507124 831471480 1003036294 485439710 930565704 812158383 949643645 1012555856 226559181 333578630 593308936 650248912 552104994 485485205 497058640 929993015 218084422 289078134 1017074880 448031893 705971079 991810333 709635073 385955883 349940437 819454792 66820750 85249556 157249754 643469548 418947711 468840959 106884202 175696883 438332524 1030589309 610375157 9589310 201883998 789112533 705773220 66962937 26098112 472812008 645378152 615443359 811013317 262750843 202891016 461503596 803542106 528278492 240179039 319708889 832661673 1000703604 430737024 807451851 407761571 101929805 147745391 1048797084 923744788 638628742 782217548 53408222 441478371 954625768 352242664 175192835 587146019 266101782 164713649 953258388 539354170 40388666 214212777 143991093 71852603 43310541 9415786 497031994 140640016 158899572 17731810 520189715 420179499 641239393 761510111 970876453 616653117 300662138 311837823 362266207 311467175 30525642 975957626 402240813 603330892 684483504 261763004 290046863 751656374 164530501 979700353 430915229 125831209 421131189 501766077 474969261 570077716 882751088 173932937 358895327 143806883 443377044 1019513522 675866712 463026704 755021650 246723842 362690361 237380523 375625486 911818148 600436314 863305316 163046813 647137112 546963787 872143053 755819381 301976691 3798176 947781031 52256377 223012819 123365676 549283734 594309512 313811908 892987427 87411670 1037997254 815068069 479432535 448166658 313480974 691730878 616287471 432863753 369955377 320313326 179590689 973556528 19746154 780848073 309537516 632000510 268807054 877168056 447641655 599054944 1037106145 1033909929 1015080863 366705605 92220914 272694005 640175870 856881619 443503192 876955941 546741521 322212619 489329338 876433503 82359585 670409559 378096752 769081306 837600233 1070483962 323878999 519498097 29536750 244039525 915205094 1002311654 574053887 795303498 613427761 636476792 71086159 872273708 76960246 13998859 21670992 786462946 88501543 1019061724 757240054 820373185 191456515 640320228 984687716 498282508 607612767 523644572 254838548 996658895 648185178 341109001 532426172 1024330892 494517243 873189321 60972785 168687253 201211625 524825408 915516760 1031970920 220048802 709028905 493815692 967352525 895786972 712895420 837161387 1069930164 443042365 951392236 278432573 763145971 1036229829 751727511 665139368 461431625 34946048 225426686 900299889 546301980 447836025 693754406 1055998929 330800158 168839872 618725297 320433519 990826499 557810248 243147634 861692880 789129772 713687792 58254867 860321672 385144603 219344485 1002957461 394283237 309726127 1010293425 1013821625 83307212 38581923 270708737 949246845 404201387 795699074 982976034 453808887 24938184 510919641 260250380 826005684 377649222 623757425 275581571 399474167 246166588 907657215 807125862 9138442 720894786 897140829 954689402 604670629 926540542 978173835 309298716 523471913 468387401 1037465773 689278506 842168726 769959855 443604259 669377989 152673523 952395095 334442236 135656287 354722480 403212432 136527494 909623926 123380575 246460978 20744224 1018113000 303539911 469402310 446424976 1022385415 395045920 1028487033 375840868 679470245 487200203 947032847 928671085 664789355 753279847 134986370 242754117 76061745 504521591 272476347 273129750 2700757 231831411 728977067 929451923 579892312 323600092 380690061 962181065 804959997 908591722 10364767 947366379 529287430 133942664 764606936 470470917 339476858 926000677 210531329 170260168 835273694 216323784 39499115 839040640 147121609 1028796547 973382042 704071795 992715180 866127885 31482128 999087354 448672161 185400385 466333461 834606492 409017446 492926366 1070296084 328579685 16653497 122242420 307256346 766755395 571522978 703924769 467458757 123145876 404310141 59509401 825222538 744598795 858859525 948669964 641598547 845535466 1032099055 1022499404 379377880 277864381 225392810 990465003 970611921 1007173041 864113364 544458395 949082442 1061528978 46955541 846342962 38938500 947600953 840929976 586733295 694791063 20665254 900794206 704901982 745605103 656321336 209600065 748535783 777454265 3720326 77658842 859659290 939820706 569679255 761293130 484174520 680079587 787838702 329153562 893354297 262011058 941763819 136181655 531767510 626959148 708714515 520857904 579635118 880941414 790246340 317677893 1062800487 304549267 705253620 678281963 634753202 582762120 874707137 616883804 562668265 969312137 856647638 643769618 119056103 911840632 174784066 428417406 596548486 337201106 966713 659084192 835879076 572390285 838934948 991571885 554997558 107548057 293373379 206543929 327698733 245163012 725944139 659392454 485597422 1019639324 787808665 144969404 643483797 287679638 143585866 730411308 394912618 640640879 332447012 102389757 875393995 104003580 522991355 120884028 185103174 915693646 385898839 635609390 1033259193 50482938 878930753 193517199 584945224 181929807 75898677 144544513 538832433 484802027 818070771 728276849 420326987 487543764 295394507 221300197 850092735 211622030 25759295 1037170264 351398883 226683773 417078882 416750800 128257475 942901045 1030228197 838060074 548627328 191409178 424807617 110716159 533337745 692380692 164125447 60068734 538058556 909748110 290975976 568563097 72167099 428761995 115330497 273320395 88390355 730969921 528694987 369479639 591118513 984319882 201468816 569338869 188855317 957152376 466607942 1016415974 687761441 417021123 67993304 722845107 158315782 840555314 258284197 314921010 740514625 383006210 510251395 377207907 888197374 26443088 141092106 175195211 983341796 623527679 308311727 132710148 1057769099 696324203 435969672 744884025 228093232 713865273 728932631 1059115380 16761946 703302571 384901701 4348817 702937990 818842283 861061205 330266012 331040998 638590346 657716648 547789220 369194746 434075959 796903664 887225283 338871311 55095752 652007915 169190685 530360621 659082606 719506900 588147461 1067460820 738697314 698130401 1049869156 292749391 202467399 767651011 348980213 717074564 865163914 215066326 807564837 952830342 939581339 156624240 727394113 498063299 936563970 1039421167 344670433 958832439 607735569 998432069 556835408 329002702 905071672 280055703 537789173 387876212 409743730 658125786 6930044 58646311 464442113 756600472 788947044 785629142 564882271 129985327 511428172 999688883 272965536 39165391 609529881 496962213 807973889 110867482 785550002 319390174 660341604 1022665130 482667838 952308767 218487416 754237480 783155385 1063869264 928241669 67882835 453637412 905344402 105413182 882270420 83029589 678317074 769265672 872569653 2256075 938274642 420085941 384282394 445456094 663536542 903440615 1054996799 619775681 211550699 119876973 1024268695 669213582 987510084 886173326 176774098 1006859042 1053210630 1053569473 474457671 580737563 511794052 912090664 882838543 915169431 817970649 886533314 179632559 893710997 447689367 57910 158429129 1069363037 699515363 977647356 512241495 745924736 40220110 567148172 83578468 59088719 999851881 1044232121 725314642 889486209 666768310 39332512 223711923 684878627 379928667 389656127 877167782 875071945 302836854 838505236 441399713 781816915 722242307 602231381 1186017 616372838 786845141 850765404 446847896 684645205 954061771 392885937 11378009 522972574 813244776 568538210 795933211 643785159 437698313 53546328 722311091 646380104 723031432 497386413 1027501138 1023345142 77192363 445717520 359323930 1011185449 1016502292 109373432 63703490 93404016 861406306 270642094 1009196705 887369957 1010015155 853819969 352952532 761954202 560635810 8173050 200122468 747691997 912511020 459935079 720167101 524727190 541761298 527718077 712695469 595953431 944862003 1043129663 315339837 187384592 962790904 338623231 992494059 371091339 385692928 834169199 305618085 137140652 965722889 969229127 664958981 618736793 833129874 499715660 414439558 1028644905 980113225 489526533 586417150 283233604 494727807 359434545 999919282 842234481 844131402 132870470 319090601 705636971 908959144 64149603 624461337 1007311406 936930 560498303 1026476534 1053439548 427635396 8114394 24257101 475173172 427751413 435622634 329045830 731639459 975593846 856190003 332249436 641585880 708797235 744027596 825873682 577253244 291673405 280860030 926929250 682293497 899611159 861096989 29021544 686787027 734272035 568772745 848737792 265087086 851653914 830361476 817715959 518878670 448230030 941555028 747611965 804938121 274108506 351350262 794788147 840185031 214511250 428768503 704959428 611582581 946055037 364012550 584869800 872446274 831806194 552513309 1026169258 529667328 330177781 453038519 349263266 167249606 457096944 586689819 625849671 179489766 1008007970 564309229 614144552 108613767 62009142 108087662 37428117 210569965 854112951 611177067 286602257 904304276 1067127720 588520415 209848727 615127250 102849374 113672348 228554720 548855320 314230190 671826157 281268574 406291290 501553569 1021108866 419403428 354029205 688059461 690092593 1070689502 952464802 707773160 813868926 25556641 1070006978 889492652 1038006706 342143812 117975095 332456353 776328213 786198160 341909619 799714836 824223684 962685163 829164762 243901151 811911939 118435133 672189313 118614136 999524096 209124223 647049551 600623127 115856292 517297396 744427932 438102350 551186941 233327353 771534149 487285096 841834710 825655863 650684577 436802390 273328168 777257817 684401107 570452081 564546886 732654185 990212428 1052734497 910272138 213706733 448343771 879722994 211497143 911544668 792601952 961282659 749326351 205600120 263485580 1037541039 318203621 853176855 7199525 146704919 309731908 906821720 542796867 574263142 647547112 861773830 900847461 223718000 590709679 228436715 559587823 965406085 293871874 20327143 897503040 46058422 488453352 421890116 1056883714 19370359 792660261 556327981 323249272 755615334 287017762 106576434 196805227 432547132 563657984 38489828 156552052 354382704 772698215 649616635 743380040 429618089 242279635 30199174 355177943 418422826 786848737 868787914 833749654 536971709 12314191 836587815 686608841 778205009 168169907 91592710 962883429 355066999 614924986 362203173 748778712 304812833 909773756 494078977 625241270 498917871 1006936900 776172802 466279748 975633843 2502119 26157474 3180194 316013433 312996019 769499814 514362939 344851600 916807202 722022359 76627431 168023653 752908764 167520614 245363352 314266889 47172777 1053133034 152352385 763052901 485068486 528144147 148177766 410289896 240956903 26963161 762375053 428372338 499724972 786193547 378096184 458409136 600051886 772834630 205290252 901715932 70882095 1038660947 1061868591 280433946 673653803 363746638 970713493 598266284 733295581 521309295 660336681 292427995 405859045 160090937 135689725 937423236 356993942 833572310 356857821 448224484 333764986 550451684 43066260 431222697 657023653 218176478 841765724 138893282 243378806 229197016 306473245 826519258 137270395 289393650 670991500 327381877 358176416 341529632 373034245 364863447 269024979 109025657 760379897 341947101 275882497 281879447 1040295680 414859627 741174496 644930656 50836346 118956342 973994046 1055057276 818264858 170092862 861072827 38563843 490222320 728757511 676888793 335064585 242973315 434354565 931149460 804092604 482275171 401120746 343581316 1018256925 14556639 773507837 872319871 786767893 1052320095 286200983 371630212 113390949 142868287 787418693 352983579 481523010 116248584 871457700 644246843 221159724 209848874 718578613 688256122 698736460 643177600 341721272 211907534 245915962 36590653 886328604 174152531 309683474 345137436 314188492 766258363 127294567 390880106 3204156 554197267 842426855 926782594 798302240 71629340 937531508 82346192 197031262 974860922 1014473974 978717135 142705163 815656790 989113179 501225785 736181095 156450085 81893926 164865290 300228948 492762543 1071984549 862660329 10023330 210667901 253986755 447232560 373206283 53864848 232898947 311558670 387432121 303203096 311967956 110317143 1023202857 335361029 506147665 215814865 625993790 298866172 519891231 24724723 130326772 114714510 784843670 771556126 604300043 283458153 859022522 31309735 651971682 921960504 567606886 352403564 912004018 395194127 527303411 976315430 348530491 771886212 1056532853 1034508996 983797055 373398890 813750625 18454269 948462682 130059579 604691731 130015179 24676961 147667930 227913815 506933716 575355539 1007985128 235542859 442113284 502218239 530814143 503391348 32317207 915154017 429521001 169747843 813514036 653678729 768086003 297369113 818539749 893273519 192317171 555363107 1004956921 385791283 506984294 646937811 276174166 568805078 581939641 583026680 597877370 631467966 1012672646 561301602 651815400 310494886 1005197357 229663436 492626101 774572812 583274134 887834639 332031956 381397759 682051117 1019356843 200509166 1047344317 60134166 915821450 632640738 957047515 400788962 346656345 85688149 39273655 999994843 954088589 332534843 747550908 766100747 709774669 571441114 293050063 226496400 15115501 627156811 547080460 354235148 454166498 78802051 580401342 111791580 390774832 419598281 774726077 576132819 542586585 452883915 645386831 242091267 484876633 526265014 574339809 243334576 96979189 647597254 21331966 130901131 276213735 237273693 789879933 476859950 242486507 29032770 226253192 256927130 1021687224 851351426 175945937 453361796 650599906 873627733 435607190 283163598 454027820 247344493 53010573 565227318 807419957 609876566 880728391 973242078 393406873 108644506 760108360 279729407 1039970889 139120084 252105411 528118021 468695175 824381876 183282459 151003712 776368196 11580750 1056154331 502313163 952546400 157906222 43339746 401394239 453718585 1002465490 956511249 577839167 902623477 222810636 489242669 515504162 1022308430 548562205 522160593 395478057 979136061 11228811 766141789 722430493 382626504 962467559 253498535 710970369 357629044 884532111 451516305 518978038 907665220 79177499 957475569 1017869654 899662825 399615354 375079834 227013596 860516953 341675259 131447885 771963010 81866907 228549652 313309301 256308650 192990211 1055207263 782871397 1060898608 375446565 176587189 943771723 866887833 750017433 1073378631 840391350 177680330 450200187 579782364 204036335 328609566 389586681 478600933 998591755 113482069 342297368 451490794 121592919 120375137 344815596 564799192 906973665 578251034 728519850 872419221 415277322 114542855 93682492 749144160 434561713 540740995 395392889 114296403 77774620 43557016 281856928 266089271 183500683 533136041 350358338 269982683 403368624 823113794 690215695 586152966 1071548883 955324931 1038698598 153188902 1048484799 893948429 1047012586 497211740 148906656 597575276 404232613 870997500 413063240 436594133 397176897 350136599 186046047 274214559 648090242 59261631 135846932 107407518 770608780 932033358 1036860806 166954050 850763699 512926807 15685120 22326799 994795820 1000108859 47688357 541740509 593364121 971041123 929731122 245265719 1000110430 789469619 568749878 809637352 586646667 451253000 282758588 403076717 444824394 157850992 796869693 86320771 334943175 1010147833 134091129 963204272 698889564 626690545 907756388 1004929975 1018518997 272496255 620633166 669255910 1005219724 640749170 205981647 144169961 434549737 510228428 355565308 714921807 996467040 149885321 984589136 43681553 59944334 881821078 585623419 43992862 521614094 430511856 116395781 275793661 98739964 612903182 970511676 875548538 59042709 795134196 351346736 202001956 317902553 857855683 1039666323 175321221 184047207 608544668 50353657 32908100 1058465634 277757052 204785676 903522465 156226798 181215671 272391887 490298974 773583425 73723701 171894468 297632497 456515925 693404532 342097898 273194011 29828918 317796270 291286425 652286379 786902877 142969543 427724005 600132327 152547100 444046723 371739455 166423723 512849154 52131970 657019517 79105442 684494869 604882132 951259480 650547572 374445342 41281385 603883002 926110512 920571354 1027512018 951614474 988413770 744654249 547650979 1053629976 572002448 478156853 249719308 94688806 830803307 20160511 693235444 687985775 187979693 265959318 217552724 697816428 62681943 284968481 10259929 182231391 343349559 433631085 575814154 981448589 373091679 663762983 243482432 189344877 214381120 129008795 796580450 411742393 788244704 641489234 1062798534 41042492 780123116 557124435 930540679 926646808 1005156555 717625156 231199496 406018175 292330196 35953355 757508839 175560567 601377944 1017052253 1055668408 851977734 481957025 1010903870 101189345 132122602 331013381 304871403 450093070 104634901 168320739 810980696 457947907 582125862 1047022614 655537473 281195573 461365472 1010350851 399235650 550505604 165791997 123325012 256256014 532418147 317925741 23946054 998107776 26013747 1019456581 318316743 182457461 387555453 640529642 999601588 347161359 791655798 716439971 159437148 572370474 6285748 616564439 46902343 220169134 105983820 185703705 79506529 422050467 776042406 996381631 682792968 459651215 491498668 239994779 433705175 12605413 622823301 605451191 30995372 205238874 602064036 639127123 488392418 624533371 942670658 774468328 335367055 807234306 54272263 998935172 241740399 875226212 639123552 625025946 396011276 208841546 693932776 24178856 2583439 915229778 250971575 54794536 951188346 1000048241 684946605 622979038 693750908 462701702 916989431 931561918 288619088 470258297 1049043389 552178515 861479783 947450578 261090158 635799772 293833941 936469788 1009041085 1000472491 837180689 10380453 384941491 951250278 95554881 545301976 333236484 968005693 259842463 905002022 87590433 365466391 1016795626 418626095 1035197723 370242820 821157513 563818223 607089587 819855163 681228242 276659594 555792817 852486358 669679303 524947440 430936752 796146179 382708477 590047001 861919951 233615290 288241503 366158165 20531253 743886378 388171426 724745790 383575703 114496304 1069531788 357254393 369419008 1061221714 1064234982 626845849 899380721 1032277954 459904780 762448476 867269261 300917442 167011334 655213962 201106657 302950905 766255388 161955180 919417556 370913608 907215365 364025863 453705735 960538913 29402443 594393355 781147737 968643140 617850759 383216810 208793506 290315474 704052063 142145330 117231741 203435374 553415118 779381315 1015287624 586409447 41502634 306360692 465163222 91030345 237938753 1067605442 1004229121 928716548 54490788 598621476 727181020 136118923 358791808 239515946 833827985 470969598 468504261 314204821 469257749 899694581 578159550 141636561 735678293 467984111 328314843 974827800 403649271 787127074 377620692 199115947 937369095 87410778 158520950 627874986 543583967 977890424 903930165 688600047 931965459 794667327 222426834 507218359 251982769 186644971 679842096 864052106 476769468 695095491 882764235 93602388 490099209 791842160 881438121 604585999 278066057 22182398 728903205 613921007 605903764 406679401 903323279 573614804 47877786 15572815 1052120463 158275688 249907295 1015411602 585680015 1040007970 707123698 139213678 736575817 1038142547 287749007 603769965 112524039 150191986 459426741 827815209 757770706 502055567 69361013 1058650966 650628403 276283017 194864893 84963203 210551383 432819575 828301027 22463025 1012681173 44866214 884049852 617688887 666091017 317075378 1016732946 397680711 682414685 873429031 650464024 171241332 968642079 566913188 1020735785 149802690 658396394 37273202 600013781 290830397 1059876974 680325499 390727777 763362148 874588075 985207426 454302881 490193997 860042797 961420666 16315779 437701892 533156656 803536503 1011341551 330643083 140478891 811570484 991112997 420086419 662901702 559831593 21647372 802238565 547290129 170178679 784800134 562366687 316615275 620228960 946049954 418467489 475937860 867451786 684102643 979783614 1005311748 143580800 626344893 797567661 88846674 795116699 316661879 128023843 359183704 71065016 358619292 218817404 22252840 96823351 413780656 745470205 469786218 868889830 498430960 359384168 647574249 1053702640 161719302 238522980 755221621 148960723 310850150 415305233 98207608 729472158 934034058 377011094 652780649 371591088 814629849 161241145 670775599 677560880 933190971 426502407 150415345 433273730 812570271 904507147 633397449 460020953 883843094 385972421 547826922 562947209 720836649 368559739 476279904 380428180 315676587 902725977 471461583 32240519 682160891 1045920543 180373443 771820331 698760979 4036001 201561829 65400188 606151057 715758294 971304877 45509811 787617194 777755348 535576773 72769119 283015119 391419217 695929271 156604773 206286090 374192948 1044138259 847123901 1059835973 1023085773 172344981 345768452 571503122 952388750 981034367 19152579 448779289 123461937 110497959 257375064 397437436 265248609 452199641 875028591 863285611 19688522 510030581 645581905 710012386 935435986 147483760 395877941 710681949 546805134 386742117 703986615 583915496 524236512 805196207 58045146 423221475 217874090 864619946 6554811 405061788 850865675 245467652 993459617 1371490 645683727 87917772 622720727 314107758 857582596 269153534 644621332 747497666 933925134 350971080 97900326 706797384 213232433 80500908 986964442 919686212 13905031 655076212 528825557 957577671 513476456 414963462 801649662 758989899 416226402 93920412 303755050 169406808 1050325153 739694817 655359055 290505141 779828003 847765046 906212540 263303347 982038973 757658098 588921235 768414809 700806238 745695553 233803468 932383502 228051077 481488802 837120998 7931600 103297948 980954383 229601632 606384039 626341947 684289420 1006985565 767246613 175882052 1018120056 858144079 665311326 661603785 47495857 193081306 782579957 204774962 1057839525 269409744 827446472 541306228 893239095 153626764 181018671 766870464 460624815 462094512 515483746 284748047 437376476 717310208 98538068 880192261 400238852 369964973 794720691 137548874 583584064 560408812 301541594 967725090 989735213 919359805 581152514 296682363 857275627 491190669 910443224 129753947 552898144 472494737 197620835 1064900758 197379403 605739595 71281202 906149734 856942596 2101936 308639791 1067880348 683360607 123448319 393700284 675063567 1052021071 527006932 904077302 382185635 654793713 422982667 350703357 705871622 505694695 656062716 713228567 435536235 996935424 181507344 22290795 199275018 62259661 919322917 554293622 41634114 277336177 204448830 800482659 821173795 384326894 647946944 604016794 979024498 829480585 624674781 83771131 802637409 501385053 853058864 94042920 410329964 762295233 631767977 323817865 404972612 142645716 1055449540 85222179 996082836 813027501 387299399 866308617 310352430 330715608 714518906 832700105 97894417 2348466 91593378 912070062 892379582 579734155 545132053 683409258 948951058 151519096 534331219 547285790 669549843 887190402 551875566 710782140 383875089 718112341 304209274 863172782 788404887 861668071 309707376 211208699 81974346 32545221 1045923353 512977161 1052049805 235599799 41344477 232641610 87912115 853894153 669643936 809148676 662518437 37077151 198976476 125640316 198377040 770223604 323227387 882514051 779191136 388468284 433558830 501892162 983285514 655647291 1038995788 839001377 858643244 893539122 566202507 88153700 868074917 505199708 633698393 605039526 653372208 732230237 306856950 524292203 796877233 678113328 617178782 300003187 816474118 225238524 525531522 465188523 976134579 415277697 697509906 591007411 793465799 295072206 520256483 638310183 888433870 903053179 969177805 831547888 356914664 628570267 791086536 301024417 602469051 356752005 558661603 494387745 645088831 225245940 750678210 232333988 630349503 854485291 240932244 542419198 604414001 362762596 150186544 785183806 282650465 325245529 975590825 853054165 872293303 350503159 690527187 659150913 336565894 819805936 444950516 335063768 51349117 746054652 960440753 703866325 927376550 511157314 967843570 1009775433 61893504 265650155 766511980 611708580 692118158 643357853 633610755 348586807 344671108 22359730 101204560 290884391 366944752 1038196721 454244678 50665106 887048917 533554001 58496227 3312587 532008392 1021737806 1005678682 100475449 925463273 1053478274 900097983 1050106335 222949068 957299002 383168102 876943170 247124746 779746770 497802785 105579385 29204029 365888652 159424733 983456066 790755690 122717291 890953864 982876246 12279340 335610733 148167123 501352693 775509042 428040353 891234953 471413553 213880516 237796888 751771008 916777465 101589762 906539792 1056650379 570766128 485217422 835612660 693719973 999398509 652925833 904277085 357776788 900812229 512608630 135425414 249355482 286282993 1038004802 503714929 306326312 504914829 1040345674 237799059 531210284 474157113 686799841 289784525 763213772 486367703 837989594 799629786 795575911 291522594 885434212 389622432 94346103 158346844 821786882 71719745 24477651 584275534 288667848 790603981 974027313 1027491785 475957798 40212898 75709561 90734136 306129876 198350951 199980747 655940530 603720495 403394783 253294387 694845207 447484644 284828689 674703332 320359521 833494422 251716243 433251739 538461018 709048104 98820925 765161311 426097346 946381477 1016401604 824311794 750750951 377941083 881408181 103568341 803226291 350498596 1073534627 210116259 135013937 596134314 33991532 447976503 247768016 114900673 171776881 729062906 285976122 664833368 847868226 807771520 1035381899 735419939 567526213 8979013 370692617 827912000 601651826 231917247 609145748 921624760 943451614 171531506 621646696 6467937 262712631 219327980 1015002470 655198332 965407364 146570912 37831234 515441084 509955422 1050000512 146069037 935938533 488295452 709511717 502688849 84235074 289260933 1019562981 291837811 309449028 438567646 201178394 785320896 709937127 892975622 911039897 804984 158414072 596345414 346763560 675546385 298178922 516682963 423103362 301211126 771028705 472727467 61546039 41160398 452192597 214854157 612167087 762239078 240822969 846268366 233884030 910620826 365105688 928275796 921580123 354793088 505234660 832720562 30940131 893632624 378859362 378780480 676901634 517172527 331199535 242763611 602981844 102948848 396459945 511201249 535488151 839350876 705382425 787083218 131460656 626853120 552103604 404231015 852672455 787013512 577309831 442164465 981417628 542381456 93105327 426459066 531771149 590114671 720409077 1059280040 99300192 847019157 616675679 150608572 188771210 738238911 140358803 175970000 1047544022 120200270 777850434 319960868 454126937 40316895 657472897 753716055 540477100 791147800 837560856 223280851 834794874 590265964 403820621 793559203 317694560 252374453 784038666 100525534 48563129 87908934 913174776 915840457 274866017 328488448 962926080 929750804 1073323239 142733328 1063329269 123111237 875338070 407988624 315148787 701307432 598425117 800051147 742100580 335922194 870618501 344679228 65171738 196862720 792075889 916545186 647594676 98220955 355077386 171651861 587493386 987463238 855974352 883944442 458730793 702370151 3552542 67030585 640595839 288600134 831052785 509406323 132218053 952561898 217405338 431557253 832748329 327574744 291935804 187329944 2497067 726230531 146709453 708572165 1020459465 293288774 454023067 992293329 737761163 446142514 225836762 59027193 9576746 205163571 587030864 235708413 576210903 969438748 935956871 527807488 200623943 819908785 968638451 399842833 599818554 606139636 138478195 416592115 410475431 282270326 812314739 183340404 589243014 651642061 527263794 336690753 243906401 969480308 104713074 31138463 919839705 870881989 6514571 144054062 873279686 814760077 497986524 744430424 351112103 67119153 128670459 55909654 406006643 47546713 874073068 865757010 366736838 553368906 951174348 863204804 860830347 430320448 62407314 24825842 599287694 445612053 586858890 71023886 1062142844 879782000 313387986 582832598 216176125 1049013289 32363205 983283244 895748434 554339614 445543347 433428468 448034089 209532666 130927815 650531711 651666969 746367939 237520703 221972871 597016577 623998142 119357533 185801742 784594479 559797024 220027143 64674444 527727927 784913268 996116526 1072891700 954948657 772290584 409119964 19062841 275996244 672527241 44815137 1531970 576416456 443264343 367904553 578356818 468354692 599093385 153640495 59670161 356888059 51551277 1013348690 417268984 98906935 952606785 46789643 1044051 826239625 901516210 671143439 737979927 818060341 461139857 483438681 1064968116 299213160 304791026 987805462 174260925 852473405 311819540 581320262 1038960431 901651194 28939110 858782948 695606383 508477531 1058027999 317642616 246262767 970091710 590766934 188335435 341833258 447193601 481119576 899819797 460397442 564600164 1061216299 508097585 681820421 814474639 761282742 191122544 582751988 787801673 853862951 875451385 1025540360 506455345 703800711 295110130 68344933 269396105 505097170 922276569 991787667 104860156 58975277 359291245 68400670 42802171 80714607 775076603 369638019 52259557 650530714 179062615 756871180 762756272 687161051 598641480 721304442 488717618 865583867 158638148 776768621 493962599 577085923 526619561 341767966 541726242 408625470 340320092 619214954 6981021 563252182 175775691 403267079 944387048 846083141 994882743 144464660 557990427 605841089 126648484 466039317 377121251 18326945 545824884 117791456 511238655 617332506 286435091 404513456 113131035 1072414692 347684572 567877863 737333564 700169116 412154421 448401094 668712259 664313688 674210898 765985881 267576321 949831954 237922318 860878520 441425595 924735742 67142283 834637642 742905164 796819683 889193133 765946381 437177389 371601438 738444426 798201350 406424391 612660995 141071086 132697531 625250358 252560100 355120479 621908043 600062264 340515017 1007515194 805641618 830010752 878407731 354409008 934331424 697851548 686392111 7772655 223396636 340689456 347586489 170976692 1022307437 516934867 1000109986 745103149 251038249 598070103 627251040 736691021 335442379 234584719 177456872 116642861 477835764 134702859 193091604 889514412 88220239 971233692 86297746 1026612202 161287939 346187499 43324865 741818679 969458547 642049604 573821474 444828582 163407147 1022842838 986255193 846305038 893277336 664173091 803175194 642220278 370576504 685366668 241083777 232301444 548467497 525715558 262797868 462057929 62052657 458772392 917662095 217045474 696515097 435343040 924900872 510014044 803514429 688880677 538107403 435243542 320290815 126259275 306866652 31442503 96650565 789936007 642274782 1029179002 331024515 66090247 594265098 641623284 642551320 188627730 396463936 197800425 415752659 1008388710 195824631 380748229 751759680 163939175 43804371 77938347 1035647769 902870883 403379431 298563810 54148203 735202111 843466118 923600610 1035070969 224783210 583383598 652848090 47131964 867837991 732841506 701793311 84989302 467248405 789266909 189542272 236536233 922755799 1033011762 608650906 838624826 665464775 219498595 1008677661 1043288053 210949575 36016070 335151804 758552568 849264300 135202210 815402061 511287958 44477005 972591369 278246184 707592769 974549755 265698347 863699342 772779473 287727506 158799318 763897285 60246372 141529757 1013469191 382972870 580025174 410653982 422341988 806463393 1027457384 31318089 1003649790 106928079 506261448 84742508 652617917 112427719 125132297 669520596 583969684 919736903 364140153 343110902 353494760 1050913861 969576429 463668009 670996684 164103655 190274828 687736657 191697263 879541845 531625463 573129632 985679547 869160320 527107962 218890107 923338342 46499371 51522257 1025833263 601741159 525099379 1058063260 171665420 841616076 311789717 906509279 276541792 537261604 618628533 872276446 363670579 1050687189 198577608 595546084 430119144 474381324 783355891 351049771 287232339 413735064 127548310 584161173 1028315930 828140156 199630478 899822718 56657195 125725465 507260207 325931622 34525121 154303116 944401703 616730055 1031068502 755132532 251993065 142778814 498044872 893119036 164620593 594092913 313758981 1022824775 384932767 749492760 596530198 145178090 210275451 248063638 883497055 570637326 552082203 60269154 698383889 68773124 638611790 705027638 810916251 33574100 529026001 819775005 829984532 986480852 616857521 873396337 944010528 920129709 773007020 1038536272 243013417 813807959 241390474 132442895 28068832 267828207 215417359 24643309 172331464 795959840 265464555 268797129 942093443 972118202 145048436 598545685 83799878 455077374 548814803 74561460 735173242 893626628 86888196 27562517 396153459 926293101 341918927 14241857 84095060 9739601 189065497 555731550 800888575 814085205 353735233 1021550054 893186746 284129593 451324575 829859233 73228024 292698808 686505907 1015406557 151329801 583829891 243000467 997702094 668150616 1034356130 757885047 678411238 699481892 77947247 64868453 674398883 900414962 448543780 516133814 210266275 475815197 399118951 952831075 951145814 613981445 436155953 734710717 443285211 767614685 1003049582 380170927 381128644 126315481 739853852 1042157362 746047193 467996847 372571203 734468961 86962209 130459375 407145893 461435207 54927321 1033909779 190528421 935158847 921547211 239020705 757044772 8734044 201562753 912036475 301831134 265308331 644095232 79012661 496936636 703164941 1040890117 393567779 586804198 430669655 119351507 160962079 787272070 941051956 697168652 866832700 147610514 105867174 243861781 558237270 779738037 363634740 551185226 282480899 234094591 842966625 217844648 1045095507 191514312 64264189 814802616 224614485 191361673 985393219 317306984 746212713 409375404 33571734 234507925 963232947 559626886 283221359 1037229667 658437442 1025540321 643404990 884362668 66638899 936090289 465581547 33851374 853155121 777620214 391165132 325143444 791427837 504552492 1005735593 653510469 50109037 373452131 52233447 652588961 175009953 111737776 891950979 545543710 898379153 779111307 3636216 583382261 809158867 598733065 901623728 43003104 725785099 518145001 505043225 45988239 401354941 536046105 898188866 681581083 705052069 1011605980 239431244 964277606 509721159 159086710 987226582 119748892 500709406 74782005 249943444 539525864 1040075119 534218602 915522118 580744488 1000398784 12288590 806353049 110785623 171132711 325499908 328585033 776920791 28583676 633886483 545235489 469961202 20202189 623799932 29836867 1015970083 1026445658 129294014 229016966 339522320 751396228 227845464 699583178 269634279 171556142 235418280 779343344 499592790 97856032 441388881 215569757 88386597 391836091 212520823 1029348472 241625178 550827610 745793314 293501171 350776562 452553378 237121493 228740527 429941041 495993103 854380576 66228737 159602806 376693908 135389660 47569929 903022616 104290860 704052628 502660509 745203804 71036638 866944129 1017311039 1055841465 464701953 11857995 583360678 441543047 336948188 989448180 590612824 414103101 489454372 796140757 644609945 28849789 500706987 619713707 204175714 452587223 108952814 437771800 885851266 149654250 672364395 868722119 235105187 515005053 1043315087 66236027 357466718 754947952 953554987 395078546 786899980 120838928 212297190 437912713 583844861 25840116 403588008 280036230 449738619 418732637 564341777 246680142 419081464 119299276 1007889833 1030786186 1003603215 13986096 833823097 318598692 174059246 664238334 890620740 1041924222 818854751 940103494 887854858 20380863 254685259 868731755 674821812 346079808 204362297 719203188 972527697 935365823 755364377 844796237 754596476 709143887 54697771 137114671 995334591 558248205 797104311 1057491486 540981827 296223998 945051674 564231065 916719803 773676159 60611826 839307733 850498036 717053666 108652639 89692267 95019116 934567052 327330885 224195311 470114346 930503553 238627948 17900961 376382805 264364559 677830727 969054273 578995996 273007400 426318602 399551956 79350288 401025850 622563932 883992179 294355331 1065012195 707203260 818024508 253570445 71466032 337625681 1049924044 1055644950 335596759 597933644 856522427 471108853 528707953 153997203 363462689 875997709 160493482 845038872 1021779482 221524980 360051921 493766810 983892259 570267575 269611398 46798711 338118404 317372659 518602886 1034650772 899994702 70450362 436731780 801821585 533407660 846919829 137067923 758288881 581324605 890327084 818534691 639731209 645409353 541750638 649443903 641569911 195029216 2943270 731307847 266607023 481939027 899402731 941255840 853866432 412816791 367617779 891988521 1049269489 654395495 809457764 35931432 88066140 197171632 96250131 1053963725 909437815 182903541 1070017505 188390380 849652791 477245154 853449328 1019936704 42188402 561542236 690585660 98682560 122704132 836228452 5996238 980920627 184129109 388570235 738785868 762521572 569770350 712983895 579531560 966905276 149412762 905791438 1064661398 532103966 1046581162 139885448 968155645 575196234 976078394 303648851 193885654 423255896 372086987 425993499 692157371 241912591 1067385571 802984010 6521387 820797493 856801472 973346859 827199687 44413817 504770916 801853780 1023144816 845167018 606945618 564082793 938776516 1052452208 738461301 539705706 416781508 207786618 530142098 604852312 439815430 972972097 3440913 665688887 832893003 685040508 913972111 789573079 186552778 176008249 44781774 656914644 213241266 132411676 270979005 779590790 849860515 253027122 25482039 742780594 1027790278 1043660299 530566377 1018536097 794694756 408977213 552866080 457586584 439549905 811952467 1001490861 862640060 579154295 517082396 752062268 807999618 280587032 837866562 980049269 536826143 673056013 757611706 1050333719 764252885 900984914 479807422 906941256 1070184960 999295917 680392505 21578534 413735525 205405695 171151625 470003103 814500056 695397750 473728670 110551388 87717122 374189727 1072111645 1039067413 574718090 1069522969 618684735 497449609 586911635 288005837 568366159 735002686 834194627 60660751 947183899 672950659 521069941 861662743 583606685 680397713 299442018 66936322 904693187 472727929 104530207 451564479 261183596 113716148 450863935 164556683 452676297 911114761 594095277 217276518 998538131 56373643 530264937 911604324 14326452 423279162 508666400 554536326 779853711 680474034 433279325 79633318 94852844 373635375 869817550 420883453 815155330 682027514 737085251 898251874 967747341 673997184 983337775 228358126 326143139 155517809 1027714759 333795140 363621599 37444973 962875494 934360582 147224509 267626196 692426975 318972109 882952388 617987739 155192862 244991772 614772892 732034320 498993501 190640773 764755441 1038327991 954352007 426475056 574884237 738005827 450391062 922347696 623480653 998192828 886312463 546970245 821551493 351294862 521420804 721856201 319393334 20232154 780236348 90333457 140138608 52128285 429178052 59029746 362691071 730241432 265538368 739286917 964298576 585642744 655004200 445478539 398070416 217087133 982831018 201371665 916592923 533056847 886635463 60770621 652837358 620244801 880450480 472638476 704622194 956172359 818090618 954629556 20428768 990786535 1057649884 751539367 899337726 230341546 318563480 784755973 169129174 1028557694 179289948 836760407 326986868 312306687 327781572 744280342 439986185 605846375 1040996334 910748745 503399700 555645436 134563436 316981290 520193790 853075438 1029503162 1031087672 220313921 624572749 473245660 68026793 393151059 962414223 1045504546 931456998 982952745 867930022 317519007 442825800 245456720 100193413 810886714 900491477 1003322656 757606648 183850193 113646375 79299382 614694191 56120406 632012896 1069130820 1071110672 969042417 508045387 941862644 522568279 127246596 115175554 176509679 1054646831 510923640 51490421 805519267 430633514 526369469 302003926 771303782 166689289 1056660307 404863017 456083502 301518900 218407203 171710829 145729029 440542483 46032016 1065277643 149814607 870196866 990134015 638268186 368884807 514082438 889701737 611697713 861542057 263529293 1031718466 1041949005 345009391 873892253 447972493 1002485927 85065063 44792007 847383363 737843689 73964697 5814292 503805380 649575170 52269531 448406250 120317027 229598483 113399302 479436052 455042379 269350223 158391673 783615010 990138965 765916620 229336769 266867516 949809867 665343629 109373468 652592701 340152399 778146288 15166427 1065795195 25901751 717962605 915225418 761661471 99784809 920748937 542482510 1018667568 586685186 753335935 455404161 251795324 519722855 104327506 681099699 322283948 476309625 154090040 966209755 439208568 2814486 789096971 765874449 961029608 521469269 683194873 141079526 967841933 809671792 319794716 260130674 9647804 910924355 404501937 850105757 441566734 511150873 815264255 378482963 903108873 448307174 296195618 139732601 1041544618 46373141 750036802 21378040 695384282 666341731 627145953 815872343 261250309 455124895 875052995 592286314 113087926 819645762 854438315 404364523 65501927 512290475 647518958 717902269 88351312 786424736 83260971 785532698 480303487 3161286 454305173 777595907 814324013 441910580 550893844 8561394 501391626 181631699 153444322 980380841 680676379 184612685 447934775 457477227 42023715 1054741240 149650818 415059711 392554205 1071904599 94066254 62975322 752987903 570547936 347263748 895817420 971983037 680587703 338653357 668862092 110783828 38412589 432331421 780092175 1021647922 1008001533 580526918 777972201 701534237 566757073 848853170 700222871 439982738 379807599 902601055 760722347 809185816 592254654 144444787 418991455 1070740332 415413741 816539447 891047761 1067628119 804263093 62255838 772885152 858583193 844957362 895851518 338490782 513170134 561034412 70752702 167959432 737654740 401121152 230317942 108179069 709734918 756106449 489834611 529938610 9058960 706441097 182665430 982663625 246597618 647170807 696648695 1028902792 419215891 207159354 352234495 326777212 50463449 382217410 796945330 23665628 36821959 138698458 682186352 329123311 703798599 534750631 113459907 434707066 524530758 155601362 61105053 875655839 657757842 624871755 1028463451 1030107436 472702835 27463222 135296660 992131011 442646167 210253497 139637329 556231057 46419714 849781905 652042419 353368404 634401080 319828367 58532896 457920761 603562437 818315436 930174396 197470585 431465328 33659517 500862029 820935128 26695523 882593169 1045299175 245421085 553169594 381673788 662673015 837429964 155183667 433504427 549539861 513192549 832243100 935653625 1060765975 858563833 841711101 979272681 427172694 585311263 217086207 795698377 118200771 880887946 114489904 178334836 526762739 814960492 204406101 318446319 129723086 855826266 434591309 299154818 14994067 381958295 444224446 51041666 680110955 260224128 623449147 1029676092 815444256 1063505442 635042550 1035650920 62693811 62232965 85711752 635691951 1067032274 668023393 48011553 731959893 169736170 596330828 957311166 209112707 884070581 589004901 446585381 560292820 124253458 1029310198 376318439 958716639 880186408 572600707 292705724 879561141 546982260 170520700 694986298 627748738 926106271 1051529644 760476402 8853725 465907925 154887620 529716493 202949127 407627975 265369541 741785601 351882964 444055689 369598751 362256543 336413068 857688960 223260608 1012821390 305888993 987662972 216977212 579422303 696770329 798004459 744990836 273211010 170060764 729200262 412462969 69474075 159525349 659068141 1009297405 461159088 946201738 708322775 229077650 250550651 739364475 468845377 1073438246 480597146 807327820 934622161 707370343 949639998 567956632 748403634 284687321 593465832 915691532 51944445 608530555 931602867 653767364 497262497 43444021 244735964 648757107 548379526 777849403 915057317 529155357 907671452 351348636 119417284 7124969 870115790 559097218 510660608 88180687 191574941 1029569499 992069683 698766303 966602574 364753701 201533225 260671798 754331779 385361430 70566627 446652831 1017532896 880809988 354580337 619432285 98164113 997028394 713601245 401855148 218061118 167927112 723333503 137084080 918437440 374795385 255638164 743041704 989089538 207761265 117686462 554417757 56313899 204050886 202178793 458894373 585580112 476085047 1059655052 261573281 618207601 870606672 507992643 749631057 190458203 980294985 380022611 196098481 688171375 824868231 1033734396 83358921 830299144 642304703 213851135 354054530 696700751 940499684 789889776 1066574267 328560165 241615210 323936351 41771568 491738760 224129693 274370198 545853414 803441877 992909437 979718710 747085208 329960753 944651847 263235917 903721097 38879279 972815288 764275760 58954619 1023001148 370126096 575864245 965447170 511167319 268582436 353863967 892405016 270462521 681306505 904735738 618618615 250253212 110416107 699811920 384883235 712388107 706076247 193882072 55899329 532139906 806491675 27847761 107872481 22305685 1039074570 476986426 645242832 313540714 228163302 41178830 399075847 821155317 359361661 915787421 982970476 15218850 911899855 1072813182 531821185 716826004 959279315 1069557109 613559076 876835017 665674788 951559785 922924277 702710636 605141364 483850714 109080550 856345986 765597647 498922821 647972558 167256637 905996703 341435231 728283129 346373825 783335475 368951802 606059091 937416029 260303827 119938360 705620773 1006785087 918931837 745531330 404927948 3544895 376223352 242620410 888619252 843480266 564507837 112057702 711164646 109963616 733815810 1061926970 137457211 172504564 114366038 194415628 562994773 852575083 449786441 514310402 762353652 796554869 337701998 736133585 1073696863 341249725 123284407 628984291 358525640 1012906798 839747170 366337371 312100858 471161583 358394137 665827765 814141455 721225468 780395627 520448306 728794269 581681437 309930723 685335628 692373345 474297168 758629671 150597235 796150008 815128966 793027978 525829161 225203530 752460599 518967380 881483385 718513521 396737485 1001703280 586729141 940335888 718362115 174455646 993760871 831884512 915168702 146813557 926567142 546469381 898971881 997166833 754692280 333253628 754492856 535584850 1072119895 264917558 742076069 647763693 354409708 459682872 390802528 572395942 290361736 1005266488 101027319 27155756 432372271 1013038183 296798983 582804166 267642949 92174493 518723070 679870784 346107514 791074707 545987833 522989143 744779282 544519961 220535142 316347582 524518936 602648064 808327870 935446428 393085792 79403405 846251497 693878230 233825836 933023880 285617102 513950025 101868426 15312495 789605802 611601836 1062410232 204874513 1024274207 423640858 276168621 77395261 3055957 86169662 647643434 458297916 621579098 212499979 694387204 686504238 899312604 623008163 370333815 129564143 124738158 694230744 117577043 1011484820 592946390 572787961 277752887 48254940 1007778975 735700080 460023389 1032242206 946237459 404867606 438911516 497208184 939046902 1032401713 857655132 320880279 233631971 9824328 211719391 619469082 920208155 19439407 503300185 820840152 9076197 278796216 304154108 978031073 170515154 238690998 82596614 113846355 1005980091 27869296 1033879878 569557501 1031022031 422384976 805636272 664441138 306376895 316884647 339078906 1044025824 15228670 912026107 171269020 996895895 405566649 880482294 147080579 17598064 1036889631 858888279 81850400 410610828 129619102 210918660 958492136 266875825 65232140 130259919 315336118 778989098 273904671 607645423 403614849 308184344 991765599 732212594 60889686 867098678 387635617 838168516 966652161 1029169243 915492796 447103375 840315299 113888606 28485829 855911011 14394747 394453820 571728071 108447517 543494416 107572206 92609274 616980099 312322050 970587117 580562751 303741517 330874595 40444417 984090857 62158363 881652837 782403722 1021041579 1038575321 604124674 342828300 766200400 550821602 1072305612 672395283 646756748 634821075 769815678 870922779 507476286 285732564 788258915 646233995 1067759650 651469666 19004462 605497748 700986842 437772109 226095375 481307475 383413725 533655562 686417617 43570332 876603801 665783210 384158748 904594220 629591695 1047946125 1028449533 873849197 521819843 975775010 350924015 953966966 531774352 390961620 1035313152 994022626 500419098 648348933 768337670 328458334 112128760 421319427 509689687 897768902 854766329 289663681 665164409 338780504 253363495 947245078 181836238 907553540 121592158 424489969 435008226 985341277 225510131 786664788 97489501 442052214 913592114 168919460 932869928 313931113 263644653 513114543 1035205830 339409464 829454882 515602154 758936451 615010876 1072175951 548815843 639616963 1063033057 12500560 746210486 377989852 954661180 944981476 576825456 512237409 194946260 414405147 77926862 392259892 527359630 238614270 204242081 888230293 843837969 574889561 336628417 346684096 148161004 473393629 53867872 99477436 696034915 118134861 265353668 383779998 179585910 1053300770 498511870 438978826 183519335 50960958 678220335 323210045 576094554 755319849 1042673898 632844941 198302597 695279630 602618851 529079169 165804488 202247420 843996487 173678817 1027853879 368655724 229695726 370861762 289652672 961847009 985009088 117185507 547810997 970297793 774852940 1071489333 366367345 756388475 203575235 910369543 124197395 45772409 879375952 453534538 780826527 698432112 654456932 440788423 974329607 819808596 541827373 271654355 758087652 431882278 330744413 410932464 9910437 115072554 44089149 346076428 382262183 1030252127 998178508 1066182248 727855670 258257626 317026359 32408369 584316295 471200422 251678268 651485665 475315820 689325311 451739789 435514625 744992716 906385751 91718533 315774293 806595791 408267510 123414475 148945691 839415142 425795027 458336545 548490712 861661058 683720292 995492123 236671620 122514792 878368883 75865054 34284187 645902059 654925426 769331916 964687844 993365628 348802386 461298959 375488146 965775528 1052796853 740126021 421947377 445742681 65380483 653207552 873905538 846637490 181062349 138420974 36822024 805014482 954100129 283091200 193313624 907142597 1047531685 436057523 714857420 463631187 511778817 44554944 748673243 444886106 662098046 505653450 763913721 482468686 889751921 885658632 401242910 8830908 304765117 703725894 619210122 985561942 1063730233 246386407 1031625896 764605229 874467114 926943157 661621948 334965484 427857557 120600534 629010916 872437779 964090699 517334742 224003619 165369103 287079833 1043512716 234073364 972197462 732490634 357912425 218290621 948957020 143782172 250500390 580991485 98182275 354072729 151450067 665251523 576154695 72057861 296382261 682330500 1025899731 255751954 200995999 891160759 136758909 605611749 1070240433 653944672 732114439 165659872 334633974 361210564 667399635 187162174 921980785 200616395 226160040 816401531 749725892 550760990 511098412 589334980 159707053 318217844 224197087 709976011 344332798 122579994 694573751 651548180 866029930 702098803 147764662 674447062 117849213 577817335 807250495 269166178 867747408 85320656 805782320 906428828 585216607 949245993 235140977 984119094 420442150 977648242 132263197 67683202 827972316 353615861 770060054 498705414 185062935 2841015 198520342 161487883 523717222 330357199 277030984 175755819 67130403 83043799 643604977 771789343 647357157 915933251 855550466 366410354 1006973490 298029954 200402319 453096083 937369552 402120048 513442652 819604364 643057398 129886510 130030726 783827424 858067154 426874116 534130002 675666139 969638388 848577856 769103263 837295964 662270233 568762971 527273849 387550949 562509793 6156427 939349000 630311302 724284626 97133889 382390104 55388285 73578230 639728881 24286522 564721906 175902772 380506950 782594100 843975234 61337913 494329681 291499969 443093002 279918724 940503286 90979765 448070444 81810949 54639031 852062406 182528711 618294934 94738384 1065794557 216186156 943106575 1011009032 1071239004 39821183 832587772 155117928 944182823 498831622 993756544 394783808 1027094518 677344533 65351188 379749598 1017912020 184241470 842497186 971439368 380902056 123147085 680166765 823938001 55973014 843422838 1013948526 618828691 444280780 865311457 859078682 501441140 656488447 619726016 1064880931 703397165 42353600 851672522 803421547 509160363 395027155 773758841 131432855 954626421 493751417 961702214 1050012383 414034831 1042794227 592396939 842526992 1056030343 151584086 451887479 3700071 22304476 423841562 639049589 896172590 985427632 171005364 517302874 646438506 442909337 14346724 1038966375 209756542 315315642 201531634 892362192 1063474582 384140765 736007415 913107282 554171843 278983867 743038352 1058913225 203281434 722670250 756802856 615082781 533869310 42806921 254459564 732029704 772603714 768065164 539244030 954942068 194144830 1031216410 126505693 1062877011 73419289 1005439314 299318916 981005193 352937666 215019193 245874993 637003467 494119812 326539857 820972248 784040751 425644201 620307602 475487675 715395245 775465643 610723524 885020287 311726543 558948824 935642690 497042894 947673819 850081462 769959551 762131591 1044027906 869071512 851178146 965425755 445970212 844352628 330275947 485519365 946808303 89141874 502109642 113846735 161558707 785976349 622144450 836132009 1023124592 494184341 656929472 797132323 919729351 494767362 721005332 251000204 115910113 387467510 210030130 359732001 727308990 397579887 296551486 807117453 706714608 343442661 907573427 352296720 789597199 477201224 340134039 915776948 496788474 677104271 453688766 736006777 1065400517 967604283 829696866 210065688 1026514966 1039632758 983079282 972031971 850486269 960995411 795499406 53284690 979690371 804848369 823001971 643440955 312268103 689192917 346812041 420323875 902532308 954769213 10221261 310516827 754978344 798806499 621142796 221263686 1068883353 506378810 317749592 172321508 1033087893 872319191 148916947 345347316 476076640 1015879862 410772686 610099716 733538235 203090253 806736060 413965949 914124627 755991496 223291379 646763555 64594447 684572604 470931553 416565465 926906594 488074753 66130971 191406550 1052763801 319733981 421445402 376556486 861547045 728553363 804322512 922339490 237593328 421859485 1035673297 11869776 549600973 489356812 572731876 169673019 48463968 632565990 67407236 677649230 132287145 55040224 713587520 910802249 962864902 627924872 629410911 950658149 850246108 121390540 495649399 58330249 384677178 421355524 393098763 291083085 1507027 143287272 1023491857 19312674 183714599 206301740 642272236 1059904360 710823830 12918377 473287007 842656624 568938082 850774907 646598872 942950269 551272489 1062847741 547443219 285257248 252142781 718985955 338320085 854293891 460729314 575282348 506053296 490140570 542820034 452905159 617783964 600140636 766483877 259572057 510661861 734197731 194248969 525234573 197558712 125362986 564782307 83364378 843930680 901225609 350246238 383057400 174103466 447513453 550313290 362855493 893749524 29915260 354281806 677215257 302611820 839746555 616150392 239513370 299430898 170533618 5767980 474050722 866194745 1012471003 806090421 7662983 461346898 235598130 379035405 325707988 461916069 1012098938 418860958 1025981973 396627269 967125492 309741067 751101769 490389269 37365534 610890380 413926519 760406211 443978494 957238609 490729471 946879842 214266408 93914800 46688735 518490502 81527938 782102863 191684887 882010341 562412698 370515123 119930373 516721876 789288894 1006913556 486134478 592869192 899744110 302544652 535396166 580301550 539967854 385408929 604651405 953367193 98395688 803969093 1009041976 786416725 414819814 849269336 228531659 586409958 726928377 598769989 822998545 328744509 155712456 804316671 323802534 988428015 211733580 1032143406 157817177 104881060 300123494 78936275 477797013 3594008 730460692 1007072765 285259559 773804898 943636543 963476233 1047771846 875070399 930569703 997001943 875090092 967407236 56204959 190668694 162262265 97059869 166630414 495792249 262952850 495567784 19215239 171968368 414690581 177542961 624411317 346410290 682443384 723485957 555221160 231291934 981451206 95675649 158110378 420906727 874148472 755612567 792256150 435867560 603512002 894731640 888677990 399295607 979878675 820153753 250761759 644777599 9911957 254666815 933029015 480563263 136660928 588322586 65683801 393599773 337976889 627955450 1002979638 399772637 240073026 129442954 682161418 279997335 379188949 641345981 771002668 52174014 841893380 362646404 135946160 661163635 348458549 953313556 617777180 640751811 1003881369 992265384 1030153806 161086279 724899214 1000926553 564838749 888915680 848870277 628067805 1039523217 802363972 296443525 957972477 161180794 921219833 439709817 500095613 374564480 37307242 500856955 761389470 958345296 601684117 164990433 373726856 430457588 1028594064 98814973 1007437476 1070478178 318581174 102765061 268288048 586045656 678663989 2245835 732616576 917228919 100283016 368904077 76041310 114948032 941987730 1073622325 861068096 744783590 325354885 525877655 862482558 1052339464 997923724 410872419 1073356599 881111049 512026971 948540015 228189076 11658296 1012768862 365022269 392712731 19169199 473496277 339096479 187700664 285042809 160915428 40159963 1005855711 775754740 817535055 104483914 280174062 542804044 460739367 1029001431 686717225 419511988 116713759 142896275 556487845 768271831 369982526 987853919 705250359 508175324 945757522 636706551 480140346 958164471 824365473 412493912 814043866 1056969998 280723445 399865275 71472849 683509588 461347905 504608673 534379257 266929001 331036311 609915091 1031709933 957643448 208151092 156161560 785297177 611477049 63837406 154323869 345593620 15323753 731987273 432067227 475050505 712491935 603558877 278070795 50703584 442889636 410871506 192059620 431197000 773641305 494066529 193249586 202074276 605905641 471571243 712676149 860073231 193639992 127786908 715589919 161983924 192481369 280835448 8710860 991856064 858964149 762394305 676571157 21544914 160478513 1032401924 329710823 908164243 312167082 751923777 993088570 891003896 628584654 53280876 251092580 509831620 71719739 699734084 345642109 394543852 636244115 1010793075 521522152 566682193 154011182 627461135 660161883 48268465 720241184 779677331 681679721 185569728 915329761 875386212 859259331 596373658 985216155 652074291 976345799 434199751 223651130 912012630 442210444 954144383 534474836 525639410 219217749 217809949 34468011 138942034 809148410 920003167 991599757 719097892 503930749 1017297969 817572823 441704469 582400685 805606818 906325278 335171816 406244913 795886992 534045193 65296181 50771167 344343869 44316279 38886065 166212475 520834631 570852656 779149111 740906086 267432961 653523058 764375129 639457286 881408077 7918971 162056017 903987452 850689342 269078353 67487512 303882886 73194082 892610858 2824426 92593915 310161113 880798356 965765323 1064115306 269202153 350459281 809220886 235630348 99295429 475552949 9264343 5787798 833083796 625999760 200190697 892093068 408018652 835408992 413230188 541018048 483855011 270016798 778696911 326667661 68726665 257204597 895997576 892404453 935790211 164107083 866169924 721635932 1062199625 914078298 575935381 293018845 202112737 582237409 131637672 37585856 696789676 955924818 848582874 943773781 976589239 452374363 950780675 899178889 354851183 1011297337 140404234 738974450 121562485 209560716 603740433 352692986 251903816 680611232 228821277 745622635 220505363 688066918 828542030 508501349 743381163 653409572 364337895 449329383 293911411 845700365 373780651 301967558 758542295 16902068 1028265219 858555758 210634177 1009378124 898798716 163038816 476827761 208936127 96373246 880693697 388693506 131095649 627864664 905023769 672028570 503901867 192424138 242958480 298194740 233173273 604682338 105111319 150320243 415935201 624308955 192899365 388482538 797026081 386327359 302459827 365573473 134978461 1042469025 931897091 562894864 342881145 289528152 509109996 712546737 157518335 706419177 195723453 497411169 134749925 877890948 516468068 944557509 392997564 47549298 112401455 624293403 92690594 53469146 795161100 575615170 568262804 848472151 81202900 466113886 400070375 982556462 105440695 962810243 121453438 389792522 517897143 293665329 216413419 862083428 342973046 955344836 755660526 796182886 798907365 765394619 830655470 343352384 746495429 125717289 797065766 101254819 291600808 126418182 638433505 267362933 168978178 1059655009 13004393 373890954 761296145 262712312 897544586 686699314 683429039 498576224 566498257 551604045 914419799 590471660 454926538 600329130 190210754 825028959 425109172 706607100 498113276 890337067 139562010 17817239 328643308 200997043 93587194 581855472 989831018 878753106 357828692 846939517 524863426 575032199 386937659 992884578 705669517 1033939501 412288047 879813349 787097259 690102948 349405988 743082614 740378313 696762963 822932219 875678816 949378671 913614615 330048010 683451503 1072263139 750222647 909715139 621869286 449712466 284552081 355160727 878535820 9443073 132633506 152603929 1024102531 323471555 59176308 472243112 902165917 388163335 787038864 330874541 405403423 761910161 486102514 752418938 878290173 653952966 409994243 183147861 993048331 154545490 794491705 692594125 645762275 309787039 441711938 30757386 611925548 771684237 619698523 212812408 678786665 537909071 468192077 624018254 360547704 884997209 915881986 54255979 518052426 118034503 272376867 94972593 913607427 19443808 586493600 684263381 49776328 463972520 138851217 772360502 371700778 2725743 354688599 827436601 384990919 593755726 396471021 962352787 540196106 384269776 864383612 1052356762 881022019 558149909 804468249 520995363 332462317 928064715 418256285 629857881 132134491 879087543 628532328 1041935345 248767083 305279261 42865392 478426998 541042928 11994426 631694603 9300356 113436972 577714198 860333913 728881639 336527750 598895535 25274887 553612617 410739315 80829126 320955280 96772847 406757087 467858827 308872408 304812418 16334465 679668823 255061990 965864687 761523200 396114323 987429178 943961216 749072978 568747805 178933325 667673790 135261002 985132921 413594798 420426165 351278835 147464038 370478162 375011100 841170558 1029905293 64026815 284800316 133067749 972638197 315164450 126318757 31745569 334523996 927286268 783468602 834255170 318606209 663345663 581414499 958419619 343658363 433614939 913585646 618995551 117527244 896270042 150581284 588773256 233031995 617962300 33283395 1026522797 392961575 108702607 1038080233 29926338 927776505 985255376 963097732 731047580 694274357 388249079 1027465151 384254952 933567302 17748173 730815934 88240085 420417732 130650955 674570775 760651523 212946789 204659362 223529659 731146554 475271799 889503005 368145863 155444851 121966661 611857269 377270277 729312456 270872170 913910935 223885748 938075800 76806095 696425135 23103376 247443573 227742860 466764082 948625460 277328780 403991897 953570273 1059065762 455398902 170998074 83022864 791538811 780986241 338222813 593008995 716116660 335517733 428633315 272268868 672308299 398023390 118052267 197578381 235008877 210197417 927659086 62156060 859224654 460576211 1027099406 570080882 992868133 842424982 637944025 146151683 739152218 254262582 370718782 65992416 657164556 209875969 884919919 239039466 599748520 1030064623 351404825 649360383 44292313 562464901 730800129 443084456 269741795 107816001 47664328 105765026 289325044 901988792 605577866 167919120 424905550 608700908 51820753 1024436662 432144927 582110967 566824579 241570454 1059767126 367812856 82230083 878751790 65984783 1016284335 180557963 451770705 910340371 503761915 916271421 1007257010 786546119 619232136 30166669 912933854 899497172 619959590 18050764 742376161 338611218 471351703 391734687 581161568 876654356 142126398 397627031 565927137 700040465 619526775 715360420 703306373 74508202 863718578 235169986 1009147052 211856104 701952342 102782799 515836371 486731053 674698620 936038886 360765430 477237729 730035703 354718863 971272587 381116708 828850013 815176185 128941521 540830943 313199974 693694090 205738966 872751174 871984935 643357631 709157334 751641418 590576335 964464266 16322272 494823297 200222222 824076432 338395088 865564111 873872223 696736364 270197143 887419525 371921761 648818941 387562778 327439775 136484323 299834157 513441424 503012283 52445112 839663670 829837105 544069337 517737333 686225626 205027061 661857253 285114763 432141076 495730490 321571195 318619133 633398901 932256206 367236148 57803840 818122973 909052394 834809368 1059793991 802762381 873067893 927547471 729697019 832364475 56056891 253999169 35329577 915407662 494688523 773613962 554344545 333684166 993327451 363279430 491131954 247029030 970990698 101930873 718830164 547547997 657673966 485037148 1041439939 325836938 940428739 864317881 657092357 200333152 151441433 78079821 170533043 151215680 804012595 63266281 903874093 604525148 729934922 4804043 462639117 429086257 59968944 715277323 773017828 449252871 143639721 43677925 548796484 317717235 369786079 160459063 496724125 154132245 149311389 66669394 277694383 843429555 937532147 152565687 481112243 668798717 928497874 707465292 925132132 816667369 38906071 5768793 74403338 834645978 1066142093 369347960 507722204 922683405 584334472 887922777 783145421 102064758 259709789 602797519 22672209 630176834 589451173 803987186 42106894 3554847 452440360 115383720 787914872 209172086 756631054 883234413 642249403 298866423 168875310 93985629 117690735 713077656 581922491 18085721 115655539 15200579 310080624 567459125 94757811 399090628 742984931 635137194 140485468 158718480 650766310 1017999322 347691304 577820241 510547262 40738036 623354015 416879709 379774265 234733356 705637003 759861722 684105190 795107736 541586944 623870773 615833552 280288848 200010932 755923682 486255689 608810947 146614635 816933232 347855383 176074788 766467521 764995962 390432106 171892085 573727989 315136516 367831226 1062247278 712163141 253460333 808568604 20783991 715540749 304710497 937022640 1037847592 340109457 764543906 918074396 916809299 165581163 478197492 926255210 1019061191 738086689 472374859 298802242 514284303 376517218 509644594 216550198 83546647 246606497 320023177 703828562 178885724 199141602 571678173 85189678 348263884 720983784 351620109 995079698 238549274 1066025468 1063190693 765307848 256975576 542107992 93611741 636912974 717027244 716849449 902930642 1001788584 250804165 1004120806 1043604201 118965545 822517014 557417776 771525392 219157519 745287532 188212982 839842166 565678482 532339701 834255356 684253444 130782646 467474178 315257812 439095026 930318144 292031396 1972112 177481591 983972584 597152693 961501271 446389995 276843585 485490852 425082777 879748513 863465653 407944500 321250687 981889386 618603343 117932721 28534767 12883489 93325534 374880200 145311890 48500595 712537528 420902567 506421753 387180759 211014331 867915900 30801953 402808109 548992270 314919286 458293963 1040918098 520753754 925966816 963527300 42122662 789684936 891113378 515577182 694561168 616790134 183263904 803859571 439877330 1040474039 9364762 355446567 635076849 131209738 481919432 1066695273 21664286 729730810 729963510 764842482 295944963 59629231 827669959 502599840 826411026 510054874 808588035 779133601 945237135 997255374 644930445 20931380 1050507365 606447969 806732060 683827486 232411698 954765885 75484790 419310744 61346744 789629373 1056291502 73260038 102089005 518881211 831872253 707840864 873853771 717502080 948530742 969637718 461074760 268880962 185574548 499809400 403557489 766816905 920093819 494896798 707352273 995126563 296271337 542403618 201646298 37533278 70696066 982037689 746856073 178112731 501245171 391035104 439398107 1001581555 265274835 232311829 977434226 388941700 967139922 778168804 522192664 890773487 198828463 912595791 735066101 135686267 564107632 113246722 1001742442 767610460 159019179 221231057 314683565 958816287 306380731 1031517903 409416689 494073444 817341210 891790712 611842283 388114248 849183192 1046782851 294154281 474157026 808395079 291345431 477060477 967250723 309607373 1050104592 160828802 68194338 664924760 90749949 684910572 139241519 647708144 111135752 567499168 124954211 432808788 685143460 847430164 950303849 183703223 850319504 65426398 736186723 361493316 263644913 248646197 301033821 84063673 1002658252 564810838 916208138 683559850 1011026264 735933587 921928075 572492102 465149331 690729692 668305980 464502680 699109735 81589583 74485347 652440123 177624915 236172514 583969880 204809054 82017386 483769040 962573465 990031759 930995577 471935797 643992283 452709171 102934019 907602673 10199449 490398986 103694035 46298879 484008642 854099984 606271449 511953057 538876782 318184637 74562469 729087995 591078787 619933469 671465411 81130381 182277904 282415029 9349382 406218807 458984734 287430999 764477995 664003727 59756008 736099279 695483710 834308707 1055859446 701427254 1072487004 59341444 991404258 625114069 37463365 764915193 33044031 648512910 982164750 843759791 264329556 1016211306 176393556 994658537 622017603 298540636 470046503 271824274 637376218 255147554 426577601 734247673 865806220 785481891 1447633 113244437 1018590439 633282671 773874250 851069777 706592460 909929176 692604720 159000382 981133149 270484977 164603702 842983987 771231014 329632135 137347172 1050052501 948763039 683430158 829966903 67540088 695198371 561282510 510051593 488732208 1048933046 891591020 639516492 376489952 223432709 606621836 1004718296 445875340 926832586 221972051 39071614 53778166 448335326 379592572 404387320 107940155 481186239 150199638 966781413 703040566 477233384 723569250 840453870 25243969 1063119779 461778589 426744299 599443051 255013434 800015812 16105516 562130938 273882602 12588689 525349663 947986164 702631788 1043399819 843667133 960299953 189042528 580559196 373481908 85139939 316118221 579701897 615916240 529288901 27288169 771074828 894767083 978144985 161367196 1059297305 682873270 712904375 318304881 45600088 1051082109 114663831 415145055 11707428 321841642 726857935 665038417 446386387 80858662 1062237604 837497659 533159819 458685978 816000351 940482776 328482758 94694583 318190672 845607620 1063410585 96377883 8565847 1043697378 664876575 258383729 488021126 473411795 917715800 686368887 209672828 339351372 806937895 241452261 985398985 34869386 631345911 785804137 323991176 963134335 99432177 376831553 662674779 598290720 893424074 283746567 882338276 904981142 360704859 470429017 867847957 812520032 469520764 1055604631 607133043 83787050 1058862250 838968368 162466807 134748373 1050733100 87013077 634680500 67330573 547764146 977325574 931331232 733523435 582247404 882300407 775530309 1041907169 420493981 942945928 946918730 1033278792 254050093 319533096 48098377 54512234 234933143 254723593 268958119 937862066 514539055 449584227 969241561 252635339 782925970 38980231 331661589 539792961 771757225 485940616 279559965 893884776 847030925 335401108 624878550 965395372 21540766 489527219 661204681 612808816 635805317 967028658 128672425 1003491514 470453183 909365513 201322594 938925356 58166772 532210365 825272223 120709767 283315931 416416114 710823599 592152806 1038583240 736618697 54409284 496014376 193412069 444900560 766764941 608216017 852200904 665415044 804433359 411710967 746351733 323272237 420322487 876527120 522509707 436631852 988486990 865788270 904893275 809478284 795035111 145390449 797828195 534540724 368891561 780835137 563024306 1005595818 284387588 688810972 420051939 897208252 151514678 212686619 224912731 842756379 573444185 734163188 1066185804 84740486 804634007 763315436 260755324 485129026 133758369 152453593 492334817 107403055 846181366 941841313 309015654 327472498 910950647 38446758 601792938 101768631 2619606 277589217 709210031 845074616 32661814 957812219 558357692 229816298 600882802 1020899417 479648814 115614161 440059920 73810922 435563347 250939562 188517698 147405404 868572507 576807264 865501469 177927911 242200509 645928634 686747244 509481518 75968840 279266337 144806802 757636928 71596619 948499954 704511137 77114451 1054704623 475850219 60397086 904671310 881123106 1065595603 227147979 536457251 626631450 237328982 376589206 249324201 516487050 334634407 1020569859 998380970 145686129 428414664 856235297 992582644 657925201 71758569 20558557 165938701 529348956 691653401 708833162 147255727 178439601 102851737 726426431 839556248 444827254 154986078 384495120 513690792 969089087 195304998 1014891088 567742345 832846046 88241240 1003233818 357869623 1045918303 217575314 151971610 404563093 1026206869 767941031 976830337 494450877 617920497 642954365 850196728 572072647 837145432 928874310 757590886 847653426 695725695 680836108 697466385 709018825 434046903 309051354 13580328 108560101 28078007 975156726 1004941474 438789403 815491645 53151663 670344200 114269599 849896548 575177221 306779135 373244570 492879928 159711564 308345579 105466417 352769306 232933926 360133654 355296266 587513479 272753980 2321818 520484106 869503810 923304331 822507623 821565754 528477476 1067468951 213776281 466969707 462683244 146564147 121856298 215580557 399441885 196786816 154112205 911183756 957523454 413540319 454275081 1070212256 859751916 969092957 653553136 133617788 626417019 852199678 677090924 212950398 211021000 320956952 614763944 630074079 694347563 934882629 602338170 31564026 960783145 447637967 139892072 81945152 302817833 1002264822 810041207 155760966 844695610 157232529 136551183 611868688 273269166 992201192 446721645 806803649 894293930 531459336 848900144 368662480 472541653 131796667 676204096 759675560 684382023 918423917 605136366 810993931 1023987767 540399479 586143466 1202862 40816506 983360410 332029746 4647673 499019758 547036199 1069864702 751282535 680537364 806819871 875905268 746327262 786953237 540099073 512954314 828202797 38954606 967422180 822751743 257411484 909732639 683410025 330463887 808514537 881037621 629709422 347215792 605697269 981709101 852366751 44798168 388593177 39963344 149180788 582156066 950742735 428976848 633529211 904892961 464469516 747201513 206514427 969349925 647325051 369117202 785337801 593281530 22953874 790982100 119958463 328508891 478491190 596167797 145562324 931173546 327208962 391957213 1015209828 471436858 895727289 439854527 424721455 718004011 648282891 121541454 287873608 191531219 369823425 489572352 645978048 358919363 472090312 178537490 20375966 273870747 564159089 187664955 423319029 291503030 367953744 480616110 473558440 297591285 295433264 393294280 331430973 346048656 107955605 1012013242 1003655749 858817507 845589142 701157835 193412783 379381181 561036014 1005883512 637666384 909701177 1060698761 62706437 599086214 571032456 1046745293 81377104 1013417412 958839472 728744137 367291456 1047940 274910665 451816357 33261606 691096030 452443056 560838340 50877320 418523654 653321447 969601267 959123611 1070322801 551240913 905816844 509645639 1023188099 1011147860 991861125 512329224 317715168 456469287 111486345 984374635 474254887 351743394 748408117 47342642 472410342 921778057 320246850 169332225 636082571 853759314 519457841 325081262 402508739 156717827 69847866 892634837 59943673 527140665 838622055 926980696 426317439 267893644 757288827 683520473 91946227 486876761 149797818 684044155 336944062 893064936 970316891 848611735 740320730 408445741 917179019 57735338 1050632258 908927895 1013880007 653301011 712600759 80412186 1008026228 819603265 404440857 582677007 19690675 886026236 227054433 301708721 322938214 360859193 151857987 856073837 3211074 209084907 219912971 586691628 347169668 460114728 671195725 716984774 475700334 529292512 397842908 939519501 159282292 210977615 43683237 523349464 471872312 752229396 540467461 513770083 157919998 430534565 526248786 924942868 265856170 907547780 548327816 823773218 742524842 683559684 164159201 160324768 144366685 992037330 53414435 914337816 35737288 121205452 811724692 883082333 1013317290 870145213 535575571 675592721 986111921 452228331 449136225 232760201 27880839 540447319 128685344 365832684 714683695 890927239 396240906 819177022 785178929 826848403 901546711 1068617162 110784687 572692033 385971127 1045603636 60086792 993256696 676150780 436739867 795274336 584768024 1000332474 1039113302 296857710 14536081 558651093 837129742 30403464 220279606 1024239760 503756379 1039550229 415740244 763223357 494679709 184993873 1041819396 660288210 645639564 722981665 859515644 666449265 148995040 972372418 997695766 1060463222 1069203311 762771591 1004314447 315937176 339410328 858214438 504852418 312945423 313037992 8422260 54391843 395686396 406946710 854068156 671564175 309413654 788097947 419548059 908930821 865407207 17808135 658991744 378113375 306008947 102297847 49269400 810104540 79193946 673065578 672681456 372206009 768745564 82919364 657994399 335805658 341697176 477286035 964414789 933084338 554670382 41450063 510056704 908109864 202701691 682593352 814353896 1009084005 91315787 309445256 763978029 864089340 204715348 629257061 56576302 557540497 264664804 236441903 476166558 1017834961 792511776 838376086 955475392 475364935 1061548625 254053446 397397011 438267249 908915296 324654914 339303687 925220187 1009695671 669094514 426847818 872693143 245349086 528171707 254913632 363735919 849680952 863175573 563470359 581547229 1022380482 745846879 480810655 178306488 200378984 379287138 691887905 706299072 338951981 490203833 403434874 520478150 583411266 370352878 1051505612 160386563 361748249 814641640 378609623 900412057 674921292 535616983 140988994 888560210 575080397 380939095 995855572 246417965 352843111 262172164 163149962 687836859 392484622 741538947 876786805 666572430 493174989 350929574 798678545 613221407 998790920 631690169 766586864 989696100 596335622 562503162 935601533 518588122 120266529 114662738 181403917 736803483 659483004 407517974 85439757 640334590 146300305 26702777 584917400 933314610 761463402 783197114 12798853 342534752 742324054 7097672 1044761887 778225639 765024629 640395233 6803696 427669929 921982978 239314955 711441534 508353588 646369480 33550844 430024598 80896046 356524663 939089058 845013352 1071491059 387506365 793012193 935307726 925986813 631052859 617790523 393962162 165635801 515537251 646409670 626841788 721136566 745487048 449863811 479049767 475498707 613385618 1054578327 444256782 426488158 38297900 356261409 500038036 559447 229218571 689486226 1071705917 421126030 212501219 787921831 864587515 68664463 875639126 267179183 68045427 583810354 29127433 352017268 533371499 459662724 467332 839192997 623339913 1037459054 453143998 740749326 531064295 33297703 261894290 869933185 951364312 65903514 429916879 820363539 699167570 26608766 168116093 968456032 812120645 191615606 277188716 924904315 811069040 197501831 153954570 747382031 370320289 1059988697 872461131 798412273 667297679 1042794168 634438391 118760632 228242169 234628339 614534743 365326806 414531889 196847166 1003983518 947881123 557045005 848712369 375469460 328404572 785269808 430979786 869476099 111375930 623002173 66084493 721394163 85434812 122487705 439572119 484601294 330323748 482964840 277764995 30128214 212352371 462119281 273092553 161887971 490854637 781374817 80038498 613681520 635723908 468590760 745423292 637420577 704411081 275639010 333461633 44463182 505235772 636231063 178484786 1068311570 260086561 284995232 727314109 461406537 1046983322 516931030 566221088 481082825 73563521 259419962 740978320 567787168 140438602 652189861 824337163 1033455651 170079194 332330364 687720123 176768312 536789678 50961433 1063315348 679729390 792643716 647131073 731386460 969883687 130120038 603639790 793114419 1058107347 333131099 778815761 97040755 778679440 548747866 445872600 85835276 930749996 394512534 313643872 365306101 814317671 899732383 942432942 738189968 20553603 178655318 945796460 158436311 586503721 264033870 688245815 624828196 95862352 436555920 22650436 870020176 853285262 865375529 229926075 537122295 408017210 419302497 264235458 992067848 339972028 1041622470 340828473 470044061 551956530 1022019205 376357586 862194727 557197162 846861908 411844125 28205088 688519120 52663868 326672624 664473458 609582381 85929803 21835135 984415558 515592056 1062407288 209643864 492104211 289340313 688188137 990030449 544517908 869582246 704768090 187500263 546181429 484385824 64057224 528279545 627407655 855113532 168964272 601455291 888327690 885244647 662820736 1001228671 670655360 67142387 415865260 697681440 262469225 448082724 23738 679617064 771227902 867309805 224321922 407139362 1009218696 438448166 842593692 899066430 791626476 337466796 593686529 946296580 392884246 807431454 1067096372 1045276314 536088373 1056259608 813591325 861264679 489621845 1041565023 696851831 928730610 132025803 292103061 964163281 827044305 360338590 286693918 62635367 754460997 553873878 308005898 115457319 54334224 1056781789 270141412 466956442 233099835 522590576 650168470 592242065 4557700 767527216 932821282 335158895 675544546 486427641 378637187 448465334 410053053 880950876 579472979 37678328 554339594 61105777 198690448 695983627 22227208 862123223 853247289 646094588 414260775 764400643 843642080 775282353 464458699 531441513 914971649 850475 102786287 916492658 585082663 142979571 100478921 441028941 350014528 54071359 1018992407 833158952 717168621 248944037 737698891 375586914 790377804 969944288 257727875 302221444 648263593 78871988 391101314 741870098 555303255 322681833 681411057 198208428 664113561 1036566116 382345612 728820955 647236302 295132174 269001762 433711441 362173408 144390518 791837249 623029911 10784830 371742157 613863655 782999198 147718672 738091444 1016473887 279923658 87490147 648019956 857500611 950718749 656947681 745164463 738902026 569759822 713501066 966053550 654445231 367183236 181388612 788115883 112462864 123916654 523477326 129605358 443423030 1056198424 307351882 1048368807 207631418 941887626 517081257 849339948 497460653 665324018 848455181 595899155 760328334 901984771 147048758 1056646525 258257386 278635082 1063593503 780018485 998782546 823357855 209943342 209222199 716290694 736636600 929371344 715296053 737367008 790744643 990445779 373100127 70047110 82616394 785276192 582191868 406585557 372245223 769764683 105663320 950444889 881576504 263537641 286809402 893367953 457375543 209344480 891926743 1032297099 284642657 531744870 641306550 1023811360 904704094 196206260 480175095 234361583 1015855127 904977604 138411314 435100229 935271976 553379467 793524043 1047695511 889486606 694920223 810838994 186079868 411350099 860230552 1062920834 927962582 1030566126 667072661 708829721 799698621 548416146 1007512217 642112017 671101393 82627347 927284931 658006455 589093159 660756159 470553764 168506336 17950165 337849938 488641491 763757201 25684631 167936765 5054757 3668141 183588810 919214329 187891694 1066788177 450209927 31861665 1036956440 267111005 809986803 672180926 1006977097 415662665 429459673 385389073 861396451 205677097 764103191 715954133 961998190 1015645934 301163181 1051597027 280613653 445029583 72209673 679219106 343583965 143293447 16963188 942712239 802728984 747370362 264019467 1011260282 885808470 8371978 333013345 616855641 679874163 907510222 272461647 943995005 238849817 269002115 1033891004 621137411 238671314 841694343 1023631815 90506282 907767110 128415341 408665351 89169382 594587715 120337281 545247515 811083189 741549767 293897585 267599029 946173079 133616209 243679847 934654845 944314505 372746817 248286957 812836591 965601502 941656345 649451507 340966417 96665949 24852557 95103205 356924786 923936230 923503978 342424945 235938317 215616454 615044985 350120290 121620105 430912021 210497149 291234638 554612644 215902903 822454322 1008437215 303392856 806384004 1150269 19175476 613244662 472055104 913673586 367162456 652398735 1043730513 801081368 562530668 373440653 330450787 26952125 1017176433 958798579 828755933 617452288 495172612 900029317 329235945 778685478 877953045 339195864 509960871 1050288194 196611658 497475386 56683958 765274476 477217895 227804963 974004699 454848382 634379065 95445303 739913005 559318845 1057126647 963086145 234157823 663396915 495363926 231723517 442131650 778890341 351870430 147895685 506529946 348759389 563196333 407805427 1041041187 270492471 36079671 96377246 242290155 7365226 631399717 956346025 746282957 821672541 784063670 1037148988 287309442 950048866 425689037 466188846 1058794993 436203212 711519394 636449470 147219817 58296711 535866102 115888146 629133318 812269379 128699106 1015519881 123964273 440024119 1057582925 585621684 522566405 977958885 611139761 109821482 1063595957 228273697 121020112 625959075 906013863 890838796 590455013 141881225 386433435 388446867 740156119 19938645 548484891 85176958 875115105 430772473 667873355 292476751 873164716 57321012 905716670 779136435 2266903 135451907 31985534 717683680 469244261 934241064 14216290 389127321 521820201 817114435 759389286 78588681 587659619 578973486 741845016 70996248 608863139 92884675 134910956 320673375 30449631 240836193 723940156 915096990 533022008 459177496 649046134 631478527 821951 618926587 540990835 500068856 891101207 294391539 215689786 538283793 1021898292 744721380 1011770348 424366226 233195412 406560090 977095280 628493965 194084608 296088924 476874009 607770054 904003167 231758939 385380735 42385368 289034369 135770714 811880176 58776614 497277388 701700740 687933279 20783510 981555468 710896302 413124232 939277151 1000255993 698381384 380166687 32325045 961874314 964397075 763074206 199044858 22346973 659446167 286658643 1068033679 62669518 220998670 655651851 813909574 581059549 77012075 376776316 644076964 690023864 989502401 624666624 873054285 353140022 978384733 287671928 548816585 1037204906 471107230 562101510 599496759 249059537 192347599 195624353 583309429 209199607 883242504 566200574 777137225 921893442 380890206 888571643 888328288 376695412 519881542 682130108 142797809 792736179 397836207 764527895 557961200 956437919 820716431 76246527 559790935 980791239 1059879734 118008679 109335089 582898369 1065759770 672338205 632558170 906494870 743243247 787418780 838355123 257313990 929597623 280694776 332320986 298411256 706359578 1028946909 194467782 555310727 271764300 117738786 19148642 281319668 993528205 20318695 524835788 237429154 471906135 882336535 251103117 771306002 155591184 892220959 731146740 547482100 163796292 97653726 219503830 80312319 875363726 777782914 885614518 1019237355 80896644 4692103 242210063 403774690 78576962 379243295 441298563 72752533 942922534 924101457 654244312 568443639 730482680 578782279 918793656 35840538 1001444902 992868474 528073689 264715549 852912416 620704056 75969046 1007132546 409527458 605241199 965081635 684371651 324359550 1031318608 248363010 702814780 117403349 169682793 221623468 78839725 162387809 8604924 545693410 994387869 548981620 640742777 974332472 571023003 392384898 935398647 1045765156 310788103 997932795 686653620 1022160127 1069263990 1026424270 713940374 146625682 71422159 1021424137 1018574663 761597338 905971875 728093819 810993305 287300383 203903469 17969950 492804005 1058376637 680235321 686092290 992323980 102864751 22330240 844798353 54514124 343410802 586884594 35051628 456296930 303257612 497948782 86364313 773562988 556785112 858544802 628641772 675401147 586653418 707217745 173200601 978455112 777820663 130838227 827569163 136667457 961030516 248343264 200242074 737354594 694375405 249467136 556436808 880516935 572692605 332389819 265528986 127429093 530363659 84410973 375844372 1040905005 264266909 857442755 61427275 140269436 866904185 244887681 23940364 122303948 601606289 1070445194 544550814 808256398 741080175 377188520 649037317 205317706 744440444 76951333 422958875 624960478 455472604 796655141 996598500 316397714 154434244 542560706 186590265 1057466085 961129366 508838079 1055715463 194791748 462512856 961585560 176915352 999454175 948866681 3704743 66651593 985490775 623921964 625879629 75363392 93293662 184772692 24130875 804089524 140165550 783294315 715902060 1006527972 558853480 384583118 320318581 614380485 717951171 912535552 18817511 705788460 1072375170 1049698741 1057586612 883475207 781487815 1072001179 322366454 56390592 734639571 315292762 864732765 361269506 773913325 1004263768 784772473 708092425 877882626 898161554 717132490 246659088 637904012 800581971 720229729 598411525 814723031 297606772 896802141 45865661 494481772 694785509 902465796 100079720 388564153 994023154 1021540309 526605274 139466816 750717540 491116759 975782364 653275239 1058056419 94245946 1012301509 308113595 54110872 1034578835 135000012 398852156 1043868638 194650527 910706587 325620737 123957081 161578760 656446168 734096934 374359694 605259944 696560268 404620615 632325490 158233456 405772840 294233488 181869068 71152622 988726050 451035698 653501123 869302390 408328379 898254257 110851082 923051483 570886371 301334761 502746194 78830113 128987766 317884100 166690642 98470804 1069100779 563188943 238244653 647434967 628756471 865418375 916286856 886492180 60862202 674541961 736078999 214498633 433908116 993089753 949908327 303987344 686915182 439366377 227254005 6184133 174742034 14459979 664902312 54110881 349823823 869057242 383946101 664726029 60647182 333423513 315040572 824748579 312256876 53004014 320345259 741572382 931782443 65316579 765805415 273692055 128695196 17207856 60291817 826355369 801385602 626578666 679125323 206327003 156870884 969113394 830605096 33119174 386423813 996214594 469117738 682934805 407498113 240990297 328281338 925150953 495608090 366191348 281346913 926389828 512411755 408583824 662678142 76816208 844311265 47816244 536461920 459593393 294785508 674636066 1003624718 422090394 574708143 1034203815 848364139 403112524 812942669 561084660 97004584 350401569 283762925 244787955 457709007 845467129 797889447 309771395 26068712 978044278 688455630 173586906 765733932 364039121 622775664 474970282 543660803 626593056 48693130 793434510 267457884 882378969 766461033 691146928 284856129 860259618 1049833767 424443141 107639089 1005705517 431176408 172467724 1000607057 497534979 838373450 453512736 635234347 622622997 305383960 1023412728 425227215 567031085 189788622 925113548 277745904 787670480 535166522 950723424 810858245 222885122 801577260 619956319 404409209 428757686 971957491 578174002 1001763606 137963513 101597850 273950769 193612400 388765577 347090399 661084621 445124386 215410058 159120958 994687866 427644745 741042213 364439588 140730107 350443395 973831556 750711089 240246651 457035147 1000499832 139506530 887622367 699981204 780671312 357196118 761113746 163520681 568627270 1042416064 1021677534 216027053 787482121 917801283 27632968 339472108 352004525 45354698 325339112 1038055935 753524830 111029239 108827773 687436669 516300083 605271001 374369600 163668641 35901840 51353678 802179013 275055574 151819383 683927251 409019381 776682865 919082823 432288003 59519471 434454220 204775236 917630676 411476385 735293711 353660383 847852928 479782429 776928839 305188622 53096330 1051313817 952595805 979741713 129183356 725339433 574650517 922248645 777230526 857236571 644077891 861516867 511044257 576330688 768123909 474719866 235461181 48722652 749465902 91034565 755498560 252448014 256941776 750753779 77220744 845799742 297733904 288836476 414397812 503557527 731545093 518888546 713278211 799485955 313717854 20554578 675700603 221162924 889708023 257033206 418161210 904524976 906100095 268195948 862844545 271418832 54275732 492532026 781726618 634868326 31905543 204220831 936653029 589208203 536406236 839497585 675582086 492207269 841670845 549604378 55952593 767519235 855772148 644310168 131637170 414375420 815196704 147175653 890022609 202516600 231264764 163078827 539559563 892401691 958539568 708039343 639375294 187493252 187193648 979435541 675942768 864674460 317885871 479124789 392869611 382211028 915765946 79757777 208113859 466257996 10716013 115337192 1060286978 7176669 567895141 409293261 149677923 777280568 921291507 914828387 123403590 229173918 564942269 212333157 1003352902 397646349 586132511 628035649 822053194 208987422 384502575 140335802 449410037 951730843 77602058 659515964 972189065 257176621 141440402 669490116 724255876 877675310 905530308 174886436 42904817 918507067 111607554 753216678 716354105 51579225 132761728 784082653 257669024 761060809 443057911 999945566 990628662 336529070 486804499 72890370 249294413 829249877 379267066 905105602 368253612 610191785 40282338 260765038 1023552577 893614168 994476629 66867810 1015854008 998782581 867549142 797362163 975326208 324677606 113656912 639012572 58550049 499289842 84437805 732457651 325295495 974938461 251918652 545970214 284954811 874613814 329489621 850066487 169964899 1005419795 657435064 119023127 579341361 798486503 403677162 818493043 719075914 589526113 1036641460 336585695 42504054 102533848 99675168 99807336 322489708 574444377 722795546 70621748 186807630 41810661 496923318 884661134 1056818521 943754874 847095225 930926378 14670329 77261652 127820193 452807663 427511184 344849580 607624553 388637002 95653022 937474813 188173016 1067241236 794828802 146856961 832355356 334169018 978379808 187979382 555821966 691368925 949858194 722868077 627957346 80961351 216135975 778405857 205191390 682601158 532421253 847402674 98655599 499279615 557135930 110665426 263185178 942564240 1015298607 399558809 331926675 4512569 306916865 429977609 894266057 1028642662 517782279 901358753 436344840 740383072 1044392136 460290294 330999790 163901593 249957921 721279200 716441422 430028399 580880644 763893872 522355130 127934603 1069658085 704507493 828973933 682827207 864436232 1043055158 953282738 656565374 544968101 884619159 819881017 604025006 602818917 380124773 529663768 701652344 749805770 363501951 516404710 297940937 138899504 161065333 629881469 750174779 702857817 495765894 494859502 644841800 126634877 9438343 41351868 776117549 666808618 465425424 510387345 322924369 60083339 360275078 524528588 803537175 309582091 39720815 732990984 412739745 39579962 444865799 673235043 882126248 619176392 81255947 1021858952 629765544 1018677221 49691616 441083310 173132275 601357031 356367984 171353857 21847162 680104298 276022878 729209400 264235065 114450326 570735234 826869898 179385181 274185401 20183124 771646147 990200096 468938563 379326249 261866405 853924056 476268232 1030282012 544530781 643530104 787370238 385054682 438816633 765214386 569579078 838619921 131835869 910025681 946142488 886553847 538612171 248711274 687153453 60721155 710058420 694131719 895567903 518096303 890511367 5464137 891602142 277248433 271865308 923858088 276943684 985758686 33478253 969912523 52506798 325255475 311575179 547368259 251429276 751645067 166026313 414384629 369966303 388221255 61552219 580932052 159017807 573945262 285937596 744708998 354037883 929642251 112448823 362652449 496686317 967885742 693019100 729976985 449050858 932004706 879470587 264739124 761574348 310402689 320929815 133584538 972005556 1017621909 933730571 143575799 747806479 235088831 620797006 642099565 474969280 33262975 362892626 763225604 717138878 208859110 1018522392 942218874 980298810 432476350 464553084 961919191 420774220 677673469 30147425 271771793 782587681 799203790 422077922 395410315 346455123 1063826510 484199790 646571093 439697714 911544954 552002434 941707516 758772053 460775962 896781288 564001715 927628983 1072518628 689237696 1010661725 984095382 938249193 1020657649 783132299 268301413 16417873 29419546 69612896 1034509871 105553927 568195115 1002155741 703317264 395651028 88593056 155319806 1044253799 922447269 1005396950 938185983 398286883 6248418 87486889 387470038 630357448 74001691 951827463 847677864 147498298 158628520 476475779 837974906 438294024 21806283 265946072 440776381 171448512 430643721 129264544 780546314 1041388535 913925683 220046658 654879495 1063730436 840875645 454118759 503994854 565540212 776642835 309377132 198582932 259094099 96703665 962439477 28567257 860832741 717631985 58317328 877878224 746112020 281305649 1014742327 142346712 130704487 184875788 682991191 965142810 36290547 457159363 1071388735 383646960 953482408 554891525 248629398 495742325 759873153 555648225 432504868 555902533 199689976 311635967 119065026 80392893 716666137 504361465 370502613 262058353 155848085 994072135 743575456 670989830 471422308 593242073 681606989 247070136 843088717 603506825 703256697 213426431 847434554 767789590 380650463 838451496 196376702 235203259 234723203 921325966 685577313 234912391 78184288 284497 169665933 910866693 52568954 643618163 1036604852 282968244 397370757 917285483 521926182 509299565 187232689 905955277 394097914 51293710 727839484 922872309 964682758 99931092 927410309 598720081 760192353 468345562 473851114 852038784 397046478 314879986 643918277 251995856 328985232 232042591 412471424 914464096 95874621 1047054056 694364461 198181875 178153299 272504347 17617513 319113421 570860281 38231821 155296362 88770943 980950396 972966149 248965824 786317455 787894280 55471861 737044703 574343102 584479760 281915838 276658649 310031898 487709553 193204080 163033215 745586459 992798139 526539448 633645397 277047035 975535829 1038207603 1061981621 398275274 911149593 96674585 981074573 1060025068 299078763 749280200 630544014 276047601 595745729 112515020 296863976 758348867 74509812 526566681 774382677 482708879 336759212 1020993329 325971862 924870891 170341682 562704386 148543656 968896286 909216170 818437615 431065369 702568828 550304334 1058337598 356870274 971910850 491406929 902225427 826062646 141262946 778410565 156894342 31960030 776347272 1044120973 893805802 952559918 1018683959 586692942 706859554 1049055733 642053105 349432527 967636818 131451341 708711119 388081379 1033638028 199477866 59452670 462877690 758761593 252740594 865457663 641498474 722032553 153750276 134488745 54958370 375233240 26289273 261601776 1050139390 385029903 240860564 681692374 630850204 664486913 808922453 289118056 916148884 830130489 552914511 883968018 343789976 306515046 781362929 577734413 718701765 278065124 816768672 417394932 783525982 342604781 454983757 87460645 354982673 510768742 312119674 278601905 35569634 270565644 650007661 56097344 1052179334 174941008 722405328 292490661 774057800 402459731 334682261 787110730 1038559066 915142033 705422963 933331870 113546054 137074801 425162491 455123065 583217520 1060227504 406062198 639026959 75738126 433460600 585146051 628489863 334582258 126209987 76362641 288680980 694949884 945042588 457359302 756567691 364372538 968461882 652656835 629607438 192671165 895970614 1006278111 314768975 242189586 584550044 809079783 505179888 747198824 900455716 833987240 768412985 740151175 681708345 591539080 523081783 967590680 744652139 827011695 612940832 147724286 718374526 770558407 533870963 173667040 799262253 112412230 914239988 819554648 965545075 852279921 644283179 752057634 481788506 899941783 614261973 970685965 418744114 350673894 1006215854 100870424 1066355025 901906106 160640522 699241071 378992625 333672628 271209622 56149016 663092576 275032560 668497459 465334348 380796710 3644161 185573890 1006850109 840283178 82045823 564716735 508017346 624229302 753995352 645638515 655968785 935429369 98579405 134489860 170133270 528859364 609308748 715290278 863374699 439520754 378271371 591987400 893721476 910259723 60533234 819601481 384274775 256459889 637792285 613777391 1030969032 719942176 514072091 664647334 689627683 833578949 789168065 158002183 939560304 764406843 782579787 7972888 1027160164 839977509 230248751 689914049 944773313 644870495 1072275265 37374013 83074511 962715928 52372243 812593033 395011856 655202968 968513657 301613851 563984659 173978859 901828458 817924314 811638472 641063017 792607946 512655373 1052931826 619232240 107897315 559012925 637806302 58465311 240067884 379526461 746918269 558047478 152315031 839677790 367807150 685191007 308366119 568073832 242097574 465651674 603478584 921377760 678364426 409745210 774781237 204680213 740820232 788501970 251968292 407672588 496007777 910766124 672154391 100655045 731717053 518501271 224307137 1001427501 619620443 6939280 869499918 454251498 457071586 238162370 18798798 866212299 667624603 56723376 95377708 576169073 1096946 710439857 89449023 1005484628 608397672 508556893 555144916 720992922 126344589 172906118 657705923 1034211762 70473846 455661974 141400405 275591350 337328319 631984326 707612407 645601786 733602777 895141112 961359998 275523398 355298302 64408442 40072918 770451782 85160941 120232112 258271593 648505344 720991468 874483014 698164550 1072720377 11947831 162300461 408296060 693618650 385057285 707336596 15969977 751376364 363211767 921661748 275651660 327237734 869556935 1039471917 800046266 359536253 727892296 790019138 49064488 7814051 888584097 172966451 513644572 705730389 522269506 110135534 825514636 125439604 407741917 963342804 856434001 897327894 1039020331 729709152 236212323 172248479 262232732 545750081 123905450 388812034 612046078 68232678 606999398 1005695885 600586307 582325070 667322423 77748987 496874579 548000119 895770412 810682439 242127833 149699755 515170573 276665953 380593580 671361714 451416491 239304668 1051864479 119080312 933089501 168023823 850158612 598127268 442568954 116588899 784239177 50867169 1002108559 280747032 156802730 226054637 830533517 485250506 698604983 623684173 660206198 710420749 249961444 118711866 305998854 283174989 616695768 991055126 232075965 890135609 765219508 391037962 952268252 995529351 175282462 246750218 1069236634 178767120 174498516 1050385093 137913566 649199531 754193145 764371975 890900016 109929761 369855768 546312427 337880386 911266991 50028883 296123390 471527427 883614191 1041272002 188722320 413174094 765987021 625457985 113117141 104389983 461283889 297861582 647925248 171849897 776189107 125598419 4321785 348331881 479877057 925682089 729035373 680274293 587248550 523564460 513939872 429849505 741415279 784655777 1011956603 842313219 1047200589 508425556 582867436 612148422 496045183 325467639 366704492 361342043 104753390 467937334 27083641 753948886 219539909 188303898 1017015213 297847455 1013730363 641906298 680328063 1023922710 840185859 1054553678 422783693 608642345 113251910 549618177 623321235 127728253 871860247 340964575 74870213 882560166 901149108 605821165 17509847 86538787 344632406 427257825 962514752 710464270 472361152 230183893 976512335 954050415 262118570 723737419 623361266 879610543 924129894 646245364 748457258 152473512 254828937 1015997037 301000780 678719068 637751513 695758647 475116103 325710775 435404748 558850333 953651209 630215191 376651897 820118215 923704454 614909471 13485187 435736637 573086120 841009828 691209234 612744556 461512858 799842062 337222166 817702377 896984778 1061726175 462929277 89378653 691160027 715939216 372598381 331250835 688553948 172292255 265927966 754317871 28449893 186090818 107259212 848185819 254465927 273527026 516461431 565820323 948112311 736740981 375596154 285765249 964010784 781660969 727622476 207122196 982224435 104981102 458579905 419509865 713696417 630071299 1062922692 215615062 701942 473542050 623534520 870887144 17760220 828384631 863983148 738840080 1073449120 583145840 748010203 419705200 935465392 700079213 595812914 658065896 683166450 1024497429 690985377 384294130 552850675 333532248 852405117 1001722962 842338266 861890489 220412932 697264468 302958450 800506737 334336107 156407025 221291334 210935273 100312082 133324865 168403517 886679453 45582818 201327117 729747117 1050053343 957554356 721315310 444648252 196513924 239873625 35099493 303810973 1024446993 30637940 242068669 847461743 88792076 634640954 829428748 131873716 1046658589 265661251 106667835 250597626 21545542 224052998 195481539 588842372 21873469 1032107599 71862781 110013958 185764241 326771090 248191294 125230034 223612399 865604090 171148205 113914078 8158415 992172733 324262837 119884703 377239030 1032680795 828681835 407572830 338983142 564182737 776503558 58081218 97575022 888873310 646385244 131938275 468627569 372237790 123050645 489414674 654595050 740702618 860310867 27264304 372582709 1022056629 763834624 828923090 1071709245 287694209 804269575 770702550 168149055 902381649 167307066 375607694 286834440 307111292 1002424078 251990285 488303627 7111102 101675426 34053567 292308828 222346434 1067874120 541061977 63255882 460340648 900541027 662441091 39421662 233540837 194243679 948048318 388539043 237192530 775116217 766897763 993600848 698438712 264671842 536436300 451618089 36231192 151616999 320047953 784525425 68313420 446407263 851091626 244364023 44450288 986970151 1068225 995242418 80998456 789057329 433699447 179025819 58319772 181626923 1034129751 331192248 867485779 1067930846 145621033 526076214 55691899 425981005 594010456 399769266 22581577 1048625047 200938869 831201611 628796999 285514776 767732579 106995754 34137133 778969972 239813400 115381718 686206611 817530679 444895443 557359571 861150300 13564476 12847080 158286696 456182321 945050112 885757178 30999289 78276276 401621363 383602847 134703610 924470193 1022289278 768467506 896653645 11135527 166696357 743914637 684169662 527707531 648147644 927324869 532013949 473531555 370413914 552898774 166923472 316729934 821618177 412432941 743354696 84055619 745523629 83864647 965421620 700098555 168838898 572649721 112706741 1070039128 220469680 1019200339 787540088 1067964752 917342642 809758981 661913836 74022117 515856225 153657654 260673307 870331954 483472537 477011886 854814035 59381470 926957233 922988905 939906196 991490984 490229074 605944329 433621245 340639350 1030638339 1028746451 736282390 641157096 202178053 54505296 546621833 881834844 250098542 758343954 595161217 312050172 864677725 78786437 784882652 997183996 680795735 1031797066 415268569 706611853 211722507 444820801 883375386 637843256 14559123 860307432 568821147 827352808 662178141 599771086 528120247 680606318 405786042 110204833 438213540 385267633 270603292 494920551 294154342 797504373 395633589 540907358 131676837 1058641207 797822023 285214812 371573339 64691586 892904118 773492929 239087521 1029525000 515019877 957729494 529942189 700539787 631563933 317366924 1057760279 440915664 554238792 664962115 626150720 60423552 685223141 977238542 854083991 380560057 656939931 84874704 535170302 389096270 38822363 667126182 706045155 952183364 815623706 975829316 990138093 296811209 323481743 479327424 89713294 1010472140 28409712 800905110 964377210 77152846 710559749 16191611 871603201 228641485 33849413 442552210 848182299 380451413 57830748 629727664 436247926 516575949 808933565 134775479 335851335 549885634 1060922692 48050155 528631457 195128075 23806977 440566254 824404398 907007440 928952916 436196505 530754332 863417959 152224646 302288272 641261084 577973238 814034901 477212809 138359442 770398029 777804910 961587493 400957581 17788559 868827250 830576431 44281733 684933292 774352544 1039614198 970419588 260341926 874968311 854918867 704194925 194150111 670193372 987411609 1073338345 761044037 533311686 916393441 517926415 90703576 555100985 669436251 1043173556 488300901 555688457 323281090 185382841 812883289 419369463 723638447 123956788 501160638 1068101291 434534802 233794632 496966722 559148910 587012175 619787352 1066332702 955919384 235079735 477414296 758192066 163592514 688811930 1056631428 403824704 244170475 813097654 661042096 70665114 317014812 104035006 1045597253 983860882 410998653 905709500 12934307 377992655 148355661 731783195 824704710 660361172 963075928 123268185 3039760 920517566 398880794 313696344 96306741 1062596015 452581888 677843221 874863784 507018593 537365750 817917216 935527590 136443560 29805512 509957436 520344900 915500489 959439764 125715022 515829179 291058877 817560328 959826154 817832016 985344061 1044487563 428034142 433342810 924812694 772059032 720455218 86926769 728062037 1806650 85096008 963156575 514271756 879386536 66658241 963087831 88250846 726073568 953631858 149959539 307470214 955604821 768657177 506253181 667180615 94985723 822139543 956858203 737204945 188447095 711767571 1010136359 764639426 180794556 694164747 900187126 820311938 17042999 592028924 563353190 183691550 828168129 874289336 307038256 710214918 902616678 588060489 906074567 794483923 403915416 849244531 823795381 409306533 730939021 829061055 699514536 749297927 342094289 761699459 873357103 573498588 47192599 410507097 547944234 20670146 113432585 869212584 185731824 38275373 111434012 179908202 795438018 118601185 980527511 732866578 242964548 172272446 275038227 460877605 489541951 54790019 996333069 607408277 445301618 563643130 453930400 639444849 250001085 1006262010 27102855 988608757 702057652 171894134 670216125 796829929 612191705 653272059 627417030 759514648 616108115 691547405 1016427331 474533443 340509054 967657110 53015034 55413980 425112898 1004411972 918632678 375044740 112030229 1059197255 238771373 812209753 598633 688471688 459525199 1035763183 626751403 502554872 915426235 391098776 292462337 66920289 243092003 999346723 84447790 365285948 563676869 115658437 904025669 120758235 586323595 103198429 575569277 976767144 569551322 440922585 259180933 572440061 907622033 586547544 300310753 902220446 586251160 168669709 156902069 195332013 746811006 850317372 981111751 279620014 757941447 206586248 631034830 92209752 55079151 258815553 946573584 437925635 476662468 692607626 917087858 957100849 534039442 313032743 886061444 1034569496 599607418 457537946 6310088 464888400 638996768 635989276 248919711 829252722 416962922 280697678 364453238 978340189 267901884 747013445 369175948 534458524 302035006 441983225 22935060 489210387 85255544 131896611 452717616 510399775 727555597 466877369 728224653 837965772 702462983 142765035 881963648 886048245 988892142 42965009 891864291 691461239 147689474 903745216 720006917 440650262 563600936 506154889 158704105 178681626 347515023 993072866 521760828 587048835 265040549 315141249 898093033 198247790 1013788538 642151247 190498537 22999335 690578090 924819701 207083866 179705958 767603626 784440229 273904399 142711257 253200914 221501568 729847346 271496556 193435705 1009844156 329531698 330931750 56477447 852495557 197847342 102455081 914728078 790501055 747423769 543884530 123231589 278386404 391087964 304678296 986762447 233248606 13938863 375929715 150825393 792514935 72642869 148440516 18340546 963335128 573171890 125213019 804194558 589682765 503623588 165451827 782208110 859547307 533203427 967757948 572776077 1042445116 1028656008 736481063 341699850 1011694607 689570128 811278795 206792015 96330895 725313660 541642198 462810242 760163817 21638170 810843356 78763165 427682704 963206126 946087531 378172738 883644551 411802294 2305583 932389802 509031263 420911188 863623851 184484374 1022012795 805819234 282067541 466939262 788615959 835123381 1033862393 630406126 212424722 49223364 447619015 145042560 484421336 510447490 10883920 254639284 47991895 149799909 745052417 472322239 350825855 714922621 660701006 422347431 621623704 209564080 100702952 944886572 799565357 1011513064 342707822 735828446 1031280652 978144357 90000015 1040292553 229479977 386423129 972547849 442335560 36095499 741082847 418075317 655251653 508937773 571420315 387766189 920183819 153744045 585752943 365174269 146638666 853656814 918480052 632204917 860085856 466723388 335747900 985144673 178768743 98269058 984397641 271315123 885386348 965918811 150511709 837122147 484743912 626660305 326582467 738781503 254248601 772058217 450140267 224765054 987396681 829718778 643060967 326604909 443727134 236796396 688139354 997128842 469922834 342765483 280747044 353765038 471491618 202848465 818367316 615096299 840137793 86957644 830815567 558860566 35709895 645045300 432719704 308806515 423290317 873118989 793483851 575446689 628857855 8556701 331363675 825054955 157326483 165002445 5164644 358236608 51904678 106686920 978458448 872688321 391463973 443624055 825243675 298813104 677393501 764656692 253407009 1047555050 351599652 317037078 916493397 99494793 916406187 894627678 259824361 791007689 640364029 606239921 662914899 138214906 48742330 498163531 3190713 633525402 125363660 208777894 29791846 200070277 79908745 815168038 140713098 261507446 284459663 464436525 476603888 987211705 897892818 21394740 453895127 358538091 619657015 311183660 508724130 547384069 1027798981 863561108 1044970455 700948284 381160697 109734755 1028944430 151945947 260567424 925337587 1064347338 618694669 875307800 23596947 774444035 187512239 921106225 420782793 263813300 547208210 202930134 408917387 685214430 13663191 846218116 899769286 224450891 1072763031 758946803 709196187 571563748 206759224 620672458 396740496 146128331 120379200 753649626 456715249 976867430 93645232 171959088 122300567 517980070 438192354 787496330 431472968 135445728 451177125 938153430 224923944 623498573 251781256 1045558705 200896535 156645303 327398322 418222999 95087318 351925761 266669032 211375715 154366225 676997012 250993739 233034874 24228913 447923952 742263624 195045185 879220208 441068709 524531577 370259654 420680468 216290251 969101692 630208473 455444572 996831751 457262006 1056878679 41639948 28271439 461952573 956619974 917531945 945968010 551569684 849460702 98020211 89259027 863243967 570841147 220286074 924637324 414457968 441557112 202099479 444997956 294728650 531684783 944282992 265380314 951008162 987528768 615198280 20424187 666306301 738351578 246707337 816352329 443598745 487296577 111407552 51730392 858289358 119838082 566321242 441745753 505852714 131826151 1047486964 279332636 524206061 790532774 635077314 33558786 346259765 19375004 257560669 1031589283 326097656 708819868 345019760 677928963 993167007 800772540 248464818 687418405 739436241 770237384 913884877 675138085 571317539 761625642 1007336176 500140198 980148049 717682992 71650275 825884445 641608803 90617497 363348048 387706203 968281286 142269538 340938553 8869077 559578994 165543795 510526120 726195390 467854058 518961708 152754889 83992273 219214987 401021057 229460989 854571263 596467196 486003300 172177497 414026537 779930959 307695488 219711462 824051606 226801467 986738635 393437135 41587637 132510397 926293072 763147009 781701855 1063312309 345241869 1000546721 513884296 343902122 570411668 795651331 700572931 958681457 794967595 618182719 669474884 716616897 1016484601 192708175 1072104909 610116541 558126537 288329885 176775555 409944819 67520524 943783462 750024625 826020554 541089225 30621357 345571659 158221501 938192876 13214090 998562235 843671589 653677671 13846294 855837909 490342689 382122412 123571987 461875432 772790682 1017437164 359466310 750443980 718575498 1033497301 110704563 536155159 409344223 496239203 1069047927 397644670 209472777 67134548 624401852 554279071 163790000 339705405 394130735 891452179 235641475 319984947 186243471 27108340 688263705 450852204 87820317 1052723210 44897143 293101213 758703741 1057149133 834516133 457650252 403937150 814343210 480406779 759092888 208088311 985327671 428841812 1006395295 541666536 1071542745 338444788 313792513 403017274 862233842 134973581 991848900 167482668 673881189 488908853 450506877 654070899 942820316 983007780 329344817 7217305 813560195 1006301253 781733832 202768755 924131207 251106206 804013864 254532618 279016294 298276593 1050222069 858394394 39195199 915269426 143292134 948703455 926684766 776170950 267398553 1050851931 574359612 362839872 217269675 325440142 645630691 894335611 167921934 234835473 169743465 957574822 79564135 533768437 456767757 296037277 52964951 40398086 991134793 324398772 965215577 114266312 634467443 992472025 297768459 859404472 463602536 308700214 148946413 916743477 429429832 134231496 245541613 497183452 873871972 136393637 14741456 398077325 501445530 724511440 383536845 766437059 581716207 60629243 450013340 150235721 731416072 294673689 62136673 159671684 552988976 799636546 644432517 454672626 820610739 565605974 1000077335 732349296 301935966 49649972 562396011 729085728 815067551 463923971 260836379 454800195 210596288 725268665 26038768 628567808 494708765 335129006 812989626 793913384 133264574 475905372 387952086 576681500 991873441 347072117 608771106 373783610 1044847661 52124034 997469205 154474276 705613014 709951500 388935020 536274305 283828329 744198133 1060291838 735700219 317544551 335971076 846938639 345768394 1023710965 855149825 819931565 599200896 90644550 649199380 315077500 596669522 404381990 290617296 496207386 460597490 734373751 485536058 751824665 472979025 604589699 493555252 868203577 1072418969 931153201 1033770679 511383670 269589429 461307328 192157683 790208052 167239785 368414391 733693682 328438864 347712887 532290591 772251068 426061895 36215818 550379035 773055779 392024274 889555335 488540223 817444407 356692858 57155499 978065862 1048480612 296771091 395181200 1016619901 751168726 184540334 879496440 298724129 259391320 778428962 464119328 218153004 917115228 288928302 319331392 827642299 906379217 136570081 635086869 862809295 551757739 814980284 199506948 996209557 421108595 28431136 296737581 930248249 804731516 248600394 548959379 52416355 707388652 7326299 793462490 1015572161 1018188564 1016407892 505238421 468022570 979921217 196780283 493946897 358267153 449824410 239711933 846740904 830805198 439303247 73513579 741689688 704806291 550538364 577198627 570897893 764766288 432109052 969831024 388857966 1004877280 313124480 975879610 1002133026 498561225 166353469 474975890 703747690 700319440 582735634 578029218 378916952 280802801 367471858 532615291 889751376 881624356 801641220 551803072 181903772 1013864870 411292938 735922470 634613478 1042032798 472265668 564759768 52645926 996161516 1067672213 151199203 849762203 943234743 138292382 680244509 636366092 80913326 612902377 655944098 766863859 53215607 335569734 495711110 545023143 795332479 963070114 124413193 1067234640 366211924 552565581 968761768 1037331472 336791851 242150363 512152203 554170570 601430984 664080673 324563461 81246424 68029173 693113342 608579164 634857266 503513001 871182326 762363800 792130002 519506170 37795496 148208700 480419348 575461950 216097582 743088 748111921 806068185 219188777 654213155 53508116 459975320 251149041 1049509711 328218187 747903989 173370297 977730827 208683615 721715739 857392213 177130410 453123898 753069735 127289255 328678025 1006973641 989257480 713341277 23791673 236064223 303188688 301122929 990546728 713019008 960885060 19541841 454575836 323240314 965707921 358352278 18054863 618871015 724702488 592491621 465599593 741122115 670927528 884932375 37387604 15103879 859041357 726917340 488107672 1072625330 358597284 823129547 603562732 254966600 863698828 945775235 695249790 934138397 309758153 1059685538 592543661 191134096 718220239 559532580 755542451 425647043 228989668 828825665 318564235 873522316 597406129 275620335 257577648 675886927 43981005 779378743 764007946 293288981 1025368686 177103991 125005112 53189405 802376081 802128466 194436007 838367084 929359998 909133474 398745239 653412518 205522951 1030239830 829913943 1072543693 541255551 155018354 559310656 342059922 175022789 148236416 753864036 577037414 930401394 801762553 990674309 297804943 588026812 488255445 240196192 219897076 602775226 686013557 881267302 637422674 774290974 222570250 60708288 972894745 759844755 689962055 867902704 679077303 820867963 776508040 162152396 131987169 160092971 653237930 562838617 82788913 393905922 835917004 445449874 482815571 74123906 659978447 10410385 152531893 407765620 985725945 197095377 1050681591 372254639 564072053 943300074 230245978 939043920 566771699 1007041012 1052357472 548111692 258880999 337787407 813226532 975619409 699187416 564050607 263723140 693146195 756574176 539172729 114565294 41760832 685536530 937931891 285451270 1032352472 646580966 960346613 281707764 677079788 888024091 600808765 430548633 771555910 226022518 893009894 626337906 474688390 784496139 72366730 400921826 716484872 194342159 705240379 495615438 644157610 637260216 523014167 328252612 724066758 915627088 853235537 527423212 1040867346 770949418 770720617 531006739 92726463 294217213 702524356 1045382905 362138801 546975025 436788844 677312014 284531316 67948418 912906758 82383292 161657387 276294210 595595334 9879793 816973579 550476706 828348518 553006741 630333507 251333362 151433774 605629099 468647150 273410182 652212674 374168795 598345838 403773224 754185845 443181052 884753478 887410067 879573047 1040545073 401356990 118030891 16450191 169985219 646955283 934523103 806724304 597135091 394656790 482672582 562552481 370993154 643438737 640884524 629544608 195472044 979963170 1044946293 818380609 616658490 724239813 194971331 213480287 717499602 917595526 1026682415 460417241 460158356 96996314 889831030 885137262 1061365804 131361027 631007888 295827778 411211779 455618252 827280043 129125470 384033050 735240483 1071425009 783264936 108780968 868180756 695643100 168130251 986165930 365115053 276529814 368947699 606665490 712211430 478824914 799577339 516211600 297290460 878397246 147135779 452987588 686029836 175928132 627639593 602680940 522761440 323179989 562229894 980267527 329471093 680689200 39513696 152233003 743539833 688870684 83651421 342159984 219479117 459468586 786232520 529292867 335493854 688215121 1046006977 33562098 998783481 121731193 1071060264 745305123 997908605 615886621 574467761 962695390 224107185 531721743 864678012 269666583 110124962 976009656 499299236 509704324 292049370 23423876 78391657 645185387 75535933 523024551 113236314 704722002 926814380 367363678 476097312 404846115 618909987 789767576 761064055 314390518 123351000 934390531 269403502 515849546 478814631 101227375 421525754 567013291 175066928 434628382 729172253 857278719 865302308 836177405 118209726 1019736082 692640379 586526302 938064968 650378336 299174285 326775418 882315848 993766784 203966380 874363208 978549878 116112281 160909519 139081943 707456890 63503752 754522635 513300666 262231283 806667009 446020718 225860323 933320759 68941209 241165228 964453105 770605607 218685133 1038779010 1022927730 132945613 350957396 841620574 549386046 639422302 120391654 137702472 381884432 504756556 661715352 334168759 787218131 274549232 395103931 951452930 813793893 553574689 678654526 32680371 106923936 774043590 94326920 327262124 566329286 229943766 879280155 378551765 865328297 333710916 11540337 825295724 915857372 644529781 942522657 190091888 175790356 832315562 564450616 95734912 730712156 1062339646 354184751 527725491 749990403 493883020 336836461 77260167 224588897 226924957 717056578 350880745 384117003 999028793 627431905 70750421 489949900 494243884 267890905 256137053 429335699 625065041 325425747 984683525 404438605 99570007 343823338 411332365 320717613 806289627 609202571 240079674 279361304 831683768 87473975 1034286633 118684831 350133400 323109426 129744496 361177784 739518780 651898596 80833263 732720548 768657276 891649552 550946640 433399956 918816243 509952893 635548503 811643688 766662297 941371191 510350833 806872116 303068915 81134014 781796066 619241336 558709683 628250497 882834637 462488761 60622368 556603658 474396284 880057468 949722705 636228439 51173656 1023651676 819902717 806320054 559338852 543655851 940129284 937274377 628081777 702812844 686864558 88384321 40540706 243750030 533560009 91516105 555685775 811171863 942305627 1043126272 672234269 663632765 653333273 823867746 1069061735 257786889 137998503 313815537 195867 594541406 356129534 947569491 142536607 344914853 146199205 283561441 199817628 1025633090 392653387 532890657 822721151 199072553 42073146 1017335573 688379748 308906622 242035275 967200782 1001449230 837781799 623568706 318772185 552413860 1014070151 611401436 845094632 698267455 435560693 578128432 758618419 530996396 840161151 1045045892 440467437 107945067 646762547 572764712 750061274 866997971 360963915 463703766 712850747 998290595 946238887 952592399 680515544 642596950 579476386 1038987241 524197129 1062754294 1073666127 312096496 84704589 208360899 1049273598 1023264832 457192858 1043015958 521588830 839621659 236615038 653125350 962734804 597931558 462254672 640754817 367927100 770176541 506741672 518149453 421137599 240155000 66292018 767482806 350198522 328560832 688092077 898436619 932439563 305089115 273043339 455917401 70846580 223832086 1017585863 934341065 705709961 78712808 357499450 841487119 13929746 523183034 804938682 989091050 953678746 732766344 1068572153 657964624 190101743 574703195 80107603 39541672 423245014 589141834 977891216 121096601 643630237 459417265 930238024 249606896 848917084 534846356 324701837 1071510604 758817908 1025198118 638175514 405598445 327376976 175394896 150851043 56753664 316364158 491394444 391884723 271854024 164300774 417637093 310076475 815401509 883237892 107153198 162256843 787712929 1055014650 81244766 193777371 666838779 1059039253 568716723 389446044 979715360 413911498 759745165 717751588 638355843 1006491186 934185463 554014054 584009201 220192371 936625561 108124788 706002243 176356050 391790328 956965458 961578957 617985304 847152713 1028889923 866797172 400006588 508983872 978521566 705528608 198800095 455946530 171120949 335682445 1011501769 325333867 834014697 566657047 404506516 887855649 233147599 644502606 365388033 659419624 830337763 370842073 970027915 596297854 289737274 781324430 63869454 385910640 838347617 203110542 471948318 664690601 457889794 815020063 325584247 681494176 301675415 737826774 738137476 1012719670 1057566778 228444312 220156594 355476385 449362360 222781572 722722347 591961958 362068077 602204185 164585642 457631916 687746835 605848318 622565240 62652851 223323172 439203401 38675228 508250997 228167955 17648738 739104849 105655637 526210253 227550567 301113971 263652991 499500786 571601195 403148395 342319995 811838601 649904983 218519467 882210497 827625609 237571658 564846401 312584632 1029843361 595799869 400484195 524761969 38408513 607564578 26232022 933643309 914035068 552304385 923605380 333830021 639405074 48676515 103687081 1025756277 775685077 54867688 758711005 968258361 827317087 625752423 1022897882 798547906 743555654 572959279 697702580 411582985 378461696 653154272 7921374 993695745 465730206 710208742 321490372 299289251 411164822 340630075 168407317 696572804 842195373 179512473 780313989 465562328 110314231 886779170 468842398 295057786 1063380029 826378821 348832923 503858029 719112124 732775166 811636098 702007091 158246317 872143626 317623926 591266105 694149935 750480441 205582669 806163912 67198907 1044085751 239814181 771288832 201586602 55969703 827048523 653550997 376758490 1022377189 663838390 892939140 1029411685 256830641 635352192 837309766 834593976 919577480 675964249 868558737 562585495 974969606 147043219 1011739960 288290558 784142364 291313128 124280650 89753809 268171478 921827909 160974000 452674920 622126988 581159998 701581560 671989103 137897510 447109363 787284050 240236069 624936206 819275930 933453185 927562846 627044679 119240773 157047182 991496824 545712414 588402845 61938266 6614619 473951804 709221276 385491550 925969786 917891276 334277697 331077263 112217909 564873834 703285141 787083142 505350816 624330729 911154490 255130439 865392410 658872070 898239110 879513406 446294189 714804692 415379622 658581592 1020579529 735406456 947316602 736360659 164078911 690052999 103780940 361385531 750563007 262427096 410608866 653896339 379361474 320799761 233991414 114312859 32957268 313056506 146775378 47042709 294530599 934121986 73671401 892967025 212241184 974154002 555854429 950713416 657907697 960177305 24483022 999704285 968195510 923956104 633901007 210046663 317025360 472266404 140764766 257036504 840429341 611753804 9619618 54854673 301605066 288957153 308959873 918761777 938044854 34756994 791706893 418233878 78853622 1045480983 616621588 167054843 149130141 89497321 803919457 951346947 713317226 744882993 884459837 698842592 926000329 757953605 657519819 418948437 754554781 832722414 589238477 754815670 144182881 399072670 929420418 511432087 849833434 360650615 244499522 262544573 887219331 263444049 198946097 778075991 386650629 180752808 411487737 994295238 322365130 652525249 24421474 489812029 758334212 490839423 760234621 419320448 888194170 678699789 33717552 108898701 504894514 117403307 845149299 176948430 720821420 44650419 618316110 122986127 526217601 459560095 1001191371 685858586 583463489 162809146 465288534 616442128 916416633 588105809 537466896 937048267 877716720 743209236 968404415 935794928 582926609 906720652 267272499 448056684 501834007 263724701 733205927 46097008 828954252 23442229 982561580 196639196 557879127 475173946 922286341 403377315 226069439 63551351 493116890 394524912 253954121 50609659 26218826 778234276 516053655 957434309 1059439740 404403083 1061725330 817486800 561394780 318563099 456120133 962039516 133198364 616084683 276095936 782935537 40352947 757608302 362325248 316243764 745604196 988669188 322789392 387835403 481509698 962625187 208092348 1037162061 834548824 296927926 235009171 77581607 468606972 777503777 66739835 672091428 334719012 399393196 447122413 542890293 689775839 62139711 44601920 864020679 560917201 472383961 364830553 112462840 591582817 407989024 1016297763 250921574 1052882978 42316648 673142442 41375383 363127629 339471904 95647720 372211626 903251444 71435268 796923909 620540277 259832199 908051752 499875807 76782565 795783058 967478965 788814559 480354618 961158057 1038935577 844658372 38708031 842568674 977747362 198625019 8104765 100689351 886180464 780110004 151885846 84930034 601951747 290478629 862128448 276628292 31602266 316166163 287584890 149964663 737038178 155305769 696145255 380646441 585946724 772427872 357657722 129414047 243050101 910789546 735893762 561339353 684851109 260476235 503084725 1020544314 783170265 507871908 661439290 99142058 787451411 297670386 122442464 770636713 203796028 235891729 877731151 905319857 82164974 664805991 699487118 39061075 698249436 521677049 414097119 933158799 66997117 695978384 670165687 99422564 989258236 387903352 600325569 295684302 108621755 917444422 55078838 41964977 661512381 438437440 511950658 197811280 757629806 898193020 245567847 716842478 117660934 420817663 94753789 946381692 118584180 180569762 888898698 270161923 366949386 822463445 747315392 287072100 68348884 443944662 254769279 767913342 672970386 536797404 48293134 574494175 315212800 185303974 781143640 1058797223 845523799 616068567 316380794 660380530 215441838 254775120 372318147 549402782 236854500 44280236 567450950 158789392 57569884 216828560 159266998 914576530 917460687 530296267 586563626 482402817 797687160 689066429 67542230 534403836 1060132531 401600486 292255334 82917511 142498682 45255569 572644014 685219858 524708517 594986805 88577974 288010223 158791549 991155576 748422593 876239985 27016413 200388257 335744736 141983339 413004238 551090756 410434832 932998235 234196990 728698766 618735923 291159080 659159905 821563175 747752940 338629646 903481235 428723900 1015598102 698763619 18298475 156121701 814839756 76020514 102584115 524816773 440072188 936278747 733256361 591338486 888800802 634284153 160878722 431803212 279319977 877175961 514399377 613014895 799529164 340323182 283650455 998121528 981753506 186640660 47053803 40803206 728221098 390354109 473085806 881996768 48078395 39454077 621818574 218699351 39561185 964998250 242653349 54807688 723813594 12518177 159412175 397789488 401702213 887236387 774633601 495507430 245912967 1045571185 809693354 1016277993 285837594 969353255 343235124 480092064 520466395 798668533 508028684 893738084 744492932 721817631 681720577 960843078 686689021 717734124 411064002 1017472726 523180744 805754919 403089894 519096458 731522237 680067019 478505689 840448679 149489985 604415515 347366130 585695555 492592779 311156869 939548330 1023033221 298178973 520043484 85505227 416885543 293876915 864112154 176821524 362640476 349264276 209890884 526975483 863687271 882862448 151620761 1031937392 534501901 1044014191 45032634 3941049 244914670 1017898224 102163071 773997473 213026131 919456875 481026432 526207459 316721644 250142001 591818084 456720173 693605041 767833532 925681282 741921401 762872705 96968358 280121449 729006780 347026881 873863124 111962515 190602445 410191135 1034415078 957579799 469898534 944578065 260051521 241634777 283330054 571239416 945464423 477399838 747906794 1069214983 785149940 398689021 783167214 688693338 937741120 885888277 858267296 1020163727 914342857 711574385 643315789 417010328 550548640 743402385 783359432 432004789 257129075 427712746 410919553 170563668 245420552 307251122 352201927 436297918 297568041 79176997 694394050 521745654 149004357 190219996 945024690 229083291 408129144 780138841 966294168 305361960 370008332 779233483 458717536 73816967 801842292 990609474 107678312 777790349 388932096 16092565 77234002 584361021 1019935412 678408497 741235498 118178759 900478338 636513110 470505765 863582059 620169819 817433457 933956452 743005138 765037773 440017139 826865489 146223566 746175154 120466383 916756099 372633117 978850742 946236695 708390987 150648750 26846471 185732969 813873398 708002201 405302853 27227976 629047669 861084464 393360028 308215407 634722367 1033473045 198788439 407138902 790733614 277319815 454159041 611714675 256170699 298997420 1048248378 127580796 333110610 710557062 857099403 560403210 409686766 725292009 224724451 148686304 580448448 806549327 262290488 40006693 31370212 820334808 839175982 197714280 133326764 596746560 628879902 535689757 472858540 274649982 23820152 259891547 240572385 1004859500 1015562830 943728703 841045819 680011839 820293372 515863956 258948850 343499771 326661962 632807709 476524738 307443620 427740508 75353703 679229077 31451955 760915082 859186953 875870991 1048499075 578641845 865941871 457144396 277084060 303061652 673931281 97901294 462315637 1010464931 819113821 321738918 1040359971 683924562 78483401 816528273 64275719 568445468 907361572 411086889 64356927 479136856 507276468 806535047 828355200 655855186 195648162 444560867 476403905 263588306 408495912 792615876 832234781 280883965 30815805 673161511 547612763 514670086 547841129 260451721 182000754 998512968 802413523 95107898 724329880 425232140 404847552 1069063674 781895161 907596374 73578443 391041098 557439274 842077322 905581036 1050789078 830403961 809831046 1063349764 631015237 1031809790 660734649 1069510257 577310863 232793357 966394501 881455374 973797365 53587345 424495622 870849740 867210062 719815926 576645105 29394919 226504296 746872765 133296399 659508246 835517705 609873500 423472769 293148991 927777623 625981961 460719831 275282987 9728636 851469798 360122360 1830819 146719721 350192107 191635881 245586176 287107279 225026037 625278335 969693575 57481548 943845426 1015989815 281695901 395946669 997605567 628251604 853894423 962196986 191742441 356605477 350235434 520498255 249128255 20522962 430403277 598037562 32227719 249057863 90697801 410861693 21039505 846026063 775188691 184785315 811835329 567182020 965446439 219545655 287351443 926786056 100407695 63216826 599617415 1053135797 590000483 365249734 980261371 819886712 887869012 738910967 17786676 946748778 901864280 311494856 510465935 168519710 261790400 778155386 66064582 28078888 240087229 15112506 149689190 672779308 984784767 264977175 1001001620 150968932 537530556 700164759 251819723 880434921 217910355 168087221 790077557 956640919 389509905 285603475 126689190 860418426 1009477831 266189542 843857506 890991921 528590988 271564125 1026840607 455393931 693600570 502442658 395712353 657870673 888062896 624749714 18473587 145602711 391039204 79318114 638986379 524098718 332944395 814521951 1030563178 673783252 124139720 689154082 92286967 489510617 157169946 692364799 549161664 159492683 40719951 596132347 711699137 641848289 673299184 781171864 860493136 1025672599 827660955 732192839 670624206 314751906 781484859 399561551 426363204 361285072 894857588 764348516 256567844 202779194 620575036 119902245 506587138 374448986 380334956 896802671 851557987 69707178 676128602 409678653 219903593 424901433 445273746 977516209 922275522 754661940 49588221 246317957 1035567206 749568943 936812431 892946233 803334745 491062781 891478467 928596049 1052596797 197015682 1067333444 505549355 911727090 63753009 952853935 426134469 458473610 286621544 504566445 773701731 631001312 879903126 604708193 327975311 450779968 223466997 884597612 35210505 295098902 357413382 522454821 238747493 778730067 957375279 5862250 501585747 1043144131 323865175 751448307 21471158 982621195 575994845 256823718 102880366 428405848 236897931 626249633 494911423 421112355 686613383 575170442 180856041 913613435 497537599 588983920 263882323 275641237 426654651 968858812 728465968 923062465 883744631 483139241 15352544 745435057 288131588 821274683 747378661 920370899 602262639 456935158 235244197 4339204 915449608 889321385 483463662 629959637 923924002 71245345 809336917 271857004 558091850 295148125 73267030 152133673 756689741 155252440 5666633 933241934 421558268 961705465 624863748 873806889 977164511 135755672 984147728 957905460 522033032 247602471 544713080 887269026 384279807 228619995 874414069 929280147 28465897 497244461 77795810 167938546 177032332 152353612 299254263 227676200 488623860 785294513 396618975 949166925 391196577 360832074 54440980 498298602 452241841 351992342 349055797 656695124 37366782 334346408 142630422 544887566 571966054 793732131 715757632 600201652 328620839 841682747 231039051 41369528 689953982 821168858 915287670 745813662 31065840 591202020 34106512 500896852 881203000 464180148 396113040 708881275 958474043 382338865 197475681 20659596 303644648 375484997 344576593 582886795 883333533 743056005 822101728 880958008 136757180 591723467 199771392 539374695 810882309 118885309 166820899 899917781 406516443 3333552 843582728 1066370812 88950 907988600 920925054 970533128 263879607 849231383 280360316 25381987 80470462 499270073 126681274 729966732 453735342 612928713 949279478 982276974 1018258123 1041148494 745180379 30266987 237865998 115526938 547822132 8531119 907452843 294528445 1001080790 117592489 863411582 274770649 614435814 787796973 928753567 1057003692 220399832 77381255 1036310719 658439783 501383643 667245043 488245461 74632294 1026634615 611387562 795775256 982982451 667658639 275430753 721085818 1058372445 1009899375 207150565 764224019 838430816 542765081 567387322 782456476 813952890 413752104 471615982 631078837 401749290 154018490 331582335 866724729 814495679 375833441 369184554 822438317 552798263 1040083493 546958634 711256580 794853020 568773250 642716999 767611408 1008854067 338453266 983411213 830908868 894235395 955404568 717165506 161198827 611184594 731351377 968398486 1043827419 377981172 690632479 624144136 1002989810 1033856830 558278337 696964299 408849463 878878083 806413206 608813664 895271926 828591563 572980501 254424384 471335037 377191387 977145883 950638393 725215411 943000696 114250818 206839814 967650954 708011741 904186468 394616360 275328054 779150156 993539600 353832363 404162805 169309699 340385285 471232757 945093897 600434565 852008782 1018344707 758994955 911283001 1072485677 251921600 482353458 553831593 698970794 498069445 805237943 750074585 680715491 398336884 904676164 7652865 31817511 719686 6671168 489756206 180268587 476263983 1033699901 443261205 864919313 753406165 338169267 346868633 826585634 220216524 57467721 849102420 288263937 620106152 439365932 401964954 370068703 926631203 988114013 772811732 720602744 156365008 599651860 291197451 705159739 688836649 249326614 858792038 3619628 803002977 141393279 791300359 881501631 297040072 883379879 891418230 39290455 721874306 624915486 111758947 369487136 482514465 272521212 608640273 358446346 123805669 408279204 23576439 729671938 536245291 361072965 108638536 273123411 249931082 775343017 108492151 367900952 764377779 214724668 480324813 804213435 929827641 833748819 26145139 588495260 1046958026 902738992 811779291 526525982 31987399 102730176 150236778 242123182 346823167 101681215 67731321 483441448 999453762 859534177 662610074 708444170 474752119 407246302 248425504 713245657 303094370 1024511513 940598996 13715004 252844193 651358553 607463162 430986748 854214395 605089298 569000894 92570387 280034240 949542829 1003871380 10325780 574380172 55220018 145923365 273206205 607099347 233799348 82200861 454606166 557631313 590219982 369604104 724279191 615602317 213446201 261347738 149507112 642734958 572522555 7078245 397073689 147635929 815490706 49546949 694689283 480427385 225726582 763993911 164459858 316295169 152532633 406976440 529444268 409656320 198341569 831309551 560350626 177095798 844521844 494096122 752445585 139841758 590690043 725501107 210234635 800661064 922411218 783622951 198053860 703227299 929073369 929728460 807454863 796349952 863875707 416202011 860212603 376590661 651770011 355459652 287690918 47307830 602095698 56650549 91188999 155987510 746786814 790728121 789259291 1019748640 928500229 866340731 425210089 106097164 123859608 491403029 720151830 32007126 541184171 759439082 98992327 579555289 463423166 668127049 996872626 123355685 400501887 356847124 554400655 534867390 329279517 74398721 827023166 854316954 996577202 633548618 508132831 668931003 576717710 122936449 775597490 409460910 37680092 795734374 753397584 52134 136432747 21827225 200460475 681927443 692366349 1015902182 395835835 823970740 675610925 775847822 668909239 606693925 96459072 606218957 589576061 144825930 790445014 300746875 307726132 720814093 1063647071 714458411 442000969 714375828 895253492 73791378 244102012 514487255 755453991 140759537 1062532425 888147957 48957151 984068394 32155462 792874577 118788103 881495457 855912716 1044367653 963804795 381854922 192726033 937075059 773291539 912251035 533251599 653640342 885479045 51965401 1003453311 218863035 672600064 667098124 751456494 864296644 98617826 21125733 470896482 391114471 411860912 166884723 63772591 170287138 604122638 1046189908 940711128 835761560 17475339 162029536 524027937 124756772 989268086 1015230063 62312065 580562123 343800551 862976107 911809933 899930362 828770959 196312328 289180456 124826244 654367363 799356856 409813873 475844887 550443350 47250097 768938365 727095846 412924730 790292689 616162132 23731027 371868979 550308458 1020251475 916240234 867793542 142440656 517903443 742977481 688286901 411655562 545230146 413791315 554513570 512625450 427994710 201328188 662479348 872447838 271727170 355361273 361263920 153351384 549294672 628618403 778960633 636540905 1027330484 805128829 202701581 727765410 14298023 114395107 702327927 759458230 94787985 618686408 942445356 611669573 656755548 428505157 413000875 487629447 242899780 988212654 498250312 226828369 111823453 582028174 452212463 932585614 888849791 1025716141 232992433 369115037 332631680 963740939 615256970 444375374 347582432 314738215 396874348 199858500 689561457 147874953 945860625 689646590 178315302 531978446 945497691 456592102 390129142 606798637 27608767 882129106 1058207271 284863003 166285850 1001335363 439805707 145829161 36653638 377297928 752607869 992980889 424192081 621022092 15287228 1066655865 854335250 1040829808 1005505087 311836081 894268836 790452921 60013888 246384145 441601531 820791369 337561766 30302276 532346258 738316349 716681948 1018882932 407006466 23932044 394710623 933387505 421743557 714961640 518364627 341065930 846532908 1017534005 1046348309 305151362 539290242 1051323693 74847977 407750418 589053210 356285247 297426579 926953250 75226285 382877083 43515726 340822669 187134525 149474648 552299060 762523004 88987939 105683105 71373256 983111483 229102422 672281733 151086643 846477997 516874705 381976171 836450760 567497240 960992691 207221705 757146601 824114954 593328504 167459174 763837974 786772982 543559334 170029487 17895076 33912997 796746920 523403466 225601715 904468854 549353263 523873600 130177991 419227282 34518495 436214881 196589321 31452271 1045109821 277916868 1072311820 801529068 1028862642 237584107 700327205 115098778 384394809 873658248 511259992 363971046 747862899 390998469 829129120 1000073125 257364607 97422403 624118845 808611088 551403461 732525717 155151807 752065812 802979166 748586955 844232257 780328798 98763449 1069570930 852156537 382141101 873835010 696343362 39003501 381027287 794797480 317204116 41101739 283835526 889596231 788393758 592464 53999308 863729564 1005652650 238413206 54324583 896551344 586521994 1039881349 969574918 478705884 1046507420 884370001 857364249 601382845 630806349 625693744 856633744 907756418 1070103237 393776934 461776449 98822504 733858536 918413618 17058268 674976989 903426401 765331691 883331891 1025535069 761093661 795860208 321719590 560836720 285284019 814715143 757118838 864866801 242231038 731212913 1007713188 564596835 1002491924 488924156 292876247 580767111 461276140 1029136084 234501736 660357636 591795427 897987021 388086326 668321095 278851610 933900751 615993521 555793045 294625 862631835 500468243 29502829 883640406 55215915 44079066 749060811 209144816 1044168255 417857053 135506745 253297624 262208820 721630767 1023409316 306032040 759275852 696443047 487558119 538866126 747641389 654778606 35473767 550769798 530827164 334217917 532134037 696765084 343187698 558058826 672470281 868015792 940981831 652239194 682205126 935387471 541462950 1019469548 457453378 971027985 233482253 200981531 765430864 991554371 584462853 305398329 146810092 935717290 216587964 214515737 227394220 1069682756 42686707 658057054 840412450 917673460 34753350 261443319 206229012 67422059 584222558 628843223 271178228 354750818 459926459 838720050 268561774 586292250 604419048 59913479 882923532 617798628 428128847 495897829 581987111 452206150 652361612 129156017 534930909 371524276 308233118 351077240 389233335 382211125 875169987 1057007745 52149563 498087459 1047494440 557567876 772730661 932336734 217049868 186920831 14043638 106266618 1056736435 123260060 1001905378 889054029 892861418 636376475 902576343 563284870 411630166 717811533 122722969 577130221 424636342 1018693156 1005007180 422753324 713954452 509848418 692711932 942824989 1072370429 453412930 844853083 539644926 448995843 563469608 53965143 451755781 138348575 370419846 734446412 261656172 715857078 847990211 471386839 719364528 446445178 954876492 501783309 416365404 847656552 864927272 971765590 353479066 216976376 579812895 825507476 354160796 595694732 904809506 532166689 80983037 885885623 500280842 855196784 603451873 561988018 472831802 696111897 871543234 335880467 485445019 502887262 263323613 43640435 539923300 40946756 948157177 937956854 640095860 444097874 884681829 982224573 103889639 994041940 739038513 222208642 490632169 415696426 972747915 175310736 246192048 113376990 795992626 68930688 62590873 945662712 20173689 883633670 710069256 181036177 185858225 335862683 963605945 119237682 799107732 863732484 39303471 941589022 1009480115 146989723 225054169 227133565 904553688 279255322 461356084 69215874 956215320 477738972 850817727 516163621 154958684 572192120 109628030 272294461 582494334 1025507294 735548658 92891879 654274592 660568995 900542133 728238512 339512701 393796699 217924903 982095622 573576644 474435619 732685 872299356 256432487 667206403 1056929229 827655556 659737058 327684911 791428181 1021830138 403939872 29494781 78788293 255614755 314349797 563996153 674142906 438684257 209558421 56594304 1036292368 87778714 572293818 568115740 470498107 607083296 74377219 933103865 195423546 295767017 786763314 670867478 585836743 694076797 1014855260 924899207 960867009 810353038 850850821 267871656 729491955 266717664 912878925 856307122 150676094 558179686 303410383 863701289 756480481 592615373 197665718 670783199 456247042 476675177 257673690 56567327 473783721 239687581 975784519 896979011 253953855 941620185 867599371 208684755 500269304 504103961 1021918949 419385264 184138497 138876566 587857805 332836145 870962671 13866057 507164293 243214953 120771996 773394345 143458043 120775796 725202259 591672883 469235762 660858853 540900150 550992190 1050589360 907766453 800598332 334047373 89731508 285886064 102145418 308717028 757664385 724819055 869981602 853059240 958405386 523399218 316563276 417216994 271607404 951999728 897018332 972698425 1033501302 1006837451 21689075 655772859 507663722 787353914 124935504 327063677 931821652 372729563 385437633 858691250 248884759 617508016 902842905 45082397 1069491320 343226667 544314650 727287683 311651769 15854283 694704265 342546380 381917150 313183213 392240239 706753221 948758076 184915928 111948710 699198901 499949668 987391555 62601154 148302575 89036955 303314839 249418329 373701 546773102 379097076 719753839 432750241 911043866 770227897 64511995 784967142 303838247 811960731 484288613 803751289 832633330 569791638 234857567 438824937 675731112 512243605 314194647 331319706 676103015 131077432 1034740611 114240105 888455007 159352271 1055281138 1036569816 214411013 204371500 803540987 149271577 1069168306 1013733890 1006253364 289030142 729442864 474080718 960720815 205957838 273228088 800439336 363348475 782152493 134383107 784761949 871369022 142146974 638876712 367013441 452937168 36614727 662935624 941772024 923728007 792909963 243255167 507565691 697996748 283716185 1001142968 1061476931 876903571 757091970 351841143 280300376 523402926 426769565 35595695 557164228 1010149148 673641357 212533118 771701019 669654777 35176969 266596557 329481087 758735917 994040012 181765749 672050181 851760444 130155737 819903487 1063131576 593053148 827126284 1039462991 65624456 859112840 373704418 341335982 290278949 48013027 920209168 911676312 326075357 177829211 600090728 1052450355 1042533483 832557135 469097098 618543442 162509611 36237336 433502234 377671801 458134990 836129756 714870239 106205771 182570151 758497549 774322787 90552376 340288028 713184528 81864368 458521515 612742404 571856079 814862126 324490520 405595407 163547083 832831103 62509369 852994485 157193115 562745288 621700331 308152862 367284087 637193923 140456895 542708464 10893037 263354592 117426020 538084853 706625785 457300081 556355772 255541814 3558937 890246345 835028492 558609555 398021598 517358056 325101815 306788697 570104816 65568529 355117337 443565656 70483090 249297994 13888975 174499859 788844632 9170374 214941825 218046901 41218883 408155019 802984476 1050668937 1029926086 407656078 1016426239 988816625 796765892 811159691 733410404 803645410 638453615 319175618 766335120 605791009 420271671 709836048 859935379 79098017 925249729 284846873 329134517 657030471 744381802 953870044 648808979 677810327 263999374 91614160 954639712 736149777 823766857 909630102 377428913 663492996 1003205881 553915092 343776679 265984285 329347192 968030070 402369770 38954444 167048841 728950617 838733908 773980799 394932421 417679189 883302670 120410184 994340676 371814854 392630920 206239011 361304418 719332293 878387185 649327238 1018486766 39798245 59881590 227656381 440969610 907057918 831156905 155217709 420226610 362267575 658966075 763276970 524854209 835848821 798865308 645547079 707456769 950655130 928784518 282688144 32073590 948129608 540131040 791037151 406105065 295038005 293731138 442702176 596862946 645588294 499520168 85971708 507426828 1040135287 199360091 174012733 633776447 737404173 952758768 131443981 4691555 72434863 153677745 994502259 676432030 750130424 153014111 937484253 210353456 581189437 72933125 737113063 517996986 213460360 894352246 87904422 662580064 764834250 462542622 973817867 65210911 346882167 1060672503 997424594 259648511 581740678 459637079 445320352 475790139 738104389 344470211 662054822 691569366 1029855073 217996984 720472840 861700285 31158713 546534073 708802180 766556606 146724083 674555016 546994962 1017483457 558087119 361613001 139314655 820448169 108672201 505152855 57422328 801526375 820663761 915357091 283387326 747924001 276372025 207280439 432562238 967286807 1058622534 825271543 213215563 273752081 132153345 983638894 294170529 556401290 690198034 147571115 958080861 701723120 242495190 418629992 519782777 576763763 626356107 923720614 173100783 727601614 420145721 589926155 293493218 498986498 30093974 121690359 542422001 99816907 447399612 648333219 746209855 139942777 720427310 296284001 494683076 428380997 377553002 882365848 479595726 141889478 678865086 426787918 169491115 536198106 157805173 341480167 935202639 126070448 33942609 566670744 617544880 540905630 868936712 247383864 1002901757 535936973 219647424 848623133 170832252 943778439 744005403 477063845 439934466 1065950624 737673235 829954773 243341634 974599190 10563612 185713294 211031639 62808471 678534560 280192179 924032546 102949474 605550960 898916040 353688227 598228792 3474025 1033057098 525731763 23168491 23669857 717348150 496544921 38267528 260196348 880511959 418774428 655277709 285199730 126884869 751039990 849422954 570146140 282248299 977641165 115731853 653639577 116561997 183219420 412448807 417493367 885097834 715599090 741964579 828344745 573803040 337504511 704846964 132237531 18016462 821894377 599777881 741834884 56754326 33443413 811666762 971139093 1011469094 513483253 759367922 963520637 818725010 282994355 534783517 133880397 355924359 840898710 959779821 452982255 355338697 495722670 538674431 420808151 237694209 692494337 9140881 852016660 342989229 984868312 276908293 730825417 108505035 505723115 372934916 629823096 1040095890 981270316 316525060 131882735 705564992 2770469 864303265 329482600 554306415 26269274 161914688 639577622 968716355 619224498 207037680 1006085386 470265668 962423151 143281855 50714125 967510369 585818146 257379864 936951778 481583693 217815042 33248447 954490852 148147156 316549388 653222029 748519621 869707466 969599907 337667904 262485730 783874896 303572299 586756366 559014425 587406756 619990712 978024577 735733843 731383916 457936781 1062158978 496829393 183832095 467039791 579609620 1060155051 833691514 490900879 129831417 1060957718 924479657 896635885 991768924 232987867 994188411 706526982 912612345 388733747 44220147 621654871 89736862 298202188 948228277 272118597 788489269 468719147 909271513 505819653 282620461 211564209 921756171 972901 640253503 692767397 858384178 628110839 846460790 596964422 387880538 419532334 920886901 999993046 809915107 782501894 874651242 375343794 1044453676 857388634 46489985 671747810 196371895 159395043 341785411 325949851 820051306 377350685 466093054 950635343 422428354 94835340 322797160 892455100 13528789 134408796 1016405066 75717974 845836371 137409149 385203044 36051613 969154865 173178112 120245591 749508552 674578593 1037452212 1071094018 802081929 372664660 707370795 986479001 491798851 492294909 892902788 695067576 865560327 378951704 81686701 907725893 806893747 393856903 1063074070 35747962 773260674 525514338 368243450 855469103 1038829365 882215534 5294448 203060192 1039917059 895038543 464011001 689460691 99380866 755732997 464057476 995931288 389790577 209985030 20739092 736369358 322782220 24474670 151857426 758726295 16581335 287044338 695063628 536947332 1038407738 597615152 922410644 627521163 1065166461 32326679 898652611 604023445 1055122831 322310672 562521716 573042109 1041721512 1031415990 526710334 453514535 101343181 541834612 27945610 261457332 833938182 184083908 217353859 332700579 343011287 417450552 404753165 736591536 710444588 784899652 979664974 69117212 535169289 603418292 711549594 777938734 512569682 655364581 321000874 274370804 698172838 367690432 373891283 463222832 529101670 310152442 21014552 91921373 787578243 786871501 201187348 838255385 824837779 803739118 913736553 782246277 330798657 495794168 633675608 695434759 896680641 811981531 210297399 565516209 194892000 472605696 715091728 689951450 167801620 409626765 826978795 219358318 167651933 505566841 90111128 38833952 177740743 554509800 217112173 827313299 982922098 18338156 1070816111 386598061 332931300 886070920 422761382 882454014 221492737 103503757 913011818 221962306 734623234 476039833 304868992 252789096 953126767 951293814 156329342 858783570 752599695 979512125 802321584 970191382 719387556 940671627 617378514 478464654 774459345 140662064 3375663 620412110 974640149 471774654 283854713 783830745 376826406 86081272 127384620 911495666 678220031 322546679 356523101 154385285 179897758 930083921 790762312 140342684 872035702 542133309 1007596227 610996417 678523694 935135652 1044483598 661182969 873455837 789583762 999830990 749821527 736381372 327018241 269704306 848554663 915928033 93808396 754218527 92804333 675430999 535757313 670947584 762063696 781562820 557413524 860221724 284680675 304096148 1049309516 666261133 576175974 485261812 387055109 1022457658 108472843 568220397 928476646 277978981 534721764 770350695 1045110504 100134524 312096389 670235369 336694848 872689898 379922843 768323566 274514967 342631939 89239674 452377972 410971903 358122740 892139369 703767769 333975166 96520242 507563608 476509801 876366907 201814266 1060153054 413212608 529803252 850095048 261126549 608723274 377235133 851180724 684633362 876746268 28786867 592191265 724302857 66576277 182208820 360823029 399135766 186259140 1025864868 626167645 1048133800 977564387 1009279432 914034427 741425048 821628108 1026978956 916982740 808809164 999946984 940023950 913700259 252929620 681069352 123134369 533454978 323787894 254910813 793612064 593131766 734645064 1003437326 288047377 212036476 23233075 501264491 987214415 833981338 585396240 187603746 330176395 782345768 180584311 744891596 612849407 191704785 522320220 857656112 916976758 588174576 1006583486 415933102 495605591 115923880 65071066 1010971055 727596942 1005199856 374006851 118622365 194798865 550719456 264358662 343075776 1050769374 519491404 111748743 509509745 976032109 551909372 989620605 832188854 1070705293 597023346 285296240 869502290 526899485 1064138657 528967508 458522450 777172440 852723662 1002536907 206260615 307422952 171329245 977845601 839150689 194142043 97471323 56899875 211875509 639505606 578478075 318124754 406257106 505094076 515311948 73837276 565821887 1039508241 1043612905 458927254 242187826 107514271 820741349 1068101279 650788804 1039762084 712822914 529544570 204089879 628862023 801683034 605316165 275283329 788179123 611134391 471648832 764916833 790916738 463486131 883861528 734863867 198467808 919868864 1019143931 1038208015 232251597 762861802 750192417 156148543 363876109 435555529 532601853 419740764 975379769 520750500 206124107 684063263 129160176 571557424 714508473 713152014 207983639 1047169856 56014450 657653406 159232358 256626698 373819622 36464297 998533699 580924603 631451626 78951650 991398308 464937580 1072042118 682941471 347177092 232801059 461770879 581889937 705513554 603613838 745097481 692803651 27116069 18347895 690102826 742368323 16541804 944587413 610541878 409076885 795856317 152367536 61016325 6192816 454057608 561249045 552171294 1051534977 228614025 62442886 734945660 7902090 721906644 830316896 73958349 954593723 125704241 560070005 406369853 375912613 263967055 220656125 266056311 116531466 306029173 641412813 933594758 158531681 143131478 1039249466 229237409 112196083 417121670 889926947 926662398 1066084873 442335912 739193277 827841976 707785915 260020472 505103788 852118777 381724310 1071972482 255723989 91319936 522074082 282874120 894419897 440862857 105601828 592140361 424081731 627487072 873488519 968303514 900275468 871910423 603318823 522143638 339332296 210047707 620585404 7523279 442718034 455148499 120470109 609631025 815924176 485481988 157602732 35493939 537561712 712347030 354770516 459875899 783671133 667416479 765042211 152454876 324003424 131360486 464295425 387479687 623804672 625179811 4098913 651190860 438865797 254528939 105173909 373300534 91962907 106943403 239871085 174122588 444045607 523087978 890585101 844341995 228602877 282688640 458521680 193556252 619503947 831959094 873997551 770736521 782214847 75997435 818216360 907963643 488596613 649871254 137355360 625375092 1025787358 779900765 1019246134 963604094 277025947 445986357 244262335 110182620 676808623 564394999 696343253 929935006 891536308 740916094 200166782 459729662 624885805 1031498615 691892358 730970334 647554040 113190622 159932842 544821382 298585753 513794822 609642571 1004958948 743967901 38970373 103480266 554971683 96575312 662869258 443793834 1000055078 798728617 635018854 864078604 177469304 287141610 61341430 377102042 260476393 148725612 722605544 486616311 477326771 851735367 833803405 1054023616 119597523 288663001 461513284 205299576 601024705 222293910 599798168 269796253 562614054 1058860089 335734197 75133805 252566260 567281150 425932022 828974461 497000451 508844774 667136119 980438588 201563914 793667181 749256045 515392756 109753900 146966784 275817962 905504930 178142359 1062429983 876288287 527340196 263630373 418375718 349463496 866319636 373994273 124152716 330082829 827747296 108644872 341884646 984612184 988932746 214398391 64934842 480491272 279088375 80226370 897574693 926082300 156734924 708904801 370184638 116958455 964004521 852114822 278655000 246292968 874060188 791633205 108716761 1072601312 850446595 612636767 432605811 827669872 102559687 696034154 770911672 440635511 983331977 770043806 639480494 1068506696 944007573 504704433 907434150 981908750 502171795 577048968 529615102 82526239 28437202 118208752 391647747 862402239 994366379 749719063 173741271 923039773 799099325 308024661 593783675 59625855 746502593 52336393 664547872 970413472 807498370 698220978 1035233519 34636935 247863208 289229239 206341291 995915439 1037370785 827873415 246813128 635881623 1060650545 255477980 1014903384 550773390 473263786 726007668 689890717 145463152 216364023 963049501 156555684 526701624 49403453 534441338 455773936 395526717 895811717 589158744 1072504902 369422890 253355018 64639214 366190923 652404097 304347748 743284375 911600324 862026003 309710359 397595317 539658933 797291336 133216842 65435433 244066316 582073864 443193209 227045283 963695000 516830404 745312887 749670905 683534235 180063426 574997906 705583747 298434289 8720114 396364131 31053022 963926094 465936143 129942271 881825158 84161358 609836139 438627887 494666383 675456046 844605958 279410144 660870414 808261716 782974575 781081177 930974639 297889582 985783594 819937168 857100222 654123612 57910284 222220064 784359128 380186352 724980567 328599092 175321187 1070974011 910371677 749634882 93221360 276439020 56970141 143754214 799761696 494774815 167143557 432361253 601534648 813592106 221354232 644713827 65861234 388028668 232779747 20075134 995828596 100842149 726367613 742620325 597321062 144851003 833497704 1005262207 884344134 720830559 978316581 653270041 578558397 947969839 234309320 697040075 484422418 129077386 10577183 122649861 770907639 39815988 889460070 709118681 366065993 723985212 986273204 93241936 579425532 978313615 218764356 18483635 471973777 280025867 1026782276 453091487 472532921 182511350 1001407394 396098083 70166039 543385374 547162837 763368718 429310416 783431795 265670181 932600773 956827223 582012714 651882031 959434739 322806307 1012964596 94922420 746271231 1055265101 373087661 616759853 274276216 932195525 542876540 64784199 716234000 130939151 948742697 168732784 5719462 1058673537 427985378 614799366 716064071 60685926 252020153 389086396 279236764 523659385 855108222 526904368 984497859 19096171 1044006748 149229789 537835052 894217426 463953364 450857452 741035935 932792959 107218236 669745891 864810002 403983891 242592993 384611562 423148546 399982446 547206826 491560339 81425260 447510913 419847403 918921617 732936790 676379851 291198983 482193614 46528690 928641118 458485838 285759635 37847266 946685467 695284803 578973892 488415350 243355936 310127920 750141038 282286380 49197074 104154590 775665595 592893221 437805095 564754113 1011099832 1048387506 299862951 360308792 564618058 31976864 490205602 70133689 728204048 590588160 534368308 30093468 460563665 254403421 909095112 529561572 1032267386 457597057 380001498 421489798 840054249 303932234 393116969 528876864 1054564523 289367347 633405122 159649941 464547192 539395809 48964753 73789803 393735991 142690692 996171313 943735094 700215605 894095664 845061594 142377406 803090619 943594929 1009878984 154353867 834940293 968022408 208558605 375239577 916732942 714825700 538911147 10660657 31815563 571671793 329123288 413269211 271619314 14419022 567699102 416120286 946823506 535335148 297946490 306093551 443602101 118325395 534130069 222158081 971259927 452823495 103824264 637685378 510784930 400503104 691892228 594354461 713783305 1044557752 94918424 187352075 444569104 995722451 761223338 13540928 972651312 362978261 1071303436 281905529 568302000 746071363 102303177 860422475 1054037003 281060274 106490141 722240253 603928342 720293491 1007514908 792919061 194203969 827969366 812920938 571626134 782603061 638407061 723633108 192716963 581506000 447116250 796481910 523077892 349533640 24354077 780117305 956805783 236735690 32365607 143012900 459524554 84560608 941268956 126999471 453953890 486324564 39357341 44171929 950952863 491410116 785852875 773743981 96540067 332644843 468405161 683363574 899869275 546036108 559701779 84320683 528458666 862779346 435975457 361995832 916103108 212598846 1006144518 508988105 902505239 1041621641 868553038 119900396 386252223 654713461 204013646 220290244 143734898 815598369 544578454 1062942953 773869153 612262217 972152572 297759042 50066795 90508886 611559453 347266921 875530038 75032765 279805331 58330955 939529779 701523427 445508429 126645250 974524635 869489586 97081407 11435979 521639448 185444516 516646059 730054593 356223335 611207941 433526365 998436632 73353889 463983239 551933826 66821543 941829886 210159195 323121406 550271574 917945657 956836754 924972915 396144752 98369440 886313439 966991198 374694406 330784548 1050142077 961994362 638435061 337140814 650173046 54567894 892664880 907055975 438541226 546327879 518162951 682877220 615326405 865615108 604673058 741462205 196877825 1024803553 969534057 331745727 221323966 39831513 1072501080 575066115 273065962 801903625 650785896 930962803 506057951 302784688 913902317 795697022 994215017 1052454462 1070520102 959342453 691350075 533416915 349027102 327661986 773747177 814814857 1034472790 607651548 715373837 879066425 673738997 498808891 430863559 1049677653 546801248 902536882 545723535 1064733081 615638547 775464620 76276082 355404444 546907415 691418693 908002104 996437450 188760276 392879596 980419952 859703336 668660003 954823595 913489107 2679742 778812371 962432282 262450813 524143517 344860030 451722356 752379523 129748421 174912983 586552517 461986336 597552489 906832343 816818736 801769950 45775849 218875896 842190311 600532923 314175190 955221259 864177194 76901265 781306642 471751560 37865348 711250759 235196449 885205027 156803048 248941340 208136843 148551214 806419530 148790528 844852780 479811064 758579474 360590415 144971300 810698982 497100310 153698793 161701965 44591638 127704096 890812203 1061137296 703940447 234169848 411741476 889774148 706603130 583100452 361811372 917066006 538153161 688043845 400777111 412745033 1037429421 756992061 347446835 824139335 1038279354 827980113 148860856 663057871 342228434 274482062 908594828 1012390392 69155626 198410279 532016936 637278761 890790404 346767004 610162409 605874683 405491900 797078246 1031812956 169309589 782441785 951592000 565377816 308863329 800657019 986242798 489941722 177189443 19842767 782000665 972529911 1061593351 61951553 713091159 978583043 225793672 607320547 753394182 414752350 923361609 344923007 766177394 23887685 1029521418 1027050730 120383779 592750675 139464846 108234998 9572568 152705777 378690913 145310782 774566806 613737576 628255685 879184632 1005926432 584343879 559313400 480721434 114957798 905009775 456273894 289644735 479755823 669470789 611044728 965968662 570326709 169162681 181097857 324848660 61141863 129681316 848698171 765592275 5201043 327436948 558117559 54556824 151358444 936698975 1016243775 510143089 544923840 715286791 81624930 251471810 813234289 702055239 952838415 985409051 446919252 520818470 698751687 625708717 487486373 138036459 400125929 818900018 776426056 747311591 449079061 591127934 343443348 799629739 456806028 1024343169 52971325 170325610 744296312 307829715 392102536 643967838 678716638 80677878 587244423 355430354 675533904 684228579 23774214 144847325 144596575 149851089 299386221 219275643 248024175 103989103 314000134 585309210 123488311 337117350 1064847018 46193192 207946947 134347565 527995558 501047069 64369701 42185840 354534032 372987947 613219151 6949395 464660208 386554711 638137994 13344482 126992282 269269630 731734241 1039874654 194623985 681263131 1053621379 500675785 398526500 607756480 667980466 926423535 472202163 993617538 370767485 19632924 953058708 885753330 708479460 201216019 406579746 835224523 280694449 73583557 269371961 402313572 209957926 813663989 143259621 590423458 455379798 776352281 875024961 817375536 945154329 710052852 814989121 358323579 835709427 508147736 936487899 958888209 27148858 948879388 574865341 901453281 822467664 54029509 878875354 479770236 591428562 812172692 298567017 620595493 1064496548 813163468 478561080 160773666 286184183 223641907 562890658 617630599 164237110 179107544 1047721255 571626976 212300718 246875944 148208993 1047244995 450741930 486408445 620074170 992876906 659818339 539007831 599254920 842706967 656231956 532561209 337731074 53362033 161888480 106030707 253861140 965282503 82211996 23157992 774032633 772730803 805232782 970191097 639023979 428576683 487898129 47717230 62837852 801217514 310343586 512847592 231868094 56298853 912662839 451046184 426501924 1031565721 463182671 601784333 405896694 680851132 484965377 605768836 158390665 978699374 352617699 202905697 172134720 290968767 224127486 50169546 879495213 55024517 575745811 234507931 152080352 608078941 891528530 877182779 162178414 254409651 390833312 329515692 644380557 391309559 638205985 962678160 699578890 898779901 400266831 71562995 334769695 304844044 331319335 428466226 646396891 129954617 529133905 925830404 50800571 249880993 930565087 332741129 113305685 628732408 562988115 216647640 68946084 82918236 1065394851 750368497 229808648 830207897 26814262 509704988 487729507 360930051 615186512 919464119 134474836 364245984 808690686 255665346 753423633 650943102 979658706 116984218 67815777 1011608514 287488283 825149683 89776923 71526196 788148967 18491273 983416871 393609006 516336549 1035349508 286709599 724052157 115911746 231659607 1050838899 588659322 553982691 90688680 43386824 1043851796 215657728 130912575 23369928 8030414 1036452795 34783450 1064194515 71246396 944034226 565371990 464284774 629369593 994599959 72732066 946232022 662068259 542983683 741005312 289660717 929611818 447991026 316517748 324991205 545752881 75200330 374672494 561461785 503248921 31701661 509966667 732487192 323073319 958989663 979826337 960754827 480803100 915065953 37376650 727594713 709816437 306402250 480809625 941534501 791358552 348812746 117656681 49702530 865999878 644844913 586745287 905012699 79912989 252535359 825264445 563402075 276843048 525640239 90087177 965309375 586821310 969536989 561874405 793992909 829067761 1038041967 944213694 1027322024 868618780 1013442740 336887873 155723159 182079328 753011977 799277885 71561848 927832610 1037639960 808066194 224786581 436217423 302290849 948562778 24923327 398839207 231360639 643301020 1053899559 677451043 675089803 36357220 302440136 418049710 68037828 318109229 279881390 46696146 375348701 64950055 555327012 703911762 265488514 1046689189 351838986 26318370 783145460 1007675960 768701982 797964028 610470918 382528434 853525414 726914458 756254211 613216914 951398411 385118876 903285623 888905875 879617368 758407842 332897786 1047998727 916117298 454476487 557544826 259590884 708666290 1020698871 396164215 515933969 89228552 781327917 1039433725 782910188 902006844 15445646 981045759 854646125 498397057 40894232 391826079 85874772 109532500 853889806 343759043 987671539 19389746 491009354 149380848 836408897 852206597 895790413 693353308 79693394 942507438 253646414 197264155 86995621 892133477 999161923 1013497106 191468584 343906727 709112725 452919076 583282172 1010186859 664073955 625543966 470912656 489506645 746181023 142455718 1054681997 526482994 951818503 995019380 978524769 32075641 1054388212 363975300 798921089 38857559 276446026 89140136 69297664 16853170 619977854 12345327 719509814 493833930 173991101 546923232 709195110 920641203 116644580 198519420 233419679 849994605 231869279 268829878 358265387 589899338 191458090 327984373 24337526 171471032 532749554 609948150 1022433241 931227667 957991909 441559839 454220450 814523674 308260856 46898135 502837041 602975347 422247045 983615576 1021340349 803568197 718740642 982235451 960304223 220032200 136953245 139693047 530733294 94378286 310941222 734626612 535784342 408283182 302041914 503090770 654897303 309846441 59995795 1009522005 690036568 305225574 157630918 738168265 512836236 395846397 778898410 409300183 128406262 262444097 706595063 355611342 548847078 203724286 3523258 712429073 481704206 111820347 371883650 1007835565 335630523 494098587 29641587 202733359 911505811 1042451226 125371016 104858389 613632134 278964399 401693635 421812830 257004102 922921708 795256371 684825806 583347879 649172278 1061737257 633217563 803746664 973326395 586246178 510999239 1008966334 333418469 236165570 718986735 608652499 524821142 82059903 646688630 319060934 581103625 617688179 988033447 1040690755 467098347 179707953 563884651 118525346 746153780 561573456 22739612 886911046 226730 890786877 735611784 714730109 432503612 780159605 950917653 44071606 129414060 27390921 450834181 548086239 1020614462 680700527 1007156498 304692489 916312756 301192059 197710743 812281956 404789788 540707592 405934635 166928932 225884397 441328608 976261127 984891337 916707406 234392724 388549728 161537889 40742940 63738657 515735643 91441582 80272861 198899445 799900061 220086881 811470116 442041602 968821956 309406975 735625907 729152294 306295397 743230542 944331658 482310860 301771482 665455120 959420533 650339277 1054605908 665852573 557669484 515575783 284747251 920271183 673054782 1026071805 107265170 254936853 841598559 543252099 370457726 970327311 523451063 105918258 130455268 699160688 758316874 520190568 999820830 689094630 46413896 926469462 159583549 337046482 938158427 761830759 424726116 276941911 534465475 268427303 983857110 950553309 866940339 239630062 669773542 918108318 752543855 816483727 97547147 266922383 1028828722 460236672 913217103 382465622 263530958 1006756920 354326001 627301153 368761206 673594632 233121525 278362219 706827420 352231877 634328213 231290687 127402110 337604789 663045152 479972124 951531375 1071330027 297723858 322395719 489000764 481480442 536289840 638205897 532483185 1065900652 379517441 657986896 742466183 581251464 48716300 966259675 90805901 808072014 100043136 718548799 63602653 828357077 618142527 228088543 704873105 428703742 640996918 499982992 476678162 422699878 886816033 717566975 590625517 193165262 271497355 1142262 218729593 593031606 326643747 205120983 223629209 896759473 15159803 696057644 254389571 478352978 804801491 842090416 19498210 465227986 401785315 742000262 181093502 41690786 217069540 986890931 292877650 257437210 721838560 776340584 844492819 1068093534 470160483 307861973 375036855 578046358 1000568090 377414005 1045852933 552106065 617133606 576169613 635833299 1012638445 424487250 776658404 899640746 891563607 264370655 46758942 408962700 171843230 67612508 885148541 253347824 925233577 364060541 19044013 728672615 1031883192 317638183 67225768 26677609 634879972 891455950 820306714 323203378 820929093 890049770 352705497 439750789 877546723 27390814 1046066751 169339520 1038884912 175881232 796754042 459977717 175078629 761162843 242000062 23750941 992477546 210782510 899205249 725776424 167144416 187802641 476536960 444725814 792745222 894422958 28860366 446892859 963030729 301645581 260795969 574192722 533920222 1001316801 1025132992 776479480 203805607 919014105 727401245 472965580 804254161 807533530 1040948087 256939248 609759826 223477902 814168551 149574667 656781067 320545548 309862958 37230790 60538281 772446595 816512454 812912119 911485983 655239662 924442657 510141234 689767384 915421336 128509345 835943575 80128341 962563090 796800273 983741716 255456455 7098730 490177837 523401460 553944675 482852970 346055947 105884162 118357761 488985430 167039167 281361758 777988587 650539675 333188589 571326573 841716054 690143613 218507331 162874871 351094591 898922592 423123415 507974498 390683013 869902581 334836403 969451862 161839095 195875660 686445602 687028203 729576145 953287977 874469851 421409509 261540752 110695090 961340674 578956319 251664440 531066849 606408059 196212350 434387516 115772000 1050486512 594501949 482772695 415728145 882681896 97911691 415891892 330472215 898145482 1028858916 465998938 176798302 82218970 627586896 8691368 523047276 515034030 244437050 711912724 30243200 750649457 440606 333736430 438258368 836229524 14542754 713701575 433147786 1000813161 481548894 448107719 875429436 415514727 709023599 170154362 781175437 27298600 604564624 619984435 615024751 577535417 25982842 267484073 1056650405 116986443 226932285 531891781 805181436 306175745 286727977 263817689 1043355585 425749951 916456719 944870133 364077234 580909034 427316423 72389890 299915227 332423407 356069351 7631370 869510080 456843762 716491561 476985921 478869924 753129056 639986867 77132910 642243672 619002628 866659695 237274750 863029123 783753522 74474039 314239052 278271331 797630421 791165835 215925252 848914534 685708247 64181965 888472636 270222516 159800298 301560112 117390901 284721174 320950093 54166673 423966563 80688144 8971267 913659137 446091317 224066155 323412751 954830589 1017088709 51783576 784485229 305117619 318126146 866690486 26981675 688395108 31063621 771882446 650815832 151062063 1056069837 226798086 567154919 984380920 995593499 1001540103 660225261 629578748 438990102 232407058 105486425 515711883 545230225 580215418 707064282 601148806 701363645 409230917 869171489 527364511 685514036 303355340 867977364 685342431 291227597 316354079 156656559 23983585 69953741 293073519 429030922 148872329 50838862 687837996 228500168 153067739 598221300 337058711 475323627 586224246 757517862 116446351 1033542609 973878822 675344030 98107400 343929889 573408105 259280873 1041413417 923581294 444248629 643217591 754700426 56393420 452301380 1062972253 803944990 533298105 435127630 746175564 169288216 760347614 30214020 852832560 515693462 174367951 84277807 788233868 274130126 182184014 442102552 249764599 335679843 734491313 738805463 215936833 312453065 46999212 380340030 1038688603 367896692 254249550 338190341 902124084 481818909 1022733838 701489894 243329552 710550076 755036221 629494737 681032404 577122720 232635716 189618762 665967217 395389054 759597384 767573269 591205966 103063839 408634931 1072289044 113079112 514701067 530005625 45472551 820031955 898886768 945436299 996746752 456622786 788919838 101870266 762911153 627171877 114829841 498321173 255683286 169289367 70108533 1043729522 581455433 234132982 509022955 63110926 1050731529 631800876 967983033 1007269861 372128621 819010705 189934505 163222955 782881033 819505525 375964052 94476382 132080481 880282039 258339080 567448431 410615229 131611379 437381155 276418274 68367032 122203031 87707383 73384305 320111180 269297001 1055037891 48543709 137970294 896906956 893585132 953838357 124928585 929917991 244520897 755519879 476327023 816441771 232793916 269422342 487583315 872077848 329642005 338466512 976572776 136036666 359244160 952337830 474291722 5388582 493634102 797865586 946455399 413723275 190651735 112385139 763195816 415665223 236298149 799357640 492178026 763964722 895314101 1044768218 39509444 493850340 42865950 476261454 620348024 997220165 668322996 409697226 324590198 223508996 435582681 701379639 331480057 959105329 389365046 291985870 186676499 182565566 1071650569 344696413 911347393 19177393 788610488 744493820 307975309 146968261 905442777 1001688786 163639740 119541197 910922092 206220207 81200782 490032964 351693222 860370383 709559836 243641596 581851523 283038600 901354867 3003106 731095042 175690780 998107743 400287073 343719038 733596859 811882467 410368534 6963767 958461205 978421891 42711385 896541168 266325385 264008145 620550859 660594177 341920846 1053009674 694836043 899774093 656248686 704634716 143005453 667475503 271306936 295447286 998912621 898495365 957055900 424957527 372411972 119445008 767818432 995250453 205930639 19144343 777263516 726679190 889286816 417423774 724051652 767278010 603937917 202317300 571803871 277459949 984417765 263839813 510641699 190587010 767460018 955496521 789647783 1025534922 849166494 521359993 1047385876 234721253 113525323 274688775 5240225 1011298712 692460554 355993515 574325971 809878656 506373446 822762343 297870765 5466363 539583186 1027795002 488933170 937953820 939875789 476745698 310620196 695235739 232758653 985441025 85655400 693921109 799917373 741664901 123973567 823291492 550304334 781965065 554642896 831117587 236223216 545371610 834697121 1048701364 778059349 304532267 993348899 1036532080 505877515 655989411 558881316 282009642 313303169 813437326 486010867 564666241 602033638 335393882 970129839 816741375 271140091 436279605 359682403 279432245 950134569 531433664 534411587 1040796999 210169697 116337748 376561130 842690908 341062738 670460038 741196478 562923358 768193438 344455543 206285747 891601631 1037572035 432605779 418272981 309958448 400152799 719470029 270993853 810794924 86749213 769996702 318889066 801455883 549155264 939421919 497394858 620784210 617387830 779205100 37311151 84104433 279821245 548601629 730032873 1008381668 85195615 971027065 870144373 518873200 931162823 517714786 859558493 378174331 184367335 1000143936 669572891 50662007 417934105 287250789 523346853 168495879 724440001 446398389 78239152 365873613 967418188 181451483 663951056 490733483 23905820 313914205 756309060 486365937 30383357 855153513 629592602 400440851 673569992 175212042 906754319 718991877 579617803 102594484 429751705 985429944 204895070 599954679 362021291 253177849 1063900151 897536799 375483457 819412580 380209088 784517799 171324952 376892325 956912277 387934882 90486298 868010859 28506413 559554305 55502091 845641769 185459247 750307445 461563628 601053736 603076385 1011901656 830279829 833590763 1046956847 96668648 834696316 584999454 723365955 946579901 946783495 829150473 507953688 573268669 439084252 283806274 709658625 656442100 644442999 22291389 494257822 319894523 326648901 400764224 909929932 140067325 301751170 331051347 341693992 50338776 980811347 846541219 470393613 501299814 614726064 473546954 913216622 406750198 509898859 342831900 304462557 584557915 112369142 464613989 121577661 279666239 205445214 625258633 931896204 559116480 67770811 571749049 522670680 1049598416 675854054 384023798 973966294 1035863820 190412802 246864787 508268165 564136956 88142781 1047382353 633813027 84251402 985957283 364787938 601706955 330535725 105404268 819290648 341096577 78978563 90875652 993399959 911953784 615401275 884833807 656666041 533209067 906412552 548223303 464676912 926860202 672932035 614627348 869938363 754478889 863849674 353522665 202817832 830206227 1036352646 820779250 557409972 628933682 1062006179 681891782 798256776 513991103 203498579 124758625 808858388 942307995 243061716 199109235 112324391 765530681 578434650 602379393 7221761 185290734 109561257 560008669 61539055 347384187 433359025 924045398 596423801 518566855 446604854 558410172 636163508 685903362 184449476 900335168 138638246 942185281 369134504 192360109 759115139 57529167 17589915 495224571 289615791 977149448 114457404 555578099 384486580 760982823 1038759462 732760427 737483556 561091408 486644019 261483656 92974544 615874014 916800755 808396206 816714798 992891976 400714041 299514232 987856885 870084635 788940925 527777293 426745470 30527209 415427669 619409492 781864416 934022950 981064426 968123397 757705318 623959471 741119965 18895540 360398220 867040143 1069099303 575267837 162626952 984323839 636421293 1044086837 300067724 71289022 674971665 986011965 51551095 382853108 555371497 120309751 364927618 757283540 857797698 286279386 891640326 307405239 414538857 559099590 133755026 800007451 643116679 402390242 999335919 684852014 982995564 336447801 87757272 163374067 739109176 43157396 21312145 277064779 343315979 617273668 1011989657 81992596 498321824 954580259 593614858 827261419 150618850 752128352 118870974 698647320 915965194 84646021 846545282 251308047 993138605 281264848 391143262 475076696 830995694 729128839 582419378 161884845 947091751 477442831 289302873 52266812 107152543 680179142 238645406 450740191 685209197 209681552 44719615 74436678 222612892 833626476 50309703 599752055 13704432 555913672 1061957824 783622371 469574115 425984547 522018632 427648591 908812701 961052420 299380179 194650509 172118262 804515168 232201880 649604089 745301920 180102086 64655404 60868793 308746175 335721435 193368529 535033284 250465498 510276951 127992519 13786498 884570923 11032019 203512348 305884999 351070929 332349424 469825120 959468226 700695051 878022444 550415354 805183882 525645318 1027552089 425808977 119249888 16099010 426033381 67359033 847449854 272191341 686938529 770826603 482779367 282799979 68247631 736659750 388103524 104207725 34456003 173674590 845176692 761466589 27633564 219972886 813958109 879753194 370261290 232504227 330796985 605367782 680056545 673217303 19099473 452914021 1037295754 300436370 606372710 1041690010 826726144 461833244 213832648 710204382 634311392 214814828 82706978 489301662 621178737 447500312 589482092 106310749 815805432 525971609 991025888 729179559 28081388 50383416 116110929 169318348 395939539 989964836 431085371 1009920264 713513699 51786495 769032142 796930389 858264951 694568745 156481294 1038351304 494572815 294004111 496317998 938171991 665693679 3183396 613957152 969965849 81150426 845270133 223706523 880236855 95813620 552816330 458773685 185243391 619801912 396152009 789347782 329923494 345310687 374505302 800965188 343553775 19552431 344413555 579096097 477879886 859992744 129507611 989457611 441217154 101819700 680309454 919666157 93553984 227076035 853527394 865724461 211356212 1023168488 742585482 272889119 62437996 229573267 229004650 351711722 621842652 699555784 374246491 596032332 798725954 851059904 661830315 994269803 410230685 557362325 609399301 706735963 540395518 367979547 1053906525 777966202 49452965 839570113 1033784671 369509921 720113601 367326177 1015943071 422777721 792078782 406701457 35961906 302742920 103176054 856482640 350780053 1012794026 1065278979 1002324674 518278792 1058253845 834308434 1057217827 1811326 13597244 982221296 604037955 156838262 408214658 892794837 668484702 419148568 1008477635 925749381 60187463 681112502 324794931 45336727 1040004609 27705585 816029357 359046732 333750706 810731856 725892190 86555941 405921098 821846058 607213588 18343572 199819175 1009166592 984211447 1034426534 676548571 993480713 1030162250 541624287 968338317 262543985 391351750 98229870 521751560 224800364 640795918 501254697 586061503 86595674 638670180 599253026 992829252 482181894 867907616 406057452 1061280896 405385121 94513121 817388397 116124816 1006454823 281158816 984157856 58617219 364029033 875142799 903319957 379357407 521092111 853761192 1034561148 192929608 998275041 713010868 360634059 149158505 906178207 56488862 1055763376 299087219 647027232 695198065 323762277 204691045 291216714 49181501 258089342 857160009 255321544 677662649 939445534 19953196 872531848 796592471 46814706 284163112 941038803 419182744 179069787 787233391 44127938 450706108 718877170 744821090 12516338 391189366 738575557 729221837 251513681 387178158 348921406 264703170 2165813 370715281 357873476 173600451 830574172 1013539225 266655596 630550441 951634712 644232749 63519057 322422409 501562638 745741548 117106725 433475590 944778366 35510270 335755221 956183038 1025470061 612506328 291833624 66493689 980603246 284676832 22298904 842638009 952424795 992529994 466610310 909859022 13766461 185571771 456425308 734684041 173407897 614646798 759569576 975825954 43645426 897363979 179239778 760022757 96118438 279916392 731718611 476327988 914963384 740069465 1028493122 4345856 843438066 749925890 393078669 364327623 956669151 785113322 136048827 794602121 1017401280 851856993 474675899 721799414 562613991 1070946925 219988763 207288561 254087382 225259666 299930591 144964531 614389792 1039835274 1044568882 308492258 660251344 543144393 217301152 261857985 601350240 500204639 448873672 593443318 850682598 181003853 349192513 586769109 602958972 557688370 564804549 472530911 429087529 1048091810 87391090 275959705 403617695 235202333 120268551 1033979276 100045168 247367017 525660024 1048863712 378438129 626766474 598984796 783956149 513972842 830817794 381570501 346412471 668252944 998371241 806817845 768954130 118107818 771550777 16280373 504753681 1036179466 366528028 951735043 867647617 293810303 650691 450429044 59016994 444185520 496991002 538361487 725258337 50234067 773173766 657363619 670347280 309323765 631602251 1063708699 143954647 21129219 727994484 278686494 973543154 278133668 361819922 500288340 968438602 962587981 262782750 163087171 650572061 145014068 638506648 521524449 295125201 966184311 252663961 830244221 833854285 655538749 580610221 596214690 1031407978 979765965 941981471 283963634 1002460918 447352722 955454692 570353288 913755616 676238049 306570093 798703699 478897524 719017006 610745158 546207757 505507530 555662952 8843233 824222814 136359673 272495033 27931706 876605048 83086637 1012588582 944174725 38410778 202933558 931984324 984566778 219476389 902938357 466938322 708304342 301522594 147774342 864970656 857531221 290145956 363062027 12770344 741631632 330549507 811961390 304432915 492572721 727136238 276918641 90388663 912759461 344965189 321550718 669091383 1035020113 247447632 682254044 194769501 1053127416 606198938 296714695 329762768 981896942 90381308 515841334 544572028 465168227 51089709 33223234 422725857 753955835 1031128598 769098018 440802929 563005146 607087723 503377489 855714049 1015791058 320726250 979872906 855161173 963018954 381490329 157528274 991131924 184652362 60973091 551018591 212172846 832057156 1004044311 591440753 97993143 611907726 596734426 44612730 994118214 625610374 877904384 599095668 502255756 875223987 325651577 333800281 263173575 794617271 374995902 539839604 1060361072 45424879 591978482 145116170 267380603 1034792999 577871652 805163468 198277567 550689707 230640110 387091964 563222568 659714669 729219452 321960012 807023480 933416735 724282837 55379065 411876881 359631473 820537950 42662466 183673085 759313765 485393872 1035104558 139833671 322726730 861410899 314633593 261470073 102547446 36386740 808854113 412577249 936538381 217838829 672507044 962014270 677637745 423292352 562293320 592372738 1038975202 1037948016 31334006 1013917947 28119108 687239194 53633705 699667732 587057086 776689019 695958852 90061737 634917552 592229499 754307805 428244600 272140751 13220389 413381406 760382812 460964827 679448693 49813860 767698739 158146296 946655073 261100662 505244093 137516759 38458994 888040948 292218059 855321585 659473489 216359886 967801196 20583963 319302546 871113751 1014475605 914158650 867864845 893843947 235439913 334404394 686956778 83786823 273104176 99607222 208306932 289260144 642887780 745139328 760888747 472069505 520085104 377779725 429665524 678415037 167623823 380344055 783418240 81601902 376924272 427103963 566476604 526102254 176341252 602513632 496518928 160706726 108081437 648459674 678023021 109741915 943195844 533489317 855230773 582041890 635342328 677270191 1015317446 77806246 678681811 769822554 467453208 870081680 989138556 984712746 608510473 7580744 463303975 573853965 856415913 147784192 676060496 665302641 1037779206 270798949 599912945 782336468 125798181 393164958 1019674555 678795165 582352463 491485016 96427883 962263506 274044462 612806056 313447142 214745005 1045137915 366009003 460761525 970957102 494512425 694320932 817659016 48714758 881262085 289050247 362890097 613257522 835471595 586173530 219402776 648297082 540809897 496592136 866746035 866999791 249226501 765565042 1056317799 294310734 194287676 991151566 977224786 980783752 25776962 1053356391 440359426 691718431 580428267 176613413 274525426 907781076 1030149256 618601084 920185361 5597345 343877493 248691392 368586762 358598912 32384061 953326229 337801179 1043058911 523645207 588324933 521751344 1005340520 779835978 961135227 458693448 474544828 855195921 640117141 8984394 229769201 133174501 49077434 498918976 284590418 364959137 228192036 278086548 477621688 1035451982 384687721 911611759 525407645 316353626 539625957 738719626 175857977 962892433 589596437 272851827 413350743 432202526 894140564 683706691 8865310 89885927 724005435 807319687 520813412 459517699 8474832 434250073 437230475 768155652 573471065 763867446 165510459 1038860505 58867208 982889024 322942007 1067358419 493147529 80691730 770292926 549201542 488183600 402237712 92863446 1055579576 445096658 431703195 127520064 107558718 765689549 1053704164 24753869 435216842 997398366 1066196901 747901174 138172408 996219757 485490724 475181137 923251038 954178145 276230570 465393133 997265678 15019466 502938831 286059521 781428823 40896224 67942451 116460884 1036754546 125221659 460505963 162937078 727181794 1038177326 493533867 272477608 424431362 539954218 602919524 601821989 797389738 162755517 288244564 227950014 384863947 397008194 475306887 349276543 231300992 114613217 341658688 111983416 849157454 223948759 698313597 94084067 894289626 279872295 939874664 1072472405 887205479 863902256 926702755 360639134 176198724 559536626 196554742 869482104 940872245 797476614 766458028 731355457 396534074 489359545 54428130 769309408 416258767 247699871 701676838 201147416 98896824 466095117 188423197 534512810 18612752 1051113258 702168391 893394175 856940882 664703286 800787871 973857383 591314316 349465167 156309544 671482074 617338180 498873588 185812108 890824112 170458576 54569461 657880795 147916926 906352237 474629254 665326698 131718876 338132862 325251801 881480142 280720504 998609346 569878476 83793627 555069444 399184875 178580578 24375134 870054407 1013297675 750080339 493211523 1050773761 297929336 151753599 1052894679 1072550491 220526377 731286808 951527055 460596925 1007786772 537775202 120460789 754621904 188501161 1045607774 310845458 797016424 850298452 984914794 1053012768 406627032 852658177 123126862 912511383 1023959270 50605837 731708536 455318567 456380607 864963268 1061051543 310645765 454861511 168908320 458702307 642491340 361869325 50479947 1070535526 812317392 260553739 1060766396 504834350 813256878 1019741940 417137444 653811023 780671580 773727529 223630683 774057029 343406813 1008495965 356461689 924053370 81933099 512660919 1035237358 118800164 451808248 300638719 56962475 477675162 110836032 540575291 747916277 661734671 89217523 32425167 1003105714 847336360 575990529 426091652 776170275 794617014 573074003 723554556 85953168 993197417 973349677 868185787 550668604 340083724 759956560 260321934 481695657 389873537 239256954 868534692 709550321 906650210 635464232 492704145 279098599 840131175 162454368 930303356 281006409 1069341499 287110208 160447070 103368101 781240099 482404080 692442333 1058698236 584988034 82849201 461233739 143465846 196786262 249200239 597694922 352624359 792152917 438418598 319502743 1053181980 405281273 914852217 308677109 462119990 305693655 250522316 1043378348 210872541 637130887 731078445 628785131 384226212 585125478 580656899 724878500 384991268 419981054 545301287 589329943 150697331 119695415 57938535 108891819 731272999 911560557 165869178 694132309 1068663159 521254656 233623242 647931419 565607069 1034591506 309202168 622669699 589436340 52101760 252228315 668077119 674021992 659873292 80042779 618019026 978673009 619532001 208380735 587962342 712690274 224053108 402232193 667410368 802316091 829492922 802381465 674055878 934777475 629929250 204220787 267364808 607730999 171679540 217486487 74034025 251157432 171770816 73422457 787485430 912705152 348533822 349169771 279183916 256773438 600451747 770810181 438923419 546729690 7987785 917013596 1032059284 284132936 828241673 596399718 876580507 354937624 888698004 509368155 46351548 574374321 496600487 341083238 718296259 1016143845 1067237613 921639156 230431549 423435867 227322430 426108846 858978733 729989539 354473919 514864727 302162182 123643252 811702579 196831973 872272711 515353455 935857905 149806316 778879410 74296278 673689688 330513996 261978081 1001947422 323472685 159602547 760052979 232903978 789582072 842408887 220725472 863068733 1017201790 760164180 473961869 1067593041 942300398 517167343 618776589 332753500 769303220 418698658 172870882 25267160 369215334 124295740 112061854 188238244 721787685 315592587 133772045 796958711 397156190 888648628 963346899 329696154 626731746 1070515763 493756086 603741968 859534492 335581624 728620323 826429313 174149635 667911993 108175733 735467020 485021938 852387701 647491858 614999284 410174141 821340204 23820760 1054626068 214641407 948220166 801788852 990481099 413250689 383838732 547875295 567430453 841995010 643224465 821346884 869560628 749654233 236976074 1001507896 156304042 271637974 488133491 945950240 13467965 878186903 476449136 144535647 116990852 659632863 1001422692 493056317 561834584 927906250 910027762 632526293 776773239 371699405 241229198 682905873 173412411 465756158 474294603 107915732 827586588 609802387 331880062 501551249 637002133 1027199764 1024437298 133214696 165112948 781151707 276590173 4836942 85436380 691257759 911608393 258042378 213283467 904701825 546392416 767422742 132236439 957914926 1033448773 1066029069 267144611 321749198 219522572 647763349 653375547 117094240 266644869 179207171 900588610 353770486 721675989 159018407 496005391 327117501 521848410 865940559 985200448 38455832 210780515 647606970 444829538 472963790 457553411 1045279325 575635836 363445098 1045695639 121716776 757563447 81966491 1046508386 175590028 683686614 352701981 262749619 170089704 1023238883 898595179 388445070 439527271 369381983 962534916 253966561 105915742 521632584 10638323 646110845 398372393 517286109 502259271 99769852 211250393 232101203 995865776 684533832 248320998 857647662 295593075 674325958 459921055 1018309700 1033749048 585218160 37321918 620003247 144544592 129702431 499216371 690048924 869149094 683737625 826821405 500546138 911711287 692958253 541030632 912329396 555056082 1039872641 662066740 515974623 335800175 321714589 827541103 667011755 296452771 769322618 363665033 131976429 735120320 789061994 473469527 100370769 535059829 808805511 944606664 810387426 1039729241 561130879 52343953 834219595 49772802 80637845 33428739 1584453 374661269 14364330 547987151 519483071 165814064 311903361 567482229 894547281 823476057 442706524 284860536 601768012 204107095 921142258 283457212 174550099 691684760 688312595 505562262 379551170 724448523 206459707 823584884 836570620 549685727 413026935 873989139 330073895 801983461 855626092 270092247 365738078 678920574 908848829 146425066 51143232 115095564 539344030 86373874 362402698 932597911 648106647 568494739 574416358 719891991 385605502 998616065 380841020 807007974 126963294 971063507 721170165 854993456 174332005 634400547 910904802 208020297 9854316 188405428 763695172 252691466 649012813 614929455 527262281 942331397 312226194 347888551 248454835 476906647 320515742 1047361491 419214497 473934794 42294785 574800078 369487226 234718643 749064252 162810570 914039172 737611324 478614920 1039966447 767364934 263475290 721000528 950215274 938254392 51181347 719740685 322763906 566013997 817401921 502972471 462246726 274670867 626860948 822228278 980735267 731641905 782785273 1008538829 844379819 353964458 940956832 553818433 148529896 898387550 652955726 898524351 422343296 1013196088 967977999 146050267 178637941 1024586492 438241104 602556195 391808720 74593967 572185617 453905655 199661007 665291707 868247088 708404415 279320028 698391531 858651070 362827884 620874048 767101436 145240567 740610581 10915257 940732510 316641891 516449626 1023281474 1065458053 998550506 462186210 290158267 247725245 38699365 488952828 97555556 201938306 474136217 306753293 739047051 102884531 707819702 4643047 194138745 930973841 1072762083 678949190 600138460 451386459 369366086 1063507745 191041626 949112352 418531988 545981408 725111208 716530521 294789588 1036168610 188833230 337948345 897023406 564103547 585233598 173592860 966872352 174136029 250897228 852566914 390765141 271125512 572890562 143130680 765619625 122499735 286189806 839348999 855978010 513826864 317017719 395381772 617065599 428605439 663238683 270805380 8803594 477869554 76157215 80530696 713540478 568717538 511870621 55314293 373772218 669631253 911615355 193548065 423952936 680418356 555540420 699114297 871269419 640447571 1041451378 50474068 312446592 65071654 416536736 222739330 528497009 758769015 456244562 982450547 3652594 165335824 842770622 630955524 156075884 411394918 852764478 360009159 801754757 235234184 487555870 563756065 1061340679 112509569 653772982 309874551 528973858 108543269 987010134 74901803 1031652979 995724754 114332728 46303186 141343415 1064779428 706985205 699427949 856650272 892252891 771131875 836722436 141698746 1031374375 508499919 220473338 1050100010 529718083 664952940 613767103 221733981 821276053 516874158 500748316 7706387 776693286 346097926 449154319 235947238 908539517 576711768 727080621 768074911 364817054 62617182 486410140 186811850 626927521 281116113 498829666 1055196391 509614120 941228247 623042650 655290953 759103149 102151439 569882844 658227314 206602812 3612289 802833284 280142722 186090631 172878097 650778888 126276995 1018327574 74143839 124432504 284802714 453792537 169428570 436509869 195272492 1055515296 858144305 833983988 997647890 205319548 211103723 466406691 967342454 553656547 806544460 464957660 973577641 354046625 970143486 103990830 780915034 737703095 240531521 376891714 840224024 478051474 616441121 556263185 502659708 625463935 169754308 1066123589 27227604 954686890 852252581 701708372 587626465 896546470 430286710 129429018 109656101 183002535 261954922 581770465 969657763 363109126 52078471 91770155 526411611 220070919 759614572 226602450 413028077 1024853271 357686256 328333921 635256421 77268652 486105097 202027453 947207454 104701130 403213630 83244027 866678715 477573438 208590670 826492433 168420673 618806542 65634439 1069328230 572440513 466156627 1049282539 48011016 159776274 196984617 991955612 264109660 617065091 125716738 975295705 103654487 535533982 1026208585 994661607 240073404 843643173 693880222 91446203 79761459 711354130 876085254 205497993 1020034744 561080674 86396508 14679351 1023131576 118819371 953310485 343056497 630004842 681612167 782035067 336829820 707220691 532683445 400478758 714254910 927564123 128901852 701306901 476806102 863311872 130438851 279180267 895118119 165204556 91514722 471750962 718958888 937958855 481211436 763968020 854131799 871988109 255775780 155526955 868680617 373876835 846910219 194344866 980001292 206231193 815907070 564083533 23581045 249304047 877676509 316592183 730087244 1065665700 1044467066 318436217 538052155 488674983 163524659 983821083 745239385 189971759 115667501 618128095 909129744 763895907 537957079 594372941 583449444 1061428976 425448506 385185274 246010769 265914510 648898820 952098950 879920919 305414718 315547853 843604560 473218698 549648012 556472581 794456037 648906213 594094588 115306929 197583389 175709388 717934394 309810408 964468255 1033801044 17366845 1016148408 666225383 607378897 159578005 405689341 101900030 1032534044 855161378 50261885 324737292 38430072 699317556 967165223 840744306 950349105 1001861469 1009514648 992608356 164435964 593084029 781536511 14296188 515094611 967167594 50177693 57812289 996890127 640327860 598912079 851987631 553057474 785137997 404222619 649139513 62530669 149055993 799127766 57254766 73357867 689116431 702071814 420789932 347495882 50634052 36059789 179711335 673970161 966819065 606082161 290810883 374753517 782144953 253816 581899488 200516585 633743709 614030694 224943582 30993624 402820873 1021152735 154981053 86389482 741124941 539244348 22875283 729068190 220166878 92784093 282272431 79059626 90821952 834961579 359149900 39402247 785287613 192288914 965438709 319344164 203331497 362485996 401572874 86090908 467701278 788258492 388810252 583179742 102498157 1056355383 1021897819 1019362723 582626480 1042497518 104565225 745872102 308926859 306534251 906680901 334737649 688031706 679491212 484088054 1005638902 652540491 365634922 890529610 710619366 509541679 2624212 286862775 576981167 486525611 537483199 96149308 648716030 752769063 112951291 1024907005 463832233 530740737 201269357 566093189 274500497 869790803 928712252 843199550 226771527 481930203 309731085 1066332079 682728963 956429578 481916597 444942840 631417816 440528073 4988277 468929578 358164556 347440597 741403947 227626214 631909534 304213130 775610349 793975016 876507707 116945007 236584207 642464954 617249341 936288893 536813975 967310638 861365518 744714239 1055274971 962965903 504355307 186435186 820691393 359847861 383447576 246431194 601889078 41284585 285799675 594390557 283707831 902056604 1020296212 964856630 567889733 499140935 2856349 190321336 121498421 129250894 660664455 785853223 559302207 25401404 787119736 752472541 1072498644 244950620 112509661 846438000 512975421 307245442 661442910 353645329 276338041 700447571 280625733 124139195 693628780 207045736 1057451883 357649826 221263136 896396968 13001426 662360388 211897633 837848865 277500181 166465668 442879808 212924936 75818399 412332604 833307218 880944374 13802455 679788926 531684745 856206886 619438184 916099339 762596500 757109563 74923894 615532523 1066446926 774483663 448708065 439627078 438012170 414857585 173118353 633870757 667344640 171909756 491298245 738105844 404814165 241695868 803810771 246619522 103397535 319096998 698164811 907232252 694429465 396789025 613195674 1004439788 212595979 1022703070 217894530 1045858638 978571925 441738145 480546044 542018443 705872547 129774507 407563447 733565696 306015090 820409616 138830193 602138958 482250521 420364317 411900961 1031076593 881992481 634721146 691192710 16671857 396852277 45929592 239690609 948568990 574156250 670246832 24467415 241142052 788674721 732687687 149158918 841464623 449986509 283153522 310494214 15909051 828417505 768451212 92702194 412975069 739781647 322060187 194260525 323131855 967667614 96951207 42205419 253862758 826857719 962234692 233887178 296419549 751084767 484053037 41569736 520291121 510047412 768584902 819565175 1002430585 57336605 1901587 814816518 334510565 922643167 301379083 342404665 548328285 397897850 493018823 748937450 426270927 79009396 549749323 956570927 745212755 726914008 755196548 64904129 608453068 675272452 999521242 943772869 577457321 182873095 355336177 115719068 584566079 394516679 658805234 60335447 199382435 292800253 71226796 63828435 604604090 514310831 362593418 493621717 225250514 714987638 787209620 384082245 652033149 674290444 468137307 66133292 267814315 838939242 533298042 888192228 574722105 1052419739 1002042481 177940515 636311703 709474164 542947501 438676984 435741622 493942470 483536823 984446364 923604377 270885148 674175335 361944049 322751761 833142703 27142250 271367005 659854259 373260775 1066281111 185349430 765222095 624751900 110243941 120766225 656147290 624386277 284715913 764151502 150039446 861376841 330940270 445557432 22704333 996943642 736736291 966453165 675370287 877824381 890932316 130575263 247922266 204498664 854118479 139006375 701010920 472129883 545256455 1036178829 187083969 937248712 71841079 502822156 123701807 106263377 239479728 84756104 323611484 381165570 502544290 810079476 239132194 855221753 46689847 140108469 192569682 648553652 382741874 393667597 796476740 389794903 642117039 197324329 795875750 391254223 436936767 133106866 629411046 854041522 428447022 1303383 1059088182 849229757 1034075220 1066616217 455930045 910688660 1033493020 523783727 697383742 806958264 899811864 653916840 682340263 725367354 841752310 1017689374 163459022 1025831752 878365546 943686911 188419339 1038915785 131754923 523855781 263968791 1024846356 695811164 889220921 1064980047 627590422 766815357 445636497 539620586 307126331 166708648 850389620 759299823 426007848 901735434 270018226 1019678925 629677737 948617628 818394846 269897476 631513948 179932044 959592608 883965088 486269366 984501480 358283015 878760039 985877909 965826939 67011872 689304459 590315652 643210263 1013512441 318381134 883820783 417174053 888429005 751895980 298179689 138742161 964738826 201720017 748394600 50697048 626147157 926845533 756697871 447093529 604810384 54708853 205408152 286824756 193035657 169470344 484837549 537174676 936362373 76425002 566236159 778788957 437945744 1037763524 780748525 63858690 458802289 715784074 700114874 311368823 449908267 834757783 376484934 839480733 382472858 165795183 233530701 1050065434 28238586 1056364893 576221117 382551769 521327283 984117279 960119867 210911800 165925370 152316705 803236334 320051644 730857881 295369227 668959620 299395445 709776818 765489098 844492153 760105532 1031174798 967534145 972896559 785525215 694898725 544719666 783570055 473102852 830674389 819385474 420958041 866251154 586842502 987555010 187014120 205530093 380134681 205599732 95079243 491346667 173937587 881896873 62037398 212451635 23563365 578235506 752022311 339552996 971464211 63010350 522309176 568598625 140069312 970155300 382739420 908763416 371054130 935254821 1016558875 41834264 642147209 171793696 903260474 1012404358 145343489 373967090 561096633 198879010 63531659 38116419 466076724 777682448 510079918 226657938 456139691 743960434 831368752 228988259 184531113 1025303091 207846667 185033033 714401280 977224743 354974846 339010364 71686238 959774502 823627287 1006150199 720730834 571664028 536785106 24412813 390775936 265713928 717168950 131801107 911312233 459162996 990662560 923087484 126965365 257097229 876178147 215572270 778197861 595283726 174354919 34175779 796033698 836028203 530049496 882690772 466491835 264411706 661973351 1052341189 298362634 710717299 297732530 972683673 840813458 849794918 961064611 345289409 214077707 45361768 760016419 862277549 332237465 578863476 111293974 142513287 240545948 172612951 106227003 348920414 1019576894 863548059 549988973 120579526 340421377 668111589 286923500 763284640 169965534 833276139 651748634 1033554226 937510849 54107876 219022245 757449680 968441334 769124591 495014785 195066291 986477043 463583632 521740862 177240914 420232084 165934581 610596504 222126309 521906249 963994127 309663798 704506581 314360444 27437010 566458641 707719525 532126318 437656561 203439022 1020208984 733042422 458721826 754840831 724441307 138388087 999554060 398658456 445685404 844530574 424707134 113860544 615794205 742760207 46470537 718496704 514752940 123503609 368838911 955677948 502092023 1072820329 430341947 897141953 191902433 107282413 979431558 158568167 824374625 88265273 222949150 1051983803 889910316 264329340 631771841 762304917 117506990 331631553 386711694 775092207 852480790 218818650 465062297 145034838 37915758 284747141 556854674 513339652 355966748 10446857 337186058 737657436 385838741 699791038 732932744 313174087 749040113 441842829 648618735 502946131 502694862 590152795 503566227 133187712 852213253 156658338 544403101 444741033 7439929 916694684 880216615 519012837 328290553 658443591 380007449 773955996 630580074 1052103881 1001930170 922031981 794392815 249246225 466123362 569984271 850553137 924924590 756726709 859262817 545117133 30824208 606745609 813879902 620570777 1042957375 199507072 542152064 153915196 526317799 447824533 806099104 460694137 432817639 851519629 926855296 838899780 678571614 45917781 672073973 796894623 1069917439 680656317 391700614 977464319 915941126 593768059 975980285 69771785 714427002 1060514001 566206428 841683850 287830573 388366907 565294969 784308044 135737005 1005965342 790937002 214299517 757520198 969215291 812456244 634173546 673094527 946459416 444666324 470792932 538891085 101588711 131621201 81623000 524306158 1053834629 724241783 540932621 519581762 1014762808 391164188 956965071 181568463 52044893 626325780 794201173 467701313 795463685 967776454 788478956 917359101 221390048 192573942 250822331 911637236 613540360 781565344 971979315 819734232 763991341 60511642 130287943 785540105 355079636 816314912 741254052 257350716 906328535 1039287507 58938155 754443276 677289848 713497382 582272027 654613008 635970245 331564601 860122452 775793287 922218266 733170206 1066488591 872184433 438053004 1006232348 150893764 408989010 680134285 266278767 313023230 976555429 655297316 209190688 563442633 784357495 820262724 861794052 377070832 36962511 777601079 757464891 39245670 861520342 770331505 862987734 187800763 406401448 918917763 451963087 166242092 305349489 1071152780 681961947 610479973 852331894 341370592 357248248 419396650 668905825 146969117 962439280 219085708 1043254145 1009664209 598868471 962139729 284657064 638718910 1012759546 993537558 160337000 990032744 248887640 468012677 95434309 635594222 908410640 369989996 783482072 492963980 654241509 277595839 555347009 817367295 783762983 1040018649 434115797 4791889 131716022 950084982 888233236 242333015 158828629 280708728 918212936 9075628 482000550 483887046 819109636 817300692 1018053912 274373075 767354187 623932904 339874755 463540377 229438467 933647713 13427101 705765242 306926568 8124262 340479865 620220600 984424562 870226882 1043717297 288611341 852072965 699343146 345685721 1027686518 929970019 404682687 891617547 277654826 875645743 909061839 204803703 823124983 497746284 491564984 392704312 615126518 459225562 204585484 380714564 296416508 894629960 828002844 552127660 904154789 364672161 385088243 366853598 52930722 254535771 1014897912 737837760 175209883 725130991 367222769 269853750 173059509 569805945 1026167519 809572076 658277998 908806851 448223101 989927586 887267905 970316377 496511923 553565622 690518486 909074014 720884997 911817947 136122550 42052359 13421765 432251036 755448884 1009944186 350054536 116097526 852809703 50655555 157162184 345963548 670107129 410060849 462567459 241099915 733694043 31177807 806763439 910725434 948595317 177788818 24852521 50720616 260264346 916249065 9943931 967972971 870444329 422247232 550666950 506350280 792126507 84006194 528346942 688166107 400492301 223139580 715740875 66633747 684082796 842590926 125754753 887147093 235567843 810600315 483621041 103210054 157882297 452670607 704151393 19454125 809739051 1027659183 1045115377 851323697 723079501 115973094 1031342600 179883701 112985792 724924092 791666781 866075551 1003600664 608976788 886511689 432388256 294651349 645946102 567595720 1064124227 362906103 316547832 156694363 512883705 791022852 299360590 653750093 496984359 410323687 121709843 168163786 506649957 951765631 1022120237 532581313 14624964 187725404 670208801 614136690 589081151 663773654 321760871 678505796 680141109 786693693 573448994 825382941 669394058 629691098 910766513 348002936 222459940 927498699 92248256 510481758 617117661 50411878 652242301 623880899 912707748 870546680 48421083 623449883 350915893 767278832 918507390 671036267 588512665 173111941 402417659 562179831 810566967 356608206 646156329 975347093 932962845 913347843 829342228 612706359 798181535 315636757 356014047 441009748 461259189 272999330 1064339934 819191718 36183630 425150924 273606767 519307403 668022650 280979200 679105363 897341044 417814855 1047072672 10051169 384988004 293445725 606763027 450604838 678458042 887702782 954355763 524859340 938606760 1047770662 301459411 358247390 302964729 611566503 3509027 863566685 746440219 131797007 376870282 778103585 120909978 428297761 865654314 472259540 549195556 179245352 424711745 760124074 418961085 1063544788 756675758 21577563 657598343 127140711 257946469 118518929 19856682 55471698 656059017 893793090 178436209 1050072527 757074807 1033202755 1018301806 653374240 425020590 1065455133 959603345 372525669 593782562 587335331 820433172 39616726 243178631 928052253 180214077 242763881 115274730 433503581 1064837710 803211557 11201414 747162441 853440237 799267127 875874344 195664272 981680927 653710196 663979607 960745482 520389158 701419078 464207305 309364161 369576593 139719920 187866037 846624507 1011576928 1032721045 51228511 54516711 343900507 100208846 660569896 400415082 859401759 299644136 267079874 499168575 817726094 476088545 940422300 614528338 708055568 422033128 123293989 1025066033 919589159 226353251 588700304 311047700 934516398 550805513 590699116 136817403 518338476 280748192 174964117 949857251 208368033 280995065 749681706 439889154 99892144 1043291465 546720213 205349775 2640795 959622068 814320838 201935889 602694276 26663681 856631893 377300955 1058542388 890853416 464284445 646911871 893009778 169624217 167911021 234558866 258855555 400147708 250470359 362449065 240984879 389531739 455605842 891843442 1018735851 919843675 454808701 997587463 997388319 947967061 843835378 617188818 740205474 298223823 217176386 355373097 932937700 748935750 909504134 615196586 742048538 882926437 958287657 160858934 98083256 814171765 597351565 416747847 259920988 937429581 333351085 646845484 1013820185 825025529 11763071 1034327996 798949605 1045721759 503528829 516429644 976771543 185786258 251110559 800835990 26441896 799004267 338353880 962994887 1053983707 343916504 1065383322 475961639 579634602 969041360 630902265 546800417 68347261 935623673 381216194 1059293462 1000701044 15107326 885784771 297982223 555862277 643928901 816539549 851957064 729879972 147447789 750922935 60718313 56681194 635738253 260569409 667047624 826543069 409810542 840970599 932065469 249677774 788206895 890809306 330475196 508987247 159418065 320757024 62597335 1052026578 157292528 791852964 460407396 189003148 269437379 976402552 955576085 672793855 740832246 618149414 857669521 723925191 890297608 363726235 638779853 226561730 1056037035 317569685 5295311 590795607 332988381 607813811 613979484 902943390 81393040 145791368 825772131 392470335 1019021877 544822565 61845849 683863866 926444397 31451510 479803428 226422447 329560546 899685916 260350605 160361612 113893891 917649462 427890657 504977122 54933739 884503382 32307764 85800892 57604677 469446450 125435097 282380490 772599194 425365011 621286035 1021838489 111530624 130262021 137065383 198303035 767745630 80921427 934852713 483289240 376633762 181300930 223075851 119365802 1037085302 295554239 796784798 514447837 337857389 783069619 25404997 963031137 44590586 90082239 515541713 784783985 1028147883 979920950 801365501 104336347 880801047 774183326 192770553 237570036 813549886 261347697 392057289 211154888 528822718 150067600 288238805 661652740 958945262 90894954 577305609 362214858 704591143 352647266 169746816 368650526 680597469 884319835 556753005 760259558 588477550 752722690 50023865 914065633 783742747 392574564 778152375 766003939 260177305 40210089 295379378 686115862 114255454 626154628 667278677 1003342780 858886323 91183025 9815848 563924370 138141380 924353176 884333562 404368799 683774965 551334594 732156150 168088040 674497572 366876127 701272886 581603297 874131694 361040801 68998285 714975292 933768303 470056622 200695224 30397472 1028893272 1039576859 814181005 66004539 475545679 1015182536 1063131725 801489488 845429998 263940959 737189104 198982957 159551119 87900714 93129662 709704167 153362911 147212821 272112264 735622917 459359211 573203030 732108861 603606234 610592851 764453723 1050336952 882743636 305058950 191357957 1051946887 1059259783 430962225 17769359 65383219 194686125 1052459427 194714597 541714897 823446007 1049284714 419746125 1015811296 553061651 407931801 607877459 994682715 826077384 1044889934 443018873 255589101 284563163 773984444 704689310 765083611 409404505 747313743 594945653 718607348 873998330 1008848003 222176135 966903208 824873594 1050572046 284283896 594391666 633971502 848662452 604575627 518516488 65505372 67689657 456679524 600157674 857816580 342434366 311373514 234106996 56527110 910941016 814677707 290568322 20209619 904249679 348545199 288506671 677519829 843954815 705501411 373588455 174341891 912505750 498501372 66558417 746856416 570293113 960766843 775529343 749683988 110834595 587124062 831117173 838653597 971795542 633615805 571003259 864041735 174550450 46073881 271962694 432892220 118066377 949264763 838039625 1001322404 573471892 307379968 445764722 813552154 881390311 456025725 666702372 565774165 412164502 446136431 231662785 371952085 962739253 1061489887 1001362278 538825249 686789939 323040902 214109073 778363814 196204119 58486544 554542771 367957441 937582109 96010766 245100525 706136892 945112455 671184755 807934136 665555403 1012588051 954617703 986486709 885402361 123152682 811926880 645846366 865092073 1067013577 938631899 675062548 756907826 633361256 167511617 52076333 731253911 81878967 381469234 69030421 111454086 156475564 1032545913 407208779 109538242 159841465 617766933 505097238 895257265 290221886 937674248 14625327 680168030 662555268 248020972 156852993 264842064 849842567 897712650 627068384 651972403 239178652 335276749 491489153 184297170 82479397 378766685 254882877 807448760 24849810 674886043 629958853 378421174 802446953 80303657 936068589 342196275 913884823 201107184 841454248 495324967 438645207 562634646 163416044 1072983101 714709230 283072067 390542224 1013406124 565110971 945347091 569659661 1065246438 799847652 287924068 1054791312 170328035 105872131 936842149 286541245 297981617 490540667 669941565 971728027 115083817 307519684 720707908 88646970 758361417 125831421 535228667 380615930 102001743 765541066 439581607 147596256 599647876 1070283961 171139689 443487748 432038960 159443730 764492811 530746333 886266268 163754584 703756591 871596821 406127837 846043296 493301588 1042085461 895296322 1021155134 737614518 611497383 319593554 762374758 510274871 157671952 411790794 622648655 530078987 974665487 108409059 723550191 996229311 488692702 743264232 63800823 142978806 55847476 149592143 900512366 195734735 477484799 241233381 871456241 734870921 865228870 1012151195 1039493338 404422695 316738441 769338289 439377703 601105874 340772433 47527520 968882523 534498644 431596301 419611531 861036176 745960912 119233219 449630492 364674058 645522707 695114066 341700769 965738303 1005551720 811071654 578031574 4371262 62908755 1049311394 904002002 700324774 654834826 681387070 338531407 487599718 172718338 126959261 936536530 776390949 939985619 180907828 773906180 584553866 412700663 679999155 1028188551 405559016 934578280 715629828 12728324 954326096 854481063 573268197 469167880 239616945 735516365 263698876 31985927 22360762 230990188 6080538 823624974 299030664 843742816 774218833 417233563 27398880 629091972 528766676 621855358 322678293 623878774 1004232367 289188734 824077761 405234956 936455149 935794041 907715571 576527927 78542889 550442762 782574793 156992964 155636949 116504204 592145402 154987421 173962669 190800485 695429353 724139760 121455947 84674179 258561925 841954670 358697915 298955982 81423957 1032240109 954590256 1006550844 5488135 661510766 377650738 569203411 586030409 865975208 1066466216 38399858 706219533 383341228 1024361840 85769968 276097649 860979335 553536410 799185666 402914837 522571715 463663022 424924187 355057633 1019711485 1055625517 334602696 161955190 435462158 248935378 223322279 675496316 133706184 197331422 164131220 784361904 309647140 260982672 756748831 532266565 1040485386 29673384 599535304 477363908 707540376 1047866849 1031134400 603496554 276723251 389279135 634703690 679101365 475903198 1015179268 504223097 466912476 529303650 617116667 251941381 992195067 67240975 184998052 948920173 382159991 32710134 868696669 157182713 450322526 1051199900 454279831 351188352 800152283 174939501 519638107 346603987 19374978 123929644 737532268 812763243 473152937 2601207 256743730 1002992760 167073370 542904750 402306536 840090789 843506853 893729520 810326222 1026485981 95056433 1072026354 1046167424 355794663 185384954 523236022 887152356 745313390 534099024 750526038 626505079 550837832 531104713 422536356 307501797 534525284 99450849 356113690 422872680 995517720 59485395 892232927 853688323 332300229 644314718 624147596 586507639 446107452 855686568 540540421 47322918 822195494 572188433 793131216 793276981 15643825 360143839 918611926 381064468 699879506 1043980304 97794982 548234300 895792029 981301238 337878367 790589503 229836327 576237728 675158175 697693873 908780210 273652430 644644420 597955319 971352458 97163063 34444654 440586145 548433301 28262043 72555350 461765663 12271453 896236524 728463476 792335538 45632502 574556056 119473694 212032885 121482237 927356991 603270614 461485018 439033844 30594018 576291245 350595413 594272617 786106195 618932415 43464218 264919143 375899207 467440089 139439912 20019444 732138428 90485099 541933808 255920012 909345296 945314410 552074330 794694874 841000559 110557057 832326521 587342034 882752630 1060335863 686094501 950062108 381969089 917574872 1013932314 70393730 756401216 847400552 540949217 487057630 786842432 613823819 9665064 166366547 381900808 61666835 532909564 281494503 837991702 610978206 44435038 930676617 1039280825 262493237 29122407 964519421 62216474 906000175 492426042 995965512 245805670 356723084 1026231332 220812335 768622798 850721638 840770705 192890234 104582507 709749910 307839251 922793170 24720852 279711365 304719937 550425870 4660792 273200759 1038465982 1710982 165926077 479281244 792215428 89606505 405681721 264184495 989898752 2118342 936574426 177945453 65494037 783984746 982420978 97517399 340894841 594257247 814967566 269703952 386506836 604506503 191379294 479451562 434997627 750412961 295234451 556452004 693735268 261624883 36975944 1004051997 101734268 85274869 412110235 25998835 218500 662456514 982491294 610486991 835234429 267022631 418091943 446098120 977311013 1013286933 936635547 993747066 233556599 254687221 810205607 213444094 575177806 468469396 1036229666 463137543 112407385 787909757 300831193 958232690 66517598 647997450 926839513 686018237 733643943 1022905617 891418786 460181840 223542492 86933635 1020307432 713151257 154809723 584320849 480608958 970570797 797314957 232586299 1070608811 533394623 893083147 711240137 951464957 895692101 595745027 1062403079 521273039 784276964 1058602004 257141410 22048291 626446483 337145269 459144588 1054458727 374214030 384695147 282849381 47099637 784689105 68978512 291994794 922568795 172971477 726057435 838189248 291994378 1007541430 697901717 331247549 822477485 247558255 762801522 496949704 246706465 1067982426 471830040 94876967 252710012 906412881 99679861 173445495 94029940 534545366 260413381 966494532 678096767 478448433 31032173 596300683 245665039 212738167 67463391 429508988 596214986 930123701 109762324 497431625 539295401 499494072 646715500 597730005 922719704 188870311 579981212 204680649 1057800951 142863548 344073926 225090955 162269422 329156589 627473905 921718063 898666494 196495646 196348932 910712585 744938210 51730077 805945534 315007320 952287442 111574105 157622260 87607126 716916849 167535443 315911608 773350758 638901355 903026109 1019986684 617827589 510162180 82400520 972845411 163677388 724279740 868684694 938845930 1018734041 854362202 124040950 213664417 255854579 884769260 606842861 776818712 208816298 722621908 658293001 543087990 674486850 162279803 432324030 265000062 881564086 274506094 163768264 131321412 4096558 1068908902 444948217 861835028 561927479 58495464 595635039 971873028 1039079634 478210708 624014384 813776255 648881785 799792979 1055725333 1031525189 122968519 1042494072 459105921 123087136 398852355 575871282 556767868 711760852 10840824 277342549 781505106 393583762 15091142 560663694 11301989 107305959 357338093 610589640 302700488 63275912 823551114 268486942 325771741 983921994 422692552 679681302 787703294 114623776 932247333 991828276 63069006 465151519 822910593 492292432 447519791 17926081 891392946 870573618 1043196512 530497338 17518257 159432124 298533527 414531477 484323893 400397107 872023644 876569574 932331183 458311239 793705288 856717734 490662161 130707118 28700819 358315607 955765138 702618245 906166701 209803782 289711700 19498378 267092661 20703327 987464560 355265847 93449346 856137334 16046686 84423703 1057668793 745497509 325050422 620719883 382209832 664733154 525044882 684279226 916161981 810532222 328198527 945080008 161634751 1057595537 105585813 755631119 837842566 779288137 233362091 502923880 975367156 419269064 395646944 1005070427 124698346 188216377 494883202 26394314 1046261001 145912536 53317455 368831840 718679018 812764244 539416032 21995047 1063336841 863801834 960486580 543973761 91454786 975119660 62209288 347232760 691199440 790635293 706542498 57540160 118476375 701740542 310012435 1072888863 1035181385 912755928 576270397 898006989 631591490 481939703 198212658 437424207 896485100 557494010 806045252 61456742 853210488 732655205 53222369 733256739 108426490 877115602 215304482 1041475912 166149867 624707601 265744597 493056787 1034033213 744192458 972093292 253292518 130871918 108852266 1022185898 61965410 19430111 633038512 431275859 816882687 1021868780 640289963 562954153 1064287281 1706911 951752928 575574154 803857453 611858563 485402739 1008846266 480872618 276005915 471432441 854318225 377843894 817204692 874076588 199297042 12995760 643699841 655360237 97333435 567249635 844029117 981340395 370593393 376064719 240523530 480099292 592426128 452343774 493989488 103249124 769073673 244305543 942134166 398609705 521319857 286701497 1014192672 1068898794 204399915 910923674 393370518 670829389 1064392475 432130920 721346029 608587750 952022216 140391542 66636096 34623817 988092776 125821825 628826820 1067191170 1002310703 715218929 483972537 933400702 546465524 939605196 42871690 212342042 1022047544 766333442 848520397 943001850 300970253 154461934 101447747 1041090916 670726525 157556309 700523846 118851675 550764698 65661942 488847335 613972213 160828676 1019669685 773488946 971686621 1011532257 682497582 239703515 886648814 1045486747 130852456 210817182 1027022555 706908662 617690342 1073081092 97350459 113504702 436531674 942589571 311661793 686152912 793525401 463571665 903871541 119344877 684344903 974479433 519836930 758975376 254333562 223453636 20768836 264263979 792071479 940075449 619764945 804575526 349226085 1068178053 366500787 456134435 620086865 630991857 284823821 700796968 112620676 559883226 750950868 171755686 479221659 871986190 284241117 576729799 1056305962 567763356 1045512922 827110571 888960333 327377527 647244566 162693070 285120462 598069858 463972414 486939090 557976835 754866440 209590047 742577107 733890757 198717370 341645225 320772568 917115796 961160749 1050976964 876415809 583921902 474802875 338665893 222293751 749435694 552035939 301064493 720178076 232917288 742520536 567531257 907533436 882575822 825552330 363741965 203590901 536066384 157067046 864654290 768523739 964402913 313691722 805556575 999381181 1053879789 263699413 301316710 326947500 410544321 693943486 834275983 567851899 27744784 506473644 917633473 590607955 839626155 1012367617 876125827 171184318 1059077522 494971592 84367999 118321143 878404930 109058655 1015113007 168800943 146813249 685716883 858357346 450441012 190760464 116031170 594316141 679291898 145034594 247382567 367345648 982622225 634952617 414199170 324995951 818397965 651868831 143670556 910852461 216227152 367625915 343798056 554293205 885241181 760446177 626096207 309334837 949699100 890017147 24065544 940942901 89862628 74103663 801335039 44332361 924969002 518916117 641194274 890819328 847054186 406349352 365922169 146228039 160412385 146741967 453764545 735156060 655927256 989094384 121801529 794559971 996127201 859202388 37238215 384035878 423384755 131225371 457062530 335404138 641496756 100630217 414726816 800697580 115376210 190722266 656390535 831937863 919576387 673403775 484798997 998545358 1055688490 491725242 257355636 547124812 361625808 766673788 190360945 280269905 1013104477 722295221 266929723 950961861 212877612 173144489 829659862 595360331 803338598 3974990 1008842297 355626258 168507593 538766316 126391915 911674961 963987400 792201832 172607270 199219608 441501529 933774095 1013202569 630153462 946317940 624680346 761704440 228381329 991623718 137119925 814535455 173440540 76279239 646811127 795853959 822280668 118703871 166193613 297048673 342090994 869453474 993027218 1051204175 933959323 974076689 208315663 576814105 839429665 710610260 439209056 887951117 487732066 914439803 976757935 728144619 354650428 588073315 314318970 859617914 570458432 548010538 119124649 150325907 722856739 142052321 477763387 969804215 794887677 753721513 233835627 806901499 818453232 172936826 878833205 413836238 461410488 149046505 739208738 710422853 1150105 36632853 837063062 144924701 1048991360 936900253 234214278 866751613 521185204 662032942 840834232 617867195 671049448 358773859 972247276 793033376 716240446 262481041 990557689 301707818 724344085 765394216 419488860 77529932 965245316 419291976 113586626 580094073 751612244 687644295 690982877 932666267 768756117 220935922 482944272 396065732 799872365 43743559 604855771 738935094 801744645 355904383 915359499 486423310 15969155 304932033 978411814 673940693 931282591 1029040839 1017610838 829196302 329772518 239478815 530316018 1028977565 497412812 345370385 571266524 671817985 650685117 409043355 1069216917 614842302 508761289 278363761 186807426 19512560 695728144 746071646 641678392 583998862 55211225 798188715 70450757 566772854 980689197 456760349 852932296 159548797 427858685 694380825 89301876 547120215 260157694 1049844136 112687611 54861199 477597827 582913717 1010538724 435403078 604835224 697561945 76106949 892196141 856902439 2569245 1024898641 924452235 127996259 590166134 54607270 671758040 1010368999 91058788 886692322 870855705 345151627 1033538794 259829838 943642802 404110954 63541112 154219818 521884979 916625035 135603474 751210287 537926092 582493677 358938157 81132253 507672285 534922004 291132450 839718383 962847925 943399255 701323022 660826859 665903028 844520494 38016254 749371192 730637345 981741646 353226275 24258711 843148227 305657605 449256932 613376722 396825628 196799980 1047125448 809445065 261753820 554077859 789596617 546557578 843537292 11886432 794469655 798652979 692912423 636999524 807438629 802851555 16762338 770004002 964312949 148768345 841266965 874276387 412968079 866395822 780544439 464881443 976424867 926207954 412623294 386922204 96854959 378940025 925232655 28857468 526278813 541368370 982972874 42262728 646100682 688834758 970519921 739409598 998556897 617233491 374488710 705754202 480878509 53054947 488502239 810709476 736725661 1057428986 646395914 249788500 500371960 592126441 659167374 892366917 466168462 778119447 838695487 637766118 732068903 324172841 556171057 234435345 669485147 619089354 609927029 921453557 783296723 775086214 1053408735 870329338 405682177 211406403 964442170 194627403 657212263 216880127 383843938 777821043 371184336 189816562 1004159653 58370625 451477298 106629944 860585691 882363006 1010973741 289405711 629122378 91839768 1064552356 345535800 300999114 678094376 879947432 515583126 684340317 35201820 663136221 553216176 155010717 290226820 740988678 285388949 479676249 766013511 739970912 678397854 592089722 289784694 1021249800 665743486 719260342 815093832 633312762 761613205 734514224 394819183 999714950 312468559 903975257 283721235 635236685 300986686 62439934 96777756 370972158 731716228 371551201 107608957 291967588 310412142 738218393 23896369 577324468 93230732 602178068 115809095 509599088 554046479 363079259 116000856 504478766 695886687 1000605968 532411908 982425451 958339954 354908234 764717647 517996931 448640524 582437799 574710157 690467380 551942456 622943987 28545774 551923626 667644262 606890925 436857280 310939776 269419436 690698144 869462050 71492139 184807729 178703973 61937590 121465577 918165651 455821754 975284671 724809791 764408211 960246742 681061155 18630551 179575254 138786259 988063134 966587458 367105282 300010944 105382556 408756903 503109733 306139903 17707450 51654816 965344922 530818652 335258102 413021393 400321034 499039055 633300995 297218675 346552567 687725906 996759401 354247474 286615463 577423757 574715673 106719072 593408836 955580178 1040427514 988296502 909525235 751777688 12572726 968165032 1015536845 929181380 174600509 640528200 566381381 168050439 592235673 557256564 411484126 214618725 890842121 1010610308 345698433 23480943 323942899 886044485 344951801 800020454 698219313 704311919 219847769 879978686 383848107 420607909 947544071 474772856 288190310 1047433608 378019430 924887772 615950810 502767137 338282920 79413269 897628993 1068175502 740667368 971298093 971843350 268809845 1067857496 188064134 617459008 732427299 71821175 96068375 794265790 500786934 218630289 811825101 326684449 807879701 411403070 987886976 886536407 791686571 354125082 526691182 1031960571 598496944 562687382 167106409 42937006 493664120 297075895 677226074 782799210 485670375 858373723 1072220365 795678920 193734232 547196101 170167324 552622314 787482704 161193220 1014695389 114270914 823377248 745565037 903204472 564098118 42979499 236274054 615375588 935320997 354690769 1002070196 417675179 132902562 142881185 21106217 957427325 955005658 374573095 196813827 964433625 1002637271 686596387 506886439 650499778 194056602 336285062 767233368 544135005 771912901 961733405 484337062 983768235 348954591 251608804 351786585 204788430 272861718 108582406 64804460 345997286 289892489 778444248 502659387 698884384 271988518 449813492 919648974 986809600 713745459 66765786 341100651 452902070 391631787 101078535 615460625 53747614 568419387 446968721 434229197 469932717 19690195 602248269 25546046 651300176 25481158 256621871 915479560 490282129 211905285 296286871 245215419 897045335 131724892 739643119 426490460 1051621633 374072467 607752611 850545569 878907197 688499924 408557126 223629170 77136182 417921516 589594595 578921407 275201701 957094329 362098178 837248688 498120063 556464801 986157038 714723718 363259372 310210039 591152756 749078739 53210139 254827102 919423800 311993227 96485652 729978342 910479733 891130007 698219063 915071763 210944826 274821316 71983391 277296558 148989921 412144748 33783290 63159680 1011825868 123029977 828514228 798047148 732945442 23245250 616561491 229307867 1023410602 155075185 812996767 644695881 269574625 507488655 227022805 247048834 96360174 273822695 594270271 700173113 405975748 1023063703 874647053 700249111 328910735 852177307 940591771 758170827 648406776 177497516 853706073 755982381 117223755 311352735 704339370 239253170 495552000 421448344 689233212 78463375 427530147 354837877 1019346967 435296567 47954443 824976661 427732927 816023406 349535338 123424718 185853731 624700032 909956066 826536736 659442866 1061750762 875715772 381579400 367639846 441471425 966602613 113698151 655653902 314598100 953011475 657128506 830288704 995322495 8995846 84106028 87180481 902484130 945257691 150328607 1070734045 90293787 713141145 816568948 667026706 982510764 551889026 575963850 114997296 954289080 176285984 370298324 1071820517 1046576378 719746267 359791278 961008697 458492471 686760870 660161532 777692616 562758015 691023935 232362772 832268198 698559615 917003112 309591178 536482494 178274273 310296915 153920708 171299184 341431763 633518438 655643006 955531905 1045176784 775660916 118892437 31439529 463153175 583804445 925430095 752184472 523978723 76324035 744972031 837396930 310200117 34785904 7045264 984981691 983009447 652311034 492243432 14592668 638285810 698230938 700772397 395656413 767249754 378939754 770041011 175834558 298880474 891929151 408171316 690225997 615829565 561598804 875670867 126319531 189250745 505740656 333883746 256754902 20463145 666326704 362657698 853118512 221403910 874767255 48026286 177088575 1013154432 688468159 91667221 395616314 1064909328 364810157 413121344 402939173 964027499 536328321 996828760 624439026 498274373 25705031 878855645 228903257 880242950 37850292 123319847 1064902820 591051718 150161121 977555923 562267993 31764026 868747449 966104921 108548908 897085801 510406482 668819476 199333160 536617621 773838854 959241519 427800677 566000585 938793787 165266918 685672114 746092830 33445055 745245466 938162982 14418362 1004365440 687437856 190320730 323885746 309817087 581253618 1020764422 126431856 729634035 592659085 104809944 724355371 177078870 136211403 855008168 71779855 1017585231 745763723 493478651 183081927 938159882 598357324 382743675 883977254 97955084 313145594 105809273 375513109 36666690 1062378737 66507001 238369778 708055454 97664376 169048745 657325875 422389893 810847507 33977078 423234856 369239570 213157453 737809551 566458669 688528345 97534928 935606838 473835894 923502409 61332959 1060427111 821400365 1030286487 236355096 136727455 269539569 1011324272 179212250 44077916 595034585 588966806 338087422 472724315 693901956 576271037 229779307 667469754 632467076 984070539 573375703 996034278 205473779 367239179 336096164 728655969 192354943 532935271 269042453 159673514 1068485454 875444924 621968250 550636469 334984923 332702723 14456353 962017635 931401064 634117009 550915411 1061550453 99796702 98917714 965687450 532681359 185883543 190233207 964853779 577734025 603434682 923603392 871137952 180916884 967825978 45638687 145653754 238375392 580306521 483526993 637015578 1022550597 879084319 308278351 483484226 1054078368 913293109 295553519 572955873 586536465 622098297 346165634 244538742 740351081 976692759 841071290 496817237 178139162 295907045 917945396 858345847 532643934 226442294 117709771 817746281 201085224 999274053 248575381 728260722 771620063 667262563 679269135 521634676 769455261 857814159 931776691 258226295 701979520 770769129 537815276 415287549 925409065 773792800 259289488 591560647 995585810 434994754 847261990 185124155 891612298 559617190 93945533 818140631 1041926308 962546252 603682941 703489730 455633881 585453098 758705945 799487122 840835132 690964465 807343209 542000083 781822968 60874824 715955702 766246026 688763622 1003301261 2845327 95874315 950493192 862337837 615657310 453178243 247099314 340903292 827943676 13506790 471043203 635308617 975616006 405979996 18964628 566317391 890851660 890635551 290966432 776521412 1054518121 694685096 254502998 732676732 427538834 399319480 201066250 407772791 267088681 262891966 123955236 1071726939 682016585 967294034 433477259 103953446 423578754 801471326 273365673 1020874502 714077324 759126991 603334083 742555552 176418902 530034599 75223072 512006565 507877749 689374986 982147302 785766777 431145466 903192237 1068042957 106807838 1040152245 310634732 834646319 908693510 196031098 483751940 706783277 418391810 627704928 418751503 568318163 950169898 637286615 534063117 93512666 248720564 373271821 514940380 1045423877 624404282 1029670737 1025936594 196367488 1064960607 506640768 94598333 975946486 730750999 816851136 996573035 172847870 205211113 215028005 1026018070 503473464 850961861 440442285 491629900 51929458 1071195763 205806568 1012357953 647902278 759224220 711763992 760523914 875452049 506499538 622420989 177769354 834657085 1036579939 482979034 961497655 561565149 336376837 35533240 10657241 199564682 690219367 735960314 294271755 664041538 627164079 784022153 444805403 941090333 36250767 741679202 686603124 959593625 823120368 373823181 123261314 782857979 356239110 507039191 858367797 214788646 175160525 482057012 800644724 1051819852 786619658 182618373 790554281 821989550 25140739 806174485 954577106 946910964 794538679 692813664 988779852 517392500 566181930 1052408341 129241841 490267270 589678161 313287533 327866666 514033597 35069361 279458099 27486782 145223081 357557993 419561833 34516184 128604497 953382943 986684908 284267447 833577611 329601657 508144959 881828058 896883679 270931811 671725504 112418260 102226093 155321590 369460239 157524331 40038912 820825106 857462689 369748336 539635979 424354334 286655266 706195424 495138051 113140928 363109643 1043975708 460944526 265911244 225177590 150806921 79732343 168032219 508072035 986372709 789851527 607985809 274485727 1066377082 782567648 178925990 240074217 648584406 560997624 1028769398 704842029 427756359 99817880 988314914 500651438 434510784 610670453 1059720171 380644563 930484107 880463207 238878885 196450473 392465502 414181318 807672302 399129420 907118525 475368409 464368356 844933624 756421663 389866338 241271198 359851661 629549675 585776206 1003028162 863935451 558627416 533847263 493775461 493530255 589059198 200243349 15058161 10081673 109299789 268045651 931505405 788035829 511135075 46545441 762351631 428254108 262787860 621410874 849741023 837462261 1025600038 557394346 428539755 359049522 87404427 225502671 533737313 579622021 445563519 67132167 971981973 164379869 436463956 643838047 34255749 704462351 23909363 407532956 88583227 375675917 954611855 808456768 421881261 843899728 666302589 985412306 969727261 468211943 386665685 375776768 523783120 142001047 29450070 852292029 668918245 251175671 1035525020 656221551 217921316 372848789 456946574 799273679 984879737 612885618 64425591 323481957 977212289 213467373 1035446919 223155023 200667444 894691877 809254038 417105475 258180901 973323968 471371453 548496978 570669266 289684513 588004484 231372149 976759687 74027028 1002710238 456326065 84739281 706266768 1008131785 652573940 1057246134 609049176 195630519 846055686 199662874 864786615 910028268 1018371379 192511474 369202184 599390319 325954352 785753198 705843384 211897377 918451786 975659653 39889020 99794970 646177492 315256496 194824674 825259254 633509867 235565512 893525828 156372899 981018528 157379459 842457555 593081615 865374545 174625672 554492638 421779937 410545871 188603409 279882091 44108572 633948532 1041365660 265265764 912795598 616459046 317637116 108132254 736347833 629797778 648199083 252592687 975957696 21868147 830655763 957260182 228284708 1024743237 971597117 906725947 8730673 987112300 869167892 265050824 455417393 605702456 832677640 862532669 730071837 852846507 225253002 207118795 810571561 430074263 46634352 1006512182 970748877 605650859 192427708 699228283 480156723 447450983 554436438 909874270 595908824 491466273 166477692 119515914 998063377 971918802 244868858 211514629 235305005 170133632 501201822 811527231 284309042 442465749 71773606 322059402 737510949 221699844 138838843 71408729 693087605 535006231 226543449 99021773 44704572 993099470 49033542 269169752 824119549 808634720 639455077 801450087 832411757 594945774 989396866 638138491 634529542 178459771 909461165 986575960 445965681 701425220 479489169 842028033 507806933 717984290 890253736 186969224 1031297875 768339960 537126569 932589868 29980465 894355414 646998942 352517442 263026119 135668735 329466809 432722473 455548309 989595912 725019593 433203181 327352441 813841698 681800980 1025110377 685167870 199625993 246990568 251557043 52155796 590942772 210244706 548483170 677450797 1061500820 859198161 878266491 894698659 163552272 72873861 227325473 559051672 309166093 222636175 326040007 846732513 81035168 646502490 968298924 411106214 732558265 238942268 720529241 966847792 857648839 836521319 779184898 378491302 457151901 507240314 633094984 997699419 599276995 272136719 891535863 738335547 217073676 701464803 968254608 61140449 826474568 731219911 935611353 981210193 837046921 809053454 443757485 1019513047 642583070 603347481 719383118 947012559 143539249 968572940 13872084 165232811 862161510 387152869 58322298 624438835 788658328 60704399 190143546 427751292 571006405 1065006544 148261882 845030516 334205465 408890493 678130765 966984495 712237566 451393830 228962674 631939217 839439917 419732081 662777736 39559513 57468330 37763939 457907194 776374070 438962693 499168914 350921629 99254357 497933281 106966633 154978808 927721327 597246661 689076737 484654484 378200281 974797621 559839963 974549032 738210489 13457897 587354966 133704400 136604199 112209270 594246690 268933852 896993759 810711307 1046038704 76282957 182212192 210825490 299022848 209753288 391530333 236541081 306341469 386828643 353223024 496589080 551044233 995008181 218226569 590784167 820874421 597300089 350160170 658849593 506391111 728141625 219552993 658245224 717896213 886208060 499787564 204691889 7423209 488348875 372501664 1041210504 872540404 772572989 72460983 554919825 211937734 884877759 599951292 615335588 505807084 245622276 1053023345 284418246 800405032 626770802 1028330635 128536390 431774943 21343334 519470794 460227276 169556067 502971543 617962630 199729938 941949448 775557530 194783017 853062226 301370361 988113022 297079321 20868338 660464312 799561675 638899031 504468167 583061075 368543419 714040126 694745261 831038721 543873201 168287536 9272753 627933693 346206647 351044890 632652343 868230816 361657565 517943269 1041799776 25927966 146670813 191572093 292921871 529038885 633008578 94239911 76472082 1028252094 215220050 944704459 726291402 838476355 697467305 623129987 937654370 698428955 38318836 655022419 912963010 559026492 406024079 586938191 490493369 185008668 1066394864 285000723 1048716708 232190988 396486634 915925267 534597104 462437536 689477401 81615315 254810745 593186564 134871850 586149990 631535493 200621500 548189895 188950397 316764716 657971420 668994553 1030236209 105450241 244543703 353983151 434043433 329750923 141906472 418269343 827466452 30712389 1009530129 568324487 255128084 1058638179 613006488 438921785 1027009932 1069879932 116431464 367456578 612252524 560309530 382300808 621351614 723946963 23470144 320882088 67789938 450486342 847974374 461967044 261952438 972708902 308171677 977077953 650844139 340240076 649051158 998007991 629680422 259179156 1048634542 790541500 1053378650 32227472 32311240 191605909 260426085 296336848 850873045 584721124 642812763 252396307 560801355 640423925 983476194 801708155 1033873047 103883543 780981181 867132699 372688367 100301457 1012246179 562149602 296476959 448187224 888559637 185480608 329377057 324536264 374535421 1073075569 58384331 552836376 348703043 661638791 105686065 1019148829 733806793 997412545 711960024 95615553 530578839 304255161 436275272 705996491 776946842 695070642 135934055 106329786 1068463742 782366488 782512142 510693701 869801119 1023667340 350547666 810903266 117282561 958497341 668019839 52255417 289813943 551486716 762250850 660109609 324493322 506742401 317544951 985715776 880302411 513162397 368103276 159685553 118600759 1060089141 167923822 142330881 639598442 143576762 582993615 985475493 629746847 496369246 19668765 654246509 572661642 264392077 853118279 249005788 709769405 711906632 349526666 1045197801 264038996 552383932 793087486 117124752 633165017 927218572 340855166 1009823984 913214236 103584882 11447039 721549858 1040006380 517621671 833676551 588929258 211196315 1063010116 380342370 752489612 124115832 1005377411 459236634 57243450 202852788 382082492 33892424 988370654 468163144 251863434 968331700 938254622 39510279 860415796 1024550162 952022961 514568929 599901603 1071704783 1050426624 974360627 582667361 274864047 344498228 530334860 769065621 524251907 993437582 95003255 773394888 368472943 54453599 7012659 1023602381 145963165 859793182 720644566 712168289 424324372 501316355 464761117 143267502 751303487 921539170 482297868 472776690 1002109342 1039874390 89324004 108702882 605654092 706899288 405992375 281042040 1043410483 143211146 849363776 136058170 324578204 149247846 362588764 666447956 860322376 907936229 505852983 920289577 759599494 403475978 1057294713 233482610 680566974 960141878 1003510345 122101702 1046088590 610064457 221795980 130270334 129812043 23932119 862620203 871964131 833025943 278579792 1066552845 147556642 798736337 610022088 936476547 896270614 656005750 997703556 827046608 236176989 59848621 926331603 645709016 909487273 423486522 435742516 671894058 262314771 956438953 452689776 19714703 800005915 679431928 909158891 97483352 691808904 967237932 676630963 622607799 591708062 483373494 363080264 33572976 675873671 878603769 49433723 26997502 960702832 69319179 855458004 975481949 701400625 805643926 518399078 315632188 263484239 263958756 36033803 672269982 158496704 138240529 444450276 902637501 292146736 65109503 677670736 1014421234 825434728 881536470 1042618606 578959554 202361323 55046711 352258154 23202459 241443711 885062195 241643687 736657167 57197917 342963435 583262074 250561668 405194792 923534092 483963771 574560963 503325495 244799796 51773299 443632858 918750241 298773500 895654471 709135928 228997217 676744875 731669512 833443906 1006247713 754314884 45306060 254585073 63106588 671327185 315069492 477027020 567154764 296849714 578015972 740445455 97956595 1038309515 305048963 668166975 353925539 589607240 276578588 215396839 699306802 1008529647 319620619 791942684 512349949 694464865 405370430 934569536 217823173 879587430 194077432 1004555551 42643320 105561534 541874430 862007276 646390684 908301707 644076877 67179 723388496 518506429 92257173 428702790 275289383 1000703929 968465955 979924965 1010826981 660236612 367895458 9538962 520489425 400777713 290940530 541140945 682397641 166585899 435631769 491561062 862513521 211160589 933729772 331727362 18188243 944382205 382948294 422331211 387229944 106017525 52546605 363110245 1019678732 108285398 501007936 926174083 411745628 670078307 516019755 184280258 486236080 461340230 76422465 832306538 329199484 541596920 3073345 438813621 753819740 166565610 877432695 507351103 259524880 430977903 246109813 979529392 437619685 775464868 588508915 168059967 622964738 280603318 522791330 462720104 429602040 395631191 1023435474 789501008 258912605 1042153486 651755228 1028821765 1032121460 896149317 972465142 787805897 711793598 565725290 183513159 243646447 797333399 180201955 705334991 295837459 917260610 14970374 765313219 514077503 505453427 333789306 330545937 935671728 589337625 48274302 229543086 836397982 822160436 656145227 1044922269 420711031 795740073 64648136 933370062 863109974 289982181 455115115 343675670 269614019 782542019 605497899 623728408 472088483 39892052 640266212 769739285 915878576 188961430 14165089 778220217 754854088 375998720 48428529 1045207492 137516536 209020133 371440781 746492424 762956554 864271148 772477899 310993124 933275449 831848516 839821906 327634267 612337750 412317802 217045805 267319308 557463560 439150873 397534580 205068875 749554101 67875676 968377160 815485564 674558291 430481655 240097739 307850430 609600624 544677652 50567827 804200944 124661035 542103152 83299538 23949686 48636562 525703097 214589456 1008933811 441517990 737307690 856299628 164136545 29095033 129817669 837935430 795551975 462527321 1022808294 468313789 666667240 43628712 778087168 957201911 468370200 52686784 934190499 605267225 738985856 363149206 1045398895 76982568 187941268 866057840 600729878 712932376 175556583 703340030 807062084 790306898 72839523 72409733 262419084 634902508 331912594 256798383 690743152 159552329 877432725 726038132 488566123 242430693 365201484 888987965 282613103 327695558 784497738 316306616 505740216 673191839 208265891 174894578 374397841 355726436 859482170 897398345 652844826 971149051 692699072 351985188 709766781 327344958 697617437 10277882 390951577 74403847 35161650 473021849 733364182 677031991 450935644 611226599 440728113 575798979 613155014 961086043 813560119 658696181 205274385 1000915768 609046971 431750177 890218928 810663891 187979505 912271135 426902745 301290093 389225849 152767886 606828600 991270767 892598068 336550221 1049957743 115507960 171470086 1061104514 573382101 969465614 880297097 737064223 425196947 242909390 728468771 619497876 404555042 300715712 652094905 716388108 842200573 22521435 854007529 333008493 899844102 157271332 95068007 975268823 376914749 484175166 298536328 653236205 109622116 1026159694 112327667 596854009 91478701 689387109 396773333 365900455 720513391 978467812 768608040 591432501 25778341 542710118 769889180 658286611 338717032 766262753 752518012 414599357 26095114 1029855812 606487583 506785469 1029956755 981202049 668970768 407870138 842444406 456473310 246528604 784947944 115941218 651054371 996528023 155760141 792415378 748087424 427862795 776355923 28922859 850488984 595775764 764485778 348010701 914050773 501535259 1011052416 655684129 980136908 190721576 822209781 570025119 157137107 557691765 699923285 573987404 220466889 379721213 677137361 969222478 1048462351 428923644 347337493 853931099 173739928 49616397 858130583 105607371 484040402 435013287 256531899 972378157 1047322543 811690533 1064968571 1013620238 597581087 887985641 609746680 1068807603 797999768 931721520 175029844 8897542 197657521 193134803 509904078 373200631 744328614 730405624 174029594 424677023 722448183 20313575 518111544 846177242 719400101 676750848 536538631 685983558 434231535 862914422 350274796 494615761 753496687 542577868 149197453 954180761 209119115 527862672 1015342290 1067640068 80527940 1030937123 631872878 775679529 916177222 75522307 268363051 1063704540 442024679 45249653 290225247 731701322 614728731 346083235 213130983 716072022 1042817321 1057440256 58623461 718432891 24522856 365414923 522292702 476063091 924200241 647427863 13582318 587468858 830165933 1287910 797397348 201558252 539286290 736756314 307766082 738847111 503302870 341613637 855935656 35745368 325969613 30778091 449354227 564304039 400233783 995056561 641715443 412483318 259630784 1064846286 1068323380 950413273 616552933 787474976 291712734 305810928 12442953 918860581 131228454 362492649 369988708 661809992 453962173 244690372 766691784 793649691 320770886 1061666316 598620461 258463003 920243815 519546560 570671829 647137015 609137617 307272942 463316614 323044142 131335476 426466614 314098479 910830709 369893549 543618189 54638803 588752373 668624003 118443280 955809905 227198445 809667624 10662670 248876508 193748952 907082027 119407969 805912353 76699376 1032797067 997201262 961053304 296790342 350321333 305859731 169520202 95354742 297116878 572050470 239420462 313374972 148296514 1027966781 795105326 866534155 1071638404 788528523 92903447 562184716 371119397 922991447 272953980 316775870 398858115 912015007 31165661 910123290 748653616 334551206 379953541 886474654 193860020 15643839 718038027 1021072470 744432713 608070955 84076341 652851377 160245559 988454019 737435945 1072482551 136427376 200816304 129134752 309008317 556605790 107301758 472889680 285651647 480435666 492229479 312000463 619789046 116523242 438725820 890918564 987805791 840362685 491690281 950282058 472393993 743906060 707470612 355137396 437903050 224960110 695720998 350350352 431369058 367220463 705683527 786517222 19060196 1010324186 52855352 226681362 241781012 241663876 189992926 309233087 467784379 665280981 71381168 291663449 441771104 90631993 334361136 4486936 328313577 293346409 805148878 668458568 388900761 756037460 666343328 89007426 784842983 622552743 91841304 789343938 393963339 880216534 814368730 846726760 897868906 406853007 195430599 1055242398 195106772 52424654 1020994287 25946186 867889563 617940535 948709415 891761243 888312270 452180823 762287094 647188259 71376325 163245704 530138951 324645330 204993726 969037467 875186029 685256165 782938724 176452720 871017461 672036279 445635598 514642610 94303119 224918712 175606485 58104371 12173262 1024235273 1025182150 453437806 402240935 315718128 956988046 970268314 433714232 37652766 60996491 693442359 900985466 572002984 292605699 306992680 1036555927 13245292 66790926 1051940089 910126771 253676024 541273819 460109713 329493871 100909767 518222829 361334993 351988188 66260141 313689000 385747095 228718119 53459322 70077055 16637340 678960554 141960456 755956015 283562054 322902883 111854531 605781909 1055100399 305817015 1005223659 890618809 716754295 1034295432 409107171 198966051 528377397 834048018 483458735 878879359 800894709 444913757 323514058 591457308 978538014 939088211 577457675 18191253 430854460 56651198 1029665698 318946277 988723699 593697956 246918956 49012203 983591868 352149301 897169507 951500153 743485995 312554229 772745798 511923019 478292628 828104345 862857608 193016107 47620630 303906975 258950694 737640634 829299818 952302269 538506357 768474959 676580205 131890394 310102644 214715509 872236612 485704644 294718487 926258349 962431135 989985471 363007723 838773623 885594756 374777097 85399078 611322936 161865671 354529453 786020188 336295888 800179293 104041855 331688114 713010862 471762236 605627410 1052920683 928279768 472322368 976619395 896108414 297680728 736808549 577180349 350270088 95017538 429178092 250037810 34636183 129014535 980616191 462789926 317945543 629902857 590217594 450493053 1058540990 1064450365 659324918 864962720 2095614 1066849060 465934114 544180396 404972505 524723482 242265257 126919742 166426480 614404217 849139730 149928508 1051570994 632581316 676692624 215116706 527012728 548338431 741795866 53964262 884510414 857540041 598341850 532519689 926670886 933369321 1066878190 1029584142 963215463 37976058 518537622 731045070 933400223 549723250 580616082 837925351 648959143 475656872 868694747 311781008 677994890 257889995 970864088 6027467 21219049 838101336 804954603 647753415 991271510 62865338 1053902242 4950455 125443593 498136211 687233164 971011850 352791061 324575348 487562262 1004235562 72789856 77398483 621256029 838194854 144646375 139543196 29670231 594237586 473373343 727059148 798638889 425725394 987355312 864093927 392137178 661468674 570562801 939399948 705568524 761355248 448421665 994707682 116546484 848377633 70876658 389161328 697028815 137029769 754164728 310851595 38549187 856062214 78163354 23645350 260230382 692235465 332497871 1023015674 337659543 378217531 158228330 686627045 938964511 351156919 235695605 599811985 638519890 700825536 1069170878 450595916 90686525 265164092 173643325 204820731 427797119 1604136 881890103 709127211 128657727 653123597 600725151 594692912 265307591 151056350 146306068 952943297 404503243 810304572 508903081 516303551 862212337 493289144 523428735 294115204 738252843 179038273 667246138 168977812 440885063 1073344733 549208852 66272596 348595950 328140545 275759319 937558668 937850470 280482793 152883106 817231922 224633674 350966849 818974874 634570404 380386882 326603315 972411183 467276420 382130326 427516186 1027572097 899812058 767896688 551154393 900814690 382281065 660869882 609656036 645972940 13820452 591799371 632584346 303691563 12905897 41684897 661096015 627079847 631798907 621831625 760410999 260438234 1033695446 938207026 153332507 593480218 199520941 745405222 251720673 454754758 489695529 63046097 803781969 121215476 608758224 701804211 485701185 587167013 744608134 904630791 843109665 39431851 517115321 1069868175 307965255 927002049 250101395 859064425 993964087 962400363 725949354 613603631 974643883 311670213 332182365 991946799 17247441 96458461 267686469 810005820 107312330 399182996 459867583 951430355 466566659 91830792 373024185 278351766 133211259 506503191 203208808 689257309 815811522 1071455976 16787421 876677903 502490846 851916977 183526945 701503830 241942648 606761429 360765758 843544371 62007445 801976762 69522526 170666353 187204152 447513222 984553681 120303726 833216474 745633569 245205736 893418605 273708514 352723036 759407851 578827956 546547968 604498914 527024433 400959031 782761629 709265074 212892957 540254572 374775325 663952115 705793239 129392223 95468668 143598663 1042989485 278151408 213332035 509854159 923221087 676415169 903496535 827282039 314257961 248360155 793663676 80475135 824769965 134053668 969444693 513228978 762667775 723946825 143588732 769170564 579291656 470526656 123268625 1057601878 628383201 682637849 706729552 54076913 344838437 575574671 1058700150 857517662 985592767 9000938 203078379 693434339 12070116 1030637074 654344605 752966901 1020780560 230057488 460745505 592403154 1070857461 399778351 553790592 907541926 284987681 819945818 242034464 1000192640 88518155 588599830 558969926 128136428 858579377 779732507 57673615 729886932 933606774 638882277 1011591236 15736649 623706234 590211093 320848317 721951420 1047276543 682424780 820980559 301612625 726816407 188031013 413834272 366802661 926864333 369327884 408362160 571781726 1034943294 792095142 752827346 421237945 731644884 497975456 352942139 287872219 759448937 695208910 907475480 634758086 976142948 68773281 67094481 59915060 360390762 750028208 249304701 245599193 865165026 74288541 396332060 8718846 431381426 969972063 303549203 230271769 404994635 1031413452 527795463 635041202 655484173 626945796 931111047 768363570 765001133 580219675 166569034 897313242 822993981 211153101 243907432 174386028 1047150235 232950485 655902602 898982606 388367001 293100245 952222796 137406540 802839653 403367678 916521132 876804341 829467934 752312905 829211984 264360721 1048471163 809013373 111950356 478953600 443336994 255251740 296420763 244854897 874098156 785167995 1055077280 580162840 1012588071 798341110 958684452 420030533 749793824 918881621 227274725 831071501 31635589 340740961 305843070 369058943 473118813 49017074 590278594 752403459 471956258 527567727 329490874 591588706 675911272 310168080 969763356 845248824 473275950 680639683 902551989 270952880 665876379 183538373 159863774 426942185 303877980 570959928 1051062381 370241632 915050280 430565582 877484816 439633016 669676971 32189320 56383224 441325606 619318461 403255114 730466880 306013053 28757135 317856921 796540169 720422834 569010288 1041381232 14703541 902978095 636967781 270124914 198673583 668902700 663057952 1043649975 429375062 809639647 117961016 975475098 535790432 382860884 899862491 315824341 830509392 244856634 1023981517 16359564 359248257 81119354 427411203 624626830 155543113 266894161 397082328 9643748 440098937 320331016 280177133 300336133 158608104 573818539 549291778 849684041 804705346 66867655 306436323 989822762 1043877526 484681639 1041735464 685435159 781318918 998692918 840293801 263675012 670150121 666676647 114414406 159491424 402247530 428582826 645035169 967485176 650561210 178085372 499913351 851145901 630842775 981302686 992492672 1004568400 7224610 466507128 438512363 519111903 986243273 713820495 787700231 706891391 605806099 921101673 65900768 418977033 720284225 354034838 848506812 79381027 887092865 828919008 57112081 61890815 1034726325 473386409 1029145576 870750461 585428297 367277406 60145482 414259326 849734045 31480919 895652204 58069603 163084795 351181032 254089832 39017263 852651542 692923030 823771659 89874846 822924077 942156799 92504176 372169454 810433057 566407352 521137046 995266441 1015636420 290590880 769175867 415783717 776538945 763448654 563282356 697140243 169017080 60150903 425535207 317882290 53459044 629050475 569853755 781073765 463111211 134096746 754809067 120954608 1023672894 902071263 232277686 549697769 737223376 219156792 138003546 270203744 557808615 1012125960 12844264 565002114 431665221 891352891 546824259 538231650 869041648 1058700993 924959113 91719676 652797501 448085955 148650163 83464569 258502163 1024404439 789114764 324727974 259580988 827490794 1068227088 722481388 1069193645 458537881 858250066 21812977 557984305 961471225 686173558 152237328 86796778 78377358 714990528 401752822 217428417 805744460 263112903 954764098 192609141 409946937 63808214 910183240 567627917 107890230 947986671 73119811 342104658 903613071 1021612992 930051627 331979291 1824406 108401243 244441705 132666259 594264596 75868044 249299611 479829319 810276182 115833944 455604872 314056305 356429484 384624655 806892973 1070889841 147314605 719990925 371135714 462175117 719635958 149116669 745198304 123172163 804078127 711087044 874794039 966800850 71635674 739485668 380986460 360493030 989979090 237868155 362086152 991951042 746144888 147200561 870304478 276404437 206758064 567956852 578430540 917785898 94993823 248672272 430972875 206699833 738645794 467072043 926858001 456349880 103788379 80120930 408233496 517366977 928850810 302752152 551686122 851720912 755916382 249157364 1064060025 1034988534 398846361 10412809 527274313 662483443 596196018 960226692 422651928 383851988 76583667 289173457 995311107 712946 1049357638 15604494 1063216496 285032790 774754048 85684747 66357352 725848193 696915264 1043925883 310058077 429534073 87280633 413013886 801962777 727299680 894726455 766951571 813889792 629700167 1007069137 77234705 522304881 199005100 510747618 89729886 178459166 874335132 292202025 605386500 30379777 335058823 519798014 802605635 628848196 904165582 793552658 476504742 627515818 150432896 42577991 303604068 29340201 270053524 73893326 596610218 810316090 377287260 853394388 957780152 552839123 423869664 780866620 415405306 417417692 762271767 84779882 42480749 267116977 183692605 902239060 784017738 917039748 1058460882 542789476 502556090 395879105 400850700 894665024 583516863 488746608 1041651406 540552574 168054600 391589294 739007843 420055540 173696633 826459638 900468947 329025009 903258187 216502168 1028489801 293234871 212146106 614758099 324379312 973689059 498664565 1020235780 784734132 1032457342 437594554 928893746 419332576 665020940 696405547 354221703 388158335 166413273 154948623 814505177 469919966 414998702 105143370 153210844 66434597 449833774 305214256 679828823 646490860 439959860 1002236523 721478554 1030012288 126771648 682348459 957636281 691978373 333246182 328250641 88392571 201998922 723203362 740292901 464404850 178593661 523125297 790003229 851919339 488743458 644547586 492318468 40539798 803438980 852952046 339081152 1071516150 170150378 290676025 52328429 388722580 156365904 846935320 42734143 924074006 868088935 451922291 539102402 155555391 365948312 366572605 939267848 239974074 944104141 598083877 647775551 1023842997 825494109 647388647 277188973 624977470 750044677 575691249 889061220 152644479 237302974 18131972 764486050 413687973 754478921 215118511 286422438 608711645 39152092 621001503 776173042 260895555 455180815 801450187 626172947 1036034655 1003000379 825202670 780302955 252648394 943312060 1001381227 520334359 442912494 399931971 1067281189 932882137 26001382 632502442 451726786 713621203 762650973 501831722 1047054747 826490565 454150825 19084602 287369622 129856274 777994856 749586686 306563046 845390392 923694361 271289309 933553441 979525431 270704973 665782254 755635724 1026147337 254625823 323098021 962686593 338241594 226942008 316774340 372669552 920324919 344806547 657285122 819247210 1063746393 198280879 335422265 238601560 976544463 697530617 640162432 40128530 545725499 241004356 935056978 626249800 846526982 198172354 333581328 713008025 1032357678 732325177 672976893 36067039 25657593 422382989 428035283 835934179 768896868 391568583 773005452 428542784 318861833 597871868 701328163 590374222 148806212 850899366 8148750 579093563 516679884 85233090 752435329 934103814 367010232 910264837 1021618788 127344686 538210986 170082637 887376573 416352081 457786424 135053965 978987370 42631331 83154133 880597457 646676521 123633065 1073134442 565625097 442212531 891354908 861731200 871430166 607344813 901563924 617933912 239620269 656651285 1070396106 467279432 347718729 460906354 204642175 539472395 375807085 667080725 792270999 994750292 281063051 200980813 590435262 623854481 312051478 508285931 196107671 683515889 842797854 314377574 790514107 54056416 580792137 100305353 656408277 108109340 412835998 508026517 1040396920 1026686639 517183298 717866751 115588499 904771231 995921574 20735988 855171816 810822318 221064739 763774222 423819929 578167225 919417070 323570176 893748157 412228549 139810987 97738287 454918341 517657070 931281417 537052664 931544871 612725563 513504647 429151286 481347371 907523588 37160589 300040493 541765508 247580418 388691341 920253809 822231938 970748790 378019719 685124123 862170459 394035239 929153686 464310020 29370113 1052462818 512640589 398207287 443878182 201289239 411469766 129135091 334217198 405665271 1033154272 33230608 210495564 482298884 529108277 1064125667 10191406 726591529 84500040 466061746 767780760 320235227 1047554587 193431642 636633422 143401922 665768032 327009011 415388290 847652524 288582952 16988802 583034790 851359430 668008391 737276055 861343742 720544172 718082908 175694688 862507075 821948761 991772667 595859435 365467153 711662496 765632128 138302733 566025679 681674233 376906439 953906211 362506264 934208431 726822701 1012179960 468390966 129981668 760314606 749972805 117554488 520321572 187986386 875817994 643666340 142682393 738610525 473686580 794461186 830998721 337039293 984007171 184887090 851779476 141388502 909068710 973527365 983654005 315760393 99611015 294035257 447895482 406950020 1049923987 213267534 1061931181 561327543 588939513 401193054 354560839 282318661 596407517 168110699 142591568 44857850 840625931 155732064 1027832925 112915553 845267678 542543274 224348623 275064218 426936141 830938325 600718363 797397575 804210358 510597979 63681939 446812988 566303869 602692169 305898157 255703777 213768199 559001397 975585073 354797748 778938990 738546912 229257325 140523357 726784064 619089997 331245259 406877795 429992075 141545143 513130884 77544767 355829215 80440268 562102086 1063275677 102199603 455733856 178241833 346054917 13830018 576012607 538095835 724035526 184609236 10081686 956980860 737456731 1021752498 120916055 253597035 745225368 487486700 605303959 284510513 173307416 345607290 419769162 612293520 291460249 833854527 293465804 934152440 797938760 561409200 634501926 221184062 377779653 935267710 24007379 743360701 594243295 499822751 293675243 142253173 959326005 270216916 198521493 12125720 412444388 730165209 1012729940 1024409391 987289988 737195057 180808548 144742760 605562185 788576011 215504498 370333431 275102093 332885794 565354623 1011911051 1019645774 710155186 637726975 506074727 71975527 713177243 781520900 370943476 994057138 356135558 417273507 467342992 759190869 964062990 418034256 2384850 1013658375 1064126759 354030685 153704270 499284071 580805840 1010091935 14429270 460625741 419120220 712069388 873359661 434811397 390312475 736217760 869366635 897713547 363662427 687711516 1061061198 689693142 543051508 1062046896 551768713 310956087 1002889699 327295889 406897966 803748486 849901384 214058952 143841376 936057527 1001035172 873717787 761074436 283844877 304049527 301138343 1056139313 716840755 1025498078 464152742 1973399 751479126 447756876 314240633 309126302 528496820 619103754 119352330 1026297120 585294731 188447542 530805698 426953602 207308405 259588623 380677686 180266164 320456887 1057179600 68805331 729028823 683256830 682910375 107411393 653705369 426022867 270845000 205195052 599727423 269012418 592013829 658189189 281685521 335593927 65048960 339142736 675758211 479500680 82862701 509797452 746876982 155424612 132712236 560088586 571963260 22059655 1010188439 609318711 38737050 991829001 964881989 710394438 661384066 105733493 1025730957 450987259 440315625 704863042 446048914 868385448 541981646 247120243 260175894 729556146 791683082 220387261 243491233 185476783 156363238 557517785 430275075 24436773 215622741 161040311 628064030 56573675 601547560 128725994 964449296 537372828 810496118 176470594 267890628 945283787 732584286 283520507 1046793341 318598325 718204706 579284105 964567820 1015776309 179031436 781968689 246689712 291727248 894760784 398376630 93408672 515839470 654403857 295406750 939663885 1014796156 413464894 859382947 587099139 786859058 714189355 594593892 679785031 196288718 604546774 716883887 470903619 972148177 912228885 637245460 110928982 741210517 678921669 373901660 84952276 920085473 885271780 229293859 504116435 481152580 609718308 227283413 944248788 651035298 296674344 497199836 472616983 452851447 449403183 708457597 292087749 816568347 472495150 1034023432 387883161 139819038 512800476 962577304 716684277 1048385450 12693173 137222797 44413055 157815817 171656746 524469453 522838620 350031922 495470772 238640173 328662742 5983848 261590274 250332443 650211045 850855544 1028791895 151189569 755094145 215001830 373137998 819353259 110431176 908662788 656429000 403220000 463760373 575997975 701375588 182246283 94836642 381170425 716319945 325454827 913267502 331584922 897066148 482172375 783556100 210092482 1007795831 844757194 88320018 428990460 974974556 395836748 153351049 779156829 820433814 858834870 80250868 864069749 176415273 130759514 160365394 1059400496 1047419229 611859510 790948197 740835253 596236938 926277221 895424253 150364945 127068055 1038848833 840553304 359445656 968943541 988470150 593626370 146614189 273409213 296956022 663349781 1050019778 255351533 239370678 864156784 566274690 190968118 49076991 243798376 909290123 877571642 814891508 1060295754 560568674 614767636 320603080 978784442 1490068 652846784 247109075 99240286 280502040 421633299 435705866 101400516 1066486472 193459595 650386918 660059380 199684339 1043825396 406564726 613770636 494571924 173255661 753632043 1021750227 452047049 393258513 224278183 861986644 282222335 108334021 102403391 1046662145 825746055 499031400 559836714 429575488 1071550220 692559416 687816811 892814489 894625658 413765908 849823358 249696953 907138185 478922177 189784312 705071234 627888585 662688808 199469162 758031404 872158587 609138300 303951123 816069436 861339050 162182858 920744523 409637307 742208521 622259213 642382966 514252605 173005773 635111478 787094025 188623530 86228871 171176997 202612139 740291702 1032020678 658647598 246167067 975185597 248026649 354522112 717059335 361392583 70463842 83760093 217511162 551367982 516860194 650471393 741748267 1042542219 617266423 963739721 500672051 382427773 722089920 13327761 690253408 212541196 703836569 883636511 265514919 352490882 1041925958 890614843 267106985 923664039 697779553 218171279 584229576 845114894 732769979 898414182 302130686 356758735 754874827 609780812 163133202 784079050 56365631 701641247 148032557 654502364 591491331 925294877 188378338 894752959 7734839 190350849 1023294769 695748071 901719042 582480396 442827603 655470646 856301176 1021611726 974283039 644988015 867826498 341837394 224770685 576313374 788007247 666254762 61327168 614879168 470689113 69720966 708577020 1014854829 546119696 671632826 102706506 714603165 448109173 724429311 249923167 623336090 574795708 1036415873 572335929 786926194 282598933 628456806 287544161 666226504 1018075005 734267201 99576086 479936637 535275178 270638879 799617636 240875268 456257793 739105686 674640711 255965846 1016347662 147927568 947166753 508122240 881577886 596072731 558369457 54806235 922416893 846655929 71534747 1018712144 835599822 44849679 787774767 49722974 92272705 920879565 416547618 79818149 187235310 855623544 805443359 977189449 1023179753 80778208 687271210 1008288130 893211775 691767387 100878169 568296063 781737939 344274715 597629241 140367207 1039134104 62260027 271119857 629419992 1065455130 200555490 702951650 178088884 337131381 995253349 558623877 806390179 846302880 150245191 255058245 721100227 749479745 301307640 129084741 28186051 39854198 725565543 151832886 224258236 445431476 30576289 1008090523 1002191819 491193629 481903576 893434069 891722817 152434846 212842715 833661315 1065761906 1017071741 317040221 471125099 854178063 114704854 975669975 605332065 491268617 436871499 546583068 936140642 886720308 875570985 120196094 892302366 210921145 396866240 634990204 429491147 876818467 945318811 886095633 468230816 195240864 60054947 976052356 386366539 399012789 288106465 49996457 943806957 73072202 363161675 783632904 123624469 88767216 983298656 708811759 685609571 535767556 84587742 317358152 121569159 365365482 659792563 23551967 116801731 910589749 849788105 933194655 722624993 447142756 1071149298 316335430 412753737 882820762 380337717 177670015 304015540 843714971 243239992 33753514 873083218 660875128 711172001 1026736730 1034115815 411508039 774049435 923091758 107943696 641865016 988382857 368389123 71635218 137328446 1068333941 328119162 832633857 613311736 748435030 12735310 939310952 40068179 194600335 1069046120 621591719 199977770 81196649 645673568 145868565 745734640 78519650 402205586 1021014154 115170138 860805893 201976087 428484450 731788745 676769793 518088237 1020047746 347706943 27314927 845576783 214924715 1060172299 38811248 54981910 273333365 313204062 130284680 798569048 106875278 177479594 40431650 585317654 460072274 471866408 911169740 768926710 426490666 982115072 254425050 142539936 295184199 158604834 657764983 533234863 434315511 630402147 75706989 246590659 727649438 70089402 671611669 340881172 473554875 165890351 897088317 880979833 735983424 661376197 844836964 108325738 880090365 1023778534 211467782 998018696 663150479 466072699 750887546 144981232 381247568 1019548309 707178464 672407617 799606194 137290781 666489617 903560751 527532737 629205597 304124990 201834607 1015701564 426524821 153341492 1037044998 697290907 985183477 128036238 889505303 289164084 1025433501 145300950 654599066 699377159 950179332 145399111 1693145 706324251 321461121 453316634 824979193 619044798 192162281 812054119 405041362 816704057 465805672 994009605 135482556 42617865 462921326 1016888107 6521442 681624834 69200456 357527932 642164234 238151376 867022835 256177930 320854340 42439662 606741574 983437481 1071520439 644526135 696140941 339774585 229100518 499151787 546788702 305501685 338238342 581320360 555507815 15365836 174373693 1015741204 672209312 186850754 497703718 759939091 325975444 96113954 965039403 498664800 659930159 657333860 687959629 808224108 67563614 393248485 466494188 138803009 222858581 804316608 188570756 597178429 777279887 50554963 368161477 104399331 36574673 95889503 687783993 733322212 647841216 827631744 719298735 667914439 216859191 263693883 377913545 497088172 902305327 413002508 693772209 536195045 209313266 611786901 28742781 17847649 718599564 624495940 576942763 411429659 725849357 519669019 1033248241 549684008 412330290 568062930 1018843712 244227475 726804218 493729337 52234858 543985209 250542627 980372957 813981061 476699791 456766801 828250959 128569561 104341254 1072083163 685927548 33028876 69791111 716124456 510070479 380599425 881743232 849196187 107398054 656159444 542118907 1006053961 233305137 868960715 869867759 378171402 929324327 521281308 186658917 195766534 324863011 868947029 128080278 776571389 229973899 390422036 846354277 619568057 191098582 275050556 796079883 1026621277 778169168 83486224 147750281 57312223 6953012 549105347 480399544 1032333113 255174212 516239999 123557008 573925419 666871293 1053538586 149602749 1027138844 605126652 419964013 536289850 219925136 535199046 65130119 291903565 311168211 437870707 374330119 377153497 880279513 254060413 801218716 428827347 32420704 159622303 403353697 860079224 736124422 1016589839 286037527 665822115 61886953 92737456 514086767 123582184 67979131 676580026 894026967 498028801 843735009 127176068 556278642 236487584 247492636 355628471 998840395 504497195 55658212 917928649 797700722 932890626 652551291 920111470 521843636 977343479 968654086 911843896 754265097 787120917 1012437495 987911434 373316944 650333736 792207063 1044281923 503995666 960230480 636398423 1030142923 103986509 550320703 895815874 386892246 991734423 368390861 1070331354 324050986 301419918 769650847 1049888611 315638528 495706607 303655722 410913350 916144098 252338313 126292955 1021655367 984250627 771260898 522327602 442243826 299157750 320630774 59676701 831750363 569499250 314710038 213151471 941415683 962426102 808975611 426092709 545060336 821653962 311077807 498851220 594642808 759014930 947467852 833413408 265262780 362160877 494125112 171393349 639317457 166840389 693690536 790738020 849012299 467435551 789839169 546994953 456135063 685192540 1037851320 376529082 647264368 744405312 961765858 353155519 656114719 1038537806 714290791 1063315816 221901811 400902225 320357497 463264734 931042476 868391233 594354093 893993065 447712907 1045759532 508420913 438032145 839814900 980388038 300327457 584744598 817442800 180032308 365104729 662007917 548882764 413382160 100281592 669650932 397691459 186634402 506990245 609188934 681043590 4790635 256465614 321918598 820769496 660407416 814801017 868663081 779141804 904171605 68154036 442177283 115488647 43261827 374116222 499483954 681954507 304271033 154010748 358001116 762890574 857367492 307704745 533249158 306712745 336058471 373902852 796325077 439607219 619044303 913139020 564414057 323753648 892160706 615136356 151498254 144780790 339503742 320092179 644486133 671389630 353965217 572079103 962201528 7297476 866195079 891768627 829884093 912091386 716460467 849987732 258710083 777310013 26564970 798215396 446482007 975096040 452169154 870134867 346906357 495087888 996611833 515470445 311392431 541457723 274679371 643750485 838259796 863764993 223744431 44925191 802592740 162953832 796965509 174691812 1041397080 644281286 352190435 592784252 165262391 1060916833 533728554 347623810 1014553496 525598394 333338259 823793130 372502963 14078352 522935286 113025946 265409984 529977310 532939118 90015154 948272986 904910151 346487634 957716229 894284786 854129695 506209030 380761293 630107329 322319296 490632394 587744930 437507204 740720599 46407226 1068404816 303712850 735411926 940364023 536050402 873003559 242015787 855648952 936873725 247504393 517885805 906455180 24482640 586013918 405244884 950343473 407876958 953168886 16956739 449778801 1023935451 274515187 158348253 246652704 395644457 849039856 744995834 20021778 921707094 322198468 356026512 373146694 973413507 532705928 161567752 631112461 562762554 38393378 1060783132 254018946 1051370719 812431585 529578652 52557315 851289008 855773108 326610665 184230054 713300899 986802853 303077737 199625391 199926955 405496063 1068077592 107076764 726370390 758762092 609429806 723783375 192530530 917749703 368422083 816508905 128527996 723309240 342977172 758966535 485470225 450689572 720470853 875722312 840178108 959333896 182651789 174953857 374518176 93543163 470892238 610674481 293104464 317893209 892522165 574557314 7055363 553881866 954668007 516835175 411410852 572983570 799655467 300404601 320466172 504208504 892000470 49512244 713986206 511906415 344542787 95769424 844775722 605328917 11402130 791480304 947467228 1032227927 599651803 184075064 827578648 45394632 985866126 897918145 305383214 198521725 581620054 656590299 112302363 726498007 196886270 475223744 1018596991 697432398 714823288 657081324 1049129060 194243655 696982828 132261038 933817470 676944001 680787374 976284380 199011016 814707284 833665041 938045288 154957170 270549896 656972551 584254361 453736254 371137055 708785315 105116201 677108124 575701236 601556941 492637212 61467551 604684466 609677576 969064441 539686177 889499237 703817157 505679487 54281976 705761922 842266154 37141640 919972482 837414986 423584571 1051651546 950299003 919673880 197726044 524362743 344157326 920623690 65954355 136903028 905223440 924927045 575701806 688699109 712984701 93025387 80093982 793262045 718469990 618808012 67367765 34690227 784100121 418139600 632220351 643636530 228200777 333908691 231901296 938319740 1048872080 740850282 404810794 156879490 327120792 819069628 284072467 788916978 591050900 656824336 537792378 1065913111 540073472 453819054 541539 185972911 90941559 568040849 499494331 1048401780 279571478 186014924 980664785 374916043 947953782 521982373 171909671 463311705 746144514 1061841731 995339326 907417622 687880149 1000047324 54357793 384988629 205238078 500907358 589643163 70264439 437608687 851386818 440601398 708873678 627620561 205944827 843068036 692140509 301748851 698388343 451287572 680494184 349373702 422111692 271665144 12306016 74464925 100332546 849259998 853341757 1002945286 25796462 257915493 692875478 927547665 29033443 287585678 81620560 348534388 851314848 76938054 1028983169 380368142 16471905 225025448 323466949 182831605 694203697 705105458 492373511 1059797110 71313570 849338724 852275287 656275798 631719514 994002734 758973391 764300008 103473214 497531355 966838996 682273018 894276741 1018987324 731427107 812823480 1013298745 242081914 725068081 190419253 750990867 877096697 593131273 592628253 44853543 849395533 276911935 480674907 369724185 1041080330 556558559 788820164 490855767 565073549 25346983 1025102213 149100112 244559291 848654358 252531437 444092113 374286734 796258207 732718961 596907546 90792997 791201627 289030450 616021673 369747708 973114675 322161023 526021715 357197824 174235706 779533305 201193392 1029479990 204607119 110803391 955705726 591093275 180444716 398545977 57970160 749611758 613878951 458623236 27988140 659151559 446501877 285817049 97339634 806924215 992604924 830494866 763696626 80663457 315887606 782232501 396711574 782240133 964542143 44697580 171250702 144520793 233606257 1011369908 78361038 948674191 177385604 488000463 325486140 729651866 138340555 1052396855 422268932 921872719 26123647 163921017 622236035 653856458 379481475 610458542 886584614 128928503 703389224 324932997 414845029 725656924 817591130 257427231 8927962 403942420 540145659 132435164 462460521 399178227 485817331 1049733721 234404902 983059644 140454541 692936457 281952755 538420379 964598712 72430411 716834773 861991169 892466389 313831015 634175640 915760461 286793340 91114888 348219461 251197040 87662810 421224529 556969796 787006379 955138094 798457792 628204844 237031270 186021510 669292493 673568196 1067367739 268223426 1017912939 864557212 871063028 39667796 535640518 790686848 437967323 829103906 505573985 503374335 692566073 183517252 1054957600 131551810 1029266251 321269403 292076028 138713614 693559833 268411139 389318848 476599247 177274685 947303424 667829171 648692706 588225842 238607200 463258243 307475375 48091908 100741446 259670715 236293463 777233713 253879707 513995618 774005387 183691588 483998557 627002969 433519418 598926703 314592689 1032052361 944288921 62431907 743885927 1021319801 112041906 994477403 593446625 802506042 190694932 1054767446 128812759 488188998 513088489 915855355 398160510 392037472 779776005 651575156 1041716223 977939041 225645732 137099060 334962592 551830217 946317705 856721710 828585301 704507375 328098153 173612953 1010103693 813407884 613999146 897791865 467712413 771623382 45789599 840489514 950947923 618291349 98966316 553710750 198775729 118786715 878887544 861957585 1026614820 63496085 493388778 974414062 18827160 172554317 592511908 884261398 1033307253 863198632 477339108 677718727 659483093 831363977 134228890 39859254 488550937 1055339752 291684246 1041595363 764687466 1056365391 457841122 495483152 904688782 523219456 805274685 411820105 134319761 9613803 460738481 883599375 523258679 973945920 624238478 970878508 333498896 407199393 565537936 208105480 553580471 764273147 838755985 245979230 754217339 74714716 550680343 513601972 138327753 251984162 604749265 106750914 699229722 964206466 577596393 1042237530 8869034 64650120 92997067 626424163 941870649 1010586104 996923791 986435261 872813778 946109202 87846479 510252405 422854543 308145422 569160725 1009415328 597103868 326049361 161664472 929048788 579726031 1042581004 974080083 73827536 24077204 433442346 922242810 623783029 650326126 943465398 487251142 408209183 729723233 464432531 381393293 898307374 143624291 780069689 519814782 38330011 413324913 909106465 818978566 824139732 780114696 757582117 253503232 304480453 818484959 267659495 583296964 507505152 160639969 83949290 249339962 219374809 620918722 796805428 619224587 854030396 745529973 221331273 974102900 618864550 888228649 1037752673 69834792 481111091 680881860 136404627 419811473 425285906 1051903687 82891838 875785264 563037236 573538393 390632678 263898225 263481501 325545246 945223599 880805361 884473722 398277347 718717297 658564541 924808440 1012175906 53443758 458884439 197616702 308420248 170319889 553705859 561905274 595482868 1065880391 298630197 747159250 102925348 383692570 757195591 97954403 407356169 999020530 342182433 885966621 789481429 977316984 316819766 1029816831 721365428 691703769 707756723 813285054 221900127 409248039 919786408 934269604 612098791 626050562 8751708 203758536 864131541 252693769 864055143 771787119 293094949 884079002 828767332 134818914 284360276 393656926 832319560 223654013 491044381 1066479695 156351623 226278631 881912643 63455398 339834931 737396340 750987420 714936034 76126706 1068749847 340315580 880840277 123402700 454405316 780023955 292727422 604822226 554291149 400495028 493101294 1049443138 81406658 59182748 380816797 1022645790 876529559 1009321832 281447600 435847502 664520586 508883122 890862340 639908600 652847178 846565187 317130446 703277068 92793517 631547911 99106091 58925582 616498612 453780093 731446293 214063659 368610112 85233104 142887360 178834968 168130500 766299348 369617149 820046440 835029210 430210389 819010280 260071860 368921398 634858009 726148162 386752295 409984367 591555751 484126354 640196593 962372970 660470419 725796001 839311380 529016195 90260161 412949131 571148272 593420333 612824434 703371933 972159538 205902895 314221686 272680327 233926824 596602694 314984853 558604335 786907800 439973122 555382670 985565787 20740381 415625403 254757332 848490729 580952809 424319780 331169505 877093534 407904003 766773383 216877899 667326788 425903407 32638958 270477273 543179777 839077610 226631530 139694438 648081048 855058914 627568397 292886649 94683901 559461833 819845905 858817166 366921213 720761439 948952469 929183013 899163878 1001245555 1067517457 290047374 894369697 522628530 394953973 502983092 386378791 250680337 494756680 843060737 1012111941 199702140 352997418 1062102657 582048355 670912246 119644414 550143424 285227 610451568 558481121 862658888 926396740 230430521 61556455 723806503 401760059 654051227 475647909 93082545 905480908 949652098 894966229 994086275 1035693761 47277738 680890099 818207923 672128866 987391288 472859397 84151235 435094265 871648886 687832456 1973944 125599636 748277903 822776215 426772935 1065334986 257508672 781341259 503188553 352017734 898671736 754943586 135235332 264471004 171494010 754599172 180380668 544315753 56897749 221606620 750642710 934192484 988485115 343003122 103423775 874345363 59070279 413093743 868043288 1071827048 349987074 197531339 172658784 977299383 382452076 887005854 408264738 415805416 618295108 748838549 547796662 329712660 294318297 1036717060 681277012 762923943 841312664 210825454 289663553 702701794 747333915 41252748 173670320 942987843 861377734 649442868 34504705 865097101 30760528 1061009912 134780430 724224878 162763224 260444087 703039362 933582247 650518742 340064727 918341942 164510979 985709524 14006368 220670597 656143388 704283350 826809165 711517578 693729392 1009657142 673295768 11716773 276655709 291613892 841132987 831799024 534991629 902921004 729057358 798797228 446424471 42920501 143156124 656562917 377541201 859096535 829786602 256557710 1005285269 5377697 46953532 715667360 571104435 649252673 74651792 576218358 381545207 1043793036 526760859 802854966 8914386 666761100 755176959 569979957 178225543 1016732415 493053284 969867171 524703122 619727212 271019723 655478562 804586570 1068056406 454582147 1019462351 491553072 705596192 854473940 406707431 510182152 147192966 296447353 210156251 607942755 468565801 927475272 311840451 732627152 547152249 121357377 352143670 576959200 652358738 743842062 469438990 287408843 280777662 291268620 1031288967 302962798 334112702 184420222 448905434 1068274447 392547225 264090348 823389344 282067851 1033015323 143431593 572724020 471012855 933636659 497929967 232341855 939292911 450400921 613611559 606809088 425072540 250926821 883179091 116710025 753948366 1019048878 582715295 605709488 890969136 484797537 980212920 572476291 78222735 1033091275 1073314126 975357318 713083984 719810288 485974254 593953694 530848555 148567125 1057772316 1053649526 73906132 24667530 847970206 445835611 828180744 326878754 638455396 82124833 196990570 434790402 323444066 948423514 927353550 119755207 642270501 721339775 478576774 250729857 994272565 1017468286 28925055 475844711 797118769 95889188 424671096 354550776 752299070 200904063 229403065 756776447 718528351 778536574 90113199 343237832 198487478 1056466037 134237375 492150221 296956959 138282435 157990721 186019144 258980080 932058002 588530007 75402415 677631441 206488869 69703205 314437410 363772865 1033245882 174654035 193640068 795404001 494396059 248442484 889809298 12294217 487147408 1003073774 467622587 103872103 240892087 885998654 917074175 656886472 173687932 741854497 324478170 869808407 303373196 846582213 890978556 796443086 465085452 378215923 420108699 476153728 892863855 1049873563 331051115 865047537 922733490 423720612 740530204 822888888 879519215 609048567 454944559 419079961 472962430 59449405 650830302 711587612 649117167 245185168 1059400426 1023738034 772100216 1044505635 605231938 276478106 119636683 1060052204 41211573 604512472 96774529 475439073 551643871 166269070 278065180 820215040 938384049 1029008351 841370729 389952178 247602122 868319316 1039270874 971568683 152230399 154909455 202684394 56572602 160700245 871872501 608798990 875103284 613267887 989894326 167418170 234210896 772332618 63739922 366466243 743802650 1032837530 725196605 97298901 624316235 230946181 23113382 242024734 698475153 372771511 1016617307 161315239 356176557 407079402 521495008 289017872 845151301 440435903 971981650 854416272 149826327 314980161 768154722 56537162 701165794 694114428 964523205 110313767 49530809 384813564 21002916 816081474 883652977 1006717203 379243259 1059357351 637294160 948447177 673443157 514904859 895756043 734486591 964544317 1008895260 1007171447 30283910 106069086 50909800 40150053 702745081 771151858 443370765 405159856 731889563 64584506 764060342 766007444 373722023 18615465 738718207 708159309 973404583 435059367 73799320 230151614 1037307165 495907360 1055698586 564757759 362769143 72236932 883630629 290379160 1010716983 744192518 251782772 793229485 198303338 428395917 5801619 172853726 233103516 886260522 861849657 1068282433 667789600 959683100 718972948 533839028 318641832 704065150 323672411 348379043 737924139 71502403 410971080 49551039 1003939621 471898201 728306955 1031516579 624657324 638804600 71059851 419391870 905045449 108724340 100883096 726583682 804738287 128612401 522365266 244331496 947271086 816404683 177173439 47973366 424363532 969897631 13082008 937346080 249701377 131833463 1037604143 459813496 926647371 1063594900 507374039 1067475771 326757697 350510580 230585916 755197806 851551917 611978649 79457933 904766913 73865247 537110897 26741648 812291498 816667267 460621732 552787956 156237519 834155680 261764177 953860136 490362076 462888552 281484445 798974177 854406182 117237882 821485151 252464846 664620664 1054030003 542635068 1048044176 436593526 517797534 341724369 184188671 532366927 682054573 448273033 658548363 874272905 873052389 795809429 709532646 814486091 377202625 250688489 861766067 304875700 116413127 463749088 590329729 160500884 875703342 296838304 813052044 880194601 798327559 1020836307 182821110 10218517 671839595 1071042053 232425589 759008340 750069095 596844071 670212483 197978097 137961414 978531514 918622258 498761232 511804011 1068355994 55170539 487492700 698092146 452261219 323808071 45560893 674234712 571089798 185566398 950743377 177962051 167044660 723292850 558906877 1005569158 767040623 971693936 246496848 300497637 483032883 361479416 206596197 210634759 273324238 211386915 565223212 308407264 587769483 985126277 429837191 543664866 990489772 488050724 542034645 360987942 107937097 179094736 380987050 839122951 162610289 309683032 1069257970 694345448 282794035 75021778 332476042 247580204 1042855323 661580656 989386696 818508611 677728957 954397116 178879241 374504825 862279400 792925233 60580020 170002451 408529905 754134548 242633650 330419064 598576789 669942972 411035447 975950033 94181818 627811611 316732948 691266226 86803572 43538489 148277174 855013419 134742447 265486534 644741013 951531504 169752202 316714225 524697770 902833059 536976063 955114617 524532595 945499791 351444940 267627020 522001352 1059357729 183397269 404449270 735885217 830351682 1007935878 761185366 326140397 98240465 1062639528 918811026 462912679 310400657 459275987 134333275 249848900 746920304 1043720389 292367403 499204551 38837566 324133832 938320316 806046693 906470055 881595024 812718503 349373552 704201467 626683848 1047787110 202139883 705665503 351588277 138097778 896496374 780989947 444029010 762390256 573422197 496277091 484061555 318107008 349595178 117597344 661456248 853721800 203240222 552356477 1017362478 142755710 151534912 981010874 1013553250 763645635 385458814 975074792 597569469 741886328 835644308 423608587 271408695 1058931414 237788060 1005864251 100000931 930423702 557980396 20278185 107331429 385471454 825384648 412231183 56717706 82740532 148891529 356729046 606741850 664088600 885723872 932550888 515368839 888112842 861849396 804424841 170477796 157431949 163265477 484289854 905625910 399608545 1716760 502346200 758973620 448746688 60988252 786025931 116263540 23879519 156735995 521233124 608746220 387268099 507052623 539389939 257114610 677087376 534962279 273418021 474239925 502406539 359367682 48071875 953775369 64467655 32470469 429349015 54481078 390417844 66696196 10905343 823450697 412833276 992678799 684310032 511720748 774182851 475539933 495101830 72537647 656050829 42717715 749681806 642098108 582308421 1046168244 975615591 537487640 764775271 78473889 1028543770 819458743 983857413 255260958 781848205 102362305 243059383 538024265 329610687 1072585250 215611131 995445786 349391013 105338092 458777704 821906832 171895391 627530161 649307730 527995957 533409449 739477759 24496692 305030702 506416160 1037285144 284753766 658724670 119238171 2718380 173305733 970867340 397180580 312006421 582263857 287376316 912641294 816795669 188681320 797766863 862342351 534079225 257646536 343922724 121668777 125563040 810953243 745706505 408303896 228941180 68983687 1058659402 1048957437 652150934 496264992 898705413 224175468 371883375 939418989 253118301 311731466 911480414 1020415278 918258571 481359736 914363660 173415622 522650736 216012878 696624414 304614330 746630842 622697274 853770931 661722506 694668300 788304840 840046827 209060801 941600680 738407736 716302190 562765208 156393409 864213959 415810851 662473004 343055884 1057823822 955091054 905094519 241331689 367776451 733063273 496658424 950665577 874676194 608970313 284732391 1059121731 243217229 965288226 577753746 475258497 150064451 926154547 511995472 527487317 238430526 190363680 321165775 911934712 878279316 620079343 495867417 239599106 460769734 559616302 615154948 599231769 675435530 994014356 307043096 329785829 12247315 432970617 482785297 664088638 28781122 387526074 307740642 972318659 448646208 192053500 789373047 123424192 1067779636 937322735 818701081 726354284 732424508 992045600 828727433 795253346 3654630 851398290 70507686 978867126 37004658 991952069 1038190260 507864020 958025059 122593606 436481444 902464471 1021568694 464397336 21884742 768000606 101486462 881669126 91113725 435563464 458571519 130920816 788310753 30557420 732082165 533152002 662965996 778857377 722565770 609631379 695278527 64617520 606911729 580484038 1060139956 537052510 961258351 340487441 51176858 105112009 220376302 803637375 568444738 985949959 260090942 734516428 531926907 736798078 181676872 760011958 660320520 313515237 559125647 368093947 1012477026 412828606 962103559 201694451 149893446 425328985 765864306 345593980 248360530 413919915 614121612 547699238 969737360 980959076 559269923 741539960 222682338 46282321 422767130 836069167 104985027 583693590 1060373946 408045803 998420399 693313665 641194073 55519284 243104144 543943092 559425352 1010082552 227176584 790093275 792258394 537528624 959654697 441396975 386757871 753212801 846718590 503709378 209620535 403353893 324788887 546317642 1050046859 407758887 756339507 558230289 642815768 270946685 415803975 320650719 597320838 110836046 895455698 530056797 327177383 800164702 427411855 920172627 176684651 622658670 635450409 50828344 89713104 182385626 864990577 910142694 204397712 884420211 998034706 855039028 676453221 792046070 282249156 506020300 979273402 29445009 629041713 905912168 658166430 865550372 419431960 514156282 484255243 965586952 1056489479 207632173 94669146 173403733 193100201 460742282 599510990 265105650 334601703 408705337 61093187 624502210 1013115448 486622198 600379702 669856178 948385280 642861130 580576969 542067235 70480195 76969296 572569422 498557809 560697622 763690168 933248059 1070065932 420644661 760637448 540390012 695549464 427297286 400266386 275195128 555552256 690532366 476934063 45376740 3414069 811875327 726251395 952719576 92911298 980116101 816701952 1049894596 145256285 1068113933 302044166 362912887 175800247 172140087 978435584 820568012 202008315 1038079144 129360740 456072144 817882599 397993109 960886730 1021755670 973712639 832147170 443864436 320166238 739258134 925180352 1007842699 868196002 376097394 53037187 372226469 476308957 514280693 199632569 349239236 729655965 230575765 395708180 121839048 1054656729 772416199 37126782 88811370 372829413 330528316 893518314 532708958 916949227 33457092 1043255703 916269942 497559109 172731510 70552165 978460541 35879258 977398490 433765880 960631929 795946206 161137953 625605146 848583016 565414807 473172639 786613727 374870195 371282166 1046344288 869009395 332063766 387755219 226030465 643740812 21309131 904702765 146182765 884510916 135370055 592554775 87847889 846958715 270400446 414975115 521671185 437089183 512369902 813069868 202310247 63337717 533743509 934696796 222221365 877570989 1040489575 463609402 1071413091 815378893 317993933 575601960 203845739 937130522 653733061 795734925 894254962 158357777 320185095 79169809 787069261 180564293 997709351 643797915 180643383 216316161 376797041 411647352 40434553 93880387 624793932 568993757 160958971 919685912 1032972495 451239087 913379941 361597882 856865906 588118281 994023300 217043699 292300016 730323181 240999920 1040132119 360866385 908845983 484144008 816382650 142427406 652380491 392750642 89085994 631589307 743158896 533649889 516678733 235971169 754885942 248562416 512434331 927613644 1052709709 903980103 472137351 1011711426 329666206 800090309 637403747 355837017 209484151 339713982 128083627 394047322 433908836 359186315 2657378 965069280 901785182 729645757 618842189 538151949 61095476 998748283 674750258 45035825 811716149 705696747 556228813 718180176 669547456 948123527 640289833 519490483 1027278154 307287218 614634217 251845965 679279865 9074533 1014095551 697773177 386054020 137231236 495641457 36604400 849078856 466527599 508577935 207108178 745670678 763938907 43357991 903390792 609543412 630239686 932900354 817122347 639157572 594654065 441496237 892916314 563112724 723829457 111490341 807126261 249292943 1012053206 464192391 52335813 602611200 215677975 253095183 699353792 732385967 933511439 473231196 443938624 345432942 668899821 692380903 95859663 755407228 20180021 70763090 809232805 983987415 842550483 670560650 39434440 390291006 87366280 897071458 871958145 887527621 650123107 734489957 369873359 192810061 262669899 1003363776 785539649 350289821 795048993 32885111 592633163 836564994 483376859 995398921 492287279 669294564 733638349 152980488 365308296 1008768210 985737512 395628369 175040429 388060738 982002746 671771799 135146851 762613713 20576694 1051545370 493562947 116792402 943058908 902820928 668667834 844116998 596763339 885335199 294730997 265570898 912598482 604818288 145061817 590097592 624834593 538316315 390580557 18564635 740035921 131083044 667200507 626691040 1062188069 503140018 237772584 251175376 493824406 943504195 849545077 393483347 993866387 687533914 208423520 603028174 58185525 114288863 822961823 710170692 243583792 763933611 378125662 517991452 662157311 472990237 1073691387 597026283 712882895 140335332 998738911 1007240133 19760920 964082770 125899404 754395316 228446391 275398552 669799558 866413221 774117063 639785724 820763724 626786326 476943857 82999611 879001243 963211265 796253312 253363842 402514499 790130493 636503321 69535406 840520511 93994857 170250293 529345176 566770283 392394499 1002354799 588092425 707846385 355516128 882146240 681192655 778353807 638736549 281212945 582802752 108233328 100564286 868250778 334948963 995201129 324802344 249874907 984707076 382512010 71267080 392558968 599405212 713012618 607397528 712199210 482465526 668448708 340851857 350494894 663794365 405999309 659589605 142153591 792740284 982559794 610042756 1050826676 826243355 880720155 284412466 982515205 970851377 383014816 741706975 586673820 837342347 255135231 787061551 192395082 868378892 116003518 1034429196 24369689 618655233 487083705 348516431 849557414 1038842333 729898091 1068977527 506274863 623249438 377401126 608900376 497315389 775651639 351963300 228543247 237686091 382579511 505563747 135735943 975063415 1061614088 635879702 930673317 776313259 586287257 1013369876 702778982 955928655 333343278 954527297 470868399 455741595 794044206 910204935 256987328 1018634806 604772866 194320641 287426219 277556171 180783283 792722903 474410266 97661804 704919930 970742964 636848290 319564586 175101089 176127210 570210533 482004059 970647406 144702317 938178978 758548365 390515718 335517197 221561195 977388371 739014674 628165863 650445191 325786901 675211011 52896954 355192699 961366491 836392182 867865522 906361953 291517319 406336725 349577539 145079587 198860547 989063912 531839846 688231415 517613651 100438197 177987365 1002841346 480868216 1016537529 194573411 654358779 210251870 776388409 182205367 198282999 133964180 28504043 682316283 325406140 641454015 485844838 935689963 42946151 147217265 999617334 652489074 857737999 312282800 145815949 286383034 575079287 672293950 620150285 999032729 799881160 445513272 290878849 667961137 1024143701 597777535 501328855 292492866 651379898 37284534 1003519608 333979788 983573740 761427430 216299144 1034396993 239549073 360724583 1011018378 148095472 275954789 754662480 69311265 51047988 137776612 945306246 548676611 1040197709 726300184 331857896 667643466 922563523 123746268 800074575 109431298 689717187 981121238 427329497 796780131 639288938 492771411 1057390219 36846783 385162882 189383976 169412891 43014694 944397196 418222686 623887338 205476505 1033517223 79576157 321390852 1041182542 815425419 616547768 27809800 352513008 250725435 856415500 657248222 723722586 458943411 202027223 329827534 833897528 865646371 821127659 765474583 445563118 132592472 496982004 341159749 325179089 74081694 404758102 911633641 476693390 493717862 315359381 446126351 719395710 32516958 1065165572 916007361 917886402 706601921 1011091963 58920608 298640028 510480373 891290849 1041519974 22146683 711885762 882563869 21737312 202797089 28134104 58657408 458274706 797511340 570839993 1058012505 418352782 782029658 420065477 9680341 845666373 262458828 839528869 861985444 327331727 723480736 593342334 315533858 873330966 225993373 413924045 992366955 71348314 501441239 151352660 941540183 874259117 29486374 599016946 807704161 844547694 194890171 84388244 559883757 279354251 597998341 695154879 7751547 84937465 862315731 828693264 387993646 547944301 114938545 1053998809 921266998 762072520 1066493872 1003821305 696624272 636858511 482364153 269124769 559019333 712317425 948164449 592451734 324840627 833644144 89672996 667136028 1044411354 870639750 687802952 410660616 413480103 608109010 171263726 741299538 97810659 935626621 133526595 66821705 115902371 1050179586 845750488 1017868451 671062757 403506624 251959930 687233969 554683345 608700833 13187356 350355730 632692437 82578766 837121446 450361044 777027398 518824530 122544459 623916548 547684101 19552688 137999410 710514474 882160482 253973602 600592482 175127845 92966077 775160844 221324602 369601779 491714615 690502231 868304666 396445700 947752933 106481399 538238824 679258705 842950316 319462015 471124636 9307544 183673477 82098288 107334415 1008319397 135775763 505556789 103609363 852165865 303484718 932557575 942704423 417195143 77842047 733436799 115049396 364387170 439809780 1057208915 781667527 341467071 630683016 779123862 1066170800 986859206 1001583443 446263987 1049863990 709686443 308244909 92467074 618549337 307910052 733599316 516581239 735596649 735117294 865983342 529922102 1041030334 466480989 381237863 520764838 474976720 925347228 543406964 785047542 914595966 1050952090 299076437 961765702 350153251 704923619 817198191 390868819 604076927 205293790 215452080 749471117 876376865 68684756 873260785 1071027947 678933896 431356673 437475895 472875577 935590032 698543273 451479855 113793632 401527037 326066728 427433448 63935618 323388579 723861628 1048161929 330572906 594155305 910786404 8314547 524262481 445046092 366373014 165669570 293543293 112495238 934119568 654265183 373498057 507508850 525761844 874381363 889104986 345768392 383977459 209751668 733663009 691222395 1041205850 604903909 198504550 344369125 1051370411 187054630 937327294 718093267 868739366 980259082 764979588 809632946 116646908 442042384 376137137 494551841 80432811 745845963 749271983 16510021 416411618 491350225 790708150 628616507 145338186 626849542 961855423 183770529 146666435 1018657028 486619834 504349977 172911558 491776667 796886572 922867160 138580654 72286434 381670915 886503756 545984803 286952477 635439069 365443423 164404187 589696949 83385415 178591186 134913916 806472029 420202980 789212900 857988432 875792410 334946015 951189357 452611725 855660431 184645564 939749255 113740981 191702101 705214801 99283755 1039091326 906624018 254723040 753615012 1047458376 744960255 252311385 664558927 909140415 274585103 455961625 32176468 764433497 975453555 118356217 16784819 355715025 428380025 794691364 674854391 962919470 137633472 215592508 1073195841 376001259 543733344 18651912 221125830 793905761 14830749 734891785 176660823 509547480 1040875435 597616584 2720390 912111918 335141107 986384780 616111128 265947602 660107268 558084200 678059240 697009024 90174654 705871053 89566558 224169597 784547147 468886753 1022190534 692650517 56241970 23473302 583641770 453956797 68241103 537442300 303422725 35766941 986549641 878605332 315030529 955846581 858449622 106413648 320930234 971614993 591338652 1010229511 891653310 293559947 795003464 30293641 81758731 74652204 842909217 873418700 1025850235 8153657 202608789 797339012 647105537 399071899 130965945 855882679 343434901 1008964167 242070700 589730284 818716877 447354336 666159370 689742662 459235307 1025117523 395745297 1043830068 364931350 796678519 945992329 55007973 793770135 777722807 643426555 780821634 793464205 435323042 693138649 750071103 225022329 274171756 260456773 221467246 838178164 648671425 1016598184 702948062 666423565 1014766847 551354354 382791609 587469627 323437992 556556119 163546610 518388188 981524249 362736268 512895560 797207954 366997635 853907051 661695089 1049814680 118229688 585398077 493024537 352768931 133203846 674706040 984237202 1008004863 98391006 936725155 228842409 83810659 468692248 582964191 149543779 929496103 880464815 246770814 1025562681 486389723 757420754 1065685755 99110087 959817424 457199275 355124911 1023857530 309074444 993439502 380820773 728293411 351517334 280554793 471574706 321521976 964753237 1066641732 904535886 932694134 868389820 703022792 920449712 1011446194 1066419262 834350119 81510757 144143905 830050242 256719405 129267771 839347993 936134182 276256320 1045962094 377869940 538925536 462852335 355627893 256062610 452502390 985031246 677337187 192961036 936467235 902158522 95290993 823664941 3260835 41705508 477769798 592116722 677420171 800040032 322819918 422706701 625672281 606864825 749011501 733331580 183470320 356927966 487427082 49537459 793508291 769110933 387380775 556125384 10590652 942909171 243337060 327696400 982109053 544345198 253355173 61757546 843368159 112526361 367840576 867072730 339729019 796655127 956422555 47596571 105175841 988404977 59001046 604883800 983442389 846964358 671564189 606645867 885983590 862470764 453788866 380908598 107998420 179694626 524391121 242143746 910489165 929942892 763182842 1046598342 398085781 519433012 520206092 844171191 520602554 401660845 551618433 620960546 206249519 389575898 5657367 608616342 16235531 831989931 667528263 2462206 733319113 674803431 870255513 124960210 232659138 646573922 127719929 170107948 768331944 378188169 1014261540 166556896 45577525 530842732 199279639 506048313 1009311276 371422422 1038049472 908963074 568040415 1009785286 550637243 1012576421 1004774026 411593865 726927374 707295950 953928423 924793998 441259876 668719455 147307143 449637626 603525017 208437894 978919487 816415739 755430777 559469483 792774575 1032036620 339008800 751600825 917885159 139470014 413171895 162087262 922814347 715756669 900774416 489157356 36125410 879854834 1068458990 457065212 189334050 181831663 340751619 454748302 661439840 626536831 213112863 505586156 1012047521 232133118 166725831 1023988651 573675774 1045930262 750215705 391033333 490190641 662860826 23959070 667081846 874226446 1057349221 273187747 1061707717 542148174 668406272 659904396 721419725 450895786 183370609 991629857 466844187 240081577 478142282 1007504037 786836732 360445438 112049668 1023749630 980218280 567292706 87003433 498232480 1007920630 268775112 327599980 204726470 561432087 394077822 414459455 21162221 653610876 641997980 491397515 462941611 354252891 641318753 275907309 932692869 813284243 686317213 24587950 973199842 505426404 586554617 1011421790 706682323 344374710 165300645 692234260 901089170 370236819 31556399 402729024 636202967 507735155 913885486 40972282 150884455 502103702 174831482 975485926 730900234 581301891 610750799 553347832 495742580 849599342 576318248 185255476 631413465 37180042 33534504 94225288 273540532 900777020 902637023 772439094 12878706 886974231 585484370 26874183 515705193 406742768 124462037 222289210 239680636 132142301 904511510 845379261 216983679 505275876 87594061 111909708 747294959 220269072 728003248 753132298 330211076 378512322 740824595 151246937 402460559 954175084 136531277 456518029 457236047 409658568 513522653 218245189 779252553 156846107 633826953 873384065 675552689 325886599 355465263 387323669 539198770 91759321 42345107 235965345 482540010 502382410 633484962 931435774 297424446 427612305 935726170 1031307787 962094666 924455235 316341272 634850671 813049401 587097823 1001591673 566103070 799338395 312735588 957871245 805823429 847216639 638780372 816449923 430865613 576755126 54126436 887300947 942283641 98768061 373518055 683682739 367967713 228639844 286729053 759498472 586033671 584097209 55519619 66158356 237293441 1068767556 88469460 443115989 984271943 30530518 504403943 423618136 88898175 422045023 720273114 564790868 415490694 465863305 427049135 624412886 372723180 626968778 399092384 776972449 855610755 853786395 1050600216 734103683 902392460 1053436510 870773225 559719389 637003329 791714526 106530365 848245052 566126936 760806671 418816464 840778658 843430734 921794310 983093505 611682184 505592654 822773351 1040552351 911531822 795855158 327580005 440522139 774969978 565484668 310356636 876612057 915725998 870684909 738280576 248637411 557662253 560333178 602150257 58419631 238498124 159092843 677989465 125186492 91428122 259546992 730340100 593753071 265436043 864225666 233710369 889034036 207871565 755367504 985119530 553542881 600959688 819227062 743833367 574373576 290700779 944942966 6667717 78440165 248516150 509283555 724525660 1002105990 219128483 670598413 119380037 427192818 174944912 224166209 832655260 382111407 981437024 411938592 36492795 68298666 62900474 389751099 888889409 587931357 862101298 246793848 506207624 441671378 553115980 30093861 890027670 518764166 15595669 148247787 124492584 819695704 631930085 415729725 398189044 159669280 869226698 834680979 446252092 73972269 561434613 13576404 266174647 1033117006 656186022 648455850 854939084 1031618213 938134343 481740366 333516715 785855861 464827875 588621579 120401993 1066042465 3772283 111642412 528357986 518743021 137667822 6685788 924881679 1014331618 863466658 167859282 302409921 36480319 121153275 616371736 411333706 91719178 650074633 469807538 49834937 802979811 308925161 539727610 429024304 683774807 761645898 375645655 1013312639 21085975 774842285 906398518 516536948 1023039945 657536948 510356954 774660298 123651556 458955268 386565897 836716696 1030620008 174832287 63684875 342797088 538337482 957209019 444797488 46030615 518232646 699763680 134506494 294796071 685157358 876290066 873812701 768328364 1000585619 495386592 317017760 718925194 477891604 977431087 981520157 787715452 791959351 508194068 706751147 537126684 274816366 415968700 353314297 741739121 1000919330 880615871 348946295 60016468 795690242 627843386 269174643 374526291 338712784 388262172 359056145 563427412 70840484 776782721 1073598434 811369942 435945314 694654422 185393887 132495967 650990317 930720657 147878708 571682465 825720743 313887053 12827354 671251151 978901912 948713819 465250067 596229764 745612798 858497905 542021879 873607376 1058023946 324451158 191494857 325497940 667518386 740014549 690164668 877438589 884131931 221542967 998877563 795619408 676414645 867000429 815383543 1054207958 591996952 1023677366 869460101 542350633 669533725 597009388 987499583 409532842 1067533901 564544939 879544333 86833677 1034363334 297900240 705987250 329471615 631798502 1029088914 868028805 706542617 743996094 798839204 636185994 529973261 950397054 164786793 557379822 896792367 697979023 469471236 390178895 383995293 290290402 488802757 385811486 266380303 792866367 822770271 368497364 604983623 1071062138 1034527692 1706344 148322243 514984837 33305166 457541415 728879700 511669302 413119991 365763867 946905217 60553171 352516014 602807509 422674547 912132039 410491326 134965334 20328227 343521894 257140894 941532087 637144824 1035917359 1071205892 298546905 937402431 484203751 397280366 934282092 439483626 356656619 1003768543 616486138 122977250 386549955 739311233 956675922 931855756 113084983 661910856 100940436 318877177 199020838 260413334 399151031 469723645 1016976533 251192686 197583066 610673775 481715127 621807625 393311859 1009535043 660346912 801021365 775154095 105212364 599268903 772107530 763080764 540561475 108030999 889967534 572537829 869100649 89303352 963687949 80696466 162843921 217920111 397153587 147446412 157791964 787585029 480914823 959042976 50271739 862293092 107463454 108002614 358870247 427681532 756260224 421819546 135515764 828832130 589856439 784894923 552987944 346708721 230006207 516177225 792995899 899844044 249388071 392418958 600416650 704873107 864428453 541246230 421750045 822690433 365256141 783784179 185594277 393211240 289533909 104297562 953894824 465320282 896685877 680138152 256966683 829290540 741213893 91003462 262583100 201937861 303519012 480907562 253513504 515551004 712279862 225527720 617047420 791713279 1041940160 827691540 763986924 373197846 1009270187 152817588 98460989 546283188 81372293 540853663 1041093217 780187561 86369223 178874949 643281261 32001154 828021866 478405530 142460133 704461461 396620690 445624621 474071560 391466595 55572430 15401510 842985904 385967281 1031187442 1049902034 696446763 296821194 537765481 964365419 53065903 724898298 451707534 421906755 685487647 991930869 46825425 698818028 56180077 628038773 579124394 678107476 667333153 1022734556 388363720 228324919 421949671 736101963 788629786 281895996 263719974 1049809268 386833894 615942795 223532731 933773501 148306557 200432013 397657193 176364813 262524029 82535791 978783180 32291068 386865117 998014939 999802254 368636637 759971087 704304698 845938432 723340624 308184155 992287647 308571162 115386994 932469829 757456526 54396899 47541363 151324851 739251203 695156003 483918582 742039602 124455857 458058406 291586069 570949828 836757079 762469286 10433107 953219550 632544641 902205775 786878928 348620374 435992113 273521979 366855759 239160579 693476892 119601051 446422898 806986388 539377477 92642870 700992153 111760724 396191961 774214564 347880889 747153022 1020470445 421998513 726553663 54319373 659627906 91294271 857125508 659870287 281731630 580698619 696935843 449971551 653170728 589505283 124252285 195952896 184652957 452077730 848726002 360982192 778031318 556166824 93093290 1014568379 59913637 544452011 65059187 840702305 28709373 811984599 513281780 875204363 818930152 462533341 745826827 314997356 803712460 756534153 541531538 255268707 609016902 974264648 1059051179 809587146 949579125 13621192 87446932 956189741 101976159 1065156787 74087121 549453492 293907764 396667661 247103856 634667611 1036948086 829066987 517378270 693016712 20076719 864681402 332434182 288663049 99929634 564821328 405389423 397356373 293985733 566498660 550551269 919203575 826206348 56894184 56341440 71803535 617669594 893368793 932692960 937125014 72205738 381837456 673618486 11894173 130883101 745156505 246165098 450142178 913594293 5201897 189774505 653295675 846239710 951482913 169015350 336517431 382736330 525716125 687990709 273527793 862011561 549855838 353600288 794979702 182717127 56579234 949987137 273334399 381041134 993529979 605937283 127834905 37073742 207561741 361810061 972524748 898045979 618472157 407833741 976681227 518002906 703686850 748977276 375428685 112415607 209445536 733229332 302395153 754704916 1040936305 221464839 574949052 889469439 563041903 1037742411 57216684 533496253 942288683 912013867 22211606 898232778 561061121 75764086 34696530 1049014729 335255996 539637749 385517854 446223486 103780294 269684041 732076734 618251932 208460918 260973687 765743254 96112146 387863281 127532822 891049406 750423179 33428138 878989091 987591809 520539384 657207196 419928387 363545319 633085208 869234297 265709218 724383769 201964591 926449478 705522797 884057667 155053769 411633592 395756558 574866990 740358256 331368000 886281104 910464398 698712075 942435152 18841580 341543951 127452510 297171632 286141540 576819529 525335778 660893453 321839733 327527589 334697705 16541766 762921350 650001285 506513211 438798721 217617080 547519961 156279414 521293359 357195430 839311517 986920497 42063273 674255852 942409664 409402002 907918956 432514922 196189335 496283816 526858598 748889755 429285963 3541353 109367431 472010219 872197114 1009692934 43610074 224737519 448948194 860109598 102123906 1000276612 626144537 865399653 384928999 439031595 972536601 1069391835 166071577 820205272 628374441 239451531 386863062 629891304 398269833 984346487 846625217 186263611 720829676 47019712 90002407 970360489 1066425554 562123968 112985903 518484575 814372476 804550766 811494002 595918620 628725679 504502865 881412249 40629745 891735763 544340595 995104202 811958569 121695593 720704476 378479728 647992607 516879102 654355125 210407486 60569594 208481647 478259822 538558194 305443591 566686021 943269142 280412730 366980556 251327892 861760666 1029860807 547619970 614331894 24811246 46205756 305209290 40874524 215070815 984676663 444969047 851586048 911000798 909035919 277841775 923187998 896283610 300726705 932686572 1021079445 355263758 968028886 523080590 272494598 928660116 485211328 228744554 847096166 77876877 767605348 593619281 1053779815 911994173 957762588 607151220 635123220 438595935 676854096 2801405 123382721 753541174 553989012 229554592 537796858 617999821 346406070 356008285 716169739 1020424630 255839657 69635909 306711385 601310067 59811911 249708303 508127051 95182541 382258090 272002106 221877584 380117210 559212361 503593892 396721440 174946772 462672100 869248036 324427605 65766751 740917797 493083705 976188180 639330904 1049589532 25071217 413373662 381594215 451385087 715820736 945880102 795280305 57423137 1038107413 825334793 49810883 302226061 826544339 86341521 188485910 359368256 674525939 362774043 192754064 27049711 576147328 503961535 110516499 39545686 95255230 129194875 250957757 211846748 334434762 858908687 406684916 213746365 435002906 783206837 677193743 518654352 1073629171 118866122 920915702 147599048 476024578 19064253 518326960 213294691 809704358 792291615 54079682 11302920 412584217 20608118 530502710 663829519 451065522 486032292 547383418 909896103 482951387 8757554 741860277 424775933 798006317 926407492 436531865 229005439 795360501 215118353 905621476 686347337 9119778 787968095 191263512 182342158 277796710 672935360 400623845 664599242 1048395438 758776490 972699705 253328992 549553580 782125007 487769081 587343916 96343584 712278724 621380016 974950752 582324633 840822627 1001729893 783759540 129939622 131508693 1031145025 856868284 1039355258 463190942 823863953 452292786 430305141 868503159 972240008 380742684 130805460 579240174 612629624 128743302 562176936 932947376 1069238115 1038969390 925021061 470508963 653462103 671420908 756995806 119341839 962305610 745866120 326741256 488917560 798072060 320140144 171307965 307767690 765988252 36878906 259432894 673254692 1013047676 737289501 12664046 598114163 253409085 223861836 990312383 865299001 794896129 203318940 320672058 599184842 267915955 580164227 724248587 801498279 395488052 799132265 135350241 93636703 339936352 341269072 252697019 1073648971 324226654 100797232 469015031 365099288 685244985 860687345 562086032 110517705 979027507 433618350 231105759 1069363919 668681693 954404641 908451403 586390408 840935587 485916927 457200268 937354156 728578812 183333398 519170690 659782125 1047751137 75351246 202370031 346289060 933310910 572826091 344091294 950895381 446288043 734998562 532602748 712392665 1021914306 221497726 578206415 337394876 834472736 869352669 804297541 678447132 405082081 732164528 946357381 900563086 671132864 1034585868 608302811 1057388998 401695146 315930283 783937569 322592706 667390745 164484016 1003418167 504677791 867909390 380557807 467892270 167359969 595661927 321184509 187424084 498464250 215416965 531544577 537318314 708643736 726989609 386120025 684737904 61401539 344123522 350039566 549249864 97204891 335202810 11119605 920604508 773020076 586446330 798235459 518153283 6514401 211465793 970950625 442526051 617450314 632357801 837747032 135777003 302194433 159622916 38330761 518441813 54516923 792450177 919726431 813057749 627510036 749692192 29616692 125140652 213345768 176653293 91969577 971542267 496457606 397301406 738249217 466393047 967565322 72665498 849646719 758481489 932199604 752158856 923692399 469261345 901525333 50300803 405164001 875794947 713129612 553288058 905979840 823746765 789390329 187007506 216729013 824667008 225855703 1059769191 131454237 697657523 152197476 195408589 757253811 621083635 873996552 534199890 561768064 758566068 917970666 591658473 100337548 782926617 709426781 98965851 834106983 889914533 296048735 680337266 749037658 1060823036 465933566 815430149 2851785 12377830 360700031 346227969 257060050 679803364 606343159 65583576 277160608 1845826 553232314 57435418 391561794 939946439 933791729 974218971 693183042 483531828 246291249 217629691 454468101 876776852 83468000 883443781 887287806 593938917 799600198 797063732 23395234 679827771 1008024341 570831540 708071798 656345900 403536014 180902468 408440036 381892983 518869803 343831318 853894359 749470132 795818046 128065311 266156802 935193629 365744837 227221743 333798957 591736285 185195603 1029265912 512539934 530685914 651365366 233989664 601889480 90710568 395439461 375524915 188231145 199496076 1009190904 632308644 268166418 279944087 35444384 531499710 950494750 140772498 328295992 710395578 656988834 843433031 485772759 491946867 459888570 968972266 58896990 153251432 267298684 89972277 709538777 344152982 818593824 993524365 1010624319 1036636797 856194322 909504199 918788009 236327818 791233295 951473018 856749446 1046121735 479635492 508508575 471936585 854403644 426901817 818963579 861714312 509445169 433051545 90584863 454676743 517202198 547025911 241578885 556826212 532340190 903276791 598032453 49089959 86198133 269697340 349576100 902152990 332954879 379425235 911715970 40930946 758029486 857593940 815674808 784022143 157964499 669495512 1017499849 298844685 54113984 384799847 333511936 970632597 911419857 659533821 717716504 733255501 691446712 370417538 23039124 982897407 220366347 520884475 693307901 920778916 407095187 1022590619 921385429 296921426 540235038 678373395 724828828 401020397 739965989 948883746 217444458 998363415 459824767 571864251 980860667 1039100792 900786162 271539754 87701813 688807306 931152982 37066988 928566254 398030423 847023992 156859764 270725135 48829824 839223354 825909590 171865797 327522083 424454657 599571160 782917118 779238611 182058463 838749635 378074944 888196027 1018294320 129012513 952213600 235153602 218496945 904668305 516351630 928260895 730069116 205893012 285770544 1060246796 938007423 516474439 338944525 203844068 811293598 779338377 309792960 15773907 864017956 25471791 706362752 922655456 597098484 706124027 280036820 1058853017 944144972 483504205 752537557 1053213507 1054559319 218970042 317550955 82483345 487694985 848887064 31758444 985677910 1040368169 641332192 436887370 60222978 565756163 771661765 139329674 430483836 319430974 681941291 172822287 168580456 70502477 611882809 853972625 222075319 411332344 893562185 535623275 324800182 816892878 95476606 290529205 416584778 769218583 1024843677 9494009 1018109885 156076501 729203365 465600502 279295421 865134976 946689699 367397418 811992927 956766489 136868139 375393568 836123947 3972909 957468965 601109649 186140552 852040837 279616161 1038857669 647121405 518921685 622417469 907841818 878163911 32579918 855374549 180816369 830854748 511992722 314508969 974309106 281553754 372624377 475156330 432662703 897442148 351996622 971106495 644322225 886700937 770085824 611537141 396200255 539665106 342245427 277432799 137893990 921565020 82127612 595171830 463097303 887375862 3956647 427417689 744678920 260531665 237890520 864725127 54337216 892356199 435845955 659464191 934807173 138852002 515552863 936402658 1065931740 263300019 358082025 968224348 459867445 789342083 448978097 661260159 774315960 944745678 661323216 724261910 657869669 1047349033 166833703 886043591 889639256 939343232 991943422 71292355 102752900 673621626 972736115 1019100808 751539144 504256575 263837623 330224580 317935722 17716034 546731107 902287191 965519320 907950426 173423287 795240949 694994300 117443142 959799044 183476582 1044479340 492373786 1034293555 430901622 701367098 508253243 540141133 267589275 564722996 431948354 862930458 13053453 725119842 75765711 20955825 986141596 135234268 113101183 96057368 27346345 809575397 680182157 294952128 77145737 101827457 504010084 43535179 468023153 20863064 672451973 597601474 273881578 254915387 405577684 805702371 759755186 967303248 981079949 756951945 416806086 1008057165 647527361 546250663 523742950 598367124 279515921 279589656 1033918416 681863255 724958702 878930238 489256569 837886174 287053815 212169106 218095609 166125569 353310341 22269524 456024994 499470475 278963505 39778436 160717033 512619365 923132184 310833452 797169752 815655264 347545385 295465976 1051464236 317739151 890616999 453740709 604225383 953314463 42178947 973907487 50296170 400855608 529167040 91185804 101536685 956606109 271681505 500977459 974738314 746276900 871168704 931083362 771742298 341778794 967901325 814438092 375367629 564169778 71523573 317920166 406883063 765038968 861074191 1064965540 898878845 637063123 387482576 402690966 297603917 265245023 377765994 561120137 470437445 172007009 241227085 731059738 679517554 1048760661 714112917 509346958 1008079540 200848165 1014914522 301386337 464288528 895371967 128483552 974394823 62068155 1058960599 830041455 704364732 154579466 405534427 1037547537 517956780 485038919 421248472 228254191 142213342 684687559 945560787 72398559 9325678 686779896 876549885 841595740 632381913 670361762 607798417 215699735 50550757 122219569 717281163 225681265 369464272 217633636 545699806 847358278 539055726 623901697 492902090 386820600 237164545 403985860 909753305 756186127 1047313500 644714094 467189786 1453608 123264059 370152546 433880097 464862907 950504768 643387908 911253538 572429877 918882138 433110200 499452878 151121325 30695844 171870083 888172521 629923680 727885311 811385558 806666566 541726271 786226975 889068079 46560141 673872203 429379073 25422630 427760752 239612986 150299148 929970709 1017661888 889953790 110319429 578773986 578330613 19354727 249674598 153324195 586467052 989456471 840486138 801009239 603740688 277141952 631176872 1067979422 760138240 635132455 533946875 728983801 920403410 1043820833 812801366 746929673 285042166 901834229 971414368 697076026 125781463 760198617 150044721 122614927 586953849 28476770 661825998 564499619 379935491 970155443 257416637 797485895 426917968 337125082 773692229 371101027 175953752 1011966961 744959639 488807729 623339367 493018707 1026441101 437205453 113490545 470203823 247705695 990084630 1064869431 404651210 384207100 642047359 548377507 1012920980 705172657 742171984 665712232 840429103 955730509 632036785 95687191 52251586 402257861 209556515 407747208 909485405 1041829079 899495048 289896495 342133312 868030885 66935967 588058942 432910488 1012570528 603368423 3651174 427771098 425888610 449656551 493103844 193132345 237438970 471716988 91522814 494264296 145151838 458797236 10195830 59159415 983212648 951019609 588704269 256477587 1037296502 270684670 597044278 827750130 930169969 924612351 417622146 496419654 232758369 936167915 18325680 958173958 714029267 203715960 222815307 781918085 239556524 971876287 353744820 34039960 1047627367 539534792 406419073 4742446 674175976 83221469 660823136 138300351 40029320 282987439 259677924 817351054 465691238 300899070 214240509 8912325 121703765 321270517 867299588 128177748 556626296 596650384 299466658 616966227 463504434 1058626573 306589260 414541302 1010064958 203282984 122191558 499932998 273094950 891680992 221969292 261599597 269820802 285597830 372017997 116799637 411682973 237819714 314216842 957264162 202797876 930389258 544900213 530004169 250556562 455147382 155644385 1048743453 410099090 1023547611 477025460 663564984 37665938 257747078 400513263 477357881 432996659 593977007 370827375 241160003 1057184915 457488798 355094699 752301992 419547457 1029714877 285432581 521137187 318725284 983343751 88715006 253618202 526627659 489622569 684029111 85560213 248943716 701184469 148214264 154540615 179290265 668318636 170782090 65420491 535268900 647012918 595884574 902495662 180759078 640246259 860840598 843488922 786152310 569420521 1015238362 136272387 193586681 394568639 1040463626 682059029 843228012 768930464 1029598847 412774668 62653056 621643334 64804375 13096238 710655452 1058732788 389059274 310492595 755804965 1043955060 607421757 30586258 433162059 981042357 357327783 724220995 806437343 454765200 292346100 825678059 371763876 999479639 393076205 673417275 50952220 251621496 390906750 193722001 1022499088 444012704 709816255 418841629 249255860 120951269 799437658 407702749 577109124 706386388 956372651 125784914 55622597 1072447647 314051014 6383388 931416503 402656176 457910134 690760675 440480818 376535310 236833632 377961132 131317038 700462449 934708423 186710905 920277989 100176828 562280178 739298513 4702313 78430284 919516248 481657289 454732547 600167607 5729513 560857006 1028512254 1017655935 345547009 318159676 547143595 441236953 296201534 416713745 618118747 628527402 975793409 856397015 247051487 126085643 362357966 221317876 268844907 77536516 477201100 918927443 237721487 570052380 209451779 945402099 671345516 501199548 503567815 657083866 39348854 303896929 868908110 980495679 856057559 209658110 136134935 321486158 150731827 669152636 298565133 959645517 129974648 621368779 467260126 382752287 386705333 312671746 106969029 398796677 726818385 560055218 714347114 474152129 141519268 331456803 198240149 82574931 812186825 969531836 614825142 454835609 497942087 660697596 416155884 892914013 628270679 369464649 823317907 287291698 952305658 531897293 678813396 954083202 83160936 946076166 336796510 724423962 174936594 532585527 772174557 366618043 24306727 162355192 606777972 789180207 1011373616 1018192803 913322059 385490981 800805745 678830894 184032694 482054563 727060494 139764763 1066843802 352120937 323181883 488166667 364485163 429539440 435461529 123853348 80657043 750111165 953095612 998894732 1072445161 383085468 894613430 908556190 574572660 466634890 338169545 173223268 185216998 92501248 97179182 470696047 846366845 184080782 1058441526 204148734 772304049 397782818 452286785 293113260 234255254 328457224 526301481 680648484 171371466 802506278 1025118800 922678269 346346613 697218369 756046913 387129425 943563370 186646552 906999477 311499798 89388210 883549222 237607283 644492645 521127453 789267314 751699011 707291954 26244433 814488990 532290420 543927464 133984353 765149866 642096345 895871306 373986389 380738738 662216393 732685654 204117740 263864977 859187604 518106600 207245894 952675462 758454784 31049627 343738438 43390499 998527940 12072359 440699897 800322836 690497431 94486260 266623671 331013341 166584313 234370164 519411037 629282494 811328087 66384781 292677347 758590776 306923915 126284524 437232815 62352745 870120195 74723135 262207558 405016219 320591927 152076724 298161709 288923948 873349140 532806077 311226214 448467350 218436649 475641090 935270118 329865939 982363460 68515790 665199714 421100268 683568602 63024727 568738997 370505002 377239215 301692850 726702593 477629555 240679102 47124503 1005226718 280339525 255669704 944625026 786147468 6271189 1050960354 663555522 33064118 1005319837 703547346 651920023 90506938 959408527 244388722 933721162 350869111 930687952 315803012 590453598 289965648 910888054 260857208 1020686650 28134795 1006782057 90844821 297775316 460323515 549357952 423008543 810575867 40060210 423958992 268246858 557044952 423456590 456203063 628559536 987687466 524103725 1470280 800730928 730060223 1016361667 486224591 405811508 738903747 279908731 335633996 254269116 1067036006 69618237 351915563 489024002 781859748 842108745 594446686 821961363 739480472 523879974 75512482 406977561 486800950 452505839 769545679 842894635 906948693 93114871 693950605 722371729 195352122 861234662 349452649 677709802 849841449 573463879 992478761 436984661 553496828 817882581 532875340 422269908 897561900 5173514 2454952 143990304 547051378 699174295 240960614 365765566 1061024171 187113062 308068638 828353228 407547812 986023054 752938225 223032461 350681601 220830378 1003378210 337095389 156293382 524514282 380757352 830359567 685647986 60331539 488712906 528715465 768965709 865813451 969946858 232634622 293422049 405698293 248029398 496513820 419226256 324661308 566841899 951335171 882886836 1027937637 510637021 613179409 890862979 804164630 773039574 553247602 892217590 226456484 10764755 465191682 245502174 443089630 140460856 380361423 35588556 630140832 984930766 628374986 567608374 383279338 153184527 486719458 112147132 281412111 111343604 253905193 896142833 696095080 772017586 141846322 206271415 489472161 289020515 853869920 173645022 905598934 932548431 537618484 556785272 1000743238 1029154393 514692378 151429142 650329002 67344993 500190219 18665114 275005229 288172619 1072396763 583295111 618715078 731513355 467011977 451027711 233137277 106381759 730268525 104825679 657379565 516745528 361240743 1035561353 489453751 957391016 518816899 903955211 643302223 99837774 432355283 380557668 418695811 47396297 199170742 608939796 292365648 271291820 363877575 758544981 571035122 1036762228 314325067 599281776 196482196 978520872 856884572 786164098 330141121 228059689 483595763 334190857 792027543 393832211 772883035 169529013 71480270 480322612 653574067 788305474 43123911 376248652 663790307 385839756 806127045 1024793729 178936121 554171125 192898983 822410592 993168129 865052854 580803153 657765135 952099644 143661329 1027111434 13839010 332796938 574832393 958575066 769904579 131949213 780819464 374077845 910782742 355466627 535985472 540138378 221792344 815406922 1032995262 7607738 9983167 178573762 296081616 823244259 1008712819 832074705 129846271 569114199 847240751 553440422 868972674 920904997 830644612 343618104 435460748 339160186 1045916505 241060059 676272089 593013110 1053518178 647524027 337187303 340160667 487717713 720332339 397269968 42190101 891238491 662284121 497069588 776653674 134385136 789214787 667957351 1005355389 850943896 1007304852 328114821 114181115 482514525 721386782 927217684 13820804 568892320 318675086 799446324 192276085 102122458 71952738 37818030 665582881 176175623 580403963 920961872 238129510 530024558 961183149 499948530 437693978 16087003 301668438 689797306 508510575 24878071 16302272 71155903 353221338 200476894 992526479 172242998 998796941 273769266 682626438 508277886 527982239 370699987 410987144 261647987 902197374 770782866 606603403 395803945 437083062 404423150 12019934 730345508 599976039 1039944088 949555374 112745278 816236356 303773271 899498959 414174330 213789048 378293604 1056755955 83326939 1023323156 762334079 168579005 764882634 283383528 563922349 647385757 902727155 437238766 819229025 629129760 472491170 41170123 219707389 14625951 819246924 363395401 1037446719 951547594 59120203 155071427 17858796 485623167 295374483 817096089 984975249 385599298 774802448 1012942275 683066281 946030496 872211872 36944526 861968263 357889861 790460177 714074215 838232256 128553598 918696207 750993233 5355931 266023432 933978850 985138708 551837198 1060032885 249153083 523136484 996661571 919409411 851187458 138905113 93012041 436049380 72834788 764252640 225579377 515879871 679940683 837276939 754913170 253195909 914676096 926392606 364126927 256470172 563186406 30030605 37747560 230676670 1018094353 789397775 813499798 438558787 159086656 252845057 880899261 330621105 699939231 733695986 72430826 604252469 867796891 383393802 934940496 144330419 152204616 949978991 169903948 7945048 968456398 952377623 63755727 564324960 479941746 883339334 660789312 705037945 316758732 617758500 485650566 682584362 799183647 361070319 958564673 475783939 140473756 369060998 497844157 778488552 863090017 900572199 706114013 437335821 466220086 1042968553 108871165 362196928 707072737 836681225 887037947 116022696 447610531 189399762 90489610 828592457 628171558 468710244 651097689 421570502 230884398 772610344 158688151 1038344435 141591799 850799481 491978976 307798209 141168698 293981726 399953014 816764894 97400550 985149739 1011587260 476550479 48198855 1068698740 222044869 973835574 828218390 74156139 541283515 373708435 371442530 1053652962 415926342 255480888 855451303 864364849 42895772 77236227 721002248 329956948 387588123 406991676 956255948 399667196 705316301 405247575 902459829 158964624 543579239 884968448 536985947 316358930 973596010 33743295 316444626 331617925 894938570 353626453 921431392 1072881773 479058181 238936629 717077633 125402332 256183493 342569672 191607753 1032178146 610447164 134875196 224867928 565857730 982924799 1027859358 361541553 652880904 922145459 702608063 690637448 47207708 390421199 14411807 76536493 301024845 574572018 282670562 419533455 312139540 258783454 209646621 168413067 489737192 390362299 921569215 219111880 140794276 965738818 291988404 336269554 353931418 497956582 1034165576 800649605 202452634 487157020 1034435119 613208223 478448769 13780610 870594223 488381790 918736694 742904806 858834215 646433568 787055114 69902266 25531282 769285129 1017930960 230876478 584005231 623274261 879787354 215608707 44804919 667636417 578543838 687422771 342551460 209263936 573207931 116240009 734658780 969113876 209283958 396334877 778919339 170330165 630438687 928195044 401125383 456953070 776897898 941122971 514672955 537307732 409178206 80990141 661975890 743818252 480607728 709955042 500753497 949628125 562127769 607391725 330390270 986228455 1017573441 467215164 80390643 141890142 177313771 846357891 89379920 379249399 96292905 385066565 559932330 638311677 757991033 134218360 1065682300 196405476 368883236 909628702 671322948 711136463 196236942 665272401 335153681 165891205 899817746 859167940 722186600 131138491 126338535 851762600 194428427 271576745 1042398458 755470317 575483731 512262206 202503922 352863119 722356646 896494 944186217 780889726 448423654 582141032 924390127 495365750 956595997 212208301 615569931 723245667 245702633 10355860 850823990 314908409 138904965 738286229 927238869 61596618 862469886 305683723 167942017 892738627 1053978287 296049898 1042355642 1031470723 588353015 65061750 346045915 661296025 320399700 241686426 186141348 172747562 745169478 639773510 879576165 581235247 798433671 196685669 38776467 621221067 474618316 208475556 939803336 431776020 407029804 933203567 720139335 628971635 451523208 1068723996 243747240 597822872 503338799 286004406 501237900 1035320969 743893296 941447481 861620784 285715176 241438870 700068521 542707511 871817277 421773317 209828228 881910778 838333626 890982853 442300425 802880242 661716772 117429684 567572390 6135750 534659660 760829622 380425005 1067782101 1011688892 215307941 922659224 899880470 172049624 103072352 94387749 47362657 575321417 856823635 129371570 1037965599 327627617 171248857 500484413 100427810 592873086 364131340 212025907 989138115 859885520 998701335 458853408 40329648 290960635 73702368 380072404 833646982 33820914 455299389 902322302 892708994 428423227 718263056 81311612 342270252 742027838 17500418 384514401 151399453 503275703 431302533 512452269 335961424 685119356 67483891 978521001 837189857 140857242 958764545 83194175 996188384 70319061 219372739 232498840 265981739 11755481 378396639 726114600 40836498 1008538268 988572523 919951040 201479251 1065877159 156984213 1020342021 643612522 361905354 974696647 778544819 850227168 1064709820 221696278 218443140 1065232934 323269196 747696115 947540162 266941324 835059168 765636181 837919339 878804030 303658995 283254554 1016522543 6485763 42672540 162925287 1017893936 253063354 779658391 1008149608 431604182 64228350 130605771 242830317 870828619 742669380 347823352 649993948 101075434 398986 723582599 315753503 180278108 70483369 559251027 531281500 102312842 790224283 235521440 50700444 72497329 442497159 887061612 89154918 961364178 889033785 214845241 587877063 1003956285 162294576 349726425 482162800 711356077 136586969 202756244 994110981 507156730 736387184 710039295 915611123 77139163 236029577 863635094 982284516 286921350 409906639 399169276 384806229 854376872 608829895 856688295 1000571512 1055753545 972948319 819758878 289508154 548772906 83588081 390002545 755390044 190914348 191595446 243550328 367840219 640075844 337314952 379389169 84796982 97350591 323931500 523188119 696959961 1053582022 906827648 25592178 89805290 273200677 738174497 1041004798 653162273 31825549 777098354 731774088 925226954 49173478 969224264 324921759 212553674 625310801 339079183 188197554 449431521 37896782 305404934 621433996 718194719 120640256 818371049 486688921 806997368 792855036 598259980 217747797 600960732 574177120 343570651 866509220 263145770 12166192 646141122 613090110 1039212915 12809213 961785756 809243236 621897129 138692228 802576223 508828158 398555982 292935562 811762140 277914657 441528075 237411338 293903048 924907628 700141928 377442134 247842717 82643509 558393302 432376747 312471760 404790325 743240928 7594267 731723922 187605044 1066223104 1005748808 256788991 519767160 612205077 147326860 470845362 929902508 487758118 594617721 509690541 986821849 396440588 205650515 797923411 49108385 248160955 238142182 459790794 1034971325 646128612 41543748 418933587 283503220 1072563192 974283051 730374956 486712414 590511728 123032319 31482449 1067968214 91264049 530918016 113116058 502847628 523982085 550998080 520878190 186627256 611743624 787709783 346062735 178368922 67703367 631153332 1017364901 868413927 656901703 937358961 200003278 71633560 787341571 96084986 56963553 612717945 745676868 9660705 560805801 571981073 370336472 722625179 714983559 333327082 100491773 243675158 316645417 145212760 600034237 430293804 77712536 1029210267 572461983 1036181938 1022668110 972184224 431592217 788980852 518120481 787355375 953080499 786893863 101600849 798813763 845224154 276895029 915873601 662545920 655742838 570214625 337547944 129758919 638891666 541862040 419662783 505881618 987616578 253243305 393566750 564340533 608323059 920916349 1021968141 414441210 415609369 943920706 38937010 446001587 559624853 511244686 49951230 637958713 226931631 277143018 465197683 1071717914 929118095 12834620 1039058529 279971526 662109388 806835069 529805308 44175940 896986715 838377962 418286499 917482822 252061124 246654273 758399442 629134945 293882363 789994143 170604083 845551087 590370191 193436412 790499555 715381483 916652877 1002761113 810966278 676412309 205620251 132249087 327349681 314943804 394601132 52253684 901117544 970643824 550843841 968538340 909905260 152749918 32972210 861990898 339806275 232373336 376232451 783268474 475157712 598372281 1014813864 416562897 480973322 396901482 1041861213 617620858 934321552 580725881 753335553 927103002 172693538 969164104 123660318 974377111 38965147 903920502 1057778367 1029161834 217852990 820369072 728493069 887115273 200105159 169275128 840251080 668506340 596228662 282745930 690923024 557575585 72673508 470337593 9321786 886129917 711420213 1005771602 614980128 367315939 324546584 203547639 19710601 336348789 295017613 325391089 808337684 541970473 1004205397 729423731 912014705 855706550 820761505 442504828 622209090 652804166 923771014 354675415 137279967 644540636 680514679 546911266 473248344 428995833 692153303 874860883 318796987 1017032374 3533820 664829950 1063374890 267625049 780396191 233342854 22826027 564306253 562239369 967952343 1024004940 663630043 628951004 319936184 316433965 674137678 111330422 842990035 760485043 625306481 901350489 1069485634 172430652 541276386 358044901 591636598 205118558 808598550 885996618 82258515 767494122 986157818 472527665 15130645 647517950 861903079 1047320518 601595912 631210404 530736537 458439987 752229488 161774027 810177384 278233007 879583495 854282484 27557326 716176364 676347744 35873425 520866065 29276025 599091627 487728231 809483280 699277286 851954477 66206456 1019019868 357009792 387690819 107629107 192895758 1047435228 461860667 968844335 398666563 490560268 967135270 36803359 679931371 453677944 530736141 312813506 130680208 229631497 246796989 285378168 155988079 848448750 304102110 567057270 94675755 376719051 724240053 616483923 742967612 687644998 557044761 503223439 402132364 969226974 334130359 829305052 570515635 97540025 310781234 746156616 863963978 222963025 240333827 405016376 488122201 1048796936 58569925 1069488904 15497554 721546281 301387338 758154628 91906546 17112621 164436906 458054536 878742223 374076203 886833221 64455480 53250720 666343396 910196425 353758446 1055716871 1053865974 928695277 267197360 1059199083 741051104 821519084 454687684 259807250 1017970901 225260863 120535486 1017360118 411572147 821670585 783564584 556952380 433575842 549564558 935608743 52867672 353420985 305208247 385614558 501735793 186282195 407559639 982170885 1046053797 885269829 573224208 900200616 769334701 240856423 772432618 259763486 617209336 610848028 376800688 576465664 513998871 446563891 16203378 930617348 228990751 821419276 896021481 701376230 947555754 890066346 552865468 354997023 302128435 407947389 913823059 420752535 718222237 691091829 471402250 280303447 261009211 923546313 685744998 936276367 178285035 730074836 775344492 300627313 231775824 483690834 105222153 1065455404 669482303 409985837 826390203 303890992 260489009 569717796 337792286 1002618433 414260206 37732145 723029776 277539972 596226829 40570612 714676486 24360763 647950946 278183917 810173366 422692455 214415178 686268204 189909790 811342735 1064050027 780662552 627632037 779387370 827365898 964183749 630353100 833647013 593465930 985296719 680745622 526545656 236553548 450349753 216264745 473817144 632838715 139174613 999276692 474446629 918516581 591174521 306082811 705587695 1023767356 884239515 648909788 744494893 321009698 963352664 392814912 886416152 590072567 50673027 162634714 828744909 62256753 284659883 328200223 895024708 72479733 1008444307 880439501 252109236 468656051 67599834 319372150 352801705 287979005 740370030 179820934 201111265 213664971 126158572 129050542 77343026 129928064 931406602 771664413 539601353 113413751 983675529 768655365 5026120 974226598 1040963579 449874237 1057961402 199067726 227960618 292776703 909013938 132357065 811995574 123093932 1011939385 1070652001 1061865113 769492949 944730809 256007856 239566753 968890142 838850454 916175310 310836658 497239864 457600436 1013137858 430227451 638764820 617424898 482750016 370407348 658154876 789884739 520192605 553964234 284457149 742928582 972835941 119796798 214896974 845134768 373132687 64925258 1019499722 782865079 532650463 868336332 202517835 943474441 658608167 688498628 669077760 915856372 216352369 377232013 818980749 987666629 484788233 817628192 844162991 52182448 501941106 954239029 723697806 411710006 601632137 891403956 362743450 335611642 131397657 554647524 863835721 777949698 1000946561 196540281 450071218 470067561 329945540 552953597 461128602 725775921 796154255 305770519 137797549 845803582 665055145 130114571 245080806 890624254 622980800 840290011 768425069 1648615 411706325 186531122 868181239 259524700 819813429 389824213 590205353 642225452 500353155 10132123 747772726 1069217451 1009226038 901640830 482903868 715633893 779401761 880164879 397862038 1062315450 547190528 910435297 312578778 717589738 642376034 75844571 630128663 15713850 1067113255 87742438 614618970 1014130609 47049520 618158293 677115626 2643527 249372516 662616644 539198724 411138684 584883254 860358407 587039415 1031379903 215496692 617134967 116179035 1060285933 870903802 93517058 62909132 1058437105 255985281 929218055 866662940 632522196 540687908 821069189 483256573 694178210 889784925 572044253 536273000 972649490 753966274 49646000 163942029 448181111 703167557 451248327 222139113 200836100 485582089 192828460 84347034 954702039 269373281 164711748 886215763 631899626 8256956 891653525 679659377 100183661 708241052 960315364 343529695 554428661 289454909 181426245 744389775 230780841 375657286 444054005 686554765 819083185 946360368 1012895434 891386685 117715412 752475055 523462118 828454996 213650680 894509140 425157166 907120185 71211244 802494436 709311179 969710280 186408801 481507862 377936557 516414830 916871574 75039332 987199999 400545884 468637004 1061249695 830266221 401107392 867839585 669718372 145103552 1072524015 964591384 298899309 230495697 94639759 785860533 661509316 93171633 925367497 551559150 278707923 94625990 512494370 794474691 963759373 373949445 968786133 345061773 480336491 257114089 633198930 28890621 499198996 973990574 567235604 205034929 389503155 413927118 337007999 941411427 843348224 182781930 529150613 498280754 55565720 499377170 43722850 95972894 7134947 50381974 871898572 643832974 963766293 319647650 561229906 614306392 878813439 249855320 413492409 455832927 1054707361 577696421 257721940 370415421 990807391 667666500 331343170 974745441 414309480 344505464 941472169 559038475 311250063 503521638 284990003 713583991 889390135 192676408 20901582 774363530 535299376 197846465 966729725 1028293459 993433523 709832314 887676313 1005066958 717480043 777205884 491376769 456619807 728385110 25575995 276539931 974271005 183059682 267850279 512435087 896228574 205287458 833941562 196681948 63369871 129262913 672919819 212152291 1040951795 462876557 466931133 156058749 128004944 274040417 212522982 909441598 950124019 604565191 422656782 545377614 317675682 838209826 969923516 141018852 416941288 335180951 785325231 22381729 1060273468 558740706 772911024 849622472 399481646 835583689 661137811 53217291 819428695 385351336 767579978 147651852 947572541 1046580388 701824666 448798328 799868838 773316613 519996781 8199293 801701121 822032169 735765254 529864760 610968747 691767360 593409067 383921325 376290576 924509753 847125532 562614763 967572311 882980738 556470430 280972907 53765275 463595866 165395140 782974622 250606505 853655151 976541534 84526729 464327150 524619083 558380293 1044103187 603771902 141800660 748407702 1019480012 885914093 758962576 414543219 106169681 185752520 673088095 920866994 139311230 873016413 940771474 557121718 700278703 934226609 938745641 491103312 9519235 149611473 131911773 11566848 323928420 536208297 802072435 1046285400 1051553499 982118792 336524934 443357886 1005945839 130371066 672896024 1068130405 373950425 76528326 975984308 880458537 923434917 1051585434 1039065003 513758549 1012853610 231667029 668711488 564539272 706579177 280026189 893580825 840584317 164366703 265817479 257520120 1011123731 609975066 561849242 398789042 749716696 733112459 506086987 420104621 869810365 77291056 93405691 984140866 332877338 103782639 467934674 539447215 521481289 535893413 522772167 220649467 222172503 587245907 927551990 926220574 1012164179 302808029 475258075 441548440 800750238 662437706 753606317 512871470 438289546 34365581 880759717 455417587 604153354 1014888819 941441339 834094486 188404984 183533520 672428774 168514651 316602172 145400595 683064463 603159076 18720218 729100649 411919420 902797912 305596465 954926582 72539080 671446474 586010500 572861662 585553058 206813730 435705883 19966198 200248384 76325814 419065061 750566979 252471386 24201534 496632269 11295881 763582535 18055802 342472013 290835944 994558796 93651684 92548320 1003514509 120933294 589932511 933500486 309064880 752094668 384992219 1068586105 1014891654 615424924 64857738 80371225 685069001 981947070 1038939945 926802824 115992550 707398464 352681882 173926486 477853854 574673118 361886682 660263315 102910143 206122486 549008255 116853884 22985230 855477828 247369736 61217084 160908734 877753493 63096875 645330926 368032867 311014023 730331239 511405058 249165306 864051376 367698461 308887186 218329392 833946686 937123716 820370864 817098391 1021547236 125554647 837357007 180225412 258344495 61032497 821010594 566345424 54155260 919518367 916863532 983958531 376994376 885684446 736634953 250104255 540357514 914144996 403065227 968470345 956899672 592829662 607651464 769921248 81621566 607783809 13443081 1397162 511917891 527474174 32184328 300032047 668225297 71312381 767316231 889678332 990786835 305866534 41921104 950578944 541074499 364459152 54470844 430186520 362107508 139049158 1008660351 887718692 701887293 266242961 46533453 856596807 736867072 583160761 945766978 228403112 566763193 669398993 964622520 879943628 108216843 927907684 470159911 287989868 738322362 114543586 980039996 211611346 187051897 629130902 716126320 876106140 588612607 193476584 340678512 623397413 370161091 219718987 1011522951 799376676 286762797 587554695 844872437 125523689 1019833936 595008321 1070621625 607700117 834429237 589440786 514308493 1043964635 465187030 646351189 1063011467 710889996 507272139 992911835 354441258 498331292 479347832 846981360 312575289 861842684 204751942 508779803 60991176 172004256 856152709 627544817 269884445 185532502 629832462 115097011 531959077 923153537 342398022 800952918 644458542 1027893477 229812888 235430030 571844711 209928206 1024331279 1021780097 576201030 121387199 932844060 787359864 28509137 609673338 350419733 333335618 416327945 336172716 473738224 199264946 325415941 672912984 1008335860 290342521 644009830 307594004 552891796 294645287 497587105 983949812 519893457 913628719 995631613 269559195 686434296 460308717 75149518 636245606 293198756 435116777 120464479 816470335 167840061 744152957 900309481 253470863 894915293 327702001 470289419 986045564 1053551692 585442443 1067614421 653910492 414910353 42941388 744384753 1005724542 1003613469 723131418 878639300 432380416 712469210 795083856 959597919 802787195 710626338 774168015 354480015 142170335 220428076 199769918 983929811 169539479 204667246 660356906 1048990619 131034987 716403238 616588195 590677901 328904874 44757702 962770190 195855359 113450574 756573951 602768261 203997802 818431637 613875429 633464667 756818027 159107074 891450382 813139137 593295879 828544123 324020925 650449081 678547580 998300463 47174571 283533870 814039776 1047777922 76798590 636869279 75746388 105394523 255954186 881405727 247206263 268499668 193724873 1051560254 318864842 75417028 156791904 18552852 633948170 795688036 127529180 601674572 78252961 3024578 745312541 876147298 818474844 321910611 1030323780 709060554 224755354 241422521 1057314352 520492254 477810583 885974875 857081975 935787006 683747561 897753719 751376069 914479557 462384723 645458175 642860995 1045381610 188387835 402635169 335339470 943321754 368150456 636094386 851553985 572262230 905858606 456315105 963151459 478761690 799216070 773837710 970914450 671069319 391558089 15055074 1045849392 574928175 705634515 402838380 586510912 365240050 845009875 164721188 894038764 588151534 300492994 388955247 706266828 938742554 27261835 243815235 894224809 497804367 1061204956 689064814 730340688 304495196 1004844553 172076216 749413092 213607300 595136514 239690495 584538766 863433827 456803879 1000521754 192732281 626442362 831366575 25085070 161832603 969812223 938377013 18695916 814537202 429046838 475803357 968737995 196094745 210144717 268742299 1044462325 1031955027 433043674 1020909778 422561022 204020194 917397310 759540801 167119694 969119058 207684483 765328929 728855834 690438715 901318827 983817788 569408955 399048937 835982158 55362848 237566404 52855212 180349787 1026825756 668132454 760282824 714867454 68345810 854808168 91778189 570759329 178227019 521012802 613596242 529457634 481097553 334191050 34977897 695341723 174615888 68511697 224603432 706388139 693017609 812386415 775572426 139647643 802815804 907659866 686725159 504942352 139649664 64215187 579141249 808365838 206677894 956371155 502432456 896079998 719514013 129615881 970375248 226233576 782367581 2601981 219432989 880582746 973887299 30338192 412830260 376579134 544616927 9158168 518903023 1028861896 486681582 671465429 148422243 288056910 848194344 435120363 2383565 367868661 694959081 560323332 1013569335 961349267 1027973838 345378989 680756156 766241644 320128725 641462049 402443747 611957549 100309942 202919076 793860757 953150255 831334303 494844095 181137973 476517920 626580603 452784148 307818118 140777868 473434533 575065703 788629601 782611122 458014302 281577371 458249912 309579750 123238997 369507318 586952133 830758959 543084155 205128320 501124777 650614050 424489196 552582220 1045507010 420164581 631350318 462882930 261232923 306092343 991616588 6116516 430866830 216335269 3346456 101588867 145912469 114645433 781808773 323545921 458508587 530656228 79742291 1032428089 507192059 235831221 334754250 913527039 216958473 1045537844 105384841 463647762 647463362 938602286 562727435 355342317 1034582662 906669730 457784484 781225185 606412230 679077654 323760691 232262447 358694569 655504067 434884598 306650912 595382639 292848087 692830558 21759400 521383595 672885885 36048745 62056020 642076573 91668838 144664414 1049452433 394826415 759155387 852327377 457462762 245074734 638868461 362323197 303147354 732127134 823922028 202549117 264696124 948283376 415422820 1049239849 990902480 604212704 939430805 384600820 449496367 506114930 978021367 108739282 288230667 47146982 804782155 722711389 658424455 149000090 752356632 701878859 168888131 822089537 677233447 266478241 941478344 851520489 1051259930 694071144 440412463 1031482875 198510528 61082918 1043795477 529422484 1006937755 237857939 573215174 946220202 1018969030 224492857 616699142 487254342 498179099 998123917 240777287 10533886 112559330 1024796255 83224801 325271741 451641518 924587132 773422076 293405086 999624065 429456239 521556908 400327426 326728997 750724369 187723627 30477379 441237746 628170164 473858963 564097134 528131185 963944096 644109128 700747597 672735806 1071148294 317799989 184327029 66476645 1039987970 89137526 1038684669 90261906 699237747 481054786 455104196 749624073 202420597 524131361 153748883 122636846 1028132281 200402606 506800569 938843009 140610031 35347032 841716605 201132940 196668977 738729310 962542793 572871384 974948990 11628536 543391769 730885100 605758496 551769025 809640668 435924880 299493692 400524392 942704724 489227284 323632755 89713290 323571504 249513063 855601983 760280145 532957936 692611959 740180361 27509208 107369550 939121632 134687063 633472590 630642214 619863329 590876150 1016657497 845057735 746785217 522325761 351462943 689559566 428839579 520990799 730233758 181009709 983489933 216619606 1001432725 570976650 622972826 809502142 971775824 121174159 29764482 888814538 183716134 541221691 876941582 473460379 547101394 939948249 790088593 952646633 797683307 962067088 921070663 780255197 976965235 295675387 634147572 114375680 302191440 865541172 958378364 255229124 110913992 553270534 187586018 213925705 643942350 972862388 580221877 483463760 680854696 232177439 227951420 1062173660 511861073 493794460 688589175 570506024 244983317 209692241 948737036 768250165 498358997 536767728 762896165 435970657 956308418 96668280 968132245 179136467 513399065 186894618 571474117 737667708 351897665 968433980 331958742 193856263 946218572 304812645 307096045 391269511 345121595 948973483 188682003 461459744 585109952 621928045 953646088 192962162 59492385 279624192 146365892 470946183 532954049 291499177 750148295 294486794 588559223 358146243 825270477 250154157 1054228393 925440783 577478141 1012935614 866304316 772734163 634710934 1058305005 415349719 626735638 775381709 61933041 593594868 844344372 369967205 464965157 20579386 790782452 191349442 267267778 584711056 452648741 787284581 639240662 38657097 710107773 242884411 64369366 682185058 228020603 851056299 283601515 825418951 650350687 148899395 892104353 22744833 54286575 28422649 975363530 322533719 385020320 258167062 101783108 281120027 310524538 305761655 836830775 697864389 730000856 955960446 883300953 961143520 12596098 42145888 757061176 293250273 384398128 764578121 889855429 557208122 1058290436 17681414 706328770 137533188 212898287 945310628 354379498 808895014 366356758 1063356362 1034193332 1022069124 1038051382 176930133 510146407 366124557 391899873 580122396 1021593857 262423879 664508915 108845098 160569030 754327879 488794793 943267055 280816668 57546473 217114246 232130784 748524828 342687088 17037160 937386842 229837293 1036106529 498148572 363098650 279633080 553919615 936587938 909263524 76069025 515596181 188307544 292858576 437566215 998979217 354850350 818249086 797723106 657831058 623777908 866958462 77281079 1045661318 749962927 938234016 504279503 803201455 618889961 1049114423 771414226 843721561 307456788 706945444 120253155 965313099 750702059 1048425736 539987089 701628117 353621948 430570732 775794498 615548152 931551957 789175876 963929915 1065928450 425079773 146450080 1064206054 830404710 218692377 778450375 749999507 944662356 518806026 110203716 441601911 939107702 524522 1052580632 38219541 982315782 657535453 572175843 27575376 217106606 651029223 997961866 748927168 375625972 653834641 203624719 564125864 891402535 533303000 218868895 690601020 596851712 399815509 617496945 870569346 176830769 676235376 86687823 53855818 278933544 569592926 736930317 994981348 190499029 980884143 921309355 492413367 746557043 580849225 709994860 137024722 388778440 354162153 308297461 300697251 231863854 163987067 614734399 892148020 727159135 452302799 573755925 27270813 951609896 739963724 464570399 547094337 874265564 949623426 513609695 398939248 169381950 852903399 449201362 316612565 922943137 791842740 371523136 644306490 387503287 1071737533 24268030 898149797 955447915 851162295 617656217 138627317 841510801 68170621 947727792 745472967 812421586 629695393 1033197561 398915734 166950535 791618745 950048858 92002232 472539388 954670796 613313566 205201680 455514799 496587035 887747902 905242961 32694517 126145130 394205368 133343720 684172486 629243070 526497219 393997253 580277481 180387943 543406099 158378446 623256094 857441087 623563346 154841226 1009709385 682984529 395803533 934857199 750275742 980439968 196269198 1044684955 91777279 685153085 437389370 942654869 904160153 564024697 314964932 590752693 1015496681 168501872 81143263 321937993 431670934 522087519 318376176 822386058 844076820 401169887 352331435 335122722 37660114 17123762 1006078040 593032922 455033242 707502065 893211894 427763456 573021976 897926936 605605479 337203647 907238320 1055801039 893556732 671020628 897356032 691858946 170339948 308990139 272473372 1002931933 188216824 249994783 602940210 478641945 327981627 156222721 439090495 997701653 190055728 548031182 783905761 491784012 275543508 449095108 922140112 93546637 332564374 671280466 1053717096 577772463 425206979 221109537 734002808 83162940 308625120 499236957 147101808 758571436 195212890 391722845 142753644 183880416 546737192 791510366 824920129 961023436 1024710161 914087076 234739476 658077442 629680406 1064846474 996780047 1006489889 495327375 216959627 315883402 956026954 710454880 1066995920 135367703 760816196 939713590 887267236 625442851 406748738 1070163051 969260016 143432320 866679361 716470917 916598850 342960696 134155056 621797200 174170654 1024383743 30001114 1037880367 130437213 514150956 22658475 285270984 35563480 937697529 438107829 423512664 64377926 968098249 985705248 740487067 237573587 183700254 53125359 172201137 382729068 951020235 815765824 589450597 1002137217 576469978 729797978 714457764 598157417 615177872 499738414 532524644 380975146 924590678 1068265407 211306200 449029389 335297155 1040270528 459434894 566720725 660624554 65353262 909529770 73673980 165253948 1017261734 522995251 1017767742 766077123 326726088 666381959 413778120 112010488 643660338 857235891 128990268 81849262 480909241 197208506 195642520 815692012 730344468 124288327 420814554 619283298 927417696 377546204 556237415 983150931 730901414 980327048 468943583 322710268 257931941 301769687 904335825 368442463 370565144 579702827 139776642 924815728 1027225655 720772518 646155363 600153935 762971920 510953809 678416267 969585936 69455705 269709590 165316129 999154639 751388019 17214961 156102252 503578413 821442939 809489457 673643065 718316246 21612791 876820510 124866251 349935083 446109634 816692994 1039933031 318085599 929821529 246965559 887711558 935828962 87487295 523838129 820734304 118629850 608639109 545113572 739447097 1001919376 760793663 536682740 683469680 48662667 145038977 920782514 232991772 55763125 229183560 652389823 745501953 847118791 746359761 563757002 343308882 615306183 849919532 286724 96480402 435744844 355343346 1063976968 422732526 861385188 804260725 323981034 955131979 163525394 226551055 506856418 917948724 1046548083 579896559 342276182 800153773 144889025 232959366 1006886118 312879677 309438528 150192626 979246427 600506609 620983279 43690579 1014844565 991548475 118353685 581628501 310381289 388304992 916673504 80631603 930292711 288639806 715242687 420781302 1044085542 662478494 248134107 529580542 141173140 867604237 52028027 104520227 314018764 864283834 733013144 910653929 734746281 619351346 760183385 116917901 361204403 513626614 896889650 3827907 384550772 390427201 328879871 200779006 111992492 520649897 1027267381 340930183 426659734 86379988 128920937 9241579 899659485 598781680 244166154 968836427 978639195 664148328 136870382 247804648 245914251 1018484452 1029166219 1060347467 242006986 153221379 1056595686 500648088 898786160 904970860 913171447 639808702 157385983 443751002 195848707 454089897 330470896 639878082 974527944 54492685 388909228 1024121103 373399450 212272328 689592004 637605660 632159068 224982010 498920179 662627223 390302317 149612214 589517971 604747212 21943894 754029295 990453502 264432302 448218051 681709664 988524555 330287362 307962782 438035733 118951926 433372616 481137556 85458940 67080449 903042313 1016649701 126884337 269086886 766398679 923795200 86281427 858075782 217949121 195553400 1033010240 782853789 610304994 258648365 512229903 967851887 203823395 351953075 1041296379 808800703 284494705 551703281 931851235 889435882 683208725 1003570875 386864319 530573107 311380287 121882665 727384007 826620333 667272607 265320113 650914941 187127650 113311163 515235138 678962644 189163270 202711620 1021795363 85211271 53349068 695613606 309771232 256225366 474635932 258148743 919904292 480735392 1039909927 331059020 110460175 904517894 828460379 49261859 274248714 671813348 655754950 346762853 796481689 1004707764 283676214 953541779 19435698 749110728 249306082 764822784 434861103 391518026 632301072 400235437 928847631 1047121180 759826017 769835787 912463527 415133296 690687190 256639410 939779874 280803074 419253491 128270770 705660664 60678186 617755234 114466120 575711547 908610021 311285939 374357271 44102581 389696175 146489365 282738836 963487045 466567164 651218576 139672979 348049716 843899061 1036112902 927517125 610073564 573401051 888672833 387218410 109471200 732465044 760694490 783133912 714612855 947299827 417218789 139370650 527451284 43153239 825598037 870148373 1009261515 517302564 1068462789 863966131 47398315 213443718 325017561 884916463 775217974 198691751 439021747 392272208 162494801 433008538 159355906 167335328 550501914 630901382 404607634 539431588 104606112 724068663 595050824 798858591 1063654097 61766230 869619670 111701132 945529102 58615941 87523304 858870077 241409530 640788380 634748997 638095535 835571375 216958142 608326425 295168829 1064686245 394030418 934774980 863633715 759574661 676854102 1070724629 803815705 837415335 962563833 294657316 593314275 176313761 287746654 395298817 250951612 305536047 544474994 446492726 989270802 1021773289 706478591 707274336 519740363 463517493 748880482 180823297 344794115 848136492 143556085 845410461 701481835 926256060 659177338 166286019 537121495 629445697 81486336 238408899 509757323 186739223 622999726 222126529 1042743875 252035407 29474667 371818990 535980455 1048836959 498661451 604871214 438776977 102929378 323108535 830644093 708305208 289226351 823016062 1020799378 874870050 442014059 462222802 1026175139 678077585 40328597 964343089 229965672 353294235 896288195 139583981 491425985 853947918 356575667 908634528 226325064 271132224 497378753 945586364 427967704 31764701 1036691347 861859250 575420617 23904798 380878957 953329799 575285033 559558159 332636225 379634447 609917394 810817096 959628237 249479577 115816171 183483492 510430081 199769971 616024579 137431317 851077070 331264305 219486345 255992014 519190614 490776882 280694259 1014410427 413060940 31323440 170380372 16305069 525325787 766332187 870331450 300396144 184094315 369982746 273454799 169037860 814470612 663385077 381031856 748967688 824713722 862403002 840167625 955523265 256485594 868661271 222930487 534450665 61027333 459984851 844578121 903827384 859920171 693237642 1003727101 79364579 418658245 378707570 281460218 29038631 540249831 427348291 276031972 448431873 943295880 490300618 350932278 477838462 538530731 74610966 495956841 920896517 977399807 69895027 1025666286 659360298 278269272 751255676 266783747 24791813 466570337 20477584 737619589 282697018 726518451 1043672243 338129300 207880874 103028246 511799626 443073855 705172556 366546784 1034940669 462247513 996157280 449066470 508249145 348938692 276535295 464907018 838608569 735311254 900851918 682780874 258297027 206171609 340513741 792020768 381319673 797239840 489520988 28204431 345373138 1001145575 582522902 630366483 773888355 919461538 369498186 484881632 535053685 137724891 924606024 81802253 163381393 673723532 697539517 101345885 936269216 520468378 670956005 394853995 1058860422 610909084 699507594 3899580 692638288 118687913 2107177 960704251 310459742 700723898 243462194 857817455 707179135 968760604 937182031 205770179 890907246 552470232 874788639 653577992 598016552 13497319 919373831 554649841 404750436 788083671 812936971 610290862 806370129 352099971 87674231 765950131 733171164 973696333 667729175 462667493 979033073 2417522 839444792 593492314 71861305 1005058492 1038471732 136565928 858506783 953051025 459172927 763306200 90626142 850773743 228345267 1059978900 632404486 951808738 600653516 846607226 8997378 423185678 521440579 484521457 65035832 4497576 461909269 621400944 273236809 744490597 662369871 993592203 382309807 831297137 265065706 376211930 965436227 114221877 556799780 108610592 245621232 866755098 365165723 235816280 593757901 606032251 443514884 702120653 344680417 870634829 980793988 630436094 143963537 646419227 1044305477 819002650 660075632 1026594022 1020537513 570941082 172529076 46951556 762790709 100728977 536790750 348573137 52064300 392279792 540233097 60534923 376676822 852872687 120574374 449723575 117535260 955637940 925660067 526698496 382585903 773753076 824341751 810854738 1014350877 70502453 751230517 221770415 848710741 802228112 30068398 583413152 525611420 47787322 430649507 425559433 590414751 145122379 602543360 90585272 495164356 968094576 897155552 275427516 70229535 459063510 385926913 213700977 603146790 860243442 414913559 466584432 654951680 27746184 376734626 549862714 327613807 521454145 68031719 12184494 34115634 1048423625 448682787 552735315 874400245 96569305 250850341 979167287 598107498 253831174 520004693 448386140 140246033 998039016 877893375 629820095 858636051 596670754 317877725 346042683 782380413 1696908 399812248 754034152 651176632 554026364 290641434 157344798 391194166 780226945 475968276 909750028 889622806 467410935 606339710 743700130 609440677 295527246 21077056 35770463 879772713 653463764 512332800 518662638 805180406 242102384 971118009 1059192514 726167683 844629095 774350080 589796214 178179639 683823118 80788585 448003077 544701292 41210226 213227426 29401068 154823505 999595594 583533509 619244259 395545254 474194716 5563808 1041407491 909988363 1056953070 450310770 899409722 957807986 708876695 652066334 345727399 91169691 430027697 644575899 775573280 1024824921 696427658 345190135 906803159 556247336 1063288805 460150465 794025954 549080050 858067661 263903986 840222157 746128600 821970820 387838003 835726110 433166997 896775871 145784338 59527624 1014925 356349914 421040979 68479779 640021064 25036521 691586066 494193134 618907823 285606203 1034309355 635566148 746327430 786642371 213343967 487416163 449589092 325144995 400522317 770260286 313957766 490870221 29509628 13087714 1047486580 1058979146 51735022 962656608 37945680 353122276 686873493 339756870 711189166 76654199 868507707 556133555 5722825 571498348 724686100 665801031 172943404 45292647 232937444 173550860 573845689 680696363 568326002 12570539 65007381 966689342 160536119 895203914 7683621 35804442 1042192845 977600783 743579809 50790480 61371750 415676712 417212085 816477617 37611481 756517858 871032472 926377305 276701246 695132908 122447989 181075659 989696916 110989503 497087224 63396630 421004674 172655637 517874898 226684403 166541981 422835064 42523215 507730936 377279923 281075391 23962958 939099254 140618412 804186166 869782841 172533226 55920400 999398247 765257251 43098755 993824662 709979439 626109973 943909716 69729495 234501170 427968940 237345165 166947893 86177952 771838344 181478635 163213700 914093900 197872714 188113370 321754387 356855988 954110518 574833691 802003304 88301356 322214929 781576312 251942279 326153966 704156352 8946630 294812017 283233424 445771933 934010538 545391244 848321977 538666822 237523588 1049473782 377751365 899208344 982627041 807517808 575023198 163043429 811180160 195969210 474926743 491419787 967884698 791006068 930958527 830134219 893400889 925299010 557374527 1013672076 5515722 639876458 330384972 208978910 307385518 38104611 994086342 986327339 815370692 152107316 302979207 544490961 915878119 781836960 729875625 239041076 159187988 919481221 584094705 673191729 982103173 811244906 93248765 371774075 86411556 466882264 908958146 520420828 215336539 249789085 77094198 539349936 470554757 75449556 82874561 39110194 560066785 945521348 737914520 183164085 222675439 974624251 727769555 258587035 69406748 768977045 756890948 151696740 820827203 1029163849 80014889 238304645 298315864 665087902 567787755 847932014 349944420 537446994 405647261 163138758 14942934 422784634 145972488 246541087 980948542 973348611 143663503 341030550 319925853 945163629 160365305 91854283 372648599 937840744 789625436 528639808 141022048 689460212 796164388 299544789 682616665 780881656 415324625 825822936 923997992 42778653 1018197705 965364938 318624276 810558613 1035612633 351118426 869989175 145803292 84021179 970880412 783838545 818036205 336159060 857103957 495706376 483666723 273995124 35842791 565388440 710811179 914330336 82951806 927460907 835360186 611922411 313695498 94384915 44048654 716833945 144127705 1036522192 16995501 238160677 462995767 589997658 44958765 486730582 660184432 145944624 667188329 118718534 76193715 914730577 160099690 461325803 389681128 12132421 774077110 837315488 193186679 43953837 77055136 535844185 818939442 814741480 737502812 64212194 886924159 211878528 298983172 231849126 305785298 973455910 686001822 268630567 613150564 840908705 312403238 778380636 874672223 413010132 753654633 850495629 792786015 901168991 350722567 602148626 680404279 455486921 704835026 281793361 661227515 922164085 363732180 110308214 82751070 700735717 950954460 893120166 308467745 227943084 176185404 1035348404 515465411 583865377 80325589 947960710 943254698 744680965 575444298 284929636 595212568 201058823 7972664 44197496 520743690 138131720 648710049 700537841 1013181617 478294589 228102644 1027773415 627132476 408561018 297901996 493336380 219535710 10052861 291868158 176016440 254006618 1050273255 847785695 789788861 452257042 553996596 250234948 102649139 342933111 841796593 477118677 218925735 440401327 1019440877 772925397 564585293 960627970 99914199 678166972 386811111 954725827 415745150 160370374 1016019481 595214853 774057073 134307039 7243470 802991404 844981859 224706636 805295624 690449475 469651371 1005426954 483509255 510698910 430982446 350070116 958552728 534944308 230597051 339537693 366639835 856448561 488057024 500499689 348632142 474458957 25475061 344918924 284317226 335238540 573656450 96121409 1022396703 989423637 971618962 536701466 486899242 481530129 248755497 1028297048 652477842 882422749 49932507 616064825 457041302 435416549 168815535 434839968 163448166 747389276 144102178 149299657 746084363 656922530 484001273 60225693 728301562 54517202 874555984 719612390 254111366 340653713 790761928 181983566 87478793 867175306 892952874 233746617 990890385 983948462 413150401 259390521 298870987 741822537 337692905 965218323 244982649 172899644 570912339 610003144 878082390 901486935 935623389 186993067 545085257 353171093 184292847 372028693 421009683 490457349 960500210 779783271 447914608 453627627 464462278 942008617 361996257 351592584 941450261 729305005 268973521 452140908 87772580 1040765955 274179547 609452645 641668618 4076297 178978444 935695734 517320947 831775362 725615220 1054634053 411151027 335194077 333313792 439929002 1012053988 533708042 999410571 838292848 5148676 545732673 639083828 898933321 864758421 219997778 27150587 150307094 1036502911 747868881 893055924 501730706 248809820 52809933 910625940 190090926 215422649 164457410 625010109 952080695 727190084 733462751 537110836 985695900 404511285 519448573 459875239 996198792 803997364 755510149 688454902 183697370 448009499 236980098 679529452 263658804 503413337 877070598 268669322 305598046 910981971 206015003 88390696 332917352 948201530 576953698 1030672378 482200661 923889014 430313394 522790864 433996526 349664728 1029932418 929860799 1025578826 458650825 723012763 512724015 79599062 968598749 822076972 970806859 131628955 794160418 604693960 199534661 700288958 707439699 224285969 344918002 33657063 153456079 490379622 890906202 1034980895 167942306 163278925 739983767 41527952 422572953 1065222566 819092539 698031730 566235060 664376579 32262423 552500490 1039629113 947143482 746299031 177244772 159549114 903551966 830688171 585307380 693763971 799480541 500889622 122297812 325093325 5007424 639381955 755235128 1041121935 459469784 236702109 1010150136 305394782 249536283 250867435 310220059 363419779 133193725 787056177 848012923 1040351115 865776434 63162784 55358322 893819933 664521361 149562033 883938293 337778082 449998936 255227023 237218374 436799602 628549225 487919250 652192430 194915465 813015461 220490357 305266077 827912418 670086351 820368987 995444432 286317436 653947623 311596140 649165103 1023293891 963446729 442182072 573081483 917806447 994895188 805467993 538456345 138086208 648695802 573525661 999761225 99613612 745226528 1032580967 815658764 831221940 442653918 1007588707 804878483 437405845 1041363750 282519213 623635807 143189816 477843450 422536940 356675944 220584880 864917311 798605549 21428499 702426294 60201415 82737047 929236017 308338253 101822599 872360737 548268310 993823130 223413062 585658802 380843672 229502779 252219613 560713295 411878525 600424923 117777770 182865784 744201573 814016088 236989799 60224844 759207780 374632406 811244651 293251743 324218784 342696830 1062967346 395146939 941853750 533269785 525274283 390691189 1030610242 573879403 947097033 237434044 298802708 756680254 311002313 1048547023 201968691 232016281 209549422 482113021 591399280 346872470 841393922 813134340 895362125 117401464 348569833 369066767 823910138 192821510 40600452 933922993 242626486 479566285 1066582304 50291816 396732814 146169914 147447326 896679706 544130373 237954210 986317883 63023748 205353485 580563328 620311222 711219287 726629734 231713017 324486328 576995700 165513322 537629339 1045645157 582903727 916964708 780275632 881109295 482932855 43763142 185425080 871440838 73293356 698173105 2798885 175278493 791665549 888348856 424040938 364700814 944767037 131316249 223359478 3992750 645238936 210917498 188652767 118354663 42739063 615776450 894061566 22795918 396452748 1055263021 581730753 234044128 1031259294 31519484 864991127 333789896 921879223 413354741 62593534 743337156 928633485 652377993 940338665 398724309 471377353 229040858 118655858 559568217 769261113 650820366 549724499 54093456 896417882 269446552 661508017 921762565 962625081 923797864 689961922 170511458 806857492 156826784 201717911 1009536030 134512171 804240136 862122935 412488218 658685344 532689422 992910240 67245517 628368163 845388675 117337508 500163562 637069808 404222631 154823521 725300252 430624271 160124039 236992327 1045624946 592717078 790763308 226350627 400792180 381582124 169422118 704517267 381335049 153144967 317983740 682898734 108919855 1070554900 566158747 844858605 1021076338 569769330 664538796 821035222 969752614 69695736 836459362 207856225 535430309 162440683 483343396 18232498 1010615726 308225054 24945364 770434225 1062932488 1032597045 805956344 130617961 121659974 144602297 503213516 801828356 213943356 722770392 229457633 105621257 384752279 624200282 302025685 203382021 152819250 1019595732 89811325 261618724 1069457020 1024447815 547221105 144012813 564354396 846723997 133327263 706056623 271575946 929140219 514135647 638594825 387374740 489706060 361171633 29170430 684377582 239494831 312629546 176028861 666278878 209119311 505768253 614399730 551319721 584900117 105091832 382722683 290914279 652473816 847184647 47257323 286933695 982317404 51624366 909696248 685649542 233529851 664997862 737288421 996385813 1035540458 506949044 23127193 373705415 946328432 1047025498 1037580878 520490207 223336422 136689419 535467080 309533514 707072214 144768786 980470707 588006015 993956555 811489731 262644817 491790990 413261680 854941588 393684427 1046165417 643573690 408185490 321181044 212281642 69940263 893792888 259080301 575374565 34826805 553138151 579003527 94356840 832998903 1003645787 253320081 352790135 189880475 309046499 608389721 58886479 179180135 303724302 719813064 720964767 723898129 676751686 186125738 530431743 765112588 387514665 156215963 726949136 647187494 1067955772 112491437 871935863 480825957 965411962 645444462 297006472 300042753 41130034 671207809 880910244 350072981 712280289 375284811 1034225750 451356072 874532368 216768934 432574525 838548644 454263952 118997125 446907653 710352962 862336050 966900653 1072888439 243749281 361465630 768721996 190329179 171965195 622377878 436509402 137146333 280539921 555106327 449594240 645138297 449008538 865021890 639815232 1018725442 1004850528 200744633 915440744 533420372 113940741 53074606 559204027 759709526 24677855 757443324 493632472 305235025 10210684 810745190 78951047 671725516 614876069 150544864 1016228737 202024666 129565029 397549506 660243013 265662057 1010615432 378577955 598737546 971049745 106530021 920263915 45860240 54800438 156818960 810052237 354366320 614947699 942854137 251337174 836698203 261162104 907353767 492056377 313812082 28345276 366141090 475720238 201134256 589285171 842569796 130663549 682731194 160222663 470948342 283863610 78909495 1045385674 253074646 234412212 480144534 627646150 939683345 970220148 188436125 716252711 914517491 616421325 539715885 74813824 168004064 561732338 8731493 487111179 432963658 792764548 1037046011 1018618643 508250713 811524111 81049690 415006008 793498156 568837202 274088320 1003415229 345929324 314394196 427529457 695888269 604304835 265648790 422894457 531208080 292177373 312749210 563009592 322678675 438637722 368261556 580239116 706459339 447335213 59666484 497885589 69641717 241583718 603228747 387082111 292932137 242212289 432341151 442296930 901647943 218814252 505135735 486541696 170247781 445254592 803620929 283573889 493553407 103424529 771708642 4053465 814357829 375367671 952028314 1012965340 514796168 72337217 379470390 754352012 759178135 755605198 848741568 993535103 390132037 3161057 953539772 653280487 428373842 745170814 768224587 997909085 43135072 685298627 13834658 639621171 452095056 564245055 710556585 1013840687 811105383 734951280 536735817 894976784 96267804 779004458 25743087 64015298 46151449 692432075 610773965 308277502 827449894 282558465 118710720 733851098 969815316 876409713 938123386 172402480 1034256816 179637117 232986553 375166084 192482786 630516124 59331070 794501247 189085743 851749196 107937086 981904706 110378386 773902873 130031912 147181936 59950953 323550347 489501025 969908190 140986706 274925288 84410182 330240397 380801859 520686084 457997876 302005163 270765250 55345019 314615786 659000764 438063034 365654392 1011397687 729908135 1021650980 1006852921 1315588 150289951 889843749 331216620 406797840 349528988 631790415 117541301 445415808 192306561 756324483 450929732 195116734 278474620 676359344 451777890 889996435 716215097 375213693 254480318 348624915 637058100 111397739 801692901 23872219 777863704 1057396455 516368884 838311373 1009398628 348269494 538421928 303944696 782890046 148216800 112276660 1019066067 258051389 672644044 134883273 302130264 234167026 415307943 745128059 626662714 1072300416 654018243 419912980 898088178 371492924 510646172 130983458 901938217 22020304 958326903 295989888 679134482 370392011 354657852 145620195 969155542 865214437 768026890 635350755 687902437 867389185 192108016 606481774 153924023 691618581 815907266 379229625 738804158 164596783 812967310 96060877 691718787 845097598 746150843 569954871 296374330 1010251000 809888578 67493737 387591827 953432328 525314831 606398712 1041012400 268459959 830436677 927236601 1025026776 823069077 68683605 854758615 74866060 759357954 797052550 56485636 38145536 240615281 836686453 162970900 745915470 1022758425 498172642 528849277 110280339 299572610 772595790 763645212 746393832 1061689170 454164538 538732730 602006037 75544173 988467556 645922347 810427332 313478481 500222632 83955483 619958899 838201439 52991658 784449007 331432180 184542001 999986621 137343296 681138963 710096174 347308008 563786994 81000624 731837274 1067214526 475917708 182263851 706956008 971110280 1044302536 1058870044 702562980 318515968 1045951359 589666557 260681413 958046123 294760113 145896514 973811653 299960243 438839239 609017129 186666440 838998100 213344985 243475499 1057403637 488907828 108509918 687174623 509275476 684156726 676153396 64201317 148577531 462900935 877000631 351046631 862801330 202832435 992726027 332222301 526966472 875458366 468037143 585062187 327750256 66193135 964929455 135226717 706761784 711677235 644641349 1003967127 586326602 1018404190 367846199 103093485 148131175 287345873 160193065 621702682 560943089 861291394 273084317 696113479 904274134 695529449 87183615 367431597 411075794 718126274 934005613 587693291 912334837 611021991 734458123 67922968 1002253324 657031737 214332613 341329386 575764085 815810242 411753290 589904098 925062004 873253626 250043036 207979138 2581474 183719110 932841767 860204181 712077176 578630361 3543696 228607810 231038702 300512556 871817252 886322518 1030091725 889250569 198971942 850213764 765663126 20609855 13998605 334568357 591371770 730914112 21639401 195227833 611621788 331024845 360240347 216504897 659518808 180889948 674499458 649957182 172912012 106372983 869390304 381656560 1044537075 519913771 314891466 555443932 286871865 1008840232 578269855 656392715 866641220 567512405 705863167 856501529 734298389 520144325 68234206 926822478 493975761 560474473 771692119 312888200 1015425987 562889641 750213610 550659709 911087375 648402385 346082869 502898709 299359952 990863802 906471365 1054395960 28649322 285621485 54233448 254286169 757402814 1038846278 144959074 77929411 746134340 588242690 75874336 702574814 564089004 414090687 815817615 970080282 411910698 310158311 187555019 677899880 920670768 647532615 1068767440 918260091 333039447 1044038144 1027118736 122875388 364737761 665468587 348685090 801036838 550496988 346901957 147949930 864049619 179735475 932771245 560598417 478239704 66352332 774074264 979688042 493847476 347225502 493458785 950769580 100087411 512580620 217925414 982528445 1066606691 929317228 692547983 937367246 447513936 724069985 26391730 938365505 536349351 274690958 781008601 127321997 1064921318 50553214 256661148 1048254509 362831658 804572955 778716130 510663665 979934947 790318401 78914707 685568412 83658523 874385013 963862986 302148787 435614625 251183013 1038535284 558329403 242260625 211841847 348018342 26283071 405340893 252723325 619117221 438240403 797076254 169826956 591934718 150370152 1004334493 331369144 171164368 620550581 797369585 783872381 797897901 512169559 935814620 92699094 958736573 26529959 363668878 910480195 65981066 725453865 235848444 132308292 732808104 20159147 377784504 444831441 879496273 452838739 818260821 257723096 946526840 368954895 378400899 295546950 408228912 44801182 851949476 43750173 271036337 92140428 934603012 445262729 1019157566 346818 303624940 601694372 454493250 812678501 106756183 416352715 239268448 821037907 275552255 702501750 58417063 605585644 1063208053 691055641 182916854 454421637 1048732060 661976950 165959008 143707699 192479753 404616899 108042305 196567312 982900856 873046740 931003869 653829868 745931238 499640543 223941730 321468540 802025833 148701611 758729344 154167018 755117231 398001493 644513600 433327690 740888905 204403812 404253365 286923160 588353851 514184403 275955085 12880944 575577385 284153101 725631582 22406732 843678202 622876890 490251827 580887632 77032104 408742227 433606718 911319091 1033793505 12795835 393292066 478810500 581150530 776187673 47103036 1073192214 1008437521 937422833 653297760 546922193 864455970 998691887 704597700 265607813 348264743 605222426 604599721 515119301 305602082 973798084 960947341 283373061 842010548 376480240 449145359 1020278838 550821583 949934450 299640542 1033570947 127872175 831997667 374276170 11861931 959324806 432930473 642356479 241523337 379353039 876992212 378065410 962583341 949921168 322979558 505039614 259828751 271626750 594998854 682792236 685946657 987165981 829341241 401042909 464807344 738411515 1021475575 16428388 445983421 962703070 707199682 177555987 768675067 558919428 885949463 7842881 487617097 1069958588 533397227 387894484 485218841 377656427 640300702 971909009 261345524 971229632 726006930 167830919 316649488 186707780 959452382 185018704 570652275 119909879 650534585 1050850478 850576173 5650856 836295561 46755152 916407470 939627025 410646455 539960908 939901627 497125652 387560695 163868792 817131789 689649467 442322529 923680690 56148547 84405536 937744218 280758120 987581171 619414489 13222301 244694620 546110387 380274785 693006296 183284735 28739669 12123031 612030464 698344998 222507476 525918188 1008835025 271150239 910228751 1052671795 292154931 990957125 134360823 582691554 372420110 606379236 1021348280 527996332 309438220 861598028 405297829 930014045 657817016 959768558 674888116 60641875 283192891 893655805 132402007 78616667 455207466 322326644 301530894 547645111 537246473 663363824 55809912 605322482 909972330 262233010 1053832245 79300824 257020322 309083764 841293548 44203172 215606573 1059081739 430384728 516564894 988970684 28268718 637125627 1040296011 395220734 811657725 610480934 6033914 478185766 42777099 751199227 473340347 458759092 201504538 509124672 887803664 1058076199 193304699 854457870 157286230 1011158057 1051373927 1049911710 596708400 965566614 897872618 952697961 880782990 852209674 304428013 678734375 886713208 100423990 641590227 795144769 949845821 574397605 669134397 585492872 262273454 1212987 249164180 25283903 793598400 469610423 483085759 77225613 280587026 595939426 735984018 76524177 48470276 909088702 696228210 187478539 513772251 341153860 823949690 73309969 282528746 813557994 181005105 619656258 209081887 90048386 339409055 791362394 805881890 148155705 789595076 225332852 25606263 758867347 369436632 939344535 458434762 1026785090 974416617 322732595 521507939 650323695 672797778 912634591 851113096 276269004 855284157 217525779 644403298 338715663 962217918 249553588 325229602 489857369 686730177 833675937 1054716672 1043454309 109971256 9408492 380566468 597692008 162113005 448425054 78299938 141362363 126515872 429807618 36598051 1012541586 79207923 592817001 984563728 489058465 168461384 491269351 496993899 28919175 993888743 567242976 44310503 568243867 5624165 1049549408 792445510 716380559 108902548 18352923 42608182 693126176 1052715578 652928800 285124236 679145617 445590275 501756512 672935184 253156812 13190675 553854898 623747886 626344547 95370493 414266334 1011672933 427777141 160544997 908948000 312854090 760328522 544407770 1049486258 534697809 730029353 239349853 105492796 497243545 645939795 389704587 792867741 820019232 918609906 582851993 323396110 1023674748 1061044146 401146920 871231524 328071093 92598509 553759474 205527837 316173788 420004961 461139092 71193790 93406452 445337052 999599342 29180883 121733816 721231696 563271997 488026034 119286653 291538966 339848759 3060363 1054313180 595561033 787176425 474497560 480808182 21899266 433876277 340389039 237292460 659305510 518193447 104148489 189455701 851831089 878104003 822574832 848744201 480002146 202415316 25550176 837557235 746262417 520399017 647023279 812309279 73415808 958803851 994828171 803762055 788969817 596807722 797157230 581873311 699399797 406337017 52189989 971117638 609338880 435842520 362274563 802718505 499663062 587683756 486355851 1070733674 135119244 99418408 337192358 623284210 928881341 234960491 285797426 74099710 496318863 172934602 945272752 336404530 710133054 758119059 796613933 264339756 116201181 783540515 590159501 607099101 1049915387 427198823 735857666 43828003 404343118 591594036 484957648 725122693 640453131 552288466 59120140 380617538 1021720506 809836755 740765814 164617975 385989628 226111012 947303993 955436075 533693324 111738593 141108279 945332352 979176522 90810649 196268565 94013045 345026247 129575804 97397351 427114232 63675421 744053246 897555866 682348415 1007711762 497259660 331927686 808076362 68600326 404358380 804650345 468024992 637275002 611653309 998823997 495395363 924912100 19522245 744332645 351993354 32386909 81967597 478872995 921423838 184018646 201814436 554494178 1014688344 207718149 240257588 835288651 70844005 288386907 556573348 1042937263 1022679309 585035286 342669129 595988968 630366721 198084805 874483342 722518311 991118057 316201718 1030281057 829061955 945524359 839170189 396293014 991403075 253118018 69566475 506390224 119107645 51519463 483085905 522887540 367795403 649944123 889170929 320448514 918492471 566348243 979121219 485619680 405543080 4196829 603408136 615906104 999821117 240102290 1016870836 421170982 899828830 628994982 543414950 258233526 262266695 533040531 394549813 201084292 673142532 158518563 371865158 1052292975 727262082 274485254 629803675 628742612 978058142 781048051 2507116 247992034 78434657 205441166 302241931 839831275 122152144 704164664 231795314 479481536 440430600 452871821 169533426 335440170 520088634 941437431 880781907 707648349 248653204 1057204873 482930792 924215513 139689753 709623178 471191567 327563180 590664943 1042945115 924042023 519006626 395204185 230879855 50484535 82114331 349894415 445844608 220557609 865000259 79772775 937636459 603602995 1014456684 662789927 436744931 494174915 347109245 291770640 176589037 198576441 391124123 896074192 188849031 709114287 680846303 255544957 250692151 153803567 1005262282 81470315 176698738 61410015 345272371 405570655 978621434 709733386 176538119 307884916 605892960 883980312 871390032 248910894 760672130 543744456 345926537 1051640113 8774652 759262984 1014980162 454752415 530425537 940315912 888186395 720492595 1534845 381717692 74866348 606093092 562302767 958080650 222039384 479636394 318851593 638816547 643223067 714064497 127059323 996021010 79374181 802438912 349825791 823322508 589923080 183229771 836762184 59480260 117996905 692997723 339181073 621891469 1018213158 182286035 506840965 685216249 899075098 196888722 1020128945 521339592 836973734 1044616722 390812035 437275482 185733704 258632393 99437812 1008079806 902636193 193315230 449926448 854105157 793240962 768686076 75830223 505880537 1000390738 499858801 870076713 1062868318 944604538 738312506 238949150 555930417 74297393 472096299 705109991 769630406 214742272 612882128 429933007 406048946 614051343 907160530 770323866 1062389154 553922802 332260674 909160496 390577089 955539732 855989787 62769141 378220694 499152066 725850704 300747023 189747915 926671276 482006056 673332713 423917581 530687791 385711443 613241613 891937979 261092414 46521598 570568706 812924037 765058442 114288866 295154623 759177279 1051741733 830819630 649528570 668678911 760757722 1011224980 754921260 72535534 428028363 2686810 428272773 984864204 851501272 654854387 831576623 734064534 910712598 627667797 337749249 434218422 624294622 79009695 868570680 583661295 920073057 205152531 982260036 28614941 869528459 146520785 57932513 617301979 1049945368 31763024 428215389 62603080 946193247 543832374 1005705802 804614863 699620565 414090002 799298913 815898902 554151544 338956021 481647979 527078388 539374027 307399208 112954897 805560033 744643485 615634897 376590298 157486290 644129409 301882774 592423340 511332638 299320032 256966914 343512863 1040035336 96727832 977683868 824822560 103245045 756961896 203947428 797091670 406252448 549897740 840910016 348518563 223984187 353799672 416792611 561400635 889825133 981387023 728307369 40676104 582786162 1058408072 1050114948 172246496 474606933 952871352 612868666 839130695 694717886 365185861 161505486 771106239 911416905 330651258 43443383 228309870 111250044 221721618 2488127 761041447 282580407 762994857 44127083 1674332 959446846 291452876 447807130 139291166 685136359 423223659 768738237 846632360 458791320 113554065 215624719 995419997 456105953 386171675 404144388 529133890 861939835 354535536 1001914212 995474148 488498595 289414707 417313468 68002663 284333175 450384272 597397706 875105314 480388367 208194130 129832461 858130690 946568074 365561190 550576614 183324971 798357978 838996313 531538113 439264668 1071848976 538143748 1054968980 872579246 235240923 757125879 514655835 710358189 184778782 420399830 5859089 833946059 555774616 36443026 125858681 490158917 539164107 198212259 926940649 364330625 822672159 341192748 696078726 1018960100 696287235 926338482 718431188 421397594 346618471 1044932084 471629044 383074643 681631909 688592281 928474847 694883620 637125523 963263593 300777565 782900405 614248919 521184358 737079657 207282502 318495002 961020749 362357241 727814958 488341461 885641785 372747876 392269035 722707607 902040879 445943952 36180958 1008470910 247487123 826227269 887756933 194570911 966465567 227250815 789547452 283112789 710758758 487328179 1065429939 1043255133 133314074 12240433 853109137 636779638 567676765 642466824 563690501 416233149 272785253 147191271 721604766 644248265 213529404 266912467 131429794 749513038 935216903 466634332 850377655 382770724 262950591 188532414 480807033 283381524 589246318 188712734 100213701 832254149 665605386 440270098 246910102 1053608700 1023045109 511193976 791240146 615765609 107368342 62550687 432741899 707922362 141453059 608184787 860356370 744506404 1067521615 664722395 649691360 182615683 360391344 659982002 969832675 234694845 868220142 682052389 46030675 803829291 1017337714 17030098 317826247 566295558 706337469 998056850 103795590 137974378 683906883 520431849 680186868 1012855640 85233131 905933338 209889455 38570669 818000679 112389328 341261226 439304192 1072707826 446749437 858734119 663102488 179017279 40640610 1012385839 673190012 960880230 1062830619 176808522 899788818 745647394 203852829 76916303 363819303 1065515843 554403931 612366343 938469978 969275451 690023941 952568743 410621843 115426802 774292612 937187406 660896514 386240845 140102678 879717186 487147911 667933397 519971488 365119316 588941789 171778991 465020553 667646259 291574956 477304352 767071540 303998412 775172235 547923214 497301069 404275387 358041509 493967331 633388908 114701719 821675581 412672577 1068065163 635889840 522415417 180247860 636496590 923355396 824182614 947613317 189987949 478095650 135902677 900021162 127440802 660289628 266192820 642576373 196351211 892080716 125647381 444160001 458128635 143723504 355549007 152138943 457593001 971334357 223221632 292547169 851913462 53262710 682812284 98979607 141629763 181860769 639902116 98138106 376411718 100823989 381634317 502158382 690219238 271568347 429075718 519358082 346013133 256492360 619672264 910079306 996268098 221509203 454826387 654485445 929535530 730604740 1010736474 389817580 636591536 959171812 630634668 800156640 22186867 938405589 279562126 1034906793 113722487 872253013 556271689 1004538018 980597026 545208453 614641846 986959733 970606274 999006700 656197072 914585506 17690807 51325033 492534159 604797475 651851499 148621850 1005583986 4769378 1008057346 731757668 211244713 143863741 667636160 742810014 233771314 458875667 347332907 759571887 921717114 340193895 944022200 859225593 916968837 235585464 1032139396 98575700 95288663 993201396 245133911 124367237 187095372 1024241803 94631695 7468436 108767060 398389316 167673986 353966791 1025488996 38415960 80099017 138248544 496601806 491534036 545656748 808162272 967186004 334371449 372176520 812124088 385146178 742500914 531347262 455295342 1042849360 845383442 7033344 993259673 785098349 767931083 912279128 894071122 284491535 74493582 677662456 178191622 1051196230 496595164 689921343 779688993 674464599 273936980 1064836551 92094784 235116892 26695346 519131063 273761319 527410043 861301835 409936312 188367776 497753512 841941182 904712833 253841040 691566174 612282548 67575204 530985342 647024814 269661932 96896453 615587513 412028275 408093205 255333327 962859452 990694963 812680263 205842542 1024517448 40894666 164689352 72148389 785427236 790638679 36429843 745508358 669072372 268330922 890412903 430055764 1044251570 389770440 308119941 796011161 259149485 928168699 836349729 747842358 556368705 201398939 483919553 407269319 188694645 936895836 226422107 535517965 865284901 358383398 408976727 792568831 215407816 616229555 120738790 411534881 716149705 940545104 892166128 653088440 267976967 631416602 449529727 947858693 1065618732 256465076 281964946 188423726 48289172 686045253 901384761 519959585 233107840 770785496 310284094 411405914 1019841384 183598547 968793035 686972985 836896855 908583407 723980364 879123026 428921775 758875923 1048368995 501347020 738811015 151342394 830410046 875987849 201339978 684139747 348186560 660485285 869616414 301392577 630659199 613471508 511937560 404028818 943119634 258567012 634752884 895522277 112494513 188855157 383051561 998628535 219039419 808510443 778534995 387506247 367787413 144105182 301896850 1012780980 526224583 773108599 739780583 215795622 128346621 720568866 533581378 5093718 597862228 945427169 256100932 1024574367 572366202 609748586 218054777 988744029 770234166 320026379 654874400 605400877 808202400 338057877 1066140136 629409899 745409766 754570020 878844947 986088347 568004300 417530211 402966818 523477345 545589505 232255799 413628118 778141670 884005917 328415353 892255046 808528724 969584804 153383679 832984027 421433006 526182204 483691679 900752711 308539058 875941642 397117693 159224692 527845956 348518554 677893080 85249129 420965727 560677252 54592652 871376750 23304558 484801160 298224500 402656138 415667632 1060529177 565371855 675688649 411651036 186702822 593891137 835396724 470307154 614742674 840679431 674878183 406932878 244838583 538379276 26780205 148133227 714088729 865205217 600541055 72032034 49313165 187262214 70564332 308813716 331890720 1050971217 713826432 374869651 367699716 565091035 165663016 479537095 653990903 127570200 104606520 905931350 961372787 1047094515 189218197 222501224 573688702 611771604 916867544 753568527 181316035 161572441 99240752 125808389 1027973520 962507881 427047654 432114969 485115307 218614126 547032459 856715196 499691336 1067935368 965162710 373694863 166743295 162632635 953115040 798647057 776253208 419006248 183279597 97115869 698056421 24242430 507063908 904509986 709445785 155169479 706431970 119871500 111164757 778917635 65088116 67794040 856991097 202664844 385846495 200082530 693178033 548463294 195985844 641617706 212393224 374670056 37631065 713150251 826554668 574369346 993536704 71588180 100345551 682665824 113491479 776299301 591299249 156103239 90222986 128962409 156478532 447023798 1014823153 684843591 469017385 930032593 169228784 772521022 712492943 967712009 760978908 195581164 592768928 288534692 897516943 187291894 197476429 1065641574 210220842 379143547 893363305 773273143 116936898 171717801 69838776 826621074 61827940 229140283 1041488461 555124267 161562696 1013525390 1001290377 865778533 825500118 465571437 208252930 469816401 887404505 296450449 1037290081 419970327 627890320 366245444 239723746 749572981 297761859 260373621 648601141 1027593976 249799845 41078663 106842655 968721172 453734100 729386711 93356048 570664830 705080327 238385255 985411044 356047760 478453578 226525711 952050773 120336129 988692396 53942293 731889926 808423713 683471486 308895631 349948240 616443122 365087840 324301951 686335821 160773832 91982885 947276950 672624407 960299401 839990345 789311290 20391494 457691044 573094754 284028630 384364457 571400334 958475374 966379144 403589378 308127931 480041927 166665929 396482395 138898315 629429876 881151602 528817398 186247692 773553132 432712587 155593341 698407597 677055124 376470934 1030430422 1001460122 351348622 108091978 722738930 95740471 299032188 1010228250 734335801 198332557 355842348 322160968 437197318 592275084 768430829 211584874 612202080 103310173 878324221 341263548 748866232 551494215 861608458 386185552 213748130 619230334 361291494 8937051 805136130 916304074 975212923 240876548 627389638 417450000 477121864 208079881 165602263 73486181 230368240 1039390713 473716947 628925591 364277916 798628285 365574964 194660455 816827380 641675202 872872671 421838016 1070590858 610334953 704299402 169535666 715660879 376004344 551169261 966763030 1066734266 574366817 686312004 563693817 603470471 897648961 145251540 109156661 928075447 877242556 152837206 671211742 582988788 972131605 1056246188 218096750 608388118 310927086 424215116 82518152 700192101 91577289 413548051 885178376 708565672 1066481782 450376758 747417660 536934507 357215594 753938839 646876692 794107381 979065444 254350596 902644551 58578342 416858791 885796324 768489301 571232307 1000443474 247422476 79586492 249113995 542534144 455760728 908640758 540239747 1015480152 397948349 174641902 6456446 878698108 930555812 388254374 961307462 1059695211 203437417 248883272 61428403 427142495 516330385 645773004 471496159 462962016 70661822 415621943 728965386 235694850 598067933 729942911 1072342538 298932279 850541703 630064742 918732670 232679482 198649331 395441834 167575425 746242663 605808731 81643062 36933639 990375297 839313498 313839319 635484976 60350526 633771799 523555720 637122980 910767394 162028839 402995694 843693611 866336968 491139457 13935092 956313391 475273884 348154670 1064426850 814797059 19640778 39396251 901382271 699125421 143248964 429799062 274462353 466364142 252505380 848933693 332103808 693794673 169051356 710902193 663560234 752342125 978511915 1057551215 595041568 576178335 136570277 396050496 223707296 394263428 808864409 103670815 980031854 6974105 531796489 363390977 965504996 816564876 951900491 144276024 995167838 511145481 95832508 697813225 887941735 787067279 633576940 864231402 145712843 536911360 521128543 325603591 456779658 712296088 826109381 988270773 515335373 19548349 522971316 861165763 628431559 481877632 1065385943 146856180 873557843 577435421 771465243 558773987 40889440 303453101 230609118 225557209 951129865 165130672 678109221 147582423 10590158 110304713 261754043 95248754 601792495 579576723 297873107 431280666 573694682 654207240 866206885 547760782 597818033 407424689 696046002 467306105 196796980 928534846 286494533 790510762 729641057 1018199688 321069947 745197307 484018899 696969160 82921600 1036427429 231865628 820493978 719707362 828831412 35412673 1037873783 438918557 79376639 427131163 46081339 812216295 803365042 930803020 513974225 88080556 526141045 581656113 1026157201 358667545 55693210 816750688 745282453 642745933 623666458 24035749 477808587 10757994 730648815 289381496 711247265 62738645 771130469 819238240 664102298 249469540 493192853 40030789 130024615 447338064 820811173 669130400 402226032 221085623 446842933 770359421 802831781 526483794 938620038 421554795 630203575 385453646 707608641 169426746 537117732 826587334 883460149 49383756 472307556 838418178 915699857 964123281 172371995 241906551 1031982269 330051070 243829300 242669731 39585564 168139266 592588552 613743224 439125210 685415355 907802353 51639481 1043285629 477197588 434068581 550235077 604889327 604715970 1069051325 63005908 644256377 653215988 952561728 357224698 201849867 522307139 994188142 670961510 674980951 552567621 818276690 682814852 634889907 394899610 1021056523 855004266 835219099 323845084 851935309 59136705 677662354 566239967 507682765 837307488 355377110 249781830 112598282 366985296 90843453 730329676 112220339 692218937 371356018 507975866 685843118 497211557 369251150 899633393 10951748 797303947 937918532 939310278 350609502 976052140 379000626 693859464 691755160 67307544 142264522 520372273 426723402 700901249 455964551 75062932 69437267 360643331 941373141 947855022 852539745 40581203 325010770 825574140 734930375 1041102020 398517181 487965578 773034203 451419828 254686655 833063980 821820229 281185795 421502063 69665739 835048398 611988456 156643488 82611403 365689065 742133400 590166391 212995231 441053900 858775979 61481014 310923075 938252927 735744614 632571259 311127024 556286817 810315687 338085619 943071065 1020439164 1067917306 573264880 814974814 946301206 379385783 944982769 9762018 995029570 738695815 900792559 138476325 99701831 724320690 1072353173 973001309 54602601 458329003 353376075 260436563 120351417 593892686 102281485 14332196 482613176 935296428 867218851 742036683 220885767 313688790 763623572 94061976 735795092 601804113 326868606 197151880 670350123 482514843 812720509 508100817 17739765 718917578 435388595 423164223 425629978 159952086 959336954 349851918 907371769 144710064 536912742 766073597 764873969 702262117 596126864 224355015 578347991 117249566 849774564 862735090 62882064 990675640 937015690 342268475 18915633 209391442 568157064 450430776 970302326 202204807 173794155 771624258 169853297 851005330 226935511 521631259 18171991 437096327 486301287 375316234 273809685 563099108 733842063 802926435 451595159 583769733 948875309 832258132 366971612 456604057 745054548 278061810 389146220 384735290 32620248 204844315 902531460 300490193 93848318 972362800 676587141 248321536 285609150 749225211 61550455 1021495249 133341545 771289603 764718963 766814490 254226918 110128051 310933313 313355656 583963742 540785066 26660500 173058757 441081579 219291165 422054143 330098946 851002924 134565472 549064329 91951477 157559944 226706860 88228682 291654256 240801001 228011391 766122616 816854804 982058770 225978204 52758502 325109077 313114668 811465390 333901029 865443059 947324950 877545689 812349902 352543300 848529435 11024750 300073271 823824828 773798198 412412529 268200874 829508412 527040801 877858228 415474959 161143552 329233080 408167622 50978027 513442758 888977690 821521332 235097087 1013629593 860543485 503827046 457385578 938625408 552039899 290549353 444490684 837704125 64422657 846465792 629856510 764827945 57249873 495258336 88344805 173596484 146833792 164021297 529998146 251528311 710914772 1024040048 271728601 181239066 985400529 402432620 283536729 667429873 69291447 1050977997 532737543 755114511 627877323 1038237640 246611894 282548910 916298907 1033981252 873763008 308217621 751438040 231620064 82304165 126535763 950520923 106816956 461442921 62334253 404720706 786525311 989799796 708054684 148120768 196401153 861692605 15545565 327675567 276353130 578106233 602895311 900092105 152813974 578602945 955657750 865886877 82094059 697874480 762948420 183394664 619228293 85048426 136707936 741081652 163187799 887197330 268071630 603235301 195757550 774469312 278846565 157162714 134653503 63775334 74906763 645869959 563582063 942321582 693863699 4715915 67730050 961636008 627817926 863998635 635047637 97088194 207494328 506977596 556676888 520077150 868730591 563244939 244953153 919590694 885199519 457665375 296268130 638580027 124877866 288415471 891514644 461744896 351683438 1022462419 1038238034 766540069 227843934 382633538 230898963 589571175 333670660 393166155 737355279 226392910 834367417 476714100 952182444 113106637 519755098 894464464 1002311085 979128534 954379433 391119484 379762100 645670209 502659321 5010243 525416602 795617852 738387258 1033821747 464523651 1054060279 1050693697 310530966 588825856 946213228 1071766988 942340309 664454789 938359228 248645357 254006958 777574147 292127359 281258039 798150485 214361624 274323971 382424246 277528781 383358544 199393019 335357965 317408548 839916911 220420255 532312392 709083295 174300593 667169774 445857087 1055972446 650088498 59060896 496296338 332152965 4689191 107670911 252059365 191138957 698932814 677691986 916198883 652087054 499954423 236381325 188442631 727746901 448730075 147055147 107499336 173734565 7707582 453732598 768427584 896856059 306939731 225998588 260635234 826184234 156958013 1023433346 589800753 407721843 573199379 181126108 206408996 927244879 844838088 862487186 337178160 898207893 753267837 1071730552 977124171 746553834 900799369 131571851 335007972 701482014 460273610 454971369 114183009 434291601 719552983 597435530 880387487 258353068 922615573 451999797 733287193 942258389 917510532 229622640 423502496 1017903672 212710720 546514723 927569001 401051985 601405393 110549173 153555617 987927991 217149789 265267635 833477880 394941218 591775428 362601939 812525815 784858833 576145889 585565974 71154684 497902467 898760745 201689629 946759826 800106037 809070701 771055586 494580499 316367334 793293366 948744967 80873961 377312625 22276508 698467865 232584321 689252675 5912653 493911333 571650113 720564969 913944530 128996161 8065363 325628722 880709382 357497258 779401895 182676175 505506524 725225761 489922132 163615491 619469247 1070023012 1063505431 369369704 518369155 1064387946 197112975 594528345 834606540 262391489 214205419 94828151 406025123 722067055 418041674 978748220 8568114 675289507 878315727 705811107 741358919 209954281 359070925 268268365 483701388 140861575 958911831 896023942 31604559 221295871 819799278 704354369 55161415 1035748556 1016250601 637311743 1018136001 850555541 160078450 192559642 645555408 942980360 708224308 516349477 16063399 639604280 142990669 204847529 596271879 35473498 564836671 672724314 305797328 500673802 335165841 882795150 360802309 1069839840 1022364491 953659079 205456050 104804852 615086686 61789859 526650674 1050772816 374130940 179947402 107312881 423851320 898895977 406828867 917160989 960905975 160801989 631752128 634287790 431521266 744992760 439438852 288205031 731746306 705117435 556884567 1018475161 457843970 730548124 965341391 304664081 559513942 900910684 529814245 1002611961 584581505 183543336 630378296 333300108 39750364 810530688 413608992 550620774 907966436 28113396 86421380 775566214 427713743 86448713 960178640 37596123 629308175 686844329 1039217978 656939919 892372494 854930439 582643206 797489542 329248768 325633669 877326681 136252261 996960625 555811801 747766136 866484409 603586783 873125963 73712874 270858575 186341752 520945577 355706773 653892946 739734864 104724473 368711925 870915744 1047909070 53688031 633647695 761116952 648369716 1000875218 59428153 853744985 813828942 861147437 388880806 996384783 612472639 818323630 304720134 252380813 712437986 532550388 743645978 877412706 733201719 327404995 1013302200 438988852 58788458 796910893 989507144 456603671 462951101 457956730 1062606247 691387504 870373701 1071085525 395526753 281132252 1068313454 921501401 439185041 111929799 197963721 336110169 106792826 846475632 1054743009 419343959 125179277 184283970 973847212 738695046 957530618 973897614 465147083 310386327 298848665 672354191 125459324 816812630 936076127 924708797 999144807 37931411 167363426 922808270 64561706 309973484 115605857 241864631 343865989 360815486 671106395 305196868 861734559 926729100 824352763 352919231 202546393 910104162 876443165 173803206 1062887461 215840844 1000250391 353697622 328520772 619013991 32713874 100449620 359672486 460589400 151305137 883416099 271460587 34202197 134114900 804305604 63384487 895701559 683972709 99048065 983252382 97363089 842285070 467557331 331213585 201255581 439607555 1036956889 733989556 324932398 939168187 773659388 679811111 1039030971 1020667286 53036978 622471521 28645828 110127592 70628155 365504257 99769684 96032176 907294662 527449075 495990724 830417404 669819017 475245763 510048433 238472647 114357739 249455239 714899516 1046998971 114673332 969860891 702655942 960972394 738845094 862110852 570120215 351004943 764493994 1035781857 543524852 1046236770 700857866 888406322 592260911 746956546 1073149372 233613769 34803407 186581806 1063732994 552273696 409400647 386054044 928459970 720091810 1052557134 990391098 133479568 732613252 34255265 421371593 234303510 995587312 754277780 522557033 853009790 266276340 913955746 569407599 302216664 278229993 1029603719 591540875 258492031 835166108 296677633 983945114 951807555 358706990 363535883 153636673 432706246 469485822 973416679 65078179 888462106 694965430 98189739 761970580 222785484 114409847 1062272207 490137336 276962624 649570916 914790662 529622991 944504705 936709772 693663764 517114908 653234866 745960260 268142834 465450063 491086129 1022326355 261932131 1059223720 39036916 1051020068 199312250 483966921 887907181 694716324 812924107 85786432 989221992 997645496 231735954 1018930580 744814529 550143140 947460650 1067146371 554969029 497334558 269284100 155072952 790292088 514530227 491143369 697202605 42432336 666469849 25481460 866274480 1003867980 747268491 1065169843 175318110 412388987 807242620 216921330 278891775 19771364 699372216 685163764 328314982 607457684 621682451 138071006 587778871 30332931 206298149 911076123 421360082 550428829 385755328 191199768 1033703367 559320474 80607214 335724578 912388409 1071755065 909274142 499465711 514456772 34674703 17503670 542766828 159262333 929250949 787717906 330662716 349927914 838728317 872577245 541366897 50583370 298049992 406580993 307913410 83304594 306123659 1021897645 871553134 48713549 904099538 875298880 299412394 657070019 488320276 503745909 244852210 686901573 804351085 925321373 999938261 618782229 46732419 924286133 203391472 63613622 590466667 704026908 73969772 156236073 321994321 829775700 685692621 117041103 654923098 631213851 557905228 316352192 281324964 432167967 265706385 974862749 600848878 708981322 913784216 696382728 224191990 641310478 610093856 414953731 241925920 569108158 319089950 508087822 98789069 910512263 639403455 231750623 551615205 845122630 346999128 863106121 333540808 62717305 623139702 514515857 317403847 418077883 725351479 446456435 1005154821 21370619 991621547 534926886 851504771 451282523 439401507 302354709 212690842 62594323 287481702 623057754 630920005 486411483 649927803 27145557 828671111 977132075 165901446 761199751 399627195 391327114 21001833 705534912 36478076 869144490 622538977 722461848 588969592 474115592 600256539 442649975 498204953 605815487 73722362 565229728 202048564 516270361 498438850 1029973410 137972442 851368836 155520435 661631127 54053230 364506844 76073393 646975728 384466099 789024618 133963289 266257741 766949622 631435723 134194693 1062466665 359674408 299818212 680372832 816725983 488045496 1069510807 960180547 289207234 697271899 775680554 741576550 382433272 211324563 229740805 621195166 252338631 145824961 288685138 601723265 682100431 305308056 572640959 665418955 661286596 183774247 458422807 1041238018 194837092 817359039 1021357978 618854575 422430795 491778988 872538283 979305752 612060466 414980073 451136074 722017861 1060312545 871985006 1024195279 563019775 162177860 648627890 361949284 612324070 691617501 416243067 126416819 816604166 572106970 258718979 330963048 270022653 206740017 528693695 116310663 759342793 61899560 518426204 625815597 160626878 288371542 914907359 336798011 290016638 583130417 69029018 941397627 626172383 58637260 1058850608 677444630 37036787 428739123 306033026 787391478 553274205 363840170 908918269 1009631624 591074637 520308382 116676516 159420719 757661206 670783656 843826214 1024083284 539820017 909004713 372364737 441538960 450725830 667291307 1875357 597298079 462828290 699787507 577717049 378865688 689647584 547569515 111446637 961109848 408343703 714339576 1066267543 600467686 249460929 902310285 118622337 28043166 104851382 544935899 490792964 997439780 739564788 776824783 787921668 1003573555 1006467282 1028388817 904755799 318212992 831042506 232532365 268210929 208997086 258207844 664982711 359422568 307788405 780524747 583768980 926134447 679990183 251449565 838499038 188482524 363369867 814427625 434247382 534977686 1044134428 64405865 40028082 759413427 540481914 320989859 567776337 761945968 669294436 360997513 714520662 488916605 376205820 389264200 623400239 998637226 868322414 219467718 440517789 1002816149 849626748 299942611 761700976 945429868 132076854 389322039 126368930 837316855 130543397 1057946667 1029347948 780002876 557478924 452665116 656115233 165456610 462447896 827783114 379429452 672079602 1001198327 884683807 506552096 1050087040 605679013 845330254 167121920 496791880 332516530 23412797 35585443 885871325 613382428 277182548 858267740 562221130 987100121 404456962 627875279 737138414 262502509 446843914 741154857 519192092 835516407 720935314 12493476 999659093 87141541 346975992 575157815 484012408 304720487 268751002 150363862 726210254 860619753 806783675 123290900 302120060 22432738 455071198 451338250 653493794 344121758 531322443 337344209 646334324 910202492 417748916 932918657 222295486 65988600 1063308683 165643919 613167701 713804713 205518851 893252238 444322607 608688405 944872721 20277823 35645680 978085729 989125550 435385058 718579451 546930463 18606307 162487821 649841221 471483879 775237367 157346875 404828836 88766652 969517745 1040488675 578866224 599841836 905165733 215446898 690639526 283304954 89709646 964090634 323765347 112098995 464707009 231956297 947912192 640325438 608715360 836127400 422175489 506033230 22306957 651177293 297848936 131065449 372833969 583544491 187802428 486712124 980549679 579061479 46057273 987835513 836895889 822609396 727535609 542930369 965883936 462608998 627672027 147777231 998881048 742937754 123359929 705783260 442747326 392602387 439369174 600007044 344100932 851219496 331974705 325989222 915722112 379459555 203762128 792039430 525104470 1004800321 520821753 572369176 395974094 925613007 1034613090 410454330 451791942 502624611 625958301 833229338 576187778 233449943 754653037 311693137 332287952 557368377 196163503 448106697 331352060 696533901 222959951 894419900 660801146 442511857 288977516 216553446 711945124 110981020 933612008 418917612 82975698 90049033 585495722 327988317 860525922 683954362 461348265 569173841 571582529 172691916 266678349 788999447 764080967 304485514 978783818 807897646 741058366 54398611 85563450 497171838 764075506 1038365838 327422524 236666696 524761429 537443383 397056760 599981658 835431011 114630266 474541517 132124468 880441101 885006323 678478936 732090466 136959828 215637489 212162067 801707065 939003054 964338104 224241238 834773598 907804775 325124502 1058770526 913950900 22829522 18075361 201886454 776598089 107793244 287851434 240618433 690000310 863123262 1043617302 634311326 490881826 992056505 359788655 176152677 547669881 7185090 69123243 91861521 1052908871 904256736 929726819 323048360 556469896 363240527 140020650 817681076 858428029 368806488 388653826 609621343 217654235 392270451 412381195 675929371 653441831 321744104 467584861 262913390 902793100 244576834 791152212 721688833 561650133 278544961 730590028 886579616 311992204 785212081 1035168399 124533711 583065264 215050769 960663828 850775137 1013641513 395716664 123002261 127082094 533123910 494565320 649665636 86413128 738821721 470882397 351080991 983396749 987268775 1057924104 105314523 166570250 76841713 635811680 304261425 59503165 1021843465 806872511 94084694 919064798 18364757 147850168 102282367 854041308 241207708 275375708 3228647 835678795 345911810 48657679 984349715 296820490 723663396 720340968 918065088 255060741 864791955 804379845 529258861 978287037 738199304 1023917027 1029683979 1007603692 585468124 277774027 16251520 439856946 23253009 60522915 294180572 527245530 625060166 328590696 328716788 614676168 1059943166 490231483 995350668 1028791426 22159790 267980845 268701183 807106333 53993837 338771434 1002334690 115873998 826505151 955534400 592258366 300976964 481244142 75921889 791350667 853882863 259831127 184114493 65743370 900436585 63004132 1013828209 777546922 437468020 234229802 963410315 903506381 590095618 18410474 848040957 145401468 675792380 913391131 378350890 914321487 642821432 702515382 578606550 888472207 929271696 1003168974 96180953 826908809 495092237 844472809 160299609 416773928 5436224 928702132 198534211 405533976 449295433 362391042 190188115 1047381184 65059111 558036808 417900523 428919087 628945427 248176587 783218862 938785935 397943218 978649311 300594474 84882456 412813918 588411164 109640980 324792935 394417483 835451977 721715747 591270683 76698847 117736740 837080634 236101621 579403832 970763232 33110140 690435996 57426619 33888772 972683581 432106171 714383739 715664652 888396270 993173547 614617923 504783463 965399335 735225920 18656004 347868442 968014931 528470371 1021350134 974754069 312259406 146421890 1061511324 236145577 946680283 626391813 566562848 1025693324 302468830 538009004 1006690135 166630490 401213438 258624418 944660511 593892940 134838412 487467638 412460145 222226531 581502443 1041845304 944239166 1026063400 568336308 628889832 118276109 132590208 677627740 572771997 938093833 799870990 6111480 785066864 960151736 1045839962 380367120 818330996 568040470 210752015 183950757 57097025 648759640 867086283 584746874 274698075 814006810 395247033 252599802 675557485 573348594 822660299 574538362 917444265 783693823 507110536 1029789927 851626746 148689764 442212382 669216300 530479638 658629663 547173750 81719543 113970074 879186433 27237276 597589442 854844275 352671045 224216778 1054363504 333934383 183490996 74074502 927427954 245141965 465471566 801027033 156647590 728525298 271848536 928245997 392733018 965165895 844752886 458211790 497678430 853102495 378740087 937656178 913049225 590375644 616524627 644965525 623923940 46835874 985591203 753867408 801969152 240102311 649036404 828007838 865687908 230054290 959723193 421472534 786891094 706407385 627498747 45248103 573728605 573028222 489627466 910219548 347968158 333544971 880819886 748364421 832075447 215952143 741489621 461182400 900627005 219743916 654137062 958503071 934167894 365933500 459794359 270931033 96527664 533110896 130833359 1039547390 1039866748 182349430 974640449 69203216 505889115 956255962 330015427 817474092 301033614 147991724 824789342 848426505 769104492 523971753 271598050 506470306 541427007 579358856 504904177 628636533 514483438 278863501 1037256079 269059455 496039837 553153658 891099527 670790551 852328737 699326212 246092699 365408503 318603088 833258343 476163868 183676625 400924514 483563151 324327621 269928876 358742250 78565109 544619585 497151034 161181890 417070138 999675852 320807367 821482965 86893373 407075975 671858378 885571013 702804012 39094257 779577877 585983956 138164967 252263785 311441641 419245248 215591930 664143053 644690043 186881004 713987789 399801983 257085343 130911945 261462040 441927348 388106682 587695932 862905809 1039129678 37116607 120753620 846050197 706094227 81928044 239418995 1023579507 408490530 618840230 431452875 151813189 750580302 935760867 81699742 52620106 379655046 118329095 942896019 545485121 806377952 946201431 832814179 383606057 553690315 1025420696 542191895 914761676 906276884 297636015 890600748 524598167 851290603 479183092 34468298 37757535 139021275 923368997 254504916 319970931 443325691 226303089 51891513 237267772 663814740 155849901 846365332 762275487 150299700 61209908 773875979 856682896 656558661 352616484 73654862 755762789 442238270 17539097 365948250 895167436 754570576 328173059 558371871 4131856 919674399 572771183 235802148 305352671 931495124 671641137 180094353 511799791 308729991 754587738 180997524 314673220 124091105 970409981 961659611 104234284 1042657895 1005012470 726802626 713660770 512500756 538854217 921968963 602521109 647166059 959649934 628573 7311297 313299598 770710687 20444278 882734068 636146690 327643549 186172443 253159799 508805889 839203824 193496721 131948826 134178664 794144611 935835273 174354697 61234079 595353325 2816536 186854280 900498053 508537865 158738321 991221958 467568867 1051324175 7453306 271681413 285857291 1030987138 562261648 647399478 119750883 918570438 992489859 78182803 321125065 855274492 735481465 829281931 656901959 202907169 405293855 960824003 115534158 360018045 638328077 248116520 222154844 162234257 521499490 500169322 653714241 636035778 1004612248 18523683 193416702 214675386 848671059 682620382 898054453 806261011 513376410 298268205 920652470 718631173 731643680 538407219 1027973888 571848541 69123985 8219607 156854464 46369683 116070180 696411858 322214292 946836839 565923630 570422705 623495700 448825326 958416997 91823320 690755424 656605304 647537875 256303411 890802266 694975046 893658653 626411691 332536229 386228886 134592141 9490322 368440583 662146454 38862314 874308233 453256189 956132221 691871473 718892800 658196497 285788885 36748306 795408043 532082738 130635259 183992918 23055446 122912343 265379641 994623293 1007415051 678456654 131374308 849452276 444321680 962272098 100369709 1013275291 71055771 286120880 489432718 3943133 18689954 394152879 276443365 500970974 330191071 656945640 662469365 873636203 593102677 231881513 370507966 828318958 348749876 585632977 445392880 905341891 831228294 621773416 157516989 114913557 60678877 914727284 1041491182 620562444 796881065 1010737081 228492074 225464813 893232125 660625391 969149062 784803135 824159529 800160634 749012849 309936964 920731485 2685253 571154727 983190832 967284360 902152958 419792383 548321539 791197337 890328875 390235632 1050887571 183714689 546558195 882493253 375708646 668843936 428621893 572362073 1072733158 25335129 643971191 536546638 91124431 240611620 731796832 130407756 1019791466 855174870 850287348 658214476 143592412 874413437 706343404 562837954 372953284 195371509 142620801 253241666 669353908 197836194 345108597 968470052 710887126 292273849 534565781 123819788 137259168 424486555 416062096 189106346 590229456 660911079 445991714 726095229 841424679 993178032 452018959 637502794 379625640 801210834 132977323 345118472 686388486 155684350 287541374 950530366 89737057 209199082 783042711 936765256 545765859 468370132 365292388 310448688 353341844 172647380 736101860 617169615 1067174104 855495953 555843539 843338075 750363409 791724166 497048116 497267259 436824808 241257560 183322623 150826589 592718212 864323582 338593493 193941703 1010208119 900077398 806462222 53070442 355892729 1048059163 209995967 268797922 812440663 761489788 900338830 287343188 850032001 28553158 655899716 887231717 957072133 789655066 484477791 424244829 815184315 775229431 613672850 685743749 630385560 1054100884 822233263 729614051 454543551 1051156099 161463723 572197299 509479651 1014850100 1052063506 276014523 416147439 1047996947 35606847 493875710 441220867 372117554 921920614 195853574 836676463 544067888 543107611 186159877 654774282 872149037 891480999 679197258 323067765 248779945 23995162 888840105 147731611 604892316 582955496 238597773 215363237 228603788 988766821 222117447 856317234 795568692 738237823 569307893 496534976 380827864 115926104 642292273 556413002 426608525 881148102 964705004 616941132 30165914 203057239 639189624 173645149 705809519 197109892 283009848 22857393 661967816 541209776 20184484 816807420 487562482 95236998 582462093 394793772 731475070 828602639 673045474 272848630 234570247 21020716 356371339 115498094 353243667 29661437 1044166414 693169001 824016979 707024418 525466507 323344241 540366937 864336605 62621452 1023019204 289596773 4695280 263045986 564728451 908418567 888444660 948333453 285834083 495017549 604624939 84835592 133352950 242874414 787558609 336612186 343321447 1067557792 822352820 926366149 837884478 550282556 577948807 153319565 689551964 166860390 872435858 809283652 174823854 179625954 99405920 8437554 622874339 1017872325 593855236 761825093 748100337 177348866 479178243 1052120143 964098176 436738582 557986229 776925630 429375996 770805687 738383371 143420063 573946605 185247291 290605427 402825476 686511656 548006399 697231476 242512902 1061170049 640339763 825137221 1046208492 824876261 117970754 929712309 638494314 120210672 916395429 373671745 348938288 643609892 674560283 780950857 581879448 23011413 405139696 185593538 433606177 705810511 832253977 414146919 927807167 140478498 384693612 50794181 202564474 400167401 472896609 907321475 336936001 682132876 964702654 433104592 617777039 248135310 682032456 505758264 611530674 989593236 781475441 463762194 721570562 909218017 31870517 973558908 706897680 212395589 1600083 714826928 487703452 248626771 223229242 20121218 765325640 928013499 952361692 392444089 368199119 398318453 188456174 46591120 229435450 886608709 828216011 16282601 258920618 465805067 228620436 998745193 682396137 1002527141 42585436 1040024153 164886353 835803052 677633513 187372823 962867313 1021680186 591948573 2383103 353626771 146660694 132147959 420130986 437737834 875125364 66721637 511426207 885178153 450845096 290573629 379770285 848353720 558723290 617093677 731069782 1020542744 500762689 453281643 583309335 494057722 983605542 1033046418 826067431 287856061 758555433 454266690 382281692 804724377 1046242448 454795965 393802918 505904912 932339272 735123299 1061848234 24789896 530435794 1054187070 613182073 297359683 352225297 134326157 660936400 248964660 57582482 731973197 661527639 571139155 860536368 605659657 101653021 757914368 245561888 379082791 850098639 135318121 765328121 89873817 1010497008 694255859 182595718 370994199 558954779 132805777 1050600732 684508244 201946429 693361054 115851459 515047165 445875085 659530244 944956804 750115973 864473575 537773068 633543075 489839716 456312162 728015042 1030395427 582297633 439001989 1031045563 714895054 203620017 6570506 741624692 992502644 943871803 762953150 164454775 615267026 907215392 471140169 480373720 143296613 948572661 553789341 485320198 980583196 99945109 992357952 365181728 398981193 912538549 145457317 771746080 416918286 684912024 486303387 962418672 18959791 204332267 637113334 475146365 915883649 1051174462 319035005 776992790 892432776 716779081 1073267769 941290745 271174842 162127201 455721555 448115660 113464734 388723190 696016763 1010448814 44695745 936964424 694469754 622874524 696645787 408848698 487910401 681043798 202629461 750443117 94098928 9898796 848807589 403082664 149087049 585522626 189518652 701724747 449641369 384174549 50948536 420509057 993710460 350758657 448236208 523095336 594905404 943577608 136937902 21380347 188374870 1043061552 999328343 53839343 539961499 947717674 555780031 136485265 925811859 487730658 796526412 35267242 915899179 90163807 250231386 1032247824 168773778 202317966 588231547 409846210 318017213 921230009 797148306 465781568 54309310 1017539417 264667830 873249376 286115335 24630930 987660597 483125977 704813527 154118840 54676488 116083633 181827698 1026119167 314966316 603621730 434685125 165785398 233594822 591246902 599945240 713470198 1066241750 973301288 801291670 967510892 17272698 774195661 962340644 375728881 367032157 569735876 292576098 780401765 376699013 830360175 291975031 1040317908 897695999 299050787 915008033 316615979 160422696 488237893 922660298 588153011 668142746 447530322 420030978 249170698 315022466 936177231 881826205 334102648 1061640812 946244227 630882324 960636673 810459795 213349064 995625685 736012334 725535672 33520619 112140739 997097921 826689140 468153554 417945495 688203851 1042642992 489686179 121201509 525293836 105813611 601030084 336798071 274660505 713838273 592171953 341884449 605710592 595590683 981274255 870073119 642823850 998885872 321758268 582715665 355893826 921364103 947272292 98302429 99507256 565692908 732844825 66029161 216967201 791895498 436044518 393924437 777957302 817367616 916172944 426752787 738677189 23052411 901828956 140112225 634286454 862716964 802568217 136882357 840937135 202942886 80622262 319971813 30534971 230603587 208024776 54006870 95701915 938085227 1046689904 230085899 694361732 895226674 107386522 332410253 1036944345 779906158 1020993326 638475728 534104668 199619886 234975709 285269738 339381534 753309322 260710974 704810370 382380205 433529568 802830734 846075420 1058926760 154861966 927949285 810457172 841216816 961324238 17462366 947527933 365197352 22163009 929081625 368580844 952229437 438518023 1018056299 723990016 417116690 573918541 338162868 694749855 1002087447 633862105 521030628 461190210 712456732 963550608 269998558 172886262 616796708 5502573 708050177 192821152 86026965 173625129 288447626 377439997 45592068 877614767 713751945 200987815 957869578 753909679 942753690 738185110 997200682 966478137 228152499 204204949 654842814 178669950 720554188 20845352 251989083 755274823 3248956 543849201 1042234336 692304645 361935613 673437879 1057170382 522395351 472295568 94057032 940074907 681676211 1029130824 650270538 453737309 474320824 427279413 101648241 676866156 235788101 1056271345 890353498 732015612 216571990 899752340 704442222 112965172 1039923968 357244638 61964330 819026143 394533991 973611906 304627606 643520689 62894719 1017394281 930832407 961234456 56018544 331331576 343135138 644062545 324481222 598609799 297027248 809023241 861619247 111990796 821288893 842484786 287690534 594094787 1056439532 566344266 644797703 963229834 197808457 66809563 138631168 193615645 131002224 146589640 525647441 196134922 989148004 897064966 211882362 153543311 783012561 537535274 821540118 460866985 331650327 1059723853 171064719 64777857 254892624 898712832 716775740 201360695 363744537 9345199 712412601 900861554 575580866 5859391 963831809 1032799238 140069309 498203077 1007992715 821248081 763176218 685515234 20760414 763065231 1057063753 90381934 849492653 885723355 383255599 866332998 227660963 93305524 421318415 562576336 516174612 664279099 652409017 913479533 131368271 621868328 566953795 917763793 394748178 516140503 819258956 130347469 73063914 302305399 796144300 394334812 841264132 758753077 529180845 77523673 972505713 326820024 195458417 159846616 559636071 256465222 99854261 853845005 831144077 820784108 178788908 454778709 410436601 329049050 409530118 108105392 296833694 207009715 254091434 546371848 954253447 156137784 653878424 394897754 885956433 369070592 49550510 291921012 43989688 277977400 231438821 413505437 983408111 508682082 211140218 1051385040 936180671 246765853 797372688 77296622 916204978 1006487018 849414862 591874359 374075284 613524931 1060538841 947179450 472012547 463947642 60094923 1011525061 617730051 366860484 674764872 912235423 532557273 412959782 665952561 117142944 754436770 433692303 348048709 200713201 420893704 832694789 785693995 322565425 1022790018 1039880558 120979885 842856432 984706913 24610148 787176704 878127081 132519486 88734532 175089720 302042796 1045861927 621061894 497904359 582885572 948575343 92218564 808484986 928370700 193070198 840762092 461066162 838479114 455205937 919210406 636900283 242864836 181444440 828423433 863492790 267905569 41787138 482064982 10779390 126645784 338327657 488012806 256001960 710173705 977057475 862321118 836483622 259145961 498646148 755263885 139264811 1016771376 96334824 1004051668 341028914 859287780 481418644 885416751 1055471218 338797830 1064638620 79824522 862131574 38712838 579906703 1033845664 107771633 382352769 817613351 193614090 889201100 27263624 146475487 804884802 484057484 626181744 361118251 1053573875 205417930 492018049 686175116 310222334 556137191 1013640729 410410255 943419954 847336587 943032565 126005887 367414974 490173061 514150625 719485770 46770093 180637340 945067348 804210883 246092468 1031605695 294141536 500127335 459657442 979311801 400891190 814225875 487666768 576072872 101134005 737790995 95702558 716868238 610239769 372517066 737552190 384813912 116579491 877811353 934817834 368404520 486837455 399929103 476629704 1029652347 179750299 89843127 74033270 924751185 607018539 350540290 17907686 206438053 600136438 198066862 204825309 687172471 452264311 84381487 57784135 668470506 447015824 44974332 636659264 842587476 564437183 105693909 10339578 551852100 499764504 332468766 206724641 563687523 305358289 338706301 343336275 784522691 132380922 639511959 506395242 497349958 51292815 505684288 812847445 24456775 548888739 598966371 1071514451 731588845 815463749 766601097 96342821 575408648 574970196 217840766 988761939 620769121 706373221 173955204 124663351 489296678 588247318 39437679 847805938 401913801 158422780 414778593 405500652 878048822 762166353 441491770 328923054 429843692 851947212 341699293 102260729 571139579 646275374 852252520 865586495 180536524 466244115 893469216 412543583 158052303 553737289 364121643 633629381 778758415 693327298 408243189 188326950 81603837 213360733 461606338 804822010 297363427 652064601 901534560 714959469 718604542 871682544 156488275 355079346 58069831 806797658 847730642 513694679 209516677 655422743 380886653 819888009 233787733 971648542 658567464 966396638 1036922726 874609926 208730262 265956702 748362205 35139042 708684126 827273739 171264136 913679427 623364219 746223571 587251187 743154067 227841090 894095993 151788093 486238374 1052051658 563900271 640767425 35547028 1016708438 84370646 306009718 17721616 786924282 154952095 74586134 139226588 466994337 747755900 583508154 1072415333 116645335 808867554 200083581 828315028 997605971 728860445 314629243 955971187 445065086 939852387 297265235 820550248 381932908 302856101 365277734 446499092 922116127 405934057 322395108 490209475 973294935 652326381 952501518 432766249 958801534 1057239802 334251686 508296288 635019030 899964579 212060277 417602808 844686687 256914314 515845852 656916093 116155198 13754518 1051058531 556524547 883352304 1066126967 688742741 508138435 1037548538 920795949 1063759890 1066587673 261014556 261342152 647592707 97656639 709875141 646395761 402529881 812643805 1023433218 655573107 43563271 435224568 376236905 701257476 505362839 667170339 916173454 6979168 801096681 188634149 83452052 374518898 1028503311 929483688 471513729 328670095 766203477 790560263 1016379399 997655797 607768996 867742548 83222815 901793708 709926167 86291134 469920244 630363534 258860208 586477020 420726128 120129151 377632683 9331550 993455340 641261434 333989717 643472658 16764154 606637853 372261889 153445509 217696892 135279755 548279687 272748031 483509255 886265592 383114800 910571779 172502505 246284221 501987234 42915440 619947835 77803898 551648644 358893109 638006316 714686376 173096278 351603932 845747187 637065439 654391146 804776901 129679496 12906014 929305226 1070474404 759867030 832053917 962273789 481856826 756076685 178354855 558516707 360329626 667258528 910345614 73382008 863443210 940554935 866715235 339555923 487124018 897659287 940784100 824660773 821987663 125780802 664229410 602997206 729204543 1065744453 772365871 392593037 289418084 526301351 209614444 302368350 403026410 369433811 83588168 399857665 1000750686 585246372 123666551 466590262 848940204 1019201801 52759324 797753590 25510060 800390935 129202406 81932344 220835226 215118690 272545593 365812883 295260773 564882070 562887138 285848402 145138233 1010432616 153640637 2697555 33811621 400422663 514812797 139034523 916197472 722335183 251791300 535984805 291893808 809776153 778532542 714947410 384763488 266618227 239510816 834802603 466917543 919236020 507829965 473811176 143965721 952256909 824582011 434702435 568789056 512143464 21858524 121205920 175541818 926889732 402291407 303971049 927338686 92526730 849343024 630320555 633673567 319531797 1018160499 226166832 183536389 1062576505 1053803945 693954122 751284164 379185444 572037090 555389661 80524825 774042401 548978163 733534015 1046871526 88304927 588127338 356207245 139559709 404718009 462001312 880523415 1054052065 1001993268 571444932 724799459 89616462 533481018 353902782 402931093 196659161 932225880 622101626 559141407 87314284 513157793 56602016 1005471414 443987530 517719794 753817135 89034175 364522870 808832259 344387009 479004331 866313029 831426570 119241615 675629764 549027566 487153466 767807343 1033881248 1050556152 673236457 164055001 817400518 749064791 359543719 647040415 28966196 820251823 661970135 199733310 580593913 489100663 555883809 320308349 217387723 233435386 74944673 52345279 84306712 875903215 838655374 814457148 571547101 956351120 536560730 377967559 574223250 853660659 699002535 830919187 535575256 887081948 993359314 235297625 1028668025 450761906 756739422 1000048630 983564979 337068073 529731726 273954689 150297427 605396580 397111942 433178118 1011523139 200551305 82174908 556550557 94576289 286431789 322798251 476658670 627011908 838885352 936410865 881949686 1045033202 538390821 89336013 123339741 768425318 527787721 618503840 383296119 780028794 213355599 1034338216 161920989 540188745 701864430 566391907 643131635 530085671 666215213 83691410 37555753 363124096 1056025880 469477563 996104022 558077563 678534073 336019939 508651204 242018624 953980274 367427563 962583928 482803477 1044411326 833402328 1027139044 89536306 962225151 471300413 310662832 430865173 432242575 491718555 555011239 738841838 225088278 439060881 357074572 976925338 325563711 214206445 43017237 280026981 40576552 635619428 683117457 637456778 39802162 680595826 934671092 784664176 908083974 992922626 696420618 147408904 1018867901 250813180 639850212 238880407 741977267 692990675 243492643 946652989 936350681 501554899 791826739 1034369401 1061313410 904990997 483657785 541098989 171173365 424984898 886493689 628578847 229186054 223031491 472375000 997299319 226552096 859053424 473927097 194411061 865331575 179498352 190371441 530096624 481696026 683765904 957903368 507000694 210296832 666029375 592735932 49619988 591897765 906792449 451700067 465033076 186972138 246750375 661162099 758805986 1028878941 316447778 182392985 178119501 408352881 531895784 505355487 378635060 468732308 522159145 1032271302 844800262 767966876 452477098 301493469 443496947 268838813 431578230 511805968 888688778 1061329802 887973353 64773796 578045727 139631523 444206962 536669316 219441591 71789288 157147177 223053023 687172794 784990419 38310476 434231962 800512221 32659990 364575107 588966462 888099147 226780016 523781975 20414751 862579020 976337609 907949545 550666755 87577290 975006333 698535231 1017884147 251721559 683625234 29514487 289138073 677043351 259786070 772875547 502347501 911988011 1071438449 1024710845 1062748411 176999427 271063092 917477114 929774728 989045717 704605507 1063616531 583251809 653600686 418936976 393534178 403004935 684770932 498055482 834016151 71683896 105620339 351359635 315764582 632417142 236680519 1011395105 937230093 317973909 632122832 725230550 623314832 919759 917615454 830683807 439903290 1021726053 225490252 180842526 785891406 200508988 201170907 503086796 1044132096 418747952 253710483 869914091 629350539 508327602 633634684 969400820 939487411 805816328 107903032 1065828214 154088957 859406203 233734131 1048341399 800503190 541873 50212300 53970559 1040843286 919871029 116304655 127790359 690856243 329196367 480882030 291047836 983670932 649822144 40137986 100679301 578176438 489359574 565466761 526270140 984458772 749715530 434098615 1043352041 97454085 107983981 47551554 23167488 1014160655 284058943 133450606 456435381 801077521 160683912 767654889 809698697 355995624 91580204 1015528048 351251058 882014274 712105284 887003088 636630573 1005684683 480822290 630793483 18157688 944164680 818532846 862010271 135940690 626784198 379931449 589824418 340961815 3211538 911601989 196896178 509810020 63839497 778010536 617442452 959172741 437793449 962727709 737114751 752405752 417697643 39072298 888679935 81274445 377880494 597840668 873437687 486841073 208304702 145638153 730631751 522677463 95647791 918986893 191658574 1034459801 459631837 881306996 538036790 346307072 299665918 1011859258 486558027 933947238 615897241 196397486 946358539 97464077 185411173 997394111 872123606 667001174 6245638 599665107 513041677 1071919300 214469628 870275118 39528688 683711203 136413401 527108343 710515292 831172214 425326051 859833544 924288595 673510261 488086196 428907516 362465783 585553651 607163030 486652545 617055641 135462629 956422770 698809903 365533622 452900470 160862800 1031882329 837286611 565331549 225270284 398634023 631916816 664077690 48803037 372971967 1014292575 177818274 1053499656 1016380725 161996442 234550538 600401896 526187248 281234886 146886557 567994758 135705826 296344171 547551107 285608776 1029996921 908890552 257345322 341137189 106979290 867508978 615574418 318006752 399498726 175218858 658728936 38935144 392224887 515394396 176372348 245187453 636382216 136539448 1011156302 339486455 198786773 246365767 613533569 817700333 92292158 47277302 80082792 715650157 549975515 788577717 903440617 416915261 917345358 370310111 594105830 951697922 292864532 131552520 461648619 550663267 488901405 297896858 664656149 923819675 363622238 108608636 424885956 823201608 86608654 761503357 1058278239 100285857 253115232 335546750 1066879886 489318956 61128757 807005999 753401406 1042875452 209350261 672673772 327529891 1024533660 215366560 642890522 963778156 752204430 450829652 577622553 942188253 724443588 449827553 424438815 638505861 778568926 733135485 61747299 1032575631 105722842 661938089 529891412 393183485 392501969 43384153 129128462 948716428 175116281 464171453 31623231 649996780 720873034 225401945 15766438 949015085 984467144 783203479 1050699961 903014244 746241129 401189333 249766719 444890599 1057623196 580359051 510164203 361842329 876043789 924300989 252290567 1040509337 13573785 534120122 771202874 640286072 122137708 878758666 210095649 629355056 211994298 220356192 1062911822 296303574 651694851 471112021 125874369 86242627 299639259 569371350 26650074 327789784 675585532 604940898 653368394 832377518 809412242 449254745 634190699 254609888 596970526 931352572 680258451 827285606 844068360 261532135 179655232 150060252 481685642 264898482 851177862 400132861 1073719756 523766461 513055302 583467894 375170167 202642984 974763182 21936665 944986876 342820142 173483966 403215417 341130983 634899802 256446727 688840487 155509400 98833166 79677455 680605783 3379533 332200829 383184071 859200952 171920599 517238133 389288336 874758824 370144309 1024616403 524735741 869085618 569465591 998068049 518479394 906790666 212154926 250702007 59112694 561907801 807047565 458884408 269295924 757975093 937852516 328589556 91189544 39906838 891009948 12028663 64343983 524329821 351247757 1002384537 360724761 740986877 199844956 630797202 563556655 275051578 694360114 4632978 112166376 481144380 931366332 1010663240 778291404 330211069 660945990 483462799 848685246 225183340 490786847 897161642 252110730 745789921 67210843 128942384 1016610561 915040128 740778112 266631250 601323311 843137007 12473168 945052794 673852100 114695881 424096213 630054723 760784698 651914930 306291366 165559101 338735817 354756634 491763952 254720631 654404998 1014098844 475521219 234187373 332135718 280722881 634101865 685038672 395892859 881797484 441017430 880691520 749733458 451792117 503915899 708814437 978828045 409613646 743484376 837473743 262648475 937038482 55557475 899461317 705032820 386065159 129401262 55402389 513573611 836170980 1051143990 9577973 468953400 627837723 1002615901 766942386 945184118 316278493 217690282 722305393 319913061 549615270 253379915 441382587 278986243 573842394 1013701415 229370098 768491574 420661378 289008080 888975859 1067153847 356142204 323819479 230024602 207204400 894785262 836604887 7272052 852663580 341706367 980286468 869060048 831718654 700413101 564938035 395995131 659232664 1061517138 349626001 34534597 696782533 781555823 21315417 349133731 384470350 760605114 196078350 973528161 389583768 815483110 574631607 479764813 192348089 470136047 918722043 693994747 460445645 404672671 925947126 746166533 989527743 71921652 574214810 840492240 661785796 673315593 193523734 820189756 444399264 868621249 78340284 106564849 921956353 129030168 39709725 315471515 827673197 928731769 750014082 723114104 657433254 911799788 687124644 107762713 551242651 414754047 310953933 255649738 177336431 548709624 178231087 349337123 370612746 1071339544 396425921 336682957 138047964 654069016 157592775 801961 1038249731 679595471 981865274 344535115 122985229 971469196 321125052 980600351 922558625 565909130 523904141 1013098437 752265785 267350092 611990162 814993325 1039187549 352293705 490571240 613370003 608105479 89780693 1002269491 114895584 1024643704 300880350 196265952 186612427 271710281 320996972 130913509 288620265 142732154 764415983 1010138498 289347368 101119434 921534920 281048629 690183913 73403274 573581028 533520506 315565993 372943365 633203224 613536703 135902060 35412528 773584799 783484046 436286409 329246871 235594957 235582265 244732367 369303080 60424323 922287019 751339038 43863662 858202315 666463951 969770606 1066347656 699042719 678804920 945997897 645891037 54649906 39302003 1031875737 696145241 372485010 85327754 783546979 27538647 777346011 14025598 441414781 330101828 285799051 251923592 970674745 834351963 280025137 338121409 489920324 323528320 396220414 280208941 329909396 158831877 225985109 983810966 805417020 150532484 1002725337 990481268 119583758 431103540 312281312 383581141 1044861891 259460130 638581488 452872734 36025237 883129553 913095757 225931045 245157343 774490780 850148844 400158442 240638142 594523585 516953933 1022395196 38593549 262100574 270358345 721265711 530611336 698822740 135486362 386513465 880660849 883229373 1011389964 219747351 201772129 399257906 790482154 312828071 631980511 100907080 672758375 7140511 988302080 707664070 518564047 662554911 46292337 621891651 657877996 103702303 725574930 293755692 459541808 1033575630 76397796 917725696 916536893 729763856 768335578 287312549 254747101 726722714 423672760 1063405973 589729412 565258217 396477640 534431967 551874079 328454179 947341784 1063803853 671404504 70054743 919731274 382469303 723722845 456020289 184093859 909795832 53204795 746244723 156364583 70208659 1036029827 867645312 345193421 152904098 419869018 459163805 499826725 799624461 150196146 542310396 928728776 117579839 691950270 226302981 1055360983 163711337 624855203 534922825 443492723 219678376 961994325 877412469 1068435768 97503280 508940418 676357428 432310020 388560327 368675144 161686536 199325811 1025668811 766912043 117608166 504506925 709908759 400320615 786078317 547724209 16337402 496042406 109664992 900155542 564364784 913548385 1062990116 1012959458 437808219 3474667 907810948 1000943131 552442308 327795467 314440703 595956788 1018366220 466662413 617360333 45123280 203212069 9306905 147787434 639152846 664297453 800610563 110889572 396252610 729936238 215484724 676038702 627735855 114961711 703047801 878462140 152058138 984516449 772088042 305489315 104148493 626305763 233567769 54773190 883263974 379498486 26010295 244424648 389502988 551288416 999649884 396965719 879417737 147594491 82747415 655612014 815513596 550740161 514922746 560492821 255662721 422904933 688465088 135742309 815745626 818873677 415691689 476745486 276967770 15024417 882087361 32429172 147958429 516257627 492833920 149459321 503669134 335813014 570531013 147041221 29387922 99554470 8194921 234578726 39829950 178887269 851840054 580703793 553362166 647627317 813525161 174719828 384786399 988557007 765361978 259157501 705887106 471518286 325305641 601301139 34435293 895551639 984513955 753142031 361427312 444164471 381388172 731471614 704830315 380735790 434874346 42608489 619123621 948876545 160512156 599956573 376290191 666198285 1042012095 716836968 313997923 35405226 1062300163 587351724 872898872 582500774 149950595 904570723 434876987 242080537 1053914566 420296335 955861699 611167673 436683117 702705795 626944242 99120685 735677481 186900435 595385022 536165418 915672930 10773560 999612753 541878444 383596825 581397369 953681051 929490827 11871353 136419517 403488761 994098908 1005961471 712839664 308310349 638558732 560826877 1061641376 470573777 677022612 235436050 993789979 42449604 501754724 373265628 137456325 147868173 972605267 714874753 961994101 828717028 1013640441 790546537 25616415 293190554 763588936 965036431 626178428 315992023 991894533 182445417 422981752 848672774 858169639 168217125 69515343 1024071392 838530831 1051530946 844831590 967622942 320536212 867684983 596065121 580377497 259111816 684707063 701110638 145263561 605240837 358475718 713164439 379251721 765966599 517876995 208108100 929948344 236429779 360945125 548176991 528713898 873213509 61827966 1039146190 663540583 597886755 630839704 618122694 715153952 238801599 415250745 37322346 399124476 929467437 629166576 680157427 321848643 1003414104 160144913 183389998 348255071 1060609617 849535343 414161232 248383053 248026783 875481862 204260009 754706043 528416813 941740437 851486650 332906120 456127481 399349754 645224635 325444286 134758198 598285710 810343476 62323447 309062470 327250103 474963425 867491502 806010269 959090683 737966479 884465585 650195742 851815082 634235999 939800511 703665077 745681961 925096351 388050140 534982738 19214220 221520142 218565139 978982418 255981943 92529721 356588236 223975544 986010499 852401920 61947802 939627273 201918392 351521721 777435903 413165385 283783753 523710356 116709193 903240207 838862518 400856908 482001657 217475111 587769692 749627520 849418712 151834103 291517764 925144051 1027352115 874723016 86000932 519295593 910448580 105968035 410174621 579667340 357099886 1628181 395953174 329747513 628319651 389986099 290601668 217633778 224968604 325017064 371239208 245751667 392092017 515278227 1039164896 986036929 148481558 109122986 559013346 800349592 933777574 617091511 330713403 210524006 908599447 192932891 526751900 154078755 712774720 645433199 905832282 121770048 190337443 245250076 829786448 730324950 641344109 1058304347 486672434 57925640 720608153 832064406 950461895 32283954 1034052873 753509333 13594745 270847087 343390765 385990695 1025122767 535562080 605353021 458182961 404873996 237342755 959400300 403395532 714653623 111131389 359386963 961104151 512985071 107408447 127971178 583487205 854317697 244034462 383623993 1054104123 278044582 796597330 508653558 146169322 860455784 546378654 882660636 111272499 610286599 72332130 906957797 1009578387 1062581238 20218234 267385218 99313233 747545374 834058399 548834695 126734656 551972557 793424393 742963322 43931000 881538339 1032343937 310502791 556431123 577113438 567632883 22268410 784305899 112699584 692753120 1037515524 469052793 964856741 714084392 1033720514 437873524 280594744 885383616 146860210 926256476 753023131 638090838 829767167 710638691 343426750 386894987 269529049 762782318 191653722 31219406 802430697 1018384552 950450431 700700977 872238084 386784595 251262413 636625815 88274737 896660640 535435640 1038271134 563449591 784424554 368870746 814447415 849102899 300752825 254061378 242672390 759603180 499389183 322606300 1019362078 997525614 917584136 556705425 20426853 121411463 727891565 235921360 1058099100 1059394178 800545761 794868122 276589076 1038893916 226243626 746342357 706998991 423844641 1004502719 361292229 495997917 294742673 499860025 943452718 602254358 561838796 498778158 540442938 642840992 639270492 326621498 429610400 844835709 891981900 170690030 56398863 694029503 460050954 715909041 896611593 825045584 793615543 325009863 625920671 905108736 908269443 306041996 506340633 873440286 680690454 53444552 923169107 9733498 652330046 619456632 194159185 383655713 117863278 713067610 1072394973 416293356 516966439 109658711 394270873 1039000905 167621064 871953788 879763623 293364800 129554340 809174933 669172906 699172519 543252902 817556413 45492615 762468732 202766792 763526924 20230120 473371809 106992523 817687833 365937094 491681764 619743334 671929539 702652918 686124880 70809381 729862616 516873851 959163500 806262412 515611730 62057348 274579641 269591704 858588873 895963336 91369169 321115625 779031255 492163189 288473525 1025654202 448759281 834593280 323595147 1044350058 62427103 238074332 441665539 312056537 624064114 625906197 931288225 401019948 440485660 789450025 532181300 711937225 852347701 390644780 1029514616 9600690 79936416 285674163 113961241 616852538 589418250 387167995 566999118 685891642 857373759 471343529 316538889 58863421 433479315 636593792 77862125 465238886 647428598 388828322 392723551 375556112 125464913 653313288 879535713 277301368 37357150 631624740 198325647 1045436912 834097278 684219242 650593344 934881393 870 748335719 461673200 611552005 910409216 733722632 767774943 299207423 474966196 302668719 390383527 915905974 318664970 503150199 142623943 581934520 972308608 568508592 1026477811 802057158 979472396 991504273 1014300665 905189302 1022124672 655034298 275950407 884352393 893254340 115447147 658276452 34370322 401737591 811737317 781308896 620716267 415249111 190095488 783506268 658633872 178600298 456539385 109262933 354912516 522402681 137114119 753953229 607517966 560001403 796892747 969712650 968228692 797551154 138490386 135436288 314866693 80999404 626069924 541882417 626209413 852853198 945696540 785211694 90731182 687010097 416744571 259381421 634033606 86477808 478716297 675898964 1001601388 661960822 54785322 75162424 3005011 174153541 782694329 50457700 61082411 189932932 441433245 442684587 983077814 437834128 482644965 916334753 708562063 436173210 75551763 285258166 544837883 1065295414 887618184 782151330 920344049 128398527 925439893 384616519 168551310 313714705 515847043 71739397 377125523 539559118 855900203 505127653 718671914 1015774877 878855026 810824830 1054697058 48270722 354244864 356228142 1001539113 729554206 741407599 709641318 432388867 665345234 116305971 1298396 616169630 478105988 637671984 956903127 767548583 882823804 931837529 40353327 269750790 697566661 226535462 926830132 875616826 906489397 341050164 427992840 271180752 712971142 946276787 667983220 949995159 850926962 238178291 247431408 1053712454 77088750 1007727685 195176891 126462079 1035331225 557315056 653821804 567827675 733989204 841499707 438154922 412955686 818502368 1016245528 458042355 925158675 907639949 456039554 698300467 332730432 829984780 273243719 670957079 286763194 772500826 761243046 374485812 882024277 1050839164 697125678 74980837 209429465 522698282 319202294 612972673 396612455 863532415 682636386 342252046 20024246 1057173981 673263334 634844132 137830792 318725324 699401067 63639831 1016073489 228496821 630608175 640457987 908616576 580478301 132689454 693787310 37329246 998554689 673505797 198688452 405168791 126888232 377657082 791093154 169890937 890817605 943835548 248033709 939115044 164388525 781339440 903311069 82427555 614506533 380461562 616873858 1015883489 152054662 25312570 204423076 346334872 544032261 476237938 331067539 397808293 775066108 226069457 984554006 929483510 635338290 449654269 552855433 972640206 245831082 46520510 781140869 188577422 576251901 372254859 407998124 34302610 248020977 789093351 1031191108 134838384 538696610 715946565 16392948 70120779 369389380 10430527 964209406 870389209 122178543 435882555 448358677 147480075 479808024 116235600 940357440 451731381 822817534 596271581 499901777 28563432 210883351 183873994 667097950 240790529 746800254 39577798 317613064 503925477 1031638189 595743621 309727714 183498001 530830953 381955133 459423223 212286903 614498954 179507402 434470662 42366792 913995487 470681395 2106187 466883054 559715527 876566135 934724647 211874380 517765750 1014196480 791941996 420538388 271506822 558899045 1049323434 196857700 440622706 511306226 469995950 797038854 48211269 856071805 863619047 864533309 586842575 426674984 567090426 11586782 358026812 1051556550 868630731 225314049 1070501604 162643174 477320241 513149127 571435759 522213009 93185119 308818739 431339721 412052808 1063047000 449838857 601989449 107100891 71149598 100909496 1140632 259580380 245163982 275281337 212067769 806606549 181246604 762105195 782470722 874827321 1053424328 790923007 189634709 779584739 624040709 86678332 1000788905 34778634 286561204 87245894 795233864 105751502 876033899 821138925 943563275 281685275 563431797 577199937 798172200 71773918 1459563 687265106 1022905761 938749973 406322793 456852643 88560042 238198288 253265167 380988393 1023120308 210306929 520581503 290191859 413494245 145449257 101344228 13732435 377317986 1022831323 857235469 164072921 116838921 329826321 223573436 818327550 347472567 1063976298 14400250 1003775027 469156639 874854002 904282422 924847787 634955287 762490044 1036838753 41872415 303165579 256915706 140973858 427166275 891940708 3713032 500317517 233644536 819035001 871875247 612382736 115638074 555519638 662720588 1027197699 677148005 508014875 3349218 247302679 682766444 355507265 828965864 734434066 165396876 829737090 931665673 614268264 740838860 56086285 1069731135 1062460331 589631763 64768185 617197411 865257120 732005782 63535967 1032215833 959099532 888254747 1042760849 759134937 434991499 544751424 114706172 43431595 43967615 689698965 925094864 46546804 955069961 966033860 135503022 88725136 585679515 5931990 252940753 561251245 690680241 505380756 358607207 617967173 836215088 184356796 580936356 420425959 1026442460 124986315 975414014 769898086 1041756150 686823250 209040068 466913660 778172530 849593433 277471835 504052316 211518799 530333789 204801082 424351116 887820648 293947325 664509654 590756342 595557404 699039239 430025462 579294821 845179357 441168145 561639253 984911175 747231965 130876162 513528814 774912610 792062330 740678401 107175241 372533228 420301790 942572217 190821890 524243532 112429769 215745030 734912446 123233654 225865269 206846101 737286134 99309360 683994909 76660107 407872168 187151245 928653083 498531156 246234491 454531615 453768217 715827158 992756071 6952813 5321883 370024140 887656959 309643093 872517963 497554705 537494539 537815610 1068537398 490645272 86304730 441129213 363875559 1072462089 755115109 563594294 568348863 339243849 774826966 625064601 373231306 680949431 1047732225 763213424 577586279 995617471 495285964 963566305 900344718 377642082 926294340 778996558 283087245 104989928 342658233 746214379 342487520 280906067 759990439 727030582 425383108 798297543 636616230 697327735 193435576 56811379 475046299 1070898206 255703377 399997779 421212605 634663881 457342179 969202801 58905938 662280381 781505917 4522031 67580753 975406335 1073665408 921131396 396020100 1034250347 274422538 175449662 667425151 228854576 201602224 156539583 198845158 5086520 125036078 340442561 913711720 748682585 662392313 1002639371 627047500 294301081 1071876241 662899767 817927216 427140987 179443462 546096268 408484961 577408250 858165243 691639655 222169197 984594959 1054695965 377460133 1017084991 282865359 682118156 327886962 144555091 163649113 998598168 1022201006 802651949 781785548 832861180 806886918 878325270 359618990 470503627 432157543 222689690 683190062 690706062 613089852 103464024 146425774 286418500 454456456 55867760 293371408 1056882791 197744890 989379936 148804484 962107700 876839628 751539635 220021584 534074097 401502928 163554792 341121216 583369773 329935854 442713773 285857388 671168271 262978021 376139098 406466964 276493191 311003986 45225081 798208054 909967065 825284907 853006209 1029517004 227493242 147241366 889623827 1048857997 301018887 261432233 888391929 383601532 318950506 162306914 436507716 413444019 46687073 228982926 802324585 1030270814 643528585 977771795 190860884 628902120 480753871 1046731012 698096652 564022637 84827797 754821423 445765191 838067237 848095026 586252391 805626452 550321363 803742768 544284925 18359296 162199720 777535579 718606350 978358450 363987041 48724496 568303095 926433118 812136661 54217611 94211180 64842298 872524620 53594130 593175313 982352504 416129745 807782649 215671336 648649880 476618263 89329046 103116540 989234733 24742979 966444542 990246688 530629838 1065152025 529872029 699959051 607312574 943375178 719900657 196485019 1047646247 674871290 623394322 430948219 164343673 445514741 137149598 924335760 713612949 548568583 717717857 523543702 730579199 434775331 17431137 501572076 568979038 923697910 271430532 344698775 1060084804 391018723 760475144 170771572 363459511 1059882053 1073669612 681168374 922493756 508600199 443014697 432348853 526684570 134994046 439850154 967995510 714688872 635166426 914386490 124288874 897056915 1040577503 676297494 659837033 222733806 168193339 179843064 417880852 114451377 641501952 188117182 1046972704 396685569 393524583 326174242 1028464654 204748 1043114636 806804524 204511723 743813358 384187328 970362103 685036220 735390503 103679697 500613921 149745410 62569612 417240108 5117017 275897729 680352441 452751327 1017775667 349780361 355239798 1033743022 119319618 638527173 193836343 946745740 355579877 640545741 262758432 388421521 585931471 209637227 258439738 889895407 551361660 252211558 642298782 348355297 901924158 205326539 30831066 696756534 605883286 215949354 43497718 919738370 735182344 685333860 290955674 665879236 44333452 599612537 828107690 978146496 575481854 308792914 914312688 1062807586 223277859 257328432 931787686 510420812 670627987 994993979 1066511270 714850300 107927294 1018767196 901473193 761653820 636260630 205155291 449715074 318148885 561356437 471031428 468076600 1005917552 236525940 588791800 200680365 52339808 38724957 288076723 558982734 913786162 584322419 94509126 892808906 630770524 470445959 667854030 620484252 517964807 1009224280 970306091 354110054 558673658 94873051 374573890 176540062 61706245 719102287 1054451575 109206415 622250481 414661271 196335531 507661683 632157522 166833114 973659679 268723029 913641659 861103761 630659338 451637202 399196157 456619591 190946480 498824275 235665186 219822351 293753608 85008456 81126358 209005628 819466796 876142155 446353147 336316679 392433174 17966669 82385846 969235689 297498572 26930688 40987484 139950321 650416764 766881351 670098641 170786248 337371362 534622358 163398118 861580587 662945837 117491833 642455353 521852620 29155710 74735630 703900439 117636016 288925074 788423603 724119132 821487243 244036650 796214186 230900615 442306670 199945307 855769246 987222368 367015636 259490908 147415707 797370540 538625387 496281182 520711761 38578275 18082947 868825619 1025833251 477148586 654486062 301666139 265626394 1012476030 506883144 593085965 294939563 401488685 379707386 388364416 603358012 861363816 238814750 674470604 785762841 649952727 282925480 918930011 224109523 842977987 754552620 265713138 717876080 74805694 592839762 594150229 810983640 1038610763 469579057 824991245 326625148 750731761 381088138 681804328 322964982 204259626 981863964 124788944 912776380 616148093 550859176 829232348 391428568 363464496 919013434 236406298 668673995 980237802 899885834 272866473 147847687 354087777 876163994 856892059 1021230885 120676996 328193593 437931326 401812800 531462857 250067051 963765099 119049626 140321219 1071930180 270816101 932474748 470216699 100644719 1037192500 56659782 302544146 113076696 958870835 237667882 77792990 456877669 822104253 5185649 200645065 893622683 35779263 9503637 1007987023 232791021 669803785 559399519 201691605 915311304 1047498736 105940902 720266358 44961471 320151784 159043930 689085395 652859720 219223692 971306624 186461168 13727744 440668229 739130842 811302276 1021326762 229947674 933432724 636062650 750666555 976728989 325613151 399237446 515783180 505635041 938908746 47414152 145474221 668474607 408723348 93259673 371204151 1034829606 553391224 528646252 1063522038 515313575 160632598 678070977 818873811 777251932 979632545 88800207 593111819 1026076703 924094042 491691061 324989706 31527482 786163467 784474584 976551592 591669095 187137996 402606567 439570678 80693625 303448908 435176288 774817556 349260049 579962777 850178993 447472275 540153511 641659755 881335596 802636658 668515010 445172622 127083654 518079026 891290451 19409292 2732105 543020358 513183991 490803296 914073451 480650637 653317751 363144978 303567514 84312286 250855664 1052566474 938492922 630505506 660496086 41470685 496002270 109315893 289185151 579290714 97074527 174992130 1047380557 1049419322 684978321 979796565 247102600 910892649 523349101 807066555 82699988 681630838 268888528 741201841 103075572 916554284 396993488 339466494 382911953 190008310 124043830 763477552 849485925 1052682049 283378402 517572992 908892454 625203478 893843137 306910320 607491516 346478295 248884437 63954853 770377366 325288306 675831922 564827954 854840800 457361708 741349010 100150253 808085995 586558170 959337673 399673822 308027712 59032240 63384601 366271362 1066853208 166725435 272239536 205052180 872795622 1023741840 468505810 39962125 571811955 705957754 403078263 263141738 822252333 705083586 829070937 201139653 627941638 297956958 262728667 882453600 295770567 526114101 634373930 378630853 760200699 1057090172 925550902 900888042 435582872 1059974090 938258835 348528482 345315054 984929744 791487751 434146487 255718888 1052063953 650636822 63326708 184191231 777969313 664346716 648602961 144283376 415495807 421508133 933003569 612671014 885076200 147812267 908702159 161112083 809870977 738589841 472187000 797970280 90124678 493462059 859864232 778328749 511830979 995925540 801509743 572882951 856789039 649543434 37931551 505188516 694887252 889803205 346626599 345390415 588968421 159233585 63841523 25077678 59063142 428891711 320091119 355362105 573625233 144479397 606947313 77927155 477973037 676107289 720652097 789545166 320683846 945971301 663131967 281655835 523328478 10085141 932702391 753905104 249767143 126408393 417044880 186285398 609560469 265171848 870641688 1006150783 397970625 722235795 412153937 791036731 400053855 151948669 423476028 126866739 246108750 521706433 1052858530 562282109 909246528 597591101 444219334 88213297 856123723 117507012 1073062712 275891463 981908938 529051241 571902050 23454668 118894278 213942287 1000893759 261059610 226451745 126421688 33658583 283251794 371952595 1036758880 200067180 492663669 240170028 204647552 879089284 352141112 155502967 840305488 694502704 870376397 651784267 1050364045 674866920 546231716 731557204 318075346 310633570 997068464 155480520 572566823 649021041 168722806 525223919 577258822 675324946 204469113 962993218 969004567 784420625 181322920 803764034 912322990 352506137 689457013 871032250 997923037 793676505 641906846 30014357 739979843 612825320 200406875 449957796 288569801 452326193 69089471 784882984 483735776 426344853 353484073 1017811141 452603653 996374664 799979144 812237542 484926772 364148336 527045454 191550808 753485736 1000537273 9030065 532694452 400195675 696759147 863055096 500859811 384107856 767072995 703679652 848295326 797786040 342998380 331376878 388463690 305808608 994462638 546229362 3285388 229894334 133317161 397628976 11519796 959381561 302649753 221873966 53304876 136824059 696039454 361976620 703714320 594513933 989339494 570197744 407788686 651350163 467478706 284772155 279620839 1042338671 592318191 621580501 975738583 23130968 201183640 574909308 67694645 1022754318 675764910 94892286 45526380 419478372 711153072 455708897 949405186 1041092463 380886981 383541743 996062532 560859700 629987427 236999010 252701355 360976142 1039162912 42511954 957375992 207947498 924730833 844095376 1016585527 180060765 383320898 866084856 37956251 400709530 948060801 934672932 640327855 843513668 785572312 182465385 391402407 458220454 724671000 958690416 252254981 879614309 314569067 914744208 363977529 629541526 730719136 677812810 141349581 186558863 59404095 748229381 572278357 909636625 77215467 326848540 134828353 274835544 380154805 154512201 468117000 415652529 1070486524 890637466 586152527 835491040 577587498 473981149 832915748 108564366 253691098 762588105 929428412 257756500 571537436 4021358 211330363 796642877 426734332 319647844 68857084 281543316 72920561 912426428 1010930814 281458663 718473315 787545213 493848139 626210885 295567427 515781330 229068852 859183900 290759914 65213596 787524805 160829271 825648359 1020407550 677019128 554178150 425409014 382237529 110156546 903450065 869377563 868981358 247830476 911955938 59574404 737006458 306125174 162557479 129876368 710363751 416789784 485291001 950263800 308147735 12970678 562897868 452738371 1068664674 621595846 311349783 414421181 164679019 721352769 905241178 802334355 163223550 99910078 473547868 50716390 976116509 862596641 699520888 911217410 679048300 546640000 697035403 192594491 704555894 625239460 163945414 142232556 916182186 810428562 1049866151 118683346 119022843 286030382 35694024 591860804 753104888 358448474 1071038567 874025274 409987944 17276216 209269608 274493703 917676268 575260977 899468176 1020866959 59029146 1006485787 28587475 680690108 984390770 718843254 1069577063 1001980862 935399406 929783192 95403111 930750472 446835179 288496844 560512261 160247044 881780357 187304350 923253271 205712951 349803701 640063101 122376442 955098460 532698049 119180583 492128630 875304539 37060644 598937475 535209390 73172233 839287930 469905972 1056228951 988216969 713119425 450644742 372419628 564541394 44562994 204684406 196092097 878242760 618733688 287112924 345552532 761710996 139038832 930682227 313151 875187634 43379368 203373657 264765432 85058012 931992991 244729197 234506300 504671601 149638087 544654665 344187383 337652628 181286165 833873170 305872689 136578663 419825999 512153113 428911477 2113636 1065770224 377750101 41406646 240729322 350763804 774776189 407496308 1045088858 778852473 668121342 600255740 154163492 428688223 784871283 456184896 1056880152 1061082582 894915871 294592115 445736443 354112698 134952475 622313288 722370510 671766721 928445949 920832227 98553194 69619357 879422704 425111670 813404536 426132117 342945156 1025536747 491129764 823285006 586411176 486321772 819293070 532008880 219861803 150692895 801852929 279974675 945171777 252937353 305383953 638184403 424546221 739863076 583025192 143129651 68307275 890990072 734428972 518504312 991318376 185158865 452193037 455021760 559812051 475916254 177569548 660982370 614876763 967583595 696891320 793224136 233999803 36168692 51205966 1070100038 64533258 796159034 666649515 426493975 19480631 241171838 880167654 702314072 812531851 601516280 799607052 838737479 728714566 780275762 544631151 634718118 529152450 476342837 298682707 241366930 377862436 366082781 588456155 531285034 625130470 323771768 612300841 434040721 388675147 815080503 364444994 565245363 6072776 1053043897 262813050 937577454 565273654 599981444 56307740 832865979 1045035385 957818781 1019884649 734788685 716117108 14207090 256513114 180193777 525500004 1057203036 472988222 796125666 476219998 175492503 417565684 267001539 239133318 211686123 753518739 758949849 63978514 293536184 256600071 469278503 27272239 259306402 702813818 681783190 707014438 99612355 994755377 506353356 316303440 638565285 48390320 829633016 935878877 1068683918 736874030 1004686890 680217988 997533129 652919245 1027379198 859834662 32702229 15818594 86533833 345063663 583439203 281433979 790277738 246560396 828107185 83604109 837639161 549122389 511637921 682706765 616449495 991868263 338987871 102804040 922328804 30370760 900611724 610256966 947853351 522179385 186137019 491409568 768498201 19797631 334879640 610599729 881675705 83395930 271353403 622834028 225569527 110682078 529242819 838401939 626455063 1005890072 164444131 21890233 821973189 122594936 548910557 98150673 550077578 110664859 918348576 941977573 724673077 861151231 701804059 60169868 972651623 620069736 1056552778 859226776 125802520 1042834530 952023318 540731075 283002791 381810030 702532134 75766258 825522028 999712481 232225511 446978926 866626527 856765617 28045129 799940761 556041350 443929362 465382846 369057704 452787050 809077238 866261347 50135849 348900337 110206277 840656483 363481715 753294500 401752886 336408916 569611403 411575549 632125401 630260690 185226027 116243763 79445573 493743359 208643475 24575041 342748005 1006464071 423126160 762925827 278301942 1036094615 529330292 404987019 1064521032 681669760 749273069 411763118 638000157 912349619 307530580 876218453 984641310 585313596 966200147 183439897 519524308 941625833 1007337027 988636762 627817762 728146168 374792471 397953938 593653027 804022012 126527807 259122662 226066192 186600831 510924487 754609895 586562824 399615277 531168694 261782205 650574699 658479869 991104680 183801423 677552467 1065445335 886714194 339312492 672156046 142564006 235786961 959285237 412949762 1000222797 900494762 915657691 41504845 152100081 856250806 707587418 1048664636 805394118 263930999 1067146203 824236337 539044995 101985787 999679084 193653921 271445386 473262493 770036013 497841636 370268848 1007811610 633854160 824857908 657441205 1052919500 260403496 355750512 265513764 566370859 159141030 209116689 545657021 582379264 893841910 953280822 430248535 827699783 944976168 141074345 981201844 391698151 8221144 889455678 454819525 170710168 735572787 649951658 4405043 1029741856 776070891 27664055 294265722 439990277 712857835 447362286 875862126 452729349 543248817 679421132 50669244 382873014 94204637 840932178 268771947 859679947 70675204 90971736 62043460 1015088697 119119948 1069405515 787217166 535335071 330382577 163072510 419318572 12900889 625459048 63977926 914193217 222649066 254273240 1016456422 239039034 725388307 213476316 592719036 836949243 345311178 475703120 283857983 1014525474 368615454 45556922 755297839 354685025 990626889 739332017 887728766 757942995 796513561 844318165 547120723 26185993 662266080 835624405 912534291 103064294 656387300 44851674 751645176 528687479 135662139 1011125173 132592676 239802856 564761258 185754183 476669553 188157515 705600114 66723274 1028335193 789479379 96768187 276519199 573988637 388443748 385300663 765718764 596806482 544911222 1000978429 584759860 316382671 372865862 344070447 496473025 358599951 65731713 936091205 193436419 990622808 456663015 471941126 221372457 259413661 203185673 535854403 74562975 463301221 702393219 499973319 358692159 543844992 890764450 953386485 332058244 1004559748 260053202 214106735 464880783 718215038 413372909 108370942 234687283 419245635 778483757 291692176 638012997 642323949 379624789 769786099 1012353452 125900840 578909598 46022789 73622952 942799258 313919615 133553920 760162763 270712776 870657373 437890442 584240532 771175203 733297267 87967023 231572837 560678815 187890482 206346163 316247438 263275194 311476809 868297574 946693283 551044205 394924842 400681835 950699422 656790061 607605569 697084545 603417762 617795143 211760174 948550002 720637271 499759475 75985206 124801934 267831639 824950846 914568446 438667439 398577041 719252267 154867955 1015517941 289215941 489241280 237710419 943118925 986378689 211124813 1047216403 247231376 86989740 493406020 840820111 630763804 676149793 967758262 606042118 625864348 999130713 778396795 601718983 291990413 49046904 948375325 755934783 508644092 875084901 212641588 756769472 600910376 654960829 758572023 161497295 953856782 255807618 831023453 172058168 605993773 565464571 459253202 1019718205 12288378 228248572 99566211 207965370 606951519 299599829 699034979 555502318 791285083 858236979 1071086509 22308411 801038340 170487077 174372397 867558045 818749224 317033917 664047471 97227558 256271032 829765556 236894656 13108613 962188127 251554595 282854113 159682645 376494677 559523319 129682235 791842212 576148698 76540877 868156675 150467928 898643904 337932009 154515994 127970213 363738010 355743047 671539225 900248190 832776322 203238632 336909366 992983861 521311008 1045002239 686464053 143018649 438009582 911980293 887322574 1059849642 607993722 903359050 234849120 327012699 747347652 825640660 977221507 805077906 656337148 363208015 796089664 913688297 34152397 260449986 1020829540 359140011 77211486 347078637 360889929 664130816 344614944 272910542 832693104 782019271 825352048 295719792 381977738 925843608 245387853 855447432 683705717 154452406 555951081 719314086 739014602 787410940 852945642 688025222 754691729 11220715 309736406 283247364 181581114 405955159 71525256 202798289 529546495 607436414 229565686 680639755 608286582 489027920 78244234 567238255 779778542 1067257651 256529814 994857057 813631079 39416831 556637013 97572463 431115898 461883642 1025200143 931202107 890384191 1020585058 465434995 734685730 1067060021 551337290 203930909 716381517 19446443 946314389 811830369 14158370 620068092 349715151 161794689 838433951 1003547314 699322427 484241381 705070169 456150644 320044844 935072090 85748179 526923436 853608762 618475293 504468861 373077964 240639266 737894255 60336392 400665951 164835618 367829746 580497854 93086505 750979304 67951458 593879474 701801266 996453178 104484621 664691849 166617869 898375693 547179246 293761753 357424975 452667304 897173196 266990705 846588634 51455245 515667562 421261284 679273167 265517346 949980257 441532937 693969119 659443971 874683922 734400892 136037160 842004965 359859786 721652043 692182932 363029035 681074842 854925616 507395290 47364968 377300635 801170589 1071139759 367103750 119907849 725245366 723513365 709433879 497990552 1073695470 609185003 282765259 552443010 510398796 587401336 945784498 411283900 736122450 299416585 151219787 521290255 1064170993 102307312 66215215 749242100 750210287 827035861 177753692 174423923 1065847878 903775760 661043263 330395321 559689746 799114456 149352341 192580689 404657233 970425906 193442697 53306326 748419396 691056546 364059889 855491965 287828975 595384021 628132914 939211375 682915211 141565608 629030866 381759130 358762863 743533833 876003425 83535037 159277150 454994761 775641396 183800338 22924124 314914526 51707724 435381934 529106347 83541868 338960271 441848377 669819334 71264824 13010058 1017686675 645378355 771959160 24411603 45255307 787138692 3541419 1067793990 505839430 1033722136 541330738 958269868 937301149 772361548 680345523 1064087575 799750641 265805599 487091820 790750757 627138683 693104547 742930104 235019058 453434516 761280150 735598818 957020401 1522938 621860113 560187586 953727829 49558628 422933375 344250799 151066086 1006461734 771451331 915263505 397971366 807414318 823518529 669159045 489025763 218295049 852387469 456777094 701405001 557767535 615928238 414111512 659438061 876765440 430911018 87433867 900640160 355163819 728595662 909838197 632559884 956297610 178767814 223321810 1058529432 732256742 487617806 258105521 1005493258 763039790 532343889 456290811 461876937 529804378 1012572281 912023346 996439576 328221217 793384030 1065570247 268780596 151415143 402275770 386162269 559583678 811088575 25660231 87865403 1057567220 1073427742 521266050 664896538 692156032 936786252 505691818 270687190 494707607 947829715 1062068974 116952198 280276503 351151227 329638335 364923595 401702117 842628102 41414725 317444381 1058152657 448945711 970396487 623469437 249206797 432660390 222059007 132536325 160160612 505801587 192390778 744228514 115796086 378434238 629230825 22089199 543453317 191405720 501482425 21636722 311800522 163990475 768451310 168121306 472881072 935715572 381675841 640624021 594334966 1042152180 269763192 777467984 76077439 897690670 360391654 908920458 801747638 1046825403 175812269 674521823 632482333 548452237 653173039 232950696 296644234 538561327 659124654 769129687 734672327 735631990 476208587 280463174 368543469 510371750 277529699 236995577 842822288 970953139 44037215 81289121 147978557 961427128 580889047 1053102223 615163104 1005668138 718364432 149045884 933191651 193220131 103362685 44869858 383212549 33418212 417845962 631073212 919068478 500682177 687630394 905870917 553330939 406396018 616753063 846916022 345744572 48791700 446481522 785456144 266624743 997457999 288162735 50020036 273053260 386817764 675302735 441780524 719542938 960620636 31218678 399740960 319104244 1064894603 1046239558 368584301 437057136 394977936 656128975 43393070 340625844 86624731 818615770 60670310 937900014 709333866 402975449 154289784 738489978 100982094 427578593 649769459 634598662 916745318 347555915 7622871 822556227 175898512 922615333 689303237 688491348 1012103368 906536638 480885591 404436955 2123268 966128647 195270835 468136847 256198954 643358409 1049350903 617967022 886824167 13664129 968537935 164482438 683331579 761393138 274959984 770170953 504461202 636545314 960145855 536993018 547152387 505195893 490849292 204380582 684633886 203818964 443968153 80079010 229936997 1005852484 485509433 1006882172 918540761 341745844 230786067 819599962 246200598 256317234 728738567 299156353 971525291 368531686 326972235 246047323 1056716689 314215813 769554633 834946278 211218868 715249648 514087154 514570044 364006490 307765154 593032753 108339668 405919755 749270445 1034576902 372272722 202357841 790621835 212279852 544082246 495678569 946644014 357152812 280678945 1016737093 499733158 136703276 188054103 622802465 921488177 817399124 474867257 638545680 563799059 158976624 49235506 459512834 798265007 836748683 113393249 109287566 725475544 569745809 180511181 361200702 986123478 713522698 668052617 185151607 96208507 2169447 90148464 785025379 268440827 734866820 303996037 793729668 861618277 940272343 550822529 651168508 604013482 398001202 793848949 714683849 1062631329 530920051 1027688471 902355723 952907985 306093604 938383835 298269427 945790450 577768180 184963150 555423851 304402787 1016712557 449723608 429291799 174363968 855673336 679349492 672771403 1050388143 782356964 1047720705 256415521 801940036 131419132 989975461 258021770 1063515689 153145952 264725548 94978664 448423783 323093181 194408417 774426569 29019725 998661205 468889301 864640918 489871563 720526945 365954802 157984272 928526168 533696462 108528399 701348118 180020908 454523285 554777749 656152772 897739261 512517386 968233469 234561677 474600046 664695323 756136873 52743475 957133729 683604114 243104291 566361819 363264268 395787152 140656357 934870327 498890225 692630718 229785853 228667900 97306587 477440681 184591815 582901162 385314814 965565156 797038059 1030630487 49584336 702615594 251604560 513724491 278795533 763192314 511679270 243076528 157427622 429458556 132538955 622530278 496220445 350143359 1033725732 673300970 338056654 159062826 866438207 341625484 566962323 250265747 957539884 685975898 317613057 118772202 422225307 962850292 276918853 839402507 829599918 910354157 787960908 581023938 131366667 778009047 356520997 397628425 457495279 454599359 891779420 105733889 429918764 931428179 119010699 927055220 834707557 847421848 915443370 438200761 997871271 1018114731 794370789 859496992 34267084 587484797 476960920 411144364 667252153 1001464852 138600094 77967210 598137728 925570117 625013509 501358579 822547794 698496975 777360046 178056991 130638812 754739844 370373134 378235981 1016112316 250677331 117363776 1017323445 508928988 301984593 26173366 1052614551 465918473 230532506 394714442 749821031 82462459 989890591 95638500 22695715 253513874 611566301 973002003 41035122 727472822 152761535 306122205 853608383 47308335 304229651 166986011 1035519655 726538314 910646133 1029298768 1058861475 303532935 412435341 169081541 85344695 396296318 349963531 447322405 853342584 451372161 342745819 279852999 516020138 282055141 797093502 138215035 1045756554 959743969 589975051 538959255 224213525 555272107 1060588868 402003999 965844825 319537468 312741927 41370492 113444889 214044109 513162279 1007070778 586014921 355795172 978621185 589795873 114106210 899643034 922160448 447516780 692822536 999136545 184333384 1040599130 273775374 894405293 576730857 761002076 59318339 76832717 751378631 270290391 133684214 472149601 891028646 821472839 929824021 438241035 780011525 778946420 308724204 569552546 256780619 847955593 193223305 134886427 52619998 693485156 418579295 47514962 782789746 696495622 541126425 313154841 343828724 922856248 627357266 546845232 156702449 68480164 380104038 15662870 709938791 521168210 484346320 805000064 774686473 842139960 507706478 547991523 775043321 318928076 325191134 359436315 89819988 40604290 952121189 757548957 586898639 215336778 128425411 377741039 427720360 992371356 831605836 559720865 844560871 793903654 538022239 840435902 107582924 473605383 634175433 206668250 50476781 994873165 973399005 515150743 207378990 884949671 1042273117 163551261 391108197 608468484 93836059 26198641 710119634 942043399 619888579 769221160 119003529 67608549 648537772 682634216 828573726 334937393 428222095 333700088 363671965 381825037 494216678 258342506 936831348 265928062 197126274 971921545 809704144 609290806 117109279 564908396 167364092 1013593169 1014197826 131303518 374475778 676614539 819718096 360607383 188653877 213888033 794227853 617840578 272233692 950843579 95263853 839746579 937524544 52997231 504975097 17043946 124159973 902676659 887954326 298311925 150431645 312891071 500025894 310333251 1053440770 922307035 285749024 937063186 68452682 521462843 20355920 480158236 503794714 286501137 971883589 83673466 213679519 895617373 55078210 607705793 1028824706 836776822 425820776 704026591 833529455 200436282 219425921 509471761 753795268 443699240 941997938 20888501 59392890 713037393 492857118 369915778 160582954 1046443325 880973945 814769318 530370251 942689712 557886772 431084120 973302078 113510681 250106668 609149720 909975292 800346891 385271584 385611139 824954944 260786246 744931157 365919774 1016012652 867695789 1065797626 522333413 809727140 982045460 746402189 314801360 333604478 294683670 383663441 255100343 333271981 595229506 867412696 653668108 1008719564 208546236 870349727 961570481 431019692 774509469 356107709 636371735 577458789 96133868 453261304 113674612 671914690 742712316 1033391626 975776485 839267771 84726738 239423566 166147269 322789283 61320951 445630715 267945636 407502784 470914595 198027034 1017139475 39714493 526424276 430346675 310102023 493029873 527344964 827702208 245412876 1022944300 890042190 422063689 642025794 625418798 293352773 967422888 130076603 759119291 957868739 771200357 791517643 610053604 954850435 36121926 44484857 209279088 497431945 98071756 507410591 884125872 264248236 321143998 603996398 966557792 304039160 837115501 374168557 975703120 627791333 521062962 476711933 679715291 614789513 551669898 597206358 47501066 624543615 188056252 1022201324 357045733 431277384 347304209 678334438 1024978150 538189121 289872032 161596041 966397746 932291539 657991603 647592619 383365291 582035997 644673950 944231357 396664840 286284652 993610744 910948711 661488994 203010414 324015124 283109397 943206041 417488202 847473311 994169894 308982502 783374894 343097624 94795659 355741549 1061586492 1049876083 384537058 47456655 1066272388 918400791 914881276 386817020 311967641 408992892 220944576 382474093 1033377617 39319214 533062410 631396221 538770560 19477040 158073772 298054853 395331722 121193633 335381303 989802522 546334181 246110027 231089020 363320925 31701215 69819892 736262659 326230179 794188315 761340419 620185364 845042577 202814083 370812858 494797842 877184143 488277910 964605875 279528311 467634623 382217709 729063750 632119880 659902420 315387449 928664013 511921161 244542651 663342519 160098512 634772071 616084069 824470666 598044234 291011880 291805511 308281712 16503751 719495111 894325029 959211164 741692732 440910717 181290581 210316295 638807975 864994973 960247972 404003448 632334075 609156871 584299545 535515563 279269305 471914292 832381601 911740780 1065866018 587795275 323265059 744227459 929505160 788690864 862400886 1063331225 1036741636 974750475 409332561 682308858 357436751 41668795 1053306801 877198538 278803311 525700372 191504800 585037911 947430486 339219847 730096725 937800692 797174961 45783889 120467636 397714809 193935395 649299793 936715535 603085374 209392792 1072598130 1015737160 106790869 185722533 854189840 1066107428 600516237 126842706 469754501 303346193 905070035 981845006 254155059 169702210 555268625 203142025 183005131 1031118241 152004775 6939213 528188247 593842692 712269620 734612196 1041371489 969908353 344416663 715321766 95651923 902836208 398910324 560732380 584042412 773241835 250273290 283933902 1024927696 203350677 565413581 1068195302 855641802 864296888 928366092 1012459636 708493153 349000008 812145371 147002476 1039425149 373618273 737573054 1039576456 969912068 459090841 149761924 650165406 389932932 911620762 292916136 905589461 949243195 320792725 973619859 460414497 223415744 451592868 152289770 343682570 999772368 134045698 219637088 718760006 825536007 606091911 120633865 995283902 878789939 610968953 236066995 405194375 579646186 225461939 853823459 387000438 219493508 245020234 668329142 669950997 773850752 182277098 551290131 289955965 329973196 917517160 220799501 792541259 994573244 1063883349 965084858 300453587 281406250 178350137 256707126 827910529 796231444 260538976 366075519 117405517 657636572 501693340 1021264994 581710047 406119306 822945236 411397297 877505728 633370569 203196573 64477841 780483497 598091883 116325923 765744810 916030912 720326370 831398379 465780677 842177889 832560055 207127851 657195215 1019393707 312283002 27172430 959918823 125796549 1019915656 753709308 400532444 27253920 690810111 853756569 743792156 307495998 934918655 182438880 947230423 83453466 721880906 24584536 684846046 289029469 408092825 60253094 909420289 264241964 679137472 137989633 573677422 162964978 814069852 141257767 920610843 620002696 471401417 413973994 22938824 33893464 16969444 404424191 567649899 251475255 967272551 1068372377 761093151 26550684 561433197 54297515 421995204 592102803 911818807 69754799 53125197 387050214 619291184 561480429 704005603 272222156 276497963 199360191 820046290 98256518 826015126 372086082 1035594978 756982877 688726714 952891963 236005496 718809625 607521432 966942636 133058511 951894916 848734583 481493284 634596909 855243295 776501025 655572785 394566030 916262064 994421318 351321497 267558526 469291576 316410941 910156213 282975586 248950868 406008362 710918425 803924971 829924433 1003326453 982556485 60052469 375779001 1013024743 475711850 1066106454 748258789 787154222 752281272 929553519 927637564 230722557 753137660 507599644 876782837 291172016 176996142 623421016 1008834223 193503670 732997228 104341272 141286451 952855724 208736649 170134389 266556213 937973072 693162941 735919612 17940364 338577076 476938134 920341063 679774405 117189162 523124672 385290967 654781800 806171322 717625172 1048414446 653960369 54838238 389090456 374504986 840498516 393818969 34901698 796716510 885458200 556360227 2914800 527509060 736937621 179342979 585601457 177093506 594525261 547173724 107750782 605423708 267433074 748652852 654049051 711151906 580018560 361280373 247881971 380077299 590483730 379167497 930532350 78333375 695788047 553855167 877836112 308845874 310616360 91541247 832449991 965894485 307982378 856441047 131721283 465351420 685808157 781616326 944917170 386448578 757978474 971750238 980604096 631874278 359645559 528910185 875415084 675070580 973713770 463951704 925961877 883178228 930016448 529323906 538945017 920607626 449558677 223830526 401745317 533463506 302522320 757715354 382162281 761480320 707661491 777669052 306190520 768917689 616215463 1049902935 391405969 807072676 925788812 747985956 584040903 593542132 142475415 77008381 516353685 183702963 117006319 402761664 1036691484 192165291 830943507 319763734 905669628 1067799186 59003659 909378253 555052137 986264571 949692833 521154131 302446406 829731350 1007311881 238553924 227515853 878331737 706656377 355957121 796074535 34693883 902675616 35091105 921471941 443396611 918506693 451498482 229738972 637897843 106993233 17815348 200543386 473405331 18699754 535034120 334126204 908796960 749875365 464730296 739567287 92627427 120409519 875583657 584875662 561433463 704272446 947191915 729245467 206278408 174321935 325571873 627005457 152548267 481016066 693475525 820470945 133757322 256851395 582413895 178634521 497563141 695734970 565093924 312754808 686677053 1043629707 683742928 615555843 503274038 97459961 542890421 515869965 612297771 794756665 439202005 124405214 426569296 668621525 492158985 902355465 652255660 571979803 193261723 188052656 696389703 79251859 25436019 687548472 143259855 354848061 596102518 1048917454 81695230 495783727 1012030768 456403407 331995919 746702133 412706022 92040165 180418840 313671167 371945060 726063450 137071582 831408531 711158017 324553751 692874332 252134214 313111194 184364207 762149525 989001488 727779063 984469047 943501596 586910553 872960700 102213819 1012422599 574994679 120318338 331751528 837577147 37031504 538349648 225466086 333006460 900684824 129739803 974041507 490726374 1062329483 33940134 297479835 141099150 758487562 284134755 771374036 486742912 203606974 124006343 354725811 734101126 73538314 862630207 153846531 604139100 265474504 708773511 731128898 463797894 890170388 96484104 725197622 102556005 373710366 476516803 948662805 357804130 469658239 715259797 480298793 172809058 659098480 829696004 997032991 858710951 366972257 560460405 309305476 428890651 521757922 729052511 121897072 871464706 450225285 9597033 115070404 862660016 824306950 82580896 381907461 481617571 112798860 13137101 852096749 571647940 484988276 254471011 934569132 111412437 400020984 718119212 915110160 377255689 78467577 104320819 848566415 933289874 874119225 888298922 645511413 57270993 855918298 505927828 212544755 1060663527 604280310 520442438 166517075 989432763 506189781 71196256 356883416 79170849 769502608 443808939 322169106 724007712 1062077526 285071740 635564651 1068187250 752835789 627295842 177291914 953227934 774002035 752850580 27408188 577889655 640961881 370388689 141571759 229142933 294979546 414328940 366540397 51085872 902924328 466975999 850835704 530139988 784345964 518816611 127470965 626798848 1009685869 492768916 397594916 987264410 544677185 43502861 458135383 462274258 217009859 739751919 1071857534 725768749 612624350 254094448 569730548 173683708 337817800 269513937 852934260 619844170 446835928 398107700 40203950 395107801 1044311524 285390828 735974584 542037395 233718238 389630072 321272172 186593240 11792500 6436558 584655346 707257728 686777541 923189871 574334007 833375462 801736413 1015480267 339698786 847089260 984979858 875743779 155195497 253732876 827979050 451293774 746879391 1022341 838558490 126433599 713942408 574588120 339954041 1030353567 944067819 439920883 475597209 620527213 851908804 1070158673 819973879 386547550 368973555 816709717 267566818 498512021 892029964 789076489 975470536 1050871055 576374209 32117706 1013134901 255655438 910464113 216151063 345009312 876657588 224127077 299396110 841287002 988916195 553115922 296624581 647593139 860294420 337311850 968065909 694820178 921357159 92900312 816320968 178575971 936452127 269295149 653975139 406824391 967469829 766165083 177784 984051514 485382173 1058783132 913952968 756800272 616088878 763482984 920730471 141604031 698920216 501766083 747431986 165917437 102217045 75417693 737275345 823870254 1035393141 600658752 945503085 476582149 868007878 124524141 654430934 1023133127 490341664 922406057 733188720 108186328 103192286 415931090 460929591 333446958 834108612 759683270 633095582 872811632 402510106 407632747 1012458304 59726706 1831918 37481056 248549679 730423074 895362092 758660614 461548377 573941842 824865850 167665860 236628935 845251215 605506373 605143194 416656718 40468283 512346604 77450174 729147423 130789768 412932328 517751298 79627192 906143023 464850509 734517739 708103662 373642305 606269645 623631743 392151434 171031582 739744275 54105600 560165501 108628031 452382468 881041972 172918948 385014161 622693456 992682444 325353802 580609334 791888861 719473531 462873956 165430642 489703783 131146143 391681489 740352717 214824381 987459164 925266381 811962063 351453031 777231043 966862963 569671247 251597200 863143409 650600610 295273051 105032896 144088360 447770295 1044735688 570000521 201494099 79583623 502984084 717045044 622928256 736338737 753025003 937182660 206305070 1035725296 671937746 87342774 735236742 301290464 746023063 711707456 568379591 457809343 742377714 525636366 631504353 952186666 457102420 329035716 236939058 611763639 222499368 238453750 662136957 421973561 52159260 706852101 695381216 588133778 250303864 35867433 816956575 737848690 190860080 843251133 683244232 972835160 185882194 282928180 406319275 739014360 300417876 833583999 109943171 299086492 924778836 126148946 162877710 459181468 990719246 792550422 399367909 536990459 387698964 557575537 1064883133 374856153 759426829 737991494 688486147 940133376 19698888 342078865 129604209 272717198 845129447 549140012 473819895 564043603 834591836 324893603 764273824 307756371 940071882 597658788 912876122 710819788 991016011 305957709 662239671 205303045 335531653 208637294 575060127 612701609 1066661740 278833093 949557972 946841455 656200794 313804335 817476315 191699159 291418895 729038995 780874852 296395845 870725457 610023513 590990131 795881842 652880006 230854938 220327266 80243878 1061552400 1034244511 662648121 55793468 174591318 535632603 856365944 1067010341 239958613 449268933 378570244 1031062383 83391032 784925195 346092776 257224834 112675415 150078825 134555022 557616647 569214187 585626982 647070407 530538204 458203886 656940069 214958173 964594137 152748087 843687240 153411715 13054854 615404834 326448268 1032559738 165849978 658283201 258847753 88261208 30871935 393813687 21570159 611293052 611027727 962740961 246052371 919032930 650564650 718324990 525916365 182379493 82649872 596044816 741142592 335391977 728570321 708909090 162781633 757231565 182836781 31712961 288058695 619762240 668952801 972169989 797079628 560652701 745764137 408845710 274959120 1055288161 869935312 555402662 11399788 275652404 716512394 200751054 477654817 468128877 181588208 684347581 500844539 863522022 305949880 473411052 171147483 150659982 223804830 291081035 769089162 566115741 1045746951 540025775 1019786173 900001839 189137334 138632720 1021673633 818895897 510319332 251661186 1054221230 280970942 52505192 483331394 685495375 670846686 843671960 951517189 382096980 1072025711 197038464 1034563181 185623249 604307019 134863786 838132648 46720708 563323928 165539144 562651658 388338978 997841037 21014900 981663726 243127457 492186348 550298209 714882224 363828614 36570652 560218606 448453931 610162820 495147102 1044260684 901244781 93840879 128327365 53837342 285083799 453780513 814231518 392658629 357575981 583271378 142342896 611238075 443914320 82700680 77515650 779754917 669215886 2255630 663519109 588024449 880772014 235999058 863391471 35997823 187266513 701755386 112580497 361859294 1009074232 163085568 1014047261 772478898 331004384 615021748 46204577 1026234598 963723971 588610237 517735150 998410780 397413611 557387154 97125145 219683826 819353110 147805600 416481632 887334740 775257653 376823304 383801436 583519856 280815777 19071655 827917570 745883399 1052841369 604688606 318877519 285879793 278761446 177143719 318938373 363244682 1061482821 816917062 714705899 839115569 435091056 26052595 268400422 226549789 786186314 625600203 594770451 503309458 352582156 265002311 644164413 111591296 593753000 658085688 106450191 742193564 391922351 395619893 282112679 418715555 340121048 876109510 1019654440 514818336 895955161 993575953 888593488 449047291 181359550 468281306 96222299 557060696 23471874 596486428 587531123 138165852 1048457250 533161891 757862640 51123469 844688414 558141847 681521156 857522556 295016949 445877714 536324571 1051598603 521156464 576489771 691451582 263051173 409571134 140268579 648952506 7387740 911289092 623280295 776524832 154129256 58674154 146981932 89021710 374858141 917826201 835419082 700343006 882019631 476497009 558850169 1063079040 215092689 135771299 3716873 1032695069 867099717 762017408 216477077 785533257 912007263 1066652835 829014948 119552835 80960608 211357769 1034972125 923258060 575407414 1058389518 59436671 35902660 892694970 69589581 683582670 414016342 338959614 26619571 303525854 547266694 238968416 276725174 40197071 164738362 232002644 466779982 925182448 1007687709 766653616 923151176 1045172919 892072212 107398244 507787124 271169784 555764337 28811990 410645612 130386636 8153429 568134224 897929263 8679726 667567886 212394842 989099039 604694867 1023541629 693967704 433234708 677363844 83122659 25634358 175816076 12565223 309982423 38033683 596049907 142599137 904674456 351411012 686443691 995663028 539680944 451244589 773859626 563844392 701731825 703520183 301209709 259396529 332892318 819344132 880161362 678937237 629915803 844600087 320669599 832336209 860146227 249128340 611877512 495882921 657155638 417310306 975430054 35427032 847704154 989705028 74169096 437270739 928072108 691058213 685491253 976446859 152749194 993285705 712225768 298009567 769089129 199008653 496111485 565769643 531848925 361593056 110282954 327923528 497811981 871579419 968412446 995846282 321977183 934097858 719670992 910029035 624140878 944111978 328406875 575953270 784381746 113770878 40132244 517881475 504884394 224963682 865388580 434499337 559474181 782886163 61139335 194523406 922580614 807434628 676384419 747798241 674002647 483666072 664191223 850249405 45608387 674907568 129394477 471786843 1014381319 648034674 135547690 154293176 429447115 346292640 1026366976 145107120 1064183986 296524120 700454877 739287058 129996826 775511368 117428602 1024817263 887478315 388276001 362876184 319279997 643008840 822021349 75358258 793034230 8782099 190864654 462061632 345551216 387747612 1009793239 631501495 477675758 508160052 142288003 821816395 232906786 642092967 414576507 342104257 511075221 203586384 848045113 827449430 246251405 17783566 966635333 225097502 703962932 667318548 880004069 554220493 933165958 867014011 32719162 1057727714 316334815 262627324 176706482 306454556 434383835 93405391 575706332 107569164 65646537 1052742254 225662953 609364557 814966638 598282451 438289457 216529300 577124159 373245924 1050775707 1017843983 1022764243 1022337473 1063978613 328792454 396077134 1073146616 967805629 133983707 704562244 292269709 382386555 655990849 133223676 830895969 653721813 446709652 793726106 768966772 641398348 664498752 163632752 36894038 577408420 681824294 279712111 283806725 853873066 850488440 967081093 369275899 1036533877 397232768 6287935 713652844 986195271 1019854538 929634491 208097424 894060597 589892531 971356053 912242754 27481952 471945742 116955081 205450076 502217530 5957307 672844661 273405683 246245409 671105225 253226058 559745764 864873528 964310654 83785025 587690307 706271763 654570953 81696233 349858341 172133113 604997602 358511005 511325339 146555625 978743205 199971714 581556365 155693753 643029835 813617876 84704675 474578332 585085765 220891469 615315446 724951486 288984582 803172465 541222284 977964439 443863348 585312669 91705429 311156449 999597115 298782818 862614121 734741730 533001480 127091176 680203240 633796696 94389462 304686951 880318594 996096682 9970731 1009706262 489043780 879244653 627924703 734943846 980588434 939485271 37362466 907915219 937055736 265537089 94549960 120544809 950624462 221339094 375343336 431671524 485316569 335490403 882030669 584485395 459404921 564358771 27709302 941564502 735232265 331577083 299837046 361741372 712344594 91099127 1050676870 176608556 210582368 516196017 82499460 697790900 1024307283 430300362 512827332 211017160 500081659 675548398 259990231 538730778 145895966 333686214 686070184 1008021903 540312912 661661494 842256767 5955417 724800495 232072766 1003658072 266102916 220114445 1065800717 15363450 1018938355 1072098589 55689183 196212644 259230842 775508274 23547346 433327603 319826271 789726403 811207713 304908216 483584849 642732572 982305158 945545862 846604790 346530824 501253251 692940225 553972120 311698774 334807614 697681713 558767483 589983406 976575334 877699578 841503357 364538640 916723391 708894286 124297356 463746400 341011108 856707217 463575890 120264681 287349687 396159953 579305852 679294148 491761545 1039438346 680508815 378126589 984653996 922813056 115334200 690883388 284876063 806802488 438059509 475951638 735200161 979549356 437449926 366971185 160723582 534193475 466662632 474332168 797317167 376479493 659674069 377911968 284278275 999743781 561690662 105232571 744092498 900943990 90539655 551491078 381797653 451655163 256067762 288370273 579470223 638767101 379276026 206292951 636624724 331490558 713932491 243946624 371529128 917653601 582899883 724592363 272760087 220557385 578440890 406816725 54014458 676928579 640246316 866710206 467418268 120064919 78776374 1027584721 965430956 938054122 443866058 192050469 1526048 396059099 483612086 338441955 873445697 235919551 756565783 65866901 220873292 168066913 982417009 415123958 587677984 732529532 366960559 11971807 733366064 194605581 423882430 32380947 53242488 260389784 864895074 581498761 514448636 282545424 211582842 412203862 41650321 83328841 1030913765 180217609 619539317 830779926 182822188 553488009 758668797 12325075 660005250 21125207 828584652 71455260 512534719 303021238 81243115 554470963 555532533 11891315 417273599 527394852 657888395 916329246 656086013 627652340 832501101 240520031 778681470 590424580 334559188 701102325 397469382 509387378 16897105 326004496 888755574 155609944 51704780 815876902 109215386 290694170 829377543 29470163 480366608 376438128 529596732 665851677 934016281 1040842944 160968943 479504710 576063448 17709313 569010567 236088458 1028349613 951095410 330367365 195766726 534655858 579402783 750294555 624152490 171848478 73486650 693189614 856870845 539097946 593308269 991130185 440875159 229678106 332695546 525860412 772266145 910552673 70006941 722047409 1010345584 526285950 788822709 392984573 1024710825 123593924 764970849 246173520 662954379 930123576 755354263 891403961 465401282 22941149 1002384940 274112447 763776094 580520772 983910833 96591510 794315816 445380240 347446963 281985725 38480869 476128042 1021540766 669785163 616085836 57689217 318914045 151344462 375486421 770789421 894274645 405605807 921666976 1009214936 330404510 425247700 1023941899 308423395 1025709283 377450405 1067190920 921808336 385146505 673438799 302201737 507697550 519240139 633471811 935795419 638741572 549932085 986285484 1063873728 610117309 357525139 611646700 891693991 603792329 988077204 529985469 1022419859 129077491 732727280 704680157 409557058 664480697 863897857 992848952 922796282 606169979 786416236 586091484 138643604 314433045 1073541526 1028175885 736988785 240756454 834116892 63928260 910670734 503544913 235195163 263865033 548922473 1024478140 30123215 864185964 999186816 529716199 414870801 675200135 545152031 30718250 23290247 917709438 1067708191 830191337 121487263 427161103 333306714 470923491 19376185 394278582 651594242 837218530 85304346 939914854 1030882870 27773663 663836699 1024354145 194629490 37625162 21840715 90481647 273403274 535285663 125265014 695958760 269764977 739309401 642396416 362808354 1033016946 324974733 372252137 866589644 474712414 560253843 522746528 715605635 385660643 495777117 240600524 1020328381 421648698 125972819 824796389 893236391 376277945 149797754 658665341 843127073 1030071241 72404141 554830156 438418767 825851908 108485564 294236781 866402810 1072201941 885008348 131467562 854919857 318833512 737230423 673698739 38026762 132738976 643539165 545087069 664776629 450314169 943851894 287706198 501281910 749620381 200842800 6823710 1006956180 1027886010 198554280 695258286 809295166 485663794 491681875 1001258116 269461020 308456283 295230859 1041682757 1040701717 914011525 979181515 605195711 45530821 1020858234 256153200 69821228 635385274 778276980 475247488 833245650 633233095 452442923 641992384 528276603 405731848 677353029 932884775 701891990 760849355 39427455 8411591 1040515147 803044936 734647000 484749973 870712663 381555096 638457310 492559357 820065012 340872644 519814427 108868816 762093316 189941172 157755879 563192645 480393019 792434458 312526514 640099693 669113018 772224806 354405596 354670697 708816375 366282667 853223204 856262077 540254244 261285465 826205951 141367382 374847898 765232660 593465916 526743287 164673027 203241404 730989645 920136984 731232206 796497046 738071560 876404859 265800369 1056736303 715613405 207157371 1027799346 128547772 506883320 23862478 365334823 106283388 872610117 536250913 124501388 39971411 189907790 370859916 371918224 896363721 521936710 358004822 46346295 1049572293 598088734 114733018 1071667935 432367972 452038063 341785830 247526314 679558943 726503585 818913567 638461586 146192917 897668501 888963310 128113428 472149052 48279603 1040766072 686879560 310932131 159453981 589348144 350133021 648017293 504014662 782811175 302986083 352597902 563213555 460329415 7770749 574868889 911569085 886710275 879940150 405816314 68709523 747512267 578720911 1053113143 93027561 1063688188 1010422574 903230999 216457276 291787113 68614090 131041009 430541122 39441858 228613547 17580202 572550804 553771316 499633088 585623290 250661323 131267906 486611126 70197288 954350224 367288937 666124258 979765672 469047857 1008862377 453166580 779724205 283845403 988255500 24504413 645363865 61534384 755485406 663864620 973609136 519287466 1046407317 121662864 591976019 668397593 837851903 117592783 627548162 465672162 211528988 752586159 438068939 457235843 583289461 136244393 1061906657 620846927 935486891 450658910 178992296 876688494 649512927 1017327011 561452611 435927186 1014456149 492386142 222525023 311284436 445821740 221582250 916606694 177236200 378202402 822189702 422400635 357111016 154488807 438322293 413546551 484864621 1010646715 490678145 385734088 369284425 304515374 28765702 1138252 324148575 451565157 699247195 550778189 243304042 1041331682 247608136 92532475 130381125 509816373 572986248 777367910 486489685 330578617 978820802 198733249 946797506 299563340 834738151 750906783 892654999 95425489 286332923 69468464 734783958 927618928 182509735 89533475 414804864 689368632 604037039 441702015 1013185978 1054475949 583095755 548979351 278048118 533349711 561214138 419790436 1016383312 421753481 827367594 236244044 433263701 786152290 369916124 1010104025 149379723 663973776 65197078 604466098 119433355 813748906 189779697 307589952 1015543013 945045381 776704674 248750052 200604428 137263951 591510919 56468695 608437462 242319246 723846773 181914228 551459141 1006479035 588864443 913603048 70640372 1019202870 590408821 127531167 449133648 914860552 32954665 98122822 927660278 724409936 918149857 1054223017 476094485 322833951 276151960 888123400 156577140 221717079 285864997 986073558 376503334 299914859 525411611 488531276 760486207 828732885 998421250 376479532 987434614 828050753 1065062842 832554605 566997895 281743231 1008098499 526282462 949224947 447795594 20824751 442151033 707455363 113056244 753762552 804044418 420059939 547082982 597379762 825638706 914415929 32335603 696256025 938248577 977627016 99175634 335992162 1065836201 551761685 914029493 921502744 118442607 470652132 647595185 4399742 481190951 291164250 365423957 764892625 402579355 546877239 653886782 263433078 465716352 703339817 744882257 763184769 372039743 979333520 887585197 775122774 464441256 233358437 602227044 830052526 996669636 43648714 75797060 855492352 690201623 921783847 577357908 191805155 49748538 566885654 894718917 856579169 343331037 199442964 997710142 97311221 908446111 904057887 224782397 460950654 582338756 685688175 9095032 316621231 585740123 827564032 16325274 54420906 792844971 572600246 213214839 145940763 858846781 239220084 1036527566 718569365 1006105540 1040586766 44862678 350766159 33149232 951628467 630685997 886922395 339970281 473942928 401539645 1061172344 180069108 839061498 651366 523530520 105797861 582227167 547900814 724115995 382870870 910260683 484343774 922594489 530776129 869440469 961164074 132015167 619503805 109748364 340246870 721668974 1070229990 182415540 1017236681 456583350 507894750 1056629144 933584840 718817219 483449337 490777940 317833615 444731873 1057882513 956967738 577166217 249662444 1026677497 885153767 604091595 217245626 73089024 238748349 451696579 170062130 945200692 866350366 1051930208 1006501196 189029542 141895105 317111656 85413092 270792338 117087243 279244359 528164485 949322632 938905788 620170095 374560958 868644599 80508817 766129689 308957074 623273385 440187256 560247151 945229517 703312109 80302553 885053988 995704411 746565466 429148897 592477976 666229923 349679238 551453528 946269131 1070423710 989953363 113827307 324157362 220525829 165297138 148372654 424038057 613401151 465684329 1036306542 215814772 405259249 9899160 671625853 400757082 441199125 841196291 807380339 62408979 931557447 564268974 83793228 113724445 654262868 704834555 967113546 273264944 669366388 63326446 689684904 423810233 233899065 354760955 580783084 1036324345 506960302 704523447 140596212 718942900 438134597 571949734 766470860 10680002 820146865 187421678 19140573 51011214 442873162 562771740 1020542069 781199583 910832794 493031995 816795156 754859616 35619433 624098557 595769931 545149218 894998838 787319124 267440509 520568898 485488461 127391462 820885135 282652004 636395396 727637815 438171248 255228830 131011145 98656867 299889867 764334855 616883896 1007571562 81758077 105622482 849925794 86025981 728974227 302034227 740420314 603135390 307427734 384215127 1049460249 940914269 567531202 659665884 442899196 216506379 1072819050 767394464 471683535 347164388 945894577 793101374 959382834 279312115 360597039 667953318 866684650 585670494 242896261 310807448 508713530 299539430 82494777 457970974 1068443836 188345593 449411428 202023028 623838613 700014158 871784647 181961245 226617297 1019211666 130452601 432643167 689157082 306980726 387852501 165831967 693256215 677789530 718993490 922099669 1017067730 1013555912 449193101 44478680 592523483 848055802 282042966 497250033 962300862 91778616 1047747628 1015984717 814301944 528737316 413923998 295823457 936102868 853960245 998540070 712139196 143807407 441256326 836562263 890315346 189031784 921886187 80469486 1052202943 645679916 876313423 872280176 244153092 421354561 408895652 673064674 866029824 10794343 20553072 828459259 453469257 90373974 272711819 239664979 181729038 114963542 300269492 435137989 392049088 736246068 1053173475 156469042 944959093 587319212 705906518 872805935 662301219 878155806 915092727 549798430 661361655 460142108 734112013 764952880 309398173 828019689 832635278 336392054 864461393 774822154 1057066973 178675375 902729313 485543399 266946747 948480204 402288285 398175647 131242411 360830742 443534270 573124033 135333025 145206734 757846705 472593086 544668319 211308661 709340317 774973521 1061142496 901626395 657040041 570457820 867249144 123875724 305623898 81518075 97854502 725210738 118359505 34456029 334109990 811158129 603283225 105722714 753593993 702065339 83102176 717819768 562531390 1030965290 727393664 990617148 33430032 599224767 457286262 275882814 680929986 1010637145 365649502 474470833 286554014 401326830 945488065 117977052 871483093 980233298 196353754 1072382635 880850617 945479508 83965796 902602056 580457694 562546681 307204704 253311937 298919055 577954494 634005681 539424380 273958568 336603187 1034726979 924639864 19999592 665621768 196878050 682569202 127194796 624161187 928030434 587001447 809637897 741626506 329018551 842973872 1072320020 345380939 290654326 152654428 204434948 198121472 1019527150 61443960 659005168 929758856 1065092048 299440322 96124953 345141551 354021347 62688210 469683214 1073487341 992468420 845294006 578936026 773340474 140770302 1028650082 829782768 211115490 562045679 687553097 587962898 530313912 84053809 257644803 484365786 805253030 163543286 970195560 56663127 429605547 223238233 519002953 317011046 273975730 16219139 622064637 511993360 977867857 475189741 891234188 763234330 901126435 729249197 2609978 2242891 263774135 405283774 460369666 578275584 453487209 569696896 270606410 929251098 20663781 2162948 665050726 970086577 962978612 300492320 479969422 938618582 184246347 29259521 268211738 370124960 948079933 746880385 370410128 807260880 77385167 252065910 773222232 817554025 478243442 495129839 528635409 164328181 338386588 555142124 38979860 255051410 486113090 376207475 605617009 949496638 997144239 990453764 825988351 213816979 202531630 251975167 579477273 968075208 650598204 1042338219 747122856 716043418 38765891 228240715 52228947 1052299933 193366515 756596898 837379995 691219319 550293546 945140766 884436176 774834900 1062040735 733722732 72979540 140848804 351458573 305219692 237644066 229629897 504808212 408441443 950375808 934609618 120553264 488029050 1040137786 405523132 281249340 474111242 970399277 90345113 427476164 168309091 182576398 210634981 737733171 846369382 279202009 642964903 934903478 452661674 317100737 515329758 439585069 77359789 150352050 958282224 204663374 758735064 802922097 737125488 655756381 423468401 137310610 466082828 509363831 604369759 488265015 213546476 435790836 417056618 665115924 854766498 501579275 39848110 351588878 186741891 34565683 513107232 695647171 606231337 274245679 395822380 571618911 521344068 443772397 953460488 905329092 73033975 864804573 226864724 414015768 363950636 653941490 1040448362 344230616 21975183 752077715 99611928 14448422 807123318 426801341 79885758 683001470 918069807 102659499 744175440 437113688 443914392 603749762 134091490 173610515 459570429 281036867 941871826 588889958 119125534 364468001 1068253466 1019123050 237991114 297841429 257421615 77440190 598261281 394636662 921536000 140767530 750415722 607711374 229148693 374275625 755754912 353569177 671288292 16606848 3681445 187022964 621940838 637066704 1042160904 161177526 671113021 5531754 901842539 6096062 38189340 743869530 637459450 964243839 942449581 190588186 760009139 980407307 578310233 381608878 672923837 581056756 976901231 115056665 376902204 754019407 999209500 152376385 58537631 844343469 1002127289 243165699 302403907 595773596 262110148 699036417 499188023 633634243 96677471 28895582 861714673 532832842 624410689 289716526 805658926 380288552 68055933 1041528515 309735143 1028765426 922869700 692816523 643463436 976243336 260245776 525554509 842941832 115401996 674237608 1065354237 45409433 768976298 834555382 1013677257 241741238 971487993 662607493 261009040 675684551 10682396 841993045 212217765 1043187597 896189223 1069647261 532913898 172321913 183959301 546466410 107936906 709081748 230544847 1056006825 242782097 28194340 703413594 567978231 622529054 173453386 727481754 574885500 1008765615 116956081 212127439 243255058 215014528 470447837 971277822 675298639 244781439 161157489 450088528 453309393 627089874 174410917 873838336 462458163 801455928 341566498 105739414 391581366 529423730 230369695 349660998 379610118 410248095 967939378 107821688 22494622 417413741 567277626 562636713 833726502 290614522 362516646 646966584 711700792 216601635 860113278 727938817 1045070924 989011792 683623184 560100815 246107036 663263437 379926177 470192783 148062597 241653454 627391653 743311414 475383038 745809711 106332885 478121408 956052678 1038405964 770009313 603969375 572679668 483021892 808615988 904221066 604251164 493487974 12857230 647121735 459275139 956386842 672808089 853431127 1057190991 927487417 981065452 840340032 789040283 926919975 466106424 730136829 279454091 766847900 759496497 684108417 488424195 278697240 342858004 446640122 905479251 282136881 312965873 604956934 950563695 518329121 308761952 309584095 431910271 213827906 915585938 838843899 202296063 444255376 584573277 886351519 505123991 372242323 561544779 185687127 219672538 264219182 871355344 1068703814 879869703 231480842 832959890 171323276 715748378 773090959 431310861 497171719 980372587 151339914 224815903 246555616 815130471 150240255 688618860 786254999 760517706 588198869 487048924 126582218 433043075 295917492 452178919 678293739 365932595 366731631 904309597 600114786 247538271 930305426 1059211032 522570224 506321980 502019051 736727149 950254573 267867109 121152935 840615063 671524937 549325396 368277823 1013646624 954852920 648992503 809603898 296825400 774969419 146917804 326783051 351373486 852947080 330140952 552569283 891825281 734778444 842753484 572287038 764555862 266806913 640641163 7442553 244564481 782312646 267503311 472503301 810034842 211820789 1038744450 444815218 87270797 909294020 892173656 945078370 633970388 891022335 926191556 563314280 304224851 937906258 700981599 456438305 893767444 1034887583 834632932 733697059 614781249 662737813 675349588 695365050 785043813 660639956 269917463 847456456 341788778 496338939 530013828 374712114 579432101 500542242 597020077 688201381 695392455 661674825 436581855 940588722 602794830 539983293 66124265 353885463 393722789 437649894 313932402 300288454 526091082 845041045 15735377 645884657 509594362 349332717 727740032 965022091 202229262 989972748 22853299 123208811 125813809 416456079 870313001 145784715 74603111 441944907 172178612 797445242 161085538 889307523 808588681 212606803 1007969856 914147917 67597383 38997669 571278827 109233058 1070329032 1069359553 124351434 646153163 143145229 657860732 225772719 497444639 255954651 557883986 36901839 805775542 122254659 335506084 348795825 831126125 19751852 648959101 930747779 172118803 416063595 140617688 865639293 521851668 140639065 713800381 22512361 762350662 621049134 691499705 682790487 670550855 670427684 53188720 483214785 592142521 582042924 174757057 337190320 106573897 145119869 397377304 145016088 878748653 31393041 675670404 924223159 453227209 807602909 543637110 666522347 564601575 572825315 249558055 1036733019 880247854 312011649 845959181 800960421 308692180 275026898 419509330 418802481 9068433 220527412 918052120 62421219 941192599 202903025 464373979 39006833 543220401 1067974110 575883590 780384471 793116378 372536029 744045159 322082307 147232162 694359973 454764968 278409208 348524703 67525491 409718188 247520320 543177429 950620172 820459249 275224069 353961976 1020267002 674844648 1027096085 646525962 363766834 935605790 1065518590 390171909 209292981 987455669 306926012 542513867 289134003 478720776 349171252 630996897 595299376 527017630 1060461050 39375622 412499887 460857545 4827681 1028948231 121186028 964558699 906311322 694544689 442721307 846462630 561436225 160247265 771037696 892099696 276870089 588081226 1001328683 274451265 801555887 125932730 710332306 871137684 1045999095 489578302 759441090 13352999 10005232 904948301 779873055 860196223 638184365 50759134 471838653 260891350 358658914 1021874202 575058185 96213183 961807874 921997409 927161738 260539897 306542944 132741193 805655172 217560836 30002343 703764272 270376341 553991191 971606053 1022983506 1057723645 364254758 275517079 577357409 358300077 542981694 800964514 460750787 931687824 80452362 595987890 184322802 355983575 1022468394 987904338 78969681 838744292 904858030 643318444 784404328 631348789 462534094 245594635 20158269 215482824 136264329 560812641 218821853 109972685 548556429 194445156 375426210 352506584 987802061 68866519 201643237 243408447 675732073 510564348 596846131 731398800 116788204 596773562 775282518 639365459 110072430 806375242 274144117 550455482 59080279 570478773 823905835 575447266 826382113 536936347 720593723 452742424 266308546 282535673 470496562 343359299 486540264 54108964 596963361 224887849 532814160 588143029 898128069 497309953 562223472 683617725 686190423 661535333 853564919 390170740 1032507826 535718666 1007944284 65477110 697363878 569578129 986481006 587175240 986305179 99804531 36070418 813153553 401264407 826638878 815122409 124324299 974157764 314366681 822134263 879670726 889001470 429981650 381691026 584638991 192684082 239733077 374759796 327178582 372135522 785381819 593945850 469180826 170171664 844111100 263286527 57446574 410751241 869813910 82839052 617659060 701916652 164271285 55676890 971650449 1000763746 453062953 725227547 481653270 669680055 839626359 712822705 873721909 686840000 785357699 795117188 295444110 407273623 187400920 382055481 807343298 584579808 523903177 547811582 1028546771 815167066 393724908 454205195 319360781 823535873 682172058 885857324 873304769 1006132671 425418311 650539376 804780571 582940476 868979 1017826853 490221885 102569405 652065020 219691672 442822336 221905928 749135927 1052313245 240672432 843768075 447677414 321677240 117097744 80164054 836983886 176522325 567233023 658116418 289072228 744104475 401222439 911170181 891728805 238651625 174762954 203619719 477825409 76173056 567186291 135339128 697831544 215169035 838231747 472385569 542797506 196515920 47583456 970870770 659749995 261624986 99876710 1069730927 842370229 597060307 385479513 419771330 48704066 520889114 372406041 1025886876 422347846 954310450 725612595 569701555 748224761 95082751 488434102 105808310 966985973 266094443 255958556 333240135 292301156 49829201 837784776 516895967 391870923 656590277 781806888 1070546658 77801764 419773524 316796639 262755952 319836284 617699607 364802919 835389790 248578965 746973290 526241342 595501208 555110472 797450499 990982788 66236567 572792321 405450021 214634978 644802527 878549556 1010389641 354322262 117389289 154712739 785030375 905195145 976841208 790245825 403362294 549571135 518898738 927748459 73215286 705522932 723249968 90899541 1071062426 987215505 596784341 1009413065 935974313 257698379 112387414 829029447 701902326 457694793 234677586 1060951885 699623535 375694649 119851669 207552166 285485165 854020310 9971848 1007395685 334263829 255090772 658116809 1039316499 1069762364 561615684 427670129 305596378 254487911 319043547 705134405 140124678 695502677 916744524 788347445 413555541 91301120 37892845 1048153512 491185240 873374702 353110625 988933313 379252440 704314789 787203807 871098045 961678295 801084720 244692133 954576459 900995076 97216745 183754132 948018946 550266481 386901855 688205265 929751284 307557783 1015905724 504243319 615002250 181457171 790807634 565715349 964190488 409355785 928407764 14315647 416316627 941166556 932678924 993340784 609473812 911387419 79631783 879754100 72452564 105924538 342200777 106027094 582573550 57358563 21558963 246130719 904796713 54529101 51480710 166067444 956430283 549766507 698933027 976120353 629689887 19174919 877977987 102265601 195858213 842925552 63444509 739811792 81703340 462067983 311599613 484330518 43734558 447657162 290934079 899172477 831080705 105344658 145059888 477769105 999745108 346296824 701583872 724302318 72084891 114156107 113420471 94578350 844059060 266307264 707958183 20494942 782231986 984135122 41345578 365174950 80054040 872044459 500756359 1035523596 37785200 1001179465 225150950 342362604 150802464 848320943 816161202 225756177 705931898 229693322 826021124 161985344 75648774 263860362 582904433 283956536 657988194 117975774 569186486 291274085 861237239 377160769 719997088 162639811 177753316 737342873 755053698 205684580 846511455 297768544 820294642 582292397 738202806 202873617 787133521 795810781 118054281 1017922020 835501595 344037234 857940795 321964172 341358435 1020791431 735787883 542964823 79783211 446389915 103597003 552807008 24747586 247720227 1062770843 218218451 954864790 291405317 514419220 419354948 1019704806 899043924 36635378 725738713 89202362 211620472 165773478 26933034 608307363 837961228 702577088 19303250 107031089 846371324 688350542 353734169 353783412 659410398 272067878 688797353 885170514 717229201 343528800 519788098 130707832 987627840 397479829 711058158 76198882 364072446 597755346 665303719 421471838 87218261 741237603 923778774 986929039 480289046 248233407 683926852 30796242 380041812 407152062 861126154 96491699 716789374 685315836 716573111 349833806 785561488 731746727 154726298 242709305 927219801 539756340 355453616 784237780 354681369 366505228 176174500 440696175 207211139 139114406 55051540 643239928 605483749 65752093 470639216 309436589 536946545 681738584 687082266 1042724800 578548512 216059736 761712268 109296610 59023562 344532805 373771923 584696072 784639089 412396590 936597459 554227751 335929256 133902427 481597299 245784142 582848618 995611022 569786232 691938117 632478518 743169027 452358998 523214659 745485556 110673700 1015186987 174035187 963313144 428425406 672554225 824003411 461630733 582645891 748747936 1017935987 290372446 271848732 178081322 47462251 781322503 291595843 321409432 1049933836 551792784 224931254 1005530737 199995414 945239820 246407637 424573835 120433819 530999476 489272097 401977273 876838102 578965516 949440405 1024363800 681116759 356616152 776661215 924199393 852254330 378115318 99960865 975979383 607337999 873669366 483846141 485627486 115243397 905986633 361157202 999244415 900391120 426044167 999145583 968123347 738775129 376886214 332578272 219986616 175079780 25431192 635031342 31731500 30298347 583855981 990392042 587169396 49441571 79572978 718573881 307585871 873084253 261773922 97698857 1050955984 235634946 722918533 346918973 977143602 860048106 952131603 127208552 846419659 572845897 802773670 1026309552 119327856 1001169791 688387011 204438570 511327547 585683493 818152989 185210851 761786244 331851933 892296417 959879685 731357776 221142018 315228623 498303172 524592760 183882351 493594371 275020273 56413316 140761956 410036357 262669482 247713780 315199395 773940816 1060240055 609261419 327325534 407928534 724197264 439840768 1049683262 554423714 567593005 509302419 550319784 299719710 1424606 408948044 660915766 1038065498 162055376 636749714 23485742 246027467 370547937 561572534 709010792 757141926 152414865 167347389 898205659 751365707 169722346 537153312 561482452 825705189 623056075 807484638 339082144 327327379 88777458 142543843 213174987 738801853 775747895 39446658 655005070 968599635 217567772 927189821 207722524 941244488 903914049 298299372 426107466 613267641 578699681 940280784 187215866 542416746 727081518 558107669 925516091 168337001 242314609 670906924 210209112 998564255 373983486 34159035 625674967 184490051 590023240 43022267 50113823 558232775 881554425 1041106800 429073814 636194988 208100204 470759546 733873391 840125605 130565504 926690026 872414880 732778826 455962498 957562496 510302771 327627231 746440240 1048861540 628829636 561253966 441648968 128752687 241798081 1071579610 223582869 826544518 54464767 872133080 1061319359 968963296 947222369 587149992 346023507 494299159 166211628 535634240 589964021 617827358 241709107 757753842 352079340 294240013 225833947 742247634 166065349 614111421 1021370070 203696660 592141819 256740382 357905481 438650376 162800643 976000010 1022305283 73475784 544336314 655924512 1068805768 398321586 359716697 25499004 234393258 547225712 901649617 924756936 903378151 539271938 209961877 593889944 699637889 96251146 211672622 962517052 608902803 255750856 222943777 906917054 254399544 671317405 763226022 92025434 992812016 146007535 281708530 401180370 1034549241 98188095 298147374 859975918 838288124 248815214 661573425 584962762 233667881 506417426 45825983 341379717 1068206075 366918945 761857017 364205742 645015009 190392646 857771824 46849279 193424662 308271979 934836025 55725613 925438832 743354677 494668513 582000075 689930128 353529076 539259692 668636741 285698821 933422138 1025167019 754804432 842211705 652669957 1071173557 67622579 948689250 1041547849 770554586 270415684 32697510 172388064 817380682 1056387761 1017872462 471589198 919137913 887147244 196553455 551045047 833914329 628186509 208589171 751852138 727678544 706544645 657115112 516855712 16256394 887518048 57178993 459363264 121590504 630798394 573801448 423584299 731458551 499300877 546675371 595857567 668670730 271737525 565737612 707997770 317037126 1053697070 61973954 497899909 929529004 941793010 36477544 426018064 458224265 183834062 250765136 738838385 412175685 465761598 54234525 836308800 620326567 637915020 354975347 234443494 626554841 61075997 895777005 911583583 519867549 786728000 1067063844 228621252 730063251 742691352 186940406 839331592 604460774 161646123 525335118 515183237 1043490007 1067345486 198123833 926914325 707595815 536625360 1026710636 1051210515 542899573 1016342888 1067837710 94865424 830709927 807381291 497101916 751223679 677125612 288551109 602113522 363291686 562147236 133994606 987217829 41083950 226681944 248697634 497166059 147169434 35411217 1012396719 769877599 367783839 56432800 854106538 516989549 304994144 699175202 206646650 928358176 805559244 783332999 942364197 172099531 23343528 62358559 188636430 1027869731 627334498 954021198 117856685 987315634 1029079177 922256639 348658142 837659135 657499277 601312855 198231357 511005015 258141999 471537565 186664930 928644458 838263608 823596903 928616293 680400425 713165589 65546539 226354714 160444968 1022290694 528213212 240607166 57085358 1017025318 340440065 956069450 355467043 21746186 623220288 881259363 618093140 538889107 257981679 528114645 1063322540 307992828 948927467 360847417 986183232 185783301 34482365 663103109 629356687 962552017 106788406 375851291 146572971 368947154 462768656 374944883 208912320 167778096 488070277 384401463 13440859 112417396 242392667 1036312825 699677638 295225175 23229525 72515952 378942028 652005651 338229294 757121148 476320705 468466804 923544457 233422364 168755491 392982899 230985616 979372771 396168811 887893828 758332095 906548626 1030503159 937658962 758829357 714878302 616755189 1062342823 1070540385 925263943 315419390 940199729 863051894 976558945 998739129 507454422 559196850 761428219 609143420 489579931 1005483728 158045764 398936389 972716481 631395623 42890517 721786301 707905498 129458176 179376062 648165853 85341078 832978208 102446497 229060177 746381993 200642453 755898660 731867791 222635211 233879206 47387532 759041834 287706369 355813720 233509636 47468344 927914753 669752891 705270772 741834568 929122953 206395605 248367142 632041715 42908421 1066859735 473164067 521711040 413499520 40493486 229515079 1006199594 740280440 661604764 1065019072 195986819 854504753 821712955 845871862 673191641 677762174 200050490 73400937 829658327 833676677 479468138 397026749 1009181183 999792255 915615072 541528082 803007701 844519104 431439881 452493356 222175272 696715809 65321098 859003967 947938505 738240512 990005018 96759507 244969471 810957269 732241835 124175654 119354363 658329188 353683121 435332951 227544236 526531225 276522129 827505795 927321701 5165704 490553751 686153720 148099066 811696030 60776012 631339646 242272065 236922882 894941940 208578715 131157549 200157963 633758004 343469264 749501295 395879942 871025688 971398743 235298859 695214263 615921500 159255454 692962192 170825354 548719162 1025840548 257688256 531435519 64748342 741956467 675072127 380751232 46916061 64966957 219799699 847370728 512608063 522300048 259136659 699688608 599373554 31341829 928424673 132566596 452384509 488309825 91992054 253874812 936519662 953837797 545645600 98743834 666168745 652047524 632129409 29723239 726053309 1033592307 973976187 361463915 663940894 233427147 824621144 45586051 652910443 897986138 703891393 871322286 267317225 258930270 240062917 1016701835 1011296764 766438919 175184280 314328646 677421039 163727188 783707367 82623320 151147687 884660450 1062722311 430055042 693739547 1014879488 441459176 216682212 881076792 609476218 381834236 261109985 26218721 378005024 623743725 640542185 629200033 971776375 60492953 100282863 667517474 820103271 138766764 771964521 299985914 164413923 571692652 146615981 561707315 11071356 1008556486 940356569 292113950 754777125 958847533 746464003 905417033 1039516206 473824355 108006626 884822139 155007436 314146950 231037516 888326935 256723273 694477694 424563390 64093632 1069767978 320652930 562809237 576113022 491258755 555941857 358003200 714958626 36370267 794067504 742016829 516324844 119323405 565992252 909418054 972123512 20930933 556851326 320908196 580875708 991888052 611166865 155457418 988389731 806378703 960082279 706574467 433057038 372193509 470469044 834724920 341782041 303872274 1033457515 620896715 78056393 595528825 738721372 119258520 1010581680 45144835 910502765 236179229 685584354 304303896 843535952 764305717 170941544 198463181 375625420 683951073 869218129 676015988 82827306 640565437 840885268 694473665 375605081 913782949 789860578 1043928726 671412463 187925285 743748858 1028648346 409274240 817506120 601098018 815215102 491385432 527318201 613912692 56093523 119618416 310710864 655100177 917262291 538718796 263969025 516032673 923071845 821357403 972697206 20001893 165571094 504030673 300974523 289352842 645175359 163373293 197744846 684920474 654279276 130048396 449462560 599068847 564205672 1022890155 632736494 725801446 24232355 930985909 98446242 613186728 132006831 648514720 876368490 534662563 276898053 649904223 428863009 520907549 409768097 1060414453 499434274 100860637 651730604 842464618 804888045 796643281 328636124 388286643 799066656 221279364 436963951 739351749 585193042 1006467728 373604807 33110594 693416588 48031752 630150212 626503118 532054778 78895002 1034918559 732828312 1012996408 61728091 969698698 533195725 997525357 574701571 1049827621 394271536 594628793 556693431 13596240 451453285 655157680 176965118 825384157 132191120 436594181 483715947 87703038 968636223 121381652 30693159 884542723 840141666 505787334 450238664 776147445 156031402 481100594 145554368 992010401 641633395 1033231637 507251794 90570182 681799737 1001615305 504482057 857454716 425992625 1059087001 652397697 288941636 1004957693 895508998 1007071975 976575041 854901239 856994652 886051771 449263776 134391311 357373028 872711796 96977989 708410026 149522700 149672940 836541497 843504544 531416513 412693569 414933989 589957788 192308014 615723167 380286035 826158212 806090421 682686788 774613726 1029301058 111878925 612071866 480737933 958827879 953463707 992070229 218280523 22866756 930919335 585418294 26499422 740336436 735715712 507800279 934985756 1028747214 764864217 638449750 931243990 349003536 6106577 407740489 408077515 559673384 594472412 231992112 1028579597 430879665 715130201 990404924 89873595 572145073 660827065 734875635 428331417 891710032 812272066 263220033 854769127 1015227805 477068409 774220004 308100371 481416190 800353089 88068866 410094662 718299752 956251070 7749214 824330128 962101490 360353528 471524167 122707209 938087658 796924876 271654853 82841075 790210769 890655473 620258906 939543675 806228338 1050898819 760515099 176400403 176990388 629245298 87349745 712902454 73479767 53155301 64831830 946478202 676387195 602573156 614654157 157552468 21123273 275999368 360953089 914554311 4462786 374563029 763114147 140438295 459033955 633308363 751636466 661887723 645967515 38282075 678934469 771838224 32787389 1043876691 11090666 738718917 976420458 74131907 674594570 914701328 41252552 832440291 1072574429 811805373 1060801435 729625902 679762997 722312673 594220232 501224091 947198772 819520228 694120732 756901275 352424463 448577523 1032458489 801705944 662679506 983390277 423845701 587685500 293486592 683170184 654874300 715940737 597984288 281137608 196747863 280163754 856170191 528390256 920629971 1071801139 459288943 866347450 843937403 910529588 369952732 686074685 697787116 742851806 550811488 1042514852 1060658291 704308409 230908583 631542222 673874421 566027065 144435990 476312477 926687235 778566074 987983319 292308880 835821580 132984846 976534652 823122743 934686938 672074333 739469503 897403822 753089916 403097705 859991712 662180422 789982791 440336819 435262403 449889376 307226679 644638514 462122727 848392166 512427866 1028935979 23060414 584218975 503896178 399600886 776677726 974445133 435899781 76715660 185963246 776220348 634607951 102387496 891963489 921604260 981061303 945010024 218747141 981283251 512267347 238108239 950363406 1053659751 345554022 516878986 169588238 22473008 1029362536 778712937 593043089 126557192 546506635 929890457 524437453 829197340 977457511 195725618 830446426 597404800 391548896 635381500 90297068 690238310 76418285 930475301 221480657 1026096494 960278098 574468506 617062733 281895091 604085535 1023265609 1071216632 947597582 832783942 623981129 895375690 1031998598 697166488 441673715 770227479 734613150 757876080 1056021819 946125179 1028198265 235149364 1000884082 338565676 343115285 530657593 132858155 750952485 95003561 625590526 219080143 492661689 1006056713 700345606 512585889 38473731 733523220 868754504 159752167 726708948 279198946 437494870 469014365 696807765 915632394 530015673 477712338 346798687 15240074 707354254 286772972 750737954 549589840 980825785 564795196 76699842 88377817 388386746 790419456 476492150 737585503 166685980 207289397 44731176 697379371 783622436 46766684 508195025 449126472 323319113 501004969 1060990385 18604905 522595908 677627546 356793366 887396577 214975887 353295020 39801130 291839267 289431684 482995834 767053949 272453927 961997374 373248403 806949464 176898428 747268496 805940004 1015950025 263684188 148841528 467771660 956011522 603546299 449630746 14312184 503908285 561654322 49774842 307231974 334006474 215735621 887352182 2077452 480590823 589416383 1042091685 913387706 910857515 274774045 217538277 143011036 44269330 204320780 926606294 853115894 259170104 478477200 72265820 635159841 972651011 1007034346 912468351 944817440 872650854 31422032 699663155 1059272309 708165331 62181812 271845007 853867645 564480294 330164072 688201369 929613918 779936377 114593028 31098806 859436437 917472960 527363036 594622204 415786139 560463058 151577065 233779550 479733699 1046195841 384055287 867826939 994845729 1039768111 1056766732 1040361883 3357371 471731425 239544341 138083199 807043334 378486543 673385083 627993142 18825258 598039009 443108350 409763998 265462004 304800415 438982698 926739599 692232631 411860494 768963637 228160624 412409242 877736951 671629196 625492352 713978895 454271280 65542059 863575290 628303208 463988092 841419378 902812178 574661166 886276947 77783175 167591801 388611955 160643267 377411588 564208655 263271413 56619166 452040166 37510027 511156602 586667702 198655694 145308549 719212258 174378215 1048610891 614361433 145940661 417371301 171643077 207473461 236087623 786299669 1046202200 911416586 495552192 448704851 483354224 733318689 968671403 129453779 753052440 482420439 62154207 352232670 52974027 509733875 826644181 385594788 755177261 322398336 457129409 858711717 185786642 961611193 1064914450 998536166 1057769424 313440517 247099576 719135767 261829869 767291415 677597625 59212406 539489739 375379643 303196774 317369511 290583561 704918417 797478686 449550734 292603927 942370071 945098561 42250996 354389008 205857579 193791515 522329870 408478185 236346726 73888481 372292967 367638601 228881823 223520823 955916000 440322474 910664620 846954201 940259329 74209596 190519075 930621638 15660944 674555973 7884275 1061863941 834669784 398358612 130322165 452744299 291575877 34004385 761252124 614660655 715088006 312824742 110650794 54868730 935786698 959907629 873507257 382843879 279371545 523864861 476184051 483549357 78403966 370909164 515189321 299236543 784375174 940173081 487088524 769459426 324125914 116981365 330602726 543618864 987380323 650153070 756657788 589753214 274634023 500743524 64858328 761134848 678576849 113741137 242377314 674102492 1038696392 140997488 800815939 225153569 741827388 66156010 778980834 611554604 346510445 700876780 339140864 148465233 365436941 405583269 627955428 1049093222 622024025 474944753 812431668 717083808 395653634 991760393 913721485 107761898 271466642 457150900 625346089 83904481 322559933 546593957 6601166 964323470 363556156 794723695 527961800 397254112 1015167230 641755614 559984404 716556199 356747174 488812810 268850661 576441406 463821752 1003401508 260900228 389660704 1070613093 143073603 346286118 637914382 224340977 863391226 467100828 940088314 1047635992 357106833 190567252 495273156 271006298 330981764 29760650 251073738 943849711 790421469 157905420 168409102 101157231 581924148 930286509 72767058 113172685 1041376371 47972006 133160184 547066081 112998962 15724522 673670591 582591135 969599180 661714939 298547527 267031344 710780142 759079911 419411298 738350560 322978722 584241307 328845244 371741194 635557729 415527465 18208720 820263357 1027314310 657318506 592203845 698651111 98569607 519255369 157451185 319664230 1044854400 141128355 538461228 305297624 300663672 316948179 868586682 819760046 637979288 684546982 441856307 824339177 237254729 236957175 815494299 329982775 735163704 260699303 975672997 946479686 330444163 612067114 108199929 261427155 788853601 521222058 560325539 825102873 37500458 112087024 685882337 985003106 229282044 45776425 847703962 386858022 492304908 254851389 176014511 192324806 706590299 617932825 558256646 161826575 508250064 262299456 511498880 577098119 123887841 687694867 561419423 743458445 358532768 936656401 578917783 818645422 154386315 751057215 1010838088 904476351 12512012 442365203 964473828 474209489 1021057202 658464928 55058077 479848905 492881711 307498834 740086085 684197927 886110937 284399598 224178052 760916623 97240726 668296129 387135738 326670860 154657420 1062895662 655492366 415262156 369624692 390887121 330859499 573924547 242126461 551376418 19826735 105340272 278695271 1005878089 978764161 327453116 622416115 635445042 964400253 1050351979 98475891 369007024 247512703 986857734 806203643 84050807 588420789 842244837 780309725 756197626 225329158 246039378 902317766 425739244 319262008 38030018 711407625 798745208 846872969 487141504 80777310 1056753721 474963318 425036937 791131000 199861065 32118817 796718385 276042175 358019848 793628760 659754531 803007976 75851024 1008630306 710292215 396935300 276949833 301146268 812062419 263733667 534717644 649606729 772617420 684205100 988289702 1061123794 146213537 582546446 167049325 589440175 96216475 902022954 516925575 707272139 323888847 462154121 129711490 493661474 116626815 1017250320 993757546 545736678 423121352 339263858 23789313 539109802 913085668 787040621 452525980 612657542 840630838 795183048 158764283 437618946 724424489 685059291 138281302 54771770 1002300173 1052863657 243754650 126666768 450013421 184852080 90291912 401248957 393769825 25126350 710368869 139131392 214601375 325181621 899927029 646960781 380410940 393115300 44966579 584047105 70048860 4209844 674249080 614873892 83296786 487874383 350720511 239922765 752085289 245776988 415449132 948999029 400391586 874059187 830214315 245666522 452516707 144584967 663869243 155931214 377590105 490993269 991384423 747453914 336331062 871161834 1029521485 620523954 1058672248 877621223 334464818 184801254 125143290 822440770 614739152 725254350 173831417 143619480 614235285 493330016 344787545 240912069 344696825 446054380 265934024 77718367 148043233 897193169 202477933 41195504 944457972 657881326 459091894 462595355 8147972 316528436 199884552 953018894 855567153 966268760 533518681 326449620 92513188 761407984 311965306 305850841 47046016 564666096 256631778 832833640 283831002 551704450 30681048 219904164 1005729095 79639032 361052590 765611281 378126652 36350046 627902769 967212470 5454546 216890112 222477087 1021341041 512191523 327845963 248220915 654692961 724166772 468707127 453209633 885129326 51034087 299346098 416415816 21521314 853422194 934707165 405654301 1055069403 829765437 641966693 466935379 678219987 817103983 66826193 735640260 1067355249 795717075 510905936 971913093 103121966 1039282946 537559346 674487791 376412333 503148465 83592796 95744622 499684411 605035966 327463393 1046569169 971675985 50663106 687411830 224830668 506988333 737552818 145415465 46904914 389851514 37108769 145313524 493703687 708621841 349093242 604245150 82374939 540532905 365872568 726982013 851394890 96230795 225000022 134718235 1028565024 860050987 688064526 65201061 615010315 234192756 516116859 958077884 737135408 897969288 700372976 216290056 480466581 147254322 521118534 252541113 643077865 102860401 728081066 1043622433 315517310 458103619 786407135 182678230 152122813 538848338 932724207 557628267 841865873 991987848 558677774 635694164 767517002 564358638 524143345 208521766 865742152 1072519494 123386035 359648699 953999056 458996595 629510362 794559335 218457554 866213649 921316891 99857734 2322368 34265957 13623980 193262702 1007360678 820817282 378912844 1067297113 94272716 742319175 358735313 955454351 570059122 698226017 64222372 123313667 1022980942 587174683 736401086 83515182 739230672 414618494 888485620 548565107 116493585 631335856 143563103 518604816 983605425 197865726 210751286 213896461 200333971 19962076 703495906 1047032662 851457235 802538228 633316728 614334776 951522877 305817982 792326959 611024244 992409757 788299213 856475539 211103956 172857069 942552382 288751903 735960752 893140317 631056955 527477951 1001885314 356798395 39593154 566434291 785127278 745746469 988443218 496044284 328174577 727183135 157647355 102960713 37854403 415902249 71012768 330696949 1020285759 1480054 811500564 656682012 549295078 316864649 40078075 36448911 534407833 331882048 147622471 295684366 412687211 145739636 447832530 364340765 580353397 721253143 983313789 184175829 964170075 444684891 489470097 811063478 75640614 269644618 950929743 151773524 295345468 348478997 977703649 487670761 93315317 564642150 324692568 642939849 671800794 636543648 311572781 257483668 865815446 781635831 100394789 99104952 316143682 842184684 1028455302 522005557 450104192 95285737 130403472 294699923 406982618 968223191 1068873372 49139667 28181261 1008346671 898904510 793134779 562725300 723718181 1044581798 707414540 272786491 626721097 1011407501 398820941 933487078 140742751 958352586 684388281 510751969 1070426993 1048502299 377556250 1006977452 447707922 221319036 202674741 536293493 1023589977 434051910 1053876382 839663491 822912870 694947299 361468783 204349537 89334480 219813341 359123885 161879472 630548161 589958564 963291856 1030463694 365151799 821302117 429131599 272065494 100867575 319147247 122980920 655743347 475673089 412114028 547227827 660470886 256144585 314383186 118388558 792784106 233592775 945814931 1042201076 181476192 1071150944 579172373 292224895 262830194 53471781 1904296 94601457 860620380 1066972630 362228604 988267988 950073046 117324771 136659355 707215388 130996736 734974681 229011553 918534147 683443792 640585383 977672954 841082730 508897154 127785976 682483810 725857344 872379363 155022766 757501440 410066196 167785703 238316284 1066686092 345954718 803646365 748292592 664168046 46750574 146994938 435619186 429713334 662122021 747322780 668745373 611666913 929744995 193133287 224084930 425840153 1072592361 580808665 30710435 1023326279 880057492 563135944 857286342 247087225 990156759 377499967 67839716 910885969 333393832 556011487 268769945 168237770 45032668 293913635 3347776 704627285 964735916 767950137 819351646 76510939 824037238 1019340723 411332604 284351585 1018797403 353727866 292443575 851800740 415990311 491700166 401227467 955389034 843587260 509114471 765281950 157994572 800552121 655380810 984245311 139403698 360313784 284391034 763144345 329942910 199498376 935169798 380907974 285242170 82863089 198496911 912016535 523888632 1031030617 761594725 735269459 354278908 283682096 381115524 919678225 990546844 1005559595 980548657 757726171 809965087 534972010 208748421 1040765604 398989655 729282215 624531341 277414597 990632963 791346392 879286661 844265613 874566731 382095254 223304906 977726971 85925724 586889552 801280050 787082564 425363767 467243725 329189317 727472261 1015897785 218165105 58038137 859351596 206372983 620709295 927720298 212381309 633455263 1055503924 947396162 465586257 32695094 429888894 454444252 289806526 1013833494 120481573 653523695 962040225 343727433 63930377 932005205 375642531 1049143585 202201640 84001806 935710393 1048637092 779049114 575882482 252097976 269176718 199102766 1068499906 175482533 28421636 102524921 234915474 220286689 74822523 227099646 430168927 606372848 63043622 484591401 691271843 198015123 427978328 504793612 729434623 458907866 353415412 75046060 97896748 726605982 397863828 835541255 1058586195 130226151 937589932 496079724 421315328 312179958 73729102 431667515 931845482 743925846 222006167 671605179 816180820 736411133 542524827 600646564 309382986 876173089 1003608492 180749637 942446530 777087925 936218547 256715010 745397963 315752570 396696832 573865672 759329419 880182065 168382431 1047727149 751966526 341617406 48517212 750884970 530073919 362925454 167663118 361522566 680463252 614574266 1046033643 786956158 936209020 777888744 544827121 660857960 384611545 320627974 474464493 465384448 991545569 376057545 1073127959 801335301 485507395 51306824 486398298 141728597 790298267 804460053 297567045 219224958 791982867 672186487 690319384 906392383 453310323 230608580 404080427 968348528 131840879 361549100 170427327 106873298 709959525 272974991 997212727 490990306 678392850 733437550 88973255 399609516 750366947 499029409 897596124 827163193 806276547 607085900 764733195 930970264 961421689 853307185 567363678 413069252 745796761 751536948 366364798 877852899 45696210 835605053 71333681 1043758170 713420050 889257702 1013135236 851573202 513302304 731199152 829004381 857008335 141694153 297481177 448253710 700403143 393312320 784648121 417554753 546172037 170198875 990235647 522190146 967867141 194204423 352611713 375988282 660697687 877059048 772531306 161539000 1071266890 68004867 849870929 598814584 880834413 844119391 1006468028 34531003 336141409 357907225 530831207 870346218 343277322 658152492 177336286 375317878 558816591 52909236 9774377 575426751 458529410 347801638 865181924 495120749 819435522 881115099 783948134 429137527 911737262 369336905 699038439 918108189 1008677671 342127473 732363039 103688067 310537460 816004514 746385366 466736480 17969169 365698435 675671821 854021503 462313748 1037770639 2529945 873547660 700145597 120818287 205512821 722119646 610361255 207953190 12117841 410386999 836250024 148247096 630563342 557477857 1015277896 658225461 993549337 807393659 637818930 346261927 682641836 342002404 429710123 490447867 928315688 973304633 776329568 722570000 37506617 513728912 832417955 776938396 767865855 639408527 199526795 800640155 317869682 381032392 317313941 883495543 771012725 826868997 593184531 825615201 721023407 887817301 914908725 485936069 181110997 870490428 635875790 928262865 481092077 519903546 538916954 919931644 657423104 907766627 225637003 678017519 907358703 445633286 778937523 86785421 288596524 524839283 553413348 287582931 842284625 126920724 21846819 975394111 505738760 997015408 384092867 517954595 569859158 162622314 584721191 735130865 578924134 540457338 876772453 443078951 985297207 785168149 397567680 372156755 964839463 858312549 767061464 563307459 519273657 1015973832 165000670 746188544 507787468 285438603 6748708 20323574 65999005 55678507 809067310 179384967 699266538 293757807 633078456 764753889 789116991 784174207 745975921 926221341 208372414 121266551 619960311 312315107 386150634 309572227 777281131 808609545 4526105 862965802 31132724 573232498 451333757 570059497 427062407 861528423 593852967 246356839 182773159 96748331 193237028 552155530 911452637 620339608 994911294 597039773 973561844 593631364 626635794 452931662 248641864 1650445 660106611 415615610 661672097 282382245 682704264 336001233 603160352 898673447 694108361 572905839 172718898 85351012 324557754 893093015 26539804 578687064 360106322 602994850 388832183 333026470 85163168 5876176 211061573 804575321 478398863 637433994 149041218 979095395 856216362 889877706 1062862094 1011373840 961804732 28277261 931163521 972233173 973841648 312114419 484393392 219314802 555462410 627700673 272191508 156750976 10266114 1012933342 306353749 565808855 730753002 3398520 905582491 1035675979 19673159 858942060 879513859 661963200 905038388 249147236 976588809 576514964 88342974 236787197 599403360 322563754 828465936 929580378 920080122 18181668 816776738 1071921982 127474556 365390421 174412847 332763541 464567507 897385494 24765317 146781538 23998581 104804147 238767087 666961506 869353207 312649419 176958661 454862019 301132370 933311961 990950845 211862321 116852667 206353303 787132564 959568778 1033415155 359603084 979029237 888071687 420263495 255949897 1008575161 144581023 934014429 394753818 425118081 234461058 262411392 931621417 929417509 290958698 280120303 160863707 795623874 860982982 365673328 970441111 21544323 1054928112 905411505 359211441 999182928 325517122 917108458 87918515 347362367 445569493 411186295 423810862 631296529 386088207 984942521 1029706749 215072276 440971649 904140140 756250680 800023482 251139071 61127616 509731128 39490550 799421858 553046925 547261416 937167240 955603387 824845523 533276695 970632187 592491489 472508817 226320795 1072819982 75699755 830468967 392899632 894897168 762234517 52153286 796084983 552441238 85761567 660368093 853695951 253926268 802669837 123645427 918057835 728274267 141862522 396286270 796598637 457758218 264579201 726335585 155323648 625583173 214068273 270750775 363767002 836454851 563473970 767549579 868689745 814421477 538844463 289090927 43659007 173867249 304115754 1047517335 792329709 469361157 572561742 654059320 1070762760 959105537 1015629512 487086695 486797992 108168763 599262552 770018842 955032356 794726393 811147024 960144811 936307111 230792444 1073392980 564291287 238315778 9026291 484003823 970304251 1066973523 430743350 719425371 54882099 715627628 1031019314 148318923 984822702 673372399 1018530716 668603159 936558780 484492492 927141353 652060531 598086452 766621142 543213833 2909926 135674008 962113405 8296596 689311056 49705775 897237807 1011739720 81891198 980097020 198079477 360949393 353315191 973023631 193872164 987938796 337566301 793009227 1007632165 945897850 520623901 1031199158 394774619 913861361 503384054 109297390 464366596 184341407 128005276 516276403 722336347 518321045 1035035332 576704746 713426336 176251690 974145817 769118533 225125289 1027255912 794166658 78431683 922740202 1001519950 635580755 1041095155 163648258 107732828 1022621483 220557503 193649772 823453844 806471820 9549198 464166169 754125167 32029438 441829110 539410227 806915048 241847393 91393757 402277011 870084296 512647842 359279936 625938835 838613075 648737117 921431051 72983702 602959737 560399649 650386654 800908214 22095215 139607967 240242579 276777912 300235841 295014806 12981854 606641571 359601623 786187594 147145342 755639113 558783835 160941896 919539168 221657470 161434889 419758655 941781531 153335457 143851416 267258254 476585804 531100025 1066243987 1035247822 794499705 372851958 146330131 127001816 883529434 722974143 968292903 329047015 193530027 825255252 326783002 524016129 775968748 612753133 371877716 248248152 925746070 3422639 623073154 404323958 78115348 431679916 213879383 1039308688 949085934 312309312 706315255 609024656 10835595 943542184 638376007 297024889 830646687 258613747 697149490 720789842 795407612 872358965 633517377 747799139 1024080811 158175377 300923524 1015162251 960251761 634408649 499421485 989725518 460826401 546106231 893943684 199386934 497137063 663178763 866974223 25575038 861351266 152928466 585804629 96454536 495576082 155111535 129233628 798230223 609017952 598729842 492420497 244395660 224414804 1025305349 775067645 338147773 950758720 88688982 729380839 853078193 240651589 44771157 751508553 752835075 1014431566 893866428 846473708 708508742 988525573 515606353 282589199 473442184 289543749 211869614 808155618 308528171 199490275 945377427 207395905 128782205 126149760 938337281 263418914 553794891 657603384 645806972 378031232 169506605 543677761 173975541 361450949 954037848 286016434 852115144 268062678 142759337 467746734 800655998 442369625 58895630 760076728 110354881 887175423 571201169 6901594 947245076 600238849 476486559 316702749 527129999 320184147 36975116 625368236 2417540 979968596 448521004 145461293 1008661989 104470236 171129568 674241677 825260747 710036042 310208021 130393884 757682064 58352199 454730695 320413630 478185786 1008846289 313074936 138884936 973409859 405623283 913888975 318182223 799179621 440810448 165988484 1073069075 696190196 42885326 816364867 143160956 36266057 744798490 765181407 622570674 1025642414 941152399 583252462 69503748 1051254550 958779118 480647459 1008680685 969772956 1069464817 529576768 1060505124 562803668 756969625 693986916 102706334 616185976 693081559 333112418 944772242 370956749 508402051 904726842 482555099 916346480 349260432 1191399 222011056 609606664 726878339 359529921 984103304 881426644 1007570009 598812575 929384710 289259299 75473908 865330552 291222057 979128312 579652528 1047902500 955356662 443000919 111980646 696275040 882293875 839636932 499677125 834846937 275537587 219187656 355982262 819819739 972713791 861072479 482062536 392966471 424849062 648076203 64924303 779974618 736422687 446222965 43039451 268619796 655952818 752878881 8685812 793032691 313006353 281006411 789889071 275758240 715513112 727864762 981506943 139363186 449086028 232506527 955225862 26753433 667011365 828526578 714971102 679464732 415178456 401484308 570642825 651717872 826419277 452193272 825051971 650013751 913313765 216663276 252938502 958937553 749721379 261474482 334023383 316911200 12905015 113232434 728028249 1041951221 227081831 120041930 751658214 1035489837 928623837 584587056 645074392 903334572 419258820 286112913 296900669 874107227 371955761 345938968 381979774 381979823 819689105 605716772 913787280 90072728 531040952 487892832 639611653 959942893 635409174 300762919 228083249 239787064 1069504329 487245565 354640883 793073036 125079123 246858947 167758102 1048309715 159021033 832533414 631976561 646967084 1034708822 122301597 566512973 775134884 719481732 584419465 291178307 273837569 261786656 223475174 757670351 1073051550 808145174 301057993 266709706 1032609716 364250645 171838251 586527593 97029461 1004628178 453452134 570788431 90101428 782221715 118801515 94776938 552734730 569727887 534060061 457775196 577630812 1069496758 765112903 684400216 16120957 493054128 473806840 981955144 689299813 743716194 565821036 891414219 744345967 977046082 824733680 419735776 335700232 248068768 803391411 1043588432 13602045 894084385 984061080 833395525 939806345 9742835 800822567 422488243 497121649 114621340 392184114 986513123 60670393 522199584 115351790 328792539 451735048 580396043 287380220 872335539 686936730 236543798 951722560 563855059 504420282 26284315 585065291 981741556 166531780 318938713 960637459 358980635 85960700 1022883413 584040472 632982683 440713434 882425188 914335935 828046843 487236824 370723313 269907315 532775031 173603467 1035828094 634715352 300984855 580881139 295235872 122010488 286519966 540541692 835856396 519699398 604826599 94639373 435723329 879256767 5411381 618493791 590763767 498096412 40796890 893771386 716819122 906988458 1004151359 461218826 420554958 598578823 860393640 275566045 339023891 528265124 500024761 341667902 378471397 666200161 105090284 477570105 699860516 763031829 1025049197 1070009104 441905577 506478028 210038289 1064572074 994008165 465639552 825098562 609176229 876268189 527812432 872165082 1002947035 875474809 220530866 632470742 584145974 50049824 590917037 452181173 3881200 638009931 789679331 407788635 640215477 62708438 246236981 196003554 36430317 771066267 930775172 549058380 45709551 993519393 365555814 992817774 624294739 562447673 608730719 164834379 1005151073 445507985 1032914693 950743626 652560240 1034496176 875072048 347691543 428578212 401713483 882141713 510971849 407765801 909396873 280193761 10574389 29328753 886075898 405005536 1025333791 931743176 703439035 869466610 150426911 409603344 655875499 727715119 608608365 75761426 345469405 606959144 421079019 849728358 822806632 69181293 727023905 285819917 51684398 829731453 201333344 318446771 533558532 821642584 166854480 541989438 549260160 210290131 513575330 825656176 603747023 384267048 606344747 219074211 139114078 1015777485 535875067 972412516 499017630 760550853 299629384 581092345 1072756569 209668362 416484511 246363430 221823989 271635513 262345353 426948186 60308432 909968542 547397059 370538437 227614120 39724680 796134997 507527298 531994203 309142571 536263916 72033784 1049130369 137140116 489508087 318641725 30384231 290243395 322629016 940290367 406857566 497013669 12304958 675318838 572156729 897988101 669264444 518456564 42898399 317283412 726473755 70527506 204648005 1040124375 989834074 969740968 1031098268 733778433 74436895 724171483 997738249 444757125 618782454 964208230 226763048 759929964 710844466 954795751 98052132 593200079 89856491 803984400 441301792 132115775 760707621 536776486 889586980 773818773 867742909 125671307 1069214742 468604528 323472436 792884480 816406289 63914393 920044013 23250885 750551162 963531186 80398245 400876611 278992327 628857062 142717816 653879295 61060672 267368238 273003769 498186001 188057494 1053422308 66033576 1008222044 532567253 475055259 544645847 261221408 61859376 613207065 367281739 169768653 524352276 1026557333 1012940163 739085098 20166543 500038864 1023725008 755617489 727689960 338830525 171228061 495247224 72225066 9274897 653336811 590634487 428539950 317340461 599351184 979116878 395739367 374496502 111641975 787204109 945874315 942057337 577580477 374214106 271517598 204541006 1002358215 506623487 660467407 770608357 818577605 80390969 280481986 958442663 31473285 443188225 756592817 821278117 427701003 137224257 274254660 1046567595 75243465 924216762 13098870 145795256 597435113 129234366 235861696 413166238 1035777776 690400470 377910781 856145243 284911737 688000241 556360257 922009893 1071965364 510955199 181200863 397639253 879805582 994073487 44590825 403774893 74859919 226163462 310141256 457142577 595017404 439166550 456108254 40430703 411267983 955364532 502801154 584862411 62939833 597199760 726953760 159284019 118139004 119791553 593070376 934067420 920142715 133700583 788486232 748197051 776131512 775241957 92450405 906936822 902848698 854718166 918283166 210451839 810521980 465100715 782824030 873229414 1000008730 290098068 1071732381 552102591 714383294 90425847 448710431 74494054 750958408 588810114 174178372 1014110832 454962325 744006870 224309447 407303978 874163284 702569223 675775680 425996761 794526765 700837181 398243230 609202234 160527253 18118523 928356549 751076468 427867266 671161401 523366108 203029246 148705337 82563116 293876509 213865185 546078878 264379408 833994449 963569931 1016639193 496500627 928052878 543005988 648459547 1006177564 508259611 60538397 578859142 540151036 310897112 1025406663 931198620 303437371 174846089 584291595 499373693 169750316 817081417 842808485 527000148 127171955 848777873 269866379 114681635 833871644 500386929 533697800 36942708 172605034 847957315 1051515744 89019029 189672693 674948839 959187223 240446214 216369356 68535883 455087571 868911946 980416147 297507861 534116044 548775152 803775723 558346599 461142723 809516306 266045662 949656026 240024823 595159872 367271483 633203028 1046151394 1008152554 347991993 533753348 681920209 692094176 655880546 233613021 812690510 331166895 984346799 83409691 869578394 347090812 577525530 784579637 273190638 708106101 331792263 34075274 56482993 571385048 985554302 422668451 593700436 706073662 834133200 661861072 976737010 479023611 86646437 1046158215 362081888 125371859 464482744 913395636 593487014 387582018 979242984 872760986 910783953 577312476 457637006 715516626 777668314 1047758124 107985787 8372508 107811517 183875579 953385488 99539850 1015263508 51723520 654405592 680119593 728085385 231587934 217345160 861440183 818648930 786162194 262122251 147975402 3091138 98329451 193686525 276781462 966616690 848863660 313142266 764567785 54828190 597265740 129009338 551453996 533418209 746622764 185938753 140600171 578389701 89518590 709488695 1046949089 148226253 438974508 357425524 790135481 698205316 842446937 423548077 973424452 343897349 103851193 91573407 676163283 516874865 226500425 278869276 8147787 252074027 456940313 448544534 610986013 541341044 583878682 895225886 87680227 716518067 218839989 741347059 884531415 141986096 840160150 38683078 936944389 51296059 663014025 353232522 771063856 755545613 169235135 615877596 420524616 234258389 626755260 210118490 497639958 161719990 824880643 772008802 169794623 509577017 628247548 748407530 861579124 153417020 255139365 233554563 681294372 722373454 3756108 936806130 270077038 98443067 136520150 970064544 264028849 165884512 387689254 880049770 13447736 589608652 1064314331 986062516 23544392 870906239 761554038 898710060 181174497 290151928 275805466 240369721 100129387 280473227 1035201591 852903351 945167802 890919258 807336840 772776649 813871159 888714075 909160781 180700344 705971462 890863360 911266219 204100344 442523834 1007140276 193251373 260249825 82228301 357071723 870037280 91188665 492990609 269829383 319469568 332310666 555800670 254374772 318414440 441897678 587420046 765565404 595200968 415556665 751510209 609345278 515007971 815997687 532031248 697231571 939055792 492503992 502442324 272452083 813895508 797723954 600567030 175833905 464712530 591104646 138430719 1072525992 1063341353 82417946 944513064 326173801 868329626 477597997 633013864 775481306 678573303 316617387 187768448 637562283 549965404 491664488 577433428 812602057 202937908 693068524 77399978 931555708 635480174 661318960 890060959 356961543 4399500 958888827 404255579 675504380 128159217 925193390 646475915 392923621 673908090 103825184 607813439 991838911 67291279 823122105 941478064 486372263 461150845 163175313 902364131 47404278 641961582 516111905 409521017 262831372 228295247 523156687 80759208 490434756 1005757552 1053526448 165676252 216854705 1031844109 237396104 797737345 246731925 507201045 452854875 213177965 668565647 620639296 642876399 465227087 501936118 494148127 502952488 365280760 542745116 458318177 334082874 301554022 419938283 472406658 852700282 74200075 780924514 479077974 466589737 45727395 556035105 219038531 904520826 864754464 260797016 989592940 962997645 198390679 333025117 44792545 611216905 79475951 68240753 575760177 387106205 352595575 885842150 624196051 32495844 1038256456 336274906 846267844 286676375 770739956 755150126 64184825 354187310 280328861 462454448 662593877 555839940 279776500 737235696 107640275 694481842 495053585 783760270 1060591849 578477534 950135823 1007962623 485082634 338535371 820885100 850270335 1022780853 796611993 911761249 251017756 143757323 331894331 185175099 486871265 764011786 506958942 932237546 186083390 150321193 503575268 1010053348 1037327521 999955909 200254893 418385231 447713521 487136918 460803791 834394772 644591834 892090884 1069646689 914169539 916479649 81287134 788790408 597590274 1073137757 535845575 818727875 381270087 648355282 383344710 38020427 273211553 733756442 972807784 776264865 816058506 819232106 159081147 251380262 933572616 728325251 126752507 1030325866 123083310 426931373 482935494 362730712 203732378 384833382 409258943 888693880 819771533 486413740 1064289323 436285910 354236632 725617272 1059623829 776479291 638819382 1028563836 790273147 704655270 990702950 314081867 724549712 169476013 990190322 548913664 126088622 1010811969 267993702 611393653 629773420 339617629 684058730 769997132 344427895 146718093 553891400 869960448 161403271 309991864 394594084 259311954 938316501 968494910 421931071 721436307 589021746 654117345 454840069 145910000 367112675 72521398 745649763 384184944 65224142 269007580 115538509 678702608 843110373 531066377 63088676 988423870 329536965 967550449 835377335 998811308 167581855 783713675 2493290 332833369 194153787 522208511 642372207 902515687 141236311 673952966 391201328 533061805 7815681 485577940 1048228074 406841250 26125008 300309830 632396761 1028773098 1014229404 620123581 312547436 534853036 369070129 867985082 738993357 398202762 570798525 1041355988 999146179 660036551 253241276 44115855 272671287 391111743 908571079 997846882 794306100 282346495 794020563 877033263 613640242 699817408 523775171 767053014 233287094 490312892 861971447 1065936606 365686805 644488604 829640484 804637655 920661788 793641538 281573684 778450225 247171406 918454450 610092764 565228342 903196907 297093021 229812292 744021201 152107692 897668684 155764963 396816361 562134186 326110865 1014795212 462530109 815938684 209596760 86134202 85473178 657546287 592766553 544600806 804520033 446289310 566572150 1045604580 257188799 761510000 489955256 49988760 136217559 871549236 945392547 228737004 166705779 110618371 507336502 103365978 190575249 822982291 216039476 847635875 261122827 249068800 637247510 275823598 912044542 1003333553 643906133 131548782 870931712 731473289 23121371 987709745 616618417 477022965 438618501 645701740 515516827 245489050 254414620 1057025854 184424330 838212187 48435530 661347689 487240153 554322307 705058087 382561532 623126544 1027049378 419981789 330419252 424785004 742873134 77628649 758166227 865087256 345140744 711912608 1008952915 740667096 146102547 588615845 347219748 920862100 767023307 376656114 941479385 901741473 867601604 737128081 385856533 243481546 1038307129 621244677 708611219 362275914 943588230 829107629 949686951 658418761 24485188 98841336 455845694 198876349 1073261928 691539088 541250661 38529003 716854308 267077658 570362235 814001660 479169004 647752083 119485116 174749912 934577886 428416097 197191533 778427241 42765335 208876680 747637639 224162627 229124179 944123408 319645843 1054691465 199255980 349154625 498135465 991680423 567578274 603736575 76555293 83910958 94556548 881119539 993636693 490958344 978200669 948602655 369318861 476410464 764018629 496667898 241845940 1048964786 710893816 370249710 879208651 970850130 152463286 931334694 9733063 331536080 548070543 815398309 698257677 46314004 547261689 151999487 455122791 402148406 276947834 65753462 625576409 467396865 181755203 884137574 506187557 391850125 86878203 948690106 711171997 63590379 661817721 690353201 117522072 877287055 986841878 395711843 392390901 976711398 488789752 222727872 349312949 49412837 241499054 435956009 742286681 359539317 245082110 52995596 1015977920 163615090 804898383 879073349 38734891 67692269 735468748 1012628961 329627593 598206858 893450266 736963032 442225982 116971806 216385419 547940908 516874486 826046334 720969642 95303823 884904409 422874465 46017591 241154907 845945447 1060715404 121046427 312172445 682089675 490283514 677793298 1007162636 690091359 192014222 820934630 854118820 962249906 121826582 884105269 899324885 331343995 713993128 746694551 78385420 766369884 452205466 401197401 597494118 644040421 458371137 201224277 538444128 530192128 858824811 1019957339 828248325 469469791 394008768 612268762 75033625 293129420 779378287 186859965 589706744 882393576 662097664 455411159 802817717 57159545 327276187 678109239 590661154 782152347 702366468 64385473 400687087 728985616 376551349 751389695 107298866 422364071 688095886 322036044 447714576 918166660 97154989 698821693 969628119 274240177 147091147 176095863 808540539 391755426 865991509 6177814 774106136 944617700 125775125 271849894 378909825 491581237 1016120622 476261629 448706462 981252849 671311060 625412151 786583616 204313994 31335493 944575856 835412204 337954029 975142367 761649029 744343783 989053320 51043588 744515747 313895564 134227946 144276536 657897996 641844482 539623682 366058568 510833346 1055672738 322131849 1026688102 440945791 1033315235 206486203 562953486 850808649 163866289 685686499 423866739 743390900 565482145 483323399 64414523 680577448 14963894 517064204 1071263991 72060972 905292232 887998928 540141249 36648190 373464355 30134275 576649927 759972042 724233363 639768728 374353063 1027938156 492745186 843535008 757250389 105439454 425020323 207590571 578405395 444986800 930974043 270287235 645853074 163739697 53070055 364755109 489753340 695748580 597720449 768067675 473332216 777286652 709610442 945297109 599244723 641166923 315470494 234447385 140372022 1031901786 286997305 134398797 3978344 309755706 216305378 945120840 227678654 275447777 362539619 867567349 406667721 871333616 475769689 27040165 1047482085 479935116 13529140 956272475 920434497 448268624 46614774 710324492 585604045 39173442 831676117 1023747396 1024999255 495980647 158074915 186572053 651565813 889421739 962238231 105694614 829648080 873528506 1022318130 261059232 699898959 309666839 918811277 1000057149 204834376 543205425 148375610 8815418 682334745 933995333 374769888 719038801 622276384 475300640 190006394 683605002 7642021 230739013 444151323 673252233 308029936 773814892 588484056 355285077 428005313 697150917 189637451 37964465 864351420 483653117 656484399 817506540 567170372 34740602 527591581 19858930 415570043 563104565 748526057 790098371 190668552 817309300 989735914 92598001 150175586 950580818 536769794 315339148 13152732 793036528 813597589 893565421 91656251 530247028 253449990 957989717 429439455 266337605 250090116 239541268 266406347 488912419 30565918 717072114 725910255 950926608 994486020 850144718 789232575 843750220 1065404753 472499919 142468754 143833495 356041900 571572575 494120389 187689110 726591445 888563145 762436744 136978862 1020547160 51599611 848052252 686270953 900949406 932281760 582156103 955341821 1033534924 425737254 239912322 687294989 933835312 332325090 379323510 548896989 1018991301 625054063 295250630 449080465 1006760707 332350748 603615365 1021414847 833390816 746905852 467347661 981532962 509427741 218367472 527845770 759057496 313835979 977831707 8485260 41392136 1029667222 289654030 1030153977 105389240 236432231 618850329 727677093 544381858 844588242 762815714 619396507 652505974 1038367477 161466674 1072240847 865174550 763691571 564025834 980290613 933788680 246571420 978018126 404687010 414852743 909048319 104211552 414115092 667906168 966435379 141831333 1044687889 322319136 240750859 169715740 562958068 230427136 952239405 252262196 20413500 130178079 22252669 1064062247 932439185 943337270 408300388 870868437 541947421 673989575 20101925 913187196 638482021 248357399 1054502142 809669525 49192186 1039603515 142062570 109554560 897440438 618962870 166399063 1012691806 322859607 277907963 611665231 672599876 593613477 593188477 71087758 231296159 1052664800 777688162 430220945 74988469 781526691 883259027 894939078 181858906 1053649978 61648710 304925810 578758511 789195913 746607603 860954097 968522239 936042919 766358502 603431807 645330058 545284490 168717394 71298764 360289912 1050352148 970618819 58509729 255639010 734793946 911003560 712251972 288646689 78674996 236547713 891494146 853077716 541289280 989890698 449228890 427443979 727155881 97562483 723109422 675098352 355458486 916031536 819499119 93434385 446834438 1048601801 179361345 372277208 106641817 49639911 761656479 860489023 784039664 475202631 52314093 121776355 146913114 1009305760 514302584 878419736 691090543 380534736 927767667 979444615 227509325 970244868 625072233 1044414669 991660355 781683437 550267621 75670994 233228843 660604927 531370980 768687860 967857301 208961691 637075753 283852680 1032595468 1011251217 385174271 986112083 85940187 70082915 1006785856 134157943 118644176 841554005 27513556 465683107 544809281 807061800 559318228 626366560 797069929 138619023 7678957 432317960 1073417171 480285626 861012518 308230895 611020420 486379982 1053166170 303127518 320598977 42861802 755778728 900727108 988242968 576047425 637576350 37243455 275641300 141046874 445605334 582915214 523110782 58304702 573174108 511183513 483610306 497076408 723026487 995135670 570804600 312378190 708191856 1003680621 192492582 666466220 501623317 722332699 125128035 12233805 758257129 693852834 839559567 930695516 630240729 387801678 719941201 604412761 1012421979 279406969 434358091 597777125 128487886 930797310 956228511 453021357 876853304 380894626 521690253 193631660 379503873 908446482 557777108 739690789 1013868109 1039567406 396029170 804398243 509403233 407047543 718686247 636596383 460163283 980212839 389272627 686475236 363223826 601146822 86356287 481142267 714297358 498124504 291224148 625386467 1048148803 947348800 146118650 356315278 343464229 790501870 562689373 717463027 253807552 543320981 417682695 987333580 864992249 327944163 713357843 24564454 132537492 161044228 4754935 13973975 1039696306 145679738 376203267 108112007 352028346 495953905 720746563 213020501 752475193 182222313 157451481 949054466 974118424 526373262 956110343 997516860 514167886 909620128 864138242 365382371 888149313 594845050 946148983 801594249 763207661 248845655 6579167 908236047 405365403 376969572 531642234 295590449 31826362 488950570 936429600 83192653 670216660 768346559 134305811 835138366 773062579 148376799 192604561 108895255 921344132 716443098 180086800 1061450414 203392465 16604613 900830228 535748498 565833630 718711207 289615696 267389989 21820258 84901986 250605573 92952690 922338011 556451817 514867497 837353987 727104273 326899609 313786531 251410508 823689796 685466356 804688713 571048638 17999265 466810052 827794297 659833396 11819646 307988785 195638275 62190334 425984300 123711481 213699265 420430135 611773141 699539050 611022035 381841135 611591831 1052807651 691614823 153989600 484638500 53061378 206038383 142502512 792207092 226314406 306798821 607297433 713308474 455224582 1015362928 188799797 817779358 198655997 331465248 866757170 454797587 909151272 69471616 574218546 1006298884 900288327 467974805 384736010 869876741 124258057 905759837 760279613 909378384 240375964 166188891 86950073 238509683 633980978 427091501 1046683201 519684640 625692688 414045541 585424942 59582299 3902958 568848902 222872522 832790180 225918328 844463491 175803840 502008464 35592699 533260849 270580027 928718143 231674467 233944216 138375068 492640718 812816938 221905713 43325294 487336196 50665596 385724510 821766346 31146375 252388720 242903810 758937117 808131384 487133957 300195382 880446897 802407706 846217167 46521079 1049949601 101657316 310456383 1047439387 43094427 749489577 245854972 372985745 1056359837 943582392 671846456 4283842 227925673 194997310 326584542 573634966 929744562 803890194 193545942 761730776 79263758 742300365 277141589 1894357 623205170 173197175 134921889 987581431 734816564 185154368 972965101 166554680 432041673 553433954 610831279 1067655951 714333561 430927436 525792026 53003247 99807648 209039826 511597091 793285566 520629946 457936727 450080561 315625580 780456931 870239818 879823450 707178832 720774811 562302410 808019224 218517421 509129577 623870473 489435608 572374008 80306490 870646601 383460143 896975729 805978682 822694975 10103050 154303569 250892980 654836771 781779310 982552055 656949225 1038230752 65362563 163584169 635717531 396296616 927432415 704320084 404213578 177712864 706633018 903397275 729895916 511538576 598261486 395560848 835076974 835157499 978261323 668564612 558208339 674745375 132689861 378831208 638670444 70269454 708003210 553533434 244928692 757889409 971303403 53272111 732638540 144244361 115034775 85445460 473264085 354187376 498259443 1056370996 8904534 574666412 244545815 708053343 261309061 1026892949 972462381 117515161 868404250 814384403 867040885 688845821 764339936 91121185 501005620 1072299670 708016230 598727817 493186529 890196864 111015448 59031089 505900273 134884616 1039519933 804723943 3810795 556739940 547063218 892570168 780288486 384706431 996207764 498135093 123199601 941435040 680030355 482555985 885430973 764758654 144358429 691786491 925284781 8009995 950278894 151224979 145934209 305444610 464544130 163553998 679008877 516398598 671148752 537551 258910038 596597578 598714171 673128733 421092258 766504230 1059535508 995393154 702432368 693210988 334247867 392034530 140018096 739799893 25519548 222506967 31891899 183841448 847813901 839580962 767441780 390342565 377278512 1009826691 193858445 1067385159 659802856 147308315 470465415 589294916 281164567 311075955 1006499230 167421409 946190042 509369415 251483420 583537399 132873785 382950674 386993375 752261155 311356450 465173750 41212210 105635583 649385094 49482540 990808155 852200179 1014858800 758865909 469790886 360842677 846108669 485534981 1038860685 442603691 90011651 214386597 731584981 773864232 954378907 148147403 961147491 246922770 780791428 813038586 695885313 883797882 305619873 234783797 936601986 725899018 426190038 434295661 947077738 869785090 558292384 761620703 889070272 494661177 516689393 123493495 784301160 5535206 153125319 320051744 339288735 535669379 686545907 785751890 655825970 809502045 626165765 870740166 548990236 814064629 711810604 259323384 828697622 183013410 729083379 320706498 684369051 233847902 161304833 344122406 606365290 393784358 78529899 621449794 314148161 432896106 507270168 552649480 838176079 568901172 603754632 584262244 431134891 249448424 388401996 985704593 910651121 996682723 518628275 773058487 888747375 489579771 687205058 492174389 213085914 941566642 335617934 288421404 131412249 11998512 240410889 543894706 169755248 659515415 321898601 763169835 411860043 253251165 440726070 666962097 460220076 472012296 979187709 139932992 343095545 621915806 919246862 260884576 1669899 865039581 24799845 638714091 542945817 75981090 926889538 801406643 1015666568 673377613 693293794 550481801 434502141 660394655 296111871 810863801 31404018 568494153 595657708 216559693 943468231 956469774 1045250581 538301566 187755370 983738325 638029472 961381461 645424070 158512608 1012164999 1067234248 558444616 203735784 588140488 165437891 717526479 642769156 512627860 796612907 516681529 445871170 661513044 686695370 359374855 284526865 650829673 516336863 209779761 596404671 4286161 555806652 38267948 1022575871 1054418046 34350526 88081618 783044200 170540901 354577933 781222941 672370503 180237824 98825321 658328142 581058791 921458174 945901173 232797104 748165317 518850326 77074673 890286665 764743396 258226685 110964167 444267956 1022824510 239046078 123998260 497802201 966697523 998590356 67727140 324207223 764249242 941950792 934782586 520079439 618640717 110715959 634917968 584966366 815741064 441226167 632480697 7173889 212009211 215636183 567612769 794146397 487242996 755558055 212864531 326756764 73517076 471313800 518749152 451924469 311637535 633765554 80058546 387434962 188403316 300934687 47627220 154290842 93388511 497364132 644659461 471451114 897357185 649643635 216960555 604688938 388908560 596473703 880364121 222814507 746135589 462078706 601860469 289219437 916073940 164321514 433170687 613123153 404716028 237614255 195461021 1050862518 844758692 459647348 92352731 270544801 637410259 1030916390 47942894 443766359 159057629 735869378 392416035 826070027 734582315 797898879 617447461 702160320 881668224 570904636 4112829 434241169 188621639 782930951 812845494 474159910 985385110 361694367 835903239 357094780 1052149616 889999408 247953800 337185701 231645322 738644541 424640668 423977686 930244364 322655493 443924245 1030039980 1014554579 234147382 829341707 805152602 357864900 446474843 321146962 467119371 424038282 1051094467 1070404052 977812498 1069962430 998743554 285001934 811715331 883035455 220355563 728848204 521310241 1026480991 578368767 911264787 1004497720 260812336 128910699 215535314 973934392 381063825 691394444 563922691 730540594 568031645 1048630830 943726719 211471400 134166144 680716417 796289209 778586972 414438841 46554979 648259348 960104882 314475142 1004749591 637716027 880469117 288619618 694680297 779797020 850430948 425741981 868045650 176641244 996714727 391110887 310228335 517368965 621456722 306971481 1054028016 443179213 776024775 207294086 962664434 937772903 776329945 720451936 821373055 228706485 288540064 565073148 808823655 499580879 302818556 261811455 724564569 467521133 1000907539 232286099 823493134 676648104 108698558 279370615 683361543 974898623 489728695 58428477 482090152 609612298 710160930 6814479 29950683 826695934 136427703 100958443 946128539 1019712070 965734912 24718445 34968022 1003799932 335289923 858155139 817473848 525288260 271384250 380977946 291631283 669930755 536902449 430603446 321798943 12588761 458851170 87886581 135948214 428181959 571767095 1030763544 612144334 94709612 202193554 939522387 817149585 168218298 122736623 637838804 468999376 412073727 271135002 717032314 5453805 250863487 640664428 1022453883 1038860200 273828727 560525941 820105454 83641977 1050935002 319283451 438425430 858904107 109535050 480249390 6489422 1060806192 95924228 458989739 735457078 367589358 522476733 64091468 336311085 252931844 1064705983 777220060 430801745 842023080 228955939 111828053 783360749 907789816 682534967 681933801 1050590299 669655780 41142551 15088956 998282005 792785264 469412175 173072779 457689086 337577046 110234877 434317509 729145953 364879900 946787940 818780110 334633701 80640619 745207954 126815135 321664208 412049720 703346358 406158346 258234098 209065145 216571278 21747661 956514118 280695682 525790470 422403239 579975597 511377882 999880158 766984586 505613809 1062188070 224274860 629121471 686784523 306005666 46527033 140943354 1009401141 739787294 587939987 140088317 649827419 1069803624 410178398 450728622 941423250 307306798 923506364 479173505 54086646 377189443 226508885 98569631 253912319 799257699 310445578 375444815 52862702 474382038 407426245 486483535 28547798 484252412 499509881 130684353 1058991457 866270643 1071431347 567440268 412968997 121696765 91350682 447559993 993401321 1754818 820728489 709677168 749063780 1044511854 152709185 539951746 476816699 884068325 588473254 610117915 613017140 382959667 242060740 617985560 603913486 74527478 319111319 905874665 130199354 1030822770 697905166 490967750 186308164 139956726 971985272 286633361 399725349 268083991 157766085 267660541 139788397 1052557762 245197985 917544049 333720579 328969568 596950515 488808020 372797714 725581621 226790852 201382820 967825935 1060625738 59296427 740815977 451567114 595489016 347407362 811191706 456016943 704390626 364255409 647679623 480706942 41726149 1043330063 907810842 532850732 151400617 868711444 1029953350 951789449 577757765 345552863 426364234 660391043 957025303 372108702 312568593 1030126771 697246310 176280382 922789274 349809157 1058458243 663830394 892857845 391863751 403131334 615461888 440030738 455637579 448021490 1063073818 425174736 1009057029 384548223 503432802 426387884 288397099 1062898291 943829407 166005402 483147355 328520043 269957246 97902355 853442053 409268339 5211082 629632082 332484043 284827620 950842735 952980092 207590622 584212941 542609950 576287214 1027433089 94761568 865828154 634695515 124030883 429690037 1034274955 75198523 524230906 462934375 1032290776 996820223 394679697 815991969 271864451 586665287 429576286 804661671 105476212 954563644 686285909 941740369 812353339 467076930 395934543 35280836 1049249933 882422274 144196583 457140005 607898053 1053800819 28904945 60085082 891523929 322240687 230496849 682097488 26584791 845996082 584785565 980107681 505795917 967569936 672668172 711132809 271337975 485388186 862640889 1062842779 969490813 155601028 986899880 401913166 990525860 980255608 409023326 947019601 675817132 549225022 781510420 280988401 272739771 616169652 281585136 179533851 914303592 142414580 550823952 104721469 612374929 591959924 230260474 922679204 110742541 40542730 563334396 869420532 841984952 567967620 357695874 921430138 457894367 558552010 258873134 1040676950 125810307 74774667 619876194 60050520 802587760 1070984735 403368934 989925416 1060730363 684421091 685170855 354783735 537169492 197944830 528707761 185387405 208611359 576048904 569946742 1061466086 772185859 805104279 76364712 1043075006 277160375 188854300 249578716 334433032 243639870 1052628297 782948825 918874088 690290007 784039880 766296332 548036103 207667092 1014334847 610858436 877124505 992138856 566220717 706099775 285784552 930939178 394406621 1021138925 843144030 548157587 416817183 763828363 11506415 775003387 188569998 102096865 378555159 389492117 21836049 519501411 501934606 667662896 332755402 99503926 1071944601 578645572 117902808 162818253 438036011 183958021 606517029 32447697 891162098 386474691 92445413 379660581 932471112 64902558 446305548 325422388 794282411 162037959 1046849923 270336536 436603862 778977808 308855536 670844733 730527477 841435650 42761832 716082819 869671288 616438254 339636529 450630121 729859809 498669706 374072703 1059051346 505109262 705853134 1009097541 809447980 695759853 102029672 198636235 1062130758 851949198 347648911 210357804 482681572 993181223 742891444 863450291 14218941 453406275 281095089 251372237 155585050 384269233 151505443 771922456 120999928 10432521 824208278 882088643 584205936 894757375 764135045 769951888 964942678 987732043 357240778 302523440 650969275 620403152 155636339 498340079 930514256 1050850892 765439403 616305605 252041351 771924544 300765280 426688338 68455007 358155979 642125190 157212684 733555634 568441352 688574124 793150752 292417500 1013237772 98658982 380122116 91970288 290390018 643559608 431190094 311341398 910048103 263164985 611806378 289417691 954939977 854395388 1052392593 227608832 821810370 41174398 382380357 303769004 340963475 579879644 621927982 824951270 245443184 693535916 81981033 1048709605 569489077 229883353 754674073 406102313 478350479 976423455 302523478 630706763 933922239 497261826 600876675 582603836 549675244 404427111 810767960 943547472 109511820 290219989 802740460 228323994 44116915 792118490 325031129 617334069 595272905 163802001 597358388 280591129 966012865 52722664 515034037 1014347846 695428981 211652820 1073735629 268438427 609875579 682431605 1039502031 85135651 39107431 25294633 519510301 920877893 957687978 828253253 314701772 1069886402 237831442 170230399 1005578711 334373769 238237043 140915136 150237530 282304008 689938219 274967294 323683353 444710473 667420809 120766903 289295819 178268302 240144618 8087522 1043243881 1062620741 260136249 847725632 499511769 835125227 382552689 1046205948 266487803 808383287 702764392 886655282 416038091 377435766 558208785 623408855 1056533841 413015084 919868088 787839014 1061965810 1003554088 412975061 49364382 572981974 470889611 148067333 295203180 230542044 337968758 875118041 663541996 703531384 955359028 704759283 647525566 961963234 478036558 856783400 1059484236 441653221 857199389 710393210 662124412 987785173 45163419 542883453 769621216 188444548 511710637 980913804 695841841 915156250 352866019 52917709 649807371 425626864 636626276 649313549 790416919 982832416 96158133 1015287289 521207197 997121976 735263370 555137295 17549566 788100349 51012270 273283194 990875344 166456011 754449183 714186039 912855446 346901013 835648070 883684244 67791970 144340660 896893076 811557984 743182289 193672290 346156069 679105004 685740655 657189042 243687706 420657030 651998484 953955436 683055536 970457771 675741376 106773072 94365168 29072347 434948097 1031317379 200162023 767426361 959697446 449375121 815608949 324309486 873649907 492710207 345497666 1042334493 1022672979 5324050 73846569 453584148 586024231 663691873 797586073 653714039 633901721 660096791 575133425 384865277 1051365948 54128469 934869975 451305157 264361949 705411370 843951329 19939086 583332419 846249063 877737945 978101856 273810568 77599646 132881039 220230736 139433938 12295878 94641469 139172074 592446100 558320386 94652614 151357653 1057310144 1008193337 880063614 1068230100 620926644 482277611 364140404 312320517 386496713 244108726 243941327 996767252 1050026141 319388086 238824871 563478441 132190885 210890605 122430347 671745911 45313553 439954915 781594719 72820655 795676256 423620060 485861829 113931312 952977318 1054478857 365563775 493553637 510106832 304628880 675527350 571600530 542037769 33237099 992144569 596264098 980080444 221510562 418074991 861311689 174969444 598382857 110061423 566088181 1036408794 653014551 1048211908 48566723 441495983 525305991 70278685 992255601 623059824 414184124 678288258 57544215 1010865806 543636230 731559961 439529689 354748601 936257740 509612502 343186493 47200381 424978711 765708219 550381767 938762324 515589221 395825631 312575685 488581459 418052406 387964552 362763310 862407661 1067382309 782534110 811422984 542351390 877830389 756613817 415651275 969863852 957465828 875614536 181293815 224997327 109449881 161347416 277935285 232453475 698652346 273958754 874172407 319438175 583097819 504474420 237448198 290409505 674027311 873258467 523146220 876755711 777588881 219691348 391055417 146987791 48885682 908935781 549141904 831586241 431377480 951584898 756844035 728994166 679719001 71679308 482094361 537441646 391194695 936453898 670516053 129897094 813278074 241656509 326673677 55432867 1039118085 324987454 1001879704 180319599 902350252 560802660 743555457 953780813 453711532 73387353 582330440 395639267 341699700 508271315 859160448 966230228 565559689 1038522576 23103831 228653801 480955136 203533277 22366556 796440605 1006441958 474513057 1052363533 1054012950 293607645 1053600634 46598531 449708266 668623005 1053954725 43479082 632540148 936122360 54191771 954665135 713126827 234707293 792701341 407244026 374973504 971740208 556646480 610757992 484271756 239956682 468018736 874732626 531301060 450937245 641162974 792468660 974825868 201868596 723634747 1013338562 1017498165 1021588359 154323137 115904149 733104781 531084561 576491659 445411653 752171486 974788508 1030698039 780795379 999495360 688341499 609866787 523081069 1024365500 758345486 43566365 848870012 525110425 583434662 1051648375 287484001 645645936 1047889366 787392881 925665267 821149823 30933881 98927619 858343230 898805195 120580652 913054966 136772036 785824370 127898057 6258261 873075828 89254183 386019355 85308051 313654447 548479153 240897682 1021659098 904117274 925010026 787956333 8778808 584779641 346632335 89979915 267052678 526900807 896617637 722101773 309959180 607427421 504845090 383390172 576792195 327624121 29924588 394676215 787849310 585996815 122101658 271190271 230619213 778073254 168461044 726170798 867753112 341291251 137066567 446711712 951373044 373158664 204360246 544332941 358411322 503595334 735110204 239113053 243483272 226908147 299235009 956641106 507873634 223698451 179733497 843859863 260805606 1039018582 522109223 496743565 818878724 994272813 93316112 972729712 144449553 310988343 941913437 830189962 921672983 323866568 900216657 236847771 894242666 544888574 12285127 526759538 376233887 332188145 62956591 292277858 439152925 462894344 803971692 1054231625 703357642 1051223810 436130984 635278615 606733528 956665734 197666037 526806633 155265507 203156433 282183331 531162535 970418384 232333054 20352000 811139015 543861358 476870751 992257266 560694626 934185875 468232757 179108875 673314704 112463474 253645274 365129071 108001136 787483203 444377770 75483107 106647903 301317133 787192147 370478162 638015414 962770777 302454066 1061602691 937061416 580568857 265332542 349621383 531264519 1065946941 928984473 867809529 48785655 875767854 5497495 730221022 1030824821 647394224 590335222 410547287 580865304 297606440 409343570 801438806 31674004 287902955 140889027 344037067 164947744 605108337 626950545 700751905 644390396 312679993 460743299 509475371 110865296 854450962 367916588 398384913 758030376 354321681 863591806 164063683 623395070 727140689 348394570 833041871 795474317 331484282 578095911 711676851 119945518 848696829 786110796 656271880 801187341 341712584 27062512 88136657 476167587 518478823 308602591 595411643 100497868 397433856 800366492 529876121 236301777 261114965 381643460 71155706 662559849 1061299089 715198729 471436280 1017645083 322391951 996112813 524349799 987770728 504867337 430554245 1052277345 361594677 363770356 373259760 349211295 1049866484 24531479 858623795 422291233 184213903 971809764 794548625 261065971 407474183 873748153 157605413 1015857909 365341754 293894974 131825135 1061743445 656309396 1031648405 201611197 192743693 423472708 1051436706 291226668 801130141 65289366 737132247 360257309 420863680 540084929 1006989269 793197922 508730465 160597307 559328309 474746091 359082133 329023690 417569867 821990474 444542001 98913873 4529695 411870852 152594296 481877704 304552480 546958269 20258842 404791351 499075841 696172326 457012260 176665127 811607190 206009305 1014438726 753996815 323715216 747441859 263053281 116141294 683843884 180804925 639007241 632833990 224602839 502604898 907266194 1018227963 103769170 376757486 595959105 601703568 436772191 659637598 809978460 806428602 971178803 385924258 566989315 524523081 766416499 244401301 193578506 705133692 837006026 218367646 459806651 754866661 160449831 22203210 1013687656 965206472 982849189 533653722 301019636 823905886 887443979 625684023 813012933 676658940 789817173 121568855 606900052 310831919 927672271 763509465 920388436 963160510 636918268 727602683 12592362 892939182 196601267 473057469 1048721424 332518411 944545414 1008969157 392151135 990236003 48720836 190924736 280402533 20237489 843651476 957538234 616829477 961676244 634185469 827159133 742312939 133002184 615907684 566304198 246947780 881134186 723226789 399373593 171289286 151691373 519106868 601148368 49261254 63721301 822258807 854621605 895878866 1030202485 946605407 392840554 566884268 310299269 924509118 71548547 315344936 135607037 568186605 1049040703 809518061 68653616 989365653 342276437 464946382 763477677 1016724946 580661802 859981619 750125875 509214929 831932268 252800221 580279346 613519377 14938874 658515901 378668981 874859490 290371951 493620286 1003197838 526648613 390069117 15649076 545116542 507683827 847291668 42933738 646448633 960854004 806455287 596041412 982186166 660949058 999756271 434274783 934127152 1032105427 896187157 1035083357 196725684 346190538 260841337 1036639125 264951042 159987867 248328385 404418196 349159759 391413747 993167830 521724889 111776229 305780876 816603519 942519783 436569013 326218889 284170301 260438366 347114657 276510104 94267511 289384259 964356859 306821039 891884128 398024169 596782196 199313678 680651042 762318254 62293284 562480569 746657655 928903766 219548854 328877623 109072827 63238912 1022060239 687290440 393086754 861354991 246355693 960838649 1067168441 533068069 979424509 689879349 926625545 1061316208 962472524 142300397 317037096 857983364 1012211882 287389585 151984224 731905597 327596542 942743426 549636788 696285915 949725842 768777399 467861390 567419789 362511441 280184692 279724642 320220881 839202005 669146558 504296345 646105823 746991741 1052737206 57760863 463352285 497837944 411353011 936794790 80020523 15364243 745061330 756314531 19998878 948797989 824930867 227163557 848506286 776690301 758046293 177404487 132666252 772672017 843661604 163201379 278214134 24140340 824169778 316213019 2230966 342263860 531226938 481112061 858955273 231926368 251603431 1067154378 606315884 55098383 753346946 888784827 22079822 736164921 422788233 107470035 392220732 952677174 590443725 570551210 472861470 588646696 651300603 388301388 744252633 749250542 1066629486 36441221 489666934 682312597 579128988 882834830 1022142543 738139082 657239138 20715541 321370990 1006605801 458139542 1050889435 268984947 143464317 46202956 23415906 593003098 633037335 557396157 951496795 103702240 596746840 108125751 529434329 874825724 715670382 810189093 249576889 435069995 231820852 1011824850 456775519 413379380 725430977 733879405 936336133 283265275 467145338 381777976 136522194 627052878 385754915 727754284 1037292890 746327560 207964438 885767327 208279914 309997225 896681218 1043055020 541016487 501510397 1063481150 986887417 1005455907 692755418 829389956 764055638 244840918 872247181 449730493 484539878 883580902 160587049 868997706 223705203 437499432 596008349 219713391 812718040 28682149 954852876 97481103 1060534765 715177884 814065880 219097200 589745793 90254850 495841969 493615359 668728246 210706393 822002515 842422825 754476068 398165712 23480226 280228926 33008390 860138762 913787380 1039948268 120553221 575363938 18248135 489632167 251770559 400034451 366850585 559765248 981085025 142349329 990097307 4049922 1040164911 438959332 264077047 501645156 478417307 1009581480 868427231 835208388 36526288 603236119 809424520 537052167 841995524 368184857 146718710 718090711 597939249 1026896156 32635658 677115596 491856691 21862445 786420996 269477421 444915909 1036981686 698409951 1060115163 655718327 496732413 846311808 725296002 343297333 423324910 451887661 720762423 1003233064 127136050 376973628 742755018 390710299 867550084 1068172340 1523647 171242534 759796678 60953071 604638463 828325257 550055861 212684008 732473690 799241772 891264456 126828498 782533946 821466090 627628782 380889829 462205792 507639357 885585645 648513299 162913121 920178664 4751206 813883724 979079172 418592350 510126800 406760342 141746743 56034303 996028390 434250181 537053898 101253842 826066057 182264633 511292893 324297186 68437552 77950248 939984387 748549827 290365781 778236646 590440599 38883477 183353351 873892666 205030884 516038471 673608953 772502683 456204324 870463290 437039263 1058571401 173263214 872723844 322326960 684287058 36863962 778930507 718769014 485888842 233238195 786866310 1032277502 849860331 646779505 650173339 1047637366 519625255 633796180 281650905 414089857 811184175 484222062 843668185 895351963 704021238 492307819 381680265 31934970 539637477 736455338 770985556 515469585 1057436342 943592208 742745469 895772596 178341885 227753484 359296442 194744167 495641066 711103026 339745718 386491248 93227541 650770171 1042337887 1055938698 854024486 201034156 313638946 513231665 605358406 45471922 588826170 167080100 269286787 689227368 726373501 87222463 84412115 453263108 952028614 301257995 782312559 157280 363055422 682572210 150337402 331962071 770012364 490809165 821404568 875657256 393546181 350508672 677009514 210341070 639950270 618344069 639073714 888949757 395510978 343541755 767654469 558591907 321172826 1063331954 346855483 350930233 580524692 322032469 623169002 1014891892 242064400 816403142 533360980 801254012 128830929 671293520 841341981 124594028 703932441 753086635 95328311 205013961 419444724 649275979 111621146 14137739 445220547 397331124 446086128 73888612 12515477 673115004 300351692 1012214227 688649193 575726012 695620924 647821000 623025649 875904933 155079758 534983550 1027213338 173951177 711988839 991735168 489623908 390445108 49344528 415148227 355155238 231008005 350104732 157162105 435793224 24555999 266333137 945209565 556553256 1024812737 410744499 322177557 135943157 285283123 52871161 969797802 575632443 488334131 831081256 806338690 986693595 179304901 1070708328 801804588 73941818 771523041 567860809 179447160 589706078 735655478 95482665 498975313 701778752 792016407 993131769 876119115 970218390 638972447 789008485 44541275 537576761 968604363 651185766 917910224 191904438 1047398721 527197373 280755674 61722834 831414244 269217181 99565687 995661744 965494660 43423026 570924662 665521113 10874766 477683591 217226044 899493055 534102234 87795788 1001012888 1015500526 570728789 176087540 972384728 606063518 99725625 678462091 591133686 630247348 723992305 126343763 286521071 603384676 967524909 781420442 789545158 37671510 684946416 925736482 588817424 975242593 612829998 590153274 42812928 734657481 682531941 942108980 102947433 654157988 901515381 191058773 362920395 1015416828 336159036 980034173 254568722 1049888216 356769458 99660320 614909894 564686493 538529753 168884315 990822534 914964915 103758975 789475994 290574290 595068699 454409984 373905251 54406147 273791198 993327717 375754274 105288445 49583896 414464017 410611026 1062901788 539138387 53915924 732197069 736421199 123664137 409301624 799739560 858135868 1035609635 502480134 255773179 974943005 703731591 118009171 429870558 314582084 1017312438 869744876 794701226 846710995 274113642 355444602 666557097 589963451 676956168 921928685 345849813 487504375 740138977 318290613 594463619 720333475 845600130 920347696 496997983 418744695 455789992 532117425 694571024 567987168 684266176 697735327 888348189 326767541 78213401 779951925 401755578 895835188 1059286571 280379909 120632826 783653752 1015597117 256302336 334538077 942909793 957272350 485588863 859820724 85382894 864070618 111521537 537991931 431953002 90143154 650789012 519178491 773050356 305446386 386174383 625725039 865821384 666439683 986942021 944449588 904176649 266624131 1004381276 699398885 27282848 249131400 850887992 772154785 734891360 981406110 1068763068 488606796 773043603 84913434 431112242 706800648 932898762 623104914 815389032 804789568 475424418 801646599 761801071 96621516 885379536 390414688 253780814 476127486 975113672 462185432 932407282 64264805 905859253 592338752 975537728 460931389 150996714 217748819 665452712 753304231 596775763 935283613 536986155 649736276 770436044 1005998585 58663010 1052194987 993907240 532096464 111938572 900492862 115744016 485519172 60428896 365206913 678657299 46038761 272530485 547735761 319674316 434682571 735011044 944571310 60904999 841661284 1012166353 246198135 513566915 91525594 848572906 514628582 306679195 602534565 502472696 1005758602 526310652 182179782 1071449378 861596430 982628967 480835901 992165784 796580427 907004855 750984434 746405562 43877962 1016299488 504958975 177838204 135067531 880976137 351880085 538770911 74264117 294766367 611108007 263349251 687367337 874029562 539762972 267117388 342845726 527967326 401899219 163546822 786879218 644413126 275528562 242341133 752849443 944569203 445394590 624347780 621939765 374819452 390215462 732846394 279398655 304361171 76689989 424681976 107823404 565886039 692479410 314498049 472581887 682016380 870597726 76152229 1047679590 92864849 22490064 227398837 761462274 527640030 450848981 437530700 743611539 978285138 64049215 964422409 178732040 670922159 25943427 711612906 266779410 259804007 1059095426 156526781 604371895 22916527 342858486 248232314 776398963 458363274 613760160 148704060 884428500 147221822 982936437 672941087 117364926 25552046 1022798353 971352841 23587677 155217324 488428339 854139683 782460324 746710928 314187090 372692501 108667060 527661901 990411612 148454866 1070048046 567523525 385118988 748422604 332044798 255940388 685590545 981784350 849282 491946377 616500246 534764403 640903020 665824211 827459067 594914112 665294990 106039704 542879117 696292801 669615262 1007839688 981372274 598470045 316952141 53110898 21493504 547771510 650422862 998937841 737622518 238204284 680607218 70217026 791445068 319831346 469537711 735667555 640554143 811782038 259750167 852059014 489262761 37350255 164226026 271568560 461195788 113213634 202744674 57015372 479114641 249958404 311501475 747490201 250888878 397790320 816017204 994289876 576074956 103300608 857728894 908666412 388555877 396532985 70923994 741178899 352628346 312392707 352391852 773239515 758500770 18970416 308166549 111215581 920400620 466511976 481616852 811622990 266652533 901050971 906421856 44422955 543152504 209428739 854511398 755736202 948001722 390222064 873730181 554610411 702103660 651799451 336073143 263773811 1033843794 295581763 186623843 915982441 826519350 349958286 971046028 1033406286 13860044 502537186 702828881 75638381 601763543 574273930 942940452 243481280 781273295 149068130 827446292 1049077069 359132193 183335957 146487939 963953538 978955112 816659071 793699868 512531009 1061454888 760338483 22596228 112233163 135744405 329727727 981535889 394988930 222138136 572803424 916147294 906270324 1052301821 823166108 6600371 597786130 954757217 498715539 981092062 588195516 966231954 309059679 484279731 57285650 367423970 116103367 1023616808 890830897 473983286 620192014 395613506 534772362 726551617 1051587353 361177739 861896965 117733851 990288664 1072715383 123977874 262695769 186441671 412948467 1043844405 192529249 260912117 336790056 1022346543 228389136 966556714 581431570 1029952319 883793982 513127841 618862173 814004109 427118596 209846379 502687548 665211126 829820133 428349656 809016766 714084792 218967892 917513221 1024971280 757041573 653739553 26096859 1067466139 904832075 152862997 358661435 796840349 13537488 202476891 451264167 360412549 851189355 627416637 959369096 298203400 366163268 94486871 466876254 514751330 47806473 439401710 672874093 449134855 27239753 459207230 280250821 597237289 588890488 911253484 558319030 139148669 490042259 979736764 310912594 668144443 26540772 420604447 822044650 201411760 249968367 789609403 155148451 738790995 702563410 178994483 886510580 910037041 98669291 700488121 837865411 943444407 244075099 329394423 872345294 1053769371 554246911 266339889 561063631 796289542 952246292 491474838 681394338 552834496 346976633 150201233 238703463 1044382927 511950192 600511641 114366616 618742861 1036895920 418983408 903699664 252655412 306041631 544559206 569942377 120472002 887148713 1044765565 1067074065 196038298 827616639 965282143 639631757 279308353 358098780 544643933 162273318 914697611 293063357 737297902 999863370 87187873 396958046 772056889 787961837 797185483 474013866 1017181734 430597199 648044584 144701970 1062885345 749711176 42067770 281111054 574491252 794282510 603513298 208964733 234574710 1033450721 631841548 182863049 732419384 858209177 169157740 960418245 996216909 541234442 792924664 35622771 759422754 461041447 404103779 457328320 562837058 925988992 55043689 346911952 964376699 477850533 765148985 976884420 184111860 611259705 293193485 771544401 817997722 978318305 17320990 630100398 979267460 462922864 645563726 368190888 74094333 260492645 676512699 1024870513 953759989 979333433 965727682 759856354 524794166 113976051 490986471 254188393 221075937 585012488 779207627 758275542 678935537 806905083 415394451 1029941487 71812426 380973421 965122242 840688610 654904332 783857305 694922774 1039137666 875846110 156069045 622264063 400593634 684255339 986593317 202119282 1013356525 856653822 584495740 423013362 330422398 971739174 829586641 580502790 751755390 1016193470 133413112 973962073 1023313402 658207851 766340076 501137992 224683157 373147127 1020549984 320898584 691441149 107339653 213446697 60364936 421059072 1013914961 694553726 904895090 660173644 759495140 870787138 1027546116 904879057 965913105 924162768 801721188 850225432 1036923878 829172073 1195935 586950051 897885341 639243394 1054897852 173494474 957324255 904435056 922143989 352135858 805501465 934334238 620009784 753350072 808758560 800702266 93043203 875608727 48980303 1066495122 918063294 402578832 810427736 776380827 1052674344 794538603 233857072 1062036667 364013831 920334025 665967164 981140034 80447524 968502667 838380542 931280042 115818883 173845149 530885795 664046650 377942169 966348959 494979471 636240142 134360349 181276610 1004918842 149421080 258819765 608847318 69791324 972972780 926686885 1062251973 790817135 420708259 279121586 292107023 453388529 589024863 510034561 895908957 519248164 804823917 955061450 877616908 14557684 170267030 735413120 870544691 388841859 930330638 100044356 55454641 781107384 721306935 738932650 399868057 128421712 278473298 775525967 1010762010 367520749 909615486 464284188 413792474 552677578 651354319 891425957 1023040354 350012013 505224579 386726012 489065985 471098675 14228720 207928782 73888702 663513055 880726526 1007110229 1029546748 869787664 259326097 702600709 19782426 605220467 552249265 554459027 989617522 1053883357 712504713 461510573 423868144 598456539 125226315 818736489 679195813 786752428 206322003 324476597 493159156 289314064 629975596 80595677 249987403 996472639 195036279 20953174 719240971 168031900 409063541 687407984 266506608 653625754 985210708 776727433 439841613 945482393 630064089 173409027 160274397 821116694 416610750 400378939 103220271 705018165 412030087 892330018 1006562199 546332457 688638139 719281212 737498330 872239773 502082527 460936598 231548771 888870375 393279125 111573331 803155281 597857450 800122790 894020857 607976005 902306644 428826587 417381601 838428657 737105472 1062005235 565951643 221066533 436625656 802540102 931970557 319898312 273091742 727539196 359409308 1047917065 389532783 994472018 546024070 661062228 864255234 942277064 181012201 18653384 272396307 399778436 635382066 984399375 245182308 217388847 706002317 316519323 905016048 120649158 362358621 959445430 96942154 371261923 533107317 743974386 185222169 559517715 947291863 42933810 677382815 609456213 789660570 259134428 623958638 899558026 1000786745 165925070 7074412 411512778 194395395 664837123 364415083 140613772 659305308 917012136 693945513 468492419 166976820 34944452 244540530 769415315 917897942 845739714 71287724 39418244 786033429 825761997 336020446 951259286 360757944 993134918 399933033 876561895 843883054 780266676 611948241 1062543647 655074055 131998518 668092713 320859460 858427341 1029634202 359746452 582914568 336850948 690544353 818518808 174326524 314859804 739080698 764086740 469111972 890355265 798542965 673915979 854276734 362217870 622954459 300079608 522118708 162459307 983635598 126940941 421408897 67301736 346918114 154388175 355927761 548596098 827580116 221422197 722640383 856005260 383196938 298960562 723035106 469377155 612470204 799450291 582566541 301807025 760781154 463602585 535092560 964734799 477753275 577596075 762217106 413010291 263252954 638626056 67269282 27960472 763354380 1053112055 725830883 730086755 19113583 448290433 857635080 80327126 475570076 971744798 230375509 944205785 611409222 546881234 407121482 788591466 595990802 120140787 1051608396 976277311 542999687 316402720 781949924 866215358 894313577 395967986 70187217 612732049 955092882 891184973 858871575 213793123 235757330 978196694 796895912 66967837 380883876 609045091 510567807 622975531 454840763 399612074 501494030 938814765 289567858 314515166 376762947 858048068 1066430361 461284194 467730051 904897699 680361808 742964211 959086848 601013477 24363818 675603378 8053046 430559860 273199782 981401196 871561693 582466184 666829000 339745621 719660512 857147012 371342167 554729746 850555935 382699415 386137426 652454664 31413882 900021076 177533100 668938839 453832454 913468333 785809542 925260768 1045176763 727648229 1001198247 283456422 925811760 1032415909 299819343 468722555 114622388 636938364 492996776 127056208 113313439 576221113 583906150 226811582 486510362 1012275633 184147896 1000035724 964153531 694096544 594357364 856402286 288243954 116167284 940191090 474822736 985481784 741818266 174337160 1041226247 195408842 6340321 318773344 197864439 261646199 478582008 174039149 986135309 478313756 121626767 530586813 666371908 1040393137 116029283 100746537 954918501 519777297 808169371 952411851 3668422 211640481 131997308 843597229 964824043 929177312 78545898 236412205 418017521 634533741 590387390 572255093 1024708125 542959190 47692857 550803364 821239564 382877816 421893236 811809642 414975714 792947222 914199735 299594679 25566545 1014678305 69272482 295434543 313944067 1007064932 702237828 482320598 531445239 493181486 99921834 660508895 1065434587 615158150 583514362 190886008 683476757 1040978850 473507625 488459691 990843581 843052677 290777675 891497470 736579582 99909876 573303158 182789325 1069692573 878891386 867844479 953320444 401674268 19567317 554430713 476280726 261533004 46634022 219552732 1068336773 277662391 340443546 881931671 476471203 32734435 1027567230 576134984 428248375 43985185 1048517382 436718494 433953735 101315589 407425310 824036001 927306003 714324573 324307325 231768551 228637025 456234184 741977365 712789394 518036385 659970018 222430999 276940862 605322969 166866218 935187553 571395391 962367505 99270516 434178503 961495331 149362017 859305763 840272264 850953537 702283940 413839256 541219062 402869596 996918487 218481234 782783514 124919125 303323469 356080793 485812505 470756665 376153613 350464413 327136635 789080162 761792543 801618907 999891069 215142109 541214031 909596617 119636735 185660184 580312342 510971348 644832026 5518820 752679946 1022242703 416831076 162542514 325580034 543740116 170517372 182592468 577070289 842410082 923351682 752964506 635700120 532649133 732132040 528690137 149764422 1017049643 563042479 934859171 965916665 693803080 991507496 862185944 810454413 309339151 296688259 396597485 270331344 51061754 781528123 402550420 1061258744 651757183 892031542 794020300 6472342 120516357 174105490 64649358 453628693 976235802 394698566 51727865 483661924 808449550 746872310 8535321 138069897 243385489 435078903 772282419 294157007 682812036 610349492 428052526 516948396 928976202 335979246 864171032 376837548 1045181681 615159928 638484483 181473728 680993162 875948490 481659344 613894685 211517669 539517815 288275094 482877625 269848955 1048479986 1046484702 1014013021 1676114 87933175 268267939 1053391219 17544709 478935214 339745895 763936340 575346354 197844827 977196408 447667137 70246109 473049754 617681832 573952549 64370405 148692234 689363891 251247360 760341722 1009988891 170334558 143668382 1049810574 18927180 688955084 47291588 64010646 355602107 986282025 269778989 584450887 1002486049 929813681 959874661 33382591 78960540 265227555 659619957 231963307 588497140 741153461 327592994 290059248 405183833 645274193 275830966 747984313 735628776 597566127 416194546 812190155 1065795600 988328806 660590514 709258581 254354705 508365339 222333298 43019262 212746279 642440516 132422876 941678303 1072382720 805233973 823673230 652114302 670772463 838304239 861503888 816757368 100807528 889261529 568370598 715019082 362660678 821682181 272366807 382697184 536402795 319405172 109548700 377707677 450333182 944614447 471508655 967382481 50416859 443721960 235883279 663784260 696885712 420774616 567332025 3428881 641258056 742282827 660493235 639431578 568062994 92104239 601164400 998139131 339225917 51328070 355116627 417018375 468342131 406212583 75913830 896090665 144739483 581749087 480935987 1043893068 630240941 272442362 1049358281 334676278 906050489 568818731 816319488 471619475 64295439 813782011 1033512595 447781698 1014532048 789759277 589000208 452100792 674700179 860305742 963612064 556470794 715963908 887480701 247664857 574441985 208118039 736144418 232315681 621403643 713717826 595744406 633132617 204450458 298404859 596377576 237620802 220135308 85684119 835526892 611969973 198806245 912922919 758420703 990103294 480298873 119602298 886196547 810142419 481485053 781684371 868078055 923387344 297243497 129624467 610396615 237609671 557861349 639055137 479583773 186064560 592406030 537673481 933937283 239929124 160429464 750267271 590218369 930677352 779534771 868183520 982938193 601859898 488296414 652490652 488821423 1016382738 464101801 635712173 905808663 192519392 517445607 896353219 740633449 41601149 132021347 604385765 829767203 722792256 938604652 667869753 117622024 1071458689 830795310 787619819 487131405 319480771 361505960 289813952 439400075 913352526 855710728 78558024 859779920 398277858 517484541 844027666 100967890 376402176 781093259 650648774 843407056 868490745 347047264 419299794 403298405 705852645 357075903 830479045 114516421 457660772 863207447 963402056 411648310 454436906 624690903 266731911 592016851 1021277815 741529187 81982873 211792032 741832481 155718876 712608363 929019470 288126053 999405537 1016466635 41355881 41882572 110883325 442960885 381293956 375984308 658951823 593019371 404961613 994566928 59739104 157534406 407058333 218975843 245781402 1019780443 225745654 578857418 193971141 6749552 588944412 335977415 375247885 839955558 267510566 686795262 470120737 878573218 982972297 84416103 1020544663 547777330 154440252 656865414 600430347 768153286 94054260 353889778 461123048 444943023 691205017 955756702 749768978 976224281 653600016 1058739083 106483533 886496375 731615234 142434283 443551884 503560018 8328969 234391831 25409048 666073010 547939057 631577107 891815150 366815597 785924119 139447258 1067044358 632705992 725866042 622414620 628791260 223300477 757108297 862818136 583734543 143315742 295213889 494819656 541989016 557530186 414815895 994542633 540936817 523439335 357283296 963301161 845840324 72786917 552983187 697994486 413921837 393139266 139243026 1022734310 117076421 452117609 838392964 931208824 461338906 676189795 379766173 801308605 569350106 8055477 62378321 242729739 321984774 928225091 689842839 809134216 235419550 170836092 1051594137 443743624 208656354 786796582 309426065 573039578 714775045 864990424 137386885 589134511 900545929 886533011 929237254 450362974 930351779 858131204 1028079457 949499392 397941519 344612541 1016592255 939083530 982358303 344083369 545647738 786949996 395206975 338046603 742112533 854413817 141529460 698154262 1011278137 172326519 39809035 757295755 70626848 402428328 910511885 229002701 894981710 47713991 809464953 108714245 744283994 944471180 132903739 3281976 2355098 878254389 251737160 1049400205 502142905 640378791 879952858 1012471636 838444422 933947948 470793067 509352175 183415265 254440109 149514412 315060424 119804385 656525952 74540026 483663199 69833317 397869207 252783770 639252050 498869888 818918762 290107846 283102444 855212095 720428189 253106955 234665997 182907389 665770262 25210721 478679028 754043647 654653332 440458136 969353257 675399005 864868758 427925808 817441128 387368349 33491113 466989594 931269364 288665864 795074904 467758968 343107616 966832868 101805740 25403525 108896613 248700419 788248194 285902207 555999923 520102484 347322321 1031110817 220990177 664522413 47218268 482150609 281476500 834776025 582114291 699438212 849226504 218249822 107675870 948896501 227954657 866107730 263693314 555022342 621909998 1022549319 436587331 773184751 102219529 397962189 613408556 927912814 1018041257 62535376 664830188 782442222 586642561 15952884 813381583 600907319 699660027 272239365 1003884348 570681760 750294988 580108674 671651767 925555500 698196398 57940332 616020019 3445839 381303851 503004896 208307622 1029211993 571946668 156528578 134364375 1034854950 695181216 597744947 719636635 954149207 241794817 557140226 155418112 762222393 471749763 327767673 687184674 1060446366 763354384 308583246 461753861 816852173 249221803 818748961 1045657904 748867039 172516738 455279934 581795361 365986817 469923996 709090012 227041688 54473752 920218709 386334706 800173842 696697015 40157475 938170898 968272080 959887686 508192620 985428064 833484769 384164173 1042879760 457797310 16828170 991308889 293952192 142743638 389928143 371076932 310224581 56638203 38772136 394211330 418176137 679300132 590495659 871683784 211765461 1072899357 714865467 580501652 368117648 1010444641 630827441 583290453 518761494 768355247 769791665 917921833 219534790 1013723833 96813928 8070689 869232000 397115126 869286466 185796166 650337625 491685846 168610499 352487994 210909528 355170612 848074707 127597458 1009824662 739007869 219529822 756290493 393540008 783728852 473002577 650393007 107399934 841250076 544060297 561615531 571475533 330833066 910548165 334526113 375749080 983762093 725305857 174835114 648350586 432581354 211910956 781320953 226258841 534776291 665613491 988021078 861727019 744394002 303386983 1041185635 950900304 627487755 892368717 1017950816 951711565 710249852 193799516 1035599396 301271569 738940191 416470385 272998627 470442551 564559479 496039019 813526159 615654566 688931082 218134828 61771831 843920932 825850279 294235915 520870499 115344118 930751132 971085829 867081059 263821070 166639347 149846070 1070064552 57034270 192404810 413404585 729323294 429424837 697888081 897384669 599825865 996297316 516964145 967107657 263279404 55916473 1052699373 649437252 146743836 552030704 506112308 200589324 870085365 213707043 678586515 660934589 79926781 641788424 750450716 939526952 167368182 828411404 44424317 364090921 1058657657 910265904 489497784 747602791 246729893 907111076 961680804 975223969 329733442 374671914 617805023 470272864 363053627 410788920 911931714 66684152 247349728 723800920 131897016 194812790 582021948 998514551 584827280 268197881 413999694 884719076 639848647 374159466 782756328 662648833 942081617 880383943 223614094 209633267 631839011 711031661 825829923 1053470187 382867151 193467159 17535481 497511836 838240452 818258244 203498092 65528241 275484213 235928345 136628389 23109093 436281227 538010710 702804252 271213992 730491183 863602060 699351272 59815261 109888360 365557028 604141594 588883758 630911193 541754591 592410782 412460588 872507493 442454248 521793568 297634670 785091068 638996871 597103729 842796524 569746624 474367741 809688511 272119284 127616535 234290627 18004791 911025408 690395108 381085804 69030656 17996351 436935937 781952464 723732046 323144627 281853437 741166141 989739566 858977286 13565739 17285086 416467129 101519204 499359746 654042268 505841423 228174874 660914487 375798187 835697750 563805375 201198214 915624584 79746446 619047351 460850754 669795534 779214216 28019952 587374692 215762888 379976310 926724173 834113287 1019144072 359175177 803570600 58029561 498206804 833309236 930086202 1051836903 619523126 1065983911 543696915 616879315 171394846 856550641 822037266 705104627 384924258 35817678 416639137 454383916 148213052 968057019 74417061 482754702 484682683 728308633 422285852 92415986 255205015 843161687 1020015429 1069899068 506617002 792644398 801420883 1060770354 373190021 105417357 1057149443 798445560 579435491 629247969 362250466 940769812 377422984 199925921 216357802 896189005 37273840 913992167 795175646 1039134369 579496986 119905634 445298103 321489510 691144931 299043237 514945959 909866790 971608693 354616124 69988852 734778942 1060007812 951755652 969383998 834994584 607602087 560765025 697032439 719332130 1039238165 876393771 522329727 49107335 660145010 622726097 36778310 367789673 669557514 162676999 309498941 664848024 290930911 154122506 986832683 131776561 684627501 83672473 882377263 1008279540 975373106 546638217 847807366 838455726 503860941 458544049 970830286 1007296850 612290973 98144895 434852936 275100395 370498853 30363214 559798792 681905672 467231799 578051664 443839249 170156050 202912942 658639759 601164743 717550462 178542256 1030754691 467601273 804785616 176814034 155223888 785973440 94007699 3634830 483143980 154082279 185044057 381793285 985828372 651082699 29555304 304723680 677969173 506626730 873464852 934982738 531952475 1025535351 650400768 438130557 526149845 859114212 465041701 1024741237 499257635 299262291 383390655 697960509 517892616 842879006 632844319 519840075 1061790973 167285453 771956321 337487388 622813587 1051846589 41069311 946399344 185655133 55832064 27167965 466947352 293712710 822626605 42411116 95907910 178960175 498165029 316890643 27129931 496920687 900988262 129436901 774400195 801677575 867046061 841661689 136723711 216588518 422950287 1042513454 531600026 430955173 306322030 231711653 242049252 532853394 57048411 786933147 969100928 171587357 601812544 817630522 375653123 603511422 247747547 856793547 209380499 1016046841 85436595 638752785 214854789 719444768 771579929 330572498 544844200 436973284 906608277 393414365 56074500 58737756 376236225 59974590 798700665 836335849 97728118 345285347 177346708 868948420 407857450 750639953 481115597 171617826 582713824 664312533 538985562 504434896 112958239 502633688 468205579 589074350 423265170 569681852 253899013 86088572 458118401 732161083 283381310 881098471 766383817 1049317202 287183857 1061187599 803869152 418199082 488044628 229863820 575894525 504009963 202857950 853274129 539971749 601787638 302655858 886751226 241455750 708783321 523603598 95946066 183943013 909398019 989332643 127406680 738552999 278374138 464488356 919821932 977004566 472053107 576194401 319465462 98829001 45453557 508464711 444639079 530186954 937913036 589476965 583297827 560307578 1021665654 604346267 290234984 772397712 658740568 593679263 551531948 893359020 121596419 226306578 150073365 681308302 748722871 1000357580 25877142 864633877 590560069 21749399 78337249 841975601 155827228 328441873 149978511 174310511 370537953 491893951 180667489 997708124 611206715 95597852 235153624 1019835183 405687722 313857880 863873830 215907704 634926544 944505032 733226479 555527692 915572464 538650086 113648293 851320402 606222491 1040671306 734109935 217599547 542705628 330688947 833915826 934506224 226551422 513142755 991805006 26610951 562182088 146781442 639315306 995299168 783915159 992957293 42222549 847768374 287718670 649358389 75610792 1029604484 114697481 937098450 83103042 1065864546 891129039 926185266 263531034 331337475 1032005924 73232349 517383676 869525987 143051848 178721141 139959861 193070389 1007180335 716115589 399415720 425628902 424369072 945282375 922759115 180960424 135366802 832133381 1063498256 316545195 743512673 55444374 970871407 348760209 62592107 611158518 871566313 627991391 732470521 909077056 713276066 1014072520 598761349 853965103 912548855 282379131 997256681 124067185 360152767 839817684 696012856 581963959 12580163 663943340 287052558 703953173 914580618 549065074 128521190 754187688 149167332 851364118 798175336 61722201 947440344 744482159 605909700 114184348 1048235759 862640978 1033838158 121318487 572900984 1028711953 61078488 810496253 344540746 317986946 879890822 781504487 597688677 1003278090 630903680 288198189 873351446 205581426 16806936 955677420 621860749 990802658 157608987 996293958 221743416 587177006 955003302 551645250 112169560 966047751 965953739 974914630 724464116 262910954 431195208 766140815 725480523 804508082 1054341376 784358910 53249711 433053203 948442023 63776182 258878334 193573077 139476749 952777350 271174991 520515219 935138198 431076478 136917178 1053955840 756225990 425318853 132047326 749932982 1018396815 330244347 254147457 643092821 513551055 554034698 87458287 277751890 415160015 636614306 486056933 151801508 109774421 39966973 634604072 849703994 1003048069 323573007 740465288 539318481 84056605 432524463 736433053 1020985540 618789673 936429316 419570856 261122294 838951124 1053849886 25447613 143971819 788947534 317489805 451780632 573637193 955581427 103985264 888708227 735752939 229151503 534477046 143805604 135853042 637998749 765392459 112094921 670630054 301844897 504355293 949898043 275896838 190252609 96376774 559563161 97468666 31681537 638410560 591874553 1021677619 830102011 685501481 41654857 981244891 457531147 1041982649 661719007 1011587934 1038893316 779607979 834398073 556713395 318665964 24489693 657764416 692621137 35837701 633062444 45292543 268895765 865323830 715274599 809333227 601886950 680313478 918021955 266897688 433169725 198051774 524454388 171592200 420345654 329885377 192138582 317038457 971669121 425535422 1053612902 307763587 515138813 434027196 438879002 62729903 651801652 341886970 328982108 653799554 483979542 904564682 473651794 948114917 631168999 781825726 331101095 1046770115 54627112 84496565 509033686 314458601 436411466 200681544 413781065 336333957 309679489 840839688 598438821 915565997 679792430 1063475560 799017473 1017336762 9987604 405479270 1072641987 784237072 509102415 943432261 501190767 925340842 262301639 30540917 541010757 1023821016 983691745 32961974 528266316 654533917 198292036 99540386 503750088 210503228 590748762 302145621 858768792 885085272 513267947 189309052 974324654 783793623 278173098 804000758 659743520 627790183 621455047 1052447921 52072707 70180121 422116687 708289284 14376462 672362129 367261934 349258702 713497745 257963446 862873778 816176408 377537003 444001483 663971656 127035653 321046551 264936650 119327487 208582472 102616941 765975210 27171137 706470629 375836768 197330944 781882014 418055453 586943895 562656506 66885049 194119073 161939588 287227524 223257361 482949535 69405520 362095007 931709840 907630630 540266866 521195709 601800998 724577415 119577014 517787130 230366959 629362530 818247777 45499279 273223885 676172498 594775956 42417083 480704223 232892046 613707399 822893948 1060682978 426565034 307388662 86087975 608242474 222293543 223737274 735433221 520170578 742018352 1041861364 828799733 965024336 888257517 150335893 889226339 111120905 719999538 616874395 496939334 180728350 370942877 1017376026 972900107 323556535 112939619 951917743 742775992 947930666 70488814 234375656 72045647 597272306 277212873 130566250 462822815 909731422 504751381 583626862 814809960 491378777 734341635 744931273 469879208 343730239 533359416 209850112 940446270 1004106992 231310687 507755693 27494134 618302900 673952924 237204388 650505717 830277269 894097614 14153997 629866010 1072524058 410190593 357420610 359687177 757582086 889102495 996090753 318689439 327404988 865029092 663802014 610641606 928352974 436992187 807560162 417475064 757210083 893920696 810964493 880636231 209522194 654192242 493991285 976467136 958024917 889268952 77028445 519208424 699239059 787827383 149432073 591210275 315015386 389579901 181424528 619603528 908277204 484327339 183643352 839618124 870538439 515360206 692821853 703659839 898515075 956937419 268909053 496897638 365396786 948156208 874170749 843159469 943081974 340276913 236212929 326233277 4005732 814190369 959522447 263111514 735188697 376550306 35957903 169795338 616808050 1005417534 589646514 164338357 747097430 266878764 335973316 454564392 446265627 60432790 513252916 46436154 967945090 280539278 417835752 850911163 666411528 100545450 1012032328 488077515 152189412 28879404 164576035 498302107 924906110 736738586 797624075 446338243 1052615645 678911807 372302683 96935150 156724738 532073668 489017285 864842513 1005311638 1056456128 841942953 867379354 37958532 51698432 849540198 813804868 237284574 1024987208 102055176 719155887 531402600 1059908123 55332134 197955713 220015371 737777793 661524406 569688915 75291230 221526156 928370855 922094846 475294207 596400365 289041194 360608761 614963341 505547564 113746943 601467651 498723106 1018410096 465449939 731782129 863589830 90713019 795585496 374349098 2806131 515069067 79149645 312257875 505330354 958719093 117151901 674739196 597963070 106011063 8538660 587083239 509996470 967844577 253319446 669644312 428304037 958707151 863663256 1015257593 695770384 255106471 170510826 418055911 869732293 714234676 561798279 485491375 478176676 265098697 617442037 1049572226 342357025 297272422 199415826 524156575 423751678 586206166 270222388 210572062 277586465 26300932 690846630 200244498 508905582 283514286 533472851 683853496 529861655 385378652 970054554 97242905 308677597 1025964364 930823498 167323046 995985616 681552174 1015100336 1071224652 437085350 372089120 676429368 51218624 486961189 469932664 90733058 203336884 993337843 1020258626 329152213 533910607 151397192 930463843 217467124 415690174 50620144 507392066 900149226 625891746 927037842 369976034 159920061 1034587652 51830603 840052123 674792304 253240734 870233246 261086764 429022307 36904025 712363771 882924603 459159512 930329834 70711499 541961440 835225018 377066392 339953184 986017512 906892229 73142402 303564020 386366025 934522090 297377762 670231811 747493230 988417918 971174137 970216438 955238324 521119158 725015263 326351890 972417479 916098653 145542053 131123695 613362433 774943836 1047582025 139213742 175664775 255156405 135278767 819784434 539342466 453032036 49521568 829376934 97600194 1000221370 545611676 309747241 540059406 767104610 381231993 867807118 34457442 920705313 868814607 900968922 13831433 318832489 198521642 162609320 1069011950 232187212 114363115 823424733 680211048 79242029 802945805 749418205 862838285 866023235 303010991 202772057 417659280 882623211 371252742 1052005404 493797431 312752791 973397565 49291157 78038872 78146333 409925306 472436079 337646650 431460197 604581524 923400704 638200185 757852013 582212313 772316616 308457242 127744776 257856416 636849622 629670412 747363504 231526212 1004170324 501027647 289707461 622467803 728200498 45439016 421809943 183980498 679580511 995957203 916828807 117604204 212737048 393356131 866152606 889672029 16933865 53728950 58950559 20683111 231950565 602095655 961936969 405463713 547879902 183881883 917876967 686384055 851083539 270948841 533664132 310334623 1030937532 247090413 454194962 878462950 511829371 323528954 126194187 65560586 519763891 23789341 342647011 585321802 1014928004 161502544 27632265 849124368 364642459 580515870 286841826 723645369 679002771 759927648 710127444 1033500474 815090271 758643679 241420178 911212614 980248846 132925414 1006690049 875207285 123675231 123591723 327843558 26508551 744292355 168366709 192322648 314985854 496788701 686220444 124117154 585977797 47479090 561301474 105294735 477791577 1011570767 656302707 391727860 57163725 37975390 377327165 426892610 73463113 580437234 69741141 1012177047 158466338 893284801 554698501 799312835 251170454 616657497 43689747 922830859 888967580 734658495 1052657875 273129825 711446551 512851147 680716795 367854202 53853372 369415174 208581473 692873040 648507498 24299991 307243445 647030027 494095070 674415760 396865893 226671981 752583764 184985816 1070896020 267965954 12530913 337966250 682232560 472023149 801171525 127279521 225776827 380314316 943119646 515472373 963904003 805784982 794777007 888047757 533129454 663558355 283272911 662458078 491015059 773566586 258296256 567273597 649318340 387552757 362549428 775707575 111365600 645699261 99078399 62094929 216752008 441499736 18455900 569691986 900460122 845554745 988540827 198056157 1061365588 452303271 79135433 702546283 788715601 415009312 709062032 1040684575 629619536 620698220 116898485 355469724 272941062 1029459686 229456431 823858409 85396987 835338412 147068291 249276289 1018302427 17693860 200099206 256952006 468322057 709183035 747917733 439913255 1055185349 667017860 298732173 566516747 989389040 912638364 1053807048 92610748 468322331 410529427 84129005 375215727 984023178 776849765 593685655 894862058 761774225 245132151 97300651 319679762 484718360 619481593 483684371 415580949 1006854262 996431984 265482861 913273586 522773808 1039572390 575907398 89364209 331454578 777072005 1053536459 387786136 613846525 867081279 868896285 126716331 224248679 806423556 508761492 980718035 469695552 20724975 214678953 824334262 159083043 246276672 156373594 900348451 703421994 1015522117 25003853 120943512 965914304 416886633 1014790020 1033156048 429493662 174268336 681987675 949416551 496902442 324073017 692904331 596721003 970561626 703536771 850984046 895498429 434865070 55995312 554945722 498987686 190434357 825846834 168796324 395089360 699117596 211099672 902515779 545401424 748421769 200571822 1031286655 935887937 671456205 749494860 525421739 919948416 615208840 276935954 823495550 567217621 255862854 620120208 1013195485 637541862 91592472 25332095 1048626703 896286731 914588984 385900668 281677892 276289844 837204740 944822115 743026589 1058947824 434409979 18471018 603226836 427074353 398794768 666338101 26432212 84584136 819916480 736380796 614217452 52137217 269251633 951428866 230883248 705618266 166425598 23572547 255040075 925753908 825703675 394124735 290214964 7605533 79106607 557870423 552808566 375148114 792853344 732415740 654050460 376763676 995463158 868608727 584829756 92175622 644812829 67413841 973999242 936233636 114713844 445381266 621027790 297506056 477332812 996244998 478501045 188985922 532815580 1036151436 442936063 290409753 1067861149 264094802 1003984549 816465859 191991803 521728323 832713634 973694702 568904690 344966744 871451219 879618383 433746966 1023706499 262618182 119488925 547369836 595735086 95430805 82602049 212986965 799044272 390304011 564163944 625655662 377492899 552528742 766275482 1037614160 596114768 727006977 660493397 883617004 182025173 204919578 241338797 516308608 574702299 1046811315 597916829 184325268 722980380 957311195 978276335 899018437 901462397 572002508 92963989 736240686 689762945 563570515 381647060 1677806 1029876470 215899747 120560278 480282725 70488936 109136804 829101030 973891389 240631730 499239547 840963956 258008919 148040057 619509796 528073367 982030695 821389317 134879103 40896831 66347591 257733360 371733076 585150807 456273126 637462667 490220109 775221303 965850773 621561478 691461488 920802682 151244546 741291511 215525546 82089073 286403454 908688555 633455312 899389103 534788369 1035119906 486977203 639972735 550049643 963521457 847613372 269265226 811121137 1016636823 194400778 904466543 92832144 659829145 531914857 221633834 875690162 449055697 554440365 326538495 983907059 72601434 771736250 705079718 576476038 378102280 480674459 1056154079 56264080 694664620 990794309 610253775 956499372 694343420 786859638 851076936 161800292 2912981 195091436 409189957 923735438 553662615 673668156 757252524 873533017 1004916715 735248444 188538856 890505779 1073255142 296620360 647963604 853369822 416038401 677607320 76721508 629724045 441955645 875587954 138853541 1011230269 395632919 593369894 286215772 950683804 275431636 127662904 917705694 803935046 341791963 513623170 65404268 748536759 572354509 651339779 692444438 634571317 404658045 151725181 689307839 423611961 92501749 1035486216 458424541 600604266 763121869 782579316 920802098 368302400 718934565 968328287 433455020 282272480 194151927 786982694 329563213 390165868 640269228 758329576 268120702 83992728 453760279 134712175 4221539 382718345 411356989 231158852 344759982 807927459 695576754 250716006 929110331 876677837 528502699 770071828 618007848 533710425 307567642 247996587 515307132 737639135 594518334 511756347 116867127 921321910 382683554 232602235 879928751 13436953 925100309 717224861 577251846 1042791195 1017118175 562458386 807629792 902790522 338057926 828159646 663364244 705907021 529099463 502147353 621984139 1027235894 440329757 464333108 1050479004 849099399 150735860 44082222 18052054 654051319 160681322 291207654 567861979 700587605 383583040 127316257 667352535 786439810 47064716 760730582 993479680 915000293 437136812 261341397 436052404 201182463 860020909 468164795 737809244 1071254458 916522489 802425559 680984571 898716454 193087283 948110175 747144660 733770550 860936720 200008344 679199194 863779540 915465495 879826634 51474156 711067331 598547595 532783638 465150190 615952450 425059711 438116301 360387021 1070223432 92780508 1073383656 370151972 430106457 1024052856 1006113390 991949057 1042698822 26615772 615642227 838422532 174253540 265786427 292802499 214836154 305053860 776918936 193648197 386394388 254156793 398522021 421817853 923625042 665513624 1024651091 708550491 690716078 734868098 174509090 878348549 408866434 575882264 239337448 178252805 946938926 557442932 462526885 229467725 1003139598 186337362 1014514952 986869051 974823272 744626996 2821683 982565639 366345335 608743520 789853114 550082746 714940084 51331215 553536287 927471928 282648853 713804741 1018055492 601960042 844835199 199978768 939573957 466107830 199080433 17234788 726226406 808792910 792809854 843245987 104789731 68862529 739563959 19727903 101040443 457638912 727309931 108953546 260130236 852407872 136015544 63672365 59371186 287799998 141042847 556665747 463543583 630180836 1063941018 512098971 962127984 135293009 782537162 1044996291 511965424 668102014 498590313 567800204 278244680 382466958 559270319 904251587 204073708 370828143 231595443 637134504 825741807 1032855008 895886647 988939540 404659330 114295420 869850691 1034063660 1018565856 850663355 582051594 930001890 897976720 191765434 187655688 368274469 1052862905 822799129 974185331 288934323 147588563 743030259 212992692 86952566 221081206 550298349 1015028476 243998678 801336189 361502526 252018896 116311427 226227414 365903385 474384387 918862622 952491881 18715283 369781343 489683951 127141738 19058060 1051618201 686694371 989271572 1001638320 983968755 895943735 802659306 1046128902 34248327 887017692 728187701 634887059 323585447 674636509 333746032 957566689 360845739 144548542 625930172 248442752 115483960 683478215 71440057 638178050 798669873 550374828 688168028 247238477 22967914 40716107 43115364 968176314 808838461 208578692 250987487 436254620 54705291 250301869 428038839 442002612 608658144 1016013196 736031967 120083780 523745269 930711234 144285028 482155298 1006509921 669434850 888341971 408601609 92200256 109933267 404168268 233705595 831440462 118578941 939593470 850840398 400554635 600960271 1023146070 185444179 259954206 280864697 341240919 1055267034 613775427 546109120 962460126 857329713 950604909 402148985 605704853 765881501 19249676 642044155 603106141 745305058 227932399 173507253 1051527138 758088897 1020575176 626375081 793828367 329080914 302081131 988431943 704191709 27823527 322153366 256767283 286633866 241920145 891821743 631648640 557588919 10570857 291647305 715828131 408319442 515334229 346906368 652886529 951419506 957155805 8375003 919905271 182640379 945896294 76901133 650547210 870149624 281330681 798310124 569723829 911175032 269862488 1027005698 244064803 826971517 559383192 156038527 269158900 599384778 138425592 30049806 1034354618 56856443 72266196 1059862043 288323248 550866424 539589520 761853070 442213839 1044402980 149263140 308958866 425223357 1016011055 150233326 216637814 571198806 918815285 802829193 129050036 652385345 232238674 785289183 25542615 814224053 6191639 220790600 642195421 995605689 756299191 1051159943 804745185 326146415 978646615 573843400 367590122 3294707 982286231 198816740 570590571 460220300 1025443543 93453179 192536652 433900413 445884794 221698226 822174251 588621538 907060383 362878241 75403661 513032492 872068495 801245561 965209617 836105273 508580371 962751953 382684131 868765627 1030365640 712039167 455543166 234119152 905941948 820429977 954050200 817706755 56588721 711100753 443235201 459783585 76067534 406366342 806533161 136675036 951455538 749196638 457632800 968930435 459836779 719200747 777896925 259446387 564611496 970987043 302310776 249318071 362628245 1018799821 82368086 1025034125 987120728 89450194 600353950 46367784 313505928 453603576 415013554 254368317 186189188 670656104 513769257 654462854 170348366 563573929 162551260 1000464181 902802750 439720519 668006352 405068903 671054560 67631702 849071531 902385373 789171171 1063005065 1062848435 712734470 717845751 811652211 137677783 473287316 621037358 580175436 1021912858 119317369 649947286 592686421 297133565 35335285 288148682 425047465 784543680 536529809 1034667739 408447848 473278906 857672797 191825913 355562615 702183371 942435445 1051246921 96094324 250435629 286263561 1016373482 708195444 1015825413 175495379 261050378 87735626 728040508 919072968 389331106 441450574 960435525 1014404159 766255246 835539576 219411643 592845795 450125398 47428307 741802033 67509578 380088395 367681292 184891433 156249568 607966025 513857660 641612045 37971846 72826661 681506540 950937818 772601874 432954360 996412970 105623480 669862944 809271423 787362513 524678490 407194511 225320566 744411713 95344047 33233880 390133219 483715234 521049222 520014574 726159863 220656361 630768550 423217271 428725784 237115594 345385818 361206039 443596738 850097468 547024145 761033138 118482144 518406825 567638826 601950126 822405987 382032583 440396604 698934916 882137173 898644320 117921389 756407550 261286379 500386770 322036034 536857726 139340128 689553129 203341654 268754207 933159263 470700284 440299533 362804784 627887682 987778410 844539794 642449805 595218541 1066137759 946434221 394505911 996462657 419104494 710423626 892175622 422907740 215251471 1057301878 8454230 240163642 957471840 105981069 870990432 942921931 175242633 864834210 23551237 449131077 477173972 989978662 915273542 63898249 410509038 1043786638 781061362 343098456 434060192 252869940 696596868 808135145 513458604 370443772 625419053 37909202 432881583 886209399 1026901022 296926 513904419 383334520 856821947 205387039 738096337 928765617 563662799 956727155 894199511 47203547 695783547 958419247 82150965 995024024 209218079 285557744 488526237 132291448 968756080 528075944 377322985 139386665 8458267 134479819 1039563739 463999609 186410847 788241011 970674849 1019150014 173006601 261067951 49958581 189455345 667260015 306726298 572431192 1040022540 565078572 107573459 735912316 793158682 32872124 298428612 570271938 824807908 297625636 588155690 406782511 9870225 898268329 396475313 709317894 173287023 988330271 683841245 1007669523 51578972 557870406 685411895 626705014 459698616 518385286 141019119 340683356 398507210 501369246 929251921 692582767 448210858 171534581 915271201 937447362 374668516 328814950 535481163 982206561 391699183 1007246037 117569788 450931287 140493434 800234410 195981018 101550773 740629347 47912992 1013074245 820837572 880936882 567760079 761578168 843188373 998145626 150932709 367470235 872117658 211863085 1008273908 148688853 439851475 849905360 811251699 34065380 906826319 640386398 1056526451 908346770 324971505 307839676 162559168 423471843 501719889 905450862 1046289928 224763791 83361424 569745917 763166178 802907814 215744423 268736691 456818794 206095523 269873940 613294740 374033093 463660410 384046782 896096782 536702326 676040275 267979829 336589834 361999246 42568523 874456249 430407804 35058958 325086541 614084747 885650924 492432458 340937465 603505607 465427638 950834290 1021542305 506562897 930700488 1062619636 12682283 526257880 283636433 13243541 17519047 512766417 886403933 69462890 428105305 230679905 451452758 1037989519 551579419 531164297 874595162 135800258 784617355 202484341 13579077 119868965 1057923681 634808009 543859056 134073437 118766888 920603555 522541363 374839405 61129970 446570861 751719428 1045687145 478949656 250372925 1025283588 420672925 503402879 82091407 808734118 196827200 343102835 505746126 354202804 775840812 54688506 777531389 669623154 867604719 559558669 377896310 600907814 279501961 536227478 121131639 346700890 595048623 594013638 604384382 585998091 519702026 234715812 763234274 1029638662 53117353 49236622 413578130 594814932 722004245 762362328 9405687 292403616 639171771 815325842 244779766 681604590 98421772 272094405 255284907 355789864 965249700 680222844 268402175 52975967 137832042 106518651 564747845 70175306 75129487 527440098 910053711 285201907 752170424 28051648 822766220 302792292 229135518 1024280908 1065604896 907773730 373751883 410701940 132586759 856686146 287085539 938992683 587829451 323978590 859151335 347824706 581109687 117122028 323217211 1065572713 600013916 1020935022 691820915 809599476 54227736 637552539 645952354 869936635 520303672 120259693 532082185 140424630 435095555 32841833 467217481 758743601 634076984 738071763 44305847 886439318 214608441 621229604 1006325305 838825060 150151470 596247934 451685060 854274157 928665052 982500258 147399001 960916001 3318668 1056746964 840513888 204665249 418024455 283208612 482839407 530793331 869806570 56023918 697451803 277200200 597521477 1040646613 760046021 1036453616 31014380 453922929 73944475 712903680 1022221393 616056688 401725916 423156453 490991042 1065806502 604681151 230323925 218976070 953929701 584710933 35909435 41074114 502680407 273140193 950670672 12147726 472028771 1051744496 343252053 734268414 810391325 593865618 335394513 253629955 896692842 834345464 412449020 298618031 475127200 649565710 1026557884 865900733 374217032 779528440 937020698 300953715 609108392 362794399 351377909 129960173 717325116 34571476 993532238 457620942 241654457 179177360 294687719 462483855 880286043 121436073 1054107454 986405365 269233444 671090063 740508530 707673478 637609149 408682629 453398345 114159035 1017624275 915664366 17682350 289995776 445411227 265973721 116727315 439250022 316640062 584046675 1058722695 943645354 954590774 779211058 455977573 49619898 609273297 270686959 454391280 806386475 848174857 725854122 483548894 860570000 987748705 410868065 707835692 49780765 432446751 868003567 333321068 880810156 345733551 1023878779 3474635 1039463531 106687721 816840551 698551626 372007343 255466236 15167426 182599641 423012072 107185425 970865538 283120168 135265521 123999426 429045639 506641877 457822229 1037781824 408167100 950926013 213639568 839880769 202680193 545038801 410149146 529545317 189631758 877416015 514571967 296436037 121448697 124813658 557374267 464708050 714036964 389592017 303625032 1025261641 773460657 447109102 732355271 701203941 573266692 689933172 1057678791 823165943 654893105 814043898 243462627 153989593 78117028 510370248 275739176 563075886 1002343137 619867065 649224191 956982545 34736442 614148014 344544935 756517598 210090962 904376939 655131389 300889818 1030684787 987472324 881689800 630105008 326873314 944849600 472159407 320725234 195500614 782889544 162966755 290605440 259779174 469345677 13560306 1042481506 548536655 720679015 275389392 434045586 581216114 792031015 1033131248 864071818 1025883423 610692942 791553114 56420297 713667117 729635296 303183367 620923093 670403951 526736371 311900494 966782855 1009467570 973970858 322564932 279201758 888221834 343521230 675993442 76865975 30966380 270958302 753886824 751203885 430990598 77668958 875708325 624128447 295757737 1072249923 403631757 999431446 999163694 1037107821 561479019 988637390 463654498 624655133 375078580 388068241 1024584969 735617372 688173407 190185369 1044540790 633501299 1037838975 198547969 418066494 786694933 79692378 604236771 438675129 833776344 642853713 435212599 440343302 43150911 555426740 439798228 1058430327 463388 745819559 328305154 866060430 482951367 960989360 954613295 19314505 283188723 768945915 73599062 659126622 405904299 442474765 1071022203 700095036 395742259 889138213 160101559 831975573 1039720384 396688990 789740042 1029375208 391962610 60215691 619341317 921546658 647704850 506416117 954690900 540334739 760203604 91944069 802312292 108826244 832240867 805819980 186335384 1009895886 602143028 820061939 970274639 470419 779665079 284776279 584694625 815376922 1061725828 666095695 809460031 723457031 207680474 945027143 519318127 109317182 55355418 909453865 1011473790 520295720 861077660 483028013 807406927 677391610 11661673 549199448 645401126 987001566 982395633 6414849 241103031 719591059 971288065 985611281 43296781 238774480 971851808 39463065 171424798 1073117300 277070111 467760999 321627516 536767321 481126815 225692124 190581758 551514323 869334111 194192231 403791658 174527764 497431755 462581267 28315720 1693236 638678421 45478278 365709700 781469871 350603480 849329811 840013945 966368849 757083491 892434662 1046362038 338355034 316317873 3658427 486945187 835894071 1028351845 499235169 572359426 442087317 1043481048 1024723630 1063491231 669351928 285013720 441489333 743133454 363745593 554298292 841606549 902515372 704462075 698283945 914029122 376627935 533208198 612175155 548519653 453946765 569899423 792452632 745856520 478429305 655379832 94343038 204311260 225878020 722393081 232210279 973094486 481742600 847528265 792180548 108761520 1054259047 696269376 553969069 1021588479 936703232 578772863 376588783 944907068 896799575 343195958 715501742 203939025 979226764 1660958 135482727 650484691 644823561 246810551 891352154 612971099 607515782 67407720 648025709 811430104 734677471 188971251 399180959 235486898 761329870 520995600 178240119 692716524 428210581 436397738 49078787 225822230 1033571013 15366742 302950691 425807326 282464379 150254347 496918603 172540037 26846946 263246467 490047870 710273631 886884621 620393869 974836068 1035371095 270908941 451575085 955149207 217625417 212169240 492089233 68048721 577261645 280200618 941688836 615932914 437714725 653298137 361044237 366856279 1054752018 141636191 845004141 458533237 18380169 660720591 912693459 239761619 641925298 373413344 529321137 319343264 654606078 260184959 982377173 72141438 152209845 560222632 1021858759 288950218 61421817 522935032 86132192 891934295 664377841 39305403 610511089 324015277 1030155645 684762154 931288067 96055698 667292330 820565121 509596583 790690823 799382829 854743332 875070091 827656318 371115260 698325704 973829050 325367817 1016537486 760522863 714492343 451202586 662421066 305661525 23676025 748774412 438007876 852939199 783131005 150529323 479303497 860309326 345192810 939838255 427705289 999768540 992421481 853880224 12933132 842609903 460545151 485161031 162761649 712007147 1016794232 141109204 800905752 57968702 740937808 721215146 232297510 106608302 938204702 276727377 421443061 279056616 761323213 1001523714 572019704 198063499 21036396 315655372 118588966 483015427 784508632 611678592 991947539 776991736 329215540 154971330 683724651 1026473293 985131679 501328031 558224089 958442786 266866910 354932771 755441228 460129854 316925151 839992553 261666383 491252437 756018178 157260968 1052020559 349384818 290486665 27292190 675344818 526741785 473089481 541901721 343954362 315366557 1028194808 602847199 12388236 628704432 1071189233 956898636 644994569 924812021 665515026 641888378 1032803505 716890833 619913697 309541620 73211243 5078338 977261929 472439892 817653801 90465436 137380164 931712055 316774152 135585674 231329771 178273089 689170097 896746573 680064957 979579166 626216309 745926236 509018693 71785560 53047190 1033099726 850954570 240393580 1051261461 898685780 339816843 1025161147 553571113 563727768 644690293 496356623 666741596 23920081 532842062 74817402 952697214 339783616 206495693 5452902 799137789 440122906 887628476 1049201246 80824170 1028164334 707481448 508651689 977603157 799804273 1009555976 544054023 960784591 629751634 867717412 736384890 1047963748 609905118 785313599 719807463 876976093 1023046220 571879697 596193943 158608535 54666925 818340061 592599100 450359763 742235789 89720036 715735973 960521306 172200960 599566616 486602921 536012827 853296853 855104316 212231048 902254796 676059389 983531025 214389408 409448496 31789314 892118592 802069082 775207268 288318832 1071330163 850210170 672121510 360034693 536452654 515001681 931759568 697306155 896377725 1010936723 172944849 738473536 419804393 1000046910 696151159 865869852 987631181 716519421 962581551 598381018 741385018 338229609 382759763 143955853 507515136 961451938 448934570 541312566 821983831 304160263 316277591 57555886 355778048 683745865 1025255975 475744249 5749050 497579486 512765786 373738922 558265888 97148434 1013699448 76644815 1000391734 743446412 19139656 672787522 775733541 207896448 447227762 234742124 601892875 582730959 543291376 45920999 949573517 111740941 825908052 932882451 570063169 906884351 92256969 569761694 734443399 291943555 438737487 406134133 307068783 479192569 30646490 407840666 1046128289 592733552 350745393 315490112 291462205 926104557 705107234 501651065 891797566 577490033 483795235 635082228 746651596 351558728 264625520 830929538 430206519 953608517 331762463 1041618854 625858325 748954690 412832287 336961312 310383846 1010719953 390545134 342570038 843048304 274719502 477685324 654780544 675625914 289814649 777072811 356130805 187609613 988046034 210433011 942229720 975873626 419631959 777132194 137295467 506256808 956227701 499334549 66616162 418522061 770341658 729422621 237015589 246165282 379135558 979942300 983024603 632665702 11017002 52717355 580002242 625839663 897527624 868541815 86591246 500336918 921015823 718862044 332457309 690106637 543323061 683387655 224977847 363738471 51361045 415024891 494232180 650405860 402497101 657775925 265202122 1047266691 57275232 773095582 32924616 329763243 23302087 666388314 515399022 671793950 10541642 717437206 375888241 165760372 722258273 697966306 556851186 307049725 132171164 807937523 615537818 778904502 970701946 1043194332 1026746948 361938971 692921069 735052716 39747386 151765472 1061163393 21638863 361326006 295299235 1004015906 344987829 107264616 673888977 708048357 472622781 876866492 12966401 614595388 572608997 551794861 223032311 110622902 114744061 921654903 79667527 51879604 60946464 805379937 278922720 423919586 619616548 764613034 230152984 709808534 716699339 277040024 896608132 151401561 188750872 368661266 468953645 215258524 213129871 651491072 836351489 182188970 926708555 339164399 594638051 450285464 180252447 623141346 189898700 762079055 1010696559 274760328 620637059 550416232 992346751 677189852 912109328 558233073 453593525 557798641 754325713 673672092 575632779 215578079 497378953 430964538 39591531 789235617 227804237 340675752 636262449 695079150 78586772 519819433 488532567 187323917 344023794 876107192 951636752 991120429 404256466 384032599 334467551 64781289 921388404 288011446 275153654 551235159 107188655 580907318 18995798 729972872 840139245 78275600 491446276 662524222 18166758 569599539 905142534 824872764 142640547 1040821344 1006425291 335468559 193867635 805377677 238547496 1060138153 445637772 481832337 930502991 94423741 342997487 249524555 288089810 1045161151 569812431 951454580 685487708 377561733 378388517 770178465 786050873 902589232 943740138 305703138 871849056 281465636 862736517 226806169 64569269 353147991 968106860 419441799 917255679 173963130 888675733 651125159 78813681 451479776 449521813 144521943 769005212 692621275 181388116 92813110 381478035 880267270 87847522 989605082 546728253 226699979 549760189 818922797 215008759 163345419 924903096 841474252 237253948 517831280 1001918378 635661234 1003957946 541298029 934253664 678075532 161911150 696198035 839255112 772777182 1041377980 315798889 86575450 645702860 465379655 745880581 136787885 458688221 205005777 560544015 952822909 329838243 510254694 884076875 544697591 289816782 1006838808 1009217304 284611634 679443079 66260036 641166362 495125040 564042154 428880143 1031230207 925788274 513816837 132040691 383811803 22547501 1049637184 301780666 1004221231 403028088 830913260 1002219719 151881261 857119996 948025807 722034649 987215085 444586576 210804274 469223441 860922300 1055008076 704707451 924935501 686023912 931227660 930644510 63321312 55942447 548586818 527010339 838897445 273204043 937103860 273407568 959240402 1046478139 673338952 972128837 248037579 802275841 698288302 910199052 466111223 115276739 614933633 1039085071 6642587 839564963 236212648 61988564 160396514 614651329 247093889 334746283 412696394 686157289 215754609 11288356 644364168 626351760 48894954 896873092 524695100 162697272 313099704 695778545 15958493 423235350 158289329 588755663 5777838 83319083 876558307 544168414 783177468 310103480 643861309 373163531 65273742 78701633 170193496 702928512 1008855124 1052621171 886538720 96082932 503435579 221957352 911429834 322293764 721987735 333053175 344515952 97236147 700358101 122753929 22094621 15154191 734206751 15436450 526606630 275166680 865661297 623379551 97399377 514600310 1002316534 361110333 408944095 208236711 895489497 242797228 137482943 774802455 560865346 207607698 1040111303 527873535 618005029 666868355 212535626 142754344 67485118 194900606 75864222 512502067 951155341 451307835 756508478 656373033 1012956076 908829177 141051029 1037602067 1052749230 873380975 189971554 136644189 62635417 434459732 831206506 613746088 781963092 228307648 1037806392 521034680 953787822 197783459 1052964124 897017567 584421755 323966171 360766813 40691855 667269551 139947667 707024515 739429031 596625500 247455312 515063787 1070205858 263715163 1053781076 409278836 234127089 320121341 41726008 420159698 644859678 707072361 175248660 863445726 830473915 312224734 84124445 651050561 17183873 31541572 451859238 1059654113 328639760 27772618 502824927 490876978 54121444 852330248 1041460115 162817135 798632026 152372071 755216553 968258244 310887738 51334342 576460049 417393621 687945261 1001917210 997169377 553881521 314119609 467661540 1026995644 392570150 249476989 650167719 476497182 206587298 33922081 4138594 977590283 255687237 352560242 981653651 144370376 497999995 933334468 279690208 525679426 556284040 938637635 929192275 197223110 327965240 381527333 735679909 102558407 703976215 149977901 636603239 616625586 192059788 94661903 414158579 803824481 575131196 800176392 979518851 921425338 422862090 663244173 11232415 844451759 637166510 1069201220 751259796 207946685 135018352 184300122 422653152 2077971 239829822 580583900 900578708 225546241 1044442410 1024025430 913799494 626572098 244807017 1012099209 292963214 565229363 610338713 777761763 246055639 819047044 402739615 498573675 404570597 317084427 417611749 91863987 366401895 984479138 55666073 699969391 1011094306 285093524 457380555 781400184 240590674 709277984 767262779 1054132154 706641679 95030272 310079925 726517055 484831802 391937722 284249997 853789465 246322611 752460697 20570728 378809041 450008713 71205544 619518956 186631974 896070170 856004019 871484123 122400331 981014795 45710050 87542648 787592235 201880381 660616132 846551114 324431951 749657889 124026457 371113523 978614199 823647106 358678931 684014880 644214583 971292927 944203279 796552360 763911452 68107897 692838247 860549204 443051302 185906403 440098026 694112624 452857270 180634270 40314172 348220519 579775701 105540817 888449981 953923869 88748117 15390941 668611631 340784284 1068783138 223153081 330455153 430345967 358077779 779470502 1049801212 722126100 718152957 467033912 83698695 178186062 992520980 568957776 41351992 667698301 243870984 931933133 684584086 183690189 105642231 424078994 133592909 894817434 854890718 353714695 679869035 490756811 506530549 270331275 795274384 499258400 544393025 653437285 144410245 1049277405 214746798 46552581 4486776 126582938 102783040 676335677 987369313 757791148 445540033 895110551 641535460 47100660 1063002871 227691319 746928777 149783895 126185053 703694504 321150100 476415869 824615133 649813881 713963154 550515819 215291137 1055287140 339516872 660578417 92657425 311713026 612822967 310591099 691044295 377974843 142995236 541284494 478364846 688035410 163817887 264738924 90466055 130718114 653599949 951361839 584325117 756507097 813228574 568052249 362075178 472455345 566593468 902225459 487098829 143113468 948485115 118181348 689551744 357608376 258284395 300601714 818750918 1049000517 352306767 876625381 117947629 446893257 346030780 351573928 676245724 449525620 754956866 620375167 239833998 347278665 770088491 336930180 296279040 397159927 223517512 677121551 308091163 658089009 63982689 856083011 80851900 284452375 42905325 766329304 920332803 115131996 1064462641 517959049 965635902 959805676 863437904 585299477 851790975 90867284 1073027359 133396537 1021689005 547078238 815136444 15495085 152039681 242216338 355592518 79326811 455869686 734715049 155341139 1063264069 323558849 379545652 540156789 47891517 162325102 414805188 584553012 418484794 300162961 744257151 48187907 164395883 710052474 182232698 231092752 521863693 167651416 985073587 585943499 576025238 280040689 214256955 1020660279 719877582 939825469 501457665 213199146 147262591 179730990 19750100 726944816 914865136 682570283 328489945 514483118 668891301 46852762 425791536 144649098 133764371 665866889 350396310 764803847 252547865 710058416 1029148147 888134613 716066943 117942967 803621551 662825101 428549052 74182538 708072628 1007888052 791578681 718707972 708676032 986766015 237050080 237362125 427460819 428359337 290755765 244647712 352851596 766047199 1021429794 331264168 189482689 617930549 789701594 1033924917 1063734566 499782504 334842080 948535921 56376714 580957638 1033514449 891714077 690615818 550405905 776726196 395381505 551591303 358639242 320522535 531435621 745964583 224923403 108265058 990623376 144892764 406237043 606473462 155783753 690390080 968006906 617559597 430206553 763687463 954563760 215785386 697848248 995621121 528931410 836832248 499187512 619908795 939951795 948783946 514975850 132139185 458363132 290952190 977165975 876600341 506736256 41140537 971829932 370274363 973283923 844638186 718028652 201983408 106898776 909259546 317552751 86414864 727385204 883379169 6067075 990755101 613798172 798545010 772084790 531364711 636499039 560959065 844674383 1006716608 105730827 288805546 1051150241 259150596 346000075 520827378 289736077 186229591 752103059 846684574 1056611308 345949616 163985418 288929264 1066677407 728233844 327341653 782858508 15393300 52974358 137643635 501243492 400539472 888014322 24252540 254802042 269419810 406779662 265690327 792395780 872692173 1071383053 91832466 265966315 911581410 851157964 682896892 334614748 886016256 50251341 180423344 458392176 433369125 321116749 516499936 104314884 34577407 911991366 873547103 51286309 792302870 335429865 322487423 54822234 1051605732 575364795 920390530 144118506 828273825 821429096 395623538 732681469 318588381 198276328 152232008 963711617 272044087 121363927 685693106 257555252 778313035 721834061 829419140 815778236 769779261 631315762 494347286 150421835 1335894 304441 344329821 704937822 163256824 821887346 233942375 851414711 340807266 544434201 1032788693 1009903529 1069394908 827512127 606466556 961422055 604843063 627037149 516755791 12978947 433787865 462839581 596137074 211740158 185227664 607284046 908191765 353186269 902643635 313809705 35873516 207074829 838323305 730961663 179865423 893316756 145206406 893121626 429545578 607360091 554866000 657330884 1021078288 618623837 864291817 630101514 407123413 955368019 641592728 249392353 814088959 1071606213 825520274 369296061 400386934 541907720 964813240 87998376 1001005088 381232061 1070365535 524384518 366194152 888805095 156480374 946103649 851887806 108203051 1058285127 317623791 716546652 97775259 941070530 824926478 368798672 130908258 743893752 263731615 523963850 1026711299 275731252 959943571 1024857145 377401235 216072939 982433203 172907199 370705872 764433578 70213317 360816947 359466532 88981469 227415169 186167764 449804952 569150716 458033307 427866077 772089117 328568930 898999215 14584990 321565276 442658771 466457494 414048753 406871556 368320131 396898910 863211513 1021734014 360858829 575316331 344016303 55032044 133178672 923938085 304028359 334419999 805044944 249630127 877734986 145521624 636846716 1061008631 276547393 927281696 236932783 347142852 271833715 148357047 577725964 462252613 603244374 218998242 933067829 161354791 810959146 892136967 564422040 532307156 868551373 327564373 194784262 849134505 610510604 127274300 244669690 611273441 948623716 503956399 166110635 30168432 809409367 660185885 795987679 10246561 35053101 414461487 184931344 455142185 602176033 409361084 607618765 12333366 966557438 255283913 848935751 947230313 850689527 811351932 216400187 916875300 1049344803 618689569 282256123 984595363 904421903 775318850 436746425 520151509 531979582 74407688 378615197 486271577 243678807 615487464 1006797723 296541006 532984442 352370142 3732698 688566664 482979409 704822955 763177241 671897341 553686033 444668396 404945119 962780525 362093604 602084871 603888586 1010199405 374970424 844625609 612760648 437502706 162493733 789508145 540959937 146684042 1045679208 479197159 134385811 742263502 233429970 962789921 257238582 931429632 1023918243 663933148 431196017 941595324 379428379 980310137 533423403 412557374 660592306 281909936 25763390 1072230284 529736567 940568938 872911323 896813635 325817116 678422964 1062007257 411451284 84786294 830542834 197609054 188729265 573432402 124736383 1011535209 62485116 985009395 844362599 546023937 853890266 337934162 273039686 461950755 469435780 742655496 902746390 227882883 582793504 398320013 651111211 1022524636 638793334 702201749 432808906 696496024 462478945 637032147 758508658 467468713 111473981 658303352 550419620 428231990 713573974 525653584 722966793 559627498 506692392 352928662 24431163 168805266 709128397 960053415 310821059 587495435 564275909 1031397546 859137315 612317535 464793014 986633608 310383558 805980690 658375111 997654881 925058636 387059856 290082763 337705384 801966572 706131407 414029515 350817731 966499573 236566592 909283580 185894025 444246341 228930352 253690243 515491463 576103443 46611569 986530481 100130801 490196699 857570966 183783412 561367593 193792915 941834703 246089173 386038097 202489172 718476085 879325798 785072888 55428487 345950282 319908262 219246995 544830214 973862458 587628966 995205782 696812922 61281775 516316040 604389517 878729377 241836901 1070915675 943950005 864898319 1069204927 492720930 189722310 803454001 703175296 252528758 115503971 266965876 954094029 137777800 827997694 686940860 199747516 711606991 501159524 972967393 143313168 147919234 903465800 221244925 895960429 349126673 280768679 561095531 655798806 238894051 26221230 871560613 859177328 871372717 573724922 531303408 446226976 695697473 927361143 647779848 371317324 332130318 716609177 996567919 655479280 29387241 259475336 216848417 657211276 310004491 257878056 1004853385 753708571 252874411 181588757 411973405 592586054 1052400350 585549772 583130068 82595498 765568977 604814011 1046937792 965529395 47950375 421829481 363438759 460599884 804394592 617983322 282514425 114174690 833876263 386491881 964023208 550778976 848679278 650591641 299175023 490239621 724540427 957697777 963299665 425808161 984989389 594999159 466492565 647395752 1002070370 948768357 699244128 369518937 433241978 641324773 640522865 581426810 929623250 330835228 446993850 172308549 951241687 1071784110 917242280 138687155 789296247 825727085 106416179 168582865 423509525 1017175077 1020401333 376453033 411189693 418661703 312382803 127398772 864749572 975575862 233988740 1051380914 275897823 233812132 759250504 1041343718 594447556 573999040 719408452 36298463 504429375 886744237 15785851 600245340 59182738 1048451346 343750005 343138787 19055318 574186672 23171649 523376628 633091717 894052020 205939189 540259372 922829915 74325299 139889728 238223505 384754224 941866556 923376977 568374615 514322169 266226693 375271878 1063422842 968893068 921741716 542405450 45425114 381593374 500733348 1031962899 646192781 604477470 135447442 888168299 575655214 282200724 865613888 37164708 164648509 621571987 817991993 97643082 1009270670 583765119 868528677 774937589 606489084 528403018 106875037 1034508209 273793268 704790295 184051624 507319183 460193445 303827743 441232756 593724086 610128024 303554007 309378255 200175673 419841089 70282134 311812882 233881698 557714895 1055918894 402879925 252499862 391085798 783442044 968486244 465624793 743018997 19752713 1033351814 293451397 424760339 589988605 855728937 678539678 885513685 152578505 385765076 1070271869 861982243 630495288 595438665 774832782 531828209 557138385 307716276 61333718 326359938 699794281 903980563 127156112 451693075 614948586 195023568 469114332 740427580 314789025 1028161710 976366205 750801310 685458140 710169605 591585279 184127931 997659895 910042599 270966149 813138177 770099800 365408804 449779659 89560622 186391159 1040341328 984416733 1048598200 162914029 278647562 668607792 704331431 112377091 3068712 877374567 520270322 965174403 1011252418 638824223 1057472003 264124377 49840473 268482063 59821835 222259461 765755820 733453128 799987795 572415487 634842030 318653654 154327983 474762284 37837825 651832527 916617324 785721551 34433417 167641127 644129040 676738630 597342893 83254836 621319430 331428058 842810730 790866163 831161305 287880315 714647985 1060824360 264319269 593052309 778145315 415336444 1024881551 524060265 862938348 342329536 556806222 620978630 302705239 134200220 526202858 19339281 1048162901 362965362 250437871 681990955 749138363 121515693 500594828 129194134 436648542 93365057 301239779 502291262 331405302 835024028 473308447 514240640 899730208 672619416 571866062 1027730512 258117825 289524924 336900956 200891526 809779929 111212473 903517682 132291068 521580799 943706445 57520033 284344308 508866006 970796252 243562122 549663735 174648935 737000346 288368625 446348684 97795939 34998276 344469745 743876268 152785684 353932414 697182349 849051079 699132934 956382742 70183759 186694802 440087758 768367310 166332775 355641571 163397236 1004346306 702468157 745486328 111637401 17169693 6224520 668378735 545685740 151600254 884366458 45923851 963832950 672917569 743160844 298503591 702633997 89176812 507065285 626695014 201090175 661618739 665937725 55779909 614776848 490261381 225228969 505598316 785293242 745738402 858333281 368318443 124944169 373542326 390211571 67668249 756078725 777263766 978333381 54063499 199789808 833204881 12944101 406374077 581761753 621455495 797286265 53002994 832203966 153073984 912753156 314330528 589849410 117998818 1004503274 537638319 755920131 531856003 59456397 374634993 99710031 696303244 177210293 351389432 690300935 256193479 1023651987 175133243 365582075 40068551 800676411 847919445 694952857 971802975 92242286 655083991 151232893 405484051 72827218 552438288 355875535 385186771 903661583 114230000 885626337 657553077 800990989 55722309 36119449 140075649 693822447 202615354 1032025880 817550950 683282574 208632398 118829605 479371493 863298245 241809645 212701003 243206786 550032845 433674173 997356151 721586175 245106315 911236555 918549763 710787765 885436763 824931112 587552680 111356184 532345214 488510908 106710911 853381258 822497269 655558418 981225011 1054960031 714980423 376831426 461943929 302501144 713333605 960601265 812215897 482214513 810218266 49809640 603391622 898650370 698997551 196586232 946864230 577389351 695003499 284203821 424420379 468017923 1069566369 880363375 32168628 13857008 986475309 919530763 461872701 573938878 1066754661 282973720 589408298 559965924 261770856 858948807 53819163 828996784 1048217078 230232314 1015850310 655659292 491944627 961838173 942016889 410384381 486901000 982212089 666340588 629586447 800324961 312651280 191532254 222480836 132733713 623505769 57247318 652718732 376145040 775379924 509111326 315201955 658429861 314305203 122644021 104930843 652971513 622466046 193524987 172530149 61286555 535014043 708982399 870522441 58784902 382746200 327909586 389499502 318129839 640164120 447903289 657054690 832599117 766050198 696695385 349560614 626539653 920183173 1036677027 556416109 1020830402 63028708 379929431 188742297 679247846 806777369 361915415 612198194 901262999 12727930 926237044 203564800 772626617 92903926 616299170 651660520 735314267 918724783 543421686 905791263 101925267 766905719 144273394 691630848 292358908 252309767 135170645 1034840014 263741590 890591690 478015408 757825954 224762239 974507449 619874600 860406517 872511409 954902187 333399203 585625067 588103548 982850872 336897378 171508497 231398419 165896481 686596675 285514146 459382358 57429316 488165076 151584300 699537295 534433384 764924161 984848144 160526161 911577451 202292426 863817899 447695408 828557233 30800445 527334106 26070672 680464084 98319689 121557530 500296954 886934441 911317119 283771822 401064448 955452027 526407755 616466076 408641272 195248864 131544340 312704714 440957466 121966684 69542106 690144073 809844922 730588947 956390644 645481491 760459597 285266648 629772473 72597044 989146146 163380895 563230215 404941197 487168158 978644165 936677718 289004527 110638173 676800572 266996753 487505977 552655233 1030883058 558746746 262971098 125256873 219990269 477243520 673823728 446004782 1036563909 764171364 417145303 582740590 219709441 1051637004 725193323 605032760 148367002 954070135 165176783 267845874 122267974 123494400 214906823 553891634 195779876 250495610 584675378 395879419 848026441 1015997977 222076405 135355205 102661358 145542803 974090776 493587841 649284236 935771347 590190965 804693409 430183411 355092053 194844876 634262431 816135424 456477242 249173432 527478228 592553048 825294339 75579002 786855958 531403310 1016282884 823560830 288742751 245798088 222190935 384667545 728081330 60530309 64555081 89052176 303813574 207304466 714037441 740198801 132859022 847633544 975487136 953303386 1050130954 65299130 565711522 602875233 633432165 101597838 510128421 75924820 928240490 1035402205 272753230 662426657 922859703 878735994 708554514 684780371 272873668 61777423 727137737 718105372 428783250 1058941668 585946066 216506130 226169199 582142492 242677465 204884661 480610457 551673354 951520771 289189003 710223897 396339633 839705209 902714523 1022604176 1041668294 849480271 548390703 778210418 79101308 705779521 362453315 78537969 1024294145 493341494 139477709 215139517 965935104 595248852 868066857 18866936 724012750 82934618 502241709 871042632 414193326 187773686 705065869 293323405 147108787 452755076 502988854 50932539 1065405127 369911377 569177159 568153715 299004258 67078327 840352010 640003707 505210036 969188377 588377906 418521610 643103248 535699475 735384046 549442779 609775951 349974364 511272186 680533919 362115764 333151652 571329839 263340513 626955896 665004376 676724708 525909941 47884227 335171404 849696261 614374062 55138877 530272335 246170115 745354517 804022034 211734475 362538733 377039944 1070468425 482136203 306786962 914870856 643031159 49708062 258361248 355744995 1065289409 30945969 846395059 718548610 294010501 286607676 527928572 451443998 922759027 1045622777 472115837 801761765 213109083 144605927 107781449 288009271 662215886 408159487 921413163 624965036 77514093 1020384024 845711568 607522469 813713159 351348644 142733820 165147592 415105990 98648010 239781585 926664066 602959088 920806699 913876723 545194128 320893507 953326953 1056304326 904866015 1014281811 420522832 264845577 1050851613 431769859 772897649 986059975 619338405 519132594 914317050 962396675 929606405 282735256 63979029 359751396 474287189 537250633 505957609 558969885 689396315 987298015 364384025 204936243 947056297 939866254 549728644 418278935 970929879 736808878 164776669 460426331 497878371 778507226 454091453 76369068 433047975 661729577 914693178 239419383 1009420121 874815994 546862750 264821221 386367919 127712204 854854730 579454185 295219645 989250998 396499426 504766689 464753516 502641924 808158248 926563091 443211389 169808488 931132517 216503190 749949865 597634780 181525427 494130898 301998898 442248998 434002900 645133616 657646157 409652851 623917704 482537903 733691705 730369328 635830443 964086983 148536807 676886732 240344647 213618185 799443449 894766987 266212718 56825016 358280273 92616514 483138870 969557024 406959987 451581502 615449026 1064367205 189565112 10952755 801798723 389496197 691400972 550821147 724716518 847558509 500500781 1052537843 175804650 353417155 722594972 427930894 216235288 889670885 834467121 888586507 607415504 215253762 436101998 23269115 39568733 793093468 40537538 718159902 696415078 982102569 1056669585 580484425 522848226 4683394 789043477 185334943 767188471 896225021 468997025 556034644 641832676 845136457 8061666 38003636 574984220 98316888 668981154 369442604 896972247 987178274 485646269 930494557 287710626 182000197 709404116 915763988 282230175 718806270 108425006 890875161 842954354 723201353 672425457 542886986 257818689 211823206 114964036 707798054 653434986 953391095 718415213 256809277 930605439 562869053 779575941 238337276 843786246 289095123 694809854 186330143 1010515022 403020793 342111086 61192090 61620506 434504427 383864716 363503304 939782125 637054408 453316851 590534280 1070155536 458565680 925309331 636182203 590182926 213844782 900860805 984696926 1027148268 45404238 569329120 839404527 677866761 443494682 349503543 633904331 335643999 578295233 58976472 335164762 73064952 787877690 109149113 1003936299 769579701 303664760 127756018 672054352 616223370 214130010 465150363 899368623 909778607 699003681 872878547 500197547 735836326 280725730 38075847 868283758 596658487 471732082 448592876 765989667 1008158899 836359818 836974876 106322646 155870361 247365047 994626192 8804056 1013355286 307172510 223446623 449680823 43600334 670204628 545705368 941047343 357823657 956355072 877445809 780782771 97178213 964508146 421377640 669490230 225440917 1061483568 184697778 930856635 489640082 238617352 919540635 781225279 302422846 975341271 1054190519 94523397 695118444 332007811 438880259 510894563 745947345 800752602 407018125 811312415 465213772 759176575 5189972 1056655191 547858907 769343140 976700231 685136696 719230377 1067780136 644597863 1049903535 22719592 882077898 920711260 691898063 786167821 425058032 805060746 847738568 661647676 634754332 526772563 571657293 389128707 23699457 38071856 773781854 517467475 832003374 601765643 709530363 929711684 393560258 704644109 629521582 187867087 460890995 214382023 1010721648 818706671 755538400 513613931 426314842 422476057 1011831595 984816421 767469660 15162423 614976881 891940896 1024316059 558938236 876302787 897369124 926544851 188737143 680411240 563942069 562506317 624617688 1152836 201153755 367672098 240952474 332130579 605714172 935944572 829210289 985669939 1066167964 607024046 489273190 122470062 336122690 845815109 350803094 359277508 909176574 964529975 954579796 177875848 304862954 88461916 777897544 104051965 132766835 61214203 1006026435 316719135 161429064 717848162 311785026 570252719 606833322 308554886 560311572 907974104 406525343 615976477 146577781 122545312 303355920 259635269 922403749 206328260 476025228 345458195 489161733 372149850 703360175 21440445 939144292 804182567 349359810 948059515 58538974 525370208 697372592 387699527 549712030 760230578 46638986 568907709 1040914847 986991054 790787701 71364581 406611562 52760832 802272080 108191753 261885373 797441615 60586152 1036157745 350982691 366339442 493177126 548232024 822664229 717389738 265733367 240772416 265848517 201522069 535820350 981165340 178903719 64294825 803496092 604373930 920499580 597144348 15686679 340199564 298822750 269976849 39125124 283011862 603273301 417040639 660322812 33639500 70487741 6192159 1003460864 247431306 566846645 1049138619 297582089 26804474 354045482 222005706 451235552 553516086 425918449 991175831 707187459 841344829 750124967 318633481 1045105753 110024229 721048847 133704001 158190312 548420265 313800580 788116571 790970961 1033328725 1032725903 600378171 490407800 772043768 964672638 319392691 1058564330 254762850 794846015 277194582 912597977 14856235 129194990 943082472 176455930 829263851 740236014 885400588 1048758941 272745140 566081910 375952473 831770668 1071100118 917482503 900374368 429038971 264814411 487458039 743164339 1057689102 139002728 633794626 694279085 474723857 982192112 190266918 353534617 331535938 207825373 626625684 991318345 1067881983 268203420 300793884 794894163 413783009 344355628 701686890 316595684 307145323 523501191 176300085 163745962 536388036 156676759 511305163 233720949 737224021 260947051 955193185 1067002410 362776991 862636575 221314334 485963192 702770978 466691637 637105127 40813661 708451042 1010769203 135640620 299333919 664225369 1046948862 1011475614 315093021 770362275 672552481 1016103913 658854817 8394490 743597388 300768138 624301694 544837670 483574666 783606255 125552317 211787590 181608809 523463973 1009691686 1047576442 625952860 351171485 643057813 812301957 727529906 687948057 618033854 742777205 128642987 791215997 766894518 517016326 433791676 75537593 710161792 338529682 429435548 466424808 775068775 791017630 316037914 679988605 761467342 309954112 114640665 1057672927 92354140 949782698 847606940 600805233 554802802 408549012 769817601 845128165 339595071 273747056 669616065 352075434 42193416 891602768 289785691 372131827 964766937 259522302 576345576 958707812 125345323 631230246 991565309 147399844 613159761 19609143 884596378 361083459 679054132 206792955 559882287 530861278 485096920 863953768 729318009 471709735 629105011 600038208 389312604 794585953 245698740 286371078 9124861 581084958 326314562 801416064 417730619 895391136 148595076 318612217 63565609 714968280 478070111 594951819 9822720 99901355 80881606 944664083 812747196 653407613 643214381 885011124 660602099 864096051 240756907 215964075 949686821 410225347 342962178 974222515 104384407 459047904 312931054 130568176 625546662 113219491 1035483388 761955980 703023973 493614161 757632240 653030901 365023483 594333659 162894958 188899435 688709974 150782364 669169758 715413861 465964607 594500937 127867581 309977158 320353389 859779703 956379272 12319229 895852597 243621211 584505430 487497193 92247973 837898350 1041376423 522122541 372853203 691011985 133777706 329824149 322584109 725823934 1073566218 810520387 894530906 991841021 619000211 525473930 411610809 1019528455 263408815 171272752 942985960 757839991 324205594 753951659 941259597 587800632 976660326 646447040 733117796 519450171 758772326 35706718 382502861 36288893 28257383 1036677023 285464518 240784565 269637961 586012085 530979442 505747575 113462124 970090022 3715836 997133815 504626733 75111494 868964425 183769933 843753377 577319334 988456307 113493205 198966434 858318581 152968561 471463099 983934598 170569373 726996966 70567032 306405219 696281300 55904705 544425315 759648085 1041680988 373008742 118144586 216305007 813082892 202181630 881267488 802282672 86787393 567601705 123130230 81647609 729268520 288836646 620941463 222359672 650653374 1007290424 192790955 866773273 685894463 194398840 457290758 204487134 221890444 816553921 901853430 31855569 862471936 260365745 71748559 131166398 937453506 1064403755 622491579 51185888 296991937 474883650 1015195445 465607398 17715820 924454291 107663055 1055049073 760796423 100472076 368393217 342055161 838296950 724548726 1586644 533597951 386619661 141259047 197680710 107880296 395431322 319268302 102301418 339521476 353716753 1016695781 472097039 674109956 691766753 342923222 218274528 246382974 909217563 997089091 886010630 255116986 587736952 306696412 977233701 430802996 902964597 680145340 907919389 803816979 808947791 771342634 647420800 113651974 24552525 636848861 211997093 173470483 305974360 16066050 465772868 277904762 945160255 221396375 1037878115 467013366 259270664 757968980 191261610 1066848359 406110227 824752011 619749006 193124528 1037963563 755539698 461919092 811803307 991732142 823997580 323812437 614276093 640648409 549253447 425042885 192376942 882091868 842437783 281805903 48124166 680224417 962424179 998834255 915694480 833676783 936839668 944328477 1012895094 434223118 845547793 105178265 471765812 252142835 75072121 408380271 213507758 749555320 170965539 359347864 274435124 86226773 143592130 271560509 702241868 1009588746 163510343 990329246 136965395 9410169 103128212 818498776 1067932831 725655390 318071578 318268131 509439172 118317791 808423486 965049264 858351274 698156715 113380803 741558553 600999787 194410124 525405326 485869988 735968250 524915261 283682421 255110349 323416621 709389528 20770442 969464615 371469219 960811567 457165352 598367807 421959149 835667115 197303459 189646382 1043818492 648573425 1010137356 175046174 633324248 7085848 119633931 899153986 1010026813 730828083 639885931 568578402 808037240 630398958 110237625 524527048 460833434 71564255 467100880 819781673 455164056 638925419 163090852 640003042 737263177 621221375 339944151 497316811 334256680 604875706 674239599 832467661 349051964 268321606 659591567 856504467 631356852 1041745954 280053919 348733782 664594209 191353977 451605082 1066348669 339185970 956915041 202566547 509368192 564689932 649572120 538607108 458005037 1025966065 414168888 296527980 949106391 888965986 276188126 417989728 558128528 5306720 637134987 883978037 633202117 623568192 757570109 214985493 7364116 579887676 488479866 29741640 370513025 797527441 752685754 945251401 726021345 332270705 459889743 141524675 81260935 948262451 740974986 345434446 302223417 673832137 401494774 474111061 218492494 333640345 838542775 775660511 489971209 727843972 810373516 863945139 255479539 627322313 577048189 178481023 710989220 201053251 81869598 34271511 385914401 989502010 701318707 788660897 878120340 1052610960 266249066 40362574 754024231 85536503 246247167 198962085 788266513 358934203 382327677 832834261 727749027 770444301 485127296 714947031 317685764 918193749 999146613 46844118 64048765 682532698 768473839 770994038 72042900 943704534 507669689 876876801 1051789977 992046631 278348292 353354816 1006405589 152400421 467230490 709199946 312245592 654938775 505190662 410929737 315215968 607078617 618509103 86583272 403927843 932982709 245059841 173400915 1041693669 667142502 710337179 807849146 483555708 178150029 705196947 835920137 954980731 108917313 935797517 835506282 158613414 124465397 879468075 980277608 901540557 198723732 720965847 374459928 49895352 1037574121 581669857 831514083 253949816 893920933 523228331 684719226 10864867 285857756 526031806 372740576 472106428 165089103 613596958 604890285 139902120 444420318 603751361 716506214 487824439 93442317 843998720 1015768082 264263802 493834361 344735683 271208579 106643945 876860625 731072198 320184280 908209792 315480092 1068323141 496259953 702313100 476596873 1041885881 245611203 596859736 444610853 791269469 84628089 1055937269 259207638 45990502 207829211 240071810 572350641 946885420 972507444 143814225 461195432 286566420 337648121 1058403658 1060930961 862136693 727157035 983958353 820688020 707103797 965816927 451842568 839348505 315730245 1003015150 545609392 153699476 150045662 188243107 1008689639 965323667 277077800 344072693 891665179 858882338 754615177 408243644 952923117 451489370 155292774 140216690 28033967 336250807 870898940 642649164 816176178 954011657 784706469 353157339 182391112 1027248001 940169892 755560016 717715314 788997542 352655032 292348671 122502078 446910572 579495454 458707122 698443450 458894039 428170841 747640383 882239532 631312565 12478912 448663824 615862791 90330748 163860983 953053903 609911540 746148968 72590072 434682699 913247064 422061131 327632752 43270002 94925038 540374823 834595855 270258925 131623941 499388941 238973508 601774727 106699729 258149504 495230354 702242550 919167181 22584266 528474951 703675816 236119466 629857697 956028956 199248551 768553190 469361664 720825964 831345937 129750110 943818495 995777379 1060935642 221360090 653131487 467418546 510906957 979748577 620024719 384762378 694200834 924023927 673612026 490349544 771745403 767209824 660741319 262623222 780733620 255835932 918125648 100426187 111882165 816747700 313271514 51145087 942717286 162642216 388293208 851415340 58828281 858877886 526911835 641476636 783163342 889744922 954346117 1020787744 916675350 833124136 426135878 115503084 937794975 892241213 53410206 772164828 1033258983 624648008 201369526 875502640 84052713 950442554 685090314 490808814 282764191 654733227 584917389 317707550 801440836 358889045 124012813 965048773 328423089 711511285 480700055 869060321 211140893 5732680 43570500 871229424 1010836533 606822226 668918749 1068021996 682160069 765808574 774623217 55997117 449793126 765783394 764045042 459787300 404915825 130465568 855130522 607100817 310773674 33793768 698055593 1009963980 72953375 478203142 990145952 613864608 534597310 498539258 155294162 527243391 986740829 671237008 306050450 999484000 1055595152 1049546729 647787610 808112648 13861767 545373124 13541912 747024263 564455929 763714357 212525534 687462320 569936218 883498745 514252298 16484451 670863255 348512431 19842340 776375172 218162235 816727203 275375830 48422229 666887053 389408990 977378888 901990670 147303053 597444678 1024378598 1018928738 805470757 132763727 933927332 347738252 167726044 290310390 1932490 699278821 387124884 581891783 490925086 525978768 454140426 323608761 136627636 482329177 761688309 547787995 800671728 1049531100 636244769 732220460 501509561 41741070 1018115437 290418405 698931830 356472946 951169813 718719970 202190320 524938097 617751220 453567000 173498246 314095592 278249938 101143159 73257964 87193529 908893422 335565088 205381438 490178234 161555062 80798197 986552810 108556798 53337499 926563797 92167532 696435957 778149099 424943731 177147891 251178343 606015898 826360619 990968944 671278115 97754889 365276835 930641955 61328850 22654711 649956295 464774695 536315016 163130558 896992164 469115588 329287244 857572012 232076694 278786281 863529697 589595895 73286206 401039232 439763186 651510 302419390 459668236 253735299 717628246 51959903 525552088 829159311 419294979 933147680 851022041 43622337 374427685 298554352 266238345 1047727199 393705363 76581705 654740682 907713130 470341716 1034963972 1058079510 737961797 317310077 480150268 327949524 844114880 562909578 507838124 186911949 121112092 847527316 801930356 177774793 64996169 369308066 655413093 801805447 709602031 1054782754 1034364137 145127094 917340624 32687863 66641424 39655078 44439210 140761341 214572659 483482718 1056255375 1005927096 216817855 111617594 249487698 579429530 1072392708 826050798 629066423 104315171 462589794 546797834 170515274 162329106 62837021 336086984 202590786 871347967 643470202 636764511 808416427 68478345 454383373 454960436 600113604 968619979 27294947 958416951 604277064 524519607 241309352 1038723935 723537878 778365167 1067643128 244523917 103718660 775778394 322837885 350269569 106145760 180754026 520663160 170355406 902144153 481472050 872943519 120757811 740899085 3998745 949339321 552268525 162749735 800212407 312714643 467390868 849714693 770892028 91877508 234067383 110084251 951550142 123274194 25233050 735854078 13991194 631227935 617199884 177836904 427345648 575838867 1020621938 695337429 178971100 787411566 584272648 883549806 1043664033 741714611 490073793 613987925 394885221 387716809 807233370 580954512 368383162 58548509 134824710 218300001 380414113 829289871 603634465 285593250 269206369 830841982 167887668 746615401 117648384 131588542 921123059 590528637 747673543 899531494 319627651 608773438 676804043 736846735 729155085 196314124 128611993 587320124 438918820 898489987 628056560 401465804 726084318 72447771 826885787 716287519 326890235 57422637 879153768 916095880 848076586 843069905 829294076 777535513 65668566 658530278 842759368 885963562 808867931 1063071147 1014972725 138281368 170958088 269920458 921356330 283351899 497077725 772375102 362729716 786393571 144281626 425850643 860407956 124784231 932012284 639645186 883517401 599265549 997037077 437424743 586819962 872112337 880104675 556295933 356046545 890235667 556224619 521526342 559279929 348846865 1047294720 185422918 609460910 944316295 467106725 204178889 550564141 537665514 344653119 665901169 100659617 523107714 411170697 516941946 162141608 468915889 318192121 344844957 729403756 426181118 487217881 247329250 28686139 702344811 26867458 516209619 475205572 235838614 498432953 144593984 528801226 336700986 923853536 302509931 39095663 910192557 202008294 8918507 90620991 11453435 627889813 703764846 984201524 634434161 215505824 1067276340 21274679 119923865 217765717 42810627 739659406 123382650 1031069328 967993551 166077182 122885044 940124943 941728951 90656431 680094188 373935772 577231609 227968522 677980688 831590843 508337073 2656037 120875336 661066245 693657558 289028871 561009166 74991494 337062093 858946101 88263935 1039038634 553775863 685850718 1053941849 537814290 546662489 282526118 363975333 858207476 140732529 871534264 514199466 295710182 963940389 174847879 24551525 167293203 688602614 569292753 744494630 310403846 834429887 594320561 980704511 320376849 213066481 249111555 660565569 178484570 76825393 544231944 1041548743 375972876 1004243703 453184116 989669772 1018542002 31038636 743809681 1068222818 458521613 83079969 129795988 149771217 232191597 758818788 554942087 829929987 815645700 161748508 384839255 581405203 850690301 829610131 1031796917 950080012 394853679 287215942 571853229 718636223 306849651 51152761 340566633 817452165 142606887 727416691 955890787 448945197 629334415 727354627 1069111958 30234972 397417642 186815502 791136354 850924506 247310816 520427348 777734838 853449124 86792573 350942132 604081850 130588598 1039259334 482410204 255866458 841481738 950699101 818055707 944596961 23462187 817869049 268497237 34844017 473577083 449505378 1022934026 405516111 569749663 75189513 172807952 838174987 358628555 851045272 350678432 602386631 738445961 361510827 999415679 296778309 849238125 995315860 326009713 571993810 360146462 598117765 490877661 1071161973 478951728 198752850 484685066 1000068618 829944139 925330884 1023443210 244880299 893899727 752037970 718706987 493186294 1065744806 373026710 770428364 33739068 846933070 507716663 817522790 62678615 1059074777 981051143 820016547 821597820 841027870 79649910 733343157 635133638 157017580 343431212 603814751 413343936 767378854 569310981 87690484 151108713 790028025 293584502 930688506 667990956 237641576 850233934 129116209 393368572 607899981 757654847 564605946 413744228 221746176 573035672 808822121 484570036 700829365 123268548 931780178 937115871 1052811051 964552445 286112619 553059774 690338485 1005360940 586896285 228202511 553872873 416743654 671554965 286488805 565059454 891410998 496049904 204076486 900801927 35602726 571383450 396407940 342223330 593687567 339008881 818630679 455598154 43059002 25996998 392352046 655751098 870634053 832694074 72853251 737030403 866856263 4266530 265777482 959238647 579861841 766406864 388228729 232826388 490889410 782735584 599212192 218148706 513791031 532918332 910501318 335994693 724746293 547453816 748783221 924589089 202528658 883478246 114709362 960270116 956004087 546718724 504658071 2746836 458885763 382053267 165544665 318628244 761565259 852317267 706972916 373432777 233239561 392307249 55879474 518472497 988227876 224246033 983839995 715570140 96210534 20294058 643220393 486615477 193151525 950158831 511350684 35453253 756093874 1008210490 510278109 967530594 1060575990 584291589 725576706 683400264 805388710 225300148 1047787869 781146020 704692197 835122381 594672082 338780287 324099179 425579757 300303322 827715371 1427574 894921283 868166928 335235688 917230536 151497675 205121897 683816522 854410114 388570379 911383686 339753530 118987370 188918127 273577102 661013326 536616369 919810721 20614195 995491629 336507861 234276668 634174744 961201732 992195655 310465145 1064765645 647642714 1056733213 115295539 52750192 110896215 250037508 506844939 1057638906 1015537864 186308962 726758406 875667992 5904085 727782917 978690088 773417983 346404741 835024663 466467539 1003224337 977100461 560146868 362594622 950282556 267479764 206037637 665166335 301581848 451044024 998402619 731001198 580943454 475562002 406936674 504109642 979408138 947053897 56830902 574112661 247104270 548543143 521856085 375130686 670408655 341206525 728783952 840733555 576153007 802007756 1048487164 303244106 775872853 813912593 461915902 958013822 208541733 640112990 588580358 113821602 231591153 117844511 1029172579 1005391512 541308550 447990031 516987584 198823244 335871851 107225508 361883273 1038780599 491604159 971852559 1054489663 118197241 701922539 13206942 635617559 593590770 924865690 1024535418 968787856 845605525 887058619 622521635 79901733 755230329 423109010 385821273 83274203 204612782 960709391 980133023 244671878 397861300 50351677 930755599 467404191 122713345 208470291 1022579554 963734007 948264344 423420577 1004205178 201653171 542992965 724758035 245778357 341951553 706735538 816392731 336764657 161213738 646065412 941810186 993324694 1035768121 998117111 109130494 36183861 605840230 1036419128 568706426 223495495 1036994832 38545822 221685657 267747947 1062103076 725578879 643776742 302811856 174376470 143780119 100025068 844067332 624525801 875543309 187674347 553895565 728851700 773663589 12736154 97708480 500082644 292610646 906007557 951531096 150141750 1034334485 499471090 363505167 786355782 538408369 716685806 756942246 933156174 605419048 383096667 113378574 88018723 156915097 1005617748 377662992 207939442 997784988 621762883 548905247 178488831 265224784 754898023 106294102 390741939 529353503 225802943 853358997 679963102 410746223 526571962 586969003 973047365 839662123 784220431 932708997 25244659 760968960 906405177 789113155 780253119 895873247 1039866224 255354316 764573437 1072856196 584053721 240738635 231450737 487329402 674311541 213076171 838410632 334536162 46573696 502670811 924843828 205473915 88975477 528908929 328604202 352603156 955058424 1071228921 848648015 111864477 896356381 886161216 169804574 144156865 1015031696 124778755 771253754 337232494 88864171 292441883 405289060 695559252 136208746 221979323 111957822 507832826 224713726 970390327 716578832 956439445 848261424 134575524 688694386 311113330 129785151 799707736 611530993 1010842756 507803831 611635427 723472532 94911767 593725806 824765354 358999710 256982780 517949899 15817484 232750007 915251574 265860224 959507749 999469299 482600301 69651614 749978801 266258714 1064708006 93481581 1067077130 666635477 870639939 1022845486 371898401 826213575 446642112 221197580 580626600 197660561 94554573 1025224005 82479515 1061384346 828806432 439395653 378384744 256368992 918766193 143864659 723114012 493962119 562988738 511494889 962797913 115237494 579788448 72279444 132665978 386939231 773676460 423706445 156119128 188506719 496144177 189108240 153657910 270729825 643851985 987030622 973793808 538626639 758654857 918006243 943679596 687420288 155144005 765744677 28282898 661099862 30816231 574030572 609830504 205591689 743278365 1067614539 539746691 1034634285 333216241 170262462 205071946 47507062 435541079 516154093 492538456 155289829 98018615 670322703 76510039 390820218 936821149 692668385 153385411 1058622267 935497350 355739577 442957518 565517877 602689329 552674286 488391562 826692881 970942561 587260510 752030910 737079968 699221026 854334817 62707091 891357562 485588538 774184457 708363829 451634756 537536860 826656133 278284628 39537298 470896564 277558970 240854880 1004726196 74749914 143490769 1067400151 7662762 311114701 75275211 126251810 107878435 669285096 354321781 582141268 705591586 662072449 903722309 726505025 516584694 485802544 169677626 197066081 525954641 687001868 875161203 713550908 544902530 934041492 1008780144 894693208 765380717 334298219 84628427 643390088 1042285342 679516293 449854021 755684318 1004023244 271095887 774115258 659296053 453314951 793146714 227897592 689652007 730918596 686896740 664027996 975776547 79733228 24784132 509729802 422138158 346542638 254593662 779602036 112134841 346768478 220913229 378091673 985999046 326413145 648926102 1026454777 911613763 267080497 864518137 176636390 182952428 958456280 602817038 988521921 14240683 925297895 719059747 410558696 913070197 839793281 319838964 899818017 321063378 777613245 450145744 192226580 333388127 85174359 945186880 959329297 55338542 230049136 86059563 104168080 795658226 207317682 523108973 97746909 289136175 1027834443 929849216 525862302 402295126 953219174 415936212 661972299 532009631 565235303 149186635 175457215 882264082 533963419 712328231 331481107 555545010 554139351 1050351544 407824722 680338907 741804803 1036369456 378469932 290909544 564124362 531313435 244564505 681360083 707509835 1035045041 699250920 154467078 675330622 875123658 954170610 539892008 60793123 437195362 427404182 150034518 909296595 1030989325 871252640 792199227 282911222 237780342 130251566 824572714 528822334 96962274 330861435 289237919 380631060 80093989 457043869 22374235 339692862 464609346 428178830 236707683 246627358 746677302 995639907 925417180 843675836 902307070 737457949 725672528 773089811 133289647 788157384 570722419 150650991 119187356 140325493 983803836 1004995365 564947214 460103634 982917382 244060553 321348100 767404192 658031726 527200515 460164377 1005191396 86856026 774432190 437304664 84330474 224215980 735083149 71307864 83965083 896711474 670896605 846853168 607534901 718969254 504561466 297847648 154412225 1070918388 462670225 181361724 984680019 338286230 432131113 1015167902 1066074421 309678493 557477769 214804892 152339580 256808881 52973341 1039213975 88606840 43203849 418446754 939558596 864729722 188823727 152540860 149101998 4497923 14662803 357906091 783890403 560348948 121703299 9897197 878877275 333818628 424825498 1055458910 159885896 352954536 122777437 827304327 149137001 564539614 702016842 1023757183 45547844 309267868 353338818 770725102 901211102 112847705 336662470 749041585 321391535 108985500 711439388 852660729 396542453 159744326 670358720 991919625 1034050121 368060366 444288139 505953917 43351210 634576688 84259623 781285042 661627124 933963448 658904855 590503182 62267866 3182668 759483165 450615202 889017528 535399783 675443517 550045194 191166714 3143518 952457968 717684600 785116099 757089196 15840418 836959510 943701589 688909654 986462328 534495084 125688854 314059192 462513974 203870711 1009021173 1000803702 955716184 660644032 739829805 8814777 547398093 470601328 225372836 894661358 930190232 683832200 354390707 1029138658 197452603 1065788483 534986270 177634389 734430412 85587615 825444811 794333184 474868557 990918621 479653547 1002681700 563287499 532861463 263901790 235470434 503372065 66728776 290004045 209200538 724164126 568968520 972825437 487220634 555935909 834572322 1032057389 799568505 852074170 903873541 889598251 312646944 176460522 114680221 1053534311 219478701 144432610 822603918 192446717 1044978958 387999572 699575644 898809972 663135559 34617958 929389370 978565451 615534013 314956409 590072946 1047492170 121938413 241685464 192318658 313605489 961697594 804733097 212103731 111910828 886824623 264220064 964822615 916641100 374434429 181447855 498495198 326107178 770226069 273032101 141896221 680859786 1048270189 761374249 263649463 895888661 783429632 851162415 783037307 325977876 392526644 862688847 199284062 514244563 719354177 73710794 63694408 197377806 518714707 433801492 702873136 715844808 246705133 50119973 1381491 338083863 962222255 604637739 269774479 285780527 656409874 383580344 847165985 26010876 59627552 182199129 801768404 807141903 523988311 948217134 553592721 33845053 4764435 778635166 275839319 720400624 987543869 987835169 72361893 550927355 522795602 338154631 387147432 339407997 141292711 698615104 245335639 103918506 243909651 622722429 584398512 322865317 142156022 519668340 615887506 835690553 225842259 1048093081 656679478 839521556 212435013 73003490 75424074 23025408 762902937 855920515 1058446340 902865134 13996330 94247038 282012926 843979744 468966387 771918271 806283157 241910650 950661344 445084446 425095148 184554166 188659536 785093547 790070916 694985999 40755727 96967780 851827417 497659772 1065202805 6115185 490753111 741140064 346968546 1037359384 992429618 778557904 75983276 1016658943 833868107 137282175 688025773 898379756 58970554 254543310 545577206 347756372 897317883 608249225 843538629 861061710 197843935 712943751 191728254 999350564 582432946 208388694 907085654 841057947 271038308 380974899 750105628 428596024 562069959 904366321 344430647 214259247 900842334 12986767 262444774 867118618 470944241 536474625 166282022 529768030 896058809 546767132 800402558 937601117 1026254318 736194713 921716126 47662994 311677386 253574702 489865053 1012784428 508839937 909147002 28842214 250580396 796666069 728037261 572388349 1002387820 804637832 352344909 859283422 890058021 977233937 764463947 10338106 248957584 91000536 577059640 430209336 127639311 497585010 344324171 891811722 846986740 615759926 724141152 193307906 999438015 889134470 426825930 229959436 680374330 483882092 97931722 1070202104 672892051 576978618 988952464 589318496 187731526 657254723 711569412 309636044 119741958 1068956344 550164199 812482685 334966509 821333105 277347195 371699089 536567879 930684682 38667585 132979757 191464703 477558001 423858821 688035916 963918433 134013933 440847075 766841559 230946425 769520202 968562831 177112531 147557359 622938377 528041882 217882847 777002804 1024644770 533112701 702327523 658495704 983978929 940583781 578763202 599176756 513782267 883161381 431638948 380995622 627750543 352352785 444742857 726938895 362090723 251927350 91341125 531534884 547714120 231029818 365996980 1072291285 639666273 58953331 351279686 591358121 453222423 836809209 9992375 404274282 60372101 585170208 987686160 55006471 343072672 583882966 819439295 685692938 848530064 140208041 648332529 969622437 109999314 434553311 351490691 151796245 330166831 371172969 877589010 156394067 253923275 142849701 874877996 1061347535 177476 284326022 335910442 732157756 570782174 304063907 285144085 566872573 845077923 526840827 143622626 30183840 818471035 117039880 836161043 897397435 593526277 325830073 814040794 705178857 705918399 982992759 343924077 816779078 288436577 458594145 1060901307 72150466 279999344 96438134 729452249 731604453 671817516 440383693 463797374 812118751 796528944 450092809 641641853 23705697 794752427 817989420 402601846 348736290 352752010 203167338 585325089 486594402 478491394 68741814 335092761 539570531 99257567 704973442 605163471 407410648 879888602 457725507 59469816 191526034 276291577 243794320 721520654 868075401 382410667 750319824 468721573 686712355 195991548 1015435296 196470533 962251182 744940936 398398909 168231715 668644906 881391351 870071857 93674919 144489056 753620774 323495754 178461575 678571759 886820227 585898811 342809083 312654601 508553030 817547214 159416592 936362258 282506342 848440484 320736001 1060180816 368517110 535982905 384428196 937365358 343407411 299492771 12213907 733872981 722651884 580136162 450826981 267288593 362239185 1066016379 799730950 542103298 212623166 3102639 67372481 1874590 568194771 277274757 819910830 531992636 741945757 908550418 777268804 45190643 192510672 835710272 850116051 713677474 292480292 137439796 675682595 150550893 390098208 408324172 731031705 408984758 688173005 422594848 879318577 793875755 469095509 930110792 369194174 300656913 146504776 841807248 412368159 1026852985 977520230 18350443 494429080 756121580 749509965 617751853 770131291 388075383 436181183 58520221 250477103 756455944 232905168 1022789345 959724790 386806646 982350965 812297527 99544664 24476480 847073684 184351588 957957396 515359114 1054322958 774778483 149195055 573026058 740845902 966968530 346975812 477738735 318940591 127376243 351614859 790306831 77626498 121445341 752542654 516547001 60022117 161022633 451621198 205055803 987144719 774131893 722725308 138341190 825234619 786902340 674030091 425551690 558550745 270280125 539196361 192975788 183971217 837427742 932390224 319714742 945040761 192448607 305610387 775866517 540102179 961677471 82880443 712480632 530913379 980397205 475863711 398151805 953337658 229927205 249560728 434357232 636728780 774465677 729962638 971175397 189207790 370974485 915621411 879606743 562164895 685156879 820593617 205535134 138079997 150959778 701176101 364044313 785948979 242935586 174733884 354199132 341679486 948859290 108531688 169154105 570522157 576056893 818007656 559223399 865675718 591203584 674871108 738757153 501210354 360501223 110773429 974211366 52490285 416791246 19203663 471084290 237372633 938634625 569699940 344603888 887347406 177686183 108056587 46183656 417898164 609160608 1032607519 623186118 665187464 484624148 381083083 660286413 313752408 595305357 19507541 214941748 94161004 238617172 127062172 674148454 478819101 694426357 139212319 489947807 578872783 831014693 885801517 944934517 1009450477 943690574 882674123 463322008 117054921 181645456 819811532 413530794 430294903 213727513 645320504 727186382 964514244 310778832 504127596 768860459 581995734 1055881562 229388715 1025875085 117360368 207548031 563065334 649813393 543801522 422487009 458710859 343777275 787725543 613012363 1010253086 710424407 74426077 928022951 1018953617 596150689 207333201 183857995 287304578 71030081 763168189 1008343439 531318305 264946647 780790595 670528532 83747884 523768551 739054051 810567275 733213903 123810595 924302313 259473946 831814722 269706171 156849162 599434089 720776534 954101623 636872874 239317942 821951887 271432189 781620143 46567164 13175587 654785398 1071896665 102410145 112961991 74802416 806605030 483616359 158243559 648129409 17026132 661950150 247362094 608975268 821523798 939465237 231543918 2195403 1050961420 924331862 1022754754 354173456 65577436 203218484 1017100164 329970696 195288241 318549736 414767964 411391569 344424661 1029384489 206194841 526287908 705013593 105027640 706427068 303241535 602836052 340430144 23953165 974616142 73200362 481368454 1003344899 479554805 1003986344 545119548 746010860 413292248 602181986 600393817 793728105 620514590 638538161 655574157 1073064212 694837734 45773065 617303965 909219800 128654500 874027931 704677845 639210772 771077962 551602635 946246949 119596938 570997118 310517020 715891462 336134077 112045713 68508335 885822890 341569711 1023714717 287581799 763373697 918672721 26153126 517958543 500559355 225349526 933389109 138141710 832378750 321526613 901100082 149465935 981769382 587378962 72166670 895895527 433591193 409358744 426256417 194213362 488059118 12791324 182991126 696807451 1065553374 499575645 510177257 417202598 411444591 897406697 308713811 328055742 698273690 893470977 958472140 922220762 853985030 414559301 1006109878 849749961 646841159 117129824 151121380 198770640 423356854 625040752 872627413 696659624 112252665 1035356073 726989842 9394568 801635760 871098151 540770896 261810607 177154082 894481239 342750066 1036148809 534235462 654816941 711377202 815999058 58337299 928686830 658816808 98337139 1064911725 428599479 631001053 252400520 932855622 90154558 57439432 151191113 489100884 405528941 351077097 1020523620 771379185 767805772 822950040 989955208 199273572 711042203 472680946 827466797 895540052 665455137 686077974 105327665 752685620 413907812 188952335 852050364 987687600 782239810 651209236 1037579983 715386731 5538521 738224699 686130892 894802830 879088104 542301398 592165777 722941394 726099749 742348434 426557082 585500126 517132809 280712929 369753080 788101628 254068492 516165640 438578271 362137690 414138858 688785795 1046585379 252083848 601569249 281570402 683615360 397196674 780581715 886587226 885788060 536265538 1045869634 232129589 519570013 493502426 584851199 145107853 458470377 770173894 1003166525 10461025 807200042 436249646 753457433 463703488 980206883 980959117 908845064 4834615 649045173 299709843 860634447 164376008 1026330074 153676526 712743923 602864604 1049168183 15779134 633961324 506696841 301275063 1031647845 218115983 609625754 529606057 127369622 248203820 337131434 200525950 1041901256 467926833 552552818 1051794014 441880949 130078097 7766952 591677646 186005966 242337266 152574302 737780491 284374483 344202802 1054957816 220222088 869530869 986764792 457871509 500539068 413087749 1018463510 161199455 552774004 51658325 1025069396 228425410 946275121 985868855 217878123 935472143 427757229 651272710 497169922 826298723 2719293 440531884 220675119 932001744 511545222 418409631 526437390 709476260 817243506 793468331 365089503 179340663 495513618 762560410 672055830 275663613 479843585 822697917 692418263 391200767 162958616 815838197 297828854 782909617 538635778 437870456 314792427 208004763 724446449 34616156 611708071 1040497959 272038434 229277287 848526543 483642410 948999890 169931324 100443877 726123513 466559733 454592340 1040647169 68782582 109110350 828901538 647801178 540035559 108546987 367320622 704012153 70262475 659339567 599394220 395579698 81223036 908960938 1063873141 77022580 890730077 581600190 670053474 1015122550 243686285 982389947 251628039 792555864 900124827 996524476 178969773 196904980 137368738 370437556 137762911 41365645 207972373 211715132 810703417 1046416993 935654814 63079696 1053547429 280826993 1026789068 353934917 55163614 307466645 959322183 810983190 302774327 880066731 163720312 81378710 271809083 117467739 15816830 918351039 294497724 665021095 711214814 850394317 1071792904 809357556 491104982 238958351 215623820 264190397 670171629 616124014 427983813 401568163 752716339 875519468 273145514 1067960155 1000155309 475413290 396867980 238475690 391254638 954739798 908716457 525491495 660375851 616879132 914684419 596274260 1010200189 770862135 200949787 852515606 263578700 885330965 1012474689 20102199 306290078 221588177 623383202 645974019 387511817 689165469 869206401 967407428 895436345 758229498 1034353845 778584489 304231178 295191969 905087063 364326064 364138674 102313540 876062031 304839216 981993606 560432592 241371547 1049795782 457674537 774890013 731537757 271867740 599213904 333020495 347942068 825836926 408053907 203526277 372339392 348722049 318568602 924355966 1002681870 37736650 1027548395 602996389 406915983 168405507 685840395 141669454 838212187 228720039 187657925 1050883986 980796703 182073302 1045450174 136162835 681234875 1053469356 325307279 1029800259 406619760 404791800 338526030 574896213 111042609 47619750 444492186 577549825 479891005 800284424 849484896 1004271184 697202163 652204995 183764784 618440491 575361833 907313127 1041187121 262785238 681781642 910583824 785695677 431995075 981159407 520753352 1017222260 702882336 113843917 620867041 131958353 400154368 549829413 168143865 137619083 106571037 749866429 725798240 313892918 849773894 365452607 690643455 949030521 244504000 353753337 478325210 510431793 44967505 512654042 116737938 1012212473 274136539 926787984 934184590 1008087637 977046073 431506852 708677139 675037899 12794568 692117338 372460065 272889250 794245572 981173641 671518836 67949017 892530364 549581701 763673419 629198073 530578453 341293961 453628211 735049296 402163165 904310374 774858345 772256574 118854605 896529648 828361795 164502333 723088625 45177559 803121681 656319478 1049814415 72792032 861333057 73678039 834750309 967139309 564440188 103623616 831869675 101647749 481628147 174281989 309649809 981986716 525451835 482029071 762214651 154654251 1018250688 875730354 953824112 1067606705 1013112806 123128861 571884753 957367759 779150130 424806631 891321476 931871550 413977502 158109241 1016101900 188192779 608289564 902939413 1042421673 236293512 39087689 433565605 554730524 186559327 371386293 916539868 897753198 984226998 556544131 1016382285 940889718 482744943 213157434 1019898699 736032846 816038562 919719534 522320895 847517042 423544493 866919574 89493344 334187522 674083247 532886862 712360147 641751308 76508424 504886793 640234926 313746754 696721410 380491900 739036601 236195968 743364153 475004048 86053761 103732742 1010434801 455743392 778157661 263130437 952968825 41087475 626397589 284008344 120894167 530953580 588971191 679523967 1032362457 274258641 542861900 766097010 1009867282 262403319 195411819 966141477 385610682 470043017 98663798 848319681 402065951 107731732 411592711 71718049 413017487 304827512 725215701 804684355 928741210 250927922 1071719210 165730103 133384648 941808209 942664757 286858013 433436078 506357257 21033348 401780424 831594104 249871174 39403268 344705539 539446169 476292999 279951767 1022440382 941997979 739065520 442831206 347587747 413563575 907835537 725205423 1018028132 561507329 542171907 1014613115 29226583 706037009 112432087 317801848 802562479 239099164 407462392 984330746 449376920 852234398 5095829 458664270 906551015 269469861 350696587 226193035 129498801 274754124 378216612 330116267 280963506 1066803010 1033029413 471958350 286666945 560674747 80165866 53204271 663279201 73618385 797443462 1050708975 313188419 860757997 78548938 1065114502 280534733 157093450 268623465 289012242 793169682 351746538 325858382 746086428 472409180 1012833439 760793533 821412962 182755826 128806266 773490983 702764274 569831730 649572 280094058 1051365282 411736963 865062121 438428121 637581173 393388000 208444698 925926432 129992622 1005228726 226407216 191465999 173239 560699373 943211170 48937802 588329520 850428060 71827826 981462469 513676142 418197841 778111076 143619761 261108634 265543491 664000129 195330747 622313548 753054037 67992400 323959989 608340121 556300878 1066259858 662636764 992403547 271019742 980037978 444858472 452659884 442802206 509550701 873648438 711818429 351798860 591301226 636506668 781223063 208899505 980425432 484410229 99863928 783928406 874707048 964642002 1054072735 120742726 526393622 880461361 521929522 56582838 1022343454 194832919 399798112 1032389666 73503199 723261900 126726311 1064800148 826332039 274586275 294532702 916097281 513249361 331034200 36894515 473101330 917983523 1069995611 1030602644 52910074 333817131 683789736 31837494 657973362 1043238978 444549246 99421718 972777255 70263538 246010687 830969142 739389810 812261738 461706514 67183078 134997513 410032388 921534828 267529224 218842000 212931974 304270032 815528356 651166723 532104235 116302 978085434 72323253 214872470 243913059 229009574 648860436 1061989722 852630514 780991387 123824386 904627615 1056539175 443801004 975128537 20468684 336850130 504483428 912811633 836975294 837444394 765585034 786976206 990494444 100134688 422262265 39841078 388538731 183726453 396421006 913000472 494101639 447091200 354224221 983803655 615352862 610311975 230772326 619253991 1067962677 541163751 519018489 1001503227 594309066 896880818 596235464 1056565379 434325084 72016171 537758973 470430190 956887816 895932458 645279717 372602732 942217971 847140945 1041688136 443092155 454046163 955672411 815624578 617377233 163818116 438969906 452526022 882969633 216503501 360298107 752335954 188034767 425172322 85487205 368332048 765827040 715641880 818725127 420116766 934984706 556919859 245401817 342529063 176824367 79680667 108924101 280868119 396098639 994718927 978586916 602135606 428438554 772730792 629669701 252416815 180275143 1058100923 430607131 275745104 114957901 907182207 995662913 831151643 902688243 627115162 620222567 686993537 492244028 178173819 561308884 286696611 537510043 289166761 559958080 526066087 881919454 323677993 231498575 537490592 48037109 880898493 564025962 625198609 637442908 400394459 315527156 784997487 357707809 551222856 511246825 1036445630 344723046 271509285 926757964 172275252 367276958 300303380 936934993 247526168 704934924 276008337 256679227 144563310 210252438 588788011 229267957 912735804 240104025 454324988 594184587 590119206 225933996 165112701 947567463 1031895333 668397753 312809633 446884127 367838129 619660539 889412264 668764200 995435108 32216513 119874802 1028643657 999742739 913277325 743938636 186491244 923951788 409280317 20656077 312081154 431337813 386087899 621167537 819205017 636874761 657242321 501289396 1019191677 527588497 704784908 340742756 403941236 911323101 469273989 406256767 731261040 617549227 350629721 928585980 562515907 887976735 723538189 191633712 361268653 795049026 38932843 473106215 1018588462 984110384 412854555 948777075 244601638 454630885 778023809 582872822 16647219 611950515 419754075 369463821 534292979 87061862 445586942 66691711 966736451 204257038 97738723 563286163 432696543 225243586 527853078 723116201 414497738 657875733 352264984 426558117 190657561 875448247 158603862 848661451 306424006 695916988 127811923 807851191 631267392 880644549 240798666 514195801 775346973 251763651 167992319 772886784 351742939 319121211 830376289 1035607092 206350151 115108527 81211364 65750950 1019341464 565612402 398309535 282723711 376343017 1032001156 181802150 251816894 913199679 154703055 547432096 497155605 792986628 586705192 668958419 117487321 553180717 602086040 214195786 918077337 575583686 693369582 218250242 92936673 480354794 129944833 415950820 404940612 690906358 687273345 536509387 510578256 201025221 413887484 563105646 760151751 110919354 604954584 160242002 969139126 802173596 863105995 579996343 868754963 417444084 789609102 555455386 141753669 939931681 751727218 96801304 938121931 167270798 345234721 439728828 681490126 470472060 537404158 592625373 1047110689 950720895 884457344 745042656 76476328 376451991 133428397 597333920 168672596 851832918 410421618 209594632 628651077 747670408 1051556010 789000184 907179323 156376920 561068537 138703250 111692687 341911161 13791979 23759736 701669896 304907775 125597846 689875122 714113432 520658862 589629344 604209719 397535229 756419379 552677894 797675770 727898816 642906302 41138553 570655218 179546721 992457303 249466182 255240688 283087124 859254272 397459371 277341001 360669680 977367757 693658797 787934318 361706968 719015220 1008720239 1004863850 786916951 486253891 843837469 512744067 589734127 663903757 58061689 10688836 383841028 321571598 131259886 303425694 302780374 1040350095 1019787600 67127802 405865094 269765034 818572988 550939576 942439458 705083698 1065667791 847354280 707683610 179059744 816990424 680327135 852662926 916573366 773042742 953845096 417537659 870985824 663436174 744045217 202129240 327095449 59984173 482725456 946162971 779914216 46082412 386935500 185212337 959744809 692083111 633296546 977017061 688926047 135321910 54039172 767680902 1043542509 37802853 467602173 518986817 181499422 863974376 20747168 943447108 930979018 1049619265 549390361 71207929 744723026 435780333 782940587 754634300 556277178 931094346 1067477643 537368261 455941931 822462390 379016296 110640781 309286421 656115139 51656138 988876380 468570318 221710773 825703115 864522989 836579888 77607322 828568009 839519735 194543034 594329957 853711786 667030893 233694331 23477729 1067190513 657883850 550645052 901367327 820401117 821495834 13444842 385950906 887626456 718485715 77925916 43201896 1035273782 706269017 589264135 25344861 740629261 145525058 36307893 984443461 637252710 145903436 621887169 761656186 722917449 944050824 519297021 192181926 203650083 946627262 365524871 1032430880 758004429 845330681 971937029 732220051 114522845 261551270 158505704 314640851 969484456 596308746 663253133 1011040861 969595320 909824054 480855017 1015350691 492977339 582815958 338276587 69442743 586881193 846830096 366636267 960882338 825492398 936240673 687896397 214223660 840868150 139914031 776770811 493501666 748489323 467819664 725378213 899357844 130565879 265184441 925835462 332657405 403789711 526365188 651653981 661044837 972375674 467890148 597639223 563687397 927670521 415261714 589058882 833218584 200286512 265719635 729253686 154245225 757447240 353939545 302156024 568899866 987499674 603402631 151566846 736632328 501659123 722488220 973386511 784328806 959850003 909232146 791612457 45046554 799642596 491996457 909766133 158727302 993491742 965449040 890333289 398053617 317628854 560243446 155392493 439283353 897038306 668851505 15564512 894912410 257429494 143398473 965311911 55213550 570220139 971105581 486359768 737483647 880370543 38229848 455175215 642906248 397266290 265761295 509709650 603410246 33451184 1063766158 914863776 205282494 654797545 605008327 353007852 598085134 974619455 553659431 110089064 505333622 756288839 932058581 16260785 449505304 466698259 138486440 565987755 780413632 931763796 727305569 929449630 874137091 519658501 821381238 704919637 359774851 803701672 143527817 465951242 238325765 307667962 58821157 376648281 693017661 860497808 880149974 187187841 154889147 998422642 296850865 328685184 554547259 235149208 699107017 561001903 990061232 274871785 32710227 866416615 697612543 1048247078 665196263 464202924 94948614 702201777 68363639 285698110 709729570 30901881 55173285 252370170 26831305 29050992 749834199 632194015 823621613 578775427 253685648 206494115 637243679 278095727 952866738 906471817 737231559 957047335 76747962 350128835 949660898 998158781 816907068 179822795 190493207 1016975545 229921186 208878864 871711980 776132199 401142934 565729130 985609759 184475490 561694966 775277087 206782371 422644384 30527820 944221567 1006594139 515380977 374051951 845126117 197740639 539451561 395320510 689487541 102643447 45715807 57861660 85177142 402125619 511665635 79695455 817040744 870515754 1000350260 227778871 715987092 566364111 738039173 69493044 521025860 333311228 1043750451 139782146 395890562 207456318 135634629 513447117 234645840 316377322 233618797 264092630 481100565 691961769 326101136 825922499 932953454 18177209 681395361 886870008 397616690 696220793 1021599897 979595297 778248665 969176465 544068381 351476128 173269845 160896364 386793718 882391399 678565539 851389523 390243599 471548063 564003479 999847570 178525861 670507281 732199878 717795087 814822977 186232154 135170267 311798826 987618687 551133913 1002011103 1011017950 216655878 934854625 548734651 774387132 476263690 149588781 452656873 1002841348 79545686 876988048 842679451 585743479 300682453 360948067 395758383 554617638 780181045 302339330 491329616 739319091 903455574 173217491 603387592 1072162583 892855763 937520675 220880223 987617147 142073141 716497734 950155917 690293931 1034176722 886548707 820242350 552444386 908177301 699483501 494187444 169647466 378668453 991537449 223086433 720940280 972462303 157314126 1008850394 1043895661 853045640 388333899 949696389 407869749 258147637 346193539 723644078 572754411 514442181 238822909 401479595 799163545 191602514 828537024 874972104 790531618 799240025 297516421 645334043 576823558 56101344 702842820 911344958 911137821 975176265 338511803 24734561 197987986 900131993 877478343 91886677 989133351 1008452416 645346062 195762027 428722247 395093420 99541993 679910666 848725648 97263003 53543341 172115107 374466698 342594217 796995539 144566163 655115454 983387770 574446761 686450941 81025203 1014111250 477986246 765957269 548439959 168894517 907508525 30395236 155595857 746369927 1022785362 1049076589 286557065 524484780 106444409 791091032 864786362 710786124 777843575 371741182 677545446 652928511 700830446 159148263 474029761 222727695 819256655 684824906 381361174 58271805 817619799 843266524 565509249 780828888 448760871 143939599 263271094 350502028 215883052 243667083 693466190 482093610 803261722 283182198 445553292 833755843 953177988 1037824111 472195005 427423364 787384927 480306248 285823584 312836415 890649883 303304385 175357301 534122960 341759215 474092973 954070223 1014829681 480527813 888950131 1028520580 681768821 957675439 940171978 507294332 892976916 445111968 712156342 796591299 442325821 149602086 131111596 661306281 677635994 427389871 128083825 258442763 155149829 825279422 421944562 663656912 185695709 880399267 915313330 199717214 1010827637 184701812 515631582 209939265 716745455 304278278 513476238 266421637 423408104 191183900 576887025 564320534 149295788 956028618 691997023 308802164 15101649 855585809 932219333 784818600 108808781 476076417 1031495331 581288386 403719656 785388904 949316158 1027883414 775224684 983129192 410639015 213349105 751369227 326202664 573366369 132398225 120192550 96243706 384591829 125269319 278445845 225709659 328378285 274173562 423319427 252149683 312676654 902039047 1011567846 973024253 899874480 718106073 945117506 556225338 452145006 330717660 122465256 547635036 533147324 423281024 93640751 193403739 743191332 995674533 463815729 537087608 1060645238 644480587 1062163255 689745873 940247830 1019149396 907181217 741539297 255616679 451096865 624727479 929046465 713464981 32080287 973680712 533648908 986595676 796769082 58132112 865952791 83046245 145879815 1069245907 166824842 982922762 852529406 241892982 751671277 250977757 1039746570 178981361 541735301 493307731 700712585 309926551 563012904 397863970 855832562 789308539 773744515 968712744 567472884 497964819 84268798 478520511 365077796 555340422 799295116 988802260 753070251 84735171 114907870 183560783 775356449 560686851 381335713 586242069 685600225 767253904 544152002 1023435003 219257095 914982912 555002752 991309649 963826271 644212441 743857887 302960467 963894608 77651983 514273172 593833419 237816440 664161923 970181146 813699429 913660748 320606457 972355319 371224461 527134686 219199737 329453540 360726253 976217009 277677730 656365668 935464887 748604425 360417948 687785747 751356413 69268654 393292385 757248847 702191816 513284222 1060336983 407098420 534918595 634596586 453906030 878947057 633604187 560762774 353038102 551771505 219595276 778308351 787036831 315973757 444330282 264301486 696940965 798191636 169754273 850447746 457717435 1054117226 980825415 266409176 83887995 1062061125 273497231 414980143 313492417 211332199 830986771 315884800 455573156 345948764 1060712752 553121734 395328723 924884866 36625632 853482681 624837387 1000580890 708373756 381656690 870411752 109756008 128718237 67035027 860685278 108329746 201212300 195000229 515873475 571162167 934789279 353936202 752567897 482447189 907378333 282765402 549852498 1030868394 1042391785 313916597 957108042 895547609 1011615434 994664852 431055598 523348153 321350585 538748027 418087972 127702330 702512854 279446873 282050450 61127685 1049135462 245921645 958449077 69147001 622651419 323895601 534363176 847757452 303559744 891969006 70044271 542468831 102576851 841573441 428595322 361580715 233080091 694002208 607847237 133740129 443982650 161190077 837336084 184907135 974548213 924683616 532626121 995266650 598386164 976186105 851719072 322297628 534171097 1062457089 40315952 643380809 515727602 770977289 583517582 941351748 373810466 315626294 970121960 835855496 1002950815 774158670 559420635 406210338 403687903 185937207 489535668 608529126 831860848 568731960 769281936 733955417 1048695182 999952176 157264559 214559101 949628231 1054163988 460881467 777184738 714818895 615286511 328379992 916717791 799815942 779336731 624504281 630942922 828694365 389421964 579926183 202258335 269357101 1020070958 348149655 365332252 459622421 567459403 1062181679 884560346 615253766 925087966 576292002 270280114 590229887 167334489 450870410 509774503 846503695 386845468 272097808 913210881 1041610958 308099381 1056753445 142291643 1019622592 377831328 631418058 113805666 590480208 516030502 936818623 141997008 610502294 308636140 330071732 1050267295 613155640 735559401 8767920 76230957 450496942 825392762 887571213 1014592283 353362957 566214327 796769388 628161239 845436478 810942227 360328911 988550599 457105334 490375144 354885283 83811185 485427064 638544210 33368806 278832664 190611332 443938864 255743749 243055301 918683491 55061503 860769267 980805411 979387755 783352814 749798208 122460717 95413269 1064853111 629390819 186500795 818671794 643968588 703513260 866809261 662786236 370494388 186243849 956358719 496388639 502665275 440077603 243004133 263901619 540853272 763624654 134254100 890399130 841786643 710931572 1024483692 984502351 665826648 322596938 826242508 975609847 759592534 733363554 142624058 472570599 1005617047 1034962753 464405458 226694263 6124866 924307297 793709764 572095197 32780765 12365786 24156614 772965868 788786476 64673849 218556446 977976999 336978515 767757686 274439036 362431964 646916275 186456514 196060867 371251168 309612181 909645706 483359788 43247992 564337281 560275982 972446191 475220997 809507353 165291172 138588579 79197261 136732822 297679301 811827474 387145294 461302085 915491502 889922273 165943387 380677842 416516161 943000912 388297602 515649358 643134987 931458185 950916975 324527 132697456 751435932 333343538 576255473 190523237 879710006 856422664 998710308 799900738 429435383 153227726 261444024 784026500 208058591 875695894 320144844 394917205 505671872 589532885 234681021 896380825 1024196623 69172967 592822732 365451286 712658753 776607880 497540889 922760081 114976958 478655728 356884078 889441626 112890834 150914013 228690716 470180341 950702257 824494835 1045631336 359718936 966658875 300697019 2310610 873370509 182272565 661083536 714190692 482897206 498873912 180094884 263279087 841534926 805449177 818427485 410091975 995443600 139483308 604349206 757869424 17065531 1055363272 27446048 1031832477 94871779 256312652 695106152 732386804 571975212 713369259 387263324 181383656 192890933 387021890 338157738 807376374 571788611 632633450 278828172 624189305 819693196 928024364 462392908 1001134107 373359440 667040175 152653381 338481765 154316152 634964697 814198199 344397350 1034388938 234919796 198688329 239468441 271795633 450393085 723940370 513139229 53103222 715385699 760179553 550192904 939125791 987577664 180077210 646129260 276076722 686746771 400402834 244746842 59279034 1014335251 881937210 609973479 812091726 513710910 832410637 635287409 911364572 317070260 1018372129 206123318 395753822 729935559 116615124 831482327 361297535 41309609 929713915 447417303 26549715 594468070 904683085 608680144 112915402 349064894 209920201 631417137 969775878 959711278 836939002 532035520 345958773 1055682787 1029940605 926082571 355750368 821966411 824662906 594270565 858660419 43370315 992516272 489777920 903002653 688144186 436385080 1073067353 934776257 951882267 227506095 978034759 1011682094 31085794 527514961 312818822 620653762 708865136 582796109 518488816 658364059 684578497 551844355 166665268 1067937975 996426928 863773462 480283954 136749252 845080011 134364932 926563247 141354185 157492743 1042439449 514999978 753528790 273205889 382203040 388893977 545243166 139381098 836810195 992291094 38682186 221957016 190079336 827680954 93588355 768055062 601064839 432425529 48730577 947618537 526326907 568350783 228407865 234410516 790814398 155975110 805223401 611203743 653443518 603582614 921337282 142697162 695792559 113901109 217601319 968806544 467961542 434186650 200549577 297068113 867734432 94816406 107202779 834051871 956789268 156404451 83225416 307973490 349984869 568587711 444501399 329924731 574550949 471521192 129459044 1039553127 998591248 338383650 921197115 52550066 622258411 240512019 640754181 271275101 80069843 139107240 719876183 36176257 538038358 315294959 420656785 235475918 707537372 262782608 1047652898 399315748 836356313 188620507 894086253 220786153 879814724 871005440 833101025 1005539405 883398490 211591622 722299311 54548550 433996692 842441832 550353382 512483857 802783942 983998589 810082428 540789689 342878278 323454229 314608966 698141627 702670728 635904226 345153024 408186845 221049022 451060269 289764537 1040350851 911861641 16397337 241228902 983496360 326649608 306120565 432438 381761632 393837736 920362929 1012313830 803152235 166908649 720425128 403664122 165495991 50688671 103121190 450385627 351968832 281693827 842851517 56609516 421419062 1019643040 508519690 866476249 249264316 884793476 914396639 21962766 564922458 1052603514 356864540 256849586 1066498277 643682424 47950643 462725949 19904208 240833160 442083878 665814936 873973612 531627094 639751749 633407166 656947405 531380128 388067289 836425792 494234170 132213521 669710603 443889639 417982480 168054512 887879905 200287794 385776028 482772297 562147991 3829133 558934300 445123099 604349699 483037290 624579283 371321786 915286641 660214881 282533927 628524128 706518887 656172932 668429209 485259776 1067564411 622657334 210841569 20047093 914474667 541193638 153287317 360905324 444116551 624872555 263175689 630860820 99812712 1071174353 622638477 167373843 744529540 852090336 874340059 826460550 498252271 526172284 1014081389 149681590 309144489 986394710 209687693 986472410 359128061 893383416 920030791 79692856 426894716 719385653 110299198 279512907 449318520 840923508 634138564 640736642 435006382 775035692 703200707 707805147 631601718 23592911 913943808 998792571 862251618 685832393 324249115 1006343227 436998460 382436843 998443443 1035625499 796876212 272993157 775959242 1049179497 630332464 916748098 660904736 710662882 286491982 271498934 990946156 873722201 658129925 681137465 1063326880 177256972 433605981 478627104 633574582 341043016 529688259 363328961 1064914465 438481320 702105936 295696690 226486709 321187494 526064891 935169302 405882157 19361599 811874679 779224812 428719011 19669708 978105834 329407799 980876464 813404782 207389069 609956664 33653861 492056656 305303107 193303939 832381375 57225431 970003365 195170085 451160051 647793676 763467393 945950460 95218098 1070222034 948140025 479550966 223881668 823601102 442135575 665964073 108659849 124012733 1012531626 377404276 19425244 28246536 266215739 124738811 903994364 660518334 292780045 541131544 438208569 901148822 570366210 670091882 930481505 891822005 263636377 224278418 121704234 421972673 472607767 193624251 754712479 327395514 469191793 852101766 1015795211 446764556 238000628 936018678 504217791 959831618 169250423 7499356 253633256 654560126 821712958 665095142 576804087 260682321 12520012 477309757 147598111 740274240 621345965 752968293 803314729 486794587 311833483 714697958 264484609 197157944 784986274 798373975 217239137 635373702 850078319 536663178 488255250 553519843 517693805 430022788 1009137648 798984883 123648259 621920269 597294198 633736570 780041252 592770600 125148115 387698205 1051439787 772945244 424780358 166485815 1068770790 534603279 69595526 413725612 313410185 160036491 424859396 764222568 819289357 589845881 527817123 514990053 1031689305 128204567 513191323 613689030 992367709 836631170 77205749 265761854 89088346 491322376 269564169 907263742 267562955 15791114 109871018 888422393 276044606 208343945 810195671 433658515 493992310 1020096893 624521597 200345731 464944146 800286344 723425082 323333973 92417491 731745986 207030690 502723204 567342294 394009542 1058104472 505106613 101434042 431357501 653946141 911802951 302515844 882915999 709492892 753871772 995054674 211229280 593183359 724235165 579217839 668933425 283765207 430028122 79368053 806775637 530086166 386233189 1005530207 751233365 993615341 94594665 104967195 995137753 372752870 169939206 599637512 764135976 377715161 965459783 380122555 138009950 181149643 203549887 237026795 272744597 65180503 721920791 971270112 854649800 749319282 286932314 147925959 825418474 367343696 305634793 688530991 685423136 888521120 220854380 78617155 564807169 407289759 829328800 244252914 14080008 469258517 649985195 84967502 331480769 921993608 461590635 41026107 495666916 1048051912 790578823 691611530 835428841 86076648 320807079 841494141 60296282 434939351 875506638 1658109 490496359 811089448 122782899 354415982 704658358 595037561 920065986 693836709 746523254 284019553 1007992062 1024769191 118951553 843314014 463277182 74967019 925062972 593714923 724337541 436047366 261065686 634260049 608713568 556744669 351707650 962554639 598148915 571188405 621547040 386210813 854774444 1032193405 388729993 416871188 348672222 494557604 100941558 489122538 698423235 674352301 669513745 78748801 286448015 401533986 33373392 900589036 54954356 129700126 1017448182 977570236 633725084 230738994 61408565 206748212 159942671 166960453 1055816644 1014825814 716426454 231726029 370146932 130799614 776434493 863309097 524979089 945284735 30506997 306823313 249379183 954925995 233042139 997783625 200492620 354072348 645894277 766117683 592240892 770018433 443111689 1060413451 970476321 27761411 771784616 321606891 616255901 686891199 245287018 263072995 206670434 570318583 235136790 791087510 340611035 570251376 720795452 447429945 448284344 732733238 458201591 952737814 296160043 847815727 941995238 735440069 149752029 83607271 933880541 615522360 724444399 349711067 1043436937 1054267440 451392345 60684910 622224449 110046534 826172222 586432292 557349705 977803521 867781478 56265685 117993858 461459914 132872809 62279792 638325833 61655171 745933935 212613635 536349864 875203066 849737805 269386303 705724554 348299770 521673132 224590467 942862578 543614690 783882628 562569519 992980448 279455830 975803631 426483634 1070470501 638532022 398707945 422874276 766968740 590143637 118152526 862189828 1049493302 767055761 524420786 243597185 465998525 179655275 86808139 443815040 927081925 582467939 490252851 632190370 452306789 99245292 90118543 289181038 799717211 705010625 873496218 403335913 595556610 727024170 549112714 654220420 223165973 398093922 237010936 954249406 317816384 102643905 632925073 605755048 573021382 401851491 655424559 455974532 699749915 1048384788 112137610 116944119 847043348 601296094 979792323 119796752 1002114158 460915119 416016628 288559953 982586572 932877401 204706793 349175417 840105893 256857700 741218059 1067241273 279727963 179658969 976444240 970848530 44225485 671095405 344028584 370125355 610470675 485451298 421836895 1047170880 575782955 334275075 304209893 980949556 705095787 61314622 250349298 248500093 417930428 618646696 460911824 32029622 1038281642 161615768 490219320 450662518 103327520 146119447 630995115 357968371 770544584 927343699 363039188 932670867 505809579 837376576 354417965 342770611 201739147 703995754 763122050 70045478 271889269 549533055 298540582 981615960 335970985 914076511 423589359 108928678 630046329 457410585 620465346 316441569 710601517 408874118 75672521 818355750 367928694 415901258 475482899 1072640345 311857263 486577350 274370954 682724597 186653888 536972098 122734017 553840709 597411344 383482046 542274092 984487885 442311536 1056929691 629041285 145409992 333304578 24028390 723322883 1042746129 318918458 907708807 675243237 1063646596 209541690 652716616 13724938 922620170 716304046 1060522154 635584946 159769038 663914999 394020353 160150022 739997402 330915571 932921063 733156332 950285887 999468790 97955792 665577077 535771753 285456051 481053704 776312850 681967715 436035503 194977334 55697459 704898386 339456179 434172426 651423472 577517010 333284533 137809698 876242750 902554305 394895412 924215989 328573397 902312901 918761778 233328675 124659049 384633256 748771589 220107012 892342121 299421160 963674738 920860907 283815204 45967889 985012696 972804309 132535139 1063646035 471927807 224498278 92969713 398791439 552208589 1000517846 339965123 731695068 211464310 561712227 69889997 768998899 325639670 149716813 9930974 961481734 860004731 246477094 776176100 43364613 667558720 666326214 895637618 646224420 228758245 571396905 140768537 603728890 697136703 527869285 502948217 207698179 740616299 622723195 107246148 900068005 769865299 840940386 126268360 988706672 557766149 811298625 434255135 464118099 462115055 525965069 734005371 53171895 324855661 494966613 232645618 369434339 204556154 525587264 1029223285 30503453 170960234 456280115 242564671 125389427 939402956 806256865 925432206 416804996 311355144 407118002 303179318 256238072 766742281 273419022 901400173 916608601 535592846 690113070 826377309 406840657 969574647 1050120404 123389873 984244340 517634237 158857878 436809792 556897539 959735665 353833899 640804756 52447883 646472497 202281207 604116120 621464420 914836190 405785413 626469739 248398414 866338061 975248247 208701034 934104182 785565498 792614116 909535222 37128502 498131139 697266746 709184538 956331547 747024082 536085689 414943081 99178097 477448898 873734725 581291765 537964490 706395043 332813835 631446100 596159668 739561925 737251869 814845488 607493407 378382276 316415970 958346290 20569146 517448373 280892941 589624447 750670109 592185866 183644842 357231635 666697360 468219294 370529557 840025589 587474869 801538786 457647444 449039038 826207398 278590235 920523279 108231035 732816866 810235045 55164936 724737 101032734 1051798098 118009694 306545819 141649916 97660317 437517539 469184758 579201735 926930321 45567837 540514678 1022923118 488680691 396499443 440740509 969733990 269917055 295166198 98235165 801692341 115380458 517168097 495678599 128438203 944498994 720149252 280685210 93466234 102934649 976677913 79654221 638054956 537553194 816014104 248806280 986286620 64804867 602985325 316532457 139648782 926209040 989166854 983400188 820050722 1035953903 363056726 34774051 374169901 476474169 628803242 1065003249 992323424 906964553 256178866 234730536 378013839 389598897 885264265 962815685 316798762 448377063 870006036 832476407 259926562 756288899 963478552 40726896 153193649 173686246 772624440 1049194514 145060348 453146977 905959695 230562347 16108307 1064494289 594070793 110073322 742443532 695942062 911776495 14847167 629975437 866532623 789746496 73476954 354027992 845689994 125951008 678517781 656789713 427712003 514428361 425322545 269826074 442762858 295727644 376729533 2531188 181628649 520240347 146352721 814616938 776366378 765276641 794731367 367876265 812414871 238674174 283462933 328814239 725453939 936752802 1020023116 738550331 653815702 373065708 975407740 823968153 280372898 598010539 327129456 360365711 112674049 62667454 146054576 1016972540 486480458 22194901 690545078 752816799 475648736 592246857 438556478 111837308 732815639 976717537 555584037 621515410 1041907710 637223521 740705692 883200177 350787948 352544976 1018909921 960651343 120900501 23338133 565287331 975417835 34987003 475726730 228222587 379931493 232249502 815714305 187950967 620538356 113784304 250463734 351012633 268593937 537464750 324258531 593936235 347543702 449497359 503377937 240457432 666444575 96854048 156297837 398956600 544453023 382028983 88230832 368110801 670542934 200992605 2338208 521114029 557920097 968970775 166360371 376401274 886541337 981966826 335703332 771792385 940015033 227738070 232118892 618991089 904049697 726815990 322631969 825176750 775580815 338955130 802738618 1018854201 107680284 722892817 765668965 573834905 402059343 134713642 978920897 418443126 765136530 781748879 144369260 131386989 528168253 800557848 922035008 458355003 402388180 563372245 325819660 534715408 804784530 76339267 324769223 934964215 482333681 909505777 165787120 346202798 836116238 673630766 170448745 772852012 429775768 403803757 1038729157 199694664 313034545 613140974 63545349 354772512 318077536 267096397 374906166 363411403 993849972 721289378 499032040 701433919 190981119 398862697 19559419 1063193156 638470205 665010753 411868166 484096861 166426791 1002937741 936942811 313762724 127509515 330302007 139346593 236997046 782830659 303567922 506403510 909907835 336908687 532069868 533231254 755690686 481309194 655395361 129996850 1005163647 587630339 549064378 717665304 197223385 185465346 222811968 597488166 133170172 48976313 985524205 909694611 319337592 660793504 635967494 486173525 840399843 475024005 480778037 532459317 334274909 299805946 839393315 604182123 437664814 844529375 277189391 678936257 1071862179 296388257 446750420 1028306167 912211151 621767746 778525544 617120493 426239531 899074423 11897349 22725998 303721490 337231676 1044151057 764053877 889738952 153765435 77240569 685151095 27254853 534368819 819532551 289432723 810892190 662625174 294806916 796124266 653128959 302724219 588651865 401433518 426764045 993665901 267684020 559324574 197170941 265129614 940350043 988161995 317309281 973154396 157266152 290299577 719681438 36577870 459746912 502240733 419911322 986696339 504468218 207361663 454229373 998462239 630460508 993715060 930357520 1027940174 1059610617 94528799 1004682332 99150373 47385680 1014908646 250400535 1009230737 720153292 425684386 676323312 433653242 24449969 146319873 1019378111 404387239 442244927 456868687 837456925 999222197 384341494 907306762 986638851 480534541 321599977 585324747 50628067 234989851 426903736 383322808 785187620 665435681 375696313 466107589 246868316 591554216 300374260 1007408261 148527988 65962574 333383239 956418320 517525724 865610413 689328033 699494658 305355443 855578183 945851971 430066636 166681707 97749167 913610051 788342657 138596304 493223930 180824395 871744274 609585915 819766030 931481313 306056746 1053635630 502096706 992505892 984874507 1055261972 243322895 840581867 832322252 218983480 191141067 749875400 83956985 762277080 361089522 733266397 533422457 749186897 1014556439 820071660 898865193 660621652 184373116 621657442 335720431 830158251 628168695 578829881 573001066 123340563 636064549 527743723 1073103728 92482832 1048423918 715176808 1005646196 605470501 911526091 143948915 214611566 486820855 950857071 125530478 550816769 98074252 1021464196 331699166 315406219 168159845 616715782 787332705 46338839 533859886 979759017 226181363 398847569 546911227 758656865 363836613 883764061 15260639 975533106 824993315 370935799 867269073 901878482 740274016 452761926 940083577 275652393 487652748 966056483 807471168 136113258 840018604 417328842 776498665 1009018205 884973420 915435935 377482923 997075400 510571408 695400449 942053453 645800107 620402452 481376445 666540083 500724512 227914503 392986228 575627511 5708742 815230212 1052195995 330015144 29339467 870728537 605243281 838939147 294786916 294906656 354243679 491843322 89897715 505079099 669762017 1005957918 678466711 726636325 767995712 431662425 21089267 1009470475 607784125 683590375 382134003 142669371 433711524 945696736 748620009 1055888964 1058989582 1013113654 679046660 660027010 803345865 457423776 602394900 674598859 701936016 843833064 1030318785 481083653 24835574 437265164 950639147 778724618 666108886 1014343762 946761968 650723798 377998903 150705551 379650533 88488068 821045898 903208054 120849365 913801337 825419036 594559060 39202469 533071317 936131001 208250575 588224832 698259631 777286000 640849076 346557921 587048488 640426968 670719722 1021665064 277022981 464030982 452187832 628100555 577135848 779390843 12607410 1046120467 898428823 638278216 721985607 347485375 288048188 501175608 74571378 259635940 485645223 774886998 390687294 15438015 85577241 188612122 581875929 598897763 1011013295 792488926 660104155 250685713 752742996 304987791 935765029 62595889 967044097 640950649 514638595 926539797 1063647293 369034584 553263066 239210333 826472648 820596141 621999111 764487807 135777348 214616107 983969211 768955043 911736328 160893554 544294246 903033953 133440507 287790201 398624330 314987739 189612017 753629854 638334485 646299499 134152818 127308873 1028480508 546224395 423964716 304906298 686744977 793720036 537040675 436735958 247461120 236653564 269390677 337148314 74368375 849836873 240579267 710388190 819941745 107186734 785869874 418305616 524034538 955731083 375881429 56347306 638562188 3638395 530173305 360779241 876748788 77940793 999932570 576690653 542499322 244899175 1025568177 1018450824 1056494588 239995663 884287118 62947230 769028553 923367296 625032028 152332333 827381293 998764328 948603795 453479171 241354338 92418146 931234731 1028653485 885043047 503270673 862822953 122079871 854729164 909531497 926427194 459753754 317876681 179545784 144171078 450865323 585349895 527824819 947730428 811744835 957777289 998629429 589238108 315307751 24006576 1015393142 769458121 920702681 727112296 448799269 337502710 921156681 344566815 961281591 79955685 802909677 367959778 399780603 244690293 987870541 430115809 5726800 808543184 577247243 570727162 43108595 160695641 101067885 33791017 1071738560 501293455 736288429 772039479 792063536 574957540 309068030 46928831 425358199 1052698048 748821128 417608744 82012080 878393002 796803794 791120006 344711274 518107363 489992450 728240583 922225289 693962113 834125325 183371396 864612274 913729802 839082034 414998115 7470508 559313239 1013714646 851845643 396200448 967209144 488856579 193290720 959824021 664347463 428078129 685351912 930270194 822037726 849246750 849490763 284169682 1009255298 216926222 892378512 230006555 764252293 61543229 360423411 207571200 667104356 76290492 343045364 663357927 809641164 681462738 161175635 971572855 575031126 344232633 716780953 384609861 530018824 232440870 361341693 1033326627 65360832 105147109 640024286 276281863 603812415 586669350 137135453 350861030 276923916 284348913 126794730 200391741 489297358 669497378 310059614 614572549 422399713 510686430 489759658 967662606 913656836 333552685 852393963 590287982 84887035 384316212 251086420 347439342 130269806 1002656328 963913119 7077039 676171377 452191621 298595941 1041094916 396804653 700121996 523745951 151361007 597371708 801786475 930193786 44121519 472822907 766526346 1026571924 746193402 629359879 67559465 742195751 686364464 765156933 733123392 748156878 512087949 1069321171 1051066022 324638195 495162939 379250970 577872676 685955342 28089834 844789395 985419203 181881174 935872476 167063360 855747890 199405172 809132896 173062118 755804711 148837794 231772672 42432298 692042743 868968885 94828140 331368197 466278791 592614803 570029432 460956916 103765312 182266593 256796452 790867553 1012621744 558148000 659084381 915917635 898910085 302628079 885649477 673004279 439677036 351299352 51878219 284307759 21178671 922391944 879006807 779929920 459080619 352563950 18990446 451326823 601899293 448811493 854391294 278175310 974444300 831736200 555984880 470111760 283233633 87607025 617114562 410396002 558080285 610006543 71357996 774842860 266672019 189495702 852567784 251356532 132026216 756700672 536693676 858873496 134747244 419292238 746837838 521751342 955042918 120591895 915926154 431957159 766950073 422663674 594371977 378565386 437938491 845696792 51646331 81872646 893667607 678009155 214601603 3557321 1003658766 343603225 544726285 411593661 505780303 939298535 603129558 282378484 945299534 468392584 85290188 236420925 425239854 240010399 751267925 564166275 199712216 238735353 535667477 961363426 291053341 96586006 466962823 908666381 392406116 1058343476 82449418 379365552 278196269 81847978 845255609 360283710 724848578 166487298 906309541 7206865 679695058 574341273 573941917 399287025 810340561 801889815 256393811 338621405 26187220 109001574 489396411 1072277816 851078951 226868115 849276201 899293920 983411402 707730151 117088048 344811852 925593314 429493524 450298099 832620338 673452974 1029237117 422692287 224761900 963540854 908500793 1069477397 231534742 884622585 191501573 112230332 534508577 560660576 882623404 439449605 756065330 870929521 148064322 637196265 875467969 294800676 1025631041 476351505 847904008 854401549 685994976 714434945 641430777 92429361 265489136 764387937 788200619 723720000 512530160 366408102 290131313 829250661 662050443 970862061 1023363812 453739153 249706044 13178544 141250913 387644454 1055842641 472198546 51220204 300697863 991157547 6910556 121501129 401317578 577445833 516722274 673315709 766018727 146352857 652407794 787819585 476668493 455202464 481962942 3394522 382659033 364005279 348364030 194567129 1059777020 97986001 681110716 1020296841 990434665 343486544 38390443 123774043 578645787 745465255 448474877 73083408 175980992 829553857 972838259 498254448 377080205 925245052 791040511 369502868 640578424 1032636179 68999914 570748773 625507370 325802949 264807428 365996668 676259806 1045572971 1041451145 158071007 993916043 744912468 339972318 1010747203 691584001 335412843 1031735688 1010021211 209657456 328555865 9619460 1016797230 448551752 830194546 508403024 142128137 638794213 315287870 665800948 588360484 645872772 633065706 968618204 270921601 909713704 441680790 210649731 449300816 1065344728 693007672 310656064 1057060194 821184661 370511588 994709952 4704949 495995012 266257932 703968181 284541825 588973701 552836701 362752326 801422196 108948275 977272871 96302506 757427399 1000512388 809313516 367042951 770816501 294123020 831953512 543648971 803633504 988962253 712736699 992988519 244316583 557532228 8904441 441256199 255709634 581122848 640941939 31627342 290849141 323409794 532528309 479666122 373059342 463536730 114329375 476911774 772027545 206200796 992135206 362911385 484675707 509931071 441609466 237548195 944672740 763484999 364057563 1003332168 29343029 764451249 538559990 857262875 673486912 383607062 852160569 269491224 398363520 153590108 560809415 180492749 273086640 310293106 50834375 28391979 611644117 696815196 817355018 672302761 1064129059 170795304 169940271 476206399 26426499 884307518 859821457 235703829 958883002 384425260 731758262 229159772 561866049 406614467 986236218 998252227 578777982 813212061 1003970430 713815704 293882712 865433463 704349492 173169165 951107194 520105453 985514957 985623881 1056303682 934794703 406634360 106467714 435702468 741845534 353974970 617552257 67704927 161470276 361464145 319674743 524175527 519050848 882977209 10647123 969526316 628667843 455541426 564110251 253194218 243173087 325940043 599300672 768862331 852743990 43564174 854161178 359952134 907689456 694153444 937858006 498994288 590993535 97400232 477596427 564775660 37061495 506826142 948929648 910323483 286029883 41037976 390815464 555288870 937782459 410553505 19637406 427348038 998612088 858575792 385731863 36946655 510094493 665877146 620575011 292503248 853198794 762279766 361577547 913033154 622502297 572335448 640798250 280349747 715638813 729288407 939239303 171567065 589525228 918423428 390197973 322639775 853797562 460832454 825094308 267646448 469712590 342411284 291204846 810562237 582303080 561337563 481978615 575980573 802852501 1041367578 338166810 913887737 248795078 341841429 804229830 723027407 602142217 647099791 651985555 770293135 771503439 1072600108 638675039 99396958 664549988 763197956 356215690 136292164 473282919 701291358 661392565 853999344 285988997 197195377 1043654295 307389133 523215291 822509571 902512829 820258911 275338304 29394406 449588958 31736810 966497976 261760705 27951703 426129365 400575559 1032727512 950720101 928839285 843149670 459231911 45237609 296305922 941576754 804661350 587624855 804966294 397906471 732534254 749637565 711059489 98783339 469315119 757984482 207563104 913747245 451379788 1044874520 182079881 138064058 280832310 1010306060 51610676 529363751 1058876970 856721978 595890864 344981695 849147130 107519824 88447245 697734123 240212537 691379936 888239124 370338661 762916575 632342759 812291336 630745089 854742450 1048148299 156819770 57374219 881295337 188146918 1020758730 393857264 303624496 100559911 1061894554 277473835 106266774 895079721 394612982 125135394 15198791 477628675 709485128 894059406 822539400 441998450 452715664 993645561 978303460 681189202 573368573 405506547 620476403 993064792 616807140 187109560 608124123 545610297 143315293 277698716 829409189 27900088 637737912 82846070 964583704 38508414 952899660 1014695471 274246016 753563414 93309516 1023114372 863490662 985823571 539210667 502894312 119983410 189511813 421617377 568243939 394139614 848557768 980708363 241492921 158693711 362480866 911742818 962506873 876118897 550540629 404193482 601057372 735978625 184503511 182952387 185619412 49948080 234232061 601518210 234705474 58920843 81734561 1005074298 882193439 625619748 407540904 557581617 585520978 633454626 860592659 481655011 1034166091 982555226 836916322 480784318 1009758955 196220051 64508660 560611457 832930546 500080807 441576222 547275039 285457154 67826131 977636265 638305216 583086605 50553795 861506615 917986555 42558368 1008297323 187594423 112659061 1028795637 266677540 846429176 570444572 241076544 795337841 1060939664 447776999 473460325 212295697 642830336 76844095 636245183 198903287 227746044 936906582 70202060 379065885 383427574 582912970 836473055 721357084 200616182 740406038 674689168 1015046819 844041744 791195160 389774336 1063739461 406162355 645582817 405613434 248953170 689711142 841352448 1060581387 398540356 996590837 1051656660 245585490 132057628 156670143 1042088596 90738001 73294532 959844490 621636765 364594118 124815776 187902786 207023020 996271387 341640572 948648729 1054781246 792290662 1004542806 774381805 409167812 952489895 682189655 942066554 422825092 238206305 144436012 508563903 89144109 314823828 92844278 296708436 195075257 685305877 393358937 696248870 724764430 338842567 691554427 622028172 692207538 1005927928 1015115364 598125940 365680563 270585653 198728312 1049283528 842081246 708994177 983140783 106049786 464377010 618579694 149461803 483401562 193904273 569905228 9074903 821355340 976548639 601338398 485208257 418546792 363906561 681139856 141783959 462592071 15346037 31320223 829837371 609983910 404789039 976294711 1683280 281985233 1025632982 961840068 503302786 215534833 677839783 379187017 193160333 595480459 933811075 1059637879 934595230 992503367 695674246 179124204 948771272 796238895 726039413 930852878 906153597 886375956 445592215 235637659 792167848 241786750 141317096 81549259 648726405 1023486967 42082422 560255357 242520198 87576103 572617170 410178920 69292097 693392277 364002563 236968014 1064823826 543823477 774694701 934913356 263500850 886707480 679854026 564006762 85823649 996829247 242815472 1068243051 646551892 769307707 645241474 502910179 538617865 721084350 451551593 390062791 955569908 91405655 658773962 100146300 962463708 237203138 683798249 126684715 625524559 83781651 385112055 429707375 455901402 1048688729 1053742350 137990206 754729819 882238893 769002867 190564647 1038383286 825683767 565390605 916735991 876159282 1012656282 440694230 377901390 176839320 539337315 45626634 505959803 358203624 505813807 455005957 1009617360 981432376 1064551795 322305907 708585555 977253646 412070178 153446620 658155427 681763584 393296760 1047904209 909571914 839752051 235221470 1011002466 105324058 1014796460 521096667 306450095 776585405 360313873 950940227 373755925 432791049 769885127 149926880 202847967 43025993 447049343 669338832 739851990 1006181407 462773158 1046846473 271417388 875093870 684223110 651957118 565526247 958131175 1038026350 550458477 393983079 991712317 377166189 142057240 494197335 477996210 740721560 3988820 116323326 930627455 573934757 596637270 573650880 966540099 485317283 801337757 430505893 455900284 180645859 698625340 271817683 646036254 386641740 213412928 866844571 542297061 609225455 263316279 3763588 655329421 834437062 211169840 643521113 442428238 802305323 902005311 806789200 1041481982 557263544 98444118 693968377 993940652 137853289 1009120717 274576763 584826552 651218949 306317717 500300293 704191998 534059472 197630804 882006805 670832486 906514134 844433239 784183468 1048523368 100668700 471808546 1035893823 389742259 102577561 996697126 735165812 6371520 963174247 995419869 543769416 930454065 179788040 75114775 25824345 783217958 459557345 520438732 118887400 484090491 1003305348 883580581 704298299 613980728 549491708 332740868 425449335 903412183 24311536 555753782 333760308 407415479 366010741 123581620 624386285 330380680 760578440 728159832 429886771 1015570849 740572534 390790423 1070557343 172704648 476215581 220371255 544724966 822594946 436711756 1019674794 182407963 1000924184 196169515 10499081 984686919 782913365 624517807 192700875 283296359 259351684 147123764 185678909 194585499 255830493 769704006 937315104 539460135 648800652 316315213 975348726 82677023 195960111 97060452 67180211 908692772 513057096 522665050 22490414 500522427 649717541 286696906 817099630 80482735 696571400 894065739 949921905 242616816 49738107 880587363 195333965 917182508 151791564 207757751 358047858 176821439 886951171 870448659 900465293 351495854 81985361 926115756 325452842 619290482 326714762 1052342247 57965258 2550056 517873900 933513286 721581248 325328752 623975172 121121978 545131832 514166373 931301007 248382867 1012404261 134564895 527805274 932208196 693958114 294399211 187303330 663708649 954358302 351052024 833893341 542505850 273745138 649547035 122214314 715697748 754087659 351826642 455603326 58136635 704105858 374911572 936817635 248110376 155910772 24617173 864244785 368784891 185864437 541815143 423320674 139119581 483912912 241919468 835796578 463007867 1054988283 117199917 767375434 780025258 982965713 89288730 740425508 593779020 212302543 732728870 76425965 631477585 615091460 298779304 865021749 486765237 153799623 422774131 171812236 231987482 558044932 381401000 37076326 472850054 965786730 558275562 29299533 287901865 13750711 894900569 256801781 367001243 592392036 387328370 851203881 606340977 763561447 624822798 662601743 566014548 852285870 107513244 444604335 248668761 479321114 661008311 209540932 622456740 981997028 266762929 449438392 793974771 1037779333 789405379 394134622 1045717395 62551997 858635071 123342185 844553965 309376196 654475256 298734899 366328623 245754993 856717771 1022527044 825906597 918504625 447569198 520525811 833010665 573686184 383425466 566630934 677961191 770236483 647097157 15648065 928585456 127529628 298423472 11294412 858209983 1049096716 18711526 268378757 639833258 1060174217 286978302 407023595 699065299 793260258 37317947 406820801 299395839 326328332 748922875 1016446436 403121443 353057968 556845140 235521283 374198740 51105897 921404951 17485889 788540903 798414382 564218124 922895318 459124454 243011745 118535008 1066641908 925572797 428552 341115705 824111177 208032032 174101214 126739640 238530007 373914283 908295486 437193615 901651805 136829729 810106681 248719540 1050535037 449994687 698602920 629971855 587469933 807918754 252579417 548645407 14705467 633903338 558460500 853156464 934264381 450364137 62456741 212461713 550617592 252045479 106621828 937300457 311169816 168815444 194500696 935899463 1073359586 265329092 992302732 966716351 803520964 162362449 272571822 573363631 991164838 296312334 726617289 749945834 584362636 129396629 106135470 554149504 470103828 159813919 600777692 152159183 695197337 739565912 553443925 865398880 308917118 1002457765 934513005 566864669 51447018 691151625 267009598 241587869 352429015 909950203 315345847 690478003 265535560 838720179 782372027 262237575 812592890 92422037 446654635 14546174 324895589 45005499 385153025 761890823 911430684 734319954 59536366 942481748 656230576 877482917 39202772 829480879 374455086 183720628 289769903 286955457 763039633 422258659 361185951 923623542 913820093 741615788 687876537 838778776 519885020 1069470403 57928844 699380827 971572818 729081529 371418644 899929967 615817104 954454465 332471200 526995127 1049004694 1020077515 288431728 162540997 65435818 703472161 311162330 826903076 445174517 198237943 298175260 658637837 348980584 474977568 595179857 434748843 357637437 952713961 52470831 814830568 801698491 837995208 687232024 88835087 211784161 601328810 608545341 578986337 252900675 272245729 138170058 86716385 631194089 663269052 1020579028 1042875827 429936822 701896467 193670511 92116409 114251928 1066755810 316639280 869786183 683913129 170198971 554968008 911419954 422706558 40320034 757134506 1046816424 228039574 753912933 778255405 104228460 550234109 793664128 111562052 9746119 81061472 248450893 462176046 425792550 1032105635 793410964 638785091 584473566 850496068 1004195750 573051490 1011899054 314937434 257754473 760688954 334147223 1038206922 4180338 983840573 493216997 734054423 716035547 248282378 790332206 175938251 335296760 256894691 1035034212 542001675 588350982 918731620 647051413 794626300 908740060 24104588 349495610 1007435089 658815946 277889072 238002732 415766017 801620591 681604947 412988386 27715309 871742278 381415012 911324784 483753342 776946542 649835655 748953091 1018507022 234919546 957434145 313793181 84524587 87323341 946176278 906678650 352174562 870504542 149757577 862560381 270255155 582461323 461801916 515612487 731712803 240761979 619493594 632070000 310019515 305565834 934630362 600811064 573601520 826856540 290886945 999571815 547684079 238418511 47277200 903046123 694981928 680211359 278494117 24081446 596357464 57548513 381341837 990216553 210502642 514733366 27306513 457760583 210700242 228346201 770061599 683601721 442439298 471529393 842521555 453335984 760035686 358993554 442809480 681543621 619571445 375347015 1737378 506969369 406288178 1058755683 1073629335 21709710 311158555 579505225 202915292 67312890 1052414337 463647581 458116830 243216327 927783703 383529561 504116476 540413614 635764664 357082150 100336755 194156228 160305311 462724399 1053991758 904223144 417269343 313672729 669041514 144566349 847573250 556433134 861371134 320991928 1022524891 378592037 639117044 419179541 461382063 259452059 39119589 692525999 208737744 679884079 200886049 404725961 981822181 804244361 165590176 452522999 23642268 136968326 256763680 437728637 17957447 668118048 225700073 1006403592 463183678 380473909 721827650 804079558 406819535 189799215 611947177 932702027 239588092 152640217 575908065 599106136 846984912 205251997 1018031930 655255172 106062465 673632506 911251075 124542230 1006983285 594998734 1056389071 749940188 170471241 436618475 97936082 475199589 405576317 652912616 154904071 995587478 925532448 418252610 684678552 669805877 599462060 659170768 99233578 578534357 29446919 56816588 328881828 1019751225 1059055033 595791213 671907949 351863069 274006419 967367850 53935144 353486456 353842249 810265080 71475742 776710590 526669372 940641108 288362872 70520577 872611437 189292927 796613637 187378501 141946041 717577406 775100922 346037102 478277906 889693127 333160114 564186538 304158187 109719684 622128447 731329364 147695873 91718692 426255044 511160010 974970700 521551557 1065728268 58123757 163016659 108145777 152988968 1004111017 566648902 350608492 760334441 789629385 338353874 1010367120 126209738 985636940 563049206 578489192 1045354645 572961919 225513685 579767819 176780057 931593021 66425939 308441505 339965567 199565444 16093346 12773680 870336710 629107108 606439397 663047053 196400511 189629717 76476006 336576606 1030755376 266460161 158063974 151868674 971737177 359095227 295444561 19154141 618611843 213608091 796844208 982972588 266503079 343990515 487477555 901416248 810786942 294460565 218493352 1061223093 189850157 935981898 724650755 744688775 232470637 406671397 412768170 817543776 65912679 124690216 6979453 681943915 828613830 143260379 352904941 326378380 1016840763 378482548 501974913 371188257 535638420 812253220 496678557 40070055 622497708 504655218 171764300 116636261 1028414564 767291108 292043520 855498394 843097890 793512313 204787908 687967279 1019997329 1067589096 141399064 361619837 904964875 838827251 62311263 644764460 72185160 918921890 236911567 742924072 1025405755 821425021 217549098 347185328 786162626 600824398 293407793 967900173 554236618 1034247808 844048472 206011090 678546676 1032694296 89189565 36021774 516378528 401029369 114248166 579776572 704337153 404564087 465139595 8486595 548943732 289399430 431291920 855623435 978256637 186504017 651067330 588075517 669796106 204175249 282983669 769501624 904361727 359743487 608626120 229407840 867038187 752666739 802756511 902732623 355085765 452010807 140129631 405769580 781135147 128909557 668378612 266528019 929856300 501516698 810214946 1059355959 494751003 235770533 72688287 97901222 936005823 526328668 309950252 940612660 757965957 980951504 183726682 210963545 203098061 209734785 116238255 534515174 999230155 291275197 807998690 880750399 1064433740 448317630 810130291 357794081 269632699 94403166 240441264 245458303 241331027 464042989 793351687 405734090 490153582 637904493 130382504 1072857359 531678422 22198541 354437086 1016460552 134674818 439675655 226921103 405057142 80967676 649462683 847674602 406650691 450378393 735283133 709740299 97674450 565983549 809437721 311164227 631149550 319411305 234624655 853046140 190718460 600853092 1031004309 383573425 880179814 483890655 1000398263 392253515 916567822 953739801 475550327 82800671 964315967 782854045 942963620 392369541 547867444 225553837 665155663 465487436 670301957 389364174 532933510 1066779971 127665822 174588735 1056541563 428155333 851818821 1027339906 707281742 313088622 576922912 734757402 963929219 889240428 674015536 540910244 177288184 516411381 604591232 115117222 77293396 556301703 873077132 65407456 1059402668 571598653 496521973 896094263 635194255 293419181 792294593 346819817 199073928 255183548 884259156 36157484 972677797 538399083 530111090 62782373 182430696 672684242 8318834 838908647 210846290 656157731 1024134875 782884905 936772916 395515294 133590958 1070995877 90266218 561017754 619552090 390860448 300871846 338490330 667880306 38118085 547016318 273185632 228270707 631068225 151374076 1039010646 574049755 487044263 797667119 747207685 1033979637 318106547 147995269 18733342 292837539 148296987 269205410 706704263 250220213 410601989 726442939 865455754 581800458 83680607 1038217157 732124422 886631162 655992685 350082633 126687414 526288362 858443596 78489080 513885310 315424711 185157009 239424444 684693583 655204829 419278356 628856758 224115250 325762304 164428349 246135926 82810433 147192704 46959501 898560361 683582755 814805647 137953903 74540030 376798159 567494015 161781705 238907262 1071038378 54339397 256130534 790758416 45777309 359485753 105489889 716989012 31317543 811016457 255384301 776915965 349112017 289829653 243398375 208356603 537129489 938699509 471479442 22121150 318975380 927036923 359334627 648344780 767136029 1034088139 612672287 268727828 995326021 889391427 129950717 826159854 327457166 788877158 964274537 345322470 995037721 706434164 394917112 165535433 948415309 484373876 43707795 344722475 548820317 279198521 199601833 149726292 160099371 429012653 193726662 827661869 1072357808 794649714 915859216 786394777 105019850 594807035 262094194 795307134 956361326 112310792 848883592 750969422 717195824 185554221 374125647 903703282 256399472 573865102 648179498 462518172 357820841 721842398 336426873 102747378 780231917 790805934 625349403 529308259 148491377 448352832 285906016 173468086 219518314 407494201 941268619 198735054 329655441 1028073354 952832428 615548006 872736799 440779233 509316714 437825894 713250007 417814820 48768500 971107461 576416571 70980248 746024632 662750064 254524584 38046897 1024013104 117085493 281860502 95570801 410205826 647501096 250239918 145455326 855116418 669641476 353925323 301366396 778483893 931923837 52892388 848499988 118863338 569286866 372663996 787127345 631595135 89997004 1033584198 301545707 270180808 300594025 654766120 233210637 990598920 443770178 1028503560 459095260 1061012779 151728544 124849014 297388915 1003384717 529305824 252710741 440306366 956997801 520734962 687212620 86159967 541762087 489410442 882602547 836129611 1033819254 1034556463 1028635832 1014325433 995597390 994839496 794479237 357208203 982368948 355317338 770537881 1041556990 784359554 176417847 438595037 379561742 33326656 626251044 729096835 880681296 585113491 95122436 800834956 335614159 572890858 657539784 32966202 627955423 1024959999 184677383 1037244277 900233639 746957997 834755138 942386426 285982096 578213778 854231121 119691382 806461532 479786897 426850197 453782340 612822656 863423506 1029447594 334968793 163006720 948754422 716865506 497955748 971163954 572284866 658595117 907026063 78947527 680903271 674293859 136409291 773752575 645867200 563268475 84497277 912385843 554838123 1028835595 534516255 595624889 1026713195 318763860 431637149 687679134 783338074 639313588 203167817 897576319 443760215 287634379 98149476 650147731 857539250 715081569 901963945 857076275 232560943 759401586 847832414 822279869 161661359 743616145 414410481 23154273 704424560 447456478 669127044 579661395 742694181 823779628 348961475 912063403 674499321 83644973 654382144 15954769 2616848 490159833 954280705 655801245 153239602 536927037 370692068 240848856 618747484 65593643 368229033 202640087 873666115 195548080 965768668 14120905 884405350 542042308 718582465 562287314 953935373 724997309 982157486 1007814434 104411115 785368335 141440523 385759461 360610788 66115783 202687565 828935587 925346537 165938681 953560443 131360868 600275979 854920041 844677089 795836402 972282037 575322111 174116201 620291554 644220946 348059582 429342353 847175878 241674568 859889068 138047882 1007405496 1070340938 514378272 172859070 716795950 902013059 969565296 721386335 440849722 350818619 92617225 326309164 273130481 283034251 588033315 573761100 626751477 565298068 781536222 88857315 916047295 1025464046 724479544 1027491790 336849465 82428671 282893927 47222113 56201622 439463803 278280030 306646182 444382646 355867646 364346973 715257140 719492531 800332858 922013411 124120711 456807994 758031957 847965742 1015565705 967949955 108377427 325553757 640143369 606627895 72927831 935393128 976914071 465754481 591779929 222189021 946983980 765907074 740613744 994337391 348243456 676481652 760804341 331085142 423144131 431078623 318116081 367289725 457040378 714583718 707082445 337951257 694925797 1044207768 335373877 348232303 313232479 189238624 423649449 611203330 525431904 53457939 771770107 591488674 629441547 137567697 245812282 359575571 1071369653 315758508 863909236 591448022 82282201 57348523 462648005 323802018 19262179 272522237 182260882 191636624 722525655 1019752282 524156104 880263528 741784574 729286423 414681226 459903116 215112535 990655994 851185611 492223961 190187416 43969353 674211059 667934060 823610779 843708543 1005967235 447142698 764970208 493658984 25931035 851838359 42207971 778506283 727001037 241873378 1006042105 302912724 430705588 668588141 437499894 819158573 809539546 677395233 58656310 1023692966 173005446 14809922 584457398 385221509 790475221 465264975 887246754 1013470603 765475737 426539997 1067171972 359589185 227653680 732023846 783424484 510652003 1035975959 57981981 903426180 1064640532 908457566 179485847 264376064 217322748 548655296 589168445 122038398 591658408 789956647 850719805 521217925 157511095 801628304 377296623 400915681 806135506 858502242 895728957 1006457621 138327100 328590775 544098353 470459893 188161010 475176852 187475488 117070211 919180995 21795698 694415693 655656837 434574135 61841670 574968069 320953834 985461996 840652178 961831762 577700455 796444886 398820808 151526735 362207407 674601096 500585211 280570572 620493710 563535 1031135908 368052516 725149369 319523012 408265722 739640607 449121727 243834175 1022660439 642404327 877406905 774625211 173513457 107718637 337190367 959885384 249217831 682558323 509775224 833594942 903321095 202830552 384516773 801639306 540525512 631844255 533952808 420924406 421184633 360694536 615233883 1071346770 206025606 572217438 974720384 793555582 801706921 656019894 698135112 614203247 989467381 506181444 400282596 906180195 645231029 119137668 19433557 54598380 431311985 948820364 1066085072 833546630 831010647 870557558 72325762 789890743 1002152578 536626279 1004524293 385331163 677914690 812814769 900447760 314432822 577878568 710215584 57769006 411215627 148036928 777231334 1068488307 1012935684 767866701 607800882 952030398 1048815928 633202899 669640509 897764143 41500032 820306794 734007338 196426113 636098826 977762560 572417427 691425348 481586328 489189706 82030611 422080870 996040580 674621561 564493924 1004802819 668334426 270280420 76882223 507588777 329930190 133476483 762817615 48428071 307270047 379107319 661827487 15535697 717787073 336963383 181127086 146275730 981211181 218584475 955742278 289517344 681837827 517389049 409966489 334053364 975780990 520204270 766231976 924021372 987996990 1063041074 948801448 353991019 905256720 529152915 62596197 1015756572 20362199 714105512 552997945 924724170 1044937589 649450506 806473616 914081360 781330419 896339960 17198914 786910345 793161795 809520663 27760206 412474268 104845850 523195628 627425433 461128331 156513392 1059051736 971206896 1011601043 1029199540 1058032584 743743624 376890668 938861784 695473001 153880127 1039696518 70585109 576728012 999253588 45002315 357667533 185075191 385530843 506611222 888030408 1048598403 207133793 487596841 951514043 304232360 276274238 515332629 359155196 924575747 868045891 754773665 516162818 927775921 339262773 492908595 487960272 611664399 447737323 102179423 958222405 256333826 723748565 271056351 20334225 131796159 580890115 272010577 464643937 475143051 82040384 145319053 177226202 610769744 633593428 538447595 641754740 872752456 152765378 370073956 89217835 551663860 544598988 204914510 891018875 181104544 958671671 694168350 634840913 372695733 423956435 343128003 929291352 220873687 770477181 175763331 732378502 294813473 898719271 261754648 511587111 180427438 303888961 854519505 969888 614995666 777108622 154005506 562308240 162804675 51235804 552526612 48923564 174009632 286225948 544079945 15920908 557971548 942322482 202694385 571598062 1070442711 1020083159 731263084 439961988 838098160 723152863 174190055 135604968 393126243 795512692 582490540 524503809 943538159 821578470 161530595 177663137 14545940 1049814351 34613227 454090151 732429171 4150307 367639595 878707711 471984828 189042553 878708403 47169513 595831828 860610846 192316152 879926727 338489140 164189667 1069646163 522308483 342604853 103816663 949701647 496559775 487576871 837372346 517590971 295599751 1003111675 220108711 693756291 517609293 790012350 609420584 468019293 582033737 473617983 727554875 721252723 900258094 175591257 123281944 873043702 336967260 794314580 716970401 373320402 90279354 747521830 1024937678 275783066 216719389 765386509 46038116 946251306 528115186 1029600464 272476171 818782048 648602531 1038949414 782701184 618003072 636959645 603555640 107770344 1029854235 699454853 389492282 884763703 2617003 362244296 885885081 605256909 960951850 15864408 1023728754 772926788 264526702 799573418 778342090 768076357 680591804 851051480 453745883 378377904 274431751 279633518 1047042665 944164963 556116425 264875460 485296872 92988599 327257097 674417393 534418569 747418447 310133262 192005217 6751138 365401773 380858674 359531779 478005892 924882994 564444073 687182570 782886626 141085924 498849008 300053222 501693055 183797138 226986767 1060334869 163279258 514696704 920421835 356361766 835441422 836258200 919664637 617517415 970395324 790906435 944071799 444728826 585667714 988365798 760326473 528808240 141432508 484614610 257066714 400844790 370051914 395127250 587968512 38198384 643442830 730966432 285700012 608041704 322632863 1022081323 429164460 88849978 932406376 843552649 1061536236 1007478174 698752979 117339407 644116997 286821286 216275116 657120548 421116188 65066535 840048938 802748841 807729637 297963317 373714199 836243609 738780837 476404892 350223054 196098801 358090807 110471839 731049788 875552088 255057983 677250 396297427 608121811 330024732 220893323 297484131 401115916 480856398 851281723 850637346 338781613 695513319 1029679769 281584094 348479856 486016732 849131636 179570237 690357046 569853929 815280107 711199891 232398335 171091185 620268912 470105922 953544518 919131254 773443189 345430067 667522506 598256941 226348991 542868545 828030010 783605751 27291167 1020473422 817179538 489073672 27148796 6509571 191702540 113462894 249931539 238266872 367788774 767153206 470488455 661348317 53455880 94902676 858330613 448508457 345826240 467201179 256802790 854101709 384963882 963532850 887469686 872297649 969853435 659801184 64819156 550243180 607900411 772360113 229972770 981987016 163050395 92507040 353957387 356199682 806755495 31268584 560785116 859697781 947994454 456401081 343427348 1071238413 257515824 60605376 271762359 420992063 1039713614 424659313 630952203 244137824 485606159 880504924 985051382 601749722 709208804 205760000 215757339 629415884 44371864 597329373 583606633 787705961 310612982 353060428 429491075 760425536 91000979 715455147 92098671 379320142 927675079 590550102 320619442 696683927 904838335 491040957 715792647 85131253 716440561 314849856 876779405 508909934 439444205 1012405398 178966442 377877853 370012140 1006895819 1022333700 1001542462 431676456 27997932 413115343 472547155 1021045636 582426905 706386603 936775273 355019260 468529171 563801172 556181059 66283820 86885354 991679367 817427539 481244526 677004243 194687679 1061830396 8974918 921413900 136319048 27963795 959581099 91144956 525824860 276262016 417541060 984188837 258305857 687010840 566299886 286714748 1047547006 296933323 146463619 423741928 821419603 1005137344 997629183 376653137 483614244 490634037 401181542 829660170 417258091 571195147 54389411 615716272 714457955 470110785 503935910 900740254 54681730 567857907 784760138 452073935 26793114 81145372 221979257 70219650 219871084 658744559 477774765 351966713 854841589 508550732 676026027 167921904 1042793166 518503199 108503935 90373609 379331775 634013610 1060348252 1022339682 314751338 500635826 816463640 883497589 230510216 882329862 910689727 452095773 203731426 785319748 532020541 914784064 752049626 941292892 230908216 686234064 796547122 632081995 248832809 1040360796 31972865 697307183 902800718 930956026 682549724 38219218 975978871 752613915 622557918 850146948 145836655 760605336 522202424 986017606 743394636 706747591 311992606 760334801 751691486 387631500 333510744 878430118 563168501 909437503 440559581 657633619 191066676 854889490 194960717 568542993 804121353 752375401 523689217 915002321 897308546 702117929 652886392 338106636 737758971 789035728 170911136 405321784 338102051 925442267 237711510 790004044 956680692 73620936 953443441 620314568 908705258 736311909 657652436 720127639 1036310547 146244527 47845257 427005323 391401097 779855384 623352172 534390224 662568132 920416447 388812459 931445625 714018600 267097632 812930208 2505022 613246998 1009649022 1015738441 33985040 24238669 531906217 300183617 611695310 645651132 311235279 397111323 631983835 759976795 42408151 350295350 520145634 136896556 742982974 201103791 323658763 503771494 539163912 220707445 953700786 596606729 516417380 488765878 580847045 985277193 334692781 245163459 189882722 396524028 964055546 297340853 28727731 735094548 899377319 859253361 352889049 715926057 631246477 654602959 12606396 981918097 311677255 290360090 215025185 575931478 501125190 591357356 270144359 353841208 1024832236 462133855 330271021 185157246 290319255 308529370 372857785 171480276 943814649 83570615 308168531 52712610 215327555 464892050 880070324 471691290 894209433 122588784 621284642 400375257 199232986 734626582 654198774 745974547 88212839 751836044 1069896341 591919097 1043749657 802356018 793413323 986597989 783758537 241596528 353023854 309222834 587254442 915130496 757070 676543308 1059375910 839706880 151585541 714161711 232128469 781621814 646341486 721963948 862609066 979663405 962135083 252076282 109655358 118477156 905850272 985880240 1000636058 781431334 305591338 881053903 625901631 1058841359 233282529 530838446 401995520 812208013 936152107 219240121 788218110 919122810 54170592 748410964 10557690 447843800 236403043 1029089358 254688548 975718698 197458079 508659967 1018348033 504959980 917624092 711618759 120415478 730696560 851133280 493631707 585140809 427955727 92686379 452751279 359971068 244420515 388544308 62279689 13786522 863350932 118176237 265235903 863838096 104937565 624014756 388618908 192675799 223352759 659023144 342915278 69446466 209053972 121853576 117179554 199465503 37518781 735520046 989338912 607349467 1021709419 369431427 660962514 383946396 469742664 1021923351 278960726 440969744 358211056 187046920 830617114 617923367 104515390 421003159 933385815 805379608 922196814 161074176 849968915 929321333 494233308 177003192 365288118 703574039 989643145 286341028 806023136 657930375 592260321 514518805 500314038 477859025 891549652 864071488 571586911 648597992 962315299 138964288 1021782621 394807726 900262618 148577168 477674006 302448540 407846501 791948504 283877647 1065558593 850498371 985646344 29032983 17943504 164131887 827255148 614288370 205570959 305095975 523044254 288004210 235527867 802459533 240308557 567267225 781258869 40979793 351022754 188509515 792622926 24205636 938892206 58706025 970045699 123200284 21415389 886073438 1005148118 1018940538 40221016 534517247 438606747 269937022 694998541 136620769 573906205 909530384 367495537 283655641 234129728 417233991 10123535 88879163 32522906 433766411 1058218691 324160368 756398007 264274593 559462993 138453897 356023716 247453183 733469706 588739138 253678980 477943870 673701709 545934914 879296484 786672023 772895285 763797670 681784749 167131642 662534484 42182387 161363058 963194939 713929683 953894620 811065854 662525063 368372950 450087028 184508673 894693029 451124159 891328310 552222575 940357045 197949793 1046271369 453101688 820203196 665477886 496520397 286735967 477534947 923563758 90693890 25379993 732391269 951851508 295940008 843257545 476217463 1005256614 309719380 9002224 382771572 53583784 296051508 297185859 501192622 1043498830 817681670 624316252 788851860 522826152 96481243 124196 34296889 661409273 425980308 988978897 276399588 278897719 195734004 756120369 920763609 161005707 845978918 588996469 278556580 944264409 1010573914 342787114 491385597 916023325 831636330 133307201 859198338 359958420 628255820 144755335 632115254 1054761120 395393192 107526250 955224684 978305774 254363544 745343048 891214938 14888650 234034931 486860879 717182030 584314911 392643221 879833204 84800833 600812925 982436526 171324378 535636532 152687779 995706935 358453171 736993767 748848967 978536191 811814559 744216295 1040307629 1041499096 938009260 986847288 399535280 952414947 32657654 757236463 394249482 400327227 542400306 182882086 1050739855 1029059058 832854175 39164321 733380503 695743511 410258073 1068553422 392631820 209791400 932316213 1060251136 273474376 632513469 321428149 356613837 690270430 342590929 198247281 290653203 243129983 970983687 696312460 771973325 817212386 303535363 120594478 34272084 980900837 146130680 446816311 528448136 366184015 925609138 505650148 44217730 329257621 405232424 588159852 545452372 601456488 958414651 432990827 471219482 733019686 340213498 360455933 393766017 431274214 293738427 762517165 644367986 880272692 745098606 270330264 533393633 525178387 939711098 47584532 873840875 382887343 347485957 460147319 49825129 1016346294 1050643852 1014414532 148287298 363592101 449477447 316285879 980973754 526018488 1047106045 816338995 876211196 932980959 835922122 1022179185 330587081 125432804 676445455 670533844 597678621 600901357 79674380 424128248 671317302 778784501 1025572848 562511647 51808206 411979590 388500354 1072199782 475430899 1057331889 188361378 449314279 729327460 536121895 224886215 800424039 105449994 960773256 36175539 647060217 495502258 629593157 684950742 354310843 499500096 583473268 1060843698 758049159 718744446 549697052 972809122 656294648 629643415 1028758085 400070953 984866467 863401145 649242965 390236703 80237239 946022576 281769536 378828458 589298128 119186711 92772894 641138815 758339444 590882756 925439273 976964890 105523683 1015142380 538148996 179695593 375691142 222954426 764209125 481190338 314704074 514185372 75734401 34127200 771004378 715360003 15446289 57415683 666838000 918262686 240670883 1031503475 435973460 1053072372 718583664 638940961 617089104 49708828 387561398 964570596 837333612 879330847 300176182 695676124 874853680 366665586 566040783 876312488 988953058 367035123 631865785 538309921 967735526 219940788 187488959 568924236 647771406 100962391 939835511 151007386 131904847 789767237 257284816 685097498 226582897 418642200 43041754 493852453 213509746 757459673 855183105 47746578 173827459 567598757 154816023 10359525 629271516 590752359 19131103 1005615265 1028425406 892392930 915045921 684761788 973756978 838752340 487308472 277646933 865922203 417185969 149798120 912932159 110060335 675083080 669252757 909612241 702053985 628547990 587943851 404065775 409343482 787831121 433179929 50236467 397556013 759692051 687086876 490016347 72803867 1042485716 173162909 391978032 262259852 170293032 898714033 348651303 992411251 559731809 617247178 174722857 1021040377 860957274 301161554 51277773 113658896 4060224 883114041 574262342 628726519 512176394 144598019 330285550 4235077 471420340 409312331 336033742 917433100 890885510 147385505 361725052 706275260 915707892 222044797 165726640 966623983 35696630 46349697 287288660 893120997 388663801 30388443 457402763 307255503 530041198 101875564 390562232 231964683 758861165 369002793 274693956 100940366 949158996 999088614 479962382 682551226 642481537 686951696 816411368 721005446 298362459 123273421 831289639 541068487 272922239 42207697 476520947 237252793 723638932 750160358 909545454 861296045 47467821 351484657 997173416 330189312 349440992 857310862 774394083 449932148 1002202356 923374494 839531915 746286740 1011445395 692814502 746671547 168408455 588270711 550178089 611121503 784573107 121141795 168538873 1036661184 937280615 574657893 1007940481 52088533 546412693 547658258 768070897 757712285 673586665 286185719 284588964 808630598 634821000 217549343 70580880 761434891 796325552 201703644 809146413 861727064 433800740 595616414 5377808 121583457 226522434 909545214 780528963 260781762 6419035 887590195 309663882 519473969 512574974 398065687 46506331 302897436 997675704 924823936 870020674 131855251 408313274 604885792 348937058 1054481756 7056702 462922105 1070236482 1003796357 114357545 570123826 3533185 927235369 717511431 866292649 71303163 270149275 705114551 629609640 710192042 497502494 41175128 345604008 573873034 506864824 10992021 392621689 431838019 114729061 782020984 780081198 579177154 677186745 1048220702 407300660 525195146 970052570 537520514 552404831 20484965 566679025 163744140 59036460 575199479 157200883 631506051 14724926 766527933 363612700 1035269563 858973695 435069110 743200059 1053028809 684129548 124479151 511450972 139575183 205357371 547952313 1006503846 471619539 305449640 1072890462 561839507 834069673 455270130 711074226 189752133 484224228 527251954 496687492 242635071 217926802 664640700 106781626 1058847723 1067051558 969269183 769836360 769859461 301659529 862749503 366541494 865387883 1016075116 1036032103 1003866709 242838225 236999348 453530541 261066338 990425156 836693917 553160843 171659465 93670739 995940842 611234471 626465304 102367925 1054732453 608833580 407118615 845183697 748463201 270282219 327622057 546566734 509683272 492843330 908800612 111351001 606035122 27239015 814712231 936448239 34807388 278599106 1043822534 560899069 329214025 1048560573 273557132 797039041 726959212 472890970 779671290 326259523 525064100 89586437 868866498 731008302 22666983 664453038 911792605 575124149 329264502 719944104 604699802 296365253 612265693 936932245 712015542 18146784 822393859 941610184 340386861 456345544 497402854 570307046 853542170 1027971238 818121649 841776913 53847990 810496860 860902147 57194611 214774420 931682190 1039534641 1060910526 174221150 338737723 1060630216 597114044 207093321 839142148 770526506 72570577 491065832 4309966 923861578 341046502 1022059493 1040854275 88004572 921492429 830331768 960797745 673981926 3561831 713743378 453658793 735436770 746453077 395123462 850278041 779781892 998101115 1008819375 5342195 495433413 862195521 424874524 1070465067 1017751068 316814437 614092416 587593621 305150063 915407116 30420639 50067771 481656853 425750214 852783359 267225511 514681936 699099912 220853822 800676555 924092474 74650901 809058810 902843037 86317576 1016749853 334642809 1029631409 1066806722 786604299 190243743 150560654 334445278 976306031 181155106 1027395700 304555179 195260476 45888259 237759349 274438991 912898824 267569580 157573060 713278256 112066562 802191387 739495907 418851812 665136169 848787270 644687220 146380673 773949221 490406768 852452899 449873115 156094764 394791763 975413429 325512918 808588755 788165741 486638324 85798446 121592403 957102283 452226829 547490220 184518236 867054451 687296103 777582150 841101950 1066775373 912059222 596530418 576800966 172696339 976893844 894335782 197479314 140668146 150233807 286228196 854480819 627480226 732692737 669653564 439953413 893495977 157122225 436954957 110749082 296236765 113340672 579968548 306913292 293790254 295202357 501697451 693181841 842718387 1060251985 524820214 797526071 833938488 251542705 232719537 967428418 914264908 181127304 975085567 900562223 443273535 1025099566 715207317 386409154 342470809 911388174 1030186425 652391269 811925074 721290119 892544920 524036021 88063148 77163840 1013226615 292685406 265738539 702084041 62192657 496812639 54859153 524184051 973442484 775802743 161278289 600298704 245073128 937388978 383115794 591879863 1013103405 208830684 332171123 275725000 150891494 715354859 894735200 926083817 631413097 868940857 505269335 195222168 789963412 70450459 562812245 459204821 910561663 200313669 791384392 281177825 922156081 789767338 616743589 129457392 474954321 696601802 1028055572 465660610 842486375 690759409 227794471 169250577 538853779 673196564 545653882 211922151 15795992 379756301 960257652 518823169 927207802 875493367 577961662 108422830 86677222 545425986 169396014 1062672539 265008483 692507723 598488860 285498451 655973200 1005107005 10315448 25338157 849397687 337365320 404991519 525155007 559788212 910790954 762436852 1041885543 614147948 863310688 619341146 616421519 621108114 825115049 467104699 294225058 256184755 947597380 784681838 705352978 562634024 645918122 134413106 250962628 205529652 411769005 558735739 803968295 893714297 311631225 242179939 393049729 885730479 286180277 1046334592 88518941 49641698 345458309 360713047 731414698 892484555 268240575 305528472 608357309 184533844 1007026254 883022672 600496497 630237933 342027550 1009130197 16475655 123088716 948027946 408173564 965098682 96051799 517102867 894266307 238777923 513553518 494188018 351617895 694266214 881398225 770964905 665841688 818185454 446224227 262063460 889451467 881388282 893030896 673659451 374989832 633190090 285851267 631934194 223180446 980656485 281324879 957112025 513033161 868484263 345569388 176387557 750908136 383729161 619108290 959006559 441175632 366767118 1025555669 654903784 570157173 917699727 660365416 869781641 1036164793 79136367 641158651 96190398 385314341 209396034 380905160 824706983 978810150 237190920 112613545 431174355 81731600 181789680 367657575 819235908 387274331 284826748 974752858 14489068 7069502 434702349 164480806 838365168 806952609 224604107 201731757 608851013 1069719116 143603308 635206296 132304220 3463492 367185928 859735973 1043382355 494820810 300070827 417676858 921651468 246718538 633672982 589799626 111442792 977295036 934355742 242006712 56880704 403714357 533550822 1015175575 1053770538 612455228 828249131 990367954 998758 857032690 895335911 332620000 451678872 1024712025 700817798 213869600 833418433 595104501 552002550 711707662 871724238 560350521 361450994 867385973 402804803 237479924 725173198 637183446 619765176 228837999 887699313 491155773 41012887 993768239 698539998 320207340 410051044 555171914 831064707 930521043 57415969 885492241 864912588 371810965 805837037 9831631 652209569 371061059 674264747 1035537528 348930347 886845827 495422964 354571105 259968741 800567679 446029576 878067030 872394519 575019390 743587971 960971925 115006982 981969594 878403420 868069346 86876633 928555127 92959202 790464977 595209283 780198217 1058888796 124219765 741499310 588715226 462944841 407507830 575153242 464118705 761114413 740361162 1047645875 339562034 192573409 545594671 988371198 428098250 91674831 868846612 216926129 640073624 277141323 73895969 979735574 516451926 480415152 279816839 660327197 1054516796 7154318 349965449 97191075 618384613 1062201662 591982226 206348903 562571434 31465907 219198481 98707646 812062038 376109268 353093538 873028594 790396155 767569012 788547209 506245652 834045389 980632485 298413001 200096222 25435027 923106321 327526540 205579623 833073552 327882426 212989711 958052618 160221588 455023473 909283694 780283920 1046414854 1036958380 306802207 484145201 432072745 130872571 995569417 356342617 124783131 6489435 640224554 823404012 137474041 978876852 969140089 585058658 213930748 389309651 1032167472 645665928 75719782 129507089 639246146 905892664 743840336 382591866 21954204 474331613 913857409 488220690 1047059138 51828756 602496047 594731910 398699771 1057962062 552257524 106898213 575566687 422419064 501449719 451779922 220013623 959609172 950087180 294186472 147968815 208989093 394095089 484128328 502194382 943085281 314705106 680501105 351806856 784569399 67749673 754534911 350784378 563121041 131066333 641818361 954583187 7116863 94913937 100591355 481440996 290641997 441256333 733545310 452065020 920558956 652887966 360336093 778378886 537852608 195607492 421767347 822069378 129267628 734318948 929348068 146341944 484906034 769427140 575366754 383077856 1001174279 92818970 1055599450 117867894 811275988 698939089 920385520 30513041 668854787 394562077 144109526 159429518 717719751 508269833 1027424409 1043813572 193359173 198401096 961160416 269096512 219193056 488447147 992522240 1054519085 372516845 272479604 496789988 352791160 138802522 766534705 801420144 594324329 103362328 33379099 515536599 17807797 246189122 693755366 760698811 702217138 756917253 915333410 482764285 89380517 750212533 742204480 223977036 1043826613 15778008 24740438 22762126 833192999 634697164 756212931 845311773 62695734 444261352 921897205 6014507 425677457 736337059 583689075 154365326 31931465 724541559 1000715336 202273184 980261371 132505678 100769223 774664657 451869751 996881796 215864086 872178019 292405524 535163055 592799352 908510975 261265634 1066878506 310550129 65849789 996622128 985712362 260587137 620129130 1053256774 240852697 885087740 747255030 803866897 337105327 1051652675 158459198 122332759 957242620 334200235 511600527 978517397 349860216 88880173 726814463 375292205 818843719 634674242 485531233 383727619 606883151 783706182 785932521 169109451 997867795 277671509 35290315 215364269 80239432 380808029 979904499 769825346 663894844 248122968 652137866 38964691 524645105 679551082 577047452 823167836 235043466 663091818 440368790 176441334 628416204 638275991 425468660 88974466 686303159 508826496 1032142582 12326886 724208170 871046801 384893902 941626296 679971305 1015590671 544266558 528547493 66906271 1048119969 332212522 1048799011 644616780 516364478 395245983 907652410 76685251 893045680 589398247 806303832 967337646 341482001 768526735 254655561 148634834 774341876 771134425 603922508 625805776 346291740 1028064761 645148536 922518052 931889226 116051794 213851661 259922979 700951293 410330086 206476700 459375133 555114707 548579789 784871163 799734105 229731303 126823095 501996669 901250399 261792582 237732829 156964822 382530633 978229983 546691096 475805424 1043700001 356309166 249675643 686472156 442102258 764054987 1054277037 873584153 768288021 522390573 1019497425 708469877 1027213328 238166041 931033397 85071061 488563131 960204788 789427479 624488942 466920092 869684688 791377764 102342399 268741730 1003380329 195930183 298716100 216465419 584519536 600794980 333188402 771654688 294440364 451884285 552950053 481481325 567469340 652424018 348198705 133532803 833381770 493301128 196787847 403973625 828923056 188392102 605973544 422418465 168168512 983140690 88963378 56750414 170483037 700224813 626130559 784690147 825659919 311451570 272625794 903334103 451822349 793131272 486234472 527552649 440615623 327800048 916544547 728704300 264366802 723394625 170478872 905800101 722034383 10712654 739476988 584398539 430477917 485983592 1060426163 839576397 9563526 200085373 410539131 538053443 398974753 100302371 548207971 587334655 550575543 957685645 244298341 191282838 505124543 674763477 714217052 584470891 947822622 167879417 602522153 755453221 889646475 323733044 1035312645 774741085 669694129 1052131996 608643972 611710004 819941120 3636103 315213171 458403947 859823342 401509860 688588069 536227154 1032880432 424454078 784075316 54631352 654683186 448803158 381718405 744762584 607633509 490276962 136266679 682999724 304102139 641453978 887133354 337218661 41166301 620531480 876056571 500804147 305407102 587669937 1041545007 621073511 187284154 325232066 190405680 565872269 73654981 911922914 616805575 761992342 412890054 191326082 367549822 908170972 567301708 662912754 301875598 80457125 407243112 868716909 809051813 789661556 795723240 710312268 1020321451 706834205 243792308 856763902 101076782 520894020 419307509 494351365 850208185 442226723 883365635 1062126062 882599837 822347584 616559090 488544400 770982916 552516302 831090206 322970704 796278593 276231094 410943912 440789443 863708700 627103843 415765565 890565288 427102257 944552947 566658880 549937049 244480217 609966634 246120775 61167035 33628706 126512823 810541995 676004817 995458885 746088245 407260359 953168284 642644869 604852116 130204711 706723382 568615616 122075004 348231249 406372078 769118460 847633168 171271064 14153052 1018230693 305080750 716835326 821586841 219175945 862784431 746531675 474414356 354431884 918965278 22131332 523881988 697520560 326116195 765303309 821260994 946169643 433302919 713976614 912529552 883398910 835230483 243623909 213714091 922176819 52775796 375890304 902054691 624503392 974990173 810669311 4160065 729129159 163295654 687134594 661716898 455269556 840557915 580555337 965207792 84679619 111776012 779969325 51646892 315518804 378359310 902551315 752277540 820406959 508951065 504239735 392014680 699989499 650230408 744592144 91299960 1067306131 202596243 935454121 371836557 133842217 1000575072 230134843 777525853 887843084 935999325 789224649 221209511 180382917 283714402 984499597 154981790 1041558210 331948192 796083797 206405305 214445216 874090046 877078848 192316355 1051618662 358582746 512146107 602069590 1008206429 834389676 49096630 447098474 605865218 232411245 427762639 556839193 388283974 1049351958 768620204 492534996 732431382 644334589 50233778 683066043 878410563 1061298759 288652102 922904060 629977200 1034555641 944094166 508277980 174198798 58559630 914711471 891806757 160024205 652161104 667070111 672950145 255249152 387384075 674361949 403401936 230892599 125297702 685208295 1032029011 575036637 648926177 781505260 484084051 908673419 93293905 66315771 783154876 644509903 407389376 881965449 941949983 942586706 425001952 183302960 490563655 125094725 924677734 67936841 1073682283 747837474 868188332 1055716029 832049403 345873495 488877589 282584997 905630294 120734293 448797287 1003173419 755638384 937771683 870237633 462059248 721744947 94956821 235986075 518969983 38911887 1000218620 241459328 659038153 921928138 412954859 928284401 352973894 191074463 698439851 76486229 140574123 784291931 539869789 540526032 386615226 479988807 276450817 569501041 197476474 748095723 42944128 941720312 973759383 339885263 687315124 477785565 945904418 996465269 543812012 1037313776 402132269 226433328 701463161 299545788 610533320 863352719 593122902 819405758 683688182 740258897 819585469 906524852 261389807 347004659 244209506 1070946769 460229976 775912724 1049853678 1039433126 953179583 355012796 602003399 256697272 909284228 205595214 223013316 841442743 341209724 701148703 813917507 74495237 659921063 690447313 759012570 170467100 1038569705 890326036 556109373 878728931 83889220 170225041 513697757 994073838 290729181 1057196493 773442050 525161305 11409449 259284582 794345715 681444426 1054257131 919602419 682547947 155954516 346183096 634620688 457808193 822153692 844792441 889002351 583554074 721185842 623227145 661899714 1046719596 148269321 773588299 121819440 174094780 731297180 998359615 270577147 1034586769 729117341 684014777 215486363 649926748 188337599 619894398 628636792 454446818 1032486071 846265420 859049262 957235878 511131621 419438266 825983935 1015690510 709454735 285556701 228947551 626824458 380108453 989632437 555656917 486126302 1017850754 1073641018 988023927 845415284 841613704 60970467 189579747 315178487 891408743 286726734 1048754848 883332460 1070546472 63421943 1037576473 147346154 921156876 959728084 711505662 517106462 418233263 593415848 984764787 679253828 411385174 620146629 290482958 1013261099 395455813 419227017 292217144 496598559 549915156 973111538 30816397 962875872 429616520 1073069053 440574064 745493322 694701546 811403977 345559580 226577622 816796080 408952072 154881064 378639339 294799969 734511108 165392721 257535484 84590185 251087238 902558641 284773575 947529113 203659314 533354838 897151362 368168819 429451442 643065942 838209853 524431112 503394875 715360252 677143868 481425238 359963399 289762902 75618966 82440636 444919534 838666890 1071754361 53989414 155458009 1023232968 695593084 712184358 542790137 710260382 1066755737 353659693 49556867 48921667 362715197 944049998 545513030 135345805 647996701 556881530 757610789 398223783 879803459 882447579 606028750 351294659 346041930 639558025 328760680 725533 707628470 57846184 106366649 855450062 874345660 695250153 144635533 477196699 622948753 227314377 894601269 63700556 838503377 971949540 813756610 100765743 823250663 713440038 649593393 734626836 54854655 395475222 790231839 552644402 154718117 140100664 919754145 869463532 196560657 892363564 653594504 600552188 151442633 768774813 290445329 498278524 649556226 215864029 456481516 106362244 448412935 930761880 236156172 42478134 70040674 758958386 1007164833 1016303979 448315960 1062668319 728654493 160829893 736041029 731757193 1003494895 209252040 864873935 649312940 256916614 97352358 865538554 437507821 903507685 677005509 648743738 917495726 760820135 692790908 1060391488 451545593 117063855 414449059 717250800 906814186 1042760537 294397379 509591075 236345178 608605237 584912620 1017711729 441467424 853692845 620414945 213784252 485721784 363136339 16622776 180669611 130762595 831802264 261118066 712854530 117211977 37996028 413919432 1049262628 460916912 896153181 382749068 549158185 295875644 538203829 528221776 740297444 285651201 797489288 490048305 664027170 1042964573 117209135 631073396 369257219 109777821 259843798 840406993 503566953 976310779 21084097 184275713 847812323 406503990 169389947 940578901 241175637 333861492 459474864 743290625 378774128 287386280 237847112 65359012 359460774 158393027 42447111 40186884 998092180 484869156 667268310 141420392 382020085 361777261 646761190 1295783 937411315 285380102 692070469 278187819 667525188 419719313 177945425 422963582 331761203 533936030 680258216 374208353 425791659 199020053 559819040 335902618 563727952 188817404 266056367 260973866 873931996 236003812 129884761 659362112 138938515 455620259 828559794 445298514 114014269 430832836 208065473 350534246 552735734 913026070 786368410 161864217 240779097 893030753 353563550 1063518248 546632376 590234913 275578707 525658969 199709561 952243637 589010418 771518762 825116084 719327849 92995804 334944810 437527948 48442016 92449555 785821714 688287016 845701512 756444774 743112383 515977636 621000667 620956642 359696435 12417535 510088027 586046881 366858679 848202955 169120250 747527948 38983733 292697201 176945700 96598784 542524022 660176957 418684998 668736600 1054668339 1022804139 788296329 496022959 694961680 480672159 577464156 622930936 133265891 249281433 50101511 998781269 586871317 478613582 265735164 65077395 1026863112 601298917 894819936 210651009 136540194 1067401193 334921440 457981331 380737833 395242177 783394069 850372967 427138435 500607973 772392923 297158220 947542341 965808571 248925943 111700193 960924660 288478817 1064243044 565101396 762084488 102598289 460601753 998066886 835669992 439383019 646593073 261651366 502246371 801528440 474423490 128831246 249922614 597097209 259421777 348193463 64836013 620499855 168222622 28608843 693789362 1065919131 760911464 294496775 1068330447 785605611 167001957 933502383 459125580 801837024 835668533 482243877 414209177 908325397 211873450 651775409 431441918 343043196 32071004 883724366 906416782 939778097 88037923 237025038 708043745 394841184 424477643 454285102 519457491 182253170 894326175 952439765 518907635 858826160 174447548 648106948 381998523 930454307 855782418 885579281 941760146 432310639 816987389 402530492 269164367 560535239 999337393 23999226 338420077 342920839 539413890 827998175 614778037 845216023 282246385 838830314 31204017 736615797 27815348 22324434 388886324 1039745134 203494593 506527562 480565147 556228812 408614608 742941288 1038599376 525477484 690536596 913889932 16039115 947724180 902433280 759104923 173441410 569616600 60677429 805555684 930570008 34688035 452753503 509094435 237908449 933871617 740557817 2013596 510803289 652942765 1056616298 661159592 776769503 281875567 199865255 462944560 967595591 827693654 958538990 183342226 466954683 485449504 618981669 943169487 537727512 770621080 279459795 293324344 193621446 468572999 213440647 188365860 1032523141 200701812 1041837006 771315647 257543016 287565916 971402520 497452284 933401435 453451475 367512330 480463608 854921757 841821554 272013762 889065481 171863553 46571283 502435806 145401129 1052267818 651561555 580174974 32707407 134890324 740733704 52648303 339048671 720212887 751279646 698074989 1058209258 737133266 500776897 333569416 758851882 25397985 603157646 795101500 844460582 201195791 898659204 593243422 555655594 618605514 509639626 24297430 226146678 292099240 1047406650 759053371 208522999 1064338222 467005027 243270281 102431076 882301712 1073504949 1067685112 855904036 381585617 41608339 785517276 858638412 534060162 272927252 168377015 401917674 121488895 24079981 577170404 221464861 557645453 786788585 991774308 628287145 198874682 233876743 628719683 482294555 510628089 390727834 242911770 314036049 438523107 56509792 756228096 165069622 878363599 549603382 82270512 855350086 797206644 717731968 695424293 701560997 240110933 770326704 521073365 973910227 168780617 130640691 21206054 135062413 757166874 247524073 787495672 672701978 474126463 5991522 425892037 303762765 133327982 919384050 350918225 659460061 320618376 361009907 1024898015 997905265 192775868 179156071 405426425 273260450 492290487 190371028 676863374 752337879 511564278 424939540 1015013055 192917204 493510330 415692400 557983026 208242325 494269454 886479092 694968670 743187001 64555642 536502830 778748606 820448885 432157570 223838291 233985941 68216225 568151188 804688387 25780736 482839508 1037372322 99391739 168240457 306482120 1002988304 175081338 418579716 39052487 1033105509 36534363 259973998 450876610 2264761 308178628 134666373 929550474 526263777 756243244 657387908 808183213 670645111 537099998 120152085 688260415 931457686 755403101 152279535 110627655 815111836 769512016 360764133 281635273 489129871 346286481 409783809 808658185 731254270 861997510 556522035 670325088 919558386 767872476 328145930 201862580 521918200 579236416 381874688 500917046 963107330 505692206 483378206 184796990 576794095 785983775 390068328 962469486 104905330 456331925 882578958 268226237 325763652 295699555 38134923 271975957 548762889 555860607 671327479 365900668 571230205 151789382 47532213 18539935 537568621 116086886 1058995128 620540133 962426656 422876893 828943743 21036884 537717704 1043200704 598214248 415621793 608828172 885753220 1043749005 499291373 989573056 477376621 642284261 379592643 898059904 324872372 21272767 461438837 54200767 1002183951 478523918 41577485 47612929 139839191 569174417 306114335 232838859 970024063 1064549272 38822856 52110439 898842562 195747471 669084051 926647947 347256092 916744200 625787289 529245830 706210717 422079361 1005013308 641890566 479530721 499482922 469169930 894911919 524624224 1009785473 795283147 390536556 394119137 695483762 7749809 34152046 223658437 489721632 106959166 716320638 1067564244 553239634 181997994 546802552 897520952 1028556108 993698491 616690674 984928099 970467551 797492135 281662034 510649068 209757183 386695663 688752768 914492640 204697786 1072705681 600332903 273523437 1044623270 449583509 659622618 102622001 898517549 799581026 171267828 68433460 33055528 125450210 426430533 817137439 440006843 870141954 432245563 158983023 419664289 560677260 908039317 398449843 215501264 936001047 191497479 351044541 684695800 976570588 743709394 826901782 1071434630 594808966 533944964 73847853 80658377 305162089 482923846 316817291 208718123 656070488 1033579770 154715619 1038130550 355000738 113052475 637075152 221010189 323288531 303540588 996921354 74014128 358329816 548843280 490137714 1007506255 981999871 93493088 440999467 54152005 962568722 1069673762 1023891443 726970443 374761364 806087078 301429221 847066208 262578605 144788029 712261349 898187324 12531473 456842077 122640748 697993752 893384886 755358137 383875281 907696492 274304010 1060760695 112234969 971745169 547009217 732452711 699214989 123381838 704438336 174301120 321828544 862230971 784042125 460853989 121482053 269579542 251566453 912855107 316493050 1007367639 42637169 268010156 935797313 241008227 256465036 455454012 909242739 939508590 1026590787 591701295 437981261 488859949 686733104 948484864 452544127 139897676 31888942 978626448 649979139 581887410 960054966 684873989 177212994 231521372 73604585 111293755 1056382533 10675234 431250746 763642498 650029254 922620178 802669177 366958456 398688839 966760570 411542135 582642829 981163274 520966388 162510964 532511037 171848320 910141889 483254158 741584923 1018415848 741983411 397084920 407230872 176328022 96789261 206368485 250831232 668219307 620904267 1017233233 315874517 541625380 772519704 548264693 859491700 459102538 169658319 567572609 313149116 919704150 678196798 95515245 391113090 89020434 484923150 386653081 311466558 780687908 171772031 441003756 499922423 150828424 987630382 705899943 127394919 221767013 220738716 773285721 1048314982 21097331 823514513 623560627 710707292 39208357 371287677 962571917 30645878 162188168 145502380 207732279 208788355 623104081 719566971 596269984 811550529 152050852 844300683 839959160 822162270 251054670 276912820 1062399862 452371356 465184636 1037960552 521342980 791374022 208581431 734585024 777264477 724502233 584295870 703801674 338018962 6501565 510331110 375889527 71247675 783626645 261141398 228550505 580323460 390609583 10953939 886971782 499565706 99171740 834434151 681000303 749452791 363428325 908444445 8453480 116309409 978330795 550961963 389154218 1010135369 463327755 628172743 400164561 254423372 597332356 251383218 128836414 232695753 712249238 406752321 494364618 537167178 842350860 495896064 208442458 488056596 168249857 215194657 693538785 898107467 161356508 701721749 335265587 832914364 357812889 161804564 801951158 242362044 920918441 254697104 897443478 549264351 410445594 9487127 553013179 1024446935 856279021 74690441 4399853 925819885 116329299 545451211 644152934 549743094 390730919 811509441 908164404 986503767 1001802076 495882148 932186137 909513886 492284931 789629300 996732460 457312519 252792858 481158724 276033681 1060428210 494964836 165862622 708947775 201302555 915434002 885825030 787299389 386603935 990329995 693760296 585461731 660222431 911200044 261612497 580222358 56099568 15115515 530014821 55187074 857829226 611922968 891810183 345579549 555714165 554819928 1025861386 793685620 918840945 343555632 736659514 677058280 534578763 1054373084 824138303 533329680 947876852 905292958 879342722 576994327 492790260 256941053 242532147 1034305780 174061506 284154342 743591059 452926060 885339314 319600386 734861035 200925154 201335401 329386689 352300132 996029871 595648931 70102197 71022516 676229473 538112110 245987052 166995618 1053932815 955984565 751451908 709103993 244531722 25629980 755098161 373853111 333893977 711298191 260093280 196213252 726186309 57001836 321014182 794827227 256502274 598818485 193544621 779019421 195338623 883546803 1050053858 613294170 463393945 549840403 152771817 515240022 277617018 799099242 612058331 234692250 140137441 142217875 38519757 599590589 324277370 900887462 107915853 1073472515 576818965 847779226 720697805 732871091 790771550 1008568271 588489040 399400654 81136852 374547898 604888161 1009628117 757258357 905889334 684792920 123548386 342687848 400078044 326798239 479250619 630293683 652900405 79260668 264069223 1060369509 472976279 203944001 1054998897 725037722 692570179 39280977 896535832 951887221 150606451 130394014 481321202 579985949 707607517 112031713 226966981 965060813 609747283 1067854069 119890372 471555543 442700105 863523678 894789867 1019405558 235325432 272895539 191072937 1009833665 1023262802 862336114 206027053 20410592 215582120 220700162 44247443 929310433 984611727 85280443 337441239 208790692 638060269 866078142 638120043 1050439226 14441431 329474700 329570820 798921523 280524639 1033593921 1058507520 126957126 798741100 390952580 269794339 495087600 427103705 311017448 568027725 201629335 226211102 856971640 247417509 699502777 984993388 659726872 544173260 77937094 803681256 815653232 906656004 4731762 94165231 716262448 994803240 323436601 356005025 929827704 46857323 194939896 264892037 990056219 526714878 767835588 989748965 81837119 56141790 560343378 455506897 174119259 180138209 590523073 72708018 424218782 641459932 843742676 613660293 347055649 845745210 516729730 193536596 496890266 488002995 1005585165 169467279 927977764 148085122 396085861 718454907 670779726 587811559 214858183 643967708 513564329 244344693 723518238 385742762 1018151502 532243373 766221952 780516826 997798779 343373508 672072335 964351391 845813267 670648450 924627314 210156765 930200591 43270972 397426138 914992688 507393397 797941636 851310143 143659487 574928442 510677495 280662885 887965401 1004877936 469011026 445491258 244840714 47079255 455530554 1001903371 134305857 142980931 624535282 877025821 537315210 691642571 52535895 960979138 1071800911 974510223 499671421 472459161 867122834 510755097 558431103 872108958 940903519 42171751 531406466 1065405609 932114660 136418343 150107624 121336793 76921180 417420556 259698749 1001339538 215505046 465879457 787125623 406373967 126035934 821192079 101217040 914297350 793312133 68849556 933615768 518695070 350945924 600249032 835857894 245140931 593404168 977166101 250313252 683041137 900779156 324042445 293907545 818816189 311404139 976698040 755378247 929204430 544366355 63861250 145422740 102336310 200393423 262478190 517792932 1072143932 268561593 236014820 282551115 123210285 657703742 487521829 348516917 199440888 211017174 533011948 1063403797 511845490 967388002 505482122 457687399 502852455 923531250 100916912 1034196853 610065960 185824718 1068782157 847209970 793672698 805874183 1005162979 354788993 441497121 200344928 739264216 119469676 424333664 747419857 680385217 594088527 559491739 266824473 907960183 979174100 586530516 997954791 92152135 161939915 35405482 1049674989 702020055 195644474 41242129 923241634 926473611 462577937 34870380 123443667 640947794 1022380793 308653930 538362722 389812418 133737812 1015390207 289188069 283521740 760943879 802223270 265815415 394562391 1068605392 173435248 824793811 482028669 501101894 247468533 383649762 974046911 145217124 781426659 465925794 429174809 465558528 443657382 539591229 288982563 802721987 1000601860 280682979 252717887 288811367 799494822 937560747 540269745 591471210 687921704 466377425 333578289 472414603 831223630 26483788 266141318 42531769 784261545 660035898 760066824 194136666 518544872 511672917 875353339 472393792 263809216 509647031 760409810 277728529 361583924 540294178 298252040 808758354 493084869 590706947 859599571 641688229 345257233 5240749 755483552 520813620 728274553 295525436 12040698 97166954 1017622212 613315993 913093521 135534735 572220474 138934618 903667995 890483865 898811953 502828715 859322396 621094082 149836487 388664572 74569132 278347110 224158899 221453988 161604466 505462206 72211297 843211104 851239944 1054021711 251076923 992508204 859999770 229541192 618316251 1063867459 376310525 264707254 199142297 875276351 1024434324 305682867 1038352644 549622684 334468790 608153561 30313382 235325251 515208904 767560057 224632978 120284579 652548983 843383155 680220926 650891626 129849358 616671779 876789467 939344051 100271959 471855347 701430360 611880846 952548382 366717049 91962420 974109189 342600224 549715462 995446421 57606271 920204607 166345474 928927727 450236525 818913844 509931977 698297071 636247275 976109094 237173371 987161155 1069085593 400268575 318754446 868969821 133721560 529205107 183685306 449611156 716308470 358704662 65723539 719432814 433009155 949008954 136113045 425391158 787983139 598805695 98410196 535095784 512814197 675067953 733128328 758025923 807671800 1043001776 791751725 471494121 224441035 661203161 501627904 653378475 287043787 334399381 609532215 912202117 658726096 591018192 184328572 416791777 127311080 543159051 924636286 73921003 188509129 41759342 13486696 949243890 951870076 259315960 794074340 95623992 737641360 343693181 587432019 380163074 376896392 636158405 810458498 494300396 886357459 962584435 885383845 1029900704 366246023 303184431 458983317 1004256989 955770741 772755568 226618672 309147715 173633338 779258145 267554588 309151237 199959530 287579945 456465448 511872490 53357110 10504913 582481046 213280469 430933589 192374036 306975824 961435788 955154170 147391939 293224998 26083502 292749584 936460189 941157050 945451266 571835096 1033084059 544476002 161527432 385931629 296930950 842758761 298765645 98334852 188775812 927208700 791002774 598261398 228865843 405943134 368210067 241862112 624959174 24233271 919750753 1050508957 1028740699 879128402 298358328 829229596 233853042 1067053084 657458075 117374216 915102461 874805248 587289003 281042032 765111296 84244147 977350169 217896591 947761298 466034760 71298179 701683072 712772335 526761151 206443720 130296076 1023945047 738731035 413936032 161994115 821059614 750664827 991005553 727127018 160639758 735788185 1030406297 608592971 322762769 782700268 276376717 750202756 111376676 994978638 680342488 263802315 814604051 797018087 887971059 683324223 784363583 547318958 463954992 711174021 833578642 532576275 365314544 1045829792 970404702 93410905 539476379 656492735 504459212 406425076 506392919 852964970 143343595 367548864 324032015 387139515 948409504 1051335356 3687926 102320689 832746754 968612651 723232881 337612483 510250204 689508178 738534894 503450984 148876925 740658972 930511602 559990361 295303832 84726897 5715710 720252411 239716258 276024243 509888788 603838820 785221322 687601167 870918183 397344353 139268213 620787695 243486802 645776419 914910551 111571133 558732064 559970824 361044001 820540612 424087219 649110943 306901829 223319725 322458211 1035155557 734035262 959872627 821209396 1041661799 738767918 1072151368 796183105 780547786 612009801 555262148 139620875 1057413752 761081896 428708573 770092327 876724430 879359201 609185708 302723972 538229125 50364960 1003358631 788966864 618602621 202019029 316948236 712660709 625254867 809193767 525216615 888545125 941757663 621547792 649580725 885894547 992445440 138663614 620954941 688381036 1045205297 642219709 111875088 78720376 547094898 79745314 550733540 86132753 900104405 237982363 1037538449 177990943 916814725 614477782 64053528 1057509154 896545712 841369718 207381369 788732141 1053558810 251407720 969989814 492351995 101523691 826057162 75701900 793454420 984358283 301080587 968646067 724701539 793221434 775297446 924149464 513161493 990727702 971532701 625381715 813413256 527998059 227589750 375506842 287724785 158195353 860378330 172134028 37013067 105469785 449893852 269179383 347895219 719200073 836536051 67858429 467054786 311352828 210048877 667641303 723702552 190783375 587993480 370822110 203831832 446055335 289824672 831171111 859408174 757513098 17379326 340434084 434184345 895194541 1041977742 17940923 720918891 1045676942 702770228 1048770925 626340579 85590908 295499434 905700215 658557760 741730944 255735997 789893903 718415780 1070571350 371860118 713193469 793342935 350835447 405290636 683842693 48278727 967023231 270288662 250690860 85159621 906045879 594438230 525277144 635188434 546272960 107337067 758461708 165599689 870045865 197945140 571033192 877600631 846473659 95325615 701174735 1033340428 504659411 56144253 681905026 94285343 153135553 730805181 1045698513 821139526 642534423 833738285 841330914 659269680 810821008 25912167 149131419 35003407 395845168 124513576 386175903 703908020 416573555 89774240 630384863 470780874 485495021 845465776 900851038 389918551 597718865 173991262 255851581 835578781 817099093 526162457 373212152 660524381 492308178 724642679 656536714 197297171 596522088 751632630 464296214 351685943 902515888 256497588 362462836 930265624 316229255 882659601 436702514 433628917 324343638 481250646 952728418 871091957 18691313 653957351 942679962 280473217 793537242 975816968 717522136 588873304 789065596 399623343 113831625 449212251 545520340 399060340 1050483500 976314503 771997990 893345346 840916361 915764779 683256606 803780282 431823797 792625504 359133935 855204390 542679341 138233719 282325851 797407733 793182457 187479813 290838595 102898853 435996034 439616494 136167729 351642494 1046574822 506819250 262821415 743402446 999244883 417042646 784637155 676207835 338628243 941067404 110712860 1067322295 1064075017 27829131 240929109 203798066 693023311 33787657 897103484 630792955 678131011 627378263 342345549 476183648 835855835 550939711 543232821 421207125 209514019 122726401 476150170 397901660 764792003 458888763 860166186 613588602 625421546 128958292 991166377 329095866 597538603 396241626 724970789 255117916 472750740 110376754 315119661 587672554 1052713639 333189835 332632142 635076512 180732234 561505437 366622735 478309695 502760533 139118354 996341382 640482348 39630935 440118963 708044420 233074590 718225206 967202717 329406011 537954381 387905245 669833514 845262411 327673179 606993152 952496283 499940873 78245553 1063184861 916845577 536470926 681668499 478018594 986314617 882159756 306800166 499527251 342171918 415375971 988497719 203205053 292208233 78668311 253190869 165298624 180644952 668289454 600344588 590803215 564106403 461739997 231324584 921271775 1047692473 133549430 203573086 687734641 222778658 215993119 701877249 919334157 356113792 83895638 289776882 490594501 384070122 10267683 961127939 291938500 128131825 827024653 836828392 1013337195 453458166 340922530 1015898024 335288390 102044338 639565367 293087745 158373005 880741944 617488648 995844432 763050503 895028000 878680042 468054172 226036522 1050491234 17246028 244120799 6295062 227513677 473007723 482382802 208942310 760806602 622656598 244796684 12653151 924920077 174991969 56262283 261010587 151352824 665254568 534370825 319997558 81814947 325478573 459434833 147176683 845458527 983812698 188740284 829468072 596726837 64405078 652311999 560696340 850469362 92721607 126370402 777808755 770823740 298983986 755980130 577724634 42732853 347272895 224597305 284084356 463409940 651707071 37948066 590290240 1025434704 222245788 945726649 443427037 218101624 644950159 280106695 574152601 24114761 635412341 194118501 912694895 514670977 31684610 132869768 512621039 367308965 280489892 286006368 895128309 388592477 306727791 156248448 403283378 287341283 802461394 102201836 383851874 645009566 758387820 1043778958 870595759 411808249 995621583 221358934 21994466 107497732 905479651 989434177 551563020 183432945 935898575 462082017 1012640695 979853625 449837736 536810830 81567402 294520435 756531031 373865222 826400223 500578843 374585314 299305433 1011357305 308632597 598892058 484349062 527811124 317091839 929616162 211883634 650810993 74997393 439067146 946694226 659086709 995545542 255125649 708698410 256456434 189357071 229966405 85163575 268801588 86531694 109612105 377015120 50031892 452111746 717472552 288871020 948302199 572121367 724613026 747770685 210422640 169713498 225174226 116198250 8731003 588642951 351834764 789801025 464972441 40712810 44201647 414630294 15667334 438452410 468135172 985109235 895711472 700148465 419146122 167527442 122804122 758212386 1054671179 553995870 1036819825 143294556 871533625 622646764 709153088 173253626 512010782 836812764 444020144 614297719 333251828 373261491 1013533717 829530381 227764773 653665769 61361121 305876049 792340863 511968757 194632437 206876388 879671550 305977013 442861721 1003404099 482333831 936552443 284392614 170121627 641891822 870361522 491549563 135546275 650332406 534642768 418681328 505065253 460361261 491170174 314951764 1050509873 93642101 803496905 276873478 281229152 596274310 733402232 136305113 572509832 192571203 1024336568 938113768 141270044 206812599 119522459 339937139 200388275 460634222 131913756 658558937 645933868 665089660 226149904 393333521 406685774 546530825 422917011 121841356 519931274 462055230 249748411 262537638 20735507 994851978 777985217 17375192 620386441 385805281 462103474 468089480 161811170 672030122 482005788 160045605 630213538 290933729 188965201 588258080 1062817550 9119556 381449754 17404377 958413653 370057759 84991151 525289905 49737422 438283216 643371842 910999477 434460778 286207546 402503073 1001742002 822771301 869970947 132679603 598973014 169073742 219197486 600123122 77317269 545086466 927985318 217434104 682934636 521276676 886008425 179806246 206274861 178813539 973442305 1063357319 626880747 882124683 368071959 127979260 173176082 76657674 708766082 949200636 701067916 981046291 911499417 361778354 288436269 945981553 1016470456 590356079 192668755 1051979117 681995730 688450316 861700758 809144991 313095312 627935171 178093051 631041608 1042574550 517795560 1031134379 740068338 186283946 346385948 322873934 478883765 1018860692 682506969 821710290 551488077 13581478 242032746 767032094 39962015 409976425 832251491 171111902 494379220 249088600 34107862 690736269 414422647 434827663 905101973 198250842 632731723 742571501 245813252 384107262 322210556 112683838 108158825 390165089 340387439 832373342 715295489 455938822 439522713 144330833 732964678 998485326 312777757 714534013 550749608 747616502 99988106 545551366 996227496 1014822548 937883203 691562140 257114257 886798129 602103922 1067948422 970546914 1021181301 481041773 617248756 312447883 23053963 952563549 677106983 654901783 263402110 408225729 876224308 247643229 854050518 1028602548 265504402 725980159 600863511 849496649 840553560 579119062 605513259 623669087 762871991 258872196 250887207 649130330 78553114 84807081 530628404 614700735 836172708 392408743 142771726 268940256 732554908 1060058567 865958299 563050336 300778431 789631718 261073511 412407369 50908627 16099168 332792417 293571734 375694095 4998708 533088454 760176103 4946046 396528121 143911852 702564288 430595339 749472333 78134300 543743317 403307994 326336082 662114652 1052760685 390811165 571465318 672965190 455132139 703886616 220219432 237038482 421516091 60151325 841506643 631021761 371578434 396959439 1018954997 230836812 741933438 85369584 190551829 824310257 826008736 731128885 1518193 744762972 152888300 997502384 760197435 840912831 896304266 447635541 776297825 766424752 808344104 119571453 240507962 823776726 154369283 1043512664 845861756 789823722 545619570 188966144 475434927 816236776 917817760 925196068 1030486785 17431590 76877444 662064754 503669964 250249762 798314306 354325834 662244432 680608708 576404488 31005155 275455411 276606931 359443430 974346740 760057654 518706111 169373130 565109268 655584704 765144042 611837416 51130616 1003625036 768595678 29535014 123774098 923754734 302317239 400835136 46206423 995561556 381289378 883953620 955509215 550556509 263228437 963306917 71989773 845873088 981774869 209136163 937352199 835316493 458215240 977879761 1022138978 732108646 610624013 503099412 1022950577 531189987 999211406 368042820 448057211 642708255 533641739 833349661 505098153 1018107809 604938048 543534875 135247957 653911541 1031314617 1031224013 886726974 1023271450 161237072 502724552 450825670 201197411 42362055 859491407 130958593 866966136 673057704 546289674 327600626 1009973905 547722120 210159606 323649033 802684519 956306988 534305422 427363656 241638480 478300870 121450328 753151033 771503862 32383183 879660670 661689905 257974504 315739584 135640855 716673472 305282926 747041839 676376462 469080015 1031211032 427979744 921179455 776900928 140454001 830117273 507229191 539751703 1053761370 621120347 484886526 1008895524 404659607 564914907 983987922 906504988 607599 330306719 890332329 564982308 464237043 47803121 1044025261 225736066 70854066 966414414 196546170 783103340 771326442 1069454641 842092081 254184864 295158520 661980119 164747296 128151248 368707610 301588459 99362237 621424606 1034029900 927458092 37534640 568272623 794875740 870373709 541632309 952387056 899086366 941098130 470708902 950103621 352469203 460290132 819576074 986952338 671419568 100593491 634272621 956645714 803326192 385743082 407699797 749208048 189158893 314891114 359358012 160037591 9021687 422120113 896687382 914466975 397899041 963782923 1069837096 68059342 266455646 712529603 368388049 546141974 135691892 411814099 858197229 704229246 460257219 648618623 175270349 590411047 427986633 619711598 588772356 133234301 432113641 126860152 689008104 618089137 931886664 559857320 268634955 736167659 525175933 1053923622 375263417 487650716 856005378 241476477 844873797 239567802 49423411 342040309 156481509 440297507 842770397 458224325 75150902 631810852 590184989 631535437 611423357 537880301 373316380 392152427 147874395 425831968 429329000 103418806 141013387 59786486 1073057757 55679582 718639494 939135231 1518109 74686661 1008599516 240008955 238367313 15363125 46854063 446509704 869313821 537651830 985452459 156152877 17599336 461116127 150176590 812029271 377912235 262604761 394650530 288299436 633359314 708517062 826898809 481327202 626943400 874111833 707773034 710624745 476685248 977581029 806906101 997471303 843438055 451125978 819484530 790005619 300206520 874846906 526613350 239004262 931977730 540306889 167318333 319715498 604395925 814568068 1048346268 515129887 23711115 474247896 661990996 920472581 952111838 656423593 887060648 611030515 672461560 356610552 806392447 482325221 881161562 692758716 354073067 557130124 971231994 543831940 363064882 19586013 1038257042 747771450 198189803 526753339 97691302 684715417 423074022 706992943 289582468 754311344 762047649 930398918 730718369 579369967 515839388 605879088 260917664 798621497 526873828 545546251 523426831 37532608 536496571 419847419 668707779 679434367 131360263 761667155 907425557 422264839 338687036 180241356 151726552 1070112162 402532527 838246771 732279031 391420595 435274641 661147881 892761946 912222685 579614245 925772211 883534427 835277606 494363240 693734727 272887990 108034373 555900309 262565917 198433649 829087208 1007504506 801030614 843260375 1044706941 852124824 226310268 26759965 490056972 538706292 928893764 747406464 156385702 311677090 415860419 860673576 775117489 203859125 667069929 56412636 495954990 1066034125 67229754 928832788 324654429 182429062 374055912 1069248668 726410038 52863362 1049268155 783839880 864876760 752526737 141908558 584865219 161826830 993647548 818470876 2144883 983701232 84538180 60926421 773425616 795674207 1055618651 709185224 680202852 111003159 632161117 988357172 301959217 500516512 354169134 645025712 821283056 464778939 597053853 508531357 806119611 614276883 940324973 890185721 629383819 283647397 215035149 870200924 213191766 692648126 628909926 940153807 254232075 627610967 157727448 904916696 154937091 1058507948 882077931 772901791 90433085 95558696 268618639 1030102216 949141126 105560613 153791506 892772325 27577197 722786811 703655180 696825559 623921006 126926213 182092261 891211022 1050715414 1057626599 487779443 346340666 455978825 168427991 691822016 1022797026 766840942 930384852 242499370 275884988 892716790 591583008 608173994 832844252 782999857 375128261 546708034 357766247 918795999 873239174 309233582 812330545 1005062161 602970154 209053060 673012103 1014418524 570325057 104446675 634519154 356508802 675468234 284360524 491205754 680477645 486453716 1019752772 222077181 593805877 984136133 850425722 842847613 621906370 530894951 893812140 684402244 486754852 127677459 725416712 1008847989 115973542 977792571 1068036482 304370565 855153102 95388597 693606652 180469635 358878419 707749381 291853724 402635883 825382444 733681184 657772085 91533606 75300027 947192450 767464813 797322016 61524927 653732074 310861615 457352102 675673754 1025692403 509503379 980239862 58519648 265279708 793403727 161820512 142987532 166470346 107431866 394464825 355502702 851479056 204613053 667088855 247777008 665641985 153789111 684280494 1051834996 284527058 382890999 948911796 981525811 399819043 701827645 429407616 483491990 380047693 585351736 375703205 414333769 742889840 581146512 758172325 722833196 315756478 704907401 5683267 448830048 420078435 785799732 1051419678 452953116 570356316 914377252 25060395 27433740 364474312 959182796 150979723 473985945 939231136 464021150 230595128 690181269 274354099 268126697 171189556 550392142 355098357 444695571 754398921 838760690 790107069 939958650 800254876 201654589 816527195 835260395 83175054 555358905 401565072 1017697463 276461411 154891245 599623978 658603189 720825606 409001790 208910878 36973229 836608704 582009265 485542544 625850434 758547640 140471753 501298116 410619127 574153445 375881916 729090971 1039291366 271258172 786563456 635026640 799063856 688186049 171592134 942578937 560680789 263230077 925535208 137060385 896998699 176439403 891385657 189771428 718704243 94219147 533864835 670173536 227328368 660133468 126717089 583046596 703497166 535996523 343060773 465444143 957772907 785517643 32178829 644052863 392316918 545915616 191110898 687220176 568772699 396926818 503638022 344183376 950893775 1037955821 163923039 403681137 662737867 1065587613 360636679 797856730 879002461 1020507317 413920654 975855647 410713454 541448869 355993049 149504116 94484698 634235097 156982463 980697825 960260395 595472152 87003503 106164456 77261506 1044792741 985984345 221664320 1033018576 960264710 638924318 501728454 89353513 742501493 719072454 766456092 123591631 431299099 567204961 485286664 108788766 695845993 814389604 819453319 480425909 923190587 913400452 459157620 572457576 841958832 702211183 143021592 608722123 852159658 974695687 444768260 543766286 59930512 170740830 463689413 393822120 311298500 1054616718 413259594 1017649831 563800738 836959790 652195154 916873197 412458554 144308031 1043863328 911008625 191017198 460863103 508011547 309984811 640431243 491542245 718392414 835048664 754950329 311996787 407425854 983111818 236055516 425825222 233728106 1006780044 1020306557 860323296 332108871 324921234 990425635 977799526 184351191 838916793 52898074 872819785 839327286 810804675 658913324 27723890 41662620 375099953 30109968 183980353 671856252 1007951116 283267929 314719154 791229924 543049817 983080835 663484709 155324337 104804156 843153802 1009434571 130733572 1038294767 300822947 681187206 378493244 882071715 5614470 15977701 947091189 333471340 502212140 941705693 199767137 879037541 215802799 372559299 59547157 502989927 106880288 584856671 232512956 90803178 569079549 689312189 761339386 967359012 895163271 126922882 683742756 34586118 471456277 730925531 968448243 461371569 456481172 926266761 1070847509 770804008 273484656 924253153 487561470 684378784 706855459 277892632 572413643 774247217 108175606 190918138 746400887 890147186 48930762 915222598 486094080 375299371 871723406 500820194 837791971 798036277 105236837 139185623 204969690 652168277 540819338 1014140338 884674839 1013631270 624285020 1032068123 567099326 534392494 611110517 838939448 745138747 834221973 706573501 174120751 249344019 419179548 479752042 450828130 402179237 909460419 157482999 141679404 734934731 870418977 809491854 164785874 610771640 432807398 547687102 787256575 372854914 647300343 119209384 724014849 881565983 1037621002 146167017 737701181 543248305 878685042 523079581 771949602 78153802 449637588 95148002 26647711 460790304 257595491 152974578 425618692 875113347 927344565 680469913 928256629 985807259 776561637 176642741 698135106 629416672 307542629 1067310968 1012389418 450351062 944472385 264114892 133814372 1067333927 973899197 595756451 590398754 1023283524 663609299 206323335 963845207 386265722 812140004 192031336 440726043 912165310 847603540 537641010 411151528 440486519 756266889 494304872 625283519 365733772 771168651 206262717 787832472 947277511 305817079 424334786 453838566 619696939 230026139 645040820 613138413 41608524 930304431 406398396 669321826 743129848 621824053 1057160340 865130030 954482543 564419345 521154743 16836642 901955348 334491322 93755161 754856654 808918720 872738287 743499216 799852125 504110779 887546552 896701056 610503027 969912370 459648626 651862091 744646119 126504728 375084894 107527095 482336921 156636865 44962393 569730688 150861392 596002019 559024071 635428340 429062680 315070504 589228584 955305483 250189588 472377141 315453569 189193332 849812318 939769614 973609078 21989337 1029178045 514945816 476454673 452716159 107521880 331429733 253410697 614078673 709966444 107727345 126191403 199507789 811377475 291519747 941831021 269509166 217026927 352851472 54054456 672604694 329029975 291489747 746410197 841420424 215874255 1048010482 50540066 522206722 353162390 320501129 141521229 6840605 661328078 133763877 379572286 908939554 742240781 202439917 520416289 1071434008 491711563 545587545 144329107 43796631 254917283 813530436 699065244 170182808 233462733 250117571 100025721 86199259 333616790 999939582 514119631 649417478 818573817 897958365 879862131 788787997 413968483 742068150 667970669 500423842 197932639 720342655 55841240 641393627 722653738 315215355 69682336 734218327 65744121 66638643 101973878 729557384 539201074 912544401 81735096 332520505 644935319 916807292 472718348 156251699 539099349 544379279 458414579 1035854870 573257041 899735060 393085964 1073651593 406241 983005117 100810252 236899517 562218913 815757387 833071724 15286101 255205740 285517753 61860049 155215905 933485977 931437198 577088569 1057376656 489686811 915748315 481374144 166473331 330670031 961028482 93507681 478858071 941896525 795982195 31251412 885896566 913378777 52073976 1052045742 32022452 260218858 825016919 224937238 29384466 569062214 701608540 292268235 968710959 415026076 1017101217 354000622 790592204 590621803 383934076 753895024 193170791 48732069 125794538 444108148 3809843 389118761 1064926530 917875830 466914137 304123780 1064250407 1068878150 1013738178 1051210030 880905215 86731262 334907533 187190040 45527277 593201005 875357892 606891329 411205277 256836624 847782771 795046578 445640299 73562641 339709886 354544856 894764893 714048143 765211009 945889112 375244555 697549405 367688727 1054772896 1027953676 28277237 47695826 1050467322 930588621 452580739 23043654 64533433 143313774 603475500 1066443879 972937787 271090491 164199056 506755502 799934582 352298061 309776589 770286394 292920000 529636883 865152833 614978346 296421611 1015990040 763927109 283601895 257953025 586091971 854680809 923221701 542845153 404023604 142800853 207647249 456910241 1034344594 980536260 536904770 923830461 235109478 799546961 145756174 103482121 702640979 778021770 994142225 1022759212 448764294 203614362 759498884 29870207 145205503 81939250 113869853 713500211 70065626 483591503 368916596 441603917 477129236 580812252 797034807 82963702 996910751 965704290 909330756 685733043 407087436 108509956 736802693 762860980 341488794 388521420 570782395 106613098 59372351 368851630 925062945 903327721 1042337232 667032759 472295833 826723315 377338097 851924128 757564440 1027705836 464943158 52067676 786334167 965837911 268834023 886111776 172588470 716343755 222840829 891279345 882803473 933701690 356139232 526639072 550007650 746603992 722180577 181767345 1064316460 601251640 82770433 980522578 32579379 1017262708 208337856 301275359 155219245 446100985 914439391 912255581 881721528 752877493 200031557 583806520 424262415 87144653 167239647 935015225 172095576 621629747 716649192 251347563 456895742 193227555 23740150 297213837 614498707 903196152 1050636802 814425592 29619337 963132056 1061219045 186894278 523314106 1012637416 799340719 730375596 868653757 102803001 441010665 72337868 25879947 243458051 817205051 949221230 556840468 252879586 858939068 718499502 389260154 156557042 626867861 297183082 746955151 1061291587 1062635767 791074835 646084842 700241036 502177876 3355431 521508352 180243907 624564405 535180957 489823294 1009920598 882949677 167638940 492170117 213861254 68753747 195709610 242494005 799065406 857286524 40301293 179531668 805744112 668767919 1023497468 368590640 647091718 400799256 900870641 83603282 862523139 588970587 1002493855 274172035 853952195 952450558 395872803 186518734 314080169 1067809947 309645065 273658121 691943173 704469092 212802438 106429189 230385973 999575832 999416220 852199998 510940716 517417061 471450137 709090351 131129293 988705110 905813816 472176069 366801798 972877888 460353795 565518059 379828096 205865400 612578039 292845859 768407523 386365623 139418799 274972535 835072966 185371034 122313727 68890320 819699562 498229631 979656979 322158445 931416743 16025941 404057006 952177493 478104533 133739989 181689224 442992717 895686424 73783250 965787587 246281284 786854820 718853849 825837913 658329494 527363003 654854258 751379731 178347286 209936337 57552627 823123866 9683858 787211568 476216996 848271919 659213891 955433863 655687122 319471792 1027282463 620992215 890667004 804236811 685006869 1012720773 49234141 859127445 149106971 974197745 392695241 306255713 99639877 625572437 598459309 199959284 1042714793 913472917 928194781 659112210 687781707 457753431 201720649 353017821 335190131 611091849 297880842 813552765 1034136907 1071955090 371011818 968535088 500544565 851936075 762947830 584933960 985276357 636906705 767133246 493266750 176116665 555595011 398675021 403354085 107124337 449114905 683088231 488056243 210550583 970807112 848030700 430455045 823329383 1073212389 1058975780 221519114 670538721 731706856 134283034 65969001 604061742 29528830 374104669 410465563 861848376 514283185 211242678 546759502 956583938 683808531 993959117 695542958 1038621233 821324439 160126361 661213208 692534320 178779068 487512287 977755475 684833396 630854129 75921150 140898900 530919606 128811958 905186660 111528419 378095602 421326978 117645255 886248014 839730582 1034105616 172859525 739914938 789916700 972371396 559311286 164196358 1047449711 796635539 832220195 880216284 276740296 59667702 895578372 87765934 689883460 132373911 1019644418 243022460 96912198 908198967 61852944 157397100 683556764 120593044 811153079 886292474 394451732 46123385 931187890 811305018 71040157 471179291 968998574 483064026 15673190 163463555 760657000 492512367 485416657 943336235 702639976 46200086 738097619 327513469 604477458 871532454 755512346 155490213 621604175 696718723 696797093 178211669 219098 253994554 407891413 206784756 686549041 1067575402 570018189 273468868 48555847 1036426260 980799693 865445108 696188672 489811237 125149419 90757997 362004430 392376145 459449796 326413326 6508873 456186672 770575473 970458979 619030334 704812522 746681550 66570314 1037734677 34899771 301319327 959732138 962660482 212025397 206255942 21558462 775252239 345072560 680211480 1019921867 243897052 141101168 388207399 798496038 1072670621 171771970 572400705 20711070 943563554 983891032 202942108 771198080 695309764 143593859 116362681 671948989 252412678 193527253 1009934724 224365233 261942174 922031702 359879826 738690984 568303760 7927392 1041556763 86060822 929971762 737246586 891999852 795426413 907559670 350580695 383942491 54958129 368294114 337619855 698881510 410951044 363313176 371101361 331020284 993893688 298963377 201932654 348511957 698170143 113463124 283030173 566489377 452910542 760981011 624375676 545976592 244089666 489867206 1067120885 614444879 293170835 137765252 868840813 765952977 828680613 6965138 828450755 40648172 890253444 968528639 72933478 392488380 651574369 739244796 889741484 1063143552 214980098 210420020 725372607 42211615 520865132 942553786 232305629 84541140 209590006 247944038 1019730959 1033841615 275785192 911417357 180988572 435348235 239307115 315167999 96923658 807094279 922143779 127561141 800747668 731464970 1013611000 17218049 117406683 869241343 991989347 555117440 962900406 133788886 634584122 868328856 685800942 121941429 307199631 414674314 663923518 237210366 875721089 18167501 48789769 698756231 759954143 645338555 15056846 893849237 789001614 721654538 427900844 257701974 482020239 798157065 626367819 52585837 889311339 261386048 492438453 667220799 98455773 45620791 362462065 1044995899 15957472 549336659 260826638 755793061 114957473 998373326 250014875 164779588 699731231 450392039 411307706 726956063 89825123 186109138 549598829 1019803237 540295056 880575823 15186377 659851789 205938654 23337195 408111684 622211082 462440490 447923245 570964624 686463098 677582508 395957440 23342156 786317310 1006844665 573021401 717077414 319041428 118090538 1026578091 1020362299 914731651 713009783 33291580 238486967 290167176 417107682 795851257 205220760 561136 77564370 934894781 427017573 219442427 150440408 364377815 818946071 348650655 1057905653 841003079 684437158 676887938 738544611 510595406 304484092 617533432 961778189 854157982 707010740 251928385 924164689 608417488 433089134 408172842 12017324 35560310 236314035 772069715 551869473 863183959 389563563 476955285 672148404 908321978 437132128 392267656 681748860 723257518 974123456 277750287 155653741 301003894 301869796 936103954 987885152 932831557 288218144 412007831 850129521 138813569 232429041 392558970 933016769 732811971 661058255 627012999 89949165 884779483 1022117801 282224131 632478144 725678419 985941127 737001054 881347816 557698796 221430192 965943635 656417602 1036482847 1034690461 480927516 734452196 704972836 471252941 596596362 1060215717 343129338 439829979 862989883 551204022 72731681 923071019 327380881 847522553 989914619 4946547 735130114 747253643 1052655476 123117 50055203 850367331 853693260 615402966 147550338 139809376 1072701946 80096919 562820671 341065007 835272678 104853091 732698431 259686692 937961145 777086955 999954375 100529370 52427895 568125983 937582168 993064387 878174774 89778733 481843289 621542558 782151280 950560205 556720216 39310487 849440916 1059642664 965379091 246229633 149069675 239729404 59087012 660184486 1017659825 555099198 924591053 724523724 908148974 141627510 445914474 1039689932 234558885 732830576 572210893 261585412 256806474 308498035 1072942388 91555629 740945664 253958704 734415641 297076474 10978111 199281239 847804963 968820856 801901464 315923161 573808181 74128266 766461656 470302488 219018711 831061739 85239754 241780128 655871552 1060680394 906630800 18761859 128884713 231841865 19281931 461252444 142638549 592914236 610586495 619302381 503451733 847335598 287780060 866477126 353598265 892081806 307364274 490099012 388817195 35154855 191767263 100061511 842164403 718117740 762077804 230147251 600379165 936852808 667445042 998429608 688089587 1022074526 206528482 714376809 677181904 675130098 550852008 92877422 284367302 128931100 849445699 858800753 992569398 187467044 1005191155 582862707 986715316 838270643 465654159 308531300 885111158 188895548 49138785 414753932 682233937 362699763 797445167 660884449 650428499 642930337 335278836 171780677 773810976 703162908 1072242738 739424623 436991529 775081281 33046244 945390292 513488304 397188588 943322602 768695327 212419746 934247240 169918979 962548021 41491696 586065971 165909841 801618153 714247565 900761047 295494422 565844683 650466699 7379363 662835518 647992087 356638147 549350629 338447170 376401062 384961204 577002624 664124636 166234756 275524318 252690459 549493014 216392357 214407227 479538171 649817623 504732127 685061133 696841413 548974392 485704924 276805773 490510162 1004432481 1011018434 528334958 745542370 889204825 59323826 566350615 866188248 442683751 510970429 167581287 1054596047 957629712 879289678 31226733 521609960 679758414 39370293 617063997 242979607 383249482 829616642 52506626 457141501 725710575 408821535 657875352 174836159 135881297 590242850 666438057 714752605 754108493 931840276 920054170 430654886 59547491 937852106 898598758 485743998 902543160 838415250 992027267 830105577 147195333 711532783 529275793 33512388 398945236 204127783 684421760 976084417 651089806 650040427 574961170 622017498 431832084 445864794 1007477976 258191668 675159650 940678654 23112727 268938577 334296589 1003375916 766348281 669388119 468907509 387929370 976847136 735845978 273674955 794063710 330113927 313617903 421799351 54631310 806610750 717614372 11458674 371296867 334621084 25933455 1005272 1061730406 226613791 8693335 839824480 17195155 192552433 560257216 776402527 308988234 673052076 841507179 164769784 149156201 653632231 768195145 30855244 434256935 616152575 866216207 551042260 681254680 927117808 87295796 1008684286 473254687 1040532166 521195712 84109749 594064257 503715853 714382803 512055476 959047659 269492160 1056375330 763236695 516428980 519445940 1053560802 180862359 80915032 55995728 21182808 893383986 546246006 640382805 1033121692 403470190 949013021 269995871 962628699 335181490 316490612 279470254 849058169 227849573 900236080 555715682 695633804 891880887 897731108 580832602 1037714902 674710030 121370394 119252730 639846760 558847393 420058290 269337808 525354044 510885739 531394570 690304666 691263880 116796470 395965107 844078175 453481661 694978721 989967861 448626473 739662345 3930870 125418010 424561769 990134496 581520194 914555491 413318688 1008674927 560557865 410857118 181944897 293667284 430238631 674318672 23642097 706918657 678533011 169426845 592602542 91210825 131436863 715412688 589079023 971406682 224948815 42531325 149028560 227588304 751898634 372570896 655947666 321481043 339552867 213295774 480411518 163075168 100658091 629712131 352524884 108235973 196391605 626807797 585622888 265763134 282340033 567107135 879877828 188611004 1067953406 120118244 345223870 669564359 602696974 81592353 1065989259 803928186 77535610 421458206 1027512738 388064582 451506834 650973730 613422880 654534196 651041028 569189879 595712075 236075072 24572901 149036495 347323138 117904540 970393942 697368295 989955611 551597436 7546210 198981007 751212098 662816225 211081022 713877744 292582739 794864769 1048102201 444433562 652586339 109579180 106183571 123586612 302781003 1009316905 608244902 423899096 12665305 525236465 301330937 227591351 416432259 316373112 981637047 379612865 769020636 936148644 154735156 79088884 374265468 390296241 331037704 1051460108 157641365 594432469 286140030 1045484679 594051921 767103666 918364917 703347744 767789806 386184106 918267401 1003564155 951782299 948076166 222239361 594962968 535878885 183122111 47986531 979539536 491736898 760706467 99653649 43743323 531419153 650237385 571763786 334547422 634779977 511527516 889339364 813086554 963301311 1054246471 499355128 816513532 754093190 67559930 965977694 371379563 402697150 285936807 1034192323 519848609 1070738192 265974296 250439155 30508924 959919164 269535468 117085673 352128216 432362104 514714977 311328267 431919063 688284524 1029585213 591705908 672460209 860557730 23556991 917091292 631649098 459245723 124908186 92843258 480954167 712270714 855842675 811284700 703570077 814487792 165363679 568131592 730896550 470356225 868284842 638835643 274383907 647797055 700067129 846065050 91721328 59437023 271102230 473655281 789552197 757779583 792463229 867125230 386114632 93855445 147362663 676649528 465319531 714877995 958489884 730560646 658354774 4152343 6246446 820198699 237527811 248344995 226776464 751917828 998659942 803165501 810004173 895342189 332688121 573473273 408810 126417360 406475280 430667355 398877297 555825583 1056507591 120265336 897818796 807007070 1039591535 471590691 823272525 928711998 295874804 401826590 396207322 795811326 887826867 698780421 397821441 415772677 508180483 91314971 247746094 537704051 471107334 980736324 1021785662 917222017 331255123 549576370 125444721 897501001 389233563 786418972 125486376 219432707 374663513 352658193 326805653 507367102 746100049 705112766 538051331 378405189 684634526 959603027 801991359 52616904 1009194219 568198782 954713679 64767018 696098235 688041056 1031896655 217147116 418077659 1036834556 895867125 151183620 702031113 1058873753 1057262001 292553099 1589936 430233466 539284029 873528839 298987060 744169598 147127826 92278598 997162494 923728527 804473011 562950355 630842791 243782914 158744042 947792770 760280615 198645996 1030082333 64072442 485942071 250760614 633375030 757755688 296386071 451197790 176121236 175077559 736056698 999484437 324409807 277524476 320484939 952998747 158923453 861884872 781877943 482361333 431412193 876298592 519655493 41142466 34947738 321983795 283892473 776306890 560386614 896932567 124379662 838015748 103658417 1060829664 356559961 822886925 406366413 432533530 690244838 1031557784 374693745 201426012 723062923 471388006 857796405 456381186 562165921 194799751 706014331 615737059 359716929 671129668 62222161 326592518 696827864 456970772 421105385 700603405 261721765 1000284617 913657074 147770779 1005611724 854348407 620309734 1014989583 268698432 364892436 132797384 578576488 170982131 510689351 851352313 932357934 976337589 394431269 432111021 965896514 361098796 394964223 249703723 957511533 922473623 250151735 186053104 988838474 777628088 781677179 363050882 610811887 28652322 998234003 430596266 510226375 167118226 1042606951 591012113 103436226 870146369 902120067 615591986 851586355 1034920381 313624835 782002167 151670353 245953760 519176101 883471351 737063691 243091377 227322471 646826631 154488707 490569029 1054086575 410019607 534038479 965429395 716829027 545514701 1009949636 408243433 1015651784 105040626 492797595 464221453 722711719 198807014 952845925 589638679 662386059 895199417 672580769 1017426731 19343684 474750592 530557358 248388300 758242701 724785432 185321601 306222318 138573226 822026886 813208706 566143495 885690510 628519315 335779826 361546811 250658191 781560881 223319947 118674706 438491417 786582189 580202411 250485767 145353225 277290924 684176112 952513744 410688548 299057412 929255434 446627124 640301923 869407003 53581186 147563212 834274400 329138851 1032945740 821317255 449049743 811521592 691425310 505931027 618154687 277345679 275291037 297330187 388535159 111735337 720246143 66399408 613252869 50414355 1329676 246065360 164654833 657437811 345396925 399774165 223781038 531250501 492670293 502339893 745867655 787336725 262460568 629504701 193999973 152611439 680039554 161974186 17089639 383102070 49159616 50320587 259843105 167045223 648207735 118231968 1047458527 134723523 171148983 373836667 20447062 369268812 283877070 611789386 25243236 626679638 254824770 740270033 992538644 1273092 389611795 771533813 596997623 1029497706 853302642 1000928672 337161270 411856942 831813505 959455322 71315974 164938860 319767718 179808864 811429686 816401603 877896157 217285910 844479126 1012504678 529764928 359052925 141909699 1049566221 1008642361 677585409 655752068 828599390 592886874 887287171 930326534 1061938612 402510409 407817355 576551167 579247120 315684507 262390509 312109759 167250470 570331809 20383561 928299616 302021311 933938895 588898422 216628064 584959014 1072039214 703544674 132718682 393609952 385653881 838096457 708638227 641927337 975695947 1014230546 873060850 810280440 380716483 204286935 600165075 196107762 319994135 829298940 359534443 777155152 481389659 829235820 47635425 506009481 590091496 94649221 783532981 605778553 472969907 271030879 56383142 588566555 924514821 993645829 741256736 15248305 40415822 535901843 573151734 406936489 654805806 869564068 602177897 755017099 955340386 625718168 347417942 922341709 414168973 997604404 725267482 709538708 672493375 824644723 826543831 797164100 621794198 155135913 875517311 833906632 41268719 555156151 451818606 403584519 285627780 817953358 978302834 484691373 484377738 804906843 401401080 212702021 501764383 557207246 588999587 310975748 920614928 733104983 604249837 421066095 422998704 29582287 956097781 422398629 13732896 11228907 899956019 36811326 281151034 76843561 885243624 174019132 111877199 472151879 333634449 737427743 114101783 428605082 5125848 394449524 854101114 805125070 1042448260 494395054 87900287 99584429 329566494 468263802 481769320 361214309 871380989 342162969 484839369 854325711 19920859 872292816 3438130 110417095 49328915 145247835 649266187 693727663 775995432 532140452 947473606 60503732 269307931 696372240 134652264 255798384 34781625 861214905 243316577 70490231 990726865 768350727 462265639 980262582 264509463 422725006 725503553 959644765 1022602013 528663109 136916630 1053433566 471555705 713229777 620515541 473784209 925637248 256374716 176937143 964867956 673500316 271541860 307840040 893783736 343354795 878836098 904885866 552476767 441526415 606058349 721352958 247703642 882414068 17828501 878648730 1045434567 493662460 596342914 391657725 628085378 256175517 492093870 369885125 62594 296458203 572319834 811195677 749255384 450474610 28894141 365793456 836329643 978232305 1014738663 326820747 840078143 279702131 617642822 1018132283 371420667 86286101 456885011 379207498 770246995 243132571 430864886 438736252 1047676484 92700888 387519660 92431237 890734786 485167963 908378838 205187101 378026736 262789439 728457749 404691406 1063311092 953283110 530405446 216274960 583464537 755022819 810227353 622116688 259331843 557818564 301656390 1073167980 413057102 89366888 722611836 207545398 968135923 328284240 285331460 1070967909 289389903 971657965 532616722 279206550 358842194 924577397 745744257 678890855 976681540 1070772290 765487247 204015327 457859558 441276397 561333016 323825992 303661038 962525224 500287390 590888998 829295672 112357545 1006657159 984743257 1064658121 9082530 401302742 984194053 509742968 345776107 778779653 29299775 757753438 1029510236 10728966 987192186 280726631 481979427 108186924 210390593 880697716 142377144 424552833 438932591 427924437 205707402 831051336 338243670 664774021 1032942630 348910846 1021512740 473965351 698809633 713129162 348715763 319911679 828432831 161564248 161660904 275522537 248454017 859959142 230532481 813288504 173805760 964992629 77671165 481596978 365432961 430955284 143270588 110543142 520237066 1809114 703988278 248505588 395504268 639656588 610421256 204082006 58409831 823692816 867573857 338062785 188306656 834552368 79458947 901906652 834252394 880940916 904279406 303772226 670957939 890753598 333147598 630609312 1032730250 773583735 584975713 797557169 763171006 130630342 137479898 604820116 16741530 870777091 264984759 413609962 225511834 631627658 1037891820 683544462 22691911 540038060 870059835 839424853 721776841 868117558 312332459 682208499 131418882 262182583 124043138 623580543 882762900 29983502 744704069 547645917 654458021 305364663 119891070 523981098 191487372 725545814 152270296 24076101 953921020 823724583 165618730 476887291 814331140 533977083 731366371 811140849 285366866 540224030 1060724092 361136769 740954918 911764573 1006114882 1043967465 242562567 401334039 550929237 778262931 333976622 777390083 500103675 615894429 782886196 157120093 989515089 865302353 207863508 595451369 64849859 146331743 334843153 654375611 920361639 563376689 557388612 1013042853 315001723 1031671757 227175501 797201434 555728746 546892923 599126383 730956970 980005470 565277592 412833565 116343692 870976951 873598282 74652477 895711317 1023812510 715132672 543314430 297656686 845538197 738374877 189157907 403226366 771301820 304853780 455505793 610214942 1042119218 149368698 534955111 795015039 1025768353 613509427 762110471 998659486 708661148 77428511 229340956 572396369 140467346 74046276 992528874 881959870 586297152 74509854 213755785 514741536 790050924 922641545 922399048 366615345 852260852 968172693 123300574 588498180 380108952 679135019 55675247 544186967 1057474886 678356728 541038201 694003796 24115902 1040428253 287902887 120309050 403896355 321532367 300462149 81440668 108241596 994661715 433185304 197588032 299709580 537221315 947344347 903520904 312258058 496915764 154507676 682646786 612738865 699835882 643982755 630191287 567146166 30870867 144729392 903453785 486939761 537733436 328184729 531137928 247406276 1059479602 821784032 1524763 809264477 345158987 108941003 888490378 1041264472 1028703850 545444543 574806916 930366923 835392480 319688595 183699418 730761852 810492542 768820901 503424325 598166224 769718923 802397509 67457317 305842321 839147534 544250288 1032668269 637598007 756354748 628888440 254602468 437245723 343381351 452085814 745531335 502001780 1072876520 49260984 618372601 779731824 197219219 326216548 159827509 129554398 437158629 867698894 843772885 826889589 34040622 809721850 996294413 991077659 254944136 1044972654 827048425 336010787 771194654 266766892 825604516 802672692 815284590 650336684 243730622 81095709 1052515195 911110256 98738662 984817972 544712787 683938403 109567827 246100810 977651200 303341632 214129644 181879769 576645050 948737640 276502151 1035501904 1065717675 484498506 639387354 184740898 294632836 941521786 66120031 163059119 1025390130 717008030 858896514 195923271 465692935 781520659 619838318 128225575 93088871 969445948 994432736 603703670 352819086 775993555 1024183929 392598567 242697447 998546496 128298290 389741321 66110506 3292575 121482658 903389373 1060471219 946208946 7623239 720292657 356729283 1020645671 1024332951 300821010 450177977 730798875 484649149 455903730 166971308 577453357 346092872 95518157 298967318 366337871 293695741 857837364 152437851 987363778 794641153 435202306 752778125 940595450 861089209 205660863 237393786 1040155913 27283268 589329330 659470766 336258978 367860763 257053767 816928704 133655233 14042296 174621378 950095375 180364793 53931605 510758583 290433685 958516205 265457972 619721845 26443377 493718411 922466090 407642449 800205005 586357944 971927529 465782446 566998606 250984618 776202664 216421194 481211674 730381528 49670713 98147557 811003131 616017700 522981273 18777434 885421565 863237851 660081427 80163476 506142016 854856709 727599435 861045649 662588871 297240644 102484017 843513361 117441078 847651649 780206806 641022223 987928227 1061253348 999855583 891045629 1017094463 962914518 1037933071 432001948 751821170 1035510934 968537472 714957185 204216593 100486292 79137088 812812298 170667182 927002399 569157817 44480544 467512281 146741505 832283331 24893696 1016049247 963367566 1036302585 986316486 388268344 758507181 163569238 555269279 189644493 206549661 1014401861 100670981 13711512 239934195 412981908 1027819965 617564427 87907697 672231651 954300934 779163250 747386657 691060159 466495415 864283933 342743270 611532211 724347799 886600987 1071068037 125123232 865341397 1064712312 240625747 91596088 519009350 397702779 1060458755 198703674 316614887 889182661 145109045 646419075 396961594 293166722 842350328 870183628 729613729 368540432 391145670 142412087 474163134 618505005 379228310 366677612 727402415 98449028 952975049 734801334 519561145 696954257 587429148 679917635 368066282 492362970 860657008 69802493 909417260 425116890 136797300 931842429 1049154952 185701169 1070720805 8189622 76274445 850989412 923074895 411461974 969176939 118580851 1015287606 859056706 165607718 735695932 445868003 469642763 747896705 738851116 174121164 545873640 639389705 377331964 247040721 42165349 778467768 344468179 448610911 1020728355 955046672 366869007 743872176 405962448 984672283 5290872 166748850 274625654 1014686474 713454778 1033294907 33410053 318254178 418880487 5652012 471974745 667079984 677761769 401282016 194825252 497934632 1066604106 943531241 382668929 507973412 859500672 991103340 665949285 696979555 699757997 112535656 855561838 42209761 710497322 436591677 494574528 580462515 302716499 603301246 594764751 587649961 8727998 353936643 364215705 672086337 832182389 761945813 1012600662 387810290 1046817184 944195082 125942156 322036944 910728896 815366567 572296924 462450082 315665624 559088189 642092030 956979749 359285047 771312667 189784194 659657880 184186300 559101921 10144984 933948811 458916226 978133789 535997245 570079816 645176762 585506704 551396633 47564897 860203385 193919628 127672696 719752187 1058968700 181206707 137203974 406303144 480133306 841885164 723768583 607777773 974204482 339911133 925524111 120088987 337614262 464176335 315504339 535800560 29207919 209487778 656952978 170591875 739084040 348670153 296297351 476034877 603655005 1015100181 190605 229014240 156172664 866375744 675836537 233441143 279721245 539400878 72972102 579127741 348020963 1054509782 164282848 114567798 708294720 116142403 471525060 172860927 58124743 676159545 643929912 617078655 497587482 908794426 661774963 966046669 439634863 593954072 629587841 770185215 165888196 958208722 804675754 923464143 103156906 598058859 237110698 27134671 588527779 240637074 743370187 407276900 19265053 1071896119 57786542 593107285 257732129 743842421 615917836 942751753 615353826 968780716 294749384 547822182 340911408 109781960 175015629 706199059 669001101 281228065 878255496 1052378793 370313503 958544712 474964397 347052039 912596749 226844205 640816675 637674478 180472987 514595210 360908967 325088530 766733368 322659681 785070023 305345340 233678716 624027005 467138067 894973106 73556366 924829196 502253977 234763915 440801807 774790699 491904560 613987107 8098693 824127299 491756531 841032725 1029986430 384805261 230872727 180139855 720172242 259798628 437494347 550215326 603261279 234673229 315038276 983236688 695443434 779389452 264779829 827643537 529989134 184599859 702152060 1041255570 990694140 493853304 146551041 96611941 549679395 569878939 863216993 17203941 193092166 329435704 320137011 546249426 130856667 96447962 876025475 994986827 526487387 973603001 76513755 595825923 828943503 382389854 468306305 849220665 67781969 864443113 346320938 30829508 250888105 166544900 75468100 135918763 332080459 55935787 77970926 490519670 272199312 220592793 180881987 815836346 774104752 1025806405 279236855 406504007 759222572 166274911 744553059 878967748 972616752 717397607 205056316 86383492 465011780 10810881 497237822 484214670 54941093 375285918 1040925532 323817299 171285368 977191566 218017348 560457014 962088622 93012962 305514188 270777612 1072082038 194529328 633196347 144368519 397429300 18078226 918959776 663616582 1028759366 1048894933 262352998 561204148 30626496 210012796 974131845 267629227 476991659 293636544 262449714 654797935 891306946 291010624 404922099 307964052 115247855 315671171 978771277 419944508 463521503 1003288613 807166841 227287750 245679734 91437870 647050929 865759277 320500273 440800649 105983170 131528921 779679985 865728766 857308325 25960990 923861232 528658136 131438224 49227983 939229521 951413354 432508809 658746014 586747608 10754604 244792782 960664413 435236786 112899382 334807062 896143830 1068250403 70630270 23350006 721510447 931637628 444344535 82138584 698182759 352454670 886946647 788287172 1065246190 319219144 7091823 253026178 514423202 856312379 650368346 926174580 482926601 208093048 523916963 669970397 807471643 146813052 913676316 667355844 224875781 74919554 393642883 788439434 61072570 542622290 529492174 435516693 585064059 827811149 526153621 185663450 956341925 93669073 166771387 683448443 450729562 165568364 986391129 594718831 109553569 224901378 73075329 436781289 403430998 513148910 737066300 43761692 571615738 453469267 329208463 304884366 1072930919 18881941 981487514 765620153 309387232 449004890 330201467 836253991 856767613 587461468 972063473 955996463 206832864 816984741 3454161 471371029 880672336 287786179 252853428 198943671 945314443 358577898 538396800 530859033 890365182 1071229954 354311302 913753551 829262294 18105503 166634997 533776781 407676376 55754856 538248534 581206474 853117780 496275645 784748589 681646017 857655222 489528954 402958735 1054618185 914770548 490498373 430717858 271789510 771248089 780930183 433514925 598239660 170198672 318240488 344668846 37487075 562300906 586099082 517988101 104536060 123957485 147044268 979830857 996105252 998238192 463648073 899876727 601547340 860988856 252285600 331283670 172455557 480686245 883335059 768760536 86461132 634735757 400670795 186001268 331412720 29689694 30711077 209292396 12693497 947517566 870229382 525491988 923531020 995398946 1020597298 115440129 681016827 201422502 28588477 975192144 141155340 431030836 888153408 556690795 789138329 939440506 218107053 2465495 670617650 987549042 63587237 69247357 6032202 856067198 135783140 310542295 804648056 687577201 1025648347 587847827 3210068 234181825 265562859 893120308 156455380 99304934 33187795 897993854 720650900 63337228 750362667 1043069517 860270573 767176656 42147188 549851859 838293577 475059970 711233779 295418781 408000548 588471556 189065734 882053265 919720145 142893136 649759314 790239398 42256006 834990258 972005211 928880397 223772657 872686828 1003208233 375849930 611864029 300370116 896296294 371509433 936292287 842822781 899416668 947831382 942169438 485738070 909728737 857541601 998538785 219105003 685671478 182664341 802718749 109810981 960557723 560643130 432105761 634363653 765373250 962498660 455375001 827356097 917565280 856524969 179844406 249367640 352830198 187497189 290451835 346234004 896031916 244475410 797439629 145184432 34538676 201826625 774821517 463249502 30797297 386133006 357132675 974105333 893793062 1012828231 822197432 1071626453 7895970 61638587 292938115 372383363 813797464 637846986 653018059 163459656 378611388 260542453 59612188 285044702 854090571 318720453 445614150 717216120 192607129 513335987 432117069 14405339 324638822 639936867 909355658 897410034 189944657 469553351 177383009 636208250 242195437 943774857 538333275 154027179 271221221 463897785 998828136 99778645 9205135 814929340 144521626 307519243 1027062357 587463429 909818769 241265874 203689097 98821203 891175290 99375784 489432496 543820437 1055213995 669844053 754528524 229001136 354912818 243166088 813588353 701064561 238050452 417169618 222730951 827268352 997101395 884000648 1027886018 553966222 485045077 647673932 129769681 240211525 903212579 241246852 213685472 258879558 414333416 915506852 908169394 51556760 1020077022 377769077 280322315 632130586 132329011 564396019 248624003 921572857 12168464 557007809 466534871 143035749 938483113 393242265 176236504 910931991 544279731 883562437 23365184 979531898 889888876 571048948 998513326 24543789 371101756 952614835 934269982 1014851007 726232501 204544580 443604190 829825668 461740294 100562622 198399754 812299786 512973879 374368148 550306599 845663923 656322132 546402389 193358385 610409802 695103623 604596875 112357770 284895776 262867819 941809932 2039498 1061746966 906777770 975935817 500302035 656404291 527712995 704781573 980450183 62352091 249242637 391424921 553248602 816361506 317137682 175832728 847582273 965241701 789650348 775832211 282357448 519336358 763808508 516391658 1062584426 430196126 246540054 113793671 743158595 475604305 23505513 144598044 928487661 456755392 753810275 620595154 616934179 207037033 660264532 678543899 313858941 1072327919 897346204 1013642108 947847958 994198592 966161919 281032 695469851 874505101 927438391 714023380 693080251 1071721195 899007782 96533300 1061299291 826958681 635110842 730486999 973648930 797095815 295292889 198353312 108919010 512253898 871740063 805492289 130134885 969037577 448958254 457258422 975317731 894398258 343768952 919132725 401651219 187910661 957545267 493078944 1026940323 783152755 464617072 948088121 588676593 323893247 256735526 229041581 1014137621 825289417 482418235 23246314 944524834 91088061 368057406 169036128 470577114 525867126 189507515 1037651571 470905230 398186945 880798322 245056521 579438098 326907658 807901317 861927362 498989304 744878083 225595173 968254519 976325157 207809281 552791803 1022677817 237837798 452620616 437558608 551372051 85867191 250456698 190466231 114349072 206037270 129856326 772036640 225484288 577362359 255696654 504610649 679475641 666184329 984051584 174755673 425631139 1005396492 681923755 317679363 758224282 108091860 173489033 195693326 785566521 564984010 744494893 532940875 544089870 940165179 675295565 643054159 36751488 756259935 702655438 729155220 152978076 56586463 688694354 171749182 547852955 249437874 430968527 651374670 970688557 50746264 451904443 473479988 794803059 1004242965 995026296 507543049 177122096 43968264 211422626 687824029 399441724 726600644 556814987 752781073 103798081 492042798 384370411 497137203 844724408 217322023 754993643 160463405 741924928 693398429 667656853 604181244 654215967 915538819 794496500 305704838 149039444 864504088 247876048 1026169389 77317861 93771804 1055037581 1030721191 589760789 1274269 197575993 298299865 113503837 1040918642 701550457 402200074 1037677731 169426730 504703727 839391540 896881132 952317958 1026799084 11750241 267394516 512835930 917073300 646714978 29425667 790442952 1042470373 501178278 127529066 125488650 781262792 1057908868 506826749 407587208 290554941 135390597 885981726 232480777 114767227 763611963 937593584 208652117 425450461 93139719 753335100 32625465 1032887955 686576429 382509288 76804389 544210677 154685251 403584160 1070091554 665158479 540611460 4093502 838639788 696624928 503042942 551412347 551748774 420510438 744337892 581433876 108923310 1073200471 865608424 844028482 696903907 604128615 68207908 992560189 1034315208 307557330 999859055 968304097 437054778 105757501 891897929 584126435 329586845 836555789 380609791 614146512 656680521 635682017 183151013 957738672 159236553 333979960 823042184 136365580 342399252 145515035 704758124 611655524 486245800 102493744 833960167 96396179 103130178 145408983 142607291 316196231 561925536 377069313 800321244 648152642 733826827 775819032 180587374 730324368 120603690 122614742 572230524 267062303 986709062 854480170 636336982 582021397 343053418 859794836 575062771 761373374 999344563 326823353 669138474 297066747 612823701 978713913 29157731 948346943 1047356402 506154882 321408535 860191630 477748657 248335893 646144034 582433057 18438585 960928545 978696610 580346168 88631850 52017808 942438945 660217452 1023430421 844848481 605425972 1004550167 853238532 485799671 496396243 784661008 404391327 1029753484 108481996 86331135 547562366 604408525 874554408 608566599 1006215010 268687538 101404546 235445399 931457609 631083347 433555270 39300095 88915644 51017592 341009142 273780917 422024159 755643660 218717484 334194299 40462366 833329974 380117176 4440505 184344370 730429150 939643443 118234174 502707842 109337152 190126226 543772765 779664414 512733334 732451870 596005524 381664891 663553964 900917567 131983329 287903652 438534054 637864195 933274831 802376842 957070566 733463616 767253503 666520501 1006020936 573329515 507579701 217917113 766335682 841859017 167416592 543832560 474255323 595431811 930551576 861035575 870286371 63556515 10625913 875549211 749290549 675457256 78639653 734631018 82561998 610092889 224023524 183892877 349439823 232194496 671876735 758164131 848737538 627466703 655424712 760184180 590490120 533062020 168475289 855053318 1062813322 1023085946 557071837 687933654 439692824 77406509 711593530 320348061 28905831 836634478 505040215 391516986 560052797 1014507434 977716811 389272019 980713979 1015969359 252136635 284526513 166570456 804051656 87302451 1063887994 711354023 464580865 963887645 646952211 805228325 366479848 375268943 690978496 292139507 59816329 553814553 842643923 573440965 62495475 108161540 388686267 598363691 567446134 952434751 137926987 813738393 1050724220 452800951 800616172 16572509 164990725 216161111 546399929 1034214388 849709241 764066287 898970373 974382935 379093531 132054498 1070500629 854666738 28271260 655752713 262053442 878031443 731979445 199363755 36796333 355707053 306434147 876285120 756706529 804058515 807386117 281213356 322734579 334873603 98627969 205694447 499863544 679284138 584363099 575388894 530389794 91945392 799948108 504268504 279118089 251313152 539775084 141389345 757453326 317919533 117177210 585548431 1051504649 656940556 537785983 611109297 753886687 424254278 906623724 659194285 795745964 731391035 520345437 780771192 450981228 279878229 618790828 417417477 331863766 597188172 528789727 1017968649 328793849 97223400 600555546 843134178 321241047 758250247 947737983 559101038 690506116 750990053 520039330 259432488 932842828 388647300 881535826 468451423 299122184 597204992 1019808864 51575341 676833246 48121084 684498228 538075407 1014360345 683667046 39104449 1000448274 897443955 992383900 455662025 395240545 729909313 878504946 1012020696 136462725 266227403 193165868 71012327 400950172 237257043 840170711 1032523127 792421241 426375448 873707707 944408339 641345943 851818391 109490296 237073185 900474142 399905500 570932857 437582624 834510328 182536016 304725171 870395691 409108619 599371732 812949 63658359 319037009 720575459 1026196989 134941415 1045153535 62322403 633592079 930244169 547437451 160530635 521837798 417895085 575983886 187499576 261685907 103186781 22168816 270673506 678243181 366035686 250752282 18904559 430851547 597984993 470906728 9598059 129316577 589155180 803626113 838729313 866552427 325059227 423207208 1049919830 472139627 439140189 452698775 378238212 207416931 354572549 1022145852 563982456 844269475 46176927 404046260 283538119 50486648 25874141 152569198 1024308792 1025726943 137658214 959293163 912258027 516056745 146939872 246794083 623057142 493261078 428255434 674286003 603343001 192738726 299239461 695107002 262976137 731004073 150403095 169699411 62074049 1036869837 267705970 823859905 603254993 777752632 925131579 542260739 337854438 916596461 450928990 627702484 725702581 1058211287 277669092 337741807 190487342 765391168 654275895 806754658 1045035889 647477280 990010919 480576838 773279199 12132617 190643327 422969699 948724129 522450750 668579947 6597283 1071743824 772428310 194957517 544177411 695217925 738083876 301940194 812495446 513320983 1066014025 131487028 66721135 592348633 684736776 397110411 800991384 383452828 403683096 907715546 323218111 870479376 242894588 915510218 90354711 79543029 62394791 1021838617 320936678 890346721 874916601 498087585 996667388 761856368 776656630 534535782 1073034421 47801659 776956936 153340283 460100810 922848239 490072139 1049170880 820868859 783723107 1005812093 629543729 427079815 781297964 247429900 7858036 185670238 662310826 193819496 88271799 453304065 712372953 788011760 138939478 412642993 314565494 793559890 822219597 855309343 393066915 907438130 10348839 934454771 957594840 494066674 636233192 676657532 855526986 1070467247 975702888 530399172 1010286432 822699297 183370008 762195193 334164452 1035305682 515722321 39605923 549496654 933166260 126251791 737164110 624812533 376390995 943087799 1018113124 56779726 348917140 865705616 211318027 754127017 723020745 370111919 289241999 682101086 91576442 34958412 601244113 521539170 362733462 594365690 695925444 469592020 328756303 517657159 1069276284 864563598 627603000 897530480 678693679 881531896 191722714 799599163 796031611 778830989 526906298 127423292 948798252 726083155 710368842 548659530 453908532 380182059 252830194 155128602 300164808 187086208 381705605 214662215 453779425 610931565 447273234 920838389 463080560 522673995 1030983578 229606351 427629783 677134074 1002675627 519843316 596757811 257547603 565046165 814132604 891470943 60455833 298174495 638344401 351272220 306182543 502129416 393135291 519309345 685605222 291943590 941202449 462013310 963790095 97924189 85520667 343376914 557386072 560396390 692991449 149129718 228854128 886645375 1039786994 978121014 477366269 1032940972 968166724 113272038 879223679 687788613 172798532 1004436955 427363485 854443437 300849052 520805935 903939490 755695189 587129118 577762526 416678992 64717866 641285654 465530537 1043534553 142979769 377882634 645893236 614835497 788913916 78898849 247678145 307943582 300851303 951345238 140581357 828945424 335530677 450409353 815771148 98678383 764944387 159140266 403560154 633679166 164053216 156054144 995433748 388549136 633539273 287688324 729142164 754570811 723664044 828515547 593660392 923217555 316429417 756262499 649410034 151656415 245185894 145040857 964194954 1056420597 102621575 310018809 8029129 33482921 306679417 613100713 369643638 812578091 979015919 163683472 676526324 157201038 18013810 18052412 572751353 624450258 784712075 74917779 527307218 817323063 853395234 587808350 465893634 169736311 50072974 66770077 742697282 684948100 137422351 381216775 907448092 454043864 242052706 732313484 939709979 166117381 692899488 78003651 615998542 104070424 221827088 1019974650 171330777 46848229 862916055 794783923 319366226 200911550 351707408 757122835 330687659 686279242 258818229 870907002 789352729 71405343 60925648 1044010987 885000708 718436143 788067350 1020365398 981774305 289979561 673746857 331098415 814188739 230505086 740175010 678545830 830796656 581899166 704938077 71493204 201378511 1060497784 1029292363 1029017650 224321832 470740204 526010288 202472553 923868867 5689832 710648088 414597274 493322774 211487446 334055144 646120695 678316083 614389016 559656442 598959505 29295666 467514985 932122056 256253703 446927222 480279090 865277244 321477548 726513838 683210030 990505717 672076124 955964153 272173267 231010978 851547789 395901897 917643477 541769981 118715337 994965948 620388951 487468489 124785505 531511567 370337760 109447598 900029877 1009770623 30510818 135877365 534960677 645966963 915092201 500906928 1022818294 380961023 330319943 209726210 889279738 80483060 869852112 526703023 133579718 31710138 936152043 1048422676 1070946750 830468862 351578790 676636747 472887682 396025518 718268562 763688514 541264827 966255796 504800214 274405897 385472934 80842132 595568804 128964204 929697520 442075852 649210335 206505971 343859621 391904653 718237729 626811221 665532503 527062137 971302662 428119089 844430407 195040862 118123129 788175685 909747707 861175988 749842888 759356380 697321598 602796706 831396960 172571394 522289731 777305356 1069517102 511647243 1007162905 47627173 537985876 503923550 188042752 808089400 308000476 49755395 1001807697 1061228824 599028798 309139331 937843555 156043226 969148067 312008155 634602340 689400451 320847217 242930967 6442982 864484286 1052081108 448419562 464059174 457217729 40189516 408120311 497483567 381095216 979298508 893080471 178121545 540997228 414122706 784437098 937574260 570009484 1058832091 103469086 692911758 856482580 932098772 559461297 737338484 1031626078 694896920 285869557 1002626958 625870708 730769853 35744786 794463750 859998981 187404719 337735145 57485260 806235720 577682132 714298299 916101144 463873265 191783226 300485902 979417270 4457335 493612227 394103567 125555564 405634955 443498650 306997116 207853141 592704020 198327561 481481263 775817702 358643833 989687317 936869927 322801815 719219952 822233761 771583509 775363493 676955890 788530272 161186598 1006604871 635332851 1062727300 950667425 645632289 243043914 691809839 272939272 554245537 653120025 834278573 161003393 940738632 730553796 183601261 378492355 190321744 789427805 801623167 474929753 1060513788 128829343 896395102 325240937 22863355 167069297 102192771 63131580 580327258 723674952 676314343 533611071 967211605 845701524 339994798 246788596 626702695 938819637 397233057 701656902 290206848 967541975 454856580 379966383 764480495 309087149 839096589 217701066 328557966 239007504 388338458 735210308 847122194 65410046 194223095 812700941 444476936 197810573 437570142 501593145 490623500 162167096 612802249 696906890 1014900048 772387767 578833345 567778770 520221882 725947189 529448254 1008042157 121529574 1071961263 760131216 273305334 819462386 29506309 707686268 839701305 772247096 179707378 676983629 375137705 290240096 342572711 870553439 480643208 912834582 498799453 796399962 402682762 104769690 959543190 713494529 259683510 915467030 869403857 162405462 747243999 324570221 1028605779 286758294 708742501 69946606 678323719 831572872 892546064 383972573 50651657 572207722 671063403 275557982 1060826073 32428051 362744536 504610353 830159408 757174887 512746912 911517442 927495973 89871411 118259267 384740087 720296135 342411789 765311632 512380712 406274606 685422869 811037539 892066660 1016874258 177863877 461823821 9092956 84790383 142652418 465776600 429898048 834763728 99563325 753140802 928725604 36945395 551337833 71970838 992288645 387285120 941989326 394885761 757757689 665389423 618290090 18601079 836285602 118099649 596616682 1046729054 968084764 334814850 618024962 209724010 568977268 437497467 689675552 780247703 352547101 725415108 79147297 100431523 683511127 526001795 995470895 126946012 595946049 499957315 535079414 551419160 596181256 924520925 159964370 702461654 974129699 368856917 991653549 633288626 764465458 946089489 78088530 554744167 31530076 632547206 905384257 718922252 417101588 247167358 715552623 862570097 649970220 384131431 1027426589 138999827 919356418 292990493 448974147 289966827 195330863 61928229 59709659 957406573 1072703422 1072189951 656589914 8056387 690333624 428529209 31863971 641957768 471406396 584665536 665260727 796011852 74637329 333511612 505207828 605408602 755735325 628293682 925336944 339100792 841289101 521120056 131274380 423734494 397125325 431125932 402897850 310144832 539258966 666355340 474471992 76857977 235576934 380519409 112440716 778157105 113653254 507592142 15585332 18282543 261765859 234944711 518941926 529015837 604662758 1045497140 587114476 115560323 747100564 778646884 537187495 402869437 597989800 340155638 1067032563 1032585497 32192420 7962605 423791453 70093922 164089257 99514460 263181616 478046783 537598323 700289047 767261258 1003170337 63530304 37480804 211228697 384976316 877398203 849475181 680787104 338537758 407647889 580945680 466344830 3041664 925930098 374614215 123935488 349895495 846049273 315692554 349334327 133231686 198108675 254686277 244419561 480299582 549020027 12536024 37224235 547646782 130371295 18929579 709036416 41159497 1072344274 575227157 392714999 514394050 634675902 977700195 1031656089 308563169 440128140 501044210 157745172 331090624 895279989 490147755 295158362 255687678 287051529 618636481 760996260 798198281 1020410536 495043635 31223479 955529260 1012816683 638882971 85912195 347342379 110124121 815911417 934294828 707603661 716766623 285224355 753818458 36788353 854414614 551066055 517832005 375928981 708948261 149464182 892542605 318136784 127764332 811321245 221715477 96632172 339846757 336395644 800077931 1053889622 838456056 385409040 408765442 558652017 605504179 1050976210 825828255 251125011 375462782 911552225 883455702 111157941 454758138 176956732 107955337 609372211 734170489 321403706 618578120 557646363 511517425 103985145 177084174 781531602 1000946276 120892288 2875343 534497790 1030285517 85700427 961993126 766071701 257004757 563513659 800089414 435964936 171821769 9180336 745028245 1062147347 669541303 831673182 160978743 44006463 707041320 1010409731 163857172 215276835 506851397 977888500 987942822 734191190 740292942 227714693 937324118 965773519 388539802 723168066 129905451 766602687 583681509 908019275 947315928 393924798 878326469 211676098 532202748 792931975 629806723 609416569 1026370167 342123252 874671910 488408999 330496764 730008619 271584351 1051008550 28456935 790147723 100666501 546313923 966703642 684522496 1062790973 35315223 22694264 918542897 869533869 371055862 783448248 461256989 777964712 760063926 229273238 191627649 577116709 197107721 110074890 632279050 323398276 262120699 519566135 348238657 312692155 1044199076 984053712 338483939 733993805 763953259 74793645 1001520567 117128553 610442466 628127301 982192530 880776611 90834482 781728888 503762856 10934810 931309906 264848016 745815781 1053407711 372631893 39148333 605610242 181363828 818482602 675036984 440672379 567314467 696499773 17544170 857437673 188524450 544943582 890513450 77991206 110799052 908260049 753732955 315693009 573651291 984327341 591144941 842434618 528982555 647967544 31429715 401414037 321820544 888737311 758991518 734202965 567880271 1044452247 325980629 562438745 1063714421 489628970 458581355 371571510 231860932 327206092 1036671660 816453816 350867681 819650704 813241745 202835654 547685954 122360682 128171890 990162365 199032553 925440450 416519043 20295994 356869781 896512676 1036009652 928677033 646471873 1037507953 400242727 748042573 363963641 220796046 418830120 59985463 590807492 65205044 182432328 514416592 968113172 1022698471 6825432 323207309 681073670 690665857 151815467 972799092 1066040690 875553255 645790612 976459401 397251203 275342309 699581129 955546270 274939762 974658541 399657274 675431617 658556668 139470916 221782952 830600548 358678688 234762202 366528807 500759259 910846807 320743314 194116870 588286137 937632515 727857144 724911698 404949057 19468045 675990643 197807606 356595395 184203641 456345260 834436122 15308813 258303460 100651647 517099878 1042672772 943676607 599913667 788800324 512298218 547825118 415716523 922294386 407234179 811710804 189258598 1048745055 791375465 100371779 665431211 993227745 374756072 148195323 541341473 999059651 587906777 87487270 516014445 1038282806 5328282 792710214 607581455 438466947 637515418 691373779 523217636 1045260677 177110792 114511743 477409012 364007437 302034577 276422629 291809000 196762415 781071207 438636059 895620415 435462490 813556869 774212551 943939533 1061099019 624948976 930140318 772391997 62204630 506917206 820923554 857663884 761835372 1030347807 450195753 810217171 185703262 310298329 311345047 769045880 707706750 166664393 888547045 39804593 285357033 866526852 408544566 998259317 262665391 178544618 96655260 276673140 101024433 120605024 196211442 161497890 976852418 47240303 474758303 731082397 239903779 697646831 569389698 325750540 165802445 772523815 226282223 359300738 771200389 499435905 339332829 537055577 473753803 429998929 153898878 928460147 491911705 787023487 516706917 890388009 414776533 647121683 793209114 655441318 70913075 642276167 572868268 881742827 566277266 747005933 126792811 1033959937 64813059 947946570 888413504 858795005 799843105 423750045 877992443 354930912 524384515 997028625 821028180 863307003 746463810 508249973 225995584 1004887039 145802772 904870171 232049839 627184315 944121134 212795499 399435465 486033503 808206396 29486847 551543310 696104330 703178233 1019225499 557367422 462224572 476737100 641564680 487925507 375422759 516324581 764354055 184874627 170538358 689267776 999235147 523970182 388908032 7895711 908455550 900752857 229877558 924689714 439550892 59909321 580037265 106698521 811278332 1069604086 930192963 80767046 83157458 230218587 182142823 575746068 988254042 429175428 56503473 288448179 891207371 115891005 420116771 773038960 205961343 2880486 196892305 818418390 33433411 899656785 1070780096 131098431 482890824 799749277 82662857 1026279966 254783044 269996339 49196813 623815880 631533588 528971766 118634005 708950938 615451066 787990654 84976154 127078874 995367504 613855863 606173172 919107506 545041239 974317454 235576764 392897702 352792487 145842466 177633928 119506724 881120846 744525400 515912478 595649673 502779361 578456920 1045156716 122767677 641247853 979768536 1021789525 63941621 148352362 365270212 930474270 233756405 687290700 297033793 522417130 1054539101 483151258 780252465 352965062 200927484 1062610998 666981397 180618239 212678056 307661342 856768070 563604135 3141296 831378233 261270372 673468557 836391196 718999589 679308690 1018247836 134509638 192484343 302312727 42698707 604025509 506132360 52404329 805042520 293034636 21012562 595085608 15577248 1041224900 828843109 627137989 484008057 847419970 320535966 257896789 528203748 421226433 755520283 845190224 21438781 822131578 1003126995 318861514 629249308 295808904 802933022 477414643 51085354 174578649 26085937 187631553 1010791542 200938456 832480460 833345066 494009012 184060591 341782109 932618140 1012009732 232643249 1013586471 748454833 772309098 278898265 1036648787 600218451 777798169 541026991 436308109 743280266 343933396 194099868 381397622 922150578 349832376 603432326 698886211 675424850 465606647 1001012280 867340332 819880514 988085836 51420651 184447423 159656941 282532408 354211316 321225127 138351318 296091303 475241135 520661974 361776604 861345539 667001179 288471975 942040627 679401124 637505039 326730244 435743412 284282303 970360684 943132477 775036606 828757482 443177338 970572327 524268340 831046141 1042494094 850990350 15864528 945868368 967192602 258896841 470918436 420259966 22354177 753207205 45898614 749048629 472429666 72285072 172460080 358026804 588232444 674709114 902942862 214339241 778192499 948052668 716219934 697543091 1017710511 1044277452 564217443 756677707 992067441 1031474909 595613542 736087740 142766322 886797264 330914140 448393671 362750971 561207853 1006144790 148524883 495878200 91661997 103223790 837002199 911867953 990076738 270779315 968524330 214512632 836575729 263170539 798451592 742645176 348265550 589143682 478416988 741127720 641069441 898631333 83929793 94098961 546679106 115438567 78199910 592360347 638769285 431684401 1020674555 1069158941 359485821 905595852 222680880 474507558 638643509 81861370 980559195 815884282 549904566 895375867 749529781 129406061 69795440 170973376 223015184 696176158 61119016 70603959 731411194 59791538 461418087 909105332 1056140534 118480901 352278511 332010794 628526584 454173902 38781440 419005072 519484540 345899699 831107896 957444845 864583233 449008507 81188706 690106504 1041293140 237078400 351031042 838413878 840510648 458743281 936268316 595553411 811509757 659971253 314965403 765489222 970515545 1030102639 508186124 1026272747 1042649332 117939993 266084621 661912244 28987443 186195757 11306863 194780384 1023644619 899945718 231798641 409482237 355506977 421321128 910857029 142954792 43100057 220045565 572487501 287821828 601644927 401471169 92861574 23605628 130931442 993194824 121228920 397191407 1034896640 162211617 23662563 877680598 503061212 73268001 45978812 254743257 18282577 259443616 518795489 779616646 663446551 25972566 855918462 467065936 553648726 343668055 76145595 501881731 971248105 823842165 676635075 1069568463 661188204 544666197 647557031 987707869 653699609 1018579774 565759136 684355997 595369626 798236372 575403757 647185440 628787177 206224597 292165549 931303946 844602369 128527786 61956417 291170850 562560260 102546100 7589502 100142005 86756664 933776694 479420311 236426668 829400593 1025380306 78890053 499122275 435561780 192203030 372628630 857399888 90467146 707673700 463605290 759838809 353786509 267449871 831968025 323539685 319294148 267368678 59713535 318985518 473278286 346587511 800003120 664058509 919333120 791169391 374234949 470163983 711331727 269807941 788527115 535807321 916535790 610236314 243180177 38941983 371554004 674827157 817600379 473402692 49760947 102287475 19614044 162320577 154826237 528409527 922334844 31758886 674664459 613118271 154531897 891230632 881699047 609200294 115539375 473400692 823340390 109107133 233427563 827309640 332416818 772353530 466614597 713109061 954414602 367682846 498481730 279253455 1022536411 785597858 37812706 758668565 510961313 560213236 190865758 901395914 68860019 122153486 27074396 940140285 652624236 574819410 64900995 188991371 983527104 666516948 922692039 533593027 59137854 279935197 70525108 587648348 193075076 664186403 80187100 887311550 1065394829 1060137658 156789905 535700104 970058260 369723679 1043307976 863531096 972812142 63115178 103963561 1034199144 901077967 295016891 991201400 115309383 927907959 315320792 912764471 218777783 386381674 290126767 163542459 1551445 987069332 535496953 371113447 524098878 280281444 93670940 3517502 118419238 895571737 524955038 789689064 122880581 953263818 318275825 754407669 375752655 830453224 206185020 955750935 195517732 845681730 752951334 995197669 443229010 369014701 626029783 989185960 513509829 694466075 991738984 194935744 797539846 222833187 1056166552 203322872 201211272 804473615 534513802 296222021 671592096 936036797 593596321 403191521 933023435 384695957 254323618 17230823 898797578 638013878 349705465 19179288 660909483 674283126 718024991 816959354 664472475 755932459 42129213 54067912 169359329 420519176 1056094680 889173521 457976079 1038711840 105047870 970691865 844575910 223859259 1041044923 850496652 76970850 516537349 648485395 235480132 514871037 147671646 894882241 68726516 284347257 392288301 115868489 951008190 37770452 284894022 44562512 160909990 541878718 103806569 985608165 389226608 975626019 345466379 885232500 897915832 141844662 724597588 213514529 958827068 828407969 456931068 1039813464 412646203 694110658 729369152 678854197 988486859 111778495 796230258 373798698 470702406 359616314 417154491 233258213 424216695 320511256 553784342 565128126 814539536 10247189 227566279 542984170 479407681 935457159 362363158 418249697 402042880 894678949 90550588 858641831 1060298354 484234938 487052182 977354154 636416494 672374762 250877912 77772867 820612163 820542327 530215843 91474103 844309446 223762321 465835499 902627466 727351446 186812238 942137371 297568625 52814818 976765648 708602360 458423812 347122616 850900725 162910016 726847078 1063806336 1024628733 271262257 763823687 579290397 852056806 207996453 842241544 24911270 332833590 284886530 1060532087 417891406 267109031 54486013 915058988 233258637 487496850 603514681 172161805 874895096 157419861 759675737 546121325 591721505 194970035 605833693 664011912 468942139 648304508 510954268 359106988 871249410 648837707 875981318 947302240 370794711 531970419 988788274 814898208 214067135 408008482 520120785 803156081 609630229 638202391 121341643 154971772 950314963 404422876 157017915 96922387 754143663 348152097 578583789 425455920 963928549 309316660 524309407 165014180 218720766 727341815 60997363 935513314 903389856 1032351732 148374648 487389081 932446192 381023018 989342018 37014271 1023561942 891874383 483588319 536008875 17767521 640515308 977020193 702797583 591694789 360397614 56395051 375146570 1050740140 834097422 738337366 227709163 1058066245 351727263 789391468 929811493 146960035 850762953 157271225 575540982 291747464 648832892 355498945 730497777 198046619 112247509 650712714 1006320077 697138833 826885974 394363488 790025471 458186513 7090389 289277519 450977803 908209390 556457582 692824045 722773409 216560880 1013521259 137246717 1001162111 647530154 20590369 274579206 566060401 266153942 844201845 158449318 191295544 1039857014 148224324 680924811 1031937121 433866206 487859660 557586783 370020980 51789391 460882523 936467838 313212626 346684240 401514435 546863453 800871867 213200248 50120628 238477570 358848163 1070109079 816035009 798201997 253671196 359225296 48032993 72432217 851119166 851664909 102671269 995704771 319429447 860344516 486005149 1009313227 165479872 214449088 814905623 1049480684 92314518 222764959 1024395158 328130121 756040618 3086383 52623363 1007428400 836816168 609144253 28204386 338714267 859385827 830182875 658322865 640112298 277925353 671369916 1048842048 962552369 926594910 779319827 811323365 196462453 750862564 581478893 648291789 12935677 71872352 323574051 821979268 946615508 524493176 676728376 770261565 912326729 1023508006 606796443 310222204 886869642 769873555 608984961 5324148 670470799 972720655 168954987 976968342 269438626 1005894309 369268183 990192720 1057052261 529411209 630088779 548594166 951694350 808959558 215500648 218878524 476578970 1064898038 649316522 458092212 361642366 498884592 468843879 525787468 966620416 563554516 69580806 335482353 648411702 171552195 305794180 364572636 991311009 116031665 427136250 93184727 985075637 216753824 1015577661 667824321 134213557 753671351 4783392 789042212 330405953 990871955 401017712 209406074 343361082 423281170 500973378 894050684 975920958 374095471 76949131 492089122 262210224 522000711 114088737 72095836 452465871 852892261 834927014 521014499 404364504 549875675 584693933 490634852 155625942 365310139 872417989 545614013 596923660 1024897114 395932719 559483071 257974742 408549930 614120934 124033554 391204438 411842172 1002751111 156334927 534825637 495468968 674806954 332293534 620608326 268360240 339437698 331577187 32957556 1070754601 902953759 982203332 583778909 1070163577 805149069 753597375 733616165 820560992 936249532 874686374 552057679 931204522 893189104 1000264595 490482068 14099076 229599176 368373299 995321576 586759771 274242678 234481585 897138423 757606175 1017093838 191783562 1037452215 708029125 1049848887 308853506 101210264 717269188 528689222 665541994 40370850 225662235 65404058 962047105 627207184 104568445 801904326 357860052 1015493869 311217689 66919691 838759594 448257078 628459393 509969939 91142586 926201355 183102675 459828830 148480892 438947408 1013494845 674919326 717198764 720499415 282994211 727987611 172369704 218091883 1069457448 684874632 1021282309 843466645 623012356 1018485153 700772213 980419253 807474117 984276786 913172627 774816630 111741079 1017007782 21519841 808567329 582581497 697582145 843114176 386457279 1030918016 429472691 17885262 801530994 57247915 602936018 907214474 319317370 611876346 463200036 504423342 425122609 649276099 967842953 353612230 720409296 444437435 241256908 6024034 724116731 583802511 278857273 611529588 433394680 1061152743 293233182 274898575 343973275 412410433 577948512 380149676 910420512 690417343 460865512 291150082 10975654 426307364 794456320 499102152 108180853 544259739 334035280 495459970 151807768 360938221 209674484 403469601 204600716 443806672 871437330 1001950782 395985780 374085610 535433059 785365430 546991783 749043037 622041214 347884504 343650138 913928647 709350424 1024046264 111367996 681353755 3493539 846079098 252891155 392281522 632735810 411196927 637011974 354919429 992996746 483365411 5341211 192255288 20528698 834465858 663415166 915751327 411650298 282852292 327747911 645463042 659339543 235239401 159640012 762425333 474253033 329392637 920059404 831797233 829518528 26144791 149659373 237292853 421184758 13982046 253222182 792413409 772168233 81485993 697285196 851083192 381700036 619660898 956659620 893428241 629032592 21779178 189068179 164305803 415578776 1004279154 675299414 642562892 586948310 90269434 710419104 804370810 613512796 194062778 87095383 289245525 710451850 48199312 729064790 535182529 345318789 312145531 538596333 584862504 799463934 815730798 873009684 314855252 607180528 213095089 600041055 699611463 420020333 299419618 660957233 158472082 696324637 377012644 558195398 142255390 186639171 607980383 820233119 639957879 701441351 987253382 574134012 288476248 313889369 273705991 499120327 925218496 433313304 102601077 199138846 186082964 148804990 1041129435 46816048 1004732301 968030650 660502418 1054996963 725695583 918569229 247173418 266575851 230243234 226540206 101165698 484607790 791709265 357187182 426258735 690180333 941704805 1006662937 419476027 198041428 210245062 80020628 331938959 933204933 192884837 84994682 97606875 807644923 690693205 49184394 51662316 174863440 595935713 920241308 575442850 505884722 270517177 224079847 688499766 1028087600 565198383 580037632 214108765 198342149 174910749 568736906 536958811 111668707 490094777 63964426 115038043 27085485 928953021 566336499 710099748 336044506 64593394 639803451 712485625 6015349 38730705 13226247 251295124 661184979 768852784 912766395 983449483 1008527608 498169267 989861268 931499480 922462546 1035516997 846630437 344622466 519185336 332733981 725327705 31402056 771957697 50650853 946307999 338286668 480530212 838671543 855967726 635750915 688444808 4911702 1064150633 345913523 313519210 847011777 193366847 478101709 530468365 660464320 1024439964 268351782 429514409 323828325 127711735 960391059 589265076 121385374 638149327 161060736 859429008 460886645 244362157 393561429 317590017 744166207 679700671 688231232 392991892 94491327 124869190 951127454 725523367 754498750 171979360 157119226 392509988 325977851 770737306 314987363 5565733 657978044 370590568 1042440943 740740812 576312414 567322639 101575881 705688363 930919139 607662658 540372095 515357342 472389195 1005895917 1021661819 529905136 442811678 733308964 155026022 261939655 251874978 985193937 326391768 909070209 570787661 660541266 917606640 425214541 313978381 381637735 214337381 171309613 94166948 23638263 340378970 569597018 526974388 782544619 21005715 7843637 920475038 166520590 663291006 483507270 914857825 776913382 764934033 897275436 1048336469 419981991 638034103 200552960 46366315 340537629 884368825 265701453 807798240 159799148 706172807 584579927 512302822 404107295 404374565 422445321 714999488 453021259 226745387 529001748 386979934 978086788 297922440 1006829721 462298634 983178806 83453006 436126986 713461657 249810064 455986697 674082359 663254041 783338176 836524111 924760145 579626461 1066723888 814358615 820564883 925502828 862448366 373875198 351487850 689308702 185399594 743056511 457118628 367944476 229736981 571374489 437767168 441821003 296282157 339256103 576161267 166741640 832628757 683846740 946019277 69477792 566325849 700354638 492194045 100710302 943122975 65472533 893439223 904784743 15869377 273690936 716616653 280525147 232094263 919008322 218238572 907772342 942210791 906690626 771293547 1006599707 549679248 108078793 745568966 29832698 522029012 386699678 798951264 473026837 201401355 258512300 730146262 956767953 503776877 136356945 64535473 732460771 699808965 823368674 267929037 969232820 377628831 24735327 9281841 811775742 882827435 731693836 716844788 234179271 961022540 866637162 44004464 707596920 208462478 313740519 766953580 516719278 666290030 769497146 740591504 225374652 897722426 126877956 227814963 30491683 482947742 1022052349 1048261676 520359313 823416463 707269748 117450336 161316022 256126974 819541371 475654265 708839836 790907179 857169299 94848960 697411691 112010390 806976672 511322484 190116258 826768657 566084787 207572730 198773631 584746733 1029196344 837242833 844109980 885551561 491117288 878428089 608301722 544565698 774588792 684944541 148261733 631630692 298768257 835155538 830372937 291377382 742784371 156530775 436483620 517836722 228724403 734508468 152561703 367476728 118929390 40462135 266628747 353727937 385438393 536481169 207849381 1015089296 795809437 826449879 563040259 764209590 761185041 1057879272 988943056 71501476 578796256 1049089077 672498849 1013832322 358838875 193113177 865647112 592248379 531965624 232670706 479949842 261067942 72705400 488638411 82531960 884388676 485227224 553021624 461695782 766704802 118670635 108366422 1008644329 238671907 304879313 50573484 144896858 991109680 569115029 670298077 182154583 637902103 1030654584 1071650668 115195499 551232830 738756511 636064426 1069514939 25559863 487372962 320798013 1040881101 372517235 904750695 853993371 31384530 720251227 481169245 56881857 77702344 167518534 195089349 975613890 723631588 345036367 531636730 66129264 466660323 379771303 163053465 431650582 253698991 744594667 211131207 346035226 192460549 658335971 465970053 139396137 48307048 482940067 600566932 929249138 540739005 71392999 534549514 520662704 404000510 201725897 256733867 521783923 526674402 1008749292 9187598 263815922 358044796 323002098 375095471 367658648 892281526 592367823 688489943 339661235 972331333 862212154 392505024 437846365 398232343 962662670 837142785 1033567135 110149878 132457990 28339135 302636142 525670962 922592635 621221435 840431086 501908821 1006237737 557565140 452097208 40807988 973702009 955577191 20178648 991002762 606541581 517272821 716658765 146894586 967914729 653264862 576143425 44142536 468809675 196071562 128022041 899117132 234404327 849686113 393219427 667639039 867620760 693909252 1033220374 533741822 758170711 742526283 792566583 997958014 433119181 1051711697 235376963 55066387 524407066 137023421 669649943 558641552 729218089 919934348 464902350 880273401 175691219 294138960 762853276 649332512 928055179 710394909 1008235925 121757934 726233567 979680860 405859260 1033854887 720690263 684566431 869915194 94890360 997433658 209180338 1003976743 289214447 742650434 651244011 33343238 679904434 188818876 326604219 54618957 398569884 996126497 613277669 126295412 213870652 755582395 112296007 406162336 316101290 101113573 271265218 295878155 711535133 366624376 1049003146 680053922 111864418 866269190 381348430 215329167 836450689 769641717 384942989 102479676 1028563824 735460607 1060022677 832783115 179900835 260421445 263760860 307011932 447205457 324217232 763008148 762569023 960392397 862733041 300979516 693324249 852342623 785586054 273218978 602674503 464845239 427085534 649204557 161011495 730294893 97349624 904921377 510697637 784541238 424064603 765670870 232563683 528443752 670729689 313272987 57232517 192371564 572119900 602363415 408616841 358896063 980857387 280825666 3581975 815323647 297353007 692497929 215277917 137054840 552419321 822497169 220158316 23296517 1002412236 827051225 934732326 9679200 979552871 949871356 36178088 959136507 55598982 521059122 596928118 1010872656 572171616 1003322529 864491554 1048912479 172492425 706325118 985413917 1071116110 365953621 136712449 702194199 949670528 359807903 84148724 29034564 110440178 169972616 255282914 842822949 347307114 351203299 668119065 286053751 779570667 543515479 1043395062 178639416 596032864 459486552 322676030 142806018 827842761 1009586281 385042667 335005582 102959295 289213745 538309333 443524357 385989879 466117189 251659985 668639053 185759021 94810144 30032419 336671274 550862275 468725868 982716734 813196820 609383604 263926593 1068936345 305783929 136482276 231686215 287425669 861645603 51715380 821877486 955239909 674433167 298920715 466501524 545114198 296918323 181980864 890781279 129176718 574764139 442972407 96076713 623175498 105869263 16790511 716380020 933824104 72953393 992123584 396180556 668237780 888582838 376046176 624840706 810470613 1013080138 252635490 739573617 131993715 569173100 68962758 280750734 246040806 102123194 231133726 858693860 762834842 615488957 525246549 585674306 124089758 242944228 741209644 388550036 793599146 130868176 467861766 120253125 412522648 689727891 933825604 945321151 306560937 925554669 623004433 86398304 756793109 314502279 289894689 502902396 240193760 225801841 739683883 485554667 117553303 957629430 215528122 573611744 939760122 767076477 622039858 470960237 374485997 799985307 137534351 185236326 135283340 601300237 851579430 104204021 48008477 118923190 772077484 902964983 367952324 68949371 943077165 492577241 902960132 827275137 728920915 382114875 347106154 438176571 694491517 346909477 292166187 144415715 421954771 578474135 249262535 634905073 408115004 380473148 99349573 117470160 1054695286 509438877 352125724 839872957 864503875 633523529 301893629 370018241 1023138873 315918838 846277058 49027430 503505109 650786997 17446340 6070160 387562126 742754158 119381274 66962229 705716343 317283101 149295594 203975168 388638006 900086484 9996510 441253355 413004182 1028261246 633270153 960596780 855437535 160621186 55860478 447238959 462649707 909666245 447571928 640741498 802002726 557211843 483603849 240755095 58348706 950535973 697731342 40285499 420525860 724916994 42061242 298284813 470935189 246077473 780083541 563669393 271723530 60607508 250988778 150562881 142463424 83354633 231618099 668882967 539378060 397456514 1072071097 194544007 914445138 605212615 937516413 334041700 22091153 893491973 1031256671 429421857 948314977 1035467210 812494350 260005726 206988724 475029205 290855506 486183270 144231903 45033706 345076236 376488247 951823976 222638045 46301809 865967135 204506410 606401535 690148144 459506719 791630682 102992920 397447065 463505102 420078177 797166854 491494868 209116681 611336248 537664433 533190596 578574370 1064242369 41884690 575914878 697790987 710057242 517882727 716707639 397814322 595046950 720753184 394089683 592123706 300856846 765148571 746188086 118994818 912357080 1039163242 139853272 109618908 74147684 438774143 110041535 28527094 546787057 941467869 268567400 815869376 505728927 992261144 300199483 1067240038 491875101 738166144 371702486 182662804 659700918 966527604 254720559 948378070 1043633108 672314124 26544919 1048038859 530319064 953320771 66008800 70904057 13735501 523769584 20913386 78287767 474998771 682958203 417312844 1040930533 1067666148 788394281 211085268 629828541 903892485 807073468 34399875 321444527 498741719 678353856 503314045 466304199 234510511 70986462 1060923252 978110403 527564710 663447429 822169241 836059407 944569918 912934848 40119760 736886036 174078072 408493951 574541762 829054571 191189414 418644188 747777142 293118295 293498665 854435173 471159516 324457648 579437246 664627852 343207516 386802447 170312173 817581252 393608038 940375012 64812445 216363062 663225428 997516953 328734262 438271750 107397671 1051691629 814263655 715593273 492792506 602391181 192592641 158101764 882919702 76480483 476778806 524060706 65867798 299515778 210790001 521419608 483952537 497683976 1014055637 585144849 8860959 771418107 905598929 405796305 915871389 880822145 261977191 970567163 108205037 530359156 6529280 277120580 1065424852 902426005 1059276790 792146253 355885262 105896112 953974622 1028226402 162001932 995890684 338447039 373947701 815832609 586104386 48992967 1014378714 407638847 835097761 767523136 937280008 432231484 735744572 1015982349 305238197 22122665 211400078 35703958 4525958 354232596 528678462 238500172 639815176 769858938 405198678 767995643 927168710 601144495 310836683 483271737 963588512 121090764 609461874 700621819 555539630 95793131 238444761 52657364 364747442 748891804 483120055 43116652 47888494 292312997 955284108 360645511 935732492 783945347 877562166 127142962 684375237 648571979 590137903 1034352616 698778447 25571171 645175796 375858529 105888393 8478321 704881520 995473749 497906620 667496279 337876874 830492252 608473744 384725335 618000385 899227963 990337513 477604869 126136866 141695748 971301218 914850276 363689629 63857204 277351166 857862289 238465364 942931147 1021511342 44259207 173732186 857075923 3670430 627301812 139428268 712014958 905197877 207349207 1003271755 775310246 323294873 196726353 802110849 900113434 91477525 399760076 641916806 208628270 881833096 654733074 883995482 203534361 460571371 92563463 98615093 303281859 986023970 790869239 525640378 331660055 134270764 843452149 711373680 1035439872 997839053 123902873 874183952 552093600 476673998 218514534 93334586 251915090 461553454 1044050027 972584915 287302012 823326497 321045816 345038621 456684121 262959002 452068022 148352026 893096863 675160801 303503787 1040776027 650061911 77905680 492054005 172179797 547990273 1045945872 109190868 100527055 891451087 251018134 366433217 740734373 994648046 380814047 816728223 497688266 303406988 536082325 405159509 299593906 418603584 608409379 847459903 556675509 529049188 883017575 798494455 11658291 334471766 237252618 711142290 586834490 1030034431 786224289 342617355 148503089 935387907 892511537 853040654 10535390 1043804514 412307358 190838005 614880914 112294908 606173006 511503676 212910103 320082708 712587316 914645584 860517535 170280153 80932119 315817589 615841033 431214442 988801340 707346197 759736599 996114683 13064389 142463356 799197166 993338699 281805363 926056096 915674197 230608407 398761309 628798189 713746195 668833849 863656869 67032859 778102891 31476413 94767592 900081209 1063379573 757914295 409887758 225884116 463322311 696626052 730404234 650724307 298012996 13702145 869880327 1061276538 1043162280 146418296 1068687675 868721128 335956903 122574227 569848697 604163861 112934507 160751959 988947915 125421369 175974149 554299475 237949568 518790048 804088739 918005799 560732052 110258174 150966597 891267910 970949605 19878970 397474320 372566926 382076310 105752703 169968889 740793738 209989146 22994784 213631679 840818361 813405150 859977416 511743091 446194098 515753696 799459862 302843500 398000242 20399955 298276136 101048033 468770229 277582192 592682195 707938123 99245769 381211084 285406446 477972312 507628380 527881613 864941000 77068023 456517698 177526960 438131212 573164484 775677775 635256431 634721422 713497915 188792285 392365555 1037405887 685323455 425187696 932943746 343644167 425469457 500074466 271479020 971245009 87953941 232502327 70656846 537747205 326862445 986771488 1021413448 299967412 314019075 402217426 1046319725 817351297 482470291 999800892 481241692 230065289 224988924 226984769 375369222 94847140 708325453 919179613 569195349 468045828 868607947 246428287 517496542 1025361826 457788742 474332224 1052744420 802473764 774256180 835802356 787855470 190897434 380847557 387583572 720147925 103553473 886221692 971838378 191190342 552543420 918581207 664272590 633908726 100167949 461839882 909653918 494856341 604879850 440156199 481381641 319516032 205738061 585746845 1027396312 762599134 358857179 563206572 842527683 676566679 233964628 477103702 453964586 90972812 684557520 708336074 651940398 577819575 1056184317 515225675 507208828 995601600 783391919 329634404 91775064 754474814 57080506 442007169 528285567 651369424 995228909 193766443 848490295 930632371 360121086 404201216 955207404 263994820 521160108 1002140792 863156921 221934184 562600935 653747883 773175807 277656178 526100443 721769062 533164316 312716452 934429495 151473455 188103500 758943563 501718659 61626282 670091457 116821729 540563165 843249240 347426491 464911209 781046300 116905352 1014902723 235010966 247742201 335852930 541699932 311876966 511051273 690308173 148290240 488003195 360935442 1059516904 643620728 369011372 705437199 295156571 653871295 208602734 186845656 112938475 798505316 294571531 893254576 620156579 205788596 660239132 503603341 184741835 514269635 697661856 462912452 295950702 916506175 383014927 957985593 20584313 731969798 282799809 12605061 195969985 579137901 120674227 244350274 1041343413 818699543 287079345 861190071 1041180514 42182960 594721197 662303706 190228706 1034102995 213979823 582302944 245534732 162967943 181463835 544356207 469492720 870166478 50591704 515729736 554756095 721262280 659597255 130927137 964953261 602099553 594993921 499164510 693877791 1048298506 405032184 947084140 399559488 843124419 448344865 1010085835 605139814 784523960 564089201 810183525 604814020 882848968 929758635 117056925 548062807 359438706 25972680 589277614 219020720 588544262 311249313 751976723 61514708 815639508 475771602 271366666 447175050 286654131 607171254 935741476 981610949 948341486 407989026 474405524 771610410 112004391 732549688 476510812 131577128 958256969 300394607 26621060 493541760 939739839 783604976 837953738 701673424 778660554 536722286 913600244 144649955 773633505 799077136 573456594 1059408365 343676307 513606286 398352379 683217841 498737110 663449561 163056652 787001812 902527608 625755711 427337820 38462986 518148380 70108164 715523686 832708310 709371846 293831456 359386469 526841081 622776606 149955451 789609325 718441138 677261151 164876378 979696814 984390026 363636797 1070951483 1029948528 650457699 762932988 838161154 133185358 256292617 907509626 527011050 7854888 571528485 648035791 846829177 193504930 174232076 105040941 585303207 600760410 190974885 172318512 982064590 634099814 985348881 514737727 547429316 738763926 919120098 203509497 303484622 69481695 389263974 937835753 315263641 1025496691 91642578 600180693 612663689 721879240 58491320 719216834 956640144 36132457 671423854 681342029 580962708 543045533 656233662 411875750 847277025 202492216 1008584474 740978870 774609297 439088410 346401747 483601252 946067421 903800383 1002788479 743163309 736582010 562181326 618035274 706908998 43605316 11977994 582751228 664488937 195977771 633385920 229000514 633818552 307420510 577569785 935509051 522251807 880060328 291892951 866775123 836679813 68281276 990226080 391888911 229240549 161718331 981305305 601251000 900642418 315800368 136662318 1403196 33141071 608854031 641520385 892020687 725731547 483000239 976293041 450143923 276420868 121966504 424811418 715430654 951861724 274406969 275427134 339564767 170414223 487818709 741718941 439798621 992639233 93400110 821633470 978755695 482394395 1027989043 12317046 459884409 66267635 580213485 964875833 107410275 313758968 62870613 309493246 245677626 57219311 197051610 691266013 678495852 524291486 96095401 66275401 497611080 215171921 487430380 730004055 460438766 158978118 488911273 846766478 756887865 5755969 33339958 296681716 768139675 95263679 512130982 420100182 18160716 252401133 112752134 769805322 122617583 903059619 1010126430 263045906 576327625 863475069 1046231982 628720278 593809607 57073809 275732877 856447744 957719741 796389886 549722290 251254345 94353934 1013835041 570243394 354718048 686949546 303500283 172501600 451268235 715513967 611442361 231180001 693923812 530951513 852963839 819811540 1072649425 1017204834 16545520 979941558 991877643 223505365 544546747 185618407 39716199 776390427 1069760705 217082927 595477051 802297020 739552376 696493592 641617440 69552589 633367570 998354943 689653381 451289200 342586401 942730966 186426434 478393584 120001911 244293065 959796723 669494222 936927261 263486362 369147569 307787766 182200494 11722697 717750813 403861323 975670040 180194233 409432197 274300202 849103226 561870454 479487608 1060484551 806307897 517419005 114108239 676513779 29706322 853703309 611035049 224189091 804498344 135494603 714665762 376795460 897467720 177132491 524446094 263698381 747138588 43334423 1039870521 567226747 696145621 437465241 935303703 938251261 69678767 110572499 774312346 308294872 311152297 1040211724 328603534 31231487 609058947 45606898 909585576 207492482 157863805 240068611 841593967 287064117 918599588 180804958 301783477 563920601 14730610 353001362 546401898 864636286 751797642 896445907 46538123 361243097 471539240 1040963305 149276234 117475957 411467591 85035237 643507111 349520942 482250330 1031106391 414008021 674126692 230970410 549106100 86659821 398854939 208313267 792381290 315447138 492039570 700910955 197574646 587225281 247454034 683231764 939407010 389633454 957196292 879356380 233193682 378473465 950352078 179922119 798145039 145693826 402066184 53065598 160933626 786783919 430843865 191727703 1038519137 130983364 168417180 212405529 759553576 741345744 209618313 458574322 1047937164 474751092 1021972077 844263115 64315608 414567968 667031471 93000495 739639602 43322905 426054642 117862851 365398455 884717788 18337792 323304890 581852934 21925990 492870860 1026333328 925324824 977292136 528278912 80963035 962391312 42320646 483808559 940535387 622910713 462238354 750418535 801724310 347219833 1003369218 173019276 470998286 937012770 304083960 814499184 786980390 652622136 14586211 386672332 241192235 868774550 328715636 1024678067 273146700 940412427 1072256042 510342717 260092504 974963917 268305334 583790009 8511662 119171401 635899971 233161979 34355626 240221718 289520569 962121136 572083047 753289205 770806642 908951193 570088582 557015603 184897617 247752845 132411624 754206867 795361535 893191187 162521418 885126786 647844291 564222341 426190281 394207795 256722444 443327890 216040653 1042757910 563730533 322730149 304552749 159772387 259752375 901749493 953387055 634407025 44253174 633629405 510495187 327949183 124896545 223220289 350600196 840269578 122613358 176735760 1027674988 1061951381 474532946 272885157 507987102 13899245 902064751 473374182 1014646490 1016515044 83509493 210869074 638341438 506161457 1042123723 326376472 17129041 547320532 355908996 613357678 1014482756 99239816 320949554 566780854 567144597 1045942848 521874773 240020315 205619927 571608472 701265117 792962298 716081743 603382237 136015582 749145001 137750516 164469909 422747230 996251550 91545650 42956335 311261081 939387218 595017739 143483391 619918039 571332565 835196076 880927689 267046120 894131736 370693980 133119679 579890627 304500491 184961755 911960423 361028179 88881187 229227802 907132627 281760385 328526632 82247179 549671973 931952022 312663671 339091414 470514228 497391890 61923731 915024935 70799157 616909456 726779706 606177226 242944620 918897188 396251435 706250751 390616033 805185517 436875048 867261995 20743623 252088924 463103770 134642030 420847115 11995666 388401836 956544856 113390690 55092987 294686725 862314453 656530802 379305071 612358619 68101618 234785032 195907722 298089759 767209981 189744979 227879594 393135017 771004003 726293800 713771350 930270412 425395026 944092668 144727659 799229651 1022863181 368442139 142774818 999485905 893176001 729448372 1018779587 1027005849 614523032 646789061 607726468 569273773 1000493141 955952129 661294390 820278815 68758942 602370511 272902666 572811692 374984617 849111957 271293047 600880345 369055737 835892131 172220792 472025094 298611147 153811136 745216056 1071353366 441623647 369763356 696779658 73516488 455491904 158848456 121176053 400725951 896907270 47796011 14497821 681324057 662216604 104244122 96701340 713990145 491173839 2882365 637014276 22904657 513918330 389211710 264939897 291290138 464135941 569968265 606191312 488523831 608855434 1045647856 53209395 170840185 800008855 677289051 234589647 984432438 509022224 560201352 457685925 788920009 283547472 198117419 940014826 963747095 732423483 746308295 668544646 496624954 662569929 460088596 1009573285 739859974 838921009 71362102 755296900 1064111557 951850478 389778295 307688562 615357724 81385597 716761701 382816547 567463768 1065159913 134371987 74698798 840529941 475532340 1055670062 985347271 749954222 1011195352 227878402 851512903 745062903 921647184 819571967 583652819 829419533 940888267 736104362 496547332 447616451 136219955 107346754 317976235 435561577 487205459 583740247 401094386 282652245 241068657 167841366 989045350 496053806 64735111 521315819 566971194 278665507 174774427 564485332 476187427 362307365 254973354 824111205 906280064 620632029 241116875 351229839 62766034 814709987 548378590 415402523 344584773 776785857 1034419431 207362608 1030804308 759714086 227868615 1053558187 739618390 656078007 419534215 645459942 341071447 1063748859 816234816 213230316 613916819 774320329 89345534 314150830 1001265499 257056955 491837611 355885427 215704437 705997098 163571780 142654502 958528750 511833689 253825434 970893968 533697206 635696113 355499346 700924018 1026320782 931515889 166641877 728094600 517606197 528293992 418772846 844191999 237156293 870294331 272077944 564716406 497562847 831228831 645474411 122440093 421821756 130961076 276875110 546583474 181540841 1018570786 718815447 1011727682 267674797 742596974 442291866 826247309 480480997 839206748 604896582 698286044 900498280 123751505 268317785 391244084 778855133 471873326 234345638 583391583 706343552 1048931026 300743472 787354915 314983510 320783950 367724517 505404651 883697361 728697733 38150535 547686176 165919651 579370580 170759942 530328478 980800837 89038797 310318051 1060977816 331254863 1070159991 88780698 182985925 1013780759 414851580 1006266789 140606540 316549515 602566910 737316513 865627381 963978569 321779142 508299560 549862566 8014121 1006680238 1003355995 204766131 877049297 1045643998 814893090 330963311 494930976 540617679 824815646 899316812 615755958 874570438 564565808 677682448 844043123 41194114 517106540 835721085 82884398 394279391 902070526 254753602 547878332 439790125 49653309 233086542 697981293 710146011 877146637 675902003 1062630567 790362582 922232176 811940045 383428286 243625966 1042927011 801931195 57167436 428611062 1013414053 921824715 715406245 193574015 854439476 630841130 485369782 815063666 299799010 80492006 656289085 87545476 197263969 224893262 253748709 106197807 726728393 995732300 431340808 1005526877 783741615 615618152 930698358 396484553 413532086 806387962 802994519 289136861 49298466 427457870 389848847 376879137 126881733 101111955 604074619 436735715 803835868 119863320 345454425 467271643 206118808 567986516 912252324 674539617 931970765 266100855 540936982 874139826 439314772 366537531 190795642 1033334687 254648379 995928704 1051103116 710756977 724112928 615514447 920754182 208598201 290708569 275555370 947305091 407931304 725241049 728298454 126327206 665704810 443153297 1048619340 99675369 437611062 770762757 603949568 513714102 86049305 838072282 658850043 111829456 978607114 576664867 735125431 870448090 991723107 75828428 919947210 979814312 1039704947 967659645 486217470 333746417 401874861 811407880 987346573 719618141 734108505 140845611 108825557 699876429 170370043 452983095 561671318 1058879605 1064404527 202684744 503077097 1063542233 220422235 130764261 699416253 382134428 688613336 601286797 11071877 46395266 532336316 497056002 100568713 993333363 51469908 296095683 506476883 342474591 378091770 804048751 347977684 686300784 200026250 773877150 243220049 29984848 37097858 851602699 418819845 1017625281 938959570 445561673 675334517 905693583 932309958 214676035 47489657 660878521 235739627 789529185 69352948 672669077 284870046 275805152 641095955 784404584 490940839 50912350 18903415 489430081 524068606 303093135 284461297 983613235 54514366 994476941 616417083 345905152 162515234 976131075 150330449 803772613 634950376 1039987756 392645230 328558329 615263997 598887676 22857313 177184719 252057682 235986711 1006908333 86106834 730969929 641459462 368221018 716177415 264433137 40383691 602687745 298330152 584214438 627844602 705294161 372019638 186269746 366145204 51714273 419588172 873679231 66525189 387465601 473345911 94815012 627252879 974826584 839356983 980813033 948268943 209973454 338452349 733548111 838849719 172425206 197650105 866270685 675118758 239472999 436511979 74580977 460377597 786233106 457955483 710063126 873840014 445809112 749613686 93855029 575084016 64702548 656195988 774424170 632924930 262963242 296885795 371175177 54748422 135827168 767279965 301792523 476300049 23695575 74615616 756918262 278470627 382487501 551025391 339631502 886505180 629832462 391722129 74175471 284142345 753755438 1017670717 84492678 793487858 49544601 855467989 928197157 61713325 256806856 830702153 102412490 174644506 850256225 814721459 93018635 643636830 1073602074 812383679 305093401 272615878 1029748818 27589569 998159146 903444734 231511138 776673627 109266992 710434640 1038439337 428454949 197135808 424166216 912988525 469452461 745453026 631268528 858197679 799198524 64109895 960514360 896818872 857052604 723858685 292767942 419589323 553121634 99162758 406550517 342928102 779876863 465486424 785549218 459030418 810753301 315711718 675828247 943592867 799757637 549129968 1001813671 1060997533 387491719 585538685 1032919705 1024521376 919643106 246684708 868526316 908023831 469463062 423074752 231259615 515968599 411596646 518582160 1028658783 956434497 35330846 975529364 666153202 12139976 875464144 97990290 173713009 698501901 387793215 619731063 970805643 132858067 318299447 187008911 22825075 89967194 882526420 385178040 562154877 974848102 452702266 363846624 836191555 584000576 448657248 465503189 922896494 547807376 754842014 293608465 665920493 462788611 988211678 798458826 22641286 95219884 2621269 706622352 589190734 748987567 1068173749 141726990 693486000 345611090 502054978 374412121 609486130 698217131 571209601 1006106906 655342772 615084197 532950640 839816088 160899441 783788057 105442921 790370242 1071726708 687137864 1031940200 484569256 434573419 485155927 488107712 439430116 433930753 1002329690 194484413 754410426 354790592 427293238 1044500161 566156004 95846533 66296344 519272993 162291443 386805434 96468448 492640362 416109827 334979144 993712261 764548664 450040327 970673792 723778275 314172631 765497660 331074312 509047955 982166768 950395234 852524185 496209393 557074285 291660867 810608699 511565985 346550405 921766271 81094680 615041959 480005639 442937266 396394864 538382833 822222472 106046779 91679379 399006793 420370848 308957147 1060094818 161836330 802331955 979266108 755974710 735361642 918547214 936275433 942729049 1030487642 997155167 104060519 844245811 1072692284 180761985 913181351 480471495 977884304 962897108 381962022 424935904 757343960 765291858 604061879 379997212 295277780 411304656 157748006 66369444 491989567 955916438 811429963 628047588 359837037 453403662 796274652 324002266 353167533 732195029 237547801 337436780 12833499 12425005 988245113 1003222843 66017033 1066646328 189755654 231975742 772942284 621825448 989551770 160568316 87811576 655803632 422642082 790326015 326529636 801773707 1008299927 685020727 1028228729 576353810 255367285 985808689 284401931 326168516 420522249 238923152 47189750 831644694 586203549 950403448 439301211 447185566 1060298206 980179618 832814281 751643065 657159592 1044819839 883298956 37361891 108885397 901216796 782258517 820779083 239437701 618907751 382750335 423061536 877098562 572929046 974768015 565998607 443295953 313608993 795354826 484903451 22704650 872408105 898530260 784527480 802787910 507554247 66944582 121931735 883419923 1030129602 588379585 1034336517 180594918 950040207 97227031 336853430 98348515 855604397 38862752 1065393756 984163275 13366377 327236596 325359085 267337897 330959148 429495199 242424106 128350683 554627699 43957281 364043936 48636009 573580406 741366100 234102198 900244576 1012752285 596568486 643217225 849050999 924498516 1033737277 238144266 196334121 434023406 511421625 507130644 326543452 778288367 989892974 655913297 692478640 211313495 499831760 148863474 628511588 617158290 6434195 1006594847 111355347 313734052 209509975 821207700 28265945 358785779 175804565 864039113 222786309 942319221 471924340 17742225 535782890 807789406 263032138 107050562 768872976 176516742 497139723 116967857 58027999 1072136714 170144394 401779169 396781020 370780660 772723060 331596357 68840347 143319232 17641176 752874980 585226521 929514270 1001775343 474190054 360982012 703257706 885956108 818829999 1071282782 251712116 796203556 559422401 906671861 657073262 961410999 6146572 85866375 47656477 867998351 811741048 793904070 571364917 894379455 971725671 712399282 576692915 105655150 383321503 1003271178 245969654 729672539 594306752 72640158 410569302 976881750 771982023 711584230 615525069 104771046 981185709 384227601 265361165 543097632 1017265165 522280487 1052307957 783718441 176319512 1020835028 939106888 571208285 534253145 944257769 183284115 120913439 436569304 977858412 286042934 7994184 312599871 34539665 306076747 507721947 458885330 828236160 418693147 1782518 970665970 199313828 251392072 922962178 21613180 649297759 398837676 1007150030 696546530 389466178 760436402 126307177 1024953745 1023355311 987968728 216269475 374346283 908650927 400471522 289169843 5514743 464552797 117755664 299363936 740373773 1063906917 239557980 110103860 623643681 884154184 486791618 699979226 902174289 683071687 246669443 506648914 313321033 98615675 333525309 975527936 13218218 869751763 533338795 66096260 774697713 184689742 103184679 384949766 261229128 354566030 1052631653 973606602 266190501 521876430 1026895109 908254713 260948992 895698888 355395934 3365863 503122155 77033855 63336746 3129939 5660030 831599171 863757192 617679542 231106105 1010941541 781743231 945437303 102428870 386857496 1016507297 570908729 962617115 653530378 567708319 346174705 662290256 1055631498 302434738 264102384 468555527 645867555 70097973 51697290 183102797 85970698 669366185 111875681 741638832 73966897 402127551 832708848 558760952 381931960 246064197 730467496 792991706 902431665 503625213 573281502 422627250 924802171 276420122 505905938 369543968 655560028 469915637 289157542 828478070 323551753 527759121 941804190 212999111 634496641 1011946888 107296890 930243618 243928301 705930613 286378206 837882193 968574837 477434267 34023194 315732197 182617687 476923334 231661730 348095117 693020398 616346823 287843589 136368884 919971996 782998511 520849511 465456026 519392554 22103173 342247351 180602036 19398267 87224291 59997799 935906795 613046833 385246349 648634540 834267129 502589705 548293452 9246929 971780737 218217227 1048346199 448548869 672089978 967106762 1046768285 203996080 744312048 186747002 1033296135 360366541 687269607 917277433 341948151 500967505 279279110 630751769 277183229 1033255301 239698960 550797197 892611807 600574998 4764362 931455622 482071277 958769986 259255815 547046898 194064830 38087442 749747011 993172310 947543560 613229528 956385810 797014812 251734479 848465781 460711451 297232922 121252479 1055726558 90537273 220059919 310097377 591316731 522048912 805252203 253644616 417961179 482132115 58880760 936767257 334426926 592483284 721420380 21169952 298117526 801765430 595784362 803606426 604257563 659811962 1065372891 855117658 795005438 551303065 633960749 372011689 261169138 756542976 1012437410 483642672 711350722 906924637 518332083 584601106 778105979 626090715 853637506 962286942 995511850 165800300 790223242 883534440 159957499 912363849 476765819 836090922 1059913449 748094963 443453087 329373903 848937997 215311638 485902895 661553146 928717457 608087178 31053287 802379968 872852061 319726812 533912629 697120377 409125454 407049616 795078221 810105119 779843997 90131521 502906825 994470059 492788013 656738930 543237231 177609526 469085382 616579593 1054228218 551077680 747999063 517434325 702905713 170291673 552114248 18335138 574435472 252342666 13987647 30614005 831492284 452061045 366216257 137170663 853223936 598757700 89049575 543104038 558679483 155986982 828754664 966862450 721935564 971990054 708571695 636512596 230123599 258710443 159063405 174383867 241295965 849759452 81791312 805611303 798790080 1042779762 839737062 592529933 286655758 550404992 510273641 67917851 289313003 202929833 353155584 143229005 878702604 451912177 7662984 1001116935 432504817 48048628 302091664 382766290 189214671 900713975 662645666 1014156701 1005642578 976780352 47919332 935929457 760253787 704056074 888808878 855477919 540565956 765276846 729889244 198215348 478113019 577719756 450355838 284453493 335220972 513242986 555773419 252865708 94308342 507480262 293474441 170981126 386900878 346272680 532619394 891704720 650526160 805694581 173090944 839794209 194885596 491040674 566033771 371798263 613928528 433750101 927010425 443509773 553600718 891765980 137986883 523081827 817505150 877317555 428890570 98850089 831372033 212076299 326222477 27062829 1067447851 332298256 287762660 1034464085 161719460 22480947 972720770 149477652 76932693 381760206 884708630 372233380 970506318 703682939 769405675 526063637 374213844 181744965 820180289 752365667 831621697 473524414 466824785 707208135 39255546 917985384 404025950 769870754 268611496 79025293 456616293 197288651 879305867 575572748 158058498 955620434 1057070850 960520626 379045799 294430948 714400602 390179197 754898822 574576319 843754768 161544938 603183675 1063627891 47331712 291763925 431495685 389014142 299536904 104892693 918558819 722689711 848672451 842990405 645153831 51711657 949264203 543891490 36053263 9090935 828322264 712630573 446662564 352323439 965582184 26148332 937642356 645816546 202580230 407694168 741008900 120727482 765049141 229853386 820510938 574416729 218485562 208845193 709337361 1065244385 772061651 499990915 344209027 684799849 847728871 419649449 587111621 171381957 858272656 839180652 416541823 216853768 800786933 107759903 665852219 48359104 788801802 198595135 899083244 494197441 272416826 1020078659 181554214 413222837 212439119 8642934 734778444 407731393 713640966 1034582481 243564790 853681197 399173727 448780656 298547203 989738439 57109269 855995666 577971268 52157355 493588107 267167750 472361713 179108436 398166111 887921452 911044061 88001685 502113377 688155410 457655634 321843244 278606807 315247573 479790906 1071282994 385545846 276925062 26591563 720908788 809396819 257849194 102607148 767126193 331968092 456916212 477923780 677132416 63277835 512922482 971611830 432524793 570757563 277188337 987385584 503244465 285296308 629275482 667264388 327748567 767539254 816756867 95089070 147575570 851139582 421656697 1034497429 742362237 658124362 782348074 1022727328 563991837 772215973 465297440 904981076 818280359 502469097 471351094 160587339 736749680 510012212 286396698 278197431 521167929 853666740 805475023 978750771 1023151240 1016671211 524396621 346071092 546934155 948302724 19918159 338424991 1066181993 421147056 207663385 419875707 767906190 453977911 744214548 1002775866 324066699 351697362 835238301 691793889 247186974 17551950 786185630 1006296340 11895613 515382512 712266925 596564188 113795823 281810726 61256878 306204604 583718975 960987273 178302034 885438386 1040873063 1064549135 298691883 935604172 741344859 599203818 416445154 274220746 157343638 802771043 640164851 838120293 903326788 646420922 972460742 469889010 716320380 855084222 2610724 851549933 166105876 359240344 509684208 405872303 869285819 510871299 95167884 985446886 566579235 248737068 407282833 342412817 861761419 634323864 269891943 949645710 921991199 771948145 926295333 638901744 871571014 1061842138 895603916 418139192 299402677 313445097 216902888 643729811 809886404 498290799 786412162 147689227 989330902 127317543 138837039 301376130 431932696 754718050 474195436 1027851173 157351488 499831052 43588936 605124738 349826179 249964034 366541808 251593562 30160197 775133326 214972548 121430277 329152678 850099752 346100901 155911328 155991498 202398796 299322053 389707754 76123558 127328290 772149837 1050160729 691403524 733962776 836333944 176187322 628488129 198937780 1039683625 1019004585 63086676 564997161 283924023 99599827 571948792 647364443 406275919 634709139 693254362 367183697 846071580 628942356 806018385 420239078 153233549 676661229 585742764 635579920 680194772 247072387 115335405 354622417 763818329 19692172 327640336 800172313 989253434 279411526 238471198 345251712 589479449 169381886 380800759 796022541 983732883 375467002 989552632 147167118 893417473 95220773 875971786 164140032 640281302 236817530 696331446 407423529 26258880 83834394 702354931 306983843 803828849 97863025 344131274 628941984 8805242 911928017 936507923 625413491 1030870706 305766729 572977226 254288667 729605426 238162730 113311059 667501272 347344266 14405971 673798070 164300955 530396123 640225010 897790076 967402836 1038636763 269755881 416280178 907722805 189364800 861600007 678926754 49652348 260918053 398019979 559297930 123410637 941588396 125138270 682062641 123921652 346828550 758882869 408590167 1037305554 583685728 835627218 906380414 434034507 693101682 385592980 263348633 1072059019 696192944 982698078 938390691 820132165 196851814 120578090 455893809 951050877 806136275 594757138 883340244 788791627 1039990742 439775698 376437554 373700513 939456312 878774689 276676825 832940597 822424537 1007708410 126898404 387892435 456232203 715610422 985164423 739877081 728800049 908476596 135108268 285997305 507075682 1020397110 680438863 1071237902 753741943 719035174 793572251 502742360 422591177 212306007 92967069 1064321415 90486014 222334972 1046679846 433141901 506639757 32681833 120766496 271384800 722868933 302518295 74518938 310025221 251770079 889496614 1006269089 645900839 610060031 637451812 511103333 582681965 1050307224 904338756 289528128 475018308 988818423 22310469 1025268750 919734742 912790897 104659256 727176285 991474237 1043083907 679184909 669413393 1472048 1058802656 969717375 938265571 38529528 891241520 1720722 67406058 1020080532 56444935 1057105739 189554521 990792380 832904869 1011703099 221439142 383991980 1040785965 39628755 787742040 236412471 930924029 620487864 449907865 585590015 525068962 937564573 916886562 760398159 784690185 294125793 59517807 673484515 915779067 683742361 103202872 997096777 744857334 905460545 800478907 287513708 616618625 490052048 464770158 983704725 22470615 601131424 31369302 567659732 895662466 866038004 861577437 861878606 921119718 247602066 392657344 548499996 272788618 646070214 597420222 51027664 585352088 613912197 803180671 384315837 963327645 166413297 814318388 437511856 672151213 669856872 279763721 22451927 351470344 154102059 396205829 863476405 888903742 809843464 10514956 128342886 11548912 486863189 38423725 5603309 197698251 766843628 479652364 553322613 889064737 729380046 227903606 512508577 110174682 1019175006 1045810609 505534001 497614538 230000617 790211673 432293186 670695091 793013575 403205055 1057921 477965352 854014388 964289799 111897894 783134203 621490328 270385479 526839540 699547871 455402435 215911030 799269558 47142478 167051593 640605254 527588476 950920685 29164331 36580078 418910381 754633673 4228832 504098101 71029979 24843621 682241056 783512863 101550581 424718571 750658738 199624409 545344238 734834806 839925542 766662440 690248563 506098853 923038102 556784405 963784439 669418147 245046038 789417476 626262634 753068447 453839318 1066788204 1008424830 394603686 144642480 599995406 742251810 827442372 991057692 839066409 516446410 93132573 1036052186 443227925 717186414 939907014 92073649 130615853 582568823 345922266 232130944 751249117 371833947 958466434 691645855 735673606 720608851 740550110 823027865 129282389 954482736 822595804 490621031 518688981 372986252 891449433 257130500 703731852 333444249 89916120 346334147 435664561 64915703 937435186 459968248 452995352 696163515 707734875 546943619 1032783585 287821256 172358918 139915352 239478087 670358442 847902741 10248135 509042964 714409847 1068247361 600121303 1003241841 710251791 348240978 214746919 970767546 475072505 484750126 265087971 912215704 651113530 545544431 622050000 984056837 310840284 123220161 374137031 613854504 285834159 161814828 660395267 570756219 258453285 362161326 73968008 572907838 252362255 223627847 1033371303 426478305 882845508 770487099 599300554 309105179 87439657 262743250 12699666 116601284 1038962151 654976168 424794676 675736815 498045218 618643029 969928485 290099668 247266716 575445187 318637072 836516439 1070378044 282760609 827518647 920545411 502997408 69196975 559209094 969166617 736055610 479135627 214025039 85136654 386817038 528083652 662535669 214670414 567864311 840920018 859714130 761284910 405832777 21617665 181856281 917261249 6299551 403813160 257075542 518624868 989896068 713024637 190214621 346230439 608895661 667679524 307044686 48664333 788194678 950024469 1028137165 885955843 736530920 599101961 363270706 789304224 803704513 477538353 706477749 3666630 845816281 966095178 959601087 696913164 860603806 521546693 265344820 577290695 877848790 1008982484 490079688 1040844864 979248137 13095626 859771326 741954684 810654118 97445210 833804748 705875069 572559972 157821817 392341208 714716790 478029199 687766503 474481299 489485459 305432315 97174381 644319569 138375565 115678528 940360774 904227558 269887905 804345442 931831904 760154330 979831909 259709991 745971016 966767810 601515326 592836556 843360637 988234391 624268923 919158738 801610645 457701575 265625195 422676205 998835633 318479462 98881018 763120773 797123913 676635979 83613781 235032793 4680248 761512896 791050387 140605716 170533737 828096020 860558768 499407767 506298714 326194812 519597706 350947439 537900097 734522851 255293335 386452419 507125456 1018892886 587168079 732163968 551802600 903617461 71751012 910310845 884863730 307435482 242827796 631742575 342866846 769133696 386214579 977115327 931436510 90546190 269900555 956518537 315941952 273678439 660447152 1059217513 510065595 778495194 334996672 341053585 309578717 595174324 594324536 211681003 624266199 888495928 713045603 176114687 465246715 644267379 708857959 339274072 364993998 1030870882 64522673 581227638 127814536 526640716 944961008 632037240 439806864 842516696 149691280 443050213 444389462 415838686 258553347 496744877 879076606 45030982 604998607 259057823 415436356 670104543 980442970 285862941 228515584 797121291 1008249647 208207518 360429741 1019505335 329379653 165161027 187320002 366795782 289415480 907393127 479927072 835188281 823914647 469220595 742122397 29988131 928374526 188968545 280555997 567623548 161740334 1072779966 232887270 294299639 1022739163 463807470 213373020 312192681 885255092 255993656 116689228 84339028 1061280696 996667415 743119667 837994853 646089250 227815522 672747333 824534943 430721615 615620913 115963995 6989765 25457171 510593420 978807849 60571150 297131905 811199385 307034890 1015496990 585585234 205701347 830223281 994549700 470461170 417240951 694398052 1036262839 607827167 554444881 501828870 1053227683 203446193 395806631 977892940 858563364 507127432 644956963 258735613 540182839 314239846 977564045 744217083 1027530464 693719994 85693557 647359727 1040608591 130287661 1054245805 704743692 884666133 257778471 995311552 350699754 777027445 918445599 572974779 919441142 4313157 586012624 522384833 197653817 644921776 154821918 679967484 870927465 520059904 633307094 392210201 32185599 914601509 428207770 227009844 1054194968 213874569 93173451 931999066 243351375 378990668 787101872 400763769 317464732 200757743 172848112 442882143 700773907 855483437 708159742 505002418 485922872 276656774 954897580 476426154 824228444 720940864 920063696 708553172 584809762 580650231 1042637195 22333219 837396723 692909312 983138122 653255689 222503852 608123025 1016201682 248858910 317047919 829313924 974032351 73296654 751923652 765458798 1066371984 368233762 339260079 921662854 500894812 108753547 186703237 294546809 84094918 756386488 474665516 1020292260 594299762 297773222 107500168 884442937 641010614 1671411 573648757 860468707 666778079 571872958 30973761 378301133 326718386 1001192253 654528784 513131979 445221717 890531489 501118616 1022117552 607388151 237919014 748378448 973883715 502013365 715646173 819642433 594523201 485930259 609742481 42962953 966967497 782128306 484829618 20295099 905017305 254021832 410844066 890954446 148286213 957398045 722768581 896898914 1071834379 611285187 318472686 665341992 844639896 555898592 884701620 794694637 962058503 279373684 903187302 692570321 1039511207 1002346264 653807544 844231393 955608515 778324714 37730772 256369547 623985887 617597106 856908222 439097953 308631804 377830479 218270942 117761652 487588597 64885913 307679311 151807376 456823040 960291022 25177095 70392257 423145476 456834200 238272267 933446160 230242292 719236455 402197349 198449260 486649447 452199163 939286513 245429729 476347117 536200429 905239890 80978019 1041134858 500168501 882938805 864822342 851239987 432005014 284367618 633534305 892899109 318772582 786906279 107612548 925704685 408748198 79231309 744921846 569470625 438441988 806766207 948990932 915495556 989810528 481405054 297505687 1010862965 760118726 52923741 348921547 148919672 528440379 43104979 556689960 769763961 259440736 377830371 968359925 570582463 1055924254 502403921 13779515 265884640 120092990 499661068 810397490 415945153 1025063586 349171265 643087437 726935568 733236981 54232265 598820846 160363741 678576433 648930167 923110233 212249001 866971184 902973234 413079981 107600343 516535221 487219098 869686488 475548670 495007654 680609279 357696224 558520358 718456949 329417112 704068937 207355072 710966653 1009253332 767131509 950224389 180049255 400204644 884936524 524255200 577483489 1025936901 512300716 88828135 943544098 459220796 720794823 325972062 757030185 487776979 661150626 828211660 928719605 857405848 36721272 304297248 55657779 769004623 940372795 522873114 512228264 334886595 69510611 1001455812 984340361 434609461 10079042 1049214264 816098699 860542377 510816803 654275575 932551948 39793403 394610236 166394021 1044365622 478826345 559632441 841025152 302943732 1062799228 115096328 425296702 805705871 508804302 798268686 634549569 693748326 62776338 697634559 692993694 651853385 30847342 862713574 702114442 615535965 563472825 474750890 1027764534 703312349 297782915 958462926 606029629 950771530 585366008 178867932 975235664 517383455 350929666 536997024 26589492 153463296 818187196 869160576 725773681 707436959 956337687 387512526 261328888 970845409 1039040303 290182064 314039716 262487646 744530539 672299987 607319634 706340463 632442887 790251357 200476196 149692786 902182404 659597360 652615203 354552463 50831834 574720927 108764622 1002210168 67633294 226137191 14602734 604769492 770291452 705683796 252114785 206292944 123927154 32124627 798615369 381357429 433291492 501322469 754087558 586741126 103720712 82684696 527333986 897759503 559727382 330443102 205403628 1033172559 927141186 24039795 280667160 108685126 655198231 880182203 782662437 956672736 915499968 1025711663 587719481 133861021 974304541 672331486 937424272 944137681 317335125 820525781 110291377 932813576 276767949 36206792 352677296 937714882 95996601 307585851 521867443 688358124 99650323 534922641 872515415 418405903 314623697 475726986 490653493 898223802 456238919 486540109 979392634 903638041 349557094 1037861351 166362303 989186501 249344658 207042706 740334145 254125844 881768580 487751458 733767914 162488368 426517768 712845891 172696479 776825196 286958367 883108739 1029455531 134238915 582953384 623969624 425415286 744361093 443357470 470911154 721319408 934012840 392795202 1034789591 1020250836 249368448 680583581 143861478 141717264 832613947 911267384 354905958 1072258036 304235600 782789460 504086753 149023968 773940710 973282828 1025182351 270095619 579831161 15734928 323977349 607908469 246786165 131004614 74808336 930209284 182756470 443900185 93791414 1000800410 289980198 956071684 760604699 341212518 377544618 583650416 901217887 623118323 352586859 432771928 557553474 457792293 152131001 857874861 156633605 474449045 285967368 820868053 566585248 209869956 196091684 72057355 227950342 614034033 684522495 858759121 257734456 670946045 876770218 905150837 896849797 975757577 570986539 842675163 490353987 187458105 446669458 761848776 594219322 260517321 261001189 673031183 274204310 22177249 363608026 1072303259 538234741 381444004 1054891165 377344818 243565056 547556532 155129557 486835832 229744341 870046781 692461227 307457954 236313112 4943248 825773821 197775482 472800778 157441257 790053769 531591412 92635642 434984175 650913977 537893139 1038539609 96820765 1022490263 577541738 703408508 416287845 801296986 533600507 182650547 75268591 642811561 1041574230 796384773 251852599 372719146 10360970 935245118 340867602 297500382 524596908 606543218 242640996 18916389 72242608 407450528 790810789 967683083 296316398 700133672 650629031 182552098 717845324 429346732 292663017 211707063 451641441 343385369 544036279 319550271 883282096 1043319629 84755973 732283332 1018466360 456425343 590580288 828258174 718803916 696715123 550483907 491785221 432672045 756934317 823543760 578869192 827005918 891372802 908813806 543709609 5732978 153801609 757756929 342681312 808629465 214007105 530728589 567878606 134272003 427019827 757019602 555141191 392565142 250653934 598044871 421883066 461145988 290235977 349225696 782089967 234516695 270463908 97925316 546126061 1060474323 1048533186 839496186 253311709 917188151 320527751 841347858 669899254 113108506 915715952 526599278 419245732 630275881 639126486 990720226 370672365 942827480 708232987 419664076 1014601077 294843076 987479915 222835770 64100097 19344236 1016283272 361730009 992959435 197701997 119273618 540372891 360711505 674210370 392972587 1072128515 683653889 879307350 141813409 831497841 18503790 806668587 965056116 996531114 860460707 998297146 348349230 829513439 812967951 284272528 703918222 392312288 586200085 960851063 726642242 96640790 662595343 896000850 1058200184 248314804 1024287952 1012034623 464235681 295400283 30434354 111004741 302460949 518763025 77241039 663675907 1045653892 530336444 759488737 564234274 175026560 238748405 213783148 928885525 321329424 852345473 392038520 813102564 568699508 260493071 710996089 13621813 601479748 919417991 785939283 728391965 525344663 199071936 90640785 930521925 944958048 994542958 481160744 313917175 774065616 480498049 453909081 562334633 473985794 745234984 660489641 325773499 658872944 241936257 464979974 788410676 272679224 593026765 465742450 320858666 1019250689 222616793 251949937 215498103 601096709 133535256 697188413 206715707 7546302 744289996 729144121 998368785 284675676 926610829 729491940 145667544 173214162 808217656 97981916 865874775 122128106 470685778 74942026 617984275 705670000 1061341275 152812966 265535639 368646482 191378151 1014437650 491766152 275743664 663177034 1023399565 785679046 64175842 633464211 903706670 212614908 236579401 602193230 236493114 83550888 908291260 906636566 711309363 574090314 845420661 946934020 259419317 131228950 657036551 760855418 988797478 370042163 501242409 398059632 495806024 254839762 172141185 202208024 1005675421 633519860 217333419 841493554 158621109 337134535 789328481 922256215 186093843 273031021 197881396 407712417 833039767 206923563 809016800 3329343 984273946 362440426 946799227 306433633 449247431 270270652 423436408 677482140 980476739 891506364 595267925 1033029910 448085436 499135732 408419429 568082340 374816127 835808245 927729229 765943361 3293908 1070759461 1003293478 331933932 771713313 643529767 893485345 544504170 17165156 122229718 1053747317 574943142 687918570 808848169 925267548 897014706 34948533 572341388 428374572 49630599 554870550 996823409 698337526 258368244 535251878 636005669 28387601 992950688 458121458 601669338 815256898 90211029 636991456 100818997 555706780 876516409 689000992 814364248 464437257 429258342 708646525 342811546 670418183 837771612 203256417 511003093 498985060 208622827 719046496 639239262 687931420 532262961 924623654 736127915 928386239 118757611 20596237 32365603 721692628 34720630 661742322 293989279 954141673 871843148 809145679 547260267 772871320 365964265 190617525 193517773 322815444 376092420 829592594 3416774 89716293 918719114 829612322 230847284 989355125 210136576 1065055443 955360173 925906527 266964329 497371031 574365568 159906686 272499504 227764369 594201087 830644805 752850286 642366924 1033722002 922707358 1047129060 856851323 398139746 602019929 830002013 49532760 607491574 776383403 562146272 653496167 984802479 57481780 169841707 4381564 942480166 336693321 376867078 997530798 663173933 549382906 285830291 24030873 573501994 150024344 775446809 110694508 112462549 737065773 712791298 57494693 856269303 918862484 912812748 817701432 651151216 923052790 564222729 298996154 1008792141 319536221 528923462 301253334 825402370 414330889 857901735 173553060 747497945 277710336 74240096 405620237 869476292 737553083 758069405 132547683 552730571 805625583 808057793 425580546 565070251 811709247 733854824 514755658 869791586 265291178 1005362435 1003467043 776281052 34532945 805990620 934498677 98567279 699146412 750644342 1071976460 925155495 1062326719 963444292 104760535 198181789 1030060028 227155000 410310031 579066971 236266951 652657620 274984067 114314266 193548998 365798147 936386733 605643952 111784702 267904496 669063041 150950234 558603632 207811426 31198883 626536974 946515453 940846609 1026478879 270367939 234079110 430882346 832479554 29863935 40096312 133518767 243824238 468530932 998693174 651253290 238713729 699867934 754306252 737044114 380030187 770531184 1033852933 50430720 55887597 307083599 205374083 223395110 371266237 529168008 395996519 147538035 720645006 395096564 331857182 270216143 595769341 15258625 799385878 355422508 223492139 849737707 38816853 586903266 186580517 311991607 646363891 705952578 915460237 737064925 960180733 448950199 717862367 465805834 188395046 927239948 219896763 891872658 807225031 178712696 159998645 290642143 76723425 421664060 469598768 854844960 83745227 437356001 35515053 987499979 64354746 619820621 676119048 689048685 565742674 952428836 110547651 468614085 468020535 699136704 140839859 723714201 768141586 461248812 454873738 802068309 438376357 952415268 452028435 802114760 337675695 398513463 504929347 559621204 865708725 1020450119 1016753292 892341916 602669977 596811681 518897503 1071790048 521407761 619053857 66410457 675698666 658351717 894751256 839023471 154432542 458162993 106284177 273174724 806005057 89948979 1064528225 660638799 608842273 39515657 465093197 631629256 188185422 239094776 1012893133 185791306 132844609 541318634 847159434 309906813 298843600 176293350 726547066 278178068 58889804 616435476 787360696 583424226 815384092 123300738 1059667844 845968800 927354829 612807559 903854334 531196433 31608176 14101940 145002676 955680442 323284922 493830305 203616617 441140839 731134041 955025229 343003388 590416986 326330727 195314586 838712357 24299336 410267601 899883434 810511156 56723131 949265841 513066941 378573831 249604176 505789664 110079278 31682875 671236657 156569600 13315003 122548029 218805334 909737166 1840813 466774052 1022144193 53219412 134575025 403659869 116660661 174501820 919553218 463931764 81566248 769218692 929389556 630617872 241432825 811680033 287035358 683006324 3767296 729668780 397828484 764413218 348127549 910967852 835086216 2683249 932471802 960851789 554423301 501225299 1010063139 381140641 1063235466 370360909 795360446 195823318 761186994 1044719550 181946878 933422669 850852453 876107378 216148097 311675678 808771566 525612563 260502360 1036342241 538626529 418275051 624231615 466562366 1062993531 460324336 905691294 280982013 917168827 221872844 566332964 42842616 301264187 257583487 105040607 756177677 647244493 246372460 1059289705 504764912 893725285 796223519 276904950 432557512 877705247 539850521 220215504 883950506 237182231 142490623 59933818 1046816580 299900704 62978741 566896816 737294969 146042479 212815884 694768974 691562956 750859894 489144173 627006865 339680645 726430339 48567565 452962109 826878216 861612835 694514712 867273887 815355467 727408306 873581520 83514913 764520665 144505876 833519493 231347547 275918036 717528455 974720151 1034269986 588281675 84514697 138116889 713110041 406959227 101735484 53692277 858370485 126885927 964287030 505380713 219752435 7839319 517957799 930580201 216537623 600109876 212440904 757833360 614068164 422621309 81587149 99176275 27217293 320636850 774587970 379445225 299423010 923028792 394791251 391878238 667681639 980915911 259483911 164341125 202693591 1054210085 146734149 911154480 999549433 1018140697 433020004 601879760 341410217 269539636 456507670 406171848 976702204 206334683 412146082 756606351 301004360 627118573 3622413 8423719 100178501 562678685 182444613 1021905268 1005784484 893014437 303692341 596689980 467767435 84859236 529171821 782423200 84291057 807899110 721055456 439346298 590500579 925528997 424507710 835544597 174786815 999320837 724850614 906651906 692080821 991122187 412030379 773816992 341507831 954502191 169971646 194461740 413263082 540015195 983504110 20508332 924881991 675519008 402400497 553210990 376291123 694430574 322070400 711090306 99818744 963028241 506239315 378834017 618140895 186634903 162107622 970869615 942499760 1057967607 259482834 316993868 798616211 195610848 434667730 743906696 695342304 794999345 73593249 1002318074 691165870 208806235 130649111 904399208 717482001 185802967 815515617 18643299 674818211 656012514 281393414 1050991959 979272214 45485440 1029057317 1030564509 266844218 641270991 383829111 794326220 882887290 192406491 966044376 394011086 220595949 398331426 83714107 715360747 333072738 672610352 149430280 408882561 479789865 891673405 424841344 902255246 567516177 1013713225 47981516 277183554 472311172 1033637089 563309661 53818365 492389137 41280626 449588613 601224264 600843862 399916934 832261114 218772946 631694557 551178996 788267147 1017539601 942423960 549778088 20851549 597724119 222810117 417211212 575529733 665185809 988698268 2105891 1067607723 723293314 658737708 754355155 202525678 620415357 187241616 44434440 476000888 335284033 1048362729 212270982 654439442 586557020 147929087 472856739 729732467 909351261 866974452 1727965 873618872 676443968 363869186 861962564 578236485 45872029 112493184 493981268 367635780 1062872560 203004526 457960799 433982782 999804199 685538794 494273131 794620827 777625147 643253927 827474667 867760260 870317201 596361130 360130681 322813239 1006283663 1037933790 126304105 1039684011 554927478 642864893 526504610 288056521 632008048 274005611 246424732 209659850 429495531 754213061 306789311 577124817 664864613 208731406 278021515 192477651 457686445 811908072 198497003 406901827 211645048 939373074 386748474 932544069 491111060 103010688 19500944 100510657 131746769 625438061 479545798 471138922 152938775 803992128 63883318 743810283 156161191 689039429 932205796 820890382 70158831 761351506 363348419 272430533 942824733 319116131 907570342 339481727 910166274 691644140 652599354 86194635 645311462 317895837 1001388395 889141374 89206440 167900204 783383412 628951712 10295005 381897693 772441165 3999167 596234109 900005 807855947 113359882 733365072 283491486 1034699787 217166769 502808773 464657608 398776938 432691195 201479961 306056828 894845028 6061489 1002130898 492416978 944313371 461207936 378506375 739105372 849204170 494396763 549977590 701695668 908838884 9689188 497463155 461182572 477110332 182797945 790644573 484201191 646032623 345714227 93518485 343788711 298063503 141814483 230267153 142568775 70089214 238950738 570952140 593434763 620337367 46436509 872117754 77199366 363413044 167039938 503681623 418320787 333972951 618195220 641229536 189459185 39224867 144798820 909089124 377471324 1043185709 108130131 134020326 548941770 464763667 598281888 60922732 936309662 1002448330 283862447 143562585 900999885 334206595 413761066 417628514 562864805 642012563 657008242 929329031 334114644 436906125 687322129 1035059165 634367424 632720637 979169 1012012045 1053804664 554425677 1027694396 163465300 541691537 845410188 920496464 53360160 480057665 349879386 986754206 978093938 44815716 516554942 649496341 181421058 424843009 610171056 763265928 428996445 321658262 513629293 119121286 724260620 589426190 671960471 273587537 83559431 1045441376 691230420 609817308 253109449 689814727 286325453 712481145 527843278 1016962677 390792289 978510868 42685609 193897306 854141213 727046703 1021397730 902874471 73085305 545206185 1066405514 143496595 539795609 815559720 324250971 26145254 983830064 503812449 850036759 625806743 945919888 769270566 286044567 313196063 733536194 334751103 394677592 474244373 235517573 535682444 688453224 768028550 446007673 654705343 387848443 838398587 164912399 35679138 335636184 714186301 234748271 1052314834 414770824 834213450 840503420 522503429 502328751 894217265 742595186 462126634 92439999 911679334 454568344 5254108 313676784 906232921 1063715610 1068431530 843072300 807138858 133975938 330588248 469556927 599136601 610464269 1068059263 583721973 990594558 406751979 189362111 369289170 838454093 210643644 363637068 451805833 254904838 111171011 901609592 709262861 532396529 822241452 341819079 204458403 153435939 911557489 614636687 402031239 990034577 20165034 131399910 500632795 584928634 44665091 361175170 88607880 489775222 64156643 743003510 344506752 403261798 974547779 1015489236 748459377 761004249 635251299 451644841 40897836 157256476 262986514 874634416 1055959452 145473086 1015002378 408125858 600706861 448658448 819803056 187102962 1000963131 297746656 171831982 1051003499 317347703 834704979 854054701 166994141 578794491 356421361 19280237 719657005 962119001 191019351 292684927 653310392 674980306 588577440 307817330 448936043 281717297 918442439 478978328 862757233 971939795 952708444 715413230 548454835 680019044 112388074 175243841 698841355 61782622 345223532 751805514 923921569 371779714 825153292 426637507 578535283 837950406 881712426 222468235 1028805984 876042802 1020640146 607365116 316669971 431329684 1036677539 663329844 302630454 558893882 278102862 350009297 797113961 1001453236 215932365 29685714 178496915 715133725 776720869 780209200 626648258 77205275 681844875 734786132 942154889 121190660 490996165 159007150 427387693 246753449 173096055 212592655 149482230 912673358 183833247 278160985 109154113 50783376 679391926 874954294 6915906 120524297 186255007 1041718435 432219466 382787692 449331076 587959651 152917001 138688788 894438299 476877043 503900076 686382680 146087017 531907726 500883074 174045248 486422925 3409384 610254381 592315014 845637338 397550284 570209033 264431416 233998721 890021355 917630721 951003080 115406338 503646548 407023667 890980462 373077866 355807932 731528907 309176293 201583659 379314352 873403391 648841331 430414122 323771132 137261558 1035667600 366852667 61195866 419043054 588706616 660924605 961229203 69684339 632626662 1040284026 781566153 822613309 791558320 801304601 88984678 199255960 675487278 915243768 66133155 184777198 60914523 111156301 975887755 631781814 113112556 759041696 665866932 73415322 258277097 433845908 39389347 825116566 405594346 590425959 934598835 662885199 763253317 503396922 287624673 982200890 194407642 693313841 83835630 550516533 568519433 1007469916 555374148 174349254 1010757157 904669462 280508071 306011584 549538001 903878193 651850989 1058231844 576181739 108944558 877148755 808408075 388843865 681067248 130009816 259581660 84840915 528898898 327787891 601539458 1004942022 1525285 113262255 131324976 70224373 103462178 403213379 315486722 753161523 563195450 366383824 847642001 493156891 5795584 616742670 374640862 418840289 394881824 820474960 444364206 786790913 1037562942 412293497 670296851 863402309 754665624 429875597 250370589 101975450 97773685 496323276 146773069 593795822 958505475 577137952 338013005 78294812 307013917 1069085476 30919598 675025603 975527414 1068115921 722218381 725480980 614233221 888095043 554074967 790560659 628536044 53716652 902894153 349621788 893558592 303263874 691211420 532371274 805181371 414495322 238948119 234535313 290015985 839062281 1004586992 469878738 443999545 667586668 1003261479 296177423 1038822039 123785940 296382672 372405785 1030042263 538274884 874356523 413293296 561570958 299811083 754181992 44484257 1007573680 220670740 365444222 55622217 385376238 316924053 735798454 849438221 648573942 119767469 921950099 952162256 422821200 742024390 1015202198 998614693 489999421 939521139 892755142 704718818 661681338 735490146 1067341058 188820991 818800813 450786351 705704359 371575616 109543088 1032592597 946599482 67369021 492317691 716616267 1061680009 1056701729 172901569 550054976 124071608 116278633 153388583 513891493 405530914 1055792697 150340189 939008746 716286378 967724673 353571569 240397735 186315815 979946273 698377274 1010826129 419410870 297265558 288965745 586024596 847581078 924350207 902191477 964678962 510434778 563549659 676765823 627839061 190603006 333316892 772060723 61608019 181002340 718282578 1028644679 360031788 659784468 917921484 176584734 685156944 8737469 53188243 209298857 648906444 310046665 814560212 1039332687 539054570 318171965 138128037 785347678 716583569 656784895 1018698197 303122211 684043649 768336608 1016008044 795980255 334899580 765554102 1030722442 119164496 107528126 77388283 1054432906 874494926 160898120 360935084 212833160 314683701 373284164 634915354 146254244 677805818 817906009 593150146 1065673554 193044880 844495548 80759205 1068696729 1061778295 454077512 483271104 731677237 140156336 833889585 239318139 507624845 876757422 429173530 298576892 837234251 662903417 312602408 81182561 741580167 782351630 241765200 664867216 217668694 469083895 709737956 1069516048 429033017 401322019 598861012 312552240 617227598 938958100 690971115 513489610 587614457 528977727 1072505783 56654971 333405727 109717635 547193126 627790495 749645086 971211599 3950608 879727010 1043408445 121498167 129849049 310556838 174818929 427530396 550637196 84357131 494788751 15465581 886087960 387751991 516652403 1046107491 487903301 875692742 486120036 404992242 471092703 353830220 849199804 238263891 59348799 295078033 542191616 887396024 1011793278 876755495 482131578 1056839522 140037956 735649231 614775209 155048085 395874792 309523426 720534509 937246279 619306191 749162253 60745060 109329760 480234195 713758246 410034215 879584001 557373565 388592580 250067955 575712975 705674533 84150438 715503701 811725262 108603813 137510951 116117068 625921358 844528670 349385736 1005143048 614173724 440684389 769105188 408979218 1052319256 28979520 109269848 353192383 288738977 282827787 158474582 421811276 965561713 353356199 777374178 786429811 223624436 931640320 993051773 913244683 126763809 1018097842 74262871 746972421 245598905 710714632 844861745 167466746 337177450 417626313 659380308 919287795 553942390 818362632 853772672 69790380 905844789 804819067 1054605812 243140301 396256602 256929378 644899474 279836955 158539865 870254643 844588100 151319393 491603288 491019809 617420178 64313313 837532361 102802543 316331010 492123150 596214193 924663722 45699547 582703741 956181363 556443821 878060464 887085655 216782203 363061267 435851922 19354299 763715543 409616635 909597655 950887493 448640039 772665841 176159296 434638021 602667044 199663482 589996256 330997924 225125912 960539447 1067866556 584824430 843031214 16491137 295982314 1019577573 245469546 803934907 677934876 744520349 923595788 47937657 832052314 799584731 30071844 470036530 684254674 738884046 780232584 255700545 869528132 620853316 665754684 906761941 564298591 722585480 484576703 649303803 1008440701 945431878 961932434 59052035 965512104 125653876 801267443 321484663 627472661 488334203 410300087 738493087 1030578454 595697010 634384109 168736433 546934560 578818679 234244827 73063167 274461353 778339784 956480189 210441620 443056751 725250690 90529770 968105033 95794472 493741277 490137925 642306263 151207707 1043504018 54471365 830198340 877250443 383433464 967220530 675279690 194744457 672643311 42021918 742124209 60870890 203836387 446684789 263990236 199306388 261055315 420609593 140595547 208328064 390275747 733991245 797654865 862407079 1031174070 1032198975 246087561 429760288 611682725 578956433 717117343 444567210 541631968 572222665 717253286 448339539 881438362 870683914 405072220 127215703 393053018 147998518 47643494 507180185 1030033367 720936258 797727238 132530906 379645233 54069067 812175860 209694440 336745208 137032586 439716784 873481023 945771772 187878830 798811049 519613893 460447258 492520572 917836853 351011339 53255476 157948495 529398200 43464480 953973126 712418668 190860529 488401919 986219948 334667756 779317596 687800224 814682805 236595006 988036424 195806519 254237885 977348009 270166199 1035493508 970267484 299752963 1059957875 388752548 772437336 306028199 323721550 667451791 264683906 937349104 73511267 862451272 1064617197 1278792 288909869 681359484 33619862 617919021 127739498 530275994 731685526 941680772 874135222 940831951 803393103 583234932 721911388 882242319 631798758 441139154 644290001 620884788 626284863 481707154 573232733 145698384 382487087 647285928 403560354 920877191 723357381 372881767 780249947 826245350 826175944 170567582 541037266 870342537 1027533233 703141316 15173993 712170082 816077547 409114599 60435148 229088002 502407912 388383259 494013820 989299601 116964415 771935619 846087952 531029412 54760051 793945863 351122293 253951202 733406212 893393394 283235535 936779022 846922258 155115131 409078064 997394721 694734866 541324654 751495850 554279125 459030861 800877912 265553122 969872098 872900409 56590979 760601605 167036353 271514816 877101272 16551347 567681215 146679170 892511580 925046628 1067817941 484081254 443985150 766324433 225105059 251909765 20653890 166133857 452781144 42674174 166670448 744058294 275928908 306830374 898006098 432184449 38758477 768788054 159037232 311862089 1029597440 971406233 103175121 242000758 376820157 492901122 276980010 451923637 237629217 593980162 856437023 280284473 198393722 388700555 1045384525 862008488 813405497 301611838 387858748 930152894 664719798 33122364 503948682 335772158 559516874 728464730 542142259 912553996 159435992 779936909 954950419 802346501 761140587 729510901 168099007 934374077 273627358 55223871 598387937 753974714 956609218 694607627 699296183 856132229 403790343 335987096 531805753 433590755 253089852 623092303 55434768 223742989 855683333 1059556493 761825991 302610175 191075894 1053377802 83140419 941974744 832388027 780151685 381736128 541865966 100475799 844876313 400325568 974195025 824440361 367270645 721507575 711454391 100481457 1008232818 379233173 222241529 1008754992 292804872 95175822 860659812 700775480 759624412 195546618 638360153 400203595 63586602 601056353 529181915 371497955 544216608 764237704 934535888 876177 374973082 830043148 805472567 1061729096 749471935 572596311 113184931 264797519 279214667 258414289 157263723 1067703929 750623839 67067237 55602185 896235139 101679523 758944385 262013435 682145726 367906066 132551540 699836408 250837960 1011596824 267017698 916197546 614840263 645198333 813872124 1064332411 252909905 401071196 594700499 430318891 898768099 850765821 637873124 596772088 582526045 54651137 155596979 256958273 511060500 646865484 412979467 791717999 990823350 806652940 208249747 184684372 595445376 259250583 316852561 941292918 692020668 794144347 343438853 1042249491 1033752850 335521143 7798390 595809652 602926932 741739762 24661169 697248364 180010636 995629164 36816314 362743341 390978352 1003289036 329750774 968096195 539019098 81842601 78348940 259909609 57373232 709327976 1047559539 416986179 456145351 329471769 279812449 240333735 840874519 410198303 87349764 134550383 113500160 123141294 586085166 1061718426 123717254 975259944 129277349 982477854 587250461 372165677 768698212 314802733 63351311 884516877 1034101665 274803913 216209871 810421590 786531178 965230452 158063035 580080288 354558484 783882756 904965986 470187565 908152950 28136689 954262553 189631613 545160117 703291757 841594284 789989191 649197873 447340022 849801703 1830811 474067786 502345857 877482004 782492071 557263597 1013063304 374467294 989656972 111279187 972843493 211710573 586323388 361965258 336822536 998785254 726437648 53246610 622788253 95731971 292017944 756295595 554551870 285846072 437045224 564495965 775685381 370043963 417724207 232457489 739786516 1023746209 847900074 744046516 809358170 9407433 873692613 650734569 532986575 1054362636 946422598 1067609633 584039228 222310608 684889890 722901050 434796428 807999325 404692436 937679215 989592156 460817466 604810879 364983802 95798451 448386898 745016789 444892814 285856603 529513982 859356332 486783381 918455817 213448273 220272877 42501254 913698943 108817846 466771104 500874229 877444222 616288913 156127709 258995020 54604696 666963020 997035884 977298974 420323205 120155238 57336570 394302922 625860717 285648679 750531392 763021828 703825604 157964453 727327171 331232333 794330538 372572421 553917247 463244400 386703943 460462417 1068516274 867856240 301043119 277037271 109247374 401455895 461049027 84867199 1025542839 579306239 708680746 715256072 822571548 289432742 11199225 1062385198 400142871 1009868882 992809032 57265943 443151071 128365809 681361163 836060279 959801396 625124838 638298068 901331622 901734407 492717013 181407854 311178488 988734318 504078101 534519919 619118219 797978767 409057569 957791453 352295186 676185913 823463672 73399233 108175480 140134167 19014236 241621098 1062153552 755201646 499036899 647670994 947006381 954729120 479341330 18280889 847204916 907800552 206563894 133720339 418591434 668728452 490493248 387920962 404948438 560349718 471038469 1059230511 885542445 207245426 817447416 507786088 824698725 569834554 831580327 71222433 171537465 66370785 292514741 881119958 847427348 145692174 726361400 205871869 110987808 789568059 263975508 12234289 902139977 244719442 958423122 947914577 347271700 25229050 626436031 909782355 639734473 625672169 450266758 720447397 606562751 175964332 742071539 655410217 935608806 347118616 300106309 449406113 164815464 997602577 379304248 683722393 800930671 738202639 693068757 559663600 183374842 669496298 185707729 251081920 988724368 583968052 372574542 1026954264 350864030 254160511 562762404 756001370 719522275 706833046 510264015 337399270 569541108 309743754 952240012 590528536 818205952 645299573 757545057 436428944 412696766 67299534 568633226 574248856 234930556 1005471934 266326115 675601612 828146308 749774470 41460655 679769732 828743997 379057541 568807140 660885074 838139674 606651804 1022721136 697624678 765544080 599886613 300923319 950287814 776562941 492386615 372197515 165738397 302678320 423380913 358365877 861978874 1067558521 832821641 291608234 1033135687 752588010 374281412 990155331 16965129 895409179 811592778 418194171 207729760 143173381 805034570 204799497 1006116574 309473513 35838843 111366635 636545990 893092026 652423685 289221975 193860667 381468503 59324064 352766991 967930155 490478880 588649477 768095314 386994689 379500449 1013207146 541973530 914389555 1062501593 661079961 776520402 730606003 19076946 80647213 159676055 125013439 749081805 852779533 455964509 356786859 863398140 541439027 219081817 756314103 779496182 912155055 622584251 1023815139 889317856 878135133 764094993 391528879 403295103 757124338 490239548 836666397 416614683 462956144 221672100 648608400 990407058 359490898 110677663 75550629 857409654 894337248 435326938 287680643 767303090 159446499 442289113 811627726 373327931 231143892 1026051753 707294838 440768394 674937335 475878874 112182341 96815520 73896911 1023514099 827829754 548157190 961008210 743098716 55429200 750439538 397546428 805339194 687785874 205987519 100652384 797775579 938403184 839273139 842067242 87369427 258065063 798042459 65029384 920629693 232412072 1035387111 500779785 266497347 729615941 245181231 605430537 131835038 611106649 169014025 680880002 645293860 782636535 681683088 823530214 928642829 1013687548 405609254 144022063 825710811 740697011 644995857 655547103 723511476 45374802 603573113 907728208 685878672 132945198 1051411039 102940823 243157671 188798607 359364112 864720468 1003262842 770806993 451990276 520579638 141383596 137829535 652963969 982905515 91508503 552314294 188633519 1009827495 622095815 278758734 447500557 1047217702 115612672 937294325 971032125 311275963 855896785 334250263 1051715153 502177506 716722562 36118956 976567432 361711217 638654936 814915630 941219112 137207862 850636937 365091271 377818139 627643910 739744244 1046792748 199065146 289289739 796250768 686715251 365955569 603257741 1065638953 585889166 841985629 586343355 297727493 611040782 130267516 772482459 986550587 629065927 402889984 781573944 83655722 231495058 506516370 152059500 909475181 411053075 1030464562 925573468 50125551 1000359059 180470014 304743525 199233170 71036322 63945872 989423081 605220150 788012989 113117474 750272598 770742311 209825477 231328386 143966690 144227978 96892667 1060539018 1064616020 58486326 682766591 763194256 767338880 759147474 483973926 59590543 714778338 447310924 790560554 699038004 492526255 383614121 81745630 902633088 620753865 351035823 737354144 49122626 925869765 877395250 304603657 909319209 909338078 292306666 361716603 816679321 911281960 663294950 530776198 458951013 982146206 853537429 349058956 320146221 31424869 239086046 103473611 61327389 381154314 776690057 195214586 547845444 869021155 602848928 39475037 323506150 466648042 917870487 495643428 998464957 851628265 5124699 125795220 910204463 176693630 666042766 73075555 1058074600 739650160 635054806 492122316 673776497 660014379 475519498 109366658 265154231 79634861 1018048329 592788308 79217952 463862594 908747941 622519298 768921854 761695940 995652697 514173271 482633194 548691627 405862074 80956906 886191639 725451911 161869468 269840126 582300920 987682466 224016734 714882080 119471385 115838479 613357716 3666105 278774981 390668478 480201174 487547153 639649046 839538400 212395967 1061192605 680063317 798954815 1057689269 236620896 331747555 681535076 963690059 330956532 2399510 775874954 370704043 1039076542 159520714 626267634 45882016 823541944 450635591 1040066401 438067202 588412927 511232558 684309173 488562207 280136164 749839272 798649887 870880652 725759934 330099111 347409276 722688979 404381030 11998528 472184174 471475742 548300651 897157841 359030406 876351590 1005245346 544177486 377650037 885161808 1056332880 722753218 982625030 675141537 1035649546 634010363 277545074 552018128 177905224 945602389 93571783 721051788 336306198 946096227 737769588 384224081 383357478 541875515 337275144 39379351 501920783 380293375 852674654 128660056 165650850 805768328 43283348 412187303 768379046 861211171 266801367 976014639 1039461286 681236964 58394730 1034472002 373912547 271323962 955197779 704227720 286255098 967393385 52276311 463421200 998410729 139088069 712001206 568547773 408567692 889611824 373984267 108907489 245608967 263419302 91668835 240495522 168383346 840938756 961300948 620757970 915271279 58250584 660694255 1026012861 819264426 170214705 764970227 1049482769 22065994 96225200 649855150 281001986 418416325 680667809 725411037 376992393 1033172817 730460186 400428980 269150993 686585975 1048851999 1032509631 774868564 1046287574 215331925 630977476 576332774 190762281 564214064 594131477 995404387 727792507 437473501 622743766 781785982 533602454 615798937 831599740 454982669 44227586 789854437 1017794819 108810310 173205431 412827554 176493121 364919111 925222422 222224187 767137857 102208263 363528258 64396556 516941901 724166457 772899098 63006023 460363774 762872660 907571650 378445556 36975566 892928741 517874667 972781451 867767841 335798291 584376411 937717930 153715531 60984144 717474186 798968059 515472710 528749212 347607530 928368784 664344225 808200846 432470178 103866030 966384406 664460350 787026268 490189585 152986755 849513639 16356332 319617648 412748885 529965265 407912819 893869190 1063892832 416457865 726138082 971784324 271143760 584718734 158950438 761111357 377421462 817352860 508359708 833605944 731554380 810497568 521717311 741615173 182452407 816810192 976021413 115358483 168435564 263247590 725516804 513579712 724362710 177841184 746792181 576384556 54822970 265883520 734826138 643458250 612358423 49370652 200375292 689742547 812512429 1033560557 952486894 153612565 398158985 361843279 442793220 409727068 160643896 142306155 455389353 537775764 438929694 945691298 543005306 276037334 656112150 504433470 444391663 358746106 363029138 134104555 182634300 453781734 842249069 386359705 719927995 997025305 5155506 1065826120 202799860 787961682 1045922676 539582828 449846698 470669409 127854159 967910019 751276180 875059352 91770252 11393432 506749349 206543210 673297765 979903253 584321339 662644620 494051496 558395345 857153640 197345082 783377348 632113179 1042488425 477669773 432117234 487665522 649179443 594376337 180525337 71409268 526213008 128364307 223792341 487509152 826898738 422033945 260063748 821341562 386807968 871227797 121261622 822016 932470190 22320772 160277686 21304453 734764843 257687739 919580376 792126682 542207213 954055790 814951014 276737540 992364221 215063805 38493532 848239340 980573591 1031651834 632616028 425876851 233439327 820606125 380995325 940925009 893115765 41099268 60855927 943810558 398447781 705808671 92693816 458737012 60997925 982197440 691391167 839733057 921528267 562421327 487775085 646015205 709427048 66403738 384619267 948650067 242846702 42321859 534881982 768364071 752174480 557519605 700531636 337362951 945450388 649376868 962726658 904228746 299031669 181492140 270489900 315955959 387740991 257586461 930412514 956171964 55457622 916003583 94511120 677526295 498879844 256860669 585846443 140064814 110898683 1062745568 436180452 1035440626 250656753 988394055 95098542 1016537530 720214914 341767807 182311 559438244 867310172 207317096 218265861 148958499 652533621 709126541 809696748 189750738 232707401 972047575 459757940 945686320 132425504 929657647 485616476 681668595 130374336 234387325 882253430 166445818 473110266 265562390 342958568 721976697 828512794 138040969 239293936 11263755 500642816 259182522 361497868 900900132 659190307 265557154 129861179 383025721 1038311716 485940350 1009760933 454787830 560115418 664589569 674562370 1000881480 972230104 483889798 356437658 838745186 125192297 659756306 932603541 12721973 630311170 710418189 52060361 931245487 426565598 779553623 500013956 58869891 1057311656 968500555 749162451 506039472 783986418 441780753 837391584 556645871 903527021 67964507 798575563 1016404792 899851862 246040436 232315747 996201490 1613031 464658894 651425715 245064623 24426853 605853229 820577671 652689692 239475789 667546112 600486846 289490324 908901753 992969913 351204091 712127634 114663081 181466356 744454440 281452488 282218194 935853580 711101095 657384356 876876878 625860046 38541839 368897361 551858788 67433117 803833701 880889820 631968620 549792490 414656182 510302927 5955704 503311157 779210612 61799475 481208121 40254148 798420765 453678460 503936382 244720899 685888645 922917251 937710498 19538795 519994079 259651542 800232215 587740879 18646853 758736706 738545388 203076547 477909986 287633011 718107415 718403840 58166729 855895511 968050109 737954041 443104774 140979158 603508630 691419569 690629108 850107389 1021403578 1051193973 710336704 409737650 663583272 163017076 965244257 735223550 228501253 635154324 947511585 375239497 238646240 898345775 969594650 984557267 41512397 509457692 891874569 19336528 265015808 232268922 932576820 687338764 1052040370 427588270 179943696 616221732 943813034 178720422 50918767 494073709 761681611 969271828 1006562478 1023961279 73222061 928295153 1048387741 895341901 1027257114 49146887 290598306 247655931 968345115 500574892 974219866 859944049 882420239 805334121 124936974 23495160 494417265 250339860 252799585 613411595 184867759 333773640 375255827 283737056 483787283 888112672 1026209404 851640292 201408941 653584330 257517478 167227470 659288222 631356297 675548074 604150316 800860943 226927388 863769225 211248966 730725528 913785916 656223005 148424445 825867037 809385497 53224888 586664759 917753451 504098578 896694996 1071247977 390414675 780617535 656217499 543631535 757956883 260530115 189490317 512162112 911641617 23417913 178261071 50632043 146678836 1062285343 323846506 896393940 957074783 798540965 967138998 92902305 248976033 952591074 705300003 414085245 1034517915 1069950479 291268096 523293712 568591052 86895092 587764302 81458502 164879925 297140479 1052535033 161511776 37583606 1008196520 753821556 443631852 1060866329 903561621 41286223 792742214 592851864 554696260 118594285 753629834 724781751 592268519 148768287 407398579 981768377 909414256 178549959 107014956 80664657 51009549 982417045 268291452 1045217859 280871221 305264682 779527209 425360878 342220198 453105497 471533405 938525175 820637866 108169575 820156733 418734326 246054447 599317901 804418424 44483041 210390200 1061948124 161451305 462298786 546055611 874450928 199365648 509081772 76194378 63152073 320250300 545264165 293045966 600337872 487684318 189333322 588938565 40989161 824178576 799108325 843606686 654688868 678528910 823676238 816128571 641572978 892251336 804375114 327139327 1019616032 522942807 506186200 467447551 591016486 684680915 264272996 913628523 1043555588 1032658978 206455630 607280207 910180961 110967626 1008675557 297416658 269352352 396288136 936834704 139930537 125474606 166229619 617575467 532318445 847204273 1007131729 583060152 935700663 457851939 1064042274 56028049 798574374 892876124 794560784 852006316 409531481 298872161 314592682 956437993 992415976 812106616 29909997 250467939 986377034 614528663 19198115 969586819 198882113 43747959 806495000 951995183 56188230 517913081 812582809 179090812 3196766 243287126 248962452 970101535 663949599 857899625 844897402 747204068 407735836 108840720 528168433 698075309 186961916 407190530 905992264 277551828 960856786 471074093 574810783 105448079 578082771 665686876 353032519 674554570 861260393 452181338 824249290 126300115 1023820184 66955958 425313946 904719420 806469580 185038567 500558178 757920167 822726523 943688235 58335476 418726707 734589282 267473584 638515641 588733563 927058583 245570976 40486762 229096732 42087982 1012725076 191539455 584417951 847770226 345832627 560259127 928142214 752184403 166565075 519436884 755118457 600295141 202791860 818815730 512375758 390041715 188732464 300282955 806741155 261940944 152082391 736900364 722259261 981566764 413491279 295602719 253413591 687962715 568166757 40704242 42200082 819805718 534490947 196683511 595482011 28736890 608104179 381161200 669576280 12508209 768889401 141103881 715391047 660694063 241792074 259861608 58936350 443087940 922540681 55229451 644285822 341311794 428090792 256963362 972664162 532912763 221151244 728991897 420177000 868102438 294327071 1008633198 1041427167 951226835 856041686 297775745 587854589 478594531 668033446 1073330578 759760234 908776944 452876451 38111331 413060577 749586318 283136896 597601130 257156059 982092018 432800279 314865432 884203948 879347201 740472514 110257935 276121 204061235 198468417 663215273 703435385 435118836 845350063 296662870 677849065 788856246 701228852 792490560 511424640 482341743 123951257 463005857 843751574 651203980 236139920 531354023 596142775 593046897 134557132 683991310 4108012 733525025 268952897 471574745 800167147 769550392 381900650 749595774 919649786 1055907611 386859943 582993614 546673800 881818974 589977559 687344264 116152800 858732312 658416060 387034666 929021238 922764092 698694024 34483251 627599016 777953594 677754606 38796617 330674594 150325119 174837887 202793760 36020090 140189956 153231827 224972675 678132975 353260224 698610721 161080350 591103524 997086653 500557964 972766724 773411617 716671184 189182277 917784065 378754921 470902941 765453560 251462161 693448259 588687612 1052871265 245309987 836858251 725351164 780727143 698892431 1061762891 483368720 721581555 277295791 353416048 414489888 540592663 445170527 1071573514 166419644 607753104 642999465 32286270 253173736 240683497 317354801 680433739 913789670 269056990 800504184 102781925 594157979 408598387 577861522 12583808 308815417 910626814 660315952 3008262 918689885 59648379 322208345 110863401 728334190 503175791 914059110 21115290 734203580 229412243 798559033 217869852 424270332 844898886 896737996 192381255 163488494 54137790 694850565 913146232 78120577 734686009 787832801 772819578 134107679 934043687 771988495 604591549 31893232 308909359 100896763 441991610 550275792 44002190 585270826 921366697 1043726894 1045396345 561725281 603647850 192811873 361078111 407472802 474095070 969731971 799399291 675708762 614266284 555912175 148112894 1004269269 958680520 290176556 580809098 773663716 902491848 290044707 25092674 126599148 173801585 853829506 528729851 666712343 992088582 439363526 919189294 379235437 818252054 610946788 240094887 141115514 72776352 781255195 836062524 257033771 614017060 874831216 550234110 536895240 799563682 501327599 400263735 98705434 873175829 997788822 237944720 765291870 688027796 627916121 556754058 678131988 105025304 585312697 499571187 1068933595 516815469 1001261797 836074694 116249791 794016911 1043820975 77763515 527187296 703471406 277837067 340285067 887291658 593995677 484491485 758397104 281666678 996132062 211274705 1000772447 397774487 1056361070 529182156 596546850 638000457 696438476 722114971 520385403 31579148 73038223 181104907 373004184 208043540 780342798 523370183 994433088 586627694 286779281 176045080 873686590 43177378 952527063 885527056 666260447 897777142 406892681 158294269 1025254036 570654078 840856781 70218640 324001320 446384641 1020809008 693689592 491982751 771242300 991093187 50398514 508784535 714892033 198967585 967598844 816410334 974875084 109177918 179475493 1039938067 180204914 902954059 277065590 116581145 170002879 477115184 714461595 258487272 677548466 77567947 873889411 689940476 860351456 254790510 612520480 52501362 143808169 162179819 909763239 20559458 508026355 218419174 559399331 490311805 137714515 968070986 594394831 106174915 620477052 938406635 851126119 763508653 51933169 1048183806 762492212 708870883 791856743 900567590 354032924 248045389 337079054 4421517 48052353 580056396 839850965 335136307 80617478 38276714 114595667 552133759 608123540 212714815 220188172 272103993 172289139 104192817 940705621 396722857 916639890 106092970 266226101 901212332 45687216 402924864 48771802 479699471 317805770 365707826 101349297 839372500 237642165 644646704 343454062 799731087 16922106 855004987 153750097 634005617 342609792 237973431 570015388 564848294 461254331 623374638 435436750 344256945 731893127 1023274199 59386480 495908277 998377067 68180193 449098055 800501303 977270355 748147815 782204719 437341014 649686339 166907236 920449947 108549749 874351771 891959303 377084500 186484087 675557944 19761603 635006777 395221812 27651056 408441948 480867371 820747874 922615047 313576231 30275646 635954538 167302623 235339199 652557108 499335785 440139406 190822171 460219672 1033758364 330692359 308216093 55668414 234064875 102565822 757528069 596955522 874797627 789304029 182660302 24821605 10666499 506444412 63894674 572190166 980409291 889049170 829792250 1060250472 203739151 153118835 446951971 770119898 203506740 722705005 1006740448 337272166 217263143 441770474 1035309472 229940604 56197397 346265058 713632200 951879880 837703265 12518042 58298072 1039796991 609615662 211920607 707166146 358246221 450233708 330738924 698988158 986568260 759934747 967277687 56740203 1052993915 947477812 685028777 375256713 116294022 124202006 444250584 933645465 111661907 912433184 48133207 875708180 876309623 477116343 217940240 910926012 1008968811 506421233 103853799 727128715 533603219 189040196 1018013347 534303021 1063610545 118454797 609608600 485793230 291817658 608207727 777046573 551555082 83275397 877911415 102569851 248102790 665309012 423877141 1002390941 592210099 939652562 862004821 1057953170 822791088 191288862 648667770 160906708 1053872091 1043255600 346705195 76967184 1034649715 988680349 243478263 405956525 605897989 853707560 806890431 742734616 183716662 241875013 564454083 631248242 900734158 387656472 744903783 746002371 676963821 448237519 664644906 70192132 174397426 255906915 510648721 836456567 913290130 828259526 334578448 912153365 361416717 249406618 785377259 474169065 589423941 270142012 137899057 301063180 1021337281 412885773 808662895 462182020 91616531 318687275 216406412 928821579 229002729 624433375 362434153 835412626 709799463 79356013 393744121 704515334 695912062 999820673 518903426 811454514 995375197 841976438 644245303 435423506 519806160 695808789 565565246 785310827 956490340 150361438 243993268 351610372 976837027 647627011 792222250 10721039 764858584 431788747 20731114 296523065 632893694 807816735 897308973 405991562 161815362 207772859 728875239 409211093 369047520 960245244 520959699 148974148 90354675 927574442 584551579 353581360 754799081 147087772 936070360 526093418 73080760 1006006226 410912575 487154291 214386744 378495031 602435639 449616839 999384170 430278885 455951599 329701389 913458936 905078632 507098711 750846436 160293860 587145616 247222637 216802032 400356172 968891411 858321078 402241317 463288333 177853123 752576986 579042772 895063569 793587241 524879167 1046989656 427163337 456258001 180134637 326639121 148918666 98038666 109955054 691479961 489481073 992779234 142475220 390655929 300732765 247973849 468188517 22618629 796237222 369709445 910289836 173545117 260247788 429805464 1053196445 153262549 425947330 267415504 366938728 337411258 918660289 619187663 999459874 300825261 236816411 16768266 368199248 403734619 330480328 497650691 894430616 384053602 1072595658 905356669 701090071 900479604 149409633 757608148 7047317 836503732 433002986 791852605 439463065 12725427 667632769 376615723 352147944 577671677 425439648 582356274 627230987 207351264 113567477 307637359 481062440 630288560 193196583 592631786 220388751 390256739 924737330 910355292 11618970 905556047 746059143 662280377 124264270 890223282 634176704 832282999 60509470 628351639 972861840 145624162 404921906 422911285 894107201 841482291 1060802477 272051746 81591897 626611435 812527198 279751924 646524112 731263521 527581600 190833222 461915251 786674159 822794709 229084546 404300967 431859392 196167486 759357511 856763477 1057025517 523988545 882748195 254968603 650541708 1022513582 180285877 696647313 1042982739 13077993 473992405 325866150 53861105 903059918 270544649 551668835 857034816 1041872629 933090052 953724664 394253362 302870 674604519 500688900 1026236847 751924847 483209786 594019927 68303734 821972347 388618649 375601647 214341876 158676585 641370628 329843495 760141389 363334181 168289380 477345568 848212326 46098832 521180445 1013197874 946433576 440034591 385569701 499552657 292166708 978495296 748491080 526793077 336822136 951206780 691398389 392295618 584570233 517532598 1062622655 855372424 765423472 396369998 667613234 606567058 770590712 533096193 476607387 480091446 477483131 321246214 433324333 397378479 481744534 13025354 765061273 1042673879 1026645478 416820886 268871434 493782364 444396265 990465623 11380000 131815533 1042517469 70069851 772032794 471339463 1024715316 141759361 20383137 185094522 682215038 318852179 983916467 642138988 780167104 928551333 896242669 17274925 433829085 895095793 741357587 197573624 469374383 442715018 986379755 93265943 78781820 249665761 833800475 116133816 968217973 432885234 420515335 119045996 326608362 340939541 337345955 563787224 245456899 706847991 347193845 45878456 389556946 447518362 545920955 82546179 745586164 733376142 680342595 814470146 545025148 524930776 1000728642 13523594 722557707 906384673 662817744 179645377 1024031842 605673532 499343045 204151416 1031906937 47059281 639611202 1066627481 13097823 890084505 125728443 616266168 1058129539 1072998370 665484807 125231419 262132768 76412023 466643400 64968537 957866531 576304457 798065507 974629387 605060510 976456778 738162597 1009181292 465739593 777558168 865006097 110790368 356775683 73885723 742466492 390492636 733089371 922562921 939768363 669936978 750527038 628609615 587184125 138322566 492259701 1007128334 222298428 525953911 919738080 835684346 324450905 862084823 294600719 313327166 169364600 670329425 38469654 491945345 1033163423 83787931 385768593 934212669 107317113 611152407 817569256 41646015 447975787 727575991 469218456 625178261 923244209 346914711 439419819 1046349191 603472790 739013200 853291233 259715452 319738238 14622714 327060216 654897028 1053511212 241429364 43471525 347245798 166467192 965054494 527780741 769647914 61048493 963671898 275094419 344839460 1032681126 196406284 1006053719 28731911 648220276 669028745 133088672 96517198 581262812 1058871299 631463021 243674418 830341586 555810286 216719973 979578800 974750259 208712832 741315083 38695839 805007585 859959417 147394443 852439998 727468321 367055787 704218291 51549978 598797997 526703491 876152486 107882656 183106400 494221887 92876725 967230164 295902437 419298056 1011678873 691313320 936369524 345477593 1008071117 537125939 270442286 731570172 192544231 378847231 266534847 616335061 491451132 296987190 9355905 369587557 31100749 1012230258 640618375 145069773 44635171 47041596 354546431 306636324 336498487 736536142 11170103 700269113 631988836 438922974 385142947 587347186 446288014 992011607 556368622 107014844 700099176 833311260 9903321 666449768 884084450 5651960 1038671867 965009153 986861252 935111916 778388519 243614877 20458766 1036026927 275101715 469104830 873385775 428745148 426321239 858977495 515365125 877771136 50974990 912255371 676892808 78505474 981797309 248142763 29105010 889783144 845455923 1058586091 260873861 304523622 569963801 404249885 216699036 1026180110 191919784 395841840 900789215 393027088 609773423 700462802 518338815 395122717 660385291 590761654 302917519 296075212 17871417 1026069611 164154482 386610573 464985115 163019318 458782881 221317656 391137523 367181083 974407104 693599580 738531930 521830163 1006522894 86857858 372465081 893123134 911811342 769306841 940531349 29906350 719978993 990827796 298785612 399239446 289695135 79481049 192516933 134984251 339550706 1028521134 880189551 452916246 352011283 415497912 101564341 259434750 605441927 1069667844 82127018 786398043 749887545 181740052 147093197 744886241 432376344 411754004 447767432 620233212 440816789 585724479 716410786 384569696 316472749 117302691 745901962 485836913 520962510 427758482 411016341 954312656 489889237 870086119 93312841 449742650 969909481 111661353 514000354 893890952 829536363 752814550 568160014 1014068640 88192619 564448976 543800680 633864909 153066341 1044727507 143315606 92417206 644597577 847015801 193795456 394914167 334518450 206139901 473530759 71734024 858543866 638280089 786546131 212047837 496809316 165020392 738598718 922925689 1000038704 368585141 524479314 1050026079 2694301 740782143 640921761 570584184 875758676 799059455 878970256 575249840 804716024 234990742 937437627 523978776 611842433 507406102 687907273 767935173 45858094 764017083 519250709 911781336 767118359 951318025 844707094 105843710 310469738 184286916 26270416 712377061 285369932 357034170 721664334 50610625 429342840 16998258 425062450 609195760 565177572 315581308 104772984 317605147 499126569 914962461 300556581 535766756 838509678 1050859044 954309453 539024162 151399543 22089340 121013074 889145795 16544065 616274244 166564670 399504199 250363594 544128023 887384231 1032726276 609120463 406573788 731885769 112285909 1052009998 968392089 273365065 933401408 178008836 742755352 446386455 269623816 310025695 265145406 822544234 380325583 848286601 457877273 636040522 10516601 133893575 210391325 224139816 532642473 403761096 266060468 656683871 222656827 1026184310 621491987 433634043 522951518 46040566 448836050 46128084 249545419 667819874 966028998 320937822 622841833 860171848 964239583 233330349 172159232 155088416 166661026 393213514 892703379 606357966 492851548 156522213 23465428 793228174 1049353015 97540937 1007632749 546167523 875953245 332255971 260716249 730948571 1011681557 879304480 960051375 909573465 75261097 435708245 981870807 154922760 363433284 13761600 451810429 181832091 139900360 1011837115 134491902 542558176 299250315 490861346 467565072 133427066 429176990 931508778 172452869 985378128 63374848 329269457 305926968 191107420 525592198 169830634 798388089 274495983 423111629 943369805 293920165 1032728151 854213055 406935771 128132752 311247602 238090243 252938685 803337996 425778521 461405553 427857653 849570817 185300072 17200722 844162596 542866193 263779926 281280709 394656093 5293404 799585586 569331877 1034727421 129426087 460365691 155564487 860353928 402132231 334327439 369482478 9140064 59943213 498900610 782566727 118272318 150068461 745414475 639651017 944932068 114351219 791060018 938518880 221389158 378657584 1045751961 684561779 201383809 250058009 826033040 233065697 506786190 744452557 968464416 52722375 1050922255 1059828193 603770504 354999684 145097798 631273847 417835512 616348250 296578611 931416628 1343112 319967932 70988286 360343697 175717814 263879406 92185690 707759487 854961793 227131471 209350286 415729800 363128123 920424626 243937744 668457293 246114195 727648283 578017943 276964027 559314076 1067369177 574966102 508895308 64886532 529380239 78070746 372155338 1015546365 114284302 546822472 953122051 486751396 132628473 847863396 204968491 1019544275 550966582 56313482 827812968 105204954 303689946 546485635 646253417 22828281 53177074 287398700 340407233 874211186 15173274 40608815 603999850 895665928 1003988091 509732481 180992618 286431934 98082712 532939562 712042009 247888059 632515867 500194685 745033182 121127167 281730480 965045629 616176958 928109934 817597150 292181247 995840883 624234731 782184684 1024032234 482714017 249601910 227315845 272482591 827497440 685970679 190486919 906310704 867835702 268190857 172349227 294263288 913468971 337858518 998862797 208868916 865639325 451483957 156013127 62010015 488104362 808440935 486385254 457444948 573917749 654004566 556113630 617487850 32700926 17031548 485321980 865791581 229959883 134315234 27129101 339815424 978357557 826618445 674883460 467356555 517906283 768207319 153469343 275352979 133303290 234771601 410371173 979906768 746486853 433677261 109012332 515451009 639780759 855476702 270889287 719339307 890791224 247425421 590132102 397722060 1035424525 111658239 603437476 138781233 195168420 17933041 811525664 351640914 307302804 433038372 869114833 21149539 689735760 230671988 495476584 105581734 443002117 810324242 25892323 383311165 953297696 95183121 289135015 444594088 533365843 360721632 1025605607 1006537661 647671505 652366796 706088675 1064423362 501323115 975023069 254919636 198897245 445539774 558257070 507998228 231888462 340473421 803591337 324731844 526636031 42067165 78405528 829559132 339682637 672038356 48759275 128016052 245237581 331844566 549164483 1023392752 951877751 241258019 1047806582 843648392 123041010 206526078 637159524 245314775 304572028 871572802 670950666 376912774 864183838 343508163 744387428 263421892 452353382 114352476 286864521 886717274 275573096 353697251 890135541 2111757 196294287 483399421 437611961 23161852 95983449 694770731 18574049 409367280 312414213 964663378 418087680 100710873 575890414 247858395 680714259 13687189 388940102 899501760 929229657 108965036 144942044 921003905 33528631 630805069 959627661 343789621 130846717 675301260 529428064 530668902 2317996 183022894 21314755 674504640 1031964035 343804042 607334181 769505525 270696253 386149134 420365091 995136236 927228824 888408370 847444594 989202753 407216352 292978244 575359048 1013248297 655396408 743936364 972209218 118250460 460374909 312090293 1046888236 413876160 980988892 863196476 957007247 285254747 377993974 481079040 645080218 83558816 431774902 517392059 19014358 320485597 866686883 787142128 653790966 697872831 7592185 970493479 861315080 692514921 78548796 335120046 1009776696 644405139 585242503 204445504 1072388720 485327915 441308168 602338367 244899236 150106562 998528608 504899487 1031895721 407564982 805768938 289517424 61677394 204845209 242266050 666712058 16122544 711446301 919179801 572783866 428999637 997129562 404097206 907112446 768027922 240911374 49867806 603603076 925083698 369262255 875896611 332437168 110323306 528078494 383497645 259282621 633297389 597794300 192940526 160924684 256447922 150954496 815260935 698587036 896677622 560523095 599453258 3103150 568912722 1047972887 358460964 641141845 803577232 773337965 278009061 802680173 481552476 633865196 721911795 989836343 905138564 817630811 409047425 391934929 815164355 378107546 989957921 902377733 133499157 210303722 653986793 475232556 732916389 971359767 42664930 984407156 842249461 316418355 975633343 595211777 748579332 215656388 453663392 788611939 493477063 811379222 545551659 913551194 180801368 665523581 38015497 835749906 868822265 815745609 934807175 6537587 810483978 100482404 854359775 1065791013 223217808 826438980 200620365 554380057 310556178 200677030 448449605 982207859 201376529 871614707 992899282 322740203 680834899 636400200 796914554 498483654 831238542 275476137 351064040 248517240 46879105 870345345 898029061 642341347 95412851 933217395 436632033 133302971 838371060 679786963 262856140 134512119 157194646 873516897 716362273 178129835 417545010 465654353 984802843 772813302 1012654081 350280361 554195440 956219397 781109224 889605731 681753603 923196953 985035345 872137507 830609263 344100456 376737127 167583102 989941471 912908527 787919273 935182407 262473853 507468512 1037646475 412265037 577174700 1068197555 913384167 31870397 312912379 363424206 357490631 90246821 631788863 92560845 691628246 809435674 771667231 990272987 198670972 549350270 663668130 90019305 656817147 731714663 494589526 76358441 415174429 897035080 557378078 113662430 783330243 425773919 93224617 200355647 553963844 670028251 46717331 379953825 332359876 707407509 928699508 591725481 876202874 293372743 805120526 719994062 871681153 1017769825 915075753 517100857 389214346 544355218 846274334 328003207 7824585 667426554 874213726 174710504 93913691 461198677 23736097 188791073 689753192 415824213 1027118276 215510655 308905566 965482433 323918475 906452790 1038600041 97274864 311412638 483775888 75825542 817150751 759435533 237725755 395287638 694563703 1041705003 941500490 440731976 151118294 5485166 903930364 401103375 476713872 1030524742 865726880 802210319 285978972 703477529 497858598 23054693 43592884 587181180 656160569 668356516 286865044 143707857 124808771 957129409 834426044 629160898 383590400 274031103 408056386 33670444 1046214648 701201509 620148909 780835468 816236523 746264087 938465834 151343615 429921288 1057273000 453125165 787473515 192123033 588531866 171758354 1006940084 295616124 899160351 1073054238 67442224 288289407 584995039 1007857831 419871186 1016810353 141459351 357920320 870830491 838203129 535246971 1071256489 113315176 567231511 508364044 5759674 156790933 168547516 145835490 239532899 923638222 311146211 176416002 520465196 102112696 763270849 1044349667 632106086 569908367 570092932 1003226897 372399165 729943203 713552637 178505419 552013024 232410871 782684398 628673535 3903052 970134204 294882271 899815915 393010861 468577362 612409440 274484886 15834361 962750303 293733323 188534748 730075377 633366756 987810709 265200606 786958163 725328705 835099384 889538477 785360212 532775617 886657220 599927589 175441520 813340009 914452195 635849629 593908420 404608028 1028142606 930188182 993580090 484388817 40392266 428079316 977944798 955761120 686620253 549430256 471983672 234347569 988935736 1042729836 182226736 63703191 201718232 1049261819 336555584 319413291 1029891246 860260315 64348866 557000737 353224247 6673748 255105695 93965590 978641068 900267984 534559702 953172290 821548676 676389229 206005918 19400146 371190048 520663420 1018445826 131873339 1021623439 548674848 790245122 696588584 144617129 754014833 897183353 75203287 356356990 787129857 749507453 381023673 1013114274 941002569 1060934926 757217485 722466398 1012882857 474817150 1058120780 585159937 260068106 1059665079 122788959 794501050 515244744 808593931 121055289 325046400 682101081 634297319 631637034 969577482 594541330 948820092 508779859 933922809 416289468 962254348 590133971 65771606 489864514 776603694 1058006032 902271099 822364215 391659932 716003136 1062046314 3418854 891905972 326317379 975195538 610884592 331506631 173177990 1071962586 607847857 63833211 1026230584 821585893 370631705 431033618 574119165 273863585 780597217 346482942 991502025 937247842 124823236 1027357931 262367372 279273957 257466290 158875933 183546249 627687798 838099422 1007100897 445371841 405687386 841358891 701351059 960330658 952361271 652134269 558528510 1054374046 482931896 437304774 21551175 703045345 429256790 400631458 823882652 884657896 969573511 242323441 780206067 237442555 561233724 191778229 917532189 974043091 50054248 840146314 233102877 150923956 247197382 614567595 740493281 819632323 630702379 280113930 684786475 248482070 186322634 552176426 439452683 148605047 854623704 775443584 868299444 120439601 516393454 440374396 911146572 699203431 703814084 665095785 743091408 188356583 723100166 196969116 867507799 990014666 768522000 344627108 378032792 900937515 32913524 500114319 933713645 72367146 670451392 307589900 233907459 131979519 831420072 672015562 671057629 238195700 652627851 63893774 638025869 537450793 598742178 627434444 481012617 114535071 1040595492 763080843 1066509087 114012683 350189374 10902194 61421161 629301518 701984998 612561797 186798601 256108339 207629046 953735626 966885813 745059883 539744431 576124868 783029163 997398676 788038765 323396767 395940137 691886169 342586718 467934456 105038749 206868060 822766929 1008222524 256582700 982491935 755351258 992694012 830740338 222957850 356552130 68681480 837941632 589969703 1034120165 211615845 733723001 711214224 927676287 834964541 346152762 349632646 693232527 641557703 892982831 2250153 752401766 146945629 739159493 204531042 69574517 760201660 663810944 1016870052 308747196 388328984 600344337 779243377 594512284 374411917 933689082 434426056 986035065 1021942564 844183776 942878851 671724654 798443021 247327846 1018152806 868594860 271378207 223958325 603373559 415942370 999016681 132479843 394223178 122055723 428851436 656386010 163918273 266789065 969374206 350332632 3329551 352537460 535632146 100620027 720299217 52967990 743337808 339935030 700794923 48115451 301129681 637977915 495632353 339496116 810346113 637220305 781746766 749559671 369165313 710140084 911783476 213637277 196216594 355620775 739730238 607574098 774931127 505334451 134077977 889369532 96460047 607705710 783657186 55734243 513700882 465485364 18401723 513092391 93676371 405428197 877698528 1062097264 476241235 200507987 193822079 1045837529 97803317 758040870 437803622 856044418 621822018 53586505 699238682 631236248 499501313 75476471 562989629 974035378 174423874 1055278165 408620336 602544620 54464833 375763798 998817067 30117812 699130902 1041701985 402828064 808190038 783202612 723379079 79902976 959954862 63429021 19090282 379188004 686712230 437148824 719366656 915635149 105101477 1014922052 1050234920 963288746 237133057 1062098703 656838946 988154485 697925371 714379843 548588249 358279295 324749824 935392878 70831892 305816414 593643133 879222273 153536835 918388664 342168884 166074492 535778631 353075737 390838389 54158037 256307435 682229107 440788512 519395367 861648008 27610846 511117726 622283037 161415451 625558800 146336123 110363771 647501905 343955026 786450532 206533023 590233750 198079110 652606316 573814560 517057625 963799736 246109512 293454483 539673388 995511315 230739085 889802005 1059410298 1058066326 870813680 409904820 737049450 844143697 762178895 164168499 723180867 1005796943 440802414 84871452 25206729 329186605 359602345 999177750 636713837 874219356 190248658 780667688 741725799 894220989 39138754 566465503 134467520 652436201 388339569 173070035 867329197 101180087 37045728 545916991 410252087 953190492 599627897 522980794 504379692 1043127981 918748564 957240242 1065310915 1059884472 35358860 181832140 132023110 419412648 588511158 485261870 931707110 139263148 895288204 674018031 116367545 720064760 388407038 68803382 541504289 950889054 478841603 199938907 521930971 1067815284 1034107324 171890429 503017780 901520830 409056305 675085821 1035012289 1009658778 491359782 581030381 667621763 1030710391 944669400 534956794 150971694 559204752 193226879 76461445 230466722 103677055 18637458 25691683 691019508 513744159 76793939 753839459 72496618 45283661 158511628 637176435 529647462 731856231 250541515 826261970 958306142 595740465 239365624 395375243 991005382 351132664 20803809 405358571 1061824000 1012242741 291653183 498655672 80909400 847266441 1000113247 176208984 283178045 1046358517 820916307 300376362 466372663 12468320 887357077 284819070 967228023 388980279 727755239 50721855 637976548 715390706 619434897 535306640 774076623 903993312 89368596 554157615 501941303 1065791033 1061873791 96661813 384006631 446742244 585023300 355691324 513357416 203983723 426967365 1028287154 1002346973 742555026 73203584 68892869 788463751 250713565 98826800 287717313 776683978 891575712 956186469 896166515 172825088 74522469 94766774 830766877 81098564 697494839 131531019 833368327 875060138 541527297 783453826 777918356 565340826 241995977 993715094 703421016 482561613 1059844703 1035166581 724778770 405872253 483290477 815104866 379984986 71093611 266578913 415403440 970889350 148475370 16462526 234634229 1035521863 882053502 612824445 543877882 616766252 66675506 433750728 434854255 730839585 877811808 635617137 458344584 792133789 863013780 77813441 758569935 892930342 32472642 40134073 386054773 776864037 428291749 120266701 982500637 882053952 988760299 609905110 1057363873 585444629 431278108 181462488 117935258 58286650 272542653 444607736 319522474 292643457 812037319 277510803 1031780437 684375955 79859371 531673065 454555876 767986535 282497052 443982584 637328449 677954586 574666469 914736037 460698134 177247839 92100131 703510428 78103050 554547155 901081585 124058262 313321934 932612484 324975457 944816190 830458982 234574750 446185511 400371297 44104320 809870742 815154613 58289439 556257139 558187206 408552683 385415516 972578813 473110149 726904650 191871174 324437213 1005166492 397267289 959948857 660316475 880393168 763481076 919832317 546737476 39307148 293851297 911592488 715886891 907485817 842236437 711154986 1012997985 152009732 115710281 894830040 248637554 914150814 630538343 764702574 299033427 597524598 832153534 428403320 456013862 215221468 39110271 952067318 819238860 575146604 1007218485 690738505 690902059 888435941 231276992 168721605 291267965 670512850 558376054 25543506 397322714 815720798 218268978 543041094 398515481 352434174 699154201 319860878 332463050 81510084 343092808 292736223 1039284100 609999259 119081713 614110394 297025187 1040229096 401217365 974209379 934592243 564720919 613061283 820696679 25131999 333267632 8037452 161627698 556403237 374996313 5673885 792119518 654201369 430099052 471761983 425335119 308147558 785290987 570115224 431859461 516647407 969576074 452591318 640769553 1017799928 142314520 815742653 914684243 76440554 973081599 50257434 921636651 697309770 864015903 718916476 529031839 146168559 1042483413 848181620 489697639 62585207 363371797 259928874 392955983 903743909 934388553 527818239 967007766 813742790 204116130 745322287 619521517 284025820 124017925 182322968 1020793534 553536277 893402272 295941383 487151079 73395895 443247358 297741210 95129971 316726755 930481224 567701888 453856635 685682684 345913605 14620508 410250243 779279743 864991937 568083758 436407724 914661440 758759210 1002699146 521303777 887921222 589128391 432591736 479630989 351104730 97718542 235412376 352815466 362501245 523700340 511946517 807536477 539983289 647427719 234662306 286047990 512905403 462458195 304381932 496651113 782609098 759149711 926025402 767620236 796540174 20916279 545956065 872757145 1050476642 1029657996 765426577 680638768 573865511 377793225 711598605 789785602 1059701146 613194609 194986559 260787874 849796720 533624158 1043435802 398779077 523333944 418342274 601914716 28162200 1062790776 809368277 200483533 583643437 542411769 43577928 161311611 679178801 39016768 749151757 129687566 974293425 61603532 56802466 851460281 159422761 316440878 674025212 934733600 152652629 242976617 765623988 583448303 39986975 592737319 143763128 344554779 780389472 150943775 297775616 281239443 138904810 930001956 690586902 12343047 444794070 723846284 784149294 370253005 651089946 80667705 174760515 541811256 351737763 367969881 986640903 464886180 1032574127 1029169193 973670521 661226409 291750090 109666874 516004103 771359980 640275891 775496752 723986545 799337539 858925973 775582991 788224486 61599287 436521639 444530878 155204549 270423392 665055522 39007809 969971172 587825145 706760379 888521648 373059944 636664454 905735139 1066337884 93547124 765592425 271019977 996162384 882008598 84266922 476905309 392023153 801378197 158361641 1035827081 843359884 81761461 28782895 351391021 89608751 795999678 453502347 983853748 938657962 637403922 244443009 949096758 22440759 1048082575 39666402 266798474 683914225 428110560 33703835 68353013 1063130181 1025980367 122181319 705246604 1029154604 1043750192 777078981 472772268 770485581 688281730 1021165339 417111380 215493599 818495600 238577863 685134764 648050001 688006293 1047568836 854753383 161521129 357250146 298813386 334356371 836702917 396747389 274366964 503659938 923205811 415119623 686810286 642496865 461682547 1064893460 742429181 228933882 365947016 271829120 546827866 126282383 279284350 776478559 453272300 577481953 366504924 584744535 858422280 865506967 231576359 83539671 915704112 995283493 281404753 109560519 984798132 149775326 683805612 809364353 339922899 823894649 585751261 218600928 910887901 199993859 546018210 363258514 1070149029 321813269 698126382 400067194 35056151 122096741 444390647 415215213 71843573 28268761 592911082 372959521 951304082 554263488 580844747 792832199 449799230 134557903 1003471490 605565641 717828574 972316150 669333602 733856095 428383081 1036675946 559321999 796696045 574332657 446542903 705144115 493226532 437148672 924266839 520041418 574292018 72687930 23650363 895637656 723551391 70609814 164076812 882782037 115567779 893285694 934126219 703336926 5485144 366150954 643594531 213141524 414184193 342704276 548477594 888893631 57930922 587588934 41250119 153100111 667820137 735435184 783253175 856726530 260128328 746803137 343863100 787599687 545739712 614312956 431015144 356476825 36870021 1037652205 539781366 899851204 267732157 377541673 378748399 353004770 149127038 248061344 653162403 689095567 170766713 478583322 349873843 997250396 1023498900 839316815 307488645 683704950 774854899 324592206 1072866531 455366288 680893828 779178498 826423073 975901813 441857320 580337180 516085474 658099817 464827868 375144964 628647650 758674192 905593308 353394504 172548856 131511087 890812387 20846024 856560095 366918208 669554711 283714577 980561800 715307560 620217803 390095652 547819310 948901094 717937181 813233059 522678770 685791133 849237522 662904922 550800899 119032286 71727013 152796646 811170898 103238779 786828027 239421574 72250014 166739915 817141942 393963128 540948708 956565527 260311487 157043968 40916347 262271260 992290186 992071387 505683552 165434342 325947318 862041091 377556191 1009481149 924848559 53968212 251130859 1038826922 393944044 599251655 299797051 954195696 172055337 23299324 166833979 28628751 251760873 987188493 360073450 463015052 83676673 1061488382 234756868 1039868278 937899646 646231098 59009645 700707731 587779013 1033824914 449875207 504942026 205038161 870082466 431585830 830463688 888848230 397366270 968855121 471258343 1010249788 841167021 1022222040 34313790 758505724 380930556 950816 52118545 799578517 851485101 958393071 194775080 1014453256 768116601 299333375 164108311 683357382 521108791 922619174 593781264 270183992 544055988 896448271 521493967 528388488 301504163 136357747 467470011 958836821 409777526 133632440 640952133 876213879 566515352 77528888 594804790 916106667 189338398 62777329 1022006443 775413137 937751180 594675207 209975450 694126830 740619628 177326619 444337410 436899989 253332833 944722979 986046644 323192157 696505639 695021854 808607490 637803061 136659568 831017028 197697913 778846398 960891928 485031025 825710795 522105125 462661130 673911534 109848607 752173757 3111603 671501344 284705989 276087160 86243021 1008156693 212445361 254881333 237096489 147380370 457872997 104105362 1063614978 219334285 347876434 545008971 633588656 891757235 1058022396 771891164 841311818 33567392 651916760 953179453 830008523 272965698 166656581 1030017051 1073355214 137884709 297314201 628390103 646562896 260936554 215385962 70626959 53371996 1028085554 406663331 365801608 932200672 888425627 470707359 1061093727 720826782 183871579 262264243 31002829 371080074 88944695 874968338 715429656 624196539 143383518 8260543 809743637 556640932 614789738 11463349 405152390 967037940 868450822 240599224 360129553 980908752 666620819 535381508 500465621 141305350 898690518 178329230 117673399 987773327 132720677 730341698 650406227 696311428 831134240 264888795 368005837 685187294 739582222 177616966 1020540008 73183727 1030428163 680164757 1011054249 246454176 490146782 112228750 117067809 651457238 650160704 774295838 820650551 1042420018 965833261 1072945396 270715233 197503984 131235482 223156574 425260345 1056538617 742992124 939291140 269285350 970030290 130431126 642399610 777986026 940431503 195222159 178384359 817002698 56237515 146534426 601460563 480692599 698245930 1026818586 460800218 483050819 726037707 695009862 662086423 509457415 953461669 267331307 928924255 325133531 797075882 620795969 962048783 948881413 5881461 510200688 295761190 922065997 701996702 1014281675 543360671 504812219 971318817 498307903 811246670 777970799 401148460 667231552 37347453 434961412 150841005 1037016687 774290226 312028639 819469330 826815327 267862277 820040911 627553773 142283843 238377662 445114137 279747508 559627915 929240507 667835789 915929681 342008855 607114321 985127615 427939074 483697685 480244859 349361033 572520383 720758286 853511922 625467584 703268494 959898459 273309811 1066784595 437690374 619960952 39174421 908621895 295985479 358525194 373920646 425228709 1046910827 75769422 737230998 181971140 554768429 76688239 1052200467 480088226 589528507 245861920 1052325976 910596016 28532519 339083788 24617313 345559237 969391256 928349419 194883204 175825028 952233926 65637615 437269772 329760476 828167907 395462189 450119159 65890083 679874837 767863066 1015946301 261294766 438633046 689536392 784701993 835182653 979198482 500484681 258719891 324193380 78332021 871386870 48322091 645801112 655169687 577832423 449782515 504141379 137551086 74717116 259466386 429898284 167671947 645842954 322237071 12817158 71431932 327714700 96169323 657538053 724322715 459817158 65567600 984508744 348659071 78582164 660163798 894416252 333713243 532437716 232338085 1071752354 6351893 862190043 741306938 493941626 970497858 899710480 880193540 145439070 992921870 128072288 707922197 729273498 447836153 316185489 167337278 1014365562 154439339 1032403791 185585863 901956650 997032182 454127267 269547245 513696073 797707932 450698617 925249039 13762579 1058441953 735394505 361367522 201050910 729760581 455829095 556590109 773315144 177717903 1029156521 503482700 816360742 155165070 235421584 1023322520 584773963 1044756571 392982828 562264190 841590484 917605131 478143942 286242752 55814294 369749102 724764700 1049346709 128747638 707732397 758523889 649372728 778260435 997251718 936097073 178868839 11300434 255979703 938560280 837544370 597880505 148851776 252191222 13886405 334058003 68365238 107949864 83774564 960457 981905353 234660887 37380618 100873468 484191274 342598391 322913077 81880911 749155430 299261840 853980795 689891715 1064901411 563389793 314099673 693179125 369176799 560106209 981192943 502414689 590669474 554896780 56268303 73593632 1006084840 1067082220 895198498 209086143 168704959 329381227 860285084 566421147 56213934 388948988 656857894 44180931 84873251 240616016 303177538 733358379 898014730 262865209 875239350 270331863 221566917 983274227 984959696 784710592 873738068 689665498 87478974 249331783 1059808383 923029115 181795431 201331141 827376224 630264644 979718613 984483486 4227920 708494098 667334773 98536802 925757862 34605032 941484569 267808625 853889885 912764234 698377626 1048065570 543092233 175431091 879394096 168003081 868986084 282958321 165767154 500115458 387020564 109574474 668224520 744367004 976970793 517740410 134941027 674794877 372915526 1000275806 859708988 738546503 219014144 990017237 197436308 953034773 424677476 121205211 1068704564 641057503 1024047200 145029123 922281322 744042489 244190260 824930717 496575815 657136179 476170419 501417156 794213749 500919406 378029956 559205582 484105414 993552965 394680850 46940404 738538835 221322382 220233176 909052167 53546503 835862540 65302795 109836803 78646564 361511976 923511725 789705430 556571217 780280368 247111710 200489939 572259024 68138332 29063148 608305852 1038622997 142306889 811358097 51847951 813338758 288207484 892032774 606017589 796157335 294537773 602874013 84255314 205700354 957517286 260296106 361016078 495076668 636508874 468068849 634190785 117975607 308827846 22989161 876257390 291495469 536781579 271983741 527353472 1006869050 277576207 837438404 394048417 588024904 618472275 540853166 425684324 111445235 69432120 322384302 668182379 514631085 301239463 647486594 441908271 733558117 801646957 839140680 358766653 89704277 801966235 404870469 214403902 378578780 687698800 343691926 452507452 269294961 653031862 845862770 928355725 540019587 254566531 787633971 257432788 845286441 56739470 929271457 827705894 785223153 549141632 463638112 762088133 779124987 926203885 950630870 421310283 604160467 613885184 565966347 331851111 733552757 25209133 872569639 24699350 279263709 500841482 991221762 831679066 563296806 521183945 894013791 582370073 768095050 190319025 665918815 400576628 1029683983 1004941185 413884599 18573539 61177860 844331813 893737466 856773765 773471835 233130418 1003117849 161129489 709368675 965612824 41139483 126694477 337711396 1035322844 162339054 25154769 401207572 910060299 289003938 986080355 165943004 831231530 485013328 300476793 404006165 1045161395 48930887 49207373 316974297 268786907 993375662 481670934 242651605 922627963 45942 1055772787 1059869512 284294425 702009916 473855887 64271654 82205881 962515087 842210002 857689524 542504285 348976227 125230574 179908969 912833640 798104754 516903112 631419011 114776920 336520991 141825610 884511135 486033717 602500575 201008882 21575252 78144294 59910997 71799909 766930856 774126540 294455445 188497680 828492013 151014794 463258887 869675559 317531843 327868749 282235039 885358489 904480158 700760176 655331100 897712014 971440606 15756598 562852181 55425488 672047240 993970735 573549583 1071277234 303641086 275248024 681330988 568928401 993913917 158280904 888734761 333847701 494330734 23880635 811201636 588302022 865466943 617266241 43883695 203432615 953272026 293687103 131210216 67412183 978819777 401696600 139279569 316587443 422215234 893987278 505905265 509378046 448179373 426276558 710921544 866911009 296750525 770059977 774152631 1055407066 488871404 539084237 975417123 908455623 301817732 845409280 793055157 673029446 820624835 599921546 529587439 460086400 808461789 555888781 396400193 510663061 574117722 269110069 50612954 226284997 754487566 209631479 395421331 648897544 603058279 381365699 508141605 933707326 27982158 671814161 159085444 135356984 391926758 654234421 701530441 765698868 5572898 830506559 187110896 969045226 39160474 694505708 195889869 427113306 266259223 935094741 269664402 371916132 477725995 163583329 778976532 395746144 107336336 654078439 348158141 1008767023 537369469 179722821 880137624 632323001 1012881056 439045463 13783079 1030209415 392037152 879439611 732005267 376655665 839767675 443769436 164948812 905258758 359568266 667132483 735033761 77883649 381451635 89028541 684755628 150076803 985392834 66004436 1022358243 950649960 983650601 374746735 1004184400 254353213 895486763 541674845 620331429 294859753 802862464 284420512 213686555 664510994 927902362 588801529 211751408 402760218 907960597 238422840 919528399 405871075 941660354 1030015219 669963354 83173746 617469756 410687792 564877825 374297208 698677947 438246923 384370081 95608615 509145420 459027268 848290346 457137662 401904825 448542090 779609547 643755675 133424006 407254780 554752965 904498358 687854223 640395843 776299768 748561686 588424979 434395345 757217337 219412362 833471415 1028871240 410266193 1061479155 186242623 1038047140 645591659 185610632 579483349 544013998 241188097 43749145 870126745 783222249 674480033 446428151 260037205 703010690 598080695 481371292 1033172793 384599887 272812218 26681076 829024211 662531801 44831461 621314753 601747118 92897275 543142137 479234272 865961307 900570153 292953719 879834875 46305262 895251247 765958565 92378349 868942540 362925701 180240970 58974868 835082551 391312280 253071862 731921588 156228006 481605151 1070730294 293514078 301446062 667620782 6893984 966274018 473034807 592251944 181618889 694431527 102961496 343729618 571892552 766455226 755023265 263103722 738270308 36935236 687353986 925196501 992985623 758999173 409866337 275560074 1032604944 644409471 398798374 124482698 265605293 841612754 620309520 288347148 656048265 234501943 931319490 277599370 156450562 175581816 77297424 951081200 741352773 855575576 771613988 131603658 946306846 420487154 767122571 73664350 941145675 859263431 500682782 894749946 23547722 343896647 583349210 615780103 927987654 452771731 783004888 174965215 378839644 458791586 7099023 393313050 721266748 335420576 61176510 1011754893 408245434 634398874 703947610 889426097 12699223 954540277 32960064 162778101 36530515 715148959 433324452 530792285 517109144 806532038 877803994 866598936 275790075 134680464 794464014 812064177 258890213 826263539 93400839 339739442 5968303 953621270 952675364 826812634 293405612 368047721 989176169 869446217 575025699 530028392 1012170265 893404909 523956947 963105962 631208657 256018773 457306662 942106342 423878455 222072724 555370189 930219982 11720254 378001476 654754226 489848302 797532582 819663256 49189148 60680343 1073456793 415055551 864551724 674567527 98763272 250293188 842383239 109255400 176723935 472542651 878131096 853179156 923556951 82330270 143671148 276888235 1000543727 844975684 259115522 857628680 292801757 185870089 654929734 812003594 123458978 1045158782 684931998 799862721 858451586 980912605 464747414 744246016 704403723 124595368 1036484415 412905473 725573961 230791642 603192761 226480107 464084836 30479668 748804760 819999595 297896382 511246318 476577695 834458941 544918694 624158989 215603325 1050989888 127807206 234200831 625145801 417160659 65573617 1067772190 351272656 80184488 626132507 815081255 751815651 1055135692 999017435 252340234 72852151 1056904059 702447970 451428494 322732285 706096500 364447604 526171539 693523905 753883904 647607118 469034686 23210873 339206800 1019665328 340533034 582644628 368649242 37908161 98724958 1056593805 912135490 697636456 1044828984 791430040 739292527 575627474 967691558 401698550 887602745 524737095 532181277 431463906 113708208 880953211 240314854 190720370 726925849 295138454 855077450 196795610 635502773 488458898 821517649 961470126 1037159863 891862959 622908872 944596477 853567301 1050107248 831220631 427300450 521961673 727262435 872003397 640177005 673067198 534277864 937990596 518121689 535672910 285049782 671582883 794494814 138342859 768006462 154432198 897972790 1019775707 997588455 898298537 482757786 815557732 626016042 113374034 1068998735 354530354 946094704 927648287 518608844 591823681 295920146 725257277 351876086 118581700 708749180 59975900 968630694 483223826 808603386 190427003 949924692 1028091659 794517961 102580372 522975529 1015667153 630395680 4424471 1061695826 178217018 961434277 345475556 958841853 738385720 420926559 601864203 566383434 391322235 428403839 91127071 765357254 390078382 220540516 259975009 84089055 268821694 277145719 623984667 1046976925 18215095 536326370 237650803 359401626 334566178 16487292 617659183 759482879 428174748 409370414 169156043 941121548 139526600 723779838 854564059 689937904 539635416 204512409 822178496 297306326 772117482 731181850 408749788 574195302 532922886 638986582 482458051 574183072 764607209 990790186 516705814 298551881 978412996 51603308 100189420 635102633 30847253 693005021 670998913 476604380 397001356 103189707 850544756 664807122 250676821 463208537 392974237 729739514 908761420 702118161 17782342 195603027 445456308 974781577 997150810 876578393 588651879 286836209 915094082 494222537 1065731448 326681719 1007642407 779440858 739717152 491940270 661329050 416530646 694977281 300468824 1047323050 246087488 143919929 123366450 157516790 695858961 499999689 7842576 242415308 915272291 798418697 910669217 182465141 485533562 73154312 922694712 209109552 389431390 911300153 277913141 741671716 10715937 818980745 820814377 76291199 79403215 196544717 637422035 704919697 918263569 388942239 225804687 163783321 147651911 943695483 119235783 124347980 319665858 1066105760 98353374 263319698 206478443 863099388 875923243 219784929 940242665 61962594 42562959 282030798 635240846 662112348 566547040 911720258 389659007 647774030 68385514 847016913 297670330 949792538 981899464 700329467 1065212707 107811415 1029162774 850987460 653155353 215371791 104981758 81474940 652474340 546572998 258824649 292990028 696857256 702464078 1065327603 1001274274 275505338 565998032 700355783 383003841 135607911 987493132 616045272 1069516792 375925500 493299726 782850388 410930620 406928928 104579315 866146326 219686413 412418768 527279934 386730882 149596327 145093507 397837347 866062621 581270624 960419642 254169268 833503485 903505944 473623936 407964678 957991735 1056478210 654514915 1029826480 1027071891 753607804 128568097 493740238 218886875 103871720 994273610 891582442 270075177 374363909 923642540 901483508 730961422 819245361 897385848 1060094755 613413820 56719893 1064119500 982446980 1069132326 606384723 425322145 114571439 451356105 763788221 632532508 5590679 561206650 874304797 707830661 869710175 31863624 830076373 124336156 51890403 231313105 887561671 272087959 953947219 595203486 956375735 341465121 477929439 197775128 484323450 791621396 789019621 943458284 57468196 270946160 551111201 284140215 764405613 692279224 752965208 799286626 546772346 195850402 237738166 1025579134 256421738 408395170 690124944 1063593920 82857426 639039526 148875866 818205752 149679865 908379579 2931383 694681484 1029965205 521479566 714712599 635915080 166715828 1012709135 773975723 994209302 948512517 1064591306 915204273 432178336 265121315 541738167 593743076 443305752 166233546 495285580 771437305 983175096 933747602 638361034 506389499 314421465 74696049 856378991 1065753403 699625730 351510055 16776503 692606393 587260794 867980094 1061719619 399706027 894151319 321965980 855918359 579224343 548758609 643631106 156720589 944442350 160183507 1930216 583577679 790412956 539549130 229265681 893984044 1038068837 607928203 360480495 517044768 482507233 394600520 202681866 284574590 633535791 877435047 72340801 143969896 1018456055 1025925932 481486762 939638351 143823355 993052573 652877655 242741616 379069440 313974985 113803465 626423675 303498599 836323853 410392249 26276180 657651363 741530900 669600437 98522832 768778882 285041273 496395588 575078737 700134833 568460151 984085676 989357310 801315368 91213541 637985773 111263007 537577152 1065244492 722154984 434175395 547048899 367117912 704568814 240097023 1095424 1071196668 165728773 792467960 690308586 413063454 494447848 668860024 358013438 12444336 145058510 3485538 618599664 496358163 430240699 310483215 804856073 657409040 4284700 288960203 1045116256 679669877 957557511 736470076 967933377 827430668 1042107078 679072732 912744406 85994785 468580858 550815006 322625662 588675696 542748207 224838871 623366304 377386504 230208928 724744609 552539286 640585546 568748925 633628102 637985833 570825321 453267024 1053071919 263224510 541333660 812046758 984865271 602801182 182894841 711879323 247688414 48844459 732719009 720567391 185531254 9162745 431996512 464098427 821083071 1041870759 463587996 48818134 857659978 303121368 908759576 425771082 901083459 767836592 171571988 102814006 561672551 665585321 474156889 168448307 642536011 615111167 649837710 114346248 639720645 573234017 875465453 557619022 821374701 1016160779 815208577 387979574 436492870 528168788 620869 900442507 480761758 542867759 353614434 453190786 433527622 415260289 996926163 740198222 1018435539 34253942 880207127 943374611 301388890 820786406 238923794 199741485 802356659 637575740 293497358 361416848 23709825 587262328 776731979 280472350 271366782 705133935 1046514857 749458098 442860222 629527569 568041408 906744458 613820495 969399678 110643737 566661036 606774911 247968951 862985832 110894574 629133455 764807904 775604325 558850915 871517292 694512255 675898721 286425633 94870726 833989055 191658836 634768605 729971138 1015203582 1062888833 426445518 527182315 363690248 832723825 881023682 1010024106 788049728 321418090 110010496 720452685 816676012 125695121 659552680 504117477 164267350 483183719 759286227 459756063 243658823 590457445 471781267 159631164 896975263 408514203 383442703 765920425 779769553 981952378 1045201346 322978179 979447054 597640385 119181831 14554748 839351564 1044532363 144974958 353876505 291270378 648128474 28865133 973778012 961890070 315391038 44507601 471609725 385523184 255398253 804352748 137937771 1002956706 75237910 689770340 125380029 664003683 290715478 85686577 498483555 571642404 1010806127 228424593 633986639 889276794 535138249 14725601 304937141 831668501 845890371 786323637 180050303 592567400 806048345 183129026 235828617 936098454 614439746 1001793194 1056214051 165546336 391594625 872278734 38800965 458501687 1039613655 89863005 498508950 44914271 5048352 1052499834 560247699 1054976417 212736544 125221699 636938737 542155919 805660126 938888554 1016939515 771279456 473742460 494810898 220077286 535589774 263355537 119637749 714150988 681286705 694560536 374029081 791838721 233199944 975186092 902954007 94737101 971432871 755284278 278984023 838076875 984126596 166401906 903886671 176688775 177162698 91302882 207191295 298118399 741368394 806893692 565537331 929491600 736821441 357974071 34774019 148947824 215082228 620284045 744441788 848601209 286695413 364032170 896996056 568500944 148209434 897116459 444334455 73627122 713301077 524048701 639467958 216426576 723698358 842576617 519591864 877051809 153958725 17832138 547451571 33729222 784918579 532418125 821543149 471731288 902362009 514775515 573543961 885048894 431782440 479692011 997212183 420151905 226115710 816657080 880308288 975796224 794990917 670553389 937560065 404195530 862702311 452575927 555607402 1034355229 502182782 80433295 978735249 52140020 1069985343 1065786127 482369616 911191473 385333596 75632437 780035763 183916392 433841769 570899528 191047199 922425094 347561524 192376097 910376422 104072338 145702926 1044121107 132821835 903917809 1068813594 1000585731 451829624 963630737 337195465 407831508 684345170 610595038 586751329 587724521 871611137 440473020 26294910 922924259 698512765 80702939 589068026 715066550 143629587 257646601 756697989 818179626 279051172 150838476 423826794 748239413 82928637 758716487 470316070 368623683 567403705 936556003 855595177 906621394 23244038 398478320 262216473 559127346 150964947 1062018729 394933791 817606418 124243097 904015374 922166275 109724590 797847234 11276171 621052221 96014122 598331621 210767089 517511147 901544852 87516193 109106017 76841768 971858168 693258088 617680950 456366264 307593004 472111781 1060719378 817763595 677225012 690991746 1042620542 841361493 536307214 89937978 322392672 644956122 226276299 803016172 460691226 249582248 830729737 385041429 355386396 946486439 775054908 359523260 385501752 423776329 56137880 999949471 703088162 716703469 996960853 166860924 749782166 731012738 972139765 160282174 904100324 1003872094 457093208 9027137 250544383 551909848 607321975 622923598 107572277 654699582 1058695775 630679533 601008740 155370814 286438022 756935766 266495840 279783606 644713978 224179106 222380084 475242033 515401815 986183815 973269247 975049287 915562484 1067978399 491052723 763470277 1009204865 128619233 457145803 690528650 152461027 141831551 283524968 775865945 339752824 189002415 234535632 964277678 137610999 477677479 64872121 823703741 604433403 829818566 596892324 848855852 907311657 1068063616 832363425 460657360 435140090 281673069 742867860 697256346 815055086 833013162 369771838 624027601 100167810 360683794 289402315 980849951 456703818 243976483 118707159 254167062 556428438 909195811 506235751 887276496 974498851 215205667 909216369 410084442 875530478 155047332 830554599 387301427 272376094 616350795 151127279 13135121 744289661 316636606 288239379 355783810 50768654 72429340 103343783 626766017 825686992 620980085 762139702 733158104 29658016 430736469 551317311 583217053 117112815 881952611 641833410 106050157 636818904 839992425 654567516 333775128 1863387 926200627 212481802 160432626 774568719 834492929 705802904 153122461 866358969 889076359 819902881 826712826 881430541 969451312 674189128 441730223 671603426 861796873 445813900 657805211 88780936 565999090 596712716 463721793 281683074 400796439 200648861 955462403 585536975 5844661 113373406 602643904 31218725 535668944 805744330 899989799 563115555 226944595 531813654 510717089 591195400 113833356 60033501 83050756 247074114 498069530 617697953 536868891 780885297 549208932 78507235 746806144 472319442 991219899 645881786 936865022 143935372 378202175 639888075 556535807 819451443 246822419 384691396 883704432 119213738 351398401 454737291 507112558 831650190 1008518466 962044444 596390056 131842456 391728836 657870371 625969331 907740707 477059165 621295142 474571870 664406558 181817237 500603000 998102300 588767995 301354675 410084766 401607473 720717988 261760418 711434576 214359012 817078259 1049659550 845789638 335656188 326167241 216234536 163451033 100852224 429035402 66172431 708900107 450891130 80830273 803916309 592500587 883096432 119040951 803010306 887925457 820567792 220055978 973995220 619580031 627331808 204638033 1020745534 723890234 346068762 107342265 996095033 961955369 190211033 265748715 554435343 947745680 1068734847 666202801 724041852 276433596 237336210 51972334 599382369 851058785 493522052 311436924 166474723 335610772 360202625 330951202 710255220 128819201 1057780289 770662736 43196576 96213119 713941496 175366933 317491093 995534240 187113567 187249863 866338970 237543755 897200055 307727240 831789280 406468386 989751685 931543307 345892082 315041056 994793548 685710552 293651807 523160331 188812137 114816273 220132850 505174148 57626806 436833159 765465804 4809847 735107125 386514664 549259260 570659057 583311635 586644059 290090924 949438482 483905035 34135469 252367506 621459509 371732381 338012752 86214417 1038148423 408045117 391470460 148049683 719927887 99218871 784364877 1004319624 634094902 1040816438 10351835 417124738 300537978 632069336 314568644 779177985 591534054 15586387 918932301 1036690572 760757356 1025631708 382997896 415121176 719451373 7770962 464893698 988067938 15308554 1069433422 210199749 766366769 624443094 1054929578 981657600 749048132 871220104 933206913 820157431 590314218 640903913 1057025121 892784443 990035472 56555313 645108153 201301579 755605796 310977180 12615602 27905810 99405715 632903599 172326241 422996275 1036695901 71975328 427776120 324030040 261399521 860630388 527199346 948085996 743403308 82591127 54403037 837507383 130776497 483670138 498986846 922545998 480746544 257724946 182404694 160705958 187426563 900048037 729388696 384167358 962373448 212169523 957825449 408137084 882799212 752135582 446852433 281132181 1011653620 491138313 590712552 56527466 196357440 295075888 759381924 434230633 900620093 309871032 823407459 596741451 18338487 340822692 841037166 783143902 423727959 930486030 80321359 251630271 34592293 164695109 602343678 1036274779 395278522 152280824 369639650 298482713 575556737 153057590 404757309 377103749 1045375424 608649231 1049530678 158463622 413182474 1017156557 1054365731 732373107 2209445 350039755 773512857 1036918846 185671998 1016832704 897877028 899295717 91663899 220822599 974192211 1063611271 256249587 975978044 83023853 171503224 263087732 536448626 995265416 155676258 796253008 137362770 188992544 345821535 672292342 902766007 276187059 27173437 116771306 1064500782 375767296 267179296 766708334 372354376 771181488 377601292 1073392901 855216824 657219053 569208395 896292574 809299790 269072195 510305071 463455740 889255313 974806879 418573301 1019403516 916807649 291565027 786288747 763455161 956746323 561868453 959392117 371248727 905494130 491656674 915131893 748860328 498221705 389192772 766325 152346535 766276928 544745848 768787244 801633994 717155243 61750043 568769792 279785885 175277342 1046760544 492340957 597011149 247131159 433905695 742502085 166531793 880221879 497406731 772194197 785170391 534467367 724338425 993313258 860495483 640016950 814435202 332616043 960872040 915976052 1245319 523000752 526779923 683783447 1044163336 461891778 244125306 1026685806 573757472 996310878 410699918 148884143 349525257 832800663 134521798 351553078 868125959 833694229 768660930 364415984 986380600 835344503 250067179 453367717 613976242 414576235 608065690 124294015 849026692 642204784 326361504 289172959 290626592 455421008 132242732 1071124359 997570981 313161414 247080301 67918634 583661944 879613689 897224799 127972068 43332267 52318418 319551786 520364766 560685536 476101642 688491613 304937523 696204541 544017919 352562318 30069148 316088493 213819330 806583597 279679462 576681894 117841528 711523096 31793530 208287367 707953430 496328497 1061699185 893180975 780156795 363299995 494542334 653377664 865272769 556957914 246804178 59969164 1109195 600502577 280513228 746680761 462792257 1042139834 975027817 481376573 58278773 1027689089 133273646 300902537 234662757 513538732 242380891 346888187 953895325 504619186 102507697 522304562 747219343 138910411 340984563 832818269 808857175 801436569 384263528 766578920 984865583 438342026 632694121 497258258 624388891 851698660 105497346 945626825 167582975 533912717 996800106 869431773 666452831 1014540238 244815819 564469504 708922296 209960321 829461659 812961162 819944543 163715667 964920965 955009001 972945335 678226463 515853352 1061765870 114570445 369028963 255977085 20837683 453664731 914463996 299699083 930654825 175112885 310694169 730379229 549507187 332670923 261403159 767370433 145685698 498490557 127332681 86786546 664329523 924751885 953420719 412742850 483640060 1028256623 1058801507 85901335 135356713 81067491 223160461 5567618 1033896751 1014995787 661692840 214528892 639048121 172559705 1008009480 126571033 364952396 731974090 1042433261 75779892 471862972 98603098 705698745 358255054 1042051532 981539243 868697208 1047848127 811567411 98571059 159911527 694740739 780418296 312919264 981650258 783624875 570735395 964731876 994309091 631505242 341636524 789769340 506654739 49980642 877944053 446679233 798514022 142318682 877063778 890514608 147301624 572097779 150684807 298998122 517087171 38127899 545656218 784520021 1016462317 518936338 311391447 181243600 68778891 789714334 239590862 786531581 570444198 1050465586 899229820 812254656 982474384 262382662 1026561652 42242118 820279322 222588095 391947577 786069489 234920500 1053555850 361193647 56442642 950435539 51149922 933110001 988477564 1051830016 31935772 413078119 609405527 92603626 358120121 990753957 283587744 182594705 198259086 468006990 453957435 697265944 61783253 887237085 673527247 207814496 823720688 169889544 959391066 692392838 576318188 425645636 1066258735 487443018 597687962 3781464 28791200 65824612 469714761 648267996 765599293 670200398 748185123 440751207 851622465 201297859 49458844 76014640 99491031 43998493 594452420 401367553 519001915 344644971 1023582385 252860639 193906162 673230265 709957023 582424283 894535378 209142554 742857362 541832068 853490466 179033225 226222886 813392983 170264605 504043531 376885149 313456331 807128362 684880922 1022802538 971497941 748844701 298658038 526172182 183296901 308104815 939206065 690488875 311023346 361089996 96741211 1068959043 303538758 444547025 559867060 199707222 530542094 605636805 566258279 600386427 672675074 850203286 615945607 618387339 542299381 939092473 522448272 1015528653 604990970 152204166 166475100 994307141 748274282 561554974 251625740 477983641 441073493 305590952 657731062 151401141 482460020 519808979 130443790 732842753 665468388 690971418 115821465 1058506164 116357732 225999464 601013897 475045047 137523330 683092614 356031851 133294331 347533600 803983853 531071269 976656252 661260573 904816275 749165794 1059938853 527487429 613869615 950339693 1021913294 344196854 647766918 522767473 937565057 831941373 683585983 983625455 631977924 1016957370 998736023 131653254 613405454 228632587 242255529 431712913 195189358 21085287 324011615 1038804029 163838451 682764288 193432870 299411204 776695253 428805277 146188662 20218453 823488389 679640342 860303197 626701702 1068901858 874707517 493466478 930099676 852701832 174060930 59482733 416020489 1068250651 1042814276 51139293 557602448 973882661 49163267 916637478 1002268211 712213085 483416720 925674383 335576676 232441937 174346056 576921703 68429243 159879074 802291955 231745858 761980833 863318221 927356669 218689537 123597732 151494811 355577948 496141020 710395804 963364798 365854809 926169896 482021077 883206982 290895112 459344845 270385805 499149017 478312294 413554188 401202516 25311872 655112619 831722866 414928297 1026343398 528490627 584463729 488593566 234330407 99741903 411206549 585984380 370647866 257559798 502906097 889228482 412374879 73295708 827717440 977756396 641616377 85330719 916423466 348851436 467341872 208968420 1072663581 863112943 326243583 1043101673 50392095 971216041 362176027 44742329 296614877 168138405 150851662 293250558 991172426 977279733 224345963 902071334 143338724 580805282 915255062 56910169 412549374 910861183 684774689 226168005 500825291 259819956 292228727 214049646 846410613 907991536 683495892 707792123 204525259 591502141 966551516 138259291 350648771 486247583 800743026 932390237 397408247 266842613 452804371 855515701 1051357930 128386033 206603735 1633421 515377201 67750348 651353643 722532956 379223141 136083619 696709167 227727778 863902651 239317127 598618540 376892010 101855050 692758106 981754873 955165645 559569907 121422999 10222427 986629524 647448176 216635147 144960987 829372804 450354027 717901083 1041985319 760926822 174663499 187778538 396460103 523228913 225337778 141720706 1042518119 272083593 327305608 541631652 776006111 700016212 42624643 957995776 1047934858 604181869 54066810 807004600 612320389 204378066 469197462 870286187 469368957 125178434 400445977 1062674159 202595766 666397799 15142139 918768789 877509285 929064314 349553008 503605366 850281264 97212046 712386498 290559378 512822992 293660918 72422256 570351937 107304568 24252632 871667058 306257351 343603573 594007311 552824289 519855368 621448926 727108525 829004602 880788790 1005679200 438949878 909665438 538977309 752673373 834744198 250040624 1019571464 851011115 950724894 850164128 839175977 579608572 1028651225 925613149 401180716 317461878 838965418 1042439452 898523632 847373730 890956363 487938301 784321532 152130127 408397982 623430027 580397117 985441134 289530771 884991037 566358511 132639458 242105031 178593231 281168758 414489133 183818306 335738116 378531890 266512959 98872543 382505801 542702537 290973148 835617522 461625652 852762732 1029458396 760513397 143446171 1023945060 178041678 223643111 23136697 783055815 607430170 772598593 959852448 623940935 829111197 42932893 450364178 482365475 28158583 655267604 1066726346 618143064 859300023 567430503 620879480 168893632 841303849 868930648 926991316 862318551 538677161 219711805 78058152 320194078 307594678 1061108533 673530437 510929986 50076003 151650925 793591400 377093435 12488194 782425514 451787045 351859209 382500053 67218365 674803246 89598886 756233367 1049227233 429985681 386480218 628633111 285389474 984980875 890455035 408901694 1008242965 117433136 370619693 387508155 668268334 771110935 538876890 443427494 245017165 275381593 656822132 120286376 83666261 803890854 590689704 512809522 269081492 1051914109 534420961 183481754 84488683 612984473 342730408 954893819 541546908 1056057707 223168189 256116275 622647065 681088663 37797245 407765809 473676356 417003611 944218815 427550047 924674865 574258068 878636919 366392626 46271411 883739273 992122291 627907709 236523657 327703690 686022808 448575360 964275724 892326544 145546721 131149600 485080923 301132973 1067021945 122356016 150344978 803553429 438593210 747768411 887624250 400006457 938178345 333498835 993498911 158905799 573576341 945006050 802795582 617104587 82883496 891254364 387140949 214747605 341324286 368520423 232788901 660741226 679371407 201933380 33845009 133616939 46149535 261758529 817281592 840478438 902297045 675179411 492101545 399347977 400619258 823601418 907900030 119778002 507282611 513845245 830878439 350761718 154784041 641904867 707696940 865327610 623118011 420964228 790483796 761603600 281100410 666031530 333799582 680607240 971835288 888647744 602660079 781982692 598381209 630239678 116963518 501091515 931818683 232752770 490057007 486330912 630857694 395871442 234159116 19092059 851672279 982719757 1006747161 152846813 202555787 449544281 64710416 1038033078 780908872 687735403 243575573 509472768 719042476 1065037281 220711916 841034193 828731269 426884596 397808887 906567422 705766543 123188421 619981711 18219754 724938124 610041028 882223252 748736368 762180005 689665801 77119564 1020682341 328898379 687112123 755529960 40496292 551749010 766974123 1016438572 516791360 21881587 106736086 394953678 987888618 941740748 857448639 660099706 1045393459 450193008 957757758 678162541 232099718 985926781 52696449 1069649077 844048721 1066121909 986045878 701073614 693277913 45514161 160880408 796850710 807254196 362900941 193140556 246578388 282319190 29409384 451201180 507550478 1059229244 662160311 255684349 643802039 540615590 1045543796 79730803 64427539 710607416 277089923 796648837 722188035 268222158 64263866 297192989 1034855969 931546865 1022201028 1054333406 811413215 827919589 837582186 479105231 419773652 1019871423 566592538 969355497 131645126 743842301 625824061 131621254 267033472 500963822 91227142 770631286 586990436 846422810 94866306 376098705 162970480 473233575 561728786 625895019 806066733 708551093 130114546 1020015753 1028796982 76330149 718437613 42021629 627989666 525949998 668938597 858591461 213738200 53535805 12585144 592030878 503320647 757488667 1046660413 353524843 344398756 480806580 524875163 414384709 803517498 627284532 39960636 391558289 820056495 639080364 809149691 880357223 806253584 1057471799 990752596 311293394 546207788 211701786 157774888 287772996 668441521 199123322 680261976 110245746 289957692 538887081 302525891 609902136 482851703 322985792 231155567 315136334 937762105 595661363 414026667 413060476 14631444 1049340235 673882384 691479765 256243568 276995131 402397684 130645579 944112912 464563157 205575527 498044870 528830682 454628263 721958565 148242425 612715765 836979686 544128960 632579947 79542173 517137062 584632501 1043248602 638171279 218647617 651254859 238048831 58560812 511955370 594075704 533300281 349487902 346530181 47775079 661583546 539824658 554756252 578187288 838133744 70514223 959453904 363320279 303109234 658928891 374227631 323081040 1066537074 929212357 83079278 496054446 736529217 522871659 703876435 719815469 872002314 408904548 992172400 600272493 252949763 710703013 813608917 846165988 259305562 814959239 166830739 67079643 723997979 109541261 1064577830 161706243 1046678732 700524763 165537125 945755120 40674584 324070720 65982291 547116154 285450578 495393609 551022517 411023411 455230012 79035807 872047388 266911436 184635559 789290486 276563037 841553693 959025726 507661887 895563993 778413388 700823129 112638801 532482357 17306252 569710856 1022850550 855631387 670721421 776145132 546713650 273269463 357260885 996730182 576555543 39914324 1070925447 258584703 526879348 90883449 23823573 985058716 579447937 515042805 934188736 1013253277 402719317 5726187 228757515 503469009 683469022 401222166 156191657 396579052 589716530 984793446 451104340 57773474 759518951 1007413748 828178304 741378191 705834154 266533668 440567432 64519232 445810296 1004630000 283665125 876556155 118697541 9945850 453823485 1018417543 982018545 296116643 571789962 339632243 551060476 383442425 54322073 625930632 967101475 391437381 456150098 991151887 212308600 552239912 459947276 625348389 966421853 195927254 118542013 605040067 763088702 79324865 76944088 1035106254 779728627 742665278 161754436 333606872 332760567 528949971 573533667 1040654087 172532250 230765875 206392902 888254893 142139847 903480643 351275437 279380962 693745009 1008564238 575434751 991437710 636210497 653884746 182726073 647312304 252839625 49863866 547361493 313708600 270016861 573393637 572210688 390182015 660861681 347441195 67660233 110559107 764067103 383579419 177038398 662674153 5596207 60806932 324867668 223255542 814471024 659174906 453599312 324191758 307104915 75926347 1072243576 562882349 478356811 951505127 447176229 132665090 1038797479 836556817 920672034 887555874 53026166 437317979 380588975 498761944 413912026 287636663 701290840 649828016 1023034215 523678913 220002120 902956292 174550219 641007469 279742552 258777164 987047653 199844230 325930328 687238627 602521408 498930781 588028911 392585926 1060713013 238004376 270778867 1016165120 998888268 536036517 719646811 96357557 250596220 141939767 221336149 1051883423 669225724 12689074 386664786 745785156 299934744 164646855 417195607 57699752 436822896 851447900 215289926 826673297 770181090 990741282 421922380 124951538 165913424 629437798 519760711 197857433 938894882 577478544 1045124136 389819829 652882347 575891152 355039080 867035584 671104395 292294023 521602102 652720255 790539621 294966253 365548898 38628730 482312097 470705331 141341911 41460371 181847290 78776882 688179923 382081554 885444430 1024651771 446724460 379548911 444047789 424828106 407841932 942467013 735711385 28128882 909209664 145000134 162249073 986348659 620202062 575535409 735588151 100664005 783199929 189830126 604485891 1050790401 323796513 282424642 450387161 883561732 871111135 91210979 446096168 538031675 77570509 788450663 1062717844 140775801 377741462 367142507 150264092 568362658 639778059 760873505 119072769 862123205 308985405 649877529 888618413 265665501 705463644 955422527 565362590 636342921 339064686 986648278 752962633 388798897 541619703 398898590 84642747 894564470 943151768 1073321978 493618882 432780860 631161915 648765346 919820739 158346630 359571247 98043644 849214704 753474515 366121132 415370397 246146188 248627201 691429691 1067508811 507618998 602189684 360700588 1035058318 48168516 656049859 541748254 1049131332 90696568 733100089 912461527 1049077686 631231003 825876085 599131218 612575822 299619023 472754009 1043420107 714478037 729462436 353069442 710282453 477988846 95733880 225899150 859124952 879442977 1037411345 227841432 272440818 859253354 447075458 378793002 769640810 558537516 989114157 644011748 399910090 891725953 432513408 581195924 968206864 551506727 156060593 610980340 555711536 677994276 659908719 962837572 533129339 910673633 573731404 991989042 701312489 14651381 644260695 718670571 240279284 934559948 134983063 625563102 912151073 396201060 827738788 879903121 783224535 1000843450 744588753 626586091 736093371 454506938 340150284 428348179 617650072 458922572 314851206 488309968 450351044 1023469083 585073205 16918515 8366793 334392340 949621562 474817383 824083498 465419222 72899855 995968180 536873287 977610675 31418185 862453995 658601594 707440806 582876534 202591321 966803871 841916338 997506219 44991470 439505813 542589606 511426573 101897359 850426095 116043754 571439240 449447971 314293704 195096844 190088692 919337346 7315618 122504314 842495802 374436307 863235578 717037285 613546822 939491187 827345899 456714648 591984851 515562217 2697119 667074009 325384328 485184736 1007768570 744856196 67148245 375984564 637779867 1013222559 13917187 918845799 794623434 511964194 481901056 907091908 256471770 546007791 465496616 909129265 137331051 262059594 116136061 788180521 676600284 786068014 639065762 621319515 872957199 812668170 586194491 419736948 547605586 1014151211 322831138 434761715 528379662 1220085 150997671 318752681 889597337 452101170 923482825 753094645 245147515 702089689 21230362 1072933435 432330835 532172415 322247780 565533117 571372711 1011554218 342796521 640782455 532262825 246334331 301904318 931657977 447308743 30386174 63092166 720786181 150108974 735252136 961337430 831041665 266572616 652536762 149418218 216259991 437323026 315820054 929655941 108597385 1046009735 900320650 203738597 76782979 737478210 383629703 256313045 688871404 553003575 235177747 328732081 464739899 187303272 861479910 374421954 718272415 403621967 383930543 232644920 736491708 554077319 364492189 584372357 724182396 657569674 808361804 520356244 546652889 853220344 180984163 982044862 536651059 289815576 979466426 407977461 860410912 3621908 870018442 851257755 347844774 700753345 562949736 29472990 574153394 1025076818 115529791 357415779 725008044 474849142 588548984 945892950 498645734 297304918 114165980 898884864 892681441 527129927 752632570 327352991 271332233 545979877 1003603647 1019457881 688017182 572831476 579145237 305625268 561090201 152764038 41613154 458141761 747435780 653978118 272260693 415845394 953120900 511157492 1039578234 374876882 885868921 808514631 740834234 1034303180 930456602 1003288668 848089366 539685921 39624395 843501560 434000701 443248587 854771964 902930724 841764249 828192559 76181715 1007724760 870768551 200565241 946971200 473453839 814089984 390510392 658940757 405074888 474622951 840326303 331970999 227640392 630025605 367342011 701625191 17066961 133573794 236730916 632006985 692917307 696541764 831891381 13771797 393465763 942686349 159077650 611780209 130501058 596565298 215112433 338516520 935566183 30739880 631033121 278142803 124290834 411821166 294026898 666052497 588047769 887432737 409548122 211404652 876039992 965396983 1014392204 881292446 230164374 870876764 511945263 259340295 992655638 129917839 1015640329 415540817 618024076 624239190 831481686 595248625 492890285 993801010 1013476000 554562039 862987480 730409721 70221848 484722242 127282136 363163374 115441059 48963675 44295108 514095945 1031561132 641649859 75659956 716419446 869276615 717223289 801535555 847645734 622026256 745874111 147158562 87586864 649887549 222270480 870017821 306391546 383133225 5868620 533442574 493155499 410363347 304905086 385795270 286216898 848526514 25286917 631739612 1067191104 893212084 573859683 508360787 1022815620 468432781 513451276 988012339 302174694 456506019 750550942 9141570 58818770 31825578 433012440 896065238 643624645 242082864 674528695 786456766 310932779 728432483 783035489 701516928 362615829 760369501 920823480 541132838 763704081 709278972 954616248 661557617 807106142 131922530 855560734 579088009 665238866 468163587 557199364 455140511 571028993 409955357 585394494 135671412 989312661 439580052 265793927 1015147486 810594052 199701079 912211250 1065504627 392277105 95080346 130579855 111633795 363005757 38365241 805597260 503418276 698195758 420698573 343109457 980958338 590805984 667918898 1054206161 105764592 49720423 856430020 681671400 592106864 821839481 1013740298 133578366 174812912 957822283 609380307 456830940 801139991 448655514 501722323 890542132 600153381 346514773 276162157 80723727 934207689 822566851 415120420 532991458 501010049 777876803 542681555 708640029 446609185 335374403 792397701 971762313 868236979 414841053 845898970 487718722 889379328 313194362 776813173 466623191 965259291 758749512 15412969 623384849 75831819 831745610 345551239 1029265778 211562896 679283514 808584432 533104122 325804757 1006286123 417087606 750481952 271772425 965618422 805226201 325943546 833541416 850184869 935561134 693998629 1030927544 390882991 676351548 583423387 213195641 347833973 96889010 16870212 721128156 673286589 285360299 701079988 330546133 417690271 500226202 531594698 1045323109 341512377 885877887 719035225 723904220 393348408 944483089 93253133 441469408 128091754 66259587 386938533 947786437 892459767 1066010822 515710366 925559301 702822970 761593334 388087355 916807724 1053222128 396583206 973238446 526460342 28600793 220034559 357632526 649553863 960784138 876205017 558069241 506695840 11776005 616446207 931480241 222885264 472530077 715923193 992983839 443523071 269044747 1007799806 382026980 12449965 1016863340 845112986 725071951 613391127 381635359 399944111 366997370 557406382 724818085 97819700 822142260 655639610 332068255 437581440 287088367 1050397235 127200607 1009773998 161411752 586109137 216891312 614277045 783696158 363833796 624005035 266425734 3219054 113917014 90580294 116349636 997486383 910826464 672181137 1059959642 58107585 848411776 668272485 391834874 550583184 463685122 558725398 800954381 397833171 315342301 200554879 494903745 1051510454 597983022 782547062 769783770 275980515 1070166312 159602836 703191936 406455114 383444999 62136780 1028583746 774005092 572471898 420157641 812959313 873913997 98396932 962422317 335592790 103857992 346444972 1033414667 681845814 890997203 630193436 932406724 845896605 739206154 491908413 225583321 882896517 639156876 492704464 78524812 443293621 298720600 409739729 780364556 465704170 674781024 383583901 60161312 761686043 1066687839 771057656 155356451 879090706 503372333 450290223 72439031 962398508 578203407 724044764 91769577 945347180 479835203 1015617141 942438082 559471388 937368627 571539421 993943399 775434438 250402601 242031192 601826161 498037184 1026020519 495687280 296463966 450029997 257192981 218756034 576293562 495464829 14565780 629551904 884080362 871924901 60621190 145468136 80607496 528842239 709968265 119609322 596981223 568030327 760831433 384526114 456542468 1072224009 880982065 144915168 457493874 116643463 826772217 1069121656 900309113 311039923 64130514 662539125 164941439 258651821 68340224 982541014 1042181722 884389216 156795126 995055533 870813594 380941874 53064021 612026541 89332600 1023099296 228365881 66799998 383085475 871635880 697017595 930634547 600871557 401176507 435462759 11735012 582617528 1019117673 909167144 240654199 572679024 421890659 185132107 168519602 1053962459 546083067 581075450 37496828 498659715 1031378685 35818459 3726355 152448325 1022982314 990529753 27124844 53860916 152864642 442331733 664875401 80958227 520127544 402791137 530516129 227170650 151210165 794045198 617766288 885651211 693567432 288997649 712903571 844086335 829967006 607475813 144448594 501048875 519301288 1062213035 475448180 181062800 889799644 751770679 574740179 162023859 726572539 248293998 85207312 633629177 635782669 990103368 544430436 662027147 832333712 552035204 325794137 952809669 343026410 9735647 321706880 1027305049 98725663 845383800 474358884 63278612 394687214 609854180 578200174 664227801 870707279 325506882 885088819 649894918 907364338 494840484 640032231 628391268 947400750 1051222317 238771946 44907468 442957232 537701680 847626373 895193823 708288255 470438627 781390988 250546857 234295261 313390951 1035947323 1033097510 914097096 196586140 416191023 969263671 68884687 61910227 522095981 790898732 807197398 378193634 496463890 317687385 277021460 1035109117 810920890 130449829 63192809 924321781 454341323 566767404 182403785 5960985 1049093391 43836590 984490942 403602469 534126317 476392562 896155906 746356510 1048548519 246588663 563377486 207057486 36229089 565428693 53212323 742517083 616022759 537279551 835427840 778514327 860221598 1067948881 888085778 731697882 127262792 1058131014 177331597 1058090516 288989335 915726571 157874843 798708872 7103853 303111797 641324044 742178817 277714527 493934730 626710171 315171913 527206797 264936824 387636508 222960971 704801690 323633612 278000006 23252569 1070242364 385242411 193869551 358295968 13497382 766406163 445956540 752304717 860633666 482633151 666490924 76141333 670207864 951663327 760458535 451517495 28762644 573393427 1019260361 787153043 332921373 212011707 171232929 989424157 639344625 250764574 519362405 594667872 538924272 397423598 715115617 434508832 793230718 866393704 906593779 567022545 132408137 629886269 784612122 702777140 542614971 107991347 160396908 950113160 660199127 464699430 769132459 724458118 318852385 20526602 793686874 557640533 963239088 462562652 106671015 133084998 439203797 150931957 384641550 756689794 178749228 986741151 339017707 470778902 675787499 392167593 87203443 849486848 743867125 536367311 832639667 362354908 706297898 342336048 415100143 47588065 651756841 580533529 132274988 252934952 897995549 347870756 149312420 40336390 22263722 552612961 653658788 517879341 264161189 592574234 197681833 939315953 100224310 821163774 715287312 716237904 257164405 134952043 82542197 282702054 865135449 41539551 1049387972 122121008 579076041 934980875 574407086 764688368 86814011 404662458 309587406 15439100 151787599 48657249 183025573 517136550 598945283 1003648773 937117337 997280566 391920424 914579266 33594280 491154237 741884213 675291583 476064984 115558043 223440126 766300795 517663248 878250942 804841361 1017106306 601860847 147597128 51691034 402682875 91480462 935853296 361191858 850220190 299285440 747360045 788506204 981398412 713017058 737643422 440285214 227762451 714420738 389830389 752906140 48783806 924817517 493692483 167601883 1043795050 771670444 480337287 200504197 440947384 985533136 482730874 913860378 464955988 913117562 696460400 51929537 58727605 617733148 68268506 319571903 977366909 1016852143 439390250 357074178 393534953 767382332 1031892525 785370699 442370437 919133901 375822360 55837172 659075450 360543221 754465943 136896845 658265587 1048762578 962854144 1827510 778544818 24123172 860107915 941236866 241702923 877096782 676366917 148692620 1037456485 679440685 101574555 968360617 449722088 899679898 14710986 862267461 642586446 5166088 388359562 942825781 647440199 686323363 281861615 53381175 21540876 557078452 407876740 696943005 984445228 179026648 1004446479 403181792 990260757 1013846237 4261060 746238215 201764590 642128341 581818861 565222604 293490209 745534450 1059266741 503325487 944627284 645747642 852246124 154012239 298712260 1033698111 88952928 505979138 795657889 750391762 420853573 284638013 33988290 1009230442 207059069 587627502 100424501 942778072 45610189 253656452 748584406 990256385 955101812 658224799 366160994 1070506054 1001560873 460686874 1063125520 252419875 914192502 319272580 451299517 1003909105 1030592732 798580568 448721896 947545547 381440605 882251416 98478039 233296587 790824096 536166211 203039512 150912010 669561239 1056134275 675894241 159349754 612027875 26563622 304199283 519720847 898696686 517421472 869890171 915489926 655489435 263749433 313644615 736876580 850651546 382458566 311416433 290715765 571688796 490812328 416919241 660827519 425774339 822014069 887056533 856724024 923814042 17459536 586777658 127132133 244535511 31777293 11598463 781188577 937520576 379321388 488236042 1046344105 288246988 342940343 301653906 1007093726 557998122 345984903 373833114 932297097 525865484 7396132 148490292 555287694 645956781 617912306 740891829 829522728 324346977 859318214 1065680100 370429121 421621417 1043779115 9616717 538879529 217210026 866907189 888135480 445798888 325855074 13391416 145748372 177982143 884199401 721588866 53383102 527663586 340865885 13430102 141742533 493929858 583731356 884071574 363403133 225229983 816699693 1049500050 723989057 105836555 626763568 259826748 357720248 61943490 623523211 890041581 85168902 982609944 913773892 602498573 837536797 192738318 799697605 45293218 554388430 568960885 690004730 701509754 599193399 567836845 488554543 572753637 179278286 688081465 187350892 730201909 734441164 1070216345 980386158 648228991 890920195 468043485 933262840 416309572 188838846 471862996 494402231 686517707 314756498 1056328428 481935950 345507811 787894024 308325533 190898862 449786236 1027026511 219716657 677566452 329228586 407491585 1043015960 1017401483 441798135 241283432 988691164 576820968 404304573 676022682 873047177 610253815 937536756 928117903 93887798 116068127 920616180 548199270 601958907 470471604 848968597 506206463 433372516 587050202 987581837 883527646 198383806 286318121 344869039 397909559 805717383 282728368 942885586 355567288 450190972 582199153 616518681 671691143 107859837 883373787 43523142 678874035 987339007 333867932 932375590 70056992 175988969 61001509 871783532 732530529 38352186 243631191 589213535 818620420 638997976 889555508 813782061 707739928 166845285 998420879 315242139 693075291 453595616 832805354 632431043 740924850 1043857566 779774687 280421157 654274294 841538034 360477548 396153702 460794204 163562770 631610372 636884389 1051189605 813415572 388863591 928443073 210288074 89674806 710288985 393061765 430446156 813433081 821198328 298052424 681604069 397977125 1060183853 286134715 395403688 278706788 564101063 619003385 316879648 587507156 381711122 994674564 88496962 754701411 813646192 1030538146 713086443 956148448 569486179 217974913 160695599 210824001 887965202 555638094 362811812 277494438 1000532869 802613097 1006242602 367674229 107946585 652033186 393326443 383171917 829224047 967571869 723507198 553259654 971835159 184312154 877363262 608379713 901572302 71804412 882584272 494790493 544010967 1027225863 1054764398 1063715676 752162632 43778615 602127160 69432757 728434580 387036744 286161103 430582854 608227325 658812926 867095699 471094223 753297130 451491660 559801348 1034313992 723487855 27257360 435025855 209360020 563388816 670583030 656346256 320320624 531638624 627900065 703199409 426956520 290957703 163937076 352415738 313971348 412786777 676132937 527559937 664096228 372261816 923334950 583323151 990740121 577956267 247072643 795145553 368883046 872315245 504825138 806051486 1073163139 574602385 351116404 448927408 3439335 778944201 422003276 406001029 785802506 524543973 586363443 52951631 281739108 343588318 810269432 351909814 927916615 917789948 335447449 833868643 944048799 790196281 334269776 1064081265 119815719 648853987 177026264 919532734 325656585 1054976555 290196329 591219447 921620173 293624971 331715162 603205604 79320014 494951883 467986290 1001258122 881339135 242202653 111116727 72527032 282745096 140658467 624238780 484555902 510899154 533275518 902401994 482788240 152225847 770107983 19198239 305971930 400171959 616670596 318193076 841733326 201843733 740421273 569645870 62776000 469621212 45501045 311128342 173541080 697817831 241418243 916454643 473473698 519011681 990545331 817849692 884346718 959555811 372352792 1053175987 208919771 909559751 797826382 318729883 494868985 1035302476 990360531 62910286 542033434 601209479 172001573 339644752 1066181193 235339039 189174068 398816344 907353280 1011691280 1018698367 16220267 346312444 806336257 599100233 816593533 278096264 321354452 1067016028 929888132 806643064 120687658 756830299 904595282 265821440 628516450 820926810 138514823 456153124 925982457 802136965 698098185 534588764 991621242 800574733 282152620 913863694 764769459 385358474 997553047 905701633 327373573 50620911 136847705 949111106 700518522 908567860 155974596 833144046 714750097 63896604 830081687 837707514 700687542 232614252 393445752 142954636 104867630 411500317 141604319 342220341 734505098 524606554 403133755 636898134 249105490 394798502 316964056 1032707518 437167724 379776639 231871112 150265496 246053997 354894767 93676649 624424361 311990561 351939009 931640467 573687591 709775632 697260740 631682535 348590839 930319763 526247210 601456515 908221603 1014338502 395564401 201700543 114601229 463452927 551175046 826104529 191386917 246814171 324193931 499851412 1068025170 224461514 278731926 209634723 389409683 348234368 981298017 552564784 214655048 210134607 379709009 550533721 204939896 496214065 643694671 951887998 234850991 764083306 661040050 788453482 313056965 746404883 981074611 613611355 1011893409 843406753 583984571 582278794 952686894 473718083 952051636 753493004 468995886 1023110743 220420182 1011728374 322055436 897297863 75273926 806220771 673448474 815208570 421949162 584654839 804123743 898580125 180021383 938103164 212035961 716964835 339236988 942309951 472593493 555874388 174381632 39958362 384335101 768068970 723316111 644886134 432072350 744059944 942487698 15456221 443914071 607842744 535666117 419347251 142325709 949906859 400035790 444530092 857254828 781927142 320779898 958945790 791200580 801209481 1043336389 440377085 364618834 642817430 395278084 740825475 245262977 73115165 654651955 995862490 1059072598 1007724271 527994510 1031909144 766748359 103616109 1066048229 754282393 456375981 581911691 105855176 227505429 350477246 384230043 27375172 101433438 607833061 969344514 1007530041 662053777 863751671 661575636 852857820 501792233 1063645033 1031435787 168362302 373228055 986668430 254909510 646759632 807414192 969256035 332487724 488322856 1006181388 905042124 470278190 580614494 977864412 124926131 566000705 938535705 942397145 31410329 920629150 53738793 323919497 175100347 655186477 752030261 829292573 719033528 116047745 1044444173 110797688 446774695 386803888 399044341 410175016 202305012 20770175 573376820 226459407 537846353 187183752 452380141 1026600802 771913464 495808634 1073414034 768918168 848465452 635971077 68526129 879104424 860745553 387522356 53011331 530012775 51381643 427422218 662486280 219810224 587190885 351619488 121606538 1045676996 161932409 730046886 353413250 551075492 275573561 740180962 303391092 237070234 930709788 21967919 229905869 958222225 951457051 1014013395 971212770 604506567 777187903 862236570 788829533 254502958 46360205 985730756 778969181 171524175 446760867 1013649375 998893647 394907856 562135520 114466313 12925894 921658963 1025544647 626357900 112601690 262821933 126931937 1028234856 795119081 964790495 779914163 912493892 987768577 16824407 137779562 650097595 27310018 681947206 197926795 87201008 432354111 584788514 679791686 555027054 210891089 900305510 499794400 347166970 166078616 265238124 714570789 381289122 464722713 598494527 1039062742 793708025 25201521 649728518 161488192 203932777 561079932 387889787 400336912 611743990 260147531 146248067 1058816430 1058293020 997658649 349869906 160305996 1049921636 385334966 784689558 357954233 598219412 678925372 825263985 788920640 295099790 318249871 890484641 276676769 176158741 590560518 922852796 941204496 850619863 402621334 670810775 335745865 746460489 266164070 1050044183 442749767 320754941 803142664 947576561 81710202 662629913 252017394 441299695 1068757955 85838693 775932472 530841077 784406272 377130000 1054464587 128480702 913525275 226407921 1548046 619457236 827990160 92278852 32276289 281959350 729477563 177151792 356020858 785989233 861551144 802029729 180239888 1050892090 688361211 608240961 368315908 169632325 132000692 365683922 1065591678 754268688 353859087 738303020 115199507 773921067 759788476 584144203 921070483 775701565 1072904843 186578493 457781636 380501846 132332347 926662562 693770839 550714748 465320657 866628210 505166314 354978428 973927539 108539728 624169529 484113693 57863541 861272646 825188081 641646145 214676802 155876367 787400898 331362361 324918038 520648335 701837847 487623646 1020005216 517081852 1071601131 933505472 882081597 275278697 1021446388 43726754 640823634 311476513 582516118 968069048 851158912 79295298 650083499 1061804468 272984862 23752501 820320244 762922325 447520149 255027351 817926338 743580896 832009599 306868802 482466650 288326298 430732289 788979865 606532802 470196167 429583899 822575465 1019833225 817320733 418258053 1016887753 354550316 590990725 845899480 950076137 186486886 856992787 313358435 939850989 682642359 722844622 722882291 556262635 140809408 828705465 714443685 886807615 425412816 727800257 262644367 900173711 815507501 280509453 115406381 1014254686 831790112 538364659 213978399 427433101 884310484 289554531 41818073 658473987 680141729 226291243 13783998 164092199 29989942 21593254 3503246 901905724 605870982 471286454 279574220 455148898 200918750 29632278 209108992 408794060 349266121 593609584 515410463 226714321 1008145495 1053565063 48323127 244714813 668143500 1051702517 242904312 949964689 307986321 859498094 765757477 123246860 67397098 238286361 34809031 699373516 1063944826 436122235 630638688 970618984 503630792 1055584571 631506586 741147517 522329429 772850016 471172167 1027180155 454331356 210334455 995905216 517855695 488397041 772937787 210867488 373129956 235297117 129411379 656781949 125556433 596452760 772595279 271211103 166193619 285089739 114931743 947972553 726285259 522349561 638398495 811758954 383354580 233787086 654798034 950091922 340249942 1014725565 575273646 381028072 983201162 531663588 80252187 539065167 515205546 413351486 353312103 364253134 581182960 748017066 41927219 513132480 937496891 174862822 420538869 272729100 645269225 340084453 454103381 316735263 258730281 438553978 660442262 404298271 43323983 720940959 385929781 632538270 524802911 522588791 1064058077 808538863 719288042 928853564 480953092 661162167 748856876 857748279 114507785 226376972 140117030 1052757236 22352950 563843 916895981 217060644 1067436653 1053179524 310599395 772060774 477009931 585499693 990623638 709219104 768016714 387801090 165176735 969040591 979673048 317704338 952961017 880915085 8369454 626663565 735347375 871494238 420843150 806168315 179141942 306274938 400576184 704104241 1019789062 680850878 370587730 891166007 338773728 237369840 460757338 625412932 963382960 659486501 163802734 582913116 532611361 285040507 130354993 41338431 549770674 259156148 1046052552 316075272 569591595 384669449 1026524950 189229613 477014155 522092901 376260162 859275077 889747635 687634604 428249322 341239986 157087795 1070917614 1028844217 128944108 859679100 643053806 627393562 757225084 1030539816 358583114 398584785 357232023 19445057 514340208 676432650 469864232 951624149 105006344 461236090 711154414 253357954 31438427 841443106 75903334 841173135 744023984 667501832 631873193 912284098 432525856 901674225 691766366 789456061 840136047 899501189 896838650 515136158 835427209 747706595 839170810 684396333 462689751 106565388 215338429 299628392 257938456 545006348 22006931 205013143 394981428 926053791 396465882 603306674 823317317 189287711 410767595 817544239 943485608 370298153 140095794 602724930 821040533 6808784 963218751 449916799 432265068 747432497 382339430 794245025 482738940 734070901 574200103 448633868 152201505 758639430 900836665 11259071 112182925 378139412 829562338 837272550 918219804 193152348 559860879 461616359 376521428 448345498 169298721 274366629 13462541 971041405 1048059413 645769728 328161389 41197364 313812358 512374791 577185136 909663067 568893172 886330928 860325627 635394638 488907665 531009352 278784677 719598875 437063352 880795754 569641638 73048013 475500556 287023802 615050191 38003411 388857978 590342154 804493601 864350558 999287695 497868599 295210302 795189832 29303414 150377169 772150929 658535357 420546969 1001928710 696260520 979002091 435919776 211292674 762305851 286890298 679107011 409122386 1001585684 66100090 849462889 636031280 203719583 556484984 96806903 369856816 921448659 215506202 107609430 361891799 864356393 244273795 171512213 338438439 331079049 143191460 404286246 471111280 273548882 208786598 996663604 80248668 108318808 964519797 668174398 101972018 822298457 101879646 778876638 1047129130 23109317 5314989 726476108 1011405283 1041912386 802014243 73953425 84670507 692696835 812969291 565939116 296403713 153012405 536961180 564730872 317145421 519643876 316844876 627795998 940532179 710572133 419638978 620968558 381037716 354455873 164941258 299551056 977805201 742391219 1051147498 516016466 59935903 963456007 1023641086 298869754 462371576 502646563 1011236885 26243641 204432755 284482381 353419192 768523928 593031021 391447947 773202141 378903536 798925155 357917601 390485167 191505860 918408118 319711438 973404446 800987026 312915601 519280838 147503797 341062140 244982917 953948807 522139540 50295362 246833274 555375726 143089300 29188180 883905251 972219946 162722341 708511513 517324008 522556093 896286464 642455630 1069377341 414801535 673253477 206593163 184056194 1031554073 566297463 311180608 222968910 45975293 374489235 907629801 650160507 834533909 782303276 177253160 512406539 712479665 190600833 1065143611 31824023 472210953 131220171 875562589 571209872 788078660 685608824 1020433096 971586354 583621586 373334454 669506655 993790235 532938093 337356548 626429359 588374383 266747926 602420048 962215024 271448153 921672216 521083278 279132236 44501092 923870123 251187599 986333200 861718193 303291887 192892646 505536643 354331653 95735197 12603661 991464420 807756487 200552408 854254842 811574691 222205104 1022610388 114072165 759008007 143436621 927491428 285695832 671703138 613303182 902493425 224871854 50695632 781724487 954593772 78691429 373189785 777316753 62038452 353298471 15312422 577467468 216923559 315840087 237406916 1054124849 1016951919 273802637 503480995 526727220 645798057 108781410 493180888 789615263 571529070 793235149 324775639 174020967 633817307 435468661 921793634 598696431 792865075 135749402 354904657 884458533 141022846 370396128 617580738 266195617 106581026 47584082 145640934 963016281 303290300 720808919 964549936 135466619 881501691 893196714 523217597 867779018 386717249 772277153 645036560 650906900 180685790 6385911 960854805 411308359 319294122 563050145 780214184 453011356 508382257 16453754 921761632 99085442 344443455 597996366 57539464 1013531563 67983848 562600792 192581703 262568408 143855211 180109786 846424997 238874525 703202922 649004659 397917255 1000313149 760475831 834305414 850737600 333936024 515609917 805328629 460339985 826230067 1025754518 871821314 594765808 32615774 481941319 216121593 1003774051 256585640 438573380 41012668 853376115 644343989 58869749 485942890 532030967 509740685 217634769 568724975 826646406 149041061 1032149982 875627085 355258691 993872292 589157928 348771366 654719321 499029571 108313298 1067371695 381110206 583159804 720098863 342108785 1068512641 510373415 524204623 401092682 119462904 181713763 822479639 736681941 808591667 6735124 161670700 790329320 721072979 468939702 178163121 630102852 697084381 918555100 934457097 487423782 286682712 678869726 313836194 674230629 679815655 1060114420 723433489 394637013 26547939 737549864 547369553 166512945 351354771 140166944 215201475 541564383 573768017 188936724 763843412 1002693507 867733469 960250171 1045429636 425165987 1011695315 894223477 754125240 167311955 552153705 745039752 851948909 716462160 755374017 933690914 105155585 575490528 292545932 193488388 424162592 1054982814 439556867 834429568 217308892 320938804 145324587 468935819 278212787 895492150 833141549 627521758 94478604 146741376 496654327 997361591 260500325 968694614 61193543 204398453 770682740 483563892 953449173 73296266 26260827 317227874 581708520 307997711 933833879 860441841 667736755 16448606 751795287 961274870 654032130 220593181 85447801 107759357 594293567 1027909215 253302647 852021857 803039331 874876243 211690050 794379963 302923559 328080516 184087567 326658643 381684435 779003660 278037649 161359384 1046450719 243515033 912179985 521822255 630130471 1033680048 838271610 817054310 403881665 417521057 709428799 436327185 435999910 965714375 1000332876 1060108320 215887286 145902597 330397788 370376496 861383771 438209740 890889798 318013495 404303530 281518425 430321071 440541957 153830873 554347522 438992631 374276323 812133927 581720464 969552141 770691912 970748598 257916697 899261459 454208326 31190298 309882545 502795462 845507341 998163932 359083882 31327065 418463490 390708723 688842320 91737776 974387703 120425874 570917603 373225465 943909583 326354822 678191745 378739100 873476267 786483328 201399954 922488299 1017889727 776886040 159854605 632277216 199646724 815756255 1049296539 533498174 1065060839 299267981 123191403 388259255 294075231 953016811 323211422 959619672 763239736 7569321 487469201 531809347 223261759 178932239 1030182989 543029547 1033853623 613833136 193411424 277581266 38809625 243666367 972680207 45325902 789290457 139664640 387076922 235583097 12614964 495195889 503377239 774321943 613522980 281005051 604254587 951622313 1032695256 926744090 1004166470 1050831137 76924491 363235306 261009341 762992665 290039321 466103426 837060990 1014830628 325637607 632007282 339635602 923420150 161114848 971227442 860702551 249134700 964200889 587623899 566358133 470481459 941094169 998199533 407953989 96786704 537754348 875793976 967845869 202476739 442578484 199851162 852431521 66249722 449867716 30677377 796448101 636126471 835107748 704539747 81273648 131145475 586349532 64280750 338567623 689949642 838864557 1043836392 935736096 759130193 884501598 12335730 648496960 874759783 1058502403 155023442 487920638 216063041 708415897 439362549 924105139 749029650 731633188 211056227 914846150 436249706 515579501 930388560 38251024 997213107 260326639 960219107 827069098 21645651 490061286 677937841 95679608 6304742 838261316 839722440 209389814 831004916 588469484 249406695 160955638 723125294 280156898 495729800 220479900 79207906 599226912 225632195 63881256 953342475 1017245941 321779993 306184420 44024287 380809948 47925381 398081950 461402151 1705682 20199270 341551502 997493189 852723761 581811194 860871760 558568539 292827101 611199287 366714593 977286655 540812 222840737 969393781 273949691 838332261 294736325 688709847 838859577 682284474 1004203092 886034372 540673459 667773923 830200702 601780134 436862780 257172364 507259057 276801992 1004485536 430272599 510458538 658326157 115539350 168568266 491708062 870355058 999430839 891712516 363731414 897832911 453611545 554481515 934420038 173733462 601474940 623212468 957647332 309581546 871645359 892182143 890383222 345921908 821099635 342391431 884593282 1037072546 300819006 357649508 49401744 969211427 848134114 629800134 250006181 990495570 384261240 839619575 86465397 850003316 824106900 493014151 877866337 748647778 240237975 479190641 856045651 911682475 500692079 911552707 620437022 545407407 268310271 351852250 901458763 333983480 492936258 140496025 263974099 308520956 455147725 925207583 347261067 42234307 955315025 37454150 165216336 563568531 235695097 613513048 723670834 900867034 923820555 409389378 675781065 362249453 352096934 422174939 700600975 864822946 490528167 978410785 904842043 297068223 254547228 640815753 456725342 373074302 266691945 853056692 345133992 366586629 214002674 1053356359 538412274 692534586 618997944 49173488 109358260 209039061 159398364 949646728 268301086 604185003 758876496 402083110 423757157 870550416 148817650 27693918 7468333 632655392 96332863 984413106 360257394 699795855 142847338 928653732 314587079 630166885 286120900 821681433 889466241 75613552 27338234 629493492 420456866 159816479 968689873 570926726 1034419621 319149902 571071319 503792933 331958041 1071977528 579262040 967576580 27827779 661322044 797010449 462714098 575592532 825512914 215358558 567062726 391970412 896066735 164922149 148815059 1069869928 480668558 280888792 643337619 354412344 1063796127 1044294252 539257513 1037052001 811695124 545107776 219125295 952442212 252988177 238535087 64823674 562428199 836716017 166157692 433874686 739428344 959996439 509742117 534736897 541477689 621547942 163201755 191062358 615127341 647412750 553689228 800086477 533351902 655015668 516009470 577906837 911346701 938849870 773669805 855559050 284632148 820170572 248945301 777944429 489394856 981820661 266845198 208761747 325380962 784115218 878157781 753004169 637946801 662800605 290125249 702242620 217268807 322441808 941940629 257928522 915825932 97760071 847674154 744324975 759299758 667352560 627436566 45256800 477088214 366422269 921265698 734177308 272505191 1056896009 93665504 224659440 893712715 758378232 225073072 340051124 387491396 82447743 343158540 443521728 330441688 861249435 29251613 637936026 964622115 699346660 283738048 524396049 1053722172 805967678 138440479 637588017 989909618 15770292 623622053 500282987 430841842 902181195 105544164 48941965 924571388 570572424 778758152 49437430 329349181 55423735 918153442 618275588 292391549 786619582 280258780 163462426 731691951 774868496 956581898 635365188 972562135 1011161728 369083109 606377940 198599984 274765019 844896294 1017594326 773955235 740786281 73820106 1046949386 378244917 1032804082 83931903 65653882 630766340 121141931 56913005 702690737 820281352 336287784 846075558 737541482 321953860 236935924 468983835 464343378 734688126 1049797431 639908167 896057509 323424994 848814533 731826419 604932706 614709065 889439104 69406006 296467073 879975748 393226096 793885176 692295424 459526026 748645877 799298047 638575412 763652633 402414513 617548232 545426103 1051630421 929394320 215131318 889718236 457405721 774288780 796027539 32978219 150942705 356020608 821053497 637209417 452466943 848125725 902273985 93222561 229155046 178138869 396315579 932677267 510859947 600321976 232713209 251924499 451404720 918766416 189264308 100533231 858895266 109588975 959867238 21456609 979693753 579417264 531319212 36766672 871973891 754973304 339849334 113743652 451773090 929314494 110606713 343859846 984852973 534224956 300103732 859433187 791117625 597581438 319601858 1024090123 652262702 709637323 666583852 630968172 443054358 360445169 108213668 930207285 969909498 1024569766 645499578 975293133 655552835 284563523 339171334 5565200 101182153 1036650614 943292683 675068199 873391925 554759540 1068191446 59172479 1068074743 484000657 13717384 870410693 657557100 732938940 393031200 72381223 303526282 427810594 263846663 421209075 514192063 368195870 102741798 914501413 718152335 468422159 721852671 691188055 66558876 485300161 883631393 402817814 279615513 299055183 150974728 694894592 779747864 875765067 898268012 7676687 577682415 701026151 873827044 967189052 1019561150 850381950 666271517 559748979 1049391775 597951036 523623264 215947605 1005817174 294452278 45600265 54484837 697771483 465384112 641520205 995411731 864930233 563391958 23134621 475570562 740753730 515205224 862396577 485699584 544144761 759200347 250525921 371087385 316149761 830278600 375459959 345203768 1043132668 380930537 182195630 1065804660 323177084 323896438 949124065 870819094 925796907 79633891 588726725 313649885 266436335 337153215 975570814 1053808737 454976918 332890986 531622723 642713484 412728847 194438298 234370641 515758177 616657918 831022277 229421531 15284323 813942932 917418787 629468167 938174729 442887593 525927089 264221436 362725468 786620485 1020279439 237334565 647437433 387359319 453165294 182628776 174277056 177399383 723747775 241022393 331899099 78533654 68791472 279271895 953468558 8322279 168103455 153326555 334985767 591024804 278343458 533821653 666591672 738201246 167388126 845170653 256924843 1003720405 875140373 142698689 482052882 145633519 626634462 754220960 233483778 30138822 503808802 957071242 751957322 557847478 636195065 222081513 916909053 1047434728 74730840 1004173800 682807854 1010685471 602881382 1005973554 1004774336 272869428 517254543 463018595 598913412 128411671 423019229 219108481 171658811 40075802 652409800 591633781 567759038 336405385 52376838 160572542 234739885 827244959 451936315 653673241 210787559 1037535230 983668203 394459927 952535944 75247658 511363233 420547282 320677562 934279830 186291389 31073204 918663076 1002891452 12695208 492413737 616536077 25014800 704490962 889422289 278693825 530941214 881330560 245722294 267947956 272500693 181177268 1028196537 518479179 549863138 545948727 635235386 498463658 199956087 410603395 144879181 998030244 409616514 702160531 901240754 994903861 905850170 730260278 565108310 194282029 40755319 622361996 285800758 623021715 975275329 434077840 748018084 780813589 514100205 298137290 800827143 103920010 194673590 284457375 805301064 930925756 559413055 492694147 878444660 802261093 391554693 238169514 590395189 957175997 767426481 238726025 806351746 175902455 541300689 991557880 385839159 318245129 87462813 147159924 742134959 497773162 935293313 30807979 600231937 705505051 633089682 1040288131 421148873 1070425666 590076880 725499092 105620489 827408752 795111278 894579706 791472416 875335880 435612167 1042464385 246227672 274193737 674191859 550621510 594986139 968989000 191642233 613463614 280312764 1004221555 178464223 541168472 846271273 376119817 893670651 221617633 885290777 939465035 13288492 481636559 979257253 1020278252 771495248 561907363 900900166 669117930 897451596 831058987 309227278 721614351 697575067 326480537 420775102 208700731 66612238 44293956 1066472692 182524531 7310780 90189770 15905616 221703776 680193812 506686336 951612378 744876780 1038689832 20291391 36517445 491335022 21598028 262572307 59778994 837502810 709548496 1069676780 1020448080 605957632 429877832 424588175 896506972 567155001 359388082 633360632 767200696 999300467 163833732 552661927 18968152 418278079 7955115 777023705 620978216 334952549 313916987 174654944 227798630 10049020 766213090 509968821 451186142 779644022 178846975 862359140 989693136 267122766 711473751 245048601 869509085 721468784 540687239 1003971458 755803954 589835551 118123982 284059670 841160350 821645623 1029655100 408098120 1027352409 739727384 501627967 147466391 270150164 742519887 791872353 841811383 782704609 390300284 738781052 625742137 760900504 893661269 747113386 988559448 272330351 297636396 380217163 270661471 369547836 724260158 866079098 752687825 215479820 730894814 491299221 539373495 392011169 359938551 62617178 42615921 995254829 318072540 552594685 487474626 909800839 354501099 93621943 71863525 333774149 341496941 919422897 1015607277 1006908270 130312543 472942747 95580676 404523924 496157004 594744800 327929823 526925080 978345236 258411792 749849900 742071339 840055272 86178928 273183699 522314529 329674352 1031166857 450536996 588257667 359640620 833937290 554536505 582439485 509470342 135301733 995418932 1008842964 442044300 524454865 532337258 126535197 692846805 228817493 854517343 1067490719 1203617 646091035 1047170937 940825357 293661626 780718533 1011557086 998662317 267018860 428948119 173789546 649787357 449880675 139285449 460992930 443019775 1047555145 890866535 390726406 958294194 411095885 271378968 842837358 940791306 627445094 599596508 369367738 158805306 590520232 835931064 342176895 435206861 886348217 845190506 930456584 947146756 509580825 261730640 225354487 742197280 922889027 1035272011 304317326 75297184 526775395 979806097 514497923 55288241 816851539 964594365 458827145 198949893 518900288 261313654 262625157 107880476 72085316 1025145068 650257743 334699417 428629409 168676808 865683922 829040229 332359131 947991641 530959544 51142535 288741606 904455421 72113948 279892406 556054881 1008133278 298879947 368664673 776396125 852542848 505283667 301234701 43113032 653900118 471746065 763835456 987598587 762774150 580983775 457495495 528169254 300624147 902276744 234974830 952203821 34206724 516890622 127674548 777067100 257695615 928496662 983286333 153071536 747953486 549429561 631794214 814105132 1038246201 319238108 11554805 852623498 863019535 442806337 154288496 1037095961 398035586 271652203 812578150 843129763 457130738 411127738 141067912 348828419 86134100 8920293 965712259 58296134 85778432 5720067 291730718 615051555 1026567170 704269234 708441856 91010554 538646312 677470831 677705031 251317941 388469880 872534325 710120983 466601143 743864150 36371358 614513141 693112916 797861089 18947391 345754236 145256664 409428553 995248568 920924192 1045030217 1038267495 1026710406 747750056 56173785 275516782 442531777 1010072489 184848575 191710184 991322694 1055178556 696995992 336299213 549031263 125198100 310978483 598667838 473355002 991075666 494462553 214996449 798893390 826854801 179013097 870251482 58509874 588007514 639758247 951536285 553741161 238919454 198402922 634787240 175095930 822036137 371830538 141589694 894166872 136719660 448298514 930632617 615867671 802163587 767092451 546378346 520450134 579974095 729824753 712305495 530252643 911899568 112488288 215956638 851330862 604335386 471242525 316505151 366103623 1020049765 203920171 342272521 559363239 112144445 841574726 61920528 196785553 934773830 1035237345 211208248 251205091 782772772 838085173 1025277507 718477551 142361364 801372618 312935373 307106343 343750264 522086361 470257956 126372715 41868983 1068929477 831880649 294795227 615161559 960663198 142059809 286682611 958589498 490973123 300378809 524406165 399052437 868423944 160344382 385544569 74543866 569964709 657452861 272686899 289594187 886972909 338455872 342758719 24111152 569920153 382936096 1019380849 742698417 780182334 12678376 42885135 222707353 883983538 992063359 1052415658 955591736 240385376 136524286 895000291 951762351 191671442 474231099 401839093 551090801 252675850 656395328 168199747 638347987 586411962 458755216 1033852047 465144403 137449593 162216819 1023300811 870991007 922781884 252076305 711076380 4491459 271181890 1065661532 56175033 95466953 91115 541127074 537853262 828642219 181292021 144199734 983890053 124085979 275595545 372754074 1013906142 266409721 106863807 155410628 399308228 811999641 124042729 928588831 15847805 1048190866 209000195 694669242 238615448 122732720 254620931 103718439 889456360 408227892 225807291 453165454 242045734 1005016716 203891769 606419534 526335694 109709003 673889708 1024493134 711187593 1022972120 88079301 156815634 274487592 808198619 490942490 196304519 363454081 504608025 791605103 1050588079 805441723 837209519 82363523 902243688 582419816 746041134 639598589 18082198 1059094297 848918678 393997813 44008724 204768057 773658223 145453762 195026099 484369227 754214926 172747068 364903320 167450228 536554663 256267944 527754370 467198042 284698813 432384775 211440310 598200176 479717635 588324487 469105735 514847752 811908565 960475914 679063438 513333116 1019951738 143351061 509720076 1062589658 1059009986 850236144 78616153 805993451 804274068 409753230 951415173 965405826 1071333314 26719752 556142641 707889942 131744518 35678050 773642194 587077367 939126393 324499599 455741058 493023015 573546504 698610634 186506613 811699324 134853782 163747328 522359245 1025535451 473614667 832860724 521831966 565410489 808802080 988695680 727325900 91176762 561992416 40445438 1070529861 930831037 1006801253 898344980 96442243 993592122 669202002 858653512 937240001 922620124 970293494 1071134105 460988616 5769259 206596100 319691649 653938296 927598088 752864101 633676655 306066973 108821401 27756353 673958071 893470879 341380791 666412109 986261267 862672392 326008266 496573760 548537956 352732169 271454168 933357006 552908278 141992428 62272583 672824513 122186535 931023373 541725914 958299793 306814575 1053200374 776497818 442723393 524647318 52526523 605982251 78631575 279012733 310265061 1020140206 6295828 915935814 597252246 18926585 931665901 272475410 832887969 814459605 176311650 277887043 140753385 43498470 342383702 202878561 960634536 787863962 147140134 401328987 140583201 949733638 963528693 794381448 1025788646 699805281 267630300 203235690 466631099 145860390 867049965 955740241 509169626 645538695 274736689 286016817 109463528 303018615 743193234 1033754611 301952237 42669219 16167123 129570857 488087572 850898511 142011502 935870980 604153922 68088951 213687697 432639974 561768683 206792286 200278100 380236699 212565707 756212508 332628074 509648377 248713295 708263446 48943684 403723804 315820519 594512894 151899072 579927827 230983083 1037522453 771786972 769258965 762191575 52772287 567844626 57096337 194744682 920243681 330089944 38222534 968233903 769698959 730297055 345927091 562450307 62985896 452512507 812689449 150683324 680004491 280700721 1023110463 263106089 94185092 300252383 165781585 568328337 642794324 719334688 889981937 860483550 346217173 753645279 959564431 666675067 106838208 583587838 950274321 1007213008 384111336 959013604 281847483 27709163 66657246 143047949 120151883 883066720 869830671 368946386 491887783 815133819 35163137 1073456342 906204712 377840419 998067272 996338978 540260215 536237057 1057647140 785315660 435045113 696579115 64064512 808573318 66238216 271170775 222591113 171961829 581657654 638095929 445228721 519975064 193492839 82054810 321950764 830165966 231452537 240977899 541386487 690988296 15065911 131046455 142756558 809664337 563789539 797601555 408695141 676468508 289003708 530769076 1044864815 489532125 675011088 849976299 61893054 358366789 692997458 352865064 794760761 137062385 17030110 650821200 406277770 161637978 18962293 289200822 276591414 973563936 362074050 109880019 834040064 638591092 1039554168 789208114 54215728 221885342 734037792 47477438 536219982 1046751702 1032384407 169784016 988100768 915117873 687925881 105988054 315216441 48343102 508099480 191449204 1065288188 398222557 202990593 435015920 235421369 755480493 795210927 113783737 409229453 777392747 801661122 145764243 433823837 969917280 224261896 129654987 986480376 129668615 370404473 832898249 16530572 1066528935 482326568 492219874 829196343 773409927 929065565 686208573 622103200 632364992 78550463 944124766 565725924 874622009 976148546 557412863 463600785 779658509 432388564 523747709 1015283313 261019742 748117978 892664723 754807004 234693032 846020016 237265685 735399861 377310174 109394501 469559215 682826146 841706851 732389632 595689819 306053735 621882609 237525978 67728564 934701453 689560652 84174374 851384346 906007219 721524632 4045868 129350871 877270111 234019229 1065626135 987600771 561049242 175876650 38972785 767500144 713329122 920868251 151416444 120508395 843609417 326863613 510255432 947656445 17790641 657449960 453683848 598402970 468080872 643103956 79211125 691848366 913546387 877318584 111023522 339579256 832347535 167257482 376618168 312038204 735293154 1036837124 136672588 470727013 962713161 802685692 899907183 150062705 1028224810 23447671 204137714 494984161 340133311 612526468 458709311 764927976 248311151 241927976 764928771 821649561 853611026 548761361 519414028 484821839 45963373 147408413 369249008 205252035 30776795 270245301 873471217 287752041 514849623 300494908 195767923 437802120 890125462 297769841 984210959 170028819 371766595 176322235 761719748 376680245 888595409 778144015 23897505 322343080 267607193 187228030 1009901562 290074172 724381450 691896407 78219598 850520851 69573983 109189542 133532233 405472785 953439498 1060212558 741403773 790548787 865275179 951590612 403680298 363264535 521427479 236650814 1050404853 662692391 931142291 725247160 300221047 826543523 810529590 645126868 458631399 920427510 964618656 996873818 364105297 522318851 605065031 204622839 335295889 98799862 129437162 721700371 287499445 825640460 67170227 1021940580 679094799 719605732 891865452 402729121 102027266 319767878 120963994 669471621 851161807 727326029 416398309 756838381 369227742 735295901 255665883 333125132 713569723 776276733 996741898 1056773479 763788689 471228542 600291102 844259605 713938563 11026263 570148844 147230574 517631781 286883278 68876634 342456049 922037842 17812710 730849999 406839296 963904026 848000017 88618430 351097505 606497592 602913359 698859164 840269523 101826213 751935402 506780044 1059614018 133961747 385113136 422707006 405133943 957241001 872299832 503169933 464053806 513766585 318024563 222138030 870658024 1061719948 218480079 244974570 151597500 60100220 967900214 982363300 1050106995 144755000 333935353 880794174 1023036589 239665652 819802834 909811027 26249672 254013635 656892006 406969773 768333987 1062130398 444689502 971413996 304213407 59813665 85051632 212574530 620093651 802716367 544903787 725537008 743658193 821653695 423209209 454964097 412217155 1046105911 516804749 908204121 986737529 599628507 880228000 419381927 593428524 407472829 1045395519 905384913 627632040 802066773 505661937 263573274 872926072 441889471 430043087 162694372 212572975 837141490 627113887 349875449 965092229 1032502175 133934985 702849321 897279406 38803439 448218972 971023569 276018746 203549746 774614003 216493867 823407283 1056603038 1048436212 281452448 51046430 727749654 706543923 754688820 791975157 819896291 1032754863 731759357 153646554 947851800 717495853 848233567 918116898 622380999 600954295 660486189 9519511 801395724 669611798 1068521587 248775993 633548352 301957106 192205555 534006022 602437788 180204353 478492074 987578730 635948393 572721485 1409569 822296005 195235386 802838025 805896344 242336038 867832090 20712116 22143746 269707067 463820859 840276392 731455011 196845021 593836440 707841587 169462503 664802959 345000755 816546424 322275796 736342457 371493247 872733193 189879864 544216089 947274151 459654715 155812747 808193031 630148830 209798062 594848977 463962878 690420178 949218100 505617313 364722620 229188777 337287167 764056693 1064082641 315045863 510499941 94624353 4598422 917824294 600179225 693634455 717236631 356498479 353395233 893754803 1028706630 490765055 806957701 238625888 562890749 110320750 124137452 867437359 877671821 119965643 474648250 1009134094 311708354 747372191 868968253 723556067 499656397 26054878 29380344 234497383 285782383 702760427 993647481 653796546 662108502 971510138 419312556 339161564 290413971 245381903 553724269 663600871 743644921 893431496 1050551361 99394518 259445866 433933914 612116982 258303889 707328001 6714250 217725022 618214477 246954816 113212682 654211849 382143147 95059779 512494958 1017541020 797915842 33396623 207786062 513644775 226639843 799430044 471670315 1043489814 465834720 733638316 260403838 435787643 1065905218 645484024 22461529 646639199 311957386 363064612 892398671 129509597 47695156 581885260 232598484 520596788 931268565 561938598 238135505 201301036 563975498 1044591351 310195100 823978579 329427588 779062230 308094942 322674538 578158469 52731327 471366409 808523042 148286799 1036032463 416052310 233458028 957162909 442799544 101518759 876701897 745994613 990774018 186980317 245467181 475508307 252598326 1057256377 726182499 1039071082 1052054208 323991706 198571763 785353962 667206157 374037782 270575165 609152533 634527310 1066743493 709333406 295930420 63729581 619049645 569474582 69906651 350465411 182769192 823047568 555596341 553474057 674871812 20863342 907399059 635085979 808154762 59625057 318134598 835644036 297592762 268613299 504762460 55531186 170182837 155271867 881981551 987734993 14122445 126028342 527040517 1046728768 830729075 81878347 494098253 923113254 562638349 965520269 832802158 1056221243 1060261809 155966971 31044438 249243356 626545978 714708764 629937021 99859566 931917093 685528496 382513846 383551400 798184596 1066037092 198271872 324610009 936845248 841112407 195275492 239264914 994242106 924608968 98838382 919106233 997967828 979304690 847403414 430849095 407164754 138416723 598666472 614818089 966916621 768714435 572383866 400151377 869648445 414660203 951487574 996593863 636495121 755461606 383767013 666017342 84002009 1032857251 243860151 151949040 1002748956 819033199 141316975 1053654383 98121555 476553491 596047337 828351541 747550927 1003014440 43540202 598058086 411127435 594644173 985020405 179808508 390813317 89595857 638945355 422189685 427419019 441319766 845368110 1051515322 511819107 193427222 631843093 171131301 166640709 398021418 141403168 863669516 243717419 955664122 174111227 678015181 236247247 836619867 564706621 1054593917 68992791 121371081 43918979 159491619 943276435 660047937 828005955 521867419 375922980 313303193 920251679 698553704 604512065 1068565112 912167544 746695754 492585001 291679250 613597525 480894449 532109515 823198762 989143948 191121730 307789183 387322542 977428315 915105430 678084534 315389234 474915222 405838480 620583509 976052300 374067712 592601355 906646392 553899648 452755856 422636944 73224880 672234118 591888594 1041567604 330401691 365031743 1035881576 629987862 636287703 654098600 12768525 307077525 705415177 191243264 154989944 321499012 1069608775 202935012 431481553 503312240 560725168 978861069 569160662 549885922 722780444 301233450 857725843 619034048 154968730 716395996 766338506 596771864 415147607 555216977 442070830 782002556 614362385 921117984 311909284 467257941 334217269 603788009 453102952 947391323 81425824 644720008 231173162 762289481 128102160 671202050 777713596 195164251 31708248 925741575 617791283 47844776 172061973 500167801 780823289 713614222 927743195 86622908 97901542 921543247 445381895 757288415 393007405 542054126 957718674 822565461 891834727 939522360 353259280 834686406 543280703 294161337 973910900 263756949 1044469513 597738333 448495762 528627280 927684272 398881381 910461719 484841629 274817327 757977435 63049230 92610635 217434776 84083781 923906312 707487810 229860261 1020886082 497171464 1045996555 602541399 387403151 13826 978299713 348543999 373438359 664859216 766724255 261239446 1021955347 195460827 427172377 966522468 993808936 930044920 512600452 504960736 240438252 986206575 866575038 857919367 910314560 659350896 973818806 224142188 924915763 489297359 4758573 869663975 792712684 551168154 658272084 231517796 595290086 621588272 64910768 828949936 333124066 225271257 662170668 228509205 157518189 698255629 492689330 388239849 44641075 1001790134 363305687 733965009 248788003 875970240 209439798 312010893 670203230 901443844 816842242 126379141 509864743 856240913 163140932 2126904 1012316902 832953378 724648412 426803238 222605956 1060055410 988487732 393388727 993986446 495360592 494427411 185675258 938177566 76728354 240787666 570283862 987591524 516516051 874329484 925183105 978554641 144514743 547924095 113163687 612331035 666576079 598890634 1003876053 513387852 986760579 36630573 561793429 599809918 808240029 838224246 1022121872 630398479 397301374 895562253 525717519 495598823 555078380 49276044 983295301 1028535277 319112529 1072925849 905197649 24696038 1028890480 359956289 370981774 419334630 877196592 235295225 561434298 130800718 32696320 157022843 123996561 222159181 897661193 753037526 624969680 36972050 545528693 162231361 926027081 791830906 69055899 229650516 732575559 996859288 806596746 52854728 975154674 1048105383 130324375 987834736 269330151 811220689 517725766 899691495 273680162 838086919 87853431 486572458 521161386 230454106 859813912 958855823 469429796 292289939 322326239 288206821 578300523 841840681 815247069 770489327 264584131 983855643 23439243 439459113 231921239 187736457 67118295 654951821 189541 394618414 387339360 671007882 439152503 356678682 253266851 832212914 265557377 56078741 751843826 540699217 845346880 108069341 837913861 793308896 858091865 198218617 708629861 507062007 911490331 893277036 798996878 499211662 37603382 545004802 999712285 933118168 714433207 933522693 485937375 387217336 660535033 643004005 143954894 279085885 693195644 468100103 808072458 314430698 686539871 40052877 32690296 1059775966 441240375 451355090 315430420 8654584 446243570 654994338 224754806 373385313 996379830 95947295 1068461817 248337020 271468548 866810907 94029973 831294229 850426385 680248793 739441705 288718167 466556325 879869667 750725866 352248813 470687225 534495092 447594541 614781992 982729736 363451276 183242463 527821630 569783705 570680232 729006995 912809236 574744094 100214476 587467569 758482391 466688014 152612205 576911888 446300051 378178606 750803440 77253353 503021349 905676482 790117230 678156486 713149140 1051317737 954870346 138588536 1021250653 27380479 1024184619 412878084 819677860 912788215 855295801 284892995 865930157 1052808877 69607664 158497314 207769367 167590058 229832701 956926412 955689863 432869593 153368554 308286139 874941926 65191197 899941140 899789922 30581644 497357878 641596301 564167684 961415771 445907196 634459123 644472858 292906283 836477665 183421264 770069677 711814210 837601947 744173889 379481296 361190381 728329337 165206869 1031867022 1006691578 767907798 861142500 263694067 625549576 369800532 32622981 269882056 660327882 164063070 684498500 832717323 709533231 98990134 320345239 986938659 222537990 717527037 231779466 753821883 105917402 286637252 671307424 403909978 271399928 758144516 688659781 85893111 1010915901 567815245 960267429 182672498 264369606 420817763 108315085 880548984 757939051 1019099387 226182705 377516063 948002140 1035719439 306661317 374140866 631829340 710405550 210182925 29608189 351247818 840005465 946421516 781868418 111586932 1066974896 890287402 809229837 1056432208 128947767 711786878 470065212 750349331 674118375 873614606 563158205 85115381 1005506773 622336283 848653658 238499579 700874952 234380816 397713668 245988552 350731816 1026428271 165369723 460710480 942080871 181050041 1048351537 504023995 620380938 152137668 121408583 106027312 57101495 570435163 1061165651 273107247 622331355 37731804 1046327772 129001669 814116856 563046116 971145158 315400187 977176705 76891830 299290660 1025171276 120963719 650680882 647635202 830270455 841197850 256824319 204725703 332403254 598938982 514620548 781839801 537612219 654377560 319886981 13752170 383895767 375115335 1008809345 394205553 517833203 880248256 184893175 407677479 824944672 340799580 160407313 601843090 167852317 588968004 841988768 506509700 279779543 938962356 971436896 380733952 97042070 174510836 115853227 514060816 417385457 1040338434 975963566 391937916 663371291 468737024 158068240 952763442 513545805 209891767 132688294 96528832 322160097 571603305 119086760 826674146 735876066 330205239 717489124 261291502 42993485 161708006 286711927 973117710 537000947 739478829 256121910 789182571 460480693 779508207 276690000 55483328 422674475 151905462 415886231 603732117 986114669 1019297947 838123055 284095703 72431421 1029732294 705974752 231385939 708540973 1053480555 414919486 83177751 326803252 930968239 443372587 274089306 999707362 137489802 784703502 541337195 199237559 143924489 799533779 1071870855 431516225 952499786 683784375 922552498 220734653 403654912 722569323 406337191 14709950 995727211 590296538 694060109 391218026 461571019 507083759 1002840756 600318468 782900345 7648864 578894428 897701409 449279358 604738211 303987664 691486976 1063712795 686957799 1038013683 818877245 504972643 665098716 690716385 146165669 369266284 397674023 660139909 888210375 882707145 645597491 141161340 964555992 671912574 524387391 84316319 86318711 621199329 355915187 420552786 1005125767 566735868 681123427 631577076 376258355 687689290 635053761 870034578 989087058 688249689 709321472 491741964 657083697 917736133 726258377 756147141 208748765 953776736 950955254 320728591 242042265 685686174 376937854 523603534 106594368 289517240 1056693655 160753263 277698263 237664326 837578477 222511092 836910855 472706939 259731124 551928302 460793 932730994 772101573 847269494 1029772743 635490543 367139370 809609230 1717252 529941056 323017827 326249826 145341730 12774308 766600662 1034947486 880131205 540776048 193344241 596018059 302078238 412769743 833530065 303293385 795847643 911847934 765263421 312849377 914948202 932158733 360414894 687438987 292207760 62165167 870235138 1001460300 965699843 458572550 477580458 48926944 877231917 434359194 708427182 339462999 615537621 132994373 681455487 285362579 34021316 21895637 427290263 397232577 963162351 545477312 721342928 549603014 457049454 49298844 529151624 214222385 778383073 471731202 888955818 939255881 211288188 798510376 664371137 434506891 687030733 397569286 547048356 653622896 112660045 760486816 663363285 77897832 1040985495 1016163542 343228471 5233235 535631489 535629530 178164522 470987144 791991502 557625957 34748822 638195678 650481671 958457019 482260810 280480045 347316180 273046693 750894780 755619384 270038062 356697806 1069220533 523591838 425092964 81221824 1001168210 390561784 834840920 887229331 468909730 639947053 568914357 906533879 461731600 507419118 1049823714 919326591 868698386 615628376 723708271 477605373 1059954506 464821106 280588656 630528992 147789860 963530919 567942893 732099850 827211976 52547539 78075999 260310785 314776510 168809312 509714475 976009270 981920518 66564474 122355650 652229433 194440621 1051088266 16024149 294357398 939586364 81910283 241482915 636137329 286299925 819290614 782020546 927204157 465370658 487773493 724515846 95217749 651105075 324465438 180138964 431213158 880937337 494227301 157960239 6506452 923801357 216781513 55216821 300469237 147304309 334019329 896946063 930289254 837343844 52901554 453590478 857644111 185154645 94988533 591904394 693666212 467639037 992908817 605971636 789797039 91246899 405757721 66149547 946916080 702292391 342640463 66072181 117642805 55535932 1072689254 501572455 1046046291 308129475 838565587 894397028 955561599 1011470020 235245270 377571892 823899664 276593938 1059414682 816179208 856167529 1029149429 602254679 568716545 113294141 799572636 522794817 723647211 61643710 983861133 1008844128 187874131 310000086 862970773 144154572 264819202 859909048 372239889 459431032 1013604211 118223500 1007796336 191436302 587244019 261737320 723671723 651664880 673286217 129290432 830163330 503611315 894203524 479851421 1024047788 418561132 181243621 218506254 180140812 744711068 54137226 728133307 138674382 726681728 107347205 188250012 508449879 354180800 851192034 23880811 143035856 801318337 689071780 845394871 176671986 695730185 268599513 958549328 1041377268 1019907867 491442652 19963818 813173589 235840030 427954310 388316632 794219150 564982947 429217065 783896930 78450285 224671611 221420543 139066641 947118062 607325110 780580206 223366654 361347296 758137973 991196195 631933296 781944163 949012769 435925719 920678745 226332854 119666584 262959188 978158558 346541167 801395589 405060538 899972031 196195552 371839041 354299942 701938113 518455668 70373343 668230089 650639221 647237016 339512432 1010676550 282877632 802162925 772306206 858999537 106193446 262332101 557810398 845605352 464744151 40431197 1042830014 567608894 262393669 215053866 580814281 704373230 780552921 259625069 980140560 376615712 240440027 601111908 250268558 256443243 438389727 1000293082 562769081 970661456 665887150 494340315 311694428 479582089 1032633880 88435642 824077805 113122150 658056179 736644963 610374008 717493393 141031975 286414987 141812939 960455432 1029958393 738572433 996876183 609439858 763942019 230058846 324019552 551299770 1019823317 210128235 943673060 651818689 704866171 155554618 548970178 320984417 255076756 777184722 200657916 634703247 756868110 639776184 134201592 583305367 985658103 899130011 314964352 889934380 710463950 1990324 644396472 1063843389 100832991 795206855 987880645 274999675 572027558 14321317 935719498 443445741 757915960 184652890 513776817 461719973 98596534 717266965 275232441 798920745 737534749 255049295 577803007 931422724 844285920 158430489 841292739 809314618 222652041 73575772 836143857 419966516 213343629 242310524 195532150 874221396 251500919 104381252 972666702 600718462 246999656 183681447 10256994 435025500 719650576 735195200 733603029 386070184 402260840 996503279 1061840965 522006 793765952 56649691 953205146 291472287 438364279 54655841 711943663 863312239 498094008 584735470 744472110 156494325 718566303 1003180924 285586322 247160145 712644563 343316112 736311053 447480699 590242749 525701836 651760994 111478253 755626327 997269486 729733788 24791661 442311938 906045112 801656162 18483467 1045536177 851990832 180804729 29404716 1022909098 800342831 850625702 325220268 800771263 312541754 803221910 111431581 239812463 102259631 905846198 286047728 771536158 743057252 1068784627 315884020 439996858 694710399 741826627 922429407 634348077 706280135 462259929 759772962 220797062 1057004678 594469541 677420549 1007975158 460913265 237272067 1064692982 1045593835 997590858 418596468 535361981 443284665 1034339109 894349210 83358366 361503670 915815943 290886066 12079980 898511876 974993109 245617231 533599879 537570176 943746628 389141077 564313674 241186364 540195162 118141186 408336141 1007935218 257997156 1009522893 250518439 298395591 1047414749 393082838 453342116 881922950 135922244 370861064 324653735 563085458 374173442 741879876 253834100 10104954 529810562 341103517 98698930 109702498 672528487 726385304 929317610 403352020 1026604653 773544219 383747114 799374890 1006732520 721499175 923863827 1008449241 900317984 464204707 713762114 612482543 807125526 600927764 607863453 93769710 789510104 1024599613 883568945 193697825 716992098 358822725 476450480 748739956 694498640 955531568 200337925 206793135 368052776 164474485 251199507 544955483 906838817 118118459 241766187 683939197 925026069 565539518 730945461 295278974 52130369 14554486 194080039 345684900 529769848 183621872 870528335 337307274 301651282 925515871 291375000 639672309 118062325 703527901 846834367 856640771 635671341 872118401 358660838 345886597 829931948 572566676 822400106 86295859 978691293 488301372 628566249 983643232 201498299 129846564 235571705 429515019 687726048 179940724 864854453 494036649 581961303 718155296 37961145 929291936 643349432 651392096 866603373 11493191 888732905 306279473 743020048 854233491 80779753 281737912 510983280 758008195 451654610 925752116 56465657 648944238 499752580 344056205 89641445 417684733 189217890 928552055 372102663 234426370 701536869 550090015 239097143 212559398 89841809 795159100 1012994610 581038658 158363325 674954137 686494212 48865451 1019367688 1071900006 325590019 112763400 748473527 382974183 579305770 139375048 752556256 310167642 10561589 514206403 102729257 402375086 634811539 147234221 782796956 1070960413 609695714 182787267 589588241 923217213 554867638 237612979 555100910 55215477 544033033 418811676 528501996 657476914 98107864 250121603 125334614 532408480 336796414 948281350 275204935 762259104 921040292 1011198924 875116775 461499888 181691377 842583299 256981686 532297254 876383840 437550546 303726968 832339274 1022446856 412561314 87390714 526710015 87028824 585809507 227373974 150738840 322338948 357989958 932644123 1033191816 520897259 778461489 134074775 7590396 631609458 439363144 446481996 644737083 912140628 40878520 741986403 807331830 1051102924 552450153 1009328656 599408999 233051579 695609970 47015764 583758749 237120703 670311908 408773192 767295167 955789546 786647249 278244194 411794629 546259690 652112466 941396187 769166635 487208370 228203458 181470795 198772611 975120601 184029569 277996501 154264429 601072093 46736223 597831921 983106110 316961807 267572872 975993769 268045563 1051579346 645284014 833423921 224625720 886740192 39920222 197421928 250215703 356484166 99029015 392334360 890355447 802296748 807467224 481697042 263258228 711184350 518578908 374565296 814144494 496444048 442577006 404700887 54463547 529005846 412680280 419894049 145461354 395580603 95453229 559680728 950207420 100543596 782877920 117171325 913844585 258979695 689317663 80262717 384495076 24670452 138268128 480536686 115413120 327745105 453398934 191084061 682891616 190403635 880563847 261312986 56577082 852044168 517651569 840749476 233521655 682959001 248301677 641882792 12847086 430464050 445550288 92333672 343199401 137510784 103692854 671647662 163405619 504706265 393864120 930552100 673315383 945059469 7165964 273298594 393001028 574126958 267220321 804733310 819254574 831585482 1057226066 120895826 898281565 683794753 226149932 131381372 514700480 1013340871 676166429 364007076 140055851 902786490 635200000 65380206 455318250 659145164 18797601 589954470 278306243 248737656 41461173 615500786 414383088 151582891 710302911 417753951 501302771 577552939 63433006 713806913 943984174 329768322 224312947 478470424 481529153 1025865520 303786083 245921842 128263062 719558520 171845326 772166033 256210721 731025102 1061742845 37735207 685352508 169249418 80127292 1050335064 427436697 666905859 954689135 407755099 224046485 632325236 422867505 898545605 349659256 105891086 784802299 1025881028 589868595 59560699 877978461 195675 38028015 46509824 798141 804399865 669789503 894289158 27394664 834651945 221413991 101163061 353630021 654290835 536215445 839923840 448598571 177549893 1032607654 678983286 934468419 540323784 234547565 959414986 795163539 893690816 197884747 732138141 334267621 148377270 796546041 454889059 99049279 802759729 794855676 365322576 444546985 614457768 475207484 394684692 853854865 522079545 333332000 392022585 1072580289 929440159 403481888 1036193806 880720331 467964752 83848591 574697202 555162293 397059468 865284450 865496862 650429780 1037771105 729513211 583924842 674963570 867593200 631804325 684126213 712561717 164199962 50534619 1002048421 426534179 701049379 751860364 505096887 127991128 447564634 82192655 708807846 565652092 66083029 376255534 189216665 160708488 954025656 258206486 985447472 78572664 1018287693 792347353 776060329 574153930 100873265 600805211 1007574575 245297164 798067146 409254138 354526595 33006173 507163103 765915293 774943583 634714435 134579390 508428771 172762615 303912868 579495029 704782021 913966600 989957152 1021938927 215862675 115988853 416564664 883540732 96021846 559748383 509598996 618277246 86056343 460163495 1031305012 1063663423 344992904 254631061 543047135 369064263 276478636 256928775 734996092 851039180 430486299 419486611 364044921 836125505 731047015 982747386 495181008 573091520 34309808 819499669 382887732 694429468 647681319 108154327 1052465066 454599916 1060833218 75893769 602417297 292856826 337071702 156742117 839544767 85408464 18977658 754973587 35867046 743646673 406447852 500318612 1005993349 747233864 297211306 453336475 968011119 296228365 650755381 677132901 633694043 71059248 180904464 874535932 757890290 389340357 966670166 1013044103 695442066 427024651 290874961 1064047283 115940242 751320482 412127011 996287635 776587872 615109097 753314592 828847353 780243636 607218976 579962740 928920533 648935224 211368054 214388850 635150980 245839139 520264400 1050704575 47254248 709147004 420375691 364620651 879080389 408676575 31011824 441263306 546298493 694962583 991046138 859324450 752910413 827673962 1026043934 20668510 919917922 475748423 53745549 518613610 909925728 859280225 1030309787 113120803 165819344 927331527 201452953 859731241 467001348 668149745 826399997 1434810 795835135 354937901 399568420 545926037 311817350 964091178 314637932 1067740279 1023730715 578169579 214206910 651535071 544938916 1037487990 963855039 481042420 790510344 140168434 578753705 430087250 342754024 559893332 777067523 412677295 682778771 936747971 279517726 784618782 216146819 1064918284 550026896 807836314 897760593 430083535 876166726 22613290 943493184 224883146 340882751 415666578 365648249 1052199645 900004404 172598794 40811827 139248206 300249421 549255475 125722658 268646124 468521244 725669615 815517427 553716006 569378037 781369399 847819336 527640477 328140903 728760149 331750118 672730701 980305008 1040945162 900154 503876831 204272087 654310693 424020007 938025917 250759168 773021450 117394098 24224702 474788359 746115156 108034515 950840220 429853654 817720911 859535806 494298276 227745629 892179767 533897149 630291409 939858134 502451082 1029110698 159156476 346834909 236468240 362317728 789740632 976308695 809241141 828936662 21321699 140726881 923405088 1026938544 92387248 547536791 679259755 811448897 47143871 168347972 953738522 52252590 534960912 634858842 799229252 775788314 788012592 738058077 754598773 325889027 154002246 976459302 80693111 330106193 537798402 771535197 1053229046 228576260 91478630 440086041 774452298 1007527122 548901864 838017917 398266132 119651629 599211477 897433334 998368782 192743797 963542848 389373553 232908893 206867442 336051585 1030391183 400920148 149399023 475970651 749699592 408708809 596209498 953190436 363489344 567664426 572621176 588847098 506412349 211808942 382478326 71647655 82286512 337806267 718682586 243285888 758530347 617177227 77700784 146532999 1027387344 962735801 237305164 897639612 405429148 447005659 324438600 956682665 633493147 7579194 747858240 12059226 197988110 488962546 326299320 486759218 93478603 37792503 705067902 435208941 509410193 465509575 501949562 70465061 64267045 1053943789 808107932 319911134 244790561 677242205 828589692 367593871 1062938807 810053384 422336470 516802049 674178496 458925831 122205710 513940099 628929875 445761472 997921346 67829904 258293507 438252240 1033920850 59472493 958401836 475972777 686437251 289941024 872967289 885463840 504388492 800196650 3809842 803628898 856532080 929094550 385975660 446559701 381484299 495503806 411415032 678658565 162583625 203760874 1051086479 32576107 285599992 507292296 748348926 870744503 788823062 749608324 884383118 705362500 555397432 824104850 121479285 576108298 850012016 861993776 50833912 891145025 26827585 617702828 454126717 840673001 889570356 836496948 846822118 617109117 789507628 1056962200 285282032 186618441 12708962 588003992 212214845 526805290 970345822 264407447 750307726 460154378 802807716 892003038 385505520 384267227 559865609 1050038645 409183375 371891590 595626321 782347664 559444380 695834300 641081713 1004761065 703700189 689691462 117322099 237217712 1371203 686360346 850103374 985762348 200289440 552041581 202475151 1071934058 98674912 926560012 70463053 471427489 78204212 582574219 116219635 390419102 190495753 764162157 308841064 1043327494 804025197 108228961 167141172 985161119 793676761 138672225 1000597096 510422067 422412946 932790334 621832945 563237751 567601826 221394720 570124945 155858698 1049766843 239031399 55131673 485514974 209667046 940282252 833606844 620439822 1048504166 231378102 802909369 558799768 329513928 52527899 93844480 298659336 39290623 256423239 183135686 485591890 872226664 713664110 804766059 77562905 464820052 1011522087 728204676 640220156 246196764 139935900 392085759 517742471 325563407 980283897 849964576 222891399 259128660 42605606 448043172 723001284 1070946285 166766873 1007091153 1627817 875615659 500230295 660408908 781903169 186564108 265721464 446206448 699394428 44406981 1040433241 375634831 579517154 715882848 824338097 704484021 598914900 213225738 714120389 867123198 610000470 361241733 758550187 1039860467 509637128 912233321 877729067 290978918 342883389 559664710 286473139 134370520 768466265 154489820 374361976 607047517 639805713 489431012 174324686 537712387 53027447 50583429 808081889 924082547 590181999 703111451 749687625 834423809 926664772 459281453 444604540 925222814 333234529 639270653 1059113150 124438142 693999319 839362345 679400608 669080049 846094597 3875787 1069098618 330232052 863503037 442699767 977037044 531899634 521092122 842899721 96174729 481085372 904791739 282362033 873217931 526334189 220192349 287733961 325730845 317403262 884965402 266081582 850851152 72165393 102926472 640476638 45877265 808161969 412541114 843559847 951812318 1061652398 822642956 1052431911 553501500 492490809 218505009 979857342 68324053 1006587160 476515500 207147800 426063779 921070264 585612150 821012865 484029155 676323122 37166404 410277026 345721693 451937590 887571562 703665285 892211962 469869477 192531427 576245992 758410375 269963584 735146606 169774993 262401955 145143851 239806617 833356002 10865040 1009979848 891727074 223921543 32855236 993477963 37437786 738322018 470773626 380615133 708891356 168951766 142350138 845842339 546997914 969914108 640645577 731860419 1006998723 266678349 320534999 136665991 775641076 98621233 949710155 60599326 48344071 137659891 1014476863 583457736 230754402 348754129 386498188 594544547 36862181 996398214 127806668 954525750 367262789 860023948 1049099526 763541149 1029921161 562563787 489512614 933108883 382146328 556498576 119491053 279744861 890907767 197326835 423586766 951652312 409248460 940102175 954933975 625364679 108446503 5667628 840630736 75614467 472029058 255985501 717477470 273488150 519768872 38617684 271788123 630878001 194747218 729602548 565291364 57934995 806857892 738980055 300124866 1024295993 55673883 244670424 140117973 226718359 141021891 934441943 530704791 725404753 492902361 615454826 811379580 399758271 204978771 1048411246 162799918 291628730 349614389 338074404 652182928 391877218 958331179 438781676 463451209 758908294 446839726 81485035 971602942 1036690977 612639045 231058314 1052048739 229241568 516546566 133402495 190410904 167917162 318182615 405746552 245950551 330631921 675507223 948572293 419025581 82301584 45490294 469280459 447818761 884200348 1048590968 407854673 665274456 294459591 694735040 910290652 450436445 256600371 864895598 194901748 481548197 1008348084 947492998 475546759 393073974 690356389 632561689 495514820 406858161 860387670 744235885 536306112 630691474 233265744 504191997 411133626 586100931 425169352 524776112 360373085 375100479 765962880 851670089 643649553 243683296 389093763 866854027 114995612 68643197 766545268 617214472 415502521 1013202209 454722471 655753373 492088764 237871096 1005269588 901958460 107562156 700884919 842804897 614016789 388328001 881266127 924314641 422599841 543117411 697965427 878005349 205154361 1033307006 744052694 832451213 1054716662 538755875 278194548 392895082 963038444 529253886 851950727 589080454 57949814 1034672270 521347781 78596959 357665488 996031946 807858461 970107440 601856695 747085780 528643161 400359346 633628400 433155651 8972478 834156823 890353860 842688580 846884966 844938697 691180331 872681314 125338872 564539743 139918030 721723109 688259303 43184404 516027765 697279977 248557294 402464334 832152394 291365558 918943102 98395701 219279287 228810965 204196504 1042262959 150808122 681718619 464843660 411333640 411655260 773195186 177276876 643554512 175573566 954911033 953691191 1030786294 70912582 606387813 814246488 981939441 808735432 710430502 83811294 128783995 77151815 68102464 730172092 731388785 75088068 74435447 555816160 834238172 846609229 785434049 519461393 294555378 642290465 1062446573 402807183 1035218432 526715040 75261514 701325211 797109753 963916441 763471724 443689696 332813772 419247931 1053725130 425489617 746492332 915896232 9797384 1014959611 687244439 744703700 476522875 429697020 376523388 197025591 263426809 1022611321 131139308 331283503 303813383 262965131 665836702 343018332 530064925 1022646535 376825882 403404467 116962624 1062967811 250112329 768959627 1065849007 620273679 640628530 910923394 875452454 654916443 604706010 32486978 724730867 257766894 516294028 474054205 747233920 150452667 268492036 842789481 261550996 420387398 855561552 899801154 877365612 254055206 666537997 1020326617 437456376 4550885 300784196 475857369 310136040 550929858 100361987 678602717 36441529 918968609 804380898 1029601085 992698467 927729452 409777699 663077528 841722720 397719062 143771595 151479303 345843999 852727808 777726290 445259024 892690840 1055706936 676925226 791028507 513710917 569023716 782860195 134193922 889161845 566223896 603513277 573176605 557338284 25676568 498505661 249543543 76613212 482268667 813583575 761461006 487742751 1045886155 678545153 678602515 77960903 896393242 650514537 828864755 499270276 326419575 88498561 441761767 244995531 879257867 610584604 475696900 265411317 653881114 264935161 633585563 970159663 648528702 270124498 373781808 452298826 698799304 757556080 142307725 422005121 509353865 652604170 612928193 60606371 23639830 211968405 483459087 394609875 903597448 547331080 819615075 764124657 753154185 653594214 151764242 601418408 798085490 300921115 823194670 917853359 908066129 112133454 412718100 202178087 883203289 883879868 246866453 526246617 501734151 195747021 73116936 1012924570 264454781 503406536 995939674 1072386650 762793571 794939433 475229209 32652710 552453511 957030256 71643422 489681337 448566552 636024595 255331449 877894026 939610276 833329079 1026299798 50348442 512500872 1017806785 604749281 512421248 364495265 467225604 1038269689 250811910 381604948 856350851 963947533 189567361 1047097954 805381334 331452248 930474682 1056500863 893963173 31935723 849582170 698537380 143898874 105687274 459686494 588089989 5030408 204479334 316808758 766762188 90925016 509234684 943775928 244839539 697942629 15232115 16636241 813130708 871972458 486765864 602475926 393846396 473453366 437872102 1041587163 166279880 1053560748 650017413 57993311 868070127 1005781898 300926423 37250134 589448206 330999567 857766822 349805746 372957150 164350300 1014791422 384368594 786008544 212966750 954320738 762574084 182105591 890107202 170217314 876822169 1014918966 65826702 938554877 1015541597 23522983 153117909 724693269 658994607 934116810 440809329 62238065 461515318 1021315802 902733841 799986454 610368194 362292105 534141209 223960691 107038397 587255780 476834990 245627557 156911435 375010880 343358890 1058037027 420229737 618281661 845950236 945801931 998701750 665014278 266742133 163307221 170845536 379564053 264390306 603873849 96690534 401587151 693189189 509821432 671796678 76215185 79717541 436710154 969737181 40224417 327596320 288392168 324834482 119320043 413410511 553908816 744581553 151510234 568895431 1039610163 356150247 995334279 777220801 66304682 408373768 204197860 918767623 309103952 240549450 971991769 129255330 108340328 135445202 423137324 1021724684 977591588 413881188 981866955 917056360 428101495 767656291 546916062 624077256 853688088 18076639 51804029 347527769 563429006 703884050 77500965 774242438 835841216 665990362 916265395 153343407 983985902 501366290 190089660 169912006 546162544 538388110 717483943 129774070 55928963 876661919 276060749 595461226 76917876 566931196 890208590 616319650 125150428 810610235 434390598 497243522 65295665 852427767 1027197380 367792465 303768417 405428060 505219168 57398247 333106981 427785770 468976705 666302494 450771030 1014178879 556605731 137431848 1011777576 706624192 425811128 77749086 760580469 601351352 721363028 173614290 383335490 901467655 198659879 556241136 817263856 770105458 491422504 988398605 276759300 993934819 784893787 1039123772 993864721 429543639 711960427 10098110 540829533 842675443 712034402 122377066 615647568 281205372 476595569 810602222 661232587 260894997 395159898 855081860 1071886727 489288039 30804033 522764520 265375102 594951288 499812699 545122274 769924416 932426900 429665563 737327107 770598628 193328498 733893726 303798461 619156862 1034088841 232785220 1025714655 332952528 718332311 548210680 337190268 243897406 793211764 438992161 17990795 520409743 944585661 455598457 943627942 416805575 264250256 629579986 142317854 71817026 529454358 212269523 828177637 424547474 794599408 908331194 439199856 339455775 396500722 5398169 131861738 615820280 123175166 892410036 482920364 118627252 805362260 315027851 950913949 6536963 6336147 512127202 723756126 928797896 534657147 342686236 302099957 894608915 284997015 91847098 69842847 1059821116 611631642 569268 927683766 905433432 431432061 651453047 542563061 965282262 179191503 729397974 879826004 386533864 187781060 870706115 669509462 12839532 940556129 532987362 775271238 100822331 966478733 752091783 300677508 1033611524 39652903 552409817 94130947 588017276 618452731 366127028 208761702 294249296 670486754 111258878 591678405 580294056 713211888 231601345 160169120 1055965828 632249396 970040109 474252241 523773585 819127746 700486702 431946230 657236799 710450975 957403646 946058886 964458806 1067955042 351174582 423432227 999739812 107942014 906375828 617635322 690488679 859353756 703362062 627021602 701600046 361031817 320075169 482242776 622314241 951325625 380276490 387665442 505383341 569783755 334291075 964751120 96664222 111892078 675442617 460793317 518569860 956181452 799021388 1015074185 320828147 196110313 7953987 652129440 717975053 809553892 616752342 625045447 247132999 260852179 429528542 584726427 1001868478 382974733 479712132 78018346 224259376 628598688 674020082 863542240 113385972 367058419 965628536 451043843 1049537302 621616809 200201524 15027512 745039768 692955305 470886499 254069626 785341758 644331013 223414301 637827232 995040499 529447397 1059865428 819232243 378817524 195941487 109813759 562297066 863350712 579798942 231297356 98023832 706894477 778461118 401266325 230416173 813892065 777243240 829785812 399246746 279322465 736399118 750607062 406538272 297025250 928913476 303798327 686299918 726971180 759486925 294163391 433107918 772024222 954969998 777192428 707176516 897943343 613620975 638550806 53946240 178463303 196761818 681676674 889792938 702385453 633219659 853123514 1015289938 723449576 750827478 562189222 224834411 723888621 702827536 832356704 997249827 918067849 105754097 1012091917 831352345 554112511 783590480 481808649 761110127 238260168 42850985 246934240 911018908 288757179 1068767869 782937268 461831124 987560920 80236228 738162732 708641800 79510550 391336548 138539773 195231822 538843193 286386094 332516961 775728910 594284904 43289890 895447781 877365714 742848302 328780577 217800942 427698131 904106745 956926391 877293843 580804845 97241767 285652056 555067025 714330722 941218448 728421884 903883155 96098082 778572065 1028179899 679655827 970353903 44897049 382991419 376081773 302705724 772956823 724130516 177109369 180304905 317468019 32551292 810037038 797107153 1019132234 628163817 389694143 220596640 739579858 780801905 267476121 831923673 685864985 976326665 148036482 767683979 669778511 406938266 907902465 415574167 827750217 649042217 258112327 713616549 480690473 882346088 632141701 141780753 808605237 979787291 710542872 957595349 756784815 918463465 32983270 290503866 226301963 614291407 916058435 616504180 153210410 943730421 850708486 403701911 548622044 299821858 464828494 228221661 162067872 557408048 1005743600 551656546 997332031 416980248 718358467 491924549 789996749 232674200 191181943 1053378152 218503712 292976594 264508164 672095510 206745939 886967017 401975243 705257450 453050340 591871365 173993333 971587008 551496985 457176485 1026079784 444815025 31784775 606807710 257432469 1011788039 653914743 1003210054 244615886 741974249 443385668 485044789 617176122 830915635 813806314 341808611 263436772 390363686 882124581 62553064 526797797 620948492 259264207 811402658 444195694 297987857 963102258 166229045 342685217 574241543 976253471 151004307 42107516 21582899 900082836 606231122 899076921 848103574 249415332 231285773 591348344 329383356 838412174 344721623 1036693227 380125161 845875570 902416266 18307456 765687897 861522263 456824928 990776286 707713960 735739445 708240687 626570002 401581334 472972970 409793952 586948680 319496393 384811286 939154254 969252549 173480955 81335896 863068713 342434645 333397002 947734687 142582542 813757924 786730552 462715426 705432566 830237200 297390116 707853934 673908886 163236988 813653813 465387431 570339438 181135871 948511971 645143668 705734914 108151852 815893424 845001975 479536545 809789997 661739703 353792920 1057918173 1066020028 569438768 697945961 424295108 435951359 529478753 1049904403 1049979395 426234221 857859389 232256418 846892391 309962792 143919668 653551872 218247990 520328977 174809852 272697175 446684657 699646721 542851369 569990815 412458634 913276960 518183001 510947560 973814091 70447718 65890369 927251123 719651957 243477676 330409197 44919662 1002623653 771233317 475219131 219362571 561416084 781339612 857614612 321334987 591344493 627655566 670980975 983028336 29116091 731869876 829098349 144939576 782053649 205593577 645902102 374936787 336418970 480389654 310801585 295832783 456280359 582555308 504130831 318046289 283086696 70496245 169177824 868532973 967765218 949166160 467452049 379384053 345696339 944186909 55708504 821724781 815990230 900665694 626922248 212426863 244519357 700469298 352647352 769992275 499446550 663013362 62131885 1049002470 984004879 406060455 599726078 147294530 916471063 149726481 725191530 305468768 1026725062 1033229097 727974717 352568917 922309938 218755222 266140390 580704889 267643900 1066813600 501563674 30783057 71558226 58281343 402271615 999308649 361090738 714583046 992875900 523889424 594343527 723652171 70624270 4400011 283857866 529117079 626968488 101283256 564784583 988205565 180394122 136934889 94390213 1069803827 276928897 846685521 90613279 1041458150 763367251 1069076306 387964748 1049734476 191847099 525700895 238453227 321221904 598316587 469485543 123842437 767019312 605532823 932938795 823600705 244809118 302395134 495799347 798117602 792200467 25023818 73751486 230790838 116143894 41873642 1069660423 301037000 157597695 496765531 188224420 320040208 234805091 426948802 294907918 78336872 247552446 1032293779 461476958 606004587 982816942 784177603 534448738 870144763 887477007 823029772 651798507 889312799 171413226 553790360 836276984 742203067 320103716 136887506 539602672 993744855 959568600 333893901 889716968 278370169 309930408 921380157 959044455 890932374 742284223 678074718 283435065 549173917 829140618 925553218 1057773768 437748716 92889864 16552007 939561536 37193011 174354890 568303434 455763410 901215628 362600359 1060090432 220391821 111431606 750008310 835633265 825816681 753035569 5847564 509417605 121910493 758433968 447000194 829196606 796883617 449640409 286812318 633784411 354904105 164205101 346748893 435805108 723822574 202160172 781411428 974556767 697863784 720262070 401938785 541666222 856146621 161382021 466166772 148963362 497409467 1307979 391124916 533278378 193968531 218385777 36998804 868057870 1070959606 260405808 670169941 664873844 372635310 565596927 192941539 310124709 612188627 883671150 801180817 483460195 360352259 428298934 444659772 1030500831 887314397 124010617 654132009 311139061 197434759 893757432 895730778 877241526 264237648 283442842 678409944 978666621 240961416 116092980 844927532 45842761 107564459 789764278 797595020 1057115657 82287037 1028929762 686104276 606461088 644536769 394372722 627562675 160279614 218127822 525250477 972861159 1072741285 275019285 218523450 142210776 545153847 938417786 988008027 172522546 110759608 285189154 61127796 898555845 1032713325 90943472 570446107 905240861 732650168 1010450335 703421983 607798277 384624662 798311176 881113344 550991324 1022745346 490163764 350045780 315483680 661712227 615624273 91159967 521101705 312595130 323596654 905112187 99504410 666712946 502995614 979448950 731721859 923856688 203973254 341184968 778676670 559426351 185786504 362116717 937933138 906957019 955547025 683304861 926753156 93019491 158645038 528096091 133025342 896987909 811483576 691432945 868494565 628037600 557934880 854862925 478434027 166622575 272932171 1001461481 663764634 327248340 762671306 599806129 390646068 909040209 466418786 588546982 540516310 72321348 521333480 569457414 672834101 291042878 525271735 130946954 933636677 311196225 576178944 380898520 685333283 901691893 891052165 324534042 377518019 542215135 943561292 676973238 176533358 96266108 352752833 543355921 778657098 641063691 198889133 317884478 878494829 799689998 692705269 778001231 1031018351 827831084 502748528 597096783 997586438 679772517 378434386 198541317 577426717 494923912 777913964 1059193556 469420331 124805434 210006016 1014274342 898543877 956509773 642125217 680299835 253413272 225226402 371024662 100917480 21775228 477191812 591097470 409389666 800549283 448167820 581539544 304911982 94700772 983443327 398097909 367284569 171801056 211091897 461450812 369438384 471373337 992132703 285644273 1029241314 333881343 1015118010 973909849 29888342 689178181 155064335 440163658 92210240 808718035 1000246681 683546187 952492625 576230290 1038678564 442543349 407275060 433916118 892095437 78040494 263971657 208134674 442669958 675400284 875324516 352414473 363353386 881403814 454151306 226002955 757307717 124801100 456655986 123947550 49389161 609392005 568070187 184851694 636855417 435943038 895438950 996781986 792752812 959847320 598007360 115800116 262172229 41083894 209966775 923987246 574125581 614949453 743534736 722304874 1033511896 993409737 352862842 261580167 1041071672 577566560 910132035 340604473 191238664 657858584 475461939 37083900 625140981 396057596 820792573 410872626 117199108 956244519 981088437 128694346 493404227 805581496 15309905 465871746 539462330 1050571014 629647862 230078047 26132772 36415667 677353248 712311040 922237484 676163433 470646883 34436838 306310991 373721456 515000746 689485967 288924127 362680514 796944357 206999358 593016768 316048492 923770578 356745725 807210617 571561714 619372886 143704189 935339478 728905985 364625274 734733952 639368084 641770600 390114719 967900091 864043707 322990785 637054579 36637653 230974261 1034614079 866433089 196548999 1073708407 763297385 1027559030 307129395 723463865 1034507228 968583147 265390710 711077048 423750932 287177410 1037274984 698823189 112251309 349081982 868302668 256885637 568752771 757755528 576514068 267747872 633048611 360413815 380611489 459842383 115897 251944839 256846827 603744319 103293537 353399512 364084494 652904167 432064022 955598119 310910989 937980744 406519149 694944513 712361005 46558930 699805337 912101176 249232080 1038179304 372577090 650525326 795048678 149518967 181989835 265232515 814283093 75446632 671673664 1025942699 741918809 464164760 498937918 99046363 896014198 976915312 602913757 1003368664 515509709 496511573 31523227 991062583 521392353 701159730 1056830948 1028418818 862776753 210602170 1005746581 450278543 40622028 843738171 323497535 67152801 868508627 894749428 701000830 635907283 549993915 326628252 658887635 21229280 757255477 233647500 412000926 48258282 600228363 954633594 180646135 540526776 195397241 588301285 97001050 377134728 755512151 881266839 613300825 853821354 302274672 1011397138 587863770 911702622 1040038287 629468568 382336787 624949036 1003771809 983288885 32577420 731842869 323446525 253364990 75257451 691236384 127859704 90517711 197044496 949381824 324453557 533243774 175206900 969857360 811092807 127576408 829631071 4335146 923694383 180896209 764865096 1042034571 1033565961 596035362 650828253 755924768 479801177 768446011 108575663 995379567 562457783 212476060 971152524 1044405214 343501184 774098917 891847127 533305989 919055750 665381261 478555782 733603236 532152189 829046076 928683251 383542220 239767166 940711364 688884096 354258278 848543108 1072620573 377125676 562854248 1020429620 452496820 562707710 805328699 23568529 109699989 902429714 89024398 1033331073 623462115 47588330 512059506 383011852 400725143 182932545 829094490 530464383 578754880 1031700717 905774699 266698430 479497227 394086635 328866997 144450213 851756855 681670740 366262332 773276913 57545612 781298914 355873675 883843813 323889390 305118815 656102883 9771209 495853291 483938276 945137644 27318830 109205965 717444902 507877899 372431190 52830625 545069553 10925095 607968816 574309731 393634273 656418666 851255213 217789264 500354383 1044483467 688180545 153194117 182296121 1057852400 914681644 756679516 896369663 576389639 13806518 920821065 643635882 553391183 767496561 142760315 578021799 305685480 625521574 729734683 159593921 894130199 680714803 591277745 397459892 583781481 396448903 314576063 584084148 186064117 952021804 607441155 987875850 828182394 1026046390 456099394 388415370 808086739 261848343 639334012 38753019 19979683 829559593 996517066 68689217 465990974 920713368 933074288 561017223 237691329 34168731 532411877 882144758 349266511 331846204 205892241 351056300 195633827 205890689 578466878 961988538 855611057 744779454 1062088513 835766305 757675654 938748732 208995406 916431112 186807479 67817357 452755968 792507407 744338163 510581734 65828507 343721625 613970252 620952887 959890910 657190282 387011550 826178374 129457203 1050561934 724280206 708324883 672508042 96112013 396296095 151906591 346004753 256305057 703556276 1012299049 32754029 11969396 350012145 538647831 891287153 943461144 314268983 111597779 396375353 443318969 465053496 943769188 888179161 162987119 136171735 72054324 208719161 505165545 570242946 54886649 824644736 330037826 370731237 329992639 82303883 841142769 518569104 1030139621 137194258 774688604 582153524 112182529 448596231 628347860 665152151 990423570 682309142 9286509 206415665 905253479 817338076 832281213 570083298 495240333 50757298 174144410 912659845 612912436 327780856 684332252 214254974 691916396 340661880 677252077 610074900 1071572101 880107775 706066921 73495632 944869988 871332538 754837385 501062265 652727521 342698098 957510414 928981296 6925063 1008290797 412930751 69334180 392213844 119269815 769488963 165330804 528812141 561464585 27534428 820126568 1042660877 928589326 368416928 75613327 810055305 39171697 826609717 420979956 236674829 723265857 598417419 520450250 900035850 277167950 379602758 440850273 16928898 1027463447 110298856 233916158 822856884 755556793 478272033 96710013 1061648349 784597350 456181733 611961931 678957558 699326807 780576934 837976925 407419716 539111944 395750159 90964430 952564893 799461561 561542363 254165369 182911207 578325728 1016253252 237815785 884114779 70073908 585273873 645808081 250699252 63502015 56673834 742694292 681413920 1028026568 685552744 564328496 92215443 851880034 245445800 199714699 385922984 317990330 26558922 171092279 744386408 942765911 988061054 102646982 640126560 231208976 844874714 1009346335 563023694 375417476 450581117 698110202 401799059 816855460 735920993 673245446 1066980495 408592220 741726369 1073164931 805382624 970211501 1044311558 696374859 885337924 346785793 821124232 899240336 576978672 877719815 30231982 56876587 76897448 513763741 503948079 320365123 677734818 368836555 288276440 1046894431 341305909 1052457909 756716151 755325247 340760910 1034092624 486713755 568876216 43048006 271371268 642211392 729807127 423161939 436655590 784060514 893249292 745431527 175889701 747209053 634355134 803133561 244226912 604304564 694510785 874237867 690830027 818877374 977234670 249884682 558042368 442227689 634524661 344414889 546804662 904798801 63838365 804867641 112430935 282071088 254045378 246004044 1021503034 431585563 1057010512 794093930 380432712 197630305 460771624 720206153 807793339 753664075 877379101 462632054 103328058 280945785 321112442 617310698 94825593 633697821 735076051 31469808 638097745 79915691 951295409 900838607 205501469 19263051 513766298 569894253 154924570 1062045114 597513357 228133986 126704904 186197563 916329933 661498799 221317336 486537252 671787067 16239706 428100143 750205476 738049566 940680470 619580780 25054232 571241603 199549795 559388122 461223953 858576877 494230938 56685908 874376523 894386804 81654150 682341664 255164878 364519179 635878960 586766508 676625061 646649076 235642542 548986547 1833486 474836263 401457363 929480253 1022096071 120444349 860604498 126653879 978911551 297898855 130879711 45450433 545052857 928323814 548247871 857376905 956725621 437474791 163189458 96201480 670162893 1073561860 594464354 529445100 847729538 292972869 996914764 884361566 721927818 34228925 305154447 175742306 312815997 609399402 789239251 332618151 228563302 894170549 438734510 768490486 928588125 669920450 803924933 206071319 52365299 86799821 989802673 532124189 145175014 756093475 993176626 109960778 862311075 450910289 727818163 315741680 860904649 1046834863 756899912 1013922115 987248049 572332033 313157823 1067200555 943657948 359930360 149101363 141257222 607490576 732865063 326810172 181905945 237421378 325145789 351141217 987985520 702303828 267204517 707234611 263385010 736528757 965328764 966447270 101466821 550576972 597710977 459403595 97117523 643854775 902392026 278028420 72696152 477265870 153388701 589607463 579826273 1011249423 820799715 857355788 404647357 388322608 1004179184 937596290 200181315 488022038 311977967 521715926 193415035 647795226 1962096 505716521 126292301 800490822 313892680 763216037 515188404 152087658 174995562 546735129 426457716 698435093 460877460 639722291 116188404 804401159 85447280 1056102858 200631380 330465805 692722280 998368230 958482001 532749491 85904716 52700272 315122132 390118375 520935280 1062620549 568787081 530769237 543841990 273928113 840640469 883474531 870660508 721903902 489442215 304808084 827665890 137100971 595989290 785582627 883652053 980429502 527831984 314346434 118714942 958746678 943423008 522530893 899780837 749895413 831674889 323386404 552031193 499532500 1062299656 498027349 381543222 252763157 995994950 810428379 347260870 141254251 43587680 39790696 56936613 813267150 161899700 590401723 333978016 383416726 200856108 572005532 311133539 938704203 425461881 101160513 405547391 321597863 483354106 444053193 953362258 1018479376 442112454 1067549017 211536878 237966328 839173862 980722422 253812051 1033464277 572717640 630242607 1062188640 428852403 338435988 570500345 1004992306 892567890 177170193 207561127 205952542 862441676 547182474 167393912 93674755 716970377 363346513 569308524 625398828 76128918 902805720 323457851 23751013 130504040 300766616 390833963 179784378 894845271 796891287 303270389 401239445 500068017 586627626 728170493 264575868 961087753 246247520 998315182 903444434 745085555 276450079 54384101 473190629 376497639 635137143 441583975 991879389 776183959 648288324 322012814 584075119 484946071 665452062 588767321 695568164 163845053 661024669 226737822 546116139 669920709 141681665 808435075 390761328 670924317 1019899867 148427109 527174743 758188382 148366184 479932742 782807514 306320228 590168855 566069830 569098636 676789297 977855452 439521424 297055918 833501492 437060045 548173544 382276669 682835981 581456144 327500368 398329862 3081346 76317099 452952757 42136799 220315540 647852243 648045344 945099373 57344868 113443726 659221202 690978032 663512418 251754681 933540977 756369887 955861227 59645560 119100583 683178233 388937456 318905626 97413546 226086307 56539780 122578013 139936168 927447928 48176145 932157201 1046043437 712460727 693485928 592680366 772844286 277439478 141523846 1049903469 64001692 709621846 77087909 186924752 536250291 350517255 825957454 699340346 165936526 600353736 410873368 854180298 733508535 972243529 618174821 550429724 142423317 1052643323 975972791 777435369 608181266 980855767 756987144 229456647 679383460 622452854 757248965 432403908 145767623 461707309 336187680 283106010 377086818 170291678 950363361 882145659 22830458 682338367 1067647740 1044218486 770667320 165442296 118076319 909541137 1070601714 521836758 108570904 128054777 729429701 730074294 883165401 861826211 347900828 175440308 914544992 768741486 146016672 61082021 78995380 826549544 1043899184 183342827 19855575 460928173 539625004 1007065244 69073097 183809496 357817112 831859512 1042901247 119344794 898236571 398704189 456792959 596818181 8466874 826662533 47042070 486153857 611140304 607945915 405114915 886787654 1007155226 1024370230 281801874 732819959 812941196 798477749 509727345 908713886 139182878 405483010 709854496 833898236 955402851 542640454 18189557 579527676 415212668 567039617 379226698 90921173 328264388 25217689 833437835 353794718 174878230 1029651535 735660573 828965950 537862870 142950896 1042044886 556094974 564473485 720851504 309440183 255117021 73636175 918200622 518931336 239148554 19383310 677593246 725354003 289332390 536527018 700686923 1017826493 538444355 863703508 565206154 559638517 734789069 210016702 383253839 97813250 954425691 724967013 337085338 231913246 300401347 130543792 179559585 651151395 355867755 815041744 1032467544 226823443 49418861 751386169 233394178 71904852 890868092 381188541 45982935 573057842 427707316 179638217 773027999 19003009 559288358 56980684 652067249 70568499 610160096 572882904 910192640 115256516 666502458 938862250 671526093 1069596873 548262426 373194530 29726561 562616181 228891065 159220613 797320810 186763721 99095549 991751530 727007049 208822956 269037128 678021074 422868324 652910605 970623652 837432184 191047530 1037205436 238951768 717672938 577404951 228992560 711564834 632034324 391915610 362427278 636302183 971073923 481826535 233752847 58962588 654479889 248882987 353566173 408594471 913704798 643394689 377944143 412286029 52321310 943479378 869137899 240117495 709395608 881124328 474967682 482395805 1000568347 473397345 999730274 1002019732 801440960 916386101 934233427 277615557 24762954 185817481 632078969 369182444 1060106041 373901420 901271045 505485867 697215459 182423469 693848947 569290504 571992632 303269364 481281759 59952178 986040456 936596637 13444214 457303766 356786093 510252772 480553781 343914887 59501424 524145719 782971517 375520304 188954864 130781434 318730630 27684120 839730657 1024570152 204901918 595347793 873340850 751765053 3491766 163695266 145220171 520683245 832852593 84034088 756953904 46035858 778375960 491534533 1056511334 335391772 108961313 1054207758 248407084 833218251 1011388060 40063013 819771719 523730597 380006017 587346622 225964553 275198065 692916536 148069950 724833674 1041528118 711735414 489250431 778587996 475792804 30413821 530936823 24586544 276185374 73253310 1057740856 958285098 798249029 825316939 754366430 751557542 848165757 570529695 69361105 378687419 423132859 1020743126 843098701 195948317 63264297 547437760 527185539 980490449 517727735 346704888 262155857 32729411 736025345 898803250 654043870 783520020 986007346 677237132 652130575 405430750 879527933 150308089 767220307 569347467 272384121 1060600256 138372700 586450371 895181106 971703228 883680352 545280404 845336686 1053483930 356342580 795019703 719941761 26467729 823859153 116381073 628406656 465075471 164966564 486610100 748640035 26523926 784047103 145472950 844054917 779074478 609693624 467240041 168451269 852124748 742681923 600464336 888408672 511866809 723762601 701633443 613352819 131225300 874593199 722919067 280027569 766433395 651102951 581493108 633662939 655605593 871881858 295837721 354666644 249249460 139314713 77720898 112674294 652346336 751337261 275369435 737149120 173324143 971349925 479347244 420336560 922645347 799934122 510146033 570910388 286910642 1007553500 695286645 1002720127 1031717636 203895939 379646220 471084971 554189421 560084190 635808039 797778987 591769060 614727908 23524451 44397320 627416008 902084712 880905120 860872201 121337658 717078339 53936405 498833640 819467689 213978066 273693140 573999795 1826640 831902952 296817836 295904529 858660465 654325735 117223274 611935021 161467720 151706516 228751308 632178259 506316824 630699926 659950643 772965702 1046650723 956752500 552229019 813441925 211212330 988671546 354060592 902814741 1001069608 510544327 300575431 533114721 428973188 99696769 76317875 895944952 185923468 626448451 162429972 981551279 439432364 448737069 1050344920 525951066 487466923 917830383 846417272 748689789 80581996 700180973 813543587 787328990 887867591 498777900 1064064665 795474891 800678928 738325562 1040510584 314287531 634388394 935375592 445233624 235712443 634647689 843190900 1047372712 472463256 876094636 497293884 537487780 936849077 78937368 1056770790 270752144 30134732 833255543 978714885 834252106 881575060 666335378 695892178 584689734 305852609 968199949 192246020 186302210 591740707 383932929 580736324 715173997 746126425 126375947 800398230 793286714 136504246 1006891251 565979955 920229120 99431987 227617649 735094137 297897557 739011381 708068224 193814425 50161501 1071353653 490250511 382650576 31149644 225202011 847489705 756182960 824018367 926592700 648808882 1044755302 270425616 537039197 138062062 236318358 213812464 586981609 711815282 11951551 218682752 1066880222 181086430 493599332 955217323 433326957 883548054 683748687 657256601 916353800 657356584 1007123603 521831080 594416974 834425570 741570644 639920452 664142659 578061392 810509515 43275634 138585079 838748851 834660657 94023930 121682277 238079924 907037652 731257838 98453488 171143705 365616819 672695855 71863373 824589698 958860961 573429153 934694469 1046010470 639864805 1028465705 597038651 844499227 857077865 168812529 592376706 30772075 154604584 99556450 796248832 300165171 509103270 823403668 186557908 998293809 605587062 292818049 776259389 835226964 965135885 827384333 727323930 341709184 424649860 726637840 146476730 499303947 233771934 743414847 751621240 919091520 260971996 1025056376 1067577636 910023334 578443278 988037715 1001922409 411234423 731161682 920691532 358800730 976292961 601023957 760102599 611984109 968686695 765615349 776498383 22336613 405242050 560297934 1072593280 894009573 714443526 292336284 270320267 321938811 486510325 581463324 112294641 101070698 334615619 108485003 341744467 547924404 960934690 165215991 68440907 1066605312 1054117852 86040316 354507153 65892293 327654941 969222824 997957565 451403746 925867554 570651437 1000522734 381030996 22583948 1012032625 84722749 516470193 276585232 339750267 284096023 261188200 746850356 376628530 665200103 28736890 485411876 621998290 53887394 614887384 82476448 22074341 276347333 329675857 678944365 944005762 117174026 100070117 849560887 70435391 19965057 967301891 694082684 411340640 224110329 47825001 742769101 889891240 646090393 167105799 27564905 74579457 216413240 975507083 100377132 162906216 540326061 973521990 196802197 231254536 609585886 337573955 144109815 75655876 183081702 867878555 1038672814 931931485 333002662 752387390 758878684 413396758 627851287 1058730883 687182618 235841793 975298707 483290196 190390199 1002428194 26711173 534593031 772285390 203552716 723309043 808497625 128047845 553095229 955481583 561077044 510783650 485890878 946735616 258890863 759468067 486666808 726108314 57007519 683161765 49178381 201489070 120842168 912281796 561320901 973106918 320095780 795973593 334139416 105827358 497163336 190553675 594971151 333272916 518151817 252760968 680067814 375758001 498066046 678876760 1035778909 359777512 108071620 805888325 521175838 582882790 663239153 780185254 386360841 662941925 758480759 38758491 151627719 564207817 993196445 855417821 469669940 795327365 154325272 989837087 144476461 65669338 703175716 410770993 695535943 244503469 713947715 618152019 903014587 842222765 865505433 104956968 652677633 669585996 114758186 689843654 997089292 622874086 51614200 785956053 373585700 783632613 989757207 99280840 119032907 360754341 441415095 753313280 70217960 285336736 620030473 319151257 96468159 564047341 889672245 949408627 964261566 165395364 561089172 592587578 954454038 903299791 464642803 50626960 279676578 118807701 624056340 280640820 830483926 654025868 921069157 533826328 486702708 817728549 981388621 1003919761 448900627 201696073 73923017 924347856 745046396 616110481 784457903 312515378 21495433 933231276 428999078 546055365 67521280 457496951 799650561 493783503 756412256 536053926 182267768 352886459 825733912 318904987 402963234 349004579 8416845 830861326 334355930 336970393 484692159 29582552 614089678 42085044 309882506 737516446 321199215 927063887 846417190 1040998266 1058354213 950758405 10866705 745352366 375085695 145681245 603661270 466444409 106582947 775889845 829830556 512325075 237707106 420297796 925022556 794346702 545371265 242245901 729072489 803210121 1010003588 65756505 213621890 537619128 680375471 548065043 817659893 1048754705 425400738 270259610 479536711 658140645 828501971 21870269 392583122 127042604 1018185766 523007449 855292185 627354969 906312384 446552673 693792512 122243792 950409546 381449868 447885060 728154853 1040000105 389821444 344583652 415362455 972636508 279642302 339311930 1065912189 13094698 15660829 909976541 484059586 646132667 207782072 620860650 937468609 465777474 660879963 877817842 334117574 108257501 447659826 329692013 587542998 579764067 449853948 1055477746 28491669 668816799 1005683541 1070822357 171258215 461598295 378415178 93939666 955406922 1038816740 1035051781 208081912 719385118 509436286 235904993 614082289 74613427 55136849 567558117 422479016 51703168 1031244812 57166105 998100744 650092416 428808520 15231562 1006015211 151287307 845006536 136696520 42392415 269836458 1068840989 257485514 301663227 188716991 108084373 894301020 60852020 975309180 449740839 974547546 292487285 994558623 79118103 112074540 348588212 657785499 917953786 999060648 998117066 471486206 14419739 161101615 164852061 1035249251 632661749 41624569 757279966 617135787 897650800 621799118 977688728 935387719 1022514508 470614221 341409658 301820085 563223094 822459709 991925310 664103882 37609332 403933565 292026085 442834362 494101303 5787159 276486538 131481278 325344438 281223358 925016829 123488702 874306229 1049942384 562657490 751096747 926527369 607920780 825939596 952687981 774959645 238747591 782076183 912795342 587464181 703537726 530797441 490457458 686319652 428455840 385855695 403097236 720855074 574448763 976881093 714040734 1053069868 885207384 757035891 875929239 674414600 482717006 323100434 893241949 179847756 302061119 115084309 860262297 891254431 874877538 930550969 201771367 857416292 669034616 992110780 658007391 235859258 758177480 591156971 566929119 1067834588 195232974 223599852 432801592 628339425 945024134 287825546 265241376 384506488 214628459 904210540 380510063 203065484 276887654 829624150 630092014 834158434 773188791 446293948 695480349 786569965 563938467 1058635261 622049634 376738213 624123118 491210027 127225689 326617912 179665992 707807719 525154924 750381465 688181593 545161461 183613892 444102897 347093545 1005223899 52480931 335600453 367742123 777501435 980404216 113894706 277482516 536252021 396827561 1034812111 243709541 651467918 253044775 307420588 606019267 832395052 811085423 872087758 670534331 341016633 572594665 214121408 452440531 696805086 680122568 702268027 481666478 41689288 787007008 393219093 428779838 28278595 611847975 1041198083 355622785 79592161 743744483 95225145 682491382 69672485 778909980 68019421 263639704 129579836 378129431 519164687 228283481 84567753 307342975 1040623484 783520644 421420150 55505744 358557449 1050078625 68826118 557754566 837733622 153326550 99784714 657818898 520732501 273798536 477696445 338952434 199449483 140552009 1037237158 629833284 610345661 876851363 391670492 165344049 541083992 951282171 247928875 706407674 772033429 698730378 69701869 633386915 197318477 759378022 8798661 714244069 715120195 753037646 897786327 850481623 460084319 900604964 243436974 939152817 920735606 47903852 4283338 607392607 49816442 956758806 328391483 194792165 965008201 617488630 808142826 5478900 898466819 302201256 631228160 1041535421 933761383 634364736 260873864 907747055 523403154 432583663 477005722 929399210 286177736 965306043 132837767 418275488 4062405 192569678 219448177 691241796 457397243 1073145791 491879780 766531356 209126645 709461887 423166025 698347253 823237776 394260384 321039407 971478819 788564081 889717580 405105952 697464699 888286274 694989241 410687937 86716511 49951049 494060070 521022608 721669070 836984621 691490001 684477684 217559463 888261519 847303453 481973235 583813731 237016165 741779421 90813536 11140036 372603100 830192690 840667565 1061236123 272954531 399705783 364872658 153140119 51708005 1040292059 316294449 381659733 614999032 538486828 50496277 813282536 836212836 178088394 829114644 1026368359 546551657 892351411 95197582 349236842 327320899 201307513 106051214 1063231167 453478363 92759006 225546219 250987917 827512372 202579019 769955930 626682839 241975305 76285012 579093013 881838072 84681754 886485456 190212317 807295161 240252045 395135019 517348281 524592846 911237658 1060082653 407914200 952869484 323491897 169233970 9667676 391376195 140835119 260677112 1016264324 577436604 215086014 928002728 685874770 645204552 431832652 295149094 37823345 624022707 683813 1021213289 484090876 340535125 407335560 1031552484 961696857 628138848 800035540 495158165 1013170925 215295374 835698866 914352175 724429335 180578474 803425362 628066234 585251066 1007929076 237908919 379768343 926681025 192131619 667604749 761790055 754668103 373070316 908448226 277418794 320155930 478293512 464153429 496118419 872499244 363130869 879829056 618351175 991008245 1043614584 389970555 891690063 763667028 567842234 385152230 838334548 80969727 659616643 870100508 777374881 364102787 446814300 354104242 425003410 374448445 357198978 1007076522 647534461 804214802 322524185 682796610 878497601 323097661 565247299 220881623 800849088 151292126 350183485 613705526 845187497 244568964 159480308 500700674 925164105 259074918 914063198 46518121 288290873 901494335 407314044 288609012 615931178 241342105 884461601 412517983 831864680 941881028 947285507 285429 852482991 447716925 184226580 339840591 838389489 1058354266 966758620 62316914 451121715 788909081 910263 768159754 1042960801 497793361 160619704 387376571 884475777 585915542 445911683 348747171 174978739 658646527 821926953 993557290 904352235 572539844 681603134 82421790 989044637 181226957 1045929468 197958498 1036083764 151752955 926013122 280241685 447530985 262868535 406139152 423041084 381482016 495727276 827752194 797302438 212158392 891536439 882385495 369136130 312823091 212061779 501584195 425731488 93138614 216638206 150322857 788534727 445283918 540559950 276781706 235192840 366039293 215281429 541242151 179616955 569685574 526679132 350323677 94292680 703268498 709650759 610080064 881267836 254263720 1015925988 222531744 649330631 28897065 763043755 676376640 486047460 201978625 1063084594 927298389 649266298 778296002 331309011 300255906 802322949 428226268 835167594 148735695 584354687 722432339 337529839 148513296 326305379 612356340 854864567 228573613 743007132 655469256 297013902 715718265 861530744 581535101 1004663349 71914027 963359994 862561037 1040775626 881586840 240269339 975710426 263935071 534042929 642365161 152182081 686303567 811282629 54634612 167677558 659504241 481133833 320808131 1007212155 1055356720 648239694 961771392 11152216 662119184 795715011 560380577 837080917 994739371 179860475 252777779 895034757 217961733 164142174 152646588 330722095 408940072 594640410 929254997 940339564 585621446 143915551 235512852 1024785785 32921891 71019774 184190340 79136130 450346559 559654742 1050277350 777550637 612513237 244484911 999451747 76002678 44931153 473306879 604193854 352431846 1068722840 433596599 50883668 282627593 124124777 896223571 31267287 814180497 912816604 88088372 126824333 934090717 431404991 816016017 821222185 70676378 556824649 695022521 581508054 14208709 1054880369 862531223 749826478 877573912 497515368 207133004 1050328544 839759601 787810963 570444195 119579557 102675226 860822525 454497187 60807750 392903441 687058436 930607433 50316669 907305300 123082392 910665581 399741193 898739002 962121041 736621560 778829336 962377813 566184456 245059163 384144846 467609436 812083712 479411797 791288965 324260095 143804455 810709359 630321096 454689643 361770695 656827269 29953656 813182114 128148922 656751964 1045825624 128663379 966266289 174891097 347644966 901509452 564016059 1014711913 929298601 246835827 124869276 230943392 1002206502 808511771 768191963 152202133 964227113 785534728 304090709 388647007 538963944 595611005 383015285 662211382 876246200 1044370755 970628462 1281780 503921190 441399856 3383610 39164849 202744213 410691009 1051042946 357449720 934344272 825929007 734123552 908607265 644102209 232850004 703582467 321356954 907745922 447471993 390134522 157148746 738440884 514939055 34356979 404914155 526387389 197836303 557459097 643995099 367735523 898539054 676961616 420938029 701950973 539537904 648064771 137167428 487037161 651991430 981257031 797694934 240591432 115252229 631099707 715910628 967786478 1052352249 684585680 657079040 791415616 886416231 729366009 608040601 1037836868 96594394 623284354 785415397 846755809 902144183 604473400 291903597 792106973 638859400 992405923 734167639 893811035 161527188 712043988 1029640915 950933698 569454545 637963815 22104492 412850928 83931350 861749027 316939727 668151549 334379589 99564461 567872041 460775083 952633894 822713309 833542235 744410574 659805045 329541673 469519252 1882580 594332018 303048460 734891246 591085594 323844237 181054259 1004762146 1060642794 546780898 617737183 195119997 987112891 939288692 817535501 167168750 165419017 578785086 132449994 1016158871 643595465 868069361 202757406 185514375 109344774 433539601 198527069 179239311 369192213 333649217 414157320 844675336 657845225 658984932 563396105 974705100 176372216 6232130 567935940 1029587038 215374491 558259211 534022581 750236993 711000357 568442407 37430224 902708437 527906663 1034994089 199675109 206167431 705825385 176702745 552432148 614030056 97727625 921303461 36260386 581782104 1029186659 381241467 136254071 683028627 364816986 114559551 421391654 569393112 56468389 784242217 173654824 701143819 402087779 544344338 448342182 692827322 1035182751 185547427 994909162 967389374 196048010 483716631 630864710 543283325 906169696 501754143 201694181 945851137 570279621 1042576271 397934551 849465618 974297801 419347481 1063164071 639308873 332310895 988878705 672350890 1066669845 577168385 304687972 899198455 447587772 508526211 42590936 481784708 428507632 585108554 879848991 841115504 398730549 565406505 58035030 536732967 995311434 809453367 823978806 973069469 168880207 358175452 108471114 69099200 793375024 682116030 983322946 257727691 683572232 513955529 1041919208 898040121 905223817 41426742 1009962870 318064398 553650892 1069764280 919458382 653782825 986628787 760283096 132858028 448234084 288138874 762901090 832685964 127527385 379766267 875352661 1012160734 585653561 1048591898 1041018634 26650510 609253479 748178585 419777339 226273613 366814997 171706037 712594095 32475407 970436523 979778608 459149038 205531377 621313932 133922754 554675559 130502819 870856671 455916358 99406746 44337020 941247024 429287766 198913688 327529929 1050619648 429381101 547429652 700647945 162745546 846326088 226922359 457853635 135889267 386729689 552698833 122258402 154634410 679487101 323669527 636060597 203007609 605092244 978110781 132068196 721403620 856742838 32256748 728430524 541869803 662393857 69970406 383773438 337190200 59634790 11432027 730401635 636107519 574956632 277235736 142263094 386927299 939497139 555469326 134020790 680140505 492000207 264522846 829540135 721495182 621460327 538401294 78747974 1072250283 1062472940 212388640 1070645492 773924129 202936397 283456849 1037973169 568777416 259428572 612782412 135571003 544853683 785264375 447006947 340129348 90838083 525356925 648473159 129599531 539841985 946878037 120739577 312112345 813988816 311036587 998193692 567358849 72303266 29596588 762911791 186543828 571706816 435358880 278413441 665462235 699006016 224836799 253725913 582683348 873553961 222350064 600588250 325090586 977184791 49784927 422898420 242496199 791283027 688748513 1011308584 1026028924 205283151 138876963 643296297 278649316 587968355 333778587 562923803 512700663 180208100 480105196 724869741 909773955 195771736 192102292 825244835 418677818 927122437 526735491 468607865 1052482391 213166605 165381752 808737320 553556129 427821235 646286482 42907699 603202907 68147697 903778044 919387729 226937663 681489605 859465312 685659379 579027402 921031758 293114284 889275121 186469400 532073438 568666103 225337205 426123974 993275304 601856984 495993094 223020627 481142660 1051955594 954231660 631674200 247231458 293553790 878428202 1061828377 511907674 737399272 264863813 407760569 651475338 443892401 135982498 959833445 581951045 518657895 455177693 683116919 513721173 478049849 602664479 1024234837 216093024 951489438 449315574 908740012 987385337 420771289 1008915463 813625301 116283775 229017402 461817204 262630100 294002672 941217428 388528251 792625046 886971755 278405967 938769747 634504603 196560045 387496661 570919090 771587685 202354741 263231127 989137904 420443523 999025683 703604688 434319928 704523080 59235808 637538698 766880740 134233140 522751823 276594667 372704193 403097687 1056555861 246019852 186443716 538464112 920564146 123629969 187671215 1072321372 1051133527 646823698 890155130 557167199 759146989 774604350 524697440 756977828 1041073431 442553592 771428563 919151882 228885319 608426797 1039698806 403302522 1051801026 894369057 1043060537 723437117 247789805 142385740 578578055 967991950 91964307 774345468 1059242869 493125119 964367348 412617854 152991286 29124000 239989934 21611934 160589426 829334061 201524434 936210626 953580989 313724934 60045525 154079935 1001156210 35430426 885739902 566688082 800683752 713584033 640073046 158386435 834767905 745016919 1038166895 572828631 784241662 930711092 523273355 389440269 653380053 831631069 849875712 179840376 353931177 278567475 292298862 9463048 733660359 122012798 1056246966 577106866 177229226 1018981603 186264238 961636300 105453177 433150729 650338088 267551883 138856985 413683877 969601793 680999285 702849238 823159409 418786045 166297621 831445309 453780324 626999849 741361672 464056794 556764706 483769359 1053826529 569454033 555607380 784925418 945482184 817899749 390380394 683491186 173907560 1027967743 943794250 250621290 558280511 430906978 440664506 37304564 177130203 315394157 5534527 291387910 510516311 309380569 756989856 891214869 468910228 34461491 840240791 896061658 949038093 422594290 361813381 393359902 616840122 612126202 753104934 746459641 425357524 1007421297 695874269 500388131 1037207103 106844791 354807669 860758354 624744461 219605112 85172063 437050829 150735283 17289124 15874908 394050170 621625694 361217548 689029469 460454471 835739318 181380490 677029805 526253555 146518924 885119722 982296283 55828206 10830837 154857918 952696869 958127524 454551657 740935597 203828410 933677212 598138594 819628808 982377503 778329649 124676553 551004624 712554535 224279983 951829901 232883290 842484193 432446077 78435634 169466473 122462389 345960451 501426140 476456870 707336326 395965743 618098045 653175160 387385282 829689735 185427661 877031211 1013123596 973915291 51615642 266842211 279417497 923131104 23016129 409166915 444770645 612545296 762884936 745490365 340744097 583932474 281750793 382065557 43439589 9869173 868095670 764639128 633264292 136117988 466941880 837198386 238384689 561174661 139888640 660717700 294439991 356556766 64049371 180262299 976710026 821821612 860597263 626494005 325426915 779963410 700845586 465561744 720419998 556882887 719375993 932894758 345484468 297847544 907641004 157897303 834996030 72284951 67706629 381621525 177043220 227415432 947850865 347840379 621355537 740397707 66655077 556082939 230202277 134311879 99302605 410537846 33856362 771533242 993462942 629146325 1020513613 375471601 795513106 420641128 852981708 1271187 398830796 578149720 741284217 5463238 998450375 755347363 438262884 366416119 162600021 455202761 486778595 191359932 854862520 238087036 1071013301 943691670 750234496 464531561 655972535 137107954 698096324 378166433 382497635 348472810 545647942 734260802 650250341 339606209 828803065 602639014 106369027 766308012 235903872 938711237 559691035 373696861 1058500565 378590457 378167988 26114092 361868828 437768697 812815629 535523466 10405770 833856523 195694122 652840761 515460863 754117850 1005731503 738155604 512942530 980767991 598053145 427769087 423457324 696634758 945662008 892929962 22762703 563591721 720297628 100041081 958254595 424718929 342481880 554999184 923075457 713523497 929865309 122041737 789506015 923695468 17324415 250524394 96870138 550626937 606052628 273917273 954724428 819378030 1038101595 719761539 501704205 932389799 781846952 179123969 1024642595 635315628 242059633 743416187 634352039 581743447 138595468 61275798 301851963 384491320 663638536 349851446 78931460 233121993 1000426930 683499929 757680723 915229233 613748191 78413183 763608528 294570941 23096064 743851802 73511973 529716920 305633872 1031690866 72050277 918260125 552589056 400902680 945560991 340122252 636282884 147178187 1059681395 89318263 951806732 72281910 185445149 670719947 1004565216 49711211 904454381 250532602 1026417610 73546066 498659353 167877960 960345650 692303245 429151012 484798515 204418350 196398515 904369039 942637837 675212844 858036862 319705028 473740626 19393266 678810143 423044391 99621471 112674410 209853764 701475964 1042626930 929146342 685259339 235714019 728971208 972688658 158709398 791313768 1060865530 769235648 448883147 756349257 922884128 926435884 645343906 811208870 833468212 361185121 339564422 475781721 940976959 274232736 612198167 387719212 567079914 884893428 781465242 339739651 409225833 513913601 277388913 507649975 366904751 819522509 684550391 454779453 31805130 37287485 857521284 1045865779 483987194 786831445 106328671 522038015 89009894 1053705241 942636568 676982907 111470988 489639975 266159565 794591786 865419497 514029971 935931487 706812777 513974715 481953617 370841517 1073341468 493231017 531727321 442306698 53648648 364341310 47663561 214671979 877645778 146959972 165452342 704396000 62981313 198261863 84243869 542043749 564892852 139371279 596956251 799122224 395882779 61051185 384424655 639446683 243144369 570970449 211583278 901270928 440212452 650600026 294661240 273766720 807668090 921161181 273700630 519464558 565924521 503940660 151793989 1010255954 15158726 139557596 148028259 516249253 890736476 869299911 303100753 73276044 40602031 731156322 725060299 172894798 400748055 793960938 723603355 177238894 503910823 367116061 892613221 643754845 602834085 45957331 71990752 839781232 1050638570 224251816 221706543 580815681 560366045 270245291 552430746 435100897 922523769 402905167 179560958 2662670 318790011 186871661 1006303236 746098838 730762736 216557305 593308656 870926800 525564123 830595003 946025052 69484940 359359119 255130707 1002646694 740964750 226923016 678696007 749173581 711431190 333724088 584462232 99629907 46497592 476876055 635018555 1050568175 409888902 44821134 99860844 799486990 308476135 216703760 876138459 462923417 454778185 503177946 49741552 802532865 386522898 261438812 560183359 282733785 874622821 807606784 545079959 562336820 320777260 792678547 614320641 90834901 277704017 993979786 454932100 465587251 480623691 1022115298 787082684 1016558570 692750984 607179262 740107724 764080661 284921075 816801406 678011939 3021618 336527244 461124144 215725758 588210664 838321570 177551367 1975771 943785173 1021094758 322224131 473581061 404720254 199116605 474365793 935296434 763915920 234805555 42277621 334850905 325992007 1019534688 26520170 539517372 582771949 129056265 188672120 81911863 743326457 1049635528 300703543 979015983 752913165 914328315 865879178 432627199 422939565 948435847 707110061 452706601 756860194 2325648 1056031471 313926035 824173544 474800829 1019452825 613581635 112238569 288779819 1023253932 95995441 231478341 258853975 154837764 267772081 866190968 908086189 300532628 890437873 489823519 788337869 803417646 999322141 572134125 288909884 73224445 435139600 55430558 1036883358 941914233 1036641822 666269674 782153300 231389922 1008511413 707684813 588126165 724950407 685205851 861537714 888541524 316064243 164759811 450652046 683869927 985952238 124048975 530243094 525912050 714313807 828350781 910554949 819991187 955104217 38657897 660253669 298312879 655068441 808719534 265887870 691931022 1022661252 458828311 79834019 615352323 404904373 265622901 355622159 698519560 596574303 673199012 357142244 170420503 323644139 610262906 1049484076 72684866 184047712 253384141 316935082 1029768955 31239838 1072434381 540228048 118333225 862981894 920354588 115723502 968242997 563896957 450123795 292577708 760701431 718588816 93387612 32734721 202283133 931899504 961299021 413499764 488937354 735940096 87576228 623151171 288975742 762228915 180461772 271535751 549469054 826089518 122429006 874909583 792244185 604628338 822815439 320571955 1018799158 58209145 377531529 22796435 319541373 883768047 687679356 957522438 535634333 650029251 361734520 96955583 205409321 121415364 354048844 508546682 897561161 59460015 874802059 670987869 105333206 484463415 475122609 345630747 116740348 170291883 367344960 569628129 494458884 507941885 1055250640 283443243 957720580 930451346 306560220 270659113 698813358 77829152 1063196049 552991602 522190377 187199160 29545052 991557740 684746166 528281017 914816373 554985756 585445694 127389757 167636154 942897487 1052020669 503670265 828687617 616741681 274479590 133284264 346687317 948796959 35082100 624434406 323220567 981120369 526434591 532670350 469331976 853553966 871489959 845869827 114664659 128162753 63399519 677879806 852737694 236477630 928318839 870538228 938909568 167360057 454430366 325604309 337324746 271796374 672232455 200864990 896166497 330502037 949383684 832535433 637896614 485644780 581889321 897482672 243300823 163240488 117296609 575788847 945106216 993416929 593595853 586590940 907036607 943372908 619342689 588640238 65739668 278983511 184926825 850557097 526393798 933838409 465857171 966191418 763323539 129328818 1041616992 225845722 1015087556 71644119 258850376 713467270 357717536 212054874 288736115 40909298 796390805 358575500 802976106 427976500 373245414 772662012 865110769 384987726 444090719 30081767 615737460 756816464 214218469 576762358 679997456 835215842 209942705 286736786 345833615 314992799 474425230 755268400 156079765 340977558 466685800 513982779 66086204 362774017 622558783 618853276 417111952 118475220 145465251 528199391 746157014 582589121 267985346 734726457 149116299 608243995 999799953 298905800 343303674 115584607 995165759 1055017835 841782626 947506383 515352333 236361015 406079136 101819794 188193405 457076193 982682228 65028179 997397446 49375177 429543592 193786056 675038969 830575585 295272864 525195797 956487842 377561724 1070463474 981420776 65909504 323945180 345390860 105629287 791648713 12023361 831992407 206725678 891584711 347459536 828823948 920973202 110064905 816919154 75584854 1001937704 823151078 924471436 781806013 856396179 493885963 298040616 104730717 724652143 945024804 297556566 301643249 495424000 890771438 440221228 106593919 142256842 758601991 416797373 796963747 112227705 215809085 433267846 354073692 989106879 626728869 188586715 362977929 1057929456 60467302 287445525 211916712 829986774 1016106383 397494717 57862010 280349241 654439708 1071468334 102357531 952766016 179981475 797878797 138289238 457308490 170465284 382950613 980912960 998660038 84950603 252526995 314475877 152210058 285761954 730751060 512260031 437213688 511059965 1003703590 192893183 168017492 27040009 625141479 166419277 137540306 21079282 745580036 533844328 80939091 171296271 776920396 35807400 459812895 641225725 717511748 602766712 96920273 700560085 948078999 155296303 971943970 222255917 1038719074 679367669 887141540 499556547 110460295 547702705 35453853 978111573 9286589 527203841 139208290 637605107 934348095 266961077 158134962 105981701 244342104 841055833 40629740 424207677 740914178 14932062 277567099 875378372 579054830 505179095 152707415 40972081 207600675 110188169 854583733 848918269 644854754 696012135 273399813 378786546 232442381 702349252 1063539289 546179039 686157454 545576474 1058092960 14622298 571564657 171658625 619022700 71656094 626428716 896938829 72533012 328467173 825037250 112909141 573872325 968487696 357126413 418424972 648273687 789395701 504824486 802495244 980253700 696940935 538328160 524824655 1049904012 372327762 37218817 869923397 331714267 511011065 888871081 1053233739 764798375 30623107 539123635 1029793156 1071542349 576906181 381078408 663282726 216672310 213563980 618913488 268716084 1019868289 11546710 835958275 998258676 358119037 647992261 159024606 540699764 487184535 353928750 997370285 82574227 1061775795 1028988157 545754993 936595517 358822042 718795115 751921326 441255909 378586234 339813450 865322127 817342065 502616191 872319554 217877622 1061280125 456655293 619892627 165665600 816303367 65197885 286125076 363515876 179740220 1058782175 121606741 332730689 788738464 875447012 679970047 53350335 867236633 584412072 129161636 587089666 347861391 70386264 252915662 861812633 455089120 530225970 698713639 261292572 903986550 326157404 422447689 181090371 176296374 632757707 446010389 664594374 526663366 710239171 325841589 285941734 151102645 1055771087 66762991 1017269744 222056898 112032672 697170647 34529251 681443889 679598139 254880373 178454394 700269796 611610982 211010785 987750848 993468372 850174495 993804914 227147479 776262904 741033876 786178932 1069469722 799288340 185946298 780487767 120348114 219819345 665978284 935980155 650894455 229079628 15803588 365871523 782691431 844432965 899550677 560368307 931100164 954514022 541785245 768747064 471846647 5301215 617438520 84690405 216449252 262401208 849240674 1025476402 211835038 213125455 369028319 724049237 192874826 183749908 336935507 364219367 589768118 669408908 280749575 470326013 677130041 907377915 42318351 797676754 378141860 338434301 296953994 1057942388 450560746 98873865 4385949 381151564 315411661 1006894089 144980575 32540772 519742068 639076936 247068560 154375673 981438894 69640883 668562585 430100990 559207793 650791854 868624661 633856587 694129618 973775278 685706974 1014992468 450681928 207877323 143912578 243994495 95097539 99900393 266014460 22962067 1037300047 683698639 819485636 429376224 188574622 643869280 50344269 935138 963407768 71386037 579193832 818771388 90040123 465826933 412314036 482149841 426880572 326233542 346480597 909155377 1055747867 547565814 553041933 599968864 805704830 31296963 264631791 621947242 382434866 46093694 135933686 291391919 731832480 370052672 422162571 183869407 644999514 66975385 824878577 735259521 79875648 945357112 386852412 546989869 372985121 890145070 290031490 80877606 101946534 461949557 665104821 882568667 585355325 405734613 892842593 940552613 805924810 981851801 231019044 656846656 130407846 356127772 833281711 169396131 647471925 1048570620 525191845 525562769 909347056 487698261 92483380 999490023 924864346 999676207 753816977 1038581481 520661082 755691357 161560054 677345102 79493950 464147226 403459663 1058655934 575744328 550520017 228413829 780438035 731025419 878070549 917878173 904360275 284606983 732869750 481505223 681532720 355716719 1067133262 460446322 926172677 658240425 654463708 495191397 215289972 35851652 859723453 670755170 163364616 184687752 937590281 290191928 1040502379 153314245 616890677 846586334 315495557 890176736 323014429 462255717 836200019 841449237 509250243 386375364 253720255 5211655 121909593 690984056 122082698 720496971 389632217 372144881 455521723 311538504 630990406 625476566 453163358 236962790 317881395 800884843 937726315 1017291778 361169797 412443859 284322642 355700634 32963967 93577748 551824858 437262606 932955162 221897439 629079274 722425319 726804002 48070480 883795711 1031416870 862270900 551077920 573261625 976258655 881260179 318015176 688906038 218905614 634443068 118415294 976256052 534539167 317045429 879514756 771309778 276304497 399131290 210182392 129137996 796231253 1014327293 789119570 95532458 327820343 619644808 556297525 550928821 127710454 426481441 3473901 331903053 730243292 784787634 697191639 356214245 605760114 587330597 239335765 729936813 425579244 44331767 859921595 545976599 913480218 668808758 323361967 692798853 833910190 141677448 711092057 4865260 355261945 582277643 620745803 488074041 360453309 931753437 859526524 212412490 541616932 816921101 263648062 482484820 392264415 665964621 573821822 378308384 46562340 542700637 910173416 1058513797 185054892 199328971 344894570 882797894 1039640886 772236805 740048416 1067323318 146138876 263641795 999398439 123683148 770350662 59137110 836812750 104389808 554666090 645996685 799521027 360705684 320414396 855306630 746395615 781197808 1037625844 988817305 358737198 376714712 297930745 221269401 47460530 300255444 852770609 335346697 957699390 112204728 414570234 520793304 528143834 984363111 749128245 235922021 356356251 1053364074 957437261 1019327066 151430912 99500349 655744635 63669811 56121486 1059133441 295224400 893580395 466485520 278687680 762943791 938070590 258117504 423171022 78407444 71911743 502370690 1017746036 379778098 1032433461 26118302 732128984 336969379 54309979 918654423 596468482 662582193 979362821 211530961 1025686982 973544381 14700732 219120575 865596317 788459952 126095260 1029401669 966726595 813422443 808110353 122954069 853655403 670074268 38701605 632687392 945409846 985023219 1065072733 384875461 68891673 480381742 107820158 445338734 867059721 603220431 736986208 260052726 405865106 24168368 936869352 414934926 958517370 1031461656 93609242 168878510 659713312 54364903 421095354 734195604 926167463 1037177083 846444368 527448653 714227393 733113938 374613165 363618096 324655710 168517188 1055437112 139182458 475311519 1008441203 668185788 194360764 571192374 16176573 38663111 1007103389 709933356 667945814 538113950 289591697 90632143 5360967 937047278 958906078 820719837 1058219640 70326769 735324679 741163646 994054275 916302430 290575946 768838761 903035733 265246256 1052511761 693005351 75324746 977936687 45671882 882855170 275513321 721552043 317811260 734464473 928185252 358289091 680209436 871876445 606134210 203598640 1013526523 887022918 556722831 951089116 162528514 257378786 778786243 697094225 145305138 566861708 361212559 560064533 17115333 28715028 187037525 683056775 10948097 576009700 607351047 19976458 378673997 360191948 207635696 424170433 610135207 1014769355 564089907 752386560 365816029 383034784 1055778406 673932363 81636978 580898644 17696105 640026652 988049498 579774071 213839488 720607453 395293311 1032902973 265750085 94946011 920508748 208697589 415229714 365907021 448754807 23078015 256687536 422231660 775146942 381613452 853700315 402120830 277851742 798603200 1007513080 604481231 395101633 60397583 618416270 515571763 39398945 1048472710 1072947686 430178299 763052033 691944873 851420300 972999274 1001306394 504122661 71089577 875248989 618095699 257779354 923448020 234015071 984964501 460687577 173733607 751223244 875994479 1052203165 241783690 811955182 778689310 1000788794 646312783 448869621 686334625 683122786 320580300 616684225 915041041 284975001 414206304 844951437 640843616 136821134 744487215 451922482 99212585 982821630 318010298 998766753 810602234 470768105 715073691 926966339 508127860 563927854 631984693 689964387 770617041 898686011 822469313 626406928 48120028 43976845 658286466 29882006 877104155 822085786 620189583 216926571 900635584 1007928026 457565560 294152618 996959977 37388123 1038075828 854060568 382612747 96543990 407752338 829994295 724402995 427400163 851542301 1071870837 718534006 174311696 977881274 834833712 542439374 580243925 477061875 344873000 816084688 1015236038 854181053 833082105 482920698 495619751 801608706 915477707 169811982 311666885 988515978 844278129 818405301 354997398 397739893 207620183 237812062 531182460 139851059 65535741 258431915 95044476 563272683 412662277 696646299 96458809 238336531 938040586 557870815 110861455 947108646 808778785 732936686 927166800 331882021 907350473 98893397 44881354 554098910 239709789 589728858 710502472 639880936 1022038719 451459966 721373569 501288340 704859742 168069400 589403331 70841879 992598823 817542803 1022552037 866809038 311414312 688953056 843078915 1047393350 735971499 812182705 597938447 512428491 816499736 673525147 556288406 55258912 733898366 885251894 724451949 433412296 954246291 641630607 255847528 418823640 999002602 860992245 123729577 197478847 848516393 844772481 713372793 830620418 805233009 531787701 1050198094 923279583 139729273 632502106 1021916854 168006133 1018039839 551014328 548683012 323986360 972457454 941262750 1019089800 952864891 469199376 790640939 332501042 946244821 164029863 139749310 732609046 143192530 350333261 670885343 3674389 733831513 101805546 864129676 580984479 335975367 598544840 887411655 418648568 766977240 468480666 560631368 808440517 964322379 736349772 238810613 692590867 541807401 848139799 424190082 326782313 652803927 369856343 770059851 1014574060 72006213 573208762 648592049 859642942 966828804 30727529 420382216 781531169 753178544 119881868 44396718 707334128 475183844 240324912 103020486 180774891 511115239 427655812 61506939 998897118 188347941 749891378 547653107 194937898 420499177 532066030 512693370 890094452 790419216 267583010 63004934 318236188 350116398 766995907 547238369 996705553 463389810 858288716 632743183 341337625 1002418729 136707287 435689851 833390231 267286139 279684871 556510178 654710416 873849791 749097360 535243766 24390789 961681831 394148746 447142091 101147421 200782656 974581518 831198300 539897143 696112034 1048333094 1003659874 723326930 133819773 834178621 66372904 81757772 358869235 966313010 345108513 285954639 238372071 973990627 462596590 590248024 960994247 888405318 611752848 245098992 697652284 855989264 899860784 338417900 207620388 61381280 650215609 720649266 759401644 788903360 379317100 728975750 658744034 512693241 526910950 968342660 844111330 618813097 147972200 782863424 207678350 388976234 1039867125 219527905 87764445 345545662 541432803 234803345 45703159 805185511 620619309 307615414 366887655 573054788 265325296 558765832 216273770 240350086 257825234 234422218 241296659 11992591 826596744 112484109 381643598 742972805 1012928151 855542806 241916773 669931661 691348793 648747229 974123308 708618766 569689413 1018653808 312524594 74955742 87852793 701249342 57871234 192582216 794029380 666540646 307349985 781440921 612559030 138416733 701224408 673552469 456065828 161081674 906623153 585020807 988011215 691583132 761565195 715650144 494647362 245389993 296562984 942056902 1056912234 579522679 581207671 295603915 786049569 335558563 640967838 479150724 345414187 969163898 106557401 554132389 734947411 188015511 533629674 95391089 898814419 331506755 922321051 558964699 705581744 828366852 162518169 281509259 985719166 9544258 86637125 904139409 948727756 222204709 464112279 880813962 559996396 314788328 481095605 418722501 77804786 2976569 793721791 933927431 219440950 585575286 907626295 603489234 288265770 525798367 389677164 622395458 1028820733 488159861 285950404 594702668 176811375 755830201 35839756 369476070 360430313 348769872 939086053 682850157 833069405 13309653 585036944 760644361 288858703 10176302 373789415 935191195 30198061 77582982 900289853 466839795 832925863 538560620 456387985 628942875 710451006 802932035 154508514 513539939 240077308 530157392 36261969 74952320 251040013 274248664 220086885 700707427 26870137 329353709 894533818 423169511 212219333 167476731 989477691 578307660 245828024 459513276 56917494 377533706 712791211 638503957 961133398 74505992 550852987 129006801 50596448 919527519 992151883 941389347 925410555 1034032176 634357849 753560561 202823073 888025075 670693150 442783342 235171656 603370781 1014797556 923496664 949002601 702406 954493047 559026580 114449297 36020768 295138356 476796122 947280703 609110544 50245059 951357342 25890466 192281140 240808883 795618913 612403706 118403255 568502055 604299412 877003910 777019131 304409030 716837708 971131957 12428350 382277463 496987111 323662020 937194981 530071009 599826743 30951097 334854522 1001998714 387778775 199168366 752548759 584520806 406709283 1031964783 236549898 169382236 749191718 324527219 52110381 592004992 257375532 456448223 323324732 420367663 748397866 846106573 396045044 564064828 1010213071 214026596 1057250931 958368821 658598111 464361408 995263741 423908216 342118951 409819999 481083122 551084424 348165663 1039899068 890174650 28688254 281630714 288676298 766703932 771987358 1069593801 518993105 261999941 833067916 69203141 475465999 383421061 984142847 1003313985 197263444 857140407 322723244 638370899 780374551 482606325 777596099 770828609 32541504 140553835 59026371 203392398 164097947 822382921 818303303 208526069 618222672 344549392 709951702 497792344 962921975 608153521 220589037 434281653 257635275 630841293 368042187 401999827 725679810 630917931 384883107 666601789 408496508 872595689 38868514 980160493 500184039 787260899 1003021442 598992122 884656281 50995755 392673467 768772821 887077350 479181340 894679942 614784511 28818116 576341749 419835243 11856392 252482391 126059589 193224721 231491525 160846854 661837124 26759677 432909610 910416399 697859128 653709655 937422593 715306012 870227181 10789088 346141740 355206816 497931238 795910748 823277294 592717859 633953526 832109443 727003026 402563720 198947428 268892694 797228438 596479515 277876435 149139259 483035626 1070221947 842070635 287470751 746316568 24829066 912147422 937185347 125771948 207663694 716616902 225061439 756468593 181369551 798286394 54840057 808560951 603335070 381255624 374040462 483595964 100756047 647333209 756077067 306766224 545131450 150262254 340129000 987236062 295170794 469803855 827318592 476178155 763947122 649177648 659644968 545510859 973329135 72171865 682823339 312349920 908217734 711351105 1038457476 480058911 60766940 613785792 612499990 1034379888 865067339 161342399 693835123 810343931 684455469 755398043 470562269 240850428 453980275 844312438 113889427 971770769 1001828184 406025037 464449168 1057160056 205316236 565739560 164549991 854428932 919912674 749816800 199802987 979315982 465333040 794529605 647370495 636009135 982727255 570532342 29373128 365464119 401645361 812494486 738997358 152002136 538895419 574460374 188342827 842663252 330679673 589342913 277317626 96176065 700733635 404227776 667456777 684735283 961910168 1057169686 1029746069 317203331 10752172 40202712 372308845 269947416 316299877 1028202515 496573692 754073698 965811868 766839825 642149468 264499558 1038902749 780201627 509557176 1020724916 94287715 786048477 564827483 851697512 704935663 623954779 534992992 768866972 157997159 695665802 844823869 1014001766 1011022659 978087012 897781340 198454213 172657673 926473004 659879423 742010160 421602780 546612147 365306848 389164226 389388615 275209371 185525629 636939777 984912087 325460906 459501751 339693873 736993611 43093637 290020726 418619953 336173266 788442528 125935753 1066381475 880212597 39293690 705406779 472885799 959609206 582496161 90137269 957900309 750841332 998058275 285407030 176123862 403191281 1005519008 308054240 357462458 655898531 319704833 275599600 362386120 1005084623 689304532 1035671290 37209464 454861887 773265590 146635444 648122055 289156804 380511644 215505784 127194921 236397191 135614269 139699324 134813854 323909551 244679968 128681611 547092356 537226263 343067954 321219108 392781986 149077855 536605582 263677174 502937869 832812851 37822699 283081044 1069541427 760425789 135908606 607500204 1038694016 877967847 795382234 901377434 549392953 109753234 892051835 171379056 322383797 482497726 486419567 496059437 557338943 870370405 540782462 871711001 39923693 189124227 679014886 461241207 700278053 886034980 276430771 1024659631 125957061 474622992 45422194 881973501 409810816 799740479 919898413 481804864 481695691 929011089 740867219 86741385 202876705 208508056 801921210 668823996 1018197477 773858387 69633276 96668601 1029279397 1037533517 528388458 656919903 605337291 647740778 475526350 174778620 317029389 171778954 559448815 576918523 299061729 491238705 151325904 419740622 469217519 948882006 630764695 40846610 717078620 1024907923 588333592 186526152 790655833 818321301 713575381 320682988 956523130 264548580 406284252 175778795 580056408 226673176 1044786088 768445617 617819840 427199608 23663776 124333829 423252315 302456628 993555098 749723620 873765845 139609678 438246231 498231634 978645939 842120682 262513839 622387437 706233270 951624066 319422470 594811136 477428142 709897204 353988521 1060253872 870348470 286393651 549453343 321856608 544784923 573136498 417838599 523190378 1061476279 457996957 448535305 744022342 629486911 388869340 144745543 558985897 931305938 878072225 439213611 276985460 517288528 932433118 952617765 442685533 345761819 72222635 656669504 850520696 652764859 787346496 26944551 681949036 625178098 911544239 242254461 474054547 1070114687 671763570 959474412 954325787 224165183 211297918 323808024 752656230 800437153 422688824 955280627 964593462 957258905 603046269 106514637 378772486 152759715 502146791 946903053 28761768 442887847 778780989 658313721 1016140173 793394216 514175564 3459161 299641967 801676499 448081184 128276310 82029729 208820151 863284810 189890233 709117826 275998870 438464390 94799170 866247784 949876092 1003303613 741354480 1014025508 1066666853 15947129 287188563 791847875 141662080 569450772 971516222 768165950 319312382 495351249 626475204 730281217 992906973 555119332 924371147 777409426 754634960 847940007 177461727 642050916 830853966 28745913 148269365 429446205 891115146 292276212 817087666 93029440 514016011 460622167 1025892850 262727026 622258096 39143340 157297691 886282903 493173927 642158317 1057826280 15367503 614003917 709242467 317715663 446713516 740921226 439286125 679256410 344053574 396319325 649606691 39400620 598457589 26559691 801483733 281749531 131409295 250259203 518055480 326620860 761830562 167004905 899036271 796941951 740789713 837369647 998118148 28509885 874958588 194573879 18153291 482974549 375077012 75106203 1015819663 3819891 743444255 291387198 898299729 502734657 878799 386913227 178052475 339105921 429167935 77933030 580129544 949856702 348797617 311416240 633909246 96855270 12470016 356891864 403177227 280348801 750778659 309696342 1025919106 722125720 753675432 329334367 247643255 673027335 235344468 17841474 227636896 974090419 277907451 781830171 85743405 961846252 1062478690 851856270 195865943 357395575 942712279 17025903 905527398 46039473 261812383 1045018957 814067548 248517072 870019839 721895238 59973298 432254514 40097146 93077911 194596894 1032437828 552774936 599354119 948503448 781626516 200773957 179653916 892350505 197199019 825075626 485512415 140346682 480563292 52318397 878532967 415628677 971261428 401993785 702382025 240528469 901486157 94502179 313037052 287815230 392848040 754700924 824153292 352867392 38218760 373242740 905572024 107353471 993616146 983945122 262885769 726894139 821267242 325343816 742842391 242610092 938943984 5935694 637563185 400447611 932919055 194114012 142735486 607132137 23285268 958241292 81176660 275270855 594568197 733763961 549085637 82030220 962860539 901416660 54419181 848267237 866658992 864209863 1070509699 762602417 317395558 890558111 744583857 1070741615 62310773 950519463 730475869 191493271 488325724 255713325 53047026 668811436 562192572 784619552 883333108 621443689 394777247 291850970 856424889 1016524956 90566704 66964241 112743168 861087289 1073735790 913659814 191687966 316888266 1058624829 92175487 446077685 38800641 77113533 397813075 288869582 731021233 166643551 381718653 643739367 219533637 842820665 439590729 721078503 823735760 226657280 824908804 212128390 749725113 134919473 398869186 196464409 789118106 804181776 18718942 660224759 767706220 895609044 309514386 1069478273 805273320 610083513 385000009 584236857 92083169 909597180 84298525 424427920 1023506413 550191133 127436445 517718223 454714282 19183119 170349427 506854714 684246154 555491503 917441463 538202572 242407465 745319588 120017917 908999584 947508440 831125183 1068420291 245308140 466783104 382379927 336312478 1053164587 489630121 794965216 155736611 729427566 1003600283 572608863 594524800 156806700 809085582 119678119 365393455 968374233 140892266 241856194 553559156 842971870 772944290 154952363 223589543 651376030 1055337292 591263615 690995187 989941562 473907381 987931766 169164645 314467868 1069598679 414290077 158676209 609533697 709623842 740863738 652324886 6201638 786375466 372633516 426064163 180050915 1029098580 360863143 746843243 900990698 879852252 895110881 346917121 843677469 1059536393 261786612 627275850 923717109 178552572 182432484 843857911 870129432 986492440 274264970 699272660 919181960 507593675 549457091 404276997 1061323146 625492543 387688305 10409844 946753361 236586157 27204210 934339765 198475364 506078359 1034855665 911570660 314146155 430332473 9313004 822749886 881643998 1060166012 372476951 564413469 525646287 50559956 1042112096 593773893 414262453 1045662688 497446808 459942713 19237651 703097723 8105141 84930849 963025796 926744306 584798992 793979309 1031162553 808634256 668641153 1032796451 332943583 542984814 29941912 796471780 452959584 963473633 796347541 135592117 651353470 851738049 782925803 999351059 94662629 993752212 985335187 664845169 619219287 881980368 645995569 1060116791 163016894 582429117 13327611 27692087 88376450 895501201 641091650 665998058 1069277531 944733591 252282305 1071361272 235982294 255060592 738183925 636219984 768183234 80960217 554914238 241991848 83753105 478585859 774675876 1046697899 482717909 562125715 431731502 720570829 187773091 983673018 997892639 897354440 157203351 437309375 46540325 664949581 491193798 555253183 737608264 340005914 135393409 302850706 412480931 117632360 697508063 823402260 67345996 598833143 674328626 3419845 582980852 40599309 311686271 490166621 191153817 908722915 840127937 371187400 554806422 683669583 388838099 719785108 31653533 101064772 511976906 529550995 831506841 773136116 564640134 256316841 169226494 708320228 551793810 659998899 816056714 374484640 630040499 298197832 193286804 777682384 411321016 977114223 748314702 931034060 182042152 802407388 299630716 180282048 829062800 85484214 593620481 1049692484 1015866332 571649443 399554372 169346436 45109459 329330969 767172257 738421315 241940318 334769745 181658317 157697164 580341759 766892269 717350489 682734112 1033450471 874642897 477097649 1058232342 291036150 573132010 18859620 921885409 23960242 468535481 446567403 1029806851 459079054 315755498 579407710 322548277 996076433 842089709 139823384 547396616 847421404 341262811 772643999 153148402 65978476 679279241 67781186 46076076 948459880 709087304 460615030 674427421 616764625 150026034 1011721883 290839929 277747559 529879281 131532726 609908476 240051608 481283307 396435118 719730495 563550943 240229028 58447318 70582953 574724696 625958570 523075583 122050178 775235162 423657434 24026348 953326492 1071945597 759416275 37047884 1056391046 302757280 940553220 951068030 705864106 88193379 478226277 81641421 54448506 684447953 831911720 194605039 564743131 941299836 33552535 127482350 372837934 968651887 908755854 585399646 556404946 242052961 818008735 653854530 564320766 523890569 178514786 1033736930 1024459203 1053812016 308620362 383521451 795352535 493724384 869413741 1037745571 243738192 26387089 838908643 963467986 852236685 824607989 138420189 192033220 820920683 615843794 500937250 903090409 841822067 887059191 249503390 89460375 309178345 554171567 1041403435 961775195 827350229 640794466 837742962 507702265 641809992 727395204 1055029927 887022618 1033139281 321238144 771846530 349572939 613598022 917058420 497562857 161553963 825901560 768243035 906045141 34879758 645950257 508271034 719809118 181697754 243619845 514113863 782348180 248884581 707182514 325875412 524816549 318991451 967763411 566405131 130661723 448767002 1069184078 497297569 111173308 889923540 1021827361 1060658131 1036751866 488470081 400925513 269284112 103818830 291477920 669370892 240934950 285516365 299652082 654288825 431308336 1008272272 786311516 620674366 138939583 96309767 54965026 477460576 86648482 71842435 294150323 509612000 284596326 668037549 466194976 902568382 441844729 604811909 468404623 539043249 224202915 498986400 205835766 118064941 1072758110 717232799 994046570 367000076 63831964 441246061 833578920 903403339 554724385 910003089 815532050 990226938 124112134 204043660 15188621 130604609 215148151 443044481 936892095 570297969 53672795 181764893 868376639 963937774 473140216 371725561 760073289 806704190 208931853 917919830 685035341 350973079 571437983 600463078 531230056 317047141 592901842 668629086 879896458 289669202 438655170 955642237 804202055 1025679563 565016901 479625656 839663144 840078425 463243636 648059292 509543362 556757959 666371677 116512716 101750804 1062705226 259242646 361224677 944118996 950633927 975074185 84693495 540998622 341187298 52583920 374694879 980264877 206814364 453064629 166462570 765077211 613572887 536249642 925817764 740343949 962169022 972170141 649343493 655791750 1050307661 29688918 38956661 675801773 167547206 221385647 766136682 45905330 578986013 1059041017 363190010 604839493 652210988 1029795211 143749363 99245142 897011181 406507303 983937157 318307897 794352976 82085572 97830716 125365956 793409040 62367507 675539492 768074259 407786721 854664768 569189389 85324040 760778738 887923696 683337815 801698829 302926244 108986884 558061395 300763502 464246705 634985057 96845754 595795613 141392518 14867262 148217044 354188379 951302938 132020896 396238326 196324536 141752268 798688961 520853921 203980121 810342271 353262021 110212307 1005750398 550393044 928321113 578162588 897764517 1005640973 815625972 447387560 96121754 384551870 431943360 597343634 965424659 204210825 150695628 172804104 217076353 761659788 392886014 317422190 1053320765 18986649 654153249 969750568 492023400 509681092 632254260 1029250961 650369107 310602700 767830685 500880760 906684825 526188889 27759523 1049986962 96592106 461650878 326524871 646626647 583149670 129582637 359909119 269046728 380850425 94266453 677421743 1058299462 693862538 681553465 190121993 993609093 46927827 991721197 167961163 954359072 49262845 334551160 846491877 1062013526 965547096 19654662 1046764422 420232472 619061813 236725666 755371792 217589020 361778042 630345684 671861290 572983295 407724017 328634324 916716066 792154032 240188123 757523768 158210915 695290558 487660544 1051565810 632190439 828556679 641792197 794144460 828949336 893120668 308476357 193918986 64697786 31192059 978523339 579348935 708191307 128504227 76350681 43612187 630150211 386386422 249931039 686371123 147925008 108247595 918947509 563685766 969830824 778122361 52641665 820934745 949487438 838543496 491335784 241964806 566660874 1010413839 14735505 684154790 545501884 570896663 909355198 436418561 944462121 244907 731899850 719376608 724796818 54379280 614354863 14913972 297912215 9869489 978750442 886902305 291265588 843323525 875363358 689528903 970217771 1059594442 424545507 356725741 287752243 379382728 757945020 569862202 515774163 985918918 144222213 242210011 566921212 500066760 940616240 441843728 202041546 106416628 912284177 104124436 464798576 985141200 153693493 952284949 718552596 954186427 624259543 179810906 866237774 95617288 1021343710 988605777 532043889 752822125 697327637 940217334 292392881 910487470 657296077 547481602 24574179 148592574 49769754 765298576 559934888 561814491 977432143 372089227 310631286 475595189 408648925 33909911 176276639 146052768 1048895168 1036753542 1053696535 352721456 861408387 669527373 153102466 81533775 484439078 197236017 721251106 753449850 588564539 573635808 179733535 122866838 178767577 43536707 300823115 104125760 137220636 942645066 376161378 675053633 1000194104 645581691 996686902 113167587 435689372 1036956461 293994174 161264942 1069194855 1041929824 739893545 390462384 82651544 583948306 236659757 968006463 617045583 258063942 351801688 1029123580 303544346 342800107 61105111 724090361 434493999 620916002 353700955 224748031 439130140 720825349 740737257 349883019 456782237 445165355 544848604 707549050 671235046 325588032 264371049 595454771 368477670 11534535 101493278 462594174 462843299 612248783 1058121581 449714755 981951647 472135743 706420305 292453995 1008251820 790094971 361544893 453581794 127382210 327086687 130610617 868723473 256881805 971122091 180703753 524342776 875760613 732061758 608659907 332404807 494484283 162313585 995582036 942753577 15526703 525245219 272870377 558201403 155186012 531835087 151292495 573984052 787255168 419091636 4866086 906594915 328872729 320608571 403144013 168749658 320048026 43994897 739892043 1030485378 960991749 637410912 52835654 357167809 17437209 744615910 481738442 1014385596 541287766 536668890 655134485 276998127 861400545 366044997 1052355771 195555510 698073057 229671116 334780765 304837864 909824305 499498439 447648694 399417556 472025901 283394037 462570741 388115986 843081489 235734406 218634830 202822827 1023351648 475321146 463810614 806392037 627354423 998670310 920188807 415782217 208896043 246408368 349476527 352689996 220918317 848452475 652223318 191707320 390808281 307584795 699313919 625919329 769183896 767648258 564212378 112069738 533790797 991380662 834127129 962106066 48680614 17138777 13622540 353908498 181900764 93892695 274383703 595440306 376980055 837496487 202667545 438229091 870304881 523250807 644678099 293216827 877731067 479275862 311417969 749447295 1064471859 1053770330 696204706 215454603 784288661 529265962 503601763 900994885 87567694 999750708 433712534 475697659 260739530 1052595911 692113913 190158354 441471557 124906823 641685392 910692864 731257664 530754160 774218953 73578721 78011799 681597255 611676753 9520441 151705310 827243882 643781961 476464215 892890555 156446607 8074172 128787101 263851138 219536635 121852786 504341031 450718798 108143893 881351777 374920269 425339818 424376471 693170042 6653697 879706163 49297817 757789726 832843379 792566800 971688431 145626177 709897507 794916093 289752619 1042062643 1031928763 604885089 321611305 775720384 12525621 486358243 45571419 685078453 239748552 1066492927 617883220 780057496 852446221 200796512 1053304296 436163279 477657252 909749294 519853557 341502337 474325948 136115145 710183519 453752316 668011561 945617571 571354748 535439899 651877838 216658837 90024483 1049724582 920239080 103465404 921758191 316195165 217660822 516497230 231756200 263187990 284874826 500495882 448100273 939262098 925890342 581279185 43417344 322095025 166333672 82047867 539819416 669506536 298441487 19027313 214949257 146131328 291582433 598564445 79828065 90563815 153656550 680729657 738348490 328877212 430528434 178236034 162525026 571590782 1068144706 491360582 618632304 717236098 75861347 1008915909 615760387 443059349 511569581 507210247 229362505 1065097948 798838964 782338501 164938430 573990010 338994180 748071663 611801817 764722359 415057185 742512539 812710426 657226770 747873477 29222974 20414271 558932919 288602392 479720598 652822457 9014951 145116853 1020545773 515279892 214421579 554462287 405264461 77697346 85704316 792949651 552286103 365426981 90182696 376887400 465801498 1030554618 330215637 451932891 383982938 910305949 930954577 238018746 257316886 553021139 1068944254 397660764 526673360 88332700 1003193714 589732205 767350617 556463849 606143084 231923605 357827504 416350734 344877942 305857220 175984144 176343016 628459881 100521598 983151703 884641393 888075760 405870678 750449700 1047345603 79634080 666278374 914801387 545609739 75917659 343945942 636822221 713455407 613209279 275668314 212558456 1009596156 647287412 956799641 300427661 780933658 353223012 248914372 416940221 399296648 938929872 431045579 242079208 204339973 154699137 338798191 862451173 39088660 952996800 216132729 539788761 660791518 154228545 226140404 59382112 116477534 475473457 945515471 530679137 134570761 647343343 797299212 122114538 1040185092 14815964 460636351 105155300 1051952210 629108248 445929692 795262456 711320522 517603749 729067958 903073779 165764517 253955279 343388880 440530360 480269932 290933718 322067064 866964807 422249692 118400033 112273375 945043743 1062124594 372535517 569687388 308130673 124509999 709092413 514156428 678687536 667743216 612912676 969858682 763783494 152338397 293370403 68467381 409293551 844474623 624784299 1058275416 427572443 1039094471 280986071 849159137 537607431 378132714 224427353 620265815 411434553 466614601 999744126 650376573 30148627 892797918 505955582 775177890 846663071 631425955 632556716 716973230 123367699 994126237 728524498 391582906 994887177 457814678 690516729 984998737 119830886 930863814 508484546 359057705 862320913 967352163 773525558 691708254 645020002 1013744661 139313850 1072369263 109677881 755538909 677468803 675635043 745755673 783102202 663080503 134667178 72832895 953820198 230781273 319154913 619787852 312999843 994058023 360122077 587267686 846605400 733526324 384859903 351861470 939237210 872807968 343166352 264554886 178042666 103813611 70884215 1009858367 758328494 546494361 386348142 942607822 79745506 22472478 928411429 90948922 712109912 900750893 798780037 675467766 721093059 635950567 176925235 415409160 21299589 584973939 246813303 500273493 562476092 496380872 88644290 1022112424 843665088 745948158 317267544 166704802 29113537 702272042 121978401 448285978 32976827 115579686 967342360 177464082 77219430 616691953 164702147 967211665 719021899 517511078 502648766 126012728 954439288 444567793 315539000 201179833 392127443 463761190 218442235 771808299 528613151 931740818 820237023 266036814 531341617 228136805 582904165 591388373 245228139 751783512 331209223 445214945 131640733 262613180 54820770 788769303 61412001 893992338 462660756 360421711 179540598 403049734 82185977 376748901 933730861 829001454 234903407 389880183 223143140 213067004 110270174 16402523 473123813 219110351 1038643876 568228972 803456081 442109858 374656627 574326933 838954459 192593837 829962142 245871240 304241690 640867913 36374080 36710398 50419254 574635491 625627297 646547620 519963447 181516231 890363163 352228146 366201345 116537185 378738194 415408864 542249953 654359190 127052532 841799409 796889732 933236379 526454422 127500854 320955197 9502419 135699405 188350587 405386298 921488504 429378817 941662970 1009760768 486068789 650966182 355733052 841800118 138512841 561935728 621282572 442645870 600323273 1063387055 290399497 950709345 680726077 976350527 1060134036 233481784 241045584 276568242 565113930 437283271 599289461 625487818 316296693 425798410 367894717 737414959 540735869 747951528 859062601 387974524 548568399 78581425 1012583842 8572319 553684832 971340228 54089424 18067911 643080686 869685803 451373962 509867735 399449447 135554139 160191708 722352652 10867484 103555804 405993315 44179682 1002900343 195043541 635075397 186126614 353534093 1021586989 945432881 118510452 519714281 242670207 81812026 434066492 895722403 112903269 953560978 319763653 629602087 772350595 710987792 743369049 196629425 907246543 700774146 497321009 252548491 1021691137 968046950 503273079 5394832 383292151 814246367 272513965 631552049 198253733 955390009 913190498 951521215 699661737 803445737 97307110 509996254 453987498 204030232 998555773 238521341 1073664085 412785161 63115552 836512376 233263795 702643846 486379597 783152574 389592559 791213649 34326343 522371015 865182654 963167450 973172136 807111504 988993242 178720808 388494028 471089087 580343726 827747559 335842020 197744437 701207839 197236518 713082551 243331758 658934222 822732994 69557379 514123914 556746291 657060984 573074923 658091057 302016119 443646038 478377137 462833731 30949467 151117960 484957692 110490222 94851834 836979647 310564424 248919805 33689196 775935040 871625452 695740300 323958730 1061112612 431531997 134562499 710979269 257253067 28891398 550698531 1065658640 163146024 271842169 852893614 100297395 891436638 673911047 48779135 361471816 188955254 548092325 875375295 1058265991 378579791 642579558 661982346 460270733 565389580 43572594 268487664 392822671 785148385 473231113 13860051 642755254 92593031 61083978 359391523 701648128 112649070 480735133 240295909 931501536 292362518 931724075 628053821 472550225 792027490 110054435 930299007 1015892097 197879623 88157388 516022941 887131803 105519134 1029535276 434583667 590631311 878610245 96249292 496680556 1028104148 1034528017 62553326 128622906 953189977 490945894 300433589 688010252 125282643 575593571 52758817 311579148 248923776 980426282 1030338280 52884051 539228184 402948458 603929668 146381148 486075008 380954108 856661244 825399933 66529930 185332117 629220049 90410256 738760621 16001854 366085568 237264704 183742571 812751252 27882051 973247851 347918034 271657055 219311851 228396409 885607727 270467921 827679597 604404411 1062183608 859451432 416761418 229808598 772048218 355646228 126544371 757157236 402405686 269284618 412600127 824830980 1027258011 150037918 665196452 863403236 367453757 785055494 548213065 678152197 383914486 76957731 986236881 791810702 821859915 756298203 777238917 546050780 923749755 1034339196 353774729 82958891 616579771 885695808 485056599 581696225 1048236317 162370458 1020173377 682188274 464988504 150793781 190397710 512446541 125545675 742643804 111795077 1023255409 1051700053 171479253 745261540 736832488 26159553 980380713 199950313 268937218 76137650 714875463 719903457 12568232 502562637 399318002 187237275 281629584 391035899 673820023 263909055 149572215 594151192 76118814 209905739 1029269453 605391288 346152842 54523106 848548179 712741946 662794997 471077895 735693427 243086110 22277201 33115195 931083338 584192339 16680824 82476009 342828291 337552963 188680925 1021430295 1038747414 820294596 71632911 645968077 342252273 757266256 43142417 39671088 836191681 93626671 928156690 362960002 709162791 696669328 1049735053 802582287 362698589 24720498 419127166 105412685 256917916 557742624 798871747 515969013 191911213 194519786 525269739 948016323 1030457687 996552896 182309376 1048260237 451740259 21093641 441011133 912344686 806086553 807508355 598119237 1071442671 603517232 253887934 461567990 851081741 860370416 977690436 127803108 983183217 697381031 747440526 178765027 178586910 970020843 314893449 340326497 89557716 431625626 300531705 534671433 719956652 414969888 809053341 722426092 55974133 1712819 604435839 385615564 288533238 494767987 95608761 948267701 573152815 1023074060 764363263 820522485 403201397 951628425 100482716 14914672 535786609 210996371 946059949 520678096 1040419725 727195835 440942208 83592100 865866829 387358755 87456879 1031583144 69616175 22208812 992961007 783735435 400903243 968374376 53181220 356330583 706625816 36826709 469797216 296999620 379047805 199823129 577737003 82482749 913345867 283655944 752284759 687024667 115284128 367232330 974399998 76866354 904688558 445064722 104531571 635892576 926448571 822697562 1049328583 694472551 760272816 631327186 1030130078 789038913 2033772 1072727513 696670441 98483999 309998501 601826432 969705235 527636468 358187014 1053239341 199663318 156090030 1006856137 882063247 99716523 654052431 146385906 663584810 708758134 632989506 175397512 124671226 143772055 956697408 427599391 76422372 89104427 68697729 316302169 608541812 103027720 335713353 794566103 967409644 260620444 551260822 1065673197 199823500 97769836 521683776 558362936 822226787 321534872 14840200 660475326 1009198470 358861247 991583308 749927231 164958457 465071031 114611838 898684583 517292693 543107141 305668155 516683380 254696628 230216522 345808162 573843750 261265862 895600458 330619655 148995893 682829346 918708584 455502467 182236252 259237868 422362383 449146295 925982239 651917566 531810102 593429401 291705026 992892772 1002046744 279651344 399715569 797801249 1028451042 255647031 794379854 4748640 853375525 878157329 351689611 669332781 1050651512 148483466 197508847 275100617 698873900 741525909 245408200 885294410 70895055 444047616 622146823 127331562 996035475 425707069 890449842 228671979 449006829 18445582 1001732619 542331978 923804484 110721443 963872663 108564409 754999185 793091048 755247716 1010835635 512074074 186321851 435543253 1022973240 359884026 100667536 838523910 804315337 705250321 224074878 808302279 294466062 1068934369 24210290 820347015 1034952125 752777076 348438350 641901667 318027006 288269854 436024047 54790690 253520398 33542610 387704034 805805449 325109461 357715262 899906155 838078422 62609243 923958893 65310382 663809904 382631980 440851223 319665320 886780488 99707507 233411098 1023793824 285140758 1000887232 716112073 105100507 201611899 786334206 74698291 794333381 127060742 724539071 918401464 495768816 548936510 29118576 429731815 417513491 521389970 836219167 228436366 996187849 595370929 215751588 254033003 482048811 121719116 165229497 386834033 134596166 326789800 82245063 9726911 872930998 446492066 912270225 695522512 879488879 369670894 431675791 767769365 306447369 14338581 975876467 268043203 271397300 943226188 820661236 1042323588 655092127 668281427 826271367 452725017 1035486835 791853783 477407733 284574619 518324043 845273204 909234086 164143608 85136240 744734515 717728276 621139529 56178439 455881134 822091424 480386051 177743891 988227786 592982338 165258683 594960400 316999996 709105681 968129515 978457637 45836702 960050283 83064707 382951299 33377135 411541588 385584166 1006536233 54699466 414693792 820547343 122925471 372798933 550514274 1015280180 374946110 927612176 246945843 711956595 234473050 389587697 159909779 670736442 133049705 242651166 724207641 521891862 699605654 218449820 381790363 560656526 528469092 359385446 236366960 194989870 1032874237 348443677 622603316 299731222 142856536 71931259 608935526 17422507 8681255 964823507 334881009 1051405460 1038901567 161754571 76464222 617922677 184374924 567292949 439573162 19483062 681657143 480706016 63113617 989992985 894743944 294691040 124921550 917330474 4576648 263944319 1021733 721224870 516493201 161421003 891487184 422804107 682972604 474728859 852073337 338296657 878089989 975680566 519673770 432865772 969141074 595015673 159587528 568117194 790588510 314921177 29343033 222971086 420509420 947476894 297912458 40513463 868990504 57153037 49453280 624387102 587573863 324772166 1036082687 410158887 188317321 889648499 674402854 677958462 56834137 208248677 789917238 959857554 622556213 193848849 936461856 7569924 927042778 868255335 251349449 607580087 757118876 181445893 626511447 122350686 588337365 1001794965 360487618 425672978 1031693490 476261 163121773 670480639 976513068 177993389 165167671 699192194 1020430754 980753952 904594304 61956834 241108219 1055352048 564539385 776108520 298132049 195256130 300911578 208267770 509528188 1073664969 192830404 415786819 786545577 614797356 720512757 133951684 640201499 66685424 794037392 539191458 619732284 400094139 980798905 638603875 694636205 850786830 438957425 129623366 450336112 201502322 1057569902 1044176687 404228766 282332802 1016733994 1009686601 171551709 507106416 1051808849 1053735578 463438673 913829166 692660406 633337804 957845166 199813185 143758694 566093849 952093758 147544647 451424389 236610523 871486067 566953102 469184447 373827737 64290359 124889748 617229415 958094548 34378731 118778198 223268689 141148461 64171172 850579087 363403323 344912245 215210745 828080619 233696220 291266573 957346388 1030092943 170069738 681613643 778193693 500815684 306659427 165365521 704715666 527443273 863317979 354594960 1033677353 891789396 825213477 696737781 1020249373 534543956 934503392 1000990025 959011095 589622701 1040927013 604432644 254516274 271286702 270378441 787247825 923828068 685784977 190520850 464878074 553528019 877866013 753301811 818981039 201687031 888887386 659433499 1000389430 394647101 120606797 1043303197 11178986 299853990 835477274 809053805 612348710 1029265392 555601442 146655035 819311349 806460605 1048229741 186437520 823137552 855781192 83202458 853735893 384057369 1071482223 55493439 254644503 373959527 705640437 940797057 858840298 769851946 455669847 133075657 235447958 854659421 699054 1072307610 43015805 163588077 934731556 414707940 465767231 367409226 649639963 928243698 544699266 472091336 370844398 925568672 388739871 90500285 794961807 222967383 448008077 193960868 899399507 921501925 865506759 810227435 661538885 178942813 200898795 135932101 275216038 681878754 220625792 901132257 528081007 49783606 59257202 986731765 472962316 307451012 575131471 707986617 721695871 248570831 897859945 955921325 1003180560 245335298 571793553 994944893 597482714 978494666 306603967 64713311 602369014 136429216 259286108 713410871 520229833 502160316 318256229 342335829 679326557 408506090 988968748 485307428 95561627 605680928 563150979 163438673 989976207 698557284 747928273 282466961 638182741 36988466 844463719 135529751 91444670 178791850 1028197678 328341710 358091302 375969582 502023975 20474438 949884450 450426759 1050260758 369336659 511592206 161029214 624299052 613540606 226500269 120036571 516072236 615641108 498663699 260179650 268412491 279121349 639659756 518249091 151024842 420006543 301496323 546082824 262619007 841307007 414592763 640187923 926435890 963489240 44789813 147982209 860976534 48860726 94295400 838221487 890464771 702273353 727858978 851183703 1051909372 751725887 240527608 517754517 86981782 370846729 15890079 881528290 613271804 194871156 676928083 164206252 64857606 870452436 297265174 834191054 779063666 619834650 1069208292 1032950770 793860795 81780543 439063087 230827563 200418295 917108683 935631956 924791845 822180751 523559656 886646205 260065330 358012428 897997363 661075764 802950643 667094797 177145537 490171102 592583636 953760298 17321578 328807122 770300035 955656117 718297066 888928950 542640985 1038274199 188298501 64125427 995360940 407948795 298027626 443312858 611806432 415817703 26518318 1045826266 188350900 776015015 937399474 667267125 716342413 509864036 263960367 435550886 698297710 645228236 138836713 387184764 498993198 1067677757 590900978 700772795 1042545942 242999299 890384731 545489478 934373463 842427300 757265634 976814587 25569914 294452689 631402525 147440018 805896672 272246504 691023507 355439015 449144751 302136158 698932516 864504926 682939564 900417949 999868130 446626487 573005548 994346217 549946786 100516783 958368160 745858691 475559524 169706209 8949690 594318517 60874377 258114349 846941401 824597091 958943001 8295535 244434191 620843558 440429117 988990617 313880400 938638091 847273930 839465774 732300216 410456864 465380002 441701075 69667837 895333432 764719945 964577294 1032790626 643620899 273545247 281307487 996415674 98051388 135234187 106189908 876594290 553926115 469917509 359226821 693585422 363451391 600404398 964468866 723413578 767612560 988227580 558085240 453736850 168792010 1000844927 572741527 294469893 369957171 362954428 881508704 234423168 515286409 937275563 334714978 184683468 381311908 222972698 746027044 327139348 375151643 136762284 937972402 476367977 740545933 427921422 697270628 897716731 84323336 526503828 159502397 899309474 239839366 274824320 441443621 21577964 473223749 250088102 453938292 112868620 988403374 857590125 292135304 274266931 592679379 968037585 195038259 59859649 340104522 149457227 208106932 731540254 334668389 465529051 33292665 621793266 636214082 201823533 650621357 380706630 587816153 897172425 183149825 568088819 510435224 865732984 464307049 102717345 513497569 1032655082 871616235 495059472 835406927 47898867 516845755 834390537 55991431 893800672 149150218 474274331 1013341867 516715941 479533706 887673091 160507665 886047904 358441962 184305003 807504433 177503222 263364467 191206372 535647363 429260014 144122986 998391779 915560722 471320678 633331994 543212622 827260307 138797483 238169755 396406790 630351661 649086662 661662802 250214111 177006160 474733109 174907277 868183053 914670595 917354936 438789515 1062166420 15186559 937373621 429906686 191836819 640263263 925930986 1068319715 889721604 127803401 639572086 25409597 913337184 669289948 931370792 617504060 930812625 220308780 910991278 965750987 63615948 283195809 135441351 745107944 1051675151 403841903 1068069487 170266078 73852825 951803388 1009490009 891160410 845247068 805939941 309316937 1072558055 227495118 218704321 1068956612 649992433 673377505 179594110 815068143 126868572 618746088 148001120 842215853 1027477140 1005058660 477192189 838170050 514776146 166884228 918012843 542688393 84196999 431184773 384687112 487760008 745689302 947646910 755216070 55762342 34419435 435928989 531107492 634508319 845770036 705550295 994130094 18825892 970918356 334173597 588850154 618644136 618782423 408735454 699809496 253201071 403326725 552281776 885911102 4184558 511696704 623424492 25363387 561000882 568347710 277834062 349511676 1010360384 300233969 325362891 917797604 122181381 659666531 460492242 849324789 749895026 59262758 184625434 262935409 207756830 26761058 887839333 1046885172 628608394 231899853 569208824 950369418 788542469 231058539 658048748 4679283 1007316056 128527262 675093126 428975923 133698761 311461761 239781373 967389320 549903569 109593557 556906686 860499100 468406808 334745051 800899555 568225484 88472209 34388647 890842692 115722456 411735729 977962137 446770461 42554543 43773174 997413912 967506050 354033713 578617226 682795394 297564964 390131572 535901455 770038441 255941161 395597852 5924320 889817862 319265599 48567608 909543049 138246257 943131721 444084440 655723782 727894460 860177986 223405870 284149024 306769108 201780697 492782942 645222034 886484351 1071795137 1054668072 1044786157 567544772 607316830 649642376 971908425 415072897 497840777 917980415 121532568 323239547 114482854 3820847 997827294 607025386 849905139 409656270 499844260 1007200967 697056258 417175462 963476215 789178472 961909808 1020243682 323592221 1061123632 961429814 920945572 38803757 362387558 754697040 898656298 1058325875 482551199 626153704 732478862 744774536 128691483 881157022 503440465 247463072 291388373 783500879 821889419 370511297 817264323 396985401 611584279 389110556 204797521 593876945 743491497 867387918 359457962 410196762 115763720 23666708 480530650 676390444 289401911 606035509 499956347 442157648 675349151 667088326 340254446 61961864 281002830 432053561 290321311 1056469655 15388540 107081363 742375494 717322611 844773664 64804512 1007604798 1067890077 584223477 798404755 936881830 848286384 841619149 609109263 686639675 139370515 936052546 659940032 505877888 546903858 217146544 260817937 204266607 142233815 999473838 587043484 123628043 842728281 825597091 70260345 239187111 833207956 873450850 55765039 531606060 119875063 91568776 622772099 896422654 259516895 869167031 854527260 16163476 217669365 109408650 632588987 643483995 12001052 397124540 227718809 20748426 214628828 768034723 651156763 725592248 122064112 860327700 920243844 378056635 274326144 232824376 750328554 762393734 870442334 906694565 889982561 423772734 1007077878 3713775 72514272 129191749 134164333 1012616243 32639753 1000605046 718140198 305917909 220224810 1001081474 1022538297 286057904 941618402 4112345 954724611 37359035 345035706 358800076 86723328 868250139 685703317 233661391 496997350 48051932 411554806 214408049 482191958 640228491 220330882 106388248 298832708 345812537 332681215 462755881 359449093 419486926 490041457 884327324 149850135 599603420 5291372 398850745 793342575 153623262 810411075 499859479 405798705 76765979 63458137 971557958 843724923 1067460461 403814283 942732362 854617181 795605053 29187272 614372045 852386569 120063078 341802955 894194197 313332837 205049753 495615727 334070883 193546287 50699812 932516470 843951476 156689411 653127579 365294605 1002288388 987587076 701650597 557826697 122343344 403276527 777187677 245904889 745644383 746649317 850852891 601297387 475906316 226580643 682115381 978581404 736926795 918334933 278364001 644256541 1062318280 1020287122 194331149 119848901 468650798 36732458 933881935 692056863 106453379 1063871657 98454428 889664390 524493165 665803954 622722606 744862020 114429020 51450540 1014416194 764625467 551435600 173087029 754421908 811151627 482254469 707791882 479337148 314103549 712929697 200463138 1042934581 38844146 494870463 797433502 199119333 526410825 701384271 378866871 305428796 900801864 393633651 214203346 39242445 763271123 100354231 761153449 150342080 664023410 101231403 474943775 398272596 743261869 542094953 341908043 29869875 773470708 584234528 800863518 931361631 641358427 409378748 40418852 952021503 38654766 248035175 733059213 317366691 884331374 535399786 726769239 733697330 52137411 908553146 445231216 713308595 197460448 761744006 928446905 438633570 1071227458 447613217 1017757796 642001906 621565307 270990885 132062414 835936755 1052977052 457605050 689553366 848664258 1045216394 698493836 825518548 266611626 368820441 1039727420 341434262 217410534 532528229 27861355 965743499 951522119 607901317 299264035 243408388 96978196 867267137 762737966 962783895 352169664 497637946 1003052802 868408748 454570977 17559174 261659445 474900129 349835264 1013248371 810976914 177089603 981269385 940975762 88104947 443302223 160774659 952468575 236777179 152623921 540367672 810793419 587302458 129127083 831750294 333676877 450260231 709038351 582960372 838105881 1013076418 733113441 905227731 497170009 166570287 641530932 548215355 1015122781 398345271 504459808 483695493 146146436 343031604 149233661 819306319 343730431 1038436454 1038003248 460856385 419207148 404128868 652639108 723104314 282822069 625590560 839666672 599301261 653621134 621014860 289591999 46103116 143765108 255632320 656754617 679932653 133965758 19108383 370473599 850145483 124057384 672907615 584818162 667342224 43440082 78619653 308084955 508559205 775997731 146295459 300300388 525488809 213118152 686019400 402919121 134014616 759539818 610440760 922029044 582897159 468305412 204991587 1065858655 334769295 434572996 822450492 206926007 681605579 964292174 910939524 902018277 399411154 530328848 370813577 709176083 227764118 59980878 846898280 512529396 255820984 237175104 277896166 419558414 493158224 381760284 14997285 358285530 184933750 63249385 116669802 775863762 451111948 667127627 316268126 802361425 327112633 7876940 153147550 1063980803 743093131 354353117 727217266 914415367 378712936 906484818 429766637 700157636 985351441 742974606 380442648 996976795 2894575 585126780 1024143286 417534387 54338133 920748424 77152556 876628476 943425564 725809357 432244569 551040957 44528543 75962832 923943260 866726035 89850560 398393820 659082271 226869323 293956466 46463684 934635471 89025709 486337525 890281084 300882849 485851695 1052738263 493881027 819565031 402592094 601442365 995537781 306332562 855926265 988473786 893462290 436945814 802009148 990424158 214698277 173623604 829931490 227148492 74496827 107632207 972097178 537896657 996215080 126965537 567214519 461589539 88608464 953209705 520333268 287354379 840904750 447687683 649753801 454705947 330013152 329560219 1031173724 309648042 36347432 838958999 169026184 1017769342 807638814 600415220 4709229 447492557 47227702 265179342 550583753 62063741 1004395528 145253460 900161810 323215499 419024567 292021022 145943896 112775358 37058276 498999732 127543266 129885734 845733288 702178173 46124955 669474847 55796860 870623506 94639960 144655916 86235998 455200270 957550175 170766990 403075570 454667761 93294053 751267860 286090858 527334260 884258654 315729425 185486649 757482552 818532123 816854867 758953498 925894388 536393719 826947103 727012773 460285848 36098235 927601432 978255861 426073727 67754418 526039659 809802404 833262766 166008042 691760020 839856987 263359059 581438095 563658281 254288374 305352375 819426798 521533169 565329274 797777330 721024271 793276957 945487502 806245179 571208178 3611333 685778243 954273620 717436328 787890036 85734941 360226951 338062967 766309178 889391829 676403808 858540897 1014306933 831994332 292335373 377069573 541367138 695085538 804908690 466778762 1063210083 446999963 59687436 175514332 917659030 795666809 728039516 793262176 309610445 785698466 315041030 253462524 360469739 864051622 245448523 427425494 863290853 890763931 822247763 595719417 209993251 774275226 606544917 1049852626 859037745 196692095 57981321 631618023 212988293 385649089 530049379 697857193 110919752 878355789 1025344821 748493074 578949509 691831287 646017919 741741469 282289159 195031501 65248391 444882901 885070975 381992847 672962580 387863920 557057258 263984031 955290166 739727653 7780782 721759193 243395679 78306276 575335592 479114080 344892144 572287529 1048494381 220873627 245726457 301259427 977311964 119038566 146284303 13374063 32198321 659898895 153730466 722923746 585173638 419748036 889610337 146104110 415416331 1039313021 531464335 1024934385 241315254 226868333 657826474 621007771 950419006 6844904 606015992 491143945 920494190 257258057 563837409 745110535 263728120 1062447411 850940903 854655596 487539263 142561327 6386197 68899919 426326302 977580684 635783476 177125517 617244333 551803110 813905078 444441811 895278048 680416315 379779213 508944692 727218645 953848982 264390989 1045183762 344416011 948156025 370494362 251971904 447605480 930672105 639749445 298753793 530656755 219871826 833905310 455278900 783369294 732148532 931290225 1010411136 970881294 747207390 657920198 669984490 879078394 274210595 510570582 556447964 379229616 2996821 849340448 345189311 549793501 818513267 313314596 393149222 224383675 88131215 958933427 331348019 460843873 53103305 271910159 529024831 239675302 103727572 56094026 411847522 612184833 677099522 892401658 497802528 298672471 9454893 445595459 524276906 741145269 108555344 175713727 62291865 595090805 273126533 1026192830 398409590 289238582 328579438 337302282 842210778 319628309 533208543 575036375 753075136 21150399 324214835 296404915 428523727 1064340389 488729931 717101895 442624024 501304547 858487396 216296824 326951158 944182838 885178152 369864345 289243136 510348401 919813768 325684986 168530354 924519370 144795434 487607627 750829624 480439329 138782385 564436402 316705317 533076479 535661770 765076249 856377137 114760666 878674299 836510244 629205261 349009561 375984016 980047853 251443464 577186174 415171317 678924293 312509217 837442743 9534554 423652273 408331465 916143866 754170414 300959951 588035629 840796571 232678669 530581871 862590243 261072006 829774220 92750886 604990866 391836402 33336386 40798553 269372345 697884965 672368991 867505594 836366053 1060569130 1053771859 978683716 537077767 99474494 886342117 850293330 48735369 133630057 712719507 81575321 453469269 251983922 906341652 429729981 619897938 315034417 770677414 77624673 15784603 886804918 273127688 5878947 71885883 772940981 908122330 112078072 857567480 494774709 852794387 699755192 531860269 365625771 924819705 93586173 554786977 487612717 23524092 199646674 987213034 975419462 217650539 425208244 1049607931 559163851 560931860 1030890403 357833512 549994859 1036411795 679663357 684421378 649069854 656019921 985452569 362201462 565569700 958040195 369134316 729263743 505587357 19477422 429542876 433395918 783022962 456563715 101755644 213199284 743643003 872607361 77951095 365958139 502580861 7249773 323852337 980208390 568831027 357448799 831469885 715068067 906262790 772417863 330163487 834052779 714148523 580936049 412167228 310306356 879488871 211676549 724778476 717453217 646526545 895422403 558202125 125179363 208057550 455183898 1056938377 730826445 543010283 218047830 300862072 418860263 437922324 843801567 952232206 230542092 941145854 727354617 1019789281 759172956 779322171 592040928 474860068 992171217 680548737 164465398 998255463 914953586 312735802 741487242 31850877 813420451 67026025 875016100 763804392 351176102 606958706 64232064 9731008 704953489 151519581 840304643 263366496 397226453 555294026 582761655 176485915 129083338 258406427 771351321 198461606 170793566 684013444 662811797 552194882 226221641 1018034557 280462961 314388062 609303788 224549996 356717772 468237194 865766772 471329351 9423520 1009000828 820952781 174843251 583358086 71631679 764646350 670146535 363658664 709656795 492517631 628408312 32553690 434606067 361280316 741003269 641985488 263153069 857559495 970204701 788841282 1005780955 772223945 501321582 337663707 304760404 693879780 220701813 87304943 824439769 916466652 340885082 710565261 760017248 858074629 546864529 643705565 801554642 694525629 1037630993 119675839 873928609 826402257 739947381 336809417 381897292 476984697 374898998 472603904 62887009 401295254 502530046 288673172 197131668 609983335 770003529 947432108 902899147 635627828 496900522 470728832 701386277 989540451 634552355 583160940 1043297599 851779163 550651158 413282041 48728479 121337328 956241095 64863239 518325841 979256037 106247835 932930274 361271977 558291321 579105075 339880742 78684584 1021178771 747568486 548965733 659762036 802095043 313550114 97988564 410901007 898872056 648420523 658479291 79103945 46125339 581910938 905522133 342418518 621079794 33066752 499769575 85399654 763203541 103752516 788317339 486128337 247261335 286842773 833047606 390709374 951829886 221979900 903844318 866961731 1011975393 1038162180 599347402 992179905 892545071 547759216 858025413 519238480 223637558 1022966698 511852520 724372294 641214335 194624012 750987331 328711496 579399832 67133842 953577308 449710048 544629023 412682478 955686154 336609501 218416072 794461406 923140682 462786434 287970 286335814 131046804 712378456 557728880 470655862 941568888 268489337 939515962 957074238 274794597 241407871 558924235 538175467 466660489 178361384 212922739 187017460 820822243 656105251 315945385 451413972 453505073 958531618 79269357 840286175 74549929 919802065 627587571 145706433 264462544 339630815 562443597 957540147 774091252 529500313 741927017 560231144 1006417331 970703400 967963630 220969732 605988733 888228090 524835983 181378445 477464704 417519618 189436391 53956375 690596562 388748221 658659168 854629038 1034759524 732194474 359646580 367488963 621051416 589555973 585245679 78755442 737199624 708155238 748485357 212198285 607045736 335594233 628909892 772422777 903720626 982792047 717418125 266823477 842043553 618437744 12374116 573010820 455843179 15179832 722133118 90062640 455840627 129715297 808502452 34008481 836955148 263735116 309299662 209898682 766774186 137306829 662536517 212504402 419700135 495034194 188342327 1067395371 1044724419 325413344 248832958 460538081 396170690 1028439636 222612972 116669985 581391813 291867929 1051708031 274109450 578999555 801292826 382230231 613243172 418341093 862786309 479550158 823757122 712277447 558019269 770493597 556515962 568231745 719370076 648025364 544900293 1068645879 302310933 199085705 908611334 397067695 476153661 116169488 808329737 936789921 672484676 1009788856 871003331 678146993 617476126 667168212 966878293 979854290 167748370 1001594398 961450624 358578081 865216906 565104899 400701318 482748183 56937787 256192422 376079519 999195398 147342609 475184581 118385816 515909669 31360363 21479363 751382154 877554507 820750828 26697964 302524567 421242436 915808011 854700597 588882085 325604396 447807242 824011611 603570771 64892833 845505842 97316078 687563781 972788177 487156114 1044179093 75269800 859647747 355413690 88766413 687594889 680002685 968009396 1043597943 532890264 210969542 458768638 407340769 956199739 571048298 166992020 1033277160 845930889 475389142 544105042 812854657 461870379 393482620 1024652752 1027486616 791135531 819512173 269406714 707736878 57929854 158565223 1046708576 755239890 772773805 30736265 62411963 687170297 343084503 1061868644 866174420 315488685 14757776 130058645 840028209 489000157 67494907 932908080 712172595 6598705 814242376 249739458 961137135 550325035 520971926 9229171 435773932 633110449 623734242 927066261 1028866891 610441528 640781862 598488265 279862494 265406812 246022712 568196808 151497809 341154389 284518008 753473556 419619450 555368055 645773630 182693710 508798289 755908572 273436994 378398159 406754069 1033304654 761016632 677997302 738683508 507647644 495677755 897003091 809093624 570785164 111576493 809086807 633484856 621089960 278500661 148466782 844375898 572176920 770775397 1297750 314881429 292344031 853410202 890273194 1038632811 62133026 1053585682 1027319260 134786478 135654204 195171082 1044468018 41931315 698360923 1021100353 801720450 111540153 589889202 387201629 809010090 853958960 177675599 542820422 408750258 577511070 223775636 804930758 912407266 4009700 448263508 642005253 174883079 814456374 157607307 489417956 619232859 496075099 316158350 593292332 743146071 877121844 704503428 863961332 310095893 900586171 75271186 1009516969 859568495 7326769 133363715 290541065 308849091 905373834 1056523418 941946433 83418377 807662982 274188529 728318579 821377496 23448553 803755053 285211983 43158108 725678904 671369589 957484176 163369602 626590486 433185518 176754303 776735228 889986530 363252951 589527968 933429028 727734422 413953481 202382078 667480921 766606549 945241105 431423817 242000143 805429177 310394062 890301061 1027771614 944642520 552960189 1047157460 1058269110 483839913 12119601 441429862 878177303 451416840 628502906 1058565787 437592364 855117488 83744588 356640725 847538806 394172477 707162680 936845970 851105597 165803239 441659394 308460679 77765136 324351856 975763432 206039009 1004123095 373132867 913715212 182878420 118217575 513295636 335672010 22531527 633335115 851469375 957867583 396448341 94336799 677129038 714259206 877048115 56411464 603336741 762049171 741634611 138391927 564660794 182909226 272441511 875030191 855929932 23526374 940223201 24401055 298433946 966798981 329948749 447726483 4723426 47483142 340557156 958821664 1065185819 591035698 625886831 245704507 61719306 953585382 162521833 1004527270 724866112 260601678 666989358 791874586 558106015 136245413 900415085 843105294 945542534 16219342 651519620 837732970 188904232 568786701 337453561 367855446 222140701 162162589 305050786 67920522 143580180 1061351187 853199866 533666828 906307932 310868123 169364144 883667068 600915132 34888869 688504202 945956209 970942244 530014284 909618492 653794244 942609815 137117590 1043099177 1010868642 814779278 660232134 944934611 1007052734 794360626 376341532 689403152 568486423 745879651 482488338 482429917 64339604 124341586 887430144 478741805 267911405 929610984 637676403 196397188 612098343 256620715 938840794 473648487 1004278987 99008673 218180880 716230437 290851598 1004326856 595089741 93906025 290684893 152068819 514414508 729959839 530454834 428401965 1035954486 276224314 763464063 734790336 802415729 736257169 464780446 643020302 593021557 367424971 882399345 596732765 612073052 784064380 203499832 993967128 866760579 55446837 648541165 949296630 240871112 901173416 996427730 765293265 654492426 627763432 582334905 941198962 309527774 272479236 368055361 652620629 251255878 940771269 317003466 300039274 854385687 774323312 331831839 740308396 599153207 563965662 212961836 29744307 327891233 637514257 667199757 921291630 1063524416 1021256199 771566829 344512959 860566327 58318118 126620211 334634854 296022398 721023627 243866496 22477943 279254366 190033148 414353513 241500652 459711806 365442150 12610541 707045662 651844187 762112528 746518833 250331698 381437536 597532766 1062092204 595411225 1047266001 4654987 704872685 125082103 899723642 134500193 413846960 322379779 740761586 214749623 923894850 24849626 1016857666 726147967 925748291 1060313783 832361973 455290342 922221195 713295901 915216045 946094620 776382951 302379972 556574000 541581952 122375915 62465770 219816466 477989609 1073472643 872918995 135622283 792808982 652253992 616798085 271732468 453172857 549115389 1024805037 89105216 829860715 410075396 240105870 524066666 936856068 856979309 783130991 36871822 667432868 806062386 825721440 1068615041 741702321 498604948 1032612557 738124177 602365105 181965262 194148365 137602398 165347070 229660470 1068721819 832593380 394542230 603443654 211146266 722291077 126162615 58014243 956663041 562505700 1053942666 49862818 476938569 763284604 79300182 37490974 1070758284 417334514 338566137 109449480 35577644 740010782 795318207 357044971 274443623 715789577 405266904 626339969 818192669 730592836 912975883 202224867 14975503 517655770 807544630 58300831 445806225 126848072 492652481 200461571 251107217 129177410 651241355 494108862 657153046 253634754 645325589 923106175 692899216 766859726 748344410 736861573 267270071 795082175 717620996 407428263 916987879 826369978 73189129 265964681 343475491 698215396 902571969 640053322 75156041 1046416862 776373771 356235762 92674503 195514764 81646878 873639838 631914099 261935456 510745956 120984757 117843225 533280838 768137162 323466027 47687124 55250110 165193954 1031110421 5790151 165180409 520833528 854819467 684026841 201083810 500516801 707309625 219997612 411733268 969266700 481182923 280543984 538324899 392978926 962129037 363197758 631259819 731484380 201670484 328555412 604799947 1057461858 104157402 430452822 1013033091 1021289177 506726575 357653479 454557759 643798248 389312844 104563210 541933095 276035936 386774188 452585327 303369382 1059780441 532228431 623470798 198944896 38500772 626624270 644679864 816447103 854316516 230352133 118408724 591469974 535133972 155012860 338694033 660973752 287695858 1059301030 586153618 236913947 199922561 491973227 760754861 301297767 68752803 971973699 909120564 99079320 1010140046 935705438 292269792 955903203 219394246 359666165 329141207 1061510718 1007716377 52256875 180643956 762942549 565243095 132672090 464649554 133908975 837699317 313429687 977562941 386328086 915047432 56762686 191976732 607364345 485278258 599922936 973755253 821176450 296373023 213798664 736979458 296230657 877391784 826898868 203994454 603481996 567823099 21981690 843359527 160565347 721571995 248153740 306015521 522721315 345018080 498920696 372428388 565969406 922919311 533378521 47343056 526334628 556653890 429034279 740033915 396514010 353049818 618879610 1018421161 436665847 288168 786815095 124975258 486457570 369278143 345559059 295595240 969154479 193404044 962388630 847693285 632016146 213626591 640781829 390726381 819557140 176535037 828252573 70819125 1060108507 729837757 711247662 296307882 947618134 738665336 344296696 877321041 757310580 183312393 5506003 632296171 543520474 49531211 972275363 83042523 21123534 196864222 343441013 791231954 1001660991 310456430 538852444 41272729 76616133 545496575 572881267 526729635 348521763 15044744 879158601 557704472 645386408 462660125 511312019 64525603 663343256 774176758 465509157 579337864 156913745 843369809 771580339 698400831 827541360 957808644 34636386 8093811 674744379 34186305 792299258 830281153 219647333 1013951292 606659146 27165299 260368866 472719604 840326840 56186184 559813618 1067574814 807186568 627440516 936120088 376829651 571208705 973898555 517430448 67937141 453501697 752353361 1036860335 528665729 654913471 313276719 555077563 433033049 374065451 101646902 759513469 469063835 492713058 497301310 500423940 184860608 467308380 272150798 289576426 16867460 137843108 134420379 274137052 177644339 152794767 485847048 34441993 403461101 610895073 372747054 409625568 685566520 126649452 387547145 140851226 406035852 666768132 98342910 264083334 958130525 539934852 804109645 370743635 906132722 160665353 95904266 283285146 900993252 154508537 780614891 607504812 574961001 570310410 283978503 499172839 320069239 91501665 778037161 8798034 1048652375 630221651 607351019 917803784 35904203 800893686 333777506 119046473 1067418299 538617348 409297232 241530939 242881939 415413678 200892827 743471887 347341337 305376906 201292461 74503070 295608183 696951428 271599701 1046122411 524901591 380578529 19733855 451667121 242950081 878254325 583719012 818408075 512777845 386059768 371855037 899759767 956522736 261687376 698555492 90825115 990000560 798424055 464359136 990143318 370705351 156474193 326057084 711215311 336592921 1016259547 408475993 182502013 665884579 435837095 55809767 569894721 130020971 25050435 994581422 660331815 895166256 1016612964 194578167 732492083 1022645150 970497175 873045626 774094243 849590357 641650352 419699507 355541187 1051512951 483904615 1063772390 795461147 319527947 733128479 211082851 431497747 1031934842 429976245 599244468 251602584 131708556 128685817 134001901 835920600 1030342048 452202012 642803396 485995519 216266654 318021522 893161100 673327868 43596409 760715745 268278300 345536319 70960121 290449655 1046786911 856059631 611009834 54097734 790074530 618503393 52410749 613870620 54758834 139805156 289554081 43100877 257710417 449168405 5483154 252307271 133805271 362809457 354071515 244532985 793817622 174025623 194925653 875502788 707826352 278285829 281141823 813801758 429266064 28592576 821337979 1051606737 906851832 385994198 67343955 1048343384 841577772 1043019795 803960878 295944054 227979991 952691442 568005568 164897523 18182092 750937379 541844451 573743305 453217015 379136010 691587542 417244251 188444924 992495106 541515952 721148278 900698720 1013725789 573890907 140044482 103319877 183940207 11782392 283959987 447422336 962667616 94033268 596573637 631705174 205093770 91856175 50283329 955583615 400954955 394256047 392155662 297989548 120827766 779833361 71940776 1038030766 714802941 797052523 408041543 473740828 907556966 355220930 505262884 241274272 133021127 513238160 83564530 35556553 927103739 961578218 529774305 277245470 434535498 488225236 959592016 330356488 1002739852 738332605 815717531 26463780 1026565045 224206853 996880699 731302461 171339471 974107487 316143776 880233341 922961903 753043978 780593206 478783354 135471467 477122242 853716442 281526321 58802259 314638549 191155253 1029845222 12575138 219739631 794139986 562390556 982643294 373521189 481016202 94321855 4079280 447451314 1001221048 237292391 762628638 1046377458 332049169 61509834 823075006 941195692 936417978 492163301 813555879 947381341 845738483 224742501 503653373 416477142 193928081 1058724779 1043506221 947844835 377231852 539555189 471079826 320990750 230156126 274828588 16246715 213041605 243137640 923614118 934707732 727144506 637524425 687121019 607806646 974086315 712676075 916188160 612108383 309229112 304708030 1031105625 9893540 626388598 845952932 353464621 78669297 764576062 233421699 103418695 653525402 627346343 994214425 591841787 466187753 314251189 198755368 401781238 197034138 680038093 533452475 520366474 1016837927 655971908 893228810 364360011 612483568 660608132 539355419 1044259733 277394741 259112160 819395296 522974735 596134108 267952274 721159196 592793432 954777900 90840324 230188344 329749080 62409376 814271093 495627157 551942778 907334485 60908179 933124986 90754034 986338620 572618223 1070333629 271267136 203027097 326524777 244945282 135653121 196666946 145043581 928798057 9377459 48627972 3228603 971288049 999367672 690632162 491431466 519452772 889153634 985437498 165799185 433926735 4974567 281508798 856613413 204719254 695024517 1021723756 453298052 966344948 685542145 360263030 1026000867 552764456 423141881 118955166 64693854 121951548 401592307 801714987 88968293 375468704 797691156 576021216 805184480 772862003 1060995331 336667426 806608546 450108649 267126297 121394088 493824613 581224219 958353589 874382360 652979447 665664120 125368553 384706854 733301339 897004624 702218701 831618363 30493362 842278948 513673701 826811375 501306139 228047553 562883428 779978154 938320924 957166413 941923707 388505189 685565739 538429581 389918523 256097264 354712174 152085858 785927826 912668226 235068301 219106766 304379531 858998550 179133309 866310573 438002134 658755142 368619204 193670404 240939641 1058602228 508169697 255559139 59607671 800557378 1015057132 991930316 56525744 108047222 959190249 391613441 211714917 532782853 126435264 671681656 836430766 626627662 909310877 566048164 489508891 166361490 94859471 129845147 82577635 243320897 324079221 127532186 894309163 394060700 227752748 252874963 1019664285 629869718 570041908 606938563 32429175 222909511 963640594 351194887 189237684 172069359 91813752 964366432 292092546 195876426 785663941 853340635 952534389 131728528 114317865 863861341 878641428 331768663 409700772 991353096 549086654 590805728 693750172 263935446 764788523 419911593 718259602 306875471 780672603 219833128 982379284 594063475 526376912 910789605 958201157 517524684 279576841 476924648 94696020 443685530 649539985 1072520957 684196043 255831130 157918918 250450211 19075293 597252611 298805377 330475286 87866703 282870927 477475149 703590697 653304802 688384242 692319564 12258199 1042692735 924526462 81502781 501189059 811361284 370052276 572493563 606469260 316885179 471105527 180951913 780477821 301114269 510305318 535377287 355780668 661290013 544139319 623005724 241421412 404870843 486388675 405299894 63048094 55434803 338044080 557538833 482777422 458861370 79292674 923336876 723279827 81936479 166381937 333997915 751950002 140163781 417633292 757636166 787704434 194976733 228594748 174270482 1065534385 162672201 798511980 650412543 872870766 218514557 1014549837 209482414 18808320 995499073 903495560 592135061 154573010 1050307889 553067002 364006829 351740213 781590037 21408495 311427619 18935918 598901155 836333368 658181238 770610718 698101585 979059501 413105385 816981055 481651469 251013026 351623091 161603653 693653014 243719816 865987985 609140594 71710638 430070057 782158305 558984619 476241608 840234511 18238325 191292818 137510775 460936551 465730255 319551511 755128580 1009044570 41170353 546444479 369785979 860883220 344490383 745553412 887883678 194768033 577054911 229925026 371012752 966064440 404482658 749770948 232672920 746851765 56099009 688690933 696199565 546361931 1047585350 460731007 103814661 50447296 708020093 576634870 600471851 62203147 758496169 967880105 594481781 32648965 19899088 596023487 689216067 28762659 735298076 231590971 631363161 713945287 1017133581 811915061 161437435 495972508 529597780 610992428 346476046 223758537 139465507 833301904 5277963 50298249 354237842 225132930 311135107 247226898 949018807 836659462 969165578 647857140 971781322 663472344 522360289 499404556 232916185 725523497 60818616 205057885 134703502 5423100 18317230 877409619 133123957 514183330 156262495 1011214343 91747828 243166085 466593965 609757357 839087048 911111835 156088482 176495506 79236120 476167062 22514832 302167867 338643855 1048590203 802191343 141982125 707583281 594317160 528478492 880709761 713022979 96571191 168711010 211018195 872368497 159757853 849294632 1053508769 620254787 1028329862 742341985 391295248 66616993 246302692 33520141 427726797 99464132 572633852 606528109 944473103 603710415 1068869404 286027600 555725336 933251211 94290703 846619300 569724748 227595574 610104367 723799349 140384260 512977350 27328085 273262817 785212507 996754863 410473095 564404813 151643544 774781327 60803005 791651385 748630823 530995052 980187855 837264676 140494790 475154014 513574279 174698411 1031395182 11850005 185295100 337216025 823137681 384737275 796787412 259266780 380684459 700292099 402641908 447922980 934882869 605720898 668634530 892081495 791774665 580239463 109881128 868612254 27483872 360062429 812154283 438178324 264006772 496659755 376075611 181799145 50740556 549784361 93115452 404839060 680463560 42014897 572183745 870926408 954217302 365514343 196312930 14547268 308502238 6102897 388555703 15471728 871115764 915175654 80709446 758189901 71292340 911923375 990919244 83667224 887939352 174234893 75790867 256254233 731068694 850656657 508486171 630076698 999227770 1025761778 997881235 20335766 776540315 959269203 993420059 705936281 196819050 703137433 1014535136 1022399208 535641035 306927239 818164931 846063056 19726856 922559001 1030395120 346453280 786755831 862815093 421709402 909030640 1049997382 236554555 395523262 1041932608 712427675 902658007 1032261750 1014561111 151684027 671097470 562495976 710477345 833395040 678721270 315446619 753370630 197563061 795666294 231166436 468639344 38468100 143691156 56890994 1002920388 317653277 208953846 1008291917 202246591 138137469 466382545 892732681 850838055 167567913 851426219 748635525 668232472 773066742 573487941 956381602 729395032 643965639 897825551 459954404 369626373 362403323 87642743 1063335395 117811998 664302401 256561286 738197465 174753404 497310091 769960854 234260080 271213153 42255299 162651110 646277817 439617592 410045565 168505156 257542437 733792513 292319970 590620537 610228371 619660853 278686173 503487992 902672647 83169133 11441703 893391543 567732710 789044789 939663741 434694456 524374340 665147260 557303822 526897733 531388813 1033526781 904162700 900777471 31942092 458131946 256651542 58091463 584145819 961134724 428309343 861709759 456288457 191309615 651570365 616847350 64937269 371124415 520314789 741695164 256674790 198658136 803362006 334579385 542826619 1044746095 252093256 953619126 1043532555 95608308 400581740 177216970 771410087 854523590 158613966 793005485 162490472 1058040746 717609883 312950303 702884142 199442045 394719805 937780784 298642988 159032346 553145335 366926151 945819112 598047535 1058008639 303319562 665761064 1014256368 464266467 492473336 979856228 542240396 718341733 944238439 207721742 699898215 1040795697 783500301 449277320 705505872 564002929 878104114 167369460 2303441 562552918 301420382 639724061 337026645 730217345 1016174963 921272487 901768198 119023239 104768037 425943960 625851426 990171210 286507848 800285691 724578542 73836493 486811310 304111309 633806408 342902185 927940467 906651005 277961435 225407273 795414307 613922806 922425440 973275140 212237549 992710488 382418737 683949484 537318793 245142288 958545489 363933763 507093145 899743674 1042674899 824963777 328863409 720990365 292324462 124268414 535736902 942958700 22476071 11851448 549158431 560011918 547162477 687684112 851610196 865048929 687673712 133035003 486828176 217113543 246110873 802056881 82991751 594415710 422831014 148899868 964186852 325843584 191307175 776551610 286630417 594557663 998493305 751455814 691310825 905579974 104892505 727609316 823950831 722148454 988467296 917562900 355484792 777684649 319288497 886983215 1015648577 983530071 121761245 50718830 309867404 852057883 72252265 351335747 205502983 47636351 448459831 1028546975 162513826 981507823 891317592 349390383 411615160 278010228 290058848 156653892 133254697 737971338 312713530 921469031 702807708 3927108 239413998 67014500 863993019 958563390 138921762 415886577 337801217 494909555 942292433 907413165 975710922 447043063 21924217 216428494 675351967 449524906 39737702 461124910 109391151 143834963 520301386 1055654783 165862238 306395757 86094635 1072463956 50589852 176854876 88057032 689018810 474101549 337605988 318461021 513469792 345701086 511900505 171018220 860291315 2318003 41266448 394144585 870234043 674031421 326582603 577628289 915866292 543383040 1024712287 1010217254 542607064 224436599 731321149 343521695 37856098 125753196 660957990 648760456 970691184 732663338 560552668 735410513 504243467 188199474 1073009265 547050007 916009202 700556767 887961205 378669085 776056901 399869275 595626023 546254032 715183805 459691243 987147762 526512342 861860238 437909303 169038569 761949884 928324782 908869309 266128135 718892789 742045794 224817967 337491432 492798854 45411061 710121350 1049469070 826107735 9674756 130521653 206932841 454638917 838761905 399228946 217693254 565769635 738790256 161383738 409535099 644017652 517326980 1061633276 730389178 791482631 345923809 992108423 572854890 627256746 681368057 755871195 531761992 1035464168 193706434 313358275 395568764 288541257 230831247 467935793 1031186153 865843529 606809741 488360332 2947082 254959806 884661140 26858798 377661516 250299100 585705555 431207927 383722462 300261325 602844024 214665546 152471905 887828196 639770369 831558705 637049941 504661883 343853794 517000525 319669963 112298102 861059489 376801115 998176578 67460510 861811032 660245894 1048536843 391482863 702660957 1003156595 303203046 14684690 487042497 414302752 445403040 500577255 10450208 211905610 603269711 162245397 842280169 393710475 526629353 306958893 241669186 467429159 744752027 857158187 682682638 454714860 1030676814 868173842 614230501 265863888 716171079 454053490 972495648 1059630675 931677908 48518308 186889270 1067717822 638254717 102034074 1007700062 305776713 1058617974 316749883 761121206 238337556 474651335 568607585 847922164 817715498 433120350 838428456 998274212 834299354 12989044 352889728 984912401 562494 948764896 648106735 452873453 767343397 365889299 4270580 784032036 750756112 385450993 119021181 1065113781 234097329 359697391 748865291 514790961 119344828 64901384 784637985 798347894 924273341 221441162 164199466 338720169 569006158 482460078 984071057 234500627 362882929 46554576 1008392810 660989227 863534844 522760841 133970000 383260912 1044134624 943334975 155187590 290149111 658979146 1037585497 228518656 528418954 55957717 794825377 587964695 676011278 892128630 124769073 117098124 974157028 1066052132 59106513 1018130164 325962322 317268472 573345958 122367662 602574062 805149729 231120359 232698590 35417098 858201330 232796059 874684063 981649971 124050300 679916111 1021902896 742979027 422565635 233076473 636926600 208347806 617844661 305799134 706375587 839641455 867077757 1058692825 412336208 665803317 673469712 919972203 135306373 541946287 950202951 517105022 426126305 616775718 852376214 159029788 460413761 436205650 697539236 632276451 7189815 478871838 982584421 704918985 731755532 906433837 745337697 16983112 366402366 982610007 988548552 313313940 375095299 524094091 815766049 402000204 469249615 367859973 293317490 1065488956 9254448 116390206 881477016 103715793 365479818 508460546 179724115 612129695 969744905 787930861 878180624 647866410 126576778 1010596169 274062888 190281614 65559290 163686169 199576924 148398763 474044293 885018018 222470829 782689697 591956806 70703396 481376504 803008419 217264913 265329227 686015485 763904201 843523033 512144916 119316755 827412899 65422169 883864321 587645214 488140990 573502956 393372644 701015231 708133224 416203019 901292930 738627247 351997195 87363672 968967410 339568074 3641301 685980302 66602854 543579354 109842977 606028257 1002564150 972753083 322477210 824450064 230034978 547594619 764159990 607120501 200329822 692318913 1018280215 826380079 450578999 361776582 745274132 980070108 679242680 510218853 449871193 784118481 833355214 767511397 384022040 526673530 682607317 182656231 208659852 588011437 705189214 469219679 432424571 166506614 913116539 409416504 725951428 368249380 1017463853 818874506 10826543 689619161 274519590 293979428 242719056 220305825 399803340 188820464 251755454 286737237 537114407 382798664 141972245 1005738686 928020313 244176504 543306085 963641629 897208570 554744855 210421195 74183672 1033924620 836337043 776183255 67343992 717600496 519315083 425963520 325823695 716486176 698265082 100019462 695389019 365250904 403464790 325059100 508524342 243877996 516866151 1036377167 666067316 281564777 156004420 849540041 528286795 739491639 168264115 77027574 536927694 441995804 565680080 985355065 316913588 25915781 985870542 611464462 732032792 350629920 290410993 807762686 859832944 357608157 666136920 784207519 11044334 250493223 837383570 833899841 766041935 761448989 513249705 401104656 558098994 1016867052 806718079 360660216 446738493 513019735 766599572 295558261 592094168 842510760 301058030 1012283732 415298026 210538474 195596575 775912694 949722825 542185014 755274185 702920404 285021200 942829459 457059196 154823406 373844206 990478910 53348085 250736279 72229112 195650369 201758864 184070663 598504165 532582159 18387220 78242825 811114241 470252531 1037721011 350799929 301868922 310235730 3224653 720576904 389213776 189112635 815075750 935885770 137930851 759784677 229127436 326443622 248980036 149455607 1018108833 135416104 624156005 990153956 34315645 261107901 767529210 945314594 871792071 614617131 46279241 503129577 974997596 464932160 2685775 528012523 902667101 951204259 1004669358 699975337 426418302 624016261 401375283 305225190 796403297 936331505 970866613 974615143 469469643 530617571 211892215 990934842 510147215 571873204 948788564 444990214 734573159 879151543 920403897 989895904 627005170 763512031 521554467 437379777 710440113 291050809 880686057 584535147 154857427 428307487 587796745 956688644 62297614 252883436 862559301 804995277 737704131 381848106 370208362 39852957 666566955 304383269 945516671 1056091894 751991962 175269372 164357845 837495521 1035618515 256258118 377774511 200600652 303062698 997215852 557266979 1054675781 578215402 140575895 549829061 793238408 324543389 749958607 167408766 127057580 725709485 163259752 230577656 816293795 655423599 269145750 390163142 725491754 7226346 995415551 50861920 22586806 460812246 832634627 904841928 531754075 289183684 238703266 158269877 310536169 123307560 660971107 940675356 753585142 686053995 574646386 17417254 431592685 12764 192362934 340963647 250127818 821913563 626855289 630385226 134376973 540108824 863346232 488214886 502075787 868747337 862253267 455215666 616972876 897897766 355733465 442073162 876312787 8457224 128714060 445436382 1033310541 1060728028 446439274 574569881 845687451 703258579 225715033 98610907 327925154 176286946 798569241 868708042 713937386 96852065 83515685 100436043 198781395 1037720789 679975662 78358064 54831636 353483884 843121425 548342518 840468813 163121868 489187984 911326291 471613545 912200817 749649219 257024376 205073972 810707780 499872660 1011150211 689598122 51637952 75971479 613464774 352905908 897836711 454110261 21244747 488686084 610030187 986559471 454323537 1057377014 952078397 1002471969 491030581 788579689 325680369 308913271 679984369 308494534 984955054 557204290 96642160 784737894 940032569 622135500 953407579 502303045 929571315 384203929 956006298 169579713 780861149 952157629 749452460 807305146 686117692 419681677 854398138 405992119 320474471 5647823 454945916 267115427 1013261560 216287928 112390058 699816320 559540248 427264943 172059357 728853721 1046682301 943769294 320786877 798342197 39908078 815198035 401102447 396873796 800320404 603385119 986119095 367681556 604490113 298894774 311044229 473469702 671896807 408714941 536206810 59229380 159570933 236969388 275373408 875264660 250628182 1065581325 660316445 65380067 104203159 978240111 984000344 56302386 882277320 776465239 572086756 591799144 1028503769 796407271 628377733 143223404 854692303 285050110 453648719 231022245 998189786 301635513 361091108 225078753 494465241 468283090 570947268 808911458 729708230 412074529 615364382 634346248 765166718 753052052 639108043 133219085 1071850001 70411123 489574405 681394423 895325675 129694309 266835446 461267742 55478934 570087478 38510476 626348350 989152097 421443914 1023709823 930478940 341062170 966400658 394675432 1020662444 786437814 136942274 282895740 833619469 539237013 660448123 753858437 589246438 583422327 826005037 537312384 716718628 500245059 855520318 94421340 738391140 678327339 1018771240 962906507 6900350 240456217 138733777 842942640 474451432 269750245 830705188 235378964 452372013 498787233 138836608 783705697 829153961 465661272 886517502 1033522579 301774594 654295280 357647491 498918933 233059442 639619058 149819107 1065426683 605903420 99887323 530245695 600717322 221273767 767735901 698480229 1007215439 611789822 972669768 114756579 55960810 668600062 147087964 834100640 642927448 459953361 694257960 444381409 796662561 387697905 654318041 34349088 870846068 1034407020 592145962 876970628 971863225 599981808 67563625 429354735 262203849 255884641 681606787 986287436 363683570 357297530 933788317 454363421 90568374 165191067 600836168 118230337 227684131 731263896 1073147016 205165434 769702384 122278371 680380863 505364559 634522069 640568907 971034722 481107698 806379248 623721859 656864261 90101009 958942924 65902394 683089457 987817249 1039974834 595535263 752950399 13707732 672231054 835560276 855225804 237178984 624963752 408575655 843528352 1027032935 385223683 782646653 252379677 713035829 164866617 513727526 562488121 81944200 925459824 814238943 160048762 834095933 64721795 728097764 855888372 140725931 1063572277 712519824 524122811 552455523 394422421 769479106 41369022 1009454256 949590413 841198881 1038530195 186167121 80038469 906169589 458908326 880297231 691607666 772244470 666921847 542710674 310260337 1054719437 1014646436 863197940 1031026628 56475132 950821249 531418691 448593622 132258390 812804571 691719830 414985274 212275119 37148867 193357786 817889821 190559411 840788910 224847917 83139495 905815376 277715247 267855823 447213090 50715409 71180944 916919582 623013709 114354687 63511790 99209972 535298039 271957724 344347658 207697177 1192258 191963031 718304386 973636746 36356985 207177075 970360121 774890202 145066282 411889306 370698891 898066846 389890375 510302412 433686094 755158654 790050610 153251406 210119344 821391825 96037964 26108868 312523637 176359612 267239560 913401419 993578229 182503450 543826803 267891416 346292826 175764392 8840118 675501299 849825824 434738114 248448780 912034449 165415117 269459752 766722042 363260175 628570156 618312342 457845740 15314343 212567035 154776069 338831005 831494575 406310453 922110220 249373156 53054230 24632288 364679211 102391587 81063364 171440724 918508058 235481301 370956772 761467461 1070262133 429379123 894592483 202863884 677431668 745966322 150194032 754975517 192113483 780044576 949063533 893385677 821789813 268505068 734946505 88135739 990475425 319377312 354415343 700840147 536221171 226046981 38327894 247739612 507645472 933283405 651448345 837654147 202541390 513669868 386359226 957562861 975671058 1058004789 616091847 869692345 644531624 913708484 814256132 702770028 37535174 574801010 296411914 126589003 814824883 419582290 811160741 526638483 194681198 653533191 1057653579 861776360 112883639 997401488 258520829 819785223 436536192 294572123 648622821 799584884 335523582 130465653 3236202 410205703 805210285 79642490 55462698 394140115 469785271 777241638 31082467 548003359 407609646 505025780 371995576 511197819 448688247 986221848 626562341 98700359 320040667 881684971 424520769 35916972 29755138 174363309 873108256 985066283 110389433 23663388 624846049 667083643 46205407 302934372 771552552 239298482 1992005 284557569 1001373273 28808245 1058402022 135266650 700659554 518857132 950667128 959240996 639744574 354311177 897651517 96365905 44400380 625483773 797512094 1024464332 868550732 170600207 647708840 396267164 782423041 972388590 636825668 797414975 165910598 538735753 379784209 123187250 351881161 47295892 510959957 500891545 1040514780 833291424 864254488 427222603 983136448 548792444 260454397 492524210 29636307 406655981 721772193 14836613 771024104 1047732912 887370684 759168516 403332524 359235887 266657569 594120755 47811510 809682915 267322715 942180911 502786869 660736119 813608419 672015978 204530344 535641072 1073312769 931922080 506701938 867329114 484022729 340404434 49870125 411873181 978507664 1011131040 253763849 1073193841 94094281 971729095 59747973 105166925 734051706 208758793 650413639 157054414 568075477 296789842 567998535 209128100 936612433 406318478 1003811184 825746225 175929230 1017941702 898927443 875346828 511885766 559498125 523288766 981697182 839629691 396641238 705441612 566698920 426948157 817396590 514573787 910360333 254255300 334483119 512615188 408836551 834618242 425826855 35123013 1027965255 461855245 729524422 799091576 175692048 36673024 468133029 95800851 760743221 419493946 557487567 106901466 331016585 80311419 594955275 890398026 419876363 991184672 761540139 958655890 919932909 452982038 803821099 633494471 313670426 39878494 890873209 749631177 334077130 778946966 762154906 978257417 261175439 858250294 321684165 397823425 281944817 623546107 436254607 334461119 94627762 645864616 925432146 612274400 425004825 710233572 339077721 882206701 741174391 862286829 185636998 881618689 243660869 392308166 816573474 720683695 897217013 97485089 602081465 465285768 798397668 85850564 19946291 767966424 984262580 684126155 173033282 134157586 352224921 655300514 173731999 820552634 778398264 1004392846 532661766 763929737 702121964 369926435 546446112 690750672 180220562 63588922 792334335 1022359308 30098476 1036376347 616897120 1024866124 242561810 914777456 1042933116 748400259 773981569 200092496 442817278 874400552 660515039 479877037 314896547 63972731 798284977 201222246 653745666 910450674 17989758 860450019 816586904 477665242 869233906 50163184 39772706 654080217 27752746 54609983 15439446 902313373 485310292 607925389 675245400 898385135 588342500 904134784 747905881 1031703907 608931788 766124500 546606957 627726356 78490995 582497364 790931057 29337844 989636016 888771647 431903705 445264285 643951351 1014610372 248566240 289258565 278533810 174259850 51678744 61314037 243735276 1046148878 18114282 997825094 83753137 578901323 941126487 805852589 543596739 305535206 628357564 742079337 155271498 93388159 34451370 23453104 487908260 699397621 875265702 764146731 281572334 897314040 771043071 796327405 428621186 62284714 298728236 624699993 69863844 1014449790 297796422 461933009 1016011917 238750838 775644448 711466136 489982336 279689687 283634358 1003369133 335903061 30888124 351763364 585396288 891729870 520925674 106857672 578909162 574620157 417700134 535624577 976567169 619960357 613074081 1031918534 366033575 630684622 265477112 279275779 538507913 408670891 912245366 760543734 574500094 766341227 887514020 903580421 972133531 596660820 722996420 294803789 102216792 114016039 299973692 415095369 326063772 18716199 436919177 178172585 759700206 350821110 814881292 843200192 483744061 254912728 148211068 975756554 290436441 106681386 350381910 601175187 944535669 990490183 527235526 730387083 231667117 876702133 931435714 789839724 988924296 708855060 180590067 6922302 576564741 584822277 38957907 873133053 442542738 820986393 930934256 692990243 455704519 843901264 85705871 456555377 748462280 936006524 549999133 877898730 918990413 681981476 723324910 62852953 780189609 48391197 413120392 72121181 44577821 711827800 788786776 579993398 105429158 1071832825 1040540510 488039197 1025564225 676468594 195915157 436117167 231052358 133440119 770029909 576009887 929725365 331795418 266486861 218597126 207994063 912193318 15648201 796884055 427875134 851057441 45706255 473578982 945731943 310694917 691945313 33111313 871183046 922596004 281858799 332735206 582298602 1038101960 767099249 668426377 44481764 225238515 838702921 1015969831 530964729 733039417 1069173318 883212603 450054186 596723595 983101629 627493281 219755679 917578107 618844162 145841538 1004491766 972886059 401302385 285057372 151843741 966625004 594603810 614663867 493662940 923991730 310685011 979242505 355707520 152011655 488019513 670949895 969719570 44785663 829527084 437893984 151782534 687712724 996530804 207988882 731368274 770380690 524107038 441263551 933590807 207068967 688957997 945525889 429565165 556495940 952438417 420275175 694232875 321006335 902306877 392661712 658590700 577416220 306984159 415535356 630025714 193916997 411983221 763952977 880455359 835697897 165170609 473117235 723091623 297528766 638535128 753119500 113684111 722090517 308506302 568060542 382967642 67661401 801772135 101344394 571492066 1062457072 1000392583 1072392260 876323527 529590006 581836574 1043138585 676194433 463723729 167002114 748299177 143211298 56992209 200901202 1058393757 803658314 795597965 563041109 520637933 376549894 317365266 1001026602 421005188 330549007 971030405 388720224 194871323 593538969 921867898 444103915 338188176 251832728 1014014376 607991357 168917256 846904722 111624630 148811726 276984329 484025050 932230496 833008423 527159801 51297077 553425672 373805618 1015198257 583795071 53596651 709299759 443366745 235958181 292636631 312924358 809145791 62470696 65421977 699787327 913396483 1022515256 196349969 867876285 113723723 244852278 228961497 279539763 47754439 942346625 233329554 543895201 450398646 286406974 267190410 920626474 346821972 15494356 994334002 450585424 693073618 166270481 170360296 718307744 181407157 558596606 706718921 785039111 674930906 961627488 958629324 772625210 1007128710 1066414399 834300027 85335058 1002016570 837364070 704249983 589994115 947961765 817728687 686719039 134503601 754654028 458807411 415470852 477285658 713554183 745154152 945082419 558174770 404848521 507472315 802114953 879850405 333545402 365975377 157137658 42505708 756530553 484438177 1021900933 921524348 136582061 559703141 174544293 382682481 210167820 681785932 380604455 501565934 365673078 774250867 762607042 1070024511 163876205 391644912 38102858 1017994443 642028056 125451438 670305789 691140016 152870525 278326944 313576479 140372696 765607532 786566016 314400477 495998839 1049151324 140957097 216622030 567493695 90806405 498590810 441902464 699499524 1013558194 680806753 387947455 1058385621 384767858 707949612 610485475 801771108 153331715 1012011221 386361105 274360547 724630251 1009563814 829402841 213974446 339101397 566507344 512547105 869883432 778289931 619738990 47772233 364778282 259409399 802188326 165990139 744138333 956430702 365710932 1065790912 243191641 920273722 997372634 630552137 487070857 112913686 1060517901 152032054 180197313 680460521 996220961 383912614 322936843 1052607657 890200953 816566182 210132239 96019999 613770863 546953450 1073080424 54040614 1071656273 629490167 1072608267 792426022 432090767 991672899 253602030 884612821 334856118 325611180 542720414 428432566 164813585 910554032 695855662 902039934 171472962 427211668 1006039084 79377477 559260508 981555505 498751472 593920865 839501086 202457166 452206636 488354731 300978039 794389063 571159048 63083813 1028913136 823542517 784696199 188189248 622585835 749669465 249297343 73313577 582701853 242375602 521044693 596134840 724306886 182592380 261343745 1018328791 619212678 859576715 736501271 300862040 17363706 183504970 385894044 187463027 115946095 721340203 145175183 194505587 952365178 66130052 781793209 866905083 818692738 620198475 871213297 91469659 972054889 363075326 807777787 754551017 10804217 835582254 15552994 56476328 142121365 720334817 249862915 536142206 403187314 783169249 552510439 549010259 558238486 626767458 236211772 805641487 900452088 836833015 1061968298 365382444 690266378 438000268 787402158 1069181778 738049379 91674633 880768990 348865955 137368380 75041535 481944450 100922367 332741246 966207433 293064194 51603531 690634762 947686946 939202867 928101242 848049844 1073591409 25064443 890802371 31206789 118046055 483693580 795708617 181244527 499465851 531863749 240312247 621962301 263450087 363278017 387172320 568635971 875782944 790510061 444560681 638737896 58892235 469376406 493666250 965293722 696824854 743538969 680083958 931797388 244772489 494410287 368440087 291254470 1051188033 121672242 804644834 166281611 1031453359 903294951 582586805 419624828 884202012 1012052806 674030468 161557663 494122477 361981300 732051064 683167447 379808300 242899926 657568296 708415258 865545898 529743677 933764646 1034721384 607929507 284032796 401508715 857714079 835922699 764523262 327845589 533351285 840196234 568133450 794637489 593456956 566722650 201615102 875509534 1040790766 448959382 960914599 591445271 675975266 822219293 241925599 80849566 188930869 913220532 507362533 1016658605 222753625 92994441 187199655 1064758078 161438403 46782741 766262576 466074043 685310749 964087277 758070475 579133067 943711504 743406798 339937589 816716926 966227348 322736478 772761924 128106151 675962546 320374403 217160251 371925017 159860650 644861409 183079246 437595786 734887681 541271367 296101280 352020975 184058618 443660336 555589508 90556647 512563790 564190498 625640223 982904912 631533829 125093207 451849084 1026991739 175613884 1010515705 516140522 1065450178 842160337 393310729 803422921 597193641 950012179 995209964 721445000 1066540253 669274639 312571212 853688134 81078285 859241566 132609615 1034462427 613225944 241548811 929663277 401440832 442142353 466136914 114878542 831091038 92081573 333231762 388524159 834465578 735421119 903414691 88667104 30799926 1043568374 1028900339 344959353 694613380 868517292 161958314 75473972 712259946 578811284 699570846 869534181 874519319 180348033 950177808 433345727 1065635527 208465859 891064034 915823939 919061599 97700521 266549391 398351634 578755126 998309844 457171969 642747799 385914823 484678216 1032845788 931412527 858982920 717015720 820223143 778286012 781953976 705514271 730860760 806041426 966253549 77380410 413912066 1019651960 993866420 997157424 334770613 546382564 1046893456 580579140 510969636 603489857 608756616 437430837 768581066 831870948 490561198 749418695 207343566 1014271465 926821008 341061837 56720735 682112563 1038210015 621276763 710883516 739164618 908073763 492726025 1056769379 1054471714 1022010575 895515476 959196491 94037882 260724016 787024140 902393164 246205644 447050326 440248118 546146948 456946700 774277634 849484834 819314590 467290656 925947569 744045358 737098519 159471701 84242468 620247552 35319343 271954010 261625723 128489664 51137135 834852506 962921906 349805050 241792082 971581116 22178822 524720298 842753689 360331596 547066443 775035600 544563415 495174133 330773929 329552748 433899506 887268148 396373530 975666485 661904320 534220695 311044391 376636191 89419766 364115338 536108722 750370582 709965937 117721110 97047423 388852881 417212179 799619268 982008544 650850334 342792591 274191618 940702199 874020969 984059743 738023406 1005619172 843869733 145121517 754430946 127949017 62609712 623147352 779074524 756720090 569350577 980540337 822757403 1058543001 227702633 982507999 327413602 486386496 563043461 480016305 831611862 771569862 128787991 714633941 70372286 1046038925 281801779 845301226 519474448 187964127 940993787 743529275 344619758 244311476 71293 665791230 948004906 1010117396 223788913 110200003 660401321 881311715 55328844 587450341 619003913 549135930 995752383 991987507 929039066 150731034 272237074 632116006 375482458 8628622 534205397 799506028 985808033 359536726 54461298 307695692 57127027 844118260 381804817 932583271 195651980 391781527 59958213 41465436 67203011 793503050 701237055 297587555 764135055 899043057 1063463439 510823352 303377133 951285803 949191331 645430004 782322524 141833317 344092835 15716587 360642832 739417670 643553931 468629691 431941986 694315219 981929227 629024541 859742409 1061987862 741943297 955487029 158652076 999352941 613044608 633651315 837466429 576354977 577976454 422571385 110929026 677156412 551187544 209960421 580675930 260846782 8325474 3446927 223439057 1027136459 67636142 187821244 84031394 744475209 1052539577 709986757 987958941 505663053 255480874 155950792 476976964 733607300 394562303 814351318 656586331 684910267 314459642 182538974 509578379 511355851 969128859 738020738 378246457 375023072 567003763 362054122 1031245097 88412319 49095168 144929200 949945779 1055336438 43071250 936856394 983846287 107693837 714829243 287284532 864824369 892701882 938937149 106856372 108248913 906673560 645313507 434808546 464489668 228907827 96624722 169940025 448681878 805568994 833008631 538056569 364832712 887447697 819716933 214357473 1038974639 945312818 743871020 765418914 344711184 1004183271 800746601 668532172 386903780 477653063 617331984 964960565 642453978 466349903 282353448 183845159 297758967 686240403 529062491 1034296105 1071991164 857609890 996086338 714247004 667795307 271649317 1063441260 384256915 409338221 95956778 109967643 850605364 474707381 1037747808 349179855 961251364 887679831 944070374 259044939 423733919 703828715 367269301 1000537858 616771255 568642992 862894604 89895669 338256765 225632746 690880223 824006723 930354904 400236061 26751244 173527111 217864890 242557325 478389571 17139715 389536394 85820011 125211647 49442305 722760773 917008446 839064700 446343468 821736671 400881041 1031248312 1021765717 458378814 254045853 206710182 488784888 697989709 145493750 457475440 520820280 728898075 842861855 463030650 922027785 328109996 377659424 884797454 642848903 872898911 226492786 275464276 711467921 1036454002 234002907 355725782 712952674 959806859 1063311675 582529482 506155224 880160595 147783706 547405977 647654245 82829296 798285222 1038085706 203205504 92493147 1041535872 956019671 1010202162 41443843 74391512 434647944 902665775 590078383 618428218 36874862 613422990 36857679 802216043 326784115 198995142 767214149 385777369 348881913 120473180 462388347 23639698 305439814 527432524 591101937 489807665 341554415 288959434 893074432 684020073 489002690 586144979 602627159 598435070 783023848 22733619 940671901 60534080 841092471 708811229 1009626195 37848321 1070042587 178238135 635798351 242769909 580299511 307051050 798530753 718206824 142639329 54277299 534789240 243822351 238593267 379507646 45044755 770236049 719152072 1071102216 88694481 1050755080 281268021 70508106 125416137 805197093 623273047 256051917 166018340 523815021 759863598 1003719529 111251747 698329045 18409085 180116323 524205434 576206312 820769840 514512662 6385918 575254958 379375571 443204363 737998316 538520137 956761765 866139934 181100684 944940002 842019967 401803864 557923606 494527591 247232731 453997284 269875238 1061779003 330239042 634056338 302844327 18040834 1025526720 296727764 459800986 1053397047 411840550 998061094 611909190 1019320228 42504801 754811209 331624175 685072985 245951566 984017408 690004812 467680873 599069055 263780708 916214127 16006219 501008779 34696163 161053443 93397938 546201361 71798543 6025574 549291296 855937778 884046408 186862145 1017568907 225239185 329544900 542991397 618389262 249577236 356525055 667495369 250011326 1025330840 449834691 843071986 30972718 205104655 47080665 488345712 1069570341 512895381 826488847 242710613 319133997 291777687 925574485 48355452 925754106 652389205 791216981 40813642 322826944 742070571 4913715 586369170 724443754 892638404 1023297134 69039750 286263857 1071710823 321488159 946220299 691309912 716349373 1073095462 248663854 269073355 985950228 761862592 325364363 136986428 365320546 266088686 658365881 240150741 914867669 998867482 383173382 427226178 151896128 147755024 448396497 774853878 685489847 770560754 593784568 38222526 723156483 819620305 35360766 514648277 1035193325 73652349 637950296 241982187 465778716 392474822 258982372 117446738 716779627 1029802120 1048120780 809486684 643334620 480632276 514663058 815303807 168109556 970845445 50480334 715776920 428213454 287942465 428138865 648471057 1018685510 76736678 385030117 846923537 37815301 572393565 135799461 131839095 331498788 530569917 864416315 120240458 356201111 754246609 444991548 1027177918 1016710873 605731169 576811622 954361895 464397936 1062594331 461392654 219782802 301720974 208177619 576837029 323953708 676644464 683611485 657666009 1052730713 1069597056 379868184 141886377 13434019 1049538160 762938361 417956532 152386071 185439565 729962011 51109183 1017765729 452119345 362730548 1018695987 658479082 305993001 860255450 989396957 624164469 870610385 589998842 899639462 938286559 160703813 794486849 612459032 331054556 1049418368 820009896 897603203 664977480 673636106 876894433 247752240 1030890990 246389930 80065962 442607937 924677753 1051333816 738185746 732700706 88449620 338030338 659873908 253768865 489971120 563540173 368879919 731368440 459925175 46180766 111841010 988692205 961865141 814339336 74304880 70681313 202589991 618887500 380363836 1002884252 426439895 170704144 247098593 973908827 946950423 195143209 859305672 692608549 640206743 1043371629 225751389 456856962 1041996789 141793896 129176164 368407100 464346955 760028867 318085291 64867648 1029099320 190184363 636193015 1070519706 183062964 1052292157 892535956 774288576 10574686 441441803 1008011784 539516669 1028355948 120039504 966287072 61405609 77415771 483458116 99671081 395946421 984966168 1006552465 845785233 1037298309 20553260 665902847 292993917 321209829 734188288 434613003 956862187 66838722 910185930 340182804 9013537 718207120 708451044 182084279 1052715165 773435231 942865054 388201029 908440572 282557401 559672298 863870509 894494583 67590022 660403354 549641205 328947269 35170230 969741882 582010323 415893445 253449776 917514902 680143335 192469582 473868288 162605017 1039164681 311058790 524263169 298818980 334210144 345693015 765126561 977992499 542537614 514660540 422575961 792545157 441410191 274519872 1048294757 93808524 484725393 144591400 740774224 894288785 369185562 594491453 343897880 265619326 561441401 842760956 818494297 869964486 172492923 882481871 349890688 1047448130 836259806 1013692262 678448285 245775598 277294164 239302740 724564384 824000859 1009711543 1060064883 881886910 43788027 1005353876 617794017 375589434 627307232 788893181 561965405 233801597 363472607 599902158 188393892 502891825 502145244 150237683 606096003 206058946 620448311 1027152109 657203131 251689506 251296935 672507241 981977201 845732935 120694198 568233421 139992944 524939892 682104742 135239479 432803804 941894705 325840464 422380583 850745404 26039251 395254239 642630355 404498693 171785331 23418318 285477581 898614857 142671482 81107651 97872475 803870265 30970007 88868260 662035594 909918379 522703851 987061923 862441194 427943708 1044094381 31830704 483964178 445930728 503971564 683673877 891002839 765908210 229275058 838828220 312621024 125063017 384053706 470653830 570260518 53498165 931752328 868709872 971416599 278797220 18340990 569545477 931220440 827075285 452813266 327091043 101711373 8412433 405027624 847292519 835252863 228201410 924967785 133261105 632647923 937634695 345935704 195267302 342340633 708352326 747156926 623405126 349331287 696886427 274605036 651625121 84482712 584538116 414153207 252127363 871058938 138738162 534835333 314548263 944053965 300034154 65032158 929329692 969004693 104248592 409493391 242163156 820512275 503702521 278156428 531033363 170540462 196215737 910454587 687475895 630524131 882003869 180962452 219132289 556804343 820736242 319167793 335276069 329124998 164566662 228703742 350827469 327123356 466880196 964353380 248963783 670317630 7115293 713932542 292857144 720406783 761044211 576666297 243162396 889007346 275704166 76043306 27823574 744126135 791185507 580452190 923468917 11750870 683956541 251567820 468637661 961773443 279898883 166099688 280064702 430278530 439594209 418425811 479383620 85449983 314036237 429280574 363525767 492614869 1049599398 396469952 1052278031 138092234 257210990 982200042 990226832 1057053133 995710967 616987573 358849670 200067267 241878004 7234954 132225377 835477351 237564334 2401893 477240241 892476529 495898756 98835666 969831258 1073598289 671448772 692694479 934522675 59175909 358538883 152011421 575592629 860608404 415894208 966050832 636591295 68389424 561239601 745001825 807660640 585548496 1035233863 486808907 161737517 579005781 769262187 761705110 616273708 435464577 1026733116 650825113 494848424 698935180 416348719 884407966 694885191 1003473688 544763694 186085657 317326920 416762491 298307929 170006968 537514369 356999031 413000697 86116639 61890544 58704053 331010999 875629066 249636244 558816749 432587276 208479937 72054880 537609036 77356031 869823061 500419265 950458875 704813646 719645640 686136426 999789894 254834133 1015661412 607847978 211972401 997989348 343516711 455386537 459123982 949817028 973794732 894190534 307115033 606961394 107499746 525255767 65726074 510796076 19851800 123465703 907957777 560487418 452466393 1022881098 490898497 887814635 655573245 996578253 732830602 954787738 575128318 650966897 857965400 182850364 560191183 998364026 272009183 1048351532 725627711 243665507 374385416 677685061 267287009 1071732216 888441631 78235009 859860640 191700536 766089393 86147773 993491396 545687988 947815630 272900694 579615175 784473704 721198143 422227888 1015282051 1055102498 433387581 1057957763 881088398 100421600 85888997 191007461 578899778 909298975 714045757 647863701 415696509 437440054 717908494 882531614 600376084 806505059 592977978 784661708 764384307 677539216 416552042 927369661 10926793 181637651 350291157 698284261 1030374709 147984009 754751423 51653612 795161417 183107955 700817038 167378253 184779395 224262507 666174281 962879522 92293972 396763682 564098034 588831247 925498010 205087014 55457448 245741414 495703157 737575894 191550119 797475507 1063497127 840175639 884153947 178691259 551101647 518330314 760099443 681066042 748553203 911782443 509967381 472843183 575368625 675553506 970313084 556694781 932364729 641810492 975748395 805782127 1027266177 421644031 95990206 143290298 423310151 197927023 1012438885 240486356 349909352 503354592 893107271 139749449 885788279 84965585 675708579 697259731 143493982 539084907 88095064 341149555 905702568 493000287 603999868 1060100124 385224403 649005883 689257142 348520925 583715915 819794575 308779499 488794426 234369691 843163186 1012081890 859098715 649234650 247687249 429039094 368142948 116231676 237953301 411845315 123983274 343413303 50272745 13309769 842493392 744375261 102723979 423605386 461525858 619418394 659146514 950396432 1064315347 338783312 586526143 242520047 362546470 686478111 45646564 1024295146 943915605 424462054 339700026 144604475 453585090 222572448 549057345 699026688 36004999 106985226 595339859 535993149 501491669 65377409 468678172 104678313 904458396 159040736 212407491 587522384 63665492 29931319 244853898 53978588 677586526 998264157 1004323872 798680616 57887785 801955508 828040401 893213811 446159714 881957915 1031594664 157302393 782723121 889102685 716254994 282970256 435180812 861910837 252099583 881047974 837303698 56206386 729323390 853570536 432476221 370308118 869694440 925290398 967007637 914780951 439672603 734946609 605120008 297120550 63007283 304884090 51073885 81852183 318686436 992472205 1066423081 675698739 307430892 314431025 234982350 52829031 656315624 315221701 265129320 806410771 647218131 807061220 431228097 929720129 498559747 818412558 157128220 720130069 525338243 690989293 187475041 152387278 442525121 462230398 100579906 857434388 481847081 781700952 673075772 293847803 639346021 835910580 156105562 682835035 886915356 38701738 237651476 818214575 510271764 619387369 739424825 1038493884 344645772 697650676 984320368 835895592 23175520 1039530618 356666276 350218515 773080211 292538420 645189966 584498660 641877389 898471616 781620834 468898853 625585197 529236994 952269849 60855948 711764884 762680342 495382151 734015318 237966343 387560765 566007084 326548125 368137670 87779567 548023563 539644034 335137576 899742556 346042006 214944623 353656854 487797470 59462866 117342539 1003304256 138212202 450517267 1051025579 532539120 540587345 961381254 454528047 816879 1029200091 40707149 140778144 1016000124 928800997 218674404 762809119 589043842 383222005 500317595 524877044 296252912 564150530 885922767 915768967 20868162 138010081 343936977 562372399 17356972 874011232 431164153 674299175 427507410 40753624 248203756 855698779 250523246 468206393 970391718 413249758 694675426 1035547436 564885790 779327370 576156615 227053718 235858843 125625995 863840361 172299163 468256817 609129198 239232155 670048667 394297911 849450989 511333254 300798342 489362481 636982454 648456733 486094164 112603996 677878369 432762041 655491674 634735089 27959277 752470247 161137939 751302972 148804668 940495037 382958906 954562421 253293039 408862972 1032790192 391460593 66116335 233004266 450948435 739131285 398890930 35104667 849682829 426231055 18232312 813778498 274121094 780130417 79150512 184098283 816214957 753937519 757926380 858281938 721060324 783052048 203756898 559034354 119621293 710598892 303935591 1073448947 511397097 527377568 1071201421 88433962 581906102 541754293 23194588 187754406 401744939 967286854 229536760 604142492 974332259 102252427 767683017 251664359 733708056 551576484 765034718 516403988 918145048 1044747194 1024627310 481586080 566560615 704489073 557485984 788621623 671219982 203695139 690419401 369756268 481982987 686419616 680229681 177237781 36390443 222403797 87779328 171889373 557927891 882261299 790043810 610880790 460205581 859001173 648238467 344354437 383544320 1050152672 861764243 770007748 1058906415 685016356 971295274 597075082 393694908 116716554 510083317 481574778 366538660 758457641 653067867 504147405 517505530 414379664 750215928 694985349 360475364 359258566 746829184 383859150 1012520945 1055985999 11537897 325318769 49361908 828237383 794235314 329208203 58912297 424857130 112292035 278158157 336101228 565165375 72639014 1033726181 1029421702 323020099 595607860 955113419 351716060 34424351 180818296 95206987 368089321 630620168 283288869 274141319 876187864 649010667 491956611 953486442 392300782 576413696 932854983 387014147 886119986 273403098 206972097 633288982 971777578 215978889 359297752 370362668 1030712084 745639877 81192416 46325373 718714247 525625085 250560007 1033244306 135439691 775048835 290877707 938394679 650341198 792080717 888607778 796531929 843770176 641461019 927790026 652224188 60067798 611782218 1017428622 647386637 782793403 638909700 1059114033 974813760 403842066 1052465547 949693794 596422895 371442278 1013491197 308810650 894823062 709734798 949299874 19093759 245406366 158817765 131686901 970854147 766744542 188146145 576974629 695750507 355124029 473118422 797665333 789812706 836964097 219389523 81895363 164531788 831988728 544325019 976644689 1071988266 991964180 1046926121 105005919 636111387 450420458 374216390 814900940 371237022 485671466 854820850 301695946 138256756 370412983 522478110 917214712 103295073 725756546 902929093 264721940 667697055 954953894 171774409 372465404 628228541 941913171 151678452 1038383451 954955235 649424830 920971877 68385211 615651546 250377823 573816602 265948732 50090190 910196377 520723886 33005275 839908155 907913194 428334697 853033366 701113 731425968 858074108 276519978 637793908 574779798 203704694 994765416 12801564 106782077 847360833 869156428 696555218 593543117 291980685 907088576 332791155 1020991683 944825046 221035915 551963914 321141608 753159286 630853096 667680953 883901182 568877192 531909350 321559638 193334506 353411604 430049348 827525248 36911348 346591000 280126067 808477178 219740764 1058435443 762337542 602389731 611604245 259110464 859355309 735110742 464613033 137389288 195061907 837511252 188677214 142416015 55210687 669608736 461393499 842754814 731039374 639440909 422483708 814553434 1004613060 514369410 265147825 833501310 1020832989 464217283 742556972 755595218 695374985 186856522 198236008 600913528 134938367 677732172 986502164 416361905 882879694 329485629 250383842 868140365 400138764 110712892 735123879 462317072 992349359 83282383 447288838 212740914 145432851 408226301 787903716 235861994 852314731 465566892 592300967 197229098 135508419 897911263 11294944 641568526 316983378 798296965 789798609 176088589 936737772 381537077 310749021 799856044 930923086 870208870 262438233 360595740 679495948 34671416 67915209 305093286 417029330 667967307 552084071 427958924 220917200 913099212 373426698 526007409 790052341 675748808 437740033 38297600 770880050 76828474 956859867 10899597 648586069 422377955 376401366 380485261 255115127 1066424211 600687282 955439970 54385383 1019128638 425268964 784122875 914470537 267539368 345490744 256169153 468916453 322994665 276705079 567059618 115020495 425155796 520738082 652899743 221640769 938980329 1032883558 499208133 961174394 996984831 856952429 381513037 77328072 636944207 34583625 327912165 217129734 943815553 641873917 1028749896 810504235 96955344 748227188 291119392 204464829 612277952 719587702 172694378 217226495 1064004878 416538180 1021406620 628360013 189915257 60914662 296415510 697945848 45223465 812138799 444509897 104458921 188570150 161490453 307052175 819273709 248753611 1047088204 410675690 1071770977 115841625 516476665 1043679870 253690194 39682789 607804241 561718704 536956888 174908536 944780081 936817203 117214913 1025180772 213998374 753199227 107061305 954680704 690890925 176388732 686032443 998514198 355660143 1037321972 1068925888 1029201326 1058339734 341328171 438770297 279614007 26399248 1023071596 213387207 126801394 408096326 650411390 666696084 120586461 325182282 1037001211 832944525 881743338 712410855 806062472 199600356 150573562 90460293 746182563 896571408 632178105 584210809 945899824 759188561 310270589 453122092 88315094 818977685 347902835 434208001 111797530 107991037 62174224 139530956 923874886 726524921 904519598 549963092 347017321 350139229 109051164 659354730 678465126 522326256 371388897 1060999672 967413472 970270773 143164478 721701249 510363299 283330994 292332101 536312904 630283695 935071654 724081291 453011654 567098782 746546199 867138772 838190328 910033350 839630221 931007562 185300266 160758541 990262831 824527438 264415617 730028053 243726060 969635854 560726572 506415296 831407941 682411727 905459777 589053079 830079649 839303044 98928908 555453771 536442978 503656642 158723519 521991693 861461295 385559445 380687895 219182809 689568212 318112838 349915977 396287772 230113906 143514332 578768859 726393411 472246972 83372876 316450756 8011903 663846555 574800216 279733933 164558845 146042161 292190560 536595582 395896961 69225679 180093866 929813990 754450706 1055483740 151847351 453774231 991400563 353950457 233411483 804043513 102012898 328959905 587950321 618060182 61266558 326589968 883401356 755899179 214172497 7695104 592034917 621132130 330921308 778858626 627354669 518541323 890404414 1004153940 269951263 238780530 721059491 975820731 950611528 917794250 417249192 288897555 709389821 391504541 106297132 966524302 213447191 462235665 485352284 772266374 339947263 46194599 1067198068 758127814 84557563 703613959 239703707 695701523 30872343 867223931 195041401 168443680 184983312 337421206 247357384 731853107 588277271 543468255 260176953 26236363 50236454 596548754 486791038 508635789 896610625 269010842 1037923510 139238508 526193772 180176682 304995394 44659238 900789799 840245042 921320187 728460559 283022955 649095433 820553020 387323188 1063004769 555452489 207392937 808791578 102741466 271824422 224189685 469324875 869060597 134193798 766781538 123757593 487337889 505073586 279084827 543359633 688859341 912029831 938519279 83354931 130242319 605056571 793243530 566248036 130372820 691683972 669869386 748008888 839009313 803288702 413926248 286898265 495115224 937914285 580088519 815722079 492764976 669321462 486948323 465420842 726880639 973832547 60771939 382189546 570341232 472231911 387568773 602894981 387508791 936714469 171146926 551490453 296083087 105189064 786831281 59833558 4694745 497523051 491184600 1011533069 583417660 763642597 842775031 323923611 569792579 906399764 343221149 616640045 718402608 1053368650 297106380 255643302 22413572 712195430 480459854 1061398541 252267109 499218690 833828314 324048134 261897116 585606937 272707288 40641710 578803719 626697076 865908725 74826156 189599862 97763704 522755718 458092550 63697737 869286133 477924397 645023418 47110927 1042945925 860399648 501444165 567285267 629112129 564840371 4854466 82335478 431764641 492951755 173861868 991932796 823913259 194931770 419198693 316491265 575073109 450710785 795373703 652838280 567117586 17923124 165558271 53968562 334098669 715901704 220938575 784243681 211570135 683990062 415882863 897848579 1009098575 857182209 113071407 898403729 533112876 291853655 46932048 654516973 686544472 821388850 959157128 599522389 317725565 226856794 470641116 501259357 434735787 308478149 399160647 1039359444 204414022 1040367874 762813139 765269897 907348049 294496858 743856845 497722613 34098495 953265870 893363800 943942982 413192882 847036646 92348222 842542708 444783863 730450515 462988415 363616963 511372845 758903269 483484843 22185857 404586704 336930742 312386771 813408581 179590899 403504308 752667946 964474696 167162717 961197033 309750650 505372220 64222511 908906961 920702670 588251507 331976424 874055289 460213562 431705731 341130056 1063508949 175268898 222182908 18347248 793503138 405998816 826970506 19464951 138962334 118747311 698968173 630066405 91676157 488986276 17423620 810690296 1016739170 1072612493 936466614 832323374 115506215 180296069 368894738 508054632 1002945325 60529988 960875126 917258111 216231354 419070663 341843719 871332086 797603782 751802505 435009091 405557821 179940495 24193915 852214246 36967958 498839956 1026562803 26988930 933926030 904735477 189003295 549949507 83079121 179238705 772888443 200828926 337181973 481364095 993388853 552850475 349050178 413576779 290358121 808593099 440643691 867225156 27183667 537475247 353706376 469541982 375687941 1021386333 1037773439 166829795 344819216 95012987 553481655 943893949 87798998 491842891 552229592 451384780 69778605 475657865 56195157 242683445 672762175 165000761 531753597 21061183 309951621 390769184 307266007 302932098 879831791 817633643 900351181 253466117 725997050 746608170 764057183 809409307 678726176 941616904 314078465 414525875 690588899 541808879 951619565 126289391 1053857493 278538564 22263849 402923986 797367913 353749163 937918334 740047229 139634613 82124257 403287001 40078907 1020207111 313354126 909193130 144966552 254344544 484969800 788042676 63435291 1027421917 935605583 728080394 140291963 655028624 669821606 513239676 525390876 414844228 934022923 777326668 295199179 438215839 116468086 616858129 967227215 380581385 627715621 304472745 292415175 68001967 104962895 1066909707 137073601 169065356 583062989 5479420 722635618 750612892 680815030 317179699 268034933 278133098 975319336 394613214 852317962 7585590 668948624 379421995 87523339 3283006 674618358 539882836 988826264 493825565 71308567 467100329 578090496 385282764 713216311 525714194 367313834 656806590 280171620 531296590 676180495 994590103 828033452 308891892 512357583 941964957 405081735 980064465 717150815 932208927 75725354 439602168 434617683 6838316 992888057 321683849 896280550 667754623 1046638019 135605704 141999976 732321070 87566692 416767572 832524484 696899655 574113278 26467406 211884596 457047741 227496976 470256931 131660311 821960249 746328239 917341105 950251872 216769122 539383033 140654547 296769434 618567294 173605119 210215696 1036927667 532025899 622721065 395296126 153588963 223117996 343267281 676951130 852451701 819849459 529398132 512989441 938629569 491277085 176185949 197769045 262703384 92770527 96315704 32704364 509282050 864167846 474704998 553011205 29621318 691385570 206473829 957487750 25218164 744554548 569750653 443464943 529295594 37987790 444865432 965654916 810226728 138833447 1029585053 252533674 320384176 212912966 595555706 197940394 791996663 728584711 958537934 487409422 859425862 818946647 415264051 620273817 323673521 669956573 266989986 1046757325 172353129 435284791 129717581 239652958 447554932 171701366 566216222 678967427 942795358 682304199 446340216 601711600 425869346 152178988 761626112 316225855 958863037 420577999 592030156 1015756665 57653764 612731245 610021359 730599662 551903546 1002298190 13721006 872775710 157339792 329828292 204424711 440884934 584949923 75744066 334032273 407312004 95675187 593911372 987767006 411037993 210198950 608108864 829308619 608037765 797374005 77284214 295568807 1061591874 409431887 579018288 1000685770 1014711930 989911401 71782424 303905043 251961600 1009404719 547835457 506383743 573029974 416355131 747908976 559333454 316319174 881612180 483905664 584596732 304250461 25077460 138471898 443518235 341100998 750610288 424453869 910951075 701022239 582410300 301683530 957760397 353471477 714504137 82436138 527301444 736264021 524277561 717307923 913448669 147452591 1004680164 391813185 20642996 457291427 678574801 953419863 857970120 508551974 148434580 60186041 63763048 170355154 217887170 512127399 987124217 199745374 812161680 718013423 646272743 774442546 318872473 590026554 316417760 269754520 152923858 348387381 8189295 637745154 573800429 410454939 734772343 223723954 252057363 748042104 1006805421 493008600 358083498 765589545 142918036 850892077 820683690 76664034 948978690 850858223 233969238 844420421 237733727 838814829 705558055 485569435 76143238 504693387 875915117 367599055 576207933 1039145843 390381445 753579855 611951267 602660876 531041302 701578629 843981511 547134027 374899704 709804733 771525744 840042299 1072522945 886878967 365594780 889791588 735476339 303818261 412999943 1070709799 276633361 449690966 258473416 234014563 848980696 1012040704 598581591 242489170 1065464348 111287076 603288407 235104002 1001101083 341790361 681896870 106512049 687374245 1045521453 13389806 131909097 567697012 889173459 395939524 329849673 623780839 374915652 209446652 689384595 725147543 825755327 1047950752 214741686 16882896 294900696 908493811 328826595 91355859 601669796 1055461744 1064922323 684204087 221816929 557840569 10837061 130336664 142009665 637503926 636822999 1063979172 720284995 897208493 505875121 875820140 1046830941 796869326 493205585 599910181 945603726 253208495 106617926 1037127310 249959522 653649842 111113348 613043698 497488279 940540479 649255013 755804913 760471067 410509697 1063440225 106854432 268706735 617711909 163650444 893175135 273791922 481645812 143795739 698427488 1031188991 736657540 462030614 514159627 85591199 708486556 701946570 469482341 510061301 29755177 590543261 1046668875 608589200 340426977 82490466 478420572 134099389 285867045 934752827 389696743 59576814 948181893 780023362 267118083 228743607 468998940 511384203 229299242 545367957 30549935 352793866 42118494 629843490 266245008 427427493 427427909 671129247 411708509 26079201 321060803 188389068 63812975 943820826 791015805 120290764 517309447 969354185 363677571 1053015848 656859412 589200130 505482250 507206152 602107295 1059680678 569874006 547909423 210196150 256307772 326211670 896327180 774838742 1012448263 723516188 112209130 527950719 524283749 728870178 190802841 119061570 671051145 762184160 906340845 629703080 372832036 284652752 583727706 488830422 831567311 33427481 150766875 168796549 1055584318 772528586 126963539 732727292 597195651 399972168 1033024159 611887163 896657960 132440722 312045418 152333765 172637384 129630555 702414163 722832971 971362398 509591166 406875068 613319100 187990085 363319824 397545167 989589792 504212680 1018799096 210614501 565416495 75221214 308032215 924956781 811570739 105997790 792713158 602981370 1046378787 595751081 559009300 931558915 303843126 129607264 839832295 74476470 920412320 499678997 439985863 189426480 1062280804 357878986 863994289 50138533 6570044 547657991 673552068 476738463 800927807 1053043654 1017115992 115310793 99710456 509514404 624345019 4210489 126465559 601122582 250459171 564539786 690422637 13719 1005248514 308612702 529354596 1009972945 656024501 83213972 644977985 473596153 928140082 150419604 262998168 986126184 362194594 164653321 1022170065 361747069 125061546 999086155 775839162 233354048 103748229 402149971 776692087 761318139 1056630702 751975380 779636266 635705629 143929111 361150319 923676700 11104944 192559344 383462887 889489887 1063561950 231796690 543353692 310951983 695951014 784255270 442128280 589114787 612614388 306729302 214492470 590902881 302190701 786387559 362132314 206546058 18050742 957272074 219982236 900968064 710771924 52462229 157543618 154470237 1023460541 386528494 680190736 43930051 82858717 665044509 436561037 901373396 889598078 437332285 689630732 491739290 1019061322 23384676 923944274 721410779 925524596 52418124 845219896 397152737 435916312 6264395 840025988 662340301 469843567 463520202 59995275 104611150 1047873167 291681386 166349654 676250747 655322816 10085282 552279840 1018607966 12070592 710881388 267047666 828993091 437234345 246947960 698786337 645693311 21598309 1028700212 781302671 855190744 996982969 861404688 260677396 686832851 382128665 39872892 496723686 310886318 284436838 1066802788 884667345 183972265 5357548 304404295 823448110 99181235 172622369 468229115 103775042 43613267 795401046 256286341 548540822 19085921 153175031 81004088 1026891999 515991304 925309049 408109084 976628581 118338602 76457837 703263605 970964654 526106109 706972202 894504606 495364314 745417707 82053208 474437102 616734671 975893810 545350590 688268729 453063556 652432422 49912694 960522573 153168885 682903002 471893410 1055508750 148768488 951727222 193833128 278888272 47605402 321738328 1058188550 453046472 632305032 358109734 754892840 801500966 454794429 131941630 707195445 238978286 674235831 708073825 686327778 1024594519 804600634 156785277 250230640 122237489 737343377 279467593 638000122 374308857 506336468 1040945410 927292578 557600762 585083899 776380582 555169038 440966165 407901198 1019299757 586003925 625962351 175064286 697217566 648107029 21146653 304045563 2116356 977537490 303905430 643154037 233729073 939337067 282988167 970179094 879942711 118813013 255605247 201320456 696871959 424565489 61405346 704069753 861896327 748978256 590768173 517641452 790416952 1040840788 1040340176 921393742 929367762 1051760130 1063181618 260484180 995841807 83143106 750783485 441833385 233991750 958066142 537262328 622065986 1052445700 314234259 858935889 1018400406 536907541 903012615 483099545 641197604 1056376936 857992539 887529289 789769901 568616080 526853341 696210118 1055616641 507277596 559552032 427054909 588425919 336620841 525414527 950138388 525119503 850601727 385958456 651200493 332482986 41400844 691287107 245771719 146970893 198449201 877922316 224743260 373411192 627169816 709330958 903524395 216412975 899877435 369957374 437201999 996144029 578340700 88198377 551399007 703630343 908792563 1026206132 1014021880 211801000 22994258 235191613 153482388 745399392 97545578 178600395 862252642 335896285 229888644 653977357 45275076 437441304 1014528306 185970991 1018088929 761477444 121945178 973487352 11344245 711987935 494727491 926898481 582238778 731011507 255464902 59399442 67732793 868316675 668822865 769085407 696326036 388485325 685846669 403855006 751823914 534851804 102055473 22443584 492132754 273280933 612482796 675550282 639010443 789051749 116422248 867409458 799418569 219930353 432688778 473464845 252998345 353949954 235048059 877805009 283600462 211811544 1056221836 405846786 846506726 797386476 96670988 167688625 501211454 786601362 348860382 676655343 1009602625 52819835 653086064 26297452 827194024 670226663 11719319 106111225 853964138 708174003 464075389 51036946 217406126 835896136 914561224 284750140 824125554 1002602354 766687988 194247963 376220314 437069496 885565719 858052985 950265973 865725364 529984942 442102097 389755928 1004911171 817518254 373655843 731944215 1058378572 245271578 693917776 787019764 569216197 303406725 641980907 272164161 15956688 43956024 883224482 349056111 279877890 1016192031 882219465 520010166 569092303 609398179 960834480 299877134 128838475 599433286 319807711 873665744 537033809 45525719 529560717 1018855464 94916659 600583194 1044275040 648443741 886006257 967757639 362438621 669480901 431532902 312989360 116093349 648201747 1049534964 1064978681 35682959 1006969423 846592483 100775233 512093420 754055104 596093811 1021280011 449173553 918266713 987791413 281414951 634791653 261756844 600002551 648671275 165880071 144357795 875299313 407110422 123038925 57754455 817511241 444223718 800624066 537794113 828055905 477989324 69045555 919618655 122494419 184846293 538865060 82662044 616859765 94801195 108938294 982363418 375956946 639561758 762987366 345983856 7416098 1066415114 951127233 1040224079 90312015 182843431 515145661 879624034 349345868 210981342 10156010 405120067 696398412 223821365 529755214 92045351 805186158 646247045 1071064352 411285825 531904174 427493096 195174996 856977408 436610186 64737162 266662737 1056573638 809775968 498523087 233275241 817024087 180499166 875916929 185950878 245546227 735241658 1041467144 962536711 1039676966 881371856 431540542 438864922 992214377 443873430 964011297 628224592 14764208 951091697 553904758 341961414 621717613 761607450 928855424 942153015 27565132 979227559 659892215 52126865 249021272 124435298 941375337 541567170 272675780 594170998 821430938 269452681 852517767 952087296 310599543 1057002927 360145336 827614158 871325412 70585802 495185284 322476938 237852801 962291481 600023197 329267351 744461792 1048764939 1036065080 968449330 124552264 132241473 960551442 882953500 96464846 13996877 39934671 954699670 849456632 1045166090 799662664 50688375 731448325 1060087074 176014787 760687561 768260521 246715343 696884958 290451500 998683805 489646594 733278727 75012754 415476125 675344686 879631882 1057486144 508308959 474448586 135302060 199505386 828669427 1068072265 731862972 171686048 373009181 582362664 872815550 258183784 1060491600 473826287 270205019 918036502 1001306771 573097935 547705648 991470347 213150868 437897876 458964539 328507550 481233751 722859352 372545921 133996679 42768114 610221686 983638978 1011221806 28504226 1072241384 766062213 525367511 1045430547 361027621 974034089 155657456 1078308 385654432 761279511 950565290 974372230 650103367 870429665 287980696 368133154 732476648 900791290 751546514 951863676 315957206 563243505 981911753 1011506426 415763566 776166073 945748070 340872441 573205735 85345010 282554836 213226409 460200834 253322934 90663757 941780468 842906695 425967071 126838754 425052206 254315936 540681125 785921253 900011982 661861248 631132359 465996490 982059268 689312842 399480625 183298931 1024263066 592336015 374619357 710954141 747422335 41887044 24344059 973767997 900258540 142785037 1051637031 389833221 1061129505 1047669604 1028921460 800759298 265934349 987371217 10455408 187953740 440441491 965019386 973645469 229801500 106889603 1004831813 624154118 429848539 732471265 3469110 568900006 908872430 1017430531 377384641 638261664 482363132 614128015 255503806 129809201 149639318 307464329 56700690 1060450940 742045991 610068218 1007142260 473779258 212764531 341900264 1055377745 21985076 110209618 923295095 558415639 687782465 858802851 1022099586 281925131 1069542357 340464023 929861663 236185149 1047558720 983399420 773923630 524944731 857323205 695574139 468752642 969655773 842929720 583052372 125186598 533727191 913937537 197900246 943809304 451351963 1035174476 1008944904 402132399 330786085 948231881 250580352 1062498146 404601606 561193210 213231019 409053784 845942515 821899419 527881396 301884653 658025951 128858520 400620149 761650707 948693580 284503341 536260598 789425011 758179413 277471291 438829112 273459826 744349775 317409392 232609684 759583753 999868625 925602248 424416136 28893840 912821883 684828975 683338404 885003752 280633688 410763608 242135024 327890769 783873778 128280169 85543138 608991399 14580341 951337812 1014974072 57408255 78021772 495262604 537862607 179202030 484323160 607397318 90814261 181781987 1003606315 978173602 569696416 392036194 419958459 314817687 744143265 686274133 59182458 989547458 1044880693 91799130 778691567 664390042 350903717 19646273 1050549342 733423811 601064861 908668921 698045811 5057593 935662620 202069309 649277087 309242373 222737279 1001109120 159490949 790269878 376334237 636278919 653067985 873891935 1042172316 1072931649 868092405 151902161 1020510789 1066826796 566976871 247220854 925256859 767005182 953035835 886066285 994997549 754162492 497063491 602511588 1010730160 50055640 688200564 865780999 893891208 201287265 476846467 12350802 180996891 811220236 459138887 187560199 211945034 490882279 1053330307 684730867 889380299 496270234 526015263 967871840 807756676 106858181 698496 249360110 797895179 108139923 737523510 678516097 845512393 1000652159 830557125 84310735 875564707 560246274 483971713 552598428 79076041 624581533 211782629 791942209 596473258 613047137 993119032 887991127 581591917 565507288 402357807 45912775 724839082 283763161 669053520 704575736 34680564 517009171 293515246 407122122 1036385656 596262329 605378830 248522667 1014344225 915734671 465562799 984826146 1022164443 430522367 428220559 956655425 541140285 425239176 153793921 923032730 667493663 261902983 726303103 219802553 912841855 195828196 57104908 909485034 985265877 622584070 974763898 53161656 112547091 886149750 279106775 746166662 791828580 565111006 361123802 651251122 1068808432 54413792 849362839 249658732 1018477824 703400254 354736278 603548681 793458908 472890589 761784085 639115780 516693369 618956881 76056727 148431138 267188442 183076903 447450404 391869695 890887431 781230962 448849792 283285912 793642679 437659138 535210909 105607653 481950795 344486629 660804071 480247493 891461082 1031871061 471267292 579827130 1040583916 947963838 1004775351 79584555 915819358 1028347547 526721617 779228351 788153968 801005650 732822657 115052924 878642745 614255761 943945209 548329684 790345413 930318444 630680017 73060126 839256574 561518984 957278936 960051866 92320668 165692368 169462848 467902212 871797899 897826933 1061247219 914397670 102007380 648366776 494253672 357998581 910090388 345061649 351909547 646204418 449827675 1034331896 514161506 690637806 633572972 840899338 930288891 294375293 405708553 798809204 665245024 518750511 815122655 973532572 976056335 782973619 605156716 826372828 7989048 522728207 1024775143 564792082 986186642 279575875 793308069 979821103 759726305 338362936 940560019 565272136 460804658 268239599 1028927016 583926102 642038547 1048175177 303369169 54773349 213157206 971759690 1037885216 268263999 186226601 254422818 735779563 159926663 238897855 714987419 206884445 389010498 450112713 335449934 16243424 1056697776 1004001437 483744370 9207368 24291087 55570040 694030312 720992528 676094391 1049910197 557259604 324941384 545030993 905943772 400847638 1021112819 485412023 212042383 747607550 210751091 87697947 1232294 684811446 228396519 554198163 942058105 961924102 15353191 943214154 993175680 416872696 20606899 644645813 560138617 320219661 186074593 593694551 56982695 756135288 1053172881 3882901 41718826 370849909 233578790 879362782 338719310 577746474 327863698 413039099 947481421 252470051 245878234 55470109 938926858 777466391 956638452 694553883 288950551 669247569 1073485008 1008496078 466025688 852706296 655457841 613427081 1014009191 751582881 24342893 651392617 40165874 361148624 355270887 947393388 469262524 103035774 404796919 908743994 143714409 717162588 1054039395 835781584 458238161 902885847 1023355761 173054628 265248381 819421625 1068001907 285464233 535183323 437756854 71566670 1018101959 37487399 57176210 1054553556 396796069 930231294 16778096 643803089 973277498 1006854368 348943602 924513608 966362231 45031005 849369740 1037075362 45200236 451501379 118921352 383664247 581306754 395177844 55229306 82697351 883520754 214304438 611272228 391981628 32682365 946512822 310335990 506914100 889895072 477303070 591511601 249325766 230757522 292173920 61495338 373908435 389455099 445171757 584917313 1045889420 611832131 971088545 74193383 574374479 150335927 684272748 1001885643 563301367 1034871633 831734224 790042647 586121505 53528023 734872754 472561567 23688294 848198508 412611161 1040972738 41189445 865611153 1043432236 1019802450 435629519 981563108 162602805 938189489 1018405198 657707110 594976894 882084982 512524977 696304855 81437121 396080109 270076451 245381874 1068469919 769822754 559020132 460584113 636508420 523990521 920692106 874365713 158218031 56111462 473966442 293635336 674230532 513394474 601400701 505209629 700764588 149531736 244678653 48135061 537601294 664586935 655477742 89696728 753097961 323428830 922858218 499011240 803412089 342180763 197171419 852460905 591602439 44493341 90616269 1029748692 724485100 364771124 620312634 344568444 1072607418 765673625 690731910 940072737 1066018238 807209770 140429118 277774766 269932488 620646120 376163234 1025653330 440425335 661877444 429897262 282796864 111384335 98161577 907535145 276414438 194339811 557545170 205233033 477457474 48889230 429200994 890637073 332506219 260638856 672366172 207536222 765147916 306500994 449196339 739394804 403018830 367730331 895339891 107827038 947426308 582353073 872704554 467088045 1065310468 758372984 770835111 823320494 218023686 841138120 943972442 1058150001 280494372 627561910 75459316 959601885 285273957 590810979 306981835 837891942 251401185 297122691 315358082 203236121 211081962 1002261489 106092152 746458064 404038630 168090400 160885699 646982475 455157030 200354654 471769608 832676108 90223392 417122948 33664215 625569305 568036284 785911286 498127485 512286021 385044003 7917547 152564726 353854764 465505087 976837736 883954130 284203692 868974793 93361381 488042070 827441867 834781551 292572660 820288737 1063621134 531217219 323095686 948734093 552931004 1027739534 530115547 534547697 713001507 923504804 254556804 168703922 308604203 640969894 318911635 616561604 240066340 189527202 973051153 641436533 528324514 780461966 483385046 621117938 118954718 447594894 989548865 422318907 765774538 763120841 145570845 1048498834 657409121 187565294 264334507 1015129869 59584322 1037233551 1042882262 91481010 564147811 427698418 330476839 857296041 333065022 561407595 374291794 106036222 932422806 735773908 904894771 5197432 614731765 478541808 215868629 748432072 121054960 661327210 807166532 981914086 419342204 996857030 125991765 752984134 914140379 895871411 891315618 144494718 879604945 297038259 45656822 424558232 888188615 481979225 959950512 543868613 1002312439 397022254 175685246 84273337 1058521225 746172213 820513430 1053670952 263046261 702624187 499528420 606971377 153877280 506491263 706830077 536311138 511898940 850235705 224021969 1044929374 693011544 750338628 53914081 266110249 737647912 872221448 949309757 123880368 957479687 1068052285 531207273 275927617 29825612 983018239 238355067 1016902075 139951410 833483449 151457714 843525149 7861743 528510390 299510394 217758765 907390406 245121730 136291078 259355086 407752320 228069560 723006828 930880859 322024441 146185343 167691592 688957966 919449057 963501021 920404620 570827035 449072452 232146034 384787466 707169762 391474988 99833357 1023553817 269858660 742789460 1072433396 406908048 585902113 795016429 111968154 255712590 16139524 999298156 10393651 43856967 211884366 717779879 794659050 947401604 180294688 517634723 348694774 556907585 244741169 47293035 403729937 1004824002 905214490 604940428 832932109 880766039 975935663 1034897634 50196279 824381098 97613793 314794570 278693960 500934256 863257550 166711097 715799896 587384856 446969268 770929356 919019906 674563887 181314543 222213761 140736795 137368071 1063468401 826894372 969167627 485865554 859530806 159156346 593112479 722671592 571907994 13882502 452107435 65099523 845091235 811862616 205342326 134159914 584484158 143513818 272218126 438551440 510914969 817800451 844498959 375123350 695346780 640732054 279678354 19653720 1015920167 827924160 1013702718 752403735 254919996 511822169 780718798 259039623 167534365 370456288 826775632 493924069 664990860 851484407 162105795 198659006 534253979 801921133 16873751 802282465 87866674 224097190 601682379 862484811 945760700 612376822 758192899 304438684 895234419 631522956 62372601 495004082 350123718 1006347267 1023490087 628740430 38271439 578133073 292431559 165985749 738542349 88545244 512722173 599555138 234396963 444158369 472526567 205638401 82874100 599094411 141982384 812302125 1057825044 530110222 206572935 927607156 878361874 636629768 615575527 851708376 593859862 303983594 371320010 27095566 242352586 822773467 43444095 947659651 430489091 264238065 924878442 744041712 600041066 185316234 305839381 1000306469 292859677 941336704 1053307015 26035088 32347867 387498337 1067565952 696238308 304292524 34607248 757604146 632291626 162155760 1009384679 366182870 427543311 929296456 499561431 842055007 786935282 57482436 832830834 744514168 916901835 823802207 1072550905 253859381 1037505653 1037017653 202727850 570709870 857511756 1056208394 528477918 72229578 1023696151 949351564 265035436 501152261 207855462 523823057 327926448 329760373 283472558 589496833 261568839 704104360 438646560 414913362 338189353 973217038 621465175 320308740 550239362 797703822 743055663 777626615 872070095 739193779 783344851 808028163 693504725 728393292 128208889 312530002 333219069 611100889 964691866 524978748 941331236 184826937 244650047 793786679 132591739 970647763 673707694 94754251 490267461 650204260 897849693 475816938 104180634 464473863 22961063 38278016 720960004 285011800 989198129 361233810 554198148 918384246 590142079 954856848 552759538 168956143 285288189 133029679 1028824257 18201884 912241059 124528963 788935679 630048204 874325716 24327001 753216231 581298984 1006429875 991968605 299144396 1007627713 33527850 675596914 155350052 2007708 1014542779 19218426 851038242 647091764 765903509 895012815 564097548 235797681 392729921 209174898 279974070 398079071 614631748 547636638 374563384 272245049 509786673 502908768 208286689 894638348 875919558 238796040 600678424 501960041 891384887 98856108 746258621 72273706 790279329 824293870 762059792 507180963 948101890 725311206 821705055 786056083 879115750 199250178 383850883 138431517 715860598 1064208672 168599562 526931164 464219993 531377253 348200030 360056638 610145528 758425221 32922187 974439932 384962299 303961941 894407859 56281279 928471944 208982259 779502104 540888716 36615266 387498139 554649676 1052608070 608516288 507441673 387209508 533607696 511726986 686693165 502176263 476303891 398923944 919675512 183642765 402363066 963995822 490477752 243509944 534660422 624094074 342426156 844580691 230832553 234841389 591884986 1025385806 757429195 462896646 152751675 462653800 7891812 24707593 450927824 575362040 791242343 249261041 266334941 474170439 375258404 679158989 972607826 212689920 901684225 1040015621 105155512 108484850 436638910 139782551 2363753 716696656 936553623 518356694 732708351 444038455 782447305 1000530384 526518425 871999607 527779672 889689825 136497066 626793609 89961399 878097700 756247799 747541260 548882333 996619687 382914052 237980049 586043777 356899363 412713818 686303382 138445987 814219637 734221249 871433900 594875701 505779934 669909020 576861482 990284511 557176262 462528835 781298280 322992719 240097161 255610906 229633102 313470983 879297591 354107492 10390772 461932041 327420607 967094487 227324827 627318792 570836800 26059429 264322050 525532211 460919912 367676690 204473271 175597765 143995011 839298042 326795420 526444640 787676011 828512085 972458134 238746683 720742911 1013771628 961910784 601599123 17724747 742404167 260765611 968438132 419318031 498005198 153087541 1053519844 292959306 69918689 260151592 934792874 1002705925 500024497 908203905 357773510 546554028 832877954 777421405 61885418 917389761 762736781 159843842 587063912 836312033 695122397 929013745 768267805 763948399 823902172 653650025 584607540 773423152 227647729 646882410 636433315 411630928 957181117 426119157 707143417 57669581 145203340 1025897000 932521781 1062703454 83888093 754134032 187035685 297790907 83957479 151304905 554132088 328084501 542827811 799981982 1037295407 612152891 751741190 561049181 992021353 671982718 979023065 830967709 97932165 552070641 677879303 1000877474 446372496 923280418 708706454 395515320 342025193 270530295 732025886 353493561 102518071 771864595 99118743 815903564 226173564 132463316 1026953175 920436689 846718022 465097987 778341372 947842074 337987124 292014357 624362056 177592299 42890035 586115204 720496225 59973115 158274252 372499163 701818003 574086899 330312174 1035248595 567631728 274327968 88238435 1066242568 1068417475 402970299 987875341 236617412 871477677 382494970 544899837 787472819 673046274 913660521 228205656 808747958 969801712 667654504 18530295 166063576 71550852 662008208 371760147 268985850 681093122 495940185 1002436504 114835398 893832162 799109862 829475066 990421190 574635059 528493033 113971453 401044144 799221429 998661618 627898335 104700619 841029052 769567431 503254945 802152437 554616981 326344502 551744610 262255328 61112603 1012058883 38533838 799467371 289527150 191239254 683112831 191992759 649285464 706426122 763228117 563166754 459906808 600631963 55030848 163035771 202677991 400993983 509705717 399126495 351397976 908352906 417548929 79626057 263518414 490747656 915344099 223165537 659396539 591160416 974728324 75788114 230201112 180778874 436328885 421933956 217941547 497723130 470477159 442964845 328810686 529630484 853556396 825761420 801383557 589246874 547352617 874061147 599712197 707282812 867959645 475354550 593532844 1060330629 635809203 465127232 477897521 320886909 435858828 292083862 947264690 769781192 236467681 930306879 206964845 338749581 226867913 648971628 803389984 783469375 410417275 247357228 162609170 500403504 546051190 1013859098 289654860 433481727 791842657 752816908 645825750 629702316 708624425 797996206 838728470 310897820 91077043 377464204 778390017 1006055782 296633365 189844899 629005576 1051192363 795879416 294746767 95344437 872199910 460175009 24287486 1009642565 516960143 57991523 30895697 60122058 468408421 665695716 473678812 92920234 530651116 907608445 956720679 23143795 691583734 931589167 1053360012 302276636 677259763 372502797 462715910 308519524 730515961 887999368 457113900 898403863 787122888 260412605 435961981 60799396 244234957 240894634 753398078 746766981 42235314 309506241 918994798 70051108 323206848 449005813 410364607 938451475 823999883 115617927 741619765 582588050 294173577 843404359 999711216 492993483 995578560 971809185 129567484 75217970 899954383 67446377 589507870 852869509 1069673979 411119182 949199598 918670014 201673471 276003415 274799098 75627169 119382619 865884077 756913225 309615311 48130984 459177782 589305651 676601207 97770546 401546541 702258637 987632237 343328736 987825879 161901966 968864154 97797886 783685277 803243680 317194000 727267399 182279384 1047898366 357920038 752918007 316732323 206339915 5404022 392161464 300757304 655360655 970835342 863549430 415964548 532936009 640381448 1040888475 401054992 848296571 81762828 381706601 464991517 268961042 150604055 989544111 288368109 419119878 140668323 245554523 693580869 721216900 1058338907 692218671 941706339 343137845 282863612 775335023 838119008 891973578 500137146 703352251 1019648479 1058137802 464081790 717976121 534136205 718878666 920000528 968255963 949175569 989578298 439573418 733771309 14380029 749661743 871622372 120292912 1000414694 245948453 894374210 730778893 381697392 713838402 313552732 714095107 796985129 890912580 440380950 892487020 452691599 444764139 685530861 194864717 751396943 687993640 848729191 136145620 469006266 1003032159 523685888 533024087 450171349 820961386 72131744 389304949 1038484643 290479349 163519589 908710787 892321386 1013683274 132563077 888110871 221937589 267350945 131380465 1060762465 234685304 232423354 525982860 411341891 755647962 227293204 739251914 930271112 518897698 67910202 618905569 196095081 1055202652 1051760109 196926024 338292166 174575798 351115369 1022957405 432772348 808341031 824184657 208509838 327013578 590824432 767957233 553890314 821336416 766809537 690360895 273112931 716692251 986493783 876015508 347192466 539810894 147269289 243709020 99703357 117995992 101190888 581630037 675963390 298944344 725738707 47955630 1002398724 951418755 529587085 486527949 1059480697 788113029 599083889 75515125 888830796 597645805 1056074257 497597622 132567940 990298892 868002118 447884997 230197409 584273881 1055826363 256624005 90235873 299827666 730952041 287998139 1053090673 368577633 274549265 665226612 272212805 469326166 545865357 231162981 662964930 84243469 403576777 683482825 881585852 559345365 1044413438 229594407 636510408 437096573 459035366 245086803 151032421 1047573090 898460479 515541220 580689171 861233171 296604946 1049286107 476179450 362520143 248061719 779485139 999839049 556762024 384761114 268103302 147423547 287739780 135393973 436204041 58318777 1016128631 734604183 382093863 835460793 64608194 362691505 1016633104 918739523 138910872 1004235916 761393760 723446836 391116815 56655290 360829261 270041386 304338264 695501787 968087415 964319673 548454257 150937038 355209209 708736221 740963697 745970303 344655849 206838911 772661354 308415852 39725734 607885595 659801517 495683170 294298206 254485669 1004069988 758731551 836796331 858421531 876980757 520906330 626415615 446573663 291610004 367008151 365656138 187099790 1004486074 175055245 486338921 690116037 2349829 151789228 99382595 303020408 30978126 74316708 772627831 898368719 929881085 893787087 740551597 637104684 283842435 253480851 53027659 600038425 521376447 617031316 322251092 550949796 438146224 296666228 1033053066 845683301 653811064 649636736 903658781 1006884484 6901482 513112800 934960039 1062791767 229829482 942514049 77142285 908743409 781528767 517154534 829681043 1012842891 79867852 220883544 715593464 609134228 860220271 323426154 598944998 678028042 859652686 359783720 976814805 519930470 785440007 72936062 154258613 659055258 117731909 441460146 219520468 427334024 880753511 918274141 396731463 651620798 587336635 386885076 841549005 488599457 448313180 896777714 477496033 765827743 110901812 155399276 722832736 862572443 55865414 437286175 668364419 924171117 1054910155 560567395 599971371 213963942 994314178 628741317 1031605168 103768798 980387622 879171303 915618217 378064417 25371524 1057753651 484469799 1051678121 35143257 771821723 190678343 1065726424 496012484 674091166 156773196 142779286 76162576 63104406 360284676 201538524 209352076 858317828 846227466 31278264 624329339 871342061 883783641 135062072 800597644 374519271 516016194 549803502 695065102 889175278 1064400031 629143599 17721569 1061290322 56716628 212154475 553302191 1053126107 613253464 163904559 485494008 79698276 408877697 94870361 94608438 608327294 1066981175 354861927 975088905 925747369 334210059 808601514 499286581 1044146054 743526443 438752038 604511142 811243656 1002959997 492669853 189636908 398223284 229458764 494992241 180500597 263453388 788607309 473639213 400245406 1070790397 36981516 403128412 824953608 648896851 67148609 617585227 841155163 374584430 822478562 611311118 729375024 890040148 965715023 994425447 658784441 905484396 259278334 631639140 112304134 942923867 335331809 954552455 878592740 1002608735 47108138 535698339 836798831 755291471 780157581 237058412 285929134 65074618 522845118 24935313 41911418 135059175 455317288 57431745 617576541 936516702 481994149 1059187213 19993128 193709608 588656806 1001997026 711747544 569227388 110916083 309692074 783387749 561787434 746605577 406386114 251448436 773403556 313880363 975322990 96271816 719459203 9659129 865860693 411685411 318953610 624481556 696050361 787180030 1066013403 450259444 954480807 515194231 853340564 996482626 518240948 1051207103 170041195 207598178 1042062884 872549142 460170009 480395373 219567564 1045562263 87082644 548822066 67191404 765564982 373142034 182787657 428080102 357040500 167367796 79903162 913278204 914523313 903715171 1030884171 743227008 513438319 670974259 490966189 36017917 664004338 324109344 639605941 687340876 992366804 103198515 1036195756 501782837 693763005 893338720 456976034 457036578 862132865 493375312 640097189 830242993 377983254 82314403 398662783 538175197 1059828139 758934407 340419712 241745120 706404874 343376304 483906201 19682636 874974969 775453926 422045379 426232363 11665392 246999923 605039054 1054762683 902370423 291712286 686024833 342547554 577974201 247121913 1012940129 324198944 437815363 1013651696 212529470 577339906 644600191 163020989 1047109866 970402738 579038508 935205585 600542885 542418983 25749375 311364946 726538495 15514481 352803443 218008359 342409482 552100064 233115697 248916742 232552279 214675699 752150471 1047596813 898096933 862208318 1053334809 254039624 710551246 564055548 1051397307 951064445 477549206 722432335 67768052 464029087 830073512 591058742 919656661 922330976 594190185 132604842 162567557 24273021 940057917 557321937 319769772 829986772 655294549 346755593 958589414 646751641 267824729 211828284 1072770261 156293444 647505873 30356426 946306694 929200199 206268965 317444426 440837241 541820136 819140437 725665744 315059606 100977681 948090683 837203786 639890935 619958533 607257522 873049769 844039449 337066784 78452110 427595087 434985632 495313020 907104006 239105995 570981234 787471701 704275945 384995810 647873288 582144137 1059776056 877831483 876381204 494266723 464180712 997653573 849496557 695226026 278156192 366500569 496131615 458441332 683076195 722924509 394326917 908149809 198001754 518300927 53590343 651021950 1011989438 493072489 902957027 406995155 781171205 338068601 761451484 491526481 768016865 468048838 726716250 958056590 418481319 931516119 448377726 194433313 993430526 514249407 657271408 417896682 30201365 112291420 1005496383 893356352 784744667 158473350 1072639065 223983578 266740886 964321045 329546573 790826277 344127638 78639198 943178647 934248457 87465509 85807381 349534257 858770855 612798831 127438347 504680087 125907981 655897093 717418900 852542825 840596744 46499013 30077550 966556539 259430244 259960072 325198747 46896984 992688887 641101810 499938155 743728061 741723476 418852810 872265708 981503998 807798333 186646504 309122482 617611241 793873939 313914923 586192361 668568924 1043226687 477060500 726728059 873513490 981347457 379461929 414490128 507297819 256008944 890695402 279065260 140730290 523187659 836597612 447894099 186938770 138916979 670163479 829412953 604649711 378989139 441733556 677588100 989153435 61533072 362866777 735527148 722073593 779754732 958852368 60110483 935354892 566975470 1059694717 376600548 45299521 401860111 355020312 233558509 917920333 794623814 773016062 595302726 796267723 479342675 159848498 1044992465 770591878 164552445 974565550 406222702 123036834 948817730 7297827 687038866 251314405 135115842 589926690 662157983 386570025 264334628 366196572 399252254 34888161 170192478 396307143 887311425 486445376 356532078 66627612 512104949 978895109 631752568 163029293 789608860 139892438 67192292 878625624 232758992 74142001 815514612 981448370 375958405 866078288 983384714 375146778 783305989 78193087 953145499 689906383 897606399 919423647 33369230 3431673 727995930 169785228 489727932 851160953 24569433 903081117 303893470 495108343 608478934 244350590 940615946 847079757 675366544 50518156 508048784 92058728 853967333 734161538 781139176 361738331 412145503 941687576 411278951 345443235 274003009 898422880 46854069 848478631 115584994 404311727 10140134 63106542 832270873 212515120 1008792870 789292952 702270978 428198964 766085846 337802688 272492630 591950002 249091656 709941076 499328277 253943785 688132731 666500272 916215731 633391609 759500948 550208374 425649618 798493054 943503345 750434128 134258138 762634516 951610713 836303834 146978768 486139836 143473630 8363603 251607675 439325295 679737779 585341256 258678084 961542051 24973033 240523608 1004975716 235664077 847688973 180079911 184495090 633514863 523250024 457821896 127539009 17191802 644544758 657193097 168306139 801425475 622995285 204402009 1061336592 96057786 1056895149 962642863 576772149 938470578 405981846 41329470 510556915 615901486 319459458 294031064 7106611 559838082 459754864 154814132 25892525 28196239 993926413 32222063 777878481 581130035 670273654 750200026 199143010 164922066 75386888 475129061 529144147 615367323 793561895 594683296 1044670416 307148740 453337961 1008578445 913493035 755719305 742141751 886525348 218199604 588800668 907465495 998391300 705660667 831752282 571648212 64475755 479395869 118332770 345138786 643072244 597428915 519390855 74774575 471963909 865285045 480029670 622012370 275700650 817117565 336275813 120924191 330685114 420153926 940746057 132221666 730143280 407811014 700586033 143485353 680608976 519813805 21786331 1037205964 533386556 506765650 762238870 490870017 818513593 561261448 894813587 718648234 77738880 655346369 1057496859 1013236570 537974948 277922493 169442308 779690453 283488845 609917964 250621331 201406723 479670247 783581306 270383922 1034666975 345851694 864465546 484444516 130159372 385837704 752588610 462917468 127685292 749744041 646932887 705499876 907441331 924706493 539513523 143724270 78662766 948071434 733724396 187920049 349647621 122496023 956416442 799634609 173212106 692695343 338136743 681605505 247339222 105811333 822379824 42011156 829334423 477102163 434372955 396102758 370557106 647674660 442191729 1025876879 645364581 420823722 295548551 755191687 316719241 591665125 755038653 1058105884 996352581 559346743 373351288 983052168 637711538 22418570 434271635 15282413 27843354 354364345 918910401 871943152 343214390 489326181 410816684 1019743766 743579816 193459966 289881492 799091877 295575728 59917400 804522899 774232890 853551111 728662021 940016424 420329088 551273058 957842282 244621010 182255374 293599720 30768189 864133584 830574962 410205244 429477150 968284449 422172131 479018096 512917526 709562977 54003114 412420283 590015486 638485792 310608637 881702637 33328067 336306490 894475247 852663911 667911845 468405637 557591868 56687038 170015213 79861463 313156446 691009724 365327214 868152823 434294772 160148150 881677941 684628936 541946795 369372628 550926178 1028727458 332663401 818806770 482819710 375868318 779935468 84896622 83775315 947622523 1026608774 926168491 506925051 580576558 220931871 989380959 797080408 520317314 384266477 1041261472 332224695 822274867 403224598 113918592 551109857 334233688 270648983 841525638 719948500 445701114 1054296241 48473226 248807930 887473966 858997530 483581940 304912296 172405398 158673803 27730374 227764089 179594909 960826556 377679776 598702978 270737789 754483043 43166038 383815507 200283479 642218177 911672988 1014346234 229844402 358984198 1043455089 921837759 218875584 379417951 128536898 861916283 58147463 114895052 544414231 187704021 723821829 333030877 1062052814 116376120 1017328882 494790129 943676654 150781358 718775783 70468222 900015712 254944117 79816613 471474598 720226205 98795321 390630760 622265207 458108492 328876089 396253631 360068328 1029003778 387698240 886720607 48142324 684218982 124511744 770361785 567246505 412567588 201360371 135206767 99704912 72257121 1013722954 450025104 716687726 178812597 113230633 626972759 16598963 513924737 857638042 250186393 20323509 863507255 899077550 488833429 74608904 812745892 898105551 1041289776 238817274 25254888 919505744 1050373222 893114232 605301085 290680359 425849535 661423397 937053885 64477338 534131506 628667003 411708431 671846631 557821041 328392586 93267861 576217357 972786248 507941285 294163591 247559597 592540034 1050255121 449582620 897967812 465469649 893394773 792515162 518667489 511969557 370043061 167718788 911374311 831660916 422705899 139251058 8643877 524836707 820455127 948426466 1029324884 437144303 26724132 143844065 722218373 773304295 566698597 20370652 184030837 88998053 685375231 494695915 258541472 104440437 56952159 55052030 463412426 354030907 523676269 200276434 869897685 604291139 94762112 277497387 770372742 1026421816 887382553 330428936 956810142 1036183382 169989276 588338250 79619396 950150312 850278511 983492538 813912042 324517829 153685501 369250227 872029693 393689863 519227319 1026767730 263291955 595019388 187646075 894040455 706189326 484425849 849460855 560373250 211978521 880809511 442157724 285019043 603028368 882589021 465600895 147537080 629614591 91205034 229100876 1027222619 814190080 490490304 325544756 137370476 223122946 861674882 728330036 208068163 297120886 161533075 658264898 23527888 83037995 445606828 312004786 655850110 832083185 111394848 689601492 137996369 559284998 477444559 576289563 439070990 640610950 176841687 724279909 1068069365 766939616 455246296 453590087 582474365 179186876 686876102 361203597 411330487 523870135 528416911 215613055 508911693 1003526888 834888452 95622907 298997572 936923768 566787446 150854582 1002319071 818372149 340823511 50325 492769497 898140026 21717947 147473593 223911437 436803227 848947542 915397902 1033567393 703429434 69264101 675705027 305226342 38311646 692590266 330942636 49100546 505241255 865677698 620640029 583301665 237087336 458406577 897288581 506201336 405863216 142103389 341663774 614293691 708220649 294663651 265338139 814618710 593552735 270702419 996947536 1042359905 27180315 368828897 563625061 98063524 260423223 490191000 256992506 902374576 674057099 338322181 1009454451 186943153 1028646941 124701283 1055992896 247164934 209494218 436607197 50963546 822960188 867990447 1054553884 344935707 131178066 18359689 705114736 149249029 571928960 556975374 951123088 51713310 666107744 589450532 18622195 771363655 703701614 196466034 199964408 541102554 528146784 485202866 873681639 626540904 1021974360 1046952198 799962582 690481034 297093550 894238993 405860674 739792943 57795317 706594499 894060612 81042429 419784833 914039168 846742383 760001036 560218636 214550764 72258650 792957370 81165137 397859460 239913441 791855868 458982499 231171745 308478062 625806748 339362159 768420690 354284747 345838879 130388507 660191399 729143350 427156723 115538136 375110362 885944706 1003652515 916767140 805225983 909417049 773067281 594538156 276524518 284092000 644454770 615955393 441506581 1056460743 109240245 844202988 621513952 261240695 802927222 489802523 758176569 416822960 979275790 910142611 158582494 66491386 940832232 956522775 940711552 727504537 824281793 802321475 561126969 40567023 572250964 227801055 416324061 996388686 502855093 530202608 747938780 278508263 461662861 235910272 1038349900 80337429 427550031 891195080 27819789 1011238848 959295795 921721287 594339961 8779291 214114694 691587304 370932671 10710304 967195479 719486137 174088537 657610332 664100029 525532394 529486682 94377924 170295152 369251337 403480976 359205896 372077755 603193311 82434719 214639732 267820879 930532272 734015650 496808342 135060967 1062912908 1015040914 1058539503 379454716 319544997 112431633 570978653 109231400 794189424 73733360 658535235 50851391 660285652 692150661 582240805 121915517 901356034 967673 969281131 185005798 644019090 218233063 167949913 715363003 759941614 519100308 546182025 306864583 597040347 344967517 709420834 1008160218 88934202 463533450 457353171 912536520 349533768 777754193 1049213523 77620401 323159930 554157524 189927416 113795551 18861337 854415387 58846371 33881057 851626847 754198567 246587899 301708573 433580514 554081143 162885608 860950671 584939113 640146517 802230048 566528544 689072540 477919343 98677057 606878704 773281899 171539551 822264275 754708001 36138258 479684619 490897379 471743758 225863658 453461127 721070803 955517075 597249331 1047780753 1032455034 888975119 588746867 463301441 562330115 217210104 219429859 742587448 832785957 594034220 424944682 438885781 617967972 298620719 63317361 915562527 631945201 187840444 905920152 841118013 166204931 21718064 30210256 400617166 312824934 804515029 962720953 626796130 198036050 13218691 257603683 558444055 905104739 235378315 281132920 898457765 947508065 1034547506 535801741 890382466 1071606549 930942868 794555454 283425193 686469990 95081233 901323771 543318690 80585726 912177903 188298634 270636864 220693853 552154249 639833135 866718356 218610206 679875997 920072958 844722847 27572029 835639539 848291920 829854240 52280869 405909981 352501004 59809971 926255237 905824279 14585792 987196553 617958652 731806434 102245741 295245897 747532187 924961295 237394164 396981376 806246256 10800307 483759088 1010751524 710890293 162231651 856494202 113292437 1025805537 463830302 418899972 487004374 1055014539 723555558 23299738 893596046 786423555 39403322 450498635 913478643 994485863 416208192 396115399 410225332 955514732 611440332 865665384 301370800 117652642 440617686 973855464 796154141 486678453 352099577 746000215 229907216 376914424 318801725 131915814 714507678 902485844 526326613 940805329 516081005 557614705 889292802 105312651 110269825 894094833 895924372 149340747 506873758 1034420524 760896012 652195448 173613847 1047463325 416211357 364446179 884291019 241559676 1017932134 375977870 560189825 261623921 133545616 793815566 898627611 550363742 118788715 404561065 239547778 147034123 826552725 620429457 474365059 349419669 322568804 1029479139 85806024 531479727 491990255 169668851 1072089319 817636096 552165150 920936156 127383758 876207220 59400426 75230896 911876297 113237864 485745499 75327549 376406625 468800008 538796374 1024613947 692422513 391879341 910317663 809048432 901633519 729097456 1015307450 558980836 169864008 343954819 982894419 224037733 1053989888 393921419 956176887 722810934 5557654 323447512 793035266 858698714 171379673 286595371 791287704 525738932 260386167 102269247 676178619 958123912 868886651 396523806 1001627149 658501984 463567338 659882070 258754871 180357151 405891588 733845417 817878993 284317568 1008029435 501088366 710627227 678071169 16067082 679592551 557938810 416169335 807113654 1062542038 644797375 899034691 814607115 709122850 273710545 994878264 867138432 270728284 261354987 152088202 626607732 824215310 293406663 1002189633 670523375 159869511 747013260 356454805 246803771 837479419 78082460 839996566 664866393 861713678 268776534 356209640 756959781 175970698 374035795 545010662 302310759 329330258 714942159 798763756 837395494 244882404 216403480 554236083 4389282 756481806 135936882 14911069 256646725 985688882 898043855 938269426 398110286 871525555 1006784537 934901579 781642417 491908093 855293459 936777902 1058784798 532487788 969188423 793182658 316050000 901138586 298917131 322456951 686002117 735430897 917348530 532497061 106036118 75754010 648654805 389705378 845762582 328852791 331074007 120127087 1100836 565678863 350299848 769256513 165732374 265083917 472142152 339176719 336832865 314971298 409180270 787464069 235365069 37860092 9628754 798832891 379962001 95557798 433967719 28281411 708462226 1071536702 1047958621 1039000144 168859880 492993915 868398330 588817239 705226621 839747845 312721807 327163729 665723649 702947209 187429708 825039797 651544216 441658555 843228530 712917863 1010666922 725471972 124946535 115650224 522665116 853527165 401182664 367004857 54269959 524392133 388700271 66299863 675404041 248388984 834116062 137320378 48079943 904134011 915903279 646772788 258402553 515251762 158117384 501324590 643537059 164100893 559042360 396420531 842130731 317466603 32211227 42432805 1035179504 140929347 520922771 190095030 549637016 649741615 428912099 271381880 870459044 116630641 1015831603 955319565 847055556 871663701 321044581 84479415 675009257 941855977 924375650 477160341 505622181 489866618 274875096 253999938 276181286 428401899 119952175 1051200730 605040780 48348549 152416853 385146495 25687085 654181150 96361170 704551752 129165289 667846420 309422078 368218658 554589132 263119810 538903824 55091840 94720342 723083122 73537200 125427954 203229773 237070844 262293654 1023883027 736204117 1037776923 721367775 670004050 774866478 960886074 525809802 492652701 1035363966 382763987 640008802 510360296 814800750 384864276 232662664 699531801 83399346 903159846 679977447 1017629002 861868842 690087186 89402572 365073059 1009304374 644223243 106446584 302235834 375290525 854129403 126310583 210290952 503470247 325387874 803539109 258076747 936719302 843614426 241450677 877203126 368183632 1041523124 55384123 912964744 911951384 437094644 191838330 803098557 739425978 299783140 1018010975 932893093 918473258 648387492 87623236 1000574315 519981747 861702374 869370966 455594613 1057240104 418864667 231538852 23347828 240390964 837522175 200631701 491323314 754611968 1042268805 848261197 210319796 990856009 299861586 109404853 723370369 1013627550 173078184 153971157 23784274 50469419 790257935 96143332 1043120795 254951068 64069386 1070103076 671179286 1035257840 90659226 951701128 597032987 702922048 378123488 731426767 642332606 119037560 960476607 385981948 789954297 519418054 438533933 597029037 203105066 757067025 667271119 476936138 928673793 1030373421 896984980 296376233 729644874 209590687 877866105 741150579 157163328 483968784 827255733 215238676 792717982 951212466 58029938 37863115 25149359 848769731 86522796 801998154 293488311 986219912 545727766 713737408 143948290 691458509 162209225 440580325 965204854 686220422 526372146 730142568 312934199 777900246 62202182 886560721 922610990 963793314 366799654 265770113 424266792 575388848 924971477 99331213 920450286 213614488 526525543 422392556 712946519 443324152 33415520 902845232 203356479 1021579246 955446224 707134113 920407255 460276807 51267872 163391150 403242488 520521636 605933242 531682588 563684698 516564498 249606118 345352620 509910441 526913208 613954862 830945230 1016699492 111989606 538338463 989512970 566342758 771788004 1037885880 947451266 13946795 478280609 12641947 534022489 56499521 978870851 609788823 855316365 1042084270 577096323 936207193 982742869 555515885 518764864 623581228 290516757 584302760 312984514 755089513 541922718 951212223 769450414 496531239 672500210 43803517 1057025368 972581764 860410671 121230473 4635764 51073686 819630661 720544280 793683264 1032508524 1062745768 267573372 767411515 591768437 560747969 1038821351 795274921 944307927 287783252 5363504 416435360 480860489 261852455 468870172 513464050 1056467570 700573604 206342801 791336396 606313354 249215147 13445346 557830760 760114489 2411752 140292924 488089093 722796599 358505735 865480100 474518639 55623524 867468562 1031671057 490813323 887473005 738158300 180667864 62697559 937622638 979350018 166867252 186098555 1039583973 54291618 706359460 781934689 960141974 221313611 129987188 1003140297 388757690 537181877 15852101 289645082 1032715642 1059241435 218983683 352334748 197495149 769179035 230380960 673334765 694228739 139270785 182814345 876612095 89471959 681775956 643525914 265062254 65898039 568054234 973008390 400529854 608223239 559228659 365593740 912026410 488185786 199604490 75978353 601322088 513792826 885071389 234791156 909493036 462792958 612457509 977313276 529964555 914627467 634605050 692405025 857361780 889473942 504358453 599981237 650016994 699956710 319046880 240886328 660771337 237793139 631162962 161031206 1071835214 241749327 337324429 1013920253 1000846564 445543399 132270203 637681382 844117901 696274103 956396173 521820808 784014090 517206632 800695622 753477520 505400887 616592820 628942409 147522261 450857735 189615656 831486980 664754970 154381850 426505412 928708006 235400892 776707957 895586487 499936796 368063043 499593591 187538956 457057066 331252199 200883846 887742453 318409703 379349595 347006945 1034585023 113597873 51052419 914183316 1010191811 403291015 806583942 1052972802 1010705981 21589172 983853837 132680545 837672769 1012570518 551303107 451121030 287810518 189788306 994262927 767443145 782211691 218238761 34771435 377670741 661593491 887579963 419029667 51139305 717242155 679841807 944059882 569464668 468747635 821923994 681881101 396235428 789011772 370596530 840373403 185163691 587300098 867073770 625357313 1016253242 845770923 567514182 966151483 956116344 806196763 448323799 736310886 447420776 493640463 327254809 1045857895 686270018 449682256 358948626 865717160 576025946 760248549 18205948 218192060 137207848 401285168 47651665 588855516 822894067 121341397 143750153 263048794 614016157 482847000 119816435 58183411 176220996 568224558 491516557 184607723 228514549 913704138 1058079589 743374996 424480863 691819159 806612789 70678780 1005524993 791657186 860979493 669940995 25627187 1055967133 1071758418 526364234 563826143 1048452755 563256212 577249301 966503941 511003541 552107101 648280845 963248999 452275104 67488808 761517986 426397150 376912553 1007454173 530673257 289243660 989028184 168511925 801352969 995246713 235715711 744840078 654692757 933993598 829497381 881425309 708957711 465811669 288266523 173317681 517684309 289128812 336680191 419118677 920462590 957263538 466698490 719266631 657963250 314705494 844214453 277534291 83671217 73582285 916657212 150702559 961093459 274881397 792888635 255105363 647863702 232533792 649983723 833759188 828726456 186714610 889456909 512339548 303676331 935513300 7048667 556668989 805877362 1000286362 967633721 1007655371 252114473 291685933 181933338 150070 408359216 467403753 485747642 108111884 781217578 614513015 951434588 401222716 522451906 831208400 8890542 36872297 51616415 793513203 189566288 821117237 995315643 382319743 97434525 515952504 466211454 539328189 857182281 970198328 987908357 622083998 890092491 902291740 681920904 395750580 283232339 9668197 85240914 844663184 867447429 357984607 274958310 150983942 567321546 328929872 6527774 251928842 90118353 979144161 128899777 685673565 793531931 483808898 406177671 749067954 23349264 992996094 116621961 589659228 81776144 163102546 747249118 652919324 1009567328 656521329 458600642 8533985 492825380 50356761 116215364 1034146920 291147945 274565972 594409807 1033626484 150632724 689990167 836383919 855948426 472952845 17883967 267741300 494104517 561302693 795478782 1014082517 602522510 1072267879 778607649 772299970 38519170 1051319607 894803107 358044649 646547869 304749236 698500775 783167051 765636402 414854950 669738361 37393014 602353957 88808594 338081726 72768187 586203368 832949909 119774848 512297338 69056495 543040916 448495265 66881108 322963991 850218796 1043375243 537294573 891855925 791281812 300771748 803727173 776156451 446801224 215012909 1070568655 36453415 591472533 1037787411 386006186 670006293 163838288 571591950 149577404 687045999 744103453 57053633 919927691 571425171 513994464 693959756 468236993 170364537 430221228 84814683 321028056 1379108 165613427 516683974 20265943 573464107 969352497 1003133517 270411819 1005381539 567354492 34709034 850740943 1058487444 230190114 735956746 329740367 928510536 1013173485 284638409 396230977 649283046 512143902 310345723 490843341 383754486 528420203 1826346 490890915 285286706 437489439 269815564 269319610 675806840 178284148 83487662 1042060630 590039863 255149899 815804993 265845500 386654522 532714713 1004848752 309456660 269865149 817585028 806559547 797326956 458730124 315349709 532039920 1071330382 878961259 196593429 182594910 777719497 662704869 635251383 1017822332 775470169 877518705 772073742 740776403 267466146 350329954 346392341 827181528 740521682 476151193 56350545 308142812 52230332 756255611 743549910 335415446 816446417 169386478 994566550 864273347 769835205 545412993 953096833 73554747 540439143 569366167 220690617 884992245 157665221 766459256 322425151 43046930 715652987 823189791 826140225 795577581 9104785 268046911 208937075 281394358 858867189 1037804328 851535864 182974560 310486316 1018099576 795704625 101962598 455596084 1056836519 343735604 965767497 724963944 978373789 752299368 1007791992 87996796 536154746 1049004490 336540074 387870019 1026519052 962657894 295222210 396507954 277265323 388675721 138196698 825466033 775542551 391800394 326173917 218145530 564661447 1060526550 56614096 732601395 891485204 412080914 916294985 749070788 792243371 873200119 636527332 338469264 9237533 688629249 803013669 370504505 409374347 617664045 309567581 672065750 247940600 673035648 1025511925 960412723 507387093 947029898 279799421 259542249 194550074 828333970 183183234 132605474 289475056 440114403 77465054 627202357 690920451 573858283 614878923 431273303 353202766 11909430 634941862 1057679733 1024640314 627874938 353023842 92800370 579316634 252082274 414370006 126438788 671859542 699358006 799271397 63319734 121930332 771814212 111529817 1011771642 981436969 353454923 590388402 1050031280 298757087 740134968 988857794 784779634 979688975 5928566 325617443 243135265 435609511 456732070 409000338 72510436 533681501 532547538 889553645 258102443 239036721 918247472 902967697 15143913 903131488 655731982 374836230 543895317 223412404 898420800 244540849 728420127 551198351 847531650 547070308 357337644 1025132700 442731656 270465688 954246666 248647003 358212802 740629615 470138750 513067950 244123299 902299237 618775045 994624682 862638995 198026571 123365951 513861014 1034935486 580017133 838683001 222373265 828148712 39973 689580107 810657726 712021606 808846137 907211444 598839354 414391205 1005934736 426091975 509157181 498514408 133573508 142241050 286344123 680837543 579099369 40663799 636608211 684548024 710592395 284671071 1002273033 552679129 131217273 588339814 573149613 589798369 976040768 833226797 902569547 359838585 997749872 1064750900 705353561 809807651 467961017 971677736 437518804 377159490 1050127774 454063974 836284712 668483318 452744996 517032591 720710935 1009581377 239896038 70732329 968762768 618751305 64702179 706858913 904495864 763846375 295506709 195710808 484405732 275387819 855556899 652257802 345092513 244550384 894145890 1069994679 609472492 142969333 341464852 118486799 470065706 353377745 139450081 805672361 218940918 510793816 96700105 245048517 164564614 615397554 537648678 91634305 93416209 236908565 404297524 93019387 358863847 10169199 695598157 312150599 582268660 978053037 286194732 541737954 839461670 321287799 318648198 367700191 548108979 19842495 113470536 845113564 84096383 154919186 370862886 507566735 350564646 567215200 232447510 965109715 678910764 960490771 702687758 723928596 462972329 28517838 474709136 60706065 135868571 498027565 50068732 384601226 784546130 179132940 479984767 316107184 607925150 758446802 394646986 245718161 366069620 234224704 93968453 185976853 760811197 1053944006 603265056 375503803 925613625 286325427 623315637 983721706 882798758 195385053 984846694 252966261 183095141 642874628 863440438 490238069 839416487 242437764 522222757 882650950 741276044 610017711 754524994 176339106 216246697 664835271 768203914 453649162 951099813 8667076 817591662 574554963 417312677 556093624 832415454 600952236 319254098 686540770 295290686 9305663 330401145 227908468 1023263806 279526079 292209608 35842986 658175052 926988604 998184971 375704186 344353689 577738719 301019487 1033041143 535165317 534677081 571082676 962758797 251502764 63351607 864509623 69881580 97118345 567669503 230030953 1032396013 525358542 721811817 49228170 746973817 469246740 366935095 1003941997 561520131 246652476 839453657 222724048 607856997 950087695 982938775 922641949 317692161 353187454 900018670 249180347 118069463 374378489 517568872 401096879 693781524 9012284 193945676 968954404 867680668 658326310 137291929 718347912 624602721 799456827 680042315 292021891 1035043321 72443583 593764125 813253137 687593670 266628538 462706371 175005246 1001936276 462514117 959098647 266197453 359933108 80954017 1508615 386269233 34750573 77678510 244928921 645833347 876027714 606543026 871051181 718073314 559491804 506113779 316550390 119412368 137129577 548290784 374294897 553025509 853578422 501098506 213413598 967972577 889082607 160500716 994713391 589398547 147411180 634955239 897316740 854761803 1006185840 222089713 187620518 956747969 609768524 199773090 95647191 1063241159 757229576 451817847 550064228 299648676 715059545 245513703 653914548 566088864 279266421 387282676 627427778 63311227 270547545 149920571 945737689 598365673 78191774 511599296 855832338 620322341 438400833 605308285 30895486 188444738 716642877 130929790 959094895 261007652 493450455 133972460 811816681 765409540 1001315901 1022257285 970281980 899351173 853389259 515746026 305385338 902572913 372153938 848120518 137215482 191595012 522878321 72716207 663337381 159485295 1061845572 264532799 375332290 16728240 925162184 877739406 109855165 690112377 190517461 930027833 1072578185 598595890 490072002 91126020 414345207 343468299 913452891 1033445629 918366808 154812513 760758397 555893911 255027211 84244110 12005851 117709072 1037015091 942582156 198287815 891269641 116265664 628855085 202784982 103838083 217427188 248272389 678956744 860507131 419008001 197657746 346121561 333288803 216410926 649966661 817527404 288867960 409114131 66761810 168715928 102986697 910497706 1361102 493457502 503145654 37001098 255458771 723652528 137298596 179563113 739331674 396854258 206494965 352773410 911065121 420107390 283942542 900794960 454682888 483686066 651702477 588028535 771343666 829194385 807936462 628580631 977966912 394571277 910795843 455551716 473661963 817353813 1055720595 476769392 887333384 271313398 538638950 599970522 445088890 1062274785 362617187 737336353 331279260 95739300 495899766 922673276 482351818 714533844 956266996 908689217 910533115 132164373 238815483 69425734 402101994 798255141 1068114039 534124903 486821178 274273902 393930310 609175587 1008688707 729817531 861842134 883259034 235299600 237283398 657472703 880479160 484328463 943152343 102843423 264150727 899184339 635743540 8031739 300462553 347176994 1045689382 152697707 94332821 700273650 2072029 806523881 464582587 76798169 469698463 544097210 599713448 675019025 747269003 959240367 438228572 484730533 978727250 882020935 825513519 375053550 563813497 8087131 570707092 942368974 367304316 346242352 704110233 985922471 443520596 880705997 834149733 597038246 862321990 737273425 123325582 783591422 112463679 758680973 878520272 615378235 422994604 874225937 151786480 401001274 254965281 515551677 312035530 677510570 641361603 784618812 10635482 768788286 323952049 387232988 751618445 444761693 707779183 349518899 209625017 705434193 1021512571 95195272 847283484 659761446 649482419 170265961 94619622 217536338 770130461 185919134 424709025 876148999 916575580 686426764 625081660 396686941 834631868 1035413356 653881933 649353107 413269450 883717429 596789841 100646454 102254176 507910497 313129286 1046764391 903508771 483669897 222873551 321874563 148850813 441709348 951878201 876120155 479874728 324306819 351796678 961866691 780926326 363656362 1047494735 175092189 439378697 697864850 127963151 943331010 306111170 1066957511 650725442 274616248 478616992 386690565 568432272 276570460 647742408 759467502 414554903 246151837 1007619850 43687096 1030404024 435786359 768453074 210599161 318746690 91695707 445788531 109333037 627604907 338585657 400556957 240149149 676319913 445060676 212568242 1055006552 718649624 674505572 894228906 978815945 986670942 1038714050 1047453469 837085791 91579622 591074103 989399109 531221101 559691680 708585599 791623166 879263963 687732575 987119479 540210023 105398980 304941765 749734296 527685464 877805329 1032295702 827854359 110093566 91160717 1037290659 503074574 153009720 309343669 358550798 855237428 338826982 674245030 671737727 190820760 897247961 22186575 881810915 1063699014 558290917 195112339 466320963 257335307 470667271 430377024 690750835 291091349 378000640 988056327 445673035 183125041 372730079 543809517 623979579 881865164 746300869 870364458 631206597 607144335 588584188 754540673 138620378 34014627 17058145 520293613 154032597 205917982 238124654 1005491755 156471711 462500501 623954183 711863438 638854853 584185306 807413490 636759346 149761546 204333083 361520472 72989829 555359651 560695535 93370827 838780511 328403396 62170021 738305614 92469894 745324321 363144395 834179240 291388356 90863261 1040289794 445824507 228699886 806825008 644926203 640761880 533307525 958329555 290863897 261363743 948191661 540215305 517755980 417260056 559094593 783030625 46388536 399708843 1001365141 678631611 1071436837 602057380 1040058838 886793801 335052745 451131291 491380509 831750202 209873692 357922006 539620960 693252875 416391324 595406650 1051513747 336015162 486937602 447301840 297321550 655745522 669383781 103508694 922846091 180588756 115156070 602055314 204553272 444758638 770062014 739763373 601516930 669857091 419444156 274973436 191453080 696994736 457742912 532851905 330976874 306546795 410986738 1042203008 294690528 1005453833 498043126 99884853 761996917 273710162 119724561 186152706 435666884 80745415 670218532 341782060 95109968 35238111 635823619 892602377 280443009 317267253 432250651 491536787 262214244 457411810 910407519 933203371 856718708 296348153 915112638 1046664508 130684581 791071716 123014953 1019276797 15954804 842057459 933730432 809967147 770447296 161770109 630484848 426224634 999562511 181380805 881923958 116071565 1012213241 374619804 1017546676 1014156701 696401066 207672732 484131796 80477458 1019806021 331540224 999895677 496725365 377651404 474408270 431583784 415297297 432926853 237790281 47626533 1021262961 63723231 9649483 263361466 350871629 462606841 607246633 831846832 870299153 120506521 222623465 718728452 1072152492 1017697208 987144365 322095834 103717586 1031925652 574557691 939345762 891885293 837755926 456343748 355251299 363692850 764314232 486907647 248932841 871871678 932025263 50038753 461409816 57782945 548131641 9493066 475284482 1052357184 102721102 599096898 834706868 452802310 1051410054 306455966 445229002 57642866 313611138 46619489 231303952 785072195 1069874641 736083905 196694716 85055612 110927282 691966560 608928756 97039651 691547770 985733761 54755047 753738562 493982489 1015606529 420377595 972538250 832618891 287577188 325394869 440905184 379125908 871281581 1032716489 582905908 503579569 70260286 196588594 230457735 355532936 168770889 1033231817 198036105 391734146 154278002 172759252 679484611 481746689 640846772 341838321 74923096 486255600 647461913 1030249786 950403198 307756928 970659881 817097486 151946349 47181798 673567276 342907522 493619466 705952726 640877965 143209143 231981837 193936973 391687004 139353185 366975516 819523893 736490161 672109985 797306347 978424035 478487947 308384289 173703352 235364435 433756863 74541832 493672088 383382405 821722383 773591575 305723815 454746160 389093544 1033121274 666064563 847674885 848737270 74677984 326745049 373011890 827677544 437591723 84014623 433586261 149748303 634119416 649831057 951270486 416246789 844115625 901257540 559115227 435002630 384231846 233482851 103214744 491191470 188165478 922731012 692292897 45558868 989123326 850077927 250272681 732040079 26750636 757864903 830526250 442912677 119875429 23254619 741354817 739895712 476966106 238575094 649169196 750387806 785423465 345789770 679580556 516566138 787233194 268926627 713168624 144386473 343386968 884402345 873325483 850278900 981548077 809008370 252196847 976194673 1025166776 6689293 254253563 505105814 75222806 150416175 732011157 23678587 351791789 478118564 626123594 942373290 12208488 342071705 1045864013 669190954 158802703 730441367 967863904 57512941 445559443 508177052 182687620 331753927 416746050 198096017 916459082 411055186 283642374 624101551 1013120575 97412720 419270114 980116182 529466025 20813430 941020060 535006046 252781930 764996733 730132689 634980066 76550874 925726738 186043242 791917908 1011761473 724026971 240793446 391815532 238370240 216601858 879041708 1032058382 70853727 540949860 10257522 809900809 398631980 788532621 651568269 59328141 512937303 564514121 371322884 834978739 693267691 1027751906 631934532 153978606 848220008 188256222 395004859 170509835 142656207 851150350 896977274 635492679 171463496 1006404071 324068752 645683575 73860557 730391926 123606734 737758498 319816757 975788039 37733400 188416668 33652457 678531298 739697116 1012461984 783822464 860812425 682067557 724546015 433222959 131814835 820814000 595330742 440003229 315805415 678911725 401183296 126463608 418149670 617094636 522666671 328711789 104465501 717687841 982213841 526690730 436946517 690217616 193174623 500659222 853777511 1056201523 724235223 984852900 210529949 618068784 598133169 873087505 225407879 642558039 634106688 919508592 260064942 729743528 604347109 153047915 685897043 242046964 668205891 738159734 224252080 518400599 6057621 438738845 1012544438 90928257 23662729 583908771 325741276 970036503 743902783 1040442284 271478611 333576617 843337398 487371042 901133275 1031465121 537678078 173701717 864261714 148544628 771855273 55286789 736177671 1068230091 230690746 1015532073 1067253868 227306297 376339621 84805705 558393428 468817452 287334655 119469287 796103019 843997428 813948897 258777461 748004892 1051516678 549743377 1011057127 460181202 527257301 168760316 711120975 854850374 87813479 926895629 378317576 265643663 284836064 134084595 73797695 1032219369 218031382 812083287 559069200 755410399 542113485 999223380 63517074 584530586 933500225 59012376 355174852 842585542 412582415 890763025 907154427 92123874 206497248 242123383 244658891 812806393 1044165731 376387895 707774082 295574684 251039578 970463949 588300550 145856079 414179000 760112543 914769392 843336455 416529208 286422420 170152811 13291243 651857761 766630600 62411512 265786701 599223332 237449717 824350417 199714749 475872856 132253131 930823047 512056971 214324089 179948820 613695567 630900883 693091480 1048119655 707888756 899091445 618139095 228097707 28473116 1060774013 197663913 82098627 911110106 777829351 828244649 712097728 257220882 920987363 469622587 630876711 981829293 298248758 746541904 275700764 1132388 776783464 441926722 930346533 1043136216 381002798 864708644 940065472 839128908 785343941 168419180 472345774 2660286 636274761 165458846 690097822 1030549489 461181149 233275203 946477747 476399001 972562021 199473957 661071377 754248135 830535414 305523269 799647738 966733191 1056324012 3354360 1010227104 959187547 669512504 962141166 209275753 824123952 227701441 886246031 595012322 453506692 807379341 29110302 939252460 275222478 950827615 323309595 741443324 89647345 250635715 431857270 557679031 966902274 670336894 696546656 635292580 1008715799 74007893 1014079704 474166316 219642999 554457144 844408915 431778033 351529388 413264413 49470747 320209194 1013264023 403125151 825988748 447819944 953741436 198854152 747579996 1025304906 840383077 754421314 881930310 860996588 530699021 298519481 915217191 619469661 288695427 184315363 990673892 97747005 1032742730 1022539658 833415755 739247040 636523289 101527120 1039893208 316659903 767267106 665087566 459010444 884617336 652285975 234278850 913720943 390300096 208962096 639736437 368811344 269795500 745453618 312719143 811634831 724882290 952167823 454580775 348189506 1053907018 399828057 928971272 909996886 1011025585 706944146 678723321 873678812 295942084 946976204 138701948 21406297 69583257 673503398 237119140 315193653 996683041 48776201 132022428 127825968 369724584 51897073 1032931117 985492146 1005307936 294060032 610224945 832342937 362131765 109366290 640154793 980843510 756440810 371441430 12303004 580231883 311323058 264733707 1000166079 264594685 215487563 882946828 765144453 255488338 615737802 435840876 1037191597 929411490 61663774 228749777 133507149 574093946 966544716 344231433 777471263 187245805 780823392 931254359 769496865 1061454428 828027126 68707633 436026640 670526798 100884297 1049868169 188138775 54263294 649569462 411360813 698296327 922535326 487625152 148106729 1039717133 586168582 84890040 292051213 420987042 316100602 893895678 994607643 848599748 142411842 852368179 1044600287 719209302 977667292 362991812 523649885 219868239 712255386 185657560 323988710 92194586 86150227 472209662 853218045 573354737 1041092289 953064810 867276357 511884647 739335364 741993107 186831783 420773552 930192823 331181755 241836949 850189277 197793977 695804718 982484811 451249600 594788782 380976925 792387883 132768954 161302397 359099727 891313383 769893889 864282680 162698224 1054456911 432621302 146221277 447970804 564140991 951313714 512040039 416441022 123692705 542533019 353109240 465010275 775998312 907917131 911959668 969924836 88965118 115318355 374471200 1067044446 559787737 292577861 40009114 108329042 618539186 242134255 733220552 974513947 72508142 1016340252 176057329 134539731 70950943 568005351 394487959 811609615 978287498 517134460 662960429 702864504 225482378 221217844 21561510 1047599159 590764182 717395326 271774419 507296438 535896927 720983010 422682980 208598146 744517823 897776554 966292294 717645359 918769285 503690669 560079007 69478493 100608335 647933935 1053175841 795999869 244650642 365874420 570414504 750571751 955857358 501663667 618243591 736404946 545294528 269893741 52335458 557983427 609480287 424036502 915743948 258836070 243328111 190953743 1012985652 563693313 237778415 899645272 645904063 800068244 610067974 247639382 762433887 404011564 796726531 551665062 636979610 82020131 207661071 753732354 314594075 518859714 237097149 351020593 178494821 3147466 97165322 202278650 739673140 681745444 836749342 49931570 689923031 834737028 93244689 448901013 54871163 526226529 973928421 149415896 339493679 65283654 569697894 393015942 998902645 886349070 1059555602 186033673 650002805 708683120 869904075 196807049 328453788 776207637 449399403 195482856 292045906 512527825 858282129 146968135 525969878 144383021 577514648 484250983 694958293 452231514 258006730 527787983 209599421 247460376 980436265 880766106 452340491 609916554 117677469 153418948 281196723 912319773 730835141 1028458211 163527649 833645250 919572206 165180641 665850963 948774514 747713911 1041933983 846708179 574848581 677015643 317791156 921032796 109011743 382271364 196095763 17428113 8496054 146816195 739099519 659269336 158422630 986917208 606964435 883572903 993737106 471803548 881689440 657112170 953915964 530249253 806366490 194905414 207129367 455464206 794906445 77912385 465385904 258261540 988328751 971610113 290407936 621293132 369530554 209121599 906104639 936766813 163777534 964946132 497799090 58650437 944851833 766561472 949862885 965749312 819331707 329119955 211602900 26070833 956330314 9077261 479376412 1037311211 194881488 164373668 785843582 548076490 368504541 932186179 769471447 23873718 610189739 1057715365 1009682559 835093762 824981242 686314878 800996669 207790651 431571701 249950425 609427989 14084341 752230709 987410712 792272304 148810868 733324562 444820104 1068169104 510805072 326663673 889550053 616126863 462187638 982912839 302163773 494284045 615190371 105219154 665206322 202473951 339893456 716474201 400011095 1015968382 1066105750 473866344 737855950 184947783 593696204 191126496 125332827 483472222 492446883 819648650 611436323 66174836 522807035 534995138 568126379 314679187 220114984 690333734 1049994742 386285681 819688059 156959659 720721122 54680144 609920885 405823199 86194235 62338799 49435079 260371760 681207934 708257606 313549346 410783369 466455413 355716309 406377193 1036312002 967634043 406027346 722146810 1058989747 222232308 1022288215 1000044695 625780057 833741324 152930419 1031952482 915418041 46443506 1039952078 443347514 731784130 599840853 399105641 861786109 129086556 642246560 997490053 157686990 198310470 1003654185 359159256 485867079 450516893 652439418 748614489 908732172 1042506440 480716922 775009044 364417009 301909446 327698978 686574435 256244077 333867143 760003645 955462393 265790026 373369081 549965692 331302623 120306651 915398688 133655194 224787452 371983077 596346863 271913177 759896385 125281343 105319599 460820885 307197695 307556110 137839376 336275262 570259738 178943191 364507486 191857668 752976051 55755053 814280657 802372380 329830350 147381114 577461557 276705334 247600452 408981858 771478298 619481637 662810617 996695588 762200207 394345796 303928609 369310877 986006324 949927495 940858611 128774125 111951703 1046155654 90248415 363497064 1020019642 705102055 76824784 645886526 1069275295 933135726 322793982 383394664 662593281 312021622 401871454 858882797 32954779 535798647 146292685 692353490 60303375 755494421 407905903 119123343 1133196 249187784 1044186406 474678076 517568905 492473166 711695158 482030089 1007129316 125081007 243952445 451451576 657972174 107335969 989711432 536102574 645119641 391454928 163242582 338225355 95249827 365500278 9706426 218743086 263730066 716180741 548228007 459536881 42777205 540987490 592509999 770439007 191772357 444004488 601088274 220063832 241042131 1058232504 824348941 290033503 100358552 775672910 698307277 468513560 946753489 659111648 886673157 64707322 310452247 640573173 75425372 998774764 815856922 537882227 720409705 449868152 638307791 252015145 1052388075 252444709 939680858 429268495 846582547 414201010 652624556 1059502940 945145828 854592175 987774442 810670237 677722805 258101862 984905181 634408359 234269737 328179625 623942043 437890733 417128855 294957493 935183860 341232974 690268610 963649909 128486006 584580466 406102892 5797893 700469281 186284494 592155036 382353882 935714145 716424025 918096459 744732739 838434939 433543887 903926050 99150915 708793873 1054042059 205993529 738243652 782717793 547882447 536600525 530059107 571053956 741759899 966412234 633068729 387686861 984677455 555942724 269537653 133463642 200350005 977321621 67390590 950421719 95657448 310783757 1064562312 667868965 549215989 167804658 957311839 127276264 111333226 787365601 67379306 267888247 720927007 409980783 353314859 127549118 696477599 191573659 898313719 615525568 989167230 386537235 67601201 625186646 749885504 969058031 495592677 871047378 1024671658 755111593 611631147 392542625 280633577 981689944 18518138 1002268819 118290276 394757328 877072929 914349071 976532112 64536844 872403839 811405719 29086972 297277188 698147688 671763640 561945020 422979738 117804301 764625498 100853576 627585499 943913705 954175130 1069380038 108848776 451231979 398294719 67831120 776497772 916443179 972541492 1041018393 420425069 1035084690 21230331 800301702 195908372 232962566 872291732 332825286 858255890 548554753 868556386 21423117 178065468 671832155 254457425 704363682 904116798 302065086 1032961513 829052340 835066262 141439772 942596097 475921502 402952046 742359166 888568254 392846151 681310307 829281608 51905253 32559816 459124317 153295643 313648781 156857728 281936348 201890031 844837185 609751926 161294202 752033630 14103681 1035736664 958159374 539722617 76959454 747192411 343577833 141993984 44294024 688809025 584266619 4614444 121373570 668148474 709318426 431555873 537382607 571815110 533796569 244541418 357974293 545698030 779182921 150066141 461138270 717815963 548045150 107844344 213617166 158131836 595930869 122783348 130985570 35413213 908062569 931401906 451713589 85634412 740682974 717881442 711093561 1018669903 953639886 409631670 315841852 690145193 482043323 436537269 282140083 969283286 130280052 159415381 492867490 673450249 672911592 405604144 988280787 816189207 836709972 522490784 112929394 764128288 971794736 264063041 999699508 62963650 749047560 652756135 626557567 841428665 699852859 483610485 515871583 678251641 481592329 743357257 243060709 384307717 414897735 430110077 42849295 347184009 846920207 475141917 117710322 70071817 1016017340 1054653480 47842612 862541218 650900910 307637715 468744145 435416609 600623489 997725977 584845578 318925075 34177048 573372085 195310804 438366111 164629629 878382178 823114607 595318448 610197965 179295451 321744416 1002748592 819409646 966786735 994152255 851129744 70657104 927322406 1013369750 943351570 584333735 1066247988 33961575 337601486 245215378 330616627 246561347 508684613 727385411 254978808 106945284 1065389825 659830134 1043640055 910583275 612693465 609763442 725777628 127693369 317726207 193496870 257861363 303046386 31612812 712403761 201563727 195235867 326996298 320629769 661373548 763492409 1024166355 892720991 599278672 755394918 328704031 897355834 111160939 526834247 176890378 968348228 582211408 713026327 24798617 153362509 374258349 374229445 160162020 237816187 907651375 225326394 994712946 19049525 63198832 847718889 465686371 404996706 864916998 927141341 484332973 232755145 251028295 220524292 579397991 92685402 13518727 227630079 629402705 934075233 679641614 175515887 581523035 927250432 431625137 457612646 25921880 225269828 96438267 486215768 880389292 271265258 882904358 866307329 578657591 810507936 729294728 1049860177 400341079 259665515 3611591 159076294 386524607 1026625145 969272526 756927563 962798247 181745197 718199176 880186489 663498240 356643232 426313830 431680874 75321616 65009482 317369421 833828745 14563621 691495940 576569838 104705212 2016001 1029884847 199833810 81590188 752715698 734832022 696725746 115929382 817018603 623166562 319777101 893066911 867124813 1025388776 584280258 78484811 52987243 713146852 206125299 394483847 778166590 1016419694 838071379 242775717 1029831515 757113283 66055333 179291875 290684804 808878599 535533014 1015657910 312745716 229414111 766009585 160125507 1057829790 968386808 604025119 245965541 783729414 1054214170 663429203 858065377 328171573 445090826 122176015 46382907 871749262 468858316 362382535 961689589 116814319 939115188 104685020 279906159 873006350 724279103 1051897992 267686946 390951884 494281627 172649574 1040919282 656486561 757851590 701060405 946446811 976873010 290551349 398733745 646028162 1007768319 621468317 726929495 15674588 23954140 696400718 38085732 135985103 54207356 781769010 1042510190 772937719 639718440 650389117 137387084 735569206 798546148 303583917 271801245 72526715 1026095284 486239399 376186121 581326991 706261100 433298103 813106086 41210204 579281824 499640863 695208913 895634071 531279728 43496224 796692608 372169682 10648458 498188343 226034462 404200445 344982095 181890543 17553009 901413484 558507504 507033189 563819994 627871471 169459206 110102916 148018786 458856241 986910929 172173410 969326631 1015816948 183281730 110987266 292643926 80032630 721789851 319336643 963429759 88373298 388841948 1059294272 42991634 269425607 972280763 216555590 529885226 222600684 346793575 488244577 551919460 435577277 575885950 429967892 770004630 1065264433 706896181 493179319 947753644 401655646 963699862 103818322 100504868 827803062 849897535 944225788 849867657 725807806 953322137 989537891 625337654 982339694 750051412 417911228 126722470 511277939 486213778 407064326 45981472 237894250 440662273 735566188 570044464 771226038 229674814 811743093 1057443224 711210106 535056909 405579941 838370888 847228702 119242424 497194467 864784459 612975036 204370658 716093931 782705110 342650525 249761381 1040272814 558421140 784016492 176405984 143465882 96046889 911903896 401591022 1001659377 630059400 613510139 266773689 57030053 157874099 404176195 583088449 655690138 992428166 540239378 351776622 318244133 866032458 885886822 276010217 375326118 90470072 1050188880 894883212 937795857 36701826 596631024 649961887 883730796 653924319 636721875 540664497 416024203 345141249 374071843 519089299 930303901 892712724 287362453 968691208 90453690 577205408 841214526 370097415 775648951 375001070 109915194 638203166 1057694249 40387133 453159986 910119094 220881423 1018087257 646106580 774134276 940878893 532458577 539186829 1056557736 710056880 413213753 953118577 1059852656 869696550 604402803 692726182 406034727 1056104607 898845546 768661504 818030306 235081039 974457599 648935043 346036718 574931913 643934284 154740319 83869891 523014146 877719763 459624785 866418782 517616703 1034429642 970211962 317767340 892171111 576707516 208373566 552455326 950278562 463595775 218098064 928616056 419721444 348540902 580407743 451402158 547515244 895309182 952069415 107869941 197915405 762579456 687486175 450822427 607111095 635547258 750251051 182206036 140212615 978421809 320973279 565510048 334770903 646343650 968405667 771408523 518626676 977963000 102691900 727314335 637532190 448344983 1042691574 919969286 738891789 809447538 491211186 695525151 58480917 77951533 1021666314 748883544 622386272 821085977 282990442 14601743 378470332 646645972 372484136 977078671 373098282 135221629 750771396 1055203414 821984703 734273890 641548583 262195919 508084379 335472479 923888008 960788571 282383090 517052996 796383404 684745290 951627356 467942019 302307578 387593249 119966561 534247934 411069131 737291059 546762853 582061111 410019828 1025791725 546293405 660443938 963675664 91760551 1038335517 894293420 980908156 555054825 99562753 644090458 1047988541 310575689 502942700 663653378 475614536 851973050 812226766 1004942636 185722379 659227059 537364753 472370846 111258378 331701825 996587333 168391328 142641938 313828674 41880958 333801450 215630742 23174470 893929202 747230925 412130545 476327347 824959382 1035056282 197487670 221025137 890229536 175335023 683113076 417759466 1000022783 787461253 264650060 398649146 994756670 527326639 814206941 483154695 234447130 58804696 333286314 348161452 488386219 40382865 646224545 400244337 405694360 636784658 411790195 932827143 643482041 764242835 937162725 792821637 32426942 879451125 190440838 478643978 413966014 691283767 606408812 1018130781 810106972 434076420 998922404 275449073 362552109 335162945 419882464 1056423757 846148669 507879540 276380984 996445185 148302780 924675474 801390724 1032956206 170637761 17113028 535085549 1002961328 614319697 599943961 786626435 821018164 485669310 966211544 443364389 183070011 316733705 962391756 31674064 119812243 553475810 849986063 525135058 12428875 969582687 929816043 558668665 712839760 545227519 447490167 272926017 1070709800 363956225 15207154 903390134 335270875 367255276 610699995 833726427 810576006 880311932 777938632 458091831 475035651 208125435 681754046 404837483 37411513 919554943 998671628 171357604 575263456 628383412 827638313 180757735 633629591 397681673 904122059 232528280 388607369 488485066 254197839 974282824 1014771595 798618318 172655812 277984127 419649718 169089016 830390712 452352096 428824892 365929182 315383579 1011238661 1042417536 862374782 471812186 513950099 512381796 321394678 458984477 755364788 397125515 110447289 456016501 1050085933 981238691 741716116 595290568 173962650 266098402 427734762 795331410 1001912013 676659464 92934370 245595744 1020174850 672443031 534768839 765681225 13403283 102312108 443798507 289904520 219966966 159708473 98964541 1028743606 391556504 33409925 607155215 506923106 923272079 727114458 1014794870 517361730 169049419 11413079 803557948 1001057167 238681086 885577085 402534610 1028563419 865885014 994954366 244873622 773271583 832642068 524481786 459736727 476666229 17243160 461085575 635534106 428112131 785119620 134507079 598831262 666555420 26051028 548697234 829102072 675945557 773081444 477911643 243817214 366390021 768722444 52256639 799508022 939373315 15072326 151148376 810797992 751674206 939398439 185001621 888634998 874200445 132889545 344946422 763194473 701644395 581772918 419202348 761250879 908119844 480701302 11562825 699703079 429637947 206436488 682834775 695001588 786317842 939564186 452502607 702862936 150703492 394396162 28749395 28641284 262818218 500064216 282566798 111196883 43241022 306744332 860007345 846002903 662776709 1063297112 386930576 891471870 222070125 897777577 602529538 849055366 427251113 331151163 422186690 875118640 185694323 42229469 359677166 36263321 231928241 672248646 1008793463 865380623 11382940 985508258 997640820 501380400 75084456 405701094 737577789 98895878 720931058 1010513635 554384311 112528402 513623403 495040062 1031576224 840689506 139216630 283662638 1065737674 912988223 232686674 684002765 413892547 880731031 263701943 505364697 659902866 960826788 158067986 681996353 703260355 304955169 67362963 939037284 132196017 64392242 365939155 911688304 348670554 779530276 952507260 300614920 453574574 332545633 519787183 734563113 499769676 152652035 230726912 557089464 622933883 886687074 588733413 804076836 195925097 779354447 213539254 528600358 484281400 233558462 146964655 544736204 1064069306 399004676 1044708987 95210968 394809534 444179582 236841739 1033062064 156488418 80374008 751403086 365818706 100188042 459423589 487401988 979327069 278629854 107757048 562758184 356227381 121376498 723987388 1018282066 247154424 444132071 518564875 180509782 963293633 710370188 755769497 927479477 494033260 1018092628 92970839 50702006 662661561 402538477 659665101 876098435 716864812 99448791 1006628304 9213551 1036827907 436881034 688432086 103020667 572159153 554310516 442757538 742077562 1005804090 835637567 261164228 51114068 637566468 495439239 97119883 1038320895 994246700 108349488 22781777 992217636 971306555 603806320 178321202 926864869 544913928 271563478 98620561 184567676 339942566 720859757 224320379 202315697 436401760 331239349 970379675 1047004678 201283508 160711815 612595909 933977127 560999128 798612701 599271874 419569112 246621191 773768475 176854721 553759201 1039642787 753432278 829129455 228517087 254522565 449777823 980143387 652458648 928554042 570920610 497100845 372245913 457155964 286246689 709704905 540469288 256033746 638713634 151958780 386777552 908863137 265701816 813874268 799662674 396865028 836867439 887219783 169401246 640828914 672284258 927547886 520366404 592055346 809375047 605829204 754762506 324080062 575414445 815284397 133492028 688113809 724248087 623765695 613211725 128759483 1057046126 346053145 55077954 816952617 916400764 782059638 536939254 267792984 540528679 919404667 911423812 776599133 891324012 750857480 249343165 493162908 942106994 842036689 134185875 600771998 678490343 629887986 982625362 188501830 14480497 897031911 935607397 931534751 977424614 157579044 643730848 333856686 27729655 445214661 562998906 390956824 360131268 214557164 655777151 397152884 531644005 735863806 776960495 158545025 441134307 636712898 181769444 608344572 196797817 245922964 649630188 271146776 332644268 852700346 955877254 53593438 144986929 796214825 866105775 631039288 622156465 656257989 720050913 602707137 107476214 644692603 250535829 216917205 310912542 856289534 663620999 98222496 315058259 857076275 830751845 604719048 117893748 937183067 381046023 377801561 953989622 687367426 547470468 401072618 715901903 174155922 184962236 712501848 186561456 38872777 315675016 274366233 959770052 588803239 490738705 10857367 525146227 819057159 909147613 954503736 597470399 914661894 1002351576 79927815 193032139 464725801 738915550 136526533 429030726 765996698 59595826 362994696 1007510127 649474972 829852708 856120425 94673134 920088118 349905898 750834908 157200607 1065829881 701267639 788662303 28374566 850874258 350239336 771945662 819412206 403734244 445061635 1028765916 1026399499 621394909 872267215 264575693 313624417 661594058 247771339 792501581 1009919836 841092612 477562798 571669706 599866938 43691257 589701692 450629739 482849574 374393712 885571077 373966728 438978365 278560018 521525239 140076148 167487318 342269430 728030599 143205258 337522944 675088216 625836948 826198000 212986993 858977863 67311548 457846771 242547053 427712348 491749926 172732197 358190309 826666374 378427897 299956329 578090225 866863292 627032912 927958049 1057199189 888925786 628394577 72884313 1067775477 783025830 992238382 250323750 985260632 242554101 474722199 895064445 965894353 183341019 798634687 729172954 1008717077 502984646 690809545 277205180 604698584 938486582 701197865 736727698 1073340357 427081896 24375107 812274005 1054046600 940432777 161471402 525790447 622754767 100024288 918818025 864965806 241382718 712868920 812976655 597099275 621595137 726732193 808782803 397884263 400147969 495190929 662197651 928693930 869635086 918135361 964519788 879941896 197509196 259665722 480081424 693801086 838755459 297361812 1062678959 169827988 105149161 726085029 834974558 592698403 212212416 744298031 667536383 177287167 457784504 263685512 50814403 505990581 1038927906 51881420 612859821 449208142 176475599 346445765 918308745 708198682 971595627 470008557 934418147 327722784 304947153 123053377 960534516 819305935 696347291 592467761 26273950 182955145 879990374 225672702 638598446 319421967 781615663 663466745 320688664 126453985 116623630 605700719 386742399 958410671 548887887 395373114 732743582 956718001 185668213 106339394 992051087 173421051 856769784 865090189 327830054 620438258 467870984 334747797 821344637 551931943 974263964 121042002 533220540 586777841 742413478 1066670120 856607561 703987570 17341148 379445421 571671357 164601679 446554183 765177819 17325989 982917447 835821042 894685140 414544744 327942902 332236402 663339136 95659396 150639409 513823240 593636398 655799504 818583325 1060455900 904506244 462942549 170925787 595907718 745330437 861787170 764628769 770015805 292911290 353488590 612781659 722433176 965765266 774453614 882154069 492046995 243641416 774173003 44097438 713465066 272443928 347443083 511431927 511698105 351712726 383681120 200130173 215778148 495072499 749777094 917591324 32076809 544635397 267525918 428888359 373194611 925633469 692635901 830797279 959604782 465665095 33416813 233394842 834522101 103542018 125369145 120073253 220071498 595127958 243468708 6603847 479005587 517587120 29538879 585255794 107820195 965406162 351595114 301206501 604850049 781062580 178130501 984573150 1004349278 831806228 210219505 530328888 41584585 811349074 960573600 20441249 67542601 1016516432 699905299 379810324 953505559 364608089 95463948 1045301292 905247520 1039249939 603032199 717846576 911950267 142633741 308917646 445583699 533220693 739695531 499131205 108691410 493708498 799893490 878086307 728294311 1012313944 467630974 936588525 689953929 71927020 739259284 624096464 939883400 915216569 141311778 504717374 609696659 879487597 73471953 1628625 341402113 131750793 828015438 804091932 267971439 562384196 929138984 131722148 35597665 958726458 113086014 652936127 5491666 532373380 114347311 652796080 42117207 584994287 416734095 555346173 557417223 544619466 1067542013 971563728 175581847 222756965 238117904 599997704 31792295 474088748 593013859 48643969 974558737 418484900 701700961 1027690339 111842811 647859130 162630540 369593249 57375152 153957931 42917187 249767476 740835297 527443266 785986253 119200664 70796973 865667458 248876829 883330242 953144709 233315276 421617850 234542652 899839370 81560949 986430678 564368648 1005215722 290791769 222039364 693187742 806658609 241956544 104707367 772665247 95701297 1054507285 564938072 256467180 632255605 478310758 357858931 640079 902240894 385871575 77941215 27498510 425592310 773800694 600618254 1044614511 546484957 520270871 405106511 632580786 427109939 882456348 40868835 164542054 535070473 337296963 431712589 579367828 203808846 669869102 658044351 302307244 318530235 684304687 933408580 500144739 248255268 981591484 999459408 1016327213 756783891 80856757 900266148 886377849 252263493 22960236 876751698 46811062 364425763 26502013 949804121 532639537 506821522 477805622 658923341 932699266 379175437 219184646 725009065 149534101 972963367 59019157 405393256 239532513 484845330 257865640 675712589 893092861 659260053 1024736051 910367638 106850163 1010646189 643780100 871464679 940810837 564168717 245425353 241428962 556139311 976587981 723045198 847207687 425638399 323422140 1027738651 113706798 130521166 553445724 493218289 147538505 248000677 965033917 728519743 183498706 1040175460 803895934 181154630 881760505 439548909 358025974 790073487 45914512 301770935 181525626 528440820 589811396 452289746 249275225 831814215 919088992 881482351 950148077 1021427107 913985497 487790401 39641413 897002402 382530633 462715899 813815493 728449637 415979605 200989074 535083214 977147934 348203016 398962665 104515107 590632444 1007986105 920244292 170778137 142805203 915149811 143800656 686102225 618792364 175727328 82973636 718010186 214556036 943429234 646025120 106819235 726263799 413322504 860284838 550210995 247848674 951751596 351573731 118470711 73880159 887468989 648217331 663242083 906061213 498923654 340579176 147516503 960840772 1048616557 895925902 853671734 548682818 536197566 16445731 927052877 710483472 191480355 701289006 600605527 394694594 115288105 33717322 533429856 674532022 712651880 235945378 886270566 708090922 1039175377 553011424 574920187 434333064 480059869 209674906 706850517 129486643 950473747 584559956 27709705 785858980 988126653 293890380 229570484 867158215 940811296 335755073 269582726 734074215 161358583 897486982 882780738 6847791 953790966 809191464 625623792 410787205 418753348 576419005 527820249 614810770 754629156 835028913 899627099 135254966 272268279 374450493 221523910 319372857 227418165 466249696 354831762 527152538 839848631 618216938 816765516 639737299 863997151 64170700 146242024 89585328 198066066 921637632 591149283 728918294 115953660 340318252 652847598 407690497 391707091 648037358 224622258 899595571 877272558 132345970 373255845 127044771 417569751 156829960 1069701969 331207158 553208279 706552449 897214643 1055816092 1106546 982256048 342992724 177383767 822696264 114585646 754745866 610436780 877034211 891957794 556685059 106379427 476439404 743762641 608668094 898511910 662193959 355344610 83086389 562495972 384594294 922866512 394894884 307236943 422456848 856515274 912038301 200823593 117890246 157983145 689311112 361993423 969264172 833230377 835181880 615761689 551920361 249931093 381038913 69171107 9938023 576614594 38094942 104216176 769449125 608067108 897121286 626522763 63661012 168885715 923942470 641889258 931786902 45705744 79652685 135167712 858383636 526076859 583665511 278411386 12048247 154931445 54065271 204226664 647895569 949486149 866255123 1014692145 85871504 181206717 325441973 285754739 1069369545 573723750 160254491 448871388 984389263 81508158 707036474 695828038 37962514 772079203 38108131 965846793 876505180 117845661 20427919 123860133 949843586 934825299 413556872 995271299 858071646 1025867642 636865008 951612073 363505247 859253049 467074168 680743776 37336297 713858120 444575626 710502712 81849720 788669079 221640078 874086202 232014414 525446449 155935032 854585713 281653860 474115817 295966203 344555798 891469662 835938686 197447176 197275380 1017795123 653752728 520272473 271607282 101694040 5937738 759268704 1021899539 584272336 412988250 1056972376 31347641 574401325 469708325 26966748 155889644 487618356 665138357 681367256 1032832316 742176766 864929476 627494057 833537338 184372639 676744527 625455248 1041489803 565060332 869014628 603010373 963397298 743770360 782274564 874880611 715036681 304011984 299349605 179228233 653712218 159769685 282899810 418180817 575258226 654602363 436159351 950793499 108090157 352482445 614155562 10256818 43335785 290624124 494164635 673298158 130211664 714821648 275414176 522053647 604590330 947173986 609883559 365600619 579387091 48601251 283265713 847625340 999866370 320678628 812610539 102234495 33470308 244306827 238596103 483106226 364182634 118534047 1013146818 528413401 706204076 492055871 330325443 633069944 45625435 560205553 771105960 42201663 85843976 233544231 727280676 966875291 517997770 594465846 262711651 226799468 218220069 790607272 960349469 844337880 606459528 240772059 193899939 90537518 466691140 354908730 215948565 366357809 578971567 763919192 450436158 607045429 16032115 198172491 235418194 425409878 640770584 802014667 609148438 57296582 930646792 320758644 310493848 351183058 206286867 1021211959 156978867 267704395 990594838 648229899 382334510 315306911 775609373 357946182 881416999 449264847 167929783 491300825 1036720779 141706755 480376847 403068109 371596668 1070687568 268293092 660433563 809437502 195765602 282994082 140406031 214468590 31795120 556684605 736591960 859171437 759043202 809045087 1028676107 794858620 963121044 532084631 618451216 42711148 624657337 850259107 887788459 831751860 471330486 671494241 446588387 634909706 1053637919 851199989 633368766 511045447 655043668 976098664 479213555 235055143 550194734 490962072 218447640 367954041 32187286 826785663 442487222 772667009 943137228 78463233 13059299 851246684 938864583 304105958 646598747 312888354 161139591 801107669 630388676 663255175 534223467 315207453 151190356 141664742 134640188 193489019 129062326 664889866 544071521 295743285 93125494 418779952 182474760 844637484 112774288 535106064 291794955 230777849 862906638 585811285 17599179 352530612 191429317 1072060014 848028603 560956914 626682673 670292934 636634024 386886092 258972697 498935631 414749689 341545396 1070982968 855069614 594587364 646252759 479302043 448972482 1017759058 738300069 67708061 122770470 282150183 711764671 307809508 121759249 14175560 137419796 769589933 220168826 1036360017 410192125 816970256 451280815 508473400 834956031 125907254 2556242 917355962 872679266 1048349228 135797344 899016242 881293013 44542292 201408757 650984763 277524874 865379066 153534187 321470152 640350867 931726611 123130391 768391784 614442960 575871756 320391731 981315023 566606157 425094233 388041063 732802773 905910419 436817404 316898858 583103176 508549643 1019508180 335923595 701375261 778823155 1056118469 833893462 764965390 803153593 748430058 121107722 923047964 443380461 432669736 962480176 687134091 681892160 390431742 949615932 956953267 510187857 315769313 3884863 191117171 567781009 906174812 351278642 996480463 749235494 236206679 1028177154 893162710 676899254 829215208 239879070 956603830 988358314 940614791 40620022 873314390 193444146 1047822459 273228179 493289020 83964460 529633865 862974252 901112436 937921454 707183866 403749558 547938900 687702561 262333975 604042880 929158788 634349284 952369830 463144795 354820440 681218856 736263638 460578674 169419648 1031429416 477243838 808344746 123073312 114929996 242023859 572482568 397591874 215668772 619864841 723951884 340384104 768263444 528080602 354977797 53404033 555340187 60103668 536932479 816190266 131993461 736122101 970951033 998093040 143016469 348098152 542492053 117635277 851503211 361272842 1018261991 47907725 231343184 38076537 995629718 656041637 982251769 24114053 925169044 293229492 553027198 85271406 202532919 492927635 167959127 725210172 608170601 215906558 696853982 197348501 167558283 1054218874 597387511 549317527 442101464 517466437 819058345 811992448 769808995 768538890 31991160 752599530 676021055 774976919 176943228 460181350 32386739 1063112648 544918040 868783454 333673968 116004831 758808485 137629705 894781984 49029431 130413395 127917315 771480196 910997392 851402136 617714500 797333973 520674512 119801251 33136579 472701049 564215994 779716114 832990278 685658954 802977594 207008482 90279367 587445723 184649965 394796263 217795093 17247674 267323642 758897547 13796479 299492211 984082763 190911942 973134549 582610267 229673505 610486794 1048637473 804010109 32353415 138968321 1009757743 584868760 207084461 930240922 409757504 570571710 668079522 450284765 21340076 513082826 84296500 790968129 1039441228 327286338 908962280 240302920 274250781 611471587 667300344 1050804589 451833455 791707383 60888656 921288571 243161768 873706452 448972092 34453008 894241025 243269773 212248946 191613984 568043099 483677975 322285130 562562885 349653988 779408176 365601940 659227395 57408660 575411621 312330576 902090712 662926290 315446325 857854974 362484867 849802159 210160845 946160154 1032180430 260089496 1044686328 605050861 85453104 799105879 941087641 206433279 349485244 129264432 764557096 112647300 738675478 746048876 756771239 959075834 589537572 59407937 834740263 1043902130 890599022 393123739 535922834 1033273001 32413885 546614847 849275781 344040492 57799487 718218459 252538205 605447723 865457117 913201457 111348097 487374078 1018338620 33527962 834395544 789048941 500654905 249948437 432677204 350332215 506229193 960426924 219494118 696348747 295286712 632408049 438641545 223776728 182479756 489905119 768179681 292957903 703138692 419592922 392944717 655684611 879057044 990060121 481585477 735958311 1027117452 872351098 653881586 797897287 797563931 324730874 785574563 174544477 547425508 283649857 56353695 707695713 99888491 233431307 440081620 250358911 727337980 859305401 697975585 432635875 417413517 623967450 1003156409 127857729 427953748 864726325 283220365 672014685 206632540 500745492 482160405 796053394 913400713 793844662 518734668 853666660 375435389 604476400 559918614 1021003391 118360753 801383733 901333161 47788545 1061897390 571933329 407017527 197526162 615269619 824469683 578530059 828943693 371761890 149188521 157425414 682191472 518595200 470932578 670317995 1050510856 742647252 167198652 942013519 319303969 297914325 23527296 494226632 555612809 606910215 385563769 85354210 489762226 200199404 349565449 434571787 905677304 638548643 930342802 453317141 216950057 450419695 192082050 86486042 382813375 320791904 535420274 589768286 134074115 1027713264 525732702 210416501 963826307 752750956 950723429 860452391 982887670 504330958 190703005 241777306 766655737 819109940 414899014 94535212 549168636 392702354 77506250 478474322 533185435 727072601 200941870 668084742 535793290 700449111 66799625 863778330 462434829 551845412 977361736 11838569 760613260 558164867 704259020 457324310 201461836 109046217 60907775 567104811 278788577 346305654 551644719 785381607 1067603864 33354565 558783009 364471535 915874525 977639362 289088938 286797806 972426028 766837624 241987903 18418521 276434998 355073395 847221517 432328205 527572371 968351271 821438163 512710197 983827949 662293437 212210011 615984357 912292324 328898104 986141407 219333074 840445321 249391311 995255242 70655058 403181030 354244502 244005269 477537330 422118029 51434843 392638295 11140463 537920615 920893924 14502565 785548875 664607547 624681078 843844608 841721927 569497211 214331287 350811585 207015766 110604607 672126839 56372209 1061992255 168935773 545288702 702489517 298499210 44192691 899248096 1014745484 501752288 449831456 337730706 287998529 778539488 199773330 725031573 198305970 199292051 478020942 80950185 964893539 564544815 941717292 948473243 652185662 103727929 509227384 453416348 367886724 857838131 254728562 10253139 552364471 264979401 281488668 857786411 149863037 1002775115 366901038 1065232968 624107909 649977001 896057647 609211956 165837015 36586477 937854311 959005487 906607870 1020187032 684312123 67151253 408454010 452876679 254553602 937815434 543718274 260378808 200974337 597264408 417461712 15530918 234473463 844738655 200223523 231899983 405636321 78975104 747231073 597131169 185274421 1048159299 989986398 397349582 518547145 474951899 15036744 294726860 143115628 635349193 468306224 892501465 557942662 75157401 512612395 64126795 130531274 717248341 409730383 860415592 621312905 280219584 457625229 313684151 877839029 250650433 184249321 350413628 350345682 496765326 610760404 792761284 577063485 682971093 322559256 605616184 455006508 193816519 379862144 300173509 766385957 419840904 325740468 582267846 847346400 121341659 1028991112 930146416 748705851 463725119 12583383 628011744 909839727 677611178 230347431 553374065 738046876 222016747 727811948 932326251 915267773 644556891 959888025 131677862 970189638 607393516 202192542 948038107 764979589 1050583977 577959067 274996161 164086469 122690369 396932757 939032146 588919072 289228688 899948127 99730065 224847587 969539422 1002995549 956325063 555781848 732433803 117269803 1067918990 141960809 587415399 438414797 598744476 308128243 420928226 888292183 140557180 969453139 469558384 584725030 879487001 558727724 488250717 614494427 946908085 912606901 817734598 450125646 857267264 28882335 381875103 429700043 830365943 10197019 73328274 565215911 605131462 202439332 644628714 272244434 88460222 764880091 1002808745 1049490878 452313463 107994499 707419875 206402722 362833481 1029876699 214206354 434647836 455780409 38202384 433116451 361179842 830558700 598810026 618168020 685224879 950571902 312634652 173981528 942840649 1008545614 707754154 614053504 912359442 1018918533 65011817 829750404 578215328 335094484 93230070 146085700 58860550 566830863 794007676 220306628 143158499 435288862 92143584 1006420819 115803268 643349384 113329692 385100462 170314435 1056036041 144343795 856971610 365039438 376238460 394093396 696815394 830281062 82044072 416148657 652048971 145398112 867381615 947054470 76008397 1041678748 810887996 40938186 322831899 776731114 482135888 1048484215 86107124 391286661 670003553 445825917 704824618 147112380 328537556 965803199 329487343 683232391 910990296 198324752 1032714976 12756112 295753115 579281851 516167011 115692102 826306310 515882619 847496746 106161160 75562683 857305538 453378105 522609274 194360316 262803239 997652261 691603246 300373377 203250229 363427226 385604829 1010471199 176096055 702209723 176847645 853257768 800091591 654412345 16292231 1010759208 447138200 1012335145 883735918 614153567 910040241 1049243293 690076240 70304522 607488986 480329111 832879734 156314332 906144152 441238188 381861330 1038443108 519380138 760056285 1047270929 384235060 838835737 774786588 422505418 665859962 810011785 596185570 499124731 408770472 1527707 723698560 588884895 157539499 189922228 1042463689 189020988 974690473 664014706 146569012 317141295 432919349 755805990 663286295 135884309 511201745 753921788 62152913 686294955 605822578 288252578 479084771 1012261326 361903962 895533952 146775037 840038232 123667848 295889786 284049061 679079738 507880288 503660920 864408699 149614154 56157388 26216318 784350156 748010910 1067274378 259470776 692211612 517245167 857288195 222489896 853911137 731298622 808457394 496411217 128482856 433802317 668243297 585636687 652178031 1037360710 211223461 951067042 372414881 212825947 280098290 125049532 926266551 658149027 618919591 940797452 346025639 801720116 146560708 1010545940 852533354 1922607 223124473 584086430 512142860 626123149 816844122 344287168 309696852 879208437 13629426 435236049 814083738 317024896 558103892 365618485 8348853 203903861 383695214 132838641 600910106 911009194 275754838 658042410 975460630 383322453 56579104 579223786 644996835 615984549 550799551 748598013 500830392 815793485 725776453 976064751 302150454 571592118 4976396 29728669 959032287 446266427 248319056 963085411 943422754 34519441 901204956 911642952 92674977 796659217 706825544 1041236438 708838190 438554554 499902314 952285993 851541673 863734863 752160002 690776127 118780707 893490059 570375200 792470998 909851917 156217326 463598048 61196448 749145460 386373209 765531348 689569806 987596735 195865970 94468726 348814700 1034057816 1060385070 156833080 731797906 755545675 707604307 996804069 245745313 994311330 1033354251 435568054 549857027 790714550 284911662 510405323 314703820 204272238 365097132 391008549 450168127 692859001 536843919 940723253 1067477339 30580518 251285308 225746820 25771554 337447430 98238440 659348032 684714445 429316904 959184400 460555477 1062511478 475718473 80600897 284214178 928004350 493579293 747845844 383065852 1045869307 374132637 942731158 170923187 1049829304 315366008 310770724 620175192 756405068 696770541 984942499 818745183 227354704 220294024 348017004 85726480 1070646029 821419424 183214462 271669361 1028101820 323076187 736655746 174156889 182633091 233585599 111556111 589242039 642672521 468346874 513634787 490993820 602963162 780132967 80868256 815762603 874700918 800373162 714730825 955160233 816720026 925021768 966646103 522228092 1065463800 152030917 649733933 978326194 34785042 778681653 523389778 440638205 297795624 36100483 257511531 1043786694 201524919 153257483 551777771 599863489 261197182 715150369 1072464488 392443511 63775597 367740973 394556080 457165560 68667822 607164205 370478239 657665733 943843275 177374895 862887287 797367447 1035657565 608894956 523615467 764779413 935226287 656457517 401640356 1067023692 769532389 1016131236 262834579 396398269 902911753 296177669 956120425 646822245 476073132 434697760 311500187 24719806 997889293 919289291 282948847 887699480 673478994 111847658 766298757 130108103 918872313 591736278 42919500 110332946 785222818 642590756 479188453 975335229 506487552 850230905 207265565 717807194 1021392956 1029057772 829887906 592158539 15567326 434506851 857777627 892680290 10041986 172057967 214861897 109884488 678011976 150114803 902056773 872571555 670512638 865506569 1007990701 197792967 972584363 618274392 825977481 765302841 161490823 733630120 45146708 70225217 903075867 247728311 479590122 955998202 435520795 486116244 224676203 577094092 341277881 325939815 937104144 1071892995 706673199 72261641 221319234 849102449 511748695 58491763 881572550 126628597 110317984 397010575 953858751 889535043 357757830 686691884 986302930 534016697 287897439 236776761 1029058461 746166092 806614453 50958679 134044817 138308750 935426158 815288151 18749551 638432361 840685835 907523057 836333090 593035608 120973189 38355102 557254303 302460310 730692209 478909622 619104655 830029115 499196616 887820836 369056882 714233464 654305764 303293921 577985338 624430019 751363132 63305015 883227504 991772710 533079135 265666220 134867300 581602127 993611535 1025421117 897843934 324926990 478522088 599306049 724367973 463374708 114761282 979331369 878595645 682698685 989971084 19423801 450982702 842437809 417657628 409741431 793597785 468479828 838207540 39599064 344210977 133703800 215608152 495274261 336523397 574807354 15185785 1002863198 389692452 3034611 952468123 405508797 609469621 801994580 245232196 975174400 728310719 624741543 612416041 559695400 684601061 638522228 644584220 591267084 876614351 9878395 376780725 255963996 5064060 999222407 21306855 595926718 917275553 586539934 317941069 679356522 773205457 390444425 819622583 386511401 273525492 516545147 15760894 875964698 911051082 38590271 803809846 4775024 123438286 1020064094 499240486 908975308 955779675 708249417 584391132 1042671709 564763495 66541459 466959178 391964904 383973272 758918761 25089474 1031418906 681091496 808710297 639366601 158013740 286403298 231735844 677577637 445036068 59237994 186036167 544145941 997580564 507323809 873968644 863651519 720065054 141701025 680747443 1071865379 585553247 341671813 391430771 768845261 194109246 126303190 966316445 191556093 409775711 871683480 590545647 1672432 790443048 85196783 451042678 499620802 486936222 618226193 696563039 935181516 370601935 613436412 416107081 871256194 228201514 940433953 960026898 163494155 548038312 537441432 279445928 897734106 15177364 731853922 555791071 371870875 420128751 1028615177 557767872 985603668 1043327219 1009398125 617023579 895090928 285465588 39375006 898126481 801939329 433130649 175516590 459087780 112481660 379932135 67941587 755403873 759693286 913334325 1055772458 262962333 941671745 421862971 568065418 719951337 482089352 266365857 214723187 597279958 567819099 427157645 636940854 451338654 3219164 1028181535 790451055 905246013 103972885 960092437 918193216 927357882 919421102 789477490 280885771 469271165 869323644 929541116 871352006 409531308 1043825028 37445468 266577384 274671379 250530164 652679411 982677266 533714401 261220959 312850673 709959291 880738846 222957921 260706943 1069696497 52700247 106215278 448821093 836841873 231576418 321409411 1007507659 465114566 847099079 694579701 595562651 962489331 378080480 341277811 693252408 244930458 355466088 275042276 908976385 297814478 821274957 774087058 345028703 877495023 922721055 974987415 459511007 709852803 600959267 828951422 366918660 521851408 192712818 223650682 789920987 29670341 320136598 527274567 62685226 152111238 52624893 1185488 78860514 725810697 875962074 812240913 1072102543 595614562 837535238 917541742 835627763 424659700 296677390 878614190 986456957 556791112 184566787 941504292 154270372 20678020 264722884 254016393 433903998 727454591 884356435 796041678 686126763 307100855 1036577248 355507724 644650351 151087220 607485246 799480000 196944589 1043725875 833899806 300358131 978404676 788297274 697290454 358562334 1017648814 114142319 1049700683 251696074 503076800 924095500 380004002 414764522 153038179 15343246 461874823 987149828 494685548 147575076 44022442 293854377 310121356 111783270 385410080 944023097 613267791 518726272 684071467 881180082 639406149 62649005 754193840 742984089 777193025 475335740 861958912 910393818 889353151 825824859 837401035 306098403 955677137 961330730 989130636 293333505 450151825 375974896 78251015 581484452 917368917 291332354 336519335 589033402 1021153515 811185349 936446607 612185099 910045311 246887006 328405819 527842301 230301036 969694963 119046553 65961592 354623285 1034417692 1023152646 918074053 502376923 53185007 1065975733 655216286 929729844 1047614518 848036259 55562061 750514248 675476014 16659139 981423750 1060612340 420115240 255040656 976938489 491891503 407882267 781982452 260438109 57064050 307114564 310045084 642954041 516382844 751724039 84603883 621294864 165964816 1038292131 425119096 128425255 549638158 1031714612 889191021 249889895 541843801 265184399 812005481 838520709 776154495 198340825 223602561 1038081420 236753576 370109450 457726752 512613541 106894545 41936124 493684666 1025172308 186831931 614394058 393963920 751939772 796233691 398068801 931595595 119512129 636122305 132035673 820619726 554924916 490762351 396143155 978134766 205277273 990763558 998754865 762091597 724549569 388821838 162757223 675666870 163453353 968535825 279902804 689211376 950747888 240587626 764952776 201092907 849965117 857842642 771717412 773855902 812804948 306823418 223617721 577551686 757496305 949557192 439469240 321199104 372618914 36992022 212645217 546334867 351781157 68410960 201875497 571176084 471310463 554324127 747543216 750240758 840397783 505587621 614299030 1027154212 313119580 807029276 640306704 231498999 474341164 1017732631 1023658809 863249774 297689502 117901706 120755052 1025047055 141974874 821813885 671396493 268405891 973238934 598682806 140207340 1016843787 291744397 290816820 767953327 605215894 47892775 133389630 739468509 512466337 1030850788 129062186 885877827 1029072509 219896285 32998025 136339406 120859891 410633130 100464112 210817463 8310503 628423556 183719477 644481051 195987531 462219405 496193702 367469513 192936104 61738907 1005649404 538138888 195339366 60831725 733810468 494398057 181574982 669675948 606134418 480514440 37614141 10680119 714403110 679358335 504123618 792095536 844820861 438912121 834518086 1049334700 1062450129 928039167 530428845 281748899 169017697 602280006 140507581 91488091 1040602104 568453444 320548190 404970507 441230988 626962677 1019451058 349249038 92109129 603135616 994048804 33442944 585523084 54605252 689612972 813743861 270092795 277262558 958010537 989675284 759315038 326938067 827498940 156980406 987387204 153832670 737392894 929130117 695873802 418209005 870632976 584853777 882500150 324341777 837080040 307377691 1070799863 1024982191 388978153 602017878 473958599 375105813 409105855 779519582 308783141 201514009 268797509 466251838 445953646 866765078 144775836 204558813 261976249 967876759 307646068 738192558 791208936 664168995 528769051 320019785 557240497 634505471 976876840 402708565 107476100 784778632 1034594292 114454338 980160500 179111322 341166820 1042252585 649684068 305148408 707588546 572913507 89472535 953397254 999053295 566341219 1066593336 8092761 330748868 341190469 133258632 458780712 195386699 389054509 916230819 361924140 46052886 609151791 514541026 670940937 179457026 16214370 845432767 170215709 458793138 413665989 970844894 173854948 627974687 107198528 461651077 1064188501 275095640 433121419 897430124 301990417 376894247 892960686 1030517157 81453181 1029123476 905978868 239775295 1038581231 225841748 853782516 921666551 1056827389 195170537 454449552 39024036 718124764 998756536 479370749 608437536 177896948 864576894 905261719 396244532 310899802 406569896 864473447 80509516 847927764 911746326 728699365 711660249 391624655 948415289 744468253 1003327827 33982876 118793476 603387787 633987535 54866703 486953841 627166209 213939572 116014858 974530355 631839958 945852723 162182187 62868136 1015780593 1013211693 816628165 515666997 463524180 220641207 959748738 428629963 374320460 362760216 197692807 670498621 1018796244 142437344 56571071 304221847 798969383 849323817 477938605 797147727 206182434 87265145 346421489 282023562 159174795 868087285 429237906 373277684 779124944 116451942 895409198 54387482 430464892 905598084 172765598 113094224 991828999 1008066821 960409945 373172454 218775943 612263190 669377763 1013953047 754802011 769168001 800277633 380047436 16977663 530537288 501397637 795507147 621573702 332978071 426094006 362719512 268519098 283304900 691648646 352629506 253476853 245591523 179578588 889041188 572856522 968672271 161601749 389295575 1052065384 343220818 477150241 250784526 309773944 97704642 530542076 415843073 312355479 924599106 983247796 647482880 45605055 559451848 340037897 455603797 914669962 1016209363 667791783 599292883 702456656 306427136 700888160 18520197 632434898 71658277 74622020 1031357351 142105090 1067124631 75596920 726675514 320657457 748700890 807843720 147637090 423178112 480750388 196566744 652610971 152565802 136499337 248219494 368731513 208909810 826865973 552011988 768640446 853378997 912562013 629473623 524293748 283700673 503932352 458303788 321037670 706095755 506836348 756733502 429729777 1053255073 123195468 113316379 85742111 171665243 852620139 597414226 1021437032 937017359 744422112 897777837 409812067 868632907 1057489220 348886936 369975258 774617678 922086355 214470669 993914656 689823932 603170870 12147167 842626531 1065004565 483469620 994568017 538403758 794596512 692636272 860416690 948373167 637908594 489700099 460571220 965443848 965911727 975476167 52393752 1061827473 79101078 792146333 72880536 481239193 787447626 627249402 784895546 695448964 297623495 963859582 765426305 175395454 619031703 544584471 488967914 920671490 659971325 442288832 248583374 691863026 211249949 583415814 491287817 309983115 214555622 910838379 203415137 796999728 96122646 810126946 1069586741 621538056 305434966 58902529 50384509 1006530031 514267557 353393327 97277194 890804925 619765237 589352256 622392886 63771775 857644709 696861329 294510757 775111613 762086617 484237119 659138071 696108710 75472059 435505109 89592962 476054204 381975539 733927445 267168408 187443004 141516164 940770956 488437344 825396692 387414589 818089074 732519759 93374672 501292758 491281444 217629850 620243091 60011169 250572855 650682993 833577196 801029404 880247237 456191145 131442353 85927860 329774941 244542917 840500063 255597143 36089865 561221569 462380344 196148667 581907976 228299633 320092509 52494844 888750952 906885041 142181220 615061648 284524466 184782436 94459293 296216417 548810773 255286492 78732603 265341021 397680136 1019304489 360285700 497528967 974927032 1059164338 864858714 171278313 505577152 553213827 299052593 377189251 843855926 985544322 863392402 473661899 803538701 367139983 967328672 1060130257 644101920 725120557 155599210 944194313 986477461 1041245381 111697257 582925231 869836837 440332424 578277830 51994197 931890703 432498482 240336577 818340224 361338671 345335634 976477784 111130549 299691519 563049846 95085218 943191946 123320547 921683744 982709621 428053185 489510071 402878512 551498936 714501157 859430565 145549541 972007604 497681091 360671242 226258745 56527775 26974762 849813259 170885356 137052054 95573538 944102162 491544060 980321757 761989858 373344151 856079367 670158647 866069793 589624983 568598564 1047577504 1045897863 210950825 403501932 635221434 151895885 870288530 740958502 169007353 5569521 51819913 216890265 108175202 976201929 26823645 473358806 305686771 934539645 187565296 938752555 907411299 761106950 349900500 811173995 1073043900 95785790 671589737 950178556 171047177 677367927 321496782 402798852 70391848 257993620 72685950 443078412 253474584 602463166 633609481 65728563 983120620 739143459 356618567 8505562 142409432 103773483 1019556320 151493625 930062040 671554390 227420143 722144644 827426374 56901178 574893853 379972319 936546325 207380793 215067389 81197568 619423374 1054104093 541302732 138068239 204375001 866612943 72382402 1059717188 1052172091 650016553 936191554 6631674 347294615 321514043 419109337 846046134 468410200 38581204 621793229 595584699 192034827 680189877 45582992 953655381 214364426 1010603591 379237317 326190638 383301541 555075855 728869752 648054035 110575925 289641526 543222310 684024971 47621660 563437506 701720225 547636443 51849630 665192098 946737532 873399829 718937034 494006547 35072413 161695913 784229461 182476800 618190020 409320150 767205406 750869456 337962177 382317539 840357418 360110885 365611034 153729307 400764846 1041471013 864547827 650728630 555398456 926953491 174393744 922225263 230513795 538778985 679279604 806698491 949457799 318197155 769948841 388791669 844898677 30614896 1018904013 269186382 624152186 873003677 499001925 209640260 414548011 62262954 983872086 549316590 286195352 836876970 544160026 655362857 645273651 939272457 1044132179 818010665 797553515 328866080 478280457 269334347 500931009 499339796 1018889229 517310592 919067642 117323535 496093831 385602203 808974272 594946726 515596854 904415442 98919436 942914038 620418366 143846594 229405863 132910979 693930883 585291226 209649447 377756860 699487543 48789484 686028512 407184249 363648658 752027081 860344693 644532800 580808010 13596435 592324214 951773191 965748824 835206526 630854394 147366027 224079550 152350002 224400081 865922081 881404479 427090017 923896982 185736749 773272271 257177622 115017571 496872548 777311482 889987660 1031634636 582699741 286872505 306644589 965538120 980328142 973018331 311821137 572965885 534953103 659512752 926632261 694515410 478077576 170976745 49230282 377289871 890538453 950807795 944639644 257438914 1031432191 344988499 840460621 507202494 323415467 213882812 107044406 1047614228 155255313 854026021 575231411 294544382 37206428 85352568 24853556 955357864 613076809 1033885813 501630889 338822622 768719745 92888927 101836369 489807763 103383693 567765084 730449770 769751841 96117655 91827812 1050561547 263600642 307471298 313528312 414572845 980362037 1047148991 470262209 445718266 121043107 746474841 564793986 390209490 716180066 917314189 229929420 305318961 66987904 514878799 746522652 388713357 247521937 11578712 871272534 282967457 266603452 333022679 988197102 186234121 943509241 88464418 759928807 23964200 1055002052 620568772 911988121 517877264 761403875 506206131 67248918 615356550 436691776 897504638 677064652 625415980 831254622 1001605966 119111730 124384110 678758965 791202441 836921667 686950841 264583849 812854414 734628774 829189135 993043592 96866230 1000794583 268141463 1005251616 806716871 909427137 845861017 232261517 55401238 400162903 919857397 45996477 889440422 629213413 965141194 921567256 133581848 689440179 402407154 29853904 1008985730 227633769 66272556 207020477 53185893 593766758 8155664 15783133 736288867 1012670846 626372512 257928508 135860847 52061388 838765651 424219239 259077752 487815862 66806322 1071473324 753281490 136688541 727983287 373898597 845472402 505485534 777967760 571534532 186324982 33264825 777352591 943382069 1034382318 143604078 195130964 732246530 715227248 419139939 125950404 360558206 1068981533 566312211 924011022 165949944 584296655 589992362 752488880 423552526 476719098 1036824098 1057819885 685799721 385081679 832592486 236515721 139722656 642955391 1071757054 908379737 106319930 175451863 1007971357 402649032 396414922 908515235 805005419 444971095 585433980 394628983 150956497 555507813 181903169 770899230 871508709 424813966 693366115 789438557 180369093 80239851 224514513 95992343 171329596 1049641709 95715545 791482644 195141733 882771482 22931972 208352007 697099773 183175439 545492482 560639091 94711032 688622576 165435279 169187517 602026689 569891097 1056520106 747206440 909549244 141013843 1019588569 140111096 15271097 724033092 315707883 393272702 8193104 611466363 1016018994 290835985 931160096 1042056838 316101058 97222989 567594107 904269856 173755043 348856350 993949353 1027669998 199929054 513527358 912242020 725850064 331546075 656187335 341725927 821800761 549421424 857616578 855286502 319355715 692135396 743904613 161081992 236435199 345223655 286107611 267098211 371375512 1029815371 828837044 188799410 661720481 546927614 497539162 281172381 677501871 954244093 836738165 556720601 917346329 69012914 287377532 1025129953 1008596363 640095644 82319837 533993750 811944828 668565071 117177675 384696759 602053657 102678474 211718149 585507916 1034258322 602724106 979427276 651711170 747460816 93091138 381383789 307445482 215206307 320842719 892843206 387189716 3358962 865312628 213626843 757512428 678316300 395438658 253658323 1033266948 87288402 120098370 996047932 789081510 404351686 844706268 808763378 739084462 155591046 786449430 180820269 194561569 703279466 658485163 807625250 138605806 695944033 796352508 806406874 159290296 18303088 672546386 562881282 186741268 450719250 957805106 935667444 780369709 721185421 865093646 571584353 216745381 71495924 1005169791 755002013 452172152 106020304 351931130 21120259 950883786 558561349 292279355 333768583 272413664 599875442 457389547 441329379 391570433 418899785 384992158 700681646 992383846 128570917 321913824 988176669 325059167 145070600 752318199 432419955 510579263 1039195263 475290765 696157427 90044781 151302859 933663481 627485536 250066905 367918389 839329284 234685271 365600665 564053497 794770633 260669253 902498055 463501901 902758789 962083556 1047089187 699179012 381607953 873317344 1069813250 522992441 764915017 149616250 468798609 124404686 322005452 210482483 675300915 410480597 224864267 706450486 46523014 1058233181 425523098 858065857 388985322 552043831 971585714 434821435 1055198510 485741718 602720636 955975261 565036388 100468887 391332238 1044912532 924081558 263097503 1047562648 174531341 951596011 437235530 312958971 1042478575 1063524858 481314680 705531966 472580343 257334906 627041974 551583523 999148106 289038896 204947568 478106500 743127727 348171910 37300225 151038552 299125861 331143844 253616514 784911832 887020862 842762858 741562231 1040105784 641014888 700856589 296414558 743445671 814911677 38100813 133160216 393772445 27729503 397527397 872743596 531212033 785685317 1001934645 935203219 283830375 497560581 12614777 382783179 776567881 145613664 41375164 669019324 591181271 939394188 259570735 24631457 243384182 799748231 396714280 978588744 786905698 130684432 156037161 258211108 722469546 389277782 997293799 999349724 1011479882 549386205 1055585928 715595851 42662896 409360585 424013499 667611249 989399421 940182698 438673778 657011424 399976822 983886589 972816682 1036059867 331166831 69236757 790639037 688184341 469678132 130648645 830281113 395347811 218355040 811483654 141135257 760773248 488976145 1009180091 354506595 412190588 776666849 788021849 165701453 267644251 811203388 771864327 439250079 718448098 540947789 99258442 818165147 1021453935 1028775613 633128662 534960041 634554413 795533955 36754059 1036077110 228107717 495517730 263676311 700114566 668533851 361744572 26095817 907874615 471990067 908797177 839573470 330997751 428167575 1041906497 514661922 16027670 422489144 595653746 430323635 258156777 1034355831 508062327 33829357 454990205 716341873 371735847 413007401 461561318 156208720 398173022 325068736 431856335 385487090 757006011 106021159 18082642 617055428 67078143 881072726 417214228 377338874 464162838 90792993 379077193 242183637 413204818 79419007 148604407 920590363 854039744 976773535 661872399 872829875 467302642 811945395 555466947 525260453 183374635 395807849 632109834 169945726 518402481 413078523 335934499 649723826 408923977 125362402 1009389333 850619800 697212487 207402405 1008357910 679211633 852315496 958934364 28395807 156914237 923786858 339085500 212773171 552294060 546931167 250171092 963880029 507407336 609845404 981998849 584494517 392257074 371578177 200053458 759488941 35558018 522091743 1053383866 437526108 404318100 580536360 176850444 62458609 288726236 733622191 960625057 699797511 310001944 246121812 638199343 25365249 561727776 899585446 85021448 30236848 970699807 965381245 42503069 505453588 1035347695 8122994 519659589 742980949 969709348 747877859 494243276 1024463805 449112287 731610576 290144110 90875671 573977938 294740804 456158901 726039435 218193919 796027350 923263251 530785248 995108486 328855282 351875584 665794211 113171155 617246858 789309629 666872703 998882051 392932660 316160091 213966150 64681343 642126225 191021432 628940998 923507908 666146891 127465093 900805128 536342040 592782115 469496968 449330789 674663786 81132328 819319453 1038983491 450386144 470803804 738517821 1045280850 659931424 169852852 288304075 1047954747 786860483 393618884 71304678 604628986 930577673 1041984525 32451811 388626272 821769038 782333449 866326717 424371589 59839800 775345652 1050203499 679092085 174551559 882089442 319766822 987017166 207760963 767130866 204732635 1033113686 408945424 17565988 1017693286 293774691 722098402 761639821 106925216 620493360 711905671 463098323 1030879162 681603383 43698149 881066649 764324658 392752503 756480330 114782054 567191344 864086176 534115837 637733698 1039034730 1042676186 554880018 292224404 582809718 273085501 845861290 137129305 261117465 999293060 809328991 47257876 31883170 252627457 535358552 532989048 483614066 76003638 114039687 290287889 83003115 639192592 674616936 4970897 947934410 14051009 747363138 492324243 1005159433 416252270 511394315 772982730 543256104 24871444 179516059 684874787 140543083 511455739 700621432 1009462951 552749375 725424921 73230910 852933969 375563360 525056588 503410065 230683405 110862701 1040125475 810534525 240922263 137782053 839164828 808704172 819318055 132666231 1004364276 974935383 1036196510 671486872 885380717 164126562 777896401 712629873 10572008 70950918 65086985 786554541 252056763 1033102695 964150511 517862184 962612636 224452919 1037828973 505599295 832350618 578332774 56164394 750355778 99289255 583738641 140680459 759484394 290954939 881663214 737764136 223898447 532417853 39877822 573120917 348681796 779475307 582298557 842176111 596413219 300461570 836184934 17951296 692685241 466104665 981245149 570280657 416955388 617486286 255549488 832791066 338988843 1027843107 541004683 439040635 594956317 258758302 37821873 599625074 68602696 816187301 339445525 505827021 522487933 517047330 877326462 414241519 592866711 750421958 967961081 69355671 852496226 27870307 626105471 745365265 685606410 743000279 360551593 152369480 67491749 897516331 583181482 401337993 1064131520 556935829 146189133 1052687966 828770866 1047354683 645111300 996645597 578341778 13777930 1034484404 217721312 83631591 658559870 241637615 1056748442 767594734 291993867 195403243 102031318 830664694 352433229 999411406 10132658 609880184 717267304 915117822 625045532 757637935 1040475197 1013744613 505078502 101793454 480783347 593287710 572323580 881725648 721735974 110806370 907062443 492668775 558515859 379291976 991032718 497078947 145333796 355804356 506992131 394849909 444084051 490903681 1001067410 238849193 216269533 14981403 529108413 849852076 711948885 457852941 80864609 970610187 99347802 849133068 196675289 386239407 41184343 318171274 808689870 149881016 323719616 701178980 572329499 1006925053 34937776 627055439 889579098 581568112 111731992 96773206 278551869 334266796 633072569 478456563 838533792 583867414 32555747 838038394 642437489 691260238 697155383 850046679 880054679 516856957 766803868 410075104 116878692 841944468 1072743851 315696110 999297825 590784 187893321 618174093 340797476 201052350 862224178 168728076 798133874 820188148 670214843 909592389 492680838 826930808 684435783 181649612 10504360 399911779 405359094 123429084 960103006 126416334 173121177 691478440 958373708 748051200 463798325 39200897 298913343 230174435 939819284 971137352 787784657 898255516 65163788 65146028 85857884 266974207 189440857 526060405 812010498 264434760 956515348 620262417 215864201 185932223 1049981869 960177376 567245122 327194670 1068881017 343737218 777616170 781817911 620205359 695194614 803832433 801511708 984563306 236928200 661740871 989653332 31495385 1070733969 611580231 508131988 360282769 416328070 1056330891 162548630 703334330 1015649350 387572489 525480506 521070163 196468088 766135683 27036683 1048969773 546302645 1025735714 331802329 192716750 332724807 758609876 759565597 1028154615 215258742 245901691 375501292 571176636 1041240358 941358363 732985429 208327211 684524028 645651519 126989573 343392345 193818286 1056240358 891605892 10490645 393459304 675317419 581886247 518365934 911837823 729345017 550857886 466262976 392547853 315647049 126909297 43452604 420467106 247065521 1044001550 247765995 774062969 101696388 240887318 7777642 682140294 223108771 700118213 311738154 901760367 939932944 775816926 814410487 372909071 930836603 781149211 496133830 204741164 628343499 474764188 46232941 350269844 948040080 1043539953 839004685 968110148 293304985 708777096 688606204 726006347 595618727 938527547 556401441 863048847 627414804 153873642 257513985 548768402 477357041 184781563 172412836 66693736 722888961 1023352718 781305745 573581689 176310898 766634520 257403218 518209605 549760812 790833501 916999410 391426674 43004488 377428969 193042724 145609551 8264982 1012944987 198814716 493705488 135249635 678693292 299308078 890634289 260786792 945432320 358367511 82084590 298669960 845927477 634609027 470524273 141589317 104297622 717266340 393020179 595695071 142430557 353683367 716270030 738385125 944019661 357267885 30976237 49404093 397426925 1048467864 948272646 820744418 953147681 301893018 855056382 68671242 415225616 24511439 356991998 240569405 7391841 951258920 635819667 593768946 100476382 571126199 732403642 565328839 177698016 635523595 1049263665 386372605 1068895915 893120219 997397777 634477000 262289260 782491615 736674894 292275423 150963168 319427647 1751608 255878465 1051633989 227888682 706699699 215050010 504533860 491698496 254371844 526861938 1071873015 485457325 1016418555 1063871244 289645918 573314922 925367782 105110299 744526641 372973470 780592419 13605147 912788818 971161333 813969485 517469911 828773119 129207671 923073096 970120788 331665824 917612082 367495608 239453277 13246954 302748051 788632451 918443557 910767623 933626928 3931885 71427388 780424557 560647430 326362993 894011248 504457300 521937251 197613673 264575056 594594913 45483197 644466538 165449869 823133855 8449581 152016791 749480109 765515078 461796490 364400772 38283895 822574581 904013750 258787450 221746062 584777870 814541177 777011730 336016532 816331057 133592559 136559094 67682106 856921466 858805337 438247542 121396331 715830122 832625513 562776046 618188910 414570942 317742979 521327246 68803052 981303218 926937953 587346615 349391839 460344573 856294781 51994464 1044277359 762031549 62899070 904168421 888113922 409575945 505942851 281331666 878222762 1034251820 150827172 351051393 547772839 900916835 83607333 864628805 157251741 378455119 469944080 112977202 589477159 192014726 144738341 711911673 349243013 413602627 433153848 589842849 33245037 935765946 532144938 76505653 963617858 609980776 1041033085 315372105 480355502 277889070 382805089 365586461 613879603 138457425 428456027 1032775160 623654534 766326566 893759333 98894175 66216333 522402847 786690595 957681307 397963917 604839469 52832262 317715930 118175567 951469148 361280349 924380845 977364792 132432188 992076717 669395508 771437844 719273774 1066681779 496279069 861089409 307034974 364095856 451366003 816367074 1065779200 699342384 3140904 806307237 81545796 1002437563 323305531 415381023 35543097 203321162 386979434 886041252 421265845 568362546 262051061 229239048 102425074 10899685 945111212 767701219 95071025 974068229 407539717 1028120385 812667982 276113564 413023799 953401600 776389160 257756647 274302590 576790652 380821973 540345468 978924544 834388517 978483911 514590126 638296751 784627234 519074822 170265257 621328648 494441192 566228088 305479176 23560584 874719685 660159098 112805212 367333230 751845935 273440628 524765993 242834239 758867603 309927989 23101616 462051609 985212469 111099830 914317600 776072952 1046908282 343075702 487372785 990985843 740484500 287561296 855483696 526947742 280439291 462159229 735527043 701299620 971208326 160246748 657937225 561161973 998993980 719307058 608027630 22608697 527236772 852388864 214440337 368124485 416668816 189233873 354221580 590409638 927732112 738253692 119227367 937409255 472944786 925690734 578590609 45903527 749140550 524110589 1066033605 256387245 768639595 52978816 429052771 154801825 910756811 540750732 743952760 501593341 676510389 581208425 232777022 774449046 747282121 330758346 925316434 717029584 352466691 894810130 350544161 756340826 714825509 1004406121 809531167 448962611 663020383 346354028 835376473 1072806918 465839030 164523348 927704759 66475221 281042801 127792123 942501739 857806695 22300014 508382036 55334920 891590507 860211413 31419894 972327305 123046875 503025235 583774624 778870241 1011602987 9415397 876889250 618795224 498545826 241237974 322408109 96274915 244489834 631857505 443027489 1040575575 591198166 1058231844 168607007 178799524 784013750 785995810 947585745 1072258471 207020371 1008399659 944382594 454448058 92382960 448398532 17309960 517742026 392516720 913348330 871720659 515956190 949582604 61601430 779238988 330342883 570134868 821615985 523164926 922100092 630150121 425860558 1022729056 570138954 826854651 546513432 849230229 723383231 221339260 277467878 434208839 233749750 419400259 816513469 664382256 209895487 550551092 892531443 120462316 895316552 15765414 426810074 482400023 700618663 618956941 224527474 157835124 835070481 438333296 311372011 813396024 610657422 167590578 547648422 707835975 177553736 25462386 687116586 930978151 355786506 98290760 2867470 239994719 201732295 69462021 315568932 35957112 564224371 48697428 635341505 429453336 399262035 806773906 71860244 921780494 762404095 72061094 457706621 684288300 283978132 514549230 901310915 1003329032 509465039 700975275 491739016 86237343 1022903111 135285933 581114157 883112259 810008082 525194149 765958645 581746362 692434715 485983814 415705292 894135704 907281539 599185223 459672100 292486343 411882774 828878385 131079468 102796634 906278451 869883026 353435526 11189168 329970395 607830670 977311128 800201441 910328226 836602951 177931882 666554003 180269909 672377056 916120123 1048589976 5236588 926620262 619805552 270423308 853745637 415757584 968881030 516640540 438563156 823359972 969556665 1045866883 5849356 439503912 876344515 880539616 147748413 528301324 549623727 133221077 986740538 271679835 627962731 744748707 328137613 536856067 694251058 196311921 709091658 853239399 728983293 641012040 253329704 166709991 507753111 51586122 474830006 1068362218 288200715 841936562 748104826 982077126 1010705149 650349008 640567815 93545684 838162253 179442300 50300583 45264783 819809589 316891110 422911296 249291789 33362594 419410303 203847108 156654886 957299745 16694915 610342441 5032454 283534393 819381714 176624991 908352278 789622685 666012669 650739100 486788928 541439054 170116135 288350633 672769998 948367589 214402111 707640754 794221479 846077514 142117139 466057138 196420310 215205129 535081545 945719141 692912247 770803415 744768737 389577627 491795985 772303960 719252346 1056894703 428281846 1056326940 1069800106 212035218 767370667 503096008 818485710 303099678 314961587 684323084 497781666 1017157659 57226423 26809404 660371351 421938977 527410004 382451745 149299796 531811070 89058744 696242006 1007935283 704278573 521900870 804506321 832794589 843812044 237282923 234298539 988229243 697659726 422138412 831893764 770225667 737881384 741898240 846442012 346494482 793072320 1002044676 440993398 849172442 944954281 208985007 333380764 1002129464 546253654 568529443 510504946 1011087773 694743093 883241512 828111651 417366565 1023480893 118366222 95172135 886941676 599334335 76977169 603286856 929048999 559977329 716450590 141470610 433719186 287139854 528597175 302314180 925665410 517139911 469026179 849296734 469251501 244197222 623019976 514064746 362742343 278906751 1063612138 1019608394 323194185 137015056 49619664 1073320139 403602258 259991852 235482680 1012228687 460726906 198614976 380710789 946570405 414201360 438110552 20270405 549098216 177719009 424346637 339839431 603259486 550966715 292535151 857794210 701610665 966115461 340989966 277775675 736508585 366436095 752876444 765851282 971981457 766202003 936140927 78359937 615556662 953755622 322467830 552122184 1008493761 189007770 447919732 515096235 621360640 368915771 353150971 870411685 869478334 260002128 3567486 410723761 736588617 825320772 692210986 91954753 513679858 13596611 126558802 904998175 835917847 337721775 1021392999 606038450 500539390 676342324 1027408579 29285968 512930202 978134063 839706596 168751008 458024563 940859430 390787088 644413597 447739300 796297460 913116220 953294683 894669225 162289532 732672922 489605258 1013259759 919951281 1029436118 204031539 859587434 793706610 356558754 311108350 981921816 707220187 804680966 968362107 715340847 78601162 507559171 1041529808 335387275 285023085 394287005 187256431 195246651 789618367 150598102 681532786 203566317 496228927 337127600 531780167 244371247 386380259 786759797 870091497 569634790 702578409 736306264 29228229 604855909 751652837 950379470 349159271 232438091 309988674 384963433 444252590 729660917 948508739 647800244 648186595 446745886 909720322 137018734 69915028 43534563 50646676 954117363 885796332 106316359 284037971 795646299 727393962 791553638 471810453 202915173 679260409 427034555 1073404495 265256875 368908768 699745861 230044105 189868769 170758001 470160505 138589228 201293073 271861974 221809895 1041279318 465900059 903638721 595850896 648194540 626586136 524681505 614904725 228415843 356623163 434263846 144379017 809257589 229063365 1049543116 286044124 537393225 313513622 661759479 52523242 353369221 300902221 823144716 420465334 695423077 882790571 723087874 309359549 26480512 1059336786 172110556 862703895 296686126 720434003 39857978 884950127 1005842579 611090813 949796521 104319881 690335828 318524568 407309593 41201792 885676888 246669027 804977108 461253425 481874185 896611741 330056956 820041161 738538796 74435251 897047623 611178266 888807026 280373239 263411270 980670666 863925363 254367825 124322341 362780729 533486396 847462595 957577156 635326227 188310173 911081271 892257363 969646252 542176199 586370368 594196637 422053455 760307235 943229632 246063834 102057392 241420662 970921619 461221915 928614608 695838660 485059176 377835843 233464314 214507524 468824894 181371875 416649125 115003403 153865012 452190281 343148908 439153937 162908171 979388845 197428303 1004814502 1014887043 975372684 883541113 873446719 446949672 746942679 842422566 256274191 651156728 1001531691 343342952 729903733 289917441 349759245 55520461 410918208 57110747 515546287 134092666 661370999 673615399 937045182 934433150 201330293 995007519 735682612 659803008 935381791 275530938 357864812 698438758 225160822 174561841 583348016 510319109 836591711 582361247 489617835 245732154 835268474 44152744 689867740 622636965 174315042 394903137 778689332 383135755 217406447 724209548 94928539 977665271 929268300 245427748 483476406 785528906 772552904 500852132 895924818 74020052 988894176 232852065 776475103 406092953 823410154 984967065 454371063 577894596 736219192 726997384 274158241 105682541 897178010 854700365 178779591 926607026 804400447 401400037 342142380 992263219 868359883 715700067 526331608 102553036 3513823 176890943 571220572 155636697 646742204 661679342 312693241 224730172 512685034 127506732 789106362 58989311 907162913 469999639 862192836 722237444 847241286 723516475 758578087 221901834 218899498 790960057 120387592 12632921 645431445 511864342 218212184 96966438 683655036 418291249 1005161240 541485747 752141542 457891195 811551690 1050889067 905991987 116981375 417045893 456493551 448841021 206002999 871341970 260524343 818780202 339136861 472756192 606295174 1001650701 944320166 359824139 559235900 724405984 185980898 905953041 879434875 561030963 292027070 335977931 657377052 318504518 2720787 675824390 558328762 173335021 790817180 387828349 778701130 603729199 585656344 416630260 324256628 206492315 1053540565 497574299 429947415 829176113 388478134 635111432 962351709 923956563 536566421 406609991 982397586 853548327 768625480 103636104 545911107 76615090 181354891 75054291 392494433 812089026 374448195 991957165 619612578 707167016 273998933 476397678 49109595 982084485 490270660 199530819 302619584 517508528 383382223 804830374 673237328 358686693 886195556 938602252 477510987 197421513 643206975 1055708480 645126406 71952979 1010309899 376266570 893046580 403749837 402198757 753283825 259223286 670836428 1028662859 981207011 519967368 296513740 490098963 720975193 392833040 672082270 255386518 1043888238 771821327 158163968 811005132 1056610316 823761897 101231446 984321965 320315673 186912424 359644168 873418343 317769494 982806169 131119584 313212102 801142739 815756417 823303171 125324474 918528521 774980006 533235524 803479853 414479389 758078388 111045841 371156335 330896218 846423423 87899131 162035226 821599694 565560777 199719304 105402191 290731839 1028174231 849212705 941980176 606920298 582381780 544444183 967304476 500186297 695915427 93469866 182351116 692211675 328507691 478127516 1062228018 21922527 429289813 1022955878 49488226 765677313 423238146 660118456 1010355311 955165922 1051962286 1063489228 806455565 846322242 820657822 867837843 498316805 150104169 132856874 1055000622 626290217 1008797475 874768579 150868400 499585895 906794116 865302820 897569220 812267243 565888123 763993280 156161339 692135001 700495002 425818274 194973328 70817417 741478944 470051200 915380743 974034991 931216898 617354368 372679095 647338073 528371847 945590244 759589000 884007674 552879640 915914289 987661303 545348575 41520066 1022406709 906071817 20211721 495014866 7461518 738086331 506878328 576488661 118888090 234964197 988192906 937091157 430541359 136001902 118482557 896132825 831014782 490845376 505005534 1012428652 655654427 688018973 374546160 924689090 222412115 243920245 208447091 569366601 398928890 356450658 70149357 966296108 965651185 608789250 1037592781 854034982 829750076 815244895 213944750 711236591 760082614 267945588 747043625 1069028421 248003415 11092614 638583203 68839244 797288970 292127641 254009594 949839827 263064271 805288228 567503738 873518007 726717494 975818005 449238651 792884275 237262806 409757316 713851719 640807661 162512163 36686891 555594487 53563598 270315031 1035395091 964378073 417435212 848204770 900561073 493433662 384380278 95520002 455477023 1019212155 139502381 304536565 270591907 911377954 906196970 664861721 328582843 786213678 971876988 216206392 981530753 119195899 372122145 564018389 323466103 1023471831 386268593 548915210 506638150 621618114 143125030 224414209 117294026 530849800 882550507 6681416 359767215 579861021 759567620 2205631 251348756 556857895 669455539 409394763 998985020 213332914 373301872 645791484 758669809 904567816 1057574516 876592347 498782972 897071212 340387972 546325085 52491171 18189913 359500084 947917862 546093343 536630111 153502326 502793732 795910549 919532817 95407622 817642601 923949523 465640873 468572469 252278126 115587714 1003731762 913084312 160131947 948941425 661390625 888902515 284678582 742682626 968391023 753841071 271129053 365785045 783769170 112507364 909833653 901733602 688468031 699693945 251284819 99946373 499215721 11461180 712665865 111724951 757344846 967872052 804100135 745301721 859296435 981156779 132954942 253061107 616490220 687799615 605990181 743839723 322829035 630431937 156695789 250347914 872687334 8654055 909028310 428428330 167385315 344796756 366933488 406577673 43887565 561879451 585067041 287947340 873321957 293107209 270483156 107821386 323020234 969147255 80681697 92709877 970290859 896072128 321163939 818072734 675228605 610425054 802564992 334273065 296083368 454175842 439933253 1040713416 385583627 209159185 82358854 869942838 827537979 684340160 704545893 77672231 41175564 938020196 885528188 954169406 848289775 823937198 227694447 183120499 983346257 664891100 783949496 355433481 978051139 329232168 1032676417 965347344 357320389 35788205 922868148 856652620 904729646 596333696 18743168 308507447 3302929 32275026 767557644 402793494 739950952 487555528 723038311 427150561 947140786 38865359 941911488 1036914714 986391085 239261961 979719167 781979553 296689961 43525752 236267930 445217373 70722699 125519929 450597415 699561812 873296932 440432138 952100106 1009040080 913547223 1025708675 416970286 276382489 24653090 274341642 679492558 41285345 26449045 192473837 715723208 864650211 480035461 113119714 147684919 533482694 413411776 521178422 961157166 690045783 904624978 470485544 431743919 166312092 1010668771 242396640 259748665 1008678911 383704747 113587510 224731331 47350032 114393206 542526142 813380536 949042551 954354579 526362382 42613718 552218361 288560934 223190364 295425514 764708667 462793871 599193213 555164773 224968170 776274967 439280885 69859850 340393445 1017143052 256492515 816871022 473677229 120279353 578084827 347556216 97533326 497697455 997294308 451019620 280882813 50526938 688938527 603017366 402430866 454611673 854640124 179799167 115832856 649158175 688369258 584084863 380608120 793576925 1004591568 136756120 190645359 3201872 534605436 77696675 287967457 144584335 484594407 342549423 1063241979 325836931 1030457174 75168732 392079124 343099115 175664972 473155910 449646841 952803963 285522359 441600436 223834197 644483618 1009438061 151406353 1058336809 214718415 145237474 254062130 175023746 825595537 759612223 739608657 792817075 11516704 835638584 114429059 1017994123 420014047 426953819 894561581 199821514 531566205 630187490 6568137 249152275 745142307 803295502 465881851 565539970 750019386 985645071 421998113 208758576 919107060 349847674 361231591 279438151 466559867 170701485 133090666 744006380 901903558 1053342470 1027777948 49410304 641985754 457009946 360884029 322735819 928549706 567052387 174624989 377375142 112910878 83550197 354801363 912260627 175082822 909260321 292251364 226183908 105167388 636772076 769779853 263685789 867799309 146867483 1001422339 974674530 940627821 516558549 153280166 227953700 494870279 605678761 174836537 272195527 1024290320 690588764 403473328 689443849 1054328766 733134949 643346169 363160590 665944544 716142290 886930640 634164527 626966629 594757579 754680117 461917411 1020610166 350451270 580636132 17446409 413682155 456086988 892268991 1022016473 152681945 113668257 778784401 665629020 90549442 189644414 342832741 852602729 1032816001 323506763 345762220 330913316 974788546 305328953 166739771 978778969 789242032 1045440341 555890313 584586504 956489613 861859087 388316687 690966379 321731086 162795317 355245410 410965798 169307766 400326560 419084495 120001834 663019867 839679130 531291933 443861427 1045167135 52386942 363400202 420642793 1015501263 681734889 274072062 546589168 768223840 813311495 964351870 904419694 894095249 191566590 571636280 268100787 640128873 449895761 901201950 242687345 28584557 210494180 1042293332 608372724 896545206 813988790 400087700 804424871 937556962 954986281 686123441 772706451 417519709 1032004035 924756514 416024077 315885965 487144081 617632396 1067766565 316231538 155053023 674927361 391228910 349483971 533595873 920404679 1030202310 909743194 166472786 822817149 855612610 544585153 853949179 406710698 526056739 46319884 382997544 489392166 717185107 312477598 1065995226 815754410 400826615 857495688 878476746 111000881 932859722 575188452 770741694 127910645 50179701 44165134 53797462 539412076 187149461 979584591 181628649 201897911 973098615 99831605 157328765 582246601 330577235 932802039 571709820 281195079 405629786 449801597 47051040 1069117464 779462675 492567846 576164346 502652584 1055248870 110877882 603478581 830532267 855288694 1070909002 246270550 957204831 54366552 347562442 562174414 250824130 29949542 190000817 490060798 951081612 901018212 372328161 851662022 74304138 863949524 46134320 731557797 104346273 257987045 987128678 27915501 970976747 529392860 853576199 858810920 1002235397 832481362 603227466 510484884 634582358 343903141 706908161 719647192 728203819 325451057 647525041 979977940 1023782750 1012844815 203854450 39178151 51345646 382679202 122716970 624521727 198456619 405963070 204747935 176436893 586284905 1067484024 976946324 1061631444 329004064 819391442 813941934 434292439 568494984 645292261 6137973 770943061 767975297 202008259 830619669 622082086 34187556 942497247 664741080 212567226 125382958 1069727166 144888434 809249645 359394896 224321209 958571187 553894225 44137108 777479853 492442930 791588266 1014015410 513207047 343451466 615275449 997288248 240764789 704831169 16308415 881414472 266982991 251367696 789692017 436733312 241659593 615477233 867757178 182004230 476025801 287587569 776934859 1057746552 153759984 319854534 1048388737 839297982 974170639 481740740 289706979 1024369098 658077809 355881430 666287493 32141584 261753809 202541306 725006108 1056722463 413211812 1018079014 288250211 510084685 732580117 1047126790 298605007 601162854 713764368 619437651 349231863 3045099 495715588 28302689 1065431731 204022790 788906280 365175233 570040882 578355773 1069707391 511083230 661652017 36324651 602032426 948482696 238333217 680947407 422006824 23321928 823582184 219900633 67137078 1025569098 1048321513 233953178 313602405 207132182 528126642 298231818 387763151 845857597 309656207 469169978 275189667 836932995 549685283 1026953904 69747251 510399805 167007309 744439963 115476562 908903521 720024044 379041878 400824851 730241203 232439440 345028151 925688276 831153212 821736773 470230615 926202974 438631630 261617145 26421441 511781383 624544692 316947973 573030842 498543872 188945149 140622496 916488796 668950546 675315411 676640795 632264885 396044110 901097229 178322910 60233194 1064238571 741297126 76512415 709681429 469321878 978535898 751228702 1036973797 39906150 33647513 567693977 657606053 278868468 27685077 251899139 474757816 718433341 595744046 783835715 733022154 1053301340 315703166 689548394 389985442 620806773 230132246 799668010 196336473 266916376 43050113 538931734 803624152 278410281 192136258 326384520 401014486 601176366 306390226 751132087 95709216 356529540 794660910 1023919799 348702412 1054820700 959316265 810406462 1012298547 450047216 487446311 636543998 1012063158 80172396 185935753 546449383 202374446 494037403 125038763 835329598 584618023 439126939 622479421 273466446 31433729 438874772 251336305 695231623 853599325 631089108 164177085 753500999 725190383 575160547 626243879 788615992 80910825 857497708 938986059 53496657 562945816 688930601 320797189 288181787 954832556 33600391 770077941 1007718538 785707509 923317611 485407990 565139304 940690620 422493548 936529791 158672700 454116920 638628655 357796898 166832918 930429161 881168652 956361594 88993617 986087494 909061883 671274406 750848814 294890645 989335406 467965029 14517952 219432410 775538723 673641705 1061466372 269378854 833046038 237131032 457434739 114351215 470024574 577332754 63940825 339106498 189848715 296346407 371656677 750034378 339398953 24849770 835269981 871859788 376583908 853832980 690016625 185149236 988377891 165408532 203235854 970122784 448433179 478854418 678473958 924522263 878259195 766252911 916759793 1066282261 181542165 788931072 839273317 512409430 354880061 848080848 884265446 328730435 194661671 1067492094 531412240 117516274 1057413668 583220778 63312602 677802202 950570117 548470806 35539123 498008732 508798794 772987047 894752645 688046565 748654361 490869243 613060060 1018567768 759202265 959302534 756591269 865413145 982884289 539896814 782565458 556531682 385959323 788508860 467025112 285795102 218867671 41612347 130423969 312955900 274772402 505404370 618927679 36151120 823251579 63469571 461508010 678215569 982013500 391126097 81665112 964105752 300880012 273091402 1049156606 1040640610 78073 566152744 564181418 281726082 917419530 478370556 568739662 173707725 1072313076 833253414 157054016 1012593446 612363576 855906958 108704328 156461569 250630167 384017796 650760939 919008573 152526703 340562741 442655584 171406725 950893641 789746627 468357757 683772338 471688340 136177134 708845860 462244818 1018455855 1031701080 748549521 852508034 695745636 540373770 492297131 309186541 77966418 931405690 940974397 179701640 790082634 824596520 183393067 644034458 75462438 1008153025 868747824 749976037 810341126 612857967 62586922 501017291 723289328 836698295 1043064320 588503539 339979453 522574641 227990602 506455340 980248928 445007653 491355185 89245248 761341901 200356771 1065933971 107702768 304489271 402110351 27158626 96508116 228661234 176607527 197953509 958241372 958604028 700230230 556509827 869810980 516050734 110529122 772874004 992372317 276089346 35075698 975910938 928523377 778064498 523572005 722162991 665543870 695339790 974313127 729097239 930899792 186795898 417420532 834771586 111569168 301568491 1063352349 545031189 590780167 182373143 505882310 515505181 958180517 475821834 1009961585 824976725 61419701 811315479 37537253 136418027 458811233 1026424568 690501412 241308829 197922473 721513559 673940278 391058252 829336941 208550805 1023133737 802273202 146677894 245786729 1067167154 406231940 62564737 611952313 196864436 221371508 89101025 1054938125 469769155 282746893 924118848 657676531 538159131 560587133 28716551 648991073 493881784 467720935 101142431 465090243 375511835 56025014 32876505 859296390 780915520 96970735 981723224 258304051 90414004 20463122 316650756 467412559 746511412 1040377494 404402573 182339736 460261025 814814500 106615246 743646460 756691841 548998623 1057139908 536861630 1049352807 718734014 68187783 1033272948 557529158 491329560 934201857 658699433 86965874 55819089 206313137 186654912 46386812 1025760231 240448128 19620773 737077685 375995357 583636420 186435120 214468943 21340918 16420560 136704601 374230947 580965835 72356744 501667186 609526991 966960620 271281538 559291758 514646526 217710652 635927831 1060832582 1054450462 470217798 36592431 1052205357 875425988 341607602 788898117 379399698 266636431 296173180 947644205 323254604 249851598 599210452 900296116 47870926 689156439 962781517 499566572 35113602 1002178457 264182584 150535309 258470826 925115646 997235897 252180636 578884948 387986187 215620978 461826373 93464140 952856763 830265848 458470714 422352356 474338798 396158368 275813202 1037858047 187233732 193166884 211109692 506448751 842869345 710620714 865575758 911860282 457762122 697636313 414814014 947549748 459174713 1037662289 734984297 744947397 789564 901371283 731472567 898459761 847690647 624815175 616685771 134000915 330416061 347447141 63564605 392015206 668616394 798072642 401061019 72978073 532114886 718840884 478534523 569846250 1038446782 795794242 589376237 142007195 112914877 961027841 251636761 26675314 182219935 584073788 212115110 543260008 851591333 438951497 422231418 403087328 75951855 732752387 972782880 288721193 793302113 383963666 986616658 529700431 168294991 473064503 692235856 605686578 22815816 409776963 145211028 401856066 538152976 1003552404 39717688 1039814178 196972915 785206169 840170767 104956339 477139798 433341980 1001954573 1027379854 191210071 105130929 562315134 509291221 398514093 762471335 11016988 424415128 240347209 184324496 213097244 610214104 729764085 1020393013 604227463 737795258 519400412 683295605 759718928 460625168 823079192 449853504 971833214 225076586 630955012 875759568 344908017 709771855 890549082 1058644084 40768903 472966693 494945395 539989416 557854259 445405424 307114270 320333357 182302348 539556804 436147281 70520564 449959331 503124758 673403486 76881541 526538793 645900813 248614589 267943902 12400099 979869886 305831913 306945425 557714194 833732315 394625324 874044478 28381627 584122866 78387106 1007697188 591156825 163882584 895838327 997588693 83949835 735033371 925460263 890958793 605318720 200612958 833758025 210653976 339646892 913746678 677302138 896395324 497019258 728059298 1043355282 305474970 416558183 957166473 293770307 417270769 651124568 665264450 215280983 138536621 102313902 475461268 30466519 106827375 79809179 622361656 777902565 647084799 492250234 359884835 727331750 384754560 139391917 850991228 701978993 63534922 920998537 244172980 983428802 329055961 20911630 71485325 192677744 873446709 512393056 742318134 804456001 540760010 959886669 838736971 8786795 142347575 115834763 1033917109 987238504 389990095 705907940 154506410 70401421 51584 62130654 274584610 286367234 625381469 799533939 298075718 472523661 515038334 454245037 988948620 737783853 990887189 77123585 707091401 707272897 629910645 371663630 893660104 572626241 710175630 1006883053 1040605560 274115559 173465100 633629655 391209493 158882508 577868466 44172471 486533496 111372611 560123711 450777087 850391029 176692773 843623816 271905260 480246149 696263567 684134122 813653941 765250530 589493585 316306775 105431218 942776885 855462601 19009108 1061610041 578831954 976720856 829310907 921263113 907347695 815226575 761024043 39070153 1051976750 597189592 801254478 318705776 804144847 644130904 1018001067 105141831 570449543 658746987 731856247 201908412 996457261 203337356 870403899 549083445 332471121 272041346 717253590 311373127 444389031 197032898 53821166 72211766 824619980 473862386 240599906 473933439 175564079 532173938 685344370 366001284 628520048 44984087 869766212 711264912 47662567 559448946 430034051 807545997 716612897 901670371 1072122335 64954230 896034533 146591782 382228462 1061166209 931272358 734309867 184919825 561195889 365300944 430274645 810933675 499509943 402489729 115504852 693271909 588189977 779764122 465572158 923915816 754754128 121388396 944505029 913327356 27228358 457144773 496238842 215693186 410282016 955776136 534090439 56601578 77493156 522124024 371868061 894121471 271057321 478021840 833167543 907661165 656570313 303993473 459277296 966928195 774500573 153959448 623513275 755904307 906136552 197718429 345768881 543445889 923887998 823079006 932148302 643550483 816568903 736803020 770917490 6257696 855795397 917120901 694833137 929851546 577384386 607115784 1053288103 883820769 771552569 970584343 992977083 1060364663 636360003 491721321 48157817 896076317 924998740 219246646 232855987 733586104 633171282 356428317 729555925 1038720375 1024654236 137160986 809755534 572354430 84051304 771541880 420113410 751772240 488394248 967061130 884524094 317600303 383514084 121420062 879499871 589593774 751542029 612867352 27335454 1015211680 81406916 884042315 768353479 322963840 821802991 518655063 342699612 526158195 784908083 513694975 855652148 685520299 184053123 160330267 89258137 826791864 275959399 220653051 383412849 543389291 441843183 140648315 367307016 949787868 403044476 1072714341 820650190 864045695 23143378 137849763 140682424 100634006 882334266 177952934 227211071 897951097 214187097 871482793 1025548619 56202648 183764811 1061750456 19864170 546956929 220999839 1066987071 1055537465 320784016 733959147 890845378 306976617 638407508 914554718 490753002 355547660 165298267 275038638 989536335 519244989 124225076 118520028 993740179 539934119 368277073 888036364 453756382 417484368 474348050 715599020 382428730 375186758 564079328 433446519 575008113 66137727 637638890 448246126 264527036 1069451361 803353257 409768866 500650663 37118732 204030542 1058299318 5995102 561952460 306806880 2885278 648538680 87306857 388032929 438937053 632014668 535220436 507964977 311011039 821121938 266003375 576547859 568181490 599462878 624067212 28812335 756533925 661452038 910189608 818444351 204999304 1020888793 972013756 874112532 430488416 551841446 861653048 696411925 67147493 407034690 1045540883 4999501 998064717 120569986 255641856 1047431615 204305329 632467498 862136150 391995546 171514892 386066409 238323111 3933938 541833187 186107771 495576555 525406643 1002372681 679875131 655726083 1003951000 360671159 951429183 92653103 900158373 57714507 571111970 393156862 622740540 954001128 259855253 369461764 261901107 906412079 902562335 700138498 248161622 197389989 164884315 290783067 289771452 666740053 21797169 638905054 853424432 735978862 1046193348 352211159 981377453 279985467 691065289 505840394 737006883 865847497 825599836 468014323 322845735 198209091 603149992 730963483 595696438 427044999 677501887 936814398 1013726995 102791497 203382597 612576217 254280604 592969653 734460540 364981475 472138310 174959825 880734884 1046903104 517224787 987987242 444066816 661679579 599218881 549132186 682465462 107776606 457364840 679552997 774313116 449494476 764225308 716022588 533718424 648166481 336358775 486682661 930519736 302137855 965128137 529051269 72600218 329988784 1072903958 206802416 724812061 143592583 12033581 304611391 199075244 455433303 222872056 38546463 966724138 95483048 1043011286 781631100 992530695 530765416 609456898 71615089 547656531 77332650 118250269 742490095 645495412 220263074 1017626653 341951315 416346658 508799657 15818358 506101530 451044338 366818855 765043672 724344361 778265386 983241247 1048042706 584306578 1059272544 694994897 971147519 60275463 620106167 54540238 625468916 553918118 456919925 103909493 856615671 441053231 731119490 321118432 683109337 276667534 925539156 268733178 807940418 403660104 228011239 935671574 892614932 596215428 493456278 975629953 944077107 770942412 682184990 748817395 676534223 548841634 94857122 1059462294 44533057 630847977 331483044 581476276 996845668 790414216 575502222 527389401 191240899 1055335918 269616546 362995088 441556804 1019139842 722494234 962113720 199738803 671794550 949901321 313996001 642605602 1040791440 808099146 711090534 822176828 721541695 816994821 139378099 738960891 169342583 227656946 1013934106 2004073 261509744 1027820525 49678173 740468914 798290434 219316899 469070643 849011085 460052241 776395554 179274788 895486500 113189099 122863269 343267391 289224883 93553898 734572477 951194362 442255260 165559916 584178519 234368156 1066888110 929148000 136972753 177332450 839199506 342928414 475045149 95185776 374682994 180855788 984082101 657280595 296330299 404982967 421580641 172653208 158861707 455057208 615797343 490781150 1050369280 860477245 1003416066 110197745 855648862 277936705 1061296820 670489461 593596690 465354880 628923545 872156263 656068940 172834159 378965530 893205095 526369847 629981651 671517702 659714230 108266146 743540427 563615431 235768665 1008492369 495401546 1051955076 120284742 458759289 781318394 982459218 923019286 631466853 265353657 807922422 705621824 979062336 344910011 220683816 404335410 100920026 110613784 981809151 437957386 464695414 1061694014 1054558274 22405507 1045875669 572776966 460424221 251929166 1006233709 1002132495 581623570 878805274 1057655357 984347918 655344517 357215895 316727128 377880596 358447865 145528168 774113183 970085507 876640571 753119372 275904408 908145407 148155240 962323869 379321111 721455611 750285018 44989533 956112683 750935676 972483900 161772676 568475281 890510741 711925624 749416409 289619537 131347827 915793242 959932168 670304193 520454575 26365765 528168909 743729259 138540239 999155663 1057818631 306882418 40632030 505200963 679028124 49540549 195545690 953707558 466383895 331010926 671148435 995399821 309565994 572488585 232976017 85098651 745488218 82033039 757022847 1042345683 165580954 810647691 438492275 490329977 791909027 738571102 846420956 469946825 995255938 1034453554 617302570 622638667 732810620 855409282 17142587 266104139 826855333 287716282 653522162 264629446 599602686 576152100 193911464 351104112 1043195072 719468900 645008836 741627867 736559233 420571792 650439740 273038602 902746847 162329574 931643340 308684976 697935261 701581369 599788633 117587386 570221981 273671366 932177485 370176121 354343829 23889320 745229852 954459902 357727067 426064311 351423679 595072678 421150436 77288607 685963284 63219306 855251401 856701729 718745766 793901681 797354575 755773356 559062682 805795630 856082464 157154185 426508421 355312851 513899626 223718337 672039459 707815943 988909410 591967156 221009419 894125296 813617681 1051732279 676195809 840403598 809541835 1028656843 772601739 924709439 162150558 231580331 146602229 368025542 17768406 804353784 504040719 173617072 677365070 101552237 250403931 188466223 688399304 1068391067 1043445424 366153706 734569911 539894986 871446643 409317386 764364469 995333898 903419613 89706278 370229116 695507854 925640534 736966720 1031276331 525202386 319999420 531835564 727835997 10027837 374746650 723860374 923102015 288119610 268838943 983725775 738637319 332891759 882749419 862361313 404487237 626507314 372719337 154669972 952671063 53974121 977014838 114943644 80296455 702396979 565180781 505573535 666068867 74347276 908443641 631617124 723552047 521401345 9254986 1004906473 378307351 418843847 881792684 402249074 1023508886 574106845 720887981 209251430 109608430 776707379 819939832 631311933 966022206 206339954 67951907 401070972 152665080 279544791 870401726 9932621 878535895 466085536 791839519 195858204 356696038 289116246 221752481 518340822 874435389 173088917 251540268 818751734 920638150 957755081 390842184 441755694 883213755 324993814 326741204 416393683 777105131 367855815 747800309 347806044 505889115 440733020 254200613 572448406 91609402 698292554 586720073 796777016 158995700 738574323 27016584 240740963 1016720380 561615690 437025907 209072893 717625232 129345019 987107047 763037924 376813799 91172345 890932662 861918320 134483716 741729087 326461043 681399414 426786202 207298353 284898072 371014916 707134396 211400055 873579355 140315603 130898725 695410365 846535760 409864182 101998844 992585779 154843796 885704114 462946844 44715468 84570059 326954260 406769186 928561806 876386137 310570965 845155384 697700315 778907872 488573082 2092722 709353257 1041171517 423613239 897994548 500719499 801876795 885392252 249754084 481128468 268519346 143246093 511326430 783225855 372401667 539365845 52005049 418464154 268533931 177271217 373034124 542502138 418760852 590092060 1000955671 91113445 31782946 76134747 981494573 854444329 57611406 15165016 160071503 351021329 668271909 914136349 946073801 474262409 2604446 140349753 928993765 22134181 10097790 898775669 587647045 85222012 800443297 561465273 131556115 67512907 38740141 534218222 711348747 828865574 287370249 863864958 683115111 142095424 258160920 134636364 536619147 379562100 292706054 695783401 621402438 519022932 133986248 395232257 399475649 621249941 226814255 321674893 395263412 408442011 1067868299 215723449 447198399 37606835 644827222 154935124 64537694 778982548 394950069 969305708 36902359 461459582 986806633 669570622 649784156 746918981 846138382 463435233 346695247 678507724 57005765 45118363 507569015 116265204 967278028 331587761 634939914 368818411 932225940 96596218 720589902 493656583 981725976 240356408 230090446 101859075 484601861 483890029 493873352 957332474 803396986 162581097 68223778 536953710 363231123 779110284 929469595 882420272 462331354 282323489 308318641 494681002 143662978 38278020 716785759 986836139 279116379 636170616 51145613 703721473 473120499 659546648 990252952 847867928 84118604 131777139 643844348 530047885 56557303 149517836 955494396 245044097 1032310018 40457252 1025103344 806427414 953868487 60087958 763303284 212409413 25148455 1032239270 252942023 662170493 203239199 204031687 375708463 644809309 210613065 645319753 205760811 170338971 181834863 998060701 492239631 292815675 713686131 832959434 74888174 9279228 105579237 694067220 987550537 891418103 68357403 986231671 817653824 462151000 737539935 305712073 231884964 391786835 543381536 488758998 757428992 495895844 969309493 309849604 993645859 574013478 186373042 878348093 114213915 998460184 291009016 729415039 827222465 664811798 32271773 174064555 621427689 279621406 503207483 13241721 1051901027 309024282 709500761 273789629 506025229 855855683 343124855 346126850 786307014 550503175 982778464 1068411236 930047326 44319278 745994747 907259091 573518272 543126667 645125898 445521219 507006600 824020555 937579336 112678955 144038790 647273945 953876924 366549267 989130293 70652610 362675657 766856878 1038810971 885081393 310655906 447278806 765259290 854862277 971870024 735512009 116139079 109005016 270865842 456882927 157367788 917045900 269641723 972641750 69331282 860588856 263314468 562274586 5110072 1000983023 96188356 471166172 373896533 146533561 29521310 617791074 508912801 905947488 301899263 870268781 457768668 1018245852 354694464 944600433 34822670 722646992 634584190 951881582 536300559 1002274609 450801748 385966023 587658950 590671592 388083377 316010101 44015153 1029124768 409796900 192112657 571613567 711578347 33222051 983607867 657274980 148530646 559042992 451339636 747949911 874854967 841340107 127001092 872020461 988394451 231352483 501165604 493953603 449181139 944668430 994686316 522492732 696385693 357908301 254420793 584777503 219772673 484242752 450057217 617234256 783260221 23769800 939885685 1058857153 116422480 968217161 59388740 226412072 190976785 226949397 136739710 570928853 430797838 80225908 445986063 923552668 109334330 482620041 803076368 513642088 282672046 76223366 222742366 546958202 161783426 582881986 169053046 940233816 954453302 216266639 1061506689 558207531 55130475 390863873 596225411 1040327759 1059887018 109366209 239829631 543971994 760910464 476666329 506570375 455119250 590297182 823399148 463867366 32908240 615395053 171218022 43543334 1038059131 899879365 915505143 733656892 1016893738 1039356560 621973262 358452395 395612613 535002466 1063586090 541477195 294893128 476972223 475700861 1063518870 536382582 961811680 4945320 351923932 145026466 847544268 686296195 1012015542 568294937 1067006512 804843514 562861413 188158700 467933586 162817591 53724718 441952306 694799009 933620449 137527989 459466436 1059331423 765169733 7096902 823310309 455797684 684140224 373232439 532701341 727054884 944602198 428877536 493541720 52203346 228692322 796406289 844214489 770118214 405444037 974356327 37082319 91135627 683578913 61629851 90661071 939194545 579974237 496166764 378399558 315935033 176407294 606311661 2441271 322975428 578706491 6669531 60281484 915060741 258662240 713244856 922777270 107268575 613413335 423088897 381440348 319834345 107289404 258099923 373503329 963236268 17641481 447783447 462050386 892070317 270985008 1054911882 792089330 398216725 876423709 735458906 804821048 279523771 118348479 895681410 658444863 204975330 83692620 157788503 314701461 922169427 283340608 949255960 470820543 42062264 44935179 755897655 227643447 896010380 918025162 416111360 837906713 354208081 572723363 511177866 294932605 584275647 16680420 185617807 185641025 414617250 634083211 889673614 211387609 1038254165 9746523 82867927 341750496 14612927 693330058 891133973 517977371 865891112 891102949 283355877 294706737 870014476 442440364 614862490 426364916 402438842 253263357 418068578 577504522 191373635 948537179 990179636 770408439 232004614 293143749 191995093 893815156 474305337 644675221 546516307 307578766 682678378 465144869 916336279 913674431 642116558 119250026 578154 281603859 164886845 191532751 129522359 95628289 396619686 769505035 569971493 365056218 499183908 874054343 790425742 157538454 44135895 756418211 455997556 325455430 893884536 70183281 942131252 486549125 73991467 591380612 462540132 907558801 380316330 908824598 198882400 676304479 319986756 254765196 53062567 687266864 366109392 538325092 959143285 719780508 223170321 549363941 807762446 1039237901 749424322 153266169 667718078 719015372 875158355 716999823 929472453 704579016 1028263401 790033055 596780318 983710534 106876955 394163608 919839450 1001984793 943685381 983478582 58078585 424875441 517716168 21176400 1025137778 67145436 90788902 709897644 565776368 490959062 311574570 964897658 654550961 334508283 1023503135 422847927 273195212 697621884 205607907 1064087969 707598370 463570200 656297091 292390709 247642806 400892289 337832947 222992266 447998711 420571697 641462256 302456373 762232448 979191793 166316203 669833191 771843100 69503637 587948390 56339495 967913138 102354491 172905253 775642302 42478398 476685246 102717126 1000604052 88137118 671470729 566210568 997933119 824786147 389282362 435926937 416801220 458510867 384398093 673444124 970992505 719172955 641815025 373105373 845306741 932953208 798770387 559864853 213270816 237428663 1034631152 969122274 351668831 960494661 824494873 147736966 767146841 937909990 183752919 143008727 1070902731 862092124 498321230 570288872 318254707 793593066 773349097 598902539 744587320 324551174 69855738 997125835 434099332 202303559 57632041 124990907 39875910 941642885 57877033 695829457 342171588 756499598 198330533 520747287 481029337 319004337 650367113 91948909 670961548 673841678 372444585 894093660 1059592750 986678731 941825388 863161043 72180899 133280843 162186516 69238045 119141240 1014400356 583200798 1009580610 731629517 45943940 1007937907 653366349 39559356 168772439 21113777 58899760 1044496863 742554420 519691639 718301654 506823585 554991952 233693208 667861248 222133634 1039280232 210005836 338510607 907681837 865952938 714826600 62258442 461961138 886306083 970288854 355169954 855673580 599591242 920069257 822783904 1041763758 830266287 171671946 888418700 408554708 728228428 300969591 904576853 245595512 645748861 560464433 835743448 416978455 810364898 193280219 400969183 336851762 784486070 1013836508 146808132 495953777 454222697 535713850 138857964 316112909 785011629 252312223 1061460491 979107021 964552347 579107865 466363564 900314253 239548681 284332036 754064922 839302258 5984828 430524075 499629525 32145789 902962193 35025272 323302253 153889863 425828746 567552444 682165878 710956549 348938499 569518019 65429218 682309548 937046127 396301117 904854436 333089334 1009146709 316369596 363323033 996650985 889045324 9359855 441579318 354701972 209540629 720671391 973295408 695755730 1055381989 790333633 623481144 287077642 1003802117 491298292 957276819 381485694 49546694 432960127 867398513 750065079 664018544 66248225 962211369 772903008 144008282 851596388 174685810 800077605 292169281 227982213 718512623 548956702 78269471 912980384 598860233 653187087 26211562 681551610 921778748 877312472 885012662 718846454 413800795 124427825 597244916 751101477 77780257 988571380 81153963 361395652 763457632 952389057 459465915 932294060 620092132 107489928 792680391 439725087 513358612 1049568541 856112625 766950841 954443350 82371381 748230365 570629616 446325201 403991852 628736268 175320600 1054438386 944755315 777611190 931731643 360023605 256867526 53836659 858634388 408485289 344311506 392184389 710617084 989486008 553263815 231216677 233577300 555300262 154055878 231925974 837842743 809293906 237047903 891979353 806771952 192929420 941433982 800068808 567952427 405486743 382457862 851792830 909399541 336461390 219480906 15646318 889153530 309443026 302844378 264593181 280664350 861006376 961469722 1060572711 135884855 204725285 532785210 274202033 829123576 317161574 620581828 791537030 743707909 605816783 1035550589 320557892 233252389 881247482 590621746 477019670 468798048 246798632 231330065 979697844 757115653 513528061 752380556 787623762 793169028 234439534 374025613 720138080 399890519 177978168 885810898 22797218 679772286 1038117626 633230619 858230111 994430 778269991 992086203 853739131 338731631 372837153 1042988830 448699484 276983314 776881640 780188285 1060946195 989354680 977497367 798722211 576319261 615691950 841413553 604090420 16686921 724068256 682391512 1046642874 769870220 1032953091 829931433 406427931 273865977 364449875 778043377 910793635 596639055 836334612 716598448 752152968 30697940 141600926 218599220 643877545 9182706 587068447 582734607 722114866 309700582 69999651 438231593 756856388 446346714 581690111 951842406 283813409 127805546 502526124 529368942 851653817 195204940 152059707 304873151 750954676 575125820 454957516 203029621 813750451 11520643 202654774 774755296 1011390556 810265057 608579123 371968143 515620969 391345100 622370358 609925308 834098557 257914985 528447543 879309082 571154625 672742619 270371437 100930921 774497397 674699097 601653194 417135916 1048328530 379679902 358593439 948160312 630255388 37999263 999998401 337936262 649104257 749687061 226365716 843441412 819689827 367754408 640925161 352600245 262564533 814125779 282813309 643473520 445444838 1049958398 302045944 338391858 786516569 492795926 924153076 971269821 987587001 651924481 227523418 400803413 609213930 997647751 809323807 671951380 986570936 287668192 944084119 680102022 392961650 986949361 1017665472 578370032 648417237 908282218 926820307 37424167 399702537 603230781 609373491 989466556 922727987 828957747 837203929 63714972 476476858 849368 80514285 52148462 412296383 310063754 3151699 440407189 319771688 223425073 383314843 1064669495 639531678 828124202 475336415 536524049 857881954 654061690 500638663 326144088 598144059 695639289 308039587 274501845 877908301 976760707 751750827 424475911 735409306 19654901 751626285 790174880 895230088 351687621 413708917 183687975 304634521 647107444 751227522 482055629 448718626 927440402 689401058 59129543 424368090 806580020 329168733 767765646 709507553 675340942 1064293779 770683828 164130430 324688039 622419588 823759723 694217315 844541781 1003171838 101502872 940810826 628875764 900377254 690745259 452270367 796758724 237780756 652636472 681989794 701702412 468697357 1059949792 847714384 970063484 135608211 691945597 835864049 298621011 299271873 365178247 67256918 269963825 186287510 359624099 466003054 83758342 341458905 425431444 602010031 530445728 598755779 1040188966 81853716 903110149 594079872 521274670 325564502 844971915 528296446 579559469 529202991 991266026 161559886 503742679 767447591 565172968 1050951685 562161151 889079574 965055969 602527992 359401087 536438518 611241885 1039906031 997720903 956568925 812592379 638573139 303993720 671534858 1009156119 879639776 546495 941681268 640039576 805569429 450952327 230861651 590265298 296024266 631754437 692583522 463911986 992409546 930901753 212964567 279728961 545764126 924348280 717013672 749777503 344872459 997198934 1023536114 1053031393 181822603 696835755 105200374 335807203 1028526946 996112775 946302582 908189780 526287474 107105351 188155592 398438929 304257225 773161087 837226619 445339466 1047545948 1035403922 720354403 479990107 375089487 160340636 293061421 453240404 151156968 378857858 754693145 493406089 370819398 435729126 103375393 49558010 837972314 936017769 728398457 199864859 177903906 484470121 473361042 234368374 965414991 829689826 494265002 756838102 123748484 1004761030 329611885 671607612 545949363 227240398 243544944 694197112 266559255 1039705718 628227383 374918264 227759722 452092567 62628254 509322958 101733787 164417873 476026924 960614237 379798623 388157164 278022743 370284868 301120165 775332493 30002295 279323199 8793746 985671094 585073423 929030972 186467500 1040868199 417273374 923895412 380350336 1005545370 558343734 259351539 260250511 1014340430 111190055 73996216 743400060 425055635 614684259 88903705 492679545 265036125 840884367 639556452 786159235 36301621 431655489 755179296 272377633 913558809 284382936 915831189 580239492 889578828 832887260 660530622 434122823 678946102 665356989 180124085 195674844 304515233 308788535 769387964 67731242 566246091 500346111 539503016 1043119772 918758411 390487968 218628889 111539838 127914827 165700578 1024655646 228101058 390356609 37332056 515823584 396963666 848511952 332207409 187796059 638835117 11001922 450303375 543868745 67442555 82826078 209204597 755429964 463703281 109759017 1029853879 1067041993 554251583 842112123 711150223 537289753 788124760 443924579 606202160 368243172 1054313464 832686158 742684975 504873229 392441500 945077256 986156770 512520403 907988047 887313158 230663142 449862597 577407910 616066159 661801216 543555296 757362339 608672787 404775760 43133041 901780357 1057935853 405431722 29740639 972439439 649517922 991017445 145227080 762183125 156005073 58681381 754434581 696981292 521028630 538496593 569089097 1051043909 49914626 194858269 520469683 1064380174 388137056 420128664 632415117 135269073 846816127 370202215 227806136 124768906 547166292 111934513 658195254 305745068 735314774 302395061 616746233 986146137 171199944 554528229 860860832 14589374 1051536728 432263090 670512013 606590565 452240208 925430239 1035916633 238544805 880499883 837608425 935764559 496435284 1062772996 378937326 436562234 229137534 1061685498 4935041 886878673 380141029 420069279 112860929 733454842 141183758 745436130 534049289 681697763 392927836 292399324 158889448 174956584 637381605 859599304 250007250 233708089 268170352 857949195 602026034 368893645 309127763 561157623 699234398 73441522 192536227 960760872 774275463 228791683 904650148 421189216 708588923 679568890 769272698 88614793 973916571 1030290467 706482219 323611232 855631137 744331041 505698427 954505009 1038150371 390254919 532996546 16627512 696037457 23800842 863779530 125875768 526073627 277897767 1039399560 275885362 98386432 761713646 77795227 779446336 94264707 764802820 866008267 537819122 412239749 848191320 174392443 373408765 939857176 939290725 602475602 969709621 94067650 274146583 917762441 763588990 151893198 1015705473 15031205 55447809 1039205912 73449737 1035661450 630102555 289547310 49591765 886370068 151334390 154196472 60646184 473087465 212181291 764315340 63912046 310712283 634500640 991298079 249713094 94250729 810620889 308269143 614792824 236297361 355948899 918214375 687950263 988923539 978184791 597396071 393166760 903494610 706630624 770975731 1034051598 1002397671 212486585 401590631 666902982 259924175 632572959 298045569 149902200 734280488 898997056 926999013 881737720 448723027 1072043217 498186445 453382966 708512246 754639390 281555623 206064667 117254036 299267410 535462503 118662110 502292413 915210486 1039819707 137770082 901951495 180316706 316436290 519296254 414991556 274068188 419152202 381659576 664022007 683416078 727028683 598821953 401683687 620254985 720516622 1044877190 1036345653 984708855 77937340 63091531 838057878 912760366 656183402 386235040 122607574 447198022 188109299 48596445 133855250 445929382 434173274 171381141 570132580 481947125 75250131 223664191 721754401 686859943 1036351253 452939508 83909361 895098588 580055663 641576911 546893077 316636681 946075011 868454436 94411534 788771444 543408270 679727172 242391626 606165165 722083840 392556687 424978348 197060076 266542251 846215854 239943162 855504999 186312980 526519765 310117929 292833977 455382149 253071922 429649099 223004498 484945867 341759937 36601158 747619249 712528691 119898831 724922830 110407545 417773384 601727870 644255586 372105207 319232206 164291703 1051934966 663125636 114831394 572542594 461881833 733382748 750654073 697248795 538853800 140009284 227461290 631242130 661999753 565715262 476677101 558858843 994816898 267698885 221629376 450715028 980249870 104895253 552546497 165752959 640723255 405048857 549098836 206018120 639740918 1063746075 28943513 89476958 995251445 1028183841 23341585 1049906354 309501015 917741789 490618484 334085884 221528812 824464779 894356147 356565804 951678908 919569487 1036359051 714019343 361715109 12455644 902732911 29833995 758670153 869259111 79561478 729733026 208883313 205355982 187157455 569078986 847512589 46926833 102680686 494266556 682129700 948336411 678746059 339970468 1041974988 567925515 1021902266 906022795 961440145 115043711 76997063 87987118 16789057 76056538 867331928 216821043 336218898 660016976 500021469 550654909 828498688 332744846 252687655 130981161 499965555 631173561 808345778 992158678 161612099 308470949 656704022 419811697 759384077 34648293 1069911751 510916538 134563554 312652565 418661490 285517840 1045427518 1004895323 830708406 442803553 42262950 216990206 333021965 657696807 305935311 232476573 394359816 691204454 567625859 664136319 395499255 451753784 513892611 582817704 40603050 593073625 189782043 1064764588 527200464 568189928 792618295 377684117 388433679 880285646 183721570 940292617 655244232 905552879 922148917 78272816 136734860 590537666 1005787861 508235385 485483660 495399116 922539853 208437709 671895197 865759276 666605521 815464777 434623505 844820263 757094056 846301199 491654921 105980496 331616747 938008921 181305151 158020296 489160982 304493591 870125828 691728617 825514684 1072681605 814344370 105275550 44394412 730249912 801083943 687372352 1062720027 102614197 4104858 426599779 753553262 1000060939 654087539 419276351 832013347 638071994 80554036 206720507 651295827 538019143 912565233 434678143 720392017 373956008 431248338 1007309398 566617529 648264331 271753115 788224153 685550767 242962781 340165893 31428622 478284123 439672067 315926435 791710865 116379310 20363590 566460839 360500517 168229866 172907503 54975370 102342001 62457818 364503444 298884610 811823504 80713493 636547204 969215938 39724865 899163789 600798490 221223708 381675051 601961237 685121495 604720321 468433931 348873639 690632149 573135088 731006144 704894113 507099546 55687351 608934788 939930274 768312183 175320590 463679225 798996695 358499284 341717941 415832341 308468738 1019229356 207807276 926003486 332922890 476434694 632210783 1065633949 868876611 596253999 766917107 225114403 496298192 29042127 894895933 125109604 406447330 292019748 827053381 711917783 704581180 401209825 1067484150 27332859 685630611 782492642 586686420 650814591 310296 453377442 300833336 400601109 280277944 284932007 180508847 741234232 504165960 852255869 255512146 614095264 216880149 962344457 588177244 1051533724 706582241 19332973 832507881 41468832 819411413 954524118 603961148 1073258634 554297781 958030855 160216081 25966775 984268806 513927399 311218425 424164718 24595349 657153625 1036017342 955075415 142956115 915419887 762803731 941762750 734342899 943676832 374843747 443309082 1040088748 80518054 214017808 732729526 260636924 497469419 867089055 1026326724 853991412 403051358 182932743 814600054 681221508 351674372 256319546 679951922 714403765 1019061895 23496381 945082359 626605168 886156867 997713420 791024593 264525423 31667490 1059952854 871254260 226187971 783205208 725475838 1039014311 502717817 181544441 122581576 1044297090 84151272 272876912 1018533785 862640022 618552012 447821223 222012773 653533304 411111309 525504080 866155035 819611078 698861745 772855936 686799403 115613800 269343121 900049713 967047115 1039038872 987414737 626578930 401257718 175066674 735244633 745695895 46754250 788353771 231749564 96338102 690757799 201220947 496246578 718582065 757608113 91488855 256956112 607392325 694015341 485824004 233512301 241681710 235019026 2278839 276577778 3769869 754269744 352144116 425047435 359558089 645826350 914330883 974728997 129366239 104959525 326121259 36067280 929471029 504517714 476469489 90637963 6186968 281786294 852741372 452466663 906581592 332968043 328008831 1061373188 700717310 243986210 563683232 329675828 568346203 829894771 929104302 868398669 70047157 210587873 881711392 698121809 269524269 260673830 423981436 145612108 19258799 195928165 623099269 1064281509 585849603 327461664 747315805 618785283 838151819 621826520 241956411 567561474 676025715 460133950 759835175 852215495 580895981 472224979 314845469 263890845 258958547 739974672 122670308 393107543 1050074966 117859562 240769286 994492066 66285490 1051126279 898679666 93951446 239068205 182286435 24875732 812382427 871235995 1017562074 129705964 497365213 507030346 797206773 1010897185 898904694 735330116 807581413 423470584 276593445 606268330 339975788 138898655 123306682 568710377 283387961 979836231 1010612638 290352498 1029286394 296257387 1017035243 329769427 96597543 103544601 378887121 796268344 229493309 803279674 169193276 1052595344 820702482 825649124 965219167 29240774 635369314 275968422 288106574 680017107 641715153 903477754 137544593 34651426 714813785 874154760 681579207 746358678 716661476 555811313 452990551 1062296420 399532715 706490053 997760257 570619778 472568290 307961403 624087662 537287777 492737814 226304797 361097696 62320627 1050483764 953229821 336352504 156873544 323148434 943230168 97170115 705026091 720369375 351825483 216171466 160729836 59415321 446038837 241564845 718163828 322748339 493207273 798306755 948731250 367483829 253340947 726948484 886148198 692366435 840932339 236246071 651211400 321900369 756647020 770399985 49243671 995276821 873555942 866851414 571008197 637067303 517943553 360171375 484058349 66501095 132049638 737820795 694403243 846162325 912679067 656081026 627219694 602077815 776547182 923115757 738419162 1050686026 922590876 768553461 670315708 768096362 638704266 452062823 50506426 232986608 693074978 912012655 561817048 924553017 534021489 2108067 228279658 399427900 470677679 228105725 1005446238 719755102 42890578 311599659 1042107882 370363965 926242922 999806403 780720240 179373073 291800915 317279569 506801978 446268457 1029110391 92838129 61070685 995628394 624087814 234624423 381773816 849175621 125481640 82458579 467678969 301821424 384704058 335898423 252561214 21294575 723335903 465171167 798353973 926965051 719493689 551211998 67814064 1024959176 1069505318 994550068 841986198 157059453 291555288 771625727 623724316 312044981 430395796 333768750 401725706 491141017 90480152 305993598 737490854 955895874 546849427 407902801 851945613 1070578242 859379305 360023338 725420817 899831315 304307920 101780793 155194722 400225226 25638981 94322428 141218203 981459798 1068316744 248196040 624329302 500592083 569617225 984353104 983160902 234099880 679483481 471994388 637330157 814945790 637467355 489707244 186379130 1042705130 243515779 311168789 291509981 548011714 37038908 275065159 428704568 596743122 116694321 672195778 58930979 527365742 178891079 92484046 834079120 373227093 950803889 297105618 700899617 635434550 914638104 778559591 99633793 610106737 514405031 476474952 353396323 83988016 335823308 909541739 991688372 387051807 168913638 762698635 178232746 1026021463 874474559 551488282 484249296 607786352 670786081 484300459 141273993 48171688 978952136 587969724 1045454851 856874411 36091905 806092647 275054636 370476636 764713372 710924246 537498014 437764305 1006518854 1031299430 68582921 131547581 682874350 1001089453 732368724 1025443522 166176143 951356674 78877213 889071256 229912504 740872147 916398735 966822997 38709281 175870617 723782790 631132806 863549216 407177548 26702455 1043845488 837726793 369623826 343903465 461700849 1047527751 114979440 1073181701 240002634 718580877 926966254 563184689 588310384 201370745 34175103 871914660 568847594 777627350 222148127 270787588 108011705 695446016 1039038988 59236200 562077788 837603471 742593075 311707112 382593813 742058317 1070216325 839475323 90039075 185734832 964601663 965368634 390859617 878674055 1058639965 928016262 232331264 842971173 1068659943 111064270 349175507 786031708 665628873 980125130 925218265 915390823 222250994 210976325 1066733624 187690411 42843121 1053498566 1016395708 300219765 529565444 351176523 763992759 525311938 722930717 1068714496 1029817933 270327963 1073009166 306869952 411293004 610986235 990432502 285449110 280038054 380237717 387202947 295597129 664797360 493936885 1017053007 259218223 304117984 450311997 954218074 313922940 227346732 337416333 298142832 796591466 626409438 611071653 833760176 818841486 981697801 669947783 437094639 685888187 432034984 739782866 577245717 365442743 16979285 689510985 541855978 1023941159 822514143 217470325 95720874 322468601 943953361 919175971 676993532 526869400 628585832 465882993 70091805 919245505 436043169 816749390 1051479442 581772447 96789266 22780013 578736626 217469557 24400803 221548890 748879604 965470051 947888560 645340323 98961629 375815372 497095064 935852158 526545566 711115905 1005647794 294245546 390650082 1062987654 69601437 135894986 411745349 95545973 768657176 213125732 385741857 534862048 225129809 638915367 80559969 406352297 291586069 1070339433 492496276 261447286 703126034 963617750 225838105 476950139 288305629 552184469 677733731 185716519 761987250 456254376 569417300 419354172 545402757 72685846 627105702 913948642 865645948 910633812 971492819 53193541 676630336 391463666 1012356825 592792313 654131926 540039936 144096926 1054408600 267970421 683763692 474221117 896514333 467507782 486210413 386277599 89780981 872283334 197435507 83844769 671946726 580002898 53928680 692571778 45806826 544605314 565241723 902980712 1057486221 1017820453 1052271481 949103309 773433321 989290927 788616771 590037157 15471557 420780395 659813799 771591566 644218422 886990186 545793586 432183590 650458925 990427171 767372555 262365941 450103026 25517979 173781869 742522581 203588155 284227318 687475962 102050733 803504381 347721025 795005959 157328706 959025756 503194338 258535732 408753606 599953129 436441671 4143785 478512162 841015378 932345929 883098252 981209232 550631655 854336512 993736054 154035899 224711951 897839016 542755204 880721131 242424514 363124419 807125645 258097845 266379269 1072279162 9156283 615300308 974278852 826309588 642006452 9722250 154136897 430650798 111656890 124614277 10653064 150145655 255928510 1024944964 121426314 824464262 463351046 316254714 881926920 902645842 263418567 293147102 938583319 231049899 772554962 569542829 942720398 789768113 138759926 500049155 776817974 359259979 348330588 543260161 616105086 1016768773 279820772 255650761 192489492 236827762 845024939 549878088 149004799 741344289 781584598 117022139 135201970 58224607 989062746 212130723 896371347 480708233 378683884 835266145 526663829 69476862 612690053 649327056 684938389 696656442 552063255 790414820 358258917 445591158 269022517 637105609 732782118 111235807 615200600 509756517 853808945 597379589 373282215 439123119 1003079565 682076367 869092767 901807643 540974936 379004824 645721795 703455688 669131328 128967228 120420054 846014784 424526539 730290305 339338825 192281029 11558683 633341702 417229655 328894248 731458223 1034874321 683493989 893331598 782477074 112033179 190635409 888538172 387877510 623760791 905379795 125911809 766396496 160869100 690360939 346677799 409262403 435080638 750434235 110229700 941153474 7794124 233135846 548566360 155011636 24007879 427624764 959026331 285257738 477945825 610056275 681399240 42370556 758649127 119336306 573042583 609945773 372099526 821497741 330648313 11744745 140052381 38305639 983846819 348574324 313119221 1056358029 289153281 51163770 908095269 224020121 1055544588 1018989906 70692201 641646924 606591228 1039021257 1046559982 216064477 56651280 748486953 136231889 628475078 513421617 428441625 876574606 8431266 862074462 56884112 71237667 799496017 209636788 776251601 916804438 662602977 166411373 976746567 678473000 988367491 15081183 247455370 432480734 1044943483 513883947 227578507 676462470 205754770 521516698 457245811 207010528 956578570 442692409 915328612 749451092 934056904 330622555 284380617 1071874851 628416207 22895616 264583550 452889071 240016852 94877279 630596555 998261461 179423443 546249489 401425354 32051495 491423074 195326217 483579901 915931639 712736568 497889930 515731461 13336645 40758143 553472838 453878966 311738392 899085561 1066988196 947436997 1019413001 1054441302 690796055 709174924 481037360 1007980305 109909872 715709157 131015030 261095491 756499647 36572458 673237839 270950176 842526524 558736897 790214819 450527800 595321202 518375511 394643327 946368203 308040651 583357157 318219904 859865783 232858477 913457913 490740937 124340722 632462360 219476657 20600439 131716693 143778282 221285619 146276235 846745303 366271535 402772622 282077284 738543940 1008892067 806508073 479910537 327960586 984516081 309322392 603694129 620758870 15326546 14203736 1029445838 437303902 150831054 292833428 467190830 635721037 1025147909 218009666 555398380 441126001 168607249 952545605 121227547 996834909 722692373 569393491 509506163 262622309 62785969 1068003252 778191515 828992492 965076063 93360859 1054359410 311894397 23250510 505107434 217797867 970356748 383133010 247821301 1007103073 773198353 892245488 907768266 592759597 283472384 754569317 143899243 616435508 1010338020 947006109 708181232 897892213 662570908 399136291 1026581925 255208819 214908761 528022052 491325877 110830435 646133469 171720380 34684635 871561543 222741343 222264965 6287132 746216086 134520144 1014265390 850202348 1068594560 358066634 219617265 83313072 241707601 158288439 653105819 276475577 208395270 723116067 1001882424 639069673 484096972 608833828 82294939 195163095 288883538 884695245 637166789 690250556 852078702 143300877 425648059 361613772 199046858 369103690 202897035 902614420 623663301 482685985 113643311 440904646 483157806 889159120 15964521 70048328 619799741 815359935 1251587 80699325 854175975 584568588 532810335 497582645 999415763 520531857 74971189 195289836 253952365 68920600 810111679 835462620 291232190 668860304 428833695 423524656 178455059 714736886 185614728 262682943 48064497 827425713 131413713 419026705 184643939 296611394 404716043 65290237 1024868283 231160149 769419054 657810669 251529658 269882553 532700363 218734589 385956523 783422227 825553944 451338857 1024458480 3890755 77421672 1051741193 179939994 397083117 190768480 315561577 1002186114 515810773 229731670 712120865 620936769 580725036 4252440 196123749 478042317 836735917 161644666 657587642 1040167396 230341260 580996149 445224025 303342503 596783529 245214377 26274013 386307051 639567238 604115745 809525086 454347698 849237147 1029906735 781834648 554886637 269456926 639783769 588503735 68080282 532550691 517692244 632521269 274082484 335552678 969121234 962425592 777342028 895632314 410817075 616726307 382065764 105167036 838684962 248990074 142772063 886093540 774396877 94049511 119066700 612850654 553162609 361331124 684110370 1068170810 941953724 660823343 155991845 995156056 702091534 779458818 958972004 989850040 294393836 851756441 421343859 32994215 1005616215 672287953 718060834 203688096 717022719 627868727 830715836 1011279114 210000562 124469130 112881934 460065227 623858872 317601861 848648370 592004031 572823105 609521845 1044279913 79520199 373836668 1060080457 902021537 548003893 910389781 573062029 537266003 66025543 728211588 778131925 664155658 672589230 808445686 467907483 43540495 306244979 486124137 640683292 547170464 848600355 1034141768 460494841 575222937 734349117 989440070 538111143 651816095 590964475 70592564 601043014 372482409 930172464 910103665 50719528 7773625 935589292 351419834 1049472862 791014319 492295083 175831042 576566802 411574141 834053130 504772396 726117696 660462470 870695875 727280547 449656256 1040575639 325266386 460250370 932622969 886035206 572707740 213984448 989536105 347929609 79395772 63639331 692881228 735162523 117461544 678480820 114847188 713163065 346733066 830375958 420398317 418800242 66442173 337809620 307560789 1007525748 910840734 714355657 887666673 182083206 686681827 32611579 1035980805 528467887 953071545 321841633 201405215 522096137 121324897 142159022 233756999 187573363 1061680877 767749730 89760247 332964468 342740278 552684577 1009164995 747680982 719221362 140369283 330609265 259449889 858966408 154604527 567929624 627384876 20459716 698237774 316690044 398368534 527711606 263613922 938003595 205082375 1058935900 50941043 57265556 1005332390 772980224 21900211 93443380 972230775 889695274 966221546 783498546 162520916 396832810 227413751 763553105 853712928 754046083 536660559 905541543 418118597 889452239 434630978 613550387 455519986 321985164 921209463 714513660 491048718 433810784 70780191 570672179 640031732 376440799 317065960 712460270 704628945 645389966 698707267 398943765 836771262 780149756 847883043 1054053148 519052204 631668013 492957824 791460670 341009692 635010680 912104061 846223740 654109248 966440841 560248074 411408341 332596701 201324892 886405559 720050259 803410837 1060925302 267221808 400307957 567720172 639868504 348195221 516075332 942888245 277549103 834209804 789920651 265221863 871055882 293761608 543388350 383995531 265902146 765268271 544119955 336887113 96085044 413513362 872874311 213372258 769485731 187726520 399987136 747029174 172048058 985927149 1063205340 943572928 1009891127 987863072 922615140 61732321 373401104 774040646 249708842 498854512 56107093 419506863 894395335 848360183 784756404 744438550 873850240 347954520 522091935 280847853 1016636698 427520603 892575066 1033800922 482483149 936358445 156537258 113670803 37846173 936102334 18898338 605245063 828707216 1001380474 484600888 878807972 327143728 144961059 243364287 538128964 520491697 89165610 555869645 232792207 901418122 767553401 245935333 483887560 160308572 124840732 995854228 944201103 288232158 86606805 568349038 584159174 882218010 870687221 504140401 261137726 233987971 719025909 129639801 1045713199 532193011 250318318 280928501 444414968 707571214 994809030 293420365 975309065 1032756330 280060601 905148860 56743457 203814612 381536181 428362371 710786226 756722423 815884862 607528863 475948253 760301538 902897645 576762797 295165012 295177829 358937244 853036829 443317382 959929935 731602647 524904037 214958636 459015821 167071482 1033386035 467670886 986022185 804971575 242365666 843364574 941052029 726432852 27388123 23813949 504147169 796033643 368806430 1001776837 575113491 250300789 198192454 552758330 1016478924 625955054 580962843 1058385493 375887701 297668468 64504977 461750930 192731309 286024023 531604005 998490530 622073007 948269969 604510002 359696829 716422165 691531877 838161311 568823720 818442712 608695646 966817649 76577329 1063572260 163251199 50648279 605987200 542537793 748303143 443476634 306184724 863356844 1049319760 907421721 1013979087 949117184 697136088 864851689 751834135 1051205433 588372202 259484515 330400852 109028149 920641715 83031148 1015188828 699582507 927735447 890897824 483861984 771898474 1041204358 663084077 859601613 966704284 887115792 1025403275 697214752 61546978 183659197 897889594 159376099 217901123 373906172 318741476 918430644 591150226 371339159 111660074 401773222 388276814 1052848670 348528776 724759791 517920814 237622527 954032426 566739157 95518850 30236177 391776034 37338371 371438659 816060165 919990027 589818953 711512651 1008012038 204780318 94935078 743176118 98651730 634030133 808833981 228835255 990567784 571943168 557835986 779766781 1009583862 563274447 782773154 1059973372 1054033251 280392867 490490172 722228027 934329795 111779689 554147099 645628019 700583895 630075584 831211956 857157648 536987783 35996562 109480884 354891713 733526421 58285288 886848464 1040065128 558036042 314461878 850988829 424745126 718355112 853617898 664025082 192878180 973912727 303161825 959268546 183697533 439131231 654421507 78955247 159662723 248139147 372914864 962884186 295167224 453831444 662042807 772963180 893241720 909251460 656523903 940255825 203447283 962328171 20403847 288360003 526477794 156651053 80551476 631939972 600186017 674106791 83782160 195808618 815794169 210928348 886583937 520320594 389410936 942136275 897097842 155758511 922141838 472450016 367738870 515781751 431783151 295073694 519017234 1001669255 112435447 963683430 760890131 404924505 842511865 376596478 344901976 1002677656 1037975998 922254859 447281403 84069153 553216375 1046857851 689831091 470676773 190589294 753973111 1073558547 111379076 973554163 541722790 458186132 778845681 380300594 893456545 890108300 461118309 223123150 426577679 55532164 233872313 919001564 884867102 711946939 873785601 213378650 181587440 1058428500 387178208 922403458 440479103 57923727 268330310 838492092 854419448 231898910 456663578 54818735 641823127 554893329 163207132 87438849 137524601 996020180 15635868 190357851 846826094 417825568 623213196 605795648 85845067 716404565 902203009 475028128 155990549 8401280 791897546 563076718 132213538 104515080 89860252 25261181 112814793 841488473 194934952 975015724 711719261 232655183 734902149 900943441 336652656 112418876 884760025 987960790 990175988 414873736 936528750 60606592 1041107925 1056850989 284337375 899618442 783354554 458449510 754960215 477624398 1016870178 538110022 796633042 192013217 1025570121 81883517 306462816 913098539 767599144 780777515 555188649 1065887037 983108992 348811365 323218580 254251413 19720650 43264373 1018023771 868891892 918504376 947932174 1033310544 236919258 33518320 19578748 517531404 302619805 162717214 47072199 781166556 393952615 930788420 545669776 329464375 584786527 293360484 646432575 1879925 1020096772 729194095 402331465 123997767 1066493119 477218728 416986678 194134699 848428585 310734240 660841001 1058370999 1043709572 1068264008 1030026669 904365909 759155338 857034381 1001968450 354972422 808647633 28669344 914649290 105647984 334749816 85904827 89767630 245750812 285384488 254324928 37627372 202101584 572688059 290901148 336864090 450391640 35552612 392212246 310162608 603311809 1905217 136462242 1047674491 330446990 112312363 522397350 778954216 17169965 251816497 585687503 798187408 556557976 736071538 297537955 762146572 700383397 440042030 246123360 93704449 281238231 205159727 350656474 575810385 106898203 422501454 546981858 585731494 793909323 330582479 1053183603 1003475128 1014511971 116761732 929861603 564537795 421466826 561047962 999213818 730467833 710711920 878775171 109508233 518342458 229405695 651675286 624864147 464871423 328966664 223122502 895491873 872824056 295516889 167124447 61843385 4341207 773977036 550760794 319023836 94413605 687894625 689006791 354627732 541859962 358575323 177768106 18634787 594441997 752167926 584972697 938428816 894079019 503534749 882943091 763533990 378260800 890199683 1033519835 422258536 462261443 524089726 472885200 294950343 66170308 226191114 65987269 381722578 931623251 230262327 201457419 403804764 220752756 208704363 473434077 469430958 248233587 327045254 653852858 321694250 465312654 363879104 845442397 552205859 787593436 228978769 426479221 733207983 784795272 970612147 313378093 895831429 846538397 772438134 491930839 372015783 429557631 988778181 508037186 757791241 79945031 769822305 181253935 345194972 578957837 885005806 897216549 279493219 672418314 384710680 595366100 796866019 607965962 344012872 895131304 501981392 856559683 102945751 96044162 467226778 176839484 146571118 773662919 491568446 28820449 622822793 943244829 845333872 189207233 787803894 84797359 160793440 134204943 463553458 503923220 552212288 916975974 958111625 423253907 612885368 775514805 885946327 802688045 260690918 559031575 716070895 258718832 182429159 457709298 1061126907 248070556 792978130 953661649 1048656529 1016696539 119637639 744460385 342213672 1044157186 693753773 1064179253 522665812 887899559 619282956 978038414 445517228 735966180 344689486 305142466 922238844 210576340 693212158 216072582 884835742 148107245 345178052 871858217 1069570509 759586857 983181728 407202925 452687720 751662738 1065167290 548821436 58263329 206025220 3017070 782772815 283282776 1001172640 501078423 247252993 937452801 444148755 1073222175 723550578 535666541 15395114 977050355 815261382 413951608 969049731 749780426 126722717 431618137 422697608 242150534 946863387 685815248 725462314 312458786 62596814 579392925 445637812 399345067 209822699 145211523 730115224 836842900 599669510 890326400 929544871 92898992 1047726698 388178297 597531415 839111693 271406192 568431878 387545142 963780145 861658359 182152205 120329961 198642502 88008437 1032881704 836387525 506423785 654592335 678731735 12225421 274952754 103934773 837889403 411910511 290549220 535473166 954154602 978317175 966386684 737893328 803498990 418604813 766891086 821107899 460166533 543084678 66777312 411679311 892601882 506010128 312261208 8657719 1032787523 505244637 42376493 493133730 345028096 155032276 151146693 158035582 479574567 587570237 724100949 682964989 105654501 573184177 368464646 393665714 70425023 925783606 339619153 751105450 587264991 333062715 367609935 24759404 88075677 177507666 98375472 703356209 548649303 98802122 829811477 582397576 189314008 13105593 234518035 849421719 470448966 936965492 569265244 174910915 84051785 888238619 667634071 185424814 475662612 229471296 432914270 341636147 416649718 172941639 794566403 638421771 118192216 558395315 840335396 838229862 139339329 896199411 610917551 944910635 29599276 509848 741648276 98147407 809132645 286165736 482825396 388333729 55047951 195115543 532597997 161886440 981380764 98694453 536818881 130129500 775527024 653688512 103543211 623332796 793052946 375828480 248415167 849984679 1062185376 521367047 503156404 745695412 796393588 535511931 476502332 418385982 129376399 143486259 99099897 975530556 142091644 297818249 671438605 995043543 678074589 461877497 308082451 401274692 558963963 708880411 440825227 326395608 609873255 287516279 123073209 713572189 538749986 918785774 605996712 56955109 532431407 44639661 471873452 976431545 157692598 639629668 335681375 536753089 494174080 926969786 987941705 551714134 726315453 560375198 205193173 306374980 86806215 546053261 339726952 60968464 906992247 499928813 1002093439 753558050 649223113 403629147 1012933559 691685517 763991465 562453392 803820014 456889219 1010919325 66628101 1064438224 703545298 105322080 242885043 112564149 266693294 1063252193 324367411 390895647 452727237 795369386 217151725 816812942 295281986 169277897 12084709 774231429 500593178 602466502 577158087 828453495 439875313 704665697 9943880 570789337 290888056 908920136 983566435 412693989 910212905 291212481 844155983 574961054 1012725799 389581097 45580821 1033338464 934696235 954265476 560925310 102037753 404200358 163286866 471172834 555636063 932345421 198300114 254131680 332226377 738591805 42278059 168060675 380557567 174261938 84776748 750243538 832154564 443494354 150273168 500760149 426800383 99468062 785363882 864543066 119900605 1029786038 211032016 148426397 120169726 893675758 1060812955 544124781 700043149 976053614 916444974 979285180 941618605 607335606 623658731 419403440 848392701 349208627 1021032443 227510265 247958902 529910096 874013844 314019281 241655904 917452792 825846658 750419398 242263229 105033706 567265314 922963588 961629207 378915777 74592582 207125833 68324887 961955786 252070951 269157710 587464291 1067404239 564252284 520720467 314237328 131812552 914546657 1054497755 256262879 751348288 665232343 957677362 711127488 470485601 180065521 656471619 659734095 373085307 460766185 71874748 256204924 991919142 231558139 860082630 368734828 119901275 574851888 747169224 639110600 1034656816 450935679 608806528 113709399 206166803 864402805 187048235 626185621 458025463 272672197 118620316 61369498 946619544 1047497986 1052759042 891398868 869298014 180782247 1009547884 192139643 581954760 709354339 737941380 703733433 928610882 788628575 459640663 589122608 1032945694 257033633 939128468 455181594 842287377 178258681 652155348 580352849 776501124 737790272 754700043 438374104 901838083 500605150 755421809 685602271 296765811 652187001 1069666979 822102381 150137530 299684071 499862108 425090429 1036204308 568308123 935997673 157735315 486292086 1041798363 47961084 784246626 942099960 357861825 1042332843 525399802 485797510 1008639820 645187434 140344401 628923035 928572430 336342118 855532536 13085723 206038182 6105737 869330288 674696912 281538559 920931311 829652836 817465788 103476326 891555354 568220067 865898509 1034501825 90234964 629965751 476075421 238629345 329486784 807106284 775839606 515884167 799462603 806291765 824440776 163418173 196581411 277318999 253018521 54941654 362521478 679821440 1054219138 758445638 30886060 1061100805 924839620 324005593 993878584 54016514 169283483 856663400 914273996 237733058 499163329 559268409 963312526 787665141 459125218 709444943 690876888 635430007 455951949 967753797 875216960 552999587 262728179 1015894 119744782 234377883 559293819 806263546 295735511 761013926 64042720 663352170 481172162 386705142 738232926 409290255 1009024192 694174319 630093047 439934825 566624537 162805064 577599213 575433751 418331363 41330516 75003565 919635047 520288851 152595345 494661315 36490482 829141330 104664769 687106420 47467385 193371156 694047302 606321565 909686393 692615391 891122594 180976865 247768441 938884833 1054358736 652251415 773783792 149444482 772683215 966439495 296198271 775960875 598011176 1049396284 729488957 385359473 961782322 135805803 1071939396 215530553 688583960 528004681 229794725 323100486 135709217 644969179 164255897 197281959 376806031 834807110 96402657 158830570 625267453 470359137 700467418 973234200 723334835 1016395153 776522475 566902252 682370515 264626176 352539612 473731240 695577113 1049954893 826180730 848063782 1007148394 98690396 319133056 476351926 887763210 984383715 906397026 270453247 193955697 1008813842 554709467 212995745 1030084193 147168380 516541148 749863741 119243084 516756175 127608594 482634605 1042743146 348095158 1013394703 607202791 956395151 12536897 997942698 541848504 535561524 386267092 441994168 140580682 59960024 6775251 863615257 761131762 484857493 210343329 505665784 90712652 1035381289 646272877 323551512 748604055 777836529 30889099 378636301 1016801552 708627065 596730520 912668299 459502056 10952381 605368800 679508084 413740914 277644001 1032739558 549410998 1023730224 994689877 695289799 56860829 1015702315 1052871209 157581822 287428097 294492693 1002618731 285891307 282405055 80523740 927572033 978212522 1609566 837146137 839788349 41944828 482493595 609945044 434593305 823483631 81685741 197931629 611400397 254136084 287084147 43496293 180353087 948583523 280551584 289481758 1038887577 60267556 698054630 974678665 850617771 854958018 479528192 461135480 553813184 767595688 804775446 123320139 1016359152 869799469 711322893 417446870 1024508284 565878784 893422366 130452760 510813815 124724151 708071573 698576680 909105327 803446860 788241981 327720053 29257226 720882974 271441969 936492823 543521022 28694564 879631957 116143735 623724981 251269456 334990966 830720601 405341757 941255208 323101229 1040264781 113230801 391760499 124879579 882107127 720033652 133071255 1003235817 898214650 767519262 990173093 337007036 65261251 600036605 153621147 31428373 855902421 888421846 118277896 299516596 307351621 86437567 192053694 694812852 860510721 524069494 868501335 785956445 955987926 647195337 615975338 591235999 380935448 60954291 883997494 677264264 923754537 432728523 390616479 349992728 441627837 377617505 771815384 876254227 277580213 243756893 27893899 638877295 825257410 785140691 885082713 996112083 312205236 1057895198 842550781 829010932 930444780 114665420 615741744 439342699 1067432802 135522905 159815663 868555416 540207577 790888105 708198617 1048508647 452296441 882408489 458979198 418164098 788671158 486126926 360708008 426927962 179288784 728801915 861222136 184841019 140797309 293238219 199505491 873464610 624003447 438693648 951966482 482404507 620886496 203350463 127526018 686243488 192402710 571795388 908352991 643556686 544374483 964463895 1053698344 283863775 84995664 44041501 243981325 60272277 474053295 438966249 589300276 216914153 640642305 5718947 341743014 326879379 195437685 738302342 450119581 856130367 995776689 656970049 1003363858 184680169 783864862 960389842 455706418 375121121 879943139 316350786 207887686 585683696 34686896 625299516 288826207 588369102 737413084 513321035 90107082 378876333 472513398 875153410 357139103 98018382 550783205 957563358 1046438685 322723067 30102474 191683541 583663725 209750795 992749741 274542973 304519034 768701167 833996664 4887611 859094860 9962650 509666871 719251655 692537972 564440514 1056970606 223561601 305931383 880889451 1026258549 348936412 822892346 631310877 119301112 887316794 1055602760 848772698 568946847 954048789 999194952 655131507 608188017 783151653 99353027 161219735 93624395 739787444 447469304 407323310 501416454 12164649 428610368 800750229 338473651 27859883 735282388 783704523 383972018 333112937 171639376 613220163 79181114 614978838 419061164 293440832 95172178 541091150 687401822 622118979 554416259 983689681 577176987 537050135 600443516 579917503 607842053 219829610 232707971 399856518 384250821 326882362 78508875 641614139 19184887 93407485 731666311 794226602 432076463 636881705 168616389 132859902 330557354 822348624 809196718 795179079 215440822 548123615 488786278 947603311 1063805418 386898665 492246853 365188981 477451705 743452000 350903038 290881339 376490319 314610434 605489919 671966428 1033689821 349449022 772577738 428879001 561663650 513793376 385840835 448924095 101684021 177217207 23690697 436940166 470259774 481154889 201749909 246824239 810839600 150982000 634282270 435339891 525020891 703049401 835827582 757085689 235286062 910725170 1056802582 823065407 447382433 872036009 973286081 456265863 359833746 338537130 915867496 686536187 49461912 608801533 87062655 177446793 965553405 930060248 782189126 1063113982 196225020 929269742 827731189 972167979 653073930 502321831 703735905 586827740 1049341060 546434709 164213339 853389293 872593996 1052104819 746913407 214439617 737530413 673333343 505699030 144641446 310733896 1041292679 242580012 881331476 43613864 228550189 108318401 981893658 548137412 421751626 789415196 177328867 1008043397 104673157 1026088676 414065282 5657700 361254873 136573032 737055104 459263755 877136648 486139433 833583887 483617502 649986486 892321800 181438648 716646871 1040475732 230769303 278896077 604498947 803149938 1047497873 62798185 91504269 92156386 90772533 543642879 886407861 67596229 1031148805 221064879 786347035 740584582 1741299 689996877 475077051 400328242 990413879 783091236 1037988152 464899927 862119605 58527340 68238041 338666058 127781366 828773635 479461912 558168300 773194496 186907705 414215412 392338844 1034988116 623321251 154357538 329894049 959478850 870478810 995325309 988480526 554656853 670580006 252784842 589325549 1028779863 881544992 816956451 774970713 415491099 176637714 689074607 408004816 784426080 474836160 399255129 537789539 187900801 570802452 1013452992 325665722 97159534 637539503 175346000 799776715 857870306 945602671 580568623 127640958 769264043 352143251 246950588 944220031 834827994 1015659240 871542347 649729378 233227878 1023398072 615631918 620868920 935701768 206743343 683697908 284226798 112261163 1008445594 691600132 1044407285 953090191 610540189 1060703519 518166284 130006956 537066001 715248687 41999136 843986146 837461053 851765315 574134562 443956168 539605907 611773741 38243455 923430315 479075566 4007986 1068383152 540185066 862034019 655368614 289573463 427539155 400039043 334314850 150065397 250959411 54492004 232322664 508979740 568472430 975424909 202256160 934237974 194523681 627255650 500635730 286362629 124220562 700615195 883591252 869345217 1073503098 359941801 654435787 21458626 1030845677 560613910 101857737 710475142 503126027 185795887 353360987 461044906 433916800 410413656 62564867 326246372 864146151 426504775 331303276 561171370 467009197 293899235 914998173 246531763 776083008 265842665 746863027 376411360 36315638 281754738 762421943 276574204 1041143875 548162241 109345591 792640233 772306344 1014918644 314687033 768095590 700320593 958980706 657675023 625035803 124460001 517255905 744840561 923559726 1007053733 866013618 420048393 719331882 27912322 913339332 251872475 668364049 171744557 715430500 263534668 487174484 433031627 709771348 772322650 834945624 290063902 32589314 431307359 1012645764 979654995 625507964 170690997 490580824 178751503 750348563 542399007 257317725 990860196 250225178 940410542 657413330 829655434 263311974 899639882 938141674 464773921 240777586 717411109 155469632 435284973 3325768 986214832 15261612 134339208 128367612 545141607 232169232 194672360 614759061 330828059 1032606700 882124939 452703500 655745812 327049442 521873603 717676111 715381751 685499028 969375941 190055093 666646314 785258807 218908812 955210986 945395323 214042641 862905570 1004147524 1033055165 810158564 556076381 957200651 55781502 753724152 587162041 394290446 755877225 557387766 1070583227 72804803 368462759 68385281 956077951 301048118 980159808 942708313 821963942 607751252 707070329 872311850 672595816 888316470 1058661236 665765532 555255998 451524900 1067937075 121196762 367597734 283704400 391580022 850522890 934692061 589579285 495181213 758177452 900334047 223276317 37286035 373239800 264790252 649684589 755955802 418053775 39125036 733702027 840559595 230371998 219980084 804354250 322140949 368233016 1038497056 718168898 772781902 459005337 646631263 20928730 837637187 675541645 575306355 251646618 967194003 231254315 316036047 641305979 294219409 542363729 462398736 774652002 960419345 352928762 626654493 549687680 203832160 135461348 189235560 1035562984 481378032 530779656 1058299142 1020044981 636185046 544971970 439981945 126000796 436899207 418305222 254587360 592017548 152666619 526418606 308881555 723628734 826044680 373529492 3453183 457336165 791530122 485216052 194548406 935248769 122047809 721876423 797939387 905093686 479527677 127664113 264254878 61338759 139913893 743833305 857801066 570714192 839665190 28973592 1064238940 1067728195 661967559 612384114 957141994 702308563 748943436 622117415 137700788 838295969 137450154 847772433 159135509 492212383 971732271 552070246 185808410 826909854 333060406 772171738 849940513 257250148 112629528 429002234 307037738 190862042 358683107 831223145 940335853 397076291 975998171 883890847 1057580950 627017048 736631048 756734720 584961883 131368930 376136992 236274059 79716065 141263034 553596378 158095617 494797027 388138511 483849157 1038055899 259231447 1035349114 586538772 151145666 766942469 666569539 308451017 313991453 1016191935 1142553 501330319 989188932 275182466 965152966 100573879 947738929 327390203 655441708 305441817 788502557 1071003167 928422232 580732219 35485524 142397933 161912442 735012436 722528676 289635953 982262986 874190061 382722831 962266931 804090656 376869892 35796226 959112158 990230540 724328406 326678304 98536716 918947336 758726091 20275828 1017746529 440921387 400914857 534887762 643706472 940206302 5672554 564351776 439594558 517767984 42251814 852997871 689574906 492895496 108325292 1032326435 146192112 544900398 845316051 279172288 284594938 296270130 69235738 3480681 99896431 238832420 427221996 807319930 624576725 1039273345 695215133 833151600 980691452 901773256 591895732 356104581 909877678 440556559 978549151 501299655 379550352 590689810 632794994 50501097 372796736 168231128 225418679 933186857 822198997 58352508 986182061 792391369 650493365 132341821 183267244 700547805 501134409 429776408 189050540 635249113 1060516843 73610586 479446314 95808379 701756012 873362385 1064965673 962183699 996720610 147310982 551222097 381545498 991516290 817891812 532913862 597832892 293911812 557100488 1042878230 221330069 354006592 804142337 695560609 806601050 531999343 583485892 751309079 831254548 410951406 679249862 589495794 148600905 479496009 294730952 150090135 1057771034 655838532 192246486 481487902 343801016 422729016 871870547 931623656 575673560 95427558 169896592 706355304 219984062 636136354 611281276 833405222 905430086 487188719 1047644193 47819279 319054461 271962137 353344657 279971400 19527484 19433897 289179721 537425545 389215515 155906961 784073581 730664079 202853508 570080176 532941125 578507795 535300002 261842460 791576619 894976727 235339466 968802730 445660793 615020187 432946855 713436180 725238152 809685623 678279975 125944186 144824724 40690036 460238819 294322261 698583747 700932915 744718175 515797139 121090296 117234426 1035819079 223253956 906912217 547921788 394595257 329547612 972625190 124989557 149739554 71235189 1055652704 791852580 623032539 4378174 948021072 899085137 622876040 771951221 416302890 640372305 737558710 512494449 421033892 550518446 471177347 853887705 405020350 12164223 914674590 863211936 121725365 345554198 453785811 754839133 1052233730 797174844 590244896 211832589 745741959 549615017 36394735 337026375 81519147 624564071 547739735 37846187 412864822 674524311 1053328755 554788311 357192297 188612412 1029282231 573945263 722547830 119520429 115719567 930364511 1049033167 902737325 933703508 104131981 402918509 849138287 517987479 451154430 666579020 927106462 958938205 906578940 547841098 154998612 1066787449 27322300 542691682 896767688 281217155 41894917 771186937 478176909 259252601 51884517 962342107 193703374 1015558993 33084589 832179942 954022200 766917020 169242282 487281515 1024607895 1055150511 641670523 155456982 531988905 765349419 125711556 686471843 316867021 496585148 723238243 619772940 690748610 197488088 104070760 902299517 18677626 580511580 39825622 905836814 224007660 263971839 738336267 978161296 303816130 653904353 792361176 346134517 764003807 275030776 604846971 401416267 1028074544 539893240 1050406052 803804018 533139082 647354210 453511981 704901308 422748606 842232217 1046696117 184972142 55277204 156233708 858037564 635943011 288397507 187051393 387287002 516144624 642816824 548743617 100745984 659675060 627100292 308782966 63310259 566813282 38284323 509186665 855353460 754586502 217335247 822380464 958395004 765592254 79361265 478051794 750498916 496622115 421843433 665031500 738441105 101407250 564406847 412173611 751630136 564948460 104938902 172327477 507314292 291293989 565069236 773282136 1008567354 366098574 268621953 474699575 812180763 434222644 287460324 4673923 455247599 592473659 920093983 196470203 200414646 151853856 446700789 833592974 754701174 452913291 743231638 183123096 115020402 172054876 637014244 654446256 821362330 404069364 787946451 810028732 984370182 580986994 580067734 910003933 683115111 881965066 40739636 700080264 12894331 838629693 326463191 10043263 636960579 152134797 205341435 109435469 560502598 34150662 644515045 834350982 1051513564 672859531 356305389 88616317 754493894 350738620 225514141 557882785 821197404 364593673 505362318 520830157 1073237498 535028138 59908370 198038794 766182065 976671121 809226450 145008732 696241004 769520451 1010809109 946058706 363621529 960624360 277014166 13976960 627218869 318508952 372971073 786736265 518415621 94205291 770712231 507405639 772511161 312311884 1026575110 448984870 877774506 797566508 252488968 1031016809 982484197 752900414 503338622 621748712 744297618 781628066 80766925 12701437 410160538 540272679 732557617 900492509 130083527 691490174 640479780 492202155 101295891 289508307 385516185 800359265 177497836 188289559 821209599 1041288473 17429964 288013882 587745285 960826117 221217567 185081991 215592673 73095293 500087206 76295499 763576057 814319236 1028421223 42908842 970822984 555401549 381871861 876426957 411225297 307303195 667850425 565686852 469502697 925687290 1036499554 338355925 1043917494 561578200 887178767 443810564 1010252927 1060796986 506123595 125005232 399769180 942191670 312210240 585396332 122635174 587508274 73022450 756791871 677775395 835892137 823114787 442078194 553746931 892279843 382783572 623862601 228922952 842798912 772491745 335103665 653793633 211312457 139888810 183641971 257211599 726974705 1031742398 867278630 436575860 180598340 837225183 650387107 289825537 564069202 877884894 16405520 903277371 934722006 27686134 4063356 397798796 694421585 679912484 316534339 30752045 129513709 475774302 622386154 17090279 665699528 261782179 272941837 208037293 490966846 878992513 865479301 101024403 279335132 941010477 339431842 415037048 6275016 177604101 953727340 503003317 847459662 192373577 576404496 418109498 848182413 1056797506 491014207 750711846 545734886 773525911 917598524 30190667 1070113160 97549048 147979983 344282110 656884194 477706789 545074952 285923745 206835382 691673000 89375441 167692078 468918092 388475032 447686182 926601684 1051504239 944273557 756397720 246544554 668374724 204501321 834550865 238311118 1003693399 618802061 959875963 350643245 678760911 428976914 100806281 641546817 697289462 354945813 1039822645 5849687 542519520 13730128 1053834436 481004784 610023900 328950585 923080841 223852336 712534123 549330914 195921365 66207734 724459438 69745809 780725463 933863641 347703142 557761189 880286307 992902813 1037961981 361775669 220094112 909313326 79289175 550249981 464552058 376723562 755963213 214981303 951485883 974458599 809699756 998726283 623849246 152269688 940818351 306902841 888896955 281021064 359044714 556065366 731175952 677674073 814115715 361642999 684441628 234986284 533136329 913687034 642616850 93415360 500964146 637171687 506620573 173676892 1045752654 700485240 896572354 323233797 101064870 1033860865 480049852 1070905423 537615764 411108404 928813033 70045120 693803914 1070726538 328133411 332963470 770408446 32845280 729209260 911196938 1033026677 364206359 431543091 851511484 118763369 70363036 388445925 182354117 895964034 1005559745 728324865 899861364 993483337 621826639 412658906 420020621 394163093 706799802 724156494 851671785 146980825 194047231 728470922 419080203 253809906 494229468 622906613 617688941 783332221 814609486 232561763 774619568 3403482 430078926 312348955 721847978 436074285 945395600 769640911 133934475 1017976247 895455356 87703478 716096055 747411347 758239265 649735507 885441632 963750222 282631781 250117024 144746227 872703051 89408322 821980394 697631900 837172285 393442751 962894017 618715867 281887216 192232211 595623774 238198295 720365486 814827010 986416459 723910433 876417521 551929794 835189539 80450046 464480896 1041437849 745268515 435644959 122462383 941888011 22875458 695037907 796234365 113351804 219686506 870065144 783409243 762512416 853266674 821104792 230083754 85296455 21063710 1034653294 920683066 421172389 361574402 133532294 946227292 826292770 190458948 645470639 979972115 136525655 43031502 422434022 769534735 689067642 24273598 693900285 21628886 809016879 46868736 37966187 370732845 583626638 966167947 525208277 410751007 420091604 857727918 770286266 711318421 788271426 830854858 5387255 812827728 818748747 289389699 1052449817 832680784 79756302 357319716 601090003 212094654 281735396 639590617 490682401 911299341 517986027 805041127 473711350 439930506 530666267 956826536 730041429 164284486 1008343504 761380216 17937059 886265722 960256202 621446727 93993950 553087252 773499452 247151929 291416492 379558113 278596049 627646342 382435589 161824375 183738091 829164166 113799870 785917692 686427512 402919711 435018285 93894076 925205666 381122045 85813581 636591358 938490280 393435737 521057 873798868 83059179 1046178782 966333652 147736584 892598112 254457376 1026214143 1026357084 460122414 860884590 1066110539 119612147 314383150 573725314 1029122925 439016076 378229303 996465948 681156780 225558013 394405770 602871212 632598350 716263825 407748163 702268306 681956024 630006567 64523913 1021362968 231397092 149462192 28893256 577328442 173122309 807475852 315919160 197070235 154613270 803566815 324149426 337593505 650697076 314000212 556374665 1057463657 788610393 449211109 817116160 713363812 676737556 579907232 977121400 240497419 492795762 797236432 654685321 110406776 854167808 682806929 516498551 498662361 603434883 394905469 232575500 717672975 670617147 403569083 810935646 699955488 933051834 125561226 353444422 18782582 965652429 242317901 663178814 1007081382 460633243 84873421 205808957 892233787 833910532 583155713 256567664 944097393 329421152 516281096 486287630 517967453 922485831 659366943 791052193 426102903 1030150043 32357500 782037952 540717094 785068805 526605484 282391278 210581755 980310993 799138064 508127628 1050840508 225987860 116756050 283930396 91619804 799516520 561710448 856666235 239980444 585872420 679166299 65039142 846345985 260995510 764042524 793714784 349718404 368215143 589096398 257221284 941672152 557399587 576588887 97372146 99785579 756674588 347987362 753581198 137150003 490445740 612035668 403921933 808224790 433757240 242768265 286867709 642346851 916314884 792270410 364581566 925256949 797440266 100412162 209301994 195604257 1018411569 494203548 893590488 643943162 329439798 26909393 1020253237 20739988 892297096 1035229696 526221799 588936399 329584008 960839471 444659629 806081360 2474239 842513433 915574228 163863304 616295870 288082970 1038695807 539937430 416761379 946687704 764526576 754563302 855307379 771042280 380191699 765925429 797026797 449112417 485010087 542544062 728134298 164139058 216812052 638060230 936287185 669884695 919299375 384583257 851884878 643530127 1856480 857394774 278210819 1042023729 693688322 550833506 1003576474 993124852 176761286 650492932 334190824 892352794 452417398 810964573 94505117 856151343 648898719 654167076 158371833 960632330 484565749 748333297 360054513 30415881 954968150 1068208147 763902158 852082945 655660888 400653049 760705132 381046066 1018388052 584620479 726289246 965511959 501173211 490019924 596098213 183249286 78323700 906659556 819593720 1041253813 1036234205 843672816 331714672 359627321 210358147 288400893 979919153 526236500 771114455 949933240 1015732556 937483603 492207951 410702630 76614810 19873540 604923957 245650617 630146519 179533099 270912993 407512731 288645778 555742954 591430008 454737312 795999348 572777710 357209958 39997655 266281928 132899273 284120800 934022352 929972810 460146599 774398472 248025550 990371218 1068315443 415367771 180988730 660916136 1011712265 404426076 413532155 925238846 585572623 921275382 782892558 149716268 593396379 542313727 261871942 176493606 936090038 751491399 697330475 319776643 219039601 1047530373 245227479 4640851 328600638 200749116 784946055 23181111 831655834 803963412 826460515 315267876 224213627 417088343 1031088686 599416383 526421663 26945786 1055448699 521085600 192117956 293921440 139827058 305739598 600420365 832448284 614225536 406895393 769188337 749898851 803201913 173072429 970074370 998491086 431888425 982824245 788144957 741125015 361046173 978524317 378705027 154704010 1050898645 304938045 950301220 99097157 1006024466 454569250 857168092 670524715 288233487 351513079 415819826 972208752 344870861 635143806 79286927 341800317 599884123 999719913 394236723 971702459 987781778 151322338 754752141 524460891 489319073 970781034 571118662 619316638 873617285 765635252 1027522861 162214844 924146065 773481422 72231466 1030634036 653869009 847846729 207211832 341478123 1047835012 209773173 355892100 404610854 83508342 709364955 905608203 670673209 292364337 863778132 3931017 694002326 413158063 863402567 312376434 747530611 208365939 301844504 416370816 922088105 845162973 950285926 931003436 994184752 11554687 366917495 801046051 664005546 739040528 208442480 475467991 452141117 596431792 94316758 854644713 456235773 329342348 829808095 937351705 629031181 783053652 582364102 764173514 958379567 1052687724 776613177 304835512 662388132 980967322 1029812611 350647852 104888826 992317206 1023633855 444704275 432249367 846580751 61502392 908067475 340143962 599892763 886788972 124240104 130883532 518444329 861302818 547021621 125261464 730481930 865228081 755449814 1038312143 488723514 550842807 1037659617 391747344 492787591 885402423 593516243 917055935 426186728 417301551 153885934 271311646 429036436 836192992 204673228 343919495 793447737 796159072 230871715 448430067 413782447 556643568 516417117 503781300 809651201 453162016 307381101 389993769 519577189 408428706 69359791 443627232 512081999 821328324 1025524341 369339461 727970315 424955890 199603607 769720418 303120006 131221337 620757533 567960116 507829953 656527198 444026223 836657270 717100082 780223454 664960377 874011174 520001567 821706533 163740814 640412063 774780933 108052750 865739711 436003889 90382121 449004315 736474408 405967921 969889600 532190373 786253202 582686256 316358978 995941661 415049497 63592197 423635126 862941531 334880002 949406659 276889063 473771871 183950768 48648956 301058307 954776423 930526016 1006333130 64988065 614203387 642656432 819338980 101431804 86347550 61583215 1063210367 997847013 267310517 606854982 152221124 511972983 237155659 535687421 1035465099 723824941 481978235 510784753 77300771 275585071 561813548 745601676 325924120 132169163 854798175 922525768 917114290 382588762 113605392 50937896 992521184 825278521 563738143 972256909 412252317 857369481 877065686 717480587 356609279 401186770 23621811 1048106233 706669558 68387467 3426274 819039200 989317128 1048903185 1036448911 303302959 137118404 366545581 1029994193 897174236 92914427 436210908 61121034 915543616 358797611 439958590 454377043 862035601 562366014 820154799 614528418 213839323 360700460 240620885 312848074 948048550 201679142 447567208 487879993 734901537 796504585 999027616 317574353 1030931484 256868067 913082917 213960484 924671838 26092102 343207797 746019378 509179327 530105755 678285077 145407971 466323424 312644714 30316166 61289747 194095294 622935092 834716054 720937103 491367068 1016099632 1050868125 666202380 429177660 1014798780 121339706 602721454 39185107 1069780319 1019129998 394901698 338986359 288129350 1025735017 366304974 22554705 148319124 509234902 276803192 642794717 159579556 505750986 418871162 147455710 912367309 748901576 546399046 145724799 427126556 580452341 725781765 907135932 209251201 71502454 473700470 925219266 193231233 977722196 884552767 967814727 245078833 427601624 690985220 247357406 314990205 640419206 873381832 547410556 155426009 553621460 895647758 800004355 216627652 374355214 353004091 136230532 357644835 827362751 222430440 725473238 192808140 122697134 1006879497 573312329 96992247 354972146 953639998 592666005 997496102 314418409 396960315 144626386 299342812 876438367 111085934 98558563 73917760 570713988 988560162 420906916 681275296 111200556 43898312 89009978 892232029 10526638 313147245 741290246 92855246 947064173 285418702 792027091 405481935 144572990 278042960 199993609 684842404 1004557985 366021471 820627745 337145517 36313431 699683318 1067498011 589705556 23045542 697892074 619855834 12188788 36019487 159346862 522532239 653868034 374709785 724946121 507086347 730770542 1008539914 1004171327 598992562 884124903 764999015 354923249 38322385 457494240 285315704 1048486955 275483155 298726783 881339804 310616689 822935930 722703668 86331753 648386848 381946739 633859311 763344269 36303958 372487000 795582175 466763848 722433486 347184985 236300430 1006575547 328301341 120471204 482972176 385106190 627345924 167905413 1009139137 474534298 843024704 642602419 715367085 65438752 214912659 267783111 225680469 182800891 214404065 864180321 813291999 110157397 719601592 18420885 537426422 931489630 451294726 442501925 1039234980 709566748 133474907 180921280 947297405 638136685 261343496 328251141 756170764 792131290 344864477 666488758 198054053 166280970 957847018 725295799 893708346 1001393245 1070328855 83230386 820448804 937469465 853284890 805708231 473444074 316408380 717154798 639836999 250084551 69370276 708489041 972166701 491553784 257996116 806458938 253572801 554802758 888448669 717486720 1012029533 398288181 785916245 1046932461 529232675 681692658 53437318 959764693 772814384 561195047 539626384 335644870 188032974 635967535 751877362 840646688 947230045 999708881 464647181 381706778 214053811 321166311 701379475 568494413 179447110 1072031541 793033604 1060808081 830228013 404089338 966992238 513043317 763565930 249228622 164820507 1014351285 241830554 481921547 5597215 258065202 516435809 773560549 498919595 656243120 521820127 550467909 1044010788 1021673482 620653567 677201852 114292050 729412665 6927065 417921155 130682170 612817923 814954900 22119253 433246977 838736147 489337705 685970366 596796052 174175333 462602331 963483440 67993262 776090140 877572056 102849650 985325222 236743718 117209072 415624205 334026672 339936098 861030075 844576661 1046955763 135438489 162705866 328309046 790994039 246431040 747354748 316112760 713027509 963856703 339189780 823241933 866453066 507448346 247759348 535276862 947517766 472104933 655637041 269525521 864931948 1032694309 977296425 888241177 1061039840 852197374 267536823 941879822 679108862 133049900 476196888 6644577 51755323 620430238 216826853 290595969 382582718 293223924 96619515 181110515 1071960171 198981376 299630388 38118103 560367445 822616986 785341586 70615993 319358788 1057767383 76060874 221174738 258506874 424390231 1018235828 83127543 3421010 998393242 591656491 280416777 306285865 503283367 716976121 1056243810 215936271 801757849 445762984 585381957 22551595 706285020 835395177 978130123 17253310 773071865 479614494 209127626 853615297 870637066 490668740 361159313 156607952 905214476 465630281 497676248 803319125 492937391 847909011 1022572232 1040374376 945830078 938783525 308000029 956970688 906703000 120194295 1004004696 789379376 880880496 412425924 896524441 561590955 967639857 267598623 350868576 524686994 1073707770 1059724313 159396548 190537438 314371985 171168822 648909788 442271979 441786125 538318877 196442850 119090139 183743736 483035393 540384789 1020657454 798413163 674487886 773504983 463881331 393877022 399153606 118432480 330308470 394195944 112382198 786614932 50886768 442810198 712424474 1037231494 441629966 42344145 276547959 881295226 908094488 571099481 550515106 693281986 1003096725 895055067 77336741 1055857103 901411206 491687729 1038064646 899805040 739670912 397280545 609840077 954278991 1030340275 654519395 399445888 283522633 837630963 306780865 1062232091 237101718 315806554 116949822 353972766 241784108 1008230752 996605873 920711496 834344732 536077190 125909134 739824610 994453390 441150877 596490013 289433502 253591164 1045039210 57576496 481521354 348943561 455059699 91318674 767755223 140034581 285518136 225089116 378298399 693831121 169635764 349016052 537600279 44031463 598938822 799843712 665729584 63257662 3165636 706034444 640179379 276314708 542572472 493982355 19871232 995903829 991136403 109873454 943125932 405487362 221882452 746140539 597368771 131427315 395008745 513424973 429567633 396990330 901211243 421916061 470345415 290412906 732607096 422576894 676509605 685272799 172107829 531503243 806395078 795878813 226046076 660414599 1026244749 350987419 1051761059 1012991906 488474532 666121475 96997532 213688312 804486941 952285943 384126275 932295492 99056780 857263490 649342938 780064503 176087227 251403008 865669840 39755096 20613880 553773482 406470048 158351748 712924164 262298909 340807221 827751026 688336024 196245175 782875250 434044601 1033774817 792981272 160949180 14818114 197810616 440636473 200801636 529457807 925205912 619098313 965585201 196663975 597163172 372472265 795455002 199905448 993412397 1027752167 230730485 421000267 38820085 442377185 901859948 173259105 20372812 143226372 54352021 243618927 227078293 920778191 923311075 618203225 217693307 209931124 362392637 54047679 336971865 486306310 96657106 135853452 659664471 961665088 193603295 478104381 203265868 203049770 464344857 208803791 883127094 847844789 311601258 558703845 678076065 416471442 883676103 53576663 527587871 338225948 1048061290 425928530 258689819 191344182 223969187 398556702 767317915 970811639 876745759 993515737 425785508 921429992 255069411 812787480 311224503 340041991 546318070 812025152 235441400 505590293 492999422 758963009 665936720 56001470 1041318853 837908527 162884268 991916237 731242532 626463991 1009240792 459255134 213772681 932367514 885138820 508643542 785214111 25354333 1060506095 278925435 325155152 945530483 141932059 172916656 251356875 30366946 425979932 619695036 525315718 839594820 412324203 289970411 177956209 137961061 34821322 496054919 277972987 105475633 720381439 871014550 182487506 396616077 784538527 398383448 984286279 975532919 433892770 220541808 153546871 508849523 769038986 837969447 137800259 523692508 623076937 107207086 588364685 172021222 636569292 263758290 745932313 723934269 1073316483 393206889 818324396 383182235 470143671 920756284 1040792512 150344202 143161810 794181292 26027154 721396311 212255463 746561759 203599902 25657090 764661040 889341058 916729989 581410381 89092878 1037627808 518481322 25731456 403155681 556959149 349427134 618161906 852671667 647222909 868249552 1023605320 488990191 156359348 961072721 869559505 263293431 757031621 453029697 628120826 302384111 766127242 121599323 669081999 620219442 999293778 236055058 457254412 22975337 1046518397 379408155 385177692 155840825 409111876 112330068 134987251 159496263 44532169 505282597 30621787 278961740 950487717 79293087 832969371 935047556 691407326 936092542 893468399 274222768 420906108 323178508 37357474 773588221 160854147 137562925 431900686 561700439 1044227930 547869967 204118499 503044863 788832660 359459531 105673736 53025937 367567022 148986902 882562015 442298267 27774977 259115246 950845987 715074238 340869413 1063432276 864726984 527799271 906678479 67929669 992787204 262283411 924863389 983795737 19926789 478646678 174233976 358973713 677193364 220622073 44135503 177684399 232434555 215883336 548284315 888362069 518177617 3266750 680024363 639311963 478053629 685044093 1069471334 560727902 920504072 963999414 638446182 11359809 826022041 390181755 1026582583 908020794 158647886 383143324 122125591 805786365 747969482 317019823 983201672 157888422 2527252 747666143 107276055 849602713 844645943 975084908 643975578 646825413 745558055 511285326 1061879034 675502943 766020943 975030415 184930605 504791936 818762253 485442403 23714582 280325054 1065371319 242049850 1055993230 666666364 63114831 621455067 987654937 297380717 655741552 665692687 246197307 321346242 374414354 186867916 766262719 644124221 160482101 107881920 616079583 842777335 224368296 632315855 242779216 321715407 755537502 197180168 612872094 601205609 919738610 477927049 441005221 884441821 355463710 419132837 641381535 1049077668 127402097 191062755 912826581 847182880 861126585 519421885 949497041 148400555 335580780 725861691 443021669 656273988 40462018 1018325846 667181352 1073317280 321865593 73419583 314832985 170489717 249979905 636912612 113041958 214334222 350073589 414773635 644414988 852449155 582645235 1028441065 122423552 7788618 766502792 631945102 32055188 863588632 848314688 1037980546 380150054 867397279 191105153 512121328 1055819341 487746575 861678117 63199971 1037638389 734571109 450480869 532459822 115893396 147676748 8854670 751642395 771708913 534535703 983631941 673658800 680447199 630492438 479503733 177491740 411076345 113095484 1059455182 831298704 70250748 1019026357 124720498 229387939 861121958 63616316 721310485 1040908878 98942013 109969876 593018087 403167744 352723512 445423042 421377092 584480594 98972715 1071844775 771427052 735695109 272495099 972224010 491333297 376665808 573267574 714956581 817114230 689003988 451253143 799741478 532340057 576478095 470556049 673739246 457409763 353143264 583159534 906290501 286178309 57705043 98037024 677989056 674338381 45405408 414801550 18417916 243078994 117520640 545654450 701884227 397761656 620980048 340131334 1005003354 157171563 797556745 843616138 63676725 870639825 831633112 313925282 213668823 527582847 39830712 1020317956 55658388 65319853 210588973 818259948 768116423 556754338 229732315 854645402 187341097 645918038 815609292 166097996 924169933 838198035 37409828 612827735 1032540747 191598914 293139428 24403247 801622810 793541476 224835926 252692941 345030684 1038216592 535296055 480938637 154633635 612500319 378075334 548831290 36942386 392649739 167137682 807993749 628289061 1062903923 242642089 1025771233 249051880 326276493 505060884 704799457 779923001 677053330 919930316 778874939 1005684550 138593433 592085920 169656158 654123393 344840942 832558406 367232248 918786798 745358063 352778358 705248848 346479544 481889767 720515335 603023474 437684157 571223850 1068771756 551691406 523279494 967965213 204495905 478099850 152965060 550255270 1025251166 458806104 999726497 395764893 887131320 674904537 817770289 114728858 867643618 116687680 227115597 193882833 538682731 993383462 831744309 547577347 998575283 621430532 793695056 658697157 179949560 450565653 522218154 657336485 508823867 809526260 1016546828 196737548 1030770253 180107935 324974475 547385411 794214410 616262202 578168912 420113187 992093033 480038280 967956582 478056952 890889217 614717948 789815143 368942462 880114658 1068542945 1072943852 108223234 520763156 1066840086 474542807 380586688 913860751 272148860 161780133 213506201 54781739 953174037 498031028 912765788 639936038 358339944 699114032 167856665 717617909 989486844 343452218 137975132 273526733 704273792 563597697 12291014 611939255 576047661 737124760 174506908 585475597 397326827 673975271 966493057 664644454 865057598 445825923 34885871 667642191 202907433 927961417 979970524 931594816 704259912 613121069 820989177 143977375 635499279 706975764 380283414 193373621 912470637 406652711 776233552 545863810 264604946 467284912 591920676 839661162 153604554 710344431 410188575 199078210 240104602 694806028 168219990 284097420 240134148 198572377 182691464 189193111 107637737 809655119 168842592 610297718 165781069 258045998 575444913 855431561 901951738 472715644 872407879 289916722 783415199 988494208 750579549 181104315 949925544 880506842 281555167 188932736 638070208 528393445 256501265 299890745 45830437 887595648 1011731898 124385927 959728784 501496036 458526515 1002579871 4726541 811344798 639512054 283790961 418461849 305651225 367009916 412023541 17436318 4095754 958940706 181192987 360109437 1043428656 771227066 828762505 694858304 220657436 638438491 342216232 124352979 7071761 180010718 89306848 97077432 818544248 856991648 803731030 128284535 622862764 6585590 898573263 410566742 869960667 849027793 918944583 272278568 314881899 956055490 747164620 1007523058 159820567 888899503 883821711 201302088 678711065 699654027 653876748 676837660 750484795 596916767 951775400 1066181806 29464825 169328594 606771144 444894699 263817358 545804681 236364043 283340121 125243688 201648521 787012645 32599192 686378745 366787710 1063156528 496201978 313796829 1020529308 451674465 782147423 669600753 612381361 125228961 1051813875 710034230 244451636 484505654 958142242 78030090 687221349 515018181 800779992 931045606 218582185 550646347 212031164 532477262 113256341 618076797 693531298 962136591 689607432 477650513 586263910 626349763 684196132 812384776 1004043427 990480718 150331522 732781731 824442065 9732163 908424395 266285813 244879547 164578058 601832711 364436139 578666896 1055473960 524071673 700233298 686254953 1017939429 591743041 126298028 1034314289 1035464000 862434441 638471022 346356311 208818768 575544240 98670967 170792528 713574001 22638868 53510268 916659621 847036733 776586553 711135421 516122823 347876499 576414476 703849129 811857940 1012001904 248621777 464137350 1010819079 115223297 1062942085 1065815326 642915456 120356163 875749057 817252239 665890894 683188573 299626768 930268356 482803815 306186392 169703499 54718663 1009511994 884335723 310109911 77981474 563082576 890064417 613865720 270321513 48389123 470719572 538322306 779301231 515093217 409099617 501256883 671561452 575800964 523060876 472068531 800042394 688582432 1044830775 14254343 291519704 37002528 126033623 838594100 905960684 602664762 108796718 886837977 275067199 715573209 600145986 634404790 606386316 581144837 515280644 703299395 435376025 644825976 237008563 126695586 559435825 709627448 565299629 136359743 473737501 71498518 139380788 610943272 498169142 487390313 394149500 852134495 723921854 543104325 892145032 526359934 274232764 965367544 21550164 1045451363 920894673 71353706 955190671 334253200 217280245 719334979 513868774 878703472 107235722 1051174580 223521497 989463144 328458867 414682707 1016336242 117747383 921508142 805790076 465623197 235318915 532702226 863477213 262554594 16511773 21300032 120857364 289703161 52301436 805482512 545180473 624151252 100854348 864770041 883598766 1021757210 417030742 334308302 716711439 244499234 79253313 293342560 833088635 593748637 45852621 562658345 884879675 15779638 950797472 93543254 918192021 839790304 341343190 272207470 210667416 670688690 742798656 338506714 244472782 19763232 773211192 32434461 580332680 248608710 1001078839 232078162 167182087 855811830 650158145 105242353 33473169 659487515 139735830 160203558 457771802 724800505 824208351 359317931 782465272 583428195 524294110 614233519 642517632 593936601 513051569 585318555 688666219 882030176 480345625 213301200 424456685 255576943 70294122 493776156 967043554 638096862 1028024955 787563244 631436414 82159634 49098898 386729294 167941252 128233387 436743551 240218365 304979326 661050156 267992330 963777931 236413832 361910199 315938012 151765430 613534720 10943965 935668626 829426154 40961993 599418479 234498725 1004232006 816894889 183150896 484478773 390092854 339251089 2382938 658594012 934936955 670563244 842503031 852512880 585238267 721430280 50311516 523718841 766324536 934437535 954044129 493695670 482303133 472822609 639121269 437993951 712474600 757576093 362586459 947379986 374036101 645219913 414282076 363690225 670517969 657014349 74168805 408780003 212082395 387570090 790900633 716984279 210947915 933231188 262628861 13617980 1028858845 1061433494 852885346 858662967 995048572 768854421 944025544 485596700 406754547 885694521 12761188 1046584348 998550982 452694789 854285803 444734042 856623181 844346171 309646978 131310044 625804818 802862755 253242083 136249680 68578002 555005332 48399957 1069105994 1039659046 729283752 642339232 559824382 382138968 420363477 295784321 177068051 946865348 409149263 69001736 131649926 274904090 761385958 138666286 271266799 259132972 374315549 28764401 877156775 862374450 555181966 422893789 82459816 196411969 670747808 29594181 175808082 629114159 483762535 1009195090 50113385 309163187 756946332 354815176 737698318 946129631 193239658 968396753 761741090 1044518601 682843901 536984271 44273202 606940799 863176297 75868049 871117281 743585821 201371817 753369241 459025504 705071573 810545337 757858321 834043403 593772177 601684751 106178220 777603835 460932560 190556094 871460091 441645636 796656754 88385796 844524350 402159344 588827438 1058751490 685530718 389436012 684464567 396809973 87043670 424406838 118923910 227752002 308617088 910262018 66585017 504568653 117049490 662776567 1065102932 833109407 531012952 640029299 308505945 436918530 158576426 1060604819 449210961 304751285 52483319 192920889 249594290 768535366 394931326 106391811 712243182 817046571 257830518 598391685 999019866 912711851 605679400 408193563 162956332 663307799 722136514 148551711 284868757 633751095 843237751 466311143 340727810 837858371 883784271 390385989 716909819 679441238 381707215 998944351 770936051 376839070 1005234741 204940181 216048959 655990026 372324162 442052834 120626102 558322153 140439230 770288847 117033402 1589472 476754772 369531530 348362875 74517848 53152811 1028055976 7460868 355498640 135013787 443905947 834261745 156105506 696344832 981437622 674409730 783015479 853212563 367499347 498165553 657991888 1063984693 435371704 42297453 1000582218 760314946 735919124 110547525 149748188 209938741 504948781 144522779 794974480 456399424 198863228 96665579 167836848 510452830 970511653 204251978 530264232 593425772 918738162 431503344 988777084 737877088 133154837 191500779 38657242 38924672 1025214681 727872100 896490843 99947920 169601808 371078078 1058408439 709822189 472535599 334629932 764102553 24155280 1049085503 548939966 755032331 102232847 96473345 564773351 769558386 196396606 706535324 544171471 262565433 685451944 702895627 9751484 466042826 1071316428 202805634 337698747 773315130 349016895 677648334 795487197 85398030 414896696 391022828 795742533 181185300 920499711 1012540663 566164796 609544034 691240445 42606977 801733315 715054873 687232079 35080888 331994264 935204576 1010676344 1034068796 489631473 299198381 297103811 526609523 294010782 929833626 104141446 776843807 948604211 254239120 92586137 727250650 7655784 257902386 1035722099 511465796 107168108 374641094 33675609 858685378 682990080 589467469 972625975 356587207 1029720166 73323816 810462127 484494374 548619647 502489225 419334803 636127921 148809680 140596905 716710208 814588283 8818503 848982140 876244781 331736890 968533656 296720646 380544629 806566688 562761957 548471748 213959477 218319259 669844483 712213944 824573605 189766170 248457503 922521514 787825991 274067664 1050536841 326560148 799177593 597885128 301812538 157879390 948325808 752493280 851835754 523881342 850589317 710590632 404813451 198787852 10097982 381162801 794264620 117555778 37271509 733417183 813735980 209692103 546835072 461362333 624001188 763425830 58910877 2911805 483704554 50067285 78106071 504254437 156891039 260432196 132479646 340993210 975634022 463590256 418991073 1014040122 602531392 153971232 812521123 217020042 725782256 389108664 445872772 232171380 306632309 804546375 842132469 304974820 355697955 5834475 146199040 559086735 248604691 908444751 709256000 486473511 672293904 1025047726 682067707 843107945 351078514 730962630 161826415 919949903 975023512 106476028 419804972 51355843 496435081 410982927 132133639 843967966 728904331 23585586 1027388597 238932725 435328768 196475222 35135614 762189886 389721319 648219505 953186041 871866758 216030284 399317149 874668241 365272999 216481400 580850802 108807910 422234602 284034856 3724706 445614637 796093979 671665752 743759536 507244771 39098575 595166278 733243649 62673117 70272397 490061733 238678017 792777532 280966497 968166105 286036818 348454269 604991297 496133706 536825467 209360746 12888996 785666756 117422337 502714050 212592508 858846059 645191778 394474929 153243507 128244651 491110142 413482481 603449338 75743526 494363542 112419398 220183916 774180547 299813982 740337782 930836988 92678332 236630559 1010793790 475353511 92253098 265219711 749634263 95621302 356577938 988887209 651419384 217715057 290846448 1068724108 746859997 747288653 741777272 827119198 684922932 587772009 134622042 87766203 865987817 1012390222 86624565 1028601581 609898655 16731882 802178457 722824849 656995052 853310423 387790895 757656277 400955925 410482237 738578537 230374455 912439253 467767502 905149503 528341728 187288721 645132768 51821389 916188040 260895352 200600171 407530286 815908261 407221856 489279583 439596828 509638390 1018167639 48636420 719583923 161874924 931349410 551194678 442105020 608853381 732596617 22467074 1066685553 717504329 636351730 216112572 343731489 349890287 669772232 740660695 427081352 312770140 1005859550 1064230474 831769173 784576405 125567038 553968088 324037302 81486 183017433 648488475 375041566 354753249 574741940 438636244 15231460 1050729301 433209073 628229059 284593392 317140111 47910470 665043063 1070268784 734937067 79363308 60726176 976279292 903959832 48424719 737762700 175556395 717271456 836159345 725277208 777668316 937269721 871917711 543519592 866887014 336927352 713895432 689333008 433479484 855383956 593315831 387396269 789288458 361953576 471167087 449658916 222758595 867034523 565824376 697056136 916807974 34629583 1023099941 162512192 636009703 922440103 195522382 432405884 252519252 840621460 771951681 829986473 340967153 779910126 214455358 61149109 404684075 103398033 304366684 997343854 718646254 841419604 603710029 901834674 826643495 95241061 966094083 965242216 199462203 1011580997 1043102750 888220100 660942424 987032963 191503259 118778757 9907980 464829371 925702177 974143926 36368340 837261513 653220396 526333485 1031047449 258050045 377139336 358931306 947982281 1060097149 390612240 96822208 57336471 40180242 57973686 518972419 957012342 915609884 334679625 279713022 659223069 487675936 702038010 855254418 859373433 458478640 1055774464 863951417 522005891 651468540 583708838 1004252961 405833488 682717597 171498300 841316191 313067993 918495207 390872078 734653110 430889808 545794773 462616699 688161778 877616145 878262589 926684546 1030033155 214302135 427190392 814866090 852659188 215827347 530587778 256141504 460615924 474692700 220353227 620708882 672171095 17909701 250056413 591653501 678342228 148853491 676912274 917174719 321333455 218212065 682454517 526661887 254881235 982609859 740641578 155588925 551296342 838190334 968608162 1030310919 821757922 919801271 788009667 155498066 21761162 166053871 752984852 883754043 934588516 607692026 283996715 330851692 941313662 1069151661 812941948 873620932 305421860 221585559 91424143 109683405 662428684 1001785318 182043515 377266488 919933386 712596600 816151690 257852894 195136340 360044130 88701624 36108225 400650090 543204617 23911981 431909425 43304697 945961687 768431871 669919360 770829965 706511683 279979197 647210086 308886770 170178714 386041934 909041176 58099425 722572199 211936712 524158581 820354297 448840438 546306753 981323686 786433889 56145836 355149337 478380531 411315753 527753063 548308085 577817922 727800981 756734895 132109812 886269559 152308874 80544952 876003981 911935779 291613434 229211346 737264986 148056179 977333536 571278568 408113043 792663389 22329730 697224465 1010777752 955808096 984492289 142938623 675258773 942313997 700617335 438254145 379564324 332628355 221939463 981877008 668015789 290038146 937576077 388958591 880253370 235162841 715377988 497394292 954222585 48565519 205718048 47820855 423903359 362971398 681118421 417452551 760477755 441060988 1023604354 767187245 48183520 488588675 270607583 187377181 636470117 994973159 627333153 604706578 97625973 787215137 549636998 667481039 15185270 60573914 1055102381 317150726 1020802195 887234081 841987315 452480137 549190247 654311720 288190098 655652511 696702432 454279667 20265876 670713277 940534791 518664626 763592333 720287903 867359357 209610992 987120129 295653245 68013515 859014975 107993393 595875337 823311133 306729634 202923700 244279178 908914717 229653110 438651109 639350154 862653928 243342485 344960298 604243994 767949458 88200229 1038996077 101383341 367440447 702320344 675018803 381964264 943427806 318550039 837165434 541043939 32848786 319953755 849813368 802379689 108095961 359922781 207106488 919982125 92435288 981610786 699181002 850705508 407597827 235011877 896373953 881475417 905299484 189660036 789495117 923633917 583310833 279875069 39796231 275207299 195965118 118829943 180840450 158758561 337406390 374694265 760133163 339481475 756131007 867119921 720809096 514080549 121933377 840687628 587166605 931903235 173552051 255788645 294310204 20848840 371010902 853802553 657919053 594270450 873042527 238973806 679451344 963269029 373567110 875324084 379855659 1054858899 178076378 423945608 718495319 139175316 48569651 564343122 424970964 427195212 462914493 649439165 171771112 990109771 370533612 335360802 601504220 364608094 77832499 1054364918 987477182 217114412 199095409 761531612 809334644 310232923 206604669 599268189 957775264 696726180 903627335 110460354 297848386 267881110 388442303 750640125 131606662 852825142 514903741 392583972 543253582 35101829 382152637 801177695 1049751482 648481036 391218962 366242621 100301402 621462954 292975476 472322432 480361794 597103595 784050321 1047345988 473973981 900212824 58910312 555907640 414294598 701486801 399111035 106003815 84784834 659434903 77146776 688842399 322720465 362870717 44266670 1031197984 919202388 663552625 181966786 512267031 687254041 534989109 532171757 626028666 897015800 994800639 973101386 544630439 117348261 957512744 669548435 332681326 53432718 287814510 698037730 648923651 917851873 891028551 210578679 766549211 456888433 266298478 891422832 112783182 960000822 234038404 895856946 850388971 136601433 838017475 382851326 80259789 157325383 525770052 983132251 918374248 995224695 328135770 113468898 167849261 176985033 335993274 983865620 731636289 108477781 921626692 96199435 30408638 372693672 990307899 1005991547 7381517 468979499 844837890 588237891 785775843 989103350 67322118 467255837 103091347 456742604 188254463 995288699 324768028 978309488 651168819 989484684 433717681 734331493 512434356 604570363 243921985 940200160 980365670 119011673 366071323 159745465 944483822 425704105 366842236 991333067 358919291 413624352 444148800 1017518440 497135007 817811578 3030618 903892984 146305746 875393683 771015725 650776038 951776883 745677922 1008226351 61713667 629366999 53996513 924693910 615394528 597448461 81358049 721581372 711958679 91277258 793424390 428085433 1063559843 502214359 742405034 621055623 913301540 293225082 903100365 1040957559 831145360 121949813 962197130 719983344 243566531 1037768324 5759978 224638933 690734323 510515178 668095017 781447916 22516894 911224870 360144436 517726378 11243628 647198650 914447790 470796065 483575498 820798928 192475997 996772827 730650140 959396834 701214338 814209131 429584678 673774423 76425586 156737558 81986724 429861223 983859159 10698067 865733126 857026892 421203517 261129289 1053128378 639117602 1061250040 796673393 1052405161 938809742 560023618 425567135 111206514 92077242 360294672 110186799 440071396 465364886 958196668 838568447 170166594 735391211 1028591894 811663194 731182484 302469087 510887733 512223486 44822409 575217516 382970326 423929241 672069052 342105800 260699280 259317323 1000655534 508603315 445353144 300022647 419815914 499134646 912105457 60009055 281873651 888181597 290124949 47148610 519056280 449548743 778431155 702249896 110677923 199571517 560490293 937569148 1061509891 85819125 848813667 794118755 841428653 824699197 192018023 911830284 304698225 942441545 917646651 49331155 633152177 512861431 130942543 730945207 672800293 331052579 955683664 147336810 846128292 544452756 299031768 369364838 143796973 263264157 743374862 80595394 556307097 761770840 670054876 847436568 854485406 98779388 30042403 319560084 361160421 1003794616 15161997 560864926 673594020 315639449 951877386 797471748 757872459 928499840 899595119 541390089 233670739 418715799 773606604 757691297 561852005 633268914 140894931 820046266 1009256147 863767563 240743697 654174220 254513359 609819233 1005553285 599659772 52443134 139527735 685196084 630770211 657312220 624426480 305521617 990644156 233476943 596828499 552293720 1070994355 336212823 614677377 235562207 1060277358 764094497 680815391 94727515 312549935 388892379 118410290 105453249 577606502 624079032 589441521 445500246 182820958 954367477 486533283 960232011 1026351858 455686070 694511386 679217319 920921274 253279861 985497831 446711714 1072805423 232716499 21146851 707704646 247312003 391495032 240791536 35334357 550478089 551217858 745796420 430777480 636374373 285989741 751556358 713919011 872388392 698320270 968362427 19312263 79381542 58932441 743870906 957804296 407544051 644902629 184188112 16540072 832319623 649627787 304298867 49787758 2329108 981725163 1049374184 655618106 875081745 206768142 969416630 323118080 421773725 10511388 156371213 1016548834 206125409 1022062426 170984925 850273638 307829492 152572003 1046682193 521903935 280231102 636291363 27040436 129665586 1049103133 311279467 544132506 820415437 116041430 420595670 980719223 47399052 976821558 477017860 865086645 551400945 448360472 699532753 1003922655 75636238 365733983 1004344212 228292044 109871159 301873417 825305539 401613605 1037833118 484842299 97768886 820424838 1056549150 232394213 536142975 447466376 162256390 334829283 511036222 742016646 355664911 402715666 723532711 447080819 231961584 411103575 457505463 13141454 883529032 246547689 629894299 287010855 556821606 762006153 751488921 307890030 975933228 123707286 767995047 281264931 87685874 826025428 439301541 722784453 780308340 244269894 93351792 161668987 83148227 464580768 619312373 231340896 438214841 125397920 749439714 80199831 868026934 91869057 329274306 698255961 137098412 114994005 580314360 503970743 784561923 728700523 40125313 799876883 406499707 402684191 126625761 351584898 403304915 711502121 1037617583 231269356 35284535 431307328 196462254 943937383 936566496 594363408 838375378 824522095 49530541 1029077367 1048181582 220076696 642993849 658567309 692274297 529409724 645664199 1000931921 597991410 674235074 164708200 716332426 915770941 351921877 411649232 926707052 696592684 423920553 153646006 476504623 163178381 1012839605 749649629 959491094 900151689 239453939 1063331524 703253735 340793951 119170250 894326994 634227 217717379 156695624 1070685024 452472171 97908700 922741097 1064941955 49961542 494326997 243832386 679232240 933686251 966719841 584988010 833954630 749351713 916570847 563764588 124729877 674794853 497479622 750872187 522438657 976486356 123229675 465844203 827937294 526967421 168890172 365873100 758966209 808712635 648125593 697683999 776230693 699058774 568205902 38892740 37259373 363891066 238729339 210480657 445855450 896195458 199548448 414512805 1062100566 901220778 108468311 788731679 1023482272 668719498 940804291 38465973 859442612 221282295 465211009 213421118 306778770 801531275 496524702 469257543 707387621 869235007 714256928 814218235 437615239 123347637 760657908 970406567 962966453 300446654 973167625 735274094 65564744 841880145 843501687 650590123 359147004 493652598 362254569 892612931 798374061 161650674 274450262 393476491 832823860 270644486 218812571 669486902 554614374 53150415 377904752 257041705 439002897 104269511 490845877 747337010 63577064 498172395 678993011 702456290 874589917 186337359 1050032477 524402208 776676702 769445087 46053766 709764265 80065382 485558735 397897829 993026293 49390054 361329056 852201041 151168426 531800448 493044747 578076123 706545375 504429407 195737722 526366403 279035445 655109226 259152415 600488092 462441232 655013887 737932956 877180332 393712653 1032544586 958920367 387674027 224032916 133795853 207726885 53511551 13144960 53293809 411644900 210667573 697397772 827361303 222987288 497730997 991724668 63390938 851117352 333973349 534411191 283037261 983572385 676111178 764948212 831288142 110112776 925551572 593955054 979354941 18078473 831068299 45580168 203460006 905061216 1033415383 868604437 151424052 819180489 1073385862 6384088 43938845 306929233 409487098 953113382 622270673 625260566 132540261 57193084 427435360 519543831 423389081 603302937 655038584 770373800 550496149 258470100 748709890 997779834 302964348 208379543 871389551 383105878 664382949 713049009 667010634 112530008 598710792 116573339 1069973085 440981662 619730259 370951663 717578232 882269677 142415021 114724223 443786599 1033009211 497571982 926305773 929831781 541981434 162044598 60044732 559957990 167899812 119982178 759780584 347979432 802116637 912992273 439335089 1036583677 979519795 326951403 877334604 131678749 681853295 786004102 966632055 670856374 845180575 384578169 105042451 336386491 35666437 638704267 91278601 394994668 1007260244 872270092 320136390 988156116 228573908 680123169 464441038 699523266 552612214 178117638 888941731 925670626 701506445 920319782 326714199 178001681 746855597 523483955 874617935 709735693 485823531 520268564 639547982 1056212684 338208829 933400341 788367083 758766807 611822920 309453716 693728380 494029654 156333500 459289553 925056023 240889390 776769267 1046616751 718979016 135781081 1045269245 645639573 293188691 27614117 891302237 929391058 562680408 537239512 874030021 408822387 1039097828 610426281 742643014 358078538 408153514 350393197 479986468 632594442 589172515 620773221 181673152 597417825 87420922 647082527 252894101 484775885 1007789751 567935861 636025177 457106891 763407905 505971315 189601245 622726491 132116433 204599142 437335127 343228898 810645966 904240233 825008796 82220177 5958025 1031066471 474298142 739531136 346240872 556128402 1051887421 688490619 1063606646 418081897 246063761 328019985 971830611 787629648 995685249 201502728 827723126 198637776 744262427 931353249 616160990 1050297326 747766129 996108425 871569587 667333453 328959645 585131217 944655596 720342891 388761299 327327596 817559789 978763677 375247186 681310932 633506346 1010822999 357360062 518577594 270993520 429979582 796945057 142532777 843521745 442244129 398141628 503406796 640549208 1060950804 839068989 568574043 435592050 665286851 218214953 190808753 197278031 688982058 335758390 235765245 581265539 12303905 549231773 201188080 473740966 803770732 305991860 821416625 476863162 627926302 503919784 684780515 1001090127 290453038 785199232 725101394 88019323 757595943 1035092678 962683606 795649262 293511691 496589538 797447986 730937446 796241108 429314816 880514919 274311077 905290940 161243225 819645875 519425548 769000205 212113420 608780081 493624320 15944590 680702451 1063766884 67403915 1007889501 342628470 661378910 959641772 593527349 675264955 985917118 928479769 591714464 374739623 1035234540 267014373 663248489 1069693504 74429290 183491708 352855334 61111391 308555454 568463063 85207340 751363662 718388772 277446597 32946810 397265030 100766834 125288485 753525797 1019924264 634362410 407671660 686148175 916560756 66519274 291439781 339501400 732875161 395548634 529258195 579106834 483101626 62523342 162645949 309428487 1059534037 57014552 969880694 715781539 534438399 54991640 1001100359 243694514 110854725 795114925 978396505 1042430320 960152030 9346830 157910512 611839688 654779154 578485650 717265570 719036909 390927281 369726667 668705567 93952421 331192233 490724430 549293288 826694282 621284423 1067400629 143029434 844645653 4262133 704310404 503525007 50974756 471123171 930118821 703633258 997427209 81756617 97088595 787675430 471282961 1019122037 910046200 1054591791 139760285 848222470 110147514 970630113 134140326 415462718 970508604 1029618865 934739191 694282456 372272053 1007777041 212188039 73316787 89737037 939092548 440004959 256051914 929938298 805715735 954141373 966905161 810861530 369508763 761658997 408079603 499828397 446205986 121727390 698440704 113219957 672517215 976376153 500489653 16630601 491546452 426958453 242090491 953825565 548073916 183391559 949986232 406696259 523712690 1045717955 458593202 275598702 454310234 1010076217 813078091 792179108 211878692 967115821 342357476 832349849 477283742 889845736 665061828 344148130 75013178 831067008 40819166 308464746 414217428 864298957 989605698 899022925 1013690362 306895152 700172600 247799112 633680675 249650260 993800887 241785948 874602842 800898082 710116726 687514355 952497657 510126790 149151881 1014175928 79474984 852854667 202083565 443201584 78466424 157955648 647021364 922460047 942923502 231945673 57136182 708622148 314181672 759145906 694837301 111428225 268504376 438059968 241892753 737046220 735972370 474762131 171221220 13379482 754343482 835259017 860350763 15597428 126157955 8648422 135100459 9762256 789435040 701976962 66774669 318207873 995885433 411929859 591702099 1055224317 428452180 633010837 660144694 597632435 642826554 610699746 1071489512 954463916 21590764 55019653 881900583 694035938 477124914 734437415 157724535 805732844 452876922 98576512 729690557 33827863 690275881 927509689 114223768 480233169 988881770 874786983 320500697 118336880 515526248 886631091 100417775 902246323 302923706 819730005 707374105 511228120 572894259 197542627 244348003 459995624 828235896 688823846 947837768 467373383 220663850 571160504 92754948 938895602 179228877 238091389 700019458 695754038 886288481 158608423 362388496 965933816 550744518 716218573 235567202 241444993 617408345 935718462 973067328 206139850 800064825 186462347 989530442 133198888 786322801 604445974 399036449 585996038 872511655 379021092 100337098 697934648 346470655 680791522 267249234 708144702 7084901 380987786 979218578 512421517 566956595 127361988 833834512 838029165 298040551 668459252 1050017707 513980346 288435635 889675980 62929951 730438650 77941057 220648628 559047780 157598804 605816407 953937333 795702815 422750123 814039542 202439355 189161845 722487407 8028355 722202655 259748593 104494288 200515322 471727860 46319780 1011393023 457539113 855267673 893857036 896088675 962498653 223744017 67746074 38467165 731584849 122401874 966128755 1008659721 690611479 687006764 386631488 381423654 304647297 139994351 318615448 794865106 81154191 604150020 315635820 587041539 482662060 664200497 275439406 386939161 79376695 330405781 907321263 106478921 542791029 189201146 471158984 880590256 451667094 876257270 42311334 650882430 507001271 473005986 548573842 935469208 712149134 910883102 624949395 896352300 823425130 98200244 824437089 288341441 320708870 1007826530 319190810 526620110 26109556 896810217 259764024 76003029 885732455 806601247 672911281 291702978 915615478 377935593 30783913 726784719 1068508183 859179594 818048739 680361330 609257356 1045606959 160084897 154276426 26267281 307634922 863381566 590671903 82752473 877791149 476978428 114013354 151127138 590243556 234658704 408867728 330259759 1013266599 519196236 103372402 539590925 328945466 888580172 449235513 878478635 763515401 791032908 515365111 131493509 833654295 953910608 428768913 1029620142 185782211 524002167 443731754 839229366 560427888 765971380 92116504 203676103 574140407 206470116 481225415 584056367 198072091 184800596 221802030 964529359 927795982 208545924 780126551 701736793 469183269 868089917 743165492 731811490 425905395 875324151 1022801307 264062782 683274958 950227424 793444604 775808751 829360508 632170814 585203993 51656247 1028810528 745107772 682689528 431372689 235277040 60092488 405399311 429869161 598627305 216622205 966422847 410802638 384928641 594769672 582649266 597352194 1049632898 843997838 64765342 772643450 1036581191 759234693 380122962 323436947 815932013 504234926 657907615 935364769 121610341 569373858 411445026 829158424 410456344 972349903 26121743 744553653 667601669 251954839 504735457 338363793 666885259 148270580 891096771 85619344 488551320 405688938 406315588 84986411 508979207 150482537 633219502 1014432519 785617844 401930674 118626997 431217216 888125981 868827295 1068029770 484276781 269688741 54772713 1059574178 382773389 146071643 121749022 594801927 799563861 1022023038 319178878 167670503 135323059 628597971 895972851 534537749 521284645 373459995 896674739 225673468 717216728 658110301 671660458 91570696 1068456430 26049349 135706099 864201637 328843037 232914753 1013964050 210193735 796620113 342892678 451410271 774375725 828099839 1045856026 875576054 317504495 296691460 914007536 821542357 840006682 193830559 36232235 1028885775 503806406 970165367 1054381797 328817191 956591609 991232820 678390292 157317264 296147878 32789375 420499475 841228626 307350037 202039593 851527880 787060366 1016752218 411914183 615761618 358137412 627003158 579180840 302272424 972789329 162732676 270284449 966809670 507465904 723622596 659059668 541318859 949965187 960609848 103106845 192428648 763907492 530106729 875748294 880007242 660729213 654172951 504567092 182366953 907565392 180395589 395809121 8184837 525709756 570307974 1022072715 585643651 659917219 693588329 618563812 186434031 581101870 821437495 898681486 1066481103 1001648998 281771393 591725418 771435474 382701978 860831620 880922681 411566593 544208550 529254359 245475445 629016619 557218878 956201412 85095015 121651150 681585694 758408156 643540436 358912960 939188893 977535226 977411794 44201591 96090035 812084744 151434095 739219100 893696549 395892011 818546404 957096290 716255595 382700334 519399538 167392943 320716479 498333670 670226751 27575900 1064974822 709676677 864849762 345099635 317898720 380115984 165082213 642822461 317476201 696828430 7850363 165774327 884330541 644893289 804690542 160957709 1020515480 753238056 122614217 908684829 115377456 1064186198 228195009 757291278 407705576 87878004 411962227 982971305 582119959 62386202 816202017 713707480 465208183 473540530 199594222 456875349 981709973 614633394 632920414 68532728 322561448 906987489 732182466 189318866 416626698 299731446 916629522 981627901 208544773 938741124 753502357 994073113 47954330 125055248 802632568 507865742 446202842 769365282 563134372 961241014 373157134 234497992 508286514 543633049 806959149 421642236 973398043 636906536 771473448 13189906 446337982 600122532 562733386 766085969 467879406 487416380 1056689418 54155339 343079814 733732668 78146638 832619743 326513735 851467386 1004151159 198670147 992108134 435068156 1003420748 430698227 604779031 315680549 402896087 597374512 598749045 866924327 942552138 615815228 341613389 902032191 118034249 647138013 387946624 550504800 221400205 868837365 628613592 202980665 770374915 328352612 270060745 323103623 635466189 323102004 635590918 704995268 83365039 310617053 653075865 945224085 401165582 572144314 549986225 908877238 211199694 1073388713 5488824 81436519 868646878 919831204 1043778256 615912361 969118751 362612709 918646193 844273707 104494549 42806351 939187480 581668868 1054231325 1049477864 281451339 212918334 413841634 8705908 589011461 38362957 735078498 769591423 263072433 1048551588 963365994 302348196 1453728 888208714 903848949 937299540 440114661 138874324 153785392 1048976814 109156027 731882659 1026144029 734285326 691587349 477557719 1071717402 575131932 229482365 43760099 537901886 238041903 840031655 478536911 113650126 347477996 304858429 208408268 381530266 827786948 1011535615 921916367 93770900 619136296 122037821 512949155 385740325 486329397 206531679 1015433906 1052887252 751044084 804950748 664266817 623508158 371230586 56567210 550529958 180910994 235654614 618385704 836755704 828466529 380831101 632524360 484840344 81950372 412949268 116203950 505779938 925117214 446051409 547689659 1016239241 651907431 598753185 679828738 969239844 825301325 755397849 460658875 348022906 733880411 64552829 595868080 104717375 471603625 527841823 806816537 115377261 107288733 1030815629 948029353 601804415 1070264675 650873663 520726956 160600706 15515095 946401396 30931053 207829908 183517960 647516590 879763435 900775882 17259300 559376633 958718175 373221187 478262034 134464719 485487315 372690771 255115508 864881325 970130162 168279328 668859519 607848593 314338997 58332425 1055751664 82469505 147813427 477930473 320695680 463329712 768938025 452578166 104355026 553282199 146726891 596620213 428242764 680338400 519315655 867267246 515924641 283046335 548142487 314812066 510051480 302055403 781353120 437818892 434974120 230885196 264579867 617187626 215877461 257103433 194552479 164044966 167011594 537413285 725783237 33073418 267306286 1008180991 751499381 403102061 809178549 734322549 1020118285 363814472 81147359 850442117 604333966 759651414 724144425 205771978 748637900 843842877 739696536 256172457 628662522 591826219 922367948 1049235568 497305059 810209677 840527452 396629894 967069127 729461905 691754962 215935362 792457835 196717202 186330586 925702965 556802953 792842168 365164904 142736999 531302896 306369470 885150203 560029071 848647990 332019711 344654850 280488866 89928948 715477542 148133873 690037189 502614013 722361067 360802918 954236062 652235686 304692660 814882351 172162046 561392791 55358317 532096161 167580685 979475250 18652745 15790625 829972858 239767491 109084850 395574611 214099179 911024397 658785411 569656846 151575487 272095316 87640104 175142937 733379965 599576027 259888492 145204263 685926611 110943746 699807955 998925466 818058144 182745736 890907666 1005386613 834687038 1061214522 770320196 464660469 281497174 269338637 57706630 837551652 160441976 487137115 420778661 462336102 456963960 588357268 593443537 965411394 99755739 133407550 248374074 396897914 468960363 1037022576 687216474 361711589 464310167 1025363425 814768054 625327001 324134097 976773639 92737396 894016077 282454171 62868705 12632274 735001059 684919630 646434722 172157985 346677200 512809328 438233702 425018758 853099993 657623368 279938569 305755694 163620565 363218578 597831641 396396231 78727622 306738 1040996956 231152326 169855683 952586234 998160223 205045251 1060036048 64819154 664916797 692399726 443951392 88572086 72654300 285035834 926418172 934359455 124095196 760673745 752748134 1140038 657115741 627208395 161469916 151775113 582167427 433975520 143149342 460879611 927665164 339909777 392984921 1052833873 506783640 103460745 1019020259 642799551 414820706 363684807 476771456 397666552 645847560 1037858299 624775934 884016727 631291801 437752322 64763668 205012701 117361055 659080700 769899888 479638693 875540312 251942883 480156048 403723713 926418541 745369841 326168573 1012485602 507213097 37404520 681814297 182333024 355844963 81086320 943900043 1006139910 783660386 702984107 814432122 641804448 637070051 306339788 685690033 735406312 336841259 125188649 736187736 397507771 885980294 138244629 297807012 55286150 115783700 498515640 390147030 966666168 52154799 368199377 757492314 741566643 479420174 977110954 42689001 412429981 192930260 595830251 938247117 1040383913 158235450 421918271 240807916 510646745 37459906 571295972 336301188 1049503784 469858984 368768521 148907571 305663569 631865912 855212000 965357267 771249073 895961404 191458007 568412099 758916237 1071201317 34754462 425692500 965734515 232166212 455905337 579713820 968857262 630867574 967113583 325670571 358892976 87193053 835945611 933556648 1054846668 779794450 615061455 678730732 352366267 630624892 249685350 850464107 448500923 449303355 623682147 504583437 877998163 142794319 16171550 165071387 271942370 8479210 675976412 791216540 249768869 545117554 329372800 715041602 59240427 643315854 621554021 428518567 217719657 272070305 798268551 308091684 1028224530 461684208 99242234 321759341 337975297 777581842 360299635 891528282 266449301 497848335 271291229 546786645 974582458 885861171 679976274 1053248646 347837575 291034255 705328777 788876793 629563417 935668163 951005890 235754274 844541574 438199689 771933856 766754867 683979915 713243456 1012474742 217760666 148160158 944447771 639105801 716127928 368451877 553044825 206616516 330158616 693742002 1067629212 781370297 388604299 1028058614 283106827 532861366 586877204 129897527 361639229 263936731 158773990 85542780 475199114 910867942 811537149 981960759 470227820 470685574 235676448 331286013 765033247 8694200 681645503 398871460 321731712 924054827 400405638 221443053 156183265 747075842 454941994 64072351 178655020 368659774 328804334 656250720 332012644 794897342 209108917 454442031 648405666 855747536 493079299 223110336 1070974794 1048384007 990312617 971842334 988057493 882632876 587163406 185657086 107389953 569910064 902467344 55097795 515417605 936192489 98261945 707981948 967511479 460057428 153008912 1038013566 715577028 772130107 194627612 561780179 259437639 255750327 503230471 966035577 1033532179 317663867 287555649 950497051 488741978 890825893 700565813 184536362 551808945 973600174 106270338 38730154 100371904 724023416 821789798 691697356 521184406 969968374 244765449 1069385489 252158813 266433556 44827098 508884585 1047485217 201304200 58451266 85597061 479531285 951112719 755159452 668634533 1034566397 810234979 698605460 153166657 447758366 81855606 1008014494 453455768 392609529 315601134 217161569 715536447 743616212 876824178 555962011 782538411 980644663 1027331967 496032386 857171014 214979230 772992794 656236222 1053402136 1052927166 1003782365 116275079 946563023 50253841 111670277 159999384 827805133 1912328 494484684 654791436 368542051 175165585 541355937 508122628 831826493 18355046 1066948581 166186665 414902767 193043729 863690914 675966649 974053273 1050989821 339252183 318170318 576157181 866019691 882354796 949009109 190845207 233844627 489125187 577076489 921564295 647903588 761144172 131145666 679973631 576336743 776100422 178824318 903502880 26990083 133876298 827416147 867381918 745629251 140356700 968605726 70808244 711024798 481433911 876539777 1059804526 153751501 851500344 239597243 300140610 206363669 908176468 758308514 465607557 229977080 47879734 35389013 838367355 139985913 84661368 375896385 899717826 29395129 659998341 536440260 1061215143 234395037 876821448 538199365 381975109 1018221217 456202263 293907524 365745960 134308625 952202699 239163709 973131132 319048357 633084275 380199543 592381587 382325311 557140108 992570534 603638947 68528849 820574594 445538322 136404920 423115804 861605723 854854479 353414505 687066058 1071383499 305585898 961189153 728168725 896213974 265897779 327957263 319028207 912064142 294471004 1029305591 297080158 932387065 310572726 56952658 1009444392 709268354 120157820 123190323 715530277 725077364 440826758 461214691 163172406 460032421 811663782 88028458 111474398 160601527 689237166 352937715 274079517 844474892 811535905 433054468 1019077668 865609302 368341407 1045679713 372658575 951565117 393151233 816328181 223407914 788178610 718767437 208522396 435505346 443647147 860215142 1048039969 633294726 362067833 870547925 107543282 872736584 864382410 708428793 68058590 536830154 744638667 573277919 260170349 847009384 171479707 351185938 200550717 226468344 441359910 514578066 58643229 369283615 408278526 178313538 799156451 299700060 408449293 394309368 989498173 227322887 895285546 664767214 145700242 710779265 1789994 546157658 937034393 212245474 543475672 164343064 727714640 242648046 451337622 390615552 341134424 27345348 609163402 129963865 550319601 584902201 988010946 497075242 129929144 426455633 504537713 522185806 935352826 602929199 572073408 164126747 157207450 545426601 676446126 749621445 355022303 356016364 81059251 439561381 278054774 1044571143 590415746 135118846 988924688 657188079 914198719 342404887 379104608 226887221 563222105 701598601 422847605 276616160 213911297 332135615 526831025 203046539 555450093 1013074236 351871248 246942173 566974128 477364261 235814424 847837437 64479870 140902816 564499068 850798704 158104560 914270622 177304185 522581875 319854694 999124642 204911331 108650109 477966811 336181294 591247738 297376589 999691276 861563263 361796514 592980289 913720243 84816842 850194879 398423363 854535617 187513777 710560249 447208811 880394715 490193095 158063663 280503125 726533693 199665600 798526 1009603700 137409553 720806076 591288068 299854848 123218186 799106104 738429447 662538921 447504165 767345898 909720699 160038741 168783605 899282445 929655909 419243165 463116583 689445960 770675018 268946587 635233165 98642303 486569558 491675905 738489323 685865158 681130480 122700804 256570337 322811489 589353283 406395538 181623592 635282599 243067208 246227321 620825400 399256779 423695456 554186958 60002696 146168133 674405621 251313781 610559843 154338542 13846234 214266236 284027039 647942253 68445083 270946178 842261567 327688076 318437096 245573586 348926789 104202188 932324404 616875675 692604324 399521333 108040381 889084623 997169623 518517060 1063696432 877574376 911465278 697416452 622647064 173094464 908986249 251420176 321996085 46258367 953682590 385355873 673592806 856350707 656747567 356383873 620748734 622630346 456953349 864097439 383929916 1062583135 824306115 1041864836 564483779 997833782 4130396 924207503 565502151 629147269 436879312 759738832 75133970 692900328 740969500 156222335 345407182 721517474 191045360 878249722 130498146 1046233157 991905137 541601802 507044285 559008200 779554739 274333851 668857033 158184545 995063457 828397039 249289225 800599907 279923518 379887971 197966099 767679942 309090048 228984976 1037018191 1019335030 437874258 780314633 1020397482 968238562 1015036739 776178585 1026941342 287461558 766872167 277509653 145119388 330009047 760891452 593742344 767376493 376538424 594593785 515323429 436928745 3339680 581935341 154990313 418837043 1069747012 1051223670 639847813 723867896 917375480 126450576 519445790 508901098 695158213 567564809 413513323 171805939 1009795019 322461591 907116239 476916648 938878032 82835279 631938308 1066496825 515854125 718239709 1004284565 970454339 475893468 855137770 922168787 650317053 992353315 914208264 950995038 652226309 294885492 738188642 450797613 228867846 50340423 501755262 779020782 535455148 989191536 278729468 1060372657 186815666 937881488 65497941 264348240 756125308 402265964 310177998 792636980 930181801 6861306 390227605 122207323 950624683 369383728 291919561 640426701 104624018 993629948 970146783 674909993 192747645 834658054 458011996 229943708 682218183 945741418 519886344 431881527 477779898 889041305 471318393 531261068 158434405 857797623 162592876 745920623 164727935 380649468 530721411 792162448 784645088 556207026 941770069 178519567 163344177 496900704 371900519 476144066 295607333 790636601 452853367 672046641 33831954 291279596 450594727 808193850 591506485 411687954 1072876911 51524041 104075776 540309730 927882857 294984204 544364326 607168581 362994480 372469252 255096275 71661740 277345320 325776224 120699 97450352 295444776 775422061 683207035 736661863 634850860 474541592 471512431 578915673 68900579 144218124 70358858 625586959 471870632 644924038 575582929 419873317 508975536 65167587 278230868 872521477 462753238 129806948 194023906 976114194 119343251 509971132 916353283 543345578 764960794 477762162 608175375 277985557 487340442 96508918 934871695 665529780 370653648 690967130 268469790 873125357 318701711 217319581 846946905 519823191 928127671 997939971 704519196 1047781149 790010955 442398651 705356385 181179719 394000219 897394457 41035691 44255702 315830088 909307131 486042391 645303896 579384983 177457836 817400281 1067929339 100171105 375470936 754869816 633914105 41531400 403260038 1017999360 821546263 533555746 469950678 861414649 142312362 1005746838 824474378 919502875 794778891 715446357 968066513 965505715 613082465 889564019 728720587 665887560 109382916 481340335 787850403 902706532 582592689 555025707 149389061 220355182 58515867 229023813 150733148 549994907 984173572 791163488 465509944 190762852 683406910 944472402 531302253 178763540 356972362 1049358639 1050926507 590005718 131880416 380334783 87727014 629131788 621646811 422218184 90818126 476797977 731012605 474137690 782711320 719128131 216502573 413501221 1062271607 548562466 110649460 591225860 853184582 515549631 985052205 825121246 1025175450 256529155 223503362 1048970438 1043757458 927286412 910580395 549534539 488169518 343044714 874916124 458321441 651884496 943896470 653450150 1045507635 232375290 924777404 625034918 290791019 30792720 504360032 927401408 358170498 1064072253 1049910855 597949351 809908246 308517311 538862611 983471570 678977763 124998435 907472060 724837521 758112021 475086499 715867 172945628 360393458 332398848 250162472 463356180 461508722 570801367 514312288 122080304 320210095 551297319 565083512 192215087 248936574 837531619 591515220 809120720 857549742 931411773 568769514 795160187 518146622 493850043 689466025 817012671 1022260501 759717584 49701558 938660078 510336493 275882574 435322420 1000445163 436588244 243548842 706810775 997746561 727190988 245824997 1049370420 701342922 876224082 499340325 97300175 142575421 776467911 1036839588 192924329 440498236 737161368 96904382 936896773 508883927 76557159 619889371 809138283 422182187 236024003 248379920 347589798 411562909 256421441 571528131 811467366 923753181 289047614 1010554764 776713350 892264147 362161625 123585335 544809275 753901942 6976495 910129789 931186232 351324392 693521931 1011828672 783019444 646840408 469413157 797408724 660797850 389461645 892659367 758427532 804723461 416848857 55701340 956180731 556781394 1037110449 37491979 891456946 701353669 490055050 953332333 146239070 634490681 842126691 551202498 923178339 117954661 926683806 749372343 987203967 475313638 868610542 595322974 1036255331 848844272 767602463 1058145735 937451079 377848384 505516066 374176620 844278027 99580568 708897982 114922864 185965163 627541771 311514615 636011600 272143091 723681634 320581511 89749718 407412268 70883088 29704503 1068754737 388489743 644816554 83847401 805885371 138641876 254756700 6086400 814860326 602457611 432266140 856004371 1025824921 431266709 336627828 723896768 462992454 960714508 355117360 197451640 133109960 8016875 691948526 787056899 813828597 773290147 735720485 282819670 390781139 58449339 459602723 1024208618 916104977 818223950 11340167 807936634 205961103 648367154 900782560 525143772 383300941 1064196989 422651012 649758868 192917481 410043888 783899735 1039689335 313661601 896777100 29692764 903544275 787152712 991076370 351120290 288270306 592888785 963305288 733267058 898968005 798612315 489256655 218370802 384067755 646003791 913600518 152712978 501805071 869497493 817646003 515979207 891146125 588374121 837827278 525933179 841139633 803664355 792662437 192492567 285868799 741791726 910266293 1047297450 189622344 761355399 982106781 943023459 181766710 648459448 682552874 2017375 853995 391414758 625771844 113899368 189629506 951121403 668538659 284500408 344319185 439927821 872778181 491857184 621300851 856798051 207447917 849834614 269616310 945789678 889504573 74765078 413573019 713229470 384218842 368403061 684194371 959291573 525067913 23174982 765125999 350392330 645803705 949179468 692674646 836161424 890599123 592822515 912772504 1042881310 177218126 286771394 81495535 503389723 578080328 686858675 374491293 582843895 575272606 139373062 693942726 479679505 106172884 351980980 991731368 43752828 619418527 208196744 200858966 75243433 52315412 740643829 982635352 512826785 838478416 873549881 136651710 748043206 945204927 363979195 307059018 388119076 222623342 222478932 1023630249 728203535 133321302 881331984 340385486 31580995 183998360 112301390 1059445775 1047856939 4006849 571959045 340674901 1002135077 848386842 697709140 457619747 788608181 89856753 473542916 729174646 17717665 234625549 1057960297 518202859 281513426 1019685821 8987435 107286085 598874567 868454716 910549102 50921716 380957337 937331974 840196642 157659781 187364947 290899857 894208580 444938381 540351259 715377636 40112125 976738549 297035665 128729589 735163777 687393487 574383377 961160639 478257181 942709828 415495515 544385285 738133018 59594385 891502544 1026647544 358874890 630857731 332491673 1018552760 541972448 761058832 461018989 223200644 784796752 627717386 607791602 876308677 911535576 928638330 675090835 997679892 51004163 270356421 284571039 256630747 14353627 411232653 565263580 722695043 759397773 25896871 871010287 1037599307 942800062 480631270 1036881322 1013275424 432617202 722977364 156385015 632195873 941865195 122221439 922577713 661319704 641669796 226666025 577054449 658690077 890225354 1045900793 796205841 907710536 623689519 49842227 1007855460 170821986 548910679 266936747 155609184 373625808 592098794 133035371 485828896 163861743 589963883 1038515674 147801261 744043683 83461953 709828816 75248347 353844553 720904287 29295654 497789646 455567244 70007782 876977412 382144004 79468083 983515488 371956893 782823616 742090947 16733564 380590744 295481497 405076550 333487120 725126322 815256388 610938820 190357499 725658643 960170231 758176781 145912097 446366163 471395224 96797110 621163240 861258513 132883758 226382191 181929657 98283341 706175701 1026514120 448623571 973818817 669467192 411927350 69516036 440739046 197494022 597249642 825917406 11106993 935179742 590919469 386243617 387140115 993385321 545826697 1056270977 700825719 144808403 320623081 721881361 443494663 1005176104 886172497 888272320 302646907 809808884 749758856 532234944 751541468 73544952 362019518 87145138 623025899 928403168 504678921 165938182 178868593 615842463 790398449 664214084 613052339 804792361 236973868 1000518943 151758746 831296197 811724835 697408257 360978713 846357652 811411647 989510786 800490418 853001359 159497636 718762697 16956606 754887877 447766730 1019084801 934798170 1267289 250956334 720849283 475754056 770526024 242441945 1035527210 511261138 828147681 998170361 596633419 543094527 224338487 754758549 46307285 679278735 641361160 118231282 256736035 111485165 937051902 43118565 487047349 95041661 164274830 181604765 742505875 473999623 1040320399 163887806 779890196 692320508 162444286 43436003 949944651 1058429443 689458068 891354721 99354362 843500574 1005972552 619245443 613133591 216753910 122691580 10012649 850552010 833903906 373238539 590795337 827644970 623484737 214824054 565195787 694213642 887242229 899244972 588009315 513637644 196336705 946222837 1045718671 724434670 594605401 226853546 652039950 359431831 975586281 810104490 311758280 483630809 540774989 852855002 49827448 544361112 490927574 420247755 156507255 1071732341 525070275 482488431 725704242 644734157 317179748 75550517 587443950 736685431 527069671 927783263 707905743 774769361 271703478 133945860 475729068 345286684 462169388 148438611 821308 236679429 526359638 1037117197 797980835 69076505 879413974 454442384 755245811 143841249 721770550 137842920 835291010 29508415 769112352 837771848 388941176 416690255 892569848 624554449 48224253 140280618 600480361 284962237 610514432 828707161 986485388 473982421 673376096 547532738 121338239 913645392 1067046498 724986941 987100010 39246779 870256686 518361821 321306134 480055228 982026922 114881374 866488140 873695967 937421053 662654928 535154923 125137930 619792682 25735629 888032515 256180198 936012260 441608547 50760282 421211618 405773150 49846456 1072421735 858015183 791260787 367259468 153931388 423422206 112700183 1005542702 474709483 109113024 75192904 399467567 79959784 176266886 957946803 687944329 597266543 151860623 852730582 1014201329 768169977 392271314 194026906 518901460 511185479 103636489 92071198 679047127 425991727 956157961 989435917 403372062 73584717 22417762 586259294 10426185 426193210 849678637 37328158 246596800 467586439 543859117 944746436 149973246 59196296 1038669261 420277528 1033431818 1060880918 125027243 644610009 157368899 135144154 780449487 68012703 737536904 350053313 790068295 940486397 20242480 460958615 907490000 756327113 258815763 1066621603 651668430 65019189 830949512 420515727 688106321 392778189 368910129 170708241 134666172 945324765 711878149 598212939 227272778 585257649 682195111 40378386 939570389 218191442 294628914 620036817 257498828 667187647 157768226 1002735686 347427430 124942760 1039565474 918204798 594655041 554854506 546183872 7502208 984065550 613876425 512001330 869806450 671462150 97431850 926420284 997124324 527107453 896321854 907542834 344680976 174474850 780769708 944938047 1043890290 106017778 864431922 664279632 162511982 566766384 701170498 44067650 850600981 65866878 826728266 337304976 163917455 188756243 287354774 841072627 1053893640 757792480 14140682 896524996 611671960 258386056 784735210 261187029 190801854 53333945 604492514 20633438 1045393271 661455990 153081635 998483498 419580840 143146105 526664391 913745059 860939358 395130399 346516621 674599257 815692044 355323584 1040850754 7281768 703121936 718320575 687430101 565228143 775940402 185546160 753467994 608807829 529049767 901162904 476869063 952148462 822482862 449855881 858915955 860327556 616801824 1011302205 666080973 215561856 827482824 140283117 632751898 255309298 1067974988 314072092 709537973 701226703 816021978 900045989 862955484 21329118 921592120 436458646 895605346 258464171 240246603 934294277 2413039 605780272 58906424 229460206 636612105 162345724 566864244 472337422 409034732 308099096 1013422583 925488314 54756837 167188706 81692358 683112754 166092706 562948792 1048920791 680810789 445590377 753618366 868229337 768590353 992433006 1032662929 117625213 843302324 955839230 1028811738 525795790 962828095 1021283722 852019337 178535558 240199158 621782395 388810048 368158607 1044985135 624868196 264940704 849895097 126352768 479933571 280292216 725684768 587062727 20096101 96887292 997760171 446037600 1067060048 342742572 6664174 184557164 1068427671 219899468 144364799 127539746 818520921 411183477 328324485 629060387 921722522 15798960 544646802 654431873 1072644496 998662071 436086586 909014496 333829856 509837713 420660784 700893090 958939004 125937429 427400764 2870261 186205957 942032634 99467460 103474161 484133964 584312579 766478889 795266533 1019715069 974945383 214595643 348018295 1045000541 969858582 187655730 479299975 396377034 29583631 750087659 773924273 131310753 1023172080 61046606 265139290 624474176 807466155 725366124 658617681 203755150 633450593 22246136 926062733 1053209543 453176 39304921 281046809 339937715 369097177 963699034 810915054 510817457 319782178 548296110 335909313 186026984 776306626 275469844 826392602 682410494 173459359 588172126 95818288 926739266 177370514 595934492 892094862 853904448 896410161 992678737 649190599 554787314 994391225 120385123 880296997 1008967186 308200511 374700758 803161285 258516715 113688400 273536775 711770447 981682398 447402327 168460625 557354626 274654161 798894095 273581730 978008792 781119957 859400746 475859909 163998044 879671816 533484156 76020254 480752429 124995487 982345625 606071306 925797538 369900478 28716504 478970444 6242917 883777761 354128090 236787548 179218039 523462884 1065839105 971207966 621587529 180088665 537725345 393794722 187534799 111350344 1012290020 770701103 95912579 206510646 289944257 583794019 616795151 374252226 1025889919 889331707 213070674 853910723 678541947 244498564 383787334 579231072 485172106 626785808 427018519 869371223 325024518 9119424 1071669278 480908459 85721186 75291007 181322268 320060269 323274072 25915991 102795977 346370316 862982978 438221195 189356649 243991856 403286102 15736933 123096454 967230401 993282148 17127513 907490853 934813857 878069135 387369593 92899254 720840750 881703347 343563004 634010661 128365281 986765746 1025739765 1003698914 12670310 596458342 828816307 1016181338 153576912 937929487 24917430 590572034 611949838 101264935 456526658 743525313 118560915 271238877 222142745 174638376 720985943 947529789 291773487 1013267317 228859340 276578545 145698761 265680684 913310160 905833313 367640980 393308472 843160064 1070127211 928143744 233812617 768061457 432553880 903539864 483592466 201050153 728192106 766913128 969503871 80471182 911291945 972135688 541585679 800672555 175297495 520978350 416015550 816860042 989798834 985429578 807232940 1000874310 796160883 761934943 489907187 497652338 950839654 733445403 312818360 977407378 316281792 761274447 669105848 30515523 581434085 754111902 917107972 1045616337 611298142 797705399 912711467 531292768 65460790 1073294560 219623503 181469154 68676425 18192516 894361363 682862926 995191143 450754334 156819536 962418371 73348503 82341556 1069803596 950569356 930734873 508971312 650198698 556796447 224508708 961677744 951507831 637224369 542933211 410287688 435628106 91187819 847904453 1043460930 538955113 375774234 439790459 264839782 137364512 115513933 506914283 798555697 171019866 390414192 818606385 662810823 47889964 513525798 509855259 456076104 983547711 406536137 915010244 915496512 836213580 261676080 475455336 830906186 117403272 456933924 709785712 373456316 826237373 477741074 34548545 654974 155276519 971183989 183502902 406649025 630634331 401136837 304838419 424391715 871486083 778378546 998781096 175233710 484821391 684675170 233013784 60139568 1045161231 978981998 143059011 29583659 212687250 1011084112 1002666919 214165030 908294354 878953134 879707421 490229045 833441309 412661860 57148641 1069965542 114273376 1050010947 436723567 785682748 954262861 179846200 368025238 218523412 967883346 1061740420 806691482 497370207 778083266 103597908 184837669 227334845 50803569 738131883 907174794 303102139 1036202847 1015983851 437727210 732728298 838393520 504033707 648957045 1039626825 425840656 729895241 961414063 497092804 30828646 671745455 218499618 774733884 940539973 800655396 609068920 200174887 669964230 424026050 981436184 471962056 404036767 484922470 360203373 11906276 580638594 473612170 721614998 58442737 133397166 104747226 792259263 718254086 1005291080 82847420 153384796 808768754 920640874 167744667 481020724 1030745980 44839309 814662627 1034174270 89303699 942980428 512242472 623592137 15994191 714310767 523593952 755142493 302908850 420418789 207943430 598121547 787707162 218317363 875904229 22291238 158141581 419780523 239462601 932566942 514392804 535854631 242338338 214123515 343041026 798993554 481693576 320250251 1008893594 577362011 975839759 755644419 959640667 174896364 949731745 238254972 385448989 18246567 409915519 459476460 91645814 789212510 131123748 702230731 1069253545 1004935746 421024411 863632711 659683400 734557262 728358348 267493018 538487796 942210598 35130281 156330078 470415473 122590086 950466367 871623111 490769395 63334081 762978942 679073188 923298321 39245252 397759433 572833927 100645828 895389131 449921837 134758623 424341106 119539031 288293507 581859405 31597551 702584851 666712754 624068974 966824241 738074790 211932528 761999357 641550895 111583477 154914138 463082676 886875124 469794398 599224201 185785331 573251193 487169984 895498586 596196778 401800365 77922375 300478995 564090758 660010053 200289483 758795488 320176583 575908855 349448148 418586966 1049478273 1006197747 428363525 322217293 539029223 625540883 1052139432 893577765 496576306 752804166 550801151 389736462 864831871 677282286 483128708 953835663 179231837 802946306 658324577 750865003 576371654 626495151 585188350 901768904 837254372 656501485 285100403 437396849 60005694 71697544 348065623 822490702 308193924 153507238 245809415 202968605 851437575 358932354 849702834 228088895 1054905119 687619092 188431654 681222778 764166134 81061374 27162171 249208455 348250750 484720773 275890390 374623137 425853861 810278702 379754467 541064956 748626437 754862570 852904836 230444946 1028112898 285164704 541341668 281259750 841522672 825915830 777606779 1045671749 441870180 630826805 120255152 665829066 996203506 495633710 184120154 1070660092 881161323 544109993 413363044 410486874 469787183 819229757 795538867 746431497 1072588157 292775313 691477940 568168304 316534312 806345269 44633115 478318000 666594441 552852327 642056542 426653545 847914830 278757983 182934547 821331956 85269884 577954036 333386960 618400869 986227928 343061756 370616709 1019139061 170783212 178840669 336722106 111377865 395485217 367991405 649888480 558811767 826983718 16250598 389402078 478103393 295634959 195355543 413991180 185632430 781440599 636262124 591841512 1029317131 857864749 665147777 747346698 125611071 78945159 234928304 868505418 43335035 594420814 362868924 1038259864 821963843 481899699 421948966 842361798 672566157 125484897 90228047 906248165 362297568 397259645 297846369 303013487 400453768 1033192470 192525855 77596814 58560348 870022836 92600478 310519842 404939164 486929322 167558819 508903121 801382983 503206989 936710153 79424873 201811823 86204010 761747049 447716569 864866924 438266075 464356805 630232135 47389289 353907384 137109643 906670093 459282869 145912667 153489028 468589588 275427796 669909449 977405226 419478510 439830931 444258495 949974625 970946513 506786286 140020461 978180682 723129231 740423690 255438177 693702712 107622302 615492459 363592968 433640185 834424302 686406232 187600598 598314966 425936751 770528966 1019965013 68982783 651379660 979143706 562302837 944725754 445606694 80088293 1006379923 182142646 752994549 498927404 508896212 421296373 258019983 923469857 936696072 1019518464 1016841438 592037274 256000181 218883488 687708991 817873083 350396563 1005509393 354119147 330616082 720820883 665843036 760863193 705154638 543072044 946534883 977070036 580599832 171598747 343278966 605536495 492315372 138710714 498409370 547086195 854996434 881125206 812671575 607991678 729920926 942768813 1036622074 974385097 711011396 687307830 338677994 672794692 109358867 874734797 872147198 408076523 36863279 1017811757 934555589 210364041 853611120 523633608 667737271 853031404 427376504 953677416 335049373 525231921 892199477 967006330 969018144 32224320 146963360 55475889 782004331 605078791 692291928 474154811 329638937 538928329 641320518 1004942998 671569844 452561622 651503901 860691433 95428047 557363865 956101910 844507824 471662565 995704556 611600672 92931923 875676764 846946957 18288997 664371369 1066884862 318762225 417018958 1056482315 359980653 573388638 83748165 34979172 27981722 179127666 37881582 322408036 1035629015 746246082 50629857 208348298 835212309 738031652 116249141 379781766 236415476 36592216 12385923 688661459 842933080 917327271 450151045 197407476 965545666 11685251 1033428791 519124545 996464334 576241217 135899323 383265686 679313820 831728771 494233891 877854313 298646579 12143860 170535497 729747410 182265815 325540161 584103204 1040337223 889027568 997048480 672593545 99233402 723541249 295535994 1023693917 579842721 576101396 35683532 560944372 164615915 450960653 276778852 1007577821 120708795 841755506 990963211 946500482 883056091 899998488 439652069 1010820680 24848519 429546891 183323106 1038065668 825692357 179492793 892749400 167492974 213985798 461684643 618573883 717535648 728903835 1016477753 615856243 187196201 60898649 903721770 625102173 899597210 86136007 179652946 366467643 446474920 811133718 401492218 438836814 169885857 30379883 943875604 186200703 905451807 206031599 388689919 297413590 504506646 272243830 255204464 196199979 1000341846 861915435 1038405151 151726061 270982458 1062998209 578625268 745936138 912748750 953825920 84072408 807193917 513189466 262016449 692751417 748473814 925663645 1021672204 554639655 487024588 318303329 842290829 1057017544 616272739 209286675 751811678 626723810 442354165 699099750 432111483 70030069 487824294 534499758 939126441 62758543 699113483 521949716 822185416 600100078 1046430570 941751212 871495053 310300541 631538155 214175007 581792433 570110571 71541317 65920677 630444002 667565518 710278541 587684673 1042412129 444582000 330141733 5421392 673995812 1052398765 363748272 730532921 378444412 537415178 952860122 534323956 814968437 592595688 544029954 437682361 909413840 891769367 518119811 815404338 5879622 725432895 473035058 877329900 142650428 729514455 265635951 629991805 110818853 704583340 1071038027 987637616 935226262 951210949 205292275 344838553 302043021 533133751 25306034 847998637 179909955 880924832 617842862 603830525 8821040 92005456 473026689 84322781 564219716 519136179 91072631 938418063 440360676 1039578617 126892768 855335162 50412323 484523657 61784610 813773498 952163611 953427841 556306356 1058947239 961728200 618496996 249354800 507028316 679538319 299941893 638213544 133297578 383136718 117440070 326084805 141052259 554487473 578767384 907762247 112363076 213299163 300208995 209772542 790430835 312304369 960959902 774112493 398953261 307672081 372372687 751548956 522419251 677313864 630715540 776846681 925035398 268165986 258592267 437152473 347610123 530165660 742768556 184084521 1041186851 925175498 924777989 295751001 994009647 181913708 400397301 470126739 601019510 41315711 701920818 305796254 1002037232 1050071310 527384203 45399943 876372780 789298842 1047191691 907928196 336291049 440503545 929790095 879500761 447018911 1066005689 65712027 961941831 335268100 275934572 964406681 879216380 831194432 584516673 216824161 201476912 52193705 149157845 97264771 946802815 839932466 916863857 260478436 475141314 911015269 1006421312 663615933 555783532 354986024 658746137 687654579 942184487 429259741 994581311 446544027 23723981 22768236 399512831 968964755 511781721 194553872 84409065 101664065 385097106 1041942849 510821347 648525766 475210281 452580206 393695117 782569119 212714868 62965568 987871020 259070917 394139750 389532198 494774522 506530455 652107733 192698466 144188425 223597915 228354629 103282683 15321102 101890184 637895033 793349510 264507058 656172206 901338061 206371707 268889404 815318791 524185626 820194976 323311609 1045641379 853200528 461056635 823329862 79950821 11729277 478250372 194209934 1010548677 1055841812 674350095 312333029 909018092 959296404 538685434 611444258 316835022 581990360 464645420 829343813 234112917 1052327778 676176912 257634494 854219344 320885518 341617465 705625765 974439087 757815599 492756445 72903681 643305339 969824771 97902523 896311493 225431677 172238192 226775839 906876102 887224841 721467590 209610897 1044016957 667039980 535495271 679005946 693727114 982048201 600993710 15831838 1071060906 36932165 378996320 88750532 13082960 596715338 762532550 888846038 762316268 757368328 590991190 343328130 1044581935 502248046 685931879 562475844 235207436 349098418 419230816 597102048 1070107987 891850772 971177681 359861675 931468855 1011318067 609047193 608144948 692844464 12185902 987835404 401076607 622861347 342350095 676377937 150897182 221988144 343268867 592819689 336829238 673979133 463257253 816193357 11108840 18998110 618388750 526836860 902467600 1013669275 835974716 40227677 126662392 25705879 203664456 256737016 1016433394 618793167 646562621 508562328 339331965 890263541 465931303 995585184 456596448 286418169 1066986745 730869082 142988015 1021027629 71375745 652654242 268419917 935496342 237791488 206979102 354540735 129945920 931199696 947164491 222127543 658461257 382605973 779562682 1022936526 1054872135 1037121603 446233227 137871503 528670388 930567516 688222270 576113667 221087287 865736826 417850569 996454310 614201392 921009320 266480387 897816138 192173759 431259199 400964814 708833434 630450843 587002438 192142282 213219068 336165769 817301894 375747583 267484368 371620021 472860155 419331259 824904051 189034611 658124060 242839611 1004736274 674224645 360172352 259185897 555486084 343016680 703994327 268327449 34383866 34449246 864528190 731832679 886638686 270876562 673385097 15487422 954433894 873627566 670823010 689564885 203917358 241901446 638860151 813407428 600902707 979441632 90626737 144717383 731822576 324349338 373685540 610961789 487986826 133300706 971397288 990151093 742053849 905265586 698026672 79910899 204299361 9015759 1001524141 794876849 280177082 461587964 805777622 672332481 147324243 486996268 141431135 724363255 723036329 569918911 581666464 612320086 918945255 76161078 235674790 598454706 622975761 35841269 66266496 225229111 1048919960 512353517 991097114 319257652 386395300 523210918 908926243 757586257 484858402 389836307 453204162 129797433 177390343 166068352 916108641 224849916 916581538 757580944 136233980 450509476 270844469 64735494 1056953297 957174905 907018790 177463956 11486734 151858883 356697382 61553252 686330371 80657744 167075240 507778936 989019204 307426085 614166193 768328514 407929781 551647166 600018870 681813024 55834049 407177894 835394746 35329637 705755224 1028798150 895073503 655877344 970393995 361704945 1025333429 615007339 1066293422 832108673 526959099 347773296 205653798 186144399 933913191 422783502 137378144 637283445 883416100 205590316 363482526 984367741 914218911 569241833 932774882 727589494 516882530 766078735 93906925 836078981 612991993 571791461 669727041 210689278 177607114 343727121 335244162 135957585 361497755 148113295 834890969 440819710 293019874 848893186 572537176 584208472 753280433 945201735 633570464 421519853 315100697 277915808 471661714 722111708 270171367 812900697 277407972 508129067 156251180 398999239 892519917 154110622 1068933907 490702236 851684529 1054884533 214922144 414312881 719792550 1028227054 263655502 496820737 309053012 781373220 460989937 819355783 340164199 324170778 108925829 910678775 580388575 70214857 880468782 590448513 60255524 321148194 874920707 900963651 283690326 705251019 558665107 277045535 651347873 43747600 630296507 461713077 962522343 858618922 550128427 57958545 470044843 19925156 298148269 737503601 919036847 1044523370 933196132 550532479 959417131 737304271 477681442 51191991 514170377 919533948 353400624 423484309 906818789 535672119 307440255 222960560 801178260 878146554 291971398 153596801 899504593 122867764 460153794 294947541 844096335 968814821 79534668 353701223 1055909661 917500832 294405588 639347312 783555718 1066600894 155286543 961928427 645784777 678548041 565592307 1015225741 500296316 507317352 667468010 1000217491 591362453 50809875 774334026 102040354 778151704 435797370 858006862 737913894 330927841 845125587 347507646 584171560 684005991 435104343 68788 1004123737 777943615 128216230 146351229 71493874 129446526 716693453 472517672 776361858 868543493 368425144 707146643 325882408 781774080 49857480 401912372 1025126731 388051549 907888585 659726909 973596413 167463220 399719552 896102333 521016222 60357240 1071513986 40977398 1061508582 752528644 728555330 1004796500 975071778 207713087 1067498674 937920401 411820563 863734744 43985572 520187333 571657520 639930220 315079827 255619555 16951822 210766359 632325987 857212783 246656763 369594855 781667881 196730698 446292112 735849577 1013158771 1027786075 329063463 585763996 919840340 430841466 36892006 333607200 955113851 873348587 130242809 715935945 664657936 504740850 625365788 502139180 1004419736 195748676 243665686 181712679 325572525 705270976 230115505 812942651 886889002 820516647 501719355 999974533 499054994 690270918 959992377 418748257 832860185 162843123 304135407 471700797 870813755 113527557 179995478 977832826 618109235 894471667 345161015 987892928 497753606 218568387 302198118 459096579 59499455 442113112 901349933 490096195 1070749408 520536314 749843724 551298576 480629116 149522128 67472466 1006752792 495290699 378916633 920802576 120740536 91401032 1031228318 233630037 658803256 390569410 502285431 369119059 313716208 258458220 794416872 792347840 317520726 907724534 1033705100 690897954 520424009 430839926 923159651 606170762 172881032 607577197 451815676 797132789 786515512 883958303 425024389 681424447 135143606 650401154 148139365 68589009 820739405 61521976 490429227 788574277 940278614 122842092 957133462 1058668269 230476389 81965634 146391482 843196157 602881657 20556121 940196715 449476959 722191321 101056006 31031186 432325307 12252312 900715184 484584626 547742141 424919044 525026472 287107743 706792362 490725480 779970199 263454945 1056090161 398153473 1009516275 753164936 59321788 1018450202 176713711 918461282 470494403 644419263 159858713 1067386676 922057746 909412298 244571177 399277406 106316122 731930217 483253766 214943178 272640847 143951657 807964742 761212687 125984195 501247454 932867133 936548664 202669914 252740915 189998249 324966202 661214660 190811471 429517472 854172304 967688792 1068401213 514527490 817490518 903499203 40127470 605041008 235583239 319354456 199759418 330403432 773579669 983747797 416796407 1034903737 54016627 640536702 486507261 449844477 477505164 551418916 503309573 815531931 337383612 313062636 988239169 187210268 454099460 506048501 601250598 458343597 992532912 152804942 237201873 801529734 898928648 368682607 1035650685 566596128 692469917 211446087 809173792 615974158 881690439 318142792 357018225 102403567 324515841 216887094 40589593 986737889 801569386 761915152 960469649 827012439 560611869 899136805 168550781 902769529 595534961 58880154 737282688 75726663 808225581 380154226 568386753 968642969 83865367 802635875 845372317 148080062 772453315 526558557 534976748 156892309 397822094 782961075 20286928 365395152 239740609 733499156 36068683 332340794 186836080 771031031 79446918 1062895053 737778577 352088876 138857387 331720295 734105477 62430997 153297950 437872167 910393446 1051256071 431709327 263338298 439097889 169030455 648633724 429838544 677311045 1033016286 151449624 758061525 844930120 1049490887 819823969 802429336 593876132 146818926 932925908 586372583 326780110 387291536 987099912 171376124 188376835 855078100 933021547 611019624 693891632 97915640 535079872 961217834 843419861 956994828 98691692 590907617 424434988 999785333 83812782 471586504 933407772 472436248 1009869939 494204544 504124791 766018080 984002 1028417062 1026994424 238748825 356127729 874959903 704200289 271568754 30901431 21728200 547290967 213070946 157673217 673929993 738017225 335719132 97094428 87668013 552076866 691178703 254642782 182043160 950499931 493735495 403471704 1044832499 629541399 816762715 336424131 687081456 926931605 406171092 521723360 72645065 66315415 610625424 648687915 581833174 673258782 194494522 103678496 853753987 625296563 512011265 527316239 839949689 73055876 244230545 324017816 634001975 1052687784 742744654 1043581339 835998392 482021150 639162927 912238316 975717931 880931156 477894071 116414348 443526026 21586187 1023282972 1042462489 1013522266 506468559 248548678 1036480605 650844824 451802872 118586553 512446862 940975546 683110322 864114939 604932003 646876211 179731272 524579857 699331177 986454719 818195511 529916431 560369597 372367021 262396332 192316743 134866825 492215207 768076930 263764663 887912357 339556963 1052172381 662443951 92978485 102609703 335439572 339117911 723868498 153640945 635401921 489394564 899747800 656587501 11750381 619578060 181508417 877537121 980322333 667967384 271860362 788158796 599002351 859723799 919584670 1007933866 876470868 627895684 678708991 360959625 385886207 444006084 365079658 1022349717 652306130 843446495 759014974 283955687 410228907 201384039 614226358 122968958 243196544 1027306882 508897340 100805372 462778490 953399908 105142205 624317894 597931093 689563359 209889167 660604203 582352999 82709935 97563911 723709400 653129562 443627757 443602413 436561820 815929548 209906863 299020963 428333584 101052820 500989728 582812768 491308861 344905696 402696077 914495561 659003551 1003970054 985514765 791442660 611905229 196492171 481420856 866763167 150919921 576132405 948354508 1057569350 407678147 69491145 77757063 885699462 433715663 1014011682 772570476 900568412 543418266 446422673 915229319 643913928 140809756 1028910555 744196841 58320388 350829159 1047330162 971298823 537210581 239913921 769249058 929520065 36943319 535450964 196261295 97475899 1066603395 934293645 856049262 212005275 192876722 507376826 1056209093 549096437 357274897 172161514 659494839 393011053 355642436 202634353 25854029 85953653 829776519 88728963 1054877577 180027697 689608636 77891122 468105269 1037741004 860820822 584729583 683160371 70287181 99932268 634986664 414925158 640714095 753186262 528717115 365917942 93376699 914470092 1026008930 6569160 197812999 658633099 977655508 921356559 649821327 504271758 894494408 523884872 864669988 668423390 948956116 751596802 836219893 957784680 1031048612 1020468451 236331654 973068099 36412074 534478659 491758329 135827069 63662572 251243316 620967999 895211976 292746133 754202910 29921869 169959877 41078781 1039912741 983600364 200829771 535932758 33031002 694042115 184789158 815689937 879493015 73859514 778401055 586780172 1015873157 207446690 594991380 411693610 869117148 24166368 727566557 141808536 834265799 121197705 989514842 125503707 339279395 378361774 159182461 316261247 431285278 116601053 246033977 420150935 216014626 650210208 246953665 589107911 616243955 392219365 486253882 709159443 294783013 352634539 552190076 835842327 1042693561 674765245 10527521 572737549 726760854 824488765 410455071 447556808 516548893 760772129 289655609 650935361 388989059 468693338 49866562 312003612 428800994 211894950 904029821 637206909 903485969 916725207 315744158 424695143 678849547 1023996124 170493320 918281545 223367672 30203266 144219299 727501485 336753476 601585234 212596620 369788935 547418405 981209505 104532531 785137022 214057929 456260603 68983487 339471618 960207257 63524133 1017726610 129040624 812695789 975051443 794720674 873148376 740683889 410874981 388748769 892884251 715367518 957255953 188863386 1068573032 510809670 1063338583 62467270 91392660 442382878 279443222 301397316 901252938 471695719 592601837 39667857 5753937 991319633 325483182 674153389 953335640 898799907 1017894035 405728530 988995951 140108564 818460865 293215470 850250920 636189732 66387270 1052915378 763322542 313695337 813306986 211997210 917232142 94067447 677294936 208567186 1033537979 563537241 335657371 770840146 599187570 221255201 127874199 968064863 23332056 1013552883 782024356 655164940 562517437 25270798 138238311 360330089 423609832 585871428 881151721 47778628 323919324 137527546 483484194 648623712 490214017 269710901 425794673 733597193 739772780 370458546 995923260 332575351 766702727 236789267 930420992 539509335 479223709 333874921 234654124 729409539 969681081 961668958 180726916 917800074 1005711320 368735690 805092335 520421371 1072417494 416215495 1033952167 18496375 314029942 714927813 701302731 876021058 151499436 441780481 506741637 534163757 194210373 650895502 314377897 894132162 997935870 454659917 935989557 98432657 226483513 413735907 545327780 62489443 953274 962051854 876752087 480287794 208887979 862150191 266037391 856808666 586933551 672036960 406311840 115989898 422440550 76732403 130762028 399249878 200237946 410399264 835125163 132524989 857716284 56008896 528129604 642568524 193238878 390235708 337151497 637253792 345242749 993176429 868895493 973502624 934197298 498380089 543482570 454179706 293382594 463910638 279888456 373080827 282174251 482659300 99201768 443211015 972435316 1022309982 933900698 178986517 477046156 619606636 397744287 1039648959 252433516 356715101 638289177 24115660 765028114 2101389 530567327 384984046 840823844 334603841 181628147 206636088 1000221825 490562962 98003333 93820833 124969779 865528224 455330587 680415472 134808793 537857436 646408131 68077659 726813918 746752817 464868105 498967834 398454772 825650278 289881215 189944808 548666861 458881859 174253911 1018594193 399229076 204228471 677865445 387333551 1026250627 625685666 827947154 376306967 1056504566 390476564 98126018 96246153 806825189 782322592 809946551 1003363810 98008287 103557230 141595199 486988827 126650686 186441246 277468270 860955569 213723405 607458639 263348857 223867080 573820876 1043691179 402404051 575802121 904837554 491618394 964243994 174747532 1008331949 42149160 487224227 626591749 429945559 452961886 422547223 945474791 827845705 598993744 30824062 491884966 250535652 294488415 280868518 392590978 572879617 805764633 771284961 768320218 222256652 651022324 497817946 52288937 1015642223 778836808 308949284 909783787 685194077 723549017 1044698221 202898123 213677839 722061370 194354785 424999135 997701049 653861410 110915115 802168230 832899387 932624444 106146459 174719696 283698137 104637481 48900076 52224030 872800488 79380466 682860732 714393668 728862353 140029037 520294141 1047660412 328875380 809880552 710363688 171513690 715429429 386710099 1050466880 320220124 830441896 117377999 968909382 823023038 745996565 974008308 663164339 47334014 365296179 270868824 51390155 398358051 557278039 828372022 973607890 37396672 602135951 500432304 860618263 26783784 611825788 137827113 885577737 344942401 939654155 31631389 336495081 88461914 841121124 826781575 929178473 43666816 758197894 780468945 412166928 250219870 804822855 472464673 406243399 477897661 258170968 976498102 476894012 375101413 73052169 1057620689 580529809 980436751 239239124 314440525 99431398 234193885 1007230588 462352168 77718839 380373402 151830172 247212238 238104898 901660333 291869533 535616293 904317639 482792069 217020324 699809916 506438691 273049709 870807031 355769047 619856236 502296691 260213385 450245464 255365567 224578194 394303602 176345254 115847543 907073365 733163888 32499288 613895106 845365238 205325749 599399160 378752191 599498983 1006307718 27581187 28285661 32722565 173304276 155896727 234755725 742443023 295499733 1030478696 72981631 172095721 76970442 728575988 1057338629 634772701 38831177 280612937 667095359 226272922 165193531 582441319 166099199 897041795 692667326 891129281 157445862 182805110 803307472 183911658 924558854 975782712 85957053 702730220 558634951 1060081021 43746977 516055241 394203809 847315134 1049332444 655781868 210954516 636708889 504920425 516723552 1023835814 50755354 25258684 194011586 969550396 537928582 457345437 483678476 732529140 495568756 793476193 545952124 387567814 970651298 1027002860 233602843 150120836 869500065 123956025 220341147 866440549 124354666 3774271 482113656 902932973 223841110 583196535 655794700 851969159 263978682 621594555 639081791 374187798 823940658 292575928 445400422 1017703606 672746546 123752302 233434812 714420712 557557134 765902657 212266461 412530908 505057218 356623542 715115578 1057195664 63886959 414256269 89653590 276799524 864653776 25190433 197329137 371062084 543469364 395067002 721635796 320558949 258591416 947263149 37458872 1036322271 436712009 185747259 534538970 463598671 575777357 808471181 747044814 997584547 96104865 212010823 1066306854 722078085 381201751 834027241 581333724 156575115 990853409 909738178 118867767 117238784 226389515 496690332 641413678 948407361 300363557 410450610 707463007 645750588 59942436 695958990 425037883 610001338 149629801 881860165 4119644 44659763 703614773 288859581 401333839 278181951 128872343 574201578 1044761135 593939378 933968239 411972769 969150311 362693995 815755444 200233051 999143822 601166982 65814038 655885514 715476627 576358676 489267918 750935433 370021930 939983568 18404814 787660064 936151065 78536685 604049562 893883464 521679481 672671461 406569823 407260528 835578047 960821940 890920315 1020122307 862578775 237679194 491927137 93274100 235950786 89866560 633026265 660262395 409268662 741467091 790437927 88544400 650208763 850476766 337403474 372113140 977808225 233915439 972712522 347407445 336746067 722849898 723664791 695255746 319523672 735835131 549650276 159489165 693151335 445658157 295133975 217050843 301449598 188180464 555545581 411473454 597623993 456131340 836761083 980680515 795128137 110556674 779387739 287499578 882535912 380263003 884773969 401125283 253114682 939222180 865308172 618502014 367938443 754382467 66491186 564651737 211263780 703381125 244928703 297630046 331405186 1006920026 551364952 335611850 672105417 585002362 379040603 120872275 401831547 161154922 254489684 953047863 946112069 686883088 988793002 954217277 332141902 571116108 72145431 37276248 334963518 361621694 504700433 735937678 430374243 787479317 635704644 764802590 62944992 227473374 539883257 998118503 425019252 252825779 778354667 130354750 144044769 651312507 528036461 719450144 1057895792 562801697 252942793 373764038 594713824 250172836 998589603 99674816 559999520 553411844 282747266 473911633 765726795 1056472874 439254425 428593347 502417437 860375733 982012799 119140469 895430743 912929164 151908610 768723787 230766066 274249852 213004198 677238667 1073240312 69171083 156122894 956556131 953264791 941520626 117417097 683672757 718657533 749250491 574481288 208607363 575182222 668093742 738630031 108620174 940606281 727420878 609830091 748271514 933661468 617607295 1064954750 633301463 274337467 102928408 400681495 441915503 808475882 483053352 157432570 513159150 604052558 4551256 970621349 153028191 695355544 65640156 886852376 804124887 666521052 297194672 841497438 87153549 780945290 536248449 702456745 264603226 23148375 883921015 318305779 16865515 279229783 94361335 1016099737 543194702 982820084 941220120 203219115 375522077 1016527195 1058369553 50725869 725928916 425703860 720213911 928028476 1031146185 366580326 509813442 614277691 276438091 525730250 256603305 90982196 578646458 390679672 344679475 519000163 513117821 775454022 140603059 28969676 963706126 1062703549 221272135 397356738 281620556 967323107 774526713 449721488 70025460 409687925 317430656 969477184 900137673 475359473 44781617 916630329 318670364 605491341 104753880 557083071 175405097 820575877 1031717329 134912818 442512568 1065825645 194619112 342667743 763469345 842042668 265462185 372977918 327637863 695480139 628733878 841437699 108272658 122551003 199721882 237779094 445955089 61429769 605812807 943877881 1023464697 616981928 310337993 84570484 137295960 151309958 1010541047 407445101 717117847 970561335 894028900 1058687692 205652288 947192969 326533860 90443335 109423665 1010456251 906351165 585545665 959274951 698278853 378911171 703915956 47449748 478060357 336351330 944707045 856008500 27840196 997682799 284342218 1022931434 623177840 64225313 615877546 590869621 649641965 786560268 131292982 439025281 434563600 1065314056 208507538 340479168 783476454 1044655709 510135659 51780358 102082132 443217432 515193770 374859111 194063457 781392581 419621103 567717718 77589574 529475678 615413444 274468495 450166998 305979624 637656170 232702056 924443809 300961131 89866811 559093564 484735570 840279583 698443385 299812634 73118642 326536405 758544361 246034695 68409761 884304243 830620504 629349908 806301808 1038670798 91278932 503931023 454248668 261710980 1060975829 1006533666 990731000 96848758 401390854 723641392 610207378 721278288 532895860 160815245 123368437 857319072 694472897 52424552 360256697 446068223 581599098 363502179 202353553 100601487 486619752 1032484474 580600829 561796365 120825279 663550109 843999323 615635125 966846088 408029931 217077675 47866970 611550965 409372078 304262561 932853713 339299952 60180147 701841661 90292516 549559871 93011022 30888917 550022850 14799149 432489546 491748701 925931630 1059074560 155937305 571689123 806311781 507110237 964626596 769388706 368420722 841745418 664262511 900211018 1061711452 92137017 114167833 72624390 220508236 667526452 767066096 611002799 274729990 753090524 389294993 996470874 510752440 118028904 765271153 461758371 372647855 194740518 66156274 716264186 405103654 456059097 184559876 110213526 116367616 16625633 830936847 1059475127 966986861 925462049 600472105 824762426 28223590 449939969 502332831 411925783 430600158 297148401 999201404 842918589 830319384 890905018 389944260 138327239 786012010 359105581 903918142 1052705857 877210716 690840284 207797563 864163849 288375337 852520555 291548835 619397160 196569229 1032225089 117619944 529956120 789997962 815630785 279902196 903505237 420827558 438774764 970619293 452321536 1068865652 758154903 562542591 774752987 199036966 226222544 922360682 1057329709 157173031 737830373 256988945 470022699 1029667598 859358770 736593163 991494001 437490479 551802901 587106713 142978527 33190050 853229114 854424726 1061779737 483285584 413496288 80039978 135947951 788633830 241172776 788103497 767425117 702271766 1001115444 98020574 678484380 311152865 896926868 707754042 120272373 675454391 1071060627 317239538 932850718 1053188093 50349896 8731973 425533073 300318388 443660580 1015725233 1030484562 778538547 858170363 194704430 287973979 1010674996 37622105 890505813 810047920 283356857 353886053 466253903 867881382 931277019 403022835 864737045 179925744 516677334 957270304 32154731 857243176 24766311 1044436660 760291757 836664531 271505442 360695352 534273912 677203287 186086542 1048931670 815598778 563572622 427986975 1006907244 980391224 887843341 925897343 367191698 218283701 958771908 768324372 471304243 398206116 126472633 547865840 626216621 593703305 218127805 732882697 251762384 807778448 86676093 394442627 544855025 966382185 850281735 56663100 1059384041 431804713 64050628 725151229 447401351 202776763 591362811 173280689 678732974 695369494 595503728 864131542 28910420 77812446 844240721 405502331 525559771 762276376 625479359 821499620 328127502 411521632 532328827 1045841002 745375034 248247284 232951036 449093133 681333807 848856506 540154488 516688938 792467439 418969657 470554528 415670443 161691613 716429407 417914249 585660136 872900088 588032418 170626956 574589698 546472549 612647923 602741598 86352208 506099321 192094063 988987913 578139472 1005570885 376856699 101915070 457682935 575514253 755224464 913180812 277427566 608372147 696431178 659230495 695258860 1025083084 193537867 979435487 804534448 859574718 207745009 814752959 185988879 628700812 746345526 902466447 325356686 412154794 474485215 281806474 531654304 174881543 592675065 815972085 241468824 96706926 994419869 837100044 947603665 307104199 78629966 309481539 54362028 875991130 210862721 958937131 93770581 840651718 917848153 391206213 812777004 657863156 292618709 506662054 968490559 315466226 696273801 320502425 995931746 349610824 1058168478 57936676 436220523 1029054615 835707281 658254584 1005139808 244949645 804568910 375744964 325166683 609817608 728201541 863880313 907015933 458612810 179756256 190964774 981474563 221690790 407630286 355366679 536115501 555558760 864139053 804365145 665208799 347927079 73614902 680478260 253591362 180891176 207317453 132914607 277587794 1002361322 145640185 677242418 459016705 841233255 898515981 936185806 864947534 167616632 389298513 598975602 781991348 796214595 743589880 79012816 122202413 1058511037 37476022 635199018 869479154 177763897 235499702 566072555 477914133 654239761 239201737 914895231 739394849 838264361 517180198 1043174870 876062839 262648344 496421110 838715364 885852296 576472410 228731572 292303688 804297421 789458570 815384756 871688644 605024629 942403425 296053585 320876365 833301744 23004850 977476940 303549032 723858430 1045686630 739931906 536989633 729826432 561648046 199600419 377876947 349226074 996727564 191822923 446331489 86864136 525022779 568132760 742846788 132148905 517646601 906556384 332267316 1035940622 1004341894 603967268 507395779 637654895 854538407 1072836958 816998369 261949084 194326767 26805861 596376526 905812321 959873618 223357518 493776261 499465882 139663066 502293541 309386256 489169743 493048816 279292167 733720348 189531119 305046981 186144395 1032910008 934773294 602064291 232964314 763393124 50648377 511223309 490203743 400145089 1032369311 46454601 312484456 954491552 198826399 891185618 1048886675 449897192 1028567525 722041290 515191256 395172272 719786783 963589701 490743588 616876956 515859055 802268485 11622058 466589233 655155672 853686793 1023764338 630240468 441951965 177121114 788827177 625651098 284521577 883360925 1062797754 629507090 340189261 144089463 793396789 389566350 799898770 154362327 96213049 82479342 583705709 459302598 30243810 918531619 516961657 729793310 368651430 551705890 358242464 1018629850 159517139 902048445 156418769 726941731 524235381 404710983 283532168 250730879 161339688 768120250 2848195 916601564 692855884 496580999 561745301 161800326 141834104 641067890 498424742 451137945 565362622 1046276054 125603657 145125887 263060485 585859146 1038736090 452458188 939202529 931414505 171087460 19953293 540953788 731009641 846047973 192652280 696683257 491995621 727246647 1001708874 92210732 921313401 66639411 474022762 23330258 626698259 388219374 828940903 543963767 560297476 386282509 361417268 144880340 783299997 690090966 656511127 201711533 607530819 670580484 1047344922 368182266 141466172 528615469 713823744 431286185 227666776 32267783 231704942 869956679 746322691 380942 145422366 821445912 617827286 480244441 572036094 598716356 105491744 726924301 510537117 756125937 861361580 354308927 476630594 497845434 138709327 22514816 1000917950 888621935 314840772 676951431 151971177 620876646 962374808 1050593499 981754590 771765086 510594493 1040579531 1026406270 111916838 231863521 1057744041 27478575 686943404 1043864029 260756107 375985866 745623490 942493889 934389468 154708339 844745163 884298695 75135319 902904659 700103602 929102198 953949526 21995316 1010095876 620750947 202823544 55626491 1037701777 686444054 368647385 174535877 65068362 888405608 770536263 779249459 318000749 889111279 292996114 549527512 853795580 615404233 818672118 786324922 739088430 1032707079 13189187 492916900 215732504 911154681 691166451 325766623 694666415 306670714 38467035 899563035 385688473 37579516 127010489 631397662 969354972 641499638 651565036 919248130 815147016 379826316 197130949 545299753 375394641 840660973 272016152 451158884 719987039 1027861468 818183399 518705839 862566675 812739828 136890412 46664381 872403392 809983432 274900408 594314010 874598667 1034688650 1024516415 982863098 529361396 143375959 388137724 169672917 728506316 467219276 1035330265 120068719 250817204 1033038083 467425645 94421183 193120774 115284942 438315860 687991150 164946478 180320933 747674799 773968100 417838493 988257450 80008054 967157434 1034878537 983788823 620204271 237217738 435386514 843150917 584938417 515355494 910003633 42011669 959847444 516300584 493061200 243563430 454573802 363930308 475524842 244205387 206631085 537876585 262869437 836979784 896078248 775780230 547889333 355565761 162545579 11280418 562498270 463728770 671951025 857420150 939542741 923846812 147352997 424730232 113973204 156622460 321313125 553591672 721554241 497864446 471411300 942310620 1020831691 918595521 168126307 866344659 928861955 970367419 525804930 707510715 302920735 625297721 1037437693 265874325 67681079 700655444 906036670 407693348 204730775 565654671 414116552 43550662 212895912 1039980105 854340292 57360362 302517835 704999296 388500597 407766612 15046967 865793464 960090498 275461020 521041544 90571375 603086303 91863478 880845909 86581987 922344636 464010523 623891191 749288499 602477470 39993941 1003708942 670911919 733590428 563657136 919653615 758827099 998146864 859462953 473315001 646132346 1061132832 454285220 545657431 1019210075 358201730 1063434627 415137837 737206504 1003357487 713806076 231303358 187235338 912118810 443447786 646089897 83990878 236445752 878195241 922639459 153698793 422899180 209772065 190433641 650746137 714747562 976303563 294092151 181723445 718598954 880377115 995331228 599179269 230665799 1029974757 75332097 985059498 95095883 101496669 618897150 31268091 281383974 433048123 284765072 273390337 451648755 296833557 666685929 351808071 460535440 749824221 622350161 590392717 650463190 676560333 951083077 1016622192 958596814 568728479 212427305 90701371 1054224794 972609864 233869450 1040327903 162675001 584705379 446381526 1028661567 968106663 177858467 89582467 914083894 737451228 78588935 182005550 328828957 26841649 29459354 858595814 778143451 273786643 1050740323 433940466 178900260 187119706 238072673 271374367 590721647 523752635 714656903 645434446 562391548 250109498 1059952502 801874982 895226245 491834327 520792265 676208790 381038429 858148871 330176222 384345411 601713609 880845239 322035001 737264566 937105505 373746042 40395101 782237005 372504690 874719501 484742603 718927243 442620232 479750639 953021219 70246837 321220623 697133997 506423318 94137408 457080092 545958498 1026329170 204783600 237200552 403056947 461050173 717143515 306117362 432617701 972777129 789146907 973302935 1023949366 1001801071 120790376 1003650578 345319827 861877177 443740070 927134797 872009729 508136115 448980038 348496034 843057213 920773659 369023069 322417188 354386154 399771133 1061590133 332673890 171036586 450914090 893444144 518809777 1026661406 76904345 541815352 404976356 1002525227 331818288 991781362 282683262 283655998 823336091 156897948 930611895 709074985 509570910 515484657 712085811 865338194 32255907 15553339 197182406 1034727749 932907456 139032650 683884927 1010867364 883254050 772435848 314829516 577764324 108935517 865215064 934465776 822934217 122366463 552661671 539168696 483411346 222431831 176704792 692714071 373376307 564953726 402079005 749256879 810326352 1014610571 546974400 932066255 744350173 103857703 102438441 206435992 804476740 548136068 353307114 167093769 793205188 131016436 413684017 430883982 501756933 371144612 69163107 726110749 191390971 106294550 41444956 335641367 609175644 271776107 1001573419 997689627 115578073 671237357 259321439 572995426 363020824 445976426 765989676 606925081 282828064 472726529 449057147 391652180 765738249 976861325 235006588 743452176 790346450 997925549 231797897 983860389 894213712 778479400 178049724 668600997 613890727 703398951 335619878 933710370 610606184 412313993 362582192 503805516 1046390224 31952964 820377372 970056127 601174369 265706057 489941075 773477193 303222949 360707330 948875526 465836420 482170698 626327816 72359484 833212398 812245196 965960999 623132011 707832058 940569519 302494371 981980384 1034421032 852036764 913468963 141065117 123080182 690807570 1069813783 955161942 185043761 75589103 1052773410 956383521 358550426 32314812 61299442 374815854 318639734 34665699 394511380 982789966 676309019 251379768 311486971 625841211 581109087 610993479 683647365 171141569 115350615 517872653 389368196 599318949 835028385 857613361 964151318 898611617 880484901 480733281 669457819 831721122 274484543 1033856682 477135576 848634043 411775520 1002732851 601522798 782383120 329129017 238240155 91764861 389272642 61793925 671990120 676293787 116133411 595758313 636857687 253208884 989290079 1050526559 415793133 652020393 852880690 122417037 699815655 180746272 471988834 414055147 51298211 217718465 211830454 549621409 683931370 379937495 723688559 36755195 921034341 838168461 961209224 865676214 798897008 362193681 192798024 501734667 838605489 1060044923 879154639 245926474 245052933 70755086 735857727 546001177 290343546 546309936 359254515 212697969 50566734 976066547 456711834 129483962 28411626 630121465 488882055 873220453 238549440 18647751 659536114 542040953 42496300 97444945 597292403 28568219 645459609 900383183 164085251 6908405 923489680 460824502 426316566 672976769 933949561 109175465 116733367 667390889 874775149 183931066 448390337 5315438 666785029 619476945 578153227 284024132 578593155 210989973 347725303 1015712258 130539564 37220936 78526777 319350923 1005775717 539790645 907871781 650774503 493164013 536765127 578466487 600753851 1014801991 889242105 835655270 935552022 589972003 176727290 104495518 321950538 502604868 117817713 374036159 350908457 230732038 556261445 224028786 254041791 238026460 10750169 847198779 46509596 683401805 574502364 488173618 148857630 848989175 216302748 823044493 428232828 553854029 351692544 1018096734 742570690 662978823 569052563 1058424846 3072645 321359329 119749426 407094314 168269723 469867097 994008358 800302880 152214032 705736401 52000155 505452124 618025247 235161683 293607318 159233266 64501964 1056092857 809898338 518642723 861190115 59006603 310551352 18345056 1061447301 872859917 832900407 666206192 347762786 969372961 907397339 147286892 281254607 12115992 956343265 368488262 248779961 124605256 463491388 224002883 441757590 613775342 541042445 493530422 685897370 931599593 500018635 262161564 15965570 491557729 79479440 237466178 977459756 439911733 103822956 1054441412 723832791 306012663 904468710 150246796 1040202246 559958457 61206045 759458387 377873417 435659054 74132100 210734805 787747030 578138835 767544221 757933760 771796886 524087715 724482043 535570947 512051324 578996221 612429517 186033224 478663352 657149900 422361072 360656226 7113197 834607987 996221342 221596627 514690802 425454552 716166754 291289309 707581976 994865939 1033069352 215598290 210192123 852381474 833030351 362154036 601289596 344770703 23828912 587005410 960115674 685235601 1029566878 136404595 226011714 642637683 516319873 445607393 201801582 977818708 644124264 236651366 451337314 1041480570 446387395 127159147 146009293 4354168 176828492 658627680 266503586 240191937 740825882 751022845 936732669 331553203 421284118 347471124 361344850 678129261 42908387 916000521 364074646 84332525 971267436 769777374 936211117 1030263158 793213912 71206658 116177606 246000843 639529687 709039966 374611725 980093163 838227396 15078892 540993590 722395667 180580158 88968590 723440632 453030522 12222301 1070164853 228080808 331476868 724814868 56762926 558149398 759690946 732283717 274748751 774754083 1005500753 618930666 774538275 138734459 889740648 112378037 572873715 304919713 636995661 918983041 479884262 332846743 123993869 444895445 660498088 544787569 421500599 736085688 423011931 955832906 575908307 861608302 14895910 738775667 839201820 348386944 446065850 293427650 207542307 699722252 555507213 411543086 368991525 600096151 701396400 33541210 3242190 173051124 250870337 1058835089 156015216 713044359 614939991 258394783 166580643 201249794 525577218 549436150 15019046 819306611 42954393 741660215 997468784 747500927 830953799 395363906 619682164 9773680 567177920 672964452 724396996 117708317 663030330 835879374 811365433 109204702 17959333 636092788 931366601 856946202 1033500527 249574625 606386623 994319302 267530506 772970593 799907254 832806155 260790223 879460387 799748519 661600716 500166511 225642357 708562826 308507817 117916194 1029675630 1019709079 220752320 968841003 717894595 837795929 821834275 642581026 51805270 518554935 841009457 628436676 880908015 907322701 702437204 333295220 726315069 744760413 295354787 350253359 994487953 671665521 708806456 424143197 591335661 962764635 1002458474 1045324483 176305635 178914159 449773916 5130702 709933501 150751498 941025365 160317434 218743336 203479411 299037471 1046073905 696515667 91441006 795593258 651836169 864402347 164492960 500871517 891008765 650228281 626989516 679318786 163836960 554607094 951547421 275729062 470037314 183678315 824173101 525367391 452667009 146741132 606464034 482462032 786102945 188749536 245086421 798434102 224629574 494445233 281341603 147094365 1060243360 760022132 432084550 154872801 880846941 184679473 683573943 9273188 853465948 713300123 113775095 586264217 653435023 791644816 1048808448 646027566 514802060 756986798 1055754936 910359571 784263862 1068621799 527069431 923496879 515455126 543941230 219912972 659147021 500513933 637734434 200943447 306872746 1007628581 29295453 916466253 566968954 403312671 429299159 780316114 11276681 960675348 215677280 870112079 14392964 911609562 727475017 147267584 101165565 756207290 900205865 878897808 222475716 818307889 817370937 42645437 453298013 995525929 287255069 357006198 288154495 105610217 386715951 409739092 711144813 120381093 337328430 1037577229 268616866 514370817 352203173 112578429 468228095 997456900 256736033 572195782 724104478 851087312 190923289 191132035 92647070 782961665 726077575 937788307 698055946 768494571 793950382 75872712 161068491 93832181 233102143 787901481 897814478 287901148 841393614 380884450 247833635 1017193890 275643743 703614275 285948344 328043348 124365042 221998454 480834925 681357040 245196140 400691995 587470463 27738388 372007022 1027643940 972419601 366159697 882007515 770037321 587932629 21691642 1036583329 193971508 370407752 452785711 566218213 837386239 204002462 574398223 403459535 85344365 423904029 1042369999 643058633 582806201 750436130 81385368 307371097 747014882 415945559 404807053 860138484 70167568 907645769 659383053 16172580 807999499 778169049 825471491 779457691 570075256 651258522 797234997 711335232 496151890 962065930 918759213 456862844 292302776 1002624012 68423229 758981432 906385669 34550617 879090261 297118724 195269991 1030219551 249992989 621851676 664532267 659924912 368221911 635074955 921129362 858527289 46907235 491733944 364234279 154652649 562856028 565319176 886459608 494077173 255068397 580345398 15077948 987579944 371474576 1020533759 508046562 342150903 198636245 320783470 72302569 500390432 637285087 463768969 33042751 462483944 798657772 196682201 368103252 295456659 877138906 713043170 612913930 228919702 691644008 899091944 1014370954 1002217977 55149096 853854652 345477428 691752759 691011365 454383502 856192374 449292713 267527548 965984553 344912705 227109525 736103487 445810192 665038552 214180021 886081744 426943311 615143268 491010166 845866042 248687499 353978238 99696039 903439670 906477456 1036039841 12339185 876956695 221540600 673110275 48204739 762866890 758596058 826721480 142487795 318044889 73343688 919275561 866361999 366778364 107139355 1061116800 942680349 209072239 972904395 521633751 880882489 319956094 381887555 830490790 978628599 606014019 875716693 297833270 996124146 583517058 804827130 808922609 90471527 734316326 555185491 193103224 1023045287 124065422 361030507 880628325 929006057 886492063 533351345 246110260 762084921 124716794 1014043762 770733403 336502071 623304167 41609585 1031839652 111622709 573425019 67579978 225064835 968720569 483817460 30611052 329050531 213080066 469185874 407637575 19632658 272538058 502969121 275748759 67794960 990789835 142274183 272726064 828619547 790516102 550881556 641909569 717285639 1037522923 902779254 408267054 149352285 819990646 284755155 71226286 237788409 39304817 716078852 1032961580 581420534 56077139 748170902 697920737 704984966 1043686388 929150159 529667303 154868715 39270191 662903503 213355925 255088331 555680832 1013610030 894891300 3233411 881975575 592881227 247573830 945520253 929477289 144428330 920093771 952478000 32578153 805460390 256767995 871649417 1021428195 567204690 660399203 1003764533 765838982 218716925 10973149 519972011 495066157 1022420277 1040550283 706921746 225310327 620989666 1048308898 996699244 476202017 188509855 1038290493 341918643 208027896 430105072 684593899 947307909 1063666443 492978511 829649179 679874993 856162403 384073440 889706318 221239076 394895749 338182867 763666994 968655249 806384255 310577616 372785539 859878626 252844256 952305573 489297471 437070757 842911196 434910304 168311663 387333264 935160450 541810435 465588762 839127395 479360886 572607858 239743279 385889473 430907610 539127454 1038242892 370266755 166059792 589582972 298915609 731333643 1057970564 761654480 583786798 806736678 454110958 960669039 709061531 445840768 907281705 667491809 481619622 30455912 893607078 198410444 255770252 1017855399 211619908 245481866 143193027 791461189 188192438 192420358 377071867 181845384 777092796 269670289 736656542 555093717 459751644 577588410 916825235 543687505 353786920 414955750 624898933 464294056 287763937 689343625 172884112 514731527 322232844 327229464 810428081 785007109 981330564 513294180 257753263 839232665 471058091 301558509 1005121897 150456640 841096138 937763307 990702687 582019582 959235986 766472881 399437008 105715902 221925111 305605903 808811096 279578723 946413797 557738156 745711478 257654936 373654898 360993672 479513136 714265176 453694043 168318739 1016021867 311220862 94815575 915752991 483668737 680025932 845051973 216919370 943700906 734977451 765000608 153597555 299762206 411917597 284138605 255004692 158422435 464365402 277508942 833708673 939915928 271572339 920951292 940304577 64535615 31519959 958203848 125259787 267817840 485692566 362470948 1000405011 317558746 1019473174 462603346 549065387 94658774 745341440 637330077 399188961 442845340 213093865 326087890 828864350 54478138 242889648 501444653 242879667 882134683 640687833 848306568 210815487 506594260 524058146 392424531 737237169 107092156 424581310 631410633 877103439 844966490 682778050 477537886 778900642 39712883 345910121 569181438 215131549 115670557 737584489 549147321 1013248920 807916313 505753346 393991204 813032155 438756112 388402955 214087823 1046796826 981798202 588155905 364164362 63752461 327097351 467692084 781984439 669615265 179525177 489986857 400684145 504703424 942905100 858547409 95366010 533335680 727304488 5243155 213627307 446205803 881488357 914598955 598071194 929768669 338214359 70104826 560416612 424232610 791274312 925882223 417990509 312997543 930807065 626962441 957927947 80047580 801004837 237004567 891829362 341880030 1062256318 629976515 628190360 845322808 236863132 511572886 673632224 17058404 374884655 88461932 930362885 97707252 38917323 317265709 593090745 626033416 695975424 564506771 616061937 676429988 231647663 865933894 921891267 697483236 165898779 954612458 598570628 273140200 307062566 539091812 700201609 409736034 467679125 12742390 45556922 481512677 804463657 74594578 572176949 703659535 161403444 1066643559 453305468 71835178 616294790 719069165 967075616 596266346 621612062 795752332 173341067 872231159 434668175 899574975 71675273 406537024 468035946 98812539 112722140 900382099 475046302 882214958 781922904 875689047 985136178 626951776 758642519 484898248 577894242 824606573 1012161335 817558114 667702796 594865636 686050748 309679993 50916336 142498268 112578040 1025729862 701141189 821734864 381290826 56486681 699158332 728962140 291522310 185447796 580780311 241227225 821714441 362799398 63324931 51201509 548300860 392601301 354702357 252901631 729329971 441227318 157217407 949840672 776914288 723535804 361993776 355769251 807263325 267864662 291907987 513499427 900246215 884877787 251376159 771623426 786764305 763062367 1037297952 259347272 230114574 181036510 886405240 31725680 809101336 527709088 253820371 311531262 994652253 304380525 640891516 926859633 186161249 977998848 516083108 142470886 153298886 983398111 506305009 710855277 368821511 186632754 239520547 134770 701273543 913188680 730527698 865777202 4869702 969742144 749955082 129468966 194305392 291055155 763833218 487091248 723702520 51373617 183558025 863730800 549925839 885963434 874369179 358276730 555098466 857750834 379997007 547499510 269100800 1041250336 1041405435 668837768 473930138 743717546 900461828 538181150 172217487 443124264 709141906 982535282 984136009 355886979 404780791 810624718 34839717 972648891 517562673 223226293 210380891 907739994 731185344 1029942703 163591555 762940804 940972383 826107643 321588273 638439293 419846775 824961950 387272556 504073943 5169585 1040262660 261323430 491328474 195363507 445712283 546562379 121020602 819204108 529539121 716644173 226890261 221205406 544274411 489542351 760518020 397637756 752266527 873209918 962999720 983889004 793573463 339659773 424447513 146283915 729532186 645117119 977816877 495819273 414071379 778236698 576060458 203037758 326312126 574776804 422315912 520189447 835432280 663205811 371667533 1052616719 274333672 610536007 536193276 386950992 1062903060 216212888 801392951 558044793 943670975 304287915 163354246 53289432 468396095 547517243 545590207 100742562 535248955 835848813 101086787 959816742 456315338 425343960 958663069 492647244 969435913 6126061 12153223 563087358 88912562 807858222 787206873 904713760 323737704 572891361 579495203 621550309 444142592 415493763 898117607 122875858 924883199 974882081 340059227 477623456 24806098 384442074 129916528 49790011 732563305 1072830434 1057000222 650814554 306696746 904808760 1017582386 510162847 394139895 770138416 598050243 246432437 27109502 556422148 218440342 250013972 698968342 986842282 195401042 698890580 965726530 996392849 44607893 348540045 476950165 1050262894 12170794 682353890 1573479 84860190 931335504 668225314 484809294 393229856 535949240 593932827 335551890 108818520 447027758 307037750 418108894 722705542 309477096 733620121 260152824 719796885 911663819 117167860 215682362 560214613 568276631 290596776 430700446 751242425 329001842 587227269 727208312 684863407 211143238 926758485 949147683 541328870 154786829 860681870 280330459 916759298 741765766 385952555 914008547 406288441 1007034090 989987979 156004279 54743883 956262497 264237071 871364031 436367237 846086833 718404436 547693082 239353743 436022519 69194299 826840304 805198026 744938568 749835352 577033160 132178300 532196545 104453799 861748027 169856589 1011876835 582282356 976800960 893434487 853358085 597871946 670372499 236379172 362196080 529686144 28809229 414765654 230769210 113568747 717756260 1007076098 347209929 717738246 793588897 241180034 350077794 770043076 175913438 111501199 497691231 905399654 176742200 847750201 282733847 266102987 784678926 824993135 507196878 264093657 66252372 57750219 860041462 782318076 149575161 898856385 398260547 636958984 641335969 793928347 436879492 25369987 751108128 1003824105 93851536 897000355 288132691 774909988 457971021 615436892 487841968 911552458 976788876 565421189 764502827 337912246 99059546 430509844 235829087 994597906 426060158 868274753 253712744 359833450 686922315 80128345 67832981 287763324 556414770 259504333 306615905 956884479 586859819 643960653 641733394 561953210 432696472 28258320 110441585 803073141 169634934 429910655 537176159 947332464 905973543 476378224 960522703 449986595 493162204 63413869 304498303 707465256 634545852 965406507 78768526 625894822 954909766 509661569 350630284 232775256 891458498 619375768 256595648 112302761 15443721 706689944 252563268 121890058 854372950 504555234 143496039 64148929 2100683 447457646 939821669 805834507 26978244 786213143 853048392 325941185 8914012 67784912 383604011 287650585 882470185 80513889 147814432 563842004 314730866 934617809 716229561 758017307 319564006 417547307 190520129 1056864130 1001734022 387310177 179336071 919514024 180730622 237727702 84045787 454979497 101651802 490574516 889718687 66506553 22139864 848931764 630283334 279077173 249872616 879270715 374690460 402845565 691894167 954342011 432357448 947485309 37045378 236555750 923293892 176500259 76996682 872298437 838901171 267145491 761391267 919946405 1010422443 529352689 193339924 424610941 872106624 374751204 860789663 724320610 330511889 139624522 1067305321 1023376076 779275030 872788912 766535865 172526582 124367112 732430539 706630309 85459300 885126682 1047181242 485870060 830494183 249021155 676439164 949317491 809240401 279938606 9134630 1006606024 26523045 800243085 479857911 421860019 1023368203 336516770 1021245981 176802448 955848192 850302095 895732251 897275343 614979672 926792602 29111786 379062451 398242137 517526731 387218185 285399111 877314052 823153970 269435390 967435184 60073689 752161979 299282866 264706562 766727101 138143961 931577008 528095933 449779358 564707998 488244207 724393830 51360279 742429059 38419301 756056078 498757898 157864326 865216227 398953040 1006048098 633592986 97299412 796851899 463364772 1040323695 278921797 811115061 934382654 964139350 975797666 27751937 554782894 627776050 940809616 460533163 611773877 781457239 845496505 350729396 129931540 375352715 488643970 449293782 388604072 330435529 459440840 253194161 779971538 121264685 541474262 892346144 1040648854 748853065 408163467 597188219 470714003 577653472 973296933 33348815 611595946 1062053788 584299399 286117368 611287082 429633886 911792436 661210953 699388751 405206437 13316422 450138530 848948193 493195865 289958714 433471151 719810482 686601857 49820206 225467336 283409469 875415736 915370550 206824177 42638336 475055819 738642982 660995691 670667712 459015768 288961500 430630319 488502020 894105056 706020266 967730603 750719407 944251194 504355684 823275495 815232674 330249615 1025689328 731206302 718601220 991829483 498689739 556530617 765623330 37328816 318947709 289303167 528453674 197748950 968568839 994442687 204692239 1023739703 611074092 228959532 673057019 224323803 535032222 126337155 84734819 976767576 136310442 345827711 33907434 1057554193 182634444 68603855 768902148 767324006 496276348 189526460 642167369 975364032 686071072 983098570 267511530 189715849 746803060 1050441347 140166321 780595976 405818763 99760344 620396796 593852769 588291888 1054946689 372193010 193878118 760021275 1060642309 132619962 301094683 996558506 1072179994 736077353 57090898 498728513 988396953 708512595 800739172 729121995 868160559 295557953 123621856 821983864 1010476992 533252531 205725393 700589128 747880313 122863399 1053797491 403901354 681106368 387828247 133728650 272984162 322855801 228048610 928487195 87859443 58190602 168033147 1063159367 45942664 860840926 511836837 672871510 722774678 68605923 107433116 38823168 272140404 148680809 293177952 1056680483 52546962 654909839 665817024 381034803 444568440 564228215 389331094 981295603 55354441 329224538 527763995 691169694 797563671 183846369 667651354 188782722 13106589 467595805 301657323 504884121 578630736 228209498 599524944 200191204 407145889 152376961 363673218 255977465 873932812 521730821 886434418 704820698 691814665 952946876 1004551134 379742866 806795031 155619682 411276479 221690297 714683635 30933724 913746226 562166959 1035087150 704183874 670268129 459796295 911673185 465685553 979074998 103179321 128664907 72600014 567262075 407662155 23147265 1015672830 370885620 18766258 580203462 937967003 106933813 688868056 960711744 1000075614 16405491 35249952 191887119 786584797 529326661 188051048 375458388 1013597800 187678887 593060494 790435421 360611047 107224136 44051829 14685958 619431477 192391371 726821399 219305014 970607696 243620035 453119450 185865036 1054641639 533152320 138203694 168874960 1065358632 762985140 785732147 128811825 559495266 357772183 779118571 50630678 679728781 858101102 1056748076 111513968 367982943 134791941 97643735 716910574 843513551 113354577 207946875 350210636 702468925 775870684 969128909 565384054 896111300 984994287 181961053 36210151 843396607 626389434 150967708 517112695 30403266 88611860 848493650 395237872 161284031 759399319 402069460 244310016 329889521 853307010 642142461 635065639 868668214 287761405 736596691 1059681454 808132594 1055213267 778642633 604287657 741641526 1009836166 917082296 678216729 148343705 228239994 542707757 672871636 128842656 480860478 693605276 651265741 378966329 786512016 301843405 338938115 579539204 385283788 76548904 802789167 725066478 190241009 891122457 375577467 7267499 355588647 543349088 936775774 808456524 99589441 1007349012 518745588 9842382 512230494 782375151 989853010 770967506 993530344 181708300 111776402 279638622 8679216 541293887 906373189 488189823 461458092 1048412350 997961831 788134020 660843464 885789893 800147241 996385400 16122715 413632401 499537812 673414187 526355813 442859275 140090391 214116349 561669763 579321809 837431422 658401681 663907793 102506758 641389619 620048666 261077713 218619703 917031951 769531245 647668345 859668176 6190947 281738169 248443354 10372285 256751789 740797294 39038255 536177582 328093423 818246466 1069668575 960795590 57667824 876578892 341332447 456838531 252525645 453585095 838196021 152024682 512831441 875792779 226602828 822832650 248024293 193354383 187533341 371097383 772869979 143884431 322651526 613799834 780670007 91267354 686439999 441610159 367896427 232736552 457234317 688485453 303910771 916553386 337947064 224395920 263253025 243583126 804217943 1019967131 83896432 540250107 436243036 19669947 901426021 58802386 1036360791 719359727 163370724 231307052 317512550 17891843 75496596 119476539 969041909 875177242 239852462 1031468080 117630030 451659210 360345017 330467754 946057970 684119625 990055238 414904479 877424893 195646185 47422084 103312271 731302089 396232425 81308383 587915315 922534116 387251250 922349584 1068205770 722599579 112341352 295198858 748548067 885572529 79863222 651617552 160139328 759113482 182180288 289510159 480740147 246450577 1023990190 566487535 161028087 1064969985 170473691 577904201 816566053 321828900 533674044 968194272 1031863230 725776120 223076597 169197846 313636681 609982016 40941697 648579537 926873410 281741071 847768653 733934283 244991080 900833165 263843382 620035141 715161345 589944018 114363477 794005314 798584953 744622109 13720155 738935151 359481948 115171679 160547140 1024662507 31973278 959723495 675643379 666266979 278266111 865707041 199552476 461436602 816430660 1009896950 760097148 357215938 188659920 215816267 317421178 374451803 13368686 257174955 1012263514 317255025 1022836920 1035305057 201905066 1069289742 388370047 97342675 878268191 987906903 740372529 679459384 117664909 1071831060 106062372 57477646 282320329 685903744 283685363 870090649 412687797 950561761 48390209 896313889 73125141 151879212 227390451 675722453 449175848 776550418 938446136 443262397 154714738 127659377 848670539 903109316 930925941 22167704 473513796 810731509 641957938 1037890895 272968662 170834993 758595674 169152882 608861964 560012649 17871472 353136970 267382949 1063277353 430660199 124247145 742700935 106856575 418983273 657013219 829807544 562511368 393020454 1057404954 725170619 214685005 703071140 378130295 593981524 149543915 1012576194 919631932 145243878 916826401 711088344 887593137 706749496 1019429487 209221302 343311438 854649392 452691003 480248302 607991447 223128584 63344415 573875172 352511687 1006585899 728336363 817650070 135078133 425783027 229412066 531862771 711795974 652234434 314271237 746926743 853554066 671922780 997419580 260928529 623614605 539881705 448669517 237209037 288671347 784852255 517990891 801328491 820243146 1033723634 56763227 1037641427 365108555 221101850 1060307344 706844045 779793152 734545853 915259050 223574706 976451140 290096425 71072434 379207365 723097324 765155328 686675335 660778985 220603367 1064592163 250594081 410168326 686723164 283171536 215048211 195704957 953179592 270943222 816363283 1036801313 991482642 229159648 61096197 286933889 295773048 16514225 898247073 651758632 551251244 152731490 24081585 358656609 920534461 51810633 284668261 424926836 433439007 614473375 175174408 314780984 133135082 1071831112 947453649 513308586 661948813 492322879 463416151 954336822 226462342 65504950 284299497 404269037 519666195 1007530443 450040044 906727871 487731470 205270056 850310738 90010502 549887576 874099442 477928988 402997326 976070186 977244960 935771443 187315611 290600457 989614819 693316062 512026180 460477664 647707348 40808141 705896726 199481711 210724261 989075980 213935600 393662869 239266310 606448517 208681240 923486341 548297950 142383754 887926339 574634948 223287301 905817482 702468496 579442696 220775726 10581780 634514959 804785061 405896070 463079179 449759613 655111810 307270849 176276690 133487271 696026832 650881350 637842932 418115802 693767802 124183588 1028030878 27704340 340120430 686355767 15857583 451348917 406502531 958136544 615617067 463806526 686068682 1026301758 937880574 427842501 247036008 623525737 294355567 822647044 362569626 306555550 133967297 966386106 423644591 464828628 315308783 589730374 385416577 717502021 842754427 352561567 115174293 1004112163 558884002 844542367 203840278 841155377 220558325 392772309 823735487 886607553 642656153 771238931 119544294 322261576 331351712 628775137 624435523 678523950 1067675418 46896323 394337633 199989393 121410341 19862697 702391561 629589077 322056217 843444512 172864131 127389325 76915196 618152642 513406839 949856568 536062341 188979792 796789251 553247044 242444052 577273650 1000089416 665840226 148264369 458145916 409795227 890062221 798327291 629311099 807343742 758787587 77679724 897859260 310786969 761299373 650982121 1039417123 617224011 146277126 132092056 466105785 354251412 999495257 234939480 986663942 689075589 459720147 167102819 667950764 557833338 366840316 166007119 967930875 1033026731 332914456 307677619 189291510 36731251 343555447 754778858 460876671 311349956 711850864 786051392 434707675 302260630 751632985 480241880 878078198 165008234 1041496474 665705811 398395337 635118898 867766259 657199467 731274681 419204350 556516320 204427234 712614196 281825580 249241626 983389404 693064226 835909142 101107001 531313503 671366001 798832106 506323280 286869536 851194286 900253917 919128976 525507187 510150889 458221161 502130354 177596120 450687598 758812095 887730506 552464285 763970322 871411160 715520165 69133962 602560377 486524787 372489860 1054066979 915692065 936063636 330292382 681653709 73308861 449884751 596658095 766404861 1007256740 1049783131 255183597 164759773 106047026 1005033954 878617722 1062935278 55297678 642857891 165885587 46087556 362888693 755108542 732146538 157883684 1056602032 575201220 498538786 344693323 149088755 984798732 271934038 680009929 776732178 123118166 72250942 153307417 975112459 191342200 246689698 76405337 385156966 587774509 955280753 633885645 30027972 481704773 744481670 720972795 337736140 320028783 549331467 929624938 660993712 205739416 318412240 552010011 836913691 413276270 902072906 292133515 4685500 972255118 877898765 490425204 119544550 456444943 313067645 134683438 483397015 1006708094 931144410 175639515 962881556 224755923 709301017 544493701 950912048 603041084 658682337 297437428 7092546 773504198 531096635 595490784 2951554 871874859 418843348 21816356 660604160 1016933327 256159994 273295451 419698635 357525493 759622210 275787943 4236136 610731487 517980962 226256931 1037447411 597607707 251123256 179339459 656871789 32080040 42439743 172821969 194389299 331605508 304766392 379900841 54626439 255360449 473192497 255270537 924198286 351514310 925855851 11336527 837683107 147364511 761396761 836104738 1036890091 316022804 528943924 186172650 569141743 524616935 568911536 893420187 448800633 639742143 608510053 562090729 436837304 1006205481 428726535 29480695 1051072551 889563912 63833672 971637179 300380979 883395221 841256328 676938183 3621268 687391361 680387036 328540568 515681724 114426284 317683698 992297543 589432285 666251640 134798599 480535591 350195457 486211062 678795582 227677550 23395642 810522248 243679940 1009073661 585988356 285119171 347470363 216653815 181441270 909642888 467438924 329540700 30826941 868271809 212366051 838162340 391840681 182246472 550246313 83501162 92317817 792629438 815326394 182371648 129173537 150467808 39305212 70563949 468805426 385518928 852823714 23770612 1032049167 93688366 600356587 318747698 573270806 232997414 710661679 773003558 529790642 387933425 376406319 37404330 596856391 59396465 904411785 998907921 242016116 401986183 258870321 645552038 447658253 1020744282 378302262 1041037569 568117118 730905311 241135125 1048278824 111417373 51454371 184624027 752386208 1026280393 269928636 153698498 409520421 408851561 192424759 365240897 178512714 271794865 817450485 199795379 686575353 929960453 583987714 16021812 607180756 779760701 398162351 1000238038 797080961 1056639628 5788786 354365948 1011074037 686112936 64387254 800760952 233522912 94581903 278904372 37809161 246822611 879411049 923396846 811818938 588094739 1006964923 271357825 682311384 1018652547 293957818 744812129 683284563 1004537805 941569057 791719406 553583941 133895665 165026421 881890079 621033753 783930799 584787546 736558376 131691260 79910775 191886965 674769692 633942037 837956154 604131316 1063610656 735705850 47041555 364689234 430982737 889921554 276110705 557967190 16699395 1037779961 936893344 387299003 10360009 100627649 827094872 493120093 647244492 651719875 233043863 449162504 322312025 612469599 415983786 31839331 914196619 1066415940 495488126 680684317 59472065 245715018 434343436 557816816 431303737 96516191 493791948 528461509 1006668650 91298053 705801417 704401974 992946499 240069516 976302577 790469542 950499062 248775686 354433260 678432487 1015928580 725696956 125101239 916251059 244859970 817444249 898500056 548246782 1029175453 52751267 1031601943 1057801233 754415353 1042932265 717681304 345343952 675942442 871419196 338143612 754043967 997775511 27258738 235388208 466637254 591005893 174506815 856310485 705959747 891738683 912960478 779799563 427942789 712183258 535651972 213006397 262867694 286056359 882013491 714622174 867621866 627616464 1051301268 904189911 1049775715 255900233 840362094 592798046 589487914 137535231 1060612223 798909889 964199731 664641853 883987358 189753716 964761665 588230238 130280785 497698243 315699986 323029538 291521101 878746205 502373606 844668794 1055769942 876504690 444414264 748044216 117982999 848330455 595239494 633585673 175922581 1026739037 112528296 134241556 914542214 482839529 1009946803 399688296 53211627 782192883 614223783 948682825 814459465 12779967 534854333 283265738 365200005 1011449861 584225843 845289232 635526594 540889641 889461827 798360568 532029181 147138002 1061114077 25277915 10932898 357428066 380611337 456779005 375510682 292292446 42756843 1031249914 327039873 675602645 866706092 535700462 630904612 257235956 241034496 908838121 432476092 108347059 1023292403 713977859 771633736 581436646 247997293 401930785 522680860 685065670 561151480 427102914 365527899 689576206 1026321372 30425660 188624310 122064139 448094821 243743738 712981487 798333975 214530997 138090630 363053531 739514903 357926712 180767762 7578075 443002578 1048687214 720142158 896107832 233556604 152491574 471097325 567767583 18637744 263411717 365288043 247542868 635950197 246582683 445030402 9718556 198283623 192702145 261842805 373329066 407380918 451701445 574140310 488457342 665796760 526888830 697614084 438503876 813065979 186454679 905305645 247654035 765188083 41428712 838885988 258897187 332001573 989500043 853256480 1020368996 356886527 903510386 148875061 1044194772 467895460 951321885 311846596 581684181 61022554 153059001 606293993 922529520 771683763 950821887 195545779 190852687 1009889193 1036987497 196185816 77151640 488218817 437841689 100190887 972847316 993879853 749276512 783500629 304757482 772890987 316740153 493083711 433893508 489148024 888849718 332056408 604613042 152236747 292562587 482177483 302595485 94500360 71872208 1007123147 211847665 789853969 744542721 75792098 546710630 2498350 840610943 782518854 387218918 568493722 934029252 426147869 1039849432 945363728 781432419 825707712 707704784 124241625 686534179 793944623 809386940 989796449 19305826 574380990 197507298 40482779 194492536 563395783 1072214818 189522461 60626882 368442668 278978611 549391779 1006531647 552099088 956956457 918647077 953649716 812875027 588720282 328942522 616908517 465288643 843789573 90501767 711261184 1018651287 875357372 316948444 264434360 886825394 757846123 258273865 522495744 535082236 177314660 147627895 56952984 511378851 171168635 148919879 1055089931 20266853 821353403 43414481 697848772 317501150 874625119 297810955 801163124 340109455 719763286 42372088 39648938 736559578 705319599 581913626 1050337237 417454778 334516023 932938003 915158387 195298695 797958874 28086971 437464102 580315708 153665322 507157643 1002600891 931506573 758655152 582738952 300180262 563130689 500870730 87487504 664257291 831994888 939655020 448546852 987818175 77621810 969917604 97763422 1003588356 560112388 50469244 612974578 474939986 269257206 163356399 621930944 350837322 733508508 40053902 266226477 54668267 12298181 51927509 1061267896 625869806 258125062 301627656 1023459269 170007560 186588499 866337362 139693813 126093436 962310123 944594423 414495962 471992513 694690626 487531950 1053868189 955982420 506418083 370086172 690009059 1050196734 678922892 705919174 177230404 484768440 768142727 15167513 559077090 760714924 977124718 1046755443 785670818 600227306 419062690 186154340 63180837 214245678 369945896 917638264 890313082 1006388071 20202520 918173595 29289178 620675677 443912271 380523178 393624625 858044589 552906751 204275295 276408185 401380678 413311145 965593862 46906680 71917808 193012634 860672879 653673412 985067819 359840868 555764448 404011689 548577717 905431667 365225946 872265769 556921798 585742125 170031468 713311152 477584261 783426323 667691086 475862870 917123526 487319240 875663227 391510584 410794903 34259390 355980130 586609372 509090354 510568173 154314320 695099450 197935670 911560705 536922024 1027647353 537952059 1001070315 309884728 804029400 113847644 1005476584 778007069 344323141 794526573 943802093 20116310 925457831 722838369 473827871 673478329 266041276 369004141 1036034206 510094740 5009276 53143677 58584890 10417513 105545682 548746854 390046198 607719826 56251039 457498548 643813298 638747981 710315128 285639060 823309137 427206993 1046662182 851312841 342817603 739776706 818607658 353064807 617077239 477923716 805774842 428296607 1069987508 595198995 235838680 668015655 997639614 19636989 944040241 108010522 309453658 753629757 397249146 1059965259 190883482 311778935 345122158 845572534 783751712 132723852 424432351 960629227 866882648 989442871 501984857 961055206 724084869 990991211 593715194 383528854 522452331 249168468 583025006 833388725 746767134 348548070 1027198848 874928625 426750280 1014236423 141975142 191095580 404016446 687503371 1020711915 979428331 727896431 312434180 491300090 80014977 1055887437 418431145 602560786 1059361172 486096076 997770625 559278452 171440477 662796750 949186044 995622119 387392605 79889183 751515996 801008973 328696695 864758711 972571732 541667057 103196682 864101314 852820948 547942958 847951001 261074155 949941048 480937706 503588240 565043897 1069607682 143851105 624221762 607998792 984849499 248010983 150628341 94445023 1018874359 512529122 538821360 959338796 684542491 149264106 280479149 841479031 174138763 166683240 499875832 978955547 381438566 751481154 73249245 1034152307 378159264 545992777 66251296 577784235 419343 512544055 887346682 345240230 80445893 116368812 892092992 761958442 461398524 68714297 797512022 21953696 259780896 170234367 444380532 22074651 295337690 385259385 998390649 533944136 175575567 1025156719 973602782 800007186 899568023 247014148 1046175118 306903310 109578647 445157885 646722066 313692281 571057305 1011204207 289598482 507565629 809832473 359592878 245877964 918235006 174858311 742944331 389120836 199781351 11760657 173402425 1051642093 367935235 266746943 210334776 826241541 295752713 617393885 350661720 965805796 618262099 311732175 495825258 11149934 733289504 1016314319 638293580 188877979 979736131 566373973 217627412 291844503 523608249 267536561 121026186 494304766 119400420 235172565 376684936 341525006 837676006 80063183 682331876 852102826 260253583 196230380 514801857 187523559 252202051 375883886 587449099 88778995 167951096 50415323 926596777 652337843 332633630 121182740 72563881 388140418 295677214 758348687 669139630 697191930 694092067 1052205542 359721083 161879196 1017268083 609650790 539912270 101475612 159278597 1036474832 344192280 227170457 380956419 807991070 87207530 157695030 146479263 1049348991 436692516 773561723 391293175 820499035 991905290 28655356 60072005 416265547 933555673 395933849 241344919 300984525 683359233 792104388 144363572 163427974 230516732 707749602 500513814 844241262 167561284 194277145 150487717 932295994 985261862 276182695 587221576 314086591 381438322 808773601 488869217 395202150 471455027 950419930 64466350 666282071 763478161 808767903 109610239 295286529 784175559 150441331 61604741 169752602 648978244 623669620 437536830 959872956 617984368 530377567 677565443 182256532 86840312 955686543 180002640 957589079 320239004 512152418 684570013 643722995 986200229 927199030 202224890 529600629 576053814 1004586977 767945592 437287375 82904168 599438148 664486206 711736476 509989171 467972810 770054838 412421322 553225498 552445032 658945635 187592075 286325304 667498124 584485803 158135221 1035357505 318021960 229084456 485554186 949289620 181313230 269094264 369217177 993018416 1048180395 453713652 814598681 677628098 576116178 800027472 908605390 136230141 884574576 198832944 356457539 156185361 43776703 136477141 426334106 886946774 476921116 972036055 1035982047 816772899 426771411 529738074 648137167 949444243 377399479 744488308 22843817 961139259 552843809 959510741 303875650 449663279 244426727 315488575 353111234 147950079 95066215 674076048 969997047 167731318 326549713 793345544 897246113 459838689 246556944 874521520 837482677 279252267 245154517 572441314 493303327 477575377 847788734 792877481 693487409 607861045 212884091 934566720 489046019 468737539 269437518 423040771 147560303 216907404 385952204 431803398 253632333 129035210 31205321 768298805 208620407 912126128 847840783 482166878 536985049 886977885 4110801 283772927 991244812 19970471 643222645 468194482 418396128 642027807 253725718 342956534 649771169 611056073 515707515 537048619 29225173 547195015 69600560 167735338 176266739 546357024 291281125 452392020 330136081 820118960 59420721 860529877 222054670 41069337 285813960 1026137505 494660507 849399457 14035443 1007264099 626898151 478541394 414207923 735014321 391978825 721971594 516849845 892015016 88385083 493319918 412771024 99840202 958002655 314955872 351326677 458047284 759160893 1010786477 208799699 972291983 638598552 294637350 16024091 329224084 722485851 550669192 247522557 784702291 125289970 242033053 95903979 183749225 468706554 636786909 665338741 799603941 799729017 430246757 841080974 500848697 943747780 952313192 504072060 399517749 76209390 1033026656 10783244 942555257 124251913 699406196 966697511 980886974 551140793 493560396 79539135 680996841 152115022 755212142 191409700 417020439 832992238 973071537 689194855 347444689 612403818 178653879 152434307 431024334 971703973 134036078 877583382 591049871 949602090 190395386 854408526 376353772 406696280 833547694 718455340 1001559730 878731972 89353289 346147836 714687715 1010430987 781047781 631115908 791061592 391185724 10574221 502132466 1026617810 642151742 631615022 39356658 141855739 246625550 516681182 245618976 577299149 324794799 381058144 644363312 70563335 564938269 548224918 1002123259 416868682 428753849 217190537 517257047 963143556 425331236 856137618 42233769 397180176 591947145 805089129 4824713 376692250 485608392 497165548 528863396 578197901 849735461 242180123 877894773 348805705 606798417 776762125 204434029 144181846 1061037220 327458458 795756911 139103756 382742252 941622945 797911802 911268248 590055864 675853294 989044561 532201079 694519346 661078388 130502529 817533909 833533607 333894072 370517681 41084137 1046638453 747934597 809393108 987414420 962684944 1065438891 888805037 1056877271 702509518 914509923 358340832 860686257 594475679 642836598 419808956 148965654 856724285 483782816 236297515 727336070 338371748 138701389 847938031 889334717 960367810 616232772 788364239 193205442 179812636 246411015 882448463 312673334 183531708 207605313 363715558 688679883 802363436 18421208 80826907 534391533 376452008 84092334 264173929 514475820 981633156 651752617 629533577 911892828 217123439 644305105 576889235 810197254 766443560 1069948406 893637048 869598636 358511373 363304802 454478803 1000188157 127253716 849288368 1030635044 904724808 970010266 638880169 992177830 747317429 438647245 180544736 813831324 702283366 1039799204 660146194 561681198 358440276 991375675 656862331 398785790 346289581 654339229 239319258 809892424 542101782 630458543 339771396 116403845 976423295 81767609 176359906 1069913773 202209298 416173863 736425422 511681719 582641626 667223346 59183801 1058435133 623644281 801615 1020558546 849598991 354739882 461481133 678622534 475891093 878439680 748213413 648083900 860964931 299781601 468106630 315292693 46940237 873585490 30220891 428433811 599357627 145550904 616961943 754474083 830745418 392531296 122829758 604172485 1008575781 318745915 667868191 739166502 368645851 101670119 1071874358 759065336 482724323 269015425 37450825 347709692 712378364 594334824 578423179 525316146 565572681 575015048 650841721 813294092 816083063 490672512 782829953 788518948 94100170 137432396 1042220600 297061878 774247796 154073276 440271291 578868931 885428940 841239346 933614754 47257869 922060837 1040933125 239603372 331652031 1004027101 619524760 403211333 128198755 536204295 665536083 846395396 313429134 153854337 898548290 534714637 708909110 153930927 415298638 216751418 431879906 343998500 906044757 237856929 305933582 393562021 949842707 502452055 191386368 517505895 757327949 225525348 290465481 596549803 452673332 874161446 694495119 778233078 360619362 510742945 161563502 624193110 625686460 731870873 134355572 745987277 811932085 695763281 125225819 84399449 467589576 894718251 280688738 382995444 638407331 953475548 544075091 453114355 21986046 492029210 5983781 493311617 405901642 26986367 985303062 646458379 801430689 837830043 185457188 245993101 267713205 330924370 734582453 1002193943 524677059 851874693 536818571 566867070 11050803 15362363 429652302 476338002 922449096 197076196 22492604 72366330 362494395 312530031 725260157 431370266 683503079 224903904 552054387 495280911 215177534 933462022 737646553 415378099 353967190 73937504 348247362 561356690 480057607 780285439 96627562 547918203 484931905 742514428 378331947 912741326 104336857 343934761 443564606 933509459 732316710 981935041 88033691 936655542 725804777 25147229 161194632 876538207 37948348 367356235 834872578 170125651 533156703 383366860 512942663 642083743 975236409 229932469 196935822 1036879792 541799214 581462694 223871054 544535417 987300796 274322650 2449600 403363548 196633581 309929462 507419737 474407546 478713822 956438348 620516995 747915415 1056254267 26208290 874731902 372499314 131516643 570590896 540010763 841952165 320829536 188397792 352117358 892194434 290549164 1471617 865121407 45699947 987797334 404250360 360168361 672328827 409867932 76232219 1051480743 752919560 339593771 730817901 974874806 1062599743 718889882 1033016982 326739755 237342328 963479318 949658181 444068993 187514113 633095483 925126616 1001597272 817709625 875733475 614576009 1061333576 1041938770 479406147 814351391 369160745 844252029 72852519 379101197 146505828 209737640 598928500 1005376596 28195545 615460789 648514702 636908497 608970760 520349226 807825718 423649475 282542855 726926278 239712633 406183606 64320104 588464433 1004508130 272287587 149596210 135599583 885373798 644976582 318519956 383554575 399734306 84649151 69442270 525084986 890522939 137476540 19839025 442810620 791490638 204356900 446159545 114249655 835925951 39582711 631620500 473195745 870338415 625974408 1067864931 958765065 114461649 743211613 369262975 315909472 304094051 639249601 955963480 717716891 52901744 779455514 535957428 211154276 996444756 284251582 791618231 1072801249 1040726636 26692474 429425004 592979887 170676419 912868861 642513510 994034530 845400000 874357376 841848173 397632424 101975590 575390721 216241407 988547382 1010133509 274793379 577929583 371838398 782754750 69774085 833544432 719198509 519427588 846271460 427475068 194117879 115683581 356103908 748853167 556184403 383886020 344586757 603965345 274377496 228481732 504897607 993310046 93977623 901487224 951955193 343200310 695696179 297452125 809326675 307255564 150636922 484570059 731016870 760174882 405803360 922364500 683917653 913633657 673641376 1028717114 66102911 723337714 647502613 622871144 834852382 3400185 1032398515 901030652 120396570 631782096 543641538 280023567 948151690 830035212 499280097 590302074 891039009 391843349 920069313 102148827 479812535 264336379 329970495 382603683 474804821 448145043 110010415 932577758 673829408 236392694 403180683 348668522 884748225 715077171 1000543478 67777276 512083874 1061756140 361275528 161016484 259326208 775867740 782263669 215748046 247818848 923969480 870287371 902913325 406344354 828349926 791953884 328216189 205061791 989906234 639284038 317113856 1070444034 781473318 814734820 710593722 381749358 941736212 477218906 154756040 796099624 1060050989 740953236 66734425 984692029 895657165 74005469 870961280 628377624 1064295206 235802957 900294998 850767928 733365601 781287611 117419218 220312550 570167755 973617641 625534617 547644650 980770055 621690268 825127866 330025225 239528212 821439755 578222400 733323111 82763606 916101207 452984469 427193687 899572681 12536942 582261441 567647269 755039685 946733715 182119888 560196104 811531882 105369230 549793813 914959857 163993572 88962122 770386575 237019592 660348315 893177072 859501014 759492344 683703082 46894192 1017171748 1024429660 306358304 213408927 588901114 470555521 854190357 557328662 675002253 213979742 1032375892 240964854 692869280 536834618 392038393 906269065 529610364 251167276 833821085 257304420 833522927 100369380 762078454 632495507 2990176 183999217 1006059542 425487629 945168674 66402501 667788182 731446407 79097690 604165737 656637011 557490074 774086550 206368541 797712506 269292895 743393946 438178601 613535531 466256483 777052854 333000592 809505493 822196657 371092321 583322824 695138620 351473377 802923523 638420621 358546138 570350968 274592112 39908757 686366403 969804461 390154457 1049751295 815136934 1026904115 774134064 325259896 1058862089 764588621 645675348 838317137 407741779 99956861 776370503 862495623 641135024 685274439 259146101 328860311 719189184 853141294 715778383 1017146776 133901341 603326446 738237373 386986627 730535745 334667574 737519179 933232655 362371856 788544815 889673319 174799529 772443328 948880234 699511599 311967118 347690978 878517653 637376656 119396413 79505796 147234009 836281053 278676020 1044304762 614575334 575490439 587990108 990064893 482535131 993260567 554109287 565118806 151724393 458833325 249200533 14412075 915375208 836989427 531253668 781045214 679754603 888297134 614918761 550436374 503576621 130394740 306617623 122112519 75306358 906340868 553298024 377665141 992881419 1013536239 622143285 159826629 884290686 1047513859 148853019 817296201 521665328 779963887 334687020 945713672 946969008 47746382 34663413 332283695 583981976 606017808 880414528 482134897 598219379 839776538 439621573 966803232 761401184 883823497 250742463 395058321 755834513 105255128 403789879 411426198 667448560 315862461 82296076 703392786 787690045 306855281 723792514 408579950 131310225 891551078 962366815 345117343 32407896 179488067 76898953 866481115 85226918 651234276 834108479 742175150 75771709 293423132 688798242 863166674 736054767 604372401 81705226 68831796 953476378 674804657 261689699 599580430 803034618 159682214 1433115 601005589 571468788 939743770 931671320 179227976 1071423987 1050958126 855811829 676082071 315054189 484756252 188534399 153890350 701036518 734021469 908561938 554944027 597475271 423232892 183997754 1009263106 43844483 98666687 321923351 122255613 452411300 727766970 569196707 300262432 626499533 781292001 124846128 340772967 256568316 622056567 1073523711 199492312 670139389 150458972 833688452 174370120 1034373319 1017314493 299135693 782340597 443687417 1027036505 209212605 333922466 675110396 107157797 175967253 663885855 984988236 125241689 585982207 261899978 346023451 496638645 699139496 160478708 95873517 1067554566 977577422 585720739 723643098 901297383 971639009 403863552 769008489 432925044 773253787 234653095 524830928 52388402 820098634 135353788 878145703 65362480 436192002 7634521 337677717 360155823 683008733 1060171511 781404557 885730358 1019758030 810896291 930513690 230485001 891686899 190892426 932485943 365071210 705199857 1014049393 253980747 249222953 374192534 890062001 259092793 39542086 665140425 133727358 470280818 332584013 1010392838 539546086 334249217 579514472 1017526331 1061049168 1059120036 421962466 654113739 466920475 974305886 980585657 836104665 928066623 601570592 600162959 331368794 398289410 91220069 653744851 310899937 78922306 884079849 983058227 121407638 837880923 652191650 153201335 86801727 303660096 482317423 359321444 267583747 895039210 878035325 1022405944 988724492 79672144 278778736 562792508 958277445 273632731 1011807780 903994695 946949905 798534982 286530433 595838138 243557841 669632011 8600645 146891731 657223764 678577177 977464307 681019886 998886092 569269954 146297168 804673184 506496710 634122354 28736775 344455915 638870384 1004357170 1007121036 618985816 544643695 104602862 277172981 386382259 427656919 811199243 481415502 783286036 547187274 255078289 494573794 260988341 919307705 487919304 1057972267 1009774462 668498414 628725401 607528105 735660538 870305079 297568373 260980021 848598771 891086707 504716634 127831921 162149252 43763753 269706664 1069272698 702495958 327048170 392284805 660940610 870450278 216863779 627501681 297301778 689988545 606098025 337839392 464214954 241930930 914447086 914699774 193983705 262390255 586291201 159710858 206741002 45596508 198686833 321893548 800208630 359436100 517397849 422168020 52395703 57875576 948752292 124152976 809789642 694535274 107138731 948905365 140686289 1045376249 619100554 407741309 5961601 6162461 348580284 634533630 847694640 932042075 553576584 872913294 712354883 842641335 323909961 34059323 60859470 701977810 516937812 475585260 568627356 831710681 226682522 918395846 3054691 815435193 843813742 343748638 194095791 619734536 748130107 915018476 489236926 302123238 217101606 304446885 487042592 754568741 901615961 900951306 163681031 808167406 573101102 195248908 453093594 368851589 662968244 37730010 720750680 948506723 466701585 798802453 1071637813 292366577 463270105 201569210 439511150 469313104 686156691 131894579 1056305597 363932703 471216247 555202814 641334999 890553165 974708056 866927838 172302059 120698916 1047820635 197640231 405769326 944694904 794427835 415986509 447186007 914294326 566127614 436987016 442518061 456617412 28058145 152950654 488251539 732373005 892380899 305060042 939517232 286121798 562965864 584526578 49442233 526833078 95177693 988558718 616548984 331649954 46226064 411347624 1027029749 569790789 760931315 170828589 876895800 535763679 456388897 519574100 855453853 905223363 955835723 648479231 1006079647 607243220 344636816 475020209 344449960 380242043 717918566 203352563 746013636 946740930 247206871 485810942 880377587 14766125 303508970 290800834 820199149 688594207 25452246 332622578 535986893 411085714 75888103 937059990 642224578 289461831 61079500 1016000330 70958560 942912315 579782312 362150101 827047940 1034162423 379348047 378187246 692087331 331844380 899737539 328485408 359956382 1002983277 846511273 79915714 265816617 178377688 51641414 857509690 684925043 350207039 80064098 813802450 125347437 846389516 646004979 1073213760 202009279 510680282 1028803714 909349822 161047768 413484850 965340091 133054892 874028527 88621550 141975061 1064432665 453630858 826849087 320743383 314387635 797448920 309140876 744692994 698124909 20863602 217337877 127924354 718966144 375637536 183190399 602192097 635606693 21062480 1038439576 743883719 604447813 835069082 833425511 357759466 108759521 315561950 128482544 565593367 733568857 1035526848 382371603 175509350 897202976 117236039 480245013 948158376 618195686 469482668 363354083 790696906 895413385 353827685 13287522 567100797 540055485 1009499560 1006516237 268369499 363317066 801345273 464421428 192608769 934324469 520097088 86352211 486573164 220797546 757173569 343137357 992953928 215068805 90880965 314103785 850987879 508978910 487440120 684141540 150548771 554534514 903306143 1010417824 470033850 27003039 118741346 765583624 1030026308 211467719 765491738 295807612 529740513 838816103 609407106 458617077 736017770 391090713 124204718 119158547 40414813 991838293 620001666 957380609 758149283 447845859 60286670 1033253947 219049607 1024522565 929666890 67984466 482735269 888367023 247119027 364380589 594058007 721964086 528895784 411630979 719013930 985517098 911638892 743669097 478668772 193669756 239213559 824419191 953676700 177620266 703071517 301529515 256342745 408558326 964880364 194557084 244561863 304843985 36921230 631406091 982343419 150046589 635143087 268069975 492312534 483331536 1060750042 975366172 950512528 56814327 649110163 69720680 495761668 234967870 487771173 89940295 223532595 651520472 259040167 642822236 441525792 184779516 923267431 70273089 547477042 448269104 787731427 513762885 854629643 905705056 463350741 852559895 424212930 735874745 870167580 134614272 533210078 1016428389 657236924 766314164 789986536 134122213 645498803 60389046 896942538 1064916417 1035071162 384344050 611214096 975781053 1033772671 662399375 789882958 626946501 368187497 678375769 785011531 648941195 758828113 239183343 1021735536 665267513 252264580 540963590 725846647 574022007 601953388 809664134 195884652 639229714 598381752 855223863 805635110 801038376 342578086 312204445 401934413 565718346 287602996 413532580 677721685 541389940 512646328 136393985 1037945141 485352580 612908722 312682371 986925577 326167497 1008415174 999735244 343430657 319964344 916506906 61215441 736255499 617453944 219928153 855762231 784338834 641336858 296172743 361458012 816161369 529882035 19003519 395610121 31690426 516544490 351537550 846090924 976407002 866765362 845741327 462640730 137238094 611106734 174854274 65566020 566610473 623698786 277925216 132257479 716934110 648976397 609533697 853034153 104465028 219180282 748157332 818521323 305879846 1057134998 95509669 398552041 743426665 826095407 1056341777 630154972 95722319 470675560 655303269 783059864 4578496 838621345 628556156 565933847 864609999 65219168 556984473 459849532 363236764 557428791 619979601 176307282 687685759 414285417 112364340 906079579 253522889 764948447 160841888 25345527 606424745 649517943 982070454 986140595 36211296 616136877 644615944 494384877 375506070 1006328491 907820954 539847764 363329027 942598713 702289595 859069994 112662085 108231395 170209239 620764361 869603739 954650305 932349974 439566290 348138173 366285004 543387224 564764591 551134300 896970507 509952455 213149277 775829307 1025446412 909367168 58578862 346950430 908049527 453916839 410288274 274444293 864295160 809606699 83057020 869926656 1060203581 458428132 698825956 152997770 370850051 506020490 457592853 176988800 162459960 443231053 268560819 457435421 716955113 300836110 634429830 251641954 331521883 870197657 854767410 249517494 682091376 127508066 192888869 758564692 185400791 322962149 299837187 238678689 693272264 598687085 82009688 848249955 374567034 715529031 822968019 64789530 292257940 65658087 814402716 646547950 1061752562 1064595152 563607060 121395841 907222755 60380783 195713289 444516687 663331507 939543278 269982163 259683276 113020136 591574506 647867374 183060494 698249350 326652201 509609609 1059428976 675702444 769106657 275624028 583080626 962367672 968274284 520199617 601210255 736156043 728326508 928906249 478331972 744160249 679766627 849919673 96157360 265723351 661761260 304185663 517154226 429058956 429389450 840661457 1013802213 828419660 655995348 579613137 535160672 170661510 1005484387 669468384 270189540 321983439 519361550 1065395056 822648837 696556259 52923707 703842422 1052220695 750159484 507623403 533273937 728068320 133321313 318704845 484370547 460386578 716686251 642010735 172798151 1009152944 87194453 728689588 45769083 900333796 966625698 127598399 594267265 380468826 996438584 1042642011 594371364 327252377 75541108 77783783 1003375552 590107948 715985 78748135 320055167 980036676 164736965 86597195 136332979 780824551 537564270 794833294 834208521 543716996 33801150 287966294 804214662 501819770 355940281 579005538 432916066 1071434074 476681506 652996017 263442020 423353528 677187267 1049236788 600710131 983513997 53821539 659108125 224792763 598574969 923288325 805967956 630183167 728268075 845980635 854791664 55056410 563839214 771003528 950304534 615190134 647112640 482607281 165225698 801554302 83761168 446567442 349740635 406576195 840848453 874491602 332767015 408131570 1046990286 691367462 223606928 876573293 661718536 524771944 132564877 9090939 153088718 418058223 878221433 1007446734 772657649 858735218 201553173 152811561 172177836 767777244 498687442 93109334 457900728 336415064 476293535 916981559 68091356 664471096 183192193 625055752 196152347 977163879 1060051067 807527768 1060831824 433015406 788437809 19115703 854511906 837293901 191827578 626595918 448611716 448572832 665060097 628961041 1072591106 809434659 606575818 567841703 976184829 648141676 502512882 665951066 646125544 469987021 606358790 892993018 77324386 579377773 599855017 294792410 318585492 760854097 753079501 1034760184 465620429 357966532 493235002 829722707 193458799 234162945 624908166 485743847 682506673 140334040 1033810387 827983553 298485662 184614447 246027957 66466920 545085514 961710550 514079647 730431933 857564715 199613173 428879489 213013403 45439027 203833163 673109630 244171256 870736580 354799467 883567711 1070779149 701221948 738098920 654225497 475523373 539494272 98453172 896456262 966705098 586200545 1060461309 202099953 226919659 358416518 1017953927 1007919500 495274564 718967792 562590968 457875914 1067291667 608158249 629868252 261898326 48718187 804648963 115318039 409602943 196060662 558522936 814040969 598281721 756345990 988821463 384167805 890506426 676540274 972684776 113576926 142525494 576481962 126589646 965693166 411708153 647397956 976324228 388415794 938814659 277932029 373627485 202355002 1002413318 396437268 229058110 1023956577 278174058 77560921 361424181 251017701 770223137 812667802 432431284 918053297 865123100 301350407 871693018 19724230 1058244133 699962782 77176109 960227203 864477149 668804394 961950358 998406050 994538250 1006432404 87090919 580167947 826619503 335345948 506612995 547074644 12986778 988947813 663807946 586554946 944003948 551114776 188637549 751933329 960549999 885670654 56648697 88301067 815596092 885474735 83243116 599825348 349691805 296103992 332523429 263399455 882545833 673244578 586157584 929990958 739712877 617025339 683226592 412841980 473333218 958273090 100986361 160665678 208449091 326609435 354007697 707879855 211118135 789150182 966302345 169116720 52604088 242593318 734460131 294829208 418185164 742395956 909686827 320738705 738765483 67911973 688061510 1057938310 558852482 81899744 383384319 127412700 631720852 129233205 423645876 1068724537 316841743 633227153 624556448 259712772 564299767 1068806786 107938106 393811904 2916646 515558741 831739435 780949051 277460233 876777943 995113798 584957935 134156819 529623086 581261726 300261526 155827889 834143307 208586987 595034826 930518097 715138281 122732214 42104694 212672641 550001215 1045086 371620472 630784997 740470071 385037373 454126083 463122975 339936605 156809949 305639322 478592993 672863833 209175497 686377129 425335482 648641355 820883117 907719751 997139412 226772806 99863177 206419977 879370742 992979250 1021161198 590683197 842362727 437221134 77226887 1044064111 331967314 648346706 963916248 808315030 479993492 776031551 743943707 126234752 270561186 99231413 120086680 514019920 960409796 954264050 793969112 851953577 213385837 28912593 339150800 1031816417 596283724 1036160083 972322453 817439259 908843911 551690393 374059993 368388016 1053582999 1050115590 79634891 1047628860 588047783 803948996 419156452 643651875 574635541 1057668201 903279232 60156484 753015787 559926848 555256528 1045372912 389250115 154452642 645495644 263487668 117848590 969169839 690617778 731824350 411868369 347073855 441716523 719818586 843961037 357687463 192699546 88333957 450606541 536115150 835630803 964949345 744691307 671792330 655254071 537055311 332991241 841773582 252524538 471668047 655397506 330552865 348679100 819756623 137157084 23306023 546609467 836984167 376826989 975917195 773401250 845055734 656612269 278892170 735503542 195769140 1035449966 641284075 957145566 109688397 380756275 754800993 323112035 991702521 206752000 544858735 854559412 327837987 908022637 983053912 653141124 284684570 447033234 731012750 419739147 679869892 8375945 87133431 429090482 948482923 998071216 994740694 495848555 80435842 233699697 370276146 386542805 1049207330 22530932 335156347 567517886 486209158 206644727 428419366 76551070 829401579 172834531 266333027 846421180 706383242 181877591 657718392 852837589 175177281 814060579 219380037 702949757 129280968 735842337 368912963 782960417 1062277532 1052978594 35686897 330470731 323483459 252124200 609424933 184491930 854838178 1044470655 27564378 531901560 468501144 528486335 819907743 618093253 569729083 775382162 1058104975 873626288 1006501794 669463311 460290627 777947096 45000708 434352462 951431286 912859516 457830380 668959496 888715743 250629399 497065346 1049038176 828751426 833322487 171567017 341771261 247732327 154219924 492334924 483245811 456059259 940707690 411292615 519567881 865126846 698321288 152983534 79364598 764706172 263941067 844729043 506353378 569692794 490575294 845967779 554887859 95174948 724768517 672950052 290099036 47924334 270807833 36906892 253421451 470744584 657587878 110811379 925669589 331570900 309814057 953482873 475736874 566244904 478835513 875888505 1000854521 944521899 1005292444 308134986 144282736 653869504 718603052 561887174 286721141 360615158 1059020638 396470663 595974896 1029724567 560697240 651637460 622952845 712413646 833940662 630547751 383286331 433569366 682286058 663583663 470247823 823492068 230467168 58261833 586649694 1021550391 1030107581 462842935 187559504 701416468 428024483 127421221 779545318 596299907 20933647 423576103 888994668 1001371785 1053346916 1051321780 872142314 736354435 673720369 638366663 626087112 986837921 639646658 6951650 869129137 819065001 621407713 748792405 194917172 653630727 296129366 329719296 909685625 267106843 1007412350 116925868 878243049 637814996 779887970 316724610 560126979 812182526 733891504 531409661 136665141 133960288 981027211 373061481 923529943 962680758 573131991 195778219 37338832 888809577 274565212 811545993 408980971 1055029534 496657547 981241275 195608525 681633144 392882259 931503401 913204938 771595868 337624873 525510813 94709291 840653198 227244167 756124799 350655555 278886597 238560282 751605998 813250460 135808304 28670107 69914208 828433989 139935168 640152896 111793803 892198141 861074408 228664583 151593025 757013016 670898192 706880447 200614344 808486223 127919379 486573028 160378693 725688014 696536593 479156942 842540254 659172875 270039713 308602350 489472997 996934257 403785397 499739092 918566456 514264981 911878411 151886179 585797453 342230480 1057386285 588068037 58220252 46924108 718386999 845204792 945911544 445262265 104665466 756683370 1045908068 196612639 871413184 213287117 481475392 247967113 909903262 925445458 572768322 326800885 505755852 931748790 197634576 164682115 1006436458 986909795 1065144088 225198939 37626023 162388444 369391926 244696936 774929540 45796989 837338696 286883026 606384658 969402810 324315426 922059797 720019143 761545174 529877227 570944928 440828502 44050030 995758871 1020588926 195826549 543978053 194049590 171739172 653809389 795815295 954416786 237042063 462979125 173262670 526303111 432098421 305861788 450759371 857872498 527412464 791483631 210996637 524568568 499143849 475129409 787430722 343951573 438138568 721231477 1027634070 151539241 171237670 155033750 481368950 398897201 236059688 765654301 776794912 393097485 362439317 872749013 556874856 398094942 1051090927 626664229 495052873 987717128 499772557 409946487 503523625 297950175 392297120 1069407967 177139899 911376065 252683074 1068905435 359800953 548323523 600245794 458893369 241149594 506978751 241638454 203146768 488349492 591757465 728991841 240622611 806525968 810320167 581777691 500833497 631498902 675714581 743479026 230542782 665372468 415902341 376919761 752934203 48433412 774544395 758029219 823506596 863548468 643877744 190962911 248080312 178415887 198134432 665363672 76186317 558317950 725536690 651154335 226689508 823714866 303865491 677748813 13591307 214156758 563596156 71165595 666349074 408442964 107134810 429196964 86715173 572675341 47016167 194528877 1022162910 33985615 1002686154 1066446705 52076409 959921442 17040769 368466948 1009464947 553956936 643553982 973004671 545224145 414934031 391093605 24916875 599395119 987481751 705104488 826497025 439885006 255496853 199206221 736800747 891987571 421736235 940993391 984890970 561085378 678153855 23443624 449250211 553991239 252872066 746381147 543462222 562922150 968558340 364705464 174722785 661117172 614712340 678667668 877832566 665840036 256723930 608540885 580539460 993802701 867451781 835063213 111468714 358530225 785896926 550363785 541196847 244523022 813173890 1068020470 366765299 756350155 661553369 464383429 142829396 788826252 43104779 279282228 61379687 744854691 657624688 476987428 255414544 295832205 587271515 6036029 787895400 751627501 75589402 236218815 683178982 381406258 576806712 969218716 1051957428 199268141 241390205 831198072 612576556 259513919 889301171 30311438 986754435 1024591179 712025837 107876267 131436897 513984663 303262364 155731732 824123891 916235726 138733822 1063119071 652903700 1066847604 69404458 510345470 739417266 640692421 162077331 233032297 419822123 1047698596 617746138 858958714 252555985 349043262 23354422 205823773 1071839155 250970759 869635003 557242935 701823691 894730397 1003761325 313084968 1064762781 109715278 387051518 133524398 729396142 580974787 616652684 379231023 978656322 405470339 21365144 1020708396 1014612084 141838601 1053170268 13983530 1005155527 726457535 987789267 43106054 510755598 714920630 534550324 100862395 559402263 892132537 525640943 640898442 656551667 20229367 481177269 987402153 14100014 239409701 848744091 940479939 381688103 240856607 1070621377 986252133 907520204 294200106 327728901 2259520 971640410 984777587 301665939 1027845230 179578674 338592040 923667895 122208990 64357031 441704435 83830395 46412471 422474864 37476101 815371167 836883728 409896870 768314972 86046062 946421452 419050411 869832747 1025724786 168215836 284793951 20532238 882874929 14233025 849179915 547368361 910992566 379242185 114771159 202612150 112448061 482896423 899124693 968944626 652640023 817691020 613432245 292857356 510639901 229362517 578544443 280269522 603965186 984212875 737503120 996811374 362781277 411660790 392670911 105771167 12731366 388667875 872592599 590751236 1027558635 276490154 728917651 501332858 560997910 420795668 18365703 39248846 143977673 839342416 889685845 356263452 611143153 565906169 397245258 1047879438 882861262 490261332 22350523 610050347 509852966 105363865 428916657 707845950 912203044 917334216 435536745 628946858 1065210785 315164101 816525509 604200908 494068057 670417381 393156616 201313087 360359640 932940816 661730852 937329507 289796453 810767727 275227000 699834993 65242651 496504127 549178147 647217551 960625667 1017183236 472072604 335987501 436651564 423012384 795525743 258014410 193135631 949519237 652570348 167282320 298702144 696886262 652570892 149184067 358299848 941648255 611981179 78080336 209396885 226570880 337966752 664400175 89196828 956115758 540196563 731024564 428190101 571530599 472825328 312048368 1058891227 453157421 200988213 235550877 724302642 1059127986 431953930 1006486185 890324385 402658810 962190601 795438115 1032757031 906819947 571098753 194646195 1017488997 413843734 17003783 397132228 957765235 123874847 709135997 171717459 21537752 150398161 806405819 896988056 371307676 290856965 871404177 1024545659 543956783 701354785 116496922 150048044 514050263 942963890 437251722 439804163 536475570 882426319 697202459 122078492 724791959 1057395954 66938902 309553396 666288855 1070925480 642497224 246114933 905419671 699124482 232929491 557079286 103058918 480995113 483462961 900995353 827315217 326475642 761793321 141730858 796684367 755641902 915236424 1055252749 476878972 339850179 213869539 935584169 11740838 647403333 90597822 686119450 129116837 132951499 56006081 528962051 840922140 154848260 695971711 1067343774 22504207 115566046 711539266 964872792 1067394596 54714252 172573122 466905842 718799339 170649773 595669764 214562312 812304404 362197626 289566606 335003596 996192001 674423182 41588772 959876624 327671913 249535945 802592801 311310691 301863855 436329197 832445003 779679425 98876994 877945767 972350121 157020658 176740346 1025627403 693925061 369834573 808232120 50636064 705049240 736655376 24350972 760885656 628401749 705417256 216082441 766104624 839625535 735643461 113405340 1046950883 1045646076 488399891 499300539 859340848 844156794 774166481 449701604 357704477 61225615 886616934 1033463349 315133339 597566831 609194526 706185302 831415401 866475251 164827757 975157056 87245409 779531736 814438972 309211795 965028659 388892126 870635280 473061368 120706464 370556613 966199148 442263245 747427888 411663140 1048031893 53495388 56028440 132745174 166642472 157605742 898853934 174371892 143701364 686488840 493631809 180088786 968220242 217337605 237676274 749829508 703791251 617656785 835130249 140798939 90756309 901108319 75227179 535959108 1049377353 1055068602 956071016 1066969458 50144827 493748172 883393865 979293653 286316476 289377957 186349971 890444823 600605775 775278750 317147033 617250641 592545434 649709155 267387150 497900954 685428888 989073101 633447238 936112802 944056325 355830263 189897999 44532027 539171166 471061306 165784434 504334145 779527493 137016717 62763210 502081973 207343956 743169109 787430439 483873053 360130212 82802724 756393605 241710498 56219694 1053644457 972464612 1073231679 718185214 215418356 744775665 471401769 114280079 337739228 229945931 1016465986 821062110 227855261 701998086 671483755 702543049 856428184 472994157 594669539 716026337 3328182 899482378 968408104 83079320 917545626 820326852 794640608 324054815 341639297 527805251 462163670 57531852 829025269 3114527 312118920 269039971 230172341 300806234 974367851 879090830 475218251 1057680235 885479398 271947770 531523786 777915034 760678365 741210568 7282410 232369269 498852728 681601405 319461715 270065508 1041111440 489193545 533606324 1058589670 264145550 636980415 719552949 601027436 268820490 522827032 551461791 971714183 288724624 490624629 800488819 700585196 965648972 453262361 623050867 955740972 745531479 131271948 1063176891 72524987 602938532 743999216 607701309 480093199 1047849749 87408021 478806695 73418784 623496190 914382074 757344944 756875273 683873526 404499420 1024053481 957028882 355030199 1007962109 915685887 137457584 712333119 44235975 1024231139 418446266 1059623947 675712169 277430789 81548730 732743552 323379915 619142002 411829082 42247277 884312799 329789275 109554019 25783994 129109977 327839685 228326435 653690259 735821897 9009118 289728989 10858237 202732559 503521114 4617000 532611672 568459125 827889478 829095797 988321553 233382666 282220832 907607455 493901707 486644751 698473199 55503339 499882490 368131660 631038648 673709497 925140742 864114242 6795816 185972134 425782521 329053729 816825734 452278471 173799951 536961307 790670787 968544164 341631201 16359483 363173941 720152619 281891557 596274594 108606837 346371051 36429395 700044217 104307736 115202942 1068675887 214594217 867182520 341867663 790552829 24790590 937484026 35343926 597535479 675513305 595712505 540867127 612553435 17927171 810443200 468472324 956589025 699146072 189024820 27235706 617387009 801559592 487969455 233452605 407312997 904849940 798120728 454571614 789820302 736842188 577767066 358047059 377832818 973561993 542635498 562550925 66419685 656669414 513214930 1059972313 788022462 1046343712 708970848 459884496 909429756 307956148 535420598 687003381 179889664 10216741 927033931 430529825 51613550 897875650 507533507 288497690 379136811 843651912 890896901 652669432 656929097 653442549 519006799 845532873 93661315 13488479 1039072416 665660251 411198499 622763806 698304988 75803753 387836399 376712042 75728833 143702311 960244837 574655571 961973151 993369156 96882381 38227128 987146188 14135891 80587048 886371333 369138592 483922366 579755115 281089196 571847631 457598607 561864859 1049488014 174451164 61767898 524414550 14298209 491974803 775705484 380310970 1068774033 50369632 171118529 500792573 301419073 663312659 172202600 500610756 107392161 615542164 330716973 668583265 271347994 1012898768 879468984 1063240637 830665933 1070875997 394871035 167769468 160643390 1048495798 80131 910870346 433483966 623146905 858368661 74068301 643846056 849358788 128139281 320875898 631485596 1001936133 700163473 792396274 891974909 583687195 976219674 1017821866 180281982 677552312 992180853 853185293 322471022 865925143 10385665 427946199 866109784 727252784 40326725 573119994 211063209 20229460 600626044 289319054 378513261 868944211 506835210 549039999 64936712 302963299 978949325 353704038 1027509585 229197892 19079833 591149501 692278342 12594656 12872186 1001765225 660303207 792376402 121288127 767162763 599608905 1014705568 408454132 175437610 619543567 358947368 441833443 476261132 864948008 1039880777 618713867 775401399 489899111 508233227 930003466 221656649 937004710 239176365 788429506 816355742 260994577 844961372 454364149 643012273 777276547 850122642 186682479 537827310 735127866 666086678 629292419 496965613 234448404 74561414 521843113 421906790 233817606 50864080 242903655 188773853 182528092 370054562 944318107 1027128647 233702846 353841793 294066159 77002607 912622498 625296181 306387827 202475940 1012278321 855302900 148363232 914086688 605061892 261675120 774749096 936073297 398070609 454301763 948846139 535653051 389002305 745630738 1059901007 957931977 637364013 226981402 56410760 288458997 777780884 458047404 792890338 811530053 485478749 476656201 874972354 629337276 251512868 16472917 167441609 841323110 651302749 1061428811 262557821 50478986 840229039 289482 633514052 748837035 431089169 700747909 711560054 1016455560 911044824 273492606 15388227 647955337 1000897590 953505917 873312921 274030732 115498888 30856642 1064793369 97763493 48936497 869337201 44406684 51655604 719516063 404635148 1041730869 207982427 937300523 983102294 895486552 829452900 69109112 315816948 336047763 29070456 1016495097 202289255 502644647 204737744 397911946 81080511 238862943 154020462 193423113 201671161 721395516 299007829 294565359 537649051 124693667 455219099 173267193 755042963 290571887 477169339 1014883062 1068402553 94722000 743818590 360252125 178257865 992330291 106876745 789118440 500086648 541850559 8491681 200818320 1044961633 866134881 134009893 515907460 54814304 207128970 341980350 261782090 407611408 239113622 843557419 623279859 889863038 597612290 290432318 598304089 85243065 920200850 51724757 289820551 170774939 205289102 966136221 585739875 651301170 747646227 808858775 584321911 830185351 82546485 917159733 572498 457186759 341332256 278601571 472401345 11420307 858636351 724611442 346584137 742387085 340098532 210494114 420782037 731654128 465524437 260974299 780496512 572317564 821767519 1024615294 512283004 239276270 1005590062 521078952 341081277 981353520 1039116044 590986777 114662418 693600083 671066299 961831561 406200582 903547106 379411389 587806318 408850871 826016240 249939992 37547372 772002158 914384092 604821589 1007529682 994146824 991912523 345124844 898369101 729394586 229820534 422676862 693525276 89176518 493132234 622738592 565146871 51848159 863769928 251707343 878888166 981516512 117056830 1009152893 18682742 1045749771 936515130 936436513 671336361 299351191 489068275 995261926 64387973 275023772 869573431 987104595 492348098 344654445 690009396 754429041 539026336 933236602 869615724 402765950 841315181 1070795459 33097518 779343058 159200906 1024213898 171430846 410327425 286448924 688410277 298205224 489580679 182226897 995130144 538017859 640541485 871397085 595083856 605459916 679033997 941778961 229041017 45597280 745672052 611655424 20338473 242829251 577417452 710165824 344566626 1057348501 194956532 71629767 637595256 706951055 854034862 392082603 750837664 491574777 729339227 1039157052 1035262754 739645067 642059678 526899313 121101049 577892010 402368824 623264959 638523994 542947807 984977467 1057723200 953081774 54691199 938642310 835084220 1062860740 605790589 423075311 964541589 63185580 133594074 326500119 325829858 165461715 52822190 549903090 1000133235 516436335 260209340 988729342 119561069 639950559 166018869 209493611 769239476 162905088 437571627 974098418 751762611 446134028 509980889 739218218 35768305 306662541 761320255 476563042 131349454 600087346 68404995 74841866 728529675 248485800 258306383 789280491 517464949 621891131 389884945 426962122 741322367 1022582617 685064134 304990252 760007630 304102585 250246846 904815988 731720936 91420087 257591208 560402248 394660273 501237402 536787970 491841099 82813970 600236119 773117429 841646344 295425857 461016070 940089639 193826085 412569239 467323961 1056898744 22801452 112021015 517052086 308389656 192416148 414419229 664518137 256868782 980886428 917674915 1041817224 92575105 783039924 634483708 949206631 476036964 47433488 508186743 362170931 795660291 165436518 47602678 820646255 196953217 731197260 293711120 17632987 740915230 686730185 409434058 461467955 337813853 198809074 280915617 882918278 273702816 317258265 991641930 963036329 306789466 673854234 479943726 357601262 192260571 780962888 465054418 448786451 254254473 234187184 380543311 242973634 650236771 186069638 296296682 828185883 541269435 981158711 5393534 834063357 317991655 147320095 458035258 710935709 738894247 826264771 477228721 916173726 624885473 182196599 836958260 811966269 566297126 609349250 80055004 456927270 285519378 164826527 774694256 796021821 456073966 291365711 242887766 182106311 788405772 946337820 45468408 178700664 883558273 1036594880 976205701 646629114 675372593 857465688 1051362932 906145848 36606963 899391385 207635993 992557038 95696292 266847386 84014534 323612763 110374066 974885655 634105092 531235096 454805592 182246093 1014544079 56682315 1060773178 1009971931 771389550 527291747 1011746191 278690325 721542402 1025640814 1274419 779709681 797780472 57353285 990287176 679055142 660058578 563472783 776255683 55253691 230798390 709547066 941716826 422286227 155882802 1031407659 215813956 714048411 318201667 671705679 1023604682 471867256 414359271 741001012 19529773 40643312 874799140 718715746 218510996 431343507 626268978 274923440 838422334 747246951 1049559890 450526993 447699613 681528658 108614754 340103478 647747206 822601970 492723138 7006510 297915577 417056601 866684776 297098796 406990879 789572758 753847049 221292934 324133938 628336805 502318189 689858865 503682698 788666667 585819277 832613682 691503314 783094144 520110273 43300098 504390208 981743284 428292054 1015791425 328757653 34381114 914640696 650384102 983633329 649982418 914215380 665509958 939869883 828694178 1056040284 557956895 685844882 676777099 718180528 851500253 995727748 358495928 25719332 485903835 70946368 180936215 153242668 328633001 883888471 445959172 634162878 818308121 436098874 706980664 471150810 938266947 160622947 1031702170 981695040 788167765 679706364 602695787 979232315 480451874 708460871 636907866 518138160 1056572036 435812495 972615463 687446230 607873192 154111507 1019131999 567917213 927113982 617760209 762355492 474866392 297124498 725592757 177268681 648451444 226789276 612949387 659577941 1064454496 599928066 126572314 340706711 145624660 199573746 231347683 665385580 717891766 880079877 410196351 358661699 60622565 894883192 215193387 366036844 1008874728 643023998 947199083 317310198 192041588 962834332 866028027 291357006 351533821 303605460 513686235 597616995 498210544 806761459 725512308 1038698389 998516687 696977984 760862366 337272495 332788232 477865735 205328207 527677333 459943800 558395154 12278786 642012315 655255952 920316855 736254517 112689343 912419885 448870987 1002131507 89547569 211836914 1059034687 164682522 114723456 55411197 195929161 857036278 572575285 108881610 126491324 954686662 750666959 836285330 523690611 152663646 435969760 797218469 184253319 995504781 38911340 211398425 439231687 934402829 771115099 638938013 527169365 792354834 349499597 543317929 294915817 1052622460 124118101 365195252 379977733 906374755 219515454 70406732 7292058 1043352145 802771877 593936333 481455976 989395772 939352881 451141795 840339730 170377565 753135128 428407489 449945837 8960549 37590340 1032721320 766913226 459497577 15998843 593196730 505331403 584573631 662004573 17980663 981084017 898155734 789705137 472687714 253874857 700696591 682927639 140534450 816623975 62279578 1030510355 185273814 432614226 380422522 620303988 410382786 175266713 202125264 468519706 551908521 506588323 17931909 804596444 984126343 1063178925 754700449 429506130 797255745 3895988 75235104 584985354 504698235 1042763994 529441622 430458302 383099028 510304930 748469852 345872364 907750217 473035679 949382750 854423904 451586812 666663777 72822807 374427848 827184503 305693572 875021353 610905746 781323405 195671906 566775698 711846306 21291027 588863937 754056521 936381264 990474989 174209347 58800945 922741469 1023146121 918653059 328426567 69890759 4203197 359346053 635957862 265636238 218217977 952276961 1064485632 651880261 27215293 436993241 693256638 295465155 899146494 326048623 363949422 595847971 13430828 363487639 684152731 371693693 666613189 241419193 487700230 788934814 542729291 1014589305 941034377 339694157 739682899 36389645 860526477 892342579 1034824815 342333358 243206660 314653133 345176691 6369958 495791562 107257982 433400389 501423067 894306331 812573449 171080033 317442659 242581588 954336620 693362505 675561292 226401427 977774186 498893109 288840721 495405422 653623857 480474786 8529344 318909240 454844191 972518373 279072905 2162676 986106533 260522834 410518838 655002033 399675084 67596062 307456834 469876414 990262842 916380625 328097796 523366054 867734156 148590307 961478820 647106815 723812630 439492980 585386018 257481038 869988905 180618479 975563679 103945134 631627191 461433034 1010917658 698730087 940760923 624797838 52145525 1073072100 11169399 898270187 441231172 615237671 478824129 595295450 172885054 218369983 122931044 635059454 487177476 367750501 932271777 565387845 499077223 253726048 1019467008 925072830 98696745 498897059 31239896 694016400 477332722 835651202 177970586 285084125 326751160 750099718 52924487 837749997 447879759 263437301 87039384 613036210 710100772 998406635 364541093 74142692 880640732 549728347 434058861 29393103 199201222 714040082 1033675043 774924305 509903615 324781248 275227491 650798337 204723709 548242593 998703506 226208465 302054679 971499668 330442203 608471960 966764791 525095738 445013730 316550218 608158022 462662477 84511835 604656066 887353591 350486251 562609209 393388146 525487700 20208668 9873189 490583603 693928857 574748667 556653843 836598047 737607916 40146390 410165636 730369680 835616159 669628065 304507441 227268780 302715117 697428440 1010631398 953067050 119480688 1029639360 589628330 256204613 28941760 476936821 584102419 226224650 791241678 251811179 286165436 244554607 612558219 285408364 348904823 1037528761 546076166 696820041 523755150 376498631 547003910 379487364 1067062500 936053417 420196953 78365792 964623300 484638747 731692795 300216650 353953159 402329395 16172623 56549095 263962441 467809407 571344872 477668533 777261227 81519516 1033409997 508740537 2451841 370638415 151015829 605287502 405692726 657363968 681199774 955385125 863345601 514376702 78701351 608639330 644678236 135750143 330417852 349273491 121287347 189580592 677682120 975590156 537320232 1050565648 589139266 854974326 354265197 47353659 493192184 926623259 654902466 184381992 573181895 938149777 1044541024 193907032 432404269 502900675 1055876232 911835896 453626130 322425793 975946094 77473250 905085293 570314666 1233652 453785498 926113127 147161515 790079070 14531618 49947785 478044404 267667631 529719840 780105671 27320911 950558021 993252016 156056233 944495207 507718119 900004934 636410969 827665164 405087322 658216772 1036701461 207467518 202992440 513527924 346364430 953829687 1004019627 575140655 937395410 993845904 24949072 440645598 165771787 594894331 565342078 267920441 27938956 521292306 45511970 825975627 560752146 994622155 539706431 535805150 770162081 1044386387 901724669 980765147 140309237 78038338 521391070 763449315 977408838 21504127 1052026905 815341859 759636116 661523911 266203634 267757503 45607829 238992768 943443824 23120669 869520144 57742745 335674834 452197494 78698826 143175216 685505744 696484632 606155385 749649671 759179768 960867460 803130293 306192310 582697092 12425103 717282569 874666679 872786633 15122753 513198762 293129826 747212845 933494603 166521414 618993657 788402763 587029707 462587398 356722088 665505727 525065053 106739206 6129978 56385327 28863824 509899902 12236106 765375610 371847054 467717095 444563170 176315810 567139296 961690724 1002200576 457883923 897444015 608562020 992223374 889512404 774274274 869836810 471988492 53133316 588857777 1043576170 597445544 274451833 402896008 178806570 162980080 496030271 261602743 524961306 1059686256 566637073 415719097 726716899 1007994013 942387248 46915483 853435291 275587192 330964282 593804640 1069398203 740090004 368119530 725647067 146812786 3968704 226617344 388524795 358458456 94829029 496893850 706866846 542825234 674890229 448053607 328647443 727485586 772676968 980085188 61716286 511244687 968604722 282436587 76250228 704643543 456140771 596973288 65380843 221061950 372279261 632838799 239452970 362812230 901632138 335308567 640183700 863802670 932846441 568554208 639164817 472227013 295437168 571175017 715359081 788172521 877939972 1011673674 823112238 721886707 500407852 564663048 293218199 891071944 430416242 424823342 455408850 942574192 226047155 950481782 575401706 890132137 257612442 604982547 324010320 1059793109 670021175 456939564 999680346 289426679 550143846 254384862 618748039 285059906 438717436 583116642 919621512 361619192 882989024 996799550 259982338 694048791 527471992 1065882442 907367272 903659607 318920410 824181716 161543376 341272182 703204351 843787055 571425641 896000463 66190446 397071278 865275203 108287878 873938293 762803649 946914362 316222877 750393543 56453255 513123827 948104987 516392257 581673228 425820250 639310753 401667196 843170200 725390222 750700727 697559775 97254300 949454566 839423054 301585102 507376163 388326104 870851682 1045207256 161542965 508397349 220709132 405842566 263606677 143945687 627884440 54050427 568167795 245739549 162368507 479437603 348513072 23286891 772911351 342644642 590045295 290956119 105600698 347433659 89673290 84842579 649105688 726871545 738665655 65580640 445873046 738562658 293797184 983130502 93330344 70502394 290588998 261377283 712938661 507515281 553078952 481993935 325120733 819922301 485171079 312996396 937424019 352687547 507944439 696757605 598242810 1026062744 763571850 914227903 656456699 523586156 155653087 891055041 572718080 375152123 678544568 34985163 493822814 731982554 380527681 200147827 703664238 445073590 388247508 765838057 839461207 869595924 868349492 695204771 691497938 657060478 956162314 642457124 663020254 685437483 570847282 451541086 751367805 823435248 1065646223 737373597 552187782 261381576 69241782 207274619 74598144 528952376 315068781 107211589 823075139 739332208 405121383 809281549 497546893 875194625 942479164 976090849 756320890 995458783 593042192 183529322 303587766 445069028 92113801 728488096 357744448 371054043 832311675 168529824 664684313 690675351 360349299 568738821 324634862 784648429 217339890 262751551 580873441 1039636968 598715085 228949109 758503227 198126659 274274568 867834306 257561564 12016434 370417577 922732777 379898176 999091063 663272244 771625526 302606389 563004216 121543112 236935271 678759230 65921310 935771362 226874604 78481041 95042836 48541481 291937653 635144093 951368024 136562295 134483988 35020040 849120980 519545019 692216708 11439418 440000064 496476593 32277055 125992244 53803992 516293505 42539704 937699811 1069936047 89186676 717747746 626098917 923479567 187334624 1033457268 12014733 703395991 735153206 510376086 912067522 770675298 1040687915 857760706 586571149 71014659 663961098 892619887 514717471 213970120 434991568 243356779 862306553 201813768 146805389 973600469 139149671 295922876 197649565 606613114 488966369 319053726 259514929 725536733 378928948 410235232 571974697 664764774 321711197 238741781 998899973 337346282 968967297 573384821 840387904 333472258 306213447 675190188 220527970 195804094 249732390 970510340 1022725812 433680182 795469782 643731916 249184360 114593496 351150284 819490695 565078133 235461520 516644977 152384794 235697563 243044985 648693787 651356947 554756861 743177433 22968967 786638887 799483882 876789003 316962250 33179366 755247396 189207432 869541448 253749857 280881171 897653086 607717198 136130709 657347065 492687142 58456872 739169690 646251406 867982605 85977692 185783558 728146503 553300039 12721745 554763416 898309714 77996825 579274599 77033758 109376585 1034104777 32568745 3056074 713263826 131539446 872344299 631616217 711541392 36872359 902184744 502170114 455630786 289764245 355801129 271283397 1071546603 644827185 518407074 574368454 1047416256 124644505 1042591231 582800391 416853096 988209881 167105439 839750223 719448933 161026513 130417571 1065908391 653220092 213713855 483134466 940255464 869772752 508708055 853330499 883318186 539254185 646644708 729059106 828051817 840678356 1063415185 537445802 638912916 524793305 755024505 1042477125 515824117 160905791 367862147 631420553 767862179 603737402 732978276 219260035 496218015 1045070066 468071555 66759837 68924177 168474075 98570592 107791565 380959991 325283091 284516323 589974102 16236277 217620469 1036269439 967106865 576803394 151992314 649263862 676366818 1035132195 156021181 360596621 134165885 1019049091 585965944 538560156 928300155 341417139 231653274 903453638 918209365 974100255 126644965 131742213 989978780 158158309 1071929468 1032487392 950761454 195624722 790152060 986665163 737409022 742263733 1072935843 173548816 567250046 404268579 831808631 971573980 282063182 987201681 330509630 815610635 876399248 682221653 646500433 495142480 16079559 194912044 616952988 1066087877 705368695 959012228 1038654205 281497787 799326440 438569020 995703234 117743451 756643418 217696669 393119338 691890092 622017841 448917989 275631605 588652166 661097612 197872946 290816719 85912681 980170069 820334796 90010358 938581273 846844675 852529954 416396254 740303233 951071043 458767843 984077421 995556464 286615967 52765605 796845726 759986007 389333717 433395718 7043578 526417609 1059689990 714781473 522919276 261070438 194427511 212048878 318984418 207811955 627011759 265298983 99576763 670628474 42408881 778394503 793377126 659279762 527548499 1053411311 914494028 658884618 261716371 541896824 771077409 194570525 580616453 987397970 513709517 183254281 861225124 144520967 402405662 376101795 993042175 843164327 316749710 133143448 52257002 940030668 592067001 827761067 263543657 301366507 214120432 102255473 529046899 611212983 175768858 386914971 20120015 1016423485 746577913 270578336 338013602 541232186 84825144 878815840 409787996 911730590 163834237 318780481 763514096 556871585 453210073 999542436 17321846 1035435925 941981102 552031495 895857174 124047510 353894545 684742822 799051611 715477881 817148074 19365018 784875330 1000385097 564725739 623701996 808916391 696980908 109856435 812110805 418489937 594547931 251126966 1065239819 782828719 118728477 641068644 780776768 573684247 307950774 953542234 917981685 955791189 1071638333 1036409128 5886972 174424774 522786763 36268546 606664662 527253330 514108297 145904389 288293283 458051868 841291839 17607271 76471315 57423279 68123957 89263188 1057203931 828577001 489106516 636437569 328948158 777729150 675386971 939810015 987410152 723153025 897980304 833749232 488353842 881156009 550271509 595285721 707929845 228438715 591243499 778321243 739509006 216648292 839699234 802735432 896319228 247274883 78395089 681168371 121235259 337776093 439319759 873702265 372388288 60224961 192110790 646683732 113471201 546940631 718918189 316029897 91261893 22696328 99976029 218020264 55672888 694099862 128048787 344556446 978327185 1046393837 556309582 92561644 1046150333 745470456 685196408 580839090 1044421554 862115239 142847806 125493627 976561413 796238655 551580848 808222508 1041235697 677690654 776993473 526708890 666180436 810443016 20374534 287648446 899092254 264695330 905772719 227227291 926180552 359031940 521485413 816386058 1003789511 1072518285 227651387 279096480 733284042 548774701 704150716 288998838 1199154 253941282 443528945 837793167 561581594 437371138 3323327 72253375 151507989 631082127 280410535 524452762 900525810 88672428 232290588 1014347056 115748153 675054791 587792954 322264278 567181456 440957282 347077897 1059044404 397673063 40554358 476441188 486396347 364153232 910251526 37336502 629048278 697614831 923290054 888558001 882979324 923530080 820674315 903927485 52796443 170655629 801596661 325084819 238044631 815406696 314158871 576766049 732737073 948241028 788483437 698351215 591775316 490444893 710912926 284760602 311285886 530489085 801490845 959375107 503088286 1056134521 1007358063 890460285 1048923315 229745751 47253720 294388297 139834235 667866367 279601368 717059362 5814588 431630858 1010898400 977042142 769252926 173213603 267818739 573675432 200384082 219447052 278570385 784809298 641724018 392156391 890629952 642109789 107191241 918334329 701233037 438256041 687096932 8564912 888640261 744560140 507937722 999901615 1001102936 250212182 788004944 1001332563 880714722 703988802 161668876 452177785 574302830 200719147 495970721 511742643 526902592 290230895 598555653 1037588002 709861952 221528533 57897954 924954922 581559282 276327918 365084156 772092127 551581567 831771675 897786161 1041087448 527932788 240561478 644111571 231421362 374805096 921674883 683553287 511285376 8603734 487698825 402520185 435651478 797802202 635232143 621670398 651688259 816403647 784856004 558403952 333620196 613875045 43254008 108036136 729772656 44821772 549602022 715757742 197884688 279695078 632400929 530983085 624405692 934462455 501893544 207335700 795460364 537167126 161214589 1017516055 984527575 664281384 814979216 814105344 264151090 145552003 497057136 1035896470 710288459 606998789 396780986 62175855 59354651 13447540 281130907 29558334 280055440 809269867 177338173 574447945 593977794 428377361 855383895 110138937 131248250 453680507 611024387 749967038 968440039 343603871 1045545365 174791336 883710077 872935024 444843476 514654949 20458710 1072034878 450064707 910732543 838770721 208567784 197542087 505404596 497899341 6692699 464102057 909615942 998839831 1055979 342197775 800454158 566242854 891929410 313864066 146208790 147075830 1014305519 793635589 265528130 1003174968 447791213 1021478062 359437754 374438198 275781547 193433654 327541130 394548172 415165362 1058781496 1012005582 311799297 68960606 675842596 501443054 644278821 607884143 1043242415 272011477 172431856 240080181 104470466 183191498 1034765142 419562883 173400585 89848258 938534914 780894947 362993236 528542535 41203866 684962835 505079275 204793317 41459298 870886804 300618181 266197094 274562158 698580247 92486551 618992393 728670883 1032750246 461607805 729859902 416008059 385492576 288383032 538532644 861810280 340472446 684181163 981764689 452619180 109935571 746317966 214957065 386349436 556288054 318185682 485626226 343836523 378450504 283492072 319345379 105528644 273484620 30091502 180671262 740058365 446295112 242576661 548943993 1034417476 405491430 1068143915 1019142476 662242646 125784739 560646080 1043222830 508821495 379402027 878679445 854153702 34052214 671685047 982183777 304089882 748357912 307311813 102657324 912341525 258773906 1023610399 185269847 543079472 854387586 317355913 1012130431 337761085 908987688 226671993 168769200 217008283 378916569 101092138 627951191 408322537 14956107 428988285 792264183 637702511 655085090 360675617 113003346 38788412 744666007 51253699 948157064 502566409 320195247 694360521 853315669 1053265665 995687489 278822729 232240301 288947711 341688104 632042973 813671208 730244323 642955123 408075940 245269052 125037494 235665405 695584247 429512930 255357019 218631035 530859228 874454236 238664756 153703045 716513455 603540641 594990330 790617356 545057566 76403683 972873388 1021517022 1003840557 86451630 930217258 213228932 184974187 475748060 913897847 685951987 1017108509 1062101015 454535498 879828970 476792886 663466244 428901274 570322749 1021360018 41208873 353217384 950037939 396074655 1002254511 440124423 693375900 965637891 505953395 629120215 49396255 1012653831 828182979 84421913 740040873 510336708 28460131 952794588 383941549 469686253 390214818 230076494 992531439 399778597 112664012 631034771 540326661 317004430 103984867 807042185 1069132727 218123900 506563473 318722051 656182222 625088779 78336801 925771485 77382560 1035868258 413057368 59485882 458977875 538212372 569556369 319650938 159104421 64555563 198648811 596858552 219276494 275942200 873207495 805740471 273860268 582327616 533693353 793534976 834266255 893971425 443984179 956034190 765936550 957904001 954174671 672157835 736289 171188845 1008722771 809737744 540433117 637446391 732065091 227816466 50184220 206743583 44185909 968560623 448870448 387371548 1017590793 443333445 991701118 213618868 770238547 770356783 202905531 1065438193 1045718156 303444950 940725983 278779709 884307013 428879382 144405328 572815348 544733308 384911341 1070561052 603033441 930181840 567905902 391667135 621249696 254280210 200255984 559330383 614301612 957725552 917974455 477089499 518593636 653645603 178354532 852382690 298429807 68044120 239255706 193138332 798335523 747164989 606843771 525115331 974909018 922557958 333679484 205703864 394607977 1062903863 434793619 653249698 184871465 611108360 67266336 769546113 603618383 176247445 524914718 273744882 99630658 897906832 1035590215 280107613 523208495 3258817 1040925347 41034220 337098902 180173948 838283260 315696799 340571351 36100845 567433843 1062058782 489173811 556310636 115363662 869744963 670406270 179874145 746737871 936741720 757678491 764036950 139137642 998477523 1027005798 892900847 874105808 531952963 341670087 352647751 951853114 89386526 206378406 662435142 88951861 750572067 555537797 656862224 312421702 224635558 376406974 845300757 989131216 392264019 98362722 425712627 207291956 399973460 709296654 224831003 527713473 915014821 753075219 856800033 153870549 841516014 1019273197 398215846 211468128 605899956 980592234 275545037 710644593 679713228 660147745 204184034 46250361 626934054 436482796 885246984 789779933 187571439 886391103 860064635 210104993 1000532329 86763505 275578320 867488104 973804558 608888823 199391738 512341657 848153804 147126754 898460290 195857968 266402402 846584102 619610758 40136522 322872699 613115438 53396806 450429865 1029157353 931545650 867484594 852806713 872792347 480925817 1063478025 106731201 1041792364 554711157 751678873 888164828 411884549 895922390 1003994723 1039292456 61195079 1055754506 633863930 500385000 691312913 418927127 188817476 518779586 535290458 789123097 633013587 159744615 952248207 117690504 714166673 69210824 954887591 333151829 481377272 751013547 736376653 542319708 554989579 475731511 260107122 618455475 706010495 1072533502 337614990 919671304 953742917 443838268 519391386 103107291 888128050 397321611 764154864 67570380 555454846 191540797 59833103 182358597 137116636 969780947 584497221 865464436 587910945 89722414 360256160 93681274 89864418 166897130 472698217 580284564 592482724 910938003 60465982 789506766 231232061 426759309 861004106 1018280432 440189072 1055853320 508206468 945881528 771284491 402061357 1029553251 373550549 606413053 542572086 565120984 578926563 822347961 341758188 322663693 471579239 256296875 972078255 956319703 55079385 518303428 884148276 1019570564 420250323 1021135476 317363626 109198947 461739808 749562405 243003455 15486734 642488752 648049073 566616398 472716689 39677253 321277578 136066493 756060672 1055821716 715617908 958825471 166569722 860474343 326396012 681168453 701202285 950165043 444247404 488367579 140629036 874753233 796103284 724355108 73327587 510583048 271579538 543088208 870401704 477658356 806514615 211848642 672086227 487806166 174924652 397557657 592682464 694740071 244508977 231915401 395614637 755605472 869980038 581420842 28984808 496595306 643233309 598019668 124081396 563338939 585815248 691504590 1043103774 716991618 83431176 386014932 832885567 290068029 307932325 995887351 893876913 822500612 330137019 215504901 344399613 935517881 710506869 627123716 110271343 575757710 344145817 168247844 1034241300 83657501 896416524 865811018 407119042 1071397354 267153635 918067862 58329586 464640588 714061091 523171333 720682000 596826889 789137038 963234263 426284572 132441106 103857504 559388942 616917099 61173800 929674610 817994799 869585033 922427792 307868441 589145669 931887488 46326098 644352356 178658128 995208787 436553786 471051807 775257491 375468768 237989969 256782317 994634332 722855616 983905337 124029687 165017475 420550420 525367856 888615513 964775426 723867738 231214143 785277441 69035407 904367419 607780345 584111144 464939051 196482607 557561048 969399977 696499609 683746143 744267901 1004573645 1054286858 852519204 227060685 219700444 709278945 745348245 253235615 421780152 96140243 9010982 1044071304 340556143 290811846 756071388 513158236 380672737 770693634 389020039 814736015 160542302 31124461 40184903 459566008 805353003 128046019 513461786 355490332 668534028 802770801 384684139 951467785 61541422 269509227 979450173 1041513718 812773966 214297995 978821317 1065679093 567702135 321758127 860882691 935197758 576384333 532054379 536523115 1032626386 825533556 277979054 682967996 721102773 445495909 229076346 912691852 629057852 568883189 447102074 102914397 935625053 525902747 114682404 247689524 340148857 558128212 720074666 332538329 56824773 748230887 575473275 1035342577 1041987557 399386824 510672942 789174431 682896894 722866060 811077499 422851641 820271543 1068526033 1012088056 207672527 549445980 1011684620 483256116 246425091 668647099 821178507 390866231 270884874 538620268 960275572 840709815 467349006 512087179 402642410 53259866 345491024 297860765 437386436 592153593 853306001 40595116 1054563633 985717072 878929719 1022267509 5415794 441066400 12830860 723530266 669772463 998218375 597670054 796804298 133523357 57467978 763295949 552990105 907869363 36409021 943637509 30797812 725397532 792013294 63999304 611314671 470295886 764833335 823009785 118269121 182230622 891576038 363396165 671187680 156621169 720285204 167814488 782645602 706981000 444657676 1024952319 335524815 460745033 32534644 743405298 581634492 507330463 20804815 119226153 725457954 939772148 770219257 326634657 725676122 145220629 545817913 734248820 293004171 254047008 663460913 854573178 440913347 650849716 1034917814 511704983 964554360 1017692620 638782865 921008639 667352622 258795476 493453128 118161806 828521126 532393532 53200961 510102073 380622544 742566244 1049968576 679356210 273943574 959239692 923951854 251984410 353386776 657497789 875308440 991326405 1067375285 895510166 627641597 420618532 44930215 27188581 782479617 689383434 408189731 819665537 192570580 54381612 1071975010 898997411 418832509 212260250 1065496288 23848649 974176661 39744803 369611263 983691928 570091397 991517535 513513345 308368281 721739760 714839254 386695889 219961459 827199457 290719087 873777229 117113578 370145760 667291668 374595127 630139190 323298431 294275717 117091816 400720163 932549940 184779382 856329188 556071661 466082894 921346370 412604969 731703678 694179271 931061706 1049078890 93481075 856262394 224688981 456540537 686949136 210076320 425988669 468265739 1004946159 459094955 386353262 199727886 612395857 601370366 808169152 350191868 117935131 66692693 701630902 758491138 124841502 1064572103 224664371 221525731 113775974 860447201 621976467 394618810 582392957 835642216 673005232 330565421 381953291 58948138 62236316 469915276 823250883 117804087 481477282 564025696 799108237 1016492506 982101518 891891377 809237533 897479523 778559080 40362711 959045560 617316920 83516385 961680581 219158669 1056938757 194721481 549154838 532416324 661614941 386650322 829525906 589365360 232049733 526658383 233719404 227103680 924409464 705317044 821760561 385969902 357423803 982509172 48773116 525989240 869658673 731121879 461069465 531860095 268809773 709513739 784793352 833056328 557249973 837484967 252863456 567683000 526425595 152677960 614448242 502487597 156413131 155999762 824709327 582060816 375682468 193820612 324332802 739746146 618948554 507213749 215510480 828986042 753800720 95139253 1015194029 960304619 980904739 421707586 967974569 503993959 104859958 33205196 806602980 194588408 165893298 80999745 153119318 386576045 404047034 745717473 1067448902 554142556 774199109 232088302 962076103 701603703 919194381 179639332 1010174761 333945246 256050396 480879233 413643943 160669053 212951097 96884328 146138463 117529500 954490408 411371282 484332004 1036380476 15947157 842209411 107769400 1066550460 516201815 309094099 477006602 156085470 1060368021 364116204 500818345 211567866 771483821 504168292 157669315 84107164 434559163 379956833 909460807 151640839 364132940 860385622 23303696 72682801 283015829 245494063 166310647 921898500 521010660 455688119 1066460813 570270785 289578200 561729848 748897233 798805680 806069833 969742959 891015403 1040566536 1046041615 112424020 281359071 989194565 11491145 347158798 65356201 260154752 505846067 654603895 993908642 250033865 595668883 478316327 484134895 696006116 192147071 648620981 7934412 279101621 518554917 638317151 736280630 767370068 266273438 527323049 617129916 573513978 667953823 545120378 524049501 253799039 211792959 749606481 491595751 804803846 538265736 413568767 374357384 956610086 4328736 662605299 989630894 1014885345 1044672351 513564415 749439795 947736056 869296395 709610486 772443105 977338904 339046594 824354366 698828209 963723998 527447113 885248655 376085786 202992038 584159405 734718715 21642799 829592407 234613318 514616517 29267393 84169974 721676437 523593176 460198428 290583690 942393679 44735700 985297776 118837335 581981049 312399103 21735314 12729801 268215555 102055492 613288781 813845146 732539262 300274642 281237731 623889795 332742675 377578528 482365359 323436012 261222189 476886994 219404893 302296988 834973364 985580725 940846341 382772230 595199529 508115638 36523336 855935035 384926904 123291737 120647932 541201907 634385236 203195252 854416543 558241777 399790919 458695925 478679049 934598020 367945494 393593565 315558228 219512603 511178548 351563855 685466302 868270238 417955155 995263407 194917676 1022748238 640358057 908206906 682511463 452749664 534104476 956752619 939785519 112964465 176235711 499984277 126698532 732848784 318783900 258422368 312140863 930436064 45777505 132811084 34867605 287674343 176542490 816191490 343452444 124144881 113384699 639777256 471002837 768316713 649329137 37540141 225971302 420946594 276988235 559611231 8015508 1046682182 246488176 34510307 331967970 752611348 980618070 783649891 743831945 498008249 731322864 718984205 269584460 481266722 508435818 838840233 851419203 912951636 588172130 941411975 761176811 138207775 350657649 240940272 297873334 672144059 829605970 903886978 15259486 1015427972 21269770 743986268 182080119 558951601 7587641 1071961057 272713735 1021461254 1044985071 376519267 596377587 135718557 625123951 902588343 307747578 865896936 605372979 167459621 401875191 866123406 354573521 22253079 912036585 1010153092 23210337 524382093 446730217 724884650 952161849 1049698749 875454249 304319926 388987401 390423508 995536195 33639784 572752792 641520561 32731334 528829862 428894452 50039847 15085586 847451653 951504849 310782838 747799413 908222569 923443244 869146064 112136845 1650374 872959093 905476726 411883714 608486475 370611904 933422737 1070000265 423787616 816760483 780381567 340974066 145366330 567829595 41360969 204710893 879654633 813161559 1000380392 459223917 260900004 558422354 275806974 374269012 511318010 968133567 175208956 1023100495 48678814 926638696 125519470 559944555 202787166 112701857 867018095 418055070 663320299 421730981 542961462 320211480 252476535 308183743 486152056 1057147705 636915718 322967224 831818191 50196891 279147576 721808339 10816368 53153093 349733177 553034624 123489860 148136585 484625320 987177192 32226045 647941492 121154027 1047175573 555580208 644417922 438979485 1027354242 317846521 401183448 501641457 684875215 756828188 508944509 29979292 310548681 90719093 518540061 460972140 435334386 887234243 823644979 699335821 469468474 732412113 9120646 1005399701 212718464 1072754140 139629306 225075401 535327154 1028270626 576158164 365555314 751025117 102068182 360268270 903239379 458429419 574701587 813145052 899439902 900192683 26970122 324266162 237060465 127911408 553154736 23900751 604900505 178508972 949407419 1049729769 430892231 104658143 18701730 635964545 52842537 899852928 326464297 876948717 699512669 545971952 874974463 718773437 919373749 958042332 525485042 513512894 402668742 229513467 10915142 484817164 405959090 122433114 341286090 8617072 340515115 531207998 594324859 1069198550 514343506 944829723 427242587 610513431 360656255 797786570 191285128 560942608 135061084 651632469 375956908 259300974 503321950 132629616 339526664 319769882 67329618 239836762 55752051 1069962507 569117888 725087072 1021621109 185746513 878153758 823199324 208820111 725216692 587910469 791766389 984982552 185830601 687807931 52597592 929687653 560357684 14613975 680502934 843438470 59575790 1055103902 119177308 322279481 627998735 855286948 20562306 44712418 671611572 116013757 376744498 528421667 67073410 648977888 507412120 147636751 520798021 335658022 143204395 515927577 890384468 317299677 828221006 635578067 325263467 4302299 708722580 985228134 10639231 417531142 611088347 406438225 521643893 674557307 972448340 681254763 704998761 958165490 192946104 991247369 19005550 379211767 518534760 543714526 173109311 361604870 79917434 687901529 901875850 48235856 945181508 850902766 434429294 389926077 595138957 71486894 461938963 773132998 722221225 191709836 594509081 473398861 189845318 650255278 7877367 289182057 676122841 489858467 136837511 1056468041 446202443 975251015 322226957 247644029 873355862 417791316 860191873 488777967 623598864 616120570 939341962 832921549 318194480 309238678 5494652 457296304 575030155 648001119 601573877 315684712 679787372 578768597 237887639 1047660516 972551068 448165512 189593722 763839783 546728272 424659602 161349400 751681650 424371501 569093302 575668354 166614069 853043974 1043877031 562254525 291227444 630126870 660323214 401273665 354114533 159511428 598652530 1043300642 429344709 1001539208 589842785 1028962185 909761826 119616426 583325696 828958250 667688610 1042236153 634357559 285642311 816019405 894145473 570218891 464437146 188685907 768324426 478913731 944431990 565778441 1005835120 704170415 424550095 463992320 432040924 607157622 831444276 409715288 431946410 4350337 426849444 51633328 452927094 199998667 190728642 149901220 348753984 291843206 70175725 1047939219 332267652 1006134426 803455266 490663913 380920957 266929394 773592489 830046181 311285859 82042862 1069199049 802066111 842467049 198357203 551717842 262948250 889362727 850169660 941881842 528476990 535508995 158007866 844220104 82906167 90135048 763504164 713925834 834675685 1046898504 506675090 399198182 891666997 840239119 514748178 355791954 800846561 633371058 348605492 773199171 615387294 335074468 865088705 798477645 921460476 430400402 851199265 860567116 105164744 20700826 610592619 339458023 724422521 241634574 686160730 130281233 816231594 502509550 940708674 486794792 101526633 732888577 512679957 328152681 282256633 930363326 791715030 378806840 966624580 513351642 38195659 322326659 744507719 434911229 876990702 278642071 192635868 488857229 829581699 65634291 478854905 619622894 148792404 259680148 363103124 979273661 1008845093 546856063 810676248 917482492 2603861 370076263 325108574 302852040 428618417 506668579 369896557 817648830 592747324 333425048 397040322 304210792 864477201 310979574 652024448 491004024 316777262 302249712 45619752 82141184 899042452 955700901 274078109 427497168 706814720 923683033 265466894 529081014 835168340 577284523 1048073991 526991047 276796632 785025612 1064753856 483689483 182567484 30979176 600087331 49766783 639272525 659587280 1001748492 326720354 525030932 653900308 794525770 515419973 1053710049 942017090 69529780 234698239 728126649 142548841 864777470 882338282 124811887 343507894 604334507 263411949 502578162 74183005 483428776 817852985 123437790 699941630 253814683 1001693205 589723005 934463588 18196028 315939869 108054593 247617429 202224052 521032031 130988108 70108968 376570685 331034032 443535139 69378002 918017089 291358336 524466160 958118055 968466936 89732666 601005468 954844023 211964480 339621428 758058579 496909193 337722368 141073773 787301964 403952264 704458078 883297769 922435768 107307680 298817692 726372870 576702628 742704550 314053941 793283990 849587734 604348123 233519799 898153543 743977963 1042536455 399724619 321743548 1071990776 295537103 445464195 819172677 300067948 344814857 947911494 513483547 344564283 216586401 796048339 813810876 1057874223 550577910 36779579 64882543 141853790 1001984534 521258564 134003730 1015505755 870697645 154838495 566331607 57621424 1064149058 981075577 257886258 967843730 766322674 351024212 377002895 217329512 927179694 45557803 285662826 645043295 612789887 479472862 608420360 23936315 769301451 375283155 960668226 605421374 164103822 423461081 6680448 624541618 731444085 524482799 16265025 1055615043 165108637 135768353 384201516 55895306 906776303 521427299 260512680 187187295 381100757 926415430 916238994 889659138 146204078 665966797 94347974 346196427 37999290 960062418 16737873 354217419 560302585 680753997 153696658 741277074 184951168 665197054 1049143111 817762454 159983848 796101373 714058227 194017852 194155140 897085407 389334089 421671179 442483182 96007782 299574385 407230542 332806256 177688149 38287973 526661208 394082374 740860122 624287088 700899749 840691598 517810816 550714452 741625572 958489829 140563915 371058186 697981861 631201688 826433958 505636478 112471952 113952795 297661490 582085052 942428452 599807178 968980101 757716481 430212682 533600067 88595191 346618057 312483792 944639961 596591036 726132114 931925537 740666759 1022257097 870575031 728897507 24963522 150175772 740278566 23296540 9688502 559583246 971653934 569403926 300989653 751981372 254214085 1059850265 487673072 508940093 179759307 718601498 971844701 688035343 280330569 535368312 50484342 522566003 702591433 291843506 268957908 727288088 822378444 759199152 1061085185 310550400 52884695 254739023 40827776 1021066399 417893513 52045915 513763286 46008312 48252925 495458261 447285444 254539482 372775085 819653342 1030208139 823420770 286694864 129884135 1005724603 713086251 205526491 310199019 456144389 980744058 669614898 500426767 934612865 38489054 30516915 1010367808 1066740863 642273471 8734643 974393771 548839419 484377805 75348669 227166657 478725298 620245054 914645040 669155696 233895495 894655310 547057378 360226526 996584875 648251536 392208507 379029892 1002516208 716263372 795125047 788042307 666914117 299409946 134483741 923382006 570882242 194841893 252698239 895103308 554253487 751105872 291797648 392105064 1038087002 806712150 758511186 937262916 963407197 589918641 97743612 864868502 20022266 676470348 887491844 371759125 93287385 253054633 639123329 658509376 664423603 876957330 435948572 330979925 401570955 972554903 780542176 1036493998 1065487813 646789852 974411670 221033814 352366493 919339144 854691618 988256323 493610207 83727849 1008909555 280088474 1060537161 700070528 154668426 732702588 572687391 779800137 457349335 912583867 664704820 830631744 148188805 846391308 944034287 713130985 683337265 501723499 616122779 182478689 429048652 656302560 415180142 156257984 663296737 113519984 1033500242 997332665 133703506 886781677 120179458 877735811 967725950 994571535 820157198 137985228 775558182 438074214 12418412 135345461 873715967 1006261914 1046801086 1044705299 378281974 1027862839 480930733 17247403 724925268 1029751457 426336544 573300917 1064983026 409816826 637785883 483370017 148100162 14576433 1061480337 34885771 999602523 69602038 258873082 246489316 23041254 240282409 993052528 731110128 440370273 33054833 825022142 63509925 280563321 863237643 401034238 52616499 646734630 215281700 434558710 812150990 684403881 300211365 91159388 219968945 659406876 67372066 927086744 482734388 570351456 1031237641 437889191 109032750 785807653 80932300 776577041 924744208 303452888 933279976 77840088 283008427 436059485 92069334 655219950 576123433 25656461 498126331 35968066 650565847 688832511 183828854 221731238 421722286 541758435 827597671 178572148 416432896 195392974 613621452 558912952 573616652 496697319 460648050 124605901 699874621 605170166 92938911 242417996 217314331 516525742 370013776 957529234 259740481 777705465 581628443 826943284 1031318989 698831380 740881256 999051767 206121943 52510559 376861894 68392994 912307007 715480395 954084412 400697673 192922144 404467272 449631888 503455720 947955459 1030234894 606866006 677503475 677119737 899982919 245605901 178267894 996186320 38267753 807868408 739674640 1013757883 34224250 305323727 439250445 629436658 372118848 833561253 333992154 475301872 260642041 747097486 231330072 555215962 827059473 560572214 812546284 180300748 849515223 571587623 678786795 1052730011 681124877 469162628 570655422 303255885 773670321 928773030 699417050 276410324 780003298 519084208 325005870 791249128 696528288 789514625 728727089 136538223 36963949 587097108 839815559 595431370 101681735 62159219 848845409 16677891 722904500 173893874 878424022 756556830 448901850 353148567 351178007 599215049 981903079 1019011901 56170687 805922098 411205008 965963799 963249824 1045815927 436409237 497145338 392925745 195581360 591166166 221962768 908622007 659359479 334084528 81590388 1027719178 622501483 96140879 323768183 363854421 378824576 987743825 497766826 1072795329 135454784 1073612305 559523345 40341427 669743685 352609071 119666974 329691896 291932704 729857413 792821555 214713216 1040039745 261728023 969093952 793876682 593136695 787043293 769655860 356584083 875108652 995692431 592964264 850018159 111061609 578894658 964833928 683328803 34839899 786471903 69174282 17478614 819766848 1031689109 240438882 531876365 1016750791 843929682 448229451 213682342 339114922 1031008767 82336170 39336856 112566013 406276467 123056755 856592423 458645811 234050408 809527435 448063767 66872371 520343807 160975656 291526467 944640017 618465865 1038155803 991009816 1029764479 566619767 944736925 988918278 22617286 392797826 186068440 1070965256 871695454 446809379 405625783 394262166 10439726 41567316 502645278 310944808 414395808 962790477 101743636 869156198 123132951 805133363 722494537 612280149 823229967 997952087 404039018 199469711 17795403 507535569 95641665 371856170 873817972 227845 51028540 441424787 222759547 439999031 668737884 749477343 946104702 131745007 440916451 793497879 200924759 167069323 1003687323 53178631 895486714 614435271 748724583 902378995 79204816 328288619 1036083315 490229516 463188178 11264953 451600648 769247399 311767362 458445566 1056774092 730760954 506193155 521038692 383205166 555918744 203901671 149900390 944907748 43082546 505686571 753251609 798393329 501201894 540484079 676090913 1000774424 873098022 33368690 720704943 624571532 849427185 826297928 486929965 355051793 838599290 929252106 156603212 1038757827 762385118 572932693 927320268 604310748 70106913 591366442 133515762 54274265 512240621 478327914 622172996 454256509 542140188 45918028 523829027 767772479 288348544 24571577 706067296 370394156 70975557 486818351 135188972 826802224 912127324 669662147 100700116 1027064186 341620656 917352608 670017418 78461730 540164089 22615862 382041915 770050090 170802240 775135343 10943363 417426813 121922171 303605803 873672479 688152913 966552660 75975979 433839550 603234212 368103080 359522469 1063206139 881571865 518889387 672982311 381371726 558811143 233117471 385075674 208724433 487180219 665838793 876102254 691359473 326982716 110508603 394796502 961683437 247808557 460409386 696481617 206188578 774408834 312945783 367722298 504880278 578024846 1012977303 827284756 494109751 965302926 1005397848 226583796 924707972 212426868 356606467 1015151042 945457142 503756344 757456772 522947994 961126654 186942226 883918663 1049986385 8481759 867982203 396243368 718742331 201612769 681246527 323874333 160819621 657985812 465645316 71119790 713468236 316071935 1062382164 79007054 483403480 727079163 564192611 1072656684 758496175 174640347 457074743 517104756 854971598 513463799 782623374 400832182 497539471 276132158 156354808 741000041 797529090 327367241 900856659 692431661 956277775 283980277 199106419 222788565 573865864 642949259 289114024 739105453 149954248 625262804 410691251 789648574 604776936 177917151 777545890 686749307 571067027 433534669 183124802 1029446537 116091175 532739257 915992344 349959787 824269065 783985297 801025310 753330285 58479920 580022636 47137878 513533801 703439115 204689830 247236721 713779461 615239368 100175170 973796858 448824595 74118357 1013454530 197634828 714724323 921563968 11999268 1069274275 223322776 680156602 863133150 1028831475 377316262 569409757 255323774 114431827 629133051 1052734339 418548379 673585897 246842546 717771665 666138323 182091408 929011075 435223961 299378811 71661494 306272958 1029761709 502570821 939837417 371789262 485183577 195033684 591651307 1009758107 68618262 957403481 571759694 593729740 559386964 809629374 255213028 368097357 751155 424052687 908706598 101676986 952705458 589578132 396232334 652668956 21991910 88357236 856787199 921632486 166668527 79726998 759879424 98066835 1019719923 498360955 44043442 456230014 327755597 916551221 242756826 625640835 279244057 719513282 873989221 554232659 998534260 332674786 722983571 544574815 897874073 513315127 723196917 594291001 181027979 25325905 960186887 417653272 254226702 175929290 30588427 85977406 727828877 406817481 648264811 51101387 270985259 766405319 820442185 507674192 543522391 902757828 322141397 294057764 295867118 183655582 315577667 219134104 239994881 403130953 652167170 903713166 941607831 951088889 313281636 1018844001 223996816 35665116 632668532 348875183 676817841 634290251 304582027 449877889 753626667 844264362 1049396159 491265250 1065719904 130729522 947377239 1059690465 968781624 982250717 315268214 346611139 462065050 486944570 609658569 405958630 216693859 306057417 65602174 924433530 816099415 652078277 1048322525 465281797 14630512 434042159 437967567 628142462 337705481 755015697 364012834 74178740 892787674 398641018 209180545 360070970 1046129976 133606980 959358813 293325888 480395891 189730579 659854002 525885013 944797752 87622885 660750556 411018002 306705939 649808450 698087126 883336954 849826640 571799028 1023582828 329256547 347625678 561051839 392625698 1070795858 1024478839 379514940 681274702 541874299 172765251 413220489 526208641 712219215 21695312 1050687413 356535549 951804758 12017927 254659703 464346102 1053260558 675821785 874037674 406275759 166848405 568486360 8976553 1021064900 78358602 341640830 741106932 487505111 150590876 745682754 622935765 282388812 95468942 957852784 653095348 388024585 841922929 511025378 1070343670 513875722 3107407 1050004401 254269871 622107226 638086978 217679214 100973306 725565805 853967359 630896601 401497363 742393111 264968569 556881304 590612181 1038229700 775872872 1036780530 575796133 881787953 506020826 1063088699 769225410 48732452 513162609 541928595 668390443 368653628 991143795 508733411 1027676286 572403768 237420425 520192691 107562713 896015960 305746344 820535186 418786182 454600423 420266033 55536384 569023860 490476863 596117307 807440327 221550907 841639613 338406677 587959494 522887395 499516994 719322378 867285045 811340385 198390731 380303306 605846361 205290079 429009301 45669617 433557416 489493883 413145722 207865725 521420937 637186165 154570367 654377887 5728045 181559569 45285360 657597649 275493634 701365412 221055845 166174413 300460706 460432237 197038433 532572250 92720677 929108924 323089166 844457005 465211304 191883497 436246421 72207575 958671373 698702345 435980356 191408449 678166750 289910125 70487420 598482049 621218719 990257546 113570103 162002043 559387802 1036086166 545772306 98369912 666249094 647539347 455854175 743725908 1012116869 170500700 563145275 416768378 423210535 1041513124 210810437 661893477 310162781 324700864 128851542 956467222 158413130 983044542 342224416 80453269 738442521 452352693 390264576 682019314 387074677 700702383 298958276 621724003 577792582 35499712 752918460 365776210 701639094 653284269 607767416 1058864844 730909010 90894711 289328777 1062746526 330525369 787466360 1061383729 819606064 550223612 6259673 230043448 438957276 91937203 668171347 400791102 1008263473 821796634 317120006 215462142 5717286 729055245 786951645 763383981 914479583 429756696 192765935 1038877248 1039540579 319193397 839898403 647680366 733329989 1029971040 986530051 304095957 267283795 1041417592 129708833 4626432 303881691 728782737 1026227315 1991092 77575700 336304413 306154733 149342415 243590790 946423034 587907119 739553483 879801373 1035145951 572706729 142259087 208559942 32364017 131975913 694377233 611240793 210170148 553429755 638273685 849477778 740910995 440505931 37034090 292070284 954106271 425236970 470871180 1020771227 268429628 702885893 241885395 991025465 837905649 37397741 344250041 327821862 860084166 30265914 753796307 639698419 97639866 912659434 108474021 457347258 912507162 420210802 370563141 236764814 535676702 868749660 392039488 318766364 1068364493 170009699 17740479 643838140 919334141 698432751 335697890 246795449 257821924 977467678 116002092 419562831 744773019 521497375 698846232 437634151 237854663 826223515 605715044 1024040626 300786146 610281382 513940893 554149644 45047952 974798799 480430637 36909731 428137952 534180000 946994054 1065320332 853758881 519714133 666254915 499876156 1062691414 349504496 840769389 100754896 594147518 380321859 890441648 768730858 691312285 21867648 521205772 247097725 430414045 784352750 655089879 237600247 1069458863 495424347 473933067 560156005 784011427 156776520 333903879 505555538 590756692 604242540 457526369 706917530 578599156 665672521 205530367 897538415 270911810 599336070 29692393 26814994 412889514 322961847 219433050 816415213 767357624 11064603 1052448491 770249188 565579166 99066365 883241993 275747053 677708439 381118995 392844788 764784065 17265500 370482924 491630423 665109868 282462796 723287870 687519236 183717442 350481439 214890874 556583711 939537427 785663068 521312563 1054683608 775869458 224119250 698751162 260515113 715148798 1037030912 85338685 344792108 209325339 877178234 1065990357 702138707 920843962 16653341 396444379 837611573 1032440802 627650420 150020232 38797719 26060843 654118830 778853938 548240102 891256749 230174202 591777109 289650043 717697989 220141015 779840729 677631927 74547537 520020446 226133227 453910856 522056460 754465180 677089993 784558756 375058467 868815467 210544169 695726357 217489013 1062177754 723235328 775349522 1042448312 979367724 288217230 892258540 99280818 797805893 249626851 253134572 985973469 266931325 217516346 622083132 55404603 104856163 122012720 671158395 1073287623 873014561 653651808 228814822 651528359 9488395 986164390 346148316 109852768 994485794 224112193 649763269 891205365 95777561 585263477 912709210 347975082 857029045 83208428 201644979 919057658 294680533 450715853 956424314 825798571 1049489425 735691920 676930075 588889783 782246925 295529060 790545521 810552623 958865868 697389857 3694792 650368712 976839006 160525434 500637090 1024136829 131739264 618203114 845270502 273983611 808215759 1056346433 689409536 170508724 379462248 635630980 454339885 723039916 111103927 570500223 891546621 706204218 910251389 1016036541 925327418 538267568 330767773 263146616 909216931 441105738 402276839 64367095 338876464 574387988 584163095 112742889 340477575 862694978 342013353 682525731 960162687 267088730 211266553 163334294 777807812 753254078 120017855 787081691 929459638 694495857 463383862 517849023 913008811 915532511 745284413 145588306 961571667 857987250 857731208 643913246 762749395 851198267 48547349 181330693 739783366 1040924053 444404021 665499606 373091244 539418722 396238128 25423696 959378564 315520223 974332384 196960671 882309997 381633180 311074706 347271190 99371018 627332836 272007645 937871588 977460178 968373853 647579430 77728406 80494329 689879484 597515479 990729769 945280064 849849401 102567824 127225151 517009030 959832700 522239360 324439844 945246309 682684261 801452177 544990315 537314625 822165660 1009598774 178274763 716565420 209107090 528972433 779391653 654181992 306986300 391801349 100171535 513000868 911954054 528114736 498097704 778013482 97437521 829856474 308374309 67686446 172439957 256308900 332965498 208749906 706053445 76883489 8846857 742598898 783769325 516955658 713104565 825652883 991961726 36803939 534408215 1017395998 731503958 191456760 1036955106 573164745 699220124 21239384 540857834 647259819 1016171597 544899511 327470999 69540504 7003773 941134028 861480729 1061985851 585325055 333706787 1052886707 649365933 642788544 886695893 126455320 58940575 372963982 534880514 218047154 1006583754 517781416 387795058 472568314 1013381520 809339193 280040726 299450199 839400163 905437324 737662013 465373226 968513801 457606328 746137973 233437008 818736205 114745608 537753143 973621334 926167863 541088150 771050817 569887365 868792362 49393840 683618292 104160818 164837681 402293577 772745400 252138443 872508802 428938741 960993966 63892851 259781414 460008506 818797604 854744305 850078821 474635584 299639067 1054889755 175841902 365853593 453483854 594430140 392676 245852914 825997817 676224717 548397195 639534582 42191740 202713505 1037765686 536853665 219354022 777587482 820180926 901711210 488066066 818278077 665289657 648996351 823748140 442139393 34508867 312272991 91683016 885957579 640538343 809269421 625289335 288133481 756316978 377606190 289329386 364247537 818898926 85518637 330013891 762434036 465574682 537666783 983019924 834050190 484238641 667346230 961085771 363814736 411258803 861622825 955695298 808551774 224744299 1028931958 380920021 796101138 681983383 774897380 391957333 352019623 185712067 46027259 1019521042 464578510 601640448 181307410 742170059 582961892 833228406 194628061 245386276 293528921 507074991 104109495 975376175 41842314 182876440 180158822 902858090 529131898 1066447073 744486135 419790134 701317663 268864653 1044866160 168410978 209126976 352839441 725968196 134241817 700170714 254437280 905808580 145260220 728397911 441164542 277714063 665589120 252392440 668831321 759867002 778353928 692380995 848438813 742389874 879252371 95644953 790187830 510429261 96052444 656905424 703605210 400598585 1073168936 266971625 15962387 981948299 5843120 231003091 182571111 243331240 107745311 821143143 780784662 59984546 917346914 292445055 583040534 95017849 758175490 1060584234 230912475 917683978 108409547 679313750 891516421 844465917 588629472 782670440 251942312 936202798 931184334 336475417 724391775 643699757 936191297 808263413 824645919 110171958 523282108 184585524 96379653 470476571 574608530 796738385 17905023 1005198805 527268187 348570731 71140697 1036900712 10557321 1001500421 92378841 873118576 139108310 580913025 99179281 483946777 81152117 933979846 410037866 528136245 484832058 916613187 628805989 757394660 84742292 329478342 704693817 560360295 79620204 229390584 992318179 280728024 550100188 1033809752 52083038 582295523 906215826 822681789 117269052 657962902 424330881 822200019 469739961 891476596 276028941 41283951 208457713 666725592 329857318 104663429 1002813153 535359716 74265414 740357707 849212760 988752289 224200 582350230 911054502 1036095404 529401306 931847185 720927621 21211684 449059814 1038089444 684463942 248416663 543617033 425081314 959980893 649882759 165960720 888308845 271885871 1044053455 635162958 521091676 890988747 165657839 335212470 1028636689 315806370 915447434 419660334 477629921 1004163569 837844322 310587979 657353386 843013309 94418062 650033441 309826824 29734735 424314138 309628108 327974985 528019387 961455550 308401419 869875294 71985627 942632279 292082693 810102989 671530961 799729453 433600231 184105313 66194809 147859865 375502941 635928734 130362848 401709091 307803073 1003698408 677300363 899088393 657683110 1015509831 1068300044 467041487 178980812 458348554 353061739 992457495 356198945 994040734 334076756 141290787 369314513 1057842486 531278243 106166286 915128448 1004065953 945052639 78441962 370444899 342085985 207657537 145243000 726223186 483881300 157699107 714136143 659678783 903535496 650883844 120701299 422949571 458274825 358034412 607619070 989584601 12567780 405783876 730190659 121033097 350819164 621992042 526115590 326126788 594125687 67191033 294635411 920611265 504267565 1012165160 1060825334 587552514 258282514 863912855 379868749 264108215 938373043 637615353 505930538 59311123 485874841 146122430 926824983 652506978 802443220 880269844 981355522 85969335 139248633 191446500 642024023 696278120 116001520 406213904 447181582 762262047 335581820 772765311 727309347 927072881 743903767 398554677 483829373 775030618 267632984 92566157 1048284757 20826438 174021209 945712427 566005529 749811794 377661023 621028282 746589183 86275376 420930127 109659934 81050147 550917385 234833268 852536840 573865404 141710468 264628638 945169077 1052311974 292638857 689517429 943828188 547326956 650400560 973641889 474346881 325042718 754463763 554838604 639164324 1056969916 34044530 220646441 160955055 995670558 278350340 546625870 772093128 591499018 377809707 118163087 230495944 874168899 588576456 1025777979 338810253 622019575 598197896 155667050 366025852 274592529 479041331 364307678 52175108 63877896 251019020 32937073 82506358 895751562 571939448 757252638 910799889 908400415 655387706 453381583 853725400 636884889 984532910 138443128 552182137 464729845 437203037 873338453 390969601 984811678 730292481 209196028 306166477 334981784 548390217 617093527 787653895 507646278 926977840 821853680 469118663 391257230 518518042 942728869 278911343 753099629 391480010 90649696 1031235263 739370791 201255762 309002864 145567415 333278743 526967758 262611767 421088711 642213278 136571593 591342619 48205220 780428671 307052801 321880766 642411212 589516816 561114114 768850074 262613432 974556977 289034490 947367003 926777415 776763001 121522431 700791277 645840007 139536779 3597368 335586486 129993441 829816148 642926326 61702340 872954739 1055724004 1009230592 941860346 550385911 422931224 330057066 194099407 562919360 271964543 338442826 68238571 1070357699 1039550576 881814432 346476251 910756404 877913455 885896360 1031755451 903150 608353971 427047568 361487755 118507824 582176914 741856713 382932428 512329862 1059248100 116627289 221230555 64710147 307059192 1011773272 59584409 285046348 1053605885 236985734 230214564 1045158238 1049283693 385205214 970962442 102603750 384825366 848947049 762643831 512652451 276285147 122217120 826550764 290607636 424889747 539551229 336064183 921641058 617415088 92445996 267568360 207260646 768905829 578585196 1004073983 823974618 367968789 147412968 601000234 416674130 254538957 948579613 822350856 766544615 14459817 941690030 846037334 950749206 847569772 85877836 487944299 191989376 429815150 675305639 16296524 63212278 754548487 402896776 704667588 392086653 1016326975 137030768 581515033 692361664 569541143 554276614 467749670 754327662 534950289 412092648 918382866 247653072 754746950 787721476 480294846 587057692 70469455 257251749 782645530 261123187 346520603 104607944 447419672 496262176 581145229 151027840 129130926 401444344 288493380 86863647 234417297 525453719 536427826 415753938 613948874 275566498 747136038 553146720 409464414 50616262 1038057808 1614695 685605863 187634518 719798831 209232694 341874163 487088725 118064561 477707548 454616833 1043978931 877884581 370983637 122601682 50528476 681858105 614414120 70914487 846646187 240509774 843737621 427523717 647046199 857467408 362767282 384324564 464489222 1059508716 1000410818 803653356 88790263 796918527 309216564 621301019 884082509 931850197 308514446 17941401 761849940 503792249 1002145726 15835179 859704211 603486454 969477281 167398463 1006454713 331250995 777484397 322128638 83989243 748930181 886219874 257460165 728954055 263970289 591281073 400378944 762329004 709454572 133642010 444625313 167519876 798721240 275154688 771304619 518462763 263241944 62411605 571067677 500217300 229001054 21930070 368974414 876993200 887387210 258770566 16357104 200083879 804037786 479736022 303083575 230559865 735626235 47715798 841890599 22736238 644838185 521802982 374463924 592422068 540181621 551995749 485010449 390204438 955942773 851672745 989791370 935778536 185470925 1017264855 1031307839 646040851 40293920 826192063 680830634 948829631 401154765 817637336 597616015 720869227 99989799 208715104 573612009 427596534 961720631 894742666 365773161 347922795 611210727 51753037 60982113 1052268870 875898729 216067439 374805769 27978853 775319998 149090136 851105800 442009574 287641877 254153442 703592063 816997409 146238922 925291239 710130350 203069389 872572049 228155097 125212554 507082751 920373676 540940328 301736439 646106011 950828304 481872302 911656030 394181651 897887246 216674934 61018998 374457913 82590729 525037457 180379325 297295753 351356413 449547574 221711051 64561063 957552654 670958261 664667742 1040990141 856322079 967386773 898431901 186997040 176144875 775928020 601225904 311387883 1070649502 339079140 571823078 988398885 894534248 960371994 67021524 198166613 721644251 432964238 971113431 442971513 283185957 539153830 955371345 678402263 170557383 289895906 181557318 345356833 517291344 32157884 1020569846 196580968 417297573 62542977 464629770 190531116 653206383 76366055 118404732 1022001847 974223773 502581100 150731460 45840980 229528349 332059757 63010155 346282350 212116001 214028374 55461135 215911555 971158896 121296361 1024958262 53698232 343223403 291059386 623997632 271863772 513954237 1058053836 570935357 739568371 609138245 519589626 46701619 1022046023 988730141 561671018 457621637 881148789 917904344 264826302 316282635 839345454 180191447 635047261 1022585907 618701312 838744495 479332103 93485160 159105662 774932547 189011194 246719282 493115338 721705728 329175702 761772248 403317123 95387531 1058176976 1066355530 621099319 211279115 43218100 632772787 690788661 266732811 221984474 515190779 564390367 612071492 163425634 915431406 37414116 1009495573 669509832 244531326 88897011 1025389970 990376605 377067217 833939199 222398859 824242951 108886424 181951252 725727917 696325467 769106650 1032352417 330996756 922971932 983508192 927787207 1027110740 869561606 150296339 723499803 190805600 109278673 1014653314 854047421 419781627 339439535 435772761 16317698 236591171 373766444 405059953 253371520 226218815 561412742 168503311 1060136157 615541534 896452424 608159455 14770713 1019798610 80234989 624626502 511832883 321509864 1043511740 365449463 375520570 223460472 915984722 1062044582 1062114554 256824463 613217242 510313896 863724714 1068560947 619345362 917697281 184928821 319445891 608498692 603045297 330063238 523584106 486617535 835319977 1021939509 221573011 895675398 265635505 150066171 889876119 380420521 804933183 615861556 985452861 699574041 311433252 230924762 994703840 1044353993 724680759 733806493 804226915 619646550 474339382 809913929 975675611 327293992 556643111 342584141 146439749 680220575 308013779 443133226 929767334 180901758 207973563 589094768 883321931 362137070 426695558 1018312474 1017155697 173968995 884284604 434001171 826843012 792362075 717316249 331341507 702816439 233726628 431807856 96595731 801750902 64156920 365345021 5799508 880728324 30817671 445063453 178617692 223024334 120913690 153881191 29309361 351950703 1062851494 1057265685 652342760 429015211 155839920 55424423 654547228 939532198 242025261 633197362 1061947489 748541390 437919042 705386288 690186372 299833341 842455749 917308815 967672288 989165357 614936952 403979519 880297194 895128594 954998320 917767361 897756197 807089450 21927280 167923569 851401680 658377154 654741833 918593271 812463635 581709132 279251191 347530998 384947629 524810212 847446566 1067338670 647901804 24903361 356433333 220873037 1060718067 771253243 846336236 664320387 821038363 906200592 679637686 668288388 649268232 860284333 415087190 27973372 675091583 781368458 495492005 167582827 465686933 242000217 719026147 491389653 42496604 221516595 782121036 120883381 245838046 1005830863 804580193 1043164846 969379351 507249668 20797554 143487262 349972856 1035747329 578558429 1067091029 634742191 335625171 274388655 167269976 871409459 281191904 239231551 500821891 438133061 829014999 975027914 808361936 681269632 495508673 302678735 434165568 396812282 555519786 505909373 249422838 837800351 291085558 664519731 146972230 938726258 513826181 225318128 423542676 415875221 874441979 538790206 238528555 782754295 218259601 675940452 264382820 410357327 552476207 821717791 635425306 883943156 973806966 1046534024 586974709 150643532 886506217 110739650 1032570918 342452477 418426626 519645238 632148938 1046077605 703344081 95381079 270327078 294872773 968713499 351175306 758005588 754773886 224859437 190926005 391338092 998895990 271430804 237651561 874854958 679749098 274579297 560240020 593775214 232705115 562648855 773281294 931672801 894403805 37357706 1066914412 105351552 858462393 619821684 874855447 941076086 252111289 47777235 378110415 352822711 891591392 532748598 694061430 29873119 1022923187 268517448 840188860 1057040626 25714709 254358620 32605706 290271432 435030967 392468178 366749518 891605747 610647959 390809718 371269325 628966921 921895574 859793530 379207386 101426683 1034855870 784261842 743021579 101919441 696226349 399696205 416812696 91667722 1037626089 779374641 971684684 428237380 363567354 519819274 733449424 281315523 324824553 678469950 514226645 272763040 63812148 732856103 1036937735 1034634212 18773303 643722833 424360939 701103886 6783468 904205293 694103016 962237046 185835533 71620522 867321498 614560374 688058263 937968413 435750996 1015118167 563394526 667284308 1052363436 640231907 184269372 257850937 167047160 714997197 570703899 618504216 239916319 604262474 225720578 132687694 546457266 636065262 178791317 297426046 917294859 571167600 1063354234 543507874 308554065 1002451043 954974561 816105880 762146652 213219796 603590375 681191732 868626785 406334656 563620231 75843100 784744833 490240170 410004910 345361938 418926784 873547105 410793207 318615438 817083099 1045971628 1041644024 46659547 563347421 849605911 970391233 805263403 481200496 849464248 271264045 470059652 166669029 559676547 66664343 130967880 996322906 566795600 714565705 280315244 417110358 460306695 394992485 838925964 124383241 702476973 595249006 712825634 192702608 897276720 889805392 146564323 149678878 355826804 682350446 831673539 977266561 1068992750 655666610 368432191 685374483 289814776 201561331 822149943 42569326 742773515 809077110 208976057 203965380 729547575 710692839 172597290 487293091 348660128 209185054 981024694 539373682 563133944 92824065 314391602 656983751 91784159 612887807 821107228 963436481 471586847 781160731 35218512 56903998 526766867 941127934 144102051 427089744 712744471 345206899 919089429 793030116 683034152 1062105255 192798566 456434336 193361436 999863943 84841178 401488620 170148551 389600697 849375670 893643492 791991288 297767358 816282972 76533377 117294968 544668066 301945617 364131731 578549483 682803137 543818027 79281114 283930648 733173245 1015743850 1069707657 294507616 1000392177 785552688 938333831 400818857 221020133 1012211731 789621655 325073823 87379872 439152083 434120328 35111010 148391901 22108371 920140293 935261749 677044925 606298725 711826578 424384815 5373376 560605860 722900481 957103202 354639640 611815072 699959228 562780972 959982597 156526895 669406690 787399493 105483325 604413521 459407023 701544739 938908752 487558653 665794829 552118089 520842769 976504974 526175967 717571308 709546752 919087667 490322646 690884855 143395595 393461881 209825705 591353781 628099420 751021662 16193686 570140168 627889792 169703101 549927527 942977056 591174489 207083927 887118778 502341623 375479687 638842061 834275952 1064350725 444430280 873620819 565024531 401956940 29493377 784051694 632308190 421652826 128836930 896120391 371392792 951162729 892530961 540837212 415952015 285976978 880140916 761145223 196668091 876729569 1029431001 123508049 699318226 272623040 10255521 44271174 4686275 1007443541 774750974 78607763 351278195 568110698 909845006 926070750 916866915 279479192 427910476 11242889 30948584 614636102 70563312 919962861 287512907 850925327 843416454 238723248 281058417 707996949 466867966 801372665 79084603 457838795 849073595 355072576 95891074 548384149 968971781 815650272 520374111 541691660 253271917 397743725 233937081 525331722 1042838804 284869352 977095220 254895767 726715010 49272089 200014651 256381088 217947868 866798245 236944871 764254023 676677737 41804579 508993881 102482588 881300695 276809513 98949565 534697207 369980317 746417270 330989299 1072992722 352931366 324154098 1055333978 504520594 726366836 2062362 758798831 528476826 684061176 690825147 981321438 242406076 905341444 460887862 374386778 1015301721 858629313 364200996 846877880 18835648 619500416 342194525 703196841 359405597 685399028 661823870 560385032 116238516 824964848 493570467 652258321 730954752 290616873 833205013 615504817 731719498 113288847 1020789032 923511398 1069358113 568325276 19725992 100494249 312097164 10709994 1021424913 288437767 936452748 260305964 586472964 571708362 522751589 472879433 748737914 812717722 162382931 925260861 71342565 913306354 443344447 1030501515 394629895 633392863 379843973 433989343 301547552 1034680671 175296233 309624994 335420713 224819637 688198507 760958608 640656353 362390162 109892140 612893305 219831470 664131358 398841060 714794240 1039431908 1044067597 10405395 1046042395 725430790 150917725 426244504 189293786 512492313 757704415 311876445 480586772 716772097 49613042 44705889 218610168 518133416 992021005 193329054 301819072 700076563 326322464 660239534 958802401 710789066 694039149 737566664 478402604 1042117924 817741034 843225571 979051073 270940834 477087404 207136363 1046584877 121573201 1072530868 948039038 997624059 48349244 418317230 477668198 245688015 728833060 849533578 579659167 879672428 372798885 245650903 588776572 203728025 549538986 865998110 292939987 1034206168 772131254 184008286 642256469 537002969 1059122606 9667566 653518631 577014588 67196593 768142922 58119846 616597054 981985739 140912061 511008191 703565847 203611986 187692423 158837231 1059615745 886990686 1065756658 764480456 483414039 476795357 662216399 982303280 402012084 691641133 862706693 298411386 577060632 178502859 1071282074 838509945 977931530 183879314 403756526 115653686 1001959387 990661705 757527288 713518077 76075145 289636645 216430100 579197837 928857615 75026341 287411073 393795412 783597718 875427525 963100201 722976703 663875066 60485308 357212785 299398704 808827444 230993203 874766069 280425113 469301446 695922914 955350175 562386852 910970207 1035027829 326328161 391713373 888261700 820878802 536065401 863428007 174172539 615288537 626922147 315710473 796046303 696337450 938863575 619208263 1044162574 1065752281 838532014 507773071 690113931 531755593 506381547 292067372 819581256 728341037 264242776 62259889 238478527 644295065 999246903 959104372 55023816 734732887 692926312 275941347 201727345 746235655 778791025 975790407 756988542 283117032 315550812 700904385 1050884200 350649925 64197099 1016875163 836928074 947562059 502175325 449936794 1020811164 1023858282 624615487 1036775689 257487343 324979427 315176614 164085797 471277536 748223145 286641030 144184905 294487095 576735328 915614769 661140079 10296812 990090555 422321048 372438981 431894508 456714860 333252884 86434387 233376692 291838755 128812857 255033857 330063168 938410119 288286644 896469780 669004280 895707166 535004311 148641077 394842676 442234093 519739810 71189485 350669166 729206799 876353101 1072019310 1072139349 368018693 350981776 168243042 599717348 341179936 108511300 79723324 765887464 397548978 723225314 425304253 362178035 396335308 108846305 193183233 459799664 311405587 379042854 939147820 609868265 129900115 46995326 197291064 906901860 106284928 471754431 780973107 105921404 564438499 70123508 942677641 293595706 841313178 63333324 2454952 702786945 1049974288 177186345 887986605 67952389 793104034 982746498 719364816 164964931 406880060 575635649 318421686 271864096 84024861 258941380 165499587 807242595 884537 54870831 407119503 842703148 759554400 1013842865 595450217 389983711 103944830 772132786 217611201 394569315 227181101 287262029 718828565 869847674 415490501 470124034 1022516058 941645371 639074992 422737677 137938148 741514827 445549604 14609878 982797261 691941093 923572269 435940626 591148343 161847862 302940185 531994750 582369572 1064205986 483358277 1031601131 983571288 279852334 1070520268 540173978 644103384 86235704 610832097 708943958 599065646 674184853 133698836 1037168351 945833462 292610383 409231004 420711733 945421891 791523102 45172454 229101201 419367775 922262617 596155547 785829750 1046868451 594582724 798166203 157606621 139661307 876530985 446230545 682951689 157241729 511795072 297944098 12329493 226868773 662264857 406453356 748835306 463934987 104519558 1038643985 757555604 714264933 970899645 506735442 547927554 756351548 1004131546 264432688 850707580 590170586 601308225 909820957 101226682 82341506 229301951 323842235 601281523 355346770 35055016 973578800 1048027592 370274117 1054582758 351861419 831379735 703402429 601516094 611713955 522931159 423168221 556384921 299705682 764551386 1049839434 373660328 481695352 95161468 385643683 947984755 438886940 13550098 956412100 784164397 511864725 436929903 863176505 904969592 263696416 394356833 731081819 562216861 194975648 424143060 968418031 494683956 306224308 872619524 883415478 574292205 690986865 76425179 815353623 525919395 520598363 1022773223 178349958 147960597 205240246 668371477 385757066 519265283 940542595 911579188 608508980 956297732 262532015 47511814 1020052243 854861619 561628735 261257911 607926187 813973399 717823449 440325442 288676747 805912574 161176143 471861185 97616348 131830395 883289906 890907031 752632912 261166009 363516147 970856643 227087654 1035227308 682184700 847707425 363894100 838106456 333829473 543641706 659473423 234413397 173607635 961426505 308327255 1024505130 561367796 519053566 652867643 367394174 352212366 440380047 100929698 591739358 896353689 230687816 961320716 57273859 308078308 227719286 483074918 27837036 139965921 508932861 767549502 817304758 699858192 743175816 688636836 73538882 879084552 716935261 285349568 832441992 769355545 957506267 590128538 205470604 777591306 920621219 139104141 95660249 889410270 895780137 21148293 260889222 830451244 404361964 260048910 611160638 127762803 713861011 755543272 510997313 594514940 671823902 591319638 51244758 22584823 729380228 227417197 567899400 656446612 789437590 684597037 343185433 628536702 120115515 257510575 651060234 283295828 914882427 394570640 286520848 1021661420 668542962 470855606 378081407 812320204 78249306 599847080 240338701 941660880 238140042 260774242 115728643 588089286 1038951043 747472638 909961787 260049739 154199632 178831405 260121839 190395895 74017949 817213526 1007085309 526814166 630508523 594915933 724015398 252911478 659879902 1042269664 1006544546 144292297 766515456 964820631 1002939415 211142155 420659829 165008458 491307870 134099809 468282526 1424300 151976158 679950238 1017954911 761183426 117833125 588593386 44711118 958568917 1001486432 539913002 847778158 518458662 571535376 316835596 818236556 406671949 288252116 860304908 756376442 1070432567 430932250 109587365 399918320 849007681 563789277 267421821 20276908 580181103 972054232 426870493 307995670 546476026 750666188 486441018 990824040 721210675 23277702 240218942 160416808 1031744437 818369105 451981347 1059725603 754072304 483042050 14222936 178646181 424910101 495415226 409576852 258347860 925673403 838039973 521542261 151667533 610797555 579017098 287015947 203363946 641274651 532063516 348992546 18444222 456777971 819631492 827324841 1056891233 705751948 122930736 597755022 456113691 255186522 172094132 144207513 630998184 663828173 22542836 383914283 951711872 425537879 461752016 75079748 1056191233 814241636 134492525 974219648 302208187 842465402 710606015 170650511 624859797 882614331 1033680704 357164714 556071247 154820938 174691060 930242640 1024215129 191876446 427526888 470369066 596566992 778286867 960915420 645825388 512838959 101733983 817903035 602799663 778832424 691363028 181497193 429410512 209127871 500527500 1047747010 788837969 1067307879 465283295 1040918302 43109426 1023324823 576314924 608216758 47798247 561571637 121567669 236678820 325832002 544017990 766312299 569454425 652672700 882070769 179090658 110489993 579219279 916183443 347106248 295724046 973959093 992804014 1073025256 511194598 545694068 319157116 540469065 151225366 297394332 394270635 169892275 162791868 963864282 709382946 427588855 464731914 15607227 347720285 823814748 183001891 85931910 869989917 274279846 1042373534 413205162 763375539 876013398 537030639 484768800 503092129 871252675 1030287722 495470555 589583442 188980266 442490226 105853954 429539202 227042122 1024070903 142043149 622115144 736170431 57893404 1028870261 632116519 47086476 392729 640162354 550928784 1013271923 472440098 578532682 792742491 857873869 314043329 773269145 43457366 481749618 868903227 4269332 59910396 620058908 643569398 14398812 1032247543 234783961 591684064 22434828 620551977 194676725 599850472 282254616 442151993 699769312 455679899 788176397 196586422 654862365 495307573 932741236 334163042 620686150 95608949 510900290 161572318 937801066 281140101 54647230 596165485 166123117 176422010 443674683 236206093 372726633 798252712 557790587 858991499 157036150 163081989 255124635 887820126 361545743 222250947 509980983 1064337029 200929194 643969538 811069195 435438860 874720116 408820760 161888117 1069907470 218910695 368761662 1073105128 198833131 155958890 530952097 179699530 812350199 206765539 234846174 965170603 964906691 876274938 532571775 321086932 155191391 828269040 1045705009 939023694 1030365741 971399810 97668231 714527514 853583853 852801909 326344121 696043437 612267188 739388730 840802752 82608359 549757261 44242246 753815430 1039020053 179811494 1018765565 182922315 1012146773 145633499 447696395 18569445 778661399 487550596 921577119 306452471 1007370609 660065372 437449401 1013053969 1011231194 716115874 268558176 1012996235 1064667808 994579344 1014605129 731229989 981765811 699849662 141060263 82524353 804731674 128846220 750379435 622844674 266062895 685933329 1068579857 904288653 458275017 209201472 434843542 563925414 479704893 183312493 755582556 692753254 497621526 100313508 987487067 557436928 788363183 445080331 456980537 352958044 158623791 569610176 1060812545 801490736 903151429 520065338 994065977 1046046629 463527398 534237587 229980068 396356537 794226455 533752952 447219044 119104981 435189627 79894202 213482985 149872241 263197968 353565165 229409535 826100574 138844791 451851886 61406691 347698285 610288104 214606544 530445860 630337649 143071542 938559426 709883533 319958129 51912483 597700609 505484778 1009419906 1072992542 278782672 943289300 114658744 521356439 10438344 546963628 796164887 344584651 16967801 321912029 999439983 837763783 574148661 733978291 2976593 463264298 111269841 555934238 932961400 472396175 368977413 649321070 899183048 447539803 1031620841 667515969 173636148 785088197 673707430 200804902 313029394 145156523 100451228 192268143 159073440 750490442 376051612 61283925 973611390 326220415 431083307 798478835 605331123 539815026 109312012 506021943 1027757433 743883363 212537346 1068247475 106139758 92125540 943339231 425488026 891030724 702046921 1029587128 21013169 287070018 6481541 35454296 452567358 454762365 188739874 454807289 694643325 374308837 988811396 483748865 832804013 841965702 128800847 496468454 934520876 107833525 210421823 613445695 806497967 492453212 579190389 1013134356 880411131 917574039 924985 413113249 637602137 8048246 542713584 514855562 931734497 856717322 10679233 640143997 264210472 1010567442 845120061 1038962439 680295337 1007808570 298063223 156618931 546881535 762962172 293647001 625325800 766682618 421666267 677041053 239351570 514161070 1065915927 470813119 425531712 304460359 524307040 576752861 891850685 905523480 386801626 294080982 171300136 683357743 344994423 172839311 692244062 866334920 43454501 308418380 926570021 738432258 367961987 572924532 79277120 789712760 515416474 549740586 803695819 568918029 39019735 933318598 711743956 656573717 744868861 98258010 38972602 322437048 137822198 196016820 1069950822 194758832 156988721 943125481 464332904 847512383 713347670 1011414555 824846189 985889143 879649918 274771188 541483108 830267829 177780127 1008911605 418245905 649282131 532157866 511368863 544980953 372019679 135117175 212810016 1049970140 268687635 639469959 723090104 270167471 1018893156 1046812182 953503155 975335529 545319444 643337812 661079550 877365777 919986806 702596326 670385657 1007204962 668762788 824043526 122137468 457554582 413933236 559505212 451852160 714192149 446331280 473272661 723875687 885413542 596160895 952430301 818023664 793174616 129158360 304591707 1058069404 1022069758 189550285 719690765 922468549 488598464 846689910 467400033 5120397 711742283 43868517 415057624 667857998 238387182 771866041 248125712 626643928 1035288655 273719083 1030034371 800632094 1012876974 422870108 714848784 78323873 117416990 39008623 484435755 514179528 244001465 93671656 1061036670 290189531 218204344 1071787006 1070205584 618441956 358642052 551406537 951315422 1044128759 223564840 931050581 511644351 715935963 400475929 357167560 12958140 415097836 258390320 113770084 1032627935 862139716 532061229 875669864 332643713 104171323 612442799 740765800 318455741 549036649 421417318 601113459 686843477 709897032 557945602 254038435 409710828 106312856 545403868 667740708 382144511 353961186 836112815 683983328 700318653 470779352 513844895 938145173 684063883 978481727 39143351 482540678 701980205 690850162 529903353 466445659 23141528 411242227 594063433 215029982 745944237 678600747 999890510 860283127 236185907 487481236 792534282 527335530 813979160 26617412 191859144 1017340369 292975366 687103987 329950088 884816453 442739715 218797745 323450646 1006253026 496482949 289233598 579836100 674714906 786254720 698852905 284703845 787712886 685058449 217694935 945377 766531978 921570976 1022259023 847264712 555681447 744013153 612940096 1047642393 43205238 548813664 461261079 606572917 591564315 379444356 251315698 879013242 664246552 167953982 1024344705 521550635 361599447 723632844 111115362 70080519 96832573 783661586 208314610 39587547 8429271 823819347 926333873 49092431 802669517 185105600 388511244 381378740 687295983 224083632 1045628028 147713267 668830432 202288355 390203586 788297640 953131274 865450794 483319326 599081967 549548323 197233281 431518421 1026448341 539364543 383600917 469528808 339490818 613871468 134785796 886484156 782106831 189601459 1045047862 247282640 591110348 177420330 998086639 720398577 870832779 611764952 576970033 311459926 564501813 792723486 26884920 616811420 348225922 660651900 716584456 640299330 648235217 83727112 1023406276 267857091 452739136 111426575 710504 434035482 177592459 767307470 765297184 908740989 71947979 3566271 458065600 394351717 504942881 286569309 579869418 164095200 309219289 485398219 800027029 330374549 1005389240 23768574 158853277 730459299 400162858 657196731 364728714 506056646 535865738 1000775162 808959537 531186726 723416631 738093226 615549254 910661385 920945697 903453310 550591364 56450204 334074172 874025074 784938934 634772171 628398248 709583564 363733593 520628382 446585075 903865091 814579867 955754536 1032386947 91942737 950816559 825705516 781011662 137418902 777212384 394518443 490362584 263813667 929110947 104215671 207190428 513252913 519097942 1010659936 862037522 1063246511 1051718017 688826552 833126937 777390975 588487757 444922781 856800888 635970514 149287456 320985743 109235101 333450462 594001680 753644436 575366262 113799097 1036596518 935600509 712474843 490829730 205361553 788901225 317960226 359333156 943441181 121373014 988720304 257739711 418696746 671442273 320962166 834167990 379870554 1048639019 502504679 1036246259 120478767 817483946 975122431 665944286 727877008 422852361 645430073 457684658 288750004 113791636 347835821 259886150 167304734 194645318 1023068966 144921416 513004151 457962971 697122232 645110486 772386762 388384520 389960533 90949168 792847706 196814047 549453906 920324274 663789088 967418795 96261770 428670095 232796902 204200082 740592552 14805324 316244310 523722646 231844780 591281211 639019202 28286722 33045180 407991619 1070960155 327758305 485357061 1047265023 697966754 10610457 828771668 851582017 332993702 896293921 276837746 808156284 721936013 295138006 345710596 295451476 513422617 844961852 897477240 861465590 29360785 563888837 995584599 867907481 336179988 311878673 877818442 193165817 308948137 990833816 913803867 609135032 75915416 7231517 864818435 671898554 365987063 944731121 634308681 940885455 618351733 272467547 990367610 350087822 424137387 510942761 141543179 899391765 97929002 1736872 576867904 718991946 712316557 999086790 709355518 399800683 1053758476 400432819 594075175 927519270 605358347 796591845 801346954 384720196 315356553 101718429 424215497 376937940 401829716 1070679144 197807485 411342323 181408290 216440127 458310141 69588303 389669508 473401836 296430741 694434540 865272763 175660861 950185770 774982366 937306984 369953267 810850350 668123348 996389046 399186560 679257947 119888665 1042814186 119080679 625707801 826884707 177589966 174748840 833790358 118988473 617082961 991316872 523345365 1043032262 269346819 300263595 825096166 483283579 33372712 333612766 836181630 951146683 518713885 1036139442 393936352 789123267 962057283 375219414 377482393 154348520 932930150 209957706 43858745 864687119 656542738 940508778 892162621 855351325 795924903 483408957 600603614 66237630 826075596 981840271 1065688971 885333376 19099869 1052257509 151082474 717390798 654083965 887185700 26491809 788791093 501510843 495807098 378341079 360189520 214981326 336229760 659314248 233917376 312957441 673826892 317179856 260688599 105211857 909078712 309999197 681100608 258822068 186521184 233365725 396670750 74754189 642150185 813847547 355227212 669742213 263065622 493980017 14757859 674155455 906487105 732398326 493687014 263684781 683217385 719722512 962827767 728752537 40324290 74840460 652778423 329055997 265241516 815260277 451479970 793161327 224031542 993327519 705021254 973903803 760237632 452691065 97979199 186679045 335413788 349996348 202883557 885314575 236665832 326138842 711041744 394717878 895485685 836101109 129683417 848363994 30123097 282365016 21692439 973325459 178555485 290027105 827262182 436215454 202744373 267023743 677255031 110617594 552845710 838095964 178111342 860039463 365542759 208732038 662564209 297265404 892335862 887709207 177116607 772621957 934707116 518372737 437265286 273682227 177818944 978655124 842012487 153900059 600361696 103531139 1068831729 125170197 524249913 427375517 707009877 998250002 754263327 64378665 7019644 690162056 158076676 327169238 781720080 621671925 647730664 53995407 834154747 645655647 502070784 1039484266 976228651 924818727 5633931 191013512 469891320 630718221 320924531 1058618418 505189671 839127178 533643442 334940043 905415403 855022556 619940430 932732395 34938060 385693046 46992269 317091163 170040422 413568584 779811554 620536166 1078565 843564738 548568298 76111351 788845283 201209089 635661073 619687597 509710862 472872935 35938441 79596553 719896054 1042207975 24976522 722324902 344256746 296190993 345374900 1036170344 351069341 225597155 800418595 652484158 572150251 94519618 497261654 636207477 1013853939 120173609 454873557 436174389 97339869 81158328 784705912 747991908 834452668 96128085 772670860 624242339 259303292 721598124 692160235 693291515 819097858 986885560 308171745 315941576 143164236 1064509774 944086724 570094162 16586445 126074096 106162519 572500510 828296856 305953523 829230548 942868719 254338165 433667947 577573028 232319840 421246848 882178002 260605706 983144913 263565972 665984910 654598853 620191704 306412251 271373836 674260304 194340215 374949160 226122046 154923652 303759968 1047945731 466306284 886390536 769038012 264346623 781560329 232732400 39977523 774681646 971071571 597964737 18307399 839816411 490454560 339518055 190161195 1023768856 120014776 746424003 494202668 891661478 76459824 1025390563 324203266 1007118668 964800656 545445455 823833923 272828998 94263963 1003183007 1064834380 27790104 987344592 786998761 343575478 1030936463 487854534 1034296705 720436047 404064296 649229110 722209351 15769625 441246921 642494079 711439885 492511370 792541678 951601368 444111016 309221735 278456420 415010613 294948984 323151014 423414963 458390950 665634879 948897384 592161629 724182368 587982294 796829564 535242590 539032686 937595171 241947729 219675614 471043273 123513883 892728801 758819927 1049169449 658156528 647431771 585285367 66477990 701420610 116374943 24819586 1067769071 769770717 676768958 150418472 260339883 977350171 1062733949 140717585 61727826 415489862 885271215 560009400 196334486 242456904 933606972 934375718 603377679 647878383 1061305099 199623579 1052885990 993016617 882368528 99539742 656705778 556612837 706937527 859825576 8447638 301153703 656625438 826970721 302220182 798363215 279075221 731476537 909083941 917880238 83696996 505837647 75643393 552010461 541636127 666388051 625290291 1020457621 901142549 824533507 776523609 1004609746 809895177 187830455 984301293 338494550 3669792 206228093 841135372 279350078 144833035 492400010 752632693 942023943 553181044 543248627 366215292 780961115 679793112 751674144 731311534 121353699 471564393 372223468 61401661 801434383 580780665 799032842 972322871 865608432 298711578 494403806 227221125 1050920553 245096546 445759190 260361319 800942190 695798862 1032458144 752849510 480760489 596733201 243646492 222068102 381125335 741990010 445564533 28137572 53878428 604743323 705435256 304144335 54142657 992992270 411535380 956249667 1009418200 268328767 387561502 1032936600 916744516 505117351 907957235 993348861 372066967 864935078 883658933 467783545 1002054077 598701366 299853292 502815939 838191315 871189858 67283813 200879329 551566468 80294291 450185121 717433866 323348298 52072593 842872056 363292403 577891349 48268314 686277103 303394355 307014261 955581813 191335680 1003340060 433918102 633817155 372124123 554533419 628203204 602529220 530641743 206045915 955984648 362596045 300639698 1067107185 886726546 265697447 490673169 879322458 27176966 1035345031 136682727 50340104 367402021 733125347 395861080 33100572 837622088 146031208 890141088 623132370 424033243 571173269 675561552 988660992 608813108 940937690 844860573 395414120 304865687 652782346 21832823 957259752 223923736 797806392 1068141937 483142486 1039069697 901042953 552040167 439518307 605736688 923153490 1065448962 971018171 125162722 164642455 889623207 119392242 450617659 178477891 902025809 626728275 264615530 122963383 152359964 245796930 1061508441 621721801 836282418 610912557 319244768 937213630 287114706 1046659296 1004847039 515836113 577403270 524288884 539994952 433548706 412416995 574125576 527504328 800639674 833444413 647848355 471467614 654778369 352299363 800789099 754316595 494402901 808072671 89800733 872922772 447666264 346188422 827449533 360615582 494574035 776182085 770429906 397445078 669573956 884744187 314901589 906045582 371534928 651771353 1005649194 690325144 360372570 241245796 464508935 1046987945 716784545 604684123 33906635 875292223 938988085 519394436 675978672 535846460 449712860 777927244 447436914 558737144 279202487 528438284 871581176 86661488 461513253 629304629 88389291 361437415 270585774 947837718 711810375 796526986 1026176391 1072051452 718681283 337850865 247198277 974389099 493502590 832357 307626082 844005202 176890829 245803004 821367078 688416608 123574973 439737765 631423435 434121617 670010001 866872360 74839676 988541088 211367324 273890385 978853927 239155189 255652381 516683343 350830731 257612258 1051815832 701985684 1007453723 945437850 477865818 587256423 732144839 806437396 431988643 965011286 1010867909 816031042 127437586 374550808 908282873 169830485 860673953 203206753 839534149 971763785 1053381006 29561891 179973489 234024306 428372251 33450236 115324814 705515866 116401762 223921860 124640148 758190468 746128444 972018369 715945927 553854990 671420078 799961680 686891578 516176326 1843401 690894335 423487668 818346654 566926607 776013127 187480074 612909577 357034949 1056690835 982206913 846621032 1058348067 958403712 882233199 64307084 936410688 292560351 464734948 644320506 677524291 366564455 86296446 347283360 188201750 477354071 246577929 435589465 264526994 775648903 1042524196 1021733237 673683003 254128697 1045020295 615446740 885730614 249761540 241348950 518459176 470765333 272949607 365387943 908060840 187708933 893076091 523986365 411310037 103819677 306773175 822017258 1036845923 188764860 507897875 21133580 975584029 671997344 858141133 500701870 487141738 552390999 268315002 702508831 377482521 585745187 1003361383 232283983 276050410 650650493 999612896 1043925552 853862078 801933557 250935759 828832291 580114168 1047789360 784208840 796478428 408685506 1023481430 742478425 924853032 1008166789 143290591 123481790 129764307 898341511 1001821283 306457297 454609392 151330121 959562725 832980799 878321110 271542667 227219868 954099978 870725727 209465820 928210802 583647247 213193648 597359394 170437433 769278400 285638923 44836440 124586024 450287740 252898918 666066151 748412685 181349214 1066135518 563535349 38753635 325673309 734000283 907237827 937695733 123909533 52043963 336965255 430501382 646279115 507835208 974192882 298343353 1037298050 425669422 487985029 54166854 2136763 876492759 743754882 267273113 1042804624 23143607 264484471 551162697 998817258 494482497 507129525 796216031 418386901 730922608 352794611 357018397 395494769 696751983 393583354 523774846 80361233 1063305409 997910854 272857899 646540458 576585769 307685477 847480562 58828807 305964743 110712267 761976916 737086792 486304663 740749550 1015085574 667943907 62333578 757581135 1026681473 1062234388 123891148 904503436 757161383 969375081 794637342 81224422 873240640 947600964 393852743 570122925 20295744 884789246 370165639 839306470 1051143076 280971164 516450051 715909772 538365333 97927259 616989628 405687482 904509955 515407789 7611920 834100559 529800632 34508231 29950320 391863987 260973841 800200920 215525129 21259448 314429784 342977580 745046088 889521504 170374132 272865873 230611729 456673035 96784785 734577428 457012337 128626898 327642156 18376920 239387814 430327146 614954038 643410169 51160877 997595746 400994580 838346721 137247231 813018883 165322709 797272315 345552681 637688953 720295668 458512612 726498681 17111857 167691261 714092866 543125006 9946586 382741342 354979310 511054253 1063879038 800087971 206003535 250025497 346810426 622109636 910581299 950830008 1019596199 1044873522 341524969 654622382 5437189 110318907 724399881 572345157 342045626 317867478 579423514 18964599 493514891 560610051 544636998 440886217 844087735 297199616 262782619 307681679 317862236 327537270 197566019 708401364 303756159 474925014 266779424 578556941 555390635 108709137 70746122 944134459 186592534 568490647 1068788255 404666262 804827166 739742039 1018634041 669831663 546951650 991928912 898085669 175660267 890598860 558143014 300691822 288061413 381023768 526245165 429688188 1047559250 937908852 994336589 818787903 242447713 444943993 60768957 500358421 67317814 629586781 741882172 845458075 78840808 682801254 704477081 515432112 1012052707 332344872 308838066 628539925 670819440 413687981 580655092 339268663 189187794 68482420 876399938 433308221 1051391605 284478621 452705154 417984383 582901475 767978220 1045693030 226667938 383271023 629997620 708051742 214691201 858250733 245350288 559031836 23416617 866938058 67091700 457372337 53685251 801929991 35880354 382970496 227191707 209505254 652174060 585425834 907161716 903882732 24367334 984873271 341783328 538799740 470348121 881465061 354206146 649963709 369579654 809484974 647502316 944596108 223732904 481815197 673294100 287992917 1048879151 353443598 758910820 390062057 1060483962 559418488 78643712 93738943 756130846 939691609 907876013 910830898 207325658 614150206 533036981 332726703 948104426 1066790021 372259845 267566314 1024899815 570854989 357740896 1062473625 243681299 740866765 900933598 558541562 763601374 328102383 333706272 234819959 911175863 313460777 83514553 503570043 749605777 299834596 446939792 951381027 255760747 73010644 691965967 406489854 996141866 1055069538 94452162 1006824678 883833933 758918761 263097152 587418890 558069728 762242429 253705277 286050751 67513200 1018462417 669088927 982525306 127248697 707353122 73637908 375051056 22807850 296210762 154371385 393065681 883864345 707164918 733599062 705576599 930990436 490148812 683642331 20085427 346965505 370192110 174804993 590731692 163567790 656801564 1050590952 898205062 285062933 317893734 620897891 996295691 585049334 261201405 728181457 280958755 392629593 583880147 808051871 135484946 578642624 573191963 707844223 172446445 80659781 13994401 31730285 396718351 986326394 445686939 447203168 235485481 340568112 186660489 890985995 476640084 937996976 886160447 545458356 367585306 499676938 37679788 858657801 711658727 462858968 782280805 991909693 368245122 146336873 821039563 688904799 966872441 329760473 853450964 681597121 1011625257 364146134 533458455 171779297 1017956770 610899345 667200270 516770941 509681682 162269563 680359634 194503967 795218762 603698656 391435515 862205374 893981047 917170059 460544593 499345002 189297723 824042248 918337102 254741985 547409163 300575605 607487985 458959180 384961529 217681274 453034388 325411026 820888462 848597797 834633824 793294678 239676368 265176714 470412540 474917749 32634673 107786799 321627882 129444469 514934971 443716580 904728686 288056028 900618893 525757738 275120323 224175507 716889852 495879386 464524673 180655136 244470936 840195795 680998433 473996170 377440364 722380199 304592697 587861860 698432000 22557523 229929997 508736669 321621697 940008443 940732455 41064160 821270844 100527667 152089455 315264743 361498908 297150028 606834889 122042162 216789160 573494692 869267053 26901431 712587872 1068352582 527192616 312662722 515929566 564344656 310386987 441290815 258026046 233386934 141003822 964470511 301310646 864547703 79463543 855034839 917750439 767134607 726243909 424896217 537901117 484737217 710343122 103346670 71370971 715198421 132644434 243492523 1072901997 207951468 482824480 437164216 71566468 377447391 976609410 168524476 351099934 949434586 320239299 1072835527 294403077 511350547 789614890 619091318 873514158 808665382 817094744 874281192 756448348 430068758 840903751 61518333 156330964 122319599 844256851 140704762 1039850851 1026039587 23514119 641118909 741437214 402909487 1039775359 182114966 971202119 373324468 310658903 87552900 605429310 849355391 564271780 989495947 750590500 111743254 526894143 839237454 109123863 649168087 1006848085 623615322 623626290 153793617 163864442 387979890 591539939 393924492 672296720 679451998 455759092 760864698 182289454 772698742 438099063 138814010 372782235 164501385 958859162 876254881 17982663 676474970 665937052 952260762 540786991 850328218 834306466 135640115 396248387 448395913 844381552 664552095 583279750 252828872 581471694 820027120 665525080 176228650 117949945 368994599 922402341 1024272929 141383662 174417710 886957793 544608577 480710275 627857229 823002459 1037891924 475742989 215538006 948979850 281098289 495435484 829768283 485228203 707943317 702142058 1045349069 260206296 66044025 240100372 797506230 51811754 880334858 166523258 436448463 43177321 616998322 133262884 413249009 796046898 610886126 729786732 996807981 898745259 1048197889 917021375 235002489 645813939 412427166 135530806 240654319 592057779 420215783 17189285 227772548 753225277 210962208 61142117 930391180 499385885 454252142 1006708443 950952398 497340084 163530722 1003848748 1048589051 755328925 302783492 588858236 1018299336 814255703 26518422 204031314 628697025 79272498 552775990 98304821 877283646 15408845 21533872 281124761 57861777 290852970 381742518 833497921 170170117 572433215 386405021 700566391 877880772 563333884 989105446 845716855 316619378 106089676 195199590 1038834166 709125936 140850989 456889289 444856081 390206951 928919203 519664639 278387210 119169419 384702213 502955817 1046553080 588709886 342890568 746419899 183973514 588904356 591264301 261809022 476025193 417565093 917993735 831849448 604064474 726900742 198777040 988297731 559503518 548523234 50467048 559188549 239941701 368833194 904387907 53756315 1034090043 546693362 485486391 342324746 1023923733 402648284 48876417 184506573 384231733 236517536 170463540 207689244 421964609 27304509 939082058 689082155 153891460 370217048 565490348 4013583 537543281 672417092 378981078 198833703 156466723 548013911 278456808 1008094881 350488782 795385769 662881295 448922595 557519970 755260150 912880112 836702805 1031114472 916636239 869881061 250556013 520914611 406570337 967161092 950081455 82160796 748902166 566394545 346907893 220426013 1024494405 305746571 43376881 576569848 284961869 419720523 440840982 426111335 305665884 741683754 526024668 225145235 60842406 564450864 356517479 1069749319 560044339 753868429 470670859 908830364 16363871 551742440 662960715 175073469 313483269 347189090 453653960 258937714 125080739 616995313 1064595204 244674040 932384574 327910908 543253056 790713908 682774902 602168416 374146954 82348934 443531312 778472721 74553918 410791377 158400901 1055882179 193391499 1003606834 406201266 730119179 413311705 350011249 139579876 992087513 159693460 369273650 773867437 569937887 14612292 902109274 989507762 530905900 372916512 1060164317 5938513 746000832 424058285 752706377 628307705 613293356 980547855 179920610 664581441 359686204 911544884 608268936 708917284 121038570 36008566 267879739 46964199 113612331 235898329 709833233 531677796 408245593 135933079 915308387 246880832 793579321 880439811 1033136665 481692299 845163311 127152330 516853061 213211863 280167955 361376190 721446781 859993209 829118005 106523925 166327092 372452657 346717874 651297204 407762023 959585747 859003764 688719847 327884055 52991726 115722384 636931306 291361892 526739403 435622073 835266057 292635834 97031001 475185658 53625505 653505 963246979 36267695 258246704 988593840 1039168669 157202961 910341639 837455809 726089131 243810889 243734541 1820485 642051613 134141310 819431118 1051944434 319438203 564763021 405441490 399626088 79629757 480541762 1013642639 16994999 867849401 1028069507 420061090 530747562 538978285 374446575 638637539 334774180 403375367 34906145 292919152 711107878 1892792 25002976 551062521 467894502 8154886 20449766 866189973 182623122 74979401 295909692 610543647 567670913 185745216 872585649 235846330 619694323 530350299 776954881 1033101590 337071470 983806215 351575430 857542422 574345174 1027451675 346999767 342816413 942253171 457386524 472168837 193575079 828045524 659784389 175497423 885951788 400150632 45900086 378222709 875926076 344723943 327385582 570285629 46627005 3816545 416620533 956161471 579859120 431549215 993948064 304984306 402800725 6501344 841261915 89808703 220774579 724480519 954557074 24332498 1037641061 521292639 114175121 747806727 540275356 24464002 662685756 671411323 787091176 164512711 927609952 523542417 682121383 188742099 840704910 866408557 234771837 802554233 570997523 292303822 200479050 952486204 345344199 657515989 782663844 128007417 558231252 1043650803 1067006925 451399109 561270287 978255167 878693925 941366254 400022726 547027129 262207478 1011216053 945190109 5047559 1022503240 702948478 585701233 213244372 399152972 1000478112 487503596 873809139 941385135 756738346 352318293 70817561 214174270 865727432 988796879 222430901 1047200830 276395939 64009670 555375858 641098803 491709953 996900350 111942494 439233560 971951088 580642296 245976728 746600141 976184413 580234608 1061856754 713574458 46909769 64278978 302817540 3155939 39443740 416086835 773178166 976607642 1042758803 636860123 996436738 182855917 394098210 548698136 114476644 845516196 162288013 225886495 347534534 106541872 829615188 1022888624 167660136 316572768 26559527 89324255 881677138 724455525 239245266 1034667850 663003284 164878797 722435899 755144158 9048717 178199235 19551492 744825641 777686717 331641568 517603773 795079563 876212251 774659016 113442545 899217177 75517138 336290934 679548738 949628950 667773310 886037541 503113940 898582299 270065624 845911291 348779083 507595861 350568736 598421286 427110008 277755815 634907582 234723507 970611995 669809002 294211376 953110960 411636688 676909511 321429051 19562659 544328880 488630177 452381195 700149904 292247 395235653 67621028 617795211 898826114 889301068 7137225 418724415 932971591 323618136 534052738 878091001 124295200 1026680325 504970056 536907689 409990080 557470921 513865828 701101792 161957104 101584465 908548046 885442644 973626732 589129949 561275408 77363010 44716557 107774004 1069745650 467912355 189789548 934409833 601668244 1016131963 1050085367 746789985 643373073 679048764 836184871 801181907 962543340 24497355 279169123 638102459 787773926 260863683 66920536 1277040 404970191 300264358 202799458 110631866 736027490 665527612 226282945 504131502 364739569 294633518 277017291 338340217 599917465 455381022 624734682 169770487 638171563 1061207895 155263764 122446266 500042519 348813176 674240082 24710524 135638362 972167248 47465000 534755138 979184465 97145991 236911579 633421278 304446616 834487416 878459743 528712049 702669302 1043609022 240018776 648123224 1027808222 579215296 96415236 509997914 769883736 508652500 752983690 468158916 233469456 57269131 46267613 198189859 289575550 543895448 647987178 63227480 664033908 903383704 405517133 495401017 357879910 922630554 1032331439 115558802 787915659 632881153 754622829 198561444 25457418 601865258 219522562 969373710 372750028 1050727721 607710461 1052514489 393007569 328389482 949792173 319369559 1062899179 423984507 209310354 262870441 140072581 693126662 536060190 922446468 381583783 313985969 142031348 418889094 458005505 924522210 686687573 379791778 164317044 926898725 351334598 579999048 641392833 59024761 860422529 179500304 130646302 411163678 1001238255 1044807455 581741215 483741944 200346110 95046207 559025053 321705685 658624957 780818012 102562421 102020231 556235083 438931453 326890783 892809329 777681048 1065998463 290585138 562105800 320819013 359915431 36259126 561426552 756569458 819715678 566644721 68847244 455943576 471006035 737191274 1030844427 840780598 1024663148 36112580 780816806 496241386 200298396 291836060 790023001 232372320 419478259 886623500 837657453 450247824 658531161 319230175 414323774 980342635 913753388 204908247 676669639 599190067 426358117 793795009 607135169 415598916 250361839 877441014 505666785 167146253 157790902 889922593 128991386 751215064 680213417 769430089 413698465 1020557869 557861318 724266804 1033733032 492184627 952602943 198599538 571073661 152666036 159151384 156428998 27613794 251665411 40684907 40223164 28056743 130906195 815292847 531861348 893023503 460659083 703457452 641038068 151720051 474728261 510109258 235998050 790351786 339987461 57570500 996155920 1021361877 222464175 399009170 71576688 268285653 943194320 213913318 1006442081 527926898 540704740 936561024 882788112 174737148 911881490 368936088 222823231 1058636598 251935549 723318647 124689023 144144953 219021255 220155706 753232433 242501065 987669964 805282925 505723082 354745489 55393633 618386058 520769745 458330225 816035638 923090021 311081321 192086919 105104717 240919280 961613037 821631590 808892467 706465718 278674412 184916088 188962910 320338644 306279481 196889283 26471790 135011282 933977623 534590344 6599709 492876465 594261125 174714795 272308383 105157885 248277771 453203340 950225150 572378729 124240525 87355804 901377662 754768243 436975644 59260527 249287177 895077401 51124601 1028408872 511537435 232604331 768566129 781497206 90690474 991892215 540677309 53602280 567569575 266694261 900503825 775010336 331274579 182161446 99539772 634846996 843519862 899224330 370062546 669744225 200312338 134246362 423202616 930099284 880715988 502175006 536685661 966646883 683426206 489091843 754421286 185845133 197538510 686231604 857649607 678873285 373707110 951822282 561545344 375134870 129598757 561498377 480562900 164189191 186227397 765809709 857673808 348473784 299801294 1067051916 74820513 315775140 115058628 224986246 818760089 321371816 810249310 584782547 853396449 339247537 986398810 450656219 945104831 188541283 743812637 633589906 924167146 44520356 755705339 454192774 814768596 254865358 661891418 898831575 1003469665 393529126 352169631 225160285 916351330 268144219 781981533 140847270 937050189 991553145 286306497 619446941 300184040 480797958 835313575 569378494 584433718 33702160 540494275 499572738 979080788 734461794 744364829 818300833 320256592 981347458 803441633 171448504 20116944 1070258564 172035727 368862782 1073499652 61938759 391881342 13651996 488473440 375979875 1057879181 578179590 289353717 921144055 556712064 484637229 326024381 352443896 512899015 674040670 530412097 76124613 690079776 575822755 305890217 721760997 2580096 48110129 346379984 659894640 509010978 873106512 621437456 443036545 1061540772 286607628 148446690 324896713 807840377 852523352 490782893 268349101 490532063 554424428 739030329 162879301 188921218 625699095 247381675 699052400 131870747 22331776 526802431 514763166 319455529 224165962 811312712 739802998 42260659 948551868 948839565 1050739558 1042129705 996381301 417091226 714021585 465216698 468598506 84868647 128655036 355483564 382427801 323595451 1019447594 1016334611 539204566 940626075 987428217 505279886 746750844 337347025 412928631 581729363 64892172 787159861 937257146 932222135 383745554 1033647393 348149369 244302881 465878419 545543391 552313664 305223163 27767273 775214803 880421687 146602230 651876319 848709755 263753802 280344071 520916518 1032913636 69980583 259357668 105222294 406966106 849202641 76906644 849558523 651433855 38441821 1010320986 792073641 599021408 971399140 720239884 232215306 615647812 482685563 824332005 70824077 746623474 926182644 133424001 92729516 329790467 1065307840 752247423 864033497 762997652 1033624423 887919030 864401934 927669087 1060743238 1069640181 89567817 332328841 252420628 733959748 348309273 568843157 834130594 288198065 106465546 916921229 440209320 776755625 254011997 758690106 342783757 838178173 899120617 713738193 271185264 854245118 409667776 304528944 636356414 821162741 1072870859 482033863 650571449 426531879 564842451 456671314 677829341 192833159 590802613 101503306 9091911 707695219 475351493 186144256 387416967 1069835709 509370680 1073539960 801664026 159553871 844100188 1042148521 330443151 136656815 117982226 377617448 842120624 58273903 998491028 85886311 173413319 1049358785 335331469 510676753 237942284 1055573935 519348372 120039521 864966385 630105249 92751103 146626412 634670914 397442277 844088447 819368028 473489988 129002841 543005040 592670163 155140548 626024749 942952351 80245568 70971959 449208287 974884160 903680678 1006698265 943373147 1042398252 857630165 406303403 56567363 38502669 137198610 390032523 784284446 65043954 800873527 15376411 611851495 403810684 491056017 234638420 914802758 594161999 548910531 810884557 798599339 838355771 985605098 422520617 171346422 838647041 801577053 631100930 636932174 691713286 604011776 550827945 78191045 78213221 190271785 224522741 206645710 939195592 20262005 1016967058 9622091 118813809 891432259 56511194 1062406603 436354256 435936840 884407793 925152703 204289730 527355963 172436415 948767331 491896698 189836759 363642243 302135087 954804971 454135034 302028060 948248838 341760844 732975150 714839889 79075536 25849134 31743941 448881879 850237688 385836439 682153666 513603031 242781014 1032073234 651169075 527586650 843432622 208976798 528896284 596473972 595237532 71498102 193419070 346539764 911924877 765733863 541924276 937035045 986880311 672662558 474605377 203755913 24977285 563791522 753991013 433459724 111096910 838321604 135741848 734496867 527198673 576738216 185209694 541125725 335312005 713643271 695557762 120385664 671107850 594169166 425842267 989578305 569081746 952571394 252694039 559867955 635000674 850440677 178935266 405941125 516288833 552043777 454820790 718876616 803972939 94252075 283923310 62680578 517377393 723733536 13310349 89908874 296218684 569382483 30975830 889969486 1033511056 502493981 779717902 301015152 304751534 118274014 1062257824 426892030 221484238 889292825 462497750 350387314 35125633 966362374 144585944 65938187 750257620 429999838 496029574 679744962 164743354 501837765 1026091733 712242196 552929127 273292839 808278371 468187434 119353773 935554123 79847467 385000446 221732401 730390132 820792522 55740106 281427100 990722098 958049993 542435783 698467336 267100142 877350492 626948032 221488673 282477051 70465306 272140762 411472614 692020986 877830218 1029328259 1061779994 974793033 196416021 824227546 910267077 622113650 759379961 833287461 418442915 19520711 977109738 421755016 390953044 1053048463 741008096 400977685 54873371 644012137 614347872 748450164 404435312 47647062 194468244 698430147 471839583 130592397 757959281 234653699 821382147 1012728796 1060243743 541512995 498057808 939270044 717881501 237438575 843190107 595006280 726004046 36056899 912548703 1068376121 988375689 47232623 869884896 633533462 675014909 763719543 1007153267 887798409 934634413 335411478 189805631 921285148 338521402 671335561 591676316 534283176 366323635 819047801 547048287 330720846 786915731 241896236 768087175 835609932 867416389 366233231 535482972 748132572 693239754 689127476 273617372 860860136 696245069 715286590 689156737 297046555 536197700 274300420 293019505 953229048 108284044 1026633476 738654043 806170129 57007891 787526205 999071424 278091832 170454747 590588620 90459281 131737530 610927386 979238688 845574638 390480065 839954318 565240946 34231260 858008241 591114529 961602049 808609316 696911233 483307842 594230038 829872002 658580151 485656481 274314940 875531654 1024213671 558914283 723317185 705744221 341896350 590744280 585976290 292112858 457117501 394829017 621758148 97292791 227255446 938889996 386481040 206115084 685827715 116331220 583643997 846405623 701572534 560204020 827076879 125392949 347689810 917432123 980058424 784254456 181772276 426497011 997842089 678106057 869404347 47512528 149699610 72518002 436826268 213056337 832577239 145365697 601295821 1051826610 863360664 711033187 486895184 268488109 868512525 145529444 671440190 1024587104 653713925 387893527 227734740 10316698 237513288 200336660 650536613 839457539 845071766 238994260 281526438 207085213 292359771 168654689 872586231 874597330 808153650 1005218196 1066331727 957721814 352761554 441467764 559478701 99798811 100290776 230921923 240017022 117222877 957214118 107472466 134373149 462315357 292609408 152102440 771058984 274743430 664941096 1060274840 701632111 398926760 70285299 907461607 486297399 92117396 172514779 859664801 949671165 968121885 626374580 88031991 337194293 604643019 849608389 944731079 802736967 849262085 104658214 874801907 892423499 66858551 667551424 151160312 227524080 821947199 883707622 835063924 398763368 887988391 444146904 91263971 155021399 441542360 835493848 952025867 746092762 549787313 258860586 213827186 485661034 473712019 15467576 136608275 512070527 652488487 247762829 1001916091 133972068 417301873 98142068 322013797 584304722 931122234 346179996 493215925 916793093 819360147 948302305 850461423 237788694 23800643 1019023154 476717333 407807229 696696785 319519393 242330272 255796723 888103098 425524234 131099055 65764478 156693284 297543274 708063288 970329891 1025797801 659883638 780332142 206146961 654693843 646500271 829026801 1008916168 318051759 483967556 206976873 593021651 906647249 846735375 791556570 162059674 731893351 453706346 722414821 84066971 522232942 318177707 545532890 865971348 850616492 830546454 416786608 415989638 318490739 400878382 592395677 429866729 963445269 1058383345 227318805 627829743 482571891 925943530 505394043 321152584 818611508 163528889 811443096 474547957 638580973 501287893 518846512 461256880 597134094 254841962 80954412 1066772462 1015378360 909594910 240846440 946788012 262424002 579453993 69679839 109072484 670447849 494248382 499358832 553652443 859183156 226891631 811326894 125228255 475063357 34323814 705561446 960288578 783881709 880941748 862750947 1032079183 873860062 505213324 402473520 1051160080 1054111039 434911935 830051712 447611956 293341586 63438375 843180902 483730831 642003464 981858596 510055660 787943839 393790566 332669014 657658590 873895966 795678442 431447629 241569966 96761322 765205806 585522958 173887825 904806187 175219099 519134521 433944328 536938187 972223826 438712776 717057752 836683040 1069435444 866348590 496958866 79670499 724137918 859541683 814368513 762605179 30508964 976836022 952237135 837496598 235331135 323115080 356016179 109186410 264268145 533678060 765367538 271108495 939435503 179805029 1061315055 799075849 118361118 466430179 244251521 92512945 375389531 26504248 8214278 761087677 34648525 467507617 802226448 988105910 931091866 717164741 758111947 17858118 268056495 235474725 479338447 161889384 742758230 724208924 412774733 710319934 845061191 1034463226 916300315 716673402 108092995 701539256 399836323 789974187 222829305 672282946 245956451 652624177 747445430 246986645 422044016 557242328 954672714 723719211 845897409 393045909 980331644 384891276 799030863 204169648 1009754690 269227196 230178924 167304092 4972655 726046185 471502805 655914420 124598254 314867654 588900739 411649474 501148467 122598337 1039582334 571791782 849833165 734642228 230408178 286972378 736353360 28398569 38674425 655984560 455569038 104308206 151287177 483018408 752829806 726336264 518153054 73922214 205271682 465898620 587688690 171168364 1040816902 914590471 137714447 936288542 269045332 500605833 760106323 576591123 165551550 951798486 990593976 540581679 127374057 1034214045 382809383 125691123 444677881 610133098 186559969 484221419 221111334 696541951 8403445 727748331 471882649 417421021 738047306 439222596 776401557 409877549 302166003 245744325 474054744 167350541 1055859185 6531707 31564790 1072138114 703042415 885847025 916227829 352403817 764768800 492535400 652940603 987601102 531742693 677358416 1027178391 691569685 296144327 695929082 197696047 313797710 917359218 346278453 363187803 286336548 615488750 730278528 377301489 752786657 616356878 949075701 389402658 715004017 244149043 700255670 301188721 357485659 912775525 1032402297 857766096 413575192 729596111 327114204 774647641 696083562 49459373 106631741 825295051 169881619 584526101 717787344 880945356 993804752 407974445 898546662 383759499 506400568 552054733 997818912 45012110 125398317 119722109 630913586 469929441 1038954689 959981940 429097498 1023341895 126772646 911512385 240412745 810904182 185949454 124197385 89235031 359438051 12258542 48788946 302234800 1041548475 330500739 840026437 184599417 941017967 339994769 440601426 299475652 932721882 60497010 568680111 316460318 332885154 326166331 332618807 74640850 109284289 829493691 919910066 96664968 1003061487 312256423 1062359898 906102033 603427536 808938523 599664519 781829491 3197648 710094124 949889580 271299430 77579902 48565106 796161181 1040748166 945897730 899325507 212810588 304902991 200913508 706040348 182426797 401902257 339839121 182685335 385000191 580980684 898863648 228966423 134902953 591223669 10816042 655633855 765400341 700083415 402399330 708351929 62125208 641699355 867757931 10904294 149057421 381404775 2976443 906246253 519248359 761795045 403545868 762441713 556763841 1072064489 1059363548 137111484 505844966 637168078 80510024 1051596276 246345628 806760920 7120713 471061159 1061041347 374870036 434525483 405428062 124297111 292738800 455818372 55089607 551381182 106200429 547192414 331399541 681358640 171636592 120372315 434581418 888221947 461396191 977319111 4582008 236137708 690535687 228930376 832982885 578734339 42942120 796216062 816315974 40185068 1059917985 809599712 227792840 484793061 20255614 413619894 41742009 598116087 604947501 508255450 853609845 775641849 246541849 342956705 570410499 296199306 539129131 982853618 51935419 246715234 1028387681 519773199 812254716 702362738 369485857 107346646 131166531 765672675 891705234 247287891 338379202 93309891 82356969 752536277 969278341 723923206 687394416 325149543 584699977 882940741 190470144 888949397 767221073 978740871 611637161 703696764 874818789 405908821 398805200 1014582807 139860589 204565270 381900311 853624060 264213604 731385806 952379265 1057678849 242475000 618187649 356455577 18907894 809466863 1028541421 32746834 829855013 50704312 664648636 912829147 399512547 481719067 78790957 208110244 91625959 11474824 106536102 139095964 749032810 132931882 332909517 1048188465 509191645 748809932 759130914 1003689850 414735438 124983948 972144849 213946527 747267566 228506071 369570784 525859064 279959912 171478223 80484705 555158221 383916725 95306922 1031379520 115453494 508903581 973500929 605895782 763608132 989955722 392522764 421510893 961150468 802184329 534332627 244964042 151869601 228917417 578640443 112893093 567350014 232837667 1028168731 1052828177 922555796 327145802 300308772 6664890 138329719 74487313 580424588 247604322 1040389207 543363401 587522594 1026225576 756961512 830869925 574832024 332580608 84924714 448800261 773047802 642798757 68525176 651178600 1037574592 401009733 651073635 719679296 400680636 1047501018 449028340 289296042 774843825 170061105 409934242 204942955 950980154 618232547 379122156 729713774 433647802 1001496534 184137932 941352441 292091000 824337026 623562194 990904193 657631024 61708550 165915633 97600127 734056220 311790448 785635465 291163725 479697196 1052035609 655373307 839009135 959429588 84401939 203207701 644250612 546307759 370928970 775649448 247615339 622643722 792796928 184413809 319660687 119314358 547866875 1023049438 1068349134 307414201 255379915 1063567257 720216638 778840740 22959914 761429435 383179642 950951899 580408947 178224059 652057273 616465126 616903009 110611146 806183837 714457431 612133814 783998555 158303936 453962143 503473541 162484445 920124957 1064297965 300173828 695222940 882476803 213505589 270724000 633840597 698105102 170498890 210227212 954372973 832040808 155775762 400717308 318579996 113569996 808968846 133634202 859063186 25535913 275994032 1070016196 361959267 403977786 105191840 1002947741 858229984 238915511 284389935 18965384 808559737 70859368 601056083 118175446 201303761 189920441 1033798050 572295225 361070290 436861711 487800833 1022054981 272530089 613349079 353898548 428601713 721145333 785625392 491127429 938623079 840210611 175250291 566176229 979378287 836888484 61408853 349133473 295678201 346059691 502679159 404335335 1021107711 1030463098 48663787 969068249 233418706 534380278 1026507375 371532001 779700093 729577190 845462665 229922282 987391777 276816378 204110178 69671768 458779745 705935129 653463958 711567210 713601196 77574967 690959940 810203005 597267100 1004222810 879409349 745362591 677051038 451238338 242547796 95688392 32783953 692778344 133771576 56047143 688080429 923546273 508910463 755350627 372832027 830027339 684462190 692421293 840191930 31711427 540481351 286819642 198493996 270027550 782538094 407708912 20378890 670484431 914006888 403499196 985803158 157693733 777677610 777141021 685527136 1060657238 304151334 1012384464 1040125310 683564697 378525980 84708379 937326649 101028529 306392108 689804480 134112929 444869204 738687284 190244249 511686338 255010742 595478607 442338056 1073053253 831953298 304660216 468083660 989664457 1044360158 737900237 170853241 270536902 956601043 949215502 85848290 388189027 887342073 413399253 302791216 176921878 8136136 630392613 325668482 62833381 110391427 649049545 232545438 237278781 792194056 104096417 18613448 806151290 808648690 475619653 150523168 958262322 240221912 176635536 538817161 682727226 331617388 462844029 903020536 120726177 361429337 573152432 908038592 745916742 224430542 753005529 1012238133 1133958 424651162 118377235 146253582 197786132 1018956114 1062227473 656656641 146151253 59993316 325371444 138078525 316427387 725575262 141167642 853905206 1009563938 293193427 735302377 1042595644 947036232 131769019 171523623 373150371 253064221 567919308 278753125 786416528 155370574 25179401 653241702 973822178 366463667 1058101974 460846247 480279965 473045831 206947295 580649631 40314322 24297839 1048354532 1000650717 1057654669 247616564 274540624 914629938 576068422 204819396 506039582 163639824 652287868 469690172 954109759 234828567 782290269 352636422 134736668 8925319 148609899 1062162552 878583630 517110049 606651242 690739518 788547254 952558458 821923575 705578535 659868088 684715676 634923578 496953548 175097511 832940275 582029506 182168596 206307193 67937929 110200999 1040245524 934402276 19146864 150750868 826928932 563766466 148836504 106848678 195459669 624718034 29019483 99400225 637878114 27454939 807456186 225677546 275918099 1007562056 946217535 50316207 473405900 605667274 131686191 77301034 925641955 212816322 78082054 194376886 938977802 647086369 441326582 217840712 459387988 318074219 176711403 888754642 241200627 588773780 190844843 685851655 969527573 997315265 922313058 709626890 524133709 406436783 1073249432 436416061 264626624 110300489 464694386 895110076 1032077107 714262572 174054635 830609496 143360148 738959206 397536635 995906498 803106912 347617006 938806755 743735649 438286732 416297537 886206036 256741159 195060756 108403194 990226757 375878463 85600420 950469407 504523462 239457698 791941500 1012802266 155042745 307054029 109469303 14704490 847331324 869657070 330558450 465201875 215114843 373162987 275293358 105058388 875259657 1055968493 1027334564 121043999 599436246 1049556395 541727840 628669286 152623218 424666396 1045322622 672848057 136361314 939186593 277748910 264391992 263151050 1029866800 1012624439 719343659 907002252 191158308 413475470 452853365 163367028 254371434 239339034 359176981 448294740 399465746 860480841 255072293 683119949 14987100 862718817 941494290 556392147 479718104 407729435 181386400 1063098173 781551150 661511328 204724204 773746204 96493324 163314180 772417090 416409772 77044614 56406309 375292896 353529632 1033045248 650058716 231001124 476339359 404209244 526521259 906687166 1070606235 286884291 1055618822 260541439 465347960 664735624 219206925 389444586 32834511 71112577 651137986 445698833 406687225 562434751 140234436 203495609 770771885 313014988 479342064 722072504 686175133 354268168 693287417 251139139 310935450 341356092 865827974 322632852 877267551 220263607 652561315 728445488 874694969 321119789 266262719 677833461 905299816 1027967293 341243133 916782301 378566956 437410228 933022762 334170312 194307620 306386224 320012 1065300448 744082288 318947436 453007967 158097551 319212488 1010092807 92053232 158727315 250761368 948976095 361009334 421755520 70748412 788339315 426540778 267871365 127933002 324872671 17922780 722070792 826945982 476577414 733262948 738652121 428738469 455831852 185760792 128317271 706455439 469870820 562961615 702964163 766584261 567938635 889414272 619568962 1033575895 381401229 704828040 713221681 542273644 108529903 667072209 370283059 504001950 74318627 832978507 1071784562 53042810 179541657 91520930 935114660 2796612 932390937 781407784 212946158 684814227 293890164 729220141 856863291 688884955 171024657 100390390 961929946 1017667873 51241297 559393215 674636500 418650193 485244173 711014434 817725201 245472693 320647149 1063514495 465100224 198223620 157647536 694327147 792123135 196466252 762819971 954232122 249480197 763267735 86994287 376841897 466020102 730811115 832189199 665224951 175869203 755128382 603773790 609722391 839379177 889165007 567322645 259805873 811103327 17232772 967079868 657563124 831157475 185526780 170687198 718778844 10903416 974405149 334449031 2388373 1042063286 507047889 292911611 1025882395 627929057 1032098954 781834251 1012022331 534482819 338643822 929755428 628935726 1025104979 24201362 395145915 286959211 394291840 86998380 615360911 88477276 68365228 31261244 1061310077 66976597 127088517 755357382 867799841 1005603356 373519800 230679930 789391372 819640864 1000836693 319223525 544769437 214608794 863067641 1006446551 28646130 113257954 18081355 337396476 203488480 244333002 567629898 911579219 207784014 24347199 380148002 736699308 681190025 643071077 127184282 245530900 524541260 1071528413 974270360 487454048 303264022 1043747147 603369525 491898707 636236729 416233897 618435189 458547256 460537351 355550033 77299222 595019024 750194055 1038088303 310219382 303792322 613349018 383515339 60682900 153394470 314673243 509217556 2139064 1041989144 724207975 649159588 101235957 10505388 340339563 897665657 307421162 826911620 224164449 969200939 115091181 813347038 213261296 759936051 1813950 435252054 947092351 464934137 479752778 866463895 713816535 135130268 1062793078 85783673 332140127 687682507 244526373 476743500 923277387 31196599 583683057 873569280 1018434321 515983827 39165147 366816216 842148264 369570181 508653481 44406235 384866138 755459121 354430267 251071436 675984528 660854106 151825335 853173967 357443279 102596153 855120563 231470570 178779911 813721461 487495467 339987311 227221997 397602251 224034465 729124656 242972006 917601411 362471768 885001223 947889849 13054945 882176498 420598551 772965035 1015910965 972553227 985338225 528293385 130829550 405923943 654854562 806448532 727712548 1032109878 500153684 944940677 786945791 110321770 746769697 428703959 903341968 177822271 375234520 441444125 295080350 62639174 613665023 683877655 858453901 888084717 214478476 649889002 128275246 906619537 199164899 361833296 892971402 812565357 197413914 843811028 915368198 781538433 947835615 264299868 611885354 881633224 603462910 50756087 390238859 605988899 900464452 95227740 271188426 666719611 749450263 864578860 722885067 910564089 503971477 216568387 484620550 896634883 637393464 560524946 137872583 379858655 708320954 627672890 407203317 820025492 668626414 532499199 225042029 253309585 961357889 537890227 820175141 716208698 167359844 635258703 713973693 756166454 298577543 889162752 751524017 791789893 1013902788 611281287 123959675 259978466 212113508 977217181 948832600 753911589 583872685 880428781 554031409 1044460771 1067705319 479119898 460401422 111971568 418689093 479948280 901768298 152009882 280853384 630289100 138932447 1055079865 833505026 207395053 336731031 352506565 982110992 727600704 890563014 65252606 96086209 225027241 61521182 666968358 44240762 83530311 888691254 678617492 366694085 211243261 165639488 959284213 308266525 636804703 816279301 78173087 978318564 118540794 77817966 1064986815 761425080 8686356 448656627 425703686 214009832 954895699 20195521 176668014 401583870 654169973 172056494 768851123 299892685 863211358 117791201 993088303 267604579 1005857664 151702375 694166576 584448922 1016482656 215857355 635546795 359207392 833499394 892920126 1010526013 288859845 178927353 374981406 73004172 919462354 797293568 898897261 566820501 756903874 135104012 742336587 924890746 965494271 249032658 646492933 768431076 726512973 692602488 670228331 267182534 446731502 1020275136 176396581 395508926 824365271 1071257746 764754706 695508476 41956309 264981274 669661318 1019642654 163204545 288333691 463783727 267122412 484892139 731018659 1062306687 126704507 971364484 256840928 88541659 360433273 211620037 770385285 649426002 823373629 215406839 21386844 352864284 595650994 514757697 910092673 869297925 308803962 176653623 629879862 996291044 195541733 634569224 909494006 421891644 459121145 1047571419 1021276806 70207845 687911967 614515636 326768895 893498952 732237915 1005804831 321585607 625752751 1015585716 1016758510 864085452 380709332 866334514 85577023 364290097 702159924 782723642 724085467 60233971 550518944 452536194 95830314 482191650 176787094 178269989 403031022 477744638 323714138 130099754 212783659 300106743 730195961 716549228 950033883 28777934 757463618 625873958 794613764 985328028 906553183 657947325 600551120 660345390 879643942 54307524 668420286 159110301 830060191 482679649 780084691 332917308 484473157 606087040 576755843 459142918 596047640 513444705 298750251 154973242 729738179 54512773 485940609 509256324 794718528 696075632 533841521 887188674 449394903 121480738 456405859 723321327 129988505 789197046 8012583 893394103 53825430 783333401 4035858 267120754 236293812 98387835 806153955 580791917 733736975 666509494 963072187 388938206 338491224 968532731 274719425 5936480 805058445 44045324 508019407 504350283 501067158 598741789 242878077 229904401 253049988 665868049 964103844 351701755 225453714 667574137 1055463319 877431078 765657187 839869101 208891212 1655989 856998654 946405921 559549210 839818826 963815663 808048882 787434930 918706302 1045527064 998401305 1065878572 812115128 912855276 78514839 571509100 167618439 115780711 764028519 788351809 349099555 976473280 48340587 1026483512 224093511 389289670 419811855 740629783 892840294 903012060 80413333 77795951 558348166 797839424 975728008 761010947 352770059 419136275 255580064 85244076 151973930 899173083 1069812826 683346054 996878370 407553965 285016390 368581348 375373003 314303904 476431399 463436902 137506944 706591138 839235012 58756621 354103998 926364436 894182654 734127436 548124680 306941224 883385481 727073576 655041717 536374400 847447328 1008978974 536916676 331870761 622675227 550589688 168791115 921729955 905800069 821504933 698326982 552380539 938460445 966903944 351853160 382467312 798689557 589202809 431695868 727695284 12461992 396194603 410893571 271313356 905034469 834308934 330767162 460520276 299887273 650506443 356824063 200298274 579378616 649015520 835144646 828608435 20958455 642472113 783208907 908203938 17620225 259814603 34122516 931425540 1073126343 782233722 73448592 116547446 1019863208 692969058 1041851931 233004291 747039783 68675606 806844904 403929826 950534169 483890896 28112811 492966540 230176377 616199210 592303661 806566244 875178573 1052501566 516238909 421699265 384463798 312432128 772405613 817556781 13555681 813659606 780443664 1025686463 37635664 268982991 82360872 721030542 766679129 356345692 207257898 16839763 637753426 968048623 41074723 452391406 861965390 505511518 286429532 704131694 1020263376 879036999 17463855 425268825 688029699 671181590 732524032 116382341 959327607 195960817 839309818 400701376 335148851 627134404 155123647 618350836 796497481 1005559864 304311187 348925446 541916222 273447354 431788283 874319436 757052939 232308985 912332037 756065750 607719324 286223637 308614792 992859939 245133775 551703108 672794204 895744153 438319846 571833980 380279142 748130440 877088727 373154136 940666313 821239532 138042392 504252337 696223136 34162801 184861255 1011799707 681844373 62506049 545020342 945118168 346464697 442842610 206392397 1020171993 74904634 215176738 881186776 869583439 900089179 486364793 311668496 102872102 591531300 13244147 13096275 265360473 529780271 102967341 1050980464 574060725 944765416 205851421 555432482 118853011 337229271 984211521 1004892328 517890400 1069978461 727624457 106222966 107998407 608125763 734667588 605325417 28061447 1000190938 963265982 890352400 886534294 911833309 644359818 679100395 490964570 568593675 480950662 631586612 1021942526 616169870 589244943 47320782 64863745 293815520 109059464 989478729 64747034 353872386 141515668 290898880 63078749 553055441 606114472 950896647 559374599 1022500293 729696668 908341987 926474801 458706250 19307063 436847572 569192564 870646985 667044950 248099969 378807420 556589119 869089302 444170753 408786840 659779940 44827712 10999660 119955031 989923227 74980343 693436555 1061499393 965321021 544313082 521126750 604204870 651017550 902572513 885814638 436173496 813126060 365585704 277469299 79839056 468532969 400941253 714345649 503797749 935865190 264942482 350716486 210776722 710408541 1059795700 778795506 373508968 399043700 701230367 945997857 17923672 91363178 766927621 63757989 942120466 103221603 579958460 404382188 43354356 758725710 581759047 731362737 638146436 414353625 532838837 843374691 678459287 464114838 98603943 101773229 868014928 983981725 534166978 370496830 179593205 989573281 28307623 1003646185 607129882 116979826 329979606 932725913 741540780 630407424 613715058 912094986 919171234 51216497 1062535745 189147237 1064964897 866433405 222626818 646462715 208347185 406052033 989232295 250939363 543065824 201198180 828447859 340492758 411952752 358843824 960798218 490714037 579125238 894994612 80778443 634228172 1005958710 830570040 602526665 808021898 261636483 39054785 123633753 167053516 7256699 640023778 1041290792 1004202687 517933212 229181762 83893660 491343626 254997307 541423554 481229216 997790430 83077188 120945741 875721135 546679023 1066795451 259484347 723866883 88688767 237078468 578122966 935485754 437778185 750227373 481386881 1231584 1057336692 957412414 363953397 299810660 809765206 805900970 357482028 120345950 848639866 462894521 761664232 917882584 931647124 264854160 555215144 983093787 759719032 701049042 512592740 335924438 611589306 412500612 5947994 633329293 819225769 850746 870530266 1010216230 850861891 1025640716 679484149 380735391 1024648187 630570155 310825156 447190475 800510219 345070988 766678867 232334683 703277969 960784359 451364473 192332498 563889121 200218685 942451559 636862243 445366993 906878285 596763657 89131928 976086301 320999345 531218114 471448597 34838912 298175968 56319525 154322962 512784343 530639993 1066254360 48436665 872632728 558188296 582921250 939925688 930895754 186845783 944370597 407973903 772014252 568805192 345608292 90136361 884957047 539455664 943295844 465055331 675467515 206268195 379508314 890957098 580511925 699888191 1056897513 703029994 581450742 929761840 710866966 401748624 721435653 825909032 1036324872 786665086 400232634 3556377 82476653 411475503 916031484 709069071 930389800 768475728 436502127 208658906 574351371 358991919 488409099 698794701 1048772394 71703472 700641926 639876413 367502889 418476713 181956627 804996748 136075615 834142599 323338567 241978808 96582878 738692990 987286169 859292918 867464788 451990108 987495879 698815558 335656209 343928462 92415053 437308190 270011136 978959047 113797980 469513524 805535544 354354631 605190161 444208314 448717695 1003171058 528263894 299357050 401857061 67040030 506537643 289560678 676534807 126414524 673724411 207024346 694437957 274870372 279703744 28894718 114865960 285173412 477826815 820834899 1050751903 1072638844 793175229 921443420 944569001 138484037 713494285 835780370 413237572 1009321400 185137005 526594857 926689212 133874521 875684884 682243823 802872501 932516481 691609488 983280836 636282379 196440105 480187131 320108265 210409049 833315128 38014997 769462299 930556544 360285325 470966739 736776995 428790919 419396040 329484747 553590626 493368387 396702575 442343391 363273755 933393705 334897369 487614347 913271237 891976701 9587026 644902237 164673826 576669674 878643177 3159939 434425849 387572462 638526359 412331980 256662283 782035136 263512160 234079501 541158561 392829718 421927358 1048978008 755374724 438044550 545369840 969011221 825168069 32157135 969785061 235490809 380059951 846306744 512722413 671731974 940796720 84328096 595642304 603150090 324123535 311377072 949442552 858640461 497977072 7869220 373607626 326945171 1026552795 424616486 388562571 257787342 428233063 842812196 89825114 1018980415 495524443 614779446 503595482 727792298 56954013 397038661 589784815 414524731 202875283 456557167 578334101 606211077 605851029 205497980 1053162793 810853253 378404283 1024476533 348164188 956091197 841245396 868072289 4252551 308049054 323074609 969038306 520539084 1049916041 648754882 834618560 100097775 306330149 849123794 787350587 768035397 650344975 61013710 431268162 585642656 240524485 770300888 802158933 647476071 840921105 733344052 813844971 712986105 579639515 613842783 1006788058 412180236 967365873 388304591 575244796 338254918 660036393 736141418 17356180 229788109 825337294 555680088 914011885 844053895 674110678 965603500 64544545 520214997 37016875 108486776 369196806 749677544 730316492 238805252 429362646 161394810 936122314 296980077 533775494 842150902 168255332 256257070 166010921 395643594 199601562 131152668 479558843 174422353 933054945 14776251 154957132 759349102 598225824 538276741 997831880 392002833 259398487 248621936 481655812 774586610 630801376 562758061 563868623 868320252 1006100472 726590339 401896187 912000874 1013418361 165007656 931360767 552671957 886631165 401613187 768164620 531464260 301006605 838683708 867482303 119365145 426420287 562979261 379113280 950602397 969243736 668960161 397173362 492779051 326583242 968717279 209604495 162860261 24272831 8485231 371597960 350110047 524723240 505812556 798931474 743441311 266247613 593637296 40696301 651114797 172005754 428651476 604362446 817581853 560271509 767504865 624565057 872121633 204157646 747639896 1003803910 137065794 385844773 368297551 928720753 1035282294 148129724 1041032783 1042338978 290041051 556315870 154406370 833699658 986305371 501953698 859973667 194045810 840068973 668097056 911199207 689243777 522774201 539286123 1029480767 995114470 988308089 914189810 228210017 376250960 4871397 134360491 610557461 335322230 106142285 83933206 497233771 816907048 678914712 792781815 507873411 987671986 596677205 802951617 422242206 57359794 863876352 1051644320 811682406 189438832 55708369 186081507 756247378 302548392 32000595 439080119 329573898 63882199 1065281776 808986225 156156385 345394717 868518847 149192740 505573828 103681312 193300411 1069131429 919145353 834075535 300874389 67636169 83351899 762333007 983277085 459457670 666875834 154953719 803679314 917589876 713898502 456876712 53391042 555231559 206387145 298257437 970078603 1009767940 138245521 763681727 700299152 635534216 396016234 764660843 604662062 687361648 440155183 132057419 338107982 982821429 615627814 1069147630 186959277 513327070 938876985 702849125 558477549 141809409 687236741 865338833 585066487 747249053 704789289 600528389 7552088 350687653 946041919 1045798305 107162896 353582033 614908617 112224478 1045130705 1397 532299283 107257055 203782263 95973234 988440886 526004732 897771604 18248102 615010038 859397471 726678653 644707345 238302114 541020774 961981932 140487957 305466162 902777645 286771900 898539896 347118247 254162190 521451716 232972521 258151135 599964915 1006408283 73795400 659978133 1057959778 540422086 16553320 15211361 47937793 614646611 624386746 231332452 682677119 465899067 1009901080 511856261 763821360 457678980 949086095 735115999 298863509 34813486 683607682 729588658 1014979114 990346616 803374284 853126638 1045468423 532304868 581933740 236957439 425840702 735987717 131211979 905198074 404267642 540585709 741861986 677255118 126804378 521283971 207226512 317636093 917091960 522066862 130527350 191015847 274118071 918288791 213927386 424487544 554979080 540178476 885267916 526457785 845625316 993807272 1046521809 44383935 620063024 1024958984 866658845 541575650 102956353 402360238 753875516 383775519 1050584784 438554241 1009861261 966962714 713677785 291526203 988494522 587682374 532366265 644151781 829075367 45772971 242198671 927806460 446833065 1033850785 504798773 822540057 486046080 335293907 56306428 474841305 969060899 165063026 189903162 141503236 872723424 786714215 137519244 111121966 849212998 927647510 355616972 392419003 14551051 435172401 321307918 529048874 173733912 493710738 17203137 525175995 560182853 306961853 239522919 644679332 981654980 875385435 881785824 219705080 607756450 961384080 592541422 303375971 297420050 798641543 904313803 799453595 276694715 417375783 147079094 711146896 437576237 165373704 379481072 132241101 933637157 8160722 800804046 265558558 1034135330 929600627 42418818 102646260 796362653 1014738258 1055336599 547493494 941556502 196589283 476409731 578469420 118981880 117661370 272734688 92227007 779571551 843853129 675915071 818508218 817789291 1036073674 39682111 581351486 896723934 1060758873 500662991 337801832 805008127 952320740 640749040 582374682 134452412 390235791 489843081 966106765 644328249 501380513 903664384 906149979 878126901 542593743 353711419 814788892 381054898 69996731 312205485 49427050 669874000 1029842633 1004926198 1785806 471097779 1071098382 295914076 966642289 788084174 227078268 106291671 494048589 751347727 102503220 104732886 47208148 735639694 331764585 1020068191 973727782 597354344 60335446 167378554 679765782 740582418 534090410 643536575 105994383 955902040 93625181 764329223 980293235 1034136144 227087936 36946811 879708485 851504611 535293297 287427652 135478565 852755908 747988077 187936777 481488363 83699452 21978303 966228308 1062725126 184814715 496360198 5979766 289822209 691936625 630189083 688104105 208066003 1005188511 575620387 824396285 959418205 298600475 802205581 1061425433 749965951 402843657 527807303 342436200 368344681 993571120 71377455 361836725 747405901 653057647 500113767 903206990 137996240 539860256 7762845 823149974 71879595 710346453 761297507 148883968 272537596 761391699 538884236 967562970 678678955 160866003 936587770 200022479 475502968 664617228 1000880131 496603678 49929879 71509789 53175830 698351014 44146601 183908289 822212667 112100127 801804523 986814149 545866105 219663981 170661374 939297650 91834049 802808790 108737890 39846793 642390363 946076430 134065167 214558255 167328987 1055649044 50291947 483361721 330725264 744897482 446837640 824855041 370667226 762658698 877851518 941088065 513546149 386980540 384647654 25430485 39146206 369368538 322171111 8162605 138923598 847865462 43551500 34119686 1059727821 287697177 173874688 104045256 24147592 75056705 921390000 120903743 59641080 109444501 51417203 860017329 831929083 346182577 1035553753 978535672 212708623 271853674 211802335 726502688 101786917 805762755 409039570 643779170 369862 1007263385 373106803 260551684 502641962 359164570 984915098 196841891 609487591 481214049 433699890 112487425 675102076 701539260 874976792 79515240 571750947 988445802 881844079 28577548 787782606 724611622 293186162 870364261 786124265 121178362 898780021 48072340 262332915 1053643537 257980553 642179988 265430320 538056036 626742606 558752924 876071500 688232588 806455669 893718132 1880558 468693402 620500026 621267890 974130033 725038198 53302571 396000955 373384094 218765831 700143436 954681629 186831239 833779730 283303083 490427120 167774225 188389410 132005305 815033860 109649512 428184794 100795900 551018758 112632745 1049585786 912166934 927098233 963461003 1010240965 609611364 920529198 1042230531 411313604 519305233 167997627 499754152 548768867 930372087 581606558 442665961 424560305 192917942 1006901900 855917514 219061121 699976861 188706753 624777583 61447292 1002006234 858343551 331922359 528622945 834918940 1014119527 715732161 85049988 34306680 675983136 320398994 74106429 46140194 332039293 25061738 31600617 606773589 39388632 264801307 555242178 123589224 240233249 658088807 633128016 933547266 77399734 83008834 653507263 464363402 374167108 764049906 1014437300 730124107 877081062 1066576037 339525064 605921475 700933728 1032288016 554783855 173463039 276578534 138006634 158457940 55938123 199024740 125513988 253827730 510748681 663174248 62338788 984799955 207245054 659291025 34756545 528043430 88805704 365064447 1018476406 1053798949 358518773 253761767 641181262 135011879 604675164 222926093 426141815 687263672 881827783 550586347 141889084 493263912 195363574 802665527 805954358 902685216 638706876 143053810 147177215 84437226 505095294 328630117 948087521 813956286 381171356 410867375 170674266 14107313 41272286 755866839 901970446 332410117 325304159 1042050145 164916296 356783492 965491476 738114804 656114806 463612943 399811878 44326358 855455750 87662948 671538304 520593593 182029814 116887241 147557501 859294456 335631144 548395540 936548892 352847621 339559276 646411552 44286748 140179631 574871753 68520832 20286234 201117545 546534941 903667997 873663327 422898709 950764854 707624218 48788449 676643891 588689404 914128886 817616293 198314914 685934042 792557813 436402731 358723149 371569518 129939228 702355532 396980899 579769275 901888199 558277217 266381292 361811509 54214040 982576742 703509529 21358003 634291718 784015075 555235954 553013844 309641088 823044522 498652291 645263092 278623703 726073120 475006207 866345403 643024205 825694109 102981453 872658202 797747638 768581841 321555483 815960942 445697328 230376770 1021741303 431335615 808630353 550233624 426916368 507940769 159940743 805860169 682018335 823907838 149426344 1072540638 246860451 167523928 875073933 492415691 142082029 997029468 798844937 944948835 116400068 100838293 504320202 316571246 292586294 513789702 1968673 278441666 420440944 571368888 864126980 536043265 115752895 616688674 987143768 348318515 926817461 942365092 257892621 9735951 1015126276 75298626 648025481 47333999 794831064 5566635 762365558 62570132 17359543 821801648 413795994 953510120 37035310 629527598 873319457 440674021 982037032 55145090 477914415 101485485 269479469 653903834 125848362 691400817 164086535 981038597 950174507 971208177 610759223 382062934 998102548 361287191 541143888 33983331 33588759 758741528 686873041 473382539 970418394 854595807 962734925 128643430 364286015 298266820 441061393 759164605 328445536 302364392 1069865442 746919486 853216359 729497693 553399391 1001525791 554484215 69599485 762395596 607060324 733356740 977397322 990402489 676177132 896420931 662158148 548796073 365075725 262358948 2350955 599827431 854878261 906112075 177307991 396528279 814513524 326518027 968026916 749614750 1053140037 605209550 147031057 474823608 897334817 214246504 978865337 803419233 706425574 771502751 799960063 613381686 825481778 937091245 198634648 122703450 594037577 785060913 467729722 691553410 1024417052 655567682 451990298 997659857 387163435 331145558 283536681 407496954 67439472 98570504 720744286 551315630 778604380 1073658771 1015061081 725497915 9843285 998522381 609117174 145496775 891347565 564985025 1071719774 238108723 696820380 37237937 1070134438 938302782 764360904 686301494 98443394 416013500 702824942 881841084 141096608 378869941 960645160 594812954 802763408 338806879 1007386198 276914656 1041015205 639426822 175084296 745232247 559964780 850349230 29345901 306769300 309926088 832551112 352783398 929604077 872458552 143410542 726598741 738879504 101647359 35010135 240812150 449159525 48829157 282936283 282390043 266006893 319205803 816324439 466248118 223831602 246043170 99915293 426504123 572123949 128990509 960777412 543188479 767981968 715586981 282802077 835073978 287730802 20948823 541599223 633101212 29799500 697572821 154512229 974518881 891398210 996450553 535634824 887320716 822040378 443162143 740819212 846948733 855977034 644046868 115867844 73276327 513607585 514027589 1034255178 559289976 1063127795 911770745 616315579 834035875 1060336259 610311151 345290494 995042044 693993947 119906897 89233023 569841843 506357988 787698315 828608605 846404908 17352774 918057886 407058303 331475830 536170868 161883838 744227398 285089055 698995399 8675551 128390348 727888420 666925974 257468435 547570006 906954034 74454138 459766300 630180128 754623221 550833699 624797193 172044424 673588035 704774751 85525493 733736329 407102650 682189088 653058274 594478987 160784753 835987055 357196080 525381203 625192947 280134967 279873497 343113142 31910314 387927374 22260556 986871707 107441050 593801077 693019898 670673301 744329640 1049403070 974579272 372920900 254437651 74187316 560223830 291980011 419681939 1017451098 246474904 193589555 439634517 428845858 793654148 491927880 589101834 235409937 944588289 438505206 1027661557 341173731 284205551 1058154300 61479839 352320145 828880964 930339244 1063937004 868684887 1037830208 502053280 432748659 286243273 245158010 980013447 513487551 319015069 593380763 292622983 428133059 823226908 539459216 805920337 273073780 931897558 133362977 981100748 536904657 998172741 534079353 65866933 23267410 608809560 835177015 81935562 376018068 942373910 166441830 918138584 953712162 555176328 639437133 25348100 580232089 129443071 142922047 249513519 285714311 466952108 482414922 341239026 206770720 711257558 289333627 120052354 284979878 507722067 628165310 61826787 1028558593 499857374 1068977939 851764848 784503278 623907808 152048561 672941740 133774434 111247457 314866456 533692324 42807624 730751137 923510114 83641811 151180341 537234423 408876669 723395593 550253790 703980537 734000578 791895850 441121375 581289004 725835879 697266326 886227213 805060480 421074710 267402977 488273175 571954408 1059538054 927536801 746689133 615834397 746092631 650749714 11351809 719724150 1014906615 573468237 499377807 356477615 318289597 282882833 308368431 676829785 582477968 1029810500 21350287 669116526 337638874 7962385 767117774 306051175 889031248 81996388 400870625 1046028167 1030316618 500762871 70614651 725506311 156872982 54103962 345998431 715969725 532868174 736571928 284480410 321863475 283026906 337413326 94210879 414456602 787220930 710251677 293806780 88962545 1051533181 954109358 738697799 758796652 230708380 831027112 738353040 754538158 559479813 200049289 359230037 1060949493 280422333 794383106 430496611 568904938 744923509 818978404 777796578 367545306 501793885 997717073 946322661 1049636788 836600952 676293393 639262573 882484391 610380084 225755294 845617456 342613077 941580959 642275399 659696109 667306432 358816040 606362112 155372072 506452898 458141710 243542198 795420044 740216053 8510674 461446793 286367022 731692593 724046309 52682699 514587488 696763187 224012092 313879646 939072829 108872994 686046546 483890268 716608671 1015849413 828852735 856250084 953246270 871389403 770578160 932538424 517051524 149916221 855573071 578460543 537275244 848141871 796128982 107006134 602447987 812184509 45461245 548162015 302582187 662602497 956410137 569192782 595404861 577417715 487558064 862849346 164546002 791867469 277126151 114798594 9326693 526888883 1027865962 627065978 785041449 466212865 22977437 974078915 1000583200 122897329 76781655 795835852 129681809 506812938 525961140 855131186 238742689 99492495 1053311919 34960700 605410217 129888173 493455147 57220807 589822069 95995735 636674539 976148816 733115241 277938949 274652285 85627515 980487915 449444067 784741489 485340307 392249084 307813700 358193720 178054449 1068738917 431013155 18383567 470238758 711750746 225196469 749505444 41217773 52657513 622587094 724014662 736386436 125773510 878042397 84784366 589600528 765951675 532307672 239378242 284116072 151622836 939737604 673797769 805955373 27892779 179413057 372922476 1025278087 369989597 831183319 38551881 865704635 916450049 524292719 336049542 740939067 193031741 3697729 530529462 625236909 785827891 62249 835097692 251212452 517139566 492777340 242703054 258402802 253874995 788966306 919193412 781304731 649095071 291917328 1046238174 360333977 15612628 1063177505 113570116 1008277584 889156073 67432753 179871319 1060994991 833788749 12920233 571141260 657956671 641705561 902297571 664137562 625197517 945447689 966017031 875656968 484872774 707257234 1050281656 190565350 653342319 873643597 452636884 648161243 629166146 157520932 989408055 84232119 907170147 728338007 543282171 1053195251 691761707 109517399 983991846 873748728 853315944 1039282345 697606761 944207194 470519543 280767828 527829192 681429835 16826659 518182733 888711996 365220585 748741123 261592902 177225278 701328596 733004894 773495668 326455463 924960163 591006774 306288136 270819149 77200826 954658524 68074939 594831450 1019214453 444892973 844430176 777565365 915360239 733353819 40698426 680032694 623847164 84818484 921108940 1057498211 880396012 892665185 493132245 74359407 427341238 659666699 199293169 508907153 317766173 600234305 688305296 175575746 1041435810 364087883 83461552 249444568 258983926 43346196 555791687 203948363 347609567 222486861 983533724 559682805 103874381 80772549 63247207 562367865 769186541 3545088 562851172 201224188 333931612 590913716 964010061 932888644 896706854 860291170 925176612 551211445 659437115 743331193 614646464 745386158 75778332 234008246 957104398 533502576 203889110 607875197 18972366 118520051 1027024151 646506441 370869745 525210963 860993748 424515165 843166103 682024057 255514043 829794124 399940301 584183210 457576220 711230136 542251136 697823990 989135274 282180595 360088681 402233296 696696490 378819488 987176369 135019080 902696782 468576052 527807591 192709649 963884530 295261506 838198645 47149495 121149255 1006829828 14925490 503176163 384317819 923081287 448163015 902773024 443142602 887774612 1029770042 292539991 297365237 1062525830 306238861 805282228 744636104 265758646 100128616 214312172 723537133 918401143 98028815 446086876 565981521 619529758 577446881 936393193 813430413 366702249 449271803 992861568 165071500 566261571 1051230336 1013747177 315207769 213592762 200457099 678168291 656020392 135787376 418069698 172947632 515322737 477291177 737406880 684544468 721592925 646183682 26281405 792097077 526952970 400899606 644626693 385796343 556896424 897911005 36182893 922196119 937832801 534444690 275030663 222215933 455921230 297551642 477864170 962479530 967693050 258998745 451583918 78830302 872883641 284584686 416248271 202096739 86727802 456909398 263477612 544315203 948532528 377858198 944025218 704537147 645999806 572976903 162729337 940539090 451597079 189511486 640216303 393506439 950826442 808902916 761467204 560632098 822130269 126438567 598916448 394440385 7103949 22020243 614043508 761167409 786767923 172679340 89999183 325570908 649197486 534949520 171169135 718165739 100382506 588263260 747348686 683741148 815440298 811496360 587727821 519865679 878570716 757934000 169374071 1059834441 124247547 1038899453 379181090 298994881 654340395 323809167 210227789 563698997 186388580 206167365 517428717 262845565 758717572 357575245 992214265 719435873 259929042 746796158 995448149 143527738 133853391 673857172 888573934 89328658 561343294 148164994 515375047 66682539 272271507 591319167 183712719 908691186 492044361 28654737 508105237 152837654 27315952 670421032 925760231 1041213444 925334227 691800657 1015174167 949319573 250049953 846539214 973684132 247467429 563827936 510351239 28613336 584847109 40050850 421329625 844980108 100746053 587114736 651779976 82971203 1020647554 235959421 727955944 15864702 807257826 263218353 859618958 272369 920061579 74465627 895887350 109256371 140744509 993505524 578430868 193699332 960557002 772667288 811999456 480624319 605563623 472823827 772169276 496521033 143794891 26718514 775597408 929606034 465202124 189217105 513264567 620652259 712802962 211215987 954019861 344745736 339246856 371950719 632328842 753022411 822926903 140246926 94635305 1033734965 58517633 274507400 645256595 534063681 665527213 224835277 605130649 1038705198 133507355 1029764517 59792971 821092816 106565422 227315921 374129895 52918676 812612599 476676613 806575020 53227455 734325738 609011724 480384848 1023038227 858334483 771837499 138103801 890044516 504713150 303355288 882538183 676831224 736458434 315413576 809148666 45653253 104641241 1010767833 380048989 417925406 140766882 783278154 943102651 233719777 102623751 366956676 663625123 721414969 465777446 747535885 481019760 8661658 22224210 790260414 645470056 289565632 980922368 790190675 635474730 628131353 425053957 772193021 177506559 259708932 491388035 1006726207 442833269 717558622 223840853 265781972 333129438 323305049 181183836 451552650 928809774 1065921873 594052812 833706357 704144665 710072142 541772636 455398996 150600913 763823949 627881549 441843597 540570935 888591272 153506778 764700274 952230222 188980803 518093682 429508681 98578579 24912702 646804809 829974218 592007483 71477210 520448546 846077 165063028 571239865 1026824304 648809779 714832597 765849053 193552163 990674682 266769773 644691632 617280483 387436515 981342105 288635360 284015327 227534204 7158944 327795812 251521923 946095429 132618574 339637791 193306059 210934794 148314997 293430247 1042253810 484231395 356342866 446192945 144933506 394043140 822020277 360509962 137733510 1052330094 965883924 617840778 219068721 434839429 28772658 1016213796 600988514 836530987 137246958 290620466 1049951295 101407020 439761146 250649178 649616642 491122871 1070563911 730402112 62088894 693911413 97486832 339246686 8280815 761360273 89852212 823718863 788707491 446280485 635689663 786877611 699533921 101165628 482273650 297653344 370222000 566037414 121008776 488738145 949063643 728301743 155074672 31902843 645933771 767671469 1042080744 532917106 691502739 738764408 1016340357 904804710 218425627 219629018 69432084 850139363 638701637 925191096 553600135 1012156137 508583622 831510272 879019908 406044150 479139097 817161057 847719287 157492127 946571219 796428707 703534155 1028390229 728862054 603082558 40184784 382018876 718820695 646585258 105280001 991696607 358896773 807699573 426080755 903398564 744850858 542508366 262397686 480578312 693238359 999442611 503365821 152955512 398974773 1051821503 220061082 72274944 402209148 841840821 145642538 499263135 722870384 141082492 320227954 914128687 619219604 343958596 243331357 576187285 755498841 234097564 595171331 635279637 73921545 518173902 438951450 986213640 154633910 203904785 797395305 362628803 390544500 238957543 898756143 976141237 573238890 547653756 757121757 297636559 551562933 482647732 497977705 478815051 479381188 317224318 692560754 967828204 1073599216 637602943 499854430 405171401 4648840 1071078949 246259343 613952392 322674176 176237719 873357209 615736464 1009272353 199447309 941686334 317071574 782614726 249850538 405566666 626572280 675012436 276039565 89612230 731264887 868319725 221969702 257268851 1052365138 1057867886 899431706 148311564 49418571 62383314 390698028 836462046 584548097 852851697 769443873 976212461 1018064301 403934933 807599973 230103438 734489274 768519552 489102682 676012533 655153307 907500682 135045730 656823538 137865624 546021207 981029300 1026071989 654289563 314723624 107589473 359890337 1019558974 248096880 6697814 1035014647 576499301 871945191 286060783 558773155 642414543 750262999 417618025 834355712 217923144 1050600952 671579303 87715714 434994676 405471563 83732195 891628143 933841683 635769731 91925803 49374610 428383885 624318613 42592264 577262233 279022083 1017956303 282271013 755250949 551494437 64731513 350395933 996190079 393952988 833210245 958843953 328049920 122837016 951897913 168678604 1061635611 139529233 1049165288 138164248 846949728 47834115 466439868 751470629 481210481 220344093 1069731733 561093119 653756205 716447288 811312801 1042635022 384260287 386754279 12970869 121999046 1062325008 1015592589 100475846 3727425 104236279 665793475 625296568 105287013 711600054 333166114 686651350 596926909 64904916 478300797 551013605 82257485 259358195 28472311 86483707 644993869 974252433 513399840 325801301 162942415 105386149 393928291 867850496 93594415 244645062 965803818 944696409 55748806 938865120 323541119 207869512 335007954 555344916 409031304 255330710 720342385 617741000 844995425 5317811 673154196 581970781 49026921 1010525498 717899416 792396554 359325047 447570075 896925380 636870993 933898261 150581487 11757255 930079703 227053525 978346195 1035514111 42089516 939922544 1065181410 742634079 7402514 1000840688 755522142 84434635 669881244 298000649 542646136 517764128 524172501 454917248 180613528 625010086 875809522 128896003 791652770 917085289 542209366 1017832181 116163412 357060105 169969785 601334044 593441826 286933851 191168245 886722955 752218041 693182713 733503856 337264715 380657737 311816676 759063187 400065685 1049557306 177899044 1030257349 1057402515 371502788 714803156 605139594 993004850 851252869 16394351 591116896 62110133 1046552905 14493429 576515322 359226074 332621033 762261839 202877279 629264813 881918247 178911057 23587553 352380453 398801685 219892968 771773606 942638226 240653157 246611916 739912708 92543012 181235612 513700543 268771707 72560736 85784635 758237260 153932274 1014530264 372404437 1043970026 39304987 650020021 625566736 261497182 302009286 1020577576 357532358 535625815 833553515 300956956 349142753 999197071 432458878 787886328 713514684 1017171753 510497205 428881903 302046980 3216269 40867166 292545273 131024500 551107603 408008911 261115863 1009584633 1064836730 201737480 72455063 257179431 408620637 607033991 87828398 336134467 424388466 125389249 316249186 25632168 677320068 303370471 582776828 964534996 8784648 854091214 39045511 472139504 368063978 23396663 663972894 730465926 580443077 299301060 655279016 278763815 288548383 115239292 924270504 863925236 214253363 664801515 804501246 973894838 908913764 766479212 871500874 300942255 99276924 712218252 212158230 47103871 586437702 809871488 736592197 518099327 130243763 303466558 1037811781 644221667 206541474 895935161 376172140 189383135 354515407 937250984 201974078 59801359 716316970 1021470894 943605673 562856769 917466566 396581208 326039587 954933350 24171548 74846275 277017758 878167635 344700710 15523314 209959902 538569355 469241210 861759936 873565760 182869415 674576798 576346506 1003656404 685859445 230093108 833441730 855022559 76466116 741732535 464440580 964426539 947618258 310121762 79278423 908385782 533598355 295936832 837198110 690631163 1039210957 614067712 674665289 527511124 256728498 407003834 410699971 112124733 815680470 32117438 194633306 147057643 578273923 253878411 847180381 341888312 312062387 112134318 627523126 434474354 105293560 853744751 97488320 782474253 240519190 160048481 876504571 557155723 207430241 274107012 1069479185 537252831 661131263 667099598 70741022 1035045265 272795676 652697419 16625068 807377207 488731255 806185696 516057040 242121667 810456356 252270710 771676882 175313296 499823315 836468164 551879628 1065388005 879075597 882701124 708589705 409809625 33762532 370812639 830845344 131881771 944687001 638616223 993696651 389302273 945790280 907027402 600163040 73083536 548152374 105228836 38193042 73519465 786387769 218094698 85789458 66010300 345987856 594257683 714639357 142062862 280113386 266783790 601159601 299680141 678362891 595534768 1045415392 121743828 6671772 218254736 775563015 497939262 1031899314 197706870 949671897 718720238 792286147 443850803 571004140 910321996 39089779 818560180 734769493 175025888 989656971 793550666 1063429543 672193592 265202929 250204072 825519134 394820799 347459684 962072114 683973061 205682299 80764580 896620696 412630140 747894665 250413001 526214241 496940335 188677152 813704547 1070846044 466815489 1018000746 490567992 1010140405 823554431 235435046 5042084 950780074 326269960 201462091 890765249 230532018 468162937 116556778 6703088 872546093 825169177 112944848 930938666 144882537 824962682 739709633 807764304 723979255 728445550 973411482 769737078 737099030 754787378 106354023 876384260 644729100 2230715 67391155 518524489 54808238 289214402 682789478 1061091268 1060339984 33111049 648517854 406669671 244227243 393965970 353173346 11276915 989455835 550391945 894657555 242688168 139249170 566740350 64044128 130366988 874850910 821141267 640957659 148645485 730350448 92480828 118541950 704305043 337628783 37097270 452920461 478635557 429417176 411838800 295550058 467890103 734004668 219237695 1044310401 197853045 123716471 1061877510 954325792 865786754 377411222 506660874 982232496 190877753 949471271 621036400 750689770 972306623 913070872 111531124 179001424 306425444 46669131 841931036 255634627 158405109 328832890 944145345 583005375 99831420 677673878 877297091 65876766 335352601 633691940 857053291 698887419 497764866 349741672 108112203 56762300 583152281 317441712 817739206 755598754 884582391 702858875 428777798 255989216 957063262 399599780 452670571 808005828 603723968 93916572 998496258 376123630 1067472898 734101110 397300298 759374809 791543954 222532231 439694056 282754751 515424948 82846444 1044443395 729525860 842669346 89679001 563885454 7222553 545567021 343661450 639742552 539736991 434459684 78732112 461918463 848616542 287954702 391228994 594240186 498345056 830230023 827093702 988592535 143248785 814731896 493563700 139310343 486745458 207791494 798296255 181002942 260919058 693120263 348072960 779252429 571970571 452816893 214600988 21817865 150343197 444423630 1031308531 322053527 1011419033 46734435 650071473 571112554 502754454 630655363 789598406 364923743 316430101 515401743 1060708972 43767198 367929057 386416712 275016773 78976829 337294376 849330436 555731339 99142260 6672436 225351759 730323373 475303714 188753 970111520 278440450 213667735 49691228 212035757 354800341 2810336 627428320 967774028 724967737 167952605 123418538 232381305 192822996 1045022179 1033132752 540266771 130286420 311016293 757384793 734915028 197522417 225950344 394248693 708004437 103260927 44843640 139586963 267420383 761950320 763928067 3193015 902490277 875877382 1020725866 122616465 226758068 684949554 999374234 802660794 115745898 409800010 526052356 399569979 736444512 810865186 561058679 450964314 808006716 805042402 113014615 550742461 1027514211 313891625 112689843 817406194 664581943 661476043 503633606 988933210 637738982 708751484 582591970 930810717 316877619 1019861340 334677633 1020276242 572378746 724832367 1023170199 562282795 730260141 896888077 732427351 276371201 1004662524 957308446 450565444 45415690 595651929 560751714 1006863035 138401311 211998461 738808680 616416670 198916472 440227407 449571117 277162505 1024189418 262608338 402564825 886001568 997214269 11868055 891180911 648992299 644574394 985411716 778737057 805390393 114926918 118246595 507608313 944055429 779251531 787830078 514124585 338775812 113094010 609002605 530303747 798433993 294424815 581242076 983063413 1072381066 894900968 445726332 697513339 454327905 136174551 700897550 524967133 801955237 82009760 905843035 349114704 1037135212 40320613 411646949 387380181 888243383 854705362 816544570 711332981 884474162 750131118 987970713 1543798 594819389 925850761 75463797 815300062 496927919 1043386850 469345929 834100369 554472901 820158690 504846308 581302683 543304621 122183346 982189095 109271846 748629068 1011695598 137827649 937527940 967889454 1016429879 693367673 944859395 1070600535 263463775 897849031 628616810 673254498 551156970 292063499 371986535 645402489 674879472 489333770 141356123 889182176 936472149 14984730 94902289 615451226 847855543 839451788 646119043 262311437 757249094 1050363228 655061580 861813623 442649464 293666365 976649969 890370963 438792370 424441037 664341192 178915243 783593415 507728488 366405336 117819978 555730646 5859786 704800853 836456357 606152744 728308337 804465280 364855366 86569726 932516561 954009543 828606235 126890690 385254904 672960400 602335304 164747509 316441048 941881118 231631915 425830046 765885804 293069407 430788638 670777423 829832312 126483673 429266807 560370566 860027083 158179216 561003260 265803131 263472570 15269149 942874717 584520780 122572261 612586841 862711539 52612068 992080524 174896449 598992405 384858406 789476939 413159437 782129684 515009955 1002066587 567524216 114388335 261984803 1059774467 248894797 1063426736 1031920228 598749857 373992069 150891603 391118426 299498592 1036703473 466759350 1008575253 387145383 799744478 915786311 1070757707 365470405 1054010180 603556060 536371733 683648154 604002374 73765106 857177007 295815618 357437595 351105606 141821694 186703735 208432331 906933725 196001033 447350405 565632575 413516423 341752076 1041071387 82887810 966131451 996902703 666541197 601228495 911517512 671705212 53849498 720978990 286518048 418648497 705312719 200208503 811511391 971732142 529678892 547592080 607500605 378881930 867068961 15626559 350171468 620417034 856474389 166286105 88216072 817701623 590835770 920086108 443310795 62875564 675664657 886454490 78375863 475525964 649853432 638891877 471419578 740164385 661276138 53759362 538290762 870363060 712412428 409047378 479494652 202680208 679798334 1020331438 194208172 46654214 457448121 320237327 421926038 551084996 209294176 540284360 431314428 638868984 437099104 955406058 16324778 984314987 578133779 928809311 662178516 15916662 310867638 355837342 126213484 828779047 234030378 96446114 189489019 236951249 517976846 868913178 384067322 625926928 606111750 974481650 935735572 728345054 1056171483 193688006 1019290197 868081508 701218183 471523496 922847138 912875007 156689291 850365078 592931328 62043419 863134162 379918134 375309032 841871282 997934316 713724996 244188767 369641733 653134509 1068965172 129828924 968356518 673050245 896303555 449722211 373326851 555350349 305771016 270011465 763224266 792393445 898967436 745427179 817344459 90785195 710937680 487198042 247127583 902152054 459015953 298378645 204161268 57875812 528930670 443225585 87483642 512404002 424726186 641786442 350295833 447187540 397799196 632285677 736959301 45346119 901510159 947649301 915858618 192146612 253567781 220517490 870105033 226753330 837879653 91970248 914627848 437650621 907310206 263350130 433606764 980830847 312001146 177285497 98071462 776189403 494277025 292021777 754685648 336985379 119101042 402274646 268843821 717604660 54266998 941275137 385977201 268224046 1002799510 993109861 970642812 233801346 324062352 674615728 28988834 518689312 828458822 435164414 1003277959 912058379 473604376 156406402 8933450 608541428 1045161543 596411784 905893632 534816388 1071864637 322229440 767197345 944872572 378363220 307860779 420537559 587156906 463577765 120151519 336159170 230574139 69054351 712336332 508274629 708491480 187794445 519225996 449234038 1026112781 488145559 213904967 886393854 989395047 653868591 198887434 278228098 873871961 435982762 467365266 876592102 637299873 587555781 1004060055 1005870053 724322736 579692919 34392548 857441126 1059419561 616865753 1041347298 36313465 563052350 556110676 848072093 126359225 66033986 652225860 795005758 382189079 916714545 738664899 309248396 816302527 399040078 756846196 846420207 884573607 227161918 32071763 273655137 637517917 696854442 525368662 928431250 421919191 474132340 619847891 376835776 556952037 361087787 941755855 900080720 878690227 602198371 248243561 942295717 470409013 491390768 314360750 993705697 979735768 741852891 1060468121 897046775 510880582 585551578 370489962 619367756 884397853 863510083 445872321 404587681 270095610 124199786 743815257 223320521 970635461 284648026 594933969 200158905 923157885 324830897 915754130 771560756 807426989 82143939 859945540 130770934 609630502 235739597 3222962 434776636 388080556 552353297 777330484 811808219 730104983 27534222 549243197 25069399 1004844014 538079579 28602035 1065533560 865259007 473390940 1010343857 224191799 128073493 449703898 423547589 846218467 101611113 744167972 274401425 51418569 816728071 439959319 509533050 146394791 871524750 944760437 671786069 771578034 913752119 5294874 267302378 242489700 878094891 334527072 30908319 651636875 886303258 334247779 898956460 143310107 886474689 91424088 297507185 143348907 675080619 742615622 287959608 416557123 151955250 56001244 126422426 1051390708 465153432 776849335 980602503 423694109 489959580 916697322 720826649 260369593 592093203 630099259 505622874 535718416 167219507 1039445551 767353438 466972159 740715896 754446634 866698520 578697555 1071904078 972392003 277386290 797625614 180521681 91474778 221324677 695400433 812391276 530766197 116919746 4882781 1054434020 94600646 169476815 430739785 736626279 693307506 583370700 495491055 757339348 671585087 764911783 895675161 66282596 1016088118 188943771 754318554 504310769 121449207 586750181 922205133 1018274659 600923940 272507772 583978027 891281673 586900676 314782923 728533042 1028184167 333476334 200867418 64089125 904480162 392302225 229459404 500116561 384078760 42086261 731806392 130248671 881812631 260301557 1040068439 209933246 119841261 793838887 19253797 200593196 623754781 1030257307 829793397 217326300 78388319 779152112 515795283 966390785 1070404915 673236097 527465645 422272712 467078675 354058023 180960750 636135174 37977538 420394888 108235766 615116229 64272427 415392293 32633493 81652059 498248013 372983878 279565810 47119652 350441619 895759602 1053215350 380008638 712340884 73621429 1065317642 985499491 985905079 425339971 958340500 181892760 442161934 757370178 529635163 541802556 766710392 1062469418 105428552 72462227 121250400 583838376 205365573 653949777 297560579 94933370 251491699 120862945 1001420607 475335613 500650765 240222665 595602076 229531865 255853657 131374320 629999248 953016044 970001775 239904771 128878631 562638058 634705419 7731577 869487650 295172538 981892859 695363672 407088760 120309553 907393575 730630621 156688143 891120494 1008353126 535897348 569977017 511004396 848177223 997881592 71523056 882536284 949751252 43943403 227516087 1833117 956153655 500439427 187635275 747652520 981295459 714294121 1071086624 361034599 215470428 191800865 97172755 820014718 95301185 266333544 173994537 285223233 1011609329 481578214 776071408 1015574692 80601668 42970167 646144363 589140389 671170418 541131423 906156459 311965268 396505639 838510995 641386889 502107785 779571756 955742527 77356208 458907984 709232891 203356125 513812080 271306108 551654925 559239070 449561360 480278629 113102557 256895858 62320515 544062703 672215309 639728907 161403064 248345255 967158707 246267453 902303504 793488496 931111092 549128299 1056195524 603447256 766634021 659129928 818541963 54711162 1029575037 315614402 540489668 972261685 168141210 876478089 933894325 225309450 910252987 874324854 118320440 649691514 528459213 159722835 532617476 225080105 513323300 539502062 697133787 201846868 907055310 622621768 849132087 713910069 106914250 882208080 921050478 742617394 450565173 662124639 95556521 476680080 417954715 838671683 153877468 619448644 922862689 4387194 718398522 1034003373 59728523 648202112 770540428 720890158 411106183 56200482 861575767 278409726 690807388 151966778 779657139 982750628 987511084 142485798 87484068 714542485 774183573 1016512554 626343673 700663853 689098133 836593904 137150774 850481491 15880933 934897532 470453881 785804590 734810670 179001252 433275610 466464182 999616994 1008456587 954004351 960350038 624613492 110230189 797372213 342567385 138726009 927232105 1024661062 272693077 89468531 294394913 643829238 357187086 1025807681 420037561 382342652 1005882703 509329342 437527739 1058100231 821960707 973529808 670987917 217689769 53240874 461074298 499984489 370153646 914877565 719047768 23665837 66188264 57335545 88428540 309392033 863013965 280847447 346492982 569054542 605394436 378618722 736346229 402792981 864775692 782045840 384615323 279947481 645678532 285451487 551279030 317135433 865366452 403311958 254452844 368280373 740201156 459652222 999187052 215812205 910725850 279993684 671481574 453526246 777512586 439313331 798638938 760933889 55113319 138483292 934536436 186943513 378613358 684677376 1049341247 507320648 293528202 103553740 608011616 774302103 212591097 123297389 524773736 545845232 704709782 443950182 274755607 903340588 878158937 326364230 558081651 992533719 327757642 635956948 814226800 1051549587 558426943 548379022 371553498 548733738 800190086 325470542 15347384 900092154 1002890467 736370548 441774770 676510078 626094983 982158553 839043840 516405933 530869176 494935256 866119550 491931593 976774844 925004347 1011363996 956614014 346534467 1021855832 379186192 83250797 307623839 474708042 757847326 702539547 967347185 917980229 588921646 908410947 19989247 27845713 830976443 366947711 625430613 838626206 697264645 292524457 12569559 731075612 101097313 765763468 266207057 883317065 541946538 469041871 340606444 908694247 278552822 571822972 416048403 919190462 873134313 462962950 131156662 1033781790 426285892 318548467 26430724 685424583 654784070 780462909 27993490 20840631 362010648 73458368 60621144 152119884 936772755 775315985 288676583 85827743 613744074 315976667 522610880 846279785 459821932 759258183 683758850 297912231 643628966 208226678 486807159 759723021 247485731 458020858 895977354 452119155 764184394 744508455 865999534 508586157 493153946 387934971 801765341 38866568 450592857 519053065 116507656 45868991 557508604 562597276 180150281 645432132 84924139 585917135 462898423 943369703 980292474 885538826 980760021 329639625 253638060 429351032 939967601 746288378 535235692 61022424 52071230 432209935 761704546 197219118 1052811884 747756585 571094234 980114351 341997424 256140078 632059915 807469556 796977421 463118540 463682323 709272781 193221087 441606932 502833411 481926249 367025255 484797959 134724793 661899198 877700039 646863984 129793684 167462477 776473683 992758146 344342625 688976778 444298344 1006042790 737354437 504671743 960660475 154732208 131518883 168569740 791485819 847064747 966575292 988648929 937227058 123029991 533525275 985186162 535383046 579257619 418331724 672901334 61358683 713141493 241903989 593107002 834021451 258153835 476964223 830188907 350018815 506238235 937109387 16796280 131244818 909568857 478645151 1049492510 397130293 640390999 508388857 149735113 230237018 792650708 85035726 133266092 109019663 633586428 529603784 345112196 799134697 432461905 250248265 344134455 991342601 21882629 888967272 145693522 41999487 550237863 739342395 523127126 976866167 881764883 479707864 262182990 907815836 324884022 345390756 641063783 35868235 819141151 540787153 870795345 1049243612 780058454 86294697 385093519 896694400 469214676 470964577 876910456 160440756 70564130 602424262 808034267 507568584 925988394 317485395 478789032 908113422 667880982 613833311 107691635 401000301 356737194 90835412 1047725242 129612781 440727545 296009053 1052098907 927220804 67672759 722619640 539806894 34249873 315398092 327917289 36995095 598015870 979985693 1059165610 346083707 999446253 713207055 738789374 622800776 1020855441 359749105 619448010 481402898 94935011 204731301 669099986 165180839 920538414 50531843 975456449 452927365 239435559 722376791 547344082 912525939 942077594 405830724 479852647 403957508 688591352 656127285 158016796 475423830 765828211 786368767 974038475 661122702 386680445 1048271860 470631132 835897262 1037762264 416015991 433374586 123932384 103470143 311775629 225599799 995952174 243873682 548164733 849274860 93672204 470938227 473794554 306526862 147726208 294160667 456029230 703100622 651168282 388248693 894904919 388164733 105676058 215651422 746186235 752471125 481124220 368889702 644070307 503549546 947941688 527300886 1039032268 451098249 220053743 405947034 433267466 563696509 651844955 533497804 637172752 394234309 615160350 121294656 245751096 909654568 153687113 721845672 603257496 1030469032 1071960409 768631168 442306105 335784613 365679073 756405429 808961986 415772500 385265846 95930945 458702563 171750435 729606330 195217143 804750253 224077875 665949943 9196544 962205261 344589823 671863884 219162611 355564039 1015106687 496514262 760919271 535018648 206385804 851463062 465129880 212336281 501156345 1037149271 665797226 351533724 106581904 805082895 334922383 595730327 1069717086 54039201 924666532 614188682 300806602 658132082 1037735861 856512067 462263324 533057373 506989177 308114363 327213993 1001407354 373206479 301779648 259427552 858181190 775532749 407741159 215284344 580812614 276590498 352105588 1044903354 779116626 99962697 572356407 81526341 800344130 101342074 596501822 77980518 755397503 525254806 7070766 936934065 134101791 402440811 895353101 997544360 283926096 348115025 215694567 1060367540 1038773642 247578093 183088488 316959885 482434008 927985970 53458049 61358622 534357235 119110085 519315448 457597060 464646787 536547138 689589916 1002509170 874340573 25450510 601544427 866550618 777248453 53284746 644494986 695807549 907464312 462383030 465377498 808289347 569396803 904128437 868179748 221201217 69471427 266674406 905841328 697154847 871754819 800006296 697888182 1055713735 328065995 806630686 202240822 227958114 751475365 681334743 991120154 797657337 330457396 809645410 30458781 192014563 557288381 264302453 48280046 270482752 30394705 396520108 228576634 769586754 446790509 966043510 505594960 47977205 698245370 476923728 909280073 213231376 839127294 89262143 902969840 310753660 399088832 627631536 460617600 983036540 619487764 1039238315 129237408 647485900 617086244 922371136 1043050144 471256545 5324409 965083643 190376511 79347213 250337778 951193080 928764886 825555027 832739980 971384893 234703638 326422091 344107334 927922217 748257230 215947247 7349515 962670066 183250660 386638630 353375830 492617481 96146439 963934339 1004995427 234329540 57713506 127554691 1002723764 921875964 952654453 434398061 237726997 483593791 836746099 463960311 152586679 619584625 345972153 643680961 300152461 510982422 666235923 595901825 966542641 7989825 399470846 156238323 1003267259 389919098 166159731 836590890 116607533 77547673 381014747 115603873 457446208 380923762 1045131155 638466853 271546990 354163162 177199105 527810755 961741840 905311278 727610864 550134617 402819473 237073008 746493677 53267829 140996636 907156722 475868044 619098648 84693637 518486619 130278001 853766583 441746472 146057653 444671466 959890370 1061183514 151113901 164214707 931747967 541960220 87934608 807566273 981501007 231373319 113768718 10310000 890845128 481730187 452449310 124877241 285328737 880745928 899894086 995289806 1040380861 1032159829 81708414 971375607 558934641 57013271 842674692 897197094 203323510 1020841567 595941635 951097219 423239023 963762007 703909943 1031945411 179313235 221663433 954114471 384461638 963523112 659818100 552979484 276955114 546306084 544199716 19975181 3173691 59544939 793458040 293363359 169082407 922518426 607030166 1011468871 235443258 317472134 267028068 324281798 692499816 1046721441 404043510 488600731 714061287 842943301 421785784 247558328 212848513 548349239 876133922 300610955 61126022 948206720 131707098 651500921 663863713 806081048 472804037 362390407 341196395 925067373 655967573 1009202849 1008827864 862959688 361292027 4063334 690786047 943499244 387981466 257438539 859483157 933379036 542230094 698270548 389321638 810469418 870505087 208872918 1558962 768571330 632034249 235458316 139256700 619947677 79909227 540847406 1048292284 799556822 857025678 478086307 87822966 563636073 264975891 495470584 192340569 725873532 871489247 422889566 661199274 273692875 639808003 139851269 1019220985 940624948 639845602 908045645 557396197 538198274 300471674 1042040261 706548920 907299161 316598265 959708003 775930737 295511652 867140454 296605574 935356481 761632294 1042126229 37093562 998725592 464947055 838778729 480626470 153335143 1068549932 734243344 262716133 736548423 342426160 1038122568 293641516 428931389 969697835 237284782 96227159 107179116 366558370 946191134 1061055837 219875740 751005443 627953486 700080558 128753368 329587272 320162252 689024364 979932221 176475985 613981485 508261768 855264948 949199798 406451906 293589830 764214532 524622791 257158276 523242360 697468765 561490197 21409178 196127305 182919935 559610268 43175973 206956979 851817007 276556574 280321440 915039442 916385711 627485916 53522179 559848472 611359031 524251846 661132753 681333308 449022778 359780357 828714437 298763737 337445718 607532503 593228058 197890217 841501908 1026362321 362353862 1049602060 106335182 328294217 848255005 1025199371 1026800331 130142900 31599800 408421031 479631763 677852061 1044408398 274352583 708433114 323727828 615834319 1023903898 667296419 244140946 592278448 219392821 268946962 385893636 358667752 178182034 495771725 502339805 520312592 449066929 1017869716 424064706 337986568 443817937 817398003 960823054 612165768 193913291 1060482760 45966133 101271426 514901217 637936940 878650532 383498568 503296531 652855101 568165929 451736928 66742735 401056395 76748596 268156246 584696455 688533846 170265003 22534421 983851653 659250493 642557927 453225259 853532954 73281713 979768081 85807566 921672325 922253708 47238260 716208482 32762711 431331107 979154272 573485742 125950732 169726642 919698784 520867327 718252931 479632247 170483095 113512143 248806667 445287369 454711874 211000553 114300552 750960773 824165012 568371167 735509416 625744929 705756863 584411967 327192762 207664159 787398552 435698731 866057262 565463823 681243452 814631383 591634368 32807784 796655734 584161014 524085827 841338642 976998011 1025722574 228313389 697658555 349166088 751370866 488074854 41328457 283034761 339323626 877516663 847643845 607444816 782693393 713569210 307436503 697277891 142807376 239668699 1003005941 857294466 621762103 188091530 725630868 947412347 218425748 997603471 265686219 635521976 150513664 52491838 942349055 9961906 413237142 764632804 16934989 947732921 175348455 754161852 683661436 481989974 1042088101 505549699 287773461 740474237 605109934 714322255 1036907949 553266207 241558138 691603031 324155725 770989851 865889442 117586360 765796441 951319975 992948590 581771216 964686260 661874745 239272248 287992360 932465849 769194097 589063056 585056313 140869391 1003074072 1051068250 568738014 1006976028 548947822 600097096 702219746 666003858 875307176 612092156 237624509 890036862 702887105 499796963 729698175 2992638 722604683 539931266 779255673 184268939 1000754819 485743745 47864692 851976031 234304721 643116947 714296836 100381534 497223541 944435365 1027708062 427098656 422492320 241749043 171300867 885522755 180323995 352312672 221590345 374213910 794738123 367939713 679755969 647169609 208587047 144912684 691598216 398914332 174742961 110841013 112359962 227922292 593165265 616570339 526986255 118459739 885613187 173668905 893694622 445891169 325736472 442898848 610169566 108249008 749640608 876524865 89691306 401790806 92751867 695169212 475687869 577663360 392282847 845281195 1026428253 958132984 546714933 705309638 410367041 338430386 13307127 635745031 653283167 36716286 859170065 284910101 18883835 436896038 406278498 792676949 156774635 797417994 652998932 126736934 785739090 112852505 973843313 318792408 376615102 149541667 599584721 166119637 262703453 341158649 339100890 416974302 747580061 447078805 1035317177 214286466 218830757 588400851 631264330 974901715 651331053 559318882 1038847565 369662485 290143910 118095693 505470188 606655747 411772805 117146360 1002614038 110065117 703724039 882724393 1007954586 232409085 658675516 860080876 962793066 945849027 835971711 18103549 335494943 814135434 940649345 632442385 614044522 682844790 474908925 245454735 153551446 791179865 755898960 31393280 332758184 808372029 730962723 575273096 830666928 773199208 518828730 974494413 998565783 864520389 873422042 5944796 755736214 118930654 169240397 952381793 382252691 490996415 383502164 331525456 771556898 596259889 791233249 1018523200 104493983 854363102 66400808 799682565 99652289 29228648 132285266 491732677 346859693 200755370 366130737 421699557 99446483 52164673 423079603 853050155 70146749 496101687 317035283 206927402 348300758 506860138 778666568 285933924 440282719 235228972 682024158 925540947 397686969 1013739880 716953893 530400844 335172348 115535086 927691973 385194992 71413371 795403756 1034797714 787664777 17303157 740258369 78361097 821599002 679944614 248400211 83164503 665942718 478638931 1022152597 1036066005 951557317 1015540070 396318930 861252094 367776034 11646988 170924424 1062733179 264548726 304526972 142335590 591291140 247595940 29846598 327215585 1024748280 710223041 594815593 698385957 710262678 919369385 544155194 213306567 513258793 846549648 192045520 979336308 530837847 515796353 393868995 716086110 1069466066 1010092860 760400651 1027297686 398918731 140848304 845621879 11945926 683864479 801610575 1033638030 995785585 870252199 464420981 988085686 427511513 163634220 718171858 1047368829 20785729 524788768 19589226 385453869 926342155 361647589 964933958 886747306 289870292 972227709 797626837 814554283 935071552 655066740 980407355 461674470 782777067 750554525 80726614 297335247 604847428 219331952 189848578 885280429 385465017 160579053 491621587 727804913 24497341 703861414 238768754 879883998 882339507 218695228 594020429 58288406 222942439 297564717 811694523 184859727 502259114 303559916 700732382 664035108 604874106 1049461520 963666171 259255477 113524002 873903576 852514996 843607043 869658313 521853154 873431397 632206058 607671810 760398015 179005201 881339609 661530912 714163235 705056893 45792014 956202943 190275877 620315548 148889165 702112157 569286687 21222555 840849733 56410543 1021887259 114742132 606659297 188545095 148636993 321365419 347776339 566844224 332801713 591696147 955505922 791912026 478568571 966792720 710463402 384969154 907732747 355619711 602352048 941596323 90377802 245717497 207980996 887370528 806462300 991077112 885684247 54582807 1035829136 768273088 524715502 912534599 828763085 907955396 980890009 239003787 251102978 365653270 981879525 883180311 366270928 767715923 199394155 1038169398 1029872100 824613700 224630981 609053437 1009780038 1054376721 875845471 143459107 417040756 954758912 483152750 910387175 1037350723 246994723 549513089 1038819606 331528533 48571029 124434106 589066717 609039259 1033550391 434102500 210729811 866049099 243913503 699628245 225615788 646154529 151349299 467462903 933585995 744591165 744143985 290428332 478127499 1000599854 922794582 685010578 332335794 1058619435 569396700 123770187 797401985 288725109 436623646 892949119 942776712 796980850 567458495 962010559 673635311 358925621 233166305 361408628 1046602927 457687022 286389371 863652992 653329070 934022222 769752827 41160101 803742165 359186419 21181856 836309298 283787439 731090762 826811205 767851478 146075164 855340672 500019399 736625210 668110006 557363107 265894984 234166179 463193823 277523235 577509336 194731046 868377796 666194485 571876393 974700557 678304102 244950709 864362135 257789856 412475278 930885042 529524851 419063133 661976019 497110385 173207285 763730680 358265181 467125101 428227699 62343543 21115830 717070882 156916756 604248953 387603968 508243050 562127308 1069909497 28344247 838104295 466091185 746401385 1045262899 37310127 194737472 482700115 222841255 165988765 456792706 725817097 548683334 399763789 358148609 207513075 775273178 528998993 529567660 930721227 99207448 924224267 343401435 845178019 974513540 885336522 719588206 244996089 186229330 495338072 728749675 123372452 430739355 543465492 377904992 462311397 536763971 151611720 651001378 157150051 362916108 466472367 293947617 540961820 818503671 815846190 83321227 1068235217 596113284 583914617 413097072 116933089 388736824 518628449 494927014 175929184 995888923 564677054 1040650151 726187657 915193813 494500362 137025237 124832732 1004149044 1023585698 1066635922 550072135 530008175 321818593 676520260 589701483 281711975 164218192 858247936 824231002 494349098 731422726 73095593 329291 341944437 453501646 748952613 365805480 428112418 259572876 53491048 622224278 563167289 925510815 495059146 823004826 219003123 264214932 871867470 153107408 895817478 842221932 109645727 891210341 136544304 1061522460 254794628 583496876 28127107 10415290 282331170 886862339 717453633 371029115 134381731 335667406 292122688 512445188 783130344 786315917 357745051 887858569 629266300 693668211 612061505 250950833 222783492 901226758 567418711 524342646 37937997 572211293 50939740 403112177 312951035 147532237 185360607 322397021 472472660 324592262 300815363 802996846 647477313 199421372 153399767 1070843651 931902012 396800919 315212944 127616064 405992170 818313104 668457698 78647849 586982220 301667569 979412905 275214033 289544320 865447728 650499417 146794661 281173913 855124707 392562931 840963605 1045066191 956996907 977122063 639701639 623775229 114113957 884102641 1046837559 747945636 664401258 867758168 619566188 760942217 994532298 831866234 557269216 1033140677 273047651 544290338 508326931 657992395 849376387 205624440 72643076 251099423 692101462 1055662171 767273693 452928258 664081910 846211622 604090673 909128609 477760412 202907676 180415660 897170500 248408613 772924176 218787810 833361378 868212141 987276774 279470103 604607433 2795748 3044975 375857371 162273775 384651624 777559969 329346572 32937953 422414034 100574916 537851384 522401177 446466173 190252459 450557464 685248899 353677557 1009954031 262788066 1000077653 884318482 511776151 556830354 759751518 1044602793 43149540 1027937676 499729841 122916009 411707640 76243655 596611281 244430676 107474298 20437773 430281791 990352338 936589799 255665734 689741795 1018784323 603968814 635121781 983907085 942574911 598607140 735681117 78893402 821576165 814184541 21377535 781220180 807116243 377654141 12014400 66525181 648673835 917653299 522413688 283956994 393859379 607089628 605220493 831359790 1022473314 325760813 847221284 385310860 896586621 111557313 770146618 920333378 883069338 196763577 706301128 302821046 138351390 647929317 1051692085 519036786 83206796 828243232 433748747 65596998 642864255 1025264480 412905607 1743419 446485503 424395122 335816934 933341924 594126828 520358806 926725807 421370262 98393419 958147653 81046382 98908871 695529281 26923604 512257378 157476154 353740557 147028469 43761885 213374431 217114032 126684477 239041220 238875756 308651885 519362207 926925186 894487092 1012927324 414815529 684453530 501574490 850128153 239895767 290536767 528578056 480063382 305158301 890252841 38121950 130406323 722048941 446739435 572371450 124859860 328412279 641446244 463182325 569135793 874584171 441810607 250915563 461356378 433738989 424972588 472678962 683568364 867637357 514361638 543933691 718191921 674305563 157597251 857352464 1070048879 523902400 715763356 288454262 289209363 459038111 963185667 1037287264 459587008 539466392 848765567 410517415 496063237 707361587 441301296 652521908 387724824 95768388 33257655 907337527 46820749 842997224 214286231 406999280 817355810 243228546 724394863 309002051 504002875 261097779 253316230 534960932 775202428 1042343097 760966560 1017223855 862405123 526548174 447989517 143130532 542279025 477757226 1053468060 799076975 1021414789 994837310 618209935 40178669 733279988 154549046 923055830 713390921 414721252 1040271002 1007465521 926847065 283631802 247953448 164831456 18042827 979449569 302276916 1000504629 488175904 166535763 133742047 229442959 530187153 498214513 179570368 762882718 214924421 568621265 223950088 320641487 211845843 214481164 302810037 296783117 485599471 539892848 385749040 33463426 194337498 1021382632 851243594 667490739 832632474 10383703 1008331880 208981899 781768420 234425403 228301225 939389859 19000058 593779939 227155677 814896758 150638535 509959945 57425902 1023240381 529824421 135640600 441393268 289134907 275742584 869557192 704247646 842672088 688178565 772947377 290109264 59680932 205744387 267388662 802705301 466784979 1008410623 664060913 297255993 240923823 929770943 331053485 229672164 1017540562 638822359 786711606 844125248 387374751 119477562 120153931 185803512 66287545 763995245 985580139 617548165 9106342 620706878 480267858 955313789 781052673 198623862 399690270 162596144 41780297 23113672 197528315 679187968 245244977 814736633 120951704 751219091 840914072 155475516 238999567 424864812 1055649301 452861727 112932939 86170923 588993812 461352681 10375710 522156827 805269671 938416469 21495122 64706902 63535223 520788046 156766921 6995253 286275874 65262285 279610194 335285577 1029392154 110908883 485741507 807947345 718276669 940665818 173914760 494206324 615805997 830418980 938510516 716594545 972758981 944730436 172674757 1020043069 841004825 939516485 928853651 1035204155 395416755 759084372 134416595 388783183 713175242 908247087 645262609 741985643 584963254 334274074 133557463 440346026 731111402 664038416 571022408 874001566 748181713 350899041 915962888 17825801 919144035 362809723 692287962 994986376 952113162 754566559 215819608 635342690 265122015 3259890 547834038 316022821 750492825 1012359702 619707407 501311411 214210966 901613878 593909248 952834820 191489558 112062703 175528088 890163579 994860967 926701609 820386279 501467525 435007281 429291513 739842308 328454942 122517827 831607527 69750114 3179860 975397960 181917393 411136358 312027538 22635403 425574872 515395676 258502384 361880135 790825478 916758322 221253074 449617414 584775434 562646710 855456915 17382980 201402268 20444602 560276048 83560316 477290219 75034912 866710179 849421033 955610071 61000745 364857525 658557522 856000634 749369840 1063910665 425907958 958576926 690248252 24201934 850110311 367087663 614033501 888565557 725738735 436473815 368684185 298864528 670924315 778067635 949806789 200760610 694090772 925938442 113197499 896663171 938673263 394227709 840657339 272401155 340401460 298201564 701289028 121245832 185302297 570751948 141208589 928854942 470020590 968202741 741509685 1035519224 439053627 119514354 208525983 108394581 327857204 354174357 690246623 830037999 769959330 163915252 1039659325 555870186 639594030 345341689 286923214 764655329 254146969 116414368 433423182 220360303 357986619 956821276 185189191 392700058 797481869 775634917 62631643 373474561 1027850629 1018729284 780962359 327802001 743189685 580281716 440922879 1034407774 283211166 909603264 1021476219 488060818 81992491 262721997 400706162 906880177 327054299 640632061 908255293 183491335 132876802 149518202 642804592 412211278 14624406 937302392 651241863 928025857 97422890 369656170 96042905 214485796 238501854 996758968 586944920 113182148 339899498 936818757 835132371 850480239 548474532 305549771 317696474 324246966 346859404 122964747 983635060 317306517 318657742 772602900 203447657 307893100 768284853 1068787239 1055141266 893124986 555752675 867230030 1031057191 388190704 910882429 526235418 592126802 696795874 394413424 288210774 756527411 343262896 307993803 847788317 442734512 823509137 578289137 820701968 1048252206 734157241 837005183 753701404 929660908 6455751 232600793 1069518122 289426505 59707895 716144536 399646088 125850014 886072305 9389323 126813350 148361330 249479030 804716230 240691539 82778489 856968102 1011232418 224850932 626270106 369431345 222621873 627248838 879625470 621222806 279484680 854429309 643646760 1053622380 1043022733 322241258 1013315679 652777025 750344650 608855552 630134861 609167069 392054613 722051190 68689078 899361116 91995855 521164157 998678348 359125968 875693344 391648415 315020336 262908522 749495332 459197619 275584206 47203065 1004445643 167748724 46711883 930537493 106951632 757331712 376443989 940623425 899166977 222890166 279531215 441759501 971406241 501526497 203956022 867852534 620800431 720594613 723473617 353015504 866705526 846317464 270180652 103788296 73782666 94812707 872376894 880809494 219232591 880962414 139968316 128383188 446093171 485451446 358016770 49228131 412329544 280042954 385010330 897975771 498818610 647443960 223686093 187240392 289187750 1072748206 70237403 269436552 749605425 777586646 631138273 16824439 967672285 984472699 487324087 429463373 954844527 440110267 562586578 415209927 573470268 307617995 457263970 80660474 876872435 738152254 405037772 932915336 655233746 490064705 828919881 845471153 270384299 196432556 537644418 74192000 203927234 876116656 951749180 861678813 21618266 366690885 441641082 466563363 600458598 1071787005 991367041 355929868 335875041 403618360 18466863 624150833 934072881 881451027 1026206569 964789130 881847840 740260565 125810081 518667147 423411743 483573664 688150405 353094066 611813104 90348891 772787925 343207786 946460446 403176738 402508573 341095652 809233340 126601485 214189495 998488764 635762654 385083691 420198573 275851388 447844829 194006945 722817545 390246814 179408301 987612949 837149676 378506189 284956390 852358228 424078615 915857683 268087970 372313165 614151895 330511184 869798642 867201660 150578533 180422008 538201376 726154883 559073598 294355736 809682090 748107386 461591516 200887877 589607993 958218994 489485092 94442670 716772849 282438525 32746184 428796445 78730181 476651383 944251894 864311079 739990898 662847291 7410274 387728089 920750967 847986429 970645150 1048818252 346374559 280819075 237665706 912155730 791210915 416644795 990131942 295769485 174847646 1049920387 941993894 146481871 986666031 312981095 817655442 408788232 112212330 832229407 575675569 867784475 457197037 514642647 75430371 1021199165 1044490395 723608096 965065308 1020383279 280804648 472235213 970822238 843613690 606465864 755658963 835613734 489795061 596566215 475095638 329682274 701742976 826948667 484133318 949516446 863894479 51275246 466476101 972564075 533200084 956938004 308460136 619703403 667295021 365565842 958235307 613933362 801867937 875485522 183401316 440932287 466596557 934197211 487974692 263877059 446784246 294620826 271367778 731455942 157985105 119311928 307716733 751629060 154783391 798377603 703546221 486294687 1068932291 17872831 39794333 905630975 400448145 254103678 110143746 875648287 532721322 173098764 764563117 121386506 648885987 57614284 451654406 908424071 848616992 767212799 768537676 89380278 106610996 418653147 874980574 697253503 212352091 390580103 369179341 874630194 1009822218 322308257 908446569 121756741 349730510 80997601 660871213 466470605 573606538 143262210 512871420 107791746 86820637 708225193 13213287 334925723 865489003 34291460 769671375 834669446 629313609 730901832 782929511 217779779 556862816 229199714 880917715 397359087 610991987 1072801295 218432339 496053406 631772760 145927337 270045722 439974584 554369156 276838166 1037918040 233476218 441600864 146087836 501760257 432336053 600572320 735482516 403959475 45167720 668231993 644820690 477763074 440794422 623192398 513334155 325723099 380929752 166523579 123503708 543813640 614761557 555859066 361692059 869923563 567563335 1000389398 588808744 510211256 44437667 250842295 1040819010 246473073 959670928 179665695 78133116 7191232 553118557 675232558 958322194 628772965 173860379 777610496 765546514 39094791 1024037872 395056883 530447167 390847811 884623276 1032513446 578862698 1003618194 975255979 481336373 952609507 123135721 293501119 921926159 424808120 847260357 1056741053 256063619 185809928 347099864 479308186 132987160 497407904 828180740 636120693 693438734 796806421 933055281 850888959 472618283 1001268565 283101566 805016900 441816676 952110901 120265365 824784537 823735009 103195029 633793981 566225215 321547564 423494865 237199131 301337440 255621226 523870853 1002866975 518447035 391110166 25567136 729207085 889409708 101995059 665797611 634169558 448918523 8335050 893469767 853099082 294060224 450669545 56564050 555976619 459468710 1032841016 945406475 1036480526 339320714 37376088 1009569152 1043581370 848732404 427395928 277038184 247662255 645562124 813099663 370631246 981363145 115345224 822936693 398043127 952366395 536721743 233262230 839926709 802181008 594250608 456780187 477399756 32852023 118569911 85206654 544256465 7137456 226868694 334831813 212459057 1045510098 553758189 290595515 813452936 897783892 705766302 157160891 274927327 554553597 571949893 539755310 495846195 61663356 301543035 395311244 43288744 767254821 822538983 1053569397 151098298 809351822 1040831095 497689945 712275351 506223468 894553854 239655536 579738662 911821772 407679994 724879759 304147352 1022438866 790308481 748837564 374422238 608030599 517595932 541190830 178291240 852197414 760384620 628380152 100116970 1048894206 366478619 181516091 375727663 990629700 268126335 40938544 783959883 330983685 313887584 526073910 515671358 125635342 520607547 100661383 158545577 935254953 548415879 1020763857 166589849 834590688 254704282 253804794 641016134 326263722 666267082 849904379 752775735 537559029 18404120 540504593 527412307 730455979 509025748 770352315 550546875 848104247 924504465 13653587 862252729 52067578 217358844 821270679 58068319 874254515 987522923 1054030372 152421415 408414628 474426503 957389898 910582364 27805842 316241407 1058829661 705450998 881693606 792387438 790604292 232057273 239650501 456167544 88108246 156805572 53111614 821870553 1062364332 471412979 838102381 417433509 915782070 898113342 518367804 812081668 126037873 472010899 662074803 1052750596 256845135 749321293 584176407 711623182 674165237 961697572 800346718 986258322 824523022 808431098 424268017 1016599587 997321919 309605279 1069358473 730426305 923224291 664855051 72362102 612554698 475642905 497058844 854491588 954232276 137766624 761470703 544815473 856709336 148183004 326547991 916513056 797767981 535829813 112074503 69306274 627181412 933150867 697903139 848796057 1005929082 519566572 732216832 233574824 87354122 224174814 34738250 687721255 520330304 482983760 1060389403 1069167839 882435861 359237714 1007327658 207522209 350413711 90034389 1022113115 583674188 656929217 443784498 731314444 871960057 60681036 983581848 544127667 997121331 384396573 612474025 18421349 328840493 753335379 57581453 1067403887 779030397 417453653 157982612 601660340 273497270 616317573 934885501 533597192 223948013 133863650 755522269 319556388 278075669 260442522 27595214 477151243 602692197 357577080 309118990 156776107 756171270 594054330 819230219 420335641 843546753 341916488 912917454 1034514395 463706725 1001646081 141223899 499434047 881922417 597783523 1044988508 1034357280 1016756663 583902795 617585669 923259565 101460321 222657665 197773178 986778421 764103470 252810287 306751147 260072601 517138096 85823054 884480113 498339075 445868042 299383920 592572296 154715138 771281393 229105011 871906193 941824784 372495541 523080169 957154145 530825257 896245321 616884219 520369204 86673512 715063598 329986737 18463031 256781246 796898490 363264710 136880375 241531614 15516374 329236034 795163881 801948692 1038896691 1046150707 198729459 743002888 755109550 81837826 80868428 990098198 398688795 703644648 968002730 157970183 149412551 294184692 615128130 901796975 794048656 956204042 443471058 757104847 299411369 932372386 12933983 46783078 690473158 355006831 210375286 293007590 247443204 211242344 634970041 892882128 739168953 498485502 577863950 127127282 69458268 694763054 774726756 905915510 451100552 993252193 512915148 171309924 170262616 667222044 880723839 652739814 749786957 779989 191618537 1062581108 203411525 401599913 1006053209 51576974 1005878020 384709104 1003339094 347351174 540789148 191145063 250703456 842588970 571982666 867554636 1052655511 546706135 238039282 406785150 754493351 995179945 395061967 63368829 340627498 433742528 247758921 73789480 1064349373 198273851 519721452 717601342 734021087 50419375 1017481744 64671360 757736893 459034551 348060002 940139245 62260127 994614784 252074367 610539984 700276521 520128101 330953482 101594722 354851006 1013868967 951278741 870309604 868612223 282582005 992328713 708940435 305687492 647828020 330477256 995948401 698540454 314987253 760831003 211947637 412820383 731891042 502507810 1072451305 671144928 804543528 322622632 302735855 195060580 676763988 932322737 486789637 911375714 515377740 765396274 225947752 964188659 500234892 27705642 749393918 153301872 638560527 839564203 30703810 828493343 731758634 538294640 837887862 357595084 1016405759 401478376 197599816 217180776 999395284 321003047 69507411 135999228 15603762 694646244 817196286 176002796 608070441 399021053 517553752 679670614 328849500 61696732 8531741 35079915 147253531 659105329 918185962 879614354 622708247 706533391 897374349 673876648 885612970 555691130 1030765641 493119464 908891256 336870086 258532674 118483437 644217556 785537374 979540803 902357930 518363571 875576623 176251920 1017118191 426393406 578268851 338670711 553014490 1022215134 550473674 144638314 408873431 189949913 50695173 652648319 790009737 516642928 416779528 953515018 1011392679 906966139 800199782 123473218 162649580 963174236 405961852 772451083 635493065 693444733 862362627 820057275 243516246 679672693 1014631926 228693528 151712315 136682494 732208334 793984011 387877239 189252951 63379128 854595783 1038819809 397244653 634070956 1038950033 694122824 309727458 240405224 88666607 827099815 1054879325 75995273 106548971 444993701 86760105 692291910 611699877 560750654 951279508 937165782 916984042 842708148 901935046 906619119 475126210 719244669 645161786 972511001 919045317 470561517 290829327 22486505 365405488 862161679 41406667 616209839 821888838 297260045 19272303 986088246 876880647 97177983 535068675 882409668 700533371 397458243 219078507 88076405 28795042 309609958 664542895 375799127 96919346 145021205 607624185 368878688 118767899 289519802 632434250 496078676 984030797 604926886 737257992 625427319 674578962 127243628 1050792748 252648108 787859239 746939492 787406866 11036250 919431418 997398355 812263356 572021708 259639118 389722378 909140628 982166068 316073950 1062304402 297574161 435128758 188810304 32478086 1022978292 312125791 197496427 1008996949 230515359 280110209 659276441 635974301 492291746 782298203 226845942 788740161 651901853 681476045 707223575 984418738 614727801 258035379 1053456951 766624704 513638352 246955431 982916472 33293670 1012375043 288770908 420990817 559432874 305524181 577655471 152171056 278711348 630615132 157110654 757054457 747041849 943367705 147524507 723168077 117012180 272590482 304395795 245558168 41790508 221570647 871139854 285368957 957867413 255463108 494695051 416389835 784423208 356395073 357011159 784315129 169012198 386290422 942236616 218213505 446802679 218535443 9913209 1058563889 14694248 686807227 807705847 280222039 135455125 256671273 682992909 456900439 736729115 838138678 9552287 560230962 133930276 170634231 996153643 428333151 10588027 139455837 183160554 252558239 149606833 135908367 68399478 872820119 129560326 303451181 730410321 90222411 252845887 732455937 343335050 371323448 219100948 302600457 201248177 114835132 490866633 300640156 1059847408 757273625 189597920 6095026 964835629 786772324 128517341 727280564 747047841 912991510 113851243 890684423 1023031802 490662353 889173512 43418946 733694890 512667447 761931504 977149979 1012695682 628252393 260561942 160859789 1047233773 701714237 69556256 242065609 262079391 590217786 105767218 798475779 61245999 951826552 96264530 382965153 484856502 59570560 761780219 1048718850 649342718 202513020 121351457 151749702 423026500 514250554 58546698 771851047 457929153 431757026 191214850 658373287 1063631098 653834688 498612496 633057103 495605455 634813806 932470414 242867580 330193089 797856038 82006838 345735378 301551656 299955475 8646191 616133467 190728001 930604048 391304045 233175972 872635776 576442530 512981603 483696389 940896265 1039581658 823902938 276391220 448823090 393568676 467160711 117879446 584740227 1065378267 12250145 870741189 458785902 390634381 394303230 537426361 36198135 987147795 1029758446 74422520 503031955 361010243 921034745 735357598 154618760 371090838 574339853 132097357 555091338 63395961 208593988 178732908 344684753 451039259 1125081 152918302 437902804 955250501 340700069 304065888 731131985 234682716 19806613 944938515 776544798 972959555 821773364 865308063 940900564 113973963 639293519 1028644221 447059684 825279403 689258019 186429737 55865592 278503268 977185755 89340805 870330824 374857869 337833150 12704053 650829264 728523341 590208808 499217793 463885651 593360026 646240029 133063919 185400682 150545421 953886556 946568602 890869346 204862974 257975007 170760887 538576424 1037934652 45313279 585750165 167219909 1059729168 545795312 465755171 470995322 486357232 143478040 830782641 48407028 470063451 841834565 285834132 76265893 478219284 647417407 499727586 858229171 805421508 1017696248 789707248 632309948 339625200 225853199 104028201 639939419 704855859 880502890 895279148 327741514 438961247 747350092 603243421 802002329 230660925 163267620 995187023 58020913 1069046165 188238950 852265644 930689736 95870989 497947698 769257253 6777488 895742295 32637649 406883604 820357223 57358763 297825514 309823083 564782124 290819567 773133410 289616388 102923942 213452331 87513391 1019743858 416113979 576066019 537313542 949077863 497271833 110827931 16774516 251643141 271948566 454737793 467367842 31870169 61488982 842252910 155184661 954410127 1054349432 539677243 726661004 134457553 717581611 805827187 32265985 767566041 626344520 114760068 849722836 1033602747 338829553 390510257 412525947 601627400 52551703 970819720 629607591 535373816 807808028 914888707 628151604 995406435 574853341 264387926 513343907 319760621 297999642 853233094 589149040 358368920 605726073 192855714 246686846 261043763 1034093444 164295001 467502544 454081042 699220788 210460551 626761237 684314332 57663949 787099096 146216864 10079549 150697777 544025310 542239149 723552542 829101877 595546657 298685266 613474939 253531337 476051629 485494078 58114471 26273472 759175122 726126268 1002735205 1065340814 364965150 11876662 772560880 306221075 768898682 977432088 1060707502 847336971 117944153 819461758 103741168 93930036 216340049 279512054 71384986 988668391 522570768 319831254 429032475 832297235 319568034 836577158 1029907761 44546583 936377965 101415433 464981799 889959576 279196200 80979526 99646880 395558058 413651600 644394431 719511411 372577710 75173560 841790561 22514029 427025384 580826069 819447086 849676028 101482698 424303714 465454510 689786749 894098455 564951058 427733250 961509402 660273256 30249876 697781910 150186218 221308901 1008938902 169574578 559853165 1047514868 402970186 747733715 658654302 783482863 515274850 64842225 909944024 94376779 564677472 288855745 531966988 123282757 784786730 454713637 394048999 39747556 663324812 418708343 793806582 493455184 1067265697 536944752 62968736 253463845 347267093 26330850 919777263 199417694 347920090 617345335 147100232 1059728552 883316268 679935940 320538777 274815064 452983927 917078014 190846778 851588424 394741770 1020691335 39806259 165649781 1072638153 1051165803 525570406 610101241 567173431 369519605 71648335 539902967 523958304 102721040 399998104 53523553 928397369 716679278 1041250502 622952060 647108372 1014583169 436465987 836671021 324189975 101930771 247419583 104579876 304036242 292845957 899474877 680901285 709050949 219603634 52889761 71920702 810080503 246169310 436462265 103748308 399808927 143694925 649392159 220739937 854493827 546878854 972071824 416362412 160713040 1062145635 634682365 947652508 801676251 351036765 917547189 248030293 649472708 1023606715 894407433 74233266 821170563 653994568 63528908 679738617 478999451 973300332 254141837 319716049 850937199 113958656 697024045 428912859 136691238 44102692 446702838 868800715 801539017 33607298 864269006 1035955157 928737621 74690680 629792714 360515211 406280698 511696847 934124257 213022617 335617241 1043038190 870446895 1057386990 26834868 117756045 985426632 1064446691 22097623 1060309540 402446434 393666795 383187908 321214301 616013749 829834727 151452624 376144770 56406971 846673785 111006621 800676358 516961372 780417630 1019498680 358758178 6599039 572977586 661536073 292631948 644841313 460060184 398334323 272819343 1071127724 965792395 415423443 167631697 916690671 329264689 969995260 607720868 604360537 921367372 693844846 687882821 991851705 64721969 261602386 853349926 848447089 656238349 732765955 396155446 1073561063 699080477 635993524 345653954 1010842029 843653155 392161818 371603518 316218898 588636931 75542448 989363112 194522522 507190194 662331184 496132803 454919247 692372605 943752112 735532146 373047187 394820172 201710736 788529959 1072329844 870954676 553033934 317588059 866757241 371864519 726560494 996977460 1016894097 534427188 959457506 541431939 796369376 1038324527 601829385 17232926 1029382163 634109333 95487168 563728172 849440714 501704687 818138413 414212975 652826427 860086659 27297052 939134316 954683333 624513139 444220495 434131765 1069547928 863928955 330070257 154590914 816380979 584171414 431052947 746496889 567299175 427085586 967689055 929435039 314058902 113016815 90270337 330413792 908521364 582832608 482422878 997559107 367448732 459619611 714490926 398139746 589684342 25078095 685821047 355476702 1038682934 575666724 665370577 804767464 1045303537 162680666 542752968 613359170 317579319 903571775 152859896 216096213 681900103 803690559 644512456 251783399 675001657 210969888 455896017 863462379 969579743 537793317 302274456 390709128 585953727 11050899 1056183400 583640689 231677354 723420315 562907877 210005633 45209995 255892134 372963162 638970958 697016455 620376581 951403309 293754633 697712622 1063370683 236460199 414091256 677821097 775147170 904087591 426327376 422625639 992673666 218532606 966431436 389310408 273161508 599298893 510713284 903054998 293678681 890446570 710850133 153156792 569786119 728164378 218248244 200924124 107718646 658819121 454670062 500945156 693985230 229361449 852097253 661078848 628560753 11495851 481911463 702866049 815371552 133347238 255539515 838265439 321807479 592544967 233697021 345521404 238078980 580785768 897574136 165576670 420431561 53515507 902535014 91850389 361023312 1055216295 379743130 453845772 308390689 560195955 688191203 924534789 265465475 1061023908 814393434 36152250 986507601 997771976 569720255 415021344 217892808 1066039603 771274021 513519155 203219407 959985627 580863472 954899845 112711651 280585865 187373455 736340242 752043092 729667796 774211494 431440324 348295954 292970048 789207650 639193129 877351001 153660440 253791416 288300375 882819203 416531128 1016846490 416475346 625703660 890296582 147968155 107427276 820690084 339163778 287505560 525313840 484825564 333565321 83691090 30121219 262259468 5065799 419506856 805528545 335982196 404644874 939853098 229169418 219459236 145726599 351128552 919847637 484689439 197997961 779190442 301188406 775357697 765306599 438788092 378610377 77224973 430184454 962050366 799020138 109866814 283715806 855773214 750222197 122922407 1052024070 708134146 47930776 191568335 569267134 511901752 311047491 870569326 898137597 154244238 276378013 286255109 235711143 672479529 9544003 1052871371 262101843 764754852 830190218 537207392 962956488 674322303 289535456 813772831 404101292 796735348 531204261 30447171 769744945 311563516 328936106 520682857 293775303 76557094 650036056 147414875 538047323 518064199 1061645610 234936343 917786802 943298680 169477308 60911711 550465800 934460958 396580983 253149273 43287693 167911596 224959569 980955782 382083225 165263437 837297353 565469643 486914511 838016170 854021389 131000599 968628349 160575422 133156273 566999928 865441134 974334477 228550909 409971377 294104536 104549804 985117348 195082396 201927355 202533377 1000391739 339629146 837299183 465024525 634918988 996026208 963304698 579254755 229442744 361450286 309262843 25535841 288607050 530102010 384003098 515785102 267986683 611081357 347833374 590743140 317993564 248009901 486791913 32454167 117831776 148176377 478173724 1023228069 893183406 436327697 302882085 1004820960 50297969 131131735 481510780 955297601 427689184 504127951 467356097 19834836 114447802 143864039 332596666 26777438 112530734 931746756 51979852 146748159 100723919 170910622 8411085 886505775 77595225 635430513 1059987067 424756651 530731773 64940322 506263251 15740083 89676546 346693721 52167739 783212621 254538938 556978707 70638225 635224552 70685027 65612603 760016822 164673870 981178024 1039744261 269467400 225077223 104354 773957037 932166393 447913274 729665582 893203192 1034324364 936019203 312491909 767707466 236382785 239923836 421202728 626495960 328251507 819580534 243536239 608893083 55075867 880751331 104645746 230767786 821198346 788984129 769480707 592394435 915268939 353798631 382069565 147756548 282399454 510445058 197127450 764748654 89757243 1043458225 932429579 183730185 569348242 598702398 349727633 207190214 95230490 501353701 1065338801 330294143 854552419 724313193 236387366 1035810794 987914042 539127571 911232162 300112553 1018979943 123380153 96157230 598595471 507808066 917250500 804406122 667802235 490101403 449373157 701741816 1003277335 274433051 73187833 100619960 39589695 435226124 524854146 823602553 652986277 397755586 717473987 262964191 626703967 306191431 711647803 934390791 519392733 458586086 916642751 409678840 53637509 830512003 921678777 815585019 689645578 798960310 526088258 28025726 1032510039 492525980 888411985 1037155090 520137673 159481839 393453105 167777197 895804154 42013072 784461753 194436118 1038638865 1020351654 650866384 64924835 1001456668 268914181 294043215 326923169 1050294725 673141512 151661935 129384582 1024741330 273946283 675198833 164183668 959873104 17142416 627357048 719634164 388939589 519375772 976076989 677916166 72718560 1045842983 819266617 458181225 801518705 201346002 474625204 457268525 536112511 627849914 789925576 622320418 444858158 804017716 985721621 598050831 55503718 613394992 806741019 938019827 599317350 323529829 402477850 806439323 540955953 64732492 443307572 354789030 799933415 902174001 413540705 397951639 652027484 545467332 982210453 57994302 545339011 703190191 346423730 758260033 219534431 596959220 766020997 429819623 759098958 696152367 880788346 788199600 647087863 407535166 422811659 923046399 77365367 710269617 455750567 933617543 669755553 884200907 26814340 280262466 263500006 182882857 330878797 983697788 712886322 502041238 740750907 646290587 40415142 587874565 1042587642 166265140 231620416 1013422883 974871226 210992913 1023411323 1049294903 179873713 565787036 61106549 331912181 690638610 987952128 1010115254 1010456106 584723448 863369672 832828274 12283480 343172211 589937322 804402273 402098556 662049093 135154724 247398595 846467987 109848583 494683468 45354005 858588220 261078622 761954330 817321010 540158140 611154307 367983636 915139679 980771842 226683989 35215453 807716336 775763210 884038681 753813249 551682516 309983019 2414522 271998462 496825902 552132565 1039866600 650006526 439982834 951776041 761409799 176676543 458602480 5985852 553287097 203327973 1001442827 1017714956 893061231 596088008 1018273711 332926149 628423374 655209553 126279679 453519464 1060504717 142623607 206169479 684037314 916021534 242222286 56472287 225675302 564898818 381684003 153222654 822872936 206012943 658758689 911507091 303044726 55248820 713433530 267369224 894071155 733519453 785355247 748434301 120135871 869845559 286926837 941071112 603322933 982074701 871360863 84887153 295605700 679642672 846943203 541715658 647206195 341949318 736398632 408629246 398847797 680600845 821063543 206480477 539392482 226515850 615928496 543149722 957690604 164831648 35105134 341147159 567140428 420814429 653161884 948984792 688937515 591413580 724155586 853799362 1062649355 264711250 462523714 149817979 687039432 667940114 757565912 803631487 119648111 458805378 699192735 927751281 593899585 705096239 34396146 480111444 856290761 406402824 283083681 675604515 755609901 469100401 461039404 428663783 359173405 716779656 630841436 484970747 590641977 697016937 281310119 757714490 606529723 610390158 665549462 194610022 139257941 129153207 822347435 47191289 1064562607 720758839 118674048 752510216 463447795 791871172 1034873773 374744923 590391754 847596515 536167013 428042205 870769125 435760231 841590467 201778044 392323722 694574213 616593121 366441052 365750141 702077552 210183230 493513578 868251178 984342070 1018703501 1036978373 368851678 1048154855 503187855 1008002572 1024410583 806970351 462485164 415602981 921770678 42334279 796551658 165904004 921879306 679042799 752341577 312299809 661129368 378716252 762606260 822954740 1017166990 401695660 824577493 439589997 881730963 595622477 400250383 831747032 451653651 900433290 177187840 450528952 1020971654 442080448 207896317 232818396 733840887 491125193 865978230 445435139 599185567 686256288 158210514 118691178 916226925 989618498 87814772 914173313 380952743 606917851 909592488 294684641 319532781 722554001 472971154 605704830 890118142 596541554 166637312 1015612008 670894475 145191932 505194172 1050741930 528643056 908440576 766472961 59720521 1037035939 56352764 471780226 649678123 812074083 777788627 678268302 372015225 317568943 972099418 597378071 526263434 556666913 376245066 425496194 875663108 1051694071 1015086285 947607576 16515991 301296508 709948615 1006131956 254653623 985385919 758521932 756296692 475791900 771099191 752568908 239142081 258743607 530241683 213081740 730751549 78245901 349208496 681970045 528155331 8721384 726320889 319243547 431683678 650697012 804967007 940919211 725885998 698054507 807949671 329406396 572108860 713584908 813082661 1668053 754374057 391081138 498050782 237983919 624135293 330636259 874684648 300567733 699502031 374619427 192420789 98830988 1032687321 912974662 852969396 469797270 309822370 213872478 21428044 231124629 426281011 1033366562 858916725 437766508 1031539144 735175889 433412211 156430308 357108650 885376758 405724771 601518700 181007287 738084514 542962760 121366655 36946400 1011339375 1072558808 351922235 448308242 620811381 376170329 244734694 461722508 288594737 381217692 1006771188 672678425 816473460 49471524 585786187 481950457 308619614 85667245 802577713 1036465561 648052228 559352869 531480108 940758961 899788839 56084591 196947450 438548863 833871889 629194902 872307294 564954170 519667929 744546880 181554843 230119868 227211361 109363648 435104118 633252040 693888977 733715771 705430591 165419722 153441239 123895581 995850392 176425461 490288518 874518397 724371995 53861083 374605973 831244936 797754930 714714614 88935663 268271132 897703140 774713618 508151486 144050606 612626180 206708809 229600868 185575281 66166732 38528020 684810248 319246707 75380455 209604095 238277930 702908634 563293914 958938691 1070953741 326576894 642452339 906496810 821046483 758591132 942127200 188190861 544576537 816365884 996456396 984041955 63836030 138112076 675755815 207226367 539674334 191184421 253111402 699041791 812392149 646732461 960528187 463362236 316266976 139678190 368693215 716212994 19272053 208465227 339985888 437066121 651916638 399619571 745336709 1031496970 173301441 971833047 873873854 996867030 503564875 917712289 543396548 343012737 1030387363 535476154 977276140 518335091 472478668 414856858 978356916 199060553 12006274 537633662 615351844 783872254 39518192 600127309 674559366 670942129 444169334 149186137 165915649 991600510 463644005 349384457 957533403 611259693 907601817 80070997 569888281 361754204 998695506 983541293 1030557039 748743636 23524086 814721279 944808572 150602672 702851488 341885345 916584570 39294979 291701070 648036813 786425909 32772402 531364615 645835553 888126702 499866477 479614168 68686240 1019748743 328306598 183390678 914695492 1015594087 451344762 811396110 142054896 1048796479 438362157 963915819 734499241 1063298736 779478729 1059051717 450761820 1044501835 861992728 291850299 784243550 70899420 996389326 270232547 911490218 204303990 46494567 908130531 1054328908 254794055 134065817 999938726 341926780 377949159 243816479 691241181 820811321 572672694 928226914 382104169 93691683 716220644 669429574 473492524 924989726 664552964 184223615 345131561 554721972 895816572 26339900 1029900269 823320763 742191293 537640475 355198229 1024823842 849819689 342597569 201853841 682692322 776305246 137590090 994712 951381505 986156474 80606179 92684475 392923449 543361143 34165548 69776760 578704652 996870538 231677277 447288679 699941609 672892035 198715842 1042749321 631112708 984196392 332382771 160858766 738253462 31434789 935688777 659917931 958070086 640162561 183412698 759035825 498414059 57306084 156836299 585318456 573753002 941602103 22629082 949463199 558539760 457633046 37460717 544029958 391746341 71863967 233833050 122053685 982239164 563469389 156817387 658380789 482981126 804906518 678852156 660821520 401407976 127498831 956241821 447381107 411639608 802735864 58294135 565322073 949451157 719653718 656709355 430669713 762271823 272471935 945473165 981110885 880383436 395962186 711186414 991318729 611168544 513209104 358094645 406224382 721921040 388713157 1067418661 523368016 661514805 795098122 79178871 16047848 623489927 22409716 282926045 997259441 623830171 685534861 406160689 500072506 928510575 640254608 653192670 167751412 832303477 909049091 32336948 980374992 616920168 595996768 556373149 474032738 490042995 317201189 553555763 90497740 504165188 46293557 788765967 113348434 317170467 559957934 104396782 57833833 7551117 412706854 646759910 853136185 120102777 1048754915 273105621 654909884 943225434 628006933 41877638 19990360 205148069 770708667 906098334 11669288 358295802 119432093 1064928234 927324703 332560673 267164225 206966118 161264762 255759828 177829409 233791804 734187048 439832925 653391847 835570473 701023275 89035646 80156531 55279183 1052385059 316803266 695737469 128238652 769002813 847605023 803575991 853096647 806232232 358520684 1030161010 333464298 4872043 478115355 765510857 447265925 1000968149 84483111 560990149 1040557705 857962612 652957773 933173688 1026548894 298416132 511761807 725134624 435649286 173495289 762690903 486324756 845266403 575381044 767305547 742054113 771102554 637742556 1543225 505312174 75769818 775527935 124891255 909633906 205839547 294655689 18016201 132021492 926593741 259487180 965955239 811532500 564057003 294270557 706927493 314157009 368419602 320933958 566048568 232220151 304138690 611662430 618867884 663532069 376699527 661219817 626696584 598978945 589836985 572245818 692423311 735278007 482773796 484115629 352053376 329175612 196746621 214843458 534157042 343298590 571325120 350399289 322409566 615303629 36534127 43582269 964127881 431979093 854089197 472234825 855404377 238328979 741361440 777839775 273504649 117229987 282666766 945107552 809031840 22866969 143452582 384378473 1039910815 570206928 272177330 499375324 334208466 1034441595 26119535 535156939 43225750 232369065 514594660 598225106 798996523 297757836 1008174232 648535766 6357899 783275623 333410721 900247661 552382223 621602344 235889036 924096502 887487805 321714725 351353001 376142462 423167791 16612863 959581045 132712119 720522394 297398778 267620709 795494166 444729159 790860839 217968193 720321015 724661302 94557966 198011099 498377143 712472213 672367637 272404116 236267940 660893067 485636685 815686052 9298365 383987031 411992955 880563976 924010482 480265226 580526725 9574431 272850330 853911072 1048048655 349745279 415223699 1056950707 350071848 853276025 136678003 732899992 904082538 712581065 1000365347 164551257 465619941 532080913 796552242 1072007621 1032834124 798838689 252037173 335134129 501267259 126180247 918242571 482670894 155755553 722720690 29000593 1027607305 512953068 709945120 1065873058 469349755 532349876 1005377984 69460093 111410483 458780461 520053876 1007081995 277822854 82045803 1005916235 724381352 150747466 115635295 604829634 801873404 982247069 995721539 951896218 637919203 526564282 177813338 735466678 509872416 616478707 650080039 618211222 308026075 263436885 571953835 711517216 858693640 483776945 737456747 936564345 50126756 1038574498 1069493796 49465093 95166161 547872104 485586893 686186444 841499308 549404894 884297163 682872968 1067203904 520129233 344287584 917985850 398602628 843745944 168448620 691313501 1023782303 855836629 851931513 290806668 148219462 674806074 511891808 141333716 719162826 600969149 691224865 550121058 911851402 333490166 979750470 215832526 562064929 1053370705 247978643 824495620 962252310 713426270 874561770 109380079 808154217 793503460 113654488 252231714 693667767 823435570 478492732 597198186 452670555 768728343 353558581 236275078 482860628 664058370 245847641 500613680 388689924 676996536 655269587 197618770 560060883 1037403312 645892390 90590987 272196193 709322610 15278673 690427702 648029107 1004101501 753479461 112413272 599831132 243393129 741390190 523921059 102482590 922140149 552285660 561865127 910727957 345280530 609353541 776576190 420819650 506215623 499728232 794931175 640247754 754859829 771125573 169671104 403681574 961805296 598353848 894165527 934076971 737922712 24064161 193125972 541058315 959481594 99127260 465587093 980927354 414041137 182840091 334876510 995852213 113815827 137544294 722087761 660939 191114109 103451691 151460658 180303080 1064462522 212418863 992978914 395670501 972789933 209274669 584631255 671886710 763307201 515918037 1073454941 119075490 744857041 875226676 1031006451 242084420 756425688 683726625 566402265 422760266 983574907 459175957 305024210 94867677 815186643 497286100 572321952 824555353 184994702 708518353 481393700 203127175 1023791444 409414215 377815226 1049248992 343646333 554817506 105092945 680820425 659488347 839394279 146766244 309394108 600043003 499124266 103351916 649530834 783032626 902964282 1043408526 1000627907 132530287 414074466 611925686 550151459 948387972 466507416 781401822 982338525 962630979 512554294 632573532 156580168 609538806 677015793 831081635 989196032 100887287 859134795 1059742850 841673875 805876670 834351343 450530402 695324800 411589828 931559064 992767424 113889613 581460082 581911686 370326055 344418731 203659040 984994999 213761476 300491947 176155516 1066562192 227203698 407212129 722280748 483113935 257756262 341410745 512766545 381459078 943999171 386851449 67396937 262959470 1041389254 641213699 312495039 535365319 290833098 462304786 117859928 244492081 793171265 268042978 534482670 301513141 212145922 801057199 924396034 803521120 644580950 159181691 262702092 442727340 954996608 775419537 683584630 897251638 612801810 155017785 511551792 262898566 512102585 692444156 674351988 751999436 606806403 836331020 338474246 620216263 797718015 712243011 340629565 202124458 220561213 1059996899 1026024208 376901486 117240162 938867618 44306046 532809086 631598359 13563750 475495329 840852619 878238165 61098909 982488436 892708487 89155324 91355052 596394241 794144213 439222784 868655135 281354261 452053578 940103726 79482126 581730223 684867881 929060222 531834225 608606238 434946843 330017331 707406674 168862217 869438810 425376547 481829226 484593328 269038194 51307413 365747058 719886397 565400562 226219913 703685580 919170524 691292584 936968796 663243948 1014134 493131452 943514332 498902638 606275080 164724490 934709764 810627878 892607362 706978830 726644554 931173043 999482895 615142385 536912008 927387521 184975337 571552951 829442334 221123671 225660101 709950525 762601294 692145349 420848762 757195657 917052830 564066173 906606508 829803689 58548963 878234750 1070867254 722957791 380521511 692594665 811503245 137848738 142292454 69419418 491109200 394863574 455181198 401635231 862845285 228227 312641110 226772369 559753483 353686920 351715397 792371306 1005443339 560244354 939833674 1035407236 318782885 451313118 591306737 1004949848 541993516 1031112165 648885273 492678828 136278839 593672394 173541600 583288924 13409218 699849791 431608130 804380336 893788612 928517670 650447121 1055013562 917370561 707726493 289521262 255629808 603133111 472157619 383303613 631688895 978522617 918557464 277857581 654705370 573381205 868613377 548277373 622119053 1028023965 995387860 544389310 698736002 263216873 628106584 1025199862 54458764 1017295939 47213459 557012127 281702284 491288777 142623218 333139940 224467635 305595785 1000563905 1060150244 1045171280 289117856 145420268 654678893 123958834 153089229 104003932 214952599 1029132867 780754062 32207756 653970245 46433925 287254894 908184591 712092552 559705692 333263801 156200801 241108754 534759987 255115159 57456879 491271863 437498952 840992128 598387853 977120101 723717908 742930798 304461491 794529668 398390716 872377497 76801657 100600136 255343851 515915149 875681886 1067011432 411760297 792124359 162107116 267407383 636516165 398014613 580265941 675280809 925149795 1062539356 971545400 244515296 89533379 1067910020 404803200 264869330 982772630 725407048 43537860 272081015 348198398 593000067 347663206 92730456 678379512 172312070 694721760 820410665 298879354 395681635 1055309460 679365787 665172782 1057988458 131275158 748067462 920436647 692979735 128749710 319672652 311111486 266609452 954388469 461379422 503186523 756826454 523631786 340615264 330526033 868433376 728660812 916726537 347057301 1003558238 28975807 286633873 734749407 717958021 697857829 193725929 561089859 964047139 956039924 920220452 396432129 985452293 918675914 919280567 877736786 222907515 202490638 264017291 280277100 576633185 96022992 433814295 402442398 855532400 438408212 682950252 760816255 84525958 162003761 1033714392 511126295 499449179 14964171 742569032 527285219 912753155 463475071 666933287 868903654 308657185 495304629 547288293 965663934 605250674 286329506 1045063240 55600802 486509109 121060160 1064173110 523447941 33890013 349669191 605525481 154705905 512667404 762706370 863459772 579407311 126392174 483655093 203665064 423491443 478916207 303264345 858068295 964449007 774836734 957221413 200140010 740045561 895304071 187327087 55185052 470837497 179256207 170120774 659710392 672329411 533244046 194617267 1011052466 149416140 418470405 709988406 812128404 508180623 878592749 466507725 916439833 196618876 573135622 686284566 992931801 298261992 295646963 696967360 738959910 463966845 770253675 542198647 576874948 2068300 646197026 829941138 904815424 328795844 1001531315 302932001 192640346 789095388 475852701 524450828 346855346 443968043 925904604 481765039 474871225 830493581 904447806 75836954 591986331 999457272 253383558 405332739 876030188 98317846 506325181 1036435629 581803833 1047342935 338912567 666176978 814422799 61980324 128490218 472783519 779100760 259117731 270617591 710470252 608812884 59433405 176513172 639594794 852357815 133171496 208161054 3289663 763133015 779629081 561947321 347469912 567139111 1070184563 951445223 724793055 886704826 406107204 51874426 658780696 9323871 589804054 815529398 1024831717 1073048363 80868757 802674290 373977748 93153665 530262361 610423382 193922582 385247251 178571616 353092241 40667807 658418827 359016405 148505963 501102425 169250331 508315612 783492509 412839860 292243808 1021722944 46286843 403883930 882141700 906876415 615484995 111863142 383859495 1017383560 24217947 345335123 239395872 770859006 467086147 524803618 745837761 829331565 411877845 936745153 942583390 575628073 208704819 122357337 261993223 713604319 752265537 257383642 196897666 804764023 195180484 17970299 576722479 240931206 575703526 758367700 814858367 794022468 257127619 715783395 916198200 591940761 970504599 88326402 1060938112 603179936 220762192 9089736 976242025 462432629 433321037 227343840 645597879 296654005 398519927 402727074 190750494 32303374 214428115 22045558 457760512 992054725 1035562483 952893758 927075707 572429603 76901111 301611054 507544163 981203869 801262885 519631079 89501085 376954317 997140324 733056027 604894664 719188638 603229387 393247321 185812358 338316390 880117337 691827818 703716067 609932453 116889318 1051886023 631590690 459624655 320025086 393832610 227474797 312819486 277017654 1032615689 667188196 71485357 953976525 337586585 558151827 288091257 450737518 43169678 842750526 524217921 691769520 850650402 660859638 249072730 29568757 775176744 160493748 1034457924 773603440 306502325 832510420 762480171 101829588 726178155 5987326 923173105 227900246 1053625810 539776699 1041144766 654178352 921823573 861342370 467133854 428242149 82618157 311658060 375121359 558278930 1025027580 185604986 818313535 632974856 84732508 110520524 652411277 593410950 111891527 630119230 248631276 433727575 335983223 980008434 357444850 603616102 386624636 13720310 410310985 483686492 316694084 556885498 1040634641 182911415 737040837 422238551 252908403 114452551 827411922 324110132 186395273 1043827376 352988874 197630123 1011026243 921178464 992746693 873691948 181771282 206385 281462072 489580364 640709768 772843071 852379659 576813144 430474258 721958796 1000215435 368097013 576534412 83634331 624635190 669461826 339711280 776385493 798893218 821465920 86369687 612775456 212868907 600180714 388104411 284213928 679690506 177939173 496613688 736599922 48953505 437650527 497706456 960514699 1017869960 461381971 342595405 406941338 592687159 679120845 1007002314 90344047 646802737 901496907 730671972 47001634 103982898 432036796 723179069 240661632 773691104 576253865 836067125 429212952 584454134 116066937 169089931 357774408 1025535372 1025173181 1023369629 520357837 118691170 417719850 544509610 485279442 869697442 17583976 970652615 683249038 473759839 639372904 1042540107 103914215 445051056 1034642602 81155804 869521670 987989225 636339962 4996777 520872425 1070989537 407952004 358295061 593192363 609773545 277631709 455463308 566740689 859633338 56778398 241646239 519882843 300531809 581835885 383218969 291454354 92775106 215193923 1004011213 66605420 19031372 477938127 331352838 887520105 830853431 699409898 942893589 195696510 69868861 335689879 731486204 661462662 711086783 750146068 784213200 531426357 552780824 481656121 858241380 803763430 495982686 493058246 471856490 370430903 418527967 633167707 500187665 877425869 208574326 349441162 914171873 932636552 1009371176 833921730 979509035 23039243 287344360 425372872 841986791 68961297 869542041 840017001 271019509 283251058 627709139 271643718 517333468 253269860 491938410 176078582 843407087 853290667 93184464 226745030 28649732 966023999 818481976 877379693 66707607 787082133 251269801 765051671 885927785 264309454 347067986 238402628 769733727 159490864 899458466 708861558 482372165 350548291 223471528 583424278 391641569 359556962 1049319826 1048954181 556980565 318126541 632374612 595187949 333294215 283967180 22437639 224325385 544711129 589227446 704174290 795704421 905566023 180243960 1041551884 754234380 374148356 355249831 833885893 823350738 722362302 5709116 65039785 197718600 1035018405 443239370 322148213 413992893 1011113796 56274067 195841338 373154618 45063378 1008442235 486530757 655105402 555655529 675858460 793674402 78180529 472396497 196710021 832407103 88238602 912311300 977110919 576535983 185311134 665485688 490927336 287331600 274195062 676507783 407460588 839139469 77154815 597307329 469950257 178098054 475035032 230778551 341624779 923372315 78998595 520931521 1011763461 592942905 221592251 113728448 131793971 536191297 519706707 227246300 334528818 84160237 1015991485 154891949 597154845 554766645 169174763 661639560 300088627 654749954 1000296319 752128280 66420820 335166597 293774255 655644441 144375909 544951470 857824754 483410504 985336135 576876061 376665393 854217081 944731001 749645414 548427087 155004134 1071194082 206230227 1005852067 437088836 642646378 537197160 52211191 678620855 59879294 464927180 464364522 919450664 618173871 693211328 533500757 190484257 378747965 1036503298 32584115 860168997 826752251 235767978 804184616 186060123 377338822 7951500 231306932 187085339 62317784 10224408 827552894 892555718 1006486372 436078181 625077635 1012191659 202264893 280064638 10601939 435758047 356319067 928902113 99310930 392887401 943886515 570669429 529136902 972498251 841221539 602620397 876994013 609997438 818528839 810148238 327050041 576936502 883712062 245408264 333677614 829392548 323265969 613973801 434896724 749545547 318547491 968178042 902852001 427517020 275098368 293630617 953340357 632417971 963240020 3722039 49389794 274292510 154157030 464223196 880349358 223671666 1062745477 835876697 249896994 116612232 670238687 490829602 862018067 962686269 711162881 762337996 967009941 257269794 943530471 605209516 690536204 158930411 774556778 142197769 1069115083 816662269 552308026 484855944 220144602 696754953 695118286 119967872 98622717 257371816 600189218 1069944112 200731495 346060461 495505831 103941374 71254028 562976590 902523112 1018029657 679859986 559036862 140513388 616605703 23443152 1041426496 273890425 14190785 347016895 270746882 786189787 1010084140 1017296930 68114374 651791245 354266623 882045267 160574294 23235660 3670826 1069008452 140026644 176500081 209306027 44663673 340700400 326050981 794781679 913595103 89331175 182333446 344762240 898264537 505539915 748628493 467164771 225181250 1073354028 296787127 815933960 850973217 216705246 10479789 674125088 365022026 1019602067 985885076 174540575 351059653 574696177 694040790 131872610 634206643 1014727329 699486347 562128636 96694988 598450886 172896909 251442659 757665307 300361782 762976011 452857020 70321242 292439985 53725190 1027496015 422105572 908538254 892055883 312175746 97388782 23606121 244787358 394918980 694211671 610284949 454675645 824278099 884811926 679832363 477069482 212271756 1028888319 953386613 54032595 13246787 824587458 724004875 836331651 809797030 981670282 50269110 1005306504 28779461 139340385 145606645 128809804 458448398 175335722 1054329426 767502233 357840412 618269594 538102237 879407878 531582492 360188477 418219580 54762962 361208756 934966271 780760437 245841174 1021829164 785688780 209948019 978531245 349588479 896269170 704407772 743652428 857363508 389186913 263580123 309777605 500931228 779644764 492930443 961119899 389406623 781792190 1027938536 486625490 722655261 47214493 170654546 198076907 987041738 6522827 709209845 730178373 884809163 366316400 304229309 436249493 361379011 229083894 28221474 962556222 943135332 174017389 271804513 133982639 791225092 832002212 887595806 202356195 498094197 164498909 486959716 887000377 214469020 1046089791 344483294 189446178 311803784 237736622 745462611 63369538 157891026 839282025 1065721926 74224158 179125348 89222680 320870502 473769088 446861074 529088186 1045605546 6493498 42005434 67695702 560674097 932554686 78258021 1070284080 195520347 1020801926 666518689 1064988354 571700749 643530818 525723456 499933544 903785614 326201013 310825610 750846245 965515847 631606636 766869032 847584508 252062149 400788691 545728413 623629462 452883562 624493858 619284857 648321176 314691484 991639164 91393305 724948421 246591393 102603954 308657694 241619495 337327852 554988098 178289295 43733416 315375217 888981161 703224680 804319462 772669802 631140734 598272865 59360600 364498406 766339912 245994394 786492989 1060590675 880748322 700672343 907551070 247975048 313169810 830892280 236597945 879318750 86066495 812904746 774377731 977222231 550967383 903592886 1020007357 1015634619 905422442 182206426 329338944 59620125 669969147 265075921 618007247 589668230 996290334 142810339 198220931 161345285 786261692 998801343 682061902 671400929 420777249 128250421 184755229 809699581 216214543 164687911 582947662 809415970 335813911 600807648 881949262 1046626179 410860979 573067659 244621000 80556587 929023386 39956896 317107933 286644182 237279553 329903177 873628948 426012689 855879978 313328546 329030721 147825143 386082782 1043650210 803062080 132456793 485300871 110169465 451237419 1070268862 347736797 136791496 290576861 993304032 907734060 530459187 140687531 977593534 77694995 773096765 185197987 365860708 874634640 682687271 49694112 380563753 395329501 233426465 1016447365 352541470 82482976 733976081 993546706 411471343 234894848 145386247 628410810 657111100 314899311 178542177 1007898558 241617477 872152936 978906937 779503847 116205721 8551749 783445437 896998024 696158168 832779853 261342483 368554234 509895338 512812037 853778975 133393786 196871194 331579516 357378606 834630097 158411987 863912062 726883241 219784500 795375796 133044850 360007033 111952167 1049053986 874117133 34343014 540340933 791853773 524134093 606463289 466220513 114629523 398980237 965312235 64329379 107669725 214016880 153947 344873720 23354516 431544919 127657160 503120684 1062734449 698226821 930921001 1014885671 144112870 839273649 41816754 530238603 905081604 669433798 323399318 521122913 46177550 445066517 36309217 282941610 697263642 652349551 347870737 545862256 669504908 127393025 917401032 773647249 235228154 725566044 23814515 1043201842 237798152 731382701 447611030 173453609 732379632 445673343 324338531 146062767 219789574 810640357 608489169 994366182 93499353 357518578 342002690 425514967 30422745 1034127587 333671436 286436936 434339873 842409419 312939037 233182338 452879087 112096053 949825144 1058694687 833299365 298739132 1049488934 268100478 687803231 387574861 902395761 253383618 989772300 327095558 885684464 1045071995 942617185 541956815 285745499 339372940 528759797 394935853 487667938 635900690 839926991 666561132 254189896 795692676 19979295 382895821 292976720 48570385 253378245 772813787 621918624 1065362780 95970249 741909078 565916419 899975692 981056105 1060100287 797770992 85374701 91726708 101641270 238878256 858649150 561235385 1023426817 16666715 747892559 617963429 864922943 187569195 63985144 911225342 956027195 755638986 1039268610 1020515796 435811058 457715323 970164602 350452712 688850100 205352511 957423375 110649800 670915630 517936912 836381228 418616062 1004205219 823080660 133933 744255445 687760583 830196152 516902541 47933184 419781610 86654843 444962320 648125340 589312184 365732640 1031448128 245677042 808396690 818996746 641673664 250419019 999053605 270335830 94782316 651573564 80837976 518679558 843004887 1069565639 892808868 1054469710 1064497374 1050598881 857821211 986882106 954484382 552852972 292520827 870180302 754960180 160153450 932138258 685809866 924368465 723556983 190545859 226338597 724960197 83424166 24483998 1006342552 425814171 372929752 124254387 23095499 456054024 416958530 388686144 1049972282 481240985 513125518 288832695 530677861 537506948 638375704 202580175 350358327 38224173 819565472 1035403076 413443472 263706590 246050449 665739391 821562938 183277143 365854875 986602602 386138476 375990284 955166609 796007059 218091460 119059 940798833 665200116 243787525 40482064 126900320 719846543 747720406 987211643 498863587 343256733 1071408211 652990630 56991611 311052035 175996728 718639356 1046499131 943649253 136849883 521615070 1024762956 268079226 860449141 923599762 772801764 725288570 916509526 954034651 271121338 528593004 450961363 295331407 75415185 396957770 356993240 97415850 1051274313 60749728 735787134 249986409 377590784 675608850 350696634 238077095 448350576 704885237 143118819 898787356 876329517 980125701 401676532 88381339 374237072 399517288 328509182 954118358 929424647 495748605 660312834 244487746 961898398 704649867 711610485 723512377 1005196260 530452009 55267922 781718678 52181916 285439110 413941941 586981437 1048477238 11614404 813960389 638494431 664514521 614381091 51306494 712687564 577255473 896051539 236005026 99368023 410676164 75975869 10177651 284072741 599098654 859314363 409910897 477953644 951477912 133102364 910914848 957874330 916778268 526316436 216226770 34602705 614132093 981258112 830566214 588062043 918199166 207769119 52589377 823473092 962368610 246924973 212752626 16841552 389340449 227003856 763837052 922366951 914985833 527975371 574838018 708502074 1069133493 1009213126 807070200 740026160 501459439 200738777 613720386 430428140 971941229 698454429 411812503 974614486 934375995 405726534 460653461 1004424891 374463357 803313507 673565859 727575514 828938026 967642326 99098922 317649506 1036690744 292616531 574322989 1037733263 555202145 723748649 886584604 679895508 632445259 786364573 1058040097 545974845 797489356 614169504 136936487 175155198 164250253 765420818 28029465 771008371 64778440 267601793 405621896 783143374 24823726 103696522 920246325 394366965 101119882 157053693 756551492 486142656 850115313 790757540 20395559 403624375 39250545 303971818 778928143 735533707 937334908 611263662 663963715 939883919 449693108 255899428 393182566 593064142 811344513 352430355 9478979 483306601 345227348 505377266 492051732 852179170 982395874 213472581 371194547 102937616 155404090 70173329 490381134 760338568 704087635 58241374 5098243 1027819113 841648992 15706461 328122202 993677906 775920660 304033686 970038217 386873026 780383843 999192473 1046027678 617228510 529084981 346715371 844815802 377064213 976074896 644631658 344914163 633923222 156661537 33728128 308514650 666984972 638441860 338397970 956901008 340227769 449566725 824959372 352874113 798939312 503486293 87307758 430660341 208713059 389998803 1016102544 476224484 139134647 154071708 808824752 379731121 643199860 536849914 660717912 159344281 757427155 342649575 356512595 478375286 204616697 21497684 22152118 924630487 376325014 743003965 894518308 137547099 141845535 19692674 48146265 200133950 294553522 116551752 885661411 612391134 1042945175 992197957 787750788 276674489 550957317 749560860 230087759 162513547 300953416 649731447 254709429 595491276 127470607 365424670 670822701 971798082 332868701 561218671 348573955 753715146 183892662 130215322 596513691 640751500 1027769643 104391793 41652136 990387058 578146978 717203341 383996341 316674097 246730072 18722399 690673565 918321701 417882423 147936373 195585068 618250517 1038726948 789456496 163434204 397886249 660490326 601541906 884022290 597249669 913528951 478356802 911324199 733594143 782889080 64734271 229485020 886072222 212632840 324136735 296428579 717903158 275950420 116176351 276087704 484070676 306174321 160482460 87137714 51037094 1020188497 795887901 631955009 618034623 762913482 367647538 368173204 988175678 791580898 47686431 293409173 391040014 803493819 983627557 100699724 505971639 553805312 171605706 274987766 149663752 22746506 1017023507 387113825 276740137 387958350 85290730 842566213 754374478 38646052 255993601 911867605 583332087 49535792 552880791 774213181 979218073 822962535 756660358 565953503 380506390 984160882 966783840 896054677 1060837803 762960374 82280338 754521581 486211101 563663061 44762172 653620318 745893484 539356914 760176170 199816432 701904656 369934299 255125295 915160239 740327381 991478241 599198946 211488573 486581923 642260093 478874347 1002982304 947889128 713916277 414373595 760561729 516360357 832073875 176851705 465801875 166338502 203264569 802154969 534417860 750677646 453208654 367873002 400642539 245192449 290759027 95118905 802742299 1072439420 1029358960 838449102 946558985 481309486 638681441 838225154 124340359 935915362 961124808 688357253 853103989 979377685 585834439 168431941 78124489 1032784940 842626137 733079015 120444533 604328355 908515038 347232575 534624426 115831759 853040262 595876374 650322744 413383634 787037091 484342238 47394364 379412208 951778977 99965668 704271264 1024308872 1015731040 447327436 118942968 830619405 463303531 1058225575 1065163536 561303688 226498764 583695795 295245758 975966396 936367761 427071619 1011925596 540073943 35252 248565341 895384034 708481132 406290972 656800746 247519218 620382110 176198036 452011362 595768033 40176029 100215622 1032842194 613812146 364568963 364741816 299606105 880537412 965185454 674119325 342596315 645919200 666446106 293963120 721479240 83037441 22481275 234793012 981105840 235553699 130373903 624546633 72760872 462557423 314314129 448295914 884935325 409066541 604891509 698770977 798613960 850704875 996882788 542363315 976477057 576805586 913245553 295993948 1071492418 908535121 124958534 72777052 213415603 174073129 814176440 53574908 907397679 902512290 161932538 1033901072 965792528 448884334 666974491 210796472 1010112059 745684804 757138748 657269220 1046146457 602944002 3879083 298886071 583658932 346079818 814325553 288538003 329350357 830138628 491804882 326380560 318603454 133382240 555472731 541707179 557149882 921298907 662025404 986204105 942903991 40713135 212895437 650251132 301733311 219243768 101647905 69905839 84535154 735448853 868918086 975308905 211294427 1010357648 970977860 97363406 659023096 688113755 266164984 932823482 332164945 110276431 1053448306 656313583 151190452 220343023 197628231 157714325 738900932 336841815 890990852 436014622 365867699 820589480 284084070 825045508 215221292 722574971 930103394 829512957 928989700 2250571 106315990 306304412 472037230 211468122 940410651 41019344 177132364 1053137314 876426033 312969536 477792015 196181042 635075833 404396480 714894955 532560530 809095621 508344591 515055461 547267349 142870698 424711902 114447425 875915618 415062086 510901741 628914155 750979813 59385679 643438157 808644215 453110563 435337124 161148630 615632840 903957374 42901353 368023309 826944483 962544439 323664682 666445580 421247498 186463780 376663266 198668677 157541786 503191198 1065409410 265981700 351842811 528192671 956740967 107769790 748248794 583703691 494518646 503320660 420185199 334336249 781386001 154668554 467410742 809431461 574061899 959791529 772538042 961251891 579191196 723931537 409521703 573008225 47859269 997148349 123569724 694091135 741790 560585749 375446066 930437142 156494794 991408332 151375004 1070424322 80228871 250702842 887163315 969453654 234030422 1015590844 327923412 649522368 624619505 269484099 465935555 953182888 233658196 312258676 841556302 545991337 426250757 466928092 134607922 411563748 653261238 409073369 417043432 259142251 591113786 1035220148 534090691 291705633 263839161 925490381 122947903 59798167 309804273 510202447 92328487 111673011 305417456 562367646 66690811 628271803 125120174 78184635 858737199 723305124 311502264 82565470 537356506 705760969 715859758 427153748 85511113 513884372 76709111 218923974 972942509 194358767 1066929973 26481934 789982400 699569809 543503866 788756685 770469277 1067367797 493364077 651316830 529590464 447438784 403116159 19634626 563171414 604567940 95744655 295912717 965254457 269014731 13189011 627130267 550631789 196376783 720463906 450326231 1019107259 990657311 778439695 466053610 403979289 517601716 40661108 158633352 526285615 110951600 128113693 988137103 110981742 217197426 1060623561 109732392 822511092 77154304 624207564 308903011 98794938 439602071 498250431 877846787 625360933 903603047 1014206798 161008805 121719674 654942234 726056492 280858009 280076697 824602809 489002251 393352813 411675219 723619463 279987800 915612870 495112430 560080146 470950786 261797845 486785306 140060914 994707634 1004434214 92772578 890968220 320138856 801413286 264239582 653829149 1034096729 109901429 663145654 745653052 780012270 790809242 721586796 149833820 480761283 753497335 994171404 170530118 831394664 31638762 863759461 306466919 1042574482 927115867 734965533 906831357 676217417 42872910 180259756 631592171 612205687 859649565 471054007 421323101 364390671 116672866 1020052495 8238937 945800555 359661363 890780009 881095618 688335866 1004192134 261817801 151917589 467073575 493213183 338929482 180106774 794088108 381389537 777963419 609656566 553819866 950548693 227498755 7651385 816289551 769262035 773497567 389702471 835440323 712168029 412395713 157711023 341833386 507546324 685553364 987171376 980756181 825466103 758916691 233417806 754153440 393124739 298391129 79395306 514794887 918989973 470167469 524371798 61114117 195978033 650196227 537643519 299029094 947650254 267544479 342137807 672699742 190953815 803786157 416145581 373022136 838659869 1040917464 343000451 604485194 1027287062 425700471 774289637 756737200 144448639 247782775 796415108 35127669 681055766 337365961 52168155 21462957 508396956 978877254 773991829 234728646 558204304 979862689 803965078 560067918 352150674 517692378 244915530 394813378 583935121 484701496 410030156 711110060 263573984 303936688 796026912 639313077 828533087 1005474627 107355527 883161096 207186047 618825442 446550374 798067510 163952021 381849924 478277387 664422488 442560021 144699070 762985227 305766705 890475534 773708814 931414972 607696810 865259920 767657454 926222448 458996877 237240061 199424626 424776684 82831304 31105594 458750727 236292587 668766427 265001073 261475242 481681000 866781417 220863856 955853371 882536101 483186162 141177380 801170321 953871008 923104706 282214863 879930324 201904592 125175985 583722965 6604672 477387497 376765568 655801262 274964787 626176040 1019257052 747303057 729026907 172896702 456138373 183799192 579677370 89103749 812035247 510190718 449991700 840577867 309274595 20821466 419038072 793951910 799653498 1064333166 602787939 927655289 47407516 465732611 731086548 883077967 717299038 53955159 709366081 913075061 390582751 616112936 490844500 424330228 671716871 944984000 1023724642 1045923904 955522271 630890693 729250781 380886367 954821258 385628342 259944828 35980663 428012871 54032482 1024282894 875294563 475706685 560700333 252657522 390680485 73176251 213233232 40243455 1000703732 494836137 702802753 620136300 831700750 410095415 695240862 353851773 699772943 914715504 505850654 683786328 481003453 1016405190 168126086 55986227 676659924 808122509 31205162 69391853 186735982 677691781 281968222 493909126 938277139 157829604 374700251 314289018 246410824 1062422130 736130615 189008747 668546911 331964071 260932744 889305135 717984548 51564097 857406590 141091523 446778739 601206866 510488202 625167927 774097548 886062665 43537010 245501203 37373885 420269454 807605444 538922904 152315308 612951231 782619519 556897926 10897060 871990062 915065420 308742386 350811292 578678637 661876627 942424787 54022167 789785861 348034948 41934139 133873695 181882668 505159320 317059395 147971993 329067239 385312311 149929111 364740380 624596709 99896399 686599990 969786010 809422190 41127184 909247300 808068356 42379683 889369418 1030569595 866960146 512524525 721527224 53312843 859577458 57758614 527149296 107151708 649775435 408229798 447414496 904426826 378232862 690441108 300158970 216627464 357375773 517688382 88993624 232221332 493318409 423580846 767429324 289248460 625257404 1054334503 462966207 126022627 605517751 947313006 108320373 38450034 337369288 74496171 562568433 292291496 332071632 964414327 550560159 1010235324 964580721 527796292 650250395 410190471 198267352 565544453 187673210 997284433 406348400 746385465 677487466 935272319 579076227 975595250 16822604 537350022 823135552 943761408 722909060 156233850 637215650 233361517 305243433 852786449 354567568 280513522 43085250 763637113 492401542 829103478 139274626 610598486 897960892 138346209 357066358 237589575 45145469 522717341 126465490 785799378 144278474 350396855 638051753 26019139 539387241 245917149 651962774 601636003 367723836 602730040 95802478 401296417 1029776187 164642643 481460664 1064799372 250636595 72456605 844243588 806262170 678260894 748409987 817782383 96927885 1060171490 654212966 746112324 412249545 239193320 161255760 963752674 90095928 237333529 541218926 697512768 491525508 676314785 124578166 871698534 906348934 386018236 496413063 226735990 784273773 904281876 842195311 329457082 557866302 555711523 587913077 837528679 305200901 1011455176 352872647 109742317 612519707 986380826 1039414522 637398573 155630895 613362365 845869745 1035544781 14433002 524341322 809518450 301376713 130798738 581752244 425124924 836691281 508287107 921889142 414963466 119776745 113184168 944482329 500144457 849068244 411674897 678443647 535388371 290934705 630101683 124675069 269691163 645569325 20593567 935573521 920462871 792832819 319090396 1020664877 74522726 697040404 288268419 360391356 11335306 93625116 622585066 296149409 1028537028 218271292 253717441 1021934147 1030031599 105850773 744744178 573605163 948314147 125795353 898400820 439472506 1060602778 692423374 527084606 873661890 670765498 470203289 860064971 768174780 691714350 877048553 967892534 180919000 884628269 375906895 151584754 997400985 117761532 954998252 532545142 732057192 695944240 490741755 1003730267 814222418 332613828 366688336 191732663 504850335 1071764129 466823100 432553570 931370785 639157626 691891294 1070406979 662428123 240247915 20411949 611690277 714649745 411592684 849456245 804409112 666497436 1060239460 932110894 309187091 181605593 288338331 377215344 915516139 1039692441 218217528 220772019 298812047 37364182 26441754 853277561 108339475 671567350 217065389 347985776 656557185 230363861 532492588 104539304 767416758 164419398 492983644 1036257544 34253619 202985871 797177125 31151750 298973095 198478837 672411733 157993481 621177093 402313375 534963498 296518353 38184483 854260370 294806733 1015054890 571550414 930466261 477461401 771896109 1008967531 627107328 986267490 487516415 539220787 965688165 490687985 127995217 462242393 787489298 165146857 972137669 759622492 729984458 17743657 371182464 465445857 139870273 690327446 968397610 155700946 328816457 893989033 518920122 48332071 745021826 267946848 476643862 410188682 256793907 878529375 115635890 942132326 282321000 1069040504 299823401 96949119 77925891 985874016 1021214871 604450829 580956631 578826201 431295309 584681374 768842369 1065428639 24057467 146953471 214694439 486518385 426557827 555801923 883734003 574995173 1031369268 354548963 901988215 400055457 976116831 991161962 1013896522 651756010 102607030 129386834 353801144 440825496 1024939237 358702599 152611606 682895903 902868868 256542386 206696859 779132849 337197293 566213342 948067627 757737701 817738055 499631497 11618557 367892854 351559327 686788189 222845991 469561408 910264698 418875799 624142202 461909 570046266 305956273 612053921 284178069 571273433 934126573 309738160 509065870 916690588 239761346 1041675633 272686837 468445904 652821926 527334539 563716611 497214935 175361957 771367828 394236640 1043685724 109087637 687063927 1038666743 173350619 1020221636 506690127 140506201 356685247 862987936 129968850 610690133 62770107 905589992 86235185 434233574 923938558 956357869 122224781 47521895 475356649 876634547 783908318 250189087 776467958 307163407 38842171 807099293 30883562 142322710 458307851 1004485870 278614451 354324676 1018084233 972609090 1020591088 522363906 65370081 353721603 415540459 758148878 950352009 922167660 1058950722 967176945 331536129 843595726 860513179 848164013 403269938 816398998 583607491 687037146 724753624 193230081 440746212 49324995 901387209 893102457 710736638 901346830 87383142 288520125 496637481 294713027 2040712 168812065 651269666 141429704 204817813 534710903 1001389059 4417798 51557431 885828928 787583221 81693097 177495849 1029433662 847849442 537598624 354530218 1030124499 1004846770 146602756 1014359930 55075636 270517645 670971856 117742644 288008110 1050741021 427816291 496237929 773186830 84737776 509319609 637601179 210583307 23717946 767310228 422372051 93648239 262501507 440395243 812558623 222356881 836705533 749438483 220951348 116019871 344329136 566649870 603037055 445983243 128500635 1026327504 102318710 1047551482 446528621 419898861 317205031 690612000 273485147 934308121 214088358 295041576 568126521 1002094953 234753254 775098303 732519346 836016183 479192315 57968898 3533796 635445900 493848116 1072720705 177038911 796417866 1039687083 541673136 661219108 715366381 627588229 1064216977 433428836 191736742 399628056 545592118 816503890 375550683 147155776 416774870 1054936007 645894578 13361450 663797802 131352733 436777380 735496532 1030357582 770110075 834166877 1028918500 953117788 996631642 309913509 536025211 435546962 608957044 244879815 61680102 506966478 647339438 866116127 832807446 118563819 646552179 830529824 756018777 232412540 438249227 528109356 495577502 525015400 226840380 552984601 428944639 333424218 155199756 895000537 7794526 99334203 926650963 1040601604 565299081 489511292 838312252 935930724 18911518 430170821 860900976 254794689 998654357 557334893 726372732 1043860897 828364386 317866587 351881173 1062627628 538026527 697475733 421406273 966581722 896752188 164611296 589714739 754107496 780887157 451815922 537636125 119946916 618056331 1034766797 398715431 1028226981 186326748 326193966 193457142 236438586 556909959 581974164 939570462 40693718 1045735008 160378176 833351862 136670910 112398492 485812662 562370231 62789543 889976630 480206990 142443052 1040342728 5837521 407154887 183531313 574017622 576800440 528103407 27386451 582873467 645495052 545151244 500781829 1032867345 237095471 1003926585 917081275 1045197722 944045699 442014457 915102200 740585036 225256966 664074215 1034535565 304479742 967338034 210501888 559279119 533743099 244534489 734651914 790342410 221827419 342158838 810151075 53791009 655680434 878087032 709624168 824984671 350267199 275108659 180647726 494519339 294523264 539072806 53333388 37841181 938479710 403996001 1048945873 801686067 500462330 531677928 26354623 525991902 40660911 74170571 598343074 903748180 940598064 701471388 833008996 497056995 1036336372 436833087 308780387 581618909 619841002 113505287 769240850 87817661 1018377056 572345501 840288318 1062241331 913504128 222804333 867928804 1060948730 354576544 91675605 295516015 681870273 270542841 98765493 611456473 629317565 119867403 361486988 1033752745 87403303 734812650 8065951 354570923 218848226 245982065 341220631 57129486 35946598 338600872 308401105 781328517 881494516 250771548 855301218 898199941 63305457 10661027 565072801 773206225 881056676 552093021 626526793 427948622 825215714 296680768 1025919541 154860601 492400191 1014121238 74254222 426064646 203661601 323692946 135696590 1018834951 552885184 309526431 183453578 898850285 762666982 524420852 836866313 111241973 582311923 598805955 680362704 671368242 1008295579 44860283 673940392 820460699 816598658 71649265 885765762 787934263 881384179 493130334 1059588679 6981151 108341666 528523617 153667574 391414711 1007901946 324970824 934780146 906819708 534505986 493257351 347212973 280458255 519762527 102432468 152563558 511660529 377716019 340122971 53592114 533034556 404288304 50565480 694605057 521789974 801413798 884826041 882099745 441119679 1029222317 517813542 779869137 254836182 648305404 605952118 96624208 731381680 723022369 577606732 694191251 656187319 517156531 727941057 645174635 465671569 595772922 53429155 560620753 301675381 859380764 138358439 410554811 253743374 8247832 788930605 951045297 459694884 10974598 147308409 1674777 950612351 46033790 281694610 650058352 439958206 1025039225 521778024 1031840997 531671780 622920843 247941831 632214602 362016453 1001186342 363108494 54339290 903709128 700974916 15458563 604773610 200433622 604064396 118410266 513567150 522921724 354383125 380548004 417194343 1045545044 33062407 910759613 556143255 161784646 196077434 545091307 858961553 409627944 285323758 1068721665 358846224 820834709 146791002 778919699 433187118 783229612 108290441 951405862 213346467 748294701 1062937508 1000869425 757750921 134441352 236489970 19632857 399998852 92097783 916162684 422398690 992191610 467862913 350308820 621578138 90813011 772370723 257675376 695445677 185831779 495261089 72641837 97153148 782351836 967221715 368036942 391861218 822686119 27042406 217028480 791085146 478939155 575009468 263503601 961006046 720920322 80753814 464506120 281353400 106073739 648908999 623045233 654393423 789298803 39275698 756913055 718358053 856472151 825771979 913712593 501631083 575469652 380138032 670246744 402241497 974332052 232887611 224452413 750805968 102668915 613091325 1012473800 265371686 906832795 838606311 596087661 941677104 67099764 518906574 120114262 126306950 113070282 590240927 151063391 709399254 59203647 307181563 881725002 938044471 37013485 237825272 959619937 487319464 891344531 117507069 7439979 540718410 876314143 780939849 615290370 177403627 210730769 993623202 1037592563 81738901 197874579 360129888 420721400 1008144443 960333282 27082481 133783241 540849274 691204588 416092663 86628143 894611631 359531032 911124491 532338802 172239531 462041634 661325838 253956246 667107671 763698534 700138453 91939169 449069227 295460390 914312661 76491867 204152871 95883882 777864014 329591640 727200869 522508208 202728249 695427867 16535088 555350361 147889434 200499128 789695562 246949115 990228862 950509666 340400006 948469213 997925081 202108772 878492586 79726925 281227306 103286296 837193715 990403041 398738096 606222632 810059292 133504217 794199760 581161516 322465394 983322305 1020704943 690732172 973303417 573264066 989377385 225342316 199153403 750657232 837364884 602229204 910796739 1009782905 288238483 558732680 297238688 1019118420 843098317 183390938 619513218 1022298367 931702651 851337477 707304706 274148266 169068512 1034281674 594102690 330509279 816082879 317644988 1033404847 369698426 242716776 1056831330 351544135 545777609 146999931 748626173 83231486 47246639 730860098 287630369 969778569 759076674 1001306720 705760458 632305524 839550279 405052590 38169337 483460748 732106202 906412192 49453151 205531016 912614641 388542080 691888380 1066633398 47909602 785734203 425221620 90964541 234714022 390069295 368102420 273529035 552831531 3809037 722127109 1041643078 805767322 609021529 639133714 761323050 920582984 598751936 534615401 785597485 679150327 782785655 825842193 596146798 803475783 654693257 634644631 432280049 225203612 1022052553 212793883 942562336 372450391 507827461 996397221 198892382 1002981269 300291978 667888255 1035361325 232905831 348379527 87806149 906363897 632151063 299340086 240165563 914560435 476579535 943862649 672174435 1043597238 1032661910 927568103 529092862 120280211 1049450711 753288846 1058522146 1050850034 590660093 297005014 298949077 643651824 949910071 677356880 827341128 669246016 475265792 856665495 956247120 360918357 717535641 606043498 618779562 360903838 664343359 16718790 116279725 971532172 42420945 458153719 190763634 58893608 89521188 527460471 757836631 1061550643 220344701 339610218 627348902 882336778 432211527 711905386 109210445 630360092 900300501 1004109871 967761037 276544719 22240229 495512537 573170366 317334787 740963618 616153577 879681212 627449792 956743663 837682034 766716791 616540872 1054752352 340601089 356867112 56694103 631248532 234605608 804460681 868954161 795638808 139859974 568120039 464627189 1046691546 756911606 10645787 870711667 1015124362 107268925 21255714 993012178 1068010763 23567594 692784624 78271450 411392228 193789901 293705253 101328131 1048850540 308967921 241058801 898267365 255054981 164737033 654989288 1025263656 729495943 782576027 927802851 784522542 918624430 373908736 757567433 57583510 686582361 806237420 423715840 707586513 86713074 183843206 336458487 418202590 693258551 354723431 95677142 1046597333 771860813 860486523 447477971 31940797 355449599 227656944 711686013 898975940 219158425 852516038 302232020 325086051 146460090 613196492 713023354 973055235 1024859952 291056577 293033453 1862343 9538658 354071684 1045888268 421349453 370098186 162585381 1012132271 758059709 899818623 774301002 235501272 886342223 60827591 479868441 343322546 459965056 414397608 299620792 523518966 991385558 949558086 276222678 349214068 24512375 616735325 1021969315 560503730 469175958 932753646 753423897 214754482 366362798 390004414 224344493 675326878 249314208 202114132 596577169 737577667 635130172 491383451 457871336 813640605 1008767125 567023477 11231972 119238822 925248554 103003387 958112989 378841255 773359240 1071016250 241313065 838190001 930460290 557435379 623233781 212621277 772913726 594566970 65124546 34215037 182856147 1026555265 466898239 275496538 262152817 43734292 658996915 875869793 435589235 514957552 881963307 173298108 13005531 528738580 71825131 161911470 761913803 844793608 1072745921 1072246199 707751055 1045016188 225818886 735013122 1055287307 14409883 696554218 722485852 262193653 1037201525 278415973 52603217 797034076 380183235 438897792 558268862 190340047 530381382 574590962 225415108 76696727 790217122 41493492 945807103 664183849 1065329164 1011587813 792995847 885129150 887092008 679474832 69047947 615806490 223229673 160008665 69890403 200265588 68946414 317178500 954401661 120147305 582604596 778471700 896799542 86798573 687849503 68720786 285447018 215417151 164836099 593422531 629097187 754485565 733702863 505034217 703766214 205225085 563666235 644083089 809078237 582387186 573536577 643617672 954420313 700259441 786211684 384581811 387825769 518608410 396102591 1008962466 286059808 894483601 915418688 264269864 524288135 202571970 812994539 574637689 494549043 949045414 866562396 768256864 464684464 471010225 349612607 246501658 28306417 100040369 513352877 712839639 215186212 538904685 752982380 927287177 327552117 219831675 999173948 704471514 1072745456 544935157 773550393 788530878 766595968 486302220 709188862 423743657 108436621 58241030 360202585 522234270 401108825 256469942 641423784 138724472 357594713 156154625 191843872 430381265 1060368796 182529766 724977510 767404863 610201136 796205950 626637348 741331447 904495656 883486090 145966365 39832586 155456246 35752090 111051830 940931849 340390926 931727859 25423194 767841421 1056568015 154148074 434629464 548632180 377055847 132965621 190571170 890166853 225465392 281666944 100563624 150622659 936217913 330055176 171088255 578349157 1004504197 844374809 300538199 704210319 206748905 711164772 101578962 279634395 429296702 995677204 634539775 246080165 947961297 1062743811 273204127 386516884 142794686 627937677 367114184 541339459 459312423 556037079 880076897 570747825 508549155 374104334 289007695 724280810 610646891 582365982 337078461 191551276 583351445 1007106340 592847492 416455796 137313163 522232243 1018842022 615015944 376089812 816230956 73564054 618156421 1054704897 110239815 1045154514 986455187 20831705 19788728 65281801 289370494 432647337 44565426 80115153 726371871 875786647 375523879 107115854 37576727 367562128 373379436 237180030 172732719 483551961 950096705 819639730 334987857 920494228 343412266 500381422 6707938 101664496 404233665 218010466 850268744 338168107 1022367601 301482923 15244764 635880427 1019513844 247114468 456145116 868008489 712322422 441327211 88623021 62039050 865916885 716232989 852977892 341990022 516999088 70011593 1051473086 215987898 323950129 160988428 1042027278 889630608 643238634 15186881 446304646 640035944 6389763 483429329 131979076 717560887 288371433 672763463 216407789 298233013 1068473036 229723462 368005600 391451796 1062862462 963348337 136144154 772829334 20392647 153793565 215723945 539039269 725714173 569878047 668200949 889108921 1033255401 89464460 487416786 431310117 138348821 702751447 271638397 248732294 619603385 993760811 30571211 34294348 164606479 126319506 172977113 237973050 260470202 93588632 988408331 253299064 842175920 34326455 552251354 848178773 1000756803 1044490988 954861636 171822614 322351381 898221288 629482316 706955730 132215388 646703480 362925049 242464122 717960781 1033566693 78366623 748994576 505162116 777552379 911513541 1067610988 1062069754 543412995 419799074 857061495 776168802 317138513 216334671 577303455 778549130 430460251 506690856 57543889 337592451 134169477 438819472 83506832 165691706 170772401 280030829 265894852 517270682 36082222 26252906 829263411 915690431 350716240 837342123 891455545 993415842 696377167 672293911 148422442 237338385 78464676 971589589 575162418 974137235 667729850 175817269 74342676 767380033 87876913 894685600 448167757 177979780 841668176 10147399 199601247 213256135 617229787 53728725 608128350 254056267 324246454 596445019 837303777 83759791 272273317 645626751 161934657 892502494 207801906 201101938 1012231255 158373994 895895389 440342507 949467084 963851391 947102681 24001360 1001938513 274129679 138581220 510062023 558089457 173071744 662477895 950601798 454008466 74898342 657471525 1042576410 287012728 989918882 584167055 1037417953 470891952 582019495 839290882 588129501 390341908 309900044 167073175 762780982 293967468 821076230 876038538 954197496 665208773 604084076 940358381 589034619 784016628 1059793154 17229072 669941616 74628994 86977041 938572980 268178760 785716105 850570272 760758350 823419074 1067295980 366598123 674756042 22446990 4588484 156224840 841718570 858870204 347049511 910534881 1002464262 851325894 433895006 422118147 508929093 9785813 639773083 495721297 73968714 891361703 155941718 730654258 277784602 817903674 1045488088 1072069277 1044659173 978777785 449113792 815545351 125349062 978928930 95606404 404764681 983184027 33240152 667804342 722718137 628229349 832545965 602366539 234675445 437754764 131936231 704528156 807537597 553558795 246678905 842885162 909357113 235238032 531011102 28831465 221219271 774001021 373862886 692849468 668651313 112887496 257365389 801388614 348995307 725938021 695413619 327877145 164727831 336833570 216098788 573493690 818154548 318949118 924964120 380829814 175318704 513082979 761799077 1024339269 605330390 115849200 938370665 560273767 480325537 1000604009 1044132063 612537835 388800618 863641908 417710861 1065774912 866593078 54056187 189305782 542764880 812646776 890198454 468685816 600958222 988026880 921855808 164954945 490688974 743181133 449576695 45646661 71541796 682708998 657825035 991794225 760018141 438129693 813251795 656991081 420001894 220577840 1004100930 265542459 234450999 1036141162 225097769 825403225 837274765 86819980 778423411 898838488 760966597 790175016 782088575 325224646 309118502 66556269 173794234 891395039 425835532 815185179 557481659 415905319 528216049 243850797 674600817 669409835 1047932430 795105381 294273030 154591907 650627306 53163214 264217647 827322144 340303088 193833423 78570458 478604970 518671995 936330771 240078075 420265354 186717975 557618484 1064173301 505153900 130124463 966177979 273245902 330433965 350042747 68565182 651024632 438699222 153147871 241709533 539562718 921826354 475080947 817190431 1015809841 708873651 251175088 972588693 404573263 779024388 1039863663 980836543 254292876 795528127 663923781 953689076 334568901 810543854 787839703 897096260 299239450 84375294 659501702 1070828171 569670907 15768039 1061066065 716151328 383886274 892750740 297111551 546315751 467806563 907271957 782037443 97853764 435130267 750392824 1073336467 522681121 23634880 464321859 324952176 870078902 478285154 991540890 390888446 964998404 638692883 477336322 528496601 382278967 931752961 460440485 301178131 71094901 202036029 138876397 652400640 332218095 158663134 215211885 722683038 639657560 1041786323 113037054 331298612 521971117 561350480 289920387 732359485 233830156 42793788 667766960 998579964 1063824051 1045773310 308974665 454410134 655373553 444330705 414502016 844530977 751812517 483239297 835897244 611832988 614043893 981747011 358227576 564794666 491642278 83124498 367343794 349636946 923936954 1068201513 754837266 1006207216 546555624 130469127 526221996 941855624 942665989 858901606 878482874 725787209 689519832 107616653 184059148 456108304 593089870 44062769 14661166 886130760 726924741 645715897 1038057048 6979804 95260588 516746407 528219188 790093254 50792692 364894439 125361995 372158565 724515064 461037394 822370995 154753583 644061577 634056597 244486977 790345830 882641829 652340534 41241114 331832344 844405151 348614173 284021235 638479371 431020124 875854223 601724920 336600049 911943982 735106572 225753985 585599902 20782904 574141601 241070755 166290788 646673158 123986015 149492063 766051007 530246218 111772077 967083130 728077762 261099179 259410548 384456287 459095497 979407763 635796752 592723583 99553740 94632468 923078372 329324974 888881191 704860278 932091185 426032727 604865022 689412187 709994833 585038505 799750445 659549779 684591508 222471728 930885296 180784675 484741492 393141335 932721812 33240505 902471573 909877432 83163257 1029429172 118483096 524402017 1045951257 1038715510 555403466 985509494 311279098 895779533 187605835 723986926 462866137 25450215 621903284 1070398267 602142443 420133770 874657745 445575303 181975636 165977549 13891623 584812788 991312807 345878777 259429306 32322152 187364334 344983110 576145876 221023897 243633288 502336339 1054219751 692013086 956847574 946450072 595644325 696503005 766312008 82763150 686225401 521241966 1023262142 602157025 60222195 616372140 302154614 200216618 620186977 749769535 53183698 374651437 424930019 252916656 202914494 635266973 1036610230 906157165 703368763 366284423 855876673 797253804 351044744 222391384 496895244 371954458 79310958 52896908 280387311 288729946 694607132 127409346 61829315 492773744 541907743 375844267 253334675 644838885 72048725 804992537 941915327 602636515 906126244 303775840 386935952 766033815 527574642 915888991 465593794 777363142 717216436 771388388 271629320 926546592 607087245 170054334 561902670 137060994 815412746 343551741 44620338 720165099 1035008150 1046470221 313123873 963952377 821322327 33709211 950376887 29853557 396561041 1053517798 422090528 246588914 882138350 137954400 172392305 597874438 959042567 205415959 675928780 962159119 493031050 730092034 406739641 79668596 176201312 964455483 691583029 974996054 223412264 245967153 624666381 318624604 626999126 215120031 773275728 123731920 1043206966 613317136 387425821 845257761 726263870 407011382 297515270 452564379 556192769 34330064 341993484 665140701 397545826 434633175 107333169 744544542 327047770 313070413 513765726 1073078166 141194490 156516212 965032081 986171113 344579766 635596716 536829725 632298650 543382261 1070171770 952109645 913064890 278193272 280544997 508419152 763019818 878548489 956624662 931366954 272513722 2981898 89021695 664168014 1052246668 945637269 618800490 112164487 187842850 321789934 861150767 175855609 27110051 531369840 407815728 181349468 949981702 1038370935 923854478 763603995 880109742 90893563 811664022 216882353 409540187 710851506 158308505 644618219 126578042 614950582 298438096 377606526 411432234 1037778251 657905880 198236765 892229811 970857562 370593912 343914242 817203522 557486900 224973291 135544573 669755584 677210559 735238823 1008817063 985581924 622608582 196346777 319218234 903539120 945795534 779076918 80891296 565637174 290826570 42506471 804359420 661113747 696779865 892104682 334048215 394221530 816965106 796034304 510673030 805195730 519016795 996855809 453348052 934354339 776386034 603309900 800000657 940145720 427187785 19522215 491391185 129210656 193584545 271726813 396808245 231569695 597392603 733974138 230912341 988760172 288104022 925017393 965230892 346138077 159451390 757422549 337400382 208285127 440853259 779685194 823046197 549663146 362505652 632616342 573513946 58335234 866732450 704405681 859526999 656232589 948508128 613677369 304221967 719024865 136988464 80892417 861210966 844295268 321186080 740353044 677877273 854597602 844168277 318180643 992558021 418617281 923522568 1057310750 526708205 330523643 1158745 695895040 660053095 265545424 429453748 675992444 213514457 395278218 661131361 244797302 845841605 562033053 363299693 1024474568 571810844 211140860 623037983 960704498 439565864 796976198 574267245 305646952 487206234 132028306 708002400 1054313391 64322126 1064106370 614413687 684548539 874368664 873237973 859943584 371989265 398579012 932232520 638393709 127700400 906545284 215569433 274160064 804060255 452185605 1050122678 162743613 677685669 209595813 502238724 435510375 461510389 1027132933 601514154 316422435 372311725 454771360 254549794 16099825 990866215 910076899 9573676 351773729 164863992 426825398 706724635 248334091 467179348 664874458 240563257 847840319 365171966 457679375 780736260 229847587 489273655 338346306 580460842 910950224 327105866 966025827 680669080 99485120 50081979 411383040 880973486 172504025 564641441 275362244 63442986 281763199 244329253 755100856 650266678 468885387 721674785 1068847244 62902366 760115494 476365075 662641299 802564727 934219473 170377242 472957417 839634146 238743374 1041648957 693947917 138003588 530712047 100315070 629765795 338237294 220858630 911732838 230868897 330609191 559657345 843256078 1028803066 608912392 466405422 6967242 557379544 1043724299 466110555 920383149 144971810 961760782 141043951 715920403 956910582 888206201 398368409 774514498 269589980 723583573 364306017 694123190 404115990 985806719 351279616 620991917 925620335 937504394 1040466445 210922712 211102513 899118025 90470250 386051622 1060168516 727058855 945057643 118253960 397028827 419186434 746959486 217993471 414146090 124309093 812368639 776078850 116021545 416912635 564988197 85337644 186222037 405379582 759910779 282551241 447337466 588310731 1044778242 157934465 829177855 523683854 841542824 906088462 965444208 90656180 752821752 955082500 591708865 1003506660 292760337 296053604 893646927 581786939 270430203 260261960 1023913503 165318720 784730916 1069553460 831184478 794877006 860682145 304511114 907028535 261758607 574597038 160069158 1012632044 85782711 377965894 92994240 994008355 432192258 291281329 1071465699 675807648 384392704 1030656310 812282574 940564244 47329806 233759192 932151328 107720594 677363441 480213727 607211336 1030947420 315485403 880361046 165937019 531916780 345684343 9990005 1066675838 379902470 306186173 389398813 142578628 469603512 426532636 688028027 377054146 632356411 1021433983 95497715 841819626 223129455 852353189 574100740 213852733 743132830 250290428 895521252 1017495429 315111822 33012929 77853752 35925347 353296936 934701181 387050797 667302697 759567078 570181643 549825404 613816933 1026800230 360718666 823760507 768146437 543403666 907053691 639066717 305249353 17225004 498026729 437650064 445726057 41042203 830314424 342350876 553747914 563400105 41423298 90866383 703385438 583703842 243685106 303185079 205010580 203365343 956610034 847748584 47593499 269658527 562461872 834207570 682518219 160508491 221438733 908972349 208076718 736605242 47096562 977796835 1017760704 519581055 1020640708 794146002 927814692 570650556 106153928 676103484 721856950 102828194 863354957 432239403 487907274 425774395 380224567 781702997 941471344 132361252 649094541 732421868 607043678 514630756 373753930 687930354 574638876 772829941 377001176 1055158137 1053528653 817996852 335554523 741279095 251987111 993838869 706720147 248681164 1005141024 659767011 54588783 956549934 950216424 1000935483 190463969 805535807 548255317 707728728 605108079 850162510 80182190 983134506 865067664 198521231 782259731 191489454 820633964 651673925 754310443 875777358 955157581 36129983 977312289 716918066 50857237 589966611 176756429 217594536 422846495 996101078 992305271 792440230 478697586 607929238 630816722 103367840 422715999 989940109 878409118 126569542 201038443 218344413 785255845 618336115 642822267 454519557 997256124 339223864 916098291 87488047 930869065 665176391 189471816 1003837877 134440603 52114973 416694429 386554063 87580741 311781062 595637345 659074616 701156654 233192662 474283204 1010111116 862797136 391914145 620854416 257579188 927231921 35180627 858331988 142277978 464829672 652406348 1049033339 524061126 100712160 1013945687 545986616 718136458 667260074 125536026 20340250 139651896 481388128 1054758988 90371973 782556871 691263027 583909422 196003323 140503442 984190660 841631023 1028282752 820872945 56226859 163073226 619510493 273152934 551287418 790738191 967397355 585246073 585290943 925154933 261985779 867766679 255325390 391108154 113928602 697174245 78385568 980120042 798109081 525587350 1017408040 429820742 1397729 837900212 39955241 12407210 965147676 670788681 548090293 477384528 1059660290 482302617 619917718 1073610424 424736252 303270471 1031940032 320366775 957690249 272506641 881473382 709343587 83323285 347831292 628709956 361007688 800821521 450032264 269268376 218541157 380668351 6856831 852783468 437279508 994238018 178376756 50362031 197811975 643949056 579575169 542976223 781105106 245192225 253478720 747995990 601808021 555280595 925310766 394383005 487543389 191808355 244456354 703124445 185740453 494245849 134926365 355078223 236698606 699486439 421606065 781680265 283420840 279373543 1012452293 751717734 1060986818 87139685 218752630 28425890 885350887 480138361 597693626 302642485 578780128 913799388 310208758 713257970 672508108 887970201 1053297149 523833016 939649375 1030703556 589292593 173857201 121926089 723368615 149641909 778434106 833751870 562505866 445980324 692093637 21353109 85420296 587246444 871091017 34346930 1060021846 1664233 553845232 783827255 139126705 444476629 51670194 56373239 144687119 988581244 353586299 26814126 873615163 702742800 231044719 93064041 320492705 1024236331 663673249 42472701 680018486 903230930 258802105 528011195 475775282 590948141 479957024 149580853 614727364 82126913 482412199 491585583 134330667 1002683455 654025710 315700255 753097260 1024978946 36409173 585648455 566041685 93278144 676696439 314070144 185140669 510449480 553900932 512714855 956783869 978992130 210600500 690785991 7172457 895163112 954712781 349163652 50640103 765269689 432805127 440722473 730276049 999778189 799806114 147557174 791817081 475275025 961331346 918830546 448355309 303384771 102016319 707768538 1049213667 414401461 391975635 824338859 32418357 690143738 960087861 1040621184 355210299 372375752 660472094 74505292 268418850 848766561 34180934 509807761 230484901 895750059 866389433 825916244 605771849 1058692768 38141304 793447867 844588929 442193934 45314520 170155133 538403633 144089701 358866381 1005873113 331773491 353410673 677191697 559598369 246843327 174979574 438181725 645007441 1000113848 473814783 388880163 72756793 830339025 674536288 720338576 854438321 342882010 86357898 307194953 81905750 127519894 637188663 151502135 776678747 224720327 440182392 970780931 285064197 1064045885 71571251 173815929 734535753 1073523014 549291861 720275385 885084921 855479006 851850341 206078577 552769792 460133387 611774503 949968197 32038666 733128861 987551907 698619145 956669982 223426403 380758688 1034727631 282689701 332657260 4779417 721630554 93367476 16298400 102114622 82173451 584483197 199544157 1024757823 256096737 467994866 27355060 648545403 123663046 979544862 641246040 526898564 917985456 785872647 686018732 185994968 809713342 166974454 1014068302 518093990 158394199 858826831 506440045 688690825 11081765 614796877 43086081 116707145 390291370 265395193 653402235 241733440 754818119 960358681 904536148 884945565 253413626 52953268 736179043 260371986 597010790 330740354 978553947 743403315 956119021 703786011 265056336 947152655 1036697293 701055348 512544435 1005946999 442503896 399739346 684303812 985743328 152336739 245675755 323603982 2027223 816935906 366346116 947725948 1028681991 910035900 136774443 941664663 953415727 396941880 312608367 756699081 407874464 243521067 855728464 820123113 124480555 478814720 553087317 1004877258 870047557 1039898022 202381728 1053497017 708523819 835594087 359708782 55804182 162074277 287168632 966007707 170431693 667345441 197471347 478192486 606831260 867164138 410502894 180450704 16779975 959398939 435015918 761445559 1031868862 1031208643 361228103 642495550 152282725 1069302509 432995922 688166020 612749715 1054201026 1049451169 859040187 36477070 944853739 420875056 895656597 562400169 739861896 290226541 628695573 561861106 916092177 986689855 1018698511 397095196 235197832 529923379 951371964 290974359 731085540 312717817 125805478 784573503 278987629 601101875 854881034 327041628 384924007 713722432 1010705888 783497187 54464760 653473366 966709414 1069952744 537576491 660964775 380783226 282667527 46797775 381047296 60219580 819509960 1032967538 701064390 238190335 438675815 756544073 142126498 1065376300 456652385 280694628 500830249 459690199 281783972 518932110 511591244 1012297202 430020403 455702357 774139113 297200018 896456154 167616183 265042936 163469443 152068524 533292798 780906591 372171430 986959737 401492055 511755100 15800577 888616804 1008974194 218331556 1049541658 154394972 1012114623 822524148 258447772 548982655 836180244 62479627 815882470 90051769 531162662 1007155949 175665461 892834846 42552265 821668228 886564710 736240455 545621061 526888583 344123290 280093653 715432000 654240369 381211633 139942102 51417983 210578393 246292614 176028732 826774754 501662553 877109573 617147267 354240196 12292466 19320711 639796849 1053942124 438237338 425007484 988998927 1060511498 1046256646 325989012 779344751 1068996625 525896240 689410796 718028210 208293012 18807658 309492704 592925300 751616898 591297228 505692532 552107969 22584415 214239688 239337133 444982886 404643383 323202415 24953309 172021652 16459899 268476651 38863402 988115084 876613543 471823241 347589544 295255790 169322386 705974152 683274126 900572913 1008312461 300586715 522530767 417455062 607447480 1044903981 231667673 564104101 614301895 384176059 851020644 489382604 799744480 243192414 766314406 1053050391 24235310 605808356 920077939 969379533 71430373 439070265 69611261 539370952 478385889 1063251628 66799609 931008581 903683052 1005064728 315407363 204707135 380361070 937676807 206814113 183173773 198860033 239920888 478880273 49997754 41641720 685949963 470990485 156369923 324470790 902641354 789521609 507071362 133788913 211476128 612211591 940968823 904052632 537281181 92726810 81963551 277283650 83156329 165706672 652117977 103501810 1020073948 344973750 736789714 691256990 112738703 997913507 285421797 785366927 419511179 321270723 845291023 803376637 742231002 757651828 74514420 971529043 318180658 441476527 80305415 640621521 746727000 502906483 502348107 872046963 468334919 38828616 999294993 695257963 439088015 194193248 819988745 714082482 861572407 860448563 428543572 850370031 756513314 803829179 94323320 260872889 229886001 142841905 861266777 747115013 654464309 169518971 92247023 51124936 300280412 657858938 990050270 804734992 849118854 400408559 733521685 215345555 792907320 706353980 235327972 940740117 590270675 823518950 877694466 573571422 185764472 299260408 751351303 29350210 281953324 603387343 425202071 120030942 325939180 423843951 656794274 764363870 158248893 257803244 769884455 284108735 621437212 307299585 462808632 411039805 382880836 148612033 646465417 453529989 803635810 929574808 5697699 788984982 924340631 649372121 369351885 297003039 667454038 364051157 509794413 547685311 169111322 667486453 310163550 1003415342 957331993 1060804862 496210217 903092608 903445601 1014232951 433996010 294826561 520802969 850263081 83053296 982302658 960692610 915250975 651986717 819255796 830184998 848810822 117419291 177131580 117266904 1005667072 566829786 235797684 200642788 940048294 986825893 819441693 296941019 788280736 120356640 705759146 999912803 607842796 569261490 375417004 807199995 657600617 673012229 378233116 222542219 158897098 463832404 497725468 788756968 283142350 1067716573 224580294 542927288 271846753 871533800 451459904 971099382 986902497 789466869 582432416 746374319 1006326944 77932178 385189179 639831540 1023168018 582113362 237883426 63830752 660899039 22203906 389540558 469924198 373883469 530914426 211965067 515679058 952355339 291041079 1014846318 131391144 527275361 503404184 241145084 760478902 317139084 681834258 447962485 217875296 297890482 1030615591 947026909 395198682 681112550 844281019 739882050 191595178 683524390 900934104 815886055 242742089 740818415 500557745 1060157146 338960710 290613680 702972035 324649031 643837930 34261218 1020860254 1063154641 974902318 269527490 532976654 528644400 1073082365 942765858 313700878 345304105 907040873 483443302 999844286 388418869 474103351 1010856617 457999450 942294787 285689058 114999092 630756600 906040665 143700033 554372205 658175458 678847390 602603264 683164842 791083076 784899908 689934832 720258824 384792132 933762744 979356536 449035448 435690910 824028937 747710127 697415670 182025453 504086618 314269589 581882540 145440110 437670349 427370783 449902877 553746866 25771610 860083015 680588877 878088554 211589354 495212127 129424033 580382604 378028216 150029072 560500632 346967425 1052043419 796449687 203191221 660740793 732558382 793221562 699852299 119524821 499009965 784417296 344010163 46924863 542661198 1064769048 1069353713 82965899 244911468 248473385 772142587 275528044 978032595 1174067 830348279 264469410 592718675 481928424 718664582 992128304 360480528 115675891 63519237 122362983 378464463 42308441 55986913 777970479 598964270 809156546 896823480 390221774 813935333 330414764 301753341 271671764 505591526 974927572 504841250 99918447 536504714 956021976 205248179 463476977 892583413 808154309 575052535 266426403 860241122 446667849 828987486 903348065 282636160 837258342 1038959547 390316782 262018851 411924015 666214421 742715990 192829309 518346104 498483314 66750726 609425769 252657838 145419304 134178841 243037861 358803658 291315530 161635423 905111960 1073673664 5787872 214688303 936595048 560606615 861468628 400773785 950352087 835080109 680650832 725075948 485461831 879504842 305551475 29622926 491305545 528125107 502796276 919434951 954686241 685949018 430188911 739798171 393859544 288744665 947273102 555610889 106366434 567258820 5023124 79522290 633760416 392301584 429534305 654910293 441636469 1019221613 383216341 444639222 833008652 128945716 10853604 630005392 941150735 417598376 861131517 192387617 738717750 700067093 457738001 706449142 525099532 226733099 1015411051 291216782 849708055 334546175 429939218 23042881 960995945 589932649 299213467 617978857 756036566 498415178 981996648 913181025 41151505 502088105 765575534 779818382 206498568 35089572 308299629 95474579 922455776 437979726 912919723 818156183 275268432 1010800704 989501959 1049286220 293506862 136835372 505948119 644566405 648339172 152628706 480132982 646884981 794806170 1056556123 441246553 25805554 916802944 227939593 317870793 134980341 1035144241 413852680 639122106 334055207 996762581 76514919 233991572 538707835 762865108 968469078 294870353 17304587 58951939 528525671 48337082 894658093 1014678139 82024534 183393636 110572481 349463517 510852784 453067686 799021824 577185676 692122198 888550802 1011093613 306326245 691990228 181171899 786766284 977991875 693542690 857796754 768615145 398866478 531829397 72996835 691880818 840149512 611153712 476312038 560410245 825514437 241271485 931517842 781020674 70258104 71216534 374490490 629153926 693066679 901848683 90564839 146489018 783572392 198798152 757297893 124705838 991062062 849227277 120179324 690319848 1001780533 594331849 182419386 438698763 67944904 91952995 262086475 805588683 795405616 812890347 458943973 867444657 68051587 912652089 560684212 147541714 390515162 772029123 827574910 109174197 687078004 800662471 517266889 333283866 469876035 244475258 994414260 230471285 568355639 961803325 264174748 969719165 979030717 658524670 196573014 704870219 200836982 824547424 757194667 536607734 93924063 227635554 530049717 577518806 533402489 408399877 46686515 938085531 254873490 354272478 607842540 628268166 760664104 605473565 291905826 599931167 922403778 1015460070 390079159 737501426 988664761 871972775 1052281144 323479502 914591838 718377955 131147655 832905021 953007063 227308187 233443995 704685278 720116440 840724818 787168004 72860740 307509797 191235663 280168858 167264263 481703375 537095410 168837625 1043619164 313847306 820246007 909993458 529002948 533311869 963956756 629594406 585684692 464122817 622309751 868693112 940728640 208506946 688025355 6042649 156308453 739686438 605107931 828886206 974655600 843517206 197898491 40386060 154278427 859710235 200109048 142497751 756534089 340375419 717531820 754755855 636308712 522150921 277769180 31105239 704705806 616212853 313410476 755203378 991836025 214395941 527259352 424641191 826745854 969392792 656377051 768824773 1032035963 559652378 442997683 971687520 363478472 340668338 57989338 995662529 87164441 347859988 835215603 151559663 895128510 404131323 220663234 874860394 100478433 1023161270 802761427 964181671 748448971 229075589 201706380 312340025 424349034 288289276 948089553 166181734 662095376 151219214 162533141 78752102 690650484 61968906 721338908 226619599 567568642 540992839 119167535 53753464 781549748 497018881 711669273 123410037 364194648 339135717 644541217 809090263 202293437 657528123 655636069 737220429 639502257 999771464 504491167 1057486900 364695530 839833514 973732759 534886330 381200792 718919381 362216694 67896161 91027643 785751151 506171267 463100448 754881595 766471242 514234470 482996681 317458510 309768772 55332737 398430601 521316341 537333241 994175522 61513241 275524385 414489563 537033252 1036895153 302907167 228910505 718125082 1035348661 1027161675 984243161 559647162 607592284 779117974 108607693 553089207 131220082 350105885 979266795 233456118 196007963 670592778 429712649 180004828 700820141 135124530 103660080 147697121 625999397 462926161 970965324 423196589 536761192 566315500 4541905 230465812 341535973 678507708 511722711 442272089 382804808 542443321 988321339 1011534477 686968026 361013429 24196195 87957557 1059472559 973913447 144229629 967861313 460114792 1073398459 50398172 779481764 1069012078 946635942 636904913 67906366 701079232 782707475 1001312407 750322041 937019050 680338921 546437348 619296603 920229637 1057365567 545549354 26704257 424703522 1040244527 936133224 54034054 932724555 134819160 373650244 743782332 998458227 870413729 538770097 617742703 987830275 589511650 881288070 376687214 743656676 1071611172 524361449 277696621 177066117 510097323 529148478 56568453 568644954 229333951 491882204 190045880 327303713 578178755 380089395 733130785 954850816 1042475613 443787918 439984841 1023392263 132105199 238474491 167872696 58197095 5754198 848597502 994544968 71093215 291752141 847266537 16367168 965653785 986480952 689838319 475808045 734225617 311079152 669417723 646741576 563705079 579821798 752541227 919704449 804308539 501880869 90863162 601165366 142233350 950137144 843989791 580772126 622570277 899813031 97260677 319084321 206851096 59864008 123424863 431065604 833745978 636150506 930544442 826252612 550882151 562273125 804350329 535155464 640230228 467534739 211438876 230901227 839549749 731702013 1057608580 488356739 353769503 637145466 737050696 828958546 294733293 835621684 35256959 744499389 746663050 610428863 167268504 383374234 1048368905 107947478 658201909 250313689 165508143 652925202 1041502900 80248610 94230315 405863969 602269565 760503517 1072090883 33394363 70512806 93938275 1070107086 805786890 365799179 533920438 519769084 110162708 967189116 851857691 895797445 519119287 887861757 290893512 486951674 458194347 340313987 620307340 573436864 898901622 401781615 937115927 479965048 690214453 365703233 981192601 423513314 445760431 515821571 767383562 618478044 826069480 886484288 440630 875749024 902015363 390218247 568901865 431510910 830030179 441644031 910723666 812803709 224070534 1013447668 127594210 368318875 458060113 591132722 503182785 939575220 998891759 737083559 297384153 203725520 455233577 679528199 1035362865 202603209 181570184 525591947 656448623 857903733 440769508 1053826178 23918574 382549173 257870003 901660464 340124 948378639 1014525106 763555123 1792170 423435154 625627880 297525284 291033501 219402640 250530516 931607919 640668158 71389258 72297341 727307990 546545355 526264310 808195467 553746708 707908764 568929793 344921797 544545442 878904056 187158639 610751909 929790985 699578718 135030546 155898220 162065856 142365765 277052499 783146783 917113889 954120640 123126613 945268647 786085791 52796796 291572431 469946486 236417080 403942622 432470999 170702641 1063970400 252671581 496683990 938398243 811897923 989354050 998138811 234127585 1026167147 539370990 93559480 419930702 185504918 246070719 140409133 148315524 263400108 163110581 268376135 125709210 641316052 832500524 666776736 914687406 232431996 37541033 463117556 993276695 27945405 149090414 652816109 277177249 503085989 363676042 968691159 979119802 1066580191 275951145 42049901 1008378635 98359917 791170810 525987860 653635737 990661802 244904745 249050136 108560409 853400716 211999453 619383955 745433923 963202163 326248641 148878446 631248875 507158366 597520540 722114110 947880739 636535296 583968557 452726130 139807717 463381137 310117747 58627317 945092644 988610544 61362921 1035110688 311441465 593405409 1040976311 763022369 749522678 453261449 744797320 378185274 724831576 40071069 27937973 301791961 54103278 1030604491 541487412 793124779 41200378 44132930 215877525 38301013 17625568 74500071 298116590 114464658 178459854 989568847 123656172 603701225 528827418 899756950 841512982 592518804 95174749 1032184372 333757038 531794545 673215234 555992715 147863352 1019118346 828781236 530109903 569374291 831647290 1063077082 922454693 853979410 1017283188 635331024 896915685 1037988748 635214108 1035507660 991603962 182768453 316352998 670749721 524422772 244055941 79772197 395884036 808065510 576834758 841382155 1025757357 390534864 315090421 593370955 342488771 726956727 958871421 84987140 717037420 434648873 974022414 969170614 447737778 692979585 78530017 483394383 1065537516 922494997 1051715624 723800825 415995522 88194474 917145855 766891344 426593385 120056089 779192005 740053967 105383554 786484446 874554208 909299816 324020082 560322475 719276115 563003040 1009726619 1005128358 95102460 581270532 878717102 472833618 101162309 223542605 966157435 152359 583301298 287693117 533694378 953724083 794321074 366957795 593782258 553158366 1038210592 68274177 209620882 239110432 924497890 724374263 804731560 167564438 257681366 357701025 1022574253 581696449 793047982 435965529 928052725 960127339 627128235 154560267 96790883 846591744 841295321 139021127 9055755 698568518 79620871 56984886 1029534068 238043290 719976654 612939492 1029615626 879527904 342744740 1014251234 759388714 334543835 389815579 411518796 753406367 667915934 1055529297 537082181 423188972 541636143 915491560 318954475 830626599 426712928 701958115 1061410896 847692498 780436563 712568523 510130475 860027040 876743130 2235595 898960552 871478873 719487955 795889479 47502846 142242555 662278349 751233106 855004506 862964858 293130936 729192180 236504256 367976007 1064112510 456886907 65481576 351440300 872787260 1031718943 298851583 614531943 760212477 1024379894 7540103 161015086 957993720 426312515 1011344205 333399322 7415405 305585966 772041233 602329393 267914368 832376061 13152665 522183107 647941857 686690523 392600408 633531509 378549722 1003407270 896678885 159332845 372099784 643611399 718972391 9524891 953279453 30389084 654873350 925494255 177129804 482452508 194860696 924479043 530760543 506818052 824129586 548412665 779824820 888723109 702883889 286899640 427214049 377700235 570049283 315295734 1053617496 67502749 59610559 182610682 25448940 741709320 109995291 886405012 865651145 203376014 778134739 1007399543 711632368 888125777 345829652 665920576 490141389 155725612 395275516 409768884 272721416 238191539 645426267 712456723 265597796 789065426 386145766 1001285423 242152905 173478928 245380581 694353421 1028821822 374411142 772355278 15209670 915954487 7390709 468138268 1066269372 850778383 893006357 194529472 635170264 831918294 829896446 500735833 265238735 79500180 761486645 278673196 1049311119 404698167 743237082 737616108 712979826 163895552 189301494 1011323252 907132994 492594337 876296830 532763025 592633184 445860878 501951972 677538335 583051640 568162064 62248921 327199871 390045050 569057521 1047884398 421997150 1000463697 21233278 386596674 789062137 341753087 872834707 603759063 135385976 222493511 876056196 1032797939 364065615 297313028 719657206 248657671 303496944 551513278 370527361 361281541 41434318 10837536 842884802 677545999 373779698 68532339 389228930 93598544 1038469785 859658418 646824163 190056870 620552866 838402222 835427907 40778160 943478930 705628003 826884723 726404841 669954633 128025426 608683324 660250072 227952765 811797201 783051508 766280067 812208868 962773042 640269261 790826037 996556531 1059129439 1041031424 882786521 658527183 244404707 361310677 636159798 823423106 379905148 436620628 690774938 352349277 212676752 792766375 981352091 366771456 972140426 645512994 760925657 183407160 623972225 795073146 8506361 278737804 389668189 1030001819 248411626 152112004 925071648 624733092 786169893 931245271 220539695 350671325 796808207 652869152 113928098 117545171 1058847711 740307929 244490553 556690422 229102553 1024049103 601308508 644849918 14889596 519539804 477372227 868197289 1042118263 533581050 290066657 569319567 287496605 627210518 473588778 802667988 411922203 167146726 471704262 192646651 2943636 42627690 929041713 383415790 913476939 799800905 225408579 600738272 638388499 526377720 880513864 561245676 315796129 307064420 870665401 975056409 813810652 445091520 505592347 205544468 150388492 434712982 486190746 208690720 411015519 72820380 690171188 925748625 570042223 394085533 1005076052 555374173 146284337 291465048 396048226 922168957 29318326 924354699 22798692 186768447 470237173 1026716562 828210447 804605192 880118981 1051651410 617506106 109595851 181435020 74944409 983940063 314913782 204969716 644605186 827779019 453264838 742095037 1035299314 751416235 501657336 84508243 1068725372 528781631 860151584 543124844 534902230 691572213 965914203 323596060 454556496 313764811 246361045 42024443 780643771 174455633 672634360 514517457 204625326 667169894 98832055 412470571 742774872 499811494 363756512 545009309 54343140 491785917 5721727 1067934866 278606027 275572641 417367001 199661783 946938114 26652 779457609 639372019 199138077 918978476 121957160 922669172 184405206 963754243 744645065 118781129 938165080 897306078 292511204 902382765 464668288 1048956476 557515605 567307896 29022222 282035347 416957113 287068575 765268768 275963905 40113246 401653464 727122750 31709660 506235477 472441817 540240264 389599441 1050771962 400250927 315886649 583183020 909517488 860982025 509865819 708373587 365737849 722965800 702642028 487975830 384145993 718305249 81620815 626529075 1043556300 679815317 998965133 937820929 136765241 1052043945 599998144 945724681 759364970 101400734 713610062 60533860 11663626 364891601 692130255 234129807 228765480 658062577 575204872 970111525 933610561 965715598 417859614 1047116294 1005746824 15571584 314339556 1035159695 156063073 533034618 1028117751 320528937 198407226 699021849 300809854 980462855 630660348 156389863 707063525 827586003 477878855 783932216 22824080 274203155 72821661 746852846 541818109 43990428 673451784 455362212 91602265 155703532 219585391 822841323 810360733 687430986 425317835 378794303 453727136 163937162 60503166 536796769 68757464 246042434 337978026 645324435 321194433 30204249 885650875 136397770 239989948 244958522 990698078 483250897 535269813 334376016 247063349 50173619 153568486 399371610 894760566 34242439 1053922512 791627421 365821562 1047163424 975386421 306782956 875952366 957914602 997318752 792956718 305915353 379472964 442505407 749800032 776878297 743011216 99678255 986776934 829374763 514196848 763853859 636113852 62390237 772828306 990015141 316259598 492802138 941233006 849928198 689736685 301124303 630703337 509874347 685798450 198015780 64151689 994569956 88960634 523447443 640546245 851943949 936690123 914490641 939929218 775887313 175022585 996062398 976274557 725985936 1024363079 612735921 431054276 576558328 682548516 930808059 88352511 10904591 251283272 922504794 397863394 977394568 78437235 383563686 323812434 889817700 359744387 17953364 510921909 1006265324 447978591 801079139 870430019 737351572 554057134 397361393 31170692 804283512 791935345 869615116 77394527 540426591 818096636 338872780 639208063 846298908 938654223 589631275 960974134 552780815 700841279 476485234 463116915 310300415 12953093 338801773 390203357 478698350 540762424 493635350 220941393 201325961 300034413 688237152 968608943 787636663 320418514 697857292 609299283 849497611 569701705 991830818 159283586 938916332 664902094 177030704 778201349 331466687 950282535 33637410 849615466 350037272 889843761 286092882 656132559 68160035 541780176 182572749 616247357 862464790 572148761 688136481 652517255 113055978 595132760 943761079 261186876 639401008 388999076 737359442 819812343 576387175 234654314 457054119 846507858 494173226 497938418 859867029 481985522 1002151958 1018636414 50601171 955173544 37777680 301839447 902445590 469075593 491053963 500328732 701746184 483960798 709895027 1067864302 788994516 138858868 291787148 825481689 913007003 799073506 837467922 787203556 1062746348 649349422 751292276 389726803 562952117 57031864 396192840 893356322 386375906 848268500 378235033 792585259 573937558 703254136 289072160 321395488 518588996 139183389 963549491 38504078 746586936 490514418 864941768 853325601 811669219 523390647 691199249 875475498 394036640 951068602 471071272 786579632 223960160 164929889 868961204 1019862500 384797520 327953809 249059276 937787759 957590230 313993577 281295960 1068327334 65616776 730384769 742804975 227410795 777043794 311164731 196041960 338307108 781166792 438864702 963741281 365196224 80511707 361721320 49562732 834680103 982416486 463579525 961168921 1061425992 581398767 37528432 389962129 75889165 478280099 1061694689 420271399 520970428 859010407 48103440 2758326 686270529 419545423 451360617 456264839 1044714096 756262303 854996409 783332865 1048520649 125125012 440266068 14249536 90341606 630082011 917815674 180444862 22439082 556513377 992264084 511124498 1007315143 947998254 167659475 585841495 1007574555 202320904 385259985 225363939 738093713 353031660 524146381 365347473 631048310 300403737 878018359 150710633 630641253 402571496 52382440 9593710 714063923 987305961 920714943 1057123886 66123382 515202298 13340136 129990267 774568478 376410715 198494660 726618501 138271126 584640308 781172353 615892214 457223768 1054432741 418748131 694263217 997449505 742099279 881172658 299572579 1041740560 481666524 275481978 297092800 899679080 635804663 138838510 861707427 658087389 642397824 765799687 731396626 705418387 706605541 1070432838 463920576 154593126 1072103925 936881229 519343838 337167048 522381119 297706361 537314080 416711758 58491716 793203543 310528589 916889469 902804019 804692209 943515242 73045678 125861739 554740760 385808985 704006919 9145131 820486842 792616035 629120327 708697012 321875639 387262716 299462927 143025751 317401943 867231031 296237737 296834188 335984803 125195552 123830764 698184833 593698045 359272305 835695608 218244139 9083002 351209741 165701746 228399968 400291390 36153930 727184443 807197895 788926547 866533590 989139315 308465953 656023074 174563143 658458123 915377637 159904571 464092093 542406056 287832379 655495159 737994387 739403065 761455543 816549818 550408294 79066700 925257807 932135846 850048262 938459457 422445461 281699075 245590867 301522356 949604926 276616977 356924848 733042276 209254979 397421666 861160568 552102393 343430006 175667081 472470946 982049089 33899058 628553527 674666136 843079512 600197078 407568813 539300623 761384287 422252689 271744919 263893105 928676772 866520053 984304439 55660699 743619951 66723671 18663588 119130994 1052605926 623914304 122728730 905739600 905616375 708858716 683142777 595213645 833338448 1061425774 583408657 852526490 766457387 500183955 294969702 503191736 872747483 226027284 606047252 660959461 930651015 989325053 609666217 754537735 667250580 839789940 655325280 774226799 785136399 428296515 924638956 227704967 850390391 305304618 896429477 587633727 642125399 798147502 707181674 227193500 261366054 381116482 664032653 434651152 610679605 913223546 337677169 895354041 898188668 245070620 340245426 272947995 282889416 981619912 516921995 517250231 568568531 48073407 136694859 329428321 647893827 512371654 668963213 834054923 754479723 393850151 859503890 856333569 720843563 42933589 115217476 627514714 432874940 957444747 319711712 370443337 53708342 143459688 267850919 654443280 854818036 986657802 860862542 484756717 851446980 1020681837 152740711 588638673 791359623 546904156 565712808 534840572 879540640 588361784 897135249 417230977 439515507 1072597931 753547474 831945110 846683593 563102771 1070026796 1025579460 31329308 62594838 718891319 660612856 445760856 713135365 662483532 396654 594894151 677489286 650826556 456321840 834666322 236661149 887073240 248854735 917310294 303346432 832846583 466227285 64595489 78738373 749584405 280264044 15046692 208919708 101334047 796738757 129341847 551116101 674923070 852224171 837703017 461264902 881159030 675867503 42753679 803531059 784504076 828175008 612884964 799633757 285586716 100154582 15215058 950483453 821715860 40108378 344998528 475360416 301417701 867982374 61653391 335045565 169485053 442787406 1021537862 59797066 949616871 1008772810 571751948 1042827391 151908195 947971841 749384404 1603659 1063339912 747232714 587561867 889516578 548868471 747293441 437729511 898059514 762201819 236644151 453301949 1063980650 690927121 598028497 857843544 264320260 269677638 682806089 465233545 249710189 309322133 642288609 1002685368 294168316 1019625766 951592601 562203531 908912929 116175990 765099971 99330206 159427133 852262671 720892104 284437666 635649356 956989809 83952136 653851045 265478080 218906885 823596732 696959919 692763494 788958439 777970222 648091573 599091138 1073624132 211534531 460694216 503689162 804903944 254279844 337645160 994109805 578325026 78443476 930245407 341353885 387698933 273549031 614011074 734872516 1068508272 378241355 36466450 916891649 296349766 597259780 655459641 466668563 326864494 628340049 85469950 304748910 760527912 628710686 652340248 150139639 665828222 945920865 437172796 388412712 835620358 605335764 345164396 451826196 998263512 50919447 884223229 757657881 942081635 781338085 668296466 265192491 221971570 514464615 695656924 881673093 444892432 468535411 306305057 763794100 870039994 827771874 852979678 990393808 518000521 125048023 484394938 598841070 1023500642 916910360 615842805 574688388 483553017 943149072 675239181 507448138 163368834 706862421 690540433 324518921 231381142 561393601 653542540 690839547 698939224 312846750 12242449 528253010 1071093825 1072676160 568857722 722199430 421841708 27203034 31745475 932145775 110956804 15903361 72231219 541261319 580136306 132537045 244755605 58707936 1049265264 322362697 147273565 631435960 518150590 756676938 445409970 983164224 459864528 195339400 40425882 52207512 581712415 42272016 227537773 265872112 625856184 884964607 913830824 638906184 986365907 767943744 310662004 661391422 279784565 303225039 205499302 208242573 79602554 59155256 230998266 929984817 982952147 69909580 875641791 284655569 966981057 71222218 604905667 870763729 559511962 146137672 141675234 1060433868 223040553 470874776 410175356 546430289 294853294 786379183 787777236 924842866 513345948 959086669 828801601 344118876 186755349 483739242 726314185 95045175 965223287 662831738 87332278 871214655 658215696 712839952 228837972 484269457 438904785 361034735 323187969 554639193 625628422 142632575 577280166 347062723 682809758 329135104 898852924 989152868 722212180 393562270 514008722 142764490 31290194 256659911 741428014 629472528 679849869 57814982 271206089 183529496 260153835 566643460 82852893 138391975 627393378 59250621 533423249 464655815 682948198 558854578 293881549 1051807053 821997487 882326432 157305841 309381820 793136715 438903994 824873734 98521712 797573381 12010573 996723803 110836452 704409643 35537602 487984868 537934824 312396059 47573690 496519709 467101955 783677346 629251686 484020813 564784446 185932873 524280885 75199099 147123964 752723326 803106184 72516014 796294125 570381637 253326069 688458222 1012534929 698894856 495595562 280489389 356746936 663021924 11909569 501139896 521474936 352747635 1009431117 863686523 486913232 1031123867 445922783 563332889 520148698 960166315 497252050 764356727 678824027 630211224 611955110 549175332 648717936 435648516 973816130 593162955 11737278 1006552753 800062709 468454249 239522170 256706669 433011952 200603756 885202993 478410555 171204242 1060261898 1053811657 860062594 498157799 927951948 638850121 372661598 181530351 763982343 896441301 516995782 844248866 708704854 681939294 860358747 898770148 942368703 955128094 916386894 854693385 477690543 555948889 774357125 780484253 330686778 487569230 110726122 1058285787 506582449 129871100 94982251 708439465 336607355 264716995 132473682 446310920 274785547 655591871 877131343 524377335 636379427 304346744 495056985 890364280 1011327673 932577836 489325754 690635174 704504427 150521178 385939193 539625269 287461320 691468264 772436466 7623748 1051932523 704921321 924673267 869678338 665362978 1071605583 1014598052 737363431 176629460 960454434 1045459797 588933078 120100695 432748234 810517069 69814808 232861233 787462407 614855119 512910477 564961437 1061241608 234665487 652101312 158886239 454518778 442750664 1037579465 413620962 307344101 115156826 436323456 805379721 532215058 233193880 966646710 923241597 594190457 374544901 980334862 1017985634 656998597 519729542 936368524 649798023 320607498 742266748 652941921 317746916 585574877 770348083 968493028 586425049 362267989 591003726 242604496 76631315 317730751 482089491 192340402 289142455 37542489 31746136 384490306 69756908 173849421 243952072 89579878 864945583 485561853 564877543 217116770 306292765 779921949 432552038 883467572 598170853 444177057 498795491 410084689 736737028 149466582 114596986 922893505 407451557 62363671 705653303 760697691 223094156 787427867 560833706 832573189 136838418 84109751 590288966 242428770 954534227 224306436 222216329 738287079 659297536 6745670 721110093 757567113 387902193 90034589 384361943 14571621 238307066 902689814 791545409 381996305 324853420 1062008443 858611697 568011385 486990215 124295659 99846573 907820019 333861872 54790508 20776480 879256928 1054823534 1039504634 1025726932 527720720 950548798 548067171 994153509 716859394 495714790 645897184 754122455 299987264 386468918 900762135 633645084 430725503 115183329 395324173 892110639 114395302 77966029 580960911 587896108 200448204 856720395 446960035 944184209 482117135 890330142 710466660 66994333 954412666 851678678 326999860 332352491 99041488 779453746 540499584 510199156 1025500058 220000176 547205756 574065765 877388398 514163170 62288642 303874915 854268804 844143541 771885358 939768991 1014903509 725946097 927081635 1051032674 626785215 587700445 66312549 313235353 908371151 806206809 646769533 244170399 166897733 605728780 979731237 676174635 145990531 408194982 803187174 585891733 310581822 1013983607 436280081 475415771 92775760 44089979 61016167 433570047 174124506 540131303 592847462 555061415 475123342 1036618599 625646711 876900824 123981206 476913342 892915531 562581077 986512251 237142296 90501125 326477479 639362902 897790396 860796749 402368290 630201668 933200072 788931215 20456963 64768434 567485119 922081206 713990973 927596949 590817648 1064590919 2684594 90177899 962896270 327513026 113878784 696833840 869161789 420398423 905366137 833290902 560914516 754868580 1026378755 491806177 959666555 116944748 870809014 6744404 862513453 570986719 595547150 17368433 286476557 908872567 970197189 79379156 217807626 351975000 629621225 1052084183 388140662 146274279 938992499 541239020 425688861 796952892 438459559 187690752 274000884 907650859 514145336 811909148 744507412 1005774606 61608693 752085615 694440977 758758397 1005621149 199719240 74479509 244372491 48112646 675890679 243683570 95309733 147481976 828115113 536229954 907614471 1054700819 678519714 648325078 1012884630 170306218 457421854 252658998 449733436 600849584 277952696 722761521 388535177 7278096 335592448 162136096 251094868 918285996 1016945356 172479274 320349498 1033355805 789626615 494215455 647091417 718191566 268891320 397652588 677573613 692043389 898044676 511289805 84386719 965780825 760618816 475824207 270757591 806133993 754521490 536049263 350450512 164998471 131705778 164505322 463998926 378966051 514626834 39311182 671339682 815463967 348670460 591361078 214469431 867131766 600652831 734565078 458571986 394292527 198594424 24783290 450138714 622024097 970184526 601575573 178780138 380899183 91673883 939965966 864273597 708987702 956117862 760057396 138966925 301937383 462036526 527006393 784270848 446831729 885065403 643612276 172806583 645366928 73435095 1006174516 451814649 362396826 597781887 545449508 364545309 427406354 148206129 367339753 326760735 81651208 139353876 31553082 949540113 917996674 797676497 262428746 610588320 1028220778 309063833 196667552 160444469 896429175 468779071 388603787 461643780 609554197 942666028 88166832 802995435 885938978 321541118 218135263 970549447 450062664 683651245 950123892 275892045 632973920 248699336 794952015 74126440 1018158170 520234438 286095221 447793866 528176867 1058900935 575456902 333836451 183178889 708693148 527986005 528719870 142391661 204754873 955260159 1030414949 742608438 962392818 712583265 374957082 263268812 798553077 688977483 512508057 173900878 929515125 634261137 23680476 952492668 579381539 182339031 76877169 659002892 997169097 1063218923 708867762 726825316 760758129 820446995 61051641 125829298 625525863 647012577 833305786 199976870 444589638 338330221 623788560 330786286 427425870 922864010 465763853 188092290 943550605 934922304 138688923 580127560 278267489 1050562333 754407126 876967409 335091768 1007997528 737194042 1442990 905516743 145154675 823762121 736945630 801774103 742355852 873766074 444047109 1002385191 536314679 651284368 731315771 617016253 719426054 14844824 4190428 397557403 94487334 125822557 409169933 548594224 231742053 1049605559 9376058 627121024 1070975202 42133567 753157839 205778950 448459754 412904099 250089164 829503120 280121354 560373271 899903099 779067780 643941725 959089896 187593336 960631600 1031033060 256052046 466436324 288863500 279324725 457966262 741165889 347309096 1057242932 481674566 361400054 114641594 134700692 994225019 868658107 488672019 85051490 933624480 275630055 992404743 22302439 463740182 482429284 309047200 828007808 867043863 56347887 134234694 5084754 123485924 904190974 471742993 553181880 857136920 491089250 1014268197 878392617 93280748 217513064 743085731 596891424 1072374801 80089013 910910634 735327322 268326717 1027745339 347108120 894668935 1054207827 891841689 694715102 633442080 874129232 407580214 809336501 970749697 480582632 897894571 71062916 413846745 762894954 951177792 311985713 613450913 5624423 333142371 733487154 52620817 589534484 597263493 686662772 124546031 327355291 28064003 546700857 170226980 809630216 728273218 279133995 324647113 324263831 1070075574 886979677 163191303 379291190 598376912 220658205 163829623 364265354 840363892 15896420 93268214 561433580 999513608 173148581 392097276 865912263 676563563 518662343 708300218 545533397 66764484 27306175 194929468 916501415 135568623 812672756 289127878 786286324 140385225 141033400 952830893 87083981 184390020 68777662 721838732 1028620606 818619818 574964557 1010456434 726688351 619108820 1029207266 364656342 302863572 99901426 815480342 1002965122 268718100 102477445 872031585 523923902 54608530 615059012 455814821 362545435 147714527 1025742901 667950733 696209782 923310830 569487426 129556183 564322726 538500230 458365637 293380241 870983100 834827753 379738014 517355925 588453322 542940058 416504834 755532037 981686817 523667585 786653242 419422075 79271446 23098730 650458584 947981590 1014856978 471412749 612575426 392992026 861019823 397774792 623763956 326740208 656495750 489317757 571483433 53439587 30522017 129971830 1058312709 64981378 108433568 769549824 592818577 866585631 162699189 307410293 818000062 899490082 453638095 134845037 458608070 483675723 624395419 294955929 463622429 516528845 794053272 513408761 193827420 93438931 435039620 599488118 921704777 809419176 1012996815 294104176 666775176 791056481 271445695 174713380 943290550 734361259 529568159 129526661 936661446 1015287862 184968717 240413593 891861388 1015134930 176040509 217329737 696877680 1619791 623347528 1024435916 629279044 914080925 31898931 544580434 901451337 814094189 675278151 933522742 816237795 653809091 223696115 887779338 525528673 163180850 1002991229 672042009 97499379 374701347 1072408962 607414900 723724334 940221157 742878233 901040601 329783842 786508209 153943006 348851320 324549107 498119148 806235285 764802142 733336927 623634379 319471385 547194145 288873993 67235686 757946537 872491553 367725879 974402902 1023816559 94502158 315921488 967919169 851652423 918172410 267816030 623580857 950316550 689042784 155212978 1008122681 438465280 49556800 242600422 29838024 998179075 764865091 833080238 147824213 632363446 29945840 953543255 432440141 515063252 48066005 397029193 873079454 1006066057 781240418 491536212 62466721 779108002 414670368 27845765 166363408 784978401 81415935 630072831 8242696 827055347 200699837 602747380 720511541 434382251 197171411 763140815 43378104 915056041 21931151 1070982085 570534011 762976816 24439741 1007814181 263087671 264555862 353781116 237153349 187137977 420089043 927391748 259457291 433109009 610888874 96704388 92942275 883179034 114147073 863876890 542478141 42879113 611570245 190221838 566454198 961040760 144282212 947446128 405972474 661405548 990328929 25836360 962703176 499707426 522996978 738830261 647495004 1032189413 98429212 126407883 754002286 62339813 448295181 730551946 214823233 604191457 875306546 832827250 607464264 516618766 85898615 836284285 104105843 309873360 109329989 263959301 903771033 724464761 729605885 560454736 959472595 686006786 239335750 582399753 668471147 910581110 230892699 322686006 761614797 331979601 951109481 76376509 89252479 109161250 667286730 869919796 502452512 588541859 547425007 936309037 842261205 237707518 262663451 199306311 336528823 675844893 775442948 484825004 827466979 85259823 863078847 574831895 776078993 1052718331 528106627 400835019 82131845 159117426 128458875 362267032 132347562 829630248 763530550 957190031 512871561 305249226 653639325 949350710 235567885 906170001 326570074 26497269 1048326940 800266208 499610422 1007126157 500180380 373340968 797252543 328413583 108657368 894412453 549520682 149807460 864082898 434667496 730949546 588755151 363870680 579113059 621762644 689104209 603378210 260931632 496812031 432075110 262678612 512839359 128580870 14915198 450653896 241173237 377804304 31383902 1030712984 919128535 654510463 875690453 721020548 22770554 474893502 728734981 5425781 784522027 569084849 568089093 204393145 803961143 5197206 621139063 489214696 622982029 441052867 158894143 379780952 975617271 532766331 724099479 919178480 25257448 132110712 660644105 863660753 150320206 704278913 808340232 906988561 406856059 170341255 1039313983 680071470 645349146 925759629 922582110 611245401 593105081 486679754 1002719753 971628958 643627762 858368861 169863186 685236367 151276323 608116899 652442840 324756158 748957354 687045399 42544250 373954749 636880798 83366735 829242436 241362452 335873357 402642806 881198605 803666877 703018240 331585490 413281102 542006593 352648017 1041133957 948403324 877855059 546792425 881187735 389360066 492052357 825681834 757711286 164723594 17315531 113430280 636421700 407654245 847232196 810397437 282626478 328211835 381659386 599685622 759269386 335342488 393860767 119866605 798367274 115808230 777885240 966682117 853022250 612859724 670405874 247913106 374323433 866225747 158453118 113453804 789621809 990854354 931687849 474710981 610372801 243437458 767905958 968354802 678151589 128381403 25592608 679833830 592341031 954290102 759580475 451315967 830777117 1046647576 50110039 775784477 116939369 26620107 171132635 147862586 206667630 86424337 870839889 804424161 341274606 227615107 185956610 204687071 667760539 836106659 782010139 590698869 364543007 545281553 902017558 130604527 51285064 1039219242 655109567 690310704 695926260 659046605 8294874 337702750 958379758 761042309 787105285 20430614 451030827 984720601 721981030 98965328 553547662 746752770 16473848 424543437 710834026 194621559 124146020 456069707 994569473 150005329 809475490 330656388 631492904 565981625 402576292 256748861 18769281 334381209 553052548 378177402 542908021 238400391 1026588549 425765365 539420889 247619809 809729815 980658892 287235551 258483236 416749215 991105890 475731050 344473816 792865682 499670312 962029822 770145849 827963462 977837420 858814002 426544685 899410302 868146642 165752372 500329409 173291599 421198257 617109611 342777094 993144334 335083443 10850933 965755321 1073106465 498179663 937941421 62629591 325898391 434224847 793183599 142450550 237796271 1012411991 19620136 356747017 570340150 13456594 970269538 775586951 7438885 882770898 241356219 437305953 1010279352 627636775 812111381 868875262 1070847402 670640198 122216709 441303699 498008665 791496844 171323494 839759070 545969110 808715047 273014285 998365000 1023982406 626196561 713226907 1037641549 471101630 243448680 896392074 681121003 97719203 1037375664 201349835 750962961 821020373 572485150 900142493 508038837 815837987 693371465 482279492 84409690 782940941 224354671 518342700 350625036 756973513 455428131 913925288 460780153 92479005 80002662 239905820 1015425288 529379818 373503279 117361899 548338882 74440989 634733764 176252614 891295631 96822711 1017761346 272896070 292861178 654454935 241131663 980542293 284761255 595739554 909554943 586750309 429772168 136691040 117550331 114091903 749961181 580095851 927139692 453036152 456594093 158351250 575799451 494561541 1066109596 782231245 625369099 303447908 744822987 809237656 451305210 630268338 416983743 480419507 591959370 359978903 942019527 920990168 240753891 197297193 543656310 1037760829 749136953 1009663011 196395602 454833748 203853562 785504778 704579448 539456588 591936977 389899108 197477378 569121461 310676875 870035626 490236673 511133321 936304651 502857211 992260552 957920875 164004445 833485835 59264845 565861069 945681625 770895801 985499242 248620450 193224679 308535921 527837952 140547354 922414205 435971041 96620335 427781457 111869379 25537855 275282770 278236535 855121272 633330556 127777440 1020622069 172042558 147622264 405021165 527818240 274029967 618732352 79655419 675757198 457515058 959368923 862155836 678277315 557893126 1014133915 711922846 544039281 602477731 900801968 373630825 979998214 922958225 1026698443 537943409 1028001686 941401440 682361730 853870082 15998888 788454951 629495693 126948684 343703748 692115652 946940974 622137754 261945118 1051470739 823526611 788410186 199655595 457230883 483662118 373457841 715794460 686070488 603161269 575646097 505335436 109795064 230740130 813657929 33531722 290823918 791187965 803799986 757806369 1071083298 551752549 556157008 315074815 503006560 382804747 889756369 734047363 943236246 803139830 260410386 140308520 703083426 446964833 753604775 104556090 967732170 92708539 626222627 395469099 594829971 247148390 749563251 730318558 731978069 80838366 672716156 991643252 2631380 976867423 17993206 212937700 174320109 550893567 599670461 235403568 521228083 27847418 978637920 1012404805 215530500 348469309 889623117 404769182 400241869 1023173 857096953 340948862 31908821 654427163 791858661 308058545 94534058 1069384252 387868356 269531465 826383491 534439517 111419982 26405023 804280450 386030237 445684701 18275744 563650838 907476284 1068039881 725765837 173771693 839446984 924866453 438833335 706065282 501946233 1007299062 448959134 1013862022 1061273196 274163348 255635130 228861409 579432256 970345071 319799362 868861665 650787761 1021800182 510450135 390010715 31257014 974541515 728749329 582820506 710307249 597884586 936718347 955626684 98261340 522686893 773844953 248472461 703529469 107555346 600092980 1029357567 819154290 1048884914 570675842 142864738 422927857 1000351660 681305917 378702514 210168495 857267242 777627942 929962239 339142537 804954496 578209908 991010177 1039596258 862571701 426886856 39181951 425595701 946592061 973543497 647582199 462659172 955467431 29785863 616301350 1053381373 645583266 1022809019 908718544 241802986 443330519 97812725 867649151 823150114 1023826955 131372555 757507396 176291999 615618200 696027865 1036591401 124624274 768180023 725270147 631065408 924565194 11019353 748873396 99277282 51377444 630507638 326262825 462587929 662928699 793109403 308008129 116641455 607237777 652677386 624578675 617438093 656892211 957247352 1029366131 1010357392 87297502 253572130 817951913 544470927 635423593 270239926 676645933 417950132 924417755 984493708 893244582 452095295 939344329 893783876 123974405 322598088 943713089 760509288 274596612 916132972 515967931 941553373 221549228 249895364 127050466 439856248 519830571 755387960 382882167 377610418 590133321 69614043 151719028 1045785807 220659233 184243970 513493841 938775445 323089278 454232848 715728469 928842402 400545968 756865883 970305375 866661798 312910328 453755613 947685048 670668608 24335122 263586397 766018275 283099560 220412316 910884172 968446853 1032247598 849287630 384648627 383821383 664812555 675476744 354803923 513914961 475498087 53480853 366953771 919385262 950384091 563593735 636314708 207612940 251275958 730183566 43774246 33864118 322716788 391346221 1057512236 897866925 241622859 744188980 1032023362 1009875071 869276309 622399755 962152335 249016027 85514726 282159653 143757007 685961432 736233459 1063392329 31308359 770652040 754881949 21288982 420753182 318339881 374731170 454316668 887649663 380338236 709746957 913769347 586799824 711995934 472481509 691790941 810728456 606438387 530880487 927633407 1043061401 778243061 804040331 872777872 881276181 293927551 1006775484 789869826 827493078 596572836 153515537 1066607048 169376619 276864415 257038883 932770276 547908715 23076560 118175079 681358846 42909545 614985460 885326039 448720845 58718274 368061171 293472119 972072003 345305389 504252602 1044435523 971718954 533675400 222901772 44414785 911133726 917649067 288281100 266958437 963866009 269028016 900251929 892730870 616161849 675272403 790385068 302094385 801296892 440555785 776185167 439292892 48858754 841933218 820887352 106410679 97647723 544899532 32665963 290104628 1020750079 788419531 110281121 394099531 803072299 332666749 735092210 29305028 119024266 1025248059 252925527 526117612 332167672 108514376 890503533 782346746 457204364 753768201 58435689 899625386 625341142 475031169 146367301 724197098 312903834 103848114 51465541 818877379 692012480 1037498196 784822094 434192260 946569031 1051123289 104485952 979409939 788026581 598598562 506138390 470508534 686045145 610005418 637160340 398393058 300686775 833362329 397954166 112744909 337153316 153022363 163833107 838756663 867401883 124096196 235840106 522586691 821188969 336555105 806514714 943388648 270266201 571442356 660783569 1066226286 403048907 196262855 833841103 49450851 17447060 339361985 56662779 182291040 293608168 925293081 928026024 515150112 599801317 127864208 252875267 799446564 366077683 132238959 718053175 891471845 985486819 4598540 327386522 350977787 347744321 664178199 849287585 981273067 823231541 128470795 667948295 1030129980 390194556 558066261 39919307 604613788 40274658 333137419 690014448 644807580 944461088 897382995 233018069 889894019 298811809 613691590 198732824 54951215 106056354 811990563 524056323 510714247 1060839482 509947800 697974588 709217277 370243725 208995227 279825579 889088737 1001709849 969178589 91091239 1053449931 345822954 769444346 987719176 895320461 489470269 593758068 96793842 956381027 506435373 189016809 2816570 718756627 159284234 52493392 228858325 623191947 258527112 35531994 66504243 272767573 417255816 147139574 887584163 226282399 372778635 973576298 110389122 198618841 749060473 899443100 463681753 875369154 916520969 1018165801 184062954 1034742113 491009646 617740247 197555113 47084913 337274299 584847101 857295123 884164317 260317503 780363906 775505559 425185783 360545381 482961089 780357831 804555914 561210168 819032692 1027266890 424940821 174178650 732849478 848738907 1004068410 60228808 194042213 724932382 600853548 876123519 972266961 364342519 502155120 80524829 263103698 665503212 51993557 697065087 639571947 554443449 150890715 606412205 364640797 50119004 686926408 942265707 797571694 24311258 830352557 780076613 700738775 199018160 890106548 201280661 259686472 319692151 379432543 274331592 1044325209 907031668 587744867 164768123 956852329 693898827 538756752 244977891 370564266 76272340 971002522 725869379 920938044 230330613 682395586 504309457 104276482 610014739 70142508 470546909 20390276 548461988 749747827 887351467 816308762 395349846 74068023 948898666 507621359 571154868 653170965 895709212 477847478 635779316 1063426313 724769667 212374476 733643114 926720427 291445484 432314582 875500752 480953370 826278491 507766026 479638384 10294066 393164216 203994169 528164122 1007942976 306964271 774127368 1000128640 117322122 434767549 194005563 769455377 552157514 33051694 939787941 571507383 604450383 1023128848 889441470 588704410 765698842 712477766 743290124 258676969 697971558 862308210 517127658 412674834 379343974 624564164 1004738703 421813984 517555475 794585051 980329250 395733701 292709490 599225735 179873889 1045682336 48533512 803597492 796593885 827372690 1007576439 166866232 321486024 338478816 324434755 737127394 1042319144 646957665 218505707 351559779 158384588 632696614 7097234 736390984 106975780 594152480 220450464 801400173 710431383 113835830 469260314 855271323 57322466 879657227 678471123 1030981680 866742168 53767663 947024536 413121669 1035252991 281205482 908769874 80043695 273785001 210120723 394084842 74803466 198050322 194975233 934849309 627055962 656136982 40444131 992335614 189815085 150912051 510830427 365500676 609604227 763941618 518774046 21731744 763351663 927803921 765292534 765001124 334473225 116217031 394081646 648067399 1011498575 655583519 912933325 821835455 377513514 860190904 1020581889 668391952 563776697 1029254528 794509937 887578426 597094637 573971570 846468854 910211308 306656024 284237805 665477588 945318465 810157105 186089117 590430819 488594926 115547952 2657538 512557687 460993560 282532434 266099807 899414071 82602325 963928756 816485149 931750024 672252891 895333491 232335509 801274798 677008325 842364495 743335749 40135345 468367205 422052288 674505725 272888669 427639489 330233426 125543963 338227881 897971004 152497185 81505302 922960083 607804516 605583145 93293661 124267863 1039963991 41457025 75470365 1012892602 883180560 170484520 865921038 224839086 46286195 24033366 400172125 921713218 575330404 284581046 210614490 585836781 470237885 263665814 805143924 679677475 196996782 921611643 65249161 141494004 107547313 924751197 866868368 569640412 546613824 471177473 928593270 274351493 50669453 518067492 629080012 421839730 304364959 1054426568 326363219 644129753 525595383 801945502 828528201 787728377 141345466 686500843 528589221 548901736 295379299 1023910594 883766973 825442386 413501056 540000337 331974959 470387456 403466319 965217087 753456110 816734387 247416629 357531029 567830198 703064968 85342158 741336117 27930557 721596619 724030451 366002287 273232307 413572003 57671777 284810956 252184849 320601569 449740661 45263372 435486611 234974799 58963504 767245917 896855710 943094502 669767645 141886236 20054161 856263033 116736597 85242814 352068740 401427118 996122042 635900572 701713206 439932756 395605015 757440407 273764562 993334442 729397623 565156757 272384432 677493899 389559765 1057222751 202274386 162139214 983674822 744484608 447684624 627388938 239050316 989388598 678298576 853941296 178346677 153520900 842444079 494402479 802551610 60374584 178176406 410562825 816734872 910766004 11070175 558515283 212772357 374932690 875767587 851961977 495515450 176738105 393168605 20200001 517916383 689165726 588831585 536751833 960544749 57252420 248081841 851548651 118390960 1046517133 756148591 334171856 333945768 801618753 725111457 410322184 970006883 431128791 101617146 27298813 1029653778 1021207993 596117217 118351575 296111894 329166419 928284824 509529084 101619433 290067027 16203873 533788399 964551142 240500653 486474841 775303648 948170858 272533085 469296003 1005480707 641711547 1066672431 703087066 313008611 489153589 90442072 1027087642 443781449 984385884 776217732 335905164 3588249 480789396 947771356 790809086 930671510 356530749 978236033 105959536 795541012 665947303 383832564 786811145 696664440 704781741 884707079 839944023 430688842 608448914 497314418 911634943 880024023 464364645 731163834 761070886 460092018 1013136385 814831694 304800848 861249321 1050148693 1068177138 326507982 636019935 197691409 36791486 12604750 815780483 937466937 265359200 43376797 198173836 723018268 564547037 204140971 181604741 981376159 736354349 404786936 608243575 395158056 365967894 682235656 1063037776 965090011 87937896 349041623 140930865 1052880816 575239045 756412544 139270101 716513493 165004487 1066321745 732338515 66763403 638048944 517394738 160910726 981601649 458347971 367053864 820922042 322510617 496465187 890220619 721398450 803748274 395452083 132379782 509446096 662705925 360937800 782904126 295360865 939007116 471239643 793191988 233277546 979148210 183508630 694775179 1029237327 3638688 361472532 980876398 774468428 946639678 507763990 288343976 860893022 339702765 784719937 1000620291 973607076 261327589 1031646148 409883500 43685005 959441641 436784005 532287970 419100513 210629210 855655074 1031033373 227257865 546439695 572950138 412502172 462620025 889505754 403452288 160468848 782378537 797311830 1010596835 675245044 1025512717 816667706 156209438 277698874 562370690 159211134 636295005 131214129 515855202 891528911 948923185 741944296 190615805 243620156 287200244 908441440 972776180 1036052455 387052955 1042514898 602908356 303796888 420385988 682475839 684540322 521766787 379046381 479833570 842606819 943762173 667924804 237767962 380131601 486490361 168209837 722998251 436977895 198436434 718478016 529866334 771205636 180116516 146605857 395916000 1040197755 588298849 362949129 692859527 740146151 997171740 564126289 212255443 255075539 1011164978 1051559169 249160254 467603823 979979599 810957916 1033105228 414776765 595706241 639193117 521783484 1025266470 154422688 1057215355 321511556 1006797915 72058534 987499058 914074901 815978608 518684923 147255266 836459132 113704722 571028365 233135907 1013155868 106121839 488124444 888658128 656673557 638466771 144918728 692131019 732830944 626438456 982271446 136180692 723719410 292632825 367183166 35072888 602642117 921908421 1023758011 395643411 412957449 737321330 453970407 396377739 451940520 1071542259 88499617 193115379 702903822 1059867043 475700913 375012276 64895265 812388274 781578343 192095978 970083574 267201225 830192664 69225108 984451063 161290324 870128641 786023420 278835687 6460837 716665697 289105883 105055175 314458746 181908495 437369315 753188984 883617171 522956815 242814851 304291566 123461413 470007803 49257458 231489409 1024620388 884177071 561350017 773922787 637938217 432153828 52814466 407174518 520762729 995102504 455360971 431690890 1022906078 9143078 603158597 28148576 603789399 154619746 664598368 937190426 776655935 805203496 1001664912 170248734 909675184 310329281 201967098 827981582 1037506580 195953451 321259446 858046608 561341242 228523076 858122138 978468351 514762915 957404487 1064757807 398733846 274717863 880486593 981357934 421311946 347478135 1023039092 1022289967 1051115977 397263766 29399800 423764194 609331930 939602246 35008831 308195844 993653403 988350666 452391300 1012323452 1007939019 947808779 587491547 612113769 466940412 115899487 635693279 283232349 394618808 194926631 261474146 618150340 207375650 924743705 613423072 72846478 6581889 791819925 680515985 930126476 551749562 256569815 532484243 754902647 712094372 393732656 445221653 826293675 73828399 13883148 815425576 699673148 818948089 339800186 37361766 1063453785 575318062 382350622 99873223 812169558 699597174 127697843 306820025 736904865 956013740 470940048 746046537 931806262 251886023 691836758 431282980 983291629 455818768 875237391 491352303 746539455 899627714 409462548 141012881 257624332 319469034 754962634 435543909 721140686 319742113 457617401 165265108 803949545 182685902 125619565 418495025 610886466 577811490 462674757 534958255 349799460 958015820 275570141 658226587 486828927 244548162 23072636 933369364 372729598 504083615 1039469173 738979577 1049384776 254093847 283066509 626883981 777263750 988474831 53235881 741384992 774367007 152742347 510799223 293189607 427795542 900175810 372400081 153089236 298880238 475470687 214829225 963423814 876525286 164487628 73166969 104518044 197965516 709670101 661332438 922115749 440809646 318373770 314522971 235400468 775664195 93106473 1051374215 933084525 756913892 764409713 358474051 1007307545 397459621 1051813475 557689115 91060856 304677222 961626645 280899338 534515419 898576987 491261834 173205011 365332531 506505738 2527867 959119452 588393100 384828757 179630608 228895396 855995762 875247969 257960345 425108594 1027159840 324840749 956179696 716788546 780446876 504361700 433085539 158765687 403427974 577360672 377860453 137546383 418186569 53906213 358539495 467276315 186200323 700232373 349130079 717958702 885992876 1052000708 61110923 90441610 290954881 555497883 480486102 1072555146 398093841 803749628 973012536 591185109 653459532 775901597 490840587 900632773 891627150 71634699 207799376 245685348 618143216 1017603647 944903293 500360987 583334907 568613213 751461820 274609715 834239838 177115207 42209596 54466632 611077016 591233813 669199727 36241938 685952999 402489675 497647355 717277609 20974942 763242543 969931122 78515772 698687648 934260067 168212364 503358413 929261939 1070657799 140149227 1060874469 20130153 451891465 916341203 183574251 326551666 888059685 608465470 551825494 852291016 601007991 955903248 385999388 520147894 723959946 959001322 766615116 320974248 188082141 647470111 457935704 275884298 70761028 754427970 534687441 78385908 728846527 759372196 540541180 405383453 802933919 1066437030 937858215 87182767 320781972 282796409 451578894 34603487 883207377 266973818 339391087 1068727330 39079207 402636233 468483904 908981186 357579869 371718503 654656565 501311018 484870269 930165375 409724313 174977055 816695602 892118703 461969253 661847241 471805822 843326096 266342768 627139475 225829988 899757547 763982288 797672573 27270320 838888147 644891480 904529160 374701533 769178868 178397361 372597286 783410622 558016952 813602173 767830266 763340440 1011168148 512824357 1016255551 931748666 195474152 107401339 466686956 812391911 619048385 492380446 1011904259 706947132 419108948 141016035 1052105417 450759548 62215170 123064890 982804123 81703178 288215375 465175676 174415418 96743891 167212664 13785077 761257648 310191023 1028956136 584409879 1023395038 385360987 306078071 738781 109261107 459479931 25141260 551227163 842490426 303756946 77489347 630091321 154921225 852731848 1037069555 481157131 98880119 328710702 628731712 159432327 981252959 293300060 425536421 229730837 754729967 59131308 404503728 683110946 713594181 577512627 927457577 501709693 354820009 595896890 459434140 502442724 812617078 205986985 205200714 861632021 517329469 382675370 757479922 423230665 385345821 404044969 896322413 453187070 979049320 856804899 831877722 92491654 47337934 788622103 835741925 551179344 1056451923 655110109 503516861 371880460 145177112 398675305 55818618 872558855 284088466 520457086 133805703 203945365 995349511 24692681 634025200 23729790 698132358 637021737 173730194 280781043 775742504 969247602 884532971 977512876 395451781 399141755 310042807 912711963 158898045 283189884 904827960 21971690 445268327 638493970 389566019 250432696 578517196 583239843 262936831 783914742 865635540 287768666 893530260 968447999 758348775 725871205 998637613 287235339 162672721 320926730 181537416 302214032 602784802 679344682 8146463 398335501 638324340 1034381929 86065208 598269196 662075197 749461581 620378831 324580481 838032024 913900936 708370319 743717854 87828090 757548572 73247799 811786144 235376118 728542723 940191470 459155922 1466204 326761155 540939251 1004189649 609065174 756450428 442320512 68039735 503549563 887007010 437359248 738288286 342675985 74999047 780692125 246056382 148010858 597920028 104622207 740345363 495714854 549923336 395982555 498774741 641354443 649999584 446511860 257128926 209446561 158443055 1037692176 582334494 847807451 646287928 552614372 894503604 284142038 570024858 109815922 488678171 189366214 984281084 283665936 49444868 884763010 87182449 478965073 246174768 321281935 904328335 523274090 548504107 781497316 149461014 657090910 148604453 813616059 854017574 765193091 143535623 1025569681 999111324 304892718 963501568 839817719 1020870907 181589349 260047857 90357977 390291098 723361619 864492618 1012236744 66197661 279177716 23334287 739096204 237060545 891345241 238098427 948676919 663785093 114793235 233045533 219565389 828021634 117961631 367525388 188761816 238081712 374252664 1069582202 537928151 535025655 806464712 264489635 620880379 785745692 517634400 296009431 981989780 32266019 953171209 936864945 552001169 354633099 1014501106 663191260 732924642 441696736 841496767 574872672 19982452 363445014 827553025 455015317 677601860 920442610 389288834 711634845 863369139 954555160 844770637 756614744 750916244 491239360 720588661 191229940 891105154 425723824 1040710105 312043625 635975007 841539552 377743042 815766316 909183084 738849372 439475453 116047289 215504707 960427944 919928563 13247793 474202397 869733646 683256119 693014750 43622123 570397694 990942142 704311239 1018934857 289558410 181571299 21877757 230872288 689303027 677106795 174154717 284412421 1001940722 959724169 128585814 850272581 961333781 940144548 1062998933 334730473 436503257 799396469 577941866 726300394 315428124 444957794 289308430 267786379 1035317114 383145097 1071120143 281017795 410545614 1009778821 450452957 534759378 921736205 331781686 77926290 816169623 911583816 668927073 539708493 609270845 767561040 737098735 210081980 930521336 486694594 1006554357 1030327162 111786222 620298221 254589169 605563240 996684672 536282260 680225706 305630354 132027519 189450931 950478449 524267705 198598599 449987146 824807069 325573569 528471019 90214139 1060991392 1011220898 159097092 844039765 76617588 229413602 284255324 486491602 298810834 1023114100 386801559 792085546 144363896 181143040 420306692 270919683 537683685 257113300 412508329 230161342 342092807 599500252 255416024 794775161 385282169 610997240 846784643 287409668 405782246 624666758 625825103 939638482 166258430 288300561 583430407 640443488 958968099 944157880 1054431406 532509455 692027579 210932689 296841715 408629499 127925321 101487463 771074756 747883427 887283700 81161071 532900130 41507851 322871938 987820878 496151124 405821231 544290243 900334786 929421618 602534102 900531862 674924629 605951133 379834971 346660095 363458041 64081114 1046484308 610130441 793013767 46199129 214457922 923668482 603514971 135584782 370135360 457125726 639777501 867679065 1026132114 591471464 845621639 892647325 78365869 579334670 259899414 594865634 704123955 1031528941 806179743 67194372 344502198 1070243734 479841849 515057607 367079713 250761023 468180527 696415391 630242726 252823899 641939043 547112631 640442885 579670147 641334412 176661678 104923582 272822168 646231606 231347831 601846190 793248442 128711951 1066419969 671699869 537943362 612510721 526858801 753469314 814870828 594412108 950228661 80173335 1073126034 869596241 262540519 868130381 745741982 479808921 338732114 37627266 453722664 944568710 303891869 925329926 315244458 165135109 135080521 443501716 535950129 366440586 1058409725 819241209 320034556 85061013 265573380 173739980 90747429 1031508966 834616050 602930807 106859368 790677570 247111645 828677296 607102015 578036870 994068245 898462909 284302753 59263360 857664532 622203836 293813097 521932165 428555087 891819375 951796050 881070925 610579226 112606972 842837782 875038217 289319658 336989732 779320096 923591389 982567631 569855905 1071876572 303776092 280621849 12958573 815288032 759314175 724654173 457986304 771644244 38392451 473951452 831133617 1010348414 866440727 370561170 1041085223 598957560 409122487 432526759 1025390180 395474107 983360883 662942798 410513353 72346636 544247806 56069868 445769943 1055394933 310745265 310073819 1041914331 879780826 1049794135 996397827 636827508 804043381 658762762 803052056 41228661 417170816 74815127 304772970 181755666 541414525 655602405 569946641 223370328 448805210 560619261 556459906 655225034 21308826 920550878 202369018 137256233 1005888971 585473546 746862543 732456498 218846048 282098564 959933940 650265878 537886371 945307157 131084569 604960892 947182574 9687470 601206743 468981621 142533819 607022383 305502875 86989281 942564654 107916821 178843341 95098105 5889417 264847707 49314345 885611001 302594882 668355982 1025205223 62817323 438079632 337002091 854011356 505216311 999773346 958437969 242780811 685377860 515938405 186429500 863331243 849140721 193249233 893964905 485578583 984291495 324033955 209842952 746736864 534576297 1014696887 348780095 455549277 569165185 723447127 390433551 33893356 1069853556 805009814 951633855 195810110 530039311 176941074 375999746 271303917 333262920 252481460 223206613 971307998 875530401 405961678 31992140 481508885 297541024 1025286575 870184030 592824020 434782164 14524138 487372343 512209779 306412239 852607796 36980827 724693972 1011795645 921430815 135444260 658023781 801522196 149228281 134378484 411307250 132523861 924235638 816942889 232841562 686541607 458810914 144754251 105317541 203553518 647069983 75271569 540478043 437817411 636268136 1068286449 1052719294 208074737 96413318 211610937 428334214 709049181 375477440 451239367 87462841 888807624 616707534 610577046 232968453 235428777 267885396 646967851 622361761 816196821 332814134 61377721 683459657 592806368 72898871 186101926 618962686 412919487 388822208 65820765 641354908 602679282 777511067 202380981 101949289 849907051 966658839 657204628 488169399 476115022 640137331 643538632 973391359 758687323 345164519 786646027 42322921 1027276271 585824993 1023215728 981704638 219639497 618113038 436770601 928463884 474449786 779347779 878789796 983056843 273058473 1014511330 486328314 972321231 763554504 639935714 1064853835 933508985 612522975 483534129 934883472 468401185 1010066814 626157738 748223490 722178095 596393022 430305263 664110095 280456547 162103174 280062220 27491614 712600801 730506579 470811951 394180049 515921617 8990532 630567298 149736671 993825703 971468181 904856914 390316361 703094683 19109168 211978523 761615108 554282987 357659666 478812659 506867176 877359441 194955047 823962033 659750496 424882701 320336304 955559395 108531554 275107772 614956976 114512720 602611200 245481941 779806301 992349595 997782951 1059833749 721286649 781350775 26864102 56122371 323009088 745748387 338609274 372194699 280178758 305761671 634460473 32491185 19459841 669904662 267209109 976533015 132643825 577536566 205389276 67821502 465288897 298615268 339802029 513507829 721184289 48098812 313252635 405958991 778261095 179805006 699090671 749606707 1011587968 403995438 1068721680 184266283 542205031 147905446 670683044 595557115 109300060 334455903 748114569 312187694 564882324 855538198 493532773 656085672 611404733 334658920 405128109 670923081 107502201 780535492 79340004 596215046 357563995 44100815 559709526 32302430 574971868 869739461 583486112 478729546 217753363 878758943 71683124 176204343 916683083 773743047 518107709 67475055 371908630 948582241 205546859 286322206 604648249 80022847 294867125 64213717 32221135 672638256 383960592 817846211 800444812 571019957 875945027 655290258 196873924 619169645 594560339 321699276 420830744 526076606 643398644 434136683 824791264 266149735 47249452 1041283186 55105640 989386365 288873847 888328132 497250787 86409737 142670035 292429023 443358283 343089237 731137484 977579605 638109093 30846896 212263362 339669861 592920732 639058521 812776225 859586816 378790822 900548761 710819612 298778834 380459142 71140674 193519223 1055272957 414660767 991246025 889301881 962952864 320919314 472038218 318669708 983573760 725064462 1043245297 506748269 604698504 153745155 418327752 67743503 459941906 1052301667 1014310997 752933732 86136984 841486260 1005916892 653819766 412377618 815350249 1065946842 37153148 901595123 832168454 570322572 744783999 940305439 707607189 513187957 53709786 506829749 671876246 161528882 464970128 127991126 105497806 363501784 278075118 813832971 433870227 1036265421 883411546 537613210 64064642 34480733 206206157 38128347 517526951 851631183 539346973 71080997 711426253 298410411 506876861 128834387 121758678 568541848 755549203 639080255 645825940 313239449 267676535 594329210 1019268961 671919793 927251733 608843244 670608639 790878827 1025004154 807129464 676230647 673808231 622145648 143402772 615192815 809862521 49698727 339926664 173791844 753297956 404592004 441815825 827813396 196545269 48984858 159741596 537395288 952536966 1013894587 1061410218 1016567261 277106513 332389625 87004473 292219748 1013104979 624919164 587821496 685795335 880145790 1067476975 691239237 618243525 681172657 798200804 344504245 332134851 191111258 645104908 1001433637 780094023 427963989 435427420 76571981 504475930 685234294 1050453862 826652853 1000753122 433091130 243252873 986553088 463008052 947895281 830271576 929684281 469588443 190961151 1063583780 4772534 1004034916 468504434 703765837 1040824635 638806934 340734790 256518906 649033195 448816797 608704303 843868911 180573948 337293923 1047828697 1009323546 609538746 95746236 874014199 974088265 444771817 3341724 45414844 731618838 774149541 979326484 308402628 912026882 418970597 182357687 28018327 465296774 612177227 478282654 820397316 446371789 376009523 557477241 682133998 1019306694 225216852 618911608 519567700 988095248 401852310 774102784 749144317 97450963 349852259 965707387 570503707 205125414 873588329 212919216 102110327 733887272 517796869 649135994 700927122 512969646 827160215 814105925 308177198 790731930 977378120 270471432 235779053 568877011 134562304 985799260 1059308936 437291010 44883899 362387281 816823229 550727143 972224181 876156347 344761975 185977412 548274110 332988233 612737979 77603311 95752406 431742091 1028267937 479977324 870875246 936723120 460400694 657215060 886369477 957321685 952480559 199689979 460161488 327361055 593194767 620036656 711029409 221386201 380931212 621409924 746839296 271386925 146761226 412409631 450899003 116751860 792972085 891677716 852382441 936228695 1071881725 1038222746 819604079 246414170 6987822 719021240 48761193 77604767 652894814 962830144 525507436 658888342 229414700 341603579 476362568 18382489 594178225 569814413 826699452 685983521 588848437 202709353 605059756 75267264 129531959 781330352 913024655 749397990 262134027 481070679 909701232 1107522 805295196 176632168 145651657 622304990 144729370 801282915 131747253 983677114 1023417574 220248721 330122857 573966849 858780215 226144439 715272924 539186696 1046594337 657471040 355665501 532260196 411358618 339417522 1016558827 268759117 1051802357 991371816 995920539 860231427 914303210 168429267 378658495 640929659 203607092 638882582 397466265 543657112 1005353501 378718857 964170185 103106570 589559998 290439379 285994583 768625326 814255191 613101284 286262554 379314377 316955216 923300912 824601537 170360528 893830970 330054531 335905167 231160303 16188332 935229881 494287529 740626267 591828426 1057653909 592569305 1031600686 922396043 312100751 3254645 18795050 68950318 513376329 249440995 162262150 45122785 270311018 307532928 380471895 810001062 646038390 480694477 199408861 23142991 1001257012 494848699 727754522 465071231 1020084411 506871603 233153812 921704181 754191765 376932435 673014597 379006606 345589057 1054007217 278786520 600563935 404062786 976461593 525807264 703241407 742036564 147731493 165787783 1068673411 1030991960 105295787 384183496 988940764 888293049 1041558976 512490025 802596681 983593327 82968494 26849498 203226471 152994509 293464242 495771895 454926130 36509719 1040420764 564120683 645788727 866705433 228133434 762674734 989810661 642760578 704221894 442621945 930527418 420880466 571143143 506584243 871784853 558955547 733209218 750713421 320855606 448463870 738065051 62011210 479117494 28793370 568041647 820240329 202530312 434405572 125467189 193371388 628827190 176739350 675565914 59815052 1034530505 815550215 130575267 105864000 524533785 563516394 167776032 783642965 1011634953 716940618 181966 355744353 800074020 326460189 121503462 889771627 533240984 855655047 924729271 593038168 1006656971 186850510 764496737 845698404 530669554 599717204 305339562 91025451 1056968276 294026135 21702562 67150689 281377063 915955077 574182665 589282361 829549357 685748379 978184390 38124782 430491850 708984778 166165818 757078469 272001419 881574029 226066289 346793985 864292279 528239255 472731698 869966067 778137353 874087209 693721624 92267661 29101651 913497118 401745478 61573698 68426491 857534743 674538634 897605030 456072759 353488659 918723627 560290913 370630575 1042909953 84522931 11466686 842924401 452844610 510597718 559422512 529613084 168252414 1048368024 136768358 718469137 473149317 758566396 762272082 335910256 1052236856 4085986 629166408 540332195 139588715 649749869 1014846739 52934539 866521471 682234911 890938756 664489990 272975133 38606189 610820207 193634661 316239659 941745664 1059636368 458523561 737332014 1038489498 229620533 558422527 487959977 521911284 183215406 567245796 508084 542981721 532390136 437169879 979812679 898196889 650034604 620699061 647667002 746417680 529001577 155609017 816617902 261149531 421699801 1018421464 396322980 464030228 283104749 949851503 952171378 566940476 369698960 269725973 466058154 123655424 503836672 237474544 403444145 518793557 595578057 1033149405 621595468 781071720 70265027 838642494 584958608 26914911 179528045 634902187 746016722 525073207 304550178 331269209 564659037 320615813 1046470029 249830094 107248443 481681944 216068515 106438026 264446965 773329507 607005170 272013516 822813143 170396828 407628599 391983512 1064685806 146652102 1067017765 760182235 17683438 164059137 270485740 514253275 867773611 923803017 530370383 887268535 473564636 679911892 763141995 723216978 163249613 465311366 348336038 651914145 630658733 213145520 427805480 491629474 127336622 708717178 710804180 922134490 798105096 769288753 989284124 1071819651 470664366 245082980 393696135 902016281 169699568 459606572 631285879 840180045 36630177 796894747 375465220 423264426 794926463 870989860 59926338 582824923 45827643 7776632 1015145333 204632406 712190104 887402909 101772014 277044293 1057203268 394192846 454242081 616279416 28627827 912305275 141896986 579159002 74794372 111111809 580773890 523597925 306822958 136085780 46629429 721511103 180596446 1067813142 325937984 894544010 174459889 402829001 800174957 312002408 58035147 556584275 233198756 664485714 882564827 770920079 425406083 479033022 163336981 861463448 302249813 3511865 653870402 1012230856 835840274 699372188 380934418 722867539 443408785 434356822 798181723 237712003 749239554 260800378 748375123 364725765 880503844 516055247 825348733 118013788 974210114 118670081 793376321 237597085 25405163 24771687 1050015437 423908778 830754190 404404530 861398666 605956708 266011525 704662043 686172371 932101628 690168805 318892327 1049303675 422817014 803663145 781215961 622902555 460476062 391106103 742502281 232853131 761119449 808893803 959647330 250009085 1027687891 808981879 740767591 618944203 663518573 921606154 238730212 409467006 362247740 125600729 63098388 835252690 833179670 278207674 862745058 730575272 643543466 683364108 755066508 348169461 727136329 413462596 519099578 79556312 800747904 744812020 366931095 147932876 245028424 461282899 509797244 1069768319 664839320 539551022 187296620 695947212 847074405 403538615 754719836 100483802 244931866 804813478 158941354 255787879 1009015882 70009521 68201167 451456705 457727184 568103010 552968674 729567311 38920723 1037074357 135913668 794221553 1070074312 669856572 124924871 530915268 340218752 212841139 553287368 375633162 631797952 1013623765 991501150 409263758 74391826 185055947 393847826 788077394 165866711 818404961 409559118 972360456 373232400 595552723 173742514 604835388 935255103 1066059256 527353079 753476408 138400626 669446444 36343499 544307725 861069208 1056123465 624387713 746952684 585988210 986690792 426192203 24555064 365184601 840474732 204074311 644559829 179906819 315014538 1012494996 662573123 55928412 972818884 284056885 693150885 1025707061 730355617 617190376 49593882 719353914 578574730 697532503 599176347 852992320 892868663 307731860 81651082 253755872 565335317 349245264 863057959 185797619 733056844 822793839 704121457 1015483588 1000987070 437756908 911801462 777214657 421275248 881223778 275292439 361890110 668145131 1058905689 9459350 580977422 556039127 654621795 503423799 777371309 376455700 231945778 208189955 716881325 1005009892 145352799 1054080015 514589965 246698916 94569506 336571633 470381897 952621559 1002876566 230622851 165100279 457712639 536607096 255033110 729493561 495802769 682363545 852049378 894861530 39873378 348998152 552077313 41777967 1020666967 133747194 159202996 153052630 462727503 20414855 207503356 995198729 133475250 369111605 564673553 329110982 462367347 749715645 411995616 1023146774 725245237 900460281 933591370 610897057 180843911 418658892 514883912 843020468 553508752 192022750 373659003 759757164 37947805 871637054 262804647 669670683 858059242 527471957 807146337 323152798 234423917 927200611 364295816 454181890 642182331 663386498 1139002 810103128 349732657 579117684 849137209 847809634 433448088 458496929 160186165 74785135 998107877 909555917 935871019 130236535 507567271 777071677 797274367 32244664 1027992416 726323370 790952480 136759022 620219283 34287028 979583387 343140503 1014190211 480853252 844589438 1007164403 1002162565 386096502 717022243 568895210 373660851 360739268 12779460 731391441 1020818628 702114369 316127746 670012232 104437839 600115164 798393066 131705914 236484992 339977216 815592639 1061669538 707806385 151476757 599707768 401891001 830579092 785662280 298714980 681031525 896874284 823710257 421226024 181767924 615076897 838568357 415792939 441150952 616671245 83507968 1054788561 279151151 530172780 884327275 1042546155 936023685 580342471 523408905 734434380 695481185 9163248 618443354 583087337 821613493 449382852 231511734 450010949 856484619 331397744 66619829 891619633 65003941 590389116 227745635 1024207174 230781980 992583685 190740023 758566410 151096236 892189374 229507743 778773364 730790200 301383422 752495707 880310466 959567315 862430351 182940286 249397273 634781449 398901579 351191303 542331859 641446482 560626575 606869124 805009767 657770747 733673965 315385757 590581410 840449389 662399916 756410971 1004572352 739824483 904805603 34677217 819611248 445961891 268320884 698764784 423176764 958913151 518775438 926927067 252284998 410009994 517792329 898935021 572064630 419281132 404141767 400738476 217893588 911094486 7115632 910053799 406827362 710080594 564782264 636142171 83582999 409913267 916643751 505921990 745809926 561477302 641358532 169053142 151930543 940152627 83674223 508856649 673968854 151577809 636687817 452814881 209300723 444677911 253138670 746589249 708438077 817368804 1071991133 955715985 272196739 1059598924 684889806 783619703 628297351 574377297 470667789 75812919 551542996 525139957 632448955 360395358 840979457 1055255618 865191068 608147042 301600844 652361567 318417848 863811400 314891990 572269288 67857000 578944954 376787190 518088238 714162131 766362860 248796215 46060545 33273302 644470550 75333697 930771352 33535509 306277541 723262196 534241771 1813680 534140358 626762848 829060079 166874451 316468529 602128553 33987210 280731255 534161315 455939426 353965745 7483384 255653138 252692542 15144405 928304314 66267791 1003927854 207433512 144342236 638628651 170349518 868678290 1053228685 897181936 834500031 1035232943 367418482 486692893 922949727 976713310 14066306 67766780 851810870 1030358385 414926403 254444594 900063347 1065992722 212180366 500443821 808953638 634553440 96229607 62374497 382469075 726848986 941134288 657316087 1065986766 968834845 878661909 388001268 1011028791 653884622 854079171 507096087 68247730 54164415 338053888 171757063 501125458 927083929 791460218 210940856 829629152 268758735 312807020 305641499 376575946 240722364 606905111 803703569 505212664 29091486 202307986 146037923 450944410 523827874 883995473 197077565 704898420 513792735 95865702 984165149 1043945640 854092789 117632771 369883988 910039803 287490677 332051275 734082782 967319059 313564308 699944393 598240842 755572871 42470625 255033869 855207628 108138590 67712504 774194657 311414726 93595979 473084676 423661554 506159997 89406961 222463061 1056914482 495239456 232583181 1025777227 786803275 800419663 699393879 762177373 595150301 131649670 693666977 674462598 63757026 991137828 102016582 964822024 513288372 79717645 807389973 521822453 665032737 148453809 522039234 266048794 939266025 792868166 1063048297 84736481 723178541 1004302892 573620591 953575684 244517431 220818180 700593144 1059324238 610707556 521889823 332346572 1010134532 1012681656 414881427 605524080 1040191062 440962760 825930575 183104312 385144073 373994853 715811789 869061384 213984963 346129257 938595932 369249553 691813431 451637385 577712214 659521701 739301035 66802470 854562682 595873841 161291086 388305018 1072660784 892531888 917620415 1012713002 306940593 433689038 327909041 9036205 165942241 851784266 711798989 52196901 710129808 16789331 1035653639 486698191 289410299 829151735 143230448 142761521 723866067 400832986 1021931365 312838366 173244716 254971899 725614550 75537757 353080018 962231517 464743157 343751462 946574280 979438219 1055470371 517494122 95311234 433420685 254973677 40904600 99316819 989099028 631105947 697386362 978006928 491653826 1072955104 258143725 801836324 504782417 389996251 591417954 961671385 635356351 472674828 111005346 9873654 818265716 232636338 301174880 233740966 682235246 620398887 473795381 1065993810 905068771 387565043 806703275 10347478 658499761 241835376 835005149 683096664 613388063 207244123 712887582 58936116 792000597 886934256 602601964 463261489 958876767 673928408 74805341 722646344 817244416 77947427 434850388 260079020 603882586 886381512 200081689 395473173 479905309 259857571 815120939 33901118 440249689 408457119 315015801 182793140 1023046864 622887202 602014422 242705138 151286005 391442454 488273243 1017574297 557016187 445167252 418524751 127275394 963544454 871698267 19504288 841783554 659142074 464656068 3340041 183365233 736713204 880517069 267801040 754293800 297122883 906922483 696384241 34388160 301053219 414064846 289394838 908697957 504451398 287349439 802379761 530771440 504829596 82993729 652796750 25482024 363203215 424642136 505176221 956519758 552519825 904708388 373681093 79083386 250804773 544920708 794031621 5176661 805708998 310146762 238030614 501448061 464371248 276350497 855429099 601120280 582592085 278369868 66340143 1045882371 401896060 736791460 955760519 548461245 129263032 454087921 859353209 805127649 469701632 843883633 193174851 142883860 250715557 380468063 432151598 772566252 189912230 772691057 717698431 663015470 480534832 620453303 1070310907 685807563 529873869 21014136 697505677 428608437 99675271 829018156 8827578 1049399132 267097795 654758841 954812955 670992623 546425341 29480631 1066989472 475397779 881851585 5862881 397441558 12389292 855267495 284852850 710027659 888996006 217919443 270576366 902321107 614243315 840577443 403290103 451579172 862496824 408444155 698181470 51572035 992359928 884082160 643814141 620249052 222269299 908818138 714060603 380329707 342347868 437390608 427301810 251291518 750441402 364548666 426160127 468887362 411771546 882269269 220948922 767736841 1030413833 712731887 923398408 755827165 91033575 715673126 452410530 663648583 806791862 584568495 699468052 564071516 640488657 657906017 614638300 75401946 735897201 175202317 609130344 562104448 885095372 254299571 885857236 10466094 1037527652 1072939145 73013923 741526389 819075982 575473108 907833090 431377485 831235843 725425197 650374913 546972195 59458068 749062343 503305558 138548169 293181184 233964347 199469164 1014929806 754656707 181093435 999541654 93949919 568913650 322217930 358069534 398752445 248879111 789266069 192237277 240101865 497944358 620645121 865412913 940297879 702011580 144894070 601766306 1027004169 229622115 412109672 999719756 924400812 37425293 250465556 432165093 736137812 495740444 608171526 977545057 159934566 155211591 530516320 406911636 703494869 441813587 949508699 347983824 307763147 673691478 786125850 55905345 941262817 295891355 498816272 643688107 311965904 26495372 433349006 383455628 268106394 511430308 1675980 579013957 297863573 758631334 17848994 830464642 551148841 280614254 890040843 874781607 254268201 116659414 868272693 525152009 62605074 196736413 286988273 577191886 272997454 130948720 573049388 489470155 386203431 438148487 75460619 259792545 217989100 126963440 578039389 69531278 401016355 418043768 785199527 218583078 156711626 1019426142 897980201 383609779 845686954 289154158 298541862 123531012 927672165 120962688 667178056 203186724 184652056 856389108 5964344 392038082 922434705 526926109 959707832 731658375 769193163 285046374 848927944 180060257 375028711 661790629 539657249 703632682 572058979 412069171 500307879 496814633 610951827 430036558 382158240 592734022 702300997 299710403 613653808 181124222 475526989 625777002 1024709711 426902780 228518003 712280386 569375632 296897771 62692598 251620829 1039406902 390043501 268245572 1039894422 735844983 63559457 981303940 851250616 228639572 771470207 716165881 889516729 729616550 553518742 276458993 793052608 4491748 701570544 667719439 13531503 1043871510 351512731 723338060 173179874 570136573 457306834 705999109 213105592 829182020 976412256 213500457 975517293 293542926 1011995319 134511434 529255338 804745877 1027559544 186803831 318709318 275548576 495514323 480558486 305222013 1039845087 1493202 415290326 357449368 932044280 11035729 129892237 657359048 29697813 97838586 24856768 544551254 270190603 448529536 776260375 500967286 109992127 559252899 109779130 537558358 766583791 568274499 564731120 949148493 859961008 974625317 43874138 997584236 951479363 606039919 31512974 559036210 68237403 152079160 188594722 179480981 998769051 424657154 252760100 689356427 283601174 481723372 345620774 88740187 685657844 286798727 988417630 894708405 762305804 937580895 348310718 468611937 537600611 339463034 957888915 289658038 904518030 390322854 459174817 335270264 1048652202 217081068 310510050 490748655 748040165 614039123 82992173 317925944 198958691 740208625 610042899 906256416 338825605 238516642 698273864 942980534 566392801 223612067 711752325 450225569 273839325 525448972 205501243 934722501 974034024 143807928 907193010 80852104 604213094 945496085 423081388 887206091 589959733 717812269 141102304 130116295 860155880 661775115 487344035 479070178 942883966 893886956 807628513 18031681 1028752383 974997521 73049368 997430845 119152067 1042528430 558186905 335717333 344946079 1071041570 160524108 607849780 43469715 443950023 1021021674 922734314 229946951 192597443 959565577 395340340 854187991 266323368 345254813 112526688 517999307 939812044 588177087 789339503 969165053 763453938 679695084 711791984 884996883 210360187 379304198 800333926 783164401 991740482 1005706321 207044228 398911998 998577922 217167148 248893488 918367021 61076329 924623858 351783329 412676754 903101537 905863731 185601078 360818278 676945849 127460748 468371229 306972638 863328959 468296454 575906872 341952621 113327130 35026371 114924126 479240481 175196283 783777308 870894634 467278497 866216858 715998317 194411213 867046502 390496492 762826574 138020860 410257188 676564835 39463212 1056313777 563847162 526695020 38383569 987702556 417401287 257307040 972453742 206367427 553209741 249317735 697626651 510664579 402004328 1052818354 1003447073 267634849 996283264 848045093 323854006 404885322 253445835 984082011 357939237 570496661 270044103 1048285916 263671298 78994784 688300285 947976059 247782809 451643481 933962583 429345393 176608099 788194859 877592414 78889188 640863135 155476085 1066701411 257973363 154768101 119634197 119491364 134023899 211288119 603662121 129333013 557288324 681838483 833682001 589308540 363466758 662826061 401042784 137378710 78144651 616926502 902716253 167849530 253821697 886120056 523369680 468596833 772832057 484423745 471285964 775711993 766212225 619432975 692897498 919912602 663641634 1055841066 1021411167 82925491 662654844 349688932 892666925 962554223 447585586 406265586 631766744 975468489 774968265 694686455 1052736010 392875341 884820555 973786375 58263900 657145956 384050769 246642940 289473604 538349657 178686292 254402381 926572229 963831386 137479014 686663640 384624018 223999645 381347742 67094108 567274063 848322653 192001943 544237614 539408173 832121557 871090449 474237991 4159203 757219336 891437119 1046597386 914571405 322606599 990650663 985562970 497799138 51618068 509722609 1061997993 903340273 1025770456 26039295 642103657 489652256 579715238 119246078 276843 151970588 980376777 226567717 189675918 3174669 45595506 1044422921 268491180 363916371 50456604 153852528 716374449 185567012 670797936 463195541 836795470 335518353 289276080 81572202 413638491 411274208 316201495 199853540 370599540 990761409 196908 694919504 499853998 965439159 720584362 552182528 648900980 937579129 624311342 580598076 586957002 290240412 344284639 641317601 490625362 187149476 866943426 1046347446 869313500 300116826 909440176 356085537 295626576 51881449 580581170 493670276 726472266 155892111 476484432 261259849 982753120 980364125 926484147 292066780 638052743 1061609499 697648340 631574534 54606462 857509497 919830421 485256163 312312800 974425378 1056026954 507213120 445527575 184216611 597728739 62641941 1028391127 423728333 274884487 471271946 1024069145 904230470 950696063 315473256 213873529 969460443 893464384 538314774 748840113 828282145 429943281 270262753 777351254 956958666 266439637 11978382 402500677 91391721 996823216 718216866 1034797765 630344393 217258975 687336327 650637142 1041751192 387154990 937975412 18106069 536227876 474603414 743322710 836826504 687515952 267572278 324234726 496575784 725090267 974734818 976347277 701494739 598407941 66935996 759080749 76009420 592072571 794868053 114371608 796008253 937333307 103957041 480812269 350475159 406825248 470611608 594072428 23407554 653911410 740294027 743395434 814212528 636119295 878851657 202144683 149971575 239921619 181214027 9398075 432755672 682172327 261783677 498807165 1005109881 1000349622 789777349 763058498 578117896 65042529 732887158 704482926 27878834 307817436 809349257 646058619 23217438 933555232 499263145 411881217 300263381 189962006 618676021 836296220 259224584 532120952 927601238 838430995 732174309 1030737980 1024080327 544356977 247017820 667844677 513318286 685075535 576188807 208949861 209559712 258964905 297839091 293807662 211421846 368962838 312575240 419520431 964195501 39439224 587804538 645106022 516305489 208526505 1056415777 743780116 538356945 31776560 669881429 745254601 348287592 485708791 236843176 545041959 341427696 440603933 35867538 934873107 685436594 889875135 194146174 6917968 6757209 1042114692 502457918 248145839 963958898 744877085 615331787 499789874 608615809 804970819 799871143 934692231 622437635 922120972 314579677 677486482 677333995 148556176 700792354 726604584 904155080 59383917 139928328 207827917 1001437224 562661344 512782569 908988510 1045279013 470267626 132813040 767684521 11912037 860162364 721804175 1039933878 622469900 796907177 310571770 577118010 1063635408 391347543 896436377 515742171 593202543 25856650 97348840 265856570 378305559 999630279 619473581 502534168 442131399 724784621 748714164 520529296 942627874 41192509 624027448 547363700 657602227 266547805 722692053 317751977 123477961 389711837 893089043 184679294 946103710 247644980 398968323 351544035 352677752 280663891 444265504 381593558 611238738 155315154 775126031 419160862 735768465 944655240 513520183 536777337 533458593 748579838 512844673 578992845 1071302272 152533213 250298994 365616490 231333604 294066966 639513773 698753739 117520612 696831620 358590390 379209545 872273469 159783105 491498440 663901989 421600048 301868873 72045679 984517872 638777085 635221462 878935649 1064399375 1060622693 136087662 278913682 494459377 332827453 111854483 836285708 703196227 837380225 346850959 41078076 282720066 442608944 124770901 695485310 717769043 140441094 644160553 1002064423 450109639 63806035 457712703 780219051 656837919 844937050 943947860 324426422 968032417 773775978 746712679 101755530 841416474 539140357 481883756 538245752 51507037 459147012 522518971 338608195 814137410 826743315 356186815 817688621 24135644 1014310750 846457798 463116425 605276843 316060035 925471308 801077374 448460087 315147365 822893273 673383963 876372164 856601548 836222135 851756989 907028023 831437686 147493375 322908408 496861679 871994045 511398096 429136174 485417769 282193233 967351681 697495594 420259355 1067995820 110875048 1001947529 701042174 286349925 354394595 43536994 51255006 472627801 336962816 831796303 46274879 294463650 715133391 801921733 464211318 70737359 103758015 924919128 946361410 252656082 209096617 841988251 315464868 303072954 826009410 994543896 826907248 679010584 844561685 870740028 148495045 732868662 904989293 429063496 946628235 309252877 699792945 392603859 884118918 473619647 672025771 513450539 30139517 169195478 875939433 907560545 793712089 180042027 248160056 185015555 628315087 981718413 451113724 967356254 30877224 798449870 969361880 896732063 308420055 159328366 578770137 73456674 455369676 677375227 978512455 9310434 233506388 509536690 641752398 894284320 986701573 602197265 155228320 11955678 344560945 468767210 353823352 523575056 995781562 334879813 766291466 596049113 510685707 107355011 353737338 220261496 28428571 1057857153 789932431 257297630 160489005 1019745560 662497234 66615155 703334563 1044074 452747886 544205109 844438950 434688251 568214762 89906598 118826550 612249049 688681728 622959612 361034377 113992648 863221305 771928164 530119649 466424038 78823979 477091251 895728959 269925781 259003510 454444783 336554550 559762159 943062061 439081008 1024870484 683821117 438310480 261697138 215044310 690392837 555094807 871147738 378517972 667126440 21395731 704549068 246812181 1010566108 413648524 379294026 38183375 367076698 40637404 488748971 389926384 792880080 330027641 494860681 914521559 286066707 119950866 605680083 836673329 366333642 692768450 307885475 748392007 137893552 983610005 468647024 172073135 674184066 926574558 12448311 501610215 643426611 65763714 824140707 184508921 530309108 643264235 76056633 709939717 874459271 597753445 558554546 420068809 404559432 759326603 774897390 121642458 804720205 841123329 600998707 380944254 623867538 112264577 700256825 199677639 17566644 734166572 325329990 443112094 673907730 454696397 158813506 515409074 951611658 225525285 758343484 148537406 144550074 556220061 112727813 287371660 533731035 1025402365 151120253 1031842289 1014901269 618438108 680100269 315132423 195215628 333197542 184997504 808387700 235910800 72877583 1055297732 6044438 582707774 484699060 488847863 747055679 947954539 256755201 151835371 162506976 661962125 262544426 500680292 972731185 520459306 859839706 344161756 761754109 1066492746 604041571 356532440 233738215 1027927562 612400605 321610996 84283361 244157290 113937546 499107780 73680332 179294602 612580574 71400493 172092151 363574779 196973387 233337576 934388795 263363059 705105694 317170591 417531786 445254484 149548058 225024734 572597944 48972822 274695675 990358010 498209377 433137339 986178197 781503326 716522804 490930777 132809265 100769076 932172608 656368569 1043317179 796667853 380072200 671206117 445798067 98224862 718602902 799764166 931142996 970445141 126898837 731941760 804010336 914876455 350311677 747816368 292549778 771604063 184214654 694379275 414070666 535637265 944256325 1055892958 734055564 278469544 936362461 14443943 576828798 740668163 457818962 192146372 337184930 464921281 340335606 884947363 786920554 9777876 511971717 835006584 464334463 125019773 737519074 878652754 338061825 452781761 167655463 1034130788 250333351 826986189 458033831 1060888996 749768150 572580567 230673131 552777645 99089157 467787509 696553950 172753103 226998946 163056082 1028140517 521204643 732475282 44494619 459950395 221947831 645559682 1053127762 204811969 371824414 832209132 495885492 112285805 896955508 455144969 850348942 795692376 823916527 489751986 632136968 1044515276 568000426 809838090 334202242 360068372 472250856 237894930 790513545 938101366 280308438 804908730 420346552 1068490854 255494676 215688835 178556947 484654714 750622648 570165520 883090530 424183473 441601116 912565506 71212169 229391812 995269686 222115621 646476891 499544148 471075220 746103792 3973952 239193633 129598355 220807748 855993229 587028095 8028854 131040590 834477935 836902536 569231858 669199379 798486917 296606464 41437512 784076403 22271904 889840447 769106629 701011732 134827908 492801332 649831383 76929427 493563075 503781437 546769470 905195550 845975234 285080997 231111587 590812988 1028412991 967820119 1010989791 226140873 633671120 204868652 158284248 174117782 501209853 1011083116 884745475 384252027 840993477 1018057043 532644600 949927253 429577574 463482334 404373974 380781598 199393931 117972150 1021612016 372415873 66304077 671599547 358393495 725999546 850521797 180411851 1070713964 621080797 923439854 656932613 104925138 688584792 434280696 1025019127 503298320 683954257 1001931810 707046469 372421150 852992507 886908739 51622884 1024724095 454676799 949920907 214304062 1023454876 68827658 727938635 965453604 288636746 314088590 191506700 170892142 596405622 814666290 174263335 1039342079 883873728 515550567 866141356 274280458 108263965 858903761 8844499 281554534 332983034 975052642 165648898 635194060 921850506 70231002 169158336 48221521 558649914 130443165 926394470 892792636 570442713 580465320 302025710 648820221 593609967 259279054 792102689 790554837 261189884 56566168 404631416 870527684 678743143 510878937 704291115 563801345 557408616 818425770 172317376 791593585 1046261096 15782308 776687601 668870475 1045820037 264154789 941402117 481063954 1019878765 659118095 675994611 362122429 857050944 638112236 126872864 926368768 418315448 1066069374 699932168 337355171 273790987 833268551 496383783 605257199 248088552 449806641 544157112 345305709 18832414 872744150 1023234574 914606924 143207300 388934953 299765197 655774297 100650643 928466506 508555398 282745278 147971360 526147738 91413115 404079674 888527823 66951033 1033029516 559355070 379302796 252290788 467960092 466216834 951919061 94017714 360384665 434000104 341530132 932092993 14086959 45214947 94805604 91487795 893503426 469913863 531156906 5042671 592383707 416738245 952523552 884488017 327344268 523245604 674925255 1006595651 224251517 832754185 1066373575 787866767 46302814 507162162 778743688 28519279 866721246 905761632 656761123 26906164 940907585 449708009 364618674 142911651 120207275 1058938391 631333987 653424406 1039092129 999676968 938746372 762413591 711126806 15449393 714248300 149519003 613618466 250195315 227147227 371083141 164160517 250625505 541824188 283654329 62890293 24679052 100878389 471885573 270509210 17031434 668289257 688934103 249802520 741057835 57702085 202727252 1009680378 938980096 738288247 922398724 31690325 6716471 367776797 487100835 610317856 810661289 655007524 938684144 533602981 344667799 147249901 729536534 814683182 201315074 401007293 1011562726 998151310 933809379 118568180 192378413 124590522 604448808 397660580 941793640 174631433 446989215 626559581 415543762 981690615 905659489 868901304 14797845 566337915 500018459 201702218 622658056 831650871 507651323 713260793 930815794 392945651 451675979 293824803 379137067 1029394877 298743725 409140731 791819963 832865839 1014938890 273904276 480815271 204571612 597109980 432839859 918333207 972889411 616558503 827860970 666108296 612804185 432011591 83396818 865698119 286325102 87982233 433559372 503641751 1055439538 476693570 955150822 603496046 737971613 558303541 29871038 443624931 875854336 286107707 220072426 950997656 690353326 255027080 464833955 819182282 883620717 104167042 404680183 19656690 765092151 948031618 570138836 98239004 62962004 994242502 418308412 85314413 692127967 630164019 218088329 644298576 447417267 585956322 704594510 302994048 1000298098 394438508 527465333 653188082 174684511 235031494 835715561 298842534 553532170 591848983 985466418 2712776 37166973 578042748 289259978 538512233 1002191459 17247830 353150641 392270976 349809022 89696163 65739890 823222623 605460991 762031902 149033601 372305800 617009538 432207218 426450832 36468285 560484683 696746493 274012228 316680205 418282256 397294278 429242565 399957023 851317706 480266026 158849199 891010894 629735294 473276178 533938077 890511682 562829396 755673696 520032607 463708076 715838748 440677423 195602300 1016818983 71270511 414007709 1067441638 514365975 376700057 455722934 560384802 486972644 524997102 209589710 15927261 223169831 563882441 140349648 458661233 186451656 464277002 1000156790 266052299 593868009 480627951 92913093 268878421 440001615 418861624 529242074 469688053 520213126 301126411 187811739 844734138 19048183 1031717711 326524062 720011606 305992266 1063078549 550380303 561346559 569080562 149118276 327211024 261837236 54348627 159361377 356521246 191384317 979256238 441453755 486942392 641590287 111967703 689775801 485004576 350685210 817424094 366897997 616571754 516751756 245495935 732507779 396186126 737289728 292188199 46655053 20641073 963546993 803751036 699531963 864376809 436753900 418702230 984101854 405241414 892424560 809245145 17639630 324763662 985204624 184026958 193359752 100871667 157827054 113944062 692279223 141621224 1040653702 605215247 480772370 592184278 1034434160 631849602 1058049456 766589253 695149985 184845138 864913805 810340607 700238632 454344814 535342392 611181524 628348206 175833358 390472314 942250009 469975690 628425188 318498350 230198980 99323189 494622432 802309555 674299293 178142892 77363908 234990064 939703098 112026085 764237238 1053018473 933794004 251602645 69274402 455150416 636440275 574529073 1003154594 917794967 904373683 825617860 473568454 982409976 1052202982 141079546 955503627 567820290 547238380 176898990 256759756 503933070 437867822 950013304 45621438 520534793 581461197 872378994 1023517571 896210659 348475489 386908926 557677766 1057400053 894711956 92034825 642540889 980955020 309419368 945602817 653317513 43478085 469260513 882734616 1001757945 859080303 5551703 141224337 644050547 93231371 106198560 947893041 944385444 1029033093 440626101 521309936 1039573524 766574942 627057653 65260561 127398565 972441709 67417587 1000899002 674644114 1066270868 181706221 974270259 742717632 1062948898 576923729 1070646619 905103281 725041499 791895362 735671744 172566777 675183196 703054753 499019134 557139248 652347496 582079054 282509494 207608033 619634029 699531379 611812911 106080619 333969878 970093488 576345202 997595160 288894070 157514286 459961463 1039635553 539515042 228196246 325896288 2724757 93877592 121844362 875219949 229604126 520298527 242636837 980061664 461691933 649416421 372731267 69412646 94594833 585972538 635969322 1059205799 89265580 442698885 60780193 1016028396 665250407 850371822 915029717 887726064 139612994 938357542 663795695 924466967 586393166 587597178 652066170 952246648 618575026 382471472 369268480 109377566 1006226880 235479069 345605390 657151297 409295377 1073499187 312456137 17978150 514285967 52782922 663678191 418771481 1940429 758822856 92096572 522274347 335308977 387411297 341031958 343342356 124666064 509088603 29085509 508250907 626252482 661012225 703955187 319476670 460373664 850718336 442910536 30447687 615852559 532703448 524552876 834519360 1048535448 793797417 464777324 333309961 930066513 742005511 712502982 684943515 660143298 314632673 722966043 107235923 438845550 474085008 185533081 468603545 856879351 416559273 111056536 566254694 269783728 581042831 987371175 622169914 153510278 210128942 466434391 397037573 700404908 314064268 324367654 146563701 814229848 248174485 771290549 965082719 456320977 496893366 634445129 670603246 828593787 538031556 296288529 802135222 71231157 838213240 1062729943 1067530378 352303385 876582802 1006452014 304008883 135562774 92554151 971654409 516774794 324598415 278152135 477487031 49907921 208623072 833860722 642832217 155312924 523463141 280939157 681999071 25856892 842964359 19838997 999134828 725837396 889034730 739845675 869711269 862975021 168718901 209004739 81029828 159292236 380089276 301384436 455675041 578537202 502737470 238580266 217142249 592092317 445776211 723851623 32123205 677826930 20750955 1027637937 139880772 183824457 302707408 695120076 545485554 291227576 907827382 247224802 847498922 872144566 426286333 387064420 751645387 975568058 110209837 834765574 894766371 424950160 304347852 780973748 964996160 13383964 314040025 442618604 472018702 700252876 723314949 696066647 931031674 611152929 839224098 41584331 607021295 65118196 262092953 1003162993 410526255 688328257 1017210745 916378544 155724845 660183546 204849581 381471669 537802821 370384469 779886582 476002094 400378697 794574333 957120457 297277453 64257591 1011279316 808724534 193628866 321763896 483115085 201063437 53359701 813043137 261213818 97011443 752477445 215079227 599000030 776097299 964446720 802629425 948843478 649369733 968197201 650629875 711564955 702523548 1033366617 168829794 986663574 1019152740 1044947345 300290871 527010342 508330792 198287933 265634668 389039676 869414306 560406442 293580962 526963276 37043986 1037634597 466404137 275431237 1026974692 209105753 477992282 553676038 155320525 746300592 178475893 632514454 85176291 117902438 146616266 633606564 706412060 911736324 198759031 646199085 778052091 999093718 379439617 505494785 636994976 376862570 266934207 290348830 398800488 1029974488 746627400 920779994 682015894 780871667 170429733 1050216771 817967662 697641660 418882894 113197945 420431985 585770201 841684213 616805499 167811505 206865649 993030396 792259382 59758966 783249206 9583965 1030255870 221944490 408697424 217435659 762629456 145380940 826183403 91441346 555236125 186718903 80214734 73897722 987506575 131468886 254729174 786609827 1003248215 40334725 278499504 876719736 286452650 608473664 26347888 490964674 168469318 81605720 575705358 99603058 774112339 785034369 346774014 76798085 1072877497 99940010 107717659 999126237 388389381 600975199 242789890 87237428 369698711 698577359 835839475 353715719 144754701 254354846 438011316 487714689 105010243 421486605 148425133 625063779 98694594 498377915 94235496 168539454 700959709 55059068 911858265 339362761 164343956 1000179695 217178363 851513618 679045142 292192042 228225332 463687024 654281995 21626599 1033868551 75430795 95420706 989158814 1063210818 740354686 775391398 563676455 880118078 942982434 295864328 856964299 1056441984 20030030 356253997 382632206 377351601 172963379 25056316 349441931 585507562 228140682 346590649 709931554 1018190681 340164754 45083468 844107494 409332824 90102276 920212435 428948672 404294844 410549060 785084772 37771673 979275484 950887556 649925795 609958871 283735071 594267291 454503504 353412110 323830284 265559155 1022406613 652210993 728500606 531930041 514530804 644082025 79817517 663382999 1040620659 527145572 870817117 457759960 607169233 1027058543 768913920 765152865 259476918 299267007 58709247 422580103 859878252 862182727 330825796 291492763 706408721 829893552 366649474 352095 971597111 755890586 837110569 634439512 29004675 255267027 84221011 813448335 31283678 1034946428 70887159 260345609 1024442064 824264208 285714087 379033818 176147770 851674066 888015138 588254820 133125153 935656169 514078579 366462812 753093236 557014605 318395938 936514168 295512810 45793403 160798630 54222535 482813526 127428177 902630080 634104263 929702005 753646015 684131020 173156257 98456909 91431886 930180529 17336695 939024847 863294832 200373373 229053025 501806921 53093084 961782707 270335546 852658162 16108347 517400068 521351734 971717165 423865618 715973845 1070462075 884077737 582048613 153281749 563384610 1043588014 423764256 41930234 397257273 478794909 756195303 967904464 39001095 762956340 697230974 402675664 345755034 517772179 563351405 1028217014 934927419 975554406 817322029 21756750 1051538425 979569816 594586036 923651010 829719184 548172838 425573833 30929436 440232720 170964892 962513182 770029406 1037745110 831791102 280128823 821548613 824976585 391116526 613884749 525789047 749389882 76573281 903291321 549467728 312548199 587261096 915502533 247438366 658236607 412844623 18157443 643548442 283885200 463060251 751397842 1034437431 512629400 757550423 395441756 21945473 598082057 327410588 251290259 518501145 683111664 617078515 1032555865 702823594 962326433 214692282 862019659 481687383 549660434 741100242 651508033 431396127 405301119 362905404 90958943 65173849 890771847 825675265 59391660 195873388 375627897 356240425 233760786 908244188 306809900 421396748 467629341 904624077 951919728 834086821 600651597 316398285 315963765 98892389 286310594 300357062 832916025 701177116 138669168 496438380 385420968 120664765 675558713 7460580 229799714 598803693 945482808 247585923 303052324 443787810 131982463 656484263 790086365 156765976 388881934 415785590 546262609 997565543 1031230551 201135615 363646776 258035373 692665605 957005708 998808635 696532789 224791420 321717361 589466730 348744865 708866323 773884267 229732013 23545076 774326433 624104494 134649323 666238638 502638913 427402523 740533109 569308010 935248628 300553316 1048624442 434303772 13301475 922942722 594738966 978338669 36810525 74417204 994787932 696878104 919363146 436153698 697434482 373559115 202775459 143034862 552097027 1056481186 955901242 425070814 335449684 559450817 652176539 492211424 746609493 489376868 62122033 664145127 657343811 478847385 654502896 346999194 287204885 187169736 888315769 787838589 957697922 1004348714 967408836 239234500 384486323 564406738 1015120438 444123245 109604248 49379899 333015541 230476619 694948157 442717014 635138025 565781556 13435543 848048172 1050397448 113206466 588035572 936130708 705721724 251501688 74585258 56515385 83845903 632029592 416884090 339616660 544764920 768498795 741834564 718405196 109392986 351398098 356517741 842711709 558637277 934338507 787865802 840739491 294398620 283122588 125834033 992805834 164087066 267263203 636304078 805081349 65452566 841542112 844309938 402636268 930288271 756753807 898434608 852001733 193624955 796288558 424661336 497952303 638447280 280696087 883964113 978185583 616987005 176620363 142029872 87515035 717215826 130930102 731928211 1058993605 959794631 132273360 349902420 744125559 216954951 57046798 1011583017 1002641195 752605798 262326432 138440722 302513862 1001049919 136754027 581611093 117352956 17069106 275510753 302410882 909698417 410298344 1014011119 611204451 810355243 251808921 941131082 754726405 428765640 730154483 1007062797 501470589 347835973 365499947 102965004 590352780 456385221 342807873 1045203542 1055433461 638917948 721028558 322495405 989627255 298854435 627571069 39097186 154156503 966256849 222096516 616546670 107448131 159528577 422345247 952890795 283791229 878050134 483922953 80460977 1054460907 1038949841 982881567 172285071 1035583564 643472158 352841732 703731699 703436064 692646961 133252658 448917377 748007513 482101328 536496375 126683596 949681386 281874450 380358173 96311229 31385001 617217518 117182631 906826052 67277109 772764136 988389576 949007628 1032341926 527197160 355017504 488518820 84204793 777760507 647456811 677497272 946625902 717647011 186765589 14286618 1003219560 339347718 993625184 856450685 621401369 737308900 618388588 902699214 414592331 289661589 76368264 797108455 1016629240 239807736 929820589 337332315 932456501 299369843 94782864 985120475 223881757 280028382 588791719 226179846 194308980 886363897 1038661597 808754673 598994850 518560018 365469333 773102354 275621047 205217780 1034447022 727288973 681471181 993152790 641385525 636072327 303853201 1042023382 306793839 815279494 903866649 11208074 304296660 833963276 815177461 23606321 876116636 546746680 116946042 294131679 564438891 827979449 133514364 739889154 442277325 92435159 215062109 875025869 1008567943 242121048 29022863 14723930 894043444 838025607 1070622901 938954095 361297637 69594494 30792452 510133397 76500736 814852574 899083810 601831395 992062262 48520859 1061506490 68947853 517209023 712708185 933337075 807816058 312863790 1004558693 81095696 131378167 499297462 1044534399 1061488114 371883725 978236278 309386740 963502539 205915433 326189734 548069557 329668018 300305123 297379525 764736531 223557084 551305632 57564538 858163453 177914908 657864635 325350655 427615031 482183511 340280578 465657188 836268737 766953935 203391745 499372940 1017066907 650750525 536656135 286532876 327793710 992124504 197816759 88048961 644185630 19777617 385976626 378604940 423235588 64447619 174714181 1000248330 884666302 838986748 332598100 982889214 929159485 367962428 482879666 386383644 954795174 364820285 760904203 695207088 970326356 880569075 498522517 882859917 997700467 175834287 1071321556 385484010 398277204 112089747 681955346 706390010 407605436 29947227 1049886878 469048084 954583686 537775185 1013664966 279209691 636082690 405498471 787001480 177937575 210289096 384009351 481312991 556132257 214807115 553130460 865952301 191364936 10278343 973482111 82696551 194298626 1004094601 509598063 37935712 65440218 98378303 1043293933 730576395 909287 827512295 899291113 342907292 864292412 1001508610 555427547 105125010 861138352 739100857 389877625 820248277 426163406 357287681 909408090 825630116 130787480 31392175 686515296 202498545 270111336 814183726 137993937 287678979 1041058885 465824018 149292993 71244889 106530628 1019592244 417170936 295189081 830901165 395258004 134620572 649670607 558233872 286966712 891899814 605361545 637874195 35040634 900014935 464776876 117930895 1001343177 858860490 199442842 314222608 420354999 740199592 338032460 856715253 809006596 458153641 29839841 939240348 695673564 880503510 496572337 665761777 134439189 938809114 1047538464 388504485 786060982 369341129 216006974 476730999 508943522 569534095 356831846 851075818 13766922 204474918 810895208 228915944 647400194 322172588 520961220 442144996 692476036 495330398 796115699 566606364 790537804 818626446 1046852647 310542709 602499842 199053944 624699369 692535086 679151431 238055183 216319793 294520138 1058607270 388049278 890490448 1005560362 944815537 948446564 388672033 489578996 435316160 541531675 886525814 836927340 185109443 875872687 389794930 443884841 15403646 611909014 751522986 750333309 183938382 697163819 979730372 298555813 780351598 261496978 397347100 389063835 775736434 578108139 229131021 437825567 467904236 963674839 784984949 998529957 945116202 925096589 773796401 851993350 52048303 414439786 643027145 220388156 18177731 544001823 986143821 677267738 1006789665 198881942 351107702 429131024 624649701 914343521 929616692 62890961 293625450 82271303 1016032317 810137452 98037994 86487253 785952456 453863022 477304108 980074508 229386385 558577247 328331987 967814718 371861095 329015958 744607811 229174129 84440594 780807485 235970410 626586696 375968434 202315849 151743583 785762784 330509411 19942708 167882841 259506698 548630038 114455513 894416586 196743782 151233229 753767788 964979826 63293324 249235316 72060828 357676240 745484757 831285487 327633967 7485294 315381957 654982062 765445208 50167188 932232658 173614783 187721521 347865884 624279029 992040331 58999910 480983350 936164009 856495802 693296991 434960681 683964607 113846997 314358428 421399598 534508619 996958832 450776074 96296153 972986389 859363682 340710422 426132768 813573654 771781468 389919773 748550253 803721895 103158012 212812546 286159611 810532207 50271847 735733440 384143268 484742123 663047015 180313707 704505094 63482695 330245217 306393391 748494650 185492509 763550202 821299418 709301830 130970700 747118264 492757508 149103524 41909654 591164165 738944365 265823504 223640776 43523848 171936008 404346888 971872214 576927468 536242745 839589464 1035253774 650448618 378674002 330504959 420909606 113670252 1054614663 488420562 90441406 386850130 461205076 435652992 604986115 1013089630 171086160 1001246042 845420266 538245833 896285561 277570609 488264756 972191788 126694143 421651307 48623880 697546984 1055913735 969955657 115926976 623809675 797588770 867062052 141260356 809858354 286539866 755687361 931752447 927252781 749539166 514007248 804785019 55945042 364915547 754154649 623057674 875873301 98119994 893804092 338833131 23977543 452862019 134149579 534138602 658488158 663121409 432322117 170575616 466470209 287235547 585654674 922787850 335643383 532339692 144994569 851928147 427795340 929289510 1037787409 434551067 413685467 142058392 865589734 507650540 96567418 543168901 229767737 865957040 270849730 911302131 967136560 330214535 372223446 232097112 256201179 993791561 63255213 596548849 146687000 561028678 304366312 122078478 510687833 569632135 634627564 992641651 873450235 770391611 919488926 320441323 499254566 660916065 675710361 976530235 469161289 219354286 220020295 184908354 509063730 236733876 95523217 715405473 87397991 869243238 249079016 28720046 1053849093 585440749 166534272 964576144 754116573 857727897 177621282 730846765 151662599 819720655 422114952 679190506 136584994 379967603 344577532 216021116 564037629 910406020 434539268 119088605 326964574 159150630 1033361802 1052388377 974748479 466035667 941467291 561873059 880073710 396907762 643411458 1031138221 875065437 707377707 62023013 858016955 318492329 864841588 711471695 273454961 469534307 660334161 89473198 1036520643 1070843436 670125828 100305108 1027663593 813517043 60122775 522365385 577073676 348764325 403287095 332462966 271220809 115209186 112763099 26026485 263670867 289214240 398918820 684830528 534820194 574840112 1010733939 522084641 1012160031 51995926 524393358 934696326 883914251 958163643 1026431950 191330507 577272300 278927532 909763133 816599329 966578787 593372238 558900922 981988868 320768993 251705654 312544049 579142613 842266264 11859871 248766593 816845070 682584154 960112121 520654624 614202991 498007598 732261155 371617713 172286972 997577649 795956991 466498908 708322922 505950866 964734797 128329147 400731308 811794771 828539399 936009476 902645368 1013453849 648293918 62126805 536401368 991753669 656744586 389106914 93569589 316191484 417800060 365989118 983641042 964026281 701063578 844319749 507247363 645069746 170214747 561307675 167644400 231749940 796140506 38604516 710708734 910931122 309594931 272479256 335825054 49525567 426042035 838616222 172423330 923051705 237422532 200827500 932595288 731424977 998314245 649807982 285132837 296676734 937201405 76804764 754726417 968846883 856950755 1044271694 124935984 634249334 63295099 566272293 757787127 326539389 923003057 296251281 1073170663 715046394 223029177 954533016 707908412 914457476 196757713 110710589 890070743 522042273 417342130 259177407 1063838545 84009206 107061653 2326482 552675245 154121007 624721960 128537917 323128171 285476956 463204173 180737978 747775612 80419883 219238665 194458952 184518316 842421465 726648700 266557018 308214177 163479258 60634683 1068649891 675669387 979065830 963074472 868307467 15821949 875851322 1056217440 768971079 545403857 238927084 404163867 967294318 641172973 244222042 152444612 699337109 48375840 413809011 50028169 474266423 39747773 249393128 788994491 364488955 815900509 754139491 274922719 282641098 413397359 1068854462 538667815 724846342 403381821 497895233 1038841485 524483368 778082989 686025205 917730773 985289332 679393995 214936592 1041989045 291286906 361693030 915072980 306829703 727946966 795263484 340976178 293609769 661552691 703926970 462688301 608022588 493424440 1058132179 999550319 690056886 834187407 677834510 42387475 775158052 606569867 932161138 963240215 749793383 275262232 783786519 469740455 654204384 907190563 861389048 120162029 712527152 352249950 538453777 684506633 539059497 1017809052 925241667 268567176 102516111 1008287714 318598454 968109619 990125367 526345840 400223795 122245016 901508311 145179837 931963137 161077395 714796277 238029421 657600973 175880786 177944519 814440009 463756256 957191007 212684281 44219806 160631351 639697825 692770858 583107940 346485225 443967938 190377574 883776966 973385717 101118348 974643973 505451814 943935681 637099912 362027493 326457861 304012169 803496779 794869567 300136352 1008020829 815902972 780784529 182092271 484058532 921863021 754463001 394214088 24526235 389590575 369895748 848242572 27744686 397819354 595696848 324055672 243366538 536393247 32163271 234991654 994722951 399485528 1049655929 330018227 651128029 527263987 179776589 989521039 417063154 519348511 40933550 186330517 88374392 495735183 596022496 691102443 230218887 659421672 54823247 1039887496 405226803 455125998 278969760 804945388 130534087 790489026 1049992768 425323720 99509644 48526611 775587294 871518525 211636424 977522510 591365620 679836051 369302758 511238073 298602082 238655070 874710731 436221402 104732040 644117168 627392819 683404808 1038084897 542721561 414246878 497580502 221924610 934013669 158675876 184090398 317036012 412491822 142323772 1073011517 586177188 607678072 850377035 702321681 153879961 142744133 630235658 535608673 522624049 1057892288 989668319 500909800 639848542 141374357 1015809423 949691445 217054622 363552366 179462756 239481920 644735394 818267146 370185047 60938442 192889572 1026388951 1055766002 420106664 1016884482 731446486 342108761 615861794 193487845 164432068 762250111 144276467 640515301 314636164 931748758 31003968 171288842 646642030 940876192 629960031 700342805 26015160 822083105 357238550 812999733 1042156268 413691008 809375601 252742189 889239284 307100809 964511576 595360666 224301615 800740520 345973321 547541143 591919122 383897527 609128086 98536137 500195724 600481354 1057680182 96185486 573788705 187103129 918526084 699619820 346018414 543872007 342153068 939009151 893632678 890940636 122840169 157848226 382486753 565655145 1034727115 790764406 103218817 1024483719 942070504 724829858 155080817 163234810 723019363 59759381 991360504 218906382 665854610 560421968 188202853 199523391 992008195 443901018 119132553 119236428 929462149 7860488 251675319 409298872 529729669 306830181 738265351 153702142 701790315 1045514722 642266941 47730091 264900519 563188354 757696249 700904232 264451449 12133844 257413554 1072486756 274122045 25751456 44044267 751861910 171836382 28574163 484922636 385878469 1020054727 1065578281 933649067 524818079 41512171 797308419 528590615 115892650 374685526 373121615 508176429 54885391 720430818 270275565 937279610 570604903 590298060 262316321 202946208 884330413 752951805 180372810 684542143 31329000 117813694 48408850 289875103 162333274 155808671 415871162 725565169 809085605 627551181 1008402445 988571946 754196911 351957267 685907455 432652990 460500826 68022239 897213366 238348169 295178142 753760872 1000106216 354999401 433188728 490815128 172936347 32820833 361521086 745871778 1061494864 507927318 18673690 2402946 185701635 142588537 840962789 969387216 852839112 587937956 158082579 85265008 1067954312 1028148923 897222074 69210054 408523031 1010876635 276087077 114888886 240753016 13948071 799306071 83450535 466581412 23436554 681493852 1018595513 742615602 164027653 663782324 707372889 16399609 516349838 938327750 149143950 372211788 97214902 917598425 1069068427 225461752 724786285 872817798 882860559 547737539 1021587418 839533854 259147979 290920863 551640089 123158525 368747049 1063322003 344245485 692819889 7103551 591617794 546031595 98041805 129043445 586890329 869513058 914743598 222996768 304488284 1034301970 921516993 221522109 694152907 196788275 532833299 1042526372 795016209 40803219 454716730 5320269 305710552 878312367 540130369 704739408 993183892 683274189 342417346 465966080 478335173 458804033 288821355 922222156 915283296 196677425 714074084 906474657 139917286 469105084 935081598 231201919 95448850 1028798676 557159991 51632449 778750940 951382792 398784872 250639835 1054989078 1019432488 765049203 332833333 667034634 598847309 99207173 1005366361 164457303 982854194 383847139 589430326 555197993 256795340 255858470 165276556 581202337 969258865 778311214 272078462 310803769 295092626 930070819 866962686 159077461 423672853 701297488 417289695 953815670 548137592 961124161 313342380 701750940 319109086 806995606 697585034 868136782 674116935 103874272 182581248 155491079 26932347 31670935 177328200 738160836 747995077 798098502 896723720 707091067 988908162 121063348 476421261 905281637 792280860 227146477 737263598 744986608 614614343 962577113 13559666 245580222 1024597468 324122014 820887178 24815620 1060628681 49274186 95844726 703672400 845323344 334111725 240190264 608444995 467379906 1002198116 252981763 1008833414 307985258 809149062 508021633 779248017 249304948 497887165 301149521 756106311 850242811 304979098 437312940 134725911 692155574 753701948 921164372 522697197 297578702 949286922 638650086 622314038 1042798423 685378167 475892952 810644762 518700171 672720544 677242739 769658340 962388317 452348129 349700788 294700249 380540968 288235356 656667750 586009922 896161066 554545298 1011648941 660132508 618424742 182683516 95908304 773034015 553166653 449109218 14177777 1049103267 591754965 4103102 103599785 555870125 1072456205 104476023 143018002 518142171 204496569 643871797 957138618 1038237612 1003251815 857344897 752222266 784633203 390528051 1042485609 662802849 919418032 677532660 811807071 743718002 903771033 150331178 472596834 373355419 881954163 131318193 835340510 471936210 7685048 480985487 38515051 1052924470 955082707 413836526 562769836 844940977 525127813 412017899 544225363 971431258 609271033 673624893 755996576 971967631 75392323 943945026 351911352 689538086 283684466 977721954 119442936 251854808 1018097799 68899788 220855280 746750529 414588015 956053379 392678285 465268896 314134710 665970751 723972062 575555936 1020709880 671768074 1000001955 872185136 485271312 24212024 166329751 517761316 535916276 374106883 453164172 589085632 558363265 264139841 311222755 394694561 184672679 713109807 821535681 811395604 859951060 141106810 1052786628 239918676 931892915 152880994 284371279 201852133 585680521 167822650 183756300 157319648 527488131 333626880 404796711 92566182 834998777 858462157 1007840914 516942009 581753951 294542522 222074113 149728516 438401428 246338697 688672395 516579010 434915788 663521815 167316299 111936251 719210641 768037740 943348345 658535386 981729 105823827 566102867 539056243 435979606 586554681 349084624 906828512 393388146 393897603 110294985 807046629 404398805 167665062 809248170 484744601 843868468 743502763 363628305 957075511 280712102 1043706049 353994449 108021997 1048272506 725924822 666693419 55216332 739434473 851817106 801468594 19196111 271011701 761048605 39028786 37526278 154009420 949592266 236337029 89325081 903306244 317049111 383780735 663597017 664530579 459105922 721891829 958429067 141380442 699859687 364008035 621380022 277472861 471872824 810975171 2355318 731645780 739033760 259258121 337624066 1009085818 152020336 392420154 578892348 883923106 573639966 1014369284 772070541 169760731 310918006 987538309 1039921673 273565542 616450309 585759947 609693021 913919077 536111973 234472845 389821829 720466968 577774246 891317182 729125291 524207298 345829144 41973074 210604496 1099374 823123348 1039281361 485448987 724832255 434403343 922900483 252900880 160511668 854260396 500029489 17113649 795918970 870144210 140445337 888128074 797135190 382224693 239405835 669340784 763705752 673662139 903566854 692312910 952637323 398376758 866158758 578799657 954505125 65439758 190671167 181138867 702301932 276587198 632655348 492607475 760240960 279711574 336742586 965646668 119519158 234041076 587713476 918117030 409594578 709373969 529740844 875040249 885780000 104395360 440453529 996836548 47805064 850537485 964110728 103759391 286896146 1026195878 989388058 727542103 463137425 715736444 440372937 147577283 575286254 133594151 663494027 944990892 213957093 480372159 16219376 954456180 132147958 137090014 318424295 183875853 804569514 891773058 631570395 51574738 447097009 936446883 413669177 697876932 1021554308 194525826 426815697 471467800 291757107 721524951 132443418 660541476 8595772 212339010 108449111 982770034 846615173 678906158 679988278 339835702 826180759 934318933 656821748 268530430 287337923 420690930 355234350 694503153 24801386 1066237080 88884729 405275472 67432430 11235366 386192659 272993037 551432262 1063152502 402466572 714972114 105832373 1005860374 114983944 930597818 709397914 130920222 41284442 906461216 47494093 792655143 31479984 510110218 810499190 189288481 1053157307 957964227 840248529 408184394 949470316 646631552 852465326 304239545 698626829 1038882199 274481479 43739268 868436832 124572163 1000653573 417894679 55849062 57940467 306089026 876799642 88151199 721208479 64587372 371213210 836778411 418709729 319476691 225939951 653139088 135654246 368856032 366768858 203881057 708964748 666912437 447798654 713919067 274393614 510384578 39263199 351637311 802814932 801272991 438317180 177180264 33864900 677239541 292942980 402189771 715633260 487126390 832704546 355278591 898653862 313116947 930713223 871194717 325620427 346209851 771258540 305312792 31258454 276906597 1056155195 591122654 12413372 314237770 852902793 833468007 860699263 503879979 196457355 861752597 955692682 780971710 909840721 737332259 855637867 146190525 1010903625 910710321 40696593 265009479 86954342 444704627 138800918 148670831 764048140 92268969 433022780 195722903 197796483 1005802729 43991642 858627357 1002959856 552882068 648963342 922313930 842876008 620201824 1030186748 294224274 484948888 998367984 791677137 691823582 234913378 867664080 214722516 1062083487 934195318 591749411 393485020 253887927 709667228 110711120 454746625 53604697 12938702 776839091 44906659 94588459 1057212134 669630359 1042628265 224680148 317193236 703939299 815289468 603280499 852931159 442196 11863278 177994231 27704605 593916537 558449145 748688758 1071539870 1037947684 808662213 7265301 818027153 452651031 696440945 206026832 976260374 175400441 777899712 659796202 981932139 540049871 720827119 663281848 300903701 492314599 64544261 674076947 943958455 830583177 518326510 384055349 207805290 43168407 743973918 491233610 236313783 934239366 110692375 554189899 868987371 100002594 961210308 441893435 274077736 65924627 925448273 643975404 535858608 494484644 638502872 253428138 30775613 917845759 909322630 767732357 726312816 945941515 50216517 1032336805 628761583 1060306932 113913251 88517270 346670658 157683393 277550788 490366410 32370911 489008619 549927214 558413334 335333499 738898912 999827605 587989972 961453124 906449956 45242779 233172989 1013301405 596914784 844693163 658226793 113919641 595732189 379177107 576465338 885897502 881128189 557557008 187409990 713591953 402792645 633490926 996244595 523042214 390616452 873667957 64992516 952233087 164313432 322922644 480117255 503036785 130073834 1052102782 789994157 1050918992 573294996 767732231 101429468 1017136138 781180793 29172690 933038399 766289635 36493610 682278265 455427798 129667375 386656475 379230274 317720566 25651737 374080354 836488855 552302448 61846735 615346678 473261942 378786007 907627941 301864832 7695081 293480221 151978057 106053097 142180278 820099990 924799726 119425692 522247303 672305278 420061804 757808510 762136173 655958974 510486725 824881177 314383078 176119631 426124003 61177761 241205784 22605180 487872309 1062287259 544031508 805036385 429322708 536237547 869256452 595798813 704977631 826956764 482457626 448296268 189821335 583629510 175508423 499336502 113771291 1039486460 760816829 762210866 196376616 615577947 836446979 518307238 510907777 334610968 459811686 370362586 217572156 503021392 457149481 827341363 1026812748 828707383 857039303 787590967 334241809 989299488 90749010 63203727 1008751622 39009841 302206564 196640838 114301337 487554162 732523247 357123029 92763921 338130190 925923811 1069654419 1072750966 206948689 445602210 665323132 525376907 99062071 517747286 787854116 113694257 212444663 1042633391 842853771 101543482 886296381 719524547 934064988 463439951 29081847 810404999 246413516 240722689 1060318077 602856313 867034888 322715265 58459991 454462827 807861056 153801491 140510546 783169311 734055105 731328149 472576746 121564309 941383744 209426946 738394507 1030616520 78064125 597880510 706670372 127768859 815455449 604908617 284187160 574940355 320939009 247096928 815097583 1048511117 705638720 503743990 352382850 438286149 496892397 1027566266 261855183 360507765 240953506 908300460 46244721 821243363 850012677 284912728 587480661 80035555 833321142 741779398 443639380 80042634 974163008 411669814 131087695 783393856 123819510 872067967 558304953 822035803 657657954 83612505 1011346488 480216356 800946531 605618485 464350421 1062001829 547545423 1026800334 9531924 997884300 382673668 362993787 150163756 959562407 579654145 85038482 811260549 284011038 731545892 898967024 194927676 319309757 129130050 561380947 53055682 991955247 958245490 1051008429 586664290 341661051 407309911 478098527 890136053 473979844 40792014 628028902 805703197 668858013 415088833 993685404 710538015 309039489 296442590 162155875 625949116 521413451 422528842 708971618 277919911 671452897 371077437 749107240 1010987540 239470289 264078450 950958530 912208592 892751533 761177066 990893267 981429292 563033451 19790110 1013603058 680431721 177594153 684854399 294301460 245926794 1050749918 28966374 276117510 1015562438 925507601 753707818 775335955 340467552 827375840 106976744 907555180 11851386 66456118 706588825 330319597 92768973 8587811 704249665 932852696 656145195 681373065 423299501 96880529 208039190 318987780 1051186421 298029146 769413217 397190330 873393049 527011658 203492461 858343210 1011355950 350543499 140837155 555787218 33051809 144529836 110790699 1053540318 133144486 206793031 144767237 629240079 388716412 595063630 92762685 930073181 22558860 1017472057 164174003 825786143 998853553 829083548 33580542 61206932 215563104 659882555 739289732 627604424 559868676 914268243 161975001 1010231533 655585847 948512899 593298189 512948340 981281417 966683938 89713703 94828889 518360067 214806570 394143768 344464138 4913023 596035774 163292100 187012195 468437742 1072157534 960028270 953457664 305671006 33308324 139242856 564352777 1004509303 643961074 886359511 160944702 840244537 46612767 1045319854 391141311 163071760 908392961 999156594 682051284 747157600 921988955 645159694 365918685 824200906 873731583 1028036481 1030552144 555923111 610607614 828962221 436746640 954280994 167081151 441141725 921278548 867724746 1001434694 596375686 782745639 144022552 240381229 554096208 953162251 871982342 938586871 34900759 991954917 434017318 348466421 464902340 56412797 327259148 324232952 914423162 144253993 356841226 549100715 5918024 258746154 872644604 742600710 248076148 370364352 518985537 792181151 411281991 142210332 732423241 808084616 670129381 298405706 988106445 30614105 165171568 521971302 852397199 885546448 1063557556 788210600 340672617 380099120 785484113 785187579 1035583272 497294333 728889104 796447675 568208525 770470757 727173744 1813400 1064076424 759208130 1015065686 393767659 208097460 897304480 848739802 18305752 496413237 695247630 270307010 91771249 654441091 418039615 689970855 359378352 947071632 183229807 765930887 572918631 104836505 455496111 208059089 928599048 862908442 187046744 160076418 806858835 1044061547 67213979 371274096 988821451 747122945 876087676 1051617074 1028707170 514368948 674840167 1007052427 403201239 58019514 1064424714 219761169 892946603 691534619 312877009 959805924 386978399 23624341 765953338 1056518613 446928079 626924331 753342001 628448037 691787599 468222977 497723690 207463564 32830612 212157828 78837362 386122164 250575969 633100007 478946140 306038954 982371365 778463065 328268628 872913251 350884929 962734568 447435918 569385010 252980539 258876078 832821020 41120075 845651773 741506729 185897939 528991702 859334887 131165383 929432298 494785599 1018951556 282303938 389763305 790589186 203427778 264279866 711066063 228889686 453947766 874982640 895663687 202137771 324614941 959276622 224935741 69992601 430550773 630104419 910467700 303813263 765703817 343145557 298335948 69055203 450096509 694545824 1038044964 954801329 443713378 262796483 497169026 784706074 169264008 290404449 837389092 101079528 153208538 106109656 202804863 617637024 755589351 832186772 467086774 647552822 852402074 1050629908 160136421 385475327 151935554 762735558 408503840 894321643 1056970170 276163776 345464049 990046428 902531572 853229066 918736123 387075498 718610083 268571503 553675268 354034466 927232510 988337496 1033331114 987369507 1001770110 1051585467 484747428 885088749 89591511 604498105 362987721 607248042 542936488 716066110 589840414 207027022 104928787 57930309 50831884 1011484229 656514990 420885855 254792431 553549279 1055886085 968362242 880937839 585217917 477350000 852613051 168596621 915590454 1025657951 909093654 778772385 224203248 289544907 397853079 223491015 335088587 445346368 346405883 677162398 711968311 978351832 8891968 776551385 296711558 897462065 578371154 186992897 300676787 431806978 114768356 1058186928 839258391 567159097 445418760 737310042 735236558 492789796 515327871 354100167 438270307 296014486 997390937 455826231 261766062 480604056 211207347 449572114 451293345 168586722 116167156 595913641 145918456 887814826 965842627 755700744 621073056 887361123 400121742 45662078 253172429 437423547 1055296142 1002008403 668334705 46009762 10491120 325642046 120845378 717185465 792411412 232586607 892751459 977544048 604346141 952463502 891953731 24694416 775442677 198558556 668532747 785164938 503710517 981965454 401762590 1036033170 388961594 357255665 982267242 112158404 798225561 922486069 995486919 660854809 516410375 548561952 703001620 752850268 546947154 391511420 1060620728 163920963 237122987 126322845 1029163345 1061169837 101901980 923683724 373253663 118482511 673096738 88289109 367832854 268722435 1033985697 833590813 927118138 562599086 418342162 864636029 781334624 93652886 368058550 453733315 731998948 919066674 57386907 157900310 625164382 212707493 910052532 472362489 791291804 447930677 312773389 863814358 523750471 460329565 828799734 841284749 549726966 361100238 654304414 654786138 937813113 48541856 466866328 264812471 1044994518 203878947 423675402 685959284 584584440 214354656 142278103 112813259 281692805 391416253 164307887 731597677 583065036 416670813 117766337 535365225 287170231 40855080 916693952 495071098 97866741 113130715 644693204 31461361 208624989 245760221 736732275 255164835 857359053 858632020 597419173 718108468 968664347 311009655 556675568 990684517 901062419 921909383 292009340 530966840 788175872 529875467 76550467 221521613 834147789 425639558 869377143 719603441 684724301 305194578 204965628 1041885879 698329077 747391017 338691466 931450771 181747306 267935691 59201101 1065277404 574448 159177737 804547609 853780248 1056639429 975555314 436277712 1036785855 241346764 145614567 764373342 196728605 794058017 1052566821 336563703 641970126 140675596 499653867 287968372 320238922 963933244 762224880 96829209 941786795 234755712 740970367 835689039 117408752 710277780 246205783 416816045 1010356640 751096706 509487415 265292361 647787982 145810953 1068579867 901675837 480869650 711066459 377124071 653994339 86787779 26920477 792518115 1051403865 727313966 558237308 632936480 495542214 447227070 519910517 894598963 258448843 344026523 1058855284 163535267 1010714774 172094783 113069044 683321891 35756275 82832998 348091690 359601032 774449297 875135600 82580499 451649347 604489590 638239174 419712030 215846904 716033806 139081096 477327164 526869385 962021554 198924535 82533664 193322457 428899323 1025003350 19611702 66953720 303268365 151772618 240293957 374184362 846285300 799754705 1019483810 401074555 522931250 574721810 293916231 674386280 446757387 1071012058 922184758 16483508 13596133 179281046 753812260 487613066 476109180 299355464 272607334 289925970 470773440 64465235 285591461 698882277 301421016 168765202 406589397 123483804 151634803 885235285 185979167 694602387 117928046 741807588 904366026 122985140 267342675 1002096876 1024499923 387649034 273770471 711237086 970880471 586035419 946720637 881810790 113211051 47119521 34447614 977005296 676432269 1047421324 895781574 1052844079 249254657 93256598 217748863 11178961 675799274 361454097 812190153 691911499 556229562 912261620 356384521 640109534 235576753 767506080 442230839 835867362 980307529 639606330 854563047 120255958 175355010 348319459 11552189 533994075 69992751 858524960 454640873 759504724 623279583 15619747 801800584 226420962 765247466 325820688 121275718 310638679 827030915 682159127 493670603 684609878 833925945 273378954 789415150 868502065 588798789 127417543 702073233 908922327 1001698724 359726187 939683049 159609024 967240208 76705807 997652120 38438562 237943897 506599475 590647629 514361051 913598689 359600899 16257215 328248037 933301806 84948829 1045183144 879383224 474254274 112736096 126025889 897805592 943942157 828443579 634705957 932493769 239572549 422071972 669948367 555573593 519159387 585688154 474277715 105075252 706629098 631940929 739410232 271061619 662919999 601170900 369826084 3231406 27972084 380922829 672195800 730920194 83575865 866065898 425891997 389463040 120973470 395472716 559025044 803108457 241223229 142724018 552912935 454264601 198125041 523612192 448505091 968579626 76215513 29131906 904847727 702621662 224479821 382937712 1009204369 296595114 436898474 573001979 572376949 639326213 920305652 994610031 225425932 298733156 512200822 340657395 356123373 297305357 527087023 792948745 491198547 487063340 362121016 455545818 209710733 872751721 618615851 597600997 457859809 545441469 799537931 36668325 726204118 992268011 519371871 486164329 899419801 416820274 44548834 972989047 471006514 692082050 263475828 695379951 539808542 689673548 997832241 125704094 636349303 808124960 949306412 79256305 1048922395 229074038 493159921 971249448 608695979 257321553 653781129 718604823 508769557 155648795 559700293 839043464 461978041 942336119 1058787732 969803785 533358150 879039794 143028478 439246820 79264960 398239458 289437179 115640248 216077054 1005050637 9602271 921526198 1071460526 494305807 710432156 1068150541 938370857 113897955 84039750 668426662 277092854 61667925 885212026 166012992 97553858 994888834 336968128 450528992 341885441 883220907 281890816 379934606 1030852862 346886508 37753638 528327122 942669715 800064140 904664832 84034265 634303888 790934442 299690896 938312861 574726060 550652553 842041551 390034327 329703681 287322161 663370449 10255337 423618322 32456598 829985583 802793452 624818882 838102640 155713980 900857219 868442275 975729007 275125407 222608056 836021561 932103357 320237363 157110101 524713592 159828047 908448777 380088718 209416903 137259761 889543704 985231928 741752658 71836190 834315291 505123062 176607004 11120324 300637332 542645704 255963073 409146821 352436361 1060889100 608085581 1063747242 264698783 309242520 467280831 172769834 802388743 840777865 959757530 890864966 648374555 502210146 406892815 1011742914 481305804 570551613 1004264382 244393010 540980246 105927244 869544816 709628273 53678563 19610113 544301241 49781386 724910918 236980879 444946701 858633856 766887098 1063722705 808120764 596874971 791067840 738464928 483405195 774265283 146043974 1016681245 392689727 428240846 694218030 245581764 978394113 441864798 952620312 921827313 719337962 364035244 477529741 117568635 61740185 1036229277 243328373 497213948 13783310 276604350 124187852 680644490 970802531 353942293 606290517 695127434 629831457 104571692 696119364 637515422 1038660556 681177928 1041974914 968879894 1064557398 661774926 717397686 606570445 220125625 39014760 489204607 966605400 571339700 852138028 71266076 977685966 765511736 1060681320 595908848 878827155 756509735 1022655196 1071833524 128529926 817756695 14944783 466834949 929269937 1022550016 636226899 454932896 1028288281 751465403 338050787 415001466 475603011 984473701 173893173 578351205 813693549 727242917 774044715 709287535 895458401 668857621 345384872 28876636 36315419 370554838 618367470 917421038 211720959 72160628 932302607 213585880 958480423 769222603 374163807 420628726 214759257 982919013 695644588 559917888 951299858 987776682 789600733 967933672 884276388 669272800 938652747 83248471 164196019 432695163 786058296 555573535 721630396 1012270279 953715549 260794061 865376359 1067396115 1007043754 255448580 909031837 777623952 115427237 534276827 406700409 751964311 642336717 122893747 1051383251 500623932 834650857 489508438 1054802627 671871416 816171428 1017901157 277319212 614337226 589395387 141251495 225028189 655085617 196487016 375602991 535292757 289627927 468974050 1055609500 439161881 587117117 458413307 901907388 203502555 71459356 940992779 343366394 349275228 150986812 946539652 694826241 689784619 871967171 811543189 91181083 200895842 529813996 284089529 740417738 805634952 695416323 831899162 193204381 1040951197 846215387 266840336 891018876 1049515612 365554477 940386938 977158275 47371183 408473214 816973848 102773809 262545454 969687243 804678418 1023902741 879051704 897509450 136111267 950856880 690845488 825054121 538021063 353315645 947036785 641141577 327806094 855457065 210370109 1058453055 952555071 444677572 585825811 874932780 602396699 687281688 450825303 727575555 716964166 796686594 473864665 47006577 1005745365 150790190 302355501 345517528 500318938 733326104 40000065 825573262 289601686 743696917 384002015 574923748 442041623 724243735 578987286 867955625 697611913 448328012 10523852 820423806 25614627 225615075 823781742 742740521 653172096 299935264 474772137 1052741368 584131279 319072693 9146831 315155663 565148733 767138107 585358323 99082678 706156047 198870071 284161667 494063202 463032291 1030384860 856475798 309581711 1029902698 573002630 641399600 805339096 142783063 252565683 557954530 732862065 1063723543 853894572 521628635 670600465 301258962 39814480 3415149 60234440 54870263 1014659809 497795708 932023544 995793520 798982381 592077929 904350147 194071800 120910737 408852327 189997481 1007381786 1031014208 622992369 210315653 535572440 419937373 779352656 581163528 1002941291 652910612 545597730 953014377 946987494 832199030 950737763 208259038 601097333 230385916 233012047 409923547 301417000 272860128 453403368 1033223995 462496790 377148781 109691474 870020428 896303548 909513502 456693223 1058725232 9631260 395031030 980227067 373419137 140945808 912808394 707544425 839590094 380203234 170709100 133521924 729254262 441836234 806348972 395651807 262587941 315343777 447632063 695509302 939990694 921325707 813745040 994498605 584256947 377405949 535349155 424889112 623200053 162977413 862120523 1009713704 621052958 607626761 2858850 907660568 18218132 824584472 321535 720220070 5858747 172402468 476886577 810356817 824754295 471741154 924795380 721877144 1017394280 642927818 691402682 709649347 183742519 4699490 816763260 538359894 799196550 842631302 311794048 199057509 756618865 1056948874 965086047 961139948 400132978 443255169 1045915299 412328983 106665064 712977719 913989884 272269500 651392389 1008644364 539684849 455376194 880636817 323557982 879319298 772324871 6252092 54578502 58155751 218728269 349563169 885021625 542783369 865305274 613740780 913879924 135311656 782762476 318559703 881046500 318607322 541510122 741756035 187033202 710680148 496960028 871564475 257297053 271694465 215889829 1048736151 985368617 301670231 189567447 730738194 1062723747 687544264 103492399 465060222 815518129 282458682 392924443 115958346 827735261 220196339 538156538 692950649 689936752 148806147 734420687 404255039 843295397 623631533 225204332 240101004 383225891 947868008 195934403 431100625 1038219490 558791380 684810944 626585412 273441494 394802858 888866986 324135452 300947634 170219652 206873801 629202326 241057206 628899190 379726553 130563543 540327798 430192996 563416946 630767230 216776397 771758708 1034716347 168485590 977230541 100889533 785060726 305507326 19078487 461444003 948266949 485622716 22419878 166010220 1041849313 203156835 374260890 848329175 404641954 740214703 998384550 12051831 679470968 517150600 759718591 80877625 407755740 743916831 521165784 926190699 213427644 19393585 177409138 274964849 796639023 49699454 609575968 613423736 394861005 87481783 507547497 92005916 789924921 169320311 963700542 368478416 729508277 830506904 294579896 482736094 298483595 114231361 748647016 289615976 595163213 697702368 272460842 393000620 267160676 604420313 499837938 542691448 557468754 156185159 874158557 295632925 903082699 594611247 616652088 842867323 966953246 968400441 625657020 625772676 942288895 583471018 356915174 814823845 997809715 198594386 472233034 361667279 701086648 624767083 980093348 587544765 649517210 565291173 989760698 736362684 739636303 567001157 857195014 530517915 955186421 566080492 56048484 374529516 101076752 201017457 12819904 728492327 965754556 628870883 297268092 677929240 945907163 46362779 342844575 458126614 1029027547 754731418 822010555 1004336226 1049802437 977541681 772015596 872544767 645027785 807375422 367917516 983896609 814870724 863348042 193097042 250874110 70321713 854187973 685060987 798824099 505718926 517164972 426037879 248469167 941849218 526642549 1050446713 538548820 852914821 444112750 804418230 812585444 1023165507 1005601255 499864709 273955504 999125634 917194408 479589129 535116177 1000756369 730263162 24222637 710723796 655157601 652528736 822935469 433145291 873451130 1070721608 957667487 700933202 455339424 870004953 1009168348 705907878 334652636 6868715 213299100 1175449 167591210 726051514 477143653 59262070 667542238 165188248 1007558548 300994196 117482536 313629339 457498480 18384887 853608643 744976166 231643449 374042093 108372348 1037401793 77055047 195200425 426262209 188470769 625429079 934819532 704088896 786295145 424334661 751041566 211383090 587392073 1049545006 102993888 1068145198 661007458 831249694 487277461 604299268 456088032 940289423 353585669 462668631 599002264 765798773 1069288109 596272740 447508284 933715614 705510843 446309086 370263747 958712289 558843207 672183623 288699619 122071108 503429919 858904451 670233400 478005652 878056622 792308625 582947358 677184869 845009384 550026322 531876053 1054986578 705312718 1014482676 586953330 283665471 1071117356 427937284 627899255 870522802 82894476 344247797 81159287 847755216 914327773 201596909 1000739790 213382057 934350780 801544368 83709741 456472089 954951550 538119072 1001057509 90661223 250915886 1040787365 411711154 643910938 436804243 138326622 905142290 136243648 657263686 516660874 534576194 172523466 395524516 391890445 786067569 253719452 381618429 429473655 702412293 1047263441 719795220 124964335 832634700 923312153 938337436 247479543 90918012 533005866 897563223 476715242 45974527 392556077 791352804 939216102 723843121 669813334 807435800 301538712 913130904 683025529 484302553 805623419 222477216 797204340 1036414711 942340379 624364201 24830289 904698695 364514603 188282605 975896363 928291862 177897361 646551750 76919744 1030799608 777464518 763800035 66151761 223953262 599691121 475394953 124302078 907750714 86767092 111504911 931692946 503991509 700520656 854671297 841270189 708628129 199422373 782984468 904519505 758810385 719658018 274955497 332094399 1016931380 704109637 903482427 609927094 341003982 307473788 938645016 1030036462 137236191 1013954286 579108215 1001418006 131776260 537958822 502443127 401596783 782308763 18330287 797629135 478123345 828739825 636913050 1594204 861638088 987584398 39362711 609193757 41527337 724727732 643346608 310345375 835207727 944733228 148831702 73951031 328433470 1016216879 686857023 921578152 852139599 313440194 460656805 80104171 942253652 761303907 544870819 120695735 903878326 1014555008 730229024 839802233 381579731 270771591 285366122 732764245 704732117 804541004 202474529 496758870 290628072 734581259 488884675 337931401 131900797 602285871 861144095 827144224 1068511406 559299428 398085144 53844382 25759466 601839225 883828225 1000457921 336524282 426697737 900296538 777924660 547504002 846279870 728566896 167381308 274426027 34170534 608480222 985098499 375254592 762152054 771926262 165515384 34078353 291609936 150406169 156402167 1022799474 420779854 764168664 816582955 352537436 769810304 187512655 28506648 37184907 341492408 384477101 394204826 979953963 140144020 36914463 319736987 712994298 755103145 430378959 973327995 928195974 125609385 445744535 1059419857 467761437 164218454 441454226 410770877 275705868 287289430 788628464 354906703 996918088 552815516 483137876 469702107 148505228 501197889 1067244141 366616979 494682455 664578810 703107707 891201541 79515182 671941516 512604022 414227335 460202970 999890127 1005281393 818265748 194346782 1068653932 899085526 866770882 420875502 5749112 1025694 351037839 1037746645 310697325 1063268625 305727906 487359514 552071265 78211874 622646012 469917670 184756716 235708587 54610961 199437800 284122566 536408110 344637299 942652873 140551038 408185469 491472187 268197550 674385890 582307373 706469101 941838079 449275681 562175231 861469936 898778271 436738877 1048820660 712839613 334256871 44101531 560369200 822539054 643591614 710173369 955796376 34084114 627170237 705763208 965726941 243655652 373275357 239652286 833777520 136719753 315713165 468594047 450127154 232153742 780802260 293967965 750292727 941106059 458353671 1034913744 431133424 951608170 832266972 316324699 705896269 949874980 368240278 160469064 903670847 553884697 21915052 79438137 578539688 275509114 784502768 230033832 496313913 591814055 809870991 662091372 378769753 97196006 668814055 1026061869 675363310 39582853 831511592 733035070 117312860 236143787 69608317 4204250 206111397 980251619 687348158 90678563 931173023 1041792785 338354251 173372121 297042637 844908344 799617139 543511012 433067257 933460268 968689339 806967697 515515549 722011333 664614589 989645700 1028334090 45185091 722716539 695103163 592848459 614680931 550505243 682350425 826221597 725103394 628443893 479309597 491713705 949155733 724205491 647699559 169725333 459415876 1036564043 336766651 201616505 73209530 620321531 178433027 461345268 56126899 755172149 836084061 171064495 852714319 279279042 633189354 261864663 713828079 720686984 511623831 547574039 302446043 931857197 171167567 385792258 688216653 1027116536 436125011 934469353 568441017 652204802 899840206 946304217 1054209545 655227752 142531091 1015258444 802943838 652211059 790445542 427952380 796833980 114553662 27227666 388904816 63775358 607539299 398480305 631122159 493696002 572482574 166641298 657684258 958395235 321910629 563591631 452424725 28613242 849710041 827682862 909018012 88056351 942398827 218738031 1020128033 185493787 356229173 981451604 216988643 643323301 17872415 225269232 839413471 917878264 654680744 248010847 693654703 811649177 627011825 526983526 871122861 1057376312 238052423 10506956 803260010 6733509 477723869 447583109 171305072 230775633 900645680 154074151 733668450 208423393 922827036 625611414 538691247 579380963 642040544 486258649 399511367 729211860 104270781 663866419 598548809 117030191 963426032 47646476 449370670 913106079 878590955 59601948 350530010 986065537 55385190 521270500 153399896 32534504 415697528 850958988 777633233 624815925 747978733 195977081 967687385 123144089 203311668 514894527 826657416 736216212 379031432 1025366210 803424164 799096019 1009889491 105431772 112278935 921121999 782222304 997592369 750760709 375590058 92944515 800613886 661457011 489828839 557258819 917668048 11993660 920347611 28169145 1062199144 89041351 749730967 909696433 905774501 535552921 183896729 1035934777 322458348 973497209 389518874 8372387 950301780 180539782 1063982168 483505689 212982356 57332441 925069839 532474421 243962238 655957409 181176879 794895991 384280337 734072049 135783856 449295142 663888063 687609568 652385098 256703804 1043982365 578486754 133954530 471192760 480412667 696845813 32515547 233160291 606163602 657237278 168704432 656199038 562305248 415034773 1948927 1028984718 606288530 813134774 26973129 483001307 353481033 494131799 874907409 733762833 1058085173 183866413 170207077 778549602 487553472 919066470 813638364 980709580 823534 915390721 1056670984 514707268 116663763 499322463 304632756 770113770 603485381 622420864 637636657 758548355 374409475 65456935 188048307 901779760 95936874 294410950 648983717 1059393693 1008611150 220942307 689534790 198156893 299137408 121855311 921432177 500919069 497044827 424400936 300167099 686302458 217175563 578956809 148500579 579461778 192127751 386603565 706246978 741778729 303217459 687629493 523218246 205336137 919898837 45957988 227457957 197019978 716550368 1000413034 467444496 131988894 966195651 3400634 307539966 47888229 394657940 432446582 220099205 166866799 804315291 263070035 260737334 246883837 889609749 267444643 552655463 921036805 914466835 121017898 1055421733 620941528 239553397 246479389 585822260 369816075 872515464 449037730 747453408 1193146 1072080095 153663749 109657455 36168474 880802481 808496506 824629352 782215069 435334072 835091930 440135008 1047717249 159514318 708157652 80846922 924608127 76246176 18517195 835211057 695701474 353919266 433683095 440647913 979168123 840773362 632448933 372164833 813576439 133630907 239687821 620827267 338897589 661847552 795991078 22632526 814952712 972479469 255134928 161524019 640968451 297958962 986522250 524423801 409430969 130345007 898645054 883516777 604482504 633481487 405524234 272445028 80848123 61310264 296304370 3865581 104353654 811387469 138947477 172420175 1053463722 444890603 841110785 557484107 87451891 34342842 970527403 608833960 304477921 799484129 493846912 814156761 315680132 683518549 444644039 352560538 396577604 470920797 394333771 263526111 920980472 604854736 780886235 1065945759 807012312 22456336 997710842 991278470 617120284 602803414 26457021 160617021 734505948 1168160 585917763 994026982 322146046 652161809 204613187 120481946 890849177 719551278 12482999 987423684 315296660 272241323 227805459 441355168 68052165 916858525 264121848 492300983 21978801 1049627918 727821057 437942216 401064640 524995095 301110267 23339986 11097596 443247610 359234555 598994344 747192547 894394876 873862869 427601489 783191835 945204378 885119275 713821700 261224206 348720588 842027654 990849665 448480023 340202625 790558458 808902057 811062336 279211513 9918762 769765972 811954255 664615949 1069363084 836917783 745777053 704094303 216440039 708409842 217237397 170420892 9441272 371700130 282972109 498433616 128379508 254349476 183577375 646953692 918366142 475295246 333272745 514612423 485621950 148274131 304102049 381961227 63590515 68656864 455339333 453535511 907165598 274500245 475229415 490082148 649451439 560649605 499941293 597537785 873613601 678773033 829933066 459991063 753611375 418041822 335904017 424142289 68005691 277904258 19214607 496253339 183260973 593929185 973725901 898114681 201406513 117426065 687703853 750258628 58746243 790567701 524320769 396339094 667809191 321997665 855444948 13099263 683289431 201005517 386943014 866240577 891409489 840495778 371940279 226985516 408419794 459170812 395578530 429708258 804287844 114784646 653543296 1058664340 449835607 839568663 520021299 515699151 718686027 234973164 950317096 965505087 306634001 313133198 218502492 304746807 696993115 206082427 555693725 654739531 502420872 1007113355 484643438 844207124 258073081 974569651 903054598 678051127 44934240 816094889 320227072 601910224 730966291 1008772987 517653758 371409419 271695675 368118764 573341720 546937506 750485990 143527522 787370669 1029647804 101881150 368937012 785663635 591180576 287673740 690159365 485887674 8835168 589827353 994508344 1012464459 638431871 367062490 1016000659 627578659 630826720 184353348 314863585 195974160 925442738 904047805 882430265 893710914 94436274 433658870 918623606 187731104 946263919 3846168 101546507 739709282 564650767 601982809 569363371 444463249 755206405 237258196 636294251 359421868 899494312 386418384 134127300 28396102 38059521 155732348 70909503 256149321 851158119 610030915 7217834 709569791 70328986 47391400 448161127 852072509 671083582 10661111 531649400 919621644 431342815 517430876 990390513 301901689 1072818351 339113089 496571052 948997646 650160730 843854948 786896637 71415569 139253891 385648559 983007501 733948307 668961325 83946689 160486074 294136007 767064675 782970119 133069783 793899874 884447299 460288080 756620432 527619522 442109048 924513164 60375069 38567066 796751622 950239181 341844122 265236718 832272188 317341 662471217 870021744 972333430 564867002 956807766 582760991 738450033 402142515 576720779 969364945 681246778 263910133 1058040208 6595625 629567785 722943589 975386133 628714860 491529448 474694827 654986669 402608981 275261857 31942206 757038460 747021665 61758947 1070784037 913468946 539931251 3993988 195964307 856276534 468453014 411253997 206570474 278356709 324532567 88726806 603784999 533110420 263847987 568644149 686355909 694208341 732736939 466618120 690535650 365220801 222339213 451632390 632422646 291836360 884877096 915897585 983392259 485978692 577819252 669734216 108915864 283613786 667765080 263593464 48542853 129053958 536249348 919688380 841736142 845313827 886173116 246060637 253109010 52355787 226843489 517649091 308701736 752433144 972171226 1058155966 427552370 157379117 121240867 626529211 828253908 1048981472 343677883 521178749 1044058800 418695284 780714297 717903469 318842929 423463962 353036795 116493372 341712205 804605656 964995069 54891805 658001975 720442382 154791268 7365178 506338409 667318074 41292785 227379074 757017862 632443066 21441497 671967942 595761 903546419 615488218 90497274 242812954 320065434 779732635 136310970 408214200 1025381938 266871654 853939695 864489315 916887985 304660557 864770980 113372216 866076653 692898502 559577207 321614098 902681507 910014910 998365974 1013488836 794061455 647099129 212718987 28331689 761866880 693693182 1060458845 612842841 783714943 185526168 955359898 454932718 381286210 516759394 866372593 410606957 492951237 523376253 318484199 970829920 971921562 823593900 624183059 1027299453 320131068 896642586 236814315 496043240 83024973 139106218 281755594 258795790 958460377 804169282 362946509 229185357 165736637 859893096 512099303 56329059 749106670 633809867 39742712 639331350 537802852 202914742 823997784 362817257 1024840111 870522188 953836814 463342478 1044834034 851067683 1008963552 919953004 956362801 13511771 47281829 570733300 843411449 781577310 953274609 466437648 426991525 978165367 420519218 499334760 358221871 35971273 201849549 492534541 98681256 432366439 625451907 335606525 1061717334 172346726 519612417 1031522720 185772482 511475374 935634732 1062922191 135746892 63039106 449167921 424295910 158155671 319532056 321609105 24591250 989618649 126984361 997172714 1016901795 563176418 734845955 75646246 284722408 595909864 862104652 182160060 272974484 526517331 969921272 461679901 455220077 864785082 698260806 456859226 577048313 998026651 210417680 801371956 660639228 361905290 611654677 35331245 508290585 811662006 389629523 463124837 384991755 213128767 558362159 921537458 471641313 520698523 453091939 262388937 124367583 156490132 1023502236 23037197 797876265 561913169 481819542 237587244 305848547 163573532 463924116 587861102 254153451 305832758 196060655 967935736 241847231 138955886 359013761 617610322 1001068878 517193257 840828561 1060250701 460547975 987636128 280382633 989831190 230631338 986282892 532679101 487548762 550739111 666310888 100854950 618744455 222661241 740452652 724088381 650648129 154111615 582287926 694835192 17445635 474505238 179017113 704702675 58003103 150772917 192906346 499428995 351042633 194157964 1041178790 70855483 620397186 369013866 611018299 1002220445 855999526 681058009 389575858 129857661 175047780 532191675 126456692 325406245 171453356 68918973 1033439416 201058535 329687309 881426686 643547415 677648275 177840028 571217427 200760599 942148775 251101601 184161834 983818403 639127958 677512758 425698323 54024175 657339919 622082403 471882694 798914361 341993818 142556720 6505282 32687714 686645798 757967465 442436980 674889664 248439411 803329334 981979376 1025847648 243415272 936635335 344495971 284284470 948100257 200722202 231485258 328217065 129495414 1048978195 492637535 274836034 506328624 33278297 979979947 603361254 427998489 827670476 952474143 891086953 395307944 258232698 709650819 1024690155 648454462 359809676 1035825919 1054782416 402026226 11851958 366122595 497789674 544068055 254974700 932336103 570065391 495119322 509630267 837209161 223192563 654599647 290523752 699336557 982895175 44345304 968126120 635664510 53361803 941326450 458756851 399370517 420678655 442988119 65214119 682824633 222091931 768500480 10928939 38370488 1069463325 705383003 637642202 122548074 756602256 436771556 988745871 80542688 506200884 163636950 363634103 741950823 122624009 793509570 116239415 268595918 621133145 247461894 985780737 351984375 479156569 399030434 1063808370 102825607 11918358 247803847 39064753 294145498 6851840 274857444 70062645 473362926 453253768 98904952 306781127 289061212 372652673 732202923 813522130 74671633 153945109 323767368 197831881 314102591 415805378 646033712 867196162 84237351 663147181 544302366 272018602 434718561 784973355 266746976 390897782 423296475 344631025 344566778 768842467 915553596 717430440 451319538 1067016381 81436009 504940855 269346398 419224026 422324171 576739672 440782405 533186023 17005400 995427905 846855071 222275114 526331955 888373928 653472802 480391034 780684849 643402697 325362137 906282401 735803544 789389051 524989509 629152367 570575926 268696978 879185161 647917591 346302838 297946365 991225902 349206197 457038067 592564816 737290720 999498600 483161985 53985880 620444004 775296775 992852075 1034355567 171911484 768224397 412212185 1038972839 456095604 298325783 882797036 15479604 936531317 700430266 189869529 1026076391 578713681 654010902 347212662 76703114 729834017 181548401 10416709 981369513 167382640 200164127 218609803 273210497 903440186 149328892 769319960 33934104 345781367 377461560 68710706 73785977 334586895 487139079 805981518 885508828 14725944 1057243780 1011837745 212485579 108523735 298132479 205533219 506992616 481501129 801095589 40498270 184398940 337928925 196715085 1021618687 167792158 399465621 557891006 719459295 999967546 1026525600 818885638 786919074 308850511 20256086 460755335 881962159 918149332 377815786 641180550 1058183178 650960316 914071444 1038489024 220938520 668160815 937471998 816620407 250013335 327547203 931861874 1034404655 814639281 457027323 423648972 165968754 15590986 834117186 563133179 821787598 675966270 963186001 995139563 351101207 418943452 292006007 886422793 520854317 690406848 701805491 870263103 198500514 233814129 759709562 18722696 183634195 842002755 25573975 322820501 399861697 324606746 1026419521 523716055 309978982 55685265 696864785 966768557 542274499 133794890 122207788 347095031 753411639 205362558 990533871 249630541 172554020 495582154 72871912 443158964 898171366 424410052 26831601 120512733 404811031 200285057 260033685 899456719 838787721 251642593 750962930 1618516 189093929 740120679 483626849 658372512 1037444867 743073410 893360414 779799724 132003288 555626656 538172182 521946312 456658407 593728147 370089594 322035128 809654975 192897953 276085168 876628371 336513187 565459358 461474996 768951347 1017587007 1028389642 494608039 437694308 24039824 876421544 942648168 411577731 367942249 267729371 314388985 41192286 937204173 688062393 1009140656 946381091 591164133 154266041 483983249 636608964 47378948 721293005 979391389 615798212 396856235 951921516 56052772 78317321 371742358 1030072498 588794069 258896366 629991338 925687882 245329440 144754703 461082392 282740539 737007059 534524901 317193137 312988212 892879028 30734548 460746833 80124900 280159531 656942283 948006784 59091081 792437202 470522459 570609740 580186470 364916218 1046852553 345428639 1037890166 39123905 807382169 355738705 342996209 956672067 929567705 93953147 80946095 21627183 93829256 369765981 1063259275 1042744418 561368370 219802529 961765794 638355597 155426196 33108535 368194549 250566207 765216051 97679079 760725589 864231577 798441324 45880772 802387154 418995092 977535544 729097116 942175573 473550979 2831609 907272236 223672884 766938035 968584823 635579444 330213745 1040548540 991959037 936478715 594514534 826356958 159669255 533423962 734222144 584246947 67942072 379614465 415867477 531566454 926444123 391435715 991544640 513469880 958914564 178649243 735142571 123879770 1016763886 168584264 22748080 331908669 210417949 146217518 919506386 220148721 1010542198 629102837 419159194 860803834 654474048 616367213 889029100 821035892 448335507 363682310 777102599 380300645 624955959 1058492021 23579883 813028180 578442327 1006232385 926846010 310127835 997850571 176086674 42669579 1065800295 64645124 79492857 94155146 184373741 8298206 759115624 370806539 349422524 907708593 68489326 275149950 1020386692 692374309 459726984 924708041 354681486 145344432 900294642 238154287 963542820 146888600 475486075 117131754 557268181 805737441 535669902 377315852 259550093 384658540 265367584 769871411 426328407 885791017 572533852 312189660 1036884074 364605305 989497823 13494359 437092560 533398018 575130790 38904559 504263828 861932917 307163262 1070809116 592787475 804731318 481686724 597637104 1005653139 450558221 1027044731 271197862 409740504 676864806 884249982 7584995 168992516 541067303 2121133 391877560 413753161 2728419 1059952498 657226990 547269658 687966543 165318101 371300236 616537532 1003607632 984937548 73545411 954244392 1053372074 565282639 273817949 809840401 893497892 611836734 365618529 717936474 53704453 289013760 103118802 631090245 981687114 108613333 79345420 659819445 318215380 567858084 182254650 970087271 32561733 31185312 585239407 949551079 624117184 248041065 970440758 596721790 285327999 938671880 126182988 839463692 827671521 1042580736 195701526 581830032 311585937 160085376 1005765915 789253276 136594305 806488919 836890034 471010818 347164287 800190211 874785961 566235653 692661724 466113698 293901096 253083300 516499227 33732929 1059140064 747162850 333431390 1025101568 41101301 828803814 163121991 789874101 802114014 216404758 120540247 35944339 843846011 99165461 253451374 547538241 330783314 383760942 897766126 242613531 1048765835 568473260 861861967 951424426 665587129 869009912 292723908 628737370 1013880637 322277097 276741255 723414219 515039211 1072136364 535989363 887471969 390245354 538055074 280692919 76396728 831652781 623019288 270112418 497686536 825916258 971185384 393981420 716250362 860692479 400008309 250095522 576205655 153622919 814626455 953030331 110281163 1018125542 198355244 527816645 760039254 443422420 153132703 452105660 1009770199 434718968 405589705 599338327 725551880 517950917 489035313 386222525 331760938 52576644 146617980 707350515 896046745 828477992 938767411 824589380 595574032 553123935 1020287018 693327651 286198729 795321913 902915440 123201129 1029945006 264652405 867413677 634899566 211148773 136514338 346109179 139561299 765680903 404482717 171171220 517753621 260373145 271321670 991892269 940321046 637000830 708080106 419206532 625614502 38394868 553024427 118186116 507622203 1056488457 744657017 664378077 980773489 917533099 658465935 253020418 45561052 205645004 7566444 658001478 617442515 22095142 591959575 268052986 705485062 42443527 158456317 960771765 588563185 779687246 1009128873 945999889 1060113718 966717567 950535285 24109740 1063278400 962575699 794502827 519623951 274681432 55402491 819132784 629618466 1065381232 967180160 579634102 216742403 39842163 855647374 152542990 724087333 1016883775 172369285 971929846 384543343 62637097 13779263 745791187 951532415 659402495 838229555 741431288 569519995 236436734 973676683 785381382 779711007 293734177 1011044581 184417741 770424012 723982364 762450524 156039227 473185860 549381753 106909590 379215693 676188433 953861831 674705546 696645999 629383973 927371848 748169331 1032462999 177141498 1022252883 927881978 769044610 420937515 330755807 982016314 875903193 89707704 577638370 193976547 256049233 488255788 29179419 550491433 793320533 722705940 416376925 913621222 303702529 315910200 1006324317 778958150 514626599 897277357 390972354 784737439 887931369 816420585 75722575 28470959 342366525 486227783 66407002 364136413 862019016 516682249 868517991 40424944 85118373 596664471 641903749 355395665 631615129 406958778 642895363 32710578 832560340 356930008 186035381 671358534 606250493 841116351 135196581 603074964 599344106 943027476 436531010 675166435 123803211 917917522 639521084 90097022 114459376 899592334 366084590 818878704 132155519 779041643 1047305908 883811077 1027580994 703879166 678968257 949129062 864543298 576494081 318018254 1045513609 132332319 343633191 571320007 284731603 123848303 617843546 27948665 731466012 685043270 879254708 934833926 681920081 925773691 689498891 265418878 83182422 722612487 812175869 730304428 132444178 137204667 305770659 19282 772487472 347258039 738006257 480776996 317552721 120705131 980448399 926620115 445798528 896784729 245590169 859564262 768698720 56468597 219853788 626771609 955448726 701836640 699343511 310594711 378993595 747509378 130339051 43951736 656192508 584560199 535236587 12447635 479382220 935175526 982209728 884911897 775214558 880785693 450604477 153791077 1072841890 106138805 865192214 716380235 172266433 452052667 808053348 980628941 265215962 680689396 631496642 851827174 318298982 855558078 225291382 923636893 953512475 844163469 889861539 505620371 946513273 387956878 545017101 537228200 58163739 572414042 84166469 815929041 435489842 745451153 172380537 946974697 1068288131 32500577 60753187 1058081940 394989988 442010531 496096906 105451749 512483374 655171946 390333647 789115476 1018498750 1040097287 633823961 270358778 196132729 311050058 547378591 522915605 454722569 861351148 280524591 457091341 692037022 607886886 628357515 864356590 750826407 438368075 927071260 687138995 228615386 761758482 307617344 79646816 889051675 373385844 860669338 773145823 956840578 462398653 723794433 776400973 295993557 810184298 211429889 735262825 756612066 913539408 189903057 1002438359 758326715 175049225 568382324 565282314 910294988 927483726 139456971 278783272 407935365 621127343 943281686 174953098 606886271 1055582042 629136914 137917881 243089085 377263872 86410843 707337024 300354659 973688726 851487984 288016519 355727993 625592290 812300005 188088564 154156111 555820055 888242085 1039981428 173224218 788926021 368779328 347481320 281391838 674988092 852743054 527449928 53793438 1047315532 772897176 975290105 819878231 113731247 838763804 1068461706 1028801531 898852045 863638573 770309537 243257295 171323729 753940243 803199969 318748682 868155299 567726637 341155464 105569174 594204343 491610048 190272490 833192416 524234230 723491074 447761169 67277165 731082056 485218163 573132243 577463156 477170184 727847585 105229122 479048084 794254148 125373675 1067232211 861578049 618203425 719172797 371368318 941373430 635609514 401983963 155420844 337574356 990571976 692614042 196767395 144871224 59621703 51440324 13311568 681562912 87869395 102163360 270434386 154700092 655014890 577737 89408425 923215211 292168747 1020948214 1029322014 670513805 783057054 31852734 539592008 133291484 434301439 883615832 295394568 159215157 700881374 766353160 392497519 595309596 469412125 457679508 779771775 212655665 504506049 563871381 126277369 703537726 810852638 472509104 440494669 1014369894 441736416 936879750 390918192 80662190 245469403 1042761797 219073897 678903552 574691369 784459476 38590733 238037960 981125871 971268984 356392467 141605369 1022495086 261501539 404446606 965789636 350115204 392546462 836009645 793183597 148673984 353564660 1005942066 653763664 580244662 497182153 118645412 27331594 531971611 671094829 397254170 568705179 417294272 450648521 707430498 974614542 280413893 584173143 393624444 417311817 327522974 900094007 284433634 245215051 149418823 1010191982 278778662 92544681 212555051 532950906 109580569 464113956 437942745 387810994 955630046 467549937 715057823 108359736 139378255 455372561 1030381764 1068401389 278364511 735085147 601786609 94336129 330241387 623962191 1047014956 574361492 280439749 685052842 993874666 816345603 188930420 181631044 593479436 685873412 456248095 1033179549 632862137 423900025 276279019 573571202 186933417 419927314 632402231 72061210 354842155 196927251 226092079 402220387 976473132 474180993 50629886 254801410 449219185 982162385 133141225 849365005 1060039284 871816880 1044663701 738284417 569337462 245160750 806911072 574926717 751922078 578002897 713996519 84711754 345153687 588312919 746099684 307371936 197913093 664224670 233810633 592994637 540246703 132451819 610018450 380306104 1005515573 527159121 179665346 603739227 628538239 890452884 371265998 480820843 942752446 377181171 714622406 639972816 129658564 1016158855 319900391 889370362 716151675 527510939 675603120 747702737 158277848 948203321 828294735 180142693 11657583 504981719 226341288 750877447 485390463 643367887 406653490 90011454 652359378 740378668 776050216 216096566 568222988 597768575 459037072 900783864 503520953 52037352 270877902 492753251 478428159 341161410 1019400400 333005246 29567668 354513581 393893507 947947494 458466117 950642510 947301757 254210370 205064201 494207144 58587484 1061720031 965625312 543978302 536198931 122990555 52751617 709024497 780667585 197729866 422666884 887911677 998787766 817002279 185909985 224356029 214548187 829100381 809537781 1048567597 869632006 711379134 579854515 257640432 695631933 873274332 148753986 1036413384 16365746 262895222 77039963 626948058 19695059 16312453 926591831 533421007 903937515 1059404818 788618313 426650268 960537999 877929208 32928226 168957621 950418385 255588650 818169082 340588453 825907851 341711098 1008330968 9805770 975129622 342913274 1051059249 53297953 689834917 152062478 71769878 602167996 674980792 25715819 50411831 1047550454 703428221 558167055 538225742 785701154 332311950 483605523 932435187 877097240 614228517 469155886 726039917 484399516 111383913 113635251 573725568 735769824 58768033 206798612 138076289 229572268 739491308 669704812 141413808 161344401 740615003 101157479 482527942 526650660 943884682 892202904 846090359 368108207 299484759 436157363 972446576 1067427168 965349017 698991923 656537625 347951970 280710600 390965435 891848983 656825993 732176113 811138649 218799831 245988957 88144432 950050239 513949581 60181294 803621484 980026229 1013566910 299079867 327747255 721091413 266077648 733729015 652765135 147648796 609281113 875331926 697179786 199244227 143852561 156924197 45037186 606438435 893005513 808215003 135291917 316481527 1064625090 628007365 116751890 555040350 994733486 236654571 565404861 797426622 154806773 326716071 678594716 553411505 41768030 255948913 1056429126 709132735 72085710 888797381 437271390 362046085 294203802 179045688 113935786 58436634 217887544 935651953 1059231271 727536525 476404012 471998614 163394224 718349409 179379362 967562849 878124287 394581977 855895172 495358368 967391532 412580468 176395820 658036552 740498900 282241014 812435694 705035579 510940188 523205092 401334008 63299959 541219778 794593479 95590717 640940968 261722220 893956609 57535248 195540296 212879153 769961580 756001317 636695014 45314146 335637664 338150755 857436181 378904964 75834106 939961433 446374028 597180479 68837238 762940761 836254847 117986912 503797801 476807070 186512494 208010552 717681220 254174185 85869949 341427005 705962436 629056416 811661147 713251265 173366691 696673699 694896499 437496557 963419874 575083201 906098663 435006683 571129320 619854025 109717036 825402819 143959923 996066899 941646195 1016202428 1014855631 336900884 838482785 571652258 612179878 767193550 493858262 954047095 450970383 841153402 532348948 381151942 385175351 528287734 248533970 971628741 679905701 958299775 428301842 2321671 58617922 412721398 931759290 702023798 665674412 496571477 228022692 504809104 334623383 346982355 554767313 833919468 171676729 50329227 221146925 56288241 1000906928 666160731 844926785 140284856 517719183 725835678 677247378 938936076 165054999 862676661 48732920 1071317373 926161640 601199929 44518658 519900387 657253279 142157711 933608232 1025215565 508660989 6103533 207342424 701218259 816405378 416825567 203186650 121524388 154414186 602467640 915545220 945427496 316230759 379690899 264500141 439772851 67797598 89213598 779382663 261010703 202877587 189779370 978024355 993036236 349579924 737468373 676025046 247283980 388101487 6559708 993934098 691274396 1050306637 87807260 432633242 558594651 848344276 7460114 1000065001 975117133 705205461 106160636 229985533 422811084 977631133 1058090370 549804254 549894295 451574917 97952692 369068866 289159766 249575712 700107942 727480576 446391804 214765770 290183190 268580340 834391405 165967840 659610258 108253838 907603700 1002125997 118647386 481072846 422052986 901403943 248267556 712273839 626132712 96940385 850597987 476447318 177745149 484449381 829093959 211126315 816690192 687920411 871247126 453519714 953183843 511831846 639121287 677025172 964754219 91290079 588099351 841535449 1036263023 676595481 788726643 104645182 674918765 1047484281 907674844 751741912 805412127 798946347 525019865 528089349 793477499 125699541 518791480 296800562 714234430 114670415 91822271 192110348 853591133 704149409 955568471 607529194 770803129 356538024 427143928 72841508 995912695 201073693 1035429506 931058848 72609584 120940721 902635667 302760916 108225272 359784153 565949334 696649887 908266629 371297296 571713084 867454288 881465081 104906525 12572392 107063375 7274646 859672544 476236698 894988405 488108115 5336425 61354999 744364035 320328876 57234356 1008577695 568774 595799699 214723318 520784481 912931127 545971126 166722224 805000996 874155691 126549387 1054896625 125848644 718999386 503662583 1200664 1004917823 673591395 278408422 604348094 478571560 679107940 53866012 375337565 95548453 525163279 715516017 896755461 227414337 773306835 177719157 570625078 177917759 977813241 1037761169 1062477699 458648380 108216670 892158905 947612907 525346646 929609303 518972146 612315645 85074811 944914969 379198998 656936820 748700963 925304383 49684103 762579675 670622681 656222250 25315705 48542480 532402505 566179829 848187564 841908750 1023422277 73209944 109840137 61096012 15780630 893125242 1034765494 162303862 910204903 956556345 812175157 825974125 619446830 24136923 994640040 583937561 454142113 854733502 935294195 160139944 1060819577 1007339452 962293400 735702414 610867769 361860741 361092184 508134192 138242615 59958999 387127507 792935113 419096746 293788805 653399200 1017475436 241884646 7937728 317897832 654722956 246897832 805151692 664802269 599366353 4669459 126059345 303168071 156961578 449577943 743550170 761207156 753761890 753530621 749687945 156450299 327210223 434720124 278770493 481848226 174617175 1048779639 841806316 229662002 665653230 250847577 668148337 445673595 669252642 869268136 537492697 549255899 122064862 1061118923 566824009 970797873 357169308 533892897 470421347 69673146 322670265 145483668 879030277 498250808 191283638 506000775 292751943 518938587 510714297 97007372 656552552 365732165 350447872 787162695 862394156 755481915 937585754 360427193 923028249 4141982 50468515 177122564 921723306 918752060 708100257 969610475 210305433 1065071275 910318452 564898219 34411025 559328760 366252926 613093169 770945439 40310284 140948162 947779678 741659585 263717414 554354904 842925028 780158558 846060726 88490774 472771093 278660188 500091047 723273264 543917419 87424674 739013723 482455912 438275989 837881373 443587239 192588121 309421462 134936891 182619145 1007326917 828145211 721433028 853684699 416190633 898615915 717571009 352019285 726493748 935792203 612846784 419973285 1064580169 330125690 419701171 119077110 1016874294 514724925 173110724 600199000 793817289 390807177 879954820 123272619 1069135796 97248797 485412914 956233093 55261895 246395592 918533046 1000817919 820312678 169872880 214550615 739389592 632876709 691632561 220445592 27259656 243763118 971879090 55378628 744304676 136326649 861562837 711974103 580402872 952973731 708205809 393305740 612796866 575752451 117190726 75659768 889133175 333529406 83145762 446479173 163663252 457079153 577771348 392542586 480178058 130006257 364597525 458565646 604321575 310094517 723949080 1071176192 898046138 966388829 755032292 1063007527 547130223 290073519 512956529 1070119559 562311195 453394510 443916916 744555152 102790789 540882596 819953023 291132501 859777037 813947629 347015821 838799879 408404523 855992299 469106285 407840868 448847402 846859257 198933912 228221265 127242001 480916286 898329257 612035870 136866613 405108984 518444439 356899083 55223975 954766823 194043601 697056249 4382383 340671441 891135086 902245644 596798596 1037673331 836548907 599681375 211119953 731400908 768609991 729284057 46517659 199561000 243044687 590967162 812905622 150491753 978309904 900017361 547771553 210611407 763285521 148898148 173254664 671055125 444690167 764042605 45988484 443476527 940594964 1010773799 784230717 936387752 764485761 40741672 1018871979 404496087 914269183 730973775 287578130 28884715 359710185 901547105 491908500 872100803 296918772 700247237 488945125 942822658 935033896 420622304 373059924 476452639 66192444 86468673 743881128 208866200 39486856 355008697 316258626 627233984 75504811 505492118 621413871 819922568 96708781 62913260 682742516 432069000 48298356 957931278 568187658 228956880 463032603 600095806 474196571 424782768 1048981955 728519364 688658649 520248697 220281079 737902843 184974607 203124613 55459420 347176070 557164260 781553561 199826920 270507520 672239732 665997404 777598910 155684813 280180728 288155514 1063478869 101609884 587530081 810919089 746024691 598399113 3736386 200532735 69408538 162792347 890562087 318313188 615656160 297481220 777579837 595121332 336650283 819965396 700483934 499937188 296146914 843781172 880196802 895417673 784699056 771249450 241806255 1028274932 258687760 899894058 853785968 291051151 993196978 665088505 992400745 429892954 968751453 183003337 181309643 768676369 182432231 505477477 48909225 34707937 723191726 410013029 128053984 1061967963 244421652 625065363 748804795 204949680 384371487 282235874 732803377 552265968 602973532 654525128 1056029747 743808840 881257363 1042294293 593088285 565886421 470274653 140982242 206512999 277798018 803844029 266497481 722299520 47890539 1020760547 993683795 879402687 770235524 989613711 784347929 832927373 147463847 281602749 54712162 508519443 953249194 613607040 68158006 805208397 747524940 574301616 26780783 280113559 214992900 446659703 914943979 617374383 743652113 385812534 648647818 57170610 493463752 939992189 490667636 626489286 541366478 438499708 396407295 950422175 1055058474 849686809 343574720 936059932 146078366 288411964 879063426 798949119 191562230 418224384 1045780493 789752972 319254284 99284147 899464855 443208341 951329537 658626656 237047052 185001392 278732977 116564205 25049961 9043121 51321605 227526622 133764580 755290416 897178889 356670073 12980713 537274689 36251980 44456712 194055811 107291604 283552679 303053751 159604903 535370546 507091371 541346619 480299929 802532408 497943365 827997609 468681890 909069680 1049351245 262727740 883639788 970190710 436838331 603615292 891781690 862689767 896123232 115037506 59719817 901708121 99649179 179182381 29299456 398701408 177889570 673582074 367735941 315002243 854966263 72832359 1006471537 1000786202 368937276 308176032 786917696 46094903 629826546 225273673 24938610 807372738 145200578 577715895 843302726 264205769 280272742 483609777 506604419 912512743 943254591 971205156 577835938 747891538 486036188 763119851 943321996 667810078 590570802 939443673 50762734 565618542 745975420 923935530 896164171 944652310 69013796 555938725 519555623 441820611 199912377 809357061 286333142 308864292 481682396 725469678 506820903 493482191 1049984658 487781692 376694638 800452842 716719297 188541702 579815976 204011714 281536750 1018910840 164294700 79370480 111088899 213271060 109524137 263971091 1040223416 332041686 565477786 348895796 234789379 497674882 743213959 887562215 21887812 396973865 148466968 807790860 954787727 860351220 932209642 618112507 708620150 668935265 178220745 484872593 899404565 841606286 168209835 209988675 307815315 1009155489 278454801 531502941 338820989 82523233 495637503 42142289 271262561 650159686 413374567 437199483 546885332 332241541 200890904 920509034 892068938 185948153 477939323 630188103 499696587 917794297 48896482 534875702 965139819 644657783 598988314 1006296914 891233051 587244058 375101052 528025914 708603921 622724121 93075221 62347486 1069142217 343509601 1027879480 375656486 9766763 221875342 353255742 663107322 424417974 833414907 596940729 373030144 181148969 486087747 801030151 73049391 116736609 641742272 738722721 727945127 456055866 317189096 428457885 1066555677 125837291 1014682361 537467691 182500516 535658310 137485510 917057438 860899886 352572935 1031857914 802590551 964328872 231873677 162028821 909598990 442872952 1048107756 294071416 945362721 656860712 22234992 273661830 834226028 758124980 840547103 215189963 227365087 766495616 993934119 799822095 557238007 293286019 187018005 810595278 445565944 705932213 693207549 69314845 418242634 360815159 43263697 255228551 320901057 1033541292 389112449 171531891 347578175 264739982 226477485 408410510 208159354 916603100 201663482 203819457 362916563 1003482363 371100198 444058617 359777885 314740847 127232659 854540580 139328167 566695949 222874027 597391350 80335413 278215536 323713862 800341233 1056235871 413539041 931806435 438707241 540666010 529359222 422054740 392915544 175475767 814037298 398016022 958486563 16410193 721698524 625237149 27709074 625782484 682559834 836358897 178832441 1067709047 684032121 154624805 18374434 1016608705 192109770 135388503 683371467 176113095 784266751 451776632 224979684 548137741 472659809 1037000461 898531962 561088521 127692819 783828851 302073157 345719729 604163021 838689132 970024745 149065729 1037705226 1051909270 90205462 571363352 15189090 1071531068 89389544 1055835710 712788529 309419553 962572621 984572912 532818464 399087909 1007429017 204222345 578370292 699821984 284035819 257073653 916641709 596421204 243104949 415858305 477168736 132316399 177795908 553712316 682583176 278214399 268017765 685103301 581754742 204143389 559100755 279696708 392608611 56898204 795740086 232642884 615500899 923803548 701749269 188171602 821279904 1064843328 96069561 699482185 605298041 576592993 928896759 807989452 689559743 894162962 719855109 934811477 118943457 296204582 115060397 989399515 912357334 669451451 258932871 245280046 350942174 820273662 3914918 148453620 443404302 377856197 1015841820 44594817 584049547 1025262516 697768468 336649856 788478717 717497770 705909504 354179654 9260359 310096145 242128190 3768464 77206628 995941777 395586942 740167273 355967065 62057477 678883386 17482383 672567833 281883439 702844862 161191527 1012808135 362324303 154344176 517007101 139276867 564383357 183597230 794384794 938067487 871523151 514548903 498380374 601726672 810475655 398336686 816969177 390874831 699479776 225316199 1028304427 433647811 193593810 955299356 311949110 48683072 281651466 462724094 527904715 432933330 954570310 795883016 800186720 215697510 244202112 708944242 396660584 750458084 149058241 469123544 1030896272 842459377 503655565 213037088 234465192 519685687 324224064 776769263 1057249392 441000508 906559463 511843442 235823464 301406842 261364247 812677090 824038966 438461139 71105515 515001510 243504468 488271029 879115778 10086528 303504 636663904 94854974 812074078 54118783 628824885 113668362 876792260 953772867 701982408 212245714 152975462 677001758 915708098 71538840 993312238 577703363 166659484 471762668 537012742 118659835 85614090 1053338778 976626081 183636638 426281635 704455195 99720871 828269680 205794847 401882826 860666392 573166173 654084662 46247072 811502305 733797235 394022206 523520976 9512342 16928630 252684657 266732031 281644126 421021369 833220939 486276079 152128162 983652097 541433981 278403649 175571597 46699242 613254179 64838444 54319321 941749414 535103659 929490783 941509432 418746937 567693926 378062476 502900912 78571928 417119958 950130623 597738373 220972527 4409080 706869874 669819564 664649256 982063583 453397719 836784092 363402255 709939141 607451173 141799820 408917368 516225315 239106042 51052182 763241362 181276514 211415695 1073349427 618471413 454053292 548042700 702366507 67602295 329787583 625310672 867501385 981499168 1045234263 667290979 229693552 165827863 516355643 238097587 988707987 607491013 740790020 79016311 256261659 437713469 1026763739 427369213 725076187 135761586 603078661 168984750 490951937 194855462 1005397735 1026359393 1026663836 975201935 305725628 374463935 117495291 584691140 519037197 687755864 286536157 724956904 117567215 892080527 841071946 796056179 575467263 656200389 243359901 235623152 136211000 354223490 1016496387 111713806 848672674 187362852 960296967 457116523 107724149 625637490 503801866 913216730 480554800 263354785 356420515 282870735 85937498 173090519 654797158 258924964 315949549 148528415 552881901 407753237 1047752889 524196542 401510198 365376289 296147169 715847558 1051118833 863008506 911011387 684611210 601174666 105469491 985755457 364261527 912033412 680303746 896736653 796104288 684790239 844216741 62715798 570814054 581820883 815727107 660635684 1014394414 896066864 960256888 794248928 657597357 202990711 708939592 479719611 315869633 313767143 782494402 824801513 563672877 427146801 270556011 695611649 694552103 718045946 550196215 368856384 668518305 977221639 1251235 535495508 727726477 1032279974 762788721 984739196 263587881 509222310 855451803 494567785 935063504 408518928 955799706 887341014 671671334 1004966562 7636693 919735390 637289779 553886306 527506918 60426764 121952743 588465058 579374344 970683453 885542273 1037559082 388466438 336832460 501048962 1009003166 183905843 98500956 919264532 96762674 111702434 681584123 705033253 552555267 53777529 387142423 627586104 993754021 872169863 159982371 784579295 558697281 347656148 918329271 158824319 947335893 42200468 893854227 733618086 758334036 721445903 399017555 794782695 915842666 472909391 615667860 534550077 321715228 715660438 968147559 540462264 62754979 405675397 140455386 700632400 271114007 377010315 770137118 988786708 701014185 8310297 281531870 48476293 903985547 129050892 734886687 1008332542 291678178 451366481 1050672984 553317116 886826685 227286195 786608791 431581154 79667895 116223976 792808429 266137354 802992097 731509529 49870964 361885224 517795146 945946888 405646127 667933373 537868898 29107995 450619848 420229434 972776183 575021103 143622313 301172317 307681574 119356400 266810965 209523460 54916458 722265982 30725990 281293440 602402352 103398831 313000722 224517106 296479724 903849413 481236273 962410375 841689276 993402991 136292217 937781315 884110943 594107487 107591006 1011788328 718343796 1071009604 675329058 332232857 23076530 747573087 741403440 651487805 485760217 510931253 912240350 282702249 384099718 78863182 1031790090 470402061 687182275 794147856 848884554 583834449 213864718 851286210 81360746 873288009 566143858 527438667 706266314 354476986 94447949 848090690 818650588 830828997 470828537 643371946 17729464 377537148 257841152 408449623 398123619 637640906 628631214 623415530 6923733 857594749 714076669 952132558 874845810 707634899 782479884 889947967 302539818 124990394 376228854 393546728 985323580 521802804 762801244 313174931 60100208 974854849 143356028 951739883 950397303 279190834 578445581 632873784 940492879 896071887 720175287 207492581 641651584 169356294 268995716 234882175 900589746 403635708 271096785 792911914 322530361 443953062 156245604 770703845 577506077 507346256 643830686 380297247 775818269 251984605 699904463 653335757 419426702 954432719 473659256 607277146 301668616 903219177 153777835 449070903 577350122 254302778 577923467 420915801 173529922 894657472 1039569175 358719996 412941106 395319090 341097262 822085519 775226796 93577208 1066366433 516237441 573461729 208749722 773122052 227425916 430619680 207618713 826018268 45032173 453735928 877464963 18267012 1042070497 949277764 597459418 468472657 56817982 371364098 320731920 670662023 1046193903 44803811 883155774 160670783 342044508 681848722 24942645 759344520 624806503 772072088 935260608 557899823 785764123 303552356 717020676 32737517 98172358 231435279 404834056 124026322 705032071 571956582 1048270568 172158763 755428180 603910490 704892842 1001143340 224076125 103785669 131866344 722677308 929402304 679335229 75468271 390049707 223659940 581194413 963893007 241940827 838812319 1004148142 678042061 364349064 21297998 655785664 216990751 954811176 714708414 22738779 372131311 910751429 325475316 55998185 421623306 96204272 419289295 582099010 974427109 959770632 746380679 775839642 706538686 408014242 70151876 64164658 513920723 723307929 395325676 390392613 708421709 540343621 99231335 426176193 222407926 988612595 497160161 67692261 820598416 838530831 144817100 60607731 847842789 6302426 645884303 1007080423 845917138 954206798 1019665157 724745326 26493503 57905949 1031895668 78075835 84639572 820663894 231978789 709035440 922210487 394616133 980467068 1047954465 505320541 289589622 845540536 1029950013 498905920 235299914 999364863 532474126 609063440 441636136 932233434 377687309 572414332 216865874 563589843 277742760 1005248566 142042872 914480649 904165573 103822889 982329558 760482503 210395152 85419100 1050204865 194391946 426536157 398527401 336631517 521105705 172357355 404243789 815432657 457698685 966773028 822321299 331459876 50102185 399918543 653793183 702666367 984904398 636031363 723961013 452911424 878408056 800691973 553019197 486145501 315075587 76518923 956894070 529630171 738923842 820804095 271823071 832566309 27142330 529449456 323196733 933990324 252085117 46844389 266388 959742813 225794562 489675362 297923151 519302231 1007979196 200170416 1031796640 682197122 109516704 542288416 602706888 619454935 951093786 530328787 187789061 269383340 693076434 50207510 536209746 1066205516 596135149 322078307 546723456 330745654 384362344 943584711 316024211 405387728 605296628 588298291 773396948 893813643 127518513 800613013 446178532 242449924 397602070 740239848 818748398 63761649 843299251 230249277 832591436 707332028 71778857 707026913 1049736417 792133339 940947753 608836237 905888551 875540970 568884103 11263086 382990540 534305456 1034855705 346523754 249419620 808993490 140597000 360070668 189578192 49453196 79918627 64104970 303628842 244702188 138828972 1031296418 687430111 765095089 63475833 201762458 467927994 499337776 118424606 371441539 511208537 384766058 917233646 1960156 645224242 723208437 187533162 205585765 46349970 887119695 1044084187 1005898707 928559175 477163900 523984818 268415304 146743409 81673718 549076070 773333538 57148945 506739726 519663517 887666872 72986302 983317281 272101425 382433221 768126974 399757532 194917503 62742505 845561615 260407865 2384737 160145313 620528511 610691936 107500043 603894255 174442429 223548222 455652222 15369060 1034104314 998174402 449026129 763558555 408961457 480433026 951906967 910115082 1047647184 679437708 1965219 458530400 852363706 973165844 1016432924 323662780 508709805 833642155 880886452 782099802 532762214 1009227075 862174298 733490530 483917055 871982281 636503050 1004329443 534699609 1061099883 914735003 800164933 827665042 696073502 171628950 194306899 1008928777 363339890 567160355 751325113 38261369 923801221 586849845 21219494 82967952 541358545 432669545 218520834 114210247 108127500 715620043 489361449 321742005 451174058 104662599 537414443 336550802 465231860 411105554 812242898 737724301 304116104 120260999 360263534 480785995 257057848 865134373 571162435 711432449 477487841 109342033 277009289 348716719 483363567 882461710 960484499 893328250 92023145 341182328 362407253 660025597 385656984 936120319 972947575 305808162 9341442 359534325 61540033 908706794 139990787 36632774 461806238 1015130448 1047333836 963560889 464102113 1019650296 219794350 477956985 156891352 994273791 377438821 1041501547 429301184 693871866 1002705140 770746716 385876028 810416719 54870166 930255959 582581174 904558345 735187674 71931240 324480375 571450427 469790876 12638679 108952770 852743303 686919912 225874276 194793552 711950995 526902853 701649765 378014162 679222669 828861109 865180441 802289834 1060609635 540110152 941947512 808913037 154349128 1015994926 9444236 899562258 859437675 826147478 768709180 1039694511 864579305 880593166 588695 468275040 616487876 434048617 896205391 199469470 589548155 856893456 836632623 746553009 788078033 82044126 558904190 697884192 838497121 183563795 546446928 992918686 121105727 890557389 503442259 609796738 712365021 240972334 920537062 981348493 94774580 480660187 692657115 28988143 14370168 186660682 463616661 33242658 777517688 412864279 360648893 365476237 1068643081 142193242 817271880 1036534490 798149222 802663279 452330135 656783123 728027013 547415356 902563266 84538716 337438700 986365388 816215548 813316749 744533385 768430851 446364699 522932326 707746111 922087600 778320999 493528660 724280238 442067918 258838282 430754362 735111347 162198673 416420266 582413454 931321591 783376966 775060105 839101011 152368190 601737744 884761939 549751922 191333501 426772913 705003001 640039168 281857070 105830144 586801088 1011223096 971189500 271323103 665265587 516171555 650485417 169500944 726916997 979684661 293461027 741327346 342150834 11543000 136196735 875586391 759543377 202143707 403915148 609854410 428863177 305788743 908253641 837877282 453297118 1070418836 1017014883 93837249 711511833 728236556 742582028 378521435 1026130499 28790177 804956989 268975899 163233523 803006101 785441665 360247806 300638955 104163937 464597583 786837343 571150095 500821215 574979516 539006871 1009840468 837012409 610643536 733229899 12176340 234867331 816491617 91539941 292968540 961919144 824124550 983289875 522326640 445141976 257868064 416865388 417226511 357504133 821330881 882294132 813163102 98647919 196866793 596569527 338128462 975121144 983172823 355870976 642590488 370843845 166737430 468330243 225200659 1063771481 680637748 530061296 141572114 89320951 345726193 834055631 141121904 353378038 540492483 1054290214 612276905 453103619 148748861 296859259 998066481 983589465 628398848 885023293 929291832 413827597 415826217 873126076 5829084 340816913 113752537 912168974 297477083 196882089 959325819 376304197 189588703 553807053 1063298665 968278975 584797259 65534175 503059859 459826843 249414844 965663625 69886385 324555526 623381193 636047889 297030188 908701469 128727653 288196610 248470406 181642656 990628837 99162323 225617743 930311514 660492291 668719177 8538843 567783173 460052249 958407128 322975923 224146144 551757644 289144700 631172281 299940274 431445993 836355159 1073056128 991409747 498059811 121953246 483245932 337192856 298160475 543481639 185860885 558916968 295745898 76004163 475040412 710478601 29797567 755591022 312448469 784641367 492952779 704602509 379174107 221970225 914339172 163530272 319836658 722004545 63156642 271799920 815574736 414995945 736697526 68950679 584182906 817013961 673262778 240587764 440981051 832981273 47956271 357463257 740953175 380870517 631645718 82291101 47557227 675007601 1004069470 992778817 242478554 638285159 755389309 317109176 266883989 277415774 329934602 788561225 85003167 36650042 72713188 777782757 372710115 123493124 675001455 744958109 197425335 353836511 271227037 686979000 822109713 246664921 124795640 486501869 882698712 837769367 777193171 394336095 984378112 50715462 1015527313 1034342705 1018743403 931696909 284006618 892453640 719648419 738656005 91238141 301150181 752440132 241219301 801039544 924074710 339323583 757468386 186295649 480481248 111019032 437749854 933288271 813554978 934173466 562795784 966271862 732813359 440139880 933828640 411520867 691969211 341424083 876386070 81684281 326688582 310238103 368636637 322782964 544935903 719936871 241229573 522411503 1025930944 426480966 50399696 252819915 937931209 177752030 324325 172014484 432734054 384667147 402296148 450709 543435179 689161658 837870084 911748065 717999815 320677989 691212868 320365434 485887151 1063281911 417021513 226463886 929197062 499973581 513735167 307320167 60287345 871540821 1005698739 610543741 157411938 656538840 609348822 689096154 102189452 330983561 812831339 1058562563 510979123 841455612 812100854 428744377 780203621 296429123 742686695 689842545 616714044 1001736133 56768138 514136053 544324696 779209417 1048269740 890281623 317552250 788459107 603984889 415962324 605403143 836069797 598628265 371572068 464281344 579853602 613439816 224743442 816391260 987057983 278396757 222306513 101896597 283127649 963296704 415176678 377338096 813311901 102437667 172244300 361595227 930710662 576486182 693893920 609432434 293389217 157500980 511453580 753812511 882484011 218869295 687634945 661045106 363826893 447287554 686963434 721700405 385948130 488582130 230240524 89332032 788208362 54144681 782346843 439569364 843341770 652061965 508450475 369831899 1000713097 336439365 81655227 603399289 379063446 755054078 981944126 682173336 221610285 81025455 617669582 488335724 240741758 526775549 113881857 1048740747 903124173 344536259 184138403 518477648 327520475 1041352451 879208004 667658738 97414939 438287845 931242980 427418733 245272057 690676744 362470977 583366977 240954931 215347775 548026437 356217868 1047847066 802558477 719984276 423587543 265838676 27453902 711871669 985777049 589939959 863680363 41773267 713074405 345689953 678410635 460992870 285155200 653583119 956424856 959846625 330924035 1011880743 630063767 64290796 62712567 996310219 952043969 351719912 33961453 549711602 316460867 278714160 931643583 126330077 963519643 646346181 445219173 474100033 313653874 1050974080 135241779 781839009 996187244 413742104 895057297 426785397 687787548 675055611 106186513 969480104 983565121 140150811 851764861 962882250 623660200 1032701788 126491995 776803587 105613617 451465065 215248220 766338849 866168603 457200361 811272035 119673330 346072815 286745238 3638456 545675825 120416207 479234239 347994322 269044080 964061376 780550268 384980736 121369947 119332079 112883752 840770477 1066788501 931346658 154208805 804768903 907231140 428436845 65972517 738536039 127205120 849064759 632894132 77229039 903381707 689845982 190431125 860220929 646622822 768938145 526278430 1054769996 189775859 746331789 537137914 915693004 362007285 957676876 790463827 96831844 630923818 338970704 1057130715 952265038 381034096 852624312 982487467 628581215 9580898 798378943 749629482 816883499 86969872 1035159903 95514904 97426449 55341830 63067634 206938463 1054381754 355269282 210605965 568852388 768241475 714428143 1004275383 324993380 634556518 296336315 305006845 820244616 968879646 362491528 643794299 140167692 444107031 188788950 26155687 207731257 325376138 717066525 198877429 1032371261 229440205 329043294 865147011 387529975 590047078 422883094 869837107 797949602 464686809 464174263 38818042 915308724 924959650 540690415 832050432 319743747 574728095 907373270 209246330 767031414 999871845 1013109215 923942386 308236051 101787943 48114882 230447667 20288432 315590569 866621524 463500262 74368155 418853779 195795291 303178120 74260420 101935679 380569997 286967638 595398894 316932538 981075685 195132043 762962153 920344863 259813078 1033320232 986064954 395913963 750871465 394904614 898199817 301260197 934795053 376991731 641606370 495173046 1060987989 449527618 340661566 795445138 829530435 831511153 467907249 523227517 941162927 155851438 287706284 726366130 571727354 940997271 128548994 736123906 91548760 256315516 488856134 134074172 1064347912 807265868 121421713 418209785 769061310 716084232 943468645 240785787 604952788 421179881 653636755 221463879 44511495 423446609 510763509 861279028 617559607 214959270 137022 892130624 892438954 647787716 68432025 227237378 767488640 83271038 257425694 557193065 147764250 424263979 911276922 748267502 979841450 505546785 882602271 1013791503 817338511 984485296 454076666 662297003 310557726 454411641 860963006 726106033 757347431 542877566 586601426 408473378 458297189 833248324 627945964 841163818 240263677 56777078 562092454 731794479 493633516 731028994 733310581 983998388 21357870 929460068 904632861 224900521 967682231 679677878 1061767188 1031360919 11781051 845984949 992574174 532774085 658584676 714378675 942904003 1062129713 311965863 226277212 477017947 166430758 831338741 456818551 703083265 647138075 15795932 630931247 135770067 556975567 615993186 559323239 279616658 57565740 326279640 28424315 332371749 203076682 208298551 74228940 45845556 105896887 661881164 480887126 62859363 509952839 444353150 1032669286 770307258 897965389 578593979 987570043 708114839 1060962330 22950 1007865517 90154481 273099534 556855653 387075871 618923393 425914942 952758987 615563737 119798288 539637182 1024389784 295808152 582215689 681482257 704762603 333361082 374001139 534009841 684666442 147394151 249741727 871512162 818604873 932103316 362151145 1058486483 123778186 164981132 1030240384 771688655 755311448 117177816 320957853 872005303 295660567 971596254 1059203813 363024143 383569357 18135913 736336899 670533437 160787171 778145586 220509522 402048745 379317515 518757051 734703634 324951811 1029039715 298514635 906203069 730810260 873471402 985420584 342090878 528611515 734977195 322468567 51641605 561945351 64646629 519956502 361509726 633603725 861968116 325249622 352232289 984814392 72956580 786252250 192570675 106210300 811275566 728696802 586245108 507384691 805932360 641789255 16075878 622313599 924628951 639902761 802745931 581727240 664702619 1062670974 217057007 699203830 918609595 781385530 1000935265 120265429 766121481 468307615 743994978 229337285 772095478 964371511 354900159 112626539 988179783 22863666 380119910 935630292 993168082 232726772 904575049 1071313243 475585838 398341888 333192304 526576819 240584113 320892119 135987544 318436399 1046786269 249420295 966695322 18416562 544987702 825624002 927045041 781569867 332906887 939857999 722271982 1070947701 42515633 727087782 957449711 828834115 465219553 393063766 336996065 421217365 444983048 874441930 335560046 960461240 834284357 617456255 719331992 982418730 957395706 380701919 169812570 1011346300 344267380 992962238 860133036 909891075 215893695 665783341 566164678 898878621 564487262 251512152 674292983 76872395 413811306 234664467 959717975 908015578 917624693 254006156 608125096 664875701 622229330 722308788 828018301 307203775 585289806 182126337 292439116 641090281 44071803 829009075 872840266 583232817 11037229 588518712 1021697050 400976827 607062308 154534284 699198425 994414378 105584520 767567513 590618339 930916853 524374071 595057847 614488870 382184841 100629989 918671874 121287368 563405994 253075649 897260369 135797912 446564726 183316070 729857508 228823132 57104234 810582876 403023213 600856359 125280686 1002012848 172288643 64716804 204903792 988263476 432464200 972804689 829117585 590718983 1043452605 780643046 1038566041 83248498 148073711 38059707 591085654 442256824 628489692 283886390 526682211 894034911 766245299 477316816 555769865 1001218136 986802840 653450836 766584026 741704031 365960955 1020073067 659427944 166119823 869712614 712334387 713745729 258746289 385147644 14703269 684781126 712852283 917690683 547372733 556467511 911834112 589788293 441495704 801972607 468296190 439857406 759121486 488637215 145429557 427661914 637032382 436682321 747291177 366603615 915080893 574934385 267488398 656941033 650839020 117393945 163180832 287322224 657004910 581981091 542984044 485103161 104875191 43096671 899286684 1016637330 349556715 112709072 226789632 626945310 195889781 387853224 1063143875 1050096663 699441173 117558075 898914854 45936420 662123170 890809189 189033040 845536829 169534806 187725535 484904555 244090240 471058328 773053157 112450758 875644026 1072529333 321672729 378497082 607527932 305129959 940238643 8806802 123014682 171555307 793358178 184677277 1038981716 20805553 723293606 870052268 918025955 30222551 337969496 212301226 90614227 174623115 358152033 42160514 235345405 36719471 520019679 1016218760 946461558 307890873 580496007 729092665 934634239 1030574658 269109289 847487201 553387433 743340735 133854926 599735122 328917096 396074452 435850471 333964953 993787199 1037176536 1029699868 1072831259 396773075 439950897 61324348 144715812 726726500 874134168 336264619 446142911 1025406150 1007486005 582253798 766426031 568470421 422221733 571946165 599019906 179853760 534351555 278670562 451119973 384559603 773404020 632057601 1039331617 405152189 217075187 301840034 865825221 177188402 915764993 978170167 191089226 335783143 896244632 86966588 1051239978 829160715 224653414 61178415 741559332 1063552352 213654976 968068967 106586952 47585498 537714852 577661616 618431359 544589585 262021584 543082404 620748165 591396690 117643722 476167938 718148962 482137446 922694079 764732293 958279813 975299310 274009191 525162195 438636469 350829865 764094206 457660218 649477903 863773497 633528278 792191264 999257295 435527196 18779959 1010758700 777088963 57623351 440701078 1065842454 595025249 947641133 69358947 606533739 372629128 920417228 392762320 833765697 561121204 947928031 1023915551 138688592 921840655 361981612 481171976 986120591 1001949292 316236604 322408516 329516188 1002097137 793563729 611698970 541497072 185939161 551016027 676000676 7443061 130514027 934573912 273392971 793443265 197000424 664416164 536764037 747084426 1024601366 596349829 178057266 813541859 48636078 868119045 975455071 768061689 707187358 516104194 24215517 656672063 771451926 1010795143 761749934 521039464 825741204 958723436 820305002 883851979 114883242 367383517 929649521 864845932 166850875 800237715 481651789 29457053 383441070 658910281 379848240 42807677 700023202 823020546 807247179 791642008 884983339 315782398 14755362 424518316 468003164 383730284 1044717034 507989273 591858045 1064620756 183808245 1049285233 141288677 1069065427 301338886 828919211 39086295 74432219 400126194 687061454 535409583 78122054 128699257 365636535 153382777 124604931 922005308 859062515 689603470 141728277 168729637 878693909 1038870559 211951128 516066537 234332319 940887607 414289924 571218281 312848059 502073816 59493129 116077659 114976859 758691236 816342795 654809416 787499205 762087670 158011488 879269422 323709910 1030436545 789002721 669213148 1028841617 559517289 818724416 947889104 986009304 180458428 297973496 36370107 442047467 926844818 465522064 217314378 613752371 953791903 491790412 406454543 536900010 155334410 988322337 701500366 461748532 1045537725 698374903 827594748 433739347 226259217 914984339 442074450 231109193 912211826 185089869 357130120 486881920 396452380 1056057693 497407842 782240085 717996167 962450329 268231580 425195598 799465515 719518743 363988788 874432096 914271063 736287585 357434081 355010137 183450042 517675714 837966078 130771728 3945022 870147512 688104959 583299504 256694294 1063856055 610938433 616072624 927762693 1003753590 502787445 575324736 959655737 285635192 743411600 689329634 903152177 1068537065 859705207 99653345 607746165 60697773 482042692 544985987 25756001 94606651 104266770 1054841992 53354500 390530839 497726883 969585797 696340959 847534498 813802849 794628731 800113433 630930986 259514996 892674619 766857404 876555995 681610616 1037242654 345151598 610109997 593241920 288550051 442700782 93896784 414061539 2922874 1053687560 158126369 22607249 299634502 1064369997 505040356 514405186 385931846 715001564 874319045 131912278 252480799 363489006 684996620 650914568 565725418 587261158 46393739 1065028065 243207927 190521551 314426484 844816455 566062108 734070275 213336786 456362201 141132771 424943033 286030493 52459903 303368496 986886872 693370334 869811095 129303952 372141473 299665757 1045940764 1025638067 692261941 684665611 222607579 479870681 112985146 2205786 156772642 857697437 898285127 198832447 364704792 982103013 216625048 734401235 22390267 614902227 784526159 42801911 104827714 59207076 73626881 254222009 974619517 326722590 643204083 92481629 246077484 230569771 991628771 345819376 473655979 180153272 885631505 1039630728 894456598 954571251 244018302 438839426 534568497 985536201 298467866 348596524 825727390 669940688 1057281144 951811247 1047773569 711613562 869559261 618873673 1049904137 775367003 835548189 648127534 516937828 1072081590 529017919 947815609 981352969 706953712 1073007156 621956355 532088169 239440249 964000063 868716389 347897081 503718390 433020507 220724190 125818510 374912341 532635373 362596737 59616605 153727975 202878923 52395692 528015318 825684920 977287408 937658479 741890903 307198151 348314986 525980702 736950726 315485428 428049969 684497257 840672633 886545331 827996271 196910972 974984787 78756788 272855702 696373746 16766628 292359972 850610583 617054464 120378865 353718579 787604197 877764250 588251348 876015794 177894050 756558517 63415237 998863128 523478264 115966915 840965246 75642454 985374058 932161765 554574932 416673900 910688175 364338422 606039527 375375507 1003860684 1021114054 755059806 659816211 532194910 833497826 224238634 512022484 349087163 188150584 533294679 62588360 423480824 416994568 483276208 784421984 935871666 970654042 829500094 113811169 120934460 632654803 952503582 245097351 703159135 805490199 59521828 1036483372 1035915326 497810742 309953000 836817256 348265119 241005633 493347387 960886665 963131712 131322892 616445345 433596060 779507705 926457947 418852753 567346011 170815667 646477529 864142498 698649125 995595423 598880579 795854745 292422936 149017543 963340282 916699627 942090846 87160902 174363246 777819730 568837768 1016229958 841765788 481619100 14525221 710941331 341514156 1045159202 332635874 361648909 575752316 469551868 585661708 514608808 296203307 203123605 953025304 412913670 549935333 624889303 447641597 38894777 447513563 22164505 36013242 932391348 566467215 291546740 413004053 197260938 340640233 769975427 5214877 371517031 139828330 878147289 1026630569 605718687 882331736 317148502 719164968 485150441 229535173 1001736815 315419226 303490197 171072672 606928924 826113363 474545127 870394734 771375150 242556790 361791306 357967279 283846301 302872030 633438871 164876250 91649999 752457944 860111072 863834090 245158537 723331901 764346223 531006194 219015793 342217947 22597837 613160674 768618096 533425383 623839831 131826879 896761870 692180561 376405495 743543762 317575579 701709094 378032893 1058728795 1033005420 977198229 939396170 300050207 520921551 758547399 627496005 125177087 105176187 63960525 888878519 958866504 145089433 601080949 341026928 889510413 937740515 91382755 71844098 565551678 14361652 292927043 283116442 11832179 429316511 1031268785 55060226 549947372 511014301 283773214 938568625 808964633 898347919 516117761 521184360 775985772 681513018 112570440 606992099 387871708 481963408 120480587 296365365 695741624 902550583 485622688 733392731 858727409 439510046 355935059 148847480 636261799 776444672 40181478 220723804 24129921 437773014 75928538 880940894 717991758 988012522 462852198 309278702 12238662 910739702 677407744 108033297 211119694 561487904 583269178 483591148 72954828 277314620 947664458 609619343 265882673 146412414 710693383 732743423 971764165 830359527 258088605 388930532 1024256464 792255651 220666542 131817214 130956968 1017549135 162820733 158675163 1024093288 894611703 269274125 1017361234 233283955 376584328 254896512 253489948 836071479 139372574 1537862 172933400 688565428 293850745 863634562 897049378 1045013966 348287489 1056719540 280446847 382486463 541288201 1003710824 329516703 261619005 816442739 214097854 831060149 561062593 1042971863 131747495 478004756 34570279 437513136 761004632 1070789222 34072452 783002163 619425579 799894345 504777989 432826422 623424164 100272487 93037883 430666156 284892975 700000862 28805191 867109422 656542316 28177134 396426552 628178888 545742752 15148195 660421284 171755435 773621362 611323754 132062427 591126645 297859482 39202845 193011061 442604903 851452177 255159512 294947977 719028882 232404647 986437257 14111696 379280260 161087695 160784003 483850364 269793983 56817141 1064046538 659685125 255033462 973482888 653490164 418555702 717411831 152998785 725187701 953524610 1012493761 68858423 413232297 306454812 597343558 703750201 448097879 851079997 867335910 1056258109 494883803 590912005 254161716 228552425 355767965 337794205 972732142 230176369 625929086 91821083 71623352 225003000 668023210 758254232 276389948 774647886 612371720 340989056 20258597 641017612 637952200 387884213 891648553 1035740921 963340704 812865997 510893773 983251806 888252003 161989921 950272982 286387782 155707512 349324285 969683338 853784865 117076143 634367163 435743393 210964028 341022524 931747953 57571209 127647180 351495985 154144770 629694540 977968188 715676065 422098712 411502926 863627672 149845426 562101767 338471220 295529101 647782644 84832838 158887518 834282422 941133293 146737350 540202925 1043711404 344406731 1005382615 551465424 780620234 491981486 421541756 386996908 308154249 753142143 1050004107 86335679 768005299 256665437 50188252 267641054 374105404 641602925 745676708 888716703 460583937 1012133647 48305454 1018482762 520221557 555654309 384035434 1052901902 913252206 855395522 509843781 976940473 398263342 711548433 203979341 991867626 201854452 1029516918 998836091 524522053 774781985 259225284 1013569809 698647706 133929723 952981000 44956758 144293285 186728296 733540557 779460729 411393050 1002653230 575409828 533369842 776276977 136721873 751479340 1000278785 509161798 517225076 424454609 1014466975 814638299 169243468 588684370 573991903 700056456 557023278 651420669 544390476 42109983 791370255 679351278 517866522 1064607968 796364230 733377399 1003677330 964743724 310681085 990385747 958676247 35508504 480374356 529991318 894453845 522875757 879566854 217251641 679602451 655246273 768384000 880576509 780075337 529367816 545550718 122353843 126281303 609869127 204879352 120870719 734396094 795672069 775340095 203677476 644304203 397737372 548491151 319987190 634715705 392868054 497961707 844517977 137485424 199783423 519749176 506334744 627893816 1035214465 382008134 176693707 127062726 1000839580 278920765 112294730 650918356 337662130 82254064 1015268219 991392233 226766290 45166459 940326966 922974838 209391412 625593016 664094730 379970698 103526292 399471051 311191294 447230081 561309763 620121466 331931151 764943941 390082286 428465046 354540866 241893873 986763616 848415643 926472993 518733513 602620642 710070034 590346917 538873628 30119570 1010740555 481213691 709514179 117050786 262238168 601299983 189648654 857027135 895137031 786831094 728732592 757919759 877968478 399878555 40772024 237847832 70215814 763590119 447696420 896422010 480693878 705328723 1010398802 39421085 222631018 553505700 654898620 115834471 796792360 148427073 167128530 407148202 761383181 483584675 917337769 462399106 416892193 1046460069 755213763 822469300 453002658 75482414 348141984 410538457 271943578 1067657073 865343418 302649267 566508994 326065266 514169821 713250035 810390344 977342009 777214017 654167300 357967446 492367437 961692226 425586182 1028113314 1063432030 378914732 962458017 14349762 846521545 711556971 244995143 314332795 699453400 362516510 902004024 817585452 289008750 738200742 135317810 135966566 730601269 1006803828 747003728 859392203 942616519 353122128 589145842 920266228 848698523 898809476 77946925 830544067 324163341 89789670 119124033 998542979 214384824 775831520 409994469 609612448 851184910 959132358 736846259 34705592 559636442 103588421 222619467 943867886 943263241 31882713 184958750 399591422 46714115 431614473 452666942 20648491 391833012 191580504 399534962 209167899 411040332 196301748 67495004 62014518 185524065 137005099 986578 1038637265 199354231 844508663 212531345 152240711 533831375 1385527 739258180 1028730084 1045783434 354773463 968871430 336551773 696517989 104554018 62624674 360347726 463719780 501698685 349882344 765920465 977643263 57322920 1060980346 575805489 181036900 985636422 615160701 990937487 240668840 474764480 248992001 322180325 858580695 500737161 666575272 233479725 136048125 9066349 88717087 863107841 238413991 1006817716 373837594 28534295 186075869 679585997 932681249 579250325 177346354 998427160 459732708 67351352 1047127565 491062229 631148754 539497891 662512796 963369518 638755502 321065448 1008333008 330323755 326524335 135380551 229086337 411235010 1048935270 736687224 73189631 959796764 316794288 785244661 126069084 509817529 66628273 151929544 689628452 451203114 415143655 433460702 977156863 18004376 145552042 642359088 52038611 191321059 467643805 345599747 668928325 378145736 399862550 330806633 781977437 205479292 22100708 790432540 256350864 281787074 214919301 601961764 914324018 676067423 218519306 859532916 944352072 220882981 895762246 277505611 412607509 308331439 761343533 725443866 589924639 480851980 67717769 280414213 74561399 24690585 433457856 594191515 689168455 817240930 767475392 574362026 998995857 321187791 817716998 14784588 1000698068 1037316139 386929997 290813339 168217073 316088647 547610194 211276807 971779127 619436049 513010094 229704628 151197215 841108484 578542817 135571785 801567375 337400587 58324234 304518536 579609370 733253404 934970689 818685356 474516177 600825342 988225397 184458826 402827226 79741863 255892715 924194241 16587402 959647687 399119387 730188109 631244476 1058647710 167553097 987259541 927057720 441980147 506497243 108664044 71805174 825993781 952800874 1006437374 395426295 633984245 499921014 332016747 1000194438 104220262 68918855 345686711 929864185 885341554 4112110 127384142 806587613 316912546 453571645 25719764 859919230 792219025 314501144 620724829 984509872 914263032 1051050226 710044268 436055805 692438996 320338366 692162453 222040013 590083916 401457133 312585850 612939200 692662613 389679123 760984606 129378842 264549885 561120577 631134564 1006705792 1071280704 364930689 825706272 579788215 337232552 351860046 322287669 467616451 290280336 187096464 1067375226 454800046 598610040 743598215 1009386108 861706318 674317822 767675928 912586669 277081384 111511199 154847639 369550739 670569672 407992965 982000914 137542474 565443964 315231070 786677754 699397386 296692985 1016960209 157559962 806084263 792344259 159795579 875906786 492694851 736856899 898098522 532629251 897070884 443417267 1030459855 800537131 90337004 227624576 632085261 959158589 293179972 616138300 471130687 169050301 1071377843 778284958 820236731 331563622 82622463 581457751 930132687 366152379 1050098650 1071815572 124401013 71256441 529427860 490077577 281416879 788187277 979077949 76395100 879694650 1064274536 988780887 568883522 782278569 819681526 206941209 401599601 837930692 460130340 888309885 218677499 875771803 623915097 773449259 404902989 942002030 909536039 370865120 689618940 755513983 700842111 587167570 829070724 343898664 102032188 930855722 342563003 400241102 382361603 517833833 789656306 728234636 1008742630 1049720112 1031929947 7522879 415444285 946959687 280646704 1027782454 10962902 971652763 182884612 659949018 361621190 43158643 490051422 631602942 415150552 599428334 904676347 884391543 588140284 233164941 796764594 49409263 829808625 693601543 256113960 11473007 609098405 38122983 430103215 957862287 798286006 156342106 46581489 385742916 686860478 1018333027 77638417 258446882 784572154 336164159 960973281 706353153 37529871 460353021 261205524 491218917 272599697 519313094 500513978 147317395 137169265 64425726 397558417 267126014 704270198 674837329 966392382 1009285277 170300094 726252551 1014064293 148931202 1072788570 570797941 883574851 172126244 535263034 1009267655 634053130 1026017341 269610491 1030516606 236489232 607220849 580410212 442462337 174253986 859589529 140480736 977815800 637242386 324939297 972946135 964500248 596047088 260071628 568969995 1071237996 616564407 1063592438 130858773 439437802 343924502 920420108 904734051 895674300 481544172 238204390 400321819 558516978 960553671 16233573 833600861 1009619163 79694894 33968331 622795611 757650089 693495224 622011223 867452 210342688 580661273 541544150 345470055 620847260 154722375 378050578 590199041 920522355 424161487 478919113 279260357 291400888 1042030735 443592522 810642254 906102960 391894905 83647206 1026126406 98366902 514633961 19041647 836263513 880652080 240559590 337128406 1045925516 314391686 866467838 561311593 976302138 1051221907 583878788 954007230 624030337 660204510 998914005 81904653 653757705 98250545 585966476 990804031 422209763 43003541 997288401 760332998 66294203 634898320 959470020 806016593 778188650 910878623 682832526 464178662 828422753 620956097 754773234 147504761 788794218 863902872 337287347 763307860 212803916 214853357 383868305 185249832 669912343 594165272 613743322 853633 1016085283 694501040 122705628 586242330 761160693 583647779 714127289 440052356 69635686 92652557 337117538 157619272 335306174 166795596 434581990 174072687 656154196 970338608 891378621 719641051 287649777 678987822 761796616 73255757 212807614 756391929 193596278 387048206 302279502 220633864 121950911 64019874 56870564 261800226 87071089 305994933 412267643 182504757 637855606 632445031 307766403 710484166 759701517 891503071 896965494 717961935 474788282 964921680 910337834 341414551 608082514 24506362 727943184 446640411 414067008 356813855 761061498 386990479 994547662 867123356 19085346 51978652 790663500 989994905 998998245 707176886 525179953 444057848 644794457 677450313 605242954 957572026 797726183 762205274 345706421 1042937523 1039177283 317143204 526503585 711661978 459258331 122639430 734173651 860222794 78717200 830594310 5526469 617510815 1022319792 408952378 943591103 292886613 103164558 47115992 49031886 1021669454 479119269 9073486 598395981 261485056 370221022 316944139 449044084 847578342 115076865 545912520 798205583 302172485 831614979 521018801 366592382 907860106 747042547 210795519 293581625 670420968 59933012 904972303 728597109 905964800 81871389 271606731 521216969 1014524571 960602288 240943012 937847554 206458319 270196284 889421763 714097998 143891443 343733053 605394198 195359542 303057965 426524897 147710591 706296500 354236807 804478312 34465672 1058483131 984281661 742465815 409158656 282150357 30121230 513566497 43649764 383374195 914255826 926601158 94949130 669396607 833867015 797882223 912540322 554455452 225959243 789186387 417811980 290352791 64220668 522169419 543409180 541147093 246617102 830288812 276929187 723705150 152345031 873088150 174792388 599174206 1024632301 329287659 148889534 249334641 706385266 986655437 513543490 20923646 61577138 1061174762 76984740 348000835 755513906 841166978 458123496 135845165 893750713 43942058 892720123 790849988 220932296 758050473 837951859 480235335 384937559 558654739 1068345356 184313216 449785139 45696843 653274927 980595864 1062884389 541707951 957535193 569096255 175067304 203152794 363429479 413006132 310755731 284188919 438363067 458421739 653939612 385963891 1046244977 51010815 887497448 661247084 98466498 1057007545 180489247 507751601 741722511 787893416 36698846 675196042 617528651 504027241 156288513 549008992 970637841 395982418 273829090 242507103 765907999 5234007 611158030 542895705 398712377 1015239917 76322253 661181823 438702369 120735087 699772551 238091441 773949450 989577171 604302985 446299609 1020264725 887164522 852919028 351994204 708245791 149205541 306532660 660065944 1010288388 74953676 980033944 1020627880 160317341 548662621 442627607 767350122 456521385 937810832 1063901695 231838183 818927460 418915116 640363684 997348278 305770783 354697915 688992578 924486302 837424979 55350470 497635465 282054290 304225199 964500075 360262679 287205800 446493310 822448325 863036078 506310804 577073175 580031711 689223363 250742359 1052987170 675756873 473492595 106570286 152982818 81938309 234494541 354083880 772292916 172625734 329966223 404128450 297686272 166400983 359305806 971818343 871157786 152519821 213677495 28213472 756404771 86570380 741500627 1040566518 364606154 576409826 1043902728 559190817 538513513 814666866 1037456766 490169492 724589365 915214079 982803000 851287417 841721640 38291514 685413340 115033203 301785409 203574222 987840244 958328490 615627988 553558121 71350204 492801625 976147448 279597638 746235960 170685408 862740966 398653653 954689455 216532400 311866806 197170269 494823589 349446647 379912076 982067103 746748633 949695704 54960298 404594542 298819030 171034037 354584994 778919057 738350976 483772485 1040004464 277468753 390013789 94404615 550839190 745040717 374061867 853309453 398484678 718158827 435334155 212730173 128064414 800609319 378204989 707879675 426197756 859288102 446201395 31322947 913127298 437548940 712285323 29973390 754746863 71646934 29035907 924320897 377605393 62301451 125249303 200256133 385452935 53860425 1022447753 342991469 323845870 267281281 511674357 985012200 332535871 928668650 1039898121 867206501 114394177 503439171 774776606 14443287 241275334 35743627 916937006 390644446 558983595 40039581 103342813 14142324 589286773 982819500 1022362263 1011456681 212503276 1019624892 205435674 665747451 760338408 28442421 121349831 728517020 583024222 417874 1057895934 812089253 568122487 765321508 940515375 344904103 127065927 783914058 396959116 694315766 488232484 32015660 498803428 954107525 383184336 592985390 530992403 909520973 791948034 882271017 1009539971 515007776 949705966 1011932896 793301483 134410143 846851833 855699504 1002129736 763096162 612805084 46150851 909770858 982124125 830919582 96090377 440851563 108166512 4497028 929672 857363979 495518145 182307645 723923426 680873512 892687680 333580033 741692299 244309843 96432481 887573254 499769986 319772040 708446669 162856546 325976815 718461402 297464368 133060988 752982896 99397419 22767769 1060461083 559651074 957332232 850457659 1000710823 127711545 389490986 880581174 11001319 56669925 641107887 482485788 716073490 206922133 619546013 196497153 176506803 477074528 957396045 159077473 107849608 87226910 2766873 907780457 422771111 894417529 540938374 777874033 216623843 800264336 791967887 466395159 149419965 380032907 956278158 729026464 713151812 559457852 319689332 810189611 446972366 15420583 280267400 1045305110 345122854 901827716 377883577 131841619 391401214 947730408 473350538 198359413 239834597 120459560 270511387 62864566 843130512 813865194 975037781 273793185 723441611 957210194 504011400 754313355 41050749 273403858 4545914 542401183 318795559 859356577 1059033548 829539176 480499245 85843019 213909957 1022538837 377114914 708613523 973532962 256695436 222130313 547902948 331412438 235108323 387675408 948688945 957217767 259057124 1019137725 386480153 561132113 79191724 659435071 1067367326 984395114 723450792 742879366 757817795 198543859 672112598 530707406 679041585 113057067 882093106 535456614 215636070 22396196 166573084 286152752 666575652 808660008 341402748 69774567 658485807 773974490 341917970 685385938 85418304 561773971 18499218 152594791 736844678 594623946 409082611 105362825 37062448 936458621 375621477 1049964881 561180115 422455432 1007321557 199609214 93242530 732748807 636934996 694212380 1057004100 538404658 815090936 666322071 793880846 687032180 295808554 402088724 803652441 365244106 130515244 434831560 800299808 776715501 682835964 327440116 265646369 605876145 456074171 870552654 799529257 648863651 467019299 253245024 327859618 611042104 761459416 507705047 367227101 509652857 190111061 985958238 450240026 380139320 215662939 583641057 952876209 498979111 339013976 122679816 911484438 576392737 952527049 1015546826 865133968 404108694 572738522 518766885 85958383 73864052 1061976113 799609819 610633629 680870280 579603732 1033876158 89783324 653847933 683307933 254507063 674167613 873093499 619985256 1061309188 642410981 662694413 824929148 366045813 322759252 665611517 346276003 883374714 500054568 607751664 58741550 506817043 952021028 624616769 1031007221 954583274 647431230 687084115 80766146 6880076 688065645 589745340 232406692 507373136 659329057 690190486 379272203 6325306 313692177 143495293 444872080 761594982 476049624 101440083 771757525 256806859 376317126 976176981 783255953 161563868 785185959 118750746 946551121 665422542 912265167 626701412 127216517 443697195 601971730 657498944 875269594 1056085817 465203315 441857868 32934562 52327136 1064368878 1068664642 104739004 1032432957 290821327 539667526 615971285 292311713 982827420 880297494 182070674 218204349 928014647 27392969 638265074 935089864 700466175 964694497 409642220 438155677 728278614 65274898 969049135 979849034 906516522 446262329 1060257676 52046812 128654523 983203032 991898008 144103821 413554402 400672676 635506676 787402338 229558532 698411315 976108730 352326718 425508852 1034205200 421921646 158190605 218409322 510777002 171621216 60684863 395634894 779269508 621577208 25752681 440000174 720991659 375382632 288757002 475328352 75859448 767257161 313181505 568866258 1065776867 173986442 936554528 468075946 324634427 117723197 57652848 927433244 288702692 588897630 368303121 810579433 739786524 211215405 293102791 799887411 594029546 341676783 855926182 79858709 35715481 583109806 396744551 202123977 962157781 259054002 103244736 213174197 121415561 710934776 441561378 16705585 160861324 243727253 406440260 759955584 55800652 411502470 1023047291 653910884 236441457 631059035 189675696 634955538 101781128 766763452 532735170 337497621 555640760 175033909 859126116 891127898 861806171 9645884 29996614 956965231 693067043 89768068 20213850 921948353 197176593 714102842 211431132 1029898828 453438997 70109835 411116714 908507506 216683408 310917323 413471153 1029996124 147412432 278456593 428523473 776764482 1054530879 802337472 1071117473 549251898 285741016 423444356 578222245 988333137 1055576865 770850675 567749820 1004963517 371150415 654492635 398759645 493156926 257478737 965733568 719870576 466488021 671257695 966043923 164928684 510925667 596158594 292298219 295144129 790933670 432400430 392791237 45342918 372052235 137208971 769386457 627017640 753713113 566588532 241492525 146266706 989506866 378787827 944699906 997523328 780848978 589650210 369401228 373805305 282033345 202168689 648934810 989049373 366461816 656689655 1048388510 502413593 23778856 491478316 356487692 638422735 524677459 198644673 539110553 336377818 848873517 445461346 685606357 783168581 641096058 92916035 845562973 175008477 166632435 152351370 58294721 560181784 286206750 901468352 70061699 792082040 110358591 525621634 298933786 133748002 784268716 1010727116 104934727 488529750 654530197 545032367 215971709 227958947 176945900 822876348 910231240 495995657 529297581 41321421 215813002 414776430 700405262 342964735 791270838 195890019 882318074 663023502 356292257 471514439 475568380 758785443 835134288 676570750 2706876 989761753 750671036 812995728 106699282 651737150 34047365 899325825 589711870 853547321 749338280 366809903 314631736 549081969 299131268 456227346 409082180 231411470 32894221 976573020 399759367 700319904 510215888 454064000 945947931 761456452 1057315918 459556828 1035346094 728927987 144533942 884905068 208088838 684892425 964118789 228102370 458451214 921207851 648469183 627445651 948709048 975443478 610359861 814764803 795722915 348071228 33169012 56402030 715302425 378955525 664941051 967204472 613339583 772073784 120200262 73678504 848101519 805284601 593101697 1013360477 136505103 328341210 859861343 612204087 152096196 565255207 344168408 428894261 226442732 138591595 347890345 792782594 368627080 271976331 207452680 21938054 652390182 212094378 923841191 644388506 140078526 1045756004 606137962 100451699 437726058 691901489 841148564 531202737 1060995744 200449373 226261771 371341476 703862478 497749252 725336962 87166614 453357463 257001751 871141913 812779156 458047588 56210750 92671589 971679261 338630583 662401353 723302736 102912923 668491483 454421325 780544334 499057970 554673414 1020916556 865805588 617260263 442622571 283136539 189681276 97634969 529693177 255850109 179096310 268203785 542631679 45137223 530702022 698816083 429750220 307306603 345104388 837106972 436671045 419046441 60361671 780210267 148241996 443862404 403605379 356642823 972032791 1073047064 488233253 628220806 359223411 968894108 1025314209 494471536 648611499 317447941 80966697 146188956 739927691 273922142 427775376 802656286 322891201 708086306 171641088 1069296145 134665672 294071340 636567527 439744247 137014310 603449966 477143354 1003090950 36642772 963297275 289156177 76706357 296322442 221926481 59795418 468887611 195129877 996509010 756097385 963143353 325877151 205977656 971255253 883236878 531051309 191168538 601518433 1023644959 719080063 895030177 99938237 784415801 1006931637 730953674 838866027 752471873 402953653 986113024 101318911 260977989 710832773 675728551 210435688 579309039 1017082965 112491913 608110128 202453959 325635651 137911253 231815853 803436746 704642557 184734952 198346799 847762070 147425072 98254976 341374877 974325614 126574847 675955783 474444124 333521562 1069637255 222309922 908666603 749617624 867175352 833946633 594651285 459624636 872754418 137701132 414454952 994266103 882197584 854937461 50586488 843820246 303679586 143181492 787262281 1002640642 700984152 90829332 650748523 571993281 815152313 416013635 223598515 865547622 827133977 909182981 284244635 144743243 733674506 243308335 290117870 606560891 232712604 343470613 827327382 185076056 913122005 532038645 265226816 933688868 953413430 364981703 271729203 319350736 171125142 496788135 891525624 241181499 1040413046 353775629 460932412 334860513 879525841 697734763 641343484 146404736 291265555 196549432 1065201692 311600788 1071425712 214224088 306611490 523117624 417895959 94549194 184464913 788274639 336003379 656130876 236911377 439638659 262397383 931678532 66940535 225449316 414181308 2497723 507751866 676080617 917791128 1032606408 745190088 1026702164 940459790 1024222884 1058805088 117312569 711715191 708758211 766639176 343964888 1046453586 75101929 943879722 380837367 561989749 397199086 343492687 946077763 736780909 938757484 58659175 91059136 472563592 876676755 252023689 1548213 556200694 934871258 287368878 294773079 474100034 43898606 727250430 773343998 179991282 918722185 514355972 820016955 336111279 901648586 590399879 950285574 329545176 190051554 263348218 421736461 409365579 95988595 1015672191 347675154 52316735 308563533 419059031 399759508 856320032 550800565 391311306 1052594115 632638380 770441584 663362408 469348313 272799490 1056334358 391253755 1071740480 544104849 286008711 46029603 681663642 679343955 1000719896 47895362 566083055 695848983 572811495 1000525002 694727586 309795136 876727633 148235246 798605933 434447194 779117025 666479287 176403931 192093722 449399217 763523482 67130726 982308561 345072138 779564759 444682711 656331009 276207517 190809552 310052863 858944665 176236922 963647447 409760202 84651100 202223564 595554381 1070173 838440789 499034700 33574162 741479885 212035295 374188013 168448251 790190533 201404573 271617612 76935844 1066102434 489011989 1037489840 845010986 78753382 780460937 1027998975 916452003 775495825 3630423 619637470 856736110 530189757 86259845 860731846 225521980 693081063 739091169 671605044 788641244 329385547 46114693 1056344148 326148576 455514400 1001569798 841579015 340711233 416021446 725272320 832596238 711443401 913889258 461158301 808706190 273558112 620309559 853766161 651070041 128254500 361346705 135835350 389751124 683500664 662237549 158282651 528575930 376538122 789731349 925838784 623589953 228655034 952161368 1007285103 892579809 264739401 617913944 682459977 588689726 703574461 816147260 202538569 438363556 914140541 1034943731 532318476 38139355 98930639 274901414 265659602 417075973 857872997 183654222 379059277 178390698 206423463 274172812 590157766 153816556 145200105 1062274268 875078357 295752867 344648229 655575930 453855600 498460980 876922795 383445849 459653039 1005696184 377793836 707929492 8413421 872223844 852087510 761571115 1034227477 588817999 817861303 81202619 1043472075 734944586 460576739 848423440 648378406 370906213 97565058 876965979 265937695 79867914 928153486 705443867 649246038 691694148 807409401 616259715 540503667 409685001 508980834 511582809 315886592 701564804 777101456 660104792 663942826 567510575 559340723 595924510 803910094 257563944 380669875 1020993533 618532591 1017455881 363852169 810494888 483643501 107200588 11348858 409745938 81913198 907154479 453698158 239205887 878842811 749808010 621737340 126973758 982983906 839214921 887141056 786829203 1056923081 842111130 973004891 85252241 669670834 900832684 353608234 758641673 537074273 375105097 996834658 846847681 701139451 239479498 652229802 762777535 1006628693 229888749 887538790 240312924 844615684 386159545 623104019 86342310 217350836 247185116 1039541401 991974163 450750124 995683198 647844135 855515302 692015442 708593105 1064054983 594102664 456421083 259406017 728387089 434503359 740251710 424475386 890009101 780055730 404461350 180982753 30035552 348449923 417779361 287705059 761512972 836153688 746639904 968323979 220389479 84770592 844750243 632128314 869148479 627782874 134398627 885154392 617262931 657989724 994151574 632747610 404830555 303344803 259272175 281621724 859324207 57739682 98992750 903057277 277318898 723478484 133019538 6611208 864709450 535154236 638583458 334307172 891207437 497758237 482062276 244994488 528358917 246301691 1050437355 1040888039 100039607 225360017 329014962 398401272 149384434 1006387161 280215963 669163778 165039620 86979719 1046109642 910291563 752071650 812846963 827791966 889895317 290645892 420892871 687421161 781619144 189413841 783929676 459080928 927023548 734124906 186242893 93476959 271148256 438729888 915545465 173508574 485422126 987011796 800121665 99065306 303436774 1067170968 722942783 603131676 189534983 244579654 228464626 238209173 937072394 655527445 864276214 76218715 755258389 44327676 891469667 624694342 111761485 504048984 624738419 352506022 496329272 399878150 564791966 379915730 98412074 442994971 354218668 315488193 309419851 296657999 240397192 744343171 364995214 327071881 657202483 721222357 672880857 833235265 351355940 727467626 987862395 59574400 350813648 308733429 522466826 916116635 727319901 297101275 453075688 635620372 272986966 252280146 967285430 203142671 247452284 291687221 158857835 13161107 349061229 509519453 924860627 89018502 317435334 449405438 416608709 393188659 284634547 31942869 13066618 355649008 761627416 172149621 77213159 292456722 685804257 437616299 1027285005 154004521 699989132 853616706 968303645 835717088 113171009 448010628 67623554 605703911 1059484973 980604872 476985205 686410747 535612975 596311430 938516669 60851654 737540976 760535812 294104600 879042530 588116580 123002345 1012214331 329635616 592587938 813055064 407411085 700923064 235040188 754138261 916631780 257928455 369864555 716431782 413543348 562665508 159561841 140668697 349149837 438407193 1041948213 792540181 476029645 640694755 550436139 592406937 930452553 345260953 363081724 57003798 46459337 28349804 33515207 562229694 240568376 888667709 844785736 869203574 888965382 342678204 344549272 203767565 424813257 751958211 936468068 841806475 554450653 884427545 511705130 124645592 591213035 534536565 217321260 31512866 257948099 392144507 548853173 67023775 444963410 877769333 781965475 596174328 734684535 557982761 406115339 705496956 1040228957 181321779 26318172 829014709 52661416 384074860 433501282 539364625 313955373 474813068 594517196 700808221 941617082 365576664 76803338 712397385 346223969 340179531 402326095 352440225 969048529 428054401 181252010 32211791 897380586 716655110 516914546 334064685 330845454 1041163368 340688157 438296678 1006718986 524553899 118318849 541779455 97899021 613827630 46439101 611899933 925911001 343617083 472084098 756285958 798747839 404069662 991151159 578825038 173435073 370753644 391545323 230046796 497526696 97579464 556299558 1425102 1020411993 415721122 983220996 497155604 1009793338 988093851 246080627 1049392229 183567433 655633411 332831121 168523509 422693359 646311845 151199405 242410102 978194050 251008549 43194591 1056736002 264461224 662268296 457067697 842727673 418502174 247181005 28222630 802881489 540025603 348418296 33532167 230418850 823345602 3914797 1029616504 911417531 171620251 999908704 64337690 34251610 789034865 465317003 356176442 856874439 254484358 355093697 982394346 957624150 289590180 1000939767 698390508 761939090 293666374 457329449 336252813 50793413 277606192 528906248 400345131 693118705 311146253 725364140 346548261 482063688 7986642 209584181 1059398241 859999934 847896098 480392103 988500269 627802687 241128856 829448828 847925995 566913243 380136400 451914115 992272376 194077551 14519542 912630514 717140103 813301850 787739021 168379342 865860002 71722595 974564268 114586830 601146685 980170582 383629528 545617720 184136187 583948044 949719544 363984827 420705899 1013551868 1040387643 592278215 722031234 407528843 86708594 866822029 936685715 551233253 232625707 833408933 226172886 977594731 373390946 890902310 603009200 973843775 1050510270 82282898 1036189331 306616945 544576069 16330252 667471663 201766141 423995712 689404758 854787882 429233677 954702696 218018690 598679461 239670513 1031026531 116488678 1039166478 846573589 620170666 36877657 471855423 255765226 16254844 662742228 88722036 365607345 167145638 645226356 304714857 812663879 142561556 279626254 489965178 857913122 20099905 78712878 496470929 934025068 1034707971 993524438 999778892 248117941 214931076 959837795 922271672 634146421 513204818 278671321 630805350 650771018 693584967 518579621 40273318 152863879 687011877 231631811 468064883 996092960 846797408 526271220 175396737 641693291 73605897 39579909 1008226441 726078643 1061556136 1070505223 433571349 215419370 924646124 772045804 283515289 618556947 253679741 396359985 700540612 801829118 769554088 368986439 140603769 666583599 236291604 107382105 598431647 525948431 653383718 278304769 1011914500 255858639 47123977 42253538 757117938 728865991 72760367 1013826230 957599372 702456108 543982630 197155215 735660574 748248589 89535117 1006946582 1010673440 173225841 848971828 358020430 954997825 877550208 869649337 507658522 738068484 624317064 458205640 731267513 792012637 88581195 151156169 657946 973326312 642974016 947700833 372906935 356040875 128936067 926518447 517007710 906741765 742667507 921319758 27919281 879628457 619235413 207233092 431485631 944515630 70340398 984611085 959678531 1052216783 921084013 1031382142 598731129 472902314 752596651 315827946 972023248 458310183 860157684 212444522 659163059 455676120 699532899 964396024 1034679308 973368273 494737981 906501889 884633069 491418769 733689811 989808646 813713943 316132055 1031981408 209599601 468231556 796560201 911194259 712533827 132960952 153762712 547580523 912518521 253839731 540577271 168005106 831649350 838613308 58971359 539367000 534106904 367575270 212309110 57954652 240592975 88167854 826528678 586547690 393809605 166600013 895642578 124537669 544528847 155009922 850571143 207764671 716246994 523950599 711810202 654079382 1001073158 716252431 344483663 601557953 877679834 655558946 512296298 758086727 744033208 459322892 690881874 953304253 791668505 555953981 565018112 926777803 595871193 964725800 68041658 1028990065 901275964 69411229 508361757 105040384 982399123 104836447 987758108 269882682 998380592 550414387 483408915 664708498 149218083 863174035 485649218 468690754 777846716 421485033 7040696 1046513787 200363201 418784148 431852016 780950617 903719551 527120520 242058536 604801171 836039526 482610114 712029015 483246177 393986912 614954299 354754507 117182713 224247595 586072170 142342840 576887304 893526091 494262638 828547800 393714940 761666186 655935022 44972727 471496357 347723155 801817749 180027843 200233482 226048815 2620092 788228089 57807305 520679403 62706382 831722065 509590582 331187021 772483134 892427480 914145408 299233979 526264692 293442873 1044525163 634874565 384163918 664750347 676778018 304546261 56732803 779823727 595505164 171598811 635730670 199351370 935799784 1047856500 710938002 766938018 231445363 379765513 653911717 532701982 324175275 545534546 85194676 761085751 431837756 583219412 258457783 470546631 133833627 224592194 438001426 206441087 70238076 292067602 453940693 592197620 863933779 732788919 727262331 956905679 673942577 585297265 28545156 803862422 350817486 999067486 304384322 910322011 798141669 101067421 907131878 318301101 359966239 194701482 789648123 101117550 63969200 230323452 557121481 850013416 183641898 172112783 879733355 238821603 568563358 937725005 735664913 703462777 336233092 471657850 873462783 786529728 573477242 601330486 528823775 485634065 827787161 622333827 770083518 216163080 657160729 972692588 150817772 683918871 731045631 887707153 738475544 882336192 659315713 40980346 554258596 875181405 228361661 601905601 399682005 81625097 924089267 551050081 697797631 177962697 40552092 106626039 1043498162 259890267 672168172 830467177 995721589 735917360 696503153 193792131 380653636 932845925 226468673 723565065 914117053 901876687 246532145 823559955 199841547 429636274 976217854 745237192 958118977 942891802 489075549 176744878 304934417 830182308 582722867 495623350 587350837 987952180 154591203 808643442 505453534 204448654 1529957 379974891 865171213 665026451 766950398 767754139 466545995 88324774 304072955 207990942 852932967 289081839 197753462 1054806215 912564030 365528667 198276143 723443504 919950140 958402467 990855211 989999526 370289276 191563059 1033936886 771833607 955134249 1068107055 735451047 384744641 354118054 473231324 483041488 399414590 895566966 469732028 415213001 476042781 591357156 964060124 662842093 808808284 681321229 1003271200 1070412604 215727679 838921905 945050933 440570370 882713890 529589319 180526953 497498568 770156607 646614862 910365856 774498433 947690946 527250984 971651770 822726578 952260470 526924106 786025893 437898199 1006139757 868805077 538587284 889403775 893727766 382668422 21887783 232354785 499806432 499954787 365000483 82002987 83660020 367543451 151264849 993530401 491200857 822182342 704141905 622062991 841166469 696841802 419599054 822432231 507174812 161233393 1047732846 464863996 77111011 652372240 907787620 52673694 378055941 478874060 572408872 564122398 970445017 810851786 122158227 657974037 906593369 88768699 291920457 1057153732 774271316 167268718 188147188 245012006 765433508 455137949 790658862 343220899 358806261 1051133321 227798781 339025981 738514615 664732515 1028035063 430573092 1013581803 340260290 101267893 1072924538 413371801 451706836 73022169 947986426 294183942 166374723 147651095 53999817 411472668 782822365 915146962 806471917 706576164 735057985 374271730 1055321409 153393395 6653520 426718794 1047389243 362370695 900707024 148620848 43756700 28634463 146527286 605480391 297151716 766246483 703737076 452822734 597064872 803868049 325669060 456490316 286959341 208764902 41363776 476226381 145038360 31253869 495970021 196199387 60058178 302301676 179518251 201209467 30606224 848488660 227515633 591889088 886798623 461738847 22772035 318078459 574216123 287450266 826591996 360762717 232228252 409238900 810879308 292433824 623432434 364965388 192800527 1024564848 635739249 817101032 40495774 197661843 838950380 430947784 512339775 877763 965695544 813671652 686525550 528686697 570629438 362199752 733895662 459292702 406030723 1012458062 769246185 645163485 241575854 949936903 433251458 118731179 801504998 709029805 799776245 52309514 802489222 555019575 581356911 620440323 1030580414 1043046001 72738807 296128077 498362688 429288780 57106517 570031475 868674976 753207990 848626770 632500553 95710420 215967367 833202722 153280032 269681418 916115904 660199519 1030281996 1006310065 995729233 740493582 81543913 666337124 446368220 77399975 203971155 287154514 452460687 999146412 535917502 433075875 133626986 685217715 687293352 39287473 134367027 331508771 59477122 540815321 395921322 548650047 332429275 242898266 829689143 434499123 709650583 170609424 173159497 400620017 838485887 218836636 574103872 548183683 727129922 907511271 1043104808 943818634 7245476 477845285 259378766 924609787 232244041 581079748 454510180 301450907 57100873 259638933 344392105 332314801 1066377089 623898933 33234197 642456052 488341959 340024289 579371612 291205689 639496945 940464301 783691614 906857089 40822192 527973422 545408678 637008617 806257960 835770544 645678167 313205406 80469113 523147107 154381224 706313396 554037201 628635913 433319391 414771458 580823405 931537253 891731561 328011274 673895221 824048983 61433690 717292014 6371199 43124906 17978163 496480605 760405278 538165351 962406091 391497651 309441212 477301756 874789020 85389223 242651903 855415353 442815309 654348383 629520666 232339734 569613340 522249237 517282210 403091939 493819429 701902153 404735491 835482745 939962913 198020598 226627668 505406303 494610838 167245653 284944149 582882450 621062661 1057483881 164263065 810994637 858382782 592258142 906018201 613866119 92929032 362189166 1071149204 218407463 526207331 757396340 804890 946537868 241984798 622200461 554424502 814107047 699802026 784020504 45680762 104532397 195874944 67843762 470273923 547917261 118696372 974630082 402135853 847267979 328898434 844902183 483704152 318494521 102434631 76910688 702985092 497424768 843462894 111587635 940586549 1066257784 1062242179 850745511 245217086 212621514 180363711 228198115 917520372 601016753 724908599 622620324 908292440 515269745 1007300446 203840063 1020336551 700326036 552930754 104940753 743746390 401988523 924472615 968834777 679774515 114986574 24935833 202472083 733945585 943424312 270963714 15244727 1033462734 123256178 361503086 679102474 786545255 497525983 1023658870 1037838127 190280991 148013865 350976725 378068876 425954668 1003856722 35728128 471434547 980788680 744410545 136399341 187050132 540315854 898650178 712243087 1049516250 510335634 525940762 374399053 173502809 562761222 476322567 929688649 613036583 133342475 578662236 909138824 641334616 237922466 866992208 464315351 896791007 1070891807 626825795 679734572 182757192 527693494 673988406 1016476968 48624250 39047931 83045603 441118220 526403360 678112757 574282330 366626270 678029102 117901945 997697009 39885861 1054051269 690539408 611161302 14994909 332099252 16699260 81466563 581045290 260729127 535332003 682227177 481036644 509825751 400004492 194166858 457229846 627695328 116745448 479533824 619901443 796093181 735474954 300538798 171972502 674314010 157747736 931253613 737855724 18377665 759839018 398882243 842624612 995453124 733990817 584666009 777009877 497702312 435878927 984917549 661928342 204088982 963592221 471730276 1038954223 608490587 842628799 165539932 790114924 508060292 796028376 882418535 550442636 1009983541 1027008826 593041848 866738813 720964607 906434939 162953308 685894203 351016952 454681964 1070567046 51750782 211935594 1028563593 680874706 791490836 565778701 994584143 842769292 1001996674 519731694 808409350 530848188 755707838 763105037 998644878 742264001 140247800 287647907 841541633 663151732 882514309 753062697 22975054 887037015 987676287 918072602 399723080 155331777 402786763 777561630 882882002 829247341 693623049 1021625985 4593878 982903793 1767384 883706991 407767677 1048633123 716070920 72302697 599913886 475074603 550955115 371788650 787915363 385114316 588054804 895124559 185934751 185661945 862309365 421656778 97217670 925222511 929849696 902343056 299419843 517880324 870857851 828017306 939565904 747614274 897329265 386203511 865674847 617619270 406269171 590708640 271473378 528799092 866042156 660093491 260722966 86294149 986265500 544478019 246768920 40065126 14711091 780755022 97939997 663297913 1013185378 849587306 35484130 505113975 593232627 290768796 894177595 397744948 988343388 530397685 493380781 381043355 604453024 494929792 902060159 376184245 461988288 634544401 384940271 722662265 826266104 117424279 1007549902 136299384 137563355 641114334 293007611 311396358 602208503 235602338 26953676 849538505 1016849635 372996504 1013964644 286593614 969204318 184258210 228884247 418402066 111351862 239105640 598046178 284019113 15998910 954044135 439274620 263147979 209344520 194026651 61081436 729020410 308694812 945249704 20509338 688866675 1016740915 243862524 764080108 495142248 595822663 948123375 560122349 108955274 805751929 677147044 573625321 900704740 439827272 620501793 970844323 670954562 778721045 882424508 6952000 252456717 612568809 176875451 729104383 526906507 787439628 902393744 945153146 346019775 90425014 137790944 219523362 301886254 547267786 797728443 803282326 433014216 403678014 367144381 486385259 222144610 11916277 357325623 103871468 972838922 90124573 670323211 153424110 1007480575 235950421 796143705 451323291 1066380531 17429017 731596220 892635245 1029136497 1027715432 835740304 850392976 293419725 513775951 741039275 336641946 323942341 1000329037 33985199 1002275134 455958271 1047774027 474112848 421932127 832025140 907081948 320277680 996015778 904834856 597773271 897944108 731609854 700497330 443242390 389059060 270265650 477805090 134798175 260171552 347486786 613929475 575609618 975900331 343757993 194382332 676868996 507395136 91898876 700852997 760035066 245080721 1067981993 1019550528 1016658606 964016513 649910729 883356909 494437250 862991995 644221034 585759471 1000081962 726576693 917765936 207313248 1021854070 530746862 271032190 638654591 594551844 682713513 1048644210 432094719 1031448714 160086213 679516713 783452973 366864203 567003800 480008779 431033643 513923936 645156480 658184790 493318873 636660899 818056670 637811643 477524090 848323030 982274540 612151467 292943519 697692344 96228831 107147013 1023544642 584655605 780626968 600613552 962747670 875632099 135241251 546588418 183881815 107759691 222127426 405457394 777446092 474174500 973568088 317412305 135564372 134448531 253022295 399329274 779961762 1015761802 30794889 977174084 1039005667 952987116 145344397 618423976 121968964 719213655 144509326 821623061 753452630 119633862 1032670296 277241827 106507689 401998206 743866744 277380918 911104763 213607367 80248670 382232085 742809109 671222142 974932243 620382913 22792052 279257892 106411560 755656944 659933996 877356359 794368656 61010144 480639216 238534905 397641181 320289205 704811414 465156149 964122173 378734736 627683982 594721630 429954312 1021930848 89591225 811726049 865228983 81168656 366241776 776389952 585426733 898479180 230584814 1058665944 134940343 372946578 235770489 572444191 829451105 464524521 505710567 734573695 653009042 1048167550 274148033 407192116 566112893 956696388 580716905 127689838 1072916604 453306410 349828385 142987860 339894654 243972964 568419186 438650261 760960473 928396921 289484651 214087965 512694606 75695850 386706638 971929126 808756401 229647265 468139516 4971219 482060590 887628664 679296428 862901474 752794395 571025451 353566707 48902748 965542596 1003983609 738417264 867916069 777287576 17193780 644814499 34338250 102259018 942615558 361313630 108876759 580666039 1040478166 1044292596 759712506 549325205 857174751 762621953 1048079500 983615094 356088482 351294310 155046744 919907164 976680213 1048063422 248035800 161640087 57232493 125903282 929655247 156141540 737473807 968219007 363869815 897081893 657415713 98089051 416027802 784497568 266431163 549166465 94932889 52661700 770275863 467112351 3477111 940037391 101266501 380724087 99286138 951482832 942643253 576263396 450975197 879215101 550371812 324168317 69218797 207611576 685689714 536657688 335089677 246842259 908535314 815033536 187340920 1021536149 250938456 249814402 152497425 389380189 1043763531 669041129 975018562 969654799 662814453 407883943 251478417 480161950 717164367 943622406 752467475 868521097 1010693509 241789172 185947508 89877729 227878028 199558304 553107131 300258046 1064717444 388257553 922845576 623737447 703146607 802237376 122750931 58772409 683779113 279910877 142582225 78002963 785253999 49106511 155811518 351476391 935182610 113182388 706310030 17125260 46189947 861062388 248533669 1022437815 852869759 675474397 513311907 706269545 42237812 45373152 469959446 731206398 898124368 336983332 444255218 322075420 780668409 848479609 832319163 188510182 607653076 280571744 801065781 879535205 765528718 575473163 418168522 1018972954 795445097 633548503 804216293 491669024 664496755 517400913 367152472 823908884 388934789 760274716 82331750 1020574292 551707870 1050270951 485741499 846076388 194403738 614591485 484653677 575582744 822289443 25508886 188444365 117941069 522012194 835294108 82992601 571511756 555307509 948973959 920585800 779058009 491179215 934236157 173822838 43621742 805379199 830485616 692489020 895458650 907926528 1028001862 548341087 897369149 926588957 869329193 618783791 501813642 10624963 441124269 96180534 834900922 630228610 496434295 346172148 1063663823 154741027 464778895 202696034 447703146 191902924 393887260 379497248 486018554 357034299 169542053 584058839 595367224 1038399477 720910282 152320282 717188202 951100203 213175089 434340535 31216511 886726331 469906702 327533520 201625836 253573133 654339748 286811323 245788686 634673441 346882891 823088814 406228645 1066568942 348924148 429889841 989690591 851475981 299587435 775498309 267578550 384894506 668591341 1072337120 309204674 698037933 381614865 400860251 106209795 429614626 687715480 983734946 857076243 730427427 947936507 868169128 1004754209 492817101 99112959 175595456 18307573 750060382 168519396 878788098 295900701 810588105 899132419 239177433 480844575 176498742 1047015898 804949072 441850889 787995038 145089644 133826273 476981470 671681785 7504649 278945797 1070076207 304991659 648106442 584798831 1015405495 269476067 522825818 240402186 120694389 783612461 1061929018 1072791511 883082267 142402464 997448664 795655717 874147717 1040034636 989394665 365885265 447510340 971806284 286877877 527848635 255511534 499611455 557551044 959447632 726424628 785562632 478855470 393739394 95741419 88285751 1008358000 232161316 331214780 688405189 432179553 136479421 1023671372 742260499 704087914 404356563 35077191 146775563 456468766 949971677 718670006 1069706585 1050237866 314980979 92920840 28338170 843262235 948879435 1071326159 386690039 406675041 549738995 842497855 1063338406 17322029 799830106 1020783569 1031268554 151312543 796196088 337196841 1043722699 46641527 112327545 331137793 190351593 992715383 1012085282 302484745 119473749 18751897 159781663 83487503 750261289 574426075 628881240 864319580 780012485 457557800 917531605 899339336 959478620 1071104264 53821491 1043186360 238925103 675257251 60043995 201325122 433674540 455335565 936049423 148879188 822992204 1060970247 93879689 282786369 785431916 7491938 712887283 500006475 309032001 304955657 238954914 745023258 193142813 826371397 543452027 824466843 175305423 797229802 475603998 278433807 579656836 203650843 798018868 495704254 622638395 1062740288 217982524 341464442 548886515 715754413 1067187787 829028622 271402628 1053894045 1014101971 45947534 251318497 459520723 1045479206 656857245 764079734 988493540 409929507 245847584 1018953189 116537815 516879026 424099476 944351801 244866778 211177444 132952048 153931651 688864538 758962417 700038684 994214026 358573259 263879613 634583686 44105229 239431178 950849968 835213519 940272322 510871007 826622043 25599755 126329390 119572329 443066453 850956959 673731552 450857937 456440781 156372515 821883543 190740956 587194510 603432804 292616147 139989206 39568762 332724793 884290546 237141821 836714270 453661181 420925188 269500234 362522942 248429684 862795564 592778561 463628653 390105133 629104965 498951771 282365505 300422416 763949676 585758487 599145029 749456596 145138142 314191869 859820872 314688535 129092651 199635173 736821539 282693639 241834044 744781453 674448894 884231621 58140988 795256558 372250277 114917165 131232658 990716882 959055863 82068158 566689559 807915527 566007372 105166978 378793841 399018012 894298759 843976368 381536602 198439905 623173302 33355105 357490759 316362759 104443297 970169886 490257504 136034369 832865027 137244686 492805998 283159324 788556307 230422892 883058389 945632206 239429682 724601389 703576985 749880594 211292773 225278320 878165695 1067269069 750682228 1026647224 554725679 58444222 260013802 882216216 76333764 949656037 364270199 333187192 441688065 473210661 693669982 519737431 468732590 20987004 533338463 829435470 137927788 520693032 715409008 721218127 513474259 633123757 693065584 852877337 421502642 91511218 266811705 635817117 253170512 782871034 650953125 417320637 301089780 17014795 958642044 241299628 233194173 435439504 597898716 755557336 1027103475 756134207 510178394 828123177 480704570 1063910376 528488735 520498630 804759276 393506765 953274639 728268640 251117582 264865513 98255217 420727764 204319587 888485207 887026628 590933529 794546787 1010401370 228449021 284366341 153085335 432922160 311697539 225529013 485011789 514396273 92580608 608675356 107788865 78927437 905064218 924699496 108326287 773515737 874477063 981181266 202031356 106870267 491518164 17293172 539523338 893234708 619095921 61205658 569163968 533541270 378229354 1037321203 574937817 800471816 205874219 222103271 1015671913 624018405 73749829 618933981 674769018 508550584 1042277913 381677565 364147656 685109868 571976382 657472892 193431474 792899347 1018026886 835454324 910121350 767149112 1046915857 485769245 658559141 896251601 631415016 828516953 119626040 735706087 346336756 1069436162 9467502 303349698 70242001 793383350 629282830 678802429 478899067 380144300 30795473 939873030 616893838 641571969 764614058 17968457 788890652 954724014 685303851 802145793 764080247 914055135 825590338 937120135 710861275 423283763 945232326 1000136784 953369221 786984696 268375640 726730118 1007374937 644190842 690662747 593017702 171963090 678564554 8863229 266338144 667694432 255295567 227604808 653500911 424774290 237542678 168066248 253255678 306471937 468002601 360250840 557561921 301547362 400192727 83914240 350005743 66808766 556800324 943113445 147954146 120812434 1005129491 457783039 242790326 542912562 866019293 986167403 525185515 151400377 782298400 586093485 292473468 39456074 884104935 485896796 733915341 676951203 589172181 567711088 788481530 466526952 1038443082 31492621 227815304 1027857663 808539544 1042788586 1026819852 494196517 799326507 261627058 688002565 763255445 955431068 766577931 123801943 1034482527 991321752 335851738 893493870 630836640 789326218 17743959 643659654 533855800 230622575 201092174 24814614 888863210 542818139 313755727 702380365 528910629 898502931 851371187 227432327 595681435 451121355 372768866 531711760 482051505 569274070 653657965 421036405 770931865 371901948 333088797 198091169 794443886 256795316 147387208 748993465 790303142 462550760 91585708 717974857 1019581080 251047658 948011600 537248133 609169107 290088891 876106987 464201784 642146909 941885253 925988204 48505075 815682760 82053617 690803655 862477452 712521697 999131909 495723404 231600950 584635803 413658651 548304057 947272582 512401899 45149730 361536888 989155885 611418331 127842872 866775837 517649773 558796296 1024199830 866740266 382143252 849630451 998644402 399905172 916623460 321008773 855135733 113982924 798180807 641164454 1020135815 880835912 712203844 84950590 267072163 680072412 802200428 643114547 138626602 1028934236 402316704 746629415 884276081 21204180 581109195 477817224 398777573 997174674 382052382 628025686 528686338 854687432 1042455145 327283800 432807248 271001165 1044138930 1016974588 176496724 449634537 1000400086 382032714 804787967 1016225018 528029312 1066174522 59064663 991699875 481144639 968354197 381024739 308076893 425244747 849903345 913231813 405094027 105234666 503608164 336538482 335165609 492500233 599169255 683069248 1001087034 694526703 753121262 87836564 838609136 672563196 605703222 855635665 945594139 164432832 238285106 497878838 139486588 902322746 114509401 390462222 650258453 513139678 942676442 833608037 141030014 880807038 801923826 471101849 533998076 167596887 40300797 338799446 769765267 388673654 490828694 207120527 200554143 1054030393 579369267 53467979 107134143 350279491 640422182 709083496 1037983988 619446529 569439495 444619335 34457142 1014025320 592705057 524706029 92415587 150584470 723754385 355726804 412343931 239804627 705874444 301780838 507967437 948194327 903178152 330824126 401892192 465425923 254459996 758032967 769298212 259929826 175074457 513346264 58055064 545028688 187896302 925326085 703417123 940642525 1025361233 612756823 258677686 671550694 22325510 715143044 617648219 937315860 633668983 350544070 373298730 863126201 180127079 166382302 703336062 486049032 558966023 478129401 968419998 630270190 37373296 773651723 277695036 88492002 161635299 676741060 26109949 1016502460 787870348 699023942 76034616 28432372 56779547 505365596 878786282 1066140335 9093496 630013057 542211959 16283959 24060216 282059982 523231099 138257292 60216979 428786838 296178417 768545848 696801228 968500783 948213876 96274571 408292111 201304335 450273031 636314554 1007866541 957300303 352429005 685738596 117330240 327653545 240037026 332079594 5118871 257954159 565150247 188612725 1023915947 458726644 130297984 764649216 411566860 972053817 1010136167 923052834 92404916 943629562 627014297 96574969 519035253 227150652 555771206 328011382 928394111 61634202 81262098 256677413 147929754 689785560 1000718226 1017198379 114948140 172383648 545940835 887447947 965818913 42376895 868994802 764920395 128439016 287278074 1025495215 758662497 486162541 122888655 648264673 399933857 176611490 593408186 291185613 850979763 524557635 684080146 6842715 69867082 96547842 971564348 826530517 278245356 799803540 1047510141 864479973 363871688 17997300 786666533 560345820 327367081 1032600632 208625532 135964896 122064640 802294896 490285847 588107849 615704819 85770572 264855407 694838151 762199906 998003602 513891793 979379867 821614747 642363606 738834291 197723425 592793561 141093757 143127238 789113430 744509654 731297413 71813090 461930974 619705923 651798494 908015353 372284754 310038223 95675339 562906151 751851328 822701412 531051431 711186122 501815466 21696066 877823572 785145244 788788417 120223241 830212932 298592947 737150945 137410232 1028172188 68267345 922255908 532583170 1068704213 442976492 771719965 204802682 32273362 665318762 908092744 226894337 435836905 664670823 1059868069 1028752404 207153156 220591965 800063297 490599564 599251828 844468209 129541241 78622481 1053743322 547472483 541847726 601402825 111175828 370940547 208551260 152959899 241065383 905323008 358986072 948376784 843997434 725332203 56434042 925949433 151036760 44034189 597510861 481792285 514917458 935137712 313902776 414610436 332349736 174530407 548050102 239791436 263679555 1043913538 861113543 22033069 863878876 40108330 1035093986 914997364 960240621 848974215 526432180 861316704 628366730 80372365 51917784 115669061 999135688 758762007 827697426 79867325 423815014 694780481 833408205 4853746 920755778 486227032 1052363453 411770350 936184499 546087315 576938817 712864367 61683348 288799172 824945113 329233839 993057434 275664327 835662744 221536079 196788788 122314265 26937226 991421747 611187578 152939008 315841257 836118312 142608539 495888790 510194897 31178872 646905914 23676583 572137493 359011430 28450579 375565667 497433418 422286922 893852141 150243033 1012592712 856315658 1071934174 1063387550 968939261 404142162 860031642 407489857 1259036 183701759 308002025 209130460 108943423 708468316 1035607322 808542964 796845565 517436541 321433396 457003531 301196350 948732171 81809787 833273447 644601334 1001928014 773437727 1012066856 833045963 597390819 381341325 355831497 270422279 297741572 719804948 228806248 154261987 323883741 738308200 791688449 732698930 600659774 111700472 347341066 62556945 153768083 283624756 523248688 195881708 93388144 51608011 387265293 124017104 166124819 911524978 37033371 390873297 43779671 121087898 987662889 1019942716 559403001 220754126 1013628017 192311789 337088821 252976739 638885927 389086758 872294730 292361502 653576481 143081088 238483406 651177091 780986959 759737372 580865860 836511486 765424054 666408247 395142245 202620385 766180349 830074619 2934627 967388169 65616424 141166048 864557234 228095544 648165035 936925936 248163606 824299106 750087690 869504404 696906011 315667285 246095150 197611444 289388393 498652549 822274304 654740689 619604820 96380297 1035965782 617926306 238298625 672498975 555810790 967763631 222876544 927375799 114485702 168375407 1073606225 310022571 483336304 338901534 296530410 789478780 1022334484 761303013 699424202 912597007 227156998 249688976 952828662 274402880 982714630 809285592 230705873 169281799 634204885 941908732 357167371 1019946003 320502310 857829367 468749709 515175090 1055860778 748309924 652235143 810867550 367910768 940600926 153093283 257281275 520092517 410721170 4652935 667581785 866966798 215599470 128065302 974053866 862769460 480568799 247712495 300094045 823280336 482020370 614363001 986395114 409276154 633942258 445848145 466021766 265880138 237227099 1068133727 461000123 861941264 445934681 37398724 891665685 287143550 56536363 334056261 618281030 72261149 438566584 1073440668 20545872 261015816 37965898 460064946 959070945 12524261 768122771 1021220138 443322067 1021197260 932264710 428537682 313648972 920189557 921428244 254582011 868365305 621691589 923192288 882297928 4271299 593306911 442475647 876776350 504732748 15577979 171938508 390784232 546635711 96901870 761677098 801335160 14592740 804854125 344866719 993321945 395590134 674184700 709620311 659238408 38693988 605431571 981775019 459497713 1059928350 107949126 630708812 854408540 1027437892 390848215 1035278931 291622202 672881719 62056355 513262824 671778282 415969379 910430563 1071337558 893502306 879575466 974158705 191686911 37533617 797686450 315931098 372279489 666709270 173255888 506654743 153758786 370248850 937575112 460752327 521994885 530080098 244205292 716273014 930382349 470848212 101297194 403745577 746613030 643047304 1049764239 802169263 540874240 999669614 936047443 41895032 821845078 874310339 340010780 175174646 166054588 755714823 534949504 535599037 739987968 1060356249 230475516 951741255 955618431 513269602 1049513796 486509404 723865423 133012919 260190928 424091450 747988111 265789684 291127924 533934518 949549128 978848636 371353093 348156198 166677616 750914483 359252789 73877041 997642077 159601723 72026105 723691120 557218743 908441852 518364807 972449417 670321876 460001674 659788846 988392882 527391273 186700123 983119911 99171137 126112292 973634352 935950219 255788602 671896386 56370911 646110390 394382142 776064401 274873751 243106767 951998142 921334309 728789117 937945073 633337468 10279990 111487692 306432333 202526550 859760225 978602596 832615179 299268101 868909082 496715330 682874848 363533005 786745066 864346602 996790776 392207791 869601866 585002052 437500636 602279889 1070479004 404602237 942731246 1039725622 665292892 887410569 38210044 21193398 806645648 882085526 186405589 811999578 336866286 762387670 594114047 393842156 112419476 18952557 742738897 657994046 677486715 550588792 553489834 274310518 537032302 1010963878 830500101 444881356 104572385 133287471 675864480 126227179 551948156 432845686 524473111 379103198 11438194 749757609 339951093 340890865 127801693 293501981 398776123 577777288 134904154 1017691889 622887827 848465629 349159869 618016493 287316812 557963911 635179091 289272070 546886082 245996437 304956152 228729796 890899862 83317373 805816791 396683188 257284145 256132764 14036292 544676128 487779869 481594691 527423424 927199659 533557544 1061527776 1061280840 120720591 418066268 444389779 1072074834 1047028666 895115371 451242188 1017597035 343493589 449354331 588321562 533013205 191768945 713608000 553757566 74678168 518173986 819407411 911988577 503896766 999800045 591423029 582504086 412715039 714899082 983490214 769454382 368113759 225558186 356572244 1026040693 622175869 706862683 264360321 968172389 185425910 531700680 895875237 602354935 1070817480 216254237 752487839 448087434 796630994 484673160 865584800 688969904 60163226 505901420 501589155 598126185 790770729 62583948 103529865 445985339 895421007 946074417 476672591 1002188578 913232993 184574473 580194986 675325550 190031178 474783775 695609165 575341925 93669044 588325861 92448240 1055298914 713232085 200992062 117146342 680037145 562160157 122330527 775613904 39164030 482859346 760505064 934670236 453361136 1067709334 514503929 397527788 707750733 481074119 825120960 407802552 29304976 240121106 754794966 26162281 291174175 212479841 980336632 89335232 474896035 996366182 742883784 773322952 873974409 445140262 320483747 326706884 909854053 718429215 479606067 620584007 968544551 262292864 1062537993 943829370 918251688 118748941 50503087 958609188 136548234 863843941 601384032 600908060 385185974 888155410 351610022 1001216506 706840039 14363812 620808581 833804521 971505087 85898442 277219850 600290155 371395468 459350804 95695651 844572183 991449644 849270876 140110414 607554530 788194491 409981331 448669684 40916101 174277688 315555006 520769577 57940711 274433672 856951428 983295267 584975164 144009425 449424158 708899042 657415977 798554607 1015705034 156389190 97749572 874120568 713537221 323280570 297933565 640901842 127585567 375520162 441219892 834962125 98259096 927034432 61491211 957209678 367107834 807492256 215668014 1010642902 671677347 59089672 883895896 491456070 530417627 76287070 795273116 762401368 504137700 111958050 896403731 957322231 459660936 1056064666 784791845 1011431566 366671711 396480023 696510703 193946807 822469851 548143503 868787193 829090852 731585383 504461800 535431459 21229173 105439007 177794271 618127162 952851730 136909424 361595024 970706752 654232589 596609564 199607857 306723905 530419319 57796147 725924619 27250411 645069623 76166028 460561153 1003882308 571803864 176590741 73101284 925441760 99633515 270343345 507792005 1061410708 617732313 1069332024 306723741 113941634 123333875 926853149 948582423 579183355 541530321 236632555 269492145 356538428 449774668 782422954 1059088230 387183585 249233354 96331974 643863561 182025018 422493090 530678116 613537747 334858609 556484759 803765713 873724885 324647906 599488185 30424577 1005148575 925085538 835234777 620150425 475999224 995482008 976517087 940426034 93993027 162065813 176764639 1023180076 584327004 235447387 77308730 442044830 188652371 292362838 799319634 373349289 245686411 502521154 1054670751 953528418 413690599 142911533 466791370 1057426732 884303482 871392139 354681904 1021562478 263777293 336958610 276519810 400426627 378652529 968458114 148664426 2825580 174629831 912982058 558929441 312317677 932189485 329058629 709169156 332573991 842348434 670558204 588672101 239730872 593956761 621565548 433654515 442227485 367075673 855114100 330980684 892675532 406444569 868922579 442514476 965683414 945249738 853435483 90125324 960059297 543941277 173151687 428733353 531324595 726670091 706547705 601333186 695741141 313729571 248347530 399281070 674994392 705711053 922305756 951273402 419625641 1065580190 616319395 621135124 456496313 869603766 148427377 505358779 669487185 828234094 627889118 773185418 1068969886 228781387 310543738 465036762 473221497 614717256 349515721 395670384 658026371 281758195 300979253 301308459 932660225 826057132 258441710 791219183 348259208 349032598 967848903 328352138 918603267 428960202 580812054 612482732 348812558 1041953282 775404985 606576066 143838972 169350452 920170089 140686937 69736665 803848355 112444961 158819828 92783789 871674707 815133455 834936539 223849138 637820612 1005608963 407768512 771107704 287298256 80502295 313855605 136308936 410690660 658684079 180022670 847808295 198656395 867636082 340011092 276213003 428368129 19722934 1072330476 130364291 524923740 640024475 321903878 910299116 366057662 655051588 960783220 640087212 299484181 1032474587 694233375 978014312 859093006 61732007 823656553 885426289 455684813 91343012 980083410 52844949 1044512620 517225138 697526319 1037892289 685274343 589839575 70941397 636055867 830575670 39504082 405885809 553002914 96499974 1058088532 595438401 14891026 860867389 369012220 426859451 1068076720 579470755 269544390 852886599 506112528 16570237 22735650 583589652 787341164 166359670 965573686 531297767 1053091142 422634702 644722469 622692788 866888652 120183158 974232108 738214602 34220064 645332080 1014836359 976366531 964824497 687957542 423060759 1004686614 658566881 451812014 85750833 1065886930 261704790 1039095655 484941721 225715406 200044085 739042361 841654542 531717967 260657050 417484208 984246971 326359298 738356801 251040425 264664533 386828125 371750636 243060047 1038025754 240687620 738610586 780171260 324623041 114577232 930635770 200330156 378566400 604337932 541323875 702937063 682790472 997713147 273069173 334279702 857198115 681769411 897528490 811991777 444419883 836055915 135008974 696798014 346971141 100833487 19162776 33524236 263076678 708577914 765958596 164567428 151659633 795461499 685586834 98813092 462689067 952985301 813284196 101436500 109564311 269968227 912287552 917822845 795008744 976462259 626767857 310724297 655944108 155800149 912875414 227291145 878003068 800167856 230562645 390922797 938782129 126020517 49741776 1042037436 670268059 577607484 260573311 425013711 373848534 33577054 817624363 15540597 1026542250 287121252 769469885 832655236 914316660 239288554 371668496 641263624 17362435 131085259 1035016141 871776293 745830808 67252299 410321166 43505964 794105384 549777570 7422832 450235873 851838379 1037281239 1033709416 252180998 829962336 279381763 462982901 703905638 904512347 1051411970 74612886 137664134 30372669 969503975 805741241 427897300 79108450 837651067 217633650 359631960 487810338 229225684 1023175723 951996893 577991917 589584283 428477023 585331249 11273061 783276699 268671015 250210809 137978791 366141858 466638884 489142539 97250343 46037474 343459283 567227567 854474854 479022982 329158884 833027223 51778955 249414447 719244210 6873495 593308047 715340182 244631133 180933872 311200576 995768955 509106567 347985737 1017171488 630105546 192904373 786531131 474367392 1048623760 621201362 333979000 115773585 724483845 950245709 1031142115 133795189 458843102 963233548 942540622 742877266 167335925 820768155 696749283 708073316 127615829 43976578 123819997 937479674 595255183 990235219 14236462 330230979 1025224899 553013397 961549778 833622180 761913039 1011079815 816183667 1063834787 593679082 767915153 28556624 1042986611 198638634 265186685 711053827 582287631 305251365 722536546 838382509 86960879 939746069 775378381 625493456 27285626 709834364 916028818 18302077 965703565 316188483 737407965 726506734 219903701 895342934 682335353 250876812 240747362 50596628 155079346 411238874 819791724 650170001 572259488 574583439 1060817641 269149352 592313835 617511439 230940121 1038451517 202634073 742601962 287783699 757580091 504583210 355251953 1060884653 159551645 75391108 180104828 300256349 974276557 283118417 498924351 868514635 444393467 984666349 66380641 26801815 445043166 929984854 618534305 136876338 114896853 270154441 274195262 133352850 744856082 39832556 441273084 79997963 662919948 396138730 716135747 984135837 623049233 359640371 723667079 301276878 118951206 318517494 262184235 118566733 69297458 478150251 837295049 326090421 502642755 622183918 900721418 580968881 686416523 214537857 988435002 875084656 393110967 529826778 89421416 1069567041 936193493 740130276 104211200 177152184 478170010 385254478 968755464 360269261 572016330 804053111 331453880 868391474 724186669 590012274 145656339 1023119767 249501473 241963417 997685620 708373606 81404908 335186908 747374628 178977663 46554426 797369274 763268480 34527316 156189542 730403990 461054260 809445316 401230265 470485396 128804966 176672045 429059835 261674535 660333812 396572816 240988050 98178305 384295903 234329639 452467001 222822736 772642134 165156410 254718796 984757310 527346399 190270509 704776105 237225062 201131231 178654770 507180749 852967323 253114156 226198354 962609647 388866409 89259213 679522923 858254583 528167797 972002000 181622228 591702776 328756819 647016025 862308966 278497842 1046078768 978454868 784934453 902294134 1029781292 841557058 225811962 349721936 923412074 745607174 552426043 824150601 744282077 723177361 208354067 1050600578 338235429 1024261887 813279963 495683677 1071032446 1065282182 421602417 119208029 638935797 380646035 921575904 815709378 653184080 602324148 12237053 26569691 574859589 607568625 107649375 1033573262 94461518 122605990 769581704 1052180748 308220236 661942475 510344452 559902137 203308268 906719943 920109092 995270997 272402381 423377363 794065597 552499928 696607410 539020536 662340864 144148590 594341636 673368872 585948842 511245722 825957789 842704634 581163789 791178125 518504324 977364956 444009600 797904550 179561848 451989599 626886848 866022506 155327655 854441847 753299454 645629544 334006615 582313131 803606730 966115777 298239488 158441085 849403598 620266995 723342116 893249302 724786615 385503936 634457563 594616271 423436856 258735159 915686026 50201055 218982370 271840223 487297605 1051110732 997671764 1064502855 646780796 680079149 69400265 95928831 36722347 791069246 844950565 695522418 877373327 94199179 295655017 657749700 849231306 329661961 344638035 676480287 436911848 226440309 802388354 719586637 504603292 885102483 853387639 624701502 52706230 151933013 1061561143 910749115 161129230 625168497 883795065 977856074 407390924 780722184 893960435 1061271269 346632299 1015772478 991211050 764585675 787687656 462501744 991879471 233304316 672766869 52344788 659454311 337963206 920331165 534563392 259221968 1064644137 632666318 119250867 492284853 380469902 964292660 184590364 442184731 349828148 671087722 286434520 151546069 45829938 654855107 474925569 250620983 376244550 800277753 722364135 104931268 97492963 452246265 62303914 709923566 538911708 594353519 290282392 410935839 697637477 392649313 669296151 295438262 796232631 1000603095 207551949 603508253 304007313 148647593 754671580 727472089 902042799 640280217 194565816 448764607 647712625 795752158 939695332 746025118 810431903 904495491 904613573 672932999 304957922 333202171 65924623 263329834 60500840 809184839 884898982 485032839 397928044 891359402 420275189 1068963477 894973937 1044019106 707941268 563355624 78519919 447274177 583157075 317832908 868535243 552184100 67820117 242586136 370692139 881577126 36025398 536564399 532060034 193715019 950324433 600521167 440039349 530118546 658269945 483244024 69874915 1000544075 460248188 276388782 211760850 154970546 1025078092 485831413 875685917 406672766 459144759 478701313 542195884 747804469 366090285 549220195 148103864 549864929 615848798 139955610 930931012 722562764 153611492 1006887447 448412488 212298660 452746578 377865599 550026586 839613374 973955835 906045591 389687930 214193498 237937777 862016859 838785757 821185336 1048198134 343212936 559301087 23936324 86846437 929035199 1021009065 150063162 750735423 1034595225 429957203 919944861 257063339 146704261 938798790 629430147 1029494703 769322166 837747863 585486131 264118300 487531252 10215813 552736297 566644397 641146971 211954501 612658571 357495509 634625777 395086367 46624603 853292026 355511074 390072845 468084122 1051604568 999442805 832247498 940498758 860177075 283897814 117477819 587954037 1010638570 564777925 20933143 628902439 51641113 694964944 372394743 527862637 1000247749 407453009 900829653 1063331488 415642819 891545640 778900724 233888791 863038546 972307637 153629282 376112556 851261931 1049395831 699406552 624933588 186262146 12201207 673355330 297707184 983150086 96505734 661489679 612761825 891809809 1038428699 252341582 449327739 305091094 681870242 1060790565 679850346 975558167 844021267 45269206 991518727 971865222 631046700 968779726 828031157 926072979 725316659 368856496 578704404 20404940 868702028 965104508 667500676 907721451 188905467 60946563 956028608 826163959 732773975 236208611 853156924 35301532 533849884 1012102594 738756335 500340599 941413282 747966254 319189888 100437278 750346245 967342665 689377901 104165111 222460098 576304771 791754630 1026259941 254032684 858075311 267490035 656335739 296157108 77651758 773871447 107257305 383505610 89856257 877557416 487236389 433595174 755300280 923410531 44150942 404767070 170900419 713633663 954259628 795018472 70767544 822700889 638452567 146703127 570324269 872356514 920865513 668050440 256505182 105423927 989961456 327961156 1046254174 319756056 702190472 316515772 453115243 434960449 267489762 427434619 922398372 984491538 753792384 199118715 573341035 722425583 185529869 745328730 54033218 548537061 961844572 736032629 274954699 61939294 589179941 954452225 248175192 106280326 412759691 692155843 740702495 928662689 693736084 79234178 104770838 154893525 388625853 503363327 612690766 364216443 157466921 30325328 570969226 188595799 267011041 939957795 377941646 106889523 352334273 822000161 987450647 428332112 144071451 883584662 393240602 640855261 425250421 237758798 22531974 622809943 494877566 605435926 432888712 211436993 132258606 111232320 145042175 940514978 1030263803 585343182 964651469 397389561 825639495 903818607 410024225 867094699 920035767 335683330 609861174 565357925 710306298 1052578711 366475898 916014620 781913689 986815016 576755925 826465453 466137503 890555069 69942804 308483743 577420118 331464685 86497656 593578257 87203057 875953009 457432940 44014930 804402239 1010813372 1060797660 906168342 147134250 1012750405 887176972 425661652 348753197 26061511 58172019 136733195 836706982 288798480 254570787 401675669 933545628 15402499 530984848 442552833 299171521 1010458680 558916927 544848061 618782274 350212330 895166394 309399976 820132393 4018243 825150398 212753643 2572229 1037350950 738096794 982663748 333604968 996435554 250116000 309858635 645001613 513275722 280394205 229952128 162706833 880896318 653848358 1072238117 68394625 247274306 67780496 849522067 247523053 683647641 138966699 336584270 267961488 477291894 143443707 281600414 433379747 400007927 670714892 756405280 954571920 102125673 514572904 205196845 787767628 364831188 1018642092 1020085788 559988764 894883279 452344198 456460353 928255805 396995863 216988144 258729534 467539256 767589355 697608927 579540132 264902805 684954987 185304457 475467738 855002025 885340952 997826551 150799335 959423066 960858807 132467163 4460472 810600368 975306399 479458493 1062278023 617796601 134046364 310258709 331307574 934281972 667310086 23351111 772418921 595514063 935131625 1012642578 486762216 478536265 377189161 294715441 715062718 1036926990 828104657 272084721 895611784 555452775 560285668 637822740 1007794875 718518858 301964261 677409868 205017398 211052061 229516512 27313934 890918977 914375606 488286328 801424684 617349309 685013450 473641876 271777814 1059034352 508925423 359296233 426002206 900108271 45515411 396399715 448372984 390988568 870951778 1034981053 773668078 752030366 388505347 563589356 953229641 1056020663 794479433 52486460 230173907 143466944 252933809 853092987 605267364 578075164 1040785596 32591290 608924864 26640709 403996861 234561940 1026690732 213566821 105815264 726531306 862455213 1033233866 732545305 524878 626257680 184030313 1032871649 1005997997 250823210 1057628691 332194165 495000152 814620818 1045019521 14164179 1036084596 51189307 858638298 125377476 499696605 599330638 126004426 163173985 980075855 864305327 579866266 232196458 654669434 107126318 349514855 798643070 423733719 113502908 647794223 387003863 861639745 778869917 377554286 240213496 324872480 123793080 654305195 611633542 180293589 272343519 480683367 236750193 816559735 422022061 460560886 932847704 873745747 622157424 86903990 953205680 981753860 1064505056 114721108 993180794 412678594 779197830 147581094 798908779 849251214 1044039595 1045302009 800551892 725743074 1671390 121056688 444937130 30352120 370884984 1059666720 775537660 884305301 533527944 878999679 566633879 263648429 521275106 1051155249 267287408 63641097 804534007 36767842 205806362 42648317 326169196 1016260055 312753711 739033590 563319387 523663147 957692376 893317295 664658422 190088381 304067857 167526130 258656696 999454732 140006584 106146175 748834318 184854671 543258715 535652525 921169165 779371662 274539589 1001603453 284343890 766248175 747842757 408050720 623557441 712772587 366003160 150418203 263541642 858065986 650349738 715206094 930872023 629558995 1039733450 725022996 992714407 319851685 87571215 835136185 675554689 276088876 232635210 195283362 717642912 525375344 1016060244 902129575 1040765122 482406655 35436348 458165006 601614572 982138780 486044960 191145198 694048280 602815523 420686269 678261277 774664898 391081365 606593135 436168305 1038261536 977183140 886409800 954762910 1028937298 803890655 255822431 11469559 816901422 284751940 208602573 1069964442 234354236 263658572 326994588 1041408876 313603574 756930351 36522929 952391833 326431796 113668123 283432202 721187608 162572146 269902585 594421117 954237434 565023888 427103493 335773141 92822869 733409846 248791253 1027484214 484501603 866596188 233476404 944972205 3838718 814700362 107322864 219808395 430060499 365258649 875725596 487948445 977820132 573377157 739572611 354874645 505963128 381232596 872366942 699730009 86328528 680214580 218058369 91098495 189524865 477725367 722232513 787861408 747319734 647280832 683246343 245705697 901261618 750525907 889150602 442905767 515779332 484574310 473465940 355605994 168946310 986325415 738092107 579328581 960408822 300787315 799589052 507395104 1024131327 681506010 703332368 263391213 1060967832 497714691 36382835 537359389 203130010 440521844 793401988 305713337 281600489 367346656 806387052 763495133 309362990 419146311 1049482377 294978922 175478937 125803002 555797515 1049157385 94095941 820349688 751333484 841156198 546623469 295633873 230348347 644774658 994110005 577576883 531306560 430458832 757621675 778595879 554447856 644507134 1059071680 160011773 294933181 960219756 1049333580 733235583 231508026 531852612 1003022303 76903142 841152070 451339054 401515568 243288611 644744230 278232752 712975362 116514462 744579645 919515734 143324895 1051449431 637232723 867927586 163237982 578458940 248327684 629397906 855586958 348999449 420322778 435460609 475381052 776042504 431850123 520128772 57797670 245600300 60243494 18450321 587472349 167768430 634008003 531080693 872284893 238158249 2757374 1014678573 191358082 504659890 613392780 87140127 587621835 690097092 865378733 106507577 748561719 794328105 442286271 918533316 81041265 930512804 158351493 25356682 306080127 121086389 901231641 491324136 1034432379 729932971 159105660 197867205 1019613678 232975925 351226704 653680817 736776256 264665741 279408743 575572075 983698391 932212411 343568732 408543402 55868452 657180938 91733613 573582056 500786928 761845459 1010972495 768110718 652608266 513686992 999328713 297504645 1004982577 595503742 30244028 957679098 1042735867 705619580 890817843 617422249 351433274 551297907 904144751 228557836 1031930226 1035359121 465686490 475622905 833015119 195941263 432563913 1032513866 799063324 577135368 1030871839 200511353 1061445419 57080265 62744682 182785965 880924218 1005810094 522517163 694543054 450391363 319638295 194246930 125970361 341139811 111403251 720626194 999350967 969706113 840927207 513135038 1040440466 406980684 668058147 166294916 763955118 678603195 1043665030 270490587 69448098 307183099 558341781 279798068 787423667 353027785 932241071 694560698 1041388106 622710585 551778455 318995296 979649454 812952534 507442944 162712766 958597255 504638020 594318429 652620152 915777117 734548089 464445722 233904599 393018316 11512670 584983435 957411479 726014451 446753934 249574529 779456628 583221634 607357212 277129174 146894526 440937157 806023196 697831748 917664667 987909241 727561830 475651123 1024265834 1040341534 105180173 120961317 934082856 470234371 192927357 271307494 866185925 429346952 205391470 112605783 60296621 120851350 60279758 148432716 947797368 497291810 643149213 589273918 1036677025 432182022 454909884 245152269 121404109 938377822 992477554 134020711 947097445 576142150 627084585 25823525 735220674 676510638 139074467 705428101 137338600 405392391 962465990 1027811438 233192848 286840585 228885312 897169621 863724866 341368813 853708186 640761235 365822444 1071092259 514876413 236055006 713426198 280250605 1058933000 662332605 454940452 1044215900 676824991 270300586 694331217 925326486 183843840 113139321 427754110 1071719174 119385978 967002822 704630251 120056468 386397357 302456473 317659159 854078211 995834195 100266537 879465325 700162617 344639903 1012078782 925569520 156396983 787540654 784375050 491892873 494428620 1043586820 817729751 450606223 100852475 368366531 424090109 181023707 785884876 393629722 503151771 85410000 62735210 695191310 31055029 838036838 681767428 628642620 598727010 394381093 704814654 475772453 923443118 244648750 178243053 823073693 806411486 856830609 625378148 550619478 277903245 914398901 657955055 689956133 19497377 371999096 489884436 234573599 529625255 258153201 66939868 1046320181 242344662 698601946 431746343 344225426 72417198 459188074 669433191 943067392 516125338 385670237 538280093 598919647 488279682 1033239589 799457707 1041237970 454248592 150823049 214716336 757989436 983863059 496522631 504088033 766034654 590862611 962727899 690391521 924399548 281601622 1038632452 414593411 1030132843 845629301 437227335 424483987 983555086 923422538 1046047136 719787170 569108708 319381853 242838741 943347306 472773420 38912450 955836736 761287663 502821564 1001688179 460223678 62081864 364968864 361434065 1225701 983751858 52174965 970597457 586979945 764554431 791289562 422731765 394263470 209994161 455535187 613829315 134651531 632685736 303326936 711260753 270244462 51692241 117211882 570290680 84333029 989339937 805717829 319851714 61755310 10918619 831158299 751746420 328230979 890873155 822826402 761663704 1044987289 120256588 85820977 724429144 745801995 1015287509 587561734 362775598 164879487 878346929 107005158 583877304 1025337377 89594803 492527884 999131023 1065574181 276540060 532865287 996682968 1032243138 444318974 5120558 171266284 406597319 117526972 749066500 143495199 651193770 382111111 423092509 808870657 500988717 320726455 697855634 1058164324 678837895 553896585 111017239 341791347 57255910 50243411 289864634 409873958 474440167 63764469 748936334 74274362 90986624 536032502 906692847 176520619 548975480 774278098 983427006 157790786 32665041 79702291 208132229 845907454 820562917 864689267 331431134 57621283 817342516 939826593 604035742 777628632 169070014 776495027 212011119 906509683 676089314 646541374 457249223 524647906 363382635 451001074 362659305 863783340 442309682 176257284 692566351 362258180 246188089 65216570 365224308 493683832 557479098 109008163 346455659 453154043 1034086067 948994776 192579314 931509496 734100978 109075365 777210386 474863689 229208374 887920881 326434996 200887989 986372211 1059374857 181573835 264524421 858243019 563981909 1021258561 617744129 977446710 576812283 767208562 917792193 868950561 155253062 916979252 364313933 555659312 786747161 70242008 863788408 323496217 963263255 643415043 355345586 51930105 485052529 757291740 117562935 496838619 1045514539 370057344 868968276 278419954 587897291 769526720 681472552 642172006 788083187 939901983 382344488 664816175 581684642 732037895 1019207617 316202758 166869944 1040970933 738964832 703036329 499244941 941273049 736579686 999998374 766271158 200423774 542386416 1027731117 566488607 877497691 898313237 596724899 166446800 463883097 1005000578 137751288 355704385 339638740 333801288 73675748 551785049 561931275 26265256 1066833973 180468311 31581318 1070458156 215760617 348278898 976339741 715147220 733452537 365384799 1042096471 723440375 127737148 594920595 832308169 597444361 862428516 382525390 493839572 898276375 660301088 662280919 870339553 836830297 273541183 638889429 501537682 565983517 859726970 614481201 736210796 1020841057 845815592 792631414 517016789 600202273 416992860 969823078 1046612681 134993747 820381035 926015466 1024855983 322607666 850480190 227565977 1073462534 823975308 923513492 475427056 784119271 484988807 356660976 516470562 19630712 879563832 572276472 815299908 506339105 559704752 765328586 928422053 704172726 1023188411 980447114 859391930 786675274 550424914 681971599 591461965 1010789340 542174814 750110822 241432541 422479453 263968248 687076924 463091437 377904387 499271006 858872488 564725575 323365647 703120483 54725225 530542237 133333238 704996915 332293446 1013609643 230451499 647284641 331939733 564799390 598167951 100797747 807207210 518710425 561863864 472510247 1046143371 1002399208 44864270 216947017 100334226 562051963 37331643 86730377 96514804 333252817 606581555 955512091 630677595 522021793 39906135 94653793 299349500 416413943 203586530 555304811 715940156 384782531 679219552 598809464 640015163 115916320 354903255 695080713 627884383 387195441 134854417 483411513 39516944 589693444 890747776 334575971 1038967917 1015734108 522701953 1029667445 365446763 151417237 173867436 868812814 199373289 934942217 1072797674 719470784 585162480 632681032 318267238 668263346 75135059 50426578 395871665 276837476 458860561 929756710 602775565 397557121 69182307 560917079 624950978 1011487973 813563886 970233604 582686826 191573113 442987045 649356495 799024419 628678568 89950654 237097395 50162658 341163351 560459880 416670169 870610575 97951037 58491023 277675676 991263216 521205623 933244654 58211779 1037194329 246381184 521077676 930439307 174180880 392098030 847057397 618115309 342602416 478130455 963848450 269723230 292721173 664299925 1017774905 684554345 307149972 58083069 991512754 470427512 463639042 499303451 668596574 617972069 942972105 817668594 36283657 908815063 143356303 599065487 953517446 678933013 83523497 486622396 554308350 812151184 141838642 306435243 447332608 345089352 970242368 410854536 1052570627 1033474743 757034041 1018377691 784751265 729634134 1016108024 552163530 747730917 1033261179 124133277 236242973 118301182 781821 739494398 407249882 967397747 58472864 342287075 643876089 650163350 250643970 519660290 1069995612 361953777 732040727 505227609 638649624 740269527 71609146 601186357 1028217859 841355682 414743025 289843565 1066359157 841554998 846864295 472808187 1054194206 628788645 119452903 749851089 1032507857 44256259 1033997306 660158912 993555628 38678771 482655037 913231251 942835314 939129633 51590965 978272141 352947024 962810275 811304838 606074255 223559266 791240072 902166780 196346874 880222712 425385961 762215036 1020503523 554624067 911475943 750925805 714757671 1073216388 756186734 184783576 433228871 890006219 832968348 368227928 298009922 648556490 910044796 566722671 240655398 1043130923 165551892 373250249 14837071 913578343 208822894 52030329 493744480 919468666 949786266 215791621 35970150 173281524 852443245 757642210 203428529 765088477 177413149 778508013 496333301 19142175 998154244 298641646 795204139 170201008 731546788 680856894 66169917 943825534 131259807 88900359 158032166 285965310 545163129 340104262 317799916 200975139 798108580 272164800 547233141 999577773 281639705 896136743 737376329 11714049 989350932 705281155 986063997 956614209 774474212 316932831 935733145 416550138 780139525 930427692 458459835 74686713 842653527 85053081 758953750 22526711 753215456 1036434366 368701334 716523559 392298126 19350154 651088382 584402323 112661918 582069602 993556551 644391711 881053613 1059142550 841563738 142532826 562241944 863367293 952892919 208879136 545917332 1018355281 326429130 581063860 463569816 694219477 270042342 137477358 556885608 28417118 570013937 687970228 610281092 751159844 173761381 632516019 669096556 43034626 977978668 307677153 1040837407 734573191 1065730193 223441913 1023706378 638197777 161489714 387266982 859147770 442188534 367841775 1073218536 605357575 738848006 309012840 838644043 975363586 180265380 989471450 212473946 979618536 390006223 513110365 735342173 579972377 901897828 517072762 674976127 1053997456 627698649 668499365 576257078 872687739 648135679 869496794 894810590 898764077 791866122 900325608 185614693 737886778 613408389 544689468 162780293 336404081 511174702 1058101862 665356059 663308840 770028200 1039496521 1057327618 761462341 640858579 314463750 1043729297 440362770 451091004 518104689 992698247 195134617 229522341 538805080 41255044 794505761 207224866 1060609956 572969985 945350257 566626805 152315401 72187612 843079885 610898850 626564551 194428434 235225594 234288790 121177110 600651316 671356617 70640492 762961157 723055792 145337487 73332558 288428552 83064958 818978507 788234612 100931820 548554202 417787508 442456323 30384365 177976740 854690311 11054643 320828523 398902902 328250342 539759228 642842517 717766013 1036807676 419538662 90661300 330310379 348402330 427890446 541943816 592795029 1067384607 484340131 322204463 939575882 845370640 606808260 1071286396 694625303 53137101 346655256 743597221 723651137 436262562 177322117 563571384 549898941 1014625892 180474803 962232416 222974353 942275717 777081948 614174578 290568951 91037646 494141061 773658865 761858550 658061380 440758277 569863276 132665042 334017477 114165114 1025844759 512688601 366738120 829486178 979905717 360725881 104663885 816474935 176891838 170713019 109502869 498705129 225320276 221328845 100522446 597992963 551424548 46017378 499083318 5945518 292380808 1010888549 429431092 294544439 548501392 353798487 807095713 795241486 798143635 1061307223 529879013 446908127 408222677 713816265 114483169 518529328 959881661 255539679 200526067 306874416 310445137 158039817 190516503 413802015 999763536 187398766 383240090 437304906 174720686 930528832 505907728 927945756 330197893 401457479 1064229856 340912206 304136674 332233043 637142650 901604309 580339745 928659228 953825113 240567704 797681560 773738815 397766755 820548855 18442713 780428378 674583004 649391832 551068780 596536149 933980024 913216098 708178696 1010781318 1016945302 246329744 152139223 71789090 929495696 525225814 212561485 144563829 1001640441 179519336 415104556 591495555 425652557 516100707 516420188 211776799 384058003 173213166 528675677 26170640 996090480 539593964 860694987 745714041 1045259385 447096505 1041508487 210979666 196524538 933562928 863531683 9181790 390200383 907228827 764751922 500800981 878652866 1071888882 674025870 536057445 415844318 1047746117 321424298 734229305 253888925 312324769 506317859 392570413 200588278 267312495 125876785 585075620 844200109 312652917 460276410 56298314 264960721 582857759 1016534878 1042587827 1050559747 822470819 1058091138 570656131 2714257 142779678 956900460 986582374 722552070 530259824 381055097 217555014 656384734 20616181 350210193 587590740 999056867 223163360 247421274 871438102 1044745666 485867366 76971467 476326725 541437667 282861951 578765199 50273908 801802600 9344757 722256568 232423247 907193809 973668039 997796025 290374030 505358914 868024172 295145348 253674401 731051692 112272085 161945736 184625014 671728150 364126315 954031390 420977745 907799758 853887961 1045354524 633232285 24919470 138794469 196363556 260806168 1007157087 523178882 41922339 264395769 818679465 325022781 1068961150 850528114 286389369 374663410 278902303 857748278 558438057 416341606 133781052 240267030 771819008 638666377 450105864 176880763 94215951 892547284 60942154 214661745 448514670 629668366 161745383 619593394 152147502 33642680 1023539836 700906860 646379358 807723187 906110467 477112424 236000768 325367716 930179796 139179422 942950305 954604402 648882896 512031137 938635844 554398851 1010040252 723228509 953957721 279821827 452294980 226807106 110032486 877783663 186330056 745992638 11219328 640050577 518424620 327652353 929184982 138566435 1022134818 966906589 832736995 310618293 336244301 445849916 121281803 678116494 956474698 351702363 687251842 845737066 908799675 595577974 642706121 1068136250 658978754 29962281 67920341 1048957911 597013222 1049170074 928463076 165405420 208523814 483340227 588264362 332545941 574639054 614761555 895918692 883207018 1011194806 32526566 493554241 873873301 100339693 19887681 918947780 1020740101 764947638 375623587 537690866 925102284 146071027 344487106 370397072 642213414 24534362 139100365 489417116 879758818 11414461 553739191 45157334 646804571 872802227 889548981 1043759030 873744504 296640508 590138603 719894308 867369996 619907864 75293759 533176318 244688394 781899343 830630914 350775635 802127717 735538057 448208715 711202855 649525541 946482075 759583033 537550155 403653200 298991730 774630146 365036900 1035116832 836945592 1023289290 658301667 304856363 973456423 393844063 241166500 104066049 1057144914 905481172 816907936 802698282 201281522 27429458 284254990 631111533 747682407 168121607 357747786 132036831 568751557 1034743537 376573248 343508535 814545415 594841518 316812886 1022577777 165230209 788548611 145588469 416380401 341609970 982418632 248240139 468125063 686827237 230358662 832841825 981443826 148246431 376652325 33816574 325675890 633287473 679573039 1051553369 567981277 890435672 798023963 190678201 156301482 249135778 790478961 281277486 390787809 1021843578 146071095 753153840 921163575 18220372 995297650 280408675 1048644209 764349954 109300157 787674367 847722718 847714761 597628496 511853103 704633294 1039427509 602741985 935372887 468728488 1065556308 83473496 342035824 138951121 101119327 14897923 528548089 192077396 561132661 196565568 142808507 900824457 819581391 711162410 543862357 386607789 936330973 316876239 155719628 922658659 128879946 260715308 993834407 445150587 990040956 47644230 494158804 795988792 264164639 267913543 651415150 611777431 462835772 491013199 303878544 346949645 813849407 95846428 835709947 927729378 1041805644 421467656 42238978 178544250 1008570757 632253229 98227833 110983820 198921941 449360458 466240840 844599376 938757004 187935068 731900007 738157821 273688328 478038338 938391539 310626129 278263662 206997393 444031951 322506113 248356103 217403428 606928371 585534253 497753518 176491985 692183351 148489779 243913315 490824054 837008828 220670602 960091538 1042297648 229543228 778099449 306293955 716628637 820116696 387520153 177665992 956304970 1031097043 834690340 414817724 752608261 899688865 719863996 676417684 703842557 963054915 1031565990 8904716 598343075 821116494 71000936 713246424 935574969 112742893 707597194 132887478 345644746 42761754 959018537 676010801 990822343 766476007 583659366 488184165 647888477 17208811 851724272 804616574 402199734 248810537 103196827 266497675 124709019 825656208 157874695 600570746 455821864 291685775 1023163294 76261734 43019563 591462866 56096389 639661437 281870352 314187583 270869146 145383795 43380435 174566360 683543245 1002024057 560989862 1033821871 900863360 995902454 309940165 283045160 788441337 919095723 865440510 454951564 956144441 198831258 31902771 288385605 384492817 501821720 878699273 907770231 485328573 277731192 165008248 374860306 646447757 944587934 236494499 588239592 742630455 114721904 774902535 319891019 770276809 947364949 675191277 377013695 345004257 682033181 37124581 393201009 473239421 552354799 445458958 432718700 763792750 834550082 487868831 949555256 135509425 489558229 859359867 344652524 633521905 1028962781 634206584 31764343 693331488 426678295 648795936 101261205 215083651 1009381283 945494669 326748282 158104855 68590149 606441642 229483644 885023933 109854182 752857747 188525406 673568079 464299619 843797247 707268327 87059649 322676315 70350343 963944881 35770775 94061809 380968312 923472646 756918982 601499400 76924270 5018489 482342834 360355154 537516995 714478700 63556802 29353007 691149220 687850862 974960709 426034325 555725804 938182772 643412639 374756978 467933916 963885158 841253999 635466087 708852073 414444209 773172846 696397093 545514696 113392387 455998255 1001893950 408395161 151166451 218157754 934189532 663991248 542508344 492240155 274309702 256244363 330883413 905456324 540396286 458398364 845400966 454431069 162307425 824889118 166526702 165388699 921486513 825923572 528326320 239645710 238003084 130431939 349028958 1005846705 216077395 9755612 646122332 134244812 701684431 819572164 155560863 131304758 890375515 59586823 4100352 162170463 799561640 960680002 745934715 869245510 840274748 926948154 967578855 143620676 53192354 1049565138 494257745 729682255 994718145 579230181 56558293 369935390 585657576 122645 123993037 538341097 686247498 697554689 268699849 39947814 460703442 355962371 244182568 972415316 1053834614 582237167 913776977 499367597 1043496025 528448265 37785674 1039768758 583904028 963544674 212843883 257154636 544120589 94267659 76441208 424831917 763609005 745961391 982915869 54989264 738198358 732192448 164324873 35085625 501075842 852633450 588661654 345414551 200052792 285012191 95279339 941155257 756783934 724237564 53654838 1006271490 243886528 710274361 189236814 810771024 37008260 596726695 171181429 1012656423 346289339 563233086 243040544 671248514 409662604 39493159 834804744 514187792 930211520 985453999 538475835 783580665 568911389 832305173 133644507 277304684 499188694 1044599625 834381830 808047242 447713702 694819519 606457667 264668602 726027319 219279499 957161183 1042207660 470232908 629029344 699244252 768749094 750801808 254632956 585107697 1046391065 357911130 651437755 426933919 119187070 47257496 322745946 411741191 972488864 256228787 119632776 232368810 7772030 738575652 291982170 581579332 369502686 592302103 826832220 811313009 666368635 869359777 219607375 318961768 759754479 836879185 87220523 960510066 90149483 826749980 75161805 906175874 158557330 666838194 409795697 414326764 832573694 621137677 1013261690 626503087 180186849 591857258 86846160 187091683 783017666 573076979 660283350 1021980677 43500824 847942858 163670865 669777775 44320507 173708494 249573984 323235011 644482593 255168591 717590205 1072893570 237727056 398209829 110351698 804378103 87082828 481433517 253496668 810735893 938266827 270994912 541960475 546870938 82598899 368416501 600345506 151110595 178292055 258062918 561520690 383069563 207548061 966567620 299744911 617537184 1002142458 970831327 1034802366 540340572 446952052 307331268 59020959 63302283 615745570 449394453 570862115 955945719 396562913 303227277 679004932 1051577452 826377843 880125842 938521003 1071443857 681103531 143340397 163011608 663287852 554493927 1014432070 638096950 518395630 337334028 301647601 27016848 380016148 626692530 249057993 146571437 756669181 13509928 892634583 70087472 844685309 515995794 309227601 137707854 339287131 559656508 755460480 445691309 1032949091 868026216 942965258 681218338 163938789 1036305565 753974424 787057298 482799307 460057931 182031781 573866435 628388266 659153646 485196658 661643610 384095220 767935683 903771951 406397222 639642869 729606171 347339210 171728638 909041303 46904710 218871644 603238651 1070835648 1031243999 801134019 255087391 200414720 202525274 865513414 617248565 915950099 38128747 379201346 819236466 389064406 368721817 929254573 978400978 661579151 218616 519702767 178160984 216892934 304837794 139553655 92116793 700737074 385689569 763983224 849188924 409768827 975195190 75612845 771199352 66837307 268567262 503074336 815519506 548183038 779842036 319866136 211239770 658114104 693752210 768192665 24606509 964833935 592213284 454193096 127474852 599179957 190728329 53698294 528258802 96012646 556944769 449492249 381915513 479349792 719049940 403816384 682395250 1029701332 762514789 1010650847 658411227 404824160 277502680 515987798 422079813 611346979 109764256 978107138 632700018 537119724 457816296 289165804 706340126 273618622 440600654 278186540 996201009 973547639 540928157 655721261 30095187 278063637 128114444 189821085 589392907 731440014 1047333408 250128379 101673053 716760867 133418239 750114084 366560921 643326415 150551101 684672351 869269096 351102070 643579223 1052251262 553347114 777576184 780598730 159120234 793530442 1016652835 537834683 782567457 419325682 438539301 192441492 246064292 906206562 788440178 850027402 928237695 916228690 805535091 176881430 765250257 264895700 546650630 540036393 670710722 578247224 162706241 1061193250 594392033 946880793 640025427 1030097834 398594291 186121015 385315839 883310882 84502299 67393119 928280318 5171573 769560683 660689408 883864084 511393353 456436699 694171572 479704128 240613250 859588976 827494226 751583917 995361238 353439802 207439616 1027626943 718036673 208423175 741535467 162274971 1065061663 270398211 561472735 217921301 998988775 250955971 631356158 229685453 975824435 215080135 7990310 236598602 472055430 286196628 178370498 905212225 998552217 881918495 540585214 658488885 955205879 739334693 462334162 916702661 449497190 27387466 642954723 423954436 16513904 956381048 1044059180 86846553 458405660 285460470 647599218 467586997 951319173 701466201 336219789 650289260 948736154 236062697 414186557 5624712 131441274 434695005 976983456 26739139 710413847 141100539 704006485 850188886 361620839 829427954 649037715 774634185 69263892 321411015 927015051 734668657 490079736 467392458 1020446578 314543386 890008546 417128613 50437719 137251710 301151353 10529354 421475822 326479378 65619209 17971286 189470528 684870805 629894306 677859775 580091532 454211283 121587872 341318596 928185991 972439295 971654291 1068146801 232398502 634253580 187483964 385163958 989632401 467715918 733875560 113888865 45321305 68424009 727126076 338606121 833882911 853498929 278619181 462243264 117035024 681888248 658868043 227113570 592975120 764774773 462921164 811202503 1027157370 613744182 105588700 914867473 1017454763 19872934 569309511 759361067 310747277 892810550 92186366 344320013 466323728 502036182 65579975 92709216 944368067 260152681 175128289 139476341 1057752924 311234597 903680135 465543474 989704356 1010159461 939348574 208907719 116198621 291146863 172511237 843121135 86650690 985735082 939771336 187460610 273186761 399814692 565770729 815399385 369471468 372092568 419251142 53705993 382255265 104666772 978297307 924899218 504588688 893273059 707667595 1016392066 612248720 770563455 553188632 684790306 525818373 285431823 191615329 676578166 196953724 1047169407 87998604 303914726 601892277 65094564 696291855 738090141 352845177 605310675 657965762 735180397 394686392 790760876 409702980 724055731 594451092 174369945 504225800 304138773 773783107 1039111183 464812942 678745434 117394983 490506743 444564356 15969312 393341303 288627332 719590966 146631336 331418022 720808949 674899299 311397269 763986911 176594797 197179223 344234521 259145856 149938432 506163703 853733068 437224892 371184118 132403053 348245158 292529379 260785342 478984458 136777913 942596705 196582937 990432703 181769105 578380890 316076184 989390962 928104973 227054663 845217563 876978586 1027522197 997068552 1029703485 887417107 377502668 650367649 918315519 983793753 662270895 9864583 21137834 994054368 619103629 744118401 498983005 614669393 818797999 67880388 973928028 677870890 848089764 323361574 756074901 1044848087 935075124 440823646 695866840 688121031 497227544 871349716 789829967 664462154 287821669 656525466 881960181 65910815 86032867 72504486 737009991 853939685 1063788508 500491710 845855895 692814431 399289179 177233125 103396038 245477749 22030389 41723149 235398713 970055194 990193396 71309765 471965615 738994091 802908144 393873468 190571810 793881207 55921031 1012675662 918021311 467375760 314744132 170908173 887995187 182315943 100474084 511831591 513782272 195936456 146873853 315633136 122854775 773775505 740385873 47623269 939660519 760946334 322975792 570410652 144351602 400166063 514460695 539250664 928364159 371837561 759740416 928520569 450977946 25777722 100924887 166342296 814504326 987798829 867436882 897998241 575129733 340151861 809025555 196077976 769019225 812303223 197117902 845147988 75485528 213037962 863015789 959643388 631023662 406694473 299760582 946842919 58375865 589721707 157320890 864595376 14419636 133038046 878240613 735027776 253066723 931917711 138541313 442958358 577035508 601889702 1065119938 385001225 691436721 800271474 186513658 174414503 757250815 1016611401 403117126 64631580 307865046 868502014 790978516 40336678 203179476 198460654 764771472 204404187 320003490 296526433 868236215 576229626 338635732 429441037 442049518 813425963 713780442 679300670 924391635 80738287 868619449 565064487 339643616 582402749 1033181001 78647757 1041928772 906256946 455806797 18456497 512473360 720473105 910989485 404536064 406257676 857678370 784307172 303641592 561112365 775592815 824941444 163802948 805395605 977337691 37797918 1064067937 869610266 199680625 640688541 289647816 674396599 314298825 684907490 781053410 135554193 615951361 435539969 585479449 446265873 379226230 785815743 35855308 557652758 504129358 192679609 251237333 133919586 270227077 488904 33372361 965824479 196954417 72125309 56215209 234945711 255973589 453886580 806564818 695423542 1025778635 134654629 695480405 566659187 569787612 45942305 866853952 448732848 271969362 964067390 573937946 400469109 586078660 277634730 33217899 990503306 603819187 1071531995 28513950 987463685 132551627 955849985 115887468 429114768 277820572 810145128 193387509 61358367 16817045 329961269 295897511 473074804 1017071640 906405347 965931598 439797795 149128893 203877249 1061105282 428946294 731480813 52738424 753997796 1011629921 777625285 793301515 422068348 673199888 878211600 730807482 107254563 783412058 652072467 911407451 896227589 446466604 11402816 121690278 350744492 629262113 331092603 822046334 301070342 23520824 673782937 830495070 597620596 838834617 307447778 452011388 95849933 271200063 637775201 1073273588 848832938 568519446 905556546 991057577 835987357 270013270 805810731 1053436416 575211991 501319329 626987584 1030309939 247788315 1011036014 789556848 943653816 315318356 644086623 189575132 568917370 137995189 299044965 243010429 520306273 1050520307 551748596 439939962 655648338 685634560 499479870 483168866 26001477 963238883 102966255 591683579 304126941 367200433 461580236 542789822 735889354 570861834 92102566 262709818 843128163 582772388 83357523 740892321 948894217 967313229 697156169 247513025 680712099 297510233 1066699700 661223101 166478830 837597183 358204973 478320079 769159091 314666808 289639182 930644178 854029333 904335656 584499746 116234707 331910887 172731186 1052593169 411488649 476257374 933385582 609232709 813467230 351721781 940493344 1056360093 949306993 723768338 623659346 481247077 650493258 109733427 707094133 583950459 955438435 758659710 285756581 1039214282 320715794 576162677 1018917574 904271102 371811045 834008170 771544556 586749055 1048375481 398263310 143267840 520104768 962041799 397970585 773421785 265998752 652345638 284822293 313604356 770973926 820976694 469192292 842121030 56383667 569594862 595906747 614655282 300595689 562722915 454840843 523642288 861239077 757819775 79778770 62387493 583017422 208111765 733773643 893579624 477605840 1005144591 415695911 342168917 302294985 847126118 338383672 231811434 396266397 816071553 600119718 687677909 646239867 229352815 376188810 587628217 21955850 465320049 586253523 129672561 183663165 967999205 76493461 655512793 359570855 868158634 128464958 45260602 576619739 196194209 551033300 565835759 780690348 251001126 191063167 849981187 639621827 640933805 155848213 199024076 997511445 112112354 25042278 86598274 469165924 769325897 868491141 1055516829 468972069 536929 327557666 16964316 246860019 272114370 766051571 55251511 845175167 214237244 327143294 872714858 474298721 429684326 527688754 766703749 765388084 423472360 105136717 893346748 1008405980 948276201 1004031991 297422983 35495030 186283109 900912811 8954166 580074929 665499661 1066292344 356474158 228780329 957715864 529392961 725230823 523243177 613309190 581143388 109330031 187381789 119248517 1055956685 206463859 819597489 196192200 1066853625 592655233 278630239 565781810 186738362 722216525 631179286 104977054 670085356 1029693899 218473478 933179171 815308705 949056402 691046104 458995329 332590375 971702251 1062614898 225082626 100407885 430512569 267406702 520816952 420386411 550585754 457900134 880487782 162487171 984867538 757015864 435018083 1044692018 72776997 391029384 138962514 778356736 401172700 176550270 1061556212 508527787 1063825389 380760060 222835496 365527876 183017682 574732859 505966889 846505797 871866355 955360051 215495904 681894187 7238448 462863866 708484256 191920206 883409926 905222470 61004655 1012897022 969639269 791017011 169130352 320515001 907401095 684647661 713613270 401440635 578322824 1067535150 312455868 510910371 715755530 1051433333 783142377 889657568 931389090 506389251 319844122 435420155 771585414 899234686 22512457 547967920 154404605 807334672 708358016 505483050 174816010 303616262 117210037 850259510 371248597 41522021 288769617 1059854869 232710890 902565401 371643318 520447884 1019948803 555702323 341231840 649858729 121233792 1073353918 715141710 637791482 439194144 814174262 835933725 587249711 851861118 640563294 42245954 754933423 56085691 30675254 794657088 124490650 965815807 631412194 159505511 918287135 853894629 943612475 78149863 80118560 498436704 872196266 484784855 412292941 494664078 61005560 6189440 767219795 413844520 94205243 1014337352 216915779 144892612 671527200 887198935 492772541 526321482 953716426 917331268 921722986 170790641 703371232 14314109 16524262 953243299 925794818 195064776 550153811 784523068 896488391 123456750 1037082263 185556965 464850888 1013421048 833611662 558440973 28645733 342820182 339164693 179398993 550573561 420351999 615250496 612987490 630085449 506481537 607752830 397138348 555961812 958959277 551697196 530668261 677301156 123150631 746970228 27828936 852270437 463723842 1009159448 542397362 911227320 945357085 1012676578 920648025 987985995 322943204 636042344 463589472 435884172 4294079 199842069 866493816 53511013 59976295 612901907 940236652 761087380 675531199 1021575871 10084623 1065981916 405601686 846587946 134300337 499170604 976396319 689075486 214269086 806672186 325218458 883293684 953348617 589839445 509339110 253452263 925089388 113122656 981083779 60034498 51849429 283949390 894282336 208537059 362100172 727783665 283015459 488473094 325344112 512209263 709113208 688087865 120212082 566619755 926349749 853179826 816159135 790627127 11326345 506168540 1052093521 507375866 545419041 496652999 848716955 850867919 822009094 843790841 418835121 407597950 867109397 815841629 556147630 531834676 95940584 481983770 55063767 570977497 119235000 829827804 417336989 149017450 743967254 364574518 429727583 789543867 1038246179 564624558 427099465 689651126 266229784 1057581882 221120086 423024193 145494926 1020082161 212352489 419810774 117979038 123388969 300946604 87942221 592168138 754049363 249799105 32659982 256564328 179395062 1034859520 970520316 264917844 71413952 323606789 231972000 417567445 984940141 969073825 450415314 18860807 744266814 20092122 167452422 1061702491 205613207 275694914 1028668953 744429171 10818944 761016394 509693821 537250281 208011051 141154388 243701773 613661649 756604976 282872874 885862447 43305160 68043604 537794646 689067203 304284617 956069908 842323122 271870678 237079793 104328703 479463363 995715952 321236592 205229913 237478570 557757400 1060014127 1036180599 1019419994 1057243215 760797145 312874073 1022564926 752940914 412155770 1017180860 108075042 952887109 974637929 1046959923 170690608 239249395 744513136 955480507 305382297 175967592 640700823 199887662 199090226 548207433 48773416 136941560 46615291 652016579 418175519 81047443 913795215 512682447 767370181 336016196 447908622 187235105 62784001 225552004 599094867 523611866 338962341 993992475 470509294 309574284 126094368 533183178 701584707 537931454 67189288 834313624 820627137 655310117 720817447 904254870 764530259 952924397 630613976 385587722 164148943 813242557 965353222 992127016 317316750 762848206 685060040 105155966 65907366 990682008 295589764 389995784 215869612 974406534 236304205 974195458 941234745 548925347 420889616 275082858 519654007 570316103 386863379 86238520 750714441 1020071940 225094206 1024418267 1060770642 752927281 504674005 130186290 52102742 149512192 142974333 548945283 646644250 817507461 411514410 114929376 576768968 678370594 708749692 607288996 113066965 74104317 112686103 64993577 251079749 507253461 162626014 326686691 651299587 222212291 173184859 756742052 564691698 739689315 959356611 551221769 1001735259 499595251 917190573 727872123 987568210 493689844 1050874825 727476429 767740805 623698309 44590365 489930681 778255693 400704282 960566384 936938571 602444575 270522908 636038566 1026817116 41793018 639347152 754138285 797358913 858021825 661894605 1067264840 953724304 1047350234 727947269 69937918 332764164 537910457 778829393 185045267 286874280 1023341855 183500893 161076716 1061327833 480681043 524833810 490051379 1003689821 616809163 47031633 978145996 1032283082 350616570 1002252622 896720770 223245909 680724963 680978674 634211267 770348773 654641928 907065852 703385922 336239735 451774531 24731388 546923021 361586396 454855088 190586023 94274405 116218146 201790435 904762334 76742143 783645274 899151863 164621149 889437552 847350297 607074364 266672070 859224705 811808710 764622486 898037525 343684268 923767746 352753992 854042748 134323751 769379367 935730991 960679601 740095146 771219452 130377635 699262518 172443916 793979912 102236727 151423190 903506860 267852064 892949650 968342041 435187071 802549221 561059160 352486553 575525767 518459223 921717743 531824318 122056552 130758732 460360332 870652491 1060009667 653272653 894478432 12628399 333238064 838989632 746646938 23181456 906289621 865130061 255843343 436541759 1029021744 587946498 594344310 340119608 571711221 785629111 189485785 226963152 541997855 515494799 404758131 1021051863 329203667 572530094 1019973156 864363048 350851068 402530453 968499327 934280164 135641346 675380636 497679951 547041312 564093154 351751383 376890975 94039253 548137419 179905580 416047282 804793111 820676916 367989474 765556893 837348656 544530206 194409082 683241276 697822534 575327309 512206427 410701381 293112527 928057070 964535301 758436972 251864703 823981385 448012043 872558179 101373754 305788144 126277362 743304801 359272622 1038320503 917485423 316620880 888974165 310368650 471656217 718690775 375824213 621522612 969019945 1034071410 900515251 1034685728 129028650 234440618 738944272 212151317 518829736 762557115 574478001 966882425 803083524 410630911 725928373 458418073 719323900 370998473 974889734 240208562 799081237 555668533 895945578 184597453 812723539 56266563 371215231 947755273 708358110 548192250 571589818 849875598 1010339181 849488931 297868370 784827395 64694081 791555700 432161757 960478974 279422485 984392007 983823046 242171804 336559556 337312247 598338318 132936622 156386576 961362133 483442651 389664386 672200909 702531936 870411946 698866340 343653891 806939609 738354438 663633186 316665719 292431864 511679509 61971828 1012824120 721451730 442731330 580158875 268309945 939745406 306131714 918597656 184078740 981812248 975168183 397207043 855997612 442747096 850563473 643888316 122208078 236539151 1017654289 181639258 17108149 420909356 781864649 936518504 749996191 289322601 663899007 744241914 218584581 589820148 889064759 997305505 449063879 860001322 483394201 621469605 1016262887 748624397 1071316337 653165526 730231115 543061418 693468759 3416662 382200688 242987756 460314355 747337111 309242792 957648778 499700699 1060230805 82572278 476340049 103271197 529092474 500927314 846569685 952600625 769455848 993918250 931179991 952813855 793094466 723712158 414857071 649549774 1037252633 513890040 907233985 506855957 152515594 215093399 336382625 95896682 79756460 596216330 799760261 905062596 175346821 68001666 291415378 6880919 910725350 833847933 20427569 776037275 526991859 223824775 162685448 626176936 366163244 399624029 423829041 163416558 282504870 909886351 975174989 925493066 279189459 193064824 752174183 1026297199 353030794 756598619 26595327 96973818 531060797 295210133 572488321 93220726 83248883 674361501 469327670 876064124 627889840 129198187 676738869 248117097 860800100 787682993 839055000 387777321 374413457 477523210 951011703 183972927 19231911 238528816 638617856 718673905 892009603 655567587 391597290 163876396 939733356 1023341109 392500306 548089454 392968573 392175543 199438975 17220995 614909153 142460360 847811624 13484523 1036257625 333155401 708140106 655400358 827529143 372387637 269533085 496855737 600829612 648285088 366448085 231987443 157842870 1021942309 256403805 709659545 381824078 138747967 1065194435 612887159 746198608 1037990514 591336931 375841221 440791786 433644755 650268289 834263392 764296146 740364201 1051839779 679011267 995223996 547983002 427423920 422487568 871362309 897984731 827193546 214022616 565677390 696073574 95015401 587672343 188885953 113347634 510976824 1056281991 978013228 1055508011 943854017 556898960 1069682208 392900409 185991939 790649476 222010079 284741989 901089142 700915509 937575573 832129852 502775379 870508459 596759218 222469358 891303927 665274983 189954521 873886763 73731733 117682441 295093227 1018045274 353424854 566842947 207674654 395181198 20419463 569023076 880377178 1073149082 801718526 251167402 794951767 896141434 211070246 230130067 475649285 345445078 201392403 397131218 80508281 968039985 111181240 587010341 64268562 372092691 269720780 944009889 621568942 85261199 831204548 900397316 645180156 654682354 623123047 396422256 276541552 66946833 306288127 838021372 520793116 358686301 842356105 545138478 521054983 758485338 614201792 164802749 948171371 266754190 194107695 492812851 897716009 909024507 857292127 118659834 627149280 52542994 1072876061 533417195 722719529 827583109 950326729 986830969 978567362 870388515 112568584 76050138 491308297 742157877 1028435143 630012052 575640157 349137654 806482957 723687015 301387200 671603437 490641306 388290928 729042085 815069370 245747181 924390807 55983386 996078915 102596672 643470019 359410802 414992230 325960997 203651740 5653844 149475676 1021542219 509964620 1044361016 533237930 671175027 831571357 680395003 879025079 39970280 800481546 523649567 291222211 1035626603 500112801 21395922 234729657 693840110 14240182 15411727 975807139 72027136 102964190 260289135 1032027192 291392646 298059559 631168279 869642039 378903273 842956472 847131822 11455413 114470778 704714866 794274097 385351519 296765310 687641267 353905655 271152219 748081126 710883302 416322100 972787510 243796571 436548579 433228733 696678967 822585272 736811363 68262527 686042508 863939274 293507071 817408046 424930266 981160765 369713531 1040757844 586795574 753272774 702140990 16727949 66020150 519959706 955621175 996759579 683341741 349384441 64364248 282522816 830074158 1000014190 266601497 259855882 228988790 376326570 849836799 238057922 765249933 659847387 478297627 1156546 728242388 494204223 468059930 794328395 359247398 880905673 654142679 997340730 429507723 608842223 518621495 968656059 10735673 90959283 1040041724 238542979 300103198 537227272 1067814599 808242967 808713150 508131300 710860265 437800421 148851571 344406800 538090112 63454606 38028404 337368038 735881467 467847347 172775977 693269593 823402451 997570841 1050929722 564495877 506229413 160060022 769382267 882777380 914426537 188253577 789923859 708854747 842378120 634093602 73913214 1021153267 829424596 408299675 828941139 846967477 800029718 170458295 487626954 23204164 485819768 640271653 605694231 266580716 540557925 759320834 901418068 254532888 150846130 42266334 603337220 766297610 549181737 159167822 450769947 242491487 127246497 701246113 223994222 418868225 562758165 441292412 611573459 42570837 799059191 628568961 70928408 1033429415 104953400 676810355 467585058 407754878 920973190 324631043 592555149 831721555 1010286787 51590615 378763200 178933214 218692075 334589659 363927619 431025806 68477254 1070395792 44751702 186693148 1061085315 966202095 899510153 344632585 937020561 287107381 82845559 397173616 359754267 567942936 523271169 92775340 68952829 495276717 545068617 399221014 444374049 991503028 914363464 965322836 871405699 639776583 277245892 425496794 56756007 233026171 475484329 967084511 225142806 1029473244 981388451 854697000 815394114 125729593 37157646 8256131 707021925 387934414 573844092 558126665 459877528 1006133559 3633133 7285918 262270511 546666866 199557408 260994798 222641798 355858314 1029346144 540159673 696832027 881770970 236938716 874091216 589992262 726597270 654649004 357002571 930126436 133990980 972552694 379403720 643548504 74203986 772739452 382672779 984893412 441259556 67906045 216994873 525569734 111481643 1047844474 580734715 833458025 463513015 1070744652 687965482 349991859 1036797388 91584332 329856721 943206446 859058723 1069097903 442448945 1058935438 1053866336 349572167 729812321 1024859614 81545072 717030051 22214729 880222931 740136881 508020664 270453770 267656814 156529113 433117033 93649085 417679840 29380465 579849311 869209545 1002993123 306099097 112514988 742924779 434787787 908329848 836494536 144324353 15282292 189507064 365187244 13334252 236493822 810739453 822689611 510121655 559860247 77647125 191125325 290374911 747999813 676012922 304458282 578976821 530474727 533053892 578591558 563068990 238198560 918482871 1776939 953593220 1000903569 753561538 774693401 357346298 615174695 573454660 111024855 635010303 150437079 112264073 718051935 991321023 583679477 175069578 658428141 541241202 826870149 985941122 854720613 256848828 446903720 96049140 236167003 849590704 186367886 239628116 853508421 268193502 572519405 398831917 203462747 263857250 1060017081 286602360 478050930 496572609 445491088 286414040 429205007 10635613 529467281 337841595 851618031 690022613 120437698 564367403 73359991 99141270 828943043 586321613 708097326 663038328 884666968 394920877 46976128 550060709 564309046 1066552298 697197690 123202108 863071293 259403328 28995625 679418134 913075405 123778756 487021164 603556147 335358445 301167312 187697361 923392209 872084503 152143129 961491814 1071236504 23157024 195844047 561566125 184776795 780667706 246027051 749284611 508522434 950600125 9695910 3876981 907414686 718742757 339574744 729507732 442548423 258235980 1064818172 294835211 976163062 920998432 736398503 152914808 1029079170 787120703 989079647 67218362 932870781 483463638 839063617 1070175578 695629825 9726671 389839908 289416941 573171077 82405375 245171416 580019437 261850278 172919438 693649821 1037397316 937434092 529359430 580724083 1060294961 494325298 6153368 427364900 4713742 837669077 803672134 398728300 1025530318 527451464 652354926 566155450 662366079 252090345 286009241 292531835 377754150 755432891 609786971 382529063 10641865 654234262 1023342773 661666950 346771788 553586302 70345314 126977469 828092815 104966256 57208574 749821107 223415254 1031428834 834649522 918873967 651574448 927117180 304969645 965646556 1063639200 911378683 749782668 477275435 919289556 403453907 312097162 382676590 199910818 743949452 908026785 549986256 356517092 630873858 176908107 879843716 737402597 671660981 296572644 533611214 948760557 541188410 886172792 475657154 26555975 694251787 44038575 239920899 327014386 146334734 150943029 889522530 139249942 970874801 736738888 366942627 233645428 699674266 466544837 579641973 248622984 1043636729 978997167 360054598 406203190 939503354 850872150 258236753 624233367 295013279 8782507 633953862 235907372 565692226 873662725 160632332 131348505 86882887 838722127 450215792 390330277 560982888 748807331 353549911 605847936 415063166 780827694 700183035 680146376 162090274 667370684 574523190 373486222 579667077 851431325 64602365 185322623 409576749 491230911 722310963 607844028 807852598 827063361 170720091 1066410906 144131939 166184420 257462928 37648208 888572549 232633573 863296935 78289591 875117775 596605523 527114390 667871629 1064174903 997689686 609005108 732029119 299982895 549989029 1025998494 532426442 294628845 1048724780 127441188 449496503 778861625 566508295 186053205 504002106 931571295 84234732 964278233 496553863 10824209 141209945 382599645 320851232 40662205 878709889 469724494 956071013 153746017 1038322019 811599531 1055976314 69392820 636238293 836411880 639525891 583418777 484043937 335882178 709996126 221068412 178512875 1014443837 805904580 229359121 97687531 349781901 262436562 572449796 661035163 62418468 910397391 19029581 710040878 190824136 998273040 188137924 686954030 731922494 300435295 201441838 203510387 621975754 465585195 436184493 373937076 687712767 553927633 816877808 359556091 295486396 401681036 178148147 408797694 159478912 307973371 643325126 894946284 835449947 642009968 562029595 845408817 404506469 361723133 417016247 957326087 536001399 951488115 729503737 1064269855 453367945 122891786 605620645 897000606 76255065 734496592 820634033 334300815 89800038 991594994 171633869 1060852041 558747747 88419997 958078136 641173175 721358018 418908258 281540558 439433890 781572681 913459615 633808258 97806186 629035838 749716383 77055428 448153863 837694389 174899000 844345873 147892645 611432002 450019628 355918150 623830726 1032910085 485551774 23036453 117488247 644976623 990195594 627730539 825303454 684246021 1070645312 695465175 856634594 76880308 971402475 331115300 937357268 259571704 785976970 89543068 739399218 131770061 522964253 19562691 948696650 762757374 956622447 562010266 645876427 55393658 430824556 1029623800 321728531 155355465 746868786 488277210 587817824 263455073 910043820 946427144 275330308 112531409 345900512 177706005 118473232 447400448 257838468 960353962 1059174607 67887326 778590803 558765002 450478393 789030945 805920370 974322539 803925495 152902455 618874924 1034248508 879012142 443282522 585136182 563169191 1032137068 788226989 173891653 1025889330 336414491 1051790693 877094222 497145309 302094672 745009462 601020599 203108310 956992405 263790633 44805036 791544911 258963651 706180658 558326354 537012113 195884337 358583259 64350451 540249336 146746630 416023119 1052511537 841122115 718279379 13389689 844687231 62627597 372274055 739533414 825724832 231237638 511793659 357812077 55254139 691287093 624346355 494849327 136944480 606817630 566616321 175752509 357587854 951926316 977064681 312728998 678084314 644091330 566071172 264662189 42338374 480624537 734038530 70113338 486319393 946183303 75734447 975825795 949204185 670686099 322265961 388534686 991941364 207121567 41507596 602320124 892579774 59798910 1016684140 870799639 412553587 881989344 151140421 1055617490 784589733 971748856 939996856 243232997 298991019 835496997 397154163 457297330 282476188 190456008 894915507 539431545 1038808790 1013978944 1039426882 423020841 791578541 462891609 702857986 861834037 156107786 530208392 250636646 622598531 473127552 882222583 391539486 31503813 580360136 258190817 137181635 926029615 199268896 257847501 259849152 861477429 765854636 835161576 92532244 107101201 80365417 386433289 815938671 345881289 739427716 1024653012 452424796 989959687 511676712 48281713 718003163 894086554 604584671 286599489 153072133 524277064 776194381 617957848 520911959 175136564 268005891 619500354 768131536 174708792 837981199 529103136 543150273 994487245 707211850 605868177 140183778 10043960 357268082 950919955 193789045 644432322 985263664 531752760 202794637 953228577 309243099 440181116 311990934 962979339 110853033 851430128 693537746 302445106 127007900 586184441 246197154 796674170 855450498 286485728 904737888 389542637 140088407 402971567 331597135 289139543 567085006 500809441 45152013 811241602 938519969 941523766 336323195 1037263783 862566638 729826345 752066927 1014072227 46900900 903387529 630202614 585332705 752745917 451158993 927676132 598524615 581261241 745317389 47916377 108919877 202061536 564243345 313188248 801020657 917567160 837064099 197321798 242362393 11310701 199679093 548549580 187095349 487877942 69709773 1044222244 303125435 324842052 90508642 644385931 257844035 44865064 18859054 534355740 22867800 545886669 617494775 1010548586 785599279 322259663 245826750 71117521 536701854 176753393 207391669 24272559 709147553 137520440 659838187 452129221 526860569 487878197 304080134 945469317 295480362 865169630 1031003826 1046910427 246886497 631700378 834771445 202714363 752469107 65797676 547875680 1019016487 823705307 183861364 360891570 318826880 932034865 790942498 138519073 421613848 695777858 286423841 915647408 91874894 314069969 781509325 554073551 730852413 298037589 465019973 796578330 418947347 512682046 563350737 1017671362 338709778 533350465 1029760164 17442773 785533298 587822306 466100619 559612841 397194253 910482232 470058732 129066246 598185562 921150690 570024397 123556997 5558920 427221475 409448758 672719451 534920009 120347184 293081023 25789850 287060353 609370962 254009698 1008519575 613502788 783185974 384953806 454518466 608345922 1065744379 913951485 561756684 465495141 1065905036 946977188 304584563 527774054 484716636 945392808 44952407 249567238 688622759 1030318006 377646122 25394219 479057630 847281390 342944841 314530637 292931810 261393128 821561189 164535471 1047044766 1008231915 69954183 1044614456 1065355158 316639718 450886773 438930687 199354687 456154857 383778449 584243689 780680586 1017360888 483485747 215663343 383109692 889432066 167726147 498385483 3428375 109566464 1041912946 349949321 173923179 1009724959 757696074 6280885 214672715 266459107 383265747 895555003 948094947 188173788 414121462 426389564 756837331 729914445 17559693 425757725 1030181925 543545961 706504623 1026391166 164054896 1053033189 1008146688 269242624 238468256 71109203 226290552 103363072 701141768 263986197 118180405 1024550371 885590750 436130766 132307673 686672908 594346940 435400291 819136698 330536775 212899966 206350325 14512510 711467083 12154628 1018721903 722602115 280959255 721051260 820181864 1933237 656945710 477259348 5460486 1003323247 514370719 977514029 290703766 982227801 343601133 450033921 304781905 815602575 1039373507 967163382 727489871 409633118 1049393542 180336083 148477231 240914591 420913101 68509820 815664011 203954523 963886858 1032040829 665636206 860482313 464007325 828324822 1046050485 61419575 890041199 239869426 852734814 329971714 115271737 269373710 298379174 1007058125 15370212 986207791 1052497972 705021526 659334413 237374810 544590155 228421141 489809863 1013557316 887080626 1031101651 969640761 439683818 994821600 383784132 602347494 696671459 730053015 226260741 493951842 607404032 984911288 865023584 290107278 404262644 17031242 769239175 500199038 644844448 919916749 603695735 517738607 898657424 600846196 564480228 230349697 170293530 387709809 329886913 713883526 42625623 185186867 418717664 281153720 703732777 34812131 1064531571 388369518 712049132 1049724734 699067221 409099304 603721667 989088431 529892125 221876975 824305024 387443080 426941652 429442082 185016778 235530063 881359026 1018502231 273431089 751057019 192456365 626346329 575127069 734676273 215682619 342321905 915782213 883675140 895746107 681003139 334727581 879018246 148166315 223127151 289742961 428382929 929618171 567766658 8198617 670468823 649322099 255873734 130438844 492334841 1065780542 973759576 118283306 482760418 184860693 830981700 712337737 948592622 270645843 804588015 873104909 599228935 278129095 703163978 649748814 169202597 217455915 258514791 864745790 447699193 738133144 649769923 939697704 269359974 441781956 248095135 1029464268 591082091 248096965 167324033 452861601 515433551 908890357 568628256 939670862 417064519 1041821124 674999560 871600517 155733610 624353037 624426230 63262997 426062301 971371116 655159769 370802881 594128589 126311215 113103208 302042112 245820194 1007736660 168380711 288004250 510337212 435311319 282687660 764134652 41729848 531778930 426492929 197665771 398991530 114581587 2859749 880048877 686874533 160659392 352449469 120799144 1007077041 548504560 270274021 557797213 1048040274 541095420 89417673 767812998 971547386 664967049 814677821 1009155869 380187353 187940475 510185452 787893268 1017404026 272566612 734705357 363940956 826377295 409530859 32445466 763059679 200150745 361041209 771397933 841884648 86070798 200782199 946739106 370554196 7293626 471221584 691921108 349626595 310249394 150155698 868680411 429012568 383491411 707491976 676343003 122190127 734940195 883235006 496255312 742800859 368350720 69477570 896909098 129492623 983522902 412691867 92869986 1039650611 518907671 952793679 564722092 449508152 91968665 510328753 822283441 561071049 842180360 192074059 161673757 654182410 1055357011 1015665593 591967973 1044003252 845044643 168373641 415956582 63542348 738438442 161722058 711792062 630291069 358752505 876322948 114889617 314332177 852695374 17315148 1063427747 572508058 926130140 45911069 828484359 511859031 1070000395 511120553 632420038 374930088 243190363 605806079 62557504 824420684 138259710 306392624 602372266 1046980109 1043807960 595906313 767446809 466329149 876796440 976271721 223279382 1061788259 940949459 228856489 377875997 239495823 68944934 603870523 692727053 487842904 976500216 468493317 736118099 628378960 49355960 922527041 246053893 945416900 433954464 700141655 173313330 589177263 721036119 185325228 559948791 570968426 570756008 158127959 67826854 117794579 179540092 973304181 582635694 685832217 760273342 655563778 577046605 808941312 233202948 515666251 639726879 65377194 671877071 912174554 425460916 427056817 64493200 161318325 822343590 181574037 209964058 813315136 545511896 207114439 1067950506 224410046 468042044 288934564 910125029 199905408 1016167055 445098470 987243759 783589027 968576139 463750469 819522579 39234716 779567927 687031703 295285093 521306726 206629485 783362665 1049965687 939556626 142137006 359813985 130740309 200923237 791512733 62853762 322694228 227183032 823425797 221801790 715268604 238351707 223402927 877566414 502460022 254352971 720465447 181936262 401956759 1011470190 95102940 902118144 991628333 846302894 440171170 828940701 126114550 691443566 906262754 125352849 336979988 898550817 873006587 873334538 989296239 823516680 688820045 258619146 513720595 494009508 434525426 923032440 119097975 830997320 237929633 193027390 691261428 352499081 198465764 848510883 392916763 1011990650 759797083 434181674 17043311 557695702 734962474 508788684 612321301 969847815 329585009 674810329 1041881544 40941841 75469196 315874636 963952309 1067348079 80552230 972810501 435504672 911096953 930204297 397219601 8636887 385150921 589833884 566465636 294394905 795212503 56733386 1041335397 453509161 366590043 1016153298 403932083 653625410 3509474 610440622 313030933 164917652 533872489 534110490 952159511 1029119279 897615965 887182996 51688237 469236272 1009085993 708950726 403546620 213703136 32364279 193503950 524729321 409471798 852118692 901559002 602296237 173961665 1071252832 465661116 801550849 566726447 114427835 26220087 57205515 814552632 941670179 347635610 958544670 1008372210 932034702 654399361 539347027 466081 555116463 294945305 365358132 350327712 873489433 772580298 304871211 155325781 144845467 595980464 766177615 570125516 190675996 764768804 53605329 798591993 900390230 156657971 785613292 518498959 90585778 334726689 631601447 496663300 302060192 365154861 202938871 75678840 26530872 374457749 368250763 950238531 819919670 832669 566765635 886385695 285147360 124605661 402162434 266222378 816879291 643088852 208471004 704696664 9222234 715870132 119576091 479811817 673783577 299998550 834588103 53020842 85746226 366822840 172537330 938620801 157872485 564595126 1069397485 232140113 372665912 658866882 740344088 540165576 959337375 341091015 388404911 408156549 477792238 427254763 917707740 721738582 911632897 771400385 663466944 970192892 36133065 390744481 375735602 602830943 948330087 250981619 422739624 538090095 620663331 413994627 531187996 561964522 350368766 586067619 975161370 1040120772 494821774 932847262 394188513 577635406 283502277 283114619 80902533 297179051 195158562 23621602 473788186 862127616 487192554 20176178 444855488 961724263 670172972 29145545 133102308 725532309 115556761 3014298 635364302 164660088 115161447 54958155 54709127 531116816 263139314 796666673 1036107895 152086438 70881137 184738697 796762214 533467508 683620792 514216762 486763191 516560808 580503012 266607022 419454352 315620195 275298829 382429922 939639047 333983788 506485875 878408125 562433557 586771440 733803058 377697208 613145858 667556813 813992655 988829365 986712504 543323261 698820685 156578940 530314611 29793587 508160316 624541899 690057184 965763989 692154991 831450501 165757133 1018057802 259927793 228689059 426069800 863655755 250389137 1022789552 1039087278 692285099 640353281 494710974 824850360 455797046 346941610 438921377 668754193 889393704 704169186 285171558 238589573 719956435 973508354 925467814 389825401 301130676 823241488 245929519 730270794 357176115 478352617 140501528 6279966 1035632068 673911813 774285769 270217878 27438053 917118148 629921649 161549308 736689480 678308487 489577911 228500253 849641113 881017495 429582213 94491448 570440958 172455760 896672669 992938528 925497598 107986174 913358395 836572351 933858389 538926951 249330977 359689743 1028018687 766543884 201564360 197541694 405729756 278124502 654806982 392848393 520635423 607569743 371564217 713285120 1060103861 1011033992 302648913 756158561 757723038 948755519 714851615 546245111 198127285 420068372 717314368 237344089 784321659 844729186 218496472 121318121 786255428 424974914 633585649 994301530 433825090 1056521171 481992053 924168405 273373234 50841435 468283599 145361040 522200589 462402801 603816652 945056490 723753092 608861886 819007468 329221085 41279819 953069091 403435044 991100275 632160283 510860 900553791 757522023 1054971885 821491791 58134143 239807293 820462700 132086277 678816748 520959932 707155819 481967374 698440058 984123433 834133219 678313017 490091265 850520462 737679225 514993925 799180837 866959005 868037718 94005958 31976599 942535439 908689787 889960036 864674689 185052059 681503123 543522315 731742531 84545155 143117267 357362760 947152738 896947711 793055473 154070367 805937348 486758649 902298832 410313722 510847368 1029290296 1048478522 211908365 500196131 243340237 563727635 190417219 129614147 341012961 360623885 657191830 312041604 895371015 367040932 769994678 15676661 727478620 232121811 471249688 1006394684 1064952802 915915039 746675669 426205111 391050191 169555032 1055973125 378133947 739654613 710232217 581118406 712980298 534664042 977997772 746996922 397076840 189631495 952206295 874178168 582693087 1056569652 1027073012 819718470 726613699 166708683 155202785 141694836 650021500 125070402 938462051 835251778 548453510 119093881 387461027 336883782 889305748 918638592 332893948 643911816 699504790 293980907 135508319 448945021 80303255 191313437 336811576 134240342 682964852 499053516 316536172 454216044 415470972 881443434 984069636 664429284 164830031 8268268 406502558 1043444914 408105663 461177982 305797319 19197637 945135228 44605266 890206147 485420279 972141975 418798398 454190965 676753168 409244005 347088702 230645199 851093008 912550231 891947005 1039046192 278085721 330605614 347623229 855444048 5494954 138476141 1032000383 57006887 723589156 25395066 708130261 733996044 7424567 732152772 278786309 663227658 326102253 411092811 686707260 624421506 1019238928 788921564 139508116 90617945 241603563 206776632 573948614 806236901 869135557 580760015 218824166 941813746 1071417391 1054114602 858390648 356038669 307751610 485365774 380545576 966694693 556427345 605276253 1041829500 90234868 135210163 783493087 282622689 1007777683 131618814 572163250 381926697 659443160 300722535 770481473 899758223 282720979 432063099 456926703 270769052 403230826 512442806 56503244 411002439 155219882 937368300 271314574 372350364 360898222 560934233 1041981625 972505099 343604733 600987001 314812925 1026921672 504777856 1039439775 796483722 1044654758 483691560 958253192 166942415 151908686 518395721 100400042 846887576 602871860 499195241 932498488 457782099 426782876 675168799 78832034 673296255 251683111 307639513 213077605 359348707 90342099 748651854 151567898 293398270 230424114 48288642 332730555 724514554 491357459 403497056 161006022 1071628485 64498814 615811149 165564913 1025463607 193723006 578360672 846095402 1036051885 437497566 892834977 718252633 1014458176 941685204 260171472 168081997 622136863 83664302 840327303 542449175 514797036 140575242 413094158 18704060 166768653 671193250 534596696 647936164 1056886721 865590928 730536522 302441658 21870815 190521660 257386428 289596884 1028870418 835447016 779466085 509960880 258472088 1005548490 1040890237 1062019428 56114656 94425337 745480229 935825105 153364249 181246378 286215609 324924587 517677554 571250242 926146400 611757780 226298182 292380700 81478676 77601118 159752538 767752388 1017180086 590748171 93392144 23293629 589475104 204557812 881290273 607489264 614435649 558362589 129998622 1035280558 8498442 716842992 754313271 1039608287 211671644 838684145 24214364 489035215 229154528 261589257 522085369 926212334 620120494 949843542 22087230 641281599 915453608 174070758 523976363 686439639 857882445 450939789 28576892 342424278 824626313 83833840 869941223 770386051 27770572 978897877 907945517 132564224 571379306 73621027 98738167 340399774 513798350 142593186 535394020 929923312 94933283 19821195 894718343 208911430 933804005 107255172 544810599 437155040 93000128 101601710 1042498460 433406780 589472228 929705871 767778880 249727660 967337020 219308523 295314698 972835209 713190077 77528092 703102524 326560172 354441732 116436588 610411809 553504184 574991176 406658758 611800288 7427992 730994200 181910952 13516071 11523805 425408369 344219153 272214271 263443951 648997452 294252492 567955181 385917808 20601791 813763248 302131339 695725913 54495045 10326959 630024348 551002219 344529026 605200015 115797041 434091144 562619452 169076471 437899620 556519405 700905305 867003244 1025001698 731822728 756254686 953328459 88581680 115978936 287805729 739492318 471841561 36573754 295224908 69799163 172252970 326980212 188009564 1071954112 986506510 21589750 546206372 893002404 362273032 493983517 377305364 89367672 486315298 883886338 726819656 988074030 167927282 867586761 557787634 518455552 358383065 911405904 272079289 234286183 663016445 935604688 622815520 874629028 911498671 837929188 49261740 325466622 1001906205 648472002 443986746 496609308 553292982 539877477 432260611 437118088 856330642 301590246 79937773 1063681585 172829086 980541803 561748544 276765431 604847939 112412549 104497754 28081418 347792784 535635092 541758955 357341471 871689640 145752428 1042349274 773028007 898707804 907674638 969807103 1016664293 163651638 87088409 748207144 173581067 569030165 564465747 424609437 558388233 196334030 113085804 584498100 707569305 1036050210 340156388 827543738 60722500 608766136 804935167 155346693 956976673 54001998 209075639 157916246 676156559 1034130564 433013853 17763804 630523365 1000027756 36844516 583526898 253624956 1054072708 142960913 670122526 665251015 594030056 108747333 292705005 712953851 175141649 806106973 514413301 747877407 556010622 63665485 922353020 1044438621 823946681 354476056 338969288 124598018 555179007 122344870 103897056 439568334 59391779 71918386 911673531 545518749 1000966367 112737232 76432082 925020617 546033274 976884181 460403520 799507482 55868351 791634839 760724393 315753206 336043588 619001671 393690449 686979221 701809644 311515566 624123459 959316410 948042585 558011569 569855034 18202470 256804277 820083794 129069608 775074312 517987812 1011280274 37430404 653026389 213903510 636203150 622617443 689031791 255353482 99924023 973103801 139121995 756310486 962136410 465482757 495445865 1638157 799219772 120534621 514710220 252782861 330315463 939147283 280206052 692167308 464893018 915147545 820455489 636652850 61427449 982202589 264576740 378354592 649490777 595405977 54475418 515570493 667432189 179269746 13958430 360964462 166977402 396463652 216767866 88199571 669076508 884381868 707910387 775481721 898813277 863190050 733606311 470914563 640039767 448715174 646446124 45370864 147161381 1028932343 222034781 322043044 250219096 467970821 175964665 233738694 727288807 311204657 798702138 446206453 187592561 946552410 9668123 221605952 623677059 828647995 506942846 529916971 379896874 955466311 348814518 552943773 345783608 731175111 656834226 372805559 813232540 980404617 177592299 851622321 62180733 455926809 416886113 456481326 419932381 331683606 504724424 649786134 180516729 297770319 773559103 616250483 82743377 501476328 166000687 331430258 746027118 263634285 417388080 99185997 1020407100 367902462 945284348 498906459 875145112 431163112 270967875 828009193 195984138 477993071 906446278 146440737 101270692 377484961 954248689 281426823 528214390 831484248 276870347 136608745 1530302 379386682 166615222 1034771329 301723720 918825816 286562930 1035889586 940107297 827233108 72955312 206459940 270441863 46862644 501774793 454700269 893015647 791392853 996249452 919469284 492841823 1065031277 472061319 571271085 211977870 166843760 860037165 306977682 74239320 634800130 743007620 609805920 734485743 214414203 1068473218 938879234 833847305 462458100 65081742 298016595 765933576 961749186 1026227741 655207112 929192159 884086108 946724474 153598171 299172547 535568864 684109232 1003158755 970052758 537568591 176998987 1070560192 652550936 570639210 748122175 125692796 989354271 73022342 521051134 75020329 944863999 350187253 582157203 1017925001 592990552 854413645 11562365 920911329 968570510 299023388 830927311 257878750 420631829 255416817 393906921 205755495 848316363 926663305 85632411 321869894 541615119 629993669 96171531 162544857 735659213 93252744 427672605 825326246 549797903 866982636 291320905 559882067 903225076 954080095 437459434 244526724 610272016 175001392 561082949 385352658 801205634 711072203 624838276 690413693 83247561 811701900 120461066 35899292 25016576 327912201 524585013 875751857 65016703 1012381636 487303245 781137162 286478377 798112831 326405291 46589421 304381375 237628055 638675955 856977440 241576366 353857594 832468261 1003924742 672099641 694416081 131213287 220153962 438721640 375555044 268671623 586562952 118720798 467114243 791675651 359058184 407996145 740978235 424126692 455485262 11130697 465726638 392410069 503697773 438072063 1031988847 328390514 295069255 389157118 416503524 797128642 543361014 658716147 668498616 348307697 174868919 132925887 920583694 382567644 662076891 157009086 716096466 509385845 693334726 774968287 516513376 607017972 1060484869 270672279 297264550 444187510 551842135 104052009 438475872 330887624 942617217 519457483 367322714 984258991 32125805 468775224 786607183 239690098 770419945 685461693 90541520 246537412 930317021 708504275 100320220 1072157789 1051283242 1040447919 404244642 326681270 303073641 344519725 277663319 163350808 572833169 343419295 378957512 797112984 92555440 449883297 85476709 232621911 27095102 803675780 3681640 495771956 943662363 459060525 155282839 173903233 915177141 1000940530 837694 141860247 806818367 569254467 777889191 523051140 32709225 1025547100 503132863 816425013 865625238 1046421783 137978062 775396551 946907501 393640002 576023356 1029425434 454555454 371090110 700280118 413323247 1056382670 202389319 343553115 659729570 937333221 969058588 105028136 696109238 1017089240 957719618 841000365 586583372 379479957 781180831 760676065 1016550063 509020454 936923968 116732101 406381218 1049249124 696435664 560289886 896900111 118808621 654211834 324740283 805959644 893446839 50746329 888093886 464104083 919392967 143328651 366476453 34191467 280325894 374924871 623672628 388490492 331225287 740408244 654465122 751933696 662678190 547280755 489803707 185536525 637664157 650159800 165626992 389085545 429266023 397627832 886106228 464974958 739103595 691436771 207629719 587786479 714905579 133733224 715772032 340966580 597640896 954011193 31229192 578380398 355224992 32615506 949454755 860315894 738428929 345399424 603107687 775394607 383522841 524455669 715081458 258168121 1068093971 327731343 419038868 692039393 676237908 654061523 825379448 956437190 854072799 264092829 759656189 739581230 867201163 183463509 294279438 543065127 11765740 312402460 774425659 155155226 112356243 684509659 231404451 163950361 995957459 907882639 191775832 522057036 284945997 623986669 929967040 132059581 101304474 345694067 547135050 994807754 1005632095 194004802 501323024 468069552 510120227 827161334 1017943280 925309127 399337802 502722823 1015022388 829338582 1007221796 230262753 836762615 862544640 462055679 560507006 241888121 981912393 141975619 4319054 136713455 435923492 766109824 975425163 39966749 978435050 999217793 68410165 748545192 1070335146 88829967 37212536 709872759 1057381033 925598777 249806835 670245602 11479263 758849573 998336861 787714549 484013643 859403891 326155217 235410520 335133699 1051248849 1047626426 955849780 819943073 145462941 30851872 336906414 48113263 446934073 316095851 202560253 14618099 287503895 448832472 531278895 186731192 783048929 991888469 1030493199 165225487 50407066 783940919 765464175 217260113 941992236 837696149 99763195 470133448 193368396 230191756 98306482 139106688 171807005 24919891 957894 739136385 15911995 679647272 928081485 1056229026 155833029 307899610 349330522 47067478 526759467 957633271 473077821 639908977 338226740 751434646 287578311 218475681 679419279 571466740 504572352 60402157 675282335 533502402 524624543 794262096 60276241 130872180 749610039 1063930990 307008510 1026619767 1015596055 49055867 308519915 237113158 961689497 1020372567 575473185 838651293 843010790 789133438 620938076 529265767 452674805 184298365 120517976 211950258 598295766 403797387 137137640 440742881 375475311 802694384 208452020 50762894 623728832 820133647 79030722 845066300 248506228 1006493152 504888776 713934164 571719435 489958625 926227332 23093980 308173377 717115811 560948098 944889666 1044168959 178545302 179552723 543772048 319647555 388912003 426852175 813364004 882195018 715764379 123373978 399546085 858043936 36235995 202319946 965655218 446902034 248877756 816869641 619540613 471198133 62393258 164056287 872839084 132718903 909253646 380074681 1069351222 1010257102 44696184 665655155 65595879 396943276 77764666 965069790 385574714 408346797 660655991 630598827 968445706 348696895 602139587 1049450613 482771708 179791031 178352486 1072201797 767485667 814015271 461831426 1029433 79615858 791283601 498147081 655307451 75416465 341262722 630509354 583768069 205265663 1046985326 549035846 308851201 86976625 602278885 571934068 290398250 795164121 165392277 874197551 674531334 1058288729 556372326 310031891 215798647 225945831 926046459 929242812 635951131 573006138 298650660 905970362 984115323 958782781 370748749 56160761 138143943 1031990386 611336642 313767611 453181341 155688578 878475160 476802089 789610554 604354861 373858761 486797277 865964549 246130048 801977657 577523234 129848312 729800927 835317836 709711630 372520677 1045269563 607300178 1045611328 12536703 818409019 867914547 1022970187 507947311 1061613097 626333241 646288871 147847630 886664781 842971657 288691283 193698638 879786491 69690135 600034542 59664823 522390266 688811660 218125638 517767368 132924870 177091371 517354010 34902924 655155197 491419001 185759303 923721260 412101175 289490703 755801412 841783330 873122061 675236267 302958199 823035455 857973094 1040158557 686719555 1013966968 497869524 866243192 995544126 736048048 216286081 689162614 340689198 706012620 209677664 874033789 940300702 389968051 338599666 81333118 262899513 789922197 812840743 680277653 205784214 844161383 707841665 53743776 746997922 32689404 258643573 16662190 488660660 750850385 657430515 351471998 212303467 293669647 567062594 360629280 780438071 549647758 418708459 837776583 1018381657 782202375 919778552 43631367 493039234 452680531 789213486 561297282 527374784 89369788 969929513 5881547 162988318 647879069 575558683 977756569 221450783 464764040 992861915 559915391 276485077 361972592 20806015 56376071 182644495 630814165 217012932 339346689 229873563 35277966 193549754 216659524 28890715 196107705 992881991 373703274 453625165 478357280 325781031 987969436 838576815 163348078 181610424 1055341978 4957009 323888050 555735767 951882383 1051918091 179327330 552275191 946392640 421219305 820293818 274468049 19240819 954980743 458270007 62015989 997677710 167835510 819195787 385766330 277213915 617405122 638792844 425455530 847373126 1052220449 1045905366 462482245 32344288 298741965 361339965 805132607 314006563 625593641 934244268 507058436 564320755 501677593 631486887 688729783 844960220 54214944 28941446 686413808 606458441 982513282 732171469 48974154 893248309 1037831993 506761388 1041308868 241549408 123552645 610631353 152985796 487908254 434187398 311105027 1026602369 352352033 649197838 451992158 1051513265 10152765 51142675 127838268 837489010 705480106 519449951 678851515 627555631 872974294 183727006 318021691 809197433 947326273 935234538 907863316 330486813 814518437 236303840 798182308 979066348 793040714 834831749 819200140 387847449 633885971 873881735 162099080 755081352 687492344 193563786 588291169 538990705 478215760 634589882 652440372 189079779 1028759308 199309501 184424971 1025311315 671714849 289605450 410168092 899534954 370595487 1049528613 147851758 333629366 678088665 297174330 774445422 597085671 866872562 110216151 319715466 22215396 457312783 594523478 508736949 975711127 90052810 88196118 164197307 415626341 761524369 939751108 746572098 491298265 804560036 559977468 588985497 291188979 549796579 223204595 452683994 629656697 1069003855 340538140 770390878 912890297 383231030 910262279 137228852 745071550 295196976 491426950 76815203 371924794 189397985 649652511 766913670 967355531 871060802 34996062 534365381 304848623 501795585 273828464 336929104 879813641 590396963 172878472 327826021 1000364796 443787786 81394664 299348268 13655270 774412294 1061118413 680844901 210016433 834717715 762051089 542247010 526444530 345131670 831412521 448606994 150003927 529130533 304800267 822788987 143187036 721354575 782573665 48650784 169504906 250353569 491085323 318865928 282765398 953303590 993712931 895986001 208562731 473536527 203096558 491971074 493659174 885130156 248600771 337838428 421305277 11854585 91366445 935796615 919256155 289678465 345190015 569244260 254003984 236479209 159052681 1046504539 421335910 382674918 837296983 339870043 756802344 191455375 1004670089 595966297 441900967 506044364 476118130 783041401 774158134 1006407983 156545815 744639229 98261354 946829402 166505673 729470089 969684767 1045829468 663474012 94816000 372260608 629437744 12906208 112442020 291966187 453001607 387396892 361994477 636706872 526368134 493629988 1049080578 931879994 807864403 238763262 176406973 238930258 889717028 211749525 1010388135 148276206 259997472 531181638 270267608 871900466 179987966 214003734 110717398 588010675 573781355 211522987 725012312 497813212 281707798 49926234 1004903493 495658653 148069082 166465525 575403735 447843016 746365663 48476100 824539415 699036462 557329893 1025137807 244683831 972999153 766242518 349325461 538547921 748425168 273592611 1045221450 731120469 816843338 53068224 547356278 113749741 631465932 943902041 1019275966 651224169 951987240 570293468 111565627 196989378 387957789 363333691 458192286 589415845 681773947 456153045 533800927 259142802 373972182 190357727 77380337 514877859 61901360 803093446 619896475 575068375 104880925 472942985 550052141 183292052 751696314 961872291 121722447 498064966 921841283 404304402 274267494 1065411669 703121819 398727763 941253418 227034392 975245941 1052950835 257963515 924796772 207263575 193270678 1066347796 847680721 535148190 253203171 1050440087 993399996 995340939 1011743526 388247983 1037757708 918821582 351766631 785260688 464847578 239845191 685648932 816947491 663930417 447355910 136007342 685922511 26155752 275665971 934680281 847878120 546240992 110802517 908610213 324684997 435423480 455516571 395458296 689046473 254830324 1026339638 785277614 334783432 55845602 473985280 399041808 856669800 872091728 903235602 922578857 204999526 462877236 508193718 327962377 208103065 492544553 161995010 454029449 708672699 68818814 582110203 178431993 48935514 748283140 499374607 654630495 190299608 176380804 529689097 865502084 1008013577 535548624 519097352 735042696 482176558 415638801 220554962 137837420 618106529 368559 765834056 591292617 28179630 588927412 854615793 632774384 761600666 920447546 436801880 139749023 714458472 256675759 859167540 868808246 53438272 371771797 361375331 760314108 486397135 431525786 828194165 142288539 995400648 1066530978 712099826 825388644 907576550 387972465 1056956993 126900785 304667981 40023653 471798239 730257009 661157926 314529346 176615074 997072703 326843196 974965845 70600072 19674335 193417700 295998378 213352797 713040334 1072247058 61983433 636593254 276405808 1065920144 106855839 288452700 600443868 823479178 412914426 780367820 910697606 262902951 773636182 134543452 81283007 729933392 65662019 199751600 1028016271 973804138 443014743 141739732 970183876 269654193 1063038585 334076549 580087662 250879243 697703905 797175976 28709080 669777351 705727812 530645760 690835847 283332315 487080017 190168031 76141455 19669490 96343972 81556116 410660477 387956607 517021123 524804391 1054390640 375108526 1020704592 276136102 954211560 885917483 391289103 1067736415 74878835 444105962 1043075216 321768406 988772249 458810975 42256670 67518965 778529860 1072228899 477886748 351916415 568110783 1071056614 414126646 200001434 34742757 23258852 523750995 972276063 189960666 506792050 934310628 221889742 429046012 174273553 40834922 417644485 785692876 678101632 176961264 510616408 579685111 1070010804 281038164 205920140 1070952347 1029962956 643761118 898132480 137162632 694128562 814824192 693515197 557229037 1062330812 152985510 604939475 948726723 1067574494 1032356683 987177021 456024567 327214431 89599627 909584325 377353895 975938059 874515331 1010555547 255739910 811460281 338774375 307493891 705207710 744046231 771776504 559752810 531693354 482726811 581485312 933526773 189430206 309416501 70074441 612355263 318776847 214357240 501742928 829112287 1014729188 514390806 618550730 115967155 784558148 163269442 939033631 1019115231 893764654 802804491 262869582 1020718856 268344291 492997590 317464546 684324262 340719377 593590043 527233641 865004346 884892030 907779659 71125582 284800036 1052030440 921984064 339175966 47656587 600550087 302380194 898183212 636263256 84515537 279585261 727518662 1000114845 500403153 718279795 1005179470 686668093 704654171 957856209 159222810 1056987250 881474866 134717596 601460327 41607861 78396899 173686089 850109125 551421343 838576624 894861963 972220833 266422783 248553721 243530137 106146885 257413254 707647191 640674946 275457692 515964138 843997955 110427937 1022529238 730287945 910982875 342325663 870196603 431774683 988066512 437006503 811330987 953517215 204352977 873334700 643394570 425081749 805342605 19735767 777124808 28860197 434576851 900711716 632634382 861181365 299839313 601664231 632505367 410252584 10711859 262443679 470821783 584156180 295972729 154027642 928140764 323532285 344569325 471914119 502285469 171966196 902985457 165379321 922295806 228604833 695674206 146622583 946489829 347664531 240303914 247781485 224216209 515356085 663713491 448041333 286099237 399225892 345857987 150082754 71856576 782984252 599723565 246687647 960320019 246631055 564295066 977348396 973294909 377428177 941870888 171115541 265348996 870683286 792560670 969570369 722998616 455663875 523424016 414898761 810229797 987652057 1046476300 13208367 745356695 753902305 153365887 934421657 188304102 913434962 420684351 704774720 382298902 273508023 123042494 337911915 459918197 659558335 1054550960 29257778 7556925 846481455 728985547 666206814 426032184 880562408 249682077 836637214 940914111 1023543601 973669427 42281879 384288791 914297866 799987614 386405464 491878373 286488189 310661508 171211249 583083479 492507773 704596870 379593872 837597553 520735864 485430739 221334998 32246730 216176396 137831942 351677164 681417549 841459274 730445395 425683495 26565832 803091040 109303994 275317528 895252824 803679504 485748207 157003041 567553503 895688809 763620922 1093459 941666811 630943541 835616317 823524395 480746054 422324726 62920846 434314742 733132346 670072144 600289374 1003019593 363613749 395792918 416306292 204828174 814706523 477862124 951468331 91507099 95063751 47880776 799670539 802572585 307072783 974040075 800984011 177602224 613428169 540483881 861101196 531542421 726722325 81158671 811380396 317444742 99515257 984367771 205031956 724136418 119449842 465332066 975577061 816639960 524973968 334808504 753327393 120748971 213803976 512833377 67258520 717310359 600511182 742264960 1040009154 194937303 903233082 2369123 644187475 1056307246 201786467 596324762 600251105 822995377 402217273 390049066 809711719 625838562 340838384 193416494 472317292 930384292 83776933 629041933 281472766 440840541 637872230 513376528 562879993 365064844 382387392 57103768 240978007 533506435 758904367 632407748 165842860 45388317 123299471 1067841973 204157129 784845918 272870602 356280165 407389219 787955436 1010688527 258680736 945237071 200260942 113591167 115348158 845764359 768484379 1045809614 182351641 774497604 533118768 958426975 1042572149 174473669 166566708 674514333 887201244 649542779 949446547 453928847 527890497 340822144 867211433 825619337 126101644 166010400 428909538 483399254 931087392 963666707 400345775 254359223 251931675 177663216 362723014 303850705 669131408 583256233 334103549 599285518 574957877 103561688 515123306 583313777 971892528 879145174 448137301 911970906 21239803 283947133 244647392 541348269 250263561 891893349 145466885 121259663 57155642 518693624 308117000 731251262 533524902 914972828 521506488 53093637 770519891 709048965 848895488 400347184 734291919 449239461 518301852 673826649 803010321 893396227 917459254 892606881 69250314 878856399 737314971 434013802 128677082 517243891 385093001 352229099 636871872 800074408 998007165 688248895 7877612 480604473 581760275 354169293 588225788 1059624488 232394502 519039490 937516801 765586456 282680718 167495519 983680686 1030920823 847534579 30315465 720077322 170933632 102732437 958271389 890658106 978907884 880053107 55288627 693784424 944562826 626787601 208493843 173229455 778656728 983226440 379812018 756141027 140436657 232990615 188303793 257064679 348563040 262000360 608385417 758064686 689068515 237295784 538024698 721927263 80590775 552545473 53169749 117448845 419123152 385190354 834903738 303681703 830342981 881462200 191937936 431385720 115103762 193998994 343824931 1594928 983483030 257797429 123912084 226767428 540396123 160378215 689030463 239917221 899478700 764853865 269692405 356195184 513600841 367925697 580813378 458448069 873129661 264175059 25472127 215998565 327700484 763307310 1016420585 261884777 105246115 745836054 453562839 981321677 670176073 914293675 1036228575 507887806 506937822 11026036 609826662 1007547643 673761715 628297223 617047073 212793396 732859903 358345320 244291581 935981866 72878416 304485508 568852352 914217164 198085960 567573181 1027282215 696274170 235857660 165369065 485694778 908227405 960841669 969700419 1065654568 756940568 666235994 314855169 983448690 428689593 777918633 886252469 680044716 578270143 985144397 620264700 100981770 1062608416 376465853 453539613 485974484 1050870216 1072667780 1067104909 1044202926 10950002 416750062 422362293 844590796 291228339 401449359 61811695 914873428 372981607 940794607 859089927 951498573 92798620 1045189002 314480114 391798074 69903648 49852614 436135280 55160956 645380143 644786277 707213315 773443659 802791997 1061574153 945752520 972841057 332357209 287153040 672038808 472533808 689094687 193207574 914540300 312960015 82752396 679375383 127132975 1004089393 1039076114 561482922 624794893 645419193 310973018 764382211 175557173 102153662 430012877 476342156 62439090 894677043 417404341 757320259 589087860 653563607 563966631 115080912 309856257 623766106 602547256 789006417 325835960 391104445 650724875 323321141 41673006 120113998 767221404 900322312 931971495 937181194 649585984 268071057 690496170 464390117 827403504 632185705 278238863 459557959 548547292 717253504 804923563 404225034 506457304 569235021 96920699 214196305 963652897 1028492165 443040526 246082099 150948421 611014590 815530092 893157198 170415637 82646751 258035515 394261159 362622512 507778980 880299352 463928451 615499542 918815824 184516814 641725516 1007261952 947875733 524800496 579771264 485189601 1049528601 54406414 349744992 414927382 487560334 1012466377 561820875 800779473 64789241 917830744 658757052 124899581 1062461882 953865701 498104986 142338646 268599787 87914673 968811082 129324547 149996986 197572132 968778021 882985122 895923451 944795115 33085579 230478210 856873617 658632560 227738882 595341022 307427580 707518254 1028089006 1021101898 748688654 816535383 32321441 140409753 639182242 521572971 524647459 326262435 513536139 834848565 592300149 953739420 655915532 653771140 348330052 86023912 227003944 611784957 711913241 985225710 791851219 299283591 200739572 166521276 581027718 894572720 55468115 50328523 568972134 691378013 341425843 126733615 746940660 540840228 2803936 521511078 677221990 996690398 198057833 482806530 1060948822 127834459 298297270 753860575 344353067 1030395377 8545813 138271349 934916456 1040443734 450791665 760659797 584625367 415224712 710224732 69436998 542331530 988659905 660917519 1036465094 967891379 407233999 564560138 761460293 290272459 40169035 671195313 480035407 479977770 227192951 510165976 557349261 388156537 1058601557 229120349 349406691 560941641 629618413 201212754 757721343 998933327 826294304 300808457 122415737 1011864459 446249543 399835283 411496529 794500996 274198019 588389966 920674974 204441110 345677530 143236698 243588124 294590607 133556630 483878882 478952910 829512104 1027126115 623742681 744664379 72284679 27203179 363474011 366263888 295457274 458599488 164566896 473803906 498346040 788500190 261255369 683127853 358617660 763509981 41057177 406382907 476199412 649751080 146723874 747605917 672475459 715058745 746250756 363367401 801335715 794329675 221208556 230038067 713881850 564246741 576749417 603549072 959468969 210761830 358381614 426815329 86519771 1026210931 320864008 549736668 1043721430 691479934 860425192 660719957 179129348 751777845 991987052 354756979 858929785 812740023 127992976 201552429 890528858 390335508 131666544 159841366 520453739 180634113 1001953844 996316300 719580161 606517399 975271452 915877872 950438828 615616865 338532158 1029737708 637882054 60736890 911442559 211738771 709948685 869778665 408964511 588010376 547261566 832755890 174425707 66675568 1058149577 1021426344 980699093 981935542 943976325 20351636 623514151 900820274 989688741 380864475 843416601 858621816 1046877031 30746800 958998631 259933791 118069444 949759287 65740636 821168492 268246436 293031438 343893058 939679662 413876317 742392294 238345935 19939216 502289760 400580803 878429614 131233565 747564276 495637143 841655024 930250715 918943565 42983386 794527966 239053970 980491246 584360649 524973190 453145643 532153615 465674433 974680202 506936905 471226771 665507016 578828059 870033425 407371134 1056680660 118652466 58118084 1021968276 886755855 831511972 671033806 424989037 579736465 489498980 1028895590 344106824 258198724 564960861 287790235 314597762 765961158 47301143 867256005 936993156 883113476 985472591 1020276509 720309367 525570484 859541421 564073421 429327832 275892034 748683959 807502699 165049561 308332957 1049379299 864110052 365937675 61896264 901567432 174927528 160240921 110051851 333068555 886699647 958775052 764807063 640154641 323024930 43975694 81232705 136621948 962161794 672542584 927807762 77440925 604058655 156532905 958003249 42449278 411085583 131326115 32920211 425597807 518363391 510419791 309718346 427263690 970191749 575123536 1036052866 840283176 451725275 397791811 646989875 578518321 505480794 638205184 89667459 414695922 963249648 156399280 823612740 779027406 23345263 607749790 260738764 796688995 292515644 76973135 155095172 488473378 483259542 678314606 355950133 778900486 236581152 799124005 350398324 357551837 675571860 92679802 52102576 243737923 938443533 270310238 985018478 393097637 1024751513 539270504 944775843 113838980 639711121 826036576 712186700 61061500 248691796 366367008 514060399 509149960 244253133 845719650 824990044 83216574 646106101 760784120 216378558 805440643 838922052 843903731 891303422 524617695 520431185 936935400 561740828 841819839 287020967 384793149 948382293 277151276 439984258 414552315 71685338 667906454 449617718 260498983 660825247 378156905 222767355 404778968 754693775 718384049 471531619 481572770 905925923 475238472 520520938 818597061 88199530 563381307 348498668 149937463 703945854 630468209 927974365 729099408 195149006 631306021 729076721 87529671 655259582 327133913 903966566 876096731 557914240 1070859571 280012222 15380678 100590714 765573268 416865504 287846585 491051416 983145709 583826114 619676569 145894494 210144585 107030542 174139479 718561021 454203089 910353375 719475925 853599604 417832439 1023917702 867167767 373741156 1005514154 780895087 915175386 704116562 134111071 1052425667 728114308 1041949346 149897065 1037394207 453870864 739772250 1040526777 554838581 69579391 1037466908 719799190 101758268 549711414 323689456 103142941 921846180 384633426 755677508 84212890 50671034 735674612 424287996 464978665 917951137 894274248 214412576 1031104700 1005878593 162680760 930528574 939772995 871968859 503374085 809060193 42229886 556790670 74838332 674104851 1033016566 105227177 779075462 761039132 956954125 1073181432 298286344 922199183 412220401 278651798 572290171 638565814 701217951 971552441 154629108 847389498 615010992 983679657 765077620 61173775 734252353 164168868 13509144 231435738 549454678 114684166 1005046942 916909339 1013991224 726504559 824766158 616870024 213358214 722060605 731914377 261611667 997506125 229721160 869275462 786118077 123677076 219948873 252484576 75409597 658625101 711630535 148347093 742822394 153559803 125713036 1034301893 624120926 749872895 265147793 1050303753 740061968 810666773 219350128 975851134 999357502 132814070 986606225 942815587 392680214 796691406 119239905 257151157 203322060 693673814 239167207 336497773 484143215 403764241 635253036 993602050 1057742010 417828246 974942810 321021464 563685788 374416297 774817917 654039895 511403392 784314308 262276826 1026305527 911991994 178140780 1057180553 1035890137 320812219 534057478 994675041 24828648 331375434 271874783 227611393 37344527 71327633 102460250 252706388 812052118 929869812 181976747 189471967 286691168 1002028030 491576905 615607263 769070848 158613399 824228594 1054547458 663349483 7450122 877159727 889303417 170110514 608183104 651901607 572855080 334324836 34593109 533312136 318603150 359370252 639022064 996823770 7273084 204300646 980313239 682916864 24589644 985683342 959931152 151732803 812220317 1012453720 484474661 79932473 703615965 1041942844 870509113 864327746 51750040 931845213 1027481990 28965271 977188816 273808325 754133482 255991955 257925787 629722093 913326809 118255578 507022782 54835837 763009586 29910576 482935594 990739254 687786754 469952118 163402001 888040137 379036888 1032311171 37807749 20168846 230276454 690704214 286634326 783064443 932807025 281338458 120533788 732371090 136909507 191869181 81431760 352616772 718135599 618808252 277196582 1048687089 123754475 561697137 49224419 596992756 819475036 73506127 335040638 927437460 40372675 109277665 1022342717 623958166 570526491 208072470 541049958 55797451 22371816 696556882 9614178 351675558 898505019 522907165 899750150 527894856 607185234 30713805 294129341 208353745 620806594 589306821 916021466 884045332 776735147 112697395 851458638 619927173 155710586 270320472 539492559 1024864597 500332143 579245324 95313210 7452965 1005350151 125265570 476768346 872687962 910132317 216947224 702090790 29191828 440571155 1045633001 732816916 611153302 191842616 1067714014 461083158 875140568 1001490052 449747732 394319697 1024682442 260397167 628725869 280536055 782629649 589461327 1019968106 61415588 986000856 1051418855 762092420 938100811 974600557 939671634 567213469 664835628 948797675 499415606 476243577 936351091 122606862 195255946 1018947872 82376323 812539948 758105306 427044497 950627000 110543769 166802805 939887798 1037017470 896684473 139221132 254665315 919825178 685150801 613986989 548475656 644080728 740258627 1042644839 712712669 595151562 523396756 479503253 282325326 977295828 359106709 92956635 839503679 442475718 294354938 897413969 819937267 1043649464 742454208 15561339 535565335 86830782 624347646 415360595 608417034 836644169 567511884 746768115 927892832 670765499 727116405 1040453623 527922308 608070197 812482045 244552133 758518175 1036175021 41362033 322061595 196791742 312202637 535853851 964070612 928336675 793654620 928132040 84938408 291817877 252727886 961947604 467695110 322116801 524681941 568694335 872071639 128489251 521168605 1044820041 887568635 468319873 586468365 148199368 440097802 1060200250 693109307 303750090 136435163 673937571 523450093 947776924 1011248642 837365037 411635429 1011703236 302608604 199067955 789297106 733789804 375319354 449204190 571188675 988359253 751552105 154646631 555483352 392705131 836351179 567134620 533680713 602651119 10555316 1041704442 1022039552 297501630 379665432 712057152 488064686 492356276 86695595 843262386 819696751 110279746 452085471 211255040 477779642 800079725 298574313 341270377 513012207 751379005 423191155 457692294 232144828 744068407 550534703 163670771 399839224 985548134 723036417 770208827 100089492 1016500758 743505757 432689126 546239350 761363081 727421323 435992965 682191861 737571767 103009982 486505620 953779438 731043083 484363178 43805479 357522795 573008937 658039887 293184094 62959323 917961080 27628688 312972197 469265051 760555599 564480433 227488640 834065558 410662249 205139737 187243986 773743061 427062456 632612766 959170759 547116117 880303071 579524965 502951514 707582258 916646328 258429872 275020892 746627253 117235837 934830548 816759987 372942582 304064881 89084547 158506891 1009518626 1013342779 865764527 101573018 681761369 720166079 701520375 1012895515 543936864 694495229 675650388 78554449 581311603 220639373 158981991 627811240 582544806 866672688 1010430186 625301178 501755423 422635088 382630810 704810455 465419338 123559161 1033802391 813394673 1023991560 92214326 952503942 279497362 651879081 574480688 393199634 532828304 949309664 151616691 195269851 299046040 377105861 224353871 580481433 792604229 1009312915 234629829 298239687 1025526199 112638584 1034596828 10248872 884474378 1066849484 327999515 42073820 770900606 504542321 856032839 89300033 466359521 935251902 488760895 410066436 238068776 726656252 228753938 876875161 68895168 438345882 913367338 541631012 100889141 232805853 225591136 199380410 798191588 747307992 393148151 946662206 228775818 328590187 371154519 852431498 238647260 1036407541 699882504 861854680 918489379 242567660 894795594 750893731 986448915 384199407 232185546 985879971 766346905 713278571 26690652 464914117 355876555 352480629 366133164 634183642 86291867 40802569 934018589 462210042 771727280 824779097 528546525 648243065 236769001 249541979 941597025 399005212 787069899 515324942 712238242 127598986 351574644 1044238077 877171316 841690113 304759439 76622585 837554938 372331312 1026630286 874430219 908303786 324767758 736202434 502008321 725807739 395269673 964823615 711283813 966212045 202694613 267592543 587228389 1036425917 505540298 771515210 265554563 560526787 682120709 96859373 399012573 526243933 743129966 689637377 85393277 56876840 135652148 12956216 642708229 146224265 959309859 851868071 391740517 358408384 707303711 722969490 747880293 305656789 150765359 820430626 485389270 453879873 217106469 319521893 160601489 89899161 798853618 148688029 16553714 171741785 816782080 832547888 328670687 1019199603 171021038 102268418 288643856 911409110 50522104 210845157 168617247 803098177 545829874 535945976 637495503 637468274 43656723 337276656 328450083 61738491 47232946 865779555 251810929 890638840 235733587 223625211 573819640 844136752 320455714 604929599 756210051 951941097 344566404 84830618 435733705 269580122 157211816 624077284 47313857 117562800 56469040 427993983 350409104 260013514 702510635 773823230 1034983199 312436544 642475359 723582514 953329556 768598447 766530695 563298270 10583241 203504967 219923010 78571374 126310481 38476585 505457989 372469832 566946732 35738476 231931368 70509981 233395364 617464024 891103131 852680218 284392030 833974448 647352039 323990384 731112353 717361246 270251088 971058409 552596761 656454818 289300894 768160063 46353311 473749684 1056278481 196994977 792081001 87035176 872811667 444569552 665833489 229485772 897335896 176386418 115276663 278216484 674456812 528628175 1048839123 461294393 193953449 181648531 573389854 927893461 850502948 219870467 122290489 426795682 772724028 879053762 249674324 699295611 976386634 542720586 917628576 733918321 975522635 163672730 347649605 563891119 484796814 801034395 375011535 295645291 1041825602 241790928 986257619 910212839 455943530 574856962 847675804 1010510161 33937007 405821559 915442987 887038769 389101043 998666820 939993963 387563509 135590361 949133434 10942114 566690036 80160754 112544586 954685640 225848459 340024092 807577584 279122185 628248619 774649194 780325162 891681709 835676428 881377569 454802732 388247468 670765398 995781325 588380723 154470196 1040746088 882774023 926378397 835903752 224494728 175230181 880857249 689007416 749875644 182296103 955528956 194875468 541709227 227887278 584279434 1031828722 608973413 198022123 185020250 590907032 181052327 326879364 831844077 834974452 140984183 144418140 459579999 1061173731 728956818 184568670 305818045 636570541 97333827 167698253 119123190 142698461 229322583 309016905 396186209 482206547 928947896 606299390 96305062 793793756 47000268 1004155501 309318984 876121811 127526030 130570305 843236025 157194929 190697753 381638425 413506900 725999678 905634812 134419204 849872199 499492755 682620109 725358363 389599054 802514437 91592325 91460658 158938738 177018262 486885655 909213897 389874376 320945071 42058063 397689495 864785328 365642698 931283075 821803220 596711185 67812827 650134515 232355727 1048489456 227736306 382142894 884681230 218136417 499629018 286365461 784799743 791807480 801160026 58164090 277610107 330800852 358289403 591039728 672698603 428314589 771777458 749374481 802006880 280499791 841066474 595217446 893890536 7936403 999086246 959442354 377185543 189432067 543699885 251607383 818396426 1072661073 223004434 810290560 686367839 567330311 502394069 935054516 355873012 732015474 825743688 105092986 106003634 340277492 960312803 549377955 43808480 213451528 901310620 738098432 737082682 182149963 326516620 683081670 867386916 841822396 812422119 29402413 1029063208 14830263 395514221 986411555 477452667 361856453 725035634 675020793 587210278 843159489 92891701 1020235141 445555111 950206087 22887390 579612192 142607412 255272602 446718233 528762478 634974223 27660185 99588782 31215849 879174154 345682445 170308657 174972080 402367668 362703828 207646522 245697590 611777213 822536922 360147337 13779819 720228017 55297612 49975169 651049144 354372868 57501363 801685859 634206121 350456462 615771773 186177977 659967255 325116471 27693288 403081523 977887388 297716984 955135323 440041787 2865336 727456329 341365782 576043897 401882428 871223155 930914872 837083554 1035049242 11644092 949026680 421824895 59337971 339025961 435733203 527274652 15935040 236560974 731201046 227800417 448819614 394598407 43179781 989937978 449001421 148475303 620141070 912988754 675189593 173734178 980267206 866422725 571107427 816345800 572282173 391151869 91352913 130482424 607111341 895277903 936741771 664733097 443780858 1072362198 885575968 608954091 66049351 1068009531 546680835 849373617 952183370 513479923 166202866 209892008 369108560 696586261 859125691 655814101 951801711 454222855 783354268 226207308 786662934 693504204 361725512 915251471 320127025 41236928 380659220 439187739 826006027 78932290 688086549 138756426 413990591 196370074 713306396 886223237 473227528 120221969 1028812538 345396226 137452902 609676386 338403110 441217847 538913596 210361121 21623392 844542740 228287150 101310484 561185099 324270080 668769930 647367071 51900683 97284466 889718330 677280241 133639236 114274959 435338445 498998191 379399199 727834687 454031611 864470014 385726787 472221223 1064546055 66580233 774778282 548615942 290683557 145940167 1049718159 781804441 453052580 244962826 858873188 697939938 965591275 30547369 427886082 153548388 859327550 736547641 491089475 717659128 793322782 86073804 822299784 564520503 939994601 44919626 263302704 410949936 228231045 786140163 539751887 186977705 1068975506 343520165 745424056 1000930075 382110203 1054758541 890478909 933957979 238277746 833840889 825607922 453698409 540606320 314381404 224615175 719961732 1049024031 571917879 869808226 9258871 558269100 252410857 65651929 1004005387 1062552643 898382850 978060583 1069127136 958053976 411359550 711791171 4931241 369138979 764409087 490456481 782892667 375943900 84420680 195130839 646888825 724458665 1053450584 910794914 288647201 293385182 537519597 705473923 486052194 509814976 506487480 725538682 31024115 591576238 515469054 25934123 142329986 25099937 572681538 67375772 373103158 441240146 989819183 241593135 822638365 272995452 796681073 760340505 338220196 303576149 391843471 908825797 594272355 69865885 835782637 136160431 914042594 414502367 545485511 978724589 965162701 78626375 856062731 297092032 271718975 1035599769 223223621 1047985026 36808950 744661359 863767730 628402066 326194933 177414024 813430701 637332355 1055871974 300453634 437393773 592023822 328412767 945908484 809316369 269103548 606798418 54462035 654393717 628264992 361082457 87084262 427186828 597444748 50382188 263880770 955725176 433085996 919810762 372368744 849554108 30898941 469451587 1053495997 355419007 301578720 1013890692 680484486 95156154 514841556 975321100 783748719 122500320 227535940 815295448 676426043 453274718 539840936 323279641 530753637 459846068 505176101 465533110 485074557 854603106 106118919 823905669 265881261 287393606 808271313 1049139035 326398542 260716315 962569963 860912830 578450594 802435292 414046762 872760330 720488184 172390507 1047792011 347101870 986350413 301647307 44843867 295629741 592899336 885123990 110300415 266811149 693436985 176424300 226717344 811122210 502759116 521379752 624145930 176586372 495782133 655997380 279515468 600164540 612999664 41595597 771885269 400207228 766864182 282977310 291065604 841413986 976804819 440637869 324342078 114890217 346809652 132930617 579729964 939999273 406930486 1048003241 758516766 823972556 88268408 912728855 956827845 50219149 395723740 420740673 747530641 793629070 542769209 783804863 568719517 688202756 1909546 484864152 415796442 190969007 587298918 635758899 801030865 460590080 825587109 911352537 590691271 1041536293 428891899 639288626 171060858 242622146 713354783 722692120 1032084111 135335473 46765678 259874892 595146524 51176755 499129187 442820907 19507810 224157260 1004955821 785259850 567199350 69476413 832799238 637489599 143251782 47829804 876927752 214679208 233062741 128315588 954613398 901496823 971053411 649051546 151530248 964230631 309399610 669455130 220101726 63167350 258860454 101234411 820220935 151105661 303171085 488560708 950081498 853204527 769098575 67861887 666227584 441265418 809393475 520277965 746785894 595185094 115259697 503841115 988720025 893137490 480857225 548415419 1038399087 350896194 902424889 556308433 880862828 1019331868 61454267 839929611 1040332274 198602960 279320543 986416915 164298572 688278992 616590190 71608345 990622882 203151447 343533806 588050142 848124173 62504990 573388152 143609355 480110303 781304206 797921373 1069764870 266286554 867473765 921863689 891936196 287804494 898807347 870595657 643314528 468326599 164351106 735353857 459384675 262795581 89850445 738427472 833684564 349410478 221871279 397255660 169821648 327080644 533362202 428750992 626824427 597819754 300204951 1040377415 895639880 572661210 68529724 942949811 830257981 533732579 241246051 165128528 36174054 615520386 427157007 585918643 685821867 853851315 667620084 257796769 249149909 345929447 14965945 558422529 485765035 662654524 95825423 126557823 214305620 996297944 377003853 1035102283 633788211 987872223 579865146 977591506 360481542 64299676 310454418 385613889 355791348 412903611 412986936 949788787 530411703 133201107 351168839 14101114 1013513714 648396312 1049592936 602719568 786063145 126782951 412973483 488370064 260627691 342118861 194239841 579125865 967141087 171169242 442210672 991896126 901427258 545579597 31852244 1044824228 176046850 368213912 200348773 1070373634 66289379 346286571 980984284 206758223 845651523 83165872 500194690 348449787 591964638 366610928 386662853 240432218 364050350 959997734 975494291 561876049 542282105 1069191684 417135048 934980251 380908690 1013899649 556922083 1010336893 168734858 280813143 964900363 936789499 89659521 346853346 375276618 95286716 303620558 813160794 152195997 1013348212 347359026 241179754 1050433628 731635589 303635444 697578930 774496957 611960903 953823790 1062792028 600833042 683138535 828054465 357739755 615573791 544014508 167127452 152685199 209832493 972682953 789609384 612473663 144904071 400972273 417707067 425507222 259050628 984245605 56710204 602871734 970265090 400457338 1065495707 727155124 1019120758 363733055 1044626095 459092708 938557420 559069978 50612507 466895592 757245596 262501118 1016329918 1021839731 265862048 46034334 109116961 773688931 304018502 148945899 995345266 1055439746 381651355 542655485 771561259 59305083 41688070 543990455 716612171 755239622 248089016 517341892 25744875 312158831 1047980231 837475079 47727772 132412277 139232888 761122559 795163914 971256259 129532665 279151939 396174100 230514948 297223060 966977468 1071525882 712363464 977405639 74874059 908109636 154879623 757190345 407278816 1063134006 408053580 882752768 736238612 1020486452 316202662 628336395 442771063 692111501 203868866 312510997 454817171 248296209 701008715 902870899 738190671 945647472 279447812 861679055 491546706 529649489 474377085 687112549 32934650 473624574 96079316 220170940 200649456 649894036 212001167 937429212 459209400 434516606 960161403 940399792 407982566 265206830 895815169 450902079 171518572 357807287 516877955 493446564 578229160 386037218 130093789 718178636 773502581 974116983 249802845 745700054 1057874718 1015145960 446345492 1002456703 688976771 458895401 490897613 1068837964 401460793 736610020 25363739 518110159 486160827 526178744 647152237 635349073 748063585 290994189 557237641 84761387 595798955 377357911 265553686 921161390 188304632 74465387 716284 282878899 194910089 339559338 1037317628 859796256 670512509 138049692 426699045 429906477 630872744 359970522 568732692 869242107 1007322470 579883263 966816193 708102597 226192832 822587912 448864896 312000141 777289058 573043648 102852379 657440533 714359871 901378112 742158420 164095495 615925496 351965246 322977805 1042544152 688625140 926377527 848164576 78244326 36345351 754106333 660041293 159780501 38415034 281988838 1066315169 794441455 418552668 447813973 64982150 351093037 755362434 154306533 661445239 29834400 928032044 663801182 421271469 885577263 286641179 153570446 933755319 681486842 288201338 701307933 741383695 891160284 931029551 38957676 312129643 91337635 155474951 1030880987 437572225 55045351 1061900745 64266090 683921867 840906107 869808298 407262622 919275146 23649835 610865841 382194583 236740068 233258484 578942412 45944583 571114614 540397540 476882995 378399527 225740379 333673833 791104182 53595963 654628367 1022184137 39091939 75591018 439403221 313622495 1001033005 1063337724 857868040 756351799 280467155 803768357 855870751 629309309 973337869 185031833 796449785 70476561 208232659 1068692248 815524975 453529798 384696915 715595548 606467258 778891945 712180900 754083438 348323936 130449109 94483751 437000142 648109906 706941579 82202012 179987474 203514907 245954918 14146424 792003794 872635727 703879881 301383779 932477390 207102903 544974311 654621598 513517408 79768300 356796020 172814834 887605845 280902545 457996419 697226070 367982773 563771606 343711762 388234726 353853078 893427960 379749133 226064658 902568005 365321273 304252018 395792905 317618859 964819051 957794281 757549115 345389333 56688164 139279920 369175504 374052588 174512094 434047707 995472518 991424146 132097462 979166720 696029123 479671646 391546816 630271478 634565145 920615604 724270477 81457188 530880892 508490867 70325727 324887222 1026964654 291366812 803191096 496990867 287455822 499110923 250540111 234725172 932087106 940879583 82496132 877800706 809973022 42237871 695844717 33805456 45474605 78541209 473360175 869463297 516496377 652204477 538386408 985799326 978813117 667494287 1035121213 268914294 240839350 959784645 626793231 1022454860 486225544 60274195 149244229 54437819 1006567930 1556253 1073585099 917977845 627021035 768837822 109502761 796172704 123884582 1043744263 233642999 711835538 739276227 745360489 786302343 818318606 1038747358 722665474 824633679 903194446 988907213 1000702949 769472951 70547515 755078881 486878107 1051411085 856023053 234120140 184735649 342504528 671422180 560695504 727707519 968867533 400879357 96404824 293381666 148098903 546780350 1061617910 71483597 534178127 687367627 509390408 1046697533 733181243 366156647 740932736 345927834 595535930 889635036 591793324 822323649 108407602 615030708 439053777 871463069 828409099 399640503 482762202 888355398 624226572 832676303 190631581 849642297 224729372 929576793 145838250 87954017 545496915 810303476 914609134 532182787 940125178 841224117 146923888 659538396 99855316 51760643 1005470385 268137629 14034470 160591990 855221114 339730337 897786167 451827176 763801391 983316993 539822952 530858521 82203619 347941358 670202199 152466641 520982866 1024443187 134143594 72900031 581523099 415930893 995702097 520747501 297983539 965902567 290486671 726762562 809699236 783239690 49868985 830744966 515256890 702808871 1048565517 43693031 672629135 912512622 749981642 333898784 248028590 60664155 966778257 1067762376 340186367 677508843 847874897 835296670 788977126 434392586 403247053 121901785 554784827 844931951 505796618 700332194 439376790 498182582 633424063 823720572 262646793 1046841471 887071837 398230377 154292905 122717128 582116809 996783488 820064109 905624579 1026952190 821651703 574053699 1038997211 969264919 399045245 662001789 806693454 821759220 493472839 537036922 856681389 1072700719 680901972 820362071 1328736 801547360 312703154 1063772451 419065943 774575783 430009951 523012771 445039710 576710348 308832014 294157384 380364489 187575288 449604212 473010339 750799629 474804321 13089098 809318181 633667773 102411895 738024566 757775152 436665412 115584975 384474275 317032684 442701877 886227118 467262394 488221773 798449200 258562096 1066213423 568722076 579043768 371563988 805951608 1017831136 736120314 163894626 740450319 400137253 976142365 935587418 343092482 670970689 1048818170 79315149 729481788 466779990 304824454 389872303 947681014 401163076 256710629 993436632 510977150 434692375 116664503 109500747 950358853 339202721 834983668 110083365 33157764 815294851 690780442 546808503 513269898 609592948 529213575 148375284 796604039 792306114 353137414 407317774 5599316 561728531 444135463 978871702 570276967 344870319 402945943 800335967 73149869 942537893 623492976 1055710098 831602929 51938486 228278510 208409392 957521211 867193350 955913992 117782974 321651480 834232814 667078995 548053853 296415621 675698179 887633401 17593022 704353348 679517226 818814618 877178281 208947548 736988603 625864898 347239656 303004166 454617525 933626326 604880813 763663857 307520101 310455453 868432107 683760188 889017373 365612319 791550738 1025449339 1016778181 455499023 585661740 308802949 283000733 642046918 527314163 605905847 1050302302 805398220 729422247 815987454 523733243 152123665 392843223 19276676 826589561 544845834 73595876 682637664 553546885 557445041 271448945 125208168 183760972 919931808 969206049 322945805 246783006 728148396 654044793 598019630 354973482 249836804 615099050 494643018 118432706 965344770 849640120 164825535 288436172 51280884 1018683578 77363547 347557917 851838067 537382456 1014839322 131178896 793769543 704670317 533530746 1047216502 537999837 742879605 65862867 681203749 625516533 267137082 959121297 542093187 294799247 260568852 592516216 40552535 110029490 221103728 1040962444 88550968 458446013 677320325 252974645 384078658 371852947 985687573 903520271 164361198 70145425 392977642 570164470 1008541485 165392602 617141615 556004332 954437128 31492213 506540773 45426866 141523669 959309442 524191337 73823225 245851367 768785434 803445110 997119891 759714051 511547356 814451783 920325199 645651519 507711346 464868908 85012727 269422481 593327157 707210558 956919775 505567767 1048133313 78646815 824959504 321543872 465356643 481533950 969596504 677654469 280801851 507932910 21358441 65832456 681201763 228875014 293435688 849219188 48416133 379846326 718825704 184141477 67941248 656904442 1028719890 1028215378 1061700279 903857584 243071952 147769755 464852732 341300453 107442122 154756769 274402070 197030860 61675822 1071005201 317903610 1027159098 832416205 555938666 762478284 675697167 389207996 846008603 1069509367 285858720 675408911 980947516 971588025 46737753 720676748 703705705 651346827 134414576 255447583 824399260 1037083551 458060455 951347440 1001558248 952916786 18490596 958136237 14975024 85982705 866402207 136963935 722324789 627851606 199654609 900715801 439709883 417506279 86062734 155890338 27693928 511628019 598960716 108153317 1068620773 376319699 248178291 699360157 533676479 241417627 797004921 341015304 545353572 348681982 738324603 681676871 813833034 53125640 1056289273 897317703 855731556 53497421 234353806 315750223 538607215 386873512 1011032074 49816787 681471241 663809935 110463838 236136227 1068970702 659070479 151448255 234622491 1045084599 115515351 805764639 592758819 216529340 228239670 995976258 942263781 1068663761 225975554 306529055 1067695397 417624778 930485128 690573817 711079266 101572385 1068917613 373221485 709379616 189299016 508382139 575082022 276388203 290599255 233528532 292274090 66324346 861610586 619905498 403401029 648499849 26967781 899576568 324100142 637289028 520014125 773137752 472258616 61698286 571128532 942274894 208983161 195956460 825422727 659636545 270247106 944168981 26359049 984493323 465047876 754475927 479141369 669373148 627842429 73378379 798204143 332816379 265059438 69123040 202793701 47640705 882783606 338749363 626380991 305574694 209556669 317771944 353419308 399086548 1013291598 108705291 1072363609 631577163 237485287 391701278 27561159 703390124 866862978 660599933 618164877 131501482 419708749 168102495 427549147 235228429 764943092 849593189 816052081 398872405 374738969 211022548 532696790 528463813 394202234 935089190 348385966 748367716 117016379 556018179 202375510 957390386 506504863 968960177 998964663 971051313 470867511 1057312699 786215004 1030330471 258864322 727926696 855124432 866184293 702441030 149200504 368076742 400128129 786458540 718564688 205525259 738204820 427839150 735198313 385184114 398462149 249553760 899773243 233025596 349974235 349607501 394829641 326301989 961805322 202461409 3454932 1027064001 827887588 563812868 698821457 66549592 1023881313 260102639 132707701 250407774 203948715 796563743 650796868 1009089317 995769414 57592067 420185111 80944542 230896683 856798886 309457953 823039057 72496033 495820410 263369467 316740638 374402566 760361383 79841500 1236327 594802480 10523652 320416332 872031377 392227491 139461284 468407641 131882451 1012703825 911736043 7922223 24682119 942243546 347415031 879338864 497847320 949955208 640536879 25972448 403755133 101778978 626238202 912855612 418776197 350905752 649318175 662941412 902280188 886225117 825620797 165974162 356367618 573821764 457874173 1053226392 661431435 600510138 985185080 485545733 21675406 67859726 804597752 119008469 566712475 1038949301 787375316 477952161 25934542 327593905 262456421 123454158 38094777 302036581 479370304 974363698 85788556 923842124 338927434 1015453915 358120550 932775233 357532151 59772006 974724432 1071646389 277734137 526531907 757299942 911140495 518004725 333254255 301903914 709668838 563846191 846013305 650930063 10318161 218283822 373150000 291067000 276771598 643337986 413376589 217910906 655688119 1070706572 699756734 246679280 824211725 487178886 182017320 780744744 583469092 922293539 215469102 510755487 1048847682 528308658 156598354 42844862 47059811 591607040 83497912 584729589 398374300 624897942 570055898 219209252 995397210 203104136 806451710 335533341 579238385 1066803747 1054506001 436062588 807720393 471620912 295437994 260774833 303782486 273088366 413508782 91740344 444240740 766407573 262328965 307090518 643335375 872722074 717803615 242745982 951838131 1026632895 1018711010 159139885 520245175 152825442 253026627 677861562 472130748 1054997190 481061749 91064284 467268941 553644405 678874312 774277001 736985095 1060684108 757168022 1006703447 715605406 429853540 851257426 585061078 391744228 398146138 581657947 1060268723 1030418798 1040691610 948618691 249941899 636205707 885960868 396614338 743086928 444938506 404744156 292481540 124679441 955349538 771554217 325956657 480461751 740735067 401405687 302571720 201694094 977351629 458206355 902437001 871475448 529246239 614989640 418503063 554689284 53721796 863006621 555303540 227840421 1067460912 1001372990 1000658038 60608370 164349022 55357303 5291503 790437898 517160370 607830796 375705958 7987608 399206618 443519417 673865642 353109337 82663605 885687389 478425279 619113162 833597482 430550456 705020224 660246510 163864077 1020480486 516793334 852230256 291212130 668618145 799228126 237743602 1058149605 99468231 446530927 1021948313 576048334 1050156854 805339943 192102089 698100696 987690546 196672123 402693120 543644169 651892939 664610335 447464105 1010690428 733306121 1014425289 465529721 561885741 1009880485 100014138 984603161 1280292 237111095 690337592 150809175 828430847 8294639 710922430 716608316 609543033 99817777 238253822 669846494 456981341 529824582 1051970452 268679488 498359619 136159743 761217088 23987663 811666110 261272807 481430452 385824813 590857008 437246309 472062390 388384441 4075739 54618383 1020747229 758625297 120629251 721372789 917459130 77704929 759120151 201732955 256357363 634649113 66918943 779242122 75551682 177418295 482199015 497172951 703238805 459444885 451879460 972761897 1029052826 624861949 840878758 179131741 334209154 52742215 319676674 28230833 852487179 510244493 846530640 503335519 33842619 776391743 193145592 73240186 1035793916 457351866 129215712 472061058 605927608 205431998 646698291 818301626 367674481 853990526 847540090 487611964 153448211 973293078 33720801 549078714 751069381 332628322 908945669 862660314 138924907 1029185416 942113733 20097802 616200828 590212602 722392885 351362880 261044315 1041920023 517473082 551682073 729712193 965700110 489013917 969852393 200309804 221249538 98981020 304857058 55912636 64663239 808864585 760130594 260137083 403893433 236954225 380002268 515086583 669620513 933335891 878922129 882642587 454603842 846040142 232094504 62707082 459571872 338116944 874769578 579769909 449099127 88655434 686809342 285798658 344477077 965899158 497876532 540496798 377843888 437374200 619725178 1024565130 416927450 289434630 485306834 537348819 323745501 403910912 802100676 135096690 51821981 424205390 95483371 594406763 186766521 929161302 1066601398 382076326 639191939 783067855 26935298 1016767721 1024632251 444905136 734413053 1033000006 102146113 138775977 155027308 737582945 220668741 89249569 846380711 114011513 700066073 342144031 95786938 689748320 450867501 498361547 365313972 1058437438 1068022360 729277055 553746486 663343218 394428345 968882417 213750755 223422940 762514758 439004184 851258694 892305165 908428763 502194859 587529836 901433302 782151899 877422184 407997916 548671720 1055633673 646359305 659164082 459610150 100318010 778033702 329425233 355495230 252859169 401110565 754031529 704928164 1064650615 717617481 525238111 945332228 99708710 811569186 960882268 609076334 485983234 1022594381 816650891 219742425 1017287282 105652193 402022437 619857853 700890369 820681494 376989636 108029803 941522820 405874085 1060775485 861259669 820560513 368336104 1003010307 961222705 592078899 669902537 796584534 58901153 148331990 463669581 255437620 629281503 608416474 298545321 654967130 107087187 229201767 803853276 882289050 873587665 418390704 909356289 1035624150 32374513 530659319 590204356 861220816 135611347 331847481 536820902 13890200 466820894 143898179 603866165 163208335 448782734 894715845 241501534 259182718 124805956 642823310 345544402 163483352 406399050 102922456 354103321 842741372 484539399 791941855 578778544 715716148 653328558 775727065 930775799 386634797 162283080 180276906 23293393 252614493 216492211 36995543 414126456 929661139 938898642 438662730 877639436 333470793 987757523 504607298 709059384 400221018 951766789 383843242 693418913 618193399 896065671 738051624 437203066 865758158 289754391 449306281 726696267 436420253 719806509 387046636 611280571 930514125 800161258 412273868 448301493 1057579134 794174903 987375801 515243837 650876384 1031981907 437659864 632849729 977274773 288967528 525140349 354291501 161153668 600351485 813946450 202406847 936318365 1011040789 300414189 804534262 811302756 739450916 954813222 549874029 797881672 12125079 968121732 349192929 993416222 855742980 373719593 648313452 105365480 189788994 139468780 338398873 421969090 215420691 210334145 52299168 501997032 436960005 876525939 114277782 631725632 985036257 118605577 978396392 725920516 314864250 678904229 340637842 34213173 421240640 284508238 101119209 737897336 743281510 805299464 1000477777 784733494 192531567 164503082 555823963 934636936 368852322 67983276 375886010 950301828 837971070 161557436 495656700 783720885 396075517 341997885 456477297 459468621 161766535 174940585 740108856 56550713 33345529 827890480 784961155 194538498 858769752 1065164087 580571025 439547706 509261088 494015720 554365689 209286818 813417291 1067414352 175511751 775109083 770238064 735204693 29859373 607745607 610689916 432331689 394058557 530622494 992404872 658180027 601682285 527058743 549349458 538463144 313481052 488266258 162420234 814044509 476320488 48463287 492056490 999647310 109267881 932200119 162055 115770370 656634462 988349140 632475978 926042983 704651871 384176997 878909823 91763960 859154653 646210852 272083548 755387827 723971366 1053011417 647260066 293156361 1026378584 38912858 258313647 460247457 452254025 270264234 576314756 182960173 789110622 175694848 102798364 258925304 200769709 889749994 844541273 180805326 657593661 784743284 1064542370 1073652837 386214988 424976704 71646365 55776273 233886408 231622468 415871515 165365231 978457715 570244849 46296222 474385873 942338612 922940146 429193575 587311000 533922395 917350807 595791096 729842120 531753348 429351765 688024512 845084196 424838253 1059605923 580034751 296028173 483525784 727781099 895892828 286173874 478119453 1059263204 651047655 634955280 625572697 698100357 413416497 801618878 838245239 771480350 690004448 79811028 379088548 400933089 793853488 514117834 639830188 348071564 54432546 966897860 278003962 141733651 395630169 38417395 756185063 130928706 246775542 736307600 377581122 80625338 141095767 194959448 996270771 531872687 711186493 1018214636 1060466597 237522413 989702071 240792296 281072978 481009588 689963589 149650377 781245587 188571724 883369844 151693934 853020886 857638881 26017331 681377728 192996182 973151480 357062476 9415004 663397474 273362863 248511819 501250599 880847848 1070058533 60184509 150466924 913904892 967528204 236093969 225845789 762994594 60188043 976503726 865077527 748615765 853622030 1020049628 281068827 763785098 1008136640 423172433 249167161 120509659 690510237 749765885 570748701 19804834 841623973 99835381 635631046 31847636 160950514 613785132 546284244 96294395 646667695 993974378 45138511 308465121 280480624 168313336 460122051 282174417 676963987 206564935 1002296037 637956104 425341831 694890661 510579349 541923910 89969350 343607885 854223749 888647888 196440935 556242561 357876300 903201423 971466566 427959318 599654151 42997841 2872551 379790466 190802887 992953843 212259188 1061428143 331614587 624892528 448184708 637069104 860103717 701452023 219353939 245227934 610299740 763402150 385963201 700539492 86519133 878386837 981791306 1044712528 384971368 696564195 129612178 1044801273 744310144 761559958 1014454127 430178143 244868403 188715999 502255073 722564393 660368275 98631120 152002081 98129156 794219299 441958722 598152419 79765724 902658638 863146799 97852988 55596507 963219006 249881553 164914667 279533389 514814536 374649658 140825879 529238258 656960813 956354139 82437521 1041452918 1037531785 434900194 912082722 786690095 578277086 947444284 733495255 1037939325 183462249 8662755 1004733422 613948066 303846483 889135338 560880040 362956015 1070862044 944214245 227971904 875933472 791239927 985231543 522100754 942362489 789243153 638876523 857221559 862165564 1020855522 627237109 185838540 640403735 438076904 899215086 660356825 186456711 98083038 250942519 470554910 18331066 343427804 741390623 462178903 55996382 662309711 293789815 315772701 1014987148 515511206 814936662 725156456 927119066 93882113 926801356 602082809 504133439 808875675 1023413840 45694148 620578226 699580117 736958830 781080526 589963617 765560096 689050868 882331071 113816 1062786913 236384158 490990005 817229945 26633796 31691666 939976640 492935630 16217251 417134575 506200110 79097034 863638898 780020197 232942036 171955469 96477370 648601343 79352771 918635395 68104555 339529445 534011675 131936726 289368038 28054907 769431990 239089818 300735251 45279653 383943311 104870044 988695532 739113522 449982731 29166015 683874131 367127287 802297857 242474312 742173908 1028645102 193282067 567141692 376086005 153447739 813787027 867096036 1063288639 498030067 1039688270 278974962 406950794 595626304 165194647 97122229 93811473 20927532 66079473 242160463 787247533 150091193 165404088 70637553 820615755 48811131 120419707 242388528 605690644 739009678 520064294 766054376 98357085 783507655 61343078 738257102 555204356 241990560 442763599 961484006 621984745 1059478878 226666683 404390529 749265306 490544706 759223951 552409741 424793239 16413858 316870786 294448783 964681750 233585224 665707139 397383341 264023471 1072816475 315525366 244880494 613575272 738809945 1065785275 534375429 801174328 490594861 487379362 808237878 233242889 405914473 834293607 827837927 52778028 606929955 431801980 479688759 593760041 265712680 285140028 217575525 718226869 151278378 365476680 210934342 567676249 768881677 1017508020 991182435 753711843 407329793 729628010 1054029099 452669695 535307393 30553527 890126266 809708626 329035484 382490595 779749026 878899794 929962136 88190721 1035240843 877422391 719294931 1000287763 302567421 420650666 358548524 111742124 48670570 731690414 679907424 873808002 107464353 186094887 42769838 1033553185 231448239 949218176 269671387 551349616 442957387 168517700 824494358 526216554 338140642 462253531 940626496 674678085 735437114 308833363 962850351 662961604 650371765 930999494 894977597 273391205 860601723 825864421 783292803 514620667 109765975 13176403 134815629 801643063 168698994 368304587 340817461 807475102 994987506 990518623 123637337 510379035 514960979 817983997 251558065 226481589 97599375 268092400 358034340 537230762 972353926 338736462 194681252 927306656 287290849 996726566 570386574 723979053 881750240 51652204 693046041 85909227 753515600 327804256 153763708 939983718 294821921 1068361861 176567483 399418187 599123892 266451929 3398829 623425299 192192372 288721494 1041793207 926113566 532632040 981033528 371190220 666405679 903240199 873751133 609464408 884725784 832367506 635126696 469947487 995605887 92143612 724639365 340267468 494180132 476868383 794258564 232370890 579573407 474216908 85091287 478060202 215416172 233266651 434136222 980461541 360732019 55196391 519807635 435944745 273106164 464594454 283784298 924350404 119522482 371099069 309366923 195763000 459820348 1006203063 198429549 358278780 889713991 110558600 851120201 599010657 876538431 302998018 783225094 170859075 267812093 925011996 576516488 609342367 588903520 546961342 39007506 362671408 217679184 610152526 207569001 464714808 347793372 84914614 252844274 122701237 543192794 348221588 348048782 634843454 468561418 747621703 562750031 1000393943 278961692 505957608 911184573 31376329 230351578 941291761 811882011 410013629 1022507947 287258677 272454633 62546934 705437285 524528514 452684408 351986946 66872794 1020259608 49612915 539233257 625329314 204368056 868177948 412684760 491194907 949394103 313356773 797518188 889845141 1050688825 751527485 581431942 616792916 1059676736 180116927 1014070127 619629508 655499451 119513500 994015238 941121688 44407965 676806308 83155052 830606694 62480462 826479209 589632113 595980322 916102252 891629174 550423615 296075607 769952230 264180833 600184190 369996662 58715945 953629768 921705494 174276420 122206931 967679076 654924999 160666335 63438295 449766003 638849626 750164240 843244068 247908955 348420307 482877531 38893950 250145454 657371487 804216831 519628409 717315608 916273136 263143874 857477121 206989643 139330520 506364393 232903279 969783244 459391142 962006040 996134139 253543164 459330631 123864313 892229936 907634306 145401796 908131090 2693093 535796739 888423166 458267803 21567190 43076492 709752722 740504205 417218292 820266720 382986754 563933186 756017259 201192509 717347401 594342366 132774638 696964677 286149537 870191636 318058070 129733010 115020767 436067260 695604386 165127181 153918878 183674394 433337816 349582837 356924668 561587654 155562594 852731185 249659046 18890085 213977201 208246465 712219121 215464421 370086355 27002927 563817622 509005089 212450045 500965798 204159065 878863062 58432026 612452550 819862636 697180743 169299419 85466525 311910318 715403844 680958557 1071128745 341650291 457984247 646979475 89391423 715657973 206639207 659076693 748519202 742740445 202332066 54764984 542322214 151954132 922016292 558438799 589514420 510393335 312416753 877622999 426893677 190954009 830673117 44043241 996544184 895152365 338128117 523936606 575703831 715523579 171149920 1008900756 975960071 796736837 191624121 289080543 108546390 1033961674 168366860 84118819 308425068 229068081 335275516 128640170 424120400 697257111 570128282 355328974 789295176 366821998 746413285 394308495 1022790357 769597201 704756080 254646340 835145925 75388438 231448313 234606282 978986387 169157481 445607344 763327074 749675629 492844225 664156360 363543521 219726583 359581399 153179592 6207354 80036392 815453521 860811656 858529756 498405178 1006592878 429428277 916643382 54800283 68970612 7626168 543198940 157811558 696232534 1053610802 749374797 192379622 751596483 1015897042 328438379 15063254 318994710 907683630 856161772 346806728 920805624 88037412 827701048 105857324 398830042 309781177 560090254 410743648 950208487 1033955872 647143052 448903545 1066906035 841201974 114824827 823449012 452618610 925728475 743070589 924274874 16025521 1049978510 22628404 311118143 832551548 673395954 158977257 80671385 770829748 754986737 983206863 484632947 876487517 213088490 445476394 567021596 520423169 122929672 582144000 859686019 518867240 350490074 286316750 580901233 943097590 253989461 245905206 27891361 896031234 264809901 891254288 52553071 256677175 335141495 868737074 901566194 820234756 666368029 25985891 344505617 57998329 613905397 623504865 463883231 85634390 255007148 341566774 926292589 125053678 890223138 931173764 539098675 277468696 89893280 1015882148 764534553 799712885 435502922 766855091 929069012 471302358 571778789 360689665 877111583 563984198 849446105 11435245 96918287 1014774799 290795313 822584258 106840317 602370648 502155111 462855759 12332210 70341172 552267809 795073099 1029581930 506299072 88910342 353900069 474546696 644744651 157955425 468003537 895568088 84933717 379497249 480480692 37206137 509753779 932104982 938175633 156107263 1050608361 731762653 113830798 969111011 337353498 54871364 938384757 586815478 1042792907 309843593 139875255 640911397 71058725 729947060 201734950 780735462 616367105 595874560 712800958 778301265 639375832 17579429 66743484 5127450 475681393 225201348 910679329 804180225 46353874 234181274 609213801 670634376 601056093 749173758 440473849 940543094 610783561 554502009 1069168270 373214538 786099783 412830912 558214838 582328948 928115372 193251310 482266048 1011217098 699264106 772920049 642326174 450265992 431902188 328182057 631091093 177186410 975479257 760183533 556303187 844827858 869756343 523898290 964015031 546425753 963020984 428184455 1010428028 8124630 690191499 214502003 164007188 136458180 102583601 468411037 716056600 27895818 1070967098 176658349 91578615 979427675 608003720 616337609 141134027 890110226 522448827 831093779 360629831 418794503 969522003 717221220 138342349 46123709 1009217856 494075363 263557269 16631980 157102026 357120361 991451309 394102377 3843662 669319175 996410980 701242033 830650114 102693556 403735850 709068738 961899996 948266658 397860799 947725970 663717401 774579660 454520361 453468775 752590620 518791210 797620322 556370933 910761310 312494149 678417366 738529340 822559485 943183952 492200024 628059152 913403607 724188515 370815374 1024507885 748405653 766469123 600893307 229475733 1021547810 496761771 1031816177 472704353 282141022 601973857 397683992 521342995 478390324 216195118 107213905 452442362 60901139 740203142 244604316 334885924 726730704 1064142782 33395128 956081703 490309003 1035409216 730929795 1062450356 923808377 1052239641 474664691 585829627 119223177 862084300 473969772 95673563 624897884 635994376 666491242 817717782 697740777 685494129 1059249822 1036711984 31431499 409477100 91220724 372330549 876775224 104402667 1057638026 87719713 1005926155 383347194 197359361 662332375 178266438 790290866 654163134 750074369 74975737 1065646332 908887187 467491323 218128431 850442282 476428943 485745650 513462750 319802174 216812090 659591085 500831076 775795796 551128312 236758817 1013881673 825553126 844412510 465414991 243770516 843485583 353497396 788445902 247166477 472356990 294239195 475816680 168095158 457433352 330962566 710818395 456277274 740467319 556343735 735714894 223464580 274884726 757020354 239731690 943917415 241907100 1024384694 1055649533 634924081 958670343 941809936 216929032 178568888 103906167 1036836058 263723976 594130546 222233350 485976927 596352943 246716730 417190327 370993628 459835562 1038794989 766484969 164521695 126820284 1005412932 88434874 1352102 26709251 425528154 419018332 910109419 351423678 767382350 992458160 578681497 962419722 996385343 114189693 274006431 19424622 713012290 135006427 53109318 978488359 800628080 902489031 598902410 613196589 648949956 1000795746 239341279 840844514 97985666 942690317 372764686 1054254530 768057437 368774257 447255517 661492769 469684324 912761140 862553869 489691307 738021011 659206367 83494792 474315615 308896126 171219054 371266038 785362464 198756025 150588451 420760091 896205819 611747862 320732491 596905075 388259199 834435588 489727647 437912274 662289962 331573973 324239748 990430855 71789016 780367650 752969699 78687199 1038288168 458115524 383691142 1047984846 295472326 712390645 998071797 235102952 966463756 446540788 606101207 818730087 986981719 369097706 342607899 476868827 737859457 487649843 440452023 399833852 244771728 801537542 1027548075 340371568 58280783 1001061797 406234029 1060232465 662895577 1002360973 345715388 44054079 757621474 1035314819 1008518175 292646451 257127847 38817596 180638829 201948896 377220463 475472872 277925443 797802378 301752955 368727077 256550655 942356158 706353731 883084381 98153370 962763363 593750277 994060768 908233630 481211134 45522739 357575456 944915797 884758533 354408452 938766446 1023902543 536140877 189561251 50546928 513765076 878340280 797909834 1017452117 135376752 721144125 263629702 622435356 743461403 523916189 860482215 150432685 364546138 856902213 760298327 354284753 758632557 324860945 240117374 920629398 628823562 643806999 343525256 596850680 244758591 756972411 738234083 416238796 40903438 716359890 206257571 930901408 349090253 430198348 894273141 1001134049 327444185 8248527 897157922 761440860 124883277 425244615 369401267 649166713 467623913 1059584783 764564169 960867414 608440512 1067918312 745786066 229785860 580275321 426998361 441020028 808729499 6393563 32791510 749278894 99717121 236160909 167394680 627379123 24334770 879213350 502984148 656144492 521815370 933497470 805742318 363685840 639304301 651733334 423411708 263108031 924213331 148368314 442581155 670867816 701563208 880789550 980238109 523645619 565473789 808087284 772903546 399263992 797282199 615664896 802728254 420077153 498044441 438769537 645494845 23634012 807292193 564170834 1031382561 820837294 383799489 897462662 15546734 424070123 756471726 171453146 609460645 732052603 12564355 68051896 505441683 85825522 590807391 354783872 784255833 872795414 36996126 610648539 173321144 667227678 143714584 701041114 111193826 397691165 776690387 585381651 234491030 185040490 840131855 313435418 623350023 594241800 1028750902 912368555 103928721 376051794 880245962 991064853 880180686 407068240 652766636 573595041 678081349 821810492 730413248 214003045 680462869 1052045282 51228647 929370523 872020285 152701542 798325687 93647669 57742605 1001393611 508163084 771400813 866949940 528543001 702231180 793429332 674105570 563781646 135912667 823007516 740856478 261262096 981936278 862124057 490253191 877687349 251296101 765888606 432567900 463574115 693117869 40715145 796603306 190778114 255070944 802273690 943667411 650435356 446417408 798121654 35470772 940715138 999532724 285046402 188954838 538095995 10617771 515469066 84663700 78267401 343220222 724490715 61390991 228238885 262107001 227523358 1014183658 170867094 631919461 482091 196515542 680183537 745646771 1013306750 275328586 650231285 369913123 207760436 648196427 812120519 748177983 51963096 830191692 500515974 320456573 573342816 673928164 767780043 92513745 200781867 529474353 713704539 752503108 69063573 49801582 268879880 1010375744 219947521 786180362 467858295 178435866 423208963 459444532 209510339 390819660 1024524962 670737529 560629501 966280238 868209912 42570425 457076377 17760223 766121419 770331886 843234843 464369059 595719630 226024411 813699488 370332855 1000480741 199385229 613030542 761047668 560573495 998274715 174346352 373713784 106421290 437129668 513528070 237862449 12786103 356286759 158764160 1057316706 778632140 370777211 604800444 769907592 845294250 774910988 490348682 933718226 49331436 385104028 73272817 999436797 658592461 474802699 800882483 47037757 13006974 432702652 362651409 1055193867 1032482324 862020704 191883462 525430575 204443763 130958790 919903566 321224682 862138240 442149876 812580862 458278649 785264184 418818924 735226515 604581712 699328212 26276122 329743742 1068325329 848220874 250682436 74518187 151327646 225002984 70088194 809490518 414710637 733388002 755697769 1007604933 129254704 924371560 199387398 433769273 1047562602 948660475 45062250 1014434408 815332415 364991620 223644751 1020951450 625345895 664477939 749569503 274122806 472896585 865013426 688265471 884410232 724514312 422139470 857026942 403327393 196276789 33423459 822546064 748460627 525264833 23470851 38637509 180423999 734274308 266675249 465819838 511615969 810393198 482420171 602278070 490137629 1045799920 804350779 751483940 783825603 711160321 26800348 969968425 506039255 399782900 920481705 218499131 1020450247 142480147 565621940 205936058 1071175804 567805597 767342138 865467587 258240664 635853720 565737181 322024779 455520641 297181899 544316230 384371340 438618230 381496036 627655101 262129331 460915973 1028391656 320102894 761636376 884620690 498291731 749338042 483472932 228031989 843113161 317006045 319913085 19348672 414774001 107657135 85667962 1071352286 191450723 166657181 877841198 964532825 167388673 785778487 496521822 14254670 990432112 984497365 811449968 580085202 80753198 289167098 808634299 148754168 438679400 668299951 341185198 27151869 136579664 297487294 360570297 57778461 147710186 622806999 1057173225 1001611381 856697413 349870528 386706254 846786252 860955069 474923334 474900338 317708794 282803248 854609416 465408238 142453117 62676384 684376638 297982580 486408086 51560362 433555936 571685529 906914660 156229048 213524319 372640060 29017620 240879836 506742739 340905956 95892776 291301056 1022452307 428332103 120127569 466035843 258369662 243738558 524492646 309752081 475465335 324383565 959178870 921294722 671579317 1031143947 569332035 376078167 479218956 349359520 857605983 609415208 633847054 726791456 562195172 175454599 79950756 458158754 736577495 10475921 135362988 97100670 1066515223 627574674 158932674 738591890 273854085 407634246 766329180 386723015 733439992 523247840 673148946 896301526 273287686 138535703 388906704 291787760 709753050 1030702385 445279369 153884717 110770831 753236077 424729725 740778367 1058486696 266773044 1062644041 65910191 746380593 790871478 347622805 508221366 432046633 610782742 128178096 980354043 276726191 220958646 799972088 402320064 381053632 55705331 514728268 969428693 301720118 379499747 849376506 728954862 869197204 458398786 1065423857 830970221 644992593 511108041 593799943 520278473 238893880 937528108 124052819 185736873 749343176 288993920 396775752 103446806 519900989 518718762 117190095 55955795 862758946 297734083 40277583 852329255 1053750296 266143857 1061711067 278690427 727440884 370465560 371345375 625171484 845710115 338471171 113985605 528443864 68777798 64650734 836571477 8187519 487561085 987876556 168569269 310583414 873042898 605915724 814751767 123035601 135389049 725306890 340799144 859952599 488309051 730800636 1009062229 291990696 953248229 321038839 286706596 332825165 453230723 483790148 310052247 893180320 243453657 135049899 761808949 710440209 308224027 472489170 912187254 339378274 1032671921 645560604 196793104 422336842 688236530 902791297 700212123 176953721 179227258 258458545 474879874 557480075 73254545 127812212 426636761 671475120 403524100 62455811 696277116 667460329 55490993 913990586 370517708 36254986 710165880 996009373 54065140 61152152 987550635 232385253 559123757 142310857 718913233 163395697 801125992 1055559757 1003278413 667238372 522024222 215286332 764801275 1069416227 1017324982 483856312 569656932 174339411 775340894 299705063 995575390 146160964 606227654 1016821664 11520115 310024771 298300016 140584078 1062896852 481196225 903834628 173674131 117980932 571269022 420989574 485388368 807459290 899282917 449992520 382829924 612328707 351931696 877136804 386347342 732356231 920748925 49759354 430394673 917128698 648752277 264780847 564540074 186836515 211998488 620445820 401864979 958825513 622241503 721298628 927077169 412750212 270934432 417605106 156974987 244559458 275094117 560463563 749120720 697228980 589548369 47116948 796706074 841424416 978078568 57967121 172557380 240147372 93833107 382833424 426323718 44746517 777642834 275410643 60521806 327525904 638403051 119664371 297245232 725591322 246376458 962332577 927488975 823926299 10433055 416854827 326541827 138722037 626103753 250816813 460192456 924091985 438454644 263389500 134269000 15949636 832814716 1070294433 390166295 590930787 902669267 819203869 745640865 183950667 1016284838 876583188 742051804 45434392 725613066 277028275 745111782 410391657 281102509 193382221 852410764 272493529 646377458 975589642 902686724 645936943 412486270 73187297 438436230 104567557 504548049 650425957 1007393961 520881002 578159204 844745711 910383430 859012974 801505277 94056496 1069065044 719104798 325124744 1012150213 18982451 266134358 59382479 567230882 401407333 743487340 205147550 617810736 598804084 75996266 213846911 216180600 6499767 182206924 903974772 468826658 487317857 2832922 285710895 42269426 552967132 188090664 137783595 766760177 749144666 24894996 205928440 707290604 739451338 435944421 80829604 801681004 842442060 293090388 550358200 576087097 977643019 607076227 367001285 1011711441 448640748 30555717 230581138 228187016 413017777 376776331 901435004 31435209 938433790 642627014 127089218 716320775 554422607 316400188 339515578 324149470 546069676 137902837 912782406 954744891 18869490 126821966 656347333 446979328 500431189 236512190 442167666 309249726 154387063 660655624 599013472 600357978 720748686 343333917 803801576 613235710 981887095 1050743836 672581453 1060129573 140947826 33970148 52721687 869641042 179062126 894309300 378958843 610040474 384017554 17772167 307820297 433155344 7145649 189275914 195135977 853552036 354737522 315061972 156370692 578778651 473703112 144254988 575331605 609165129 702627437 259350856 267397860 303448209 599653485 257717682 755968008 403939763 267919979 235605331 263499248 1028781521 600180031 55584656 359545824 58808935 845035680 427585592 176151776 191202362 987985 13591755 248123593 595122606 1032432717 331917694 314886578 425496391 80066570 272104267 1038478300 379909054 95978077 326981950 189406630 435781376 469046710 1034555390 710515721 53290234 843259551 893497793 807261644 354102825 979463699 716427975 657617836 1035438717 570683098 655438081 938644149 321759426 215508729 545659068 1052313972 937080970 703459164 991833373 1056187900 285325381 391670547 543507322 520277091 627912766 533297940 602533768 975133193 266546936 150322537 364184598 792259251 811566870 1039050060 890456711 680210349 694856561 826289948 434028768 195916484 272864483 658905630 164688362 825585642 80807908 376480558 919778634 811745325 877905646 152387131 109001261 300516368 591915002 106690999 440536153 673093803 25652001 555775504 609641386 917765679 937469496 492547307 37414219 1038396836 1037563509 425382204 1036200812 196853698 687341889 231829551 731433953 597445690 339216182 259507904 78587091 948410101 383362745 222115248 180597625 370490514 395335396 369299142 160384190 456893321 761867233 570490751 848193601 244498543 449735349 193431025 494330033 777091024 267124574 853036537 78369031 203698483 193742224 975892887 733779373 974432586 613026316 765915722 806101616 488246822 378556315 300964021 754711443 174545723 114292193 654606674 855726822 74154582 998275559 841108484 834132349 637306732 797011852 717418245 207590896 405447692 239099481 166444130 347483361 986734366 25060056 427903325 509430056 615415772 1062620695 812894723 911606387 69146307 1006355193 541985414 323376902 1154757 207737205 590763652 293605728 76825129 1067236698 503673900 685326190 565331143 596359737 807256505 424684259 15927789 668253676 360517738 766793326 1016205180 361908597 745541566 302153060 120936594 166614329 735307803 231476312 607897408 8343268 537762556 287766743 159899161 317778491 370660284 928639830 608540876 108241056 441733052 214658584 416076442 430951963 309548278 979596283 263592100 659658486 342187473 1061527421 933912236 1024853108 20830125 758575046 1061336050 535132168 702654027 716849757 807574316 787936273 313849648 909248300 1051516582 729975744 16478435 307541848 312485431 549671075 384401777 361687007 226482021 724494001 449577635 725022209 147892166 66215322 64246804 1025837262 18950639 442187263 501274276 8392925 874247546 303196161 542854557 26571803 1013780820 734911178 407244889 554842484 611743604 651500550 409736482 833012307 645497163 243932452 481354590 37180691 16772669 350063449 805622164 58431655 822546183 732567768 1009119905 621626890 666060468 262482997 429395493 124187050 145776858 397132113 767047594 1065113439 84984925 41791726 963790229 528836039 199021810 281039291 152946037 223492333 261566648 533764833 612231745 519743636 265291213 252119853 911296056 773189179 295078386 853341132 175231900 846627132 667920833 805792681 438678720 221305381 1043295955 546410730 55629930 810573615 179667692 766397177 877234049 218943022 366106133 342770540 259561046 772249614 90851690 676798836 486687029 559292843 72287711 546580188 779339791 1008229144 180503596 126465845 835227199 1356567 254168393 771417114 942018916 598317516 612485259 604354095 560200083 389815126 261225227 653774689 644761719 75511658 1052502211 816750112 142805248 726925040 319282556 492170179 699391551 38242909 807535977 91592765 566796762 894123197 501013019 571600550 882406731 633171424 104303864 1020233862 732708229 990124719 129768928 130127986 526133622 492432377 747370154 159146428 21768132 508324214 1065960722 959054715 20222334 430434130 1015572364 72818287 442291170 508257203 946627024 637328200 1039809073 805819496 193137056 668982260 73076860 245187287 510639471 22376827 799882793 317379813 462511226 652562892 440621912 522435835 732399502 473265217 1047655030 72715999 372431579 924913958 620388874 81148449 61588284 1059972018 487429168 593620778 311489898 391211726 791625850 666076420 561745243 620828838 562126987 1029245360 72140339 719439530 805840934 846524309 652166135 951529747 259438419 593593416 583245644 899295896 79638049 267869913 495383851 80164569 502848402 805698806 236792909 425720348 29069421 124075490 489590912 128092511 875540434 960858854 779531444 180805479 22233660 312659263 951376926 840507182 703407265 902048410 1047276430 525258346 1065666902 432222587 1057081137 470689982 768667448 150173770 858710289 990557417 282461101 215193983 477544416 262444568 996196287 500344121 346178624 71277816 390560067 992396767 440926836 744409960 364098754 606785668 269551690 879697649 218052880 534539244 228708395 856957453 494349836 989045498 87622834 389161076 845729378 557795696 501131688 631660893 164940174 34221912 13331614 823615749 474370627 730800900 217983058 671762892 21219812 139332927 444863595 61407730 950995451 426420837 253365031 703615007 242705825 161474560 834464248 456096605 1002178779 347054405 698354729 46481344 367140316 762387785 830179779 40175961 600462133 146877715 665134235 111517382 428353391 588437955 267817616 983294117 395538332 577713558 412287746 970604213 1001149963 315304557 721750234 784063426 1066606240 222706555 33544373 470114543 477615323 442224794 886199461 907023145 443333114 401485039 1063719536 673159476 333323576 583593808 327182905 152092231 737089843 91028493 1039628237 349193478 1024693767 116762505 707431646 913784796 880692020 355933878 364220108 490755920 943345962 244238760 1066713584 490772588 414691617 125325833 770851589 460450412 360641071 603723193 398399724 930044055 197771218 92669869 491829016 290610640 936806548 1009833259 19985615 312427670 338178201 112108357 610697835 832577242 740859697 40018951 859369498 585413366 783608956 401564236 505730316 45769951 843114278 685684812 370394210 727581983 712081345 405403323 981521951 421753574 1059363988 446156163 555581440 311749377 292493202 536131966 214830826 150917274 795195851 154714506 646914354 44689248 990763224 506679073 521604134 66557938 640634935 641221608 199814986 903025403 740902501 557599849 469147016 665969365 118247607 566645719 297951777 40886137 466944087 356958362 119459665 614371426 1044373241 492998523 795217001 333264732 492878738 816934284 888644455 613242741 636746356 636461089 498307067 510605355 575871347 219085868 470691138 517944842 863024890 463510389 411218148 96841480 647966099 400574855 1023565830 107590777 866173485 654657705 119504182 868198568 661720987 500188998 430070172 630571683 335593747 626290675 820269798 931008563 413853143 232393450 462986743 306858429 108167996 637236813 448191421 303187779 211280348 795980333 362961077 998530211 520585156 833498261 968909939 312913508 997651270 857482365 620178548 624027894 314565429 451473076 964078348 556985130 207696814 908005594 775290264 704658584 617865629 938682084 1029846917 1064510985 853780119 877646074 78118949 755153913 456208798 936499378 831110819 753143229 221663684 492991015 1004157990 626254247 152501575 560252364 138863754 298798743 636698479 92782536 972137387 411821856 217773517 1024257608 502699105 841652576 88408368 780197257 859160613 672195128 618303163 339115696 83079119 509909024 891646464 302003329 435770437 378039387 723876406 939226785 883968019 623688721 508913678 520005130 477109307 462622988 1064130334 311887214 220804517 701249485 41111783 7727073 464469733 328284001 952757276 334017113 107349625 586736292 732051891 930392276 715859332 873175763 6123065 360663720 660574688 464033968 177403499 734015140 259746470 526091382 214899740 459540416 234721089 2387442 290738337 445528537 1006281110 113045260 587475654 164027701 740014567 897824613 334477589 493093476 209096826 665745514 536151589 949968309 734386967 962920545 172541775 909566285 374839272 569956268 103599921 892642095 398404844 188010962 771587480 757402760 473300242 951680820 764740720 693983353 524905504 210336551 516369012 681091425 344401532 187254223 412622932 146806837 521998952 899248290 797963367 260515725 321170138 574826651 491060053 282605037 852951006 169287200 897281925 210383163 867807415 702062670 108052890 117222695 241564536 200964862 645512151 311658893 752177842 499661303 821084671 832151089 647100925 258089564 165508406 450299392 60167943 278764875 152347689 221850155 379706630 476716448 435521373 473717260 998428807 827931352 575370401 640797944 1046641243 659475150 66379296 422224553 213966198 792809150 589608224 583798945 977676854 630931214 42270566 445260399 103340552 295163336 747738330 710000049 216546657 436597665 905722897 228341835 274664468 9477809 1030375364 186645765 484735296 1024735215 284018312 778985057 368191861 589743176 950789994 861325990 544412563 575887173 286020019 736140141 703370695 680512440 28289348 969422302 339953829 773807343 686765056 408081032 408466079 630046996 783052041 726567249 622313843 901090923 1030294973 709761901 492653646 565988261 411397883 348783078 132773781 868250535 329514276 225330564 843702085 948765724 404428463 8294164 404066106 996701099 666158861 87091955 1055518502 1065723034 628178150 354732914 486234914 843267997 593288720 267243007 76184696 935020369 821764613 300929405 9800040 892912650 809505504 729146354 646830160 687291371 46569987 759520435 809943083 324334286 139065953 297985609 895859174 214862006 912765351 276788386 388014378 766772196 359853960 941879568 92383460 439344641 216796495 68379058 364768104 736684643 387097584 1066791716 499876619 847095584 214435794 815923700 969592414 688467322 580011925 870978448 947179305 838422563 834022637 168573250 138898414 318876887 600832522 893751344 324649491 424913189 88098232 865574217 551555663 540950919 796494776 908165086 1018260341 291286296 243573501 1056851497 1036228155 471525823 1049732150 150151742 299871118 139451582 427451007 801283692 65364728 819409123 77992768 9717793 430516601 933649860 1071545090 317562036 116919282 17896857 201380678 723735964 778166452 469370789 520862875 52530751 705081091 550542169 170660035 594568194 501005048 17977208 10933126 717796000 98884227 902397740 887377856 499497361 741601941 306604993 265071765 3849624 370480282 18367163 997835898 887691795 818817336 93897784 920570153 883314051 460885300 875609988 32884236 368469602 528802790 818746770 935446205 709866066 421673256 804395416 487114013 237618657 749400642 61420390 57347561 642784369 671360246 1019553522 399249145 574615097 1669618 144652410 20324431 724610028 612265613 277694897 747420795 990220911 124378167 434404868 787444071 843679412 380115535 789865423 336268780 326536312 256634862 895452458 359230606 397380838 611704925 195350721 565928333 321600611 1025250532 654328649 553944233 589056814 524626088 1032664902 828438125 685518254 373739539 918813620 120150563 1052777460 278051664 591146360 408200393 589748403 114674634 193388632 668967038 398495972 587040255 308408099 790393114 702920851 717666143 311955181 750424551 748927711 614081593 509809028 266721047 755264899 344157179 223274254 325786802 829152226 820616787 836279248 749668454 687702380 758913938 310781458 975722144 389799792 153792979 392069583 597334571 648503501 792950199 693320893 710001259 744456951 906430658 906027888 1008547766 451881860 438319655 996014681 683737733 227630381 50306656 654306725 209399430 373755399 583229718 886730066 444281264 168299658 362846546 381162296 56365866 20830144 913735297 707206508 543585120 209702010 739095178 660846193 1001076907 173702542 962466470 638480304 377455798 868696280 337705208 890376198 918113222 757664724 816183259 980787577 1006765768 904614137 606038449 1066573870 554167829 62581014 707908446 811299379 399200642 365989768 121335142 643425959 64371662 602807870 543080622 308408684 182866189 930098127 42440418 549213257 121114107 641577951 340252753 928755055 384102402 789246309 682234515 128384969 545827733 1054090588 683247563 823845999 769800826 54129722 47203229 160962567 47490572 795854901 467978792 721651435 628846087 850917100 1057300729 697692627 315503550 427934299 954364859 498444646 219894123 65623760 226735467 379159641 832710108 1054361240 1011976869 626494914 783689514 690177386 591287106 366534485 782961796 397320809 513951541 40597671 593405793 38651637 207853300 351247167 22322422 31722776 518873427 390414645 341057674 322647787 682363312 405479522 722049507 91374156 916540442 860655298 507452828 1066146082 403250819 587113656 231371555 824835902 426004854 979317160 749869124 1049647157 101933597 117475643 1017837424 216648189 455575130 226575319 8936658 628778050 827063113 988877922 385423784 770439530 686633635 571938521 704592088 1023423578 763310479 223374367 534421022 851014024 686052409 628735078 225924943 23553783 1038990933 25071452 110529692 812964181 750006908 896441418 119394888 328870196 316773457 335293919 825462164 453153005 812122615 667598972 886046303 842170920 558198959 111260178 1031210728 1007837832 729049572 409440920 194822243 474160256 79611280 206028612 350593519 239147391 1034144176 247827561 651385098 633590314 795417949 759115951 54343703 974418649 544651446 133750900 767936679 636192811 140519739 921192230 430494360 1061895191 114750498 939099624 439109586 237682516 901614934 885293502 384181443 739923507 719276528 423636287 573878407 1034887663 732352710 1015002492 1068183556 539890169 473391146 367307069 110213170 2285147 752651299 96504122 553874314 74429332 593754110 187166176 695966132 341473368 118208183 1054581405 289658320 42375117 795310791 328782680 685592039 488024951 666218990 850490804 13321185 173559978 665383988 756734940 588962245 226896592 821654933 201014991 9530050 1072172263 1072513487 637312471 400079882 421129866 1056041812 891178113 586800943 790474457 306490496 676726899 664795446 1053463096 670744304 83647587 473844780 717970910 77897929 1025962132 480951322 938753808 640140992 984690750 529344159 51553782 528228148 1068092591 119137230 831184048 498298139 621514997 234474604 741343040 1087381 65578301 63358655 219230750 182451807 896625510 754368060 950172487 150381970 514924454 387414164 939790256 300157455 474978475 823962960 409917839 919713867 1039143779 294975945 888820832 814946639 922289788 432961092 212857758 851083647 464116248 309198437 777190320 86497234 983884352 664047552 908704203 923785554 978536123 362052225 52177859 796353220 105761233 759527269 43305872 1010213052 377439544 681057140 822420944 53653611 606482154 472201661 383105963 852950470 377930076 881178312 144775563 443716129 507429849 494603266 772143310 600457536 59678980 498059224 691240609 157861315 953344795 810984835 543637683 804898995 881432840 581192001 903620196 320743464 159603999 281603504 804984878 930540863 913076558 732433621 815138857 336868126 493375459 91089550 305627877 881974059 700340152 54996374 803780470 801524868 121069194 458360844 535968918 612197513 411908474 213476285 803066387 100463668 693561481 284754889 531209260 534990515 963998517 825935361 96070827 1028964805 780099941 1016174914 910393602 683335394 792849516 1053903914 592237096 267234126 1008431286 36812098 542406026 763466507 65223281 251878460 1014961803 658668991 380022486 578512023 366535462 877588526 638345017 591892309 291587862 765230397 1017127498 257038649 862715134 988743155 34708260 685675805 25447782 608571715 4348556 376990795 846654804 1058750427 915775872 168372929 239735335 173191624 626815106 824763177 944435422 1039935468 285573598 750267946 659070673 583073044 181850292 683084068 1019687809 716571609 120578536 56782396 386279083 64394999 1042685898 1033593820 597905384 383569412 346940394 828579798 83286297 364570430 518038278 658135875 574924581 21142333 613094832 986774530 517263056 332931217 17909156 830134048 161995826 109493765 354171845 64259703 908795794 247149774 913265889 836421779 959634421 597590177 322806286 18126793 27911001 461421139 432926828 309022345 611730068 12698251 255416652 1013658259 413623556 48609989 392730711 577976585 786891565 1030667272 512923547 624395688 741523610 134761482 839799033 832500926 934656847 316833234 814169426 616361711 737750796 231112663 129067432 288955313 629956753 256813893 519258586 1028859137 592676409 636624807 38627034 144236622 840295686 940782604 794216251 550692420 718942884 535771354 185620414 784854742 131786889 973092182 739122325 118215142 487435859 705574038 313099975 333823866 915910991 59885958 417163667 412650089 7966588 371584920 19031268 260447083 153896901 449999049 81140861 470100115 454926737 542969761 110899571 763621577 355278289 1043321504 911324487 770716477 1064280472 777398010 1048982360 919986854 33818428 311483952 106512937 840198464 714117740 588614851 569022109 335108900 5041196 686057396 157295837 325706324 116475686 239232420 498825499 664723235 842606005 611998532 153409065 14466891 332897269 333093668 646095670 202672024 985413656 354520699 53151926 960610588 202166716 547585846 418360130 522187504 624760163 684178010 1047704154 649062911 174282468 981315368 854178559 1024664454 188964394 44055043 477207421 534865872 289216746 980749553 805627688 84394944 81097743 898690367 561014098 589659145 893797173 877332982 595231331 585077254 341393656 289131701 325149001 746381360 954277548 811038019 30854719 447037501 24795825 581422605 1063782296 1028580925 409256353 58731935 286465292 351351660 483460605 583969338 485203185 523505725 510396492 1055553839 412761758 560968813 629270078 3809079 1047320717 649645644 928850475 301644188 135878074 671586464 55257999 1040461558 518773885 285504579 760669552 381837837 188548377 356629966 858038616 211389930 296847452 445093662 169248759 266084793 351990771 294830100 867565855 125294552 962265801 80660797 599081912 805608490 63347655 739956971 40216325 23515235 316968292 206382757 112435026 139790821 528852291 311664769 205982120 111061572 657034998 569597119 382104441 461363353 620530153 331107157 639886947 542823114 691149739 527730533 1779519 369568475 815716382 334634891 47779533 770006065 659715664 187102905 984064636 723059543 519321351 866691768 469552959 286735937 970782271 53845029 158612853 741320600 945092672 83961175 363013705 1036466808 803709961 624449759 532732877 363561640 258190173 66001153 403993363 89331900 776232936 582209562 384348021 1068361535 152657525 383281773 496421550 179063732 42897948 118068853 836461673 240472123 114100987 157939037 822279806 739119422 11354311 972076381 487997781 495980801 32038906 638296572 941653981 581932428 412497542 240947239 659548733 848332408 421729099 991141204 747576662 217834790 209798810 977452973 231929663 53273355 598071581 130543627 167077347 141102383 1027538309 438342704 123795928 1062043428 1044517589 1038948833 454953985 424294961 723678340 437473760 264307233 447482350 546287870 138372104 13598414 114676842 1005204089 596453831 784539140 41853443 378519289 1043387607 250393752 647638353 416042081 671915555 212979952 268150180 1029882123 460117186 790025649 194491868 373357651 723067884 679887177 6052881 9367153 402338800 538062536 235506813 717491088 918040172 710229897 1013922441 389112940 237837565 734281159 673659418 292626229 274527426 573035927 472557001 934611771 196677861 667650304 790221309 253892253 556656861 642017671 901528515 155572236 162135395 29041095 499116278 418483617 885006967 519340615 879271067 381151225 346962064 1044127702 386307101 129188596 576918536 135774957 458473892 874448814 670566152 617298509 58768900 626779435 1043530541 957040869 720398858 134091039 979860951 668663041 39911429 133491774 758271953 728667978 63553 108597573 816698202 492460266 298474008 922937963 1044464482 762352189 995769946 509397712 144711624 767036264 336395565 967633304 351784948 689836932 218543552 988619193 511047895 241564854 645444333 474636057 750025289 267695835 685415983 733284214 8830312 687408236 24222869 607949152 785648590 232031822 17587755 532500305 666190433 461698039 37664310 166623383 273016501 1054526629 528560812 102032899 597073455 940478048 518393004 339702490 72685358 486929054 403422785 282641473 611080753 143963223 316603369 741637776 469419617 26897171 179281662 517286298 731439061 722174641 579842183 629683708 263417100 918599431 194550410 331946625 179473872 905555340 671210906 898044739 24802778 929611494 1067992419 476570009 822096912 1062311650 842971648 534298174 283412817 441146351 642887680 1028034114 1057173360 702817109 662683381 711482203 369956157 917837107 343556685 339465366 88186117 282106190 454775850 488210817 346946637 798083699 580355514 783395866 1050792549 233814245 649968331 38125960 90350963 670582655 982018108 33303778 266024545 245317347 1040182564 970330281 702163168 105379805 554401405 670146727 109125535 883475156 613475242 670803476 562807108 682594866 696010215 332494984 864497850 665822174 362222053 309211906 719716504 92845988 1009682980 655679747 626697786 658646420 970921894 632174359 922860471 1001606350 1057321110 539946610 883561888 470949762 427520049 783733096 927075872 535632791 1052765869 554203036 1063411469 262330792 478399590 1018581899 1059442960 1073423579 582372045 603371669 791581178 625807380 918681366 1046489306 670649103 740167461 580691131 439993349 1015318542 974806553 512388453 585208228 866483503 258779848 423615713 378375112 60131812 579983542 775447648 560063995 940481490 756815282 298663578 279583581 85440644 1050695965 31078114 565520325 991642984 63003012 395678803 421459876 925972442 926586595 935046757 604810424 373211082 315323268 822338262 424360162 825714715 870131151 241406981 729430130 574115556 754647500 202451655 845236805 356669276 406601968 1050178208 731968306 346400152 929148904 479470983 89371189 99276934 14786385 506366093 169405056 316519481 208026493 1046984646 526928063 373086528 934573249 1064849949 179315410 274692949 1007630813 462573092 752487092 337137221 440819545 438353953 484432529 648793670 351125081 18894798 582636312 394574648 782454960 689786185 310371604 695154575 364230160 1046065143 31797279 289221841 34971060 872397980 188694212 309394607 58871153 794945886 233195791 902274251 912311442 798033279 283865525 16436951 65436507 831544598 371551403 923570750 647002353 460677890 777952447 501446106 176158264 636321329 321205207 659142345 782023442 783608692 736232192 707029505 146187276 368331397 184798117 37465616 614425219 839843901 627786994 961530778 156974857 1048717901 262904794 566083249 46280940 947327537 137926487 831098935 987786129 588357708 51219751 149292063 344949355 12361289 1008377360 273593560 98861331 240462122 179885257 1014011903 505662970 1021407075 49861068 816793013 1027708647 1000451414 550333864 538012782 213206536 574209919 839633927 589461093 48264072 788163385 137093555 316685793 122989288 231917144 71072737 1016474038 696016504 460290052 290376353 253801808 255599157 318823981 502424451 422884002 735310951 343968789 893609968 808816146 572884573 1060812958 449599670 24603501 920902034 758873795 695210247 43042695 676459759 320632750 275488528 25357043 466071303 900843724 984694216 529840227 249957998 22870889 504296310 868422663 894353946 1050746152 994642413 517173113 1013153420 727347486 845012813 847087332 293000305 624539614 563016845 289881639 54588898 637315317 748091013 752702461 139662466 452582953 140800730 1029789211 762264908 526979862 339797985 517400485 655437286 1022562572 313724423 354445202 673422199 360941727 576731369 555855677 530355009 774287077 304631635 263175710 495774720 22099063 925548864 11525630 1052427506 303666653 575777354 268413321 215069672 325820080 314698294 969880509 53030635 738823511 643395117 1055146568 511138562 1058994759 625160057 696354382 142000819 419052490 883581133 392153470 1038592577 285938490 215337698 733244524 1048909721 110069974 310755284 625002970 818980713 921631450 38314407 137650229 484741496 28779530 571893986 727773152 979340912 82079902 873278914 954919710 1004407956 922853726 685976051 922006900 809236876 323519438 718096650 766043337 130057395 91477123 674168835 558403978 498651452 237723489 163230760 104062381 753515123 1052216256 972286572 505444938 1036926832 104903118 234076718 55313709 1031321556 21397644 1048537534 380202527 390811000 980026527 337840367 1027473851 627292809 764989105 211412505 573708254 454584945 562136772 780815636 403498330 858223634 848766675 285750088 268160989 440665431 446835434 612807053 345919913 119496759 941566080 265479956 34791348 890141079 324262732 663810689 417291820 969158751 730073291 715857799 893308531 648877399 789266608 841700074 247938355 103349627 469036412 474121781 641363544 569451627 391034859 209147482 686791392 23733795 37400560 412152126 862570426 140305796 849618911 723722710 616194840 357776984 791443778 546220571 679281308 569061169 624241114 145148359 450751272 344410377 614421200 818023537 664347284 512907319 893616792 760574266 556982891 605651117 684009129 936990695 281105450 713614310 394169121 826823206 943273739 119167772 599627688 623218651 293397292 420161668 317801267 500693484 988049676 91416544 948371393 871474510 805845051 1023883619 878076068 881121145 623991358 443021144 343858975 19526154 755459587 218678604 797975839 725499794 570098950 641596370 222946830 897727566 859103151 31954266 489435281 881480884 503298930 1053861516 933462169 360778390 941939419 509139593 880444408 912510653 672502380 678784970 886063377 479071567 218933203 597637996 64922990 855096328 944215594 1039400357 963982990 930598083 221841163 149580421 697870690 232468745 739784285 469057297 179712049 1042375318 125382846 27060572 20935170 598565401 650681914 516482716 797012057 182863718 60781209 953503723 125316313 5761159 88369754 765660285 617906978 449196943 641260503 882339355 148955295 222924245 192380623 156104297 407755465 249954745 313845962 829053455 793085886 794938544 742568260 491106651 365740202 126939792 969509021 241447161 427743345 1011675275 922043890 228137202 984214066 435972595 981452546 814305009 410728706 230098306 471534573 1011971614 769531987 1054999708 458631738 697633529 357903623 288888884 753536694 288618321 473404391 383478634 201030356 176009964 779189420 142033978 275281218 814298611 467570025 758237358 292780468 256495394 947287778 617624813 390441208 1073151013 56446159 903297939 390041805 994382804 102668391 714941264 322339442 858857764 992708055 882864819 162955631 518482779 1029873366 445360413 736307027 804266184 1055596493 275261245 182769464 326392098 427063603 727860781 37430621 547181876 69164985 800008435 186155052 21585210 447945152 33958913 64862974 321951806 790940493 573644447 673493833 337005078 878476489 967939787 814549833 140771200 147177044 578696475 82736973 15172217 960720722 632857683 240514078 107751914 291300492 967389305 846569324 69583879 385220561 348990380 919780595 81149690 118622575 834761270 176509421 447502538 287432419 533237027 460206222 965148678 648542386 573223560 503096980 850363576 312317585 1043115490 435649690 784443867 198598228 656614273 867880765 979339897 142730717 538974314 281717013 1047688101 53253977 556912892 230992481 504684066 774758006 193272193 25009599 524257728 20059984 703472858 58749707 860425648 492821848 18896425 110873059 973348838 1576524 356135470 173169949 1038353691 135870646 463503617 311642630 112411600 259629306 618788549 222499036 211848827 174296185 218757925 1061720144 483908484 117204113 233647123 972545853 502114568 931623984 904992022 620378179 979597661 869407372 347569600 166958910 649133473 25557729 913012507 908822592 166569604 28329135 636667107 320582821 614325747 847361527 437767391 170588381 656326677 113053809 802548334 466581628 692135261 524687449 233405551 732070121 286038371 42504326 228818490 1042321109 427020392 765469593 870873503 754952313 777465736 1053676534 96431725 332244899 352833025 16386596 242189278 775549948 664423000 269095662 386649374 402451900 595870923 851977120 783281629 987819836 110313632 32185450 280881544 669719355 962874077 943146496 795675381 682845200 460222259 571573683 892975369 362071753 865098701 239662031 550882291 807689763 471512889 325793313 384808780 779256658 588486987 16116184 129105909 298946535 340297901 397258714 1072446442 830064948 199673574 619568162 34030326 466990986 546456074 617776856 25860054 144964058 925916155 643050406 386799989 424961089 230272525 987146964 87411244 166827972 537796742 983669235 830390641 917370187 374520671 879099839 587720999 939240631 418078747 786432510 1062355789 828804824 142190134 607706410 238699032 565711854 984181902 311287275 330670987 836599664 346828071 1054240482 434318794 500097851 639960027 1045506470 54578708 324119017 562111754 840013425 259104602 784192247 455634633 15059584 793068858 94884112 27352112 171730170 476468635 325976156 635401352 851536435 240356187 240323801 41529535 728210458 741234801 835578296 986458234 473392519 508682329 706333726 826859025 629053495 948150655 30796669 662551058 94986382 658410415 744931747 728830669 942301673 352994663 437666136 914916559 899849532 992234001 634433321 639210485 536162169 698061599 372230651 994725165 612178534 184307908 1043950278 534437047 1012811252 715573201 11686961 233160872 941445751 1020764022 399743136 89744086 839939328 403169031 423391339 529313926 398824783 63273499 623685932 599197120 552538331 327977541 795990316 111504564 630324990 865829311 301374828 734929724 1063232778 13202116 418564251 1070708492 93826379 771200697 257515938 795708060 194132418 125421984 115446548 906516765 625166528 935257107 991431375 886347454 852288347 1032077408 409923454 471481700 834100872 993369147 531370153 822512008 951798798 300272100 845762500 286716100 158899228 955460836 123268310 34915760 462428240 75187883 981718164 962148157 326231318 719509778 717091182 228233849 663472206 968346508 100557534 232582627 1056816243 301021688 742292969 286350859 443267437 701661835 932567114 420111724 166902451 907496303 479675263 537520402 964630249 223402019 398373121 815237533 702362620 26316667 156017417 205473654 840530233 515753644 99048168 326731305 227247304 337056089 663048689 654652906 656531710 302675262 473637057 867132324 200734563 25913057 406873625 149159013 758209485 456319356 806699698 873144526 485783620 406345244 500542578 773720919 131986063 184732530 252089632 540640382 385386168 283599301 688576399 694969168 351520128 1045139003 680664856 293962999 118329071 892162 239453259 878055068 120549840 280037959 417803715 394174206 365239201 925719243 425474738 743760279 134151799 494653674 855163081 227295167 535020373 793337820 313505969 106832783 337737065 321271246 672022451 501064983 96703863 474762910 652505222 326484389 1068607666 477882644 1022059513 1030263856 26849280 339065691 422119742 806187026 905540931 688025199 871510426 527690305 580158305 8457425 515551968 934190145 370957921 603463792 1072300495 950158593 971647833 423395688 670512017 148642248 310889130 81514907 766799084 409331989 994019574 232876587 856455750 470336461 398944580 405726977 373026145 25839182 138105657 605964669 138861514 577956822 806431209 365759415 311927375 997377483 712166115 593975665 461287075 940440805 723024129 710713152 263566380 401229053 130933204 564251632 38270291 252869827 686373441 818650115 327741410 707852458 351043920 143018532 703826461 1055132239 318412991 247527809 702055188 366499690 774595055 72879501 874912564 855969786 659700415 45138757 687552872 864454415 176387908 159502017 365357294 609398986 410153114 767857350 361163808 60751038 370537832 616098428 559080845 7209581 721131469 963196214 583653666 1071135799 764587280 880888196 859009832 324362591 765650277 175714437 904823411 398413548 785509464 994883419 901081051 557278330 838434309 455295628 275254064 336991203 240223621 906371730 884072005 1031155137 664186100 367428032 905751593 450659129 17196569 281661889 415019656 384247008 983962802 548680032 863712968 1028133537 449957394 575124506 467747297 799086017 140951596 245518788 463402333 709340214 773570402 277057903 813184058 862131551 207051183 908141688 357408628 798121743 479872529 783722550 924103236 294157920 1036967549 864329554 779341891 838557582 580809092 854206050 508783696 964542398 328272810 894296727 230187557 358548815 331386784 841835632 865518218 63066267 923726604 782428101 18036257 169738819 902308110 58808983 945664526 10201787 482528864 73985855 755610416 109958973 155839695 87094605 381133418 202098993 836298326 775540595 488568336 577422950 519265778 578170796 278709767 421450018 11904798 969644710 905691756 617305048 409533265 364124035 333775997 74020224 629582613 426842640 135122249 245729490 147482182 609367503 380507543 1020698672 572502039 555751536 824540799 196289298 389580269 115664090 649097300 327627390 223721099 612034206 397300717 96002656 549532838 12112669 972841178 393305457 859105992 412350110 669398346 625368783 961919553 738600708 487611848 717492692 803755397 816918122 464689796 1026287095 816907930 622633315 1022306651 677931299 848829643 1060969747 851218745 520613016 851128510 508675651 923086043 752890763 925378312 693661932 824208050 852987172 1004225026 479514474 85977471 305422881 20098840 552417506 539726780 847606755 697871581 297530030 854714597 685697566 449830390 449984730 381281652 203571971 784404473 145620263 708001020 816605063 793597619 288321626 461619225 844720567 185014709 576751040 489502041 163466942 566658793 573326178 212033903 911233044 766873768 204272858 53942281 148076310 125323750 723120098 274668355 374395333 543621564 966377991 333627632 1028794111 753180384 896692905 810949386 434472264 333534122 242069578 293210392 763517106 857469067 289399490 269945927 21879728 668097544 1000638211 227481437 1034217377 581623391 398247811 689078190 261619760 1071259155 119748684 970684192 185305118 495268078 466523705 670040466 773201693 402804289 89427452 235058650 461294134 902166344 697237936 360201218 728800359 103136266 1031336004 842462284 1059627268 830676833 25460025 186843381 724252825 1002447222 996950386 466694158 284278797 848499766 108633935 316843766 66791106 179312503 560182389 445130179 803930262 219076764 1010735097 534708169 216891387 128297949 515001432 98912346 778193206 691800407 344199976 855781771 849879529 1025498796 291846831 434144795 546163326 1033364507 611987134 535295930 989693481 873048403 500514375 644762127 1065159157 515022892 543888814 234948439 641824012 784555053 206185510 563455832 852464010 86214842 517051621 811492827 941641928 614492117 835721090 933211128 90416044 269593093 831938193 301352735 966121601 173742290 174227671 107253676 277291565 975397183 880576696 220594612 250797841 823882422 1009343288 102390301 847811148 160438150 797432720 718882455 221082968 353675684 988318655 697426382 700724013 1033763055 767015407 528356810 162834104 426954795 594231913 841464839 385837165 495127639 94921162 547133638 963427110 487004189 557866692 293014435 600738287 14416798 128130570 302702534 695231666 913153492 411748952 639995995 114596510 585413097 533085450 63580816 995638619 1038516206 540407695 31879975 112448329 320118057 674415628 753559489 677896025 347154546 996780647 258021493 426974622 109697050 99733814 803661656 553645986 467072435 370970576 147925201 866183663 607206696 799529255 1008172026 417314322 683486399 246356595 293074509 178037701 385111702 292214600 7027540 713719724 471564211 309512914 668743046 836585696 880653788 123047059 266361068 1062596603 103194913 52512964 982695236 35361775 624750414 344565307 30056395 749986372 820122883 249097775 1068794416 90872147 374748394 756333887 322412207 559469977 337045960 64669399 224862719 135338878 148220726 872388846 447121444 557341665 523672534 294535694 424135218 298516054 934084901 293494509 620761421 924442934 651196940 124169147 557821657 969283426 708629628 256188249 1037675516 127078749 682022133 497254020 124219150 277188369 376313828 857423647 461544032 486614060 217915324 353727383 500895277 569649801 973267392 300380253 781854139 665597387 492231566 645026294 463864512 167178334 310806453 626490593 640650335 1003910044 292356963 63528893 214657517 40220417 692100582 6363093 231704687 197525471 979252225 884443212 688678992 511785816 701280480 187254334 362637141 943994567 991858226 1003271969 692664607 625857354 514137523 51620548 739583613 296375565 120785443 449311157 595587750 590352894 893416433 433874353 599822857 713991299 302258692 232223821 454338361 248296693 1072189060 319279787 814560809 454224912 628737548 721625928 706821043 1073106168 800041110 102437621 652012688 306851695 234585170 200553082 1016328535 305967810 154879162 177191403 464337128 462024148 673735740 770084625 378226680 442019654 240808391 832743592 556656080 843159066 511068734 334572034 405843373 94605937 700481356 127835299 1042981904 983105921 202769844 220174344 769804976 689829955 958343305 828742820 373908158 494265225 132783801 10650744 490088316 1065994495 994955910 41270535 663109786 709632800 574844840 457199691 820478050 605596635 170587848 1068098547 766605036 35922883 261004843 132755226 857727735 37787494 80368886 381452857 1039175002 445096501 940436544 217095643 286223249 934428613 962922137 231080525 1028780766 559746001 692712825 23516237 20226758 384605116 978603304 154061260 234867968 507750009 110429507 999104044 911990174 1026143851 778508043 22884940 25857806 576803657 165635731 928241491 589381817 161531829 713376997 800515746 225870910 550265032 154419385 223934580 172555950 714459884 764874106 863755179 51322343 322904238 391401275 269674667 660034425 743691958 386813953 21386130 496432459 289785418 431054849 125961106 617886662 329562009 465599258 703347361 688024898 955981087 896476733 360345573 630565556 462429199 713930342 89811732 366955296 576015778 374259265 310267640 472551195 682066379 383652858 161899356 869817727 635372384 304026047 876198318 845124815 817519765 623546406 628418159 464488210 146749064 390345318 505168899 1048926743 648873887 97317916 644696141 123494832 639959567 191988663 222682586 13141966 858218889 76436015 71232002 22892723 561216403 228434278 99006176 152775025 552015256 921842598 244675961 692987528 163183970 188043347 895941669 929601152 554845695 356400329 924908414 807548111 32386121 92400803 529842568 671808385 253883518 270720138 317260992 48595599 781641034 624225108 820701996 1001077744 998072896 137615610 228896379 335843153 534766768 267084329 754820321 78283222 317118442 623698680 1019214475 309900890 652842963 809912 661512110 508213347 252320 313301055 1006013104 1011338362 684724512 631844467 559002992 184532148 508658065 529944243 845988777 914714860 268089379 609068487 198404076 399802350 429452739 797260965 5470545 490190135 635800386 292423129 967431520 711088782 918672683 379719176 722445587 114914758 591690283 527397773 558666100 968975522 804144527 228435702 853643102 656496954 869231885 561836810 214355806 749243292 931024595 21722964 577471417 715641284 723094948 773885321 1056293082 768198119 308776165 396811479 930481231 484809669 856432630 1045414492 255238935 393801167 301314222 392456427 16049854 481251792 382661703 994980910 193383307 870202577 143125821 444628913 821331290 186253959 48028841 576514079 99959606 102574762 430428005 533417767 662256412 1023703810 210540571 506746383 705305837 716278957 832954802 381882397 629754415 577695415 552265348 646164833 521895932 39588933 181198648 770287347 801298843 243919704 513382987 595894239 620012969 68565207 346960816 572149909 96750983 816836681 181890094 342902607 133218443 289545039 736997533 737483064 999759507 617695973 67046647 140337280 669478638 68935085 645486948 698036085 1027419981 262872485 652761980 391663361 940433744 564646403 454454797 638776438 89201312 363728440 341720040 89745491 636324153 264403236 547463976 377226170 1014602109 915267033 288122384 675830857 90116520 648381193 635713280 629524087 502815998 678071515 371346844 180774062 499838335 304254095 812674050 383753482 577730269 48074423 668604899 562495457 287959942 549775898 48502462 335484157 440298731 328037919 535599284 931372419 633495718 600719056 116316861 932781501 1046046994 574543129 791146822 737418338 918377764 1015347185 364285544 46295992 859368036 591642367 186739060 321148393 190026396 587223164 582617500 114279472 1330638 795381750 70646782 945390911 558862695 940270459 151580574 421600712 1017555555 139440626 562523745 142984215 481611575 169302014 383266246 365283355 540401554 42732537 405434459 650378589 296234220 339667489 867926946 307801177 173497207 962186745 298605209 134320867 580200009 543221746 832880882 783522354 940118385 305343519 116408982 48615027 986474863 106195486 1047610340 386026132 570992520 1050121924 733546851 969564957 292511666 635184678 538818974 284782081 522914234 793072977 590705945 661788614 346796409 278660901 1014977181 899761821 218275383 279992925 454911225 1072066274 629972899 581212769 1011724598 407839233 7771222 701929129 286965840 599101192 364658066 330919961 289243499 20807494 690711412 580198982 364163238 550974398 979870126 607506702 635516405 110799041 364347311 149766529 772652684 603991228 963687171 277553746 948205522 72342189 719093395 400826320 955850525 207947093 456194058 1071449936 751646968 671352443 314197802 260329755 833312061 186747353 60766884 868866695 955159554 1012877549 594443685 414206079 280223905 195260773 135533160 503453431 928456838 14564200 750579819 432525763 777296391 434823700 82003323 903225290 448170069 829735171 923255795 252356318 330212884 333140410 682819109 236399982 818067063 464390271 358581697 252586717 306060634 60012430 1024633648 772868609 153535451 59025224 293580855 877865896 197852447 60983527 9821277 598380227 904014118 755808299 84523308 680776203 613738137 943163141 477175682 239493966 1043986272 776865769 143965529 28348317 23118793 167948694 428253345 366765696 185334948 584783035 724392566 585806535 408149560 387326195 580083176 1031580075 639620631 624840533 714302186 678201483 851332753 400895614 226206468 332042150 217698610 195752878 1001607439 607151152 821888774 695153630 232896793 66311773 435455577 963488874 66140542 108082547 543883581 482112454 875605074 1025229624 839415919 889084976 271866980 797149372 294038721 773604340 446089409 110602449 196229590 199272364 394382659 563051152 48685157 196665663 490020782 418696366 538467998 382779798 707627892 235460673 353923092 746518347 990237548 647005733 614036450 1013113081 984170033 989491602 341996330 313567983 340593800 204819405 683038736 761450032 602744249 1015122611 824992269 125682628 475026710 837285395 797608633 556282269 1179233 614123144 912314378 308830494 826346765 897143951 647693693 1036891772 612977516 926598612 624446159 117326052 1001989691 595631699 268567409 868779231 679748542 417906346 756114031 836237798 442822271 782114921 369468200 911972748 998028900 428192353 17946275 233943401 226748844 675544224 280353517 708128561 408494194 1041299947 902222294 35893197 300877978 1061817219 800938798 396555505 1005058677 565772918 185291415 844307491 253072099 370409555 934679440 375795396 10405617 213430774 407280181 968898637 750717222 702527957 278143798 898386782 865866144 327816972 804786768 343247113 933690394 601798541 627907037 721584753 956838183 386987575 384686900 627779380 188242725 823956021 775359460 967547636 349691991 995747121 759264804 1039199165 941909578 523343045 602061060 671789299 581445453 216758794 472388643 214571036 1030191895 975004821 34005059 1016225105 1072220784 244101836 1039164695 41523261 617331164 475775617 666236407 838822257 583073585 902620882 801380891 335782207 611890949 517002935 190296584 279984534 831753970 89305960 261065942 42334982 48583495 945412274 666981523 853636657 942501460 980371987 242517478 46796501 456035729 1024374319 890921707 881920156 717759292 339045749 827760613 129229057 1054020321 814665806 981755980 104377271 193902807 526676713 913745543 358727551 950086940 161227407 680201487 588483807 881129827 935839348 731084885 429700904 143075076 814367533 722426765 782460668 926420901 680899200 775585290 415995484 239903548 819352827 54062206 194926510 701497933 449260516 712687624 31518727 18278545 279653214 582416702 613749984 950287564 694756443 932785259 726878095 676636953 276160675 24217965 680467647 532495849 977029958 945745459 17381247 509462306 63096137 1009341152 244803784 782146859 287704489 800229266 759603263 1053037985 529505051 181116618 590521003 441944040 958174689 36112965 413406020 819677833 342350658 15410184 745165651 269148525 158949377 260051416 318296004 718595275 360112604 601789293 346862083 355593125 490572918 732768864 1041839060 1011187422 46907417 612217264 790157563 972207357 577018475 324924873 210237602 212860831 943614367 829559863 186838855 29986341 1025234417 857434416 462750039 167811702 362058755 994052114 281722281 1003086908 255587705 886311658 305415796 6146486 116168169 414277946 76683497 76945401 310839079 706432522 514662992 201267852 894245309 901921977 431069187 255734628 897667118 492035344 897373281 743873244 389797631 568681298 787200911 162621609 785446800 817483196 326535425 405469025 283020596 389969931 709422511 151666534 500271637 752068088 492312561 643836047 783284544 940559081 3275126 685233930 903911747 471318233 748768443 1044069870 693754938 221454674 987049138 740984483 402028138 839050723 976731902 515332388 311106906 1061141592 775558228 29682563 269042222 287193102 1018585391 60245485 1047203056 1014140768 1028978631 1042360305 761275648 88779026 352643667 139136995 681871721 552997559 553200419 341599059 979891887 84285951 256529549 503580541 1045651013 678328926 692857895 712410811 216324657 617777720 458002188 412713613 1061434503 1007121526 333333490 946637352 62230786 163095890 140379940 1016038353 871834245 28654862 102442099 807648279 774735559 767289129 335449509 543901614 861973359 158565848 803745264 106333377 631245254 664781942 987388571 535413491 866734313 576679083 325300878 616299281 284791122 914524923 585873636 299229351 1025037453 369898692 435066464 754338908 386041104 805568934 117243694 1056495604 720787537 621183767 232279681 326024932 830884774 4609623 664145319 732399608 672243233 356958506 435093022 551785138 399817440 112883301 649957659 302085200 4410800 239128460 813330523 323972514 368655749 578748616 52551210 677405132 191796172 909424380 360290195 513524177 307420691 484679294 822927983 146491187 651315136 332352280 967448571 802867639 304205765 470364743 987632388 123075064 465163928 671409659 654890587 500785068 833507633 951640596 511177745 1005300735 896634006 70962849 686066217 793104344 217474535 587854038 177406807 195426292 232425264 144596428 579519327 106759922 120031147 646444930 250309318 244552167 617174904 559345517 903414394 951120592 840277474 809946233 341842259 393054833 427936055 637535525 11092175 954282656 244303614 823737177 59392725 908889173 58221867 491749787 282875151 40391873 721489323 840779551 367932684 222450250 565800940 722173548 562500239 688802467 162642397 666800175 437386232 827676515 815215200 768242810 611224070 16935502 456969056 47329952 889009313 327754017 375581047 581443896 429318033 439796609 651755963 851507869 56317204 72934827 222916878 472866580 954966470 15117492 643840196 338114945 653927406 632942705 668857303 1011276796 474201016 975310630 324990491 634999279 754081830 142733596 78489648 12250925 676841548 167005194 33112073 904917584 783145164 1040429712 124644482 716437348 365918660 317014319 847170780 881196419 494234177 372090826 532267020 425096203 980085783 679554853 806852397 875471064 714615067 45756114 436656217 1031047299 481642596 45319151 96734045 17662972 196418430 208505656 364898410 375058249 1031283023 718756977 899808873 56341680 878831703 27880215 587212019 112695719 190857008 536516369 508277216 232155597 517198728 951599018 56982670 610089662 367540432 912869413 424226787 635294982 928412111 701454863 342393657 730578379 808994690 498375500 264145014 413372345 149354551 1063254295 103201920 1024648984 337658196 734377761 593598499 355726370 631140904 507670135 315461351 795065014 939742168 469115700 867396734 397687900 509490037 1054749745 186079710 801503953 446599675 368808997 412730421 995943442 473447212 830161288 550102351 899688950 575837127 243786228 21729211 900054418 19284568 852993893 760303585 208593106 1025131517 989618182 211399153 825744620 951584492 121028373 510969247 473456827 473431144 1002715400 613835900 666667475 434149266 39553915 684071733 157605191 273296769 441724460 725310718 343875984 208552761 748917466 512122840 145077978 323877000 233429662 123903024 988806988 508924198 961261111 445861602 804828960 1020291398 754514412 625806531 569994188 628885907 460288454 245225644 819290370 865636104 391729961 87866820 860288037 1012138892 574567136 891287440 1032669190 174421180 716477154 452895737 1048068366 50720356 236492228 41147863 770271276 816104195 226627705 256949663 530821832 686766374 183303810 566765993 244814077 714656618 1016269094 608702687 1040758327 885025261 91286430 1063442084 753783661 253861471 1042212786 736574591 636376564 898588557 680441894 871711906 199630962 855871292 1064713997 625189019 997347638 979792256 555066404 1015133320 135335103 98347307 351756691 29985206 245881948 725584796 1022274385 807947684 660390711 286807129 328468654 55980287 367832954 323956153 993499811 312679447 971430809 555121237 388791251 839852774 426306038 899815823 622933386 458392824 752067516 1027526722 954585548 503940840 605792973 464706772 754129963 96541422 739830841 945283321 1042361449 1006800133 1057331577 853120059 331415738 261952688 537256451 425838261 51122544 836099520 1034505092 172680642 907968955 849833633 782836903 278387184 407691437 6875125 762842810 646216210 199519489 164953992 278384782 312939896 54098620 376073473 643333748 337789986 280904340 97375964 645937856 597925821 777522016 29192233 816155281 429569018 767912735 695301922 341666736 349411130 669759993 458914116 471927304 282424366 505562733 624211183 1030055626 958762929 527269046 434262938 251488291 116637675 58750646 586184560 596423377 1007611581 284212129 352262265 230369943 750539274 605235937 707158860 813300825 794898821 589258516 124204730 170833810 1010057454 458071295 833830522 394026107 492511955 457102262 874851269 1061907947 696427703 796414256 447377630 146999723 630708156 432452237 528439034 757433500 435271565 432181530 84216937 643295941 710799619 42793386 787864681 739416551 706458649 840184809 445146303 779891683 476731087 259156823 162160614 542492568 1022737680 950229007 279906325 323870054 172924007 424301063 333102592 890015599 1064246552 178284595 34469228 228684427 240246768 71634928 111966312 374954615 255962468 576017553 1065018505 835838970 910010245 1015186729 64988567 564056665 674119679 186618757 631563787 642422788 740014032 236168563 233399724 997887454 247869938 590296870 272867218 1068906384 703580796 546018589 879576698 1031494845 82572768 816530192 699122415 43267534 854483421 75493919 333301307 747278117 732169565 571336091 433297555 536669353 900094289 896911777 667379577 102006222 927319148 969869406 627798337 1004386244 637797261 617882095 303051750 1045559633 83346013 853071576 693958131 198716812 674472992 187589621 78254898 610249572 312086544 157890175 406765679 298909155 562068418 1059824036 310718478 891171948 618542725 896415500 99121703 106753927 541022442 920771383 329671172 410305746 782200476 886405769 611212278 409822941 250016613 1001276524 809516087 250165565 376203285 377162014 810956973 473901917 871518544 914312696 790501508 738206244 525952697 753687711 380456515 41241944 132349007 238564103 183735048 138790656 36820512 1053148931 38751587 616796364 693111224 722336913 998055733 654454132 238678961 480027327 108277043 752322531 338120030 952495236 301405519 257090693 295423371 972781795 698091775 942282909 890717724 776565313 396176707 320285413 283074803 66998769 720055983 415629025 767721733 1061617230 639962984 944201855 613597329 823388807 1033056531 32457008 89846241 729997305 390366027 909002439 932404588 955119643 165792282 600363245 488644201 502607575 261777276 717618354 259874447 535665148 226411931 802224243 409819162 216313841 364574260 168517539 521053435 795003855 877376691 350717485 823377473 67496171 228577301 447036537 450956224 519378299 469256219 944819192 176613000 1008039736 1061029870 310640431 89209889 76455703 165814220 634224758 481402622 520096141 621407714 953480498 626127599 807312772 320613810 539090395 815500160 426511154 368408768 160476658 157450905 385167034 931535698 991541815 611293436 297066042 104213239 609605272 75343231 634382940 169799879 815854929 226416695 657603090 197121823 308985271 373640142 1032859051 176653533 575597298 717978305 556445592 234208894 335425516 1038027100 823621246 291729234 68422210 1047656927 961324832 908471606 188268001 902175112 930156891 266304606 868590732 791989974 753968610 764562934 726042713 341438452 86618366 733044163 1032804371 867053969 610963164 711551570 323744445 250165508 125345349 345348121 454180688 841024902 372482658 62402773 1003708025 259453669 954464822 493608206 2233559 602715673 160284692 36182811 134115793 293517261 517636692 971760894 1054993685 370640829 116665842 1006202693 857178173 957928909 1805480 1017593530 460621751 262188453 917552892 1036679182 291651293 982185373 847726382 369649920 111655406 257069357 534990327 324799922 262781719 625810615 447682519 980479604 631603959 774977926 985662456 951468145 691525675 415880435 291662656 860985217 1046464357 251840832 399365271 66853748 585353399 652815368 293184060 577472112 275050917 103691477 809006954 821570201 288594232 1032717156 382418641 651636654 189686145 285550964 565535473 319396933 171095692 120962936 970436849 929850417 890578847 846386142 12748398 1045569871 726432915 259244981 518907300 1007284969 772874031 558190132 229850096 899567165 211305290 814171563 963829080 247686286 133626235 305788542 588679591 913222166 467379421 130850175 506414088 432544177 832434332 19483559 479236593 634243979 473410148 447940745 317260705 642467877 664281516 469067917 248196288 697258958 14124595 24364673 152412560 123878924 3227500 983325145 385179494 1003981807 773486564 415603918 741076045 903017798 622065151 917298402 915254777 947147171 45736892 737327718 377871105 960007845 374664689 926633496 649362838 486707175 570355277 775308198 904200012 585300857 400849253 831650268 658696829 305573482 279137304 125823918 916365905 839927018 154191359 750721568 905139211 897646713 55861160 566534259 946352722 174026417 883976297 1014632886 417905046 875784400 965670427 700532323 981932739 560986172 449636966 859723623 926251173 193804698 952094008 455467872 628089977 392618755 34559699 213043379 775876752 832634318 214391252 914479104 755757553 645146626 861526296 721345658 1049314773 48817314 766088580 785493443 880450391 82928300 237436322 697238533 979925554 856604755 63422703 304987849 816188286 78954169 134439930 659729014 901800571 63605753 284507250 266529389 565600263 243576610 418148930 254701191 508746351 536522705 376778894 675775745 571367851 369333780 621481292 116447975 324662810 207647173 483038455 162698462 113115536 104586378 1026727512 774027581 136443875 765311231 484745775 166355197 64415441 161090850 744274466 921916991 884834912 554934709 288309042 638402079 972437595 26179257 424323508 309397928 457287523 587702747 991248891 49499291 1070220215 202362690 554569101 614872476 1011731767 806083637 1010700782 358836530 379865045 628264326 745949835 942941076 676080021 475915855 957687437 118514563 179651484 616515914 969885764 759820769 522967160 576041286 207407853 50316497 1058849956 824153996 655642021 827839185 970865722 465735371 914805927 551532278 773277446 590058241 292704153 1036506299 311749344 48598327 890061013 657279114 1048005373 9420093 656449404 61991431 1014506574 495632091 920005169 186265788 924249364 904449240 310855262 317275844 440698941 173967221 826660093 940821828 440450985 426962699 548563473 448687200 470883555 179143600 865602627 185950614 50131889 811400135 269734583 52232067 341727695 829380012 531829879 927110731 588519234 635911990 79364033 563789377 231940833 92766757 929625109 537852099 570882557 359880670 346443625 623628637 493167195 870892239 984567565 216583862 299472682 577931694 55933247 461281610 402926951 419554486 707920142 349399748 405063524 787599787 1004046965 64806027 858820011 489413028 296573430 130670685 272735489 1015983057 45433312 834478742 660601267 570652165 448945602 775820722 249756220 137320422 1061059387 1056071952 225419040 374475304 167917740 66954609 124514491 64781871 983907944 856473650 263032544 870454279 173150817 10317580 489509842 445533581 391090696 108646493 566390232 18357809 943847451 677982526 913210607 79563418 470318458 441992596 540299522 904421195 549239508 847623538 572733841 972678117 9616165 103500504 208117759 568157792 773519158 201141703 397042458 673005717 650361660 922456746 804202385 377338336 209926679 498258304 577104876 656728997 421859474 820244640 896335869 364244033 806820785 180154668 597316685 21110946 454361553 621811394 1048243356 586445429 451221968 669209837 79325372 1071484732 707291657 227836144 1053310754 268737530 141350433 455042082 818845979 581095500 403586808 301175112 273311879 549197827 838320799 689660585 961764374 531210752 379714028 498754587 579670166 839787183 1026663831 337119725 537557343 3412549 1066061142 904542922 228434973 173829032 11843043 41145207 642495592 99980752 915088310 841393818 22926868 506469678 831048712 33640372 824031786 156907333 887633654 124196840 337353706 670099839 151719625 673016344 642428892 725789 187638146 531323614 442068726 816930289 207293028 540296313 18037069 277638585 193022844 629584462 365471019 233264973 19675975 795970184 142990477 433663086 880186609 740366381 113083440 504358780 659514948 342047459 255330549 157412654 772562219 735271916 1050213370 213364037 534352719 1042259028 614359305 66846689 762231219 349205933 334227146 101716203 290757963 869753820 256439378 557481601 547633796 895328414 965094957 1034653406 906054713 49673496 456419390 142160048 562340417 821636642 617967333 301165204 791602541 514173476 423807481 906091179 1021311340 646340886 256367289 24173815 556122354 779394568 784630761 682286242 673896667 511863419 1073494320 547089860 314815502 1020876189 439594265 149334273 861211996 33400574 984951309 333518071 678126465 134416094 49668635 238859994 370741350 800463956 66310805 190690477 178304881 734541747 610218240 774386650 738981578 981495426 509725434 503269378 707046276 604708156 208529927 362182247 851030919 46194921 160901682 464438217 439426111 612267435 578904822 11017852 1064152247 49270126 1007068943 501705117 1034695090 894391478 359350660 924659183 87459571 288274630 858053289 246635486 730420028 460300407 85072538 467932697 614444655 1047359541 964265566 3616522 777536122 601733817 697061026 941640431 242123001 377921249 829369542 725109980 140284561 202317286 737487679 902442906 269281572 129527891 382706763 276832253 613870409 160406655 975232127 1000129072 1037723450 702610222 931379792 893877540 164942116 201736717 282723014 735560189 894424964 205045517 188749668 906469242 282888540 224765598 125796732 823207049 664885379 824160213 529221297 354283690 813205018 1025639625 428892688 836811681 1046070790 414410492 715593377 311086563 771869135 158055305 741215633 235133853 829680423 421339778 1058442481 637291746 488625685 860425303 108576686 579435343 143725013 300571866 161842033 423958490 471277806 719194261 113498815 591050285 511642910 610743564 227212154 112298884 418382825 179599476 125846936 244638593 1031661011 147561097 245193891 108968712 706736485 441574672 725842725 908541982 414565844 987871138 137143393 375097541 668087598 806590790 257603939 706721571 300596099 130423614 19392345 238622394 633382208 900519510 575782234 656582906 634305158 1010460236 545876860 1042185950 135677243 984532459 996443299 883620439 211438993 172484487 228480690 743185661 367065409 375547644 108397678 858585042 1030555935 288666877 487889648 171286615 661699612 191066053 238804942 159311321 502835375 390944377 573144906 757117927 2351412 250241845 24151239 975518253 238359434 280228392 245466091 428947576 436219995 393762673 305066063 759602266 397232618 987238381 119576737 462392079 342254012 1007998593 1013117236 412043290 271994119 909763890 478479472 702121543 710002677 440224652 266870059 956780794 425038140 638451013 805670535 878343078 531022945 398310391 716386640 773542765 195601300 718206614 266415409 341237135 343210961 402622282 329367032 767328927 309570283 331802768 182201772 533636722 877885343 669651667 789961119 570047278 275529328 872881756 632192210 887037307 42974841 779757745 591723738 1039651158 228216353 611915965 191666005 374042420 5340957 975985096 360571745 258572797 896224194 733299525 124898400 966104487 975330933 486726038 335597629 998628872 647419838 730867519 949840306 587587487 116579275 348283237 926138869 319960712 433579442 123944317 893475188 665331553 310657797 256684469 465660746 278468079 516309612 931255096 575765020 936332692 152123611 890021626 498274243 357165683 527800592 802377602 1005700590 599568824 6204125 609352446 260199379 255786757 522371561 153490198 913427809 924699515 1024378884 242837888 571583201 638610159 1038276587 179419677 48573008 7275911 722810074 162662337 168454151 987587870 919020997 770614574 262641421 937917895 660713610 619254734 755699483 810783909 175716250 314740980 937251008 657857370 992167142 938858157 364062910 215595651 1004827520 588445753 826894598 35187097 905346972 785604862 811372116 382064153 889983736 128413537 730497782 270548051 490506127 901434630 638774534 315622751 82748480 852699735 592156035 449288980 291127799 1050894920 38135880 390024319 1007172633 406765273 629918298 789350109 43399365 378385688 626564315 1011338646 235661947 313690770 908062702 803762583 848993053 780319381 681158436 1022689373 359885935 868427301 994540515 840985754 825705911 283829634 590568464 373030702 455849133 757870678 620670487 838458407 474845937 352505448 548765176 593419000 975842026 411860891 979498331 235102003 1016272838 471826101 544976350 624772445 130798071 353382143 843873539 996733981 1059484276 1020239969 288293135 623257403 842169384 728285751 204864765 14830033 1052064896 244928656 362801130 884599211 297274962 19856627 865645522 942771802 736506163 104653955 418146999 520595119 155896758 300543778 397318965 952779444 879140571 316221241 619153150 193556366 724751049 253396691 562040402 623165609 370203253 639345417 60905517 316643169 267408900 850794032 1030829330 1027059689 820795168 550732685 971949059 956155338 625145917 513082660 826071428 212739547 73219487 21757750 671255830 555291126 87357041 453597201 360439163 853264060 808375451 632459077 307595297 90847158 762463875 972476138 764598683 132122583 242837336 840748976 352717399 1052220889 502574309 728164455 208398849 421793143 60950279 707768314 131715344 737864314 106201915 246312213 199804107 500250748 515138533 848345764 260690425 48685648 15560417 373342607 182383355 972408799 776688566 475240626 392839731 307886943 141257508 315009227 61582366 281019328 394603806 682343431 810666046 194212044 938372224 579193225 1002291989 148902487 765489966 591804640 702095540 113163747 274908671 4496394 708686850 119532716 1058457493 191083979 344448883 317633383 193253520 459992927 610367364 942669003 904713293 37389080 375471343 448666378 172046048 144563324 728495366 571622534 412026121 588181823 83560263 394318055 989167721 472486215 692253965 797102206 736357980 477053468 654469658 219950144 1067737310 135647311 18214257 835164304 789078864 339106084 284488981 229220386 49643090 609433100 945232837 821343838 937276169 585522632 259046096 12530101 956133205 253792030 83656185 591547630 286460902 888167741 712857629 696071018 510147096 160813396 443408367 448627085 246437406 384476728 414059709 162472261 903371721 392095545 939303742 479381899 982316538 453182085 469791979 96998181 943334204 128738445 690624951 299085974 198048664 204275356 409607389 81303554 270799406 505154166 504331586 137138860 149449935 127392923 13352946 585933110 929221361 159067942 487958160 839506764 163208543 398098030 873560179 825661313 623535174 377049700 288802373 692102137 959809218 32916572 506671344 452546156 979882911 1012358440 288879398 437836981 355985779 782213266 450397874 134363055 633142420 33924743 492737074 1027768378 532338349 748431547 1004475748 459289407 440715630 106876148 492815348 105206552 583708506 889709115 257191138 225052545 718228101 940668665 133026683 976489310 506359388 856802195 716664931 221293142 909845806 176859176 903733524 35964385 713273112 439071821 600853594 1017081889 343469010 879719517 745346745 520735745 564395280 652082187 281184531 141213743 230789043 175608579 96669029 420997078 605692129 82711406 784450669 214757372 384221416 983920276 161212353 158322536 568068630 254385708 384088413 727453682 267510174 158889592 897276341 843496736 596315719 779438423 965091657 534355682 424129711 103595117 329934053 4420121 264664099 526867044 934901986 977489573 380572428 795530210 767245875 942269665 692667292 992907843 288651621 308726263 827532281 209709143 536556996 485255059 552328152 205615418 1014500141 6796805 428858824 417037975 588384103 567420452 526458115 972646746 881679975 120493206 414552058 259438236 305327224 175732597 318690852 11019503 162805705 41430982 158145789 732415816 56438283 662852091 24375718 492889528 527995405 653957376 1063284467 904877823 88705502 520485969 401533995 270518965 726315413 474999470 984773293 427104421 647484391 823711724 840901664 61580638 1070293702 537489886 115495724 519177477 59299810 590971001 316384942 4727899 303577799 807422466 368191434 968068955 701588789 926491074 789351360 94030391 383670873 325359131 673629443 217625348 548356709 610077665 293906121 541259244 82086705 954880292 1039829498 376946914 984758077 125272589 896065747 999129881 840589623 668481172 798263427 863778601 508251344 1887783 977198533 870075524 640883003 411536665 355563996 828665924 1013469427 115041753 774120712 364968539 446375258 651510606 784442107 189891226 162614487 549297086 540689010 2624816 241009542 1009774144 901340531 134385459 1043880628 858415880 770007731 88597692 1047835870 914000415 150020380 173524704 272466460 131391580 923897424 433287336 986380341 779199546 242328768 799745131 807026919 360318826 141244455 700301560 1594941 790581204 195156727 849123926 327830248 606726758 895599122 745815331 254295677 952849770 355354486 80123607 273169402 990023796 920498555 615698461 910407326 167905848 10895455 858637500 953843123 631826951 658770873 75669163 89487402 196897121 190586377 412134881 825973716 337697779 798540463 239264505 950338680 856729927 745881445 276907960 37033206 314194877 146717990 337794535 554139706 1032495584 915641357 467927227 782119307 981886812 847612302 245508844 344985675 59497129 471823697 488699747 239910308 391026427 904497133 982751819 205570208 371269838 835409690 327639100 802460673 710932858 960982420 332388458 42509943 945058813 315335448 92583990 330144923 951218966 727649696 1028636650 154879355 810299121 1045384535 598270542 999741173 1011727041 644857262 747368228 1030328605 676889727 949435795 377744526 136800862 1015080913 385736359 518826115 66105415 197880102 480254188 523309929 231063517 369830146 548846544 699683705 989822307 487921817 534329811 274974222 709993364 124884098 503897797 391133068 376735472 200210736 331881378 490582314 840122198 1036684438 1024409204 357234371 254695999 693342597 401729666 67269700 33281902 120275124 171465431 779433733 129561629 406501989 342784764 166734145 586476494 1032897175 667566233 992565165 874497190 170288861 38454604 37015478 42576867 117339382 1037857654 272965116 443442077 583130559 250678584 783086054 119692154 918279357 876057763 15769647 279872788 271176962 328262225 766050804 797310399 508772272 827479407 887194966 157950517 457667380 463314583 653482081 660016752 94034594 803400096 627940078 130873486 360392657 860617422 368278006 264468324 427211192 926899581 754868866 520941527 889760337 816757229 978401845 849373087 225263394 942718367 561546385 718074915 507451191 943739156 792087194 997554849 957241316 1066523526 469325636 353132804 724294560 1058960760 359215196 289118237 457249619 199872062 809081111 794966252 638939940 516565780 437314802 175837492 266612318 334180975 955634436 277602760 758280258 196425969 367259265 771187152 542637996 412198844 804098469 201971698 359722648 896831740 47014234 729197829 52077619 843533360 292768363 368453491 54266875 371910056 758918583 282561744 928220699 43810177 390048511 550261443 247667967 925119974 658952403 487901908 1012362370 914001256 842941157 388217423 35653212 189334432 612157389 679900489 107568408 75994443 281264324 801613263 863659702 1055561643 958298302 228620746 794895032 674866411 282936427 1053790532 841740876 192353037 143777321 363006403 139234247 84072067 141467387 829927314 180702981 443496331 12825678 467572289 166158384 92609392 394290786 332163018 581723246 909419325 950782462 337060120 441403277 831622350 550093645 709106206 1060615623 307325133 406405467 819869338 1046042068 93727342 13329434 83412064 593516112 217141214 293905639 954582926 184551912 888199744 683633743 654191284 434361874 686779341 807376122 1055452554 336224647 507728883 1001094799 158155845 828084398 927376046 326649460 46171223 972135641 1044136961 18930969 606730702 36144447 970973724 360413789 292759232 604749806 452658443 260315791 462170828 962027573 828544706 88703415 80082679 648642501 404608585 241334015 1037001793 775960165 992842704 230747408 620348849 381825056 138652648 471139851 645352002 836926007 351610675 286120626 680399671 1014701646 740991982 624912418 317631710 695942384 102200403 532915614 147719138 798894994 388032954 1026796264 133363316 975620021 845403374 550595391 796146423 308753169 222211064 644332924 6596213 496048632 98044794 847847218 215892556 121126579 156151096 401836028 942692349 982880519 60896461 531077989 550921209 242428897 73867941 996334609 421148832 676626356 602688175 185203135 1011448349 53233058 166452102 671424490 1015356956 470500512 80172958 371651448 808404701 728678700 345665360 1003626496 234775651 116072849 207501176 150102803 1042405702 980030108 347239771 523225581 882530343 426966810 295036228 796618320 822074363 1066183823 485716799 403339148 564139925 655192724 337294340 966061747 59702205 587192492 23254557 903514310 919015693 178701322 503236041 515946352 571044001 705786950 320282921 911287703 564443439 686038818 22466399 494151611 146495608 434575886 169178685 658658259 884119146 862356211 280422373 252333113 891545648 411371691 1010135083 710841073 488809692 1006570092 263486125 612254205 398241970 227082794 640965295 350260359 803014909 355411160 387486884 616334672 236222517 171494146 66181973 837856718 341986614 150627868 498399388 343200044 706947190 849487177 64564234 51366835 11285156 629793495 169309778 1000509287 940029004 33639489 115992144 166770888 989230904 80126867 197276010 717037346 1012284118 927876258 631742579 233256601 985820162 402666630 287471367 928620118 163373057 562998979 58322838 538272856 165721972 591567212 269342496 695982838 1055797595 741695622 254631451 30089554 848268192 834316590 555418056 33119227 268287309 656469501 740916728 999235178 470234008 344468588 124735586 318573373 349277530 986452763 517698550 579698965 139529320 439028276 442799777 969470415 516020752 270591637 494507354 9503811 402910628 890192772 681415637 946977039 282932456 738670744 384901889 1060240942 678227730 162287739 379661871 340411234 651099942 107787643 566010773 406677779 1030085283 469615318 499449554 82589369 160429581 461408867 740038477 340680222 569176667 364409003 546567524 1015194476 148274898 617198585 215918938 518079476 199417721 1027439483 769803377 434736856 282217880 897107817 459101617 103350853 517249840 548091321 743602851 219621242 1018422389 1018351649 546544223 753839816 166314587 730812338 899758616 382692995 524277832 438544426 947271935 408471763 140214174 204352795 221584182 724807164 412903345 451930729 1049510183 416067811 549211492 576548995 39599257 612733692 282329323 793773855 260608329 394099933 32803294 1035988766 359596887 743221078 256673892 914220714 685170190 654861504 80960100 431989526 334433541 228220077 77431916 92998778 301335247 1007810163 620883692 785762389 427561309 79770800 288560477 146666085 687234378 999830675 982563729 1062439232 178744901 51404977 364322802 785811026 789988996 693015500 9484195 472069073 1004969839 673897561 277117293 444614813 508838448 693947804 816102494 61154023 784000296 626018014 395176288 350144928 126517369 73245122 221978019 758788949 504516807 77830240 652086638 208209146 137597460 275830730 974811656 45935882 846108147 478564069 642233948 815375706 639914392 117618761 629235378 969512663 618911641 541737947 828257088 147644207 889938013 828878969 903944547 183370979 831175672 226724331 45932501 648417391 379598445 168109457 785590479 991288179 254143525 551839831 190627208 450958909 955549632 680992866 457049460 129234542 1048876118 1020667938 322413435 151259369 622218307 981451161 296463880 287579937 26553883 92935237 486786643 531307439 397618255 54408344 530223793 349914731 383760104 100490672 207589672 973575858 931038814 995122685 847170751 473328391 449105699 649661220 159972877 284223545 548890798 667418797 784873590 918946640 591818345 172600215 798181138 91505840 768147204 659020878 819810118 546258531 991489268 915953603 687159613 424547 705793529 420451871 19922064 190961450 1063816746 821041495 842140991 138384183 1026060934 421781890 805418557 877401993 824479677 338033662 950262372 693615300 75975428 810281080 42731220 1060533334 772613222 986352318 420740908 984619072 1057171599 485691770 273272476 972305169 446309802 842288237 809212357 79536431 39041799 831433508 167154103 721081515 688899218 656265709 537439455 789805397 959585034 628346545 838259803 600108987 331482345 854022112 240637609 740372895 177648304 377126550 959012389 929501598 113488577 762990466 609740851 554902960 570534503 681836770 538847634 468419972 287313243 861220752 420726549 567121656 739912579 929090895 315918751 816584492 344921253 685077886 416402887 369454026 824646855 246501475 212389651 214728242 548541689 188709630 225253445 481329084 450576851 420517002 1025087626 351137069 285396811 583526596 305589336 798963866 786511512 212376053 855374576 612524420 124198426 274276332 899229590 609944890 965991359 1001263590 56727245 24167204 789610383 615668121 112004627 210984128 77266449 516530046 506349942 892539344 360000244 544840116 938020596 224999398 821532352 1036771371 233576403 978690576 698167284 258117187 180909694 419264433 349436520 718635533 555808871 283326840 456255357 580133392 963324964 1022077247 865569086 101396724 219407596 153150952 62412518 891906791 450187280 558450413 935720798 1004926153 261837099 1010178591 717314316 62438327 966432796 978091159 53047016 452568890 825709003 223569510 591083060 828979399 727606258 66085620 732822545 1064853322 700725308 922631188 833294517 107573039 201275090 189820900 821093591 1001246233 910462469 826343589 723614663 13937687 951098946 418057658 123548333 1032597477 324568944 1012592539 771183255 1025903630 346126129 121840745 308192100 92801112 161853579 226517697 731403883 725035570 746208511 189091555 667968421 800903622 827678443 659754945 591828660 157419921 215706280 196160862 969226326 979770479 633803379 483887965 113944315 110782921 284477728 239318988 1071400760 170835115 525356987 301598464 578222289 835985972 896625012 853107683 178207461 433253947 687594642 692927431 277516254 256629562 485509515 473048382 399946615 612634800 63791646 787005939 689589979 248914487 78228095 523572936 399493431 493220002 505624128 61017944 782797188 636901553 967653395 144227416 895250153 276532832 215315034 320432909 404607701 250760553 27496042 665924152 527373050 266851063 951035645 738715359 234770496 762927521 474991760 652130617 168140861 973344301 587890080 522181027 692285427 842257559 358558159 583127013 702726586 217997026 356601980 140362432 275340231 175510248 184609145 767538473 116876789 262875885 973393587 386283143 56948528 776369521 221917050 163963348 572973252 223303724 748372737 503641836 92055019 864200008 341349623 75019459 517432974 669768304 466223863 826003102 969384866 250472215 863057689 577544611 969822782 639009080 403290030 125067311 1014974749 824701204 83880057 8877308 773646269 596550112 796327271 104354994 313660374 47270701 1065203784 6296542 603278091 627360473 743239194 3020767 630459282 23426314 639649255 603032775 168209452 112827767 266509204 842520038 826745772 301534833 350601150 934910971 315506298 924161012 970896372 1050296312 326299616 1047110020 733999006 1028312933 774914858 425863201 473786524 564729017 348283969 459254918 898032074 1010441732 898512024 364259323 958597519 741717344 875093506 227217940 894514037 513510292 7966218 928483326 284336411 304458564 291804574 57559356 64639584 584465378 420114478 456195831 148020768 564864537 624485154 130541606 273701462 982634962 397534875 529171280 161057057 407313285 651685890 221337591 676664421 979552691 1024758068 384493138 321540829 796069697 13999429 434627628 444470085 1063460589 8340256 790242040 175894725 800530400 888149096 875289920 860874248 1060992692 337477550 1001415527 155984013 909982199 443032604 56689692 237143450 274845663 98778618 505569621 755518034 541570204 810990931 787689009 954849789 260079665 632668174 333272960 106701737 45435378 897974008 150106057 49966587 839782236 264823526 242800915 323733903 670945472 219845811 863653346 59721130 223335700 1066672701 962389593 357738903 788664412 94375031 402859903 232577155 563218017 70289842 619246819 751114837 954263334 568783907 719254722 80459118 616286189 670100049 822056154 525975799 386466081 237926421 178831427 953992384 232168604 45039253 549932756 273987831 38055361 821842088 427099043 40160741 723989840 381970519 701330116 384344997 491379488 380188208 366287691 162835862 249149723 269939228 350499923 309370121 891558732 441756918 823501732 831926794 161166491 385175009 539829865 647313883 254742898 1052056153 98010912 124826451 215210826 791080756 1001943449 830810103 538409156 749689903 103330929 173162169 711998479 520938946 945117784 589594246 990367764 757905738 224376422 548639950 146154375 584100976 909449191 429134971 870751717 755357798 420302570 304675428 525740291 834386285 398790733 251555046 642413072 822520475 223489732 486766241 271506100 1050213015 1020009318 975751831 492572815 267696085 276939997 41868568 53564404 267792155 111923415 633805633 1014958966 488366721 749997516 877891095 905065870 7861999 345667299 810071235 92971155 968560660 968480114 263569039 842304807 995095759 482917838 837617034 229788603 283011666 355489380 1425832 177273756 480575296 805560619 999761377 487281166 713836766 302760146 412075192 388819978 768016599 195136824 902997203 779391666 234247660 729108138 823266022 450197667 895959169 403581417 1022410603 259615816 1018307459 1002194677 1071220681 526161737 507219645 678570746 1027112474 894573584 530634505 340917118 555854790 739304956 363132613 668700024 731618381 653202971 443854769 754132724 875665025 999324127 668858641 855401670 275860650 267511051 851452512 755711199 603302394 40157510 599423736 683729921 929740890 18423388 52507387 437900362 155566215 557568010 416606359 1014695573 826097896 764845051 513085818 334126242 853442659 1032329106 276893105 602764593 666117325 333240899 159787034 878367274 15870787 528882662 529433670 390304443 722644111 40552271 494796566 430662285 1007174348 117001267 937927858 1012202703 43857202 709870360 464624755 130917377 1002706765 251110933 495058403 192118900 791514001 462972431 140442871 574135115 778271001 724511190 227477347 467237357 303790438 431438723 218889204 1020053034 236958690 937757500 117416102 846686925 1030348786 931622571 622370894 398151577 260538427 1021163453 837181 663600224 586875693 857074623 887933106 477791951 6409332 781325077 336039141 957637116 20014309 726782529 349928390 100057970 497910722 727999188 529205455 434984157 178882964 939493615 722977438 1052093331 254673890 960346816 514277521 157206798 565319124 816093557 560418224 82206389 178694243 620613620 614610273 531035560 1037298502 432451745 30896605 262986724 1024581942 400886762 960922811 462582814 418318679 430294998 236666913 864357654 298878682 866357851 90767594 605985764 327835454 140331154 608598908 325201393 821473734 407446516 847733565 868783451 549310359 883638526 390591702 413377599 753690178 680142467 411819118 564264109 1039539093 9440819 1030026172 83619594 220586497 81763279 580617433 347864474 337042527 527159948 757499533 907384418 797855363 654185870 491910562 1062962697 183917916 908242237 402337340 815383212 406686905 345200192 679157373 188164716 157732435 34934712 837475754 597544659 247023986 1045267162 959628017 436683655 225331275 288928582 731927621 574275168 351486941 1070894386 280580761 640628815 844134094 610707299 315344632 388733819 969617050 961369601 927060642 552488658 157941945 611199726 941713647 954660912 977737357 769553947 339469774 848783853 220375378 562825864 618159080 499854949 636870196 752993686 167353905 102381584 637019613 235301396 1044339327 1012821558 100051249 815657951 401818861 162511852 67551191 263483705 1006399496 61398987 1000411772 853070810 726459866 691431712 422784736 206915148 519874208 165813965 596427727 679027867 340580148 119678582 937686817 523333502 574706324 186286576 561557986 315831918 490446743 1006796904 436173960 972089880 428132998 881329021 732101241 539202858 221464027 601305808 615386491 325018497 905145216 323067115 97148130 254700035 457077957 372897325 290289518 112236105 461259031 744005122 135807770 643016702 956105526 279988021 771590802 724980662 338268487 895568152 827499466 672781388 805250992 239655208 997850119 360562986 1071899859 935841244 605421916 465005328 212631046 160010522 614029876 827048356 270120312 910718358 1036147412 524464797 65978641 337286224 307806028 344984127 291604841 297678526 1011074902 48247534 261628280 442726294 108927959 915358325 606596148 296286547 605239609 121632409 538033271 911647950 843855705 772719230 782507095 764057741 383983962 622513276 228920900 79534503 178936386 279117138 764923076 251011530 416312800 365768437 557457314 919072017 575479151 434787713 361689269 213095176 420169378 521934232 551280375 885857547 521836719 774640585 135029500 379848833 646996996 470465590 499304011 381742136 314619667 517489716 595785349 1055172393 603001314 52759591 219730039 265407234 790178092 210261931 1064096975 633203632 688577425 677589378 547888412 836727732 388415172 314480818 283440502 1061898917 905893673 1064651099 1024800510 402163905 423512081 717533446 1038514201 208056774 124633202 730897047 579680936 234998973 554332020 579757843 772716833 785315338 400226505 350798761 612241697 330363669 267019103 358647531 364992665 621708195 957612858 686926507 970039693 200919381 85801533 100756220 777945888 668426769 920539861 612001905 206264787 208261919 222190701 664796720 385724597 609917564 584528083 83333863 726453122 948347500 216040167 209180195 979026801 2431504 369066974 779416870 367099017 1050343199 217462753 401950734 771201842 240991150 341037541 742592723 808790423 870594802 296343538 532190309 803034177 282861020 575700982 368313744 542435498 89390867 847462800 950746226 72960004 734901300 314783475 657341914 730937420 353828867 711656770 884178363 260586771 606277302 581533344 738647191 400169058 905762318 901871284 190372788 1072683132 529566569 762529051 832573852 921058950 505888661 881217387 990814329 437304415 915925720 15980765 682355334 7511328 201499489 982984381 932517180 719210163 151230283 840058827 118238797 256978628 1058929367 984965834 451607979 371369310 821724717 599187194 618737761 820543536 796259677 1036053966 277085754 811069919 806096379 356885605 690346664 202093493 192267983 842340042 102964143 285384939 855003084 999140903 418771795 889188475 430938581 1056870070 901795812 398000289 647611682 572771447 875399545 680342609 126543917 254960236 919618240 946686334 652380879 90477744 91435254 202884929 483365685 34368053 797023346 918329080 962714855 1068704126 895351847 637434846 989505474 831617915 978696060 412183952 362050264 525878499 659308540 510409339 1593183 929921201 244037318 926640778 710440891 743421946 746965778 265480548 1024206725 5106199 851941968 546656433 1054186571 163189914 811377305 918721131 340475109 463146148 552233253 878838632 349801391 974917738 241267241 881970452 639495260 87595012 972211201 211355042 15397265 879305160 601395891 362682509 488463113 67132396 1028123023 953809332 140342750 430130007 299913823 399857559 377925645 970991776 520656589 569988856 532639389 952918589 538772563 418376743 758770186 442838881 295403942 5315554 795071889 336637110 270643285 688848220 1024513695 196591805 772471547 597024970 777942571 173593726 971672875 961448282 1072822368 619263623 1069142071 951855284 961276858 440323972 917613034 584519311 229627456 938596715 389493978 744894988 507072389 322064348 269567767 756764741 509011769 437926528 257952172 738657155 125559322 676705165 419501607 942470236 858192271 632645203 460196215 491920256 342837340 734799568 284099669 353934003 745049216 114454889 67542658 941994793 483590881 911664748 743197903 204579955 1029161844 992569218 876844023 807611537 886932078 934880541 889528821 1047429788 206187752 65919083 469633300 790013922 655514025 320177147 815062275 1071221911 181963943 305720098 759596752 679262480 1056743548 608464808 537370838 434622727 661679311 779989359 174605160 236010125 150661398 566288130 335179814 176483809 311240784 336340506 591851812 458746653 1009794937 51692115 731070949 377099253 86575975 130443517 327991043 615133560 269896198 290508226 9939973 883266347 526818852 939804722 458964966 482346119 400208144 840992644 201945514 319070456 40301335 37779274 345541176 636170649 138173223 524074154 207211794 184685380 341829800 97954572 374484109 259533120 551150883 649876942 746768456 937009389 217988940 662444819 174796102 1022591479 292010266 492251962 945676928 147285002 256581133 90982741 971924266 736940625 860692208 368074595 1003062009 791591190 887269514 482104155 59168493 1073164804 340919353 769311718 30454959 889658580 766081128 907524653 556960867 885310595 750725355 356787824 503418907 238891828 2594076 489002511 276705503 436156079 493068987 278897296 996399595 887718807 231550618 918829977 541444164 442204301 401281516 532809730 990689826 660197638 489838831 302278723 138043213 928225062 286084652 909294577 331868029 458891160 133755531 505979835 193066852 202276963 80145320 66065886 107650226 613389433 734951883 476702524 671076997 97966491 553607857 599736272 914781671 694562786 919535208 439006576 246878685 901880481 188774718 933338329 190472303 248775492 161718597 209427346 908049133 704268947 545168689 76634336 640118530 726001287 864335454 593606295 760455605 906567721 353723350 938432788 644708398 702594842 244255624 254652979 18836465 786337017 243918166 176090873 592758623 48332146 214105688 661821767 297200166 798746424 147108673 205742666 764710241 268890207 609061300 970897753 962589259 468651837 721242628 1057581074 988044219 636622240 498526773 341872806 310536361 892758322 773280796 812180953 177722304 464316020 898604398 223058772 90235924 816332141 1063778169 251618716 754543497 194776506 114039672 816484485 650819711 54423611 391174334 773221861 517737177 958800879 343337829 306796020 99841154 284678453 31852204 848654240 810480037 775426527 381258851 444809410 731074342 691637573 573665840 125225272 354253039 787146110 275779571 356150497 393105804 469691822 393252498 970657520 704328773 139358888 61730814 468205996 851527056 917153446 542628753 30064144 423023465 687929825 471037845 969047374 672135475 299701867 390031541 670527211 328238792 421603747 996519797 862855139 358262448 110127853 924123490 463321623 534698889 755704249 226843201 592589064 1060666785 703221525 458669878 769969596 65734845 138105362 954275264 273946479 757115583 248366154 102440425 784718655 128090875 100999097 211507393 649360780 69821068 812400597 221142867 924224317 935836309 921959533 264139623 856883981 927506110 955241454 242590085 951690028 1851796 157766859 801622196 279118073 329849919 336462268 329695579 320423345 860423232 427904156 988390656 759179531 353302439 3641157 497823846 698157963 625273183 475147809 336239675 183428157 953130862 389781845 851182963 622608122 305635762 180614141 680567320 413055011 1066306783 2641784 149551248 991603140 573441883 984899111 177619202 373526026 449555524 494769870 234466504 834213238 292819520 436742375 434057553 555581077 517549897 1026854830 160320182 794713829 985343357 431942434 774896222 694081170 756953901 563573193 130329816 116437568 626695183 202234767 189276793 1002171452 838124470 382992683 860990860 801841495 968205042 517334259 41723314 329976153 574371429 860289526 344242913 603863742 273321865 753120266 991722017 580242203 560988628 247215514 78938920 929411248 589798439 502059289 608561410 667346641 1065022347 460948961 664614358 366489383 1008750185 644397873 986406139 421677693 61085926 997101702 923929610 403192406 246307632 947207342 107805397 793728205 756388848 9229229 251054612 379833521 21541844 971107818 377355894 860104388 462469631 676377632 588670524 1007396102 489489213 866750342 260217510 558991755 1061972186 112284535 748489265 549364098 888772645 658575662 801961629 614258592 658587623 989902093 108905186 23410502 930830014 910261322 314749625 392769217 52802957 547447636 641805733 553366330 284438046 427386221 593393448 436891244 993738729 595599060 78032051 912808588 938574736 13788310 728713321 1000966743 857867229 44703398 993077705 983408081 957810098 630811135 1047735022 426582704 88042865 399616215 620952370 723893325 327827253 388072054 297839595 118861393 219333298 542608191 44212160 415642611 389646661 436632439 1050075248 560367546 690372537 281253646 388436406 600602205 302847720 987914046 935243952 354395006 998447540 715091162 170940762 172143842 99454540 192969921 354958911 869845673 1005702256 645243035 928243630 881938261 654738746 621328504 778518783 669743614 172028348 163361853 1013482473 892687465 1003337191 768305236 626526721 298499743 151136430 169638086 74184582 176763296 194167629 863512304 994338308 405880740 367821704 1038192578 220687393 794194313 659931931 971250175 470023447 84881555 992661489 201486948 29824528 92226116 207474722 322656058 883488207 1069319646 281054562 1031322093 599883079 225460898 119403536 677001125 522438607 34740998 112793450 200079278 972246799 338222827 133570312 808390639 607248515 385389183 630998536 994350820 379372133 1018782459 236811012 513712838 1014132276 142927922 948895020 696359129 170933953 93789723 1000253442 233065700 217247498 383936023 372518598 112602030 305829785 53495913 73946312 664797079 386372005 714545023 681773614 808808176 245383261 41988933 821884642 66036156 515690577 564331561 895088880 143604704 226720286 720617368 764951383 236806513 210355702 426491343 21076681 113634694 1012591074 938827758 999785391 834088089 580882398 300706826 975357313 54084871 970075410 878442735 776210169 1028449588 881091897 416962678 23993281 758475932 516711813 294360385 608481159 725152669 118642396 385610792 936288914 1002540577 570832253 443884459 628610939 871455566 399712010 383305729 541239745 349986271 900196959 910853786 227346324 481375837 15227728 731764173 664004087 410247050 201654195 794284764 315895446 322003765 838820802 1060198171 1025099674 3402249 831319663 1004724171 976570904 145089805 696993806 979033925 651531690 562225744 993184668 744419567 802600332 867202032 708925435 6853537 324044525 279675783 33170405 1048295586 228117524 1034571660 711816396 850697798 489839904 175947344 58859776 809671944 833517029 595980029 674459348 131333951 187469100 63388276 328365347 667000949 338938461 541060035 923954548 340086445 283809267 74753230 669443231 806214918 547990613 490552260 1051758273 7904113 494185311 696216670 1035540561 755673418 427015987 830999783 733930740 744878145 240142347 485978992 931016329 61758077 778206226 700067001 485379287 136107088 414312853 339127360 748876443 34328262 817035949 487215460 673574625 277144534 443236889 1049805176 565273378 472077829 942281994 278038109 889479510 246485809 590079436 325551039 126275763 998552906 773530782 618885321 96760890 487036654 947946180 443743054 184805342 258148747 73956066 1073132191 981995106 707377385 64160571 1042025490 524051666 532796865 999334552 490505051 906828352 447202672 357542661 433449985 205312494 976596903 1066106412 186799174 342290033 1016361089 478734507 516067278 676552031 28915223 159350305 155253648 129328279 766727114 198046988 1019245792 986843339 966589891 437561217 276504577 996516909 934413305 219159045 1009677328 680783445 680635654 605889759 777452922 18667495 678784869 312380758 328588045 812828466 790729958 126234683 46358767 87905797 410752727 467448878 761278949 288907925 527500287 440677714 636998276 519709428 745006201 774357568 637884770 551166729 457877966 76428649 90897712 853196038 919642148 70835897 82059030 678293222 693172184 203500372 519930415 535853813 1065433236 387090758 678186749 836407878 207679001 115446974 536211269 976928151 894985568 978090104 494825537 467920514 66738245 235569112 74881960 831421333 686852906 910407815 181311125 189118490 865398125 953375395 464866583 52774333 631074923 227574908 856362326 354779882 654270133 1027187442 820831563 537613346 1045416067 554845590 994420105 298092198 858218131 1014866498 22222847 536662700 716037899 1030585747 1034067009 412182707 441468816 798901484 125568965 384907063 292005233 925423663 629109069 105819739 284323494 640354676 155017547 837489440 615015578 494705665 172075553 151296742 778472179 480969565 582958084 218714244 525810699 922990190 755015595 330325100 938395817 943875951 735704412 354205030 240116744 169386796 995965790 465392197 886247933 625557359 312094311 246087531 882789007 972078582 140825811 932620709 92510506 655951326 188870870 448598059 841004517 235209337 11840486 677170150 655034968 129338679 387897472 541220649 918169784 924869281 736793497 358812084 615362787 314181187 839709241 129716070 433760162 74776618 44455059 36663427 850579477 729247168 991467544 392375522 984125206 704935313 683658264 599251899 45348035 600122694 28905804 990313649 1018145303 394880477 64872789 491778775 268009694 694450447 483736342 783937152 899752643 266726802 379357062 311893641 762196691 509604661 914538609 264003837 628952911 815408793 235650915 305172455 283155001 491379182 319562271 300923105 305678650 802091583 278882962 653244888 61608432 49174191 835538737 13751365 49367224 1037038826 61704732 472751019 354639933 60039429 98533291 92706957 714272419 551553204 773960674 1008251649 277060442 999566051 732381161 265711860 702591113 595049248 162568206 494100065 313415657 579031114 20576911 246874854 1040287913 239619460 325416263 773808301 869461975 213096346 179721943 67791501 847111516 57005307 1008954176 659708883 611682659 824109725 404290433 736989714 364140722 369281164 185069555 541369353 356448865 881099088 833479702 867240047 504088046 332970723 847567785 118415532 230790540 725533507 287495930 72812516 205525897 456317914 928319365 717300920 43795660 186661980 565006336 485570088 52001739 346843423 344371014 159013286 389787732 1065897188 181665212 195354586 524463766 713584069 604284894 167995994 1019129404 116406403 720586314 891107388 453315082 18468790 326194921 651411666 91364830 965157833 216417186 64371379 1045657464 576262252 518258838 974819366 12504231 24317749 434580567 49237776 153223332 402470385 76779516 585508202 101729886 689199198 118483574 37155128 836004427 50871918 75008596 203266197 98133127 454698261 583901065 820214021 903967222 476670921 318143553 690717715 759049633 495955483 451429748 813549621 426344137 561678962 549557563 225772476 224099194 561876561 482532131 266818564 436355587 801246023 432733201 715311144 369206023 103605701 13238536 375794555 21854687 871136245 934448030 835436591 84593563 165068117 16972362 918727217 131556962 1072712587 186751684 757618822 342166180 215671326 666542553 753795742 413850607 594918192 495369769 607024376 1047246539 836096141 885221770 600712406 274831108 561371786 1064986231 482555511 785377060 30733619 271776110 11778740 66354865 158076981 221100857 609776880 527382568 384522504 922691802 689490138 656373791 602924643 218547413 662127834 277884807 134856735 907287687 158877715 564006177 844127271 281411037 191747083 114100420 811354323 702409082 21595575 138021236 1052718895 492722997 400767595 906510711 878563455 750703497 810356347 409216486 365930073 854453116 407115365 658522112 693249966 204847170 519156693 621209473 66723719 108552983 353613508 1051524926 991144663 637877629 40502555 447730098 817028824 654526139 825862752 433721227 960993142 661749353 666935730 900928717 689222521 793811699 601269532 417431427 881356651 196207959 987074903 968299786 270446522 1068243692 412585744 867291083 477834558 819435090 222825685 560418846 906994639 927564393 266388729 56891658 1054730580 1031842482 915305955 1025287262 988952796 284405464 261707613 540536609 246044255 214821633 904856448 162633158 39197414 241529662 985762362 514454143 555490359 749161698 522197660 566934590 980678349 28763461 533201907 26944684 436488128 893349433 587548911 780204398 700417466 172145192 700693919 868707487 819136135 910246259 630680130 287227769 135379452 1028718667 500987191 1046789260 398515499 216479582 412969431 236504280 71921421 259436848 458928719 224507975 170758518 1010245154 614060345 651955594 695790063 1011001450 998965616 256068788 932103856 602869903 622240783 178929033 1036220356 51852010 733599662 351656117 587604070 540673564 219076122 459188736 645025149 1070249550 179006664 653747561 960646291 461740486 479441235 171018921 76489659 890934624 289036844 121126699 924693084 892911524 492250824 960553581 416868532 241562348 291557768 201327179 102233809 947504274 310358281 520243170 177487087 291705046 620421138 99853061 568586016 244665542 34802868 914178817 909000924 226337014 629856307 261948548 602324101 899935037 234428631 406576689 331634368 653660815 1039896777 846952092 1043220904 197488924 841495763 336004032 693835608 583181017 188229211 21350058 55950830 812875447 186742394 96374755 615972049 517367295 762778360 964037704 983353818 89699070 1035162376 837750610 898651453 215798135 1020249170 145765489 799352269 542440399 727741623 475582735 523158688 559457720 565244295 1027682665 711751384 862803321 299983720 330278639 734160937 700102715 747842609 204034042 1017442762 269380005 319371872 717423781 790686215 550321249 449270289 663793250 615481733 252764208 675603276 709984914 486443861 34141167 310453809 515572152 787918660 523910826 829507211 64292071 727169783 588581287 116410250 161506965 131084662 831414831 694886046 99288527 271024181 144582978 827185006 493551074 215955887 116434160 402354982 461079190 948550642 835589698 1041190784 320564737 476499351 6510712 298997853 720549399 1061206922 150659384 517248059 1027593046 307909088 626158525 227907724 551871344 1059280673 786938804 874783675 379420776 562537194 532963311 301339254 911877177 566040565 630765833 467548236 1065725017 945588855 643355771 476552902 709397049 245342453 378515242 930488428 675686227 532760243 588430097 379919040 35694618 637509582 79580933 412392412 570820640 827236777 526070211 368911882 355290313 544038022 641524057 201651894 641648275 421789381 696592400 741651267 573800053 378336297 359145275 571292505 629741064 78960584 513821025 18649883 985565762 811079656 869841419 742117445 919886750 280306047 69854631 292943561 850379139 502070630 381876876 947683198 734017782 958810355 433079021 879733164 996083770 1040008590 278796764 648537925 178746417 611959708 32436199 772906845 948348510 27483164 65136753 874399509 189238093 853960227 800986560 657885475 515173139 488403545 578398423 792763188 314463794 400091116 1062149890 221260137 712406221 24505128 157617714 359146086 137484352 206751565 387284951 748660524 750261016 393431631 609558295 194666231 615022572 472819567 400591096 498964558 888837122 204095637 446721317 900022129 235038014 278755363 327820818 25621422 1053650475 663307467 1031767665 6468261 1003033991 554511166 429979642 919620916 623182789 277632929 945318434 628520005 403268625 894001030 779354826 744440206 844330291 965687641 907235659 191432635 801493100 30263054 55053800 134627277 518320642 1029921502 142886643 132012803 497600975 430428659 48774261 962665741 540131130 1041791166 785021312 577423254 539927566 120370672 446490293 994159634 319483594 780024183 752264213 787868434 530427375 515761991 45646596 574473400 661255665 43417629 415297434 869817759 243424727 498129854 56155154 357568695 748152290 67164138 344004403 884990438 224839610 129726280 50434445 998698787 662291585 1009089204 786692986 1049880155 408752714 882699385 488173922 696609750 998078581 218485714 622982982 609955311 449342633 741777314 900126264 496532778 284733001 98362642 974366637 968050349 17305125 681911915 766351272 204313440 1045456975 238277135 204742764 570507446 1046786460 856626075 258399025 996694259 1019469737 1066072008 468083968 215983394 514610966 262745672 285596230 262399442 356952665 299019965 835190903 643320218 655053490 334281169 757837719 513122698 91894560 158368033 475152984 1034793052 1008285753 366759971 866551857 411578499 307114209 668843427 136967287 776493672 561284541 785401246 125807326 1006948991 119256716 748660731 455596440 214870567 780139804 559603579 234617188 1015965634 663921268 101500683 180273035 874529825 761738101 961084163 582724840 993470251 399189666 812537412 1035588008 712488972 350042124 856654360 424903330 409441041 723950971 769203346 971277333 444326225 213755713 1063127969 973581740 769101417 31635656 1072229661 395585906 111554697 972359564 359303965 454158389 212721967 49459640 654624683 386776766 176628017 559467136 902739922 771455667 688814176 808015355 328965731 384648466 442662224 526028683 726552733 246875476 839746098 1000274689 672896061 31804560 122414073 636359976 687130845 149175445 923067996 575416066 643321738 220370868 348910527 156297999 608612341 80143302 609608782 464999488 269303449 34956940 523648995 603470859 1053750477 527940433 739354563 435666303 188828294 954985861 855989353 260819847 401541794 89515428 167491160 236082180 430717069 384757811 679536310 655968071 910414416 208837412 799069866 896774161 830647654 222938172 151113939 564779954 94835636 18213300 33339180 303122572 655372415 464347576 599933413 72746396 199404862 943220762 568118456 890250956 364060579 398482936 665344174 800854699 855158178 546765602 869256413 287070785 558885519 212972762 822683666 385455656 406941700 974243794 817844519 874663650 766311639 400049466 965555997 727484763 22014544 410070854 572222012 967696837 874920682 55394937 968545454 33766069 789600097 233792416 164870734 849229187 201166643 672702449 539046987 647162375 17130629 871309074 1002735672 624415895 597971122 759123595 150452036 71280452 3042482 757441409 248839812 385884376 534866468 819585376 193803569 783258978 692703037 487043455 986269196 601065062 405292719 436212655 502115408 1058617111 763761742 570090004 181364905 202300346 444519539 607069653 598673271 592498576 522840106 494429119 729716564 657150922 787862300 860390886 14412297 474633337 241225936 193719947 533786676 515555775 953233375 143223052 771388493 814670385 181593530 793294445 769126284 174755680 248076355 14132335 111467414 712191479 1051187813 224533809 46351605 461416768 137297050 1017402579 515468213 794834126 391859193 545667735 511711090 851570538 969919076 1060671599 69491907 281643627 678218343 86347289 108561811 472461663 473114123 228603720 633515237 756108356 27729103 1111853 797880350 959811978 225195228 532584885 555573287 359496234 587607247 115669351 882057115 694008622 945163606 732440830 6306558 380373751 369599756 54824588 77543207 154728101 430056498 499597354 975294242 419358954 659522924 91624891 888920416 520559819 943854956 99075590 1027307996 352910888 235870515 543235044 821441666 514752173 651577998 621308108 865145415 269572518 755029595 285339691 363862777 177747202 542109849 416549760 659794443 108334022 350015261 455472921 28813407 103404877 950737751 778877378 362455905 852352934 546007697 657171525 334055060 593375087 564281903 1008004627 699341019 223587897 527568116 266355323 727169214 1011470627 718366487 130331568 90926826 612737894 795350742 647066273 643102982 1006988515 756290796 752968301 839873483 216334209 16827769 302375739 483621319 721717926 888073608 914585876 774270245 399038564 584708017 127994153 98574295 979081185 371970149 832108433 895491115 460900793 920741431 751573850 693207454 883625353 301272 261037848 147848275 316840498 880500142 371697295 771864625 447379369 945888071 575707993 49412599 5234075 448379500 889225896 595730901 432670233 434198441 371222012 948983305 210955716 1009630543 1003595725 563549674 692759639 1009165196 796724670 297852886 521068590 609281518 821014023 13744592 1042620580 645784615 194396801 393746732 324479066 764936314 929564468 861466327 213553507 712201853 435528516 357062773 415930603 854009198 32613641 337244816 835265691 331081604 94063944 351897050 736204890 398762801 293842589 262343255 441608523 263925856 5269084 283752597 761166270 902641224 1028852865 643156203 393229372 866695587 486632369 605299977 749343167 136634322 30985648 23513071 338780074 639762836 274740410 578279077 321772452 517580770 1028958335 321426375 88677592 51133541 96432410 313532044 85156938 567878250 548710104 460262419 947990598 627608680 732414594 164897994 851284578 1039062127 1059768972 235110558 182149695 514092870 1017647436 48666870 508369698 712158864 491717570 520305053 446056870 996908189 783970318 100026296 827949372 350229158 615389562 795749675 1036317440 607598151 531396585 738821513 476287792 903282376 906050083 629004032 1067105970 833803169 437055224 290716191 383696019 311113022 369871209 840086953 698985926 572148107 537989840 63349146 463632208 551528264 174666125 466616538 240194085 612861673 463359290 224698732 195234756 466221262 623503310 467247746 11369774 390963849 686596261 414478722 4136457 117538706 197156623 711583060 369563605 943320235 557104715 542683503 174348519 33979420 894137344 1004320259 876479586 243199733 229387464 537473049 499250041 767040250 1072280526 212854885 657313110 867224146 952335097 289709677 1054783971 595229058 916224874 132122101 926653303 68079561 490168961 694395846 321902734 613671558 152451596 39246705 4033091 104028436 624190593 237960143 22580109 435742693 313727962 1056203583 876916218 829586326 709164530 708937681 793902792 652086163 390741688 871036950 679565282 768030735 448128970 1068202858 1022627065 935532732 399717357 908004875 902348365 639383965 999213831 576905211 234222840 952386594 11939992 106455109 834446644 1008955660 830758970 630284904 17016822 615807210 229883340 869852594 499752328 258845609 217064674 1047543070 431970743 594186183 1038389752 770386991 118444479 217598041 686756405 743944008 206600660 907712779 251916898 655626314 168759912 23722885 618139997 69401150 874553516 1067459334 202503439 1012752828 675638885 346829542 579528989 962759532 1029691569 370122179 511329885 237765067 48975057 1067936789 72882681 929870980 58391770 639186854 339019209 709003315 261655485 728503019 758972998 1061162961 992330985 681931809 736024463 774288774 358919082 168091798 304142376 611708206 960213377 935737779 98790585 409659381 671431183 202140938 1068886475 1027129628 552989003 1015070790 853450346 791639851 744159031 222812600 197131644 493119561 114823642 397771166 602496377 157985832 750117610 543815204 909679506 1020498929 317760582 401821267 469844090 889979876 52081796 245953298 553845995 289375939 805707343 654069659 177039410 91777512 91216184 197013275 501878938 117436196 621385037 856745654 286386783 196454043 415120059 750194781 300309154 714169976 181695809 353108467 214543265 235554651 932248761 763079094 483664360 1042454579 97185828 713183752 750569626 799550032 694083804 682157511 369279978 746126950 595812312 255421752 135167449 490433486 547293914 102508898 699764388 764453198 998663995 947670538 592052451 406921637 768331489 654363757 460487142 638252135 772324335 379751210 942216703 887708248 177337495 920085452 630079355 637874925 904967588 427498746 576717392 1011126617 967056970 2727882 741360909 255867343 563695011 86933155 26343672 774522893 629357403 273704820 211073997 1069132024 190495151 130671790 823551503 1026162420 633467838 623113660 273035980 19951137 444570629 823518 664580639 756120251 984724473 631426539 820789038 408532343 21196178 1066282704 631628254 813700672 891301545 277093653 907176035 295099080 81919075 701572304 734619417 1047348250 630045926 895490869 581310381 868445772 131333008 608230463 768732501 628281798 854754137 731667290 1035658692 232648535 100187628 88666824 550379974 654293556 49018432 547424308 640382665 961319255 1067319784 95459284 38256158 695633964 885185517 329849222 825684609 712578201 960275461 643902065 470351678 61596381 1031562744 74505040 393697037 591859755 172696246 292240277 1067712691 187192737 967968230 408485414 676554636 53255028 1005246116 832105980 1017778000 244757939 199416169 414544695 669460821 21608568 887617433 715963384 87688796 165362687 261486154 332315798 28703573 1037688709 899887712 1057484943 807128077 481852900 259183956 951878697 53255164 171796795 992848788 974223433 562853024 961215652 656356759 768013914 285329677 349485707 180776859 779073328 786146411 995448249 760611458 103038970 907708846 693273684 187492988 461248089 323856622 222913789 114888230 464054989 587000237 160296277 689967513 15398028 1019680832 52388056 666603188 322558706 321527128 197042298 905447184 216363364 490657140 1037591743 762813970 891284856 769308209 867898609 659203125 1059608227 201155769 157591821 839953478 723433478 932268414 264227240 1015448382 754309543 603264646 195838448 340696111 174628077 23551884 272421781 509797927 296591053 570964323 172660256 418671802 37030724 560470493 133054726 4636355 95391477 901708020 54804873 350052440 444950565 35603988 690525428 92956287 244731405 1003335440 570783936 256338077 787899027 746098124 135653807 340089795 670906876 579390502 499174277 876760887 509867978 817783476 114183625 458146291 111439782 401947183 473511830 674273983 879442266 560685653 549758179 560675544 710632087 1038974280 169094462 550856876 731153832 159664853 212803360 522338878 1004332138 313770878 225781468 601196358 819882617 1008050301 642609782 171240272 1016964348 785005499 711758139 1048964020 502959334 626413959 1052307100 822648356 591710064 252710370 315451559 351975282 295297138 655790740 851920614 653938194 1027815175 53817776 1016223868 709680102 909190606 13546681 189830129 244658416 148299976 22653452 711655899 226875257 853876682 1039999561 473173147 480230707 279416858 1034950314 244100672 574239665 988692001 276202543 340926178 494123568 1014903371 436547798 1031310020 349637404 740622598 169611953 843863506 847699101 643484486 950190108 107915706 693493392 960679259 775009344 1053386519 405870499 235245205 280416472 789827654 166782692 250247439 840410783 805917262 625777776 972631843 131554083 639196031 384461790 798067833 11758918 460590391 3579855 440179542 403461158 942130023 470864605 59139105 188780324 234485989 447340559 591997114 723938552 477094171 510109329 819286810 639138525 312062751 441726421 580162113 265660039 734540291 915076863 259612642 626336356 246074973 471915693 912095665 653243244 324009635 283590892 415833706 475931528 496186097 1000902146 10451374 342279795 695474454 52822507 382476475 675092969 62660594 396279705 229919231 928704148 556719251 125015312 330391575 703432943 295272865 421783917 958939405 768890589 308712130 92407328 981592666 1026326536 515707518 1018220997 533531962 1034342358 168759328 903645108 655504330 869102619 110115198 337464692 565891638 990355849 1020923460 20898954 335500044 865493946 624644769 813411231 541634698 1022287764 331097321 891318928 152376605 699952306 45768133 397452831 413734302 122936518 330099894 304421924 186205933 880834131 525136547 613688362 228396698 530982682 843457850 678278007 98171429 103628917 463053078 1019571435 43649960 49195588 816043085 675859776 34915306 632093921 200077306 526416943 1063296367 1071021392 912215175 91603806 256299351 998881053 117926573 998030848 791819504 156241247 774604271 321485152 902401008 809141201 327081388 609870964 904060513 670785132 366281809 975589951 332013511 133949988 812583738 630129033 26101936 711207028 898273838 846625695 955982986 619903930 318875451 509547625 492533789 487856019 759837948 759784260 546844321 817827129 152445148 170784807 414643599 1029182173 247262525 948258528 783606185 451851098 248192908 719082052 387992921 542683360 216328417 480904468 770401728 346818667 360049076 25032327 82042495 1048086506 75485434 13972553 610030496 116730539 104932158 965643955 281165647 475615143 278800406 53924837 485013703 76146059 747364597 83246436 110420021 697371322 179780389 1055860246 299093571 782906989 877689525 935821907 1023573302 729246969 624041319 706830002 877760541 1058784806 433125829 405715567 963905887 674914082 355010344 278515121 391528903 875431375 161718529 145421425 596254071 579147383 808385360 446162666 622104868 989834055 611617338 138658908 945260700 738520035 770916539 121221422 950079536 890999150 196254871 78273277 821878452 15350308 983658446 102691654 983565161 778285004 459268835 973837887 376238467 184123461 990808924 528781872 653617166 378898603 934065442 511552265 856027529 862101078 839818365 173368260 9963607 592489935 388388100 393892048 554852573 576691369 189508277 964662445 293393166 910637867 619769496 1040493870 679363138 58417993 473950938 74825549 503151459 310556714 1066424359 387743396 674022421 605222792 502191938 542769568 1017053251 216827746 297421617 6143706 668130029 8662093 779875281 156513963 5320531 582181744 1011020937 814140120 750121089 742607566 797550020 180599663 97137256 635547150 279023151 613085619 819900953 22207134 6606250 85463591 970276855 897886908 1055075249 78495759 993008463 79081625 709859452 238525073 67606309 1052800541 50689229 899708159 926008889 875380777 474999541 989403792 457256778 889304248 661214110 694927915 270910216 443147681 493154980 539121294 788352697 383138509 129907599 521262039 280837940 91859604 518156636 84398168 154822258 893908506 912048061 497824617 1006756646 422941228 526998345 24209982 652424795 145939679 974687144 145149188 777544040 985413306 49034029 242695064 834626792 98996758 105760064 162695260 724058219 1052012816 88873907 524982638 12077393 942615431 89197168 577083127 917054832 829347749 124876683 512114674 26448840 4003887 394072612 217646853 107142348 123018281 565085019 591356445 729416107 93493224 661398874 1062177996 741389795 555433645 144431176 76838884 248019191 317626131 839371866 953205683 637014415 70667812 572888293 92069865 718836111 567990458 608775665 853029431 1017547144 755004675 962510886 189059228 33993328 643817789 247223240 373580212 952648408 376763089 183144735 652235217 859300712 514461949 421262973 569941925 1058852228 934496104 858768743 761811169 270294450 156671301 245492455 771555956 1001034061 629678988 684442216 276489930 683554745 767251913 797684557 104697647 131029227 970885123 62780874 1001386439 874720914 77436851 724641241 190964012 548743810 203825811 422386583 160910488 504938956 657053101 155893397 208423904 1040219567 280464562 879933362 1055517199 116090048 1062973910 382660712 441255719 158724274 772266625 28299777 850021920 848859613 667914172 537148686 579306461 347212391 60131239 528473616 904520468 472413616 986532440 95274767 1060347400 193223513 971691208 507788245 1023293534 250295351 416760970 536060710 347773100 611575838 902810925 639785908 907098829 358804335 45083342 60141612 52066268 103412553 808887231 995561046 489752571 235839348 955069046 161091219 917783008 1071945262 97911157 1061011925 249891289 819762449 341912466 395329877 642184747 976719908 869110666 862601192 200063111 645768716 876800362 527044355 112237799 274258210 922397980 878970168 735005585 839364405 877861046 563350324 617586533 715205108 883574200 996490243 574465191 674366033 870831569 409567742 929592895 40201744 999404143 700638804 556823922 145638026 183169588 629335807 313648312 893397548 331204774 697558486 781066679 1026058647 1018554919 147302516 676376867 1052185954 259897755 445552487 129902099 954905141 491988989 572585750 623845860 908443576 337523805 974766830 704494108 379741606 367833839 452768810 866994399 902937143 62319360 907336392 892690418 607290252 506576173 626913189 235808979 58494077 463180606 857589294 427248252 252696110 132004342 401062247 626472251 198805057 743853003 899511584 81111079 241628823 24621584 16323914 961688577 1069869023 13732495 171066042 899266813 349954659 987468111 226376997 588548305 653585359 1048527957 593319473 598715424 619022978 164726963 484478659 772357664 64530105 433867868 207481632 469463825 414089292 171247990 1028603307 269975833 1043886483 275501944 718754661 118071648 450788453 783108366 988758158 678195908 817355230 360477723 243299841 12408489 133254094 178528103 555828370 117796784 383107585 242077274 1057063507 2174332 236375138 256427459 324474127 74805318 28303355 465779574 975301523 804173611 94656586 584864326 79319974 294921246 890643033 881426965 737922677 13908922 762244458 67985258 417627905 892486757 456819918 590014784 164052966 41008507 755069508 275253935 940168900 618313348 527345188 25215999 651536627 131844427 535663360 500559836 828934036 730264857 124822707 425892871 501171805 852660005 260862897 741398585 896329524 3503444 664021243 401483078 265075714 553721089 375663995 919707074 1065859088 442460187 945048448 877780584 296089662 1035472967 678903484 521527331 616726933 289552482 226074066 546749444 922528503 377415369 348442153 444876029 544089541 621443177 976187060 1032691992 615777113 643123490 595177695 717807726 862682077 624598165 838691311 344923530 829687038 880112152 385706917 839098755 716323038 232461933 707874879 949313303 522738658 831160616 978697354 146178411 261615024 982960190 124196531 612965572 8187278 1054439087 1070705594 789138543 834567908 772904536 402311629 929917444 581485940 245855605 10321543 165257870 1064036465 919439100 183525293 783984784 927113855 467202603 182785524 750369157 1047617827 885598209 412326297 738936947 978282364 740386801 302134519 740888368 180335454 606700876 945368860 171168914 815814316 838304391 1064450296 728053001 138839378 980473523 408040319 757791367 959533757 1061184509 914575686 595012340 162872234 505035717 1008649700 1011077509 439184309 968501561 837473747 671493495 79711691 509359827 462885144 942135395 581658342 173777133 374000779 209567946 404596875 46337371 28811938 283893530 898824315 562326785 502030605 80019792 33694825 215838806 1031539753 933959761 918368189 745443065 265985198 343230203 804440742 613268710 94537072 678124888 211792246 123421022 746741086 626253063 301219169 316983140 669442702 286154183 962088063 651490546 393256908 491085072 223158210 606809216 990413889 69559563 423661698 560163476 155974076 1014331712 117250122 791677389 212855793 608365405 672011589 994740470 251001687 1024516529 415613293 204349783 564972752 883786468 968546845 392363825 984209530 870051502 833217482 474415872 532243677 1010259977 187051727 317260338 718902258 952405254 98766785 816908692 917963320 379513984 920766654 175493465 105250254 572782778 59156705 673986954 606646138 357473640 86658339 374220413 404161269 770148973 279595105 763165049 965819368 1002963099 902199624 744984551 156322377 77675161 580732260 276209184 1000032162 906129719 182954074 978612268 533146604 51170834 678587520 340553201 316355862 609252319 799824001 120387660 166142073 778054842 328470701 711648381 985735974 357562044 627331754 891951053 278104838 7818903 373743989 159773743 1002744143 126631958 353420887 414291468 652249090 120699134 188221196 494287586 689216311 39622954 76454678 320973469 152552821 896074178 908664485 106522553 566684305 961945991 881510701 1018898947 1028037022 588570963 549672570 185223806 657783902 510429460 768930257 1052833810 1052316204 521208259 772640350 1008823086 5576076 957392520 72069195 757071366 78812443 23995902 745105631 447162914 952765321 416275220 455331917 658172973 725866758 616960349 512226112 936735266 446291459 521342578 308495124 352091642 424420379 224123605 154613342 393710179 997886956 96165483 388154117 723554346 566289923 514017142 757868172 111991172 724439188 661303649 747361251 852070911 192120343 165181180 549512940 869592219 41475367 987920204 293796112 833672256 343735623 152035193 1042272168 580806621 569138491 853660880 22632770 646567355 1070249561 958849764 443921421 571158516 239679790 12194365 364649758 810762912 6578226 403725943 93927804 989736310 863624232 542138264 842434021 936997009 94807694 545048014 769187932 796830172 683950587 525893623 1034609157 968897573 356050432 1009175079 638166278 541372493 540443389 755771018 424140954 398048913 391503971 135314548 714686581 319435436 353689824 686814164 978098105 1040091077 272932766 151773777 668750645 440725403 316431714 344361585 759958752 257098452 936597889 102417028 114020122 824152894 153601022 979061370 900418993 499964582 528184803 222562887 45980967 712891564 507282638 1032980849 839371446 138155124 300592112 999867025 269199419 679905854 772214473 464186642 427089942 137099563 876642686 870150612 626996593 669361917 973354622 493515764 494644438 642920368 885443764 943294615 208114986 984648315 109114677 16283248 294088798 53899161 439161774 23864190 380931146 711695595 87558502 114175023 699709567 368268070 95308334 231413659 255436930 557392756 511042125 188471803 292527279 807320234 292518229 1062528793 84116818 1020190246 796664840 185009247 383542980 463763834 715453669 976158880 713908111 202334706 642592281 201440387 503098304 166140843 950146192 196109426 1020840508 920855638 770428870 119225382 374875312 862747234 439504917 674178583 445431787 126419699 417992627 732550803 108995171 194693433 961007034 127269966 524590402 1009214658 163166646 1018858183 821684032 988811763 535845724 223784542 439379825 1029145579 944528319 532441814 777128311 264405259 422446777 591118551 900221608 336765358 273919391 614638373 254203239 21054248 125283550 185733891 245272051 587960467 908212501 851006873 131164190 822829037 457219001 327047659 1068965117 496461779 239234272 65933158 157964227 774472529 948624809 380046447 470413851 511107670 157640426 163582588 1018018746 478277253 487251858 449716486 688294411 292320456 660906229 1072014074 1046082703 522207080 240987511 400208549 820683768 1071629733 45032183 1045940146 784008257 1062290563 959743922 370319873 722389577 477437933 77326174 544366687 80366192 829828608 1045735982 80068249 202512337 377500280 1056419787 207038351 489752914 304193013 70701515 570282242 314287351 202148130 792728791 793259694 365474481 218223333 341191257 527223157 310317260 166211988 654646051 865234445 88887290 445455093 1054538059 824467543 970977435 647983591 678258061 633991785 310486860 938857142 620279763 236807456 273277844 686894492 789062006 709056705 540260058 933175580 327692142 957342800 650051140 73066356 1014741377 715265748 944872299 349513388 275037344 1058962964 274934026 288773986 344221601 476002116 229827075 648465669 595127510 209704730 335079228 379979182 175941998 643640478 906454785 796714153 1046991571 267883155 401859105 321270628 600287570 954430589 90646794 968598296 644461694 672210137 532714584 521803831 326043414 603340096 134875798 558811400 708674732 272762313 279542917 388404769 96879233 828734443 378470959 569986518 919809110 987043229 779103060 337022660 539548566 876283353 977729481 266118949 560251619 810255407 443793732 540556606 378203142 1026018989 876285009 790287194 555733731 983902595 157714929 532155764 488272749 923007741 641680702 5770367 1034685070 1027979995 248865193 808506801 914201274 986058390 430563476 1042167911 499302022 624268443 390616084 611596373 187693175 857033075 107596102 82363729 755020768 268540894 410321771 3279119 160367925 269271333 303658510 188238934 782869269 293788172 545916269 421617482 44673040 372018320 784751805 333443398 757243977 763733870 117683108 349554631 231503540 117740717 900487903 688709831 1030815428 755960565 515937280 54317713 483287387 717662874 327392759 184447056 4125 379316415 178794873 895581089 597570609 865410263 985422605 824548327 772232614 983615644 812805490 769026399 695527849 664612816 233209743 698544917 950747712 258889752 1034263256 503423533 1010474611 865835095 922388609 734367301 471082845 601823431 137266855 853543748 447990517 3585903 842383412 446631447 735315600 896385843 612017810 399535080 747448675 49871581 643143960 101197584 963333426 67006941 124080975 431975358 290324988 276903365 574275318 1018136739 342959748 811697932 966080343 1032420620 589549230 464684312 814792987 700058334 131792219 336354954 280533980 68586237 57425804 599588250 1066846455 197769203 301547807 402322426 901757840 886096198 765360194 245759799 847025380 283934145 1567006 883850632 598468471 72717823 908663300 794470119 469182120 51031034 157445151 204056439 817340020 606303229 257891801 789314805 777708265 578301494 1031923099 925665642 396588057 248087868 487400510 199175010 286305040 144373285 276730730 59215829 88022884 86417547 979386155 718109574 773331830 426981343 1034616593 132432817 726116372 446035046 369954373 733623838 361448500 1049480772 64390855 965876137 118954326 770229802 1042393499 388710395 116893348 94915354 941838306 199207588 50443730 839079744 988158477 968560143 187267599 726725896 351984670 629028863 1060253962 60101271 983394502 73363404 170214033 456377461 208780499 132275694 196106169 729294540 733593927 672405635 162608528 472060633 280387624 935525333 764952691 681916824 338002585 992770933 300520412 634218127 397685765 978206771 187604576 366823687 41022609 556571446 517885079 989084019 960258155 445444047 738196860 313303192 750542023 281752147 482276908 749315343 92215484 755667997 160450445 888796679 961126800 443536824 127454028 388090476 236640608 549888819 464542522 642537679 423669828 754575736 238955818 551483546 260275945 48669872 233915611 299193555 708176368 48205140 886905035 907975278 929182101 124322161 99935864 584154063 842260999 920324544 273875844 357795027 986155476 274538099 287963601 750872339 496266013 576878201 158663885 639215207 319348347 544159621 202646161 960371873 861736763 506697722 295637318 102498459 5994302 43777298 605713483 678732757 60524715 920958719 1030374772 655825403 830010758 620774958 798999717 533813616 935562795 407670230 611866580 264803453 704008258 146992499 286047370 681605906 963760741 661662160 978841945 516456753 747298850 1004037916 674207809 230649753 186282223 222493769 15778439 532608142 934310352 675816538 212458353 1053157387 535958666 132176268 997415950 680732090 193364101 221483677 451870162 54584201 917900940 850326367 567392608 409818686 471429214 85132244 429792787 258782696 587321604 987889656 742424850 563837496 45807281 392446980 650153 193306284 148766035 110157843 50417558 630468004 31121957 32447014 347557555 9097381 160439657 367506334 330270204 451135028 905039459 137054547 190658497 726037506 138042253 97780813 709070015 1027475391 429543057 623366449 814218780 553160863 395947741 221437482 641340916 839642230 122073091 815643748 411584948 718979450 669575603 561146888 938495107 415669043 650838604 583391320 253359941 810322538 8765320 139287993 460890239 642184985 795744533 485963813 295373416 784141438 589589537 975064235 848533686 262891390 991065154 708087150 967598458 911100805 934611872 852556213 142566110 207563123 545665501 796110993 212000212 151668248 1070747004 482468556 296381360 483104641 39510645 971065744 463952833 110146328 161725397 100100454 1017091208 40298751 932238753 741328906 633280604 339620599 713023895 811275992 535661999 982788129 175767153 981764272 751835397 382105813 1065853674 718191151 1032924557 514970961 746498478 489330960 436437803 493717481 120119422 741516388 527520198 959318695 158188426 356517665 540925972 372822280 942684990 258374563 1060877954 320725156 197262817 740691629 186939647 972741564 142978627 54653373 896788130 584227243 70484952 389969365 105200995 671963148 720080241 120511439 749064629 272338332 725271832 26584401 699862198 866254824 505336921 195064701 244436453 633099856 380743892 583884965 630217950 523573555 503038051 726379810 4887146 245530116 565455231 1046726766 348977104 191783864 717155295 227166898 355396037 706610602 451748183 599785365 948908767 28322961 240004139 320509393 577238711 977419295 209917248 531382485 80643687 808984766 1060750900 901558995 563982091 1070434581 629229484 316653297 122126726 981062482 561028683 462045251 173230718 523602144 160877480 830633181 196845243 605225856 112664306 327786247 498608385 764898883 917378284 1044172354 230163609 807088917 908431003 166659843 828458606 982397797 697402110 131967233 465700239 969156714 349965762 482699286 309399270 812781414 14109906 935543095 544705390 145769857 292499389 182802771 145247250 70347678 788217757 669872146 449271450 6066978 571180821 788929980 497058392 112111236 341194412 857461172 257624737 677398427 320812426 323529522 559120064 513430084 497976360 622590391 466655752 793417973 325373246 375150869 432820739 771200909 877275294 486072781 807941768 591072240 33619601 640997356 745180177 782758890 1057038556 981867807 384249810 268401072 747406339 718465335 328197652 1018834585 319464104 528965647 143636178 633651246 501676695 111883141 779579831 118249053 661653293 871904266 735787668 51847606 206842438 219181561 823259473 285922955 810338571 167280853 168248363 669735058 713847478 901514724 462141046 683691962 460066781 798666530 168743581 233984296 137820078 627765984 772777094 567010411 568870386 958763055 83037546 46424491 221011347 951258033 33551730 314173854 773619144 625467710 341886118 233852770 321565479 154796877 9820739 919854652 712248246 41394323 421849301 671455383 1055949288 391597991 766698916 711909540 550126990 861756468 32913095 159502567 604474179 646870255 433473327 233546169 719504269 121458458 3417117 16675820 285420938 941888020 702170999 629278057 27139430 621103441 936341149 863940821 1056182022 1026706625 840093752 452888902 3778066 879169220 44738791 479794362 1067716469 212645572 637966077 871258459 95293716 77330520 303928717 830118092 656102884 1007300236 556850334 344448959 226265755 651746002 919248832 136434826 143432990 195278801 257312447 216845246 909939253 385555099 546956456 322750562 283433078 540093478 717928773 1003928440 1060924674 795733549 1038491169 660317478 233947203 448165980 752927594 295012927 231713872 208936941 451942388 800178274 1063629685 484243467 149267472 345577256 716031843 195121730 765565115 99836846 3260853 820746490 58743079 296449184 932241895 657531684 73499545 476767496 240456840 127337863 504449327 511768046 830571341 173898946 553490723 131003386 486115736 699287344 344494394 500336271 304024252 757739099 966959954 173624330 948002581 766329731 1038349542 863708823 569149768 402197786 424103417 991155576 567537251 183508864 554937751 370506855 1028525387 980989381 398049139 436827898 86003953 236196487 694552207 240667900 390337239 59322886 258003191 1056982000 804888707 476099667 223453029 14694607 766716074 717577157 791740740 722547424 1010482526 448692249 271582813 19768545 244050621 766993141 271573875 980717208 45810758 464047383 205880515 635283184 428154457 733203551 98767995 315284312 313002417 761626303 499693990 140908785 854152782 1004777464 912409899 724094711 462692108 569280338 549763724 795922342 45745769 510738606 792755289 872365242 1042329612 1032179108 560319278 226836100 741514676 78855538 613998627 753181241 891637685 852907366 697510901 244344728 307407355 979630801 388739647 867983742 488595102 61500358 213124466 563293616 976639771 830045139 275303658 658041682 476384721 5786194 918323823 167509115 806308792 966024731 556000568 46679628 281779513 848535145 59865678 818873894 789667598 383081463 1028170801 825880720 746192580 139766723 948968091 49539174 895980032 342674327 1025504286 874300044 194073753 878969108 36876194 817795633 849124699 316693256 956950022 42840859 1670331 938604871 436930468 677610829 440101935 691787613 687743692 453090662 377079868 607840662 65936424 732530990 954637907 30727886 815402902 981081095 870130129 993018464 924837808 186555177 834219828 776729681 457073931 567205173 367516242 642224245 502412005 1060771207 87073697 554406193 900565425 156660023 548737410 294824801 891754837 409688280 684896004 689993132 474953142 465238293 901456139 288074482 73636404 312631598 145150077 394742183 833643844 591797827 1034085885 1071657917 596812827 909839629 404746987 939081525 553905799 421034755 512325975 101887245 784906986 25179712 1048478788 323044417 49379038 408762852 952824050 719353606 429465991 132760119 573548013 976644264 801976018 45590952 1061135075 395529923 322673602 798849815 329676481 840241345 54432350 83406111 15608219 734962793 994083247 144513964 209847160 992349592 340141925 597874793 378916247 660758211 813762384 350536426 741340995 275162858 624267544 4558748 995203073 99179863 310191579 272288645 672084182 484135385 138863598 384145474 304406849 23566296 336527759 678888227 526966830 500835173 955969590 944815747 457765191 313641679 404931504 49888516 116483932 129381285 1068274960 70294215 339693450 960905721 471363334 789700132 440930558 60176973 689717533 869922143 608874791 10863387 427208487 470097399 738605115 14026 996982986 944698099 619804530 824673404 1051034734 864199791 209961680 118796677 108476523 860359963 896187509 868255210 807306260 658268722 73257830 853112643 850397665 716623795 433495938 825958966 409441243 864895225 298181142 526630838 29668482 437383508 478177714 528721731 639027642 55710419 843673663 1056722300 540407898 689024967 273767306 27927420 522632101 649008910 1031533679 1047158857 656086799 671483703 1022833756 1010493580 756496932 357331677 1002734512 232056349 367530472 787754036 948691980 23654325 622726102 958599140 1007479671 590429849 517271681 149697034 487641797 371363420 105897249 639200004 214852872 235212004 247776447 893009727 449605163 1037029166 1021814211 790570596 953990336 696268757 890345792 366561029 421687847 110071828 513846373 741461262 359617037 747876256 645829524 270966835 34248874 793219687 406270747 665390077 303088598 412361570 16514167 297562436 161957033 365523466 830966370 422021151 738057372 16798827 93060999 511808462 902254762 18096086 66162391 501281572 96948418 107886997 971806192 809023658 172332018 466080349 295556698 200855075 988560620 719895710 1037568795 508708950 514799042 476179673 154791596 353686168 427749910 374424609 163884100 408993867 184000053 945554328 569289006 828242826 148570508 212322703 792769064 21078751 118204104 461605281 404857760 234754924 54125173 216206719 342725963 455695093 816666175 1066916024 509941229 427765278 420985964 824037024 842074189 211833449 612773752 200138041 568669133 999894512 177891579 749638074 913480983 146356494 427610722 244211162 896974863 118999098 834254987 357957897 152378613 819918923 303242354 9358157 815018669 443197927 133414392 686457055 616522811 468026688 767500542 496353674 1007251240 1025509851 66994369 144611967 1046387414 1013056987 676143230 1027369907 157397868 451416356 493117369 294661005 1017467673 1013526692 949329476 637775807 754010914 42201798 412548624 1032815163 419804283 508823779 713459581 791598108 600160784 129697922 631978466 184783677 186715513 624140418 289185564 528183331 28122269 200544404 853064008 470257132 544908961 150623756 700871898 935282253 378224304 531593529 986868171 858385090 456203649 1053717528 1068604017 695303715 695052879 814324317 460929492 515429287 369677197 930117183 258881117 757894082 766198974 4646833 343084588 298539938 674830373 223001576 632097404 484303755 433707544 616317121 385956586 335471587 462475539 874966505 542933023 117971581 196704188 612583761 399670687 932905759 807761566 168908191 896366731 22021489 598410658 588353041 758313450 368861165 265078185 330299600 286585653 271807802 771700858 990308040 193922944 592006336 738045283 779100839 61383506 1042871335 964999464 120251911 144577940 461023954 628973282 781329078 294440077 105327550 1063050253 393360250 289694966 220979841 1014046299 556046234 604474200 328097893 163542586 1054842086 400697892 293597818 602784558 293219448 720116282 222779459 236870968 64667938 763073981 698899092 592718776 85832926 412143476 778784512 203582395 780918208 678656052 387738815 677345070 1061749719 55556016 599202301 243582404 632435188 1046844367 660149435 955814458 112150023 514964999 1049414527 611014963 674658370 379109726 644117197 51815301 600383156 1051672311 450854089 1038251970 370326137 639634610 319067206 160088324 804749763 376559290 922543645 882043053 449087491 7718601 734410554 708944010 380234395 274942642 211689022 468237917 523910145 675105675 1043860407 395708979 69838493 770797003 140520652 52072882 140533155 809895674 602579103 862452575 584563331 661674347 766585587 36323378 920083211 916646019 725510393 365058901 237807475 509052029 918301841 807384039 426384643 705202967 149405090 146934303 137078923 664829993 422277204 94825006 857353814 718161955 620486716 218937337 37331418 65824406 164961351 1035047101 345988614 363670941 556147287 30893990 252978382 588123182 74910950 502941351 1017288045 969655662 387946936 24153353 916278831 901904642 921559767 55757382 160224339 1016695073 755067918 14184149 163344923 952741219 419710568 147249303 1074372 1052365230 811675122 752281787 189153063 272208249 122650138 687612706 992668101 789673904 616005264 268302606 237192754 304751121 445150946 1067346567 617105910 52760510 205443559 993386381 945460552 866905505 691049411 150329326 591510754 489335420 770055001 635643681 733178336 96554733 831808323 182215781 915424001 845036392 1036645616 988095691 1062033106 310415889 378879794 437469201 843999643 371008766 669536822 595204475 229035775 413822133 811791130 399969454 859052176 604893484 924241723 185790056 778494623 814029457 859190372 363560688 980836407 284109530 69746636 173405956 138589183 571536830 305074523 1027909611 784610284 665202039 345637063 363111495 197434983 794709205 335923147 121945271 309092503 949086071 733729064 546231825 433356287 1028591751 575137582 880067691 913419538 429511848 874587725 927158087 1061354413 824312101 1027658797 1029161462 1026939381 462774161 892203547 139567402 286063905 300559208 701368295 333673752 993157445 596872166 617307904 112854374 447609247 765409976 1049575087 726713040 570527060 73580397 130557959 47048801 251333047 404958703 808414752 615775822 530999340 182271022 535334184 357994594 188242842 154745104 271669005 124420914 786275455 1057558728 228968074 272860861 400049614 93244421 376750928 651245170 650950536 334865102 81328583 587446049 282796154 916873126 22320494 673482132 7251364 766411954 44337137 799219317 13477585 851667952 1003414335 316375488 571561783 261906643 1073717542 675873572 607120193 688938574 769035155 193285931 147265204 170138473 940950542 860086994 211621957 771075863 568979142 1060586660 955315074 544636788 142817199 803221095 7055388 979489756 136865857 602237435 11563191 254275781 107879669 313822804 975236218 936067178 161091898 570492175 244956949 976527883 920658200 1004644786 260834720 363099995 528493845 522255319 149437578 882791486 182426360 171213177 75570483 46612952 1025997666 1016933945 912353923 774626959 439685326 1019820185 17036362 122281905 111530495 687130326 112703970 232876844 612169873 1010027432 966869692 888698774 416767478 91673766 653368647 855285249 904199981 487446224 73936398 512756512 79546087 826695554 12739551 737502404 235037258 272384317 355381099 838462074 343897967 596012978 1054057839 488110654 922506978 3421801 368689305 650155925 809494488 9035610 864704927 201845024 578979081 134645937 20091073 616202143 542889316 669379662 648873283 1049538788 361262603 846078903 753516308 434944496 90178085 642230254 139075167 710828569 1022722807 56962682 442924578 27095454 4547406 97442095 276533001 152992698 852965187 971619894 1023576093 921568728 253695015 1053891328 80904517 401124027 412136346 801980957 856469199 149681505 680797130 173912453 373224792 183874517 802880551 609501472 439737362 198305170 940247239 126952641 828827572 708537557 215838040 815551111 756094921 556696035 407025916 215575656 281769219 652756960 957257897 13873250 1020379023 351440214 26947582 378341206 898335129 671280858 375338932 53267880 890984275 1025842532 834517124 660915018 356913262 1022580242 519137950 201314948 452924003 443872518 518409855 882335265 662815374 495891547 981474131 92009347 1021357761 606289361 734112907 804283122 814206906 741611934 924190450 119487804 556592842 385238955 944448692 223819805 1046542908 339417938 1009884798 1016840305 764676902 477625882 754388382 781630722 220465402 377190221 982884063 662774846 222755228 84133381 540632497 126519674 833473946 1052691871 409914911 789612059 64207625 618737257 421745665 334954684 676531517 448962062 1025642980 450318785 791711173 272023570 666542645 599318770 45789319 796939162 501764855 725145489 606161837 100731979 291634301 466138267 83261809 651860000 639726505 826887777 724218338 561141753 1048869902 564833501 839657209 383477036 462504006 245068349 831879580 385822979 670468057 768448751 38047403 183597106 117705840 850329225 1015075971 286522510 879008387 315399886 653264549 71776614 368604844 464934437 621065275 56963305 99833391 818244156 499420139 991090748 479043716 543990903 168181335 490064592 623770748 129918911 327138005 699920404 249648632 6836547 929036386 569057934 207060115 572552783 452927696 770186685 746676646 99898579 539015558 178092138 353544580 406268259 566531053 101437410 971657886 438396316 607349039 761913109 582933906 898473900 1025600621 517789698 743996777 891654981 802233589 829220370 99743911 936720062 544348477 718400776 4329174 91000629 428700569 153379239 818777785 275469802 442032442 791263008 753261133 666043448 738638497 729263326 309446607 486079758 520129648 806022681 1038062534 983090937 713928342 247378427 374352285 840602913 536942820 839680253 899638665 820079901 183767826 713873242 964408790 844279472 385071926 19617564 355773293 529161856 311656128 1012845092 899119876 366824360 384916454 57787818 154825630 673588865 27089700 262311560 675494824 693754111 722219115 440185115 719352450 686059443 804531897 315036218 90458648 311673257 187267536 388599424 234250684 723282313 46182020 946288617 98784117 543109666 920559437 463521549 561113249 982448253 979050733 1051476093 1010779362 63660453 391015992 141197051 730028602 513548136 943048077 303745891 213073425 871157585 711869623 596839872 701695295 651149128 778310128 988104000 672365877 130697659 522374894 310089921 960201679 302922058 178925651 453254829 120047284 433718703 437553506 824173883 702847229 455532436 599247161 613141436 987547143 606985502 276509770 151474299 102404155 136609535 475037798 569052110 927724767 954213344 973027875 309748414 389716185 831701528 610649938 200070005 43700946 696697989 303016212 301289122 685518459 50129109 315752524 408543604 378962083 919595905 495968849 810457484 610471473 648254546 467640828 699080145 672113040 5532389 98691982 246277577 897454606 784774582 577912484 446233303 216931215 1069898244 931384405 427966820 530798033 983719635 146912136 119955579 477465555 97987578 833793247 631377404 25891588 899958237 719942490 699696679 429171388 401330962 966012361 272175356 833237558 238880082 710228777 3448370 298972721 789845804 85893671 559027983 5277810 211463928 872834244 207921020 129307302 716060176 93128328 629820173 932416986 571269090 749519846 754064042 844055914 103902180 539798105 810801538 319262731 504593815 490161774 11584031 1046417 403537760 117337880 802324239 47559343 222684372 54405003 17466208 111245889 840643859 758414146 657755407 668632961 818154899 738705155 191524843 439149980 746953188 794484722 501112533 771461134 523719573 897362817 590602891 550882408 327384995 725815856 612586670 973760534 617711345 880170416 920593347 264240073 954193136 503832182 139742488 230720747 685868432 656086085 820643855 472952573 70769867 403036840 15693022 409393149 504534411 978470980 57575323 379569868 219085508 738517554 835695633 76263656 477592168 450062672 177995998 1064003754 568518435 9919068 872512409 481021194 831805418 772987161 375985697 394778149 771413685 88836368 114411263 591219186 640087460 856639855 811768455 854511872 52911288 686142797 464240955 757803438 767853863 709388096 5389944 636814036 942356485 531708694 298756881 1058180066 105753304 332736728 20285151 375403920 454306663 938367729 877355338 335226085 660471895 997016110 394067096 916520598 145980370 582333223 981736710 672256088 916576278 642218405 488676576 347314259 551957938 359526083 340552389 1067018570 978408645 884702048 865023449 827838414 124621727 1004455047 130780782 1046529572 303981719 532641128 29049441 4801864 579043030 794602021 105731770 1030439075 77708410 481917190 826833004 653901033 771501065 339051741 738398689 693027844 958871485 811781876 815334950 702811295 163599695 815168017 144296858 707895920 704795105 845972470 925710439 692403968 501500713 558295655 33563530 1017028748 837756326 480946492 801773561 889435352 845106753 950061856 601228038 229611552 263226938 1024673627 687291494 303324238 290616977 459379500 6120916 970884651 1635599 366529863 729518969 445883323 394317200 763346677 367900808 192535801 446904111 645880548 416951327 900434434 398893201 549951164 841122635 556042614 811009993 169363972 816096885 473970102 1041120900 886490949 951703969 1005680102 993962811 55430772 601693176 179336749 35257873 675207693 198301146 940389273 866410861 52450876 950448278 232639605 369467392 22408455 349705065 672614183 645345351 666690724 791605833 178871021 418415982 657267072 972832721 293475965 105719306 676149854 589866460 661703718 514837579 813318199 784680388 902762619 872355102 4871158 643939801 165606554 291292632 1441638 675742789 122768525 114584612 717848897 516048691 657958017 790804712 1044772610 487616059 600461491 340152667 1038753325 362195086 19002583 119924909 640394926 996159770 182701900 37596806 476267876 646249486 275196751 153265245 362705372 173552482 34255047 555118905 825099652 25787670 501223367 855815543 409230047 889495704 539125000 921439834 745053352 601866491 1050795401 914175239 410042525 27330065 153308086 73987996 1013193055 323449413 764363422 598023629 951708675 612586318 472886414 424618614 432211380 869890410 695446212 517040602 525287893 905266714 85055046 677234291 605299113 660549465 625807046 919384673 697335186 131954192 328527855 274733394 133790081 962736658 169061106 88142961 680672044 1041394862 104929022 829086514 608137555 398127019 423190008 401938104 38016003 309940638 825955439 241252814 739469386 992312048 402166050 418514316 177910879 216200187 889839869 421992241 406048351 658163908 625668628 879245837 985993882 915417635 437079478 673966545 958747999 293822591 721336416 618377371 750910865 373378802 717076203 220679911 31041584 1057001715 117957822 480655501 25764146 525574509 60913233 932236602 293878119 519290228 396476296 615368458 490016269 479315496 829768865 319281461 915573392 580830451 289456700 375887015 256265666 496556951 294851277 488182758 464532938 213421433 596659974 412148734 775207188 642090821 641348552 912370744 541905519 985770425 864533993 140507941 620593068 988210667 682864833 131991389 295653233 54367236 19558217 117939080 659478269 480772472 354110435 191602433 1069817621 772712567 286191241 188320573 744491338 1011287921 881544595 278255964 45742405 784466247 928284104 619412516 935171174 295877572 671450999 184697187 1066539913 75210128 641113890 490473745 512162726 239843306 919939963 211495441 543388355 96517772 570366194 238422856 99648593 377288200 109898769 565942777 156845757 838190165 477537902 650905034 558340364 58439263 52903814 889378897 1064410359 1063851966 335772339 405219343 866588892 628501040 75832788 412769782 394312907 484709860 374567851 212620274 167218961 783036637 172531893 257835539 1071278541 419192648 900109880 630376911 244867797 894224449 296834166 936319290 27631679 43460676 686287568 448175281 1029178474 501780205 813037293 496079375 895864583 979705780 699556462 498460830 976166695 684520810 42025570 527744217 786016039 50002553 1008503663 628966733 1003656580 962145737 1033840576 23429983 680715869 864900917 68345634 777875654 1006830900 1063257174 822756209 280490037 487628146 181326200 554981949 929731393 828068522 401984013 143357490 741515578 117706831 392652875 90265133 203859718 202140152 169987307 251304321 583461192 468153610 837999254 809542364 690340706 1032828215 911403863 241831811 491037745 599976005 413784873 597803302 476113769 844884552 755362006 879741216 91693723 966921935 654905118 1000789018 432897931 166351364 510023145 837438423 717838194 412153629 775447054 656842661 816901298 131027364 239851574 1013468125 422972699 949973547 1006445935 46596213 750721170 695465701 932801376 651370815 323555544 1014548739 316180877 184588284 281288455 1022254111 486369599 363146674 235561714 186187487 423842857 206377639 780617420 548587269 545721822 617139723 204529424 682670862 86881876 229041026 775569009 713679344 1017924000 15739590 545726398 1010752174 715259933 1050132592 960385152 787571810 789273099 435690613 640664668 401546141 166432792 291215522 512840409 88199337 340419770 343366991 466129598 333191873 968798907 666512272 992619604 780823876 591025340 1053367683 953327307 970581614 822921117 931705383 547301176 323580045 722230706 409616328 532014326 770300347 81672013 892263871 308719969 1028079105 102314160 241390534 127197352 776038573 660039192 777804041 877755104 437406626 90099205 327428629 150422995 773255159 789913253 536527400 21776642 267757340 935974245 224838712 800506843 678365056 820428324 404749434 965819030 183046868 41003236 614332434 370903484 584061521 298517407 201370690 779020789 586222925 899859690 715210308 493061279 191921941 564573265 365821438 128976992 985590562 604665478 51251431 158113813 113869037 691493668 441091863 100457412 684910285 640020818 490095178 357716070 590899022 1034587483 320582662 823919372 977255180 466339611 1003342613 564561448 394798213 718806546 781347927 522058277 833488690 42335011 804394737 920369929 267485826 63395596 132560846 833930834 5157446 503912531 724451335 575677389 1016009121 43279194 697622093 868588654 30729397 691920161 156007349 983704406 1021291694 778380179 729795371 110314996 952932160 826870080 432667236 274745080 807449836 450021862 751335873 963611529 485674014 276599499 468355820 101595925 435707036 196476837 119113194 97628055 896428309 825436026 506157954 793697868 246249793 1054472771 971745845 24766327 1024267065 835840093 513840838 712280375 831489242 948215127 326021148 919748845 345557176 624131366 673030904 306208803 711385385 931750210 705579173 944841250 204019027 583934227 13247734 306904718 708455353 152608672 989458779 125528053 338923414 234683095 944544522 22793871 459768449 622270353 710965612 320210984 997768638 833467766 703574745 969530221 443037325 181334451 291078029 358267030 44430751 464262233 838851370 781543158 983242095 607111703 365529231 1022472168 701860247 829836160 650669735 497877412 164061655 507295063 874577373 334789866 652832639 930042809 521136389 882130869 917437037 516546945 695752966 1033768805 970966971 1041331927 263949613 284945518 253081373 76997042 905779274 727918140 1029597633 1000473748 943102315 278201352 588972832 495560399 24248257 89192061 414391114 24930806 666606263 981513284 227530521 1026520573 836088234 351325071 196811301 1026113727 937263401 647191282 459649077 856558885 1007409646 170911177 875221805 1056102255 243413968 750928263 498494531 265911542 205076336 727192550 765978640 69171213 135569282 345005896 605481425 571194914 534044389 402961649 461022561 848673278 924611263 137197635 729394135 14469770 1013873910 574980373 935116365 669517975 526578385 396387387 731268116 937829132 716151020 1326642 666374009 63523877 784851518 915300868 412446843 722553882 838747355 48128376 339357707 355365778 553981249 204889843 589223869 597994648 74537971 204224047 209526504 334254917 926509146 357098616 78665165 435421797 631481949 803025781 165161171 180258402 274150844 616385579 891780728 87143527 337461995 58449683 883828465 225676401 64540457 964615352 170999474 768230606 1033714029 1060443216 117802506 505658890 866508158 130555540 323514001 534215774 423793050 83828539 410128916 589866235 943139455 891470312 724362013 277493887 1027419020 120136628 471534983 804130307 941148936 41754873 2173315 18921770 494688998 284174584 78621057 991902495 145966545 87096702 212442360 714714396 833157361 598573377 508844924 956539925 953333078 968984661 917313790 935936572 935103702 738139344 198859333 756642642 521903793 303901946 33659505 142064210 447347646 571129238 454014316 753049475 94264848 783994078 93818385 147557267 204574321 155940593 949265442 671979390 192996850 400505610 236264384 251512751 175569309 630583698 767053179 1011419738 1069425016 982812192 600446477 629228812 527414675 196860025 147373073 488952055 104464933 450612534 957797002 280712071 131361887 844751859 64445920 902575524 156384474 634499999 477462574 726648679 577416659 15270090 380629777 966920352 689472662 905290142 190384621 940438449 596774889 84234372 239265348 1058877952 86263619 94818199 122054745 346172011 146300304 864878865 122417398 658321492 135716291 832182055 614998494 20654552 19437370 595724584 177739590 58818932 229026750 537223608 75676628 867186830 448412133 163411938 974520591 43408891 535398045 608297079 421401155 864256176 474675222 539534631 535266581 217673737 308457713 455309596 584109586 608078942 757568477 27028442 493892337 575532644 784576775 687754382 899891608 520676325 290192987 346118118 691820909 105747077 83830301 667467053 579108705 525925997 439302320 601588089 248368761 465227845 63226666 653281764 98638197 554632775 980411516 541104042 435894423 731728976 117923880 799469031 520851676 769235496 894302769 635669280 596288866 269392356 899912016 245323455 139450152 334296440 676500237 533107952 178522866 416306065 920534523 2838543 410528783 857638305 509745223 353408547 958504998 76543605 336592804 359009249 232768281 955676234 714781302 188671274 861351042 196406388 710823486 551683412 262256897 404142369 26777526 576366624 766750358 249482578 516858466 35364396 555772242 730705444 56672891 679138585 1046173488 839149447 490282540 351881409 509465115 433492650 865592280 69249937 534176849 645295648 764371327 156303826 426031535 433969897 642691772 1049413349 786184094 822530482 898949828 327267938 376704906 1038180803 148741196 675915133 747045730 367579642 868729598 451244 924905042 254782465 485173183 772797482 459539925 268414291 935982178 724067826 68681945 896858471 826641138 48064806 697363781 75161993 304538077 215901173 525230472 484657760 397597590 1005581638 251041948 59157845 602701008 400431165 530664577 856226779 1021387761 657907445 572715614 184970094 559915160 287336967 866825580 458404599 848930534 519135238 209444739 309295054 328212827 465239349 605326454 1035911546 836466922 981453973 912045653 423908633 82443676 251195541 807377287 572284793 814173989 1067076179 656145142 155073346 486726463 689863694 609322562 172466668 1009749770 560706369 197761841 634841987 755151049 686875790 945540471 37280866 328567546 731726547 518764806 295638978 737696838 373393239 460524371 178917038 55264798 964121827 832453463 756048200 99503938 405937095 454863996 872262679 343301120 857192786 388549308 530075056 89393558 582051667 729379907 47791569 447501866 1032113306 668395981 81140691 1069344832 256575722 153959501 229202494 345919145 327401851 834940797 259023111 84134439 558771331 795346787 331295760 473030427 172935565 372089938 35553475 374889453 992051132 523517493 627170098 276612018 668611169 1024356538 702512937 756717196 221844217 934014029 232338854 1025834295 483150757 618453039 401090238 680261062 165148533 846627190 30961101 463783425 661201775 426104096 977648640 10577849 931758786 487993735 668998665 872001364 915495326 416966190 151734397 985555697 803102667 449808404 1063220010 228503947 841142385 979389196 754050297 232478459 790454147 503271006 78683173 643152340 868660179 846673870 1040290577 649285647 366878519 394717244 97803549 151224989 628641524 41108379 160262329 448984995 33600634 369405460 624174058 268808949 687602675 982847312 355050017 689472814 995590726 30703359 877617615 36983096 42157204 712122707 174717310 400302590 173024658 821888009 336452828 563378020 1027875466 6801306 274219879 860532107 635878191 617983159 940040 280484349 875197689 27861540 621333928 738618742 217847515 323984508 291371020 57449421 596392174 339522264 797157334 1032833251 43361026 164921692 828199487 810092693 194550839 514209534 780999848 526181182 770305380 531267809 803838078 498891115 284071457 342742004 1055967808 40407378 19565061 212008529 916310155 156788069 909671081 19140502 299020270 301960703 873597586 585699446 140553945 654835170 740188036 579987550 145459179 10512069 1071297836 826033769 1054619907 1068572235 513204209 767504611 51457840 407056835 967262564 160085436 598484312 183222052 551188413 783378299 336791758 1030059406 662196993 69887095 513685895 789896728 779006196 170905267 819173566 176452224 976260533 746384278 977029084 457125966 143054483 727068750 299929118 1031574850 407468129 748984109 289854973 131695526 997650767 475044537 367994892 111073626 794093428 817760891 482974083 320174749 954762232 222642389 93361732 635984505 909725713 299948981 12024958 864183600 829389137 589581851 1032890042 472480010 608150384 614036551 895393283 814692128 638611162 639862394 889301250 292906963 1039647840 852907714 723400739 853586554 80838042 561435183 305104073 705397662 227045632 350594030 845706255 1070205884 868734015 183759488 930697559 786964570 713972764 11937099 908160792 290255537 796649318 35590692 492221962 915699256 484460878 283560144 717988173 372171811 1054173377 796809887 1006337861 282126366 662647506 229170242 297711746 703774442 243080900 463243115 80872255 391142090 237793816 787199198 86936818 110442267 499637695 87868596 704401318 515721416 307886497 571531981 1020797122 181690688 105980623 613908866 306296762 220928032 71707589 86488464 325443597 775643758 372367573 765442633 506993630 969222382 699131136 853887674 752385426 439011015 217078201 119890946 283468897 177899663 593574068 636128040 1046244092 723820393 806695867 529621833 363591910 844499860 854370039 303746475 932360192 190009914 762380052 493455347 392571055 1015537176 566863396 528740349 627102972 855160390 196979054 805450991 967560133 989029459 407477070 291629661 615231793 422934915 385532790 1025668952 880593023 612972871 122356186 1043088812 493503439 741811033 898159377 843731377 543686388 440162637 718380750 148368843 485661288 327839825 978723425 95572285 500820549 843350642 616232074 177866713 450335580 603957310 752553698 951828013 550109919 47709158 849827620 263378415 705154025 86900038 453077532 997302747 549063456 135173688 618031848 45182533 816542013 424155725 199814384 303042254 74677699 682962299 699664848 1064969242 95251715 284348970 204412952 15422866 52344287 863407018 165338550 751375790 213988550 1041882489 982285436 88820076 872430214 398537875 197798493 627762495 1068345489 483760909 800415571 704083426 128348523 221981053 293419066 1038892583 568082240 674901033 271566504 672809859 597124659 277280155 1003823599 146011439 642535104 127688664 922874389 437911317 747796428 505657850 354878199 10247036 904145141 13495425 17818666 395928394 360959266 1000277909 92355217 878714501 655377473 1043045983 466842978 594877595 399670253 389245 376592459 838148923 267185057 172171175 188055900 979524820 1072241923 343616799 274285728 998422154 59070514 27150366 61769072 532675093 480680959 291984265 862431304 29079400 293359191 94525881 119221 79577346 691985461 539461727 12074420 21326354 536367908 894896477 39121731 292065095 835559696 125406493 323846195 130043501 695152504 610470319 968055934 168416050 457130078 522969368 569887333 880500613 749341913 731159975 1031707263 252049944 826074475 372567104 625648140 546008802 175237106 338105443 587829995 406041200 866310190 350829488 167247856 416461420 460854634 315573004 288917771 954061128 184857921 976091794 872045594 120741492 341871289 957081394 842859166 103880684 519111953 756786582 617466525 684076691 307760009 1043681336 77866555 493525410 12908210 406401235 910589760 146632615 162544524 655261260 385450200 22065088 979788273 258168486 517439542 868717474 760972504 254886501 985787872 390451142 84781277 1057205498 435847747 931100824 309509755 506220953 192049260 278227106 852450895 803064264 632509016 643164196 314742086 105635453 40279488 684617756 57403284 241916897 224509656 230840123 975584159 454599751 323106988 76630914 920610394 821616875 675204413 175339396 902674078 1023190999 763785170 812114020 918522537 144408592 266000699 906445246 375702447 482869984 363135436 931760398 782189689 238679468 701515592 427277662 207332825 153377263 938578592 388052532 52956188 97174545 905716474 589647878 148878770 835656795 649260168 159768623 55497287 828840120 698489578 956503804 346274683 272406285 927827852 758755036 1043508798 809711107 310752639 194290561 203153153 589886800 1006653802 31051509 152822042 421548967 618413295 357644326 507573558 725982100 350268950 314130192 682432560 560790060 513802411 103368462 764480627 1023918940 413825365 716710993 249579251 794069571 510624519 622245623 357288252 24804489 362759198 40759139 299157603 744507317 576436926 829586396 724100589 421204044 845521485 554535250 1041350879 115775375 624219077 222190223 898458213 31832280 548010192 731906258 80871032 557410934 791186007 317702016 107206602 736645051 21046583 639716645 538028403 867492664 1006076704 825458918 928096865 542206474 1037010552 546398190 1014390617 1054705419 796435190 396013792 531388140 317895668 1051351810 224874355 745664358 762455367 426268362 705861130 320827682 487088669 326541417 492960308 484514708 313083018 22629391 511011137 634828954 586379780 517352301 754332901 710292630 171039947 914051366 909598248 251530447 153655944 912216104 708949552 396066390 1044165577 384632263 161739139 281290357 279763348 1017216681 664058875 734191130 938903475 254943501 393240369 85142992 810219046 440955843 189325025 596214612 582037182 841357728 518330123 494300896 260669229 830350198 277179239 507842312 35784577 611869070 838013420 623533484 726750908 212391857 930231573 155351334 994889691 764654019 79470574 151826464 779024585 504789189 488864894 922562891 85161998 634757712 590239338 999998860 1021613791 862383868 231696542 819399636 456543806 612966113 139768411 345911672 548158039 972572743 887438931 344028227 613463323 153455214 848752874 1044949044 581376705 636445053 314047302 917873279 504695397 492651111 344526017 95920014 578824889 704580849 1206760 551499221 197877985 92794370 181309481 384435366 908734708 687495942 567728246 779223333 107864317 650115669 530537785 207165485 746949854 522150843 559070718 127465891 918770393 633706105 476874048 918820493 656880696 308586814 649960685 48587905 270329439 524711146 377911749 455884444 966112953 323640274 619880680 291367347 1037385183 764160940 112644153 896023275 799684556 596004966 460545979 620554306 664012557 310251262 657348532 898634184 699278601 695253416 334746318 738690672 201923593 975336522 709314309 871354598 731210194 167705295 493517148 986388626 655292722 268986054 778621649 214065667 96001753 26380111 904261647 752975052 911592932 280921486 799309329 351012348 133837453 768619408 126209486 705713565 33330529 177492563 393286911 820696929 691297199 822895125 605305040 626055642 1033137351 1017746787 129214174 12344339 217432678 771754827 653037098 165956030 834843172 787677844 18747643 334437767 560718783 1059005342 402795270 637152659 110915839 628846596 142260325 20730120 298675084 529029705 713640167 336690699 550413498 448594606 130644726 379549368 947810501 276252728 781007301 225130121 102613215 784286897 128868486 755104390 856654848 99796183 318876842 189176417 806470262 375023192 457548104 820704834 705922310 950373279 182474816 643645320 288092998 701211628 177202159 97617238 686126902 48879554 343323581 656917529 53401846 520503677 735844055 640046566 22755960 405186858 524208828 115609058 601462773 839160861 762034067 613954507 983242227 373545734 966766528 620201546 59910243 429771689 182674208 1027924645 847880194 75422721 391787946 539129066 109059508 277946377 434858194 574665144 177196128 861490172 665551698 701270593 313391868 1035662118 619833951 423401471 827915474 33221114 259877574 317897619 482745196 976703037 725566852 900940912 895219856 985633051 1021945109 416090613 87138252 424185333 165484227 784597493 795190526 147533494 1062330738 685023040 249013595 129778827 277127832 591682940 217687069 958490817 381241622 163884983 253796011 609652395 575706397 802240351 133539175 321903204 228333358 389318736 218852388 419386778 233495745 1040436630 589854421 74216558 538056027 462976733 1253328 34889683 411419685 840206709 99998647 400384263 453985846 990184753 388982227 922603314 681887055 245554397 1064287380 554535994 305432342 527616909 340439716 730644420 1024000882 28136704 248967224 933641584 147457396 664045745 681355509 279197025 706500294 1008713317 922800945 499461582 457356338 713448665 754932056 1005151876 533095730 1054748290 470520326 1040788907 176444775 634422283 276696120 391476737 525097672 158600617 484278951 481514325 326437677 928423416 342465231 445141099 1018482137 303749133 825545311 177589290 909364745 42553613 258170051 113568834 614955937 442036722 211508094 108264625 881264650 591912349 874576231 900761767 815926254 494532740 869020433 87550048 588275892 33245040 99826349 120964967 964564505 389371958 235454152 923659048 265943645 765450042 25933439 19188453 890122359 720480555 396209659 395421393 438663052 98012391 716163494 202408374 104322152 182904325 1067225379 444578866 750514459 82119384 175794463 382523521 127593765 287719255 219981797 763203031 701427202 637192946 12239304 855526632 1055384171 418512752 1055693354 520800805 702226578 483915515 73757584 906844698 704994829 709205617 614473760 772956458 1024465779 496441062 381562534 692562520 892528422 96528107 624559328 326185599 161182576 372810491 268045546 83459910 946504319 1034790654 717722441 675113128 192773766 120429340 774323081 472062412 849169168 278946553 819021594 633154990 363418296 849333732 924707789 494986574 199835802 771411593 596118838 608701970 692392984 1006401465 9189525 790484213 619198700 954006430 853150643 882351570 4360652 866756307 581579524 70050106 791642188 1002384317 986454222 814957076 530663304 522655462 258334054 761976253 570175610 299299573 158250668 1024439538 569205404 41587168 496717106 630153224 291763499 171531200 1053249201 353756279 90266612 80599000 966734347 25307267 821882619 881337800 956541790 769241706 331929627 617741309 356563302 141372691 481487395 483723445 911176280 402507850 546019714 170165940 542064252 413293586 396520265 633085079 681493512 81135330 502796368 198173179 355196389 117461333 459978853 446074127 719146539 629097904 443348925 622843644 954926153 209254388 852720716 991085937 67368777 1030477375 668260488 749160407 392715087 556144499 526019951 370765076 820652286 730423187 97673438 448527142 141136873 702561409 490606534 504868380 624873917 697703386 754873809 60089043 700562596 31995697 611164027 771963289 19397913 168110512 875217805 445222024 292670811 21068013 152531778 1048234476 1039392931 654659407 289017619 330597157 570550734 652242026 900653210 857735150 824080772 767186112 794797925 205970382 753668414 472484613 5142635 958031226 426210835 1022215870 352018897 1031204843 387708921 981645968 82128839 647062038 70574332 552710978 829612346 820909106 1005137713 170849790 437283224 307641036 489948371 100399339 866096933 824483423 493289656 1031805366 833049470 669479444 956385352 107734906 158829886 165438077 364606941 406299144 97626546 1025769460 468862611 517069653 783194656 783974616 229918288 889038599 127841369 555644926 1056959831 892703868 677165279 901542942 489785361 335465935 1060674732 787524990 639423567 56637595 166368994 59915776 137674142 297476951 468651693 789011212 876206176 153970532 638840315 1036151027 579350134 158954479 342665341 82534911 309942292 932365076 940258276 606611146 93759214 450491013 47940616 215898161 202484765 720535583 150672345 257491387 339848862 166193256 627212003 1073403117 73151124 248200947 508056976 314187305 894275190 458491624 917842980 689050933 539320055 96886501 56453998 973233804 790450456 46464560 851726439 617975073 60870467 765458310 330514404 326553653 85145990 1007929334 792415228 288619165 376878449 624655285 628535986 168534499 889396866 623447409 201952705 179477179 869886902 858500840 415211558 959220789 900871016 1006880235 203165987 638339441 176818175 747471665 910835011 476381243 599311293 304127197 339136209 429733550 226912421 435351230 930396308 52156323 803136444 974278048 803046792 833905703 982686410 1006620762 89579242 106938540 637614625 681011894 473552491 879543706 1029110888 793130022 1011358102 406306802 1062282311 442572124 656650476 592336152 571766737 150585316 615523294 397807602 858752202 890831771 286196448 356058315 652297249 1011659555 329164083 551148663 427292247 1009530663 982951110 1060891005 703987032 178063520 140469839 14770113 988807540 990288413 63501715 593158372 183409522 543395091 844753149 1032940649 556792108 603706526 793231163 588915872 980016490 30213571 331416552 505256948 396560522 512833670 411611046 315693294 683625614 83935194 862627443 1024457657 401359188 715110350 479489176 294774137 1059603462 380139585 846338175 785561598 760731062 956099668 933178284 314309922 395937099 315567505 92656573 268347807 589792894 556482180 132199885 895623557 416953533 59659754 281449583 6633849 603831623 518454402 697562021 461463418 206184570 298644403 377328176 600721345 702041447 761173412 760115275 948687023 415464060 707736566 762915322 501268501 888662428 677997585 101881148 829012076 134702259 398529214 632468656 1073420388 600884819 937599624 161935024 148286649 107411517 830582278 15681565 189286180 734409212 142611431 743473087 378462481 169905688 870539835 932137045 990920066 946171967 781417169 1873199 813495201 243691090 723782667 777835811 844209866 276516576 726902520 938000058 785152297 387007530 24594527 605248782 143067621 890070044 713988139 987516180 553604329 713863755 313379686 193265443 143795657 465294829 16356615 551133619 382761898 917184096 656916606 242971056 710866508 100217465 25392680 649676196 438335331 429233129 385320509 960005707 99964972 578640746 597173365 500128698 97740969 806471600 864628773 761566307 517008174 195845054 736199801 152984632 871039951 1015313102 634900992 150830315 232976810 614598534 917630610 873395889 1007400462 75843592 180699152 492134640 596543528 943031101 245711513 24294852 460840366 447568187 333591209 175303607 426702576 788021975 636605133 170182766 597625060 906399180 162191767 445129780 263551596 842623555 1000844372 392539888 813100644 938337063 47203044 404836164 494522834 99475915 537368941 823224157 941017195 436465951 209623356 1008776446 605714440 257862908 87040341 29329906 410086480 899358072 867339003 19558872 486463551 721619745 25746476 910459666 720160399 645660001 579034696 155192779 885008630 88397863 637967629 822037765 684038916 958379725 73588685 522389433 695251041 472232055 631220391 67881868 558314344 784097133 464469115 983611953 56805440 229186645 367218109 211913363 59194185 129917623 601165925 194838761 59095703 984098919 1025441424 44249305 752432996 70556911 586739255 317264572 754548813 247761612 937958907 417315949 403774570 1072761561 293441591 55822133 940227599 240985262 188468160 525627652 950841717 1004110882 149067323 832967927 82547646 1024283662 867056785 359425326 707474582 200474723 337135235 70107281 736949757 201057042 630982807 960512679 893230857 1042203865 935435534 61126009 265579076 461454582 1066780307 477084144 1033263852 115465982 563034358 755765253 580644249 665754027 791947297 764852745 659972623 92071010 608712155 156171035 246404451 351757590 986494733 828845206 262282888 829501065 690662008 540461316 257096489 738676519 613626891 987967043 311694318 934584615 703502977 398021135 1069357641 879133321 879172003 1015431097 588828869 863507913 265573653 647849914 348182066 452578302 810984214 891619424 453390395 458207607 355809599 424712526 136055837 495665325 179350842 892186503 734614394 637400427 39553184 789177415 491385473 68676855 72988969 510560191 457730699 894528360 854493218 76953132 390383704 192983253 575314154 345452890 1054372131 936372649 803201122 409698877 437102368 299737107 389936614 13506410 145026698 898174272 676982909 352558400 450789096 229770193 982085663 681539685 754389254 684875604 730991532 999246253 533508704 469447533 979358688 868307843 328115583 840748238 1028506315 632605293 64879465 508353969 242430031 511484368 1002310232 502040609 431455844 659868343 816384433 987140577 494442952 964098762 722129379 271856813 695546025 694969649 777132438 754930698 342056810 979667346 310055257 86305731 835416330 930033316 853087089 17328236 133502950 973805495 429714249 933821842 290801205 955615464 27251311 34360118 950878656 509953215 1060321565 1017425345 448189447 681983167 417811710 390060680 772334770 562658884 905261531 80555421 40083741 753893752 888543416 745869443 332221449 990431157 285300043 708367487 34780108 918983465 891321533 61062785 387106560 931743838 1002799627 472474009 564123585 965162590 320031491 819881576 584864796 981107046 639158042 431044186 133960628 846189243 369234137 897919162 195162954 477448745 263689276 159086219 290790453 726539628 136726542 750053910 760716644 292162116 584026239 982652900 975854952 424740595 683298886 12673189 756932135 1054541678 722961965 506113693 298573076 783595462 939348752 1017100198 50193284 1056027910 408510097 608480989 462672685 375542194 892221321 797522288 730889611 166557978 427121353 906790997 333238917 943491080 130362839 959515668 212105548 747372336 831225403 213866533 85887889 901444613 688718215 233626540 158862999 126484874 517840140 68073187 366001732 636139221 887641848 44973627 162078567 624714800 214719073 1054129017 548371876 172505059 192491572 644721908 1068420396 384491174 2300414 13266879 801502929 408478638 836268770 548707434 52139495 637215920 1039229826 986269419 384464200 810412770 191540821 73902289 465730840 359537796 144318231 639813615 477210660 979277324 241484724 1015141569 350986148 90588446 391420841 312907058 81977395 481267054 993347853 713778458 152003713 606768803 930800733 936284530 771862456 804064352 182796429 999456200 158710449 298439072 122843748 210767464 873716836 217877715 612725368 190890140 881796239 408173820 66797753 38265852 96181966 793450463 1011936601 720014104 294100849 943855059 738785889 244448497 120079952 107706079 775881542 905109446 361471604 294935007 96175786 352276837 691604563 723466331 591162285 691457811 114430358 110251410 206023456 770684367 848809869 951771878 607055234 293921025 314854515 197686613 124229784 675855124 786606429 269312575 446556315 286222681 873472809 886692029 510430350 176349747 390854256 622747247 543108031 633565186 722634038 968830964 1027330966 56253691 840006209 622046360 896897334 181808275 388713024 825320171 991495707 943166594 1049490595 579871310 568368080 962977357 178678471 1015077237 842564652 962937450 861578619 531867120 440075491 870690013 816706301 868422835 1030914921 724566340 724900021 971551829 4049473 672171456 551818319 700201105 493799096 260664375 813945459 562412387 763203090 576037474 48775836 1052644633 349738546 81907466 820955344 1008087317 803423144 194817582 406441332 737744468 116841684 253357341 944297114 541431236 34998033 706761210 692010396 480704272 337498510 47067325 236576367 730431595 802683296 210849640 450585745 765913542 814047150 341073942 295059247 329799195 866553701 479797009 721142347 338555712 527876257 134675668 692954656 907607208 220122875 612100385 968972037 570357978 716366253 134296752 799667959 6150692 44413748 441992441 222891141 589991761 553836677 237841246 109008389 440854240 508238446 290084236 225635912 554438888 327021686 748907728 839857724 988652192 729601128 893980824 341287710 979766203 109478777 143732818 626435334 885372353 20345043 52965085 945912324 463177225 116221510 611620743 896882588 734533834 902722018 57254770 818737928 114319355 371107036 364741395 393183950 1049692409 1060276559 700473259 1037368244 713396022 727312684 371365436 985827579 259327737 1021738521 4440870 177208312 406244290 283583352 16296329 534070490 1046109836 423860906 1045366495 427786334 546249891 1036208175 761843993 690345203 340736063 1000498478 539657766 548913601 604200682 1057614007 975361526 525160166 1039950299 487975540 300990286 480014694 67349854 227144018 264677904 866274044 1013882597 244311784 138783001 954076321 647823689 548727780 380863914 35193468 236557679 376404418 220767397 122388423 763342752 22665652 636570080 961461082 351119931 246622809 704826602 1011501027 471325825 211770399 373184999 834458683 818530164 593594745 300837449 500616195 349518063 911395912 639032687 16661660 540769146 829962242 1023339102 968416836 533085885 729786335 391732638 819197828 502086254 963200134 80274654 615159310 1052632675 90123722 324518230 583680652 437276976 853988664 468122208 982785605 655178907 115349247 886659122 328396166 595029064 333133029 651917905 304685521 536889506 970969658 762857626 329781646 280176213 151463911 999738404 779092221 491383697 466617285 434764778 1070155903 734304354 57090987 11416539 1019459311 266354382 384559103 872117704 134138790 45869664 526912278 223060639 492513255 150607751 12843738 1052019777 1040181337 893501822 1069141104 265499703 578649816 7910699 458302083 726751972 975880997 1036722714 79854859 796106191 898037070 775590116 217211449 160263443 965532183 848687285 779906307 494260579 918626794 236882792 180616755 110050778 402592314 1041330141 825059588 181130807 1003686665 766108066 129622481 669179529 581034814 918695850 1054266445 963260969 442564410 481209693 524269868 884296999 897141883 125381353 1028618859 670157581 953066645 860623497 522818572 62974061 328833916 598576938 124102412 126234452 584271726 867132058 359717021 726328001 996511992 541430372 1020214964 314221148 516350951 819682377 64551889 278766267 369469678 974832989 840202801 589662884 406265937 1057475544 978316890 744113421 391014136 906593210 425154359 84101840 1023492181 948106470 1026839388 13688861 51546314 393714678 346698926 441793799 990869207 966133444 563055076 795606495 699711053 944772486 317121204 983923681 919644344 922673098 301749453 299774583 231251661 162001145 529558369 1069672184 76367740 177136748 525900641 117698829 648259769 1013462278 531692896 298441749 631125118 868583387 1051710962 652885289 773437544 376459070 291596029 11137361 15697149 737386503 773881735 755261255 593046836 964110941 960404242 904045532 685514266 104127556 677099178 130756552 505582999 907277400 349505746 1053422972 577104038 929806085 989557434 39491099 487110654 738886653 869810214 777453608 289990825 294497811 19304350 660602165 44958854 893638486 479109357 1015203729 1056461614 513876835 1066485017 550994696 963574355 675784592 682679576 733318877 954935503 236845537 187579348 47717769 140875618 17300664 16477009 537959741 1033047496 475593472 10223673 601296865 137221305 151672312 852308195 586434955 611692440 710839425 283760493 836712248 330258078 1028382305 411213257 857803968 1013579804 724773377 808418464 99749850 305983506 268736076 891863558 111606266 980248804 272878102 51791732 586273784 948894247 384139124 514480090 450487028 795527841 33677534 614529172 890980094 759468220 271995809 697215976 77492342 91681512 1073269302 780050727 604690694 642024034 507993708 394445215 629951309 78854181 808177074 276376982 992027431 669846800 552535565 642076282 952645185 168517715 961359035 874726711 125267455 191767315 718425978 331124555 646650900 125458348 1047391507 834611783 772046087 943767376 549563650 385270173 682946639 149195134 98329917 454927712 565133552 886554234 149939791 671182889 1064488493 477208284 489963497 866349151 238169501 371265316 1059218504 362229296 634193798 282814244 156368133 811797114 1003234823 941015608 369689645 485615974 648692586 917291223 340186564 856552256 190832543 601606997 442174884 789259730 107646329 864138090 914178094 511932741 841327306 56470791 390176083 759652875 628698839 847942815 1063989444 632216392 400012463 750197152 309501525 1036126578 808709535 319090209 620981466 102520089 298070316 927691445 85389125 416704109 280366742 761961262 1038272118 271107446 680296625 843631254 116866928 110331725 929681868 601491695 771785452 899134778 1057649202 592646946 848141840 252373 830100067 814619548 703137615 914765843 176008871 489964113 308324645 147239920 1021214979 521331391 647582275 577265764 511881086 886765255 1042562279 53097402 291376654 351847912 309891400 770979297 545128832 350213084 470366707 933019115 197190265 801760351 509683863 807207912 1002267465 762045090 116786640 724554037 790496752 626237033 1057832868 251116473 475216606 307252579 398381121 140105453 350757097 625015593 340720996 582284371 297628614 996426278 988185089 581649456 738241918 317984754 948084519 771795149 651205883 122255953 145093441 978659477 442539808 927344059 582627782 927846149 900492547 651037255 514483963 758667013 548151981 243271451 89303972 188133130 518992169 771104554 722719852 104668337 272621010 312270629 157879920 894142309 9786208 903180406 362218220 120458428 205933615 539247242 356179730 154826014 690678290 998857144 872963962 1053088167 218281897 258967552 309907158 1057961075 795980373 344659299 798273173 84349326 355578192 691120210 735027611 485125512 653969571 260666014 459599780 221842883 158770097 83224185 530645030 781936046 518017474 548773953 327421498 665854942 64715293 178258258 325673086 4179296 705679854 1045722177 326792072 419691585 488910447 49321022 603064643 557212187 739396613 428526750 314212988 842308829 348718016 41950760 70408838 980956737 376746801 486854307 677374313 507975271 877415840 915612391 579320772 824350209 1034818193 639785207 203612075 961421420 776197042 565019125 999015 515438626 71560876 362558404 918961415 169969257 648274515 742645469 855576831 702205020 957196521 956085087 1030174000 400388771 919717185 1000842392 469644160 152441642 453259388 534467197 573759024 713209972 911469343 955947645 498135877 820114340 566205510 189085128 479251291 458617978 872119789 578392614 822120100 95847136 118665624 595091255 753307314 525304143 356420211 312800220 635163897 968764384 892485982 940042812 713755172 143905002 464286825 271719204 840499729 45227677 375325951 428782287 350753531 295426471 618574167 263018967 571258899 816378914 320106880 919581686 211972793 606252019 1054241682 805791841 314828149 153271682 160494413 706847554 402024562 559264659 912116007 1009516563 640721311 492885139 386275696 1008651627 893973175 47621324 174067564 414537105 978607930 126527005 194689859 327330648 382365095 592578106 167329387 723728386 734520822 597839823 97973091 50904929 76644790 436394891 333745522 598652570 213828750 457334421 1039390574 983614702 1029375250 433190622 163666385 797222032 201090621 820258278 268789748 1038113988 348621406 703537542 447291385 723874619 1050782632 1062112499 577554871 269949128 231915118 884729718 617996213 130210776 461900937 362059426 658276124 803547236 923257665 779623889 611024405 896963409 72979634 1044315650 907979991 761579990 241463606 530557572 924411413 450659857 69662202 1056884983 359350657 729756111 311160687 193333802 191051939 625194242 178580404 879913530 257498319 118090846 992227565 7699149 815058354 790459214 945511920 674572600 307120869 984319897 899512235 632496819 431623552 1032973828 450223858 279640751 805963919 178175676 470770997 107373159 384995038 945612209 191123192 706964647 533857262 282252857 128081079 1047986423 1021998392 925516322 934335096 946004862 55543626 1005199670 241111368 841335517 918373300 323433001 33458754 1049065623 1034906215 370274418 283058963 419742038 746380828 566747359 996042662 424326389 969561866 203191485 19932388 875462694 911431356 235936646 390708718 347970545 503060036 193961057 764438428 658569722 400470986 298338971 477914380 974496354 417460546 122489490 967341915 17268359 686154442 324701143 580105443 975470710 815437802 737518120 119302390 84622304 86547610 418492903 652602452 723313292 1068990755 143010879 192141713 121514266 1052091239 807455681 494550876 692368868 149049874 63090493 646279649 437471002 721204177 514155726 58906032 986700393 605444225 618034518 958771127 689116417 1072680392 518768663 708388672 378394972 539438655 31848725 286793562 499747506 311265968 745961008 179401088 569723676 212874982 472648742 750399701 682487697 212798836 167000988 838446779 765271899 990645627 151214037 265856041 663440918 563384327 692084643 54841636 96524500 791182696 677680784 547755292 889631082 986442434 1004951213 854385158 508959902 997712740 346025396 574518743 910633851 296260654 261655576 962472105 1023629380 406710462 188119320 797876727 345254526 358944903 25011206 1796766 786246488 630095876 885147389 61272531 682134958 96241966 480708497 315747005 614166966 178647865 833244874 854626587 220919873 954694894 37364099 617046054 644274141 14454521 967211071 80252642 1044372881 307586092 1031320203 863002267 764771650 621032022 736451576 113658396 734469371 943753804 991139297 657088493 1014240579 25703390 1009401478 172510602 411343946 1007920028 337839166 535175963 499325097 595127095 655357276 451284913 258478607 967179748 33392172 211624166 115841534 84848433 647212838 46073052 14485890 769940245 569440392 107605456 68808778 802267334 1050408246 301921318 430149457 824467419 167895934 603832150 500437028 1015351783 1055678492 897846083 346794944 62000433 100790304 88247095 240641856 412757218 424786637 835549680 137331848 225750793 642626081 926590066 941054930 800069534 1067820929 496963901 882370916 448420169 1005753052 903890225 447465699 577583582 31207241 264668353 606619118 447097576 848074915 704416462 375206084 726802164 323514628 1052200962 505056343 224620156 126605963 949611818 5256487 412613647 1053948907 211056913 153315536 624933488 553595605 508090693 164320038 282146827 635148547 649393325 431513562 753457022 930595529 786549446 831321962 40442624 369217825 272304929 427882592 755545107 1026949133 267544738 372531151 1033356155 424967630 113114748 198071290 314775294 371697977 932001562 429081837 299854655 814313368 306138674 991761118 391423523 233401777 80026053 990505312 833336561 28757353 77540693 641516519 35496732 1021343382 147154080 636178967 562825468 168396073 978882702 1068613849 795003062 366712756 115543058 645600760 519527397 698074468 438540033 1041392097 301534171 892661704 222180703 797866996 922125544 894789985 1066350431 177715210 590166740 538771071 886074444 409792192 588111749 800382584 358260065 499501353 337167767 504767025 97292922 158640400 735749927 924872554 690635179 52885289 943794624 1070249417 886754275 901037375 528455574 693753670 678127324 557852102 573299974 228062049 790571327 897506946 544250280 190934359 814119889 633581716 378820824 743000784 935454076 179545165 807515792 371805987 37382490 476260554 823912475 983320542 861404973 195750681 568198000 961262649 162929718 389042358 1037512350 751601740 138234891 700278325 555015443 644996650 547976650 580432028 756706094 892405975 694483561 506961467 156858207 282525178 310940240 121223826 608783767 34367186 745114730 515069791 235060823 1069154131 621501969 856104540 968768532 270579698 989474417 712539486 810608282 274021142 185660764 350784947 294631587 360237814 874451830 1061031443 1020436354 140580283 842679579 471294276 832515512 109267444 658979890 330223199 396702050 832266970 992021064 318640688 416080177 311101420 830409842 592744590 684566882 820076897 703678780 762146839 342947249 382579478 361711821 379422551 762401798 407581908 448220805 477895353 795438762 945429466 130498702 89974776 20721287 599352442 1057786267 211654566 891485490 945929048 36236021 738996232 838096151 163830750 718218836 510182815 645532212 1029359624 347022243 506415167 415677119 518292526 455935780 185074153 413477653 36914289 283157318 895978232 991618567 992747565 3452621 521228968 175937282 940012673 868996930 213727107 726851899 320886586 22941721 266337238 867154642 622940405 470453591 886498733 912322738 790366402 638145491 687941269 344410360 270013792 476482692 232778013 305363190 737776477 153779636 484933470 95197286 352894397 301469245 330894484 152710599 657775039 67617584 839637855 230504701 359712581 200962402 406796554 782127419 962026612 518744031 675401621 40357132 600977237 485807282 356691298 627482927 537801311 621873043 898260966 867879342 759306520 328024429 411668429 378265127 563188211 665293868 651623741 298891670 392402627 211484516 812528916 530700866 795066073 642180172 334675249 752135808 224575784 810269987 273832426 263612959 143494755 99446626 956225654 1037591124 899203119 463097876 26426645 730738307 546849665 635123106 237397156 899947907 390649941 372699637 430079615 692712302 352699051 201333477 455393861 188875977 864684576 1048883204 944186992 589558912 531686799 746047861 1048539444 1073311273 8751185 432793123 948426234 216805009 564396741 837840297 75339763 32398867 285161019 333730829 315870307 460458699 16960504 327669771 379253122 21488678 431250412 710479263 1050723085 524492206 209586694 851566831 801150179 1001254027 479247568 698028358 873892606 645228688 737498330 500141452 481401385 968905487 609039711 89115818 711342361 931278179 204200764 967264022 662350975 824109717 922530733 204376231 968565438 488068523 524748246 466489748 512693027 474462125 469614116 168277307 719144797 411862168 20075752 797175892 586282518 271859353 517185131 639522011 296190652 56443587 446319897 502113425 22952448 889439351 80818957 767699537 70715350 496322596 711968750 1067299318 731122836 785249440 726666096 488122999 428435099 211134030 1041696349 1057516457 415570553 297100112 404317382 218861784 525341097 974497709 811108534 129338419 781312166 723199785 1022188531 1068438308 164758023 291847722 695540220 135858094 595408616 886818798 983680206 793632140 257305185 331352997 522802231 341487648 669124065 457728099 993517645 1069086270 567001764 409538199 45544070 288373377 500396442 574236755 1068303680 499227962 257705600 22969626 366147298 1030306539 894315923 669878810 497553070 490179445 782713608 445718441 758174970 94133719 1022081680 367111262 1002841954 246337272 684998990 16970714 826388280 233317031 878885919 337927030 534623807 705569205 840298203 785266515 570735634 458663767 924204186 836324261 980304123 576801685 253335896 446077813 560607207 927156293 111003400 920453509 159317611 814183785 666284306 405002374 323602814 855942971 246610966 795801407 1065762823 1062444100 174663443 1055203846 210896756 43652097 373052490 400482146 263477518 27374637 869547223 982247381 666833389 926306610 728038128 452360273 786823182 76404409 927185454 28639437 182109111 996295823 154766810 1056958593 213427041 942303778 946339304 1002859660 1028962557 940125000 571985509 539261248 879011256 545162069 277420299 865302189 147755934 672572364 466040353 139043839 1022367784 744293006 516269273 385867070 221285796 409995202 537545967 776522825 567150539 1073503879 941230895 922627758 897812373 53497675 722604746 45988939 484562651 681672444 679276750 529770614 563589203 643394400 555323445 187743065 816628458 1008630524 824621529 601695932 844838687 342733039 413214940 103876762 780037963 676404217 692353440 519577624 659077040 223426516 1039226437 85277533 815477407 1058315436 1014071511 480230402 562715541 424172930 901173103 248869445 785586376 229756387 759347190 881586875 140239568 311829398 798906460 709541534 646693629 821496955 953181456 862741462 505156615 627445249 667742004 1037258618 772299706 755846516 674709524 129776631 1073324590 806396472 489033020 360112277 252972326 336737038 99702481 473938981 877212089 30277038 200484027 323266709 213686666 345418231 495142132 1035140077 617042830 97815729 952764188 644869791 383122817 114740313 521395402 368308545 147406398 838901771 793098803 833390382 1073596330 476396572 858143256 94137614 764799436 993371156 466413048 491174379 416837189 141678733 269771048 290698301 465306800 1034782878 617933565 369380279 291571298 964408197 808869607 915341654 580079875 223295612 891103739 704506841 884951038 394164992 959452619 696559679 532653856 968031072 193163959 1066451921 330480407 125781872 1021965 527089208 905752648 357746160 856000436 847210804 440441586 845953558 701940663 205131594 968901361 17617586 174035119 731982646 1044347170 52870735 563785219 54146807 900981626 325684263 446225216 563657413 277888188 440022423 941243693 840677317 457620729 288536627 138746692 47538520 614967982 219989174 687926898 269762842 703927589 55917859 886229859 515774271 824104034 984656096 952173725 913496351 632634790 717452908 532685280 280522451 578998813 369475141 523431782 278087434 808719209 1000953200 804160266 310434146 854100476 887041474 489190495 98341961 563452590 230514682 870255984 531620099 362582548 770563160 235787150 1066471732 184044363 344206257 865474312 668696555 1008408721 734445249 580524380 732502981 630359263 380281247 997595865 476591913 139244138 130207112 132079217 627452099 345652116 1045613797 849797736 57673621 506538210 528400959 573560828 660550432 869225217 921049929 611573291 1024254994 781831555 334632069 269917257 361031778 538106064 973445492 538057264 1003152263 191833351 148434662 168841094 455776987 182386765 302493399 695665528 957171723 615791234 540201465 374032770 526512524 99508116 600684684 1039549421 190797209 801322686 527013586 818855469 403800027 259718302 815071945 246751209 838594602 729549150 626101312 941683065 170509565 1446246 773948191 668999004 20948651 725640472 576369459 850693804 896626772 212665498 834870713 92178567 177791067 65900938 381538965 286895507 700371999 301156499 463179525 669053106 432667683 989258488 158711513 605073616 672193781 380422415 786217799 64266668 609814660 118185503 648722949 1015974850 1063673746 767237647 289425818 7037416 181780115 600550467 562581330 890474634 714587964 568517486 503066496 41625851 456396164 844080723 460191593 90610568 719355898 549691043 1038293468 556040783 608806658 279735801 306194244 745648511 167802415 105455577 565765623 225470159 866110933 997626795 1064913134 222189912 763252057 221512298 1069839828 840000851 906943066 768294161 676558921 843977870 351348180 1069300491 807132539 975612860 425848713 1004474712 86140350 552716237 306103895 124767576 216896219 717163412 390352357 580630807 697453053 316127308 662292414 72032880 334958459 46551115 491695251 300931412 342889012 48686702 284373660 1013029261 640394554 911954175 101181112 1037143164 304360540 351783640 215223157 535506295 210069825 1022927056 159096191 552635656 891211638 73621965 603192431 38539644 252577236 425899923 793802486 882891135 418729084 771530062 284933437 683629558 735791497 68287670 663204916 471326027 113198909 774604450 701091415 923069374 726853968 720940409 28893742 120020373 10680224 279002177 1052246443 961073474 585844241 99161610 558694476 420660689 844752990 696214146 21446255 1026635730 601351659 864900520 217396186 504379426 147918540 954389814 464848700 385058217 532211967 851137740 1072036641 10275360 272417256 834668188 232114181 66888952 139940447 519107831 381721677 205157524 470078003 939355911 461807392 588262412 487149278 1042765552 217224869 174352036 562649151 463831267 480337037 95367542 915463282 81099430 735073014 299858816 466472720 354029616 202008240 286694792 265200159 934239788 6461184 901191229 729003268 728439421 42816903 821692024 597486107 549166306 771446412 71968331 301565882 526534638 334903144 120841105 103328602 1017083007 1069296510 1029478037 910521230 709588669 888376194 989722875 1011534146 486986521 816369880 445587011 472320526 504767124 717296780 389683582 410203141 12902820 413297399 176766416 308345764 140977957 689509898 702691803 1042531792 186816566 979090939 222485255 455690083 247869399 328128737 490383267 320187630 407811488 104460943 275296841 107638350 351563573 503443791 449465487 573390170 65514055 32992754 634337839 941938287 388309260 309764744 654863545 337693053 916068064 882670055 280990874 484702776 990425963 128784278 1028245867 918957689 126410631 297111645 648449374 157583155 728919040 910483390 66579764 163783344 1061468210 441686722 706364065 608871534 467810293 371201069 379176304 142167498 341851972 124396862 770919117 970849194 804110365 963287875 562104414 794603988 365586509 766508448 517808658 844787815 589820751 953383337 916231565 586123881 1049387364 537745805 507687486 518233506 520411783 124682574 705675826 850522160 661182797 413724698 17516932 474334219 463543323 758319850 224870270 235960008 621853749 67531410 232454208 205801541 227337453 449484511 837855343 828543110 211371871 183807879 709448402 753817822 658425432 513949505 786901518 538515228 1038309050 1027417865 93658495 210006926 1039415755 707619545 397438474 970673475 660384157 697180333 245047270 786647333 404568269 1058993024 762135831 785820774 31414434 114107623 993684772 144766748 829752397 200606519 316820416 759422891 754304657 1009756391 844005352 220407296 167816297 677967090 581029567 101384138 182735130 347408912 878655766 300052315 1021214545 335500037 731378681 864991458 402491484 181710445 515014393 657413391 433236603 636624813 287637374 343088359 1029147894 957005600 469770720 790502008 535895985 704392675 508095977 783865751 94029797 29178107 168083384 4721690 341221924 73669157 912265590 1013224844 954651859 559682368 144324305 291351028 936717327 386608636 491068841 128608616 313190802 85194644 343449364 566736048 757920083 576760724 922472339 545746135 531973988 158755692 83249935 899638129 850020426 347239202 707359377 616562693 981545640 928086005 21264600 744028912 513777923 480638250 1049336529 889917226 473364045 82562273 132282935 1057107886 421616174 364074647 372106929 615113519 697864932 1023950449 937544051 574090747 213826706 509498509 532589022 160802352 853992179 401417406 937382530 366101736 953388355 581946446 3974278 104097503 922331586 914988304 256146321 597768421 418424241 914402703 287070699 316352045 86153940 147340745 684998905 390918570 946009449 273333249 1071687446 21030103 789362257 1043535419 891227356 1050114862 249797869 637570263 390621450 923738492 805448594 518006268 429058047 885728024 983374878 145824349 376192549 698731848 493554548 131438289 513193519 204234346 587247370 156142103 429370770 234020585 222630301 981907856 1002911860 925164109 821668723 980941855 613744089 566002648 907151763 110781922 707218030 643271699 816914937 897930909 517915577 8180874 512487090 542480098 613848775 796872018 519191658 221436351 227589827 844068155 934485786 463175390 141848173 1022681152 608690164 793682239 405148820 286427153 848830328 570261323 52404379 422989357 1029549658 563178238 453614983 676393946 1061250291 394274976 247941285 337290168 700738780 216486771 838618302 778807042 793637743 1029761903 822101096 299762258 552510683 951830607 449386954 565342426 610567736 788263153 443032564 829699665 57970528 470598081 458853292 600975913 956581961 541296486 243281122 438261469 664508797 320536251 616196057 1051528684 961283925 1030817297 784821077 445575373 533870194 215587758 987507216 773450730 22904092 548866250 957478815 561625908 497357976 940402004 452270465 1012859957 663049314 476202508 588819505 309074582 845496538 201714483 685939352 378337560 897720908 969617824 294224122 212442896 994920933 440663050 835448841 404379787 873853703 484629574 896528134 893900772 1028483112 899154249 1067825365 511977348 615791638 782040174 212955311 260812528 564900704 841432324 817998038 917775696 762058195 940916473 43707653 811505118 824595175 49957296 713787845 285897833 948841912 1050582734 159756050 161215473 610267583 989341835 473908104 449622139 118344423 482073686 1036277035 149664152 526962545 923417179 929443891 812777476 459073465 934584182 964561737 490617828 522528558 893257925 272281788 59827130 71052397 547482875 166749892 542195908 1071681265 60851574 362321267 865322181 333064943 207468822 63624680 959726517 235893104 893316224 419405643 376788775 563861316 413898158 150898671 878082805 267339917 584442764 795223848 572199922 866416002 960050807 825162468 843986734 1073563460 118597130 752418039 1024113669 569711484 219551742 430349810 119130592 775401886 960852232 499725581 734487919 352910965 800295883 243749026 226268578 1025460635 363862741 61656110 112556295 362458254 783347961 331692700 144070652 757051603 486126100 850693236 459567159 742704824 167587318 431572127 498101136 744399655 978185338 1017015185 272433500 333070669 309300960 173285277 94977740 817392710 548594373 841386280 737189545 701914713 507132129 30066441 377317901 59818229 338967065 373232522 879061339 774780121 301965350 264896961 499952991 1005941209 590630448 287331206 182789882 1066505382 629575371 256273196 820522730 405374189 955043791 121334387 362678068 286403605 1070988776 76226688 812254852 675988531 1052558650 910676437 724118504 545745182 640160361 325778927 1010396922 362355681 756178308 413386181 356821991 1971317 787869439 586034046 2052834 430863659 199419283 997828064 253762212 1054884784 774566501 198336440 58379076 450681216 693543365 970364967 948090200 918549955 824424378 726755156 849712596 11146776 83474191 974205013 194481919 962000102 502786438 542593014 47620138 63787805 490690581 780670322 1056953975 1026024474 38259205 534527491 542138886 738233991 620072904 688304984 916941448 824668701 256744121 854033020 243442885 583013591 455477764 555738529 894114093 751199450 384144009 209652241 992156286 253287170 162759863 225875401 1071695728 85733382 846793719 71452938 13908098 909113810 866361286 156115149 499724503 495073350 220535800 84874786 773636580 860520812 34830074 803747617 181553659 30163943 912029559 1003191829 335538605 69741129 1060153155 173185980 156987282 980902152 622852464 938256443 459203896 246712956 677933273 69167094 74370 307247059 866250413 228242574 563705093 885416228 950099041 136139198 137835117 1071794402 1058715066 51201717 879711121 65293975 924220236 8336835 501342414 673434165 765464553 691856627 585952982 111542353 1061421553 101753722 833796402 119291309 112603718 679101338 681480289 234437368 803829886 3832596 340075301 451380178 418812054 74232857 554952031 1026350658 253669904 1057976657 552868623 676934891 426305398 1047176096 562706086 300336035 24553681 432539396 435226138 54972594 746573191 342930351 385164794 572560070 1059804657 259373088 436063605 864647223 445160464 571275882 658160747 110845119 855414589 792129825 962344538 660829635 391063126 309539806 312638990 705788685 401419445 643825513 1008387415 1049571631 1016535122 596251216 325114339 796356932 835881326 1017445067 944135062 687346899 323035308 1069860704 33574856 937089559 156688556 335648930 958368604 458813029 101241079 216623572 122819958 887819954 297876345 93053488 210789812 461956336 283932945 1001840448 531606320 719466129 1054660245 866859543 556910947 261724429 872307608 637165772 916679955 991631833 783866902 36003434 87113707 495333869 602595113 591506134 124650706 730474817 564934935 833468211 929678600 112610830 707065636 1071226585 106046624 67250444 413670302 691636057 507889096 153137685 315259699 206462363 746316345 776374951 946123762 512042778 515836316 1042289086 462824149 974987413 191536060 28508282 1064894210 55659079 751081920 555855821 1052740483 559410408 483289608 671731232 272848800 1049747070 1027580811 530651494 528937033 616566026 220849745 389913687 308468163 630604453 21555875 775620700 108415358 465685845 754919130 533888481 476452581 815828203 892403075 1010352430 605024861 1021039354 986550122 244299467 813880817 981591208 727283748 191738247 848884388 481296027 810286267 274271827 903844078 1067293891 562469352 579955489 429335718 449092846 806055319 957988514 420139080 708854799 984072507 227474784 287624854 32832222 826478449 646728591 460933579 909079766 864066047 548281095 1047679782 968336729 1020239637 162322153 802651935 104082840 190452378 416727238 43047624 160451084 954339309 332988827 160100474 480586603 1009098073 585301214 814888233 742814764 384700386 136732051 406925496 838426859 601395568 189250000 215933550 478087779 88221404 816619566 414755314 202103240 468605618 566859378 10715025 212527116 155331246 797466555 756705478 995624817 707099483 460501480 710183215 225691814 574854199 248177208 118248794 211168041 711961832 468136992 606771211 30587005 231484899 7788895 718562141 700169317 155670892 156695011 893171082 971388248 287821358 16008910 15391365 830327476 171027392 107612077 782097026 64852039 568852305 425676603 1003528773 409069092 888546803 820432399 1040294310 851639 110350625 790317437 411686351 378578248 810361924 1044939737 661472005 567473647 378321644 423734812 396845909 623221750 674670492 687305 324215257 468868823 245762619 853109592 746313357 108017820 261451303 779129070 736220734 714170427 179762033 728116922 140041914 686764344 758050589 429539476 47594057 32674953 763917115 452126959 232906523 475082635 10442581 934089936 1020544879 270751100 191697502 332174017 648078868 814729421 54065192 419434018 193185718 78030299 712790959 612976456 24853773 992318313 547184284 593297202 56506253 1002852824 802689459 1006591915 813350161 119691807 426526002 483751796 519689932 765296319 745126795 154370707 680348206 15555937 979293653 559015646 607972951 482267816 916958907 749221083 601932516 959037544 262590224 16696504 866836002 52267323 56170609 950068240 723165570 775756395 614702045 1005939678 719181909 811255379 227601203 369568986 24222572 250306451 848719207 276171386 643201544 354263801 181046188 676790310 286673045 204832594 1061964210 137911875 1067184226 916816215 239300835 690245108 923967522 945375021 479475458 222459823 58864289 151439227 412504642 873161509 825489896 268541849 238484716 831416227 473580606 389014416 135370001 470167210 887212071 302972703 550920928 491008310 602103833 35404460 8632426 303354287 909451054 535087974 341992431 957158708 234824550 353617180 359579033 981140611 715234354 749101696 751882343 534225840 1066120068 334143325 782054535 1047514545 797550360 262334054 239357740 546562360 778220539 1056711416 788404823 602074319 779835570 944361254 92996780 718627615 540362901 292540841 890351246 440601097 120022361 622208989 896165782 821870325 938245985 458768198 962249355 559415959 385169576 988683336 360958333 532422233 384574587 976111027 339039249 740055035 1029592265 424500334 5432785 686416347 995732163 74337539 413105196 1068035309 917396912 503191422 347988365 452914252 644390030 483858315 877622059 728874376 914813305 379268948 276846108 414972509 826711369 347527106 223832422 510936585 412966256 659323478 533530455 932433130 796903644 280726319 293362355 884776670 75367749 940369919 735518875 95535278 122012558 622283704 419551009 721781122 1072995821 832508279 370053275 734685860 371873867 167778695 387640200 989316947 714391123 69825454 733427341 272344797 961191557 970782742 616020964 204258779 727890678 618105177 1023408882 241914289 834011294 884854948 792891978 832330912 643685968 626534607 963632303 12379122 280341996 696651966 742080300 1072533077 838231170 706767829 857022987 289803596 1070526552 418729873 1247477 488212186 1052597390 35627685 95942919 160877045 182067193 37671581 135481293 897838287 575665674 156364853 286083863 904081409 12979243 396828354 1071665171 197269102 1019906475 570191793 825730321 783911526 424748292 565363993 269710552 646193587 836887867 1322783 853599429 107057594 820041996 291087682 90719180 966846135 386523970 427180088 777822865 640212127 1008840426 282039066 697506351 225309225 755221547 642853908 698488707 274329037 468702923 352338763 180590964 69764804 422928450 602131728 787804498 745740962 244817398 85778875 946463529 776286492 1001781120 1047756013 858822661 786709551 211451170 926760214 707679682 836747295 305610092 446439497 179725135 936020266 940170447 863698942 995618325 549837754 755879856 168458836 346428172 214564566 749447954 961926379 719933142 633788741 184910191 602338124 34267469 187613014 216934176 77308322 720533956 162879758 1060146847 407734391 856690926 93121582 959921173 530222018 688894508 858855257 1043310414 424295944 818055621 989604720 1049362501 411387299 953242678 933811415 1046825535 771476839 697542423 307375436 930638203 786466271 59552330 669334159 73572754 849120090 849595063 29779726 1033422650 1067278875 457541468 1025476598 827090907 853082948 858355768 688860456 20080315 817672476 777434521 213993011 447930407 499438704 870860877 536994420 532773221 174517799 1008385363 301607346 157625922 222254721 380947023 645419495 661685286 308543959 238956908 690047221 27345374 775634231 714586483 807442159 11139363 914160616 442895780 268529108 62087120 161075833 657780677 1008076716 321577512 1056792430 832563522 405203416 814575826 933413560 1016877415 370190231 140858576 677277926 280854066 240901683 213075520 722662966 996437545 542059272 910140256 614052886 823162602 834037826 152519557 82062954 114775839 768029409 781070666 42325500 264423910 101477194 579852933 371236579 190613999 617916288 391038487 543366413 76205138 1044133631 165043532 934103154 332911166 249843116 698596727 138884414 518252932 159022917 1018655519 292219024 420861345 437582928 992553943 802864863 774406192 366279498 12819975 577215496 796672507 16312927 20864835 433179450 270856434 575494106 422418287 699334933 199323994 829976179 90585106 387946234 806037 925565862 1048866146 832944787 33686279 7359781 180990905 461349686 793398617 1062041058 427247620 447359801 70056470 333237818 445598204 733623639 358603279 711926617 234623947 555967923 208727703 760775033 712479772 976809597 174505167 304603766 51938577 594553978 509295213 135567223 636024720 257565721 415592025 1005402435 829013359 396059719 357960330 658796716 1014545549 953823644 657123641 952539003 505540533 595146236 132298260 138596152 150003540 569487283 155665034 777102938 281081851 815095815 240650680 647484361 44062527 436991109 218944431 420578368 817431757 341738493 532318738 78888732 907820693 789436154 910978385 730262381 240395712 873160580 541148910 433463273 913603545 979327796 139006441 750879946 719085487 662436392 958896041 495567093 200259931 601115514 323607938 1058429121 495803388 181081030 1012052995 551017581 882247278 1067108375 84861025 30291260 647737178 419377300 733889628 147869913 1043273841 1046443561 290587417 159576278 408813572 350174334 628577752 541928488 943377095 101808764 590238024 482982164 115609512 1030489330 307756640 954698834 842578266 723462327 894260846 1029307069 506894044 148881383 464359363 851682522 23040510 976793259 633137123 232200351 464417362 510518472 1016168286 248025194 501931352 175421278 586143961 240073273 264860326 445811324 130709448 916764562 458232237 330904013 393302078 865953866 556209113 908021191 555169008 537033224 1011394726 187666777 755812693 840807371 269044282 271583942 64269135 458259741 1059588558 778714267 402348063 64895202 931659145 978526001 785911399 569668565 765018190 251926594 35181962 444907448 561820028 970540450 763609210 82542538 152191609 1021168619 804514734 356633485 877715286 1020465698 697065615 537904929 88271512 557581043 950353 174133782 822974222 10664013 183282777 1002009875 648584051 934580837 138019301 664286867 402334180 834642698 366246845 503259858 631384328 81483764 148672951 542700649 772657270 42639583 66556719 586668585 411477612 535694706 922422099 291872945 382190085 529076746 821652503 502501335 592297383 156061119 1050253102 26164090 470415300 966883443 588547007 840206940 768326736 963830915 282972300 1058686902 488134779 83769514 677675809 479880566 520039005 767868352 125789580 539166883 58326899 677663381 904135846 421912745 140180972 395629179 309955402 552340954 828881078 359437923 861822407 143897331 1031179107 521880118 161379489 547455053 338418636 639970689 368073160 255824123 651736354 25266226 788884848 364521822 154793250 33550170 1053918276 251873095 515422919 829996948 174396634 388232594 602549385 834194406 972330005 571335004 676445098 500759329 296015571 616243026 193409783 347863189 819374702 3133 708842901 412975054 982736507 648322496 267420956 752985592 363660604 785570657 90739556 721636495 507092876 791798852 99186843 307260849 705102807 618254070 529532349 527472032 274410577 38342287 161853111 709293599 546565972 311504560 339220603 975590051 1054220610 728083289 830520425 1026453525 345950570 61933258 457438861 1062589936 517733711 188092197 613800934 1033012480 24469854 569631678 417135353 769165663 832106588 537275858 946150609 1068388231 627753132 189159823 548836666 335015408 1022661100 799296414 1027729874 1036395438 1029909820 328179082 124393631 979774841 9789839 446320960 427572695 125263693 956567918 333792578 94145969 149998037 415446931 175514215 160571773 569706556 580362837 1041247515 775621721 752284532 617443809 459608825 333752620 539007652 850001143 121678282 1051793021 356725774 609876516 286507611 172217501 214422900 832687379 101469864 471924892 842318455 920737584 963586408 186955090 197270462 472991370 462790295 439189370 78895550 678787744 660859159 145269194 126305767 458834385 47797125 261839630 101735544 236799572 634366226 904716620 301987848 882988648 654484401 858765819 1025327195 838534885 695436949 171198386 898935859 347151003 435932815 523789159 1067341548 1060549370 423374189 852799399 118560947 600864901 672493010 586463837 803751020 703990433 10714946 281239469 216360318 994770836 830488472 213428992 763535476 885638504 590850856 791198978 967391003 348123798 642395557 153545465 825132854 776545104 154251024 146732074 839494142 876861145 482203986 200186204 798409227 15581830 636350645 341664625 62530893 595289143 322654642 778649258 566936576 945333682 140889149 312362091 794349261 633085372 547013955 544112596 1070552796 798253493 94800830 529823722 276001120 623449829 765609247 298396112 35970371 966281635 404596416 282018374 773898748 1060140538 1028058037 796705103 493010030 673102545 626175034 966281586 762341854 546675487 709164350 445361860 966503074 177229383 985615873 987155234 983739869 552915988 69004759 712955671 437538563 874397924 4585422 912806369 456941422 951832060 935186925 958958336 376192845 248457790 509079595 552078186 220777452 154670808 149327717 136962482 583744886 909796594 145731436 785623505 510972178 309840453 597805744 913850997 274190443 650031194 1044288936 667256663 334151405 682896049 822667571 821529356 714155986 624685685 1044594253 459040212 1031266532 436528085 14942121 363597695 882010628 55131883 41594336 215287271 712969895 51126115 905914365 743399011 585339180 591484862 284253151 87274477 40336709 211097138 892053002 562193863 528214743 451944217 219266910 633828004 6594027 663841846 299719148 845351665 1000742626 923003892 47567188 770164197 1054603535 806594281 849561277 569287890 534972175 952843090 921646439 232606228 1013129280 1008589635 341352466 125599273 456921911 485868252 314455396 495682525 433482681 664735765 1021173742 1038637200 808233206 405344619 353133469 99929166 1029276149 122074178 815816197 404680558 358951077 248809144 513688740 71277367 931090789 421285274 1027300350 960475929 740574483 830414928 402433246 919494 334290604 53370428 704112166 1036097945 913777885 292903200 488595680 60578248 218392327 633684234 910540730 865412899 216911223 965449384 78212181 758593395 650755400 535293966 614548341 742843010 868122 941609099 617669605 183420512 545900657 512357035 1001469717 330491983 923377023 922542819 755384680 709544838 882811806 1038015420 955180930 382425459 382023211 131054806 307341727 423082139 87519433 834917652 9965747 344125435 203730257 765292710 454664277 759693721 971032087 277287863 1819006 101519890 868805091 522601833 1016321606 294649310 1024952451 95032457 898317847 655430779 396790748 434611855 945021950 329028213 504173556 497298514 823134243 895583293 215554756 896139866 622169465 31076265 307365556 11424286 573208283 650056169 30001823 483346323 713776954 611369116 803238099 1013143440 1066193574 883119574 684276424 328177411 364657836 910311244 68594563 103673816 885393802 851674153 193522528 445937735 85167987 375102255 52182087 727198069 933145865 660403152 792393692 987649843 42986304 787833294 535752403 573568749 10148539 177916136 872136613 507413446 870867702 652053792 108885251 935808673 681797021 864374021 1057522806 1040235149 1023604340 678285876 578001343 234281497 272567716 6702685 1030304768 641761906 484087313 920999815 241848222 97256145 974137171 641633251 241002368 452804454 1055282477 997220893 224162880 775659917 900548529 459906792 395254781 200460701 223710199 828514034 398744342 917094050 644661033 64449644 5550442 46026415 860045497 475535510 243543506 837802929 426451619 577298987 280724356 862934015 263643203 429237181 962983620 731421951 128022732 427157077 121367080 1011497557 212850485 112965059 758648703 113669324 158094827 1051160804 720313039 285880775 118111373 529838736 354702483 424858737 160454975 328971911 1056974241 660951094 376570413 746431236 770229014 109994870 436726661 34426529 86132638 553651955 39286850 150575020 924980775 237644208 51299250 280954341 654956148 706544539 728261226 1022305843 180118708 976453089 148742444 669473990 926053800 875677465 456410614 541301767 289244625 13285622 603105937 308382247 252795502 486838288 77720578 607017518 200725700 417802891 860062846 152773072 855184202 740086992 530099270 391136940 68951835 908445190 749378547 978458887 545814546 969790880 789838962 605759108 257953443 487867414 41723122 657282796 298812872 71003960 473439346 212481866 327598562 133628104 434059567 349930394 209822929 7440933 10127183 127379000 251976283 917935115 1066334672 195100237 37172208 241985950 247135020 52435018 275760520 728552926 847012728 188740411 60452912 1055907386 228112201 167943650 374864444 224785944 855491066 529931323 477114369 170929534 220735605 236159642 237775845 361510338 442505468 1059903017 93864986 39218735 959998394 339073730 622554974 1028828751 743030672 433340235 105464656 439525531 1012308411 979234276 924094057 702655256 1048065812 401457573 33663457 467343529 744024789 557111839 765044972 320300026 280375078 753090495 692849463 691431283 398042787 316068574 517576754 45545146 165339499 426204681 430589149 46973432 970864352 143097636 877403038 824538340 622984518 405518170 31922453 537651647 308453891 373596995 465677689 385369073 936793459 24885739 376889871 909039777 535695708 170294827 132041176 333603257 1056813728 295226914 67973654 530081895 132319961 1057242303 199629946 815304514 511258001 161635057 260997082 316163713 541765360 495332426 903575663 226621559 92310371 96813426 800979367 774512341 368674681 685368686 870612970 225970938 264487419 696173887 425752039 542861160 137195089 756112469 87116126 398781914 90936066 39503991 907329996 51888694 891678250 1048882642 921121704 267130269 56734450 924965631 163903214 934019514 319163102 318480041 481660410 848845568 759214793 799371100 219810861 102116097 1062916041 867479125 355984995 135711462 5894981 704981806 82984780 199094739 906957667 658514016 459381969 786795946 521313907 402951615 59508759 394688030 1352316 797758631 970158174 749938388 848541483 196566808 436276915 1037104788 511761694 623262863 216724262 377541128 690834168 789783537 635804818 784120014 362577911 930277417 687697519 450293481 516806967 162605149 379769131 1007373331 277466081 38239356 33472945 447486497 639565319 833702649 931937667 1025625381 529777222 750044080 630682777 775286958 829037883 33626793 67327869 477901011 58762900 269651029 335476726 558071443 691048457 599034221 847986510 953197359 636176466 767852278 751222117 478686046 325654709 202455232 636694782 984703893 297587368 352894394 607579986 200647168 69885632 96037801 2803480 453733137 1010702120 103302559 243902274 785066144 633685216 269697938 235917802 873913754 672617416 756610598 78223973 436193738 215271170 327921489 131641808 210868997 779668589 871175035 376584608 89835046 549260632 1023746325 793610428 428536254 78545832 888330356 1050843806 131485569 717749840 914387886 324795991 861685921 427582459 138293322 4036566 1042827223 768568101 772607508 89754094 29120412 185761998 389607891 440523461 840574631 373366620 177885838 852808607 1060826457 754573529 75484967 1029868827 318175339 1019250839 500934921 967889309 1057025687 882225430 411552752 947152267 874908379 175340809 362142710 918142231 642491188 650354863 663785601 5936913 736884761 1069898500 1020323344 512698184 949458873 909071801 103279385 660060658 582504229 922777602 754914799 794522305 755200813 857018020 757826141 308214388 469203948 598103185 674092923 806449574 143353960 433016359 130820783 514082923 178726838 244583007 577146452 860109004 916977929 958583621 49201042 40310186 1003884693 327125289 1072879797 877676421 108833107 245187134 475213697 646155372 828630826 338011363 228117131 661698393 227779608 724380274 930194781 483344855 45522805 225883473 366002528 250579303 47280687 287006234 252358707 601973120 276365342 441730464 728263329 1029083324 584126850 287034644 12174843 197906001 362234102 1066334745 73477077 919297030 845478950 544122721 169925601 375022684 422134571 984012809 615742391 924191155 759766708 1033978148 1072691955 225102389 417388851 345868651 591686161 197903335 713299987 865573636 197500124 453117802 1053472554 232199228 868532871 4676469 81297521 1046848471 158877587 272201864 383841022 670382831 220525011 123805852 57423029 327271328 980015304 203158985 736312913 496421666 271157248 91424945 944329260 765047404 50766853 85813759 517670776 790111224 323144766 887916801 551516091 160817435 40213809 657584697 545457535 687491266 151473313 327681444 381754692 933703382 471967332 899613277 113702559 104254066 379359940 775384940 819821793 929521083 918678079 787661266 22930201 483187005 36816859 209786947 591824317 528767348 1068758565 641901168 797488246 684866059 153714580 383090841 490279666 69435746 423268461 20592630 829988451 302611941 436759175 931435829 1006911868 532783710 606278001 542096957 843625124 499264485 83834118 965304194 77758887 54950538 677356572 146525065 340443047 341077350 727887777 859857669 240479086 394642082 488226263 710394258 3671389 1048598061 696432657 177629543 3752424 955229713 443503031 57728121 404209835 575840914 420276148 447290077 683015335 939751682 787225096 408120993 440674402 155159625 410721980 809918878 232764402 243571261 54461329 710425462 336318564 232128847 415290792 251710679 762883460 7348845 226661462 33301010 221090358 801605961 431534485 677113606 231145502 627307810 848473830 963864571 287804333 1070630229 454717133 109651651 1054117041 1901033 230451638 521198033 637987109 601210580 264935116 552518918 710280056 250905737 631056933 381776943 715035818 84860600 163820136 1035730213 310820146 893817044 799048940 67054342 310628760 958300012 61211799 1023071503 997088133 997630223 91638468 765202648 353072216 1010655241 144765261 255393025 687796514 796114063 356022047 783060741 127179816 337231225 193557266 379563366 749639312 299782760 803336819 11090026 390209235 62566895 655027270 47861028 642521308 583023557 304514273 720828609 701639746 767121357 44594812 616076339 733382155 954445107 680594076 449419315 541087916 643917882 356921136 148255854 845590199 857167653 318615683 242318549 282299868 709077234 914841243 886883130 9124082 157072926 614313438 602575491 206128871 734805621 1014085254 125986027 614742116 573044089 119289612 497066670 991575982 857797119 47813230 120829021 508461592 806915604 393188576 48595042 574399851 671318246 834726482 793965701 248134745 1006996377 1010770183 34492945 967262569 106269649 577325108 970274280 153662193 695463719 228291279 333890942 631847486 68504774 762807901 942606473 801594648 31030046 576970454 149787647 704297688 408085174 502882430 257491060 136201887 554908006 153686527 502218020 627072351 898805710 683523860 91942995 760036862 561035199 112089350 179651017 187382324 678343663 548986669 586459729 621532106 413484763 45767115 462544114 516756801 546141507 229959855 767912918 257885958 757923553 711453631 697622313 435015420 994675706 28339024 277936031 833513468 701909772 1014055550 190706932 649810853 774927218 904658641 735710880 112086473 742671101 315007969 76845048 52933394 466949857 506410309 921889733 406060874 1061406400 180158634 819660052 756393691 68192622 523575946 563514191 755014807 530914293 548983899 303181654 361985225 852357960 238868977 163329497 227931793 615496154 627155628 72172209 828481559 143038853 408700212 1072922332 969750888 964698350 977596464 1061816639 789095633 898854927 987851910 1041020055 374426017 562942914 1072148579 1026874632 787676861 715194550 276077669 1024273829 967524736 1028741715 592510352 484405583 672628243 492305007 112155562 399143108 761642962 829383765 1070457693 518927375 345469998 517191925 145817037 936649404 283086581 860751188 113389162 625375941 153736595 751332105 1058069036 511362997 293138224 880216713 643853468 955632855 482355834 1058803893 335497524 837658495 870906576 698824456 494099245 315150960 67424177 703094471 837950090 13993829 791236572 984351422 239323530 910160434 935937486 100122062 505951410 6022510 879054176 758895141 88116504 907791018 714239324 730355286 278072226 427695698 1000823940 758737494 859594296 406492396 993941835 936263335 324522141 145818354 653509267 531436765 374638656 123757833 678832079 362122229 335296202 918139434 476267654 39157986 198385029 1043308507 617526099 257940021 800387211 81470760 233036690 468450883 215442996 218314514 82952652 680792627 535277555 222357312 703829903 861032362 164018059 339266777 188564806 977587298 19567123 249986074 355195677 549283785 134924023 997981968 482172797 899054842 169553500 591940638 37146338 393514877 537000727 599125623 778507753 488645569 322143937 345722205 1051469801 326080890 141149715 1008677346 564112602 296363680 310231772 364491442 403557158 1055586362 619157195 666318440 727033657 278794637 282405419 244657978 1028851684 476245330 864798720 712917455 854300026 840434017 677467626 537960381 690611260 80019617 751690532 719950314 1000861170 984218052 876714782 89313571 933750184 426396147 619779149 630769731 439445172 18961119 249407334 103030987 624739560 40085295 821632059 506162984 632480670 30412868 26273650 489564802 203834779 240639319 385841332 692616685 30560469 1064315217 627567403 934230757 876721791 909422221 281365696 443660395 771054706 221670459 464183342 29102861 471639608 954032594 57434302 681564284 413808663 451501255 991151827 418213193 193887692 454854273 837986220 127244856 720746791 813769996 476551207 139981784 113908279 754304714 287182254 1052132361 883495774 224764574 803479404 110644887 944134595 52584108 523542824 108587149 760245286 615072980 1029193805 847557322 129447499 1072221458 955961407 342671608 282006193 666766822 779175618 1068659368 270911592 251336284 986319479 245917458 11025460 665923136 52137933 459732186 285680569 742587390 277943625 632235235 49443618 625821171 850762717 732417227 40693343 58228391 771403662 674289470 920495964 495921465 562714806 695156702 747987528 718771238 356388980 381791196 725165581 453854723 999696143 892229853 1019237669 41242829 770282687 226517534 70590225 850915974 655600584 136425177 724036898 846660494 53480937 546762228 858234887 895360816 451050928 508818987 628855902 552459627 420828834 779599211 405148718 524727014 914091288 158388643 503544391 607371952 111423092 278273227 371326135 229385811 506370063 231268851 780094635 142210188 564597377 553517118 38156365 652321108 570601200 883245950 1021707304 460106533 755450254 280505746 816381943 432898489 1008331381 262462046 904132728 529121196 701079025 670527269 863744986 821417833 659113492 382004124 993722809 960449289 394500994 790317179 472048814 339667499 18837528 958533404 681478620 587764078 501102223 296962160 860292227 324767356 714878865 679662819 703818514 55136525 709003772 930685758 185589642 266886382 70523603 300614705 665567316 1042671270 1067105549 519285620 513894719 819541128 538854958 822036425 379700027 394273113 939488566 470941116 1064712257 533829456 690552923 164111121 781450059 879738203 871507660 114180856 316203959 469298798 510762033 925476154 718262014 714669812 785479484 72670142 35174886 657856883 1071971433 21732021 514976054 84391604 164873532 594507447 135960205 678370178 973373291 733544106 388772886 357726000 638254358 695188675 808397860 197303001 793472822 486613961 192317007 473988629 279249497 139374547 896630472 741196743 443725141 562469846 103341897 453726239 519122445 322008069 59401569 223017480 857870064 167198348 487942662 881329309 529608762 939216146 761582134 977772988 326495667 717383056 660513769 24239457 649078218 239517698 940715709 1043799815 342742202 864315435 569293323 1056048778 122787637 481306353 931924101 629285255 384182518 785352137 160608415 393443790 129522281 525045847 163304665 170376077 720920820 346995115 678849872 543169836 340150477 528276587 688776602 588811629 835309060 508462346 656193241 166560754 618269107 329851554 412371834 124963538 273454554 842868642 143407233 965255344 583025177 1034714503 403560480 415784807 60409977 339379166 617077814 209361951 416003414 159264817 980385034 252821057 18653663 737709199 1334664 207148929 95243081 257894626 1034722432 1053218979 61344355 682556167 429855141 362874808 491921853 184417753 86017160 712227324 338471577 196906045 950249567 470982834 559523762 273452042 893775296 160190678 41397422 370162925 364037799 949909781 353748080 404766487 872658496 170469394 470369973 262940493 717888641 494603528 920416084 1023829451 1073036428 941912433 477020424 930698271 104029779 486092445 802790346 4031006 215413602 225342442 517371041 374669645 472980063 934747300 162106276 609485299 230053070 324016207 507225191 1051849445 607295694 998751669 226563372 573778957 156501739 960161734 50106063 919265346 158454825 528748582 103217565 700382165 320160282 957634390 983982880 330512286 1049492339 616090525 14994068 352626215 91373131 234335903 928953065 263834676 824538076 369111365 974015880 567942572 373469755 823219203 202670509 341859676 1012337214 710164613 451941791 905045853 508239751 85709993 1063445342 18433849 34805435 996303092 862296539 1026830056 454343720 970564638 590456901 659208573 908676593 822916073 859294671 955542957 256698350 912574430 317669806 941571170 528946395 479048611 160438374 1066045512 26570264 114615666 306685347 785898165 208806184 48212448 640928816 730150003 704808618 62817138 618493648 982101811 947256875 1059699768 447353052 478556228 55579766 636876964 741297056 521861300 41588745 970109350 815301833 127221452 340023016 597359391 716579582 412402128 846403741 519952099 712574950 651097348 979940173 227665141 1020718887 830396244 768713357 94504337 58608510 537939262 32591670 886315707 164536832 973045894 805776777 136925647 540635647 190209382 9372579 346201480 169457499 1065216837 172864303 182749253 455689414 243131384 618387924 577192367 685181775 86983861 179984449 596234566 799079384 621589668 84343541 860670160 111352051 553736263 13996083 470393776 630509223 226982244 114756586 352857617 1052462908 455489241 916304489 164715420 781007140 1029467327 751925451 211570444 875006511 527098996 228411404 36188324 446199662 283267166 243592966 757033163 744585976 849353662 170363597 413663676 470095010 640913408 836947409 236248752 415655203 54842876 560981979 706451005 816650015 369068278 699514407 972048057 150047334 792136234 283310691 906973232 887664488 65866486 417617460 190137761 872593738 1026472519 583785243 615847998 294032197 256500651 181093162 769133751 579643655 685023530 837034562 752484204 369011431 824471310 335894118 421938446 624696425 966267026 195827504 534883449 261076099 228998362 582255558 931129229 312194771 751837901 396911775 482342679 676665096 82283500 550912536 110627163 142057222 680594190 227059611 678495815 578794121 534648179 189309324 435807101 151695637 401883629 185551440 960317824 15167916 749336579 663664108 92375752 146148852 698898920 697014393 191824246 522957953 379193722 457981650 157099898 1022597681 228220248 763817083 106307966 691881087 698346662 748740984 999810782 979969567 477153691 471576832 1045008506 726435849 136063543 653890750 756871699 846209622 1016289832 594992309 1059126495 156131699 20561220 470199825 981397729 739781543 415951003 712687469 599021725 681740028 596227029 202714414 576755107 515632398 800603240 208418093 920461411 909968339 410579304 589406142 725062694 127441285 252909136 993339014 628596835 534691493 860499129 460155223 257993187 930643705 1057877257 111666956 963003942 960509470 386499421 472312896 213447550 502004755 323979283 235568261 1063309224 15658614 1071055101 957425679 782198592 68479852 482770892 601346651 779962610 828815206 267496487 824715326 81811441 542547174 165097223 352563808 800986576 51927894 261387306 113983427 249444656 195175275 645393853 107198737 1029547270 23396919 257536126 287466747 550888576 96237709 315055815 807988653 763148655 397470822 283422385 1011400413 124915360 609250236 700059174 783519475 205189247 162248927 362560992 175128991 972525323 771496191 646580190 81203088 1057515977 281250092 431687965 260714334 1020203703 560037484 244333844 529508249 180203727 729731322 975590243 361944541 274909506 198547922 956897792 106024638 608545269 191226794 359966216 661446731 587842005 258386805 225896792 835939933 147827025 312939286 464735310 929851766 923570176 816115177 991406573 301271999 664846652 286116181 1060471265 881517935 296862224 694741411 508243333 1026453293 583103777 174873542 658457048 637407490 857073205 840423108 813441589 855985784 233461172 442972545 887727127 91124782 116924698 577059872 867590990 505556996 479815018 684476292 855442664 96298744 606902563 793478854 641831013 614593265 669335238 895984555 440897252 780582437 876360946 410308591 200754343 327168356 848866995 95784766 1005878852 219582357 331114694 838872787 786626390 379387921 629492566 54494711 277539082 370104480 188264371 708059284 1020335090 885434501 41333780 805140090 942277140 929741447 1063128401 288736459 767224532 915015570 1041806697 102693551 669585895 358962906 140518113 255443727 42450258 511289400 340967428 376540632 67122088 71488928 590519357 306067983 506107068 920661854 648027399 33957967 718076164 802108494 715911321 27242776 521626001 3608674 997980089 921413713 554720446 539340280 1049342550 259728727 10902303 875791118 525966119 928485653 53867131 346579199 332690423 744606329 1037689627 714016815 613985034 908557491 915134975 317768805 54244457 863842181 161473753 322154450 637643529 74729386 944608741 75063082 493213101 870357641 785935332 719317614 382078315 521571297 626721706 874064598 308838754 623085511 1050095586 655367763 117947512 792984688 448289892 783075352 1050854564 339876385 635073897 516690757 594376499 597601305 979949560 39867441 718265706 339622944 774517452 391686458 905378087 157933121 823602558 534296721 67615406 553441808 588704662 252353532 184611753 36883085 451621589 855575281 5045995 74119132 895769410 837817838 799968985 869344020 656642243 768657641 703526606 317664564 532273529 754138641 964697613 327546185 987340707 212836815 394034090 51002454 749882994 633562945 64237573 229551435 28678165 947149450 479267144 451541716 616550611 750334569 492795817 238921105 535713943 752452013 743578270 837936051 497348489 840826707 655075218 782405587 818514509 895091117 961683702 152987454 487673422 948057279 100227675 664771295 418461171 206547848 694951786 829937523 1052260788 548853775 52275078 766610639 583166008 325783804 795790355 471365402 996873299 18014970 99217204 99674421 941348903 533874860 61508908 814284054 238430663 317119409 164712014 502859515 1005435371 573102882 640801907 856911049 603400137 1022239790 706087037 744973081 214970042 110353801 702415153 141706201 269588916 819906356 488892277 659563158 253191207 107533886 955281612 254200794 1029133723 181407110 842207888 98602698 1022743344 610478953 518080907 141317114 837273181 694494089 68852740 33964868 851769911 66565204 1022587622 738386333 621904554 402648753 794344206 132762687 617171097 1044434300 712962152 1022980622 588093209 583713170 716995496 125094114 95018519 139103988 498555610 92627142 606460882 741731666 925223973 669778400 257243092 248430379 649873964 321702037 969896443 25648781 693306163 343069126 217759844 28052243 978748126 303011123 841159492 42376302 765393989 478733155 858116139 1017999485 1017569339 121776255 527423588 120044943 543467610 716951826 424078523 160847867 698402124 465878308 485868159 537995351 417384228 232480181 936214672 987701665 400263670 378253800 626997420 600521981 833370750 505393802 383307697 668266216 460256408 582652882 293759436 389166871 621716347 636017287 22871528 1033505750 87593585 444711958 330220841 408781851 804244212 333464288 745188058 102494657 591592284 778970823 739415872 964307732 244321641 586788517 177662455 397687455 942670707 544297031 346445095 237228668 167220272 230887306 951725116 233453060 719651890 805126201 692364900 412369113 650054500 880777865 520952549 981482792 869847284 317333925 338923083 224654237 656336796 548640793 143613598 796894060 386680677 210343926 1000977128 641621954 195776911 452323917 593075536 38196153 1014308817 1056887475 589746100 391761925 974130051 633088774 1061700623 327660904 632911797 42956994 207850562 493727832 1052871534 108298668 348937873 36930006 494648421 527995262 833345899 388849849 679471389 599755760 351427630 242351336 493485304 811069332 117735540 1029796525 973098557 452388341 533979477 282962513 29367255 803306834 1062402751 38169700 943645050 1041143445 520057918 627366427 914248665 1045254271 294889922 502939159 139766389 827586154 553081316 351901171 7527169 754621461 598965889 914825515 669969701 140472099 137398688 941849289 922035870 220204109 540817462 589835071 840936823 996473987 1030381685 293540578 495194617 909884551 893394597 836067681 511554875 105121024 420761256 798369494 981533551 335804588 684474643 1058941956 140074631 654361484 285160462 536126329 927799404 419733882 14034294 793847181 110355720 285797586 1045891625 985835838 233614562 231258058 847198994 118289110 957889503 352489752 282848001 105861243 746149120 757298836 398860509 830141881 998464724 689841279 745440201 1053865506 219070832 1334956 647512210 960349410 379924830 485797875 643888812 1023867046 671486694 1037101276 11573475 1063428347 317433559 414481549 38145793 614013339 289818635 195263491 199754570 614391915 905368938 647041002 849132144 372190312 1061659288 618037280 171066863 937264942 517773443 686318953 191820848 665777411 926830903 438918931 993554159 316079686 76710074 261820355 667696869 670819289 825162875 394223303 262910697 1051212551 827680099 86598098 381646973 231982376 455203061 278755546 1046503444 416856701 664420470 362204216 987593842 707220175 665685406 353001025 98706911 641987000 305324530 310889916 1035634534 332734641 115676144 271492354 818054474 340493719 874248647 453012193 789889878 344826701 715771758 498167914 658202350 693873732 350917382 323670261 1032401780 338486597 670768999 522542137 1039506524 511117339 579026923 1040893986 388715657 797949460 30703613 1001313698 710083653 928719043 870766389 814448154 46868387 212138120 255442000 792775860 362196452 34382784 616214416 809760054 145663254 276421454 494199913 514228211 712015670 490742311 721088015 834065635 1068887622 1023224 497245189 991021329 1066951032 836238001 821610986 493127582 181236418 460989718 910233793 217641435 34911752 1008018409 92043418 970371232 729043620 629428431 79590432 1050341433 175030358 815383054 388285525 213996617 575196855 889350781 907996534 417795103 67868601 968440157 947684982 574317771 426948906 991861195 418327192 69860641 587606996 375716337 131556600 523080263 497341568 447358847 157015166 351237791 785631950 993436957 687444042 591882876 617084748 896796184 477643268 624332141 237912127 714771332 566348117 75134435 114078483 89988689 924267633 455659161 453227953 267415900 457038525 603582457 91846198 821275484 219748011 839627267 888955420 920735667 840569066 82164318 656837894 393618715 667536275 545131095 138189673 428571809 469337609 463823256 685541858 843495371 422915282 1013829797 306609736 973214587 521531577 170636743 181446057 49667183 881775454 200651123 248304461 645173797 853322090 125300720 548489156 741452204 609461494 909148825 406587904 31572345 957704143 253516380 430073463 152624261 525405388 234301681 236660575 1056184452 139101675 782395229 396274846 238313696 433148657 64967533 1021548699 287416042 694167830 692614971 963428124 805696284 291504336 640177669 1070482039 351367809 470365946 159128505 523226978 624881089 602849979 660450065 290004633 309041862 867486859 1070117676 752951562 551174930 776271664 461453594 172849631 753515879 350579239 250549251 569288872 359011157 876677209 860673537 213864923 716093788 162458018 538868296 659616975 1010640671 551482727 613087047 661925233 56322122 794811997 399701712 291594254 575828566 508601588 984153925 390668679 506724614 612681153 942152967 687136338 49054197 424188120 60260259 439096251 666692007 992542950 835455819 422284739 599980857 140876833 327887139 185372906 358662327 399835580 631261525 265580053 224335594 629966609 312879463 489005534 436504044 543720862 742207368 375519334 549102872 118882087 747757691 907426845 211137432 638691472 484174991 335889141 342415387 721475114 523594545 963166453 295666389 973933306 929288501 422595682 121097735 660248265 333196634 544421454 521477924 538338860 798616243 522279620 745689653 911396885 424461614 316192524 919578015 146576218 486239979 25329768 451053610 1984823 941145210 432359573 969947611 827423055 605999196 668495167 141653090 746788866 405673493 533283883 902098562 896074108 846039154 193878094 188711646 192050773 281090909 398371374 229972597 763307990 308276538 581072652 1007851899 142857617 995839958 892367527 760987384 869060455 16006236 945281746 981388843 836658726 917069076 731232337 129939968 778288849 202555556 484811589 473560736 951066448 786950090 987002819 1066048454 677379122 285796089 400208278 669435303 892620713 520632986 831816873 73813005 752466349 599256591 373279221 365843053 920911015 403757238 387344201 662206203 768591568 373834928 989457450 863997234 890589276 591123459 351782106 806313906 356512046 749829064 346864982 974174947 525930025 73607528 834357288 323794753 1007213527 307342636 591734129 236494216 1038522763 624868743 984060348 813639684 1061917185 461853482 107526511 115927557 99564155 297637542 960358123 76283886 344932242 915614455 980291231 805418376 211558850 111368886 50839398 957982055 281848166 95620704 335341381 970678535 460196071 929975675 194375271 967374929 1024806439 1032766703 383765011 1005021106 1052369857 467904626 825402200 404998209 241577730 968822541 411405832 457840334 286411882 633437834 173988271 828122055 939474628 1034951625 1045508517 599090470 634309179 1062997978 96152301 1001317109 1052777416 448254107 800627658 370494220 449194870 231102850 661061017 111256492 261516353 80755352 920591033 790391661 835787362 854918718 873927612 58404051 357092077 895401482 307478920 209301800 431261311 433377353 826399146 580980956 558013210 855785511 519791277 131621899 251642968 777093610 366070744 787220156 594589688 91314152 689791578 2840505 302269027 211731339 421670404 376388220 614855477 522517495 251954898 177297849 105653379 769696658 657194759 453645674 102221372 892379604 70854485 12490544 929027390 824892756 49307386 41039967 638130762 895855666 111876163 719908403 934069548 638013600 877088436 314978076 746974246 30107993 756652068 500874639 405461937 430369661 543978387 718645214 665362075 851567270 874716242 935951482 199290773 1024016582 1047647902 870320523 493629456 262803096 202005984 58698341 931799200 745174755 1063372985 44990400 764247255 312095742 402432288 403056983 115712504 737957124 79442955 772935300 988232616 602714243 879645888 9428982 668948809 95940768 834334293 890207022 1036297461 414876465 92866705 492002995 649741205 44298555 987611006 658001149 208143912 833462847 587554263 351120590 396067837 868853740 564471212 857244469 893974328 312804436 466938242 336401200 908276045 981432264 694750063 337808737 257731967 875064294 852103501 927626516 403023134 259199027 931773696 983361165 971534083 956499850 1031126732 801596488 712722699 250277724 328956994 352448090 708668379 128534159 1058011187 344154870 935903164 930884961 840072745 916071873 603896323 683751637 927653454 56073549 246239951 942196004 768126105 624991074 480078335 689423450 948830819 348279056 1015575392 798467247 43330355 86704001 282881093 796866819 687506384 63576392 223399929 834348294 224071596 685719772 604393612 148247339 905637348 614722909 578464237 617135940 503775824 1073544789 760705605 463057429 843670360 60295723 1044496975 676826883 712894300 942826294 44274916 677109320 160800039 90058056 297393548 278232958 907557841 861125459 143722890 661764805 561154665 825126263 940778646 76779316 574789868 971164399 591290585 190855308 764708173 584823623 883616185 537275977 95294001 57550154 1013177132 312971653 709382994 672098892 344916802 637114528 121770107 918121718 358380314 686093505 331111844 317186819 982589299 916081504 175367774 47769967 344880275 856596170 618448916 268378487 216658988 1007227340 115632080 492327093 372054458 481762327 834163338 134116260 921241875 80308836 1035508672 1411971 864284128 765033510 915513408 412102883 684702822 865891812 1072751600 824238754 452234242 693282116 1064597874 277525198 417171404 936814687 14291022 451707683 396796434 971989440 812078737 1063026303 764396023 451071654 180827118 530882657 983676737 111863373 357329021 14884169 532218740 728713700 341909329 796571301 731753649 734144202 761061649 67986236 706024257 902321103 564038090 12472932 192884258 247404346 547562009 311374558 71735627 1021614438 651226276 538654347 660999071 829472127 429825736 751782499 871587503 653247547 115285019 318238052 433683830 692805860 346834386 796742064 980274777 518806182 51145617 284724244 140248536 337764887 695622806 99048048 808284483 419951366 33987076 743438290 946063775 111732222 519769149 71149028 924354007 39672980 226531479 133800793 287360838 520146015 737526386 404914552 395679722 1030091083 133641071 504341996 439546860 557688961 551437399 218350144 309445806 391378995 383961468 567808886 10470593 361316687 654394798 228305667 868979122 1052705764 298863306 923688360 769822619 357264875 484998410 63038276 297613380 6463434 237981155 534030708 250160147 769232496 213170791 552970133 685472884 113048905 301217350 801901521 145132626 496044207 187389681 17130169 678078171 678415509 33970169 218311858 750667931 820737099 683786417 1061641759 996676594 384968947 118367304 587256627 664448524 226733384 417965270 713857405 36820838 441176146 379506763 408614040 725699883 443058952 853052202 880567615 1065975871 825176050 920536115 494252771 486775333 282913974 1005314227 523345187 222696338 560214807 225370992 107373879 528894249 180092436 532646705 26629331 1041058345 454645094 216960333 569928213 796301806 923676095 576912826 341118595 285046291 889812500 19699498 671600212 1057590331 167931582 686035199 812137334 233006724 294469916 613766238 457877314 232148883 627201329 1062626727 907763079 7607498 319587427 1034673839 286265731 17782485 722409005 250971576 426480466 825778146 775344441 568698099 1016212563 825424636 171851252 418275231 171356153 738128352 821212686 473663264 121088698 707422749 167120752 577944318 391243367 960478857 862856774 276253897 665837093 502650717 602493033 567964021 684943936 895173232 716437631 222901856 721823558 336057169 590953031 870125558 1796585 969137092 804564240 116465161 436487568 1002428950 112541703 246445776 474895966 445192044 790585319 202269417 52991179 98848105 3756658 128667403 926384782 875909626 60318780 119777479 909063106 564130468 713338504 721058907 1027258134 477818870 557587197 730089323 749172210 293743129 769395274 45272301 538780455 137984738 373986614 765859496 885339555 832770049 572276696 295356994 866515694 918860180 463354929 285467626 31885755 481241702 233547835 565880539 574745534 931851980 182568573 252064084 931998230 822878211 704589727 148379672 177761848 35309657 352674819 246869890 341050103 281994803 79767634 902367541 615269316 403182835 798556763 434406296 347039598 296653421 816279217 236496570 632123651 297793040 297516459 779594966 667232065 41976128 687216834 935015647 626644966 710904188 369265150 330294787 7876673 402414239 898905273 509912709 210841083 1071525681 93648406 1010755252 306248616 260908280 562188900 359912027 357963498 915768 22066082 227117592 4720635 518583156 888190922 542106311 104754622 462456891 203585800 537686659 903585031 627298659 50941832 288912395 291824594 977905931 1070899244 508280282 948337577 768937591 732614428 613586828 21759510 330050400 653024915 273821427 519836655 357510411 1003634542 73086275 407234770 1072048893 167831529 373527624 841006287 45200754 1034202278 674422481 325939524 86084253 163203886 385353096 19625263 1059809146 757106124 137224562 281196671 834783924 131978186 376693201 182948168 356038078 900400636 534653455 716951624 531046001 1002797050 577713956 157066358 469392916 121956733 288250544 462994247 975325809 243874578 913736797 322868 351806770 329279232 271792716 461055382 1008321364 569246132 768252366 226271942 752941583 116299105 23898544 506219443 877736741 521438247 738101010 631066459 713661685 989156826 648426178 156956097 864173023 694052643 922557229 950834592 1013708437 416928026 452887796 564349046 856643176 290169441 631644085 791183496 1060335686 587209797 291198604 635914717 340547047 848554787 527832058 734601083 400571695 874533762 862689193 632070589 137094119 335356749 373605846 28538683 976891828 194319248 70540751 538898570 539025011 372689786 422451112 1030084487 581861443 693019116 462253282 240447523 555346271 1069934689 427869220 349105168 611040606 452898427 1003167374 707844308 916969965 303937385 932821342 821941833 1015862927 398234744 403039737 274543909 684302819 284580174 713650707 253395417 466102276 5428150 1004077605 368662754 235403644 782645059 806299983 517263053 705959368 989556479 1008043085 1031159595 344081878 949468562 519880484 125076186 939534844 438416578 844150188 574614729 875863439 721617734 59860330 946055242 496364221 997963517 674940085 381688509 913095235 493130084 912849136 306459387 848403797 1044276373 500625537 510866723 489194831 456709249 69211043 533550210 847706886 482837188 909210610 334660214 870629274 173519776 7588876 477775127 804357585 871502727 69422518 701539111 401442142 477603173 615988246 531971036 492502689 209764311 931980175 219888388 600700059 746306458 366026461 135897217 944463713 190385020 347529776 662075548 571771326 626410976 12356581 266734374 146078480 45004519 318501227 606731845 230173340 888389380 191981126 77305787 132691379 587525 770354137 892466555 1035432864 196068309 42197766 37798837 15663424 1019585798 83212840 334523720 8749296 68887184 320480914 147751406 779856954 828762544 242495338 630195701 188525812 976397069 381412362 990829261 402279706 757291175 508287246 496778838 51023666 23500352 150353591 708187794 41510349 49370176 1055503957 355302366 612049861 888622717 778163693 391027822 546736323 1019753412 1035442511 381799218 709799562 879974786 719447337 1007803588 181219826 897425351 879813424 206740253 308788844 141048017 147459850 700961379 160499033 544022389 984202191 720708844 674237365 236631049 414859310 284723855 725599408 1044825457 928445135 198632157 152783157 436500886 209740939 69352954 287169354 844541113 406547892 965674092 63511995 931669117 371939749 665929904 517298143 29455770 169507214 760939420 284821388 146878311 924630716 670413695 7279858 953040885 1026775921 713792375 989349887 554845664 817653927 169356235 246091530 660789185 118968431 384431725 534348014 190380570 806990109 536547585 755040680 415370070 556506846 127422881 297551769 480930445 1021795498 634462631 124903764 311664059 1028047130 74283564 368540949 240245900 35562508 87405127 90120723 857217554 242455176 523243279 425282345 822746839 458448894 290989453 278275724 223131419 1026398255 803123856 263077795 307477873 251749071 29096431 1004569033 622311866 717048431 449213337 422691194 258303027 419862899 732722891 908774033 35929497 730987948 74590098 602815784 436430730 669402214 672393004 799039711 1029929057 572187428 773383118 10687344 579036131 1066677732 973787558 339115501 881691560 1068929320 1034369518 9103513 221327476 546660835 767844512 622649767 539698625 729341084 77975347 352427092 274426594 874211406 217425604 865167605 139347521 447787390 65976349 496780006 721304861 644983843 1045091363 703665056 964713054 764874192 806628833 776672374 677227268 268269622 437857432 343678157 164355949 1021157120 526217912 687964206 291045430 320317039 744149563 500583749 760278589 764644530 205589281 683080493 902017945 900957335 430980033 44896345 76566747 847149287 875505085 351240835 476277905 878017361 972747512 119665398 8565318 382480732 543429880 204466939 511827847 741353884 953464869 196185284 311144462 734887691 1033888559 1050902072 27029443 574734816 655439167 440547283 293158535 199433156 71458284 736523340 832344107 892173016 1042546546 1052694101 323836934 429291537 749825004 120243352 639284897 79906729 346376652 349398264 335252555 200889926 257486588 192849151 532206829 42036601 791591752 385487489 561799358 1046089371 128175810 1045240591 318437809 994565813 227340929 98443794 205053753 816619632 602202011 515822355 1047481852 848889583 347299453 1039700525 456669663 505176735 245205545 698499577 198191087 151611362 445264958 731151864 608554280 1068375858 1026017543 649476511 801572814 988851576 866184513 199777660 70176440 802564222 1022892672 776081723 1020761060 480161932 328975855 79157372 830351892 805904901 1058094851 872206743 794569415 142219435 820815214 200113363 267418221 605238206 824523430 50648891 828200378 678103184 580528444 695460967 91631732 766335818 662498829 972025474 487179448 235329280 31155222 291527064 956596459 1017996378 1000369180 568351496 277180782 601057116 611170845 1052489916 527860886 307690152 419256035 225032764 643775713 106247385 1006661072 371827906 425741963 668724756 293930697 165736046 261245208 30266055 552318388 767239396 209963235 291556837 976082808 565727482 1052461728 1004619937 190138762 303063459 394342319 259581464 209459849 24504790 419540051 476982717 372752629 237059820 501527829 233833706 497835362 1026001226 72658455 926805463 736424606 463184658 230670819 62837483 1239408 790842888 803274775 571749715 529818358 776227286 149528413 547517226 334986319 185148628 424180678 735991970 361998748 519279203 866083144 237527491 153587384 955459454 795759297 904252002 195119820 715234722 449398199 569421058 78402342 1042738857 800584256 644670327 690685787 378839834 850459868 787403802 318304384 925106665 592312115 922296576 815799974 1066268822 952580030 964137275 402194878 346107384 590066729 685314838 1027054104 326226436 887703253 603519122 1050987502 626428060 826713383 353540977 988546809 810148813 719417160 69536375 62806397 735261243 969299819 430704409 753189508 227396191 730445351 691549966 696779274 249261785 198146960 47988385 823903988 389373268 536305253 250933852 133466257 451045330 1059680049 799998610 388125986 199665399 367579764 475475972 3540169 971326480 337173795 952332568 598061678 465494863 771739248 1014965620 970541849 929673067 550351005 248549856 344416418 188467220 144410583 528807071 471082182 383448966 590040450 840077242 755764920 982117864 982863513 263941895 712847387 988457612 999996042 279720045 558479401 44978697 718315672 405538819 758696110 603436772 944897330 492130282 130525898 361262473 883536713 802053438 11712798 65782708 204225294 300413896 474616617 200936379 248630226 213517407 742501129 379062324 466476538 775768709 271514579 962818900 960789032 773096752 1020471021 282733188 746400389 119777613 167587056 729099898 858429823 555146970 30599823 395212891 339510087 243264878 261009998 846657425 307547758 1034276809 209099218 847489105 178203120 595856583 473305447 1008493381 1061194347 251811225 207324700 623429470 699262125 883311565 1047377831 114401440 342660399 588595332 176691267 519485711 699245122 417438407 403467393 910023382 818806729 608645613 560171748 706770213 592453473 584445343 1043300381 1049980888 499827228 613924632 178487537 720988220 57872798 21310732 1068382835 128284586 628003817 771981057 743696909 804308684 866013906 919224323 367394001 707668324 718898253 586910852 373559973 1064025381 305309076 991778337 931840494 79624076 878598342 582688222 852630691 36343938 38001409 947937902 925281203 143212443 179372069 617476172 557861287 908023 371070315 158352979 141983832 512789545 243580852 482544364 187030397 681873289 645205860 168311214 233662208 298190005 641063021 42066338 192238044 287094064 863487289 1017355003 856894297 13307441 140450286 530762720 44459721 296420095 818330045 967060693 966399194 860919288 913403197 625893792 623482521 127147500 591663602 902058866 16705915 194660760 734530941 431179620 51659628 14555112 627659626 909594977 408673499 913905479 177195925 107927469 96428562 210972224 269541898 410754272 748457079 692644727 957849916 728356279 963556492 534663816 645135680 373729489 991252252 12396204 788854154 780381816 749748011 748743588 815011598 408413114 180365764 684071735 845053696 40483613 206140513 1014006393 428012568 311560034 133117383 1038908787 427389801 680374240 297420987 963514334 613105177 779683408 204332755 697489553 700779116 747282654 608522311 15068512 840549977 1052778015 538442688 324284709 1021377490 977663838 204122166 611232241 343051351 6145616 338455223 800306000 980850694 21635013 969885730 294810446 309588757 971168400 38937376 605350457 569263562 571228975 731564074 783934815 648251398 921733286 135795749 595334230 157185271 121885340 653796247 112945257 1023708836 1035899374 186541274 399114837 186929770 502608332 423882537 940335856 42757658 620757734 854870451 902719816 912677117 148189877 227914478 809935649 614375051 54526340 244584771 409324211 404291958 439453703 344273316 13632462 957749259 479599495 647945569 456546762 746972051 884583960 812610506 606532912 905298935 755320701 378111482 961997621 882301740 777053704 435616204 322041711 698716446 169137911 356224985 515152284 624648154 705422457 340092279 404358703 641356146 568181903 741756609 612851928 213841339 204046064 404799895 271138985 1068270611 326884733 435611760 203534729 447090352 831458244 640118075 232145450 115824874 646739851 920024961 281189147 829037713 127918181 526880090 418796480 939615581 738104150 281264000 675353191 611957345 186095628 473021984 73565190 242558861 1029634740 972771964 111306362 628179598 963666859 626778899 366367910 70790528 457874810 516732502 492277860 486117393 1025019433 289760512 445920727 763854540 599671842 824373980 334303015 41015226 958028972 461689064 100688562 415076596 380021523 499134495 947735166 565692729 619354090 466365995 266741212 445359481 67109408 943118279 660265625 840982863 1048947602 606566781 392614189 802524424 530578450 82170213 566709064 95243750 739622387 330545777 74605905 210232587 212865567 803833490 968129522 347509716 1032173247 387350883 608123311 195887666 715999856 292969840 97991794 729217042 281870691 34076471 675789660 83472542 747407511 270621462 989389536 571072480 752096724 861529141 417372728 630281609 237728728 18326206 449897682 695548553 959044648 565157831 572441727 730773650 331658342 668666429 559057136 636485728 1070543519 198248981 241150303 109659350 1054417808 1064427229 187594192 50310854 273465232 557290533 962218038 134659558 871961420 131878000 893788432 471857614 268844782 456781018 78704906 776206647 593837540 1063263364 393876591 108736716 49803216 495270924 191979068 484318763 265014522 652351535 928211783 773014535 944797828 651110490 297389225 180763580 788098884 664342495 860433920 487583715 589995979 624659365 584905046 621834804 896983544 614085526 658784061 45845045 609348499 1013147090 6050078 57443165 977653175 669790044 290583906 834638392 676944930 376902059 822767670 763571739 838547594 316824626 336341840 707165256 967406300 183393874 620747523 544336367 569002803 254300665 109141774 121660334 300018956 13053136 755649155 621801829 173597614 869531918 118949292 236894909 950643634 987099902 901221798 241299911 281648591 765278043 592942032 430474315 611396556 531442663 1009035415 424098911 679761237 622977172 383978465 775788927 202426039 421118556 7176903 118844487 1069318131 618626053 673767178 1063669018 208106775 681716364 952582620 573274626 991129436 895320828 503865354 512078032 177429854 348363514 646829524 826904468 143922587 638812925 308351044 331560273 30967745 854723805 587947596 417202763 545320713 231753498 163497183 519319878 180209890 101286066 148056341 915860751 474498541 589247975 1031300342 713524542 423112662 68511873 674983582 1025525022 1059722212 182532945 221754061 972180290 6243105 471011414 625603862 714110023 815670410 1010813651 54544486 525679597 21218442 1072587656 401470724 133372396 756475971 258152048 108768148 525986010 968595336 507932999 661761465 76360251 22920422 439346615 746906445 617101788 720572080 693217731 180780844 1000217181 55165257 26014651 19596633 351068614 691794813 378137784 354860865 313018706 147827883 459984098 1003485774 814477671 1069271478 230534529 719104763 494152608 91694027 10058517 36586589 945537783 372168565 696606043 453217110 386428624 981093695 547711374 904588564 931664625 593213419 128533401 919853609 523122447 194845696 348049074 949152561 642789383 876784633 912981212 810157111 558484153 933358312 264114624 68238867 342585013 1017418001 971697270 1065579218 205056641 381828083 957830218 993717955 248340272 813306807 987158842 873350409 465842334 13731512 1066402909 1043423644 522869690 506780174 349869603 439537782 273197516 420576435 1011625846 950056606 116265821 863441379 586654473 748071054 627374412 410213639 283858092 220721567 550573987 733646814 434249008 848095047 265075529 157997291 547350881 98273604 923516290 980691156 547162303 246665938 369826642 173771322 621025941 508546166 65287534 239249060 941233208 80922098 327568810 861509051 381419435 187906003 1054737266 380066940 1069826679 353120849 778770300 290917112 791513489 353861420 319173275 610658091 580916100 27593999 578166201 673629489 93167757 84437267 815020515 861895695 508818062 419620581 224716512 727127567 729028719 317031063 974046884 110616714 804478086 1058299475 565123466 238380471 689284314 959609519 1059517087 855827205 159566346 639967234 550661218 848227364 353115067 745289789 472226230 499811762 85192953 974887823 884977717 935059238 168137418 450941145 99905366 603691738 45549771 262746820 817136047 301966691 655634456 696904762 549056170 1072119728 470390822 452289990 358591260 858004530 499486736 585316628 519123081 993326285 917838463 933385389 737033302 211356814 17278962 53909601 805795635 845966888 579559070 719547925 663689442 364321795 317408086 941426665 776593784 426519541 1054067967 204654629 466244118 909780306 467821224 1051047055 287908497 520786386 428596882 946349313 220088803 755493035 403429478 374126581 788433626 897918737 861668417 705561436 849106306 592540180 381597222 536064392 671189049 63757257 126576825 575334640 85160168 947149928 609592006 916452412 573305045 658471561 893703563 491382075 651835229 670738592 701981328 832841373 284389657 890409729 204644031 210294418 989350930 79601990 837935010 478628748 786566863 379561260 374502337 993535446 714520387 814715073 1000554529 925450747 1041413519 110931014 829102711 658117527 1005672519 1025457287 32641796 677915774 658134203 710997971 529138326 434020171 1065828552 585475919 833043925 1058692856 1048148867 235985832 38911316 491050799 600113449 1050502486 16503131 153639627 388188650 375264436 963007595 34416613 113141831 162221010 215164173 6795933 597110110 139423588 407797921 55553946 105388716 192967718 803897414 685080850 815504531 808035395 979841278 127165411 209080329 904391893 939655036 899448106 829424932 792647442 750941649 330478684 222080174 638349048 200926165 170342964 1054791466 479036842 141875362 744299919 108695667 15433563 521284960 399036005 316813969 378259361 291646742 675422243 278631612 573934470 656931594 692626752 34791216 1065497988 831188703 865543330 1037357615 707885415 296696790 1004150029 586601658 809204834 591988249 551527847 867759542 967623257 23047713 674884129 550299808 562541742 668796233 871698659 66507379 807944615 269174074 1063337300 430186969 389929940 112577746 572649678 307556281 162406545 269948589 142021649 966235378 976749567 948339793 1024269371 475583359 191938274 629736885 287679388 390943674 298212808 1004271367 367736212 405843829 778836361 461254622 721271865 133522004 894611194 171967437 344616904 567796004 826381794 624624844 589864753 42992229 208128599 59738920 483461011 1040691184 989747507 843331169 904166600 575058402 110343597 1003072554 19231541 1026841277 342230269 428721607 344227110 639546220 441394884 74749838 390011597 513718170 532846572 632655242 17351818 850765587 180799942 132615628 702226510 616770157 298111860 54567877 339922471 742206141 449469999 1065690 144542666 87222863 904015249 300538416 633765875 49705688 465562665 916620910 1018760328 607646059 493340286 719302210 199078677 837064620 587494591 774907038 329014025 1041816911 515176123 702065072 699129314 518664127 501116706 791860408 553148247 350364679 315594417 461166835 288033290 551937137 357351457 413058807 817800068 214362515 367636956 476738341 503121250 566396165 141490331 65554979 1060635271 1067765894 784323704 656537280 119031605 1018634784 663280787 404182189 24579394 185565613 489567295 330130763 44479705 1977800 16052881 455340099 475941032 719729921 681106563 942002380 56212604 260115091 349347785 494863660 11680916 465477863 364936398 110189981 1061319791 556663006 953511271 23112269 264999926 379902030 779720788 710421072 102943288 370045937 718635165 879290964 506760524 367152546 165023580 471095568 596403898 543808899 293464796 1062464102 903814835 361186685 100918204 16198146 786142750 66009073 697680411 522949118 492407621 273897073 1053102155 932175774 232187396 871544667 87316678 130553187 562581508 954519267 37034427 412062110 67089634 935772759 436374917 188589290 663763251 934390569 48582717 513507629 627393928 466475747 68328491 541369280 996378558 624717874 1039675576 482751966 628018155 173760799 1049763426 416267524 485568884 268679327 526748520 1017511980 1028075572 582525451 24598219 531968714 636095987 20471014 328562534 18425027 718119931 654540611 749773207 930595545 965657683 43073328 117641607 574159938 461939410 602609427 989285590 37273343 80371568 490769569 850441867 860191311 460378113 843084042 268086982 850313171 497619886 1038643101 13645196 853192774 396814621 287907677 188201170 571254212 970378257 122453263 1024748475 358315522 198112120 413613244 627989980 367100666 530493906 709957531 83804665 1040131483 938448109 1000396798 236121613 582293161 577498116 1003138561 748657866 122102173 635693206 652244916 15511627 266000151 975456561 1041118888 1026116101 873537553 548505026 429552993 698929777 916352598 103393946 871897763 1000428014 357324644 667733055 1047919156 171483971 626384509 354762682 660350049 856363669 863519993 127649117 310754348 464443669 610712513 829275225 825993283 492172798 236565466 541318504 526099591 530730292 178081148 966514379 376243913 792637165 632929064 525612186 349148451 722937378 153986045 940290505 526693475 567842286 748177612 848124679 202946317 921758990 42793559 113890169 155555590 629908187 939235353 676030155 279576065 793808271 614014277 611489952 272338427 182660175 939276689 1000664079 910526301 960843846 920048153 577629585 265263266 948146492 709532355 806701916 321796441 439360272 225491265 764984582 839945620 773551706 316583543 217407367 505865216 93911354 416283241 232001999 491972662 434685943 138753112 625908094 762054857 266586847 608331303 75361447 999178603 444649189 383678752 1013910187 74641672 826236512 570182040 509497131 881721301 802703591 471163606 509856929 963704445 667485441 942270000 194169465 168556383 789580954 411045693 405302308 161013524 391663558 522247624 287058008 781852854 403310847 851751691 220888818 386348238 355280992 618491283 644665210 403626676 33714664 97857027 495576471 378646578 935743651 519314468 829312436 257055836 660317088 880322992 12127609 147055680 993852241 566786746 1062873906 1049891368 84522892 336933415 22984914 188784061 461772778 597022265 768948739 894210728 175741470 582985042 135486064 799211602 1018790010 326534252 352063713 405474168 206821582 654231758 1045451690 296058138 351472254 136701282 232867091 90822867 924670877 741891927 1036789029 62578575 162432521 57414745 868054067 401121037 208250721 771645991 811773421 93629334 449997037 120727664 501522759 1045028429 7383103 202799685 768228577 314793173 667917646 586730059 871669895 82287820 163315617 187838866 405274522 247238286 281790844 1036697154 414483376 33885910 458578751 851214063 976670178 1043777301 502749446 482569028 992753832 818040457 350992356 250906287 1067270786 53778698 907369167 452724274 783743448 540986175 1060785656 372035883 327251642 20457517 786698904 312228469 516482502 429056179 721276913 265991163 665000260 1003070309 57465087 132695723 479666185 454810979 963947662 638743405 828124302 451889868 695741968 63185874 911154022 588053944 35521936 700846633 251127806 608979146 1049739102 437887819 153961492 125739290 900081290 524324798 720669764 929613388 86913825 93974185 511603223 917282250 717903192 1004260300 857777749 847944969 64704337 78363290 231604006 885607866 939671348 813904299 802512716 290274116 1005367221 413359017 281423504 963575037 835267986 105339954 1021501061 941661440 355731153 921009171 672083527 31582474 864720088 538684861 391242617 812938755 403994890 17772292 702979462 753285851 271479524 597115780 327124246 985679697 43847547 567961821 299163959 12239475 359896672 776765435 38026721 644273748 929119408 206851839 191304095 196066747 144305527 924915384 5201342 649041852 685076396 921459925 329816254 317891537 90491583 888464902 214406187 453263624 1067810803 34414765 933322642 239256595 590841972 941325706 195713022 86964240 626814898 498445255 688684535 43794999 614920731 86732730 172086136 19417199 580991542 888682025 115796526 482110508 441616270 1064342168 739889869 704829933 736756832 388910078 742845788 219265011 274464551 84342503 350042543 764969353 576058451 609043610 523156283 843102076 850970102 76355695 354747343 964501827 277252864 104449217 670424823 1072312449 404464374 468058403 50173564 923195378 683334301 108228790 411896372 614701360 528995237 441634116 613583697 266443867 518031717 787570234 17394089 535061741 20129942 122340832 150115820 268157350 570588261 331265637 303350313 485677399 414406070 642978512 981824167 616347769 138452667 579936927 873168557 365268778 1017465328 927198362 924035017 62159154 572066609 143623936 555516572 797161993 670536622 649075119 625065925 793421164 929004346 287740397 342305698 401261413 954293150 178464124 960440859 492880461 904906277 391845115 224432295 793146348 606101069 30026793 148771015 287621519 874335282 838793837 642946027 657356489 681368934 530780019 977031703 320594391 721880713 248239089 694776158 802621982 19729831 338729876 348707698 866658424 777831848 834592444 414635849 551951703 209221254 157238131 1007821942 53468124 418116363 867664694 1006813776 91011481 61164643 414702026 227767593 471537189 318495320 552641623 740498875 276583650 269287155 306429738 376802138 355939238 315980180 494853698 149873889 458137326 120992682 635306162 129363440 685999332 724397803 732530286 881439146 183735399 930731388 297796673 188002786 125558637 953384996 711905430 480281899 607517838 19110419 929730395 246042173 866282986 494736483 153984107 1004717540 162411572 647823253 129545107 356185363 755875857 390853678 821147658 351185872 611122965 444755251 643364674 44311270 956057747 572522594 663369057 531019911 556977501 239365925 144583070 829793317 236536695 809775600 96677631 559500747 382476633 912119489 297305867 307261229 962577118 554478485 750052006 426999248 887770642 530025732 140381737 425301477 170239668 476082411 279847353 818252208 761706861 233577694 737205582 243445061 986572735 168648649 636756971 42723031 1056799707 395338452 259502417 597675627 999120626 562343282 668902382 226767589 882311654 868275458 87541353 589177271 490933019 1034186407 61411525 208405760 300534749 654877773 1020098509 194816639 796330074 331620091 644542643 823450332 165888871 587919810 582815328 574287179 492476351 845578534 617358494 926697357 833650942 67861639 695511746 1069297530 53990807 24959336 958107576 974037048 448889815 775905398 252806386 725237585 357719841 429226411 868163091 674906072 789732774 797880282 763595330 77032426 864626229 699235259 1050291796 366495453 105336161 917222845 265466829 164604582 970752687 130347231 951118425 231013841 926640813 732831029 684391889 61022983 736412974 758499516 851678752 281079590 659378249 840733351 1010568804 94932763 275956199 475486112 1024200781 587562080 122217514 125775782 880429688 54730338 582061955 354216463 716089515 251691860 947459343 65472252 240937611 882505115 50736120 476521738 253696142 840563933 559452028 241389030 19074662 975712470 163806651 77413945 990343949 821618695 1064231478 779550443 657976308 1001339680 219373495 122569740 364882884 209592416 4789116 892103496 372454382 933236910 868341260 603637529 396657008 828018035 535350773 220195160 599166821 812774749 640269880 759096442 6259747 1030474515 117729325 1000313911 565243565 745919067 577155602 634085599 541907894 239013701 674742208 761345862 184291423 320515185 464205337 285359101 481738519 647792495 1002125014 420988159 1048380514 74161136 908566358 589732928 743718766 200691918 191051202 710136478 429459663 82459187 1070030829 415818513 111746354 486892839 754766563 530147944 579977696 925532632 200465312 968255824 800034438 139956286 126299695 1039863859 1070607786 887733871 627379582 665936736 24068035 641437453 280507572 245637567 955829828 739160229 435529966 287198433 107088153 840854049 252262942 100023058 1032005475 74220079 141688458 836400755 201591312 116973099 741153643 163523895 883661240 984285163 271104663 808113598 269059908 879878211 653155767 948986437 709554456 4827907 698576918 401317581 27447276 360293661 786795795 994429925 778062040 71787708 1034071054 729267633 959634349 694974511 449226404 901175094 773283676 1000773188 619368820 721284067 201121725 553890250 241361851 523203594 801257054 185197820 418714866 843783498 436483613 954590972 542773264 917586294 816960984 467574466 189239782 871976694 348411032 8151179 895178122 444833553 356299342 1037383245 986057974 142314426 171163595 819552378 858427503 1051445851 71699445 674604027 639887113 197864904 697734901 940060783 867089529 660843883 1072050402 789657750 480520365 1023714719 832205551 829049147 919317930 224089462 202287154 530120394 289239960 1024431019 215881685 451026432 628660131 524169603 432399390 1026466923 547740764 950388291 984142106 397822418 167390043 277785470 315884277 1007071299 996064773 203559643 763450185 9033377 450215436 414206809 114798768 850918640 103322203 885761209 420748185 174776083 117995790 38786234 468905850 472140544 290497489 894781192 304471024 60235958 795869696 940934665 985440337 35869795 228760723 973815791 1030946998 1046664190 308735780 233353772 62912127 185956125 526356882 105830263 74585189 950274450 535273699 502468179 356236073 236423846 370164429 459549796 607624201 210808160 1039434490 1010931122 874429997 668635799 19910178 398880350 709869125 43078981 497578598 611774609 483347490 189462855 800714456 184815652 933551385 1058680856 329679769 373592279 967120210 678442996 26767800 1055925390 184045717 495784597 1033437339 1066424149 1036594983 626708227 503504631 195496616 224524908 826391530 249436056 543372604 334702488 510037122 28883646 17344615 517352480 929684896 924484884 12507594 36061989 849252016 394279869 891766887 604043831 389112496 36729906 950317776 1043318540 111853394 154089421 405828272 525183785 802820294 81701530 641253456 614556134 1041211307 39590623 518517288 249077527 840930883 249674255 595878230 898404268 512808819 560731880 1039865511 515576467 897419678 717135088 463833756 381339312 92063857 407463787 1022319718 598178064 272890992 1028273322 89247345 828261723 551557929 789173167 560856109 201903022 298623183 1032354236 1009045506 438576088 629375264 799421166 524962731 105362729 114276237 979868080 724640634 433020345 884283061 502391392 1000464986 503645414 957014823 97738473 758369145 285133154 1017373415 21373462 789883937 223728082 1072785996 557725949 445690273 487096839 491801229 1000037229 297593185 664470924 60758356 495331429 228279289 143237289 358302732 322547284 927498123 106833090 862137689 517738543 880685321 298285278 199483437 798433891 668496881 981175628 953933017 13448452 246991212 1046589668 37212703 840302134 578722233 69523543 631393064 685199678 589146402 194302378 462282717 105133351 81549502 870438841 999556731 808362863 990867670 892872005 457168354 185016251 289031414 574466288 766530350 370783793 220446930 888233575 88832277 89309712 714282773 248405696 971888051 265406877 33561240 145790382 927615399 741230584 672192223 788974396 689985585 407355883 489973234 1023794742 404446432 408765616 649334150 847260045 829617789 791239867 591565524 495448478 892603180 961555015 330690763 1043019271 107787709 444873452 595123310 542105576 44536654 712606618 103327847 49659972 668945079 1053985879 936737598 465525335 177482626 145213871 20202108 716427661 248196426 645423604 802634396 564575337 641785790 192466411 385876583 301976540 113974667 925383254 596685570 753867395 951640081 593098537 76833278 778932871 454707905 458955082 432918245 1001855447 503394107 756491239 218794600 987777469 16854630 726828330 900070903 573491117 191454463 1009628591 564795471 876380107 471421057 675608299 1039619741 658352376 605832116 22308575 807972163 987047073 189052784 78325875 149037887 839566184 863599258 23284325 847444942 775470476 697115427 930806822 640817906 689862538 499797593 285790817 684427829 714491145 638033289 748317995 359137313 680979745 441086552 319329191 580523965 905405172 521520287 425707184 461674582 813327788 651701342 205295215 1066138064 698124889 102145943 316708934 171812682 336073627 104677196 221892683 270370626 422373793 155136383 710556053 304974497 195630652 509588676 412537623 66916987 828437205 37993777 189944263 683492724 253762093 809399832 160405727 557668381 103928160 867520199 583065158 546773854 133762116 159116771 745085594 505837696 728836562 253823060 799086427 997813565 297597615 29608783 753380965 975639868 298638461 930557527 666944587 449372685 350119417 390167951 108734855 312080264 556377843 281914230 13299264 845409666 541702221 251308222 426174391 382474033 620789138 1052525417 531250912 907502795 377800908 131647790 590769773 82536307 864306883 537847433 818541904 726743933 520976503 210592796 950017821 470985046 775924048 222436226 931339152 915881644 827085242 520374277 944420065 152677585 536023641 49919931 62722933 641608172 729706469 487098606 856224680 486605862 72078969 713469885 227433829 66487126 194567134 631346076 903656650 595812120 73981798 448812778 290513363 4680147 728564028 238834030 1073321071 815004959 28273518 103765273 1056962615 270311398 741088565 1031641718 818844368 114028655 117301157 96732048 570371537 917610890 941643230 636003974 1043394681 81774097 469925641 840538257 241911224 789200 141138150 851720562 727834794 356172092 991326126 261336758 856624891 617555743 172366417 803352311 380097644 197528928 856161808 976386474 1047671991 900794471 462416727 190867820 1000838609 43849830 725734449 132820792 38006805 785737804 710196294 969480836 316900821 979563154 52409781 886523653 35380120 59851397 102970987 260725475 637921366 338435700 98434911 871846388 955477750 113810623 780550349 583543089 666352175 77026496 1004473761 781261988 596479501 503981784 25454320 500058755 804916427 588671697 603452695 38427598 73086411 72203172 71667804 369818050 630124625 948981988 440292303 615628639 736213849 981337910 660973542 267205730 421816815 749946533 593576298 735214083 995413701 316976594 241328874 1035547966 305268984 313233248 89536528 67714451 788279990 576940795 759623339 1019801811 1016127512 297649192 560993983 257052119 255688486 408189586 424495065 533073056 601987371 381962084 41689320 896185113 609515646 939038114 789565793 895479727 782854308 771584381 810066315 545337687 609228940 676056798 6713261 263564002 1007689477 186178477 139106539 845400823 222545466 636949131 418563944 141144956 395286805 169254304 165703630 441836486 776046054 633793083 556845522 818870341 560800910 715059566 672409682 876638205 375516599 596650450 460539308 354080587 216740677 755330143 560670719 295984085 312210183 799034980 68786214 734383665 757835131 280854654 930245621 920627177 364467505 855881214 91821645 425593278 183238552 2564799 506808006 938706126 950638159 619809562 756656522 594969919 981457048 368686407 440917873 802734454 719244887 944774780 106117828 868918833 1021265759 765580404 733464665 762836467 321645189 34824433 679426309 894940703 102382440 201351694 369691586 508185429 579588972 891732436 476698745 282351132 1044537392 626047705 84119767 282209531 1028577854 502498059 519629479 275414906 13650832 567706099 1067166926 1048698796 231385168 8148965 395756733 519976537 200150620 984802888 88582814 258187675 643656731 1043786972 843949260 831161626 362129249 816705355 357684724 1033818890 908676184 323883198 703592981 122032473 90281385 562907777 680570866 846344864 733820133 42455256 532706434 933747075 525758925 735613618 325619782 420219751 966233106 747132396 1057621525 804359656 315297204 602103151 838284908 530131280 346732174 368512462 301786357 385284126 411498559 465068614 919690550 805962335 496194422 566117409 269121488 189064039 986421808 903673540 538575163 216058030 140344014 298836666 872933611 445395599 834976744 738411609 480951107 796145285 657823495 1011107715 895693303 465245368 94787178 738323561 781233288 1071467323 458893339 245541396 573189290 291068320 400671760 505935934 744682327 543985286 507684635 407395589 176499103 1025830662 344002820 570601084 810431785 298281120 1031607956 606056168 43150494 805329563 223479659 187721971 874556714 217751237 227617839 970834176 783906212 880575205 576728783 835885783 431465412 419367092 470342113 530426074 77652746 118610554 229712315 190083145 835528545 443839575 211505996 997988364 227018569 480541732 417368912 494634434 472797414 501042228 965700593 669536753 700607793 285268008 349762719 696948644 248667354 258642941 208282998 281744272 800374370 474188773 1066952147 308509579 702165550 585563771 957995326 447836041 887722442 502062768 649203618 104416793 59447093 979307247 104677926 787448480 568178308 824060312 627544698 235053955 60787834 462619808 442267309 1011382705 23045883 1032204088 296353884 747799872 968305307 318134470 544923884 871420844 177097812 112686193 222438215 656400956 613081384 780723222 180907439 939025125 844840547 575946623 89651208 903811738 297826720 436651893 969278386 355345639 613791158 349063687 1029582239 738776227 526450188 202059954 127446120 499442989 247701572 95814021 1064346502 639640635 828328166 691355011 799877453 988391575 767676913 465031149 155439232 694832067 278845712 295664491 381854962 821753897 670727544 382166197 567977340 535101103 633255995 81217062 815373095 859094854 202929026 510442582 142703498 817398443 261745839 217048577 758350225 503467882 220267941 371756734 286946050 680642009 573253833 52364805 962796740 720855402 918146321 503406864 1012621162 44139150 773912236 473930281 128286026 334623277 704443855 6883653 576189422 564825557 617116788 209555214 900190655 11307659 253181887 67036135 593636196 845732693 726544213 690752068 267423197 34264794 557742942 675799510 504609248 227654552 575557352 207454339 932017356 667708800 579655562 1033507136 744821586 747377988 377970884 508157563 1041016187 418131963 943081161 673181169 71123166 37570631 655254401 175335821 624567412 692664905 320662451 914494869 799258624 686385634 300089868 796369137 1062688967 917633380 603067402 761469407 833554965 1023724744 715343718 182988477 792078201 305978736 677948645 790181469 152226741 499147355 744411461 672223267 122572597 523260514 9802190 335823964 779709391 569943192 271658583 40990823 601781627 976892762 347567654 49479303 368912721 595956098 549117450 1002421990 617666872 202964736 129425247 904380722 295875397 797013869 50940913 165797798 894970460 809553467 960077404 649085054 654783414 837994048 681240094 200160295 416211325 95091041 509348917 936864810 984803530 74640650 296747445 677061624 183554703 858763044 291093360 22685086 219553056 316206936 76582325 807384612 657856402 566185376 643863910 362259801 88204451 641925590 803456117 324064752 767319748 695238213 375686035 79298652 753034781 705078802 520652229 870026746 650739022 425872397 57746334 401230887 903341313 698857712 1022749061 1059788609 850257067 376448909 179732971 384103760 448207744 815981224 1023814313 389378671 242905385 1008382273 363955893 186696314 527020624 414951053 938554860 248573400 677782235 722293425 159391115 441356858 587711930 833519918 675780685 552196738 577197649 743580353 921775870 651001433 991331375 160825701 71197547 196124896 604935531 503833999 785278815 430630261 527897517 821804529 148475469 1060694999 956336194 984241839 911984390 670257304 739156672 1008455712 279292552 10606006 803292841 616614302 743457132 861094945 912327707 802797690 85528950 654884775 822579947 514758437 798932021 455012461 768434309 809958321 485024101 469793881 138796860 161734978 812319112 922619621 1013202921 645197486 438995644 369783604 80384897 70054402 350506150 722942362 984976895 901501913 1051082302 405253768 704573493 437114122 499729448 76042242 509232435 698613191 694771417 111547829 301603990 834043456 718670072 748427552 943490299 417382995 714613457 470707093 131795019 271107999 43982132 220101146 330390707 897495395 392494935 766935014 134751561 492921130 134238862 633720497 322559046 204708340 781839297 36234937 124732136 827503895 246461136 1025002977 555538462 578211331 803166765 1000484575 1062928778 124977725 96553979 848176016 30632886 489258302 346287543 296344891 583005073 559643211 697118958 823943884 416733882 648431124 741897760 982395921 796618467 112320051 924209827 802375676 345157177 351510906 872954063 736667442 301182596 222549809 259819592 774777555 166109111 391937033 531684662 511694648 218295354 275414189 563574520 159961101 540302555 729732719 791294084 831721152 572913489 200257683 854332172 459586688 808055197 303602243 993474845 893855619 247557045 72248813 709371212 897146944 930924332 609925594 548011062 447430946 243571365 559234780 341971269 159449955 739621518 680045051 69527042 224027450 456075106 1063750718 652061986 808659048 623420327 444347412 27298721 135441991 108916754 136499003 841060096 698607734 106995432 685381344 408126242 276767226 94096238 794279574 1024280352 898959426 370662930 598251570 302114483 977264961 778426448 797674374 713487171 895376159 1059481483 367557029 787464784 635962463 948429457 615369034 380446484 94413493 467609532 974072899 124169540 120942219 957722312 703666222 869360684 396121075 890458091 205972509 428570542 407713609 451675457 442842332 401751547 759237346 458459924 981495595 24595118 511588736 35225867 305990478 767947579 1067607480 164282502 42299267 843655758 992741140 100275008 587702881 303985551 242681077 612208731 666731627 38494524 904308576 933671684 509797922 144613880 639685315 409700678 941854993 401993619 120017165 18355265 148114721 449294372 913431484 560579725 641261068 699833149 471341612 840071046 844543057 102162047 404498492 653856003 376766494 295578110 300093662 977796627 1045055353 198488567 63168020 792867630 775818353 545388840 903647112 640726841 188658971 231292417 747810536 785843988 673079005 918610371 955454300 313710308 371913673 168903331 855741230 954516804 798810633 172353936 953144858 455206216 138122816 191160211 548354048 997497279 602602812 234768326 470768376 434821345 801685396 365229353 550729730 25229011 562494218 1033756862 779297135 395502054 1016006417 998669948 822666798 346886664 607568920 8666472 809865288 110030417 750919388 916469690 789765739 488681155 282885086 163034353 208849297 707235272 3082129 365150212 315830759 562397246 158487791 765569991 607129536 152618111 508718675 704721640 448742828 870907220 733024358 111723334 385013465 431771344 832821714 755826333 924960207 495910495 184769979 715202854 583769710 684414273 100497442 763052803 913845416 786798346 783043956 97917818 7791735 583758813 915830797 1012050248 849998582 452749778 932416423 244471613 121187049 769515918 482134855 309351773 746400659 710421986 687065094 257087736 994366001 232792443 380162577 217608178 59372082 959787710 833154211 120412355 205028951 1016425490 102502749 626335010 121115790 1050867903 340687990 205197166 458838723 213699660 228850781 853081059 7233964 421387725 835227953 117108221 922454568 681551757 169560233 428023872 892546030 869619984 8596430 629169529 234078696 97596725 650872066 17959385 579185735 208408775 212798436 194124288 868838236 949952094 13251660 48386522 801727012 179825480 399546909 152997832 565478747 840790747 569604214 456572635 322021635 885315463 680237578 795391272 901170586 1053057042 398164191 563012176 903894167 214854841 66007326 972399943 952907563 763350155 135624426 61439614 51696944 1062632235 1063601402 475819397 126354380 936435107 1002261616 1020686991 1023234160 964189616 297239730 410542149 61572810 1008011337 675515603 25314699 712951957 61043817 192946700 509974884 743646860 763342714 652577329 902155284 437994328 786731447 354439011 45749415 1062047945 826022914 361445041 114911637 659554343 880695796 840445369 1049891709 647923128 618021958 140308179 520258763 66503253 511315237 134125801 616125814 639581755 530702456 471788328 731766881 1003951691 399576487 500905485 325620964 1029206473 104008817 47173858 17614100 451655706 458387491 181318062 38705853 126076633 571107637 218933981 590215509 529819413 376529979 100278925 424287514 597045882 12692808 635361398 924808780 810278816 641842373 749280094 598795978 196071723 481570958 889977259 204500749 885173604 114407974 738904146 884435840 379305293 551034244 510635291 274523325 13844434 11411417 607629808 921578190 959258304 708982566 923692581 955642963 85336253 103643516 337480851 48072376 640966079 818159025 869621355 809822118 5242619 435724707 767659885 45758236 811953414 894071105 849396209 118263617 1039001679 611479301 784521636 779398330 477040912 1023749825 995509555 90289137 297423521 838624764 6991081 475611288 474769208 144592570 957745328 149875111 594411583 682704280 105148689 210587514 700849146 286890042 691427680 398425260 758363676 479918082 464851500 660691579 217562071 181292795 186467915 760735691 876369248 711615671 465480363 334568067 517164500 905482216 468514383 252049368 31280167 77355116 111574270 266321835 147604946 524530102 452323814 207896098 1023564449 331465026 1013454567 287490124 792160018 1005447978 91006096 285079466 772374959 441908273 111975890 665093 898502228 674014726 608425427 104760028 917243678 111018434 778699081 8496948 395632390 197782672 327352079 353625787 230067040 155397420 589545168 683329706 311273573 203002081 172655422 1053374528 106526840 632132121 87139245 558484424 63907451 958968445 856942819 703548448 546124381 298037646 638518689 1063826474 839694690 378477887 249255453 1071529022 474944053 808976272 433445724 623011225 658629941 853275100 1061563689 939815748 1016764742 838474382 550174835 302362753 492791671 367286235 161933085 423282252 184482952 784606648 125696883 911386449 999211562 459602911 253516798 799273091 55706938 491604862 403560390 277235184 245759393 538112878 250354283 382080028 109115334 165229436 947652863 586710255 594475331 48066253 200737485 570780630 837025975 433434614 862612822 995304040 528912296 763781854 395980370 329666097 553321779 20513546 653888444 302252156 741913843 772067576 641648433 250002055 1048604667 402072638 758660188 490403501 50019545 330091557 978677014 957045280 258610965 847294865 101064016 326471956 611988986 481106281 1033652604 967702118 335286836 955942147 21270839 207160047 563670570 103697189 724948829 389406613 110471948 974406484 785403127 335818938 728663600 812155659 652181640 249029363 541162955 476580707 576077171 636183040 1029193166 244018584 516834017 624504747 487581845 303372530 38708295 548456515 763932780 17045244 28563554 666246418 1048086754 655004947 694574647 12486223 6773927 341441225 708988940 729932197 299263012 710588397 20642863 833712613 202936940 746584992 320469703 450617587 86956754 306197590 938188184 103547491 96520017 514276834 343280982 826273324 426885572 511355271 831098152 20124515 566860553 504826268 316615535 860660583 1066639181 795082282 745257439 601393807 783995629 258935662 964498591 965652105 1043255715 918455526 90418803 318102029 533143427 456758207 966712580 111896177 234361108 992443299 858265471 910605968 276739535 75483765 7660840 198951971 268868561 648109695 852570033 902078124 288813062 194826512 577757861 622233846 825580306 344894427 1070611414 45819961 28284886 851140025 812309639 447084652 616130091 846165933 338267828 419370012 451031362 1038572422 579891197 406395149 168570279 16231590 768873612 762010294 44261690 397507070 876380500 850812146 41864885 229563004 103033116 336888125 718760015 230903281 914489989 160407851 403060371 1040746216 761436558 473410093 328818030 901639383 239587922 439615024 691050643 595413888 744501396 759028844 796713952 228917690 161118296 1030502487 569729528 958126289 223082190 631461160 829635988 32475126 171819698 538834769 328025313 645553609 1061640767 758798920 777602586 911060818 535461169 416645584 709641426 754893318 376384582 711812364 902585184 1014677327 229789345 534924279 1006005251 950787245 449340238 489918298 373937114 413366211 43414497 550810286 733020647 839434324 453838636 847617856 186701007 393157332 1056212133 617856746 875903095 271657345 250989851 705730320 643120857 300047531 107977913 530997188 1012999902 643589712 352934853 267362673 342480201 837239200 238464758 812032887 763541854 982666963 678875547 163646130 400513740 113849841 686529961 173017202 852991415 7114802 598830364 1071174598 138566114 961954828 701987290 195767769 377713629 575323529 687140825 455903848 216225264 426378093 329186645 110763221 566689942 464956754 33184127 52736004 98406810 848793630 675413091 334177391 785240690 142749881 885277806 921553462 323162415 782508409 611405793 1012014972 910820390 299074094 301735791 434517538 15427452 932719023 1016072593 467299407 838539754 42284046 478659153 753552848 774530084 955861268 897174317 73508781 667587942 868472195 427499940 956570698 212793613 917465361 838749745 76037506 853809024 575323181 283735585 8991920 1001745912 340428103 523827093 835255052 765558815 1000958628 875493546 496197631 975116882 798440986 1053630733 899502940 784331741 890906377 359614908 683954199 475144324 385249256 1032899376 466061082 944655251 65880801 772618791 23885704 473348188 364410931 551101605 702457503 286614293 779947966 993819926 738422401 803513095 487994187 976276268 717225182 798518565 430515868 1020197350 204633356 822590299 876074192 217646787 471823796 1007309462 838976464 554425285 489005134 436697704 658692760 47863432 240735798 347110217 653884932 133991899 1060367978 1002337627 813856597 1062958714 138011974 131288570 468771079 900935888 682533207 462127685 210372196 322917111 710886090 128914819 613636797 445691720 759677883 434887691 1006505331 906466133 45198310 122378399 767617786 371268092 900024692 34869643 229199312 263042862 528357858 1013119838 793732779 354074145 233797849 842164258 824673710 245310304 221594786 513007998 153562542 839457090 879032952 194258826 245789649 92641986 209082077 217499641 438791840 1017346128 993076948 908555562 693549648 903589191 339120446 145426672 784820529 972299285 184989406 224210425 88488909 1009658042 1054515550 651793720 315998887 477810085 837264308 276869825 454496879 676991458 589242601 714498701 743407619 893062734 979790090 474935624 625725638 427246818 152994655 87843821 1051400018 323647614 1054746976 201279168 592553878 462395311 1055847876 215147944 395004755 680908557 466621635 327160995 571022230 477239375 1033526771 766368850 340129915 474851613 716681177 573653416 952829395 778819424 354652209 1028711974 1030136568 93266793 928957630 740707719 709783815 514361471 425809824 261530719 907090217 787533696 880061304 898270848 999440037 41308136 550460733 762729805 161301840 774251773 769828478 277824698 1022900695 666451446 930496065 444565254 916418907 13730478 340723545 452733451 775528193 571766585 46076858 953653920 961616925 189877696 87726554 642296779 56950117 172764008 1010311060 1068868846 958679709 958186410 572362260 278653794 403650139 47003476 240480689 460767548 353224404 365731718 804104584 424746663 577821288 212705552 526931886 5487036 811800667 378258086 20097007 596973776 154176736 193128884 703301387 366976411 205386513 297623712 118960124 296126975 263851199 291867783 690892292 308744059 547656601 1061960083 353072517 486089059 607051111 626455649 746743157 795747727 972454765 840748252 338367559 570721382 1051804654 855992909 869849202 51997587 401136066 99395457 975665808 89282056 588810083 326245284 314405828 828101947 566821018 178385146 173155751 197956737 944560989 584759034 243835946 169067382 218862590 981670035 324294711 234604105 743620135 429291420 490215299 260672390 122881321 553576467 851621170 4270441 691364537 1035413589 228688124 725084424 678831968 657219793 889354661 919211044 605775287 428878950 732366780 612741560 903467022 219380550 632364802 759105537 200756607 352468124 924430115 724144324 908686000 397514673 930569415 528217398 240199856 714037050 394434744 24191942 328000593 116469460 557737222 639473550 892826437 688286089 356643019 175592451 776734452 750739898 45710526 829591201 258515029 638794112 943818925 894506502 633882519 131276867 917203198 538511084 338468083 1068209264 951401989 358672817 1035577099 1043021430 112471631 691474891 910158365 621242215 269463894 736646943 207888235 599771634 591432324 797845469 879821401 304289402 662092892 841088645 138328631 571767742 378970938 1054032803 716786902 880548051 996335934 1027669072 374162543 63289451 658138804 577268185 307634074 795618924 570940061 108963719 780791260 99376895 135889026 76565193 964914550 217210599 364161812 600825129 544696976 135879062 942408176 300563569 709188678 562361285 589105483 270878545 254534152 228099884 258782956 918997446 667511831 20506424 469293155 232446924 368418509 1024762187 589220448 506293812 692335150 92233835 122842806 888106119 38057539 21398185 246025567 711183352 280076044 722174069 586149665 1040106113 500919891 904810883 404879311 917504230 873864465 847609479 662366939 112509797 441653199 907892877 1030825365 136692930 883872196 70263335 1054194607 441318930 308455841 117004364 584682462 762029373 515262805 150683760 217654099 536024233 272641529 121538105 571119472 611021222 800381760 203111090 1014367597 869785371 932849620 42146252 1025069198 662396081 95363711 375835255 494959092 125139884 82863005 564251084 64421253 958819727 170329909 998022998 155663614 192939957 415252708 63563391 722292504 106712354 628955055 416405974 66843015 421118059 979211384 745338479 791345620 878284351 836638009 433302979 371042426 855315723 76434314 607202840 697278954 756712281 471605936 893431486 274142784 459592326 654330786 211840074 795945250 303667173 311736866 951913801 668449676 504978570 568935944 86558559 510851484 893282967 412010465 421173123 783449333 369195817 904632847 1012304719 17786693 192975330 437907 1001300311 754298183 219954681 105782270 32097844 670254981 450322257 280387086 146746171 147270584 659377932 1031656873 243778423 879071594 117954920 267139293 1029902614 521971312 217389271 278882944 493562812 735044350 141568790 216964108 508821018 762186247 570790045 134151053 231810664 643658976 850163657 795730992 73713670 939743879 147256388 399212743 311274882 416590297 920192929 267879479 793444596 352705677 71306323 372787331 338420001 449114748 867845470 949246558 85904634 718008752 297630326 855792263 1014549081 826663623 240044093 963320878 358019589 94407265 421099837 326957430 294621788 802399798 227171243 1046858746 1058214387 1027982056 539595459 480934061 273602661 349909310 758063130 520698884 1039210859 123202906 441122513 423606853 757259505 261636146 393524171 765067160 414451209 3200295 207640973 914394844 532616010 687879510 847443957 4928787 406666124 1031977728 524062319 849522861 18424894 122341790 41445085 631213304 739549673 857933543 86722562 1070801344 258442550 543228013 510258287 253481242 364832194 7849150 67108455 674134023 234991907 926718310 167488488 1059762408 47269551 1039682771 907850053 245559060 530619714 57383413 660623023 49374393 162014101 652138016 956927700 211917491 777037731 546020781 1065422175 462015327 30010757 763032736 48334519 454428269 731287124 381533371 231702300 238781513 980818885 37546076 788023279 162810571 682691380 248245026 580508738 212618846 223395218 63448608 12196486 806148107 155062854 591292326 71322723 101984077 856694025 290228468 747924192 792252482 315081573 966170360 481735288 63724860 760469746 752527680 407248108 888809028 707785307 115829882 132761533 546735835 969114514 1009760613 653832129 139171460 896939403 421276075 906681501 597813648 722307738 739622507 874548814 530102012 151771996 1012393540 386117792 900286440 434889073 1022382217 826617708 649159742 474419131 1042451501 636390924 84954054 907976253 12004883 430262216 122371003 1068329128 444963895 454582252 76674654 1069851204 951116661 759251275 714610652 684518947 26744835 294468005 989869016 778212225 567974321 170734507 719360756 1071012066 793793359 767725885 797001463 439471520 133303591 603548080 748820014 999640141 509427817 1038151884 145076770 525209682 880805389 619779167 568311881 546631885 246581671 706297543 290572203 164134651 286992112 357979216 494799831 1042432383 265992488 972015103 646862125 128411297 346504095 687933494 475366015 575883566 160959947 676727726 731579610 1044521721 145747542 308739239 786803832 1050804834 755297583 541888342 899920062 199499259 709014180 392126150 98055339 925673205 939172756 1797337 1023262737 635180357 894809635 375252307 190499284 99688123 330360048 157944022 604583567 61975324 201933726 435995742 641605798 253610476 714789276 77026264 725947519 310180705 605100596 382469664 698196256 364887198 718198874 832023676 772171251 531379909 457455265 401004346 228197956 214364284 657406837 58012386 702460409 202798211 407304333 819656390 942044416 84701102 1059269242 226295589 174185129 183167177 775482354 169644210 230913196 193690888 953569230 454799836 1043959575 784815883 913999125 150235936 806652809 787588297 591895083 197051071 192373545 195132172 55778511 279173875 213748553 295522066 843200486 275230369 110216646 51311497 382466982 159967188 848286104 379307532 179857366 728102649 428149555 170939237 1027216728 704275621 551345686 735820096 671980442 561453195 788565527 374514065 556374505 918860757 486256945 953466689 279559332 343123331 335429746 672402786 69609858 1068250473 707392296 550656964 73546174 831250210 631677941 712110799 361994680 789663227 397111008 169344567 1042220952 205377517 269126626 289867451 54698828 754748816 890859711 85654642 561051797 29518441 270740599 720569991 938794246 500976019 785569572 69373057 1004220127 862891191 134455578 479131227 356776593 54736441 662290273 340954601 386451462 624515987 556743869 836614208 654298723 352076943 919258889 368867330 471593920 396589797 941534511 270697872 1042746292 457521815 734392734 59435373 108248404 47651061 340838790 915494221 269642884 680855897 85207425 250885930 113433092 978936926 915771438 322065539 1038348097 848737947 481222114 1297279 586898360 995356222 923966475 146446522 973017442 1053280598 523875349 1052293384 248128237 237046352 922680385 424459256 671032308 436581010 906530847 293209103 632604779 585608657 52165669 1031607819 337464903 156100069 426229119 930526014 253233604 455704955 970448335 980531262 834475792 717076980 782418354 874422656 269939009 500590789 186759677 925373909 798694307 628770803 1008401505 643846541 489269198 1069058509 366446835 689979228 950486893 947013819 10471601 1054928180 607446806 936321849 237742603 96133425 628963986 872787043 953998515 191662059 657188845 279025381 598665653 771883837 730233908 1064302753 537473039 1056893796 238237788 258275555 920383747 1073429192 175064586 452942060 561623710 994773124 776740305 996475938 979001804 806907222 160041281 1040891755 419985688 202611237 955543355 474961953 328189816 239162204 161649259 611907409 163882394 778304033 216517251 966376385 565291604 678858168 212024334 1046598976 406724164 199266955 502474288 813646418 758007228 557146160 560099563 123108642 208164482 1031788219 379777722 391263069 368337835 856402383 721194778 426434299 389032593 557104368 252743012 712541498 588924703 832634899 704689084 688020484 349829433 391694937 706979810 4110980 1030321130 10795916 1061654243 937721025 81250344 69645268 166974164 93177131 394297840 46796240 899414836 1066430560 614191557 518400596 885632680 1053756668 460630511 585761192 510755195 584750285 773666954 906221328 642553535 532099124 1070022832 758633964 543722726 328961395 578506105 574817993 307892737 285264579 996884600 417863649 335744791 174720271 938266600 196271850 858562577 621538216 54930656 626944591 302844615 138824680 627219105 616391628 362234014 723946294 959192848 502564572 263779316 68248016 451407803 363444578 780437105 675293266 42940224 1023368926 741646649 263164581 210132457 723377267 370126820 78988222 280336647 968350826 241667443 607752493 478107709 128318538 430270478 64931497 553554288 1000156879 849008173 265346234 782311104 956567148 622627174 945087125 67065918 16888235 79357516 32535842 136444807 182946442 920025443 463728036 1009484413 542663258 716467922 906082681 1004774234 1009582240 946381634 1053970049 503588641 715902085 492736280 755753194 34002861 183326148 24159447 175266446 227753928 266159999 522595341 692679348 429850989 936440082 304257724 670668720 843605177 167720257 816030602 88181254 125446293 24440496 96138518 866270706 563217574 250789918 79040454 529569521 601530823 191077852 970573 442878402 365204012 1015509138 1029180649 232071868 663321073 425748316 345417195 398403213 443201751 1065584690 203162970 883917482 841346443 972893577 1035681767 1066421954 595978237 423688986 263155646 739995699 167267425 50518416 416871435 526595807 576562256 547379972 890638286 538736019 527613821 761433183 495089705 565264279 403339074 753416362 217156777 942853262 448081984 168814285 83274719 610331605 266063070 930578799 1031095797 664147824 444613320 215666147 928755908 898710075 388023800 783396603 1007767065 70417500 90670460 610521969 573074875 176291542 644590509 374354913 581817271 1038123927 136528853 699885368 95954650 718309260 116942888 485740866 141423085 477243656 890129843 269109633 225434138 201973787 247867663 832207587 552173150 23673154 930643704 463669918 249114974 89519459 521896139 489166999 410437025 919772276 100575818 4936749 725336682 327009347 691820332 308322817 238226226 353331145 858754572 322744537 193354389 288716490 92077553 273229313 428789486 804971048 177866261 179018526 113245980 445992668 722343658 698163342 1061855784 1020958882 822902747 417592148 997357186 621498724 220218982 389324574 881205522 152645369 614602032 655911328 425435262 645917437 980156329 1049308635 148589794 603223445 1071108111 679802745 1047112160 491365401 1010145048 928130998 330633949 704442146 662245096 409295284 641612248 550443539 941102775 134825074 85803025 75536360 1031137792 114326048 67950113 837302978 697085805 630021271 313419252 10049065 340595201 683296557 14990106 920226105 551246550 786476724 522604246 194717080 993208613 593622974 426121460 195672556 941150942 528596020 256124032 608253534 711641908 112070686 597228529 716093026 143956224 690602354 254766626 813210354 400492187 377351163 519231306 509446330 870436677 420563123 705023410 1007436223 559424171 616655127 328552073 88290098 136312336 44670293 782793846 604014595 331781254 440751587 660614289 535004957 163830029 1028214067 456042151 933300415 658480223 99135697 712814474 410201180 636479394 401997178 487053598 771539201 636331092 446838809 269018646 1055114073 453083381 412433529 750845078 881647092 374138930 240096374 676554845 736970551 659612960 48610378 359914772 866117028 912101558 188838693 659811317 659027030 205136032 358313334 652437379 365808858 702632590 579476978 1068674377 837842968 486248149 237065132 293345254 1073629235 371195823 514871175 632022517 941769779 148883236 79610060 660735117 872867980 1031515520 811109214 183773159 783850358 170237016 505542793 183163605 379954168 843075272 842294701 628353431 456005154 721476060 547952765 216090091 1062315784 603791034 985989049 643012251 1022249608 1021461307 162506396 984902396 763492844 690914323 673180304 55353148 611115177 47145860 393246867 1066661092 628287773 267834944 488883918 673524741 261193168 953956299 54913720 673481140 797966654 762797805 753269945 604472972 869409506 807736296 455256439 471242354 578472520 298349477 338593075 679169043 912041902 557687804 1019567825 867947687 835075752 1021362533 1049667207 860641206 337896058 397466457 270638503 322476235 932744008 1009537148 665922161 61202617 382891263 854066590 964892570 428826578 504797201 861493302 901369487 683513556 469214888 695359613 929658418 653458204 60824794 970367646 9366202 15134673 1057540126 508319322 598720613 791868887 742749536 406726722 602111830 148690597 643900829 1015190752 251354192 490348156 651734485 974221867 461545587 506701951 782276859 912656326 464922953 296498835 355622722 927314740 299783314 831387807 219804282 470041079 696423478 542628127 218448065 880677114 980737273 306542044 145059686 216509088 951648809 288357767 604839136 490346021 654682221 371635237 180133413 915932517 1017081417 329717020 413733936 502030690 740802487 463816689 411500486 322010343 739178702 736381223 94985255 898200077 579339858 469388814 532498393 571610629 483479260 285548814 688530038 967371238 130593362 661850996 460758048 549685279 691483064 382614243 972373161 765874000 538058126 635661646 1012425655 286411779 997426405 301827231 897983969 995271282 84301954 599258553 718851571 168962540 470391868 900193069 344237239 179243900 1064588289 174457083 271296236 685262542 544381175 502307032 839566310 860140742 581821672 691797774 315622788 393832008 258740522 507637073 131594764 99204981 935596191 161470991 812792798 394888479 436208302 353718619 65774795 672537668 1039404145 221109603 953176239 948106044 523535276 1071003984 593581070 93692813 561299046 333690502 945410008 334669011 1001118840 811924410 51871636 616228318 1062623357 84088370 859995067 106713795 824466415 695325311 71237969 980738101 573962713 924047771 359114877 80819967 809235970 873711873 3370504 76751308 199719288 304649537 953330611 925277373 355640701 13824983 95833650 559218660 422630648 1036152869 379838907 180943476 808511349 713345834 1027808386 915409133 697535447 129471121 203403 1058942626 578079772 616496782 981732023 884084092 555067537 800220773 642661795 732724974 636923769 331034258 71420409 461962643 1056970388 1054089168 127177296 1034757390 680805152 1035416281 338397415 211046824 279892043 137384481 248281288 316870355 591828319 524630426 159889924 455095661 578330685 680425499 463270818 93957726 384046810 89513908 389851309 1003748106 933422792 988975956 656140490 596836872 917234646 1014160310 1046641780 698878388 224862835 650778891 428673884 754279022 772212897 811266739 438540336 254575218 701149054 629047620 806028815 81671972 54007626 949222985 671633888 717467004 420652556 512660128 281144138 859510503 924660261 735701967 920643882 269263559 367200882 116189089 660529967 837725940 515011369 234247787 367112473 529524364 264205454 957636105 547316575 154911659 878185952 49246031 678074561 590308361 766364801 514365 1030374831 106505876 452071905 697901959 791409307 922283747 15201896 997925864 677607764 179473324 595323310 433317687 657749653 821251470 998263522 937068717 389678309 104826996 701323754 900469591 423826279 1016326103 124848188 223490391 46468796 826076615 298333434 671523783 630164911 948411039 766474189 570684552 634191131 528607485 443346168 995748633 786521036 959127238 583775395 421842322 104200272 805920323 286469803 700344330 562598037 708147146 844050998 228657217 369502212 251749875 402086438 376218542 729498514 374914573 374066725 153671177 128963705 817039926 635034894 201995925 765144557 898068438 707923676 623016975 73501971 1017788531 75030550 53729984 369513588 743957334 424205018 968235210 1028077685 582370936 940819715 224709841 259028090 383344854 284948073 693746722 448884061 670597448 449240147 929703451 390516010 428809768 484349544 161745998 492008593 123979917 799805413 987666982 416992046 900348673 608300300 752346734 943573199 689124260 447634187 306898916 94904839 850454858 937462963 259168166 570095861 439066472 812939761 39412442 908940339 646006942 972832950 265860726 1037555750 478181145 124210239 557238817 1064300826 980193846 491814801 188264020 930461546 742815696 726645002 839503563 403648468 627718720 361431175 808432751 451604973 442958995 497116049 897235357 156658265 749334654 208940996 1010372288 767981769 852299804 2299947 182068040 21873735 142709178 918765145 314800261 794592178 191758198 796376080 483285720 35571705 1064148311 456387291 795132942 36719323 828264967 304130402 347972882 1010855915 226534339 108323444 704829228 24022547 1018412839 679671078 342252095 193461732 688766718 843604957 307813714 632522240 211425723 785626756 359978124 406662552 1065907245 179596307 543469230 623541742 406492525 364156845 48967946 326371482 379810336 713385522 556566517 11289581 134160333 180465586 940453642 480297861 303120908 206037831 814024677 78654576 266527836 115535436 506697892 379308398 557019449 717451020 694167023 948006350 24644850 778895413 509471842 159491247 1037850118 981653197 978404344 194062654 914899538 875813260 178646214 540068164 290177055 512224860 1058584451 489319143 528947996 249580050 738018435 173003248 719622447 50141744 99456870 324123594 410825726 491392245 403708365 18159659 201581886 442112337 183175064 810440757 403466717 207058879 631408551 959224320 984753959 769152947 363784977 766081030 916049334 385795042 669638458 962837561 74364261 689895139 625206309 694761175 1060287263 823391098 201522946 880376177 594155048 761177065 344209389 210461828 928745020 356518795 1054751638 229910418 457245507 1036612795 259332877 61242143 632078897 374129950 4609309 500028386 835139158 68464482 976737435 857349668 75988694 453407893 169380263 501032301 430196538 393727656 511733214 35202440 8676020 375004761 67331156 859539602 962573402 21461419 993345145 159331155 813772993 788671821 793491039 217870857 1066910219 648290906 184157495 904394242 256054762 697294561 587779580 826342809 766247358 759206799 340448722 982216766 815390328 904774710 939962002 788650260 213605930 679858277 299521862 723487119 933895070 903057513 532153981 363063395 1016903186 1047589624 809323708 311971382 607291623 1041326621 161026484 375448740 337557860 131463829 432464468 477895749 955686946 296675277 873567136 359253762 1007547517 847209029 619593674 622534600 1056646282 17390939 1013502304 80636659 351007666 1051283650 167940687 623999274 192856826 103212581 818835864 450085387 913416884 265799724 209339760 627862825 1068926351 354633500 775733757 477820911 694171663 1070751551 97842894 234160361 163296346 1048779652 858305976 665429813 744808440 220024806 477672242 374833677 960816942 73172066 551646998 315820110 820903304 486165091 377437727 310251989 155650305 116558436 1015031343 319332084 328374745 1032991810 473542839 1025735195 837234229 786836462 358054926 103302326 108880288 588076140 759602383 604543650 760279769 558782187 750594660 581626215 724027115 106380586 913386711 797429333 47627312 830425181 331110843 479118322 466784628 673656093 1035986671 773526464 528439645 928411021 438738926 338315725 595823462 471564427 623736017 699985301 892255208 319541900 277205794 753659040 209046756 798019362 296609056 546863716 272614181 421816931 92446536 829252640 759457477 362621832 460582986 244553173 9804766 727352925 615960255 620905220 379912409 665131424 829839131 881019434 386507957 674574832 352098746 516718370 25867359 512753364 424957508 847845125 243145340 74272598 706388440 926082942 882437 244384437 134785198 860515656 338122865 858293944 910618942 184107401 85668448 755965085 206495499 946987689 507163676 310958456 368211392 717673418 312711638 96454749 498484470 381319257 726785578 536623832 403041378 171813419 529340440 396824543 358546169 677805703 187979318 859596414 78581159 169234959 559577417 886284643 779696942 227443260 738028358 72074208 565196211 785810347 297949584 1039655180 231091223 164307746 831666744 1023712132 355369251 558751934 516956486 583111688 233619636 543159758 291475603 597900197 555765563 1071552550 570952629 973612011 13282990 326760310 356843471 191521886 518979765 194819154 852009677 889739016 734633269 278554880 780745769 388344769 456985947 958244821 318258294 1065473382 153830890 657813083 481967133 33223195 183134687 131566431 864569654 359856993 653353247 881910928 1025244946 115599624 336363872 1019672607 196366986 1056797336 345044487 333724620 398710740 24199905 837881226 505797368 850888156 443171866 55012711 988546024 196831518 1031636450 129069682 5814605 282566067 984682044 715074338 724610759 883633687 1001881611 196057383 867891048 54608376 444428249 798670518 413424751 863010567 387230218 878261217 369614137 721490140 52373912 229719109 848316584 413640142 404413791 43959843 812062852 931323153 15104293 193253053 34003471 586067074 168577818 520075285 681032381 189745009 635681399 865734925 738656425 309804956 57928388 385534613 1002131973 620480127 985693023 651652338 819810178 967986384 24478977 13587717 378354115 249005528 58403214 969242411 360316694 233027086 420582982 563350036 204505029 1000257554 13388414 526737737 87827872 491764677 547796333 1057819518 652039803 877123390 48248607 290594211 593635897 247996065 643307823 978296493 399581119 563582589 20397024 606400334 675139903 577553175 771377679 728647283 976945591 173424844 507478581 536412652 430055283 1064169450 505477676 154654527 1030941860 341750507 916456426 773759083 786842582 1028205746 517448509 76504933 255920533 46476986 595421907 1001197236 841570752 396330585 349415255 228447582 415700620 240194903 774081253 526642690 598965452 709665215 323699380 230317423 917222988 311650635 185674999 105262722 259995097 318994808 352701194 417571337 904826677 93625041 577411493 762376773 3510084 1035339522 929105341 250400358 431171375 110520493 941267274 468435336 171247925 71078151 282282856 399272334 380574312 940097436 480689558 367447696 815439408 6557834 141732979 464796859 704345136 770447927 866035854 692636768 479089059 8322936 339031859 1069369724 659848713 648180934 701707753 229653316 623457533 746019631 287716033 467931768 102456360 898775736 996645851 259717248 998889458 582928446 610613126 911926832 296573380 1057262017 47066500 796470372 426507337 392870068 298444187 461722100 336868942 822987274 375656506 995206892 785282760 103979782 699946708 742859467 629015429 776669220 1041060080 980573504 625226828 808889497 712746509 723999526 881152085 825848260 961399013 358676339 530396186 28361604 468599626 447914862 660034172 92227172 122686468 767937381 114324485 921649095 116038532 121966415 263828583 455299214 212368387 550888009 55971926 7042459 260731142 164809166 49638797 424017847 527875248 471848799 592198314 850130861 712833143 900701015 112887581 396831984 9248347 346594311 18216692 408678421 1015313781 117141029 494617615 380476120 405858322 636050200 996833470 946124263 252740108 1054013499 62887299 601691991 216882837 337110783 620984287 1040188157 833704687 359472676 969892130 231877156 956628312 967221799 780152122 910074418 960130484 973075959 22509642 146101245 847860376 659599570 133841868 634695106 93236302 682425847 514710864 4284390 375197703 336432765 158022927 464223730 22693307 232802522 441726161 931903480 926606702 244268078 921488716 397489038 41047473 661943363 848623063 873513962 436272353 973601420 330405493 785750655 856709754 702619462 54493632 596507520 173671029 3799567 349822377 887688012 119457172 754171594 1069313731 525415564 344189693 523974278 85735328 741309841 594644974 684575078 409703203 553991714 313285724 636364020 701323600 993214264 1042188167 855697865 373270673 330134367 165054895 252394812 740049824 710704250 258201109 652893632 173363022 680392148 489104955 214119334 1035176928 1047022025 527673521 293986678 639414770 168573494 326582972 18329603 194122488 606382946 994561677 621948462 821883744 175162041 241551569 488233123 380696506 930773653 808625919 659237113 881001553 646313760 337114729 7150530 698912934 852509452 94920697 141471022 849746592 265724253 721727268 40259342 731992226 247876811 724652056 194526437 259625827 1048938820 660710401 715115483 745652159 492263307 1027103818 345292183 818297338 739525383 60211089 790018199 785736950 229305767 917626807 437180731 710127363 561361683 255792534 803942306 958208081 216678427 461999889 49378444 916081742 289363317 569831653 991293987 518466256 512792408 15787659 931701596 140523930 413881621 521854754 146159981 955770160 1061083691 324955439 947620657 800991580 338609583 330470593 678284405 30551029 1008144136 871278780 148123612 149809637 1039558227 437307675 366236670 75028152 695840251 299051821 884039756 674037531 521364921 620882088 374375307 625648121 684454046 100007741 547480239 999885141 586596955 527179700 910054092 968157758 124615275 1025869780 324699194 677446244 201951854 41656916 35713773 987921169 185245523 483861692 850625618 629685512 1038222402 248522924 481920969 627108102 560816346 537300926 190967994 794554671 598763143 858159643 103246291 410703987 855943856 683183260 629725789 946866016 540959294 952653844 504726788 228415200 921485211 238787353 489009129 467491592 109685783 398968265 597129795 854161 787808576 711665560 6703278 758001844 120537554 66001462 902035218 1067119765 1034146381 265859675 525620844 126543532 33973213 566670966 822750386 319866405 107818902 88172261 577976147 895837440 813705020 952130345 939490821 639093428 859754552 86396707 317465825 313766172 5702111 849623392 209769326 993898328 449847107 341254163 775583595 305898596 207916112 728446629 940826339 287657836 766396102 56161225 929569321 221614025 628291081 954892830 117520702 98130918 474646213 641518691 272879748 28587176 162789285 557031086 88168081 305099325 539705038 954138426 203074632 469067972 179802464 636444512 354822986 320148013 406707063 144054516 633364670 189655688 584881484 879293180 832684749 102596142 830066807 601679386 625369574 862050026 552588749 80958699 423327482 753696147 173551534 751156929 123427405 756824811 967125599 301692209 976789780 1026869604 1052521655 688323512 420371808 651924765 496952403 47666222 292586217 105230584 500225854 75854754 410473261 758318636 260938814 966432250 475311864 131673125 692960201 527688700 1009977928 468351227 128850844 140932466 1937544 810507460 1065226344 603304639 404406886 78003054 26611910 1019141853 978476280 211407990 534640442 741554136 886137166 286437260 605765201 465332463 1000796299 383751260 297659931 354835177 32888121 836642866 131897024 174203153 1042230920 723691998 908007156 689257564 972953020 367605512 491095059 574502972 832070198 877969791 54894151 131308939 111831881 815069507 219237507 313006559 1037329950 726107492 774646819 915469641 797056882 987227072 693170132 667592749 1061827892 390948555 707867040 750413556 93399876 937316924 1073675081 445681847 77570952 6519769 774979764 487384705 1058484783 972729285 231991250 92221915 977416148 562470893 1071360144 335437986 614437312 655700515 18597288 57763351 865734720 714221932 183138393 823587745 781662634 426975823 345924143 878696782 667939609 941434857 939187224 199579001 387217691 704011598 947012658 603362994 510482299 316844524 277738117 838000210 994156012 237861740 493160574 168647244 239703631 559371511 513585476 498580095 467354061 1049483962 848000070 683075146 36257985 881148217 948431559 927484541 1002937074 295136624 15447932 912656832 665492773 623636022 215119986 202358410 287396799 797460531 316050035 442098770 62762970 987716922 782003602 408888691 857585240 963369297 309950926 930765646 1042129412 198235616 324024403 84552297 946525781 746984576 188090123 20841508 1021251593 321005092 576161272 617263513 439523791 245596008 791841506 86636127 419624471 398507927 288305379 315819220 612591513 623659965 287199173 698586208 664935186 815177880 789646760 748172449 246477112 266380258 906145270 625460603 888432344 203900080 398281180 44127100 691697547 350007624 83151678 435297654 1067331302 856054589 989573212 875927072 577419005 612237679 748954274 1048698711 795174444 111684913 562523860 1038138711 414431767 770143404 930514227 536620231 272048253 973677106 348357587 100026355 119320363 730385773 44426768 106726937 920095157 510096556 160188851 1065674014 344711012 308151336 914496924 638665771 288101166 111639780 212919063 485433315 404776406 10046098 562246456 386708591 818447731 96744223 193854245 158101517 755783565 599004087 511761322 37272849 466601864 256889225 765211231 914735798 988550639 375156763 707680616 8249159 877206526 405810812 122923936 8777505 804440134 833086055 462959135 4556765 43606799 1159327 767377572 928949308 511994747 452509636 961126847 1054068923 835316020 597176631 249624178 623001785 1019808831 795572513 722096026 368457011 999793018 657103043 145548189 64738532 750825858 927933587 849359399 520520526 169971113 664767847 497719179 1005223429 635993992 357594625 422373776 583505006 467678402 54361083 727776489 446289585 187697776 346419309 248441410 652808910 323496909 178266379 357762193 166545712 970188230 948905718 715680317 1044321470 219874269 340577816 279759084 627764752 308695948 961628844 418728504 1048335768 522375756 821642292 550546131 967802352 359659823 884908785 966188516 589813001 1021859043 729243549 904842333 475751508 872620277 978533837 151575707 293052035 957648767 179472381 549046705 477108488 823192565 824316471 212348720 786354324 258730833 504267635 725937416 260177649 950326813 814830845 929586918 615265219 1001538336 979962556 523190002 312172006 360528196 27049889 880207933 756418682 708980199 854744015 934366660 340183285 789459310 555863391 604695518 971351834 987284668 901817389 715075751 567387650 72425660 703889047 242456203 139799060 1051884348 1034570163 918050177 852451870 85384740 678285885 929409748 1007820158 845432577 234882664 560132026 111516878 81924019 639958678 767685558 649908671 156594375 853533015 340477341 343287342 437050578 1063297070 365640016 100662837 1001145887 194018451 521144693 744010216 936135596 633103597 577928124 473016486 769111039 531285789 249784990 230264849 826738691 338155381 824069204 789694450 698657562 606290107 441300722 216156026 68119312 592933878 1002228479 440259988 818582393 846567952 245824442 822037126 287731587 1029858014 211065770 208644741 510408926 166227726 489493172 942128317 685661424 49839129 696894851 162577579 1064297023 843854626 252083513 505377710 538415474 76524497 702056018 455697839 763975246 1059013960 21059025 344563100 770959346 307823073 60798836 370517677 495389173 730467948 939512057 136797718 709210218 479640801 489582063 983271979 540575358 568484958 468122684 784030352 156063886 873566749 107609084 848027116 964043745 481601749 864263075 668811611 184681907 1006873144 878066710 1015451936 248274653 793996803 516040393 629583483 875253637 460165944 378386286 874260408 404225930 1040656890 194328999 302500248 330943197 924245282 395293582 320859250 814636606 1050662460 154554112 752299810 480016767 973206091 282661536 325256534 872328511 639467589 883180331 623116482 1061359063 12662304 3107390 444653826 464148238 51590371 611704374 450319083 470780806 955705347 945483077 320465671 37415318 718410095 351999326 656562915 924164255 816324446 486699054 1050171477 384126139 145384611 807260218 330796301 798438392 613218734 630251548 492310694 569458264 236932930 379609792 887740897 461947156 378100463 373356948 939025032 692440768 942140768 423873238 727367257 21919652 1052030564 157866645 735014644 668274626 631797033 570082824 617231479 774785822 831757982 721551345 839263516 732137649 369130093 96658708 863158625 970615147 387294086 906395513 437924792 1060161817 417208598 476224588 1036378615 540367397 969575964 359419276 221404477 463651754 400099153 436905977 321793589 440453347 215505593 774478757 358451327 825369146 96109032 539379867 350161083 766406152 861150069 825850858 170413578 1014636067 291304192 484911822 68953159 1023665423 135226869 864486580 886219374 226737299 1029596496 344006359 664058322 827472833 710297660 921306730 321452472 56245494 924015221 254686715 343839746 766333356 745864290 112359992 363649168 573342224 497460889 840076784 1051134992 632715510 305152682 1007475119 13659967 139861175 820193414 131779862 385276838 673146790 886150318 222059110 273379042 726451733 307302746 865504739 493463395 97433811 486434801 551780920 999722173 1071863648 163040521 381306315 1031075316 910632944 1067012699 835224318 263297835 848707709 699666608 618799155 33948760 108764449 718004152 50158225 1698043 458266201 380000173 961025935 996100994 990075557 138172353 924923623 110694405 280230497 505178992 375404581 219367101 454820848 946324296 604621355 408388913 333069457 968221251 602983497 733042992 729615138 345169486 1062580669 163760203 709111359 1006575047 830730788 72298308 171705144 539724957 788136888 821094541 767741089 971843204 71898304 306879121 98111171 748452387 542244770 761479024 337612932 891907800 133363620 166797705 932967590 865591638 1069629651 554006019 714763616 390802007 144984503 1058293643 562654578 400315349 459812489 690399107 348452162 537893218 601899654 689731389 264094795 863646093 283203667 153104571 329651448 522325572 710701630 843659006 745743142 293908731 19219835 865760749 838890415 815727330 85978635 897119961 212358321 707917098 619427021 936798375 920302705 918099560 609431588 659063819 837080983 90475831 515388149 175584888 137275295 560961915 525271573 228699342 955385254 850767740 473017120 248918849 431509033 4915487 1070102490 952115967 1044068521 1034715990 1008314805 387174300 539862472 180614601 40107999 421837324 848017821 975973232 357074373 462103889 898286579 456414794 386135570 731691213 346364920 540602249 879502484 1058183099 55366588 868671286 541102583 1042682769 575580263 18771113 43151339 942615885 119307703 793990292 405015811 677492486 498614897 1015869588 898655694 475633094 306391205 854662864 95082291 151870327 567392533 437704262 142268994 494437727 143197759 205509532 53885902 494385955 895569606 179633013 805083479 847861132 632572412 512457449 514828642 882368313 788602889 988280386 566682072 599028846 853243562 997954307 709398410 578584112 901906296 968722137 894458611 954417637 74854263 506445277 418752385 386350177 140414282 806043984 1037631272 983816855 117173880 522030959 55087765 715237077 868795579 1048078041 618788587 1055972163 632450139 548366510 484804583 457394221 148179826 718752703 960154896 984200449 548652978 832463635 210123639 852728679 614637515 1057410063 392377972 376653741 645824641 965896496 578353154 602969991 489148335 16678855 964233411 942235144 163454420 875272107 252369123 665873459 300634291 540006665 478276630 170615620 105655091 580162709 976699859 210903588 765517057 399384619 632129916 366381500 1070060259 382132951 853908468 288525934 488253781 713447232 868880753 466559250 606943162 524241733 417588300 934925262 20173668 197185209 1052548051 986966048 279153089 816208519 106754619 35164021 356552259 217576228 908107809 852434401 210776040 501402843 169815685 45418552 445813052 1046095301 622648181 120713929 421770701 411244038 919635466 77881761 680185399 552842323 11401797 67658984 908376389 414235552 1026515834 10002139 766869023 489017753 750634242 1067462231 761446968 943691966 830795956 110172075 1022762224 831180693 188022313 1092393 777843296 385673101 227457662 170136576 425252393 124672405 94867536 362522912 590440168 673764930 471645995 552923910 676774774 645126325 52377865 560344733 1014958389 286842293 1054779999 175195003 648693923 843755392 713512459 315366837 558688525 847257320 700048662 588512201 102877745 1022155588 931868154 896229521 894031700 534209104 408651835 80989610 508991979 649112308 177657653 344968717 356243710 333607448 223971090 589205757 353056750 442956099 41097214 188483153 610961324 102567168 59489656 987400193 695229166 998973403 468991577 400861825 972499016 204104671 1018270678 125064632 580810869 865695983 419063876 686170768 463135039 382252552 828565521 799631205 736938333 172983170 25198103 196610502 363168769 832992661 541111445 944259637 184215809 1053299865 722327525 459177601 539288588 523668576 350372385 1033137994 543477902 744178542 532532796 1060991654 315309626 411688980 912475606 419102332 647764615 427456959 18868700 815831523 990429745 19913250 992495915 654827353 276886071 509032551 321928651 900932172 1030625033 629565608 211242407 1180481 330766771 260117890 858237161 588541720 260144658 692885759 212194458 652838949 501512078 1021225372 10218057 405884803 686580963 123916651 706901903 168892257 421591539 662788437 737662433 848044840 423576018 83993261 71247268 924910694 1058809371 613759883 458236123 578769180 758829313 318754851 835878064 264686714 470567662 830920444 679071305 625436842 891368067 295578906 416698409 732725480 212117695 84521166 198710427 902895290 141539234 624973501 973076962 807100803 565601890 427574287 1021406242 333886604 369431887 662899813 731432030 214169193 979846661 835064798 184703474 531239270 266914201 728707426 883514462 1000752270 208503742 707355315 362717192 202991552 173085224 66055579 495811852 218832538 661424384 347478605 299933216 532099739 973905173 874701954 992425766 135453603 221840551 47579152 708314778 805556163 14494943 535168353 848124756 214276812 722130553 790454207 99749754 509127116 440467376 1038813647 541675016 728023836 695866165 88551206 578834312 51921677 858625643 654992316 110200731 563246133 456077309 447728173 535534540 886430950 163458475 535533035 479591018 727847142 838294664 626745949 138573461 403378125 921816091 847357106 468970654 480706565 858364462 238172401 912934106 503869909 167283846 1000700051 805063660 397701168 751358446 115181212 613941598 390494107 712619510 905591801 211708449 667588496 673083867 654962560 65737395 408901730 847858438 460768311 82431168 452465422 905059445 123319440 408805509 382367745 132061800 175640446 687085957 836631925 534327668 993849833 1040463991 736618022 747104346 972152065 294470930 705073450 427616842 175246783 75344115 335787431 847071060 295843651 682065411 535817100 81427251 279150098 1012838336 566632221 404404724 939980046 677687249 748225380 922239920 41988178 504655631 59543274 631141487 979447929 863947855 16529772 470330110 584152325 275316574 760340162 114880271 71821406 589562943 481489527 915023315 501612116 339840248 172646960 514545737 673811094 229820868 11901621 119875687 975153640 199530291 216181164 37346713 394048124 98620764 993212342 861087775 662120263 854204642 156853781 392173228 749841188 954600862 888692847 490474259 704577678 883821727 362194044 540492157 1070707427 323905973 645439966 825389433 941978047 746298696 929704152 302827759 1035796680 411383280 908463110 641502916 87360955 1066542437 785155344 48105006 272283087 887768621 480416402 732949391 490787298 317992075 351611810 14171032 826313410 1071242465 962460499 557848949 580192218 993216448 118722601 989511975 965150580 33659567 226163661 405393489 805161821 790327088 576498015 365309186 10510127 555540133 223579206 747329558 971789684 291549283 271650818 83653532 661160318 73752804 982055313 489985104 285306996 645725246 177991224 235241802 888439563 764411804 142805788 298796589 1008030510 311154378 487592025 687622946 820248758 258419298 576031004 732718865 787933154 175960415 761898902 62976041 113304482 618089806 1017412951 767121845 559051548 220735177 690603769 682889899 216863285 209858624 43185261 999078692 205495401 579184627 940245086 732668175 422548379 934383598 815514995 573213107 117186721 158512440 95233313 1066682206 588879448 902607781 966328753 28333054 90112944 759168250 1053180176 68085716 346345954 470738777 83223826 830104456 366846780 643534335 915776674 620428060 580627124 578591851 41317818 897883678 23849532 500788804 457953414 69972639 932732816 447086628 1033065228 527832608 45412292 933648220 144195578 483958842 855842937 817978400 255385134 244500317 931338868 348414899 88435066 320811871 257234446 846367640 735841719 293855986 225276888 1025729787 655511584 178707275 1031639683 416449006 623107665 1000375291 306580092 289518058 916664969 591177615 467380346 220342835 440770014 540199071 342386076 722565798 938279765 19965457 1007936819 650959153 717437558 67350657 42830518 268225201 839086543 984214860 563522717 503175670 779292643 888509499 1064717651 861826035 42712523 612229787 709553897 91090448 374393202 180669831 650200827 912162825 284177013 837614738 555466546 90762961 594745464 616921147 425352379 20015410 563004252 822100679 600743558 709075754 614388218 990344991 35639946 327301574 126113387 486084369 268458663 340254927 199720363 116774614 245251968 520194765 229554024 704843621 568890523 827081772 960643190 22695170 274808712 58744018 629892662 465859491 32332637 344848525 426450223 514454284 1030272401 323566784 1013828298 557844401 1063409406 119549996 179785371 366062976 955980771 451153182 876801365 41205841 472097265 901722333 765752913 40105649 971028674 41491717 501836440 871490233 710095043 979155063 132655432 29635186 620294602 66200468 647644824 341540849 1041479402 428296190 1004446655 261271858 9403208 473856259 156924565 198159835 64704126 268892967 1071494389 574048902 294811533 177825436 256714172 664954075 1023997317 410031020 997976897 570791663 975161390 299323079 731034624 78828288 992180284 603664020 229223393 137498591 552727220 980231183 87565911 273799348 571142697 144280532 956094223 97843227 157864643 553670355 661111365 160934948 416612885 808234547 568422017 655276535 460305776 798876138 275859581 152823410 666311841 847944728 799289613 620833047 450441571 107299222 276929979 460456336 872775572 323260109 107029967 353192955 915847442 626887310 450383670 953786857 73328273 438242346 419221278 44452064 786290866 277560726 686288047 594459345 456994149 456844576 153772397 394307089 222374794 118953941 754269372 979498957 590084889 120281974 638203770 940842338 365330097 677347503 781158061 198048394 495999039 767630600 787278831 588270347 834305625 797740761 1035840265 466869987 100879645 171749298 947414160 420584190 836706216 453481237 270418832 285832003 617907197 658196288 927960710 999805480 730662588 871922296 480732764 508938236 712814907 564494 484910384 948084499 1001614227 309033244 933968380 864594669 344820944 208616860 527068311 26434157 527134627 510921949 696889363 1059358594 955536987 959203901 425360767 973858640 265851444 193691001 525324340 838397825 84949859 249271403 696506591 4978887 752655434 803677114 343901847 153141001 805815229 102767003 980657731 335129583 673020991 918036081 664176874 991744943 1022800410 811637969 169248220 89323070 390055366 134425192 706974229 52334074 585409214 297252235 885625040 813160238 291975415 400361382 928917731 152401025 50271778 969742078 856886940 852719595 556676125 265553597 255386588 35333503 514465787 348006432 1048054863 146717613 64473102 425237909 896309525 343989337 803317639 660139298 730757792 215498217 995490257 887203251 723648363 557414400 303892953 1019744341 327832585 102007109 482091719 433456071 678978100 620840765 574157136 582955724 931329638 1017045801 608172596 963727136 63320898 878323211 524348731 768559066 513041415 142253330 1041723116 388036742 354071388 49551577 760305159 255300188 530421186 606485584 390416292 575174161 1006913310 635365953 125125826 214684864 867999047 721693711 478516642 981738578 87521088 927464733 614024687 708466654 1005194516 1008661983 17691743 523797885 404605048 1025897468 103280234 1072779103 225098534 885801928 45739647 936301603 1007807946 483685092 1006933452 976255144 240617324 72695226 938967555 280452899 866010180 804346699 629005030 591966417 392607152 1023152855 695252423 387421454 828608150 809359822 619836024 845104404 562474584 595691111 1060187028 432425581 1019942581 303392519 104166339 899462386 369446533 1030344952 321757425 807022075 372509172 1029250462 399452549 566293621 276164911 638810868 679909889 1047098810 565507635 307599171 878687069 1017539834 716763869 278361552 945400493 384781202 811504622 888000537 802538156 480385540 909377553 27977811 508390998 840504584 884663408 206620796 974285370 87148124 357689184 103936414 859492521 628321225 511886936 950056548 265518500 146147478 323798992 621964476 629854412 886600769 637287733 142320604 888720707 827913785 893572199 279021258 443459261 526450818 646685587 902190363 371052727 961992179 1039588475 21183379 1072660224 367987578 359862343 866040522 843115276 439409218 502433531 561364003 963021445 667890019 445392540 748172540 537107343 588781613 451681694 152581235 145222218 512711855 455988785 397367230 610670687 964165472 447158533 859547917 1040969331 821383724 612744778 834668083 670425126 276147205 997120115 1036179800 1059493944 789630568 825384995 31174781 943199132 580772343 170501845 1014141320 176037702 931445698 724311394 410984126 1048430241 874986868 146231805 788953471 212389352 257452908 872386227 985171972 994796290 568578882 1026560948 97700170 924161121 83956659 427418915 509857508 51123979 626171343 235956608 804649529 784594756 749885787 454762012 187363781 332344656 1028448689 1015389816 657015156 786467105 285905925 1049815752 284618830 456366936 573156605 401926649 674450978 368161713 906901300 183073836 218501782 148066814 375082718 181709603 704176599 907939501 185717560 802131824 101882956 990122399 137175194 150913676 973031595 70453727 423885259 578355109 30395393 724704221 324973770 952755826 659687242 748696757 315337726 362940664 168287149 344140483 567555323 901892283 121992701 1019644418 851598323 460856715 699943008 716015701 922099423 124215424 35723089 462783382 488753579 591320592 519315129 447107240 41397222 157090906 316337086 310645352 4974208 425659743 1011865733 277923766 203912364 437976319 766838355 650085262 419808122 359259390 476142820 530637057 573392268 549137748 675364284 632011910 124414483 233673167 12695531 443139803 1072694122 467137673 65655302 121298139 462498686 76945582 291771305 940624277 629930079 566643567 170104319 34999517 328258759 398303218 460496559 711029744 231255745 746898015 866919939 10986724 628211396 945814609 31295779 563050740 548638663 280898267 445590543 630043509 893718022 598842130 194886424 470827748 104436018 166391509 676770108 423682424 697907877 9171060 297241674 194339907 342736702 953012728 431559425 121028620 242571761 248392714 707316299 377201567 117177879 891033428 822041058 229336171 946528377 408056392 317789650 215151778 408925166 240984955 9538412 245140425 356658100 973143753 273050753 420499991 432598855 251894483 7446340 154421920 787701327 982975943 790262511 135976427 400347285 93959095 8934789 923705242 1019352402 805379527 242663598 450250851 1060267751 879755700 270540210 582844414 429403454 468868241 768205974 668787594 544348989 858088862 520635209 112063393 205437407 1004145398 867041947 513259878 1025835368 162097658 457817477 67532250 128842084 1005680797 71433953 337258616 1068045970 484980419 879626330 543787563 261554837 290259344 314198670 676515645 613299638 532171910 691441866 1059552944 274525090 229490477 154390388 858803791 250134312 175166279 138616464 517536600 179269689 35326286 202359005 278396518 463094084 362303482 881571215 551490448 1029092716 497030262 174314359 902419681 1054866595 623438885 482439586 38464239 223660510 608070058 299418199 316846432 385592466 400308915 393983722 514828333 333509008 986310362 428712382 447242366 303086697 884841017 1051621819 1003547644 748007254 554943425 713024803 321881542 516569561 408862357 717718813 1048208799 776704260 285210866 531488761 227487480 195235918 552481288 376543428 707120416 489296437 373269771 683100329 462609636 439128360 48584254 395560859 167750713 342784743 481365714 18134504 742095710 887460087 985107115 132497645 287379104 965003448 529428887 149941212 391831994 415917143 27363117 215928643 348517652 444722548 852069357 163384900 173406986 901179835 23867427 923552985 779859785 1032247518 56487792 353427822 786410243 950981809 430922491 971511880 339077954 478446339 422238305 418618360 490283154 726324935 661005023 25715942 470005837 972852711 657287919 180785860 1002945028 949739660 1072143747 821269743 199707907 1067661363 1073313614 256236107 164153270 653822077 234743304 410763430 339194013 411857772 140036440 251073449 428487389 210382712 224503316 156968369 246313458 857219859 1051874996 848200264 252472670 929963525 913781247 58285124 652462418 549241617 206148554 642019173 870597160 40711539 70431802 92099618 696460575 883064492 271525717 814581472 651465223 81862584 326820797 131168348 448058474 998911251 846787318 438701881 839490695 730212318 287627555 122948199 423982343 769908410 227609972 387400677 444664111 778590713 554323300 339963464 337933457 786666962 68975053 739317494 857107048 713454071 850496182 616144179 120769300 422417551 47573849 279862037 711279950 1054829691 822451437 115440641 228413473 987679242 530163453 349375294 663301905 795490750 866248210 41080621 92127326 586933966 213332181 509919620 53208244 476662395 209552948 355932537 983303474 745988881 366054755 75279229 245307842 336931279 716877133 659557674 179147051 804796745 413632402 15075567 8874646 223076400 463614262 657367893 392268421 107837313 1021946220 82844306 721083709 298089367 322432991 297481425 76205612 920749447 966267357 911351570 544495531 266778158 782255845 390690972 129957761 112392364 397790083 517887084 874735324 871516599 190123405 946594767 559341362 1035704575 886791659 804774563 422525162 668013192 945647190 1045780254 650178775 902329872 45907924 684126449 542881124 156901383 214256967 970111645 129982970 894978676 528917201 312956699 787467339 67276541 6271428 308437504 555206851 250173857 810271016 671497722 846414046 520324971 1008015748 6971229 681135237 976081998 562306103 1058796529 146268155 597267797 991298528 29130841 782027460 357346867 967019369 831789314 451940258 363507594 107129514 297122434 144115603 219345654 644839764 530266208 896820050 338128073 202393080 308020633 403159745 315968816 985136728 174334582 586407903 413704590 78745370 704395838 888397189 201597274 608641891 598834114 67053835 1011056374 622995691 822821055 697490306 933767391 617813221 532346396 669699742 96613356 497679256 242664054 199641173 746507779 797118001 254498649 14190994 134621334 330782215 645346977 1055172921 778548802 206213170 770602027 58137007 563601961 356883551 748783758 220830186 541004283 579788630 195140472 989002346 970596949 149621278 374428405 274195501 642510032 300419635 896960403 520609001 490150026 610843965 258841349 383633682 87244858 391635285 38442067 388971455 786384718 1038599203 878604517 289187203 15664582 292568514 328189333 971394418 678850068 140354012 91495138 468145691 505800144 457038431 868408410 434382792 781249576 754426582 865390164 204815163 894440570 1018494877 885179988 1047750385 741405074 287603242 1028638396 578309865 615852240 704848161 369351755 1065811293 818733943 648893437 14378307 944584102 745004586 630648904 703101211 762347756 464780137 1031677317 17353489 300215422 432979135 570270992 136389455 123380030 471519522 974068384 647477507 118793494 451557714 623134935 381749628 189113841 470529637 114779296 988343707 380658385 999112597 296362101 101362709 867362433 224691331 829893554 857538225 339588101 417468750 891003781 977808612 209060960 74913766 1028848411 96102773 32978388 499435780 1073270811 946250529 568311179 358808529 81830105 600992357 419219492 982321926 21695013 889144549 592464202 601819672 1028480571 1045341943 612662395 457282209 134375019 439919709 32101757 834192046 714068749 250315829 934250913 924385284 606436140 773082193 840376217 279522884 650585927 941180942 11143671 1060503359 2424600 89233794 539588526 907668990 1031823128 780521099 312536069 1026996166 809044960 771337318 479991974 618950124 140857351 657271392 646310275 359658274 607893589 263094446 469976015 269098038 310599636 73329329 167382968 357649985 446957290 818861086 937089085 807430750 1062449584 60180935 883501388 895284788 165843619 882778066 674903816 979211900 178974315 857151701 366053905 32158791 537358568 74026331 1071755235 72095614 100310789 393073245 853394408 912908349 209639274 862826181 220220692 196747740 517002155 971602025 680870804 939213164 303896016 155250006 1047570898 10257277 47665772 181097719 138344551 821291561 100001926 495507378 94712503 98150766 650156458 727813717 1025909332 606505767 702989627 832903709 332261048 374812003 306485189 1059860795 648480326 315823437 455325490 1048409936 440937118 763706117 282950673 289687559 271782077 262501885 725812684 568442264 354252890 141665559 544440240 454924551 848710072 325564649 376694991 391027962 65052048 324314420 626640706 426922239 749644122 407315537 810260057 923638690 1042078511 852462131 1014553692 506552016 200742625 206069718 266530290 1051687816 858210094 269881583 502400348 64530910 613887407 946871493 795750050 510126428 204503076 138819547 367014817 764795588 946006429 618179065 302419118 248188028 896654215 438582258 582436192 570009496 1069603926 985616406 386882634 956316023 872392675 678347635 346017432 330039691 164317163 1073342399 964565354 270552032 599634846 541233279 69503490 388826957 1036745870 664371505 342702636 577365689 84832824 506573927 1045885175 951413585 872301552 438705714 92086928 333312179 458679888 255170623 458533362 398835790 797304988 356945798 348403210 632389854 373135750 447473018 13790876 315888244 398864346 253157487 124148095 425773452 964607681 292486337 1068537090 1047678863 494806944 310336066 883532158 871559482 560644250 900214059 427001314 510632823 168853945 1053171194 1013094111 407724162 452841436 113348830 24713854 420203274 120556665 575311345 668867464 507098929 30096864 780948869 940635722 448246355 1059631132 821691682 185450188 63546661 1071356884 418886415 158363667 258212392 610310711 352257475 1067689989 102995328 463833274 538187827 546800860 380677617 584024579 238111687 848537208 225291934 625072391 165295732 894464040 144089015 772713381 412545095 460364567 261717791 44543282 376432069 227156514 145250699 270075913 469125180 509482283 42226460 804941758 297420411 425418492 310887285 574703993 828268928 285305489 860954890 865425871 495210504 554936882 589953382 713699061 812390186 180183325 975033165 201273236 117305525 1004720685 152058804 290675539 1035590461 586873990 493288052 256361129 440390681 884085076 936154165 878010053 793126386 91831349 235454239 947125002 27753447 861484742 987917150 975258749 998035749 863109783 907483451 409225862 492099460 70167726 147635779 71909570 843022760 327365330 1064635819 997491541 780114231 204764032 877474250 454930738 547470108 414568888 756079969 492178847 739021818 57875988 727294018 922511609 547132876 488383654 1045574864 908139297 716052624 351549028 1052089218 261553689 932550855 970932969 231906951 25615096 952073622 38876317 415736565 201827241 321613902 1044205069 219351758 743130739 573556347 466635011 1048489019 517862211 306057644 871418022 734373316 18842268 1047777498 671343709 283583485 1011557506 964708006 970853078 109211399 807243591 655305871 496733129 742260843 15189167 708012851 282088795 104241020 423061956 994590966 394377679 737728806 286872228 497892990 535922529 114688799 892623682 622070207 295274674 503189806 984763585 844838210 659988080 932348416 269101996 191944948 812066385 59501102 689381158 518408843 715005612 594331675 900238522 732338467 497643455 772494671 446650007 19907931 1021935129 679662205 880419642 666876435 311738587 198008925 813317274 377893742 472389463 383377490 322442206 950818818 155559632 128847177 23532153 191224281 598618873 589839919 265817238 1031679464 8202791 724118528 122744204 275553709 102957492 115507681 1045433298 145051581 460051033 821662019 774482915 318404509 440950419 23192126 380199805 825583424 739773366 442224206 244220003 523317176 350651436 234357465 1041856529 945221129 62053153 15785294 717489632 843385694 394923287 1067565321 121830388 653372801 277824111 1005366570 60463024 109569764 278594435 46288061 456093740 67760863 1062804056 240800263 596020481 79950271 988110011 317481321 1048526705 126190327 537694220 852684894 545090800 238904433 872630012 251428168 22614431 283371496 538226295 697297174 912774185 953756434 256122918 589009665 504682071 669002618 752798428 286651008 89314069 769449580 472213007 637563191 308485848 648853204 642296577 687596239 64940106 214004800 487151885 870992579 735513662 108102948 487985166 296353558 574476090 842106128 1024060805 669556029 985870552 25929207 596652226 1002440073 761426687 329049280 755919945 745718914 853130947 1048392736 24660194 88766488 164281436 297751535 952738398 584531006 240946823 928495004 907884440 747502923 195599301 256514548 542852821 646456515 1060146869 824383808 572865050 248782170 901799962 357216229 97363747 122503705 764182104 889471214 151528173 1053280719 1071822268 192191725 62114238 653940158 782712235 247605986 732370499 126373387 682802601 772798227 601147428 867156071 1015979884 786586542 709978522 632983260 123540571 859813548 180054579 617211514 11693921 880696210 1020142919 84070608 789793441 779591494 38004659 797220949 512975088 1040810873 917105658 838603172 389178869 538676581 1030467660 666812849 219980246 826755942 58136113 363155379 1013782027 844656444 494723448 962827006 309503608 727988571 1061899620 315258025 253451836 317411992 495950145 1045458416 867310066 611624872 814210626 118323174 44580455 202238531 665269464 842136616 780669480 817377654 822076094 780308282 206399504 1003321444 508534233 935369587 555717084 522669177 822344185 875819574 687827565 507866649 186169478 395040095 1025378851 902568408 184470037 502671328 1007329800 534825492 114497734 745698547 152671569 176277799 104292624 131595838 568403404 100030500 167503353 900306477 1058616107 359729060 281667905 291488578 498519957 985979458 290734975 72933594 1031068266 218641195 344452994 430942183 215270875 899126437 287503353 625464283 254118145 577582731 170630932 288438060 88365808 85932129 797851216 329476865 193140457 664308410 965757653 778723342 824197689 999192044 995795870 121474634 103358676 991904266 217511513 875783496 416185223 687963310 345573968 701183382 536433480 136821148 50667507 245794764 1037630440 364486733 22905550 184385304 336819284 21486742 934951577 200041214 937026405 353304265 127845942 516691006 277731736 722812136 473497615 339867763 730873457 120280029 648697373 792385343 668141281 143289473 348130462 895349766 790118991 490244485 788534822 83237034 948306378 998813563 1005447022 880751561 405934788 663904914 776240222 415879820 1003225556 638770157 233834383 217663664 17986860 411917089 881004201 583453529 810291034 449481799 185547488 964208960 810573328 178379534 614339948 52637465 203817879 317084525 924428810 345177428 249785685 697681823 331662664 909608404 208605115 153116068 727358120 226876650 957026999 164502900 326143536 229055617 261136790 240569811 634596252 670894519 603502983 535418866 782364336 524092374 968401530 910408434 297900687 908850351 956310570 644531772 1042683493 464770679 1060653166 72211233 195355381 173797336 318281277 4023372 995878554 562950337 864655895 119082376 609809798 57248874 549530197 877467390 196760016 964592855 726253199 215629425 422612003 47542281 412140156 932348014 92843369 705383808 959496875 286215793 505808643 932677156 995035500 649915665 485463613 475575033 883656374 474387077 633711286 451233587 292688316 57493810 411949547 531070989 65375807 1031036874 260086594 205633540 488245884 842245541 731078254 905653596 683552844 871857177 176801481 606500977 374428495 688415339 826193037 700722845 605041374 25548357 274677777 776323578 209494829 248119792 46697549 308252743 836018040 434313292 449747534 894543523 774091708 225563541 590550759 643438325 671300823 269342886 976725034 701360196 475439088 1055136449 463177412 1974726 196693411 212382826 778031852 984860961 412155982 942663084 98285268 374525749 353145854 817001065 1058714998 196368161 700987145 68091129 866879976 345446370 1052737615 183366169 329397861 850612212 886280338 306045258 152694837 696310241 1023794857 703845738 574611997 119300330 899072889 293055664 611331890 778210687 19041209 906615693 275553352 743690495 228797211 752976435 889987965 706493673 439363047 258001801 615482226 872993884 445812666 247673901 494111350 449929973 873501249 569312070 460983011 895493088 14604803 754488674 1067782960 717171436 556429842 1047610561 959105608 276109248 21592639 85535677 412776086 739298829 432843911 555332053 594900354 567077506 607740848 516340120 912806009 772805563 979671416 810408958 360625747 521280245 196275088 8766421 402186675 605211178 271802572 279560151 1050341524 703430678 649683874 586929269 676165181 317271100 145799391 463735981 421811670 31505275 1067048174 24051415 822879934 756002333 976278492 407175912 285402512 427100144 368149423 741268528 564991173 12313123 680833129 1051464038 63017810 645734757 994930129 845154393 598728245 457840066 502012320 86561517 393434648 651061459 321350862 826343329 503442793 994231073 762266735 202764170 202290522 28255181 342417812 289553663 1007312476 813098536 190225384 421692269 1028144410 513753775 1035107993 503096520 429515190 756395281 455452738 205402891 533924159 698368710 272664081 865150313 587141033 741109953 840417255 64263214 407289706 55139707 762368947 1065851914 680363271 434758013 198625444 36599200 557249089 159011496 739434144 578193009 555354003 449629361 330890268 251759524 1036343953 1053510057 35471736 779488112 871869091 663900523 712349041 396863222 247650182 521200784 171338294 622376187 816974575 874160915 508506328 625050654 895274126 238955563 537036414 463822287 480411790 429688229 296025612 456696857 297223356 610298862 362637445 271728258 776625012 166952364 294564188 1053542680 292823582 949302646 812063085 6662153 574768824 192398246 722815909 831563658 873341114 461657383 424450460 975450307 118939074 504609925 628774292 442179688 114951352 975314913 874179315 239930988 419743109 791338469 1028740153 159444337 369221823 940645441 390221935 214323486 535604351 800329921 90336062 1040501831 1033788479 163343256 491645092 697401909 897452160 961805356 907118143 171602008 1047115201 779371435 83732682 964496175 415512219 211704943 394273766 590737786 798589179 770124571 311472739 87158674 247241596 645732206 482038578 511244970 279596700 348012016 71236310 721561550 225937531 1039668182 219757361 249225905 881895193 610047852 724715377 408507102 689582156 644524114 548201747 78440674 984289990 1071409342 468511351 897960921 694966092 473144066 731332805 869982599 927515051 88778025 739059590 362578031 727304498 928283526 839885761 386612668 905687777 750693055 499088014 1061413857 273019309 151617625 104316156 270572745 472783326 579543735 136479464 92063125 868486895 317874792 348119433 650739503 1029227662 34848272 388433030 401306608 826424342 931877732 4474257 1035579756 96951817 126511845 336935627 283479050 355060167 1010730653 532566912 520564438 901579948 219323666 70554482 292428028 981503574 631921613 220567618 795381602 1023530529 984094664 671335889 333242588 380231509 424373970 204745213 693331965 43180639 1025650566 232122320 61755955 1020904106 642550964 753262481 63890602 337521820 781292681 1022504120 400665890 244715345 741705708 188225849 310549297 299128878 582729288 277773457 675907482 472449332 364431210 1036999347 323078100 1063864336 209328413 262201726 655780118 788973748 760541096 310430188 714999923 504470157 249878744 187923535 21806299 128878118 807030373 36419798 363123526 857147746 419563007 89672702 709364154 77659299 140059140 309327896 915754642 366964032 88674101 507680283 45293640 186801710 746639457 495154290 838650312 528452016 677474905 78577492 209846773 277463336 218316096 718986977 159389842 400349591 1059570014 82766242 824186206 161198974 757495904 1116414 419599252 1014955572 45245250 716902212 1002266511 951136333 401179983 202536081 695628517 294234661 85420266 818011163 771916944 267815098 443765514 11746 87887394 938300609 125423261 407371410 684101079 405121998 907526760 13901603 267743460 643373835 886488114 790268314 541880144 794247014 466303787 3788830 948299435 87969420 897758234 24530546 575361845 600082766 464442424 870504361 955342466 669096559 934039740 476963743 67283083 229382060 300690185 1041146010 606388511 356601356 412112808 861269828 781929045 113798807 884491650 638086155 86247215 755504922 363267823 787554009 964145962 488224963 892207142 147342595 321849320 418588694 966007626 1067057540 478529270 113435460 626780766 623820787 982722773 945308484 633992982 85943626 594845936 833289167 216352584 383789797 291408054 237944827 866166633 242644895 938231111 952577171 418354707 949399843 873957029 439963759 177472171 836089973 515048981 823625283 822554142 988967744 468449462 581783328 960469401 112967452 202212590 384083828 1039136778 630461527 855371353 334519106 89389942 821352832 762634423 444600778 652119675 955340023 107001026 827396885 507631319 768895849 58079396 888585556 425525495 975666869 412242725 769766747 240566619 363836709 513350200 553344572 896414847 1047760789 889897762 145999518 834253392 649813384 509497633 1062250639 844469539 313970447 622908922 989710221 497736720 445497671 2299437 207275583 97766825 209945564 1031403686 1052422302 181333467 743151801 821217033 675868465 201251636 533167821 446452578 738566633 795907100 963392868 778156718 944510203 943561350 790109901 81504175 291845664 287986076 290607546 614610134 465613420 346481884 465078029 796194830 944674674 1046717842 1032327374 70740407 24557324 97504893 819973717 965213614 654021661 936228769 849134661 220148057 1040600944 86490508 885847481 1001030110 802144180 1036241569 31693944 977810414 899632663 32158616 189260361 23186098 404712168 234240878 402742057 1054061312 543230657 7158844 983789458 666608148 775350696 411458521 409394239 400785794 413475700 114236158 276487042 1048070774 264886296 736600257 800488526 674941188 468802622 30885203 944266887 542123103 1040322011 1004064659 234751265 465506974 488078336 17850745 624897707 597560066 451913846 872617215 499209045 894851837 885012156 209026987 959164744 63629307 447789039 547501936 489089662 696149657 951632608 722956364 367234891 1012902692 865833918 750969089 267344486 330730972 946380203 506136045 595138801 309405008 614251804 511637639 572131787 440498504 33150504 751103383 800804058 364172501 865996475 191369891 742745470 188601619 755579423 367954097 751526109 907438596 594304229 889020563 143197730 72721237 655015653 739406146 830140171 264086324 521712104 96451358 1002381015 131437189 5347785 780815119 50450079 76476773 664215495 840888858 14268447 677699419 422236250 803395271 148058074 983150014 873287700 446002139 270495506 420042441 180704481 457349890 62459117 842123708 802859558 938683832 987736446 521888706 930812189 1073298657 480268537 627111990 910055304 582423030 730935824 658306522 157105301 413861443 33281264 576113832 830797050 384749849 762874314 22766027 697905797 450641261 769253091 858710533 323031163 267938059 777277444 31771285 845698120 657294397 842768919 416094317 418809459 141436568 1039680219 223750324 791966839 481427150 838515301 395302665 690597126 309046034 882908618 569849864 276503187 558874519 64062874 1025063507 483203392 794425327 222819381 221479648 387741539 632273659 664999860 596106743 289826979 531227225 116696596 1002810763 933824668 693453638 156911058 1048182240 780093452 893629120 605484867 333460995 444958540 835813203 353958460 671991271 103490035 356561595 1002629789 483653270 374853678 357705655 539081720 440278442 18541782 476388855 258834234 559509556 528582739 1019368534 386556374 1063301072 455934589 873064342 997192564 385184747 797164643 611777911 747382818 822029002 349503562 788000867 653792945 1023755553 546648133 779441636 865553594 449802812 553734572 216209733 405613621 486887473 389246559 28273915 507163035 129515621 924966932 456502740 825105688 565544297 540468788 458458939 566451289 1057911440 636416880 698971512 557388460 810758317 500333816 443948646 472546681 4566790 1067286097 430371812 615589827 793693829 462601150 1051204763 774797020 530524941 744601555 563376467 460615640 195961331 744030585 1041303233 1023834035 926999293 877138038 547632435 151597372 51109483 727532820 1072388309 201912224 925709376 1008404384 133041284 612462559 236450039 127825684 142780618 367461368 907949430 444748557 486657178 632844511 145183821 59277148 669613790 491117068 709346481 801573915 897846641 748499481 213355628 309376389 871493759 413793409 713149480 498026003 403225985 169397135 828308687 916125386 665072829 669168305 342998086 224887248 993861701 1048285968 605918302 276256384 662891105 1014104838 899701873 911892888 848695820 737673251 864891702 416657070 292280344 344755643 563384078 827814526 87504154 266737364 766259397 440053460 953569724 96934158 896561516 566815077 473813666 256721373 760406200 181341713 799027513 284241948 720113329 285834341 534480666 988948659 558573080 328608403 625239125 575000902 909792592 736546145 1058549056 581894604 723952154 200738026 634155288 1032505637 329503989 831667946 1013404719 422082381 1046212791 385722719 672482214 370660633 36970396 646304739 578797340 153913717 496785397 355480061 866743529 511106862 494371678 594924228 1046420728 622273212 560869103 790898718 263005264 110835710 649202481 534017062 974644812 149509754 501126053 25352802 737455932 430634117 534044560 491057749 734669867 980738904 385726889 260911739 33699243 769046680 778213386 54919188 709015447 99487176 716563843 828641378 541440215 713367293 256882112 17071792 208477310 265468667 386476168 45533184 195440004 282800902 611481052 201065342 1067398978 165784674 886953522 712489230 419181431 121269792 1008908340 342771137 986557423 435634733 749005495 701750500 886789978 182545075 588175681 683374270 902121798 227634257 257347590 71806479 375803105 717774155 440900965 398373609 315440570 577139883 575270049 186843662 977287430 361635630 717730562 722654357 264311517 213396592 594598719 378925261 1064209033 294841484 627703469 404621307 1061607291 189384397 601824891 509568418 233560014 497967719 899180678 295802735 139977479 298683968 1073444545 187495243 811460295 950065098 710823427 146688323 979166879 113419792 47545629 908639100 826579992 339035736 753483416 274992401 878092648 660516947 562516652 120504744 947796362 817250078 968669686 202201759 480026167 485576517 88819540 66178259 818162062 510426814 401339980 428897514 307990310 681053932 802770353 444026236 937469786 569030648 910787981 486772475 865785324 895300871 931858164 783100322 405728562 8939875 220097944 766858262 291974216 118799087 143832169 909012693 369267657 368843466 58890041 536359213 102872758 799436898 852748036 498108826 216592216 452775574 472478152 92628658 282786473 398270835 77198028 788773705 102038800 208539857 413775726 1025027970 813794648 355295773 460546150 656731463 791590052 766432210 837232068 379579665 895669106 146251176 413281797 778675758 70506317 535863645 108281329 699561351 44421976 882667448 1038812709 284301235 434508237 229775585 122618182 479798702 883412394 694849935 186879784 227736429 642828797 263018984 166940958 221741151 532017553 391594915 910325731 743208413 462774918 486689754 136693356 534681780 606936027 390341042 199224942 958123040 686983439 561947358 841161092 106224819 173959107 884117016 46915 837195412 476737214 579231883 732778130 542855018 645833713 851202508 1503923 591592207 774351515 850906289 789177595 138057625 691786088 358949264 1006639802 819079630 360736885 714252992 378562855 742395433 898438310 859296763 932779011 433755081 237311772 940281852 581998034 498376039 318323396 97571038 370912748 782895353 1053227717 981016321 688138041 285119299 242928103 1030694580 680756489 198366020 1004178950 86782384 607359910 935984141 386306222 900487221 255784052 1050829453 39503836 277880502 374192959 546729090 374144163 12678526 464204515 382270694 775443448 193177232 600615733 812553288 667252665 134847270 1070207028 659394222 1008140474 118072209 799763768 515348591 172651496 911542330 830687324 137564397 729444423 963044734 133702775 397481864 134590041 175667951 806389315 738747610 433395565 490712873 26550972 772998592 331446256 961569183 288705468 602774346 649471025 199491992 567275821 1039290785 524223589 883797594 731275405 47093280 789931273 209146119 617518773 23221616 141535678 1055540521 34270930 24339208 23166544 585297918 726115069 63460186 461517996 478852652 406926758 152351262 232168128 933428150 303343118 1065707012 907995238 500241162 626819894 162572544 587765708 576113094 825252385 954571394 921874362 422850648 728195561 54145113 182638868 884688330 792270732 947885686 988345759 105401926 1001844400 552522442 552555865 398183860 543071217 144417260 175061797 892085694 878188339 518471895 328857995 118660755 136850178 805283242 924250864 996927462 391167383 961213166 427307139 500636662 378302580 349779680 418015589 998273852 890768557 116714570 122505579 110557679 636734322 727478151 456773443 392808458 176770594 1031384878 144452705 240032734 387537164 16700213 627416041 186417369 215568849 255829393 710046167 936819539 901328527 445001453 843246849 422980876 490941431 523349865 596364703 705351416 946247402 900712002 160320874 928658094 1020283030 201982776 691632637 491527731 8276103 54179897 519081665 612839766 1040553156 729601007 747172056 657394204 772294271 769234667 1017335146 105617290 906871447 45724704 1057132577 86397346 720381739 937960615 749852774 508758055 9774884 1056028150 372755602 320404118 1038806869 546586047 482722166 287792888 740867269 199266133 980275727 519709584 555480866 1011009582 456163557 108822425 811653346 888152787 448220961 631142497 236271158 588567808 58057127 996404338 901463140 453123303 820285546 417407522 734046256 32209720 401752984 916273239 148894197 837263631 92935228 908114731 1038409935 440244002 960155509 327661492 152156127 59876297 477884966 726931959 257809755 1054960961 891497810 681187918 4582975 452806856 708041788 569081456 246321311 445851976 208480735 289122652 949653072 153671695 944555303 941921063 40530227 711646748 381895627 255954828 830462356 234462363 301766997 157310136 212119626 791961602 988826351 238514295 744107427 396634556 798782394 556068886 772946178 887831299 807474974 603920806 69673748 166022073 747595111 97175867 780953637 298889780 591502853 275889705 73775224 415791000 489641843 603374382 579896764 499846887 475616397 738980269 197953140 1013914860 146021287 848060565 1056772477 933989595 700487788 942709467 512379700 88788397 1062791095 470494578 781382801 398650787 732637288 420916209 3663322 445161397 589039320 822578433 173963318 100828866 834631830 227361229 402374088 241400487 480083070 203774443 428408981 937951742 715730786 964942487 457146796 701752351 1072259378 427799521 831934847 701267992 837416252 619655880 307887651 618468001 63520506 680587930 821689596 343348117 314008325 200694789 12124762 853079280 482216599 860257609 243377172 166697026 542607785 439025401 375066883 634576238 792918090 348246095 486176187 115187758 301052220 341887734 495988592 36684740 130251516 577024223 55116077 511371829 973487879 860129649 169889303 384868355 683029304 650394405 525531805 491446185 377214293 680183813 398973864 1035490756 514362699 900722309 983484882 938869504 117825647 788556010 292952327 500335671 222665587 582249696 1035870530 454125094 434013996 405078417 916354035 748295926 318181317 947738027 547124908 829002688 830704566 296091554 387055380 128970269 530265522 961187838 687794060 979292944 190799061 977464595 1005235838 689272042 14785112 257207746 820096682 867383818 731634625 626890673 751896677 744886686 586475873 422572516 364387712 847213023 1027137774 207182374 235168433 288104002 903258088 788252324 687910480 185113903 698949263 208037779 308289044 928188261 256788202 447244919 723046395 601948542 174489514 123809564 193321078 240551208 273752983 1024462624 613748871 741902124 964836380 77577785 191515957 646436573 36235527 835343769 773301242 44861169 295415764 679274516 738514334 568032414 906113198 500671565 176518516 92354488 642221339 96576973 941421483 33773376 958567977 483666471 259791770 986067055 523397411 226007313 929723093 838236878 728069349 697484017 1013800626 116308334 425535600 793153699 136094947 920008057 809921991 985834518 337371024 734608735 78419292 381123225 91443288 851913634 400295944 493093034 326053272 98508555 795315945 176948500 503425588 290826016 621671185 732477086 330683262 36932845 521230123 250853966 713428185 801230412 221302780 194362740 85270057 1011932330 40645262 308260960 597103570 860041928 215139555 324154412 622707338 364516542 468505981 960360756 175799979 775845927 895868229 1048245556 383161583 497714455 561702000 199027180 544461433 295906696 751634022 605857182 785301121 965921583 421917628 756384084 419020176 760920192 152344601 564626784 811181930 872240735 795705452 848758732 301158741 396028508 503224007 981887140 148826579 174996655 260520255 909205694 463891883 104458814 313803695 87405294 609440591 188858036 683053320 6198562 178649509 476019366 50729246 299552815 1052241248 735105513 283053929 724282702 102941898 909749284 172831273 850654860 656728424 947243903 771853335 686128706 806575290 14613043 8768438 917494804 503759103 973119609 739724992 101950913 227371468 459639245 727145768 974447186 1021801629 112072361 213348386 821750936 947305091 283714191 739749576 324664107 53033652 169071499 27685020 299940943 101667865 1040820162 803036368 731077947 123257261 195648243 573493901 696759175 368876948 276966702 934454689 895162626 921090676 174629373 85988340 461427878 196753905 477450991 126478660 356401863 191109266 799314256 194484565 483554674 869703602 636157988 560612321 194348580 379039423 338368414 876537384 575196657 526983840 364472580 955005527 106688685 450513534 191524085 384250905 779721307 817961581 569133972 349282607 1004728423 634860062 1018387900 403387946 331880698 271326643 981056838 621485663 712058089 794706707 389582516 71896293 423305171 208213591 624225325 193532515 720716871 919567409 357316834 704000613 570627577 69886246 11750436 231926712 208530493 176659573 303758195 737920792 905151021 287413428 140610985 600066036 938569066 313033751 1012516886 998088323 774831000 707384784 611998080 1029287148 626356764 396126477 443087768 887737978 597628467 359294780 114095847 248026974 436027837 176898880 174675497 835008932 259811346 689451264 936740774 459782180 898852006 419132865 705923647 37828799 334950992 565786498 5114482 344607807 751332133 132846002 770149215 461551677 64211992 359208573 749164328 282750163 640782222 224033523 650544728 141533997 748435103 179116682 303463757 550967039 1024642199 251115560 389338383 449392633 903000773 321631055 931489019 809404676 811732836 278875542 308287531 893545611 606089212 825718666 888592894 592380246 20475946 554999849 771130650 126908068 969414531 311843119 1060544424 1054083795 108569928 951763745 298143618 651972437 362063167 513195375 911688781 837844364 944521136 989275447 738214365 1012551713 297748558 336640257 301318372 241021653 37956087 1021947943 1030520312 568896669 481823653 122785197 379638033 1001677745 961201214 302725346 907490187 701537945 1062748786 800389601 885043661 167734 440064409 912264621 479066171 423202464 804268420 581300418 637763428 252726450 383402584 731213938 121559546 310973723 109392975 917457828 527546732 795157810 760097626 985825486 1029493273 348681886 969164049 109658031 1019868428 855546118 891975592 488701047 695412599 770249646 18099883 981909728 742412362 829557184 101718693 494406132 213937660 556817605 650385551 390710183 384638054 170366986 139717937 212179728 62643878 205176698 939222112 557083397 280699462 238136817 1008298459 739882939 432696070 310915685 38190367 165830599 443365367 672028560 611779094 658321724 995239933 466309607 991508516 982608228 532462213 917967642 169930542 427792733 842463188 38453517 279022806 798992495 1041337981 219748463 283747183 74830000 770379649 236650943 364198612 829021509 387780109 703093800 615437994 310318593 370089746 1041237767 1014552395 623937735 238601906 517808115 997820839 805970161 854180846 1024859788 34752504 965095066 94217029 408344138 620942402 327306940 118613993 666959132 947657696 206388251 227730985 383144335 602511953 367430490 815111355 363109021 131121347 495920208 107117845 1030464883 457893679 662920717 568288160 874696163 778781508 795888161 623814643 958179929 697630648 8837868 548846321 854542227 478618784 222858736 689326441 402244521 54630939 181232751 209406940 969567601 801696760 679030971 959603456 801416332 245748753 694697092 36895693 849903645 1042173254 833024259 927940339 484090546 839112165 719848481 928483412 492405965 417115073 887078051 947578659 7864200 230062857 861218557 831740968 525713786 117195534 609517784 1066365297 61873312 422647049 647007796 695630822 705387445 42248223 829585530 784187733 819201244 932558493 1004630066 326789010 902663401 973252340 690880460 1059130327 1062102461 613507934 595330002 107309361 450315376 201749146 14226542 1007519374 465088039 544314250 301606043 69583914 128857505 628246648 29365830 920817510 701812778 206765318 609773389 739295676 757627575 22415936 779082039 150359616 358291683 1058517103 224668031 776029586 309474442 789693462 367031666 109286755 1064308478 179136801 42927597 161503115 821598971 153672824 458396842 973670109 940676821 574660669 1070079012 968479015 663852729 608830478 837181552 660340073 651809671 940722914 913334607 671255475 960260813 370873614 829792198 750211010 842352547 1043014535 204349660 228152045 701251649 151507676 158451857 334104271 278389827 637514325 314047456 871530894 348520431 936843137 768426372 532382986 819463344 758248090 50716012 447103347 145211738 284995138 439244679 665011244 1010192106 562600794 922591684 523722432 717311954 195273928 1038263687 567594592 898748815 870112757 899199499 954899995 975520020 50614578 1023350275 177589661 337806347 951961133 1069989135 313029109 71543498 862467633 854139078 1006936136 110746886 291539323 404533928 761998368 58456261 700313541 10571885 696841140 756819095 802416869 82775810 788819498 957397837 315057924 157059504 516295882 498666583 243455541 610489820 875841517 8197135 131362887 1047877232 418309351 696017514 881936355 358938253 668624515 28265188 912496562 723395462 960305804 650955615 648945680 792874675 977793778 423879180 1034344301 756300568 959918010 491623511 165492042 73815891 151681340 723060317 787448709 653519079 78172205 211498952 143960068 954579906 1055737066 1027057516 907813430 447269325 406076708 676325855 805377712 679505539 318870787 689120514 752914207 47607688 628053451 848957266 878601027 777599838 177165738 307179959 94944217 11491097 728291016 165886577 827301463 246436621 553917004 80682179 283694959 4217326 537976204 946071662 728234936 382632261 126963274 15467276 432292821 534297105 567056040 950423279 1057904982 700865101 278995449 575103545 904675234 558106928 595351726 827278555 795810212 945151965 153202485 833456165 140408536 738301831 203154117 366854946 895206965 293427085 570104969 365149363 621974370 50954388 333189916 252334382 510433151 709579378 896400047 488179335 766433328 272897685 939994170 217887434 55610910 284610336 1014557106 302475521 1068928788 471375126 723577536 1061898805 859388560 948055395 833964873 894028822 607692328 262085649 270446112 71221321 74457898 214402620 212981736 748020792 91960600 772816190 322871499 656363839 283301737 142657345 260433350 256035434 501699400 851838985 912768067 299179486 656650354 29628163 150370808 330765876 58633612 114494029 176954864 58723134 43487428 806509294 853014894 441956211 635980579 483859548 338882706 627541416 369601207 928584453 285162045 115771548 41319003 596156118 602512972 124094027 165473336 713505791 474822433 33104162 695137123 757853240 319440625 660240527 592516428 901942393 836937206 327882699 325673812 119923286 1070457810 251233274 335289765 61834837 435599896 300928876 866211272 81598362 1012319552 619779484 701982509 83996915 646172807 256311675 554496102 225271203 394648798 577445509 788272071 849877685 375635477 596453511 866206731 795399223 62977 278719228 877996379 162602713 900506241 619774592 876045845 160701834 348219114 821689082 756195289 143067810 231420044 431969152 824932001 182749687 187667846 122644392 669185669 600024782 323802352 940244731 413346333 261778837 890547164 269690792 639862113 358116749 979686046 835328204 44486834 192647683 847295007 518003150 250443267 36084980 171840298 500783067 1013295516 610696628 526783536 912106588 599888240 825494501 1069744116 32125445 1071790970 862723219 499376946 687046377 264133949 10703520 1063928729 876708395 630107821 408051064 282028870 977466341 920750981 700704534 1008843768 50354103 220793600 274422853 33437742 776313443 901204730 363570135 83544635 861734555 288051659 262359453 1007534146 863551538 345010867 394733856 987182822 1003748136 325396099 30795217 17285330 216521302 109921099 310809242 135945346 330950098 477379391 320808187 120314296 234352922 89058009 870429265 499431397 556686528 871780796 86073236 695791544 170325300 368088428 359719454 1022427641 993662534 51405567 651990714 883901275 104830645 365358775 220834085 738044060 905900368 813091463 934087850 269008319 125612275 667846026 203353783 385433002 317882024 621297550 143997694 975659926 373842338 5901888 623640516 166378722 226246923 1040100761 958074366 163039543 293297 771579057 309942041 726623313 281669782 364092790 652922180 37036740 1037188970 403694648 37174429 80841343 956084614 220312894 180035298 213880670 1026821997 532791321 737159214 564692632 964521115 404281213 44344914 592503669 986538694 28541993 1000377211 489473753 201020904 783774108 892688631 257899249 145857533 299071691 897314192 827291116 656195538 341650495 801483674 1073210711 619090568 517897056 283600494 673989327 233253063 223409722 749404823 351057075 735891938 546930451 1004873135 540690156 291108487 333804453 171919945 940839115 968674830 471093512 49755581 330307782 428270447 99937953 324046097 568106562 706577532 222385857 484316074 725459291 144257459 371709764 67384883 742042241 1048681398 544622612 664940996 738119159 758270906 1027352126 766157002 70942818 136643035 546631077 744652087 212685754 793270256 215893331 227756703 737713478 378202187 395961429 141909210 619859383 990732151 557537372 81652635 452259012 434494809 819958918 36292301 628650913 419531507 698286918 1044941198 155200977 356085091 894017004 807097825 1021564484 1008186947 506965941 687293637 272387732 37576170 556725171 153618670 1066903289 675694115 1046797881 462222078 41659736 963902133 556322863 103861 568064300 436130598 199317520 562400162 72819648 217367603 186860297 976948288 204085743 417399173 522992342 968372829 399302016 151896378 16387502 880915209 902912726 269380771 1017289063 99082477 362385833 573537449 923718838 213880991 790398429 715464608 967280955 1011058159 729039406 855077635 1020902940 511059644 446834328 157588494 97317795 397181506 132693721 932683791 636720871 1035254979 692942442 545529049 147953562 190626463 252226264 149348694 45650668 935894391 631242244 169068923 641638093 130350317 357606397 971837196 103424744 977700132 858675396 382745073 370932451 197928595 818537274 840467725 759471901 506495101 223282259 156843276 17316080 867409733 501344668 708858298 722842964 512360744 397909502 247049910 492666657 238324052 452796655 461191457 155778062 827944215 492799318 532586464 840277231 975948714 883492054 425656954 1072406300 313998067 147117181 49442780 297519795 855566276 690560260 497605602 642865398 58633574 488995735 232780269 1044548986 584580688 992765431 959092735 558668944 979157316 652588858 934336630 377922793 622567155 713611425 105689485 719323869 198852456 580611299 635091233 655359671 444285359 680680622 700113821 148845245 1026087298 992963764 127148868 259695733 927912803 695572616 680052704 258536933 171354547 516008798 253753486 321039101 731873749 212807054 227262191 394123320 320330261 803921384 3549058 965515728 677718190 50201247 56669187 340645084 1033703663 130158525 67240286 904925687 474754651 414699536 372907217 106574646 499394164 505440770 739001921 552820486 1005924521 352260542 302942332 331373825 6755178 691763282 375346733 566442320 339381645 208902296 705048055 95142387 78580441 958295338 478466920 853249160 920748211 426543936 382859475 418549356 47835451 333376443 634158467 409089248 761668143 649776480 698832667 104903592 11902697 630626786 662591016 913389411 370178662 558083588 987437695 953796718 1040135846 826410135 550271424 189130250 595493327 531229582 1039269602 617590760 653279610 382659532 498246064 243034917 600398798 575472983 515218380 128841272 278114079 408351304 287619645 213981542 657395539 831381491 949901829 131514446 881516344 947869145 764677788 940766286 130416615 351477894 371428160 90732339 471807575 774019457 332287407 35566251 1044015551 635502375 645206855 494148044 254221864 115170385 498528854 1039649566 202406165 708141835 483946377 327652059 695995273 804652127 419637298 605860029 648426068 196978286 350647660 205140214 431139177 874137168 227663983 1051079067 1041827974 826326813 729425585 965310057 750010194 204558583 29347954 568351544 537100417 34231805 881445395 183977407 658480277 208265011 1055170883 394486597 498049783 275472342 776521566 94700897 556546761 455884052 458171244 993730105 249080712 48025298 906474180 889171887 731864104 330740602 584922601 714061148 682086720 710752307 1005256946 1040441873 398144806 535593648 763054481 731081404 700474481 388186913 1057119771 615586627 745139182 386044774 540226702 261396482 999804356 1070460405 629094835 679432036 961155697 413424442 350557453 805540975 937671766 243114055 520335397 542202541 462414749 462446021 322477777 392533321 246545275 438694710 314287937 432580878 719894857 498080311 778282374 572259035 988216026 750229245 503784114 280996323 269447198 744658767 365543600 391311711 450429740 138765584 57735313 291954977 152809774 436025823 299011039 304699053 210799160 1030740432 961971359 1058649969 1009382149 7711290 547750004 483782498 53073141 581832314 837108781 524773468 899573154 554364283 351690626 214425641 590932264 1001223154 437714988 613082107 862089980 818235307 89973234 229240006 447120950 910323264 1036744607 420552174 298184069 282381486 311763275 1047747008 304658839 543467882 844601641 484437349 1012208893 988342377 401144212 915533862 825209726 744303671 878272306 42272662 645588642 494634836 245678095 775079496 1044156423 724448300 726768394 11325591 78361295 1009059411 580445751 901978281 189598160 196032806 791814134 1043469784 54239894 316148188 1053141420 573999964 993882524 1007948940 601979822 200920996 666668179 840086208 921458931 471997832 862801896 334419353 15070758 7537496 87958395 235809911 768027178 685713898 423104970 299724796 440378495 697195877 709791926 313523400 830906127 1000670699 480083648 127234449 866347020 640303191 128696934 339636117 180052824 556684073 18986093 472540567 258638437 199039089 880900690 1043549576 437595550 31938427 863933867 513113866 274137300 391003621 269541831 817063738 386301109 36910924 1006713088 832767921 56980707 349300312 859460851 484237907 345902471 342853604 1039575698 656987282 746467497 666920693 232508152 121175062 533666395 164548249 841836762 29517822 751105683 236267163 627377848 634946101 25377207 422258089 1039303280 936467984 551102357 938083469 483308863 676720207 698575436 562106813 463582207 697529485 806138477 144248093 967690798 588024474 95077950 357478230 784522036 844272710 631111819 995220255 801602563 412386177 57394321 245970660 489992829 351986987 463590330 679491551 713295607 297254152 1041657640 405985486 792002334 559865684 821988541 123057638 426040954 586391352 1027824024 682078167 243065326 587153984 385786129 764484942 888696300 25595066 702993289 766417856 175889626 245834019 470416085 883411073 495484111 485811256 984625855 728321862 689488614 931033105 56267972 32594597 122509732 826398909 639121641 527342978 967499596 28384203 778175857 496866283 346080725 1059867577 1009925285 651658378 577392389 349961856 1004764941 292029920 933373785 478613306 678919693 883308837 340719713 513410902 388818020 452497812 935685829 1053460056 298253445 772056443 1064222225 571960129 38648892 15518745 744131927 243652033 699105515 588946994 473189343 376586152 704284765 499921192 61073309 327322797 930928616 348106778 984264709 716197322 691245988 732554777 353134896 528297847 187587120 839284058 1022784553 772420321 340874753 460981536 525136244 311480739 438221076 8953744 468553806 760171309 1028072567 457802140 266291371 365752228 735849589 775364921 746992226 1059130576 521680139 657015628 465820286 812227501 307963135 177855702 569731930 15938664 142004551 46460457 269017467 976928089 263371664 292648853 471219438 584271409 803742561 395541519 516499328 130866295 22687062 446676302 1072187034 581940051 796358796 719546252 274385805 151928235 300978376 17902083 26904139 863345419 156963342 616342058 482934161 566310765 571579287 454503513 744601051 308765345 460791018 969626686 213931220 975791294 815331803 679643706 16416038 1018733711 786050883 1032966961 743731017 92342941 337073346 933411474 90766353 90657080 226536685 986603633 953717959 462775892 723440022 194458499 961486586 762345426 160271456 205493113 288118565 750075203 476439726 418277140 365429250 879468965 51463127 340769673 584095592 749061411 534263610 905816608 154494975 96860710 31139533 933741292 774512640 295450236 144934950 797783211 676226299 678932480 39398038 502196863 1002039609 809882701 849049025 288253412 698317678 256495496 561433504 128031094 57519901 502738857 323542928 78729632 33131176 1005607660 643418408 68436351 246640689 93644265 1031221352 686976404 442078328 207136774 98559649 534368238 518966084 806189698 424413389 766028792 542455567 274740411 66662321 34339705 265357714 840678665 200899973 537393055 549654564 442317109 315330322 982576040 1037841158 920220941 549464027 703613141 949996964 248086689 594788885 1032330343 773771877 74871987 876443586 238518279 529110835 106081957 968567450 812711349 566563550 817421885 393389932 119326337 595937460 973647671 251457936 924074831 134768023 106448163 261086851 632950018 300175796 107463065 383703339 628151710 917911358 403956384 731260702 807324286 736862116 291346787 262007514 202446201 389035997 948352055 131018212 54861930 672873807 62560403 340412854 554982796 161103032 710788309 880738295 975987086 717541305 367103605 823327216 257185444 659130576 513441295 630060828 890900450 502410387 770844206 601212441 881066759 820433547 1059806947 448640904 383917572 230355540 336632056 879718162 259399250 935048921 923889319 593843047 522402072 879979406 556826081 559547521 619859446 217608030 794899524 708923425 173391018 764724258 426554197 111308389 150033592 616438860 54924027 856837269 847485952 783906491 461288973 213447489 438096235 673393774 1056702313 496655867 895689192 826147650 710674671 454882858 747671326 663290197 615679690 636684513 673210408 493147409 279190627 339110610 700691715 504444727 781062294 231366141 204810549 713388922 605536778 619936253 479620519 24768823 642534943 865412834 145738138 69762643 544742135 898211674 1004639534 646191542 413015366 575861068 434750213 284401969 432932168 576630215 148952923 467152135 155528067 959134333 149793565 826481104 550587868 600340141 668126449 611245335 233078994 824271277 1318171 533295584 150961184 646552953 222767751 272496682 811964299 613948886 1002814604 758209835 127512529 957857543 39877634 770553162 1032366508 702477 965016402 671184750 125704696 87766313 921931657 1041186199 452379665 667568789 34100712 740089199 547960306 193206038 1000401198 323219266 353807547 471885361 940890879 646136463 157611770 522821511 295276516 771526259 1073434317 707298927 142162251 285169938 55969702 530553525 970443903 426663338 929742447 733933684 126519425 342059552 466166336 481609199 572352510 1071074151 290698183 393311372 536029240 992171979 1019818656 659708800 733929690 1002632477 864138025 342614860 721153056 831870302 6281312 606837004 548288285 622321615 833475045 653868850 346784689 404107544 1070181053 163013661 964320718 1049023105 640285421 1022129958 530673703 1016878761 1022888658 493758859 556037773 219321364 1001494379 257800585 1025866724 549740517 733822058 1010306384 887623067 829921184 435041730 71143226 699300119 154282163 357702562 43291037 686292062 851347175 501599332 700892527 151756730 420876874 605996579 518786098 189156276 988406951 967878213 558688447 186589626 910290397 633659764 597274550 442469389 932659144 512525241 619833744 1041641326 254454364 409731598 877290354 726125846 674453572 419848020 698884177 81850914 357109027 340057444 400881872 252787516 499180466 346309557 996378405 547996921 192397472 617542513 574919199 485922460 6409373 504943924 461348177 615824502 492201114 707093079 1043917967 886808978 139963529 589255274 672427960 961796250 950659242 99380922 840508148 632290291 877858561 587218840 564655983 557051598 21448776 844099112 632481922 360297225 730796972 158024290 969320486 1003619174 776846467 370337431 956820847 500895893 359204549 334518600 530618615 684111669 1032912079 751064611 306848865 505401969 826551851 762271001 691121607 481207108 324698469 775761248 208768341 949155581 857200966 419544407 281456770 993579055 552121809 835654547 30389647 109255429 38576142 595822867 139359918 133560579 686699835 28160679 671235939 896703986 1004305602 681710804 525145378 737739203 650336100 964129798 400400501 484441514 352359322 825335285 145858302 856976002 814997622 462775667 776074109 736087361 467119904 754530593 190258302 18921197 380365605 311733591 605050327 981257199 1010701102 262891947 76395687 751330103 1058879822 768082004 256704795 253988660 341777840 515111913 145356599 617996700 796617992 863914617 716196690 353397537 282368448 68465462 1048547241 863836402 981297138 98760492 100713139 599978713 1053066697 655675428 298853981 522144061 856762999 103430596 874589589 61958074 558361823 215293650 657492075 752160121 910535349 917559168 141763823 745185409 930498318 303942572 262300716 802962550 126785409 936528948 518321622 777559525 607611387 760772385 511379193 326052298 434569259 1066312583 282913445 838573841 305590900 755860115 955805140 686824782 479838212 494727649 344319346 1065390019 549449559 501865478 541184834 418858844 1003303495 917370338 55227054 1003681841 247787547 651361260 308059770 317615644 630728577 796913381 933159275 409088404 588414488 991767815 820466133 249343678 175963760 95143735 1019985634 18056232 661443930 574333627 385183620 520161322 79659061 248273778 14209379 299217313 422217448 15603308 302605578 764950916 1048933663 813281258 27063858 126068700 757589918 601725143 984253462 354871662 563877729 414906993 257849373 329001830 690927415 317665418 871656271 549161888 204174830 747887852 300348803 995080000 858984002 981489654 218383084 665441827 850711170 420884113 99486525 483317484 577133671 478984468 815178267 595386074 1038996135 335422029 718396848 839080660 1068263209 98927975 245341602 1044253416 432827007 687538490 195426682 819580532 718347004 553233477 177793633 954278082 550505554 424282289 770066805 351229610 255246768 1053086056 34479383 748228130 319091687 139703641 753280751 258930992 987681814 217856557 1022034434 98162151 89511149 875488358 225033618 921212820 394150192 364833424 319368158 681780594 389832057 178192654 823976784 479227303 485186418 1042388627 399856048 481292117 941384978 815815056 171675288 852835217 705943854 454510965 288657267 412004730 102181789 370988253 709261391 650416630 637107083 908638976 1009118241 199483870 1032498794 901828994 260298188 216376268 877436368 1410611 304049375 825217834 758517759 427360655 939823100 628519202 489719353 505461403 774406098 254188165 538350803 585179844 172118746 99180185 394400334 953484105 164914869 694881958 1009837673 727120673 150375045 847223966 367252988 27130652 24545675 584889267 593383036 120205287 935366633 487653570 5535747 1036875942 178117138 607717412 935700917 138235575 480431132 1022066861 897131821 320351477 293214948 190049129 805086733 790051681 462973789 671162677 883815456 946077855 138536543 914073159 229976599 568909877 890930030 720656639 810681741 338840503 1047254603 1045727825 1067352520 797702269 788316677 172826338 214463575 539556785 584536493 762819812 387654181 38281331 233270495 1047960071 675338664 592249884 992705741 1072950222 530160561 714381278 362193735 1032007001 325211118 325083029 857615044 972301579 259765494 284303690 784645583 452780471 68560800 401159906 413159430 1009557943 238958287 1039004523 275723758 386773272 599947994 889410680 188413883 730110415 772273935 583473380 182329032 907863009 949051592 572012855 755450317 125481349 521786333 732177251 221306132 1033170353 886299887 462936996 873002738 694181158 438894627 309323956 452676803 615804318 219429445 512887116 323793535 341422845 367485592 29542273 763690164 1036953247 323008506 614899268 687819054 461218185 355938696 61236931 250230973 557365467 419658026 401800972 169993577 238636328 632846630 415843063 541619034 352287208 929333864 810543781 633086644 770559283 879149923 498820565 579705719 888738330 569701994 242301702 825859523 270967779 363550746 421901722 21768397 726990450 189995518 992427514 171621012 124814227 262954096 714967536 676087639 456209782 437822804 991255671 540074998 899677427 218725405 66367270 434272345 625426524 91762495 440720163 687935836 1015130569 70062095 867082885 554121124 934820672 904477438 1028063406 767239174 680044321 996897374 545580390 740690216 485770977 929066752 464150432 680553719 776108102 25991123 778811563 968515005 138669556 400377767 578358451 978543209 412998990 858618585 334925833 913449197 821790993 919310461 482579521 753074933 708151746 21166065 26981705 551336740 833277706 608028529 705658348 541021583 825916125 361875008 738937539 1041106550 460596078 918329986 370386276 1065868137 1047596266 1005735849 67041249 529636708 258952959 890955374 210397343 376752234 587623522 76639230 930502238 941492524 198873850 171424875 285348453 644202457 674571327 739274099 447517450 560426313 350044683 25423421 112709839 857577988 811060498 460810095 925615444 970192984 184360928 29371369 967515946 547653282 755274154 259667986 749542045 637508334 364431439 927771820 1062329510 88769528 361630908 72853697 285393040 606621055 741487932 99619083 15800041 453660000 101786170 798301333 538679923 369227113 289993376 2134198 466338517 705846434 778155227 283316353 795231239 512442148 462983751 271327272 1037812902 358334361 566410522 431985373 982969443 1044672281 1065681508 496831832 127040447 213693211 993616195 599384707 943345375 199913032 207837267 709588223 128989674 472686238 289140798 859398881 853119071 789225115 798366665 578262180 768165498 749970961 759923070 970881573 846203104 802775707 321063596 449343018 780934249 477542681 339650413 664693141 744439748 528346095 380397062 619792501 730236208 519723985 932271430 24390047 883391664 840450351 207122479 43304006 752445131 614919936 920862436 109870989 568311557 570065010 976967753 181173720 852870676 802941536 1063235813 420158040 327201125 788870708 125624086 12304129 873296167 405658758 470985472 737649325 745725592 447655830 779477183 803878590 387272155 372523651 926734431 99791623 55025063 54126731 1011429829 714838267 76023767 142662679 62507448 224014859 307850084 334153739 501463933 1005430323 769553508 399449008 171307523 565997810 394427467 182745645 61932143 541895451 351981259 110475072 273748923 377216063 236555056 681128249 228805629 440790029 527316881 100192667 663011553 922361178 332683436 450868308 696480823 787362846 1029579886 296751023 338289779 269504409 955265683 753953465 255736532 594533707 770565831 53072935 239018832 149406799 239959743 557661925 738066401 616020517 568506910 866394725 570010611 982916918 771482326 108130736 371730696 858837645 540048735 481074573 132966349 856720506 197167131 231142452 564807209 911490611 902536653 801426856 800043119 977584833 206948453 201091026 85190015 974445473 862818193 232587585 591800665 924163216 85192989 329893133 951905141 28013851 640996124 848356664 592917939 197897525 400295537 240245547 444118668 70180036 306670272 455452297 78532083 1058830142 673022201 336460317 470376883 487749890 907059325 753418390 1065066315 685562240 797434548 564508946 891078251 250611716 434522104 578904086 641136873 695230814 801730136 183903295 227069948 124577007 42772520 1671888 12957035 11595043 778951739 688745899 455386603 192045524 386800265 532467548 183318670 626690338 281001433 547007483 848647844 916904727 499654755 860016371 864823253 977869208 945538432 281561624 877901322 277845910 87903296 270200320 183351058 842790103 463051816 109537236 350306209 794448962 342052594 351760683 451285349 168314896 807894622 1038254250 527511117 198298411 110678986 720139037 579743971 336411570 146596147 276613838 763445798 302872864 323002908 224296 119737444 579211736 814561875 791488539 1049176099 105627249 878718888 882483887 306202521 763740879 522503193 88085493 613711632 603403562 1027605915 533019649 893372816 280750076 455596476 364681378 323200143 1032541320 370489786 969161468 944851921 785051208 733428736 530617362 172749427 620150187 676443325 876337318 1038745279 285642876 180299869 586107590 361043001 176634286 637030659 632204179 206215688 786293605 150817183 755707050 1003117028 814876861 874956404 718578348 134893470 403403456 109435111 792133022 1053161347 350567782 1068686111 528173796 724226898 486577658 1052249588 796072059 638763752 789236601 724761111 258329041 461193403 550456642 194286459 452541161 770409987 106699210 272710547 520444107 573198472 647125595 433335919 374927258 835264266 705908935 38255274 783118774 435964697 68467789 596567323 1036256669 185644911 260351808 480164558 741817099 615166258 869514165 34779255 253186031 834274475 565645887 512630620 899529090 707345238 30507399 473490977 726763730 193243588 319693477 887636115 967415189 607548036 792269070 620567189 162572384 53298794 626725030 407444200 263233278 17473208 996858182 653356396 110485274 464716639 241188031 447590268 632944974 320289665 350399549 436989498 740814844 853783869 977134334 761355527 1016673970 444468057 237553163 368716733 529419166 929035452 898604650 399370643 267297084 68067038 816258609 810907326 225609580 721233167 898993677 522348360 532275512 541330111 480901852 893705387 522945421 675746312 318511958 747662099 650518323 700994554 768257790 33830782 132475403 2857505 874040583 731228677 788821212 812436638 439806804 751599212 582147268 1041644526 722586580 650786296 969096005 380526602 282350953 130762503 20992778 306759947 127496184 913569887 911260899 91602413 1048794610 595309429 683888334 863515603 587450588 80004846 526680519 897019077 218555939 594407552 568738595 95105579 96726888 446988942 125606217 960223445 334298752 366308171 1007828851 573818498 284583537 365716751 748074598 596820590 763801065 804526327 450778964 482587830 220344150 977433695 717915316 702669242 903220890 18023964 461008667 287942410 706154708 94723821 378198260 42426252 649500987 575133581 762939802 598481037 43283311 204494199 776340572 810529442 431285494 812627136 84285911 348600829 914412184 690552648 734923537 46030906 535046953 902101038 297182303 63652580 838250966 974446477 367392570 342540784 511608603 540174118 677298282 517841740 210193961 1010897227 693477053 771943138 459194931 378199842 373001754 221243700 173513923 986042230 348284822 103961767 206525491 632231427 129363941 1015129014 801829163 709339937 758378478 779726092 690541466 975133487 205028850 112406078 713086635 842781850 906866403 702577185 852888575 566683386 928110607 401892333 342590691 595327753 679208141 513638586 629930578 34961805 83237401 476986109 757675957 614595974 522872957 220464170 823530532 959199690 1046141506 354514193 712462965 1049090792 773568827 933355502 699441111 204084952 979951471 476263458 850185259 720910132 413140887 181594983 688446700 753921263 326520169 803325599 275346519 539515220 546521766 904251738 39538143 775514658 1003808884 762328315 820868248 714167176 737864690 307979038 761196327 695333881 618947077 647856786 1068110971 135576472 794153681 322829478 752331549 623661937 534495787 81089974 840310847 160110108 676635391 920850241 94574386 759898312 911100581 60227367 134256225 944649967 421418853 558861197 238597204 64255377 5968847 192908580 169505438 508653172 1070276930 703501742 370877264 1036008300 302786453 1006488753 1000317135 111442883 988305692 90744555 896309075 602135925 374407489 304463496 77322437 662380607 872925468 325215610 16940202 474958785 307290467 6639554 202928543 824106849 27074447 669132639 53925925 825195208 280780695 286061486 541806085 396714044 674027653 274530093 88521904 833503538 593425074 94613214 655988692 593463685 890457481 777982339 341001574 919074735 534582691 5359740 651713104 720588908 168219714 1020532044 1070895936 242331143 925348431 725668094 937366232 1073599199 41054599 94693196 392421145 477008817 232292798 256584126 127440170 221419028 639040485 309017593 154320176 958819527 389556707 1028788187 410055578 310885603 810588937 279025623 684954820 154480344 863517080 86154737 290324167 1013704621 406565686 55862718 997770970 1031851600 222007983 889263672 351329062 733519600 893454555 230124659 155862612 157226123 904794640 814645362 973500063 912042341 169364946 461487378 179844903 135390021 622314101 795810720 803215420 730706642 593145728 637445224 825631428 169759573 241359956 839662141 684663126 461306356 269697771 56821743 893977297 809159781 332767775 918664722 382964055 771462770 736910679 871485352 980783905 146321324 87645295 607644479 344747817 692358087 796611652 405914024 208931745 241223347 771965667 557851950 435678834 702600514 492949326 655302410 353249741 571152483 930203957 496896037 887131004 1004578213 844465611 409650653 680691463 99277736 1060449609 890627303 46342101 26972665 1063692022 810946197 110645239 303042160 685406356 117221643 197639114 1073318060 414787918 312638670 1050409118 962826969 350884920 214653297 586045923 471133152 31493658 310384439 98257706 195096517 744498767 699333233 180577583 693083032 305044993 698303917 904544632 1021015903 877569535 540785938 1019065166 659637355 553331455 553840119 375918586 619508250 947149761 377051997 1012385681 380737779 39368834 5671783 441393694 954944521 740112566 272555512 424580270 783244757 206223435 840403018 611574510 505107295 717196766 683738139 369121030 827431485 934945045 836209732 372486200 573583019 1058466714 303272210 287854448 44037882 857567189 353622502 68777053 947768412 929754955 873345041 249142677 375505 461420756 588167246 434048103 704180312 811092562 937990312 644109682 766246980 28929816 302905265 209405389 894229595 522636600 62227448 812317453 904879517 818271209 38544775 1043809959 635346205 431373664 460095147 407152436 332916803 74962498 477091838 933593224 603620398 688551897 452954591 88229894 962388692 321808376 184029330 525138719 542702627 448275756 227083580 1049475292 190724115 729327976 479185417 801735020 528222552 589211504 248626503 110769134 665801433 187347494 528944843 154623909 155132982 302925130 125934276 1017561768 726900982 850804087 389348645 346609840 806075691 1040902831 278978608 117028675 171475390 467898763 557709642 397106954 930867752 6535188 213748646 128954938 257259262 742256690 821402966 173667058 982233856 207763655 115488081 881377745 37628031 681230975 452194630 283438535 677526556 105052791 659778117 863354515 1043049557 659576833 245511659 309151751 821296417 398576725 378998175 800172014 714863347 92843261 364786290 195648411 672012156 81085166 232127923 117648378 899126186 8226794 47764495 904060678 833414078 1007572114 836437234 995001470 365381835 152632216 693185211 1036367781 718631491 936208202 549824910 1069717546 78937872 262236457 706175177 981234892 940200682 507391525 990450557 659049071 125054594 595907936 482224561 70508630 812986547 685366535 1057363293 539768022 940693108 144214038 663951177 655086273 427057790 836061070 756236003 898713226 298730376 140935159 25552862 975856482 1019034416 173890978 764415092 965128215 730348249 609230610 256442871 949643550 325355154 720215657 123609660 103322419 250753959 1052866137 800107339 325004765 296615526 47598344 68803983 1032589929 770119433 24947164 337099997 198369567 916707714 841973756 1048580806 225470284 492193466 172420440 1031227970 750411204 776019254 470871611 363640831 108946068 177611386 837604539 65977222 145567921 718117672 441257358 464101996 71579410 393399049 54973541 629528396 402646605 342765164 529578904 746582582 63423195 460240411 308212644 1048759451 463300932 760046737 543853440 978046224 314021892 686194102 559163260 419725593 149617052 368616659 1035940457 998025905 540598094 270548925 1028974691 323057748 535269310 205379488 330696065 499105657 634361027 755110248 324332447 744006668 409820716 240907695 678389360 68030847 529447960 854358946 169814281 1015492971 253190085 938288242 742439410 255081474 851714968 47740510 862805889 288116737 247882584 791440426 891571322 624303907 271169390 345323737 479565872 567840101 78341657 902867610 930450891 517760667 804494425 24727220 198188295 925013561 911602746 10227366 189946216 601075056 187182447 314286533 1070689628 17043207 838708071 24507305 881252616 639445212 644414064 796555487 130460730 754617947 471149400 576670802 337148968 230572633 156720781 881893742 12838446 181194106 1062111294 388535627 170339096 621952265 50343487 429048376 416050988 753005719 681655453 949278298 343242789 53018286 68794253 117609722 375319999 599769196 334533767 840021843 354829087 153507172 793249747 856985449 1048618750 44560330 902876498 315180205 361374195 997803068 335551118 256835335 110572893 735559795 945811582 764015321 145958822 826895499 144642560 31555693 234579208 726284117 433472309 178382536 389904568 290797258 333329699 478308306 86702946 913592863 391589262 736689359 926602932 467869065 216721610 638494889 342108974 207478250 479959308 211062017 220188132 666109773 131284132 929397102 1056362001 761305151 307665187 379301775 970297030 840439477 9418108 462722466 596393445 57123635 984370958 170981079 360029184 558498414 562558498 551618346 290241710 785894332 570005178 522830744 412957547 1014573084 633616294 25505804 788918976 665440606 595983016 569389646 767627591 1050435221 908973928 236370210 988721119 287874410 696686951 902473450 212984632 267813338 52290241 86105071 1016237713 345538528 671818212 752492838 1004846301 249639154 716048010 713122220 568883054 235744774 807154661 888538704 693150209 594813032 332233769 913152246 422933715 655726332 624514479 567114529 307875532 584518491 674383581 276778963 241030105 361323583 252742333 707981332 499427708 736850323 471312236 54505148 410742555 234953190 5602473 532283779 307387974 590156885 661469037 4235688 941304092 1014283075 151141619 266231592 810849018 695012227 578125239 1073648496 651243931 345074287 654373825 288193122 294724773 337725669 608209254 608186946 1011131221 254580176 246958628 647761913 949456053 783664747 242422585 177582328 547919410 566193063 503743764 523157074 197217245 176089869 642586938 78505727 487084046 445483080 220675125 783420932 614807893 343410792 74940778 62872333 490831726 93920163 812072420 191237365 350480167 310843323 701735316 811220105 656214326 158132823 200350072 46227796 474249036 699669796 276295578 37464422 697564927 977996135 948118626 832930602 999914441 45804910 396578422 14850849 250637269 241045265 486653541 531542198 828445046 1043701658 522077960 215704981 313353257 1033720155 699215096 978730932 273768252 119848294 676211708 185384294 622702280 414544531 442342948 412161228 4938628 338480660 58904774 980768523 215844035 885231900 928124575 423898667 350334790 810636786 598337601 289987004 197162332 863602409 437334061 35130974 307673407 92918638 452003298 485266882 336933098 115276714 21799738 430483095 23532503 825593438 413293256 713805592 91101869 847117108 914827605 88182172 723146721 82434083 939818340 229440894 357162264 515381592 245658341 115898254 207044385 842800957 931042114 779051307 589121114 491963880 602015010 617695869 884935639 59945586 626349451 551998691 704068655 605265752 57201298 181740547 83536562 318284824 907694546 1022419916 141936678 950862197 604260432 547195456 785114872 182001373 28036484 116541050 671557111 394882014 465138653 102265798 1275504 615723963 135733185 926099667 697944755 887975528 525615189 138703472 546064969 655787793 213931709 111906974 887684017 924393333 170811295 297557380 48228792 459972591 575667164 942500482 335622247 306529017 360363655 438848868 34002164 413452350 811515595 805919081 188936653 826590415 606601678 331699545 546392187 336823679 111675380 714174571 860936687 487133916 74229268 369244910 559300473 27144388 165431394 440435133 166579370 84116944 892625955 207274922 765736891 222634901 285653476 197454336 682851419 273629163 259859095 579968176 760458113 814625665 913027875 372713246 660969592 245493782 220921132 416173234 178467014 700737327 400881903 723283162 198466059 844473539 590876236 384935785 455206198 206696814 707761447 794257603 139364845 1020258845 391140163 1065723407 388205534 487851225 266334620 690815747 310202517 584303293 218103406 870043483 614634522 615107492 169924621 347589883 645677788 177429399 455675065 521016893 282338159 308781228 399774735 416303588 1062502419 920553617 1036808803 160405931 1045694512 570309421 683985425 210622916 179061581 177818307 742443867 730705403 444755763 313118093 164428938 157886441 686061236 287067797 814227230 50741197 741889636 318689360 458780490 876431118 612929220 628523285 1029884384 294868044 14389033 938840282 73367787 470022903 642964039 525790469 885251221 1011498907 179861879 477585449 490335243 860618866 128404784 203900524 26427176 280424032 514443927 281789694 468331484 100118941 811766955 671407601 622256408 785010053 924709931 333444 402175963 229391106 680725036 1044310945 1010633376 740166317 596640615 967845272 829956392 932984811 74613662 691601102 130146426 931751099 796018788 518578093 579484631 998334632 23904122 694622968 306643743 382017462 573410730 768074006 969563831 356636630 636733289 1019704832 675694744 609116488 532995755 146140508 479824693 359429531 1031608251 194073957 784915866 986399088 246454994 466007430 1062853325 242922921 783592719 390255523 796654107 970825379 385811622 213873835 240380898 17557566 900572910 894906972 252438894 937698375 897400599 199941175 181093230 573226903 295265852 342886319 906824054 882007686 765598613 445875375 938210314 286540955 1037304739 997751381 295387635 124261875 890587745 858617727 496777752 678493546 50742762 999883871 635544266 185300395 111234266 972987054 504153576 1025629994 702438839 902769943 10181097 931248725 702894940 822134531 521595692 326610777 1017562243 475104250 719764611 682692052 243674136 734739775 995276205 778041156 821289717 386548685 74560163 968202145 85950702 750844020 901083421 1007335926 184434054 215575881 395649887 212283622 318750778 138842772 761941602 667343704 758716194 628468259 467385527 234476680 210344092 224531689 593903033 834919207 1020013250 349118086 855257803 956449828 475721801 541848750 822660176 882140975 894175988 44769653 851720400 85723501 288845780 573459261 821443104 366755315 802973776 602245654 938759749 667524119 1027382415 561906815 487035121 575090886 25796322 372649366 702262880 110878196 929615460 344165669 14539886 692827904 931238127 515530027 640707630 696415758 299957742 393812826 900216583 750490265 366485832 391572300 961363095 882019506 236025612 373342111 187326209 46816215 477568700 448754337 123749896 731862409 586101129 298561885 634524384 1037731422 449772596 272002933 319754265 902102059 249516162 775082722 1005643081 847977253 901802086 1071441779 104714741 105987680 365211509 346837079 468056883 453056549 214562860 274662552 793421500 48638997 220283683 300107287 999896484 759300115 880669819 131509613 617657132 137802857 1009386454 456452953 239842929 406300317 522010480 846667818 720167962 272280364 427024468 325533263 540526121 794702334 695690576 50207366 215087340 919695018 601650109 528811588 386722867 423110105 444999690 239860882 428734472 762588244 524182657 153974846 96075759 855085450 958023715 1035624899 249638608 337114844 714721837 923442405 853998851 340435019 36672329 173494370 618873645 219468504 1025480152 754854880 375591974 598509284 516573057 571672099 532995644 577127194 696425906 650086717 751544335 10197214 608170582 525489649 238229255 978605610 59077593 1052175540 340142994 5711275 24969128 245962242 635528371 28354230 830626416 884961707 699842186 623573163 1014813944 463478543 471696145 968652280 805255011 585455927 565911398 549488866 530910886 742638893 1026134995 925735817 183280720 1019632875 955922712 845488651 1026917514 447678795 245917421 420116889 601517722 948318604 242736144 453686001 363627825 866790217 598145425 280502321 342648918 489675727 49706173 576734554 446069509 183988648 335870055 677504145 551330076 1036892581 536996217 305154052 80973640 355911679 232511949 976312609 589765323 829290390 338495460 451804757 813343572 782763427 365661429 879176640 64205661 951642298 959245148 531971108 46500810 445557060 299312782 800361694 614897829 173414495 208913375 400097359 344176225 264058799 493866846 808651492 631689934 958496301 187778722 802955487 1061815638 502543011 924242502 349810665 421395211 357391135 144738511 1011662369 397498384 854459175 147528044 500317836 212346216 590251016 290039301 971487736 973260626 422232535 158309149 250810229 550022747 146173238 51488407 189736238 868507211 86730377 811805598 375756684 116701748 493778128 42622764 999727919 74024524 320583711 702886901 482219943 303291258 1004268833 287110730 386904438 741883268 218209110 889242631 80607211 697304216 564754697 309662617 947153426 304805560 1032794099 572278950 939603802 832492182 947903918 371653436 806067864 148208188 863749295 750420011 863650084 421799328 433610219 138179536 609032082 165029426 743261376 7764884 723073829 110786166 85378992 852337787 307195680 428676115 135563609 687084534 951711719 532087307 933651333 262813385 405548025 767127684 564807968 84139877 926651257 21366277 246457348 714804920 646514201 677871078 1000697294 940578990 485993616 869683433 513252424 312054524 762219901 774362961 688313480 1041611530 144734281 18531892 675921367 367518536 600342995 151560843 367780572 278973590 27460967 398631811 615528735 84521329 468469496 229532033 230394119 905018730 348628945 141378977 807261320 468666305 754859021 938105217 413663593 236457951 856837198 407964872 439081837 791935724 966120578 846707929 738965884 260760973 840103842 869805433 1025752835 38569658 946722238 176017156 223054789 405673220 475840219 869947193 587022019 700014519 1059277393 1000002763 170286788 843880410 465618509 493700554 388081261 297425489 315155580 209460436 260202279 1007047716 858859604 875984885 191752112 666573918 271391850 608512018 304122711 779219611 978034523 402482865 739670006 267394376 648844376 220567259 154606332 133513233 388596836 348425139 439320844 259760463 692453974 923847927 621239416 153186657 477760094 686668361 674490984 746158632 917563489 958309404 801282499 1019326434 906392086 696100263 69761669 898099940 936143557 140017115 874475327 138459120 679811040 1023058593 609643034 466838994 84817148 456723620 764471200 78627680 186443702 683835317 1044557170 438417109 183439623 267502124 161134795 132192407 526072678 163563487 36996676 661359184 389651681 69469816 749441680 473096216 66139696 275752721 140500175 563854694 892141583 330383162 22642352 714771256 808043532 395820466 419251454 398812799 1060322817 896488231 701714324 196406883 725100475 1024566555 452870591 267840684 820292127 648033282 458629692 237838492 55901618 741277057 568109775 492737468 514947862 893074497 709640604 426737392 650795975 643372228 117572858 835794410 1064897022 774871400 412545033 279966661 972644996 16938833 661776880 578838024 916578104 806558737 450557981 505210902 646422245 842439327 1060425993 450244637 250542092 776047883 222379786 372077245 964093691 641570415 202890054 625049166 1060284011 370519811 162870607 972778323 773699087 643973379 206668682 451532134 799926627 1023289042 979668387 391248281 327449128 679449029 728937903 578218248 634186099 813368011 447456949 536750143 1030856684 546352907 397776966 402300004 686763415 664822286 75375178 232960421 554628198 316906360 22718792 545505015 287545166 341652605 305405125 236703406 1022875199 332799563 725435898 852411415 606897750 566090169 317509137 728848800 34345639 6625648 1068019516 460677872 919743030 534712468 903189810 1030329748 612982701 298756737 565545567 937401382 819367243 478212634 809921288 356117676 283261404 187791010 133208354 302684445 734156337 485076896 172380531 525629571 852002569 522112284 1024803555 129782444 203057439 684616090 654728314 629191251 320797512 627396733 221273718 347997704 1046582743 461715336 947945406 547276088 66182599 1073560249 866307729 763304755 463844083 74116657 1064996666 561076265 421463542 583668809 758310539 80044981 716074302 302035504 190234375 198363278 1067424440 464013277 168754110 383248215 94216819 365985872 545322431 715477087 417172518 52725268 570370198 432157869 532214198 902641455 118681426 815665789 705355215 214752282 14792246 2864991 444675016 826395469 627088609 355159101 1035050994 720788392 476376443 252265701 434602458 1029625342 748499057 652403264 630050996 148389086 408324043 259090745 547465777 951545749 84979791 1029174241 554914571 404592461 994705832 991569678 338629286 882952504 908217559 258196574 112387385 347106474 1035173243 1025826291 883291499 217690268 971867351 467322127 872330436 1065371213 970402862 580667630 562352366 869582450 928288269 347352219 1020740978 503575855 375496233 393099911 143549849 604595917 928971341 1052720748 769742181 908728265 942933849 234522060 1020986226 968159008 29818770 613329697 84882421 555825695 941404001 941595811 900239518 331300541 501474134 544889264 287053981 875489550 307377700 461263048 562196791 476475030 976822912 700670860 831664748 1047674596 827098139 988643647 472318635 5594451 502667437 942030665 126517005 2199038 783054564 749684427 706718893 248330372 285273560 1032587858 648254971 102821752 766411512 376327579 255138939 991239021 620778532 332253643 462475960 928575534 1060824434 576795829 754469323 598432347 1028956252 751858551 196278191 614620784 159995983 600651424 322223636 1065125413 333009806 808008812 850752023 25987738 48725883 571044519 187381155 799356371 806389227 276284323 1057164090 749214056 150167377 504503107 378289063 611832501 681464153 727367915 585124325 293989229 579951045 327735289 700628604 1002196915 387478276 675346953 371131249 615799755 657726452 830125505 777894818 1025886392 613800038 92255789 546145167 729446182 306795741 960443595 568765843 413662076 233657647 462543309 131627689 815808424 1025678370 3866506 874345490 487215180 312401944 671163661 885158175 511977991 499217425 665702964 100375761 95127108 1008071033 74334501 876938669 894863873 995646758 741056248 547056050 1064658056 760952473 328938368 694357047 258390272 978352885 686605141 27103985 83221935 366569970 695184672 665639701 128895820 550477474 503313968 883910755 891475738 251410654 304273460 1066015930 643060389 966523206 822025611 468591303 941764251 867309193 185673837 696015369 292769764 892203258 610938531 372662119 643793787 92054672 794743400 496448741 1068461329 825945737 545083026 349143582 826823625 984048724 506060982 462841192 485948843 1015785551 1059344128 1067295230 728843375 119923807 746863718 639904546 810921402 24586331 569623659 770173842 719820135 689873597 884962578 328619357 661136557 436739139 1028048182 205081871 403166723 99726874 381519552 77982149 191938424 841480052 716381533 863320778 523279941 1011335496 163320216 624317145 764262793 422929724 439636911 843237103 58134452 781797082 878381634 925776868 80368247 54229361 355327768 372451366 625155938 66942293 58409039 516382072 243689624 765143154 730055858 632688347 98563052 662593267 112267737 1058612803 595472303 452884484 59120033 832233553 964149073 500434213 497693651 122934863 64809208 986434351 816413068 381059563 408887690 979919802 43491458 465343317 975217102 586588023 217933436 760284939 629675038 634653175 144121988 187756720 531597267 821150275 1056427582 148496841 108676657 342118797 38211352 187810224 360527401 461159072 831535926 821172279 941291224 883542415 410405843 143058250 31782727 800347089 346641226 309784387 936194388 914237930 781585409 27321033 868134491 28905292 602875141 996602149 272143425 33137246 489194616 702491357 402588621 744550194 682058345 835849499 466597592 447647171 98824945 470197030 418707026 1003788318 852422016 773062739 656780762 402859097 944238191 3002653 129644418 1034798343 489045904 576399012 872748659 441536358 431146187 645231840 361769245 1058032813 225404596 546262930 889576715 615376261 1019739339 432454058 686911728 678294492 905908839 512162593 579967641 398338948 708272372 277196520 889403859 163536242 813753579 417422119 619633429 181805473 1043347002 251155847 610926475 503602800 612544031 489363785 842332698 632898329 73196198 622756268 685214899 195471246 1064986968 515040451 1032895517 61447585 441735389 869054926 33027250 342446092 739687320 497069253 346310519 395845250 1040420326 557297425 1048978974 858164788 272094870 517160480 236712638 749995530 503670700 920153514 29661794 480274307 367957084 921622264 108092771 802704667 238794822 293681871 939342107 261812217 1045971297 538068017 517825191 182331478 886310865 416177442 1049895411 158115740 798121292 391008209 387278418 572919221 577256778 778015425 420885134 1016962413 824227871 845394362 105982398 372132046 1018855525 128120964 121508478 1049377295 98568213 844104587 230782780 841875167 355094096 429115820 391876960 144241364 812969216 870948203 862020428 224743259 829335402 671520688 555942706 791597086 560103089 165531271 8695702 680369343 586309966 732441501 116351409 367695360 21931392 1070963940 465039013 352513204 709478623 881722931 403623127 1055683313 78750938 499341769 1069181403 363974107 380266376 364838366 603276277 987780570 995909024 288583473 122894380 6984835 968978760 835528746 906004040 342172078 143779958 448946324 160715806 46463064 191526975 409971552 735570344 477748918 1012188769 825131546 450913154 27205043 888944092 454350308 751420957 1056787960 781736459 640986644 826738289 240725540 19685657 1001754623 742789306 170943059 157476802 556730437 201982855 855184255 975190989 627279075 958696030 229219924 441642014 759814907 764740048 401556038 625485965 540743793 3411750 754909869 962752757 494029789 928471804 627299006 864682298 342783914 529489134 389688642 215384546 355007213 248334744 789472045 44788550 1009904975 844197290 1029180614 559973498 1052642232 508649607 36207395 324167261 368795208 770183441 580182605 441022887 1004106825 932123669 958368502 496497802 1031136003 1065626260 965866562 400678911 949735782 376382113 343494310 477985302 614080056 439711333 312417592 215735310 932954142 54614899 517385877 167350475 987448580 965961515 475396115 925132483 814017180 873296261 155536993 201070801 854744901 766617084 135307146 304768892 208716837 810308036 876550671 276938024 708493470 786041422 929669779 163359614 519300183 92019899 1011029238 203410375 827344627 14017965 1018779641 730663024 531544808 178873044 151754022 450290844 401773111 45186445 969397916 548171244 815494620 1032214605 246676487 141929670 680271022 964771422 887641480 936915023 1005639405 636834023 339458330 291203236 225302973 646905846 1019799431 698918567 660049742 1018529115 25281605 280134675 194151418 779639110 227408398 730302691 829085175 784497102 783575536 33642598 745437235 558901830 320425144 445610170 773806411 821783212 941500931 710378712 1039903455 390615928 419228582 228635768 859670074 739646934 128195983 359702593 275774824 522631386 782386188 166376459 150761397 952585143 85873033 861521335 414260241 42316062 620100522 985839427 558139957 405549864 227948539 261132743 401037734 739450280 33524780 673929936 111984363 323703729 597504235 842893669 204089541 161351670 407823712 452837604 288359967 905717677 976594673 917646435 188259899 416411778 595292677 120998257 169153800 510331351 159253570 365955937 713876567 923054609 733707059 539393210 210010884 132127288 446518931 716459329 488787924 327900400 514315083 534926126 1005709421 583541020 1035069329 16190539 681957545 687629165 534094223 320481876 812776034 754585611 180286771 497620080 503853349 302641991 388914954 348806211 371818125 900284710 534206386 764258275 375641406 702647448 952268170 885106815 70937502 673019372 789304140 170433630 208638471 24119871 487255808 665897258 450235395 133465047 305169881 512192128 418212589 645537483 827953986 142481814 310514193 91956975 817346987 103458797 692683027 341593912 725388525 838288644 65876078 6184870 737954366 213146055 639703936 798417421 467540144 77850307 782462781 602107367 904573 861126021 407998849 629958568 490303712 781407328 474886277 347943077 87383497 341699567 1021969595 92383580 11705415 546267053 970803689 163370392 500573366 491716041 3011452 536863422 747845398 370184495 422472585 631072301 319683051 920670614 1032061875 916192246 290891669 489378028 665314473 523885542 913450309 550789336 412802745 282014209 222632705 955255237 350909294 507886247 224748942 679156444 1044652646 772817036 839469081 560855814 444619017 809131072 722862205 591701302 388559253 483814325 823578069 281860909 799187803 509381118 268896118 1043276825 326027185 371434694 418124647 626392247 400575332 335173054 432613246 283877625 708461965 230634536 13139807 146316595 816213495 940686551 941430622 908753812 851485687 215086185 795203366 58328895 484660271 893624841 210893934 600176311 486196531 42934692 889572072 403538850 826234791 270771904 640964126 679914054 232863655 208990058 1049480845 705621213 382713674 587250478 698391213 318293815 48814196 832942536 960760127 394864801 584831314 345797669 511662191 499252598 803024400 3652739 758536947 113566477 208339060 107959708 381507959 431709420 746655843 62582551 328503457 390176020 829180179 82772776 270574339 658304563 180534506 81282418 1056882151 910191652 229994685 34036368 418551799 128361309 583121435 719206982 12947090 275553885 542362894 826610954 879231468 139619771 191469484 1032426176 349161048 462714393 756655899 870897961 354461474 998656111 225581663 759924617 854801120 263633701 1009458544 712279381 318708995 256444211 398904720 390909667 548164589 186791889 875713115 155165114 847459719 1016464620 579411945 181425119 955303545 76220875 148816952 562593698 54498476 840319969 25943411 566443729 859386792 311871880 554548786 14423125 92974354 81088123 642172654 431683155 273651398 628695621 40297483 400690713 584147230 477305644 868203240 1033187079 320080997 911574756 354556397 183215764 213477559 534412837 649570387 248463896 95398774 156630720 21535864 706194843 85993089 868488846 383644377 46923729 738732079 429029787 85985156 736022616 440221799 869926651 941005962 155629905 211698919 547557811 578336916 801863831 100020217 739723087 1059683869 291891515 947691547 33526101 641864532 194238950 682266253 491744498 550456935 617065633 32216878 834040343 658539820 547886700 341461801 226285957 780334192 747295340 19493453 70077947 823650096 178646697 1063260316 512729962 153524189 727046039 108677447 678864591 828545943 863218731 7088564 326989043 492685578 1044274476 859981792 891395884 400313784 989252765 32961162 672506859 186282019 554614436 1001081098 671727141 1057174060 384937853 44299319 371765634 354731108 116725103 853611961 70280264 1041254609 758038518 65880352 775093584 378001053 907395872 73621204 934187758 735520175 588240 534557161 118966414 314373551 769264546 220758428 458057896 174249821 289925601 626790207 928870290 404417073 566398747 386182729 826121709 581983420 6162584 138741993 644086402 1027764235 159383426 610325890 1064919158 425698670 433634995 391664840 2743227 138897939 958162998 214090376 57298527 707924305 557148645 201188292 715368106 1023325770 846274263 1044820896 1061305397 917669378 315325568 581158447 1036709952 292488592 142427495 943180589 814163045 587225973 786722109 461902295 944397902 821855559 507999428 616447186 816204018 473517546 972164027 940004748 481675545 285571042 779493270 606818817 37389409 316708063 335912265 196193172 493058878 337238209 329419146 772574582 863373493 522108654 983134104 414483371 758315089 938773600 270955286 288612194 589439291 509476489 164306731 989015433 655792221 815444122 157582254 94826546 279640498 202731221 863327567 542661731 400909629 157347164 779601608 41734046 224827741 637286852 286879130 822739498 630417105 882345350 438643704 468256796 547252962 270503709 222573609 48198177 463900353 882677365 533416814 751110572 881166616 726060828 512312918 366878034 261672339 432805733 831420948 888089366 959210985 812209646 997005050 491185290 215771493 1004774693 46650443 849282504 24083741 22579106 310993347 925575351 482659080 462346839 694912180 4615899 78983271 794800734 502759877 449468934 429264573 345578368 394531419 870011222 779036839 842813625 297300221 998308835 800187947 343866647 770502445 18183062 905708269 781216820 1046777190 1002667269 412557568 641450388 376978933 450147085 111357721 989788062 233105041 1021404614 1005370399 1034497895 320827284 615912702 174708385 67540936 1036408759 32551568 129890851 401784834 421695291 571377304 141925038 425767962 613649059 425690205 224619431 957157787 1026837803 878536598 909765791 679250236 582276474 690288125 217812108 42919697 937251063 421608512 584762045 634221703 694452807 513234744 837245856 856149595 351664537 1032007664 562423396 66391521 413572643 899298651 86163510 955881254 993119537 125480246 836929266 918416227 234940194 314556375 596412370 615178693 503340281 35519934 295638926 78007974 989000147 246274988 936641622 982265623 310181467 408714453 917379507 422772608 843232524 750026862 609008857 178543150 379357957 144597398 42721672 1064709474 900174012 149654781 339772766 989753558 174151520 912856549 456840716 740437920 207264713 66923949 1006047363 763912448 701512839 586609454 1052530084 363700855 300076477 842929956 823700338 880754910 87177033 188245778 172642370 954276760 1045911835 754540556 152775246 66990031 115322935 414031716 459565765 76911143 187266533 662015181 280256987 644215458 458400638 1054661595 367021109 743378973 610858294 26023727 93341129 680439647 188681990 168635638 766934549 743706866 507221865 60033434 305753348 95661218 1063824918 35654805 83278036 692259260 1010107002 987631939 327218679 220705688 506063871 776411644 852934013 813844904 932154042 349305763 807102268 806728395 324176128 813202089 76024110 511719675 131804075 923726448 877862249 1042724034 662739240 460254150 643630147 305981693 171303411 969744817 845566853 433556134 731301875 929687823 604005967 328529879 633461643 887579645 791831934 149009678 372292620 223043105 780944440 463109151 480913277 1043130173 1049467241 180498125 921418797 705919056 850741973 448307610 193758508 602066630 751095240 863380477 313967339 797708641 205841709 57049921 693296630 444459493 566600269 486805271 431890481 800170526 38747541 926069921 860136172 230875672 770392350 339260225 160052042 146861790 297008183 865615011 478565640 294337303 346724440 551016735 964935885 132516116 217564696 168833211 378165732 677640513 983547322 31136717 274910649 1063140769 751113625 1000993738 412336809 797141860 37504000 720396856 556262292 783677700 310864513 651958037 428482723 883773065 681423021 1026444583 960789984 986736620 330547541 745582106 543659686 616225430 8371129 363029502 830222121 81520423 634641571 600172964 876666864 917408961 860403783 160087808 891121537 57248468 748372450 1028357508 954398495 124150505 979462778 587686583 43195334 669250502 800536306 549148679 486404075 1053192613 647166595 884058620 9103760 111245491 456630412 653851878 10833180 29193531 946446656 123450749 439621412 1037847721 526950694 185502282 350634584 661880663 802168887 1055800576 375627781 840405737 401468968 396598374 996862657 866140615 872857739 819359226 797068112 395889316 362467584 668679905 998068181 1051029410 667630509 784570905 485796737 559498210 535804073 826173838 338766755 1015071595 392458935 764950303 134406133 555177289 457721887 466624085 524650075 1021625943 458759713 841199429 116188101 686152943 828263389 602972693 407769719 990546067 875542786 884899248 722723644 674006094 603105696 1051008547 492270018 868440037 930662357 748580394 720394875 1002439078 909006503 13471514 1050369500 134429449 777855270 983372999 336825370 602199609 574284936 1068073702 846748428 1066308750 933617605 984750904 820597479 395124098 362915741 169932457 810155940 840717081 290606662 405281146 518704885 238337059 888996022 499644431 513120713 925237922 1022535224 769021202 471275122 435477148 385987177 489555021 251768519 1048414960 809307162 484685599 63302268 164546502 771571354 148811569 204813869 268012010 664939728 823504425 747305153 972092075 372830663 667174942 700093695 1071226841 73523159 693636013 448082737 665183727 723503633 702845888 1017455208 636204106 179201116 275057745 934722015 542077804 330574765 180611157 424503908 503411487 119992599 557973717 607343226 450386673 95912519 665593292 237233950 345571881 873511673 591369443 430380661 664858854 12011069 187323503 813820099 342204085 948351875 408618876 193480288 724169913 856643067 155864957 993442354 333725680 201939383 877994477 680368952 210110031 456224043 506642596 377651870 907965944 548173732 60728415 268549163 1022351376 1004843558 363772831 277044074 17462897 649918140 313019535 336486338 162849122 342909392 592633143 9608793 870899109 767615792 28788435 1062753442 371055179 545591329 1002708334 415844756 1035811147 158809881 516115050 446269892 960061972 1014479803 769943014 10919900 801579558 344639130 132465670 159966508 586860712 209740827 738476222 429538424 117430239 447977321 572209790 194863094 1025191884 531594313 953064989 925821859 465316937 548618625 454859639 253411074 141843308 1048362675 467185601 16522271 1005470841 203509694 530232302 639754931 881800834 439137719 936370547 33399705 722046235 267436007 938059687 569777125 883601664 892771882 996844967 981791650 664962167 921926029 889721190 114659380 394335219 683606801 1049760272 11776115 127526094 683129924 721364554 291790468 101599531 848136662 656150119 956762105 696982600 369846313 977742657 1012586465 452705678 978627422 57215639 986260400 1044328341 391113953 494638278 108418881 252997020 470098459 39321126 580412020 510453333 341727047 972872020 455912669 618591382 623853840 655665478 1065054105 1000016576 295459954 704059268 612164041 946797211 984321418 747882354 105306942 216537560 600524838 638479039 795770371 624051945 955858057 323548364 978619355 67631983 100823067 720772703 293365716 826023822 176447 567290516 438089745 23240436 391906538 851089908 221742675 336775784 159164676 850012809 186571663 257484583 962208766 810329001 432597648 1030406436 168415510 258441084 47249992 904482811 133493544 594709897 401977218 700703719 865998344 224142082 63606476 64416535 668204302 80498777 589082397 832855709 679842222 417526551 218759993 688185994 722809291 921527532 356917776 1030924497 729006950 241715287 732635157 408163682 466045277 248636858 248367150 460471247 195878217 1040363847 798743809 870998943 1061166367 244954254 26095032 348315694 777275767 404279657 128917038 283084023 754453446 318821344 893988113 785538352 1000157874 250820622 703560771 1058124286 674362733 459703206 2337020 212592088 309327073 129028593 344902441 675685095 353227643 284880948 712500494 696530938 952356459 838972867 49724907 137214012 684611296 311754011 784483769 544992883 804412327 816230057 158725609 60151209 960575105 537908463 330798820 400678194 931987411 192087226 811940908 589708488 1046208031 210414362 313662389 339854449 673593040 815457696 675890977 917103499 266212520 639869275 876768601 145021022 390079240 839637205 578067677 169634877 700695466 521255870 930248294 35101479 287594598 662099770 662255013 79821095 640905977 215387616 122976257 401094444 14099004 335853953 337751485 316156744 1048783164 23919908 248765726 1069837457 237102975 229230033 327760475 55563540 712472535 139483280 697826188 98449547 161451955 1063607616 68604653 265988821 587861220 177263021 707525025 300656553 423629700 457319723 714014375 29582790 487974967 866743630 1069242507 353831974 350542022 781856889 596018530 670499982 73712782 152252343 902897420 360430851 697672354 1008931612 746335958 733096969 223358237 593435935 1005414279 670512400 631823978 525786444 190405352 551216245 584693754 861854171 25713714 568572941 223545157 30258421 578742352 711322821 289291959 1011114453 537891861 185920835 182744757 785415153 263649118 321395739 439907381 509489997 550943661 622795235 556793732 189773113 828913298 225605802 99872152 365216686 704843247 511223247 891169793 78206704 1031320869 257644456 480922761 405964519 561390449 228644934 115607708 245689788 497662556 344561419 490115080 902504133 80239702 513776363 1001069283 398830629 1046597481 379258832 695370565 322891433 560632157 807330983 590575290 422299199 1055240606 904464950 343646001 955627420 1072511490 436870662 566397986 973768597 84270658 856121961 457117864 389680433 338543323 143716781 236237934 684832456 305033683 435862477 633259347 531493016 758786165 276524903 821451425 33211064 885440547 7317382 904957302 929753703 221672323 467967882 421253889 172869254 597102800 653879247 707371986 290914972 71058814 603066816 310362524 352193763 812324597 357483583 872416520 17887747 591588254 456790389 564871618 699436673 501853796 177154390 989717666 3196981 842119016 1008520621 424780631 550691687 241926541 741173307 857370656 163478701 5663185 481798578 663759434 786062879 680002364 714365790 784262601 916539177 597879316 853839992 182670200 138353900 554211870 166273129 855836256 77700157 1005386491 293760209 751512469 836140991 1002416248 31657728 761430499 115534733 774263192 528608974 872952730 270827386 317362984 836912779 829700385 349324776 83546098 4796345 192885529 649852253 264529162 48072849 405046008 528151867 418882449 289153548 254234716 769420684 718383558 269556255 1048317141 899543499 740833718 83368991 578124544 396146546 740095298 433536703 332575140 102767003 548210589 805766247 754244387 283060756 646132817 592089542 1034470444 201126676 871171055 581931244 710828058 413757893 183915928 1006783328 108496762 791088858 254185178 471107193 1023536310 932527817 443856292 374023199 248208317 653707528 98164238 255305230 507096769 1048700841 968609703 111905818 332812305 912331616 823200450 484465334 678295898 1014815539 390369546 166230240 232276351 775943999 213084582 1018719279 821612891 729012939 388391792 532413985 510723720 869458594 615700633 353610108 510318548 4572804 494424071 284314728 26008864 532426703 250859229 381466361 156962936 190655100 157949664 8037638 446881012 156837916 359252643 62327779 897056324 821742638 564840283 470930392 666273739 246817509 248107057 546859785 568243230 986503050 1009613594 810929090 464049441 738521757 815639833 1045307589 149251639 930637155 579213240 811416061 873470168 489611747 717913591 260859924 915013326 350201139 662000004 438647739 281457817 765058764 717329144 137336151 830805370 250832250 1024346247 812250632 70598397 493448400 818844120 299104175 383467168 164587583 411243439 257757934 355106175 1058173962 476416612 668520572 331552592 887501545 629625122 713883421 593475988 771972013 112857217 46517404 846653008 819816934 775439283 260052904 502276405 161064989 992832835 494363117 854614890 23321374 31605143 953861618 758627509 412465304 634798637 471342797 121174709 541635683 43583432 7724207 931621098 673287256 131445555 629494900 39961643 756844481 1070865618 1044286503 186740310 95219380 723289134 201645853 767806374 836078135 213461850 745744052 438478378 797448790 899131156 860395437 73462492 381251035 113760537 656485241 427860156 970841057 319566508 427862485 543191943 419364193 502043949 605698102 1007833696 368174325 37601549 541845195 633121105 826378721 749071592 543831306 680912616 733316875 41466104 772158672 138007612 495917687 292423115 838745612 121884064 690493133 661687070 148645464 468317460 661891231 836913191 431122173 525544595 891199752 405084522 279059080 587088737 54817724 1073429961 753871520 358806485 851974375 635248694 1066406902 294355259 1023043857 742379937 302948718 467964514 952708592 471031366 336425108 793638021 947472031 911271969 176715867 188119874 436013604 845934454 709809483 198534212 158633735 337120341 533913133 404050828 633800123 177324600 592262754 811443114 1006868117 732826769 451568092 85997899 1026103619 398500092 729618613 996683968 576726242 457827401 770332068 283403154 659383025 750117202 878487413 805491844 165202207 594880013 685195106 396377469 970546086 286330614 724375487 765324932 237526649 563921048 333005565 923769363 283001154 638281976 952167792 777352552 600688300 737931914 632793733 307283666 615735634 566416733 322365268 444098984 656473940 141203254 947547372 586717846 499424695 277002482 697980104 67105710 805260648 178692071 163705320 686687791 618499726 206676817 933514797 759160359 919068004 669292197 477124623 826617593 1031815004 645435787 552884284 136745817 899869622 611349136 1016420145 812969889 865713466 770672020 161208090 822135867 407040355 825623838 25266091 707165853 533212761 624841025 814215968 273620013 477873958 597181080 316024429 703538970 512067588 962960592 421112957 1025596657 792876281 773812777 322228161 305710734 85001741 936541963 901021374 768268319 211339391 737926167 344644874 1041529659 993909505 374490029 281001792 1017998636 705737445 472156078 382518417 389951472 417832752 202269862 22830873 827033155 838339846 195547055 449481027 675946454 835357316 279950764 984718984 1052191031 1008652918 429027503 734207791 317411681 1006001956 550822839 547146114 780767501 435867278 461509631 410503180 456148987 366474301 337848287 276982129 182479785 1025663172 783937977 1009543468 796513620 954870163 651544511 471850743 355297797 1000497896 239541695 1050210045 980289776 1065371088 295213461 197930797 126440063 582880652 910567331 950079233 604217704 382442421 527799759 584958764 617177735 1018231102 33352675 1048321258 482710311 668973691 275099986 962658392 116146960 231494651 236425425 166772252 934370544 58947366 226454173 521646401 437102200 891230591 766997245 646478629 460371882 660887487 797981289 282783454 800689463 397836681 500645835 245756740 477032702 345338543 465267686 1038498804 917073528 645828764 381856987 438686620 652491380 588954993 55247098 385862301 867905398 147837073 717631768 242834446 561489099 157009876 803983371 523428614 857580559 964879060 666256154 671927667 286579760 155498760 679692429 61958033 388014783 209698446 357561594 245880028 16313586 693647661 459648296 954766795 532622596 122808927 500323835 188210046 963393980 252628658 139039671 617416726 584613869 645634699 251611613 1061368741 137680744 134201802 724358471 739789850 79419035 1003185145 518128945 112184127 103582655 92965415 387991733 560085374 175022068 303793529 205018663 736493513 458047797 743942158 640854320 759637025 652342935 659115585 36626591 932844699 191989816 203504060 9008732 189991158 956914356 507089865 227740052 1005021971 724428054 782799717 1030941884 1068939214 237644806 320885547 357219848 814615671 905437018 10988713 1013976228 232694824 639267510 673287612 967930076 601651870 976648229 167059355 661065772 633888573 448268942 775963243 963202242 627379317 255147944 821010554 319406712 636074954 283424964 401533341 355480012 12547843 897599149 299225907 84909633 236635201 429754534 549359995 349725725 587214640 943890220 900318254 379856111 727019559 650928266 446415384 252041852 614685845 416680989 414214263 647295558 990156615 113762956 404596567 484719728 345891844 222225002 1012176190 93308748 386067343 140479346 1017362440 834636472 356564326 97719892 481515291 771545682 995380079 721482589 421093964 718021472 765814651 967598595 360916600 62745724 569353599 177855345 1061841003 1008321115 236573966 92842651 1064959607 154376953 26051771 705818808 877858303 754045701 1024859895 6262239 692190775 237487997 736045022 980869966 980741011 726426585 1019831229 913154091 487912534 979121413 745318688 109544465 277928529 534647572 690261581 131807382 216545696 893374999 1005349930 846111622 288432468 221485757 193216443 1066663825 856928424 602321506 143075749 803736055 767019615 983416331 119024875 625297992 727062256 114784929 417133886 769847189 980447583 753093810 490619925 980648419 385129555 405002825 719605953 430435450 325614232 470582151 298825355 255667292 173439468 488429340 437771016 682184394 720329144 171326435 283807942 937600134 588728791 179537330 761230149 675269569 184604028 198964403 46747666 200636384 186231246 1025575672 250220967 908993640 943517544 422741841 255213139 353491196 466946585 181293473 412180514 828543427 1008587944 635942726 467805098 1036124655 224760182 750971166 207969545 188979091 763081759 652040144 135437234 816164264 138956139 777392203 294183561 550574104 817713873 1063897239 253614898 848567625 132879243 472766527 1046018815 14000476 591646671 272035958 850050546 329080868 593010279 565132187 164244993 439741556 1011340215 188838727 349135155 687217880 899272784 554125422 208061768 1042546675 486700707 89043072 988120616 399212571 613859070 297146822 109697456 861370076 474633682 13874637 783593190 975066275 162151514 750536396 144097102 154331097 651937050 638546616 377969311 216159720 564912989 130266869 263064063 1063470179 338046798 1069576495 186231106 641003689 646128436 276849313 305998394 942529553 261357950 366879397 817629868 543070599 255147658 71816734 754375571 1044774127 1053130872 504252904 649673096 57559629 73496692 701380663 888499921 277750195 1059306229 385172431 913965517 296881510 445219246 734189067 178840234 138796831 227183815 86759830 493192255 521716106 516763355 975454193 7064141 987854317 768860881 177424112 601215107 1045667575 1044430411 386283890 85261830 212483696 648840752 542699526 1043643633 585455937 4114252 621836952 742848388 803174534 706994081 203771196 510673543 57561120 27805418 843502463 15263109 113395306 51968178 561685566 177261739 119529337 273102961 623660133 939998550 987343622 853718745 349614777 262113860 1057901291 47483131 988931726 148454276 896104281 588551320 960871042 981203912 959560902 768278376 253535808 191565991 971345805 572933232 814243091 713466801 1049028600 37077812 962795749 70443793 82120956 602173216 402748054 670875931 944796233 484385382 697266492 709712509 741686418 80719916 560567919 911954884 336275915 699934510 127910678 895262617 142299714 878212469 715276114 698908624 50128018 789565849 266198822 590167258 490454708 27206538 564540606 521797341 1018173896 292508109 313125258 760048064 304212366 863653282 363268288 1013692776 704525673 165947961 430813078 126074734 966101075 38203383 256021344 365934630 504195345 465363084 837049764 662122627 1006762454 109151702 739002760 164849618 489448975 1035601184 11613796 93314799 996287035 724683041 39220205 596211449 449746958 194304023 76228718 287263891 209046220 38974140 845687160 726309416 382825732 926653975 872652798 1063014017 958162998 377181044 449379819 248602099 43751126 870324438 91474415 88436826 667278817 735293935 869440995 998563973 257467878 633096048 867930507 972287748 602875808 858653537 821433021 501464421 512155568 1024067361 583063960 405290593 598110759 796490666 928219293 1070460550 827583086 224957336 1048157696 1067331439 1010403459 451666702 997272666 52310772 875965003 983655694 613201506 550566832 165108626 131224370 520857086 417381073 982953877 433172665 225003582 654718073 577777178 580063186 125655570 877529478 676435804 576953740 927186791 318562489 704991834 288454447 694457099 648705870 287039478 104045119 498311727 102530450 35181312 903518134 1025720668 1032909427 344033663 387766407 624315947 402415733 871682660 75947247 307016423 676732907 697261009 751247803 27986972 340567978 911492641 1032442883 252951943 432939564 148554167 252988724 153672425 456062132 248184038 5542145 62112676 385922357 1058759415 880122362 759098081 349261522 213019600 478481970 997867226 507187614 358626665 557503581 260298252 521845298 791179635 310131739 990323229 756281195 204481967 627893202 481970431 388117166 809468349 716562536 981454220 44873182 956702841 256441740 894277287 188667852 224180958 694213146 604535 540442046 518740074 986175350 363119734 777306972 572989101 128181550 592412052 501348372 803902312 306504366 833347499 1017826351 540211484 55682396 834091150 159498426 68081199 808785450 131591813 298689493 801023175 180865291 895267852 238100682 394497438 338171341 264965766 289225901 854248402 1014112100 283423916 74264330 993625070 502198761 827874897 406229246 138430000 807361966 485850139 647108610 340156127 1042718756 87832392 578546179 527017138 474953161 782526207 871076030 849414741 366847993 333518220 417894830 922466366 890006326 293010420 744170232 196472557 781304713 631544968 690969482 463378838 594997912 476890417 690477214 913605451 545033236 467038565 42783352 390978619 465135472 569867705 297185673 493336583 580288897 604115163 895266829 633543670 1054053757 605509665 878300824 546368962 974601696 691500616 232227476 816538809 44521013 848899490 876275324 616636530 475649618 664764710 190818493 894780796 649549291 927536856 578065678 348235586 434964390 60319871 803813699 514193985 458392930 27008182 69685190 284930193 841149267 937969644 919668530 855173921 335417329 637627809 921832621 122261963 523243831 501452977 696325624 646121829 469082352 192607616 975345847 684560970 78330690 42355403 250947838 652374902 754120008 15877267 191741767 601293699 146399802 297422081 278326033 426701210 466122878 90563605 588090522 729191914 798256882 698387160 391656880 1014941761 506905145 512130045 123279295 408181779 842224209 1052600141 207802564 957524116 714533487 700131098 206807702 583265963 615645698 277524534 304372349 513975110 133788861 160718514 856592552 163053131 544031836 638901046 793464240 960546419 1000193455 743124524 978201591 1015574713 274175125 768944125 624737982 513565426 419955117 503655744 2161333 855257998 968867648 442156234 450042847 169158897 485707734 594985728 383203583 383216704 250821829 1019937347 972535794 42100998 1000895541 500042903 1067503882 215038275 367578138 513316581 525090907 748873304 441504191 422492298 308592301 556907702 971725525 822769741 811334351 732860912 596996698 352978678 587593416 523325815 691822399 716768153 181092749 178812063 142221333 822988490 25634953 207564004 538289513 350268575 268836109 725555208 762463198 455446076 224974127 888366926 41877824 33895316 446334226 744701278 320072718 517568754 392626994 582007709 513356227 826884130 63414554 342377524 540894702 1048546246 232086670 440289515 192478466 654012114 1032874536 276856790 757064608 740691107 639440994 752512053 376895593 933585876 522941539 54785225 473488762 515271245 349779840 776227917 700333106 81389945 6239476 128328682 634759630 4553343 940791706 948518815 251845983 529605697 687954211 390563067 934161331 460398474 1044158874 445003276 332623575 518669700 438737557 401429975 829529641 412799049 1052846768 761566416 276536346 923299963 780428439 631440488 1007968080 591980585 533564244 187297271 323200064 438957225 804917212 45656186 473781442 904368430 52245310 216657292 983727764 649069411 165649925 547984175 429662037 258149538 761643997 20347167 17674752 957117109 883246754 316776990 735020861 566561176 404030288 189848005 496526039 591924105 567649041 264135643 111538358 7053957 11934020 35704790 879269315 702386961 653628501 927734810 30219031 441510352 915687221 558059135 131469302 219429074 186047959 37628711 898869101 619992953 434268471 503572918 3039864 250433696 1035860075 242799208 419698273 610129294 180337616 684168845 757783779 682819396 304940815 1046271273 481054070 396051156 658692965 992387673 677170826 665283569 388752662 878538989 246120622 157174392 133429416 908802960 400106997 164629359 105942630 2037440 962824420 68512240 833799766 528499920 672168180 236531124 371114521 648932036 998384730 1066455137 623034891 190377137 752713992 181727636 133894666 650283779 523058821 306943208 1002301871 91568797 541194761 814787429 258830199 724636429 732450625 159700412 756563978 193796859 1061281305 41610551 879611773 64687118 105669419 946266317 130937227 886864282 944244084 1036733558 584258590 631095386 810423977 806576316 554173074 317592390 25808612 381265981 707335726 130559957 292846183 12624710 290835444 68352692 10415410 1061124625 786097163 381698462 634582271 733421005 450611594 687012539 914814814 110497247 539465747 324386246 974505441 671646121 252705190 1008158208 312842400 295550059 608566887 1022805378 992216484 655592624 980794540 54144085 651756405 572324392 330537985 343657475 633622873 110371940 183904524 690277524 194561353 76674139 150820818 345029407 817531218 185454280 526691293 740510729 265058165 579826513 681135796 302706715 853768494 647032694 1052453193 265775636 802819105 409800087 345836872 709879454 742907223 730391652 508184381 650297204 197229268 580806559 588444926 632086230 780432331 904149057 626842860 762726190 423731158 529444065 481625808 337445340 335921024 711111236 984132791 1025726138 415890426 326769016 1014397786 979176236 80141623 383387800 728580009 967101183 1000030671 524790879 58272377 714318976 527885887 101442557 925761421 140417349 876514843 973066650 695237629 727544924 53577164 59931778 301850199 368723974 880704022 115580609 497245386 334091485 245859240 346035028 385644641 762318064 86767513 635270347 580993097 209595227 335385284 645647684 894639678 233815914 309120030 128373561 356155896 983124783 248418916 1007641731 466804659 535382917 47741901 947975063 520344576 415704705 618244369 394371744 534824502 601944513 132211383 486734727 100883645 274298630 533142899 837954524 957664024 370790760 59833275 70700524 930368701 750490030 996380836 579891684 236798439 1036341683 924047697 720836232 245892447 781601236 794464149 481246870 764103643 932812308 508520873 353338601 22623718 784161923 451360203 132967106 128355068 697392972 360066086 355579271 14093391 50531535 708863977 790909752 443754404 569079894 822580525 796305812 570696035 72377485 177767803 969306571 265613290 282193145 1036837139 537130745 827089981 121811913 313473931 454545011 834162187 728564248 3024456 924747102 1024332344 661165751 833454918 803626040 1073455886 241534435 558263203 163538876 205976072 195089651 619607793 353134117 482835086 27764221 445350277 643079530 1066074478 127248397 195765897 211110552 296631147 1002122391 526791584 836910966 877951882 857793773 239228469 377650620 138247705 293101529 449160955 775596428 1055691196 357372673 1037278644 621636250 95735804 1067531665 973852252 308767881 826090075 813927112 476803097 984227062 297309007 765481602 507149894 871807698 852031683 135664516 402188780 42978241 597066244 494650881 270624736 205153858 1035822186 267550017 915502153 484707550 938839287 1038312929 76701235 38959561 1050383851 404223737 45362379 704819213 45520302 977470719 706236303 820240723 322113729 33084649 343781510 182855105 689420044 76360489 24368887 949397443 305341703 353033606 151360134 499813017 604057554 934899757 126133657 787375875 540959304 179980228 1073633987 821512064 697804503 814901906 635288956 843051519 275952299 1066297571 980368723 50094848 209960814 272353764 1024929901 99135763 900313360 788772408 750568669 504031190 852783501 1014741327 704173040 735318703 71808695 514895893 1057756624 481063413 283816410 577962804 310932400 1041985000 859036156 605782756 102365200 76458737 382548608 752437065 315208628 891749902 942202005 82966989 563009700 344799322 1058930432 850875552 1063427912 797846901 541681962 864851694 141783498 1009397141 282243869 670076617 341725500 785265548 295347613 531962644 888740277 603625937 348929532 21785458 717769949 234611358 60023303 133333069 217919561 813556103 892223307 1046208954 786900049 856566229 535150345 567140752 628957348 548504232 970686375 349691164 477819245 680771670 1067633915 828766241 800817617 725054019 225816658 832859406 790262636 116296670 338268291 106423641 924733279 622679106 801203811 21391726 917821924 98859016 145655274 41131949 878868928 279968830 366524058 109266323 756788879 284412717 963315504 525775224 262287920 271221668 597083233 758797993 622859359 877089521 605576196 553885518 947588187 1049983528 512499540 11478174 866679729 86226919 670780465 566784769 802043240 148840934 250556009 16059938 273258011 260422472 983729357 348799639 475890588 160414263 374967984 525849074 159272684 211456301 714768824 94461220 627437688 84268076 515831247 621301173 171285655 870331317 140669464 7581867 294603396 869759912 712794703 28331890 428830886 216173635 316539970 469151115 640617566 843363399 194869060 715131926 453909380 272171686 249749168 684970008 170058342 747166154 464359012 582674955 317509263 710740326 297042191 1920765 289458028 988353618 59482290 813856270 29539949 943854677 282291156 664888325 525015925 4784854 743801694 199431713 442274263 524149594 357440951 326662238 649826641 510783366 189813481 668718312 1070361574 823835092 830859565 562034058 106513133 20301975 256008065 891409562 866998158 361629946 577413254 438970851 930735384 474082901 96709290 411918116 1012524742 729863917 300590387 330080458 1059104646 841512805 557472109 791772007 275012589 98827208 984440643 441014305 935363099 1005496403 607906068 234732178 279886001 313665647 978991631 295557817 638124851 774123074 654887857 1049336018 34562139 266436625 930574233 1012644740 653463571 874733309 679391460 404933107 388975935 463743056 472682674 46262879 683829501 156605623 198121155 777471933 999017481 143473561 431066375 763850016 112196268 364190077 681883757 104725746 425220185 307861696 468757170 434595289 1029213082 473658230 15066028 1011993729 1026195793 1020339948 260495450 277567778 582697097 544721719 295992289 549243091 623465422 300846654 96588228 206399169 56851216 386144868 154250349 29175631 711112145 693220751 843095176 770463852 166256782 289407377 856572530 163694215 746870864 436413507 661832224 857472889 355104415 396426227 614359273 766385454 787632571 1068428802 127120875 986353766 147967544 369516124 675368555 790728571 165439160 458649225 608634509 186421931 876505599 377977699 291220271 923760849 976867264 8761284 359393572 555745799 457617371 610139966 1071769300 563379617 833475246 268771766 513587752 681264008 560347348 248565681 577969569 104255441 478625474 228603381 783341507 122349093 876554308 249043346 279561137 61493443 265858282 358960552 271060817 313419683 37296720 41496998 1033810325 986210948 516298215 147166628 88931253 296040285 736522477 591960063 657951574 344980768 335052722 911371690 33411621 1056658496 255897817 693444060 241797198 269410261 839429355 830359892 935676719 830392588 26468536 160256109 844906603 441676785 805565241 401576192 450420814 150487794 87366872 58486167 606134690 587263556 424621675 603916923 795406106 703681181 841402690 164900458 344003176 593014180 286188584 590908667 97427072 947801830 127902474 232289342 1070906921 696897999 448530652 963979435 312485731 849445941 935192951 389726895 328424428 127789330 366481736 1014599003 919519963 364065824 799666172 707724876 674866609 399333652 282376029 422379069 181187284 141248029 383516047 522831601 305987348 303017181 587742569 1062568054 1030812477 853966268 926355027 554667571 124798144 609330827 776193177 967848270 991108011 640368108 230425409 475668899 76106016 137137961 1068254523 918352502 242551992 722897860 913506254 153370193 830901419 860774455 534364153 814755255 164696026 84448262 358098359 172802333 406347777 328372105 260458967 691195815 884219299 923611449 859550739 374140343 425567533 736503633 956930647 129223421 934909868 1015898774 484017632 25196961 543284096 762722256 112286307 287109575 529259983 563912794 640621282 446997731 772664673 70813710 90350609 929011061 368499997 423779816 719550642 1043527456 56795447 330524766 729334959 988435760 62668120 265856490 609483744 108817773 775985479 900670312 353128203 844224433 387675761 162585673 153154114 293793531 236491925 90182407 242679439 906907987 1010645659 5488003 30387418 738050341 357352490 142622965 414964590 794637102 327025497 751022560 777195443 239461937 63770162 169192076 752054658 894051996 994250592 437635194 440312102 934061513 765116093 954556168 493058567 198078460 121345653 626903038 209497673 170357435 862896251 912446406 246905196 799303861 71954367 327907261 670075131 467862628 901400835 489138376 916292635 699596986 524346900 199438882 723932860 1011078260 158225673 449904421 529276787 535613467 769074830 1028813924 413496943 821708862 179412200 684601453 1018178388 537062409 772410122 737217596 716560270 245282106 26714366 268987685 60852315 398312217 842699943 668282921 716798321 338541931 640056160 116644167 568125550 348863891 1069315264 161040752 299891838 215328665 368406837 490900011 983638445 716216861 1052988293 428150524 81196821 483352233 585592226 367291878 976911394 1018931890 976644265 329851896 544525797 485807331 1070041119 196490407 866088799 437862040 436177716 67639693 161593154 455596006 950454459 653917920 449579045 795541588 15335872 591411195 514092633 300031755 900527775 841916820 834042357 744086792 1046769842 692747909 681378702 984552876 149183989 746159508 1004811362 583230457 597185355 42702802 383371943 635295911 66547409 100424841 885914142 746958922 884809741 489567979 708319015 572726713 13269591 584876438 31527781 135712467 938940392 838450370 977338441 45120972 198752772 276241634 610910821 13382533 584815974 216974681 174712883 532362833 408192314 27943971 596926922 991028297 1013792008 348457825 142580066 636595089 732546090 40941355 461636179 634083978 282844373 1008448557 853985275 443590434 190089193 617501840 165700275 335601335 491047853 862686678 1009851185 826760622 808551260 760178682 280470682 292497850 310834424 507747375 722201716 691634948 405750105 231660507 1063076318 893738484 130351367 845502649 61327407 865261953 98331760 713264483 2649177 653854309 741555001 816424460 474745423 29641580 858860981 802690411 508251921 965288136 877649360 837525228 252125795 869478444 183501362 89858423 595820869 251989975 543524999 871185799 1023075299 880486990 342507431 613207458 80022771 288366111 625619813 930094522 221102814 264273836 213954298 368654402 366312004 304810025 264693508 897065282 186967923 195362235 67656444 717106834 933684731 155363566 39770724 291821557 863501523 1000577886 187970284 680805865 1047322059 822157328 810817993 844946209 627715648 1020942221 478355157 770722056 468534188 57822352 783304198 522103717 540745865 652599721 551847647 1062952086 28447544 5263558 644464660 96334779 638493685 478981389 930916769 749739344 53179473 357860279 511961189 704168544 46969763 576257328 925780538 838460484 175643916 930127820 594123026 144073894 61425318 189200912 380248919 660268736 723900212 645019552 599068506 198511685 728521467 509015468 406752432 391543383 674971829 557892687 762179896 99817450 420688838 501028985 962099946 657494569 900210144 950262546 822352053 11727849 572860284 612480519 592049651 893871398 1052213107 675259621 266507847 691541802 213022381 929025975 313708573 270412167 982324545 503218788 811708341 981406318 949923012 656864721 264517694 36327258 682783337 559780733 490827746 712574667 143932708 234424607 1007489543 73350541 561027551 423269330 193709322 7216796 179481824 712458426 924983906 234127957 848771760 895743080 837504583 720160070 32492944 344123320 172000370 434552106 106927754 493675091 9770422 25778702 1002618061 397123674 436475495 617702154 494626269 317965262 365371592 1014385738 225314295 940023418 132291234 265700722 679412890 702262643 543861248 446836544 404667979 1073520359 289672528 304891482 170174197 665072775 30526462 700787512 983065169 718398510 134965364 358689158 903502662 835020281 511117444 648565846 1069193753 192351678 724215108 417696865 367817869 700352920 614758924 698308483 178587663 765792850 361798341 1020742954 165030199 857659172 74321786 178425616 340901158 1030589201 398001886 691288578 1013334006 826175061 792870098 1041008832 161802522 722276536 471829304 1047630236 100499864 649789648 750466909 452811182 879169308 348066723 162455904 269272191 956067625 557673156 995773176 83134932 135511202 503506208 336363573 153281399 304180497 1063404180 301938138 863458346 16261448 567595449 258140709 696631222 475458993 393736399 39685826 473521553 347067150 7897420 527730696 768678974 705569601 206382563 503913812 168581572 949604467 863648813 783366200 735640913 282177475 23574532 304846401 509140675 593767208 144974626 436394674 272683081 890035053 1017864579 688749991 557263018 374529610 936183775 29211015 784455250 223045356 196405521 547355743 641188274 134069043 581817918 617222381 337163783 271230793 456590889 403877256 726138812 262026815 710623249 586487966 597331687 12200515 341772702 56267803 585664538 352066665 686332782 25756269 218846738 794047596 123443671 618192081 868117096 190995279 545334233 957490600 712870003 33777931 556968689 909321122 430168672 164674800 378266127 964399759 223927094 1051260681 101169278 307880658 197586825 910518994 457502128 27213934 289049449 843451568 66132474 516356941 771014306 272866537 163495890 320746695 862328688 188095368 925323138 252910351 381359162 905287397 82494728 354984663 236071246 924754562 398460261 910681712 367624173 672829101 990874579 952233047 691844202 1017075982 1042535034 883606505 707878480 616573670 433266260 610282404 676261973 633802666 812641478 301453101 82345904 811021637 696012659 857337182 329444191 397905965 764397456 248361994 676359650 192265225 734882074 311581858 758258776 400956208 481334022 308834304 765537558 888138791 251391620 325783815 328966968 354895370 472190012 702814154 190193850 410847712 956361620 1008353006 151787621 987665330 538778550 435165549 488498906 779401709 1010471032 10791672 675184267 14503110 687550727 174213879 374448696 118868576 670747704 296846800 514997285 141237424 43766419 600134014 289010630 501812291 343955641 323785832 25259123 383135614 492312848 121336750 709006071 668789355 841416759 526901340 602812004 1068718648 822480182 418404426 686954368 576102715 1025894487 262536222 451392299 1032046555 670635926 509668293 369731975 183591490 510098291 414359721 34785807 980201657 721198709 162963897 616714393 932307313 888140183 562787099 781784677 24238139 824246964 884658774 485143020 467271690 427333727 152814339 106511352 187066320 852978518 369095948 353498614 1033583052 164544386 90937401 447697378 119499714 534540814 906310904 408953882 374737298 1047681113 735469407 596556279 335056622 608313785 824844832 619321103 112330626 278917924 546589962 782112380 971022145 937172610 120363244 370169644 156586039 453990094 703438054 55170799 360105598 1047333328 280316418 807276275 755931438 853884210 649482951 120204839 136254312 598092765 126565305 140480426 429651169 518712899 786587324 224077283 164332375 530233466 197239214 575144867 360177635 879748885 426146907 549424319 973999126 201581624 336041643 984423356 498786012 983696656 153020391 241341904 916110939 1029436479 773541513 671491598 546263813 548628492 115347317 848777943 779729494 223458137 968014311 182566079 588672523 972521007 536471676 689476991 37045513 995736047 507300452 652589207 851310775 960941862 511920741 454086489 207230766 658801645 250089007 56305119 433951539 533593103 582546457 1024875738 1066371213 572407865 368121906 96915396 106340642 1003797437 731285087 664452928 869392061 440149323 649640157 100285427 822757299 323540317 917361286 1043506370 653997851 843172094 263244932 622387895 977157520 315815493 941262115 268157355 48365267 478957676 933454995 414779707 552334168 757368307 529629223 193666027 171347574 226489147 856100246 418693808 153171242 38253668 213327299 1014609115 601848797 192394812 518458996 295073321 704068074 12437734 257817226 561885378 589454557 626517346 736689993 892464692 744373632 986499829 478826461 125075366 200389151 544369807 627871809 306544622 834143638 1011630376 993122471 498231530 273996323 443881753 918820104 906957759 725075945 286316942 645364486 694755340 955680011 58507783 258154526 882657751 321450339 6343398 174505636 1070310974 913663124 240691730 269575102 786171027 479183530 255486463 387070530 536810917 1058164520 97462761 816109827 886552383 315254762 906261686 932884659 534224041 901153528 1013198835 518804456 860917084 355664787 228946499 168049949 68535048 587779031 44225094 859133230 165965672 495333383 846767110 153501682 455925919 543863505 524516125 473158841 697090220 1027048796 849943969 489291487 302736732 99166089 331037660 434177071 963847436 553530442 87068228 392366056 70193037 405805605 85010621 156948211 991819331 686952386 586359141 394509370 634205552 108167515 275755405 284680231 246172159 577204266 944302392 776671280 232297467 622357242 341854775 340534543 768231801 327159580 23159597 583956426 520749219 489479755 610820775 10783663 519979838 596863042 65365574 256551783 753914512 207643519 185512920 766104340 1026028636 896542487 94864248 655948217 275853279 439898697 998698562 216650461 481771106 358245452 881608725 568998438 41905271 822753718 572946652 64279913 469362792 1024606493 33461855 254776440 96873672 177210407 894080376 948642320 907625897 472970951 928325791 582877617 400262745 989773088 478211855 635930787 796538833 552566544 293234537 951370128 153137629 387683417 71624744 48270578 892846310 98513940 22770026 580914551 1012272265 783758458 358308509 801288945 883005260 420223320 931090358 199483081 325578832 670600535 669531595 302380621 702097162 1050090648 492726869 464294964 302763948 975958172 1037082045 630186562 566246299 724811054 745393412 708753537 166548320 199965300 671071902 585528651 215172899 136841796 500453927 426832796 443366475 558607956 875559912 1058689091 446713113 198026674 812716265 163837664 412250905 310830258 437342876 497599451 183780994 527690573 739321503 719976599 637094512 176192735 104340682 665047557 832444133 477070866 995436441 182273909 882021742 936178304 968862767 665881575 870934635 993464495 424661865 987880074 952504397 524901296 1021052568 729351601 280976489 320414236 426606890 36206815 411846775 576490514 569483251 406767066 442145582 962021249 35348822 2606435 703575526 600568292 658092406 990050967 414216643 657147155 971284383 445863832 801612452 628208203 1027260300 706918004 1030828378 942064791 891906107 756073944 926431422 607432950 673538657 118339099 725270726 185511797 870306180 229391232 737460410 339322875 336402005 100540284 631981117 297248355 622264963 791297611 781360286 288650913 713532862 254611418 553212059 591295644 42220346 55403932 89128463 983993785 146877911 244462938 392428711 635412384 155302459 663495475 487403662 1042689151 490940926 33565292 272469566 75158100 810464655 1049164033 119172032 98144299 520954342 354701510 107339141 15977562 158088090 95409402 21662152 696870788 661459605 127509567 300111415 543425530 140210270 293430555 939162771 428231560 224619588 665346381 629436472 211824639 975492992 77608318 972665003 95496818 140834255 142922476 649558922 783358249 981244342 984223563 1071587557 1050482144 768165816 1039992671 214610841 146547214 157151829 222882039 814389793 294647026 968052636 650787901 200654072 75270322 678707291 362908237 408031358 10679508 34444030 125941741 415512871 138563395 650366785 914469420 972238630 408304626 648827545 242117324 518411555 493460467 466731896 782360552 204072419 589948319 218611589 846813631 819872088 542504502 1044595294 297481830 693403004 293966147 965269422 167047657 1057993833 326576730 734092827 36855715 345892394 390568975 912556119 132712241 811068467 29790234 395646961 506015282 861510090 758390845 402354569 423145639 552946192 516656301 548425681 701966986 985121606 857801194 514313732 760109361 192924732 260725863 112077622 496346291 716622980 108932264 711285097 347029336 755433403 169437426 215927034 700940343 114635460 669157149 520159047 442919079 817731916 541382842 1045073366 182370995 945159403 628485317 468567473 596544941 151480655 406771461 372560656 505839434 1038004076 800698805 590973753 34284889 218380946 605759181 655295116 652448259 411889639 634582503 868084775 744043004 820525497 131959165 55191664 509940272 421281867 804175028 980786973 359628048 38340911 614804006 639454332 530596356 278679773 243762032 177630396 951456143 210174100 520130482 444323368 987924535 122910785 613258070 722644669 301194570 488844466 626274975 523217758 494091745 678455739 520566372 714410789 429053789 870167449 775507536 761553328 449796751 396034318 1023116966 327373106 1057710284 761715010 230932912 46794172 554317891 1061138845 84936628 939301496 891498755 507488049 619998173 773071036 895372233 19604732 1015040909 819528531 426485838 392566045 49539400 997117295 1039196867 473523240 2383339 379207760 1009539691 499583192 201812637 783969864 566621451 1029733831 420748374 858154085 462115578 501301259 253901355 326552415 734866064 533475557 773974710 314488698 552228575 267079480 521014922 569663606 485441980 216925094 667430100 530993013 216604096 963225380 206047163 382761913 234386442 276777403 919399612 345203560 86130954 132056670 553947258 571598126 694905647 523681812 149687759 632805054 480885132 487774006 343859679 229698681 509063160 135831647 180221026 112778255 806492884 671938796 122205046 18943123 44059014 543545448 51313118 652054995 500579860 229524521 196799005 367622811 328974563 324039237 601220411 958978426 332351831 465109603 618168431 56148699 575184169 996834825 555251036 493303444 847265660 607989345 192483135 867994105 729359909 719855454 923918410 407621963 542015025 134882014 1020127735 441132952 161385118 42228270 706105291 205270772 487276429 643833205 258304472 69701052 812419027 633317742 897273045 755617006 313053707 236275816 252147493 932346546 678459550 695533967 404136505 173163060 750955255 1020457819 349847973 348196954 1030085849 580025776 48893662 213516125 194297551 275131608 596381404 825140933 735557912 443594278 946457559 868484842 604017583 993305126 515804532 742000624 874098073 681458408 78811338 606497044 983346946 869203951 1064447791 102975700 1008463827 224531551 67651988 1050136430 112480291 934451701 606607568 891529073 687811007 490946032 1069841941 1065580682 860618258 497086496 403157438 66714301 343828010 897326334 114941221 241929928 867135466 967471607 506887717 951898104 941158419 955244324 405777876 212446556 497641516 979718830 994304530 73246014 72559546 31044490 833992354 642348190 596267 326426956 520295145 967346329 179743964 714976034 620580481 503462949 842264544 352201859 594747682 141528391 873320882 47372670 58794529 64065416 228128089 870126609 941690223 347505846 359218680 350766215 24296589 625418086 690105018 983548680 686177342 474518243 1054927451 482013355 837647675 485099357 933759146 245642249 969433926 495425557 1034343169 158366090 411486611 264105374 788119036 881322860 180969353 333247089 457537550 985298269 562887825 87574191 285959596 579094887 124389960 1032234148 565779356 228434207 918627059 460194056 449482465 96061010 414134055 361476606 549265684 974452443 124412896 304231681 431678371 701147410 873666999 403522321 924391794 886134196 546298188 176497807 880151249 168895711 477775089 1007122075 925563339 98731616 147282459 305593257 959367425 881519579 1008246131 476340927 579997102 15463995 394128346 285272968 910806847 992273384 18001192 510573858 253733280 836654957 180920637 780993949 143972329 773727942 1050845612 646070779 102028144 604999182 613667190 646346529 770505845 364478228 581426305 1034139958 633639526 1063533282 665008127 924052877 407010004 1022571760 295775154 911565179 876924061 193945081 360711972 762654426 738907363 350409801 623661181 434183414 961892286 369657039 765028929 969016575 418513459 913294125 439874739 291873178 735396620 865432383 989982096 297527303 1010377789 6249242 495516740 369011034 981123215 806652100 360722346 280733214 326807850 200453623 666365933 151738461 659299430 294570291 104902196 60135629 498290389 674316407 410522248 1065671242 183288298 901664226 108736406 17716425 1053845785 745597018 424975976 143102352 80618137 421241514 1037962671 465313435 432668167 750749583 1062108214 751693962 5209831 242965306 535433526 213726119 787329099 336405133 57547535 359632031 566086136 874890385 1052422533 81594413 895710694 769090236 697141476 698630116 964475419 366531541 680507034 526865318 82269922 440863423 22441062 616453478 930908536 1061231299 770608764 355529957 304950254 345081068 608033476 685334344 54163020 99701578 614380341 676864109 388560682 998062131 614244319 299271962 571837666 550269734 594308904 884389572 185742559 937953452 409868948 27992361 1067391729 341774525 831044816 79357153 982339252 748151757 461598479 1026797991 579018908 181190108 1016500521 1038246721 775441209 221783721 342429792 723388492 460476382 500622131 486226867 206656490 510101758 714684012 594998406 145981481 259237582 422021621 491821720 630014709 231621542 459882926 969753482 398759442 12092608 249192237 667666001 236352163 98493086 992706713 971227101 230184420 241268469 857720368 532771665 805592277 205523633 128455625 312263154 624683996 1028290443 119788821 181481934 240257096 994435756 19155698 2987116 45585194 123030073 301669731 663569661 661642349 461495515 554463010 574523032 94643448 522113906 490107394 679283398 202221096 581179280 35797698 917818389 106472843 363799898 613113083 253426220 1066581909 302400067 792537204 289314370 371913174 178699767 386804546 411800708 290709539 210310817 990239040 1047121830 348624557 432837461 4401332 506119061 1023175678 680024926 195387624 381484755 753873814 822528116 122483223 906131547 759873191 1028642012 488020907 196983062 558220953 1071700829 678400988 73610917 806560283 704174726 467896489 712674331 719851859 880654561 883098351 744548481 778488219 375966130 814732563 822025534 864477897 650049533 282613510 859408251 633094599 878693641 436211227 944185978 483781257 50687269 630664080 804932532 432606154 433958939 859731512 710466055 952192756 48000837 645815576 300837154 675414672 534778991 406665239 405232870 487361825 59960131 831809905 495162982 503286803 904928108 721286930 155747634 304142414 683526987 577835616 314103878 558477570 666958391 170774426 459944700 316529741 278941742 928518669 98811992 7407552 13890898 891263912 669908676 1036610114 177046567 90461727 588549186 864542060 454034891 119877670 845741517 689227766 440522580 455280824 505856386 189099810 436510091 770131778 348113178 1017414943 588978965 803177515 352091543 736642220 343638076 603134908 785115123 664011790 277242128 41062977 932787255 705667614 638571741 297482002 1068119549 6877357 559876536 529707605 436285307 765438236 156785602 986106667 1012142504 10910464 136570582 562424884 11343582 1071662541 358674483 343423806 383767305 572760616 590186572 768477891 168627055 698990378 209102679 652685896 846095518 380409823 820944390 756321198 583958290 1025948935 335087638 926394823 510791337 881882284 324590749 810375997 749963836 337188762 582220407 442248021 482983322 962550543 897834648 687199790 622738602 248650744 1039832289 1057981101 745095527 378751618 215438374 592904993 607189697 980197625 192005699 163957113 471519111 326905369 539817235 795497888 371542086 272067836 240098471 351767226 957382246 207965786 14229943 207453207 358190776 69223524 23628553 823955401 210326113 380955110 141711569 621063084 20259860 534697023 149118878 57910452 574770372 272144999 465750823 1020179282 391229667 984164172 232699997 729377520 536805988 859376688 350430035 967263954 404879019 298084694 1029061833 72624597 1014746501 556745058 676646775 166932019 137642408 623014905 1031836559 12641030 726603972 828130872 870694441 838512366 736610401 497893067 41079800 945340226 803905558 528623420 931054012 861679900 658681776 149496845 533669945 410101841 12711508 360271422 844461537 1071697171 471239255 799931835 769761722 44828672 67357341 797773752 92731549 1001759459 594456261 106722850 182259892 899050712 559384801 40735840 229138864 357883598 283953856 365186126 363409370 519731036 738742693 592140360 845013533 508004514 427313679 872851302 576790408 611340022 260478238 329265970 551048944 478190285 705876263 322760476 484103316 859054792 943253387 351022184 771232 360350748 939050806 506819053 668030639 881011808 327335918 539053031 185597448 893488054 298895681 1060780764 659461593 558991295 753624648 448199711 936174894 564026247 998248145 588469650 1064962548 1020839745 879256649 1052510370 361334979 369585916 863632367 686368716 532998324 1038809262 331890325 229788736 276742237 303429893 670705397 833050940 693876315 707564815 550322666 199759762 375359476 1064177097 593266080 909832172 193253227 1070267519 943717573 925701513 742710968 84470200 837178077 850492921 176450529 1037106179 140241340 261172430 927700229 413556250 264724116 525083631 178714725 435657277 428039426 2014298 751198147 926496225 553696940 96336267 14686270 184285462 403028722 450395555 611743237 375213800 327691912 902039149 161908878 140126025 909764707 800882658 134113878 17023045 854489105 1019069577 806607008 13900918 560482137 1007668054 389863319 677121115 843812900 351810756 899005549 285211207 103531060 493426267 83500890 802966835 478305363 652198293 797689120 591339129 637549360 57354460 792675634 427426795 182710310 465699292 1044899664 649987865 535118942 513599008 949279353 171052660 161851450 717213050 649509494 579209675 1070786105 981142819 393346570 728198269 210818880 196934400 181137908 114610224 978605447 448958737 236536371 456441295 512337685 812907209 147633841 536199589 460837037 858095291 374788308 644038414 893380891 438882515 1024975736 211548493 998134328 68608169 559129834 683261539 891364433 103727529 897017683 401496264 705914717 875482008 646788416 911648567 635216893 955185776 743525705 163576625 275498058 658987435 72419401 818785272 596155000 713590034 138154632 97293855 824217036 369467033 205917827 470084805 277445944 987362609 814823821 769205 1034400840 1062479373 953980558 676777057 1018790790 674404230 508013054 171397214 565391625 377522434 845956484 546140466 261365165 451462518 302165708 468056235 810050911 335224020 844723893 1072162804 101465742 362867562 700852304 60841167 435181900 996957282 718012440 457403938 966610875 765617398 517422253 668875056 53431404 1013531453 991082320 855915592 750630861 972010745 459556762 557799918 852530543 1002912667 622259165 1009781125 892643523 557836819 167279142 384061152 318388911 621840927 108474422 779125310 50635535 170884422 768435365 46776905 31052530 753396242 449023217 411097184 707545449 666796185 30080721 825080583 156679761 53242544 131382677 73306852 630112581 836741720 680623730 24656842 391581822 4735035 150857315 916045276 766587470 164402112 104620692 301650785 102384629 115570062 669316021 844702730 640431169 147383903 44231299 228090186 911959392 195347485 344529523 728702795 981192451 144336142 861003922 270298839 642246358 773084449 514755987 463521094 744383257 428195571 197239193 298632794 1033846901 553209327 784634837 719112553 112237049 959870251 670225818 691374615 295165273 882037811 274452648 574356344 35623937 556935604 992081183 772780161 393571464 920695211 474258564 841966251 680542370 274212328 1008706147 253538351 320775838 373384881 907011477 940511694 942229325 399780572 316605923 171226303 432715933 45792806 847466639 359119029 944154088 107967117 853613739 728894729 349453420 579170861 683882390 735024512 224525746 683685673 596551159 154065747 395811695 918414423 887978618 843783548 535577210 815169126 393316220 840274119 507583970 575681565 898368027 968480350 803597862 120624035 258889902 778884844 556163056 812483133 441309417 872326497 678930139 900807739 753316687 443467955 417154116 149112767 11945194 657618865 662767891 4357675 250266088 682639413 174249481 385259093 11151008 263895347 506952309 1040252022 942837903 1011212521 236803528 745091431 664366606 368046144 944160722 990237699 493791342 620601892 104065880 257511749 913968670 829170524 62467948 462511619 520045973 583180200 919274733 656450748 960276443 961334953 387283947 392699642 470803141 1049273375 1000768965 140265520 201642055 463060311 245962878 220022483 697043372 941928009 242764155 679451743 603314009 483056863 703014849 28138569 200614119 902957705 657175571 588181357 726768351 904134909 493297727 636564009 228668045 946681473 748533640 16821980 131261896 161473052 813703616 61024026 185681921 460071669 801630924 727776920 799634210 291128964 979809708 387378429 840073523 680034081 439821049 178680771 426607663 113264132 558755826 596341649 680653066 633824570 573203923 464764525 521252927 315935065 206842292 783560352 33168344 825753595 986719443 1006819219 758780121 296087918 928172502 493157475 415001423 11073734 850079698 42736061 135618256 486336577 111709901 977305660 249221976 508782959 880654658 643551712 969322405 661096978 797009654 475686894 360451875 528025558 1030726626 380343443 359687392 581547641 460828334 992592499 997269894 548494657 282604951 369747866 278386674 66463786 6833134 865223647 638164452 581025090 140849774 127897808 50231462 969894007 965479040 161119233 989412985 183269310 803972964 806213136 686899323 402138657 430877667 881567767 693290795 524010966 1056572336 724229727 465017823 571541024 598910793 832446092 997333157 36315107 503817990 63812476 278238357 89362348 951313768 307658004 92249405 872892661 638037018 279607827 540017203 400857355 697082666 897263923 1051158314 266961935 233493605 932087157 353334345 333181000 107589247 245199432 436283080 752502770 586288064 59900660 979554302 145722842 445824650 450758681 741899990 586454094 270527093 424728718 562101431 134107711 266404341 152756293 30792019 890912561 81944124 607907183 794217858 873649901 918515414 908728647 795678277 111239940 434663359 448134844 105033191 875629246 16895441 788718813 243148596 470001284 629632329 923135662 533263023 920860029 324856691 683200948 627828062 291989097 283849251 758615370 159942911 906659041 466623784 77547541 437420541 275880895 509063500 95461350 200209367 152931407 539558296 580361756 154599093 764500994 852896526 1039468370 656554759 305427391 397491321 582166021 318796583 445676061 824134312 540411973 519243562 594238259 552614240 924445308 314641382 429207734 848365388 565788417 428841634 692093973 212197228 809459553 41709952 989717678 1041329179 929453692 980924582 665899555 324735546 919942930 200905327 179952042 1042483957 480503462 796914478 617957846 737261500 140092511 551595575 396230376 232924621 779974882 319773037 5073746 813170795 547432772 238427020 386957323 739035423 780015988 628918277 911734130 129753515 166160192 28255241 207467356 691858811 103665134 485116394 299752066 213289412 725015767 542419997 396527596 1009238005 703070398 484014471 777058821 318863138 263787756 79134795 150542099 1063480367 995550362 971435787 199980120 380477769 101724152 433748236 958877581 708227969 408406133 256086571 300582991 824233027 499369253 776580924 823115684 643766858 562889034 847667558 243654459 622524468 1024215202 886491417 772820016 499611105 853926430 853325115 599753094 366462227 817913221 1000279978 362159928 239625922 154684636 487355780 171909411 581955150 19857542 124391348 680266726 48185370 450813513 250743505 964233114 354254558 331794710 921669247 306882711 415564546 700619864 727592763 508428781 35886914 377311824 755237961 1031038305 768163991 390703927 535838201 646031749 510512347 183749320 789306132 660589669 909589947 114605252 799570730 46237603 580146310 528236237 30772410 411943189 708649463 765159457 554496564 470307742 645951975 166731073 140156491 971492011 484587575 371781891 444630116 63384346 168254255 663723533 339720271 78643660 381771567 711233408 805088457 196001213 196696336 344403562 748713976 442444568 207443937 380365392 394371645 110161346 32945969 881620251 815180945 972472640 650215850 480553870 240328241 172441135 784315732 37961506 742863384 966072758 271272208 402985254 226616438 1040677506 721632134 134067142 920111233 90740235 19159019 822135328 957913149 261926239 722417962 865067431 547299937 137530975 833790157 111991467 167530281 401352220 965005709 208919479 435181776 815532849 623715663 589175741 1051171763 484179323 987548741 645755415 644087985 609802008 914685872 1036392069 449486011 477680033 235969178 397658004 135655188 498439291 225579984 418347744 277603330 638319311 188221586 638050846 790163157 807822166 578698312 1062947398 178380376 848623028 408503267 1060628885 108981799 385799104 563475966 567323546 630941105 711837442 85433881 853417429 330602362 849100605 451616787 933202868 279392060 516407483 407911327 370381219 733468604 192597850 626940255 578009082 519934026 153956483 941389437 526723249 459241737 354102534 436736526 389529234 731708314 905613882 729734523 528158723 734125157 701082743 588267415 58613486 69395468 968010067 693368250 613208608 697669418 925618296 334167749 898447709 431190042 391482130 297125025 142392066 168128699 176324674 448950177 57458599 628288868 1053576904 798809383 733793067 165495264 287956691 716512951 846323202 991597827 723008493 801722393 550697751 532664325 299004679 955544385 66303162 299544421 343375428 1040770249 101030798 38001331 336337859 577320023 864351597 618770802 588773120 749753316 270918559 436926791 664528456 656830451 878956809 829957921 63458419 427353605 45455802 216081058 60828020 837663461 290358692 891737414 36715773 995315641 642075046 1072962295 608725147 521764603 743896144 999840693 1005143798 594806247 147494597 180868220 601487192 785704532 765683179 1009750922 697337035 840913782 445190725 69521917 567532898 513252222 1004707379 509248273 270215830 926284740 798909032 924895041 374375345 133881364 642009045 116744168 670213672 682664830 731498020 264941458 620512293 334337183 956229134 272311072 661948202 479134529 5502939 217092361 617190601 421177866 329716971 82157076 912719301 164154978 708262944 689884344 204550123 1036813948 162776127 711909909 185175156 879133727 574444192 171204247 146569209 578877487 584585329 612216478 270994753 1018952013 431894195 725053973 294532650 621334118 100367724 833060761 118260088 32974025 446725269 482420835 277863090 421046687 1024019177 590135755 949791166 620172875 581225626 641025136 641996410 653067626 1072993075 641132689 852007509 929018725 1068923509 339489065 1048711101 999946883 724488222 1065051975 712357606 416583565 446458884 583297878 1003673720 517699935 25480525 890420452 873247211 21413162 859075224 331929459 722910713 853512168 501051752 767283842 81983930 129061106 635263708 727956328 1055851410 158197023 644506871 843985368 621011534 376993468 999332550 30220123 187350904 236552761 698465373 906745780 563958024 635844181 484846864 1018130841 244697418 495138527 897040127 1030785723 76924718 645150408 956686707 498586611 590023224 843871395 593008364 291195450 2100963 1005268029 702828749 1065896257 515505734 592791993 43837471 942966056 194066685 64008557 406175592 38690077 777878641 174466686 430274543 225916624 107056071 1038645331 823692876 50462345 352889562 534518867 218861629 1035816861 443055904 687114034 398947067 476829555 840328007 33990700 288007899 875966148 400914335 47344068 400723809 343377742 768187150 510082298 405489819 103074416 194652751 724522106 525940941 398101616 272179077 301710627 414857157 49421653 84589083 110673945 1056920937 617660095 128218671 1018617175 85238508 875937009 109783066 240459801 62746433 40493453 696455518 339193864 1000478322 102570277 518148245 928329564 378822787 107599593 865781037 973670081 339230387 227196288 989196647 23156123 576456891 162595941 684818146 613653517 306387495 28210110 287328624 487043746 971842133 878236351 355868061 324204746 276802448 730242615 840596265 387651892 776133831 51607450 376791915 274917541 462397869 716369562 880719849 761535711 1065896701 733047576 750897802 280368325 999027005 719873612 918627967 717564731 941322002 438311185 473344756 905432738 277448066 211208166 402932549 803594745 191178753 10851755 517983079 671779802 270052141 490622396 596589071 832676325 935490251 941510962 731692705 152379967 481933557 507947562 1030138037 642642556 883647781 400569822 103127269 694107801 588036416 107988223 398519123 633445080 496859685 635406400 820086802 477261076 14015179 77712536 327447687 71242948 602354246 464532775 703714512 719851635 713968910 1040220768 521736568 965990928 808885614 820445660 512929397 381511078 454973837 153136973 57387197 636827963 480782803 797500274 428143505 263032607 93770424 965840861 543901387 456433796 894671799 462201196 1042073530 659331289 267463351 417220047 295310631 422739448 659953718 495900570 657303775 610701437 680249821 548808336 511197861 412142156 97331332 767527264 291661593 96267446 693138482 261956713 1028467252 1065158404 404921268 222175000 494093598 559775163 412750953 988129187 141472079 88709331 809127462 730293146 792097543 921513723 408903429 803966050 858266193 260987131 51217121 92826973 268498018 494160964 928450639 999682194 743644026 231622162 698723199 194246747 914513486 990201748 18304272 674088650 616084351 372434650 1065424195 904966773 744062535 518466093 35117227 870708827 345414510 910743920 621850212 729231479 885727079 9994949 241681654 1027313893 101401052 626818563 371284275 227791507 360924945 548292976 384127332 555402344 582686587 407307686 213227561 667375463 1005279295 946349883 796277671 960073256 272989164 382699878 104809235 723659020 1019441204 125237275 948032389 245370374 718714680 545426512 880057878 17186698 282565741 619907697 722504364 231316 201911210 173100024 639932884 893581669 289555519 365931765 374772542 514202735 101143305 934521373 589740348 369804003 753811694 476408431 698467135 974592578 739648787 1006107580 132348175 617164932 449521559 61995115 821003889 705424935 647261349 604895856 26652633 1010173598 111705564 64341439 866463728 953665556 1019005059 973029407 779764665 729046933 304534389 536817437 792002445 743100793 627192555 265363148 1056525378 673882130 547184364 928009788 751799729 568982749 971254338 542086481 511656881 972952679 1067899490 128537558 978561266 105292838 96396744 451472060 714586295 14644337 54690295 467785821 1067413189 965387320 869972936 616798204 605168221 183708994 250432074 28978404 750059168 157360100 439237029 859063364 589973050 89379971 619661252 1029138620 547843239 234717098 277818829 213392064 896601249 589900205 914383213 898172802 832834848 206981501 1057738309 46042856 494287359 643500818 419111150 634556574 533201329 963651193 168373045 1050107669 183929015 800798467 765780150 229584027 118866446 390986153 496399040 651266532 509785249 816189226 1019633980 914280294 335154737 693202463 1065184558 361677383 895397084 143190856 890736030 465704876 241958259 767581740 984754068 780285358 871104969 67775836 762710370 1062040379 477168907 278635918 126826814 289648232 91746429 43023895 194992967 120169416 232770852 791783852 454639869 153996320 71698275 187288545 286507370 917188242 148986539 812298713 996144302 38395672 318765161 428095828 198719622 751926720 243559540 327799407 714281903 576537163 187679588 1031187330 1025451161 668609427 161170742 1005412402 501293612 318485264 379078721 343291797 863446829 442123274 882187526 549359232 38711498 831360329 907766328 248827301 714525657 1011432745 1030449511 159383046 965266880 980092780 900678957 38098185 678049200 667144256 951394541 795612518 995069106 108453860 540989404 786563041 162601896 469622297 403312591 542034342 759349191 68729010 544656454 916797744 250229937 157611146 473699383 401023368 872309721 386715877 457417073 483653197 971744496 365590207 984842109 683860975 46083866 627843336 932416823 1028325225 486701131 1005183652 205411858 309648543 914423035 369739532 938487876 215859837 334320505 553378820 157791154 135652120 240354867 776556793 968815761 284423789 766169627 687897946 797504708 603367096 511416156 642179213 131249446 491181979 452091016 994115863 494385750 760184590 877865179 853228464 207727773 975964160 341824534 92912815 590798014 803816854 256742423 146383075 446590536 1038021338 397392814 41081411 56422640 478538011 691032140 61570005 930185170 1041300089 880428217 712018096 230170945 494823322 689740356 158701690 671281238 711399153 90167850 469101936 264157815 315540700 90794451 859602033 311013147 332013311 420973815 36375551 353290209 343485434 186921677 435269414 553182800 107625287 974938893 531146783 308876380 651681916 357941595 932493292 485403069 1004694611 795297565 537622060 524769201 1124004 12618385 240402342 698218890 693079921 42593145 1003286553 800072711 1038467547 294725969 274360571 531328750 470009512 853574928 1035572823 739408531 128983397 862843796 274853659 30600076 753342000 70293924 21447324 836633703 208951724 196657657 954885116 277220750 1008148404 230540303 947068050 400656530 325807312 595959472 237339251 705826312 920051643 65146647 680767303 466118122 320052510 426618230 629023142 374756007 771728107 124511283 989984394 284035968 764172191 1057368341 101680371 530270887 619265403 151124228 954152810 112073171 40427408 89442508 675850335 879934183 908317569 101051725 977172657 1013052777 544798640 734675758 791036008 408127923 247566858 510425009 219921655 231283695 190111140 665593445 444358763 801280839 565652424 885629752 1066657229 742688893 657066359 32474650 279927403 997302135 478198250 189571691 787982920 362061692 547356328 25491422 481113637 1043625005 6879840 102298617 730410013 998803414 168659461 802630225 980895603 244633333 909446931 831065750 101983406 557159113 342575034 745019070 905096808 882415032 928083077 364842742 113629811 389978025 1047372541 725826788 716705929 592469728 15105413 1033257710 924329274 357992511 664400084 460091483 1035386961 142668876 989562044 839672182 791483678 977468792 1006391321 1005846476 598666663 389898490 479055710 772711219 488120222 234679262 342986522 483132189 13952195 360726843 27541412 840935593 913597611 147804193 270042026 1030517116 437196807 118556715 140126308 616171500 1022068567 192003245 620205780 1023122613 628284760 119033089 272276006 615234903 956355617 125250949 841246221 323558479 80364430 732194096 952407631 576640804 340757603 416813487 804479594 1066368276 290173477 906514044 418063599 1023176405 911030227 848954950 756799537 823384397 423961567 161110946 335073321 941023159 589272295 101575811 735609095 975696577 462422436 664862449 251427707 564924257 1009293543 550243948 647823955 663434616 419332769 857676955 625367383 1052106732 890735964 500169203 469305826 1054460396 808393422 154924230 680391566 681094540 488814885 325208117 22447784 1834089 569235976 600043958 912312422 376526514 400774675 242406337 188290885 617162708 786050830 825857487 573678186 757817897 979493874 191304620 704102595 838595380 657571823 601574275 266576391 152335603 794348460 14405530 852801470 303055524 527599044 935264259 794758666 653641104 335762107 850059374 1048636149 74193268 1020543563 881733613 855644767 556938929 635351534 1055916626 377970378 231499489 1021333222 478933930 930218632 976502751 736961649 14664235 692122824 588278664 822468429 353989315 793033685 603749879 688804660 757492185 332739397 706088058 773988737 352775668 380124132 1058325712 712626545 853635621 862619462 1062041659 663213041 497181083 325938618 56521837 762593444 991923366 859012832 56369219 898084170 452740209 638704551 670054523 46289020 749838452 156995229 927333612 279629977 597157934 2089155 391307124 213797149 402876253 133875419 635967553 409340907 1023908073 206613632 543758339 712470276 323439171 850527566 441212227 414828992 1052364842 775422623 177801254 490302906 950102513 451790525 224604583 1052462747 222526765 409782070 343888354 514338538 793905451 804852053 190025569 269879028 983940824 786364463 724364417 201550086 187741130 20804831 382755435 330398820 478116565 917609997 848267030 722279288 145885932 314453090 121429413 53043780 933750333 986856824 908740932 1059317783 467621146 790025285 221934624 530736041 466197353 593145780 828672820 177449981 78562633 885545559 687524976 469378552 807606903 284220935 257957409 331400027 510464484 1058716402 358537165 373128479 701083840 514258777 185505542 732966023 856324408 513773426 903144671 840537400 180527938 466091185 679454559 16925406 120221177 772428045 586833490 1005643000 157161106 668906201 973996507 225571066 620396701 691042400 413947435 779323279 181586723 136504852 346070244 636345907 43953798 227803225 135257861 395039159 601448879 990015997 928688116 838565398 747020314 760808265 139548224 300042402 84108716 26890290 511591317 684778135 602849876 1053841889 973636949 692831630 650986401 358441307 15460200 960714447 742144429 548099041 1030222773 399532456 548602778 352075469 897441588 198063292 902495556 293730504 841471402 825608330 308661939 825516168 357557516 435306003 453973827 46322856 4088442 276963955 120763266 490145652 833251605 616506958 517351966 493669407 125453765 521285710 507283939 560380034 767307897 35602768 725917113 248876296 170621943 390665742 488124821 712691449 494067801 882112376 650801817 950882001 1031694715 673433718 145473354 800461919 36251329 472922505 16205024 662724066 827890650 288656082 481182875 863699012 238464013 904578973 340335884 505081685 579524046 790947164 77952474 879157667 362769139 489022521 437594567 477098172 936382768 820080035 697629122 786929528 1002118560 532957180 371009013 927334259 716699231 203759146 161525404 899479314 617514356 905435387 936293274 262945776 699723333 196036793 257136162 296422460 443780081 889198541 237554359 68641068 855190478 449393136 1004940667 888911967 690601963 691949505 8131074 652943725 599137295 708568861 519494264 385850418 318580095 604094029 907135178 699216546 614657954 115235991 468983284 369608015 58632724 980872187 165899140 94788241 546178585 91466044 471487834 365363668 270849075 915000284 866264694 727012095 157734278 215939319 104792036 986395866 719628963 669839162 574008753 779128014 443201743 236580039 999429048 107327485 796789841 388120380 587905510 498756247 283974088 636071761 207202188 924495763 540656923 389772245 145954767 336617152 679962644 1066449951 264940600 28019016 997183396 463763912 305846828 246379408 153223766 7450625 1034413246 424029325 742006667 713645090 629305206 356658573 871802786 36088796 62365564 227984249 1037527870 199219385 879055709 431928982 476532495 92941626 530814786 489470018 577548813 28677594 44524553 249730604 106223327 612458915 1053943335 180670933 377182148 42209005 793363189 648064942 516911698 466121053 245326364 824895117 939048736 415499975 155337310 78703156 328646812 9736387 115126661 223187652 41024343 567322082 731299119 717060692 500780890 568821065 91355477 74279775 81650005 883350640 86610037 1073206669 766694943 199130632 41367361 1044942105 104114178 108551573 159792484 423650530 184059691 1063416021 901364223 979451625 594494971 472827328 750307412 135609570 767464291 705046189 1069376930 913721959 786830835 863760946 646503256 654475104 208802480 636699567 132236298 490974707 41563004 403498478 731631622 77466466 1072372794 453189142 404502584 801289522 860773683 933887322 573384493 455703875 504652536 473987152 1072438597 126621726 1027397344 601181988 239045146 104941982 241341639 199060303 1053734444 1050930981 872406269 641934703 47176707 980337442 684227128 38139447 179149415 76907111 479888405 532388854 396106736 821880056 226349162 774195703 1040148690 1052287495 848140692 252545917 614220567 242168012 472291046 476506958 291586379 70351895 48093510 250129919 8039338 692354741 80816182 571843954 867615581 729136407 770697082 738954891 561402361 107698985 725494791 301098156 517150251 646863646 372528305 243012483 305740728 500428675 769694795 865285463 66535081 810289443 150147227 1030674159 547607628 300514199 908148461 715554185 15830253 580227387 410565071 491191504 442468663 11165395 721257298 379304369 663689434 195656381 385949263 537031698 530748318 607282942 872458145 983706608 590378244 520388515 744031276 530972468 887387060 947343470 59409442 1049322726 932832592 747284498 310230659 125014770 397391919 982114207 36000974 572675707 73178539 518911025 159399289 438968474 859764289 374428637 315300195 1001616487 477953062 411488887 798454754 864950999 464565548 265745052 194618946 533973443 576301131 377251904 498133333 54406217 1019679030 484049197 221390411 445384638 269419720 859125779 117219246 507615380 1023328900 289954900 659787244 909340113 662096030 809229223 989611728 506493211 504884432 720520111 128108207 995908883 668800529 128332557 634610705 307981703 1050911614 522882981 466964251 527175969 451440243 839135328 863350835 720616203 133934653 998691192 873212073 283768740 933579836 534617519 678227140 923702048 61461280 685035520 655381946 174633689 562106848 732147404 814285465 127199258 89752285 375779154 844773657 664708202 786065443 1021436358 228334934 635794295 912302584 792788552 356103300 802932174 5518509 712989488 585589004 177153856 276761620 650937460 853067438 803204610 934760466 1060990199 933105445 244362748 187556551 558366652 1205857 151429266 297450306 997139992 917182266 150219948 279572211 900194892 892865368 567393339 654766873 275797022 433272932 722107768 393033204 74175707 927515857 1009984914 293265492 360967479 323703636 3122167 54044243 800692906 991720158 555395108 136358957 1058876563 399205583 475235411 834579781 474907356 1027988951 1015878031 1072099431 450641474 430095085 571828773 517788820 875235379 900082560 827037628 27634855 135110913 990669205 737780257 202122474 885833803 924012060 580937311 61413712 199828291 1068745228 810407763 808447518 452904704 880852785 711573144 480118418 557332027 435348747 993365646 303953550 755379673 29845316 715456877 597496856 735466838 555804129 411330667 688232169 851141799 385753695 329399516 709768847 646784449 448362065 83534610 934304517 792616115 1051368091 828754145 778465996 568927950 346841435 854838028 421390013 862115422 320748721 874364537 107080641 1055624414 141359833 377907814 212421920 61016962 952999089 733318974 808355588 83412899 767472354 976133674 894950365 613204679 842936347 698608946 85775736 683258500 846699541 116353572 569729672 765179982 427353454 684845997 750626684 1073529066 221532555 46068260 757694938 178520310 685940484 958388727 95548530 865545675 843566656 40156240 436670313 341290246 472327295 748165849 299713632 990331172 5857986 146689852 768958949 523090757 968627906 923684550 352859675 144363847 968219321 733709246 671103041 739653126 389814971 155000831 71291811 1062744782 591217497 476665364 380883541 458309007 781340697 325766660 89231139 401900158 452692821 858954599 151473523 341603461 712190674 299770672 859396468 508319370 746306821 196257072 59776018 170262718 772883806 282414598 781028072 206302304 222456997 295024052 758790818 1069614924 829087959 572682245 788187045 527424718 910880871 166786036 219367440 940745454 260349768 133803734 1040079119 503178482 152383884 792016691 987272680 47401642 486727666 762689410 821183577 163513404 921896906 912351642 762757973 610541226 997905690 1064126071 336846033 366892343 559947639 1020579191 117567214 703952945 609294269 42301639 815789970 57158043 527485213 479126031 497833706 1042648562 294373949 880790077 974043159 428506808 43676223 694377744 233952777 971030200 449653654 890119119 864055524 385472460 877883845 825602877 209388028 5451552 998137123 421544297 120560593 452602378 716898224 690453406 758156853 487242134 324416567 532404712 733654882 128911200 321175213 850063137 367403743 486652662 734486432 1022815329 380373711 279289813 274217584 405283862 981246424 531661992 432884725 677374071 711403324 366067889 130415790 249657682 645371463 602747144 251943000 947779461 978216931 317898659 859417684 473658700 367108460 122788968 726114719 784484586 600000344 326360484 308822938 241248526 9953463 763439539 1071485804 173419120 56641265 833762957 996362094 438566570 93391959 453844193 775990627 58769519 554115324 508618628 13278503 1001239034 558752780 979015488 510154882 1038036433 321933957 62108771 102319533 749948973 168719798 824952842 695813522 705425678 407590522 109264894 461203799 334093651 694416229 91416406 619975727 232256049 258316109 815969433 667892471 381924971 923999070 120970980 538214039 319450071 702969915 570805435 742723277 668904715 193365500 21706983 350349174 403578206 317918169 271617879 127996226 76334879 770198941 892836586 78446026 417904950 971323151 1056354239 152420492 844293022 500468558 667362458 342065707 767986249 897162621 998601640 430199452 26264424 6825736 1030057123 378160133 726348829 1035678345 968555843 728341694 175967658 465635071 172464576 911690181 914612105 599016689 124181275 574237407 621125595 626326853 825741179 679448218 586692864 287139861 117428356 339210388 788399958 149605550 273183704 1047130789 331187983 994228256 356938057 424569364 395689781 473458320 417978789 689480199 156760883 216358553 243939007 363535553 758197339 850975197 157907962 749678762 698751601 973437665 443832304 253415618 590651958 961454394 548967683 159336312 85894803 637939767 379015080 604228248 766365087 607165466 858174986 183690802 232140391 431169355 416609003 265305560 195124871 254694198 68603000 263041918 378693683 177493418 252358643 471208300 729890757 989864339 438820941 407244346 351212892 51129667 172089748 427577081 216217980 828626638 459047268 205416189 357404992 765452231 588762265 770639029 65499862 38375124 912414630 654814067 119819207 277689726 432416799 637334064 722949689 554127415 840975412 153233235 945944905 694752889 948657036 976478236 402149075 249233813 72372527 382433727 221678667 490419406 246817496 355368039 892024408 328494218 207023500 290237325 162766014 548125505 820080896 580933852 1005878171 169488207 702665167 891590715 742903647 779485836 569972269 167862648 537666197 485163197 403683585 285144857 110389629 562925659 617374475 1014032962 373174945 571303005 311393797 581477081 548561086 475084879 830726808 921017833 820025930 254157090 817425510 914960690 963588183 428582243 556193229 395965196 58193367 452734683 209312680 882226376 538715737 885704362 213853281 504960362 123607253 464101346 638049575 501808084 789783075 561562431 405053815 826107886 35463534 1059558576 916340656 787978302 93841667 451625684 164166150 69899369 906531881 573304489 79643397 364424566 748240237 622216082 166829164 877685120 499799103 168605947 777961143 601707289 313214587 678784638 260511426 157845606 1003705216 712610043 499585637 376465774 133260570 14071427 555561723 73036112 826685504 988417997 280143713 428467568 999513084 56147228 165320242 1068412774 224535712 240362956 652662031 536466430 1023839285 412530726 59736917 425508370 627371399 568999395 325287138 697999564 784753675 603216038 49190200 244746023 579034088 720986256 837949980 730702288 691516985 542300332 505445946 689021200 557724201 523806781 355304426 181503548 358813087 202359678 702341688 926828791 512899181 407013850 763041840 761238956 852522084 262598303 465974795 385278718 911303235 679479660 853562836 364898642 952906797 332340070 746143049 907327570 829489614 711720716 886660806 29547404 614695304 922537205 205019877 822228903 601660162 960287123 406322314 261781001 1004132184 897008497 877746838 489106239 541684246 474450856 140758556 738798816 960856284 379018377 648564181 991790969 117314357 894600425 372096378 367936248 628654710 352281263 654833255 734237215 497236042 405189941 637932364 291588696 214750905 653026701 583637748 932434927 233029753 243565376 506567931 759925508 113659346 975367398 879948505 649529609 68455250 312871752 495768308 261996695 179906791 179422245 166823406 340238402 410945084 786041606 341524142 297476246 914471907 856297325 1044381412 786811560 182319742 289122286 275237018 659734323 536750086 1351221 305537572 298089426 860040329 413827449 101415530 643864756 864764795 681283671 1300706 841737919 362352034 625625113 575278948 341696437 560090218 800262900 922654437 787429500 391609050 1055034612 255601945 764648042 171062859 86465759 148409657 24701780 121834663 647648825 970694148 813121413 383085528 38754473 193538734 768934981 111638508 190745788 683601482 753176538 119716616 818228741 166904942 275546650 961748026 773782218 1055121081 70251682 629450109 354763023 491704631 885275421 472330254 859623643 565973181 49898859 539686995 539425704 846039648 313806924 302010960 32866805 30926641 97035980 811278183 304844676 318062704 550594484 963211553 970099255 968938781 162286698 837263357 1070769780 745711015 875172874 967892166 687642480 897488007 504351127 743440460 957403038 901676127 227696598 675777772 566774565 19324553 370720313 551651582 425654229 610575757 70346279 2991416 880259981 285796790 624176003 232518517 576916752 574571670 309540511 731020444 627800107 919377755 1055210677 243985916 250225526 552307455 396810612 221669468 566012146 638067224 689237886 836046544 300239681 187353991 672641245 196498135 813777901 320245229 759467718 1057794239 421533131 586041483 761716827 643540825 693574840 68858018 733797347 425739307 617988845 404719294 476563897 467330788 377408826 503160879 284322814 287893971 518697917 695482419 527076930 384295465 869612535 938663375 26459826 455537745 425180976 528451887 365508321 792299692 618464022 4070286 537869648 452637800 9398655 708172549 70596432 129524428 277616722 35715195 196518492 638829752 778378377 295332026 829818905 222079653 482754983 789706046 681179762 745668568 952032965 479825349 317254816 1021638383 188538959 161678494 372252348 597212029 600851611 241878592 333069457 410144369 117462837 409809227 513998578 313904685 358898576 583547534 786722106 133728240 735758920 285827486 8999203 970253471 889675449 212038776 77950742 966326403 332378172 204743662 62969917 194845876 15283441 366212707 411948158 647401578 704174203 676506995 372773819 289856530 167996581 12741263 146338416 293509915 538003231 117786382 367687556 258941923 859590874 271188973 810586998 713154085 114281572 253260034 956937300 704084299 974638584 263200443 665895724 400648113 823892628 790164568 208629360 66556856 268743401 248001397 204255411 880713973 561785066 84711693 193713219 18387491 889162675 10473807 940464585 421485426 582140429 344561497 122328060 524058087 292505304 824215665 5153878 65252276 111051242 725996861 710708308 870574435 678455059 198247560 594425200 413669564 747164235 30339224 109472532 982077315 787090069 347827261 1016745785 120181745 1012196579 759943000 246027900 393696641 416887578 107846814 1011674737 740441810 51376879 142123847 843191339 31230625 1000831124 564652025 613619011 74249707 219778878 367362810 966757409 92277059 887312175 844195180 785968450 51150546 780438441 478963578 145898491 641994115 173946174 258159315 721258207 601473933 201753159 897943712 38573614 906078782 48619237 847286438 947341231 904990689 580687149 928780831 53257570 362114860 60216854 108823082 1001403925 134183719 2438516 352053543 699483586 265742878 736935088 594961389 20622425 921821806 370272360 55670394 618124239 1024148489 339893942 909812867 600658567 933958361 946777185 218420140 940539331 620758813 703693130 778886503 822368303 106002517 1019902623 416999774 130065028 876996860 1033242841 337614192 142990098 96494149 465223242 692325024 994010858 169020834 415420914 86524664 26950767 615286120 546828495 208909547 409861296 750519929 618477146 835714967 567600585 602063857 1039268270 301002156 113271033 698951885 200555972 592867175 800137878 475624842 343022844 268668052 317891551 114498901 94593627 299884853 489770186 334295198 338776845 132113457 178843617 748161125 1036782270 370588131 427836489 730185344 171101295 1000385175 839448125 343699717 591693694 558388961 454082108 824206761 25209293 974147345 511498673 45601038 83602991 1041328092 629973372 180810493 983084289 542191735 938180182 956383573 623080386 934464304 754634759 384513028 806063922 6050569 635709788 602786736 405789563 368546836 695059202 288876131 413684161 997901066 960230606 292616267 733973511 675740960 185894093 793474474 806311399 191288677 155234755 684724797 559016301 384794161 1061965623 329042829 358983415 459899583 173562089 912591695 768858533 778000387 497545288 145331466 80243905 830075958 557697244 179754634 422320973 782489819 702843354 234802448 327419311 490256250 617027093 436763564 890040954 818775676 848993138 361201775 744804509 781072446 955412069 195729343 689611765 1418020 164780709 323260833 417270548 1048793547 793790096 762285471 165214471 1008830439 142052338 68057329 53848049 546114328 574625787 939949639 789290758 164120201 30742328 723868056 417223387 752683099 175857968 1048953307 414368100 912239932 715782193 879431799 573444976 1063544255 751071833 356240817 969986064 729793368 125563528 736455230 315562864 49585254 842767848 929711681 354875138 597556760 386465706 747095346 859408405 730854548 706862976 594287554 234763589 19495452 751527518 1026157747 719771980 674577340 1061827932 185534932 640589361 194867553 94686093 46333020 985965754 709861130 620952643 974514623 611338582 902702630 103470965 902516903 749378588 678136796 89380554 349426322 483211180 361525556 823307177 84085350 1008637493 240312066 406757869 990206007 844951267 1056105427 430411017 155767789 514371198 354676035 244219470 97932097 8504743 346478664 798373685 400204187 216623805 449293883 839047123 542584216 364946184 713932240 974363731 304843280 263787603 893109749 747017495 896163025 210057962 980538241 602462469 660442727 477007148 216411321 197619154 388635352 443059814 663661113 115046583 851890413 703151234 366686092 458862675 324089492 202490400 143694538 244114470 362549750 850318395 719374356 793859450 880227750 209042174 804079607 1073480840 507368916 772966847 36175096 291504261 886505154 241621197 239456482 937131070 582923308 920468028 526828693 405321003 184191193 459561364 984835374 810223360 138218426 396254991 1000063155 596394673 371851742 657256995 430548351 89730618 980144341 100271246 1001242962 950819588 896823256 1013473993 605823160 519957810 327693322 968342659 422713495 596087089 326745617 834812930 1003177252 598288335 802423738 648654063 1040794776 1050797437 522712839 839222322 544839114 95044516 286981826 834921008 547815333 55991466 783087531 101103088 1043137166 820633252 642030228 347134790 807638476 799150582 244649262 442018670 814825821 923432889 777420745 79080599 348411860 272954185 998420820 924029930 311088525 638784853 325449182 191431884 16233178 879834704 687352236 679935257 462181958 1054831649 254836882 389924549 383084972 315090098 578140227 191016913 554001781 483052900 286273961 590224740 130763481 52877359 914790546 344077033 771775545 509408063 908477225 379326576 247510065 3614957 238661439 129709002 332612880 622421191 105246487 1068291544 140909710 272962317 803745625 56871449 282278182 840589534 1004116907 909884933 6254743 855019151 76096831 829792537 646112905 663923733 849842345 475740437 876117490 1033854777 1013737798 465405141 337847553 277322896 503367758 340977317 218161792 171865877 1009980329 732335616 577523121 446316983 851829188 1052155853 553045672 457536898 785753810 722091569 386177957 1045350389 278574056 178140741 403205349 334092031 578165497 561635461 977652142 106630790 557529776 228663580 810132800 544082350 715992590 177071204 867986430 531063208 761292288 992714581 787122118 493316640 965836627 259519870 897017197 1015981917 368782912 697260621 394728709 22741358 829943263 969376143 613612383 635637263 210458996 312006699 673034988 816573596 388239283 281743053 430623371 101376567 273259517 594739414 166404786 705542674 66622371 280262843 908905930 312382141 394653824 1053830344 436571150 64720988 808293505 270522781 604562713 676777783 314716505 1071395315 498884376 624759154 105510610 797093359 208218442 506436237 867267082 713118624 440920191 320684185 850014724 139412373 840219763 1001325038 454273215 359580985 982254054 63370021 747903275 582610362 700853376 980246880 968703659 27460725 1066977013 53840383 215725130 196199030 481609964 763162399 80514887 869227875 606686154 440957714 988461569 891406681 950806359 145905353 255606127 794158370 289384738 416979375 28492988 295759308 464088667 146690075 324645367 677116931 311920272 375790143 503040290 354720043 872721774 431747837 825279380 478948145 106565598 172370619 164065739 741908916 930300880 313586358 334064050 680125329 123080128 599103680 373693936 53393765 237263017 700507174 1058398004 796294198 403143578 938587422 654537715 296553161 611953473 709969248 687645976 556167610 695684034 755969259 955666658 524323386 56671009 409040778 687957054 134243708 806260322 123376970 163254641 990225629 931096762 73360572 237731885 881671177 287373872 766292016 63346545 168280806 925193732 20262674 413172486 823022138 129118327 1036951844 301966123 925506059 564445787 626403969 630357105 974219297 600141766 345535626 364478936 925232158 522795334 761892979 767656959 1003372326 844020096 935609688 392546730 493840959 245757305 966683769 433677809 1062347218 667344974 196259989 215766136 703768202 752923869 571566633 535590061 529160822 957190109 1066139131 914226303 507055846 867093733 778568907 716335654 134436181 830704982 25907093 439764121 1005728490 686768446 894301573 619944882 804253431 540219058 465811147 1014515836 832762462 484622330 957328509 161958301 751924504 722955300 143669007 605430924 864600907 616152632 135706256 718912161 815495110 39388266 418966804 951927617 472840343 110590793 105115406 69484994 793666950 949091398 675988237 1038147325 996210481 500838389 767083752 995619589 459304802 1052812166 929659673 963849799 238874401 59500807 79110828 886204828 788723274 125094759 99250775 405901294 606907942 834042506 65479255 869755577 216018985 632851960 297306152 933211283 577611683 641937543 425122319 368482688 653799052 421970233 346469989 68442281 312516113 570643269 802951882 513133618 353353805 447292047 541078542 433039800 975922972 223489216 421398319 385798051 780634656 299183472 697459294 949560266 567871359 941881368 244817891 214747389 485495935 357149346 774119317 794453379 542961621 1051532667 351885597 961019661 19865106 58696666 749757376 799329345 62677020 287553554 82600242 385290556 685528892 720233826 517994826 863479014 645564951 870270145 50108159 373851528 461123040 810909838 37013645 277080940 397774266 668252277 935309715 1005883451 695316546 522212384 508241737 35312473 464812552 121351591 894339603 27620902 324433682 521599432 854301384 741937146 254718983 397054973 825063024 364350088 580518033 937427611 826278765 165372634 451603431 687668447 842382992 753485138 945580999 795242237 412710020 216199698 417195680 1070526406 357057435 761232392 465381530 1070474069 363138 140321110 646782589 667210726 499275178 757443591 760224660 516448465 699436136 887444202 476630986 1002540284 500683056 25641407 487960122 305052348 724376968 387608156 990320309 635874040 415353033 480871401 911918304 907721675 866830608 638240394 582507333 182396933 246248744 43215376 831437553 1001393506 51474039 151257647 371778908 481971821 667583967 831686552 589372867 194065622 870628912 191560050 797592782 572465615 882484748 960322338 600842146 893845551 940691056 727842544 166621929 358239439 596661395 867434237 315982731 567324137 112269222 252701362 360588346 43779777 72175764 470576494 524653749 208465947 561517035 400787299 1015341524 566396813 756157301 728612424 74752616 709346817 1013668299 719239656 76524866 870719134 1039098560 851348529 809955697 649879997 1055312991 4176866 827075597 446777769 531778040 737082412 739809507 571467270 215060854 693483845 436378362 519974591 217409481 745043295 1040716425 542999515 194716950 937706974 1066445542 750920439 101381702 680886432 739840856 887397494 84950868 836946977 6962597 912051514 118969356 708250458 282514073 540663178 71305346 589723043 172098707 536032975 244095170 745304767 758511036 979631164 609895105 119175421 843277100 221142511 484159897 807218247 124919857 819362741 154809835 689124525 166769427 52244085 722157797 938345988 822595520 462534156 1001522770 456665192 756286646 760721824 1063543469 427876095 325938548 699225869 520215421 853201678 728878945 141376163 462003582 476679446 723120556 187995904 948778045 678029586 1027440791 30891625 930666260 820463959 204352534 581979138 520995338 1053102331 15439665 166152343 423938577 79730770 785174460 497389106 618196559 582249375 187724307 400611171 737528949 1070660981 464041732 113241531 683580876 820600697 403297147 1063873082 973593354 856453743 883661054 253750010 122864875 509895802 290680883 521327099 588267476 448473926 182369863 568807833 114707881 724828566 959154983 446761225 297177875 586581793 975678147 343510264 1030885784 190085580 770466070 1020895663 630381343 5428317 925736642 643120781 374233 976416541 763513547 431033352 576836832 455254578 870738094 644365222 174571386 828790111 76512473 579275383 279796337 392253334 1011252404 513264924 85201248 761740590 281635876 88438082 111256024 650134101 108403089 499166326 10618885 927277089 958007006 740402448 855164595 906616567 362138203 968220739 269127826 198206489 673903787 494003141 663638331 684044358 240679467 1016952513 692216525 114258570 854758871 186076951 488425946 902829653 1003928037 382319246 726902610 928405025 829280786 688816920 487040197 996688734 360781675 176363062 769462136 233986174 97066000 329958144 706361833 127354008 9225592 417238383 200946387 1052947163 243933699 255770675 177866147 565933254 341216293 883692758 202891124 22892568 532960676 7109985 833078676 301815799 913418166 949830158 167010473 590044621 966834194 869160521 501192547 417088485 1022354662 519276817 417052470 189465658 388654647 786759409 14189394 281243653 944413248 596348978 185852933 190798058 987803080 194411961 475092236 138563897 923582598 483972394 543514624 85696984 244850689 948546575 712184684 255400250 775475675 404791433 745096824 135529137 573682445 533482162 370345255 1015204162 1054299913 568278253 906749079 625243194 359620686 481359519 377351077 1038050090 1000955730 800005759 785539926 636648979 398628143 94616394 659387860 1025472869 374413079 823555070 897581953 168035306 566638061 176807306 230557252 257971272 126252956 476936493 139947771 336382643 830262367 211395537 655027505 381884471 666821455 11629803 158274953 947219412 467056019 863139696 174109566 477026209 824100390 854583363 969823734 1024332558 539731268 44207485 807910403 770830475 229425883 226550605 246806927 616845624 474452379 684424023 1032002980 739273623 865811100 621397421 927235938 999355060 772434730 734711636 746303728 774820171 1070140998 1022705707 879740953 320692813 704587444 379909513 234170677 1051618195 510471565 10289084 226590872 632338387 451472577 707547872 152386183 5029347 759529742 933706996 415464913 465582723 911173394 64848995 371281492 337977522 877182783 742228995 302160613 146807228 222055455 718029656 156107163 491316728 99619491 467145301 683981599 213707620 300612394 824267363 854406693 855665299 854264316 1013688952 431319532 240893549 581555883 1021787659 633561689 1043906885 296193460 42799695 332623701 1013855109 30858077 30033703 706095590 165072711 231481196 846645665 293338233 864232837 969826032 793816574 719565070 435943499 754233795 738993215 406435116 617326343 795925290 503873771 429617775 575155168 579101046 615909694 536135994 541415835 545359113 267930774 342140131 471429695 864628176 446047462 472835092 845702716 183310223 569930986 737201856 75262418 240207401 226143948 751132403 867453382 105313004 781321599 271292998 26272267 976624020 1025375286 788339343 455850325 1001407729 711793070 993378452 766625420 139024518 348570075 1056246293 626246035 179395280 968115743 68341322 552649671 503360893 794570525 720134033 501308846 1033718443 306955106 708789626 134717435 461318286 382447454 709396295 758718801 909763589 277269047 416705350 702529768 1048529706 274242486 810117235 438203788 604934351 1022207084 1052453184 431049995 727691460 701639489 534397723 1029227160 185908924 301690816 1032668256 991705662 650671124 89681050 742490095 554023802 761876630 58862375 263226361 355387211 255823842 20970994 932308967 305426227 351390741 166352300 394979160 880817665 838442189 597439065 990463318 664463836 878162933 340969040 151486941 856928304 604065321 117105322 671775063 641580022 536545042 859210334 404710276 1002819442 261379143 899916667 553806580 863538950 998786102 165643152 781071802 944351769 382858016 22401042 384813142 550108651 898488910 795754839 57242661 1037114779 9906383 20220078 437029616 13857743 482532933 811739030 1068020800 10621955 338218322 284069554 935617508 601204102 338137319 96369720 246842069 832391594 551929064 479927639 815949989 954462748 525704417 921928931 884228998 207084772 212315549 553439749 914959109 158787755 52484645 315790603 759904116 230313246 643498736 985690493 663246021 716917603 354647860 378354069 827259732 758146509 798026919 529604797 406576820 760989917 159293661 332516627 74189393 357760895 164409833 414121195 139407672 904923657 97617693 3062986 1059289366 776148908 903407323 550956378 716348666 814098214 26471322 217929988 1043629600 259798324 700369858 297831991 856227518 674423382 29686009 978898089 324346262 504836012 687527634 45435162 735674274 33841292 501407435 47879987 298489349 143583621 541776747 1064966785 972896064 54469028 309290369 728708831 328873164 612938179 645062470 502389029 330419384 22338881 1020240051 844855944 643162362 754770513 688370133 643581542 596399646 15535733 988434151 244996359 707508107 400193776 854951686 856671250 897375346 296994721 109667437 720603171 576571156 408555477 716810126 877779926 1013451182 537743891 635373093 150662382 751972045 911969120 384319799 638437390 73767472 589149975 850185961 382595675 642324416 320246392 59362633 255181952 967134444 829996584 458036336 47365854 233285622 870451712 628116655 904578283 506155627 595396858 956075862 537653112 688471013 991770822 269527795 972400505 764545937 818086432 609027823 235166557 117409490 237523810 36054155 140332331 843234799 32184344 1278835 416670578 641327921 312884040 37176203 385390694 772977606 39419133 1000720985 619743288 525270216 1042472402 903355841 1055126484 867961516 225920987 120573653 1007691706 898885495 226520043 12691930 774551220 898740222 124342935 532963895 266359949 162568824 209539606 586834328 780066758 683614659 400152871 80701122 526823204 9885935 261727594 174111130 288754058 807029939 860343694 1019470050 900744415 585128229 588214013 886564614 787691684 859022733 545672957 308749496 833352797 523364628 679357364 451274629 1068511937 966621805 266784294 434310998 511310124 502152579 523831037 511671618 424435337 208524993 548094578 589527663 793407162 714885896 20777096 916914617 582963631 788000963 168572024 908186694 692591017 704186387 976120004 82602807 912613999 146458088 885413039 706924465 780223608 383739946 255699782 71278987 627698434 172507633 401070652 920585930 474340593 517682820 812750044 131568934 1004178609 155262075 775735198 958283069 249027902 346445552 270186880 312935176 1039089822 233676234 747153545 299263971 328100057 351242115 904035028 971903297 703480172 787734052 107829235 353116465 85663220 16006916 645353835 780934903 1023786543 573730895 786714429 1066445880 150170131 357512956 21044180 504745795 1068616216 231408170 581784598 380871101 1002594216 219490329 739077633 488831136 615452394 280672347 1051711731 676149933 677730411 976737877 32692766 1044144236 272891552 374499349 1047324163 1062229134 880091291 1034111111 742485172 246408711 1023453474 234046811 377730362 453241450 543685601 67641589 939173227 459336048 742888751 537902087 95913783 1059379772 495775895 434803320 418978884 269494676 327525012 89332557 673465831 238970099 134681136 908514657 1032971646 1043022877 1068100579 763060473 604456839 199387508 106162401 34340246 1071824363 956331419 249044133 802350593 1073433664 549210923 352178953 1002154900 675259958 712556900 466681199 953688012 636256366 714695589 930759833 148349811 302772514 180755287 956440380 908477515 608441401 658953450 1073160386 711696518 704994602 255600277 451471862 628425439 390356386 27049782 454911573 262342046 324937440 40793020 58032272 491299028 920496616 818909614 383546479 231741816 82206059 504680595 82925410 241518324 640823937 159127634 692631852 613537573 711835853 728492914 478465996 902667573 678079920 237307559 134476439 479732215 227860169 982891930 1053926586 819606932 406879927 749307711 33086806 813795077 950126868 625197789 835128537 576026088 807234926 804648263 961996044 344048962 228709326 410367236 480609997 56553978 376788094 646893136 723715683 231143179 176356603 1016566974 1058625391 444452439 547484287 62200202 763078363 50576774 611915395 121503769 887313662 644681117 157493069 810459562 736882012 651315034 442016605 69412566 731249630 186249066 294922604 459783862 301954929 639889531 387454195 565883411 186882702 944150317 286009505 422043028 759998394 126549008 39163183 1022707929 478094080 68895656 236745383 176515481 844312694 118416277 1029981377 391426026 705928859 957214426 1254626 595127535 199926698 265724190 1030547887 134541962 476695650 647860091 520206782 822244911 912612485 189452076 429417434 524426929 882592692 201071234 260066593 143450543 1018588914 10585182 674147039 915980635 24042304 443589237 891479405 678315590 292838189 648953307 1012193422 909767016 174142803 308328150 550469384 526818763 451118075 1042768779 508684681 668503514 412901567 772191311 383739288 835639723 9860592 1046821862 968372571 870176227 438664807 636860444 406669837 839220433 152782323 720610045 409286305 704748217 522088230 487400304 616203278 88749545 116379856 60733577 1017696778 732168802 242392295 947305610 402443490 463088987 560214510 673496244 547200657 997127127 53755640 973898970 965080289 353245849 207189117 716522695 889666803 654215682 881678690 96987573 500213408 913331929 43302244 601145440 65053297 124714586 499170263 90953241 750412298 362732746 661036072 629775969 798699474 845590428 880818976 256162692 60552676 166654251 407111535 1000906529 145980408 656462367 408740865 601964846 169073627 423825848 913251659 166212903 441229756 211973542 65544660 947314643 207828476 1011694341 736725939 393398485 715676746 189490755 628245813 561637891 499307778 315414908 391856462 563478815 471312938 168533027 400136843 766317421 689667242 1043311454 696581790 301298876 300663408 784789836 867312224 742828633 929116575 338654660 886905101 756322594 935590329 869828996 943525307 407655693 690374185 156817185 393525761 357786522 440055618 49653914 501520448 1026757366 528113196 21254415 150060612 627457718 683772950 270026178 159813910 60715495 569023411 353435006 184276499 609539831 962064727 453822426 545231219 126658930 856555172 618293771 505654560 506581954 222400454 770085494 814599001 83712832 458976264 419436861 775660607 232609376 565149906 390311249 977106609 732296914 137571423 969395495 1016913800 605500824 804435363 951797894 849417919 910298916 499495057 980635877 502161724 921082788 138066740 406979840 955830865 868373133 372441196 299265605 906318558 819254812 1067903269 809319149 817228481 175557999 12544819 935712070 1045951582 572548717 80408688 273723599 335522552 603343757 120936269 1039652896 996316491 651234520 749415382 369028392 434125349 680091691 795657003 370280372 998972559 732686121 430650511 102547910 310557975 733641573 837517303 1020239686 218673677 233807379 98956034 397458795 82799487 947984634 1073660757 464533438 674399754 770750798 476098090 675954226 962353662 253007014 570724275 1035449910 157043177 490791765 777013222 135895416 865190318 310267356 885216100 782433582 981275398 215227321 561856501 285700778 925405686 189992348 529467875 136153503 494741073 519786498 134032104 1044526863 300028913 1037173447 135412407 387745380 54236718 465835618 991714629 90489071 847915705 583197778 616336031 950565089 257005113 987703486 537829596 170626341 840348447 438922496 718732047 758576578 932228170 665432475 601324175 442306502 449848665 127294296 959532851 592971396 500571179 515530834 493512217 951952558 1023327189 1003817815 841913794 712913731 778553244 567341792 927585436 120626429 1058052715 982886164 701885738 382173816 831403684 478259490 729037843 761414501 955018133 994265991 917849889 618108134 597196798 832061172 35073556 364620206 123327500 138306284 755513085 2250446 141490192 75616768 73683946 499648486 856102303 158338592 255860193 856083442 971248540 667595857 59765264 52962670 618753566 465362875 216024138 147568801 889368071 440153641 301392929 611681435 1061683278 772478133 661321923 366582021 137859356 97376955 43289763 275337780 340059560 491424757 148476690 406208568 612383364 252772094 800344651 504099190 190911567 483741474 255416028 13613772 340642307 1028594054 843656811 774758785 680910078 95977773 641653581 143465265 624388841 744055647 425181287 412319793 315044561 774065136 511298347 850509663 423551386 809680776 10651480 935690382 516469503 686869825 254491924 283293579 192673833 683076991 994062009 385317036 667889502 1012290862 525318704 275253214 735029554 630718670 778096023 389268833 367503807 620738356 437649800 8843405 592076912 997979357 269242732 490751932 1012698013 65759679 438489005 697155635 324137436 965743413 389812230 746853364 27825487 197795965 128103987 352184669 781785735 590364824 588914185 1028933011 988728588 882563806 197840731 925919609 1045961096 530570656 1065666812 390318302 642973186 202910788 838041161 731948794 948969411 806641239 222832988 534078364 365390803 310456368 953907225 169279572 767270571 641961635 1037178322 30951851 508029192 676220266 781101519 593066266 248610915 784237827 944863680 171589627 795415904 635073667 831393641 953875361 632199780 845809536 679791285 614839164 91434063 17790780 325829823 234802760 314824280 214211897 163756989 788922432 387565475 500753227 303521075 679992563 877458195 734180075 764746329 211292357 795564090 467832229 49819577 1045865091 366840121 95386726 106816180 599890362 186065370 949548576 946636914 69157398 394858169 519722806 967283477 617698333 77216303 412716553 776640452 798704630 705222591 536273267 195000963 51850917 382388260 860464615 130715598 157236572 232676396 849676275 213458176 294566467 969506688 742951054 688008188 610826808 857476164 64544094 194641961 367923153 367237639 19391521 564078862 662438252 761851265 639744456 979027897 849894393 15260959 42488979 187831923 1073134766 815519443 116579562 199781304 931329642 952741044 983623328 893023863 165305349 447704252 191115374 889217623 1011003980 158864557 757399887 142725669 718577446 924538703 583708057 437079690 265048637 630141904 337696698 89948107 349272318 395249005 453806350 320007489 721184892 707876593 323427542 27548832 87082406 595057898 607017560 928884872 111899439 773982424 113512796 941374520 854735463 588020697 807444782 200709379 811694397 924133497 26104156 26967801 463963296 1037414675 634465724 888035061 569673274 865505214 377319057 848095963 365991026 168035219 281584887 680639524 680824458 362222340 228425066 943287139 547742837 1058875149 992713202 901226001 512866563 836054962 815935769 118507533 636536410 93334485 937097436 174161611 807155373 472345492 851360623 922860323 910345198 1072290270 268331967 618190248 490961112 668489896 476926275 710849724 428893281 757870391 289385108 792055662 115745958 114729265 403931156 194042236 102891426 310523430 89078688 974675880 569686772 489509748 867785683 947631108 595140233 209763694 465401826 885981983 142059946 37611656 876597478 772906877 903619578 596321381 337633843 566362977 670259528 371953641 790402455 702840036 1052598009 120626519 291109265 879960255 340567649 689236407 896413969 262229832 209752876 118365868 142256833 314394887 288638895 1049550081 382894507 429510183 47253692 672445157 144447270 844660041 923994483 507860715 213079866 505081620 716153781 415365948 1037385435 893991579 200795557 817372841 932860364 429200604 280870492 574218565 917455082 217151055 1052818327 646617540 595508539 44182272 236668784 297581431 80584925 870038061 737206038 988776595 388238524 273288723 501990287 966247234 839634464 474506864 912789979 352816779 108974163 777896608 133582005 845642071 138497903 102380642 978784715 515011563 649730076 417100485 131975173 370874951 467655718 977206533 45023929 378266817 1002364174 283789511 1071273461 487044818 946534361 231865107 801097045 440177622 339574585 882721038 629123951 257328692 83214643 268513377 887696917 741484088 150006059 682521838 899731654 175924956 355252512 502566445 452912016 203992803 34744877 17993156 342313483 1059518195 966542907 150907058 66744931 673773806 267715985 354597148 1016878655 873347091 758101936 217509591 817835890 1037399228 785426836 222809888 71276069 49362353 546058476 346307403 87550598 248794269 125132339 312968794 1070802009 421933466 909077215 820927800 104870528 849320252 942221525 503699728 344563367 655743476 893055249 736448991 939140996 390162263 752238465 457216765 34997132 441389761 429155461 713505998 720264787 723461115 144341076 742478889 403642107 859438040 856834453 67657403 989974245 997582580 486944404 675610317 847378281 226459164 32377801 660646645 518325446 699376345 1025370651 5371679 459248285 349968133 854702169 723850871 372427947 291525859 895999211 28259820 1039504545 498608997 3436660 466492588 290959771 641363295 560048554 886971035 93326598 810820180 120249792 933414611 730215955 56147254 141382952 459406814 624223305 380163774 512046604 1063458239 19358305 421925245 257208067 92339168 595856361 1025573587 1065939451 940157205 196854395 185148366 754597993 206521892 311317154 889870326 220398319 772858045 71951044 642721309 413845011 147278147 1069749500 846694025 478810355 419034923 341856978 505942020 862047597 244591311 405385632 1001709638 821404413 749698857 91607375 743927218 948030025 448289067 635879140 175479707 851287733 535705528 1007278743 979429083 144711867 367060422 1007979010 46132585 965087786 433008690 724423696 937422769 232252294 999345287 1032616899 476499759 196255278 127429637 584936714 378369763 40809612 149691131 196427587 988280457 115665444 913724758 7611644 302844664 104874116 240343275 168119281 204003144 925511806 1063686192 118631081 252336591 885357311 492690747 525725822 644880566 365776410 182234659 764545387 924375963 99264837 687153483 1060056705 389280979 365686996 90716693 742865603 1059542515 106513467 437059124 315181899 627145447 231456608 443536863 734023385 527547752 81850328 531593070 579943469 208310209 1037904013 57542489 824580631 431442415 315380692 815546628 975676893 912736906 684766192 739158312 940647448 452729600 1000945141 269509991 1019332043 347890072 555326484 32027016 918704000 523979544 927759209 735561121 809325706 289406507 804788741 548346486 621667838 1011944646 399396653 319393526 70540398 1062621832 121488220 478701575 470234485 527545793 400200619 1027120057 716794040 487551378 1016489952 646564770 944668794 668097652 704266541 137962348 643242436 535098307 736594356 836101226 309260761 545773053 280903278 91709983 1028419769 270813425 762769031 998825575 116836412 1064623781 784331190 802146344 15282955 146869873 825888103 64096958 617533636 85636245 824923955 328746599 260655470 112579216 349253151 691534780 230641419 581009701 817318273 900611091 417848279 661356574 74910513 325697300 845364461 58806516 853634693 89540436 45162886 56038465 389838230 529216015 926365915 994238624 871069559 303398626 516858583 138786197 1030641062 792280044 86448313 931881776 927765744 692834310 593926322 679010966 395580711 57659910 960721794 170160766 926076533 970507394 713286238 711617097 972797196 470871777 834723034 1052660772 693026050 286103514 584836325 192014566 543789129 473694012 96211016 514348301 927559666 716979599 386564452 705276333 744783322 818710983 487575174 180419607 851141039 860778384 1025623981 377321452 729309475 631497201 602166064 592276174 141729778 880682032 539731315 563823554 505686449 271064924 633493949 122450685 847557012 1037143591 834704840 846268445 97134494 478051589 120595015 482251953 772678424 524722330 277583285 403626023 438951601 554015551 895001984 134805412 371859048 920617881 295357552 42541717 650041584 290610166 793529784 925983924 160935248 214609 729697830 599444073 255727650 145658463 63367745 175303755 317312784 13946256 573985315 655208689 230900672 289291969 1053845805 732131519 820813006 118847713 331812389 383016732 1053972716 1041460358 197818969 846987220 476483390 194340219 851451564 319887358 352390443 851211377 620234955 968664354 485923871 835959552 355566414 354916404 680850374 419156109 735783241 967993568 404325652 379667697 172449921 768818498 347134266 774026148 373936956 763509780 363081153 590591916 751449247 493928677 714177944 237929422 910843456 696787339 600548914 648812908 809381001 374948372 239642837 506948188 611456822 1062841897 795808190 113406523 548050674 846812757 1050956664 454348893 1014995702 537832560 524208665 489045292 664280841 1003195793 561493940 644030735 753560806 898058140 447138491 670574702 172996348 638380476 954030316 854742911 683161583 193352415 866772610 373543410 559876395 678302738 970861655 74511689 452388769 777038004 235459068 55955215 1059169187 915847830 215841109 1010953012 405907830 269813356 447740416 610721815 830824392 512981081 531679074 717264411 622134590 87146110 646227856 656877259 39845285 789806090 683859680 510897096 154796611 1067989089 771882905 762435574 450351444 938182609 18162587 419660890 834213294 351607562 733898331 363772269 716473870 443793279 848861135 701465202 513682003 33533977 149335929 320029092 275396895 142876965 739339922 581284487 794751532 399434790 494507260 864000704 582558409 510562272 1065187758 86460868 519441770 411822155 910928300 933444956 903328900 1054924817 141431191 946193994 304221235 956089813 786944024 1032767274 913145875 364208487 552934520 288414825 190937760 53693177 755647719 201745903 429093978 239026851 185417134 770222986 345902668 851862783 1049709542 213082461 456256889 59187217 685333161 772685886 805629121 639575325 457177922 685838418 810356530 383845900 635448207 968973915 822430579 970767581 289693318 131879767 485346227 694640983 479643859 506245553 715331599 748395438 680293315 384898920 274682871 230915490 811695364 652287383 716850971 314798998 664780461 910072078 331888799 743880637 310607368 876331769 150569935 1057380718 674745802 126249153 59220418 244574601 156471176 618977696 716748456 479866818 587100516 94289877 161204732 41774016 220380924 149769179 894267157 235774414 215147118 554496752 592411309 825289543 949970673 873674439 1048731404 767135383 406769877 829342344 714577696 648114794 140528702 323463600 536591279 11672285 456031929 854923729 177970109 210011971 692663668 784998489 993335667 435758195 196266400 512568783 643553398 60579257 770103113 118585832 375621109 945035954 785749516 621086786 723160960 966522939 344839661 305192240 637840753 62393848 637076250 280533765 471982474 605983722 316751081 288037986 921801411 676838572 102785430 187828152 721675952 307332334 633244715 736445061 839201532 389160950 723827042 697766109 67697095 1016673340 794337676 323426564 152314013 525093976 950545558 394636974 211600415 85430449 780504305 460531831 555806199 163321007 542851453 353501590 1047935979 523874564 614910213 1033234218 116630165 793189504 936298044 776081861 949110185 650275361 254259231 1053928789 380122760 950911381 462894647 22596669 53489381 78687522 704360841 123043949 486071840 364942299 151600581 1072495215 656714423 194405744 605172309 822451743 221376491 781316769 458354651 470881614 584282342 1012150371 969443981 275451427 515820499 774682786 713633575 228555992 320853974 1069014288 908621841 524348197 923991095 343118075 570983050 565156383 885403337 187848 90463942 136192926 1052648906 150366623 946037202 758790312 630383642 617453714 440929628 922919292 374327042 124535297 346782719 411894828 74800512 333430191 308009521 344694448 620429714 780608792 906671864 740535624 416325658 562686748 100174795 73358559 404396940 400907091 969790912 128490991 298252106 468479797 1052086149 253632997 317670608 935052434 212970598 531466498 326261880 1058872359 861459498 1070903700 145433349 165768302 918282589 343918966 411963206 529131667 186315588 104590055 996733656 10662590 718118924 860846564 356068542 931248049 144207481 928168327 488153325 987952263 495243495 669778723 765410958 978734984 490093883 78056263 137596788 188607950 783270839 8203037 459904199 484835629 128993378 1035233160 571160444 376793038 994712182 847658739 88227019 215830462 998333590 979746333 472671740 1070817704 701168814 53609923 803548137 1005458197 394402898 1037841266 456083950 996577591 1048323588 985162428 39794814 434341676 178178726 252402791 911719529 1028603924 577580970 561193632 360238282 570534920 478976903 100506733 908351071 17971821 469674127 218917074 884013038 587204611 626882095 120205687 615106995 282525550 363735010 445096608 163285471 857350665 42122992 592305572 55405594 882406685 333539081 921136374 820028073 508357078 646896925 576314700 834318876 493766405 692557828 635878719 164196813 797178699 930571758 107013320 712171025 753019455 26848265 251491095 815759454 950869689 333372865 651917527 932811687 785580999 1045050939 55917151 49183532 566557168 502453832 785304435 752877756 746473589 147294386 275869625 640759956 581300726 107908134 816001028 359545048 784847383 560597453 325383477 171534283 1067550675 754713800 546074665 697819509 153145772 179315339 124656035 1070281106 552159063 63783638 849545462 127788901 342902316 174852532 388840567 327969194 131640389 930292557 790833820 967211906 811321686 665795083 897482239 101015983 1023135218 762686021 964540606 411728951 288469882 1070857846 338151026 659611947 86168572 240860542 960035515 893585390 216244197 179543546 79761112 802122653 350968030 968634775 987569312 286250160 319227846 33484984 871197406 174506653 137904800 924877422 195784042 266062970 104444007 248149223 919421537 178352378 924031423 692269708 3315318 910386763 712485842 931543275 802657426 306052902 188576489 244417134 872671880 952441996 799647921 787151089 732448951 95053426 811341468 1008377266 631428017 812255221 440189922 989131956 840217511 58451063 431633730 855773613 561086613 208875181 487989951 232860199 107614651 941340318 465865325 490851818 931510177 825156356 255465015 386556871 552000523 244935619 984378204 531225472 953855975 854739074 143734096 97632365 138125919 740148498 804862347 615933196 478803743 950582802 455304669 719139598 1038900510 302018207 609745536 676323651 487185310 27928354 98733391 766179273 308233732 642129066 931830410 221198354 992756999 705110073 343685642 940035554 638714594 450370424 890695262 534377193 489371023 508659558 30832920 451551445 599951725 613151391 543176717 411507546 231576869 201196370 570236832 468140209 194207019 542016806 870422815 662983656 714717059 922523339 359921640 593591165 28862143 939903233 33745143 170885817 939163886 871580220 804680142 1043068014 721920622 1007722208 536259615 572967117 1048360556 943446107 512832048 579233286 87062180 474595164 423154230 223443179 952539397 1030162931 429195140 206244543 988288516 1065095223 67162959 682589953 724750561 468168554 530832273 404632298 552472791 239907205 97066926 352885132 237431688 133381588 525156667 1055251744 197796638 1067027180 734786789 1039637569 230486540 953888573 440965310 448303667 734157336 831369901 681806662 884772485 887603437 155140505 1010657820 144898444 829557963 574526736 189181261 894123005 131686270 649634726 367506039 520345777 704508738 44722951 43185263 581281846 966429002 409546480 117452849 3397749 731443623 324981284 806024760 747746805 637797750 831835669 414593696 50715306 546312263 354070353 219200647 812224546 111200624 1026916627 764678112 40156791 405126985 284155833 81414304 68054664 384874282 386174456 766733340 887824385 228118444 213199202 942059491 982344775 359511422 549001940 785416929 1045092731 538972135 663027201 506819833 1049919989 632839934 206953222 177215996 214811010 44446641 841427041 310921350 893639304 488255558 450414170 704043799 568046102 722592792 902145472 541737281 361421389 707861837 713059593 710918754 684981662 854651802 674774927 161976867 889694221 983243956 831651906 397904039 272201763 996879569 153703069 1005844429 850098600 332541318 41397246 984645469 1024638190 190974275 433560505 134874018 675241997 280109863 416293801 844804802 720122218 89862521 815262257 361316581 524848373 665552601 1069282067 421614208 368014048 234906487 54430755 135520621 171957575 414769004 626943484 615117075 224751835 451839095 986852619 248822894 999491992 908054419 535064444 138232218 791769428 39790436 995468844 759459008 319098992 778497439 818951223 588314394 597472417 852400820 136326586 462394881 758846634 1021070926 122983326 519442816 478830823 967005168 435859384 288795583 187513818 298947383 705643747 426513675 288105299 779658203 544577643 809706530 241289067 815734022 1021558373 441645135 47956263 1060602509 164317824 580172160 906705673 844325967 419525958 462789410 569156526 1026009141 371015222 227982954 127942137 575487628 661165958 809680729 637221310 151183973 908106872 436093168 901912807 1048760431 1061029846 902252334 167547125 185773612 477143826 804280040 314318638 842145876 784389661 967155930 538462203 456196345 799070355 412134286 804608765 951766126 732679269 434183899 947623933 138535222 717741000 504147156 707836533 665640654 940197645 489648598 290209125 883842785 116550114 251024502 1069040919 219652759 477777434 737924581 468173760 316285786 273891846 431779151 304208134 443477826 768827646 604496678 954023523 454292139 268419268 1033072176 70607451 555952251 769193583 163719723 866075579 344623179 238915606 326579889 378622732 915484424 559214457 266111663 1067759398 508104067 427411097 44906423 366262068 728491307 449289452 396916471 436402435 217316220 415757452 853038368 111682723 160828781 127428719 834830551 324772185 899760324 682671879 983025939 473087153 268855924 626720310 690308838 327793083 943199405 3109228 183820230 931522031 652018255 323555323 46140705 199490073 904881276 848778283 361429784 228356918 739618364 356647140 698917683 994112997 314653487 802296156 855549726 661538690 114839521 663707586 212554113 1072343658 674732161 490683344 326700155 973623769 660266843 816495504 207720773 307483586 359325924 459722355 340708397 455042939 352550422 978747551 670268650 720544041 165556252 378280908 765889586 627977435 39865112 812561768 335854162 816570835 770405094 535590571 414716796 985279228 664258711 679525388 669606761 373508828 114923299 823923304 3131080 425717433 355614748 346017285 287993860 427280821 1038406136 251409361 794894334 285628764 415359227 568928436 39878909 274730514 392518859 648694836 586566461 409879244 850357372 357579601 27474942 868573478 776408688 587459902 376078033 968500882 818430303 140273947 829641117 808192324 255479837 1068472788 500847038 122765493 288134702 110486949 704953482 927787419 1071209999 1037819310 22416915 791912976 17982031 333559324 967103141 722907684 102792866 160807227 211005487 145817786 692848025 292618307 10936844 1021970969 795493394 273362471 866522507 99817170 876250142 292463478 679977802 1036255477 718200212 504977199 317827170 607744179 473072855 938642390 1016671735 1028598955 1571070 745680094 198398328 633194683 749137100 353178829 1036631572 775975609 695791900 185744836 427644676 665651518 704215436 101293908 685981995 56048957 173210166 515409939 261032369 80076185 147270381 1064705038 445312336 681136732 251807953 886704234 100945906 244606452 861503788 41794996 1007885231 675128201 224121705 220751046 118246027 6824059 604329138 309681976 791787 1024836172 861847434 494268532 87379977 117360474 30677866 405080328 35682788 650392493 1067721257 686935998 876911360 1040231878 878060418 843341923 426170887 72472733 91432083 410673949 697033898 884477699 116601565 231588334 728013182 73146073 430189869 126431361 361216571 120957854 289643958 694395162 93122594 357353321 439370375 819447789 792607468 793882860 636586192 903385051 48459400 664443973 785903850 743091770 688834161 898316208 671718521 580333285 789891094 187971132 36942174 440591112 171256940 169120260 718263301 1018347023 321890259 934379544 608386230 110690648 677866933 472160540 820364802 947855867 40482307 676134805 770785419 947571882 579943471 442293420 462323096 539742118 588826611 850097714 1000885800 833765299 109009454 591156262 101465329 939545662 428313591 627117903 199919239 793503093 705116430 769645771 781687789 617457768 21013849 182732671 310420266 1064761899 957929559 689446434 249764719 251774036 235130048 542311032 678143610 798503610 717217610 619676734 142492284 227214721 980616418 738085967 936424378 604146393 328433095 530220852 945163187 1174399 504962549 157984257 696119454 728190140 595458349 532271855 532348895 904915984 682810227 327231601 1016278195 322452015 86145887 550071267 358290435 1069056348 1070950365 462677889 571415251 191636118 438053122 826408507 64622334 662629266 330859599 847441298 551433720 1053643492 140801496 46755779 723766014 72743766 697913896 1053599190 995881736 1006728074 58966406 821106007 652694916 822500994 309797166 320602501 86422683 553420439 568287327 859087087 97521828 222665453 373600060 1053738076 224101367 167815760 955894864 370753876 760955967 258577473 139314979 717681494 563188159 260527027 943436712 1024257773 581128054 77307944 905927655 561079112 569604970 943802951 414668014 30678608 360922271 804938518 233397723 737638274 582728531 858054945 1000906494 179952260 716311289 197093431 172148314 1056452445 322064661 87253901 77904869 878311644 528478550 16625565 1044252362 698796482 645240532 757962886 967926675 68888994 884844788 537219812 232591685 156932436 643111346 859424553 894648131 581337918 930909894 261095711 318099632 1038692160 726529459 713363573 399091580 588286928 808149996 620621347 614720382 78968205 593641044 312042125 73335858 968675198 279928431 961145190 1013910921 330879857 934438716 352867829 418135280 645003287 936102428 680377274 283473554 39694135 726999104 934571540 404819601 523287393 425296218 501550345 499403018 175958377 408738328 608717693 692534229 924808201 1060266900 648597534 164395098 971767138 766517322 1003608215 273527765 636737271 456608545 689747123 537460282 863047772 441062423 185998396 1064713897 217734819 224157643 201296533 85213810 105146697 655457588 155379428 644678062 319374715 535105584 33099592 459841103 120882222 689093422 439620941 72076069 466601646 1027607119 898429717 691712764 609355954 809896801 223692910 731630177 20093534 59744233 753010939 576852763 1017292548 1071365744 164441829 195097763 330478261 319591970 112845403 504573648 25077092 60950400 438130071 734556449 751238109 523277662 923171168 562434894 94680597 456618297 251932517 221663749 999105 212631197 354699920 790504655 362568249 620542453 903659725 633221193 535122346 616064035 472631138 793428452 632867678 740267581 296430359 1012771367 1032008368 790500187 890651978 672161892 250631092 221403302 806562044 162561791 114302422 561803562 9004136 449885003 697827911 443429611 890457106 186357886 1052185000 755320588 789980573 418460695 973421606 962907616 708735861 451890089 966331241 589633559 234208075 692613283 325994093 678867416 370708720 192890087 697343670 9080171 59640212 374282224 338823450 718819711 516178618 760812506 707478467 127547184 280477460 884596512 645653685 628293578 77465390 381104141 28425666 875802146 911901637 356689086 350400480 1066327232 964360198 398955500 844595318 286357953 430372164 613341504 305122835 1054333856 22524156 534709614 841889666 289616837 773078879 92141914 635764082 344879696 882990935 147220299 701805978 7039487 229537893 897338068 706629372 237154571 769006870 452029286 956785234 204743746 802989968 740185623 78208362 237653663 450260965 54068390 607226044 333928132 665586696 545639781 444654829 451173333 363985773 960567805 864910478 1014393974 334050201 453499904 607000810 823062453 631370374 359656027 829803168 760885133 416072442 641517803 720203154 536071771 637075946 515340115 115836447 533029809 376593779 557051789 741523756 174327826 900889747 300521238 956641269 205557435 928443863 1023821468 69102336 267972715 612318064 172171816 759591501 169876971 129860814 158752726 506803616 754376849 310417206 513526910 815286061 177104560 736951788 845349071 440609889 759336548 972564679 555686637 964746598 664217850 301706157 198192594 607113815 664796174 470568282 972885178 298547760 288753619 922571077 640657547 400637403 745811662 24602760 596137694 304335860 237905173 28802016 501795437 364221076 898739259 668084828 888895270 74962973 949084793 12946429 941429328 501066608 268642206 501516661 446066717 7687630 824587005 693257272 88735995 471403571 445461650 827953141 324725255 97073306 619849606 14685402 948968624 71222359 131006759 192704285 557238671 197499490 261181783 697831437 134495053 1034564898 672018811 448433690 932765654 285009532 223048546 775971000 221188108 88686912 699833091 186254174 837595225 752355620 62941072 560878305 282749715 788952764 373011274 137860193 567890586 170975062 500944286 455562200 1014577481 362716886 435337560 828526669 7337111 926785266 777624027 1044043768 151766752 505326254 923988518 26643586 315272627 221460497 831330438 53819758 56402710 202229634 750466846 417312585 9436551 349534685 433315796 801893069 497248989 393877026 980631442 865536723 1012452911 424628839 812627172 889911354 136972505 280972206 427278568 310749652 32916083 869408163 696980723 1026457840 328537009 565810628 608804837 1069684236 220584565 516132050 236120470 435058478 1005796899 876695479 520240247 178964925 147258940 148535246 1041246534 435627878 694486506 483766401 858955553 718164004 224415464 11400887 567646106 333950899 525839239 782642193 290370250 578656810 279475120 743126446 559098141 677834118 627139527 855750075 361367676 25539732 241321361 610383012 76997064 583090764 520038990 87256649 63007821 683461372 839024042 545417384 127387821 708255320 416140468 741415062 666754937 578238713 264019433 566693028 296140357 160660477 591128795 368761841 225365593 673018780 1003688082 650736767 877609953 134922253 513251573 355995216 403947497 922450668 411283727 60369094 815237295 823842910 158415730 853279363 189372063 962613335 574722946 775694871 413797822 145504798 56507403 343188900 928701623 822759905 672841782 267938574 789277420 189976100 889391724 21359483 252148892 488797795 835590508 215426719 762495667 586989657 61800310 605251276 373856699 646412637 671510019 663944439 940116000 281907267 845449612 280735006 654953752 191994433 460760410 959675571 619941274 226480702 410491712 586858925 297506222 168328979 99464937 950413780 365087172 651618038 484985531 676909149 649409164 693437501 567795206 923988252 996406709 269277389 428990238 450501450 527466479 737118524 70455575 935405980 1012496271 263755451 207716370 107338881 951196284 123136339 485816131 38196638 873373922 701769124 546946298 1051991097 802013871 610734379 747921314 837946901 915287269 575745240 863115870 233863501 917034568 235594061 15029691 372363394 985226567 851152442 241775355 268845994 339041312 1022369168 307880137 563104634 351023081 836315956 1062050105 929904732 578839841 365295014 967386496 169768642 1040047812 237176989 222924050 702902692 399580777 1009815946 166111697 352672459 1009018996 736398988 31013471 780497634 404985469 828602745 804310652 784031024 934124080 490237428 408213213 398058225 748777044 470725030 875029307 708149387 519271332 1052228934 1016390809 954697825 80837116 435319374 962151538 135069582 792688934 686217969 507885233 618008956 928638688 932176917 1065103139 647237190 819845399 674671620 503729960 20335454 598382934 55265067 38381830 764046831 709919885 1025981698 888820856 981492909 747509978 263115465 868184496 710583653 224284010 490701697 831508982 923597365 844722037 822945889 179839033 192067030 808694537 382142967 532922281 655364887 87157142 293689240 855821997 527176698 647922749 904651196 375953513 24118593 975615417 350024498 124526507 422536003 956896571 194256196 353416426 168447711 516516906 404904455 704356317 494781233 169265354 58936208 280750175 847727908 177743217 850533130 419440274 199945202 974409946 336722553 571228107 933532811 440268246 180287334 447348068 224114 26814746 870422241 318315970 836398703 151747790 1031179208 174032557 241952388 469112460 306450625 867695614 246883486 380567943 896085403 714395996 785846158 521190140 71745120 417572936 166938340 139267847 393921576 974363724 584532164 649300374 843215689 899026577 709057086 337622810 631371006 439894203 973697813 505193965 807128860 629963554 938487367 280996957 844833729 149070654 56900171 533173473 28394794 18010495 437211380 188699814 575036959 339518446 545116547 650206623 269768916 779135401 679223436 193067161 875549705 597437595 407154361 59686100 125949631 459958520 105767363 862449680 238584360 757901598 313828678 831458290 648378604 277342018 936308621 642118064 862155725 162800149 564529283 998504756 293750711 200981451 508969935 715046548 219008938 468216959 984812393 159413155 933885386 644335837 788444091 729339733 279665080 709468192 18868747 78216089 330060181 884931124 228135266 364403585 898223015 1017640942 586326042 597183891 1057971931 924861393 253678059 946760334 332486970 1067304694 183184446 737842303 670759547 987794309 284555368 878006302 34509643 961511471 447922382 17317559 800919176 295376449 715697402 454921084 131682130 133603169 946173820 116022724 189036618 79724142 1039457312 538010612 654835093 402880091 288386296 536772567 745289686 171908242 471899678 63617153 517123949 660428801 333170180 164436345 370376353 1035244207 108120820 366509954 898947571 991791787 432237020 289144892 539960090 319219099 215493942 712911456 180900704 665344070 199961736 991134665 689763601 20003014 242914958 123492898 727015994 780771180 127726097 668030613 819121517 139950475 594824396 851538424 509667308 302923963 126397915 6403536 199586999 269147279 752150214 751964647 60505334 1006020648 653556762 251755809 463243290 241632828 890274749 468336694 766809678 422373273 197230516 272196573 641262443 16510900 137538736 282432454 972633333 621881241 743485427 634743433 950121943 1042047602 977940123 1013028838 934295392 669795893 599780509 530545591 986657603 1036816219 806102285 271548759 886959631 542757281 1065574653 416603977 1055648151 382257405 564429806 1014566409 1014597729 1057523851 715327436 545428822 241780733 552057687 539844048 720515354 785429106 667650583 471892536 410207534 722149959 235265161 773888028 318682856 388634579 924348942 65953002 972130656 213258644 1047422297 366589363 881254925 209279309 128580746 118914660 767452817 695927047 412099388 401012344 951212135 390985471 499989333 222663226 194986229 898022498 427994879 860226356 553378819 518340417 356207666 186377447 267821245 277244941 745215132 443631467 740033579 547502695 352133471 660524701 750489695 552474363 502496516 9553484 962939582 997491084 37738556 375865343 609859771 983639075 40327419 819343378 711358649 481042605 907629150 614884123 779030012 142682586 125358848 1053503545 608201335 131629820 480820089 413645738 8242031 939196248 319947046 415060489 87981814 176668643 956404853 997285229 585028863 229189810 791831272 153206750 101181202 447380635 1017104098 776718565 382347187 1050356552 613582185 221073768 193958313 321731817 56604221 197277823 494851764 894810308 51710751 286691639 948585583 795994119 311385161 981628431 480438302 784371605 873727907 8771404 880044760 76722399 708213973 751728180 42461824 362758108 2641154 954990190 844825690 392212025 530404536 886561585 53477295 998221016 636332185 253369145 1000245354 619821372 134410667 880492287 37960427 999846802 556812478 514280940 580621489 36672635 477858290 329424433 351247525 258061468 786369296 25077996 128805023 399563757 115326077 788123086 892697449 656479111 86466579 1018924674 969173037 529447145 1044336091 182281444 968517679 412633203 423949313 567436377 421518366 491279349 894291567 136975715 751101532 720690252 1003334252 562529475 1023967836 410331809 589216123 1017282507 680240593 922988244 43812275 871539347 877333808 514964469 748585008 551515817 252299758 1016030984 217537931 298508241 111146715 351343538 139838862 423704535 639158026 1023677646 506256939 198449813 549161228 316727932 923309055 478247573 957757745 299909952 183304210 852618449 414727680 482998351 337234664 472406156 762685576 380288224 342303700 747041179 757180802 979116795 197803015 828447836 483432848 1046102278 361759336 696796898 822501168 136930090 541586437 859388469 155884338 828776474 952573625 323927409 556700803 946376346 150531086 1049545793 425394488 85445584 697556870 948477712 653255346 437222062 832335685 479840979 1029204152 215516953 170435136 242502016 802201711 663176778 583862378 271219982 315382584 754129000 969181147 930064245 472805146 901893385 426674018 1004438193 272300476 367813625 641676297 641844460 651892683 413458746 192310338 805536255 816611936 34354010 221479929 248958108 396710203 680223936 1002732912 505354662 1035722030 317654610 474810814 101599673 199355077 1014134693 9737559 137956226 143848419 570102818 73578458 305032308 502426871 200809365 1065609134 365608308 646123495 891397112 728249494 999602139 464026388 394524515 80486849 448139049 762549714 679189766 126516999 573368602 488070075 1061850385 688034628 104393616 1012757246 980870043 386687971 866629945 44523268 17959539 624639514 476634686 209974936 1001404043 60436937 405901514 830925274 480752089 440558481 695467379 533895149 1004902488 370485811 27574050 433005855 695013764 377783983 562721783 204703843 158612353 385158141 367882558 83942305 314673457 474753824 998903249 854530311 766943593 66508844 179418764 91992930 345036482 495915210 251596670 483904650 879928260 614802010 147495064 578540494 976269752 54076187 534769067 673238479 931412122 835468222 536103445 200615940 622885216 908136451 74840990 121303707 646918873 979682062 16584858 497095325 283551028 471413640 986615688 815219106 21570836 319256803 991955893 751227702 1007213486 91975752 330862106 640696502 199346236 360126980 436443865 628827341 787099092 328322856 510601498 532701113 861317450 843176543 878426863 490343963 747345704 210624394 850557003 1046254736 984915558 194877826 210577616 1058097424 95148550 958760638 135382047 713810628 1015343527 347247725 63859115 987178850 989295234 355327392 282524760 957258452 282070679 274802215 119019844 248231503 8111421 1025375613 565676525 118679924 224417661 676803004 898037659 196733753 369945980 560666871 225127234 341114329 1034792639 949494874 968574334 213743989 323730903 429381407 1034132152 423200681 988641071 773322847 648139925 377012527 250184529 607194094 759457702 799393305 442150057 444350654 358778258 923026904 717614071 253905281 688613204 122947416 784930518 905056616 144790353 612394888 845983986 385232198 142465903 437698804 789168911 407024521 518620402 780442625 366915287 108301875 621808426 339015290 452332727 51175805 3687580 7956624 811835884 172352426 534951688 85297011 679261655 398943647 360969967 346268397 883755227 668051951 424467608 442380044 499756986 1049521658 8143341 644210851 157364706 880488261 363036111 728895828 622431073 240078611 757100056 182617413 766085775 300543395 10010935 512256034 238386412 441011617 444067944 824006949 45001245 109826812 417701693 1047087756 935647244 298973368 483592948 1017893926 465559628 3290528 657530301 573161293 71761955 151760128 646874508 927602325 509832270 477012087 1026686386 716226031 235218589 353784537 878409549 464371557 414309781 642718467 175202586 278486294 455158477 657707400 301986059 461491588 92319534 200386444 949840037 245041102 986749279 927242105 455618520 695148660 506733965 1066360125 159109617 891221649 15323159 864334405 650220000 923888699 791318951 313642670 469312039 627142213 202320798 381285597 706226563 1064086590 220670301 253315957 150174694 1022043649 822524829 630153234 218585570 137718178 20968312 212025715 1066741775 662752719 824996053 450907361 62272504 880587186 1045757345 632389389 236955447 332298329 427614727 972261976 1057776800 698656602 15920799 396469550 129754067 202986265 372427363 451532448 163915821 951671342 667270958 409442413 252873827 616773651 266597620 396355730 982779446 785962339 709422907 238834738 989901134 904363479 475004546 157525408 548822718 79926481 80192292 1006593271 764543001 735653415 993612794 217154203 376208351 466697485 361861662 783438412 984589798 101444130 398695261 911119249 757745123 308863997 1057633564 217099635 568442992 805038276 117522834 902150843 590359921 938607319 859833413 407173323 57373318 1064926688 319710205 561508863 996279980 743523396 515587331 538028908 557357114 420932390 1010800801 558124299 199334753 833986324 142971980 813145263 256988143 102311541 886223080 796828373 678563398 332913736 279494902 761577449 52777836 183822420 63032630 599403694 591760657 812255000 318138468 639546173 896003265 796356245 649782529 76238373 531460965 771500812 396166426 282048441 219515644 337105765 6664673 270363112 595823307 229777725 373986230 129802515 282103350 871946917 196803675 784096953 733953949 552775259 844555351 557478519 645460170 189855297 214642877 353086749 299320882 79532502 555143223 408815358 713111645 373579482 477095213 928901266 463497229 831622507 181179862 558733375 554968938 997585774 370458479 823883166 487053142 419798378 487888932 879352866 303785194 948488966 794225022 353150479 973941298 121606098 549717057 73947313 804825137 200346190 36964672 418732831 925708798 721818851 145882392 136127205 315253605 988557973 986959399 834092722 972797246 556205947 596134507 39154258 106766336 122100050 922894669 1071131505 608853079 427688432 115213273 372700737 29173336 16265413 299596508 25879284 318362057 91247794 562897200 780475352 9035582 325438243 144298071 528927290 942135071 406059545 51407637 391559457 870483169 738097769 797339562 1020990950 299269636 1057536771 323013182 798732744 381674575 991859479 123496312 154323418 347644464 728069048 440630465 705160665 697192862 66702564 362386603 468194487 39766932 198378142 379961584 252558029 1072254815 865806842 1019323035 168756783 400681709 558639566 128318276 30968609 1044757690 336245855 475999521 383582558 105150835 1020390132 577628254 999336114 66996905 140071418 1014614951 1037512578 493091827 15702365 982321772 523130087 420463974 655682657 889554924 843429471 561067245 37632581 385879317 777585963 492091155 793148313 357562311 188965925 354483418 559933547 485648919 723649715 478566270 619069740 813034966 445452383 810260169 194567081 428266878 906100866 308504753 256709121 930140800 736228088 974560323 322152844 12927884 883558158 762643364 543015271 565956872 233541239 72359788 932651976 741446502 183501112 852511249 484539303 902244698 83978443 796608994 94829593 536395390 30006302 750119395 887760293 521467532 759379333 294892780 66938853 102282471 760330426 461171048 943209972 503309906 306411178 887459509 421592147 341011200 190339983 516125052 83463161 617488934 588318344 949246398 14158726 725637204 997873079 532196778 985821469 575919797 503227732 976568648 222261584 1034495591 970909562 767123547 849042049 475647444 256228047 629157635 497796244 310396789 420331727 730158002 1012378046 382142319 190359906 171416257 978111831 783233245 282593739 8389602 1072957671 683108736 872735788 615044534 562864163 73748042 908551640 349635683 493008066 978841786 828398577 551692288 205782220 110907635 606649309 812765314 405565111 291037837 906950292 348581637 443317660 457724791 763860907 570387908 1068178046 1057825983 689575651 423468874 647394052 152794388 294435286 51485249 817638239 785806392 660878294 649721895 93739476 915808587 611379240 72840214 573569673 1060193420 822225530 875622986 450059750 864066421 313640995 961936338 621868462 324456053 342985129 213219153 249608393 618829004 755204283 364804817 841652769 95403734 400946814 216840404 16102515 1042585592 745635945 384704699 806342401 941798461 132178106 936425925 654659747 244295103 29341494 693495080 269050300 873144463 718148665 252546869 177203926 758380368 131209377 835935403 420834857 990220734 910640314 510765184 418352340 593396560 896175236 1046849929 988759030 605949224 95728963 900284571 704054676 966160456 361722391 431183248 84150082 379276880 382221153 988538235 1072240128 739340175 1064803310 872713837 399646800 896497952 460475381 513836556 328308776 9852399 40471708 863263969 482218741 889743253 737414413 76645939 193110818 692413137 731884074 135724964 313647960 963229948 614636720 379347634 463523404 754947533 716951891 893150784 240926523 559482149 433307936 94868481 983946167 899429830 720307096 514898044 834498552 1014390308 823435836 159655664 1016800255 361387507 746364355 22841117 108942396 562854260 711624239 634754831 807308620 131931348 776843970 1068060438 289238682 711288950 13420020 678348979 213798518 565305613 31846836 112763748 223990404 424472343 555069371 173910443 224541629 824999442 267342698 285141524 806882254 546965656 224181054 686148594 426038132 104735289 658488171 1031059495 749664495 994496049 175487943 306376671 655961423 41093068 168960043 417542283 1014054232 733400780 481740515 772376367 933155394 526401133 252916066 375538890 900748286 43714458 1045083787 117932468 827503017 955540334 714271242 413751079 1046387543 13650275 902470607 1028686452 86231220 966388480 853786238 1003549455 802955929 51032813 1058193211 949470364 700820563 552136426 603456101 781355752 186396402 23441164 671841627 423826026 330817128 140321374 520335180 107701749 803343648 1014635223 1057910707 118513768 1001104132 801050198 659291732 217164239 510472451 685518327 525008545 929404914 579347252 478242141 783202462 1057261214 217332389 502667588 51558199 225724772 923745750 219807851 176563508 702229643 613649347 1003264617 133268445 578264281 929098387 386193372 547988046 419816692 938221166 392659578 293499697 763334426 881255340 375392744 133814992 966083453 126846539 785595602 618682737 469886975 845009281 1060785397 136563760 451682615 738046726 115304929 697446177 955287302 81318828 491822778 1046946906 899114201 857232876 1018665308 239527004 895741268 592808867 468879878 868304824 919378074 500063023 684161592 450429502 304295934 284115460 414092329 1008244781 597135520 755876163 572164527 392493623 3766137 703688114 118760302 29509546 780141706 487673823 470872188 205412846 187315700 700279885 1014819148 978396939 705321132 26671956 910305204 415765881 727122128 337260973 343235997 270753900 1009927872 38651414 244988206 452901482 816344523 935811709 59569238 994757311 192424062 711405770 100917602 560540964 917398403 13314532 313621845 140021060 371385524 961437615 299872770 748440429 370034664 923198825 1015312884 110190743 1058003372 242623062 582358231 186229465 717367425 22607834 706446081 144720643 38532633 1036832892 748823556 439714250 904135261 949050737 275480778 729991826 223015101 291473747 17645005 263468689 936997293 10436968 540450639 951504065 469012687 158985811 303968684 463707551 81595080 578358503 551495560 174915889 513155562 755818915 43955142 408447336 70195981 20051933 669456243 564476973 650767455 26989616 532964781 54715935 15834551 930924231 219740013 1027157742 710363504 1005105775 208059967 468852416 672778374 635778743 95942234 421461999 353341537 430400151 842045843 134794883 718636624 227651541 270515059 661028430 237759867 243182362 663704897 854243112 1047942791 131577325 371483409 267990031 858662075 926042210 683709252 709122195 401354204 528781839 942707025 716022619 938213340 603543434 441926855 799935215 1065705878 520432660 738358033 322690970 317674375 27372393 262899416 1453046 130274706 272849237 787011008 859849934 579918749 787854043 111759586 988981720 228042817 532230003 446825666 67634881 45562445 865108148 582357836 261740395 613349632 1031336323 116984269 60931327 245260904 966693786 753575855 306304417 315224717 304787789 572384848 636142906 42307688 203137372 743851099 960704724 848757994 463021428 261909112 120772137 599998776 164217173 839182075 820888397 398510351 906918065 257441743 604463691 14078501 934036177 702759990 489163927 444064330 560493454 290729276 544709066 512378517 895348992 373374581 1002531365 157903154 568042282 402440552 263122152 405065280 322316546 429136427 761366805 967561412 117300517 959181992 208442977 441993618 1001651909 775528747 16494138 817300105 871846392 1017808206 889324507 116231427 344758770 507668910 1655852 1062910298 538630445 646526563 803180714 393053248 351019781 954618889 3397934 704045212 668948985 109814200 389195563 351134789 179908115 405469925 895167782 699609328 296771452 713625709 315133949 839925890 777086175 1054127442 905324442 600706300 183456874 566608487 985758714 107631739 568588877 939425221 381985314 216199754 978939779 470564917 569008317 819345970 779287237 393593074 793049394 36768045 545162819 868243710 147371526 411817804 760579903 577765197 155482689 523632405 947744383 310655339 237872098 1038819069 222580867 942302430 992738955 630276647 241322802 154905 552814698 182887994 579493555 864554995 199894565 349901558 1018159029 301517278 919227775 168549946 258030846 837024535 430719536 157760512 247270411 310919938 705735659 1023564332 51138427 420228587 168395871 922656056 58693030 156264135 82366183 872022355 668469513 169045801 479025102 408851128 789671747 35278894 576742004 211918554 958044367 478746027 680338623 235951183 1011978706 298874767 690319115 683135024 51189749 114625949 347050488 25868615 752045035 363903404 811423590 61622218 813533582 608159585 50134227 324740136 701949107 735127069 1051401940 337149514 440632707 781098368 944305871 358927618 1062364908 284477142 962481008 264275110 1057173815 567775071 328804846 54414544 612105160 573802187 882366879 126229477 463704875 413919432 925206367 163929447 630482078 149874167 320576465 842685873 931623988 662832355 273408410 133221061 1052084168 278614639 726913285 168678325 242280518 1029167734 581383475 709397117 917055290 67963760 822351062 502445782 568586066 240095082 976130389 322171910 427443829 466039971 82293943 902132409 1001319236 212504462 316269550 267166323 717536876 309409797 414507666 450484928 31359896 241348441 25066412 898044858 379579317 589446016 245115654 890149694 130072009 175549807 426548472 241081528 709356695 169188393 96090766 834918004 75550884 379417930 173375531 730179214 818691004 852471267 155862239 106860453 230137361 642697555 103239540 440184668 214942864 69647908 187651949 48193722 368636162 921951460 518906466 737099931 70457365 457441190 23460099 227656748 135795849 753405942 521335904 104454547 934451132 474846038 789979743 432648904 531850643 992122779 746028044 968217213 146462832 395982776 224625508 767574515 620730863 187225435 81365765 244662489 603261348 432268796 611521818 912279776 805997475 897243411 802304558 576507269 82225606 956766130 521664145 269932284 203129431 304221867 625480572 325148365 220473540 915277416 777051678 495465218 696074464 351178265 435030711 725163884 59291177 1033642044 1030572391 508298924 197841553 374121397 774646682 991459841 845846535 209233689 499633589 1022522777 617560223 739378877 842363407 15843668 981525352 919889135 457815565 488765164 822361812 104048561 824946504 267027596 406255634 857758121 873434093 625910059 806035835 1029803443 130676420 989429209 212932501 1046542656 469255687 723047034 464395353 73808387 468082503 754083834 784639348 175136420 697565333 905030065 1048555987 1068124459 257506994 406173033 119258581 553912457 811502132 466697407 189588185 1029981338 274578024 681769273 290160430 925294645 930432141 471437684 1033842906 498702303 258162788 689752031 369227857 37752931 619447654 662384896 384598520 581437460 138127708 702755180 792186257 952454564 1052530669 284613054 1018043933 519800229 825323675 740865598 271320825 973176157 333633645 509149550 500454718 418004909 473987849 607776676 1071380363 63803798 472130047 370246402 465636695 676347352 387030172 64742251 663833608 621148915 862189963 240902499 681691138 373674091 32322607 110018807 736739076 392511007 743675258 923949511 412096315 649150012 131151579 262784553 808981285 192509075 258891870 417253254 612804777 884452536 455897298 393022906 527550544 1034659470 424862511 1067952101 366893917 423646517 248972768 556335149 825174535 785504731 916241393 909011733 984753046 352904504 539916711 838843739 656154716 279960807 347384897 647330100 55494190 814506216 3025284 542579399 278095348 99552815 239044614 843026317 320028024 809385275 727183939 558918088 679245544 52111288 504370494 21564489 902464272 1014614526 972340644 815722146 951592136 751939415 11072272 440563093 285918274 683581303 618972009 214512441 1059351417 48753990 1001560297 847060044 260366026 5811144 154861441 883631330 983637400 818030029 44180202 751326034 188999301 15958411 246514834 1071080915 425779208 111026602 445229361 1059673878 990221550 977264738 276018865 587341019 378176393 489393314 283776319 1014915734 346741259 515905747 796367910 615276829 396599976 894559618 620463637 716222242 930385797 337251267 90978259 131463838 948891972 458929767 223896819 604869420 520913911 971966419 1028767890 834762486 633087407 821748854 406295313 510103906 81962852 989383663 934243108 750542990 617665209 956565880 400043377 366715823 260462648 148038791 437781418 973005204 864006060 313765791 187574984 397908777 124188290 71918561 286983956 981720224 1055666807 233825577 593511536 1021969562 588398141 227036609 61762893 43961223 35493969 982965075 719370765 89630535 415979180 866888708 189347224 103134952 702136855 1028846523 818435181 229706471 247159575 656775401 735186359 179293189 473465160 864819925 971465367 1000436888 153025175 386356034 375851349 407953855 619063924 913174551 312723423 468353091 474795952 915048963 407131649 585260362 826851995 283493100 853334840 330654273 399060647 787383138 963092328 997838465 759469983 378692919 783968762 24888702 213952839 292866722 328427704 226319362 49650486 44789865 948815157 994808470 373463941 640814490 575008115 736998339 708357518 728698885 397988685 1065083376 501049248 968654354 461228346 959338403 361701087 707067346 161316585 112115419 720711519 968868777 30366114 290920987 895532137 963063203 650748329 136942167 279125159 375949906 115552000 1061228081 256015156 950015433 353577272 461563873 375455499 981617264 438763763 904772766 439124621 326654760 403069771 470697521 450507849 148342458 224333872 929239996 647854667 560217331 281885206 145195026 446872187 695601202 537511033 126009239 792149465 1009559729 440838260 159815257 349126172 268115656 593466697 26921646 713280394 898254993 407013946 301742028 462120497 990376666 424128166 908847522 475016271 549832210 139564651 1014166259 385308339 909090769 864540545 534667294 534912419 123634688 67602226 39082014 735641037 566782866 465497592 335011413 434072546 337040745 1054065186 550127377 202255203 290599757 608683537 617497449 119144903 170630461 116542231 861380989 776523856 595460419 810257706 987157286 961612561 59021325 744356028 379596868 611742837 579958453 798924567 413978418 752264069 642985186 171938574 173524370 156255362 612787192 939149852 1065303488 328342446 193409576 166911972 792344636 651220836 276938085 1044900507 349305936 440758590 800644172 280329754 1041609471 265496314 725991637 970698776 781608594 777546659 690729638 479193446 225307279 449484532 197923131 847587984 458982432 896904965 798962324 391071475 291799397 622429080 109480099 449342520 85249703 641683333 759092542 390865892 332430596 300483479 281270193 842946051 1006874570 594948472 75475557 386937062 28825432 427290234 289851726 145319275 227170072 858096023 312498201 260045713 489897019 325620702 386127713 280751918 72168887 593100103 395186605 931409169 308604821 742610819 608033932 701292156 59356703 739731455 244558657 415752884 700265109 898404287 257986027 519126138 822505028 960942390 648176920 661264847 979946183 42948368 644348387 259592433 268266022 927772753 446098964 41000551 604090572 200240484 375878615 442081940 409033540 192966039 825120400 43372490 399909558 829852777 346087169 1041643399 862894812 775289360 73968003 326358090 142049404 312621960 79955690 932521632 915979913 26176135 801517190 920911921 652405670 935792732 101377801 469399759 1000602248 715716327 715836397 279340455 204302542 86155702 553564976 154517127 413374131 1047483064 174132512 382358051 846887143 657455248 706044608 12447298 459517265 342117227 707064330 772439248 128362644 467606438 115790289 690689744 198090029 885903037 200974758 253795193 951394091 18744818 591422147 568552478 713892007 665744593 1053155805 385382258 815683999 955195789 906635478 763249364 415309694 118811902 133448763 584314278 600841734 1071526051 980445527 601798652 910724863 324080210 312794909 315176483 179240088 315339342 772514023 199833020 116581307 212501854 278430565 820635613 272129545 710847183 493352091 214356634 684879242 457667813 941580798 600768970 981208286 330394967 351563081 260060611 684296128 443674160 858607768 719608316 579443049 712065887 446988903 992855483 1005127596 459686098 553647056 75523204 824638724 983241659 778977338 593156845 416411842 263198210 497964540 327959705 207395963 138521940 514303270 770890087 61233694 296275003 399725968 471490584 1005178556 322354000 921851709 593845766 729053851 258055128 368644286 25179483 14011905 836002207 1045060624 599995715 295295766 210877986 465580895 537445343 769245222 621596838 26969167 969088635 988178470 774649164 916213176 351617847 824264265 771147722 243397230 554639512 828510216 632216433 18365814 505481665 1034294087 565435999 789721868 460864827 919933921 895337409 565461590 49149497 24505859 689752100 1260020 1048198978 135129062 261396643 762191826 53641291 325267703 697969030 42282745 275499058 527359946 107197399 997265802 859967089 655332746 1019945040 925636151 18726830 781797673 77163890 753778806 671948900 10723127 632246965 959138543 214640863 358685456 106250956 184819890 524686788 1062467566 798169319 370525774 341292435 726387480 412567642 362347107 688805008 97151887 152571466 207119037 878885349 109060098 377164399 826754222 259859385 325818158 619057197 179387751 59576178 926621417 664243302 106381617 49368399 920705807 607903760 768088739 207998847 438262197 212831476 840823970 867709891 187225888 509198279 615030434 144873418 30781670 696498191 956223119 750752144 491693098 424424304 370990383 304787401 890809314 628149093 779874660 984640165 1023330558 984472366 772558945 928827368 928979020 330179909 194753276 581648565 909633885 829249139 530030831 252855505 326303391 418363152 132714436 414409359 504765434 141519238 353764691 966223733 521774855 516327436 813753801 942610785 960287683 731585213 193627371 513829961 581990118 43591939 548248572 997871981 245752404 316615149 664265658 344171524 918785126 227336961 303535998 223749345 243867288 780880912 860715621 862356228 552538597 977963593 272811993 358364514 755709918 626160447 203932588 585078913 831796873 824300879 899859984 880889647 582632448 283136567 930773952 655803349 882332897 124259499 374548843 69294177 306414771 688215142 332793942 165472639 78063620 595417515 520577738 812717846 752427920 860244411 892069052 503002132 251649238 853773719 521483299 158258782 775631918 115444681 756730199 1049997739 52695707 296326332 308396072 69727050 493419289 994212859 72028757 565063735 383457019 109893972 310636103 219734189 113039455 258240406 268708972 132224598 424544145 359229961 510817750 138453129 361415629 238754209 563701486 320183396 813282890 1062814910 982249822 991568066 215729033 696873659 409787339 406235433 513579721 852570127 466281063 663856678 852262073 607858386 431949619 568187877 211880886 841613176 548796526 254227039 728720913 585665474 329825847 193022769 768050900 239720299 876371611 797779012 151703334 334819693 920309822 4164916 328073459 728516970 103506506 1018613027 937123418 835115065 741250445 47096330 312609853 863712650 960889462 856056856 382384853 860197832 648370244 140380369 100229864 835722262 637767789 656794046 448332153 730331865 868122564 188079289 992838028 732654863 381346575 15422823 32446774 770469945 859468533 261809175 159427417 635479516 543837036 640927942 429377382 516434682 761595631 887280332 1064685438 550642914 93644672 674513538 927290359 955542308 244018163 575888525 771094765 661704106 1016525805 320215965 194355141 306033539 217917107 774142232 492831396 675559975 266363750 65761777 676413616 951479839 179678048 890768241 948947583 466797205 554217560 108293743 1006947493 720189844 543500809 932752620 480182551 18558245 349589776 381381878 80379952 924039457 434911557 600129752 100998724 944452541 922488268 697720574 988560361 324611179 915200487 674083539 1052361761 144669018 630869355 243509077 347705141 166670842 211056519 388754204 782585414 973659905 460912780 1015687400 537108544 828852072 662835466 568452099 629038157 489280879 497485412 15759400 1004099214 351779817 172253259 503397256 694733180 651202598 449798667 804908771 787636886 313443278 473765141 1054047311 721411199 270900544 301904866 297429577 85583140 425871439 491999088 190536115 429001126 957515563 230070007 715313058 503286583 466301831 168948797 513926383 616409270 400071189 286633974 843267994 590940223 880065805 762715914 284137243 121573304 517406224 66800222 738102458 593645184 602747482 399830909 1060360608 99172282 457818229 1016562897 766422927 972137568 145418947 291181211 653343210 17221886 971698479 23481208 215424225 822416633 956453268 200710911 906409112 501943571 1021050659 443389639 208400514 280612347 636920667 877682029 68113513 240136595 28651185 512038509 644981309 399536654 479417376 475244264 826138396 146362212 183865784 710034241 840421597 530697583 312694610 42470493 582159430 656456503 717498260 66877325 413954039 258345120 56352453 130171908 818999462 951756632 1058096478 875709759 871572507 296158978 1061304087 650587825 816834403 684615189 1059919760 1001268339 676266361 801107830 1034592506 774116184 782999068 762650744 781597802 414843295 362351294 827980723 411247535 77192992 259509129 173915318 294251426 170803128 715835062 936563902 278885512 1044875096 843729088 1015973290 299082442 243841046 517980388 382813279 278779253 446084173 658312966 891520488 321955356 743229520 212426303 441736141 806932477 988082911 111514669 558346901 556951883 816658180 152920354 235605653 24102437 884481201 244613135 1032824081 454704918 401270479 139351317 223109745 851703507 20694830 596893349 176226284 810627137 316216775 586065066 588357151 72776983 126127387 489871207 191788097 783641120 550979318 620323760 466316393 972087940 123389834 196705592 992018367 512957961 104584326 319816406 233431476 346890161 743116598 25664026 738524294 244551847 202764376 468041300 146967019 789034944 79114398 879505391 374338387 816857642 990574828 753521844 430649810 626678489 687075475 672983488 368019811 702739415 975390074 398620702 298339893 667871269 90453349 588536323 446964855 830915997 149951134 612207787 450574773 588889467 389981065 224052332 1071914784 426434873 1040789637 730816045 782788951 405903759 713492462 432596927 291800624 230590283 73281408 733049852 181851983 1045964705 956520551 33917488 715672360 32990604 916504946 439984751 1022126616 259929600 1061393269 87426222 271243096 789892634 679627321 533854962 1009473437 1052027074 389792932 102140812 768649686 707025908 316970131 22139696 924699162 571115279 260008344 338131322 77396344 749948071 420916463 526101006 27261544 656126487 471875613 301717726 989958034 794463569 232272377 124677510 476631658 133109736 169434698 681691802 960306719 736213463 703697900 294958703 499319095 212074665 626616279 138324334 235327545 491814598 147395425 86202821 559751515 94919918 183181857 614468504 770159504 22771598 748884519 534183385 461167011 694116637 235027610 494348768 629685357 890289744 8595003 228764674 867200531 860659175 852861002 1052105717 820806588 299045102 175252926 823105614 961143253 1035973316 214580078 362997639 583574621 912595949 812596355 368236165 72670947 511713134 161979219 869832938 66816149 176388482 884097167 1033414383 554135588 584933092 453206193 1001711088 207204703 490859817 939450255 770992164 404772754 222567020 1023289444 589962902 968413617 932555734 948803054 844615054 305971988 821267546 361695125 435690520 839093189 504420335 805156858 644881957 117434357 463047474 877361108 940744621 393281506 328390685 447658080 980868941 125000925 148576328 410372879 2201352 806107308 734588970 154589282 392694013 1003999519 460850249 831916945 121058766 472565414 875011351 195452928 1043843031 1012020434 851094711 1001709657 441787554 1066308531 518225226 963709120 1049761398 1016750102 989223001 1030358865 341942439 6690015 678422020 485805905 786765997 365880176 687491786 581190258 262653201 135783650 834635914 786357487 960375178 364831518 329824848 1022156045 646452811 492805747 773527100 1047945694 180251468 273599459 571102462 587522915 648889952 144128079 585897988 647464213 623204672 190847302 479603541 885482526 948981812 168829894 476304484 1052067569 800360642 548104661 837798926 849262293 1006264299 204388811 907522524 355578833 371527903 341644285 401085032 774327870 417742682 434719311 868860754 396410907 119010062 64410652 5287065 50619485 628260591 43260562 872571481 93730971 862952515 162930 632060029 143368552 455652305 928393164 440338023 226955339 882709053 376720478 65720198 381389433 50718943 847292240 458119191 50700562 196304046 270173677 142513903 379387201 862911713 153086675 9140975 628019339 784534497 213926728 653662583 205129796 264307073 84778791 538830174 109827436 329701043 971818755 635821621 861445957 1036592428 828565516 939078142 335275953 996433585 225643184 23159508 12265958 822918758 1016888848 115727120 604946115 517024217 659711359 586792379 142915806 752716752 446152843 200709241 360940083 708238746 676741270 720047252 571266912 714117036 828610371 489408954 682769574 1049134365 225138742 64450266 385896615 826647295 166781940 573605085 354507115 650888953 94960936 359561344 281316226 252323796 1001883679 455667010 942555123 358344701 536228239 556132385 85118032 988949865 756803210 432008659 523153823 260700116 743513682 266084881 75693068 333390585 135114681 462773373 176374020 30800433 566288392 588594906 48518184 487996194 157519174 222024758 234515116 1037654235 752625894 413774532 825688684 544563860 638453906 606720992 898178250 70654869 915283516 89608398 259953244 689245836 524413140 687239686 275217778 519177010 574631741 414417131 1059051458 407453955 406124912 7235225 102006541 798013267 111380805 49141802 681252325 668400241 494835584 1044496251 485190742 794831046 314317101 774424469 1010886121 289909854 331209123 44985046 87738597 1005703841 827087166 437961105 961042912 674312108 793787120 13998545 19177206 269252716 216984917 131199874 957161597 827547936 36274294 69553798 603829143 60125022 924494858 28541072 125489728 185906704 304887969 336697659 767633893 1054480445 916671813 13436780 479034988 28764811 791256797 941052597 427575666 586951288 305337555 106023081 979334237 182468370 496343437 1012917157 952688035 746266630 1020221667 258555782 742589333 1073141212 1050799695 655403848 649919418 212338645 658940860 979340554 733726760 966431706 710981644 15993054 583966944 260650483 559362418 859957438 178585606 230754348 959982766 112721698 837337256 472211933 781616468 951875836 9059751 15566925 314215613 131945961 439144767 210398797 198941006 734697562 1054522573 696290530 151559037 544426432 585043972 435396951 653538292 640105041 46918700 48203511 47621842 1055652890 1055851680 781546386 810167006 758988899 209623326 51145263 318138683 281437750 592054116 1003237199 363795479 353296545 455982887 14933671 896019664 444390453 499285492 498357859 21081790 31240187 737890152 980915846 889512103 562849197 24832749 32584661 777113167 754380143 268374286 597982468 260776206 980870324 489741582 492293906 635437701 549799731 738213503 96636579 588397994 247694801 467692113 164648413 390001679 946114099 702720814 308945290 967940132 574872086 1042367068 29057239 990565701 384604536 407748272 182615832 435804733 824489364 33135299 5383955 471985986 329673291 886158594 653523792 35674978 671586510 137904174 745259024 818523270 984334792 470102352 372303534 923017194 975447697 886945133 631178338 945155048 333340233 698295207 601207187 336481382 867635491 340585549 542040584 342943579 521239252 531914685 798697346 959376069 999442969 259994489 1010143787 691267449 209989510 653408282 257470460 919814744 955452538 18439363 810991010 586261467 887563124 171546342 291279869 1019001625 33836856 794967712 351810702 380172849 1009675555 41606180 869306287 607558636 115980707 939124253 363722562 948387883 517942929 1001444693 544185035 1001812892 528831911 63802567 993949677 346164214 359232158 480275510 836151667 366929682 980873706 394234896 49805877 795231501 816060677 964215647 562407248 949472219 6669326 291622451 558609345 37876909 820187402 28421417 391197673 609314848 82749086 906473908 262462035 1012695350 598255730 369632268 384379896 795229034 163583383 240434756 5930169 303747968 226187354 892020720 22360006 635042404 659216925 887524212 46046758 232650644 877924577 74321535 667358992 811376825 365046508 946232760 640316035 401299147 429875695 160628295 125668052 798127273 861559125 834763808 413602142 756499438 343979234 116842239 970684775 460663163 1047623540 79539292 715416813 357900036 1005745131 394091409 240296194 1016286276 323706170 736665015 23092199 119376355 516728887 877740323 406721323 744263831 747159274 281442255 581362565 903315308 917461112 1060275057 346138758 438768095 791929132 61620321 238766232 39690339 107559124 766278966 209406991 701766398 691757874 54322979 226550999 885394356 1007723201 876262158 512316561 867446242 435214200 180051947 709954498 105809537 627607555 785058599 445790934 1014925736 145602977 150567574 463735195 1001700970 461644344 248688464 960008470 1044367265 341347967 434972386 177743552 237503463 776724619 213909325 150669429 907576258 694424242 1018275808 158266608 731196033 236363083 97240807 872433224 379414440 735349669 31916432 542250059 856388222 141110804 993094812 903151309 256747401 500715783 1072087780 738575524 801542903 297557769 329061968 308057664 1073199718 1062616400 454573410 1037469981 686532565 840291147 421188625 898162049 727269387 223233784 207709238 574487073 153619739 554456851 556222002 654025753 714896236 648455945 642754752 755823876 693191080 51618781 564765217 23968285 945550113 679652099 307505691 389057408 177074497 520251019 856686128 130555392 151950755 902913251 469710339 368421576 900003818 482346199 888054928 765702152 387947435 590414777 215455216 171547589 1058959955 477077879 554023540 490632414 807464832 1063769419 761617742 1028927768 958656272 840130345 531489335 554760459 1039662347 783378152 130385538 582160146 202574749 1010205042 678145573 442425967 394341349 949899465 479231367 559733925 120093131 791485205 862027503 181310424 22826785 949671281 557537340 453631195 968912905 520253391 763583124 851786431 938408674 764512027 256756324 278207928 501038188 1063945894 89553674 1003139649 848254624 996084110 114508993 154551628 429471019 321963010 578086244 346293479 610886326 46012020 280015094 177701918 215215289 586972547 267993820 347164253 535485020 814533825 585939314 672408563 991257529 533618089 425642875 872858639 494980822 823201879 463602302 411616548 835699370 653114040 682661454 403192458 136973152 617085160 404149928 688491749 795534511 737996681 577868314 128548053 847055873 549063386 851866453 341703561 828595239 644836160 112007313 914518417 675672291 1028412568 373575073 363187480 74854317 1050753738 23400496 614984194 194897028 652071539 333672998 734560988 131315499 333775921 143394020 783472058 850267091 345132342 544085824 487648840 746205986 978120932 337634356 132060388 529122305 725001399 1044145479 434271162 1067245425 481282421 704457849 718462875 648091602 869513593 427953463 414804656 109905487 285121710 861106800 106404469 941386144 439114256 378930463 1069430435 684380961 263459931 614383015 338459814 694160667 633171453 256395485 1054950139 614874022 898102088 188787895 894515813 388512587 411023832 549038723 213276736 1015026086 355577452 265564312 926459784 540089537 985594881 304365031 944173630 1000802628 1000197553 369084988 231093121 846782654 184876556 257051381 950337461 459174710 253788901 233180929 590194362 193263841 366785207 781423678 52283025 1066337789 396450719 854489391 77802963 144516301 924699371 110888628 962757385 985134447 831090822 886374715 946792252 201042533 765701785 935810686 674134827 844518081 344956926 183576614 78082282 512153550 855682174 576999723 779725507 951930862 715198121 851352848 145547577 52959362 526314938 493310790 710057447 226626155 335448210 884374435 517071721 657792961 207495696 594905520 58757617 841251921 137992654 536821517 379259539 1071717123 84772445 655097534 388424291 640571735 602487238 787810310 473393931 871137125 809254437 1072501037 399767305 231426185 875840293 579559479 971883823 583284619 508842159 26771620 342245883 882360127 399338607 738331556 391188840 203747659 739701504 883368052 18472293 321718010 308833468 985021980 154667206 661437277 61172602 372987078 583438520 612271316 927625957 580793145 941894932 531130622 647364073 777245524 405289897 652741867 976028222 679657213 506240307 909814742 635948908 234231715 1053547463 796063561 243087017 566365839 725806535 665282644 626661764 726376710 851555023 403442845 789448780 1002663831 649894432 316165549 558679642 773690350 819675800 643704412 998710760 617214447 381575338 269485603 949147824 598956391 1011977550 613340740 469470629 575667590 982988497 649132051 760567598 732093127 278839849 434040914 939118942 609672370 128085246 70882696 474011211 73436540 588611629 1000134647 923664199 608150693 801465469 295723938 864526080 745889986 945646411 716780452 1040610613 565567491 11256093 354672463 954051116 345848025 192632200 299371380 774385645 668009351 322098672 167389041 142849486 466518881 463519021 861953697 672090192 200572725 120075168 195344056 833818718 686972702 260564958 120683877 492494131 321252018 307680692 408104536 571300481 617072888 882144175 169473326 413906356 595882743 309549652 453837667 335595598 97412239 331007962 783173937 412523166 376110932 807902729 363390000 1055673463 277655373 594220254 634990551 9542160 260888996 254707345 1013310215 504760546 822105316 430828960 368523369 798102387 959273445 690694875 413908742 470873684 36857112 676285954 131881238 915817817 371014715 1052343745 960846064 939614094 862878260 905658653 894714656 680162107 975146315 134478820 643107044 240688829 723280677 4963498 712775454 386430665 918919122 804074755 137933080 20157162 988362714 766891014 146961448 1055447197 458342178 597337119 618110061 166855422 196280913 707063501 155312599 1018284476 779545968 50346742 857148500 175967620 23248813 263193588 1064973011 367200804 300740702 141959428 162674302 639720221 870439771 517831362 972277443 765008036 703937503 296702016 482467060 28109138 210016440 133189864 992140043 159362498 400854832 737245881 440023589 145819019 868618877 1009166012 852753505 369983599 79316904 399632530 879339156 604213713 973801545 775618416 217291320 94375033 432539388 967711161 644769890 599302049 824332105 80554440 720269571 837446311 783671716 352701170 376972247 816146841 189490728 644504041 438824278 139440604 434277451 122004469 432469641 660592854 852888715 235001086 876718597 438541555 378182222 928616889 1051136527 70424250 824149219 994021358 1058557481 370942662 936071065 151065074 718774388 499893300 555826402 725027007 660881781 496971710 560526630 385889687 37058077 124021426 988351250 131378554 408143892 8274096 636897746 474267727 986036376 942786996 552219 440217816 732874537 548116829 579432073 977128093 958236012 729689349 618810550 343553793 78207001 354242000 31399047 816222555 419486695 75753905 79788733 329761318 852730431 62984191 305355289 895066244 889408816 897307241 331221280 982231263 893700806 1056291761 1035958524 907563709 974280343 378740346 2754909 1016297981 895343290 520674829 320095575 387699707 264302240 19579754 1017169196 1043105482 516331606 502455443 1073083052 186001063 22313495 669306108 697603886 189027214 900556514 176990635 997460620 315021773 1030941909 911188735 1044540549 52593863 639402130 366053404 864753425 985511467 209200659 574896710 232391047 375823668 469570844 91714045 145628648 955879529 642736655 165536899 90214036 1073377979 402633846 768946048 822278005 100741428 626657322 630180634 72149364 659148306 739968528 326249357 850497339 905883689 990361319 922833774 394471113 29810305 951522950 456675615 652387936 746292689 1059260350 423573700 206763939 898487742 612001769 803649078 227682798 880966483 811359282 624015278 878734845 79684255 184322978 779840500 925628763 283514442 814425585 728788592 421303316 408106175 65611941 395085113 866758840 579006197 759896352 679807867 193654908 265377390 212204329 811937269 988221255 408689700 408847296 686575958 255415962 126377606 811688375 431330239 481267475 26000822 535919883 428466412 318223760 395278642 1028612709 94517156 45685331 696023227 1043875163 810070380 787740347 849552548 444277612 298750840 594830783 620655740 317623846 894001177 369454966 205553243 45136443 665876538 979584421 884456863 618729003 1045461639 708352299 1055488471 334333289 627687944 1043838431 692271377 593997178 126485273 812704887 176840936 585934292 1021944128 601452674 239601687 775916445 733085060 74522389 305384683 788320911 269604849 222120979 1063577832 150120088 11005291 954607897 412673041 134908673 1044955195 332641697 534448078 720497341 5286161 128756188 473407565 165068015 782809749 1012015525 997729940 512029906 87701616 858330504 842666757 1029437437 493156402 516620729 324543552 389600570 104898225 1052486772 967587810 453857028 653007383 1006646951 457731359 877025546 945891961 977175741 68323065 417792596 151724187 288899818 830055040 786522926 132279784 350338544 964406121 741764814 386017602 718338618 941029974 209867610 217988914 982573175 892396348 66036316 1004839958 986308632 16954668 227400258 179846119 409412116 383369415 1029498846 609137054 546401897 1071535103 982739366 707025505 514609293 897607129 615274711 29974477 205203383 381805748 622263922 957126439 318287172 1020953874 1055924534 180323755 549396798 151061181 108604336 845766414 289329654 405966957 925066762 950858635 453725056 906838898 337257614 570492724 720498395 103534108 996819510 738959784 657675483 831972542 788557996 283152859 951823516 325875840 727145277 731415709 504531187 614888716 918637336 981836253 737229073 483120450 528267825 305150359 430268105 938549114 820109692 1029756754 224956389 777777321 979126017 965676216 991804195 641606203 628402976 865168420 471986782 899986975 768222839 173868287 411314528 890553974 304251380 315600877 572442445 883732703 847351918 421864159 934031010 916785958 259322474 508970242 701359671 463620187 737093894 654591281 716800559 164927974 53942707 452217507 863401542 667973533 973729152 682366933 779856612 547594330 296474109 4091202 517073938 62450449 123865016 1034869429 29724105 202677637 454303002 1069374596 963591010 133326867 835037199 444859701 70373710 862230534 938638591 166635190 254094235 1071261806 861135959 473125658 200923364 904559750 842289487 439477 152691744 544948113 685581560 406774554 996149295 189972401 893141530 552902740 506166026 759341170 981221658 294821614 1038940553 83009140 461205698 824076311 77586311 973656791 867524590 746286311 487408694 434406528 692431007 964341086 4001751 491834911 568072093 191344673 928397313 921533319 329721472 581958179 913425344 796140545 775503488 278007212 927995995 524599395 1060703424 992862443 612116221 580537617 1019430638 996850653 769767629 954132998 537839838 38096922 537871709 17568308 1049300079 523018017 696281421 864177950 726386756 670012393 44425398 317415129 603306698 533557525 832464334 989426519 551385735 274300325 801046675 215575999 722944937 864209239 928329352 321300693 470804952 990484228 253391788 1045410992 151006523 184005426 7430428 676240101 482117886 91112513 892491818 993713524 1032295681 255796694 880873473 115777889 463116714 1069354882 574759676 227253416 942874437 436312732 499964979 123234909 986947631 720492675 659928459 675851868 848261550 795266167 638597734 1052434269 1067484182 510371542 116782326 840192258 262639933 759078777 91552104 68315981 615498753 64273940 360234492 265472907 327504916 993050525 646110571 360722961 677057053 709419196 10579470 415981415 56110298 70050272 549312134 276552635 831299814 716181247 255536262 223066854 441641337 63965432 298761048 924861678 36660433 322865941 1070291465 911189321 298266811 723353660 998463091 685889670 84803630 126205121 813111959 574651604 521672075 672528977 582706293 841056696 467569753 836415472 358981936 545196071 455649057 184099874 858644455 164455190 667319465 513266597 777331926 55072906 591360534 476269148 389215951 761555729 923925004 45647670 436686359 19503748 98237340 41637358 184997102 1010176882 456343881 819372494 719925975 528930667 19510154 880674037 142513509 335581175 748964741 782502737 992679677 589320800 796896747 394560534 334209580 456937952 214138990 111736789 163560518 208788897 711087624 750982109 89154349 795296172 857517816 1047058388 606096786 582712355 114408735 673006530 863307921 522936157 861487360 604429708 628814465 1057935758 485299864 980010406 86376287 753977838 49126376 207895179 320974712 852872778 458509862 291956269 28707948 354888878 62120466 31227392 582023291 113800911 377048831 541353774 701470860 12303823 712200025 1063648115 397134864 579904617 456016029 27546973 385140362 134299396 354832648 370032163 964762104 481168033 142301420 53781784 577973362 141841470 895151966 841624280 671375539 323976249 989554562 646943383 958368359 592980052 703638067 795524810 1012635999 682512194 39819528 609594494 719575547 751358474 805543174 436182654 111441170 774865702 267816308 543973004 914447180 62344918 1055703603 275933996 785370255 306457765 50283597 572074690 512799288 1070980825 763831171 592109611 53771012 81450629 728441181 93877809 977953610 135133566 546133038 101987771 640320895 922299607 533245783 36598910 333022130 964549160 515712405 279088092 401720556 723311770 878401045 259367468 602775446 643449957 260856828 577075401 584806882 141958015 714804313 227740056 407249656 656621193 502137504 725156666 202497043 869329932 665201522 786268897 768077077 760304891 547497408 296887254 129526530 477667423 442828850 123268145 139234925 530439806 1065152808 344333961 412427442 548480817 664921494 1034038674 370098799 46028231 205524014 221325231 534247212 775443504 258699809 765068062 253056752 337033004 115052443 978845469 807648715 628123534 18404546 253258091 1004344345 1039072852 493208549 511214307 434121349 1004495975 307823119 185014583 983981656 164134068 36874471 1067809435 278001164 679578737 196247729 833172374 163557550 64202766 968898216 580111447 135177557 356978626 162272606 37705071 236478457 1054203217 312160454 464521756 637477416 1031977955 837614000 799971529 466856118 686048169 69841179 249617289 220579569 652771522 988174687 1018148743 980066187 32859423 592360257 340573416 457846122 951192643 174173883 798587966 576808126 133665564 507521687 675132084 1002436792 822605935 822074576 134847779 944540569 223854077 185516004 840814924 289137917 446679282 586254769 804700217 168247032 945741663 965449266 623691686 307380062 1025774652 263835754 251127 25692806 627566450 540108312 614589395 965878887 644452910 169434675 63245666 337759511 861020894 902208425 565781111 214109648 752763686 639013941 139811056 357362382 334832645 1009144051 890879508 1053061136 520749419 985729928 379544571 607291721 261623911 95221980 159487473 718837562 200743296 104279852 529764235 980023291 147590208 382957433 536380490 1010502701 1060541253 351605530 392421992 524507242 820974294 939019093 265658625 757794473 498853146 473916440 143761803 746514092 66966037 224386064 770151736 858522732 234809750 538291329 191023275 721904095 119276726 953985569 973715177 188397282 969441115 1062340762 614350092 234423928 168154903 672096290 298771510 744730777 367330220 287738409 44369733 385832457 872004698 873074403 968886007 568173892 174905120 201596740 461128148 200303438 106424743 594448681 491364042 300193487 188148057 409013413 827648696 387320608 595071224 665172376 179581092 971799112 952397298 640245003 66277397 207803347 988027095 68626546 844218637 627775759 426658918 558679301 499377146 13959494 176665319 510885845 594232905 429796758 7375024 226954705 341756642 290298731 77077773 103808207 605652636 616649866 508704553 888776413 253443882 700726742 902198302 300968681 578337715 906544898 156474728 65489740 247006955 839854530 180017203 404512284 547475152 173190709 276841058 214190180 923501333 177087997 990509180 994426700 719434041 828793822 454745409 195066134 238563493 601307875 112260665 648893633 831212478 913801007 470164364 432020414 113213372 247647371 102924450 20176156 448861401 513654114 875817397 1062396032 719908243 267115583 212061544 591394578 462048371 782525204 115546671 565137265 487097400 335345221 664934410 151262338 805848526 835630223 436976265 27861044 984914436 924269117 390905677 490684281 865281112 640317889 477407341 78744913 1053038920 936217458 896606744 588193126 991002920 29894261 41448832 785818172 639581198 504131254 282403586 292666838 173272814 148042394 760941813 913829439 525354849 953164693 950768856 596434195 513542530 109562823 368405629 742158604 151005740 616433553 908210061 224817006 515293477 205676553 1070770451 390195772 75433717 497281499 500234775 399908171 526669024 131995287 17297904 679584065 324748262 562786633 499606496 922088840 1015288841 86757780 784595041 629365125 922869083 244231209 560980696 111705933 582660255 405907656 1022555441 22534618 397953721 175200278 846753483 483712930 770728704 828850970 734324452 602955023 998729210 826356897 247909605 858489011 489043587 456408181 862760922 55194692 441410025 839537762 507951113 926366169 666090112 885164880 551446161 692956084 692161157 866879892 204264710 887940944 269830417 254448993 163380082 776893326 104445921 447891636 449072315 179338464 419574948 1059768529 981132646 943129563 122204613 597999435 471518536 347477649 492265464 497937879 1017511471 615324014 219645163 253807087 166255026 213782800 51350483 479427109 317145358 943400805 861323142 794822602 951554400 521261861 754882998 237302314 631441933 82779145 544395660 986443536 22690734 211978117 296928523 488540390 714917679 1027592652 133014071 912589129 748610847 821794993 90941100 869126856 169456319 1023687088 390678980 148153902 286693041 525554792 80089739 628562875 304361672 50598463 749259545 140352490 446946556 704531918 393477225 853973111 127410251 362038464 1031425080 327701647 369798975 1052830954 461871158 136716589 485592959 679319208 36128888 140072148 737669880 1044377059 261800006 955997267 658095421 211506481 1004088395 78208158 855669872 864016729 192830136 661299225 115058282 754394313 743323750 950512009 1058706781 958554767 1037931178 160969622 1014311150 503516035 888153656 338754703 135663679 672464066 1053269196 385243453 81219160 827261013 476981404 301305037 1048284560 680755656 792786671 211150954 479042435 85192858 1002280165 864972865 598227386 747702051 576790070 541760612 372354171 245456018 35511043 810746374 205200011 619654686 506860817 176604719 915459181 1035377063 906342227 816171128 169129140 608444381 659888704 375016990 113529072 385560050 576053736 425049420 532270378 685782471 501033817 438591705 869674131 230235006 142650206 612594709 868398208 718330518 330970115 494398215 612747442 37158319 566119411 952749106 760057502 739794074 750845672 800032933 488331796 630850270 680253051 880484300 442595947 664197580 1039142477 165096806 618079867 600317106 993145948 496844290 510095223 749246768 124906131 786829149 523576890 549672083 541289285 504422454 106322384 786513651 507394719 550977443 100581302 828091014 377086514 361763718 582332029 931824593 403026159 431135755 925298865 906346535 11706169 629892225 852681210 117847940 175580218 473374524 1020088992 628390488 740264272 717719497 555205648 317643784 1052419747 1037315145 408433686 11743716 427201657 912175202 346704031 113788132 385699769 436672144 567238900 526539391 8234675 591968744 292402616 1015585512 1006999925 272098742 212466755 714418363 72628350 630766178 744724842 579298356 428693921 363721487 306911039 885830479 930470448 538679623 68524766 421796438 354676242 424289775 889436081 497332424 739156379 495929591 1060746852 251125899 944631551 872760823 477219358 952523930 398922466 1025760058 653927441 957163741 961304901 459348597 449602053 981749497 156917688 71196052 393654980 677991550 558546427 614031920 745706460 516207849 346378012 149422660 244340152 121804111 1011177663 236799312 1029207380 337331630 213764012 986175662 475018627 454735908 47894894 255079024 290310623 537521598 398854480 579336773 352063437 154918787 422502040 852813705 113247021 715908036 193599334 64256617 826851008 396170570 242493652 971815870 99251310 628189751 452383227 1000321435 420712607 693304508 384015841 774064118 144713374 478055213 1033752887 172831584 120924328 530398978 95215958 924752404 423888432 738300662 458757462 756707632 680507807 615640915 677333371 1047870152 41624552 830426852 212517712 465204942 453958425 680646351 56795109 231129900 714369539 230047902 298184690 981620973 1010062568 500349678 427187684 964593684 870762848 166656148 29600730 53689418 863101633 926080561 117718040 323356651 966691222 451667158 590260627 305979340 244483222 511074319 57049358 174246887 310659942 708401787 631198139 208929507 950512361 144804839 736369641 161215661 335671510 696526367 584588563 434487869 334035434 655602645 824879107 222339564 784561815 165392184 544200405 1061903498 76764587 425910927 663780899 925401580 553147536 425717718 1023018868 767491614 269992076 493731389 817198745 982002915 219218936 924293640 436152785 994080153 929983589 992865082 733764060 150718427 118646476 532972634 917373765 152601692 127863264 433620430 984816650 607713416 190781764 56293662 907857592 53959295 478897506 926123179 268327980 734786963 623319570 371425761 345704495 845091300 351863223 1063951217 623660735 828779823 354556892 539694067 440997734 872488883 345290227 516900006 1001622493 573946841 240785313 689555829 782549521 550667509 488526000 859753371 715070758 703469537 720080235 162904007 98165745 1002816712 417885979 747089579 329547781 357218317 1072103569 688200963 82197064 649618490 935779358 727353948 333002439 463512568 636193746 521510599 174119174 115446660 562815911 380201279 142240848 984255460 350349124 963992760 1071326539 630599305 789491369 691489755 715499298 637590797 341372723 138847907 1047892190 823653057 290348144 366154563 536076421 691149242 559420323 523411252 1045784722 316955454 465853234 204436412 72431638 416128624 859881398 324503601 882716168 299317135 955896153 696768433 52511331 420607790 114075437 210457074 358752147 303556634 178836286 134176346 1030032598 540603025 462499972 8286518 50898812 332152121 206831417 567151980 908781308 217816557 663508868 298561251 576351668 696743946 374468562 748661136 108330875 486650286 192626105 137126700 998429550 196443968 750270380 110755098 1060567869 684262745 708692701 241104739 916735745 826711238 852640172 390207506 734920385 739900634 1027507178 1048680397 171721533 658505478 132127953 707965632 890656467 793648220 876260533 1043843054 586115354 753208794 335064040 226182200 55598515 444235965 441910076 983080286 190036745 675315597 997169845 539304014 612497205 576351151 843620792 284429176 589862407 792279601 667825352 576968731 152950107 545320789 684739279 66542690 630977024 413801409 86865293 885635774 105825001 998809534 842511238 323147150 374391029 697609061 192552591 1045842193 841920778 771174599 716414348 375414405 118672156 524140064 721622573 128328643 518325354 812420451 765232872 918729389 1012933670 105433461 834782749 680981178 360020537 795625645 67837092 676766197 447515506 137665344 166818667 808518846 51237128 266967389 910335966 884800631 115099033 567237381 848398379 815068136 172200431 684676970 437624968 1039639862 397469359 399037618 777325410 422616614 65953216 343986909 305684732 173816268 1058348975 710291625 973349503 626151746 522518726 1036765673 979564110 200009081 497113058 453529382 57583735 494778704 296029764 164004861 958194105 872723195 448342558 94102586 448203786 56104843 386768812 27721761 553338359 584978340 558597463 1060562605 552328620 885631004 648089737 349155116 432311217 414453493 625457164 137628412 729512925 146620563 111588841 869401553 266646374 705986044 3927413 369232317 736083579 91085359 948027099 998378261 248345690 382613195 958127155 133890808 274305603 655851789 237260640 462011411 834385566 426547009 968144640 766421227 429018346 436820673 152406042 732190254 864226120 384152316 334434827 92508934 828458103 269590275 814903951 845549351 767811094 202448428 667657753 464025329 763904109 569800775 5465634 262355672 979855095 227273073 635052513 963206591 966587545 650211861 302391616 693710062 414652657 180120995 895992754 376928209 441018789 526995846 680017273 79534758 148774991 553022222 561423047 650434912 986790727 751598852 148630097 551641959 738104091 527789458 407554076 412532552 586821366 382776532 733418871 623083939 989367426 999308033 343888820 491789108 775550937 67984846 521645611 878367826 185383657 425637780 663912811 721601613 426878984 980013923 830287577 520598264 1059205035 53372315 167900064 779292284 371152579 366689490 895810697 876509859 4048040 620907849 263799418 24243955 812647463 436276120 636724531 680947660 556909140 492566334 307890421 183773702 1030224583 243597079 345657791 485842010 736480647 349234878 123568508 883015115 87756773 252705064 636905887 991772160 643716929 222078678 280621893 598526245 893234884 903152182 269053770 803371320 821452626 253727221 516554956 207923659 179667236 142456193 688473184 935100652 431598562 186210548 446124587 221701699 61085322 713287974 57455289 527947287 757834735 957407007 250360490 1010438174 331180629 112469135 478781478 749823911 512925572 75002379 388636627 231683286 914932900 924883907 616455595 492263638 616371827 366735608 739922867 230460956 967809691 794219535 854939016 587305854 217386543 175228700 146912633 77452657 203938392 507403351 47659055 1071845975 372540886 865556376 836808665 886818961 174154266 363609961 44884193 320343152 357364410 483587851 114329828 470357651 400530187 171721951 784888401 644874390 686864743 63914249 536484295 396994597 190912081 262497426 167717289 181463214 250117547 151113129 539564406 1028720197 222426565 407126300 810076850 908589940 868840829 544491790 250947855 376857571 131363405 1068342474 102671566 399819696 966936659 436230264 559963214 390932710 677307346 558097108 166345423 4998779 795705195 65240077 799971729 933437595 607864933 825948593 295123187 955585443 635901361 643617078 773645343 368124921 50871989 115405626 493646 485174350 318102371 58661733 546936488 219047320 735401134 66703215 311692793 47689725 844978296 979320714 476432110 777412630 380303931 59649562 37461252 810977796 989295165 567442717 314817856 770504198 1027025969 792421313 443645221 685932189 982392188 187589404 1046052392 61442283 618007138 745292962 230694104 445639446 427964412 90988466 914089871 1046159834 447982738 1043532651 652141650 89310049 795179308 342014851 563529349 774536972 938258405 576941510 867638214 28127539 121311476 16031319 414080324 731900910 872928091 389133918 191328696 375855778 87210215 557525573 623079893 992964693 360800376 589908143 602831036 879416769 100271814 679541819 417969519 119507363 1026162727 129842318 991867573 829802723 336220079 718302910 758973335 904009680 706598942 819062975 380187557 468276847 1058849657 258621812 939169999 84150150 96481212 491604559 66140724 452860973 480376413 774183222 1024956846 869941508 835524657 1020722768 993130537 428018749 626407540 360569043 66163045 682437698 310951939 764043594 425652663 254792053 877415272 712935722 602021575 1000470538 155019861 315045586 934675827 239850021 970515665 530937926 37316824 857838890 1030437824 45684571 15995229 323341246 746637897 854598571 716423136 208757699 874352889 488679111 533959433 131030553 515342269 83552497 171113007 450922285 145116801 538428093 586100859 818792502 1072449535 263296350 964997171 1041998544 439451068 72374453 976174245 970474794 774884892 307613179 874321821 179152366 370827664 202254380 682112689 670705463 431160447 1915870 872248339 861274670 219099241 37421349 705506138 325501456 291992086 901776841 673104278 66259205 1004369933 456657227 302237928 454982641 1023157932 957296593 88683070 703675216 61491170 916006140 230865163 1052059495 109478720 801738990 640239262 212427169 146845920 711937479 865988751 546803664 798102717 377715800 1055627300 992922941 87858751 149060259 358078464 993898874 78966027 992422634 201558975 923002188 1027735592 622721915 54724359 196585983 488556058 493736177 387242097 177617439 788572179 787691097 448547481 961488645 303509843 207000581 943897303 64862182 709135500 625020253 137900202 441673442 659305526 177673316 174218107 386168035 1033847846 509239291 979464016 216517420 763131467 680895447 627233163 62876263 568022531 666599419 230065117 212555360 983619585 586103638 257216488 674219941 818074692 516543812 153561501 576799880 324623340 949878378 1023181274 818060195 164526886 845861682 131375453 370006726 129437336 407777212 909407235 164676693 6980206 380270463 504947529 391640306 921706497 337759003 29279486 399476169 735974184 843363113 307107626 209406687 731296339 769321841 559901745 44212470 364344343 12993600 210635142 347771590 794971176 826697126 319965234 866239733 81700700 292851722 105114167 82998913 532389884 84993555 541666804 923004038 633111365 229239355 447425420 187111916 494033764 507911029 48465126 617633933 956061072 978435870 887937745 696051125 1045999642 429424868 774007492 967120540 825936390 33822425 149749308 444243879 799018429 133380605 351612765 30544364 119416126 746536693 757835331 367732257 754330525 684108390 964877491 81736534 193274689 414760519 199488433 1055287674 482135784 31857522 665326689 763638489 869835841 1069753580 839111576 890903536 209457035 988794988 723653007 162778400 952705281 579597600 748943460 26114079 217566073 519394208 698065745 92092099 40162401 571476031 864690622 799084907 548022608 1012232450 44783051 333461948 555222602 888467590 532920144 72480161 413768724 171229527 190944658 967909658 639238508 368030606 799197627 858283471 572851180 526755169 477048480 257815186 981055872 114840817 674875422 612929190 859804327 158054326 306634303 928963273 305258791 68278142 539473171 535545966 1036140035 725959910 200176650 211225031 927600709 1031814572 140823040 53727659 650516628 62294473 763137272 995251375 786396084 559526056 503882931 722002158 438144702 296875086 497056477 290770670 99811002 316718738 599180731 399575956 325623375 255442499 926876087 752758705 603623649 801134219 389814375 993806505 327662637 24177516 725474569 1050282714 1013742112 557081334 723761795 365141185 370214121 669459579 260456283 264567906 479991065 266976590 262508175 290541897 53922728 725789022 513334310 502606927 765241471 951872633 205008632 442285354 744915578 559055925 736692650 174476724 851464924 750749559 52934748 359335019 12516843 767158951 413443861 77920885 558962060 876149182 295363321 374020897 270059374 359893155 504219744 31063142 266201781 517876715 236257032 785159112 376582203 484840398 842707606 186944121 562904042 443155824 126895258 672231703 731699328 756625317 899018051 584586630 214387664 238575690 840366776 355385629 149420825 60971232 946490255 615333596 98745605 599268776 422282735 1056627611 454617397 503533205 984561353 817338031 694240455 745030396 362877092 541560704 774417220 529446761 913629987 497663825 357458813 388233424 570938396 1051329135 1058453585 825061817 920523358 238354808 765674922 379362370 672529993 835054867 836011166 57393848 317128097 259814698 530270738 64162438 579450358 274363643 309943716 895631747 176827804 842640976 159728234 1040865679 687494518 48072430 713134595 430207188 982161631 905994621 34014130 128229812 278860645 836525853 897330650 696691342 891494393 965723161 1004327173 71273663 1043799906 811504060 748601895 743282724 596474154 988853981 913714335 620561916 153116552 1056951283 232765323 972398094 819359759 615834592 811209618 186384023 333218546 556018279 1058917899 100147952 1014492816 138038032 571838716 188976074 452786454 59165901 399344287 807888629 904733654 661425308 479869768 243545585 848154374 503549838 176829798 482636501 406859097 416907840 136984183 272154796 430819544 785156690 723075472 81950964 983401175 402434695 470897729 64329556 678549095 437583957 1062438069 977841677 701928328 581711316 758365248 253115468 260036228 344083865 1041615737 816849431 884092551 638789664 691290931 306588553 13985097 142478025 1056478714 936419301 17570845 947122111 661178109 520890392 15709133 496589307 615960779 77274626 458352696 56890987 609920429 713941821 421142656 334160029 625972637 870163304 457851806 596263552 677049863 370208630 304400008 612208150 907132003 554666354 90906469 516351049 459643100 577773402 34562433 703503921 825657032 933733866 982367588 572259984 852546554 371452889 259030186 56476604 602734550 196508270 444774111 480968107 133550888 103433884 438469177 300629401 3660562 423346581 223752042 777917465 395031186 169893116 72456620 409159596 803430872 756869787 191413601 510599573 382096099 589505578 621223780 827378496 228057922 428231060 129055646 668260172 126961058 632414613 197031711 980773050 997992298 434629459 961107831 425347393 226874199 36482744 630409675 724890938 364414741 116128635 922920388 542864511 833350111 1048762587 477607296 520703205 689093843 73351347 301048413 82178794 17293906 986403279 661390582 514612254 296592088 401446136 36093673 241030555 803531748 139782805 782160218 70396236 814920469 100434946 343739145 842493704 516362856 795394494 492704956 1020718144 662895483 946208690 239420347 905693939 863461575 937019722 150986842 1020576937 550366623 531538056 937970027 1029400448 12501737 637926824 994667128 161198585 819466617 988626600 905416558 511166473 333088709 55250935 996595079 258410316 1053847921 280751363 1012227707 188794791 880861747 133840496 717711866 768378078 310083672 712599810 1005086620 328708315 643656877 185074049 792679143 304564928 899121101 768071008 29141997 111478120 654718752 606694073 774479856 380239706 733492597 1046469697 871127755 344126888 383520626 301505250 83818162 332431965 653851338 334123639 864338527 286101380 399816211 510516974 964764041 848189228 741884337 448846465 1051984332 662382277 99215457 867904463 936116379 944638815 714751186 722687205 993073244 197416370 71913486 1018636486 545473470 666398009 547072671 664483223 822733496 606628408 901189462 404902782 381612750 646423788 586124967 67967048 132580975 245395684 358726984 58758598 868042879 230651012 297941277 1069836823 907938510 808541413 980800527 608165450 184886548 1025427320 646308969 845588399 38486575 584820916 1001956249 276268111 680757099 136213639 590068581 510001439 131524156 1038607846 510284345 45009548 845976049 99109286 903876713 1049643539 829075565 863197540 652793848 876185282 89832191 306846441 667073358 960801140 690935469 84076654 752496285 1051781124 707468480 535677040 711731376 584060894 313046247 711180597 250347938 801088714 67459708 149733448 461656977 336219486 985825053 561576945 495658584 386121437 603544768 522252587 480622412 712500201 582856991 884305544 24747305 147646488 103690426 1017483030 578807148 231886160 190342423 298778132 221585548 822408235 298101260 47518489 778404822 599309934 346849938 63912300 451791833 358438 674704881 702411036 1041426263 759019129 736660161 939374087 402472002 380367850 1069872622 31262379 809731426 877379323 1031223126 296856764 187496634 471818897 46485098 1011475039 780993403 431408417 389932761 980399783 425155708 309839448 426820485 1000000335 76493944 697733301 737879909 41113772 432903458 470592917 885581414 594004814 218522175 643160668 604141309 885021319 924644506 260997026 418983820 862139039 918998051 267705344 383331114 656934821 793841276 514023480 43789567 109834569 802240921 295460855 590324478 654470043 892864467 695803346 473421523 226340756 797570505 762291643 355674462 148176546 12762573 367582517 542764683 1026964403 673198456 819706991 230701323 427311304 590691197 253616962 926411127 465991920 810621741 798771522 1062606734 998240532 214718817 748379110 450004690 338956785 389856584 332307832 345012329 87294349 465742003 905952377 399378167 80993139 28505282 922551554 397297961 751200204 840968641 1020860909 448162734 104373983 221069188 891046832 956060957 466262180 358786397 778159554 649278422 569335706 490360852 796137991 887855742 560316154 782114855 159967539 776989358 223478041 1049803946 640074104 549239715 234487560 961105941 344314958 467245118 154558454 6253188 21729177 642386673 13516660 959278711 306286584 943040376 639250340 535702851 525744065 286867166 914275495 317199004 848719014 721126350 703760509 1028116369 83848770 338014999 334725567 84057508 712051166 897855852 323842981 770282166 1061433762 927767268 498222796 248288632 1077322 724357770 959581992 903236817 44155506 32999065 516187254 883160164 1001561074 370392346 804908809 90790911 347825569 380002976 319774944 319839019 388895931 991790004 152223300 931669239 36535611 377921931 390835445 606835841 171301618 772578035 582962269 1058614942 25694471 63963507 255467948 726345421 383413631 795845100 741137700 579308532 610459041 826854531 1008549119 789706962 387678397 83611870 1068999461 78646336 1038388520 693405806 1071122738 445655119 477410925 446656899 173762221 940146478 372725218 198506158 1002289096 773046128 56817732 996337428 922643560 297417987 926656055 78825384 639111289 340744324 206672165 973789079 689539630 777392661 924266393 668576377 883101722 172327410 313203413 241813727 612402949 605935111 740106710 672962115 564156556 859982186 20960280 1033510494 176940533 918245639 175580422 743332325 232174966 505371838 278191384 879838573 690679310 250077788 289000795 722597089 104746959 238431402 347459795 812788340 635564492 531056707 931245508 486376665 1064183175 761367740 467757957 1009599095 269542966 1035775141 49577911 83272612 879418623 531419980 465084368 547415098 137208388 420316263 240357980 226212678 673697072 479662624 184025719 419237093 263744214 350198558 20397043 633470411 2501365 493126392 423203483 179922049 1035255950 448365947 547154404 542900954 358839729 523892276 683451519 492003828 53167809 302861867 462380008 844099248 191977138 452692264 382370413 555996858 987732211 462146585 726970969 806445542 291444313 101106748 599734310 947702673 719400794 358449975 865058323 309710682 110037256 77533119 34319252 818536752 204365985 688100512 57465319 435085522 388991399 866848759 806292958 1061975110 964739979 203947967 1011322062 1069275504 177825519 251159951 994188365 976359348 254190576 657135357 217639649 738211953 552559838 109808068 31967169 380393233 706215175 246913238 481231483 836744843 901443025 833359143 874055443 45257940 734714916 273144828 309527408 168613985 1027047553 462784387 659327187 459925404 346929264 525769746 496213943 424779079 183179866 63778028 667838329 7516352 182478959 368828853 403164974 643078442 936692583 1037236938 900336629 894512464 625601750 35297189 623457780 505344920 830837832 762912341 575719498 636779320 544789313 951121681 590029478 26063895 227245804 589391017 450791035 749184111 358602452 644633706 837807514 181627524 187556500 641803879 517300098 114703646 846687810 530544969 540731778 969627431 871993970 840894996 187505137 909360963 745984679 362339041 277912701 731519578 1046964368 715567568 151856444 844192917 643988541 747214702 538333136 890255744 669673380 566380464 572269409 77764731 550932780 342317072 1011059666 5785770 461814791 940521903 460547979 421695805 480557033 789844839 583494869 104939538 98021474 217767661 251376131 729919007 797990251 587302399 1068686418 276106700 181465589 730603560 10584544 71100834 650326701 715356197 611832323 447220482 809645150 552545047 449414138 252200792 784089073 1044360053 482569840 994877520 959080791 465386530 88128886 464237760 694436711 745515519 636255819 153832550 734504507 916614933 887811977 199535189 303167240 878703873 919190984 850561570 991008650 951088297 990970494 502231923 882913615 521104875 752903045 814431807 89781509 146981809 527635085 1064675639 660121603 125282092 297374195 250229943 573041340 550851468 623971681 117419310 561112991 114837138 686280328 1008631850 242203597 883956767 518168271 978561237 676710077 805539136 208819132 1064624611 1054062845 405599739 425899783 102061855 553476404 975996682 381979617 517461221 771113035 106387868 43534303 984979699 674109950 359825732 660751706 73275089 273808497 843186811 917764875 777473629 811666820 894297548 1061019253 1025415088 1073244843 846989524 831998808 500988514 450505061 741407165 809327038 519151559 594490548 72453199 720345054 515345088 694990239 539656379 526129484 389399761 383730527 476211429 920929640 1010100932 1056881702 471717979 964928529 871485025 265841483 402635970 261449347 710457538 157384175 927254519 573151950 876906619 847255628 80005525 644654877 633265898 424567232 837860565 907805691 1000881717 298775945 359944476 473308214 570173132 265963634 666865955 894533381 706381262 841013558 374232217 1053117143 573156185 611623782 809167550 446719471 1048459297 123617223 470455127 792165513 108737771 214829339 1052569760 605794972 946752122 291057633 477747443 744483158 843024902 339686235 909916190 637841249 29515603 198116221 883088906 695819134 934754037 880765972 12440617 31105739 196192529 714382593 32085315 1051531893 188810611 882587324 290316287 174240572 406490300 753801034 1009286540 6757685 569974661 367083658 518489294 468498380 102742231 1012107067 62725152 381769771 702790449 239718490 412274309 339718573 171872505 976683700 694029404 273786615 1733441 791633947 973613641 266372524 209142658 812593423 909576385 758400692 746995163 507828797 322362797 433449901 219431282 7589683 115886136 477466239 675702049 979699866 955206502 401782614 922148903 751830638 583879118 885695498 907120680 186320376 627540832 259177215 384546190 11972300 432686798 471832111 319376562 1034861611 178535407 1003091505 180938232 222689544 674819816 156891808 171151559 722494382 753064698 873180320 102881931 32532136 703228892 22520939 564716386 789251194 308284076 356265340 477592856 875275840 803127010 554667811 706585394 468903417 117269840 993499262 163469192 47441226 436990632 177043568 504075518 405130274 45420887 973351156 742582192 450502853 327146546 614294057 30990715 773202517 1061284198 245809301 392511806 252303136 728714965 357087949 882519570 879699957 28521021 929732394 77755047 399639060 768578287 119271450 629484287 498719578 299144779 556860332 939593907 999923428 590750064 801641379 697119704 43299770 621326016 259062422 817853973 353035329 886953981 28350896 395091091 682854562 473133181 876068087 585234518 915931086 891288066 757447817 286301340 397769263 575741636 525166216 261080204 781866039 100823788 658564511 324276163 914255850 1025989966 81684334 114653402 720144219 35377188 593643547 767904572 855667163 26476015 486351663 50387095 649536284 908329651 635005038 624453917 905035111 796359959 991465622 548115299 911950847 510751672 961802377 369068306 599418179 337846035 230366778 798792899 1011472368 495177883 519459240 257538049 190468898 951999422 831709015 618241220 653608371 968155611 530230752 417094847 791219809 307714052 301762443 234692730 749724192 331561116 908254792 935369557 639555089 959311757 682958095 97179498 707248148 532744835 1034821774 283220607 377392400 799559842 352257122 760483505 717981974 714723459 962217861 802099570 991769086 147422475 892144815 153180956 560265421 638512123 648778057 315032608 659594258 542791459 154475816 1040251736 115666855 617009346 481938197 806816632 152448456 219157814 486269663 359501852 520042424 192200209 806006618 26134054 412315730 735374485 929826951 264162452 665424748 877859102 715034405 426639366 1018462496 326427916 382526408 923199307 139989816 251854873 744121022 898576257 618392329 330363810 221693041 927662081 247116235 740447168 788771623 223436130 1025878951 1055790810 295367100 35351050 113118764 59237764 502252648 752336946 267872170 753249851 812830349 313423348 231989657 650337012 731425712 384368073 1057517624 934025590 318901856 957559032 628970791 427164035 373409677 590010382 820184214 1039643107 444424625 236035352 446497105 479221905 97978384 438158914 368700636 1007021368 357881425 410458219 401266328 870595137 1007638821 724772571 95848739 852786552 533150431 592384045 1023351476 859511479 1013824316 360236865 827758100 620732408 159215609 315709094 779169176 366277179 827665131 101432958 1000522239 740042402 763836140 23052379 664616339 864151681 438861471 54174844 533360989 653797320 638704650 994697511 429842877 544042750 1018805608 61575871 996663525 366072165 496606566 8650696 88113309 901660689 813593192 343422555 885691015 853402580 396277620 973653920 90858540 636631488 683140928 707300548 543712124 902381244 886042992 488788853 131567158 379350099 141680475 7183065 21576759 973536439 314890159 278509975 843420932 873136592 756199318 1037241188 698758392 598102701 791569986 967628813 389466670 863686759 891541222 121711598 596567852 2718844 798624057 147323940 50036372 883414533 742864128 429956817 200902411 930813880 966150423 1045075392 672891474 983309258 601273554 897111085 35095646 651882945 134064561 249380328 952875053 720639696 730757608 240318258 369640056 165810129 257704080 482552376 366085197 493961598 763572149 950075913 697981559 608305895 989203826 350745506 651892380 727791760 811650527 469536 271505370 898310640 399465459 449032767 61597200 454261711 252259040 21853927 440046657 400082026 361010330 951167054 196058547 870733572 766524676 120606097 952181543 483730200 309369225 764816373 465313589 1063422534 474146655 337869106 914242398 240752676 1073626624 308150943 444503058 664528377 33174162 588951602 668921854 632999885 240541351 137625427 300192951 414945013 342979787 789115033 1046391497 903819171 181936145 983659943 39508433 609828403 1004886474 957836444 890191579 600228102 180535313 836667492 775354203 325636386 459992524 170695954 1062806211 277272673 392469653 862748168 79146746 907785438 83903933 698431689 872629899 48178149 161804799 998254746 254020249 837252700 187278653 960379822 120891454 785481054 287939131 714897886 533209075 581797966 110177870 111755594 632630910 513587130 840536543 400803830 959876079 614014319 880033063 510727561 33270096 565652613 443011934 395295521 55214019 519321865 503489316 613322680 905074018 468426637 821929311 893923765 301465114 476150237 504535672 326767166 225676361 700833286 889601419 321709229 349241271 639161677 647677919 537535893 483407116 1067156184 536761920 54929428 313365266 191903612 441564935 202522455 254040492 306146219 6530438 663566064 38816614 140683519 109909543 1001607748 525026227 695454239 994991446 173253241 157579145 971287160 800766008 692781293 872240534 709716348 526109819 628798102 643252828 948651086 1065188828 324216284 616722429 748850433 239500922 142794104 396704070 811211612 599121841 423827505 855980337 287011657 1001593735 495984301 41058627 406920976 979957456 1060824417 660482106 85113915 331427673 297236045 514960450 711448043 236649785 937394415 987133301 622180718 759505886 477735156 915370119 164698791 1045863503 492357475 328606211 212126387 926735483 860577708 500529044 48636881 63363854 481184677 151464368 15610694 779730287 266242642 294348670 277621854 982174255 493947680 960784794 775319153 949871870 43308507 692703696 856779478 602379151 388529910 840453971 472936539 673368520 392364772 488709806 413725622 733598303 921321808 86639478 143845121 61601506 413038205 443189215 557591429 588026648 811789198 962450401 696612694 983908003 653329381 786411539 909868709 368333577 202397605 980361224 282207610 609427183 213540744 6751454 700038339 324942524 422548293 440773352 512164272 348934862 407675330 138739626 998204263 547440265 899988457 128588338 824697883 915320545 338277303 70795767 591859770 5613048 947947358 675543838 767951810 539005049 982376935 511555788 719906804 589935994 405349012 1041165104 831789230 227525450 38994786 461715340 537069470 727830323 639802825 545748708 193567398 145479961 358950695 515047990 772675282 13514326 247916036 275104733 138410301 1005353205 10808719 537810917 226287079 1035178042 802759895 392058252 980338702 285164341 300453637 780213057 887769449 1055227804 136272206 98029397 6939100 92622754 467402634 943245252 84912485 511293534 380943423 346909531 1065310819 2770520 745164598 768702681 914755499 26335457 731234547 1014962439 192224783 934820718 868936872 164234585 907978329 1033047006 313756150 603955119 366533618 701164356 6336053 447774241 467386060 511782376 689669730 990937210 335449185 306475197 658620942 954948739 698041592 442816995 887220487 330740743 880837948 1051875925 774683117 685475295 786719515 644625264 129328545 622988914 717791870 867231540 404683196 28446581 655821732 505252488 1017391029 175069395 566856286 1005986987 672758566 537742821 189523100 396716166 754291276 1014974386 329381249 246979251 961716637 312567421 857045511 930753976 689478652 37012703 498904215 87223332 914554731 518685700 161170568 342536406 70963016 989524071 694950658 563473732 923482663 756021653 885469956 609401397 274092965 294438670 114232807 680001238 755086998 174245509 294962274 45316465 565900295 161588567 628384429 589878661 307681561 19499176 819737750 274170844 464938427 983255566 802072039 615165865 814229431 927969905 631371236 868289662 605271205 565899941 491995204 774740860 962224919 788549500 835660855 644949394 550399867 694695347 38981866 638213458 228786855 847703349 819628311 969773477 205614907 925593441 523246783 852761403 918544340 500518603 374696631 760374904 509638804 124065335 347738042 299645859 336018334 267544277 795519321 576927470 944486725 207232096 539922008 677763037 693374260 51240303 1037783331 893375673 430592937 691582637 196529860 961580899 412678049 959957838 684651909 532789243 871523377 92433417 175291428 752227099 284791740 141272929 75127860 977964618 393050168 831417140 907976337 505647249 976396610 50354541 508990430 1046454551 124467052 631861559 182605301 906193321 321088016 690150494 708453583 964652939 430471862 688894762 482425666 1058320605 851429218 239555970 758234852 730317158 683321188 473053379 323215626 783499485 1071985710 22403438 934051961 826353615 330328350 1010847136 193967898 18837802 1046593857 110161997 280949090 684019981 810258127 814237980 1009846766 679061445 376493203 574101814 1039882720 787391085 662001576 728438364 425692353 1059928769 873704654 1064149360 522412785 256880277 582961017 345580259 497031048 271041551 77329137 644396304 874980843 106323590 980769335 780646788 123862153 54225175 395082161 847989979 457266381 150993807 253110225 204252113 264043438 830394397 31494522 283527145 831700684 270776875 388952823 583064583 792391331 589344520 295335643 106580034 1048159883 270877500 573835326 476242968 326722486 49867118 26451324 8302878 654088184 437385466 862444794 705127390 480688152 1067421561 1052809457 283810648 254609030 1027381340 393881252 962159651 1033135757 345698630 387639359 111181276 229334849 927508248 98712673 422047763 267359497 537571846 933944872 226356856 765497893 296156017 506948657 633953070 62396677 957900068 484243483 263639704 677578896 18237649 669530842 78061954 791084448 148021716 882898000 625394751 145375608 877463734 6888510 208230871 1023996005 650057424 58861347 163267297 960233855 1064236453 201429161 610855702 103842040 518461510 982571446 848144611 138937648 813318137 1048213086 206338770 908949975 1006725069 250025752 990135856 294904675 914352945 375843107 803269570 252488687 658464676 277590125 670475485 343642686 387937058 280628788 818913204 830854845 872338715 20474522 306362229 807073042 357475114 1000919121 599112213 642595600 181787550 2059858 578431614 495377077 488604340 535770532 299279680 779446995 45452732 226790997 48389636 447598368 327914454 800360787 733270340 600825634 741083201 447585123 575191929 55920645 950759887 703979024 841937003 1067576901 74127250 432882274 786754229 375898244 325754982 38637696 916237018 526644047 201383286 56920553 859596646 685314490 723229805 346609621 182923750 794694380 209413514 979501226 419087434 811527298 546119229 328759911 1019007335 23994951 567382190 277847229 628840692 495523863 787674434 887408195 792880976 597012444 168707146 613063861 269625115 485518766 1007541769 762259606 1051063791 961641688 572562360 837810514 248468353 162350580 481393825 710216527 21406343 895134543 581881846 1064601505 921486679 592008638 770277765 499055777 513999470 1046766279 119483204 386681321 235000145 354343466 528630820 50933622 90467839 450728251 27970964 102000856 203056118 710670003 741391361 1048699280 746921910 941862331 766757208 306160936 780159073 724136942 176033180 113324055 527586840 929679139 934607451 250028512 764021106 43298136 343624178 897759482 245964266 358518699 208340041 688321743 476411483 92170836 1032836933 784811242 754785297 1052306382 316189588 144798072 854910620 496769006 831051647 651345040 391258249 59008262 267336451 5922407 843262633 483580341 1014884150 852971541 232006420 500313284 606471524 731302304 852554361 966105915 160118120 589838083 9247681 978329663 698118546 81491926 935476801 475523470 474864439 879961258 549915779 771309243 993334423 208678830 528277740 957464425 129030603 1561009 193186974 1012043707 1041205789 772063003 1034335456 890726540 732689522 310679175 900795310 572682024 318285055 644987856 824992598 250685219 258680051 129210657 63292583 160187871 858403448 559737600 97667345 453474629 603482263 553135301 453350671 363406307 801661545 538757753 861586648 238373993 692428588 819283282 310908987 597363560 505308658 276265970 309855558 1061269527 546051606 935667599 498482109 889540530 936292204 115971323 898107321 270925689 360312612 864135114 182969111 246513447 143441365 538659228 274192380 1026234953 588897977 607912532 281909380 877255480 540812646 651080821 32424577 365367760 909726655 33698569 317476757 173190449 492983899 676494627 882342456 599409591 814107750 55331981 34521116 273134897 687460669 132588466 365607481 728370781 320743230 751784778 412389255 621181823 148762171 600122867 871580616 335355967 982645601 344882563 762244828 614803914 328713315 397095660 809768993 1021552949 402283407 556699509 602402180 677671454 671836492 776020016 91270915 991424419 739592413 841555409 125935271 768069775 221797168 543919542 842858906 710227594 566209791 128206978 20951970 1025652979 686822176 598740612 1072211693 1046900225 261547199 884489092 336001975 938773554 726392660 303819697 964854072 529272554 515424992 667943411 179646595 656304116 300088273 492341174 51837276 1051247818 511012829 308697479 76928195 934407425 124361551 529437090 854354029 559463988 446256711 848717475 358697780 527300783 618304460 792822882 403194883 600911171 248479177 478275836 151426675 697732549 416043896 901315478 995342615 95567151 342107209 431170761 557365093 484557961 781703396 501349129 664822648 84345920 311161201 606878261 878981979 1045226364 14251390 997957366 226007271 522026406 566114680 136235617 971904242 613008869 97387641 201675744 965143690 690546910 588670643 545756757 89833625 720556356 859257680 790655196 5190256 2270745 895927702 598303152 983621069 386289418 297341567 271258314 280210638 167080803 770089771 114331297 692287359 1027693961 258007208 462012314 371227714 742941693 350448021 148552527 1031861366 661492218 965212739 942591429 125634087 1051683490 716593177 887562871 421442646 573499752 778782682 241816425 595945748 515771473 514887573 872235928 296260159 191544494 697172845 753233876 383550780 677245356 461186293 122099037 588101600 430020793 1065750133 616180386 742330607 375339233 23717568 276386805 244493638 40507867 105953180 951041975 1048362897 740203052 293344077 705771988 429105161 990373455 98114240 977521603 1028857468 617979994 166032529 645934107 557434816 123200288 530390687 636972336 882022299 117334481 219842320 108619695 450091848 360192459 733475667 534763233 232572556 517712272 148574356 289797593 658693844 707718410 278225918 843597773 996638889 224517033 645736211 1008121864 592919000 331076998 840413565 350871554 279770804 104430219 939417240 218616322 843983355 557428417 20117282 801296922 478787794 627379994 379034027 705599216 194689385 569787676 1038128952 244176965 364088942 436957307 918292106 992558949 574454595 860425157 992043063 106304044 922660693 258589541 426010574 155483264 31768692 72385817 648360338 668971983 244539790 191535331 957673208 395919852 208917727 464960362 144261478 1024444554 129082719 762464940 1036073710 200247563 1037565266 68536896 651413114 554013178 275772298 496362386 534706225 806194773 757631612 456473336 277972890 436185255 878825039 442312042 9423330 145746334 639208764 421002622 321512361 268262478 863308115 963915826 456870284 541289048 241261851 1019796866 1063899286 212387656 230624002 812450634 475961581 788051050 38727587 35382165 155445933 389049842 364757892 470321894 952734095 32590721 542206690 759590146 1033804655 979073312 633106369 90441787 849621600 382057984 1036973602 865933925 52024036 103839788 298655152 395494882 766858740 141208404 623926197 487385420 880820503 1019648745 738583604 313350179 761032843 43846269 291057539 368349886 698805417 238098148 94698657 526532743 470077413 28443530 740416338 694358591 14337219 851858569 746379326 703987435 848129708 986720003 698172164 362335921 403465457 856229301 6696439 151577063 746905989 950866735 568390271 419237680 459682618 661171992 148239687 247780866 753102744 121053819 183711795 1012335338 790450019 111700720 18206996 400030200 42092302 880512706 620706922 584791204 656826137 311279831 964092047 320652548 841488086 524643497 711246494 541868259 853207544 103104210 1057807587 70597898 565881040 865409821 1057575706 820247908 127387621 828884156 734528100 539465319 789123392 610890848 319778916 302689816 167949894 38616834 1060380132 717588057 139755684 844191800 529700545 739817003 324848660 970775703 531601410 854795277 371330825 900767928 103365398 96640186 910917674 101251827 888226615 799495909 285342270 14042107 363947769 416552490 363002903 924761278 179001351 132678514 502714982 379711863 492688543 465404877 425559598 1033543996 312164511 998268754 930917826 583185607 678880850 407051243 729564829 1025388487 742908502 1045928969 52821385 299748600 244750761 426304478 606811422 876726327 482077532 345160899 541781864 707131472 719459041 799443667 16194065 979006569 961873762 192683518 917361310 915634550 422373510 98933025 1068276755 985243308 193265353 910327637 789866455 84471411 381438256 903136232 589857153 963980506 88632058 700966762 55144692 207646121 747611026 54975896 292740337 96056837 774582785 580900833 1025419002 652346675 305283672 854737986 905351216 1004540257 794036916 833489595 640625114 1022452142 296291708 275726410 82370868 559863304 694717231 287724353 356653745 2635920 433259128 170694983 914811654 53377101 744917678 330055828 78220051 332002935 492117940 46254808 996235123 52037988 1046151249 307977859 224525638 873521880 455273193 105386281 743071823 1012922677 679423850 204524577 481183734 834531815 423009902 646070779 169043338 385327759 474457654 350506778 240895352 756535 545908325 952886913 1016119217 558221977 22661413 266851559 343463160 725754926 889088247 531393636 258934920 256464549 727135402 1035284888 166510191 198250214 683286317 364688220 922849262 581071531 131063537 661149613 961150771 443445223 755668056 671247089 359732735 334914947 46070264 211140790 139719334 201885429 295979041 2231587 242065746 187414630 1043660670 788808490 94266414 617034803 570669700 946641158 1063555338 526732070 987555101 188692969 438409449 873736866 184634811 622031033 129546273 380075934 855061344 52322128 742449615 137799560 85757408 467603706 329329683 437956188 21379916 1072901108 200042768 222796332 746195094 141384861 587720634 1038539154 33700353 160983950 875086657 553916841 919646542 617705493 14021037 110620669 517985213 8816194 957443754 812634526 784613089 483222870 94287938 437150207 728772929 434568246 1056642230 59867993 461109637 604069718 165753057 863337029 639014013 438379620 683088714 558740717 851372967 321121976 241063090 410457780 1059503178 324975991 252321135 854083870 93654038 1050400164 773713158 1037389182 832885376 188069307 645985791 627373793 1051059386 1010036998 756884298 230769263 753176918 26303113 560756736 55874745 923382281 799656640 145744967 675424946 188768998 811436644 723675149 851054619 409938634 179603463 49717562 929391097 575406489 48659255 355272292 568653773 1073484766 927153869 92473385 1014932395 57329987 220798052 424392112 815000272 159608346 874768844 62350096 888079497 742146491 120914702 352511738 49806289 501416942 935147833 550286152 313052825 387065402 599138272 20258910 87562787 996962837 604491911 865647495 145654090 978174204 592326024 983628002 93873247 191513815 720209893 275121306 531662902 777788895 276180096 737872278 990120796 195641940 593459719 438156471 299062962 784228744 888294414 220034048 431704326 985413341 950840285 944475628 897454024 149684283 885189046 1015316860 264249184 426409194 464462058 909025113 727693219 660516281 821904401 479859837 970721521 1019777832 573366084 975060502 788895916 216553840 642185347 1031437263 904840616 725542905 569838468 441323855 987056513 511841827 183711400 184966075 371530603 461819746 103292409 742767425 242231180 619699736 619881591 822670495 911204644 627293262 733117992 732917708 215342145 277456492 204082932 166707003 134034763 7626077 498875153 550572292 780385743 409532400 56622722 951428292 1050491905 316558176 336151319 817891223 1835208 707873883 732355055 222136505 162283553 462256149 875448938 685187618 1017809112 275057509 355787472 536014083 604726831 510851927 837027374 129721663 294502268 239847542 1018184610 594462323 602084024 549957248 425617108 485643706 177384768 561242520 499049697 168114171 933699842 76310245 130333654 555552076 182969271 376733365 1031944486 699629011 101531160 43472183 711190668 1043668193 1073676748 310549882 792789631 773519313 121331220 417004374 660278755 760251933 1009613806 225872814 903626837 475702965 587383743 496292085 719571534 577307051 994217655 944578833 543486176 467210858 909035121 189710914 504562375 827206441 838508372 303292105 289122573 450430062 991094415 65074529 990958896 780500112 890651681 897722324 27408240 138464329 329488788 525612350 179963404 483444047 989550348 133582270 697787669 84806563 693380977 951699806 829404084 551863340 102741015 666848147 379201477 266823479 430436934 795152150 946104091 530631326 307876258 766268014 577000735 169369027 490192484 952082646 851093176 76533347 783383040 81247745 118544534 960199579 621630196 281831569 484419888 708367053 380783142 662945714 177815278 832423165 929284563 300856917 959936933 778798049 1061214507 757033475 259135764 556533158 1018592893 440612742 483987321 818195369 692476656 498948199 135320921 614414351 220104110 785920696 264451801 545626309 260010972 75561361 1017282192 462809026 937576727 17370997 1065461255 529821321 930000451 884445011 531141636 151959210 773733968 991617846 870472092 257383891 701398395 717410316 480970551 928116864 884293390 752471250 455456983 16530249 971308704 538350358 201686021 875606800 1039486386 861649895 955060317 749826228 492757892 906150245 797434163 983583640 901312578 391684197 849338769 1058361241 726616761 632259342 914278593 114405293 862578750 470821353 1066666668 741171323 2552023 423219260 621195728 936709755 452812698 659151041 398085701 496231835 920499235 657784143 771005332 107486997 518068104 227444732 649396428 747321705 888586585 911845719 54636944 986863684 45376477 557356976 172772749 205858039 519036164 295543656 925706190 740147352 966659948 438096614 547349335 221748324 355406225 875463683 188501610 348002540 243124429 858415270 467002886 951110304 593339465 256933906 171206230 591012797 55811618 422123622 109846144 961015940 734161108 999187379 1005550003 349135471 1007961463 202110579 135891961 225584145 98959771 194927751 108879903 336391123 417909663 93951669 176326507 659374091 606247327 753353404 620831660 376638254 714334898 44174226 846002322 926275686 793806052 550016879 147507753 313742106 1070242758 9792166 164579426 1014600029 824099314 989282607 257323142 587707445 24252494 829964942 59714073 203794253 564489821 183120025 559522274 146856922 443348396 639464278 883543959 247919777 118831625 198972330 1072175541 761625879 572197619 903556354 278998661 311306827 911501511 1009695204 774029938 253837269 112137664 588589862 581987356 354111182 993586220 1043911113 538350249 784229847 306481451 806059447 782683094 213420319 1019218274 416861556 941364164 179895653 27123762 647216344 529737658 892002431 300696173 118840888 487787562 248443033 378000256 948014189 455248257 526868119 614748016 42738734 539132223 521065645 817379393 600872180 733581279 1009533573 101158079 419615445 85207289 296996007 319753629 134684014 955477567 840854510 511194092 794704520 1011281528 329352553 276156038 105723633 221332915 1055620062 719433052 986129807 18981569 713737780 347336062 336972059 533245964 981222060 990591615 610634107 388933935 716740479 318534341 115255774 353380235 1046316463 1042571268 140157463 64937996 161387146 563100631 206191783 718076936 229194884 827339227 634648855 440539346 577348276 1053198750 991433255 385842355 369584095 800819871 3097948 536946241 233077931 284815569 466439077 464580258 211896927 88702575 716558380 949664193 809530550 425085136 242188138 710143313 518998013 873860889 360819790 1030369224 1026711942 51220183 1012697038 340593204 594608257 226245695 405936481 895883399 894997456 646464090 217031277 381851386 810927950 998767797 1052520303 554002986 385359785 989457608 225182317 676135593 58389199 143657548 1055928882 583041691 218224951 1034770073 964880149 74091660 40574183 232885600 342823161 343989625 1073680664 1065734909 598386518 214347572 146149670 22861607 440836868 1038712801 1062981371 23898215 358914648 677315461 643612579 549843948 889946980 927432013 996245996 121834300 922262058 107530438 109545092 725634798 77582112 696415129 172209354 156942829 1041145768 789129999 571673116 115670912 1005685390 309963870 1001471496 230792650 397404051 18969286 821368755 642767630 995172732 18426031 967112007 292458132 630039482 700927711 754779796 898316079 445090108 564948258 982694430 290634837 20202393 75752816 743562356 121267751 1014214629 1028187021 228348663 194922339 91333734 782537341 905116205 227418518 764539548 745881971 478004756 191400403 866321086 332687223 170919955 848439649 492458922 502018096 230044751 297127577 305614748 1057047422 608048923 467645551 913299535 857347044 198277634 11831 671800104 678651329 1048165323 103622490 955936518 853841380 382046777 625670605 230383912 152245727 959791484 310379983 693933842 273419850 123959346 969444730 1012763579 368446859 857275639 158281414 275682661 269447631 302804055 436975561 645557828 1020104295 1039484497 691717279 772793115 756008781 204446683 74347393 154658016 894798077 254692410 352011878 22924243 548293938 1003473204 147796874 484925313 669883060 55633270 766119534 118480876 511354102 151440113 986545481 562491863 965320577 202559323 854203124 810959023 41873495 933032275 569623672 834688912 1053437326 1020985734 483148835 128529526 922688711 411413389 402874628 485162691 524099104 234825879 293502004 185132873 813982365 1012221065 14038328 998838929 713965064 333880599 775558386 14638705 1011551856 489904360 595668536 959428892 736628425 1071717089 158107693 869240880 560205082 546841336 340864180 814368809 630624769 794989519 956772721 174749539 44976603 512542907 982542650 223415911 320042391 84767332 893777778 525271856 926583321 553050202 270395414 462925853 878900518 163951073 180163771 217199569 112638861 1067259192 544035742 986365240 333293230 301411388 951324093 454825009 62367033 245201552 51691665 495850543 623660726 383881625 115557682 84073446 951884345 1049985287 97450180 829470284 617087071 643234108 734497399 795988851 624105001 921768132 637851253 196210934 846167695 1018457439 435683256 279807512 1030725515 145901585 523679996 886259998 729275631 172829736 239342473 271439743 708338986 118523689 151847183 894762134 475978940 560471629 542232024 390411942 101411247 445564083 972495753 103267919 1012687285 246488864 119304968 553325201 117269353 393149210 966995847 584746020 546079699 427873432 284593063 915212130 205423817 796717913 771009287 24408684 841043123 515092433 716188624 915468763 766049002 883487170 322890377 1053631186 224694191 821607267 883606251 293546031 235555383 730207328 386448440 722245817 507511911 923068507 496712419 922302244 555369046 254052048 193320368 825039169 310151975 608855852 1026006109 332046597 615096926 534339846 313535571 750684322 23416763 713988978 333604684 167949187 717882285 617236321 117877075 792400332 902251971 46037421 442034767 457885591 232458170 908272361 913838953 876607788 95243756 483101920 632528735 108391028 480289858 547190769 522144138 1028145801 231212727 241417080 148386944 979204874 143386103 391192579 1020523192 1066674089 333208995 216393777 237262819 96094260 604466052 700009141 988443921 160125480 463583070 43891967 985639999 545961882 254479959 271795864 985967858 1031685842 435204410 497527311 926171181 330847121 1019131288 915207202 99917825 259096613 1067574828 417498645 410893529 981031583 26281596 470132262 945332987 430049373 369050980 411130838 1066959611 427860241 921115112 542338173 248336609 608432107 519650724 556853873 198939478 257209842 414372726 548486826 1071850749 833887180 424154304 28235082 537062827 442852041 717172747 186279085 1069624925 307901182 106259345 1044010444 660248526 749938607 603877044 94370793 625998844 724373838 957970381 135591207 905721147 1041884355 888611185 199358948 969435900 651373893 731210574 992257305 166277379 961043894 475471946 481190097 390703332 414980770 190462559 984594024 291772813 95146281 148090622 232567713 811255783 544609056 281141651 732792789 1006699070 1028678970 124459417 284386209 885515704 813308423 929201745 74220481 819031933 965459974 911939932 351296711 983622922 594111231 808888898 867333290 652264734 876702585 379174169 284422591 131107032 93261546 466007543 341053825 200476620 1008419833 79567614 506027500 928631504 964821376 573987419 500246729 20114102 787118040 141991492 908259380 978451064 543662253 637592360 936741902 402072683 566296941 365495586 1035971871 697061716 776539470 316185882 262067795 1030741329 1070253266 404544346 841534815 764966459 338271000 620038159 505556070 1014209737 62278359 825191938 949733394 608864247 86487235 912590016 19279680 490200097 603673465 760874203 720425292 371556978 1019751328 150960077 134384867 685835644 401328718 39816390 265947021 794473992 835010251 664022955 422835209 737581567 729958480 526848424 972063056 440260469 916484946 840003087 207476918 406872523 143415141 131445896 488336123 878841694 22988152 822262451 829846807 294360196 640454836 319789416 375174643 650098190 332149331 805163656 179623694 1031003607 605898542 766666794 377431900 140178725 39549459 152005111 289303922 605895695 686400532 467811469 979136993 715219544 70057366 407844308 405136261 402148192 421500230 986380418 679198464 1032054552 239086007 121492763 659033453 173910193 844623622 180869402 562965422 977366896 769403005 1000554854 748738248 26146830 669652940 17562066 133105118 324058808 310682627 965669078 925207252 934918294 244015467 1006346640 207846433 164467219 399392817 473317710 548798425 37087601 896716905 340069122 209241769 834407712 179958509 418458848 661965115 83195151 355443711 59253526 33678899 19864195 322334146 651057503 712890028 1054747778 68537277 1037537954 977377517 652297409 819382180 389402791 33936861 638698906 1026940028 528662010 981128484 484223788 97098459 224194191 127640899 491991409 319813340 942085483 1067078033 657041425 216984074 1069570646 60471315 537540122 94434683 616799033 818411010 846190801 844294290 131876369 891821203 423490911 247854415 684470280 210075342 4732895 143823041 221830270 29348031 82362154 583050773 721878802 226436298 844856046 681523770 374363369 648717942 640942730 320913996 727639200 636700582 686382473 131848359 119968375 1007806027 868066435 857647944 478232038 556604163 736645916 478047474 968793698 666682441 349582703 464986088 285490916 971454431 407977815 143054317 66805321 923904632 446580729 952473932 1008208720 543720929 833619257 54561336 450690515 1039490317 707203268 562984273 353770020 642805745 684896437 893695975 82340523 230063967 888408675 878297670 953780372 455211074 28559588 805211340 319258527 515895173 176937288 543015856 481976143 112004047 541973939 10462431 42725496 807181098 359915868 246131745 622228996 439311221 248304264 368994787 52495154 156120220 362655275 699938763 486389584 756082907 254617657 708233643 710100618 983162671 1061469395 167150725 402421487 689965919 422824460 611870237 17211785 1069532972 582161058 498624850 659736259 750467909 746448008 733034098 762941839 457435337 240789246 969215521 523740687 693612417 719485980 1036189786 642560711 23264750 467262177 955922449 576786225 130552206 194514703 501324493 790574222 1015922285 427871329 973447223 177578919 974640252 579117496 416895849 858176087 492925463 96555794 490257109 823467543 618920029 880874503 841448760 949136244 253556566 1023847665 507555744 538247536 471394481 407753206 520791318 529644719 533200662 499766194 541612417 946431374 1044861791 195372088 310013072 119453585 252885830 887769009 766096448 860365033 935566692 890553434 458230472 332586399 856684084 136450471 120911421 110886568 552378752 487669369 76193975 173188116 379836968 959353034 455305436 255044115 493207421 770142059 684188438 885505764 818299978 246162698 72619415 484471427 367693108 306463875 703846637 806305213 472847868 984313607 999287253 139864943 545732030 1034591813 791163269 803692763 419244422 522731910 759246965 291763480 842962402 685338784 967841238 428459463 789165523 975996460 42469576 344754768 520442383 1004270416 125256137 761076925 695721708 131597844 863514332 200780481 577520548 269051051 449649677 353685842 96993484 333837529 526182440 255392890 490470847 47698156 431801248 142554970 135064136 583093153 198843346 857378211 38011227 659586405 155316499 377233435 399153069 136011992 761989122 731694363 280288439 438633529 164862126 739079595 587034827 344177861 532421938 58376774 622126518 568520269 753711019 324439156 445994370 397056096 205626026 471072273 254591263 803531397 2985356 77895447 1054490901 896521715 985286570 576807438 629602972 263082135 1010756722 23999427 439944034 432442509 407341637 1021780116 942799885 562732853 311486111 678818266 1056901492 458772515 674531721 322357179 581044644 1049184562 802113529 192025909 971180873 632109509 132516834 563498501 406173436 633793662 946230304 316247761 765793363 1005547463 374005700 975036993 284944396 500122705 996108824 1044267158 105672139 942297147 746107774 74625369 1003445390 850713826 444089870 14565697 276457983 447778739 646269332 1032732567 156566546 307284306 204992105 3549793 254738437 245428556 1046095804 1066307994 409431824 399061339 965371699 531848994 763807848 860993809 854746817 934211555 54357671 189537378 431463128 292354128 521565721 877970453 580107471 536094335 485042918 916586380 552166688 574107564 454931716 844642561 89178674 438961441 453890051 288065632 470211907 828318069 276782238 743851868 124387935 580230561 1020152899 495860513 15963903 459611011 1008821635 1067099766 424552678 1052424963 1025249947 825796185 70186683 864551843 1039247226 516527219 553342240 438214295 1000316993 105800665 770632787 652517511 322230998 864935053 463758282 143257587 83877990 37519683 678987717 51189537 732097769 1044644030 564513410 790079780 404099164 773751407 391074291 640332798 794038029 497593694 255540101 252844150 488782371 48201315 1066089868 896997831 32050473 728533053 120014380 959468265 81481922 421801199 19357475 846901849 841191626 426822585 301152927 1051641900 580067170 853027662 715948421 782612349 741477602 495871264 829257994 233618513 892125037 200498590 804484242 310162721 420449446 803894454 875604603 83520508 21760757 369494280 571651623 1021356696 38861709 1008448155 436855844 275369637 1015336128 398605748 634685648 422998460 546859814 733923723 1072728163 813062003 1019147580 105470914 265759630 15494679 1001518148 1023114452 979978674 227127405 496059824 1041083848 423875605 352385227 1002548595 1068249915 492246746 593504706 740174517 156599425 380093925 1026514447 251368514 465774320 876922283 485420170 968920568 405394488 528103286 777105649 113352443 381919686 588783396 136430102 568086889 52233828 43808939 73566737 188188653 367481977 407388719 959473889 956166763 850908686 224884437 286897447 468253452 526242847 445515403 262133260 699747543 738695360 506610356 920331167 261631548 243698783 293794686 573437071 303656581 458908073 915965170 571368851 1056933466 310079773 607021204 601641537 362680941 33854584 761612328 430428773 197561792 862130376 8044013 676542177 656134037 631546415 870696190 378955158 603455596 560425411 829685383 577760831 685372217 663288419 119379834 572047905 204839276 406087981 67617469 258003952 1028869861 988797161 505742903 997162519 316146334 366992865 884806040 916398407 102418962 706137040 850393543 273512842 806637911 537216048 723983773 1057269412 666000224 955326264 1056100694 361536908 101148677 991073079 1058495825 337768188 820141041 38254239 256054914 166974553 321958684 432362031 969287853 431833159 339111149 569716627 6294861 246722003 862072024 310766464 149954708 847282531 723913754 141726011 415058684 478879838 613761459 1022116623 945855199 678288900 836671518 366949427 1043174572 1023467448 82957952 787594885 545480227 919844326 184807591 623413166 830097407 123299161 348133694 671917001 37387863 990353918 273580166 269278088 551857007 722011709 79776498 241076179 253608992 991836640 839307617 121488708 507189994 631892223 897672595 30187616 150259426 470873994 988144777 838453537 882362168 94204270 713106536 931304157 792877431 739702198 456644374 503189468 790546164 835596322 386984460 605485152 1015408013 131842206 827100146 88260836 477369369 299567886 377770671 497302652 916217917 536245816 993853150 702000308 1037968248 968814065 625278385 213456434 988504453 1006919269 456608130 408443259 661535821 817335223 527998047 387223769 549578375 925283937 408166080 26012302 996237191 265968581 722351134 245640621 583554083 1061611388 226721372 266667993 1008060140 473410367 937636737 442254016 500455892 796849468 1015941270 945914899 878066768 898999224 79914207 649054284 28799322 961419540 907533047 355835185 296855203 46563855 93320574 912463894 282535550 297420207 663246192 642041957 291167444 539289312 572385182 1066942816 235596997 178396483 600652741 546391895 370487785 884699315 413490860 1017977632 1049018548 721979803 951762426 966907350 687593775 473945815 308872555 371679248 856069482 295486922 23953302 420185667 952994337 1056099997 122854865 1067986388 501729325 100185957 614322998 531425120 263290648 621407564 137149721 1048601270 30043793 165243463 1014595280 981857052 731296805 577953422 376803719 429342495 984955924 615531164 530562445 1071383157 743721131 656595708 302933388 449171944 444603005 26230927 114536438 155562519 646772172 643806255 410717731 70183977 61352269 900917138 554092589 1072461482 779002075 195178592 663595632 1048101752 751821927 866209991 148668379 475778103 241957519 1047439309 787747260 817962291 369136935 416066041 739384913 795536357 350906178 322763075 483583739 923686373 411607617 832184061 715753835 534633721 993175660 752159192 1004791228 696301603 941993500 372494671 201141590 507811664 1007758075 76743324 629648664 1005014558 605523821 805800953 428442785 821765084 563971576 996260449 182327980 599594768 271920054 138792446 156122796 657310603 1012968665 105210034 327487702 78739397 420239330 432182244 916720374 93445378 60173602 173283795 703339885 58090697 2403420 99058146 898866260 383680188 585159239 794668427 572360871 189413320 975462555 562875874 926199744 67519725 345068232 311635199 703369380 191236127 793046958 845500557 737130196 972734262 483845570 261828668 576926802 253031878 484474902 126275829 998267168 201878215 920708339 959726181 982341693 958616916 26323795 17381687 887463234 768386761 172893721 809051992 987431799 152268760 227817660 339329998 566014516 767481972 187498577 800238088 412440363 555869116 543891120 282442940 372225476 553105684 259298472 510288340 480279268 275724200 94048790 38759244 397876617 415616801 112302334 154866009 141480180 257167663 108683624 1000817203 245487020 857454649 58870298 510823112 303980525 39609959 564715939 969683382 415544057 33545069 784148253 1062561930 429723969 911075816 846816661 275931577 374536029 109642927 925931921 653027994 695032366 1042616452 484570483 659990584 701062510 352206343 690539724 186218995 427138377 804885649 1071088802 1005323266 464731162 184777196 164600342 488742194 344285106 331290384 655796590 561341276 61047499 499185161 673644929 200592660 352715006 245512861 378050412 32285383 137741045 814208833 566586052 864329529 83638745 794059158 103797025 716472384 430812647 379407638 622659603 754444034 288657299 743729773 186830499 270022434 391554426 18555040 238039953 879505599 270337278 316171863 1032292177 954514061 462507668 630523726 747754562 734974153 440826014 362783915 108712442 485078532 754708828 1025786792 712670539 730699607 476158824 29344676 1033290880 705697575 1066882540 609179681 807198541 210786693 747835803 36630789 1061452284 402555888 989931463 571200532 521892777 609931304 971044383 747399377 70913398 909382534 266584351 79885669 302497827 463599955 909811319 162192423 83933216 166267301 1039437365 701927496 719092397 451294141 43846730 992424012 287327422 1011828221 1010302014 730552117 690533916 570761773 546821454 746791427 264920789 652233760 437916273 801918521 796773613 284388775 402348488 289348261 621541048 55212487 409462088 291493245 460407070 271948434 360255428 487214248 935841219 539533750 173881090 428922538 785366371 809165336 832037652 499983202 308674506 823283947 514125075 234134059 905046921 1059072980 228924927 714642722 973554198 828506541 5825006 218012863 265832455 875622841 9802335 882522417 891847617 136991289 285019780 473544953 1069784462 631027544 856232186 453585543 1046774435 23522199 475444405 399147982 413468893 456720653 690870271 461660455 1029827551 536641511 988476859 246910257 89735146 20388719 253585378 285775076 556861345 359590572 431264043 819826751 917014761 781968537 21265260 215348073 579219712 176306987 826972121 867695108 700968980 758294662 536141486 85311592 483963007 66039886 890850746 476717044 497482496 14422484 501098078 549256471 351001292 521620671 773020974 814215239 734031309 447154968 202837278 731973755 1041955774 660604394 1058037311 892164747 893465404 620226795 1009652596 960307675 842625532 968510300 56276549 1038590484 865291955 760730742 676616097 960748932 444804136 790444428 233633456 810529990 144519878 861997966 1039651503 930713694 791046792 949540464 698085796 363418585 374052567 309998450 594033713 955694900 1048108256 306058782 459569400 164235679 502995395 455915461 401011965 438395190 903566358 920231214 74654514 491061945 374992780 414871830 13155044 1004677757 13977836 769672274 917469260 1024093376 39519753 783428438 256732947 466286555 361299102 143251068 760288782 791043212 734800760 254465024 490974874 367737463 485254484 122186470 108551452 94624199 599998010 405760383 886165402 176412997 988597183 838968895 259252367 333679823 922508110 1003221856 74849679 806223631 315116304 5665516 551025134 292337652 34498205 797916777 837943504 215414942 972705676 1039056859 908538855 453403532 441067100 666649542 985227372 991409065 253906920 1035417481 228296553 2978173 128748410 215909195 935792399 821009973 410554125 228977530 278469380 107410544 766219887 92754474 997954325 950359192 141704638 74141682 893455695 818326963 293276660 290555931 909824342 1035889467 465422934 648609583 67344912 988644054 1004628091 196096364 286458497 696154568 722467500 202071531 975802268 296563612 141430635 500888488 205542035 81984309 1065489676 537710703 124035788 200400744 274501494 909763467 625386951 1020897511 303571216 224477757 271123409 780475400 634645120 247452638 917044406 933938540 195630696 847025468 670479684 1032354963 534034356 275205684 938296439 1004654832 644985200 765648068 56204402 470215555 615976789 995919183 668003976 140233818 1025390354 307094030 432681953 4362608 137423536 741706774 353435437 449228500 332304474 939638336 901418813 326142795 754089417 613055132 600117503 206923721 764069573 1069116404 387915075 657763996 510679295 680112255 769456784 869146669 656359590 421810580 265067552 571557531 589162302 426085850 783361575 784434762 269403309 998438710 992226731 679922885 603783753 725733719 841125604 38225107 668479470 123146125 925844590 137636951 495524547 797870001 454444298 263040051 10762557 519647756 422346938 53632556 464535914 170214499 717700786 880066778 175402418 93732598 117989806 701617060 497942727 399343074 39280283 246297410 45430703 480412291 183062540 1038988320 164532947 769738715 87437887 711380790 590788545 188642867 952898176 514421562 489866240 586273708 1044808911 377412175 426247190 611420763 359652407 814981669 445067774 26296219 734077884 573979014 802775216 208700848 568244143 635994537 47511198 756677570 461912307 490488028 1016805759 200783096 842965554 225081213 805588069 371200442 914457515 828290030 197171111 54604898 421022251 202278506 494525216 639066587 156966567 763455333 172896876 989969076 912251230 425966348 785882816 131869839 323132244 807478400 131327657 13237762 78448969 124662250 601811799 979207392 226096850 57095282 759518826 387064760 145312266 117774245 745599909 119305028 973670340 397818676 970998267 473543546 498602272 374835112 286749040 501510894 791131175 118410171 690119230 989062755 558369114 763478829 228184712 481920639 162841293 34632135 494105026 955831441 755381855 963562475 981845668 702921823 258022314 881267314 153825438 966995211 331193520 930925439 482053884 57448802 290508455 439575969 608492663 687582767 30844193 513439577 315618103 981482477 740051818 502641646 2469606 685327496 739746805 868812239 474793641 1037436506 469429154 580930372 963931061 426795196 840483015 821339419 277501222 613811286 379291952 850512203 396190193 602085321 936144670 1057502187 288034128 54557400 475006332 801533241 1064839217 708560183 526250187 692503264 387299657 498148197 525576579 895932515 112222175 813271853 860056507 861465163 227595029 354215723 816649984 546980944 719705728 826789530 1056588642 822466309 714634557 310818275 401849575 972297645 599058890 1039237200 893985718 969219039 76917619 737505307 426117204 273334741 140785007 684879661 476719680 789652528 999286073 44645756 413019864 663509426 389394657 473475590 743179846 457199886 276560297 530322912 840961940 298886626 808832450 1050367333 1055530976 144155480 10834758 833056496 713031785 790903303 231243269 768868960 240773282 169661752 356022576 143168680 545640962 543494756 349763791 757038082 467962223 653348740 809324874 960440019 1060405016 527827017 960427997 25868222 626554112 664878856 23822412 978661513 450362621 214406880 213162905 86100759 379436496 867361435 201659916 985099186 274806921 288756966 391059078 767429527 346873306 23025581 73384097 569603431 1054893853 1007965826 271241259 259533755 602686503 680926997 856647677 901591682 261461621 386598566 320306685 181547506 116169486 535594582 505387679 300209152 957519601 613502793 1037233956 860506271 306070404 243956492 969491252 369254512 945272163 684176858 1053538695 390419588 37099221 1025622676 200366585 504962678 159387040 526759915 972855818 389653348 994944835 116230361 725000322 773679785 73148839 944322322 236693181 207936153 5194620 912776999 916555873 306073546 477557629 912381037 98470866 531447737 1065767013 813161821 423093247 546250805 761556314 455355712 733331181 171390890 975552905 96343935 783732421 390658311 409418238 408457580 969909630 432887822 917634770 749085443 519025680 583974374 268737369 616816794 921566372 145395740 606788773 140138881 481237689 1060375944 598442512 282210771 411882684 561177124 941158768 983548419 89926099 753735117 182578178 266201611 372758172 723915908 194792463 106162216 883440487 512581861 1072102137 809068247 123128774 897143827 1059627815 894555384 140732497 567349071 119285347 618434276 207182354 616172142 272582485 731647829 537994167 192733025 1000816116 968192536 141105280 797360671 1060798492 406550972 915391904 423681177 445315093 832705293 626248537 202783331 511344469 279345233 974643575 498110 683704856 455760726 450964329 683659972 885698542 751582781 313919129 807400583 469029904 459348918 286098349 836117943 783813362 678457373 343522474 902388416 1041022890 622964159 405636143 545172586 879910445 556991827 852517804 1250828 125414918 152309509 451180820 714565561 78710941 1059254099 726252084 674470087 777081635 328804334 36472102 915900535 660537312 408237429 362188199 361860115 942001781 236014311 596240079 615400383 431828634 1042166658 1022201298 852418430 930337690 774170954 551309653 387568445 92809726 690555797 584036745 915411525 282813371 554550958 889724640 95512164 161196531 91066780 656373078 649702047 956184118 983068949 484614616 559339620 619589810 814433431 173396789 876280602 221673866 448336409 548529900 1037987205 306147005 961247663 900921982 103170246 1004235540 482835739 352873353 939991018 208523865 90775683 943639085 894627329 30419333 1056207230 266692267 1071358970 191291520 577980780 154668577 1049029879 1035144288 372125258 127059045 772556119 600376112 1024580144 803735845 391960110 424663731 239602446 107731210 919911916 1002671359 688156947 480785351 362257801 63042507 777307166 1067004051 502318134 218552251 786061305 531768838 125548257 264750298 1055555109 670091534 111428522 317597684 93735253 106149765 504482783 786105340 618236241 798201670 711494669 457565738 172761086 199883598 567296761 617234213 325887565 927212020 611177288 1013834717 507063639 585474764 658693674 992853325 344858379 824608570 443992304 810121316 285767264 638669251 597351004 3538519 630670571 379625356 1002908010 683390145 932954839 538073473 814640195 304016956 596010702 734364432 962660694 91106776 283164093 586862302 459563076 423401523 88398286 417713226 558566384 1073477836 706384667 76522871 970159602 160194172 603851414 895352528 239610295 931822001 267733226 147151921 735082350 841721197 448747784 329850541 51970850 710608594 820502392 992707507 1033509674 478251912 659686829 690327033 646104752 602007810 19145268 328622886 947960609 257797725 4511328 99206973 33850574 1028902951 946089027 364905469 719330276 417072871 425207265 346156500 516465126 983371067 778437195 300123675 929886316 14603003 917627404 814902000 307527504 863070483 458540635 181978348 718712463 245990399 860233715 1021681498 848697108 289588417 233632324 684204554 707758496 674566796 300652651 280204615 997217696 315483055 824871887 740752186 904211281 249706234 259838501 988956674 851597627 740372210 876036489 802946474 449534534 517555061 906853137 166691498 1001440110 131183604 53337477 226011733 997007433 635185949 54770067 608550193 242713934 10628794 431360790 960459733 606130968 698846831 335582787 547060918 539562319 470764957 425811319 617915808 453074654 837151929 28877635 400625193 75130899 671984618 866428717 642234082 1035927598 728953067 640428711 155913552 8493067 528408146 117593757 967582188 120598015 86950777 1059739608 293103369 15593982 287075325 102753088 388179083 754115021 948281661 557279683 802101991 341372927 310023688 446243846 195269457 79338251 1000545755 775414644 336648738 214440838 929589012 414999705 137381306 629672472 32691911 114068126 1008000568 319790374 17516649 970326463 194009878 338960806 950786462 367537627 284387600 1061971388 146573540 933181862 90874535 882702131 472124024 693559399 674603160 367165690 728821008 368177136 71583849 870704663 973323486 477962529 442213410 170628340 409285310 257963541 452871964 14979092 20031295 124780861 135062337 786681367 1021850753 581355214 395238200 118115069 232008628 622100089 199335398 866443342 776400190 1049742086 273165812 83589612 50246473 1069944669 795276775 998659819 690506684 79558131 1002709836 308061210 329473271 119221618 987937400 359397734 983666429 575343729 985368869 837418552 744025901 390573283 120582942 801783280 646544000 567085528 676372282 935864289 69699980 991922900 635751001 721888104 934855440 663071106 1037545440 892671991 1059516573 254376593 714026950 529494921 125139044 248755720 143674352 112761082 982958862 1024694005 868723641 94314966 585444088 579719952 998179308 460950916 940168410 682775047 1051035832 436157199 82504371 368760355 508893973 1046919498 936646893 238364344 50254468 787201612 264275545 209026304 1032746384 959610219 362331891 739944564 728761881 610228141 489380092 457736382 395989128 312940428 161616785 737381066 934714639 26279291 410049027 532248973 757128085 296137128 849770771 260591671 776907408 559576114 723627253 471650920 850281039 915741590 626103297 274105498 300818434 780703226 1021875174 100590571 384343125 517347376 159385050 393823789 670252655 799695809 844774440 117354955 346514018 525613306 420598719 348727551 1005011507 210108890 280825275 952090435 355546843 422725260 491638045 203389152 180774905 87844535 872318047 728452896 146025187 792144811 630831074 808982845 506064389 322152413 842602406 422676168 461406382 66914599 449229981 53007560 910308510 611207255 711042102 507143047 787160896 996133897 347749298 1039108526 656940166 160486346 1028151173 85118312 529588013 595890834 730678487 462162700 527072602 643600088 323148056 111463991 493640830 678244334 499195979 123387659 137732634 431039899 195585471 109958519 459222168 804508079 429842709 736443872 121039764 485083240 910466545 637765940 656307158 208408157 431752612 694455482 301412991 913296992 58408102 546548743 341859193 893419462 852947587 322446055 170758227 488286986 296162425 278378718 72576019 839001787 616186412 721737489 140334071 549026152 729821075 822043304 816908842 797997662 107091727 1073316689 196466248 327181857 662606215 677455227 308914738 1031843359 943899731 186406217 406544892 506387290 762067808 89043058 978348642 599134356 708037028 379976645 691643194 575243878 1038686834 1022269906 481956579 827419794 700414681 1039890330 1053927335 593246207 732336807 264274364 591006544 792892418 1068096980 687148563 1059693422 63699714 313066138 391825116 765426174 1011140869 245000500 751667143 62085047 328489436 467324308 366862019 426394345 159256808 20213349 552064834 1046899803 884351961 1055282448 969298031 288141044 215164616 267852910 118844116 843163694 110779082 771180997 469852257 962040040 620595352 93288402 342653610 870248124 188849041 5221382 787762449 8389255 347028150 659789190 740851830 309122744 364772344 1051234236 415573331 1065016127 325098655 722710930 788945957 475955388 541117782 265725630 829971093 282140317 887816629 139023972 140356583 637448406 344981654 874126478 533619812 29704641 4506740 929787223 54496938 379007582 137333828 239102893 392413278 378781017 272320449 967796417 841439329 668517386 856251954 467504993 579453969 66544665 705241523 330139225 619845845 582227254 403458017 571214852 211204370 461321551 443539109 36732146 53184477 863446979 126652376 811771514 505283601 454969119 791616211 465950835 761664359 135539748 426119529 141088970 730280456 276137148 758082977 294105854 397453783 425139490 316371627 930495608 715499187 895807880 60299315 586710761 197350919 318512212 93518371 195763603 496132327 827188494 430365018 373979005 127744350 975762537 798707171 384117604 843747116 139655341 180834561 483748016 402138393 903619835 353048626 125604967 664965363 17870227 824811586 250718757 112706213 622621155 817484289 1024359980 90847051 57775004 444833815 52809611 675494545 56007930 943240975 588555443 413873580 483240552 22211169 917268400 1051139686 439865565 817780569 902249401 806050722 315147976 924106279 8803864 763011082 765933675 963912696 413276457 696386067 517435578 254610846 863234169 408831765 461211010 604983687 158213148 620021461 549858764 394784738 461930138 376500701 79019904 383458499 549219594 408510966 1000385083 930721887 680014317 516754959 894472969 931785195 596665349 567717094 418080083 759544429 462436582 688572502 279783468 317317992 604939844 464368636 417773978 15914539 1069014265 911264510 1045846847 639395975 349261592 20878525 542189787 219147126 1026189350 620734930 964485813 1025068677 230294526 545613407 306990054 753432445 183155285 139121214 279099548 1026822546 561245457 488867947 140505248 857861191 894624155 194816104 373787297 625034332 1026833075 256262073 196482377 176275668 64906947 1068577421 550688986 551191657 750499046 643874114 192431399 888924107 503671661 474645680 1044181277 853629273 166375262 199251054 274778112 480002518 156792225 370101362 661200766 973728445 702968193 972902130 334010719 879605221 636164603 828688876 639263875 280533800 1033968526 679484774 500089391 55166159 132105930 426729983 126421685 317931940 682213049 205209155 886372439 927052980 468144817 346603132 488954050 1048130836 375707855 146389484 262594459 100249268 126737559 782349646 922588375 268054055 706933096 675078024 530138236 920708641 1018406528 24193158 81483456 884946050 581928491 157734453 357011559 194843805 114275734 609577960 141711066 418575823 949223283 181239698 360429238 247286042 79256652 255929358 175704335 869030236 974879128 350290841 278654699 579267686 472461307 103454432 534618143 985985099 554976160 915789824 658624555 553523734 402416029 771573046 499357741 651948194 521475687 667941185 708331495 316722707 258338395 954439472 565495589 956893456 147230217 619524079 48442063 446394269 513871941 442862208 754272654 434158692 915359764 71407479 252938659 454271270 1029455754 63568494 15477504 960507818 960660130 204037890 600953164 234978610 434304594 544462203 674087961 977831794 360951874 50193544 1044728532 102829992 368522532 882761732 1043968147 604977087 730068730 140309549 723135715 271047404 543280896 1013018896 246487704 191114589 612519879 56578838 270413331 794762460 737660982 600961477 1061073381 891961648 455844801 915845956 793945734 822919168 448596287 538269628 626793234 795905656 758637320 611546689 795790465 787850734 232765354 23448203 832451889 264675873 128625305 1033538008 541789581 159716783 512674605 954541753 312688108 527873804 544662592 40309464 628749951 1022001488 632293524 341710566 839431503 546855873 490938767 39608877 481591127 937057610 6588769 88426018 823776009 142871954 207881096 802134817 152255727 879634302 1457003 14396231 1015083729 1020406895 654422953 962673290 944399455 956980118 171343026 912659414 99597353 98658794 98923626 816961852 401872292 1018093132 608508597 212924559 37772685 43446586 920060258 223869992 746079820 795107466 254995130 364509217 597453520 200846535 193336960 604962081 451490285 617363569 884610014 753382352 418445025 18245365 916960708 405064380 960789197 154785870 74353962 549916922 588958590 541804037 1007899824 700106059 874177911 143920367 221681856 954363699 498036837 93411308 117778289 1070474841 290920328 482393447 794378915 444888711 350250934 141554598 310636770 26399539 205312832 392856262 451930024 621311248 920577524 68984692 234459280 125965616 1045267497 81052953 214780887 358723507 650430128 84623957 150273105 285888350 166009174 442864176 672429153 685072930 212235262 169236011 504199923 1052297837 542564574 557871301 534070163 768709896 254692766 139664010 82665550 785142578 345000152 234696415 380671769 383375941 615254681 693088722 490384577 219516852 981048051 872492641 846401 104091808 873034769 148766304 901798618 663920184 775148846 1051205048 548606135 288033379 53970941 32222434 646902751 732404501 306080556 31416712 345539876 9277930 549615516 1046145618 504013076 772771182 1035874801 917586387 313295221 681564725 888767294 820776803 616722258 315788699 118767614 277517041 117797609 866351249 1007230336 767509634 790446772 263501846 439637616 963798284 223153701 934583467 32204135 808565965 867462144 532096740 198863413 613318618 441874075 667187831 285264518 425101109 76045400 748370631 123556682 22810868 466196493 120714329 811032260 22449063 379217900 1032933144 464974830 506674573 197035168 196839417 12138459 452760475 647444572 252885702 627367024 498336153 434569245 641926253 63950994 807826893 299033989 961650437 971706460 833173383 929421070 479764140 470257976 287146867 960052641 318916403 83153064 558540814 980298230 999926919 135082484 133949988 809623990 394443385 1005879734 436587469 920584060 924787288 567311970 826724327 661308127 375538640 479241389 330390008 936063387 550860699 3862168 334885028 990737880 149282269 1015639436 556426995 880059192 973725449 719529260 586062773 319037167 750276190 346720103 717963658 384571875 404951182 375352374 620172607 770586264 872872190 771858760 409417258 848808943 227527243 1031617289 451603439 298302040 1049855879 353157165 796699861 360314770 250262194 101706447 703618259 841286649 1064738226 80997864 706957012 857686344 759970534 143976375 69722282 196148196 64737415 741186935 706632879 692336267 255074830 65651235 245702573 783069851 257447875 868131967 232343581 34789971 577424617 972567915 929034888 718664125 990098212 630666709 399960100 383029142 509187609 883543034 199142883 582825679 187704306 706803898 146762182 280985393 810377043 36534143 252447125 704307763 1002664342 172287297 568926309 871420240 536688733 830603809 46911986 471269308 358077418 443345702 132904293 15605700 429349567 93241237 629780702 626495736 1066420469 524971408 149886250 715545032 916501294 1052121640 918299257 749581105 621522655 55117158 987586798 509984787 407979400 698801695 473690102 118516793 786687491 991643875 659262096 684753033 44361828 245451882 73259964 156439416 888255906 782538224 878301211 814691491 663257721 130594875 92843996 791850318 149844115 842081535 150417993 776471176 76355505 800639225 921927360 616878176 889859728 351030010 754487027 888912288 710778145 5802075 746045476 160662398 138346540 2336996 96492699 595110102 607303128 585235564 886409663 8582082 841055637 658686825 643533448 419844036 717150311 813971458 738508761 715796154 54356650 306057528 417466651 929013437 102284023 42154960 813026072 263612271 1067134837 136220567 675790258 490013716 790986508 313172905 348058513 58216600 658161953 245623066 1071092760 135613800 68340727 72441009 1060504160 521474315 287718764 724607986 684652376 174304990 32186938 1018780406 498463379 786689062 251175930 674246979 635087207 202394531 2492471 716584137 522574569 146037161 788140232 599834750 856704419 332996273 562202449 227687770 697246094 806337942 936221810 405073502 397097250 664281395 487624123 954501928 397052753 1037393831 620034979 256006925 187973438 880092323 636210569 712270455 109573781 975711505 259457643 1002025282 341080122 148471756 1233146 800673669 613123533 495662241 560983587 503983795 342697508 1020257348 764047335 294948988 120649803 927696736 1011924430 433692466 656277536 979876705 118981082 517801122 888950745 10157494 210134274 945234970 735051568 178114770 87042356 497878201 988393425 80501416 655013208 430788208 17930883 939671987 772773398 526577932 931225893 1025476347 505836342 369386478 749814074 658155128 332443871 409116771 201050552 769493601 681076991 681815630 514521194 267032056 654881896 276634283 403972717 99155560 182970285 731533372 34629218 752691261 773627388 266625606 784491381 266649228 551877767 500032801 138764923 305717092 696190396 354108702 297151413 391813083 589333980 202099740 298480097 878519510 706525501 546572875 5028576 1067653016 459844170 135648786 447622862 266162278 53173180 631881736 950216454 31235143 446607979 117054394 1044307239 856314459 415038284 636423294 365913887 416589478 875377259 887547634 559769371 708083322 821203930 18806157 980229622 533313326 578966878 182966162 903157915 675884515 953848777 574928086 471521893 750495619 183975882 645095367 486985952 975999342 519805542 982021711 648555548 760591070 716416914 1027349503 366243452 633535327 904201563 642089052 617158257 96548240 280710693 1067930405 287349236 799488722 494942173 450963122 9702480 405147860 609740034 469417682 935377181 310636292 108908484 883223412 707216388 863429323 202120036 348093073 638367676 480753138 956857227 312437089 821346706 1052688665 674542656 135417261 140309053 160884630 205197813 818726143 1044583941 831043140 322318353 943015166 948785743 1006181826 330830050 437825583 690884824 183401893 789842008 947182063 58851589 1041385013 503449522 759478506 20130379 327426420 664965387 985979000 457066581 584785393 103487964 1018663201 753600584 957189791 667514474 770825421 757903979 872134464 156866447 934528636 284299568 638257897 542637450 125224243 802987948 119906373 293071096 346776310 730052689 766210143 207540997 327555945 700098949 197709299 471532833 15268116 135666665 187329347 486174556 1371977 738674436 917578156 842035319 337317489 544537587 647801782 1017990625 419717411 495633225 880892489 866934079 741887 370903834 127450932 669702825 923537172 597314903 482440672 486055820 396218240 383650377 915931952 187139726 305259875 445921070 1058551739 860766060 613367879 946483429 716097740 53460106 762996668 36111517 801781423 54896898 980538237 1046717752 530747666 844278893 104317712 250284016 263365038 322606262 868006880 826526054 560947626 315765777 478844853 453241266 115436105 311401867 553841804 311497200 333088555 991514285 625216642 704891708 902007704 109234207 762523025 34913911 87286459 293083568 939831297 931144436 130836243 236861320 536533321 958935776 454130845 506083115 758732332 482131564 10665234 97034706 941299453 293126814 282919694 847292835 721091755 592656811 415708260 926195460 352030118 723404682 145386131 998056595 397566916 315852490 891544490 748863933 1015929291 799376349 1007918354 14773527 397133666 291054457 611576024 605513720 195164897 987251291 1023773689 782513514 762982573 826746130 948821289 996892010 749515345 262177578 758584154 170893281 967534619 728891264 476127523 395924591 871234571 719464476 711236232 137614281 866743804 1036749882 522603321 772809372 933269986 158998580 488107125 5753708 63471995 698861581 954098387 729568296 207901864 719584843 896420439 252242524 1061146469 235304063 1036522175 825760719 12661673 8075262 818493922 132965944 19750681 259906146 559609319 203039426 154226233 911434472 956793282 971104705 44215519 566922984 658467363 167905604 556139092 1066017530 750742695 388680563 555036128 50918630 752172958 302333501 782460183 518691289 248701605 1018258649 764443935 122421788 92994010 974698801 66696798 669932525 188149135 806871379 989769062 509315076 426495620 670042036 968608941 457776975 227772148 913560498 7213676 119285918 549608194 445738845 851254515 533783223 574901493 670444002 146312083 1008081814 554544231 257959802 119477827 70556373 694183132 956651384 923470542 250996833 510382727 128856514 642486087 677394321 708336781 336811202 25902802 275455869 119933767 808241431 263524743 731178440 513948608 396677123 731355487 665058874 752958862 388078939 1013223192 562811447 569148973 959740838 194169517 369687311 16961508 413960177 1014016798 1015858649 512040063 884740708 1042565449 940851587 120579017 716182327 92965034 48439653 857216008 302382112 964285572 818366444 42952227 872402006 741096698 1000416400 675804633 895312394 72975439 1052031248 718882266 772944513 943986517 416170474 177931161 750071155 783097836 335430649 59884112 36433490 479341784 16790045 882555754 871553382 782187489 697523027 375690480 740487023 32152587 904036428 336114665 47293697 235923608 255594472 182988254 564968142 663756310 214588127 837436447 159895299 910796233 353872709 552797544 276905674 145889406 1059255284 272357147 385577728 532808600 102493923 867318323 946802411 567780746 69516740 799417176 941053816 693917617 989257811 463531461 481744902 73838436 891036833 101257615 1001163056 171548159 443514574 642414293 930923547 136372496 698858410 315930689 7922840 1030756997 924973361 112089880 469266034 705801703 395327559 908364074 210836917 993853059 200774246 627401519 678793500 991361574 361111855 353166951 990972285 805525851 626219187 306612699 594750553 703069588 191897451 263983390 308050571 163513194 932491908 254550201 151483960 892153954 438516736 432318518 193045582 791441376 620035214 84552675 77520658 710293715 679170278 68111481 130492162 587588986 627524782 26132368 900362265 348054921 637182633 480147595 491723322 263382190 610539993 633670637 166175808 769621380 168219421 676864640 1020770487 272575817 32226318 587113271 721375005 1028286011 924182547 690981647 484184317 392280867 943635437 792399877 941616078 1058050531 1015213393 281102054 775016310 610977048 427429061 1010909124 875191247 259398009 978884319 427271242 42202138 571217489 486259276 957148750 526182819 755910202 988965806 881340981 951149701 333830827 343253861 404063294 445603568 825363171 52592941 934673866 758009796 303128480 666638208 605920354 512900006 156213490 793282397 774238123 645249125 304714814 344661241 134632769 969507576 1070297892 50390357 265467688 228213802 669266364 97761897 33216295 484508776 1065800110 824217612 495650148 1072013788 547514386 38561598 271440562 677671011 579642247 166889288 214483005 451330038 592268671 467860408 229170332 296122216 164923904 454415310 267992642 807562852 358039105 391159161 450164948 987373733 941812453 259000198 189465445 609531938 236448116 588790929 136580407 766623953 741068141 929309248 528942132 225069457 852413118 568316808 334864569 609933734 903433919 903059565 342176314 16223361 867861717 340792379 63704993 637074312 494741890 889997765 764759823 1021213546 275702247 489421200 217288609 97998444 961426939 645446702 758864734 200294815 1069105946 257655912 811206209 678253848 255078017 265877493 781009134 131152638 648462815 256976341 95185191 585176866 352231103 538941465 635107973 128490010 666614599 230533686 440003869 75459206 862423247 894755162 245810065 149796828 17160411 97732664 260855548 939956190 764758932 478807025 264292269 605686812 1038409473 872704520 939738850 922967909 194239227 797474297 894308739 1016847414 878082593 516258924 472993835 853082531 550214350 1039735758 34607359 1065818051 707047884 238415980 36937065 731018713 193438185 1032380337 995556478 606531150 264075170 760392824 1055241028 382101496 330485517 680806703 4381992 541764583 158388822 98264034 200198509 1042090976 754371502 793146544 823757026 670942941 930512247 20375779 316019213 567172071 738302454 282641679 132184519 223291068 72135884 377062720 492897209 1030429719 1049637789 259915085 119462572 816165380 534962182 828355297 797584423 365857934 718502680 14684020 198329451 696903791 421592093 51976178 344333377 336824473 756527748 548249727 550023690 501072048 766150361 1058474466 584525372 492003892 920867095 67861956 755203870 314556172 866497983 981739592 212958488 672847157 267733739 265404040 185422517 980882607 799867045 305829278 182355005 606136788 1040912417 193282767 794084459 785803655 648483397 241503870 767934344 18833682 661365630 2255843 989187288 224286698 813789970 918508010 575209284 279022225 427444961 757275675 1025338465 781540345 672115619 352158956 712864762 432644824 657566383 281978717 47548782 134054407 228319569 526370477 63048723 213736090 134056171 659152089 190505085 266785976 798145732 760085713 129798204 1006142265 552956735 947937546 319326674 484182603 222553468 913524308 124727127 751902972 735784971 340004597 349867026 412448333 430239290 672724330 742646851 77537550 726265179 796838339 215884036 838109443 468760654 815749123 453618218 73050662 340331045 595172691 812197150 518211774 573118076 201743298 854498851 632791962 823463481 818685830 897003125 963830345 38291667 251942438 76408829 640522479 1059047517 670287572 879393000 231732747 837262737 191991856 697445338 44915341 823062028 682246324 759360327 88894598 345340734 22871301 1051779317 510076953 672298058 839192402 688205100 38111773 173743179 433862966 58005190 970273781 207766956 473317713 556621805 96814953 396861709 836480713 768299126 361395056 161634687 65491387 77079759 264720856 478523068 209490809 697807949 933890220 1035733813 1018242500 197440973 834070275 973539120 667063477 205695265 1027000061 190197417 573156543 74328406 818869577 978932177 854198253 126754373 541103181 118102156 143246858 832802915 880159428 912524176 755352993 999938751 834575587 506539834 651294245 193429849 819694045 32223253 482523023 919461425 577575168 856618178 976806081 551083162 667130209 552371732 517719941 815079410 578324361 568029878 1051935138 251680821 1041286958 734364806 996077833 521943264 110618259 892830231 138016860 248861612 311091905 810874132 845371401 290399309 197392135 627799685 302067392 386217695 192839718 902491038 68387671 930395801 1502874 865019942 399697588 394002507 747090100 731073277 481022572 470756394 785243468 700219223 505802388 371793170 1061967686 266487368 154919240 218565616 724526976 17776038 145696873 1066672197 946125894 485943632 356346965 554442887 805533235 441984575 876125685 1051491685 207836961 284813140 720514670 292480444 707112421 386499277 942381951 184577056 293708620 481160868 900345385 241271142 347673925 1000527452 772374828 674066256 212620101 657337916 903227890 247534793 101115727 847458621 463967561 1046934331 479630293 232774826 304665951 1006242958 458695670 200562823 519708661 553343842 264172544 120238170 550891360 883745448 794493424 15121158 100766448 45946917 325704916 825939390 580696620 13620381 1073665810 790217120 939170187 176831449 337046959 558218294 722346412 468092010 221751759 452856993 545150483 1037728764 983871176 441398872 1053432746 197565363 450454100 162172924 357426169 399133415 344833741 154472720 435513567 325539794 813563428 374520146 14062385 378583575 596847058 447712228 402499934 1064363986 380904694 852810357 843458681 16949427 694581825 829109173 308562757 1013139307 541422252 866266373 662129357 161453311 57414307 425855759 403838049 338460724 461686559 314137711 399291141 670919493 351860055 252237263 24917561 1000057625 783487546 975868341 828382146 721170534 656215330 660690766 508558389 787932888 309036317 153319355 988521145 993286686 766124440 475157929 717802726 683065335 934482128 633626753 859760055 1057716586 108452189 340670480 1045065775 852182858 956265864 1021465026 867741528 631883702 237479027 222798752 687506992 715359155 1056340948 210620638 246848975 793491098 472173185 697151307 217433338 827389460 209070890 751534339 88004719 329279597 949113405 665951040 530321368 954048613 432811125 342411331 956408139 1038605341 470504323 957400197 693507527 692369955 1012824141 208842773 865297531 191280083 443625705 702934408 96563668 60594288 156294450 567618150 640598866 583647146 353267921 228318049 963440753 219268166 250222131 886955965 63061959 446950712 588870427 8384898 745206312 541234540 231996962 452547608 319486716 731976099 91285543 546582874 562636915 183364488 236030885 889016314 623820924 914880857 972940025 268375620 178914034 33594673 23489307 814173609 932747579 534552140 406629553 410737936 413009150 49790499 1018196560 514997770 231171177 421245374 680046330 1020774157 961316153 55397975 809545202 869210000 286524343 155604100 358025400 804059924 113614209 420580668 272481355 422946207 751724169 71186168 119892994 417296704 884457999 151342048 822827903 870615627 5182629 66107842 538491140 325686395 305941363 848492023 363842868 334391298 647093487 680978635 516914881 482665247 962815130 504650617 174668823 652046503 576549746 332548108 647287248 103191871 234508444 350438049 860753770 895827411 402079556 781073275 341671493 892293723 1054288148 424661810 863074941 362333901 786122221 760808231 105377722 169061243 949690620 424625991 373731301 982989042 899446618 1073225325 672872287 696901088 1028214994 408879862 768672383 566820958 891434990 408013288 234384558 765643099 264699493 180997919 632991313 367377115 530266812 641440941 775503202 26845731 474309933 392944069 511829001 786519915 774121076 541844876 650852637 223690323 300835244 934358311 496482984 450924644 478724071 44764491 730610277 964075593 947167079 31653518 460062238 522286403 45863827 739703323 943012047 726398548 965539092 580387153 978649752 598127047 399263968 1063240340 384115540 226511938 628547462 29584745 97618244 1040265689 757773565 38433964 381953028 302739878 252227226 186961366 35583245 929656836 798444991 791021135 852163987 282558870 711275706 848634875 386724232 175700163 556467893 850150950 1002669654 905196675 910102347 1006157832 701398962 270607730 501733711 957219884 431635073 390894095 23799421 378897486 40464656 890988216 54543001 518001744 768022459 1019801095 794805937 176319474 1002898144 966138428 64471514 113436672 269648826 539299414 567850707 733348898 1021955562 685537633 91099340 574437087 168812103 719848120 334306605 173360538 369721847 603163640 717119218 163008353 582674111 83912565 874143182 196886598 345400900 852312159 1018804711 880680344 846736420 920483919 606661398 603183102 727106231 887381104 345861898 4261944 10623753 1030161432 123546895 1032397332 319970530 107034900 1045114821 714408856 393890287 923159045 998167793 318404553 326666098 1055093228 861796425 736770034 310816208 313845627 883984538 908922071 711803762 347073254 667132931 566363692 672495668 654731886 795904478 626174678 188403133 805217213 1017676055 11258440 551951421 413138310 48648883 542014606 120571922 227295934 808461655 419754095 683858010 708185728 693958593 936567203 435633928 251054634 574475696 622722961 86606970 3400453 494937134 348026711 452676712 1055096111 18942817 653936413 801179670 449304705 1022973748 686341372 167893007 158346256 627130619 624386822 149402571 761934487 963131951 232038515 962515917 155029123 451645231 678193417 2252563 264887077 244676219 468382309 938225364 319040503 790551004 786966192 1009397211 774917396 832306146 22316622 136296027 57999078 854903384 711280482 17779434 553926041 619867442 588235304 309119113 929676230 378509116 368492231 169537045 598398451 373814975 444866539 370181395 908592439 479671951 644768538 987594742 745820962 460417260 527731391 850682521 842224067 762147650 112060642 702541275 683276436 996420597 515529424 1054146248 582886399 135594379 29635462 376596335 69876472 548258087 169248019 322184306 211410512 486108993 902770312 97059872 659415045 29773972 373021673 149729298 213685521 407949598 380692109 115913657 558774766 801334166 923948030 424939151 291018025 629652146 189031505 886950618 935106567 771964976 174079259 509848159 201050467 800516785 780254078 392689396 1001730888 189218769 554276803 226815806 846030601 377124927 47017388 237630739 318856629 781425297 628766450 811550902 953324656 435402038 498631247 1017346338 592140086 287380078 266209690 261560187 238364014 436258222 999024692 967587178 140850368 523644419 956449796 797192434 44610246 54355832 654889785 549104194 327439810 980383550 488786283 210206665 1028902658 435717329 889230941 279250276 506254317 110437559 337654425 529022941 964209689 387908850 18886464 994284538 646767543 362781089 662888731 958804727 322392983 724974316 1026089525 571125070 727199272 737052639 34928403 568548525 624077271 956638794 395174141 947133397 1024130644 795942457 195646249 174402901 259984060 789548020 823842058 360200114 800616346 613884078 419911158 387319411 521554325 142376315 12910051 168725928 471002786 1014736190 1059024097 73126618 436703960 576021101 1013168019 475024057 331896349 125987092 700074824 782905810 148489840 903581481 79553500 902047568 1052861067 116890313 631939498 550710772 351153166 1068012230 1064539498 718798367 475550371 938640717 196341641 408776521 466485569 757269730 371056155 923320709 281196110 938471376 411493213 703760144 488304010 450076686 814369570 393430824 675086791 904629239 625531139 376216031 558463608 983125131 86685374 249084708 123993023 844030963 455847773 804492807 53158325 762948128 975606513 945587159 190413876 375779653 121474928 588876570 140836590 1016711915 355710991 509288093 870521693 790293121 437774881 837210764 629637561 976880474 876810259 32533501 558407669 222420499 202986473 442500006 347133696 680279062 1020449078 370452597 329390671 691650360 849752559 572180846 891662108 36961578 631301934 604905289 171186737 1035846696 222326296 825732297 704085134 948379941 57714235 259576954 1046656899 83999057 47968340 870562414 446497716 396297182 417849716 198685108 232618038 671917975 927820769 659282848 359577513 789486219 704541200 784825856 393344716 991755182 284812068 494039185 896789977 1069944155 465791922 996911846 518070992 566012249 964793892 975360480 161582476 835838965 980231444 62503702 56223071 180744658 545579865 60110880 1005978123 769335918 725524235 941369436 79103171 610390515 889564125 705254084 1063167184 766002299 623922859 916491895 615161565 804653672 225812671 216048985 966931765 567725425 285760277 396016782 451690298 870342908 990903227 974323674 458478015 322334461 496401677 849334002 929385350 264299888 551668692 683753105 518012423 209882583 967281979 55602379 500284627 865579965 677326799 509994081 914543697 318773585 348787964 799144571 1041252665 166565163 635184971 75046943 495017774 226861358 390366794 220465026 649043240 364680410 70996144 966559143 938098166 562413615 219419767 958627786 733028791 2520942 104546392 288687816 300066050 454713011 928544036 488684078 379393905 19414565 150542961 158823250 643690040 694422485 514093960 889355198 983166085 330150489 176280154 290147791 58054839 948071466 335531926 308584051 948901111 868364572 518279595 838117232 429678053 1033637711 392320735 382649315 950649248 785787900 130662612 650411385 638784337 586516988 740003105 9889115 624447207 787645033 1073550948 283960908 137037404 913082787 5835572 377910254 783822896 334198487 994044754 256641487 666580212 591549246 312674529 711655447 258093238 874106898 384403984 373224383 760083119 609434633 574333383 164852507 498469258 687567912 273416302 390396356 695472664 606644431 461682195 759071314 492075901 710568644 430733096 556890560 1031347584 258629159 223886586 2547546 912574748 689366357 523512752 13783232 622552763 44947087 197749293 285202496 201285853 453365396 581484254 297631876 860177601 104038140 820729025 769089585 537155365 767852869 199990887 516110601 534899645 604648198 285066153 215308775 703090963 1024716860 227244227 631443640 872416239 911923108 806747928 420075087 770416052 341017261 324573490 546588933 749609462 747533782 189560399 896204958 898609322 361307112 138092862 674124779 462118718 545367333 500626043 2608472 640247330 418706791 809391676 424351622 1024098942 664534759 345077264 1014595038 248295321 209118431 849111745 1059922854 81065118 1011779351 320925371 744769398 957517678 1026262350 103554714 568556997 605462103 586363345 558745579 808859766 890611966 406319578 533928205 1035929800 913943198 294318768 306530204 24427091 41086444 425062417 565808284 353416369 444816916 390569569 146144807 796960299 905135908 240631572 1011635248 172272628 813930848 748005009 1044927988 920346578 685366476 192469180 585047074 6346573 564690049 250154446 684007224 851850484 209193260 354334996 195208962 334525817 345006084 291614739 837346169 511669256 593337561 11200641 231390518 9649311 691824619 430489280 442169319 895784052 325059155 979504737 857979046 923653216 671649107 491317620 459633179 712348924 128126748 486606599 929316524 575379799 475764859 151309755 26747279 728807033 167842422 655564273 947454259 650490276 618456937 53359657 891356834 256848906 52365704 631649016 92717866 850422758 69993296 159530631 174257757 185310776 281543184 23070084 920060543 368680260 709722979 174790560 730822075 106147661 1017347455 101950396 79214122 679985561 806098766 231948423 338004540 642048575 300683652 408395570 216749273 833053318 460163457 528725715 359156678 349519279 801329295 831283317 79552840 853034778 366820573 705211617 664947883 1043028729 89575262 552313852 595095615 525573419 474345996 930370749 735900703 845853159 69000610 1003698425 398742539 306161034 121691312 11537494 354828047 669225390 897700110 338398222 354274004 894269970 984325342 264469719 235300807 744489802 767883833 326332386 538385219 565924535 737972148 271591166 388350917 1024933868 5844518 135441523 566332502 485147998 246418537 945128006 84250653 833192105 306211397 135029534 959406898 628897837 885908781 110791455 447601659 664869208 356466607 662482429 788860194 376104464 710852645 662341235 823553447 416337885 621187511 575903364 950650675 633493677 1001222016 15412824 396733945 727579163 770066527 69073106 960743382 941332832 807344890 957495655 761167508 427928131 246054043 11642750 410373197 882733428 157974650 120858489 501255068 888900181 815834695 417768724 1045592241 617846387 38702277 274131018 54422521 823165450 752731600 720566306 1042080665 239293889 98272412 1046501638 410329813 743800803 665418513 516560130 336240114 661882038 122704081 56463619 77864049 4931113 188118424 548784474 163367807 130728953 448240476 285504811 191865494 832512875 756465853 422086786 335470941 58956335 608793868 367896735 446709355 809909938 810154528 74010660 1022433622 855514356 881883463 820639604 463641017 1021979789 310444425 1004328967 538050208 457519528 109539546 824260509 88695986 859464116 1038841245 33126421 364688166 607461176 79722048 296235280 157193412 1069643364 33862677 736289082 1021495415 657383590 95917625 869096598 935881859 601484575 874747795 915138402 567310133 778847076 1067949899 826620129 701055469 726971689 39754698 724656740 216407775 790119175 286894621 807284706 364138811 180684145 510018013 900286763 239868534 989159751 973656299 13127712 291439974 213282423 920052485 352849208 1003801614 1039735257 750580791 1072093375 727936925 806219762 332109272 66957879 751520601 1014585275 164459588 777027988 594124773 850039849 476499588 989702346 345624321 455315251 539951138 308124881 717052084 372029190 904536885 911141415 681048426 500536164 658179065 230367226 942010875 177344013 413184143 414561616 771113651 25831048 732105963 362648702 134398452 330149858 930328125 107291628 243706758 836210917 739616940 823309359 266464198 805627816 812956242 460635859 545655740 152299332 484698122 315226786 752724575 892189412 210006930 713291384 751958321 246353218 887807375 452041127 899635650 426681578 699709686 276836371 581658641 68667951 304896981 920899656 155239083 239118997 92191171 925473613 452102520 754578956 728263541 686356303 1044169827 1005422830 784261340 355343009 283372995 183911300 696207352 117177081 255535976 995026457 17492283 415790879 1050793232 948481582 804967117 1029917431 378060882 663515487 755380048 400549790 267282034 875229843 58458907 193502740 576656821 600489928 963075170 815916293 562549868 1003630352 907011492 31560322 235177842 371988774 207850883 361918582 50723067 370874450 441436390 144402549 734014264 97365818 890379158 776562831 59926997 355310691 302004590 736652826 958941718 1017113010 805923281 175910727 1047148018 647350891 273133958 175143544 454556255 178395237 235495173 860347204 194250747 593820034 515677859 356181737 732830222 1051973350 708482640 565656907 716511716 961525775 959467702 171362363 18856263 926359703 736140574 123378490 368959844 464705364 636137300 1049205515 851425243 61505976 828454046 564012278 807095510 1072430218 983381893 340720502 751620119 194551510 1705752 104616992 160896340 1059961756 986994140 727084640 580761003 743573524 37552921 1060386627 552928008 770381173 513727282 782536678 576358190 3592153 369238468 133178533 523315860 634112090 265222016 1038312490 510763880 894133833 717224866 680703650 339767857 511213295 820123998 842445186 136163959 372793049 955975938 673617173 337444386 186740294 449075044 855983204 233217235 826307018 850474458 19524844 617947183 589808439 986747210 1022824266 773569663 1059703876 997943119 223890369 632891114 879367028 699782876 907799362 281609815 702297498 891664771 293616270 979750840 132351265 129347801 907229116 983693400 720334700 421617210 25286811 425562842 1044247418 685051402 284913011 880338639 654310719 462328347 527686966 516120603 1023725680 730691944 719998569 844850874 896390001 407656732 470810737 907049249 449936777 843061220 277890624 6185658 271632237 390608223 639394774 977383919 223980446 387829556 211670575 1017747993 564276553 74343338 28211075 41706382 38682302 683390731 768130360 993189441 422221026 449901303 712497627 794133771 103148204 197815318 569242091 31703546 1684676 299250271 586997179 987555876 673045974 802120505 63738941 831601604 450241012 929891854 778688461 969591113 220818886 27271184 641575576 485779281 923533193 526573476 265655516 817197274 878019285 951024278 165392636 590258009 1062462207 75299103 161733644 73841612 270510552 369593769 1064408976 580385620 225276712 557653125 470498223 145520395 179612282 881375885 594472681 1068140198 805209801 660647862 409377928 946359970 78637293 343564087 905526476 594575200 825800797 657119502 613013464 1071626241 542803364 547937171 606059766 850039921 530674514 923251120 225566371 673862660 335010278 751723578 186814500 456996990 1038309079 740035446 234946899 239424800 649022289 468965723 99654776 428317676 620300284 1707924 448092738 700257370 983518390 759430514 74740260 31849397 620117157 568495549 163265006 887333167 673760202 423545824 85144028 196690869 925624461 963384039 1009689193 947084198 239425725 194659015 552576163 893372312 406690274 739506071 152141174 224199506 477867818 650850393 433142741 227418207 206334984 229818857 303789813 78762397 808474192 152948933 824567544 627959147 728814822 575612821 1034883221 919078912 247063828 807492920 835539414 34954882 625594224 521446442 327745642 450731261 501802211 138726844 722002752 616977026 9831239 655139190 162346630 90468136 1049818269 659922669 941552927 658763223 573863887 131104584 467318759 346968399 474143639 815317327 582918992 794463945 568883527 34597536 93165267 910638394 1068424705 336064436 975306615 505845200 375321775 916733341 583656585 426109590 912354643 871203286 18185315 433414134 83553343 75117154 368188374 873228363 161873999 978006038 238575307 247602773 766407359 598761401 298098502 87677390 860616852 624034578 821895258 920879279 328241858 71605773 982501054 691931912 19736217 103037997 577037669 820586980 700117878 926702690 614939667 257976778 592655700 350377059 782807648 500512047 282271035 757170294 614893252 1034201679 795324737 548108148 488971258 805872907 587071715 221823809 93692107 305676285 792849887 645986728 917794140 27050988 432266203 607344264 323980398 475932303 545416412 489295596 494887812 476268575 302074247 512945151 1071479049 305229297 301394997 447828300 252356045 1045571431 243779948 284341892 855020209 1013957719 830527663 483384582 561266406 997967675 310393243 674971482 772921831 882216325 786211118 138934469 428760747 910816607 152448167 161474297 55438549 175042539 774445766 817754158 544088974 651335601 561713110 805101249 376542638 937295423 302600907 484962338 888670048 428311291 363021857 386309760 141986035 608964120 635254794 705261330 912985516 312412939 747428753 247685338 486659684 424323731 469253152 1016642863 428843797 451494755 187479560 280982788 327687110 65609628 413710644 97514796 472960766 1067357907 777726947 66938970 880808520 813788845 252574719 105244366 975576198 994312955 369761682 973812673 941173170 1020134601 354785835 672951907 809972794 829321048 921244409 116548560 1018751169 501920038 945680232 532421530 947408777 467037305 122056354 185243534 216304883 1062242660 961686537 171652483 846737312 857177327 1041341793 995021754 860620861 437109762 800175288 62302607 841400505 383645199 82395654 823446925 817419355 592634934 214813347 752228109 392139279 982881085 252813537 530547762 798083705 903224958 938816343 323466784 606793344 751061693 558538144 573771869 953466759 776664133 192964048 193933588 1017890368 731855234 77159996 405845222 878175295 803768315 379036324 835320425 129333349 717800595 237960161 576236144 285757654 963897356 505029642 123080026 161125770 288486228 433566435 836897864 558314839 759045058 831501467 945252919 53885924 36523578 560073030 281914484 603891463 860948179 258626768 579935310 201633073 114843946 962885343 676132130 119188584 975009482 572748749 341217936 35328147 313165527 777484890 1033912116 955597565 868409035 477223590 749399703 920624112 435373740 718191728 552141416 334965476 743016534 654628943 470478637 84078102 154068666 807828094 115423443 19182876 904543018 61689759 931384336 428546389 191805745 519264343 703773161 136260758 125460993 44818872 128503320 70802705 694804346 669387740 811579342 15473089 856680277 1019672488 686140958 123907962 1057310305 15148012 1027245576 183170172 76113826 185085278 227905032 380674988 908947619 187158573 610594636 242525034 346983302 160923738 418868999 100903826 1039312300 681792966 268549853 705443104 324863246 491685544 845553964 889512589 850473337 199872261 271128035 167151560 175751553 593883712 955041610 630576160 136027087 616113988 954666555 442316159 811377398 682689794 153570337 106856081 387228200 433611755 839309269 118915568 23912509 994633611 345650690 493608740 679268411 210953422 140386686 582291900 551649333 1054062659 214480498 609089508 909668531 754324229 626645200 606698829 357471637 729536009 477741073 680809484 1041708335 375861590 494954919 792944536 234919692 257284562 942751587 188709566 770554136 5464270 192840877 159909508 818929164 953047629 748854280 422620354 849340176 743542634 926966616 962013977 168576846 907152626 894874735 1002272146 259635674 267033960 769882304 159596930 940598333 638334566 238377763 258596278 141418939 248603451 304469655 277686218 418291789 398309851 750256324 205485247 632756952 848817840 344721480 956361840 819692001 154682377 466198689 169692013 202024928 512590712 175737777 972524935 1027603826 720424054 663741880 533920815 758664401 863198290 216527605 724977079 66123399 1027755600 266419887 119089361 528485375 397305130 837315809 744688701 327015717 1061704904 357885137 208477596 688152124 188106916 954367467 671309166 543427068 319929901 567486182 715369741 549036952 757330170 811187305 1029988798 37435098 62429948 368642586 689627455 400209982 894911335 802801747 405189756 602975982 901735126 917157608 505888881 203412219 271537352 961406682 337999590 403631151 33321978 1063273687 663760751 423746461 491879139 684071568 327664640 404717047 528859742 310188869 740036164 1040771400 473450722 591415176 212377131 781533237 353056280 808730935 938998617 676454099 521441338 453818146 80639654 488743665 29186723 478705589 5966969 546182861 646656812 729932804 867834961 510234027 197895890 147728800 219832515 262148119 264671129 627017107 222932456 808433814 348088131 203812667 386258195 579765303 184772328 1010521616 3610138 626759561 957564575 754594116 555171980 340182902 817150193 693084906 327405465 483372980 794643744 1003401486 616047969 281624702 926949509 134929074 827180521 617980799 1055047064 1042361944 192301525 404437169 353966206 1005745658 603803479 221455825 19041224 972509619 259598231 271855819 652388533 532688090 435124133 778849524 1029855969 156324972 875737147 697917574 482628550 774542651 330004468 195724748 1026966650 188415105 300621834 537965458 974867903 243691355 901696979 54620965 224329377 160702105 424997788 728504112 194440599 723134713 581879934 617698292 112265529 920635952 880516508 944180555 545634540 532294311 101608623 704542111 798841759 167254465 831201275 1042459811 345547716 840888240 844177280 851468392 447347387 620423941 1041523134 407337253 803420411 971183856 94805790 503310404 929101325 785289111 642732118 1021626776 27491964 727795968 557157918 773436006 588070964 486615156 527349304 290804884 816432746 788122713 113200672 46121885 45614919 172155782 759872695 109373914 689918124 1008821386 64470072 879172516 957099025 228151908 441385673 803578447 372056800 939348983 542525938 316398469 240746620 376525460 721767726 835574916 731713543 1049447543 449969753 967464851 783922731 198239786 868430404 471798659 754193664 719956714 291596026 703225056 135903197 246087613 502790303 649088458 249376735 783202184 118463609 97004313 314821990 470935537 757110541 542064527 160948090 593465741 656956816 179797259 289807470 72961090 1015493226 723218188 968778085 263810414 631996657 340343338 234855324 605956507 858369999 644376539 904863809 855256032 1072086365 914940017 32563022 284973288 418100133 257905606 1015758266 364793176 547426641 1041190600 516742100 347592374 262987092 803859357 109978645 558050887 178481741 226441262 600400884 747582985 758705775 77940761 1016008339 353190460 871531186 7984023 902315340 1033569678 850616728 501097652 9843848 519166248 94491433 442855682 438161081 216330784 1006364395 888631168 280651766 716799748 1054030061 484789450 599964914 458121241 1063533009 196919264 278700463 560081016 819067172 811358381 726130677 890406316 965135465 925865949 963643329 683104460 881040651 1005697939 900750512 357993376 134023376 1034630635 853632784 583146561 369867780 965212485 713084582 207083044 823147965 915980828 789105863 1026248162 585258261 182791619 1028189401 334174009 1028729265 190989803 627715674 907614386 597239662 771205694 774904739 696495255 336041572 221760153 619790462 636785714 881329954 682021071 597637227 1069796691 970248556 1002116165 599948459 286574990 380319596 33631170 248729272 338185789 156938645 180068468 448618272 837316 479561236 446332812 48378726 998176890 827116271 291275290 151060765 776095510 401488153 860572039 910773655 489424288 163149246 1030490055 177197214 149429339 381058777 609176722 431157795 925429272 306797249 571824065 494232284 490064394 685362514 378280593 870223782 217514890 64932177 539538347 290997839 863911921 40920287 156999576 430915800 919565674 300558325 648876250 333568519 365594444 343364377 1068862214 745382464 388891862 261516880 497561411 1005645836 314076177 104442238 420767227 143671744 530391322 304184724 713535446 502086885 543353639 354116352 867444394 1021889989 716652949 365749671 140598072 579549612 373483180 1024083330 78125371 44380048 867845798 857649146 722731322 43411360 54721055 178498942 425603804 157509933 518327752 535988957 479926155 5073434 171284298 1023231394 1072331454 901840625 577972375 572402930 569991840 185212758 709777126 973297938 1029036804 651563988 941444643 207765178 981187818 761623085 620246800 148439571 770344583 50212041 458800406 565779835 638386292 701978968 1019793056 682174338 110999658 656598898 987194071 45882389 250017841 170245553 523863285 795948041 867074876 545173107 679634074 661031609 883955454 489570030 1061748155 703282313 839535231 363849744 191604615 328086138 845166033 688429168 910473156 340995935 542113846 830845086 230512877 545951420 13130898 321997821 1052475961 209516693 180498157 545925294 399503659 646325522 627419693 495858149 898822792 586990646 946063590 183446501 684107372 370184079 263618409 744709187 350123794 279437784 635413764 1030205785 883093771 210122076 419709775 991603943 411508301 417196220 423337627 141897800 597662693 266635586 41647401 834966983 390142219 499541218 541178645 325290512 565973385 273519379 481926887 444180912 1069597250 91405701 316261205 972647511 1026042003 708695062 857711964 386332279 418838964 30687414 628254323 701440918 917047983 627016631 15972740 663015688 503694912 198028394 186050316 495984684 350921624 377961403 61014662 261542882 475652363 678546025 440783480 845327982 969671648 231419565 603121581 86883117 974026405 71593156 391905996 562579624 422517837 240663383 77854851 990650963 866216949 135025102 916411807 799864981 273099725 747053362 793056706 354182171 526670363 557157576 36084043 144112176 926309019 1024834470 12981138 847398769 789297546 215610589 132440669 832246365 143042895 954984975 188579025 433009508 773175526 1040517395 745267927 167492424 337311526 626996486 880213767 922383665 138078859 526805988 332051049 1044424816 660802614 861429614 497987664 686382664 691683056 888286470 953663087 359938314 769839598 590272324 58339106 1065158035 661355928 1065822462 889905082 1051012602 1006833611 1069182890 876939069 748741107 204874359 593792445 997338606 401890251 2650369 117908240 880726969 721463154 9253837 271625924 650744241 282485690 199090112 588948141 748340223 424454354 104279180 996932410 436651497 490736231 307079587 448049973 980790591 184955540 1023983374 830867892 41856691 330688640 436205351 129666259 59918520 655613525 428871455 627585980 364110763 275491118 869500663 656313181 787676510 329019306 811551477 883582080 76028246 155733394 39877453 504524403 316542991 54785430 961119184 183671072 890163640 993121389 33774196 611553526 143157232 582748883 266921325 200726432 487085042 94169192 921000563 876083889 101151636 818189713 414257486 430281743 552503621 957549878 356640722 417471896 82882823 214236859 398540013 800725316 229238991 447950204 344866320 265393078 502709762 411205965 250581309 329866703 466925281 709345199 524692625 832849697 834928778 589426901 1022835370 454181483 202197869 364905418 202439672 594370999 577465672 967546364 578363377 664453875 561727699 554071859 31227115 913803047 139880577 869021092 453799461 304496392 206796829 523570274 503298120 849610675 313604624 368556191 851699307 948182785 964518286 255534917 842869328 667643670 606000630 357233831 858772733 912487834 770440800 709281284 841907427 825124716 375321684 425877988 821186785 767645738 350833375 248749859 869742116 1037036857 140376752 381354554 860863764 396309892 224039739 817226458 609642850 87674790 730283503 789850093 545933994 697274011 538647029 26993412 557868728 331351014 252596943 901506872 847447868 933846278 136419665 1017652152 672493742 544229152 562850292 1028868974 433576514 740899157 1032130415 457427355 709662219 989739838 1007870813 580426980 892512214 606026787 870743473 830285920 91008820 486798440 451201021 12643698 603927941 161097191 956538391 172144778 107384253 225286123 469140472 109091095 934945000 577994422 623341150 116407069 222071636 692374424 457730028 174811463 58286589 570897025 569789745 684268000 387148313 563727650 247198541 1022545976 758730412 946329578 109959083 588564964 949544910 505475450 707874158 867317208 289665278 964150218 768526515 211724196 479343940 430491648 962594563 855511553 275455910 514617416 290163331 80825917 504909688 834541798 329231008 914615880 747742125 110508446 501357640 662337756 718377138 207369467 766314976 413509023 181738569 407051063 41739842 22508899 837642870 534394656 623912484 87692891 525128311 958343744 532332572 62206642 324069862 855515303 763653049 339291281 713527849 685345597 792776748 59129588 986617545 161658238 737866191 57645272 775183484 723930386 1017715386 12527353 320183868 803490909 979126538 28300307 331193909 902410872 27613079 630117156 327178170 328383512 282447645 389743300 432716706 216514887 1005642901 480157153 752735827 376117440 796491881 586007911 606100688 65015959 557587566 505864178 862347486 351414146 1009433771 404364379 1064519886 446230600 200948797 590039999 1039987023 427454389 341925534 291567354 500373294 607608873 640410304 147167258 498860947 860858189 750622211 207175941 438297026 212679587 139047585 572323145 217671822 758649640 436367624 730497736 54487846 857051086 430006324 498504738 488113493 416830199 494949962 378263050 18023598 99520630 672192357 105793357 797998993 209015083 759960275 764145732 564369206 1033900111 774671593 244946969 807151444 398296892 323728332 977623315 604336713 577388311 173068642 165593501 465257312 603858955 1068874313 96541498 29714118 568534106 90463546 765737892 634586549 668908416 715709642 79574550 1023994045 222544934 109633729 698936501 327728102 1041706340 289850904 925307003 478079796 456722819 318709547 272985795 164568568 66950140 703217585 72043351 748064773 373370204 179572690 528569843 493613275 168046064 469573421 285201700 20351131 996352271 218464669 138820084 356202577 710345820 1030175173 355329383 478552684 28526958 141153403 535704000 719331090 127916289 710604258 161983916 535946525 625311871 218371566 1010229881 1022540992 352444206 265433537 224908809 416989220 629112564 475093652 665874616 886542618 490794414 284011742 820002531 882394839 229982763 141089264 603653716 842801103 323604325 54174184 1046053969 756512732 850122942 1044331918 620027674 920280090 1030199450 871895180 134990792 490047698 585017409 199575621 15131105 884136463 471536184 772753556 95648535 721183489 693724726 60388608 197513576 1012822200 801642303 322918084 808994052 474616803 42681027 794544136 497726916 986408880 216022177 353705604 356527339 179184146 653413175 814356883 83007767 179830829 751582442 118364711 400030522 569988660 613059615 2205569 1017823175 742856267 593959376 1003804477 858427496 275611239 609271015 761715818 1050370943 641791015 861384620 254110740 67522407 317231833 467442225 1040153455 341514352 140880748 391998861 875099654 1023874881 751958887 373100525 571087278 984380571 385184603 568512234 145704757 419370877 979678936 908462938 533872040 129398619 208343899 498211880 532697060 926724691 634035610 579583989 197625428 438388596 5063976 245423763 92270148 870656511 788221198 95420578 192321553 850696822 810624359 209663673 55265769 978911445 786701346 392550944 403615094 509085957 952398786 508873453 187041911 636080645 872913235 256488900 846570315 47449404 681648316 579302783 386452302 665087996 694067701 60445481 1066845136 561307590 925163823 905586544 84800820 57464559 523606744 195592581 19811779 679357188 454086831 1034468298 175854263 996719689 60928087 632778963 353064782 239131691 980782765 68994673 257399098 413580144 738400526 688040932 462238110 841362460 754788565 470736619 922538515 1046354375 841289874 542410660 1039308793 1069772939 240021550 898932084 80924822 525714407 352856674 279057328 942994168 837509683 661552288 654710523 137829726 991347079 227723107 625837042 835455536 582331579 818459703 661727502 915206022 958788217 605880899 927151979 976509522 153738676 235685574 380511792 345787740 597892738 523869076 338990944 456417361 768513073 1034347997 581040858 103097517 508284193 832983670 614630855 322641445 781980342 336692543 7477021 136149641 133507485 1021043328 77008102 651078340 821507177 655877232 830823118 552785251 199901203 94533683 464981733 212459958 106155026 942035831 1065937433 47859423 1057902528 429428650 838446050 221479253 219332531 869387045 566475699 157537447 309421830 336713180 169794369 227721496 452727767 102287269 480385980 1018273430 164246176 379069681 1038526601 185808778 550741541 594048368 862285593 242784467 1003546940 563492206 1058486995 75864319 983721867 825140579 151555714 519713932 1040547645 1000170184 916230609 919886118 978755368 860183198 148151442 333696197 327726414 869082843 686178616 256439560 279179331 349646543 279888777 28596544 443438106 695009068 702403801 559411628 44437610 737255074 773208317 803669500 794933056 481687624 616022499 1020605295 651781673 100992272 892067481 692521790 752029135 435141155 1006337531 90933329 1001590241 358270999 912077243 556066103 150938726 774364919 553100848 997637137 675106197 985120536 5540504 1003779623 174189470 1028950765 80368230 973327119 638421250 730481270 664946921 777243370 973582332 596990466 28504693 463497109 1072441734 416524097 905810410 772947401 277499044 453950829 336288610 515840906 364749049 645464262 622117064 789054421 34234586 1054407263 290100397 774268968 635524355 584417156 134774210 969712411 290195005 19086670 58665548 922429066 915448658 112593220 949512713 24763941 786260493 743081769 728628424 813298763 464864729 796572761 771979653 377569717 376087378 733429934 231755272 1070536639 675014788 733007700 330858634 51981557 1025480544 582345426 505012391 485756512 910818780 857537228 772123612 55820441 94404917 647457097 351175051 306698147 603383892 792788181 924415084 149339529 597787174 137790335 139884132 161042484 545167478 434308978 948980978 296777094 974025552 893620967 664578062 648732525 763667060 221503053 301222342 914301173 552577259 1023144447 4061993 467657464 135897425 503407500 860126404 616627354 94374348 941768688 194085084 900656214 397114285 1393900 388232507 782982101 768257220 473818042 157508548 739977782 165084686 172034703 1064341966 360951808 554125495 1050068044 426932145 103219032 639240240 949839864 836487931 786532122 1023779430 120474416 273891332 805169596 971883474 269512594 21681178 861275262 53904627 132071439 923569309 902184736 256141159 394130697 582940981 858145168 538581519 121746670 247609525 2349671 49496760 334122214 983558776 260528369 640759684 120736520 592458311 600474882 832976068 184561050 881998154 918023585 613755864 281838961 689407446 184036349 853236058 269166045 452705284 889531297 924867915 882952943 938972876 324893290 543665845 1425385 928718580 1052932670 536758643 599777754 772841333 784875008 171874539 852365948 93200725 302128256 971659482 682526260 701188810 294744755 800685293 194038050 757709687 266244868 215806807 609796644 435878588 796659232 456025628 37746066 171667122 805109265 890137713 647056763 666826630 251956515 293144251 243025340 699469436 708045729 960781217 933848565 200363689 128940668 920618417 854503288 763452392 33666385 274586189 175359050 917816291 485130361 759476579 329376794 121327956 305264368 832657204 386106494 132939346 13032543 617954423 102500375 628261732 424879239 614491933 242084368 326573380 277121232 361319504 479019364 331903145 614649772 263508383 610907804 151973635 332055050 901408642 72122650 974108729 706785891 1046989819 582983644 974386043 162199187 761670351 710903230 1058873122 822861159 449404757 164564269 614652590 20671161 342871161 172456485 838351712 598903332 525162358 208972875 501787579 321521667 435917487 372694790 853608732 872630689 17004178 511440272 128343217 179559762 838295126 957778271 751239252 295659517 837478944 436139939 637833271 112391705 336108019 977994478 1058712798 61237418 912913527 789849637 459481633 332417256 774986020 808591246 618612975 258576358 45824805 299884078 785682983 848499906 487085118 849067660 956870891 950618206 61648565 846675884 450894388 325236710 330323041 872230314 1049670858 825922115 703916 25039738 472794513 913941776 813538157 365538442 298042719 492527027 721155775 74287879 1071062986 149959700 869581240 836141412 442711805 779987714 736982204 194967093 931898330 267463394 358789623 128423116 321609973 272874826 840153541 209603167 540520327 827216834 762803816 463057539 37913969 128455760 738390787 567441740 347280462 702750127 829482083 84057694 839049288 942668152 65300905 735281410 522101051 391958044 425453420 962056154 68973277 146889110 999859149 562270042 3692052 801592625 251117250 299640173 218978935 815678980 843489871 298086905 712519944 31276363 639497562 38344553 772567310 209916809 11476507 769920163 903747791 747884059 684555444 903810842 883288425 781443660 520874207 509594485 943327988 308751682 80274847 323206341 749753499 914484047 272369646 143672165 775911412 884061619 132644277 718105356 871622557 753603493 836313291 549866560 308660015 351871299 460221956 377734670 849727405 309007070 513719601 711574255 864558948 709693513 555897686 348084108 383243981 83303405 429834721 222063691 971510919 679494667 247009500 493119289 799986300 805064356 410299236 992254316 542475195 123197193 816688153 563142368 383928309 656631276 990474153 412083334 342833744 170445431 154427337 944624021 765685616 86105615 59664029 564827196 214090585 89186629 292967776 251742288 861404299 651919739 647247710 652611352 393262443 729605237 585011539 620962372 387238047 451621088 782379675 473462673 925172832 681522397 999063595 28340880 153428435 910598809 578211072 455206980 671487267 232099834 617418704 685719669 868165699 295110386 918098600 48691390 623154100 668766570 576237215 211285299 33483393 321573074 680363837 269269062 956130950 566428861 700513193 506091434 303792085 1068999877 435309511 272281752 551121550 947666791 656649570 196171543 883515698 441352505 349683052 64191950 875195057 1019996662 101228385 616420810 385778056 233790355 614160429 133102284 33405076 405717544 926277971 715267911 396539757 695102594 963111877 82571551 181199533 705987479 554784326 211354880 4208209 121258611 110936632 218834366 356138300 729605861 633919027 888598966 79858388 131169201 15380237 87075522 511319759 458298672 1002681276 445501903 1002895322 991875674 490200515 1013880742 64614210 530302512 212948689 730256686 778146537 107450525 368524074 83866438 154150615 299297509 824295387 298896804 1071920599 589453478 1016995970 891707842 802466820 546665849 845492865 86070147 1065938817 70483756 436115524 474420957 599833286 863480072 264956371 626022646 146709347 704480865 1057683068 209105990 344550509 937434097 747748283 621621713 79333407 777125645 145765509 565415517 105393422 114614630 181740197 244911736 538354469 353131287 924725535 764073697 802736939 18524915 81983093 500965932 333314425 639037244 1068249541 1000913454 934502384 1024521405 1011778612 682632969 656298765 542894265 1032337234 314371847 541637127 847886289 582998602 840985598 972522800 614488705 615523715 945493281 911382787 683578781 782172493 854376634 887884357 409712538 771458565 786551183 370435503 382187988 1008431287 583197181 684905252 486719040 937529800 973081829 924590716 1009056571 988733296 713929297 518586076 234331681 900104025 288394896 794410037 860605222 555490330 795379198 409607741 1029910250 655089184 466720674 412452473 656342877 613488280 56989982 398885820 186567092 754008297 16913317 164199737 438602089 365824074 727405484 245590365 336821880 585039495 705407650 887396525 552046879 281043999 782340883 687769158 480231572 821080443 163854144 553401008 1044797126 122437331 804802466 909191570 943659181 864008800 514473455 639377424 701960228 301373535 198786897 483324849 18174197 773477859 651165714 91903296 534205827 359523418 142060996 640946284 478802427 680221361 138080054 70907384 342829953 59987725 629117235 1059767633 849207400 754063178 804284728 441213373 684053089 261928016 153759330 333270930 123602123 308325943 343176409 1035134589 188309734 592366449 439671391 633939818 948540754 181644653 918716725 21043531 261840791 191950328 936305300 661932402 766274441 5474221 575674383 579614302 25379248 471386938 632745726 249404822 844338997 313185955 775763446 25915236 830815001 785987 31069332 978700443 970375538 157832653 511311767 570822530 786248500 549993304 459395245 413222330 271192577 924401926 1070311271 408151729 668780467 65745147 390586567 715530450 208358296 634319751 873256381 48539359 175376686 101902211 578382315 520595282 663094480 305032475 360863398 1043797608 483715824 476805884 838767926 824786994 56320813 338885166 257642069 479174768 831328822 1016700529 99710362 758528263 513168496 488143572 508748947 251461913 157913019 146466616 165586097 775130598 345997427 194313709 527557654 278973371 232402107 543826747 360190311 466769171 263158953 908584600 692610964 365228353 632116705 64748363 71933086 310236723 356454838 631736321 851144421 356651618 869328479 918904727 584986880 155446947 164199536 354350260 44633574 960152403 270418750 961600086 975786265 958378187 531533974 561590734 88775341 712356283 918662103 432932681 870967288 386899917 285981676 197930891 455602535 157760935 588160435 890897807 770034198 684128246 724573059 704486982 810056741 54273021 106503528 371288652 719833352 687072868 813073048 406240359 554171192 831249265 618309654 379635348 395035541 526067935 376026583 291231670 668456979 950875982 330360591 598474517 80735620 838090756 1022960815 235998707 101792382 113144729 80293577 371324167 954455446 820847037 122361316 345383056 963022236 729470512 387413057 139956487 432221715 123405323 394979455 854947793 140368007 627961348 151608412 153413930 338515504 869149393 573962295 407419573 375419612 309256846 435353999 283041855 287764528 317567899 1051297415 453091762 212896085 19492511 376254180 300523118 751286908 783044030 639954098 272251509 130408449 270101099 1070256648 361888396 818119735 418633442 1025409850 53389264 562055275 973741562 766660385 135096297 228557045 80623396 623790028 449469177 88595612 239411476 78415774 832923792 648265408 160501938 563085352 346465801 404917322 728534597 915298825 853226871 364574580 623710787 116882965 377844833 395951783 854532730 195808115 592950475 862901775 1046486196 244277380 560455947 125533657 724284303 219411220 30690876 850021172 1059663801 1030051373 981227172 773098613 478215910 101628908 1067390372 977993839 12771038 380088294 78806404 296534902 832965719 141347125 312626257 12478244 882569427 544765071 678503022 1050974306 892543443 167945965 6653440 816768202 793198495 557123398 228254639 259182847 96189596 801406062 399020218 1005226523 772415357 436409865 987085672 239660423 113509332 368508022 597788291 997590902 577559193 655953494 737663831 218959613 258292120 426044950 179326935 667895038 370216192 314854506 313743459 77256085 701957458 560376615 714534873 1036017205 915462613 593848276 917772756 266389516 625019448 204803212 221557292 207086515 609511968 922931240 309109070 373514949 363086480 333461396 1025411205 206887759 98368463 826209998 757360544 543013805 176100224 336133719 882797068 379573367 149711068 182460475 438496620 229817659 725036584 299623985 850721139 1017475241 433390478 682065988 974358137 716545007 3108212 824073995 579441037 583812960 737236109 3946190 625810720 302224752 232946000 964373063 402177569 953654456 549990346 39973948 251685488 341760510 371473163 96139295 194649898 628109718 659434369 604824335 993266386 757838680 857681542 550848188 722410535 657956563 1001923779 122830669 141977541 738928732 457394543 968306363 942811599 60371178 155335782 150734862 28708106 765709368 507953147 789417457 971652716 14859426 806349533 748246354 948475306 302871356 73540548 162779503 680435639 525571933 470087022 826134878 132032015 961894688 924095684 439121967 46773846 316817664 640467302 6200742 7137369 213030127 878044086 666100676 485204865 58783922 925384696 325112694 765831794 281355629 949300153 51679982 149642590 313494359 179984315 306738501 1003662806 654804397 487033072 1009940539 643856220 345253566 541399033 586682614 699272123 210519497 241136060 160738095 737172542 697002836 309552898 920391818 840250457 136227214 466769322 329820108 211688075 973303944 1030249321 946234207 782053719 332613068 894438250 925205441 485696912 582871418 367682913 191446510 293618228 516691292 358118695 162666140 252723409 970042234 1072247858 639216316 17507487 580010836 668102334 889827620 846514026 315222516 951458760 832185181 324479053 555521219 1046843717 927460447 227265522 718722650 172309315 65012954 519262030 844008863 568631877 344213635 449509786 265326951 508724956 766524143 765562098 862693598 563478262 926653720 805224407 749852177 583008764 340933090 844820603 157865686 681509998 141596478 138720523 466451930 457927552 816057533 597332136 252366955 780649982 105417510 167397652 123253980 998559074 694532983 665351969 34011250 638006577 165882781 723681376 355455662 1031846195 253194416 717696443 195555285 652582403 637368323 749685352 892388090 926723566 922080497 160954696 1062152537 548989817 733600498 583369680 810335345 569118738 988221103 394044254 559892604 485528746 611833892 373726652 639179784 790868 230289208 730095598 1032612717 953345367 795588970 746932756 1055664543 440134946 592386028 92013628 816001511 1057720131 640491242 69494839 800488042 489005212 798009063 641728530 1020479804 637949227 455333801 30438986 246696651 283167363 178733679 653220151 866058941 801111896 974240 174874059 16178499 663499556 677830855 975464867 377321874 554550255 489416373 1023804210 299309897 737108585 44185247 514636022 442778772 277819223 545071427 771450154 583246698 573889362 842142474 75885003 186216286 955503857 162826359 449262734 517881258 54760626 381544954 22137218 987496124 338051675 738785642 1003744726 947331583 525848864 139183260 757465717 555913895 344020569 506809563 257823540 357549944 108977815 1049312404 786712498 821153789 580818874 38153209 71141982 141587568 376180422 100566400 183036591 512421844 342309911 86516340 67207491 967261301 1020124320 114841899 376577284 513767421 670798117 8746728 555120352 964913475 750260698 65944183 808572332 1011680729 969873339 386904139 892165710 175980063 662358605 1065987176 981435969 513710207 914256722 756768454 576137770 1071704958 688234581 726830334 914122777 376645416 375018612 369978701 651953558 1066365608 162683876 946079437 311504126 1053470685 447734600 1009389702 901362838 481872181 928249171 255458521 650494413 1013944569 1023587863 416825905 73037428 351654840 464669105 431594162 580027705 430366560 944192069 346659614 114615537 203405355 598099226 975523972 738932769 219090906 495622291 956982686 399007418 340396851 1013124340 199883205 67722423 954519150 835652826 937791106 869500580 336254608 302743523 295973720 997014661 243152276 948217147 616376676 588699640 30596143 831176042 171913756 885010240 105151960 134129404 547360075 976185580 511090699 758298978 939112720 20988874 976661592 1022818157 454613657 902733187 426504336 794706982 491418866 624055718 1034871155 359967116 667986740 627632759 60204284 481207489 642879610 770580566 1015854715 37553796 580954930 908633314 2581458 360638153 526232038 532170157 1000041513 349213581 691974710 308382237 937835335 267393820 855253095 814591048 904131034 15913731 1015746528 712420548 231646739 828213404 345142155 1019137946 583003515 250454087 205784774 713357677 685722432 683575489 175236015 592026997 595758110 1018138464 446397787 300069004 559221546 548486302 537492336 341640431 992952284 1059435812 401740643 993587224 429860416 561419354 20385971 784823975 716595354 1048052508 38260942 631636232 424796096 827690172 796995477 813321877 900366330 170194608 701555199 219638760 175348874 781689967 201457288 623004804 855359052 1023912207 1023092157 733958081 323415937 382195136 712583243 886930243 739750442 65345233 873996202 313008474 1030537022 382196400 471436051 363465762 106926448 474893950 156668555 932163925 2591060 1060700016 907185504 544121194 987427054 31368957 850884611 826636189 3647749 919156341 524955037 351784503 751352193 15942461 147351274 443685136 55158004 411522089 1014465027 988566423 808666296 182891931 115404118 796881045 432124500 844548590 675086457 631554691 567499547 242545690 869924237 197809746 80337173 988230321 84387312 252767465 876177040 582225063 618124573 953121830 65904564 1004124345 414919977 946955519 801201716 687370108 771948125 428473586 957704281 604882008 758429921 99104747 478169425 759935394 459572737 350107152 961104308 442821299 873508996 211930372 906704695 223739466 214222516 167282102 218146549 151034267 319241396 437201524 151626119 80484882 695971146 633251207 223593773 591239193 388286794 516577308 432482281 700057949 617729044 623595498 420465521 521143846 1068192412 407995442 895320275 683696723 357617773 964281719 1002347254 308260293 21323915 904393069 739876519 597975057 1008131089 317212310 389908077 471231281 639217691 418804913 997766400 595667418 941566799 138422145 1023574715 910687431 523929035 826145252 891891944 823330952 352541344 314095109 852847797 914379069 417689658 91019448 515288369 178746810 511321374 267090850 681878658 814708132 422602625 828979284 146558365 419024132 335516836 709830425 988548487 1070240751 492630915 553671685 702579286 353774461 828136506 598798190 513230695 471826868 430961878 1021452618 257136206 1014385618 553434031 452425079 174728526 654133521 478005291 318524055 937161453 296152476 593508414 769290050 587536466 33321734 995712538 448270746 98718670 411694759 485347485 423620811 532830483 595398173 434409672 425301794 751114411 452808904 577822175 75243484 381954932 1009775818 298433217 183802851 230277344 599421339 1062570016 594329738 227649579 106913316 98853907 480053991 692934238 1031670804 358532910 179871887 974464595 1030038988 797923204 181117039 730867076 541939668 1003393932 774584816 469788637 128259806 251841653 327592394 699073789 84930965 1027211085 712112696 597992421 1059044342 464213705 164029101 104704661 38161259 314900045 1006803262 244019112 911071466 284239123 847937841 522051735 999316245 202039675 834264424 192119277 44175249 695288867 777469054 871609153 405733755 189021451 573030544 338941689 515898074 610638188 40673698 723913869 1050571176 738657314 387460115 340085517 155934920 1057120452 80538668 974238564 612265413 121146567 1040976059 1058109994 161274371 881880212 512739651 535423837 800432898 345612990 67862976 916378828 247149985 713328097 1020651759 81181955 1059632618 904735157 12780455 130646072 970920180 385749575 755498003 508256226 1071037756 256575509 478065942 853151592 176714853 748831057 461121624 901257860 689630818 911289022 496809248 664519284 704566029 709727517 448407520 675244648 908873152 1014899876 137593896 73872128 1063161102 210269502 568265783 810600290 966432039 210093531 46511885 257467517 351759723 1012712738 201165066 725003839 488249098 139493111 195559633 824114594 271605025 202471320 1012047883 685821866 675641697 499158339 419474766 850808949 235062250 788863574 273913808 513131386 650338782 689291940 932827383 874827003 1064762369 884286225 575386754 286930780 356801867 950648840 255173886 48164630 882553560 373775912 406620481 61723712 85320196 908169189 818500903 379109774 419747007 439229916 594123892 100772191 925144464 796124039 734560819 712724502 729010231 575657082 1020753954 619602959 34024764 501273053 312005295 987224367 362532093 23063722 956853420 417802013 757546972 14733820 849205543 123059209 51630144 826243892 587283257 471786104 695423002 685936784 259062369 253419046 544884386 762516829 897477785 482520550 57915331 623666804 331656408 287893912 212599256 742773661 281333642 126088789 12000474 346621432 879263484 861592690 827141032 997142072 452125561 954658548 903612278 946948929 152328285 55033215 507446898 891389552 488001202 161411421 188015232 574471153 366501169 567337100 418143675 412024485 923048920 200394523 296974802 720713982 1017703304 170369533 157691606 297846936 298081547 150675286 363953744 255296206 237393989 64602325 823961193 386095405 529286208 857517260 492071833 236784649 626593123 830914050 650805334 347647571 938058213 959343856 829901948 320423239 809937536 125709303 723131032 538915979 813876743 739302864 792249714 1012368074 745911865 887332377 1057647458 160983878 1004455136 857978606 572175839 366245572 423323533 1068515093 361204780 801848868 260153220 782395191 907582269 827480909 448057890 310598459 611216660 330110893 847906459 803019396 44577295 831847283 901609576 872470135 151309415 114880210 494755081 1068260736 1042139076 70165060 637117753 486979597 42704065 198741971 572818274 419134683 500621875 118681754 188133989 657790001 577279433 184578348 225603748 317113919 582872220 744471086 1066113494 513822022 258149130 79497990 489597029 706976513 572694568 1038184154 267584810 323863731 191467561 873993116 707671099 847516828 911806579 569994255 432266986 196410399 869538080 828680438 1051266065 894637602 777227239 518223870 456883762 185129531 394197404 611284034 493162855 755216230 1022053937 355183076 922356727 734148183 722606119 424722866 846645074 1016138193 30840961 76291559 219515934 790937986 833375421 966697889 483364798 116471945 426525592 756807729 431858312 917671252 202687876 341023343 36591629 649412285 523512408 646979734 374415445 973164665 447210717 398132745 114199277 629884601 972555005 939521867 888581368 415279809 151396969 234575116 316311856 428750001 559525073 36274646 710756963 38013666 852674277 339598943 508509690 532839393 55211686 700062636 326570944 202243629 530508537 129672245 997869262 1032021559 27096647 367956154 445421164 827461324 1005479079 228762496 466516324 492675531 562400786 726411127 50624266 451781719 84215934 752794889 862884238 939730416 952218948 940649172 779602675 975786911 423884517 859681723 904125841 103922691 491150173 110545249 1059633540 52899266 1035970330 804995282 1026906055 176831549 773153964 613039503 861909353 689197911 712379369 541702000 634492057 380856896 869824788 238047230 386462197 720388503 744879916 1013807881 854533826 784665432 349436200 466635211 512753147 701771946 676737585 337595332 785805950 139603538 410342534 332772549 855857865 694026390 930257839 20964357 554024795 221511334 1033532121 147751165 825045749 555497416 346863421 227328584 137144915 709114941 946828954 551602045 690521120 621102777 715141627 732963711 968889705 311123703 137088016 168460568 616149175 45251696 813539543 473456234 99331287 581852980 643011557 359392573 845711983 92623833 967185822 135138241 605377961 185888368 218861142 503399599 59069266 683164242 1053829350 15792572 890734174 204841201 132585857 954080873 614683065 220996925 868188432 243793973 783176202 174663661 186432175 234017190 546692839 972703966 691448715 182576875 565542498 280397494 295291008 619807406 252528162 949921947 172725749 359623191 808303605 866473306 930032438 83639266 727300125 139120493 258004103 703325031 103643097 70080945 104162707 625519800 620287059 75234780 706150455 754655339 309952898 356608483 109892148 479949454 738026088 917597589 410533043 1061949261 834227902 909884689 946273321 118855011 114533642 375840260 758972898 627534757 562348350 188185815 1057414808 397454781 121244181 994927403 354415939 406205190 839404186 312631741 350506896 255751094 1065676437 858662094 858926705 505560416 811655889 404316956 755277989 929862010 541355699 3119134 336294480 781181117 71407088 221782037 888196069 365159546 500740349 867057766 428642894 607835787 623496885 375345690 507844350 928949904 359303707 307310088 150215985 875996117 11233100 108554143 454698379 744117999 459392985 875190172 687378976 533725973 63018444 861270037 976071896 151211454 772339033 835893885 947372373 518861959 868131527 617121539 360923553 594495696 456887758 255223512 688087512 781399105 856427378 482186362 298020376 64133093 749644878 556817404 753569250 915787477 66936960 697433216 942782574 770423271 100442372 155521769 888012826 42920344 120566563 129555252 329971930 703855403 103243328 384624373 468328491 773601685 192947479 681013569 649572150 951376377 478748897 751636932 619342660 823766765 965121043 783594481 541979502 234793607 110370030 653848783 393225330 329524059 787611907 105626427 559568234 927508802 484385180 740507492 167667896 507506961 73912568 522554692 464462023 624115684 645263870 536727389 134266898 734086223 464116217 459219307 1017626679 1051186222 63434079 181138387 169357308 345458144 195653467 992109788 275820423 639039237 690430687 349223572 612513148 580913113 474284812 407738456 690407318 517332755 139302216 857211221 102698872 400558496 214105067 392147379 962957156 326487941 112094475 255432083 186491791 721955796 714725411 574262324 1044764562 936373445 660304334 972610318 299399677 729934764 1021122757 563242453 709730976 82262931 502856996 1006083256 717180862 125925682 1047191043 199909018 70980681 752219407 78331517 1071802137 973822507 462596224 260387206 293207012 280482871 185342272 32608021 896589658 332308309 580761879 383274751 297714955 63936989 752342182 411691102 670919682 992355633 754688823 701636563 474317632 271904786 862418010 386629059 964579172 780958018 1073402040 6903502 558037687 747935235 639851535 457544565 760094024 451711896 888441010 629557436 675699430 571449286 407183861 19601456 745130753 659713106 554125244 864226870 951968717 458593304 96556137 461765788 816696246 205452341 74215682 137334001 312291306 861566044 864342326 786882773 162473293 111442179 908185364 811918030 1015683080 312581086 232673647 362499895 831685802 367511812 1016294905 460972051 432080929 503865882 670675729 154662872 474807080 269995256 566609060 666697018 467948483 1021927588 1040152943 970592657 716820583 310937701 131658177 383018215 684941176 841159769 687932227 541709325 506574509 759304725 847948336 716969226 92405729 211200064 21662770 102106445 1039338602 599541522 381513491 200905616 606618159 1050058509 534237048 264478274 751690973 394622812 24062032 354062409 903415678 597900104 408026738 912023105 1071802853 334557737 861668142 769626607 253214313 239832986 572619338 368311381 609631215 910891682 810298922 323228048 540163851 984712349 938140294 598061751 812126781 345128639 349216738 66094320 992033095 252878700 6224203 164203931 129423032 406784638 308039597 177142712 629079962 515977541 997320273 658837158 452720071 1000037372 158812563 687805079 590118791 309507045 601427388 1046028526 1041359846 538561002 955957030 445972926 514210571 833270375 18489353 573656759 1004364171 831689796 890473380 382952907 536514695 865273842 718655143 259903342 875315587 760853013 1004153271 418758576 998358205 253582806 414385514 427801916 560614241 1001440728 812505003 496951197 624822597 794998198 517956759 412867817 584928575 504045440 776739598 59526198 453606317 917206350 255292897 655797850 325015369 402968917 937624886 560097769 178952836 555982573 746168721 958278653 722889811 799302247 32521842 953978203 122086274 173520255 407138284 308624980 829834295 145250618 1055632181 925806461 147379899 533900091 710211182 358521030 881045514 268283960 415067917 867882469 276392959 497652192 666710555 327463880 918703981 546629432 1010008006 933724385 137312153 391118806 533436107 223594178 1054016701 350615158 228100144 106037393 750481997 255551257 785804538 127573889 343521395 693380901 772887391 582892408 669414267 789266891 747237898 7420728 590465432 22492933 339478378 560227834 89914452 118682217 438380045 243683928 281921399 1061666553 581324076 765068021 8113831 155804198 230913375 224273084 829028101 74484505 737921051 684412630 762847465 1070413924 634716689 920395583 627537138 46241762 179063367 49431160 414149154 503947285 115225111 1052530 130271282 816752756 896687142 754166576 214097312 976018630 987409583 379196009 397418087 1061989428 587306955 687447641 833485590 726823561 977859416 966359577 93401984 1024128969 811272984 878290243 775543818 308338575 344452387 195501445 349262855 319050684 846853617 898573104 149435141 337541960 937650783 255017000 54941768 34324041 745902180 1065364310 441831348 786747481 428071410 109718470 976104596 982341927 884953808 320744076 151504154 979157103 700888994 792829230 296782174 733116562 762445370 764788845 44650726 537585490 485207390 305785187 888440279 283853397 495772299 609926415 166725047 547232339 782299692 1027835313 208902694 393084984 107176806 1050686017 654740638 6753146 777486240 620500570 1060379317 896071537 609216208 676458694 1041122727 665957391 604397584 109254634 744275654 1020340719 198455922 754233724 224857706 670695764 261610121 608254795 646577806 469087945 567685564 555644422 242761657 821523820 350777932 461263085 176391407 771606245 718123085 937883718 271524333 298838346 484351542 1055790149 341863310 1071594329 670100113 569499992 407216345 1045226372 608898260 203051555 845381639 657867885 563529497 672464995 962056280 225850147 242373177 212058668 268289137 46346767 750181614 709856867 278825255 1017261013 86024947 429630732 421989558 262421474 143564971 498517448 591991521 652584335 644958859 70756364 885430884 798839133 635693592 998356471 17261121 39927578 1026713080 586588508 646174360 946149208 192019773 373109814 92285075 523663654 605667260 777195446 260486498 209835861 230618172 820333368 586025586 450359180 418160884 1073076330 453544265 916715068 865248317 310694902 245348378 1057924498 854853865 1051312853 675076739 339275238 171279979 595948305 18993561 611617997 958943439 124414438 767098969 750466944 967875492 985304847 155786793 178655937 160603017 372582796 465586539 86252592 979878024 779815534 825355726 923360025 654999908 596048649 635804043 898659249 985526251 976554004 451705221 786955129 1067908047 540962153 366478047 343438939 474912567 609509301 114923035 949170720 206280049 585836847 267841295 93539173 1048574373 691863314 338972142 541899370 1001920392 232617465 358845618 850484728 979512572 388341266 363568993 576747659 434038158 520687565 226546035 874173786 456121529 558451400 480029754 349681194 651095103 863457493 822089875 51702910 912337069 1038677337 924482679 507505198 234545289 684240357 140532347 899250278 863148028 208559037 575096409 269817141 222537080 944068601 12476602 789785705 263430838 262777268 609540386 302687572 112174894 352461738 62370234 586281522 904167430 649822455 649634408 441082625 421030241 351837220 302412158 1046232674 48495589 878668854 42628568 886564180 722890875 106554933 1041377225 405002592 951147229 772172997 521557029 718165247 479813737 575417499 341701414 563863117 955669328 676433096 378185401 623904930 943726200 982718556 380304103 1066245752 198465167 869237031 693659434 821212947 650329308 981934878 742197489 962298705 978001469 206132018 419065752 356128237 751394987 328372512 419410674 657147457 348203894 772451078 781246898 1018570683 112242192 797749515 588098852 744997465 256777125 795132549 809384917 192787928 989379549 1038144115 104222506 598043156 1050112405 947045390 457742955 102321875 463649801 863592320 365453724 560296670 300809518 900536677 1053535093 963643142 134282571 322455334 206897626 176664334 196771877 227062269 750294365 596164275 126437759 942978048 521937663 139105717 738293557 52805258 639180902 277080848 524184473 70293869 377283985 230656366 1025858535 125210578 770505975 555908107 206940558 443609361 389161478 123919515 463868185 245891030 611215102 896528216 679063595 559282634 584461157 935945383 1037144271 789673199 408180967 592765397 625020489 884466083 1025345039 70730562 100889132 821741494 243677284 1015804579 963564375 913877274 50343752 91283213 477220080 307337388 228401079 120866264 912652464 987587830 1485467 105675659 971204376 818571066 534632778 557009475 168007654 19122986 725699591 1051509266 684078420 594969215 496003409 581488396 323225978 258293973 328030343 407042547 949223265 823518660 110744945 676280135 917128834 778162807 425465552 530267210 459526698 367543399 362462734 122478495 155572811 622086495 576787001 465160115 179942963 166900835 504254892 879731900 258212180 1018366065 825716139 679722584 776673767 714002785 162253993 793859724 420484655 228478767 407454949 1045748191 621325435 12215574 393472926 310282701 525052802 59444060 716377217 349228522 190117487 552525100 183121524 681981288 1044450467 2119499 435283499 926431694 884873835 240730097 668148043 708513482 248558081 75891359 429986099 482068167 55378086 150241437 434729522 726893608 13048456 920352879 367080103 244219360 755637148 166015611 563320543 680801667 359772822 1013473735 642478620 279510112 69803309 928443330 421742494 1043414501 710335799 440565752 68665387 593645848 410838067 16394293 428063353 521757710 768644795 159868008 1017388190 89206102 1012116858 1018610755 664617689 99688186 871887798 618301242 901715731 9161071 582009851 1006475328 1006754176 94062416 27447790 530481336 655716760 417846705 455178980 182453961 429390998 880653476 792032954 273841111 862104127 292466061 110338820 71824824 97077314 884354082 72520305 863056108 587753730 860607751 888411793 535715569 389801767 703521113 605798511 368624039 6693719 667955471 369899137 168170755 50083503 253431223 288215498 574523678 267682589 910088585 149360020 237756532 712516006 18210969 552106332 655119917 101707598 637411993 830111289 187282274 284259244 161864449 545383412 680365859 913509445 391792140 412443448 559583323 19131538 995260823 87695909 46112160 657133397 294317738 18317036 62146174 997544010 506136625 37441846 257977820 379242593 200426307 302961936 799084311 454991519 373666264 704912077 914391736 598575954 225355423 808466186 216558819 853786287 1040508661 940109535 347236913 265875069 447638780 412384345 502280063 280483806 799651857 770570142 121035471 36884042 92366299 397320668 53171660 820057663 788591993 789678841 727258092 401703293 705239758 247731319 88079948 751797209 335600238 971577638 213443419 102231915 205046081 961947924 825798646 707227146 284887548 661130555 646849503 51333027 804431911 756475507 400645429 785085533 46377113 20861514 903785703 11095871 437777305 908254679 15366272 610309509 735811414 843579468 124067854 565447452 181684538 387164211 834964342 498688379 1009504955 612475369 687363471 67447731 33129169 155120750 988919440 715728816 187576711 661688065 716912301 998417010 173270711 714336240 242470570 345588910 962167448 378425939 657529168 146112741 10720686 356020513 925790913 437264802 1032167665 38849681 1044884298 110223291 96620211 205558376 112376967 480978028 631590051 765759146 886020842 1016875025 571905584 790017464 247123774 916150478 736271676 821415976 174265848 752246256 1033203149 817906442 518191182 54828233 850918306 634869015 694905486 502580150 698105679 876539133 497786023 1012206245 1049718674 165142048 202873606 117933608 289465001 1054806344 619884667 822737533 313135737 464299937 1002848177 607710813 1040606197 506490086 880450371 332643788 134825621 619213690 168188845 768835649 818402209 782282060 647062706 922184753 831302397 710562599 303237251 12481468 114270556 947290337 771925482 812059485 666217499 954988919 178300997 604922341 672279308 1056858497 681139773 27120848 648210804 1020324551 338256508 142479609 519781386 364794246 598220255 1066344057 867643888 837466998 899096170 900231712 276515887 231972710 66330692 605684696 264143338 78264722 738755187 452773616 889016452 576725496 1070131438 780786122 164921661 779808238 531016967 494917102 93455879 1071798517 516373146 120666319 37662477 666738018 924862595 311010934 740021641 251148160 831374584 972267334 346161016 380017322 15730555 668835909 73851121 22925006 455794943 3394222 788033977 201643937 874283659 200940521 112067825 635193538 929843854 487895925 1002477131 708018803 494016800 12871615 426834546 328426096 75622888 404529406 410959898 308665878 922385531 484174739 414236794 885056434 773550318 101395513 348945238 452491249 94147163 321059540 145296229 286905141 1032761141 3375675 671348285 876088990 95481433 759713899 759448564 778143416 994194930 362810243 910313364 823495881 795638661 994809131 678103912 736086865 420873111 258763177 215023937 498941289 960778366 379285362 948801901 735770910 984803127 82133629 802917147 230647696 895889857 216301735 51868957 173013744 138073984 415712839 257466150 495516571 413083585 54366427 855405586 648667177 212220068 661537367 341675169 554828583 901714129 528274861 1008586329 51186807 362989071 456602776 873920998 965331651 183048629 716408763 600151015 165866164 1063779698 327664517 343348300 770980388 811181303 406539013 248146370 439573777 969186146 71078821 873207476 442266718 131935696 703906569 905282865 41620880 747067430 539898365 354732873 351422871 731144885 708759723 795987075 1043922053 174561284 22349506 785906186 109882540 1065414316 277113006 483848960 524731494 190064508 913470908 354114653 745528007 598210935 221505383 172485273 728223315 793676234 484967959 89471659 934290357 1058112819 656182361 920545168 1058260784 1030556417 383479983 47618779 767673167 423854806 291763385 687528024 992724907 994411633 367462329 477415692 700740706 839746653 836375367 356957488 200588625 940218878 449277990 824154302 323961609 232956161 131869534 538227759 849196162 559516527 276386822 924898174 73945763 297944251 675554814 284166405 1010993680 929234248 152192340 1039128848 257171035 633315694 903167236 1467501 83673263 518845460 680481073 1013547530 140326184 61093280 37642976 193272952 173236883 557094491 490584609 133987853 1050152675 13527710 47724747 273082168 514747809 689338523 1018572125 547387989 1042519991 766147859 483018388 36941772 41689217 699259348 1051093827 207146878 207311797 540565422 737765468 459215976 550052443 499871370 1017481656 15067050 313640144 106554913 1038406300 356360980 916214378 713256134 177446889 74078370 557672132 631175371 535643875 1006902150 320028381 147012058 552306344 94931573 424445190 630395273 940885790 546604391 1059536881 504024057 602304452 131163808 939603140 475148381 834450520 345197353 795988161 570319065 739843547 600364929 478492701 355918292 31235201 390561452 151834422 884233907 810041806 685460256 766849728 349672703 858231080 63337109 1030486952 646527002 620557414 807219577 970096671 481836395 1000885513 43881993 845447139 1038436693 4381974 657961913 884580256 606907955 390364859 489411484 93029581 99132818 394507310 623798266 267306879 748100940 987756007 958079116 87858878 860356903 752275138 201667297 1068166286 772208097 952432003 1063591771 586554350 175076608 380586689 1031817112 973723071 714270633 90083223 816027409 547548829 21187451 93790104 913502629 141211464 727706084 769639703 243129750 253633115 1071019395 278893847 58085205 889662106 773750093 66645550 258483542 346323781 556233009 563613075 881152362 411835542 913046569 1014795529 861671343 48948082 1069152046 333961359 899104891 557862565 674991729 881514263 430996417 776832163 13324586 944789758 835973519 685383749 844500154 1051960031 591005250 241474926 369623115 275722437 311305999 551070671 907350300 627134241 903146963 723524329 76018620 768661834 71521798 448313320 839936664 50054931 211522238 116153135 46084335 617182087 525327808 332043272 660569995 362381139 625702507 309709612 521265040 424163234 274027523 555064839 776298056 637938277 508017674 283160091 1014964632 621468663 38303495 262124923 334000623 55348447 963320986 766377254 41451655 718397853 421916199 531733640 732092781 452063606 529723882 983777100 841004461 519132392 977051433 922076977 423852638 1054758370 510869764 705916361 202632801 1053752366 79555829 745915503 226466515 139486130 442506154 649176827 233624423 78745253 241369581 842237878 922544112 1070755248 283226977 995041777 801309588 274486035 1007077850 886779154 143098076 836246587 1053482780 160808423 164926838 101214927 112816290 763579712 92131793 270387418 990246687 1010003339 868374829 791754852 89196132 129835678 277324060 934532253 1012200856 966526390 1029591164 685433430 602501331 216434528 1034715899 87364339 288632344 844841090 485909449 745464126 1036526083 605425820 440331440 221889008 995947183 343788370 128095893 303962581 801626132 892869598 926030427 244660957 162480862 22950420 599576215 424601762 799708304 238663849 242048790 520152889 31243338 642137276 210296706 488710755 822657631 230504209 602638783 34330413 936440037 622319537 704275172 442713719 149544480 305031164 198744770 622023575 261730800 218241145 736289139 1019205571 96695206 388620250 219748868 10108799 394972555 111406331 804706451 73459778 10361393 335636511 860520159 478804581 867993753 599409741 644818279 26342567 723895772 87106298 511305012 31106308 118643061 791369076 678928012 375746731 1016087237 918652008 836246668 636536589 842445157 353112724 23924280 436493188 1037438631 247095721 609951125 946130155 240561572 704220427 46743270 637713705 431571841 63677707 882382011 646527933 985001728 842985509 922384016 375120760 224160184 261693848 571711905 756656408 889079325 779774914 11509057 599233370 683460377 439289568 823455046 859962791 873444059 1047133178 654950315 874109287 668379288 801438641 283280069 430347583 728307432 946935341 664861699 782733615 41101980 642217743 271691630 210803975 206446160 196232218 537206436 383920649 264502687 372716149 851232248 318462295 93876945 553854094 98000318 489236503 712784456 1050702627 563412792 184005213 885263480 183336344 621701589 343143370 309358737 139321770 1039789480 339068884 94364073 707120733 492499886 846880571 21684791 621648880 210147140 369442957 919361992 312013345 949665677 1039742119 219172457 971033973 1001527916 1010735111 834649715 804356695 588450462 23314748 283121021 35409609 207698043 475382264 873690774 122097297 633394985 906285324 411875057 507720498 201989132 301286558 972631183 260448416 985558789 649778028 661842272 544880568 581426863 464423381 123343594 967759103 352517349 555750491 783037406 268505306 806208081 116660069 1022563550 163376056 692831084 323896517 424300333 757570339 772938005 392017435 624484962 797872696 419917378 924221225 695692970 353439383 714268379 979596541 201213676 744813587 690744184 707925248 665318875 969959493 47825696 346368188 510453345 982127606 175252164 378780453 365988685 289805554 783679505 315759039 579712792 1009576520 16502421 156271635 806712837 732740722 658509067 969296587 796329685 391122000 942315727 935175677 131935963 948665608 451528416 207782986 212074108 1057301195 91226294 649974284 210033757 1015140628 330881410 995805234 772399526 436419578 64596038 342431293 1057484674 912369033 777972646 12862552 215188459 750821761 231376745 1011039226 1041630352 640606414 357713360 912511871 943854447 847630628 310710808 166892123 446644988 662067651 66236073 258198743 425835278 333065857 904153266 683731907 359814065 1034702869 827913371 992853445 161285622 401572989 993736908 126007407 106604049 664205930 1036288520 269216067 180116972 64651213 121196597 13060818 153996674 771902027 604475409 349797400 426980417 826810038 1034451570 872285832 363923292 153588430 774692555 337523599 159855007 257208960 176032063 80432638 825849077 632670454 809304307 1072741399 409583300 559521431 234123940 357101104 883699949 832137059 322088957 981691758 946853183 666186949 722444579 344550725 480494619 51291048 602028911 570309962 693157599 446212853 781655776 293004687 296812087 965711399 923528969 141709907 499723220 127816644 319742350 739148557 185607944 505773374 19574922 196641209 927538012 495343277 394018240 138674283 441362425 832858345 491250775 648396602 421819153 537935993 260244707 489076937 343419943 552913030 160688481 474145425 609870855 1053903454 886137103 989908257 665179975 146942562 1039080394 313536957 947590356 870832486 336200300 182929822 660564371 895220474 27586000 1007507122 408300467 59783886 489634317 41701336 204898021 171879226 935663563 304287237 271721820 62705554 555500104 482199815 206989999 695230116 443288540 69313280 576713967 264673918 504378131 405716802 1003553736 707665691 869003261 583745647 786088850 170904308 544088172 198183657 693132304 230691116 86868039 864442940 659329115 1015471826 604778502 991455815 520045041 134229139 165557401 1074912 500469155 854782627 519114968 554841356 187166540 783158129 1046568693 715381459 447396910 230173836 74912701 331850054 250378172 69227831 86039997 727125212 1035745110 567244483 449203514 656743715 576511305 633456629 417171259 564439339 870480354 323705256 827522175 737241753 862615977 266596290 167295020 292799010 585547655 980996182 336885645 473165981 906470053 725279899 963653550 1050048428 1010841614 119912468 246975699 639042295 420551 207368660 1037906831 993778117 402255228 240422981 793071226 475434947 481673877 397418100 894229067 680763483 124650022 803495498 291504715 222550808 925766255 773743523 968280586 645720576 281350682 698451372 504503267 753616635 931916250 998752051 237354241 364895836 948897274 918480128 147069006 562711995 601528558 599214675 978813112 485939984 400945617 344259738 453077815 473253406 838081362 868485329 21833099 430389834 974407501 619582854 349352019 122925018 671118780 604742271 320856176 1006886161 197085114 72802178 20927563 542509737 237485563 8316913 397985268 557891261 554425234 431108794 743572023 725770105 717529081 944850546 552698453 824019558 1034540941 610735877 981085019 1031215640 737409594 95272677 361589001 84328198 749967247 146312898 329529978 305044748 493040278 88497286 632317734 405452626 918206529 184198647 595761796 493192228 264988123 232434008 359405708 922410288 744109356 436495157 805346575 791628282 510326695 275541652 576826476 278392622 743657060 813818007 245916673 14366453 407565777 314458480 918098183 367319186 612370199 339629391 820399750 1069308082 779010419 500204140 551358277 1011119701 101054629 235450932 278460745 658936916 802304000 880554120 969639969 696658385 6700811 139494975 916000993 477607510 916589519 1043806387 655464293 256648675 841038667 341148838 359294891 751742180 147672766 22537319 616295453 376894428 1036802684 83388262 183847064 887123530 542054665 286336791 674496822 589980591 812570029 2320284 557652230 245487634 979534861 1060950030 194935831 286512120 929002949 307225617 452642982 813501955 588743974 544505442 770292956 808533048 667203451 389401016 490344067 589135689 421956778 326329254 294950741 148780111 670880391 842327101 316358898 949397311 885937064 738393262 546500121 224632860 824306618 308987736 12701132 488153423 320464442 296813420 243525030 282658191 1016616474 982200719 824380630 315299432 620209088 234061854 599494126 723366266 347592218 882109324 468710357 307046885 409889074 462490709 583768115 432960196 230421333 547474419 262252734 838443133 39764407 500982765 1020353535 395658962 77090805 582764666 195798585 739101044 508745169 678988480 854305194 453446588 119045344 906407197 400875489 911535379 433018375 517408495 858764386 162985425 892592818 338117291 741253067 590323417 326613155 158552490 910439983 900559205 36031882 612727850 204946418 105062036 302210066 860735697 32430120 534148731 835285692 365675279 175768647 613869241 152564815 201236548 971249127 715543847 735654451 333251832 156255298 86174902 439609356 353992585 427623817 977091382 346461675 29250247 938550328 493315464 613098204 156543505 294852062 434679243 353823557 894096572 568359785 811224616 1059093333 870196622 614691741 60360721 852138741 639252726 757308714 598582780 53276195 1038541726 296913297 106357030 9415908 917606308 566663270 210498693 1009727025 686373602 575952074 539925642 583648659 965242910 923058974 56401163 63479689 559776124 174009024 664819368 572113113 356736113 616618300 352381109 724220314 738241690 691493284 1017261267 345395930 346885949 1005169218 80339405 900026971 225217117 420862428 250812888 884677891 474024018 774467050 117223185 959593580 215715945 527790378 715741691 714675198 1018739927 475995550 637921361 790516599 332932780 703328765 222049319 722161805 646600981 653263923 134855966 615136841 776024314 284907056 679642560 869089339 326616088 185367428 923503512 117691351 356162066 537895035 605241660 1037750939 23968650 845256707 263681429 239475703 376005572 626730321 145155277 923013956 906981517 722203835 503103025 358196130 833987508 33296428 154318919 451213318 447879134 1049341671 743656546 321925949 259293637 1014232414 222790000 285987460 78775292 343335614 579414845 816341428 380661806 454685620 715450097 1073531796 772441612 398798895 863766723 361844869 852081958 628601558 590582962 691774386 551380950 386489079 750946490 898323467 902451378 664250212 117111435 1046242623 292554110 949951780 647218778 25306663 985416100 439389517 834749475 25715529 625281243 652245535 530190474 849498162 402998057 693001752 219898090 461730862 236666360 882356525 733213617 835822353 438028066 531719538 473510604 787943879 380536006 1017658578 251465794 839791243 1004548038 311762912 598983496 722817716 103950707 134056281 242356186 835315862 219338554 339576315 1029765265 595808627 241248246 479682747 863812106 904002834 406619594 458451830 61696068 45891986 277563217 814277530 239014248 628233063 88001435 87639848 923116148 733934200 9089876 101288751 176410858 174471070 359310416 31579327 66199470 136102275 19921435 894148887 72758364 622982496 127222682 573666222 849391495 838807781 145269467 408108990 500534182 27748521 448370985 409575265 941372226 333888834 361003107 9916280 24365592 321490277 243804478 280806150 355307353 278129247 39603889 1072226048 849890515 1007670910 799542263 973814697 827013049 105209550 1041878478 264225959 450084539 652742006 840651906 498218501 113631855 613271867 717139102 930038283 467507558 912961971 270064132 684733384 870981383 1068685517 82191065 216693908 779819166 268022678 789111622 941878934 246617658 1045412215 366023418 969231616 381841199 169759462 620032768 318002851 448519791 428526302 287429730 392094471 479417934 123446716 114877168 1069724925 66081163 600048324 832453243 245124239 459601972 455439385 12216664 444665559 620278973 344190561 113028343 281864372 596754783 946542818 352542781 745204642 531052913 368846574 123300900 651116486 591910454 907708963 614185262 990529892 1030769298 333195562 990600988 772092429 658299454 976793011 6015500 1058979479 525050081 939492858 747575366 115226731 293801928 359116480 418102491 254446828 50568211 8889332 171248213 581093346 266661427 636709268 606791860 677323599 220056426 1044369822 160418180 202644535 293514584 632921935 46659660 595660739 510096703 1022961446 703131179 106966072 929854789 981299842 461726188 852228066 159279058 3165198 35001682 946399548 897012486 627516859 1030562638 170090902 272017500 932823241 130205431 646646952 740139429 48922715 900992216 1041203954 410155520 345197012 800262947 520528951 613416557 967558113 256290175 522325844 221302426 438685895 941764711 327684892 894618511 32585021 880960317 199812289 475061506 921739103 412773730 60625391 750683352 1062962576 362114620 857872875 784894390 43701829 768175362 176120405 601619691 615708418 11634551 531908639 122294912 172974215 779304561 807325509 584246978 633423092 841193286 780127433 955160269 324541183 251579013 417773841 392947413 607127452 419400415 924984536 709695059 940907956 991793370 198042753 267817641 230217826 930737836 1018914714 393071429 173459582 595106765 165462973 914226300 277393645 85044357 378417724 511238783 687970301 90694701 619126978 350207673 926393118 630198422 1029808230 89211275 845720267 715614205 131036677 810194706 942257195 261863623 225588565 22692189 296175112 472959742 175738625 1010815686 1015544615 321152036 16714399 509940778 721106221 713080224 376321373 558381102 200279157 48502659 55084090 1001814967 951998485 134616378 168913706 759390493 698445611 940279155 127262601 285718899 347812569 701352413 272650883 197616320 87047475 525335219 81825490 893143641 567877179 1071826692 518303558 1001493031 212129959 348681108 636507946 512134289 60157687 412036226 401730287 402337163 59347676 971873086 532953459 253644333 358108539 288308320 68609619 440452572 822588694 525622269 729022712 792053781 234949770 487096269 1017795870 820373396 131870736 1019943808 592591844 311681887 8229506 872588887 831073996 628352591 1034041871 267907628 136533925 531095996 37695927 207777549 547100733 486776782 24045770 72232569 49338519 261259669 153920654 624179969 398370280 145402273 495986772 837119014 1038204241 1027553523 867676646 489053313 593316663 946453846 78953628 925998033 686247122 804421012 313292235 279385997 773493842 443805386 809879483 382405764 707300366 980770472 511064166 981613236 708234467 567392222 202898186 775654888 1053382568 203878746 169535371 365223399 115955955 226540351 348507510 605655397 1003252040 804044388 747743023 679578220 944925679 697490736 384544874 477633900 398813153 660166944 786423964 253427985 1011607828 879772072 561488320 592091830 99016011 708406643 158919860 179164268 795228633 655928441 298910284 568589639 1002257860 489059457 80511230 284168036 294339621 1013843691 995863556 889813020 200726847 477429029 140314261 287502312 492195474 37525129 961523329 936016234 134101962 50943340 182273915 527976135 353658152 768189932 483241438 102596370 1061470307 844684659 853253930 163107954 903443586 235896073 349143362 164603794 55196282 42982106 180897013 199910758 516495724 1060639999 146579695 122469644 523481103 1004832335 24751525 57122022 430899728 946562931 791522550 338318251 596034064 865425972 315481685 212228777 257978880 136767013 782837223 984585030 700973055 826876030 656512381 614492422 232483783 486034873 42195311 893207037 10474941 895232971 373248436 694513367 513241519 132215057 466893280 463653839 716271737 846911532 981095496 609637890 743736347 476789734 783160817 293994410 198733492 285533666 730730972 507873671 424089220 920134472 775047339 486063768 556622386 548161362 905477169 112746504 684079656 505872608 287282168 518737144 1051593992 782692783 114746326 913154141 132240301 202738628 206786988 136101735 982943112 926395352 575562001 850789523 281570663 860315492 199500538 816657587 830544265 639588870 267743537 393885778 1028959403 209700936 160845204 583625148 802874363 138498731 348266141 1055842616 562704014 125030749 879566863 777637538 58133018 530504927 311481745 362763814 283044258 1040948886 47570992 946940774 916887995 526415483 868766050 465796506 124448558 752673916 484660136 640381359 132316485 95161340 779116491 1064639889 923184525 569564299 552641223 75926164 584349891 7439716 493150769 236836840 217460385 341965704 741908503 736791171 566191315 448487726 124143289 687563188 1033622408 1058170252 799411060 75646910 366005971 78899979 438492754 389924715 213239021 990166040 599625421 1009495597 98132741 930973426 577504324 578432143 146259856 496268675 720886427 877295780 853057864 320374090 10288322 671102983 5710031 389607494 796862284 654157587 539052011 962006415 866841899 490254279 537239478 137245193 1017018133 289003520 87914164 989682093 1062313880 231493022 209709116 301683669 887317670 297883588 832939150 769435018 446041873 307356024 237506002 806515259 722068184 556093423 377499094 637840646 656879088 974447270 869757979 234688247 502159809 260435131 348127547 613869460 708869800 866978607 541460625 960207076 247227703 26542993 985395289 666581376 59770979 158719233 925282258 290010847 1071518781 674401418 54161680 233411219 229552968 332738774 171582517 187899107 346363573 359671664 193448628 472010023 723653989 1058686774 105541089 37711671 3776637 1026995802 1019811341 302771660 867937575 114446507 549668976 819064339 97740907 350387305 674191080 1065896685 636712512 862571479 1004343073 6805287 181270928 277455293 1027265148 244745685 371062021 155011985 183033669 876047397 936570488 1010850639 878728131 250323018 665983559 1025209902 556289651 577075240 788319907 788537733 904210721 763808224 33741690 495785027 939795253 555597146 333418328 385773643 191781358 6395085 353714578 1053147571 996159144 265774709 784915589 335314078 413252911 405428770 448329090 959848439 878439368 302608333 402377956 842707540 23566999 159374708 886464182 351963151 223216605 249805538 130973076 243226674 531990589 999533635 628743730 984263053 686249001 1005532322 282361098 371852980 479435092 213679207 913111111 277592108 928055644 172131084 912580713 551491374 918532612 927135867 461870208 678910382 743796391 464522208 341830287 90048634 295766922 324337624 1063791737 513110126 884072511 354317670 605059560 169778609 799065232 927355125 1545667 159583097 289656988 397292032 217688109 794285489 599524338 413919797 549304073 474050199 224127826 140899805 831978882 296394080 126794908 762939844 52607260 628522569 366997361 665955225 675302928 1018763729 2300398 440415863 74011045 375677743 513325489 562109558 234050183 110670016 979531004 1004833777 825416622 102722250 701895864 896807198 370589029 619058698 361011219 140792337 398911932 698793001 259932667 654164293 1048084608 1070095098 925142574 296368144 930445261 359508979 920656704 756785948 317652189 381008766 393940195 883380346 754534333 830944576 386085185 387827376 839698138 473196520 387245316 405517240 458944922 826130712 134377011 752311221 997901755 701028132 823920949 794572166 402262986 220126953 667424476 93229162 742894963 457137701 40714219 852187446 464098504 465150666 622085523 897867381 704660697 960859072 196860120 979031722 696769080 671348674 474782051 569225002 45535132 929929471 371037807 945414214 739053909 544448076 671043478 541749198 499161215 526302733 768149701 773728120 856654590 61965550 789866104 412809924 889412748 903579280 409133895 872571430 181640954 1028242465 628868688 620513143 586600741 7306815 663546067 394107195 149455804 329509446 48598790 890505144 282242118 557825400 382992600 986000112 717408606 854679902 652498019 961893535 575748749 321143273 1018800304 836910830 183194937 284470527 875120427 608810794 513980506 122769510 124187258 823024205 370173414 629577446 867755240 351726140 103263437 126853178 35735115 1038704415 863555380 611536316 484069550 417944814 125528916 600272479 810100554 647468255 317432051 116795082 191648847 845230485 939044013 318477217 621906051 676073431 596565349 735944521 64707929 689698252 284535967 766066953 203925278 702041973 678276159 352409836 225289669 297108456 254135045 765056152 613476549 202128110 182698821 298501060 372958227 451613866 389217270 75522404 474651621 81097564 317860520 478638020 206738010 769551002 420149439 767278328 511775651 405279979 562198580 279732516 882425129 660851756 311150683 282144457 416477090 999123201 79260019 135243003 245011674 993980996 71125169 50689575 227274722 546147884 439108880 671560707 324779341 371313105 956926085 45050319 8528999 625103132 770009567 268167950 703677217 266074597 385715469 461628700 1029692902 821531617 724186822 262076669 774355539 873399634 582431497 152747277 13521582 297192540 554435904 977161492 399805440 870514767 675473749 9235162 136003742 421977628 545967579 382497000 199045592 828412463 1006046240 164985912 1017425476 660443819 1045883608 79298937 509760680 717601679 1070838923 350915772 989550195 696801255 577820894 693042003 397194558 1025828360 712114451 913708124 355888739 178152285 80820946 920813372 229954237 982764703 534116752 163441014 398808743 1022853224 913421309 690258853 345936503 609582269 233702934 279701697 413503995 732264774 733870516 171471995 545331343 974911484 53393334 1018131843 938578316 295862755 22072398 656649568 1066468576 855086305 725264514 624918805 54550503 556160088 572920319 836248409 112746656 742302991 367044691 1011004709 765401400 59426342 952828620 659946220 127844957 146198186 38674017 247519674 470819359 288079656 404308640 278021186 668494786 550919701 435876074 680675528 27135967 506401710 677347562 71501821 921814368 307808366 655547133 861567220 99445239 411480976 525451287 669504931 1059359467 416792051 660708680 370106341 448474783 651061312 315854971 654781558 1051518819 480176862 362400861 108420465 166082597 188716320 241892502 892392715 138061312 308533975 903858212 876988117 341681665 15094231 1057787474 1054144103 484217111 178824420 737436396 21069314 622936899 198893831 971859304 93731838 946914306 679786605 1059772157 314152748 912591248 618172563 297292778 494918932 165858245 666933851 910831164 66417283 633458534 949898987 443774436 903012579 594171913 796417055 959080408 725508909 728638617 525361169 1051731842 143723413 974629713 658551486 1050441091 310440046 45618344 235310809 827441845 777283962 236680781 484972556 591387102 5957761 837815834 770053183 77268015 610533313 341481790 493327758 255444088 190654246 907619023 367686009 36666057 29434595 986008547 94064957 889852031 475549217 931705011 875261489 655101698 216469188 648177713 57074529 727939483 68290677 790953437 315985598 1011347307 154410668 727632433 1046011303 401142303 679134371 614808739 609893093 395570690 661755580 206896964 454690396 1015045507 468179499 799457622 776806681 455986325 297447863 102756744 51805746 924572413 157942488 1020478387 679519616 990526829 232366840 350230386 641209049 256093324 820626033 692578479 443411677 272147825 867653835 292410475 461454330 917522018 883758129 1011428364 557499743 146216130 57117378 463882843 996178126 229069544 52382633 551480076 419622949 135959997 222807650 619747149 635036532 543498909 687036423 700360818 607230813 883378108 209976506 674290525 598639798 116431137 591201597 236935662 335007292 420935700 724999393 206493422 443839829 33725356 331285110 998159025 913916842 704865397 258658289 22732053 489282476 428625388 1071169401 352065361 343729521 576768864 1042828661 935382906 157223600 298967207 220308109 310842252 82211570 1002195999 411498520 808302700 886681655 929056201 15384785 251298055 272290196 723785774 340793185 162491961 988877175 679915684 699635043 321506093 766469036 736257401 22377139 1064390853 1054684856 303800178 853037303 361045742 695788765 435854025 1042869884 81264001 655081346 812986644 300455795 420945341 278840404 140502607 149233055 1028253535 909580172 689750264 687520684 449617465 278452640 322407485 753823805 339793981 1004942047 857470822 91855332 942790530 318533428 445199317 421210751 197797011 395196375 526039891 622196062 1034302422 51629595 765808984 33661937 140966689 236120919 92475466 929759139 807468962 237121402 772197053 1032344145 716804589 658433821 14117379 1068812805 655409065 888479146 906105955 988912365 456631904 348397053 941406755 78933337 630462093 1001503285 845332351 714834651 843633369 697942632 321350188 737682308 496348267 746636476 269491155 1071417946 851526122 978841955 188964339 611731007 79685672 847953025 596374983 455831347 518974796 520811000 646985692 280582246 241997687 411390612 906050434 645850367 334542163 233054483 971239383 714521984 545564280 335841939 592504962 2162524 459179553 288563446 466665128 811164819 1010555540 1026980979 93874047 86814563 321030595 110057953 272661132 14407815 265283561 354547546 1070335453 910743498 743250529 811467049 576210168 510738293 1067756789 292909501 411462038 522834106 201732665 150775317 367929089 426941459 1055717262 657513327 526448407 861116764 1065928300 851303076 304107022 98081014 94958751 641098278 644319295 539994794 351069580 154117398 498025689 494877870 876710158 139511388 847106301 749691086 658796504 989365837 978634249 306462443 397950226 444678490 356675776 649421944 751190311 653007910 630709162 841859586 458231236 227986049 183010101 757378240 426261741 603084066 1062326008 855655402 936562688 1051255384 515282929 295838026 336811995 895378320 857034590 467733952 586054853 465736216 852275273 819167315 779851287 613736568 390607338 1066435921 748230961 848722241 647079452 91892339 389979826 786861149 1039391661 46425237 893269944 515544316 963788726 63977542 451269534 223860326 1055823731 162727842 504273076 678914503 616382747 1049855023 401845716 1033392896 36669700 52737739 1015730359 452288207 60284279 119021172 428104390 361820911 1807526 1013522377 812741501 532460841 35024543 283033155 122088206 925089057 117165097 805975231 1000896568 923806098 286534233 1059302751 514408049 495168312 905435970 476244368 843683242 4568052 665506584 196371569 466264819 286285681 646409979 755207365 540034862 516043806 758042480 974996977 231344697 856236701 316726795 485745837 416730249 926071413 268596089 137968862 241632217 939816778 408259742 728714821 382937680 388732297 657347726 829869318 93263629 298315127 294737164 510834358 403153830 33168267 223892107 643732533 541669645 22326530 674288050 320394606 766529883 503947558 662824960 858865082 617947359 19609691 106134949 46169530 970099650 46400975 384425 108730630 893160236 222775246 533974350 15952592 507196208 963734032 1026233081 806551033 922308269 679408822 357773893 619533289 104341299 489063154 4940852 186026023 586543924 228739618 431906035 661435073 876939218 979387204 161392406 1027241172 570034225 164173862 87936276 108439593 765280025 973403624 263370748 141725772 798385721 66192357 68846232 450992703 319390500 980152851 851754363 698968830 668161582 604829079 789805397 216557042 676595415 926354962 710313405 1064223707 810335270 125252212 372243933 3123788 388588738 538754901 457199598 30884810 363488547 1035359085 674217013 1061035355 292466345 1073714981 1036556194 323945079 908109767 876320052 910008124 178832516 724418883 319269864 920130107 623116596 43710149 499790106 224083724 127041261 1035270043 557757256 987768682 944803609 152391331 672880800 266891253 281923647 877020612 405883614 677747532 74078892 294227356 429099968 620313532 978829863 836373360 610725480 397290713 115733090 448701384 783743683 626241207 1002739455 1071454959 1073236078 73146330 1034616218 487464345 864964458 43875603 163699228 125253227 967584686 142580178 834923027 265238817 304513040 826492010 648607864 315452772 41669226 6211969 34181937 130893674 71357393 513970616 926928027 920887636 442210781 825705097 228894036 687876550 371370296 105473467 966453653 289163497 534133832 1039676236 858901861 1069212864 841379789 524225900 994602131 321965943 570908330 961875668 717564517 818994767 284918370 786281487 175665870 798936682 214230731 119824448 114640134 218919853 642155452 187181070 548198034 315823866 1071944333 1023421120 268640886 659386912 679356350 804925498 623004254 797933773 978306988 967420780 540587516 989586175 777232562 484998102 788356401 758120441 407742965 538362082 189954531 920617222 406910217 580659162 816474191 979807580 280835317 124470360 265916984 211465021 329144875 705794751 492789799 1012983667 836761960 1027877433 420761010 944390667 66894349 661658589 281840482 737513780 894998762 566917430 731256761 263738682 806621216 617193774 169994903 566578329 758157382 518695381 377634994 539257893 791019212 213867220 288007510 153369005 822796874 529789776 1065807008 516666637 214399352 743175420 868443358 512771572 161372999 276571180 25284125 169603493 193959557 641435023 502757044 1069009389 613488814 1003206064 1063276010 800493661 608335218 70669642 682836551 692522719 894622824 251465565 989358448 342240746 1013921005 257042712 633039362 1051358731 381142672 98244750 73848032 236633445 113526257 754944748 758471807 579924167 551468659 1000365730 277511785 682223146 492856295 866542522 912953205 826593464 403593002 378650518 457764707 525590260 1012594242 465132303 858046478 1013211868 583633054 834324917 742200999 291136070 1059010088 522173448 864444169 208529192 545805617 32022848 1293831 985075652 115760485 338857302 692330647 970387463 607113210 515355632 1073233508 349705647 30833077 292056467 336869636 738692691 1031534039 128994173 1000738043 88097397 975236953 865428259 983271329 337705762 162436473 164055100 29148471 98046389 671802694 414990156 359330249 590116967 662441930 1059259107 243891590 763934931 128220715 988759578 653924967 986245153 362034553 620611280 714925812 449199347 838503253 121474804 586476812 14619340 745989364 700767841 804164992 432876113 6259696 1041510930 397960570 382787490 3625192 59242917 984128309 243301344 368506848 930080607 379059334 828084398 133084785 360063374 583071177 279837802 343839843 300409274 710675129 374759509 151349800 427515779 533374214 904319266 995464421 279978437 412434031 187723623 305885689 286267398 232913080 659128111 694129770 79074429 875079745 404292273 283716515 361180881 67901980 220416576 644773114 862982935 1056520754 296650992 926908638 142759758 144503192 452168254 898860701 359002519 59386147 337592935 485641376 513463495 113535347 889305101 1054711954 1047884757 273576279 574564199 792745914 187181845 251947116 727309762 909141475 383697041 171285480 934962163 596956618 667300933 534943038 328943876 136944095 262975140 367585613 1054898365 43953993 867765911 64088870 324459288 534696197 759197025 462953784 893107036 364886717 766482671 1006786502 263348570 984566802 959832603 59444298 99376810 452023869 18443707 145043931 409953946 828836211 143174474 244511092 27921959 77612903 36341253 759979020 955638624 688515784 698296533 649664924 881013756 870987802 853586556 803499366 706181328 172143930 1070001376 308564699 174603070 970917109 388083922 636571593 183245528 573990306 448239018 838202897 432282220 248644002 343964343 742173924 232856397 539659903 809203018 303776136 288021240 753051076 321701466 870443960 810059067 364739538 770110160 1001856852 75132587 228524716 54615562 34414309 781050331 569196690 438004429 133795991 694961404 737495757 372750029 548681767 567758765 470452211 330381071 288894305 198042426 354458634 832249721 61482327 62895293 1050468043 199780470 372056727 15022578 637954696 489889841 884159888 680082146 876023731 431803313 385949498 743092845 168344266 735657416 558382170 377590830 524111171 20770459 216494474 608319237 298507030 192333784 918122673 1777908 300930955 914634663 1055535628 707450444 1071371056 158555244 164234132 857529776 235033917 976646647 1048116626 290011955 33504885 358000630 232889054 573588844 50266504 191760867 501424850 574801695 385139529 567471262 1047778547 676222909 1063410871 105375330 321271203 58107312 141484928 292613442 844575762 620957263 955956020 530987179 801205866 775537150 936796183 709335435 838044870 421637446 229709068 265175425 819114676 121391723 731350655 45262866 232682334 744565915 721331490 53136987 768398442 2358670 725381221 618271084 740335647 30898163 122811434 236782506 427111600 771726001 176690744 670974205 86543272 1005679421 1045792439 972990009 125073927 900007342 30343639 316797243 646394575 845164976 693679917 981548426 342519019 87163613 685148123 967352425 944465863 322258321 820829644 314227454 863551062 558886259 794979313 646446994 723687012 861178117 226682042 745953109 217244031 915448725 433751334 115306119 305437730 529971904 515849761 468847818 149398109 83817544 1047817847 911605098 73555303 453739200 742641815 931768200 988572438 965309314 705945124 424156523 187630325 949340999 960843944 622509542 193452636 155988112 287794095 232863155 315496031 786883601 991712118 1039521270 170190856 135671064 390540705 186134843 408842979 154045244 27605379 79525686 23446204 235696372 936308605 1025161251 662040633 579225658 245487144 604544584 556854738 690247125 869928644 250401025 443293992 213549039 127287685 968502128 44911207 207856372 218196791 773280671 1069418750 980597844 943992991 298765240 820731966 504948355 689384688 1056129022 1061869182 1046634142 247112413 272151466 833791627 965127367 576501791 46636146 901287509 230349322 871769973 569779196 685955924 937777617 854142390 522274996 268915940 316106836 509528079 480900383 644411207 69836545 988595926 339625976 939641588 85687547 600255316 587787104 1018463278 39834813 254897998 1072076134 938081326 985097950 766062639 757584485 66532879 496385517 963027024 571769169 8507204 78097147 314117840 783270991 559989739 1014533352 709791220 872739010 340604683 498993105 670706978 294096568 891664661 755740212 826744201 763824513 786243989 596204350 1054116689 6567541 587040762 89257240 1068957631 963663806 568117881 634007416 114124443 624092632 837209344 290346667 494774752 589680036 342575490 545875444 272801080 204537680 638328210 702234894 60798109 241004005 893692643 292394331 495036645 186399976 703817967 700568041 267642783 456422577 237779619 917005292 859197508 876266067 276625980 822788922 1069228077 1032829795 454287750 562118839 859356188 762517443 921379619 794503027 856669287 277115616 240852931 212540924 464512225 795793215 372001248 981222261 258321961 907459902 578543553 52244399 235022300 334046474 870881452 325060778 1054151335 539006408 478259636 30921502 20526418 875066168 895779990 68336137 1003015822 416009268 385752681 541240150 818051262 794763029 823002226 226692159 636157631 967419495 25304826 860336403 324105002 54139944 486662511 489681549 136393094 1054370702 372677394 464371502 904238936 392825525 852012808 753639187 820078248 799058174 845523633 23275299 455859893 790176805 543015137 923654398 847716828 98813330 840012691 361021617 53043205 917061577 566702502 903137775 763038576 830208168 399186936 431947187 77752386 362877778 973291434 296158780 216134955 959491837 667005075 147386579 864183531 764340681 578596573 731895531 117960944 36402446 96995099 652328253 428392120 210497435 995385370 924727272 799322705 449924306 272930407 555950307 768164747 1018405916 888010988 407181589 632885449 972615735 680921873 579806543 885204716 965748075 572363023 119610986 85896232 165608926 1049142814 605586265 26395749 216317597 831893954 446508035 932606450 725315754 86000692 169151336 597842688 1012875013 33171574 335021076 384300783 1057757809 1063036056 671738656 892522219 6330114 4659772 76232698 640608418 208948217 572558776 580615202 168376606 337966883 869581818 293531021 728193380 443890798 297331512 949488634 582802485 965019860 266779025 64876619 897639231 423587211 1038451938 499444628 330260703 594231805 312111468 2286612 745313999 771555746 166823527 1047163080 844836794 76624827 975461820 407305022 195027532 933367080 932274102 462418553 118133076 968498854 997136912 80470320 143328259 416344030 512950627 840501796 384891314 127077732 328162128 186745776 63038497 617206129 970768482 933425617 476424992 1026549105 960804230 311849299 293282546 401439347 1025365803 687978846 283648394 328503160 294646293 506547251 299214584 100734295 930542405 167377759 223189501 1052489027 380387981 974156264 424544689 646894024 830439976 96076126 1040394566 757454732 111275037 453987997 155593327 287900457 793200948 526511061 233626365 1027618493 162243383 459146210 713022490 124337414 349793482 138001999 9475267 346321853 414469879 863030196 545205543 187920312 447158559 569289587 663459428 447062846 1068376733 269829313 327064761 10851681 850408930 747326802 594812018 946999203 372363874 334371970 237265398 496931013 368797606 260600199 873662005 433307728 569562683 968614887 166697665 648302645 114492488 768354007 98881208 399036461 617260484 447657666 314227298 211577567 32263872 446362472 165500162 72058215 179626086 239190725 550392839 492297273 971329492 768322178 260017404 539562737 187348437 394035884 255059261 325804027 1052219078 577445869 89449671 7452222 624955199 777901789 774614142 677918259 663385345 689448988 474819570 702999605 600624477 477860083 548469821 186333772 628317422 972742533 1014253107 751459179 28056375 797796296 918305370 987912632 261971411 537820837 447566747 807197506 29211616 335079646 64295140 475013331 303164576 927768570 562026601 953328106 838837985 1010664169 392774747 169347033 657573989 838847945 565674477 1002789435 585093782 967008614 518152343 286464706 1007060603 354686856 444142754 404842634 1065824636 326468377 707225638 328175486 156772408 990923457 49368022 199231985 396873840 717582163 156175482 686825335 802757129 709949559 227592054 1018779340 458898684 508318445 375819303 13846016 1005618806 546570366 255291264 313999837 695737841 556497067 754613705 978252280 358548778 1051969731 830711534 662829545 985814284 672646923 875091154 135347444 200763222 931911365 153047525 834340241 769232043 921710165 125948223 122333785 884656233 14289495 951110757 1006994430 542334563 831288690 947050010 935835128 335880847 504125356 202801764 741597872 870130256 591977876 480140749 451046218 26029513 570877855 878108430 106191170 228721510 536108196 880633448 21873035 119515442 465415449 136012925 174829744 204305537 704521666 997439619 156799928 97312444 949481940 497181202 209383177 116873542 581669260 747878977 733594445 90713917 275624505 386716019 798716502 801064754 760311011 698979306 908223237 565609555 595571439 557897681 113882380 134534549 778018132 999463096 346382876 203463380 72008289 873371771 620417478 709501635 337534817 838560314 562044448 540761300 545792225 588964178 391371483 456666955 492404293 304652822 845459756 35669825 704045427 954795180 764131802 486427134 842131983 630671496 11139316 627871979 470863809 960211564 247808004 190198453 723893669 913925859 258790616 936290183 515377215 49735868 733016736 806710670 362429212 332947252 335304476 777769422 281395103 430759644 331344595 160095975 341896281 723317373 474850073 206509067 742908567 800652608 475813031 74509737 521215924 492999570 717736307 724125527 448584443 238139411 690029697 450372534 514642134 528502075 420004819 935320913 356068061 582374383 458850827 559828348 731284179 307336365 970105307 735844043 1032127312 224233955 375594094 305705767 8560089 348083312 803263022 572175324 91004575 207216610 214516103 600500558 927776857 1072647082 173211890 942559874 363501646 140150569 265150787 770317873 903868177 629679208 481588119 82396338 705114509 916160612 761778510 704292011 724110766 524897942 164314672 974952245 869758530 729020603 803051605 859949983 943738272 199202231 771794270 28548856 839209358 140430960 787113517 882493925 317241948 466855445 1040572328 281962465 364365746 991040721 182317902 833879704 634148956 214045391 623847262 380135959 325722791 944805709 138730068 395828900 588194751 956211630 953853245 1071242927 385475834 286814175 458735251 785722781 464233833 921077656 961928737 593384182 354909419 824594785 260916807 387004278 700643569 375104724 205783455 1055672740 984556302 851407858 884074193 994170347 882951103 1003501390 790475356 887071854 576383226 1043810823 490624040 198546380 685880535 230734697 925641306 1051692937 574450614 955892875 288919361 473906882 426704205 222974406 333738037 49237064 899664883 981440435 371480366 508326944 209376620 1072580713 106901908 303267825 423019985 765253243 547645344 914299677 96572618 575436582 474178751 940988725 379267720 139788176 233108112 24545787 553367303 249647778 224418538 41565560 158020178 894624760 522408192 250069181 401646190 783420644 1035823963 647260229 547077229 740116076 66810290 84387178 167138420 539963227 258205757 819351655 894303279 319104055 1053059434 742052538 205280962 645409873 443435460 418424078 673011806 631832940 245245777 359621525 77712256 173493515 521776874 42046471 109333290 1054215814 351245524 581094312 307494903 992734713 1052070725 242284301 341007258 919497937 324100514 243228917 8860623 150367262 239855877 333927109 817886861 576080520 234709908 897149013 490431106 774718777 590033473 190301041 558202185 493523208 613652377 35939173 728077453 588245686 864261404 252389908 516651733 349679273 1022210692 34858832 943120867 486798692 1073586937 695616012 505836564 555592314 527052417 720045610 829340511 120001785 879347129 957254961 854273887 651265816 666590518 404224340 385227148 808569732 132255137 126680569 346996188 423653163 603224008 1040852643 384932685 58381317 924337527 881852660 280862440 1018333958 673370304 215943383 168196256 75015500 402529498 531433597 810710811 464879865 1039213493 336753632 955800787 972070313 533844966 671815742 644152860 400987046 560904100 612929107 66264090 203690546 853435001 619256829 255364679 890716416 658573838 964283724 296663917 817949557 14751015 464499421 284664517 484062499 451331758 914628591 65694017 554708909 380903497 998854828 434238821 634251703 471883432 614114135 993094356 601865408 86913879 228091840 191162480 119064942 4932405 648003158 246595377 1048662325 751601880 961675648 896273954 606763280 141658491 42853979 856347372 347353162 430579040 946264360 868029303 581323924 536481442 87429128 22093981 7876591 317492690 309306457 796390635 862695324 895666562 821976691 631181061 601878802 1067228959 45599328 599311490 665153626 249939229 59176957 77763441 384706256 448014976 434791216 891560507 488096018 939246236 1025215877 49698609 809205826 253990655 350024266 381552259 964025000 551953064 32559075 635543902 380652932 477834392 959445349 892840136 168020302 998182116 545881529 722436288 40634861 905053917 19096444 268380590 1012502001 580782430 699759465 939981087 293478394 608613453 629467081 258961245 251341577 161115915 105635608 732916722 235513011 485395526 292577489 73853842 302762651 293485106 856127737 757550484 212234279 484754346 1051432736 180438255 234411447 248702929 247533781 336242198 380191301 836800287 944784685 353214105 304188783 624498205 1048461943 963451266 949044017 180206503 846902227 778867172 567183297 952439562 208558886 663473570 786954449 1059487096 238441904 548682073 63258263 727793018 995488148 815651676 710547645 185148004 726938974 535618345 125505067 40869271 200685304 980764887 920514675 504295964 617255237 840163644 714586931 41513911 34665425 719586910 986657308 38401754 681317764 517574404 799529332 32202107 754359233 271276386 481817223 664259792 122770559 550058162 1005644108 1027557733 252545761 511549387 903615320 566412686 117547295 310990894 511971429 342142605 359401718 202676258 474606826 1068958477 991967896 235933421 356191522 196816529 936964576 327587727 331477173 97692115 1009057507 967702641 637975997 250490787 629370978 572954885 967475004 332431898 807617481 139057351 953448949 1061835324 981941190 583470030 558946338 326142235 472574779 264802309 242821133 59417560 370221352 948749635 779782848 770025986 569701297 702347195 824480232 219247391 59624137 664609077 1027435480 287780879 242173216 189858779 551278688 886757238 929654899 324819931 1046828272 151592462 127831558 89998631 410932262 951379367 46746621 444223047 751516943 743971983 635812179 289606232 920974306 493203707 710621743 422074785 51002293 226717600 237457299 308741066 958812216 215868600 152005984 676374415 325526776 870538940 509226254 270942828 993163001 223258598 386695259 717895823 407941050 357136239 210229458 571109322 217093231 526832591 76801392 559492224 79494815 812476678 896429433 1357787 917100534 556898651 896196512 168710344 34892490 1035725205 635577490 494872437 1011655856 594005355 13763067 748680006 151480404 25609324 744802929 785794742 431725211 768698946 527344480 799342974 515323129 1019200723 653068095 684383372 250629092 689890978 166009428 293269959 480334659 896951374 651813131 387649858 1033874431 992036044 243722085 779608689 125800660 346372525 245379272 964526993 849204867 897699492 804924468 129130357 891873915 507540066 635827586 1020206285 833873484 615190658 741124590 458107056 368280414 712008092 77701185 486639362 756149379 425288427 653680322 1065705076 577279270 899002695 398164155 79868684 1017401838 227449918 764068880 521170156 360965606 258709201 28838095 998400036 381488004 898864157 448152789 576582413 170380799 561692008 1030090051 72042754 208464569 265583296 1017906540 59365141 357720510 154909693 223824237 909318441 11546537 678935538 604736648 92521531 1006035637 656609750 23755242 830972907 920735074 975657463 442018687 924350765 497356514 87083285 813533213 778783606 741500792 161481659 341642561 904574545 946603225 612420794 412230003 294308791 756116596 534409115 700193626 346283199 841530602 107347297 115535408 736621228 660058552 315880600 484747992 996998606 713459092 490417832 324302677 12042483 588440929 1057434900 346144372 88104564 3987672 867810552 1041830376 361088730 847688930 902233236 450845508 121745278 604433697 420826491 201424297 470010934 214902109 450645324 719993587 303642794 799109366 912972129 102671908 735399563 939380975 142400758 71519552 343551345 205522052 984038962 354798184 996880690 167097048 205902528 869832095 377273764 645840898 52400791 520955185 479037587 459760273 943659397 637005056 839573777 14907451 887892561 539582811 102779291 1025074592 1024502228 710589065 659165461 207400514 731546384 970622680 563398304 903073492 343233635 792388997 4473045 807635069 981021263 490985949 391551805 276370950 423939557 785383819 96134489 71264565 252120635 890624032 293528160 573366956 876772318 878184348 969077851 681755841 91266134 194983028 654316309 668550883 309255098 377766287 140650678 788103034 33746418 815978747 1061013503 927433304 962536359 331788148 226846344 361802693 1054098537 385271982 867157225 1060847735 665461819 728521099 643661126 696012515 876029254 182831830 342845040 1052301313 329662897 541065164 650458006 250509619 623893782 717983684 1001809263 144729523 727145432 989571801 469854479 71781525 16149469 281353290 413577270 953231605 633955852 166090771 286459275 1009523473 917487663 804421897 323430619 928880381 444742440 760516071 502760234 667589728 1073438745 783486293 91824590 970740758 28714975 530622439 166520198 76773012 712645484 249327977 849333015 1022350706 607857426 877599770 142336541 603007343 131368718 978755829 588867754 179011293 614510070 785457664 1071366984 798373997 573748769 919084521 743357684 760365626 340645874 742517558 230001842 319012145 302271000 89356509 709081304 280627370 834248551 1035502925 671970330 491798942 205046892 69529935 641281492 914881146 424699398 665087497 1017210914 332061126 1050138747 424174709 361833928 261485384 381917442 400666183 573160329 570747138 850653451 648136184 981762084 59564567 927784417 373403922 303009030 280443755 589775546 721592138 50479486 31638039 1016635076 430617558 1062457595 608455984 629143216 1063143963 848642157 875824291 838827016 27866553 991753597 311593680 25291305 223057205 402137569 1072788411 637240428 361196135 596377154 169126796 307362118 628427678 248148981 443534560 411701291 802758043 482262330 910237672 448881351 379265006 487457790 856319197 653883557 261181328 99452382 647623601 970614706 478715762 11204650 874080984 665646634 677675089 729922517 539175087 476253186 1056862693 808641572 228803074 444051094 213210733 34423531 1023784831 193470746 1050740089 934988085 360063269 619075110 298180494 5180935 691118410 210845109 806830224 244797972 785678137 92762689 568937982 1010324908 290650200 735695752 809802537 2699418 705471718 1043472825 1018647615 204878107 1014300657 974222815 60463189 780820094 125050651 817991010 855943226 738328087 464128706 722846731 658686605 266882214 626900805 523159655 970704186 429929476 64600523 994813987 815634420 385669791 263902988 558661049 982302941 895169575 848794602 386761372 112615444 928431595 70657576 768983403 517139794 630565561 727650422 554856688 303394627 379558914 133189456 900950061 621098446 369540072 643001802 684827015 431740100 1029408142 270279213 495997536 998493516 809017645 622902855 123415440 910345812 568288663 1030493748 280129647 703141135 745565700 1059351736 134071579 398573290 561433585 877662041 981673574 853326767 294184492 1041811032 655969901 460667663 492773938 464402146 610545078 453043523 31247724 325958929 84355759 548366041 418765278 449905629 939200807 418568246 665652279 667009344 487746968 306087234 601515573 176914068 161950544 1022947073 660497841 279163641 934776069 591623206 246883991 1026085694 874500585 474352838 576440399 222502115 569703805 791015028 92402952 1021120362 772994124 109300653 81502310 638529835 598741915 523828843 810935521 75583821 772295815 557252172 956844731 734562955 987827723 388951862 1007370523 475097224 978079481 590190299 484034549 596776768 447805154 943530034 552608070 384113153 421114758 396275070 622171458 1019605267 632971430 548877299 60441316 218030332 333256171 887750401 723144969 166493848 1556831 120863377 746670831 720181842 475892388 1060162191 446334 162463612 357879399 876300755 715285356 399340135 828747634 319809216 286281330 457672832 42960759 588006263 640687140 742381119 438445936 789333977 754736398 700447957 77539152 736651732 369981493 1016136496 460586894 127488194 952332334 508886214 450755054 479708976 804891278 1030484682 87166569 437266215 829836432 746093907 662603794 366870874 204537400 260205872 303799675 1009217960 929837466 220349117 232101156 516591107 1064348116 664286163 273069855 696777398 765439042 171268876 1073161656 105189951 709436463 542494442 1027411652 801572390 241397712 780506008 399557624 919844270 975977101 446444149 906445724 807149186 171538721 853727419 567222135 949397925 620707312 443984485 34627177 1049963565 937263057 819689370 1050442274 422341988 104304543 435182329 299459635 690801070 733790095 169675199 505783612 741105226 73690180 36397146 26689059 120975425 207198408 2203676 966580280 579694119 983470517 282692129 1041748181 167707960 245908560 685422452 431539024 519885228 673548552 611418367 639786269 754704546 911596656 10022999 144144229 1058387430 733235710 648634245 671086182 71017380 152591060 298340654 1063360972 423462150 168659266 1036317269 651370229 723617571 713227220 1055177075 264476530 314223640 740825684 124377583 324558446 559657149 445473672 272701910 445692590 674990670 811623670 378613694 899008268 661222610 38186322 483042624 751930299 307317456 281308177 871933350 740838313 849184205 1052310688 143827495 514654689 405124983 639403324 816503133 46626573 574532453 754040012 478906740 927764845 322660829 53071329 147694917 897368030 1021909760 145633047 130321841 507640502 158319797 282073606 899343405 26952046 354034218 913170683 245604798 484171745 601015301 827395304 32355372 89747764 947604241 275259083 708045886 550291925 370445144 332214362 818237658 388989967 492070120 73294169 831613475 450950940 99293872 766966063 920156599 745387876 774064887 632361249 738023636 772341013 25619922 153352197 662436443 961355628 971442648 234743353 247909896 897243116 321338229 11280445 277824821 257322870 1052278020 236465413 309093440 703480743 379079550 443217113 644762065 778256285 652154850 359426554 1040989232 300647253 543570797 601652227 440453381 837713921 217918084 130539237 211071643 581739275 778140120 597694279 816285565 16452489 888788687 202966826 975729548 1059308091 411481249 368043866 74106660 200909532 375389952 196473955 262832760 1054756596 683141766 41266017 692332003 752171047 1064452291 98503744 218330023 560219351 445847795 185195986 488428052 888153908 1035603583 702087550 948984058 68186096 248378748 966321321 56571525 844648636 361875762 427491300 425631984 615994298 1015550789 691780085 77234093 431705520 552168491 612469000 367975386 241582268 907091662 572854297 393114251 894985439 976972292 878414783 307543273 401975873 529745652 142145741 322738289 922446305 680042579 436759648 349557987 948625356 633969349 894839200 354850997 570962864 511693812 503169477 20704333 562561331 302739431 1071519223 339817021 226173067 801203194 544244901 885826307 752124661 41689960 1063080202 601318318 73367543 712298225 571924225 224886897 307945459 119025657 662525014 54904890 954474156 122806929 512414485 883849115 649079236 443754619 394987234 126479427 805793063 311992690 740396774 244625650 40598316 745295579 483965122 770285468 169181167 183033554 305798216 745697092 418050492 485147632 58239170 52034649 422013701 270279544 121257536 203686065 954454270 15177349 822243484 440894525 231301408 766222917 546114735 69940221 951159973 754399298 841090887 305921483 3531989 1050840601 17084863 206219327 584788979 1020272740 235758340 786414088 242434457 452951600 43983191 1003313678 845968197 672286588 167333965 131402875 460509089 950079149 213097052 851473871 483511773 569586577 404794851 884653449 221234600 847644029 815120633 273730170 980098993 859028102 611137101 336343660 693840741 883819208 351329526 834668457 515429066 139092320 790870246 196234096 854452073 170231703 768232676 957745022 397407555 926036210 394221882 1012622179 390540160 364437602 685558270 357979508 804147600 216080992 913807727 203298776 733208463 899548392 165239071 950165601 813653811 949111574 29313109 912313588 161141094 913668578 97512450 393087839 683450861 398952948 260961543 1038947517 921147169 4146449 271012387 579108363 810589400 405246182 724572536 134790435 672006081 770144792 712806396 1016141555 437173660 757393034 182130122 593941796 537073954 190322346 775951654 244941889 363690175 753445402 955052130 119064945 552323306 277601787 833724757 200902325 471759020 674247229 722959359 423701340 934047894 988683202 387684219 222296165 713235213 76934769 676051670 306088222 380746663 616886990 1031252123 984691523 176911683 328701370 375585549 538798977 1001374839 253706460 279203662 807816652 144507695 563691136 540000438 659731337 422442153 906274279 379701948 136391269 785743133 704296472 940504973 334385144 516189552 212480679 1051074462 171591272 241337186 402876808 508275554 423071983 669704879 877319546 989042793 998803190 885516901 134337430 1060083767 719272518 897078639 613004607 555735545 594763225 239832320 698292341 189237763 505363609 795195435 615884972 933347433 907159327 399424221 794861102 931433861 31643641 81067492 338035160 594063104 277685237 780640089 343595541 260443988 768073920 797014765 511272447 571575815 248415777 1004495940 844511735 975069161 463709580 738785425 663142015 288274271 706771864 499161998 417339773 46587175 272725375 667917989 33762141 1059246574 223571109 19428261 783659490 67344321 4500411 218126055 97332073 79726812 138796341 284245664 500037812 906047409 382393754 837023693 168854955 895547135 874596178 664369328 1011110208 71075039 594861582 945864029 33046524 571421940 322496846 483007411 362419372 1000545827 182816950 582150343 262259871 308962235 315868645 943474542 818631862 972333908 881378453 43280855 35711329 75736787 985298368 210751890 62895361 275669032 848445823 595983299 85071364 298944312 257141182 713926410 85824170 950564521 655686814 235938421 925424688 109656950 777985730 363985693 996908645 446130506 526740526 622228784 729139980 898476367 913625619 511410899 336646699 47918089 807949271 993417038 319622930 875266591 946668608 299794709 203660318 189317201 737927555 284884243 550308287 702446970 766999526 508737280 533644526 964706715 502225884 188154808 427065477 523595391 574593927 181292265 600500336 331342236 897367786 1065872225 680882688 276196536 500891034 257546995 944189432 498463521 956195615 194631250 1001489214 749667817 642676191 629078101 34350355 582625310 363071035 177544728 252337686 9489071 737287476 926579719 1041213094 355023285 673554115 694794224 588574777 607006790 836983064 941693059 826455994 357217978 530952328 311064105 604459868 521648252 290707936 181930322 686472192 1013943561 162261245 794429095 384694084 877922904 494503379 745418976 226447605 681621886 1005919764 525728581 375557471 593970924 702990272 1062537981 616370306 184132897 532191581 1005332246 772716422 76112136 857397824 976013874 453848170 88611229 489223427 846776718 13987589 364603929 15053814 971792653 718933515 446550499 373945840 281471668 535281384 1022034568 257358281 248602674 461512487 228402770 356849603 718739443 948573024 435702246 736707359 302464234 647530456 956687906 932500285 349010562 340807635 35647642 501946705 346401520 255709121 823516032 606395515 763785364 177216190 222820666 766669567 53216595 536008146 200965197 891282503 256830802 561087903 409252665 878008467 769513366 196771601 28232178 542529259 506698081 903677763 755379657 847186919 406868595 600852277 730777069 656473656 279375838 92121750 704950708 169535520 503481043 39631806 120173139 822171938 14670999 78212662 400633516 590687158 529585888 925862474 166977140 893983455 316617429 988181652 916786529 783572203 312781734 378927650 216330984 1004233660 788755617 476331754 316965034 398282561 494159624 2525618 894121217 394668516 627883773 559439006 984502899 99468253 385985100 84678770 272897428 237948616 936384498 467714118 527890321 242588180 1034363529 850296777 664029094 935185857 383801265 517767306 453728594 755640649 127130276 555381889 664385384 1033367417 978514122 336492513 267031503 842525604 1031932158 576495344 733411406 835920558 1054287677 137145737 367695372 751166572 1050120785 387227232 177985716 436002350 523382907 135325321 750798876 120555563 800371684 903050048 169965500 192337821 474609634 440055273 1067514536 582316444 664067654 108022302 917152297 820693459 886200008 211372179 789652056 575882032 963960481 675068208 430807807 892967081 94173777 1034369269 700977724 948729735 314098945 121383603 767229693 536499213 963644945 243191925 183130124 39140368 329833414 272764685 683066936 871973631 270428470 516682842 830480461 1063355492 1066229604 257469203 35425920 346631511 978333021 996498612 638281105 412709552 184615031 482881398 75634319 925257455 748901477 758122709 773571870 363244915 778638753 813219099 1001193809 464556945 969084399 248492383 354356346 107011775 313200429 750051551 327509320 555291583 1047252378 1048518876 114418618 625181348 400749468 90720525 561262172 209365340 827003599 891738994 334845735 646030840 23127149 837759500 501638996 155369104 14135197 469739868 1050261327 45249937 454198056 486662662 555237487 655876668 915955257 722929066 555109594 982223410 476660999 719748120 251463285 571026142 366682409 656798118 309311683 363535545 398198687 649596332 634501290 852745905 1021532421 121042239 907112095 447949585 681564359 988908494 875732874 688756381 683866218 709621666 26218466 45248652 64305783 423448622 846028525 501149770 480382953 25643875 368730064 789841475 433740306 930620345 713933828 288870798 529941036 81658752 491498089 649520168 914109393 182610191 388232636 1024115357 752914189 904427086 1060582055 592959194 433877673 606741443 582064203 80332913 328679761 514242845 555418296 890848846 122384325 968284177 526737544 364201602 265255384 1032481891 270809732 197006377 986001195 182737722 599443428 986323397 939497904 603967691 131654268 826740148 874562402 415761505 740400281 76378869 583805061 745311263 451784813 477498318 650485243 344249221 944935430 762192631 377833909 809081510 440623176 1053639281 529678995 560553682 212260791 884795899 97295542 913003257 246305786 93196626 391792068 729230536 591119480 609654276 515128184 217461402 260297720 995259995 779771768 735641467 362850727 866795018 362912976 113107083 888628051 780520796 313461833 1068237038 571669374 583093330 340016873 499919239 774924609 829262535 205831300 665654903 171145761 640515774 378702723 417872795 25490665 646753515 897240914 151101568 782351302 237712162 804675831 487256109 339985107 466771438 963440060 555589945 550787103 61005409 1039139600 1040595198 137518992 48913313 35710503 573270761 205184300 612650353 561388268 975987027 901965586 538065076 761635629 26268008 721847455 339551367 476942072 273239584 59927490 339044080 582463994 338881952 646055366 560676938 1060937341 510343036 474662387 293921764 234030997 628000344 607455487 175715176 68817314 114956361 21565995 647884392 813242688 323021382 586846681 254798924 1058044934 161241219 719745740 100141150 61685382 872414541 742647915 188762483 801126835 494081740 131454338 917282252 493377661 27352491 595390114 331125362 168652831 705720720 265291453 405442387 141828183 73518621 444700635 629229471 1023353530 116751454 232294267 925645443 122320224 724563281 855769896 335625807 1062181614 684677761 904544771 601458288 215481393 1036121267 794212914 680358953 94140419 904021616 1017339770 1001729147 527305253 297825144 443402905 1012267185 504145405 269735284 1515217 332822981 336866200 407514307 93123415 715808321 1060389233 434721207 47926361 611630487 77727487 674265639 848692111 777171703 165256217 920139156 279249703 279440413 73738200 1032215967 608889428 900004403 36514639 175039582 235458434 978738829 862434467 423625222 195775751 956551894 178998862 1017968549 253208822 133499444 391320982 841975543 688134353 551739713 770483029 441584944 70552904 71500983 449368260 257613578 1022029982 794929885 875297797 271017525 118580768 662202738 843609073 511605512 792053050 939201112 40455526 85838290 115341375 844767067 322665801 456934467 861683436 141070970 624808803 224906249 411384814 294763363 38185704 510754291 210868024 881548656 229982404 480754940 487757909 792022863 1013505435 176647528 414448225 103615538 715487479 333615664 413037814 413527502 869914853 543308435 848520072 787448920 519909267 397923543 484371604 702464712 996933479 1063298612 643238885 640641313 414053714 228947718 612228522 501514227 486098648 869896021 950540141 550743698 944967371 20917456 486614660 620115319 131998327 601130893 837743670 286976990 247649900 520219467 4887700 690011719 1061173228 592087813 834344779 862228240 588173815 1037684958 722658325 352709074 254760682 204784616 245923495 602543667 169426522 591001414 540376903 379989942 809157110 377749910 840149260 607328734 245225639 451497788 826526785 234251953 952233074 188804887 418617470 210878291 37504211 465635348 1041975760 301082642 147670542 238628183 529602562 304438949 13812795 506127278 986051319 847973845 201290265 799312130 1045817153 787548207 345567944 22461974 155295747 463556116 450401318 252339014 317210731 58288783 899068366 372991671 124924605 709381583 772383233 874669523 725547107 625237887 939296483 949294507 694886355 50380451 990382501 258974836 403180123 206940907 820962056 637357000 533611664 499514199 958870164 358970735 605052975 663496028 889889954 254390155 807412354 141785404 187405513 30196474 281342945 407320963 553370886 121681886 740542476 550165561 212964584 221346920 709869899 42191618 714118861 287812675 774542102 955961425 786614231 180130328 21810136 234086526 956762314 672735925 899390338 812781337 628705428 636635355 869779899 883643661 56986903 1049514875 459998493 365841574 142127592 194705100 226048397 1034959587 177410283 385089330 836902750 5058333 233546309 348302795 98699270 522909310 404978999 268736847 246218025 52691569 805113182 910744406 315899924 166085448 339993125 543756407 595731615 856709754 1057483689 127072495 588124089 551707313 1063110295 980973855 29051369 1026941469 1060552619 330360413 354534690 791582634 677538843 503608839 714709001 762127797 193308916 668962705 246476060 734642866 333274341 342874471 149452906 853900628 364969277 964806817 300902059 686645301 860367958 878588872 508701142 807153734 934257279 916606241 125375358 347021210 859270386 741413102 688279453 379391089 805457874 472667085 625837612 887850154 811971074 514734337 390429697 392605030 224952263 978791982 581844633 423245959 733998533 719166586 589690248 767808175 157928497 15199609 224974905 467572040 396842984 22475943 578576092 746345581 613172950 92086678 819636824 850655480 918204572 844491904 106799517 294575277 662241055 836431482 1032292962 66578191 125404410 862275751 330462552 327082166 930617053 307032943 70887270 543599651 360835532 18632750 462791555 706792213 699602615 952558006 277122594 782430256 676333303 61270437 596820244 1072850865 663039497 424159284 356170764 930032684 493617202 312796586 383824926 64389142 621746779 682456252 728156250 548369966 424689717 383948428 1000031621 439250010 613523787 870499119 793102547 374509254 882268737 519236601 319676526 272540225 236421448 174692236 678945650 449511379 386043460 856478090 152934503 702678143 548229910 833061705 934657944 943074095 243952554 518744442 655917801 797792409 402610207 82849881 822634258 203588213 30028817 446157321 855596516 413652188 319329515 598433340 519222205 988506694 747097277 266811769 50826854 702277920 566158482 297326136 83847804 929197761 204947353 728337420 827948054 673029236 53189828 635601528 457563866 215819701 1066891321 600434490 1039462032 940394464 9054817 583864866 1062876538 266912249 316402574 1034311390 681065031 311295625 408718136 253423345 24340198 6099493 585518836 291004259 124253641 993205922 535865903 533623397 235859043 538459745 294200399 250917313 815676960 505422972 787681625 158860713 394612583 31331109 368274403 982636933 907317060 824048626 42556726 568629540 166511723 214812592 629343418 202576035 301509554 342458808 192178608 960365998 933360669 1042759649 22432180 202835164 466626242 331251623 124142062 296550419 532357517 938206002 245949086 1047195650 70969156 169164213 710078603 544774938 35930609 337003079 85150825 436392388 464857063 904414883 276672424 295641231 944016443 205935031 1031694205 216186650 778558384 465088918 1009002725 179927930 813782084 214231614 995501122 816247287 723011827 422276395 2813408 393250793 49475617 22007728 171589085 566578854 153136 993281898 148763162 1070478142 233082233 341780831 335794163 42536294 895886 293533434 366338859 628049651 673941572 150128525 869009045 521276829 807811199 815312249 840072062 422622395 271922934 228182142 574780862 1062928183 728130303 604879832 483763973 394648245 894667997 740218970 83175586 947057825 286951750 302050998 35938376 1023167263 723492575 48988775 807896380 170833078 876276994 575179208 757036422 358121505 16760679 701994359 765509725 793721427 1028485965 503907165 628805428 295280563 320422023 782128221 1004506410 401742500 377153108 463876689 814732187 203605973 1044166315 285533354 968969994 715839445 245769684 451911655 976821689 321201544 176837756 782399715 233466940 938418321 154063438 949530747 1039866532 1068863894 1054580614 272902970 711396788 689210079 33974215 369075693 117805366 834986876 530848852 405628248 103118548 973629494 214198221 59189730 4603844 709922230 253877657 420914808 931233383 171762358 739537872 692208351 846438408 284425898 767247294 493212074 123478686 10374030 1069116559 994842713 526601385 231770600 841127845 889292912 853962506 796795364 412118608 479715307 120546515 208254016 756637203 590042844 468277718 392997776 161589582 1021830633 705624379 35813941 894604807 21803426 836742839 513642963 730973418 458365337 604111073 730398471 796222493 378239113 645884908 762521218 285070231 338377190 958573245 922617057 860118509 78830303 790084454 469654099 795873953 575548806 351712963 37899335 1000939403 599929533 696411474 431721567 758599419 243148929 457439897 973374091 660749146 242612585 565115199 1032979124 402853510 381997991 560515960 219858867 400181890 290170224 401357842 1025402627 752279123 105220319 986994669 390482041 329122035 778495939 423543658 972635802 203758892 11928870 97431698 24219039 695457502 7796756 134909721 987744135 880812939 866136855 331976718 836244508 913165018 243785072 63243283 535254832 636964324 100548955 1041522891 588794842 585763396 273274930 449493376 991322103 672177303 1062069383 774443003 33494515 1039358740 743718804 1013894510 630931181 676623244 53401447 869272178 410336894 212665878 1002573504 995975942 618067531 189475066 35024515 377685181 656993118 637717984 597047824 223454492 437815995 972866985 219000304 938895332 419136042 166872917 562791809 594837557 674680686 87176291 872882622 397044183 7084598 261855125 342723311 212672839 510254014 1014597092 464919305 27603714 16599439 1051687872 1070070101 623983389 694358278 972481112 490930144 216156656 931380498 36166473 369898833 918653509 11786415 669578065 32194804 112975024 967188746 130717181 497900212 833661820 90332681 536245589 204050995 243993041 185467214 676441432 151082486 788332010 738436633 824884161 721264059 337883037 261789346 293779540 327232077 884860121 845461699 252178261 902120388 785242315 976184875 413380250 212125828 730743952 250646042 810872162 593371214 435271982 24977702 930597364 77910160 220867788 878341646 438374384 869418019 355283094 758811399 664108103 235622595 3344158 570530851 590357894 464242889 528535347 316284165 1012597705 321048799 302616717 723218796 355706589 946964306 901332396 351107965 738078725 242493846 871933577 666255980 52852179 927979988 68166365 538250028 251471553 134331072 350999787 548992722 1042769213 793124351 210284754 588790128 653038546 495319111 970611955 608356447 383302918 594357503 594130480 50162750 981386864 580863258 783844536 955843576 1065147649 801334613 373545934 642902939 1012353296 153310933 196478487 1034556586 598189455 545996077 389901524 437790277 384984859 684880138 316559767 287859097 12972646 806038897 612707311 403291034 658657748 722824584 479711549 292940140 604275679 851812692 619486752 786068020 516956407 338446949 514896123 494140334 565631128 459942139 498255159 437235984 47527403 31324717 1047152401 955435995 102168358 365030526 931549746 537398958 407905282 411329818 15843461 1056367057 545145499 210823369 141054286 247331729 560774946 602489024 628395258 740193648 502312310 216359300 218868960 875882282 174802569 1053966602 126119041 400813236 672044691 356436175 104795838 467218562 647367632 555774091 598636694 294743021 299223467 820933111 836272770 939729090 867140075 881389227 532897002 858086837 884905922 17859075 1068254523 93069825 180263446 830105983 9801362 71937563 402033397 326450226 878317003 112805202 10367153 233658212 111183025 992858595 306284165 824167062 107213186 78293443 680461260 357748699 806443967 684260264 865932870 977836121 644652090 332566054 92210851 986026446 189663697 757040605 941316393 26125812 670593550 284639489 965553250 117296849 95781284 921493776 68936068 1036704168 500716865 330250210 252894123 38791724 660901354 87698662 946019791 1041614602 400396784 323009702 178031685 680702892 807961856 193155459 208938933 807401959 1062637711 809410325 970023473 271410071 141558285 604819784 965317562 722124756 684746668 560518405 184074055 124635002 35635852 200534192 550923410 805332425 335341174 719735866 688093847 812421258 356532774 556085946 557640765 531342766 228587215 1071467259 601664750 644649090 482243515 74424886 986640644 470269556 821475264 817103464 6852077 747100301 530960002 823772796 790806234 902826956 924947195 405247986 93080362 317694492 334093000 912513066 726186936 915523473 765964088 394754956 958255877 172287660 939555431 86498146 1049612887 432037646 1065170285 474692325 515057555 207897207 997398801 597848642 349198378 579490400 1064141539 6242368 512500719 847587916 46470704 344138516 664854397 961423449 947965751 927369365 771500624 1007797 973467929 783174017 1028816008 505410626 340062103 1053793136 397754626 309868345 616084269 1023694510 579307252 715730518 143650121 678180829 916733007 867417917 463753479 635664089 136210841 989729217 738182303 545262796 158154770 471470765 327381423 954036619 367144096 925121954 402983580 105558148 810565651 1002677462 63196309 167099228 891849965 151219767 29107708 892292187 729803257 607679459 10188372 690440925 639417685 416177325 1031437272 664399684 490768674 298580536 816519386 361273976 214223237 212845430 628452704 882460327 14212831 562526971 354708010 297156467 607451780 564482423 403083621 44989745 501755460 717909869 1001092493 478472706 303029320 735756613 324520646 643142125 134671496 893871752 25198791 115582591 230230192 42404334 869845102 100583384 1036521768 810852119 939584312 199357156 907115160 981610098 1008538055 654936881 59776644 1025327478 96334591 519848702 678751881 746353023 81011411 634446927 771241943 644507063 854681746 985015750 500144745 949870736 716935095 522891708 967125176 647067089 298702033 1043088395 680064466 724820181 451855976 714260765 378572020 89020851 650328473 599177261 549787569 883250933 370151894 398976256 506123758 875728419 1045225903 41477287 707884285 469799068 260982037 832966356 726495267 170078903 578717998 255332595 148827029 835009841 160813932 793599758 959497761 280033416 399159934 554894347 139304320 840506440 138398632 569827218 528674776 383900009 496830510 480501275 190880331 688332384 1061100824 872409833 643142060 477888985 712845279 798211981 594852768 724120835 238937383 851157518 891725569 677964403 918613651 627824057 822980069 1054545607 333813502 467655176 199991656 859427041 417441599 249500288 392947036 376388405 220137112 467035249 46228604 214693441 919692951 951221837 472224805 1022480132 595596050 414249731 670199760 781817069 826183519 845143539 368788200 416299171 13187094 597612926 525471172 215425028 407292352 939973901 983730603 510692654 70451838 1019962586 240268644 736704160 42076752 358461937 900045136 344165135 60801395 981664152 697571312 65492792 403497920 1001488463 544990168 246274697 188877649 250182406 766679032 1052260655 328841371 338260991 3257454 1043941385 987982985 563826594 331434672 124300615 614176442 586984659 223118846 1067391470 221217561 778357455 767284584 176643041 16532652 310824607 443146938 249788005 288192864 595490034 734114627 168704857 408009376 1024230805 965543973 1062514169 877400417 2519172 123524511 236506411 580917662 86613526 744087074 25864259 827889821 416541022 492241958 896504743 727497895 611166464 406029624 216274616 9036527 628353990 477657099 38276090 241985042 309499377 858857115 693611119 389560782 731837283 795738965 740475892 344504869 418446066 287644405 854812525 420716653 335083206 918866404 890733504 449291711 57262343 430325682 302338414 836619027 633238916 1044093594 580181701 235763527 319168630 951742664 872973577 699258160 644397477 194421429 961781267 630412943 248298701 904284909 838140118 630089938 610047152 977117304 160025804 102159682 883801470 230128383 17999497 197220884 818058057 174173530 94065390 242979794 1020145153 767148117 965231238 809007204 668309681 109546186 774425524 104417412 497978583 699218019 775713628 667029544 99379300 612229989 707306841 1063958326 750480377 309065251 458526510 728533965 531252734 861486422 425629100 494492715 354345184 514255017 1022175016 483058784 117618696 339869592 619312275 255480400 960638846 91100428 740388810 414144082 208752710 848087243 687098576 77679718 160585039 2201449 107531138 71490769 742045594 244900136 747455737 36234203 150493407 68977816 59996870 336195195 816241705 120561047 778487223 536586066 809953468 48959064 76333857 262629121 962088922 147899420 580686647 2546170 443845388 258202281 639261141 464426161 178207383 623516836 796028223 128076488 40605311 662323924 705834539 620336697 55955854 95933564 970448280 393621868 301834167 455124882 886401514 696389292 1073182735 359641124 789846874 805723458 496972755 406741118 598137853 279148315 182824578 859887636 1062087624 466185262 58300605 804252290 393017044 873393664 31643854 363277234 1054747630 849037551 807584187 373162555 971490839 424058220 511413724 245117850 138814419 797247104 511371351 315425090 373094506 473394023 513819601 478210537 258125664 47166835 1007826348 351720830 207119112 296174457 60500161 976644888 522551427 1013093885 770924464 1006115405 593626056 794192537 448935757 926490980 691401531 465340410 996083444 1067537650 1038720573 657794551 116331293 358345858 1626890 349166881 1003975825 671942823 973733547 15415611 235839293 999282963 602570338 166106143 865165906 459882814 654514119 436520310 262857669 798356676 673067253 530410894 929928187 1023431295 833969811 919641314 877202540 15022427 363398029 145778048 957936842 570932155 342531170 495146312 865487217 703551788 881406256 398219515 107552235 834693689 956224206 839117118 771221076 525148283 907752333 445965045 309709207 875102115 528685723 544295308 227603937 204568816 141664473 205952189 316682741 866694503 23830587 29309652 577431270 548275841 1066116395 680916289 509223616 848317425 37127051 106820713 1993263 254830170 808428419 353760279 46581766 349994937 724303049 710665524 109961765 936609946 446758157 155888624 227431909 147601888 241646389 140698041 97865616 979595048 530143563 796554545 648155059 480574358 168160508 211512095 502064707 542699332 718026844 450684418 28939089 99016437 1050108480 943110014 991613852 364331328 99505371 404509021 80556933 944963180 773622679 284843302 187166956 224174492 280124189 710530022 870794826 466023310 544071786 801699846 892866373 248437962 963990420 784397153 26896789 856799583 329537729 862553186 219149834 889232940 611937853 719405876 1045068129 825309193 3131339 512329451 333413759 237196804 356019818 89972430 510114718 71289785 961736412 1070058429 867142498 295737627 202738533 102416909 460312610 76017477 843197012 237338128 712249260 119404203 88208281 950102257 298566866 142761853 182239757 214320427 330236645 208888008 547569590 961446198 798179253 297261055 584023677 334533120 788970639 276207046 823906385 1049870565 245730784 636371875 164041515 335400085 322568961 208678858 236686324 230481832 531292473 663211198 925523352 7295980 633891702 28243614 526390472 237686806 463915095 996692685 544739159 672308644 1031464900 732432687 542464993 805544710 891392348 18825683 760100922 576334113 705590851 589332531 765098396 942883266 224866696 363959177 39111898 612582912 319001376 480814844 853301247 580592973 475927839 929055243 617472586 71671601 20488366 246575350 784098230 988315285 1013043606 918628517 212162557 24042164 642202489 181309908 475920403 874970473 186071927 360795000 1003582111 117533763 28436082 442671234 495073769 805992777 404662581 80705968 780598339 1045187898 487189259 731144705 662524973 958355802 51221588 917363386 338669604 475249566 574033695 168659578 295451633 355790801 622388392 762256172 290783840 713739235 267702239 119039995 38869004 918877153 694292404 226622636 864651596 188815367 219230078 729608399 1029775512 276577115 199765719 55602340 870591596 726979355 512608412 215526049 201088598 622714601 873259558 881196099 137194119 658572001 578204940 278460935 370692373 242460075 562401349 660825363 985902357 694313435 997659274 920874235 742069939 79188576 167769703 124478607 944760686 709594060 351187548 680790980 305132553 303452881 136180123 684482917 335459988 862713617 409624012 213723747 645470150 374089979 273218957 504263814 584318624 637379319 241764127 286149533 157273154 82341834 621188650 529844799 653993888 996454469 105352994 1016159089 48676870 748863419 255660534 833751457 1041543995 807146577 53894461 51970594 331756338 270620934 365638387 242357128 26467096 538153136 923586509 915058646 538908044 46025899 1071153596 587564840 390782193 747769290 327045435 283751550 570649239 89966215 893526858 245413748 419159602 959109083 605675705 558237650 173277133 594895014 707517264 686785284 590074047 652299964 327778465 471194880 1044756018 110725532 320698240 157266808 938430272 590966583 552976065 857359556 176192852 979200936 862250777 857163212 7875422 900532516 234512978 447260771 487136993 726278610 1051948204 964554977 833124907 917846515 1011552725 641579685 127506495 54328450 747041108 80337421 1065337882 906067933 947676085 49172503 652025397 564143230 326085235 83182283 627489600 334215249 943425156 879357996 238321259 876658347 507093838 4243718 522777190 326866854 850372567 1019208701 130497599 109409528 963119759 166658471 364522039 314262020 1915387 405867432 273236168 189477395 545975446 556758235 474500991 1042027991 338741742 683384161 550839337 891887892 500602230 877434571 956125636 721182187 12632860 567841895 829059344 59703662 741020468 2757058 183502177 388799948 112347639 630620362 58322554 615168572 1023221806 137475080 492674090 875846451 201776177 431807639 218189692 242592064 1031037222 102720073 398203305 733753651 885158978 654013399 731856339 980836109 721282568 868103843 780071188 85183075 153337201 226751200 873850094 234505566 669856318 19572383 236492804 1022196097 58287765 27599925 518339572 861091515 304816777 633931699 516056262 6285930 111275670 1021155351 533924068 368884053 4970230 245603126 435897708 972790350 1023164992 826450490 630046882 95828446 66790465 824043911 338827869 508561257 511669274 1027257750 812615170 454491750 747942278 436979536 358167894 671116168 570058611 439752954 1021490701 92777609 193973214 485471351 136765877 201668383 556140816 138559000 98758515 270476227 880766606 485767083 544323307 736316774 987831481 692936586 564548490 36657449 994553113 228938154 733896629 905036141 1034949694 557333617 984105190 942521368 605369241 364507146 99282928 425677264 601519318 308426259 825554783 88733911 172408210 301009450 485212020 374345661 517336611 945041790 880699605 904286094 330977258 277097871 380703067 154519264 632352165 255620793 642962441 715808194 1012315449 722028920 1030191112 451239010 632946877 1059600279 622607427 271788402 52888856 339952044 330778122 97663427 219010832 683611336 3887320 539361801 958399939 670336757 104802939 459078246 294764565 741381151 38558881 471300576 968498119 55764085 150347711 192496457 226160931 524585961 1035706230 203363125 344095177 778698124 1008877251 1009969250 173210278 907936608 664835653 210671446 182242399 147491521 699797710 1008225445 233562191 35706443 588523272 1009765251 755397408 110609142 6584910 5829144 871539252 314122915 197065809 463960616 721908952 385393528 659040069 16636539 239970070 948673618 502930515 694627271 914089577 941321598 623244203 438966990 584854134 65842747 908280219 370688349 1063899473 869537170 142595323 738570130 690216934 240196766 213416031 290685738 311893351 456622439 540975510 520112730 1041267584 473325674 519148293 119928604 104451002 465107205 121991401 330093368 558975780 348242996 368149770 59733587 407176691 121770915 991005251 374930808 10218013 796266037 12851937 9617452 470430188 231791056 49667910 594886425 730755056 624465050 592465419 66809775 194748287 858574935 86751953 685939197 203444666 898550651 410239832 319305543 307785050 83847308 688589895 879764519 1023428192 546105605 769978451 1049412181 397516129 651738818 787284262 381616390 734412970 177600282 1047308862 123882520 714739180 512676745 1069961548 899842473 570265969 78890842 1029545332 930302620 685019150 564918804 448771651 237084698 682369055 802300242 1017859316 636830768 364073973 170234591 606801072 163095176 183751592 12201786 290552931 312113638 250057980 59448351 62898688 69119574 1049300459 407231319 546911681 929926611 145382436 977442425 988673761 391787146 792649225 957475302 252370919 805211627 379486382 500757115 485001326 546180142 116077011 193001462 357810642 44602760 813162648 655735524 44777206 902844610 1037595486 153793867 28274653 65567298 318752219 633963511 13788824 20843331 525240230 116644421 599941927 909511844 793379293 597245274 272292251 1068663716 922702141 1017599233 983036078 100081532 805723873 655390144 1030290107 1032078484 299831528 237804215 830449139 913910870 169062047 186716178 134956315 68945147 538752109 923453283 819615941 968690406 913965318 817938384 553389864 728057248 305882078 350002171 118241448 394934059 1001694779 931259889 389346557 658387403 924344263 876089840 723056851 561627513 320774524 897531494 578223272 750702595 305298845 390007616 920897082 610820690 191092038 387802588 108596192 176271163 677791874 530932401 194880910 92674883 934668958 242532099 477813996 1062275424 752474320 328665572 920433738 454346911 12886828 385131654 558185725 796268055 364027826 785138463 524447892 901819229 192164734 752556428 677437696 750723230 573214258 746533774 87212725 321444964 295688691 1003431635 707604826 1008649260 874445070 630742445 847204606 915197265 1040430968 189684694 863607671 335089983 451151952 377846915 121407721 331724489 673877462 174741438 966869328 962241746 492421900 1053159715 953074245 180353514 195748289 209348316 353014858 685263570 198923628 236460230 1043977144 370279369 795063845 174256804 336976615 264319823 307652946 540352156 66902048 690496749 963187221 301022978 568046404 870489193 430710036 1005258753 30415778 394265471 101540029 50865815 972136015 177646710 129097506 410528631 285523239 122342629 62343747 673913311 596765952 19051822 549309704 400546424 3147372 267391742 961273257 507278765 706055610 484999468 710270054 1063686791 564672282 294550787 430244682 184622138 118672609 580469616 70473401 749322249 576146425 751940979 1011408901 538571567 643264152 945589134 584614924 768364781 914112340 426712313 139095295 909633961 280913146 435170460 102334732 278244805 722972115 99029186 631165715 795817487 10558113 869570894 352768170 874982137 162133174 208386713 571891564 432313099 985899950 907766968 378596867 445914663 891403280 540719177 305691964 633444522 402745969 606692828 843416602 816302720 125593190 778203308 327686936 483351802 178144745 60592827 911985123 566673138 123087562 696521327 193926915 330895851 770182719 1005726953 849245828 256162964 121460435 156637730 1047922864 545422818 343583340 834959018 913197199 1006750064 111353243 987663725 949922675 93925017 468766757 523018149 1042683479 758008447 317833131 917387754 587873407 160263735 241793079 6874102 944463399 534424975 480136303 50461103 1061193082 252260302 607975808 493588695 738825420 707951734 482763327 40533042 257012026 886487702 158237677 942647746 909829611 342978037 557867647 45628102 947015501 914358345 579951667 711943130 970469475 993986940 396701414 151588119 54187449 1070688925 187324392 959931779 1048495885 613296039 1000193812 526469627 82602527 124997338 872101914 797152992 90999609 892630934 916409584 829613231 795249949 304717645 738275399 468345431 261279178 526280776 104386330 725593699 972899412 676477389 207377509 539153732 197966639 709057120 762025919 341633994 128673784 281147323 988485149 298328613 574022957 565719697 572136947 454293041 785372292 3861051 256628255 807491235 89840515 637778289 410130828 535339067 772601864 32392916 973693535 399221712 618485276 260294693 149558741 317527645 401777499 420504883 524566311 1000317362 117652384 72920518 401836928 396462059 500660161 1037925380 996135249 2756511 1062572759 884355760 260038683 419948587 985884296 363915737 345361239 311810109 812349736 346560430 386696793 347000575 116700510 757695052 252047946 813667725 976322162 93406364 282934769 555770181 958252019 468531364 598095116 548278474 621666851 827664582 496892301 1005252713 581513809 771265714 864001782 842449859 830155173 998432856 637171051 1063299740 1053415862 449089761 366599154 543085160 1051371491 894538625 836325028 996899783 839593480 217923539 1050809989 763864524 907932187 419334957 951892569 926274194 783886484 790250145 728209473 876258121 341508049 851272561 198519693 643288795 166581686 113310340 432163816 512028869 6861153 429664230 311180058 732917069 429502806 99460730 640454641 751966738 754391230 134603041 675209076 639585181 1061013334 425803651 456689003 433301574 468344421 473072359 602379772 421415234 975502510 561147455 183297704 326084639 867125224 79212963 951374671 624599713 318762475 114622932 1052903321 1016154215 793123670 689659546 204596621 1032330687 1035738242 964012035 10466384 1008490988 915979234 424102669 943038760 305744986 74286776 58763860 1073469651 474136165 373095300 723612369 1073473125 254477930 37552525 774499338 704078876 567673711 278959801 704440280 532356025 289574120 225522803 280950205 237447693 47268912 129517307 524351691 321062156 436100684 149177611 543716113 866576709 796966320 756574521 729759478 864975626 286193645 406370399 265190372 484080891 407925182 112204587 160856988 67351947 696413755 52734531 743982656 651342492 774887928 813520110 872573459 207093147 462690427 204612371 284473089 892002399 235673588 903587663 529026539 494866604 135992035 1025280338 766262712 466345688 289441427 499038382 417585972 743686811 939978192 401916801 739224970 806435192 813152747 78870536 67223163 971026829 1010147593 840250333 911113643 66645641 1040092606 47436527 582647685 743709795 733129441 57312595 459795565 538149294 931551422 290919016 131696649 78990670 607151323 521940024 1057760027 486866964 156281738 446021450 517200692 499531282 785689790 187751283 20902176 944358403 347582141 644767594 90467156 874874619 334263302 746076226 323724333 665894037 1047170461 750066137 78066472 145940114 783988440 961637422 8438850 489835867 20089733 791072005 787167996 696857399 405403599 990861691 795145569 687272567 666721026 597913396 568734248 608101911 12451440 244217656 957461482 299012729 415684490 660793823 892616571 601985502 501213159 25650672 609399871 313055670 252128239 241807215 512740125 474530817 1053816321 684586926 436877069 707693234 620259473 1055879156 221271766 140513106 304973159 305924465 461467034 557046980 252992368 113042462 32633274 826282021 518150759 363157256 679178004 93112442 127603786 14794301 1057947903 222160739 969625340 1045601094 98612528 372704331 702865461 558116772 12997904 985657046 894963203 49177431 357327119 270091758 919614065 925249587 261970854 976244350 626554458 243513311 706877067 734015810 525724630 118848658 658001811 329164771 43998998 143971895 563022586 733170958 174125692 256405927 23223339 1043409770 904802555 392206158 450169614 238988342 73053988 1024181265 863527830 894735559 756303898 168529565 533273691 322251708 620283874 390912500 421772742 722374292 794907140 1007818450 295409247 46135842 701828506 268521059 402525634 816581201 859986795 82580363 1991962 203970586 216855648 285022158 125745923 169470213 710896929 680685826 881784471 619733363 621471581 352500494 195727373 1043234018 1044072372 831409625 597364794 574651168 406959294 790836394 410659844 594263379 94754946 132046897 39098423 630670723 446209019 799320806 1064285575 1059380365 307350296 636473213 149123887 158358840 291539479 126375055 445265793 471392905 289210448 866246961 202241552 95797971 656567892 141935164 772193179 991013118 387487579 134477203 259393973 353973258 566167590 638712699 608938420 721269942 1002010633 76783085 990957001 583912500 841452483 429244045 636772126 813916003 492766051 221448691 206798173 710159700 1064179976 803655058 898967136 104817695 97782941 580241616 45432283 392268209 189968253 711182538 729143221 818720163 240251338 144999151 408897768 351775000 151431253 939345716 679222110 6448154 468933132 60930575 12989769 871505728 388190800 378902731 509758830 280851320 389310215 365268299 181939525 666035556 904954482 414505925 506110937 303935398 1057002446 527226103 1031240962 824070115 135262996 791416825 1559462 60445475 727590784 409806183 696580397 589661556 41218319 27847161 456360767 60192781 271546396 938671644 1069237853 226493307 705631590 1016157027 904250196 700472780 660635504 454739845 577538745 146048112 674673891 457013137 313574442 942346524 376692947 239909455 177218004 308273306 474720100 1071923304 929450457 19876230 757048180 956407379 822091484 686076246 243775485 196201040 31568783 305109269 756197008 544506730 950198538 154149067 145525232 913199061 551495955 963962450 375550452 506952893 671917777 1005088841 735320716 481358135 756018647 448651590 583782677 109235566 208226710 500854512 238720863 60346174 908861635 269926162 775220414 863669884 369351442 556984356 351910938 172090550 54954864 975969217 711296411 613552586 839846943 295773251 49566319 622710156 591735688 917329546 455531506 196470682 688530066 544161822 156092009 967013087 353306727 527869372 910471345 86886462 333835850 819580002 540291854 803821166 1068985489 402362280 947352139 311823662 405481233 431836324 612390191 293997726 613603330 174211936 99721635 1014751252 384080823 814526783 833867760 240965127 92493944 894849088 13926639 266411603 73870786 268596604 277119914 237307300 813117142 880841994 357476912 840208634 774333304 625696006 68855601 127537535 790192944 608685847 977562253 761236739 408341741 651112591 449666636 959440440 338531537 749428978 553996358 683545307 611909212 461480589 1057465801 856348010 685758931 585943210 238919065 223770622 519955642 279447037 158549960 69909010 675807213 42478551 783778169 625309018 158966581 72654717 399027523 351960101 702169632 529209004 1004109122 720261782 265176263 412733354 42100660 757186800 963112866 782493392 854102276 234076755 304696970 1003453150 589524051 343968885 822974666 429099135 539821465 1006487607 292078744 858668839 1050164938 928492338 550522679 202078436 695632728 511186849 725541172 593434657 923111039 58802310 239157284 946887535 352044381 284418485 49421193 964542906 465510742 282719797 369241206 607005115 96427324 400599428 362140551 20578494 252826803 1072882877 485065857 1072622426 547367737 577478314 473856828 956014 134104440 761143482 902075043 214577884 760367596 498627621 180799474 473160719 347221286 274305313 689013195 760675022 661984922 700073115 794040310 179975151 46947073 1044138776 514535502 805946751 69664567 692064050 805778357 707399068 139567253 992896919 772635750 625436179 616850880 375798574 615743100 21075018 242823506 464313433 548429805 127367354 519361577 15391596 85181295 736236358 390203631 622309095 370747412 934639604 457121280 434730421 1012581977 254215569 511836638 402067412 21219743 728409350 370310475 962092736 436228149 257714497 885266133 197656293 729833174 253883350 40676175 989591530 807248460 887753399 325241737 157542070 133935375 726912147 277009887 569202594 450927432 779671166 973272366 103286762 222331222 894623133 626183485 212470650 197431584 662903387 82559903 912075081 720588905 160941283 1044996357 352253262 460622261 272496098 195075870 171294912 677118981 13561295 147022718 418402748 1012153524 1041988047 792332371 741437283 11393516 23634969 978312605 1024461047 595909446 1065121255 967975254 596259365 779999037 940623824 94907124 313320446 216701608 4834721 39568702 551570335 833692640 338214954 581492512 541728749 1047368167 152868801 152902997 519661129 349881421 592297570 1066960137 1000245617 818519983 321660440 178123042 409322902 777181187 700603593 130580885 395844982 99256855 80230240 135720120 86082591 980813884 870778710 942151679 966819754 1027453333 768387252 133615449 496447778 485442015 476050600 405399509 471771377 1003960836 34130309 1007736287 772995169 487964897 509720294 35510699 290172908 528020600 352984025 870462525 731877151 141360541 388246502 1024887696 292162696 118322252 147930717 144508153 90195523 533735487 362429490 465084680 363228872 740871774 69870454 757225791 293748832 827613506 24316006 5260546 1064528168 592044406 754589395 445996674 708963490 988617705 641651693 49983206 1017637249 481858588 248813955 337197976 436228033 612634213 241277782 938177443 100710367 1034547163 934674158 95829388 146200012 453712634 554000114 1017892355 359306041 1045245892 469035027 322687012 519930017 170000622 755969472 485621493 584791477 661437831 96455227 481765499 826984093 327767209 835855306 1064918289 729821086 57810803 59332676 438734524 702960279 780044631 757227883 859620287 901953823 749853334 552654556 491801255 221698751 36666752 932600928 1026692713 430060914 774035711 837915373 542158289 365695470 751027047 1069086523 616883901 784763155 370496779 178852482 665305649 23745838 849500320 222197028 137182403 293710825 723919421 978473381 193120728 111050693 681991976 280721190 426486981 1012329463 57141375 693344979 617270493 945567858 702889479 229808313 488520638 729388306 92648923 135892681 631152370 346404367 646543851 326704224 356988513 42400945 574016415 587837220 814389295 307563206 345386858 743302680 559057005 117183037 563627730 233003234 842062491 81134795 88075467 948402878 792329979 398149393 430177833 1035046420 397616996 791748640 931246207 261808311 923045593 636685254 102134004 755919575 342601088 831804890 978769357 856029359 463627223 795237556 721510003 769908144 810956883 647501533 702276877 77674211 723063556 787573650 203400769 612383289 624122205 628337104 173206649 658814185 739441626 425617059 379446261 269695894 84469876 775513941 61765411 161133784 237612604 581096579 334853035 940328072 971477194 533216227 716895914 743572419 536549815 285971751 170548231 1037408611 448742466 504547285 669305170 15110405 36940704 646488767 294269285 839080987 424694447 946778503 896283372 454336323 258844962 129593535 656671025 949889719 346086380 608011329 828066773 343172282 862047136 962763007 347484224 641612289 49137708 1070536841 658434450 833823614 428961819 772223932 429351326 278201356 600562237 515259018 401040756 1055278639 202530016 398479129 939467731 155254276 717630280 56009635 342960518 54757965 790460270 327940040 916541483 800348038 882495587 999439954 342993660 557731990 170428316 211620359 285163807 138452019 918950596 945278248 788937853 88415777 837703567 713159834 118903935 577433703 775777106 1058750081 735124217 1012195723 425914100 323416885 753184151 296279787 738843907 975110956 514737803 387988831 331241740 180743500 902966933 399954044 38486462 794114672 238004532 390498404 124523433 295709731 604845756 691337793 207409033 870335964 479401523 194806424 709311235 731476042 250372396 54837585 486396292 326004709 828034502 892290854 738085977 855320521 1048815337 165961978 278280007 409017612 806903853 783496449 276155416 354121791 473021740 7317908 929039264 1032406890 92675476 511075176 934931892 1054028022 89218730 418493479 191328748 185249775 630175318 856294564 860721259 702606425 924502208 972683210 1036616062 430485250 865043456 766282264 679452202 863160047 613619035 899737106 566681067 584601776 615756762 474383256 974022582 576772823 485074551 229960153 206414502 424255752 1069418458 923147649 934515794 888682760 7832552 270737822 641559912 375966688 836893845 61551773 987237498 186469271 350412956 391375653 288707479 913106983 612892364 445238518 317438238 445250080 283140980 460592865 760723130 380250797 409703950 251091637 580945297 911202626 718265056 803235137 35988622 815244170 916188932 423590586 467657150 205029052 330249590 299103131 394022675 231132263 454153271 838347573 450147127 278216565 298234487 169669075 799742619 179896836 831933916 805243575 513167092 228073329 966811503 1064365361 1054134226 163412452 987305555 1016549173 595870805 282198360 952422189 12562405 65343209 276588525 860165899 231759115 205529086 667464602 723511794 1028066589 174911566 481533332 93291282 489567472 997641897 111179609 269799926 260894912 725543287 579890994 780600880 29785718 149597485 919495554 92177111 28251645 614779336 571054856 907231473 551097634 942024290 30404534 689280967 1031033257 989565767 717654605 296034708 193307534 173016028 278737893 194190551 809421025 361327780 827120351 444076515 532692951 398087627 444679504 773173740 92158463 1023376195 126597025 326595117 782998646 36799775 476205629 140737804 576520927 802191484 297741224 594812291 262810888 983830963 54875914 653484571 961130866 310923848 774592948 342059891 377816380 428700109 1060033138 400633909 486730085 32626682 918526838 943810198 590852308 816241075 839191004 950549691 844805173 93747364 173976808 397003658 651311018 840945610 195253396 1043356800 404639570 79586450 707964624 903177274 545837918 769059133 161459455 832748100 1024310978 1053410241 717573058 774500754 213590026 725881901 124290285 818040200 157096515 855587055 842151377 752215428 241360526 246725170 549701376 538148566 900693302 677389141 249497243 151042220 339933662 584253757 26410499 673865083 196270197 95129627 76750826 731733464 518499982 683657474 836926251 304576269 13393124 733376988 85944622 818043536 670690 641490303 66066764 608478578 107895353 122937297 676123093 1057649368 912833602 939315566 272753133 87917211 1022190932 640185531 783219676 712032540 668909487 645771487 129819094 203933159 238534538 410041362 374119556 899318911 246262826 951357233 499291488 378068991 672187800 82320497 223813937 821069670 772076753 995557133 459483663 1060408203 407807073 459660184 261373331 652006146 273219328 460984077 814373980 163810603 405956655 348358771 896929448 694116382 744307568 893863479 370457249 1008034808 747217680 795221992 246509606 981041472 421747314 496434429 1071960051 616296119 116950830 1007143689 1003413597 306544754 140594554 625646932 376380613 733461249 832384750 266119600 134242900 133698317 399549209 907592424 968539913 850743709 514720263 942973590 1017477647 606123211 362000637 170207938 108398953 833914262 556096024 176968951 457862535 689646438 660247420 251771520 962777253 241329771 607846071 69161355 163994861 706320257 706813516 473710114 117383140 583505907 874488201 149513390 671096806 804333733 618731925 482643424 311852915 118945322 301715557 118790889 551950415 474543499 248718031 539389773 487817277 581240306 180462782 505367446 925370619 1052470631 1014635782 143673990 541503622 621721763 603440613 839621726 356973368 29860772 661542158 825357796 125179115 423784244 8460551 690795531 1060599310 136911235 760610477 39104260 477059372 718665233 616751719 44497113 576600818 925127248 667082568 1000724153 651737645 703625671 923170855 441379419 1053693430 92557336 709025708 493421358 527392683 541349497 941888408 274197977 218263520 235983113 879829457 875190939 1029984471 192762467 788824135 1068699760 34544456 738662485 8725519 70885040 162630711 50510587 936551159 383225171 1060356504 159439729 218382162 25639299 713125915 262026961 236637049 695331916 274916959 1064920977 445801101 956261170 802079179 1000448754 680685298 866622939 852914143 102127969 191248060 825970825 151651410 366792091 608829744 992158942 278212445 1068355897 286709608 986620157 172431715 878292081 1057716888 27919672 511114304 94508285 444559310 1063627601 150365372 558535913 871074777 361912050 420693555 369581127 321617249 1063097939 43339633 1018630539 366989084 85468508 693387988 633397602 109087151 970199743 21492923 61413623 739504543 180750046 824598488 203597221 918447184 961192859 580134045 1039113597 406833658 309926599 189929615 618317457 1063042394 834405911 653895366 307398406 494038129 724535629 410663804 10725482 205730195 924293478 43411381 351198190 692357214 865093433 176552209 369789867 349663725 93939063 710036093 445525551 900523433 757464296 534633173 182122600 931641311 405542183 500778920 957214360 599690741 177781477 711842134 466269374 400841553 131673702 88717554 746334511 662551778 869078269 356574205 676595326 347910456 776593882 916232973 95163226 423661550 1046082500 61064564 623296599 1994699 702905865 300688921 662087826 380298641 522440296 553806647 21338729 980243106 830769389 166724291 1033091025 479773528 446732090 283887593 719490021 285812775 236849648 325777615 431150160 88307058 324737439 304570190 320190559 142817307 37703158 520242029 25013731 571966418 300453236 988505389 991615124 58201074 502834934 1027898130 739084719 418153688 224778633 769723463 196630844 943037613 788828400 763771899 1030974340 501824089 112169540 959398662 113597140 1052913237 205745844 75192599 155952216 328118621 847359287 683962102 509235010 531757863 497651204 469385450 619196428 818129836 667054228 521439249 936889824 404480412 1000730416 33585954 645467417 595972665 927213840 312298819 25017649 531353403 138653199 78849639 162343525 404485971 548764394 377888344 449375855 901487973 249924347 618726974 1037064088 652166618 950114353 364425998 146237588 122850487 471147302 1054629783 73484710 628695079 845016696 15650761 490497192 193115181 757999392 440095463 237775637 256123043 729065611 528930410 15411928 266161243 357629507 983219632 839630603 46597683 186046424 157213542 1037906476 1006933144 347552154 937815047 220323188 965000763 647273402 217588946 644163879 789240060 516268996 805375996 849189236 633088116 587823420 846186978 512723678 533916894 717736082 408326030 44245522 697157387 352639744 199393919 986384020 478454207 589655172 385983894 390014600 185284870 228545800 998893279 957244217 1070123359 593093680 800066259 838202055 359418560 1073647715 30226382 101233832 438188597 819721465 970269809 28465871 572543395 521158142 935670721 782189748 271123088 488590533 449756021 221351005 6068586 121427636 122300839 942297605 263063400 897048772 155379158 196702063 138509498 951989904 641919703 695281331 747489788 966534853 181408445 735219934 183518144 11355624 789923900 103110147 380491004 916309039 217676111 739321935 438193900 417666622 26889549 602869856 5059350 218676137 1042278509 749543575 857493925 222444604 931794206 221464502 643768350 823670160 614175862 663948157 944379398 4593764 853279475 685340483 700731959 594091043 46627701 796111392 487886031 524088611 474985 357276336 73098274 230818501 262420763 1038743518 699668457 527358680 218902200 545884813 713255977 841076494 475721870 703403838 943634205 985240187 453091607 126313024 64189043 99201533 393042226 965404689 806426676 305681247 624003381 734703625 212825423 7981068 997573865 830036300 507619364 791615368 173083750 140782456 211779356 24864321 448509264 572382126 840164579 566054803 678524330 442751281 643042818 878120256 446882400 845542899 880667153 458241076 970417188 809304477 713337998 498108556 998252977 640928956 240790002 961157367 160828392 995690905 605640540 967153354 820551385 917803578 309198494 612387845 676455487 310190973 473221719 364267814 719678007 1070537291 173609514 132564898 522304684 313867038 326913917 527384947 658087487 934440654 200122012 109562463 328003507 605674498 1037420720 744091388 147681099 893476097 88007259 786159636 973166002 257286690 769583566 486205006 346278713 819207460 57799396 610485696 185100550 196794474 781225506 256123723 333463816 1038716981 54420266 687788937 982548556 271007799 734256105 3382527 750805613 775886414 448154476 226932237 741298010 732251442 270629338 696204333 37808066 743293686 626985896 770747228 898883807 688032050 109109957 498001538 823998333 212548930 347805659 745676337 432610689 1025307121 577324511 976981196 82413580 1043051235 870592294 471935423 549812258 1034937212 99371351 302382980 904001618 886148143 97525072 153386875 586800570 1014357477 281569423 1011005389 845106093 600617953 235354889 655906000 492047069 1061300974 883802330 245573790 876791355 585825900 269309445 1003255941 108287789 936464020 780520580 591855683 169717360 889702066 831152748 673576103 973550438 908880017 1006372982 353966230 937514679 307220992 101972268 491290993 233757829 601933002 388551711 139085890 752706228 438486371 445909816 1010035135 546310854 220118814 543000297 792956506 787093985 835427753 14265591 1006159519 909265583 106577294 783894440 1069108676 179828671 574629219 291121313 755972083 1062133627 765209298 433859927 465326750 494598202 7125764 431945180 1005912557 659900315 959209742 974061581 860011570 736351721 312774828 207971579 339294208 280789349 537758549 140070325 383168510 963369468 350519336 984734029 2727279 966790458 814395884 959997338 786588025 341102386 10959874 931413904 882387711 624379605 349951567 403803383 395100342 148459636 773731641 919197998 290895141 1001943183 893860687 856572197 509589867 571858598 651989900 571172715 388955222 861201980 237202578 601969855 1055946044 937127885 794996863 78050121 299227026 223276183 958969920 610040766 900686274 192797900 114414964 160173140 919828008 310299464 588776957 531121532 951184919 958344803 85077296 746164845 444872219 629699494 576815672 622744047 864056 368459929 228659885 460744395 722670581 811492129 336338707 447613684 252072921 387799220 826056390 432565117 18626675 531926208 649880205 482539448 1046089138 316583944 776383592 367039584 164565239 1059664570 940918000 498290166 446811857 739958380 228488186 315541617 142917857 118590897 680596341 33999819 18153513 391314879 971119524 371469546 430229684 961768279 398020858 594858286 1020320574 557149070 691137780 797380552 75091075 474060858 10790325 842763329 139625803 378710929 556325891 980469229 461837533 923672676 332238830 680001169 353535438 275662888 150545844 418330147 636837945 456894188 19378957 779650626 247957576 1015067610 504737872 319738830 240088467 275005623 987625037 190494339 495321759 322089394 1045834399 75936175 284108763 249406921 143689228 176100118 697633194 405489133 132087320 436329902 401058528 787288145 60048478 310658136 623560087 573972851 143047915 133673515 942604530 775573140 925450463 394656450 888696754 624989392 73263069 930659023 104675181 26528577 18309587 497768774 532843822 27144767 179459710 102949964 581425233 791287667 439158418 690095050 155064002 821029206 639467389 208736223 840602343 178976301 931216344 1045553874 1004007410 484510280 538076721 1006148649 699853076 312111906 1059512378 566419815 1027597462 863897013 249794978 785294298 528452530 423798292 192108261 50808922 735280197 234572210 494583757 428448330 534709301 29479607 1018252161 864650725 563544185 1039311486 990396379 725416270 647314540 1032992121 915400214 303818877 860284691 151597243 191468507 643986559 882473875 970876181 499099521 228002283 595516117 399789612 125247384 913704890 678056178 890070639 948233061 282631822 869327839 1033190151 957470966 334963372 652570530 405551827 328571492 140567527 155000688 508488515 358264931 452952971 741460399 385855492 98988714 987325423 72919290 545292908 218245406 601138505 710002359 757337261 322532455 236623923 294050826 138793190 406984488 958029914 821954806 635552635 703467615 783657438 289692489 688565867 3199573 578538876 608884475 544175659 203471906 366823391 852468402 809947262 747315475 1009388448 383120728 204278151 231764564 177319353 770193276 760925273 942230696 761402237 792191209 1073393124 706703431 604693481 828353505 451662391 1046781389 1054998502 699380854 448591817 478091901 753249071 10198852 753073925 481917866 196373404 588874354 540961429 212814562 364411091 819223443 892373176 39061038 910415624 174487452 144729388 789715296 950416084 895036043 507260228 557642170 1004292321 850745601 923670355 693362027 104249669 823041768 349075385 413495004 86463400 237810254 718048897 341583507 127539976 1052614003 817776198 929684975 117546968 705074435 38757128 578343112 1025516467 762859903 683872813 162891344 1029901570 774182610 276689115 7955321 555676968 1027117172 821166894 495249198 999966338 840635403 445217165 1041485991 119656347 828029046 700688727 750184468 711649068 675371184 329985428 139384931 413247659 223343964 910429153 418143474 244664052 764870513 1001896898 302249519 799707318 448879165 981496856 850187541 805919954 210113911 972209284 428940823 678279507 364159409 5344170 501446687 592432077 792090015 24470016 749205590 708057026 894574854 307951364 511015849 61757030 374600929 12332232 209066396 904710366 108637023 1038584179 720331302 209973258 886056962 396881222 39009252 1027678993 983842282 541569606 806489260 554845603 399668891 505582248 149409467 166739985 349230433 325586046 148428279 138283342 432272374 568275379 437398473 140289252 759889327 858070616 907666243 83805191 950683597 735744731 974381017 109765916 993177126 549487595 557968688 251454996 347454488 93076738 646844618 965121184 244895751 239134820 1011548173 576716547 613825147 131052503 100323565 44031319 294739539 228675172 151827522 197474162 83566734 22664631 168718971 1038020847 174335764 689799533 514433143 960227466 917077176 956184014 502150837 849835641 838076213 989990145 817765234 227383370 769941075 708356999 839037606 332772622 42142402 1012105839 716149300 199368887 1023585286 731124341 789990046 47009297 933308770 529137306 451257072 856934122 668645087 39834730 817420559 1063042977 425702132 503380933 494738356 700542790 207918460 461222188 62704402 90493318 643965265 849848108 1071632261 1073228345 906083667 753846162 565378860 99732226 402138624 124108761 20690508 1072510329 471792337 792162597 655771393 589206706 642394214 136039100 748542742 413693730 765500919 288380910 570337003 99484016 697343670 96178747 1019610456 788148401 215548671 830356228 1014256047 898376039 885366681 798047572 262724972 13380501 1058336978 825166194 1060818038 703762369 983597995 628159767 57660971 146534650 1046426366 426499448 687110263 142824865 620393879 332862277 1022783466 147495291 354648920 177668379 520768372 753529589 779103685 855878233 174754223 620248268 45125199 426254470 258706271 815237394 1069256219 640768407 499836908 626547809 788553593 945576972 877993825 680173198 682118204 671481516 316427114 805603545 25105590 519334733 359418059 1009846988 331457155 262506229 309863584 629067036 179658645 567616760 972516555 841520238 127989244 668930607 306744212 112968185 793077589 99276494 584328199 185451163 907694607 370931919 58434923 390559887 658178563 843565363 1000633874 248820699 181750539 210614107 125293375 128608846 1014176167 37233710 432801484 176673842 815098240 240158026 677169677 483746555 888248353 256142506 50752748 781421457 161967087 558217607 190600355 488655920 309485576 708717345 582170307 733376642 300205628 114979978 19170567 816863239 523061412 328695752 744491303 707041980 124177038 25677073 112526877 1032869106 74441689 736319179 937699263 848427182 309261128 797195465 934644034 270055123 723477144 1071814142 399004443 735964931 401433886 416675613 417097148 155988226 339490386 843767195 26137682 961376350 116433072 128628122 454627094 742125404 225024643 35130523 950197312 648935632 24647518 1072652445 654704308 816899107 470305746 875022057 320598355 430999634 549662747 560614746 155074223 76833713 1061835118 547385116 42742630 149739407 335674280 295077581 61130824 1043459501 573754479 259648766 1004255499 920928148 892776366 961792450 655367855 566353943 682381530 112352129 421182235 118878288 402612838 152397249 136548072 1013004512 100482703 905516249 827687479 1032159787 305337255 432877934 54642423 582892831 747211262 196678438 402606295 683554052 742509266 651996264 52100636 968473247 944797945 122654832 306856649 41802196 792277450 117095773 952260044 994500456 675429103 745858773 444342703 6805182 943056113 591716991 280070803 209610173 543273355 637920603 321851088 50765090 871700372 790613293 553997392 790789824 737311377 818377868 597761973 129631166 338246016 1012832711 235884290 695821776 912012291 604441014 376323518 590627665 202462774 333690573 537151339 122798988 314108463 319986416 618956291 895085053 923484310 169725845 84157450 120341146 104341984 1006814927 397406309 802497395 808611795 749771953 814546343 537492827 553232099 119657577 480599764 750313401 181369278 850406557 221471094 624899818 800045735 150791479 573721426 152485288 547759402 75648208 665992530 237165377 132808060 119472787 746088952 20440754 65790275 884114303 30018358 644891883 881320012 608893748 215524344 389663576 466884715 711291216 647720868 659401902 683460415 749661529 764294819 792401856 901873691 901595828 177620080 282292064 124068098 998937848 112078447 136325661 686928482 1034890481 66429388 118621379 809154247 242086101 399329638 992992232 28629882 68469665 422595844 252172041 957872959 873741211 412775149 3118298 726013975 958981006 999221558 488214080 217204883 426430996 379643269 33365628 935541818 404501702 443760393 202659669 15767238 714053935 589829837 7178590 731484470 1037059257 574627164 482327360 296080596 391924718 790340840 1050979299 438203204 988655492 33969367 918195407 61279821 243244751 531851892 245716142 639118054 589541509 895663674 1039235248 797848711 862485015 994679720 95114664 436076081 987123622 721214899 1061073769 984192605 454458773 963565046 595888424 400488362 244342154 420487607 801503694 63361809 642249301 553163172 292904579 214121270 127917347 779700939 76762672 835367719 280721225 478734916 256578524 872470180 659996238 788562509 934247734 268208293 470609526 803359240 85016712 855529164 291335914 1015031731 481929170 75992543 5175330 1052966271 43637606 38187540 203579622 1039895891 814668354 505932368 679555083 753028202 205648488 1068563687 392729087 105520936 923892259 699927673 688132144 682289401 74423336 280830182 473972256 1073223438 229091690 561739084 301320636 843101692 509465322 169757845 635273554 112025084 771731839 584128473 299660015 1040183936 746010974 409644542 281321138 371427242 598381368 656197950 168064434 40212340 508315963 766027925 626799151 366829474 1009717527 259740187 283502374 513737248 195762293 621810426 633819970 899994006 550818957 744927822 661379474 844350707 899902727 265440613 361013058 1039069012 563876162 202995332 676453172 127355804 1040121670 679250209 549917555 99907539 410806649 1013369339 426993367 490077772 774223672 1025864908 836711553 630038019 841048204 838516641 953932389 965890596 82055456 972839080 68879292 703209830 625089973 878316412 964611564 170894668 100646886 83925759 898514801 1006265857 857727441 244060604 861029333 1018262301 75169902 923555174 100672685 905388365 1060870628 976430354 721557633 1062895530 1052542066 479132062 923917336 347276261 664882603 1052495598 462700003 700277946 965862953 367936298 140792281 823832901 744027985 369477999 171339047 748066138 658897010 553053716 613105334 182230088 1024365965 355597685 845435215 868313216 648944650 185884895 456430217 761007072 1042198872 163076452 301197499 658470563 308274978 526142659 317353485 451723044 582526522 434323176 801699684 629167525 234536017 309548285 365466425 680942371 189562029 264985876 47561124 1059591132 532866559 45956155 661740620 40853618 772125924 181952613 192684019 511728746 843321154 1049508233 233141100 536959940 975309184 1060572146 317768318 488488870 984576754 1049361276 357653414 539177794 954677809 636853416 1050520916 1037062671 708603597 899265732 766229020 879272075 252048742 741496023 812880911 1002176415 1067503871 727587205 465115291 164076772 552650115 522077836 209737651 411473398 1052965472 758422193 476470512 166127031 47673132 298118977 727184020 260617446 637187565 164309910 290210300 328526256 757685340 174468278 920452716 408319502 150207309 466053380 914022819 754602115 824990662 379295257 688297230 1010568701 503515701 956608516 234953041 52209976 195806720 643936515 835228291 26063813 101873138 450685369 542614496 441706480 841300531 253179048 971988508 211315264 783043913 830155423 326918555 951263635 67643549 73095390 233617064 517891922 215071541 938079617 945752727 328992039 790140356 319813919 481035605 885020623 1053389921 664149299 661404333 20953464 452168794 729999188 727448996 229563099 658399894 815302708 751541238 929081423 551546059 106339833 600724696 89180259 835712164 781884651 574429112 48253129 375009608 210127205 799680895 937139217 611858435 517930935 311522924 553617433 775782783 635191659 823381169 615423221 186979749 205494051 402406710 394473955 850760232 231296587 399165237 306349893 364806870 476189622 575643831 211039247 678177209 155269446 83869368 986004661 948549610 311984065 948290769 307168633 107950110 1046621430 982679295 491101561 691098647 155087592 879309698 233392014 189923271 152101439 324909220 794385444 557688314 469627938 467346706 276629108 754310543 179689389 536139087 288280164 154277539 627601238 511251890 690970542 271983668 497470393 309681643 454892983 38298509 622712525 453522934 217068413 321570061 46779065 448613409 55465877 538938455 810156008 510510507 880903480 721734917 909648040 780436927 1005060084 53643675 154034731 743871106 380346752 882802461 829739392 336652970 467505486 842945327 458700789 145026926 452747862 588546464 49696970 787675711 8868132 808209249 694883369 264998715 413212741 520979001 22723911 940022230 144169191 1067871439 657177428 340443439 444246762 674480353 810668833 766486873 1024271026 285224004 65378139 673762724 525608911 339414002 870065335 111815579 578058231 430947037 342411252 67984537 398832232 533818594 609303257 228495409 868784466 950436384 172033846 720737916 629621848 654100304 273624417 855325562 493165669 158198765 443957223 576097291 360563838 119976977 960319871 779049654 30916138 272969286 1062295623 778162635 461560875 875828631 141501631 354693567 336731166 762904242 921505270 854214780 965602635 558352371 1070283661 13978479 554613279 828893898 141888161 403350825 695586196 958713739 485767025 529984143 957747940 836158234 895485424 843920148 165488840 875769334 298678776 749025886 240618313 218173395 556831798 977203472 405584095 219817354 446300536 718268433 810997374 268821342 554441365 191538806 621626801 45386997 121678921 446778992 523805788 52407247 857177768 124679135 863536057 466366920 662088082 1059094647 241333675 459932905 908897314 818991460 836485979 654097286 339463044 617660745 629288791 536392938 850729256 1040717208 907643821 769594550 328990742 275036587 339210234 313651957 289899247 827698183 962890188 854488517 246757865 1054780620 995307601 616227732 102890649 294386264 442916270 705932045 764942519 746124672 302465435 3989960 836836357 324239436 65991296 719769082 772632001 1044525013 174477572 844886566 125325922 28177477 1054973517 420427689 442053390 572623550 492501944 817285499 207660619 876985797 972622889 304711646 361611036 720293395 769699309 574118431 863224534 536624819 38298802 1001436038 517075771 627342115 853830742 479205943 638281220 543749000 30206105 458226000 277194092 956257443 155953346 667859969 834555998 866259452 189421347 662168319 1022316018 995856842 221755061 320291254 408531814 951556058 782774196 1043952199 784031877 123627380 51146683 636006925 656775615 394120981 248665779 99155679 340756915 979761291 955079230 9596581 79118407 1072382298 801175445 877112455 629877278 560846020 758025354 501003682 901846145 624150346 794978109 29594400 230208803 857599347 942465952 456809139 903844061 164385915 877230676 390181474 326694125 208976729 215429137 730874054 72326249 873247904 669246627 496140348 999041922 157188078 393187973 250211751 912509706 540862502 898016602 814985768 139502331 686088336 952958641 4145721 612588640 904322386 113773372 693690988 472950849 281198315 683176599 976601631 666877555 399867161 229986549 1043603150 136020756 532579486 532490829 236008514 194125566 1020316349 322747130 87676327 979675696 686692471 590694016 68663365 159358796 227600220 960648342 747606773 634706622 135953598 893627238 911993155 619991890 308951992 127418674 1032625851 1023998251 610893512 104698876 600709889 94490708 408285717 670440482 955859368 189203909 730506860 1060342002 276131337 835111513 1046431392 193283088 915560958 201973799 732654748 694189977 245825303 526750400 401166410 211885502 1027750340 191641543 518504690 760841976 155119995 1014778022 472840157 117902700 803104287 512768902 207063856 850236730 1025344086 123174732 41542650 720662748 635694887 169517388 146280141 98856518 99176427 234369941 623679902 200872294 975319894 388929375 699004481 587270535 811690712 523395232 940556375 66345263 87120788 410460536 205093075 262919833 204650804 20859209 519991832 991098800 821532471 407218802 297841739 394832173 1003751757 20036243 1069449956 121393654 760471981 255985163 361531493 11362425 740078556 43071174 1064917572 373025261 702008409 527572486 1045388190 317864365 92503955 340416296 369698786 709730897 646116976 95660486 315675089 970546075 781721752 285879995 839840600 396948601 616669756 542875097 641006162 715691062 199804954 904053724 403444062 1021439293 392734892 746582860 328179451 816658430 448131284 1060167070 981519704 35554401 1008300912 1000016993 198917532 927598458 593671736 283059583 941940415 621895994 267534013 104748334 743886681 559137661 88866263 439114062 1056130017 602632034 926037207 557542961 960420350 403606692 421442814 211750222 933127374 813896718 466909364 699859778 182112481 292013031 247266302 657770902 1065058946 912936285 760446507 877314638 251846930 964677921 69984765 977929706 734892870 1012394016 959677017 708032333 774796254 886981837 457192833 907668048 767850087 448844067 66679799 286248780 593619330 664817131 536188963 828300586 738265409 500918552 708865687 1056318638 660920903 211949153 1011049130 213246243 1033191003 95854514 378855946 629857992 170952206 58594349 574585360 221612384 353404847 94987193 877973373 281853192 103512867 33860756 743822170 899384936 327819992 509189721 111642782 623146703 951677661 549535986 317013036 197820759 186290385 164746002 706589588 332666284 654324339 174009628 199230904 438249868 911616904 970798262 581792766 214848930 571074116 641861408 789620360 794289233 645508705 524790732 48485741 935980523 461016265 955568600 276010199 1034508896 652870241 464997621 478800793 885244377 792977236 411829163 553363832 1007874726 742817008 401004810 804965966 672948248 899672711 610720340 216985110 1025301040 463409186 375733230 773276421 439868753 56611756 945273219 738351998 565950298 29057572 95162539 500578872 96483461 1056323792 909864787 1006067301 178556681 824308110 669582035 23788529 162934433 281254190 1055602060 324357351 763471873 871193689 1033383549 549346728 9264733 399909467 418050291 400529993 416042212 629686622 2604536 1061478358 961403895 968851789 840414423 921791277 811522140 250373691 787483119 794393633 371992638 364818925 406351728 1051640845 602208062 731139411 173695244 220806585 911008555 950619432 204202349 120201688 828330098 9758402 534033044 552493563 353630068 794715143 230322733 949167569 1054048050 558578501 37300862 428355538 649048440 934326970 285578074 850939904 611211056 538653655 798894920 314254588 219901407 199078845 169410283 989345427 1032146622 933828727 528227682 472514532 135519128 715016615 179992506 220990491 814706598 263823900 371144117 572138739 267115704 442278422 730119756 181086083 443965564 301535980 157136481 237625446 495504671 434016029 38458148 48272015 977529691 841117236 920933353 535647176 1051193262 286754297 989366890 734203176 289625112 562334526 351743349 1001997267 218323334 1011095016 1039568597 72691989 891355031 1033162488 129926480 522837515 649018779 868603511 1065130462 906934847 175192124 664939785 498790257 778517136 972708442 408349559 807510588 1022543701 940721211 168047873 547955988 249478923 966047257 68005078 399543685 437794948 10808940 331853287 847743991 330195892 60131923 449326813 50233949 811910539 339585322 494070671 333109220 921635340 89789843 894266226 606001177 490323606 740747726 284318498 931881509 201849693 65127407 1072665497 858421201 934086919 354897898 991846817 458483416 644133817 431666984 718777976 289014877 706266529 789244606 70214104 951559843 334138562 152352168 175841283 91700397 940472289 650519537 612242418 49985110 194216102 410821761 572457631 488471645 1042697965 438470036 992011065 1049064901 139704816 935678621 1054378514 1056154996 333170236 60800871 677295854 214764289 484440127 760931239 385055848 89424676 744913956 495336804 616742260 19183677 871322278 863269595 270877706 419683008 634661466 530162170 38281692 359873398 1063152210 951107537 1024585870 1029368590 1068784386 279485877 27471650 245648486 1045333244 307841210 717154737 583045150 440953971 903418420 109066412 748843225 493663309 98886910 714753348 246009258 210599292 918768608 362838572 176212108 413117261 689173135 225094910 322579348 185200992 781081313 355375136 251719683 593068198 366417045 1047054367 587651948 612170159 397925220 601136852 503181158 403383627 41223354 838456536 927555340 975446182 869512190 244912893 451002833 48879278 546369698 634153080 850553649 678904493 804799912 591376115 471107606 473385469 488053420 241763111 201491048 674703108 1018674678 1033664007 1038424314 561436574 1031586774 90968064 667866008 929390835 839411928 50401035 701125638 387183380 1036088553 440461468 168809930 610498419 140628407 882544434 938259937 784523068 1024932567 307006880 911167608 462768181 1065470415 1017286838 980385828 30967753 492922364 955122310 187174180 1022726518 1037475399 165586243 730148152 58495110 874248345 123557687 101294589 318045749 790939979 1024926088 170495809 894952434 892541766 859540573 270298071 819790527 678961760 891681868 605106568 881712273 553833132 170506522 109841875 177194827 964137824 565259381 452646122 515303527 253234535 270629119 224556603 182831684 55434524 324376368 562075908 947779543 234913033 554109405 583927835 698909946 921239579 236788689 1022705662 729986214 1028150732 208967998 678046760 665582658 55490469 197951081 1000904306 68713186 562059114 754170067 238700691 859589100 551579707 439948437 99389261 907349638 349356886 227340403 888034198 145356551 505828346 274477702 453383864 567337654 213472945 19755040 842900514 664673831 550044896 139849329 48765676 717244675 739144676 89689786 108686363 593372238 37711581 176303140 270786381 856901853 766521677 112305423 986023099 990161905 173454017 191266258 193198554 587738158 295483341 562678348 366932992 241419771 54758533 930361942 543614881 352137969 474667336 133790401 426342546 1002026142 41248718 685225001 503224205 866687463 30907828 581302885 479775576 350364504 435559961 192722965 726000740 448297675 426580433 984284775 538861941 415584695 198338090 1015906268 205028828 812708419 320867561 136670110 591625693 78569355 186959282 789191385 801641393 612503708 474565842 657159243 864046891 511220688 398297494 306412560 990439658 1032449502 984039342 1050363246 525202482 197018828 220598720 130350883 97732761 118208335 1043689762 117235303 1010516807 679011480 371650230 512780245 139271242 272126115 276000636 474112646 52350612 512599319 174760974 1010230326 874650962 794920175 1071537164 9895730 890640314 514269207 198665453 270341729 70364970 782976180 200489554 855366043 310631097 527035823 497022589 429157609 322999350 333833928 769500274 294485714 546829149 982382158 970157537 618776756 97064859 415757574 112547702 1062138614 425161399 421957940 505779997 675077434 97807020 890446061 673314620 819314960 446536484 1042888113 105966001 901245658 1035350170 148242944 703769151 871554747 861509704 532010098 220753616 241215124 484862832 25616763 880004641 673373933 279245053 812320757 775267906 355150242 748576074 325240587 1060929610 84675121 576575329 1024128602 54818980 664940748 455798425 62330703 869581451 370664899 1059432202 560896783 350382195 232326320 220561223 72674656 163329901 406579588 1023099924 764729299 205380332 631390911 95714470 43776305 235399481 532965273 507274960 227563213 49294483 1029741351 24540434 900435168 1072471281 716977120 745839352 889780455 765598200 978054058 395625310 198166001 216210059 235568366 610682758 228443659 256286544 963666977 784336075 1020479748 265419195 959870893 657288871 309537778 880666165 287953867 312435190 260513577 157069172 694011754 423421499 82114228 276915105 645526241 267593221 567646030 518227634 58787214 277985235 79737264 182454373 707183978 948746694 161160507 912475648 403810527 527991371 684198506 727621889 199657816 233481367 356695462 94567212 537915347 377524096 627509103 439970514 441887835 959361352 589993207 695158591 787702287 217354112 586610725 66846335 430231096 735773622 250267904 615991787 88450208 23455448 172431091 487515752 883759614 981568821 674680786 988480661 977369700 368535949 1067620178 290885801 61918386 664795488 100701927 723681337 225017585 705443735 169973401 172841022 171535727 467516998 517526191 277097996 612088797 463064846 480174262 224776346 919081770 328366593 119115482 53098388 304629507 746750583 318717131 813345291 975941326 222802778 713188147 632113665 607176626 860423391 1008803609 837474096 773063393 557635352 687832858 524375777 533411019 768015844 79943525 115403123 487978612 4285139 823878631 1009865238 73913671 574881463 803617127 16943971 445953766 252641519 394042251 1031251367 666833483 269256891 819757602 365111630 352620581 676209854 130951977 24259026 272550977 179251112 454009527 304401234 810951046 70595734 237864557 277919682 759590831 300536060 866733302 521346616 549306189 155344413 447446339 1051034199 925336617 817903817 655865986 67406235 35138789 504326394 443080529 767781131 695469325 973896143 479136831 546851677 21379785 341605411 268230506 486269591 960284558 980696776 325566091 93433852 269085431 304797519 807480636 771670710 308375995 873947234 335216608 95158736 1012558837 1061511406 758773980 1053832073 46065574 150091736 435037508 652320605 69678048 498412292 972062147 326518436 772471479 412485312 313420097 191326009 932856767 794207155 330252192 214809021 391973022 579239264 149643830 786250362 478409048 329546594 366159956 267273082 978411193 202674073 282570309 878654918 396534635 288134758 413299099 176304679 719973772 351223376 289097413 396938541 277345967 165495218 301270185 967525396 844658534 1024975595 1024592925 211983588 354578331 71836039 649570252 39677113 376205883 306944017 366312264 421814382 2321570 273711956 411758407 879086632 289114573 185624597 931035808 729239673 352802347 888901171 819711025 86300100 41853697 306107559 111829527 937303808 1030671165 266909845 794404227 663438381 805409759 893968684 1024643502 883946811 587021121 687982404 100213691 129471158 536860688 233564409 1072271408 114156650 418133958 311396839 838408587 491229651 162444932 421040405 500672799 668143841 878602096 300190879 139618774 263242951 137351476 825876804 452967702 190815155 824409154 325872276 649701243 368166624 125287064 1032333544 455910606 18528785 5765742 1039741637 825631655 73097024 1047651097 867936590 176961460 24850266 695956986 652779767 518337872 742647006 311063944 318169643 504514742 329357508 773155394 491828767 493669638 182008487 716509322 90660186 971704691 23935480 545880982 656693454 49407342 373031686 700759945 306031270 675242228 289762407 310200702 990490094 209333530 916726378 216447710 1046990450 551617563 674065913 642809650 707799541 252375422 258723248 974488438 92886481 96969231 817292998 945112659 1045325383 550056335 276278241 103754111 571092708 1064269516 246516327 550416748 239296102 712569345 199930829 403294616 2885224 915241100 85992324 547824638 848882677 676507859 962239451 390474395 405136121 83819940 99611816 760666891 156770957 152303053 673736343 792502915 92431489 965867803 442152130 26502205 698833961 160846660 798984165 735325365 3114118 916624485 397789195 251044833 777882835 239829549 473147222 717997603 196551424 236689280 683295198 83762247 457448518 468890609 7891806 70358866 166777679 462987251 1051204151 745457508 203923932 241473379 515768115 595479737 663316122 1011779103 433428118 601604465 86776993 440864380 833294885 629774683 957036168 1036847244 848463828 825296123 758453027 48744769 87146212 824656507 879786757 408978170 536951866 1062582302 14040159 588527058 1024740251 322679556 878617039 876623549 948390949 184303655 129048577 1033817483 43974181 193632607 801333844 732116000 296848201 86650584 565492286 775105440 242052 618985824 321513625 593930807 78907657 689479958 233197833 89872848 415375448 852282790 902059417 636248076 97969367 612642111 754850168 489571815 936181009 450652439 53871974 318689513 88572676 139137102 644975493 201278079 344458143 711808322 1013325935 59027448 925671567 543581782 443450433 435334629 202233796 927312808 539197735 611665723 680201424 36275419 628792935 334790136 555069013 408667238 936367572 717926189 832610736 902814487 777892399 552208541 320281661 14345643 483919648 755217732 464401931 326714420 282971856 962047948 476432207 684753876 550959792 938026661 667684499 296275832 253470306 760402675 255224392 564165435 748500466 313632409 694392933 645456066 302825812 570509351 8275793 190558283 501069697 160694158 405757463 991898521 478328115 685100101 99549102 848375817 320986465 721415702 93224188 446689915 163228461 494137498 723566533 351593083 968203708 177812274 51396449 380763447 752832254 501324219 787599536 709124565 90888184 370800089 778439101 605946631 1056645160 588752433 62795211 198668942 1061240634 342493292 306513711 845347826 961193139 773949502 873122969 701841303 710642612 602255090 273064786 630954393 272679338 244376633 188763028 356153604 972187710 423491629 140910880 85478203 841715234 886119541 843115300 564324141 522022183 33067728 521607610 803674710 671825487 648316947 268436764 895260126 157690123 60128349 556886802 348612374 731247653 34863556 329967997 190216078 17504624 777973455 319008718 748088017 407550578 1024490517 1015004090 354115446 45649323 1052571450 21711326 16598455 739702683 616085015 151220809 331230156 105022475 237300590 265996823 798084908 34361206 739387665 336842941 594192411 843649844 463925056 270348333 858081681 835638412 606913733 406832145 186087341 378613119 331690726 24939342 286307488 534552901 996091293 752385532 666286730 616932937 801011211 101338122 551173921 147841198 791303072 808229976 430509821 879164482 262139594 801342661 309847434 296494236 547770460 1033625155 1032176379 506345398 845035992 219377382 57907261 247916149 374943581 437524624 408857125 898466018 712624274 46227671 141779544 526895355 383157556 112579218 929125 735219800 554226108 548875297 989259147 952800598 982821500 88748013 423607206 1046922491 159871758 407406265 654872645 1058216227 918363355 210909902 31104822 305485360 151227702 6031173 818429545 894856556 799693290 57400445 439950839 836683205 337627877 1043091523 421502812 10829602 96126730 889952694 929936594 381738801 1064254371 1047433032 578890572 105475670 763816018 638699649 376492156 954995373 71204308 97067862 316095657 509532994 507864377 396066098 986742597 1051919747 389596616 113747041 256986059 154631788 1068989507 279913996 936294365 376328182 393662966 1056729982 610736719 77398735 461459421 889871230 827206205 209396637 1006806142 229395369 576413782 325082894 953561824 571155455 459250039 336859338 955355180 847683330 86410615 499035114 170688828 607013609 571898728 561021923 105356728 598806185 184690277 319590025 411304898 118217139 586380702 415192608 852721552 671271870 824958837 914869856 501662953 553520451 456594048 249531257 96478578 972705752 197610774 532758651 466082753 518552916 142775592 781668972 265773412 639711317 73925381 579327583 177981505 39703226 573230175 640941332 553563877 914306661 99962065 227316931 520956144 656091724 725412898 76612417 962162914 51215216 377032706 270900359 418500130 234029067 524197793 21032307 831959788 1047535048 122639915 273884174 134191698 665878273 93898420 1060872916 167987514 897697823 712626412 294321668 679335862 148902964 388375349 826771974 1002288316 1033240735 1034985859 683996674 360303132 275830783 847245709 381738861 105907059 250005652 92656647 974317617 239182480 145022519 599593183 731209073 992994764 320122777 13974849 932204518 804776260 715550391 786981094 286525530 412436728 972994850 103386342 690651519 163556270 401613410 503381097 752576523 156756630 909429535 352675283 457500035 1067622307 1066781028 283876112 659708509 128650133 397345524 1073502086 904570423 813088019 611979282 39869405 86442125 99263302 346775412 342425448 695635387 973079389 630157542 383674635 249880287 639147716 831213010 252697722 593116507 60369691 326997563 131022190 621723129 774895340 820842326 1061273673 816147799 881308871 82267927 603164460 601611395 826618637 363931423 133822410 821873753 973577025 763395003 673227781 670135320 421408080 505750560 758216290 13395085 111920905 348467170 1019324901 184611820 602374056 301796186 845409562 26303475 864669464 621503616 137988864 866408600 295371028 551842618 355336853 597697151 958223794 388370797 989106737 188789302 146737946 128229525 49620312 365639160 1012190033 831101339 568218571 929083052 1034490869 361851490 1026426231 600261646 613725181 1003917835 787660456 513653631 272094122 183047386 252896758 63848220 144133334 449184776 791665687 542427412 229947039 809866355 417402562 776637608 66155860 862320071 53571534 46545611 1035865227 178942236 780719470 966800570 279093741 873508828 245437700 650912643 691793241 582930545 996903341 1038496293 1012959307 16554046 561766701 9373685 147392150 492839579 628958750 228027179 627841711 830477031 861254427 909688998 373678454 521811034 956258600 661933658 599477861 341221594 245105662 764348969 250037597 1047099767 637788740 931548634 287384927 1012512212 168630803 925185950 76706636 478848662 932765571 180660880 73810185 1005243560 1025748619 943907613 764551777 618326305 995419235 339845991 739227314 862501905 586500481 145024001 448587242 593435996 809711354 789325995 931592234 752338361 233313788 183054863 402446758 854107497 826122698 929433984 591052096 232606113 1009474578 1045365950 1053114476 14387396 131125678 760652842 285520821 268563125 745599677 891382365 834849361 247788812 481581935 911022692 1000618216 587983235 509269100 620466961 958433397 1062042110 428711153 155545348 721572173 573297995 99389039 876781261 835915327 459944659 821083284 350881907 189305883 652806823 58071812 797702307 605140085 717940293 730702880 340607117 55154385 773292662 269553274 647249290 692173598 491047777 355090337 805457369 339521617 765917657 373016091 602186828 582145170 36216280 372108255 530281491 592058274 377009698 634107179 1023911967 524340291 404576421 618140389 370649737 431715623 193626675 707093218 240374609 693408970 491304026 459136880 262278050 966443323 465849155 127022069 389907051 45652019 225081848 618606175 371276442 756057802 371829679 284998441 1015300194 761340764 55717244 1034852814 153063918 360661107 74858138 699142576 189227094 1072455340 671554489 109729819 188106819 578911739 266304937 422865768 738954061 600556967 350037098 623748691 580100050 468105004 712067628 947218328 136474619 813969074 54583570 372522464 405860321 181339647 848710837 832040944 797015943 75631120 819686529 192770078 519625245 812780173 1004989694 37789039 1011334636 797959291 458624133 127302602 43455953 87813591 995412092 725025374 680450032 133743179 754786430 825935617 595288905 715114427 598071235 923407067 799994981 854398120 392538321 95203650 108248312 735446355 384891983 338831179 234936457 866790803 712806940 626838944 50683712 1002112328 430923617 846501300 761734380 515410912 961485107 651287623 993505793 417360444 895563241 271927768 436030803 191737596 506523797 630042211 952542717 197917825 481361864 677904340 844984275 507570434 487422255 534209742 667501722 574822641 892864026 762757138 967282654 854052290 925089034 614625814 467455874 804142047 869528881 855141977 661161238 646116384 104937228 996555703 727649022 1003193043 297538781 873085410 186281711 60333227 713594659 115517901 527536388 94671734 687455398 1004351103 484780949 254239310 804141696 568350231 132462710 1041530016 183909441 36219151 318277653 801104256 409866929 293039688 589664002 58781455 445442984 561959640 779606901 255265971 106360647 688078093 648937880 252251789 109269319 867758854 393771958 1063397497 251257866 256324563 657470454 76812986 1050246984 87267660 555619466 903838218 425442949 115100809 36028685 833901461 770253465 917024419 854072681 42911014 1035469407 1016092247 189286312 943547467 997828613 44678768 270212927 812112642 88854271 233056493 681406758 281842152 252728225 115060467 457101777 1019563967 203787488 273781911 1045694595 673632758 695665637 477742112 861206736 223712903 651581339 33203874 674057751 935334509 358466941 229994896 845561674 161638894 979451270 83392793 298243155 612912239 450990394 521439649 566034842 530888304 1057571674 525466249 181886108 1051175580 524403587 380844492 29698467 892606997 41439978 425678220 440482079 820112721 199196828 403872757 106841193 998307462 992853543 243674258 161376504 738242248 640961859 360735264 130088208 318553779 230405774 990679600 739548920 884967765 361700436 539791593 1052387999 229038494 286035078 862625829 895117173 892485868 887107641 381028676 576317852 667332967 69892626 264271311 125176589 929991063 1031370353 969579056 346526857 947987616 84245631 1028099076 421381946 445399935 328643775 70438290 668612967 833848703 298170102 605106394 291523666 1011426683 1046466516 864058774 1034830578 589261681 648597882 998661740 473195534 902676178 905666741 498560500 709334830 406744998 171399452 873329319 913349768 154496038 910258254 269906343 156240520 519979576 208026367 48905158 535360017 470267799 534092776 515597757 436083672 458413780 279946685 817151633 254134328 833277916 726463186 772711094 717780028 350262204 1039574377 184459287 507462304 318620923 63315818 627424395 287416577 303708122 782309097 784434028 20969361 704114337 954206526 571994891 1037252143 209095264 294155345 584669655 102564874 548348556 17877290 1059621153 920092082 819305323 736758059 421782688 403977402 691950251 645756970 1063052125 531700789 649741700 874245034 898524572 712486603 423841208 799060696 941297748 527008434 134185120 785401393 19770185 946280631 244066211 827632635 398580852 1040534973 695669299 1049831885 35625473 427669368 1045125062 90627854 3807083 285101033 252051379 504442267 58970152 460643230 778316316 837759378 510183694 38379347 202138310 746783745 512581521 716665857 612667006 501323649 754157731 337552473 707509508 345224135 1045782790 846646299 439500666 902461637 191770119 445534019 101399987 106294217 538221086 1024404393 373704598 406700003 954687103 632719531 617410445 722449809 274283108 950953794 663946261 944477021 643117900 489049038 611715854 630625795 790543402 655974673 519793971 619513571 643814297 64997261 348713699 384728576 208499626 571635851 672901624 1066977453 4370524 471719014 687687374 429964124 852853155 220220506 293194015 118963055 613739211 32977481 829975170 1019136101 996340998 798575473 117343994 817199664 342994584 459482189 806673733 943623624 1041470392 121582281 959781206 208286160 159982115 761540821 691616716 160587673 791349089 194416725 140794671 958784902 907443017 994106113 926730282 556621320 117711640 910062521 948249185 604467646 231318871 149066653 353798730 828972134 881458607 922321308 472507317 545209908 993155917 937975361 962659455 77033198 721229435 1041652537 186860817 987682486 4604610 867957461 402580735 435119549 476305133 484438583 907309136 965758938 1057457676 525069854 362558961 561866827 197979976 113956338 256132289 193888704 792679338 391744387 882586465 662363035 607531026 713482505 221923547 203067905 877897351 225880662 109346305 800341371 726340926 460386736 946540761 392226032 983956604 853416981 907674561 230619743 56591017 489754560 762403194 1036365481 369556306 494579237 793111387 405413754 728275241 82284917 110594112 1025065232 699645948 498721214 648265823 371925657 68023686 625082394 133062004 379402138 826143320 1071607025 509526765 1018604337 1049460566 472053318 951889470 929627566 565856567 1039766202 317447092 413485516 727917605 339025652 273186903 490081730 126626615 170513962 122551070 576033259 484600335 589507872 1000689329 896501476 263669942 972792069 432215879 143724432 939262037 841374989 242928439 690609170 1044037257 94630652 1029650366 610610912 812497947 268527160 224806197 630169201 266709480 322749305 1059339245 253665678 1025741960 78603970 280098601 850291987 588543415 613712674 142605781 631799768 535957796 564363538 541171173 451037074 318936119 297000672 306381998 279175454 677109775 441579927 547797679 47235699 576616897 425333014 468146456 787284538 289991999 216606560 698544177 598832212 836082865 520559843 1296980 828971197 459617871 762827273 645504209 5039820 932741599 615946562 1041782096 515182522 672000551 494513609 674428024 892699729 234253255 1021982832 1036163178 48297325 664167268 896686892 859148662 21816137 498782599 117313392 1013720869 50972381 854348677 464172108 101088759 955162143 763257147 874713029 114430616 140597764 594461701 25797447 391684334 891924070 961542957 422107231 662093080 212477096 547784781 396600788 906139803 742980054 59169940 668895774 858192317 657241017 777217803 219649361 734683616 546639465 667560908 480271700 132049481 248189442 1029571188 47526913 384019015 507662916 150657627 782800137 385927697 446214789 172090095 703791508 894363901 384176317 816276933 790571789 961442996 861439069 885149531 536774500 1040185368 655090466 1041189692 103904260 601016553 736434715 470214159 177183056 745571319 343787820 968133626 274409696 967175366 407914993 93546543 10645902 1010613535 593242386 518321393 1021578796 53551550 159874953 437807727 920327447 1016938278 602005497 559569582 135061411 205345025 494323019 950608560 989137161 193706750 555934507 931922503 846340493 669660981 602338926 819285142 918416851 915651251 209359751 563232268 470239919 666648988 417913412 1048178547 1063888922 642405100 1039293237 1060733003 277041516 535614416 947211863 406770197 300421951 563980711 329279157 607409351 403581637 115165523 223414626 120233863 712610102 136307308 131753223 854384803 323577123 1056657256 943867816 691384785 770947478 293305857 758998462 502373232 291940725 708736639 83228223 438352393 707840630 93859124 595693813 656602291 993097176 87163967 599377055 1001158616 211579070 127630054 686393572 796189296 271281538 574087531 833985325 839214346 904519442 689531419 83590319 141064116 810588124 1066602451 227201048 273992961 698275327 1003397136 127387775 906753138 714256099 312455076 747344794 356652838 124419485 495051800 73848751 429049271 479224554 879504819 1022744053 124981125 302049764 863590104 537907870 145632782 12790698 679852621 193600008 332854066 511698168 555283172 747103865 773549683 545506256 852250637 901374186 121217163 289950641 625370779 622757361 331532417 1017932628 648308553 40585440 529511853 903123498 352183947 657880012 440461139 1064061297 912890623 467213827 682198091 734441831 927508358 781511985 717747997 27686632 824948635 795401087 928116991 666551506 447199479 849844191 361836314 927961929 73910637 633135930 922971677 133417280 1048045837 671387482 581017157 195235602 901719315 290386945 128646410 592732207 846663351 255920668 335468569 866538491 770876650 672561736 495980599 119656153 470444951 419862238 1037234825 698359659 163531011 765067063 805644117 518233517 809792883 828493864 53697093 237974169 631551315 945216349 967122152 280141950 798049857 801127790 151757268 976586157 311606119 770689277 708964114 1069165820 225072343 630296698 756258474 462299621 593186097 475570638 903525840 135364547 649263292 138858437 689413187 942875147 412511049 390134392 179056354 847931349 697996090 1057177223 341045570 222787552 490174823 144297257 823902518 851006644 492486267 541973452 53510241 399173258 940167122 262273411 382403041 1059638636 150614471 849735145 731135184 780412099 662765740 796449690 703319989 41431125 453855083 378373602 355903931 205458494 963709271 894799049 950912830 655712155 381090660 631630650 616330013 384486986 923125024 104734759 389265744 332212768 1049721760 572602060 274474646 151498408 132705546 587674427 628977669 549330031 767317444 57705574 605773749 80152288 63015169 809440668 713982432 1004212973 1032501938 821994608 649348420 287214002 680269880 209830055 849014619 627211880 1000692823 1036154710 967263589 88571589 649396942 530926338 830640292 931570261 826905901 338842450 904696239 637147508 340121574 1049223117 130728047 692899753 878097678 401761183 293440300 336543258 147900494 731319770 493570751 1026074361 1060762233 994992344 482057797 666365453 431278915 782219073 232172537 1003518957 973798060 849306531 532309851 113560697 852916741 473562315 488568316 830009584 632989119 233491200 99751750 640581730 697737681 437554522 949430791 682314074 22389337 461852886 970206145 670297017 590897315 601570638 1069878491 267123178 249906358 769084928 283341629 947088433 583594446 502619804 7421919 812894838 31981900 230516717 627744688 439723733 944893331 633892301 289520887 311550871 166110074 715514090 534481047 374828325 435802466 289341127 622541794 1046291141 940942424 172470138 304646111 311051128 711621756 636221220 1059562616 954534814 800035346 194716935 343597714 147006870 538542931 11877567 500536373 22285067 467970123 91144562 374562398 277927913 903224031 440341910 450603014 255532915 753021592 893765354 635830093 215408183 72546110 469589774 730480753 763648095 209319201 611970956 162242128 545158064 991524166 768961685 711236538 451207522 860805273 783975183 32429461 433380337 882374719 50293264 565327889 128595770 39112852 605102603 528178628 235209299 902560209 662695644 529086754 666359373 425722285 862352572 83640971 959818737 698581452 909009874 896859229 156757836 321237980 311891029 673528657 592178302 15391748 1069662657 699126456 814197068 723955170 438022057 108371949 427933122 304130677 111903610 947833502 340967979 938704274 385282188 815569507 581417716 226378368 1040559576 975898639 525488605 53539949 428053835 342906843 995116476 366267906 303033557 921684103 261006019 869087729 828956401 16603315 125862834 736932930 753763884 953600656 858876039 572622498 538507138 662566101 545245288 826813551 10830293 543330764 303112183 720837481 107394640 757692324 370369208 944336785 582600640 292459559 907204135 26548904 1027095464 160709556 839671441 1042342515 989749205 877928728 239838252 223162902 249956622 436268655 1021403450 969210995 1017861452 376493773 946033823 606771431 367697866 546479495 852787763 1036577409 201102902 557533157 576758421 395803801 341114768 292841700 461615678 640152267 120054359 713301153 777009173 300056191 577325989 768400838 1066072920 627370078 13828492 933245453 1057637023 135466412 981806933 496193946 721302955 940613580 1053380335 90896576 229120323 971981829 163354451 912310985 433228883 568025023 344803020 197747007 824009269 454494815 594447431 691570564 111248558 304525486 344324319 666749151 407626069 957457660 407699862 829103809 572595218 696710690 622194301 46818354 802928394 82526587 832171899 99958522 689335764 729517569 41299307 228959046 557522396 834913909 576147417 1025825820 344084736 18191405 403624377 456411601 941546608 29298860 210606274 65510565 687701229 846806640 482140330 257342303 258490787 365479481 114513052 885372186 759518210 1023180461 45342415 617892841 447553560 72541868 868677725 617265124 992201535 821125358 554463753 649330781 788645055 404809840 905233841 828196492 859871908 830691883 640179637 21712364 639601229 806555516 154163484 615155045 388230528 750967112 206766001 567292223 974153961 97065449 585825454 347771878 457497410 348012003 597296519 468461734 687549333 937179510 327461757 544544437 993515436 428308626 955391203 326144904 426679980 643286028 527066112 442395159 201059491 702248053 60343967 912331933 417672747 266084586 304797507 994672104 125542404 79002500 398642876 756102116 75290766 210516658 786134904 262950889 562747634 609052703 117518203 927248039 103328866 420201930 956133869 91403965 828932634 409885106 827446589 593494890 424592550 342831188 973447733 657257507 832885531 529586116 1050658691 513406964 698095109 13693584 778056921 5537420 667593883 971750460 566232939 100819215 550404412 1033519937 39924424 160322345 355512797 267423996 908408442 108263506 167601021 625308285 286411830 410665910 44402928 937558237 71959376 581844222 606937279 65269479 903679204 1018248897 977183453 43943042 57810612 260685288 526003698 455160636 883310962 279435922 479311211 301462670 296419437 204498686 956977729 51080337 635676338 224226832 622330650 586652313 319605687 558901618 995291443 645551886 10950115 589729233 1060638386 212468578 942567996 661353302 454523862 440841770 723569683 281368005 983403179 745711234 260833048 532604458 572489642 996572235 860026610 837128067 646094810 294158723 300729580 856761050 1011800178 43237636 133283324 1048389571 593773754 843164808 322667962 645341318 746580539 1047064238 996859525 65352796 816458477 965160229 222503198 56966430 1049415420 498797896 504508692 490567689 342614068 76621333 894206005 876405381 648402920 461063475 288406082 984992170 129753828 592141684 331519562 914053219 812609542 721812535 279656700 593617389 204253195 257174866 861034488 1064472474 968798739 713965666 558984923 26148322 68177197 514737372 709404361 990937643 326825833 44418256 878624014 678596419 1030402819 67906118 192299690 503085314 157717812 190627817 204487491 635402425 603835095 807269552 935022203 880455030 485967577 947592150 227449463 282980813 194967306 737540525 721110861 698787842 556378139 474930714 687397508 707047571 944196838 434929441 755692708 756449419 342132345 1069948070 827218264 540115699 440756040 751261292 191121313 364182482 214190222 97752820 167483927 978786252 394264649 946114565 958846805 932446077 220439944 1047625105 96367143 277265695 327627212 345766276 469030001 1041644237 393450476 532102701 712950745 220126436 798163520 797605371 546761781 318472162 831219015 380051945 315070707 39750334 555823385 501989047 171554919 258209940 1011958745 486792411 459095290 270771115 392147308 60055388 647875386 782100584 306717085 189113535 819757710 1020946445 359955721 839303089 320465166 108269632 351848726 2031239 17570332 833837180 843089530 182871999 1049782587 250821543 164369290 1062785197 520543603 1033811156 440095145 315927516 581675677 167497532 525482705 585658753 74146595 1061728618 474506558 671086119 537138699 1000696797 152239818 687077138 569895300 33329898 794722477 348397554 630260706 901844601 517623691 444792912 932456415 23506659 491203004 13155429 833481667 36745069 952788410 341097336 181178606 125839969 764095492 755453143 307687348 837866691 662463205 294254955 8147134 4684233 693252591 53872761 13183243 163995125 352041780 1049687766 223866994 48316283 59767877 314347892 470365491 184187966 540286572 499842692 1032475486 765558025 653530407 195413731 86820380 1054115580 216724520 487781404 767492524 640180797 1072459658 453595830 321598061 250038095 910167914 791702543 272890415 847161010 301799835 450794795 360214611 191764699 925884637 58311377 826977756 794121136 90265140 928073028 171481105 1007079205 897493196 265995697 852167070 260779258 671753975 794668711 659643664 705698730 765212898 595396576 127937487 180389621 223582366 905168008 890672899 936075877 990107389 829356250 399341187 197499919 114286637 247389630 293657343 274848211 769836114 1041227417 378428890 818637564 957945144 533353503 723273520 546779562 698417908 902788123 236960804 965806270 620481050 15455291 483502557 140866156 457922885 68585187 341967535 644979898 623391798 727299861 1025598254 386982496 712302805 17943064 143111249 829397203 617515501 1023011283 1060146081 882991805 358385093 306727703 843130973 573451933 1059787773 237038779 528856421 655457137 737008091 800592090 150763035 848872828 932015851 506324208 461028244 480258623 437494116 807232449 1017323564 883601142 848932449 741755448 732033159 721474501 57428860 306456787 779778989 671133945 996674839 582335388 210181971 329285799 938669943 111036236 665214234 472910207 69535352 491596131 926704547 355887565 603019081 671879957 1043194049 121269474 399459212 274939712 814651794 32432315 732974821 758115502 541494126 961162641 368349686 475694877 1045454867 54814976 26419976 746909599 50176487 437545523 696729798 866863182 753239944 494446322 190442776 888025412 28895830 155752966 887159832 23381068 259899500 287319509 757869985 751855464 634669229 55641392 203558185 733701142 62589936 250946806 272187150 67016817 572747787 383431030 205061368 545267013 1066013797 903543756 907843150 550855193 892017229 586025647 723550946 811948595 832959067 657985521 585372037 347612990 287809198 106642267 122038068 847773741 314307486 312536262 1013926692 318066555 585010912 596078801 107504379 140225425 820257171 186774949 546422114 918979814 918488148 619388671 655197805 660269109 654435539 347909829 445924567 1063689328 1070929511 583858435 713185311 625716797 396101362 761198488 498059426 202347206 705752824 362332781 402228520 710705927 790257299 744630741 604170724 271355414 1067700447 323342643 982454644 818693282 201562585 1016054824 405564431 650017032 1065499894 894405486 665834738 45515424 955558568 465656509 12493883 577631664 793776545 170920604 453706108 387714369 775737223 215049579 514540806 961694719 364795607 869348992 1050353053 21281088 118290728 106031795 1058969414 954694772 563089774 879590051 890256390 106908539 710439931 1070801215 755963366 239143586 1014332724 139312909 1061893172 104130953 424200507 962607049 606745874 325262010 397825379 153710076 725330292 147969617 1060140168 1017173577 7981649 989745684 179065103 507190974 990817964 910637191 358990424 662061382 326811133 946013957 429992576 138996874 393705195 528977776 1024635433 2237290 673769796 438032197 880630092 481070967 174292810 783504075 502900548 1071650163 540010488 353153531 781655079 135748765 723738319 567844203 219395108 538350064 170151128 892001176 2206863 1016639482 83571162 911630678 1070195718 54758606 2409654 340916582 410469173 929828902 711225001 686456968 485599220 75711120 316031524 655102430 386397109 493931764 40951004 191329472 253661634 269229922 814032608 296888488 980197724 540843160 481021660 664482403 499004495 968012219 882735057 457520299 632495237 110626996 869128042 999601956 407301243 790829704 416469094 1070900809 893425916 766792764 372482539 266020161 441705981 88686826 224614227 269969870 937175792 864050929 604035591 497367245 259734184 84290907 754564515 1040668703 786778780 126897542 1063080425 670944468 80487151 821242387 1015320248 999467 13803340 993700633 717078752 829195781 643250614 380607947 916538999 860701263 965414594 900258981 462016135 35749713 289329712 938700220 53906524 352698088 686243811 266775287 381211906 650677131 151409264 1060527768 207241337 860852113 652983180 742289946 555977986 149515862 410242844 152077781 26457377 771967151 629650068 996007645 401505844 239497499 79368817 771729470 118506832 699926607 901692156 881237027 396057728 148480330 7705920 540530876 375372162 524615945 921799853 535413981 582855318 627039542 225391393 542473769 25061716 877911912 85684622 905803868 337208191 547953583 1029779819 799502009 164471103 466328207 160419855 756729930 58080178 1054719080 639616555 705281316 1048114312 982416051 469433266 314021836 553920927 880285012 680580922 384164608 814669707 376105290 645762588 870663695 387949411 777349991 958540836 927044055 490174576 210229139 472540615 236533380 747042707 588124923 205985302 630305361 959885959 160968048 664629863 497044872 815367551 99209979 821616132 54624797 799677990 727561547 864336211 284754649 625527300 855608413 700959391 858162297 202581118 414725833 428854389 173064421 238459477 297105 834288133 437666889 295059431 879712589 930814480 391529942 753451671 875644467 1051872159 64391069 394328092 860954453 175256720 691198957 1048270745 806775565 559327562 936557158 362314640 787634889 213804042 319881249 789659525 278217539 548264383 393855226 503515189 662904617 965113484 279854755 375661099 972075081 77362349 921976679 715183935 397662277 255964890 632908655 1001566826 390172968 911639745 346531052 332469225 904370522 592516709 401113955 874533980 875058123 882035566 448083517 480725079 717308480 774151206 579380546 567745931 1007184900 1028337672 204131263 11387566 888614137 678214758 15165330 754960026 15145657 988442606 187871928 381120918 220905042 70664502 369881142 1000991983 496869837 643780477 852728782 985166212 847765240 494459970 318564840 407875981 310578450 334630461 273446170 188137953 332688513 284673025 62090408 992359387 501344899 657842486 550754564 763615296 31214978 417543912 1029010833 1002851177 1031065947 434511804 357777519 291101160 177362333 263326697 585895794 34364534 33896528 762888380 828698003 479441707 23742650 8387488 136803425 609839045 364434068 957904364 639798536 1054226703 1019388481 359778994 639408629 868961044 221237543 423332913 50894210 806949702 223547562 425402759 1073185133 949640304 726832948 685055099 350090137 803937642 919368844 533055638 29605376 918515432 524946239 1038117049 275543784 203325671 785214160 260144362 802432954 952693303 499248822 1007981830 1021515464 1004888752 501818458 411225701 28693291 103861603 19544909 408088388 481799648 218530426 154780884 653775164 315061584 11251370 869795784 902016853 511621919 251749858 22262152 431985805 687480863 380167180 267436102 723484977 572175997 819748733 674687085 759660577 733154087 116169054 125891309 680742641 834363661 576094570 139990336 654503449 537262522 213245045 931877009 454218850 21613625 760872337 343564078 410793395 274713904 250994873 1002238679 288856332 472899491 22491969 939183473 97224728 281208525 121078397 962619825 240985757 458450335 699187888 1044916588 220300972 37074377 154097294 430778250 955927422 458975371 132341013 2648170 1056982377 640437032 589392432 884187624 67469374 924942213 949903447 155059111 834542276 230298173 364737331 1011312663 15483682 1006171798 1034220049 795276258 784085918 197919429 977176678 539908976 134147925 952337533 57044261 578572830 847136041 479594392 435455300 633542923 631507048 693288672 855403926 28955912 92391596 293183550 390050832 871494128 858790254 678919227 188789939 674276785 257485049 43864298 1034093241 124264563 204146674 578897336 915425112 15996962 702543961 297490660 579393207 339263148 38272946 365767907 47334332 930866999 791650045 944445722 1069322681 712172206 525525445 1031296140 629875436 632421624 945420447 237707495 382725665 589160482 44043260 355698967 1042949571 47591841 607754417 88622645 644091671 481858778 443299486 417120133 95670192 153591971 493277629 938129041 516187815 780907604 59263441 296483791 513009273 12761819 254094241 814979525 880376263 168681582 530913235 699736695 525976832 856013201 215941990 693931870 195840906 415741204 219502124 82496196 240420388 617608699 667970464 318053775 620428430 154775636 728110906 48799821 736092210 658146880 608629762 255539104 104019556 25173152 830264866 998216121 1050991569 831185023 243446008 434699906 723610265 860177799 701217759 765996530 727932598 423690305 985729978 112012396 319988066 114161653 360402265 648704984 435073271 932637348 860210454 450968001 585674494 989111252 17384676 958119984 573775634 139381700 979566517 819770750 1051203229 994521032 844193875 694473996 653756673 176884922 861245210 630120205 175628728 460692367 306325723 774547637 1070684919 953331999 753867507 271541405 11546239 84499569 134526216 771419623 491607233 349389704 107568671 983973277 320219093 798358849 482197359 842488703 495162218 936094018 911901930 326278957 911636333 758317850 684287254 866560861 1020939269 1041367636 595816372 731488285 210869366 512569639 588075392 6652112 735712136 1009423818 1054451052 632936316 559656050 771013956 880525381 334163397 741093965 529495447 355448026 327945249 392641792 500949608 665889526 236652849 435143887 581243276 130473287 50917919 645444699 198210314 316969623 616406346 577643137 1056169199 579192198 9658902 387634891 785034537 172454080 201162945 514623300 1071989080 829928974 138692829 767990669 884935686 454972926 518364697 416700 949871961 642790535 129035982 49844773 317553354 59452892 1038590312 880702786 738844847 970043282 280310303 1052720845 327879653 235089518 446994986 112138654 158169001 630285549 105899837 4665292 455555679 533254815 873021033 328539116 314411805 94261162 26251398 265975632 512251854 353315720 548704665 630453077 865088656 30311342 387223578 275862099 49215939 969459359 72289961 117868276 948420189 574505789 607045764 997965192 863314005 634778419 1041024177 739025270 33673250 637286613 628222599 85524511 724624131 362938159 618558989 36752481 1039861901 987600406 274463477 416458263 543191119 101806766 898506047 149009851 1042668913 165838042 1001844609 575005626 327304494 350330463 91323757 992495618 845266141 242188686 423461043 86884925 449080346 282007368 886610810 397127048 668348777 453006208 32801494 893925605 110868708 604760345 1003325677 459193771 822129923 269525158 953934119 144839294 386066689 613807846 759119038 884484542 692495072 955525110 975728012 138916046 509098765 161487546 248914973 839680667 473200677 335417835 1058754736 427151229 244280174 912875694 502768591 337904821 63023895 533155078 492356706 1062031806 321993145 569782761 326231834 677560354 229633520 332845244 634307891 1015433602 990029297 898988872 1053417602 485791095 420953204 886347233 113277435 848815435 845390233 513174063 332965755 1042178468 158129705 307179079 910811265 907095844 248222464 590049757 690228712 140001639 724342991 855250642 231330220 396732296 213055415 957044591 777678111 235434169 899336987 655213871 702817555 111984894 1061934553 687050498 140547452 728578081 661093970 868723290 643055001 765890823 146518694 227727108 432422023 337991169 153622945 498335711 724672287 162104265 295928593 301605541 893161304 303018148 880347649 324529003 222490589 506612244 427513133 994252397 131466086 440373024 777303923 789242714 730280985 645656977 209533694 480774332 764361675 183173217 824006970 208287703 1104913 575458147 231231614 977918361 505243735 615225806 781166393 803134066 151977925 866396015 543635781 433790777 54856428 75702730 347274244 889451315 561725663 702397964 830730642 560456966 372112653 602606293 930765416 472642676 1043277141 815293321 645655159 635387739 688401202 510692564 26862869 164948875 914452375 207298424 816562236 950170962 1045780691 986038440 623944933 320072725 339547631 58872798 448702196 43718590 837675081 722366804 281456001 279059548 765346178 797735777 872367356 38166119 843000397 650088695 2901593 324678933 5233162 486791575 528054390 431371872 993213069 391815076 879178814 616020802 275666839 777761579 384127844 448719284 353481133 864279714 486399374 727296606 1054577162 995433988 671280015 61679100 202428866 623354649 953779578 362291028 846168610 1050423558 101346698 333837981 917311567 638906564 719077600 502178293 975944045 27643794 418944540 783313608 420596338 16560458 601440627 941440879 431370149 610589550 492387155 143106317 622559810 12796694 94564040 671556137 296846645 854471594 884498454 717106097 934793499 486772294 325603337 295840814 508751551 333748215 153006658 568201177 364853120 302594925 899077037 857655745 318448195 1041178276 908870297 469699831 972305065 332789175 890095413 180061546 558034656 202329681 174807922 322306657 267212128 705417931 276026574 407544923 721140113 605642655 751340540 826976320 697091502 62976018 692272662 334607788 375348091 188099461 245541967 251554745 62429424 936380989 819424480 729661755 947275942 391967171 523273070 131512826 332334263 402214895 797451351 100938788 463369453 247237448 1062889528 890870780 904004171 206188728 155860742 813568287 802283801 1000679538 73023203 125085129 684720823 797560634 173072709 321171131 983121269 476125282 1051754066 235127416 446842113 598267750 728070163 661470222 563659735 450745372 715039676 379892836 338234128 804937130 857233978 1135826 1015954329 693256253 582784180 960735056 605711950 397381955 460308685 786225232 187924152 574562644 697988378 482013355 749087138 43212907 857218682 915416616 216884816 623298983 256179953 834632596 392551855 531525333 688734854 637210342 265952093 199799971 776279660 205595550 610807225 789962500 885664607 541685668 83592233 391213958 1804617 570983405 448184201 244080254 49815667 283532443 976151730 977251009 1027547513 658715447 783590266 725571167 317019731 457899929 480446472 43428649 752771368 543940663 449577094 504972393 265054697 314811649 696080200 81884685 281755103 186795420 454047661 156580858 525599504 12394731 428431105 878088287 799320125 1066019166 222364105 1068222788 631393046 174514795 804209017 15400387 194409134 748912375 409495346 662651228 918330632 776344912 102240004 517246893 957960048 993126834 533199487 884732730 195908365 223960835 78991548 781717295 142061141 630724783 840335502 193660701 776421626 10705851 411927855 48754410 928566486 809026975 833961465 774532797 303380454 187319189 939414559 773602470 505981588 16869123 517151229 882442477 289241104 785491081 24829142 263837583 192366190 501910728 989456767 1007114924 901301731 758355871 161215203 345657617 663677025 382341524 98284193 263544771 943347092 490840330 1043749552 49870992 756916649 758956027 108763020 500074828 994496570 205934518 163519162 464489336 79545428 996421305 97719153 840548958 430936822 745827189 716813528 998747044 88050282 344417091 549099503 878218424 854314384 124335585 36932586 98497585 731438481 976919209 271197969 760131615 1043732258 230372047 141311705 263513696 675334545 14710903 500454804 1040529134 648439971 81912520 668668630 325795553 110219099 609219186 576489109 95987150 897568735 664556208 1031891466 84783621 695632479 823684451 273933657 304446758 852476521 939330665 566076618 82445718 381619611 122722709 85650905 1009750385 478843319 4259387 945102765 728156796 908409231 1023349363 110795518 554583967 647879792 650800552 1007871900 969322057 116892768 583389587 309211011 562828172 991901307 457447955 425986189 595596942 434603748 578717189 112947854 580667897 488615380 1005458990 873211999 568089954 17107169 246242152 877115877 27290072 795795607 665989855 93519350 130140721 732576612 347769561 175070165 734067195 671394376 980277125 877804464 812384505 873410824 658356571 603440056 856091760 820597764 863970455 542894068 476023729 484786264 496075797 690181306 12861125 81837840 972802305 584195193 304022193 502891777 198175003 417364235 6796077 684054059 304765054 412772123 769046099 655511476 948843939 1017066673 951960713 1048998120 951392826 1017274790 614535907 549264792 533572656 586377464 651680763 49437063 266190495 896783561 84264037 965197836 995756043 669527180 349789509 284970459 110877014 913899448 287896100 466930503 861386843 504428779 240529243 598581256 150202778 984487066 900933182 456654616 567352824 1072934816 883950611 362588139 186265438 52878902 939449256 1035523129 622633353 291564048 10353266 618870484 62388017 29062968 136272901 276755311 544404710 631620935 768000805 1060234440 374559030 683706527 290040481 778436625 103712796 72236281 974631315 993908964 39194555 57301678 957578492 1059921751 396151508 739037884 279235048 912745275 391248586 356285779 1008723718 757962999 282390303 333327790 522959580 867640603 486235270 1061356548 33083774 702955631 382945528 668537995 210241367 109350313 414833476 476070727 110482252 39071724 719706407 371239731 103420409 986161134 411849054 355192944 1021548376 229749996 96782829 205974880 629499856 494371741 554636563 941659748 747811189 50934819 483301660 599827236 766678879 682588977 667846897 300361078 853806788 188785423 429774805 943300968 695729009 78475059 439757701 777165690 159511105 49532236 768390855 196739648 469569978 591003565 907978113 179875986 874962169 333699775 714721088 898884214 642089788 1016955438 697378898 653264185 779177443 867508866 86062488 470760037 16433012 407430246 239886821 146829479 810163398 1030563356 425845577 71068831 930763337 885137742 13273732 333184472 453060740 238762583 1031939982 475699417 440420971 825956738 775106391 396538734 811080232 1026308718 1010621374 366365255 242118894 905027390 717983926 254477859 1055989499 948560067 891454198 922088120 27283563 642540789 769982073 785837442 968397892 498321177 1005724640 683330850 252334866 453203114 710998809 124920115 854665633 589380264 279014186 262132887 763131243 602902019 54417451 81596824 539555053 546926488 674958335 335119720 126393991 22997311 213340188 799994149 766014949 572929235 534001145 504701313 795187499 196270471 13716072 360811940 128862140 925795902 371642600 806070744 744050915 150350196 298203025 1026386530 140529455 992134171 53813099 58979949 260779063 981728322 1002797218 855607274 421514062 176221231 863933409 132869728 1015215721 704344431 948442824 359530660 949989864 440843410 936401992 60998154 698073650 544451000 816067577 196656892 117648581 698088353 579555619 7355705 745935162 900279425 234809335 209875465 463962600 182841536 660930302 706196947 965317974 859229192 328987317 678364343 478373509 906066774 352615920 858979884 1031535522 279458995 883184260 381536335 496559579 729215893 3197066 941874597 624083659 727965120 45473809 934788769 420933339 485644084 337065681 595755795 634061266 857957910 205171870 1046014296 896130754 365121101 286492882 591961824 135559076 453342999 939593023 381974576 1067174047 1023638987 359798031 1003763962 772859484 876958931 29450371 246155177 234341958 1019148053 510427583 499978211 189065558 395002216 465055149 244314462 500994117 70900432 22451166 607820584 460306580 758722612 911411726 1032873533 909127553 862357402 752881299 236173580 903435374 918874101 1017340087 35447554 841159492 950953061 344363812 887667132 624209589 180469486 475328811 201464491 480261371 854532 159779631 484254028 814408281 829043893 564192763 800225166 252826137 187485828 790159632 80974012 577282799 582148014 994278130 652977547 440902179 286427956 745330628 354746628 951150196 667516957 1018839593 322371415 589355092 29795321 486843307 748864364 875040090 660736916 462861629 829837463 749509855 1072572011 51509310 308018403 905224060 237666337 237887458 12105026 114761438 268940023 639097494 980538892 1016902969 739355604 476367283 729522132 1012567014 567002404 361113434 678703628 301511657 831631980 641627781 194625592 623731239 931903958 437040204 100522412 310101177 943972205 985725685 887290641 364884929 769786427 701455803 546941777 800664921 340244596 859798577 1046973937 910623298 1030527470 363771598 752358896 30575383 291439914 511215276 792236585 736933880 758203292 751248101 640585422 59441623 863522073 946940830 879581323 262834719 709564530 518314348 931103679 943861713 403402265 955617554 921429029 855386737 474093529 476537 1040295576 774410656 484851973 1004523538 799985068 154986684 116534012 235288859 866508683 174208882 771078773 982219595 188321013 987151051 681235561 76109487 1011592724 976631823 368390313 119500843 341139708 992193779 750655955 455176314 49264568 964207728 210988896 407924820 292243525 747454788 761773125 874707424 1021351994 1032468438 1039188539 24147274 1042616806 1073465034 842917509 789110600 678735249 1020638995 769467673 715456062 799853100 978616049 989953243 141373014 6203073 720509370 566226854 420011328 1007606565 707975474 123978512 387503496 63801552 894020080 889985705 127287831 509503858 597117085 504255277 814624778 325762610 108876602 888047776 511855793 590197851 378442972 839564132 134020506 209559196 469361603 458141542 279946112 691830886 99625501 590043704 51729163 22520449 1063504331 555504519 80748655 204273000 352488758 251931599 844895220 191591190 22974553 175322080 833908449 68587374 1051125888 915837767 364240562 723186697 74366518 315797314 389350204 422827101 478025575 93668705 221972659 645442569 372436215 44237721 558471124 865657332 673971261 265560479 900554321 626684203 209447197 128580778 215030041 85321132 992499197 185330125 427537263 377821320 943660316 912059147 955439338 38315564 566312212 350021497 894685314 995978297 369784029 876039284 160194470 806536061 13000383 898528614 992629862 425759257 37976932 806629276 786882637 683275895 501759 934176778 808568547 562723431 939388051 790153560 297835111 744032827 644413977 664172749 100516677 328734375 890258087 233242265 204459745 399860319 520715404 316033900 10654632 132078473 598134767 610150404 1046182136 58937907 522231684 232345012 723124269 673995735 840713591 280347091 899633077 712025795 792431129 1007752436 453139050 862567426 145777781 1037327928 859394878 315195668 327139591 209556671 374404115 470740501 154705452 858486664 478645988 431865923 594883213 285450225 152176564 957223221 1018621507 944071315 524409689 245592748 479464776 968026946 265708596 686973356 217542748 183989827 277128880 66134344 654888740 893615281 750765720 533806514 664919719 720902844 484712902 718345569 9731476 445511471 108637927 416186303 683287868 786618455 435449918 918958373 448723215 801552619 122045609 731521375 202861231 906837016 864838787 378037059 128260877 1005867470 783385 210263884 155581303 790047139 96378736 94074789 713818944 702139786 686254390 305633433 837342915 779038936 167407761 1014961820 331275955 359000458 782071339 189803687 882862969 733029229 866267644 740862525 374676327 344297384 696797848 560535734 898995004 386954635 874261055 654642745 461420971 453431358 424424371 1008332978 793304713 201085848 473984704 176683957 382832742 24904557 637435686 813475792 736096535 767422892 939045842 899646355 989510670 472146365 748352412 231635653 386106124 181263114 144638505 447584557 1031068027 187095718 6879202 441326210 232441879 118606131 172184789 1010924759 1009331251 223554347 113896216 14346865 778476397 992831526 99696315 877420902 481139196 1022438624 781235253 435212838 561177635 513927557 111054294 134210768 560376148 8730817 619726014 1005160568 50326767 165347745 505075807 190437338 577159965 685035057 515211251 174047068 200194040 953518329 395368519 96715413 443639419 401015193 646096920 936570584 481152987 992088350 229905546 717461412 12207992 738663119 102392631 1012517318 1007141233 45941452 134378244 190444991 741723884 472536749 864408272 514935634 43653092 595757288 952886412 783423117 129685676 434165737 659698669 772453257 178359378 482612954 623360500 431749918 983831570 798592377 1004626472 587419606 654452932 400418347 1033811648 453595559 318113812 250207731 508377162 975191125 880325182 752633402 356696350 764224778 447641935 931493642 600183832 299513599 234667040 441581900 955668331 873751130 735513447 956301657 1059330027 861090002 841933676 546788245 27957539 375656670 668146728 522932574 58417812 943521235 391259554 897488670 810597311 591639863 494586541 882452656 811709029 1028662936 669298156 930833274 861563212 300063834 439144316 1051039739 23347474 645745071 912154099 375616975 114956388 156499421 906809304 725782006 65407905 866025807 990054722 438854691 1012007048 115166221 532207451 761455164 858372465 591974713 231841714 402489625 740177176 449149271 1070404414 494371378 530505474 800207888 605921588 674710626 608476172 156958649 639416374 979748070 324776371 565361086 308857553 69785127 272300580 452779807 270594235 349453511 361860665 918663850 996836562 620192524 118741833 639078829 217442751 649716900 223768982 148504814 623773812 104066115 59465502 637159030 831932567 843317212 395488467 830954595 360405596 75194381 559144646 161391521 268662 392136336 538085438 914576284 714748232 38359956 953663521 104529262 997109990 244250092 832018217 383740373 153737322 494203930 478505293 568370157 751372360 735347926 366028713 788865332 278106968 129814534 462420822 975140609 299050798 431511790 462586586 550379858 707504605 949698812 573143065 60634254 140869495 124073040 330252828 959756458 416257608 276035947 780671208 676355742 377076884 337033452 19611082 417959906 872989725 1064730810 799647609 734582117 819555030 458239905 233428636 191895883 724506361 32893882 723932009 237917926 659545647 467873464 247715818 694042077 528706331 618584 247991451 496721063 1046948273 320509342 441834540 34002068 820699003 384044888 234624949 391103144 422106645 348775364 688393768 1027838858 448309327 909056518 48907964 335029233 408443662 628135066 654459493 175470194 210869618 1065655543 616291927 831525486 469693603 563019225 781137869 361051701 254581168 901983975 28608299 27300861 535740033 106733624 144762971 844501883 895258792 607831848 606042126 136885842 610633720 874395844 445795325 477708535 303466544 677540070 168047015 429087594 710228246 604650376 863453620 849788769 425148196 621654963 143848550 968521517 989641122 904627465 789030157 125524828 1044209156 407084694 137325506 639626526 553763671 810919307 301380695 16640538 441736930 287811931 119331743 826626189 26132419 652136715 811009242 603599332 1014593972 125862707 514037094 123929335 1026180522 582689757 670124955 232368968 496328414 929013304 585255147 850898076 971649917 539686511 52073167 107345469 229083873 1015050813 36868883 995625962 75175800 559152787 267982639 668715236 655670849 457593468 490388305 184019620 940294706 264013801 392113117 706302876 340850826 35214666 525442954 821302498 581497933 480494255 46161627 529988661 977646981 158261634 469515867 988353389 108515781 822650747 246825624 853380 860572428 64754411 191588689 462374730 398539930 939986459 143208203 275160537 972766532 561414675 780504016 332655533 779135948 784675069 897061525 73301287 144775806 505768293 914892025 953969392 510793465 174020207 13180027 206751381 87522738 732180641 42408249 537414211 410632854 139067818 104827347 680975287 987167092 957828778 709655995 996324183 998002813 842858509 312729277 565989764 1053531487 749965987 569889029 322108130 404119674 782959163 369836138 152727136 468168724 847258739 920272839 1070826719 923669729 439858976 908718235 479545192 3017110 944938671 134693075 897965707 1014693076 421577074 438185572 545767341 390293209 731044306 5306751 991738796 565514471 60612504 411029647 706370837 252282609 1003221908 85249339 523870702 11174682 422957016 685752449 112102880 690772226 5010389 1018614691 672474049 648889721 717606296 332666758 789586125 421799440 188033344 1039255732 221866428 397413388 378360506 198407646 204883580 196531281 604152568 907966115 702661332 213978664 1060592624 841920616 686092713 215500258 249613497 293834091 2974455 555966505 539809700 744669555 983643489 465959690 80316163 362000138 51897047 524672906 318645684 1037110361 424193227 638846913 1068347531 14632221 335495516 440362005 1069278245 263202761 338419847 896377912 216471536 445923560 2766901 503124905 1059282827 352474201 21986451 437954484 749720625 730012785 591787479 104650305 978342872 779121064 13932282 65357548 781352245 512065257 357528858 339986764 509933678 693951376 1049663348 38213514 911594846 23211764 284374085 864373451 906487067 230090901 586361204 978399366 158531062 74965565 344817580 904916042 580813550 151890512 451716204 631175396 342480202 761496037 442259921 37766434 1046315830 1002677069 822902390 1011034879 251869810 530015317 906163408 799765247 616405517 210452427 762171922 761369244 847619495 227822931 918334452 941995801 813335939 680232189 501580971 303290638 444419572 793176583 888049889 727146819 724097146 694341409 1036982772 20450280 1024693242 1011393793 598283949 195223529 104282663 572335012 269970217 121880615 522568676 419784328 1003090944 286520193 466889597 863840811 398384391 1043797658 539996296 795076035 318921215 507057697 257028191 587238993 171587320 315346172 425406381 35710385 832687683 718754260 284727351 28588846 771952135 781289231 285406403 266968818 645927169 332401427 648307860 175478273 86625498 1037362266 381827903 698079614 765145914 969089956 632771147 795760375 767836738 534116737 262171124 416708613 1068538160 885655613 147979856 915994829 1003455225 327007868 1049490861 711965594 574922892 372870686 1053689806 981854735 375522896 37643291 991337075 959105449 576550147 40067771 928206628 94931833 298339186 971884254 331982368 611393935 88889626 641159260 215474935 852741358 346819411 546041092 779203139 914051335 1020991291 957347274 16063634 168973819 1022617111 167351554 949878039 15233606 872187589 221987448 194007041 268846028 849077348 864829799 218755635 177118874 1047839047 1055822968 903558144 1321999 490078759 2332924 929170318 277175500 694755009 832957262 728565871 561210757 804576430 362118442 887462263 525429293 538664174 792916375 185474663 586383689 825074068 261157690 465039081 1016703183 108794910 714889266 1015360303 448127162 300606882 626247365 982689780 47740086 121572143 666170264 313379868 845457531 1038727355 1063665890 514899136 577994241 870361747 728241820 542049083 195312607 1331377 514084396 391825954 560512878 896241639 595164738 866171009 165662919 322712964 997117176 290537141 323795613 1019687852 994099489 108094676 687350189 486743693 299447319 958187259 978976213 1020892317 837569722 705698923 1010892962 156516275 483365247 269566701 182179928 840465208 770090433 115673652 338549114 751045405 83488480 870436326 144025457 1011243573 167439716 645284303 355697827 820231297 812966609 919365285 523400091 763882795 300981844 292980370 291945777 942028875 251441127 1059028923 214927127 186438432 223131542 226868462 795025714 1053503259 784076299 256287650 197154162 142553928 569243348 718006992 865225743 319438272 702792910 495139822 372881431 931506700 884843760 903785709 637862693 116815801 864154677 951430868 966019971 1035098821 280776371 6490351 544407496 297325909 683640938 834468296 374557653 471781274 120062624 937868849 535736765 861535830 328516534 12600442 699870386 825059605 686546676 728900648 25418380 466190320 294712381 733302291 731100252 475034431 458432000 581715284 578550704 389450768 961959197 744905980 630479083 175232335 27939762 963792937 178555064 498270371 539843572 478447560 800343771 959481162 1041911877 1072571054 409295448 320469688 120282522 332304676 924122435 750956794 781127882 780248707 1010220370 530232447 4192498 615040947 699294477 687005631 723215438 297540093 899134519 515842383 309367673 776442289 364500637 595693827 67325878 346443755 433626018 1006760923 819929321 495505196 650874622 605283372 864870711 240043295 684659456 3179042 124391525 880823015 613497764 502868877 801571549 323287596 1028359443 582148269 435894956 208655156 553073560 231285849 349384658 17084831 249480151 538085871 559065359 720435184 792186691 191252571 809937106 713517325 887528310 1034414358 871471746 843484114 669421916 899591885 791185014 409856583 344732193 818021550 583438398 770569682 185041713 934338485 713613857 374344002 526225291 961611182 879367375 572823460 350002792 152659225 419638781 1050417826 144628233 669317284 128892688 124786874 272953627 467971974 481983615 290300428 591781540 72773178 389243034 678689384 654281878 986865099 484261422 282575105 971363482 395960420 967379870 1026116908 956958111 565351150 330654814 274324988 1050435788 607820113 954652600 550423081 717233672 61891547 9219241 399928790 175992829 939606489 457584513 443385436 719424614 707229178 376275921 936132284 991750501 16919852 261259593 502965734 135232244 340957140 223973626 83985445 276500485 737964472 795646360 827093004 165072719 748452362 653695029 961871841 374578867 279088400 726231129 611989874 594563054 1032061591 536572081 351319405 644547425 764963041 555355296 201960624 241900926 904147412 110048340 1005286074 889454496 935868962 1052582652 722052824 652482866 135570691 1036786097 389681522 884662792 882043 774650378 388738519 122078204 23819833 803524805 124223453 519727657 994504659 997246427 889791651 704311282 1044672637 994691496 394487260 504983313 476723182 625706174 993704933 399972546 565420363 484568799 404054725 822906392 1060414542 98202615 198607535 971515409 1061460098 315981518 101214655 1000841869 305114177 49301603 713690480 160951618 639081717 821640039 712438138 545973931 815019967 1066051201 1006774128 450264818 423358266 220235582 871235525 186141182 781390694 487978993 141803800 889617979 783065344 344768880 192735673 426650334 3018877 857822336 91338260 780763064 910079381 372926714 937226674 585707016 186047376 599471186 918386491 853930514 896653145 823974941 665611111 1004231317 262381128 432227568 954349626 832892144 915814624 846632668 52032649 289785271 217998113 1024700965 967692910 198923430 681979813 297290488 593299149 600000215 498791158 948236039 346231898 209462255 806042668 259871535 922137428 129331039 539494832 781777844 992237114 314139110 803825547 603150119 920793369 323101881 133873304 398480637 152695712 1035061555 648728856 801275752 373912576 10657237 800486628 902607861 541422388 107214170 216524141 114533901 1047884951 388944981 61656904 519119776 447006001 71568863 699837310 602122302 260717943 541190014 195824534 316158158 715403407 799253851 388696606 541848504 941694070 677082671 180374504 904224818 211602531 1071577998 801368802 77573020 680711187 242549159 199640894 983295147 419459306 990010 620512970 533741899 1024052219 574426346 888852208 30740543 454209957 57649544 337425414 307889839 407134420 425075388 2695738 1014614669 366826326 624256922 901692499 1017456489 748982461 107550499 9457670 195615338 304323775 33631836 833424993 1025393517 234060584 374763450 314468770 242355764 965061545 287170132 125643783 760070709 660751138 767833988 254302274 472244677 214910650 181753846 384589726 829597050 875523523 836158316 133330565 1011089651 498169500 493823217 512533803 957442561 869135653 135908474 977462937 1029161724 921367206 522573986 968639012 798415150 826154684 126761107 230833398 557507643 1016076953 398457427 1066261701 962347091 215358395 246461495 412480009 48438683 575587086 1041519034 185143620 603873794 187916349 1013535333 296294605 43114149 757804514 740513029 366561591 46551450 1032978600 384544858 445665709 615232109 31022087 991601636 926084394 332946649 522266394 58941606 915438649 199866065 970983747 594328337 828441182 18703501 499960448 35244392 237928518 19604438 663932373 96111585 22007415 1048352181 23590277 806575986 203383901 523704775 192820859 305577769 231606884 382053455 7741053 1003748626 662372861 1490105 1066575774 793935574 192795373 58777786 126160317 1017689260 143449653 828879390 60649124 313614858 400426459 219534834 593200561 161755614 560611210 181311272 203436787 496029796 412903899 311457499 630161814 366149337 745093824 855994478 931098641 1039263814 949641827 1068010876 867371729 204589114 734788938 889011769 237002631 1018782691 934750110 279924432 155255710 298920356 632928039 1067359473 56245814 1045209984 504724821 69545012 957173229 442065329 292269467 438906101 463363358 1054652185 246397884 1008397396 719015582 1066746662 763347346 65125953 1063820718 490060069 397468854 709639717 966417733 221645264 360216845 682918742 488106078 267233789 973076248 887381460 409174566 441786581 459040464 148193347 490150908 442560740 26107044 124548458 58125716 633681725 95501877 59798598 350814750 515163664 578022828 83048322 951358153 390273908 357167527 109416278 687856644 1060184797 597067557 728851724 811896385 377345485 619131619 93354084 598253648 754167939 179495557 873011777 982584390 338224107 946342389 656497593 978620298 879621139 680278386 947336737 49783276 377833842 541535809 131605184 918108979 440725245 546499011 726563017 268094552 279500389 171579827 738994207 1024740599 503598212 578617896 282574867 649079295 883375908 670525825 56344862 82302082 971468744 1049764196 303597574 625464730 714791560 978143595 974360571 388418583 841701694 1031222978 541085177 25731172 394775002 1011985449 554508988 396536225 669820807 458517414 518906285 821667949 626714993 989787121 42200692 608435674 302050863 21605854 255352439 398182574 296255519 25130072 1064486297 311640314 820563757 753836133 802212446 476781154 20854084 392011191 421274769 851414194 276718452 963124040 509308195 594836565 896885466 187591315 488660987 561912778 206338568 699038577 560090888 360569989 741802805 68408413 980968383 1072853364 1047866515 867670130 585902363 917907386 166781944 641258328 527047186 276601444 280729476 234994212 666310230 642754451 770342609 849875951 154221845 954212141 543834896 404035768 111242512 919220279 309422196 843200038 274570682 160427566 439855057 765452509 4144005 919160740 414397994 171639334 637319571 167809309 943720585 167327279 1001097023 939255200 826363944 471128806 80963699 791698910 646249782 525870530 913420530 890785231 979115138 744053121 460524881 558716887 809887580 535610232 316590794 127957534 529057500 703749778 886123316 769286211 1031511097 719625025 64978627 1021336938 553352567 49578365 620566846 661396257 979276316 593393273 933841618 195130789 916304127 951046322 62299425 323895205 798348026 427002358 736999418 483657003 547806327 429571832 764886975 622529852 362087520 907237329 714527356 478507020 980772768 748978908 625423179 152108940 455920613 322925582 886117663 315172457 325227265 970887546 672769791 853227760 1040107133 611343949 1025610051 381586877 690610869 821652081 762396711 263553412 663522175 118512227 421723051 678925610 126681717 662425305 170573479 564398581 915561856 51101357 605167106 792598646 410144164 857385397 271910489 44774058 670745164 1058919010 862423790 263164325 929403253 549993988 741410539 432424074 151688558 902158995 817096098 212607129 866483181 205778662 374386114 98354508 372958996 699450600 474168392 956271807 901972410 1067420117 810130173 529429725 613843070 343414203 558759094 153876353 368538784 470762506 475637073 454430941 869022024 265008481 961069557 623753786 761718623 481268480 851010963 486982492 1022276674 981409610 806100179 1025975612 641959167 570754654 34533629 228623874 427248096 826105590 409196253 286888820 711030166 1051928270 26915489 58034151 62530663 573150761 1035931105 161033289 529380255 442099644 720343903 911718520 431096231 868572083 715133423 208622716 241591168 746767762 641155177 455615766 112434259 1038203245 629626843 271610366 106611929 581456241 489985072 329041655 829419397 360536373 171428063 209320553 828546049 872396362 322602607 369362537 882753213 80712523 414263986 583521006 566134416 568302433 240552567 843384389 248939095 885719690 183199664 957928689 359915542 403420168 717508267 856120870 618873716 198990271 256795834 1073251984 686785423 186343424 42180177 967332803 206408664 306433920 833205571 656114965 471364154 305891915 478974281 962180010 336907072 369013081 635068279 522994674 1034608407 73906611 805330934 397976168 1059294158 741470883 279464208 523130708 472765358 566670635 583733380 419165266 818995256 421729519 251433231 795763473 899567050 320404656 428183508 1031495518 724021583 221634130 464379357 993997907 119920722 502674248 298204369 285164540 644725092 502237209 958926830 727015070 850790029 310926459 808217420 1181719 977875509 79436643 299946916 604341192 249655204 565271881 300998558 541551227 546904766 891685092 445262845 161287233 445983480 565129007 448160638 780051360 69942824 461134416 804331506 267602710 816631919 495042141 347369026 766654825 70999560 784353439 234089563 896072739 720462405 460208871 454654507 882490661 150962019 953801283 391491348 516738480 11468299 830922606 257527928 325963998 744135635 628769192 360998985 975102357 757027731 1006305186 642845286 20342875 199062632 117738966 74159139 1007696078 268583615 564812592 924318130 677276586 901013654 277987691 750008105 957343289 656119704 669020862 144926104 777958675 900292174 476457336 1007262744 569493707 805197550 399544087 346467009 3950728 523942148 875361647 953682674 944648023 975340508 967799505 364395322 256738854 978319957 211744450 110323675 612546324 976015521 324951324 963979269 506466451 825577771 1044352880 91645674 932317651 191964221 851159485 925173948 538790927 530004121 849745387 313799422 697251696 263267212 560131237 233764244 1009739425 204540630 133510016 371014575 104454712 852946038 325311209 234324918 577081595 754055250 898884214 582609132 544162571 71786985 714077478 52072064 443620804 87567134 564514891 743237037 504894605 255292554 814942841 975056786 23390900 370438334 895153093 477023197 813345526 446047833 258113786 932419422 326805298 433339286 1000730456 137761624 858887046 1017306857 691976041 258385169 495434091 989971531 436578235 491792522 949627953 302612519 684273703 223865168 29340086 719981734 198754042 140615408 353492541 905728854 321553512 610834808 390969757 39417785 987569210 407150059 411741777 172596067 856855295 431834875 745200659 215631688 343970419 404081457 1024552145 461514514 595500633 841796424 382953376 556218115 729777955 681917416 273756793 340442509 448676513 398404843 506591839 1045041991 33380942 490341278 1028021469 488127486 1048265020 803938980 741946949 124713016 464180035 722157187 990183487 997197685 333543435 795093348 743452826 918722946 604553434 824235219 35414794 365915670 270279082 811491859 746659066 811625765 136474132 432733766 728321901 731389117 998229237 527493466 914987325 953177244 671535272 952016941 731284822 780920473 455991536 2385327 648896408 1056378837 860033169 973652894 989409561 768567372 1045556291 247745344 959612526 800137706 835758526 508709130 232789494 542357783 20046368 116786473 675411089 853726532 1067087450 755889166 597871834 891159456 796784808 744517311 719850502 859464243 1016350594 259452612 623223414 240696838 847260277 520051145 115248803 10681122 863952513 775444398 505401803 963642046 803198062 439369266 584578387 462950449 111214872 575253773 271293316 1045907547 710544983 585087883 816828091 208086676 459231098 628262825 1784204 398869256 825231307 791897229 593780726 1072619976 784536820 877142230 981348626 369922736 517880837 701648515 220752284 401734138 655958022 861605495 465488830 1063132266 464456206 471877906 69661650 166877984 143449455 269557120 827527891 137882759 337333245 914806243 177257100 1020467543 655537385 121566977 372520314 730372784 511642522 186602678 179871729 285444205 1004750908 86513063 679066992 252407918 990715988 298761563 1041332444 852663930 288451532 402053497 247491609 968965696 295810672 679757070 834613384 436268244 224491775 747459325 299006733 192418479 953374773 364974668 539791909 820686054 654456499 534417451 715551707 601599578 330327836 603522024 774142422 1070893101 953118199 70502975 182234199 438183630 209711429 633044586 856961127 181740648 582524244 813545922 825557459 56567958 283803952 177203585 968196388 937805525 26290866 1048638446 179868441 579303755 913415007 842976225 301328192 808468389 310657230 159738162 972204198 552066613 1010605765 469344887 745489058 654177746 150043059 676113847 94847515 708476979 890600574 286224435 1047565308 174003743 257076035 115747489 318849735 505706799 40820167 1059946858 945207602 598034833 950796016 925465112 198630470 311517122 156508451 196055444 115590603 229690150 954535602 403713099 909193072 119788740 983301943 937316741 177716751 582290854 192349797 432629269 600779224 111904709 425830972 575743681 452172251 261879267 37767788 72399440 938046548 126781205 971588356 856071682 987640718 822020230 51187778 1025554802 717186371 787600334 157824158 588116696 514853198 535314213 767337278 26781155 119797097 129687828 347108612 177062951 740330624 596851974 673258649 691066570 828896734 319832904 667735068 978677536 277600773 506072370 408989821 107568450 22540708 732875019 312027582 959067683 759084032 185997351 318454702 703679986 1030978548 37333949 912960108 674041269 767010501 683954159 655097423 483677889 196941397 502262012 531225206 558838620 239153283 225936347 1025861723 336159493 5415193 639017673 385899648 347570799 214873260 243809879 57122929 520341908 526554613 275409967 786909070 770217675 436006178 293247733 333551428 610246966 716897255 431123752 507469585 259395967 351608446 198644013 670427408 649737092 379365995 883215553 477852181 839445796 30524785 911135662 378571727 32513833 334790409 950383632 537507755 281307929 622789560 510504551 948237300 323494285 180041565 224877418 873102050 936343661 78559168 670105418 926826898 37463602 499225378 1001772630 773574592 700082205 131974074 1067093998 205983616 719142158 418932273 466529765 1064846530 525091992 172752413 666112914 956594509 761442558 793493000 123813265 461271454 936861587 585296009 1068209512 674742796 993993998 894927319 1038842096 825404586 941554298 6516709 911021557 5363300 490670551 585528034 291032600 827853145 7825182 888096155 656954935 272540598 958217282 938427826 510618621 106516228 174984154 614362335 591079896 949546180 448211781 829142794 514505039 334176659 605342529 396014474 727411798 1049224802 302800762 843718641 179797015 654535944 561562686 372546478 809969514 663221441 1049237989 43906277 506924668 471420819 877612647 839271178 106438882 1060169743 101085425 15230419 1049297760 106700461 690538166 775069878 794109806 608738705 505517366 1035966484 36693853 560410231 880481086 107160244 765273825 1025514371 845187766 64635793 120126983 322096886 412077799 680789742 206863546 679573537 83641965 154584629 63469382 925012169 1057593608 749768521 535578601 51354144 820390460 990607238 852955822 6630133 368439798 172500368 196235161 62922061 1023456713 478361143 748484687 987627625 873805681 653039717 656195764 69774920 654715091 166366045 485873199 178823755 830320051 167204682 623334306 415063917 182194498 1011999153 531435076 551462489 281803695 493257687 981438209 137232498 475093477 845954614 258995263 38531056 877899701 924123471 524308099 375388087 622165348 317619521 819363928 21154079 899927508 729861121 608032651 623843696 647847493 528817156 381092981 753012185 401574836 914447263 108434802 226176037 859483374 821972722 244488231 715551487 654466632 667254546 371158273 511228639 541324769 546886242 113861406 113271026 1014396564 684599537 296438198 287712308 997014634 147181853 23519014 406394721 373083754 690992902 593334087 212852774 836605072 834065549 1060709553 588267262 761047287 938070620 710269341 1036149866 794382994 48308337 210767425 255295844 5350411 461268277 413680149 480303843 446642799 608932602 131348820 668954248 1065948907 255482075 26622752 1041298182 389064738 315355838 253472469 708808655 105601797 756754074 538523972 497320016 96346664 320736119 81344275 744945765 1040523742 312728979 408248502 340691154 438729639 699700760 264758944 915934082 1017628719 155997015 882405993 493752907 638585485 669481965 509133462 628651434 924144206 704047098 886764162 21370560 430417763 199417189 365680783 1032749267 164831193 152506681 31236539 978788702 683032183 209053695 953718381 984420616 1072825826 181008646 929429513 374484397 417640298 988806073 757898618 912612128 402502307 990003499 327202443 995903339 89803199 175293929 487270806 765815156 86567159 233615200 1023945547 700061143 54455551 513400603 143665829 364277334 581466802 821147500 832048563 218630566 589690595 613512363 941634493 244237800 977879594 380951935 222360498 240135406 1012151264 987444657 340992567 256207707 261829489 644099273 784570083 573013215 234531304 141454843 301462773 653371090 618525241 405256576 861510722 895282086 712332065 873771022 1020379649 1046926951 633179113 488544095 182380757 951675140 980367198 844627070 1012171161 877822011 791397762 1015963562 988323574 1012526481 761627707 553794112 863060864 505187956 638277601 888004763 298272528 203360545 690499054 786314586 226443381 731798762 360460298 762838055 888368901 829203965 127556593 724817768 97026955 659505506 235472261 491818994 814756132 597420838 810023910 682223640 314735227 449227074 81983779 43568376 697055955 57186794 279033474 218166833 873555774 400544075 467479256 685175823 314856688 21879294 352126197 44720647 259336200 353913032 498389523 637918476 641819290 963626007 382775435 757756670 1063692265 48048664 648994923 918442084 238036341 21147556 411522581 514971990 362228895 281004367 514653369 332743446 195293177 918717469 703824069 802691264 959661500 739038264 5642177 703765390 375845183 237442305 926826964 260023767 583376784 32942547 318801147 604153200 1031117449 397408656 329410601 486130405 854678988 1054359814 630092057 753037924 322108727 54517295 576130465 390865672 625419566 904861590 45626579 818127401 376703477 971246013 9661031 222552750 782813161 708571148 922026232 872228543 244599726 420070671 350840358 906810804 316313185 115551429 839340154 589944945 866918151 634039188 363088626 993026513 578658141 553278476 551827458 862329830 504216664 1029846051 254802940 527735707 238821726 9511880 364253632 183508023 940365197 233049295 849276830 402117736 958262443 426000853 424505621 70688850 146559190 818000874 183641893 468301285 189442597 705726814 621637267 865576787 142179969 136039912 99750914 1015896658 758905788 428955593 1050287031 648344242 129368664 894400807 173462692 344900857 1017868820 780491437 564917062 737462962 590976168 1067572996 398771164 579960698 173726834 629601112 192782829 123792127 167948384 348269040 744805347 244385692 643709349 584167983 492677027 1018194454 23949641 247935127 327745202 983504429 673213560 471006699 477205674 297685755 670391713 1057507071 509298634 416092962 740182041 993083325 147543690 477033051 149506061 724477712 502460457 232461985 747889500 802457640 384621853 858984877 1015750804 703531820 1050121522 598297538 234568645 432750069 506512850 887606511 52651910 158149704 952657983 112761953 1033989099 28874701 281292379 298549034 75944071 827102567 542695276 326467810 393302210 12431066 623063159 523171540 678509897 929257889 1034100480 111227170 608228880 204049584 874374198 691719790 172820754 678030389 622312767 971945162 1069309975 823826628 41726645 702228863 224179120 720822861 163559459 361592467 887908934 467709298 816705561 885540710 283212831 250228807 272102804 1015549105 163055680 657172714 124930901 250562881 137064194 1052478918 430910593 198117799 139287233 646637705 491546301 619959790 230684917 39365569 663516559 22273053 62339595 330633103 36552936 6727369 23262794 209668657 96537195 902939356 921789615 368523555 218507060 237521172 944934829 66549304 1017670501 107718853 536172764 342893771 170686339 828930204 510567164 907226236 944446553 165806423 994537386 920074904 93208666 729187043 744619913 321476305 46094276 519628307 332614894 987168609 630861435 654860424 416230305 539941982 469207494 1001833542 62323399 502238963 210045438 128575468 639268988 385228907 885067547 804792990 953315962 466879862 719809575 87099934 213166454 104521984 124493420 982175406 312743407 412395783 354626972 933201141 375762441 887244253 834868483 363429044 122058381 383075319 345721069 752017794 963992616 689592305 301189880 86107267 950265113 298268683 379571930 126065630 168280895 574922154 601090479 262741810 730731217 294168725 129872213 101532555 979251544 305765623 558803490 230317778 953401702 852943596 1055845226 102444392 743090302 925004912 707430214 377656150 339470290 568480721 375208393 815534671 872713529 936097873 365998513 262973388 208918698 510251836 924497154 92339208 983694500 386743642 181573899 585211212 310245702 500849995 756343888 632705324 384214006 483441223 734386003 683931821 727040558 468176884 86469633 606647647 955339106 937453277 288744171 416214279 745653457 995238764 361585998 652330285 864798473 280040273 59185639 332055354 215073680 561816410 994832488 992326098 376302181 80693463 214369637 777655943 557797124 614201679 314865523 4864246 637373634 789722378 176281449 485645261 619956714 885919534 818562570 684861431 644630007 665306566 504160867 794836373 792393723 301967484 796414575 445756488 825523769 439543098 106892065 737061394 1016207474 897997810 964350710 428363868 340832425 215068436 102585739 607209242 790494562 986826958 251333588 25241015 791075868 57265077 521133073 629595680 865112600 522849678 1050641469 91992092 302233621 355216121 584082788 821126147 217564000 992238470 828887735 553416400 29632604 351539813 1030217334 413350766 1029256175 1055659011 514791274 122627775 1064608423 643408494 795983242 154254687 996270278 866481830 1069709392 154974639 20702720 970330564 985016033 520103765 1052532240 962105374 513047637 569436676 812832737 346557621 595632194 885082375 97924911 810590616 107955779 965386850 855195907 792886785 416178919 43275303 628997655 307532529 785357500 1013842759 996209505 713140897 696576585 1018747527 709564568 723213615 296830457 878943995 119647020 172177999 740691929 751776909 1064891574 254636443 496070871 306308442 298468289 709528424 755170772 79385247 250328895 465822854 126175873 25871899 450093504 627961475 536444366 341216847 898147959 893511928 624301862 863443472 451771609 459263980 216017990 764547086 653980272 331126307 39707398 123373394 757583858 387756508 95660672 254677022 1015227478 191407544 10411685 1047876877 886446832 1001529861 666015725 207243161 634256229 890923896 544080159 319462742 306832878 294734182 993715099 62400673 18888931 520321192 389946769 661822714 316141171 792510086 132304974 851327497 406458409 91673512 690423548 353389842 237542291 414659053 59448502 941125081 373396326 399642777 753803055 825975780 355240450 599745641 650825963 519963163 643838999 591799633 78178181 1006470210 829106972 450331795 514606368 796907526 490797556 17195455 637971246 948285980 32996336 192911154 804346212 226623066 1049916315 718401420 139100754 394510337 842337498 494226358 846576971 418450313 437043231 39542837 360493566 613950716 401210706 105881945 807604840 288923478 554144753 738496659 312444343 311651629 254075664 483590312 849891631 672205827 666961428 360289867 1063141087 386875893 875209260 462054058 212634964 507197111 290956759 492979926 145002455 944127510 719236925 1051683168 321444828 150280380 650914327 1037078734 520416001 1042405870 654874493 1034526379 72461484 563454236 653413898 689165801 208318762 166257191 275112082 651690866 403072871 1005342626 112461637 136762824 976443208 686187823 703467052 271826739 866868640 258078415 545819125 925772920 868543425 266586856 483639128 1020391363 413329239 731279482 786787219 138494016 716854296 543796872 309249061 790679610 123587032 1047512241 908057733 639461548 1046669668 407794822 407873944 990195265 255724777 886379760 853195315 394873383 849503543 111101565 1031607731 256345647 877296474 1051631905 1005979568 807123997 654505179 1819808 14078487 1007230626 141821280 102454096 392345857 19333640 100403780 618956665 132899026 744554322 4730743 811854824 996650002 743433967 203185740 81800022 457624813 166600898 524005699 821987969 414256828 1021424702 879910046 171976431 652715275 419779762 663170294 563058867 77816039 649653449 797077572 74939555 443180130 349589599 59874955 536475387 46523157 3254227 913700604 227867568 412006318 439470164 423316981 121470486 571575224 869448566 1014394059 998089199 647994440 497744838 420636071 31422503 421022024 28681644 966822605 790126591 22651939 962638317 704252492 37321703 793045093 619317692 731626501 39783014 845748179 535687637 477200946 68690372 798973034 643635553 433497725 581966354 632945732 1030390770 836885863 981901547 698715430 365358566 459572323 460858363 470181659 566252640 143505240 948506940 494994524 1022670785 918526227 326107237 13206648 702572619 767946537 388561717 245935566 201908876 17954589 780181774 1021784125 764143343 994951408 351023674 918055179 172773932 318818645 281664152 585925498 312824513 607671598 453235268 533091021 275869993 592747187 427470536 562616365 280775786 690137644 31797313 38540347 372714053 386792872 398647695 289623335 406367370 325873168 1017863160 242237344 249210657 57734479 704226197 537545505 368278858 563029335 1030749453 403161451 93405063 471607566 378623897 635690291 461262803 797813606 23306253 276913058 496385928 675327687 8595480 226190496 195159198 469633105 893777754 538491685 930158051 497183615 255900902 347647564 1019610982 973659020 218624233 593964736 958683923 25010144 168469011 1041029911 399820333 104065297 528305803 777146312 466101197 710322222 328869699 1054190547 895833893 325263143 779939429 986468306 252425276 622814753 20837213 1047823156 787068639 733548395 407198451 569323610 356694675 236342759 554005860 168863948 326135870 867030921 952236902 44150326 271980644 177194414 966821316 327977703 792943231 926130488 850873400 562205930 547401277 747101153 1062444032 1065671409 1009070296 626446698 78336822 1002805400 659028314 69540898 729425245 391309827 504738348 673231466 184306681 735612882 736322354 293820090 856949864 701309643 238097398 432306749 277918933 112598219 1064128543 961641241 932943458 782861531 704771702 291216023 120138989 792666601 376658142 705945379 707629231 707983988 887337012 96434909 241842887 707510787 416671821 555221853 277292455 464359520 525473892 135547725 264491087 637861049 232862879 243617190 314529223 949731330 1001159394 210341010 438111915 286169299 754921471 409246656 405268174 921602919 835195316 7217218 1027385645 884068459 1054105206 845300448 7275632 862824425 369339774 923168120 305545323 288830716 206020343 723297096 891503347 142989981 841343495 682329284 690295149 673798090 49199154 930481592 1031370660 724735457 405219880 1072860606 173948398 450584215 996118490 892988163 335323495 775524777 408466375 568857032 541031309 525723642 1019596621 754730841 156621484 649477653 419441895 162385727 352276617 167352826 303196017 600691433 469436870 122481597 60396031 101969917 186919 1070658594 819338730 420736882 406732188 795914896 820451204 80805973 401688658 80575452 451932391 463119953 648045883 75252029 677809569 555787856 711122126 199130040 101236476 329637719 249229966 392355973 273099516 944205601 799273452 54200752 267453295 3398090 533192563 844368005 997205022 883436230 1019617829 918517494 68749918 91325111 541250812 869107324 974678383 303750605 327122674 140168097 282725989 768873953 405771805 283137124 285667769 2927556 885444793 405969187 606846216 304239297 456993113 17817744 811630181 779716298 928703423 476855066 50085391 84515838 685892384 845089453 975690663 253925376 139378083 550539058 819020119 301187972 324391358 919630640 290865818 698266444 757473109 764639956 433104653 50208560 171282096 111752254 779304900 645389293 710144894 667661492 721667903 258785115 949879526 4482754 109178160 653144535 1027288661 492815902 499167071 612639035 949604898 404719379 964203372 1026992469 107211438 136405577 699901440 1023166899 339314561 31719767 924314276 746492241 499441014 844421347 901584563 658287289 990923204 429618343 331356629 646536477 421315047 454462824 903948907 170045041 486843239 992724445 306469655 193350883 289550103 462798322 442053395 164871323 943794537 826985140 646315904 761017355 369755633 109678899 1067267438 885480432 714120539 504350182 508190288 963024446 457684299 587631074 337134810 585965 517964089 156683567 329861295 253998723 629153483 634455398 761022675 405180010 665516991 719518983 553014533 206306257 48242343 452697238 202027098 958854486 346133710 1049626819 936623467 424801128 414816318 954279803 617501272 1045170182 79310484 180124028 9124871 819278922 746893630 573622442 783122873 397362221 106527368 582058749 133515932 672618743 991636317 997772238 746702116 81729956 219301666 785491937 318514956 766874949 626955620 450171489 122593856 343505091 43465336 152212546 682477036 640065693 685671632 98025005 140084210 752474261 662320296 186513503 958741728 597261294 802015577 87934668 648072895 664351921 731994234 166477335 358151532 1046844845 317352175 413886838 659458678 210299342 1025741281 732079680 656512928 16964950 597619458 280833910 624464922 54978535 778456422 404186279 536864092 920570165 370081521 478384970 934022336 815866800 667028578 610936770 884543050 21295182 1062860610 493232255 80425385 972471623 166026906 327677555 459814061 115945322 924888698 803110343 556026247 165645896 701452525 216424737 385858364 127215137 886361563 8843369 16527584 114270964 218869643 427454424 573951666 414815148 440821553 27583302 1059304198 464476652 439550088 956850424 120412892 114272993 210686469 924695530 409794314 319005889 273841542 315910086 227949650 1062988076 1005637572 131513087 165011722 808086329 102025697 415738076 115600756 352413791 874186012 59038583 8221395 22744727 217380906 159411337 398178493 766974042 28292180 889316694 4443377 70589606 565122400 795588416 91908593 185382973 745379118 745359971 914073001 106619312 38431895 336213019 407593564 355312038 294278838 262162722 267362820 919388564 662219518 865670358 925953306 610785421 842544555 571838250 1042477675 858274784 640277664 580528233 348521639 567404571 565279798 276676733 820090031 266680287 286616514 65651890 221148759 1017061170 356192085 1011026367 529601565 234924754 632932932 639552871 966571319 519403920 254149650 350925294 225605426 206339262 602319967 37311108 98273062 304446663 283323560 409956942 548867999 165373356 435425846 593096868 407198203 658808666 992759229 142012563 938598946 964243255 242321579 537312934 111266182 537982583 221022112 933203908 155467517 686298954 1014112168 927583242 67178574 939010888 861628203 809383864 920173567 733447288 1057524874 294638973 789942207 109142387 985073128 315775215 887160538 710362498 206425807 1034694982 402704874 609381857 424176019 81254803 25472873 1055662052 834545915 483596315 522867442 753145044 109666950 364049696 182187444 260972364 1047132561 896159746 914243030 248281106 97482974 990772126 445803626 28273132 590224862 1046822116 652478564 522576784 423729525 361846032 967852266 892948266 53412493 743694435 523326784 1027335779 771365640 561468919 528846207 868280162 811914163 396511354 385617262 549266265 115463822 435109482 556752386 386899474 373228585 812234335 254377919 909392977 415511065 819722696 1045773284 148485742 849506141 587899463 1050675793 868340050 957985776 671249969 859891583 56985803 339003269 895605845 104887596 262807822 911862723 743463892 512235076 619209028 493213236 479603096 396278621 330922324 736756723 905005358 236975251 887724736 506067233 835563441 386020029 364867321 403607570 443157200 166813671 816020737 823345847 923016548 1050613597 298700923 1054421234 875269924 583280634 232401618 387344293 190265508 798551805 1047665391 1072014883 419599760 538048457 493439802 944298828 1015710194 198512461 376008547 650504873 879292336 1048805969 567105982 95045137 1004309830 865625973 693055682 1062489476 129909803 592992525 959787191 1025798983 212714021 741860557 625684157 409530504 533807630 291717521 806696875 406131625 104962299 227818428 48764599 263528801 630598220 637723383 999430995 852784969 763001157 1019530407 1003145349 621959624 743711997 884180565 24753320 635180998 202455975 110055654 642950496 818509497 671299017 488466869 974984037 19211661 376255097 94494825 1068717494 280688335 109434757 822492195 628195833 972001836 766959751 235067080 487454920 150457235 190728370 292767648 683656965 710191275 485310986 927989086 604950568 724407781 936895655 679729624 476290272 994374665 628396396 188704843 565308889 428426092 121501708 451024614 630341961 632104703 974782414 1427730 302436979 287957354 787089306 496147140 81365125 410889780 654709168 871771499 1070258328 857883465 778904768 470472151 126980855 991254704 1072750095 99243583 532133769 239952140 882829192 333702460 308537806 598761857 582699093 583027095 175838872 495679610 860488632 391020055 247871347 332051331 210330411 123708161 424849810 188364704 704444561 295978236 360141540 52515024 58127783 737103141 322899344 842107350 918210568 426859962 270064091 788247478 730036731 1039667657 744130681 356101057 599999520 702707336 200040563 110289565 642024749 730253920 1011047752 765215670 996643917 308446882 921653501 915193704 578298094 338315583 100287742 911366398 169450023 524026863 466217982 944933651 97419115 348626505 952105554 326469725 93754198 706968632 839292681 16611419 100809322 421747026 831432699 285421327 699610054 354821774 245774558 703643927 597679055 27005760 416748569 54186343 832922544 584439726 583549436 905645013 990632759 1001688128 590080027 954822758 351022313 343823063 53178487 242565250 517242260 944507030 972136496 256204347 534270985 996924778 557777331 417075100 770309314 286280386 579568105 623671734 228056053 805712837 509672509 1057377982 747825365 314161634 618649894 93609988 189216287 425715023 322821961 486295637 66736128 230529521 545606620 924690842 376631000 470082284 345984607 808456680 8803892 267168309 868119864 907933781 119690588 818657859 767360165 851341414 850985259 455784686 836306933 255932404 485875840 635531660 686427696 772940948 427046007 639463428 743426449 377906800 579277574 1011050661 824921116 766816332 1045463277 364897682 735457226 72305252 804191957 744810621 511815664 891542768 338686530 527248408 88209172 126935915 168401088 637198877 894860506 919075585 405883784 603344665 516509151 542073571 251850374 21416449 411428403 139253672 374586813 297387380 16992952 959560423 450824406 529540450 725544139 976947477 55553954 767757297 184316038 481807724 564844181 650279149 463909999 874895298 204618062 820900153 456481583 449472353 1014856373 542449341 895180962 582945591 975278250 539257122 1351430 380506046 8505939 204761337 164644025 278282132 1047574041 388656044 403655345 319707155 591435137 326357681 458543638 711793393 140561668 256538082 381991034 469540484 697726729 30435173 593155929 1026813766 198383574 235845497 1036879527 313364256 421704878 757537850 1030126571 343449887 912657125 392682446 1037065048 661303857 457191758 871473220 958979001 295707876 499308583 5881034 869732089 418123596 789812017 157892605 223642292 970557234 367907017 260312231 1064513178 341097439 697039661 848656536 102362323 690751681 1021852082 357560242 48182213 104651883 596916939 437051786 772312012 174747194 528020590 74364781 809572506 509032290 434419254 100630985 44478299 297501853 677296804 994507594 70583181 520793625 344622918 891111107 311343065 523102529 1058431007 261332111 148455815 671041150 1055023298 1043699104 959227136 730929758 688638489 261232850 190162793 466893447 1024763866 853445847 217206945 816390405 52586841 1019713115 65668041 902734335 320216288 713337290 870145790 54592681 695660695 501941182 786435441 432640719 243474594 851540047 890446733 378809923 613594820 921759785 1014013302 193147409 279755342 367233195 1052359753 136786800 428045825 416804487 555951563 28334218 410442517 423864967 669133088 1015828682 593575470 976549566 382043687 925493227 404972264 595930056 492450338 387133536 491931435 1056356563 484760361 397088560 592707322 819796115 494163867 385684606 673551878 2745489 452021164 991357111 672461986 763284691 722609305 192657238 406471396 317378276 396799063 1020323412 940301569 806399954 442556296 984930817 347921957 123332276 327340217 770439962 794794834 921463535 226091007 7711895 1020359211 797202910 79727133 687129094 450557470 604614113 669442537 363991981 578334695 327580847 57276598 1000289483 905687599 632188125 416994182 981367971 147073277 125752777 394785926 301317214 361172917 788919377 43168072 610420029 941994594 501752976 818911145 734636060 256294590 996121653 887568284 221115254 144507104 832999468 367300891 601180859 421092049 343639314 250787836 885943331 878327285 137474595 259451137 131682980 71688596 102132020 707016912 569253992 660872801 216586901 195708877 798692429 1012827667 978145659 587943911 52402914 217303465 313552947 284513127 338236951 41189447 1063194461 919210763 227810624 565797677 517853954 676275056 360817876 897891987 932045660 744376477 903291265 299434997 407829284 1019095031 167947914 995689287 56553531 11708706 823440615 207018770 953014606 202579080 101270572 58584864 236158931 990656480 598868406 737654626 680450781 719562827 769016913 1034712863 23501077 285825784 465169657 1013877221 71461653 957627378 357729172 827131826 186382611 743774965 439566802 251881087 711489170 416344523 863501413 204505212 937934949 794180844 1040644764 222731270 639296269 988408182 604317492 615851412 594019062 824720660 544122375 995540336 988257652 314948554 81687949 340455601 298963191 549444540 160490671 89832622 959850957 722424120 660900154 1037951791 722611019 107409094 462574766 80047770 240123955 952673884 618341815 187949869 376762035 70813432 510140689 4629408 917149194 568762299 787406821 349897727 861033356 94679888 682104533 26808955 802377007 460970033 751446164 672703483 698608075 663159885 345549097 93676465 203422357 196753720 721888723 418370331 798800654 168356752 906168504 416679796 1007728531 435924806 437273105 459838597 13724152 409548404 507001923 110526621 556079060 970836550 114903589 1007185007 239917599 418210778 789656939 24300395 396595397 100706576 153515264 978781730 966300439 567909575 549319178 1036480100 436204413 191092856 801871977 30416865 156722364 758468123 693370453 850987411 26022844 367343566 358423708 754647307 466448858 741615223 935320091 309082837 10249472 712389954 1006695228 363129950 874656327 352939968 894312643 598350844 38543308 834440321 947276359 102559428 64313790 481913893 312898505 744035526 881189941 134265887 36145620 212101080 479239646 518986159 846469853 726734097 691941880 746497067 356338319 324990471 986798182 466083713 499664185 908745822 192243927 143273211 543327813 618185263 695232783 36610674 1069554386 195581089 564743903 688174276 652955315 890988636 221048074 626210287 894036053 172650729 739851636 384440887 132598467 258070245 736718355 786549502 429616744 727545865 492335620 772205004 855998279 387623273 542112806 756430785 253107581 202307347 289097798 715199271 274566714 128418294 237416845 756847380 91326302 378084897 924811297 91252652 339355100 418584457 483409346 57654762 865998306 820981838 208741144 448447510 631829688 302584214 149035749 277115809 387826120 332258597 1014702897 967980735 114903327 616160881 160862665 899345346 863223105 926932259 26451542 986631689 442983302 694284122 659575961 240400492 172483926 815600410 323414592 88291487 949041067 916379465 709861540 336085461 177327084 573555323 573043565 172415892 917175135 769698631 416549140 989670765 669874349 575197914 710753769 158141394 578487990 687259270 915546752 1009076308 393351274 1008072504 687983133 605037519 1016789453 146095145 818863192 25399858 316643236 561544502 726114183 1043365100 679000434 935320196 255115002 77927260 493227962 748688793 587112234 445489647 454605011 412662044 753677916 164023303 403283846 613125838 849512528 855847332 744454534 966429491 1000927092 612455022 943437573 460510502 614935207 899957522 149432556 742385411 356385548 355047891 340576743 440987335 989577753 769235671 997852419 224551941 155119372 466301574 19640975 71083339 951099257 983546131 790674196 776664408 878239493 108247032 922097423 793481323 901030366 257253517 715964966 389354512 1011787310 132131719 38144491 14130536 800609009 1069013400 899598540 697396035 978026376 124245898 189329491 13077473 1062287306 516471940 423840162 225738434 3696790 29989335 216672889 744545240 821102589 956283743 672318274 771860001 108855 646507873 713931492 802431644 1012675639 619762757 274897892 952820949 623653559 480562957 815829097 169240179 833296972 28752622 352939116 359533917 884030867 427573932 394533484 588380075 112301154 706146103 173318588 799177561 945184392 321227492 463037604 45898247 270017694 621484683 685135954 251666130 729292571 1004109093 592325395 938547361 316696623 131539597 953079277 960784462 182886601 966825984 1070590129 6423995 316178351 939034815 613269341 534861204 483531772 1037703950 262987054 305540484 965959002 561508928 1052999951 379303163 178000005 475838987 620424885 258759861 54980000 1056695596 1073266166 526621457 168633191 935633401 95204746 884558748 344122736 555542492 802623670 365340799 426564255 896372985 737929704 143275881 803194935 799753401 945657439 379229709 354747510 216377796 290363367 65219663 822730976 627524126 559039826 680948381 704890794 1067145475 226262748 415306198 593839363 1052467577 70297438 538677718 444361282 138163423 628235458 544528123 480442605 429324819 501426347 319297780 979632369 436940624 912707327 583772083 848489312 977092861 514257429 306135869 924383139 155117383 191907347 1047875381 941641817 1052282857 845855258 191095343 232409102 879906700 690710249 371776116 754216790 67647249 124333431 491215303 291098271 652007367 1039785929 305670216 859250596 773926808 863727270 850112513 1067749478 211016032 376528482 28621835 840012525 946574978 998829934 88592737 783456513 760445276 187371084 87957500 587547030 862563971 56488941 372637488 36210187 640513035 849884033 335102352 121423163 846672141 842757803 139979753 862367193 10991338 310099455 456652465 558074621 723014480 191617588 385145521 306003569 320333190 485424433 167127876 777337555 212774237 1052550226 159556284 208568689 1003943059 1066036905 681657636 211236132 491049422 410341483 959783436 337204425 1043190914 161570144 419303779 619277985 896914184 57178157 10660084 203956596 651286590 396498055 296175801 531067011 972422351 697766126 882839310 252954284 571072824 107289849 372684685 761156252 667036407 159968587 554488669 754888034 144892385 64873500 854896610 765735484 246485577 750220887 710215008 899666089 1025115128 217714069 264630576 36647117 227754804 553991609 852194443 337114003 588864416 674704329 309536350 875321175 498925629 33694766 867996652 322007237 992138008 518406207 38413356 805921637 850943914 423132385 818949190 826673568 861252625 523417241 898150026 480074968 832426785 258584789 624747673 779080727 191623610 553189393 1029533805 858513668 87675851 448008599 144173579 245401585 1046761884 1012412942 568944800 972374051 794390216 916372453 939136606 634198645 961092558 678687904 601951634 587553352 49033779 505625232 56147602 711250303 940756578 476900276 246536685 556460812 400847483 905909164 94187823 947017460 1066018894 745562704 475079112 383994112 1019524127 160596199 308803537 824949305 846570504 872611124 990162184 586306767 27005476 743152072 607603641 952287446 401747668 635336710 396482620 269955934 580109712 545365401 769400159 80469649 632576232 700158216 683592278 155060285 3446951 539102325 461966254 890805229 142504663 1009063976 775188866 458373351 97180617 629029863 882691819 408971104 180978108 432342787 890211946 406597922 1064096634 170256078 189506116 455989044 889291702 581216545 1007972335 964143440 950984012 542723851 868528258 288613089 728319043 163104011 833304236 438936709 568356805 1017715312 556507324 406760897 586259051 50823404 449213787 907174279 243855180 282561231 211541729 194600683 876709360 825221585 426817976 456006110 272150824 771828952 571482716 67788182 561613363 250125179 672359794 289494783 598493356 766467469 920415400 313790942 703762974 185300800 541166470 13150374 825520113 672825256 740486569 435802690 699255477 148982651 680014175 138400247 724936973 27963346 104835773 1029713194 752341077 700924742 970598064 597552716 187718265 906179783 539465820 488429769 747696008 710811729 803783573 179272698 493484749 115875691 1036886643 875633857 728699734 229675820 474492549 854041284 782679127 23523965 544296905 571004544 61134135 1049274324 890251096 839458564 145086829 383722240 820096884 302914277 685203498 393619866 294647522 644907841 340600929 1007936533 902794476 784364421 104285652 170204008 438030118 850425193 288651137 811017567 753606 220471924 651526398 782470676 314935077 511588060 426911797 1040628948 437780634 984541126 342261364 257241578 155981274 254819084 96245658 652781045 908862790 1027816830 1059795123 706708427 1030711957 568380716 449203873 796038531 692518749 339029760 103574436 574131634 199850490 118757507 652777667 907511029 700417324 600463127 594070850 8450911 86123008 303756150 595298648 761443751 569250220 457061273 204355912 67474175 808877973 960246440 73265724 205388634 786615046 610547335 771645284 630301915 243423242 906818766 680082243 466199442 169395379 808128158 870384138 167325654 144274800 148704677 122393991 855735138 339800533 818245675 1052468867 413842663 106694438 329284085 499910088 386458476 797059 232294038 514690790 586795936 40300058 171228686 501966523 424399375 249051864 143364066 469586829 783593483 703858486 793472192 887150553 21471421 598887620 819685726 132607383 640667397 475222082 457702745 718872735 412299773 17173944 547864820 771371884 35185050 773904516 599957489 974033121 899032163 789932663 95675672 602011196 14728746 357095925 458181724 544033629 650285311 726339236 468420984 21283394 647043006 1020742788 680992907 774847805 842970691 74766473 152336348 979156721 576755316 924233714 1045116048 1045771383 343719032 89581979 256104398 67729087 499049418 946553241 664679870 314196865 601042408 171387407 1021533746 757953958 581722000 463517681 876570245 1056835561 353728251 1060916687 785093170 935915586 649398338 878444072 140965675 536003978 94261853 243191609 414826848 219994479 596808812 316886518 445897219 166996112 1060993166 652741406 580124547 55107421 5464727 696911112 297843614 63811349 237611712 351093539 7492797 90269307 893024817 1063696442 164232422 761370572 862204725 570844628 669293888 784722011 21696506 584169977 50334491 405435588 1068062387 908054864 915023351 448559881 455208669 365261341 228402523 529640915 549039011 773645117 409347309 11692796 28435384 223055679 177133232 592164142 1057524326 647223397 911204175 422778698 287084971 883371098 834749583 320674582 769926246 792776553 275012614 92216892 825196194 123089670 1698178 850309896 365464539 415820753 192029688 858012571 308095564 541224569 431100289 1022366684 962448766 12375866 664147840 153920209 261313692 85807985 791446796 819365396 1021866225 710413199 483063919 160291463 527647585 303830534 1032688540 961774870 317660 717956646 459831665 553447168 109742809 928321876 791482076 269583703 326638476 1057210071 356719838 117887833 359351489 370536482 587787974 59351960 448586123 275800570 25245791 207978569 20686948 494977519 399405542 1035837905 34179855 523924030 727926175 558317383 158683983 265337344 598559089 208190354 300286214 454426767 1040905879 132201815 69332959 189844267 890905998 317556407 802906656 185000523 717963761 806101648 237098862 926565109 533108298 469373213 801591613 695102711 926608305 1029210217 977601559 249308253 288551704 1058537137 513083935 779949812 116424332 782624982 1022805007 946366776 885541428 540822461 673432418 552527288 863627465 557229351 797926811 961245386 401978526 318467176 214390291 569302213 397969157 868244029 263080574 1055326884 577352621 770303376 697467435 474598334 469379773 550935255 122094459 176385275 690005074 11912765 710981875 732109150 433133910 1028841951 235788352 328596981 464532068 61616253 463784708 391657501 919238128 242606291 595147491 65568403 308201976 242786123 206145519 399792425 200772235 159018343 733255596 236254212 53289589 225108436 1002981147 166958268 1037028066 597898623 640550523 887893617 518499485 219669989 1044730358 869743331 933093945 355412480 23695174 323015785 651148613 897833173 728302063 523548498 757264157 579475929 105419334 373242413 24814739 443663418 371144937 444137531 910485555 687833587 652584179 964801715 807407880 876742129 615054952 327308920 977192631 220278766 953828280 898816982 912740925 678419199 869220573 805615129 393959637 427216117 789222650 228532595 153895161 914933545 91400514 835548841 267241913 180131158 893904587 230284861 89404173 624122651 272702101 855438003 675908801 83714081 576981020 714255314 597936470 569732260 843545843 879318349 207842542 927914734 341578158 814899628 1058901980 83096495 371394052 593243280 223164709 569124652 239352445 515852002 772362052 338989956 127478924 930747305 910875409 937810558 157420821 863317581 668362805 1011061324 924101007 784235423 1712983 111886452 209791500 931083390 555554583 403416404 934188181 902958805 92404690 701113509 1002471304 671930635 688723782 502438693 915222295 940146774 448069954 575140470 933403732 393831669 758333692 901566846 108929150 587620589 580257686 913317124 129306649 744579426 797335311 714090420 474192261 1007565888 623963531 726481463 800112309 721073020 99022900 446905200 303993524 838724866 570281821 220816390 622651157 480398670 95247194 114099078 858854219 715226508 621162619 281351686 697271417 118881805 15850640 459004744 331598178 219256877 277880956 995383049 466928545 839869599 530612336 344474617 222781224 85679561 249078734 809707030 27321287 768042553 46239038 467291484 783698738 744930350 4890628 741328238 383084781 787559717 249782213 645701754 115412603 916145533 659251135 779048165 699612530 29463236 987454778 350902180 426535696 762346588 708697411 456622087 393407532 1057026432 682665658 1053818182 978078722 89356016 946109156 432001067 881818216 989852165 997670231 564063741 212485318 198681078 906152520 253658663 539359013 46067222 52051157 82506606 685906509 227346 914433172 52604579 685295177 529106869 452355127 531763998 17136620 1025535289 639537250 77499241 361591891 923215049 438283877 35980099 27116830 424357411 1060935959 859405522 735155414 299299791 281553643 528827260 217818390 311143173 168714479 880891968 709071107 492958668 1023520431 227752981 69812808 333333300 200842504 197273014 458753927 520487159 782671689 516905911 285081444 170367147 653333391 455254191 1048187848 668276892 268097146 646605380 665304483 650922575 200753366 69959023 723084079 892474719 304020441 301466205 929890524 487551282 440631676 30193762 274504445 895965007 69489220 325810364 1037459016 813837006 346040720 53636352 786783601 168544121 386963688 932110636 856754210 163387155 727080587 468293224 168440962 648642171 309767010 715036837 702000746 396365910 175131487 565987461 229228944 174751067 945746179 609808822 194897047 1036115161 408149587 119427953 1014369263 152299354 180352442 628324584 514715335 319738526 569377944 724810140 251916117 604251844 690240466 228713020 715235654 86487869 688981347 216565903 230004366 528532425 483320837 132288170 828803616 8414811 711831508 281807844 352045794 225876573 543388163 325487791 938955571 689273000 597111468 886115829 562670646 833149246 981145035 450147661 1047231192 229568342 970885495 539342409 655010109 884667466 773156392 518170069 292834900 6288298 421930382 901819047 759257398 266040619 1040764967 696574946 511539461 298191471 1460113 709817001 295728472 851508838 207803260 1012926223 600290980 986915129 163940656 222344418 173129532 67434906 328215514 922607049 1039494415 353826784 344874835 21198720 508382748 1067401513 389628061 553203434 169651683 944988598 745457308 978534906 510819907 1000494082 601389913 374529363 395432193 379481349 903925939 658406381 593724982 564839973 161616125 473234277 654046205 334576609 407822528 840677462 9818810 158419311 374874346 891793015 761943065 410201821 396619038 43591249 26354102 538424987 236015931 493761974 305529900 888950526 719245781 907303900 228648635 248211808 594767601 778535573 37134302 477428844 316183157 916543366 507342535 998420666 731235770 155208660 512796540 626330461 466524545 156001130 119397451 558346544 896500178 635853272 644647025 850870329 899289110 730554051 65261421 224628095 227109647 276520675 674234889 568962385 387336418 619053973 930738746 358438981 79575248 915556211 526844909 774816121 719491009 68495539 784900178 22026644 777997731 924052082 407802467 531093598 179490982 90396614 446311127 34126163 448531706 653432193 560771766 283908604 691011499 406910008 773755312 783777877 457755805 562882294 375358878 326230276 503121745 797873234 335088538 96613674 49442581 885346949 333273196 729590053 454091953 578874652 34572214 549405801 338764513 224834159 884486449 298347809 202070720 962305319 891991570 587304892 465250670 41414177 653489451 831014557 465567821 162665084 600062505 892664147 584217384 1010992990 136341785 186007947 793857044 367509841 233716268 139736346 248113954 979819788 196134531 801896849 168071299 70338605 1056625440 756669354 585440722 27195795 293017012 140244469 154448704 351566000 346624147 499390717 512963753 603941574 817853690 915109200 791896166 369756739 328506441 782893118 353630633 479192150 360382824 122820194 788810319 135821309 725618867 181964697 332783375 2582046 1059056918 1007251365 507077413 946721177 717827379 396032806 558258658 501374985 853342672 620279693 765633403 1015708631 727826152 923154908 1016219091 981140241 1004557483 729518392 861824054 787970270 128519226 468873779 1063753562 835282873 452573934 1052364364 837103323 529744318 522417584 888356115 446282153 856020602 677270877 117807246 832817972 520971666 399854904 174583742 938061163 445350167 242105006 316763047 639585573 641164166 603723310 253560951 674370757 849209036 378310743 507856584 852241619 629209050 723925410 609960893 644017759 627269536 391294556 725351566 329195024 217294605 461241666 164632302 320393666 759368888 60531605 687633937 569547004 786819789 277832059 662911261 797219274 537441130 535785539 330876728 701917656 803426999 425188380 78456653 44390913 922335053 96175713 892275790 558520960 840058167 19295850 274920081 456271630 855530441 58398786 60093650 958588686 746426470 146224955 60458806 1042077660 701209042 442273580 720892221 774688594 305648480 124441735 169368366 271453421 817352925 415257111 650109370 486075701 770081337 404495342 123508627 881659001 587288795 852560533 85721709 546960163 815248424 1019133888 437130611 563344647 61657517 490853225 252443857 15256964 572009812 1025262853 783179870 638519087 640986668 699892835 572664032 669014313 421053390 251190630 947398206 39091060 657261654 879507334 852309942 310412280 327412557 779656082 745909113 766452158 616129357 161171377 360583219 489871756 13630460 6401318 553051984 115613581 269011830 151417042 549251227 155338779 348666949 588721291 98012934 253469054 382532931 125862795 589732409 864904398 291220073 435576401 85413971 971924195 467078485 111122346 438731349 317036348 995028538 526941153 40792489 78558870 1030685044 316585939 735911389 196172703 406917219 1021677942 852103591 544975351 285109576 547668181 829556377 512473237 553103586 894521548 53704076 202320437 826222946 331781286 368787467 513215841 494891420 636682698 329665089 794779790 200436656 364519366 62183023 136641953 868578720 1008479931 403403530 86140541 814278339 525064623 23337063 1049421016 743405370 934268042 231651965 674656354 839181830 1010019174 873960009 488976872 995092972 414011628 752495584 234044125 563960967 244038687 823315763 607114757 94328809 632226856 655979865 457360847 319472010 1051520687 100817935 384478327 101117 757466836 1051170564 752386782 1002291153 690562562 518651411 806690201 295967183 149012504 1043095503 531705352 964989388 12656486 490457830 695295973 863823217 953128669 292037364 431730916 646259784 202060914 528758266 209447194 8109753 720186092 1011475080 474627710 798546604 330477321 978376419 988862572 583050271 579436685 161079549 40062601 496825518 691092286 261451810 139751230 538049573 378057862 237713423 60916367 261059868 608850520 439674332 358741010 977284300 176440813 217822930 15679536 83994551 224374724 859485442 845579812 12281696 589962477 657643371 526708980 319690509 123198544 329417585 324506872 393072363 348171520 550263437 104284983 318071304 902359932 660442643 44036136 940456815 616761530 561157010 28332435 675858519 561192228 742489478 247534340 470541157 710607307 623025899 940647383 491189940 415665954 695006633 883364922 928458196 1011386219 535847943 982873674 692783488 324199695 950645479 523283501 524173523 910084652 85423614 202760148 123851796 460795495 556558964 180467177 322572569 284604972 817438596 955479376 873036334 2787776 524050200 147142269 368111938 33283958 823709260 245068853 1004527145 200991068 140451063 162564123 331725707 413110978 717299703 100998220 510607888 864006497 497830293 55327845 607363233 251748189 220854751 702140856 230559292 628794581 410168634 481908504 11745958 520353052 1045681820 174223429 834419483 1069466390 284077948 976982227 869440860 572134829 538149319 244544075 746796426 304299685 173883967 928662988 793495537 712595196 527617086 1012941965 851647083 1035278945 295621470 653096899 234817507 260004389 85365561 1042991544 664147424 579561903 395366140 598548797 186858496 802445423 23844662 1033455678 870863792 887392072 353310380 694371965 364443610 110195947 195159317 308900745 377025159 549932095 187766040 244670872 538141214 522639948 425391364 1056568107 177991028 194875299 985902426 171828600 610459361 240564537 878269452 896352395 846992462 509478882 491469807 80318942 76407798 113114570 791766231 313276905 200655302 665642083 408001737 431343185 298355118 854174171 359572341 287959852 756381867 590778393 1048348422 815104639 61626577 10286391 528800628 754866171 91437023 936492008 798420857 466291295 116227682 241832962 839081930 22790072 875843264 121546003 117393808 750125874 132608486 448446002 220474253 547123637 811656057 122227064 145261783 183589705 586955206 930766045 645508315 789101811 534353323 849208889 569942781 54236782 51133258 290558818 742297348 145523704 769236595 886369357 153631685 561371449 513313482 994575038 458924128 413372515 448140651 74757900 598466010 439758385 659712880 518829409 275601919 679552673 954141709 917555279 644634693 497747801 462832923 560162761 490107395 943670355 358093055 811930287 371742521 8932501 201950475 594853730 987980643 890834950 27613500 585516763 964783068 933269584 46969812 120445321 1021041796 2571026 587848346 903240688 217994569 248185278 232269992 234328137 696918405 265665840 47734580 32195693 711740707 51059642 876106254 785025230 552416647 351935813 523073506 748830282 903924299 506853406 878178607 683432819 211245347 116167552 571673225 405178638 734331979 5602621 772145594 975520555 54043593 89613459 291757700 884491034 443448832 522410632 57465817 542451803 922289923 402410883 616569660 1050968456 785592699 370700130 130370471 286326829 1034015110 887785802 750443103 175163371 94681796 211081155 617770474 557605776 134492824 924181944 576887015 333030198 742335746 1070028572 930350314 665477777 339921390 549517381 228039629 573363055 418061509 217768605 96940263 847598801 903185798 335454925 894554238 369817355 1052995227 938259035 689436498 434055622 710685518 808446703 840888502 762566580 367640082 1020456462 593725665 224381701 487659306 25828857 234368357 725897176 195127994 965704709 35635450 951855491 65733999 8423333 524974880 781281499 18890319 759328900 375471877 120661428 566381871 730258417 717978363 134263559 873703287 908738026 755212891 680740005 1060221922 540265037 393445834 7584514 535028121 1020629485 717479030 824346601 958602550 53019973 196222289 295432871 323870999 713216127 817716021 624654835 708644093 45680936 569315154 166642854 126562476 384069680 182713819 293237346 334953819 527821746 277848460 379327043 297767772 269831449 1066809669 23488046 433841676 232215726 328400463 10375365 451679423 1055362346 269787718 833101460 631951553 444951495 224207235 842382136 946604756 545038564 619804876 647828516 1036492044 325296055 737469934 1058903256 799082772 839276452 363005240 518750363 449613273 581059137 947813949 710530745 974616787 649454697 795197781 649823584 942239915 82065769 511028027 749694892 826084903 101645159 1002038851 1026757883 232742980 82740281 4002887 623265659 239527873 686455185 839285346 421795180 137894997 987087369 395838263 765317169 345352002 1065493632 121993068 288225199 583649327 576821316 63166825 912255273 787901755 362566621 614897758 230131889 493851077 2184409 119722075 278073261 719092777 5996459 46734611 820366194 818944784 245039438 1051202681 135158785 294942922 779443217 845871065 1026588424 867736864 513268224 76914016 835247588 846378733 716288000 986620250 1031125081 772151663 245361111 204062562 953453666 1039232005 848138965 424016946 347311014 500388918 60278758 75660775 687528822 262412720 789618744 125966447 274438785 755791562 825101035 604262438 259925155 944333660 296898442 704901618 290724262 905586458 1028025602 341431265 693206027 878928634 146655388 560700474 737597405 216896341 867970895 1032772105 796567919 630111439 200724407 1055196343 203556174 698157439 1043138986 448280359 44182145 221804487 172131512 340797814 693434898 903697157 994836149 759632864 787410720 118621728 890364742 958466420 351046022 861944060 1052696430 1049593073 197381270 295231569 365366202 29905645 138758360 704542066 536931138 503632021 883650200 724542575 301937085 78647577 968436387 219922302 563520768 569567985 716388442 869089770 134152586 99455025 189799257 972946496 685651517 71433269 473779143 272218055 908599150 350408544 204512071 161785023 772372911 293326382 531415751 350676491 41134411 971327141 211169631 753345392 971356418 108898567 438686483 99297966 425169216 539035107 163391290 469264458 133988219 435040668 867372646 634106255 485264622 1066279087 584264373 953687356 887644010 1007916606 877720254 1064833935 23814192 122759282 510425640 666077814 572417659 405565742 593877462 488540065 159835689 950202620 926167340 592868058 617579749 46199342 764690170 418977049 638368043 551786683 864660732 528603366 967217997 720169045 920421742 178989444 376982885 711787483 183518250 332045874 841036694 479175272 114851317 573076011 439528038 268564065 57722341 555434712 129336164 180320375 1056168503 263131834 423703718 257414057 70537392 586554892 252079140 1067659099 1062794338 21050541 139978445 179860427 158913111 921093936 873378213 37980459 933634474 872580679 979741625 7281435 723637831 121401814 929586469 1021410673 570925195 559087676 328971213 1033376666 39623188 696169325 723626187 974446603 999099907 84018485 1006621822 10499184 552422897 308950415 674652521 139010569 274745731 958981716 347899258 584692459 878469838 633802897 987981321 18485735 340758704 633906461 359433043 966041220 166691426 314004886 676210468 69430724 960402738 925140519 201363630 351587321 1018728580 885381206 875823377 651064692 103313990 853819767 605410557 276579995 884380157 148347005 467186904 838429317 587095916 818872426 309778977 875600663 1054629108 867504414 477977287 568367719 1031435773 99720710 932540007 146978086 1028394716 368593052 1068131757 909814533 15010849 621025199 645328652 162095587 693569224 712549071 555948845 985941268 247037660 202159631 366376387 491141757 812815903 391653343 919129327 442410819 63847761 644478532 848800211 728557525 659136274 585050820 783239159 1035795151 112582969 147945660 295776405 946828989 706212824 178041091 1008036784 569089031 915603809 153163085 813492452 87884803 494349351 737121056 274972360 457037335 217917937 1005037654 343752738 854060413 110823480 73613739 105696679 871143808 659079240 551432348 409770449 718555683 1060175511 848923564 440253408 589990943 475701090 983529636 934952475 379359235 247382585 292883113 334475868 67997960 55776647 148384832 463820640 146525222 693918 550204485 295573946 170473209 747461259 93511430 544335937 1011399846 279064914 20865928 632547315 727882190 313699545 233344069 688112484 986734322 833229835 675163327 433652857 448697318 168461153 358756483 210946956 300329199 393299201 485014582 424183502 139352885 767719686 603477590 334486333 27157118 797466883 621674225 864566026 323685166 6755970 689754777 567367079 766547144 535269194 672204711 277644391 117068771 547171727 948728423 657565380 1052323607 922208465 381658226 455013349 593442689 59362318 623546128 397912611 922763876 684891896 15900359 341314427 669485212 1051437733 998176136 466556247 393544230 100293224 622684897 515356024 453624224 135769506 61530440 590120485 643808753 726989609 381574283 574628102 979099706 373709708 905456215 432364403 743174597 125019530 487501894 457047508 1022871668 547848681 335327855 655884275 684824511 543404718 957569060 310882400 384090911 608490708 542553652 998911561 875333373 820157854 96396313 63628874 224105300 445902125 98015487 977071454 460573888 807150673 187785008 176916990 240765071 868496569 838676173 367334269 720036288 220167066 731390272 963132219 239849025 572495400 898049554 959383353 937160192 800056746 663598325 515183962 557909817 251862268 965838609 12036536 434652499 856552314 156223477 582094834 1012683300 880168684 1040675022 894017960 604792066 292165528 156862866 446716739 284220172 952221758 251023029 713827715 205373185 691440153 369101620 612587855 444619859 924402218 626364798 873202391 208060850 641142478 759742425 356538067 590461559 272123499 689916562 1035724668 756700406 950162042 761625336 723887706 783748646 630004676 473852631 1008583406 169048717 557765398 818230314 554768743 617673715 338786894 754784051 29236933 551704638 1006554089 581052268 322846410 888209521 340062513 88600055 757354933 527133554 213971253 601116832 827629239 895160458 919880250 270898654 702673290 174822461 555403860 326380580 394277621 481392377 405451905 680400093 1007571146 204560688 498972543 90867168 767614808 913977120 364684830 885578 106251297 766888107 773465124 263655924 538901543 279071053 308475223 467811921 1010412586 62006454 85394101 471229669 626651191 638365589 248775336 799020753 1049625807 63309467 816853285 138007368 166039062 1016965610 141491806 739843042 530165972 256951299 713688839 478264764 449596463 1067262999 459852152 762965980 435801298 845963871 100754819 173792581 70328289 256053630 775999004 60024377 337443076 1071675561 649651168 757907861 136027777 710349405 440177544 612198001 1037645830 834184047 869128201 1015142638 1015263850 675582931 622456272 625813387 1038139314 446781592 847404245 762702189 459273253 919327610 337145485 172526625 654031058 309664901 976705254 732187807 715652376 165461936 621193439 615156954 1037023577 313305237 966578769 972193532 489955079 1063885611 498325174 371940296 292185526 996148315 329956322 178917956 855779250 716248638 744434108 194889916 967903150 917530268 512584835 209428148 352936093 383823415 637982928 979169925 863484642 290814842 736527205 293076717 73559229 945866661 912445079 406889293 299348938 1042341098 208939002 123431818 78729379 740022457 209400498 331014708 1066733904 704615167 165312692 277019144 118691955 589043351 247215493 489759546 133047068 307881236 341827609 921134392 890066942 217231332 748614524 155925965 314093070 404066710 4302464 566948623 534545 484044486 543093026 223090459 405925053 13432844 986513095 252732980 1045653893 987919825 342876619 884499276 64486473 1042708452 75264676 93200100 892083414 195682149 786152964 327010965 34713284 941976747 405226095 819530127 326344949 440720444 480961390 919742334 340536319 968834093 954377584 476125224 983493392 859501225 51956811 900071475 600197471 923582585 317022292 310583175 1001838526 1000617075 511241543 990126801 424873175 1049131443 442537585 409345179 151580660 740271740 712009363 489065410 31842135 572808632 134524116 889924060 978635102 813067024 802604296 870223238 158662340 148466465 497231965 152605688 16064787 791827006 526898596 278612730 1054952665 1025209451 158083257 68526918 119032432 116793205 126725134 509123518 710001613 207061824 1033514235 938587406 1041062839 590361849 962899374 1068653825 422312713 846860855 879007842 916003349 369138945 1041284883 843373171 516328670 391494328 173857615 632737257 833098962 551565612 462389894 133609429 47475187 569149 164186351 952420575 385709424 368826235 555114026 437571780 961040405 762894347 356242268 699567268 793621112 446163640 107488911 464111931 991426711 744014873 95725089 79641081 484662743 431833437 228562385 1053114397 59964239 287241093 123674603 110377514 798212716 524239463 416858784 503052583 323100262 162667166 725854434 364260504 206180739 649177844 770906616 704180460 494897894 327843288 814827029 476628832 730505139 78720160 234187940 570736382 626091678 518101962 412070640 1005103900 203148515 669698524 280724094 646083972 685186112 361548501 681644480 186113263 857187544 108466304 605568079 957342237 83680142 647018607 64089293 731042526 1009180899 178357657 552514688 84869836 394067341 680225279 198521475 833041289 415864822 779567534 967916485 403500744 415294582 904068280 181053013 617358773 944198712 1056489928 1055915605 416695624 1015240042 1028173789 241573677 939739601 754627647 486348595 991484142 63360934 614689075 440177202 605788273 102759390 649042289 747552076 414064679 385793935 373702930 606427131 705938121 939014589 659053273 547220378 820218875 773237760 639818908 282512638 21722591 201398663 35966525 845119858 880633917 291308995 542041478 118041548 599901399 5847025 629214832 488341765 194971342 845262435 749868612 517738115 74614794 589877190 157736742 745489308 678421678 281870652 857626671 749667813 80366544 27579904 751912582 1006237953 281643731 577251417 657184089 707303204 305861314 852892221 33533031 740034953 482057306 535412179 781876944 180272374 978446717 771996647 526816559 543175012 14003482 905251418 214758936 764537219 365052418 269348208 365504470 455420668 27330120 991805079 100790372 648602409 363410444 681155281 72315685 900492400 130497888 1003917908 1015033372 768284857 636089836 858025802 390215055 629593621 62748899 668422690 306325983 847974059 924056101 724328689 386487687 435838050 630747637 83718048 553876306 853901745 485677548 220179736 423851294 781956144 956313080 106703659 977493446 486462854 729089554 403115361 603751393 146313903 358954565 490540658 996816058 993550736 589998433 688681850 934066150 352335434 909623727 288997017 515183773 696733082 734408995 245432094 677431779 289880085 1022784454 586587672 641283905 725106793 1035811182 88123047 284162598 1052788257 394110599 454403178 290030547 321745402 957358483 56175725 630565025 1011602315 154045575 394158409 1042786163 85226976 943877621 695310401 839838344 899663531 878729547 962854012 89212596 208650240 1026418764 819971935 611906262 949262058 516937693 178699232 555127226 417856766 684814033 503724165 133756293 90035971 1002882938 138886182 768018056 136105466 996001308 144760865 291093475 216761773 427356038 254391473 568286192 622731081 753209471 902060475 92138095 694397370 134060955 173429296 299658038 968076709 539869326 794595195 60633645 823995100 291827159 333212223 620871157 866363117 768536086 303862442 191949225 535573868 234804577 394985313 199457465 907978691 83369197 1048616531 303616249 617778155 651508338 24978688 259578212 405624681 887605922 1060714019 879075538 1003948676 754309703 1030933679 360558545 399974351 264473715 36586560 229886478 975277479 703772677 318972500 712628991 176595689 155230612 800997174 1009968948 143489244 926639810 166937456 296603862 313133779 316874480 404474111 803843695 284737544 402589018 861591976 1030589310 587080809 268307193 458831525 527707783 121072461 1019536884 123719483 378506525 381602629 266978565 933894367 746737221 1068365371 307655521 951311490 382255655 752810314 194518001 536690072 888093116 51697842 318565394 40412561 898446787 872035850 90478255 120661684 107860791 247753159 344151051 912411147 624053485 415120522 1045586535 32723191 246302564 258373897 506459556 927480929 1061130714 935619028 684086545 554158665 926377294 560068425 925773465 479852749 235155979 762409247 383921093 964804390 727679028 477943330 1040227961 64668868 351370161 355045099 564384411 64798303 43489302 230733974 586567311 621402130 364038583 376686706 761692018 457803278 268940090 711054679 323692687 831288528 21235904 785443469 496437318 827207117 660693972 978781200 832850193 577582318 835717601 201444632 142792287 80469308 265692291 170712467 698660517 709985163 536814413 712607572 175449890 101345661 534410251 755828219 260335943 202288147 290366115 895474099 5828396 365544781 52762086 1027815567 359759798 821194708 75120028 112371500 743616748 1008102594 142117216 506699229 94437319 494612667 56194807 1066380610 505090315 1007729057 410198482 677923151 148263527 7828793 788495578 260383397 957635263 70632949 88884186 421974863 1015056694 642319356 592217439 361486977 543879925 324312191 5005955 62455905 859411788 149433954 789192362 181705719 703582377 108568699 114931318 911512969 672231211 492228592 351927394 980718137 759526090 254845828 642509752 831321617 597756676 94206535 193186043 632929282 44335154 299528391 589254106 39250928 211269305 426852677 769027087 255990713 250020499 788232727 390459464 218445448 121292498 303696635 849798465 794011778 892858505 618425888 26255220 399944506 598075394 951144127 1072554323 583525548 231511052 750275483 647838942 414865013 1009499002 876432295 96528007 570609975 622243006 48617990 104922045 475074429 194945774 906706107 703248813 398724441 688897876 845478139 555494989 47456474 259447928 990574922 793771740 427014240 970601000 825843795 620208619 856937346 594778862 97271926 92521839 565478245 740844511 273357007 1014549056 118031376 676355535 423848237 477032850 765170729 1055686915 789044420 487601798 729433015 831591113 306924744 711004171 151216648 407424776 684996513 426043188 666276758 926704626 1037945191 49140312 183100005 315740252 596637806 122404051 809517586 341798261 525384694 480549454 779743168 617501063 838312901 593868387 692788929 516714648 935077296 394718602 839851477 126813008 415990799 203841320 774352038 1033429762 857992714 34205286 210447567 309408572 351386814 337142314 385873160 214226492 136052671 917163398 107048653 239920302 704074801 356397826 224202541 33705491 194014499 762947564 148892769 1037560915 579237538 266766552 167852518 151601269 70445146 678549447 865005542 706041991 1035697039 745889908 1059896088 96691932 488813160 399694767 924131817 902046806 694606071 749465222 776174238 555142811 201572106 680236133 85049170 101078324 182807023 961915760 843915304 462283175 293863748 611932702 824603893 664291754 896040696 750002174 637759222 597099871 646474803 462238234 11880845 454447453 793821618 730583742 275533535 826887649 700515508 67903458 57723393 7412724 252222824 924607469 666300085 783994778 46620768 617743430 488840394 782230272 539678466 321208223 957426034 933751409 612935577 643609741 427330490 307072471 5160434 671336834 650491222 482643638 740724687 959470240 370033189 228845099 472389203 568071087 838867118 814426581 486347260 43308854 203308397 939025837 603678855 376952230 16376540 18141816 847908395 761488713 424680173 613081064 825769382 328597900 1054144689 1060599119 749185464 270136538 791056551 1013567708 91447830 757294535 623142487 388214284 971712039 14816271 891225569 327680090 261117503 193213595 368415104 429705261 217402639 418506855 817048651 324036769 833992026 261449369 224290601 517165687 740727953 695136649 862423505 271337479 169997815 44001341 445849011 698155696 713492345 818650344 419357232 409076408 874771608 286750666 661005335 745552689 370213751 409028724 182587787 400946320 707076004 239875079 531011364 338808974 539106291 61866271 593697800 662229105 981826043 585295155 680363278 462631777 195619318 1053176745 221158653 313541200 387622770 886792903 547477028 669309063 843451982 636001275 845776526 331362803 293607507 488305483 257438633 331149860 189209942 337212666 602506215 683938157 703867023 706700036 58912461 706044417 454037443 737189620 199188129 416027586 353503141 567327606 756468047 254999136 58919023 964547671 466492463 681157711 311157338 222586913 90967963 407826574 564879271 893840804 59151304 399261760 952687674 357766064 972692638 636101387 262931956 554325893 678647479 152005699 527887286 815024703 353990604 819921735 98473389 981766248 87354147 125181458 213922337 707493804 673686101 690871525 433825955 1073500260 140179310 354883618 751105264 229413196 870841722 908498971 56341387 48976173 425109249 528618187 298073749 158630620 978452161 854948501 671314379 824068796 1054028056 50696924 1028558967 188847029 699152468 138280140 722981097 647537716 193019436 833042418 715056258 918862967 550528703 613403018 705174012 889291430 545721460 51943859 381440570 265295342 702972570 691315458 885364539 348543640 609811330 118164105 1019405637 1005321698 752732272 910816064 674746492 1038334641 584958652 712828360 1022110020 915297044 862936326 193870627 116116057 593913358 47535958 783969946 119653942 988396141 266485429 737723951 595872517 441667938 1018328365 913954331 653976324 101902687 1067290012 862923596 489466332 714843543 296028704 748642459 174273352 1067333264 520934021 829214888 545575169 160907364 813882823 456641405 270556065 700979417 953770480 731823866 260733522 659422413 92076584 1052601448 1071610030 1002576323 842172656 261543565 206192457 882846695 716737034 649336749 981751247 612926356 506436066 1040970645 563406433 879607804 135506041 315333879 513838739 947997494 346631281 248719413 1044761147 606113881 1007113750 1067428573 764928995 477103437 689406353 976205928 1030845460 910108180 97585100 789839016 141519646 1035357493 31827912 546904743 186595287 147308339 682641659 679718036 307271054 114759396 876574035 844526391 937499490 159444814 943000425 664288549 331193992 592192734 323899651 212307679 535541530 153102209 1003028386 777732751 598422884 401146691 514368875 580089806 375364793 908866344 512716440 263758132 224057734 11655397 847255387 180970765 617711005 203752558 51962776 841146904 214523228 157993109 704489030 255676098 150862396 715720836 238568747 218898155 89989043 112318338 489029693 157434594 746653733 1040757213 993436372 356617345 941523914 384941433 433033398 377354122 913474456 299334267 327309656 998100603 437680878 476807632 64091851 126971164 377763815 11456433 413676541 354144429 858631096 664655848 200936382 511385070 348695325 717948135 278427580 107774264 263714533 961915339 143883163 542679607 887184372 1026958193 650811712 191098442 564488600 307829823 560246679 146069582 259721822 496951731 249639303 1059949428 408937239 1005844588 219763151 40650519 131132043 495750824 288485951 145502899 517387904 879955066 466836142 336518168 80650542 704705843 925395413 797188051 65443977 907875630 201210033 777940949 151229584 46259943 968537002 974230988 1008311154 964438459 846604951 1047845403 778691007 745332086 641056584 560613460 132689039 358663502 253496389 509893166 848243429 802940127 912259427 1021255031 683709312 955343338 258823317 449269555 232083625 962179364 849478608 461888190 688723440 237160265 839270009 1041045688 977475694 316117827 793674840 313317224 389151685 415534852 273739734 264893917 361347147 919463518 429966629 58621002 69539019 747782332 862286619 760876106 569338547 243008038 140036330 746274498 227260778 692660691 753596419 66155240 885570854 35708087 806791447 11575661 105189900 191480887 131232676 724036471 418208168 679437968 264226220 350431955 682328963 988915230 643261984 617564129 805987293 416405692 157343704 173610556 188953394 309430710 450669432 443198917 145114851 324839712 939250731 1027674420 175075183 256793891 972486507 224689081 284686194 592810200 578983486 1056012027 257482070 289334597 489475310 399473948 883428537 741702232 729096291 34880625 80194681 299556512 929765547 810645522 1065397462 523062171 77649601 419537926 156608787 308701610 529461312 164168585 164105340 602820335 70395827 942479849 789952022 654390755 427233677 752145728 665149345 687132741 1066406603 473038638 687981736 678652279 231065596 452066259 618785126 44175157 162889679 359855064 56247997 830362174 273751166 183593219 744877857 428389630 793419920 1058457351 692951247 59726483 818700060 449419037 890434536 93488916 515910934 833254399 378245607 534577436 157843130 319278780 150625249 772544110 489729251 504157715 1054163071 595000131 812172598 185815550 654197237 699964066 387056834 310328252 231372139 455593871 878079997 746364211 569993922 1072170582 971345103 539586943 1065025890 317890773 154447538 74454252 560021007 634043133 316621134 68800880 488025915 432160174 1011621708 304677915 80766550 1024747089 501986731 242463398 150863276 478622302 685014745 280744033 65253685 979643661 29803898 945713248 776487198 184435296 1050184102 209461516 265342911 398550034 661645486 176048044 268874988 574034985 14283062 697539052 46188398 522058174 1010034028 91415362 991789376 744602715 100717969 540125003 230544697 968564088 715836533 544238964 848053781 169444149 711225745 921603233 60555188 488555962 188144540 249852125 916116298 375500535 325902927 460000147 93031289 620064997 749931272 75031995 120079156 242367098 1022970515 671675444 734004978 505765818 27262769 589262957 155356151 781383255 901391815 30097281 95173718 960833912 224731778 393001083 625610877 353343032 852722631 822925540 697284058 448164969 821750352 526324701 203633000 21722459 826941362 494737708 353539693 853265569 557675985 997888082 50566938 354190295 1030865497 1069032448 10353046 1004928104 43254773 852944802 236812865 760960180 1066913564 993761231 670758480 750137703 217966355 385931629 831422624 1023313682 936992262 957687110 1020646755 538986398 520306202 906786511 849159991 597919296 213579230 177858177 1034975651 524636467 754337711 786799758 1059346084 831050789 113359630 70294181 31371595 42243573 936243498 869825720 226673967 346015732 139985889 784813210 902303515 144742420 682710363 1028400323 835625211 544840310 49523305 1005791938 1003747314 452988830 625919474 491049608 524817679 748045741 339262263 432048197 912021105 827960447 209661400 916251896 277444900 1029677025 374535093 881204630 908707655 526252714 16290651 428961857 560837342 865506828 71915232 878378262 868839653 889825673 881684636 726102267 153223569 473692452 471566546 99677681 392890805 306229025 881718536 498169644 384130782 29745827 255738197 272486320 442335390 794520874 142537323 172030206 538795419 241775000 512031577 46113582 211529669 1037845775 601971461 268184644 90824517 976347661 242127588 557266199 753899716 819042035 448335988 964954966 462201005 259626557 729004827 555923658 590213018 1005953869 437160284 281351849 265753418 173914928 505050700 142313355 1027943356 158453836 1019358395 316334712 14154955 792079393 207045476 891446369 508865427 536431109 331421566 741342158 412560488 68850304 626527075 773901776 778070687 105094313 269593162 577690011 623563999 194725138 692853069 920675508 141060502 217406969 36517980 1005212061 243838267 74329427 1007322048 209318885 502554484 821726006 723421795 769027908 1007556957 54733828 765472002 638614851 539532298 435432826 8794434 321064777 712174524 726867770 562699262 153570621 88955915 716481853 172519181 282242749 183672481 324440044 422205722 288361322 374097833 653496308 566646923 796392096 310111326 772982200 345778392 110147633 52344896 12106702 588696096 12975008 124336601 15828729 337697668 878060363 254499660 309757393 441249567 545972628 904555294 739848177 83586250 251900591 86572116 873623588 844911559 835673250 673126293 1044607829 757057139 246502094 861445357 159463683 8412071 291893269 587091810 451152097 82161240 462471846 742228855 769792758 998084046 246059598 322674192 1010847009 176802190 152663417 344679960 148167609 46266339 801698418 606917520 881828859 649322922 976836812 213905954 819213506 545651110 562430477 205491785 179042590 375033883 123411373 514019620 755018907 987986881 655332648 156176941 863398779 915420235 524232994 26409835 704603933 295543409 874683110 1013583038 189100171 716092181 109473230 755143555 890887024 375092451 117714234 819931453 15037936 66363476 1051194163 1007229632 481167731 649300458 874646347 856301802 919108634 558801438 298460398 93795484 223629103 1027419467 970800644 83932681 779461154 850184646 689745099 227362812 214737482 335117165 341753297 669827541 328223227 610780683 419417737 22277599 835067726 955740992 353489439 1054767064 521108470 1068742881 229998570 646009388 471234587 933947898 268573794 746261474 740538298 298440228 787056720 326757963 279001365 851789993 822808564 214595974 21305768 833853542 345456503 472367009 99417100 684866792 746487202 464112059 950406626 421292361 401367057 1062656395 968774556 142978731 230209095 763984492 73230175 881500152 890265483 721747978 619459449 381239449 901669920 10819812 34635800 427273148 274006164 888042271 757044681 760830170 97914524 930268349 778384507 286769522 27851513 273609551 911673648 47478379 622491011 453439399 44215588 431606417 81090545 763683732 723717451 579747374 26248730 974438844 835810237 231173381 648405748 879023019 13432166 1045883594 834104960 295895352 515691362 738308523 94557902 811959115 210958176 1052279520 741746793 593988020 132904184 448266346 57118894 337928936 679812991 747455127 163060222 1054456510 693964175 563620234 997461212 885358350 638607129 500514657 104682889 1050466344 943138797 445104181 477202362 1057109176 893232165 380683392 359153537 699336215 741491042 825107052 856275883 692531894 182342379 48723747 128128198 216539520 174069980 218156599 538001548 291249734 200896920 182760412 966659388 923825008 186740005 318179555 7120611 851670882 1067442698 1044418873 486988131 490232435 927427477 872948367 457274697 216446952 693957633 815186045 671973372 27610270 819814096 341303099 76426452 529166492 18907524 901494652 873448336 108824996 756162904 862071190 578446724 663518639 25522015 13688039 651596751 805398331 51654502 516585841 977129720 814984175 566307953 733053931 329342516 666883402 36317457 669598569 474677522 493414088 321429562 525736356 676152031 319206333 297909028 878259381 995889030 696868844 435272348 595919211 831772785 867665941 475819398 599380749 422500963 356738200 511933368 414458291 977045748 187166988 405666937 939212775 623111651 351421114 122155996 1020434713 730111493 318385608 284943230 574445307 27119937 190357857 811375693 560559603 539993813 457229554 829395880 947618810 249877463 14310356 639288058 308620285 496391356 893513069 857669763 38860763 699190973 602864834 816226977 540983883 212300371 543795918 501489516 663330441 198571246 835514200 448380943 674717720 292297900 930409281 339551828 140632071 596687783 383942251 616493657 343183440 943150543 326799062 359011604 303167324 59786819 81711728 845685360 771588300 890744047 1064848766 313794554 189646157 372432057 995110551 776955875 345958856 907310054 253480508 1066067242 598815300 112674138 374053539 421349772 658802256 723874529 587475469 53047104 305109417 353847326 756953260 654164941 230867492 84082159 841920955 403590854 1072877621 728952526 773545780 40711448 894828539 833653161 947285504 105808181 68482413 90852178 508479896 14058591 679794726 37135080 23562309 539806017 488455471 867667458 678816989 630388035 902104645 102230132 242617065 938883176 133649223 430424621 364913927 717352438 615307588 973041330 369559621 1062534782 361797010 405993535 564147436 729819042 765237238 1008498868 380359543 660855426 724604755 270982282 570186187 126009737 633748132 90057041 410518685 305111956 803259913 354376849 603609638 818204154 199785868 350718804 845914851 766026414 895418904 785951423 107840768 70486789 598295562 828596957 424896630 281843599 1058295483 1032041348 401111692 1043641378 284884734 979463886 842883890 927122550 953982921 674419825 143944198 891995209 690778085 206107200 428377872 521440104 218081511 562892508 975489951 534346759 623053062 1065838075 122903567 164138705 132028900 461353957 557800794 680981171 570130558 427412841 242073742 865571554 502005025 938022547 514329287 208440443 892928942 265236920 456937288 978905407 397582986 1073193456 942269960 617917394 589496680 1037250396 312921553 1015075801 136971631 265526652 409388919 904308984 178905169 1070039910 1073312729 902372665 977067561 1018008079 192065843 833551801 460860161 1031842867 716991268 1068128185 557911447 747929389 222290055 970635031 221414685 781601337 301456123 634047043 437559936 300779178 542187490 668587736 829168164 194296977 415889997 436892630 937314296 20634542 897281684 235638782 755020473 183159949 215719010 744307287 759185497 469118671 491111519 422657314 797850834 679939176 589334915 656219170 174669990 658195965 703257575 311623646 940052417 960399504 1023310451 783235840 612883013 394137119 1042408077 200873406 763655486 423020321 178273969 856537718 952772393 904953106 821612275 44765054 891681838 253614737 674650431 509759320 867474304 336011931 469939217 163563143 935616245 195729478 174356745 371233247 169202401 345779582 595910705 553714733 660151089 683631180 519249143 211438815 425941710 965950759 248016203 51347000 312718621 869399135 538530492 926508990 795689534 399608762 335007831 522908745 242765048 829622865 11553763 322166028 487072821 298696073 18174729 664657335 794543511 756720786 19182643 655638948 793875560 379515543 232677939 375886481 247879537 70766669 343825417 484609578 145669460 691351486 654072529 32081341 711579542 79115066 129432329 938643713 968305323 501030998 273049885 135396163 184493966 822475699 317855893 956281302 995560444 495065895 931072200 547755987 503313027 516490982 958989900 670875780 276568511 127246690 74143301 194897367 330659415 377656118 394913691 411552776 1015746068 29404930 460907316 611045967 698667904 351524433 147836986 471278120 235838260 948959135 34479919 154348302 809549024 232039715 994159429 681412579 729285600 574259593 798927332 811793373 1041304077 638048085 65968840 779342984 495708266 987865701 915929583 547122848 223069046 273471576 309070634 707653658 18523763 614061421 491287181 758194993 680507146 797786417 805130084 763597338 488263707 477715320 850922942 99334924 699699415 873223994 138425952 1066120537 169422010 354936437 947966288 651705068 937858422 457693974 603903828 71946973 343649102 967519260 242545553 656861994 931834852 323719466 827485072 360124809 714292704 102576035 578325353 662670056 574849198 926740969 277307744 678137292 381629129 1068302895 593816605 54466472 489512346 422427539 759744558 821371490 530733881 84894985 331280170 303869832 503045897 828122589 229743425 155010089 509718770 481942064 996240662 1053431529 600554613 210864027 110773133 47488514 709344286 706023319 181303565 334092023 35692152 748913568 301859128 929656734 263133992 80530790 597533821 576527318 21047817 1040064941 393696045 181044796 400441227 565070203 920393532 57067454 982309535 405274335 744942530 992636990 773926148 111967439 674861104 219256093 617043414 976446646 839199677 1013963173 463567408 738843673 332509550 577227076 483237446 539376138 309699009 190444089 886703690 571769486 961808837 567342795 576868400 300939846 16446809 547531734 719414007 30100124 612797171 139540758 1024675788 267572590 343173457 44559026 258367061 538268319 65396511 564852090 268304265 251021953 743741374 864995676 225688739 627700040 63135939 673676128 107654589 206175075 173125659 686838270 1058727644 818744624 125498846 813163789 949551338 783240423 703660926 13901907 721261049 108437954 927315164 539260918 89600359 10518162 472106644 136395485 98725868 917779178 399090109 7474874 361845095 52807978 503963928 271728310 983701179 582865413 215499921 225061585 252306700 526435736 852017712 1004073195 621886119 939538919 918379310 297789462 833773480 236391574 1028759363 530967633 919294996 346631465 567713567 137622437 793755769 370362267 352357230 697525895 507131620 1031808671 843475068 203856797 361742231 551404532 430033738 176073907 497608288 1071047588 463985577 399868317 821080963 112400205 550021956 74495698 729127451 582517626 77887458 1000092187 475867344 282988998 633360222 29012281 941985986 732527387 54216919 1012123985 64925599 502866914 500816464 283057101 930539874 971925679 283702284 250896742 545352673 45175764 835795038 542792809 243127524 530742448 218742683 587167202 72193884 515421935 417885405 486973371 310702025 784131827 1065963720 239653418 641856140 238822273 781009117 923052762 439824560 84568724 353634258 778783787 1017152539 798558566 756917318 27540168 477522655 756446733 54649161 1065298377 183994059 526319168 1020425013 69754948 657227168 375387864 933973795 381694770 12884776 876976789 396531046 170043430 674336045 567618999 579698139 563753362 630392430 286567085 343379272 185273782 942356955 565709340 351865687 836674692 138987733 395599672 410641531 373673011 382210389 299968416 444243610 282213974 326204811 680747238 722228309 438661427 74910787 532830496 1035893075 644699008 214449089 889434586 886015096 294057341 762470903 622283171 266867113 423304964 527634812 761988736 43174702 966899116 63836155 421717419 28255949 937695890 714168759 123608803 963566346 482528360 1062401403 392816345 123205606 526757573 33211166 552999029 8017648 787257853 1010605512 88020148 164124807 432206400 753787175 625023744 718291753 644993039 333662402 1036251415 558030716 615810388 140144333 48396406 127712795 206191502 1855790 477847340 378798860 631454774 922761774 979874599 279268750 313046628 275856843 306575103 405677569 17519956 608765522 309477250 432712920 100216615 197572847 398729555 825384482 910723338 184085720 840170357 1021227433 38533582 717599979 1033675402 652760313 140831035 676852927 857656537 320300810 591657665 810182527 1066803997 1061101005 390421005 60079529 259619794 457991635 566032279 841794506 646608754 638779030 404081194 760993029 1039752975 755974151 8192251 283629326 505373968 353974424 991911414 924996658 1016103616 661120652 718066626 441715607 809328694 742692553 932369223 782997830 8641389 852916301 62325974 392278693 351015967 667076265 959421256 591442232 752563639 732367668 732659662 1052376300 442756893 885716251 730420717 302978657 400321733 295266193 931182413 1003491722 894229193 821898762 620812600 758266548 293931161 1038845297 309172313 410958440 800456767 571186622 348291028 397815822 558820969 381847784 1042801389 381548922 625821214 996229004 243014036 67431140 927086437 898502248 453407579 162950069 598891279 901119349 483708055 672993978 665121774 925321237 936768037 288974294 432912638 376519978 816672685 190772310 321404900 257948545 575647805 704285483 1039989566 240885692 634161169 12664784 188141286 619874366 1047850995 753808909 33183179 766786963 940239936 481797873 241456387 484536099 835608839 821621630 199921182 359207831 575827962 594354826 764129361 783831114 540057324 862055766 213182713 921002608 1024086451 607739511 560506132 916854235 66041308 114588776 709970134 32291898 762830045 862567735 189311870 935980547 810061512 449495288 381536090 953214882 214116828 629960871 704946662 348800697 611684663 260867915 1014390654 557065815 904769631 829236090 390909212 73600794 954667722 787317190 318230483 102010443 190099225 150903481 232047793 840583670 893109423 869399090 58987648 23910755 34812428 987537920 90485133 665772333 391493662 410796548 414196890 1061628010 660301334 185410919 718207514 180996499 224352388 771145004 624770123 671052598 41241777 73555775 672926387 599763009 776665451 296148716 373593275 410230528 899918063 524931299 227535065 266827515 5857190 667621736 261332617 391340209 696679483 908723069 457109624 170380921 88010059 234796296 166659872 707550422 763251346 494863110 612966059 751882774 105168172 733485554 730691266 756620379 434707511 2594206 696030019 1013033672 942590367 40133828 81814633 488814828 99197944 325301712 791010468 1012445555 183441231 734501233 236663941 461796727 348881925 812410765 327841501 588893328 807106343 239732757 947845191 603338580 1060526596 116517568 835305542 649622214 352104824 476740026 939715030 447313379 271091491 300433859 929599520 573315958 656089448 606120424 510188959 632793883 464067913 817700034 893825494 1032009435 173614808 420022920 629409281 798564532 696968770 164540237 549346927 918479412 1037372403 972906855 470737718 746112123 297938889 81646600 656943790 130174558 154778154 55407651 637338682 809449744 25085234 834602646 712965310 339495229 378537832 894166972 606181735 778190488 695723846 374893967 135229681 620107408 438793305 230096620 608767341 491401857 1035310155 324808363 953730186 346613908 617728823 827456588 1011160770 250866195 211075517 144718422 634988448 12338431 1010766603 224809836 218587912 972414022 724701708 216622455 333313811 667320190 343644905 319464354 238034864 434138959 475933334 934260147 425805050 762862331 599605945 326509358 67317475 1054806166 587460596 933792214 851283586 1059650017 1042865471 119127606 531089750 330548980 984948129 981098509 412904202 361771606 83131616 192977490 649217160 390450183 147109421 398260000 281947574 167237910 356885806 786338828 434204667 489565016 322532652 322566931 85833185 694089436 866534342 959155334 113726444 837966165 546011070 413764135 778677061 2733013 759492530 93155408 470495278 607764792 586197630 478538183 27711747 358386860 144249902 303027683 286342501 1065996965 497266084 94527829 34205737 454784285 1040500711 694484193 53816916 243335890 622864737 372777353 738219194 98200197 401296888 202960783 657508141 12759897 129886576 73547463 20897090 213718056 1067538098 206550700 242016854 631481093 229265458 401641250 991048536 959831116 793619368 313013442 692892482 10003277 238657977 81719783 620887832 342474087 1006308474 885654265 510671092 936058772 725530929 161865596 993037692 208564118 332698844 1037576751 750321515 743976839 1032060331 809182690 361291832 882499633 286179231 227449489 65262537 30653141 472261739 775682021 570339667 25033180 1007861694 255404950 638106528 164555728 724869395 124109683 805477990 489593784 938395885 529643483 20347928 407204657 330239843 691669360 824147924 171200030 245321048 839214337 409655673 969495276 691263894 800519181 570203496 848779668 821160045 519873178 1042270227 222059800 1026973959 428365400 203812923 614700038 88720927 493099943 703762433 632536149 487407424 242594515 40183429 194937909 311972906 927564258 692457106 881924072 523199119 927550121 601075795 817623810 399693156 57414150 430030778 1007169827 518299521 98815190 751979825 384736484 237858362 858257717 759459014 350478400 925397637 902370517 20635258 161386193 232309951 483085768 172910760 570434378 720892337 665722809 707134729 393453614 873506513 1044884521 126252218 112946394 277125748 693003838 256123153 88392728 412007817 604790597 398240974 37971051 1036112008 446640995 272320429 132823419 103792336 616109111 969434522 881369362 174230590 592729076 1064718423 773986119 755118302 967813740 195881655 256959336 919512385 5003388 17479233 322569908 267788808 381197825 934424071 180447260 573107867 857479063 478105162 1056390079 171246740 883866903 41292810 1005663433 770977815 287437704 16465926 871506775 429267942 286143798 397430729 929907025 932710269 546840308 66343936 981114718 828532876 303747288 851907512 483004696 1066688853 144170956 826155644 84806863 93158936 240680672 323369131 665811009 163770402 288365095 1896382 875464565 630502909 1054180066 52444776 47079792 2913095 1051611106 768665114 994877788 251664334 594443417 470172900 221406405 1013446998 789238932 356820697 15204961 553535188 883356208 708288162 492762177 989771714 286060359 1058268943 565724302 270796512 655336467 783828019 226212821 444035314 814745104 251337229 811593289 673714932 870501431 640060733 524819737 168365273 244602859 615553138 653810991 1000021572 297612897 430549834 397744347 766748082 692175925 1005681918 801328708 266913849 281594234 993419087 65708146 829768016 948381037 996881012 153130247 1033890819 55377655 630277466 499791144 246106583 607419409 169978238 377905075 977628244 982307593 223055958 477182562 855839440 313522644 795471515 180458603 360772885 768383522 942645121 633086489 283138629 136672136 360605798 786427231 712377637 924299735 617239871 16195462 299204219 704286346 775407218 678522303 147142919 720998746 680055407 257772544 992218480 88416804 928362331 672941903 547987447 569651982 483821728 322556836 600469507 761336288 895993902 278020584 275815953 1030258608 399112651 433953802 644328000 445993309 236761063 464828134 155472176 702518766 650860818 197696655 341616154 558928502 952178375 845033076 333704142 457464891 687014244 159473899 196878925 45405268 551756867 449946207 780953092 512116391 388690360 87148895 478817187 41676893 845773367 33623570 335579920 126833616 653589755 397693071 921977697 382858420 712314622 990598024 10549527 165610321 129676303 574922713 949665358 580432778 725390550 839606779 554567098 602119552 26072252 1041936416 249786334 381081003 156343629 350271687 182354298 985237070 231762761 253224362 570813149 26982558 197188297 1048901211 766980108 983215567 664198352 508802709 119184465 580331242 118863324 455086989 146225330 656172908 802939931 339519507 159264254 423344628 874724718 357462748 361735225 508459224 717189390 922886755 199472277 201829433 547522833 957076260 525443458 781988515 96753980 849663282 355407813 44245816 338152815 948694881 81334730 863582817 301466224 311514321 117601734 1010415561 74216233 961037627 515671644 448399411 80938778 561477613 279066127 248009201 734364890 521465280 854572303 809913131 600483233 942298769 784952374 161937749 888492391 397118993 35024100 600405209 58595527 432204476 818715253 721470584 61258333 852108672 1068439250 655273480 914776464 987329657 567518860 782578577 812526673 913714552 608871755 217331043 757538722 179825019 765448967 537862695 624232467 544027446 944008030 24525915 443399685 616533298 685213403 150866998 745264928 417491321 923502968 911873831 608479137 735003739 737655035 201996618 891497481 727324437 177000129 206107812 70876719 129021309 207809426 406021784 677340161 571029942 135433617 1035085487 447351431 1024965679 113412417 517168427 48276041 1072578326 765848758 571155554 280802214 731158805 128212993 671917335 22060458 766394949 676579448 227493486 643444848 671882864 90224734 807418499 680336545 572230113 36454646 404601430 1037705412 95373805 702105617 610502545 633996779 139580798 538054786 157479153 184031421 680620956 127003769 594547379 521185746 725285779 537836923 422576571 69652552 180559704 295552798 963290055 196338156 22791901 238522032 877497645 229205695 647649999 511873725 495793078 643303815 711073101 136541895 777672070 581785575 534173767 745274606 666709453 1022974437 173898100 835031131 486703917 888934111 811799514 395437329 734836765 467538951 844402393 884186192 988139239 663917744 770244162 418425531 123078886 435726287 108176908 431702719 832257819 526676285 255100760 1071438789 862163016 315178134 726285528 960088191 569933773 75596571 864035106 696476445 1058722801 706790202 452687977 342373299 924862010 752477406 126125636 721531818 293490330 770846049 610606443 51449154 293646950 753009005 742591567 895850058 284643414 844508346 179565110 749301255 412595854 133254600 916467209 938201727 421512890 93378766 422944284 754697993 463066908 291221477 915958612 179931465 19465740 151422837 953450325 396849616 878064176 150113007 485166427 638066477 493195993 725721459 37621007 374913959 613864631 653235983 913084610 818470984 1067579310 736346788 784053479 502026467 281783449 105619029 439348907 74297875 718607775 449203653 191338550 627171252 565547271 834894234 600394314 580622376 921873007 971816839 1046863806 314211647 599601343 535310885 961492159 723728808 661596707 392966312 334924919 343619504 349743291 577957071 996804850 646814934 570116497 456493652 652208254 382142923 734835459 507973519 133921268 990779024 1070887633 177300742 915498722 468784593 494652684 7616828 187050109 403371873 694592384 519506004 209956780 552894875 547944048 694651334 384928496 26035337 589989326 349459768 685969542 237400388 913058077 103950209 627185860 433692197 1010032644 966443912 772746322 331251962 256839416 199579961 270253841 783779627 1003326770 740581288 65262965 618898479 847426553 397189768 23053281 994869194 258474322 930009939 40278076 862705838 821242041 459972257 402650535 69191428 664076113 50746707 541470392 1043968929 172803752 23579391 1017400819 597751623 711800265 184179945 1018517011 281038633 402128655 371467545 282794523 758083731 440852011 222313736 1026397467 567083442 719172470 55877588 878767847 576074875 615730895 717569681 505666773 194402898 338084185 613878047 292531091 50981582 407961173 280140569 72687136 545587104 180179490 247142015 604068015 535310572 809777018 826451873 185823257 441552980 730993337 91665761 122818317 658105227 1006560506 638948405 695410635 707501249 636917955 820686965 45161339 710921379 317861858 469046505 1018155592 967481435 178304481 888967921 950804159 142869950 60334053 999026754 964489079 929268360 149733151 51588546 373250688 1006838430 465516126 991779738 719860930 361456208 732312884 854578261 506331923 876723304 182183715 838918778 321953124 789584339 537981829 915208381 74614039 1048779993 962103509 233946287 893049917 408647757 930709045 60040792 201767469 571089056 828092608 771709279 975768627 317588404 440547725 1019330343 871120658 367776087 848393167 701390332 660452782 579545558 570724376 184520306 61986473 763752988 796693634 697815392 493730083 576777214 994452020 468067437 648159366 739182492 824514134 288405665 140237229 325491044 888660507 275322363 341520091 228635499 620751963 206661760 895423199 26001378 381594588 1053691637 715352492 268555851 1033980424 748570883 708776912 246134610 718488511 574180172 203577166 889431099 401486857 266086629 815883316 539678184 961258888 250613574 336444328 647490951 35960282 984405886 801144849 960718822 585433965 240321702 291101176 221645354 668167060 698439356 325367784 251411008 66657871 847575794 561678333 508007502 813116461 82927036 978134647 45954532 914268663 162745475 413722534 313740936 15045952 6886821 861112647 598769304 685032584 702487374 798531543 323552860 160658334 173306970 33842322 106742955 599964393 775562941 1031243235 551051139 103489749 769888553 257660724 89877976 591687515 851351226 809268222 160637728 850046777 732789267 758649585 958516795 753445810 179858674 956937328 1051631768 886304587 726810400 95903794 18669412 390557206 404660481 801073508 268831456 114166229 100008765 185113095 490156398 754210591 690427435 347816976 668544527 1063264360 739262440 240274417 568775848 965010367 9780418 104247870 917047615 768446437 25448654 33157955 1059338519 675413031 296275210 270934164 560021387 64616813 829739857 781907879 478046448 356067514 378673539 736552459 95259798 806661643 20868005 754105619 84056642 898083338 160395591 382405413 212952909 203584292 11117755 106880481 669804929 336594144 771021723 120538628 817867826 857588551 118549742 813497732 453462395 784311022 391227069 170841695 229229969 1059966969 1008999518 976532580 32716533 935710732 567001862 1031455604 1053622046 734478896 798352639 584145958 728957072 470445672 843444629 327548142 700219960 1058227972 235436539 551109193 111615342 4858922 398423063 1001160546 402586780 1011895052 688518125 388271930 344079862 409111169 468360318 57061451 209623117 240693017 278065163 347894490 175506173 796550630 537178970 331355793 866496212 568720267 1038715312 240146150 1032821842 1360048 103745335 950832997 615802686 421472443 659221853 254786711 546510303 25219655 1017837801 78658816 810961785 753339927 545702972 299617506 731755938 201086295 48400137 343411067 695231380 114326894 611554905 395649362 297875088 823842218 608099706 890885330 836185932 372075072 263769151 967938529 601353871 277854930 244563321 697481352 354091836 778581827 434912543 589918757 248803172 302128508 215846874 644090422 825767953 783485135 161294417 608118346 289721662 741370991 1018072029 959427521 1019435529 531028884 547813339 240858728 724422984 141823778 94102564 30277028 989224995 113907719 479308605 622580843 1019573098 477627827 498704891 1036467940 85553348 867907166 515280050 690718830 208104128 1026239614 213343046 715474195 431859108 594726052 313202339 287107184 6319257 515841609 681601385 316136596 684772435 649579098 561733558 825202578 514856085 937983139 150297158 752902056 750591752 631130529 271010557 784956186 1040555933 641235634 41797511 33790015 812225140 531507625 357897752 264577834 47162260 499118997 781007362 427694770 599876174 527048865 400293600 450568865 645470489 1037415116 33642113 28673250 55410204 822849589 697199309 891154168 844249184 350685229 631966131 751378079 718893311 947771577 1005604210 661688035 359806807 383393086 621374051 1004587127 746559511 851223031 240751666 534235403 128612368 476510721 171334755 1012970771 897550290 95240353 871182219 1014482861 14051495 1024537417 138091424 548040332 456642543 849041550 182323566 365159741 707524988 632256703 619410677 913931586 375152826 670823459 799355123 948273286 973021149 678313665 1028503142 218562138 406874899 479138887 132423291 757380386 83456985 196498499 989145448 536642635 566613932 53431718 757914573 628655413 723681779 369062131 668168957 998404797 408116055 676495441 741588147 345354607 601103092 570606477 418454888 1042364632 479582191 647259364 991638673 492373565 313319039 848410054 214404659 411490237 885597732 108370540 107964876 510403735 583420910 928343557 270002451 649198730 641256135 723960281 74952006 559607835 833525393 790959933 399495760 145491880 1033221246 674008350 880784221 329516243 315766688 324973186 851207062 550606139 10911344 756302640 563145379 94567403 536973493 271553650 169107093 95435915 1031880498 387169250 156592238 515840490 661516690 909066721 962043509 517743705 349262010 174832279 440243136 428945840 359891018 789477139 116379513 690833916 149858093 310562264 468141257 931823213 184771500 93670715 250523160 435727188 409609281 1020416893 96046860 373077659 357490482 1068219990 669375779 1025985592 935688656 900234516 60844997 1040073699 488983193 247884837 474880196 707088025 797642898 127739340 234694900 739020749 226368611 24828309 300318618 748319244 280484270 651685429 211139824 698892295 996686982 385231369 81708645 534989826 1047956036 478831349 230994206 76439783 960900707 970091263 601501778 1010547718 162142551 975553052 675385891 381806585 907196104 147194591 73144986 375198370 83514396 240206793 118144536 357868758 275244593 392301980 775617767 101666371 632492930 527911541 142737015 561863503 441064522 672582876 100345306 483631290 816284587 336439059 648281735 337246973 472961985 405757079 817443040 992690248 192355244 142951461 236205888 628932339 296267416 639210763 735216784 230008093 917277424 187410795 718152864 501281183 1045126881 932083912 912496953 980524367 342254002 246931302 126930849 385206466 179675278 360821590 431092502 984460484 954612122 777879444 47020848 552916054 445939263 567010208 135877653 653714102 335369559 854175043 326891656 629705503 957159814 693342391 910728135 262005109 429291986 184069432 957024904 448793445 478660415 305462042 380944503 413163335 1047247990 400321289 1033900922 430085362 981071958 308899250 841645410 982553087 285301998 867599612 190706455 879667917 550684725 762171142 463696225 394930062 341799733 409556562 1015368076 1028501019 805020986 726657246 88623630 833759607 45667585 440457134 730447279 714424695 88549305 25491883 510601492 54813353 324689731 722707887 1051443593 555982300 530161727 996137313 883129046 670912474 353280939 957871494 508448253 758293358 210999595 783438255 631648864 599426230 482879166 439068490 1057136448 693946866 451159816 700579421 469512820 711161226 875026884 372174251 944975357 538394528 330217816 984385298 189612378 34636351 363852301 611249778 830800934 337171663 635629670 860463891 962186172 965866311 804647530 991640767 335329133 201830676 550130672 577709823 819409111 396500912 957619 927153451 303593229 669665129 316207469 416450832 695794764 463731186 147013779 370495853 122863498 1029827389 42770548 285043643 395630566 654584934 74931405 299469980 761143418 225581239 943812866 44964000 337637641 90344393 259707832 16250508 901568613 530389003 207295307 898239077 995216934 29164366 453302003 877401190 45796710 653995767 1066935028 555066772 859552584 81151634 717110948 525864260 435106850 29068258 262622716 890732917 56411734 100404619 642247415 715612178 968644726 353723793 952806661 615464628 745712345 206390719 488617290 1004431337 204737384 1037844199 458633542 199290331 963264135 859158310 670807640 658754540 802073158 1050196858 987475632 507818083 356815933 273637455 619191543 97941178 226363720 1043661262 289447774 640079120 478415165 696888806 1024892121 184551869 94031542 140780255 710813392 113785558 96522217 1022242699 40041576 717731952 631860584 253621624 1022322226 23036888 1058252049 307795906 158067291 88550491 240941925 568985838 351090087 327579479 754835162 243611869 438847520 274673078 787035533 864898601 598562813 773330215 972247010 836089718 515486913 81724318 364242309 133283384 59979935 841109244 597049423 178700950 464508701 922646802 1053451810 11214420 653193544 258246396 189178320 227523462 650574600 641299972 604663085 328862826 240641696 269516202 417065054 122563856 147952053 351855302 316063036 330067322 85751078 149226547 623885273 615436398 325797661 962603230 1042733515 203330186 292257416 943568097 568909892 281357130 172443557 707279271 311295875 414100140 277246334 1048102766 53607251 16311540 304029871 663310140 864141318 166227048 503768805 19776795 771193701 1069498903 1047295245 745268305 938730268 812917032 643041491 287326777 514859001 310759712 732499468 570485322 928764498 780763306 191499714 1020682919 368739836 803806373 377925330 97736676 81154824 469610197 100970180 938489160 850396830 135547804 361922330 596365419 711285242 59366748 220058961 599043863 858992307 807238234 696882138 298877815 447580253 775731791 927590090 104147530 109707523 66693184 278316464 208323585 376708211 837446758 99810779 850879678 763817341 111656424 594086808 585441338 890615460 405588059 456141366 55763981 388918075 209040435 361828974 638921724 4154058 854111675 470123335 754553348 976350100 68925936 84621966 753768471 776294749 464497701 131295864 414999 81606904 806886432 35097387 494688179 941465328 616516401 945527366 622711871 600688519 382108772 370711795 652821410 228307596 750955862 1058050532 637651000 246367605 247028946 1017658534 392363214 605559227 847385470 781681022 637127593 118294722 1038082326 556556683 916815957 845607258 47840179 722583288 249779277 285541602 1014502716 1048441340 1061318357 142919896 217318890 342455998 247369014 420531908 583953561 613348193 385015026 688811766 1050836150 250939261 387421106 430030575 875126414 896636022 668858127 450530258 266487366 38976608 911964687 137592662 462959814 414459614 482292868 268377646 821837813 767130357 451704156 325231244 686303186 754279002 513229659 297414375 663072912 294614962 826114714 33470444 434229627 210537090 1032007971 53069826 650628376 378954258 121496090 343717009 226065284 1037708525 372014290 809647106 371165565 662598781 590781880 546156521 820361265 666052262 274087695 168544943 754726918 196355841 297444275 1044613333 759636614 115733192 571503529 332711905 286449448 196629858 157768025 737440211 264243989 325012999 300230032 56941747 95659525 48838787 523178399 784761315 527758525 339481704 708490496 267352875 148489389 98422827 568816860 497284382 163386671 1036261391 330981295 1071580323 477521094 578825161 914846345 385482371 514157427 407954676 547399347 450184550 949990207 828503668 488888275 980774051 1048954551 334211790 30186834 466816729 464162947 189159412 135322261 757785964 513829178 933934722 861976678 4267925 663243810 191510316 607963495 455208205 1009709681 25903370 1043800820 450297468 19009174 280070217 595182630 233662973 942374407 335536623 1004037614 955021498 670147454 664755976 565963448 972294066 773871621 772602199 542579008 674108350 876188836 525892398 214249085 907490390 523960898 1009432688 914282455 166282262 325132386 214327943 96713200 738429451 361095496 911203901 95848785 375345698 685123293 55813499 376141601 293745946 1030561283 134609835 806220372 127958346 426215526 449084272 79743557 143341908 197128176 534530803 588465183 961602386 791182692 916188882 376855533 154401449 1056471223 890477149 156984876 944749065 107909295 766360536 46360766 267811907 747279352 936644134 99771923 821454955 258485279 192615557 639286138 94171181 476992267 851838927 298956274 47463399 49366452 192396308 131572422 121630809 299847636 600037268 1022362005 940611424 706603206 149594210 433185560 712142440 766998088 618109211 425793199 330468218 768453507 841661938 680754345 411060537 346210338 500406459 1000262259 890517451 153397213 791782510 772836978 598286844 215194258 1001812778 280345310 76693154 982464953 1068362744 958787536 792704850 68939615 36466368 209260743 68142906 540348038 770943735 844358177 167668936 538213600 341826103 448394537 939452292 273386617 299848150 942696437 291682035 1060331657 1045198649 1057949480 629804855 891690951 632705855 673544369 438206442 507390370 868811995 231062396 719340652 1014117577 997304897 979128102 142619482 108164516 41572520 367600300 36796743 1070439455 990345067 906344852 13286236 268575041 200522756 779792441 394967653 147343565 107557669 1055975432 40965515 769907133 256483071 335068838 813659884 768471307 581991354 575844653 610225498 712960304 1073475429 439162010 723247509 514962111 145342003 959805415 1040681008 520974808 697942923 865695550 963234324 852210292 276477552 11369780 181865184 614606041 266857738 961435186 402799274 997844823 516500373 827239710 170698322 487580169 377509028 599308749 767705121 409607971 953566551 189062737 269303780 770522068 863679254 1020181614 1005634180 227625070 974447674 107156062 642087506 906448555 237329008 1063005773 78147580 173717035 405969313 267477061 665445836 398708484 919698673 1048130811 756832065 10797294 292077396 979375274 752941097 473662307 112561833 239126782 756474437 528282470 830943018 1034777075 151151296 815319563 64750114 342856728 74016620 776615773 72920204 251431479 533388525 924987926 138980818 752039830 1039400851 704774205 775040059 62959620 602587891 891405128 529003736 484054369 960309508 727806841 544185366 476859682 288795119 907025665 596414283 128835669 97843610 890303734 804669714 550085598 403729164 303968355 364916257 13152478 60313690 750130556 225146805 811849499 86413495 508766720 818920269 192184023 750887145 144188760 910652976 755778917 729455176 376206142 969070175 672850637 67905042 1062405142 317114654 38518042 96843795 865969714 609265639 215145626 265122483 399647980 128375127 745528609 688138753 778126080 765930217 88663474 926605762 338111014 72578923 803772012 774772431 612822606 59815474 630405273 805769411 743445191 351723258 109515003 811026884 708156281 17711089 81630763 810446933 238410960 1064789754 808725127 355119570 440393119 5928875 74383713 996674205 553541908 561066765 151504263 894208303 115337015 832233559 393540048 1042781029 943591908 886504031 557087003 192924185 632766507 225428240 940105924 605674538 957005808 320349533 835754192 353428300 275468852 807838104 180389491 433273939 925232630 485968032 74040596 222318870 908436931 167766002 539916074 373127893 981246814 574095078 795109662 908554087 991305417 427116832 1029310332 534109132 386249266 222261751 1009591547 976129565 294540316 188786317 1029756404 1052511039 315081621 835527312 911089921 850371205 356972842 68932098 475574795 666644248 260873314 582090766 749615809 308148983 171076315 85248325 111451212 38651253 693500599 637062014 774616756 258763956 366613302 457278262 487016717 564506013 325613697 1072305697 531258021 414190563 1034419785 99374372 8199564 948035203 685057833 979662715 1140850 1047469021 102161898 939628650 763269258 787715259 713453038 845770274 683180951 1022185231 933188955 10587693 808172511 39140298 1072549901 230793993 723598834 642221942 529065615 307661683 476400943 478469697 691152589 681017815 146442265 11655690 255730620 440112809 913187843 941821426 982307204 222075668 1019534501 193162498 391034820 96547414 63503107 767424149 763015274 202194301 387143838 54178603 948481213 112800479 140311686 393906153 1020818733 1072960973 735398061 587356604 974857320 714526259 872811907 785437049 457976391 666458736 236820845 293009865 675586397 968082770 385476855 247172933 579431654 168104328 992462067 919012895 39951498 784627025 811553541 1057888942 952642355 747574442 709339650 708011687 946435759 797731558 734619013 1036441063 469257846 753201417 969329377 784452268 173551565 1040571846 756359507 122594792 1073297314 1020627954 56530091 142293807 408333144 113904511 483935531 842129560 312895177 915146515 5991406 12233329 646798659 598095629 314978107 548689377 752230026 621190596 285454915 468991290 505098032 583123631 651282428 350544945 267270008 907358466 614524235 116849941 446961826 581416959 543525545 1071342241 272459477 843606204 621328561 750632224 1038927999 994194849 1060126066 180720473 667306426 801449981 753542304 640947354 957954130 852598961 1069587749 545460508 659641342 291668334 848162636 697568139 27824303 566061460 776882511 1035367545 119766428 401333320 245148021 802734208 641144851 530557645 1001494201 466601324 73915385 960818598 118346970 622907047 685111514 664804945 909156174 336434057 288411121 269325065 758004215 933395953 172623601 423399791 95092362 371174703 462356182 954314571 171738639 300895268 645630505 250280050 664545156 334450743 922537756 556294513 419078237 101955719 189880366 960934001 488558017 665567625 256591475 13568601 633752625 459254404 139781138 254203385 107179238 11384793 667182680 436212986 525780201 613379658 975453256 388018279 26598338 954409695 2709594 978118849 125103175 545093173 22261646 273008249 226046568 297664558 287877032 1009602484 215795072 942192883 988739149 75424110 140323786 557830573 445805035 404148031 942242350 976938810 231101772 140875658 804462599 607215699 919193279 967699332 481881054 17683993 368542215 136829395 157292652 310807951 646178797 868938572 224314311 124156258 194413575 599807123 391442729 708416711 34582266 763509011 778374429 982820295 427189145 459853540 523153722 287863114 57064148 141202540 732254540 958492655 501748541 612316500 202487720 566305879 732234617 833269645 67629332 468600656 606835446 968621985 982867718 528530824 657413197 585545456 565966127 1016597997 83235057 722251652 643578019 271510433 409250976 831173785 842127083 1028223439 399184430 442439088 909802909 364027754 836086152 117224986 1027501421 7304930 752906349 888633104 936435579 900688053 113809377 990064071 457053651 984237254 250186252 767946202 800295371 955172831 549551060 810960590 18423218 334447739 677682784 415538884 389136663 558846342 545629752 533102896 862517526 357779308 76006724 810215627 756610515 1030691594 1010078694 944856068 978862929 72899055 962303542 405077263 32417581 559681458 44195204 29171081 594441540 586460974 278817060 635791784 802013709 1007832665 264931967 319775911 927121666 230869697 833456377 497676005 508498216 725705571 823418063 777648084 1059709355 871717740 346532684 672390884 176726053 839547310 251813382 905700722 167444830 1066202777 1069176229 77031123 901735706 224377670 17793595 370277636 921306854 177772203 838592022 494385057 899700551 1064300901 965099386 257097979 28633758 206147686 1001740162 841277885 228923760 164904228 506124436 210772944 123911259 104349466 805659069 1065761200 849760620 301929116 1055454351 381184785 166987321 1052239231 599563196 700246296 796547162 647207031 198464645 321488052 96768975 632189521 684466948 121271850 543597739 941318654 940966217 111703 294870550 591431096 435283419 903831385 173622956 569757113 348375485 770974131 628259208 430802528 180175021 1069667795 929519101 530587332 261134309 1007732324 389428416 158771065 504898638 266054437 198945311 987651870 660903690 466942121 41481215 529944073 670182176 516440656 267969001 708583403 453575010 4601351 422229598 796162104 630330778 11996712 186963608 1023297721 92320492 397590068 988414138 676670703 261923466 869563330 1039638199 39700802 200356922 91728313 808804375 217115941 64778797 808879806 974101383 989434333 123282130 713878854 513516539 819829278 932199425 496672309 208599898 36452276 836137488 101296128 644079403 1068014650 61066724 1025857960 624743107 710559338 166295024 866142236 145371959 362297677 560008695 78521990 995288179 260217508 255345334 442869334 896981966 704508224 57778716 257077182 723104052 765563572 990888111 844166862 465901122 26933222 33974942 870664904 1009347071 707152445 101390698 88372515 134014072 863516640 14875342 435696200 843318726 630743367 203304626 409363548 138630531 587419723 261526649 961739270 763603493 648022933 712426331 552707307 331722548 722555473 851821919 494569915 610544130 514236194 919280848 319664977 942107639 20460625 44649999 623540246 950780978 740041508 1057519684 489868928 275567229 782618810 1000573560 312615808 995700053 430915561 161097264 175397099 908241637 80185264 284355654 61979022 1023975227 361432203 1021580819 532387164 803716742 506204074 277370846 913692247 235730267 617681635 294696586 841559149 736273745 994500095 116906817 115126332 943425945 51359845 1015642900 362735906 127581672 749191797 211341607 24715999 613735520 276635942 49002408 759145412 722497297 678984355 108064630 314177742 961217952 934668677 751452702 129941293 110639579 800755725 450538062 197064255 501012384 864789851 919322211 875786280 876110346 486901295 321948802 364576069 806893655 775559965 576682565 397432379 285982615 1000226995 1072297177 332330260 186671750 952680621 622242656 130681250 384198399 225440808 514347004 737518208 535297862 512757994 850578414 1034246249 660959290 689792331 571738666 25893764 218883857 630556421 773982719 693665917 1067479756 964543247 45110033 1071733810 616319165 864530649 187355841 794109890 461649070 949093514 848509150 1049520650 255600262 921144034 1025150187 331672016 217358520 162659254 640651026 890837082 848330542 938583817 264379373 220507283 638432645 563363642 818165313 238799195 17035179 679959314 920331017 1024176694 414430452 629257301 139733674 908471217 341560600 1002868607 500755999 87924337 1015772741 150058151 666977239 229924087 580557276 989836434 813362436 219467436 165320515 151790996 976377989 214782409 1025127459 205814518 313691878 827314246 1068846778 170612529 690876231 888527407 718642565 848132182 606337009 24617557 777410074 25634082 110326904 340304174 863230353 976038916 867190290 171792585 630042852 1065991953 724287975 594768539 770243069 336434799 1018501688 231846853 922111894 1030599416 235986976 835786432 1035048931 210719820 896233315 751400380 688746354 601600164 1027268195 500677405 227468645 381318232 138436450 191439362 922980048 862816842 565428805 657978391 711726132 167909059 790178726 62731012 718904026 464318135 575102871 247529561 504350631 628447899 670217362 902355595 650976959 154626266 1037375104 36620493 970482443 1067900362 1063579817 516638948 14143147 181251916 16156341 556542952 298397283 560896916 466264678 912651649 176156224 37235195 269880430 563666306 234562008 359623859 124566722 22660807 179122895 277453078 424873568 166939221 1015608215 805501685 915128204 1034990866 200571044 967362900 879872056 372324091 719911671 724906224 592055161 673820868 917498615 295109741 172131293 213185870 1057571339 248839011 472658952 90715883 606543639 823802199 525532038 516503873 893710560 281892605 885723170 231417865 328462775 344218416 195417714 883320902 761429523 892335316 220029011 258063745 228743197 982838262 468621490 1008103490 782391331 86190986 33257687 658552080 410184825 574601322 783504058 811929191 437920803 254800752 536510915 371239804 1015795464 270430681 893606406 589659884 828914037 13462237 999418362 89848549 1069257988 592365666 502943443 791220624 287837671 904853134 71591883 700543474 387687053 341599778 1034886812 298929041 261960631 1011417614 853325489 154370606 150612053 273711097 405482046 687414020 41404547 934725267 119865410 945704047 870516644 976250256 527457517 936622926 166446745 920958659 489014108 123471397 783142505 528626613 483501450 892304521 422976126 90302102 5781850 913817550 664929996 599270284 195533845 657381142 145244437 256092479 862721146 740878778 85250461 1032862074 699082387 302439929 286118714 761739349 40505110 949425886 518886185 133104822 366271246 222574257 161056211 565005248 907608263 588424312 476482166 528070132 305898151 835803431 816943286 861128251 922036214 937828841 323148920 987151729 140536902 507219816 205317068 546507916 216476117 666735706 245016900 938174724 570632756 185095727 344501612 240812228 358013034 42161841 922874985 836101714 134605034 690020060 650648976 362609925 37830158 315465149 25839601 151758918 398533104 552724190 794107593 384784879 1892305 60980417 647439615 511234912 283406591 272909945 545275139 944910336 100329703 1054341506 631832165 349603362 933598991 1034016324 26787036 205966144 351526694 656702283 565748694 938009578 910685223 551694626 1010805428 241180870 129510526 688352093 454532568 207419207 135710045 8609527 753585286 823883462 268734523 626412988 218511948 926954253 744503529 201385955 146478919 679548019 385510650 631958300 38539130 621949053 763825874 311128643 191848365 162309782 230213340 15402363 615712809 774676813 235145705 780435277 724179481 692076024 1016735220 926798731 860819350 1008119867 930091236 422043511 964558417 425307164 546419805 791178721 727580694 625269883 501774970 36674693 685588500 827157208 273773988 766617418 404329923 792199888 622379010 441343985 749846732 802527077 561771335 197415321 859083571 837652150 709887807 743612394 185242032 281364665 732379511 229369289 768591286 1043566453 44470041 612062383 493735411 253924665 319403682 51924656 937969624 319540095 556473553 702743396 834155923 387445320 478677612 604413665 604539430 232934226 141726971 524304776 537116245 939528050 160728700 738849183 575240780 273112687 68908993 181834463 230914344 304828812 161543615 349937293 364983340 670470213 11177666 287314102 439067823 1029384352 345836081 1029877557 565890125 383195203 712852444 150858845 1012498353 990308772 952773294 892690487 143071997 206350410 250201498 1014883966 465362913 3343244 905915083 760499323 107950826 661520100 129088863 339270823 116118332 601315719 505248879 978095887 978844129 434409539 520061284 419362077 469773460 989248641 1008522327 671390572 394401320 430081012 559590140 10149408 539883446 211383192 430043446 642814192 804615402 281868596 629368194 726452623 565315340 111469031 176034255 493122188 256416201 703609141 540292354 1054265926 280666531 108338232 407744756 782753367 824603917 875084905 508553018 724513551 461345401 814995003 803490021 33336750 334640595 393991626 388611040 485641452 684629181 272364564 391095100 622604149 490379593 346410910 867400480 551161469 142665676 171476674 29704588 677001379 952984388 837295531 200527798 951809605 461103045 307991438 718710872 882316693 549917033 889898043 943258720 19306535 826189902 86687211 797946616 585385224 632946789 122138645 269069031 88586837 724730467 365575717 786156394 1059993017 980423025 887676841 485594621 744271289 540863163 857105530 604268582 425709433 1058262181 82751772 416198688 187779674 24591561 71961411 376605837 820585582 434084907 973498509 953749711 215515157 937533731 234556993 464872539 1056789911 1007916819 248573408 409054470 408667346 692261004 271681750 962774473 666678483 119663637 259210906 286177045 914672888 778628735 177885324 321580062 283784950 998497571 453106517 687084558 97130926 322157436 268054064 912766516 467052602 243291339 116563536 952808974 390083502 503502672 867112011 889152403 87705570 468746001 702485595 1025942101 662288421 1044014079 386487723 846228537 601014063 289657073 863286750 741576329 727795576 66691583 423731764 557400356 292330058 319995789 676281699 167388970 207759337 429121900 563743502 413355012 331119420 225674800 890700222 679740723 517182074 659676685 336309163 594399759 11203872 551262525 464496487 1067159303 585133667 898492304 819475176 635905660 516030808 700939163 994281379 265544880 797491218 477582026 654712192 1077436 579874419 1003556921 662994342 1006079132 355217682 588010167 684640984 987474499 686468961 114124056 697334955 267757644 352838890 272331135 606546604 687024138 586094736 23019817 507621115 564475192 203434012 734483680 8821492 244229454 665479628 218167560 769999798 492322435 649218029 422923792 772361821 1047013165 659237476 538654847 137415900 16412781 672532724 998806654 13134756 668567127 404083770 451888646 459443382 332458721 411287292 469073869 73311952 746564377 920370903 1033667320 179274087 976238477 642296716 440935547 25759911 820122463 893808495 382207047 731632494 571932896 498649162 760240519 658202548 197416373 73404543 732328966 228057335 515016529 201384814 384714277 572831640 259648122 1012900112 546515194 232418053 270526639 660376224 513109631 487596070 626243324 770387750 87173417 219506461 611105141 895481935 10319632 926992008 508295845 511229764 365205061 470711869 542214352 927363828 785054150 563791743 542424034 836113517 1006303897 223833712 322847609 230033348 825377166 587389808 790186262 835864674 446566416 778004510 538298628 960450159 649047815 660909277 291085174 395179423 480375379 484106360 815976233 1018686215 867179468 646037417 1023045200 672331499 1021575141 841827693 120072334 732091245 163154853 954610573 800286541 44823600 411009567 284324811 572616719 391835121 896657205 601262097 519959612 515680999 124157150 71394949 437749168 471558654 630656562 207892851 481055632 486691558 702393554 762579922 384491977 681858516 89399348 954323692 870876643 1001435881 531851374 193226077 772614682 854553825 251164693 823757754 740215586 31462727 646809618 260866849 734997406 660718828 770516733 777642897 685005993 91822764 42249309 556601949 587744624 601657278 770758655 720227243 556135533 74265550 301676801 1044163290 616119792 1026609668 962577230 683028188 24250414 288934456 286552068 251792627 679915207 813654650 568332737 874456575 392724713 629975463 11292805 367235513 849208372 20300414 940131774 54131097 267780735 945804056 155456253 802434961 273218908 955080776 393739177 69546492 924308069 909492426 334095807 966344058 570711428 419702123 383687364 215603711 450164647 903538726 814120373 956200789 125325973 783795548 246226765 441916197 15481792 409722207 1019780850 502933400 1030134192 428537456 802320804 805189884 452801276 612751467 708487944 600599594 375662380 879844459 604606489 763833350 356792007 910707688 529790375 545680920 214505977 957986032 978963560 612362910 764180777 624869371 75316621 103003649 712204577 91765579 285509611 659261984 602450417 470539385 884899184 601327741 41549403 979965650 698698957 689861698 268597289 165060842 876397558 550345704 622764638 878835648 1012706738 738247914 811806430 489700794 776443957 423130175 1003433882 506757139 503570557 1054549736 135884735 697026322 926105915 880508187 7206950 470842893 473654668 993852481 559695445 579326703 961400852 1055486909 10267220 187836098 24213956 935480019 631166818 276952905 796667941 508607075 300959197 193892098 323706089 167937317 550910515 269108054 682175250 1061505426 970338468 388516976 530255971 859743865 320292435 318800987 180662225 721682201 65587771 191725651 369967613 614348972 476119049 6770921 385026715 328568776 344441466 325918792 729205187 106720179 274001063 793418628 170557092 247498697 254204301 917807249 70936457 999578719 561858 11759442 199191424 926347419 676909868 406934048 378244698 57098929 203200815 571623254 1018126765 307782980 892213803 23331763 786102295 347165046 914608146 209167028 345615733 142126429 438878837 524936883 671745216 207212393 1023853879 282785533 783056274 761755658 133590358 77984940 1022908305 354894066 780282766 548460468 35050907 198712056 199491427 407079022 971331536 99808208 631541991 112583612 52805443 695514590 752178568 135856050 953025493 537433577 997770383 588439134 481405006 168627883 711024971 1038168085 607695210 301583830 330950472 95885595 541277008 542164107 774656039 221161933 325388902 300172695 239094693 580907611 78909280 451383486 493643707 704648419 46009945 793942417 842259017 1039158731 527786448 829957178 325572544 914857200 366866893 136861989 863986172 787531030 872396796 206600918 95632331 704752445 898052946 591530095 470454478 792602239 1022459287 866097943 470251262 652967585 172959543 932650787 544160685 812862194 896534902 8211846 623910909 995914371 670600795 59668994 681743246 987824643 51584816 978053805 201531345 239725276 577810392 16820867 740893567 405571865 615862643 560062694 892388712 870207723 34892414 838730603 716853868 158663398 239530547 657234889 725886245 565919336 391446377 121389968 902575022 656216993 279177355 942052650 452497183 742399367 904375538 429661887 91702820 863248099 951851053 667666876 541445637 745141467 289301739 7813212 664519721 1027399474 528834857 615448663 554803093 619362578 658735623 991561078 997556668 187447118 672309624 1047897616 731546718 577526502 668286554 195518078 370746228 865644778 893477744 882847254 568207766 64631183 739297723 704009296 564596623 748129046 158603759 941787542 759587940 729832519 618161939 758486239 972559839 386127061 903886388 930041291 146567569 9055248 404208345 419844972 597053616 311730619 194437343 1014183259 145742919 573717086 638373707 964739936 992973311 896033921 380855816 623399287 268954158 684308592 364288630 390804443 421802939 628275637 795875708 768929165 737670853 940450670 575850960 55706396 849322283 931542406 798873670 1066249999 813378732 561178695 404269108 393320029 179407587 783062105 365761958 117058999 285958074 825185255 1066606776 781758600 34222024 733520026 325189064 33446390 1054047140 968999309 2428394 31117306 337782877 392331927 779326738 779040735 226637295 582739746 675538818 206708786 755062158 596664721 927028652 110784728 561590122 203635809 723673039 490096610 84700559 551005399 153757606 535447102 597712099 361699048 587548146 54865805 165901445 817636902 989875395 441570370 411148176 712355335 1022261747 540924802 112367929 411204445 407163362 248638657 256691543 354056706 442784108 29372087 749964861 103969757 864534446 602449913 947664280 95451765 1006537368 633127212 837768992 969874642 820139353 704351098 790620745 189283147 265786634 101028147 1021091576 67654555 259598707 94414175 101168913 217824585 475618902 1004986659 187622695 349764549 839349955 173684921 38006914 153649855 913079661 610127365 939415275 6075984 699979652 242328695 932095633 572444892 560128384 1066515829 858153237 217963032 1051358 170775805 573952637 597654608 279681815 138534790 1034459624 196156502 836636859 360427475 246452330 308690831 1059522537 198700678 808148529 743730078 506551832 713088014 83770248 621435756 729583905 280116396 412280490 385373735 306383303 478840549 110538186 341153407 63163438 383261505 21569331 938029707 702684890 1046443877 901966665 207221503 366892826 855085531 350721950 160701646 163367099 20455853 226392606 156450856 232655756 554729813 456522619 439560280 957645734 288309764 885028487 711505477 29574047 625644162 30767770 117690708 907044027 483951102 896084379 372236490 156765684 555931952 53408446 508184799 981058531 958113047 308070368 889602599 352055357 67568434 624337998 679142304 812274205 62684596 192809893 1027449564 156580350 115468371 307750837 918552868 90362259 80457220 818160658 833991403 733601522 844508160 76694991 252656713 242318505 268324076 167652223 390416511 17256709 251943880 877787507 121171806 271063462 606775743 1069644334 284981392 546777480 865325530 174600519 524618537 258744400 211837247 749887364 958052324 1038880308 832972453 413792508 282780878 376720686 906378425 854433054 58344597 483762074 424438564 686944752 942546991 235845150 127568419 168807034 445800631 287941294 378460831 261354637 277454289 986176652 258825528 895796708 193204435 998017914 697992622 766764109 985507195 556720932 345969897 315666472 378432336 1070339659 668937451 388223996 863354162 77450896 248377709 184423476 444186145 427417234 29635742 504671251 482290498 331535726 366403268 925372427 565773740 660917213 957231438 764855847 612483861 537558550 571464302 1019752688 400922619 588398110 811574167 809608123 1018008637 442584710 169881902 233828729 766156533 214404446 891117924 734721757 400721204 812853729 794427814 646046406 300631233 145087796 318350810 529938992 885526087 817021191 369432112 1043785289 175495001 830693637 684701775 533917463 454246955 421533180 1003990603 689952396 229360968 775550224 133768173 401470962 305543120 549294574 86310128 255012220 251493752 852717890 317943901 230603519 848884055 823691152 919156324 293277558 722863912 827227311 778596179 597936226 291069409 476823606 777521079 126227087 268281978 373649080 862058973 953677126 224757178 406496555 138272799 4062208 221168228 125078130 496513585 367149586 288226345 578675263 404243428 669021220 1259194 211462827 461640705 825532788 316686550 340917978 946811566 880800650 16697769 582755284 975290638 144975118 1031066737 578477398 109502121 255956102 578234708 567934828 762290890 55286898 567754640 320673280 269000717 712721179 210164640 1028485284 492681997 1028158958 387670488 983461026 1015749868 155190764 969700987 275133257 1028053106 430008256 139951201 323587672 600940018 281820263 772706639 527578723 974458963 639366785 771105628 1016009408 91271323 116133504 425207275 880171966 68222188 492692539 204191594 637307337 387823552 368704549 22512965 169671491 810253823 788265136 744208630 249956172 171077424 753256908 862106736 306302441 857898443 709756745 817297379 17301639 85257013 472732193 854863477 780995544 840108213 699241538 105987187 244825577 1005049325 777152372 672804559 324104403 689761347 978251988 765420656 677674729 960468218 991198080 1007703626 341840304 364681816 933489619 115714125 665235060 160892055 320886162 1053707787 747777326 548231642 408622225 106629319 953106726 142901442 116742887 837869242 78391804 8225437 484923388 824052789 1056007676 387955684 141718567 261203391 26505670 783846544 1072716935 114553477 832064731 869756624 279375360 678154180 890588963 631795871 387581915 561329979 986973561 242120769 813637215 590502867 798880989 358497386 692909499 326442229 228717065 500009715 963550885 374570846 885469546 385126206 394516241 367135186 133679619 481463546 496369979 991186224 185090353 405265544 309923893 223850775 708262066 319155807 529902682 326597622 179424212 415251009 45447146 112252885 848198320 444336245 560855425 792849877 334073105 243999062 898793313 700973690 1029685726 300804793 845019526 295023194 215224614 98959076 775456272 54646776 941669042 90246855 249355930 590825284 582026063 134784517 750576516 572949060 493550891 613891054 968839269 74567690 561587665 763095965 593305 1002683923 215559944 1070240457 90959483 137722081 404388149 236971044 970702476 195558076 182733323 452511894 1027151326 516388361 904347042 704068649 418704049 507494770 1046615010 37892584 829985778 380784645 614853142 245720331 273162648 69999681 943130639 180393977 172646051 1057057013 493739129 500516557 228324663 833269393 320250396 293446143 751785015 430699601 468467635 1062312106 25718110 23096155 851673574 622028081 965590099 232742268 673832340 632549520 606759144 1066933133 65837749 550463396 327784722 166235359 999407848 1023311832 126004304 802064482 592014780 4023893 873388245 53666889 685185201 778728157 811628883 374669718 86513944 10500409 856455924 536781956 514097379 294285988 953865923 395298238 405970252 678355687 64156617 690715060 481424554 216168918 1014167421 713684637 143423419 382614401 905602158 423718684 351017162 503970610 962646675 663934503 909895752 474354785 254800461 122750354 72736180 91936913 297913379 419223163 491604122 876765767 339703248 843635566 253598361 960212622 574463644 108140015 425907821 465647830 898182968 745272883 197970790 152512440 1071377716 843183171 793613364 361639250 968750708 2058442 208223432 309057234 446610105 639447527 524653493 103273115 608759681 46955464 252119511 233226025 358561251 691951787 421576416 67957138 175435421 652395974 651256945 457142995 154170599 1000723527 660171205 483360241 953042135 326390883 817464915 933679055 1046743579 127614210 648214369 819565595 749283911 224315459 412577762 990411235 343160810 163395895 525360962 897600811 136487673 905166683 127619250 10183895 1057872407 808275130 139532658 430692596 767701656 533075790 851856186 981176897 794630616 492995714 192220944 366869546 771536025 193204973 55753855 13794847 865571123 7891523 485910423 849905923 31194101 489325926 703424592 718608767 500101007 230909362 982321765 458691381 685461564 360179563 946503247 982446292 191166385 538293672 154780376 634697611 517858227 364309712 646584928 284677129 781600883 550563792 524791420 924318666 1049030834 875676539 33162583 109759136 554940182 10091009 642784589 30758184 281722595 517524046 371154179 186795514 1064355586 869882797 485573452 343394527 529126010 709547886 256255306 262855637 310036326 528090360 710802423 110558251 62133961 733620989 967526778 509067108 709964704 319196401 856798812 97258741 543904507 231125413 757600977 102832907 581060951 751356835 809333450 979532710 270398676 257997021 922498111 124817609 948020385 744623060 1063719212 337128821 484905852 336165271 77022644 710329825 200771746 679696287 249140074 21285218 64422126 606218288 197319164 411566142 500763035 9338359 819423201 589156656 897374415 389531400 13508927 852057393 135604209 127741994 489135688 165247273 78286808 1042495233 331100319 437447380 220885991 877984028 886037037 923863383 897306764 627345673 1040790754 781821541 214830849 736649908 226990543 498111477 98393585 704555951 565600024 463875823 121220255 446591337 991793225 387354013 136492898 119520339 76286016 431961036 90185608 463023829 155026682 823142675 821470451 10148635 617658736 459731184 453640690 272207012 145562965 526036957 199992652 242770255 229733335 534341076 496082192 879741972 660978134 655331070 61679558 972819396 836730588 256924399 572671965 510019067 720642094 1034205812 565745924 172106837 553575389 264366856 858606698 441425043 880428630 621461246 179432484 244607980 1066354446 8756768 439816341 256777866 902120452 526873282 10573333 681208116 832793375 1056651718 963069238 536964569 760275950 5074439 164049702 712464935 265299859 209349869 1051596493 263988594 1025684480 645858695 444883068 761062953 763091774 379212535 393406619 321638650 321213980 1013676969 681100847 822940607 415326316 899345454 522100629 184133351 198056376 683758676 121822341 263420804 984250929 795011219 274229963 221150922 908120451 774484876 762755102 1061286772 107845947 147658730 81991154 210747474 624380621 828549698 517599101 37193837 801659556 743961557 938552924 668851342 862341758 179270007 206243692 152879382 404790515 665756336 165061313 1037221268 47967941 433591372 754371883 119330573 466128500 379142283 921826131 499245777 815612258 272393200 558932315 724453611 933819796 508611193 826999708 183927229 493903618 59771655 1008678470 291886609 758204410 122206742 109126646 206933534 486083503 1065130307 114812893 134476845 878692666 383212282 80871561 955893023 409167682 635501484 945868250 876448434 185639413 25031254 489474387 694722903 363382147 464229257 750534623 433949338 510171102 265168629 382103328 659680133 672882418 942267052 853649544 620155166 217789415 1066198876 273943550 463409756 722927571 30395730 380828441 971442758 727195995 666810010 399283420 572359440 152612226 209232021 345428927 415150599 1072087171 756359651 784848406 260007085 782514220 765413573 645694094 552498150 869227638 71852943 440659368 627204717 334174885 826170685 972046418 778044830 492619844 318679944 497978478 932677249 678731522 258729814 313235041 374133564 707261525 133063334 483774811 67672370 552207714 210970190 15103828 756222487 474271226 327539815 133086042 500993363 972701253 301016606 57352352 607543504 1029138894 972032459 199938497 296976403 320218313 738801859 23510338 807508674 642184768 873956658 373130387 354455701 910044997 478534206 759560396 340783041 437837657 496822186 566425303 662777372 230396180 788908606 1054310942 321018557 94836065 148855971 848858892 752049807 52592011 792620246 845952443 318620673 760853926 869913654 328253909 364897688 688643673 599000494 784548191 370467447 944123844 217469977 900539693 600143317 637289082 490054542 155285183 382875505 76879909 342298181 794106090 243932877 1015109601 333361378 563791672 573082002 478939739 835219319 95512091 195237712 590353213 414046571 149122569 142338655 877640565 618788954 713289305 756969807 170191431 538379212 1046522242 278283729 489208920 595789054 802924166 572796816 28099167 919335770 722934213 75089262 731418445 571227368 953739948 1048424869 662865881 444323158 191186861 262198762 1049256312 706241358 254482966 981457675 61101663 295653228 612822086 472944294 83318554 645757355 453417265 797691736 47734378 720909169 581292833 213344344 728958199 545185051 432143315 662846699 216993364 1019473410 56690309 728610741 39959943 808924012 832726611 111756922 370783899 375303243 552010805 372647411 136307573 143803398 747312260 489134018 1035879662 682637349 498302747 186223678 470525678 137149409 969911700 1056044227 102028428 342909114 57933062 296499620 246851218 285086230 405251614 368128420 548639866 107283805 474038276 825291547 792314365 58775334 179112311 976020591 54020537 613916866 750955892 445907744 450500508 940970084 403319976 96826487 818381955 755244977 200484835 829445585 428208657 442327215 500958722 233623514 1060762279 321262003 845534682 225927147 809612661 663602454 190320804 37300318 449885891 1002698592 256938146 492841979 456168700 652527126 147042657 33950702 832253215 795072891 474720890 665706220 507248400 732693827 50262170 319621687 124958819 547679542 696699541 854563060 1036798971 615038494 939772540 182207619 504368579 643360303 92146747 680152879 410018041 663816929 1002271195 436122840 1071757142 758802292 895120076 919161650 11260340 1055944572 361658583 883678876 384732599 769511972 510320140 438228791 308276291 759226398 688890649 254419664 845248788 338292884 482320255 1035452877 619075695 553550904 963306391 194690911 739469578 460483294 400858905 980540361 650408056 227027747 703669460 410167177 530337434 453641356 630788310 900349296 769826331 862518048 467962460 799551052 327302206 1028239557 946867903 58555817 553329106 1048870281 774689420 381503953 159065822 640464005 11290744 560371881 500920061 962725425 823015955 857772867 259544121 914371067 361758898 830827968 369892250 293817383 676989388 329464222 988923045 401333786 4902779 850023256 154875794 1068118338 56094157 519619368 693198740 942485141 300740432 986333798 982694582 284301465 256860293 202557803 320313862 380657498 258613526 481401578 352436709 179637714 936693445 664839 984846428 587939452 97783638 380599661 367242474 602195559 433860439 773021133 41761164 175876542 675944117 836281041 377152302 576565116 745549198 315233983 955908658 598826927 330266104 116639569 731395263 1010039987 940172355 939641252 271685690 85419203 865885389 625543156 481369820 972582180 3868939 810804267 845185629 487950619 596751760 155614450 862184218 508810930 570551158 479073498 290235552 317034106 456299228 765449426 1058696940 490434027 954666525 98966120 563097798 168762792 562198152 88864962 498013924 568233622 499383908 974029267 937719380 269370078 48232876 461087981 431567261 494837626 95132916 706869630 728038218 712733211 1040839317 35339159 414355744 365434757 904976668 1008238597 891566985 516450808 239328390 45185644 955680455 664135605 56305961 994698283 1067936148 1023581990 1016387043 63199776 910602645 758964115 553766483 851415397 79132067 953287333 747151360 110858028 595757930 1038176609 97752559 170946305 910402961 524547164 182413180 170916466 198613278 290119448 601387847 466224258 191351312 336874854 964192854 634669000 989339503 540152226 153257484 200942027 274305445 354877085 802237987 589594675 688912147 305740446 349501193 143457463 1013665609 90881544 941381471 571608395 770006802 39800795 654094055 266381997 762946079 184784967 582658962 239796168 928460335 101405932 51177001 810290419 36245361 268313661 418317635 486095351 283768767 54360269 198508550 31129825 154960419 369743841 407183253 59936843 650982060 470139893 832280774 428057682 1017393337 729667265 116149973 577604145 225971442 305172976 932617129 762205861 969113274 68187605 654245069 453315124 356030722 993597339 557398455 277350326 856876029 52421508 903935986 270599718 87417002 563285079 453910453 330869627 897675942 869830927 508737263 700957375 206586699 847765171 949263739 384456812 756316710 871695564 134325218 19395989 796795143 141616916 617081055 429737307 968543575 549189878 179911441 994236536 917399399 829811109 531621288 618251816 809015626 972847398 282540899 874051133 752421978 17607213 351443540 277998938 78111420 595938284 465494891 248747677 727528283 900008672 912061855 398220238 613404218 952108299 425559186 113052785 870850739 430209535 806331847 739175631 526809801 163437110 1000526472 632607454 925446112 250273020 230541577 206284848 533385377 279498687 16318981 298604111 787258637 463996602 21065591 25286127 909017763 681961579 651847823 30169702 1056873486 344032586 425505069 824375305 24788879 599819157 1026685086 617791766 446358149 1037692288 723460513 86721365 458390678 999162709 149352072 707390661 201831963 477188948 288102748 69197025 464145709 896406967 71201442 853407078 349805654 294480203 822998718 176105869 805342694 163850559 516343187 50594589 521918080 849520613 505297450 879662669 435215135 499955983 821446178 464541349 563427600 670369379 270883795 323941858 21755568 585598248 209673663 138086944 774006638 734353509 5628367 94026650 746505547 61756739 1058512666 949408199 16936278 686248945 988049889 1010882453 297983641 1026196146 795635473 974796368 902565886 556162653 572786426 774655794 467673954 998712997 126992763 765271991 1045106879 280898120 184564000 81162065 841800231 1038318357 322942395 650976903 798484552 987299405 966512639 1054359394 508764349 46923885 720215575 213336971 737641525 799393852 965812420 921569116 725373649 1014993814 1049263586 28560165 564234149 203101229 699425402 28017469 931096386 877513105 977639804 934642531 916036066 173993436 776405632 452456633 356843728 93902825 800608449 176038906 1055506295 441345610 269148551 104575479 392078709 960427045 705684764 674451135 584263236 328935782 44068376 1013558672 740371963 769166064 7464802 565522665 79657422 958042849 3616544 1011035567 522275117 571312230 604282451 304038629 164349138 369820707 511170800 208466103 130383541 444096637 1053299936 87989323 1009353513 566650538 471500607 929019217 416245974 806932375 457812246 282503487 676921812 239295798 725830328 99580601 1050303537 414400261 284989008 1044226512 1018949274 511213855 983243700 444312315 484658460 842689298 25911022 951482331 464996025 303290651 81678500 423732724 852127516 547201825 895242264 835885938 898117164 256531649 188600063 343394698 250118567 17678819 379484430 406652010 60964841 71101857 466937025 718358772 1042932339 571666456 751535782 601271845 498653875 83515963 970769307 1031806537 224718937 477733704 655255303 799123548 276741510 976849524 836682547 610846431 505820129 1032642243 750838755 31298046 1022260291 295642038 278964444 563557005 887092343 526855364 526123259 473830298 524845698 1053358168 332626983 862406649 835008466 937525056 423191332 838901335 622207555 391187652 533538040 161857441 535958772 627675290 1043639397 691923381 545426676 559998324 964745074 64593166 901079592 455088894 1030096596 308640878 147443940 1029079507 767841981 14579012 275729947 209272468 514244057 591351874 726673172 536663274 58974001 177521235 868384085 119228378 938375408 1014300283 929797566 90594898 508988465 747822873 465392970 102359168 582957242 497412672 666035781 992821516 86806485 320797518 253612074 301113122 994582610 1056901634 829230142 959537566 856810450 650873769 947808580 447713851 566766569 327740114 596347888 853316612 514031200 562802967 873076740 746034869 420790054 883504577 443796358 916804553 314614885 958124940 164401432 648430421 366766782 756203793 435226184 499252229 362902883 155100966 817983436 22041215 566427566 702531779 543986369 511865945 1034023859 325738161 644023468 791026280 859528058 57088603 184021106 583156952 845914562 690337446 876802292 111806264 772164606 131086158 548524229 158360920 84159184 393277903 134975294 792126211 311518396 685800004 410704419 1061118562 874549317 740583744 814871028 320947688 660233289 535661996 706244381 508129662 101475483 789193087 515324659 935290177 740615960 783111612 462924491 1020290995 674379336 963828271 708088354 121598116 300504688 58189650 773357411 709786144 836878167 46573150 652615084 1072471298 331311339 525611404 521671287 249729332 436481976 900954396 420778155 20406485 965398180 149171044 361243795 304100193 428748064 801413363 950150650 308416215 746952982 103205998 574252690 869877402 291043998 960388805 495275416 344096587 252061698 712144032 417781583 832929780 789651901 747453006 642131922 599830403 235390085 186467049 460742884 780812037 620802752 259830783 363617879 355882357 498231724 283857850 667050299 232099336 374211877 414836347 677310199 144314689 775894025 485103103 41510547 1063601120 771903448 284534030 928362836 417127163 599867587 324369311 688001903 495786830 964199024 461299499 669929423 393711113 1071658075 582992154 569759753 506914891 908169862 922001525 1039584850 627875337 479251787 895808150 732476712 105779402 706723316 988577335 226239986 777447646 801645651 947144086 692115837 700236972 63926429 322388054 146538711 105594856 871767605 216657983 405626314 511381732 605938035 234837611 591113451 220021495 603035732 625392998 78251648 639525328 395063367 826729691 378450348 316464292 510225274 422262317 145528321 280223642 832217188 713648387 176700254 840397242 1002488740 238649145 960016378 6210328 253483967 865711462 99918014 79809302 693411309 111547115 775898980 770013880 820813063 967450634 606087794 960839843 799227899 768805961 568061575 260923604 723202853 154561405 325473926 41598169 30757107 945146386 919826560 417606645 1052964983 349892922 136270606 109960233 338961347 915575482 613656882 863836074 214166730 442173812 809275567 314332843 441636844 81859539 970905402 169324497 522637824 948594631 1028838101 279559011 332949882 85041853 623048581 902810353 72088382 468951196 555499297 777451132 740076921 117190844 512384897 47630425 206266845 1005979647 355363535 519682704 933240054 1017478073 680873530 523662621 1016015982 990533192 618782250 510053464 927833940 342863337 759570779 542674645 586174366 913938937 178567470 140435155 881725029 227924648 307420993 927560769 609610723 592449368 736720843 1002989568 594845139 642610782 478290713 780566003 157135851 526647248 133021551 523149874 239548832 71483170 917183888 66457387 516653673 355470990 669353730 142470628 70857769 180106326 994078213 918714091 637177470 293920372 503093792 266749759 745412153 380828797 291461305 658159694 775673448 258353906 1060632503 863395382 656604492 273741934 89183546 270316277 709177838 74124599 986509959 142817601 537854686 368940939 465157754 803953711 140388134 429347537 267910093 688289771 1071314645 1013228439 1027900329 1032891846 716253441 154363107 689361218 749037085 679698449 480776784 67416698 435339147 259713655 675175616 202875857 1004156616 441145032 205510075 1030713380 254451847 1005031035 294804037 332928377 37384145 932150469 343268268 858162855 300105597 1017672592 358534779 912867944 525431172 582974601 937979350 554146299 297007830 534876001 829494402 213188710 1051883812 460881810 65573502 911265670 1045763624 754658912 890014964 31154439 1039038820 203632670 82431172 651169808 94281374 845292492 386494867 22794513 938957025 783550805 482744580 382475125 193600670 57112506 293975101 371111086 67002321 973486159 802018090 606737194 331416999 1013107505 491803645 830590620 540505926 1067099411 308515606 121306810 853228930 326262923 159535036 176211801 408949753 195106395 580684764 76447530 205801962 378842252 100958534 909726490 734327950 959842038 939888233 551269194 1001634602 662950741 30884279 676060473 166141882 602191811 312252386 419305286 206489429 217245798 831787338 946050548 880235879 268207308 298356494 444696970 283846505 683397376 178731525 1021515129 160733878 679389609 152259757 1057490722 549478829 853922885 166006083 231944603 905451373 150188631 439387319 61441479 761663549 995421161 1056009514 285652755 45350099 107169672 747037157 170970086 492771567 925721662 327648733 699287578 995025797 530415643 356244391 254419539 927783687 360186000 861225059 113545184 555838377 390187936 53620472 891484050 296160147 29069872 297197374 507207232 1061701606 733163727 351601097 287603143 129248277 341016080 181247356 713726803 5787520 92660507 1011834464 386606910 728667648 1038840539 1068911605 545773064 896205994 928987239 567846448 839191412 63327441 1040781052 27904598 490776631 782732922 832899978 962753489 806676983 312142451 237375060 905839956 297846476 272133286 836249799 466810904 162003789 22651804 854857535 994681919 625168933 805765487 1013894778 875301191 197791472 535438727 355637390 819994577 841783056 691534169 446853565 711409686 297713852 482612059 7026057 858386568 959132150 145562663 1062477044 402207064 1040141364 6523242 772717853 691655378 514753312 840931754 179285822 46919226 799141076 951062321 304076195 489601019 782289407 910428329 411684898 433085912 516111794 67651081 738743722 845191570 203228697 980766964 186572304 739411627 609384631 686981140 580333647 1514381 563250927 72465770 20725753 696598038 70562219 628294387 662901680 851507307 317356855 62832331 536755731 664515137 998959481 238754305 390264575 402123121 221131621 238667248 619391805 754725014 150490991 1003112210 930412138 716486151 187995584 424824821 764283369 422639285 850122472 109792118 492693640 531938429 987312901 64118095 410393435 554939447 125726551 292811688 613147010 555779116 1016894479 248841465 805974517 23094427 824453094 842283848 419846322 746532703 717540930 219147120 750089967 215129629 599553032 937773500 561980089 137101476 658717613 549187320 7516077 312511437 204569694 1049037744 610462270 106629155 572063046 832203968 920875811 34549191 118218353 678960039 167938156 929242470 583596055 227783339 486422450 420402637 322185002 645593920 356421075 136276679 260398402 140196988 950064834 729609163 54855660 661301 260217490 773232982 904035548 603114828 669454727 99070098 445410013 523452531 810481450 185983533 505108174 1070620407 16275645 39038177 398906082 353600040 804425262 1064617619 162923655 851613458 421649214 97981156 690023885 743876280 904815668 572092275 773672225 1000902249 165705877 771045840 352639336 432834989 516175723 492982157 605399498 254190870 26272515 928158354 206073365 1052668419 402320718 474554812 376622335 401464930 110460340 326767839 399514172 265477971 796175838 241650539 436757286 285922380 609361707 681502771 1020953940 859005987 249519129 806595021 802317618 1062664432 665114088 241096430 1609220 583935800 260936449 47623088 913945200 407011306 753763778 191926713 960482555 361749911 1024820086 251167253 1010194746 212152996 281376291 82783893 1071579640 532628288 375501815 406531213 214721087 427843887 534665609 1755828 941211887 444795555 693019823 747220474 214599396 325433403 640581782 306824320 280194526 531840676 127903953 668037030 403374558 569412445 868667146 691543249 48042959 102974129 512371862 150884604 436955038 360829114 30265748 1047887814 79090247 482871 393166983 912661898 676998860 761238810 112889290 772704080 488409579 392096981 646949887 833994886 615964585 147691538 109373636 80479413 729108777 223422431 816409792 950985743 773582664 473466390 684357789 701803965 799547360 500141537 320824661 465887294 229930298 765023626 1014618406 847574938 185687669 734387293 319318605 1005574221 10725247 596889824 848750357 729809370 323956462 71115553 205704914 77791220 143050389 941073928 593964342 402947594 572499474 994734788 497829234 94980085 936556011 738492030 654883633 353226644 1036969013 914079048 489152002 312355606 319169030 809030495 802610358 971584190 131025322 590174723 327169955 989523883 269338798 451398962 97700350 391363028 1071019106 973600711 449619850 387373077 373540964 963506683 465663105 629046806 469035816 1065210030 691346224 406873409 1025923723 921478970 859883248 479597857 613988154 356925055 903321041 597111239 683498366 432172712 574795602 625265479 679387395 711438788 266909278 999356391 789979048 717373640 240850084 790781819 654365694 1031293381 846487921 1052616427 809510680 119582745 345555029 303969861 758036277 955859329 534777663 991803176 392444443 34969208 960094135 161244158 666329365 1066180649 563571369 12580490 737472722 789180648 36822383 889536126 844025489 18414436 737527961 355288811 87821331 748820073 209617061 971681818 46767835 239814605 235892150 218111533 546830259 186046303 783550702 142470583 334570342 881614162 86691299 47812293 704348428 677866395 12609214 855629599 323760327 89487007 762051775 852785295 333601017 32979774 121760370 542745695 815019105 555399159 15355139 13438468 524358998 633232527 495218443 213832668 37716049 753330933 679460590 259091363 394565163 685846228 72074438 9641941 929024217 717722703 975314615 586678516 851352502 162280949 691273792 367892109 529921511 73739386 829569123 344312527 853207207 874165732 227683050 537916218 55566367 613165463 557275108 409052404 229569614 128241374 203502886 450829604 420110486 368482549 738343317 276760460 850203575 81718404 490328028 171763622 1025325395 350007593 864018159 958145570 314039594 475862946 132559329 792056358 253416469 846662249 545060870 462738182 320301300 351625304 145268397 906321682 655317046 24948470 23928381 10321354 287514200 258710610 846322909 72401095 657347640 265945613 1037073230 428251479 530717365 963003900 835439668 536226281 676197596 912813669 237311269 334098141 350848047 847775302 161994581 191787078 252178309 261812218 1048274808 791998577 881776212 748951470 566514834 868745975 541818487 653459424 405183782 592303998 823310093 437589314 152856932 248204911 320779291 81823219 658518788 154606844 1042451012 436995432 821532782 867745900 61559802 731591165 318074293 380992528 683289381 543752254 182479681 454751351 426029301 81957841 425882750 664944185 211709296 306639141 36157434 811695107 267169705 76887531 945523303 5578426 180297496 964118421 241383443 992055280 692882433 147020159 510056861 278189984 957225598 231765638 688366229 964569769 916815045 612203842 885158884 1064916334 439807447 801990073 943921006 111814860 436484242 317607495 623324934 470843875 960271390 903920324 1069275838 911942226 223518498 889670409 903738765 499428439 294134230 339613991 783536043 339393165 564545833 942670057 914879049 227951107 820912912 1004135776 787820755 945437473 1017010761 805399070 308514739 145885605 583296548 844932179 455745631 674826251 165387351 269347160 1017677670 402623725 178327465 302183443 335810413 290917702 149494879 288610893 475535413 27780927 433361117 369774878 200968029 305354602 905497437 762388297 1024711482 593238125 764093686 347262442 965645032 483027775 17926838 521513034 13541838 493801151 789997024 820208587 804689066 553550765 607202123 605888266 544003501 659927129 592439966 810890834 558067020 609571637 796132226 941313559 32604065 472956149 917425808 366035925 925593034 123326507 58871045 873219714 730084403 17460480 255059478 579564979 831453007 462035887 467341297 627513554 466552606 659239323 687925290 272595704 555842934 64613201 206734870 877848203 108999523 576734945 402575730 696671598 830574602 192017372 907566257 432966281 65687076 869687686 688499440 1011573664 1024958494 635728783 279383098 214650411 124905673 282204807 97296550 160016924 807091644 341199706 973953269 863556980 311636194 1015165152 759667727 498085832 51891041 231499593 912271352 1038486966 202431195 939080776 244478303 592879807 346026530 721362006 691644041 134536047 893324169 308469131 553269061 650026172 330653468 127299268 623619768 3600611 989206150 248548606 1006202776 440034599 87890976 466071240 1047014133 450744275 251430891 32321840 1031896121 519527066 87192584 634366867 600819861 759049578 800984576 188491200 482171770 219820083 22413951 94388302 1057480708 361472128 1012938344 920174799 384133324 131920914 465812173 248943477 100979758 549021436 213616457 605628008 47923276 373994297 870946249 231580966 431506201 436817031 981880172 595092204 637120978 218315102 528719018 950267776 643437215 191618335 1048226845 225366758 520722446 534645684 219592780 890294927 298333981 1023991960 326964367 716792444 166962440 53813171 194156238 77185276 900145198 656834974 686726197 816891304 645476896 871975849 408444649 902807191 818140166 295236171 699617549 452257460 555041931 534544330 564519475 1053515386 449934664 410876038 498550913 206643044 776487247 981782264 543041940 563265137 1057004993 832973366 16342768 40179704 951829593 34973150 214595255 368531242 477245122 619361637 534487074 801147683 416798254 873791637 615188508 267471953 879246589 54810044 491814760 344548270 224464449 167032955 176487682 907261456 290472839 900332154 484347270 816395336 709975341 662655633 281625790 314323917 568927612 469685458 687106734 579970916 452398867 655364091 955412872 164695540 95464634 711981059 95508543 869128665 528271468 54124969 645662162 606429914 443557741 352216193 415154785 376356047 709381578 841880921 751510431 673206569 268521712 389305060 321208133 413496229 386522542 761866304 206659217 489926842 191316840 62504009 918851034 668327958 696896435 681522949 975927676 677172896 281947470 59245882 464662032 66914294 776552892 477003048 453734559 267772128 217096532 276449948 930045183 3802484 972882866 321870388 109958785 73738037 209453433 125355964 825187289 810524177 319613484 875554679 826622443 785115093 186682834 737462704 22089062 579554688 292865595 101629258 888626408 893016251 576335197 320214855 279566059 493019392 881491037 796102629 932404680 171818016 231918460 632371587 620354632 565399777 567293132 92879246 1036958510 276154685 520043836 552945722 334790841 188461702 637703193 771878586 864337520 187064856 76508960 412032634 90015427 304724786 728777535 304642583 1068635046 730014794 940286760 588443120 2638273 69561544 258848159 606841584 63634840 250441171 373052786 256123437 277320162 255229638 980096297 175237277 675212660 58166063 578438488 536110197 644274561 621230797 842554715 676227748 1056717878 208303349 296481205 461886261 315533421 576790750 321044824 756884037 661107136 358002702 805202061 106002651 925693176 671755125 88231374 347359931 336512598 1035755641 275860747 356173759 58561147 210496065 479529854 878099507 939980664 374365991 454960278 1009564055 420620894 228886484 667278012 1053463272 593276265 570154653 595289138 662968969 958311289 189877000 850263903 263739488 910878398 595461623 142355926 425807222 560067456 969498640 592508726 973067138 962826531 542844923 626242434 985324305 189110469 533382746 969909950 302474607 208872453 457924424 207188742 1016488519 225964561 80147812 252975489 407790940 619486669 524920224 735885030 466812433 152479545 1017524707 733897011 805759672 799438184 655416505 702777062 477998442 719285501 327500671 543950023 900475404 545391751 991222764 1045259497 273049035 628879850 12111096 590385683 1011896589 1026317790 477767738 926733327 796561159 414996196 428961536 582714266 353925149 593467007 191512982 348582754 1041563718 62379224 367089872 922793584 630084340 1009584498 736266037 731957814 698998211 332237542 356543420 555828195 721858855 334160396 656549181 407834460 248028985 998494759 475436054 749878571 835462504 986054252 312676552 442850239 479460275 158261649 215242587 356346111 103690044 1017070207 876295690 173902320 217304787 997096815 269475841 709653262 588895905 518478063 87195412 361681769 102546799 399316631 379726799 817226247 372301585 269261681 931379812 530770175 793089757 544738997 301049644 785317287 159784535 745943774 858160045 20839791 278141560 129767482 18589356 227813813 256399393 444401303 432262312 514719242 409974421 13291558 1024915671 494753888 921693447 283490085 331209961 352108744 510396031 668444398 260533171 765504171 446016101 114370974 580773576 929523150 664412799 125920955 792153121 829187127 231005860 529903302 1012369809 781788015 201771620 568495696 432893206 829265865 834608754 731916723 266618522 607210137 311555555 875404900 882653681 566323273 1035987575 156238020 948988659 395449615 588424381 119072980 209498428 119891541 351977038 998874446 7468145 251273491 725128382 672802889 653957880 1018794022 776942759 738020378 360432116 510813736 1046475676 182067654 843182458 964671084 446568437 215794306 825095736 296321411 138843074 678013407 25826864 641593678 645021389 796337720 1001920519 162894129 497809188 308618177 991360255 1045602853 58920779 498868442 1041371137 939689408 1039258422 83604155 532044080 906769956 253806461 438013222 366229934 320300001 434477812 912626683 459146289 714748307 1066192924 106615504 443554052 622307360 866147265 742647605 216361133 783722709 373718709 734790509 785189445 780464354 574600325 203933368 787276466 675250250 607939777 905227238 758096603 502466723 527608324 634697025 769095911 134809489 828727742 715060204 1027144064 425680289 767809910 848080422 453078058 369879249 928313500 656111031 155563038 245139725 93941596 811869931 528895378 4484623 390609477 409729337 91171556 329099832 22866015 157482385 821799670 780725652 154653065 396455798 445731079 550780520 149382672 643410545 858048590 898102009 1043744537 48137885 869997769 889372393 735389307 404157122 12109937 174161065 864594591 725827186 408109299 313504629 40062390 136344162 1038225950 628920789 565207542 945658462 610269206 632102193 255260312 675120124 276620759 936036302 1049665782 1042508950 324392903 974906669 79274725 943502689 71835990 100478877 434166610 142920731 628227890 376163405 479219235 544680470 1016703688 734513195 929134799 123690140 750890457 426397208 206425432 194069330 42852187 817683634 124775407 252325519 278597065 467599301 506304032 157149684 499334743 56627047 579787847 820151833 973500312 157132653 373459105 172269052 217766022 30107333 96239180 829053162 591245602 612136542 877098639 176070782 719823720 595073125 447335048 103532622 527527115 392715993 1032170769 186187705 787977664 832527162 718993680 501630201 10726932 788579420 1063642450 1008466597 333656693 396806375 165008169 161369014 926777308 761423193 552020155 243017806 274108392 676659774 990376148 821828515 310461771 809562764 534169799 345671429 83400586 395402676 395966021 196450960 385802710 831360846 545729678 525923260 252537410 778704288 362594717 482328861 521753945 381277732 852860804 495602747 112674224 487196712 587038313 1020264626 935504027 55595609 114621283 690181724 833644619 953972106 691628052 184708955 844278045 616376176 985368700 982951933 958100765 658603634 1001217668 277330233 556882292 419713591 422201181 419022361 806865401 45867523 519320071 44674076 183708113 903986791 85386532 810060003 668360855 978045104 377911912 405824124 631383465 290441127 413458617 420198261 865421836 745973480 907265411 236593424 995738572 540722644 100413815 676602599 1029623342 926489531 859510567 1044343247 678131852 649179029 216261440 503897390 492084126 172258521 1000559964 963690592 373140508 345634008 737836810 228429488 748723687 905343666 447978809 93691535 358737372 473876647 425795992 762058857 34963629 1064527435 46922510 270306583 420459849 41425445 1056439149 98705171 660205961 82475759 831786708 274663236 797202280 23019427 411237924 837553916 241158595 828013221 242418442 148811156 1010508314 910108318 138483335 844325807 482847658 462752786 582544791 255202956 1038290406 275496335 539586801 56490949 1064471849 621479608 26051967 231872906 802310880 172073866 915439824 103239794 612078720 985738789 998809211 276560559 977817317 749013557 12164366 488742992 830891561 866988506 714873212 995560357 75166933 179607606 690701464 657015992 580825322 966037806 77015067 683166853 483260912 163242680 833886344 386561137 186259822 402696655 666352219 1056941315 917345950 837638288 769848402 288235289 139090280 164087594 567702570 1063433777 706258536 386485888 363418328 1071336969 1033000794 903761018 995705358 425408318 314340433 43123651 896829024 1030538368 746322592 253716161 139756012 600462813 41644112 490534053 611173872 589445165 672673519 87851298 33453669 1073727762 175943821 395445597 119528080 737498512 519125743 126208224 544065151 1009022606 702320784 481898880 1022337308 438442314 445062171 781687957 184985361 419771543 526872439 240893590 121819454 666481956 1015919909 201432192 1007344743 862332801 5136530 1004609646 639892564 764738677 141621143 275232778 637683039 263614895 445339234 210102145 437135830 661975231 487663093 792501076 442221837 254748660 170701568 693088666 799333334 564704640 493920622 1053653647 80618199 808160386 864955123 332589362 82501429 13740743 668669384 1073166627 828565404 975598005 944853322 373562769 495560729 237968670 504679568 304042166 173038964 328297591 219889725 63196220 387582881 802257934 733203282 976042471 533577558 226804222 841403906 546012658 545584419 610125737 1057676434 1017834970 424186809 907517942 131946306 183048593 591968944 658443720 118346684 297667321 692179434 968349556 522179485 469737830 126756877 359247054 139027240 390291036 640791273 263483642 369464441 832357418 648874552 267198300 681432755 227280090 275617416 727651896 997903956 272644404 417435938 609222905 1058812913 865928691 643774241 253359341 894169736 849890050 55525784 271712301 619558991 126740872 730647120 282077261 28170493 634927104 581382169 483347283 130817955 1052231894 209079635 232101595 259121222 696528171 702384445 476584038 69497895 809843730 1007747670 922241961 308062341 774371423 496649812 285987082 690492095 252531784 759192507 792877988 242735821 814858153 720679817 126361057 209162996 801228124 566943701 902282568 467789198 805196625 509827905 97317356 22069871 784878890 794574620 446091294 349116062 303052942 807336713 94729036 24761409 1038952449 127501188 615660322 168715695 343713122 535610637 589951095 1027340392 614833954 297854969 1064647269 634503893 704889109 1051305506 313937217 557192126 405160992 291520092 435828749 453367880 330173392 786964539 784988154 333024463 1026747591 385015763 802555948 916480190 354068274 956216654 149305637 300330321 300402785 819104083 475301226 847198351 971136201 385667467 361273706 790469345 551393613 478422893 682224948 1012826158 326204902 207027017 258794165 552974305 27211894 747762240 702706789 891679111 414655527 789887327 863927146 168560389 474756932 258558773 973948273 1007427641 930254584 112083645 157559050 154059630 506849296 968617623 765159969 1066068359 404558667 362856072 59130533 550597438 620382433 114781269 254086212 756571342 941810383 957957210 493978423 391391404 1065105130 845716970 46818991 923729797 131059263 518857841 1067055230 596083303 1061565893 838481148 911465561 798550363 610840258 748319992 842442592 204144752 755198336 201010486 298707040 969622329 555926180 226443234 571718755 258707906 279842428 772797353 532865503 399983211 1053401456 793780527 658161565 225037108 328559221 880321036 447189851 337361450 434768970 89470025 1052534795 728618327 457760889 876211510 945466794 443938653 687178216 475739247 660898084 434659061 124312328 303294035 41938059 159868290 845873569 459118450 144834600 639613694 925308744 349900863 931842999 855190471 449508170 538836772 362511526 125126013 1013540046 148956263 507958681 71878881 466480196 304261546 491793015 905179064 914492311 975999214 238762027 483893748 20038973 458108210 46321676 570375721 704868817 465689962 800735673 697973971 299787936 276961356 848949007 1043022706 50315007 170145539 266012125 920611445 87597743 183096962 918762615 387592502 181351108 92774177 18858800 504518226 571969779 867694547 344048181 76838438 917704641 142859828 874095526 56974223 558129637 256308100 451121110 932102327 899592390 521526116 519577401 507117608 598017566 459436842 641882562 682099711 588653906 784648870 700745665 44571624 81607727 880997235 104852586 1041679221 643518281 514322271 925078837 386204206 54204286 489940940 490629287 76644020 972237503 652427651 203547622 695648574 300333623 65740450 379205290 681313232 122122463 344655669 566319041 728101182 696290026 634016488 673154791 1040002139 732182526 103885371 746030831 65307760 774429404 218843800 384545777 494242517 451327058 181583514 368349991 707874870 1060472211 522642727 541314775 517441794 806429220 553541031 113234344 978781632 180283381 351908982 710424470 50936435 108481874 521058597 127215814 874135118 289083720 948023477 1024218271 551905695 517399003 546366880 879006712 849842415 860213012 324952744 961367840 256522162 50119010 410814797 305042211 853001008 969090611 187571427 820577396 816534143 1068810506 32173444 140940498 921982511 782021602 227455853 671270980 701032833 1033724442 1069309725 563885253 784862729 578682893 41695152 430204477 825549711 536255280 695125456 603297313 97320321 82328499 32749615 969486903 636562184 750828107 527279710 823560064 386989720 35588478 28979810 611845766 925102114 382153350 989735500 852245937 853483644 709302339 550490102 648398725 203673537 420584494 185301589 350240834 356181526 737552143 779057731 380159111 822947959 1055023924 570763277 960661911 854885205 869931914 1007623191 234194781 172683802 683769711 623877176 548669786 854554471 46707918 919109142 1063279011 1043421674 428676005 318604085 989770984 1042616029 31865593 202425921 546728434 666014716 20265886 610476354 469783471 462371285 657318124 651255833 399660385 108791933 86515539 975812944 4267422 59101517 779683213 803412216 696028761 172485297 730675432 40250512 672194530 803248004 759131504 372580246 1045870188 46528621 34349274 615272171 562203772 396668788 421222152 131222428 212846725 70292566 153490772 871003092 484130591 687478183 502451081 1063795748 1011527053 798453967 219555781 928811347 785738487 718577466 384997102 383188243 459431303 176256107 545903126 735709241 173325900 249476174 209757842 588409677 1015935457 186073179 600756482 500540346 1045649410 38767091 1005655251 437590700 680744484 917043707 573152770 262630306 966859087 1061084981 197561698 396976580 323514834 337282918 292409344 104726225 576127386 586997037 176502275 845213171 1065854750 608140728 311650026 599452559 16613816 943228962 398052033 37840850 1024797589 1010922326 232348554 39850150 472752806 771752642 596721491 992040379 105496684 222690254 1026262718 607147975 244012128 1004300638 411414579 921101896 377337452 858887984 380232477 516537204 451934358 483428701 57339620 950076030 463977979 19630238 498191814 831994607 159903400 516837501 216095751 937757778 696889063 256951810 277717029 482031856 385301613 467993387 447883347 257628036 474588470 169648141 488962961 179680305 867583612 359378572 309352340 850516487 787215653 221678626 332516206 1022886017 6740447 851961341 893921804 952038527 564018251 926664726 672222198 165385802 1068507401 113261243 1036103533 120530916 266148699 611491057 337548285 412011529 881930507 638670290 884753542 545038301 799222791 882459758 821144962 988905764 490069041 549022035 313368774 1035570356 338927709 865738606 948471501 735277019 1038325623 93841550 157948850 710654375 203025769 560804420 38918279 865035259 58029278 584652549 108012538 314830618 700774903 1007490752 610411409 546118386 869441332 264801906 768152530 997525966 724701304 370906399 630566237 705586771 941373139 754416057 967609433 823027089 137210556 695729211 744590144 854405501 240262190 151736760 33910196 320516416 937124164 769731834 843651775 658594023 203449527 759667918 547104139 697521317 942696171 533805618 512856873 574200402 114281290 707021817 442135545 49017021 957825017 764581793 801041059 256628507 851541995 599509956 977748961 328997642 169366506 489498339 1072288368 898866214 120487908 165975509 53994642 934183163 542302271 770056265 494767814 447912323 663206872 855071309 549778915 331535568 48874956 274267902 115907814 206273187 219941667 634048239 73865059 186725847 769995632 938986919 110946652 446279206 160827110 397527268 1051489739 400818108 357122276 375626067 775914790 112004665 987417160 373699876 282953078 763632241 969490082 685861269 599874581 387398111 717473005 831707438 731116656 604304276 78040147 67328133 706663066 73886503 180839823 676005435 560691793 1033201445 821666229 740099870 360484164 115043261 739826275 259153033 70142386 503972291 373186345 534169249 231482456 1005825136 815808641 814947445 672629201 491544960 472876061 757539461 475463919 70763263 1046146329 229147708 787320768 488622788 364691346 963450857 874015042 874489898 42401067 240260247 55807670 384484240 382157885 489102788 327858723 960545426 130673000 730426737 17072615 1045453726 824874306 696054022 239673188 429289773 136380489 226043243 530257851 954254478 316495486 392701448 834360134 247901202 481876202 947803395 781452733 246590005 584687007 559491286 24728167 1015998224 104567006 700871734 338041081 275883417 938130838 791447980 602062144 566274888 765610481 887524631 867060928 820495878 400417362 143311120 429180095 848346351 120112585 194707616 582529022 865883015 608109244 709297343 477758920 645100219 6041898 684607733 345292133 480991134 643134850 1015248742 482288231 605792765 969588592 9886126 917767306 59985600 809458204 418282746 804802453 432996181 951131106 930863130 193075398 305818896 581700864 440212439 340883698 183333124 651754222 826512437 72996503 232355093 815232939 157095812 1026267248 952834887 910926206 558886351 879435474 670102735 267391907 79731460 399365071 659929419 527653875 61949609 734453411 600129505 572379669 902938732 79211106 801247026 945139237 210018082 181192064 449945075 993336331 450082751 930214524 664010898 186972079 386349889 506268351 227308471 479766453 624818400 96152183 756520892 1072297586 168562119 68111634 365842760 272228031 986672191 147801143 790045287 150346778 182381304 606173144 849546226 285916680 69908782 252224757 333513103 912873926 43921616 845521663 983847720 8337652 119989181 54195241 599002817 250605514 880352316 330057121 441799263 69408844 560531447 293589565 323900585 768827333 1061232944 49695769 365131298 830600824 169957763 374468703 867404658 549427732 80612595 344138410 887401199 760105972 111713981 138531908 1050258561 236545577 532553150 257797733 769239601 90699705 1045020643 1043983045 282812325 130274744 121943565 734532732 518628512 73700693 139511184 456632036 638756782 957592600 407039474 300063647 94376261 788516439 900683126 668967913 889382817 617697461 223108007 356720833 318349239 237387286 339407920 3063870 825720011 40426124 422977819 904891655 444534923 524527596 806858462 485959072 608367333 828334251 645743113 667325579 387342300 285558056 731545959 131685428 1022447835 566712155 452493237 744282879 211637078 139015335 102013115 981122255 735566426 797691219 984526655 129188014 19532073 14753083 849952820 125047902 507021270 1028574750 726830358 772751989 455050296 32303344 457493558 314847572 119076025 839933492 581833007 890100846 608564066 958036104 372310381 426178742 634605036 149264420 893409825 618562321 339739324 16597408 173808025 966986340 713344998 82359985 97879160 80570713 343956274 279805542 637790175 1061044200 285352078 1036740539 336762722 1063373700 198099334 174232369 632152793 936151509 626395955 241896605 752099796 995132461 761683502 953894198 1064110796 303473390 531940753 1250500 796196496 817570951 523441431 807392747 105738711 485541102 1022498010 807427272 437239621 220178214 293569039 814723020 855119156 708500067 874249100 867412369 623444015 1037745120 867701055 608102088 905081307 775169014 384731227 1056737133 595255368 241415831 914189886 847011314 859598725 960694108 239604027 721088692 934269552 166127770 1050789470 932055532 314562107 171788067 116679015 897416333 607362169 891731015 1052383410 544258649 987400593 24929035 980199386 982293141 561436542 354306760 173842459 1042974117 519142273 273884291 375828275 829171534 309151916 830754640 1000248662 836672264 843986971 953890615 79001578 1059572392 224325142 638840544 577859371 193147425 126506915 350676754 173895831 776235146 940610985 839864402 432466601 47614415 461366647 735961002 582700986 212940420 799603220 949028277 651508408 795205763 724343813 434361038 35843018 927647300 143636611 435471365 702955544 25247530 153878326 675235266 682250653 294550931 347756757 738847327 33123919 588712551 74904052 254941233 910112864 699348889 596076363 393453703 745334637 809563883 554765769 1019939108 697680721 352102252 291829482 375885103 838736618 825377916 619321302 1068802437 1048602854 1017796280 161790345 716234148 182198576 711654155 959889705 156541224 549475023 173918677 27129687 522517785 603472489 501724757 1036103340 100261392 1041761114 297781558 1023189084 22116766 576323052 883459220 919777826 357399165 823105016 956281524 664119567 838746910 650461349 15423671 1015176287 225254816 232792988 930429391 414049433 390894941 897434867 964324303 359198828 15926859 868045260 676514126 295046977 1047954461 1030397197 927522878 281457716 483093134 699186271 881619867 618842804 30786704 440783158 7643191 117702936 740112920 75029055 955279381 720210006 971560565 216614177 89167616 448696852 7761399 204947185 6257131 346399546 808706032 429268034 640069305 507513154 203405496 353301601 327881407 326272535 100471338 1031936933 1037685731 133274877 521995486 699122866 739263485 369631050 917250150 404067785 261695958 996424616 214525116 547192891 312713598 171200491 27698736 857958800 67260391 817752613 76191599 97301624 1045979014 1020787249 1044138496 514818246 437933881 737958938 828996421 317567907 152780563 659398627 787212559 279347682 966356074 600312629 139108138 61493483 103922519 162607732 897992052 198961231 489792859 899869055 786537793 537417554 1016852337 954319651 360018357 986528703 528184362 308359480 908112757 902178024 536498129 1062880858 850671630 705161455 816910026 178397555 1009570990 712491343 1027273443 405454254 962314361 744243177 861453515 557059691 231348789 950731536 151514433 77326805 1006841170 411153605 924057864 568315559 885823208 1043355607 482328384 55833643 210779911 710972519 941605634 1004345590 589213569 227174717 818946517 414856100 1000213968 541130081 671171944 187460551 252557632 250618768 249617284 847146444 803005536 328885868 662341080 581364425 551773270 227757818 17692234 15497952 623544992 593304262 650384840 68377493 1030000350 1066581728 978754952 268981879 894499418 572149155 90038345 1027549056 825296254 1027856533 913351284 1025288356 219658581 956979553 987069545 397331918 309380314 362280639 391578179 253898249 536577817 574431358 466082770 558419352 907594899 1012754833 116335882 101206709 749087901 617576570 543956277 848346130 171730514 74953859 860039844 92771130 289170410 843523308 309166979 785732947 462850470 674153372 852875704 342359152 558597665 906557398 834072987 202199835 322940011 378010431 238990194 849220443 1069184292 351043837 1038046091 1052545910 139205698 507646638 936314631 1061616291 157686684 804667586 491005387 504517610 482185350 26310456 455742418 418645373 484014419 771307297 499565225 696243984 225606177 933592254 140069496 779227023 261507025 875000381 59144704 605799748 325784266 38565724 608256579 209479437 562070110 472648625 846064134 330270052 845898234 193802284 402217146 864003787 1051461183 927675075 933020252 1045996154 254519438 122418694 81216765 763330160 695368727 878732552 620944332 98217103 97569138 334116685 411415599 374528207 30861001 364244666 682341483 781426701 637824517 855456376 867110057 91669427 702333066 915889021 641473496 258296349 447177939 988332257 982447010 748102588 596880765 405114197 932658422 358781034 1068450797 987619809 370751579 72189963 663204644 252244299 924745209 419152985 1024671777 1035117788 63400411 522055555 1023889552 253770417 55123306 766014721 515862465 608470166 636202172 581161070 734092361 585617613 706612802 475293474 716297916 611188916 284356041 839193107 1005679543 279076744 297761410 37821289 773426241 462989143 199325789 481588156 125882303 833340725 1002046657 563566239 544300195 574507098 685838575 699963371 659766768 400848769 259528560 35105533 845136976 625129112 364667887 885548486 11642206 319111001 191866919 462821019 223197099 653190796 251692407 594533979 53493985 877887414 1006720551 912501129 617183416 419828214 256390928 681133037 79331726 1064712684 1060266372 1066570610 728313224 814560041 581568619 696366291 1019718581 54283309 248493282 10319146 4987107 287920119 473282409 404055679 364096691 878950004 144642654 502022169 723583467 131893399 21814159 757407282 263777423 288052743 279288880 376758625 66504681 66213515 690307147 10480209 1028519185 348483288 521715453 484794202 432804612 628559059 213381066 375990082 405283689 624885512 525413066 630877022 237574296 552822681 455062795 377230039 170786651 295971219 937482838 683286949 158173744 898532476 689181190 581332083 394430474 738467862 86495230 192638713 995753086 592787534 472301930 27924067 851619892 734365661 743909299 944642460 1035237733 490164783 296423238 729464910 913412330 982575114 766661450 226505440 957437806 379636632 724006002 378593705 1061165603 311656254 830713743 248328955 120609943 848035126 686725920 867678554 84948259 233725098 842129036 536132111 198829461 44489999 550065862 575317594 14615295 334496569 1071612464 559544085 601490250 623616101 796024645 506799511 140890199 236334525 195941349 469364475 190611942 104439147 305074378 908652180 644300782 1072542542 986452856 280768624 127704414 138303235 540455360 144310536 115428540 867535211 784885357 789938964 602456549 1053250138 274434092 729907922 221599478 746734716 848613544 423265740 890567094 515313667 676435788 187383964 895838694 490192852 575614559 919807324 16216045 346344436 870216348 705706619 313614579 548033449 921519364 369263872 762967556 194491817 67423484 387580729 242696452 1068204349 412192056 216080647 1070286778 259469481 173389370 710612707 406067344 590252339 506847967 39195526 218964693 688595911 889805023 595532829 252303806 632362342 316239409 56687491 395167000 208818575 630072747 747797135 335764161 1027679457 671622074 709131377 559149623 845664390 829001510 70201571 1011715892 388002034 916375 88516842 448083758 216478326 90294547 884205641 658514856 743392468 1015051683 125208981 455609303 280300701 183554752 354462719 930557284 1062580957 891806472 133135683 289034428 224560930 268778708 453480366 679744109 626260235 503169020 810466152 924526253 777958610 869315736 458048807 768678195 1060860334 1049440429 405549696 1069310132 333547637 16176273 923215591 141190853 521744997 915433083 542093151 131795730 586279997 680897382 551378650 611035225 210328988 310349528 1053055084 162159216 983121054 169853619 1062524526 168920883 998468574 261622408 1068015187 590223636 749719257 575572513 505406752 909857901 476454191 100016102 812869011 407938630 609753548 823957299 247322785 109950943 679503558 621159673 1056797720 956137930 187892523 153869800 603765597 366483719 579512202 750646044 519891753 859213125 238503908 1072998320 306124095 844153531 498031521 487005076 902930841 717694473 24362153 204187802 136264777 1012885982 470064280 711397864 203479209 769866716 814598267 1045043797 848313324 476077754 154378729 39187132 105247129 64071296 373397578 467336111 713177848 265128288 517385166 57187398 863389300 247613662 255547342 460902442 311587561 740381959 318284815 42212851 347946025 701231126 601814404 930161613 278144944 116179246 1016807845 195088708 407623064 959370329 172390797 903798466 597865313 1044477014 821365937 502518310 660648382 540052439 1072170339 613245236 750172245 245828898 145508250 403794646 265087338 440263593 676666608 438250579 248574107 198297567 799269274 79654518 408002613 114579623 138528385 9255564 585498837 904248769 72425988 1050151880 143539160 501995360 472732780 504088683 61535695 30912633 120406677 1028760247 146677528 969091404 962648440 277474558 785817100 98162838 243496945 213027699 406812556 821233437 306155288 714310305 119393859 218977304 57954940 759651372 273866837 887290229 735915295 10179090 568436531 593614211 899141883 961005331 205068391 164823048 826258149 327545388 555705448 378024841 779310383 734696580 505788821 737348489 429563044 118245259 930339857 502935273 17041642 303143532 417157078 1020959779 573039993 593210320 951477733 794309656 242516135 553267925 932605413 572246376 893884187 651390849 539413443 911213057 616843963 867175042 765566558 559769211 972252068 61326731 158368084 260275368 512261528 112586906 932413433 287448850 673989084 194537907 707928358 589253951 791510713 934267476 914739673 28830967 608736479 892503470 170897118 574691962 708260005 364297847 269653201 970994167 498563626 701613004 272397932 494053002 346395403 666070874 935173113 513545770 1027918806 363296610 409792627 68860145 832080713 802246679 617693201 92145343 849719678 426226828 955017031 499779895 919558197 779487275 250138599 495684643 1005090789 326583389 276278917 835190854 784235365 108127812 166203404 827635106 951213014 536819874 803537247 440542040 125100180 829341074 861959467 1023252532 492314323 449841815 305198809 704558116 329920192 393229196 298359860 978293432 317600121 92924174 217721867 333453970 68501978 816746142 823911633 376339295 398389616 544573513 860742425 786527212 464902732 319839713 115036421 955301661 747066753 705631605 260112450 719422679 372787982 606390614 602564907 297369440 806448812 594743334 671936696 985909893 901981321 1005894162 990376419 280946109 335167813 718514870 581390933 418170937 782215729 12222690 1020539990 761871545 578081175 241911206 871870198 335765768 45861198 644385289 959200599 689733197 605993760 147191464 977338554 172892681 471608902 979158980 882997103 749342602 736446804 843787615 990550972 998983826 223808683 533793183 474371018 722882134 394849880 627534627 924258946 1003446004 483179517 612103375 870557008 102292478 449227773 866769341 935718085 975809371 104930427 987024857 516011097 774491474 1022176133 377598929 736419121 123047848 829799966 26415167 782035306 873474455 96913148 676934604 168933282 338931521 914594171 284455201 1004315009 331546633 740134782 735963611 253870113 602634794 971143136 164444436 472608 1070111353 895618135 100599492 623200117 770362944 460633597 78318241 717011179 762062016 440794293 689706230 204183831 468682287 1029677398 930815195 627796274 953947741 121732082 986592400 574473322 848714897 730183282 767462717 100206171 370285710 96922718 1000526724 902142480 125280862 622878593 792218731 899900248 817839997 651714685 480660767 26879553 182071310 497810442 916333876 288502811 1071342619 110007850 44462992 746658220 296115504 781085262 1058193594 1048057955 944580391 22791978 707735936 161094295 398513116 413144374 169359903 206385578 150591958 616691611 973971571 851397975 205142703 429726236 448610395 352822835 541688619 265819162 286803319 829130193 772605112 526163432 551593326 368592991 858407543 132769937 790325517 127369673 378000005 1027973652 251804621 1042591686 418126841 848503028 729085965 392494780 685035103 6254473 724249351 548920029 354254053 269159344 553228308 809983796 194615944 816474502 829777712 901937265 99582688 1029420977 609024376 1021716088 658655243 946482347 937597589 241088167 489669936 663231982 967179639 435589459 182999653 281862975 742070600 809668429 662437613 87015871 858173742 680772486 90120991 541455335 429424279 572966447 322121294 343096737 553908991 708126903 962185260 35028139 4427934 542099674 917185206 432256703 610390425 989946720 212129878 825037708 421512780 24512421 288535112 143180377 521879640 1056977300 83702769 451736298 186859866 864352772 888023499 291970630 343041808 676018023 260110914 273760331 356009928 204982020 796720882 1055343010 1052996117 27084375 11957031 74236054 133709400 158986131 175267759 943408863 42927787 39333546 331454502 880963146 74162066 23806571 414041868 76787561 156102678 71270442 1005530816 285210864 903835723 104792829 1051434709 740634399 535444098 728621860 580080602 311769893 28956016 465329504 547573584 249282865 1019383748 613210110 817561007 219030455 656427216 835393299 628275512 173249296 614895289 987176163 360447742 857552681 198955881 546686301 792608452 154587629 701355657 1043678729 473278374 405062779 401502702 858469562 98065948 393211014 495294233 514894285 567503619 913234927 676520192 887060313 86426047 952948947 9381297 139364265 365673862 795908138 105065910 823677765 767378514 283085109 755657715 834540280 389121810 213381511 163058278 553618635 482459914 251297547 196794323 724567561 674683359 387107175 1057500595 473477539 337051401 738668108 955385041 311100366 837823555 118009808 1040956408 844700487 106247108 712494073 425967845 933147084 90162008 228341758 841760397 185646536 563095273 980035689 426079482 515985869 768913455 356798602 909352543 841886321 396278229 1073393564 594591215 71625245 823245746 83388004 204662046 260345303 340163568 651417234 999933636 510304565 176779377 648817943 99751713 657554701 836626816 304221226 747828476 584047272 737899598 695233953 45630371 13469897 291704446 812609319 557761978 369964998 444255059 655054879 912328178 978850567 1014739440 146552298 512847398 183362364 518770183 584460101 589762300 455777050 311447957 275172864 283189391 769544080 315659425 915527964 930708397 668246161 487058405 763392853 803722510 404349890 340423806 1028705958 356512762 328136845 865901895 473352833 885322132 371218352 166963769 509686261 187355535 1032390803 1065285027 219564470 620868220 337392391 466032 840387479 856128747 50652841 100877500 250146710 536318372 397055630 12853695 18045544 541479968 463028380 58401971 649732663 497491269 602277745 493770951 722069449 577915251 1070585298 602719851 483474192 423996526 955381937 172999784 20458610 1038602904 230667007 1059052316 895598970 116012204 364379740 995403814 513796672 933983712 148163400 226119759 188039445 259699358 529233541 189952498 84213731 634464097 230349429 942805273 121574750 584047516 645538527 611626988 938710028 1033765882 410360634 1007698744 149093704 421253225 633567799 1045136574 914457881 225285118 914780331 392919106 340162807 297288419 892942521 574600680 586408326 430602206 18638268 763623204 961545080 1010014206 913303833 643971564 1038203836 13188863 729580965 835374964 407372388 1049732284 579209814 462477566 359828587 739019290 813373171 845639944 38363580 55699138 1060531964 378864202 105490811 1070575865 359587395 466951480 270232749 64978457 992976665 1064082014 268141120 135640881 797760224 988074817 747229942 261841200 972807667 1029627077 761243976 508980390 963876572 313361898 683186032 307853423 904720965 344687957 568114626 1033979257 132418827 283427441 1000919117 810586291 190158110 1041838489 390082008 105618473 598743471 271978044 816839913 115610248 405897640 492513320 698551944 380439584 317903441 355477771 260013535 1063765852 503115270 1040856555 1017520907 1058201840 875037920 216643513 900640399 390200160 126058058 258768108 947650280 277220163 722504541 753852867 303478932 15049539 535701741 589278931 818086706 13977336 948100056 797452528 884579047 501808972 44982987 538444711 954319490 337650184 895657854 1011028869 804174075 221520757 700151717 432470818 153768646 245681247 1052802264 445442944 228696217 952077279 1003951780 740567423 136050522 479740118 904100365 609037148 598603989 304750650 310475401 554502408 559434411 18640641 351487156 495034686 343349043 485935174 528690235 437400380 504897404 391994731 615947168 886303417 861612699 641926391 111018206 977560248 266486429 943435504 445154919 64680734 873895119 626698723 647690613 811520866 153425587 499612511 543734419 886636416 908956673 371870457 402927819 354875147 711723627 644927831 658562380 183739662 877460229 357642459 235924396 1014274101 105520314 895678105 527521820 550447540 590304479 797441772 595132548 626727306 786894969 745869031 1000464945 103531461 1022956129 16075602 85209957 666398343 1023356362 417108110 294692090 451182852 865898158 959941091 798230319 210817709 576064173 916945515 102847528 1044961363 806420184 574626433 654128167 172719765 767532225 76927410 95837362 952608336 536558941 903295362 354889138 34185183 712722808 425424037 147058984 770793617 713219759 875177445 572721107 692775648 397802973 206408276 414252740 879049823 1067023556 922598985 385987288 329685750 48816907 1052590881 678581564 340978867 385948321 212485556 396861547 229196896 1067257241 339239849 951041001 965977273 388811920 951238315 479109066 255797761 488689711 74305753 511382325 1020473984 255331177 108622296 927865759 31396705 199136607 762555279 691454562 75545894 586898646 78338487 473391014 589689838 874496346 576902697 25164903 746089298 137609376 104253765 52950983 276455651 732654532 100182964 56387001 484971859 576263577 1070599316 913224301 419347035 18365065 187405372 422622072 1005071697 49701168 439524442 416874713 768542953 978878338 606022295 1014898370 83574119 787355231 806497708 877581839 570118214 348572586 272644517 728282723 435414531 424160723 564373463 1040886881 812199077 521199581 585449414 376626300 472081996 205350524 131509503 107635744 994904062 952989823 171931716 331536039 524382325 96963904 146619825 637656977 784782069 166485711 777619993 594515055 478051793 15802228 887280913 240741433 433158120 480864214 800761042 529732897 496632733 716206870 235621354 466358164 971876468 525572356 66250046 507182800 115127644 534907549 25947780 184784314 337472287 807223723 386257904 916337355 1063999056 447627936 968181952 1024353325 176792711 653759566 152143083 418323364 618989839 788415436 51682113 358209887 349006004 317997077 194932703 284028243 553870561 41703878 37312043 994565538 1015862648 694292036 678915712 787209182 300378822 1018824432 559403354 67873074 631142841 804826348 1023384458 322089703 610172479 777286374 406914287 971765749 130856529 767458145 696952289 70899763 183937370 37211813 763916801 292456972 294674609 646192115 894987914 143146196 444240497 449061336 984023167 872803444 686432968 1041848744 200260096 45484094 404889210 363984793 512542797 178849028 627638011 184726201 987862776 302336220 757524909 880421014 643994097 232658805 538725645 257554727 39901779 575860786 686079943 824078128 941034772 107134090 116089169 620336749 274720378 1039015436 804902023 669854547 949414811 152836180 389484345 1022609123 976329638 192070315 122071759 883036775 864701750 460140056 959592968 579441642 60960237 358402783 79648363 723680564 515875879 233705409 908057075 675437973 215054597 438019827 637096576 140596595 330925572 248337950 239568521 650070739 471491419 1062003847 107352408 753062239 1002247426 113254749 817312485 134927263 571260802 721169787 1063730772 462219566 239370554 208207784 984629744 217887116 700297406 679523217 545083680 674890576 636764868 215957000 383722241 403195486 33846185 378017232 76830571 718371937 316615020 239067350 298945285 823695574 530514148 900875841 385404211 956103824 48436663 707020962 234198477 889891035 720493654 953697167 429434993 957011353 688318003 598528303 421304999 507320678 257739806 702552423 699434480 1029803863 158288345 313824399 824259882 705914747 630667475 213706661 266214496 988791066 416117435 519397085 455806528 967766957 816826469 210831845 437243001 21244234 477994203 958059857 119787207 78400626 851737919 288806307 815983279 895810814 509371207 1043944316 1053714444 57424884 879089529 632729957 349092349 325698272 952012985 365941112 592443976 1051819592 403929023 783763795 279573474 512470116 317464190 404128979 230946884 1043023272 637938620 832670358 452861737 1040281541 249625263 1060642963 1064700574 52655754 919442609 352969629 702415891 715509833 133193630 65782817 675366691 114074309 82457786 927435239 253673282 95716834 65886709 697660645 190225461 511903338 1046048942 1069747291 428938227 50292254 351417683 192801868 954886255 495586252 584049079 310795570 171993334 141923409 333078602 893795404 634447080 612292975 369816481 36556010 786982390 236158980 37546221 899654535 320006502 174823543 529368681 817088719 48251307 945128715 492800148 861207764 354365125 613070328 453982704 312958691 957854917 648013460 207146634 83619608 212125490 997926359 694180784 206351628 123458972 617891902 359661165 1023533509 325324330 266123613 236217635 644810871 50902356 34574399 755786499 773562368 706312831 662090355 371474082 437340649 737580359 938243485 960067818 311058837 714483922 951233423 682070004 674406436 248318390 510718060 921500190 258164334 203576927 157005875 451308070 792298390 405238547 733985550 202584874 571817713 865655511 221306942 1068256222 887685124 432307209 216195129 970739642 191235106 130377176 445977284 347655793 266299669 909350323 314308782 108991198 9281959 549670257 214202115 822072614 54635592 1012030489 183804325 122915591 121719429 406144777 218263619 831823256 259069476 884073101 677678680 68754125 571116840 725600018 181046597 432567510 832686996 670400115 1011859201 389036973 297037199 312802656 1036846421 636527935 326339304 151345299 925273986 614593147 110188596 772828632 848395514 970558287 572023139 587893500 544547701 1046595700 527592356 1014207146 497408024 989068064 213445436 381180396 898595096 436241690 6240865 450892140 364679153 933870623 676825787 758758575 91723818 152250372 269287804 211560975 189555653 339845176 499516968 870774518 273527505 74693427 1004946629 875261288 850517182 8499539 896795223 136232520 831202248 872090849 552779776 340663446 487814261 669257295 278870604 518720166 109845301 639184509 43533927 814956003 928570552 919293213 317422720 972964203 308321852 633819305 967064075 808646375 259538159 823458371 737354076 479868430 849766148 1016594897 14964073 1041114758 910897274 660822005 1008717114 614909385 974673308 692448049 69894084 465576374 451227233 769890476 536472140 1045435235 916337312 402957510 1043246295 563082347 497532475 1004974768 203294541 528727879 818179818 353460942 826678854 546948782 832149843 921478190 525868332 735141817 248113061 138595363 340291603 179206082 420808633 497632778 93041507 878860986 754437571 871994728 776893464 453932434 375739465 802637162 230400526 366224742 166632888 89833957 835618769 581445518 124327176 989028574 285120607 1056158186 200848410 68299890 111259698 207620020 731134996 685831002 526886057 957250240 105822211 580345018 558544386 877015946 1017521617 164529101 423449839 749988599 868486587 892769578 705781176 468441386 1042394909 917541910 558869198 442303705 839247660 361362080 195911562 712948652 122262085 1055623019 618236518 340035098 730800302 735403685 1055537747 733797001 96846918 869135799 1038532465 165483371 845585357 837456342 47533048 1019911225 322207818 491804096 452339428 880109361 361075087 207206170 919439457 125352383 106820497 460684860 690565509 1025177616 22269432 376365207 607030744 604867652 337033522 610471995 917865631 506767785 942579984 502852693 68596460 607890963 679995636 9964419 860208812 1060469194 120867204 171383000 984221417 49237820 171693706 702841418 417230144 259633691 435991428 13987414 20965650 516331500 674223779 861662555 518414442 972293864 722189846 197543694 515054226 131182607 831259200 404040019 546833831 102797757 510038699 298114129 323014978 395975881 816223392 87453827 887774124 226765205 249907751 819071921 427914975 397367486 564349606 34614724 653996834 1057591653 501014235 676244089 971459457 26872632 798056047 100738273 601024464 93298968 282268677 134925672 274585781 7626540 396947621 263458739 240302631 829646340 518428712 766181219 204209751 627062593 800977153 678472227 908887548 628467668 599778945 274247118 519955943 158405268 391456873 756032199 629445748 333153062 531749068 723341424 951811631 442139850 90233725 189512490 38685361 1042670015 84319123 507406865 1067063432 929986710 214555052 72971066 987449112 391664035 900104452 881077261 1043483225 347425439 564029699 563161056 401803543 383141976 733244299 856289273 1048350154 889611202 828179164 828333415 470526842 175167945 360316036 184029323 838933085 889027790 298017322 649335652 757699976 278875174 261934636 363943801 599079561 792459964 520043209 139133616 7636468 280438073 108450069 470718770 424071628 842466829 838257945 471045960 836752360 773761540 326678320 337266516 40129981 84594002 455262132 298137929 835755126 761800332 333661229 352501686 679809905 575848454 838683113 808222636 568890233 952518421 158052323 363289466 237893231 326545942 880379898 377813840 597464942 726927246 561652724 672149903 545674322 1052991487 362547831 588899511 957599302 502672120 964523904 88905256 715025998 76677899 715628067 20938278 166402876 434436182 453554838 780246305 950267073 865183608 393136766 651148139 1066538964 792785625 231065871 1037258982 286788720 853869958 676755965 500684622 902661807 613553668 276570857 767794372 792113448 861474869 449134527 370288053 984120238 697268999 1052595471 473303361 990515898 1048005157 353766169 467849047 666255712 85797238 544156920 327525299 620680093 175044126 547992846 851153364 307060525 288624790 133457906 619060843 722802330 686099929 917265203 337944051 515914448 460575937 277009854 512928090 241614453 34793959 644325715 756309578 936474781 1064282731 459094487 1031318324 795030167 11182477 322004956 400057609 79372672 88054708 1051990229 151841172 761130210 972875392 112863019 853418773 273459682 151888078 998850556 1014355357 885224518 638014698 253547459 210986607 252216784 73850312 529296787 520831921 161813561 49088264 27273551 901345470 652307402 528298233 11349255 653462147 1012926747 614674554 754792317 843117242 15866424 183925232 313526164 449606420 393963462 835386955 669458881 129494851 92292985 21575876 626531134 841135755 322999222 38318417 51591443 1021306330 448382217 596685176 151247404 46895112 111352650 698238373 159131688 900026665 116376347 427171281 721261419 197834505 663289242 778487494 313105553 513198530 658870043 931965037 801595409 516107944 768774959 846339847 315996576 347320870 819946555 233712939 212342133 178883210 98578478 324472002 873748759 69557714 431469723 571956313 66138503 714960928 793988281 580615406 690693030 1023729535 503374881 202455654 444273732 897360696 831600727 102831318 378513547 830486613 430818558 475510044 171392940 501541985 27239907 182840661 457124733 57060373 679273029 926667897 684390968 901358556 326870108 797340453 936767867 974517942 286173265 482347439 465596300 300480400 897910840 482443388 807446781 534595605 664473105 686513385 946082700 1030811345 604212472 52456515 765593115 764988836 742417801 107580138 222894666 833931436 957823181 676227427 478177827 789866067 1034351476 30304454 117749062 258928403 933003400 89568893 446024984 384293435 378011416 632646721 842186157 738708993 489916574 719465808 624575466 895317594 1006575487 838893154 522225100 146747717 869568056 633705735 495056753 198318832 833793407 1010442836 835062158 207960576 552074000 892048940 704523793 362726095 757277579 586861641 314905323 523095577 684784831 962853423 444401331 510861988 61480529 896881755 758986527 803797212 872171311 325571550 707824294 946330946 715203019 123022011 533231686 1062681140 24627335 432290568 513819860 494233563 333546693 54407128 286130158 463052792 742453447 937941067 2249801 233610195 757019609 588000946 36847981 1055263133 166048428 169098999 729190771 254775108 830224578 486823517 940184428 642572717 299963838 133751704 814896932 223790752 222241151 657739082 849516122 985363436 317573779 347142211 66638940 893649419 355684873 1018428903 214525645 36107752 301301778 914018863 105659072 924795356 956804523 846489961 655374337 946866675 824963972 508702673 414362887 426506889 694374980 1035762 1011374148 266137339 922050956 691200150 609697535 506223806 595227553 913679553 307544490 729652141 791543166 952872427 112991445 716196832 36464177 388431321 54966613 441969618 232380222 1063856744 594118526 1079292 337909990 427020530 14826653 902138018 870620399 991456520 328915635 827801631 562049697 3698454 605881162 128411193 662649584 51947396 364526700 971632225 184360518 521997873 805886065 320276699 821827317 657565139 120866064 333583863 1025745494 786858493 810873783 928297510 239156760 544269318 84818417 22281760 240902651 406450450 78388568 796203281 529447989 365719952 137706125 849292417 696164793 672410200 63529104 134759745 536562584 137655036 395633199 785086765 1061103582 474956844 743962386 518706312 899766234 106532101 1021606717 427268412 1057271254 253125775 904777655 1028723468 542066206 1066008713 223443375 10020922 841914726 497316403 20728316 347287118 908195904 199195009 397798544 626687478 938597253 652601266 1072161465 847875134 755463686 371849692 33115147 647959232 213816932 564424520 105959621 908069341 881177161 579923144 468023132 669918441 118955001 223984945 739346108 604164703 569184090 142654707 958192230 208376532 1071770390 188922185 366748935 47024712 606609192 200916330 50544706 619301417 584873211 149426368 243527798 928063908 378051004 301059422 827117569 677330448 784515827 669953705 776012059 579473163 646190562 13275501 917704549 906214038 163465243 530158440 942627976 533671268 918538585 531115567 5308653 577043918 201253850 994158984 965775750 67600577 787176604 411569672 275704 572515237 948274822 642969703 98124591 786087667 974304686 197579493 738836208 109290953 454727899 1072414168 746475657 552837824 884759998 774981131 521547919 420380011 919257315 743373700 112921896 570825527 774529898 796589687 527057009 788900655 485513940 972162224 267887797 209271245 85908700 92637109 6424716 705011770 384385019 312735984 417019390 860196000 804992303 828574945 680403197 207100208 705654440 25322074 384646619 201996801 852665307 882622003 27550740 825676508 1171047 434852160 103626421 793507193 888722379 90311392 987371978 683369032 602587727 217078856 579669604 969001622 772733955 852253130 102082489 409931613 372148036 818333850 396061788 190142427 208725409 738457636 1035785677 267337657 753166010 459595882 467507551 520690040 241974883 1055020474 66410187 243181471 870130998 216397415 904093586 1024715526 230086836 462198485 589631022 856553980 566144265 1046915502 30520595 709525109 570302912 279937225 179315655 1265694 677653631 10239151 223837751 101936987 463958027 964940914 237615966 520709020 857914040 218236631 504723094 648027507 696326765 602169105 1024032383 435815456 378980674 178182476 496997648 944962294 813531931 8554032 296642702 115020945 60028015 1059324158 980400292 778486390 356478233 1043965201 918652880 118946338 344100682 176672523 271443062 544750416 232475506 203476113 278901751 422432764 753902378 410029112 811212240 558812064 855325670 862018047 317426162 923392756 806757673 820646553 826323414 923391420 216047413 72400178 606846730 426811488 133058850 927295959 112689422 1072165408 549929582 779777802 85572130 39884177 440218828 180312506 672760052 942083590 437697120 313476953 275070651 123108522 909627199 903202429 690109126 994865121 214935549 294421428 810701694 391438435 664101385 148436472 1008179631 828008234 711942893 416278894 496992320 699807438 733208831 1056902076 595652714 988344952 420932674 303346907 645159331 516391911 394436430 25657248 962887601 639473834 919853326 33804726 738658958 274089910 478701439 429709104 892251893 46864526 771929858 1039556072 802532211 576723579 264551616 135622403 517639597 991556662 198657992 1048929829 908573579 783602413 376437430 779293925 705514115 331360818 281300872 699489636 95219604 203542361 125375193 799236063 255082580 867913633 332125758 39686380 453302567 261405287 260033021 157406567 715113358 652067651 929448734 172177460 456541380 277781387 528846092 1016500567 965837573 478731627 182893975 252291013 536918382 1018148752 724572292 912007928 823531302 574922280 658344842 839986653 914080344 429107871 723608282 468748772 389469397 905837936 394638247 282679440 492703267 281815772 893949088 407849643 1027636581 86330003 326865703 527433216 108520410 796361745 360375701 802721933 231534285 104544254 321315858 991099281 459228764 590593865 364870995 687223257 421240783 96033429 486642841 459639411 847414119 711678253 435225314 835943162 391552575 386295857 89847602 539561736 819986611 477209589 756780568 610863047 593497592 259563188 410768532 1018579934 515775610 576816233 631957014 54422886 436199036 763187832 197241560 553918511 1045395900 667970493 203942604 451797587 203525430 273123916 316882688 331847792 831334350 539816172 514496524 643302223 790601825 491059941 99134534 511515974 1015751835 862261286 120027744 237158745 730120340 237202825 461361992 702903135 288054666 7225887 1006866679 56209191 683600804 924063182 318405281 465474450 745850910 158981105 889585930 143205741 49271624 818532663 575639235 31909007 195806502 485649204 528484741 722532170 595118377 925262757 828795979 33844095 313461790 656767107 416594054 376613199 193155665 309152831 832348805 741029986 476029749 143263302 534713860 1044419112 248236870 603943450 117205930 238544651 1068149074 13442254 89136131 619678283 1054367565 499529932 304695013 772486985 934021218 22260624 497644355 867295783 1044233480 174850828 458426706 95650441 1034097633 638415175 126648392 150261952 1062436640 309428011 583232723 894547660 128056422 496132791 386325223 296166521 245558223 227025956 171649777 417585799 52124775 276504985 824501683 765051865 83755630 697296719 616216707 221165597 819939750 405706240 950112767 214132152 211532173 61523901 961191802 342036144 576182236 550850512 316729268 186746517 721077039 154538616 273995643 143364665 952921706 730209823 986877677 658393516 86466725 195109914 771455801 719769664 101565673 516577159 922481259 159357030 685864393 914645754 342475478 297458557 811907942 1031390023 528907212 759889922 873786292 160396625 31653863 1606246 212903998 1033726780 544257981 285710869 455569388 412199121 400974582 636770225 149266342 161553091 412971849 362810552 819981865 713721717 87391346 684553173 771148972 382488658 140406190 197500480 909861260 287759705 555034774 296874704 95965475 826225527 849193108 257191059 990186985 900699469 494265326 1042181423 890285541 704191709 380423176 515527160 10401857 367930592 124457671 477810529 35190601 232870289 976832217 979942043 918072762 302169740 854348865 348781629 947228160 184693255 201551246 654608961 269404155 927328904 24141701 890563026 121564305 313214684 684894190 61836719 584461769 388784371 993328444 336955046 990382360 180672147 3770048 996825112 48152088 541372630 166370244 461597426 908200401 133502900 397479521 593146658 1054963896 281564253 127399190 11322543 309384934 237211290 971786442 986697679 900495353 649969971 869572454 149768805 583178541 813520542 970208113 234860518 157652928 764082322 967975938 734017305 931558921 633519562 250689000 65715896 585896389 291215131 673914162 942370721 910011580 782885713 166282793 167854210 189368216 873430295 448905000 247391292 184960521 491088315 782918919 1004471374 678987003 342248678 291916320 292279113 214249951 608929100 137357470 483199011 232988909 89766305 335182409 709683476 1035254502 211189522 208406075 861341816 448752888 457849712 598867669 875626654 57632134 618168224 314941572 466893678 626489963 275668167 344355880 339233457 972708490 887008897 938223300 904862100 451358354 644331469 711824900 679545343 1049467847 270404352 828699077 258697058 266989573 585662090 694115420 728406787 623060756 529215926 37605078 265666749 1039968123 288532340 231287528 341129677 9309749 423159566 176855459 466586641 1021678714 489228265 56839618 766759040 842771340 114401669 385124371 461377480 637571883 382432562 1016473641 492335328 391667534 669878942 869758922 336056259 361229555 528826676 802971115 689153048 397081752 942189558 417883798 648505862 263523585 815779734 1014442072 718848589 164759900 356160368 595955124 35427928 335378699 176174227 148341882 687858060 900815615 226263901 847418374 925713569 832634334 631468666 1068266618 649073459 796643213 623774884 540282849 279160808 378470861 371474156 179601953 159745308 140780922 198813745 439303745 990904999 48589539 497858168 594405987 88064262 782577919 989138631 158170290 765448519 36390132 871837951 740396808 110949274 1036055012 507310419 476724359 681016690 934519858 148740096 211142599 277759530 842370957 111537642 694948168 413309010 43570607 60023321 24977938 963357219 557830340 894411347 932770101 124444650 1000902152 646355901 627339308 313592669 693532849 508468893 1043125120 336767288 849428078 555326978 486027076 205613678 950856778 2072517 277461670 628587929 100953419 590696551 1036053 863817099 998802166 566651067 795168971 406653560 601893119 919594731 774616212 613567322 566931097 888451995 539606064 184544376 839708454 671799477 537873646 958599349 217716602 226969066 113996839 826650438 7823761 656125785 730719689 590597446 391383411 515612279 780077849 212811200 557463749 78427988 483643593 388738012 1044554167 939097273 740391205 330053623 1014322161 933413096 951514535 793300347 1030936032 626089270 248016922 1002438763 427616011 391465470 340559915 801463853 625971930 493443363 599850227 620233766 304688918 190005653 211320029 1050174207 340060600 226566867 870747342 172645693 664884107 240472381 379415783 813613597 587908004 923572254 1035481274 640709127 87371677 1051375990 656855909 63250855 962797052 208318886 528798549 983090536 504239573 963461754 1048949073 560838737 261810511 735787672 200960220 418034913 1008469765 564507971 643507396 600291432 645811616 1047192767 1018464299 617120537 73673089 109278430 116392987 922943994 820944444 333379282 891636807 79828505 253204712 114299350 1028858700 238116384 557053838 5858027 550486054 561481249 55854226 2152623 632823488 42795160 828629066 531785397 775057 1064639237 42298948 812455982 737864451 995910471 698048052 925115890 878251847 464253534 471258974 141659363 228597266 516652669 47663235 494485092 239054608 803025629 106640807 75869833 330980687 591615911 256189035 578995608 101684826 12395676 996159032 130511135 247485345 460947185 977385598 122579933 38930883 293169610 274652188 193935559 332056604 451714967 584060882 454023237 262255989 661870423 159991007 344162314 991367232 4271271 758850746 695163871 38894756 601833513 395768416 226418684 667354331 775218646 144826029 185322514 738786815 136994495 617338968 348051259 26789984 268562665 878913010 649304841 53085606 723709563 476456363 159804392 491771618 404424317 186272658 438870647 311317474 417921550 385525751 512928318 52557028 279672158 1001716624 589767829 757516470 494542895 691142302 728680396 375495877 308108427 571667551 1023772846 695029350 63082596 469388514 290985531 392079493 359389998 746042402 428390884 66986336 765996397 779621432 650803541 201918800 165833506 798472684 852143646 1058481857 1042327761 889253330 288677904 587383175 519318229 861404237 423896766 633550574 336088801 657314326 906342140 880339445 284722680 357059005 511241413 934869541 367291209 989274073 456846828 979270233 810510882 15724216 523460657 1045587102 933962773 653401667 498222832 474091256 853168466 649394421 55669975 610584234 1056576082 786942560 62011977 203146011 505670962 331439343 51904195 136832211 626808378 379774351 730106022 263927523 609519749 296414470 486429196 1025534267 1037476852 626028778 731054907 306824748 598387002 164039320 449737711 667190378 68124651 463215893 431551630 789190264 881792985 110817157 621250909 361747988 722452050 803188621 287742813 22807572 316449555 785397669 515344510 633646649 614144609 684135775 270594211 192860283 586334332 498833251 485835326 891586304 80660319 23968291 920336342 243791254 260309613 554454535 1052156902 674463280 16779406 549160603 701683600 460736144 127087618 164023801 240571505 1018440410 934633834 501917989 101876071 380305868 741062844 398233756 454877278 854820277 514733674 970519306 91380835 953920035 287928290 621512968 1065552210 245519688 230792970 497316107 503139038 121624856 836095213 626623727 679370999 320856102 681267484 646226435 979407094 117556248 256262623 235800201 580225978 819842783 592030018 771546124 554045317 865354807 500391552 815706559 494779314 201943557 205733129 282013314 421944073 826054790 515933225 931125495 971397942 972957282 770140592 17193107 371893032 265313065 834625529 734815153 891994882 208347380 323860905 515154080 526299321 522639673 876687465 196047854 826743132 775302282 1023167850 520320681 445118146 816933368 243863802 201061600 193914141 417018049 550140636 109545011 602623655 20253206 484016077 615685292 847855071 751840447 813421061 730196429 619972204 366962425 724152895 487920648 111967282 976694726 279895101 612782666 549757141 289464674 737457554 488244462 565217722 163492165 316877961 367504551 662967631 177385979 416812401 342684133 273370074 583027820 518994964 571367352 1047435039 868136382 806681240 65860103 602571741 834773986 577615963 94343316 469775350 800401494 597536823 79790879 923552353 913984502 262221915 632115989 437738591 306998832 4867362 919413017 545131623 680417578 666804329 761351760 925621264 159820511 580487599 74693134 761672791 464519829 291559687 985624104 872289487 343800181 77535228 652445616 181004045 470664681 438164554 657681498 63376966 976439141 366220902 244303052 12956071 1872076 873709341 4122313 589863371 36737472 692063546 815514531 1072563379 881812659 933272795 748839370 758711539 801464710 178969599 493911792 498838907 580104867 151951761 111658177 644519300 1071231028 174401702 63592062 541648832 917263644 466303483 232122654 303044282 1029832708 215506152 465319089 525647013 600776015 989060520 113983124 1007425183 272472329 1184744 374803469 227922673 517304011 516666499 21998241 1011004392 679427794 253701542 25622501 50037037 281542340 1070736948 193638514 710340626 575445104 631391655 809395420 207249671 968540202 582017782 575600112 295166920 746025882 883351903 680667286 219837148 29524431 886327002 997317805 202955572 966805128 741937264 728077011 839090059 531019226 455352389 990904810 772172948 438652947 619371939 1001538080 218665166 153211027 302068233 862830713 199859124 612430858 30708384 404352586 855107051 193340046 524221006 696794473 892250643 244078070 731660222 36904106 1073629166 288918790 1017573077 387733183 1037262241 474332599 293837137 784755902 1001109557 956437055 152293681 708810105 131972195 749867208 164899039 692285131 865197152 855754070 1049757491 405787061 357061431 115047555 636824820 1036369535 718425283 266802121 18423473 920038867 145304868 441938538 864938195 291633657 527736569 608471994 732971866 569449848 510499697 799657886 203096638 946215813 60883299 675227948 437463008 619174442 872629229 580903992 134076628 307739473 393261359 614810479 13699899 478562239 1046688594 183227387 917840719 371450230 256532475 111925795 55266389 438987968 758269532 660646521 432233236 586078445 411875702 523789376 865973131 441904594 944340422 383751916 148230219 37391211 230803245 291675412 821671684 406707840 441694682 913012149 722186254 546536895 774391679 221702547 523875748 974956578 785633183 611395364 737890998 960693320 546584583 747878572 479877773 615447313 505833975 420998302 582679116 282340466 431380384 60937188 355480085 811389047 665603332 583561047 536459214 731258700 350805069 497978182 443398889 147515967 915414529 2681088 167133377 277193895 747280861 188773895 761965206 468628823 821748202 210979813 136227782 36490258 1005058008 312604356 1048311015 141544672 648846003 889335948 103441869 155708426 1017170987 987963244 26068036 794329980 516394094 30132898 53943227 384582340 266337777 898367916 832395225 976428742 232576253 1025227058 918433067 89492959 655043542 703026225 730563133 793607491 838975836 288554224 667394534 562812364 77626473 270425103 7488732 112180884 92869222 980503802 253793458 797614526 960520169 794924530 70893780 247944594 968524782 169899082 472668140 948997364 556479526 104054572 68783791 242810665 641013078 420967193 393715812 210227461 513414898 894847530 247699974 119648851 530436780 960749610 893848056 1000823649 124961911 355683211 182755701 277575196 908385120 306839887 322588822 67799408 1045949997 634942389 845022527 678307445 2496580 1017919007 457392716 105923688 985050771 4208693 734499515 668216571 517134831 237645619 247680201 1043256969 391842455 421226757 838690534 359497607 531603543 66684083 973885570 832566106 726146692 503973136 618754056 850384922 187404773 722281577 377761888 98308077 617025598 401902555 419799237 294164256 72551641 423082910 445253530 23210453 772925566 179833303 77438125 472948891 791247526 667324354 296739002 834386392 3017289 613869796 820442587 88778610 553357378 909256228 236196067 944545850 585008754 951341198 878821904 784787577 2298972 302757855 900696307 1052925170 862570138 433314030 284222118 345195177 303242689 494801077 940587837 329350647 482747947 896318539 291156932 434184407 804151873 381594515 380227158 558722351 95400555 798488063 232247056 474012384 1005936034 493498104 80914316 475012330 496809686 47817608 7892427 652117410 334108626 103104922 257450658 593558413 819642216 578311465 872026964 320489487 494030023 369550110 1044091374 181392042 982305055 669212830 51911345 317601095 983911376 249219028 344399869 561655516 569981622 492666420 575954115 147168376 331089303 147818379 66896070 810731308 67077502 355382711 876786052 414914412 1013519340 156031463 676926275 66186723 669683292 293140248 787878553 617726090 892669847 3963790 949700738 512304564 1031633537 657237963 225387789 34996015 223616069 806548638 326318805 905458549 1007360967 1053857086 803655636 741503123 62423446 836125606 730009101 1059838066 490699637 626443230 258278269 405192912 802792395 702013068 530422628 898993620 244119515 1025520620 969804253 442827005 880806356 552684841 292949889 446339818 280973707 205381711 290192755 361040677 19675871 659444107 870491808 745263333 14745104 1014970620 884048780 603627642 912840134 885196316 156932402 701971819 193874086 722492864 955426479 551849995 650166939 984998868 312192352 550392697 879673769 324675150 517327991 800078730 725808866 76153454 449019892 798389374 891930840 742620824 264249873 866657140 573504082 436561748 1035631429 401294087 927805405 969243943 391182147 397426157 34033264 910607218 509037033 413455757 949326619 406334221 491130962 1043747028 505187451 937943693 696133789 645618241 963904289 813762820 167367476 593701506 181769504 1053460902 160969694 238133092 192912887 346827427 186089296 707169444 554352155 268323388 399112511 56877 191486454 837973706 188528201 711995448 803248067 579578615 904236615 754620454 292115156 353522285 660216847 531479516 665737697 42373999 624796145 511214892 967143144 30632608 458930903 1043819260 1002361732 608743657 853794058 928042999 100044905 1039325771 505719248 789104274 976210519 660463637 622594420 919664918 914868311 842955799 165691419 542947925 74803991 732528591 731721507 561459384 946340725 755250477 437676867 745567708 165752662 691006690 548699080 220452778 971540553 666380195 65817382 885684050 637872801 454515793 548885692 366579904 896549231 357234699 516221463 925032187 23520996 149845489 291362253 1062547676 340466186 496657473 449860087 776175295 280430374 72029853 825640408 519419324 315503495 248710589 1000387986 664714201 66711695 980620511 891017466 233011621 31661111 723341948 92534340 572409507 700927665 728975451 316605770 532150777 905744565 111238284 24679134 269579457 547790811 736550247 913832436 870017318 680862000 229770972 231524242 736677296 987093250 452643677 680021931 101687119 322974112 440453728 656708290 350797877 520740677 741510770 246536282 127733083 729337097 829342935 1029313229 1057700873 449398647 825406037 293039541 1034937960 179769351 317986765 472973085 214500737 14300808 741828822 174427742 243848506 867858874 1026383304 895231439 102244013 173974252 304241219 754714430 915499270 917105126 417720910 1021013141 733626040 931265311 474725780 1008483116 956443364 657719372 828072295 665476131 428363289 896018911 828276446 783574512 91746497 584039300 495251344 836484827 408380215 957290512 675966330 575574942 190379005 542529506 59857979 804253004 472212602 805761728 267556819 778014836 93345679 922971863 68616727 678773958 240170795 535922887 847410557 748245792 876020944 509878431 20055516 515947163 263131358 594433766 444181556 594684622 565698726 227165001 913588809 838557554 877790522 894733959 555117944 876258691 962041044 596429536 585885245 488244085 202416194 84158020 251493344 511654411 548094660 741958112 440437092 22317338 883015342 19706282 94338115 935091193 696688045 291895204 482578827 379899883 606604134 680395167 16577667 162462646 70738163 626458123 200840239 864822362 575108716 421999036 714243195 6305941 111677187 919810592 316592545 772451167 779291861 133067045 1064252897 4470651 553888668 434440335 280563330 964409535 896870341 543221262 571259791 489420191 871652046 95572947 35057404 602582311 129568840 921772778 91440990 883191925 528856814 557684256 1047839822 541680900 644592150 612743364 648668435 263933655 95664680 499670135 56970348 980525983 1000018568 211194130 48708853 456794126 678876537 320787206 117800840 793285664 27245773 363250786 825894910 245598677 224370705 319619109 315374707 788508733 237972973 169984139 66060375 399411661 1017954648 331610306 154155592 346974080 930408945 363453214 53281836 832016901 178219758 313322645 775613082 415452969 905289216 564756959 38699976 251803259 747621505 303491854 347506353 691769097 1011478692 205484963 226500212 1048014048 296001349 1044350885 974625023 525750940 445680723 473128645 1059255388 589850338 935392720 363976895 566633056 701444120 5790304 480160391 983891786 855484485 23315225 376550058 757702914 109783559 772880942 708873018 532227814 504446001 1069917797 878602385 621372932 765983474 898159063 97091306 140935264 811992387 824194455 122925502 207926946 689097954 998979835 855067181 261132084 216128820 430363694 725455554 491410634 780792414 861135790 101130962 1059708708 333564021 519331727 418193653 946635075 907167023 920701822 169217589 42291482 338743119 294398270 639567884 214436503 903764718 855688659 9876622 93781626 1036016404 226237816 843628473 441514868 852214505 566931750 287178827 147953625 1059852822 388827643 715518785 314286117 787729471 548735534 806439993 208107722 421121551 894494203 521761005 411014118 289337443 828502411 585216175 555699102 880825261 799713812 317993106 629689476 755284319 30202377 645946046 741982571 940583768 889006246 535094407 822028053 205247951 664039997 740923372 890525470 55913230 388938143 692834499 519397445 892188362 954485989 883187592 697626251 740261670 295848029 970304875 411432158 587251346 22274691 373975436 106234666 238614382 929017949 483938791 772928197 159964711 1012609852 1066340174 871048093 612274176 448735871 635150752 713608471 568637927 574674225 630851609 1025727913 281634376 967929488 188356947 789144297 993690820 981493460 318073296 605558833 503788943 1000817676 137158907 522242600 121868989 629793572 552551624 620952897 314374153 880186924 602238571 449179154 943125958 440547979 607530701 520145887 436373910 371177985 607765295 808272300 627713441 212652601 364905098 482380515 899450414 11323015 914103570 389475945 132925164 680663039 510928935 583120222 404756830 390429339 600737777 779695616 471416116 683691994 459011676 458421463 909722350 908948290 504864362 428344747 998694507 531093894 934671607 658077984 713807883 325530580 237449642 97041460 163465503 1072490691 266338998 840852539 394053653 262818649 583157621 116468650 945901818 727421133 870197611 424916261 227582965 854661147 306112715 568693643 952798596 116719342 47833408 196515028 158240029 345909613 589714594 41564958 357712465 612003101 1019739856 1019030094 186178935 22959771 274519654 229589328 679581409 720118127 518939208 130975164 397404864 104654971 1002000991 535958996 539446581 859458115 449157276 974147484 106769083 15516055 159519139 95735810 274521444 591046802 453264243 475153181 382508109 668216205 93274571 468942027 548487912 823261624 732454784 1026045389 457500923 678985168 454020923 103265009 408002523 249640382 1044072897 600838896 60610323 314983217 978135265 449134022 907766410 273862286 668274643 910869727 757355430 675957544 551440309 585740758 190752436 1010324457 872159537 623701090 1057279432 763567195 828957989 24344573 147175315 114514529 185855723 1052977276 155929117 903634569 688794757 886433146 723500498 524668866 509560134 458884545 477322906 375143750 51497944 613275439 14874052 40097500 637519726 409451961 677213851 998746656 24967214 878000073 784329757 670534942 352149212 40034888 134294407 551615883 688247884 241259469 6673619 227127825 228801055 404560159 1032227855 532598565 29717087 575046620 161564401 679010605 445981173 235234973 312324307 558675138 82989025 192445881 953100556 533264198 839367086 395732283 977368167 960277742 735392563 205102141 352167922 987928915 233047657 147675272 896709512 406049482 525804177 425098217 383399894 1002220912 847452464 132738212 493925477 460845499 687739652 747793258 488382452 512255283 504052693 113559199 856287539 415674347 544399083 839860490 626509545 155946056 295414043 688297387 88052570 699394143 673177462 648462649 900931547 1059779754 330228033 391804067 139341710 876271334 302635119 337408800 224345503 177218922 322588056 227271446 676697768 606130742 819867851 291343810 781758629 136350700 417920584 390446546 492384838 836198519 254529373 776977957 81140150 910246951 242894905 883643041 207192465 774046743 315972454 367105534 991963842 551340087 511924797 286923912 420988135 91641920 189751122 115443608 692938986 612124457 995813824 49057063 648381564 393522189 491750439 12968120 18101183 355473860 746091947 306827780 332969880 308803133 311828081 234861570 983341713 72359600 874809314 46409368 424285495 424777027 592829634 334357719 245344759 916000832 696256766 455551915 875215834 476909802 589430299 123518665 999788788 358401363 612935757 636625976 895257608 1048697307 108742094 87737507 721251572 235397037 725401025 130559489 1048666983 602042703 423418921 396453376 110694923 607751362 665604016 444273623 76261775 508286223 206063024 940334475 300070841 591349774 48551856 450707338 484158934 666084839 783445901 86474739 183081587 419032205 588307271 684079937 1055667696 907977318 180499530 83176526 942543932 869637983 184962444 506560160 20303694 938948457 370743819 1006020612 1017946358 174905414 11054513 47497898 690873901 660301825 13092740 244562668 495190689 1049711898 220589376 494745109 1031667951 829651927 307581782 661578100 180807647 173261664 743373838 342208397 165434530 339918092 223943305 456785338 795711654 74449002 84014898 367600053 510397597 749835000 169204584 471841844 686121531 1001639280 522228500 396010323 358809256 970791866 459097352 960073683 174965006 301364946 472626634 141964131 567860744 226210834 316376076 989235284 147888025 1040553750 797199065 643334746 656443597 122102380 203589353 529104608 732196485 771708478 34629014 562154828 860137788 345752943 468818148 33865685 1048354882 637517209 252161552 677579069 1059057016 434151482 550384867 523011568 298375746 39175834 448838274 1015118081 264041121 1009183516 360059661 73337928 839807953 368093594 299054246 835442382 306768815 448067535 481522746 156750559 117612275 640377240 62713255 215587013 357472576 804293675 99442275 61262755 531331685 90310696 189980309 805840002 60673662 716687857 527209553 522138993 544203836 1014625054 914525957 361540537 846442951 885714899 5989457 371184399 522691895 15118030 964930404 196764422 790642448 252656026 572024874 90603272 821414381 188760804 978065627 74324983 96083513 435732203 89031420 879993823 3269527 844533270 747156766 276593234 592149137 860457312 703460767 459338891 610364398 395226244 520710078 769823302 112935148 861413040 270910911 111314015 147317543 411564082 761551034 94655183 600343158 161892022 802605405 1011229460 904672862 495437520 896829954 891984728 975815656 757838670 714273441 1016397732 120399143 718920956 689037095 894334602 10310668 196037173 663892800 763034200 319603368 597624538 411286644 569326463 702175873 13400217 225670272 616212850 203846997 340607867 524730090 1059572124 13573484 20162900 565247156 598219458 325572019 325995251 669262521 784849051 1062900276 1027044054 925329336 398099589 883140884 1033225494 737422520 543432886 361385709 254334532 165769697 179007032 578917271 282086304 238828755 760224889 1030868405 66176083 926854343 516984565 470292234 725908684 249306292 412164281 797254439 107566782 882922886 54676397 33555912 280778460 461003777 436995552 452186841 381623221 29248160 831264095 268972233 753618762 658611019 506177001 912002006 829247327 660218158 924113539 1011729672 1023154153 306101224 1044755646 163124186 204524605 934601769 12589584 972372714 938362474 98598370 965417308 950686166 115318789 844398622 425028347 192978647 103098745 977843145 997196435 583409776 297340180 680233501 630013191 873201890 1051256867 725483311 630890489 464539432 1062317841 95488323 475946602 172177917 233628217 814809579 1036903387 662295599 157514294 425902531 634709356 51997666 561276209 276839024 34244376 308813149 727014359 660796660 489198777 259804273 1072596305 664254405 898309757 763962025 244294826 610436471 735116798 761697149 899813520 583298024 601517488 44832748 545291731 914286905 275293832 376648213 445864683 431920861 709344775 944758024 509347313 466254195 300869292 29209831 368934784 781765406 302901578 555254037 856748935 954054678 152106064 60604768 539396458 736337489 154490780 304548239 571372124 125484251 844629922 636176280 272389320 848992729 73900736 416964496 305296638 840996585 512391315 52903433 796817072 674692775 631609755 298149178 580225488 573552250 898336584 262149894 805996793 604164672 275924888 478505701 238275002 478399091 987302871 729441836 432114439 417335367 21292656 291550491 1050843367 915376815 627116463 1050398018 746118515 759730723 249738953 716058734 734529958 1044833219 910957746 1072825012 164141855 820309773 676353335 473417616 387811235 105190283 552856784 261419429 5191857 311251594 373886784 58417225 982806933 453338800 110017502 406319278 724374472 961066817 945066941 615468982 1029363471 764863804 350419992 351380900 907726086 708367230 303570973 969641373 123722522 316458384 914673181 697585832 980400410 551979103 767374286 716746563 174307317 73298632 678401800 40265276 785415787 714039419 525923311 639789421 629862106 339086590 581296837 543610418 524033922 984469797 218200446 165082338 320932935 728277584 445530528 686486121 547086112 1048017730 607430452 963934913 669951469 729968762 488222561 28997001 944638114 17279000 538495904 474346975 194338615 967277938 679893092 1063500101 301172252 1072705039 626938219 251656098 306199531 447097466 873049967 320681104 293740879 948938758 992617283 1032429146 939167285 491390009 155636499 441422912 299596336 226890705 862380709 1027618165 943805406 189711108 550431358 718406971 899293750 1031573717 349435255 687081699 471222380 619470039 221950823 1069695209 511735683 633617454 218388429 704827441 874645795 174792269 535648769 50606278 428306720 576387687 375893670 865064768 915392008 315111683 360686750 905801704 663619348 4417721 474125597 1072071411 437825947 252493387 828638628 592139567 160054340 982630222 757569164 954576278 11947691 654836206 904638565 43240629 415778903 738145043 312566726 847519191 1004897873 301720492 535712279 293817744 190156604 412413964 635562554 1000307625 897322585 194046872 521788939 956159155 1041843984 578165437 765792851 916058817 397961193 511830876 114068277 77126773 517829210 844484388 363223322 879161191 529151067 275026438 105212889 300410804 543125079 746163292 1020348157 313079498 237418680 491398136 1036031526 911776453 63528829 637474142 274618771 588180062 380732135 250158459 537360923 539742462 226248913 741260467 1071174334 689696539 588431617 190770792 410332436 873038950 803903219 819795325 669973916 376178854 932813924 1014993667 877778470 961805473 404937390 235711935 189581007 551845195 406357879 484816827 952229790 633842134 83345235 653883164 833903237 852372254 394800260 307706395 37636070 280623699 699043457 940900672 457235435 669063050 260102603 893551031 221881772 538254133 96782534 664612381 1002169477 963440285 331815878 28674520 98006572 435576271 824581708 179162097 344038660 930803200 271972693 4084843 701568561 946762841 817246410 286429317 576407063 553349162 1040567522 94785758 238934838 1073159119 865842812 883295715 353329838 970241047 997764881 954523739 711373903 350775632 201866995 266172381 268205779 1042963747 115224629 889539982 62050525 746975504 717329568 815254043 106986876 594579640 743526262 483051741 812678713 262000176 774619759 707960599 555919561 373908570 978430619 653572550 258435467 584450210 455350941 531817975 417529091 253071309 258693592 604884880 367748888 834158721 1028779925 551001175 62522616 961815644 711202166 182573303 724519972 526303657 427960373 11060325 1009932393 192785483 314486449 246928431 132064274 563949657 940270465 519152238 492751663 564369539 869033099 262782823 318466418 65992537 849466381 985199720 131952548 99426691 136248661 85831384 733015213 83667457 1032384556 977727512 517015965 756179746 547413678 414725335 438404344 1023114822 169334241 488046494 866940413 199145957 924766098 339533534 857617742 837494806 134039297 1067375663 318810642 982299594 599221524 140341495 959679284 922913080 503989000 848441977 663563976 688232805 492131191 952860266 603781966 159843701 239939533 997596841 748182706 273919129 1014472523 678663470 20799079 1049448845 371246742 1072015014 164499980 479314605 239600873 885689173 873507633 371292944 23499515 471243700 245446599 1037314988 623252531 820738942 894094113 430477143 404341178 1014038855 264251474 708312101 578757097 55376561 800519952 361972329 558270683 253763352 801115208 472489663 720289535 794209733 310694258 748831954 113330097 185039245 1033407994 284318199 330229083 33165740 239869352 874729112 211648643 182374510 102814504 401261142 978777951 234244466 89396835 19482938 4452160 593418782 478801606 743295216 716004951 1019312216 782223178 362452329 777352165 191959982 649426536 503465899 940498809 413057648 137072241 982771203 1005510004 487572143 44494699 466064474 731003066 496546537 895271280 911159750 495843291 312228057 29370542 418806612 190664891 318234633 713459986 295703610 1031809795 967543355 1036593344 761222432 222729514 100639250 661581100 1061848463 1023282792 75708725 510902047 450183071 774617162 398002194 201181813 627517191 916831036 866397367 565624136 861370135 685225203 511692976 935587541 598714907 1072550705 733404782 1048332025 1044408098 822230871 570907344 97029632 869254796 536831211 978157382 314480126 1058499247 856348205 425827147 13019863 328836450 499913502 711880124 197861512 422629362 293832301 371553035 902949530 1072793718 519355661 290577716 174664651 1028867220 361575491 97486644 319900351 626893100 712002448 596676948 211438347 147417151 837028178 34219283 907626007 6442383 1055619790 283863799 667463963 720357942 32435797 399459231 67730211 19520000 357944075 915813040 351465649 1006859644 37295011 110654416 769161183 468540898 43857944 895892219 867174914 611603224 785317321 3660244 728506331 311636857 964166763 837427385 812153822 412891585 552992850 983235202 1025332812 658551164 975253821 803952265 985553388 386629110 993823151 500302332 566791277 299185234 15790243 112501043 681600915 364912296 923592205 705035533 144451427 224145535 497493774 966941417 29139908 506479363 667847291 161785350 292284108 809909011 565865092 791744588 195952986 804986977 354623792 551029471 362386713 197130331 588048669 888066437 626747445 1009706080 637129121 293133663 1010742680 816597224 214367053 303561966 212106972 851559121 616821716 734797967 324628040 840634497 32929778 959471608 437813273 300540797 322880930 410654939 302696059 941068747 982517204 38635405 927699375 627112770 70360741 52067228 316356904 869860737 314276664 646156915 588438393 795585645 721466962 96537952 427763692 599175792 739300443 71416799 810370047 210234942 877681010 1011359971 190704416 809304109 795822145 561131045 136279181 659762701 1011750518 135345434 1043248054 494401835 779085523 592118890 310121811 783865896 563945697 815647411 425601275 123115804 363343377 103157734 914995689 644784129 277623458 909993525 194185028 379347160 336292515 439251920 996741001 952648734 559069258 549582391 1009216540 381009063 1040795247 645650904 87559708 871817588 708778962 1049169598 1006346001 1009701767 25355468 443671497 732184362 819688808 630007504 510679241 312573585 156223714 18821837 587775789 286361718 145873843 998167095 488616833 293011997 108674513 777571340 235808809 648921279 125814703 584935143 479308084 486402846 244570823 205133487 657763689 727060949 884730032 752772438 53401055 838396269 739215295 673686056 662047259 283428030 486839344 781079999 165627425 651719962 541157895 940240264 744446489 382433971 545019828 1061436429 345873920 867258815 243959946 505576843 561515390 800285924 632452070 953529031 312368732 876883188 598844642 863532596 800520543 310400856 65075917 271848836 475167057 831159879 767116420 653574013 510727380 254033373 285363658 131751106 814131994 922652238 787511030 774333431 195927390 345762185 1066518423 132794750 555747436 531668482 529954649 135719265 735013421 169147774 650974490 819303658 469927807 556140062 584072416 525893350 413861303 407758061 47143328 902718997 906582210 1033678028 640390305 511500785 767261838 624417125 554916176 197579894 783345063 319843384 494668800 520587601 965246942 887072784 556528027 426654945 318216058 765673206 709487652 442450969 173469499 983720538 293505313 978044306 603860880 194738040 53919546 21070782 247639161 919924028 1027809814 705937227 276655079 345928529 73622310 849775950 1012361896 96524397 849233043 503407901 1035067019 1068961508 419692825 95792455 874996706 1005188478 83718457 3813783 105789819 212105131 332314779 729737452 690186863 225903842 610082252 626154349 183322707 890947343 343693628 25821856 915739535 910835977 1062880747 39425407 12243285 353777600 752630780 606567451 672850844 665376746 803159316 44088266 128846173 139272545 74190003 240803216 192784141 114219823 604596328 309246571 837732707 430518494 145690620 813383503 771462025 556242720 379986487 238396709 388712096 946785098 208619352 1045526183 137510516 615967572 437772906 891829296 930166807 1072093386 99009749 774685722 924871666 673879327 702830760 578588093 78282856 426541398 603725129 209270535 793908536 55738066 365612693 604227903 673343793 616760763 102002743 422937221 320707365 152775489 165062983 335798450 948940108 781859537 390206433 796073724 715587850 1004046239 830059334 437044406 749782565 963721874 454860912 208122384 730246808 41107204 37090512 703732750 500635374 671661926 451712850 356662826 462836670 912036372 805992923 574751688 1022262091 323512022 51538350 356862024 788521117 897881066 142516624 579085654 969993817 1021345137 844790220 449045167 279731159 281865254 871285001 157643910 869581734 403268585 27999065 835646996 133360596 108878407 138249179 583319618 675197631 388079572 981506758 544898319 604802893 299119656 620640442 190855191 306204001 362924540 267926465 199928422 347086915 913644688 725897982 290691666 697419962 987134604 41423182 343913383 365148862 528821635 794401429 912265927 84085946 549265557 542768424 394907283 1038628891 829910660 847599666 575154612 755656782 271575837 259925065 416710225 340148777 872436897 1003082470 108321474 520928728 882293010 24019410 958925000 19902398 659917007 555289534 854017287 477308027 1012382386 11748852 581418426 379998763 425365458 91937407 714123061 517298371 77158031 979494097 615074160 679937888 956238882 80072486 38650296 581432709 858621098 333659328 677996542 596361747 972116213 388978342 551624373 1035222016 293745039 947385846 929522020 214368938 984458273 806376967 822820380 26881679 159616208 620537553 278163975 618535994 864668241 677970031 877938637 472696508 741915628 197195098 443118346 998443048 982050102 348992148 841302878 1019549127 676592637 574946334 672661525 639291073 1002274050 1003542070 790131156 577031938 1031426720 936344712 962038193 276655247 65382693 59537735 402292444 968918884 143894135 761082582 1015350191 79638148 8755409 1040429068 239386989 443217719 986036921 404960249 991578916 49324537 690267557 233829766 889267907 11842306 296980380 878045602 720572046 478230209 971309252 555538542 341356883 834536642 334606044 526141259 1003501489 806500863 98932024 108787115 164927674 584587878 807548831 204859332 255667087 542036635 655177707 233378390 325859909 391331300 602180362 335571361 516822608 593972187 236736670 898728709 624162440 728791964 570970700 253202653 412253451 218535870 25901077 50166469 352334699 573944603 889747135 459458528 227099242 1049871326 207897282 398284284 304943987 910425870 1021091450 486004229 711345244 1013394070 519849049 67002026 312575458 440254167 854300434 584478340 44288560 315768647 692730488 196101329 878484031 264872431 968866775 475870543 614732128 198543931 359029778 533767214 815153933 395111213 78840810 751621791 152843983 395839636 718987464 687802339 54607896 355141387 412927491 908496884 1000899313 705792907 400479115 201399080 927230491 550147447 211335649 9436049 921953639 1038788197 121313507 885898674 361414147 127086120 542763582 931862030 1010751756 433320269 902596661 1019059971 583319841 821442240 112884869 430178702 1046281477 568092177 855787390 804192626 491540750 997849350 448856537 491965416 125319625 244288635 162179728 1795390 22791102 1015029773 479443574 73607544 271996584 773762770 415931794 948033252 316849741 959735590 793524614 254484205 460124853 273905799 437433703 350637035 47496104 249046604 401754713 1051424656 729857307 395148364 485042526 63471422 925535321 1024582755 239240544 111923897 969455896 930893961 238228675 650769148 741898332 393876593 368880735 878103466 659361202 719074964 499110518 323673528 288654098 447466394 33092696 202033100 430235327 372372608 633992955 652780234 359731599 1050340883 787544404 172128503 299140805 753490681 226430857 754095943 469062057 476627213 275875812 966461171 237583610 1055207303 706561680 509335231 384602782 303293420 425694764 878314083 785789271 607156314 497697039 598323979 398603714 110314411 838617227 399795711 688859323 322122018 778418874 311668247 795618673 187602218 640501280 493249709 414760091 870760371 1065839419 520494422 236064094 867748886 185953653 834321553 97276976 1056646024 1040344268 263856402 13689136 352327520 529192337 753158935 431201068 64134487 212428175 939254337 457862310 445327606 891235631 878498066 1001934034 1893692 705745543 462170221 295088682 698455874 916409770 12240173 334078893 72096976 515564685 846304002 147599456 204858384 392222933 403146667 469734552 648480101 938325999 60531120 392829985 486922027 188525526 40033227 417553599 1072730311 37152326 211537039 965025387 596043176 762327500 909422841 914152175 735453401 846684794 79666528 439680504 557380514 236996062 132228019 495922198 573222678 781868870 2890847 994607345 120227845 452057014 816127302 1063166908 295953109 467090024 446549692 567550233 285558812 207908794 976779925 91801060 581478054 765603678 326700063 126992698 1056669206 232233087 499630718 554150519 345438755 761170293 312451896 25205678 575888623 307663498 704810696 808647014 377001314 386924202 510267560 651977818 995979553 461165268 148103635 779482628 257262500 29375092 887970048 1041797035 432962234 877339236 691833095 555077389 184937673 12007355 688491716 755021104 791660701 537740026 293958362 401775052 749435423 58258395 124749321 1057047161 983701611 486808488 72034437 976166806 559519561 98524776 834511276 1058875782 472685193 743625586 855183771 632996216 17407224 530226832 467643805 261199007 140916492 234480991 162915266 1003379721 746755099 721454717 806669938 943953632 549313330 723428842 254796745 616164849 295308295 721522756 150833796 544036196 24764628 269513929 945773003 312794349 287793154 133910782 378522694 368889187 416620487 465508861 936661107 433487943 197004687 625896307 92020203 1063083237 51171471 612941384 976603318 140189592 1068441350 868999954 313061255 781710736 652449447 287131198 382002941 650103226 723492588 594423387 172079024 134661616 566022790 693035798 560898561 273179160 985930569 283850108 1000622568 460674645 924650664 416063116 240122596 376966512 402089051 967727417 298779929 722580276 980134293 472709323 357556158 684031074 578194738 738498731 436104697 744144023 67931372 841988201 502974389 816427867 147317161 65718759 157101570 1059063761 851188309 878429763 428772209 111684470 947404333 677732791 158003838 155443611 1030037047 923856330 979686431 978080301 153211867 465827806 1054277851 750573797 289560155 988813465 556675387 309348733 598473224 431986664 992057379 308319212 883371639 504508259 118101060 940862912 576665099 1020037818 809755222 1070676857 775115480 70498729 584655901 745762616 948677281 619353093 672019037 683004243 59353155 151681594 711834485 345860997 1073372498 513600129 204076979 331753013 1066798531 945193462 479919665 966437773 651961787 474330023 188868286 765219400 1061025554 13440581 696144504 839602453 364711605 45862675 470135886 2974892 215117876 186200626 122790800 564331648 456754742 599362077 546771801 1010042251 272175824 733131001 696119972 748247806 649290394 762492643 727096811 707420637 7790570 914451366 613970724 580390156 371174130 500636713 278361054 112207021 149466898 944050728 346646010 886097193 48262113 233483206 420973006 730686760 496246586 85087044 392734700 734421048 173280964 616981360 365420984 511824040 267878927 1061981706 721796988 111334370 1019431641 786562615 343425608 986243324 745023045 1003070767 230290800 190679526 542501342 748380864 1040018392 225291664 344874052 663106491 728574530 560883964 730140106 886363726 369394441 1066288253 891983851 31566078 677776623 346277131 401104765 419297425 822100698 769561740 764558713 151664013 342394041 536108581 471682823 239374592 536507036 489139319 1041162098 389250145 265459939 1023802585 324124032 471529130 746741733 916412312 340672436 432603362 94315190 331585051 70680889 137709367 575889191 694495155 7330510 311328943 624302008 194971227 766215005 325714357 759321805 153979705 268503766 38858838 173274755 662282959 348491207 559686048 524695754 968404147 380130901 899678014 82771337 568302881 598769962 946271680 354460999 760194934 146563990 374094382 55999399 124701537 421633145 536653893 809750297 691820672 80806610 582454887 56885403 1013570561 227204019 857309152 925354768 285767199 814247084 471466622 60891963 783826723 771761731 460971485 359599847 857136919 594938511 936894115 477297438 765651162 495689632 773888861 118024630 939387002 264224156 327862096 439074937 844850701 487218166 904051575 763765871 958365861 473191337 443457964 926588948 333134781 830679257 956208237 260851709 996926235 645059685 578046551 597628363 831062051 276025403 400487516 795835250 662011335 649586527 452825663 337217802 396734431 161587106 954258225 248358636 258180965 267551117 52457631 37065865 714078298 927361175 238218336 928334295 380369162 126993337 482993022 782521464 466392622 794907674 191444861 495081378 205699533 544521404 35506839 198343308 937920365 861861640 629965346 565132847 781301119 545584484 374432137 972145038 764810234 612918478 721524587 239855999 729580225 296016333 823954197 781954982 816939620 72346443 33762241 1058277061 460264131 283884230 1017171390 416888302 64774168 241038485 961229878 254244755 692613934 52949278 528021270 497966062 885381953 137882555 216647061 595248268 839757211 436064053 193548143 698048794 355107324 623786192 248171494 318633323 792605748 320387884 788600133 442929025 639237490 240361602 432220030 66471494 348540924 714825859 99879670 130778651 462941186 1000184119 728541389 181725254 599496488 497658193 14494525 91439665 650541690 541261098 157289660 688308103 569983306 677569655 362415455 194614391 706356540 874206635 1009229955 859472726 597631149 997541121 133807586 951673200 930309888 108764769 968996124 585054459 618876324 220103820 253108578 301112738 646366545 864026055 354189430 490450624 291914036 224562917 510933056 307896164 423640729 483657038 97104907 801932306 785679213 81295555 258568105 129331131 343813455 203022832 467693776 721078156 821159505 513319366 872976605 134962053 1009623683 701687711 784894615 432936554 93184211 889267045 816154960 278439053 699200805 1060605169 784339189 598216831 706863352 505987325 752194527 1025471531 898335331 199595960 491462446 902512438 378266502 604392803 285436611 18037427 576952562 779460843 1048326934 710282926 526585120 852441568 839691155 310366843 166004121 578984363 301532160 599505894 1029368085 338885261 752424570 539390260 307233251 239403531 928628825 305824461 675338491 242288588 1060826725 1049615312 1028763237 634639647 324748848 570247639 912200083 994100199 289809692 546297098 1065767730 127639059 96449922 668741404 312169960 53853662 237185337 394131481 151835668 577005139 443216016 548419642 992389208 365078915 268802774 591258142 383965393 963441963 493646439 70142247 988286695 11271794 639038307 286845805 4869069 792711748 467766947 24552694 513424711 197741922 717392910 706005799 885997343 236542004 151688548 481239628 550863448 731498552 20022198 881555624 806793802 243442409 719140078 264307709 968255271 23291127 134429279 165179337 86646529 1037827121 654276380 388065898 469702315 289768241 1039205147 352657093 412109830 448393469 368339338 918006956 844037715 780143790 471621959 97198686 724590005 920931952 998095830 986613496 1002615989 142492323 324128442 204356489 584168458 120001193 653476305 3373136 103057397 619784422 165356976 131556457 927321657 8724766 327778315 1018998008 755793336 712029862 363267118 137937960 908394932 1060849636 360646179 1058879771 936757776 947360950 542512588 377263627 117914918 958606090 21502173 908905053 769553453 915976417 1019754804 697588901 597720943 228936791 770295239 784196278 860622157 272558851 369752238 495454096 331551338 348983190 718914646 1061698941 686207783 859031422 753471944 524825899 268104085 872309671 833733948 1064273375 357698107 963863470 815757421 162384703 651754238 112697636 515187870 190888766 627687726 833529928 354570337 760013872 188818414 791278500 279942509 261309617 735768111 312835696 52226212 1013723922 168189548 393524680 543216210 1003029770 182193682 639302619 775309493 894362948 207032029 808342980 960311935 591368094 585545190 350513376 374686025 654194802 62154228 615518654 716410634 665157295 539610217 921268381 368730535 814938398 1003875364 937240465 860306097 634872869 725156496 1060530456 660853429 237339968 341123751 415153633 444338903 542937531 46831113 541205590 1066455046 91624855 946190002 52577966 367965517 607664385 302445007 368496777 920616984 320968176 567010603 215330339 881938161 807357114 416822983 1042986358 1047925399 757716415 1071278958 820751855 956051774 907014566 563119960 930953857 465223022 1073649452 219651477 556110998 903636351 783820033 248057015 50692189 197751312 372296359 820178244 533535678 585256890 863010043 445213555 696393942 847614268 565292890 966700083 771612351 675666967 380838864 808257502 138190030 987620251 363240964 957684016 857364932 35471725 386115239 213183940 332044315 288880834 279729997 824425901 1023430364 882768787 930592579 1067014056 659778291 410637859 415961254 956571286 415441178 230822862 895464843 389650567 773848004 1063644016 831627969 767138434 23499758 425926710 760528186 214058221 1018953795 346128978 1012609927 697432081 475555857 639479970 1024219639 498590157 1063515888 1065595628 102210904 494836856 836555748 301398317 855525412 809391790 892356321 910149189 437502156 972776162 285648426 779883966 924461649 473080352 398049305 178552755 306242598 698329715 990935222 935497464 5388025 446798264 258711647 230364811 632504348 90459171 792692036 939753481 874143119 914072147 842550877 1000470521 582127416 140872022 344166197 916287050 338572980 814567679 1012009184 879855013 418906566 609026462 1020283132 216920363 695708831 434583041 372691858 437408577 646812485 195264786 75406819 826919929 475439743 766898753 929376419 668021729 85307777 24243273 748206104 92833873 376952263 136212785 503497673 113417472 997488831 293415657 857112413 703565033 870354287 754570664 705312344 320828384 937319102 302481961 877544990 405625723 199985462 4956722 700940807 1049273070 600869573 876354772 448847455 459091773 29744850 384876366 155630705 485493153 50321667 912619729 207167396 416597481 390422435 510003560 268386487 495073916 9843527 765078604 592921386 932520619 904084373 566019782 87357179 675763458 65280579 715192749 944729508 475776245 550436828 86947109 188060410 92040013 186816618 2402490 346915862 142275469 627804701 482290938 563178556 205076977 408907296 345162688 993150964 537594532 391899052 122110940 46746233 656928714 172947220 14960623 291979132 823323527 197566161 212225740 605548692 574074424 1069542009 794430714 273173415 1041857177 243330154 931304886 14668696 844854340 513163884 609547695 570842119 144132976 117852696 843485499 395970612 137903207 880613068 488367019 569059269 197797411 13184501 90259078 197198563 200553454 1052104874 841489011 32413503 478209918 595390051 220596958 606269737 828382375 548282386 534665642 129209832 453797849 968954220 211145828 450780657 434275815 945454281 284170619 909527955 44474334 844377343 398737251 208385044 300547416 71876607 942422597 214863501 373907887 964750682 761754009 1072345966 212872928 464300861 504217228 647723436 915246513 32176800 402467745 469818239 200777521 955450230 585760195 66493744 558305877 595039238 159737109 1065619046 850377659 260240830 954172917 392173569 680265899 1069238510 801781198 795299811 196552418 219820931 696450263 143216685 790868002 484368012 295921816 1069264399 826308682 241852211 67853253 259273369 613576739 701801885 433449281 829929247 805113288 853691393 198303888 99918962 425862429 401500723 122345467 615853547 675361811 338393447 835819115 1035972206 12172499 312867422 28340067 829724912 885240953 885682583 229432419 122980962 751765888 988157755 461953372 567461889 1019456979 65421017 268346938 928950547 1053641195 151386745 176768827 881508305 973660400 421430711 765585777 312527495 519929395 360556700 692855132 979709066 919471564 396117975 216081339 226600223 800018170 549062512 156721733 152039460 686241434 807945824 597031634 284315527 471672947 447721698 767960215 1068262545 971439112 514817189 224288279 728770424 836169196 590610493 453724952 549415536 551576620 238351549 463924164 282227409 1010636298 665025416 912975239 564411543 232943587 724978778 888652741 696946334 153236529 487227297 1006201066 1009651190 258739868 548421708 804377214 194680661 179316320 372570037 766761149 480790149 355002961 929683758 798487908 520459179 416449609 1042756575 86934653 762182573 6376631 376647079 1067585529 464963265 840388027 958881325 780872439 776315046 811106359 391769699 798432543 114703218 833550538 571338311 474159157 421670924 1051971552 811842357 499177341 232589803 668874358 584037415 1012570279 808668524 81940390 349322544 857252293 658019257 296890606 780862081 559260073 758401268 635604937 386137694 277392772 465064302 221180870 834114681 159036064 996829662 52743691 912238885 733660571 258492038 169369705 842114936 788217348 168450774 1035661650 988178860 572892110 64704912 462551104 590470211 171637643 656743429 706654963 781657677 948119546 829096632 868410710 142279329 618796369 676413669 35038142 503480944 83363481 1007834807 145495062 206271482 229808909 203510847 502817245 546310704 602900028 594151718 337528873 166557508 591009120 122896848 838129031 965120498 343564347 771187750 894227980 574759148 631959809 725495984 787542576 665030372 587051741 247809003 34096755 36094134 809194362 738132392 781324413 1032129794 923516973 753964260 539207292 504770242 564389402 130081877 919809201 261824326 930490103 968021050 510096716 989371651 160019140 441374168 445424544 18087734 871687890 731068517 666552327 99629067 1031778071 137958458 337055828 370432820 630314822 112409233 837440330 634980222 568509357 536734955 728359728 1024332516 482961837 229911908 542306929 539291010 194138957 26336903 913339933 947510602 694051459 405189160 339564055 291489255 903794079 798336577 651243615 711708400 609434677 275596746 921419887 487328940 206233374 582571850 113502648 555236476 116874236 31061852 587236961 547577031 625623701 192139522 262580578 127479442 406412250 241841259 250940389 675363191 952852035 352669852 333711420 121657337 483904830 407828857 385113201 607230975 1002634147 468509766 80069190 834203786 516917843 564766449 261578343 19531472 473682299 911303388 558628237 453006810 570924736 581028968 798469914 776149491 766649449 614958220 495942446 970679972 25323068 518165982 774024034 53311225 253980229 982834228 965043477 261291024 105184168 931105842 42007683 371871311 593529607 133510407 375483694 181274592 825406594 384587223 66395114 71191656 7937845 66234791 207110018 615283254 805278187 507535715 208647137 323502857 702766156 623480738 507245728 743289465 778272484 1052876031 555770451 511821631 1003864662 579168541 522733495 288652880 594557636 204124447 1010290141 469130965 461637130 224157623 170869162 981562891 649207788 785670216 471384440 693909714 1007263205 729529553 6744614 1055677440 254783579 632497601 188466054 848034075 107084173 1042925246 800298041 477302088 726177432 583125430 820510548 766511086 106084210 690991795 543826109 121488881 945337278 241021759 471595483 527794079 589414421 290308578 416656283 840931668 739161984 160756502 431137319 1031458223 476902956 1056095358 165331195 547169012 346920028 358172791 187390503 94884877 905746235 961496874 923721540 556713226 828682315 939211543 316483389 899843277 242637256 530788625 947917492 176417600 986320718 741019409 774595971 204234988 985262548 7551735 116783300 624513244 1028995430 286659295 456372918 888655084 312813835 608365282 210853427 414834237 127101424 987152879 450841021 454033209 944723707 671915872 405896843 811769475 729941170 529984554 395994545 767442788 894409440 966596827 119345960 518453020 50663548 76300960 101567420 66425529 222449612 95549861 752749894 390958897 157704438 198234863 952283683 357654903 599627265 573749975 603756729 963710091 641683173 952971991 779804888 355085566 855880528 204405043 514377968 891649510 19253424 309727452 867572277 24260394 185932968 856538318 554321608 769439223 98934068 507563530 845863493 284490688 32488503 920049964 594817161 650149230 163888225 749368619 731409720 779197167 639001629 59213970 1049395460 210143664 79061486 239638573 765715745 297375590 163307286 370718315 981746930 305588206 661038396 52208064 342956881 978749529 93783344 983228978 456081743 20266203 493166635 945093397 362943319 779183283 485557917 395788272 72945816 711675707 10264097 497092860 105750690 875547116 864560898 421784259 637651563 652751492 365760695 379372769 527675767 4445915 580164923 998055277 752360812 280175625 153265489 645300449 134483422 471201389 356706307 1036883176 206877638 89444899 512195744 204917752 425572259 1067352700 708822712 798563469 794345416 92537400 463394951 878144798 419500964 664201216 1036880090 1021397300 937637899 657548986 104104853 625396767 1064011643 875617245 415857208 143950585 3284606 27918890 9166453 281325847 371358529 799769355 110144448 109199170 29289011 658173235 528594126 899733368 499676259 185830453 591166424 534420009 515050984 866060544 510957647 611417232 491880963 117428573 386871295 754826940 543107583 813773910 930160636 160332423 1040340494 527882358 654276005 257606525 368019894 111734968 847542552 1022859492 923269160 578007462 697012238 942862487 421480718 779821759 617348765 381490275 452075999 551438546 161647503 580068271 841553215 127047831 891691052 511028769 990120751 650746763 154554367 410912942 629288846 22043104 116856753 1029326479 82965773 229310273 1003559610 610039279 92301428 1027595858 961029500 988781545 361371644 350559075 259211495 203627695 270262695 211013632 546324335 411201383 196662152 950042652 30389419 71160847 38077786 139556878 393488065 319501641 195234764 28011119 1061261881 125444023 346499486 76274573 281182832 244261576 949679150 259089005 157692247 248693338 50300519 417971046 186455823 658227474 987074799 945561080 182659439 448696971 504341656 789551074 557754563 846013288 87160455 872675633 182073710 917318829 344998536 127897445 99461287 526011155 576654532 813452549 884899917 779019495 57031824 903168954 631523887 392786772 607099763 452657294 623449565 111987118 44078601 1000173662 183297644 950387673 711689763 138626074 780486943 78099081 912255252 421254105 704731197 803175361 468278592 240374358 12890084 302113141 270009427 437096233 214548715 270009570 572563460 771324770 688817231 51571317 583697032 192209739 410770211 30231432 685108389 284340119 3389647 826586587 737125827 47367295 974931633 1038135615 7070007 973709295 671205504 1071360070 463437665 544355145 203700120 750770917 314159923 917147697 737603572 856424410 1006585583 772911887 876650833 1053798786 1052111662 764432520 1046747350 862871288 830670159 893175456 787797623 827525373 248599256 650553317 695579723 863812640 133184163 653281830 411047932 851982346 356253217 543236233 128004132 97606582 611839335 707852590 492829157 191126809 171501691 687556515 650501002 56869750 837088029 362454162 220218017 63140522 848114562 835753291 422567122 841344572 529479807 526045143 12874675 895297505 916070938 382276471 334824955 190877461 446443148 841382992 73543767 628003849 1042436541 403443940 270587306 1057894448 479723090 1013635825 1053479747 774673460 277491648 969874523 639852530 786558820 171629207 1073365768 337377344 405719057 1022271640 413429961 260697591 53311133 560225425 740245256 761287799 153030200 400736353 11868154 566437060 900848477 958705433 1027934361 449338038 595080908 454620378 188176657 726575655 38175374 775161667 663871145 365055462 410274606 680592490 22793555 28490793 619574740 216262606 62898637 590219118 513758248 947202015 102808246 638938873 69262644 686809872 815650352 226686458 974893328 904013568 327469966 854330357 921572905 290821111 1069240453 246995732 818979542 1035428585 606606706 375219085 727856124 992082842 189083339 989678550 654684858 947902527 940999124 494199762 1042269542 458832387 819412368 991884257 202091179 378188415 933579841 59699979 745931515 102766343 670154063 189597434 328137402 264910213 1035079226 992145521 986959691 938253423 235790941 839369861 785957798 650221337 990737965 677968932 92247107 796920882 52319856 1059512904 140717587 910387382 948851260 1026776656 550396141 292491138 1049986983 91953826 295511189 617560608 39212289 884883718 834559806 311731435 481668362 954795251 1018100214 386050916 925589605 39531844 699573455 201613891 87477018 907336861 684246784 965672327 905783936 478670709 994103940 861007203 866540839 202719941 620797342 138509212 615542801 728235373 174175300 26313885 978980189 1005241950 997936334 424392897 934463217 1060545057 593987823 678718889 360564077 542275891 23901216 170270637 587090717 1009107119 164997324 785905399 574879524 304973319 895686601 632508214 1030621864 265570829 391051172 236217398 1071220092 528306006 932100616 476134546 994974840 750157553 423873354 93957946 125978951 531176263 199471541 1019473366 184811665 702415784 547061417 736384537 1006667619 213071895 19430445 265154056 787383412 399821422 239614766 128036091 57288172 491083040 591906689 42179352 568128762 163173331 1057928113 496879723 675124057 988574765 764155309 831734602 607368086 295287340 341112170 734222151 470255903 597699269 513091445 613850784 471822831 1042462622 977836498 31683672 763394159 301546687 639558487 894147616 647246923 615675984 921043632 620005729 327949252 282635554 354080890 433209031 951124648 45831197 237830072 1002021954 1048100501 644798648 852298466 391523228 6356393 785606343 238979166 769250044 885849122 965387194 110938747 856704400 711266229 853310163 346661315 498362383 584322092 136007007 727506441 647812411 887999195 912281282 667522037 211306826 431846834 783175927 186476458 125388780 732642637 804116528 65072221 910947863 214440668 597523317 188274375 842150188 329904664 170764347 101907193 569098016 1014311009 439263617 650280319 78155869 183700128 460301432 689407202 131432075 365473056 147966715 288832091 393312907 612574134 765128614 952628001 642554765 315161035 16137682 116093235 992237201 792228465 357882296 454674195 390286755 747265181 206681458 859118908 616641728 659955556 23218207 235744286 1008764572 808608 545615346 116874598 643713019 18587910 283129559 707325248 582456933 798582120 599155654 798315543 863899874 712392400 350495294 961201277 1051647728 77320677 342871798 1034500625 163482122 92336568 312696049 807002590 480966364 653236116 846338847 761191603 348513600 386078941 790146379 857182394 421919639 528657564 347042854 818961291 517955539 142067355 426597843 644672824 64341530 997830700 59759680 637505548 425515159 400541614 661301069 623715384 658802398 270729209 929409440 116590932 1010404120 545543401 938702027 107006409 423185996 630556593 217818873 112002139 282368428 18872602 519216811 193600257 766421764 582590340 33025311 488004355 370219449 914365103 249347960 1001015554 716651803 401464807 48383190 725198976 240569146 172172718 341644779 794903523 468228740 19385741 156479482 186147942 369897159 166168929 445002758 719683336 112535285 707560575 496927895 106553861 1059404395 890632649 55579939 802641428 325029708 783528265 536308742 266450386 1069536104 682700737 850409648 257228383 313404389 393174707 775527481 1021926208 503472521 806434454 379873393 287703282 823108989 4723808 750486084 428853705 839787686 754236976 613635301 71953692 287011296 682504148 1048536045 609872349 1065993843 666385959 351063202 18209389 287031925 343816859 791157595 161806202 136076932 40733122 1031891967 646573027 417770497 1010075564 115669101 899201703 188872111 188952498 286243190 1033000860 950346526 521391160 101197879 364745940 860886159 464287844 131916449 414534571 842128528 819286176 841381700 563276274 172593116 748992127 770780529 68099808 331195330 986775570 746544711 791456124 1011683933 1031521611 753236788 886571952 403794826 607734733 582207878 613488597 358233783 968060955 682638402 270398844 263717473 461493012 98811064 252890122 191302998 886257582 914142646 907568605 631563675 273281451 681911401 964168447 931599861 61202924 453989471 1040148371 590362512 669070268 382466291 619046734 743765710 906158609 8768158 968982746 236488154 776860230 38025421 1008818643 229447025 82985503 609967073 501405897 557737400 950326341 418350105 936688880 43200002 835022639 588934579 715711476 78836214 503407582 1002897969 795743412 1029481122 90407287 762430093 359250842 780952638 1065312435 800577176 38597737 82542220 774487364 178778848 116132004 18282968 652827979 628467438 288900153 515073169 732687195 418709093 725923572 241765488 932702268 701225263 858027958 556691350 489487858 326335949 216481889 131435766 736490334 221353257 259687744 1017513635 970169830 211908459 171394594 71293253 601589600 333192923 323008426 989412868 832115739 487393044 18607601 1051917986 685838232 420679698 137812044 460934595 761991759 351475345 811956929 1036953181 406934437 174603441 463880151 637841876 633765343 292491424 326321933 797056237 609941942 28769610 50920278 280673666 127861577 275908307 343977748 710322535 481657300 838470129 930446871 332481526 241722654 901278793 19729673 403510703 872794791 30994542 435907712 667236435 577268649 299250062 1019683116 319065927 240607725 1065065914 261961003 855981976 793212961 397368145 862046720 33466135 811561475 255433558 572015186 334112126 1062271189 116984553 253662546 767126700 857583541 537136969 53777518 464416285 960032790 409236362 41320611 836496476 977993156 703166319 359639012 729961116 920694578 560118124 631025776 696317643 101878735 748152451 945567928 443108602 635651882 702619275 1051336651 200435366 833140092 392875497 425351004 739413266 458226123 154127816 958628689 1051581684 1050536220 1065792386 273400141 678563670 991929950 897682286 778221358 664880405 102843484 366768301 484197450 617468706 322373417 871951226 327226580 92355057 686064892 750371859 177316706 221256207 270595153 638775569 555198203 839342661 671539560 88544828 76831269 403380994 476453121 795175830 699281830 856043792 283557163 398974323 890955995 566959864 514497181 144358675 779352187 701714540 912553986 532286101 823134954 71356507 955708960 512086290 549320948 992631885 226476000 560623493 607482238 362508886 760501569 862379748 55915023 792222255 126908809 1015429988 107206227 779493085 460809411 18826779 627417573 557446086 812628869 1506739 1036634200 515993553 811337033 624632487 514955468 131482 757921620 818523071 252431231 659396937 773755973 94205171 851426379 480020501 885569641 26980044 707842016 616499707 288287261 711899956 688231090 869238412 619197307 444877793 952508569 42439000 284331557 160795147 34901457 198914738 635151931 888525140 630946667 508570743 104775826 208302472 1072090580 76312936 569065667 713776850 577326817 1040438733 499524442 731975393 448136430 982793361 36216208 533226429 397678910 369934294 744854930 78561151 972431912 615260075 699989998 966179858 828083959 974280418 720179023 360934800 31977282 383916434 169984511 605293714 958849838 479535992 213525502 332665812 779209903 388278163 628483870 1021156983 390652681 1006581032 88290040 86326181 1001388218 391152800 167435509 959412805 1070255791 110479624 591424836 889696570 426278991 455056234 499234084 117690416 200624191 940204565 258891601 730339194 745659675 569974139 191465487 598090791 171827873 272714397 575646338 277102050 716974379 47560586 206950985 677942063 1009698146 701590493 769346313 571717703 330948327 581820101 1005591603 483632497 11010350 499928143 733232352 257681066 313691637 495748676 85564364 496378101 1061456242 309690940 759187764 873363265 245726515 993837663 77180585 790167951 613433087 134229536 911469765 79998939 988859726 116321590 353150323 293919495 78128196 879704487 943023235 2215549 249347390 984256744 732694129 196167957 842806524 652804727 655340325 818497531 505539177 222231651 265264046 31941991 934081933 108053370 936278621 318680228 269956149 1016897169 1025019705 628649361 802815904 446411438 187920472 647691259 1004520045 159729789 413155501 719230549 639217385 337061800 442488695 479269877 466655576 405797891 1044459905 497909368 473571956 922350887 189344188 859854455 320681259 757024341 476004533 132139023 552743955 454751700 537364574 1016704686 1025430648 489042365 21964171 780520008 588386105 1033386153 1014308811 683716469 676532629 89490847 494276361 681782647 863362093 43104791 468419488 646666162 877682903 668594104 183291875 977538679 576515606 286158956 263871300 688888773 509881805 223570183 773772093 138480387 327947356 67355993 133951336 600476716 793190524 563796553 898987439 296181784 264889608 738317042 984806420 682305020 339934712 1056178135 330766823 98657498 446914072 492425189 598622048 889760194 432112231 472404566 721781907 870952435 52152196 1005038995 68973851 323292926 497956792 516382700 428284367 659554782 975603412 798423978 412930428 409016123 488892196 537994117 222760787 707991948 475202857 463312334 632084891 19447661 98076324 662071272 672730725 862607423 482768870 640425870 170961509 477109734 339205159 390436125 803150861 518927083 1004929265 39493689 216833793 112174220 76588474 207064018 697599254 285436466 829044173 466415564 769863249 57761808 28900421 832568945 1034700558 94985489 143290360 274035132 692510709 260182063 30744996 616690586 652331857 438826003 691024599 504764560 228538590 1055465425 964807512 327992843 204318504 1027581963 344972806 198633642 1011848033 973650698 996980611 335369951 735528263 313770966 886073805 361213564 357299310 455079274 178208861 993374476 402245331 375045700 535775132 212506633 605826587 85059887 1029698089 140240296 671900827 463434260 476123279 919934317 598520690 437822411 228047047 339336083 43121743 774246923 1002456013 53772494 278418284 1003497120 729311164 662713341 254243357 790885459 601730319 799545313 620016999 226867134 345484589 980434486 489345472 1029704253 887582390 247748649 1039080699 802132987 215627082 1048186325 1018149397 870666162 936954302 8394457 333941753 576096040 1007692670 698719174 309297968 559732647 453707047 260166226 909983826 552618830 869091243 653410105 1041191869 1062618238 619102935 812647272 127603101 799254577 172652193 1053850258 298885101 415089400 366552373 103783065 122129928 403281929 363451147 829538884 408353624 961312155 654559958 641336203 567980746 320933073 1027777875 641129599 909855485 459689548 165422496 1000175116 964844908 671457100 520498006 562203300 30321848 861882406 210324269 799845768 729825084 298346119 307272733 161319244 621863421 912115578 1039862 1028782417 440161790 255682493 186166806 122505544 550553203 190722243 869041059 176064940 1020161462 702046356 448510401 776317517 319296586 235012622 197929764 263222145 310095388 785011646 529513744 386966374 458720474 1027037282 831197439 1010393884 227633227 985332785 746181298 315508409 680441859 802603687 725759041 357577696 165058268 62708137 401518490 54835880 571358487 174965598 585170454 1035624365 546077314 269895904 895890399 111178984 622517922 895660976 142031966 2203750 693994327 496142079 1005855554 346354677 67835142 38898983 376979213 885270071 413418661 1008640550 126920236 675467171 1045941219 287833994 286251978 273861683 134925615 443052303 111980342 763516546 950107070 1057392043 428490625 884799049 963868124 41003121 117714799 299975935 528198097 642907003 902579068 967091137 189182768 14719153 776448456 1008731299 726148267 566136510 536929636 269978573 925509381 296196322 33236402 835194487 569585842 1073478579 646429803 10448282 360517 991698529 676904507 821355443 955178888 581526643 59643625 655789454 614116183 317280073 733203322 526612968 688684766 324157119 857403205 952976156 919852121 166226722 767485543 283279795 889372256 910076616 269652040 514485775 287678137 423923217 841063312 936613583 803407782 479551642 673155286 335348105 914724120 663219332 916437689 136805534 637484095 11722695 685976493 246604234 64857847 262236625 139579729 512788752 269242957 798033321 1037355389 901879525 447916635 471208307 489649766 701098706 349566174 241145883 1047914938 17079317 1024982878 432156322 379010244 200482996 190879465 46373929 135895871 624364777 32754017 84882051 190212895 674843416 610648551 578121251 982155019 166579003 474785567 578287361 715959224 298397337 10657462 11672008 590439764 862354907 568741219 536269305 81594091 98749802 693300409 734970348 421923337 1031576957 335439949 565418237 660020176 1000764111 178827438 467890128 229160102 388838520 317154864 823975467 498855116 607984834 627450226 365633476 820587984 35965899 667960882 779216518 178883113 780461506 963283162 400082496 161992345 38820952 335219663 943355481 148667409 71865907 550405608 601586189 93343181 843350777 225119507 145066868 289956280 1066022611 317141769 809898092 881138544 354944968 742139655 570470430 425323052 385913793 928817735 252497701 583214021 500910685 723131047 290467292 937035767 538603077 578497386 435929943 80648204 134463540 823018998 509835643 20453958 963099541 12707348 508968281 129143096 802497789 967284994 826458508 941032287 641914736 1015520505 1047757865 713176466 394088360 829032242 77040012 494227419 34806687 534884279 267102363 17075979 394418940 762079990 938853006 732343149 885046792 1005121766 370416864 966019897 578432608 922191351 1018500743 807363412 447501704 338536770 81624311 531055868 665456186 895712223 186966624 174098790 787342354 882252067 762799673 919902834 233763047 748783044 812621994 716588828 424775011 35097560 756322489 1056824436 953178087 293043097 247795761 67189172 628255430 391664958 859822454 368563342 592529089 1072450775 200941937 1042923245 968668498 180907667 9429100 135197500 411773542 398392909 618214996 414775793 583399545 222585594 797823727 711041539 441785215 573641087 871015404 890346616 516830704 849185737 216514919 678749875 596730181 411513483 237492668 563026738 530467923 737482314 1012203116 217279276 578432409 833029653 736879058 412188173 903118290 704877931 496637611 656665711 32667737 974230425 447869606 577522541 900831185 463798375 970859604 531677761 118835656 1063720946 150939246 1034161115 574027320 628054417 648860566 487945459 11040991 303053904 926595171 655863416 697126526 527563152 992462805 748071111 691772680 388081099 457102808 800409348 381109096 966832909 157388496 752895196 85065823 895925647 717348147 724296106 398436012 230239799 217041829 248802947 545362598 703099632 1019614686 113028754 20387795 345487884 852479340 638235965 291808906 433437215 790179266 213732373 427876290 970933071 812415398 646507502 337186531 575205366 631122303 575364263 216769144 509173775 230428073 259861414 503657921 590880171 215114213 231345173 286909754 266960746 472013679 1036384082 94267508 636638453 635751405 1029595053 238157370 893263850 679564271 1021226646 482582578 552516256 819819371 150314586 395504727 703594798 764941306 816454304 558200253 619920659 118578738 247070837 145787304 284767178 609345370 610913120 344021326 643224684 994166034 332773171 246197145 12131255 212145506 505378051 325060214 263803364 881743739 959384293 867443762 148720094 592054916 942717786 512092350 305266859 295947291 628812983 682752 461167541 192433809 399086871 86025110 83734439 371308060 711539396 573531661 300481753 292610 505442358 258862059 861098007 624067183 135329386 562332391 529021428 949056264 423313115 1000330546 966071859 277256974 527552664 1007196035 5284740 9244974 445001301 1036154843 1018163806 649769649 489694331 311487785 42781439 159940169 700074466 786734695 317141513 371231820 602429809 647514042 946707886 88947741 985754139 652672636 1016485346 873441946 596702304 650636631 152215631 320777163 128928813 741095494 184470109 652006652 514793557 957391681 47110543 986197791 53448962 635732168 999117563 15393980 535056778 196239310 206887260 944650918 814738024 205273643 95455202 684246812 195872083 733409469 136693663 434703588 185871236 536279104 530518844 674473682 53478534 375760748 85734084 550737445 658239831 582954435 542713154 733507974 232574147 609108040 9674415 824749288 509376913 121519102 171552925 894517230 81299360 866310455 591363162 897620420 489615107 238281609 326420194 174726086 273150579 232248454 612131968 838398241 1054648876 29806634 58289375 846193921 353367777 383422750 132320826 854988761 1055818925 601819781 487417227 543230827 704800205 562018651 358401667 275316351 753310308 387546643 81930715 728106758 875608840 168604155 988870984 507942207 281803988 610725577 809615449 535336808 974259628 540118489 675446483 14867752 585861693 1018849317 540100296 239873124 666927952 624021107 970081727 1064296274 725660356 346655429 464235216 254787732 378976819 742820604 830871028 1029225070 727160346 264810773 620635386 746631563 702632492 200901768 297789711 878049669 967184587 1000324631 745853081 554261812 429658829 582001865 845983913 324766587 964570836 802318653 574661399 222767055 770638743 775558319 973238198 821510865 450004126 557588894 1019247697 894503212 345905 320579146 294867829 551326147 973124717 1058313957 393470492 1032407317 168031189 469276695 879884219 381663122 460288258 923990976 380987554 346660592 956690641 769318353 1003806849 836371096 264239226 16762587 400010377 944855613 619479703 691285334 631503548 33620325 579822486 767566107 353902000 478269817 131720998 409722674 352900483 749612014 367676500 174792295 834727348 941852632 751616677 402980991 409671354 441435854 637383244 380995923 18332336 198440781 162504276 822206545 405772264 209354689 678786426 24918142 904529965 456649988 968882718 981943845 365713685 292625509 192339103 596459093 553027191 713408554 855840896 23581011 278589795 5288178 353514819 519673723 4808824 965038593 888258021 130907089 1066395848 478024079 205123167 980358629 778865569 394701401 272065812 493755714 831494377 941499387 703945748 1064428643 516210212 155028287 961923720 808244896 756129498 531057356 865726629 572645463 242257436 937180325 185519209 1060039643 6840242 798457101 804728344 214267415 474509983 220190482 348289550 718158566 63073723 1005105379 921842247 939154875 416115750 414039279 1038500934 504693659 925859168 304475097 886970212 224630222 197096237 136900299 795134796 884692096 249235020 656085450 421831718 816985268 827788399 947457377 858380742 404911243 8505580 43515250 659220193 865327472 353609135 986166375 7259212 579094968 1064650793 446693295 301226608 160440397 624714105 142227905 302625886 763312687 159592275 329741645 232840553 633391755 553553294 374557092 693463129 682122038 1026552579 836323080 1000710848 80751227 38341814 571709276 268410598 779498513 177362538 1031894573 894339092 55837754 592672425 240835241 112113727 1006373708 551007086 522023189 59666226 489584361 716661253 55931056 1069103496 973171182 609524220 22377722 706179777 901369710 316940564 993981707 736968675 216041132 923387646 1047230322 798685615 20383854 899301846 138085433 147256140 1033850514 25603091 685843672 436886107 230115212 812198604 536889672 237507815 798831066 856625732 58782350 1070267799 1058931665 2797557 597492506 637352671 479326762 642242246 619337034 265503556 903486550 1013816898 183638581 1013347283 427600178 1055227537 282393204 218394714 423623569 92547260 428346188 525539969 696714002 548897331 912056991 334214098 364528554 518984387 193798323 704551277 637581724 42681983 552703890 120328715 42493361 153731841 323149434 419186356 500109401 234526036 486594855 593002223 131228004 852111797 978691298 963583747 561753182 56884321 648134586 571124726 838738334 449020320 142210976 1044199799 735406853 982942574 723353837 776712224 712157262 306178828 591816290 881381673 636032751 341779317 3321435 128453672 792181337 102388691 1040917355 72708194 1018013456 1050009008 830887577 69836194 96092973 565938211 335617615 635406011 494783774 894452257 39697725 564125643 242611565 554025727 1020745908 976528117 588312782 57370934 726719545 155887928 324071730 575228599 15833268 1020561622 1032380623 932660065 534435904 189665606 866073461 445986764 281685725 964744303 248238895 185783107 140239674 1072884053 586938643 1060504139 689042583 552944456 523599171 967156165 450919037 887000143 408783255 63426338 672333843 1025021610 831100023 277898944 1026323010 969187091 1016320370 491027694 274505001 589461440 250381059 751040326 604283595 565324301 778938549 526944985 559533190 588571306 702359365 714084926 973636660 131362017 648837242 764147076 342100964 460748069 270132352 1005190359 295634227 375454679 91460807 430158511 722708957 432779658 664798768 262915281 974415227 486357825 184318554 319281831 1031507421 632741176 1065576439 60859411 686950546 444923561 586976364 527902946 753416379 352179899 970161030 622688373 275492297 272647451 905582874 288384970 183827745 887054191 769599066 501233350 595362021 109902175 544087777 352866304 424625456 705552749 635211197 198970220 254061038 315475821 118949593 444688263 488922365 789323248 785003205 338124311 997722923 486505045 279895012 521837934 57366902 253198780 342205875 687900066 264360036 985648946 35194706 1058385542 803674508 1065678168 438219395 485621670 103331303 136632121 248702109 280905228 947312283 597476390 205700104 870740681 890143523 854789420 772118351 25472562 722280185 555934178 10579282 362932279 2633509 590395526 1000654345 630671383 910458515 87603973 293413222 396128099 473796214 53398842 528716740 8514585 444175352 105098497 17307852 546926072 242083443 257990536 118676706 209693092 949751633 199606644 279440535 470874587 599957882 457310091 1019055682 969841144 990959867 694975918 607293007 799498605 87573350 224097922 157493500 982193659 295922986 465072093 836429207 434170454 369998080 802791355 904515064 518013744 14704520 146234667 358235917 768073059 382749544 419364848 397480783 654502416 389598271 700611325 183467091 183601127 166476260 625854993 786070110 44472127 1035518894 184794643 43809889 748728605 58693237 286729316 879733322 646803043 397018359 707877256 427016901 954043450 370479924 365187232 386367480 554312153 803249483 104424828 315934430 84064327 735400206 1039192207 227045650 834851965 764857463 1021439394 411555382 6708679 817032356 698108611 697780950 57941871 344241758 382205037 528113944 549362671 791756307 630353791 182896551 980517868 1037827593 391888363 943207010 328172335 168991722 680526833 584136984 69599048 732899881 469645215 493026756 491736992 71969859 853684774 841221450 217159957 724309472 795559569 999769579 688136617 448495261 549278517 424765314 176189446 866380891 576099991 99706162 392691782 224441579 885627043 1004132820 348851811 805094760 17469340 438665056 205496015 718470933 74299873 160605117 407576681 303058672 693681179 825745667 357512379 663185944 921042821 118143689 934198708 673412035 973866146 527246463 820328682 684439033 209059072 27324689 511990662 140636950 1000166125 569254328 152819619 96177201 708345390 611745961 75513201 543304411 936732610 469933271 181770442 903132804 127202340 912051829 171491626 381944050 728582292 472414078 857998637 883238242 272830503 647768473 928433926 297337253 453058408 325711603 493534717 1011827594 1048537201 943954744 608029445 987978272 687292291 509652598 776234083 485240655 593000729 856012335 87909828 349350532 764970703 634911765 800981913 919991480 500556655 1049748390 570120435 778214029 832149174 476800792 1017970290 766219343 533312662 243792814 507452765 264067301 53719204 982930414 444746337 449777594 723860177 300593652 209612043 401263292 764887654 48052060 651480077 717317762 433562714 1011289719 559419941 795270363 441245077 496272245 112840396 917859587 1008071474 140833821 148790150 436885498 224299884 209217383 213852455 14398830 66961678 311858195 208949833 71035219 527984816 376949477 693737341 775510946 162153446 42423511 1070627992 704533852 45032612 668228671 375525883 400788748 689333791 516769136 597452250 658447225 860172690 980366896 762979151 516539056 121993474 72634174 531691565 256577955 720241258 996314823 859447668 217451425 548675817 866804119 373714931 941159543 66398304 727916877 590530755 808715748 875839850 1049456144 68084228 654342076 880073664 395270058 704896192 130344465 464902436 1027537834 333158117 573359583 644949383 99861352 1039476516 337485201 817204853 593818482 191472433 537202701 494874668 880852252 702410970 527914976 20493175 419022659 126608169 109851791 983960708 888197750 1009427360 1057633329 684170333 203685383 297615269 54433795 183638202 513246442 712622997 107115027 159943610 723064603 384277451 373454671 578763920 826439270 177777952 567937938 302178070 781318975 632892729 843461167 286348068 523579940 361419572 1047539672 142224358 503608905 150660544 975700536 441158601 311537926 471424173 493480297 651951365 710225893 281990712 264083377 615758358 988516376 228928567 659029717 103898727 782529653 366996232 584326648 806140581 968963158 527509165 234840608 859843598 563346890 666182353 587590097 420549734 788519755 121791725 299063681 511103538 575702824 895316670 986516430 427583617 959360032 866875764 451761386 9650816 867669242 775510183 249520390 618905515 798933052 218127370 982320303 1028134818 601421643 862963663 619467349 283406359 154369044 444869426 391518158 758421480 413962799 492211712 939185579 629641453 467631618 522707133 501998919 123763383 235307770 207649277 112790617 937304348 160758349 73647033 1042594425 202305978 52025807 993395776 1049641999 504108653 713781804 650383115 971885624 895989802 724491221 675469985 607300409 619552382 1059378191 144070673 981217216 746238334 364276949 136181298 87938494 874464073 85512375 417848267 552402521 1055201650 10109850 103971292 970074695 1058736958 870130242 631576946 460895928 826314785 445245666 832960585 929521167 194547770 864561080 1022454305 586648836 539259218 908098250 116221236 432908592 475551722 602213919 151163463 496733593 162840182 970782388 33725207 798238421 287460788 872590066 940253299 89825196 640370027 619042683 514821045 820499793 695339143 522749878 882923049 280058468 932957853 91424545 81525423 896800791 767203130 310540356 786464878 435075056 570150846 597653243 388963325 597283298 766328765 234539397 778608938 953613539 268935707 415450707 475071554 774249913 225964512 854119705 622588380 397096163 508716320 756226376 614806240 905215660 37274333 851199870 750914295 753832610 1073715196 176082275 759179696 499596284 502900168 299386597 450685611 339053932 218306249 472324018 916236844 615611473 17661388 843071169 85413271 760119947 1022118502 860280375 652816337 117323347 487147463 78466027 683400695 1002767776 935454587 345766250 244207748 892527952 478239972 481303256 293864532 1011955331 162181512 538755838 641996606 899271076 546442328 47838280 721941205 567823205 1067321365 185024745 191011805 24916249 255621772 131904088 843832482 294826356 67953509 104932679 713361476 81465496 267976556 615044114 941051838 626974065 235722001 174097441 602735725 219201308 216912906 63287028 621180984 1023942046 635940841 531173824 374205964 380816947 536739673 869809264 290334546 292757834 558105518 340061612 658278170 854835426 513793388 887466491 854820226 34588890 492517854 648075578 201801670 374268436 806505731 936704308 169296237 927811078 965437985 800170421 581696153 63422994 863087687 796109764 623875502 47497685 965887879 1068240838 950465888 285345946 833632811 524835812 75393768 843961512 112625392 711346672 98004522 764530886 823206501 198998779 286752827 508297028 238509552 603631156 796878987 342102587 994952984 507326229 534314518 591670794 931593270 952215743 600005468 551616848 100424920 828752638 518548979 175316223 940294218 558987929 774073835 820285898 981018002 189159617 174412948 889865892 1072238823 507047803 1048367175 234971399 651045826 290881961 957876212 725797434 956649041 297918449 250246088 205431479 339608116 308294077 969442501 409726862 688732834 117535372 202681476 768382979 315714488 472058463 612021036 1349003 397031004 198521514 611575744 937213701 394911117 557226836 14607279 202159720 765356860 631013762 290830708 810159695 416633859 587206096 673216500 395848875 103405786 289517550 233961427 1051247866 746203628 631440005 610701358 382495069 84650344 583208241 46081273 1023776320 1051360724 652380128 492933432 582322588 632945262 199030297 636080171 1058104038 168839902 528751833 206728691 290447084 280305811 1041716855 956651587 746042272 166318349 100326373 804169899 419175323 891213543 888000800 100960458 423278296 183886013 458957058 841473830 137758205 726354844 259841183 692478437 1896941 20834839 357918282 1041509347 89548798 422847240 543829645 280174036 1066571639 539375019 551298972 675907893 254856263 43521716 346757936 61558110 287630597 966706489 500707081 1031703131 278221351 23568371 510985822 747424656 810580778 578848275 829280924 587114730 278645259 319740096 173575351 134785912 30592866 1023205557 743469953 466231580 162688647 955572279 483833631 746619581 709413972 918170304 722756588 157198633 953252982 433559580 831391354 735422307 729234749 528851065 228349003 877708453 162218855 497719849 1045737670 1044167802 342081065 333289923 317830603 880834611 550976405 136276903 936052225 484514351 355836852 692067410 608821929 608027069 960235180 297884564 552835463 805941629 649406472 899402532 535233766 684456586 183552019 762370439 390436857 185205283 235439801 586362391 336323206 866508249 104990462 126587110 354283356 699952763 522431647 155347015 648126102 901376963 122084867 87405563 304366134 854026726 762012557 781958669 205121542 879199598 984044047 422880518 463635577 224604848 947527317 262295206 385690968 343805719 133658376 286726742 330790483 165939365 100579700 218051715 43260378 756542305 233590292 910437466 759218278 772476359 778746134 543234581 814284488 899065966 105372189 755348056 232382141 566611227 312536238 522064434 885445726 604849758 828776391 1067306512 1057948946 46783775 276512105 869855013 477524602 460414899 524840228 717744312 919498276 737864294 627396481 840591549 217602099 603272238 205258747 339460763 67395447 144780579 132672975 444198346 305583068 890732789 600365718 988004334 143913325 856298623 276957026 126046667 277089978 1034519513 1013942302 329257400 541990273 310917430 442459401 976536831 205059375 730943018 117254624 351467499 74010515 477502270 674869611 824237111 983066034 852250746 948970305 887423458 616116579 594050251 400973991 943139749 175339585 279717003 87548793 915350876 527405989 536418490 210538038 431659687 775559366 957066074 960506658 725864063 180677398 619841291 876655097 1025006052 372302587 107056100 1014683816 144025315 156940998 742208852 406579398 256485253 777122961 80840050 722629863 616853101 55529732 476295304 751018449 659932937 898378461 564180521 405949346 369554379 540838041 1017048808 176132742 130969224 456375195 906727912 867105546 834001263 600302572 207943117 1025511821 866314987 997596252 59141122 218969149 769913685 386228777 117361757 413957558 401618005 460006635 634727970 863145177 841394798 2696827 501777479 895012209 292176584 595706060 419167952 1070922979 71664202 6324226 114516781 344520240 181953990 234120959 100916267 773186400 145394504 665895374 905537631 511909321 996390602 395379925 819577896 234489255 90461660 574960425 902780861 417478718 530349001 447540144 396409394 1054312527 628547338 157375855 222705492 118519516 185135966 672133409 361975073 90670117 675937929 312599619 950569789 521906691 342874790 543901572 37459064 702618440 758688759 688924238 625200523 620075327 541948082 513681696 536156198 740961215 646847569 730456842 564337020 760845752 71165203 590666878 465489212 423062200 416725511 912058339 729999883 550666999 935811213 577182899 1000447214 124131397 174065483 228013186 966637757 443590392 51753609 1010843399 12180036 373325083 115789933 654980847 140645860 869885656 413617474 111097828 520948027 227548959 90804051 250554763 652991604 1004892660 636212396 856896791 614723600 216084172 359559988 194176418 689730515 122422068 330938631 957155514 307152865 767390607 369251579 416853848 21877806 328300513 265763119 261239471 881129224 337509837 37944782 1066155367 640286860 607389302 975752098 868784679 30088458 540336284 16122443 732327883 1028102947 23999839 393294181 944371224 103512662 203206035 626525717 832834326 23204186 441815578 140742222 415698083 241399048 404186067 206901512 32141971 777306369 54148851 911625681 1056650009 130477784 1014759945 276692677 853633506 378927354 756014463 710292358 513684748 175457957 927757259 613746752 703132738 435830507 466501965 534136214 843465009 365644249 225400661 651989613 109783385 557643820 687362734 350627103 84603151 109115566 996336596 662486319 561726489 968624517 237448115 671570695 275161348 52027167 334237854 588321469 658236835 644391982 733336098 472329916 94949299 1041569782 336882866 951578926 825190116 1039097489 156537441 168536552 845576104 126500497 590114125 917979524 181124993 46889346 824413032 857818402 747455929 882687853 580014481 463533824 763839872 541410316 448828459 424075554 123145234 507329612 678399315 856192670 801427369 451514318 420633725 772699504 1037101663 192315179 50725275 395929369 482350586 220105063 395192180 903509228 259629264 935992659 390032158 905391705 513677935 53206786 729504106 398446511 991996263 634366861 845442550 36898508 968202699 338424417 813477953 45761237 280383561 592229615 385449866 661781877 288287617 724346335 82239880 978393540 910927413 212885983 2074390 307428267 769592146 240566591 616644298 757142414 749063909 521649169 121175059 801265871 992537478 20408984 884019512 378171806 684401662 513465075 372269310 812649674 723591746 616817037 1039290821 469052514 632138753 44218724 298475203 328169338 982499071 753558777 171840659 580042451 94347628 837463079 189833916 481479934 512703118 471944315 764052577 182794272 873198402 389858400 221079297 176274453 820751512 907708088 475156674 658326179 630355099 71841538 838984768 618542119 753623280 520788751 399756671 503410105 1006390718 471476293 214242645 596647235 331026383 751489031 834856203 1060989728 557553545 1048941637 180780216 671489748 804098691 246363914 891898503 920521006 275777755 722220057 311210188 754120080 447979514 406447795 455488131 131896351 253332894 675151917 882451440 8264692 1023695587 569136007 1035432509 91968506 325780523 658650371 28820031 1021745615 400379593 210698003 559844642 1029938696 359925136 294858360 262082794 65754287 297298799 163735041 622898433 539210806 905721727 1023101856 898711677 827626760 431736154 531753643 53856497 783191880 41487069 35370518 867966438 994489530 949135047 450752607 56239632 859034920 754905457 669830486 362173859 1057515114 1043658337 311975115 1067219295 1063686443 796775479 754825129 970160514 332843486 731117062 335668399 922915531 178812703 822395525 972536038 568523947 33330116 779823243 217557576 77169693 637006883 1044646467 669190575 925803236 713948115 742370441 360216246 681816341 140769346 849625297 420018235 83880110 1021939700 479592887 1010935802 677144117 240067727 916148266 779094615 746058123 310267174 670257954 268400001 301141658 395058774 740151866 390724051 1072213239 114087381 16334051 523212862 457848606 863384152 560221828 67481344 1070966297 197098059 720936557 899588816 642557351 1065806214 189884017 276137986 435552239 549686846 6769202 1012884677 808339599 380549482 913701376 843887112 913584860 452704812 553762429 1007678999 112975936 721560471 9412376 268271643 142651434 663343411 108632304 614514283 217820793 598367229 714724928 221837021 605061387 289071317 215151050 302539040 42620903 498997081 2418312 836883955 180057109 532832505 563989249 530876516 315426913 523522522 786590152 175444469 563068474 913815399 802720970 179064 28143585 64522805 939500380 437231130 580939497 43141232 507628514 709211481 843213352 359714913 603658317 125603459 16040490 130487890 858737632 151424036 538448958 102923005 37556480 350170697 135096857 933380121 311630456 857113634 935083040 979983795 494832939 806191531 15477920 139531946 489838484 284938613 498375429 833680324 672253163 314051954 261522663 51029946 363293024 403809205 491068493 588499861 186155885 527562865 1020494414 217612890 960019264 84158879 521488008 164661112 125329194 849123956 487372434 525732845 722761843 882087240 571964840 258296402 161410792 970790686 494120504 335498654 959325155 454156636 986443810 641293259 459296018 604682623 832181879 144768324 167172623 130776592 164761041 407577604 811881971 72744480 915027041 791275654 5196896 523249112 1025562254 613674028 154130641 184168476 102466351 635253682 801879051 783028500 781777094 348838240 511383212 1062667208 84192892 553440765 717996878 660202579 630606084 804388729 672941976 121676592 816517395 661587576 772377943 456571570 994327789 949119963 522014172 448209018 142258412 662459332 1011478767 1052280481 650851506 572810186 93465791 241575804 86870387 575541078 290876002 317760520 286334370 500473604 33628895 299392825 914132794 926245404 284061304 798816877 34003253 530807025 883568800 404146172 583180212 826865736 790603332 3351277 380817444 50653908 308595693 952930199 301155908 433072754 519207194 813739251 725898327 370999161 952711953 194792906 231043896 489030761 1060143657 824127943 166318223 440264475 1050492986 715810657 422233065 1006168093 94407373 799734151 845357035 886533402 300098529 218932407 311604978 303713480 64158567 84936799 1070793627 964558426 326529047 751047347 728932921 14046484 529687280 731695226 471054325 426073861 40267475 1030622144 646599054 806090558 484977925 394443932 577433946 109198874 970168532 39152893 973599503 1026860951 1030469162 117879058 837259381 1052798000 739956779 1068933097 775568581 1039823154 133051922 879329891 945476517 514803942 1018109095 1023407954 1001603890 790547591 890210328 475124604 618205331 446878287 769008188 935637422 77939494 870910545 138607038 879816326 528276824 807421803 377866783 190380168 778565221 367930792 215309616 715196577 544408962 679750964 822293887 1028857595 20908548 926513083 181859216 649897099 547176230 736194729 953002119 700464309 994257915 800849703 690781424 731888646 120983751 496860567 361794767 76047282 188179597 709884319 566760182 144133998 555532546 555305894 187468535 546398457 992355085 980798302 350734525 968448535 425059524 850468481 945384457 312706007 1040095608 303847994 223212110 708157696 439665009 572715707 1050398713 650172374 425808162 876102470 989605691 928540236 262253522 738311529 998900962 46231253 994943324 825593446 402365324 1060422249 868537314 128023079 616080954 1042425916 709496151 272305045 185007042 370706894 727746537 510853221 816163591 789775245 401161426 933961711 653989916 338983682 490842341 313460732 772547871 697125304 600765207 636658058 162638947 1014012448 402385585 779378958 1040069676 287541739 837472253 952757191 370415478 232021222 895278067 552836227 194078716 806521538 969184379 535827679 981570392 117783761 794526421 13884422 250730389 467460246 65515312 256319098 1073087381 255896062 1009635586 705349641 942039599 522891567 934631411 535613109 855469551 711589202 331148291 185332101 343756777 951451052 353402641 281129730 829844818 908145474 356955217 167229525 1067555099 625045836 100732503 199122872 539603499 482083479 95600964 594624590 1004450556 243762049 635382066 400142642 103345307 454392493 837608986 831625522 692783944 761514077 758807062 546722820 572174656 154901613 41360966 473377548 1006233101 499333886 844438411 44555324 96156567 281454032 139162674 387256471 1008565496 496678516 680855027 681177626 156192333 686788231 817831297 264324613 531344521 590077649 499001910 64539290 643205561 418544896 615800523 271785550 921246922 149297598 985840408 729238023 878971548 485578598 433311254 528510544 740852061 429222472 314328654 686356660 778015332 479321106 407617568 1021796258 275549853 61265840 802083920 786107251 175513785 539106474 630584208 59734294 373884869 702052162 1052567249 1302853 1031703944 963818809 319091910 824156635 389385690 341217938 318195547 1058946287 1211634 1045613979 5728555 781259949 934343219 99894687 275791747 806483244 46367522 823914626 444479122 936941511 832469221 45466376 844453198 873402410 183035362 1025089997 1047157781 46813717 733269797 504895530 486892487 904236260 994951046 79440265 271619950 549250953 38271335 573885144 291971362 962891555 7344539 676485001 485573291 837867702 838941500 664080776 840988540 525050496 894578072 192441499 93037210 618119167 564346208 698891302 792369067 627223461 395256450 303462075 768075504 473687008 955641135 124687971 164248422 491633313 80936035 677215912 754611273 987931827 375766074 1031570021 312736915 774816086 1025750854 1031316738 68982368 307017751 830552039 244104711 591089723 92172245 763705237 447365659 633037830 948290866 471176681 607873419 1049693820 1034309934 778585418 417300211 130677659 382079669 542614907 435862044 415681134 832490687 116753344 297827670 18923796 13144374 56864140 818704431 146419084 173422362 381482451 250576266 45340656 709253836 767852034 130366933 690417495 40473153 815723836 563627804 50922664 854853799 730168667 167528492 264338375 651608844 393881820 740721661 151686942 534489634 334600368 376162627 378800848 403286016 351131741 336434395 81591648 937993316 723453726 886724150 479744627 34100971 405889412 353848088 189855330 1042886758 925058112 488994163 783515306 232425630 807932019 607811773 68457847 185835477 664741981 241860654 981139908 781088267 27137938 531080822 699071862 711309032 798128737 399624295 595003480 587343580 761309841 66780827 486621414 269232382 369879255 532274989 326614704 981081082 655045453 131242875 67100791 470172280 417281428 329238825 204761702 653014783 764954715 714576488 448971676 812596467 615685716 864520404 427175730 633443520 542018528 353499232 1069420458 637535212 134796633 479565540 508380912 933025287 1058952522 760788070 1044851638 519121544 542402733 467358828 417180282 335466785 774123248 945325675 991438463 592110900 76602226 804181419 870079517 514883570 1027529684 206175375 368693806 378250506 763231653 287415123 508433561 597038836 661241267 343615427 613148957 174711593 489548804 532197972 625345068 145024338 992898796 579362601 839676756 604743357 145588456 37265540 471716486 44875456 93005328 766829021 771962926 519262061 705287027 203248890 821091977 718555 364585558 735130613 563821028 665944267 649409677 766108666 134988161 55236741 937373823 832089675 719561541 733522590 267465310 533879027 485449088 683373485 889796794 938239465 259430791 928808183 647690228 979217701 758048095 944825126 966179324 664380071 761007885 435639661 836918955 978943755 239285228 346275791 775042064 67288182 1049774991 672000360 47491448 554886973 711907047 843003532 838577720 1062071893 744795186 164346668 492573002 290527155 988371732 134290892 781361985 490941094 619656098 1031239347 313637197 446554382 1053634091 1056654803 430781667 910651544 924617034 753588907 740267369 1015369866 671351926 51501083 835014088 308885267 845287309 400120431 646575706 831607047 465512113 729987218 312710840 353986396 666417752 275579510 846149501 253019874 237424191 650947572 36168113 292855955 1023353565 50934178 227178977 625390957 115012378 277365799 402131735 657830631 554650640 613816574 970477275 427880140 992862169 208005371 793540343 315457881 51653220 903024373 407177353 123330546 424746333 41666919 987119823 476109180 777836035 339414927 186740474 748130687 613821761 166165701 1019106566 702230809 334124802 1060286980 714276825 1008849374 44304950 775064295 609029415 566424990 928341385 234865673 217482138 153500404 955453127 164957974 175848025 977643200 26032857 268092080 873361489 607874348 794883129 785061298 325377057 354644808 836253490 613568134 225516428 425778754 852607611 904111778 184842654 323851764 241189147 185996590 428233744 121486222 846883358 1073338177 46584955 216233043 199578415 350983539 932784921 853530808 386339324 491325447 438710265 197309536 313280313 436189942 436812089 437025392 999345548 362088176 281505840 751036397 276669068 923286919 571407592 320377782 715672051 539743428 484877 754260767 238278911 296957502 1048225731 805552617 214724142 461960570 235739725 1022438030 619905592 656603006 862471952 711362567 1005614642 997791768 244810343 320737261 954985054 930973470 994168381 483000455 951979699 878244755 124479651 1016405690 290337546 793620783 180379735 61554327 876897142 973627807 895960118 460271700 825416439 874697539 288114108 715493374 708108993 261921700 790602451 379577646 535557111 23047176 339283491 5880315 590391315 180380815 295549054 413195569 1057666336 452092857 220934426 700642061 855584924 301325805 43867098 191566708 476765753 930955269 22950218 723206862 853192611 425749715 40317004 1057754083 998370454 36497369 563676140 42352745 86166695 726938884 242744347 490138513 38946152 87289442 256276164 611095493 949018628 924180423 762280899 617882611 152181018 106453782 989907979 68461020 865183476 508970877 372265481 273351147 1069300103 943429827 1045927376 437777535 466491399 945472802 657322373 87604866 1062311175 330821078 373950277 917709 941638501 933062890 326272191 534162076 337334320 85880537 56221343 1028752973 376759787 426279936 470976152 244438469 697533676 95849109 337622204 643620303 502256135 564878090 966603472 652721107 1037000880 803689696 426728897 82664135 989683563 790186999 888090667 2725180 620885027 656408518 127475238 421235805 1017596862 531392536 940883685 71145879 87484689 106751593 631009869 1068335818 923000649 634881650 619296992 497908521 1067332510 928516893 451565280 797116413 488742907 53693319 723068609 252689573 93318024 566170446 362694372 78893111 506354498 995873930 675582155 251849174 391909552 769998815 995990627 894480677 789529909 293973361 10413821 259164820 673874345 450884144 934794590 352722401 952746496 30488199 1044082943 666285013 436737728 887247893 423062159 1012559176 357923398 1047115898 779232481 127205207 465229124 594851100 613252919 568115763 444485128 920946160 851819552 160080788 53852248 238307779 585093422 890115347 3067634 503235852 375567768 849657697 377042059 227833526 582988092 769405214 128959504 654818069 1051896355 191508388 1058546735 67739913 519947982 1026392408 479583594 399579412 1042754687 457080376 836452903 1006841548 115726133 922455232 121846339 295419380 812416057 967828230 806921442 103000215 329632011 539548838 920194658 1053931319 390471807 684423386 468063602 155360776 354462748 348864535 268599386 1048589506 877424572 802466490 666309770 395537869 217431133 6938097 176432015 732466100 434135123 779098617 459502954 55148599 262486114 563060704 73629711 216427176 676123180 145171378 237951153 828956049 577945125 671402952 694573580 424603926 463126748 801068323 968261497 68148638 398598309 252833379 391078725 537451958 222671553 147343366 613412969 121166900 375559740 394069360 336779807 179704504 185022898 231646611 1072597257 1015415023 11121412 564928594 592113741 1053406693 827597429 90371003 89408039 518099017 156041025 79462599 752871252 795458344 900786422 331813672 441796244 359348043 246131015 927103331 761882474 431396948 283663909 479224776 745893343 462702741 663676745 526224232 765197619 1047374414 309581629 660480523 618673822 364364099 256730218 132628316 407665313 660775264 62997383 685996459 375702192 252457746 230968788 943091093 253080752 85647426 975593229 438822664 77574096 1071294401 201530949 414940336 1005862514 588261646 369143575 331365023 206974914 358177910 966494405 214760033 39552856 313424278 299147331 295131936 983409779 1072523466 335838484 79437885 56789029 694618511 270543693 683470976 608253595 194337866 1070771034 351070677 225260796 120077762 734194214 548029761 58385733 811937801 633390611 835333436 125861408 623218053 297084718 231668521 5426749 370481045 961660455 948976667 133043330 1571626 516916649 907252257 314063625 1023510436 703023336 920679620 747804311 555330827 990464207 661927090 361343000 351486538 512464828 1048815730 811208474 729151634 119060327 325381695 594133694 336309063 652864800 721711491 31257682 877577924 374261435 1019931905 518957778 53918882 666657240 371746300 394144013 780459725 115901944 945629976 825220168 631234097 597751840 271390902 342203367 374581983 1038223552 975583670 700665981 169729915 182149087 671101216 554333222 673143770 773433530 617115780 804814116 205152443 883627869 403172810 961751832 885536928 143317502 313664460 1069832440 741558992 2853379 283413856 298638447 769472765 337938224 99890343 1003427689 38771661 314376438 569186146 474971809 263766254 273371548 699751501 300822586 441785701 27451439 994603717 608199718 444751766 639939105 776702952 530189887 722420446 721841064 366573024 2397602 888154276 779452081 798839952 1067317623 9336039 831060164 281928526 637462157 63054396 211671820 310131116 174478125 824336952 538308094 942018519 215644834 121659383 365569048 893851985 604392293 638180875 836537376 842444441 448367140 407178697 655047112 616775122 262521409 920717292 359267927 200025962 289354054 337629186 757294372 797164296 780240001 878495605 95714045 378705728 48016139 1044287359 444791531 630727209 634833034 578252777 258424302 400775537 606975482 19966092 44140135 942553710 354539155 882098106 226753072 906281420 775005222 941509455 910771733 639091791 610344190 677844530 874524930 639424303 268649248 662284541 749128591 112270895 516287562 28684099 789853735 737121887 54603714 428589198 898769724 370017695 953614399 540233209 749557649 283322997 485600963 1006524132 201887744 714515255 152824670 827636508 476191369 938047573 167540048 378799951 600596507 135845545 121002155 708241664 1001998624 794013201 629894217 85128005 595672249 961120545 142776924 583760537 504542930 867309382 977161594 323483674 166292365 44052600 1051198492 650159253 187890661 1038646163 775442220 93405440 793204681 483746295 1020168752 148568760 85245081 649227477 356753805 813641663 886452105 570248728 735733853 193695534 418259325 619960448 744194489 49860672 643980375 503802930 757224993 129947604 1004471951 579242122 326322353 633780551 965910732 211397556 923167882 828585775 569166827 712439924 715184310 935834282 879469374 425970544 235680474 149874921 738697509 833180340 369883932 61237943 278594298 1049369510 208451606 541748148 715637413 843629672 92974882 156509115 409271658 77083016 954742182 729628619 170087455 957600451 688538065 537658033 896863920 1035459167 497426558 192660523 517729478 942474269 517289954 653057216 984126866 994086510 315473624 1009367956 742199240 319508913 770676199 356432618 358349257 148260559 960225455 140358746 314425381 181377594 777153981 254808862 240796936 165115734 265846355 544627496 846217589 708890573 277696942 1013621195 784808188 726952847 558871174 848442649 67653132 176941413 773427685 705404583 962441874 695776957 436028367 155472583 903966870 825365278 869267419 38954847 526446632 411781109 328931439 621995282 1016078698 278829364 337752608 987455415 247951623 1017121786 33109821 383420957 678402666 1036398852 234535986 468546044 577472185 812327796 53106337 588272231 746316914 365863879 450626022 553407400 712274498 818343722 389609097 778005674 685838340 954604885 245175096 87070459 634093546 395509032 869196399 498521703 672115918 70954942 352719581 393473204 742137658 401811932 485648580 598886361 166995088 314245931 442447139 351364861 48209575 776472469 413677109 1068053383 247898626 715807532 343260532 963281649 756378764 928445504 999519720 780934129 781432479 565782043 1036815453 72100696 739738749 892940311 617402597 247360501 315295428 493705765 588514772 347758318 446098148 958916488 885692273 620680793 508304253 35064949 870795374 547326199 648063538 63224255 17048130 527133541 563180538 912662695 176733430 23433774 565807106 806295778 585333988 1042915973 329617751 956731922 20725121 1072811294 1000291803 625955177 258257329 478252617 157380650 665267371 254712392 764961431 660384075 500026601 492213109 640781565 1061391067 761877535 633493137 777298668 362724635 411420741 797131832 646496364 447560251 930407490 703522935 137990383 710387056 281650643 1013915833 1037237533 207864789 152764910 508345581 175931277 568235591 33796858 191834059 294326500 1072741817 756284822 351953876 921876178 525702018 741871771 894473967 662568620 648382320 566881287 206085378 736339906 120472116 193239894 661070356 695546956 991073392 980147036 578456305 91956763 59962242 1055791617 449369838 516483084 699412831 723584502 1020162961 854611745 1054264594 742882213 612294791 106456892 525257801 454552689 423605520 869793016 257921929 427956240 90000916 773719573 461546058 1007100023 698242592 175290542 74907374 16484408 666412562 910970836 319500818 776435883 562607684 239726487 599263535 204741067 1046684855 767894155 1056558823 63744287 311224242 191496714 687769390 42904518 918609493 893625946 207701075 405368096 268910470 960961782 1015431429 130971909 96589381 908340057 611667610 467532634 271119853 738567109 396033245 552375630 722079005 806258150 559557597 110524489 235448471 979722269 723667221 309489754 459022157 570782870 332100358 234033731 565174469 682636827 732028650 588655764 118946553 1061661334 863822342 131147378 959192836 156845658 875351147 35716939 1057180025 529338332 972139800 51602612 709380432 711596884 448228676 612654621 425974117 875196541 640656814 21816336 613820328 264238014 211841448 1067439797 351202724 279346369 24549179 351872337 900927641 986038383 109219874 518947319 264535377 897123962 158536160 294465012 361134949 696331540 422715399 979022046 1056549630 52430733 766677152 610232325 889338823 837813107 31672895 837893603 711553056 185287440 1031390292 732599424 743227593 75184278 108685581 2231864 345910588 1040291370 872243329 668934684 132016235 605874983 743745216 42614436 329100342 312144532 824913290 393687655 519802493 1059405359 1040510168 930895195 129840680 984172254 320042272 858768443 828821307 1063750430 304710109 705138665 47245070 1005326992 334151187 598700122 180044341 353582875 39762662 139008258 936013775 875377982 367080084 176695858 929456979 245684490 346068985 778561748 513282086 39429072 412715248 602162506 257162793 449962482 75472104 953702200 327919354 286234290 391216341 564666092 71652165 673911809 885998439 450438501 787393680 79711489 230594008 457996889 724141821 977609943 531977003 960227494 399741506 944560301 717058855 714878844 1032747470 385193809 29022737 326965216 216399330 748748668 342590220 370511272 625481777 652031502 840117929 127402330 788873585 904031739 443189439 1045478157 118684747 490283643 214639566 252300765 17605777 730063878 56118198 959598933 618605039 312765635 366063184 416834957 34891100 297007230 1043073277 683166750 167441957 894220604 580060007 177998250 791020235 970854540 637715850 182408166 458718365 483235884 978571008 577047780 760356851 921025668 249207791 228426477 588262621 885228332 1002113751 636940996 1059346069 216374798 680408926 382116552 725111893 239172020 979892746 307837082 848546787 78153418 608617035 96258473 350987958 833525253 523435257 453064057 823024329 761517974 200229651 564456022 726252233 611692945 947720791 838365865 834716161 193941948 387798137 262871210 327170508 603903357 565739426 228846889 558974440 364132322 958478551 234629430 451947691 701367758 563903149 250914648 617770995 101123830 720853851 98711374 397813122 248882502 824630193 950655291 303570491 577926023 1060227001 234254921 777002977 628753106 844193872 872273743 1046407318 521219628 310496773 98234184 1057242954 554747827 247241514 23582808 499636954 944276668 32946725 466423580 111207470 196358857 549626834 922749136 1015458807 189500385 121039551 186846348 787478119 163899737 225256474 565964252 531680202 819475961 858995636 926549395 701784876 904143414 540572000 360153573 937844267 303523942 272319457 529685059 837982332 46447929 169590721 913437674 286439917 1046448245 179681408 222071056 158268105 585568255 166888399 547395804 89934730 1034542880 542536866 63495235 689848296 623475165 908121929 487056902 518917947 542928500 90855256 737965341 120501161 218068881 903158190 32410457 387104279 892710858 246626292 685131166 319053141 716827908 86722235 455658479 1063429051 399575568 261579091 682039030 887842318 858600167 679086870 129252786 247556576 939339186 314695847 713910410 616262704 897258132 435746455 616498528 507944425 908227233 657080707 234615489 719541601 889838982 387862962 400144103 386534397 468335229 215837286 39071664 961754778 532453314 1005146942 464207626 850941716 594387369 27700405 911566254 942492109 102747051 1028874409 230154438 855723134 316066570 144752305 314735295 1011110134 688791917 751580467 29403174 434217662 433340640 806218341 403979653 901301719 700927963 1021100117 115218305 526705967 933824950 984747451 326169456 412678183 300694337 776371735 28170948 1058791383 10602657 1007308569 937777263 418906595 1020599640 433695678 998483144 997422910 116774413 167291241 272004368 945390686 996652571 48130106 360116540 909580062 50374580 78915219 658906546 328690718 258389411 276910912 717497187 514504190 92770384 65576718 110453398 710171181 463108455 90867737 129768608 872813924 902393870 57148632 179828519 535529311 482217513 592755141 1017767698 959909006 186488702 360446760 832764619 61081784 839895208 493829736 754342340 965313615 36478744 370272327 62030254 478688071 663628564 357213682 142088934 519583422 581430205 200479743 170849959 774428286 214145712 517700512 454607764 855002824 322143860 275629168 227658246 718941167 136606700 626113837 585793027 929897934 50745199 227219527 811174745 813132490 732827685 506891162 856592033 610639822 816172888 387581526 131112221 109872127 168842775 164085693 263705692 226104571 520816313 360800760 725015065 404364761 578907883 102510437 9914725 184674058 966036187 659318877 415994177 684932474 864131304 33902764 862288942 929350494 606846863 1061654713 138788014 708944537 142330835 883707080 258156373 576721567 575268958 561512705 395119583 713238292 729867950 375642053 944322343 921324112 457554544 345021429 212030765 361175267 901818739 597295630 245519516 57551799 727347146 52003187 533875646 295168831 295115860 228401063 602780281 167877406 921767114 129374889 55853306 1033250993 641218055 1058426916 167441263 868087549 555464077 852547180 877986497 382699442 988962364 1055584472 301749390 795006002 94657494 197818198 358733 1063281284 880873234 756481681 458896520 385444183 858571640 668838811 841809135 482229006 633143776 31271264 878448844 567731442 320609491 127035283 1024828973 380433771 561704884 1067476042 35968611 804041275 532660750 445516877 945945445 940979150 628577493 4390242 386127989 517484429 936411240 915715595 975781620 583523992 490484575 372414435 283229032 573691046 879409923 654393450 81286211 635235889 1017803977 315555728 626211155 876924356 895627968 779215500 1024276622 502983850 135194705 94024314 685271165 196071862 368230758 437412909 900039422 210498261 482851271 992498795 318730163 219560288 66423809 128626008 340679229 372238557 89847291 603033312 882949881 422667971 513013397 365829419 534806040 334131490 993467814 853970182 646108613 45768921 246467783 238018935 445667013 347073179 955673269 158165164 142256555 207203926 124500722 908010322 298616346 596405415 450944952 934558461 788095384 996754411 334853447 447146116 913290730 976040323 741311388 129094117 59332534 52494792 297675776 855983 902123219 454111180 341078455 464431506 670491748 683687195 386790513 930368509 715410681 586122981 858953022 825974355 1044260608 511595805 925523673 438012764 1033589101 789262345 890982901 174886402 145094689 97062337 653102810 883958721 972614884 640848583 48604185 865983935 633052840 905351295 1039105443 860166184 267188156 910654705 561776977 82049052 424340923 777018817 668900874 972568892 158711931 64779996 948737047 891003124 456175140 722098599 125364844 46180997 988242835 1063364383 553218967 59709202 143645218 380542941 370142226 907582866 631887987 1031143174 798254311 576434963 1017683181 324755702 435180828 753426359 182090701 556988531 738408496 31896184 55606553 34481537 937294856 967406487 484101442 574303528 851573073 11431472 665364844 811623666 121227033 567486899 243927770 287289028 50363797 665519694 402663592 21050740 353556463 471150168 7604192 295493781 236188943 574452860 900621931 688385761 471114436 982006591 370504245 905639811 1016012077 1045338412 192852633 62393831 1004411813 372915551 379758604 714585060 200662721 265419568 776451472 242328351 259314199 50515380 497255283 139808431 85682381 1054448740 987349596 719078186 131052839 738072243 509072651 49348709 420033771 542491348 987479957 1022124547 349486810 322943431 581091778 72783626 257291263 334494657 545513531 271942113 436707780 401469790 2545977 561394417 1060433620 711232398 309415767 99448192 72802103 511260856 315568911 959442319 476488759 942469561 414427673 747021488 541813755 815101592 568132625 882084319 403564588 931464731 673654211 223342158 409079056 15709905 630651499 21777367 334257609 975408787 688870260 883812646 35787925 388759352 315660317 1060534379 828516628 354514027 281946379 256991821 108594734 760079556 295093111 4321336 17685731 1044387089 932197266 231643927 540911923 265557418 159358926 294346409 49801607 888010955 171593389 751567609 726548011 769981333 456783884 6544189 312641764 234983531 938787709 271802776 834721618 275001518 927763776 60707903 949991807 914322094 886721400 210780361 589706753 805149260 95059041 651393570 241141287 798065343 1014925656 948925594 1069844754 808062325 695667739 282890214 914156300 322594341 702480915 1008237660 796368844 751998136 722623646 617654205 107520324 152512559 266822739 538636880 894668319 891949308 312371625 1069436118 1027125534 306320354 1051733335 153834959 119498132 500299868 49732766 952283475 885804344 708357967 68190406 1000681457 1072078763 939661144 1053027021 100235691 339320177 884009997 998636217 567470915 345168368 755120826 857933396 496023883 548127238 665399761 228014782 750917997 974551620 811106380 914954727 293785465 123515238 26957065 770009574 786022979 684147847 277692068 618848118 248443570 81110937 823671814 294542986 221937568 415670169 701888604 123783737 856954975 499769108 51605534 1042482897 389712301 889066891 666908150 964602734 88022554 1006669744 747880430 50821495 215211333 316067786 900961572 773392238 1011905100 607259465 148116193 854208381 858976239 891574041 804156018 28552542 490526126 301477645 93931873 1064537191 989873537 233880499 913417474 983726961 896254484 49870517 473882021 935672351 678687777 179963929 888328611 1044735983 81174740 262029600 561422183 886162132 666191072 343833464 420831425 976845234 1066067108 976778463 279127372 435480979 375462157 680152778 726315980 75589138 785562744 364554388 454734168 679419048 224119378 262637623 185780027 290735673 885991280 636583778 375166498 949694718 756097669 714430229 992927562 396247747 722267275 408596989 105006833 468877818 777154224 369410834 57666916 271893475 65222144 890356226 205128043 62546776 210125884 696389752 556077323 658680229 679506694 306842146 916166764 168052116 698402478 113808297 305389383 834341305 771054007 645205046 149410157 570243311 945411041 642684550 331903321 226624576 628344681 288719159 119476066 802257160 46257482 314463822 152514203 638569426 50468383 282924902 359412039 831118276 484603544 72708663 194781768 176037734 241240507 276578930 630309144 807054607 207267400 403338888 527534747 733953953 305264823 1045707873 787190853 366062731 149067225 803778041 430239673 983387183 916256068 742414078 60681337 235259924 242028079 97234730 63354743 817491762 803529049 1049659432 607450887 790451735 765396497 603047304 137148628 669189321 269528620 858200358 700219194 463517748 375443869 904674704 922772994 818867651 76681648 1002833141 871182062 496868013 246490533 13900372 733932541 891920398 924713613 686794035 737637135 403939181 385184686 562927205 267185225 438426387 743301389 319251284 470013598 212295063 571472812 834611450 102681031 354245189 196849337 764288813 818101560 809835841 230796299 278006035 796026691 48122505 982506533 548379824 423178805 843755540 63276682 693874856 997134303 542144745 873089427 679480708 1054006466 635106254 805265395 67478034 239425560 515139155 18638535 449781165 498223345 804408915 637305936 854250607 862564146 609836044 442856757 746694615 845975460 251214160 87046779 949265127 534432554 597364640 641183971 687998953 288750452 732325754 669799720 312446737 134879665 323517571 665111631 311942930 272181349 405204137 1070165373 702776656 335228812 719910245 786091472 120718140 378173959 1031314962 666459472 302732880 324619827 350113062 525103094 445490929 47185180 725149500 659873534 593517526 975127432 761800795 82663441 452620 758739616 838890060 358304205 1071926020 800156846 1068676452 359683677 303452145 339330778 175962403 567346029 867743825 583026815 953130760 919312527 530709259 518206268 146410877 653780624 633048815 170944474 102040273 603739364 814678252 657702797 794003762 74629208 424560981 365145619 292475127 213884074 724570557 431138661 269149661 390980242 95722654 480103942 248543900 755438762 367145417 159019996 896780852 6254242 284627221 494918028 1040091600 1059783949 714563158 85869361 996459286 52004378 75162645 972930123 894344128 945246184 287107016 806317654 864557215 255506587 506068030 904382302 694304804 295457642 367217610 709124750 445015993 653417379 778148582 351776473 790956158 599459385 897522238 396151686 314496304 838648506 758888861 44238718 701483581 92852872 93090475 376114227 207710245 762751513 491045593 25428820 151326775 465389468 622746998 472588911 363996152 644828765 787701984 556788536 89717783 226042669 198712477 327118502 574333078 216016983 1062357238 165201612 272487547 1070380715 498134704 694501317 836777650 848841400 1017502419 89210252 165899595 803768960 508148714 177322875 394111470 511551311 964415802 725057820 550195334 386450209 109689757 999379203 63875539 18248806 57607021 786552135 757848904 400689227 50875547 943938806 408741489 116066069 685329691 394013872 605771598 413114016 785530972 959181324 465773763 1035070862 39468158 221459657 1028923993 510579550 308087493 913817079 169193449 1007823987 826362282 455722955 610651465 731760296 228894523 507264315 357910209 961658245 97573330 418388516 1029389310 17213430 1051433576 15801185 1015020540 1028828644 902688923 940941327 211980370 444017355 26538737 704964360 994978946 641180940 52749603 26792722 768946432 66230986 208160712 958148427 241068565 115010938 661330921 1020233782 759681298 667889267 795290670 411898378 1034760243 94193227 300664669 481990496 875712393 120893811 746250226 578951318 445831865 150568992 868121918 962992869 868939900 387739876 1006651738 1002010536 130920395 261953338 801583788 620269041 264651296 709110767 234036526 479499593 883751873 326994056 503163982 753013139 918017372 262168173 82691841 184944127 515618429 1060349260 945703098 355892565 513520553 904240585 578665785 998398564 488616512 178321638 340943449 383095493 1045485215 197353976 213150420 320611637 753680064 831836647 409386979 523017766 1065706919 384462896 903763557 386046254 1052169788 836009730 124023816 735903523 993505392 313546438 984748245 43903544 156364585 673756905 72668685 799174776 1048474680 373667411 821469917 573059560 846762181 177479228 795578472 289472324 663426215 409831626 458028928 397151114 259832948 690494471 983850534 773829397 694939320 817554363 39636430 605953179 204268139 884233650 180956066 599217921 536979982 118141423 951341806 945192902 395443171 343408193 618383658 710810307 611812916 107694784 359614934 521993660 19683458 889797606 713090566 1050612346 142053771 706762030 824754225 1018797818 1055814224 680688438 21141982 449103117 904942097 253557631 858581016 701278797 806908001 1072039691 214186780 309121675 157693497 448297227 525272003 438316299 866100671 332743457 164680088 890366725 184066740 639784126 51672111 773967014 225264058 659159520 733158673 999914957 178499126 618933374 543737360 507612981 258330991 212317916 667147138 240214482 967682383 998393925 523043779 637433602 757087993 480495658 911653543 528195985 923939155 797162130 131509515 253401583 532289363 579391661 544797318 712803775 430168503 676520152 747952463 965124188 425964113 867461839 919472966 950919992 355482371 705699311 132655237 406278707 273922500 1059911557 668218261 162291850 645525281 681719425 112234580 79037359 539770845 1027276902 1031495029 614382259 923300959 157877224 996799212 82017443 778764767 493097444 530049861 420993445 817914431 87815400 163247694 596773277 126806775 679161572 246127409 209726810 1050809400 713214915 744376398 516976129 497145582 45353068 1001571704 160648345 938860011 863260786 967520859 5752789 1028477033 664629372 1034416696 583810940 581308855 33955795 735592574 227913446 1013135404 198167367 784191654 948301973 829794242 185128431 163058594 1019892754 384861034 95938021 851986187 564598415 939476743 791990147 140982056 288931531 113547552 1015541478 89998766 698346267 832022667 250742510 663289029 706036248 596698378 869420348 169231627 1069177766 1066887814 316136291 848162296 250419657 957245524 207186453 1048623409 521684690 72396488 766983011 727884450 474286037 1061326588 1029555375 984038382 1043088004 597045834 646453461 891964143 939866608 358617363 695395576 264298725 872880675 531161357 636585297 467474146 221510994 140392772 302701930 799207299 60469157 583293324 727932630 467318048 64655397 391992850 775154933 615028648 1044456183 956931036 429879765 597388920 678489642 906197984 674979885 419600759 1004519984 89763324 529427479 625407033 448397599 1066283471 1035221273 925998174 329923318 621981524 189521591 262166151 1000759732 50495911 621043529 301232425 619891512 294156524 428208084 158685612 111577917 467060816 871307556 599742125 123040830 367199092 567539180 886775045 187383611 663364673 39537379 389250472 915904420 249815576 975059846 274234897 425612703 892697001 230389874 864341414 663285155 416969342 5630187 790391139 17730555 871323717 331071551 608970966 508838194 625502535 991783806 631669474 705013781 35389515 927576723 694213154 196674331 613168328 333228417 51704841 323189191 381971024 202680533 43695000 874995817 522812579 19074738 404165352 326420873 778053410 418284522 51776573 780368665 707797576 1065463037 751807752 953420592 337534719 661997466 135855577 749380839 168122057 910897234 295609281 563859389 153948687 152784419 532347475 873778981 159356018 702476912 32927731 10898179 133176197 432467249 1032252040 692918983 539402687 229607093 689411275 1025195854 313275977 721260755 468659099 602692330 490194422 635271059 605049385 1027827236 915426084 1050074774 1065890203 723888181 462580271 543126199 109477440 503153586 946964699 932659461 366770501 403132825 44098614 678792887 814818646 660419694 516925960 259900038 788825080 667187199 21909963 645179469 248549481 225152849 488009667 150987729 729379838 887683086 1040143449 381223998 531436451 825128971 491631553 393458049 173401812 820546660 761371395 484920002 433109011 603843375 433039279 350706350 721889543 495666137 1014412805 466318298 321478940 663325910 888214421 509023737 109933848 365455980 716862233 815698585 974265090 915204698 809152978 658870899 730611957 300746958 963502398 573073625 533397784 40600571 1039671772 387653402 641068480 578343908 1066998683 759361428 612274404 1033116546 578528578 1044147776 932565500 114878374 103467512 886132156 960300594 480403473 1009489416 588408105 387733769 476380270 984300236 369263168 220471868 819817462 920349033 338611990 345579140 470722902 24839740 812500087 785224348 14798931 604990305 695416964 1031517570 649102086 251955234 112214885 488628774 694713560 575608797 398179121 922582773 616060046 737993521 715405279 858580744 977199567 51986150 314245046 259861299 385587847 535400736 322306240 380303309 115918360 896425084 1052168299 903554846 126359870 784141504 1036207015 497330043 801278654 573315641 245499908 1026821229 904231172 106831123 228778112 396188173 653455943 911884300 1008445498 222562745 712228800 199442858 352293713 897910359 247177210 790677354 141201865 498325111 396394753 718407346 178623984 83944898 699842413 828683883 934443792 668297762 968323050 838874389 632374565 870373578 312665265 377333078 877326866 31966230 366317965 57982045 695049338 762094303 1064252055 766840725 347633587 329253276 345564478 444104639 1015860336 33766914 97520715 964139650 883707178 799397406 10839170 164424118 262340351 273615963 856838983 134675473 581403765 1058849455 890089901 293200502 813160996 385757160 943686874 331903655 475876840 44454025 946176604 157301350 898560916 176331241 47146177 574401375 870266582 245905659 38951066 501187385 1040005577 227007223 388977237 613325938 505991199 527844869 554883598 170783259 636658222 625332609 206263930 250128098 614317914 1001745906 38219539 236375702 568939596 792832392 827191190 935474459 686213358 871327969 974664001 258694490 714901955 1014106195 586399785 743482506 766033765 577017187 336656235 574996156 97557261 880901596 1064695668 324003392 300728707 858060389 399369490 782935409 363797805 341374887 95016043 524809025 599161654 116047757 576778601 6368702 779526478 856633335 1031420649 862131773 164624093 100281014 546675266 759003588 882607099 1015250629 786442796 427741207 573964645 390396327 1037075131 189556129 561938992 744952517 489448329 1017550570 833026677 424469661 760155636 338710823 387491857 508340160 676603678 30240174 369033271 171354606 112442769 806344272 121008633 1001197279 674362644 643836375 656782232 523400215 1046021012 327877894 368037375 643960210 832731346 1001834269 1013579238 456376946 184438050 220933453 446685762 667347487 471642069 276421355 1024563121 769109480 205832196 512986189 1043716112 874803077 750648424 708254369 908017294 4362121 390751433 300681401 763229659 255067861 779842552 737857760 39785369 408877728 233885847 242784181 965182672 51339155 733343147 19101240 457944148 1037331019 393799286 613795238 170044073 144635338 229871057 428682076 419057625 994835400 537903425 100727128 312126018 928428575 82419742 981385530 1043138314 281600240 905840205 224982807 379646679 342324594 983862708 870465892 163775406 947587575 928304680 439006119 545594198 1010761296 857044026 1068998381 539484088 44181010 514396322 622281835 1008957574 175809230 250945127 969602957 104409171 600729986 735275055 195862739 697069413 972093619 580273053 52905365 901780126 1046641944 242578514 225612742 328360276 1309149 351033736 844631740 911869886 240013667 164205470 318627640 792759408 264581654 322402997 909445577 779342426 653254119 746208201 310192678 300133010 860974509 628487847 278512369 391228753 619763913 921625290 369148264 304489045 149644158 442322018 852047259 575865838 235331200 48956157 171475139 1056157924 534308292 584128006 1054627283 456940535 40567634 407630271 99908451 466198846 943392435 228995062 735094835 211387879 566157649 365215480 212622365 321512947 508111964 590458143 555364655 523924656 74541911 515466290 496680488 317267780 544490694 137238883 342773667 236718545 272245532 496651763 15734423 433687549 251169164 458169771 426729307 65751358 904267181 982972512 742018476 455819642 830058427 960321767 38133556 723717337 595251895 1034840482 187979065 551005740 610078822 667627370 780949068 77320509 914962557 629276930 248725957 567956503 104992042 1057071618 707531614 754085525 34801021 1059440373 350545397 1043985300 170956669 886742644 694342471 1014110857 549279871 445529859 249911230 464701334 655744026 610983606 1013091013 121450898 94970735 1000174268 1015051996 667602332 899089863 133017440 844625950 121911368 761926971 249165211 530687377 289265416 390076238 950722497 336621661 465068524 963110033 626873383 566742930 1034981440 509426131 481231626 820709711 109413198 617133179 962137902 631708610 965143676 788348247 1041078897 448904572 7028139 866063617 524753161 478328828 446645916 1063299259 242270490 223168130 176438167 168053329 282270404 623910963 895734381 257951927 546383311 913636045 807185640 229042681 12654602 386713142 481774797 876239871 897144637 72060892 183411345 395735235 920181258 821670050 475986593 672883209 144913777 1053147054 1016044754 282706192 886463313 576080204 339225904 59975824 511665779 1032526171 36812483 221352624 699421241 102806739 85952138 957572670 438035720 647405745 135971777 340362478 769488181 823636509 703172558 953220813 377479936 482357671 832546467 536289856 407228699 976218954 931800671 476725791 140027766 935331855 892986477 161708537 193029072 768131613 226674117 140878721 54851123 30015935 141096839 1014915857 547244508 216226151 620971952 904682029 761056527 399417223 588173202 642211531 313870775 754310370 964872199 154720820 771210729 455898025 57727393 960373460 641227343 179232108 386000437 699266257 470458550 889312486 477147227 360947264 342350610 758841768 218875034 825843825 39088174 653491949 903327088 247509556 759127279 793469813 484651357 994477556 687481271 867406944 410298402 510629328 560088094 704001072 256530026 715400496 1063051349 957936256 592647656 956914053 652116061 121114670 835152981 602900081 864270031 431142677 180862620 620059176 845316828 774962423 765429535 1056858964 437615256 1012438547 379421753 512165919 958179683 325220937 665644515 248445061 355829423 1029404211 229263202 801114583 192879355 53457465 471235230 126251420 227956970 444436786 246052277 780621060 678503047 261718605 153880908 800477332 1024198687 200343741 999946330 187918860 550828386 8348263 272746284 781486558 150683625 853389504 733526729 995742691 780763955 70274871 165422357 144745531 327389039 205048250 55267702 731336719 79784172 753875364 410199545 111162728 603380210 614963365 443393597 1038795137 840016890 772130244 370011515 1048073662 177585085 804494778 77997141 203531164 170158359 561172231 32550302 1039152160 502442707 696107357 60244489 967613143 199977952 165464266 194098773 809940015 835041983 848156619 710135533 1013774336 1049695530 112028930 629060452 428425712 937415988 975345514 755320625 327026994 544167987 95041457 941485695 529788269 1063089343 208281540 252850696 299666123 452268244 682244594 792020482 519485344 825214124 615660195 1041486885 240462941 860926773 260189248 260470484 244102910 612038142 133068546 968714006 275910955 133314167 923727115 1023938571 527420667 147151591 909300725 684849720 59853443 155614926 1059932031 458095830 54101442 427518971 123972930 982122340 517354557 843638023 822174693 627466036 807178573 898025100 935735101 1046058661 625885601 825930085 388870356 153929333 155768737 336056644 487358080 275351176 944402146 1018876618 225083204 766599331 536359011 137286702 599780635 926762685 322769525 762866713 219180841 858997271 316161053 904390370 17369075 661376297 964257369 570261958 984533700 534101007 873234811 996614604 340020441 951617462 732337675 86973353 364752811 419299463 536469548 1026977208 97251200 249730358 285546604 335824450 890644765 991055159 1063347741 505754588 301294720 948299943 1006353933 944146203 43181330 677061543 147057013 653431511 72946671 1017084432 779465688 954138666 53141956 372124885 897514438 306035982 860714768 904210441 720783847 658790864 158495483 217735773 153353458 751350618 1054351508 498674148 1053134463 572686450 912275691 1064973019 394855122 203357457 696658709 803483476 912899930 960530153 126059007 609477627 553528117 272897755 882999235 19602619 462918754 1065429338 1073074107 460802386 722260796 842748581 945650472 860481501 135371576 631838248 838049228 388112022 1038597527 909740603 587861852 1008312123 1000041969 393990914 957292878 87464068 204683625 1010523167 44992814 482238535 274589897 445385753 676034486 75015856 990214831 666266088 817128156 286120667 612852289 547735155 278936268 809296357 636649863 974532538 810038068 704735062 273922002 165859983 573464046 102310356 344895967 542588662 1037782602 431337571 851273646 694197951 670298954 727861159 934489193 106951776 883114645 433183704 104037465 566660697 158561078 151292814 1026591473 801457794 218935423 537798365 752564641 483755826 244622809 1034789699 767113345 607790202 531193325 893125896 689430829 76035895 989349194 983192768 576193327 1022107644 877389264 1030327035 982207368 952272395 122891407 626415304 409017496 4800566 39765823 58768383 745023320 345831049 1068074488 751449688 961245850 980328162 736809920 505253743 891877291 392376384 557867041 855337031 80910755 559553088 542495285 457434985 33324566 142747753 725186774 67302517 946384806 521672116 52342568 133747900 9240597 914020048 66541939 356557085 908810174 571268068 861657121 531191136 325466914 605030465 317536854 157621595 425187686 995888783 171338847 164771336 942536267 471404675 810992427 402942551 390167342 968221421 756144653 754000654 935256198 1012859224 739727846 188449727 176581604 7482929 999801450 1005181765 131231176 874653159 125750840 76902987 578075828 368357930 553058016 53019373 562858204 93820149 449985754 564281906 417141082 420563375 173170658 586096368 308562451 157587374 12488048 184836781 737834316 615418916 928093842 848193101 123805275 916717135 501466678 701866187 738508174 39835442 498331574 24142195 513609604 310659304 523754189 612113381 993051446 86548100 168357854 757266570 392300387 902900286 370740413 127256843 101261084 486099444 851752203 650540381 47154864 780938525 643297335 378700170 492837593 676939672 210411454 943658142 138079471 183052122 550502393 878228364 291995774 365604389 98357806 693352136 718363624 84906123 97241046 235057140 307990800 469454346 816081427 592495211 262411452 611802401 536959709 255020067 47821708 564341951 1007640634 992604508 873333029 155840189 28185061 528907932 854134499 514059297 115149186 286419331 56213375 993693842 726622723 243913283 652604941 994211724 272901459 270472185 854420307 468506569 204873557 333376433 173158455 507340277 1034498381 258806668 541171237 494632165 769086686 233728474 245838742 676926318 597680554 590999190 164810953 1027168782 943332368 521510885 984220304 638378157 833750771 968526449 493271290 851538083 999039017 993768524 603585410 801432864 377159524 39330233 577122086 60224501 944220960 297395390 625508500 69529717 787963753 352512463 574154257 14547255 493356398 529441985 876329713 907439653 937325165 363758796 563753594 382007157 887035401 658192659 673707887 426049840 749270311 201391646 923414810 949844028 272728814 606527572 1062304829 1007953660 30716649 453764808 636182237 97872489 412181976 750008927 815518377 616406122 302165560 293652798 486553150 8468007 312300156 687180898 852193465 165663199 722727807 44390093 374258379 611083343 52540072 961621995 171377434 959033376 604973496 131971484 396987147 86669770 451985657 257433181 715757329 815912701 1018709642 154260072 479764956 176265864 616986177 971253217 567004463 730923212 919180369 15374971 135114713 703311090 780640017 394366080 862782928 784341029 848735359 614916999 923837729 111891415 967737412 22776363 408899576 1001854480 898978509 10738601 872356351 922053223 645263447 498820664 186527504 876130862 329118231 855449674 856750814 927061308 409686811 292056187 333077028 1042001833 705945784 1057627979 147219428 22021002 728414189 904002647 649087896 301660518 1010554139 176817850 750948026 709322435 964151736 645439112 1069650052 417993076 273094817 77525348 856566395 645300041 506256487 734242116 496231156 252232784 248722508 843590581 545980853 881674260 836782089 881300597 16138312 866702360 934686090 809421098 660912599 138600758 1054772337 261557415 427855241 960897018 835904702 717562174 253610047 922750049 129298686 194767787 628308999 533133013 114192834 924420919 912156518 878306941 775871981 582950274 1786938 941992067 773966204 898750577 239832382 809501991 150809983 696398131 972643341 238402352 774747788 70109749 310260001 61245374 295546939 945456666 792940891 960971172 786165147 401437894 714640831 749941258 28459546 880014872 920797154 163128676 430986000 278970220 508079284 608813623 423982232 171642887 261771046 200461645 761799287 1035851987 257933396 300838326 363897089 469309178 376621369 518684259 731699143 999984233 610346157 154050146 1012238714 429247359 158480784 507064209 54253107 403209858 356782670 916000975 900886617 399702160 208986732 23507940 737074577 112831840 415676537 771605757 820222841 188118792 1011524071 509463920 338279518 988560809 1050720317 583436533 441834029 262550312 86656889 874680284 940491635 476744504 578319970 12662358 827760432 358751051 1036029952 341697055 731136827 343410776 718294515 767879149 342380873 103852898 25212557 211508246 842714949 211121986 389580490 922178298 102746347 845281782 138704602 860379713 80544141 828826708 975891355 524536830 524348110 423032893 301715924 717218597 380679175 787932507 180388640 277532215 491672160 576325473 969309782 771017797 313905035 830231580 959031824 122174500 993410574 997027117 545441542 688478200 891609117 100076935 221225632 419449741 865518979 665070687 263536880 592018541 315993911 278553806 251834091 573934892 707760482 715586655 113230685 986167911 942439 1047958689 208527616 599709038 794629338 957990005 579909444 806679532 728940201 137414241 767877397 153244620 582293386 483964691 937726158 991129557 584386009 95498712 457680331 372844029 721155269 765539002 984807091 180855927 896900048 678191100 65471221 317948395 798022108 367178540 579254719 530003829 1006181685 922884605 414174820 625635135 1058048766 765795265 479349470 931538775 494265143 777021189 52581119 310275329 673031311 255423678 485986628 849858246 889834322 416143383 283251066 511992092 491049237 912898183 600108400 839731512 51934554 826270172 916379464 574438182 385989378 584173550 441331393 83643891 256812112 775189796 270480902 146138802 373051957 544668260 516300671 603978404 132155844 229966125 661494140 33245472 41827748 924027518 999907983 349237637 202656716 1045507826 907835358 557762524 897997655 861654784 579705498 269863981 504984567 232549115 531768601 472007598 139085488 618569126 272478085 493569003 361471450 370991701 549031320 403062150 406798632 750620349 276313354 840886791 627956048 1068948964 440119066 385115833 564458969 69099436 19767030 805183799 818016128 328411206 587668413 247073029 1045668695 577744387 523320864 497066815 305241722 195695105 530496583 835969367 447412304 442856191 728000654 498452339 1068516027 929586105 184003870 792290852 929680916 612886296 194889709 845779958 601442124 1058826700 924985274 851308525 893870109 836100984 500516444 450127622 322530165 9103218 1057965753 183460266 186294957 196940003 340208061 1004080760 275206858 767426730 590503623 388637108 693622139 839468878 544080980 742505096 879070036 891509629 724387691 1058864571 635218591 946808617 1055938961 626648022 30380467 168630520 996600372 955179058 123801048 551317322 734702559 1021120829 59077656 1057129970 319029795 241989924 1055226959 21911036 192724710 522087906 412874326 707564096 334685583 500033346 606978605 132659670 342177607 530163054 1062758815 25360702 895503831 47461757 26702427 170466234 870322827 649130408 756132124 188238807 915763416 1001485129 1047756152 328224168 959201332 288528513 523644008 697188104 907242372 694785131 311643649 751628862 265305020 459734052 362843337 93449996 590716571 536720802 152781192 810215314 531660520 997247414 869771542 333283764 972528152 659462960 357314882 265712089 388952808 320539860 954515421 6393547 216495574 916152163 993110190 394357275 1001682652 28017537 115429484 636134962 766602200 385105742 223661206 842093227 145156733 751588071 712303435 448001506 990262360 569272839 843583586 465652316 267114008 753045614 131597288 771431744 372488156 953516361 850607294 705084655 932242258 145343902 141018095 61471374 382077089 187534547 994171913 447649615 141373373 106500643 538648635 198688532 936733316 454735560 84782048 661144341 711939695 382052905 1049938019 773515556 958066426 699107699 376013767 897353964 283243847 346059440 170155778 309840937 537304291 763556297 822921834 502119138 389691325 435661860 388295551 605537661 493328779 426483322 71440529 381701142 982818228 542809628 505437529 964715635 254512374 59955434 12787972 868788708 433740633 732361513 216901057 25771093 149587424 790760692 876388499 658320151 407319856 352355277 550988953 767440724 8765145 861083961 946713736 259188964 656054617 293950825 326445018 704584342 20519750 815773574 397788926 58653864 811793904 470699497 574987871 344468400 234544422 683173252 685834027 394074636 878949971 892344386 767798347 293755616 456737483 496080669 492645824 781951687 517885442 722813033 160042891 763322692 61193626 936174009 500331257 433701489 951396731 458221073 153624182 117594907 187388522 186750718 906260275 471335251 680688308 137540668 1062693941 939540646 533673011 780330068 95555345 507858924 993789498 84078292 492296713 1009327960 1061671351 700915122 855759034 529359153 818703704 223480439 240504332 353637946 385447204 986564606 818880147 32782354 895234675 380532435 648887529 70086441 585444381 877642281 389121131 256094097 247261826 371954987 570033937 139828919 964970815 128498523 890875574 914436325 24003388 108118389 973690904 905068853 130162091 230720021 211514593 356522932 595510930 374873622 597406 578503954 873101093 650807566 1056155163 311685874 831462249 677308931 437441678 937890757 107939545 628113892 630076474 685715809 622456756 449382008 380697510 374615648 1050346884 97897593 860455518 377538474 289204962 497771909 901254413 675377853 955034541 251741601 975950635 727659385 244916588 802504497 200263946 14804032 580280709 421111857 472393201 4221581 577664417 855820415 1012161192 416927228 16061094 4143809 642080488 674430171 159569294 119411636 277003627 600364678 1041140153 185368246 332546431 272369229 168391380 466724674 85852663 673279218 217442059 342304084 790669842 495322215 831122142 68848892 877046743 44419361 848121170 324665483 419418615 1002499292 96196455 438061775 851385659 691623404 737374689 311673586 987772197 73822528 139861779 903462190 593759936 637743577 221220357 574547340 268176458 388367757 612843255 592548369 266057463 945018636 110050184 737510514 656316359 493052121 675256467 69907145 1013363546 140521460 557404964 364758706 165641381 644636235 112371151 548116965 171781786 450291717 70791571 199759960 931773898 725632626 94572166 160792598 269431520 1022840710 660837270 435375338 8159921 536673127 388168667 817949768 376660392 351902926 263204600 201599811 459448351 635871867 208704190 140729905 342824950 466546918 465509089 171280563 235905352 770097913 153607909 288852534 717195628 293797671 644150513 975687154 580931681 900790557 776507659 395883613 92423764 747197060 178042652 673249638 93983215 357823990 665720805 533476445 588646533 598326272 595291294 915548596 682332909 856344785 532855841 962631530 634536806 788561845 873120783 786105483 1039830242 90843470 911997863 371067399 63173553 379196440 494338042 125004879 654161996 164581220 115447353 967736940 779163336 544456966 531752132 867959238 520447630 1019787507 615644694 27432916 320390536 590428534 290463049 956732204 568969649 146486011 207469625 235489584 442172795 634918906 903908511 307251708 26543345 429124946 166606393 266290358 565123664 715054084 149489328 142614774 611220512 978345817 646121969 362043426 362242986 903161447 81049348 901992185 94485667 681148410 526773646 280124868 708185790 142191979 922084534 582872500 562866202 491589859 395802744 680336688 811304872 1018404604 911399501 680672981 102119810 923384280 368521936 637315326 518556239 1044967404 1065512975 630704417 491528759 526426711 158457532 280257233 1072858278 744400864 875292086 440710182 828026311 689715352 704733175 979670338 176637937 866518559 535339944 110908544 1055434205 916080670 353141815 52015711 621958904 621661290 417543040 379437318 42697846 208512473 118967103 774708398 1039392632 959393812 406414455 137105639 460472825 1001120058 309853767 796736085 667942754 530740228 442127512 320990508 1033207421 806971449 815619903 1001059629 89648981 134282101 672722285 1045602971 559033155 176098013 119466736 113040993 345535217 1038811112 521589972 487458718 342603897 7554705 968680486 690174936 724817686 781247717 13922078 476170671 426139587 889528729 365942895 827063683 282235812 93728474 784559963 235960 132904794 931829014 240852437 434938763 949724454 307501019 55826417 1069531142 214972201 672386419 753008529 155902378 649916511 305496239 785285655 1014185294 1005157994 1061236238 538365075 741879191 719652716 797667937 997597667 829111408 559067301 79044777 766903186 84200114 919555842 1025239659 874324897 316557475 632393161 395933469 635431477 1048138175 611845315 1065649577 710374926 932957300 465087448 522665323 574119029 45012929 830256519 22863386 20700413 159652601 1058403286 695107185 600705466 383724807 1003089586 378260777 995129570 114955184 580111669 582049249 358147459 512146044 212504833 849726866 930304585 1067354903 70043652 272194003 571831241 966379023 373185298 640562819 519468037 845449945 916824303 590315373 604757365 211716782 153554755 466495059 568761910 811688689 1056576108 898946100 1034160500 793209941 261764567 625398681 288965316 372808284 645465862 136182975 471153106 337204625 188799274 1007876994 550402240 410854724 731559446 544785709 234784294 412540196 752014889 321524270 344627310 1065687951 190706073 810151280 353202298 1026759173 632844638 753760887 168250187 1796073 612444234 908293913 369158870 493815631 785021122 570516169 363835654 166797952 251057548 96088182 218288147 454165548 279655028 394499811 540555578 387891202 133927146 1047595612 377172844 561446004 535729244 4688465 65675536 821016171 1072548115 10249238 1057288559 327738387 609669905 205209259 5251948 408107531 333773674 77154999 231928621 517035624 314563090 59578672 897580930 256021581 342048800 291078488 247927630 369122217 801284688 700881849 628440847 998436065 786405941 802165027 692049442 978475726 231385309 533966185 828711932 908362407 696099849 1036860610 37689634 830570523 1023659112 611774369 299767995 239320159 230570097 337218516 41050275 525569153 74558461 942619535 394256484 315831724 1053606423 444517161 355771005 932567847 744288479 78339315 896497319 345417602 339406446 1045532883 490803386 304123851 468490968 1039004248 83048187 1061376050 95149532 925263690 813339990 33608367 111276179 704992362 976571158 739972121 970347534 184633700 929128901 477886208 789670720 107820591 642664959 882018560 204805698 868667240 369509152 116071476 162104205 482319215 900410637 641561188 1023159918 827061 599180979 463118469 27047909 759241367 682905407 606308289 503986103 754273182 1067745109 537095242 1013624406 475789265 832939830 462503103 22929404 445090000 372782699 737044406 29525758 434055571 849953069 25320894 227609461 353649633 653795314 615389212 150121879 617777922 708401210 154087788 979615108 923542990 919839169 548046209 398031210 506835437 661087665 696171227 264855504 858241384 98967523 1032946610 70948319 810899742 111788408 1005348685 589637066 193690153 878383670 125628720 114234578 127170239 1048343710 935783646 220338680 249960266 44916316 779918288 925271627 35498861 411241499 878026318 331317217 462079957 781920458 608679901 727225720 680992585 150167178 61352614 1004910481 623818855 372045481 853706875 773736210 576610431 775557951 640334890 802415766 1012818347 984996464 883832196 838445435 864244368 604798821 554325232 186561311 827720667 777001350 45647864 282372665 447754602 1047979270 119293870 1050973476 325748990 81568308 397890072 177262505 664770351 446887925 1009411993 549186307 753332508 616591993 748353551 850537796 389777556 405733108 554221894 907646975 785058588 767097812 922973435 4621702 381436016 433225842 279173624 798755611 791395522 910339646 130018886 889922868 266202132 535627608 824964361 654073986 298520011 643240989 239662904 486372634 728141412 985068739 382133226 542167357 296953875 844994252 700498557 419663979 672056562 297300631 410760335 136687245 627735147 656336899 1012269500 266167611 909967279 740923824 534093701 602432760 705594400 990919878 157053054 586902356 393878763 816320381 437900994 826501006 386800341 965398615 192080870 590463160 207332757 306961281 635531369 602852362 942463871 657473790 606771010 43055449 825769254 401782614 463734635 921106983 585494508 72262398 439070564 669096148 1020577053 318469774 187406921 421770558 835168132 746503062 797165573 836617223 366436482 499849820 776873552 676323346 508720665 426131289 879312160 234590771 1012158433 902693697 299647600 288760397 937352101 15944343 637310680 351436000 205048913 715847918 134728735 443733353 614268869 359170315 530259941 330588915 632585962 270790679 705552436 411242855 197132048 326986911 1067141311 433746837 125517610 596137795 677608840 122618897 770063162 912156465 894647684 401883032 353458908 373580109 553336058 646497151 727764214 940545623 631728772 674162507 765095783 758287793 782625009 575801346 342043248 73705909 222348523 1037480995 467246851 381384411 984749313 37357859 236139225 871359694 341528908 949037034 240923165 1014735749 821847418 661560039 657482800 878885375 160001484 87806974 1040946916 431918111 468057796 977361691 236228927 257374064 236007774 640177814 70226295 686831452 756056368 208283843 473188112 156675901 141404653 305272792 37855500 509810675 824727276 160477220 1366721 613204309 142887479 1070438214 722843859 855203079 790295164 269754918 824839280 537597403 19020827 340431462 451782034 875152127 733604269 34446139 802258536 209757149 761647638 87907464 201429544 419948822 870370504 768329284 677722835 829001518 142910234 289630214 912353168 209680943 530424974 824092813 541029013 759164230 46723973 352181865 808345303 165921590 505741748 413864067 791364757 299784878 324563123 479072618 806243223 136031425 126235180 416581978 552603409 263311121 56766552 228527899 170166958 587821008 570476690 682117503 680718418 774483025 958014103 437624400 387272244 1317581 506786603 258960120 234737875 43237976 139110912 164042173 972501279 1007504026 1052766355 530865721 338572997 908375608 946112054 262584141 299597490 1034196183 294491268 262139042 183735199 239307388 992746904 128159585 787823585 1101993 715315037 757384613 460349353 891741737 748998829 913091074 881963079 336598650 936264342 763716976 808768286 143498230 61440579 498469061 702441727 1028139637 1012604799 216106825 1010652798 133541907 762876029 247249785 876731298 20824910 895816354 511779183 751386031 1025189789 927005611 893908456 57824393 200715035 787774578 207722104 339350919 955271510 219390330 1014599566 535393175 820866323 212023832 1032130240 442380737 284848993 435038359 426993592 472969799 349648571 175470213 265100425 93752946 235469677 343686324 280523872 902735068 41506787 15896905 705844098 359378229 1047719970 232736879 422865353 923774025 665141302 911736699 646141104 96441002 832941335 712539575 547889628 551255130 870381570 12370120 122986081 13925717 316809114 640065872 284575140 130730923 534596322 401130080 749465753 461310906 762911220 762450908 360813350 753000373 965364691 795370053 1032364300 306531703 221692773 794214175 898264481 573831762 809775492 155961589 742760110 104180182 640068071 649665620 522141817 207295606 1015419786 840731920 730702277 520211454 90761473 875135010 415619662 563907943 500089695 270516818 839381137 248356404 130175559 408205059 182556688 118319363 171161291 35115865 522446818 788122597 500950834 150493482 256188250 350641557 484798990 292873307 620606362 834350546 471653873 880933477 853091259 1009057767 1042431321 519142991 954643014 939532261 913409998 15695649 439187433 876515070 282733735 538776119 93110893 566670163 586052619 498173175 464808323 756703931 289294880 626864491 614023633 218790222 1064861689 196239401 524390143 346967342 190701578 615616849 787415107 226288481 670693786 857162080 1028759500 1037864678 224125781 327750112 169405364 810451284 679054687 1055111698 552707348 131424336 1055403474 145189606 701613122 623963742 186561316 902378485 50042728 1065189962 205065911 517359666 45511628 100102293 293547940 965203438 154623876 946221199 1045399107 367080631 89870714 955112575 905705841 123281782 46196968 546107722 169222049 207824036 719394033 113302766 91068658 996405549 320265797 812506033 536913061 824605800 548968807 809683892 220589247 958246901 1022666545 815593033 576001542 424290422 487134813 885801253 739253728 324863094 628121843 745906191 803567083 972003376 873193183 669567106 909488331 1017066184 388031100 261268007 140373570 448116541 480135029 699183843 138809953 314583310 550461303 758285126 994195956 206829521 627096160 948053803 1065096651 806734916 866762243 407471354 916381078 1066703782 7701585 1064314829 538286649 677331001 955575952 718136075 730370844 731268070 233596951 370957422 438039080 329430795 566115335 712926028 990203017 276552132 429890075 472537420 998861493 990596325 474648919 1056345983 843682897 1050887145 743433472 749669701 881401052 253482187 318278987 895423035 166330910 321174783 1041171566 392247233 525936138 768198641 730373060 37891622 421076397 1008585599 244381000 71025547 240715935 521465223 414327723 40237217 543019790 365068935 154987651 344027303 54598508 551058648 150773642 891625312 296771644 744448301 598921714 492681344 136701572 690214489 1024086760 514463106 230937941 1014752578 243233913 815217583 808810213 168729694 162204777 982153397 530230465 781735394 698342770 780678289 183529743 776360681 238369376 114557568 578907694 129529238 567982578 403773052 766403999 916861143 87614244 408703766 655941166 877442765 21088380 711424939 161454869 798256167 1058447706 576980063 161323320 357882145 369497284 505233097 746065481 1040303854 354398877 695837813 842966783 660902756 71951326 603984052 875729792 638754551 700610184 557907978 457998783 590681382 153503445 757801773 846803947 118114859 9974844 220356471 745270464 210725165 114426114 793094239 70851761 167590808 737030404 1001697406 389382620 432311043 277266698 532321110 177336958 589152539 1067953926 456608649 322582408 312019733 940803245 68524622 1012011630 889618139 542576711 621090562 761992928 879773202 329494852 589303492 625490710 375647711 378851000 804348337 517034580 110656492 671179583 558515144 625386650 312797913 173677732 21171116 660334409 259415912 759564789 12555415 1919366 194597442 904970284 867105771 209332611 133729162 393394673 1036048824 2902905 742171193 336279813 145544669 837276689 46015389 933595914 684867497 505743459 153862911 585029469 605140650 652342956 16634626 992147384 561107757 204556680 52910598 56745274 226307299 992748408 706012690 469305704 182711165 756539569 589962415 991121419 525951479 254952908 854284389 476455679 80372608 519893691 94682144 575534225 662553282 517154138 894469282 509172092 460230027 527841518 550344413 1035139657 1054540470 152550022 757603782 583691257 99999091 287061203 186844639 619063251 519265669 838136871 53076176 296167198 561935486 830083251 511384609 810167913 750420928 443972427 324236952 508648207 470276094 719701986 645026768 763525989 195220232 721828464 193825941 190939932 460692895 791526567 956369374 558551302 662436263 961994380 188127731 888175912 955858169 524281395 624611988 51079764 30506336 613355688 1054422199 120333371 466569919 742062695 1029213036 831990921 711544345 899371349 718560525 676138363 880599221 29164930 68315074 800254344 191813882 848518536 1043677133 868301701 37030022 151423707 291026790 1013556627 655944072 247179114 110450572 579438775 515714891 630991750 301744619 503738296 12305284 841905385 565091553 877126491 1021269339 659242983 248971291 960731315 260284308 166981212 528623584 451316673 38368057 307695768 943787935 419028891 326807733 652243201 243890611 317043314 183657276 774750228 385269480 810298253 164775515 130917863 929434648 793848274 822183698 654091404 292253533 870007504 710943602 703229564 616960697 478465480 874076799 109144367 631070857 645561292 1049166864 959411737 913376816 151529940 839213053 332135741 400438895 829638224 291856788 421155715 788653023 284216480 879309672 431619751 648467467 785524368 18940036 180998160 773440326 989677513 285339143 755903349 322671938 751163671 541357992 579224085 717997484 651436162 863372256 739890781 651501834 581332722 678880009 667305441 47212017 35271255 692627596 432017028 1063640626 138692698 61595471 91089890 690173144 886346663 168834490 653563754 852931597 503416466 264826850 177197422 1055602897 7464649 448052957 412771804 1055393403 900775975 290535184 663492961 486826507 390879364 290033157 78621640 809995089 531357044 199891096 123567685 852077256 837421986 219158348 164231301 660998605 68858039 456364348 24577460 757563963 156336540 752346114 1033860202 46383389 317212253 564742739 410899279 44169376 253558365 220377243 897943667 40383890 165924141 1043729135 721630693 391701974 986689412 670905825 414607084 296116047 305277182 933494011 184115077 185381075 137619174 323055063 28639077 1030949261 434008930 273518073 469020238 67491984 595149956 350084918 135157019 613998894 794996495 185873211 387051885 67544014 176351808 1072066709 49353398 300719033 969634666 740928177 578959012 573697164 286881999 78414242 666048152 293188855 469615010 198309315 135792902 671029789 987257226 403992758 952730988 148901040 20022519 272150525 832513412 1038332746 44603883 229857737 443495898 652023088 562167117 587260966 718872859 729064292 952988727 397710899 952368305 931636312 746315579 44215665 465817745 529255589 72048747 6342300 867693384 223371945 1067780405 922131922 71781923 593178480 94058244 1003637534 463927720 270842199 1017267906 202212765 537914697 1000399819 849635541 806597658 70083715 767954243 735653275 448826499 46020590 145798311 1024618740 44671335 1046447630 226285484 952651185 989205510 865380840 990015414 86285153 91498518 621915219 1073132628 849034752 353080877 450300947 463633052 325169279 372321926 397943395 482291440 870377903 567535678 1068277114 37363728 53871280 210701033 699034939 711867287 1008072357 169415253 376754388 361022561 330875580 164775762 327358449 34202872 124287826 636427321 596251686 419483037 923127434 1054311697 899822407 1050155483 696605160 607251127 995590204 475720205 732690161 5273815 343778786 472092439 914171963 975880891 774299314 861753945 813512292 150410357 461387050 531184578 750888761 819976532 5838355 681870395 777487913 264150360 55749894 479514941 608317681 825218733 839877073 402947121 828569356 762130953 533326454 481018749 92902088 77149757 544318849 995785337 453769318 310566697 476757670 620665242 774981461 690899382 872760056 779383675 372180071 506099537 30668500 177872577 407920771 980246039 46377341 715635973 490168499 874505275 554960891 841345476 1043350031 298437842 298506571 70905980 37318062 959644358 10843308 178810191 504708741 702493222 797257619 826997810 172143477 931465019 419882249 774894085 764036158 623695844 1056956600 124163100 832029677 927090199 1003594145 448611091 586213381 1048957473 568239403 637147245 194956040 266394269 745639911 843313470 79944314 253771948 335003912 156572702 1051770077 327098867 18969977 671824199 896559379 555157991 346400847 342561297 857217184 620967670 1018598875 417528680 920746009 401282706 1001892949 921164664 316024641 77912838 267550990 971110083 292242464 888010948 283643950 444512076 204083958 673072168 169326601 571915254 238061292 595144984 78774389 1008560955 1036363787 748341918 540880954 291273572 269957786 793036767 698709167 1003989527 1007874712 574771156 146360038 958433491 655096933 244427400 996565599 74994212 924598963 413203949 438753223 731521460 969826287 959599788 610752222 939251257 80100878 638853827 736781453 506939261 906451637 921516591 457935735 572289074 24263577 550597679 841888513 778406373 577589645 1011157360 904680219 158131073 787536440 1008898179 396917967 506044871 832659169 119399497 666355625 336980079 956960619 382026338 998970470 494195630 937271436 633384432 772640655 29510987 944737770 358810397 897917987 291984293 875217832 27634724 1028649559 1044932991 308337472 934142476 142107070 143880563 851070090 107689010 634352047 44908406 331664713 491834445 258754430 296128275 83119196 627531214 1018655835 283655402 118839473 536841841 812657214 519404421 24136550 647568150 1012498673 211222723 602212335 898091189 380407348 169039087 439609753 900372118 791824689 1053732061 616076410 1022727147 135949496 396335360 926343471 413235125 704335460 388454605 993115112 320638603 659419826 731545044 63807404 1025139446 279056975 169890332 321843652 963393520 753600900 104022383 877324490 399972723 974987207 558477613 216980046 333469190 15608528 1013883014 510694066 31282081 553301709 1021169829 703494209 324113523 469424580 245433625 949119889 964727134 877206249 772607459 398390910 509178667 67634074 782694030 168703142 731716752 629908220 915162033 243340445 69129078 954061009 525371261 530970928 34231586 216719986 335650102 808393884 305472400 166216784 717198160 1008810424 689961692 811774126 284264856 93982846 634843847 263497448 669035080 262765714 260502357 418376104 645716842 965006119 898776172 430917042 134661107 1038249678 648377790 598932013 901772170 1026710257 652758729 210164811 956822486 720379404 563116456 606772210 483002294 725313601 1016861366 756327504 155366109 489446316 618081412 341532641 639893058 643820048 577859773 637541172 573751895 822178386 941207657 379322671 496064017 883180712 1048358981 560142812 493082119 167867374 418730574 630237652 199717264 811444857 10125386 439721073 494621342 263440000 20275430 91531592 133211472 749175331 390608146 82711211 311489914 299897413 379002047 469223644 40910404 710148196 809586468 852866305 251414163 1036671135 982515172 119150513 218187255 450709451 859550472 178091261 387025428 767873682 903583997 1023525310 946170825 29518360 173160552 332944651 225878618 943707010 588831450 710986920 648476155 376951210 866938680 90956920 551710711 843655073 689708604 601539612 766287880 638191334 43735774 823721017 90725154 449113759 582213644 759617965 554451286 1018384596 165002126 311728556 979829884 963734128 865355459 884593109 286255614 750677519 408797718 577615716 253383300 863813559 337857223 876994340 1014482943 113873804 960833018 409195759 433479368 715853867 546001618 695145386 694529925 55816096 175724974 818215295 675231527 1065251678 208011720 838435673 435683971 68425982 178819647 611453013 989747830 220346861 366023913 185015398 434827170 1033345852 758791559 310765422 595149237 518649774 1026749988 864033546 1001621758 151051951 596863787 86525259 586286525 938208924 11448456 607891807 284106823 389481118 987507459 472124281 681202683 1002168368 32398419 261694358 958907521 165229523 800385050 843121940 782205526 228228298 779879901 491933891 999102229 759791289 739446866 630652707 419991858 100904250 260782741 271780306 415925108 22879429 950649395 239616645 384841011 1055326157 926548691 418677835 377144148 123035848 840643057 132415631 755335528 984222739 580246597 152959730 282455071 27859661 848830646 881258151 451596241 129864321 766091874 797275028 274376664 167281974 200227895 66393918 517741235 651336302 907595487 749625018 839391758 915427493 300803541 884523568 821728785 973603352 181903812 484128321 505967717 1072967524 1023863593 353629940 415371267 521010094 1073735596 759964372 71965194 882353253 676589186 271057166 816802273 982864962 1059576322 306430480 372543503 719489481 55907804 703686317 282892294 896890053 293184470 926345659 541175822 185502758 781729411 357529057 697165041 211984144 553424601 673488367 1022210654 178435673 995616944 659437834 930764703 496113702 1070511747 121426344 469519583 911577207 777338381 320915217 416485797 647476979 94905246 164884472 952460529 101925575 1006538989 954855343 733695388 639146685 744012403 45398764 807977575 715239316 679409816 767302414 766293156 598307957 475264001 654390173 411224145 9713506 387483201 579844418 120278013 152029230 879198735 999871215 387312064 487820007 48390449 89616859 152852456 709656152 133721714 174216577 840953650 370942875 655861122 553185898 40472563 379572462 1022909056 958563429 548949632 812332225 1003808001 986170430 83686083 1065059864 751659817 657486172 934940145 877236140 854774476 471119840 29558406 304510890 1017328353 1067070782 839511783 914869938 50698213 237678258 376311925 372516599 1037471006 808534325 185031992 1053032949 1031473106 774883098 575533893 682097061 198006122 444240451 51841984 299946692 890130536 868566876 318894158 248117043 747435321 1007584923 836804854 493110445 110520003 351616229 435732492 524086798 32489335 326766477 110840251 773096287 329202811 365227168 856859869 133503065 626514613 404561556 149608453 13132868 154736201 739005840 263836770 847878852 417562891 194329241 242120863 840127096 44151278 233145465 502128330 953783143 304363828 990586544 271021225 552064663 569690988 443250069 1006960249 582977149 689929459 234490453 526634473 454336851 1067102041 914201587 269966097 244054391 723135406 219321198 1061342956 198212993 139439750 792658377 783947703 557110115 594904560 941355382 721924057 764356969 97314617 141719709 561926449 389517441 947750025 687087920 1043228537 406784227 932474939 150563082 898191971 874390514 723960321 489212314 171557602 8066174 985306948 628285939 319526034 433427191 136422230 604282127 942861800 719505220 325222151 408347945 20714258 340348493 423045967 3890431 570787912 988357210 276395174 307722417 489988332 50393850 367157352 688545311 958563896 84801831 1044059890 231553011 401108492 751125206 979431970 297200549 204873164 659224740 625705937 720870508 344066962 752195378 314876459 63382887 632349556 619007852 154134771 884973094 312795095 145067845 769375414 67196768 710345427 373220855 524049389 803552986 960248585 622206644 612676530 597472442 13030369 233227375 124981471 883438054 13802283 396600239 733891717 938634046 21181103 324876580 257702379 237762002 266320015 495573346 383630478 761163228 315787810 979968369 660500910 779731490 469962890 155240210 661955130 636954818 796001367 726188896 71711696 154155285 937544688 1063191687 550792790 304327344 707015890 307524987 862375828 163772952 753879523 356570295 1003062103 213111988 973396816 955262490 99853462 884987380 808087288 701230781 581860037 90063244 789352148 754628451 297738228 582515378 284030583 100021726 544318564 783598714 718781744 128120762 177073068 1004957352 657371778 535954211 107486940 522649887 1049217724 344304332 19601049 227717959 90906697 396547824 115366556 544269163 43088156 857750441 888782169 467574231 831914238 809191892 595088328 168763544 318277916 999251955 446563987 281031096 507209659 953484373 223765465 817407288 811346953 741509779 207572856 30192863 591803344 606376888 588091709 774319919 857850286 855551008 587559524 633643180 486088710 1056763786 253253612 516470605 1053106904 230029148 203147072 970186455 174470806 924316912 372152849 573257272 538093213 961830054 559741289 663052708 1040454765 608361896 761266294 87150064 85579754 538868234 887506811 181945969 695630769 404810021 803067400 144608749 487775947 560362958 112962269 813730774 304085781 285076974 606345346 112933373 589084284 932982717 755018622 674672321 673531781 379514439 262786765 991075874 569706838 603204894 536316965 627566815 336878572 840441915 478661628 499800579 758272643 951357844 533235518 569170314 462220352 740485995 518400346 85358121 532018975 93680682 716974421 951132215 734986823 1045778877 831827981 895397494 73031108 995719652 802772940 439868903 168924325 194463127 749823722 844300403 287464747 15378518 443345805 622549423 403375525 774537584 431820869 529407014 329832023 546705832 444346062 33767302 945779762 312181319 1024119388 836225024 853524106 867422120 406652988 830262173 715852632 237494496 610916770 95761357 413567339 1037630348 352415568 11830353 47237342 788661214 355906812 484737223 1041547240 316306388 15534389 861130618 770326747 152291375 655145411 846838235 808829885 269090915 705917417 63874623 890449119 358865359 228085274 265719931 621825219 332122445 360304317 587383523 490444940 630912619 376886857 519960233 612562270 668294980 532967152 675270727 239036325 899179303 714833385 390017894 534952456 983469234 335591830 907922767 517710392 636718453 304167786 598180843 176684591 1059989169 272555046 207507598 144084931 295987177 1061455029 453472583 689191845 941539892 72700624 986250522 967788899 227623388 22666308 141212819 73373391 253504661 469362045 231164156 93622577 311258451 700713474 13654634 527457499 329015041 259053538 845340793 23054906 759746033 959281812 692017279 456417491 42115538 237530091 774425659 231988342 573974076 229385513 760229811 75132159 110635654 505031623 454738031 867148654 1060209385 603575402 829658884 930881154 89245109 767917828 620510839 362961562 719937438 20519734 956398263 440527329 60995910 640992508 277284703 345557275 704063085 49890412 373286828 642461442 2999340 189476390 290341271 1034433043 977414300 575778769 639609677 87526971 490964485 468727067 452780291 989758255 232108059 281687088 695172832 1053847000 842987721 171956123 457541069 165780323 1030026899 11663814 56244478 585240179 1023651427 254830805 530406248 486303666 307100351 140060203 460004961 150892502 1040311284 301780306 387376556 807328207 1065053786 729700912 1021492243 549336742 86104257 521350861 1071525032 406430804 844566538 13887818 561744600 673547560 926946046 132588647 499922831 1003105477 601468160 652842479 9654877 268088866 36262091 143528559 1050593749 915899680 50847266 262752941 230695783 128967110 278973164 618485700 38667515 975433010 324846076 166443227 276212847 404653790 504162740 595814646 594672246 803720298 428575006 645838301 560015009 623757681 63696744 745477203 1053939069 33932029 814386811 386796634 547613865 636502022 369801028 267010321 536370879 999605322 60708923 365795755 918399752 732583649 57442127 56187373 1019712004 439375274 147741530 545770225 238245081 222491760 835787363 32083143 760909538 699448231 471070087 636075674 48316510 322424680 813393061 258171144 298520487 697501617 688217243 774884777 207392071 390448940 363514170 72683115 914303179 928102786 629716885 482336981 246155802 901007767 108512025 536411310 829596283 131174610 774161442 19874683 507318942 923252762 1042231498 105347637 168319729 292845878 500099407 382712996 1023291546 771933154 577584005 249176565 641263196 643793653 345581384 732815611 322252696 661705856 1066173316 344339098 550284216 482118025 882736405 25971687 191532806 1011132129 310933970 823187402 105781656 530884894 140293145 336248391 76545369 629404882 925632985 476238518 460892807 418822392 151177595 1019537799 9764493 943412618 420656787 646437310 677536935 322268381 412423355 759430995 529384176 601939410 571386451 308468794 136752679 859732921 683444903 149733969 677697096 112631123 1049105761 737638501 126057858 688968614 780986208 747106763 940405598 597883920 395451831 828847813 855706087 688295472 715445363 488685501 1029892397 707117026 564518940 104321381 390546246 796696708 624960651 619298427 476569739 121818561 940723670 239925457 542536874 512748868 462358714 461878824 807801902 574943850 291545847 833533550 247926699 708963981 425844058 488570356 884103163 49269853 138332930 650227577 760953118 876978081 683127868 879000687 763843165 726442632 615591289 243960377 10900978 549727681 205613837 114796845 898976085 364975550 45144249 956758945 530999026 812552784 522381303 391929666 237921650 547068280 97488633 456597857 782088806 575350455 248843543 508711864 466079385 102961634 301419343 495697797 997584538 971198540 613727901 1027220299 1047052934 792882285 814657091 798047856 956100572 735256485 522065105 660489317 893551149 605666448 982318122 201995865 429595489 718319478 459903929 639555443 197678423 628508535 826914118 222216498 972055848 441102919 270564036 270964650 738401174 629690225 115948837 186491217 114593457 884422332 473967846 123354382 902387666 699460396 1043895805 698745651 301647863 521942997 454396084 397860442 763641061 980393787 87410693 91809977 623692510 606384540 203165067 672788486 777484871 688090439 949351825 520275035 1052960085 454696546 214419702 535849964 132812983 464392727 506111782 425900755 915667825 35690844 122811528 490102086 697007660 862872563 649168414 532122855 418489517 324435398 394888275 1013865970 791165472 601718968 835227076 1009390108 75825602 424939204 543915396 740540114 726039885 630478787 920658615 768717048 858121546 352885635 657346732 210359064 589602308 801192007 681968308 742170672 486223249 386242015 12078836 23194272 990090315 287640940 27266744 982996296 65883981 225480767 206326433 862911858 889953997 23867043 735791773 822884199 659357766 1016895902 87921254 653588383 646301881 174869531 418394505 543901766 267001685 179322467 798655873 806701939 461839269 39655953 82397735 910300268 662369396 290198881 838279143 650771568 394634267 686739135 15080440 778457365 284391210 174601045 792461343 88277454 977103966 639042596 820081003 358007752 1049415461 812936917 279379102 1026927724 767378879 144061653 484950306 797215459 651742255 1052858859 452151451 962960384 754140114 580510766 367752525 538349594 384395188 656244184 31110269 24439844 830872852 192292449 1036323477 183001790 320836186 618766585 224420399 1017814104 765950663 809392735 1044691225 990394283 830621434 1007871054 640369967 999404034 881099657 23753836 729083195 665036251 975482070 258784726 810619346 8822794 613866159 559782372 1053140718 161043472 403360386 252997268 1062397265 447893004 940436260 506645875 866332408 435068557 790488047 31586574 828159935 796456579 556714466 431059684 933814237 1016535672 182349393 177534900 273500293 904527265 722708182 878367360 169542988 222894638 556765813 459194068 326143139 597203798 805592805 1050852206 34416420 179422610 241916771 91187286 622573732 626049251 55507161 105836957 219703067 637742925 718007311 794314740 611538183 625715881 732626071 736389453 607910551 250446405 1053175502 1041771449 768790627 284491032 588550100 626263337 746646764 798948414 273795401 655078361 823515776 933119790 936396597 737813233 770761242 609450853 973232225 917240594 1035334907 404813756 738677592 961509317 846570465 759404934 874853108 261083097 424987603 666108067 660778811 963173574 930145258 733581339 20263758 724992513 338038788 434712660 788716154 919310676 977304882 1054866467 272180830 1016271856 212030742 30127027 41856945 939082323 547176316 246519287 257766302 674570997 68372284 990202055 291397860 898955956 765626997 307454516 578536743 1044330957 535318626 817470572 75335102 878271388 425775441 755971135 272455862 76064728 220658758 373854277 778871684 443412652 883263826 813820008 753729671 222786036 644474463 619292628 914653889 516693877 1036696183 444877614 885328096 984526119 522666457 251135033 866506138 1057555857 695567557 878232903 900361166 820629954 980296453 756027361 721029647 223534918 752765324 130928186 900055137 948911320 813945982 158575911 746013546 258550499 725687224 766985169 414710612 863661451 600485472 963640799 76016500 230478575 196181826 598275667 119394141 184495864 146318763 746964938 7671383 174673665 17599401 419457306 563050857 210403573 57104567 3657020 799643116 609053259 193935292 705782265 822064676 618644385 122429997 638503018 375244153 826316788 73971939 478935566 148028969 571104542 1071617346 264645918 411530285 835768978 92577174 833397170 390688526 298712336 385695998 995141335 167123702 867916751 872821740 496681221 879404080 964972341 204336474 854455473 432246743 688178578 182366835 577782463 1013703461 124679756 64279043 73141198 531424113 548617596 997926871 785807121 193505935 297741426 145765749 448800449 581628793 470016678 384123894 820193467 583199091 446522795 885960358 472096451 125903541 47507744 336737933 454233765 719602393 886110867 1068073516 812732783 64546716 97320354 229788474 735137114 580234966 685866483 980656274 165403342 18476600 250989460 603787474 533566693 174433041 674796216 696233165 269757499 275285668 626934107 963733241 995743104 803398779 350416035 204676190 200783173 702542461 15074049 516411833 593593946 1053382431 499179691 306684518 928486786 121258814 1054744039 787993610 270221507 650406032 92223109 616155936 36540599 722204477 710596350 577249669 334945110 586883642 658692961 217423829 730797238 848726176 853583957 584888211 52479411 192540138 699702386 284038055 939386580 103795566 465411355 286384410 923780089 566185224 55247419 189316540 704377691 983715391 492078645 395720825 881536746 271798055 54651802 888212994 120459528 745409172 593169220 302838732 817118846 1042073312 140473266 708149281 87581652 931815560 739002974 956983326 1023919768 355430887 482575442 480263553 1030263743 75928659 349399460 833135787 892282781 393443350 422797174 910028765 104585560 214486937 671983344 22414514 978091788 65001599 377259049 626575441 682645139 355693110 467074273 202228953 508057522 396970981 196774138 229482528 507139993 752423190 210772409 238338338 350674814 952416380 1025699897 750504390 65061411 440207678 526619897 380420130 885098272 888763324 366718415 946577694 628196918 999210839 947352538 260696155 912379594 116116448 632076973 1062810743 903966250 991447450 570526934 906121359 68364136 450646305 548100591 594232214 82346906 552160007 272701291 812849673 509501887 764344048 826529248 750158546 66223687 769554767 974965879 54220919 153448812 212925401 199158924 304861913 207648603 323383365 835550187 981191323 822778208 871815071 291100419 894940897 920722445 388116561 189394550 512375172 107692187 800233088 480424157 177087955 510126334 979254542 254195750 903001113 605818310 167031948 591879691 611758508 288980716 344118974 922617131 131774739 677605185 716897951 1057344303 128640703 670127826 489300313 345819391 682394176 662033483 987700796 1071669968 459281321 491616128 378048171 700771541 1048342494 872889416 235462666 132359258 580297626 742800258 278461408 532643552 50949214 592824759 613787218 855625745 504486221 393152138 180274310 389317296 289745876 940798137 805244930 63543053 851084670 1004719059 439608112 692215481 571736381 425777874 296377425 1041747752 569790383 443254169 286726974 693189907 736837037 211046143 305256636 650969814 1066977593 929022959 635656462 872633638 692916190 806035974 854678938 101650434 584733602 55790478 1042112941 444439621 150202203 416895502 174195954 761404577 151369467 831213321 723185779 373296451 1007192912 937189677 577454880 933509056 1015325857 548224367 95254119 683308683 87370678 804789835 841588763 7688424 881402301 498673455 160124836 492380983 5182957 309308893 620697768 83237878 194972529 679563754 601017834 672252239 52999431 1015378277 813366680 415866511 205839972 309144712 645554124 809176364 560439025 656154455 507688093 74150057 908900445 448809646 866901760 861301233 620259195 125097931 645820046 811654046 646249524 292081546 95418802 919895404 299765565 442259221 982466480 563714236 685456622 613391107 456338174 423370542 155047110 272424058 887347677 577620859 376314342 342353745 449467371 1005419317 882232861 144161371 318219495 452529588 361012767 917443566 61399582 608755943 383975955 253184020 755779506 919821190 528011409 453955718 878490833 675365778 49476773 578581500 425887649 906032676 83834874 311984515 948732792 3076030 608340810 834982462 821171970 136094157 426796658 152028086 1011394205 562649613 882475283 279285674 157453024 19728101 21894687 462711863 587376248 1022404479 784311485 816859006 974851696 1046689628 239930628 211349335 602072629 915434206 48942334 406646351 785580552 347075644 481797750 251907653 841083411 262051225 196088700 1004663487 368094904 822133546 45456559 8318573 334205818 985769550 938690484 1029774732 74113336 470321767 248363745 879794431 133914788 549016544 578371648 216741365 482344802 930152828 115317770 901533669 807406473 871600087 80529128 994439001 147099398 38201301 5679833 675505880 125714604 481013342 292755474 458058288 119070785 387819133 532918113 711020283 320370185 335264024 289423345 485500481 81935142 914441530 998311823 218394095 422187109 215123545 166905851 175851755 33895798 593786247 660982383 505396531 348396649 756310676 733483216 540717095 499506755 348504422 748617655 1028446862 393821452 504220894 904879812 297961157 281645106 300552669 37581908 82186886 301714646 538317060 122661264 795483510 236380018 471955067 964055647 90070626 397245613 534576617 471346460 328489728 362753903 824595661 1052418209 840279782 219737725 353448368 506253721 607584442 831452753 911950301 221134200 145735842 130404115 541794229 10668762 381326286 54981651 56114380 92689609 937370200 336033374 213124888 497506639 92027294 463242312 747350652 991512591 656523561 647011333 373642429 697568321 467477541 291147440 840990445 1049020965 820718235 454918007 222924345 858729492 461264455 20703570 256139162 428690892 582093396 464595548 804754982 698986884 252326208 263305397 976459251 245878008 365308775 963152772 967652766 771638987 400196876 496229552 323043330 341954827 514591855 470340234 672465885 845776318 497774322 307009883 412383631 836866396 814556970 940066527 475195630 638124708 739186558 509791518 339277163 414624544 705183624 603933385 990273503 312032728 623605958 539984338 183765869 162573035 557713842 76784148 354921667 442673326 59230647 555725562 168013432 508491434 228570680 543956702 621654154 1032996350 124869005 378244526 577523061 30481439 1035535756 835356830 632427468 387297614 871256882 1063200318 1062434098 585153565 979596310 1011560548 795686834 270238183 484219666 428816730 528649648 691017748 647617996 248208955 476873084 641742251 803309577 502924434 36796009 174167370 813187057 324900091 806280825 47195205 31720742 68182447 823494671 14370819 257981391 1021604102 320555779 782762650 971395547 218984416 571262446 157533270 499943360 247362560 105152030 273154951 415688652 1010679629 883216725 372392129 152897562 1000354369 1238097 419772978 901990163 473260055 804904236 205950784 1027056565 433959592 344614900 305483038 322088148 274143258 110927546 922367178 627118224 423174342 333471036 814706254 445122122 449569836 1050582139 73531278 833347954 157529642 944807660 803725032 45519674 744284984 582370186 765559254 688072088 763656879 833378760 294241768 964050529 911441821 297589029 1069380478 37080230 817679145 826434603 1062219307 67369001 918542397 545734399 166975858 619803873 115335649 188749455 735398771 849634609 73884965 1032288088 769687837 247893614 1062256535 307388073 857306270 538911927 508979696 1040025780 160748170 59007729 446361445 210982975 705572337 342146875 392794260 427502275 913583348 36495438 1028662989 777239081 976566437 1072663918 594913783 1017912548 584245 463292868 135397202 180961537 536828714 704282082 239950066 101699902 886415809 912831503 271863183 371222030 468388154 841285528 808839704 404781022 313271686 686827321 553434761 55376197 19701096 560348962 774460974 797212593 1061475696 470951488 44833709 927249018 440941418 396440764 1070005344 860066463 255995195 266686584 338102279 675506661 86091044 411212260 976827260 360057969 468662140 895797736 1029789275 727630311 748167646 62013483 794514983 931249627 843471720 275926791 993149885 411331415 562467364 417530768 257858522 849031766 322815594 1052011155 1029327444 548667896 710522152 169415949 1009738157 1039259850 75054371 302987715 505716624 221272214 566845154 587807490 496817420 1051810090 1035026088 1026388323 1057564844 98746770 805452076 1033298840 370453817 370736940 210912954 971314204 918400704 572452458 292702695 388537427 583644338 997541398 401094017 772272978 746017453 731584963 144623498 445067646 423632628 340034992 764229971 637813637 746617618 420196731 609372535 959351396 671797546 428468739 636642941 859994549 210013861 814207957 388326117 974821636 718254144 169478367 314133274 676141028 218231493 1030232788 916487824 903339988 1034830131 511366911 529024048 554233169 1029271753 917348171 798088391 529620210 35988372 451579057 96675976 948548048 376305933 80126499 217684210 562672712 895126389 948328921 922567510 975048850 864631773 350377508 624082553 652572832 238310273 1057056728 379209008 256662866 434253299 108918172 792331360 254460106 837283897 596178167 887102083 372326064 512247198 132764473 713696054 202117168 512192968 920395004 614104217 563746005 733081045 954056925 554074286 1058258531 201650643 13052119 167441925 261011600 499786543 16532752 68430210 186689984 347851044 809209938 369101433 704881350 336272964 393720711 580598092 533998314 662541532 27355496 724497464 706694539 879135550 845405178 112235737 956518515 757708461 660015397 815304410 150246119 743739520 61108396 769696698 850708230 1021391185 116104652 784329109 54023268 1046151357 112773350 276968199 152034634 318789253 107304364 849340487 286449090 607435252 487569185 8955825 89509999 994932655 1003921532 541554820 820507880 488694098 458173980 595054090 465019845 306855425 70782156 695379394 83878494 71146065 262165993 450348766 600532818 191544768 461772255 1006282031 22140290 26351145 970999022 960799917 340900734 882012467 556123457 870581808 261902334 912385840 987776370 977272345 438660310 915660589 1054711768 849050349 598134644 739388324 73207792 162861683 511924966 726453416 381918276 438149541 580287162 841628418 134460965 371037465 57852911 603942031 157911499 870660141 464202272 89314448 200378284 1047378562 702471230 684200809 193171711 332854848 1050417061 27464850 9921408 820729730 655011677 1053190999 712432378 1059192048 886667412 684225306 76276184 643048862 505361768 379794170 134577130 821538332 802394039 879536378 32197247 138097375 269361972 409687447 1009764781 1013604593 122222471 263543098 511993324 694666744 940160023 977256005 952273989 752693488 1032326120 971090973 704103843 627475054 246994525 778326207 1051079085 503038983 968331120 597138433 3159215 232281286 667249121 328472375 617084879 847960180 612717173 85279403 668332451 909464563 904196136 674671350 253397772 559768459 442011201 1008804076 392834278 964442893 377606704 374385010 2352826 1006094168 839613889 741933040 894960157 463869080 487126284 186056859 918635948 993949706 635386838 334358898 203609549 54395869 899266088 1054067385 9062185 429412979 866567635 765740721 546310446 216462101 815096492 772016862 1059079107 814484574 433340449 409187668 920742082 680106271 697103095 373064318 544068597 483339872 930331198 188153615 150615493 410209993 925814473 657214083 82609583 1043984640 233865735 346801089 501118547 700431689 303598746 784569040 10276238 1038539509 335977756 876959914 748026619 929468732 559144022 751380785 21779407 114468763 922529676 834085862 327050153 112769309 555563838 527069111 477281148 407414907 861009923 618795582 18159079 688221116 478080352 853427864 85779412 1000671458 979496138 21834688 157481136 1026462567 413919852 203831604 994856448 296685279 954455328 571623182 589386085 267463284 279125402 16468662 494722713 776762392 704853625 1015298257 188637943 831282560 578694805 661201120 30648819 91129186 359471748 289946048 9511883 532543509 541344630 619300157 346042734 1044793799 390194900 439272957 535835038 474715088 1039474633 84594176 739440139 566966113 1001168117 561988871 772837344 987582185 494016938 858853830 391211990 418973742 4904908 591954192 177639828 265053417 958511491 867105720 762876770 289020082 1043660278 918430058 388826001 835098918 885454504 318673733 536352732 997161985 354808779 361347746 918878309 710773646 735331739 220271959 714082185 93389724 605317012 835304993 865825279 459703629 144954092 552631381 364861055 825604035 261666180 604048437 154965494 267395596 575006513 638369076 832531755 855192308 313897458 270919220 667391539 655890706 736701942 293161880 789427739 324233566 662803199 943058796 255879768 210530803 361573783 739102595 112807915 801780810 923981362 883758033 42072812 163473142 503041339 39181808 335242230 70642845 186478398 833863829 664152086 46685802 1030434744 708358358 945236174 459720103 886852994 292490702 1066611851 845393891 149378653 971573536 772871654 143994525 580736580 79443678 690617035 979740682 347296217 316623130 897048185 257569160 222448774 712235832 109977372 564670031 49580988 360480514 673465919 1027131169 567464178 14932459 1028885553 424552922 967448987 711087656 1041382220 88388935 812993757 955590703 1042656378 46621590 471036135 284218777 56532415 445970725 186725373 720431550 336207949 151011624 379901815 281267028 277957961 909460093 468653427 697444334 508513313 697226343 394343292 748520442 333580012 597936692 41673538 466692274 878789338 370147414 263170844 435906395 512096827 1033825039 618634943 454721639 229671884 286817290 821541267 701250214 516894294 960421058 553405222 111776306 14459335 840493799 535878167 239100689 1051686616 546585889 331566179 932424576 675720550 755254893 234189347 1002756979 633921347 704577407 670003556 546753543 560810546 882859628 503844830 529026913 35324014 253450110 1021868462 793434635 819309604 619790597 125669963 16628371 721985605 222694886 494952862 1048663520 65528928 985310310 550496392 68037474 276548596 360532873 460317325 773141181 208075278 225698043 123331006 886867920 764967612 219606567 121556980 190821318 460091836 790542996 439253409 844989850 655911026 1061139767 835214765 452313984 975129496 426521140 259473908 386323706 434560322 761030200 67034491 31839671 298369352 199203008 778618646 663003630 554800216 818872138 10335645 330442506 550133265 588716575 466661816 441027006 603613314 1046270364 148518317 730611035 915514937 1000566257 86723513 498206708 959559688 511196885 111870423 309733228 660484723 739837391 80647859 125948059 650452276 692241661 834507554 291726879 751344940 224928164 782692151 886962884 368203000 319742621 548397489 492787486 843422646 881169534 642999783 296191813 173330284 302808174 51631189 198108227 468085123 305335059 362803314 121017972 707018305 489929116 302550076 515535678 135021592 637026308 390725755 99694846 1023939860 987579001 890766658 542390869 743857705 984112756 974197662 923776807 997761926 431289618 510687934 751455408 435778328 921960969 1007506855 823445241 477027931 271975875 596987981 1059374323 966931803 716288668 599562984 644110973 601368992 416245032 70467647 412679524 925864051 429746069 468356142 689603797 230041712 194797995 335304538 202393242 307907462 119644647 330633258 432060863 124619283 442910750 58945434 139632131 735886414 629297732 1023291547 863316232 929108738 753638069 332803572 940674625 382017910 460318438 119716207 558769313 1028674914 1009736419 763912766 671370124 457090526 612115726 30262072 1056363599 969558280 325513955 353145256 207489738 794011975 872161052 638125717 895809800 820997037 103803700 187966584 818284657 98119985 242988203 926899190 845549257 606827543 915217337 571673130 1025147809 292760632 1068666729 432102103 61156881 86364885 271972999 278335688 315134058 822389832 1059930054 241745999 685354207 70585964 892442775 461934256 858217400 284951649 1014535313 586836852 252751900 841023673 1000950704 759795853 429831957 232608936 382839706 325191986 306656994 886784114 399188422 969530255 48632239 404174924 896749589 490279541 570861947 464418861 81209481 368252752 1067979024 83694256 347779336 794102673 1050618153 458568230 860329436 936546940 969732557 321011011 125818726 446747377 1068954290 697073567 229013196 966417235 674137942 709603615 278099791 359274310 9606950 485527038 979287811 485648585 995021896 1003447438 677086924 30739481 678601905 854650478 418940795 260184889 474808455 385906759 46789764 541877014 808369614 1069659349 958973958 599611204 223083443 985072236 4626835 132543384 586861563 893594445 325372996 482947952 22801608 117582855 2435468 537921665 948595026 792161963 730853916 856178728 781159826 899248762 991064952 781532068 672616253 40530659 786881339 975572145 74589800 504235954 916074082 628208985 570795060 50929404 135345118 429829943 567867045 611194180 129070009 452287437 544735003 567895563 20112567 345569927 761801265 456234251 111813611 703921799 879554892 809673347 332274204 858038741 3105441 1017062752 487103161 665948119 284560152 724600698 189712220 55859401 829806990 878147208 989286825 1064732690 525787865 670867241 377559346 441961607 765329405 229198109 910925612 285964625 170076397 876539971 780861049 534829123 6653382 247408008 58614408 645945357 584638174 312795455 96993175 355173936 674077723 926517673 36050598 462133580 425841854 879546961 503838475 370514895 167105788 520691711 174143119 729439025 895355368 812763074 693188234 680707617 662010639 485581486 311897674 754243883 420953986 818834677 735684786 119789782 1016351040 79383505 638808621 587345763 355994079 936564693 257548269 365828499 305059457 214026268 22978314 93216166 721878992 565936533 639977250 962776615 781208367 59815788 201558093 791548695 1019808477 696601429 102804200 284527210 608638370 895150965 185915874 1031430597 509272853 833393372 614113578 245861897 368042044 861928612 481854420 361961985 292520245 1028394097 7551804 864835370 183146739 613724027 889055378 466114635 154444610 58361889 237093329 876381714 961138474 269706362 654010616 900185813 877385928 773049916 220132828 1028206179 740149016 346679408 547286066 353484984 698051305 947229182 171887768 232347429 455624796 134426263 492281115 392883881 91463874 1036313094 668893677 802043993 381010920 634058535 1046192755 888545016 315945577 796915725 114086551 511516377 629746838 136276422 113740278 730951113 143468173 1029093467 559152367 895057721 417513251 404545525 371891127 293773637 834107128 759706071 453803479 80039454 945579734 873568808 422714791 267342699 776883565 751805031 363043143 172961539 387718573 159792393 58842002 900624077 203039885 629652 639104737 250521679 877978201 121523312 128376946 797348195 240735129 423406782 993308361 450137560 488714689 442970447 892022033 580588078 269770288 499478196 85325531 58589350 163607452 444193625 655480914 151463294 575344891 296971358 152239452 502712573 438261029 1025683341 733886989 159081999 684065615 60166599 394276968 884646921 597746149 1017619351 469381284 76704992 1037747073 560779591 698965747 1016325871 974543906 607619499 196815871 473445073 126703761 723286863 765970017 948123820 281355403 416682065 394771488 359253230 743733937 866563828 662077958 660064104 505015383 201327318 934565835 722306559 497596653 271194078 160906917 772216884 131051832 813624960 89054351 758499730 890000853 788818850 324999945 328292705 802123941 659240342 751441560 699454622 881441379 311740720 985937584 523290594 720963369 448695175 498971477 855987694 772375667 41508939 836075538 42608459 794514117 322616574 289960311 249817882 713919568 816064974 1038052943 443992206 825624508 595780410 709656743 209695714 169765858 1052162182 173000912 401540935 775160512 228532544 326519251 880573309 154952274 709735722 506305657 368099259 412734450 116226475 80409753 156169342 613254750 349710843 95338788 242070932 479891967 805735992 72231270 196435333 974269761 784103970 233815991 679394572 882702181 680369228 456170574 690347361 472771257 375849254 132456264 1022255301 973916577 875158927 943812107 123896872 755726133 905088837 989211422 427434291 531236101 926699455 247382725 1023887650 449288115 1066811652 902086219 530336475 240497851 306510037 366602386 658071255 435169445 480456108 58147853 1006386540 539277629 972815524 566596666 910009782 582398828 721683734 645929841 1018016619 336977708 264768754 746414841 754431414 453192450 305638356 219235413 639550710 594377415 1046448327 97110823 208051712 81301116 1067386140 461862690 127247614 1023114150 704608108 190403642 639424645 705874093 334492544 43698110 302936764 295823753 866270691 979951450 279154696 215268008 896455963 477150652 520730288 210000835 557678154 453119382 556777260 766220474 763178709 599623654 575453102 413180015 571614868 852656235 808507936 572806279 895305704 841334173 245509381 1024090633 850518974 509960038 60176166 768469163 529059309 80973919 989322050 943757141 532782617 617826457 406365172 345738599 436630910 316458319 499820549 156827962 930016592 1010945733 693547344 57360200 327970800 826648820 317756851 359038083 546584676 490948493 662770111 652065033 82472443 68037422 76442920 505591622 721668791 569132870 732634394 766567189 675386397 505587722 17194924 325826123 498315310 126251510 888339229 757390199 775169536 578994960 937831059 596442436 388135979 486172310 793646276 722896856 897735564 572402915 837793960 534135763 712993614 60953468 1054429543 985975323 521149571 962078560 574138807 249108995 567742665 646714413 586390168 84041538 649281787 163142029 919817226 580945520 935225599 404518450 781945237 933166629 379474940 753100885 189939282 1013951579 666524700 751089397 210470751 763141936 882922756 662566019 506146319 105030799 494298372 680594621 406778449 645317706 934169804 525253531 899799335 747209628 981771813 1047044074 978811342 656634465 128470768 379176524 895444198 91232426 586451501 912633542 601071133 174845420 375032479 497923569 836601699 50055109 815910745 151056383 1012134471 932033624 129223877 545042251 242106314 215372714 636766665 691211281 634772869 510470219 197238404 233481598 654766436 602094346 118796879 1017898914 284056878 499926818 311072858 561005963 138241395 1025834761 90499474 833901305 684607594 43308058 637797417 792617321 632820757 568476067 942479660 879273497 612337904 376927083 72091540 689210803 628496661 400280936 609910662 51887770 168684905 353665292 838353618 715750479 646998105 535489244 526673037 38374528 166171816 867442725 204367919 225260472 460702856 774715289 415880293 932886603 274300547 370204509 1069663841 9915030 92464350 997485396 817511392 379200752 1023327346 143190123 51744179 926083435 925904628 250270528 836847872 440715856 123173483 856465249 236702887 341117131 641259430 747823055 222445138 212223810 239483561 272835965 63468816 727035060 825477752 622085375 1072881668 931214029 312624881 213686679 951814563 701257588 1034926478 1061154593 635994660 917017034 81922052 636183873 411395350 80856077 719512224 350381274 900399777 579805420 576766103 503108658 603062172 4300452 885327700 614393749 980603874 520264693 309194289 342849285 984188682 546143490 403331677 356788895 553364807 829275609 1041874344 946860457 161376959 1051854522 30978882 436351260 193275606 315315178 855361840 205149468 657855741 391929998 828474707 154801139 51934123 543820210 541193502 945676317 203830495 240679648 574180461 557900168 325293544 403017923 193397567 361127362 692414913 448810431 680561296 292304247 831801228 501796435 818592453 406535141 243537349 262690612 556884520 748142075 757726671 939234081 678720139 1033338481 667390524 522339834 256419279 888696318 270663463 388513740 412611166 25685533 512857455 579109952 590536975 960976525 718431653 156676613 139058740 777572107 292201652 442925680 302229728 757411889 856020420 843355806 498647982 874133524 461952682 834891073 874045619 426951635 714738759 950251758 561211574 777635065 657007737 559957544 289605448 732264003 897192886 730514795 437161849 258851880 620085812 740814140 358154888 328207328 1014702005 512107203 410601939 1019926735 999997856 618612174 897438997 296087306 1025142195 270218069 300731434 939523004 779700227 81092712 516915923 178997676 103156389 314741722 481109701 954455638 347527150 54427506 175288553 355297149 279836558 145593798 155692547 530732770 61949694 328399262 483819930 119439452 990418844 930154663 470823555 460543893 45528876 479373416 291368541 162640125 999153777 10433472 958538231 132500185 411889608 26750088 442375464 135966196 451208077 690303698 215243746 467501435 402083404 298979336 200340448 533423317 804645930 1050579563 638341242 74273390 985528751 1038387956 582511432 832320050 241436736 357665321 949970505 1058781344 95928455 744157488 774223379 758699406 251325688 726951144 413432582 142011522 259406615 891610420 306497629 818954289 959264097 441605113 374492378 877492774 899006419 944736486 871038807 796267094 153759010 928246717 393661202 447496089 576822635 1071980483 160874707 306196488 174666859 73650260 803654202 963368698 483606448 172398775 213125510 618122084 350206927 206988476 550397583 672964740 871680636 707505971 182340748 28474273 13851970 105666862 406063118 526020987 963021565 595190131 638734969 318224069 219264562 656854563 586175045 539651183 824166404 840264223 172606654 12926466 249804982 531871092 1045715342 567614109 976451133 707260533 999156400 453842241 168887911 719605326 671029187 846251737 266609142 1032559970 888680006 609055744 317039020 32635862 335521264 39865655 335227060 669092044 205660741 950052119 147594916 372852712 124467468 684333342 773975949 450370570 206581991 274644163 894469541 351029235 421466381 548229059 309055000 610296817 190606509 956816423 54435805 572352500 735322177 241542474 1060985269 474708049 253026039 582569682 950590580 507602167 121481256 931743142 977284851 544199620 56974631 238711710 4749176 673568328 339866944 467428381 643494787 888010526 161133548 420332779 226140712 188464462 467018103 813010898 523822663 398436520 651610000 150071192 149274197 695659273 601762641 424111904 651386270 818292196 28551250 82271789 249897954 275720520 931394991 847152266 261655812 376634015 10149674 446053185 544044616 99312598 553747971 920726301 122908679 410789658 677698361 704931978 42799323 645113288 1031990063 995714131 866743097 495290442 20181188 367886935 452735187 112239255 695216542 681287667 945549016 537662606 606250988 410397346 625772508 821303763 453610696 979900868 579656915 576582896 99973595 1033129897 1038675074 25700427 808132350 472526356 705475860 660379367 50626191 377736194 25734569 943822266 815074143 247175964 416848327 412152857 214852708 329901283 141715560 869985808 173840609 61554711 509682108 752269431 978350568 746131500 413864578 422608226 224989132 150192885 539568223 157504434 234824307 81521952 30436552 745327941 908689521 469015850 678672370 867998111 694379852 882736391 158342986 198992834 910728061 41381587 1008498908 921241704 460733416 1045930037 407168296 1014081474 357436374 195850944 900316893 413312817 596279290 584336342 302716912 998443405 858378833 366907434 85184220 716376895 694918607 237687546 184119293 630240820 880571814 515559001 723676991 730313655 655958642 371023667 186951513 283354926 935275182 201339242 907260584 139345253 556205926 975342366 1059480257 1036133334 546839848 855714138 389366128 535879783 894505426 401443699 547600429 983738921 25013388 1021422458 885159742 1029638304 22373312 517064881 408186801 648811604 145302047 573906191 59453136 613931593 254452078 266950234 1030509333 427623048 264816989 315290248 103397376 925771963 267467271 549624889 1035432267 64381676 320304930 521068515 395139215 1005908863 1046935844 90529098 396978031 252679675 551473685 1034638244 348290681 631831256 888497324 523900220 585040315 390388879 627095236 403171323 310169965 1068031277 793989448 470100127 597122491 628928450 616062447 867063390 823677554 736114034 1045864656 864559404 143249541 757596175 963255013 33751827 319170486 480351483 202925754 527825319 692267291 149009095 227266504 728265017 1022697375 223629866 150494081 1029368445 1065428898 774000466 944368123 1015545231 262698388 957267609 273371925 260520270 977221703 1050352853 1038002736 602863643 359431281 569206161 634383747 793757440 1010300420 1002845836 33166144 91907640 796799161 863507066 41315349 904364726 771347695 56638574 1068554738 548244830 841197314 403495618 281076741 962681821 1056922326 246096890 740627410 1003784448 292934322 528865663 239097784 633325325 813084905 49564202 274445620 816764480 90407557 411700539 622037150 477706983 717254838 441555945 1022389510 510290162 608449882 780974781 792597755 597146099 26926786 250722912 17030601 733988272 838282448 420526116 122909121 1051333347 319820919 49806675 281739952 578440142 270224646 361456217 724411939 979253735 503146678 992413443 396009042 664568565 858631250 147690181 61924883 241313989 547434839 716330772 900125171 760563425 91585092 10324535 398166084 289390984 642763444 583438371 120202364 8994411 983141290 166368644 724034301 102940689 260307870 536533422 125511332 145518097 560749700 804157776 310348125 45246429 484782379 272274902 222920317 870804756 627653073 571731047 366234618 851368867 757582332 136779899 953031541 447312721 584654704 28529339 929199096 636210002 396144532 585891221 9142300 943184319 615516643 325690158 888345750 244990178 429400662 51563894 752637148 574246833 271404930 58172654 173122303 954317956 744523762 635582041 302313788 1017489409 737163380 230662859 816153791 717905752 332448772 666565478 1054278212 381611612 390007026 420014461 347651898 852195781 1058192174 95450951 542185471 118459422 97995523 674830021 989023290 694254256 464575165 579071278 206309539 150865131 555537813 313655483 296788163 1049095907 371052260 182030665 325838048 808339187 802250584 607167135 900256512 1012432971 723762059 44654670 740620094 437871493 1027373942 762467370 551130650 650028843 367508707 919529807 995066524 207544247 513180089 113188269 1025158518 984995846 336104869 406775948 417267486 599620551 381998437 568881470 836486171 259589388 312700286 408751004 509731235 187725945 380888427 522017946 360375214 612092526 767793518 278398156 878830093 223475255 321768630 470222673 228099671 127016388 531797694 537322585 902347476 457167623 55593015 763703774 58698639 422310626 235347255 690906012 812269330 897965 51751873 173291516 714593432 97977567 433547066 766452457 921318736 146836953 351277987 422826499 800966420 590920756 756053528 408166636 886631264 613296737 558804433 783849623 522359633 20880836 852414186 579128024 532514710 58702252 844297380 793073576 373923279 28847583 872847715 670419989 588041652 65572436 454284929 186920415 653872546 345332002 288947615 1046140903 216174012 632564083 465019910 153827764 616519413 844321952 1038373270 288883322 980794108 119668846 85106079 176962872 266970872 732097855 573461561 911556820 553644938 998189742 273202351 36505071 963035940 153338950 1014710576 124252489 783853288 827516912 719792507 576355154 1006969635 1046303010 671671693 247566575 500743070 282081206 700259775 557702159 593872222 668981656 466007907 948543928 308295532 898521047 399431238 576073828 846945638 735262453 821592298 638273995 778445342 617521668 97410546 48947753 49411839 760268596 251880890 503797739 1001891607 848910296 46053137 757936158 598379094 321724141 577170558 972375262 692622597 190745285 491836536 742289900 168415521 326307470 757995101 935413009 507163584 390037609 685168744 408386405 186328132 39010789 854064224 189567422 161471243 16033588 569008713 937765806 284414559 406248691 921772065 1017177038 407105846 834932564 920026197 762368827 882028754 439671502 627823276 951109874 1058593021 185664027 283901617 255767480 886059203 73434617 241865245 772606558 795270309 990412850 261716768 138952488 421220749 973661925 985291493 525359399 287487401 366206191 960796494 771732921 222692349 736065130 568686459 264950046 168591408 191030180 206535726 238971526 841694832 215668153 290941105 389599664 511857600 913278649 639609063 367370702 169509156 132641984 1053039170 1061667025 663214267 398520763 365800615 657611340 494990421 524796689 359725192 379319561 1028017712 23363125 867067844 197994750 383836040 286478174 473527958 38260480 986986742 223925894 385177558 414327866 469674543 439226386 567653336 973378793 40963892 534100322 558545432 317387589 911969683 995986761 695167824 817694956 973903841 190023953 663399832 533626116 124580495 681925752 225588596 345201712 33985985 68095658 370874729 983217686 450324105 586795099 1014997613 718086146 109404851 20187374 554619344 211615325 46143331 765841688 535241575 725903003 163671591 1015999782 581076569 757234579 346967286 172033713 836006716 1018419085 861361858 204336364 503769808 90226267 918828912 987803551 264317566 580089074 746236846 844911942 413891101 217485565 726860227 1059739600 2769234 786058208 514252086 276985650 421661217 66284805 255424939 137996141 521825045 828164896 321593275 719795714 1027903623 533730022 483860850 987272451 632999599 1025523069 923716956 157246477 166703029 257527053 674151357 553359198 307674038 583385286 616614624 926727408 152183950 953525882 912686600 338689832 556451441 799405508 864177609 200254732 934221525 117761145 170007789 916178623 43395991 568395111 798179503 278034181 1024217253 276644623 477841428 323878386 631827424 499890377 570417547 9885212 785682662 249486827 705656957 793080782 139093624 363599731 468862090 1020714855 874263191 119118292 707585623 684024340 734723874 325907247 382360895 910591701 382197878 587998794 368635446 914498396 786947982 270266817 726020020 808297401 747706156 1064035335 303409749 587195969 380053221 411828458 602636409 145556516 153432078 751331118 17116967 370546589 720152816 342978763 143046253 660547531 801742359 206890406 194138347 434524777 542431534 714885413 873315293 408644463 738290773 352536152 961747578 1032783505 424647432 860970019 357931283 1072811676 425080178 1066392834 631335324 121730253 660094796 579462539 373385116 923736031 476755668 676001568 365400926 72469613 203270707 762631108 595853500 433587573 588856962 507629009 400349579 844646648 564947551 581846312 398182824 661764613 536527019 288769602 119370964 295841952 812247612 502738080 1021165931 344200406 561665693 1052194898 932529008 745853726 422876823 364466746 407208319 60010792 856518892 348277755 47358664 788485709 957545839 528678694 950493163 1024642101 159340085 527588791 267636633 830352614 822775907 26236123 94115260 170918613 857190484 1012991247 595410138 772575010 423968524 109134207 67207251 68884508 968272389 1017132522 102913181 1029615787 1063746606 484269375 751705639 328835208 982280735 1026735626 759499511 765530378 171415665 877712307 610866524 466080549 949132524 532368499 393333449 173102890 173616088 925883130 51932599 268559671 469005283 618127533 207954755 160418032 222216361 615887450 178787670 382335514 931746762 673288965 855527196 852704062 326799858 54443809 883866754 521131066 278962548 413243483 1045721082 803373869 603005210 651626204 487352301 96452333 317413605 951121873 1018338339 837598083 579225343 450205837 914228029 303840787 84409725 409398577 615039403 795488096 684053219 350131707 684070724 648129741 529667148 853272269 880142952 590511125 156888140 615131840 612196293 182040696 1002950641 532079809 484801481 536232040 584527344 1008681814 996708190 466460311 88841814 387637107 235166264 906885649 621719605 157652777 595402321 940825340 445151686 96471595 221564846 736259565 703048548 578759831 1040100239 859341225 164740307 222376844 463390052 1039643617 1059708769 178933095 291051960 294220830 239346259 46308947 561280344 127848177 283046105 27938586 69410979 315426559 497365441 766539059 248256102 667437626 363357756 219755778 76101068 538457096 99529490 208241597 347365794 901556477 442706998 624902880 493139979 988026855 1040658035 57411037 759762596 418981998 565243668 812460851 937461806 829071533 369249330 450271009 794226011 401669944 141200875 1049810639 753819421 913241028 233970240 667661801 360889266 132521181 549670881 501706301 6729432 415802197 12253479 601813519 845040334 745360353 290791939 784698072 227175616 275209548 51303973 109688206 113633748 96024394 884500686 21867313 320555615 848250739 1038143443 183640740 282129411 847372775 499239829 478260338 874264660 365623351 1005431980 753408365 21853944 481987127 801233860 41032536 653464161 876862570 148776702 746206402 1024673743 73428918 949955588 1019914450 998127521 446536848 616926609 550143942 390467840 916607248 863591082 625551633 312636190 547762451 210834564 394286978 1062587278 1019766184 27122285 475158127 188891124 838677371 438980379 373812302 65964023 662600715 956993829 178530503 985114533 526791803 3332959 497622973 962398907 782628134 746341142 955144448 1034090066 902579254 130827266 54532845 894652150 611846677 120898555 393124455 95850404 87965352 675465859 426098291 628340515 899396640 269908089 970178944 406193008 1049400954 152493629 273800445 689210345 38443823 1003306534 381372651 747331423 287456539 968947102 608483041 243223571 447568380 530116044 663546961 282590620 713961257 167389835 92527120 227436990 340558430 208430718 467471047 688638250 248880968 351137621 1026304227 194987638 923472905 10520740 798633981 915676305 303747050 537528345 1066387694 89845985 702810863 94019910 240194625 902031248 346624684 644798395 1069173458 346941903 273589109 589369732 258171832 378225793 60115797 637871188 5256704 622210930 114638624 886332779 1060757284 640894970 277007287 782723225 484860671 792152178 638970790 1345032 628156279 1052704803 129053549 361014289 235185044 538278922 146435043 756144275 945821366 327992768 461505016 672021963 598347013 206034547 1032183305 397172996 414433339 803405065 747000645 493064297 419010959 1009747265 164993070 584294985 105689251 30962744 969997839 743083214 407020903 701542715 76173371 1066965032 433379005 755178313 292698821 424037498 570976914 475338617 21283352 551920104 50651530 939617266 105659124 383309373 1047642037 491578204 275891712 777875513 898851179 1046939830 581183944 690950023 508476295 283316538 126806754 869467878 281047453 318328160 647273987 829314439 169114988 119539000 734990705 1068624743 648554598 898123637 758296943 306268912 384462111 433633703 677137794 100609942 678906434 533319665 1014854726 18562432 870771616 27830831 305765981 488787591 534039566 146611105 772264704 110044126 674462196 34440985 276404582 155148441 747820354 146227953 589043298 975122926 331874323 156929178 76423756 45681344 223546309 487911465 251654413 560265942 367477786 548687557 776100642 691061290 389492711 924882003 603233476 361168574 985592296 1048684930 605178283 432104788 528869544 794482062 478801942 194381887 349340500 482203976 478131268 816372422 954980912 90444240 968592849 258425639 1010872095 821950783 543918837 141194333 868101087 742466714 749881918 631191057 964968651 17300773 697216534 273134780 721479047 522148992 254918243 17776798 289183029 384247800 996720428 466239580 578137419 1049330069 564968233 392399651 742961891 1042115791 41586305 711470492 553653439 68307668 875535193 32672318 52174606 697745235 623009440 72610487 199036946 534617054 758536328 905561107 194397691 906829008 129723926 756156375 265375765 137346203 716309212 851881403 737870664 281059233 964466450 161287388 433736000 641876280 110717673 365653943 865074576 500886255 231965436 240325104 266663586 838695115 124937766 527400711 382800046 1040797137 354713262 491643156 588528561 444917418 893334288 3539902 819643877 702184922 215156024 254355480 1020270425 837967044 611700118 290188169 77869300 145167266 3801961 313312907 485270166 81121866 165773564 309221792 993275520 780486705 594523812 1025778405 971261800 109306791 923729438 843119628 1015307185 664161836 444320485 49363883 654772668 988133187 891162462 40420367 615430317 554608623 105425524 186022852 1038156340 489236176 720069724 540990669 335164940 332238055 996495110 865857202 71015786 708037578 646319022 472479284 353232055 700481918 336742794 431437853 163630149 865043238 293551386 801740126 650838409 71081183 207166471 13806362 670734528 857646446 144158826 799664690 1050888105 353355316 911681425 445459765 108538852 240305123 211557459 972318941 757633965 738756761 287510137 946576431 707543208 949816826 426740405 238464944 378638039 576000227 237943421 759943655 92924787 288955809 208421537 310079030 1011764598 47947604 597481066 398968308 100627841 887207507 1000990722 689412708 83022915 131687142 607719699 947955021 152429859 8160380 1055710261 680703822 720435699 655933510 117930656 486240358 1054793809 149672035 1000606321 297848236 616148978 973960572 221654864 278130561 444716295 71712599 298644637 58169024 961584634 236053091 1005779579 891945926 812127775 404773560 131482511 755599010 142645894 221722897 897882997 111973006 542523767 277373157 1012273023 1064605990 337190270 551515229 328292375 648632526 219399943 682969130 502185787 902529173 1046613576 278637487 833980672 1013952163 94877142 476970217 1067052181 827187143 416190647 590962474 796018307 491541205 298948840 916326398 252030416 299609248 94818114 873944530 941191366 143490316 902109171 578840107 851245484 515439504 381798626 507532887 442551190 377240643 473044522 611850859 247118959 481262593 560401545 321417812 792149289 464325460 160111401 604693045 143580203 995618238 466981959 608865069 907510508 795064837 719001896 974379662 516325366 734149464 1069987122 103102064 87931183 365283738 282514761 924569883 1051860733 239755191 1065950010 42659416 510815556 906167084 863382476 1047874546 842709477 965284924 243129561 174399023 522921124 1037115567 588386424 276925622 669466701 169988460 304657229 811504919 668212133 763591468 985793211 140811119 785445840 358106126 1011528666 85857060 549281019 516436695 541988650 31544376 827402055 396069562 485678388 320414406 71667645 646741668 555038217 518710153 316615297 329992456 34042166 46348736 1016333287 453431756 1005009228 817407846 111390544 711705256 666333119 187477999 699720870 308399085 439320505 441372999 483607944 132252198 38284931 100139119 701508429 412003857 1061030602 1017993860 444506645 330910808 1068228151 720275487 140856675 1013511807 611691018 1030352602 525867902 862062801 752355593 652739607 911999793 788968181 597495001 353716776 448794132 988337825 735284543 929071026 673747597 48391973 352266046 423616660 374186412 184203204 539818402 301945168 1014219828 515964738 672311391 136834199 815203766 622804225 566885758 542526912 142463901 615982353 1037879861 986240547 549546780 601593518 410612950 757428761 614118739 38726208 923447896 522403987 438004069 989555777 102042429 416938971 267794452 570326152 488007290 898377415 291309106 694527101 272949586 785856595 783721862 1045306029 219928237 606997403 709143100 359444078 1062455944 799383160 68890155 981699378 798957735 592810100 7215051 474368888 113960479 42083298 157130778 543153566 271098177 571848041 691951651 912390774 1066816951 829802660 600699066 112162776 253060557 446007232 938838203 277077115 575763909 1054438251 221801125 1022339617 263147985 390045754 801915293 256021687 552049139 480297681 350179248 810247840 142139112 6506087 530065054 466842755 11661503 328450904 156352507 877203026 209801703 637191386 605926186 511013114 760468576 529438315 758329341 306780573 42146994 988762881 788916767 85528864 679799398 1019623894 469552619 949373494 35643046 1009458582 479073819 252018871 806980789 640623117 215595118 382768283 310464765 641060679 177766517 1030867950 296100519 948548776 828887585 66824166 685698235 243518165 71505629 358297987 245166768 487461880 345143753 296105723 606508725 667395952 623409981 950961055 186318983 588306411 184091657 592559392 502727343 500897165 1000538873 124711748 843822784 768092994 873475077 279992563 466939081 498480277 742571094 409913634 827671599 434691239 709218598 286446693 131808673 3976925 337554216 826128438 512652692 1063797128 203862506 949002152 483211531 606722842 1068074268 588386119 312754056 1031737620 305380024 334174712 60477168 755401866 43706653 1022976414 545599428 1000453717 257009965 656104696 258806525 740318344 220306202 485390605 478900263 445354944 621820236 712858093 534930723 462566295 14449823 539864522 274096984 951633624 882968223 996382205 290644391 710236636 1067929946 833039953 680045077 576391864 1004211201 68987890 277987050 514321523 52260441 466686743 504674560 157000461 117181566 620026630 834627248 670770823 90520142 111291135 963339378 865340293 363772196 969215603 456044327 509452223 1001639241 506680108 294468158 448272163 742108 305319336 540933554 702365392 563207397 1071776277 172992949 319516769 272405822 107606866 80877063 446694306 223065668 332204522 870921730 256229525 565958509 1024839475 495605619 434547378 244146378 178599690 333081859 607012462 589240014 27420069 1022525859 1038699025 714588075 553261383 345446735 701435559 580801226 744149272 931137793 864240051 931403545 235254206 991880770 605947055 702174244 909442441 928155988 253842990 415717634 324059768 587793824 423575959 1036011030 461220201 450596562 976613467 898204251 1004696975 394432385 347859190 992158949 113554861 390748787 677658051 884527819 123662881 820574374 299820690 261839999 563322349 611072731 505495120 1062313432 531928079 957459589 223935293 454670668 901633107 285264213 694105253 850689174 987135049 178523557 361234139 698328225 103101731 461748750 453227749 527118332 890472575 342073230 96928229 940455501 367423784 868128811 630500562 205673173 650260430 122400908 58764603 468791446 825586162 873744299 780514453 1024623387 776029737 548302093 589946498 562888005 555271404 40468743 584541804 90116936 442981381 426469823 479195784 147630902 508824460 176495458 28970555 737321784 967548876 138182977 686983401 45862341 1064600327 376084844 432573821 201552071 345222182 275118731 222676063 425974685 988418921 600662 779403840 654225058 705831692 864260025 56594333 296721465 939224919 781128125 288774406 854408035 892413654 852684779 277957898 650748870 565221426 151840958 644747956 45579096 770619524 904339253 241206639 567037656 198648395 172471267 15070685 696100911 548583730 914923288 1008643045 920247781 578334107 911522420 541298150 76754695 414899676 744483570 870689624 63900760 574331349 1041174362 282558419 396647613 995557324 151593491 70296447 523485163 93544734 1069241509 585607175 613828501 743244567 929799139 285444112 275079924 966002447 383626638 279991244 703993645 327777082 1042462022 309382158 1060351575 576488107 199728257 949759413 744327532 768672300 407189761 818355017 412678502 617704761 192883236 187115251 237215289 207142120 253184668 557107925 249580155 491381226 433823992 699241372 438610304 34382561 839849554 641397191 75998336 186906369 98951466 1073303910 58475592 108593813 625213643 582135545 198343640 625201646 257873988 292073386 473972920 752532165 748313918 1017544628 188466883 675773670 513930552 280886905 977538421 475388641 621651450 810256951 438273992 470612361 46786974 424177244 197716230 898035057 693326323 37660124 152745783 396144097 606283086 896141638 3602669 708187694 1017582389 275037772 712090215 254322161 384146508 868555452 688277452 1032905263 745821162 419592236 374366567 469398356 591946883 64456204 378563640 275103657 580937612 321593894 681699175 95629362 831612306 90025483 515727714 1067854552 646904620 571058395 584383095 92369682 402068784 490005235 476824121 630891598 355645015 728346808 880409910 448328609 473774368 313054355 747022653 1050651151 781155142 200173527 938041239 745638522 365541536 924690971 1070925934 891777111 1036369916 320299290 1027280766 470550208 110094158 681822637 315632378 719074121 33814329 220467773 282801448 201331562 948454090 862231821 559813476 36440067 947208919 830473131 74438257 906729078 462728971 1041119516 10645384 961362526 84658271 525500700 232984428 453877241 734666225 159755247 34750910 928255739 133945077 1039368267 561772996 382348818 1056005886 286771282 350079696 348106218 783015102 1045228655 813247288 148062374 96745860 256614224 909847736 460682543 98474328 681325974 208512424 190902380 625145911 835568573 1009230875 303944568 140688911 393264304 743669512 234084031 619266516 525915896 107250489 750635866 327224873 648832564 289150223 239163462 307608385 440109716 953548980 687225784 1026008540 617163835 894168740 273588463 833315642 136125689 597066016 616888975 793561863 799042919 354654644 1021867049 599809234 796778456 888804637 590444898 364823839 857037287 235700699 253652797 871817114 674497476 605704050 430434903 318233678 72701250 158994425 133066954 687239169 313928133 28170734 252404237 251740809 680993585 83532849 1029185058 199101370 750298490 596804285 225947552 252455865 323683345 237377581 579548575 724757078 725914108 974642581 240629385 324177870 1007711047 609790327 969612797 897607621 248879956 501020727 643751778 923365644 915300246 1036462838 55260788 757421347 293003422 1054783261 940804715 471886686 292340597 13980346 916150944 652836011 975652204 896688207 1000009321 1053810595 56627369 111753482 61927860 181657011 184947031 710499118 156131702 907465382 728019541 866574572 843556654 216812306 57376497 69593707 122664744 1020965950 988765817 737234195 915247134 458220614 1020417512 113948695 899218384 250448523 109216961 140064395 232554477 860104248 507703732 389399162 409399450 604125584 471505893 158653157 994155733 773508524 1059826093 495373617 170316295 932610564 615394419 530641715 938943801 961552362 58292843 657779686 535690338 690275924 216943101 813008648 944117374 811827035 873072546 872894478 220875775 62877056 649236427 900285954 566220160 86923822 271451431 843964184 214278085 1014822482 202928363 356013811 755284054 353619523 504849028 152953971 306335626 916944775 859579053 417003058 1050382117 12899575 684263657 471155033 803176092 888478638 339516128 886904882 287082838 494633171 714019754 619727669 1066580041 807902729 727097330 872936229 1028496241 226970936 871039726 421306418 855047182 42108284 794445877 313883930 190660945 532576906 558293194 561104694 195170587 539521481 610879009 466612204 527371709 207076310 997092298 574679732 663677627 530912638 480364323 170738259 948946964 644226804 843097457 55830741 98665962 466578115 695443345 190588083 718749578 752388125 535029537 194808407 389057257 224393625 126934716 273690427 474409983 172793586 920351532 613829002 530482290 706208392 277233765 114169511 227364969 904655567 881766409 197044462 255350436 451522287 704233541 305512458 536862445 346156049 823427966 523615813 552641187 880574016 12822520 588888425 280174012 333859373 806150074 260933868 752810565 865901796 567222852 16931987 727361581 996988122 1039744539 689259759 677601550 1047480348 1071769598 264499839 396001872 465671654 317630017 90034141 135818333 359354117 1004437244 42041644 605709387 705261732 944808355 161995676 732310630 362032974 1050268411 238484596 349533911 612835504 82985912 368891079 715784347 471739555 529162040 132361564 972994351 877791730 887389545 954995941 450400150 915302492 152869907 915265817 397013949 559905171 2781660 397164728 22281956 568395731 753792895 1030212297 249745428 392013099 829179874 949605309 931622553 508826304 53936974 329314709 488561699 787576689 1039023629 534294710 149283209 663456393 608915842 435571035 393147835 161776913 938525154 418507517 274578210 33949321 787282199 841011169 804860749 21773570 932536130 1053772007 763806564 602265328 578718289 684048668 329661969 137484322 360450230 74007910 609097700 440239972 136898154 881780041 642687849 511412662 113460080 298920898 175135137 619810021 218202804 175139930 767970180 11046075 30428655 41164389 804876525 245047467 526172800 249150800 653841677 889403267 976584342 607277237 893965155 895519266 673782854 334892795 244749469 87876721 848928460 94176486 173457175 163346939 347349889 801779474 508235825 81795857 979433213 129762108 102642768 265140826 171129255 140127196 681169544 1051022188 805049744 1063225409 864937985 605026344 67000862 506325390 343876698 753904558 758343353 41704589 755936508 20813665 31589572 542104211 63955768 773959641 259686263 212495757 557673852 902840824 562270784 896518642 1024614969 688778129 214566280 51218188 636755113 951889804 114290652 401366837 459483450 290814979 5827689 369868987 376412042 402296348 898181949 1021215675 270421007 478061510 200430473 310158372 973638782 219491333 52188858 742133447 964269897 54204174 882239454 409745893 154057876 1041546740 714070981 1070341564 798536154 285098067 202972392 72614646 302269410 114910214 37100878 273602665 701796222 273681443 592674995 162622368 37853581 389720444 2304145 428383074 792626396 353434336 899085707 652379660 340999382 416469831 587938910 299789905 939723275 471770551 542254780 728806448 1024194019 602772060 371633859 927292984 433569591 744736191 90454654 882450715 406434310 124138764 219021711 720337911 990564006 1018477745 796838616 952866970 251234471 192800940 293938473 1051537787 112583235 1052390310 942182590 784806528 968073111 318758253 964954655 95779131 231939520 279789722 704455175 52859999 824387104 564058366 670860318 988132175 592292578 1059764924 785083545 394692057 483541963 936097862 184006064 311753697 974770852 291990404 22133096 545768793 917792200 177568780 306256054 385601933 773122393 772500890 153531043 458836946 637144278 351532176 881016620 792761727 501050420 373118175 1004908271 524613768 319760454 153030826 667305777 782784551 165251081 694426838 843464560 337416091 686082150 131974581 287381231 28664930 918955809 99476487 171126188 800042339 1044921085 313373627 773256039 954045499 798827419 595822515 647927117 825464105 391666184 652272492 269594948 807532026 630027855 925326345 63498371 61742981 965787690 92945677 691388677 734645654 331788945 598627623 221687434 645130155 888543251 1072979424 227582186 489950417 623008197 410496891 1016325573 173718782 480920421 769612646 926120425 824667487 1020729436 155818735 199914997 880596936 144472531 417442742 804070391 644253522 47171646 1049899156 725762628 653215717 434879976 13648698 867142240 698026299 945403475 502139762 479006046 637181050 384382582 879949746 356249952 447721100 639040991 967730041 139402586 480858806 551603973 800062298 965830163 1066873644 30098737 232549013 411338973 931201356 435921308 498839827 740144494 636397564 989573235 585330931 1144415 892129839 274482767 626183977 415817099 274018037 639373070 977598246 1032912863 789718689 726381620 28443403 596877211 520430286 698999043 1046751691 862350421 1057059216 535390134 500680332 315338096 517483947 697456476 50054124 572561814 543143616 249048903 212707913 238257979 7762744 42662017 76805162 815484319 574742290 1038850496 908507265 171777839 107321147 718274566 822313906 906668519 912803497 462163956 462623539 305547485 863450998 662033987 300487949 107966531 920283930 521338135 502590402 656316606 214397652 1028848656 900012728 875627328 836766293 551880914 705748745 330960776 452074482 708288899 96645946 259196018 760470241 278226200 360861081 812300966 730746775 4955109 8897049 1038503538 352780809 114007856 209378371 876613580 425566220 621802945 417017547 206690671 1059870424 988782092 500487047 123142168 718296684 1054153518 1027125238 542788639 3548598 160050944 741684371 249013956 762315129 90306153 615871722 641980218 473162090 1015735378 885098316 134176617 485832682 544390881 93059542 137506569 346775396 322661916 832253550 353634456 952647201 383938900 335213791 746001561 652225521 231362885 832133880 970058608 783396566 37899375 746841364 29036468 923622414 999584917 138650827 994779530 753602272 591665240 669200807 678915498 741935914 959395289 210328314 1056627914 933866557 223341315 67057205 53681478 757485544 759643312 254053499 696746039 235577018 36087098 501913741 571636750 340283048 294056328 550614359 341205355 548309203 616740784 59308934 68925599 545454870 109488420 309759891 55806557 660849405 900415039 635812747 111054463 498783231 806786704 30830373 810262316 58410625 641512417 646290932 994114970 118139413 721426469 696597249 603838552 165420417 734635307 271619076 177007227 271528258 192223177 499248738 870892704 580945638 597172619 508656011 935914126 1022218505 589940121 365790173 430255397 374514657 951043191 25552674 1034220583 305652987 550394787 59366601 84017555 649089871 586298049 329320905 602869462 31479713 978238435 577740931 708716999 334685193 1057629594 573175844 485102413 659831782 285858648 455374164 1055335749 758899918 113807236 202034521 348425410 394869505 814484358 573210586 51062763 682346639 322022609 940405829 165231236 843527926 554028892 242269095 522953590 753637269 772210534 829000550 861975416 499790158 266042155 412538355 479099927 352607006 235975183 438505498 1036386760 234387992 1044760332 465121206 890183110 376497416 54691345 958726167 192620052 784125804 368458556 914408677 858338646 273002477 124325320 61847788 940025091 652527905 886075339 56838432 823091270 976004024 580256852 852304684 487197159 332853034 57931089 1001380059 373919079 943560588 491136693 10363838 1054444951 488177069 145867838 1046688508 203934729 932127667 796735464 20328790 522382739 57198468 660240295 672252775 173092537 722581461 121975373 936651419 339113822 735449129 836033456 579392774 607859958 607800936 1013376530 830696021 623495093 191176484 658081379 441341400 929501499 557937700 303229413 958981930 730001732 527116710 575769297 918252342 335187265 78418044 7680505 759626357 846292646 210987591 221398339 666625455 568817155 69908778 395044800 31116344 558190854 963175329 180423425 251122179 107782475 12961338 954846894 417869967 933560038 975265877 233317368 901706285 116684037 599449952 334383348 363222016 875005972 67066698 911894306 979406462 225884755 852071928 487462105 1016540691 924367479 746999922 832536303 415292448 312282699 863896453 117725296 535248956 524183099 726114035 999594270 923773165 462534113 537586923 700454553 802804669 833146625 370364076 701635681 447089429 315540529 575737755 820773748 311830708 672161164 1002701009 418980099 925504580 800932373 250328514 264799367 1030929186 1013078761 755298938 127427622 123135913 451148667 367086250 1020429946 170939458 1061126657 527182765 694681388 638486073 26339975 661019326 618328908 10913231 310862055 126756658 585421899 229307726 222180522 473613116 197937305 47227943 665654604 700668752 66863331 149401585 817980447 501840816 309135712 303120803 878732963 997404779 58287728 197708281 918263977 298632945 100411082 8258060 732760178 623429230 258198552 302927600 618551637 23363743 319345909 1072724693 1030245284 26862693 716374029 571281282 358332217 374419775 893731787 909635754 659909119 134567172 860320023 831578512 900984104 1024587570 367506096 371602322 924398567 1039501272 481326991 826158671 418626960 536872816 896323090 143505529 210604818 912535146 1027985964 388174452 647397408 313016414 43992670 614479777 885302822 822378773 482954165 901263264 656837622 576368654 197720334 511175117 300444449 746877656 690886890 306854140 811858856 151391853 886503196 177159063 503004852 790912316 1002091224 338279318 430412878 878330485 195499330 284365939 859511556 78974707 258054806 957163493 87605934 810086728 1417387 851533709 228161213 265577691 1017195820 1057166410 965166213 805827558 462605214 366148351 525062426 610458282 593563005 663328115 693058387 254007458 78810785 1049016692 980838113 726354938 395777654 444003328 558834095 502177595 682601462 261815381 398084179 960081378 171550118 817368124 941641679 906412360 907144476 913147716 544218538 28581104 548954255 199482897 551513279 942414117 990964023 396177740 1026174848 961426448 798705090 763802359 316618015 247763899 959141255 767082019 341879619 1043365943 571212694 882629229 645227723 664655536 179047236 401501217 55828896 1054562577 1042584671 907005415 142761119 199851319 686898489 450490931 908549712 628329541 751184028 418761440 78936667 481104703 1011529202 706764408 383223278 26720365 864415149 1059061118 723790830 935961686 437470918 889371645 823371589 1016062028 540591958 351887432 106813450 674819810 561898174 661923345 146260051 269495506 879317957 516253781 13574586 425838695 477615199 712984941 595678210 250104571 1050804070 67589452 540353394 887570760 540597850 954012317 425933160 150166698 384666381 3366577 791260742 563042126 979325789 306702967 1018690247 654733600 1045412072 762139359 970039118 29949165 896017645 787963624 207675684 368893325 280105864 996174413 885790771 1043592570 352803656 781173852 191747322 21346762 811369887 448622509 140986297 722937683 1030154874 164341144 231027185 220265998 631497975 360859417 88647760 615548980 461467617 928689798 31798081 1027294438 1002674996 358977359 627631626 918075798 242632623 288382831 46588171 216038121 727337787 668152558 29155431 506521840 747713790 202957193 145131716 217225491 943014631 685556178 978775862 916571690 8386217 300656107 1026729332 692715957 948480897 93579198 1003428487 966004616 629129042 571992995 859381057 971044986 534584117 481820246 571137954 811526425 1038355920 439086728 188661209 502960252 154369099 808094407 424725541 337694101 846417048 856527200 261459783 510104389 784001491 637548052 908891464 255531470 97525197 30835341 758901518 819398711 924806393 337593152 141275403 1052897512 981770385 264279717 363916694 258098114 618105071 573395549 55815726 565229401 790659880 325299602 289005190 189555985 777162976 1012384617 702363093 1017818939 713457721 562275316 203841452 892556801 353652407 1042614728 1001893281 571662362 122879469 139341218 402495547 673394410 43885842 63045905 254863367 60585006 446340639 75010702 716564464 1061575799 769676267 332974198 543233401 905131945 159923693 994104460 121787076 333626428 455223382 1043184004 356870720 165816605 593261279 445557739 241617332 942455513 101808900 1006301110 223578884 362555330 76486277 429189380 787322279 39843485 868122602 864759264 125977450 281324061 346535418 836155688 318508023 138012433 780432693 416608373 966379857 359602407 477544335 934695150 136804003 182002653 421849442 306038980 816188642 725436009 847893814 720881342 696877364 640210671 987939320 816601334 300920240 421028113 275221949 364401334 542128664 874921955 154142838 470401510 795592637 824172142 747346835 362756759 492906055 659200386 697578584 357961575 879655071 770755992 760294422 178370937 1038295920 377907418 162454798 161722939 625344754 514987685 555753443 634176580 134065369 626092255 467136530 184528297 237161635 81819306 204045494 31247775 383493372 916422187 188068386 540042037 704926836 458310156 1059690423 74584452 254650746 66055931 572142700 81819510 81417453 389399784 872371070 47723397 628369579 965494345 177167402 19207529 736647306 676866795 442508850 476577778 9715872 940481176 12609623 243174474 557685190 767105432 140529417 545902075 157641628 524537389 168015639 875817666 383355061 367279751 893058795 520649008 135665411 722763160 3563446 810578644 455654717 596669143 237276902 1062676921 287729792 271049493 781395801 756425693 544672918 490610896 595864516 412053086 613997643 43453821 576332473 611129368 928260166 346175113 563585953 185222034 415258268 18223324 44166839 393107585 279846181 567146472 1009299823 741616649 752265335 975107198 307854794 440761174 678266346 1030689371 68276913 855582653 561267318 284007673 7117529 520869700 1059165138 88035697 603576558 536831699 562086176 479898698 847958194 383494400 94829103 614596841 467289255 956991114 498367041 1005344130 219943743 1027969711 172209201 189027626 637193249 117476046 488496371 195143806 559190935 1002210582 127265525 945380478 547042896 441623038 570474379 867931212 285566245 136958813 944671064 45685256 359681504 260370956 784775699 421424280 471859916 872771769 975303815 456602670 521961939 915429123 332713190 662320495 373239971 1072813680 931593492 488261529 502780038 1063824260 145941433 1009158129 170558457 249551510 668457158 167232235 246696107 934307841 285300255 760707570 623410967 33686563 193173955 582328782 577970984 378407032 226501822 177161167 759020157 58860009 219358779 725542277 574582295 125327638 245372526 684359035 680774016 473529522 519623056 759309393 828794476 66648449 700810201 43744799 698269396 634952509 845370402 584341396 92384600 482699746 793876824 865853594 467948605 683948292 682595134 773752628 603292073 187335115 224097597 309856920 748609096 718679874 604958143 192713224 42078584 274034729 894211181 1042360806 50437861 877258589 797755866 702158371 252865409 530802860 696653648 195302739 756562886 389803635 456915079 744322909 852629663 184829220 376215197 890894456 606762527 204678433 644794533 572783138 1040558403 71503436 652100245 810494943 490576079 218312117 746685402 97246301 49518465 918778085 1069181868 12320867 878000516 383740302 248258908 1072525117 197794079 80254922 775156997 391849449 725855482 920014849 1036464484 392031522 115948869 676796569 697652432 79950194 226928330 851625076 604396882 595045026 749521782 401606892 989748786 802792975 1065458537 994709649 80743991 473115101 678640566 733276782 680514924 1044380496 664810893 582652315 397346334 779564612 512280634 850912311 719626159 692920021 124518444 220895251 632344879 1018278505 39001436 985816218 855105888 729368225 310694536 612822866 1025249343 758998452 112545277 630229818 524561206 715815604 143771461 137549586 312540849 104950314 439630267 682410783 629725006 939686499 515780190 52863397 90077539 473943845 756494561 331940867 420852795 333947566 367338888 521705718 659499259 930876478 1035022924 886771409 323289450 794551939 366847101 1052647494 202828914 1004924383 800284016 714063271 443746660 469015396 1066020226 592822041 231339070 42313341 87037555 1047960901 958354752 266735660 950237083 410454706 369006400 553313818 28801774 1009958518 455020578 933278887 128764835 101555969 412995940 969789306 465674366 4778343 617046858 80681319 972878046 10279066 245115970 1035134460 105828626 350353004 1032426569 722499552 473812775 283188737 330650841 908943304 403416117 837622734 791064139 857515850 301903866 378416527 866560428 861430552 316960263 847743944 133574812 1045496569 811002935 109004929 87492287 787304376 272753497 741980418 637002429 297685389 1058755879 1056043362 4237141 901235489 625042607 454260037 489062335 28190513 401975197 24017241 640950679 934386142 786542199 1006805266 290070273 96999381 102594493 4078127 522626493 1063171570 225292364 453350380 2382792 230195070 52428188 546095940 721648467 317017632 555606811 828488216 107640048 445178081 970131625 109952939 804683285 66722733 547465260 620072351 386655601 948142059 994779185 654948628 929250033 871073822 685581656 340336528 860557630 253008095 1073482985 354249627 224349522 1041298645 796121356 729869225 215385581 1059836985 98685581 167624078 1000505993 382273523 294345544 393353095 184806507 530276128 808077777 689123489 793005361 604077975 141877656 891083749 262461095 833784878 297254504 52780305 59936374 140161967 328583121 445839539 1329344 533851007 628518821 718804160 702945241 995308456 979054058 610448865 238808335 215917743 888066595 743256169 299676923 495574819 1019987470 305981846 576110993 240987593 880048892 532530800 538354641 547834022 582660297 53111404 362588523 163599452 976903169 70405971 597286024 884953778 83225471 1062414142 603516302 563395310 360022154 1012752656 622649014 1004444544 656532254 315345174 254010239 210212789 368869183 798261970 742789815 27017644 688438069 265368487 30160647 100163179 203170670 292093023 136392683 613546359 742519433 1043495593 684606149 340486877 962051152 656368749 1040573813 825990511 464196945 523862001 349845535 24307648 828096830 649250913 995005338 891949701 208209902 510913992 489796000 824474470 200188952 113642539 413148770 1011868412 511394614 381875018 779061275 2711506 906208165 980790403 916422854 767207544 787933628 973124939 73351874 1008153008 617074789 775825397 933307673 594805576 740799385 943283704 73001640 430868747 612993965 858991635 199434429 735169635 780813193 337656161 1017336359 27477899 216258806 250687523 35558568 998325049 1065667521 904488805 650071233 843272956 419790773 950088260 190498484 597722914 770517850 162707469 565355073 626486190 802615011 841920875 16315636 206530080 963146386 388033977 449158663 488433127 141841567 1042675726 188545907 1029655832 617713481 824577269 170384309 440561404 452264376 69973710 751100055 11393161 116782447 71474372 770624557 357785872 548617488 324576535 582912843 463654945 110823890 593134878 431264777 183454280 798032942 221232413 506319507 322328654 152468223 438155961 18937015 242150852 125641636 355687102 354593881 395686506 111351907 273450134 695749358 744722988 337788876 832174706 155240857 440088169 459059556 853756636 153448982 102208652 253410056 361791318 919055052 792237661 688344951 760506245 1066571461 13457664 453780054 782671783 1028074026 788772801 784505837 566218751 434480280 991577277 446983113 234204073 826267755 923540624 1051406865 908187645 458230986 818068387 788497694 303693224 389726806 272741645 1031338305 885613777 630306987 573032488 285243132 947557126 224975203 812715015 789025405 875541818 83191334 843119578 922252412 730947345 880571412 676111857 94330041 831121108 40291774 590937990 934548708 631998906 704040731 6405650 994898923 162714456 158161593 927204744 232884770 805061285 435064113 454860061 1023016334 50357864 788567453 852951188 895473859 769052118 466688311 246419293 308259560 450194624 550429584 63904522 268927236 1007073461 808703136 826183432 875998129 280573733 871206663 88130337 725759515 670947808 169994846 675976863 577232136 518825162 241193065 367229156 917562929 583601302 625396037 695236662 405002619 447666169 614644511 531586530 929896709 998037465 618880754 277223863 1048495215 1034008323 252532361 652029423 95885958 546294815 82400721 97368445 220549668 457145806 776756963 4804425 171522616 536501856 406982797 989653161 384176816 594030608 86834347 97118982 891772913 374899981 801818782 588474381 169075517 624689532 608258949 260320157 350939508 809000902 517003825 146107623 832116277 905559461 807403568 337245134 337962832 800002437 1070324764 195920478 851489854 7364274 791250238 1053535806 868474981 1020468249 332400485 705848707 10776699 940400123 592412098 1059492699 172659069 512649745 876040713 902110865 963573490 421235114 748626536 199534107 826515939 1030529586 648841239 188907036 607000248 400816700 165153234 569492262 491510580 103611561 760380205 383241709 169945363 644200245 576092666 407620232 505595489 894755179 885922024 611026466 905416296 827825292 576769236 787856439 513296513 1057072050 353204276 705949231 180486250 639609230 768157317 736953625 732578827 862427537 664716187 932620521 951417916 392285396 600548996 784133833 427079995 243645601 130805044 857752439 994162550 11015553 817387632 812219192 312743315 994926785 29253671 562127178 773147849 348588449 649049842 607691335 99300999 473000083 320523607 326382295 388306967 91233766 930096685 203399150 384386752 323403449 533450458 539387473 858611431 845190849 370296648 138419763 599148519 190395631 59044072 32501217 990417034 52540155 819746871 37780746 492587239 899863008 536065674 410165584 60400266 40913612 697734058 84784380 724957867 783861361 315748367 247734213 867159508 487388172 91559295 632139798 817718294 788011945 325581222 774934732 890071558 282881223 526610914 231289351 829151989 67022583 147886030 219278962 692781520 249245281 734961932 50725161 485245684 547642530 844588946 153788795 960518319 917795498 474643317 653938262 812205555 886433419 295843820 174058500 503525200 660642758 15207651 898845198 236988070 386881478 266789325 366201890 729290837 675175395 35651439 962369890 1041650490 389774537 1070379480 420419062 813766261 3858797 634248364 175537844 177670504 585422060 759542163 513546018 681604551 288555060 455305147 1070968374 133818953 876559976 236859973 849816571 674573319 983343696 281191136 172480521 882381155 641845386 473148167 467374699 347498484 98634896 713745841 149801917 669256577 621058728 735808618 639350648 218818196 612223979 721365947 428741996 300654855 54629122 634079747 481826712 76726626 92016695 668214579 347537778 355697560 992826897 490627336 301250556 51788710 691248097 484766038 993429140 911863777 607733881 682722967 373075676 460763555 547984735 222343244 408183895 1022421274 642838279 761062076 623428327 144589391 43562664 237548014 64210298 400896824 393478651 75639272 1021313538 241669206 733470069 558492392 1020248867 835034730 612984334 485859572 93393708 503467113 806388473 160116435 42285127 828498934 208397935 747622081 269401419 74927 105875709 312850207 202095692 665434015 628359986 957722147 33341079 227885109 956345310 574450598 417036707 589030238 690969552 243395505 513480525 931277711 373971202 714576474 699742987 494689005 132147458 89823452 261551463 499405584 156508070 60740227 755921008 246120111 592887298 227124584 671401194 1042135051 788993265 283742351 257800222 237748494 19052670 57622959 1019766947 10198281 363648184 961481181 679790346 724849508 987029915 70254613 594913637 735867590 998840077 632043600 81877558 672382584 592737509 120962072 1050172657 527707979 1033354182 1000506583 525123393 739478933 255777692 1039602218 267696971 432256020 542051161 11778968 572212852 495230597 561439877 390289617 915102788 164295125 94018781 168357687 39290943 897183152 35612975 41983517 861947419 857893939 740366858 66648806 10532097 47925227 887186912 793237184 909613290 974605615 120219275 800230589 387996524 627674198 128210689 134762950 880013372 291959724 1030142543 288861445 974928288 692753947 348029876 549667824 253417634 520908178 1020590391 799673366 381764678 29495525 518887303 997632876 791868591 977152470 617131580 406899094 174567782 941502615 1055726502 876361557 267783561 239737715 1011705923 495918398 853616030 121591077 871046343 823631800 686703901 447662566 1036625152 845400155 739799006 715086726 406193826 139997316 569769142 384342496 944765384 465099237 1010109226 981055954 887899668 70341836 129451522 291266455 249180348 889341935 129402760 519572443 212968055 336566536 605436634 694155449 205733949 784141839 436611772 573281792 204270985 108986478 630551397 687241729 895831189 927392509 1010178819 550918994 5182229 348323160 748579711 270274803 831075145 176321802 676152879 1029291494 948938868 595117604 56456682 131981831 133420235 894663375 455558262 955165937 274970089 976421208 396078966 304906587 1061313982 12304301 128487880 39363464 474579587 652938982 539558769 723733745 65837708 77499730 840825115 295970444 52867652 439126152 875564403 376784294 1069409757 860646476 824517885 162218422 639396609 490835624 54940264 652127271 94892451 195953306 117277621 1064855327 674825272 100969376 246374063 221691230 691240392 607669851 164492181 964052523 469878299 907137159 864403592 82634060 976217873 391279894 341550539 212792399 38990324 62161874 855822462 294270015 741980517 481739859 568527999 964554666 930701833 1067807461 285296755 857437957 961617911 1056176030 152007462 342626476 716592831 132862910 453753212 823067473 631020029 94566885 565544942 753935063 274319362 109042471 517693308 508460156 999413635 166504011 189313630 539680941 227963420 806365187 54164997 451258220 428655776 674352541 905567053 645948813 1058253590 104465144 48852927 539328367 514035262 644827574 89891060 1633907 1012418808 242325315 870254964 1064766390 256664711 661304105 428840291 185704301 689374859 129437992 253886647 1036956346 502029071 1037362607 405969799 81053056 912288153 429026873 998184753 615537824 473090643 302999159 25433116 501925026 741652793 479450518 194387750 133564479 88285820 623832438 180543881 566349736 313124006 621554857 1001496031 852542187 411993580 357224495 276302737 922209699 1035506742 70406798 54274891 939862131 74622816 360627411 551858208 156841058 564511755 496199172 220310744 908064661 1040199033 964448013 629932863 849059607 262850689 458706120 968233554 730535067 300161357 302151679 672829336 854871709 305804077 263089939 667012230 508400428 142870259 110392876 533040747 845367351 653252600 951374080 373124563 53666774 958919508 649932435 321252600 530734789 937086689 795637845 591600143 988169807 971985107 438759756 115669220 641120496 692195243 696702561 988012733 346736664 647667976 613885870 788726334 224910118 750767637 188284099 1045733877 632682771 268779282 463005439 274023921 419754728 782513891 429186235 864305952 733139890 8847160 258093969 717821275 779122873 813379826 7338119 776300274 944288944 1024604411 614345534 322863088 1052690722 805256091 491953004 283478098 482854836 625951563 32963471 224715496 950032604 216666877 205044653 757264959 257104689 651781525 363705044 538296177 1001314520 621341260 20044274 528523316 555869863 818513706 104813361 701847533 527409863 699306135 402896619 292701350 1004985186 566838746 28041894 486324244 88723078 114912869 829456412 384776975 786402967 4441043 746402325 894527047 625847817 66250702 625188487 813676829 153175291 170418422 927556455 380286260 183022405 167472959 261964964 65894411 160545877 106897418 241387573 44653825 239953892 996890272 576637997 84578987 722667163 1072672814 72660221 729938018 827950155 624635060 379409886 569559999 867954789 383530943 939462573 452142488 609794235 875442703 383875442 154877871 693519166 28740955 1063618730 528198436 703198884 611988520 525645202 621765294 595626142 922107376 21706869 147088783 824896658 666114528 874882735 283620915 1059839076 640855994 658112905 325934962 203523248 163015731 948372914 179894547 551188958 887670291 292117495 105425793 654813233 174791242 48650912 415766772 128617887 372317164 256119958 433222552 442108359 941277206 1006501927 42701910 5435961 485787097 76919742 724713889 156553612 518881521 427272415 320815130 1028673544 1062587078 114152602 107038099 470112110 1027239138 659219476 684720873 347112654 765151602 266759570 1035364272 483774922 911966620 1005409306 621977286 725795341 692949526 935008235 917202993 460866361 322005410 538360794 914740298 1056770299 679624713 1046041057 78375601 321579605 67781917 872135518 404431127 707735696 557669141 327365998 166810206 287391102 259662779 882999080 423333809 749971937 832372961 818022542 128286860 86995593 795853224 123915273 20568263 985484614 530510477 261424228 165221159 390354170 341766692 911376725 1029518059 147574501 85053722 57914847 907589846 674581885 973616799 464746333 773612073 941208549 656287612 586940444 992698967 249519526 776107112 509706830 454657654 534406309 117241411 718357936 182664617 212591087 432997997 468361650 528816360 66052260 192725378 606843871 477907251 200422140 584314569 903655804 216472133 661300286 801549906 53629031 989932961 720647248 865189963 1042609670 1059947386 545957056 1061804036 992154506 146684184 349476160 558900718 715440720 898426763 593751867 156252117 412733146 657509171 593455594 886783991 65940494 265002476 741519974 212256846 12747725 469003732 894078972 472186300 217291583 46916532 76035366 952321169 694735199 190172899 519810763 676455229 294871039 419551548 836682770 722648943 107327642 461253766 343686142 370392701 398460878 469406156 249664145 902493050 988757931 418245449 816158401 1026588302 149657233 859385443 390127179 906129346 233074652 455157455 189819213 869739676 977771953 454346562 774027598 3990755 696232314 491290943 767878550 171128793 661694652 731613832 773930145 186797101 1054000180 92927831 506557794 842820284 120151921 613138733 206060925 853738507 967311075 113549560 360358472 974709268 430677133 523107223 588855167 919880405 362613649 896422405 491571667 561902160 1020092152 238721405 124564588 525749950 181963997 593428773 737109400 204303526 1063713716 493470791 763359362 1015952205 664789245 48099293 229250088 536854346 254193360 1063333626 776521477 796053243 312550902 342398452 666155659 624793200 537633777 795786769 722211920 176079992 864180879 787429254 882450730 567869865 829412950 412994746 627106493 189407163 744069469 866293999 356862715 682938105 336780387 190738540 100029677 898763994 233755173 485889398 879691590 820627389 708451668 629414042 800596347 659117589 258202139 891776091 290393424 164032851 73714161 449284195 975526492 605421089 436689488 291535169 86407163 225684361 221976178 964752967 89192383 866888768 571915854 71279707 516374023 206122050 866047153 979405408 941088174 627782698 823753241 594119414 93695310 174124942 673670923 600377082 764123361 678790315 684883902 1046915285 350816527 238326901 804562052 37381142 709519478 739412578 299269618 52895304 943125788 655621896 805770732 3787183 1052746277 774240997 682796269 478281890 409315245 585740115 114170057 731061084 310604744 908173050 34987080 790519979 198879941 714874522 155240530 39964311 682498250 439510338 33453329 466464146 60056879 198328259 732326567 890175995 700614149 823516194 1031240796 482335118 575178478 929129953 2380891 783377780 59765177 287445353 617262633 399164422 69229506 391432238 337802377 1028893392 959841602 231272821 768447331 181234184 318338437 742018559 1040613618 683916590 46932614 953673373 520068875 577040554 712680173 885636675 533638243 622143254 278053090 415179063 247029491 886760580 635592150 164445224 670990495 430445607 724946315 714709974 504958274 844139097 595172644 379383440 128163105 144268680 963617039 173972328 523886387 477135340 703244713 517415096 771987340 299555872 985791960 362172755 980533992 143107627 486776756 689675623 474872358 641472205 913520685 82857821 523831818 740448407 940990300 173213656 384411149 570507690 481683119 856195526 403644277 434957205 423276295 635846499 817053936 893437600 650809981 762653476 334284069 593643047 296540153 894965700 858184033 259554708 712420070 717900326 459328098 740235858 670600783 391144258 635584486 689074662 427217680 531345783 359703630 942355213 696935498 864784959 877984152 275895917 955913189 130586645 596562094 34289035 702041465 621709293 374930639 255122657 644743619 541932754 744878561 547560682 463790347 353519039 456884228 528228228 666203478 947980685 197081473 306326351 514574830 723353163 1022703945 492293434 368661885 1027630456 726587493 172944586 327646707 604749921 914190589 125272559 673581148 854405193 626422613 205670869 686829974 699221262 241918006 645871192 119853908 162914252 180309915 702463680 657900128 123305038 195410844 870117671 917799590 340196103 677686154 49563086 999814601 327127689 619103062 533119739 151660886 171939223 993744560 674014274 30367384 910279171 18857550 706420413 862586426 656127165 42494826 441207575 954974063 611648432 239508615 321706594 269580973 435085393 624347429 185734185 744831724 887390505 1054773065 119284529 264855352 327689124 229071061 1047946460 297333452 202935778 409451254 989845499 112872153 1004631789 505584095 291948187 689960817 91538820 450654481 372531102 453191282 491321206 236454861 414588413 733241184 953988295 215470110 254052877 571560220 826997973 186622103 763157358 456888905 129384159 604000756 706638817 323902290 209774413 400124677 610324055 699221657 348912217 406360850 142691175 601713734 869009131 743938664 575929915 245608518 634050817 643417421 72959450 530863713 880988103 810750725 189251126 855371286 657147176 265097398 645676108 486892676 999359839 553251541 926353741 164160487 945821867 231620290 472158232 377184691 1069215243 462118233 737922944 63811380 1009580994 641245035 334919153 914865226 1063590399 438215879 491342058 833005452 631136004 680743447 557192628 864004512 332634269 366086075 473486302 373621363 97934006 697125406 53286566 134963180 938446571 270626457 260421816 34830210 423384785 801316564 659815688 490169110 497239591 54486086 668950961 687661117 931568966 345961016 1020135538 145965862 832023587 61965656 150898480 1014129010 598494358 313135321 449480829 694836608 594883262 532163327 1046992785 736698294 221051201 354976661 911521686 543170818 77685349 631956332 151435044 733557981 477145836 970497987 1003592258 224933096 1026635915 1050376808 86515389 578546941 252863869 895753296 9912122 33502578 425420142 439393611 1065034228 569707558 596587376 536321190 874497692 1022773384 757273264 305642978 141501391 81963400 611492961 790038639 618167575 284093109 528659195 938026587 204377474 324050338 381776359 251417786 912786872 951999682 117112925 870765181 1057999719 164978871 432511901 652512492 803509952 274157332 236606327 51681241 1039058675 318253028 352773831 778993245 383026115 896775694 408387128 653255977 701027508 387448076 828684723 831462864 472272647 461515056 758197056 930225057 603540932 453876169 246567080 312680929 876710132 804421979 344445927 595243958 136755882 66869445 769565502 421298593 138117011 811617123 918850543 588790978 526468996 443534621 10056401 696227116 235488706 467150219 752316156 633582545 219292054 158283791 136469782 204469785 738648153 515554253 1070165436 829983667 879911813 867618441 497079157 975011494 264276101 913675052 438297676 395996896 91525553 390886080 444309479 465113797 557598158 232651624 340908568 179766018 845763255 901681349 920297933 356788455 349885329 5674588 543062413 557062419 667560924 538463328 41829342 186800423 493807905 564268651 306792743 807301639 471569609 800803699 785788308 207924123 331445783 603629470 971378493 808084245 1004873184 727601230 1044777679 541704163 444561215 437326872 26603738 963019858 966154390 978514498 279583592 657575304 915196395 701968178 769809195 171858312 207357419 306374310 77108754 493425881 485049903 631565498 524051336 903222407 476419920 977063744 1029878787 553375855 603072794 778733885 943858499 511641816 1069336049 829958753 1512206 914953163 980159978 108006247 262369517 211990812 175727696 977801887 952159597 1035855792 597727800 677747827 249388195 358606600 779712586 361766422 846076519 1062416906 746366995 1003954132 453530836 455630202 625589228 624735256 208825930 339093373 852648985 863690743 774141578 567515411 932447855 220217009 96029857 189547595 676149245 328505669 232715191 695440858 326424134 631948660 630758462 485486583 344241446 709597278 1045455114 949083020 681994290 84292589 501800624 194867016 201315466 11159587 708936058 533043710 502510416 132727882 67973169 561618709 676292048 308016514 162625022 402102824 546574946 912016650 877310029 646048090 203635953 386165895 224685535 384491968 486315310 762034611 186186126 392656254 222505539 298431504 921709158 488011895 158497898 409136753 1051574432 209222035 648502803 216934822 838011068 694552244 292511148 357841268 372091796 230182342 847233422 897930769 687352156 999868798 650691252 383971969 234574243 202740685 236042113 496495971 722869917 617358206 520629748 441656782 606021818 548221429 796709974 249978646 75413870 295193222 710832815 270639561 678913891 1061809512 241652482 10555699 882807909 68612953 661102561 673496833 168638010 10086828 224378314 1064585757 697477133 79164026 177250475 147316067 961785745 463812758 305102117 1035268797 66400813 198583436 734570642 447756494 724381372 480537346 676589024 514468600 191906170 863681036 703462545 843892707 644377982 1039028359 513070073 597695431 767130366 342344033 862152869 789079714 784118347 563198707 474950650 731801976 359077319 973926428 737616665 702140416 419894727 562282044 603276395 673587971 663365795 528172304 842203758 957752897 681087088 1052833856 588204307 685070362 239136604 708778243 479172883 537558080 254790509 658085355 901132920 414929091 901621630 425094548 1018027277 469043733 670881325 228475646 642792330 725681451 216645594 118022915 1013740678 481840067 202240024 114686729 777264022 125835009 850266180 1068345635 72916499 988131040 649180099 398188388 529569926 767177495 57950083 231008894 507247523 871410189 450632504 618041416 238630688 579442100 749897565 601510462 867016644 418449039 384105874 357486301 21510476 667415848 83052742 794210998 845708715 490323712 711179425 962739614 302991721 47718563 716021327 131136186 388437929 715656612 94360471 383503997 872882001 805640020 90671563 274710111 398649712 1021123370 520522883 868695942 823666402 607254188 579168742 425166840 930438314 1072582099 1057658918 861766401 8646090 91845035 367518989 923385227 750044545 892289373 38253354 669118196 951377082 693341627 175102493 716918883 602963597 330987345 404539588 179928874 863121631 222813887 943985944 706318172 285873630 722851085 911027027 39299467 518575463 725586291 739476208 966102062 591660307 945671294 728445508 770077516 371089679 459161806 514707586 982147089 790009974 594018746 894937206 946232061 488510630 645534289 840124388 27055591 148189367 270739216 897359245 319490377 245549542 438432441 557673569 652566131 1001766953 991529557 510213021 416343493 302745907 956599526 225233641 394011219 113335832 898948990 368503222 872059252 747394864 396613192 964760158 206105057 646962969 913872280 941099781 1009017147 686718982 990468168 402854334 935813618 291513332 550788677 250448843 387296184 850498451 886351419 937760473 1050490350 741167495 957046897 690828494 586381396 728195027 827889730 1023115263 1047570038 774771785 957393690 225266660 226065455 574040556 605832348 99635137 644076463 439165661 696934723 397467006 939525295 957313997 187197294 237077917 314136920 523863151 713776825 804972975 1043821884 988031529 299761990 557447726 761637144 156721196 200631470 1037433881 103547522 544488789 553327268 338480393 180940489 218124984 722713215 618563600 764991053 610029235 644085037 102696346 1039684054 224456385 418947265 1070095581 570517469 24465371 622156142 252418715 328941378 13165040 405856340 121234634 878868832 40686025 795916312 771646064 863784434 593253451 600387960 200111639 994860567 577631868 12896932 130833622 504107370 253614520 365799777 429231613 505247839 679316264 15551421 625436557 1028503159 572318191 881085536 573890624 73607891 849411458 610056084 786139186 892214932 927343027 64151046 949035854 36407187 451955352 775995226 491509902 846216909 787269315 392941285 705012227 672673243 851247339 814294524 123950975 830524507 666054877 492569386 259193375 82644515 601144731 128666050 296577119 398340023 274177064 176046354 796208801 365892673 1019454963 288282788 388708221 791367106 1014204706 757192052 573836059 234149478 245142384 1039755855 792632497 272316839 673102627 512722815 258601814 651607514 869807199 521815658 719018016 744830136 359455684 394802492 812346136 404255996 324837493 1046937587 368381308 787309467 1024053949 274338014 779830640 99172580 298207570 902520646 899828374 1012355254 1024645392 564249287 842088929 4034333 1033468829 223275107 95001276 649014152 189137692 265864505 233401352 399908005 884913959 543795104 271081914 210520664 40559049 649951368 752639997 498475494 991462694 9686988 285897564 595093351 447604390 551185080 779244740 583449605 155614603 646068117 209881994 535738503 53453811 891285125 823466241 539956233 189945997 208608472 845231061 407359614 1058527721 149710913 575835549 803288226 1025996327 538776925 155579026 401096517 434443631 759583626 286180708 408117932 1033561809 283311397 1008237278 188491479 817767159 656558091 852551052 121749908 971271500 262352124 224525804 119372534 84564616 828782217 557345151 902713191 1061180072 261662867 879815328 221433637 105619495 940800666 642380686 723992309 249487099 234990785 679889948 299382058 494917566 818121198 277986821 777863988 528402087 280594222 403805096 357940771 66882325 649874320 679028382 960283428 945663591 896453409 502288305 541364858 171083830 934913497 423686821 520807536 431002 974847317 641698753 960072768 892855152 737677427 115582017 521742349 367553863 614314006 162106902 219296871 731547205 58285933 874977888 258351621 326467477 771356176 87150022 370813710 410322579 227488918 414049360 509932200 795047628 581488020 445875298 313774446 91122375 35907406 671385053 651500742 187198593 753095095 455989554 428029213 340615832 50388840 573578453 513112995 427551993 691474035 1014796225 714658854 979863882 1063784771 1040036521 279776044 681047810 536782573 189487941 712858144 104584065 429523334 200227360 250266902 839282770 377533460 682590232 752111906 263962294 87009652 905288586 320580304 789806802 961371640 542696350 380161643 510068381 553789963 880972301 291325160 381187363 199440200 300388389 699508997 211728052 1067257308 465427696 917360827 175745495 710983286 40636949 899237749 350871364 834477758 552984562 95836760 646500649 633041895 58583256 435716329 984713673 428496158 115564149 588833097 432328853 624047411 822689457 1005633290 1029962773 426154216 214685910 405539793 291855460 198462506 501361272 264418833 1060024337 437929718 677523928 754382857 687411107 889843597 848676310 768731327 314847197 913626411 607085135 320930184 132304686 449237551 1062411116 24032499 642969746 15377145 163707031 22641914 499777831 32256501 981558366 206216026 712943921 661655910 921960584 865493784 392738614 49314770 251647129 783231384 51030229 1045645528 281527941 916603231 847319168 485666540 1050844771 362168795 813384054 60236550 882499712 998768834 967663466 545062580 613527260 401523295 153065908 717250070 689851342 706497747 965749300 572482533 671693515 976340626 896295201 1024738520 870803339 344288458 19789227 906328226 510329070 169103289 761291873 583155512 251153732 107967591 83535374 446470657 358699979 554598529 346555791 590175857 590438728 467968125 945451072 418883263 579484906 565670772 916784157 630108677 876243508 637376177 763574909 330242007 744618259 553441461 959979602 497082407 745111087 867567107 509109677 470203901 945358925 590233508 976634300 182346179 452668760 161061677 821486468 739955777 180830420 799044842 575888631 683637472 11680808 122400176 157271340 379402319 979314268 406928177 1031383058 404441152 1044252186 454365808 1061682811 349192097 708951376 443115455 1070170391 946882253 30868855 325036731 239286095 66057221 166946019 436346173 320158648 612666138 973646758 626894615 430185382 486578342 877454922 900218422 557879124 71136592 930729450 468358947 105840815 936965621 902645542 426738938 57537694 212091624 195246557 505842392 758924421 231787287 557835407 799663115 138846089 856636164 942259620 869457850 81888202 296236563 166948255 191035727 323319098 264110875 288755754 787782006 720061657 558860430 488618502 827098900 324231320 511607705 644800701 584561594 848660967 210184027 220181279 657817829 758714862 6464923 129692752 828003819 400668063 544570336 91432238 335636754 486017756 35388563 457459940 506157031 482489820 690062660 261569884 909471498 883541557 306784239 17295800 645917309 212992434 291445148 746916556 897165785 444543735 1063644005 538941835 636380443 506241750 1049821585 188594141 501795088 529314668 754353431 504297566 606254617 491146275 143490074 726210660 121808895 892197078 461811395 794722659 8509327 299648097 1062789554 693134718 609306696 526953435 1026323986 96825365 600328511 82640643 679184585 224738522 78745521 26251728 465441023 986401009 800825898 283683325 920847893 1029085907 691739694 851081053 190069368 97651787 901815839 338836317 881753803 189519719 477586485 377523295 486201971 383657702 878172551 18334952 906885387 81552841 974988477 48576925 725676188 748038488 824070621 1017340801 931936165 230948257 580268755 874635169 866006652 118233675 1055856404 111908913 842793273 776227684 790179956 587838454 681423794 215396217 297949043 36291059 93085094 945055802 797812888 784293983 470985430 1050670316 558179502 572689813 157522450 1046685930 272239916 885298271 148856169 547044402 59275699 421756696 861023022 641894526 99761250 297729920 135119732 493861167 747113235 1052224280 904330686 602050065 989311813 637518498 522831635 263233890 79866438 167378768 291679772 223162841 454756183 628137551 312218715 113263782 544275873 983698354 673781905 1031674227 150470053 795235369 800650759 864622465 895762113 344567476 735796967 288028375 551274193 727862138 652534426 271630094 112692895 646523925 558586804 805794135 314374587 231992469 321351662 777068409 469380169 873042645 187817573 374787234 905941569 153335135 465920869 1018682623 394129855 686874092 203996072 687509391 447755378 563739283 263186913 699472909 744627063 248039916 373239095 120283874 224105335 593149423 309738405 299634407 374939040 342946476 1000362381 617791104 519383835 317432295 908959245 169839034 1064745487 394927941 657883634 699466769 508507749 864934724 223371786 650144472 1020895167 240448567 776737092 633598762 681823477 154316137 1065018582 519624948 4823424 580187817 639974403 556486165 359983054 637099757 275234652 552042315 579651481 533681473 289849660 644343046 746729085 130013080 449278010 437181860 90259849 657966699 884459937 1053630284 259782516 259759381 648340734 82234052 844195767 356917308 513340780 703580373 118435911 245277372 222347295 584657304 197578897 1052452905 26428452 509427782 1043571702 991077160 665133981 144919413 1038948693 92684642 556421708 510794033 441481826 139394549 621906979 381360833 427321105 951322785 830621474 460174628 829027406 333067754 347385399 707202734 218527521 151418937 299120070 638918292 376248849 942506414 926419988 844153833 204908802 625551258 752862183 662730842 1061722604 1060690758 703085869 235637922 187023768 201423055 844489431 895252140 181119950 486962881 296267791 650552237 61980614 942272555 834938258 434205801 833074004 276757012 204755270 428173577 34900194 464830746 536652694 601859501 53579478 215452551 972417849 313492139 468384304 897415129 201074990 59284558 149289754 372209616 719226456 452156582 409837828 254949031 353432242 756683895 994957850 1071590124 1067167537 455856457 664456302 351403273 731159101 674163937 696196291 980044146 352780412 159358417 910579515 941317833 794857381 719171869 966833498 588909015 123204847 648675379 65478154 796850472 526868970 366265185 1026210614 905569442 359857500 87325174 257657687 563127465 72379982 27535067 135702689 546607979 544857859 382582693 679088901 644230359 991707196 402995251 298086920 43323705 1072501292 138330164 387721598 192973521 385487083 799732196 644565820 566587449 546031312 890577956 1063206928 1057526844 697753080 747078405 558901045 127028579 360799971 478707446 438144612 248748234 544861251 783062715 1065207955 622749439 694372759 967818668 238640060 92654525 5374000 685754303 156256902 531908772 823063067 156534879 1013895717 227657304 581775202 791931557 131405497 437136718 853437007 410491786 94061576 331582831 298195126 743614155 547898326 783345761 815928980 408650858 128727686 80847076 375050760 630386644 5759292 419816235 427400069 250886385 399268392 877341329 831125578 526069263 344288665 172829382 557596341 685495050 104724493 227613982 834785899 370414375 170387401 693151261 922910286 524484250 213606009 789667025 1026463000 232989299 791620211 72305379 583321438 824376886 202686456 648920963 756968117 1011600008 592537305 694554190 590191814 227465876 605426380 137125559 444097888 510747848 530693018 459711246 677825334 775646628 731681589 1017286448 226839744 1022607673 352736703 166757605 384754470 7374062 465336718 928655388 745405736 868712629 92539235 961721643 446298063 531188510 660904705 684232385 93511672 763117608 1004118748 303066628 288257692 846986785 494111704 399951946 976090627 552485899 905202215 908786219 481801827 616596342 994629390 279713332 1038922738 482305247 543517640 172680448 933130338 221424332 618296777 501687074 624685397 604588050 581764718 637805567 866604234 445150777 928658334 500119463 1067687506 799072551 826569504 939422313 613105398 581504024 739880206 446559665 447138700 393679828 670480094 497678006 17248992 328834251 348934451 351506182 626814523 600963967 88033106 923297080 441589347 362359545 308981380 867954452 7714120 634743464 742056358 210862114 117138136 716531177 729911286 597539636 948765044 33122198 325177979 613263133 362144725 194166202 435646344 52502236 56078084 409176387 375517886 165907669 183300963 994648845 982286820 800618309 99462562 118585548 96332900 302992287 241437931 57769172 1016067287 501230184 25278283 614538107 514190156 1061753337 1050328673 822411609 483861446 514986723 690355135 59853563 457056174 833547340 428045136 447813226 758264007 460585584 605493455 38167158 916710004 740842956 518334963 750034618 415788354 701161142 887900696 520561256 374023905 369859893 635002592 803841750 425446395 220197348 200590796 658467224 781047953 1019779644 837998223 1068443471 893247955 958689236 209772599 354730099 810975372 213514793 452905180 1040363179 792140580 479604390 206059045 741920719 784373016 338277247 36324803 198464736 979016558 662474440 632374618 755505352 850540978 49559029 445485589 893551840 693872888 1039206154 1065083154 252834979 970089560 19050453 975090752 953369580 916558193 932535247 631713659 946816341 541294173 276536702 409158180 624653540 394042296 905296209 904914353 156092091 614772414 433719056 246802850 946880644 1072702023 290426241 291436176 133629290 934939283 603984446 182143464 318738277 903800261 501741801 423492478 630075649 41089575 430847355 76815622 20446208 979658866 682286757 126502425 516487571 1001631364 296219189 931029447 622324140 365104409 962694750 575110037 744287666 16704571 172102436 189799153 145788654 141271118 992574481 532733803 499022079 409694091 295690674 837187265 383764382 353678806 367607827 657990326 170177326 812857977 674351561 375409716 54268918 967187488 457372319 654338123 1000902463 997005194 777728828 551978240 1010269880 623930026 181406002 414242731 529464878 477030832 586951450 347786986 398422224 828076410 618967980 600312540 159433333 294340327 116969935 367733660 488015205 615929939 995036244 563827105 770340952 765195159 167726559 809001691 809320071 981982323 154305610 73171831 495531451 40997517 203970397 204898040 496767198 957490200 379762577 1029920781 286805683 484924040 515539458 533769893 404422703 805790439 136897770 1050021532 451309351 196065919 243871648 511826734 348681974 989097618 372190220 384252243 421748942 329738458 656452547 635849999 464771578 1017345505 178183102 809888595 508885839 476317490 515952945 215272558 1058623161 546636706 37224550 726662865 482387332 843592295 682681678 39146063 626048507 51881089 587385323 264603013 1011355309 845240243 881467466 306270668 920702458 449554007 590831337 941972474 766264690 289129159 523765519 1052613975 686359759 779360028 877338070 910560817 354636438 818623863 322926446 880075008 174177756 6088557 1014701360 59889364 1063760930 332206561 911833266 1073278065 128422508 509039577 679269031 646692765 169085924 358983953 347799452 352378725 327704904 543468031 420390856 866709896 63487446 705898486 480383684 948553185 286348610 31822836 635895507 540296116 888807678 837617222 736551688 543961252 468041675 834532396 306425716 79748164 599108909 1019103493 99732987 639363806 179860923 956734829 419663789 433905997 681781084 620580129 330941583 322352052 619787624 740664768 973245954 244885595 620209828 834279709 609403923 774814480 866784039 109113307 308127863 108583795 24839525 648298878 629369031 129444950 66812641 737132824 190775737 630653799 835934734 843707752 178971258 443337983 875190248 880316795 662878910 783643729 19592168 516515987 988374958 205825571 910909720 478780538 658309730 876118091 160764925 377613742 652027691 715590890 575022440 343905555 93303995 772425061 370173626 1026697235 477340504 790185257 722549963 649990117 39217591 621008708 377435275 695080811 907625787 46552294 284762272 50952129 763524164 512385261 838823333 1049082104 1060232245 505455142 292867339 506189071 687327558 848578230 861229562 550178172 654779550 417503787 713302423 6522932 867846454 14427889 854434461 228015955 958691602 209204377 946109197 909773127 937540619 793655040 214245716 1050633084 934461788 849600072 219548787 950365561 800510848 74366924 562679114 226845993 748386641 264510743 407097603 131243453 624069812 901211672 498050841 448052702 317875703 976367977 615536264 1014215563 125863705 313879008 700773464 831142878 786726950 803109794 466143194 77658484 192085266 782632824 228615194 528655173 717345943 910177656 857677828 243037767 524546638 16671789 952912341 484753980 202190580 75053243 812845847 904995033 363124104 666473553 401964524 999644638 605351492 252101162 395103374 114992085 67769006 182397846 91795078 184649887 1030525792 512243624 867927812 936309967 191521071 293764479 341586994 949460124 947675886 548961810 879407070 746931086 478607493 671287653 782836234 291337360 1024462533 307624155 533987717 1065310441 40197335 360262120 305503281 1024217537 206223325 532057809 835870224 705554428 676604987 951539566 622398817 596760246 994596188 102377601 364411134 175108757 860012494 244729916 855026779 167464852 990468780 417590253 979033458 172866415 155447410 387866922 789112186 969815630 51717703 948073637 847466837 561140797 228729161 1053449702 826794681 888368637 60001705 843993641 93595044 640025928 67759004 825633608 227308142 779153506 524222113 875908712 562040004 13138507 844735824 313496126 786143323 307850216 186606372 295126970 414628987 691301052 457361745 121475607 562434633 30552976 230649139 414773139 320037436 680730217 604575892 71440878 368090334 206210075 32601380 479814872 581283905 942769447 549530233 616680925 114086055 242538259 1063282987 69117735 79603224 48261610 1020324020 793402253 634141651 367030683 875144668 323936707 504047908 557121172 433202302 991798478 67222546 375652036 423206313 250662417 137649980 266124830 403677207 1016446181 425928845 871975329 1014742158 289589723 699622638 103486475 751758358 663421395 820120782 60050116 391003302 696699085 482327565 933990529 51314995 457544822 754799463 602019463 300927836 592886414 129920153 688009973 277373914 62355238 1037723375 920832119 771200938 697438357 570561439 9613142 997945840 367556650 608680247 408693410 59055042 501407009 507062496 330668029 579810326 337897721 173806519 620654218 236947768 861474589 447487424 193532532 412633913 708240469 307754808 340456546 628102444 395575586 652173221 61947063 379751859 710531366 837635098 957713975 488034042 493816540 394950514 688421423 501540725 1016512971 857874256 676298431 819786956 639735063 482812561 325980549 297712518 708910786 964890146 796960135 689568914 362131994 945792051 563908976 14523637 677995305 170959024 647934780 120713676 627240614 200108135 482969794 962976634 664029033 869978300 223754954 527031648 219534800 918743634 410264574 282284582 854859463 942585362 245588250 328569935 1031638455 732426314 48718328 526373039 501161662 54259540 830696325 192152887 612201313 460512375 1041607327 160077184 814389233 759261879 256562402 191250317 40458687 944216244 669454982 894945202 948095049 537544881 667991745 239384501 981190809 730769424 992390843 696603782 75382143 711432411 1039247370 234643213 993625466 288027510 376752859 762390875 315020576 514720297 260560953 652124095 346274981 115183010 579745652 932069506 1044732098 626347901 1025366405 655700797 486072934 276573371 976129698 963574967 498788893 432415417 808835037 868692048 453336204 334389191 471789747 961516179 637426060 554551993 933350200 519791533 960446955 441269967 42229029 852294186 284880836 396418535 637559169 120318210 389208686 610896541 190084353 854196293 639695951 996553423 384156837 681322369 445304187 232683614 362721505 1036955953 194245280 304632589 213428369 403615175 712620706 360440030 520967646 36906209 340709833 49451649 763816575 661738576 525254656 575849383 202173476 663568432 757467209 460292154 921927791 584155719 54136828 127189362 417108000 1044392476 250101836 910962307 734535826 57767749 866054539 91334347 620071084 1051157886 651153373 567682660 166573572 276255674 474697658 761811141 878833502 307882120 408712320 686749573 387157520 906541026 884987429 850657574 894686140 615075510 560054002 826969219 1060708817 61408904 529778226 816155893 85822787 754565443 198707301 495204914 100280142 28413347 449755373 809592598 818217269 666081237 115485650 346934708 107668587 664592628 989550569 917654125 349441694 101945581 323481572 270318751 354104222 388788323 432207634 557447114 729152142 520515078 59972709 52382397 122792768 231080903 217166574 700651154 117661436 740129227 960614922 374925129 464965767 968698622 1047238332 85038848 806302351 704223306 278868552 676033548 741351463 531798259 612284065 261932822 975642624 39258737 564943843 426619916 571215630 165220023 466286911 356104944 354934615 273628148 364537697 908427872 718949561 229026453 713259747 825613930 1007670229 52119856 786254063 303186421 484720265 696859677 753405566 52886594 1071815672 624728579 792679852 1004621034 198136626 397447004 375546402 687549262 975840085 443662081 286384155 950491169 1069476463 958639797 1054783292 913974136 480381084 222926277 185752053 228350784 1057479858 364165366 247323888 1027615094 405335559 955180966 698584929 303573797 516327829 917023688 989410216 607789546 959955660 45857287 42427798 974020482 1023730958 641886612 232692557 354686477 139524834 271890848 380136841 368247819 475592418 139155966 868588827 255499116 798277681 726043018 162035420 866086558 861957101 437954489 188512565 45864514 899425900 892193578 783117168 353987688 38953478 792478353 1029726340 325811013 350089663 789229054 39838926 504237027 806351406 5687449 150363322 94313060 553835268 789337231 886795015 478943834 151193482 103263560 506694981 581228843 848539144 491887996 444124947 729163945 12761665 1050365847 816749859 82066052 672094511 481835548 863177127 36536440 353180146 92558005 141984709 1027280196 974525069 588266766 885375159 84701226 520778386 140868376 914162303 482656489 987863533 524931548 739080985 716591672 130102241 895179653 60879560 125529715 214046028 381147115 167811596 233171362 941131067 918904662 831590012 1019585264 1020310026 242413031 923194851 772403536 886630773 670908480 663335529 580982956 339365451 251362481 885197302 672065003 742360101 820908278 878240239 1063576498 1040329164 420608423 663689742 419557753 906983047 906294052 828345856 1056724145 242781832 976443293 967515655 624690129 319869521 573297937 185312714 375406547 445406237 49962208 527679083 718467643 432973563 666316990 640837471 460895189 1024270224 1029266686 962735432 709071690 524676661 168185233 769892707 135761114 111933724 883426901 1056368613 268820938 554221400 66184589 406621668 959257711 553876837 804373639 827476259 176630898 353611528 970930694 558366380 1056733849 1059600252 891797574 862052418 312789274 66965971 61533717 1007036250 534425023 902846065 929150316 197481817 771370925 427843931 973546187 200157984 952345591 72512145 425771529 1048733665 787601243 139239309 121105995 75794022 861269119 197789059 46442382 731831547 447856867 611353353 144341084 1018620558 61368430 34673759 529076632 586540198 448299083 652260363 29034632 916910298 893621519 740470128 612500983 251971931 667870938 824755379 349109217 253005389 100030201 163077697 880511240 954689082 609982524 528090980 76105431 971481235 603924113 493016756 475322024 708518006 794927712 403407828 1068195243 1006808237 1040537568 379806051 271094285 441798119 557643056 658668987 247454361 603951150 157558591 366205289 404231344 676373620 574238400 1013198661 782754590 811901720 632291455 258102125 591042254 266603035 369893560 204297783 833753792 26724633 207971223 916388347 357316151 765531390 227261750 774985147 980466934 506969562 1047050713 1050354514 1064538635 791386615 1038897350 3055540 1000360156 554586699 34707633 918556602 744106126 666508251 213216144 522997486 260164059 267557207 691393737 74827539 563358093 640386041 495272806 855666565 15068642 90047069 49653851 6800031 1000762886 874120749 195575738 790793539 515892116 357939355 934235756 781379789 113826138 259755803 819290020 272196820 153232278 548323257 1022305384 369421447 510346794 632349551 120915399 521242278 637218446 749152225 818944195 925556771 361101296 499879924 572215212 804392547 647689969 252546479 861366254 216532343 983930124 322563261 264250379 106741128 765900687 667212983 785432162 597597125 156817284 533820182 15328830 38491738 708222097 895946318 563436748 165440896 15210809 1025827487 882159818 403667747 505195910 264256461 528352702 667320737 856226837 1029252313 19052526 965746397 530690676 378085584 292307520 847514923 485234118 994092478 685660952 88568831 881711853 914509572 270681241 769697221 259608721 117457205 267313155 929461146 645252167 552690291 26165286 814659796 1016397791 26925070 83533758 318388604 65851974 988560929 818485583 796618717 751260099 796676910 175742023 954796087 577768475 190652416 744692408 274642629 1009066116 976251069 416341484 11381773 637362690 57751708 33415330 316678112 939563698 158765141 531563044 960823563 343390947 456524589 709245789 1008230711 162266245 465427787 277231030 466825125 364804328 661488141 11844523 692783275 816335114 602948792 1043228404 542951404 46692435 231350501 231027058 115726908 177783287 93881797 837183616 634647913 859895951 550519618 950156630 369297897 237509979 98223489 915955702 884943212 291591627 805274854 855328686 209430233 963764103 368403105 962733726 907659381 756785944 795251432 861273077 246576892 266664360 687309311 784346334 980910567 146081426 1072726948 703002053 511598430 1063029700 394669003 855595513 401672769 656123914 927794901 31685476 869891509 512109911 801952173 131537478 939170018 200315438 826636832 553997288 816930822 313556912 886114069 191387621 257296997 440842866 794482793 740456700 1000060798 834303374 1036918123 164775949 194018933 611730977 419832316 145291655 813553026 221588227 802387115 569470607 37158715 828324253 1039775416 689426286 321814487 88553993 436092530 605073213 505036711 604756420 601754593 531553221 292991712 106680846 757691661 255616574 357054403 680421085 104577386 811977591 825808787 102442998 290277231 801587439 857755820 298183604 676747417 163385584 962230004 458522088 954697973 9810574 911345656 746038898 136306120 217968007 591271403 89505234 1007470633 126570243 403695257 928050868 248061110 178250331 927137202 276619992 1072181377 316686483 862148217 357438091 732374223 340375040 890103199 1029300919 46947981 127367940 895196978 211110844 643272558 886148905 33551940 862588323 646003926 822029530 61234903 643239997 124266723 784232501 315959943 441510696 952440025 473719811 583591332 718673654 1021930142 483128739 273615566 671010008 132356894 25084576 827330620 276180274 175841552 86286773 783185582 794086373 174696180 648247549 941105353 535960722 1000334147 406847394 485686954 58945013 799244462 431828322 766733340 65637945 363620956 717759784 287193737 579267057 1037874911 1026779463 719485605 93250848 775310840 135667289 629375529 783782789 437429815 551705736 675628103 425014876 909002250 542822079 98539347 481426808 853436178 554661000 600970841 554255121 598038391 841892006 949604391 204448767 63388776 947864685 137761162 127392297 953852980 99740917 655166562 357994602 379402508 379754818 80867306 611421441 832598694 477790172 973163015 174190224 98740389 918727450 50982544 353691182 881875906 979365346 425740369 593363909 438856365 549962970 927499235 781702234 909404544 67280297 185768035 723181242 356802450 38434144 655558357 683553235 671351592 487102980 503047863 751055878 408348816 109996080 813966342 187163065 402592734 260495208 4666173 652166279 557196337 42752958 674773320 306984416 463579946 904847919 993107394 201949564 198986304 917647607 608159969 530064634 842947454 561084274 675664528 557000808 391778600 88763877 929111039 24821879 742780660 615517025 838722631 791705506 403232944 828969118 944660391 1073201799 603159470 28392052 205857189 904767998 1072549976 647043508 522293420 922857511 384466809 343659386 281586280 333248215 213719472 13726628 766101072 140686238 766426965 716738409 498354340 535050949 1025074029 16185096 821568978 511143682 977561852 24635697 901359089 1030817943 65952136 695720315 185449456 424464206 884924336 226578973 640131404 1044954784 564199259 739327863 99656407 308379091 463791512 784558270 413546200 31795710 631788095 112914434 619365589 74536341 188793068 165500851 620075583 622278120 56557500 52347010 597021596 341595781 290951867 531593427 252412204 484603683 592302999 814864592 490081752 735107477 625022036 172403120 730401114 450085590 849580889 749688131 443331987 342924945 419002402 815729083 762326459 4046770 493518365 969979084 950787696 40780014 368087594 979942837 649554672 138025293 1020680133 790619484 948722048 270281260 120900677 13936448 800011774 713864388 539307604 360316657 1056813465 510888657 1065521596 489549021 608445631 4122418 778522483 879707616 183565473 851595050 458487704 278985801 701925053 871620383 909079196 614099703 44329126 757132619 119994360 288736832 883281677 778553289 27047891 656805282 67692594 750731142 259501939 784700515 710430591 23399182 1027107493 779911644 407334112 421058655 71277905 274312147 1039829632 681353308 387896478 844760981 384710302 730623363 46096733 1038903378 1037642306 1020854696 718185338 373918015 645099163 821644626 431496360 171430204 714674942 976242477 910163030 35000778 886158299 1020953113 350361802 170095704 705502804 143696133 66465761 989726019 397153036 77230296 61826372 745300833 599873041 749565609 563699466 1018535009 406231925 1058290862 42752617 1047657641 932352446 1044485565 119718722 481614883 271249027 227934776 663043019 500181051 622090993 149856566 666363937 545941737 426271533 781897397 459654800 755930138 190182921 505276173 805125910 942686827 769738091 517205965 788933751 821182725 961572278 75371973 995845383 588272035 373523333 926951879 1050749606 806570362 877965277 260941919 628292564 169677110 422041423 471460005 216023643 829078467 6179205 420307130 147815233 542815573 767491412 422469874 870780460 1040811200 421973172 581760023 727837686 504625676 433661911 268870772 353708464 648793391 273962794 719633934 927645728 902912919 934668407 787223023 867207437 18363622 801884273 537989303 789032973 373949845 1032256174 985842678 913848279 451101507 815602025 939520450 741738239 453153176 951634360 1043536545 963007285 98372639 866079072 932228842 548454597 353755237 421680650 358939998 547137740 79454314 688143020 604402663 895848857 188958216 501023844 254119769 1051820390 546529806 864878099 377469437 780800670 732100143 154671749 335408691 1033626524 404171105 574820568 570971191 207901514 463874891 46158911 95004015 467200689 701923620 321223248 907227311 539908226 989345582 635282594 647582827 898681263 77990233 805113472 140979432 357773504 972636081 63392006 856475170 103693259 695935304 624432454 173143264 650059437 662189354 546484742 324738038 558252971 632826749 745918583 900075881 997290675 880961676 1000846260 969782668 480654460 631134679 782570715 1031975632 578636708 593264276 518255340 173039810 472221988 870286074 1011819402 805019560 967908918 590606945 717328227 456538965 468508958 568563867 204345048 797847979 165140209 864249079 169633001 1008310179 595959220 332096247 59032309 1029019046 294151814 360845244 683691153 466610620 979512146 268455758 265480383 832217050 329254327 39777491 632722296 415416160 1036309571 859160556 304377688 906992620 388681251 566870448 784436356 536700429 439055988 495197538 788087460 68985484 575090642 69931789 499914790 680763937 890592546 574626150 943719555 232340862 595338095 881350305 1082010 287505753 549035939 388194525 373303751 1048266637 1063718140 803098253 569678625 2783018 551489143 211983517 846302841 274399694 1016124653 431101955 225200237 434789797 377379119 701659133 491961412 921327629 408337577 256825879 510145708 463691352 262979409 727997541 723668057 4622905 464077930 747810058 807033928 396839562 500745031 635420412 685108214 477216043 833577054 235373925 48020945 177739667 790098196 722278956 390488735 295717681 342479432 1023186486 183004151 236891525 371717147 722288232 927520571 527861959 265825926 232519150 521054302 489524266 379943711 693680668 867267009 178051317 64038039 50553128 805915540 883142920 171194907 491211716 18964953 872275414 379476248 605684123 248655064 797786251 641288043 62264605 166287553 22115575 34070273 1041577950 944359984 932381139 489479590 771888330 14577682 696804918 862108202 14956023 584839589 281232428 418441573 543189172 276207162 1060047165 382410796 463894199 1010539405 238030925 972894684 887411875 175749379 160169745 427976200 984544876 873219121 131211634 384768951 295212075 762992887 107533240 708140952 417240773 802556581 501232662 469825589 610605347 1025050474 408657832 197450333 327255451 407170082 632136629 310234464 940068567 794703786 463487779 749760261 188937198 373685137 746604948 161781191 229365061 557695090 860692915 711561571 547533462 644196885 236236030 18124387 611199063 674388297 406232661 298887040 572926558 594884893 729990575 1016178486 274186661 417835120 29462950 748268567 426219613 837605454 886837565 79942040 678932427 1037642528 269004451 963051328 245571483 164023333 581998963 625462777 38013580 278604465 422132959 194362992 671340916 467877875 432904405 853664511 823907954 572960693 648782537 926593738 384965860 691281343 593939874 649416628 37665470 652489182 957595862 519911035 331180403 367152908 1066303248 929317279 639601898 189886037 970823820 488552503 988718998 818726983 937284944 849093297 949442706 273782704 1049927790 801764505 1059689147 353194802 42370506 742395442 907025298 845594871 409348122 921136403 991747004 1065816896 346195973 530148581 317838462 372067264 794439752 1040803080 249291437 545930067 303404484 166577466 1031537340 733087857 322478325 955646071 711095754 531199275 1001856734 110145693 217959174 116939762 614135728 900737156 844310134 157229448 673511076 430145429 581056468 1044716737 176745727 985981455 411747988 795466004 113474043 380357027 735397533 28409476 343099319 8396681 231434442 11513089 39950221 1058721038 517941499 261043507 1006856521 191811711 1015749409 820185523 239510528 614541414 541233475 187675816 879918656 152597831 188416928 205381851 448711383 948923926 844514423 726465322 43845155 320886671 713990009 974568131 613299719 648183575 873070448 844566096 773620476 718886558 318260926 586392680 143752249 519435145 376844066 293589911 365415486 29390435 821682870 488649727 7834022 975087770 667681389 399010929 462566378 1001075081 221075293 1059374006 450906491 681947494 1020029406 635726405 153280872 549444079 77553744 131605982 141588633 809502167 52666013 269323067 322677425 941876792 705084078 823056887 959892063 495079996 236980261 76856104 926420045 497898195 655996183 701595462 725096286 722274817 757309610 355136327 111586987 324664162 666612028 419722042 402409086 381382590 913170213 652741023 180212153 1029591893 1058489023 331874004 287883465 1031070727 36286146 865581528 423381062 413935798 604004143 397737159 409210507 216726202 765850781 114499492 644189505 237482321 181110401 1047795945 971147719 378873273 866866140 965047636 685445633 540818344 858043315 627154761 86626441 755602330 389755666 536258508 666851587 170226560 1041509448 447434470 452822398 655721865 1044858565 222587271 727304785 653960205 675466593 490291188 397767619 779260698 343706837 662924261 466427365 141139823 134083931 152699767 582833487 179313161 986620479 136156055 991612138 540572279 124476814 917205483 1037971361 890703611 914335368 400160704 59000890 376467741 396996337 84564660 179591714 234569086 1016347326 166570882 481701080 691789811 876210010 613408878 344471587 408504711 512244454 1062650343 993491469 1052847417 199376581 717313934 477885017 1036019701 474246682 73867914 19645705 351845678 188362334 382268839 577378726 256399940 536412199 386669150 56946221 790462452 505434479 408749805 582343267 786084467 796331872 279154194 998529172 436556914 285811056 423991187 521139090 143488678 730031410 468353990 644436529 843019423 228061920 359664494 640652870 141869264 130698517 425086136 878135112 519930382 570377938 668286368 244995727 219069501 303559361 195466104 737224394 927254814 815751032 819535735 395397154 575236311 1041590133 697562659 103431716 159729599 1024043290 1022539199 575527936 1064159041 808039085 895911271 953531924 419123795 500838457 396817338 900413468 103086744 920658338 726035801 1016686782 439672509 639789838 759427789 687387259 393284989 859931601 194216608 946440628 824545591 1066591636 147703137 440374572 858654117 273176551 902700434 475418526 1063585595 480362638 591641832 1019389007 741023992 835131105 1060120800 733159576 916745752 683907089 849807246 1061802438 316726549 824647876 628770548 1036427970 216147877 696530423 853975699 325136004 335850231 827547183 737881623 298959698 660437499 536015013 731871877 747440370 858194228 99854634 710433156 89350807 820412374 244057889 84387818 826024232 366847344 477040496 18059086 619760538 342110305 114145143 566408419 24301780 133148065 693992273 2454419 940967238 848077851 1030150423 672639655 5749022 483301354 1063385188 92975521 897745415 675277143 166033104 522769987 854944039 457207762 872290337 276719414 20017593 991644623 1017686271 741219403 285288107 181162202 133748122 730540073 67343327 731630356 648182899 443847321 263461767 848695479 557010353 276628660 328058765 727950501 890951284 245326784 780773327 979159967 417694064 117426549 134886056 892314057 553369181 540374038 275744917 581068976 325774195 191804086 361029314 677436732 1073278306 624262176 405948966 82763690 476435995 98264879 193668560 799569633 695196550 506966114 810206058 239022714 199272788 715798957 746497289 858463607 1001016736 664775643 965373962 1016483514 875447569 646957331 994730470 456869960 821049413 18386199 959090447 250699629 433120139 247352859 123172647 253163425 845315055 55731667 340181932 865166346 891221032 499276751 860094854 854528250 600609560 904951393 525859398 321958151 171277145 616666108 1001210210 348525016 392253362 310875336 306767055 491884474 514647492 87547717 220827374 411161054 113257754 922328251 324886204 596687588 782786179 382284405 494907570 712681747 1068417634 433264635 355499703 763557237 89703745 287896709 585823972 928867537 456530261 390891897 3242423 957687749 339524617 327657411 968702808 1010353095 918347740 100488946 441273403 840498524 913256794 49327292 74609715 292007323 256131545 852819619 204876763 535672718 587460361 461892083 743246409 161423753 168331009 819065164 255053170 868793458 954128265 700764593 384784307 128679216 233466181 203588880 218554650 878424044 745107801 410390625 436520843 83810688 69348123 371967292 882346395 213036974 536251233 117529276 549218307 6135865 723383792 925193191 453887004 1051030102 1036833423 947898903 318713813 214007940 624018502 1004691200 765655806 335490381 832590836 544194327 727762640 592463389 660419139 759210899 416798590 946803223 1047956364 427747062 356496260 927971251 48171782 147593373 324167348 235096380 653859720 938563333 323539792 923213845 108221029 251499905 746931864 384643063 348988237 878212357 515578351 335642377 960825237 729540848 323334461 875563560 670608117 68517502 409313174 415252226 121697128 722760852 565385327 591113648 950813358 1060569774 749882844 770621741 73244805 1066008022 506509330 138536647 149302656 254224370 928097217 395298164 161368254 782865234 511050881 120799833 740259303 451556154 4327242 40344991 337790374 823117447 402943355 800799059 82524038 571595484 756906734 993015158 277854497 994748608 802271082 844750853 762457945 642609808 176185858 1026749263 425870219 111062720 70346000 819573680 324691939 866664680 386201091 1016226537 280017868 183396928 426260691 349052985 766656437 17631592 1059473956 463572683 711118221 647905155 892937609 937910606 40829137 163474550 982344279 288496849 156543500 675468678 373165413 126278959 299250573 392843373 48565817 890430807 4191952 218381703 796467603 1070207529 612723987 499226663 550379979 867572236 452090494 555459371 544386308 952200535 109236117 343507826 222123850 612898014 711589091 14830540 704648522 366022655 862092359 375297590 78767567 1059230668 923214633 1059843320 442023571 224928901 614310460 461858101 260804319 660977331 748009518 857585878 925493831 370625385 350842729 903185532 966616827 727506843 751179196 677779493 315248843 990198402 990813367 599522315 650264656 1024015550 819831384 658324348 829315772 49810468 666973939 830305766 696321190 787059552 443107364 594305047 162423344 708866065 594859125 275946008 613579250 129229960 504459228 332117225 606155483 202638169 978705822 186515368 627183611 959006703 9834060 449184833 437467944 498454426 444104713 1057475554 130747156 220444392 418175078 605686447 1007015770 163278843 895897279 838190641 192365229 1060488906 170836319 823829068 988404353 14186611 577414 486204682 229265816 949972739 754945995 568960841 86697083 360702426 146776509 978174652 2752580 724695338 343664859 346056668 846905747 499730678 953802830 366077304 841747390 134800101 17454533 760332702 229985427 225355790 331278615 185311231 235932711 380101256 464487861 855958248 266425310 869566263 207340393 229165607 173489093 216885085 199584135 654197343 127190853 59741418 715201294 704822412 640156778 79074642 941963032 640135158 899891936 527267513 867101231 1022591998 1036452060 986584082 810054489 538685126 30432627 701829087 696584533 49478500 173867541 454597161 488780375 136940037 186391457 244563412 623501120 565752190 511919365 316798917 462972090 45973112 430344524 1059458540 65304541 118865600 196837521 242999157 932550756 952440532 989820536 130162255 685200949 480320336 390747241 500056059 827468534 819987993 92694506 997613240 755285390 269753714 84492783 248590037 412050592 973477951 812832196 304877654 486399683 913872072 1057930124 197478110 290596307 419022142 881758856 664321781 957301261 792801534 278273525 671993146 643165240 813849649 569053333 492359283 436286402 836599839 260732624 311613255 309841310 496913668 700492696 446600222 970586316 928854536 132881172 449251754 549389577 487845013 584575192 50436293 466513690 773064791 527258478 785427141 694123107 1019171493 179891453 228646510 919238362 1049969245 146559662 842520845 693168968 502807088 340679830 383659606 702196351 400216704 182587941 343191342 846966986 291229125 707712968 182296268 1025946967 559706564 125975148 32116234 641123276 7101227 115309809 518552680 273367123 82694315 53056250 20309610 165872079 917165020 410213179 139549294 492302443 237073493 102874642 497703068 1050533045 376184814 865441043 401476443 471444686 893227416 747020824 687874119 31936306 135614103 710674489 182035209 798220389 369419987 1014245194 240722143 542045041 801370581 654605278 641158891 554121389 819135066 357242576 922240679 573000353 166135090 314643823 862086648 304339319 435895687 531695434 513594876 464538162 519398180 577007258 83830578 89283363 293612389 147693514 195237508 258074508 684062603 437549566 280516732 395457307 976701751 256171378 811721266 924556025 640095329 738005622 709623071 948039873 171657846 260662354 933150722 875301704 566290451 399441316 483415429 662758230 132842664 469242805 401663004 248698290 548497974 560741264 558781477 232368925 257091194 797895529 636021367 266192616 1049387777 132645491 470361723 751383739 644490741 972570565 683401904 244992349 276215619 384576345 940808229 97182205 1040795516 1000173041 651278867 654136130 27299695 289510210 69212516 979832428 634725544 308121861 372013216 951584370 832170737 749575533 222444189 243757035 799785879 401308870 748618826 219847605 342003667 208112750 196974866 759190501 92489218 784934171 724566012 854591257 251149081 132273753 499282585 730494185 49724490 450517620 52420033 786649950 787847247 887381372 774863892 813296359 881090783 824152037 370487373 610909880 259160095 120920252 733068505 925513886 427404466 574301693 312811102 483347781 543030456 467774637 706153994 625993530 38216130 825915976 350161606 758909120 548362564 7987047 243289244 57000159 322834236 128289604 820825726 498014348 843060417 381358996 178125205 954620244 879608155 252221427 592696079 98877625 773169356 659305277 177620690 1036060951 522941073 538207302 550305574 777248986 574007219 161936287 262512095 1033971727 379494095 328474593 217702849 1019261245 255335207 901785129 401956927 361714019 805183062 584516150 671791629 751646228 667044746 233312369 1032212526 384274006 384175061 830696693 177729537 1038678949 220635477 166808364 521555496 528391746 798197178 115742316 840690820 454050902 290995135 674446208 682853690 378376736 65360143 416571023 99872020 983272254 214184422 887721472 833229565 750988185 729407797 318012840 437173505 524602303 885653357 503298328 828730417 597417474 923169778 162205503 815201318 73746106 876601482 769987554 115587035 337150813 1046869194 516544367 287804314 665881874 172071860 126126293 171508891 580810379 168115001 343114486 510318320 241026258 714546381 949798113 369461005 119149559 606829712 693894312 616158551 144560071 635922192 2109066 26681297 485052615 893483179 211459842 554880337 982567998 609830407 709732492 756987043 1037937816 822567751 173776105 883365622 408834599 431241876 646761171 718332651 1080272 370317614 205595082 196561822 984876344 1012674840 286975066 44604298 223571653 268811946 963802087 542350965 795160870 248294885 847167130 595238232 20804771 57313896 301223493 962850544 67900027 890381628 585750951 277329189 444942088 600731954 288185700 147420832 1033266067 809186379 987974302 1047008025 244300652 651748631 636456201 878100880 124848797 1050887647 757303132 109274139 934041911 66735811 287613097 437437772 213464962 883570915 154669701 690665899 974061224 749507567 328170016 354212627 441250935 1018935969 873412467 608151395 173436049 572281826 771815806 667414128 435598721 53265609 396252233 675650378 1046913907 628005535 736754833 201233834 571986056 70646448 813754770 800146517 435484703 74065725 909704230 587015468 181262628 293103821 869195708 919914358 290691976 995229849 371667240 946856638 873890304 559846816 621853865 844379899 699130720 617684789 903250713 335143111 284305571 446459282 506837173 673052248 477961225 109357336 1066455147 1036331531 964241867 649012017 896035448 462466865 764016457 152552204 988456234 600969420 521188589 1018499157 1019513457 207789714 858808447 743946046 598457562 55748527 739162874 278889828 31189616 307287737 392724235 440615154 1022751645 711399227 1005326522 898409716 511654286 1030458733 26860750 244626543 45674254 53485279 292821259 1071551965 54842669 614440562 213337492 110683005 230792494 907173315 882358503 1029180036 488816442 149252303 716094061 231535433 927238355 253665399 586734838 772541787 956238219 618226943 155947822 257069757 892907313 213528719 290067553 414994499 706147769 426611310 81028713 540872688 224236705 471745984 826851548 205337377 490057596 831918038 394237289 652372915 149830414 585590028 690889220 273860460 347060305 123308041 480345651 42468093 138989449 39507946 915561456 155213354 980524013 968317566 126018861 1058758502 452528495 411721475 96869529 349118020 549765522 335926326 299776052 524459491 754292905 391042125 798137894 348803660 758647188 899700323 196154064 427097891 249602071 770281386 224461223 417938793 191059547 390421903 270525312 94562411 534913948 718996468 84292780 1006058490 113906022 413238959 119374930 673043906 107683165 628654126 386081348 410745633 26645470 496229047 969728700 884155902 944967254 938300325 618095746 984087749 756542135 338631086 60956116 122114105 219503957 444436219 1026750119 610856464 168091991 1027225867 668552268 217433131 531528248 659611029 358549666 84976525 856598339 475629625 994544499 951564034 331649835 379789165 359590867 899819511 587707425 741725513 295576288 348608344 670933321 346505078 543504826 864644483 957218619 559457543 146788468 903540687 796553217 28719762 500466744 768256965 85151388 126006619 828991592 290720474 708283134 663191771 202760956 1009253972 489453939 693701452 30873891 424986656 468038832 688111797 171980917 156141690 403997487 549581705 668982082 373638375 902581430 857269464 85459880 238081922 139216374 1009426628 956748970 889312891 726072553 645487373 272619369 528004242 913134182 1055151137 34284702 985828264 885158732 311497931 667081591 799773757 772434533 115599417 938866849 660254291 11127774 977752705 688699543 472918569 843876137 30903134 590947909 635054908 533062716 267937654 44150150 850575009 583734570 907791621 318623918 664543691 1043974768 476002310 622616727 278499671 177507040 445356758 316839483 685644161 259586094 1070323233 597354551 979311924 782233671 208355459 899637452 594913251 756684362 634666815 638337208 167175276 584558346 589326854 44314850 916889383 723860005 1034010217 64657956 427476295 3828783 795061256 46331107 20432733 740539756 153207878 951565293 927329418 519583012 619088219 1030022930 1053163160 753065832 809195865 958188047 746489120 444558062 732845541 221122996 379192259 633764406 491044121 500445835 770608073 472448361 264722191 944051153 720535985 36099731 635000693 129632111 1021535135 617211633 250361694 151196126 20918482 488283635 336957435 61250095 166777476 752527864 1021373272 270671871 773254284 689831597 250776330 994545738 836106936 233249265 1053000630 68282114 723624001 375690074 195280950 42561603 64150284 12497958 756028309 596211806 717975174 668577841 118544260 968926062 511355613 830806934 762965419 750115046 69635316 657188919 184074077 508769769 56726913 60604345 45918886 170688989 828182089 111649416 821814742 389423713 95639355 603720445 431750630 972589078 214902636 506371983 159186372 71937350 138107248 746036587 880410544 149900248 883664170 727733900 639894298 632810230 483895334 7400582 136235925 294339904 142910751 963331609 930545082 391301897 427474903 1027432679 615277736 357835916 460634175 900299174 209355270 206082327 1023775010 271956200 966986666 104553758 981626387 511143713 965266369 296870026 982654302 962370895 970143890 479260982 996209657 511138093 39351776 910249786 379486347 660221379 719112700 1000854668 554972100 549582170 87430767 541416351 187134316 833159074 281389608 146971436 487846591 457448576 585543212 949943151 965102268 196861480 314046773 740305884 953384474 165329726 885605079 47279083 432489559 405517686 1063962089 103514337 580746887 403621399 581719996 4635585 316161638 1032624166 956738494 815450535 137090780 976558009 818327677 891881182 350396107 834673912 471426033 100307156 332606185 1029345187 86199360 315938713 385789983 367509479 920684669 483317840 699608746 967311854 58993246 196549205 226424380 177580642 1015194467 958316404 969306305 773457325 1015280070 1040649879 702065729 627044139 34493265 940108800 835336754 604753138 668370415 561311189 184243382 55869485 733503663 609737965 479547519 328496293 402302659 260319502 854636785 472703393 833175199 68236578 377261957 383030237 79960477 107514107 582215329 520580845 712915430 214231835 561023339 177295387 340418280 887479623 960754833 397588380 675674316 344005250 530196907 540494118 452439953 676068834 905512946 977047243 538770563 757239197 847811231 583004776 685256189 385936845 790440916 632154888 586087641 911655429 833031255 975903898 221057542 451767722 435885866 152089318 110804356 49910211 863980748 687436090 582873602 1012721618 1003240436 749968333 798290561 672965969 304615012 114137739 37106987 15167640 555904869 1006808737 712194192 446852967 513234772 27598032 119023609 330776483 948861109 327136411 117676161 75898267 77359922 601137075 719367809 467245862 545782722 895381784 544679112 410708445 681319682 712121707 457564625 675701785 510258385 992870697 290081736 822332803 79627357 512974616 178911802 929187191 533808394 230231534 134758970 598320035 836802637 254969559 942089693 484474911 242654964 87563307 214230193 84260696 695056251 929167574 174396839 991322686 576766601 622425933 663446193 29886062 736820125 395447648 43603029 1003435844 391554523 565951385 910645288 1034265082 317911835 610272888 865567529 391200169 416059621 592550684 136476146 673029662 1057668189 1000799648 689926538 334003668 883487341 84483220 547850351 890680375 825769757 475256911 380402048 675540440 880945673 500332502 781994733 936982312 51988990 588744961 248221184 119861075 542922513 73792104 12366848 73584468 919272865 22445922 136477712 227264521 340679831 909133459 807381568 1036480216 1036472382 1066719283 40357679 12260330 466049619 203444581 476991030 1054477565 143915608 911536657 972900365 981821219 12129924 621677123 356313451 669983434 463104914 735098952 96170955 644278120 261797841 274336805 934827782 62193932 604399668 238758064 470804656 750072594 716551603 940490292 596502307 339192441 58517399 312890965 889425745 884150646 166068736 214651088 683032943 78245573 518319384 991627026 286057619 645582563 813610736 345045666 758949878 142379377 298315287 392069438 559073651 898952841 509604372 771810448 535569409 1039812351 188981121 237270201 308390611 1056603290 467060457 958205239 767904375 3015340 462936310 161912875 251704159 243845103 494464870 1018915226 229839258 832521055 132989945 85704761 978288082 71269561 623204236 83656526 34049615 373409920 99661247 607045372 335261596 1017034301 383794365 874663369 549323797 481665246 434969313 127705050 576583347 34046805 160340651 486276763 1005371258 71399335 266456950 1011782776 1009264236 223859893 335713768 345556248 613639735 1069960285 922383690 788146612 555246731 1059763055 876546140 461941888 431661726 147990401 979418392 476260267 159373956 549349005 344679276 256800893 906401724 367333084 782285096 178740791 748766158 454491636 287969535 97486412 139176662 132509325 1018115771 490997090 133132013 442840158 859374060 274796647 325662234 1019362816 359898640 834684963 879703860 959930543 1030321351 571710365 187249639 294555947 383193971 728699998 901497941 938252762 246035695 646113895 818913530 344160668 233625956 985393220 939248683 827469403 627482533 421887385 361194127 229126848 541270665 244449763 848133963 91649448 138439047 87498817 494420566 424202581 436793672 278538633 127673656 435793525 650719250 726794695 177415476 491325764 984542425 802250568 1009166249 631614082 922044743 816043622 842376353 311760577 1062355509 1055482425 39217684 19626137 956713396 217465391 489877113 315021966 270853699 460388187 205125682 658515514 600637704 310791897 339856139 515955498 217781910 796662738 265764678 139986561 811425424 581904958 363760367 619747323 1055973152 987602058 285974191 137320840 945024627 508706470 641008297 101370918 390036230 165223505 29161275 718644596 483177465 890276347 994939037 715771915 570255830 317692584 882197577 90424433 345417597 231630036 708296497 95272861 159624658 771679480 1056561487 523594057 570955542 1027969577 105310498 1014523965 801562937 970893240 428605802 1020974721 763898204 791407537 524227979 248637228 443938426 854401556 735745176 127391640 814795479 724808266 260738298 200704726 634073603 395480998 853379048 698567404 521983529 949928910 873448018 553423500 577444202 499328037 506058743 1055802359 961045897 512079728 478354298 1055395761 500664059 18064996 375851937 946903415 590702204 490053535 658227583 594072153 33034173 1050995559 56668612 887957825 614540811 1050614947 202305255 140395757 806295340 39769010 939668165 41363885 3061240 1053821259 41500526 277726791 150606274 1070616429 1048548596 589087227 249495727 388950472 69577732 678893694 48456670 1001534523 235982761 632657288 98552276 547002629 610025292 796905612 202452406 1065909671 706000916 198777058 432698713 845438951 546714783 361486306 975015891 774093931 676867342 16990045 829701359 833028869 744102449 725257096 122526465 1042245125 527043096 423420535 378269479 688852104 238722770 358873958 601769479 732119276 230247295 863945012 104619391 138369138 177946690 150446396 661405527 741856767 286863787 701595417 231799939 1012515061 257487140 640955514 494582603 996110090 39245932 420467032 956331022 369361486 372807656 13554094 927264239 973135953 974688184 341276079 855605354 368134610 44227988 835995083 85605145 456292733 770237218 1025438642 45573208 534356302 454217215 356206114 115188844 954433648 735010910 555397334 188929748 130533991 1017434639 459452100 302011448 1005080239 323231278 882021193 1000494037 978570937 473807594 874989148 796116597 72233688 741080794 243827930 185938428 802305655 691923402 400595173 890448493 672117641 952000685 64973513 236739882 725004275 943630478 834537152 835153353 956114403 1051098882 384721001 945759530 921449249 27596605 215777250 224516642 694485431 236919904 538206983 416638272 23593899 92993882 919340609 350630841 51217406 634510644 238061501 1018947621 736024959 1071466901 302840616 411878606 887957019 150435452 1042182313 442776505 38439421 225505038 800497051 282178548 585161123 663307834 1022513956 590257151 171314938 790318492 829361097 294077883 273547628 956869674 697499844 349176427 883100895 945369614 556345602 295933223 310969441 2868744 331972390 961233611 897531630 318152389 414701942 479705677 508197327 632266847 816192245 1012900591 197738977 341881566 1018499932 690828052 1044517554 493619809 1024838596 874408268 832658922 967201651 64474109 941938848 750073832 873107268 140632347 331170725 952410992 530234833 260707914 966338938 874569901 5898271 528748663 761950493 773761160 849010384 283504572 168059665 458499656 418434067 759649958 1068597405 819303790 641432877 478146177 956395208 1022893129 833704565 687172902 256816972 954995828 720943418 176734712 695084509 711448923 914135829 655864907 106741728 6904173 618733505 120007277 219039232 420534021 780782756 596450955 1002611595 987467771 723867920 821888605 128984547 624586796 79749302 960486226 191297852 595023888 948660200 1038732017 138889649 387852272 886241757 77729291 550494787 115374099 953988002 684438491 107049263 1015695400 768055719 534096244 230304636 802715761 511931742 673555458 882138229 1014163027 955323679 474830572 239168850 485895379 1021778359 759492286 157419630 362245537 507278178 458185943 925110303 707115368 157624204 1053782145 949047484 762465543 767082578 926454298 233152750 95658042 626068837 5297696 1043738750 9176264 627511367 211622247 172397221 465253019 639747498 443497268 340353039 241383546 144108964 873544545 588168694 976803631 764019430 197204122 89845292 570639960 729251012 292919505 883157330 882390109 996651701 1065769919 397895674 51558298 162801909 132874391 64536271 536259207 1025130747 721450072 629728836 810217151 970874678 260571291 794531641 922420758 862426048 372991194 1048524153 501615488 1033665511 1022497301 904143135 953022848 445287964 337035145 630994765 55604456 515539537 627015037 105138765 530707438 236144413 111459354 863065888 565798052 22496121 81226184 891245129 387779198 255640199 1024790466 628353448 702453859 42719055 744342806 1043837272 990883392 412136886 846522208 151383645 5914325 171190114 267554993 209558857 263960670 842741623 265091102 938972521 155956234 510039405 41260060 725749761 1016935333 470591960 577931436 220458655 23950595 133309252 955828923 892788727 824400812 206992584 884535817 647422116 517826622 331800965 798161039 672205185 678963083 284844590 313943128 292663859 705117164 362832320 468580522 604970088 106456631 426789081 978687015 789507395 1035630427 165876007 864930711 848708786 489402933 954284392 267224850 871100438 349033221 898129802 364661250 569966132 431729217 668282876 816682771 236710079 873130203 323182631 366710301 505695084 344559449 595202358 726648276 558157852 679726645 990755539 846755302 758928248 640805991 1055354420 109601728 184759834 753803692 616653847 379110192 41242399 272646292 433720373 147827768 312479478 646573397 290321103 1024110867 1040765412 643439063 817547757 682988064 788412603 416611054 685080110 174458152 836932655 746856405 617284972 717592788 513673949 489202928 300641108 162919782 496556792 795276543 207126468 541670785 308627629 128751051 268717648 50550556 673469254 24961193 174798445 903435639 251058267 802998568 992013314 65550820 624108727 537077551 242264441 768738821 442876994 479128873 1008746947 323898356 937878080 508170592 175171601 30308220 997530655 884621096 68648297 207390233 861616387 282512035 441404809 1047280197 689769608 59820284 8159946 578553680 851574754 630478140 477823659 430638859 797710551 90597811 344974436 369244858 66615854 1056559946 701210525 236342571 613420332 861118919 566569138 239108126 372012919 564736768 384563898 519301400 167001579 12728594 416755441 682913000 561898086 925555601 491491656 312498824 108784012 799242434 433351816 942945242 386723879 557012744 886178999 923167055 322272960 681469042 233773118 15595341 274263922 254220993 285730413 808462345 454449331 1059477090 375710706 563367440 196210936 139417552 899126460 256569881 452705815 164918214 486105546 762673630 976286216 517678849 606981232 729751919 981010230 623690497 593433279 566096233 529626121 578004447 21613377 424864563 266682716 6457067 523603004 696725029 661110175 958889998 885549900 680573534 67961133 850265111 161537558 973180169 544816199 983579653 1011432815 784209001 454887185 324037473 555950777 736448972 140055780 61215224 79979883 906678796 448817153 411423317 99591862 890299943 247105890 48518391 411494123 280723991 157512192 158798824 102151347 134808680 810808644 892843992 149911993 835315837 1043068460 318470751 78538729 675245412 130302787 1040629647 688282683 952903509 801195778 701943433 935389480 905438435 609169660 487851055 737918112 1052859404 213594383 88997270 195559616 359525714 401101954 608768389 416760849 110570046 72735318 907270259 508487908 595915649 579933585 985806076 1012472122 309274400 585011665 482603277 219025257 1062750462 522067885 365973900 87248556 150887859 674602342 179272489 254198980 856742462 890864302 807884038 757011311 1069910620 156296238 572654027 33567292 368649725 75745891 917840249 834891287 748885491 106955919 311354691 147074372 734674110 180928368 819091028 694761846 380594341 775801534 572531987 452239909 248250252 519404650 361840925 195499192 406647628 133394017 505886499 743278018 988959791 123562158 399669969 944719841 1009728653 756292605 4804316 187568773 285011484 983220051 152464757 79788386 99954461 360730254 715754624 373364398 80723117 958045356 442273235 442307702 814880498 702340816 2934978 1056711156 777706293 4374358 278128898 811233687 352819975 657375087 135304863 239655303 633376210 373055314 959978881 249899259 700912072 939673790 72705362 189442922 980589823 257187995 806422851 543719215 674605193 336095116 353431097 254812787 1031947160 836186670 436939301 139801825 641916902 1019350305 59646573 277448161 720510960 454953769 370363141 68568204 658256029 568209907 436110202 830421360 340289642 1051633652 118898587 157350597 12643814 214420413 93964799 615572141 831684764 251285614 613737622 33511699 395615763 943301334 786100229 219387088 143673804 488080084 359190652 342538939 561207566 1022818023 203817845 646671426 899698078 32001590 1009943390 105997480 365314535 248215708 1061531604 547477983 934710460 447992070 705143866 958762577 955335765 638878111 88936220 848158513 529586851 7741436 9074484 910330736 877008985 478578465 244932326 221236982 580037165 491510793 612476095 1026036419 383677797 457795819 57587471 261236672 1014315693 1001232076 531175751 696474545 374409024 679398225 689358327 617659618 1021208212 540357147 690227221 473840542 981615620 531091946 138887994 39249610 820883021 256889159 773141539 843837205 710830487 292985555 749576629 668726358 527330962 718506438 1054325738 46414441 375113742 555946145 648991822 786895901 692707388 35777716 202533525 868192379 607061183 827760114 549992228 626895038 789273151 336653037 1021496896 186062054 1020548427 728139008 792889737 13794109 738414120 233178743 332551138 837548161 664590108 301149243 1073096522 33081235 357883643 916145063 72129016 27323913 630607143 396303130 247489663 305168299 599640153 884541477 173123707 832498666 748764850 335509774 602433294 765696821 441910660 974719361 41014315 739464026 364804012 273091017 440186782 377853708 351405629 339866832 663887111 740739997 98303661 108069535 876928981 389749208 623763055 970298416 492164405 1044047111 191117088 720699629 626370061 471420474 910764554 252850159 353199729 32427996 866868817 1034600062 45287729 198651260 761234739 207618923 472467331 480752528 340830180 199110135 550123309 801560597 901492126 39291169 287641444 248263703 862406850 904357816 384879182 474586738 934304232 1044271223 1009050807 341201628 229936488 761938944 47813241 628632508 327993643 916490140 422241575 265219679 499174493 456468292 1055595573 883621352 330574629 1058001893 294534904 874002648 853518585 904569987 982144272 14533714 546626444 472016011 167270232 236993617 563976744 484028223 832549984 298246689 505061225 194436609 943690173 343316355 715936919 579988607 224864274 517774518 380091718 919611771 558261646 960889236 1052457102 683927748 462920872 1015078252 666362284 326811735 350533600 1062579102 375537821 295499315 968744 788479051 443663418 923248699 896910935 1048239274 70409872 262480219 473044983 657192344 124974863 228696339 134929978 1000611541 942454658 30698765 261330301 236596646 362098055 552771121 547480821 965017581 785442387 1013568166 652803018 765420771 214788658 241144160 326419686 343721967 821500421 767700237 818157249 856616303 664781183 735945312 857314590 847069568 355144396 586107145 160609472 85604214 387800322 494250397 936650314 880221087 716188295 15475100 951826458 539428417 373621491 141411650 226107618 385589258 395087296 671584245 893260424 910621603 833496064 116151134 479272692 70265619 387451932 144254198 95233971 974607332 1052683918 21931847 770964471 398297450 1065033550 161979045 422656995 541308142 859042617 958460161 158403674 809421911 258994598 699229743 152449596 171190622 113983162 288229294 36386573 265483503 862223098 811975299 498266022 410219954 735612960 460679579 517300623 405983399 1031898441 148956029 225960227 1051302476 559113124 1018982270 336925281 1048160166 192356174 625179865 301478224 858319860 1054623279 1004851421 505209363 50202008 340989309 103076674 551952160 614958327 846827750 629736438 52644230 362863852 844892189 222290637 95554996 381277945 149993296 900480584 534376139 169059887 1021261613 834394766 420848398 875916383 524334004 520167816 980801396 823984017 1042160228 576944442 517971831 681787654 84264408 389924898 726285689 80010202 1059797194 664292568 820343450 98164776 576494140 4072041 1061712950 972358727 632052920 659403238 1009884202 138068232 984345524 27589262 370127757 401396410 362803298 520954065 340619659 323448022 176917468 359645331 43623634 963893454 112333555 757195174 39536418 729066724 637096179 744918228 890032446 221835386 639390468 1001903814 32486844 928398601 293133700 375674038 164064290 937757748 579207601 12321032 161039994 651535395 434815857 255631044 160204983 1068596054 790195691 601923972 498034306 693000279 204221338 487086867 1019585674 459276251 657456252 995241835 995039040 125561520 222896459 1038445125 1038769639 976586634 181775847 286221508 198545231 644505431 1073577152 215178188 296700881 524840332 633292178 793508116 536091024 1023428128 400370720 844264904 650152577 45896593 734310429 942194621 577426942 91730606 1006254326 471801146 466253656 958050145 716165096 1033647847 326082263 536397274 989122052 980898446 252959643 458495185 336026722 506799295 812520625 925363427 919292910 859087699 630372451 794961526 990852834 484496157 746499368 915077456 320586912 335352775 26322771 630247682 40857519 1002331286 294031522 328961625 137136431 188236569 329559354 623559761 790031481 310123899 218421072 97390664 99381804 288480271 891914775 634882604 555680421 990743166 86875356 871144084 278141742 565807635 603249621 266709588 260047898 970496625 197718239 759064316 471220491 395615252 39191491 25070315 972556552 258134836 92090181 686727749 425604786 827268855 327577184 679741382 942190811 791168896 542714981 417197002 152293196 689186127 237487137 690517017 688516452 739355777 863853273 294596143 554326519 1057076419 556906158 206204167 22889593 158312574 155501266 466153703 625767530 78948741 752118317 220713306 11812561 529346900 1037400288 73568124 300314869 592636820 879284132 973388482 459019816 615610735 525879700 958990226 278554161 1020708057 311907154 724807397 89597007 994847314 465443023 773828239 988357769 713839472 197863173 615673622 518344344 1018884663 1021038605 984952490 1017001408 684470059 154695035 102617538 87757150 74309122 886346137 1041766285 9497909 603673126 789584902 723576991 745013027 755881623 209235408 940988839 781811048 190202002 898583516 838765402 221471486 91086211 736264093 800892302 489414899 888711246 398201419 1012674716 897869874 838871240 740974255 400908358 164171368 112543112 1035222851 1015210311 201536703 435476294 127419942 149284490 953103574 116911943 348652961 251557690 127652316 450079026 461176056 546716630 893262220 644627298 1006212073 217069914 105356376 1033340006 666481208 930811681 163551950 55807914 114391996 906824850 161834584 186570045 869876689 44385055 383809381 54538063 540135272 584153350 674100733 285514139 564583955 185618850 913368468 1070609444 638720892 180219927 415001801 205505684 10503311 232855381 743882253 354023594 397989358 622502265 453585379 345705452 84143550 511483710 258653405 219756647 798260026 669753091 52566032 473038374 35075607 1044327732 478987800 471828709 898631808 913965104 451937980 104839430 888292624 36449439 955305866 1060607679 13873709 32694108 979669585 259756445 287040154 387234871 317249651 213387036 526281353 1062837887 298089267 237517104 736444912 328602045 1051805892 780333195 242211362 103741015 923374425 851175382 183359941 1067602189 593594708 422454563 438464774 845273408 959498096 141138575 812176046 683543308 256745636 34860287 179784552 1072826130 425311056 964216948 258098295 502129163 587642017 1011723662 448438710 646562010 761547430 391110832 676563915 1014323257 35420415 257110248 12401261 795258335 167555091 743997701 676589149 51898840 629537286 748886626 767243471 865824985 290768266 1017898219 558924609 713810063 540676151 882366554 877270506 916544706 994247598 237355986 10654337 579990429 645203764 910855930 373644147 440541881 434616767 514861470 1038126719 380773194 100447064 39844322 884949545 990607066 694939832 383798024 374794395 759287982 25250661 91309469 739161968 73125313 57623577 502782603 577007892 120446857 735207478 286740041 37363833 443094315 874204846 793247635 650515764 419020193 578474454 564044801 994010713 527654369 281191742 669617906 990422907 360639517 705226713 70472154 127650686 13291116 72534197 688643196 525942798 445485554 819508641 157145809 385556831 472365996 384670014 807625018 228807244 409902989 448795027 991413757 534669882 648984334 336361485 973448854 36206558 341084553 3486458 788958064 645047939 735687951 478234571 132193244 660523202 428330103 200288181 367308525 635856548 898822298 226113658 317291311 1054072583 450070962 963665222 878383994 779853934 334976443 970188396 519734535 254385455 1022867365 239311804 527573427 529743301 848571840 855798562 598087196 483230112 337478703 130582112 274039916 497107340 797736162 452732174 305611421 716948288 713357067 118993769 737400463 295311217 988888819 476473468 914497941 146073877 1065433498 211363523 970183709 315209064 334206401 621671202 89049883 915204913 911377265 554311166 650019769 474796753 728747328 514337014 297078479 609890350 1015058726 342875787 625450697 35003522 60930300 499070717 662718648 674157010 229688881 192505933 719112663 332887467 540849627 878014367 799580503 589431097 862839089 327174120 105715948 893527210 152213802 102441605 779767888 55373067 755896530 396262896 294574721 353831881 1006581322 887047087 795515426 373477579 38807419 728077802 698515758 532058418 615698232 913051361 421894953 1007183995 831428243 583078354 595922079 1061000613 601672679 184933358 91491699 791164281 1015301746 272845468 916794806 411641563 299130565 403865356 253415254 711139017 57418001 498157387 899973486 56246650 914316729 98859293 185607508 371079054 84960297 891818113 217681150 1006223305 192590282 238517680 423836197 299898563 1006408586 968784438 553086466 331188727 671370658 932133689 494939317 519479398 1034382011 869359829 265512229 201743501 49553806 840019707 185268415 927620416 447998509 811274991 635553928 116164212 1011883896 917774371 185926209 924344391 60312622 619911350 562617431 413112393 403872432 582742182 138553669 776241953 1046674300 406593801 253768795 75614989 129622392 491371428 261187024 966220010 120103526 421529644 309540871 361458089 973887030 1002674892 136131623 371972992 676083862 995798625 682764849 706598856 399511999 771171705 931043529 904135465 886326896 69488984 907787382 558693758 116364867 500610186 659021099 192565474 675051662 437095437 244488261 68319853 762693035 326616862 893247773 682863740 190763394 704428469 584289088 182741314 29381830 203260086 447850958 582372884 379710448 726535174 1052756112 735002851 436408619 193232906 57032040 284778848 918072615 559438294 236563592 765342598 428456369 745813312 99962086 344909738 339667118 905145616 308880240 398669936 359883516 892011523 751283301 751734890 116496518 181979309 139905498 517994496 31592683 846601904 448750978 1032039952 802906179 461032281 1015235962 367913662 366175334 632049495 245687790 35525954 359772965 1018547972 148048223 56373072 669693276 1052021375 965397062 1013090514 919451398 117764349 639302317 702354284 885256255 412496836 3123272 457649118 202620735 195808422 396123552 492782669 219601473 344574658 414366131 586782274 986461614 651095638 463277252 111188618 553139360 418621256 660846387 979281733 789110189 568652309 938549775 503321079 258744243 920020289 152107296 999797982 256310993 751384561 965137713 802549317 529766841 853026630 1027779876 278263612 153650235 312731398 766698273 799338991 433410108 203595641 317826765 945751342 742778359 707705449 435813728 765429616 569446612 739366549 505628208 310885327 784852238 120290760 383367460 848620320 53736470 673122149 653357836 43481340 114443228 25926992 146040102 194498454 858625713 1061371819 345461046 434409909 920241519 669421682 764894210 345681676 279064631 975683926 1069676648 472887023 176821760 669175961 337468983 629592817 494988912 908500476 942248645 592516074 373556537 184318811 961281957 90390892 145069996 276618692 102551098 152539649 226146631 716253723 771487642 364080954 887673662 352747085 741395575 853746837 376060489 380839421 114369926 701167572 960955279 872364078 406203331 1571234 976352650 587762198 489459826 980965170 141686789 347408707 477997373 455357108 938404982 584638972 634493471 427162599 901552349 378335338 720317665 885839858 150879661 565909591 1055515049 559894728 302654155 710949795 330692581 270512658 209283821 428502359 180274557 814731311 311184252 766758843 687803670 372431449 333491576 701985485 163075750 879682075 172147950 951725591 764919176 336730530 916610755 896234270 527243964 354476126 23331991 756653131 32619475 177135152 890308555 41896010 1039000620 293206191 251162381 605209638 235521192 45614065 503933746 862509814 628894964 487761232 731568330 736660719 242671055 252181562 278658789 57802513 306216205 536292685 961347310 631124917 24784045 842910397 537694644 1039800114 415764942 259254990 1026374704 200144184 139866795 815532919 31473713 1021326889 913870105 130454300 305971360 473430056 46685713 1022188703 833245631 699943148 640742085 992506317 779838231 41427830 829231779 435426046 769356522 898944714 805489231 110395148 133027344 875278821 671680460 698104920 738356209 466859890 1063976079 61883936 979909601 414620530 354154677 938844753 19132481 733552243 562326949 274354467 195252946 675405914 835226725 574207320 275247262 901622581 370605143 659896186 214002381 270061372 975774276 257805935 47841010 215026558 705938326 152248549 110828092 720397075 354161048 457259326 663983668 957466201 39197104 945693844 333604968 428957183 419172176 988633634 557224192 28267346 792375589 997256363 216864041 1000589791 1030292093 781677424 937334117 251282102 361881235 663125308 620322941 187123781 87712983 206799549 11452006 584954952 55379659 173618787 218531047 608603684 183098299 976507065 657519790 343203328 575465565 572069702 552881056 763586304 947688466 835831544 219696216 865321899 1059033264 85785002 512816731 716514985 984498380 157310636 527659683 332172148 404530842 819685865 82632291 325042329 446410095 231295084 870164009 328159873 10719087 769677460 414693949 1000603264 700623991 771386867 358873599 105211726 327411925 662654766 1023031769 631830020 771606927 616819620 346981619 404156350 216802054 54853456 27525946 124131132 273097061 971754193 816381168 638091754 365979968 66955296 774469756 622027970 794761631 738486862 512955288 4102298 402300693 863178725 1010719785 985726358 449080017 444984160 579987475 996296073 648940164 723153993 516645370 644076856 250304386 308094348 712391845 927746053 356430360 693806070 583129196 592476076 235077029 763847798 706513621 311358339 162322931 94462231 440573824 1002818865 352711831 546034340 988184536 65068811 1033779244 183056263 932058267 634728199 229591154 566790287 958758079 967287938 607955235 417929600 324894189 215573535 641468393 549856193 165108350 659124762 46367075 981315744 822010651 458539770 753531122 68724513 719582497 578727083 517391354 330589935 206962865 711395386 854741375 572480300 232185606 916939138 903822951 995871232 59052510 857856861 368976161 594477081 623117643 202305014 995425096 91548517 200131237 532288068 943383815 38557832 963114068 254473087 502237096 134386358 97144255 576417842 837520395 637466113 1024683227 130751117 505877374 456425296 172894602 796051001 1022246626 413642268 580672102 209448038 193376765 459129299 997522999 313612541 893181484 1053344222 1010767956 858970829 258815785 926200763 867635688 314722594 455876811 959445672 305195144 960887217 366760927 640472570 341061828 313311969 457085525 1034511029 598350875 523131727 130359304 350164922 1067764556 293085964 430188632 593317168 174347554 359709853 27160472 894899865 81746936 996592348 1040580153 547054421 567692684 870593067 660868441 630506175 699599271 570260226 1016727215 355440220 946160019 828310107 627870550 296862032 684225545 852090099 1049807829 115506780 12740288 95902634 885579836 264223381 1021720191 239529582 771537087 875460530 584309510 951313048 569983339 1049863962 113424402 451097944 176862202 416229212 779776731 750340197 191166491 1002394166 682502715 294370192 298568345 466877273 931251694 977771830 704665787 237592450 1057414489 15985499 152863802 535508755 684631266 425027416 189923879 426954043 1061718819 91253051 332603747 845854848 368815825 461601456 102078895 152938656 621581386 628797491 516800794 569873369 963403809 6518306 320109359 105474429 165390727 34338743 607770504 599003994 349379107 1059820132 444486108 698820230 131531566 78669450 265525775 180095100 80844539 347661442 417921879 142059323 167115224 752720750 10421974 634027750 190980393 407598232 542738077 558919203 450122467 241929738 672157237 1012211099 673435561 830747883 576786116 288279447 256134408 783659617 680235425 213191769 152109310 315454564 429912870 934115942 563162085 77327577 800657361 865090414 335305559 266840411 902440533 92504041 762000436 283363935 1050334445 577482554 910858246 533070512 757354255 1055699064 321195518 273841637 284074746 787295548 715813623 926281811 368132712 789591355 988844883 911286812 124331914 437318262 662913370 3749205 246217611 77653402 307417922 1018045611 586278193 879816564 172069289 1013667445 1025409697 987999810 996476246 380281543 981616661 422635696 343115091 996808126 968909412 9986450 944758218 13847079 172158691 1067414503 767795443 995271355 622975813 831284723 972463960 428054064 413512831 494135486 288013170 151867753 859214151 180547010 126206348 723481187 416407131 469236327 108749422 761279970 1045748690 505054559 437570018 1006177225 220896504 197351273 153877740 231588626 35171081 358633431 206007713 82019164 280755430 538863541 790048099 491322183 286442361 968974447 739231594 758594263 363857300 467826094 791744063 151954350 190283085 620913424 537829433 1016594273 84842885 150205104 966036332 16271101 254484949 908722276 557828698 504947317 863961452 976520302 813818331 106242851 1069215984 991562304 258378007 930511161 720846053 485890700 22034326 732069105 105201797 23848366 673313031 806191133 189002154 229116608 387168059 311043203 839679564 110050977 828579646 141353043 183971916 643986919 673644442 420507550 766192870 31976747 467309550 681491141 575103225 345266797 428553894 635592138 755870899 276286687 83450652 846859524 825455508 777817294 819400431 81253142 1053643039 466284152 1041009392 377688055 589569249 167420847 721053974 311866064 569692710 497420617 606337786 963507715 691804969 877325356 1047628366 967405200 108249512 100329846 507334182 637076624 315066244 77128540 1027890216 317384502 323376084 444832025 852939626 795994194 1007568588 77040087 576304227 614479944 292982717 639394336 397291912 653473714 614849356 587462641 580931009 643045893 73144402 803072223 517028100 238133675 611787393 440339139 10371475 459817154 306543049 840136526 221386596 242606199 960921950 446514759 1057397728 394537963 506802019 231365306 155065972 479337848 833503665 800133296 159879813 340518132 706097475 396547853 950420891 600770788 32248664 39230991 362844162 631695716 478012481 691260090 121439507 265765359 474683318 276442644 568718000 396716106 562415474 940174101 402361581 656553392 1035868972 604718120 713923628 559143468 426980330 799782665 148620535 276388395 531785151 661093220 562876627 112981449 879811912 897087061 249265644 721330613 211518122 57004938 749766179 956198266 252578325 314343650 799559380 513447683 944425901 358763460 803015878 53299644 651863770 848440882 675365536 873520921 313192630 798669357 10969722 234396491 674594409 220188775 705135506 332754314 145596516 885089738 735508649 414288518 183509691 384847281 586434399 470789387 418216501 598210510 545064538 421158057 677950680 304328829 277075455 58443883 748806317 316236369 475212204 534878821 826418667 20163734 7230764 141003177 982228277 512565872 646288904 976282457 578356270 103548246 944905708 195391141 460500297 956030389 378187122 960312174 1019219340 325439118 887955994 85048005 261547854 53692627 1062814257 951320202 547339371 62665357 308401901 669263843 1011339115 1013367218 695840182 66192959 845931478 264069192 382212147 6466657 685990288 1032949948 429971292 287118111 153768701 521744608 609399952 1014107729 934621729 266235078 766898458 549855575 998702799 300236613 254315748 730050834 130731673 319111395 9486123 284682676 302104572 630297825 372232110 121825612 339331594 962961948 505443517 157712000 264571014 74302409 516192158 561863355 29069638 733989179 367234855 479315264 583983179 592307662 557413260 609145867 942171853 752927285 516182063 197936657 43846881 866244491 526423882 517324639 976386179 952103712 397217414 384142996 38397583 32164689 284606361 302315738 168733187 382487386 1023938242 811018950 46669195 143175396 165973219 476681824 888784553 483578801 732941708 223671241 42188330 501372461 1041515909 688199252 54401231 145654253 704112417 865688503 938843906 342821892 802536967 719884755 556271518 576279573 18509971 759557523 95560595 560682911 528225126 204246224 1051920104 411180267 52908185 123498877 682687199 50531979 314035731 188803467 285674257 182186187 592039148 847714055 771075760 976982383 198378889 458928302 559169212 643094864 29079626 312635397 326217377 1055334303 169170736 663665110 316915160 1033276364 1042086869 412944556 811363830 417243632 168281142 377362076 229092028 684520876 999562119 502914854 496050944 277083300 838966420 200309291 234589188 484685949 473037628 643331230 1036448338 863760215 160208939 14638219 274944116 295416872 99021009 977056727 988024762 887557717 67909524 716859700 492367159 399606414 198325552 1050761370 184202063 860561130 130510222 968670808 1033275996 366141669 124205628 897074824 852461604 80069074 453799293 87279698 412251121 108279359 514935555 45719700 445739109 18293902 211313158 972800805 98684597 527248770 611758658 631074212 792406290 1067197403 781516934 760548712 551700196 634168076 53236497 539202729 312206663 685210199 985369185 629950829 337587577 72700180 162706626 2233519 1017354754 191464069 245960123 648713159 1020765972 1057650432 947551434 117040445 632865059 870539788 238179897 967819713 513582472 700861331 1016652299 207495239 320083411 940922420 1036971679 55626632 394379721 40518258 923578458 1002243006 862872313 830464059 334563528 200603677 217649145 820397788 583772207 694997554 400213539 822428387 844581295 74634053 982918614 562696102 43602222 242978635 1036205228 267438326 883344336 105760074 414907148 407580814 899020798 146825701 676254145 767289137 924365969 82980521 278765140 389323876 616555927 215742250 224936795 891338403 753656133 384330384 771106648 109929115 94493897 581266024 988002456 309294598 1003504855 286104597 540672599 450478384 752194614 75525097 812583656 156819204 543917567 673017954 363906074 715418092 563368937 1055476411 400550443 228288634 150023616 929803222 664626302 715565793 397971025 763131989 749071663 545666167 278941165 617447798 513132265 814683399 331029394 11252916 104773528 317651975 584389874 786230909 113885182 805795988 624003199 559702320 204364378 835479510 120346824 962822383 355913213 565637001 129089002 1071434532 233174443 353627279 85420103 473945943 293492368 575009417 851064901 4899207 579326867 597836980 390954731 632922241 642780226 957713648 118456295 576333688 205401225 295977390 998140849 238616871 552296456 199071558 272903063 360019469 550007108 511098922 1041140181 79946793 166952601 335083805 534924903 462918333 890706893 822020078 345176447 927773910 892272737 495569312 291643647 280720166 33309774 850014758 221539471 940395947 452651563 817572458 1041493170 632782764 245576125 574888993 562033005 815501595 358257203 980700949 783175881 674446529 899963285 222015834 630505791 539410207 791287838 824423368 393070650 680104063 32909087 584536030 981238142 318257958 962796794 214548116 19321747 97288439 1064593040 658831407 569313115 661562140 754407342 294615647 478572862 953537152 642672959 557546157 284940565 312057421 966694781 387625153 61093683 51818910 221879764 73786073 361317450 660808282 723918870 1002805863 873804639 520776498 360761276 853054339 275074627 422253389 119358904 988128535 35516339 548619069 36134119 295400585 638301809 1014817778 1008058525 60624841 153504377 888045807 631260097 90733665 697819117 483461313 634811053 627373093 997180662 432688196 974610934 656643821 93385649 1044876020 657912596 49190597 434889517 652561922 270378828 63416672 977440979 493203531 956951543 854038901 491659012 554729207 636860388 54431831 348522173 309936976 931301642 903353903 332409367 806626452 299419060 36157181 98270214 955594894 368556581 644546404 601642180 46698668 665091167 635027557 1060333845 344336238 53918792 177991652 873164694 106949837 495472586 116713680 771885248 145827910 452259981 576865811 63645939 216890298 879650892 636575083 521699645 908052291 6592201 521638882 857576975 1069020680 967009425 949052582 328301090 1068070106 476953372 960219627 533917448 966087118 747093763 949647151 57244272 383586698 631485518 227040799 155986024 511546119 435243772 865556317 540225256 132816787 948559214 106701867 822397466 579005006 591763069 653115993 609295730 51587949 1046030702 851272042 853108016 237024069 53979611 902121110 754747272 936540690 215011239 784904722 212129189 690827210 536902796 678958707 1061469401 38195330 4719056 382174948 86079838 731976931 530274249 167261825 443168551 444113469 547112297 632316025 470504724 83310923 263616468 200607030 746168513 584333038 757320808 380049113 457641037 131821882 539456889 968644934 18741260 20257119 298289453 74618055 789440904 832342236 1043628906 1073281205 11702060 177626748 75656905 192463712 929948747 552579160 766141154 809048251 48904844 729768313 33289304 236819077 732450775 64443311 262841512 175135632 810979554 1036337463 88645043 322077984 929792519 620642715 767967843 887183855 910022936 609781252 248896660 239119552 327772120 293054763 119747112 675868383 954438127 251303570 850731480 707777469 706819120 494451557 470053084 992235905 939842980 465577257 119111684 974423280 494726687 679580410 183310161 484488780 343203069 128251950 99362402 498185542 310609365 997794129 298336789 247846684 935473575 1052944971 713322079 73016206 608346090 816337958 985674390 798815493 509334194 60003601 575257381 404031177 730395233 675171430 232318819 166163075 43609146 400947409 730149210 1058678806 84997261 258398191 3060006 44021825 498920170 751937278 411400292 848651903 844948953 512773753 634251649 420315844 913063156 686423398 425777506 79934749 38188016 173328049 191661431 659943338 90424674 428470993 568987677 669053621 952835609 866800554 984409484 963603721 343246726 185310815 690738961 670527619 623326011 609128138 314187916 137218783 662902783 748367358 393196165 595874544 995588986 912845569 432264602 990276715 551347923 40748124 206635191 530700588 453624805 701330455 235972589 862155115 956648304 782948126 240175857 773230814 853895647 592247994 991254950 258758000 762627528 51865830 110048958 428589747 43229394 476030066 740672778 874544459 740866241 930311323 159616644 647784130 71676957 887326183 974169102 441932452 244879573 292615263 898399378 111470391 776398482 69696257 431901210 416634807 957625649 37278812 360338976 490521037 789762286 261855993 936316411 1045281413 215007507 113617899 922649899 698299598 216177026 222143735 197969325 536122728 1063968090 823830188 47646471 474757925 190271578 784477990 862983544 546866746 6508765 236165968 622049237 404286600 309185306 575230419 1058813156 553323979 489100907 799735532 386290769 1061465704 88613725 141981071 200898761 74926435 154370110 815533445 136327173 237190479 726440644 330861091 137844924 698118695 510813174 812203079 874656918 247255700 653293435 18057125 1072364382 1062785905 724381832 637260110 647886433 204042627 588040970 631995884 829318142 822021947 872571298 591628491 858637624 649281404 303699414 776397683 624064723 519984336 935419436 633993730 959741019 546185824 966245374 70229549 230270747 1022522033 42789636 961308869 1028267298 465703144 473325080 223123964 1013553096 58313442 1065287287 98758708 613493486 932877294 429324821 528248910 934871727 586412721 585139945 79411665 613544155 398245693 294070028 491315874 632833847 38963254 443011478 562815983 349997948 1063678006 313745446 339822310 259171315 233737633 45807009 613584553 996831757 160425589 299926869 1368037 618879850 835055330 135471719 1063315963 1024302584 142092005 543918715 876074722 413218496 861334647 975616965 201858421 370276918 752306463 858413593 667225836 374942219 20927601 544338233 396418422 33024597 302369513 473915677 738146202 551630127 581780574 120611318 721669468 906124378 664461166 1020244769 1050901846 668219186 797449781 395535313 793644810 876580636 192296620 55508947 6636033 921778724 124216741 120879196 236116858 473310124 1006541063 1064726300 303608499 139235168 411569674 691564871 961596253 7471533 794328014 328693612 508724726 984286541 469347118 829823620 204253136 185720736 465521492 36553875 503983472 835740875 666795150 574835583 31512140 929901941 344495115 451839131 176061199 478949262 970637043 273346324 60727930 131599525 752178858 701631375 809739900 920055168 120540828 156147407 427419721 236148551 214057340 141297643 599767640 648557033 972046249 716332720 100706299 582575949 752447470 392911492 294252511 747255696 826410445 792692846 882614505 786375834 883303213 215297022 337974625 282406599 735258889 232584904 175156304 133452917 379844012 940990000 637455586 35539140 877200077 128722610 37400719 335071762 653088111 912493130 794798824 1001155467 943868561 587589335 777508539 166245982 273331517 908292990 661387854 117477692 972455055 762892136 551446644 453708493 1007881410 131244164 661772597 655652669 366776405 448885797 383649198 730787958 804164368 467559827 390856761 324752965 4706983 1004733910 34086197 769354236 726646866 591117352 696190268 982740073 611377942 68180338 508703933 641017405 992926721 152969284 326648739 414997427 2550126 662891151 848427345 185270662 456078871 673017527 658151902 710797971 888652132 310378871 923238493 646629338 1012570059 618911611 629928919 451565899 232634066 910624532 641517519 171687792 941217831 505999879 517881036 981486899 663297757 893423495 832922147 641186635 14344860 73971878 770566005 131308806 230842712 1006609105 359162103 694984368 777226422 808164526 289171392 224887556 474088891 893692596 747726249 553055927 207245325 148640832 239003654 89965416 900648658 975813072 280894680 425191289 1053559688 936555264 1059462921 837650468 999605829 138030968 723844232 688106951 350640093 297725535 260996305 926385201 316871396 140413518 521462333 80820801 720597940 158079857 543850191 74751704 343732426 29944698 244867851 1071499771 384666260 264091874 864783233 108463533 1016593262 316318176 180197884 943308399 609718889 295801849 292737439 350184358 1026296949 377622480 869345009 147628151 506092490 439604431 509505577 1071117995 767153070 1066043227 1029230265 222296973 95335230 13043082 617737452 463459821 115895191 468372930 421652136 585503444 464510332 806063116 485705857 1062162440 502483422 847214160 22483557 185455883 298183012 46442525 101046801 784134177 299974820 66537409 627843165 454242232 803683103 517053041 556759935 684429607 605434429 145113293 279256576 699834256 838202063 486816514 359948677 679667416 98373700 927260327 430058409 543730287 262755647 144812947 768418553 150479634 533925172 161283978 88787806 862920524 468679185 220676062 875535852 148170829 764878947 450585866 248261393 968106818 749594172 707859680 955089583 653666426 912977960 854720594 213057355 101151206 416963790 894622914 272081438 581929576 137614602 206690865 769242998 79415817 1044974865 827720175 783545516 293789890 210962470 343162937 473916320 494935074 645396691 372851920 378393724 825227610 1073328878 472329064 371952990 1065428126 108716546 707110532 580155143 772767126 123072312 1042560444 308176760 292113243 254124593 348301244 172046412 456794814 34648783 1014307973 1041002363 709441796 961635455 135123466 52176825 731606310 759181933 1047737501 329087412 807987270 618741131 319214317 130572936 410063065 581676791 439961691 608132442 268172573 285232490 344860247 407842943 418144613 887590792 625246640 967276134 81098776 654476863 349624303 376675901 1072329388 1007492931 94781848 877055371 23620164 990602173 1029756515 862009555 450180974 209480533 180027860 265847818 431629447 544156321 651040183 448616720 515949458 995091854 1045388848 920954867 920027612 384482156 477272114 944078575 1043284812 509147670 735766334 207761685 44308523 6261901 556008143 645757936 513719476 393959338 946512192 523166180 700459958 839369939 534516420 328328005 794568333 622766517 618759695 645257053 112876401 1012647134 901349003 151792569 914828789 763014341 273984252 99886339 924804017 720507085 765545145 853678028 596604830 852958442 835651341 521549556 227128993 304057799 650605013 58449112 386174371 558738532 906920824 1057696250 15602838 157423815 942878430 172275528 258488224 973188749 983317223 800502558 1029999968 996608108 469321437 414598010 1021472461 469464967 674974181 693653813 765619961 743464837 81985083 908798317 103236030 150630999 317878801 624581004 169765999 173390453 189187068 148493701 222372870 981043344 215282300 296026145 21393884 221712851 1004633367 670382519 226478066 679024601 999459946 260911248 868172656 388385255 73278483 241151781 212684527 847850660 306730009 178145190 719170858 55617645 228676851 832874289 408884248 956445670 732115681 664001451 643657643 541881544 1001962569 692493937 233337282 659805383 427448481 84023091 179177651 763973457 45729606 526098545 615867028 191147810 1023806195 172963991 635893214 497887316 881575564 89535073 251551149 478760534 102099681 459291914 992398881 399589725 972658965 120498669 639328174 89279025 509378224 957087888 822299299 833686985 338595848 422830689 146637221 599781740 912024778 599944350 429389726 983024833 360229630 201044667 154000025 623623363 950276401 387085031 1041069973 61276955 97919995 742462370 78253476 885622607 985637983 93406428 941572381 1820093 291050881 7512511 170649267 801542402 440409258 805881404 841863797 827826909 739365658 326318565 217328145 763422781 726364951 553010231 377671573 215911447 999417899 140241385 930478234 42115677 743458796 889809223 627834211 289120309 828273646 718750811 388304668 729958292 378869922 683360790 811164450 31258902 623459287 291965910 494337860 1036913904 898037977 303107037 266770589 926072890 870954316 312043260 944986262 350414389 4791061 260183485 80747293 920433602 84132728 768169077 791062253 794748927 946176355 957924802 570830070 387981250 77546782 741254022 153114787 938629214 899711116 781142282 477941607 662262278 395436880 398468213 786296124 985212018 921835021 39306772 113736807 849335878 927922188 920375039 206601348 813316229 568006343 343440802 339787264 209750833 1002360511 825746312 624255958 394684088 478958 487641653 538317805 227509894 616691948 812496458 833315468 657132215 603869786 161118242 258570669 499137771 463453395 561023361 271456350 71320167 460207483 824852367 156424533 421033628 372512991 270536730 481081809 723210956 253221838 575965735 471747501 717987111 36393609 156331462 421299050 886003574 930915166 299869002 552313587 856158609 453086955 444739293 379654671 300136680 781244669 46807998 755014534 378280149 812508204 82598384 638724046 611368817 6286329 942455821 436023650 134061272 43011149 118760300 740619859 1025436532 82664405 158253006 56175268 975359870 206978531 418680987 67457073 482768254 580367704 671193675 793015622 578176038 491892227 327633463 117438045 737339173 187537245 239562401 51782787 693649319 838310272 715467815 1058144896 606704461 513950146 172549371 102991716 358064103 1010352092 146455504 585034510 635714727 400918796 914938234 807417790 621381764 1061130276 855726518 535228035 164190147 1012481410 880828092 126828985 736804530 733904797 976771941 487102382 794997868 155025191 32576310 536895345 44649292 36689662 6270422 440064830 869766441 970199226 706712232 769822831 230900838 408461926 819013841 998376706 200255171 1040043476 723884683 749337758 687361888 503736931 357094775 98955006 438174672 576840197 168705953 645084027 30366833 411879514 265192183 176768078 141855354 665047188 899679640 591892882 688745088 416714453 595806464 1026925606 947737562 53324554 749130637 929479786 553200514 309396847 226045977 290123301 312983022 838671443 645949679 309258689 693774429 453526157 669183222 778649486 199935072 970811756 68948231 720508066 338198704 948869249 942239101 363304805 127530221 364364487 98760392 784050487 234143761 662637313 567197992 583312142 911702709 718448962 19530725 635457206 472630682 782754258 319879053 684108727 545408847 199476178 473910046 409708551 158787666 423994261 688207572 1058887918 470474566 694630818 795480918 946820263 817655954 401877091 458865667 429180567 405029062 711448834 1037879544 98084193 542350134 361079163 219890950 26803147 263215009 625593436 799239443 446466967 388228259 579796115 195168310 436622079 29584535 950704385 298431472 533393419 461888627 66271693 855790703 272529518 787494050 960964417 402819306 362487559 653165529 263571234 230650626 414088632 207231318 278748694 721662576 798828545 905669022 922228564 470682825 248701484 114174178 149320590 411593603 846856513 597463395 907698107 328260672 725339994 712363555 267190024 122931698 100651062 453921114 796082326 603568588 859176374 344330802 1010490026 65835112 701574008 949031814 734559473 397095437 675335899 901483676 1012490699 408985061 153405635 13876354 396797984 131626980 423949061 347157967 884784082 955671756 320020204 217108155 974529952 90690888 393055327 870157202 142854570 1015567053 348303242 259540246 735611243 333355604 543404807 29482675 811515362 771863507 324415636 710922929 147945588 960926869 154917140 763496389 378772802 964173853 361800108 485189427 723523672 262624718 124833006 879840785 722217016 784503653 1052472926 733606715 815310978 125420728 994264826 209286540 986605095 558621044 528693650 269360528 827615084 296634759 755019424 32264138 598720314 80119739 279549783 158734301 767122092 1461863 486524272 117603198 85954434 289701156 18532503 433967451 90008560 124160010 716171201 530091091 532198804 713406007 496025043 1049562136 165595303 148751106 933971618 115747489 665724726 303636549 453278014 686638090 279996730 709906847 87378219 42891617 565566029 551292998 437478958 859707679 406375406 199945972 741093995 348634944 647884494 169934427 641834362 149811626 917315708 364206771 508474375 382966489 243570351 699032101 1040993563 936356144 713312232 1022286985 82905214 500887044 570689969 524029102 735743112 703190737 236335303 670700423 886856172 535351811 352858682 936298692 1047724411 718987742 979858686 446856221 1042893688 1007112254 849074054 910123778 641207468 304248985 479904566 73116466 455898300 265549459 652296929 672029619 149553052 227133494 383646103 727397712 759061586 56398570 993915033 713591055 395734688 644955166 487971790 566085292 462175155 853429934 555507754 449062491 876803238 5480173 869600808 226954748 657056284 290304208 771445237 150899691 381123647 104964880 398642931 138062356 1010437994 542354974 142719259 929530986 457171450 967516949 204413483 341774575 170915966 786009123 783352305 292477903 879298533 38985004 150899676 1002576994 65583164 249414304 401379399 534896349 79362624 669974127 875647245 382200841 562184039 1053037800 327948776 841085407 933749924 876361129 801295383 117208621 360139628 3352035 507098335 592218564 614856733 1045718416 271601302 14436200 188942967 608816200 493504588 686742273 996790360 14640155 148700367 396649349 183087010 308112635 433425696 490291065 106922955 1005633081 432021921 861169639 454736317 192449778 25238972 586332713 458529836 730654872 429879931 988592029 396510385 1064150235 977768947 133379817 1050830740 404020783 488304957 896056443 527268822 851264296 617438459 410452159 382244769 916595365 668990553 323061614 691619110 496241769 668879981 973943791 392687594 814631509 854527390 475762160 126455831 809754828 995444820 198344467 71402709 248335509 83668526 1026577357 713093645 478374222 20491656 591954313 97362629 584926569 703470311 263028572 575739517 879225045 944675531 1026530222 6891383 104874493 792004408 869628809 794264415 770630527 1015392466 860759086 291300288 361124271 431968313 349604318 97106476 927052176 665545629 207656047 229917489 193810787 53192274 580477860 416850534 886612655 1017738683 341813619 839054858 1013102988 95914428 1048964396 409258826 505739240 326996628 244742727 154668422 53573647 167602699 708229740 110003715 376891653 283767743 967807679 301467207 927464312 687589408 685620382 386094980 516918944 1037683300 948500486 208653890 746683959 87451183 661768884 54882838 921926102 517520554 237832758 448863944 548834333 330794726 1357224 964462669 259856756 1067956047 845381606 921886466 989821413 469016924 931088358 162454670 504365100 206751535 76612438 940173019 817895143 522194009 412463882 272481114 1048854222 76499176 561093910 443898314 524508554 269437996 8025617 487352812 494223928 466249548 627827913 995005812 878531778 1023434664 4730533 790782720 8327197 980967544 38352884 943083437 494165059 715418584 480758340 718062570 559957251 610469737 1020370820 440115112 47479361 733075789 211273388 696111089 644787507 1065862197 88685459 742016117 915262267 966702202 354912367 304468603 606447720 333756429 953220102 437237571 329857428 152450554 512057157 193398964 1042306054 743601464 810200964 56844676 211240273 578638956 972587396 479023869 321055724 327009886 321527200 901494472 571153480 319353761 517248086 705151820 867146719 668859333 696138833 51352339 647062438 997472713 676901553 936826660 854084323 240840289 919515577 527939405 741224833 55229374 606039696 430094739 328434069 202116022 102040113 778406011 469425238 584203419 459655145 473462641 704728397 559364655 460590833 44817645 766624864 629502633 340799684 937275645 794541869 411429917 205050316 6250456 257162991 786365387 684192357 212209626 731750387 938283523 12847623 657779433 259737415 671527139 420164888 525733125 410364336 333796127 363171484 1009024125 1046572042 656703995 250475344 129563965 547496321 283574480 89666439 907138385 21367763 976287986 339243756 848928476 234430814 173845810 207427962 720952285 616010767 779788921 711937199 488052664 98669687 442582200 944719871 366164089 822221018 708656948 45442575 755653615 64023494 947217090 853898195 150538227 1065994058 261610114 179363686 1066157406 724367052 151708990 950232937 20054980 268468776 742222609 98455195 759901981 195635944 803071227 84204178 116682392 49025963 1055451498 863776491 577588004 949869906 546792247 50844124 967107901 242566975 692008882 761312228 19397450 287641631 521540240 127936213 521467968 815952206 118704843 584868002 740182084 135680984 277840663 501954573 734366513 1003409963 930662284 458336364 151717916 137503415 60185652 616218230 594332397 939526352 138751807 961304460 838924791 181740106 642893210 811246029 344980757 285058780 188613496 225798012 87129451 821471627 458953724 592342264 464016864 435984310 122666191 268079748 454557067 926987924 282844752 452816800 950119269 253868507 953652760 1044896359 65718 332369559 614068184 338173891 135573329 252143536 456129702 746074649 637875766 1014421402 600155051 408761848 1058892529 252061226 30733266 43084442 386350166 810694036 462163294 825189472 852932327 540607727 150558671 651217802 153674974 589556048 660845109 1404321 1018100448 922882237 866318634 406941932 183527541 77723808 313577844 601915298 76329301 685574916 847635161 185789282 611185944 842585441 219447080 327174532 786902025 1027194249 611665150 122650678 226172827 716266813 718061769 34609350 358314209 1009481090 797567551 794818627 466452662 946283398 742614466 1017751730 37732408 220665130 133019385 1039954235 225441841 445408087 100405881 468969742 116578990 183601986 398310624 650479774 427907955 225063380 863386643 125278588 32285489 260914774 336489851 1027422480 315065467 388656085 121348376 821364432 840795856 516852350 287270272 59774173 365018398 163772738 539217938 538322400 412556560 111121869 284555138 934382284 692189717 166414584 1031221836 273594880 596309168 1046276869 467984861 885845374 712580125 512756994 364103951 517545403 814180007 395466671 180731814 95997965 584581938 623420810 646950481 310326903 540331814 222027209 22373963 130258433 518461923 150845538 529542244 1037527981 414801978 642318673 333159421 651357941 41521280 547894890 521881431 664435491 201542264 391745992 877659646 872374415 707574632 1000263200 162195812 270053038 434075842 231817124 23118289 376621395 1013114808 518057605 458967677 951548807 792537095 882466608 821709755 1057235892 735043261 1025548168 96386018 218045372 417560606 660249198 343705991 587033316 162140601 456614491 800812160 205393421 762416987 5924539 890564792 946595936 104082993 831492685 794824199 378343455 109196625 676788246 547804236 943215411 19735574 115102154 1070022185 603322735 1026056564 124746422 666794736 671289854 341518049 38063392 719631110 189775443 163894900 866156686 356047256 296653831 313305983 312059135 903599130 54137616 713078986 814549381 607482902 858178647 641722419 226475109 928885519 384136263 373308515 520839296 933160994 809853374 485965791 540449757 892154000 809713068 317257852 319732760 53427933 840547324 741198823 335522334 569448879 193475108 943032804 195275084 12255375 438599324 818892264 472854538 570638220 661279603 955062721 706277609 1045139458 682497886 812595443 845593370 544578808 468703179 141175879 884915559 927911120 457552148 319098772 1062514871 649906266 120561562 1016013808 12628286 510536987 667299241 127285713 768168811 92784308 948770077 879879588 89711796 1056478965 251933449 1058334261 842116759 283894057 252048155 614025624 196623962 725887199 238132788 84234790 869200481 247252528 435268721 701116397 77156273 975762023 545217312 617579184 678485521 200991315 596406888 796003954 736725212 1032931973 881331833 252762526 123816694 522824340 514740098 59198315 1013501093 949636156 994325280 478775968 662633307 832532802 513311991 471941960 227613943 982471404 399971873 57151362 59151635 1051197026 678925077 67203319 526055162 858898446 416626933 291907008 42333851 682927747 120057827 100876556 1057800607 503147426 987317925 7953542 250490255 343408267 258021935 999862601 39049152 668458811 665014233 728138263 577021802 836440148 618705323 919614576 1024660493 371300149 302331526 355559870 618863847 794383831 367830355 939802080 581696226 777915823 521678815 208626194 955523603 966871536 185022075 442332901 78052263 90768915 491090720 1015987530 169416096 655053057 551346456 529831552 817872823 329800196 47884585 812461208 50431662 776587266 682954743 187357339 227612589 294685683 725125190 377296063 689909791 601866189 262899751 562952592 439782284 810598328 508512564 765807122 673850650 190135304 312827077 801054009 241242576 202700905 306595658 1020461173 268148469 1029300397 241389050 777377101 379863331 676725504 587051408 681257977 909746487 1918147 987696745 495210074 866383878 915104748 323827430 279518753 241315674 276559725 761887656 612255530 521615040 550990140 649279415 240237168 418458844 503412554 1005694216 983339173 4970125 745996202 730359177 26771705 765087670 194947984 91511675 1057541771 770214049 13474794 90174262 481228350 750030074 107507207 1043040430 60290897 261865026 1034114066 643074355 946699120 883545611 362149057 331013539 526642666 918127318 340319352 37867668 390057867 8035617 502869953 751910745 385287795 648958844 332009391 246642001 763114340 760972136 960971778 769000281 739102991 578799043 1041596929 189931525 597689787 1047809656 20882593 890639986 570362228 263702232 330207119 379540176 182450984 494290063 459736361 577150416 803546143 273888000 907720821 137979543 828573640 583316667 518465627 595831567 173443318 156982537 83003998 512791167 759282240 520616888 83788800 986047197 1036435485 265355959 744187523 805332229 402620133 601107958 270847305 625523027 387167737 712000442 998172623 996660314 389890509 615195657 25596623 356914231 756313107 65331890 401757259 848137 478465451 233732298 525708715 782630029 634032320 322208606 999333221 628842233 205932205 31369480 1069840883 868932456 431709214 255563395 332445186 1062152307 334615493 673413857 757673505 115987936 631454583 700893727 559423746 906324952 342995305 791971750 792188209 9682534 252765829 218635910 810337208 44117618 950332933 92166943 239443541 919724446 938884438 83664898 992752537 166881452 116046659 366166169 914624310 701203228 29041207 684382331 804856136 858858791 221960401 108150349 439523402 762226497 351908331 378032401 182111952 49950246 787099568 230784371 629989284 553183016 641607718 283711590 854320438 128512876 735482366 504067356 503931712 66415220 802333282 1010411502 293250286 221519232 954610975 301478558 361767865 413359323 840846482 1053267692 704136573 686796431 658122077 397413592 158239320 479893767 295153064 973319127 1028944853 790027543 1034588543 796576467 599602686 1005571867 945572899 88295235 573821485 40637973 46804716 388643132 654084788 622811493 290408825 373773225 753259960 231225967 1052585914 696851513 154580041 135268620 803575763 983280870 958380661 880663030 1009390715 23169528 942225922 836603421 500450330 962883185 771465343 200287552 938098086 815341163 77411727 84974249 590071859 1005288191 972390724 223753577 913087950 963253020 58059218 125236099 261173806 914794111 280432488 702400238 850395746 986270938 89315834 756102208 667487655 516101732 628056402 562434211 972579863 960913174 74053756 853199336 376855642 310337784 779774613 879494389 868334298 346249412 985320600 358983157 412383624 540578667 984092411 348325894 1034191767 160518832 857244733 260867244 907566176 428689344 345944539 769543066 14249302 73437809 410666817 61528651 976785075 525356660 750481378 24186210 990925170 652050190 1586918 3999653 433622437 226689024 255170930 339484278 742187735 230794093 89454236 927900693 851385388 316320149 677694480 495039057 303436923 180535938 749735036 62841590 511926389 951143259 634923390 228695712 174575505 975403999 180556667 1001031981 948316626 317301641 825577740 1015484968 469238400 32219284 215007573 318795665 154390443 95691198 204016149 947358789 523353971 509150379 508194785 281605528 978121605 244952967 790911247 200946056 633849419 151224623 597727225 781080130 607915207 919756152 233494328 288413439 4521635 460794637 129230159 149522071 33641146 2756737 47127226 833957789 144976966 290587673 711337597 583237196 1011438040 99347804 254853134 100672130 724974991 952808070 371249069 277314332 386948494 607050258 260185698 62840787 580162129 420816342 932329086 50156063 63988457 822112947 392709064 193346283 876909887 586495546 571258167 557004253 71318503 109453714 763739928 690510931 596371781 298500849 736662468 910087636 22736590 405636877 542906885 205213436 892207544 1006263486 369618696 21631595 152089515 874999536 794592140 869926276 878596946 331755704 407897921 693836334 282491855 394509790 557191129 201931354 647488850 488370809 79532588 547454246 75337406 1047402020 1065863598 155289387 850453167 962056122 188568226 311061868 244739143 691829891 542278858 283765116 530284569 692153695 594476331 478130792 683777054 273697374 355754697 142052083 602128535 389359834 694583832 545855499 616844102 190811235 869057244 1040465943 717224024 935488351 588014419 310022496 239091322 838167689 940576201 565177682 828797937 780629822 807975503 92440592 992702469 744959274 134492324 649836935 622367500 950176978 475714699 1013699456 327109216 1001197329 1016982944 787464365 569651112 843869790 303573196 558009816 232934683 140683503 336548341 259045970 875350054 860187108 113648032 828979112 968756787 10880292 495467252 409970678 265280902 748445332 1059128402 1051174857 223938998 909219064 447858654 834553010 1055685874 163422364 946013545 665762047 542687849 1043651438 566779896 562815573 276526420 239487083 308157102 484779160 944655773 420801003 233718984 743647745 987971840 355965966 119494476 164022268 327021981 516516811 88782108 1001096038 449408580 928165740 103807872 484856152 140886513 656328087 570282024 407341965 114151718 934914972 493058661 1051314567 191492410 28880360 846917584 509202900 537550179 108540005 839831832 980767009 1036944584 4392773 324205095 929297297 35396377 917866272 626634568 1027855025 262076484 324933167 586120542 843021808 298440284 932842960 641832174 153658706 154773500 250816707 174752146 424635368 162874822 124743727 910841441 1006229380 80182406 349443329 716466461 985618844 571420443 281137383 754327650 193279339 574564710 714838953 323291491 412177655 604469536 953201942 511084298 984992973 683391400 306603294 602527243 91136389 1048904221 471412947 666023505 891910750 973669850 258313131 396860797 191815525 169417025 841167691 337320435 116841039 756684156 896365353 336945543 10450190 155289982 177369822 435307933 89184186 126874212 98190629 848403808 1017572772 747732699 560141255 400827237 17287556 661374159 792816802 661301050 62468534 225199506 772868785 881072508 529791016 443077389 472288723 605630176 529679326 208799439 959561905 356808594 170948403 793478293 389654205 369459279 600995492 793767958 856113096 270701093 569756087 1016278856 401331706 1037940247 569626033 877350447 402599842 279548219 343083905 333127707 646868052 495441472 212093274 916974612 756770636 772327987 48880858 278928570 894736193 693800525 111057944 1045740131 1021872703 998093528 700432244 622064118 596748 1036348932 236475680 915941413 131047145 64996011 361739206 413663629 22824681 56514957 837199563 746609926 860147310 1013610330 32017300 990364832 208005998 136217529 721306487 362898499 408560550 94885988 427791954 834896116 800823863 594350311 937876489 460712913 762527904 63946732 356514067 172590260 731180008 950790874 350151683 756577038 1003772007 533395821 984358633 930791625 632355252 980617373 663030111 676926728 429109800 475421469 1015792860 911248201 219732108 1015690670 1042873164 689679916 229585196 736779490 21777223 517461931 961621293 999141950 496357645 809778473 195284549 228348894 259034115 575763094 731118127 310656309 340396450 632388124 586820500 414320953 597824414 118659823 637309628 128190329 434573956 333496533 211060449 806275543 750985057 316197858 85905205 597510797 261823985 972985246 473041935 846925506 701508203 651940325 445740303 193216035 693103733 1041680426 892771145 162764623 423563952 139933105 455915421 85646491 79683331 1022183577 105897850 51063469 873467450 526533924 563880228 886620852 696714880 588705447 123042346 1011269241 691551008 830956652 888339445 738075425 117279034 439724405 353980963 79851832 527599591 140697778 682123423 555421238 841755141 1028119992 45043640 498090002 376440187 778750234 24464357 374796088 491662601 553660062 470334161 592573064 750343886 939149890 593779861 25254852 992199270 68293144 34816615 1037348621 415224280 852677594 888699471 1036533057 12960016 893102076 198476551 750723511 487805699 113248087 571086373 157722955 197681243 726469089 756525725 559307152 446860631 503602926 645264009 74452356 879408251 278498956 323118099 102696620 818345451 43715189 349204613 956245944 750484211 667051637 1025945879 213586243 499592166 25588903 803405062 347229374 236144270 1006854969 252171142 706700940 844230392 151771913 72626776 63527314 335219763 396548687 1054609201 760924392 163367833 375879462 1073457924 493273810 697586906 793809157 257760797 225825642 923662755 975507364 1053192510 667704567 418064760 689143104 465645540 599109316 985070524 533059310 583557389 724460858 954977023 82606927 347313816 899721492 686254449 542528418 670130669 576945380 165311425 990859905 219865098 589007867 406886894 326099318 891402825 128624816 841814877 285173490 609519043 689054045 406956898 929528208 12368006 837856574 3692188 1055984006 490256959 238385785 119384903 840347546 361616425 235932609 674140453 594433494 142383516 614324248 594958373 254098330 298555393 950933618 97181188 985723359 522493288 365654450 736564713 13985561 685710430 465145423 477091508 274687316 610494088 629729683 1020585684 832127812 473822111 315437695 41507351 19621884 296070124 150649345 546625290 43559483 420541240 505196499 237072200 824200937 463689390 413091245 862337899 341521896 574208480 390819648 916833393 90976395 1012503564 910605320 748685547 730997970 265594268 937905858 986944747 920075833 37188891 976557735 607533228 779904172 514313075 279529552 571014644 952881951 182491395 247763147 178896140 691933659 705658628 143288250 191256946 332606771 403454707 477207273 384073900 785003495 374964361 644252815 703257618 996472714 947488973 930322366 309139787 1054093014 813114152 467998702 43055959 279122762 263772529 275514155 305826619 320548140 922889004 968845698 871876000 1011645754 673540569 1047826112 844029156 589354219 57819671 210426562 1026604811 790800552 556382841 222060520 589671453 873052542 501405769 1039110501 530339624 982465077 557340148 491654695 133436175 681438239 538362647 169155164 339708782 369432650 584952245 562097445 340251267 772573873 265849313 313189299 271913400 972824145 145647259 416157121 324593983 102116602 933017570 640498599 36315558 814166804 12882618 186668501 511048064 773041211 468167339 157819347 59723901 196520373 441361504 565456385 198772292 602923692 400583786 260694450 820306487 325272667 51774025 423978389 845274289 251906885 99787370 1009445905 697231741 279906669 500153694 473297163 233492906 78640914 845720629 216010170 801949810 264688566 195125018 808091174 553424989 721524941 72794441 491016134 494931810 179358198 571598876 96427133 717674995 216248004 312535250 261717756 312950432 766989976 666415957 677312834 210566597 294239155 951324168 798199954 34463371 1018801884 168098059 862505973 1062528444 429898142 664887968 588605485 828775372 739276271 63938165 971672187 581988587 839313996 623514205 311938424 828017477 128148305 472504956 675183201 138756429 1012444604 102851612 389407959 327298677 974529151 704424184 204285343 474575007 598168965 566698643 850929568 980968545 279004394 518914627 886048268 423972710 516589810 896673855 202271930 1016263660 285447093 870567377 1022046438 265221161 374827729 90456063 498169612 963240631 836895962 199720357 1069091964 82305925 581144359 346080653 71556070 511917189 285525316 828853999 441721930 660794925 450368318 231035611 563355722 337307438 201568441 865615526 372476465 482279785 923205047 476994947 703550231 892346483 99398330 224165580 663113167 1005307846 331453 867375373 929898301 468926863 551764498 857485946 752451884 335907152 84670550 251025798 361700413 499037708 910468803 316236608 312131079 509351840 747453530 29699725 1023659596 452724777 928345317 319207682 55314232 899602083 413165003 164504801 565893121 621212267 586760048 215701763 610123275 876155679 827542033 535487908 1045105388 866922940 330735921 26967337 1033545774 821383407 238029722 238922485 976311347 451828596 880176258 492539599 1042137806 891486614 891422718 544815910 960697704 594641111 251305889 835339719 204616600 33293881 368097495 240240090 945869817 525232165 946432716 370724996 37046445 948739536 1015202666 1015382612 210443712 594781309 411081646 365954868 450698904 930768832 939360958 564121187 232822582 685697113 442694962 264390247 567012053 48615323 727420363 879499263 384893777 913429015 895109645 178518466 67002613 975043864 384014723 635186688 340573872 781714027 79041982 793098635 1047974980 951732047 265648510 69038024 760918431 867943823 572660694 130591891 765926361 454976681 919259370 1049198894 8912362 1046434382 676340465 1067960625 80735359 796214039 117061242 884973524 182857293 553351714 873877683 202279465 274370199 136774228 983085628 330820163 559582631 708683271 987632359 331119715 706422391 915216215 428146652 433407684 319336635 492320616 628660831 217933704 575397447 144700429 120700253 1038934228 817881497 201498971 52956970 464507959 810043439 151414164 347395144 387350780 1019317534 612218394 378812238 364671876 526042530 502328477 451135204 559753488 102536820 361471119 662581436 416929473 1070988547 1022076744 196999701 297911057 684197976 676075795 506011881 562895048 1027674078 41481769 783471709 789778622 992749268 291598055 839701510 890259810 854691475 410988728 24451188 1023844603 264179046 135348676 325946143 492680967 1052772514 47545686 230578624 381479455 108546753 33989193 179194127 439834300 625501473 453501875 92840072 844906833 410004712 79540815 789278358 253166671 811482802 726404505 535918315 128921980 50309224 812031238 865793216 743193257 473195351 986415054 435896173 518641254 964914884 637058161 917083682 560308903 137218142 320622814 836858771 53363626 914266813 303899234 978361434 672981118 864049714 976354929 853425629 441099645 561125216 371135864 66945779 829969468 497008321 340411708 774529361 637241531 524286926 19118224 410461892 492034412 802703786 703768377 39493466 648829248 130386321 991300264 258325406 692092883 688479719 278170725 228024360 874856870 496413406 1025383865 362271804 933120740 53719124 726637011 300836712 654613039 825363064 792608326 411592735 721764739 806096863 441557677 891527151 266177700 904786249 625823756 833354185 936884580 754361761 95963008 785728575 346287290 446827552 382206621 680327111 838428372 205450457 195420465 576666024 884852869 560923389 569839569 1059629445 68444227 978521007 457559660 720415014 675651490 84440367 213791191 832486511 105465142 44728930 170740004 934483633 356529574 995373340 597658280 707360205 281055593 163938841 527613937 363301400 96510517 98373987 589506886 560260780 333833467 440443104 481965642 828098051 1034899428 99346312 406782780 409122234 72294347 591992413 502255662 160348524 104074388 781274452 717441689 136641900 497069285 41615941 88359042 223092991 627372657 272312352 209675901 761017427 100055448 572686053 744803159 111329866 538490150 863685837 718962193 801864591 700457034 181493013 661723278 842438263 356790335 1012931998 795792743 39536641 545873471 354326052 855639478 182686050 513762247 178670198 901050845 1006324887 393276701 123574763 180881244 713921681 181831986 562087327 294769939 609588857 443134353 754999813 369573738 348500166 494693212 844798424 769033125 183370386 443035348 882815386 124715926 586996338 552093278 845827324 569499059 39852551 73093007 795100102 1030230424 624766912 170455082 240239842 1040042366 440328060 424023876 286934755 991738762 470257494 534924876 246436699 769638644 533046696 857802514 1003549586 419669240 110918484 680046964 74201106 310308156 870246624 867179753 165963082 428271340 476498767 325938228 642477630 971748209 876369220 843791514 725353941 201374541 846549411 1498203 276205284 891550758 406140212 884666471 597355893 878845412 557582596 662900649 39066888 957723361 747555998 235914668 942119164 686865264 282441840 809883266 158695255 378857789 865351506 862309438 783014159 277206872 969799271 234486178 242417196 239702698 174331541 429268735 736865941 929754243 7053175 105789383 791625928 473613616 451376588 275711193 71773349 1043357347 846224057 543608191 1033548665 877506136 639475003 1072338152 91849646 388306268 64519478 452983198 796775853 120847369 308835468 897160372 132290812 648559011 306736602 728920615 279026440 159628712 275091495 342723426 518819838 350851274 366199356 160042790 873355705 133733560 720523864 836473787 480648756 1031132669 305451949 497740738 802667626 502515489 363787343 665588007 1004040167 366208120 230656181 681344783 585687355 953646961 965973933 219837610 549093752 269930906 977491187 1064661105 802810235 618603883 838159249 987877806 378164488 75104049 527781746 953895346 758988109 110610686 67338981 712836337 723136548 1053456292 437014784 927858794 572397530 865391513 135170108 579896667 289024850 87654717 50272186 649521390 206652026 760051631 858018256 698566055 876814445 886431596 383092122 227808680 1028822022 637062643 465952083 85636668 341501526 866992563 429543916 149898271 734771379 754220235 76348367 43576993 287972933 654049812 351043874 455585350 629502794 200487191 594720135 308139931 385746318 757242970 308444326 154088154 1028175255 326481955 657543015 715450765 710720972 4694825 658008444 693523979 788513527 155872695 196106947 678102758 633448282 660996522 807381513 888731064 680401944 731982195 566330814 1052064156 747574904 811297933 344958739 992842249 832082078 907442287 971954810 854507930 124635187 777277209 628741444 513461971 339909373 1005371245 725072658 1002872438 127994404 181013036 613482600 247779159 345943770 897450770 279288692 788164757 840338066 833481570 304603381 38464152 101051463 1051706330 1000895850 198326382 242341790 360402116 763511883 563283973 518002280 310971749 934791590 942309338 364981629 458927345 956377672 387847600 18032727 564354446 728798438 676564338 1044220166 623121652 527827447 532085585 605557816 511181393 804370586 642846298 1052707485 651946307 523124669 894362095 880752409 891818382 139079055 214716511 345573514 695455988 55796420 514773327 460332247 104658241 635529083 745977676 1027343809 414626770 458567365 151585048 853019507 160566973 875745034 368133264 433956340 268094512 58652615 134134101 582329971 624529093 924876200 29080680 845869487 994799591 1044252857 104900195 248877563 416703813 715152758 77505084 549804076 969839857 732199436 477817160 866323038 895482937 69950399 801905660 589381178 851242038 767755144 963025912 83529659 115133682 1027957104 873075719 404179439 965186805 530841955 575944180 81211001 871001861 569633358 606187067 1058922398 474639008 706997729 866920938 34882994 15610558 933848891 12414592 948547019 798762540 915777985 632325568 339509273 53318130 188961799 926547103 707966465 278432295 618301631 638314391 675523246 573380078 175868948 401956916 769382421 670374362 15416224 777334374 132719865 99489322 347339422 399966942 770808181 98840885 543372609 1063935034 154812173 236230067 370670022 854638526 676795392 405132721 550859324 294330392 856380898 779308551 841665287 240637680 21745524 368817391 59219044 741070104 845637271 243556390 853349071 745832715 55048298 826590064 569441060 213636488 105488852 948769276 266494795 744228937 983835838 580329399 59655719 569662568 1025483167 525638522 562452994 833533762 399452903 1035861999 554357460 321485870 935762396 908079106 971117516 614080326 421852555 348104555 387181880 10970703 854976349 279984099 667160103 491307922 343672778 739702310 274988177 673321822 1034999371 103461208 488672615 961493022 520343364 1037209903 502083352 882828809 550489314 221054709 1050529371 627740920 737686198 237149475 354009247 580970300 154577314 943127981 16677029 810487776 437545092 695951832 976617789 1010285517 20712771 915835735 1037289412 378257167 687857534 687190875 280999137 356547269 622595606 976057076 77016684 711553048 869182768 309442138 559575537 874891070 470486206 6446802 19684700 604447199 355708225 152575091 126599816 1070722325 628490981 160405295 64904888 681749633 283159265 580570712 656084931 260464128 1070363339 1037986169 16393304 956167167 1046444374 359362653 410576296 209309349 644358953 44185084 184576530 855923379 983431672 454595588 309888023 858250747 38648112 388083965 177433083 836785356 234340075 572147165 827701822 621273362 113424405 334155830 247516119 389166329 103396596 261787708 920478481 662472059 246540007 331666591 919417688 775581687 963470268 801688039 535778782 311385385 273362963 623688080 1048387885 253132855 568181497 413773517 98808053 870089684 990992964 1072601677 1030660045 359888345 918028546 61832616 787366005 657413541 395141829 1032714193 218905028 756465934 1033264389 938049698 938569240 154295800 448096632 176661775 789134625 578330637 361211571 235485037 199158779 558004092 346787289 727357421 889203949 483392123 89360575 163382983 791553034 813933569 316737455 921059530 348466515 259224721 1024704817 496279740 827882652 605603222 522983835 363171230 991400725 844877207 325821241 138396207 261506826 132287037 295921677 465117621 68521156 697237650 735929115 371846324 112563152 426816842 644828751 605727806 42803298 17446997 336501783 709627088 1071293199 202063888 71844429 760338755 565001684 91074298 666635072 210884968 26720960 855020251 21548758 994861219 122438135 70959599 899392532 138121854 385714088 231456603 623917031 684923031 951057449 95463516 966295908 146842163 277739476 527355599 925202195 1013293255 190200004 173197072 165567165 806624895 356415584 358187924 107590546 66126972 422094906 57786138 180828458 641473672 243730074 755165205 905333866 998959881 171304455 20444975 145053104 823442612 33482607 343244884 1056018072 938792344 167848236 882047876 612842296 256337966 129033446 503148721 314057038 892336830 427164918 238796058 765453513 58352632 10680030 621437536 119120684 223275305 326390723 329990082 518310979 157266080 1030524092 500697064 90768148 443959379 8030444 683155564 537654500 1028511318 664045131 457571324 994938610 503950012 56847790 674153724 657100886 563845635 483321066 693411466 303852211 294983733 680239266 219541324 702531836 915842462 657150545 1003480775 849754961 599151747 260933013 365220797 59271636 136816148 74825455 965290485 846274919 103730119 38330382 481332691 940621220 952124553 184409934 705705166 832426484 786076715 506710540 422373561 647826526 321664941 606570346 794464522 402818480 37542693 143651651 558729962 1056438243 291785339 961505217 1047297711 499896128 842026092 908135023 663485923 776477057 942490576 135870607 923662277 410193587 449478102 589167080 856137766 482603126 372785455 141960330 557935649 145111810 839821845 436562913 895853532 82919760 92809579 166653700 771455542 264666810 448581706 1045317983 336244889 456805795 996380357 509129968 221380640 227084855 324674511 135538112 681245311 992297890 892605896 761153332 74268561 748683130 3966565 506214750 763643394 676777696 833214938 905635319 986073040 104188746 165509409 383077894 296675071 253648896 423505503 1028122478 501185643 992920202 616929024 703950030 964498978 603589020 350908021 1020864461 980827329 695032575 219789577 503829303 724579671 681149787 288578075 293514036 95415253 1003454524 248518319 394459583 642255648 337853811 435146508 1023416593 976660542 273705727 671110651 545600935 286544693 367925479 333475895 933728319 719131662 781494590 1072995677 1071131428 1049494543 615213963 634056670 592571595 719514332 507887757 598292564 1019131055 82391754 367490448 829883835 926182961 245890994 383988070 320133399 87814948 728720392 69549872 76147779 499102461 591815902 277100174 750542047 1000607978 250734074 384887042 468538531 914389745 745460805 296384990 945739680 798103922 98201610 293306292 953734170 472054614 104280243 616479740 991753335 1036877970 514763637 910494334 355808427 192596603 936921505 332449205 633725398 584640868 83835681 862113991 66518075 841876700 27045949 322635383 617850518 506586314 142303499 408908943 726584490 764749237 636692365 747681112 836718888 299344433 900727432 67280884 990863630 1006494992 429404561 188144168 807678930 970602455 595875405 257007648 853944288 652394156 691257353 464973197 968898646 589371537 406489817 232594881 129662999 372137639 963243679 970901520 475901285 360205029 869007620 1032768825 88103214 1049768737 666346102 444528045 501390288 417623516 462548663 740093834 829374147 860356421 216142641 1071251441 664817426 130789202 724708501 459845203 594382403 1056469605 522792627 1053403658 676356260 88870069 608363107 863620666 292396846 529006533 162403982 779871407 781164527 30692528 648690519 614421483 1019565777 715654739 412290470 998450035 389802935 1039785701 37782649 1036839621 211131723 499289961 192642210 864845937 24843964 232768227 705361749 1003621966 927366657 127028855 211413233 508404951 185748836 317448517 488618388 505328456 178969201 442103985 807758294 749036248 179195140 209710635 670418432 463269092 136881240 178330649 658242395 156326355 848205799 598614041 911579274 195276335 128233715 380799565 119234726 809128945 36965324 714531165 378156310 70903652 596165048 624179117 669543218 428067101 309539606 16613906 198442445 291533910 1014105191 201064045 662932452 10361788 886784974 58888224 221806209 107420947 337850847 155883945 876986998 143771273 354895296 924828969 744925643 41154423 265546309 616271656 381142970 858103573 162214813 643565218 704176375 591732078 196134068 120826230 767015025 832832161 787230107 746616625 161720734 862776107 2341735 185768558 161842748 1057832673 469245116 563296547 882476053 403002568 730999387 39320231 1060117302 1021291 91908608 349995182 774785249 372451948 570899023 302523709 133367485 362621292 732196909 843408343 68808562 1031009361 585305404 1018111312 595042469 480133768 1050403373 297420129 989978460 452509507 98514780 328309904 791708669 456495905 948847727 481090183 21219753 689297536 526296392 1071518539 952788011 766598582 956741167 998738950 711622766 178843614 1029858116 581680038 661684096 118026725 305467563 1052846264 682691119 1046793688 758728664 4546133 973856389 521609774 152728133 901020747 745289625 733042538 607558988 883024431 642458129 871675948 139238637 169095600 569141462 984847878 237725211 1067666941 984416255 317463396 416033254 356823732 227423267 732668922 158997274 159347483 183674084 794306942 1021579943 1057808068 738572516 29178165 910541051 707068378 113280543 42719539 77163321 975795158 850671200 601430739 270066441 34037983 7241550 300869386 286113986 18270666 556654773 277272206 1041609753 703965123 1020842190 773969906 118032388 344720928 1031720096 531151341 510175102 95509263 147567368 240236361 500190391 248021669 1031543003 44165640 137743615 610369956 145788295 773292848 806773431 1018760924 676776394 448260382 753098810 788948851 278043090 314846573 927316126 216996782 112780265 786926710 488959355 1042448498 96443506 859286852 890513613 1050365443 160732918 185516372 3345431 840311462 228557947 33569627 204813639 563647329 1024471885 804967483 1049473409 911849909 222139388 966950951 917564667 754977811 426362601 270745278 814996265 599532156 454558640 1032037746 10127202 1049690781 730157434 901724686 866664137 290431446 661228963 793984173 525913023 894675539 36941272 107836143 1010458347 784400925 571522659 461574005 369092972 524435368 1065484233 471072746 961545888 658380978 1033623510 494956516 741012970 1031915937 939685301 801236779 151483698 789764452 407996613 942614811 950546230 757099454 1023028160 119000153 467498839 625825789 436668699 71409407 819350446 787807466 719980174 23161227 891370671 427112683 139253183 509912841 1023866966 469262611 937993445 319870992 442028122 147813490 448580911 583957334 576092519 59385166 816499157 115033561 535819103 788394760 81966588 447662838 365144992 767769764 815109112 906275154 4912568 651612478 616248892 85261341 576785151 852325352 844102727 761502044 592018115 651243368 698805275 123078249 537868138 929893560 281444166 834673675 82908911 305709629 749468375 46474159 1051532215 711329257 690109184 254238401 173581762 504392617 254084147 1063047873 118343802 440820854 374904549 844384978 1068845810 106510930 602325003 583525131 951891848 43839391 100775961 5576089 877114995 983352567 1019715399 920104966 824893839 23802239 288014211 785713137 74151148 939137218 925465985 472111494 941486193 73306150 2882438 495226973 845225507 905494742 377692312 622286161 62475440 542823363 407928332 562429619 97155502 526727663 338602078 157967519 230569492 594319042 892417585 784544315 483394153 328777379 601293660 549545112 40852 359904543 391838658 216112693 231878720 753704946 188806770 509007992 943001756 1063877163 89734136 622080297 967130814 832894572 372706019 286055228 358236091 427048490 242866388 354103658 421883296 585328919 276948218 942739746 492443967 72983695 498841991 321428094 429862445 302784820 102636551 633501647 645002591 803690931 467137660 573433966 971985889 476729192 714902722 671383249 840121454 609983024 692286467 1045882441 8467475 950510098 168018363 864334383 417617259 274088669 22994286 821887264 515742761 63240163 745592015 179422457 869055569 1018553553 51536693 254593163 55082851 980283080 692453511 470950836 915914573 371687119 909585303 354822939 999958190 215218417 133043484 602163393 515914200 58310257 562142910 106434070 71905598 540982224 72913634 46212280 547434642 261021464 543470309 567735674 591363441 320133187 54471577 959677904 424835036 232847130 602212527 513178119 353596731 849988533 894933796 555788336 389902019 356781118 91291911 1047754698 110436212 289554487 55612021 851889413 951970921 605118306 888201706 985139256 999585115 266462221 234192474 91558947 1023475042 19368800 338244956 616515714 233555266 504863510 846810189 196542900 873973196 654077212 148910569 1012985411 318842190 665030105 136493516 749831459 52951342 307212604 710422043 819016029 794987501 39822453 888346432 497880414 756281710 946937696 731294631 676828641 257274388 729916898 775471848 430372551 269884992 332198264 602956148 853156757 367059676 194977539 601396469 873156011 415543907 387653883 913515753 678653704 328805078 131746429 693445151 1021564842 176273821 87125686 936691783 710183072 204407040 439172852 981456618 179050981 376078635 740846645 395184581 395608109 1022043853 200015129 345468191 240280925 449626988 59727373 501507047 143785251 803127178 502308941 986468374 324326361 398204197 572447566 785717030 828353388 367112596 55449672 178280485 52034221 557458355 650852141 495433869 74853013 229336413 959994696 200085108 421806043 341703865 946613099 528539768 403903052 197453626 308065631 599994015 555506371 529164408 767617796 347648604 557517164 685722685 168212597 656594580 295751164 864560439 733679202 400485906 1035152077 275487299 114990219 662699742 944844589 192138155 708953863 918069762 983552177 597562858 846203403 245084480 268243335 547502684 123266416 409097052 505526364 12220339 860939062 758280553 468176941 1050666266 786378610 799660744 244474355 270279355 97319602 310409246 290927902 900057417 968956097 301393702 880486778 547581584 237000910 379160312 359939298 349494040 855432435 523553811 415839688 992944057 886324948 624985398 560626736 829375584 35062591 969736418 103641068 897059320 34264673 99085640 248242753 362564240 574740193 434821553 566241679 850999396 997619888 536952257 660245429 595721620 759033168 686623275 905801264 425877437 300167098 778373972 817840850 924366293 179474575 161852060 767200207 1000924689 57153555 831621888 22792762 306249024 728879938 562732189 434077863 729156371 497661407 283860292 70910411 576289155 643575111 1062148886 94908830 758189546 85124406 37904619 1059855399 1064916050 87728001 796094360 598900659 789821907 855074499 263658380 492312426 192611346 1042747649 1058218474 1048626897 255364810 722658176 915058032 681686614 598326611 116053484 316654307 450108358 710151036 615009118 165357047 792471905 748470849 651695803 963716548 318867522 747976243 39258045 196946645 984189253 229378413 680305950 200802873 858561895 584957230 525745244 755055565 455107634 458813217 440988344 546225710 439576900 102254613 643946089 871297469 420792695 601994249 497665388 617242765 203044160 227491977 222360446 725003386 323237379 441208135 778308270 267536930 311276989 592328232 91307221 885385863 503606582 707124156 495155296 208738596 50308765 505814119 136940428 170090916 772077038 732192970 749883456 421651949 813546728 928314135 730750905 554739628 129446974 374161948 821057529 270676652 970366838 31246074 488623693 793501756 659433931 506146024 92640395 950474527 248787695 248185989 612898921 489836739 125319854 312145755 107637883 966028393 974759563 389385321 495453257 166721018 228005289 194234506 923120643 989025984 773683892 757404011 797396449 368651193 884801243 1019965063 274219892 258625913 920302938 173647813 124831147 727934668 76540939 382448017 489204679 433837248 863637549 461972984 315110981 150763333 834992402 552981362 587832435 858262453 639966701 400281201 501170731 1036658973 163965069 99112269 925607914 643248187 526699253 375254207 465032701 376979772 867824757 224455805 369249309 384583226 70253314 1027816599 948838377 1008242189 267156803 809070383 773052599 117270985 210387948 559136448 296528946 963965021 723188963 165160558 918497370 917819871 1036772244 44448371 656798985 978613224 851199447 825532407 422058987 867139252 486541372 621000684 335043436 301365835 18796579 445917063 369475391 914268173 595276119 573361303 188840736 733979938 872959679 96460160 717315269 30604178 1041933385 1062569562 64831300 573235573 829366947 867286259 317734021 640800384 48459639 509085897 678893829 626362592 965655914 431294661 458033985 165828665 1052116846 897336937 610445360 717382596 88149030 239056301 25003025 435235993 787924620 222248440 199527314 174468419 38713254 371567352 443829292 186813461 125995187 1059145800 735184563 748608321 63447693 1064634155 987735585 183309666 830057648 922165833 521983363 131483620 1036842556 715089443 524814141 481431865 622561805 237910806 1006779047 193156719 601349538 237800210 12733832 629147758 983970570 723114718 663346637 344285694 510705347 571775504 369770394 61964653 730947913 332349877 443711432 1049583868 733431703 975737370 478402812 452734420 675953660 733095397 573838743 1039400299 347148857 298920588 917659050 12086741 571804813 585756786 52706255 25684246 571910631 375204810 335700682 375174705 496173894 479540267 254102047 323199023 269524238 587455566 845861083 349853108 602860772 203684547 122249003 73279772 1015457459 239585186 215641876 591374022 778985681 626203264 301107912 280428821 595569166 517000186 673228410 261056439 366756890 216184589 715123432 201677252 553144163 1044962228 423501355 410587146 934287293 332649299 224563002 249833182 96404792 565034066 67703014 157831910 825640647 1053262431 484533327 2322582 233222692 508101907 914012436 877841424 13975235 383787369 432304346 171317887 575622961 753092936 730234791 324633356 428188603 742702134 957067379 711690860 491044887 896936611 898641575 205599422 520808514 521082634 795172778 176797491 1030287738 56625880 129259229 157830768 515382080 264740725 174046977 105238120 244490987 362446642 553983586 501441703 842074506 626651368 289746163 810343424 347831088 153548369 432865472 445634786 960697988 23289313 912945887 622850561 248361722 326060135 865226924 15398995 470162364 1069490009 904473538 663949527 344817858 578273446 550214708 600965175 743021413 502531502 500642816 357670612 717276274 116766179 149312804 542606514 874139482 867064563 996609633 234061758 845327407 648884228 750012748 530548234 397026191 852588134 818447268 354961624 144870992 576569414 730325500 404218032 797756830 213161292 222842058 207322259 537528314 531245565 959611550 495523974 526483519 538628210 716539145 5426705 4396286 858518584 177110341 187738751 711852139 613737156 963238855 1070658948 821621360 517479258 567018733 168581692 166617551 73698962 785034730 74276404 263195564 409542721 284862706 522768691 917907528 191233437 1026038815 240110309 405301340 474475199 359042775 611744508 113224596 232554229 40331528 215597631 562023864 430022033 95000989 889030856 280464491 575668945 369913801 66987572 991559698 327609856 1057196615 397486914 985228698 720330980 783162319 635934036 211842460 174659489 418225006 1049794571 912299529 875407158 782533778 517091100 29966294 602013784 321975208 922799543 71686353 498731867 1027916520 818344235 517096698 894465469 42035452 223942360 407788296 1034357350 832675134 62509060 60221185 906746253 1048262052 310783319 398250795 1000917284 260409384 367727766 759437454 726633073 394079889 922240083 737874087 525522801 738107949 742972727 97251538 404299759 917761413 180416828 856925713 245890139 740058080 455277118 2887191 441361312 104933669 401391903 333439041 602790735 1067182488 775276709 364597797 906107772 895338470 325987995 14553150 340945212 276795637 1035939816 34343006 454389756 589958127 509975124 342768931 259529316 1006248714 676122302 1062691241 946938325 659159123 934715123 768739321 345059209 37754959 407262135 997653067 1043994506 814171965 248377396 335153075 181513373 344733797 1026865827 381677074 57982308 57478634 706586990 640606133 413871006 987541538 663196556 863787512 432013851 34200315 531385279 60889674 469995632 131963796 1061310125 865644617 1059727535 422723890 734982958 627679187 255418396 614535713 399061305 482968729 380584594 455574056 869516264 510228125 379280854 727898991 356997532 127666930 416226793 213556170 705180435 381914303 691266713 685826971 592740672 74796652 162444291 1015581998 115027802 979419876 275551714 1066083469 223506375 184221459 84848282 246455189 602834218 754064456 558382866 304176841 374203330 643407599 140432029 273317855 688755689 1049337867 187874441 548355875 437394890 542878708 140964251 3300014 455191349 249546009 736680896 526195989 534138404 241850254 130150179 508354835 577136686 134753274 187681753 1051181102 909757645 354059105 98126778 26438630 576862088 521365057 220536651 865446410 1009106083 581586002 159780780 943541090 820070959 1066249637 162938099 359006984 1038325743 422023227 912517505 961747594 181942969 429623569 292489537 1062653303 921078744 528808219 779695416 490996077 387663456 176140408 867074753 754255586 167867738 1059903796 293105454 997283804 67680210 900625694 5195079 752871959 624868799 444140630 853930073 981318681 1055735903 36348038 215948709 493152743 387778808 380876563 945216726 912387566 986718893 353424378 1071865547 1001807512 289183584 867382843 148297891 910269073 588042260 272792254 257448768 251965176 1002647830 652959478 427936415 424078121 106216202 48686968 404868577 38402115 1015287928 122250576 827899919 397907943 64701289 1055664694 170558531 733514965 166938955 477368227 636403082 251091708 546640958 111254396 301687969 202949239 402106355 1006790240 756226927 745056496 428111786 211399444 1027076054 909604816 731182488 275948190 283221353 217736741 996472546 863038790 801586602 819217624 380257173 931202968 840641154 740234976 994294520 818685945 243668047 59012911 930618860 162417566 486869371 436622464 810289505 941229895 136049102 652474919 779865140 553559954 1034217705 1000796817 938500929 378226744 595768955 589733937 587769798 561152975 946504636 843555497 928908813 252194813 915762414 760525370 95731677 894736650 644976559 845590671 284703390 768627651 831806908 606597211 183455208 1031548372 198897435 114105702 690737840 517019909 570492925 736668497 928407945 978927390 190215130 540532825 858439342 629771860 778518432 253046351 326182082 763801278 415617746 677260565 1047844558 539723387 804854315 111166046 644748130 36142058 828487756 658086558 564109338 448518619 158389047 394539801 1016163807 729802680 195713125 339232834 658146428 250702483 965922057 961538319 1011053057 745770996 178865207 854190505 793323540 883988169 463965001 406804539 478062037 800890706 1008491459 375626875 616977903 277542418 431082737 355292274 771257059 305359053 294222454 780489904 555529670 991200356 457206744 347215227 476003908 37046354 500158803 402032301 980073905 912315882 616427964 285726863 782106164 768557842 118473338 185852875 22045301 983179229 127197733 158234854 160498779 683637839 872115516 715457952 356937201 166915804 240464788 581361342 736633318 607185472 913214360 800373728 571404184 273355393 620173397 539536178 164537322 619333324 455709575 117239034 21962213 655711839 207697532 1037197188 728612947 108968847 473216337 17318374 863435232 493415480 61864744 1000304938 226689551 1021803837 676125597 229171567 728912919 542339170 226152173 435818853 760429488 653921444 525487873 733439710 632195474 39000977 90964534 946717904 148038797 695860619 885268621 1034953218 875399931 275478652 863920375 537954058 984320253 1072363648 809279273 699035971 540762126 812304966 776167163 965302793 568757917 812045530 922018477 946760597 985259894 759552196 817252866 6697942 742987805 661170480 13495792 868163004 366327967 760147369 299842878 390723820 866448959 103409261 292625285 837522753 334342912 347366427 15845604 639347442 250451617 292212983 936352983 166447558 798922126 771317085 545807069 289891779 685806075 997797407 25865470 335237932 422287687 155448464 1056867518 1054597028 620040724 568084353 100960493 546166235 728301426 1047203544 780146028 106485332 495508376 207788486 110287330 171297752 396010534 201441912 260211258 507525982 470677719 1000035588 397128996 457682884 216082182 92989567 464884662 682641624 36210813 29344504 398401388 8230987 237366290 941058863 403223466 287153788 361931679 97008693 236818140 22441443 637086061 262602881 512009931 648673267 366817826 238028138 256298178 727966968 239354131 897829094 925982163 521564061 286778757 74528284 433603331 633530911 1049069607 893507907 734946539 543744365 90729989 506915891 1052126757 987908210 981885228 954332082 1961438 69401234 684905577 597926181 316439999 952378050 95238964 466037157 778620020 463351130 147962367 948566096 661349755 401575056 637600534 155178136 591987548 552739788 130937243 144779564 647710761 118397353 171696764 42066845 655080509 1019725279 416451732 81880236 129606615 943179720 313512334 202037843 609853611 623587683 676783125 1053395026 751626782 672581252 256825698 437263906 1069712443 78884932 11460083 753102517 588589863 312530011 822761424 928518213 683443349 373547309 834900691 549839646 729567034 24090417 68315412 955521478 193678584 579229415 359103274 816923356 642707629 545790554 611471318 793968713 82646832 634973328 38971148 937167961 470071198 255810870 174088268 385770656 1037579910 550636569 314311886 1026549537 460763653 480744411 118443927 342481709 744933104 1019374091 905832514 133738444 712508418 490884111 512611678 492145068 661493236 771755208 877790388 211636611 240491063 909176938 15562047 848222392 1064242984 962120539 702588049 745866991 1007492799 847363760 974213330 727948925 867444871 853618195 558951313 958080765 38825995 124446935 751566061 182930652 801814221 5893261 1058604796 422280331 676505938 1013381644 615514413 1035994574 756421731 647561730 767576491 297416729 589135236 596443927 538677937 794548434 593117295 534442591 339903915 753580009 975112408 211586446 759935380 867820528 142009814 357079454 88423111 1011781308 522239796 466236043 946231722 663469407 479118647 10647890 72870426 576600127 785220217 477143733 469106164 791048939 591475085 771216579 430350214 1000452585 338404976 72259956 905196737 649972667 291189964 558072107 974612180 15148607 661121687 52439243 306597430 306043515 487442394 710052082 272896068 309407200 819621755 349368896 893742073 777319962 274102262 802266963 379309931 217584250 554195918 241459585 555788905 809241817 36206966 112469463 473224120 875788008 527953209 35705079 427639567 539807200 1020026532 361438753 849812075 88045011 815767880 1039969762 182629299 764909746 519428542 682601795 592102222 636297645 720899065 582733873 394698157 591021133 477207628 545233031 639773856 1037025371 150506704 389884618 495988208 381603480 514721842 917170633 37578783 83125174 922700169 604628947 647200543 924827552 1057641577 167449963 693229780 973195328 719981168 554917488 438676904 385588255 465828338 473331937 777149409 311817485 591326193 767173405 502199769 164371889 936674457 391160277 669182787 495671626 193080740 217750797 261775601 1039936477 922438316 570384806 880458010 802294343 728716618 266853934 13072206 271571965 389295433 453228023 608816252 891468470 65358220 1026637005 136474793 582296725 65738180 178716839 815554012 563076962 979049294 48359258 1059128079 150050420 462083011 481761991 618922958 976907892 713209470 548055131 24885367 603372307 980050319 252813835 1006238312 235336890 683035650 598922145 572872532 169940831 234461502 415484477 801589319 1041370278 905516554 562064305 1022278370 461084474 53261212 871470521 658220293 570457405 259037727 29071872 445888572 107706292 15678689 180117605 971415373 374148420 433902859 314804002 379979615 663461450 337065557 976207005 1016297440 246190476 62518102 464073333 1020260527 646218366 185779162 541905522 1034683026 593442579 226095300 434946615 1008326381 168513601 268819551 858716755 968996086 403916772 754034696 313860167 928996241 635093462 1001285010 562107328 766205491 845063050 661442449 56414697 180615044 162122937 245279527 693372525 68057655 936909773 525004038 187586233 746624709 1061032296 638006474 141362219 66501149 209104980 890006916 511276843 412018559 510955743 557827242 1284402 380660507 739989100 954190791 206132779 235524962 105361114 481348032 1045070665 650160242 586100868 332258272 72255518 830430700 859049689 1013890905 157646827 352497479 54061383 851838981 891252421 250874582 161937901 989427998 217181948 442062422 713602189 848728486 182561499 469734144 42090370 867481627 861021230 243652826 684814508 618063248 639511851 239743382 217429482 918469442 545865940 171206545 3690885 929809621 17874101 850123334 155869963 804580537 437993192 830955014 8298484 591335715 812019511 274497540 458579671 706431781 51560284 810085615 346998208 509061663 232660326 792403602 455503206 467628802 972389395 592667519 167309071 663998319 477033960 15278262 318973833 72403493 517083428 92251020 566010149 1008599301 353646301 841959075 910342106 371687415 170387652 335595594 801151547 44249411 294191717 933893960 976750531 1008525779 593873115 1042303407 872449141 954049269 163127726 152474200 736827026 985946073 597105385 1068678477 823371509 97766958 214997571 357075626 72102493 440961210 652516583 398456971 309656514 251677141 73096784 854332810 363051192 884716003 139818894 480732210 690694652 1018054912 339884799 566221139 354079093 287641764 141879156 586944065 216013008 28143580 466744900 167880109 232419250 876654421 577284572 147791385 44596819 321864693 515091282 766868855 479737927 53204871 886800547 492478371 673490450 141092265 404298461 111530227 627666770 148594736 938475737 868510967 187203923 437168891 792961214 839363067 865957628 180019238 75972775 282528029 1055629371 776351848 397870857 854789826 726985028 184247400 569534423 840916000 1017925588 245345029 774286588 302208423 389053544 598781271 166133270 960313860 612396569 122702469 580755460 16718071 729489238 163739757 762057908 659245483 346779606 491242216 129142263 388082260 255134249 311784624 590137016 28270544 255456784 307358 724461332 533507636 697692802 493128350 642467272 88630979 301698382 562413872 56999593 524015644 450747681 258523913 330898764 742224196 154452976 907678632 127455545 82394758 810460013 660987492 600471785 227205804 956771984 773473062 232574417 294721969 207241805 879798635 918110 60612323 249301209 616013559 230085088 252216165 492113453 570084481 91353387 107564945 394754375 684606015 528330135 294969754 173957857 1049144468 299085019 72293625 914906003 814040675 226591641 958541283 266101539 723690137 774760880 42364308 625536907 88342160 1015542069 676986972 190701884 932856920 891425201 78847082 470290296 1006941524 442425798 647764449 689885978 429355695 281311537 205180643 685876250 940991208 814296015 758935664 146032180 807918456 591692475 399324290 335247813 539558613 990565603 720743630 1039285892 61838326 42738856 558756721 169022432 829906868 485728354 564483307 13506344 684583125 441346180 210257842 482585892 357046669 541129206 315357831 407165782 585209276 235482876 455072418 716269621 893009904 358103133 485109697 349722659 749676476 218704268 819688623 698617852 485441435 36832071 98455596 684301221 708705155 534656307 785104156 787443748 958126114 380933212 900521529 963904441 578307829 848358517 1027422421 235826087 993566585 370443992 969254859 847082498 415919779 989199865 187248106 957754498 151619410 823725986 210245247 49647250 927727478 59333334 558812552 1016488800 861150693 670279040 1053200177 576700184 714006993 599673262 872830676 1025051285 580476470 956607010 577112404 981893452 770916478 101158945 123078351 282628245 821292776 941671338 191891512 28631709 188126859 850831216 296402318 200513802 430980507 592794175 1007377846 839950227 648580258 696388620 574401847 1064458111 1001641569 135635163 745155619 123147025 975090731 89492943 165723757 336194937 944753074 360299653 779553588 843007066 81981193 867491432 293739339 313140897 738817390 975876784 732418677 508736206 124913658 288621644 15424914 66946264 35162773 165455769 724837008 9388031 612081375 240669852 1009351815 794625857 767586843 1062240942 638903153 785637728 396292130 136705912 1040639212 29805664 723343716 947038716 448269374 1053088592 538334161 871601543 900328376 792964352 204527083 542807339 981256160 844663429 146409278 148943992 855630760 134594651 1041456797 446788295 733289141 992104900 787359526 804011121 711183133 999643587 248558389 1035101302 1024963762 981382845 730466878 870083585 780325378 64173455 374643460 53401681 232134163 85220614 280933592 197973090 1006936746 297075404 99793981 108676842 648340222 587549111 631822298 389784179 675884936 91267553 505333951 620886483 340440179 8201656 729478503 439618913 606675296 54776659 676607124 737407121 723796051 218719841 611500113 398668231 899804375 758777774 248726160 383924139 59869228 1023169557 543804720 265885976 481784848 962565038 682049586 16871470 394046830 59208456 762039914 209540707 21878601 560452488 635413037 907296807 772386243 898336314 383872191 654567133 329500387 582037754 468934654 1022960543 567086234 447773634 457470006 331732952 1073426832 25257426 496331543 1057621393 6784684 789707481 65519063 1003687977 52612997 157324110 958393113 743357256 206196277 410336587 844163724 402544026 744725190 843510317 989619496 808301745 710744789 396285801 733619006 1020668683 342531312 1042755478 329086889 336235659 430480323 236435114 933626933 233429502 1010744680 230844064 216639309 173695771 854959894 441517938 125109497 368243543 294574776 99089183 869537070 719498102 217275581 650273501 34796844 162636239 382650579 495488916 835273168 396909140 839119340 980560878 236692772 579325029 744883351 540729856 112479043 563593490 760395459 853042207 458867258 854917128 819643959 954535064 306177675 702744801 281857205 258006309 29493078 229265165 914533924 834749630 36905367 839423971 581295614 1053236655 754937796 1046519854 928608085 66917911 703429801 737461223 792065990 197940923 129635126 265748973 914451767 491454709 40274609 59380687 381103167 528753763 913988156 644971222 203641950 543431549 178977543 892040766 736850835 416164430 957370125 700779382 818424139 29485590 465587848 906423584 2876506 307878856 3098991 418475546 44202143 504042684 810340217 496387407 737099999 528957751 902126277 193469085 1070119914 948372897 134503763 879158392 393359241 917687285 728909373 318693666 105275344 524218800 224205514 785376764 957075366 783199342 286543562 548553309 8909549 329351559 751069422 71302662 806891228 21652438 1004524641 477212530 74103197 434370880 420904102 820527258 69126861 155751881 573018678 1070313466 846477988 174511511 346994400 102148349 124206092 142210500 761096752 868189413 556496454 458635579 836138453 753681035 23578187 813570696 22189255 792797992 996789582 118090672 401002832 46866445 252339119 795038779 83149182 144532577 572991800 878557459 338617699 154326253 198837850 875485120 449303212 1023304722 149154040 585968631 841888077 910576935 922148331 174644097 458151577 377406946 4280299 753409552 324310491 977240372 319078071 763620268 75383078 265719348 332140908 382188248 916424837 740141644 602386263 712467129 807186269 386718199 143747912 731772976 100539984 112307877 483229302 397036794 943152844 335956275 52468346 981619860 292820962 93045815 858478074 203252897 212280750 609446335 757766734 451738803 922169869 395321140 17766916 651012341 311382911 468228767 540388509 184658678 53026964 726175095 24946403 405366370 81639571 249875489 85253034 681117003 964519887 888440383 17966531 889209523 847405452 1041856201 882357565 562603627 912055793 886017039 954661910 1071843750 482725691 301000882 966829881 651022738 445977950 163089700 334189448 541957298 349237027 561099469 507188741 635810756 569257549 315218342 687617039 760471502 34074301 443127162 789779063 219564931 301459817 1054800664 77263549 240992307 350812999 117804411 411615618 784962510 1073096217 532946544 743025142 1006789509 1028509411 22437073 601298771 553774495 436307151 952380883 979354790 277084857 375859783 895092133 81256310 237565252 7417096 499069599 723468191 1017651469 775373915 568972803 917817487 721893332 157132220 1031157024 270234238 594316115 159223134 523934328 944259783 282397154 35218193 864840151 639675164 933597250 405775627 399365081 136713329 785050840 258028458 449456685 218069168 377276443 720237886 966452520 1047202905 873513034 1070318728 210684902 980603175 90738910 548378311 1041598482 604115542 975017681 579304358 496521609 970038997 554943573 149381903 692366967 317773037 208275811 766818580 1034402418 266572484 580283080 399422603 430160938 518291075 496266370 602450499 360281728 5561169 616352809 93417500 789818279 909135153 229869968 925445365 648273299 91444267 838823880 981349289 98062438 657668630 417678909 127654802 568777369 453912348 749053815 66524273 499538696 177637171 567022262 496894119 660132766 642313570 508356975 659252040 98892920 201173524 189992581 393004359 581078091 648783706 65883811 1012098291 836175535 219407662 127939078 557614535 351519169 944971736 1059266781 63401995 863888449 965885271 804277625 121560644 718305286 1025082333 229608304 613033464 297655241 96567011 50819249 193658190 540528823 789178927 730465732 846344423 456236202 907763411 373705652 540631524 1037434849 109541201 976859625 408255131 439570118 619795256 107749536 63921815 348166928 68563911 854096398 621600008 635698817 644410979 797782009 40814647 331769190 579410117 786096604 818384672 538799247 128744953 1039247172 813553379 712000195 66431447 590911035 810328516 798535684 765308130 628233265 357856540 99208592 399247070 493045914 159303127 351000210 145371484 328116965 801481672 22354375 708950561 717800277 101973713 966763811 421771417 654679821 513198716 480546400 716544374 676611620 430487754 606841120 143019971 634388530 172023900 71684137 975193545 187072924 517798247 632638434 684108262 763890659 260362346 455046830 583115032 374516617 513273243 1047591280 154071771 988431291 454097466 560544079 15228839 168098545 625286168 406004566 719682670 347028933 964632322 919937904 134172001 408005946 116612401 1070676410 698707930 668741342 340208836 924703851 364455117 40195644 486255533 273938294 230810758 381728779 317648042 636592326 760213106 531194727 535727516 559067347 305688940 977489835 849239273 294504232 735666480 33885703 575378314 183081268 209260369 1071982990 436332155 555331918 232457315 263381423 682074793 3348781 826293730 323498480 94199885 850036450 239831340 1072799633 990161125 84372604 424797410 91505825 766232901 657361327 984330292 151872287 423017223 683528194 268166393 839654996 576278645 479661165 561933410 1059860125 1067838039 265138345 721510329 348319126 200732423 25294279 754325592 974816760 20909306 27493484 383809515 1049072901 27398852 918325351 863089454 1066032835 336176311 953093058 229147483 915054612 866973666 744848067 840843665 1023469847 228268860 499276305 32367820 232149071 340757270 226825667 245726132 872738474 24442447 640751126 333415506 318467416 136414785 381424963 520096 59062800 920927356 584079269 217202686 961776871 339997262 799894311 404586326 601887986 514811997 255688640 217981241 913168878 740350168 737432612 966941093 271895568 18791514 549286088 977191404 842712024 46934331 12400225 731439613 976002130 212460579 659089787 695440288 882497477 986563126 1058812622 453113787 441186780 774775095 116208086 559493252 908774639 910500152 730656753 139691917 459927864 158488310 137281899 315161546 606484667 489732613 362167107 849302951 131702150 284944821 115222946 939563882 163861624 481670305 78293736 893697469 27217389 992348633 120503146 1040277468 585672440 468744177 307431850 613108105 522893718 1032443792 676156939 150565125 32362967 211100778 869474150 1056355377 444027383 24749282 420029610 262418709 293859892 903288424 21542675 320673587 841559970 602589744 871007008 986036052 540899776 868129758 803875607 651502789 891789636 936452638 366743718 866421822 75789108 30087528 61266811 944515265 183125456 364444484 9128715 178649567 554603868 391458863 961675551 852754095 689502709 569507549 80100209 920033156 619892917 363408760 1014372511 360332763 639583584 341151538 363570315 579408206 376036850 527315905 693804893 444935987 891509367 446635031 674784040 872244285 202822792 353697223 736587688 712674940 382767967 45543339 255522558 703016966 405444041 517078200 46826249 161783949 973837013 417360519 78600643 782850960 919644112 780295143 775536746 225803775 169200750 677968111 899134568 7235910 645673057 980578201 460934708 827000167 204156276 545131400 956919702 1024348360 169322337 653377125 842402914 810524918 455867764 697975334 3237231 450458930 729526659 562179205 667336494 486766578 934607310 112674002 168924473 61923645 421088611 358265705 91100200 138624787 316815850 682711148 997494861 153060236 838389731 221343391 791075366 67076743 1013104168 309248454 921722295 573659231 567073053 497128666 415513713 795487575 915282722 182547827 603420514 350938973 97769639 391599870 1039539816 577693102 783163734 263824389 614621778 97354560 227360144 395007601 384397727 487383202 413683821 298419022 325114364 896262555 709041449 11040768 794191643 1024751250 439291881 201665277 332072274 211621195 907953472 181673090 207470283 482446736 129046203 241372644 278354793 323238868 210106485 141613048 964061800 792540238 49754222 732298349 967910857 863158687 367811368 889100694 1027981461 1027275699 911790900 883913179 918251128 759063368 807044086 680117519 767988184 73792684 1005813797 847429851 127622685 503553839 745867934 728206938 671496940 820505115 1033500477 645191316 771171422 729294011 167793265 641119058 765926071 938372762 1030294371 858520934 368459459 186604705 237179576 627314584 943675270 842581669 1020492473 1060252511 682393879 628164728 910070071 709027115 366092873 64206720 7820692 1025389744 252530341 523639621 924035099 768762992 51354180 589311114 875678794 332861667 69566037 39342486 184108119 340570753 116528365 172476962 370321303 936202129 770011212 739810397 64922291 840245082 560232554 656858975 391298711 670072528 353763363 740487950 907461309 169787901 21426630 587658094 366185423 768740587 240180581 565181579 582368560 723086244 1043443251 679299382 598153516 567643134 4266403 250894818 568290791 799357786 888304342 945769819 764349554 278673968 650407033 115856546 204469295 649656704 828357450 899817269 151441649 638737917 542065564 767779150 327219820 461279380 41338155 807839110 761699249 476384869 73186745 267566422 696803769 873870636 686743868 784223890 972569868 639792956 1015665265 1033640313 512650874 861850821 291542922 523886031 96316981 85096726 419809628 246697697 323610108 134127888 372888964 858590423 1022421744 811166131 792674613 517992258 5537164 753413882 896576399 1073009765 873652207 669120865 21810825 113325615 376346896 660192175 936619773 329070578 737745819 756777944 425248173 737697388 621778636 819774777 945452811 1046756621 426520837 144403715 902197774 883336522 653576618 749310117 727536107 693206332 173131935 749771601 989822023 482864721 345848261 765302673 898231009 764075491 534401400 80417663 765921060 707566721 719956105 610842226 333570577 932124883 148501767 762126966 16861160 50096523 585682631 1027748019 554858997 611219280 749925994 293072439 647021626 62141776 780272078 678371690 836172601 711505412 61189717 385606170 976526037 50199280 148802751 149078051 825081454 956929896 200460265 472987585 62781584 935586496 406748228 534311724 617363463 735490483 985946291 838071031 60775175 769963937 179226535 404594267 661668570 649217186 674437839 540494244 751592524 657173812 204182248 35348136 84600832 161725214 26764373 380931935 438487164 693505739 773845083 543679986 259175790 1038686880 913783929 338448963 673257597 927192831 772888809 189245775 816340563 427833362 725249929 754623813 1051946293 138598714 717732502 855531015 759085346 10315093 479368977 569417826 911699404 1022076471 818201889 800578517 94453923 86411107 725801825 521833578 395314284 257791659 58707514 131176742 495322871 929820890 1036127139 1038661378 859753026 688054955 1048483837 7557740 967099397 943930273 578295189 258051163 17520744 441753907 581860834 771577003 424430223 142397852 447244764 879072501 275688115 410244618 520253246 965096310 609471090 573964556 573570626 955288394 717608908 189764918 170477934 452190220 962319235 948723275 541938032 344562964 176265204 533041639 733921370 756944715 308953786 320486719 627050763 324160826 213082836 965671275 787105380 801166580 80838536 473534863 1000504775 960809518 16162342 311144618 747597435 631421492 646683251 910973942 263248608 663517742 820510703 812041256 452531472 215968462 833278281 537093594 847855835 363213105 243261051 720526056 33480214 736290676 964632008 972439402 482772719 892089704 1035630768 528343190 151292100 752009699 237398217 985883362 630112764 115288250 1061606494 146659382 958340808 165705446 438398564 117256734 665739806 682288224 166992474 506026870 1054872841 423957599 892490546 1042225886 270382189 106787308 549005980 448169869 684674398 955411979 79224904 1030930638 144056929 1032794088 894077260 722252811 455638372 284375508 391534443 605737086 762036255 883392699 400998015 883256038 350878331 757242403 327258899 791972578 190238968 625099974 985891563 984825068 373886002 341890182 640744822 841694317 28068644 25957015 251544893 555752686 229238015 262671337 180249619 920028376 887005985 220987569 1057706097 477430439 20103879 388216613 312139359 532655084 344587895 430291134 312300624 640890025 13742110 705991631 186868986 751592938 67915086 71614585 601633840 630953528 86691720 202957271 260278353 496691775 657462976 953435552 135101077 93726171 965950077 273719082 334477849 681139991 18434089 220173899 784001101 712293867 807884038 349531718 835847848 501706400 157935836 161751357 670432221 586930028 862438372 351986686 561270406 801593869 98805535 717862590 706464829 514880827 58996630 18858842 727788994 518571459 36450334 509786750 1054564688 246196503 1044517398 342725790 4245461 758169303 1010279076 33131514 547767995 590319163 576399621 443865664 65950057 495771488 501591366 585175311 850164978 135882345 621882327 321291593 709962944 960462570 843915694 223072271 949479604 262200214 716310013 705176461 452547021 510036375 580889429 261913123 911049881 748235105 681041686 471026280 772098842 693997636 906077905 271627138 485183535 738268525 683369698 894719370 699383910 728111983 339497875 1049984746 2982587 309804559 227012316 24556895 891455279 960954250 241616941 172968495 772030591 312107998 347602653 37728013 57171821 177852937 769876357 5399429 206896496 526739418 529393334 966070929 246131421 460129321 208297582 636036558 622308912 454886763 617989227 461625709 628113342 884623567 374334334 864999317 730825877 167593920 262354777 808503552 1005502611 525921555 828014168 1041725093 353277606 218181088 360696018 864847432 46172554 633546895 881432868 303944970 786778875 747512728 647847122 674722914 392984108 980559678 113038595 729952125 290435025 306783202 774428976 331630728 990462949 75749133 265747692 345902130 1047161491 597968531 366384323 477911424 16187216 146484467 551165213 339142700 566203293 55977723 435977874 891179162 68981619 610326967 133763669 996670234 607579215 816448027 977935184 731435830 107468395 949664568 671800265 506825033 52335639 832476413 816771015 51205352 49029770 950395142 83968548 192532640 812134438 662848212 175355943 421624880 754655617 314923129 924615826 282963778 242133252 236866642 49464218 995885204 16814274 229297875 345614058 158966278 709229029 130595300 33222620 174799562 547109311 529199732 302537611 229131581 369553855 616133840 811916919 607202505 1043378588 829022205 220953736 305814168 1018220906 128266765 579193109 789254195 723930365 135720208 620478674 2870427 747790045 722483841 541310517 714779054 313029124 767820255 986442471 1063183339 947462182 743335381 312644621 685861208 522224691 939538157 697683810 477466147 895298710 287306006 321639737 117585613 982059548 568111596 391095851 670976450 1045405564 58628740 656761181 263194781 67248561 174836086 797993535 250439134 810057788 428331266 658858500 308319451 237752628 523740627 933754853 201479392 851596068 515438393 579737256 580839274 70234254 569795960 770826045 855953591 603798789 158839610 829263120 392853187 1052689066 669766662 70116411 422243568 731694534 18088614 836386834 555752172 572453454 908332026 104629162 981459010 149124528 172846132 161418547 1013597294 1058858303 550680063 592182166 294745075 179380335 875158634 413338875 214800119 696909403 542098714 254003130 769992053 902451228 942297357 998956363 507461441 132712496 119813473 390057630 601057996 992592409 131416470 327951320 392641434 160737355 510486447 329647025 919747866 353335447 674997046 605433216 696685638 545374042 346178103 142380452 777878750 39120300 561418503 994731636 156885828 721490095 66680095 240982451 1071605935 1013294289 207105758 705111285 246865555 890365188 601915043 20749452 484493447 285283614 876419749 1066851295 452945519 470672148 153557608 1018952767 593202289 113717359 723484956 17700564 146334261 977881354 642793606 736168915 243373863 7349634 286702872 1033446686 552050359 86114391 625310529 4483328 195339024 200396798 231845099 828897983 618030148 257784533 1064405059 221388131 914986435 454356159 326573055 484101047 621787164 93207763 700275027 479956575 610852739 652469181 551574575 25635537 134680585 1055640801 469624003 695651783 469762505 1033533205 293893279 477578852 990117446 275862370 1043284535 804609421 536639859 42703835 355789984 947007397 170624520 800480754 603112650 610049546 10648580 734226181 228676107 542917462 815476144 156534242 471917504 211138842 866786197 421073634 1019943587 184780777 725943533 883135016 282651203 991554097 988903137 531493471 881036111 507087825 589864735 707558166 48271715 151776091 274780154 207944656 572243971 841608792 154719355 184032975 951034069 58168460 28043776 137492316 950007393 970455038 1060906709 223629034 986162390 778529895 863452645 505351943 280974464 1040739455 425403563 567973514 645941149 297664794 142370735 541758810 43746395 788464063 322558067 616584065 185353132 613919907 802127774 519313292 865337313 129980584 702492285 499518624 674984118 1056149471 165043087 707761429 423300293 402163081 323065707 471417813 609822039 71694515 690649532 392174839 55249389 17194222 467551957 1032679841 430389861 37703466 553125844 245283264 189146864 604898600 388224957 406305322 773928087 345748848 923007209 576424547 377154829 335303299 672297222 1018004552 350520785 589451160 975888711 1063949373 815483164 889263022 670526956 93012253 405282311 54930818 296791355 236581953 152613292 877525054 1041121349 726962736 443418202 8422265 828412591 1013672693 802577469 50875561 954582048 955764813 335123705 234064236 556819916 751232592 698431935 315408387 281053949 11796454 2481806 366202100 562826041 117439855 109939412 733667442 459308002 398781707 431983577 783641007 491127184 39369732 728792308 573273453 375466142 853670603 119670370 473188060 412162025 536450799 181646170 851557364 1050982580 952054679 365462862 397412843 942821680 713243501 23583589 144677418 89190385 144177937 822746433 498712943 967708192 816107392 692383300 1030570205 336167053 269815044 113433752 731071859 443046592 209330985 322847017 458357733 609381351 606662733 304993164 853093956 942694405 81600690 9362330 545162877 753517695 407915004 58490275 311800256 568432906 1043565054 59314289 383896494 137909779 767782348 464785148 813303895 741527919 286225885 645583945 840814759 62497720 739440274 750643431 471148967 190012637 992619625 915659450 659217757 64115197 916470412 701234554 951983644 959199275 814007437 320859146 759801452 284999223 515677773 189909897 438991338 181801720 361042034 702897722 379248130 16159484 702952970 138260240 578972840 295442033 1021256476 99532632 840189764 693379281 792050774 896287759 913829277 957928754 121580460 50419000 294810322 741576134 634454795 1028191752 626691024 484187253 393243938 673463138 39282378 515177078 967784426 825199207 235058193 751394722 254111289 225038842 149885525 70981912 758284759 362986128 233609901 300270345 87001225 338846684 1047161938 247968049 870063438 730567359 410086372 312483596 987563754 952415574 425589555 422322690 128876647 975997515 369562549 907214132 901404486 879516999 274538823 349856566 978680666 480846214 994043020 537958623 989907426 842893187 697313774 333944419 243612851 312730980 440007220 737229514 203277470 322035508 1033038632 806258898 501417114 175470160 200690049 441375192 416316931 28319978 181600861 823278397 631705021 164623026 747612374 889504697 804508667 295696972 540759381 187835640 698024138 150150031 114126984 228325628 749506968 232204201 560245393 870608023 431927465 909757614 273709020 619719709 368937108 639494941 196705913 196994465 215000597 195766158 4388683 33602391 453960010 305671424 188911409 1049005637 710657004 592303560 534952069 214908047 314315955 983871130 309202584 13723053 2231936 170456294 271481474 453724192 1011776806 529194278 569055117 939351921 996149218 482150588 682567536 560118385 747731660 125158117 181431689 114956797 678469050 318534167 767042554 228439660 773818761 186353593 924681736 913746830 933865206 623693152 109746236 50297674 72303334 235272937 909833324 16072170 1010041775 701956230 690519781 76440946 985916361 720280776 732832841 124972059 53014737 270281453 634211703 676553971 329393105 1036702642 357725639 375278725 968966840 985630446 606264005 1002066327 835481156 813847555 356731917 887688471 926583197 468663834 825421298 52960737 973245535 220710900 740312637 768640412 933784119 391615053 60109352 264951301 638810896 869620019 763146286 197512418 283522054 831815861 482959441 233962520 481252881 1024721327 461023735 1014666558 568416006 49857544 551135353 342132128 230800389 62726424 1000695312 97450232 829359764 529921179 457899472 226375450 220793298 503837272 143693982 226072746 585978524 80434138 774434504 662561921 434205493 448424892 720619893 759213620 918235864 246907425 281875086 617096301 344262253 894278971 643419986 861028896 222826261 872017132 434117153 375818192 110751274 341596574 1053950998 1022402576 1018606890 85014542 316805230 576297422 443587049 637745740 593412701 490915524 220180888 977471058 996434994 968986548 171264562 87023200 103591960 343471091 889948621 993433079 348214196 814752869 671580354 882420935 247685222 216329755 861148663 23122368 278606063 758292008 319888746 678819104 820911393 842476322 55329402 587791980 562943831 1043977376 755999712 627515487 659126576 293080080 1062305203 329949688 997176759 716066480 24880515 214042299 752475701 478028657 119370556 448772309 677438985 690391320 1047063444 806180034 1062279490 716140894 509052395 714663329 358849983 855297945 1061314700 954866608 830187808 1041570869 35928139 771635806 335217803 545373949 1032387216 307067579 1046379356 688391266 650887121 574408776 456773359 247571158 228114537 518574289 1005810485 379509385 882099463 1002557655 309850229 699565174 22245035 446971906 929223744 362095547 613479532 186282579 880489150 407825606 489214872 147128144 555930144 787087363 499305347 1067280757 184080007 595436360 202364925 963782750 796694555 555897469 861445607 539804322 1063394352 501122608 494149630 908637464 700021457 326916886 703002660 775039996 993602049 841409806 37548448 250818027 181603720 752041267 1013843033 894037957 588901187 881822038 15558204 486034937 424879333 604685055 575703364 109790762 122436480 758300191 879377362 784448574 6556001 692039184 863315577 246980082 705720109 869908836 786460160 208629484 345989698 274803710 607250801 386151372 824457370 270898283 220790701 235488280 15570879 608637607 109345935 1010057366 980417487 549214011 884168633 348026172 557738005 605063036 254266771 882428053 112016544 564761329 875678988 284159239 226001806 589361630 991799838 505368797 817736538 1047522068 779375245 474826872 266853904 901891382 64681818 1003952831 250883792 742900932 956917639 819007338 571761019 822468503 203550221 797382180 997615916 114199947 976460394 44289438 942071192 714349290 1010736101 545191582 192910433 271455518 149099605 361318645 429774301 889164634 1023669994 256329942 473167622 362229360 152941496 795541542 1055021482 986734325 848721067 413243931 200972610 691564956 882315671 539106197 952074862 941363505 1015082159 1041035254 54745632 70928657 705548915 540860837 146072851 565067391 356999828 134582738 608408801 750973416 7176982 223410107 649224747 736783254 626002314 502910071 493199188 350418976 1047381142 906753836 367045805 77239210 1097579 346739227 252600523 852556090 446025695 822877826 539628593 868028799 910425262 262513924 404926124 116650486 822220963 934970665 605346978 764080767 1068475058 438937608 90147438 157493536 702238821 527905276 731787185 810767352 258368953 1067597283 357500134 3168456 623090429 28181185 254736675 444249713 963992566 165590474 501723436 69833302 708046928 380542431 368094577 10379843 408084358 330935826 571125957 698831765 791698706 464517188 786213348 978776430 3722965 852867161 876970300 932325916 502715365 1013710946 601258983 339308531 1044232828 224151229 251516559 387834333 583037299 297345996 652754815 773386192 390374925 1006440366 580191293 128757842 1017704376 412044571 822679174 432863312 684259029 72247994 1037140228 219035021 900981253 1031031529 908504092 1007823468 992233003 637340949 981423939 1054840210 111652115 656143116 914086604 307436698 638369383 258273974 826306152 388024738 292484385 966349364 465870845 815610183 172857586 624198105 943629474 552918672 772638799 272562113 30681666 451919634 600573722 811171226 950802887 135093832 848896536 958171129 766580485 822695451 730330428 323715925 766475735 585878471 1027963714 101392515 303560029 864700913 355979559 230563190 816920693 902103942 421857784 309572976 36876234 904002162 741349199 564778516 355838363 367755043 1054174188 210770714 179785163 331174331 157746047 151637780 967788203 342969241 894482574 973007499 645935830 956571325 464261733 777430665 838529871 64754392 72176625 1062615580 584713807 30793176 477700810 599617551 233897890 1038160770 902948546 827385896 345288911 902235694 565498057 694884336 252357479 1048849968 655578955 238401485 349443871 765674319 209274998 1036913783 788957981 146845887 649758841 395245877 711195353 966269357 562037898 321228435 862690927 448314311 875517154 1024864815 759608918 136753082 1018812919 55740144 796135754 757737886 657800027 811460333 538534743 981073031 198138703 432778040 953735021 253089007 857821879 1024989762 102746453 556201324 468913463 987277238 871630326 454030239 557035199 1034042143 196808076 120993734 774372487 524021199 744772980 611928951 488763223 404098976 1073210157 37788236 236120895 981653385 651042920 1022983867 703387681 20988521 45953147 377444856 816030692 858870977 863397677 191489444 998499476 959471867 613051046 39989958 285070951 1063850094 733975024 1050444482 637739539 830238607 217263411 466822454 308910479 98598683 526820404 795687447 785371772 775655118 542524362 772098914 953173717 336037258 593177283 572512083 793959242 276295274 576192944 395547022 194860514 639471315 203203382 322590299 476010881 418742395 212636073 687242645 83395646 724522962 1038528270 462804591 1018997987 456584241 319584088 122312065 825471338 51470938 998728270 446851751 853008373 284063960 783251974 501422371 22328936 278359629 332398331 483651776 474817124 363936697 437155280 137044343 105318006 1072402354 325093412 887041843 654960151 930768279 785349009 516887570 722464144 71852785 25401387 961106521 95551742 503322273 826938639 868998614 298400193 345048979 759805307 981493500 624849733 320612610 1050099803 823465147 94398418 640323884 844164438 383562602 351901744 226717684 135073039 993401996 783850492 296411801 217352186 576385450 886972557 345387296 64355966 564501113 647121636 402744881 960787729 494520735 252787961 767911959 45648606 959414202 63123028 816875254 645382180 651974887 946397626 48423904 438831319 198163261 67653496 16222160 28425777 626467463 139865301 521153747 558774305 351709689 584898548 406805720 180729577 707796403 4485827 727879713 518661417 63700410 156161147 989519387 482261988 961078962 1069221219 257263091 541325397 461195468 172109234 332170969 44782009 166267970 202273819 559315012 1008554496 387710245 545702385 480095440 1025619155 948854545 875752634 1051757553 1071332040 907314962 921801271 210851015 1040831073 792900828 692119630 949305829 213367316 727931480 428222048 156303913 414228425 963554860 481501693 634218564 252254539 1008472023 547013183 716252637 292397698 795154946 290293433 794146235 975750498 897363269 704796966 325223593 35061380 322459072 493765875 826611787 465799617 38656305 7871155 776470328 229335734 451463943 114476095 595098084 911030476 787464421 672576746 800749800 402678282 445676979 476835519 892905108 209059702 225036964 314213558 813747272 115365641 1046050013 695934079 547051552 932106866 105005794 190954910 1064926733 631754260 687622714 478292910 183966619 995921880 403907965 210693288 800987939 965105176 993145483 380933622 75696837 646093964 25487716 633954038 729335050 951188977 1035174577 126243522 480147628 744462263 519340127 809809136 690668593 622401259 730068954 588079831 775962579 634372498 941379102 906887355 476926724 368840900 655475246 466725055 637739491 781705871 594155279 114303432 18754845 869566516 419844425 1042708 55015426 490948829 494444626 236923637 977604551 97358410 62471325 736424651 10005004 158150517 956692145 958010848 589148779 328439926 721254700 638637075 1055351704 866633703 125062924 146227957 623490343 384594376 1054752443 293247541 54874771 859390340 1038257077 123737849 900906854 633875670 297435901 208720803 1070240130 796763268 58787349 375408829 341897964 579334617 365702030 518817747 860747386 546285497 594434933 250101647 118773425 1011153782 596240144 527488500 135069400 150497945 633032419 419875337 760064775 514672797 542112705 1051583348 764658875 1035888798 714927796 338773793 1011211512 817094674 298220595 60811480 880596352 411335636 657369197 520024917 773525125 782837917 280520662 426318750 184039448 472399048 69745555 906953618 776326167 940226571 361549413 931762615 545855238 564997600 849389992 1004941827 576855055 469827266 454780557 464429007 99739611 133137468 353535635 474190599 1027575344 182772663 1051099292 474694444 569889736 534908581 575830497 1066727919 818535572 329798698 222343045 1063336129 902764193 43214166 86719728 599458977 1055049809 939518501 179327669 717206361 253964745 838371565 56872279 569597191 606365014 834904012 576701517 818160721 897302280 529711308 146764905 711026206 93630195 1024419464 133338241 131626786 441003986 908366083 186385092 259561144 1003603433 79440163 171372824 548765191 452697809 90674730 857515761 1022544339 701672265 724338350 90976735 819203894 504697939 644455097 913870233 999376350 1051290722 294566670 629079482 668636340 181805669 786537498 441566672 264063140 960791212 1006296288 988839962 99135155 129724329 58526950 490039766 699508771 68160691 449250815 146716794 885131297 189037773 189692659 81463302 402770998 312214484 274504535 11474719 854234584 75937188 703999062 453217626 534112511 105328161 888080581 125567734 796832633 859878278 667950366 29138380 243063759 915737068 666587705 779386120 768918117 988932972 664578796 430566858 980630956 117731925 740564497 608489334 863293672 423611074 979439900 391747627 277174800 652271654 528785039 1030407122 828500415 840697688 711376304 582988026 75511733 489578944 596822154 164026319 550138839 57146794 26133277 665349762 484685646 443243598 170529053 3272733 105692878 489423201 313447604 617209749 746739764 52818008 949017901 484327624 547898887 789108605 104185678 887677048 151264371 394510056 857973084 161136244 581916896 1028243177 620553224 923398275 942877849 909661814 1013235085 530164275 701169088 835539222 896250440 429045937 991385140 945588833 859485949 776790779 929918769 404371516 94248063 368105620 968972652 47093462 982363951 568193928 296366152 42254872 994464153 226961434 727744622 388522251 898842038 813506868 605511022 493304063 537284713 802838653 974716052 1072681788 926142753 416714400 974504363 92196594 918741260 398254199 2517802 243540698 14471969 257781899 348482350 939799347 131456001 854354814 183664243 378870063 1047776021 888506652 866490806 160653702 222283530 505052944 325079033 228470151 114528967 678597992 10814911 133971155 719837598 455978266 774609980 211644898 50018185 920530166 878211786 712812159 784577150 623281160 613921951 599946319 970945590 851155807 584413245 67830413 533043821 959674206 296033790 954191713 288031751 23205723 1068908868 532559591 64000877 82337967 58908567 370102956 964601602 760449542 1071527662 669510456 371693328 151448594 878797705 264554935 9117699 722098320 538979100 32864546 22681065 220178162 1011648517 214486318 857409988 191438961 624104970 272202495 67156833 10833088 999814147 470407461 185208337 87843636 840881540 1060872856 797052678 333135370 260145563 622608348 677366974 1023713716 1005232270 127387696 610616000 857632968 505146344 843158876 481846681 676206736 424525907 280817413 468586141 193664106 44353288 498408057 236566086 970852313 841833190 659564901 793348151 758982100 479783780 192456687 708764604 592064672 988536356 959709360 265120179 800758111 107686188 258238369 27269136 384427463 1009035035 765175829 783374366 730014832 366303548 667408371 107702357 324260954 573556085 988937471 714962919 266834318 630292573 44112935 537337255 1203382 615801701 288990271 317120019 338210102 430490814 693231179 946309971 99944676 980601440 1069285167 785810220 322666250 807137229 836485086 396129626 707558912 54626074 691118611 43355549 530107864 741140805 976280226 421352023 1043253413 1032051817 916493832 518899397 907760008 625298795 67688232 334708890 224529419 502927928 579458712 346187366 205126732 48608946 677072794 721005909 989619582 178175006 548416241 964792575 763629909 643336018 328948852 544642785 1008661642 222423818 773219958 568003614 42408968 118047793 683130856 145110314 707555568 1007647848 452171842 662287809 246213195 892699461 697164431 33458706 836086644 769695216 132735927 335815566 131475264 4861582 754523752 982766245 581097684 148849849 570205690 465194753 443714943 426590635 541760374 251847764 199872631 876742543 399185275 567751864 22590761 891360220 989900799 855492118 576109729 155098283 365727134 236655928 154292979 664268831 1050866367 927261013 570021601 765812298 500380593 190895509 740562430 1068184179 1034797314 331789055 758118173 147586692 406628955 82704499 984192592 480698888 389317227 247508880 904902725 507780785 727315995 956774773 234641033 112860862 380059230 150580356 298527118 123435930 492603958 918827176 1053175363 128380641 318262542 312584742 1065227346 608093429 93747634 558513404 947661574 748937645 588371834 776973396 979287252 645612741 435555784 1020856726 645297232 667581852 560841070 579122648 84932257 264412960 308583753 1029704183 188959372 807884395 176005155 634593228 847522512 658767129 143754864 254041878 283808848 67963480 1044447349 643579525 575551911 304584388 303914847 668374727 291086529 77568847 150766752 804246306 395307618 819505856 851643316 1015470036 921004303 291879545 995979389 630944969 792436680 155347033 170102151 779063468 62681387 524958957 480354109 564325849 317846593 824415555 771731352 826224751 887634520 411391094 536822591 274536304 1025379742 928733859 480770987 55994151 211834313 249810502 318751687 609046605 11080815 140025348 551609084 10426285 740633067 91686685 729905808 115946175 434528838 592151683 599228769 571327770 331162724 898221784 787308533 920510814 786617018 624623721 894366011 152356833 146621234 492481363 845460384 107352837 962288054 891493093 612405107 778609664 537534836 652859887 323268658 879578099 538487541 436215500 250428004 478601948 671616302 877536983 690065715 308741398 828033186 435526575 744127078 440455523 550049112 398702103 67345398 923333280 1072742294 529865117 102232330 548638871 987793115 902092089 655040157 440086905 504604858 868421557 989448873 984506718 360356222 264509665 537574581 48667170 465169544 473993041 259277758 157177807 237904438 680257065 569208795 890947121 389165143 433356248 354545726 340349470 249334680 757050469 1072409099 783961513 441131489 190589809 369838610 484486783 387857876 856098190 1049895662 410975758 741729069 74650112 807425760 154138570 929459806 246338447 90721076 434386907 286366232 834786919 550979511 117982485 274451923 350107501 1067529600 30277962 289662639 882816713 382815372 348238407 732363123 520289802 85263816 811747119 1015759946 311707905 950168152 5713100 692565120 954253827 991854004 826918899 267992031 230403881 157081802 1019906408 1013404581 654859368 824876505 772673611 929614113 478119261 54831641 279958142 249710701 23888806 292559761 148533872 889669130 535558558 849669356 69598310 76762039 221323277 854972893 86709620 866396924 896770524 807581003 702871438 263861479 632383121 1013654849 703541995 719201374 411479576 552576836 816258807 127734482 308041620 206392841 433323325 999247765 643114769 164095559 717604976 258292071 643624526 865330283 690336199 777056846 1014734920 40138140 1071483160 913543979 1048584361 124117123 164642560 653650037 883417833 223597742 824550048 823094739 367307686 486442080 763715827 421899473 924771394 210114612 1738637 732294433 462142336 471593145 1033672022 451032257 207963933 787365461 29092222 532992319 635426343 950883095 41982524 219818140 913989806 207360063 98166912 871201626 14272129 242979877 840055409 763031161 375074965 194240903 632580142 704376845 518443153 975409261 643737587 45550619 625042013 439187834 713651267 574654943 581831964 886303923 708587905 174511767 980968239 456630540 506051163 202134074 818206383 758654269 16149445 1002080336 823784739 115925138 988366998 861611069 878262450 1068591505 650894774 587214604 389514734 791275522 258915416 555975254 654729087 276697681 598468236 782803080 258220653 75442264 488898152 505496591 1038340005 396459528 581675622 2893703 820987706 67234067 338570738 98702414 371039745 28146943 507485029 495844016 549063288 781973463 77115654 1009208103 712316125 645860746 742538453 15946904 851261797 1004190018 1002702852 797498817 195587335 299899034 259762730 440872620 444139282 20318622 704138949 591530974 622497552 794743060 328559773 797346100 1047519944 213182680 927701864 610697707 425065881 730182610 596576240 226847351 489257571 463027819 413803585 693496237 1014726173 529987837 608832365 365675261 222394882 903016481 337580815 363905338 713474641 23442679 264823115 518354015 719925863 493150107 640423249 775856938 21155800 1065723019 774299068 744453117 356645932 243990693 950175380 965343722 533777467 8071561 389731203 644779445 1014071235 360198347 1010982230 415986775 613137793 188128158 1041579982 51584010 197268713 231684746 208027099 183303620 206568182 559361874 536451316 102080322 787655837 1013498759 1022714151 654696094 67706764 676289545 912319517 80201761 417035354 106668707 1017358603 1070448200 81216451 757487501 1049763684 959615762 905607611 773522418 722318732 491099478 801754596 955294042 1032692381 158202025 835130026 775097585 678419234 586040868 279076966 314582273 854478058 632401035 852860788 216579444 678812 35633387 420055961 315170565 908648334 284016970 648262423 998105237 880521310 586780042 956273873 445709303 1056360374 962749621 54375512 1017074041 573922616 40516767 467636328 612846165 11627504 625133878 842284537 446426016 130313521 203456737 709887008 409711359 85641144 70058687 778072140 320913393 307841076 666113052 135626273 414475809 739046110 939966446 397158007 213631725 913976220 525584684 109708329 556100282 193459830 407862887 978706385 662210901 479101621 811310460 190166178 274349413 997215907 426524880 694042108 5192922 268093979 496888963 150554587 131656425 144932958 389057329 595860827 376070978 222490057 618231118 225304799 460727110 399216968 401399514 486220617 902970551 58356199 292630690 957958290 283967419 1025145028 140195449 312981157 53133701 910877837 731914138 647119226 138852602 276810100 994139930 521231093 518706081 1002067034 349941301 702002310 573206343 500249548 136099508 506559355 177894612 327458437 326816739 433040518 64739141 219438845 85286671 939970796 833503192 133939152 871694266 537262646 25772959 413270238 708619583 441847927 453230431 498412692 819107388 585524083 67299858 409518200 189480181 817764232 905033804 913493177 25496147 596012999 17368367 257816546 823962005 507761014 712547102 872947904 100139656 717558925 36594484 98194754 567913760 891436495 761696780 215410431 775289153 682305366 811667618 74424774 297330689 33851330 181190006 580825994 411262695 997395205 341899108 769588934 102397580 17058081 163769995 1048637216 948156624 281200356 711768049 47309839 671822640 238031412 526978747 374489481 121720807 1046779840 495040405 983181293 426829778 445100859 803960897 39682518 880675319 384511557 481177250 905000050 69317178 608746716 963329074 49095979 403655374 270358877 758886105 206239766 975192822 422945526 15807287 187923348 561133378 372465917 732152196 760972 673797317 199393365 444050658 634837470 60452756 616853120 159408406 238085833 636830389 594575836 596927757 348952102 767090621 376895514 487669454 592337312 1070899735 499015783 408280412 420542787 104388397 595032516 775812014 990731798 763628316 246766363 183735880 622609662 611761556 192595364 571527496 97684728 643797677 632562699 705935180 56064418 54705324 643776147 402221288 604378707 648940181 746822532 686116365 1018868908 874562508 912631009 506142539 35934897 57416125 65995753 358443701 140207753 399818223 256518176 218426747 511435001 295841164 1058709696 780899545 27735068 36495261 195870375 530106038 378598146 848662649 1062565094 450862471 650915184 291116159 393280128 861137986 371422456 144159730 698680929 101215951 437213330 514603877 172535759 221863536 804454116 867284147 433191902 590272739 889943197 678796113 143488491 873811109 97970292 921917871 76549786 989883185 102118138 421969200 1025843293 686423322 1066244957 1017223220 795198558 278580363 223875342 538189100 1007696263 583531739 918631421 17434536 163878109 849877549 887538265 906930866 957770617 11681694 565743965 149756989 1001740854 574187732 460163558 269825969 281598582 303787652 1016036946 473147120 403782108 150017737 718605553 392106465 177794413 151840828 479918232 310002923 222197355 576986263 756002951 913170319 168686169 804884123 1051224588 1051113615 125370615 144530012 32633645 722732015 296385324 617576967 110759633 297400535 39056413 962310688 254910861 473856207 111674914 285423480 285197849 827636390 1015561907 548387170 312507007 31298813 1040335046 10454990 398664189 701456112 891051988 837747671 318068370 263109608 473259931 673632048 347289966 238145280 266255138 690853475 961587258 597288302 779976451 485437955 798698842 13214237 487936147 296647051 543666298 243224955 168709293 182136431 871275891 431772343 9420905 882455439 674137531 786422889 874430488 329696602 401944986 362062211 891579427 96974191 780161947 346051952 1006236975 400215236 214864766 756199439 981250699 923602723 1046689746 818862375 908314668 231073594 341850550 3917023 773838771 768792935 543225824 315860441 552363932 355077950 878709052 339627543 795433318 537840183 57713599 450034401 3436883 416950681 800085519 83175111 288180615 163410852 938432799 157261900 58674221 1026415738 755797701 973798305 796190756 909449374 514390154 288294260 591983573 307277432 774338884 358955054 789705364 384030030 765014546 82728432 809495497 218335341 782952247 890560382 514591535 562912588 1070071803 198040719 392837280 512652582 827508338 541193714 777233566 781938641 507244292 129043073 465614517 630832699 622497513 63510597 198331907 891389833 246753786 34107794 1045257653 735414807 98845894 158935186 891063164 859948186 344781536 627264993 632955485 793309642 136523351 48255474 50729017 304124933 714846444 486061861 295131255 641557332 482876491 751899306 402606921 30942116 1050517516 271248587 557255281 535770488 957847194 603357842 316306102 935258894 703721876 943564408 389214886 713869283 785181388 728478317 1051222565 204797943 316090651 41072506 223153129 1021394097 431886293 484434029 412879500 869378041 142386405 600487661 261741917 420617260 889184653 768232751 1030072131 122828824 918109109 527968827 198441057 379770210 706167196 759479591 164571347 897510664 912697634 852850351 25430183 977143829 267155332 292547249 218063892 924514504 108685421 673740184 9510941 712191933 318789164 426149782 570507114 729006994 855309579 260330239 202870585 441862920 304540 971628599 127614127 482948089 492839137 42566999 601888824 27616722 1039005176 564219931 50879295 607217038 705413823 556893263 388594100 569459761 750199508 926041318 336267895 929818498 344056971 285482300 651036434 627765251 84138197 735845299 430080193 917795239 430621037 760319042 881681873 803811369 931387501 612523067 405460601 367235398 767246271 969816963 590867162 880254279 999808755 253140495 109383220 228112501 316958922 848042484 1028637112 996743283 340200408 946268485 58201320 705224817 766025146 643934075 307846219 150900702 38621085 719613617 717566594 913996293 978270628 682491402 1016925900 519411805 344227330 416896377 217340820 764951542 813061610 833028888 579762750 575958051 963002200 24729584 612067744 86426282 315861634 460626894 937207549 1015431971 975392783 164504373 352855326 568759816 801441846 465128055 343775127 807726721 358552306 39746863 408916996 177487219 413040583 38465835 883879398 728598509 968105006 741478443 24242846 122832591 593457231 1067929130 710064807 715947137 931651321 635846705 400370037 718754865 31878862 94805432 475423814 430960742 437646882 906013471 93570358 881316285 708142402 760759572 1067770921 956424696 263954912 102204927 115880454 506365301 51880850 1010385711 552258894 856211073 532508825 45206596 432307905 217485008 468178156 170745480 81254649 393178988 94510674 626695668 191003009 392774277 665089468 652328701 474464861 976913792 275506436 767645083 976102165 45874221 434532843 839250536 942971610 214251711 771615254 518201010 851987289 530341220 728376205 792252478 1027500562 716830311 460819187 477038879 239688366 163043257 869075908 962689969 544887227 219942969 537811495 980807289 416277919 25637108 1063358550 367428914 21361476 5861282 73417236 876157311 1047826582 38062238 991487997 511205899 448257502 267711437 622689990 898911371 112650173 865575994 858504753 461192751 851125343 983578153 874800382 537768123 262111042 1023696157 410415654 907676265 368952618 948059720 689730033 612450102 716836092 16999051 661343223 478779153 958480345 918232687 900020650 418349516 1060260262 278105048 649826029 672558384 545915827 481146016 133935607 33326119 301283478 388416146 417337587 705019109 234667806 707165202 1035825926 184739951 787103223 940558362 1002380705 725948006 748345811 589096068 822751282 852088208 681988031 203846792 651302559 2008992 349362289 938902719 363991526 403210690 822973678 774419023 796710380 943515220 306996193 404837396 929075728 864035790 281905879 945377107 947848975 280049016 184231952 274289798 741595555 367515950 367902974 193772740 314877068 958819975 616628917 55983572 941034202 765162828 996161541 105280315 1067584173 399041727 920963100 616867845 921342392 586330371 1050876750 852893769 548097247 668918361 541937243 109952161 706450305 729080818 1032016663 561725160 963223817 51711845 886640954 808863731 839928630 423185219 130702484 344997286 511442928 564550494 1022659549 1015305886 946624004 290445237 392645463 1005868864 65554240 712941484 833504572 162405609 221631955 792833897 577077359 932950714 811230302 151766494 1040525899 1063740133 819082064 37837690 302989601 700235819 479885710 539796982 978709827 189193261 110235900 664659123 184657943 462875065 428061240 368286469 887534367 723693041 131512470 232233095 621899443 763434802 567387047 588747779 899469849 539517372 716094022 688516538 813609914 772424806 605294764 383134057 615699849 876688181 858441491 136605165 259653106 918473977 663519486 979844299 42524321 642047578 499697708 170013481 45209835 637823034 250092772 294149414 135518843 554769379 323272363 101079202 719125450 932127092 773382586 620587260 850344004 359418115 565380853 372445969 1048139460 598772668 970002539 363394037 886039799 471807171 252470495 758079466 773918583 928247407 220428504 475299136 449955806 1070343773 581707786 989241341 876175322 845973611 490858716 939483027 970003427 686759078 765440368 74338674 681325313 410469947 165714149 739946605 422878343 336290371 920055940 486161147 705532274 846198311 656245966 98332689 482825452 515776565 546881280 415700886 371197925 1071207871 315771855 1062842903 206594579 927764609 935429404 595103803 180287797 288854424 737009857 858522872 126305313 24253508 537166055 766875568 436748652 743936696 894434064 238992238 911704984 57700053 852069314 790112828 943788295 102998638 393569065 564916059 478761296 961147490 642416307 508300600 83133424 602962130 436044721 84052213 606515132 311425892 235319218 674334854 123118828 925433282 780346383 753045858 521008292 107894801 479932397 173858565 794081938 560201680 517186137 964534132 320690127 556389394 1023418102 471926186 842553539 36601452 41763889 175918808 731391704 346996830 94070488 793329562 247023842 928980026 223495120 815045697 126083296 237628063 249072890 129774873 196412022 627128843 987407477 864827349 603313058 486384640 953692214 560866720 875486256 1043232759 156983046 1048634272 109664973 397571608 518185784 94466315 656521003 349315668 528897137 922919807 551287920 418380879 874258730 599135307 253196318 671914454 449434896 445443591 320926776 316787197 28361735 361235636 812169871 111950529 674873924 748538336 169855377 688374561 763557658 789738756 501200687 201350232 202416380 622088038 256595743 399072009 837449608 516744739 74903748 448254724 673383733 748255184 788183052 50129008 158469355 226533587 6327670 98599733 626617876 501244617 181005797 699470187 730571097 854682151 402116678 275560146 743964463 133007239 702027318 170560223 408265449 13262138 145118068 417853535 518027093 846804018 38240206 109017520 450880748 554240053 1070523308 647146732 67583931 846116144 176480566 808355517 52905776 495149285 961375796 667242670 590091062 938993430 939083594 797680912 804626596 789946433 563955347 957850030 957155427 278879789 843957214 41620765 807350478 369201610 276036671 1028157541 869975466 667888865 199838731 182644639 677353386 588518245 334344727 698571196 757837607 604935473 629534804 969438081 690698990 129824091 913239654 745440616 93023950 730981914 327130955 268571359 974592389 332220702 891835763 676676109 192553063 666207589 414229838 479877884 313345376 293672994 223352636 224555415 710576146 542705004 788062020 727287269 887121767 557012594 953310258 277076431 63417022 402228847 705493456 824330514 597785765 336110689 439918437 560208913 536582152 337882730 239426028 57440350 690840669 198719755 349565787 395363055 475412828 512045835 801027318 202981526 31646907 269039028 678439473 46653414 46999431 65870398 384556462 357083093 336211020 252660965 465479113 15711249 972759404 16832126 429625087 413107656 1020312784 8249749 694457 222948216 677207927 363707059 256652009 116073506 55469560 584165658 604807871 696486985 904364226 641425289 113775208 601093806 429567032 175712656 829314366 1020038209 804023337 160721303 279424097 136359766 223799449 334442983 979123189 678586897 704533285 615951230 787527522 188751550 280796621 344156931 714176096 866174015 1017300187 855478390 636339189 914369335 42560519 683479395 649098177 508439822 506780487 262059354 842807754 173744021 388042274 1027529049 28846522 79095455 769451362 399570921 268583573 479691572 20438476 133874354 42571451 547660727 854756478 458838286 545562196 500616731 1055102851 587767735 279063900 534326434 205587870 805662545 1045647701 767661187 304181299 265096506 846517748 616584382 213169658 729263354 548124638 346972708 731638110 456678182 163386736 1036061347 314741792 838978418 924790412 228298261 790802847 598697070 194986410 898215848 317584904 1040058704 451302985 349796052 905825946 924016042 1027368477 958306040 332113299 696355818 570274295 6712726 273290390 136708595 627529997 264495856 259046705 9355939 290824299 844059229 540802485 228648637 943953414 96199769 899372228 405158538 918642626 516376361 6999014 445591344 116814602 628401629 620618220 105477437 565366473 737700148 956474363 574919120 152152218 191103447 1058175524 507794220 693738657 22786365 746769137 608449314 1036682951 328176967 909433267 825916275 954062308 96240045 1034654709 914109914 431908241 223069668 402461133 284832773 430430268 196630395 949750811 894716372 898804511 755441635 823183171 156628097 233069193 221388746 268930600 517499306 799334509 833661916 342196358 33669783 538321556 745821138 941227107 987748708 829442637 194640741 715541708 96178415 206218717 106843160 115092577 509239521 1019080488 1014784675 303146902 604904219 787188808 90544875 483150140 444067699 637053713 239701512 707617500 31518324 519173122 39231698 1035034748 1033690111 863615508 390511705 614873801 467708097 91965863 618829467 30503110 974988958 359042332 76429598 188355438 482780036 226746997 908532598 779181763 106307004 234010910 689661469 758727168 829409139 639143915 1049165811 454711850 853510755 470732437 994783442 173371092 368711560 56551949 469234896 514331091 1005732475 874496255 892538920 756102250 525450477 389629196 894309938 1050042016 964863001 405067693 213946641 741253376 758028739 600485144 1030290032 1061657411 9889972 168435665 326326297 679159504 913452173 872398880 74236160 1013740669 160273800 555790663 309982471 243543812 304715482 684653779 278869522 880336830 146239430 469796242 373567918 651583823 614922564 1053080917 432906735 496825056 426122652 343042821 723105077 279744219 773393484 632066648 159928362 879135857 506564616 784670674 609262 277599130 751352687 383643449 629535208 382918993 853327739 1026911218 51908971 252454049 636007442 761315448 274365799 518911208 694155945 154381385 577868078 663860352 140652161 79685330 833683908 335869679 294241313 1002099341 940622153 118160183 943000852 484642020 742852218 1065482871 295880634 830740213 115285123 912304139 16272690 314683606 456299393 647403223 844589007 140245480 460771703 441297654 1033634327 510464144 602880373 328373064 1041925610 260416296 327300395 426884771 763276042 1001956957 394454445 277858695 703659051 24986938 601271644 609861363 342470828 106960184 725289149 418829311 953057058 606444808 764490341 100069792 478635394 488568247 550306193 308057574 910713770 677059814 493203571 308210272 990887887 638771514 1023279845 314832665 858775517 652002126 411117989 903669425 1060076144 427650689 558452554 353626889 717648028 953011462 409619231 348709872 205061157 441058011 1022295268 475445675 824307887 13959059 207253060 1016810641 458956027 438016697 1036333383 518988466 1036397257 969067615 966686566 658108516 771825467 278784475 810053396 148871359 47979730 770740332 382250218 124087285 851370829 972136938 470556774 15348114 695689751 229895730 681631271 1027401572 83783703 426309811 107104623 330344250 234015447 871723589 932706788 390176335 385386177 735068667 292599047 83120224 519347379 351017455 326888228 1050003476 42959391 361323359 98392695 731741008 833814049 704390798 717220873 345658187 901803356 84262279 434714705 279880547 635842806 258374249 24304025 291787571 517761935 7344075 196355970 373172542 350147204 558091545 40796660 330779126 1053508976 535222888 721775179 575879557 893666593 214125562 392962420 730471565 345241181 643047770 173280406 412046456 93599760 852895956 502685406 413909455 486718575 548387237 843596284 975478931 508248161 163866610 914880860 926171019 15741579 428274778 721682654 170825584 62665674 109928499 39581173 443652943 700349268 784539093 282923180 644300099 302228231 572240490 962950760 589475584 559862259 152176509 27477216 542099553 1011564494 718244122 680664936 67531465 138642662 994817682 151008769 434668255 114660845 275514163 479378013 495600286 453527632 732653420 614351324 1055757768 997572681 482226771 632510151 927198428 869151339 430439460 271108143 207305476 623884826 251168065 659101962 1049092179 754615539 238945128 375395014 588880138 689390537 97131056 429563411 640839172 988429602 114126678 992307618 644870249 857852538 837268487 695604620 735630384 1029140397 355074652 916748162 701009563 41359168 755171462 166713392 808052957 893569772 869246940 757247255 13310428 94730791 317221168 272592175 424559148 717933978 904586499 371822745 195614623 776295849 48840365 667477440 5562802 692989120 1067578498 110544262 604625397 89920752 586359113 192630300 624576594 324597881 693581847 831201989 1060450403 597734102 512975820 221571673 453010412 750770148 462679002 703328519 1001953739 654741885 556903378 614551381 492132475 596779735 608793479 597300372 207301659 748745602 695539922 866074412 633126822 7029724 325375447 648218641 357082500 464665459 589689462 1041100697 162103469 1012044986 724267842 164040181 996077853 101707293 536547655 1045883872 634828835 290223337 711006920 675443644 853728283 572850675 858624824 364449889 310557021 803426363 657565767 554905261 723615482 436292968 57388133 246319001 572046771 586316422 846381237 649815045 1028993894 1002343576 248510707 939315868 636450892 447454346 1023855081 245572417 786267432 419558052 661960463 994451351 79524890 691312442 428448749 37022711 403088331 765696665 532431522 605824437 1026358790 151685483 885880454 1054935558 257518255 372450899 613781404 407119133 761944286 343282346 928295676 483964861 98107798 173556099 676155214 867198043 648300589 793169532 834549199 435419301 46863355 1046587165 354872399 348229688 425965725 527651200 612543254 722554271 562191396 742966663 367902703 966440544 99538181 482741289 803345604 247859723 951653244 973549492 361628139 96148509 739478591 916535985 618389197 368286027 497922944 678970286 305632060 285871947 703688771 871366402 741506340 142195253 363748420 214364288 382792291 594044980 833753841 850399804 602936164 813002211 895361368 938659887 735694568 883116731 106673234 200276717 321750029 365942135 746134316 279621790 886153013 288978198 84194086 329857508 644974121 823067282 905740745 1018444009 188382682 854506791 421745239 932394660 447386130 561938499 850988137 650818031 306950676 988419113 236261332 782821378 920332218 80876568 645027259 357646899 924922221 716653563 882792198 190096503 244111950 932817867 514871977 412824200 369667367 284150852 307761979 173134221 169394685 358311234 680924246 739402920 523321079 405755872 1042402687 12917357 531711674 45862629 770869798 1020873327 748685046 172074121 276530063 650124381 198420264 1019797325 952362391 687972581 361392895 43745557 174949691 676569941 513095380 850182651 174948577 866533983 433061982 667703999 813302907 864747695 1412013 1062430845 123751771 830050107 782940330 438465212 1004238139 44887284 545308403 991248525 375305332 477809070 620760397 940919110 249981086 710066164 543004180 622508394 1001713039 636158732 28095173 589587870 176875500 10147533 819537916 768975586 926728471 262717452 595775502 36272686 105284453 785365895 266636457 677204105 944004930 118009801 503724983 953503624 656160044 898331760 234362741 1028146047 504169747 201011731 71848018 528385159 798719268 178983789 12492457 1017116522 680435909 736301034 999435302 66572430 609544711 646390680 636700780 523849676 888401865 796813141 419612916 62442347 93857050 925748304 784638955 255819470 446554037 313873421 62359316 129225647 239869327 843715775 263382761 551660627 295039318 1071985069 340938509 529690108 589293519 570298108 976865816 737615386 657646213 714539946 876373797 221198836 568698814 488308652 1003248324 723175584 39734980 1016868443 590874368 90826068 193363430 21970901 160565029 417198336 912914170 12302560 162396478 361386656 333443000 468409749 770326439 149203677 9120026 858326353 823439315 954611469 976646188 755294071 982042484 383158467 478250446 886088460 752401030 631932022 968174719 370360009 277745457 760508621 1028174826 554618142 528403953 39221275 1038998626 908755463 830844726 813587796 127990807 644210239 293002236 917451505 1058666416 744131669 990287986 375170867 911402096 1058172814 225147816 129262098 678406534 515691766 686745121 596898958 307538532 1055186706 1010771797 783845275 64579467 742381007 1007197300 263588258 697962377 295696793 326719328 363922423 702705208 171288301 898723306 712074098 427550111 285744250 688450934 135984272 720644033 804243576 931538842 456419190 325446047 897719292 726676783 857902896 777567921 1071751495 160447409 548004761 1071431542 26815738 725416501 409686207 853633366 631193474 978579401 1059379803 235807883 919184253 35222139 652245891 767409042 164805339 109268254 451934348 69430061 272226333 876265965 128532688 181095418 768559415 624278809 913374431 813862789 193334777 323316074 654610714 242829096 1007921573 703693273 711480335 517151085 799768462 846117638 78183614 646505376 539834354 323298269 543381495 356908657 970637764 147842522 164108737 428082833 300319532 159204136 517332788 73131253 384358695 783803798 1038960719 342313553 817015728 220869295 746733449 483114015 118259384 147394294 1029340609 279367738 227759522 994345792 513111622 257222114 179926322 348101732 427632138 848573511 393744964 223092495 307943537 733876211 580314945 376839770 435144732 251614902 1071303869 534415085 278662255 327187059 372534517 940717399 615808982 792794823 988327824 674063894 339987520 79680091 26238583 687223891 151910581 179960839 971477082 796467377 253934782 19182443 153639238 698628820 931654608 362494024 151654249 1072207486 570313751 73890283 213054168 602362652 431754343 627877314 1014240867 940804742 377091386 238292828 62332658 827859056 122882225 113934046 23148020 605756420 492531223 487677619 560749132 163758762 1053572464 762732220 252407646 964514272 562086711 255231925 832718621 628248023 875916871 1013635614 612247850 118033504 235712713 397465766 74521729 369583414 410331029 236016645 56729606 565630236 389674660 118675891 926435049 176877727 1058422097 965619229 514371619 170395758 759174166 614473835 1035022341 364690461 291730390 658940787 38760197 1061913028 1011388403 622725485 383796698 71273605 854345465 376700351 87423580 799669451 514405569 780685989 13766296 669180583 413250644 204560173 1007084377 869838424 352041820 899971710 206713964 1025294432 629645159 779700382 278364117 320646946 669262425 817355258 660671194 666417712 26302564 445516919 18355878 700579128 476033313 818065456 386523029 1047275609 210588561 95978203 338666442 930772638 974485980 161512772 1048411512 194167484 984984649 474158608 208358995 420449447 857405249 380536700 960778 12113264 86272645 253890342 545009669 186222587 873406357 702015690 599486670 203559066 582540379 1033517953 567389528 800349990 653328816 689366857 236785290 974150470 610757444 561376404 910816361 685440994 197032902 628944261 232540702 62017958 146598339 455351315 272921105 984899176 196986290 73338804 292691501 680752431 743722391 292686086 1009143442 93302562 452926225 946418235 14351941 675302804 170002473 853818226 540275570 320690832 1042550388 1042417140 128140560 113682729 585240146 925874024 1040645050 333379473 831196037 502578489 882219623 636320238 308692800 849935733 755535329 30398788 531157625 63826025 956521614 187426526 730602444 8017008 427913934 367395689 767559507 37525735 162308769 749697451 737584682 560056334 39723015 479430918 70121987 96747166 312077479 610548313 286647003 1004912951 1053982635 752686116 657804576 204210833 927652551 868010411 537921440 886312008 219518213 804576117 884336003 207004052 764539817 306452128 540761467 176036209 1011136954 66850473 556531617 277552837 922655180 943611369 659126900 865427743 748640719 646570305 532192373 721973291 563926758 373146594 743728311 352420488 408477497 63098829 687629541 97753437 161682189 828079608 107839355 665794931 663981626 41320312 932931391 707246541 928831791 165521344 688752383 479367847 652256512 91884278 1017585566 613422112 838853755 472728049 391226540 473301190 736234189 294434267 445963073 361413700 390616549 98760889 808062847 483694270 151913102 151521823 341884923 838834642 105685658 1011507805 524030635 1022204398 681188383 99185231 491974848 1046044851 871316661 278750646 846588506 155274558 84860799 523706649 386489543 340323825 543427517 520535579 1065461456 206265534 934131219 508810816 1019604712 72934498 186332762 1008807237 556472429 380979279 465880887 384173253 1007407952 88869966 1020679973 971833707 1005023428 593558944 884280598 560088816 684800358 803575106 901680545 587526746 674730106 116988101 813169820 251168222 1066652244 952755381 822759367 53123109 1027871264 1062133343 404619828 868357256 762980225 894480242 209378249 424954598 244219642 711508723 9463583 573730139 58990763 195339670 955868337 1025205571 917468463 724688079 532018953 538798286 686217960 239882952 596081307 552304388 119851246 1004219183 520219396 460448506 887774921 595814371 921242018 84499488 468039988 808427885 260200374 35805339 501896604 29668799 202999421 947337531 258244691 649078254 979050799 922704614 112911830 135141520 879379690 633863899 1000991649 348458696 801745051 798012190 803008652 274569070 83001036 325492847 694248828 746825812 774337351 27271699 920156336 972835413 822222884 920246568 339076470 365438507 703032103 525018940 523481484 545877545 595112128 126563 49172210 927665377 1053497885 466445663 992983344 428592141 55391863 827644958 595040760 863420254 654686007 667086175 107725172 1006309076 524264187 552298992 399448288 1062602343 503598893 498550545 512854658 911325229 748349260 736993914 729128843 815270497 226938510 791761387 599577922 15564217 401776210 279001891 679495827 673426799 654311794 759655850 456950458 864584581 755305084 230093964 900236342 486993463 143992858 381887589 136815760 802771553 165255321 334610029 947412814 208575875 593266895 591155419 417469405 688894806 54552355 322175521 851566724 791901230 301010282 742409853 579010794 662281313 4666730 667868411 1024217933 687955828 829848188 405197195 18093345 787344731 501292174 898267698 1050568878 67077107 710932368 636038177 456364353 765156788 210359677 343748200 1040602286 410739010 801102467 566805056 856736011 492215843 946660276 32955135 767963561 925799451 548519759 389863010 100741092 101359110 16311108 203022207 152348474 333855341 905481924 626403072 578488741 182003822 372876730 1017860934 108366478 1028124374 124051961 4583776 328658042 699779891 944441976 707917410 730201160 516180159 338735142 994000463 190900547 525583733 241694400 194191084 369242657 574307416 258145303 790491202 50168817 799390237 838983340 633662369 430434979 471341611 989128621 30839693 714956164 659967085 568933865 1004801399 144892324 677558101 78401409 292994747 481747557 28743944 168700534 734832369 79020851 88553183 1047635867 542375050 528710253 300873965 552722546 1046553973 785881934 303058998 896546012 1064426932 190361352 27436546 866200193 377975473 97839285 205201065 521433390 58564661 149405568 992222476 19097712 232798495 528945125 409174773 99324607 679046594 1036943484 236365089 257030051 245213372 815226125 86167532 660970291 206487203 861625503 869663704 756235156 1067802817 291077917 459170167 882594045 922555970 439746938 518031234 630808632 68386168 516059816 496675761 408192499 162781634 997602377 243019929 661206147 991434421 640236912 617973700 163968851 658698600 805129007 956862917 788342160 230634830 150235255 334171013 653543751 286695728 1046061436 993815937 27197119 365055493 240232266 870290262 301015933 587200240 909189294 885701554 896473374 1036822876 574399855 469560388 444458224 1067207780 439057203 287573997 816964519 972629148 88214361 308660238 51931912 1011178639 476420169 79829360 262423850 355403711 160721562 584258567 414853670 799944428 904113315 165532259 912210297 456061355 886024326 558369477 47342148 96101706 614836244 202933926 886589442 710544073 417062690 914821065 867086705 687055967 706763860 3534052 852892675 670282234 673839101 718912229 711223477 57461822 808696134 329919341 235910945 290880555 184077769 390086439 654259695 584489552 309793778 504675169 237940404 538347316 3158011 107502692 517419905 616140479 834880201 417786860 183826862 1044880273 91067371 635064539 1006978651 78498710 18551187 789171525 3762807 324918278 451558667 755706479 897174903 322145959 797802392 868498581 534844180 384881250 553839299 9310934 302717989 640805908 106559051 574529767 86351078 610370281 20284937 829848764 664337505 702381966 893820728 654167602 982219756 2321535 194331043 981875025 778457954 481312675 784170946 119442380 212198291 1062229949 6836186 902351684 734055018 286141497 230375819 1298559 140412373 919488837 389266810 365033288 887333172 763596837 645271367 141173329 259108898 807950993 631653224 1008858071 942231120 749895726 323595327 49026290 721516984 993010516 433872806 492190246 1007983977 709893991 346280808 233528954 535096474 99115363 184285559 283437116 199068686 747464601 91569380 343246401 884901176 196834490 600949959 949783647 337301214 661306640 965170610 318886419 685427773 252667338 1046453566 756633624 336307135 169565169 577051402 1433805 165981684 928120329 634369924 1072713496 1047427067 263221211 600558357 845009173 145356144 724073027 525260163 500106692 758860642 512645161 891088598 685780401 724713308 20125238 376550921 329698547 978668845 76483224 797242373 981088951 427247335 808363006 620571037 26756837 281821074 935896434 185767721 617178814 277080279 18657589 60076520 416077322 303499907 827966061 480182438 1003041331 98506475 41038099 628084598 550119731 908677848 580340683 213272939 652689611 663457160 295448824 521004179 592400771 364152263 470837530 144635607 872486466 889050072 218639178 458832486 1067493936 328740295 104749606 823919334 759204679 412564786 703058081 819583251 81688837 3224584 189369991 928075294 14354754 826083917 134066679 1062951405 608379037 346000356 612988356 41997889 808634562 21208778 107926600 952611527 189963938 28420710 256980772 105028439 461835849 1009870014 759533018 1011106121 608474226 364911762 571002395 398703287 927341437 308543239 80372033 764440855 472510256 873232346 708240368 651955309 60669229 967417204 366829685 1008717609 808212983 495182218 636190269 768220096 1019018538 813830407 416846564 596760724 481828296 1036198976 468208828 610619162 338010797 421202950 240253483 15751040 589075926 291635123 225890912 619110215 85738294 464092611 170103664 596236672 956831087 32927573 916295607 815690155 150651830 390235520 352860541 612636210 234674072 683072068 817982575 195146045 470593302 445463548 817122391 498169019 720531347 320390294 1016130284 755541307 306299245 995352820 448364813 118175812 216223978 213899464 252807209 692946669 252923990 307511091 758284622 648602008 576245192 805719604 260529949 69012164 916897216 398991962 947986565 219996810 855024254 823964480 339476147 561177355 630126818 63553491 148100479 463462616 705984650 689578251 8931283 538413952 785830334 85323362 192854375 866515585 585738100 485014421 550536031 442530280 329802637 19219094 160526856 243148296 536384452 381539076 109072522 1054428436 87168780 323530656 945365410 189765712 669179312 556597307 45397621 771468988 140438865 1002603947 39974644 373454271 379724113 82966502 992521925 665368553 581301145 360431713 1014625320 173961882 205075379 70722905 196527851 624603326 629537110 893977454 12725521 963879470 801896058 397722671 291206224 769892043 399345651 952924729 578118919 1037492297 381769061 129961827 106456484 593923705 503059564 801736267 1069355306 175905981 736693135 415378108 555007565 506399908 357673468 729206385 619022957 768498585 490207438 398236477 443667833 315110758 481616662 1067910572 619927064 179201534 428395987 178909604 1055092998 613698976 537761618 962898208 51695839 288823181 476521730 226927599 588966781 640849484 903766432 496833020 811161099 251740257 826509427 703157240 907873519 632737518 91047455 113230897 728345988 423657979 256340507 1008788138 861392923 661565658 689519936 273267697 965986591 556053600 288132130 704180668 714504512 193404539 834022034 901377055 994098736 129489434 316896867 257214011 732641174 803691145 237650308 763093598 611323800 116353759 35493919 526332373 988241087 293794662 379109239 466392475 40277720 786121112 889596994 346638188 16271072 930894519 1014309536 838306319 173628198 718390772 384233714 16943402 626832337 811223285 813219330 947587586 209159611 723325575 446980916 93139877 247017712 902471260 419232314 781044888 330766720 293889086 433511583 134982104 236052555 625742073 355005248 1071708344 37701445 67955302 797667746 447000220 58036540 641767036 1047501079 142396215 286712591 927604310 711121990 702019231 377843582 163104033 673958350 278266401 75387457 57558568 786050897 261684793 428428278 567873883 10465880 133067166 863610412 975838731 852183381 505518142 1009981210 879147400 895488897 248811976 923116556 401354882 833270365 1025983625 636377193 33769088 437936393 917384485 762634732 391691217 611472011 546409019 830989463 793949665 284185724 269609868 761042601 947165197 31051340 607560142 1005345707 797142038 461049295 141741625 212108462 621297520 809851413 819532072 816418779 709208108 752456279 576222806 228001250 272609856 197262693 258630094 29656972 84114636 91298472 500523665 952250006 650412196 981278517 243411236 270544521 877288910 201216044 507800335 750331497 685617079 237282564 507015860 863813045 281766677 21978846 592306775 604278895 729738914 283157186 518414960 195488428 514868884 632998458 201126569 800602496 157805121 245154139 518948577 585549004 423578915 25718897 427661625 812248973 1049516553 845070740 585902688 580656370 552446582 808901089 938837249 718778139 136089511 975164431 426198948 72904859 914322296 527314807 1007285063 376254633 236019448 354768885 1002573014 398320481 672628448 400563409 672875533 786092013 854851197 83059575 496411342 285211183 819130263 418014169 250334245 524639546 929355417 734388674 1011678902 175498085 539417568 479688060 94855429 380709857 748659983 1013903432 559735679 1000699813 879007888 350587437 641943606 171736277 59864839 504738993 821144610 728956993 76338262 947433381 410922758 159739465 77217657 399145594 618961253 911390664 605922910 615695277 428737776 93910990 187233751 712914756 707176626 876669438 805683994 876419680 876871774 312400534 172957059 866289633 286215753 612058807 371938523 185761475 1046414729 526980050 726413131 199842167 750312150 203668950 351188880 140683828 707389620 741682579 997169838 1043319765 774272975 213538863 91433309 220538123 807777848 643035117 416809715 451759594 506307303 323151646 768454700 512556588 457352686 859891539 339990332 1003370844 410556742 108361707 868922507 712273054 841735359 767797501 251492418 300071246 263604663 168395659 209280689 418077581 790732371 554521467 418586125 686988049 693744371 467312049 549110835 1025149424 668577660 166350061 641591359 292952147 911541103 339771035 371036476 537442823 948142530 415181840 730095658 369145257 613785562 96059547 582513677 831051297 823089451 713334358 1037501105 456675823 121110727 743139459 499716471 266678686 335321031 976590264 507194901 571509717 89331956 1067784046 631497169 303908380 891260733 591783048 212775848 550755190 306161275 660194920 856842346 805295591 378442753 608418817 1043948897 595723796 625501559 1057414216 1026370341 842610939 886606762 992253510 44945290 483518225 170524278 947912865 719043139 626429076 1056967511 632398731 878958658 605740272 356689442 309000767 6216532 687570674 825256926 747006471 576818211 595020533 534473965 460679450 331498766 1049916990 634562895 389205313 262320666 465650364 197428884 1054754499 248355304 717937795 52496505 1050381877 1048936288 322180392 56706489 798118235 745250434 521957088 173324615 646684046 719742031 758696065 926551303 260874938 1054113922 26300731 702649106 211101169 1039910885 55170529 358198188 888225486 101505297 134159623 406059295 371378399 365728883 205510435 781599151 844645942 793564208 879825930 841544505 97198373 124838923 65639119 621367896 383424109 470141959 405666382 79246740 276176309 370854665 221534823 110717598 442058599 239003089 970451587 34422136 622076301 236570684 929720354 120577368 96973632 5139812 303482089 498331521 417567151 451450720 984125285 979529899 103044144 421889038 226941654 144826959 18579908 1045525133 295675613 154249866 247031984 440568883 620040926 179326946 93176387 467901101 619361332 421197279 503367924 946588144 241884165 242029276 336372480 734044496 48962481 224048303 109011089 609840703 394809275 955819053 134323383 984671833 387329855 221186022 319156174 192183452 794375688 706124768 292573390 711871784 316098125 302470529 247197314 335792443 839414832 644017673 480086839 871864290 39375068 15547560 822385838 506540026 810304760 295672889 812927127 397059869 126732266 355961792 304646419 60097400 251997423 536143794 670487043 373148153 309369601 518126237 610015828 825420616 140836064 436160618 442446757 633279187 851889564 1038936282 1023466622 848804855 800400673 1055731170 427396357 1052300600 707919030 263545435 628339110 288903329 95310716 390440787 521600919 649889820 36478341 913357971 749999965 607763013 380386738 992498671 385871888 607128252 353408929 752634799 567753796 600920622 508620660 741370319 216784192 397371095 814517548 957001776 333523037 777272054 45795358 1053262760 809493113 295718411 562296370 553737753 887811664 965110707 277251676 965184434 257396747 131991392 330962587 784004272 969943462 28549782 85783310 1033025649 111550065 531631818 637135524 182198775 246797528 49787682 712208007 650408378 654383861 763575987 325515956 847390012 953397982 966810175 840026205 570901439 720549765 256018009 628094184 451571494 773712079 928114825 695194855 129212779 744464951 332834291 821658536 851528144 732676262 448370898 994905246 470010175 1031501029 39929474 421232758 665188806 653805764 408716100 547564893 725249304 542473396 231834047 212698223 1058554728 393995119 1048710557 235157118 576309622 851934635 593575586 225373166 355739340 203968382 346640572 732055308 916965054 335224603 470471740 990067531 793098129 77698928 686351771 528529799 353994601 1049779843 65227655 299076998 632828270 510031675 703382772 491932399 628717075 306920023 503248239 234361132 768066436 429299389 271798806 615775950 218047942 1007682027 832924275 627030360 501651327 612664900 196407792 130586202 488817915 1040005361 646632042 860739435 864549240 593703377 358279590 226685189 159785728 619201098 921591924 294726104 923676187 27906422 468100042 106091980 417533467 871233820 616039742 971589114 263824237 815003214 718173703 754635652 694756103 977268094 170814694 883900470 413060008 235708419 873232957 153148460 104064588 988982809 498018193 1017620689 298614165 195733391 743825675 1045584893 984637031 639319839 1069899928 285851419 443741657 232440375 1023436268 605855356 679869897 629340115 988297817 558857571 326974066 481430842 541380441 1049484449 144747753 732445128 33672771 945145883 1068227922 720612151 55649203 632070648 1047077758 916614622 704728202 267835736 13449440 872696988 829233998 1009917935 601031403 482784514 433079875 1004655431 601227170 680071206 442788259 450631063 848604878 967014159 173675748 784745419 531485586 424704736 1025442584 477980696 417757626 491486984 294827751 482071556 185186097 935131522 229460443 646101510 571882188 19710877 160264806 263725267 427746197 436757581 456658704 305391521 287287158 626766426 107285274 1069739759 642883015 301906441 76969544 79697720 643223973 246654462 139826498 423557342 134675465 34561233 803698687 652314245 716237306 247916578 89608659 690638764 465590129 1058159444 119905165 749460579 321144134 639516971 130174672 567218278 834517747 186264301 10951604 566071914 50965815 610949612 915076327 144171965 980165129 950284713 576952107 136150980 199038075 494836741 86657952 42814199 335527378 80232119 106204686 262540393 480076314 10610669 865688121 249315941 970440922 1000924512 66590537 176276574 112032874 573808941 568783035 776938279 214640407 974015639 657864189 1068356236 52623097 981383651 629041271 1015882955 892997085 873138139 690941658 817222813 1010025473 228357028 808784001 991604176 20604785 901266481 928585884 18411502 1007243415 711810466 44723150 538394209 542824106 225787299 159931695 572295877 780866457 102023888 230485859 373550330 583225691 90434956 80423428 147265999 909324272 202103182 739180018 938421688 870673042 57063176 182047526 988412803 929921407 194082997 1057292165 436017933 898257600 170468389 899332785 311780565 883373721 555113927 27624733 948959917 1035428902 181888261 766259541 682321249 282590742 45816381 463211163 617004126 377975376 847034624 795769351 14977951 202625792 765560240 117963753 1056570558 274965128 757614519 545182704 1043086635 914424978 875433544 590521676 169134848 854791052 278198152 567311443 973901309 884782998 273947287 784334528 740555737 658555914 358390836 984370581 1012372146 138590982 549906627 557223330 1039686579 817222414 866727141 6114404 828963089 84376314 619062143 1066555515 105658664 241194112 604811862 1009742361 844452823 638181274 746233194 289893247 89397938 691667784 937213225 169024132 558000428 1050651292 790242203 193476326 447105285 205025492 361741713 822248029 827431722 97304563 40877102 307215010 963864684 839586156 239598219 1063544909 292425318 481513083 712820503 770274067 688093677 344029744 29495049 715017591 320906386 826521144 393121666 861103701 773525733 357032379 8661796 373086651 872845753 44834741 920754818 248646539 334557535 421208298 42283781 357952615 110391352 49809078 458711989 151849143 541470324 537655686 847378847 824653284 616541166 589393412 822871154 249010019 354053070 1066337021 771669053 48644336 423830986 317623150 60617639 73610292 859855439 205571041 528459623 152924937 697035319 563119714 47329371 762431525 41545898 161927232 1069763627 237494583 790141519 156911389 731547104 699960469 256815260 625650641 967995586 1016490691 1035694107 405858081 115494204 454176326 898693797 956717147 108693362 860756628 338753339 1061604217 145373092 990240235 379629355 920872521 576334357 1035654470 289110984 657065348 966052222 57742088 325401475 467092560 243655407 611830132 23297390 501732570 9356653 970771667 525903080 578436754 45246879 1025804479 966245917 71124431 79258715 810420867 32294342 1008485571 491291221 341851337 741917488 112130116 1053460718 360905020 337877326 752709292 56656605 448716431 195377058 1060649002 728415295 339736864 1049320972 996226381 399472324 917181029 431585681 669975222 677075173 369241581 79484007 353498302 388064501 96880856 962488843 579571174 617593167 1036863786 416324548 549836101 56914623 367625606 384124755 164376307 693044787 483309055 562367531 43138048 740854410 877532799 577583890 256911168 801400926 1893146 970590594 626564929 291541806 956925553 75856824 11485634 781704706 180902549 45199181 404888655 982802390 305493193 919127547 969306582 913340047 109774195 660274873 1029479048 1060733343 933655982 1052673890 559181053 76306167 595586633 725157882 866775623 727325850 710008710 6567006 274984984 66293696 762510830 370867615 617427762 493813236 560159125 278746869 297989864 753812203 564114950 55706194 1013778806 748829708 706258767 184315778 49752927 823481631 1035434601 1055601848 885790826 879023859 60349446 453899720 1036921181 1024294632 169340194 491438781 941193000 715615810 606975458 649162568 104070567 995201852 428081789 511151354 681833485 582223844 270129848 160001499 884160929 1027653619 678862500 265847597 862951950 154533037 119665378 227057344 550481 951620811 215443985 858992871 864999324 980439100 531622456 309521669 859807803 1072729639 77626680 388056847 984612441 703080342 880524569 918719186 504741244 171561737 135330129 463116408 3626143 492179909 559219083 840345902 1009616183 53205555 89576606 897836484 657282492 446329657 640324563 96852586 234560479 679988810 697298793 23898171 1001022847 354664706 255324281 936010909 958883259 29615336 184393388 972410474 844070055 343959554 133369141 948902863 723856574 903523399 965563516 1037354838 616692256 538585284 1039874176 202476164 612910507 876477620 6933281 85551450 570929295 260552230 59375106 1025004821 142360446 660891906 774718964 133181809 502233333 373392089 276379999 209813635 545968748 1071709984 490679805 101321482 712742766 948265659 217240238 44536925 670676972 293905590 560770820 401350021 164757580 444810273 866362989 1027988560 394813404 398837202 1033629561 914190134 124097259 588506957 264648300 780630145 926003416 672746927 982592907 246091369 160889314 921286084 214039067 354673429 326736158 960872564 892774063 924890601 674583445 907778946 729888468 344858744 222968015 982692611 755718805 826296618 595242231 554639335 699650716 522782076 101505335 785572641 704161075 84775487 796145163 223472913 688406549 150876171 254786108 781495930 55084352 385896529 599089505 72020948 429560006 1055305997 1043883258 606998458 654444278 878506262 243855682 272513454 746947165 370821943 230416322 364409814 121844133 94728285 170697878 662219223 83401511 915998471 579939563 767281532 930400748 1048973934 712942161 741300186 949338197 423456378 284244412 416368961 251898766 445309755 926411883 519062446 977736885 1027153363 456895892 602036650 238561121 1027384270 211628893 751479678 435706715 662942978 394888919 465912794 221879942 893856504 243627501 72633882 506099251 730222279 67758892 98775774 84253916 180990244 608531355 750031217 438661836 387380281 12083269 57619507 550440587 326393044 702123832 819899657 478801139 227138911 284483182 1026611116 1049766497 1032798616 933718839 91031617 172165339 1016438401 352764526 357168266 715742113 555261782 1058625573 422254578 945095782 831614779 354857067 300366158 1004218117 122339435 559088382 918281078 666139786 161247257 250103011 976920981 443897246 392164966 891912663 551826735 107344132 710914671 988839754 614708777 399516967 676133545 916074346 264486940 199995677 122188426 546445475 554800545 994478637 66693230 772976817 402128976 353271116 894325159 450874282 1020180888 180723456 494987240 145093376 843864309 822373141 873812430 48717716 874769278 503177405 594097244 692898959 259795038 878715973 372408505 409969571 272145403 616493354 714191412 512839430 869760924 1024356535 548196199 964383376 468307429 677187631 108948465 114949051 1059218431 820388930 493605548 1067339540 411126218 128277698 924104067 363377454 584405787 401971237 380838490 638067963 573089722 505916058 759094880 44733820 355123139 718203711 464827150 716716333 800831195 640782824 183838326 346560184 632210976 447749883 736203046 421727364 8746667 779723337 502017374 1045375196 700560565 928994343 53721494 123021852 27182048 310425722 524810814 430400319 1038836206 1003502887 480675299 762002272 829288012 424571254 129162045 794983321 854933743 556820602 639225664 147000869 680585745 505800755 590934710 1008937424 470713103 285176013 257932125 955236675 170019240 734942728 643132752 791558656 312208342 28780805 310631778 848216790 788958689 37212875 885662572 871194312 49291744 949468804 1065178215 944542325 862381913 783313106 100517957 440448926 134293805 1049812358 223923731 612000467 517961154 680117632 832456946 357835233 513864423 774185519 855142561 692108226 274293189 905451970 325615784 100010621 335115072 927679303 773376167 531134921 706653193 1002363117 273362382 59734252 817843214 1058392262 154454812 390009408 424465153 1016084133 761370933 620852030 945214311 232766049 479906962 831729182 233961314 864037237 674446513 821929920 493117486 272917198 23213211 1069597512 711541913 847495892 138523325 669553965 679861603 121593931 1023819321 690234232 247003765 216459196 857343661 644671215 344131269 534184269 237176063 975121444 841010896 884814624 489977696 314319029 368182847 859251546 574943641 731053096 361953007 248441534 707777656 667249918 192218620 1037811183 782779682 954419050 960114204 818948308 628208286 731525279 493607255 542539162 20459637 523764404 629303255 531660972 490636901 311237290 703429981 390437952 404305901 77621669 179585030 777096400 350362711 513791745 982721496 544340281 316870034 758713785 371236186 21183103 686416637 819786291 787480057 901212799 604433753 773975814 789403959 987573037 713277210 905362844 242242867 821421444 67754579 115350993 425991619 864104551 43604321 935892762 308573708 158409045 1052776156 951386022 438926612 301947177 833015300 905573837 129522808 39683994 166991986 659051476 695583586 874292223 666814739 565702497 620965822 126452268 6025956 198090336 913308983 406985136 430370405 445461309 30584710 515701692 818554074 630277263 906644695 125761096 518831093 912602947 222444107 517502773 415418356 781439512 450440729 668629125 26247365 445439304 707916584 865356807 90912536 1071368310 570250231 836290817 19081300 577258081 746129596 407179204 740215575 311425412 507536027 898644256 260902855 430362864 358057614 82046218 914407917 590094382 902010582 988882883 814690456 397051565 500158557 608721419 665030310 833578282 588673178 176297600 54608867 206949115 792920574 8038867 40731230 246812974 647693523 37895348 90186844 875783298 536234357 1011826285 770844245 371882095 643520014 818224252 839985953 649964709 777140748 397377048 1048577599 244079113 139632725 659577740 660082423 855380633 705610558 414540560 245541819 209821616 917094144 184260120 740344382 29597829 600084521 424939332 980989358 692448502 785918902 641972724 114504239 939397242 330942424 1002753784 268378762 269074098 261514387 995583867 847322268 778069244 87006949 990296422 12021368 860519563 1057131156 595003161 168048247 853363260 226468891 362935220 120901015 595565578 804730034 761714411 818884078 149290989 6377974 856824407 1040295112 646106355 569198643 439430727 136760075 409755687 821189180 201947998 902083733 6686254 1003038973 795470700 800880008 832564516 627991974 182810090 378556937 949602265 508600698 508776159 802541229 81657130 675381924 357946511 885057896 260922615 572696314 746207556 396721233 1054818951 666063198 617177514 103060175 854376838 919597043 803473331 285805029 70744667 279543419 742258177 653306019 597475235 161890389 288231107 91861142 168547061 533570203 5626928 627894169 527445437 76084980 349594935 736841704 687886966 1010739481 915925035 962223652 565470131 811797140 187490835 509339617 970242541 787185681 977217106 264877936 965634240 990390648 998457750 624307711 474748002 897887612 242422290 348340358 673605380 528357522 155601021 663607706 581484264 691661060 369902826 95533816 832424390 285802992 341463347 554974102 446648338 700166002 914781774 902352051 535727367 214520198 583726995 816089036 401348469 346208558 171368720 523656545 694220719 993867421 234460951 931140191 507837194 995295456 516819901 367381677 805784443 729865193 314432926 490350462 177194050 479635040 918107294 164880666 888041977 244660855 694959827 1072176527 855767765 602629191 795079547 622584098 676059608 971603504 295242861 3751044 91674210 1072271089 165383852 959823052 936652809 949209600 845648167 3851349 678197201 862506164 213404282 499696642 174977508 631421750 515593332 337266679 828279055 1025634412 1069296851 299405063 264221262 872245878 1040512412 330903577 359478543 298385027 181067009 699240728 249861305 839741362 916862797 434572804 447191520 397109220 631697944 774108787 1047290012 158107086 845796344 895766701 483061871 671201358 395977978 1048703230 713504483 1070859470 497869740 842364409 542541046 1072503716 557554823 910879541 560399720 677656829 151120045 658691655 960303722 840352877 1051707083 288812019 742907691 1006125653 1042547532 149504990 211920903 116059024 865672113 184623456 517305084 9600505 911482684 767548093 508821721 683519083 335237275 13994663 611041034 579614900 442940666 384932825 874264046 1009733437 996000727 255776194 899540665 433125953 45881287 47602835 865597054 597927227 565575017 493087012 915716431 466806703 737145931 809493371 1050493766 419859098 391004897 765677919 957842528 377084852 876576169 181419456 532137867 616055350 474783100 877434611 138790364 23532004 661549301 631403315 5619923 93692831 385071527 495402651 537359116 551603728 250861342 252659834 465381301 745979783 329868846 96975967 396368622 937396547 267502270 55720552 957458913 288508241 93143985 650636671 158780410 811068965 671028639 149653665 933549194 864572240 538046902 928846455 201124823 255433985 536396992 215959565 408064424 33900999 41829359 1064302082 733885741 511841173 519947335 210073715 812093483 596691484 39370034 270341124 549291206 926409551 509021346 301421029 170096495 504210710 457251148 751288496 1038465319 183748228 285804721 1042393913 59700444 666397478 884879190 1022992833 265782578 559582001 412393222 942129549 740458003 305774598 918019941 675911859 95849631 358378574 215314612 309901700 651906227 796062688 411395853 479940549 228824833 470283637 324723719 657929892 906123526 990690392 956647225 198989821 787475068 833182456 353439501 278635320 737473943 363635145 820496595 608474853 531351751 314112594 6917508 188362196 528379119 776147704 576150214 237831712 711693989 769608634 632881420 544307618 520127094 815948731 885797969 746289653 780613614 592087132 174850541 847287791 428086659 632648368 158154578 567043350 470175002 816183504 441400333 333160753 937739875 879754743 973791509 815190958 943010739 1045568781 797581871 746806938 665314657 720325890 36864205 303798810 1011588188 470043596 260237227 118533951 541214590 824614645 185485163 672177147 952756024 420225484 541210664 880730845 1010061555 496261051 1066509945 133261796 155077988 676141635 517962114 674536045 285043706 402782883 862688436 950226064 81801373 735608698 532354948 250994850 271876301 81381640 850421840 746487187 84745569 625162097 989284694 813302656 392307877 336461459 890004887 206996030 726093866 367151968 91321828 46583680 753649986 418689834 332248825 578948645 407686820 1004591087 119867470 1043688732 427810418 630645698 449869055 596336271 905488740 192416476 83821977 175745171 995365473 371518785 785258032 387524619 668660325 798093602 323084772 692448554 484620493 298774901 426052201 148223333 239296280 290061062 78094996 1042247681 39110072 71201610 953305727 190796459 255882512 895785451 233959068 659801765 315549706 894961722 887950744 811550229 543858695 954481590 82887995 305209906 718827479 61327413 74973314 1015060941 206570725 169874854 591959083 974556074 73292108 768677181 134729942 1007083292 812354778 164363371 211001253 570103624 735681319 377323105 1013318781 533463408 128135786 888237455 218632767 667675203 807266127 652166707 859137170 346362813 450194392 266122396 1036146660 176400083 480688701 96747499 439387089 209137842 404822515 245595350 162429358 526272691 38017243 200107670 234743846 777478348 669109508 41994166 818189942 729029627 267136688 240306072 645945980 492204901 834283123 978562947 50166619 95308074 403609814 238911309 902833477 245229860 392185189 411123840 582898434 931709426 849443357 396450264 651871491 945743278 803347958 445978324 127991077 128944742 479826588 405054466 851697042 758903176 515600917 709126287 329594474 153210463 108861732 67834842 963115316 404035489 42268393 600405783 302877092 1008563763 255145448 776346470 93193096 659222298 38615564 79220708 218827821 739100315 762775284 805013974 45692838 414295101 980431212 551765321 1015290152 134029847 100066516 286884747 1002299111 556998426 319505053 257432752 895626513 643174413 108632044 383294011 211016132 598722702 331809582 1051750635 849912335 578145413 1051338143 192100574 879802546 893521026 1071230031 734930455 231489585 128432477 840320112 657877240 618366212 644013827 160390602 399880660 574540190 70637009 657531274 851626687 67739457 935718533 763248488 606139255 1019145372 773828989 910398378 224436723 682526595 892125627 414450009 296467221 414605662 84946794 861494820 890628716 946543365 620760317 454314947 169282912 900625727 55322622 742799416 461841632 620255447 151367752 55347083 20228772 88010272 558847245 600662192 236786176 19743255 243077627 421963150 733506099 94334479 294062889 350607213 786110679 334683689 696808357 779976431 743684745 884935284 343441813 456859315 697174107 282918856 195623037 638768504 676334096 103682120 342554362 328880607 643022718 996772134 137937430 726431337 1037040567 428272655 590161585 719163689 132518266 1012070320 183536265 599937992 45384649 327250244 1054479159 584922983 317063254 950297500 152960872 116418624 393705863 498659771 900509666 500319693 204925560 193266891 548322079 333313199 628265681 199497954 267154986 106743503 874512945 1054346763 588879542 377925090 718785744 1012893603 933175980 584648950 351410706 670837531 55979368 942394533 618301589 70020986 1033325716 296589815 186641570 1009628597 854144987 677508879 315780258 988494034 868265018 972181043 1036581048 891281014 212258653 1033083384 807588775 51022532 875749910 1036065370 505604530 316083840 532704301 22200055 564403520 909967039 309142381 310606292 456754542 66863891 899360945 461981771 298536947 860650386 512424046 1061633143 1053295949 970817716 360119093 17621 926565974 142320244 10543373 803691488 116967035 65493192 290187634 283389852 713747686 495679924 205853185 382058996 357989319 707583931 175868087 453358051 6682657 420752611 92814249 777545952 600322279 657948632 869056438 357327175 651880313 486279377 907139521 653729073 254453735 431446962 719552465 150823395 839666096 543761351 133003961 56614442 686021060 520131151 34867282 266834836 171800916 643972126 11284320 1067645749 103329597 329802239 518850947 154668764 784774730 364732918 729584081 909901738 818152870 877940290 18519692 796479454 597755521 726352252 407658109 546977613 756923194 970370558 59921534 171646289 104265051 722244991 956485357 859107516 1035380778 343723178 439861397 727884173 1052774526 1040170831 274547739 1050664022 1061622392 657565832 338996492 836104636 614380371 438117605 365377340 823199525 906510305 797729556 747473215 468345084 42605488 43187634 658736817 757879839 407369296 106360395 794102370 169504277 453898157 1027414478 515032727 155336614 380005386 423083327 450029937 915588208 750546280 437099766 540493433 241441905 649470722 728084685 223856988 936723185 720824871 798740007 95977221 380243151 18970992 805405870 524834599 584199135 519866150 28766548 185247028 578957104 777974914 105022517 325951577 717615300 1058196002 94563953 42731052 908137738 100019828 901534819 384342868 546096449 363068260 516188008 179031284 902718633 18731423 253890895 183469907 231391408 383521915 311046885 89242701 630414937 481172892 817811703 211150351 462228071 277289482 214411433 371552061 690306222 962907765 202618121 313346520 507005963 584183727 765864605 22830784 475368483 463841230 228745648 407971323 835162693 83183612 982980941 508107881 124287791 852825680 456744623 105218806 849735596 880092107 719913666 445083375 79914033 742540488 286403328 660661977 63402590 768355686 575911577 390416081 145910779 954263119 120110665 706399715 714892124 458868168 84842461 543744925 549983034 585796948 144876433 131979772 911958788 589101006 296322522 484722564 723403349 844248094 524104962 579845130 512045984 667767938 525714917 713841061 270777858 585436140 153548613 191583064 539205252 768242707 76461433 458556598 1034213964 144902144 589679330 994948122 619772117 1051648027 216840142 167313728 818168178 139177721 986416274 151544446 421363591 693030649 125629240 999246325 1072463475 567432996 849377882 376559590 415443404 869452731 255525460 535995969 598154135 185560988 242586867 695338391 263582932 902480291 906039816 735471591 354649627 1072882944 506174369 461422009 716954501 933130333 810154070 667145915 920089498 24382308 748447738 53532150 635961873 472222858 682760312 745677726 285586823 325343107 916101361 683088693 872137475 921956225 409773425 15505225 812650438 151274685 1066419924 81701553 900936973 378655974 782784237 879160875 239147940 160851125 563942669 545438058 856495756 494261587 17639764 547925337 419988332 689026226 838089575 533563551 394464187 8814024 507013710 228207181 835781729 525474227 282824232 910360394 165792632 142842789 310846698 355508913 359926570 558382135 488326493 747723896 635582250 601691665 798531516 39544298 496207696 219172241 481409177 1047521606 90217850 412425841 993189828 573250529 637901676 452226902 517436516 414685119 304680851 215066360 144911948 386393571 385780666 872485442 978450398 732908337 542871954 392909086 142018238 454064588 661917107 507838227 440884699 103160706 389011478 967659764 724742964 237521457 947880074 171704586 749944012 795933636 610569177 813395189 789292695 27822178 491610803 828582456 455749387 693452789 883495775 278256441 63476919 296984788 868931633 799733665 996865751 494305812 157364121 756726605 822954353 617435159 763609356 414983765 112412557 53393952 969236577 620429806 670329534 811817782 645760713 299585362 729335727 1031628805 432348032 423537042 157942985 779068249 357039726 668994496 461192100 1055886497 108245826 348262105 110354106 584724261 939205161 154623513 676453013 176073252 433160522 980649853 817038953 860061167 955483835 514108107 983651303 130809503 345923983 404961928 44396770 159647476 677477223 8623383 706279978 368251358 987771575 367291070 729334541 318417304 384261618 1020489995 478839014 648420190 616903360 339408294 768445809 1062100510 1041885171 194666210 461781708 640065551 924233407 553827694 406979363 1007182177 604042264 277748998 779504781 609149190 798752214 794648398 851198083 452436455 705509062 711809575 244640236 491280831 630911398 674695506 824423749 918406386 874647388 12736241 866455932 749193047 552221298 158517784 75538050 443473200 509915895 513378337 680657170 474491429 992231992 857741642 530498787 744489436 900192039 300962833 1049737968 1073417004 813393411 25505438 359083674 1050771851 626440286 467873323 777372602 594341404 1061784092 120802429 483963987 136160125 543891605 303831760 758466014 397094046 888428825 829543720 116941483 545439508 830661012 172839939 190601245 682086439 315774737 12677774 699174740 604765110 854073889 307128854 710157579 605870092 394663359 155738696 1057784305 868411237 880769103 22818724 610203985 992097794 66904363 136428421 848558371 106037976 625731501 608035684 990622643 766904048 584243548 370862714 227185082 37911249 997665524 1068948007 421707682 915168844 354644435 468132936 958067849 681906295 990386267 678395325 184346683 351766390 569718058 316153388 32852915 605466345 219174087 304099694 239269298 919750799 565792923 561423517 203166117 265955449 513824765 747196954 677244260 420465264 485901078 374394247 712581214 449513027 659161211 507618588 623402175 590368853 143867929 826386034 9820907 38503288 400852389 972751816 109533041 879816526 280727400 882141296 1061976912 174271209 670146239 955385112 481028347 432442533 921451644 333576802 192263968 922610221 62788065 731241104 286578163 722778224 602023433 887672739 487999309 428397049 246151924 1018022161 493099859 331705305 59688371 539888720 584004349 670867979 544580769 597532031 26531625 561876573 204962434 890341238 858569423 657190751 509408890 781461676 963464841 551688271 263519599 145870775 186411846 156349487 976821745 796803816 631149436 530420204 857775650 833761189 812816018 103833283 940188310 630047100 942029308 502947715 669578850 340402086 540830740 668311013 466469106 237968580 1032095966 106321312 750629149 638356469 649034318 155068615 1009087874 984542474 539162299 890449802 558327626 873556459 162517468 105879863 1061078048 176076070 960945895 239627475 1059334323 652142550 176053880 134069080 942477991 648446838 759713561 467481870 71580668 1007584498 69955679 354771839 249217126 496432819 14104397 185361565 602900241 640395291 547868843 258463943 946782361 409157118 832414209 100059683 190424997 51779248 879779892 178422378 774222911 439989770 539354451 642294262 522062962 1047445915 75435812 254934081 26169209 491981651 964030859 306112846 645521730 55457369 718404071 1058955598 809540433 891283449 130641434 409556110 269598878 646867183 865248032 545939383 485156161 437445877 221539452 918951982 712644357 722191340 604417456 1037819768 606569961 947659027 225373215 487822808 400267832 479672877 976500777 831526808 504335349 417891808 436502892 29595549 166376269 469101141 456331101 799429511 66321281 968999622 664362448 723886314 151752324 1055600766 1016917030 1005489009 926107283 236314029 860471299 680810999 55267708 803684655 140192507 665894394 382139346 229126538 578385656 864148664 501605134 770867409 932499075 510571721 527019918 989896602 369053757 688386928 968925289 884928603 418144385 662965337 1054275776 549967208 694731859 705009659 613878421 503745289 930351819 234480006 923081925 863471392 841647808 502420556 273621507 178009814 83940487 1004324750 25793019 501310886 950328595 261499280 145875747 548489665 395899279 244775135 23614989 317508447 790100445 2494528 670065631 56208779 740836602 972288392 127125319 1025014484 964768367 807220003 162693528 104877732 204296070 92247873 863057323 859533695 615397801 789357650 1066469003 447120950 296604890 729035960 44415629 310823580 956345152 43934654 774636932 33606992 279093037 452346359 734663778 674815415 182426284 841195371 415456199 700502565 559864812 69747662 203576980 522049095 111283241 1058181169 293415939 792205418 129441155 601728099 282289425 78511401 943295997 348139197 990849600 978114059 540522697 511464298 217542462 196088523 962728162 253317327 1031429339 690478175 728616337 310264053 318580802 604813528 982494138 918553520 554551014 343227842 458053793 1006336741 533567842 357880092 468801696 61513561 1046638738 221172149 138836127 919047495 1098936 91215335 771383035 743536961 282438161 790267626 402441677 709849879 103709161 1020885348 852868342 291704633 700157951 720708285 519000675 240335127 242742000 400020855 131545262 401164001 967423080 134458729 963507509 920368766 1030637382 535437201 1013248208 582096041 569570331 24794734 468417749 158578999 799596708 532166133 667789587 102433512 503904072 555576756 278521251 306367308 155953273 337100279 804544476 992769325 383826159 406099124 734879534 435389635 709795513 889744046 856603083 418112021 472882249 694690919 211478574 10834960 68190343 807756503 551995236 217329763 560689954 418953828 1022362461 204345067 380287621 28119234 706758434 97123051 136605146 583948421 129994974 644365096 44597990 215597290 537322625 181144906 383726808 281067337 662386428 444421195 911000209 535484054 187287626 1044499911 64024438 940447256 411877915 1012945243 318274497 785674124 1055682158 901922963 1038481275 599271064 337010439 439677259 170470143 990645079 462080231 467563832 409428819 953152913 105050086 406736534 380318525 976884182 1023574337 825510784 347953104 734017130 827309734 987239817 1026507876 1037682640 712953809 177114853 881494831 354430594 97534723 604502202 515378312 534980034 117217015 305814755 647708947 974792335 808078604 286670292 428628972 332251617 21432095 696245755 613585036 490089390 207224228 645967044 1006908749 373404471 265990360 307516278 486211802 374617934 939263805 402437755 725970846 339293949 281094053 182809348 481932582 638044610 50866568 481320912 416602390 322270850 350401873 1061652253 137865259 447566379 393801075 288700528 616237154 158854880 1049067232 476084928 709826256 206019219 892886320 350060907 722914555 214684422 487710869 114261633 433804811 192786680 1005377418 822734210 15483424 546300016 195443376 544689098 164051835 856009827 431606302 839209585 474831435 945814044 868312941 150072186 556968888 788639762 42015121 395609283 651542593 425936720 218367828 23766770 88712407 232864544 450969350 58761645 1348991 1056826769 477127331 850387650 285150534 313603840 764026310 372480363 15565825 762222135 162680690 893106305 275193423 725798253 838580608 536520739 653737744 142305956 253918142 603067737 785949421 364405153 51692961 369544782 85185817 598020014 303246043 245975164 675009651 702890524 503649508 368434510 357172810 600772443 179627344 713687214 243122352 202048434 393018505 617308948 289214724 452656145 114987302 141697686 84032346 721372740 938638648 184905700 672694052 438804174 250397851 1035901218 447475547 146999571 782318677 361798377 332297659 366198814 181657576 1009774981 765136674 887269431 412912721 701751009 452304220 245075886 252646280 760069719 1020951691 81567247 581094356 664080906 1068082072 8991948 455903761 715918873 684986141 90176174 638811949 761152840 813958489 399153520 215540691 401607625 843809442 944838165 839768717 582309571 1070711675 78036719 1047654635 352631553 450513671 756213993 58266682 223433977 121266987 731615991 1070650209 100187531 177256311 1051579884 296143734 796011632 506743381 1071332999 209436757 367707680 830444355 136921547 831972823 50827817 271928312 658565633 191628179 587129591 523876076 192518953 432956154 676902064 857114023 495788747 707698513 575192043 348675511 788940513 126298619 161886253 168726424 705942442 741254843 237411551 567051699 702087956 912553854 537967736 635613504 411394574 15679004 875033319 519193381 1066709623 906688045 629574875 773035284 446767396 913989647 749614711 645104826 600852714 661457225 476161026 573722040 377468382 557969719 500879667 129723859 273348649 41031666 89080229 1050339225 611585801 64808594 103100720 766639330 573925777 1038064620 22403397 633661518 518734931 482535903 294675240 341155419 1038265663 287930522 267054877 240539471 507664597 480881649 971899437 649377894 299861787 410619767 990399180 385421075 789174423 752925049 746981107 766155503 147263245 225097882 968803358 984628891 316941626 545123097 942444860 560989299 434535512 67692884 822160168 745405934 75404853 660335185 773901580 318899620 487070624 1067220016 769885429 1064161175 432298536 1073725151 751557623 290608959 647424073 771292699 787162376 977588766 46437543 190656799 537262753 355016888 788340482 589196598 308783542 132161817 985647071 842726558 11417062 521173314 177572731 509376035 23010077 634469899 791108430 399021816 1071973690 765048066 546077097 696840140 699776930 397742850 375434633 578675296 125831845 176912458 326549668 399844598 24804826 321212983 381921855 261364696 978465175 153708826 202703027 671004429 216747671 757648418 1011141826 551618835 979821020 397597824 322295952 218951637 10326295 625037770 798489661 927782712 366104706 163979129 335250022 388941430 678028864 800665329 353986130 926625413 159394693 957743092 128146602 943260333 128239217 1057217342 508471512 854294243 340552112 441270189 1009641357 3391909 836051711 312131456 1011556959 344207783 633423314 836140013 998920747 1056638781 730991510 442173928 206933795 125328026 540078811 294581652 175488019 975133998 640964246 360219317 382312570 729463533 290826822 746318936 270199042 124635735 715503825 93633163 524525069 381739830 770614218 216605220 715306432 14465691 904336192 545739584 78362778 275745595 945329273 121298331 768257070 413457840 460638158 247319366 490138149 149321055 717006125 604339752 596439083 11073932 642717731 764700379 511445392 590259979 786498264 257366962 1015164444 160498561 546197370 315858643 746262715 720245563 207585878 258822863 1061543057 35051798 914060858 769756611 577437829 421320675 901534878 583894629 417943212 23014988 636831046 621081275 284124861 125316666 20277154 925200073 726112478 517486138 850583877 738845612 344019277 740328508 176312423 1033938766 385552799 65302882 113643503 11595166 746681517 747289001 382515980 278622287 130045722 119238609 917458008 246816614 841178470 428351868 981036479 371690335 790395061 62188334 344918879 667916014 604665202 382336854 407581996 912991295 454153243 235204277 86139991 324147842 867372067 148931867 297580567 59884792 785916826 380423338 415138744 310801410 677767902 1007499615 1055118949 472389440 388987377 222431165 116298534 620546325 957713835 116569398 766145418 8071840 601185700 744767813 331834784 111111050 862357309 480660523 640985434 14473867 1070301292 871074558 878763327 102354735 265089141 735893642 41267979 88161403 301987025 422349711 86707349 40696900 119092830 399066301 508130158 381837584 479744633 1072123903 705514527 710295661 306627796 772545692 122256162 50174885 314539914 997274868 207253061 382030626 1064911688 731579147 372988052 607106869 191440962 799275477 283727977 679888528 89881578 531764976 1057746820 226894940 140383558 103018912 792869181 876044674 894273974 943637228 314705887 402754739 268441307 693950776 300325626 845797905 291241784 775763407 76539351 401701712 446997648 1036651445 828882080 305074898 32847212 130261884 701348208 856435570 482911331 367314390 301450051 1000668863 622312600 22230418 669258355 361358762 1014222516 522785381 831984197 257480816 540710047 39975803 653449185 923789509 371519134 459235399 268773554 961649326 191847322 719302622 620082040 723998925 470392453 525819094 934299260 84892224 14395111 826481383 803251235 208865209 687782720 915955727 849434150 270392903 424224713 500979112 23722398 644330524 105728248 377986079 624132349 603518443 238399926 464658133 1050950705 301788949 554756043 215553322 271360438 50700436 1003777501 57764243 865451710 783871082 673948809 266876015 1026145976 110903378 519256560 460762412 74412612 390618057 93188110 98430295 469699202 107877890 491903255 207098981 348227374 1071173332 695455167 710092404 1038027701 124489773 501196618 940198839 471975531 427512024 1057090983 1057799676 705169685 261274307 541187047 1015570050 891953808 895111755 8777363 928282648 48556219 580125807 583061099 963286991 563400860 6991453 62855188 79608830 1060402592 793736406 1072306686 562550321 27189973 980139990 703118726 192721112 792743051 1057274793 170604893 924682864 754746698 781342986 699024121 971472636 854179935 618926788 804527988 600398288 738144188 701045349 389486457 1056954447 1034057796 1011753895 640001312 510602705 335546783 237434357 196895684 788776538 129663380 699356145 742942427 208844341 846448662 1055659442 1072564874 353119752 711784392 575831358 680728568 364510252 401892709 873118745 465696115 1013274186 636992627 50775686 42216775 255798146 779010412 788979992 240635053 581907390 656436074 618789848 915798772 492199679 537700098 693073141 630124497 167117523 674193163 335642120 1012018622 333470409 518854295 832734948 739553777 642221620 729684547 75805386 150064000 358355677 977706001 452643131 892038487 227049564 639524758 537738621 226470089 570829593 357700198 821657994 63918962 567739233 950354677 552110986 685391074 606343181 40775800 450012807 299704563 824309352 415914190 895555222 355478836 1033074135 1049575646 861519846 537716641 59686402 536011496 524051643 868592788 215758739 249600705 197569976 536887429 516889041 594177415 841133392 127269816 190275100 509647371 790705366 1030466671 723046933 801036372 166566867 261565897 85948078 33522140 932153940 455358231 988337471 912471913 704063828 993914202 1060686826 890698634 95453410 638872062 784170401 914871733 602796233 181918141 22340072 381720216 328932517 352287591 838368277 431844481 22789019 165317408 521325651 206486074 863683620 134294031 962565907 401864235 691863150 974517257 869744091 434909306 250838703 328892540 125447735 389545191 83864213 454870212 379613439 351958236 397129920 762297783 7553412 615706277 244104079 337889989 876863574 990224328 537389251 855941711 876513080 425876248 1037957134 1011588820 192196302 311651170 493439821 316139923 284824730 490524465 720249960 442392963 439553340 732385024 119539689 166841416 147964960 121739734 32929562 1012023638 76033553 828072712 722889528 531917249 337209248 978057311 168345301 631665884 954116691 679819315 991110826 743498953 461643203 706843921 22210979 140652586 524162931 87079678 1051095994 442026434 947716322 1010767412 682807364 585957700 861145948 533069819 585781231 557143080 77818041 876743534 730284699 1054488710 303823888 473445724 242883976 903565167 448336106 148858883 299534157 50954020 664033710 623727043 258156142 324825035 395934311 155689945 962346632 48799887 643465523 267525766 67665501 129470079 417085453 499107613 798075673 315480199 227542328 652828293 137467641 99894703 991074204 820312645 11429114 79083695 1005766400 194582621 999572913 887066052 160094573 1012966588 494594860 994633228 275339546 716779814 1008412703 170882924 623252772 840820155 778573107 176915644 843290638 334633133 278074814 526912036 585828605 334374719 972562579 517833374 129384940 142334278 39252751 1010589870 287461103 866487259 1059826051 756861196 266598442 248574536 310929972 180146871 685498274 137879470 802300334 166381480 32365182 675301437 688749553 941930269 955875793 85651070 933078034 442484300 206377088 608466357 1057613751 589633570 905246643 357004714 434447695 648570306 1004587367 846916035 986984512 720389230 327015451 631797242 991040228 254730920 1035139057 776383891 953329450 198789430 255438184 949899514 387653983 989138174 971423236 591248210 336787750 98393687 503216075 961556664 1019181612 858913717 775454138 971296034 423068546 465974510 278060683 1031603140 524107636 266656795 217694381 478152999 807856017 1017469924 623326452 491189526 389288345 888248617 896575978 869997701 956619784 138123476 830024490 111264592 211350155 233712260 341904109 552567261 95269927 853905607 658183694 344335517 760263019 78791637 26607115 687563904 18390686 571808416 920602946 1004349228 645959759 69036513 758669417 921479506 696746365 37622072 616956882 298617151 479051188 821870406 255883008 234812078 424187992 494329381 952068850 211508689 341281706 948881753 56261274 463567414 341952642 93782679 391726377 2234253 546922478 165724055 18918715 459102671 862871405 1028316620 972421508 1037515195 840865079 865570644 140027701 1063502207 565501452 63341672 511227614 872981108 130976098 691776903 635182579 497276726 981012535 618233574 698515562 767715955 94848333 981464329 722212819 702389984 861622124 737140021 116177668 994032778 940325609 190353957 8135416 107808082 330880168 122172846 529183691 143719252 399600547 954205403 679893 727894677 972996493 150754448 708932772 248107920 634652663 371342444 664854164 997938411 98615440 870167357 11676628 806721815 839357034 125745706 730566831 997890793 765148287 801509800 273778845 239534883 537105391 330905667 622922089 373888234 530994347 525215190 1002782566 432230432 143027485 93860345 424569711 1061249039 911385727 215046409 543847291 988009539 351694989 998593350 367079230 244699579 1006554015 242034721 283669592 144036650 795091057 647630143 694090796 790411146 1063451770 604594812 16268477 1028672069 470239400 947656172 77793559 535741836 367156366 1066900541 35857293 304485702 655649403 456902138 638644375 813968373 676288551 9832321 135897901 564340645 366344497 211961487 1058238396 324312794 688499223 913725454 867470943 464437347 104725037 731219239 639252662 506662668 502419318 778498747 64104022 707925525 12860571 795409060 1070176861 884033213 352989005 753347663 193163588 11139550 587864593 805645884 15218125 316396579 850666844 267783752 811189760 424996061 814988854 250893197 852263203 713045650 646931779 818911567 567021465 1033225130 630998415 451941187 149104666 509482366 543755686 1042103820 597516367 926452940 876771807 419924218 414853186 667950615 1066208863 712460836 607305613 910378695 171585500 423861923 619025022 762565730 684155220 957399513 589763424 367957707 563998478 729864330 282133628 45222776 847939494 365918047 415901674 796285260 1012767179 87205808 442344080 497019605 971796768 343536859 895311311 5796038 134765663 798739407 496199911 315676186 947093348 266892228 436269679 965872951 833387634 1028729899 927361449 358173624 107626799 524027893 517771943 109994542 122083775 1000090852 601164868 124212096 451621880 225646106 826766531 435648864 412327715 289368376 570123445 248316799 626596881 687470970 80572137 340770395 782469704 891012035 39707259 266363604 937915592 87110780 385591131 365436640 872718084 799213560 331522132 30946177 914550296 300177496 427720666 893187314 87868866 244456037 843748471 363806897 186405926 76507727 322003972 836698516 236592432 751406629 681760614 969256523 834957424 1027601074 544129713 221976411 425740400 896902966 397565916 548993936 84294168 291826027 799352297 910421283 172140306 795630435 173357275 353994910 249152934 53258197 161616786 259650845 677160473 766527340 80963885 975940372 280190052 335446873 308026001 263234420 859413740 133230995 49089113 181426030 329072715 822894651 881381079 782431815 822052099 426469771 801996197 75803130 693436050 280824508 7804475 1004872524 995870477 802049763 806394660 303746360 751095008 386292512 565933467 846255514 565510137 322429008 686137865 307644317 826527013 783866880 94871387 217320357 510549769 466388593 828806519 794345797 455842081 761230686 171052735 891295103 162831981 451363603 235552333 59708098 8329599 772048014 152781545 817754483 194383967 536726218 576454391 112726694 118184598 1033772039 76267130 727981601 711141234 416525929 175450073 916250972 891311125 602888346 330772815 504457493 62669178 766369885 184503462 884344150 138969663 322857999 36811862 111863590 89246972 745752204 371543125 164268141 379886250 670652692 355883668 711534078 604617906 671893049 992162984 558354163 760741126 365187795 625409955 430317854 661413365 200501345 1029176089 272682111 971999532 464626604 347465974 666064732 251324580 302476734 901452497 334346954 981117566 1044323659 333832325 7754340 134377384 127010439 522607480 203533154 663996201 785746725 533748977 736908353 173244091 186232486 523748990 596886999 847005723 1053889720 829886625 940525706 363064948 593561864 751780642 506987404 6041038 303495421 894664095 4373839 295189922 877341986 969822468 631417254 32621738 404014088 371972185 993093174 340935664 1009678632 438283194 117714978 758219265 703441113 46985739 247039231 35518065 544819873 875161122 664991430 674329759 949940206 896221736 1067869927 161322852 114987992 780356742 491365717 91368631 683910125 868442390 1065302267 263010368 34358487 1058567068 226531807 788304282 57711807 626157765 572609152 509711926 1021940155 1055704248 671809993 972335028 655683883 71150923 1026617744 803477530 844243270 278442480 69600487 323402319 338895690 733091485 7840954 926106791 936215558 279842921 873518132 691753062 439355204 281984496 402662077 589657581 345705602 1053006798 986217084 1062619641 1025212564 368557115 714674319 859658369 713770644 472602674 935857714 347353983 728042332 964501779 852450803 169505209 5603477 813822839 1013318165 871151552 852192154 868452308 1000672749 1001330856 151331766 824399281 497471704 561817810 212187731 713238508 674065191 592444099 335639382 329899998 809264096 455868708 1030875565 888936284 347490517 992006613 807555942 693792037 907396000 808777858 408131512 665257859 62355207 294224218 908214268 176735553 215709220 163636104 154434728 801558177 804078992 69198331 243058353 860351157 224569540 975908914 378650289 222450455 96936445 65860465 608421599 72866065 239178024 573979494 37448914 403764991 11049425 104357702 624965245 1033777443 260258077 782796450 88512447 378007470 329202905 775738849 1063206966 304015221 140286974 194895954 465028598 711354517 692888566 630311562 712242828 1025549421 611074084 1008372806 171078797 489956235 547192357 554062515 44634241 1039618813 197376185 25947920 137991609 925804003 164861283 76944349 720167226 1065140296 982551866 17307327 882393680 731185860 348891559 846127772 50922913 714476896 170950298 124807563 1008457668 304490663 7049572 845566325 348676773 322563764 825719917 298179532 770113583 556927678 241264170 52955353 28842326 300243693 982298375 719379326 960941311 817424281 298168490 682071809 880425576 203519433 221730450 352415903 489076454 672146727 40907548 596478124 722535077 605160339 786459160 35174671 20300675 417527003 708212717 526773296 486873428 990289030 773669952 459792726 773025337 948699750 502884991 142081005 792239254 136221003 767461867 698995476 23847679 472944667 581225559 243285323 174530906 82209710 1046479992 617500920 476604214 245153767 439954657 453779912 870118631 130546905 703257441 643614397 125729000 588447624 1013021134 861600038 595032782 980503284 907220182 811101716 776055216 623102967 331565904 69109929 300312166 862914713 1018196094 334473352 724124842 896107174 444865509 846634300 853173499 891339368 557443844 566765140 156547064 866369978 991801915 148664915 794407396 662106234 890551816 105906808 247741011 93159620 118314152 439154139 225107819 563950188 197199720 915710304 1003603741 115470224 959311069 890676944 695894579 259870717 752584133 402417173 177704553 829601517 574584923 745903630 191580909 269847905 961535471 141252049 330993333 470833777 616603830 1068253810 845581976 788160424 85689224 296047412 211048225 894987938 349318905 603567743 178960291 460175748 396547874 1038774625 529464234 936606880 794091733 33807696 641788231 707978618 878959378 993134394 655575045 451945925 604771484 535397000 243419805 545797887 452764074 116966667 849915536 93838198 184383123 483015709 764144850 444136708 109402094 474395782 348171472 692207454 1004991300 710207165 547177680 11874254 738669962 400084547 422981017 885215078 983504964 679800650 433120474 293239978 849393594 321355964 372981955 178297366 388142664 217626136 836025926 462256211 725480039 704320927 533028130 290422491 953762344 139869190 461442204 508369387 644919134 567907586 805720455 380032209 37910112 1031485466 600511418 103314318 756961127 581429223 777468848 923417606 720928293 831266601 297088120 216719605 616809074 985710101 283108161 869036866 920010305 357786070 42087100 728297573 18293613 295362001 939640667 251489545 169915737 584154830 595893171 93563466 310381434 819898598 491477929 782741157 799380448 889946806 335979500 849185532 1069287933 830166214 131908266 327065878 261988886 128954640 447798576 252072468 655779036 233444447 1010505506 916827097 44871242 506718465 864954732 745851066 109046612 904090879 17747659 835789125 175764146 222189851 163593252 1027977111 673339828 114450775 1042820288 989800587 681796417 219932298 837786878 952582359 609229365 116159572 407540823 526005386 725061746 640750427 443393246 472996836 451018230 878113837 941168058 748701552 796982184 319901619 507022779 586250415 918603899 128388252 28360847 589308123 436152477 154133932 883477709 1053429426 341990483 1049865064 550378094 497422600 318872508 966233429 487020805 437948063 1031878988 792136567 815573565 981509083 873676231 729384626 709150217 86742550 727783708 63815251 754061715 206678533 530516961 175465197 486379517 991509263 786223424 193767533 773409413 810529029 869080998 141322627 478926625 462844838 510403531 987600041 225229604 959615110 6370600 192761989 1025550548 50637509 676079410 31891297 610875666 862116586 967763313 277157410 615961063 550338938 119793799 430012693 499144106 145822766 451569368 734053984 264344587 256299169 464465458 389634172 330223254 873474470 757696938 238864789 955113867 643563832 416374296 703858778 891219562 32978586 695133812 75494910 739255639 724475188 487337330 28230903 31238493 161926271 815530003 286086128 342467148 58694969 1015538251 876835943 366848829 719175889 25267571 378916634 596090922 965068417 409925799 958022233 743548696 248457932 503469037 277470883 90880517 659282625 483737468 730382594 810038261 364882806 478304355 650054295 614625962 531001355 151491834 519698716 759898207 696764218 371855575 427298183 224639324 508590630 468857244 738965279 971608535 1062700926 290236673 687521823 1030911732 7972057 894131149 776179281 501993815 502846654 874322953 771120899 1070546388 1043115407 1011710832 479925560 921504655 917940577 55093570 449153238 110774164 71388327 774960556 869784517 95707849 927012335 295640670 781977840 456104886 990892193 749155089 578538319 135819447 139632738 1042233598 976059669 198860909 1024341670 426846818 411609408 644541522 1011426805 1013722684 636900366 87056451 717972 756974182 73190753 471067617 127706176 842930748 861709181 746375855 610523568 501618523 976686195 532319147 911219790 816039865 615099512 516742638 795827901 499790306 181531548 374117021 364749459 159684501 222968891 623478185 844515141 123511759 296050442 704933605 316934578 776403169 616173038 906297517 747665687 1035852121 941742927 114368648 800227140 914119641 116270529 935298602 138529166 570302053 470085875 364151993 37092322 688303679 59663645 333221138 92244519 447335426 229614381 709097794 444556994 442694679 280327033 431050773 815832312 294674487 486786 182158150 491886513 879935467 145772317 148703849 133561146 382681682 434530613 252233553 689037609 781983356 783370136 591085363 1057027086 138612233 667249493 959415028 691045600 749598078 711039408 1602276 647152003 591206238 934803649 88352733 909514459 753474441 424682514 573548148 53783411 249854175 480819207 622049579 243886803 1016320146 83073862 663955754 541130690 935740348 926025637 518303643 482024322 46021199 29880795 663711968 652339080 741184772 618687858 1057601747 452001594 794316898 176704498 69833163 310027391 735411770 550028184 202177762 530289628 518548219 453197229 319063443 480689589 910545021 998734994 882943803 372654960 482759700 358158078 988492392 637546878 763557789 186562827 453498161 801682481 548190056 182372366 904377756 910074814 538556483 110690178 58894664 536036272 128762930 1004023102 168372605 900459144 433297583 811692513 126953012 825428422 519048204 523216603 62412410 133099271 342367781 381834779 98647945 105855340 538047842 54041573 1020624344 174763201 1026080370 638172278 625832230 610976506 378491183 911380451 294909332 140011256 592519824 922076340 404929978 597233015 73613801 811070937 270343134 325657276 162438539 394245832 268463285 275442901 506955382 26239346 814226150 849800329 252711993 493198088 902414750 99213580 540291271 163567326 537655704 843821372 73608325 381803968 158526865 892340320 77013725 769949316 848115229 247619519 543790736 972837866 745040942 257188885 629387349 996192556 273275942 335359526 221779597 695539845 545229326 957214121 327018650 220778179 641844983 911232078 944814175 825585162 994795605 541186814 786610496 354664526 815922281 292755579 934041205 1040296927 1025865012 201589261 136186692 794776545 81943684 770932061 511563408 643562240 680893597 336113189 649974404 685574952 955653665 209918750 632244668 136489390 664515590 587261257 602890825 876209993 13311994 974064590 1054833853 698098422 926574625 923958606 22484161 265905295 37855130 119645299 1070363672 1007500607 338350725 1055442446 346083551 1048624264 226452741 991443717 824161806 379887578 951072539 294900480 173549876 929879334 424556013 199437408 956168455 518554270 33688155 780190895 561033440 1019795080 427768135 482507123 174163868 805706158 441783827 22603068 290849854 97099764 140590316 459777831 897523433 334746068 890868715 574101335 298652804 383163 71682732 562199365 643183668 946165707 756253520 684217320 649131718 820513269 495890132 315861158 579015188 928078884 945594264 127785168 82176789 722389481 685305085 363404238 747382138 324306542 43257505 237407599 1064089436 308899004 747798012 55754327 556108744 124724423 962183978 823462823 954019733 741261543 797387281 638081258 546756245 130833039 365871626 227552381 151433436 811153853 969142649 835397521 580048207 516435665 580170179 923877541 381989391 737997639 179448917 26395986 269787074 476445635 53705481 417824182 202812657 695816746 1009489359 548309687 304322634 748932652 496929172 491964219 688120351 903431151 757955218 315641251 539860242 435565251 680629057 910420392 202300172 485247471 662479341 959318227 374207937 617417999 348560479 61880655 122910351 157692445 407719625 650171762 604095623 819104754 247798253 1022336379 1009070677 536013911 909533831 159679126 274627452 569041246 485468090 397919581 683410858 762714196 820868580 145078371 720677201 606161461 29797270 654858620 415883830 651323295 1006674292 731131531 102037105 159717623 182585402 388622604 22407608 125231486 434439833 661196584 159236405 739748623 381021497 1007249701 629545789 643289845 870214729 639715774 1048648131 685735099 421398931 718383129 534899630 525288699 312582407 645001251 1050897076 776806715 921471852 2387381 142940892 349429786 132930106 754510231 243149112 936599157 313574685 925499117 579204015 592248450 621947327 733663785 422076166 654792404 1032928594 379012227 608816700 785411393 536964794 501994261 455651664 638783081 774973351 326354948 1045486336 225641513 550830114 437141317 1056209155 318086258 204023138 123808500 562572549 1060808949 184527160 226057202 88618073 659607478 437833160 897850632 149033300 153646330 93854673 229407183 504209115 263047470 77527525 206483464 679346906 321519945 715533981 131594481 591185316 755279662 610612346 942081971 593729276 358616710 708576175 30576842 131633643 549747672 662759304 969481635 861678968 770729800 890419409 827710653 349465253 110049618 57478724 901290428 774982855 242079166 503125058 868541101 930801850 512205501 418013698 154894741 739532763 309224040 181170461 399466301 506004624 940804013 289952719 81408641 128169640 388133818 30414679 1005789541 10651433 248418066 100504937 844993828 611995267 728761458 639296041 572698006 899270890 938612397 541987680 518444328 957283715 63722037 691226596 791099581 687385690 450019050 1047266886 97461296 649793998 333399144 3168537 512580481 291341754 689322424 482856369 558303513 49281770 330321845 599653229 975708724 727143684 569444856 503223768 378184276 102466184 73644540 683999441 498365348 199477891 71681513 554684302 314650250 540859298 435091342 241242186 790381574 483753134 245003145 232879747 353813324 850058942 219861491 571425237 571134356 94518576 594843278 1009451907 57532080 456550025 176572356 290672424 368412957 176742075 65229143 468273999 169874438 809766288 925353183 146423300 985414881 247840296 900093443 33272530 947016676 399515547 170049965 993536420 935298452 403874986 904333315 853337688 107051537 935240576 361528243 899749211 187737500 829280856 987587063 154123221 282408626 621161432 549036736 763656977 170027344 539306451 97641741 116722342 513804485 874758574 369350032 792975719 754508746 858973342 971771709 690828694 956774076 766130555 542348044 880020383 1065020946 280425153 121561887 110301579 26929844 367616985 615535558 35773740 472482318 678223501 743156507 122553643 803192604 632863254 354458813 522720431 67553049 769080748 872642255 206683726 482441942 1068876407 455542168 1070162501 1065845877 172335390 962737989 822092799 854876507 886417403 971974186 501179373 1046447318 156102329 276789566 348517137 600315025 102794800 1053827120 487724526 1068607382 808365021 734529969 1058616535 295830981 468046588 324446448 733243199 115820086 567870656 551887284 921458701 73074401 142609781 467879661 299236920 943762821 389542690 539654374 852652798 676621187 1055170435 706965546 875428757 755095648 1045381489 865430079 735949845 180569328 171412444 909484396 47801244 677661012 35719679 124403962 635005177 911609047 327603695 956775229 948884854 1049769267 415734041 463958492 342329389 1030682029 801317652 164915018 641990072 854249795 848448150 1007873712 653304160 351017609 643484546 925302679 214766011 293059107 451153371 459341663 585395796 68766888 46372100 110820798 429952387 247745338 901022827 658169328 555314167 1002924843 771867903 1025241360 567350527 377245465 270604035 1002340533 463592799 781741141 921339615 439739792 380201492 623876762 872598888 261251313 80600798 728058020 743853578 282759783 94060735 569080520 945053619 812771890 574259086 806264523 608554953 658328205 862863945 1007022894 61581529 584166155 579001463 568259888 449453189 1046244189 6689869 913426512 375935028 392972323 1059656985 627880217 694188379 807537131 900783781 630729094 201356302 62317383 1070365576 619931681 89477606 696636438 546960905 28060294 74473021 744567921 917991862 244281682 602497601 575330695 777272013 219481761 635094824 825084245 567604804 237263886 627157680 153918640 540891942 1036013304 164683129 736971139 638688685 274390650 826604486 862012130 2280257 842849408 194563770 595103858 1040763160 395231126 416362736 122510402 693517034 562321243 936226156 620260780 483208328 890620771 513228135 884274058 766824074 686880450 604083678 573314512 636696731 648837370 259737658 896698897 892010768 530796886 367579127 1028652146 484107259 42408805 541127336 225992007 255014576 340104714 44717525 146977497 625483586 954841785 978890475 368242221 989351171 738486181 269607767 414429344 1031442179 67557416 626467930 131787685 643065928 222269639 647401404 781979859 19025034 871242838 119372015 146346754 730427343 983139931 98615445 592678724 543424790 1052753452 167582844 453115439 963897143 610328149 102765767 301975903 88795948 885746804 678632951 399962661 151244917 415588089 193313769 894711860 171701101 778269363 1029157944 1005809187 128386294 1031468394 361589093 179582584 726011484 705954639 720477776 1033490585 299491978 805824228 616239566 145494984 507324565 781033474 627074694 343715729 122405322 879890050 938651005 233108754 823686783 989714489 25598656 712942345 147100501 719309885 631649856 695388346 883156197 52667311 1015268639 544974711 378968540 728597488 64297196 287676822 789703026 953517078 131181409 228574157 540734076 842918303 856014512 540452920 388948271 791508098 353552242 391239918 805006889 258286221 394856465 571606322 755578904 1072353593 189391058 804464584 779366059 847193539 764103554 645356427 870802283 160341791 123611365 951934262 858262773 584275159 918467926 906609626 555828081 224878240 124167995 1015066045 165873721 839885341 548725620 995458780 57131402 561521885 584792054 892616586 741909123 1064216509 763825150 542962848 483939058 691562857 292423266 859095246 398995028 456445758 366181144 832251151 203982260 683046092 373316036 776198603 777982979 274542278 740372518 317855145 607018199 627913159 980395014 657878871 742950932 988394254 193377512 347405861 615947761 631625033 463994036 755718518 240496348 786011504 675776274 614381452 1035846647 1042136587 737730546 447060317 1062939102 944544838 1032503275 1062174063 801567505 142454332 305738688 349221653 595751718 287800666 308008440 414300677 1035529673 235364937 230884125 276589166 1039119079 394668238 79214754 20666207 394346043 885146659 662320934 473672824 980585625 919382357 966952278 560747000 969158938 870506189 147960076 871062471 254211905 997748982 117392218 666130955 985046299 91326351 514235020 264904859 42562944 985260111 534352081 409145893 740571750 748362765 761442683 597658239 917746828 753434488 231938977 848814486 726927514 747787356 517337052 462348115 468474170 721167834 107613957 976218018 531337711 1051803049 368108415 520496584 195148680 738519665 935031208 240759933 906003152 763801585 899427846 795647749 725780941 203197327 58451182 197814506 835729626 362671274 702195322 124880181 944396175 83862203 618275848 227540861 193338849 1054511977 713478064 1024846850 524239838 572467793 325253456 567750623 600481808 463055097 485207463 593030712 600518379 414062270 29747575 974441702 723716024 58647136 1023999099 856287899 629309309 870777980 561029291 650396817 759605020 534059542 856221447 1023719520 94903804 106431402 788593875 993975327 451476434 694167527 781055321 888761777 889744854 413296203 991636188 405676685 783886841 134996275 869572837 75411687 759132455 28512541 186887550 933930743 113854337 550163381 15776767 733784263 803733616 62530343 39220788 238767630 1029692966 1024003017 759179004 937934553 989232454 612211914 666793784 431903441 415375841 528490881 284145267 940865145 335009173 633557200 487396599 573308972 422004987 367383696 369687512 482037173 925745767 676818655 1003399957 704994038 395305572 712313050 505518332 908755498 837618769 781684954 978736290 875153601 511000803 745333798 819720132 653437502 338407251 952292191 297609415 872934349 745932007 796918947 84287520 979598944 178895552 478556237 1010345600 1061986072 184640177 44225639 925204478 307994302 378357238 531615964 771477912 299249947 622247299 860016478 725205516 18116524 844498225 89048459 1067084296 363118073 821827122 684126072 580694336 789783295 396142342 962890689 503056426 564449290 776192400 712521968 203138612 299476353 801575001 368302192 787447343 511668537 417152432 641312499 1067579172 802690564 37886688 1070834039 479775180 641896727 432097523 798204268 1024158900 95363282 672477758 928928384 32876511 730673595 466766251 1022752361 413987246 588409090 201787679 927733946 1024164955 725578788 608188436 194691163 38671781 352244006 352744114 983081591 903203077 911055834 495002547 92816848 1038135827 287839921 749128002 94830429 428919436 1065731734 296495298 756130140 504427768 289498189 86258210 736857416 944212948 529443422 121060797 450418678 491574054 88575075 598079296 692562261 1021344624 1013040392 140760441 655106440 985036124 257980336 73361712 584897351 434109268 90965842 940941188 1072540166 808581719 688802781 495279603 872505464 759037632 311071273 441666605 874338041 33116927 348627975 1038666290 846202874 139411657 906288891 273173539 250063236 202988623 579646736 1033271930 698456373 256925458 575675976 103507036 221755051 869434264 455748175 599617254 431943639 455787789 377309019 351420251 793026014 951212394 586944647 712802761 496047375 471504658 312613977 791214852 131502323 489404630 149223245 329637626 106517894 792039534 735393686 111835028 339495410 335327200 537090651 95988160 249006211 375099188 152041155 426267859 228473758 953920762 412378360 325300768 44086241 18810359 153610775 248104764 1044770326 284145620 66067452 347357791 773121120 353461681 262513752 63834953 831046212 210476753 155745438 861683626 919323765 881829539 925315829 396797212 322445232 757127552 795335030 507393629 704838589 832516610 196594358 1069134861 823784111 929196231 23301360 1032087813 171564493 991911988 1011081587 276203308 24236947 811478245 691185302 322448593 54536751 974615762 995781889 345976300 96839716 284162959 722643877 296685180 749348041 694192991 878535024 613585127 826625821 924911418 377455588 603793908 624887133 1002498182 518675870 179586968 708747352 319279047 778567613 1071932938 879436054 535261164 782567563 572924948 496965759 206831520 824375967 213972283 539678459 153331676 1061958288 946677514 41053409 864808403 835779108 977268310 216223654 663953787 835130858 652889368 468674903 46420649 328616439 112179261 888200854 889251680 43975833 328721246 399047332 232350998 552925582 603151309 867987634 858392722 1049503962 700169130 55132548 386145987 449359128 872577888 119559986 1047453403 553794310 545501809 1028272836 1040810795 532296081 1022517035 369171385 391893801 744600603 512017143 693067757 1032754675 457462338 55915393 1046274011 14009559 851371149 952289503 387886699 90889976 962941155 488869425 407268137 819903942 517424679 854780747 9138918 642391149 748084752 253239592 479884457 128144603 292846771 618830591 537491177 690121752 657558416 46144094 14002830 74543827 362226003 372694782 547411048 296270717 792522407 963404127 281146243 327011133 883666768 47292471 576556891 788999886 118550056 215274356 58313772 288438046 553459998 134268709 291383330 686606815 979041145 685474777 839226344 983952116 936462059 895581616 698591834 1049448271 981901876 161865560 18724788 94829640 1041353954 1064005375 980863351 434598330 1015488178 528141446 1007322527 549435581 59584280 719744117 888044418 164565323 528191254 278579815 872038862 11290723 947380509 935256342 1013570775 9218194 944364892 520589876 721443038 259259356 223013734 353202908 168397823 221444864 106438371 84732077 729245640 690156775 71967230 423434252 464512120 575165353 600138100 258816474 687018307 560821803 218599478 573430323 444819961 427057235 420933313 761018525 555177431 336978854 376297631 862894684 798672135 179931532 1059023739 680414905 603776446 1065543316 269880060 141997001 566467143 748709018 871307511 290361206 433675434 866565244 461568781 225953563 175531585 676010847 628410393 651962960 662637139 860745162 1065874028 806294078 649596129 316996543 135377709 983321636 36795140 78132538 25451467 577876467 663190796 132229044 115821115 46265847 801392437 791127509 618760475 57459716 634301464 1054099576 1037675337 644678639 922645738 250298366 168288490 601879778 865997108 287587028 285635044 865262578 483923936 904413245 1069171333 202796068 168029297 829738265 91152573 657546226 958450619 737056745 1060776828 456296452 349158976 553260342 413987672 806176508 1009165419 598446549 360402314 623397424 106573166 691173284 529945588 90517095 452275475 496722133 846124245 415896468 720142538 882543905 365377975 782509155 145760278 846332943 41453697 370883687 956099549 395261771 55926255 261564113 373844241 513424251 748950527 798802749 143158857 962817645 715363006 121804741 908016349 312939994 571101639 230026267 893620006 583577214 45436236 751045927 865776914 886934956 673686798 432291882 688615420 1007523350 513012496 517786563 500841173 246260703 1058151018 68450883 217643902 452834258 556252474 917956693 134274776 483189397 247031522 484820407 840884320 984623720 367228003 919416725 197391314 1064182721 859329778 69705435 30569391 588730568 579373151 794784119 143451605 654875259 482695614 390283846 336236945 747163475 72320796 1005625270 491958434 723279566 773065579 762230661 11175286 430076972 375083339 123649659 435934984 1028209500 805249946 587928225 233529848 512736626 19018564 1049254075 929531046 220269519 529261225 500511953 455114410 698530400 47036499 674286175 170861368 643348032 780365720 850298528 659772303 588156249 138522995 358946379 909303254 935298722 628314143 996024569 719927177 128187703 797369048 919094733 51451294 773860752 511606884 870284416 832524745 1015368947 364971556 999798736 896512675 1013843048 942167111 129328609 456048127 475253822 547130636 186918772 530449971 237282493 215204227 963369451 834662047 509035636 733447450 34097764 55449611 491295676 88408515 674590 910565755 276584632 508647209 780436309 250835131 345088103 145556814 331669949 153713762 521139812 267666244 104271817 824253246 488836002 103666908 532165982 813934004 393323881 127303220 141749759 617691473 564987458 999055790 637364900 877016253 613661677 592561338 704361755 551118104 819907780 588223797 282726447 643099071 625807738 882566059 246248104 987702564 676208176 816283884 267014326 631686536 951743035 14497912 957824612 451776383 66751071 928421282 408698294 705460742 934936662 110609038 870691174 1047328668 411067678 417091808 870352897 820454009 3403966 92639534 169674837 737360998 71334326 51856768 579383890 356017362 882797474 305087637 647684318 803038224 579016632 131834663 514008001 207671802 66850238 233080718 392685134 553182120 871863467 380655345 900988258 22255296 35098991 185097027 918170478 958696889 640790955 1049369590 788072025 665624575 785643909 598058522 125666550 500106850 398231778 515997980 731020242 498998288 119702523 850922456 903240236 233725747 430000892 290235231 571872406 615708633 707645652 1014952561 599245174 437210802 974521033 995863347 568493093 479920831 1019117134 53407628 407076238 689379960 559385792 1057977351 849293533 917217372 509841232 233281849 508150400 898226306 578190652 207376685 338231076 820394031 752957055 869271350 794519317 992836025 506247175 446202646 90520253 795176665 816352909 532958690 374211272 149613807 253685394 507740797 32060043 485425031 220466295 777132096 327872679 939791357 194268984 93473477 178218278 868492747 941707963 534548682 951008415 788887528 344120103 1051199685 1053358583 521404017 786471358 1065316122 1073074651 945189328 59797386 414970111 97211512 562867842 1059040669 866273788 721102999 166396072 566870334 692929340 51066563 216353240 842789513 276139943 960170138 174275656 786911318 22338563 901029245 409945656 742384311 231588787 171638391 1021483738 647387164 10393800 376096433 375777567 297600024 303307015 353136785 776514205 716639816 1016839985 153186559 719397558 932533611 386560332 696816992 91025833 329203852 724549215 477522083 170230103 567307071 607176498 633769348 121459854 241718434 837266476 911423175 594435796 899975075 95980928 218639277 78829540 672358744 703230955 938764717 187636125 695861788 412747105 235266298 623858735 778613876 429811520 31962282 38649001 919200472 403162362 531690461 577366596 226171543 829451746 939891068 113729992 837493263 313240561 687814317 914006275 724140488 130761309 87803365 752225060 749126271 939925997 312111984 207133559 590056037 171348034 928445671 1056537477 822836892 1008355393 19284268 212483422 936170641 103919500 557653802 268349664 328818648 102856301 616682358 340558902 864926099 591138147 741367891 321212458 518870551 791240099 83553671 437183061 924189458 508787705 736803348 890301387 856458721 251844939 679448866 329288954 672078591 922093079 774429625 580716903 47024537 269690605 26336742 268411927 474394044 739797143 668350111 699716621 302921017 882255302 728607503 614138708 392166705 926504526 388351483 595097465 189296850 704222718 122903182 980117162 48756193 198279165 91792124 777645598 780023856 560367609 937270278 235675515 184514169 423433205 931883462 157360237 846781468 32106267 1009125211 474476453 625437790 57798220 50864778 1005399510 826621579 861819700 294858826 399136046 961526784 116609078 377494903 53288994 572672427 247119779 629798530 568035804 532007224 130786540 663531462 416184916 507600355 1012903130 992103304 969548788 860681308 221080605 937954355 786051123 253214647 1051173421 244070428 330693160 194020551 633181262 784108856 1066783704 217888580 128633218 831906651 860707341 502790577 364992319 805236084 418508021 288989845 667323488 715924973 652226690 625044740 524297931 631429952 290694339 979684077 786690995 809993012 869357845 50011083 173128157 701044983 369181139 836489683 496921511 526714294 944777221 567897045 414156652 701412845 322865276 713034195 181731245 914951374 143293954 240800345 408240960 42309325 122390011 317403271 1010414282 333255085 107098620 203843377 462712640 667189249 644934320 227435083 763511391 680434066 265128897 45083653 983255751 818503881 894625556 42986504 967852469 204417185 284222499 995345330 295794667 611222858 860345330 203896814 585022083 231549339 500951348 537345099 774318487 341070162 768915885 610587163 983137627 83903544 85490725 148477599 197984721 571099527 69541415 518092638 95251641 557749312 750331064 474085117 703392473 621158926 465214740 363979138 945648221 133858832 1046705594 285027341 789666757 346163957 763533810 1059842061 355115600 938648733 107911474 755414383 451609963 995018549 650482824 800459664 751874630 169650453 1071355464 834748432 891623933 173822641 107311981 802855922 559986412 332543030 310360900 22899587 1049675759 960652079 421699635 962463618 288482753 566389388 859174136 466108050 843037515 632467040 658973858 218029854 315646790 673590811 30928432 1019842282 806097653 567600033 155886710 960452156 691994250 359324410 656073782 973978851 516067668 18383061 843516494 522564271 799554910 980556028 1064478549 1091405 130349159 165620540 237315649 869336204 458053883 969978636 11991672 654259621 969331692 332065719 419879012 632331687 546786421 782925369 873989332 820369519 317327821 394041087 945916490 227464714 919118172 457965880 535624570 232507426 922206674 389070765 849408674 925797903 1003074915 633334052 246472044 1038197734 967625827 905575947 967155161 642910976 648171724 228668132 1018668401 670660586 71313305 1065817118 857252547 1049629729 145854355 340792752 365647868 329956636 100303197 1035733533 432477232 663596407 754659917 570023212 129508520 33583615 544563182 383827267 334050933 204523974 505103455 801432665 978489828 724568548 536782623 789449284 597928515 949899379 1016476309 760079455 1001751862 830990507 441339675 945327038 150323411 642541601 308185017 541941585 657544755 244531005 9995869 398297592 840653637 120611183 968989620 231243876 734448756 306386060 1027786093 127361130 558322172 254099048 61587034 55894430 969872350 229903632 373306243 774213362 263749406 459519332 91863831 383343679 548145940 103789602 256629575 361675608 912924601 708731937 910495356 530551096 862628748 459571112 971528394 600477173 557661875 539273826 142525753 545256693 85835691 359719498 865499161 31720745 489105328 809760491 709662049 95155453 478540364 10614492 783808534 138847915 626099618 1068326208 517131502 736829928 736384612 823808555 554255461 693433740 1049965733 336033527 775194942 566127355 799408951 719610694 389180248 280259896 8256049 1017144434 162354095 1002442947 1051485098 916067355 546636457 954418555 69199572 772485781 173118433 487796938 754253531 41778198 367376788 204494232 698551867 92028762 961264818 308519457 558214978 9797382 540056558 219969109 417802000 776289685 593357569 463964438 7153629 651667519 6788450 720219628 864043212 1054758443 288728887 885591018 80018866 791038705 160393621 795909745 514397466 572520026 848322617 487815225 28556337 1070510795 161530301 533859111 476888602 330390885 821305184 628068282 324298033 1053903889 856706249 914502543 722931661 833113557 969137386 442691363 1060512600 421472739 353233288 596982895 687212220 233469509 33101382 260727936 96270966 534042340 193094235 413549043 862620901 262074548 351743763 445177909 472624986 626084144 1024718120 384524687 870173550 753687678 539300797 64233217 188512495 91260644 218971686 149014212 756882523 545620140 257690171 977021546 832170525 539485044 674002157 448139348 640282461 983657340 1053782658 563369676 986903113 422110332 863834054 371570410 807423823 672214834 959485074 254302170 470724413 143861811 300440651 7513522 519840702 366107574 790638269 848001982 549228103 112311656 754338065 506741278 460821216 222406935 12783541 114185170 308459886 80455992 642759525 8527478 784895797 430543417 176854161 830475713 308804072 194516125 153715455 731554960 492227685 993361556 742268402 751445220 934752385 95860051 887770240 858582667 819081599 681383016 1007687913 355031547 982899492 738113846 184833207 1035573654 939267049 81311998 553102729 788042641 302973869 1021876995 257359682 562650524 230875794 994086490 853913191 340148533 196393308 973402972 338169701 482301613 730381737 847839192 636596066 639942959 527876649 509778688 332245045 421247062 819257773 618782468 310351598 978681335 790568423 408077397 339481967 85516846 971545028 685470358 1012528682 752214130 44977291 948799524 89670867 874334120 287269127 414613598 882727615 935754221 319987482 190136674 245395819 621637506 561152767 552158171 965623115 931021657 767305504 1058165419 481499943 280368908 727862068 1058993569 758201775 995334940 384624611 686468055 124485567 706288227 547084930 323994626 981753779 137416766 23951770 473555704 804592112 936046929 1018839182 706702258 489430972 787182510 221779093 756878723 434159563 73207451 973684112 730096351 895627816 337845883 472641717 709005875 117626017 233442493 205968478 997835591 274372604 241000591 846520499 422662650 259124738 1064704233 567987862 253938269 747402495 804689823 815637869 707686040 543971023 852905697 1069192611 516893870 639939917 231673499 430521474 1052812320 950306132 534905979 358963884 419570055 245149314 178125916 110172682 168313823 833328926 387598136 1060111300 273380709 624770609 993589893 42944708 373744184 138586194 286563701 316170486 902660782 230118552 891228195 603920241 38098678 198550830 487815083 518042895 408928556 608578994 61144322 508592972 190487236 947068712 743287516 924788457 864186040 612163570 968445021 594674612 126650648 866930197 812475983 238804553 935731081 289209064 302778863 521495210 15322625 450133585 842917006 572194375 1049309281 331550670 573638739 284118771 815214418 156922935 722128217 176958439 708140779 770821914 366792066 543167439 1006236959 776482418 14900667 243603592 1048607389 296696517 927300329 41202863 271716839 746450442 293565959 527902919 1067101245 523971827 222838238 204077762 233540992 539008032 1059722393 901432992 571083177 565855023 793079164 244321355 793185200 671671603 475247081 450693391 379492609 499957296 86659717 111417657 535691275 805119971 444920297 242693469 63573401 36094011 77859195 886771416 1062463187 874607336 509298684 511995601 832539183 509840423 340249658 381670030 323841676 339932171 394125242 960204547 398445876 705960421 875614995 330188900 635852445 339705935 149888375 169681563 25030662 31083101 476325062 742814760 818815518 820029206 249455253 93337498 763437127 461153643 96218215 280396304 245253828 72334022 1019476170 903055679 563399213 439382386 37320357 99964789 316120917 995171444 543549420 783638703 527611253 132573126 357334340 556607023 1020233294 191552008 503082480 720528844 40689931 249141726 485250922 550377049 754205111 979591000 308369983 742220331 395946680 893413185 561745113 988310542 528312655 883045997 18045317 860098240 134915026 9487052 20218462 136728175 189613624 716488310 239977873 1059516214 918200721 187175550 4905755 298391819 456681865 433239465 1038681764 590367170 302034203 150884546 509740064 218066474 859808664 407482016 1010444158 871092524 884731414 765980590 720036488 235978102 182342366 691073525 315151453 620010661 882181684 69724478 677137090 509578046 381699080 414542124 16822385 540371322 72845299 1041466288 677368515 216118795 606138973 68637586 534064763 616237667 1053848660 766506209 396244960 757641322 1072732822 517317775 113483018 74103455 111883503 291144734 210680173 257284921 724759586 989775014 514996041 986876527 462366130 379756227 376977334 87358962 90803027 276136020 576080037 95698486 295485341 4509206 242522269 339060445 295155876 251121489 582266777 388880358 1010329621 540876356 866320659 717158334 680200919 900506175 28775159 919951653 305488196 871279718 914946489 1016322517 125820739 303736174 840128156 120675933 921858809 455318021 1041966224 305300601 248021692 506068393 756793692 385008032 449382874 755557365 216847152 896158847 992588006 173457035 626546827 1001286356 51602557 1040430221 890620654 996063956 315024947 164528754 47354950 825114113 426712190 1024942423 30434290 940813061 986424689 413989480 322816860 492672975 575392519 893301644 711036848 813441226 735344340 722391000 821356305 431838741 511065519 1021166579 632549990 738843239 487627612 969670993 617358500 535079972 246095517 172928920 1033293346 896469369 565175648 15482859 329916489 435336651 952137914 1060955272 583929226 108946460 313105954 974256247 74576894 871853743 817336654 836151370 488562483 740064228 950640875 831794852 644749462 1034926923 644863547 51733771 272617958 577723256 707470951 944929028 674995674 1006121487 661028628 594015086 617332066 421459770 658875545 817006207 531732535 775945275 902964051 961207098 87284159 347229604 356258961 114862086 424411947 138603726 474744068 252365347 129896070 552826024 333088780 882771677 104041839 778876114 774074800 530706650 990903152 1006913980 652436097 1051731123 804058070 596615870 281960659 326726509 924680236 188834243 1011790296 118200904 419416721 275685857 607534086 47007371 720737288 835615192 543949701 13858602 78857918 1043382144 158041040 811812997 398997986 697535800 402713651 574065448 897205344 1021091472 660718653 500410808 378823716 642252867 68136237 48726409 701565901 243496753 720201608 482601148 34564191 38810863 611528887 948118669 302193763 571555134 46845789 735636841 149914839 889587161 755583904 899254371 869007699 1048322585 560006063 648581046 667166629 945627614 396663763 780793482 269717442 179433181 515670987 795543024 131637385 831770354 524150237 441111630 54366288 564591788 613309294 768689490 163594623 280053602 249548477 487964684 915425128 845341590 845459573 494611860 426075635 991891836 837605122 521887908 681509266 742085162 350041574 914828578 891901389 566155045 428792548 605567743 346227044 863246703 443262462 485987431 1044407268 27192278 145663044 546912147 247855665 543820698 700808245 55143962 504038571 889957675 690766660 97296243 265127678 192279353 122347540 900273122 655562399 41464658 622399682 441082034 445961047 195870556 895953864 543748064 662109316 42033130 156113844 500568842 851480751 389783550 662384595 870403129 1036759962 259217835 513160349 62243988 113837154 437459373 143746716 816007871 906283822 539040343 237630462 620073946 27606625 974301906 99853285 493119934 493108612 874978112 727013340 892874341 319865124 378268708 620906014 227012560 574815426 48687746 1066701363 632040626 104026606 915499898 29256761 733903330 213593230 172133804 279048941 649155820 21866986 499908468 1063067037 974387152 209167328 817978661 207142445 425449975 630404315 318791067 464767618 899215428 17721526 994217803 119962750 462120412 868205532 444200509 502800643 388904773 493503109 409272979 338541895 906411749 280759471 694297675 738441845 368136048 883881052 934258620 560944258 750262055 189096692 623916256 1034931736 1030768764 364981247 1051884231 173121361 488530437 601713802 179431086 84368121 304384793 818353957 525876072 800429251 303243060 906370955 769071667 237112913 729069231 349713989 382932449 59560363 571671339 891066632 843690823 702316375 979054318 1034648030 687766566 196948575 124594939 369423307 507102251 983826034 838418109 653468596 363508259 920612505 511378655 315004098 451844570 573951643 24025796 647783112 310069244 807077126 483208588 98888340 528897697 324911561 590161631 410300741 147236641 267198714 683540398 361303494 598594857 659461508 854823405 969511218 399983260 43778995 958473412 801377812 104808554 1069318768 740764357 298812801 714679139 593373770 264055691 420734285 640690329 281366550 643270372 253282265 732018548 810085888 988113762 912551032 763335442 743121268 695741275 550732940 713931791 863629850 165261221 1068551136 194694786 251378674 261483850 826308485 237201571 161526301 123832477 490697290 1065777903 995270473 631278705 933826776 294944629 546020884 128122519 148040282 7436261 1049247510 144545780 783427220 24967288 455162368 16069480 634393453 687825525 1048538796 467416184 831161853 118955156 471934315 308064913 73701799 184180373 540922563 60869754 96223972 531297307 765863913 1022446692 358351369 652793146 271881236 514353788 119738830 225431808 862399029 582821693 7689875 762380470 986801492 771421765 917776622 758332106 340369474 639572722 235712931 682448092 611425983 707907755 1021885157 444547764 1038650620 687727504 840410605 416331348 344885335 163745382 707559230 250452037 750948707 989333571 578850589 184246434 382350870 73490255 74593749 399111767 592285131 588640776 5999039 700596249 212926571 186160257 506805182 215553917 632045662 101724143 415724068 806614865 410795827 104794864 275258432 723556800 225561656 458897271 286826352 243384965 339741025 759216868 497280504 18672546 974356593 942163063 61663968 210306755 982450766 178532151 293873665 429541836 471206483 561021499 567373024 109389726 765290681 626634976 226579497 915189569 862614739 660236902 416995655 982252223 753453666 493766978 546729395 739281436 427454834 637610604 320684189 856224801 575389676 363235066 63017625 909479856 524842094 273085588 871929491 1052776321 873128527 485352055 1056572689 335754326 323110861 587287902 1052794356 812353664 169306797 975777857 346735782 378583295 355468370 908232019 86436642 105745424 413393846 566913222 509996293 83358541 326265063 1039321429 203429364 719432796 868768060 899279104 643203147 252246516 613707699 571717749 654820934 441748143 804154610 1018135643 1012645349 418917706 629846307 468110811 237459739 866959556 546291800 272210021 238682662 232547771 808647352 13240808 1035411145 557165741 306292376 814072525 175277644 818911640 514162224 605588305 1032470208 516297264 596073014 583416672 174991407 502298444 200031462 337782296 878204482 174502167 402212293 530539588 1073054309 1069321476 963229634 308849008 788272885 680861207 498631001 602856240 570584189 215428160 725711063 741546425 807179213 961288620 45956113 321762727 689479923 658896541 450096427 39748418 1033167603 641540063 865580568 312147175 988675543 315632084 806180154 385787908 596571426 381003384 76879174 432578206 749888280 205902123 108350615 341211914 499650940 853641018 97898273 709019835 560784162 789352963 326909265 162309519 200970166 964480683 133093658 237123636 194741695 402744064 20500419 780915780 311991010 597651158 926709122 285682748 849332828 934730384 554232465 700607090 206031870 262407155 1010877289 732377201 333157196 1023218740 394178982 1010493838 10131714 392906589 486877891 510907381 1027293188 734583916 915439374 725123396 733917687 220238001 795078922 838957585 431171544 923545253 646795388 249305387 279174280 75510771 645511600 710613616 553664499 634994196 613242718 985919238 953987296 84078720 1069934897 271905450 253033642 808464536 1044409765 761366805 142093243 861072924 832676400 901526610 825178035 922209276 450679354 10314462 480596314 440709042 425977322 712854976 322820196 1057296171 851744423 114688066 339285390 67704837 524373749 255535329 209654060 881661581 505081546 296488725 756025566 380651266 17268380 353028047 757710289 70232281 417577035 431076413 550814283 169164015 475069130 527490497 301544253 608955474 252340411 944924187 826628495 682405120 378660095 130793300 331640951 1030048564 925563204 1071023892 359939530 873125817 801830976 860504706 439060204 751553521 674318450 677987032 402970410 467646350 77064684 210928449 69881237 759061883 752742137 993776284 825606634 2755031 600901932 295054993 709877409 294667273 856755141 864945139 959361146 174525452 885851260 575388885 673563639 573163235 722351201 753417607 491691164 865804584 18124705 73945008 265509438 676786074 723543388 960135504 165157585 106480345 582120547 857453593 650198348 605335313 411922903 723774712 468023991 223878503 178242704 941467144 62346731 426359560 587031210 842430296 503559980 391585 611919591 407043395 462253542 220835989 321911747 779696424 73569606 59885913 442400455 100535048 109534637 489298691 985326524 26974010 1017436811 897124889 810025537 653804171 806175240 1019961386 323332350 843509101 299663461 694942544 930611098 57459673 369843546 886702934 111642856 35428506 758427080 62542075 646526531 364129329 286813375 986294409 103512054 773660916 279832567 1052670097 271155145 141183747 283059683 1030475031 201015727 938243372 952157593 907146983 927838423 876358000 413634665 443371387 158912493 3498358 578065327 259056626 710375880 912796338 934544198 594125920 777488512 970617799 613014822 895649962 322489649 737596128 120559424 974076776 470081020 48263095 1005921510 619303355 563070164 812863558 354300450 566531272 438041918 488130063 561633186 876456449 459527378 213604490 71321397 626682806 769165312 475668669 410794363 81748759 663349478 728004991 966162718 382596961 945328557 668871027 839919417 568877525 1062757862 930232794 203718776 849222602 411197233 299370783 843601177 813410550 870342869 59130921 978402026 623756014 541795915 370601149 41319052 817010239 175016984 1009435762 932282659 465448713 1039516714 543095560 77588170 1032134140 26780717 637138002 777591879 594650090 568358161 22989517 1029644706 890409026 6175756 92932870 125580619 658144750 639473963 666223994 787607879 21871001 253938151 669574274 836237647 1064569471 599665160 310154681 348418670 791170920 972441402 409651273 674848920 1031080708 695956278 32987891 243357066 657225834 248135679 572721646 855978661 1053582901 718327065 919722946 468632345 584478947 121888188 714585405 271638417 848044573 358935103 250123799 711514407 273782417 343011968 741070170 351137281 1067617672 678108757 397290267 797766528 640329291 971005056 240131859 37034558 595442150 647480882 943048688 1022188204 596506214 92385928 767585285 501776897 894208033 504967940 27559929 879839649 395048510 474254279 509832512 240467408 1007168769 257047201 791088305 918461980 846453085 692769349 204846525 1008010855 363825908 856729283 148978514 872972283 484678109 941218026 654058502 61707218 19993281 710621424 34578443 712299451 732579658 520803829 244096855 867995753 619364967 805161840 859985734 1012299426 843488376 477594982 88685399 142688776 140940953 62020416 733148092 50847378 30285683 562408526 755792611 998182739 639828222 1041975611 990536896 910933966 907222127 209342021 613474089 1068685907 1035842831 559440930 307364304 1048315090 114241176 578194216 154376377 318614863 331276488 327610479 590660762 245997256 470779966 353615506 353490848 444424663 590167932 20069113 32850147 940196542 5460904 61990432 641310883 664736360 284539254 90707113 917241166 264589029 329036117 889805302 133839546 621012788 136214480 482632091 450518626 629472755 780572056 714397079 896002529 544193226 294053477 819855153 823758451 294493943 627251903 111873632 545874288 1042791145 32378152 518130913 182446026 564183799 932153309 509342426 785256115 981927509 381724909 141138693 530632679 14726251 808771587 947773659 188365437 451845987 961763262 707263711 410224786 653511326 443602818 407862354 984789490 800116078 496634154 614235581 609172607 317905324 994460780 861355454 988012103 18755919 573932612 1029812029 981545611 146453598 286620571 113630499 159918621 906715195 602466289 855375262 709002534 547652480 573484316 678759001 81806546 532491810 864434884 765343627 532204118 670953850 664897056 942239884 1019739016 437776148 315419460 374750457 644447599 756934713 1042883415 935536332 521802326 287184106 614016673 405427427 617450933 571229612 250859590 368807164 984902386 769412898 491667329 438961341 762335539 266502395 578101975 899328266 359200057 222615481 294204792 929784557 172032314 445887981 50052467 766330804 787413804 800749366 998999268 58292450 1019404933 1010553847 592104425 731478090 629423336 912913766 993582818 1048289525 317980248 855702107 672749357 165544879 226220599 80203440 999229237 448608112 511667575 383667623 776255880 1071816764 976377301 1072769176 751656485 761036537 579336113 918096725 396772135 674233132 37498880 459656292 973967447 985401600 772879989 444050554 376037189 285871889 267358106 837643426 717201911 423045232 751492224 533242856 219431193 206654107 146732210 479957005 662854886 311559036 278670818 1008970090 383729359 664995398 517216292 16448077 562687009 414236479 112792622 906558821 545574155 256604776 814762710 693520741 381828427 716600198 318131161 822723477 245296155 455671672 615232709 960431321 115921430 1065340341 205864556 845338089 600366102 337553984 777485882 409880059 633554922 975063191 780512219 287469668 686001639 231275406 757378297 197763513 364253650 422487701 1033569531 1046659728 1047329243 655544302 594201560 58430235 969679071 314266392 617933472 648997761 1043281451 318757780 565893345 565692565 17612777 30923955 1024011704 913223517 740861790 37154887 921995750 319075074 762140402 873948109 764229154 1016014292 774078242 404849140 4968700 614413350 637229831 566475098 1051594175 357873083 74074565 1012874226 932458190 236809085 810263422 505878266 338574833 537558948 931370422 1009006399 681720923 64224523 1063189607 790395107 966715029 624944984 235815366 620937187 1065630688 1048005505 847567067 446798278 11436740 52642838 54453257 89111955 507779063 227508330 186634586 230529829 11671972 308374995 486402505 864823784 681801985 327013142 928834882 14342325 823767115 409622355 403051141 295462527 320785642 837518862 374749095 219537106 408929584 679054322 352532888 468676092 389743933 888761602 470167663 847141783 1049436855 596147740 908022362 82126238 219919244 5723364 379419780 548884951 443384591 950639378 147573543 569017240 695262872 141966804 662192503 585189440 425343040 1072864149 96496458 135098244 552105737 1063882029 850604805 85203854 1002156528 1008562958 681917310 736424791 68526595 523677505 417582170 842523466 824826695 687503606 727703335 239808508 695896048 65989255 229559604 282927178 334609345 391887131 36389917 511289697 375914502 488537695 651231987 911359372 747582152 345259492 651880927 54891289 362566896 371921083 40872367 680705527 352735418 424287510 147819315 164784071 233548560 957454822 472610456 473904876 360901861 687472392 1060143837 786743432 697777831 112964872 818796099 90749706 1008109612 1014690230 955866024 398645225 1007573404 649401095 1051556215 107319514 191389636 1039319883 168746613 855977144 540397503 429057287 253468146 919346046 290772983 992370452 876803596 318359519 412686448 758373936 99671091 926025037 510132915 878591307 99073139 972738919 865746394 310173688 1051010073 1060875508 848533513 683758300 267181913 59668399 556299607 153550967 607520095 934879767 477828856 471723903 645771062 574556852 812159197 307471018 13315707 294038033 1027198065 539336850 819699890 496262862 68280370 374079770 889497324 672919667 509587285 805835857 895258010 466585079 955549254 1012940898 195250218 517561553 742917750 252134972 333576815 1009824908 394919754 263257472 791262732 561033610 550182491 411600235 729300573 438645916 298912812 182544186 1701572 27720705 745519107 490763448 871899578 646538985 999472301 394604942 361201988 1051160514 889099536 896260630 71836592 139383075 725631165 169979588 525800835 470316634 997154175 714173899 1067502500 116208587 401420298 250649267 978685518 52077619 1055563272 146023432 137665647 105366263 726015750 245918573 1044186962 186681972 162520850 933214281 331251646 210837088 681032602 838263793 809970484 168416718 408616992 988716370 82129736 327542654 42226437 722608496 496731538 968471827 430068526 85269565 841140183 795243261 312173586 848947361 368254230 880164775 664025811 872466388 594849165 448527544 906924515 373895176 979618356 260249800 675437619 349589415 987652868 199535935 1005095172 430706544 819935956 36601459 987226378 606347100 621895208 174618178 877931559 629093279 291688044 448839676 907739081 503346817 958540668 558431966 681056705 625337366 165171443 557886126 459663379 832714291 711458940 43156707 873803015 473892523 515328129 94225898 386558110 358485228 14132296 51269895 1015244740 1022060740 878733031 924934422 668027974 1016046527 74890673 146211614 728550163 89591284 978361954 1071014533 521101334 56000888 1051525119 575531238 233627237 641382596 21641934 161384798 1036554614 1034612573 132336038 826708036 693880873 955668784 899443694 173177861 100299228 279088124 445638729 885849824 334846186 56439593 706462722 810091683 577498755 865442353 919459455 548386300 409161994 255313084 703623051 367415555 887846791 433694452 807085873 444905832 1000441556 943863663 985970854 480514533 54221914 386751720 228518617 375786883 609280156 609576321 353235778 362404198 911131988 84492225 725444042 910375770 898591012 494454545 569790233 343285776 1047197957 8071373 175488949 384730546 360322182 119728761 204866622 987131316 460520693 420545306 861589418 1028258155 662233815 589147602 608689558 482045459 512140821 185096297 779258671 98147346 228228198 387594646 922241938 716659314 684601126 661694185 265534319 275395433 17518723 963074799 447142627 814158911 882554007 5047919 563802054 387124655 931127084 502912378 1039685510 653143070 210101860 725153649 909003320 976028015 773840688 798558717 220410631 76226991 244125412 1064120936 1019489735 278282837 969660407 164200484 527216279 356168755 398720145 552821763 589009406 421232113 237540099 308723163 690793503 32652179 275623822 38441963 364731027 747753798 727528045 170179647 901685887 622239565 1051431340 1056978265 197958114 206302875 451243064 746091143 366164694 700581912 157029612 430674234 877972912 550545763 958916570 20335741 798739926 722963084 287188176 399069403 1053707326 445356693 835451942 945562303 127460950 32923336 61371563 960042247 359516297 885263871 961225711 508665348 920132893 298947763 57455562 188547764 726761498 612682874 860722099 267009422 986531502 93283058 885940453 167845327 933131883 893654534 193900627 329106040 979923733 384995881 305937105 812993799 796335256 425225598 731078698 612247743 520821562 556448830 190430193 704081409 586632227 850937559 108526758 840287645 1346682 481015608 986022220 767940818 3778462 266159980 821473230 769965990 118436048 1034370026 197052304 152225693 1006608305 831120422 659108107 78141701 525225761 1070571787 865772813 46271145 236880811 927806392 213983381 836958815 1070177937 659137422 353410011 589648169 412307041 570238671 1067533688 44040938 462203612 254879229 662219824 490265812 5930931 396108670 927365339 698929597 444042854 94268585 1006504422 103887004 597914180 325472597 802340840 1066395100 1031046033 735398522 78021221 790098059 322977262 412826799 158389602 145270509 694448701 787881066 219019108 865521645 35294652 973825308 995727465 997313156 701053410 674720147 1069215831 540612251 542169773 667124442 959584030 305006273 31135895 860046017 550766668 442585426 308640059 1040085329 883204789 784292460 823673651 235710629 376828143 425913867 648688783 911027429 321970095 1051656602 953226805 554489998 168376792 580136547 894892287 240440861 897525394 912300039 856131321 730589477 463067238 572083391 61276573 298786661 42498863 917643892 952687983 509747793 537912589 583165010 236205670 655250192 347894838 865334043 621694594 254348690 549549879 598589610 937976693 1025836251 971508498 913442035 100002535 771468432 435413049 206702165 15858795 734622778 496345222 393274102 183193393 484917457 876351522 1025200782 609206183 947539065 233156250 872429214 858237688 742701267 604749430 250783170 943907069 651419826 373149322 183373507 486053723 354494331 192112239 668090257 1035267797 473002235 7951781 755542848 355968937 358547624 753284605 236671986 289764816 636252410 378588903 934490715 882608541 682290993 952407571 206756138 179234928 246956433 948598471 1037833457 168016879 978914047 103668813 694726708 286402669 938203412 668494014 917095612 1016274094 643835873 12418545 70032275 988655169 321170030 137140902 518793730 892413719 55220175 884919441 256877084 693657122 503152037 962726186 336816144 863710807 367620200 498505707 849620139 643229365 708711551 229286149 124586854 56943361 551242434 225078056 537442023 572003154 572401798 681706043 667891522 408694108 113486830 1039708565 150902971 1050568063 87607228 826507956 316426001 1071288192 946951989 177052241 608190364 43588164 485959363 816752287 917608600 1021168359 698054322 1062383420 136492949 706135086 855786808 453141472 369353627 853767632 397242104 538490368 758329479 1051431633 914311825 828368831 336730160 552000551 163101523 314727609 270658305 1022360541 892190173 434634311 7493932 938104338 766509382 827796587 763370538 270100502 944966176 167708444 733022371 910750516 479615254 790072171 72769428 510988396 57917209 980147708 139675750 70293223 333040762 398402660 9152798 429376071 437513025 520320881 687302985 529204675 1012123484 10507633 679274674 911863215 28179145 1029437991 599709354 710242704 99072758 15840165 711484378 497244146 904731421 930965402 910176444 876007 398374335 986274023 417994682 797242248 1041567143 186473558 588691880 1073327262 430035819 662590428 955510953 808646637 89135984 677241952 1012944875 224330138 842549714 148265754 479427178 768311542 504595874 274661474 772012390 280861152 467635424 706584418 570736595 194348658 1060613771 417165138 570911528 70498432 181633927 286274063 441941597 311659190 791436815 810451309 1017089329 1027541886 1042183005 556160807 1055409590 163562014 199364992 848975904 469380918 110523898 128036193 235445434 595541560 912197367 300135927 134689013 449252161 430768001 986888791 863754195 1062288207 487859546 1010191265 283075701 219797837 633457044 28188516 697187518 720940765 794633967 142046701 1009277766 955900536 835534466 1035098598 532566663 710404572 155873869 169994348 345624272 50808580 428546248 371848492 875336143 334484259 505865562 561631671 447974298 653558610 17754361 714555095 251485159 456387248 651069701 232743859 496121503 672111332 807760412 488165910 938045030 637733568 392637969 193938974 535126600 530032191 701240434 613564782 775830289 179797510 517133011 14695461 541835068 40712682 990341323 182007003 765835967 674296686 54386368 946645830 320128220 7845255 50371930 22087886 456648713 2706272 5599513 1002067777 823993434 448367422 1002757405 895473385 266478673 140881358 113815552 319278151 221770482 265485065 395593496 847117643 920791817 913095477 699234564 1054730339 285045994 282806937 888211333 302620521 695910939 923055842 152309073 518639838 328850679 1005647482 9258301 952518343 997881875 973717657 879058778 728389893 141352049 487582853 372318776 942696875 951368833 795779934 752341592 403224819 936097408 639196205 528256527 143219326 979192708 689436857 905318535 633892271 774109929 268891873 373456563 336224694 215139921 967477951 891538595 191601149 729043801 957845914 397157675 638234500 410694123 1046598381 141621081 190882128 719824553 814001667 248388853 656065732 267343493 618627411 176119257 318282289 109929557 955536908 492298598 500604238 440629657 685487147 120403521 655376019 938220927 478545098 219406851 981285928 200997941 847119730 549844229 457644334 540969018 242005443 25623679 730355515 722718422 3246706 945971749 358615393 122460137 431295411 975564784 277952939 77180608 651085386 708476997 127578035 399948606 41974158 314805693 351292213 302929074 568829371 127268849 480157039 404319731 306629900 581320975 147174086 598639845 1055334319 288448450 668142210 842845134 947172284 210588195 1007213748 260101869 251260744 107856326 562901028 738582632 816394841 632967860 164284375 214459558 13925157 749342704 1007799849 858375649 64601532 1054960057 163944373 399511582 81641610 411826875 246100955 896165999 413919377 389817041 992746590 817035000 681771725 578687154 7791157 175815559 737287773 945693836 715650384 394502858 763897560 200689319 836868798 6677464 659599745 460858692 790574750 151178733 886233636 49768859 1057412150 459490189 241293640 854617124 517063898 4345584 476592736 539144327 954955710 464443416 385628053 365528039 234135601 1024825085 574767197 253478829 909297368 326675582 318834013 270573657 648829460 757454193 917481109 50796842 661223864 621592848 1026028120 357690170 487833264 380845014 279633343 862219821 217663205 722070576 1050493281 253556050 39390614 807993582 823214680 178734285 162890254 686317935 104189333 152822354 254234907 99948989 1035157166 629288562 298700142 289402914 372639563 486704510 498530987 710443952 436057360 57601347 610217471 781439691 764131173 391702599 866527841 445530191 600141129 96182181 1023897722 528803591 800317405 120553009 369654802 464502708 345553577 319022684 646314794 237644853 1043960012 627459207 873974085 826430576 856291545 557759434 699795439 1064502340 598892711 1020790983 118874490 872651868 869105563 734107298 270260887 781845120 718928065 981972585 209451648 786068405 785790862 644952383 353543685 324251506 586349779 619997543 544868367 179483779 261079694 467835193 531477397 181996630 907543972 101340080 604520911 537768137 792011392 238474702 120072532 387639140 95939028 601815208 562040760 650533593 1007194403 809757555 477533524 279718351 430244326 627084033 282899420 902663960 789334887 1025292972 117052515 1048890525 89627203 552227057 1061251483 363323163 1019176075 628035286 527908466 985481311 981627446 1001001262 121078635 1053220870 327905295 936067070 769983236 441349072 225687028 234773540 480481272 536636068 173849624 725375821 315995739 708597020 866360165 467801053 828894384 498090928 593237433 794247075 985943217 658151872 864618662 672588951 663131464 924636027 713040118 296718964 713532531 728716988 533850119 242458624 992992682 639333583 747891130 1022447528 340783838 300713650 529810195 57294655 87653879 193824303 534510304 922738424 859831552 907342207 185151119 491348588 889972048 19269914 912774621 657743745 184451510 428462097 235947836 1018237886 193023385 177015539 857576038 1010820683 314221733 1003722210 533301812 648540279 980690825 76347605 977765042 795475744 653303370 444170202 577462834 448119219 955954598 735323393 1022395569 400490027 434342886 969817888 710457419 513103903 145899538 1058376110 430891932 564701984 507234085 245793845 884418374 415258905 208852180 534684642 385265501 972154463 206319400 470645921 573840964 455228583 353671909 21356344 360871029 991218563 700769532 978907399 71772806 207027243 152013514 426148342 106610767 54463232 369583762 895153488 10739238 306627470 97797123 725564316 928268503 177647962 505322189 139426629 653538898 967331879 643905283 131539495 264181081 379946838 1024187356 847476836 77481177 632498805 550950006 604756116 262817499 336435327 744759673 895353288 666206299 83250363 212718631 452152319 878242439 869847447 701883575 433867712 342394285 437374160 838253398 111509594 775680030 262010916 399161393 970307095 353643610 653659329 94928531 627133692 201180989 167703765 927755869 597694530 722869802 309583932 688844459 552043801 633477926 833764332 605954452 273366114 252193250 428743125 295753061 950487182 245109509 188919999 139751265 33991201 815323396 809905300 780108599 1065766800 485293293 830373362 235396442 82608994 241547930 270184944 277327883 483317756 204721467 1030021177 2502406 411641739 564865097 534312880 146700981 1055461208 97484903 710427514 84267651 750705878 105605939 821916450 143716517 962714859 338909395 904365731 355109131 599859098 191739806 73159554 571359920 591812523 278973091 1052702791 104684734 276571368 1071853476 1063656047 961586104 894217374 34068305 307516975 572276519 102493428 613275992 431010586 187270527 1021564378 646010221 748991085 731559134 179778155 454621842 975316616 259342187 267642400 476846458 1035726144 912278448 639386782 858667030 863840789 65233813 266067544 978783792 1009480772 756135584 214331861 650423904 879538280 848383758 831136121 8861916 388058453 318599730 21624835 538415642 585277407 256927471 485105658 680210690 1067650563 613961065 23195831 1041697321 704664616 330020535 932670199 530823680 781065064 690683501 382566967 911288004 657456133 1033130399 335388684 927414452 904703679 767740312 238439918 1030805023 236256247 159816524 988717885 968841142 261101709 95924962 1059522667 1048930813 394580850 591047974 895392001 682164578 508110538 749470837 621917944 335465015 894196210 514812336 832606965 664141898 1024847283 729970083 455325935 194101293 784020276 789711422 528690382 592283244 1044334719 530076307 170734465 200086590 615825049 52763733 618455435 951182003 163925868 839873512 1061973995 869919585 52184595 294214454 551217446 76651232 18188260 561864873 293317399 69652227 705888755 644819218 785444980 819171805 675865713 449012741 493658789 148720340 904624604 6371374 111327029 473743352 204130700 43094447 132564202 921757326 1060414444 1034788411 730078323 812375620 48641535 393883227 189233332 799842302 805317181 985571373 783525426 327314797 875582071 386700780 146581419 377995269 90673175 1073147323 479977726 1031057220 97563510 872736930 973665537 980100618 467804690 951682345 840735514 749368283 965296344 547269638 198697418 316670553 628125356 454897711 593074691 876926685 1062688442 264857916 691596255 1051300561 849805750 300504093 571785560 1016714501 1013226132 1033905571 33787884 316209469 248094796 451955512 82431510 1045561847 153558447 695711994 56637101 820254629 218943358 1028065524 591037050 1071786421 338960472 765740642 631256994 460583740 919972834 911434228 924247785 943377046 1061026729 65136744 209474807 556121255 737538117 253204973 9659609 710316180 663286578 514624108 694897035 818594360 137311405 104315452 747808612 514587615 857398305 38752200 50496499 854565506 358545759 561338928 497730118 3309884 733893719 688462778 992663281 1017925731 875776420 52103671 834324297 656517936 924413257 217615655 43095053 144567120 575675574 35803904 437948951 875932726 877404528 1031573050 870738371 216611916 35611997 487925622 186208524 757753348 1011286669 1031036969 635383307 772636768 472223003 656977081 943124466 979931716 582523079 1004323237 353745554 717184910 257123054 854796269 877705768 836923476 161607411 144049806 446054146 1024839701 480817531 219589344 404386705 832448147 971693018 607853414 42683098 1056361800 328937998 817872594 918879730 1022119604 160501243 40555697 267049077 391977766 1023984801 588165337 592620000 381662582 989765839 398852112 746912202 928295033 495788852 949756280 1029927366 76097493 746964815 247030563 55763941 1071214776 374306758 430442693 585582415 14908145 636726603 831457838 414595878 622422902 172262239 234739395 826548213 842112861 592182936 850036655 301655533 809823903 852575886 864757397 230703432 282418804 405035359 191858851 199680327 118720555 1001929800 575637832 634906645 436878520 913138737 758928388 644384548 426151070 884151889 257350587 450537647 344236946 560585617 475560487 606221460 994093196 566666541 286466242 214389180 4158758 1063575815 39968389 891932418 738798060 767464394 686980768 125302131 352971078 50083416 313150617 313250344 965481293 764401685 1034152087 664060259 433294654 188040695 270918218 468908265 281804560 777989807 519047592 330710471 999883144 595516159 612102211 1066026808 641172905 564515902 108249405 840599462 401998595 982983148 501090957 176509899 1005380738 470914465 346173646 471670051 97492696 711365329 422666384 832844774 1027382248 95012309 794797598 235831858 1048886978 871586834 179137246 138514795 906218387 892474181 237173068 748992272 4918712 949423100 170599913 794270077 502534551 441337133 271252095 260491944 476703826 745237579 556659759 679330421 455315452 176549957 654669933 560397027 845337267 939317556 501226063 860786360 83632357 973444034 369251223 216034047 1034450094 503176250 865864802 885705020 769673630 371347228 1025598942 255894153 584021264 857948112 871181073 180423603 958069437 24149245 683367635 470237488 153800145 900268224 44585865 144956916 596283083 432244153 628528120 234628715 306358400 684230027 766137682 901100326 511402742 247980661 431944272 48802921 143164203 480006339 695295044 141321605 523162347 936735717 628174974 326823401 941597219 1016996393 59203179 824410383 623335953 974326623 558039040 63516804 752647741 530039009 405069866 419282098 329900729 349271034 511461640 873857159 504798392 617517001 264325053 334125586 403960514 696181667 430848886 866443086 742490340 506719538 969541829 269618020 1024866161 1044688181 207891451 25167321 902852752 747042259 60638412 815227284 130167172 719642933 717971344 795806798 1027966440 46785058 891368856 705785709 1065600520 548269698 198382061 337681233 771078925 984676290 511712572 365030674 105097741 1065513287 336101214 905866029 1030914286 519219320 974452842 331040270 378758453 700426267 871683671 62345522 856690012 854895557 199091338 739163469 937844152 115824329 707055369 985178039 31089349 451855146 98220432 93344264 109748228 907038098 729414596 26838048 261844272 720219612 574096265 849518386 590972169 371921414 104522115 358925916 770445069 401481219 936737356 695650350 947383039 533871640 363979321 534246650 689126552 896280310 649174726 887098646 941473906 650941758 64593576 35281963 254585520 733516991 751522778 704589409 388698468 994488488 763622090 776617989 445315205 813751751 395606371 97087590 806569338 553555592 613828854 461904797 237940680 278710338 7411146 610656482 839719579 197515140 196839571 855906104 846420498 716359879 992389279 892625792 880842971 747514459 471364827 550872698 551762943 74259821 176970535 329503319 746603898 108577627 686541585 174599529 495146833 888386633 364815047 517937262 740693741 312747543 282977251 790916817 143613955 804827255 112628105 704433596 766200556 1043762817 544746232 477588507 943195265 643296459 257815253 895584252 727383462 472280476 232428152 315057539 726211427 618818701 347940607 439529163 811717008 311752283 323437704 689406773 500778354 412046273 848790062 383236228 113523768 256609694 879468525 536936106 606856814 443350456 895086895 881051304 918170348 536374701 717215252 1059551615 408786806 885563478 560073075 995228911 1062259559 712969872 225290199 255836504 984715555 559556237 14544462 164939649 762549253 687331489 960679372 468609024 722099086 720365897 1004043687 756428451 3266435 627420285 673612779 99440053 97958580 484231275 387456677 1051234059 1033325572 465037720 93656448 491395472 998065503 1072614797 1063850380 232233856 385108106 83578962 514841871 789272388 320331514 231009476 956577222 403922736 585459844 286239412 681830334 868878455 530320071 1042031821 589913510 421095487 542579085 5913862 24650730 112478142 867597368 483795131 308624399 339328510 130384976 354360621 402921430 134007958 618815766 748901424 515597776 42258997 655938748 400083123 208660630 775258854 812972861 673069808 659109963 207831656 488002463 552862327 230824481 392990929 26076490 1028212850 227829146 222453301 138630903 1023395751 376765821 778160627 178335292 567276407 901459699 838893347 456388393 1000431884 405941648 1004507711 841793518 499098194 304378783 140177959 1054521022 97306340 820887662 2238038 905620719 140766840 715719331 808018419 606671045 264072296 938903406 750837008 245843728 814806649 509289824 825459032 887714266 239801844 38139623 76312570 726546716 107687540 1046116642 263350928 652022314 1014529092 311380606 648316259 419162573 635106419 661533049 302781485 598178254 411592014 274261360 1028405232 407867435 1047576501 520854197 652723533 759933326 1033940675 980675710 1041970761 778191109 124570150 812915484 792542239 924872594 593143520 530835208 87072595 555187555 199861864 560714623 34418238 330426823 619490077 76621973 614586214 544436177 775677206 812478453 471551514 805320034 726336180 1028429624 507248169 563230573 590444091 622125964 645205631 998282424 976820270 656330532 99499811 433464776 326971157 72962909 685984350 243684805 570668704 128602147 445034511 391124601 663579304 649731085 468680933 677263560 363991628 302031557 296612887 506933229 563300652 1061008358 691844436 1015038506 504249977 19190604 969755453 202665957 276293949 424024629 402735880 263297322 553420827 732715478 164577542 432099213 608587930 160908026 1012904650 145688182 521884948 71072409 990516940 512292194 758367827 123539121 223605153 890945404 932973077 752620098 124485623 840856704 183578030 594643363 962231751 293017476 976401165 422434204 721882678 244823943 928717869 461794439 764407652 283422106 628357815 950092069 593291942 713904061 643027244 933582894 816518190 263514459 848399545 615250383 788971465 360505556 123624754 722994653 855043156 63410046 490912604 60235964 228640309 822861149 232765552 219759571 544217674 92469567 263118162 698113967 625276735 469803883 589288503 222358046 966198719 391869307 485232073 96428672 36698848 827538936 695320476 491345698 503463816 860714078 1015890675 811655827 769194532 61252014 888758074 923044361 622362246 197524240 116748656 621092493 722079553 179262776 507424806 168545398 232191180 351847013 901708220 372818632 348042762 729575807 794091775 639481297 155292673 265841103 504054060 887414021 508637461 855885949 377384502 559973564 650256551 992015620 773917510 263339199 495756144 200286779 742665965 475250251 792973425 20708952 47912533 77235154 478012602 936945713 723434608 669578851 311707429 822205926 741453287 207986267 585112439 839708345 806611744 741775129 836642101 37457168 9472551 799174820 591136135 736922748 221391361 905319506 1045529663 209011211 210536901 734413381 733617955 747264160 985996664 652288134 889153742 483270879 752776768 696291964 666900440 394209409 277638832 149903942 1019158189 788967049 238925753 598940906 186680908 1039851365 914157809 327560127 272153935 681478696 660828413 773988946 469115076 523074268 478368625 227439048 842342967 1019505171 255019989 600574439 218887118 778160726 467792984 732064450 375278681 101369186 61628424 507454253 646691998 124818383 708733141 530300863 309366990 858554832 485458574 547366039 514615129 296865194 245641106 730623777 469729701 130427422 100150926 444401553 418472645 991031962 203239795 865007226 874051524 200581701 520694183 283912965 1000730928 803025170 156716815 586600173 594121219 216761991 594317690 185375591 804689512 364551122 873269882 246023121 107838477 556291458 93423666 772885460 114668313 866939569 673909089 510066216 45942511 362819106 323973444 511346191 558452134 392127782 856590313 357444775 182550939 667520196 793191940 373044601 807978368 895696168 573125903 988345808 320021567 825693303 762504721 555676771 543149473 977785918 207492678 626311692 380542719 132728086 448388671 807526154 894155539 980106262 38215005 922051464 84780123 841955392 743938128 172466714 1001291256 77851864 678669668 618720435 1037744672 5121661 226296187 455781686 974852718 819720563 577073204 217817824 444000432 210738064 484919246 898923728 172968196 14165711 104160968 919851434 1025915274 791460797 620041940 993412816 631426972 277864730 377619757 84135534 1059498744 1021548514 302383786 332265622 401899726 1071956103 719473945 687943708 640958561 805998202 927646208 300694159 807567756 493457760 325014093 502051309 897646052 378898424 554727697 390222913 510665076 811043657 490416387 75088704 873907493 824752949 856294402 421700705 66465263 144873541 343229077 622654057 819093639 1047030390 871274055 105229575 1073583338 334142690 449875757 249154386 411504052 868051520 947510005 778549978 5699892 34183940 472546143 31441977 1071340308 956803777 699682295 113430472 293384536 41299933 330845195 938847888 106831855 248266511 903115575 137159942 316616242 525508173 927860554 583091376 44636878 1050564457 1072790756 815068891 189114120 1022441082 926762490 701242975 358703664 986111026 817363884 1063484790 542968210 939975342 688222007 286406070 332197452 465262663 666665492 317478833 297914324 359990450 46090615 2836366 356567726 1071250234 799683965 931452333 516398057 439299385 886134784 1036895540 708606839 767606152 439986611 116093242 1026733094 365325481 117908936 654009333 82088838 601728188 998260700 769036614 992782177 986788103 137100180 551422090 261411757 573565190 920676028 188322744 63314257 675687761 815148418 679488964 857522768 672123149 561273181 844261779 780986410 855194842 914129276 157872190 675790132 853752968 885536143 688670208 136397909 235837107 807776896 756854193 150351160 311689956 996202597 888460244 88845677 842982375 699401246 90341755 1064554935 540726904 303288648 497781228 190464431 435024387 303009165 28874248 608681770 209529510 736273152 689884854 942661219 146769557 998478705 1018936738 994901035 759376625 31927034 35295671 296613763 42305837 496866541 879240342 761790576 34194812 153112526 199437976 733849014 308506261 865342914 409628170 844286890 659242604 520097601 444032356 1014438327 216295921 937735481 366059950 663726290 1013516531 372988477 57965760 339420376 299584544 1032602890 322269940 1029816148 946043043 193186844 578579505 110035535 288836598 7896056 62679748 173383672 749376384 275439399 23997432 226680494 428915769 240154308 1028872822 439431926 841752161 646770869 346334081 406531673 159290458 125724935 969983843 761714339 597639324 316259576 424277638 439821745 53177233 393223023 302108327 415282137 71774030 57712766 395872705 471211821 247371866 767836591 735725279 755003368 361763132 152341363 1010486013 1029280182 488189620 970525572 627336273 786022249 853159055 486854076 230419864 119302070 1048848888 765436927 304015829 1062525835 332740747 278617345 11525205 396725603 527959017 14294133 589034248 73936059 527831706 626821703 390316100 96909910 202986250 679823252 403139377 227385306 611374961 235971283 627400397 595842609 854706723 922540661 517737948 1040439928 387607318 890546250 727554434 541113324 953945713 563998877 316490554 768308813 202728617 885280316 343118603 90665780 204166723 353582041 660372300 79569987 507258951 299733199 503867889 868103335 602273775 99078512 237826190 246888010 305145048 321254338 744479212 644938681 852061274 481308612 606004737 379045716 546661907 873886356 322998833 613515523 282757128 397922528 102270531 988790086 254795873 5881972 932310831 808333921 974235268 1059088503 1055269532 170662484 98902671 1018187577 104751675 673001679 940959438 816059807 143794339 432425772 542385873 1026111633 25371512 300055329 527316245 72055137 377228433 425564389 166376150 106031063 628008393 1027072012 580324612 936808158 880973118 150015312 885854685 632318721 134036781 724773010 1014565539 622102435 637584931 838016599 144434286 490625459 928003045 637972896 449564900 757736852 391298593 570441598 235187128 550135613 492765755 1046357637 291961115 103969622 495379807 59704904 376250444 67506326 185369762 670003746 626147012 80710004 468399555 511968178 741477756 339330856 393931713 851254691 946154897 371326422 140572772 170625671 767309466 858681371 908970685 57773714 1003800023 574846107 899915721 50880355 84135572 681841489 92008035 1054357327 191119461 389697065 992391773 752556317 301761537 578159146 127278284 439591620 38980325 244309074 198833946 213805955 828376688 544009366 616182212 174258672 308383339 293773737 1048282536 570298827 918398192 1010198978 968293568 617997653 248097192 198581281 941706538 360316712 243049250 93559244 75433104 551800880 1002692362 367661216 958478780 537902192 84565093 464372101 187076817 56969855 804455790 977272645 94537110 892764380 158333412 681899413 273338273 733481862 729462654 786135229 27261833 217640748 457392994 187112580 418151986 745001911 289946331 1052233588 18659759 378763154 488485374 592353883 1053836521 360780615 1041041749 192971785 81358373 421783141 538080757 47134319 1055021713 951605606 1001617061 255481741 1003384615 546864806 628522422 474429035 312115566 782330725 517664871 114052706 422419739 222859187 979792129 491604721 617783713 125132871 313885670 625658570 632999898 1033101966 924412458 694150260 111092510 418381323 199214647 632936037 1041508582 771242996 907552686 254211597 261750288 858940597 621892131 1033400102 957000915 594295356 38801938 297420393 530678161 34903278 129486578 458448804 814563769 587608040 411392157 132519025 899478917 554915751 627689357 951050788 802658534 899813329 600482323 889999915 782440998 626906320 19244847 559020110 360555255 537811742 127707847 847680882 789108813 364153444 306088566 290381036 94462990 394712963 429219928 469309828 974625988 391424637 113607692 389803343 43765938 705636109 498756689 685599472 869788402 618930147 967447459 813745339 814051424 394777038 829042965 1065184290 557507127 976976917 879780146 1058280533 758015762 505461459 460423428 1071975023 402772538 120627258 927586662 1013669664 1027205630 687551830 700205806 268329944 33909032 883465676 603567409 530063843 163507724 257653012 210935828 1066224144 213910434 955265825 783351530 918256945 288517335 887515689 1052212265 897657414 899627465 940263695 532477222 965182469 1051914802 442289842 111122141 641500374 970128646 945735976 463426268 152482977 1029230166 946909627 317230303 891947503 474191735 1067888203 912011415 285989088 39213245 541023980 687405577 193622086 553260490 404947891 992021722 332849086 552092997 128288736 814141676 212728564 832000252 463896049 215458857 790918401 375991211 646999095 84311697 637855541 618599909 219317991 307881361 504174772 226977181 194570985 471737135 981367081 951049223 229526654 990234369 64230182 985428455 906662175 177324727 844950057 405234587 251921234 229646821 352027036 207651656 1038885310 432213220 241510029 780080658 259377268 67781932 30866301 685549574 410318337 501666013 456843857 31801762 913893367 750926720 689215565 791742928 939291466 724257589 775751568 62896558 244890858 631202035 209858980 921584576 958569674 313536264 251658546 194904132 462633396 141844834 187004934 472234953 648752749 265382924 458685065 166143085 488984078 162487295 207679077 793512422 874693099 944065046 1057454047 138976209 458228724 120398639 177954473 816680853 1037118318 703502586 186493958 610514474 11910275 142043566 902925381 40950382 345612243 498785042 981125913 856157426 953395739 273085295 736327165 801861621 974362107 161869448 519979887 297127145 544967497 629031142 579737161 846320208 390923343 152489376 923692962 49545968 618856924 1030564571 1024288914 769136754 878716776 234783219 173877615 672820772 90027290 16955784 854603961 477028708 910913803 317514073 337207397 248042777 189475484 291222831 321555384 35455021 546024546 403032766 478155394 498811681 393555470 176144004 49737985 281922374 714093002 360928022 361376201 824761931 61203809 749504460 1024780227 638996590 380000272 504724260 817222767 783529443 618231757 665552313 743348499 386111245 365332357 685960749 538602275 904451864 629764915 846834654 277333319 874843790 14760463 921729673 277199642 223203386 406456926 158013005 275335527 601645138 654554446 1010518447 463040071 300230580 400799876 282020448 261963097 145346827 687221574 605782973 674863100 264159241 51527219 837626287 515530255 782794691 35629463 587754215 540311200 96367304 513799809 726860615 134663918 309743626 53170554 390849414 823334305 16181974 620641986 438969242 437473094 315922622 268204361 830078564 16398741 362076086 265221380 926339349 982256276 329078318 823520089 511438534 980095499 779564191 642583448 925618837 669006606 749481620 158552395 403791439 477267520 19898323 1017279837 982166296 391433400 394164361 871429299 8592508 756045363 692034248 676183299 490260698 1047035760 267415648 403313667 267003203 292149370 270572269 255124663 149116659 220040835 539050125 489819957 617325276 704008760 982039021 69685434 331288802 419946697 829146736 517827913 20687267 630199399 508984384 245305032 257868407 474220602 996113243 684435876 68066576 716803731 171775821 874662119 1006338297 873299529 895511859 309465921 1001114888 523222866 638029868 621445298 92338967 951516510 29385269 555058323 300129195 461513254 185421678 989959762 494269063 374959026 442844441 233387236 491180352 927375874 230861390 840646161 768415422 929132509 332414761 1073699910 806526013 709510523 228148951 983786742 259087052 952620840 953987972 687461966 742907762 847059121 400936718 594527013 142659674 85251350 563662549 1057611134 146969256 956084876 348087317 872006009 275798475 527872782 536179513 131048745 270894034 52971816 182315091 96113677 510893743 868975393 295984058 755268232 1012036930 911914966 372762277 207670955 962218875 960991511 422108722 384351674 82874318 764189735 417138927 604083634 780230698 1024794697 269581614 481122699 325114838 1057424249 1072183572 560199137 837603274 734174215 45875945 340977562 1009916008 1051966362 116021987 855188460 812193758 25075163 95042978 520345276 654481846 130711139 735684761 995619510 892587693 940959195 180380198 43572633 781696789 1050745749 75815789 699848514 185771536 384196370 377854356 296576898 243144654 1062679242 743788053 914088700 100895725 141868815 527682928 405254291 112927559 567868585 707390434 404192760 408875089 169840441 380159216 775437254 79781175 353520590 912083316 190737942 134851444 247320506 266242241 486911374 367026765 783748531 408612543 66823134 311913731 70114996 95378311 452538935 306258050 362027976 364485483 937830684 700408606 915576104 798130964 483229882 3892422 878362825 854224286 343419697 15251533 1034132761 726123681 606965644 428473259 1063869752 600523668 1018563842 828904763 1067492616 263964843 206286301 129127787 720907411 108172570 139613809 308763194 309920446 119956087 573557581 1060097448 364224019 923796732 369487702 301594944 150354917 316503479 912506116 679132445 821826526 235830471 336307010 653694838 210225654 767461056 248288438 207013828 356920572 268508089 766491781 456204414 681838891 359544112 914449629 994694956 1000996464 1033302563 805633964 826699373 834611484 859494335 788053787 953696422 766200899 381243268 814397879 5816679 473875369 222814596 514224444 148381090 808932257 878977793 381307415 189754785 163077201 1058912744 539339164 694389726 823516287 918703392 269301688 1802115 194725564 759060640 50478875 848438349 52853176 910468241 781441443 267146430 411075749 801412022 916444950 1047251848 792511460 1016495067 651923831 171445133 858161095 580288288 96166832 493290143 831171609 316122133 783309884 345277158 1007339110 455930991 745578162 732792973 858532458 865947435 666417464 899288917 366993419 273107673 218728302 17902811 332472436 160390352 154472791 849367171 760951050 804261662 931353258 634022069 593249667 261388010 981871080 451824693 506672978 876553814 510489262 197242538 742579555 459614183 778297357 174088309 1001241326 131294630 20507955 232417354 1002091839 174939092 701232522 725159102 985331166 712790731 100972131 520588534 194713023 731522971 135408944 1000294092 568333730 828294336 963323927 101430626 660418291 492690360 194896126 1047033768 1044817009 767427449 846633664 908139668 322115525 580803248 995625914 864687833 735323876 957492370 521308498 678892456 58378930 229280597 1028987540 474983104 91262306 160771621 1044112549 408492897 289512909 779716447 27711338 147201137 132144331 563702513 72654115 140722720 676923220 839842558 693024038 1034645095 309801058 704301134 336801702 912042073 1009526830 640883705 844052293 162938064 816940532 213588786 797042884 195178774 10770448 715822945 1013400974 286939599 829320844 923605539 999723720 707491565 36345926 127823781 456551649 761836161 441737905 554541623 457223986 240547717 480689625 56788941 498109074 871320160 347618577 40000228 393662292 1045860353 82647954 362378524 750310965 973439397 439241681 667490474 510765023 101264664 135942946 54488210 242813591 361073194 459808122 220591370 50771449 356473792 548566400 372773418 77760171 565961778 79772892 217815369 19966935 161574528 770265136 680268547 946072956 159489016 1875063 396715330 1054937172 303431778 699370950 404679869 590241506 76600769 807700513 604219432 306811060 773720079 423293555 484221430 897027348 660516872 677056912 76314556 1057702128 244932799 1049232266 861302304 449955047 784425087 208154684 446611385 1069304863 356466946 989148852 736840636 402202566 697930211 158431598 189824034 762915180 102923777 654702517 848326785 399184404 930854693 442328656 301804185 367728250 759017234 318708843 158305275 1033568105 965825158 198490892 939271758 1029635214 234000855 839772933 301948817 522401532 520090974 512336035 259509045 617543798 686405351 509120449 913325732 325670710 726837960 817560020 546302542 877179539 986081677 1068476936 388108086 587833316 882033351 726654867 684119193 379076611 28625605 258329452 641015125 890290662 82741674 204214778 407981774 287204533 955710706 654960159 322373606 158160218 969608201 648814607 270193980 346555724 584398888 312149073 829493951 828374477 76823439 467486978 836478392 88572070 37119062 685473823 275020938 855553990 339193357 948282600 364676726 471428761 107265231 1005938408 236095444 908981470 159217822 603766500 49602141 844153036 89651109 731948941 644424258 177457715 289546184 543124953 637701037 957564359 683673143 239139027 962605581 606827137 867228166 506766960 8569372 785313251 550395843 474039728 1044622625 414421291 557449992 653425243 1002879010 508486631 499188954 384096140 588139614 734696621 354178777 65724545 682936180 113224012 504139513 32254458 341254061 427217843 170503728 706878480 223249914 952925769 780369507 181454630 947674791 416263649 467056454 648349379 898037565 333519576 201039350 135691548 676824716 360173775 925068710 148543013 48083597 200660700 929149770 377487200 208776013 743835668 393618653 457035403 87743056 137581746 820130161 841505430 748058450 792714759 471620959 887767235 387364348 786290208 25499550 884024907 661457635 991454590 619013326 382024778 628442611 478110170 21179181 800602850 450767283 402824435 866465008 419130916 170755564 959722236 996658067 429353640 559921663 556144871 445961111 307755711 116905881 787417958 366060903 440473721 301306320 321794740 697219642 359620171 581620722 668659683 594720878 248837713 124443622 487493770 439844434 536640698 78431107 369825929 877065775 434770965 835470199 131356715 710025424 18940576 539129880 286376760 731869390 642665789 738154160 355409788 1068773520 525956517 451506030 3990474 895836164 155048509 357111403 917156661 94860595 760372813 226710525 239178561 110350102 19901103 629251565 494149354 586324601 214347180 568073493 915680321 729091482 49199924 555831429 929658924 1048430514 284483345 979664673 892139996 493914336 414619254 612583633 1028053175 389815042 8378255 443862973 894873960 448362196 395360117 207232860 660806570 472843894 168712086 715041877 165370044 284922749 72268415 682042503 468332211 581643052 306728326 505612356 523471323 883873537 32764765 400846897 32089553 958349888 119095503 828784973 730014100 263564163 262233367 920514750 523133179 512664687 451445313 176176229 412739927 729231989 661959387 95052337 525590985 890611018 299759194 202615691 272063357 782380246 53882578 965891345 1061548974 318269094 130689658 173617041 363850169 972255653 754603206 693523255 689054181 251892670 83365765 113168706 671807354 143033461 150198007 475269387 897274652 1060451681 229710872 577198579 53491977 660105136 614713390 208492687 566563970 1049783102 694987340 84265954 355856822 743885726 346193204 329261435 516175711 761879395 805768605 526749479 521482197 294608083 808979780 555762426 70456909 269327198 118461732 362103382 87253313 989180252 321764474 647844787 550167360 833578058 1013519359 170616835 147716569 882955500 885191147 1040347940 137133944 171230006 1020817078 453368124 429065818 1037969566 334937799 430786868 311087331 618134709 238262964 992367726 165466359 839439246 971983382 995189670 506528503 1057066651 222507286 201698912 469344931 299644841 952874676 151715448 188501442 901580814 358030740 1060843235 862434840 36497965 1039430353 974787336 932073709 582982634 377981187 758799444 335765824 702156841 816775404 1071149044 561837483 552053455 708689552 866679262 533687465 572404339 274149128 179121050 831808612 599788103 800955683 99382776 436837843 715131750 487217730 426760194 23591403 432471213 768710374 683469979 264068119 333458262 478758938 360375311 1026720998 884147912 445418345 551005120 755923705 352208208 173669798 739031723 820167208 613236954 852218187 286609937 650887739 402331251 857171855 260361195 250808944 451830148 164319253 110529585 106286584 720427843 797680591 680417615 952449225 887555682 633885405 674969174 428255999 105875695 1020740563 95440193 473826449 152285076 942599488 466093272 211562318 1051950279 157048844 684008185 543555200 236370365 640983124 296231353 385306215 507760159 200444357 14167679 264803762 595543068 252133725 846744829 96708830 50077035 494208786 772983685 489937861 204870665 848563896 557260897 183819357 583374138 527868944 753627871 583832319 8967347 548256376 524958846 436450675 254664534 834491738 455983263 810447162 441755923 621418230 1056643428 921099174 45279542 603672300 72933577 728579748 474344669 440294012 625206445 1021146130 615930534 560066683 910486763 14127218 526816470 719717353 208861250 869867700 1037319432 165335256 303763203 471400881 654502078 696848400 880355656 181704258 355007491 27154117 375228503 146778072 533765526 740762414 54184820 315602288 364664843 1026572569 787331546 1014176439 265565924 777070333 257125230 477770092 776117178 729383695 1006603295 154765982 23653612 457436614 1017267211 391482316 944977616 259198684 660484329 140986675 2038781 89138332 329408649 526588159 699580471 263640555 368207102 660188617 907581857 504220834 892745941 1028279658 263675159 598877971 788293835 717576332 62179319 218169800 116609564 338472014 29251056 936625213 212322201 509945895 204663010 796255191 1023492886 281041817 53913214 796378953 249682095 1067292817 1051999897 590408420 170588072 406476792 595441039 919026450 427411604 63686540 1008218316 1031052849 1057782348 220175072 158969488 1002841078 464084987 772946 559596029 272724233 347238072 361832539 717681184 442345302 625883390 820704520 359526373 122163149 533158922 987278758 723314674 1018503183 322461531 760206023 281950619 1030471792 556163846 15732925 864569468 555688255 745343053 1026419657 113574325 94791702 873735722 797057944 65056963 273847594 41198540 522408875 423837852 906589996 196289127 85523079 538921151 934884748 467299305 41480368 770994164 1046709992 724048659 868155109 968953018 670537755 496192111 730387203 1009297665 140908649 234124325 768642510 715265592 472489341 1015656589 404688219 319027564 128999884 87122128 123257642 731950530 120023418 437080224 444842319 308054351 216057892 296428644 483660902 436227484 81391180 938144609 659913334 915749943 719163087 716723876 23087839 926799041 277241668 919084797 388905750 195512781 321629587 930047479 897759926 80133650 43030258 190561708 600278736 446909577 130575877 480059557 1002446575 488474144 158033004 382807454 843802402 545549208 531451679 692423954 558666670 206019766 336468545 552053256 925929309 965901441 155192710 833176936 870545345 79758409 585803229 828154937 795263986 697869983 566621816 125607278 561408549 104445893 147102439 55175081 831372798 326090915 78198846 1005713035 650889596 803935116 1004596892 378174118 792814006 517597267 1007131114 540301779 460630642 228001573 82749324 948961972 267605104 72152750 256635380 500987912 89728385 836250710 710283665 779562300 770265318 648426404 509703750 36609140 1027401156 800278662 961458793 570559528 749952138 1057718029 253867764 541336023 849164586 561678779 488490929 52281587 898269259 1071760625 766914616 896715672 630970070 499991779 726972753 972124663 200964911 645373401 1019703247 843285328 159407664 825746421 1013828644 516714355 776179827 399373256 819358214 114562445 284471804 757856751 165998144 842608395 690234816 310170313 963213333 196900829 283499770 779852259 287158246 226905295 426632109 1006415054 861239805 37293130 682596782 304856963 583619726 694161617 275664749 981921959 857839693 325235750 1052070911 681767348 420749811 75222958 505969525 698712482 406534824 379044075 68435446 236450265 558289637 651538022 417324542 152586688 555635181 568255845 780096846 189712043 588119290 289055988 221469868 725678893 647799562 621769817 681601688 346812035 407859931 652655890 239474719 13480018 491069642 746143433 543092052 37018853 1002768090 264269437 249403362 253414130 721850398 1048486533 50676269 973594860 1071288782 344959163 1059487451 301285484 375609926 796504764 363652257 1023579686 42570035 1045252758 1069356025 735576662 309479619 124111250 886298067 906675772 321343526 835341162 648162416 1040601759 402422353 1041632027 447532419 699209132 351267812 34561378 613590200 928223190 226921956 163584504 594243135 1046414234 249330949 91850837 469354056 831718553 490613042 958720297 550327170 1041560237 662667572 546448003 349014165 95880756 341873746 891876800 38114984 731380269 851390710 440095641 454579465 1030668683 318695122 1026391715 290140055 271795414 1028946843 706162117 204944720 399291458 811319697 826918775 686519115 578890916 1064031010 474025854 862877966 546081368 1072794614 160060137 140172899 694961229 878101834 484564523 297409118 632444220 700727342 704620325 123802556 345792734 163806681 417909226 603005015 721712917 601126199 617572811 592768766 65124066 181042945 631810003 122431175 831283241 554266200 208035548 143625602 202132767 593815813 507291572 531017700 1035104338 979653479 731709128 198336655 650760453 652553302 1369984 702403390 750648832 1036492838 989577445 227985045 1031430137 630190966 1027844280 956294163 278779964 615132055 355846873 1012224192 729932371 652419804 525629634 987677483 534739602 125255861 622613711 610811031 127002674 524570214 1046409703 252004777 203907121 716868688 35991802 877526364 118448528 57797434 16687673 396143295 125696505 925171043 450757793 416156830 561768486 1070746797 300474762 1071562391 109481467 393977446 527472461 965902006 1013685922 970905196 573928802 84375604 646302381 657385451 853665607 87849403 983348695 201757270 45699465 255404955 681521678 315752837 277795832 174904796 246660471 440634135 209057401 638812987 851942451 950004740 898086901 423068497 563194447 371772477 461573117 221246489 627884056 597896651 113729914 937327547 19938149 863268075 812723230 1054685200 376273483 54768737 11505774 631542117 505145570 690029368 335659322 522131429 119282058 256618249 1034817548 125818542 994475719 81641725 493839117 438228509 982012732 443720332 391223739 685932690 414657098 851258193 503607627 344383846 148164209 896239579 252131291 732426286 87555089 133738350 685797517 116776040 930706854 959326236 370683045 353106889 897842619 854725392 450149447 154318812 562335148 156774386 597436570 522817621 490084994 1043258303 1026582601 458663977 134464774 389532669 586504415 913609658 116742093 952975388 225055715 359994831 320907257 746059758 237562077 758451382 58719389 540199414 773451516 386327575 301712607 863971663 12745291 792500759 774463064 443364675 1040239953 411140271 13089005 949413210 785303847 157580099 298800618 1001781613 23687327 642197459 138645378 502709004 842958000 962944332 694647529 741896444 434433156 562310730 1045580885 1066420158 150669516 653803761 894683152 275536460 795405648 730716589 849540893 80185343 192918786 456303034 601848081 188240420 1041373924 411279571 597214390 47571572 84867751 529577619 1067671941 958785282 605000541 196072976 147381108 164779100 84473131 295335666 866390197 310676073 429628345 72923598 701735070 921492676 143220554 1052984822 1051622721 445343498 687156387 421665736 129413258 480702095 685006666 946918705 660736536 662894631 544563140 125485515 1069061769 921911414 19835146 341901878 194761096 592646694 951010245 893072246 407055115 712274458 454452285 357974839 352894324 444403063 411393710 212643261 212325612 989020362 532004767 1000008624 225632590 411725084 993802052 493554244 551888905 655401585 190958246 316858624 1028328940 874886857 530524853 456722911 32721564 684541768 193876061 826213692 166096861 11800709 710891793 265713212 588845060 76405156 634950645 814402558 312760912 379686809 418745677 359360743 48426261 621832273 511193965 37010658 675530315 938505605 556859686 263765219 403824529 311702754 760786908 971704380 969774497 835959853 1035931442 88981628 774197889 872427450 445515292 865464916 553248748 433404196 924700200 340829963 1017713242 377167405 165295547 415413245 1055365700 140944406 414747665 52437953 127620860 758853110 653196485 684269662 1029795300 388373896 786463447 707261620 76720647 564589182 104831880 1000153609 154980237 671998873 33155941 502108171 989517670 833645496 402452216 841486226 831222122 994050080 641081118 467604214 406083295 299617676 544202926 467620129 479048520 625441995 920611025 54776145 784394524 986957728 334687159 395439447 1020889340 600530873 69877304 1067210501 552553525 279899577 580585626 899490499 304104306 115631301 65505267 767782770 1038273736 1036554645 77899240 943418452 710071234 82572176 687299996 811188265 812820358 542562358 791569388 407000775 206181161 1002182432 773351347 490355790 948918261 116261571 812756611 604058562 1041747277 667188403 26492486 887688900 321877083 38796856 1070169242 462437780 684410225 637890178 494268143 1051046489 158029371 618032997 543358315 770664267 144774134 202739334 906801086 311861346 225427887 393180966 51344591 320962591 735056556 503095997 920568076 563835320 67116602 370979651 351350034 1058744398 785457900 735464407 272538673 263003503 959757389 714090131 192098759 664573184 538251472 597800269 862813737 35177982 323869000 583665759 462656078 634593398 436770211 495211239 209162388 993769205 934000172 1013419080 1027248626 123464501 629213029 790758055 35412208 280949620 676504592 593662148 58627283 290699052 316614803 358172742 220180647 855134592 448549551 538845593 24284022 440834574 927121910 375401826 732187710 229299128 124933972 594673909 1044313522 931390795 246046911 608338993 700061905 497949754 960029685 578731023 458934076 266673872 178670178 673236272 43686768 161659159 974284091 891854398 358214307 355847398 290283397 551215569 381483632 586973125 450044028 467033454 203361931 248132726 688453019 112259972 426485307 402657263 393463900 58236801 37896442 266880646 955590895 388680030 962564969 678528335 188253461 221489533 555630519 532640003 893859212 944411416 935589256 833222224 533157463 47647774 351399659 391930164 424748623 898721770 984845571 695669962 678172934 696862439 1023050843 341893913 40736920 533707644 939028493 282924965 741205743 522796398 128784247 1051123703 1065020161 5670990 540646535 642355194 301312275 58681039 644639888 289196075 494589409 215226742 562921735 568030163 772054353 19287751 532659009 309792292 723099894 389738000 967268988 892509890 861433320 669175506 511003827 630830552 271189786 219034872 575021203 214506013 896948224 414572649 658862357 786201022 756660687 587522052 89021333 248659869 258245435 195522252 407668066 536700729 841186843 358966041 362594250 589863645 757744604 151548374 591378678 425291020 574775217 1040828840 735847815 1043538120 891093161 116505993 1015304895 760130857 797630318 1024977026 538369286 189809428 416889966 900145319 13161920 73171352 352995216 320102086 983358961 220412916 97558831 402554508 502801289 801689096 101525964 28574223 527972515 866157486 517024524 797511154 346951025 758970498 20068459 993330363 925057376 80540099 93352763 700972271 801118236 846532753 462385310 189500002 642716084 804622902 740772603 541214702 792528730 519112384 777316878 131100059 849806145 362728958 534624105 285811903 776756646 890215147 501486154 518483400 1061788771 263151230 687969901 116522064 1047564591 426265897 122588146 523460642 514091959 328032558 768229515 504517557 592079022 332453831 225320726 141981938 943777009 668617788 908160531 41283047 999574645 220107703 17822078 982883718 841658676 992246298 913433262 56117961 764472057 164515918 163388887 835880098 507892326 76951740 826724721 112945362 396712437 1072609524 126353535 121128417 156536259 936563939 26004084 415419577 383871986 812103205 789981429 925294603 941347337 769890163 149119278 144686506 985266725 612920356 536685963 236249453 318175390 40825946 27488889 749679403 61029091 403710487 900290931 288282928 437596052 414816401 1022653375 360524596 251983663 364341215 874112147 234885063 962869407 591095355 477487035 424061428 111363598 341495257 177898964 507393679 948347710 796868005 845360241 1018277898 335632779 4002411 134717509 549793064 617813739 838530102 978100557 718074797 304429470 512157432 458932525 848634394 347665363 482896025 418834040 742316230 205178588 86732263 739245437 13585615 394328636 779353866 807912925 1067587856 76230050 268641548 94745697 786440584 410598942 136373561 131903592 653649987 365350802 651101641 647765257 52356673 901738123 956582050 928926679 677495392 361057118 621414945 586686218 925933966 110074655 732443793 366935460 351747653 923635643 986631668 36691053 718256541 650101624 290339218 322597242 98035025 690296708 824160051 1012638795 986581905 58770757 8348565 387420231 593393004 287000772 559040090 762539655 981441222 278392453 985262421 592872330 204323504 318533194 652490642 129668981 865849293 502895341 800043542 295682280 25974452 1021795009 757616658 879625583 553102404 271868006 659790876 213960514 859580608 178500724 595245400 38332428 487715044 965374285 47241466 564799730 856700364 929772525 244695631 9494417 641738007 324668332 596182984 934539994 84729531 186252497 916320589 262818540 5950227 502123960 191320238 753281115 396156520 597394043 817148289 907169843 994727095 753318299 983780108 614684472 304127238 794707789 527864270 987833682 344816178 910339714 85340285 440578543 693481206 895636930 174121023 384042433 227285945 611714689 257760989 1055004180 665292476 802909577 616046688 555023481 449040459 831895191 576779578 454742082 359961100 558914902 2352770 177530400 1026303007 970105161 468147221 701503657 650919811 1050616873 112923516 699681176 113013686 990575336 396110616 1019627509 733487158 83503951 372282142 873899938 634395985 219803483 909076638 436078038 873643735 350684422 1040969423 683800733 14849662 30544257 601760271 431783508 397052672 993401551 572842571 862545906 870152200 27121660 202806985 868869630 681314480 367009969 791137664 648989274 849425258 798048342 132639245 859020532 166172751 230254416 342021731 810953862 790404251 235407136 480735653 243638298 540322939 642705217 556215201 255770003 44688895 798985267 987498856 481969448 792369298 618114178 802417149 531275531 55589887 145159924 580090809 300106134 80019281 214210816 426328914 870958698 91699702 352589402 892492529 170993376 1059402267 1001245637 343402216 654776261 76008239 733795767 149697982 731669223 436922460 396587255 557242722 299102917 949157308 91835133 297159688 196442074 659469999 146480987 384784730 742540161 1026885046 429303992 98844188 822917698 1013300397 133838529 972468910 177055894 700608513 894862585 940686392 117228085 832269537 208642417 616622442 627139633 140551680 374947261 944457465 335703565 948838331 550197267 1056114979 882041074 170129472 317830654 894700123 1011795968 1013290917 374268327 142904169 132270549 969480936 217879621 564132366 1057922236 952782052 841501792 910374473 501828011 238970168 871354189 314108762 424960393 593503760 489120146 446504195 1030903878 123179542 197832513 479929303 370760072 692207142 362059380 584319321 519161334 583231454 1072891517 725837355 531129289 935114421 850131517 181033426 244393600 522531117 413029996 576160217 281134711 979185336 189005169 834198016 797808735 512844807 76541496 266442681 29606096 301458501 107361649 723296451 411364058 178225039 1062258764 47577954 593461035 706651986 832432412 566876956 398017940 418372949 319584759 841542913 497327978 362549201 815873932 26911476 218886958 993358518 111727385 61610415 829339300 101088077 207462128 896933183 444254455 757779401 226965663 136576992 523947667 132047859 1027247256 821568627 103616400 15264770 399886029 992619650 116391932 408171374 118035943 1007258863 558206281 263022317 1033591393 595154310 398811196 980356647 529615971 1058022842 249458532 588420073 841366491 417277773 255426242 755228328 1061919194 157457378 402859214 961937522 880304209 178212511 963663261 144168069 1801486 907053273 521272813 699037174 156776777 978606100 646712169 760441503 320872045 554871377 867976216 362841367 743620062 890114334 703268083 213459198 68346672 95257467 54333485 487796635 469565396 662047258 458595840 794186662 1054650941 347416367 502051851 375769724 144853534 693133382 542440418 689070461 630163622 666286794 180835202 799707153 806262099 841214661 388532470 900685897 970604264 143076859 642764160 801340153 975118470 686468806 247263912 611940342 97223872 493381731 482636658 186178055 13220655 307539073 351734078 449348234 797178509 165800377 638310337 492352935 781267470 169549646 943744942 502841650 469832625 1050507971 672257337 235590788 820697162 845140078 477747655 678170246 243393914 274719151 520961152 341468200 73211903 7963505 390097192 404021444 118797028 859086780 47474569 1002330795 951581690 960228348 9830654 987643282 647471027 534234349 777753362 351293767 784544568 206276684 892092066 218817008 667182338 674551573 894499204 272704978 72411116 359855586 778648824 578675769 1055487790 676459837 200159680 28471996 971820406 23127682 625511199 679069109 229569040 335447031 133788707 520544796 533861874 89635431 554764405 407232080 152274112 117659096 1052451099 266499742 364175367 868735612 712794928 32035265 334019818 798898504 160481733 292341476 333280059 614969468 366994155 358824477 952193685 13580387 918422771 615274329 19751504 913996573 250598442 490259957 14093874 1047287077 288370467 449122480 176328350 1021640736 703789974 307253191 679133830 771590129 683295577 920647598 314063210 121889384 212432957 834311486 256601674 344606930 910019952 106756402 185813350 858725260 579605491 543615119 867346352 894360203 296896446 476754483 1071703139 819252912 1045479685 948360797 186496788 802434072 213516377 393384693 600228938 694187231 243834294 956046960 992152720 522144182 742118875 943729788 86460311 1062621822 152278075 472082586 743349070 6189958 898598448 51428507 996280174 436034909 273595005 156766521 738821686 867460866 415192469 406304607 492701951 147343059 914262397 301982029 533173320 834300297 345368285 237732638 588843192 159718378 1026094373 453811110 571176833 1025008484 209382939 430880249 257978127 900798963 414862668 186451695 597062068 110224383 174423608 278985555 566039162 405922836 65987061 517215833 288198815 434754329 746030884 520752296 131748780 399347488 1033884059 273047294 390003954 997635332 3279442 27215806 377151930 939862910 755652658 675468722 589114860 48353442 142538529 444012313 769119458 767201644 671907426 14366457 211196945 847472138 999238102 1006998392 36062453 196452916 872611557 783481310 894993919 237349715 942278482 153050027 711170746 936042110 690973151 569599502 386216208 395970804 274565308 117810353 63269307 1032332643 599794205 543499801 474838742 762672374 783073666 315509442 982964571 715983251 897862014 465133688 570052615 744054921 382692362 211606271 395690851 101706084 582474203 336523703 568561675 1072681964 519240898 459850626 606789495 974457461 1049944900 197440104 694210642 511018968 264859983 486523230 890813370 1070529024 582826756 129624433 132697183 257848163 214494896 360376499 300371151 738248689 188063885 712937211 924661029 856698375 421828069 690746286 501020633 325811009 312574303 238592296 347513952 563589418 960731414 782137990 576356488 959523643 715288268 43684336 798365674 544022748 152214252 748383184 91524032 685180227 727442325 630250603 1065921991 897919187 11043307 1016181937 687417949 452943065 387702279 835382070 489456688 615252799 907421804 355167275 924097672 291510691 521898686 1041608022 673856566 952638233 985481746 267353989 200790355 773684070 817023087 265833376 654165775 974507832 428418006 934249250 181460159 231614426 1007876797 121432510 820251831 829978088 191398358 57113674 775682529 96641637 109143121 224518511 421487080 751586102 692119288 332659074 601912158 680662261 670721603 60251520 605421161 227404985 257286477 248631533 638656083 442731850 198035924 895428516 427297714 165258662 13919865 936377372 639293825 824036500 427090335 775684219 540878860 74993790 194854393 728801372 666027249 606446977 1009512499 167659184 359183744 159536841 442272794 289883331 819319568 816942491 1064078061 143280912 694785358 860287589 533730122 982098527 492962893 166685343 588121288 380914296 684980520 412737245 572902519 487167674 468865901 355596585 183971920 419622247 179432849 315242195 798018601 616881562 249936660 925122767 996515463 246214887 684839085 767646770 471981253 417878597 894931392 809253899 663874765 397778592 191282439 613383191 348929928 864985768 715050504 521928619 1008111238 18239226 141971750 388898887 792838762 714344980 887658803 490851452 184963077 1000609538 224855505 762616391 108339667 871058512 270903617 1000672268 296867158 719387543 304127464 538763532 138058382 1026953303 880892954 156388179 562348258 427778990 295132135 995104777 847323018 1012713576 622395314 249882884 712922914 1049700849 776126001 886934087 961202542 1001122926 437649648 412185689 871848483 325879249 168923592 359023695 459034531 739228247 38731679 330129691 320896149 101884272 720151141 241163660 541713129 639332656 296895639 205652244 340762066 39580757 288796470 191124949 523499569 241825554 515914093 35693178 25577581 24492829 566493283 738768684 237524976 391524404 635288136 703930549 60410284 1034302589 185079173 528792109 908997825 7666794 914332934 114204240 145479976 794391931 582840782 864667730 754945289 211924189 58654952 950248951 68297623 99498791 369787422 436156468 556850027 386899315 445851051 1012430896 196243635 972000769 636814666 462570125 286597511 418316954 373946556 648723916 87779842 378414051 788237117 631808854 1034768785 370777097 493424717 957252579 677891237 244043345 479889417 678116061 5244717 49535900 736959853 906013270 418498827 548467600 681769600 914213089 695371950 925513993 926938112 657884140 141135462 458949043 114279270 49450370 177093369 823023645 292402064 178715660 885376773 398126565 1071985126 24366123 14900170 555292281 640105921 400595472 926550865 120624928 323560936 212995268 704996976 773122995 68563679 850831569 571338867 149371019 1029528427 228039661 1035441227 552899206 940460485 906686456 822561082 97952310 786341307 1010959921 191915411 845686491 177517367 991228924 316269198 603120011 157199244 426219680 875883764 263776904 602407124 216953137 496457071 114833569 634775781 504141225 73102244 818247516 103318944 548728536 361220296 483495108 514037534 608941310 1015380097 919752425 871646048 268191400 301049391 114725666 815923565 994054992 155835962 331567654 146141824 756583990 281944938 175488273 145553299 876700886 84733410 565489680 428765516 958789719 687666160 725251210 1019657163 107611879 1068578290 322777546 786954403 804119301 313791742 728972719 804263528 341125647 685564176 196881348 189981492 51180789 563172873 685899261 866495060 839932043 756242986 439298968 66819438 116919402 596684857 375849391 674873500 879355757 753913869 1072097623 86213301 13041715 229252514 141216720 490838141 766088124 538916696 979488033 800529439 949237210 716124177 463266996 815473325 712636973 855433297 565758376 438417288 258223653 600625079 707305079 199002326 176044378 807032816 682338213 159773262 380551430 907144465 252592574 714949918 1000567465 694756888 377502778 5853503 278779685 457806371 559817972 286350706 722835238 850954740 1000592247 648115032 1026348202 878692801 238812277 649353927 193054731 208526459 490289634 134711385 138969720 224516477 35153491 1053395461 999627275 535564964 504814099 841234797 491641509 752715078 89235499 721245469 356636580 702119705 132355200 632770464 929633064 206723150 819452655 659736874 897838567 934883347 596979851 216895095 986126128 908768980 499486808 686320786 111388546 800000763 989623187 477644425 739136957 147928958 308242966 991251211 445893604 1013103216 61090111 516165931 486781722 983924579 594098042 223264651 40951321 129810985 564605815 647167736 644346987 48751160 576690457 103238799 982573489 260029098 102781896 465747972 325566938 400330112 1031276532 277336223 955778625 818380187 248853024 279926946 864326236 919928813 17570688 175409270 888890841 36308656 774359223 155230959 698021419 119435804 748913195 946804281 802614796 270215316 1009994165 429897776 597690699 627119292 1005468975 408489743 131227783 217558521 416987155 22363258 1068680554 163446203 771404343 1072600502 759050543 489231683 1023919380 980266574 80859857 176549228 5056301 622539059 676351021 705164669 2368269 133332945 980163155 555299281 332830575 793529355 354183939 1020822710 236382257 89553911 409297644 60941019 594005579 127534338 17809510 948257466 837577659 211637442 129448869 667718991 396384535 930219268 382320036 521728134 146782258 529631819 17112449 804388998 22054211 570126972 732034625 11012849 17417547 1054302539 724137488 439270740 772147290 755216671 191547981 540213366 328385567 440765825 597088414 153065779 309543161 151978886 475893647 418071476 135130398 893463103 822540361 294727249 62777141 10643505 857650144 1062781917 859115764 675076075 511603893 557520654 379950645 784887881 823614950 370114746 1007602685 26676235 325296141 849174238 985006964 1018866065 22958597 283341954 536249459 867137764 403829538 856361250 909207908 35297782 939300939 27002767 109817763 690535477 976656181 573672808 996818602 959054031 253972403 346371982 600996438 527579141 888102327 472555006 247412478 341251242 9763061 886731817 273939810 369184728 913424865 504658505 242481221 595441383 435177752 326159123 509018931 329075231 279513962 1019110190 366153994 93448743 122367541 599094391 946546784 403993615 924375343 104399012 210952614 543966515 43526578 298771234 342844226 698612864 1029107125 311438840 379383104 734724770 535729514 122520550 492867865 712722173 160419712 241621766 198401612 532967296 519019926 1000408760 451621855 773798243 576043753 58282495 930162809 650069409 382191873 1040529709 287074812 139939828 503320257 675093049 902726488 398077364 854293842 678979390 228700869 948750737 1033770429 1001082781 11809085 737883426 978407322 923107547 962920260 396235663 561885435 303507395 1070107788 218768295 604304069 1068830593 984617405 672559131 95940216 64649953 28437222 848317404 300399516 807220782 721066889 757618758 836676481 374618749 1070600529 317852749 745301633 555428046 108657918 656615601 566474084 684638163 189066583 158861701 304778678 439204097 999315343 790425243 183976716 285809335 644224734 14290465 25987973 866515334 881580538 734115625 592207908 171488957 15220097 306624271 467332733 19337267 402756803 765079557 733483886 231603431 974126880 280294041 310791155 267817649 469435317 351213784 1051509421 371862857 806517439 542250242 353706364 384196552 1062450363 818371354 369672168 1063833434 241745224 72177427 341709535 505340970 192834608 358796362 120947420 1049887774 107058423 585858473 1041953306 875661222 970457846 427993299 267649654 383925501 621390513 67075082 972757493 99484323 178860948 127328705 830086563 497583792 857612458 670509768 922533879 285144519 377760844 132935107 572008060 961665191 608847885 223650689 329563299 194098672 1061791397 946699442 532058987 1014002895 1010998912 322994979 63272763 260784085 803200120 503505238 709194576 1072324352 132088156 417781658 453109805 197601441 402430288 179037735 197633428 437868485 607229863 145184878 55101901 11084525 317520927 660852809 1013836608 604598221 826049516 587205795 1065519221 150927234 1057188193 14246527 487632282 1002519964 749634159 1038264185 299942103 506191024 690122901 574580541 290783306 218185211 252484109 887628806 124422811 908140195 265713198 685583519 431205400 760936624 265233816 985774196 431938192 315504472 653776249 87749377 273393700 31229533 818051060 250707910 707911587 447465561 895360234 869923089 597152807 478860713 23627257 367948367 430629050 233624837 850650922 576229648 537964378 903044444 986707112 503903287 253153008 883779614 103479067 915840819 851478431 564339162 617970490 719313942 776018530 536379387 130937370 829599060 905793731 401511446 1058945472 420230719 544671211 313126769 5321360 260971694 58513825 544117470 375327561 752881049 727732724 520282664 1020313581 517374037 551048864 750606561 768600975 681919857 831794570 1043215533 667309261 41002112 725966524 225941460 671852159 537757501 752375051 878264605 317502634 690816635 836015205 500557617 811221538 903246725 983785837 453906064 371811038 3478740 118425632 457336130 29183797 487369910 878340740 225106402 991027239 384726976 725829077 593801237 709537377 191252817 653793482 742950214 201125995 521394507 539492070 886874508 312989960 551324500 741835652 377909651 772161631 129029048 370548395 594672925 215209537 62229690 830004249 1014832084 37753675 395709626 86372719 80173538 151251035 919180999 441693121 668467734 231669401 677069159 579654949 540490570 895072155 168935143 642268484 384104260 1013975423 392086488 31569539 78228035 293098992 225832935 102682121 375676338 21719769 829634152 978189817 616496521 411938736 695771545 100960384 946925083 937676362 404525958 1073376631 1032109694 990239725 21962615 345423145 903853971 292992918 543420030 594770954 896567031 956219845 663018835 837571973 24946361 23240529 152606156 1022990738 82593472 338566299 723108464 99272783 159515025 298960330 380861771 440932725 611354040 409681703 538350278 360399800 918603838 87718202 388382991 839008518 836810753 559547101 1064807067 668153742 708710040 666187129 749297094 751662940 109521008 709266891 125397821 549904074 938633944 582207161 227047756 210745179 890621947 134986326 838155657 59830392 41208539 602239974 666137922 462562874 111422914 967142525 106158810 104263088 674732488 562342524 956114669 591668348 1056272980 641011981 334545431 608410353 843376142 844517940 125386426 821019753 1040975843 524073694 559708210 880595571 413187624 345219452 984050675 665672751 491458500 9001429 860559237 458568877 245850039 105276115 840637689 341898348 395191697 622346877 677184118 348850064 94286455 119148551 1010793087 131813264 460939363 47467685 1042010294 437099660 667971838 322898884 966075576 221413335 1042550429 653272340 593428907 621630666 801629013 161341470 67315420 717466615 396767407 101987504 88131063 885807129 730188254 684794607 677594185 39492778 447740727 96317546 551423700 530263278 604903420 379443679 424446875 36635772 828642830 1052736133 766886466 138733739 128147881 1042488870 345406303 958593359 395496606 1054669108 1015512363 504181622 1056798477 858043576 354313225 114402672 879285500 445212738 751554276 363321218 310458015 372662212 891467574 163194031 238663019 154769416 948902675 425744394 139299135 857470780 879123070 351347193 819492829 1073338973 812638388 123863732 517156126 144725435 467240034 493685880 31334745 991871328 1048897158 633964860 1008753457 257684799 976750002 625952572 394945901 608423117 618225339 948847285 1027376220 607915404 368083697 349124687 1024146835 286248043 147832886 873534309 377632729 248513140 815644610 596414341 630134115 900020535 596853958 470254799 972375170 777145836 64691694 685080072 298395173 210810728 419104753 109139352 693072833 951322260 418055313 525774242 496302676 893118369 345670883 165480665 190879434 436249325 723631458 237964266 273479191 824853554 342321328 745853934 451842582 861786306 1009728943 742918647 176326636 407473484 222985256 785040163 903499863 355105307 399391445 499007397 505024915 598509536 116995331 817284265 45354416 352310664 124147446 453037988 765313368 347062841 1067262963 208196869 469171551 623789442 499879099 793128624 943931076 105007655 827450334 289547685 312965527 415410205 1004266358 279843327 692040931 176456184 97767912 458539347 876799488 1039241478 448101579 807194788 654435258 405866988 729595922 832475409 189002651 135046382 570737130 285270134 686992468 1050389771 300809904 365262738 451458035 314602275 982856527 239582720 262632693 1059695267 821217338 338658968 918421381 898714172 248443788 46359977 798783915 711675650 172206853 90017190 198472807 1037121486 1052650191 562219472 768870602 993569920 203672876 876570629 339709598 709259958 617637172 491020193 241990737 251644914 117787407 745139864 407054202 1009576684 552899559 471916077 96211482 724168138 1004578826 530048069 218902204 61204337 856855851 928008975 340394059 243172195 803663400 1064981676 132681574 917223132 1011892297 1025739651 222637959 33778527 299605023 430021738 635245429 919322337 231641426 774183782 247436979 117543856 388128607 943612973 83898798 153393434 378705477 810073995 516365322 679877736 461723474 551522973 426856905 1025363816 87428237 424628812 1051840581 292575801 555790931 363575178 839840318 439836510 289472272 411945242 848415737 1053511393 686480524 944018382 350024346 179963242 862476548 330471269 320136249 194295156 743608773 289718008 608865153 361893235 768090155 542918866 714598509 990726871 150970183 829548847 693127367 435473900 200590958 119616423 859305848 724411253 1010694038 213939425 822356583 912620961 427245414 826754747 858691585 600593429 1050058050 1059101760 973330498 442790485 784364372 334664552 902193791 603062379 997798223 1063921712 506055687 596588821 889320993 921777711 931002791 930976778 106399790 883466279 687841498 455196127 210024380 201825015 743983008 802427320 247444143 1014204578 776308011 718703609 732493067 733052730 515284 719215317 1056519558 641496434 1049967106 610237420 413733217 1048289189 555961369 4612161 1028618675 895997505 849596128 540305331 1024463880 292180807 953360492 917279392 850122175 59901626 865909962 542889145 461449603 519070656 909892798 429833714 591320199 34328029 60356346 973986129 90673351 548454520 11470233 981885926 277525074 871879188 915014907 633250804 34015818 971308208 948669239 725436832 413799211 491869076 307551483 265427977 233104763 59070268 310307539 755854950 117946736 472418665 980492726 355335077 974754331 406819826 66316164 86201304 554314889 939232677 51147976 826444777 426897299 171300346 343589588 527311042 1058836433 698033767 352800031 17863800 365335316 807820887 334585298 93553623 112921312 438086066 280744544 304266128 633684607 609951339 986532477 376605932 130050809 469858996 82308650 121631936 190975900 855535228 649475250 2893430 290193633 586878848 530357417 398915280 192557009 910138841 761402563 109893263 136599650 333304215 70010469 631575483 122415653 174791993 42571176 432888865 353109575 871165591 992985242 806786315 218123401 971761813 892997607 749906282 52195127 950569420 700826879 864455279 474603702 173518718 198272034 669636778 619947945 694215508 540447897 1068132371 665981574 99575509 1046288075 610144352 183363810 688027391 481017645 337818655 722319650 468885799 82214565 1068438896 51554242 113347250 784876449 391493695 28047864 730690891 56860066 264684166 319709058 831966660 780657026 952798916 952087698 578373398 926049091 225484669 663957165 111468649 5577165 381599452 959394348 888122452 45608580 1017999152 164822078 79500903 248014878 559380606 459366948 898170756 569821606 564481357 180480929 890471706 663212725 257168814 644209907 331166685 715321851 930128084 741819555 177489523 230528026 124992739 624956508 454276801 621011206 762984368 304075279 467374886 912598640 253894169 666362091 404467249 78257369 594589028 1054129405 721004327 828424197 36212957 898985449 471675752 699034210 592284647 167952930 532535777 1037332773 941401799 469465901 161002284 105562537 892180579 419035936 557957897 1066397344 761050731 1063905969 707043475 883080919 681924591 450477706 105222335 335671474 626434052 727473114 551630002 411410913 515151887 952584580 355943741 608204872 1018758741 592293519 871549013 66106626 448649815 22452547 1029241118 476449137 1009890520 964966430 646706688 799128011 710773144 353376774 586781764 771050366 107900569 563101524 460181657 915596643 230337015 469832706 637784529 1009108547 143021628 555600455 530101695 356576952 481028115 489491203 35840250 663357369 552220179 997554288 939597455 173396284 868595519 1020006664 237355457 358263097 620827331 589779298 306891004 838074744 835422978 703945796 649283202 950576947 1064300197 44643595 633710384 324402930 804243389 900754175 504804496 798945510 126808663 432871104 923368928 484941327 414240465 898552677 184214974 986743935 821221360 790424743 345752628 888976155 267910704 350268531 47279887 611267375 393891006 1029689439 312027648 576498651 481810365 237634833 367937973 113070833 1053583428 4979781 65660010 53912088 230370569 970212403 622533254 912989336 315262490 117262239 649489165 994218305 52297449 21592802 952974549 27928442 822345613 317782933 555720530 778609149 756003329 72226991 640778660 927063141 476205171 449205806 908674084 811979636 907768186 481832651 239513953 329601925 469745658 403486677 381635456 786915077 506391174 391079503 1064550935 957865267 945856496 569713233 363622047 1047578884 968465292 997074734 49654325 816152211 670493717 774224932 995187030 509875263 195623278 187548388 970942094 208535097 407889279 545928083 786454588 946935157 918109341 519788115 780139177 97511712 794415641 584927267 171468488 277361018 905257476 827104754 228518913 68889172 103373575 76966251 810045650 944853859 852288964 802687131 1007016758 650342747 848824076 384251168 727445338 337180706 101004846 231691808 894811777 317000179 452882194 933916874 632200772 27744004 395119390 202401144 875082706 68623219 891161052 487375838 130393212 102570687 858261620 765771019 105359358 769341182 677146664 570837297 621490171 873389980 977670931 1039821330 685776621 1001328681 567323470 1078703 470981343 376033138 178439097 735714961 357368715 171155202 1036362754 707318513 1069367991 720121774 820468150 960966411 472150926 426456649 636676567 482952331 137019654 718153044 368737071 716375273 811515755 295710122 549147364 861217401 970755021 595216660 898378123 165709338 282139259 632425112 753225502 66412359 401090756 482110698 844451255 366534238 423578153 405373919 584826275 203238940 228694911 178499228 234520165 1025400380 389815593 581698482 88855959 599334493 516914134 103907818 675276648 662455246 935914961 485599102 508137573 89015178 308020225 97724623 322064573 912896602 609969337 409066637 699349356 238611026 136029787 699297260 562958886 843154983 1009869804 145697720 730275402 694070519 253269092 95738057 327758715 308841731 569047477 397279192 470904621 532581867 277088493 384129937 444337513 233480856 500531893 228125827 853495211 471491763 328016648 45516937 194764076 918679824 112253205 351096152 1029651332 1061166557 711447710 584282468 476330899 648704273 425626959 41042056 118184039 977341516 359088452 245768278 896121156 932879155 333884052 422236931 377913128 339767195 847485536 952484284 275309876 209080972 910186816 874099384 13774480 450331369 139612331 172708174 942777509 251974470 441322218 481186418 325557755 751708632 31201987 400820342 947625736 231286869 923670458 388477264 43318409 793356806 252386267 697805255 218674598 133976542 6265502 270931797 74115154 132724910 823800948 215557563 114501994 217963012 282403058 1058100976 677749369 746144421 264720001 665272075 140572808 420691467 482878595 244370092 408945108 127210616 582533084 149080413 567348677 760890926 333548877 56509791 741860541 293842574 688697124 223683128 1012748775 629315856 665033874 655626672 840855560 74530496 204691432 1005952521 804196583 689694677 35186186 1042787643 1045382784 648593221 258224629 610714126 932310839 950355727 967617148 890505643 815066884 591070514 252816662 1059576357 518068947 924429477 167070534 801728491 1029177591 981736078 521384324 501916548 205677852 456388829 340753583 88579523 1023686856 311345476 1070916555 18275764 874125193 670380718 684431228 313635037 409677534 906146387 489307086 445318154 774300627 197374054 641873179 66274571 543154120 220150444 660140940 47302214 362609050 194368403 720093470 423932089 803131519 430078378 601747154 637286541 941429092 419067490 146503159 386057058 318929583 311373426 383627854 690329605 612892795 239235820 859744637 283991974 324799713 564933323 937738301 501044029 540065448 398844536 219174699 977974127 336396415 849708888 268133766 374839720 337373147 496126309 400026423 471518136 166628262 843611679 515273629 286364143 627468665 814987009 414259479 986396311 816132674 772626456 66998579 611899634 1042616221 201527533 683151117 444057348 426287038 719894135 956571460 500090908 879931441 44582548 679470367 546762147 921327802 504198735 348287768 124714626 786766158 170893913 870598811 731881810 817093452 582896662 875370599 423162451 383145024 990669809 707750808 331013964 320428166 153373045 600652357 33989875 173866307 67626971 1022727983 774224522 289298489 1028104870 418305944 700287856 452410274 223806223 95675679 752673256 1037207846 396143785 301963029 299748396 412091939 754885310 1019791610 1031265899 729804225 519877712 179055715 936179951 673898184 548484382 426591621 420851600 631071552 296169353 251684471 201538228 1053903582 1025911130 804496408 367141027 398217685 255172523 755264594 425205017 227701448 780569836 720135222 93062083 654099254 332517387 530406395 309828591 329082824 1000633533 280979006 1066538811 735702706 258565926 461208128 256510387 537806066 356713677 119005683 698437337 346026056 54032948 805887105 283201234 316902692 371517092 842750649 1064827502 692246156 533675197 424346589 440405766 914922908 443255251 283496787 248129757 1009007328 780747779 143250283 26084088 791574322 354772195 585462026 709252488 638403626 828957174 385148926 683521379 161914465 113230102 206967606 487569818 453455335 338448646 1014683661 873938192 629692127 1052363311 863160898 577675957 234753141 774811538 81361067 901090554 635220805 432272098 571171700 171920512 438431595 201489450 189103554 342008984 93790917 851416248 647045793 508030784 599181912 271068214 630510574 347915631 1053395013 525602189 267875533 981643889 261833867 44674144 709678046 43072019 55870601 934671797 1044951573 582834922 832893797 643636842 872654880 691413102 369894897 785193512 140896448 548315778 214773293 951434453 426021887 743027331 912078317 119455415 701679425 679044847 1043972088 534332190 201480732 893382459 225765563 596473773 270406090 85538323 258275009 834580657 137695817 456704820 591404574 963232407 375154638 811221246 847015460 1002644231 772808651 630546155 591945502 407310896 287392462 556030274 167035446 451780806 621250815 155840557 827624815 489423003 1020777354 453963174 58229462 492130710 844499328 52973387 277835263 162546 601557624 961113590 1072519006 895155956 140581213 59008606 2533397 584460532 642566245 252067653 784042149 44372969 102761111 365132012 527136298 906220672 712246815 715170908 253816477 80930078 298293407 357952372 63256668 801727546 394170181 602853720 685476324 1054607319 771612176 399027893 856324355 1059841943 890411939 585923544 196159320 152530364 881502129 613508231 356366559 1015680738 995821326 591854514 805468311 31997871 230459034 392231152 925831404 875502032 373770618 90417557 515787294 570848759 417481129 1063076129 486131 256102733 37336190 202267104 817254088 359175946 999081947 615170439 838533977 852461661 475972950 1037323777 385886308 604070175 153081379 397450041 285772997 179932421 926037947 1061363756 229766343 317847272 686263652 339966129 36737598 61566720 480526701 824035932 646766326 219069343 331746045 1001879786 727439017 222446733 1017156051 646450331 371216619 683584284 268440134 15677686 242043075 702620878 697176933 1004193250 409917866 947317439 455985322 374120523 91781135 514614912 327408271 45616102 810953978 259401823 397377710 280657326 1017474315 775278462 984080982 449960631 704601434 760197885 675949297 232312466 526022148 131979497 721969615 817133561 598494601 401875314 406913620 494421014 153172784 841108643 187214583 340636628 65515765 1001197141 120995106 234097811 219677720 752533849 842922349 656170915 575928152 509314262 67370180 545844911 412558513 1065618815 245259865 374441363 529162670 139099664 568297675 159383755 695983700 841760884 115909883 781981506 388461818 664834898 487532549 1003565415 662802079 640388934 472667041 320052530 183640329 779194433 632728668 421270777 270187050 743206221 189092494 778298748 168222566 222115715 498891586 378767989 405510760 518474376 413460438 157194535 107782763 846525508 454784348 482769086 257511494 407068341 11439337 749852847 1055739863 428358510 176469229 413843492 635893539 596332843 35471243 56182401 118351889 175938092 827572658 1045549980 1029946301 217824554 787947246 430712290 856026638 719150701 983096062 229782603 323300234 857223950 523460923 808802551 793257619 490842610 139359788 742480816 239802476 682142758 994420558 788276507 291567362 921069009 650728103 317851155 728915741 363209312 703024379 446387233 340803794 538651899 838389506 915491140 659128445 29153414 722058245 284049829 188924301 807392765 158534949 1023519750 222196551 503805322 888293444 751005846 514793918 773280887 467040757 751200385 24871116 1002590516 464302117 266096762 309742345 460037933 670636993 913545578 767240717 853636313 639360557 128337355 878194270 781379659 199177235 706484170 126341033 704024304 375195994 761740989 835176539 412796338 685528567 266712348 386685542 531074360 815949726 790786155 346383674 168320624 691474404 558550716 834851835 496471015 717035649 351557293 926992562 143787132 406627039 1063076104 214543191 62657647 89565004 336499410 314852801 867565861 667612276 892661329 630301861 353783947 579452547 697437289 227525279 517422625 566160453 548420013 445425919 1059826008 994189835 946137500 671903015 107279503 840835014 457780859 1019153738 143786252 1039259968 636237293 666357255 81850551 992829003 204574244 483720935 1069354722 755750842 374865709 1048724874 49044180 310758161 60948190 628987982 1046031146 300962248 917458456 304295140 176515756 321669868 909677943 778101264 1012871612 641710662 417220835 713686482 454782532 643884803 1053191153 385611257 319355270 996296004 646250579 525836336 498175585 928808981 231023646 1003324229 303931812 638367088 845875533 68057823 244039152 266191481 882547764 13563190 896425318 943112343 371200112 279090420 48285496 1000496245 237002439 699379221 91319414 815070363 991414310 33339067 181687015 4403043 878459287 190819353 723965100 441883618 515450877 27974117 160050595 141602508 234444109 315579103 150839660 561038115 753788072 592943009 535857976 602991894 240387598 156992393 807915129 416121008 871193659 780296874 499096682 331573889 203812558 753065556 616185070 907059797 899164467 831577002 1048125653 971643838 464461873 325014522 1066088105 663476433 653523628 579362049 639250916 1031364650 334975303 776182435 160678824 740079354 999676479 13824571 968654967 1023731946 178700128 442672896 987368467 717211181 934625258 255513062 865041748 379130737 685006882 295396917 330619166 492839164 799698883 314937831 738490765 256250146 589025101 437073950 370586019 551435540 901699816 622449027 936283341 44457104 330554155 33164105 830801007 951430829 353925868 555180251 583526644 801366826 578746696 819606651 692702648 1058123423 171836141 66540179 1000523833 1035417437 859026928 903300662 781203970 225716609 848491949 139623919 892551103 446031081 661285432 741045987 915158081 216867846 308043130 1037204161 531779291 427133751 20872205 737081016 518067411 1061744406 137725002 974339768 134640788 743500253 215438010 539670173 352863982 756303159 251930299 813772227 80413090 1001200445 845891546 794423950 935416393 575448348 1053887620 755947421 308394605 925742207 328620666 467541393 116877951 913473705 922179130 229345663 923393611 672487518 14186297 279110342 963793417 958165805 182313590 483754343 575006990 963554261 326422723 857034410 672002670 192347487 242005948 883085410 997778652 969062809 810122376 1073125461 1023170054 579811390 536561747 12111866 106529412 20198066 615674868 594520639 590807713 308809542 767724688 473763915 533996119 371345895 545068796 254741517 124615072 796910224 803624586 882722045 332551863 215918959 326672982 999347664 434462793 717990382 115291276 575422241 563016434 835139538 305672825 418250010 332494171 390567712 788885485 159385068 580745674 205723119 993483233 932739642 546964572 923603393 970066565 822628586 179463890 1059925530 632313826 49461886 343105152 1004975778 1026691925 1045567673 90311434 1066430425 738267043 1070696300 875174460 666996632 812727330 1031608948 464577528 155160287 572031483 593237634 985402788 128127565 690082458 349514048 760048351 753250599 501031364 857740542 901236050 157087713 820205051 619178421 187577257 857078035 751657546 636873948 280330894 430783133 985885321 344807244 200012584 495662028 379726115 336849754 161629885 1018603076 62177108 106543335 701513295 816821083 296563661 87833395 922575273 448212698 818492540 715376265 301990625 493625971 2655434 472882514 874868006 890423742 1053009434 601563149 422438085 384610823 133822645 340536467 780495492 181443924 33075879 169786206 7445956 848293657 56962544 200629331 312156224 923558377 256772832 537652213 821719403 654227275 872433898 441461007 280856795 295866254 387250284 555501914 647608123 549810123 655405832 718366968 286159118 901355094 175292008 1001093238 60610332 42554595 44231404 753838922 655204831 452550271 1069117025 652400479 958512146 49106266 40090653 868600490 780982371 535888666 836420665 841802555 107987564 274849342 968956637 291499651 795378346 435650489 938847294 841626369 463544932 797873538 763661563 481611065 330879915 80636463 780488685 469413492 756600263 899307337 452378209 1041274404 298962510 264395487 919160587 902387063 352217549 86244684 221544268 82873143 881558420 680206145 207043105 756066675 940036704 1041176765 545451805 627970992 691868218 625369049 303455845 462299947 516253740 786386027 666416584 106180839 76909766 203082269 976248541 409404760 183886088 740320351 934133455 732784507 140898669 772856538 526481046 64192036 301545781 907973300 387144237 1059713160 1067799729 334592040 12094850 658024628 547789291 329514505 643146545 965901121 678932154 163024294 71938302 697444720 239564315 311091176 369402776 87869816 93901128 80755852 130691762 235513132 260368351 869977698 432994335 570532701 864521267 289631874 699903421 67389307 746401038 783982056 1043421985 656353931 967924662 898367931 864365340 624709984 528591375 736715880 281203263 465478664 1066343461 674959424 1054285854 309301976 941195117 881256258 921359920 278340661 652533801 312557046 651672712 785352383 1061316260 1763869 948072907 507149402 46005139 769756286 823363100 708873842 87525115 1006312242 895077105 705621459 169134523 992945097 502152389 299037606 299482954 62006695 496307729 444784754 732863197 484964367 685831332 357300994 722869233 1003016054 740446493 983381281 9202916 510920664 493668376 449542864 506627590 45056907 890872855 374162519 956194976 342762877 124411897 686019562 1053773322 1035846454 96648354 239217268 806398725 596619786 749404043 309500719 636632461 905416097 200329501 762190838 354062695 840347202 484506581 840192239 126952031 1040085027 506219565 64474594 345055775 437036972 215538419 554736310 125856180 118431128 895358872 231043048 968521772 46779658 412381695 96492476 74916221 291441494 756383461 38874046 222420479 176109650 923791783 431113795 219077700 1003278491 838064696 476932972 286102290 327901993 749119286 821485356 377190776 640179383 113819897 105231898 339525603 650626525 422148449 707828523 95607030 437273888 594843891 189280595 830348679 957541587 184920987 986160324 514627582 763391994 682848638 836530268 474856855 172823550 899660221 984921379 1027818958 1023691331 179005560 143670977 981712008 229015676 680929563 690331629 307167222 95923010 790543068 399175115 258510571 1025394875 612906232 842774355 726066362 560259559 821203402 792751946 14883354 420018510 239280258 977094236 549090691 497916886 579666148 300935981 601318845 715091405 801239070 490032958 519587807 422704076 169001034 312218384 1054154117 512728018 489796242 844292790 145375098 312945746 995143620 747570338 530553475 881861113 1060586747 757959820 865282956 1015434572 233797342 229589177 968005597 100860110 1005123984 40128444 62887374 688412972 506733900 972267991 903464441 408668438 406059980 163261346 380184495 338574642 250962188 917371898 407107288 636580947 106878540 502996386 711880359 324340930 1028134820 147645845 345162337 923449111 745234689 873215741 560017084 548191214 99574490 25929131 752991955 221236742 87268785 499102628 580244716 498225070 1052773805 570923234 836334729 795972392 557778084 388669312 470303106 202684147 105016745 723804077 41606371 687413994 396950919 300004782 12022454 782854332 399831403 262410170 151446323 55075608 992863548 364715391 106189715 877519567 293859562 890726081 669540457 1011040129 794265830 1013468289 1031902116 951678057 653452728 889078892 713208709 992823718 607615422 964181011 573700710 741107978 451707074 373733433 111990844 885919064 727078496 570579354 641945395 230427669 189966920 924900574 385931127 412416305 142398141 83848465 528308657 228408399 864020662 884163453 675943360 436150792 531195079 715642432 693501738 588740419 293375411 797369353 160603372 811429652 103652701 203350921 502343835 2439017 220569971 253866014 308322646 415862132 963159464 61982957 1021136797 917820667 255976878 239688188 845873241 50156328 5245510 574001326 530893756 296750615 713560275 1000901167 860843908 278713726 734753412 485833846 1008295418 665180098 664945378 987160438 253603194 75628116 993743486 477383979 843716520 326706121 227184750 85291253 231980126 681233953 397934244 209100596 425312921 619559921 877153304 699587676 126425780 297483498 587694059 630929346 447064140 731400317 628390470 33244474 394047166 12019913 816334532 813506525 862009221 64569731 378992145 749487101 387213957 792519036 966625140 594252234 630417220 735034252 1069571081 668650832 248013317 851168876 648650500 926545163 6869736 333398774 167175582 472732424 304238950 693084171 232549033 441287617 111950465 361986961 406615094 280135835 424529313 581373083 309170891 346905216 914832546 878085483 957150112 733503813 752618868 934355769 938801161 753499267 560260886 20030595 828857049 885565246 824268351 616411432 1006067445 1069081791 76045951 821520519 617935583 477100081 1031629114 246249030 831154552 68407354 262371972 405701398 214453319 258660101 37530296 531415880 163105098 363691788 81439013 310172531 751179192 977044371 196682467 912428035 483031487 467002213 842332743 964452344 769462968 45544740 632372024 508549180 1036726757 41183596 691800126 192408133 961946519 1011945713 842572015 593725201 40380361 1046853446 675448831 88764599 843321415 655102336 1020592416 1028232378 62287486 454951114 255106207 421383603 994135634 149124398 819777132 153484501 506239436 228094744 56853173 623516207 87302551 168409697 125092386 232889101 942352665 109235318 103516217 830496106 647223421 541389026 74813885 1020895046 257651231 622805258 228515415 849933742 191271143 943187760 514907209 669676119 965557989 1015496832 132456908 383898859 1062035220 1008836073 416153641 823184327 1008045163 377210604 1008427511 315764624 787861618 789706158 672877189 553517418 80757570 541588504 609127399 765887256 287668532 395036722 6961989 138406490 938675507 922008816 387723417 1043787722 595347518 241075875 727968003 264753964 496753579 604698012 964229782 910991576 47644250 309093728 207959827 105199173 88791748 969134135 310141118 581076270 618262000 1057813258 683291708 937710708 155908821 822668945 660960287 18336247 807795029 693651022 787526907 961140571 44802364 830652794 395824899 601765601 688066411 714697497 386968173 49245977 623335481 820446026 310427627 563888302 686763064 318968220 447651676 645926606 826770375 225513185 912450025 803935284 989330713 994604773 927417633 1020332614 932539477 22636647 233191548 598181360 386917357 944930242 431386214 389207420 1032539449 15115535 1022833446 444608534 864491570 853570311 56237659 218116185 79053965 948166143 416897596 889655452 599057108 731229993 547513248 237992197 111734254 1048357175 556992548 1012476917 929375777 721420378 665243433 477101925 547232427 59594947 478694921 488575279 167141483 1016795946 484384558 79058554 736423205 1066861290 882867981 334808099 480644331 764630559 822843984 1020021646 36837553 1005747691 979566685 632487682 946832777 808476216 211642055 142770993 669697892 1023376499 379466362 812654046 366245970 480559437 21925317 194253709 107473898 1043791856 977759413 19312983 789389142 1021385210 36795482 58832788 967480887 755951777 714425361 863712497 525249420 490172146 385261191 828577448 188728673 61884462 99259882 889004526 708373713 153167825 947955489 685539648 523915092 398129419 860175879 974886302 747062875 971800445 519773354 650493488 349134777 633568751 467748993 699263805 470647146 331225427 442074605 656455381 825557251 536080659 835008047 360692630 672816512 1055575934 90832710 209588949 1042450865 821492464 800918695 568624816 93133709 338427227 732993610 255982723 1065408215 983664166 310202065 393211430 779078183 169308391 216919071 614190733 493861427 284875791 284875125 671587001 16987446 734597249 175592579 301002629 602965700 144495775 107394005 778711729 747042088 1016737028 931820741 1068740852 1064686293 1052279750 827907925 285644852 377101446 273583273 797231477 578842069 43339533 203741563 816901760 866036972 29569838 147507170 650953339 100829888 739360346 854901806 1062289729 136908750 756815273 514087944 749154332 810917482 462266436 827101663 263265933 665809670 980591064 530176002 815560855 340022463 996203366 786255647 822037614 371059631 38858175 598789920 709120764 487623774 864906411 25013194 714513811 547066023 674170332 509773831 396607783 122739453 156560070 156836110 1021288341 81776665 783588619 251275786 601876449 267505599 388863764 545561881 951716036 9532809 1004111102 469147407 416893336 276458200 1046914532 182973568 476480414 1063499063 546556025 815576484 73071921 921117527 867242782 27866344 591494225 81255768 641256764 711597720 439816375 565779217 458393306 1069076426 317360326 759349155 267582484 63149889 294344092 355432656 534023290 265556910 458368148 714229754 1052206128 707839709 1034527668 152514091 166431428 184620773 920650222 830597178 863202801 704479687 492941049 224840171 986139788 508072188 229737396 562569092 500064608 692062880 694698108 1006647343 1031793431 211991130 569524885 1014833617 226774756 810674696 100823112 260409095 664377916 118899118 1067909874 797743383 175712457 979594164 423546404 445533582 468402671 496916793 1062371152 88801316 447975272 308823551 860781223 816120196 321246242 20606972 714012258 294237004 191958134 913002400 496280417 171372212 343064079 711209851 998974459 188753661 663314910 1670271 80124983 85903847 139903970 234085626 877330655 236710839 26466340 154304740 482650724 1069386966 349920256 708842469 172611995 321697306 228727235 245101503 845575903 888684216 219044768 725552109 978840860 771114720 993707753 793425135 66340845 912636008 625907688 239912901 535241081 270213534 325716124 572827248 370631015 104173247 149694627 135665529 802795769 1017012855 125217782 930487816 753081078 154810066 431876102 212298598 314082537 545728516 1033081858 405231672 500265751 174753095 626215954 1002545265 824710111 292063355 55248470 715020288 468135 722422987 900252460 407351688 947784245 251584801 108841240 398792158 879881285 774038965 646485444 1053564686 398528763 1010115402 284661342 941359342 642421064 739523829 899120757 426431784 219729349 388019423 869643946 310313373 581826677 457346753 940474250 936640841 208881734 557345756 701612836 593135233 516123685 740397437 63797156 920647729 403264885 58189684 661647833 131047946 485070086 902410692 782634337 77117870 1068551032 967535195 345254993 784223051 387404891 338983119 236509206 830849478 180883529 1043793364 331960848 788159316 36210354 481306320 944450302 932357881 508455844 581670671 492115794 904520430 874825144 567755927 296316790 51939063 744566251 466350025 668736484 641647567 1020433009 167633218 604509564 34003127 1041412458 570912226 595916426 403535170 714994441 947307618 623954158 209077416 858192941 218953725 517400207 327894240 744032167 723706186 431592454 994023455 504020484 426370788 671954362 579536346 580801251 789406987 767920004 458962287 58673311 43209545 658883378 648522742 981596249 708416188 649587584 981922696 134936206 768892616 947666192 78163539 633744446 767377284 680814524 36592811 222916131 176462008 114581509 290286151 235933304 114141553 65835454 6620734 216215846 33470616 690576745 581952890 447099758 737773679 115644504 250171845 1002685721 1021193835 67891662 533752617 999152610 95992029 887548063 909415712 384884937 459686548 676628360 692188675 62961299 290815001 485423053 937955577 367675753 940328935 213582802 39551744 15589787 1656347 785792189 135553526 78026852 685980922 1039678637 507790424 976491317 531823215 822375295 45645603 833777149 661778380 952893802 222796069 365472867 934212484 948327751 661353416 516956102 68341422 314660663 483966036 805600602 517505039 864222595 349885864 202004444 843128440 481807123 314106549 1015649417 1039403520 852558811 774958640 168905888 973508701 695356866 340895581 593710737 1036166006 386389356 113742827 590414292 393175619 427217723 246895954 1010010389 84631459 223487302 247200038 202184851 99816771 838497319 838050336 300167379 780473729 599499647 773471056 502324970 435814873 27486093 833991607 105149868 357349440 443833178 1032224413 420260045 575850624 792849099 810860927 678181140 407259361 575004187 880888274 636532467 893882994 530831100 98787349 853010641 794549960 459595207 577400529 494972606 685341955 1046754048 595756738 281036785 765221189 85286871 893699850 42083051 231301262 415300958 788313789 761271435 1040883028 710831896 482115312 344058488 957857577 27128644 630970296 431531855 10253823 969156253 915020928 862578843 960880437 18442350 595771230 571181822 1043971447 28994057 608912420 316559796 132677584 390609267 685342410 50202453 867787776 838158723 649956547 715524837 509172051 129065088 788306515 34893476 374877225 427426079 863676409 601997183 271385484 527522942 320166294 206747151 565301209 660328669 440953398 655465608 253896442 361543622 796824312 437639657 1050901145 141564216 195360986 1045898905 54400845 387077775 436518493 345344873 749568580 713545184 1034972485 81014572 399667325 533411891 756627934 901908229 566953398 368342474 324154208 34367772 601881100 276587058 570291904 25462225 479165412 870055942 983168946 239237149 806799657 976186490 575936359 1003725971 188013875 519336454 875612729 888305821 900687351 967510353 157070640 881084936 403235126 335711527 1038225957 985884116 424125666 815678326 123390940 534128180 135759289 443318654 978526498 122848003 354456930 258604610 866448730 13085102 769604755 864165922 527793234 65713425 474036926 154240191 884724263 514345855 515955969 354399178 1039457831 412218395 278834254 279730247 908795191 213669074 985684250 320665849 1017068922 1060803081 248965655 977146450 480223675 242735783 67592456 551003044 199695396 18369375 459053852 256905573 471339799 692048698 195445028 1045488763 240775912 461871892 143223659 1004676191 551002567 847787049 670248782 37117374 755394837 12375294 944288410 782522522 1049717092 940973416 109223587 538940189 472563654 117749078 143949005 409372638 192313868 576305618 203755067 774634943 1022405603 948262297 768298027 1046382184 473090473 91473420 901426756 270793333 625482648 324882137 59453361 70986875 413474313 379451575 439678511 255744363 622492985 387693584 308945943 570197023 171842441 599079968 318260250 217023870 352104189 795049848 68799410 302043590 715293668 554495209 689076114 800520689 776251772 471522339 655716290 600111789 935499046 155052444 554468535 393502947 1053278438 534495584 269217373 923354292 466470458 14590459 1051688091 569801114 781245449 844472537 688354950 585046817 282190223 590228824 800198476 654802189 184910161 620316105 376607085 590142314 931552545 882364584 490072604 589366308 924089905 176251360 262265857 767369833 456576370 1108585 306937295 754523614 684414290 97284764 393908844 52426774 403056721 476305963 716997644 114830409 125270401 764080527 267123334 623529565 665365670 399038549 10848989 918163552 396514092 30383062 417902112 449149223 105857906 4367960 568005343 583454464 1036393746 524556273 598375717 717528046 631013263 245598488 547122600 650682243 1046718888 216718784 293919742 1058807983 265486872 1026540288 818097545 703808492 748222292 165615831 707269525 287107644 1013746180 498974778 608285295 167776151 545754123 48853200 240565110 746774629 91814113 596136810 156278554 115099994 462670940 771150563 312527158 706776250 100488853 938798226 296743390 103106361 255244047 825353472 31510907 774275967 847588436 262079341 991155728 761944611 1040807591 228618595 917864497 692839034 773137718 823286916 1016949911 159990950 161060259 943306844 579154824 12385582 507978614 677692666 561612790 501702386 513864687 519977051 786728238 531819326 1069052817 921134909 1924132 11033905 484602929 344083134 660333057 710068039 997450310 112239809 450429222 1041868156 934900383 328157870 610168747 613660130 263935609 810166995 61988285 460087629 843137085 733101304 7006983 570012479 328519185 203729186 244614148 932036321 182764900 704101806 559690915 453756053 200200709 863598889 683425242 796067272 210158375 805659596 519483633 232877084 927764245 142215851 80515111 529117472 776991138 971845257 765829482 1012172130 86787833 1028233934 1061528305 68711002 172287147 702914135 886356764 131560030 869406367 200328298 291363475 950846614 213744302 741394765 196013471 196375318 130285604 984890238 638172629 187513303 1006539756 416790772 816248891 918579337 595939522 809229943 204625149 207875876 54866734 766660135 649243568 397745851 399784443 576898317 836901761 568910479 610945292 473992050 686059613 664686811 573454869 830202083 53916093 725931465 955352524 221541809 64488978 268738494 889352602 398804231 169731185 960180539 399587610 765864339 419147059 708905680 118552364 989271646 645775791 99570556 345713379 333614136 266187587 358197249 1013810015 1028731008 94885155 44524154 880515830 929414036 670019710 425299364 824268653 1040994558 703971539 401095729 705357322 270928793 148089741 654973926 955030188 612538820 776686149 265563872 832999270 429653782 16148544 1043271080 841790844 1072994556 58565386 270305405 1001026392 780701452 1030721114 608771200 126895883 767566394 537010559 1024587172 637703541 1031012142 97901768 28288434 403588568 685531700 675235807 414873643 265888154 1058639283 1071977135 603362146 904682684 947174375 892541421 137799559 80046441 288285368 152393166 936940028 483278197 929688422 502189235 985548080 573845403 256714617 1019028814 436512025 960716627 149298702 155381899 558103312 567348695 632536461 190519749 475207522 466345048 910907562 33593382 669649425 852850887 1021371152 148946473 329081910 347496386 273903260 1042474225 702354300 48398044 209927733 1001772835 668665021 337976453 914209010 680598390 305937585 325655478 763964805 411605714 391019008 436308277 721859020 805023275 495244628 507849673 160241371 766219346 907266683 205805801 56860582 692436609 931915134 620178053 528191729 250988487 21742838 136467233 871499719 824587544 428204067 800545830 28790586 248428439 473250827 932165802 54441670 417439532 1053597431 280069955 716823872 587398071 825978971 985151895 384289124 804199451 1008333038 352758076 338368709 456004302 978796055 839598042 686134804 250204816 402108525 25253585 633845453 432745070 831878868 786585964 92682917 259969024 957032069 851699166 980092590 53961803 42169385 789832741 548316558 193600021 480859968 910285138 869331162 355661857 738823558 968948853 308930723 403107075 508889900 330297490 110013266 1035768217 198703723 383289288 535406894 568681487 634914570 334134497 478501453 311465493 888358638 470039760 114145924 434658536 711150962 491259030 274293725 745461424 242927676 1011261227 276833353 152298376 76561080 770067934 854156703 433836971 912046949 559568365 39156535 182969323 206387132 480220560 185471450 202484359 378179947 602593958 676102011 1028698667 706963167 408193145 493092479 57967077 771741875 980554983 805414291 768659574 531735168 973430129 774148989 582261838 322279095 568271023 327349330 1001315691 321887138 30275393 9273282 1024159908 723528342 924946901 221025653 175633501 927643348 641394668 466041168 372443695 990667194 634438591 609858329 336592689 348254060 945501087 920498618 342345527 899045345 729590795 297679377 762916522 652635722 219266958 338310217 791241039 632591630 563532845 449902891 212306291 585224903 783019780 753174497 686913056 537964795 928199376 749036811 193638410 76827410 327755388 942034656 529567772 179570065 878314565 591646912 388377071 544206122 396828538 1016204504 582040404 434197397 269971364 187112519 797742367 387452399 991074188 299364495 1026119944 535524837 576300789 523572360 691204502 807806084 737376331 931171341 113725344 981602623 530034912 140828664 388783472 632694505 16192687 458527915 294657359 691544585 205994392 608285499 133237132 1070834659 207906926 265971782 714131755 168671743 358815230 93985922 803215894 784720466 178029310 196056387 863156619 624418309 528537672 643686239 570954849 863287341 227584135 837612798 852162980 803558093 1004430504 631009057 234235755 1019189831 26992035 1053209058 700709172 914942211 102058776 597917179 843098550 278590404 104617355 39839779 63114645 119996721 263147010 193347946 1066630575 697832489 145681273 456692443 41290302 758628828 918650423 48614262 908131734 683233050 251041384 880994760 649035282 586207411 142827300 643617831 554390569 439181221 648617522 125197796 650329506 705178335 272504378 591817893 981832289 828679996 99656136 659000285 230156525 142519423 326600469 260832206 257385270 447123900 1019245526 1021033635 1031560219 471972320 809273628 1048004832 956594596 183867944 929952254 335057704 320909980 242643798 882191808 120345262 91535942 283586949 633765441 149865286 132727178 648761335 82648446 830056208 914330770 734846313 690776489 184254923 408025569 413581999 257558579 469132158 725608571 179336325 572372425 843758938 624824951 975123715 426886145 833324635 288578216 134954706 500960910 83613030 979523029 12903481 680576327 579914709 212643513 278172524 681612061 108277510 69899677 660860213 890352788 737485919 1025757758 680033120 734602478 754163855 708020224 590071552 100325370 513531588 306200553 852711903 853385622 535786422 942367967 723377509 944284304 626512562 70925548 648474656 205323165 372555690 423134952 14983981 309342757 144180343 890066695 546780770 1011914005 386290622 310655491 957119479 826505974 112403905 724815213 30234083 681263147 340571342 75450894 77478209 411136389 774294360 241625012 3447710 694066732 615524585 987284887 1004306818 304910876 829436750 1037429792 1013428285 1036555058 605348496 274665841 263857127 779857073 476068300 170879086 414219129 978358016 834497284 291496553 67823286 184404003 81369846 683445917 388631609 515428777 948562938 45749179 248297323 1016806570 788467087 875717299 575505650 1019567798 855455989 83771366 923904749 636010483 1052711977 639538461 275153177 262119008 819232918 204520634 374205209 536787520 809739344 260076690 632049082 35681718 391872676 591978637 105058333 12295046 634252018 828742161 346859816 404897047 690899735 159552614 379155464 1051832108 850951673 632687818 999881574 849252201 814307952 605547782 447706808 454626875 901921671 606761649 1401619 124462585 17097370 881100170 42521646 658708174 930138914 40675015 307098285 161543674 737207916 608744136 580390160 469168564 598952768 901032605 791907659 787744645 962415458 951620837 226952702 185477017 194107681 778479055 767146938 516525342 1044257218 522674723 256587237 434336806 822049022 353134028 762605832 161446088 251664708 330377029 932564378 51421845 998700595 752762052 984591380 1067982872 1042689483 150917823 197526634 21324548 2438865 921379211 896312499 139140787 278311849 845791092 752074391 131571827 781071775 197982699 1034966221 31609655 821348556 574701913 978248714 620823499 217377187 575842946 736043886 658039549 789582625 584979133 260254442 914566973 1011867436 550489936 794776327 788256678 805395615 210085565 438868190 438113227 185096136 246339783 244884515 858321892 661669259 492788502 583549200 1011648172 371458649 36415765 433673303 575442980 800421115 566743763 672584633 881282071 487491454 238384780 24988420 419170262 87999799 181780055 410975631 557217845 927376183 226640368 552881577 1008521612 737358162 709743755 921722976 919295403 725457650 951078814 119766931 115970877 40262927 849022543 506012915 258626478 406862353 328574575 239390239 287556689 1005742457 703388604 903765995 483200815 1053893339 613228739 671504871 264450335 696013172 670595832 363755800 75300837 921390860 800066927 701013703 506179298 509659419 129533694 865988503 990323904 161889885 1047619045 390260189 352825673 283016084 813857582 816754375 284229290 519367569 160783283 955626281 1061073004 884759977 17174217 426903600 491489851 931428065 713335587 460704529 958416222 471465531 1004887525 940338244 345384118 210452730 700771469 997913249 5052495 768906855 174612056 950336825 108062497 503674150 652476528 375465712 569976015 1028968847 8907371 915788088 182546870 465214049 586618911 356666258 427133985 1039064090 322944033 321775280 723873340 285280659 759127848 630302753 1003415792 710437393 891841288 623051593 421873959 423620913 40076579 568446050 207346109 139603524 157899304 85589180 103423420 880726408 612516111 792297443 493657117 896844428 307865229 478747795 439154393 702313155 380705254 112221440 934977854 229002636 641428575 993163260 968304699 745339103 479026314 653302555 117467113 143059092 846916546 33189221 858757024 658489993 872815790 9697469 1042171987 685501051 947125572 464137114 1007088659 701687973 736315433 64221342 749354417 1051554031 420661905 116243953 873068667 638938847 490747025 379351507 194096475 1016560408 687557045 513563396 122069156 208091322 897493862 73009413 180565685 362354051 359445413 197638598 842464176 995593221 568003742 627127259 786600655 649523129 791170196 742692780 341284945 1044105658 416389697 1016757026 287390256 543527318 32794332 472808247 140211481 497176591 617715922 1072013908 1011480306 1005218163 887141343 827675750 215281504 270027792 113641571 745744595 265529803 535107121 708224144 387921337 371756486 699465893 387782713 295244579 1011055399 601759975 137037303 753639484 76927121 614485316 939885953 380148253 567032521 358155691 803231248 760184083 308251903 826948467 777295492 717396300 700799537 444262528 136034779 832954041 290953286 613638141 979090708 365129104 170584739 820581164 374349775 495467939 553010250 412076153 889788779 572998118 814606852 696988864 232149168 147084780 412448838 180976373 558541491 168580799 467418052 866124038 620464440 803178450 854748731 1044303378 216580104 457225657 132690621 210796800 929479099 695955420 531073092 453852517 1027217016 47073686 82855935 708914364 579493760 736735447 69051161 107241347 303942594 744775221 504454189 1039416047 820440819 83341076 668754644 186478106 419934775 951801892 509421605 330823822 279042552 191081490 284276829 450501557 633093441 849047625 1014185247 663033538 61141134 547626492 612126412 733125724 590781946 962434695 252326984 720175550 955350028 489633916 787224598 452571911 810470133 1047277652 391510683 177529762 519470852 753399473 130999717 832704139 246200035 194535930 251638104 426536985 5147345 546293469 1008897683 564395289 69209377 283099307 955453898 631145525 733246991 1064101769 630380942 243198194 927204427 673861069 828111103 33915684 401198993 331552375 245336245 202175334 996858044 438948911 378729888 526498304 600370624 475222126 39260754 448126098 1034657864 877788122 596620336 736414248 595699416 536490778 853582225 115581604 220285468 258668148 520036215 493844602 387769159 660313134 42232174 171852924 869532757 954758454 511360620 55432152 638492998 1026082789 839378032 853868214 172550483 950617952 366751737 769417016 884191457 301354320 306867571 318892104 1042523074 459587563 631949330 599486791 748853623 791147616 189886496 77966195 595121176 631786379 752442274 553422806 813693303 379745653 977419274 781464218 760787496 802423665 322120581 717257537 150497614 679745476 43882417 584239616 610973195 120770052 16725321 950631436 460529853 1030463587 198176191 395149757 621617046 478559675 934690757 456223855 750915344 516001321 83152952 419024692 580980786 230063496 729975978 808555201 807862434 1069102806 862159218 853428731 134122543 386796778 674279153 914245131 414426484 577418661 771944185 717514608 474954490 570549086 973729069 839219525 1062899216 758961243 520754001 449313503 389508365 586262897 941610536 735393124 193379502 823336624 265671776 357994989 410698591 564195362 1047605664 992475627 72461570 548891166 292823829 302735773 136741715 312082163 278551889 771021079 394040686 148399599 1028269132 357576297 1018608741 983783042 927500826 975159118 916510253 17407260 279945504 479686666 736491220 930533596 741917667 709740163 416090235 746727124 835421126 519695274 178187608 115266472 246588404 656850676 531647103 956703274 444146712 567603790 8898632 511565619 43131532 546382010 444859368 439507593 254157517 964733421 462739402 4830957 923849707 414056514 382484827 371995252 475907876 319399509 575084922 471013110 832138922 171600947 1061345773 728811923 812528760 575704991 36165707 479689641 904410018 1012996217 611302994 900959689 184473966 657762462 421135826 754228753 94806135 575954865 906110631 982326299 157838468 893831600 826884533 185648046 47087441 645494025 631753423 203938331 182724005 844135122 456577006 830028361 355292631 587512716 568000366 112086705 678397974 998721597 458931223 509243860 524580250 621624277 745487678 324358053 191713293 608128871 313988030 65460239 277676212 279876276 303952445 547685711 494581881 114752679 809969294 383041777 994322162 157906169 15497607 633003893 837136115 134714420 211108183 274557143 878161466 994053908 78006456 332316682 90723488 877367745 893921193 833759932 7219734 928897425 934201370 728859564 41253568 137049794 216802661 442260538 840602291 865158803 1000597365 700213838 183024877 101866237 346824740 242555291 287361119 296229135 904068910 898132185 271474505 312569166 541432704 569692245 78726644 854184631 538893010 331704021 294662080 549036448 558385027 500077979 1001409433 114493628 981230342 420792167 782195081 499188910 345368410 813025808 1071165648 654752685 374985873 115200051 614931010 132580420 543456444 324311752 609612042 930207676 941711228 480614388 830961929 211933081 514074143 1044232823 1069348749 275130879 787756461 675094075 26499575 415739721 923752162 661620921 895887318 62355787 618701665 167809988 868488546 25353584 793882355 726104586 104361769 398187290 943699352 456876667 482349764 723519415 918279542 189840547 66363326 721417143 614117844 339633550 116046217 502136639 270822350 1049338948 417666482 989143964 516108630 950452777 693953791 913149367 131734536 538174551 415251865 760613308 1040150527 1070567933 526642128 222966122 84847956 11010564 47277896 718259772 697878311 425699147 808166262 438773731 443174811 99726819 785187293 804468192 759285628 968286243 914688472 278563650 1038586547 319419440 424361921 555143926 743228163 296587327 146607265 46719620 335410486 749346736 390092351 1053631343 753151166 835380582 149275927 642912899 513810519 189921898 391775872 890853240 633762019 61411413 814537960 281443403 624170875 1000701411 781000190 319549400 680029890 499203701 413979371 309939783 933777061 238519725 222897556 559788685 1007965063 64380590 930345644 644523592 117562304 529460679 96891168 261055272 1033530965 657472543 648887793 257306297 401503240 469305788 786293806 695067616 739844848 158151182 305750768 703154186 838846163 809031146 49006347 1025158169 230297598 511673108 320300482 142321164 72592711 758306084 1036336207 851696767 988396850 410106935 787008628 973386302 648017025 414397163 766909349 491639358 540836231 994996291 834627251 229225749 529313414 447775079 610298306 43592847 806348210 508318378 754759725 301413239 99232550 156347900 266079163 292179296 552687147 114699356 573167322 655366262 55680662 811169278 236078243 747670793 97353032 614132645 670736432 748018400 429353679 174476968 552297155 408653906 926753297 296024534 199995574 940352970 78101355 1012304150 294470222 232052267 1005555738 148576646 729435960 718524344 522063618 247091513 707504231 459167913 601354922 349445946 208746306 793897291 30005772 926303456 1042547177 512162076 887640589 629414559 699630405 369837704 481149615 60238152 98087136 368175953 953598030 520333135 671625772 894053691 1036693897 575156355 740349928 427415781 734588911 858427578 787573280 550755307 676662639 486779915 272633024 578259956 722803906 769552689 1068411015 173143875 371575926 201440590 294965839 1008399869 1051950948 413759601 979805952 86832959 135666868 749037768 1045475741 905990977 484209355 670714928 653221916 118546383 210485096 199903664 942160799 397055132 552864470 442144786 1057095338 668377753 281681425 1010591562 36712595 987586860 720571962 900424701 706419231 569199696 861014423 917617660 586749326 23710732 407681923 53590058 1037534057 687606299 548933866 566921598 367947500 959710628 298515813 127873773 335933174 880304119 324318174 254673224 67135531 565730961 1056391398 877391006 726892008 808725817 564310305 534573514 707619888 502176379 68622162 499255253 1011285573 630341585 209206568 708534848 415905990 395027712 223191386 298254870 722093293 432288786 1068737101 642488025 1021192624 656897886 473296723 570409433 354487751 379480708 861885293 854442902 165496627 892598242 953840565 975899473 800915225 30293381 839912455 243872992 282909590 547343618 494605437 244161225 802637321 1012634713 804402440 977311494 918835162 756124220 42321586 1056205010 273640137 665541145 511408631 739476838 632712787 515266118 779869239 302764466 403419620 69943208 367483117 441891014 813962597 750378659 949289525 524157424 162641225 753495588 823048371 907345327 877541523 512310894 795673315 105995488 766288479 167772157 356529997 1064948546 311328262 853432452 176031378 127233937 512255258 705882590 514132775 1017947104 446313996 404521973 493134090 722697900 649406628 707050086 153868593 854715822 361085160 148881519 19943281 284997101 647271379 610364088 299280508 407965788 434348246 19384961 591279403 710174918 576787069 362669453 933965169 194733072 935693705 835505883 521544079 1027147490 270637837 221319661 106097553 957620240 1051923224 1009656001 561339824 545321773 933082062 196770570 721249405 181786303 677849523 142427967 225835664 55994154 923547144 831186348 779354989 163341310 694997873 830849185 347391238 892496740 238445637 470722468 937995347 762302329 272451194 470509490 970433525 110439177 543985670 514353531 754545183 281065390 860152889 835087684 342672956 1024192765 45548455 53518245 302264216 488596828 272531406 388120388 460185570 956169333 466313591 181656921 313985978 183338603 58940908 525392821 245030308 632455192 695827704 450214781 864854957 447402045 782694425 464767755 925193771 17805716 938550729 641027971 424094573 951484000 518688312 721833376 830912047 421320169 220079457 735822444 835883528 735861862 600192210 358111562 798735908 735283417 229337382 305879944 354535649 164053061 680904949 73764033 836689173 880070691 824321532 981156158 485265114 168984857 79355514 699638409 405395208 91426254 206854133 32349756 643254286 568338435 677761865 963107739 811551140 167560593 216983979 927388449 431840478 241252171 797398084 530322610 665303469 155245176 347263510 5288718 669556834 845023157 646740839 547245528 896037493 916902554 531196785 24801153 772885175 853366574 16096266 276621050 82144907 82024339 799237224 626106780 481393630 829285765 988008416 666776063 190810199 996390081 431173562 216087285 615474052 435200445 80089478 787305711 556691163 492652645 1028011235 781974277 755672504 478417026 724753923 364140444 294322122 179956052 706412199 148349885 101966213 629179319 764340593 1042919761 605620019 249487135 833684175 981177010 923331709 732901488 48046165 235423269 208150581 320456143 404509110 326887006 352026206 584297909 538453862 144163451 1008305529 427566070 985284874 246793344 968855320 367563083 549938014 636717860 734143074 476797140 122728572 310804870 758298686 518904199 928873852 650868035 68311210 734130702 37376531 524463960 308831981 377177197 661145632 617487588 1050225282 756911740 517810054 97869788 317778850 604530997 709911407 55666597 557132815 556653634 1069290048 155367157 123954014 1054873462 268374953 434557676 705988894 348157147 993208217 750185956 667896806 605761538 290249709 865562831 128285615 483316894 342098463 1060197028 627345563 321923254 698705384 815750056 646989245 1052163005 142771138 374716625 820917226 159393082 65635263 223999676 908174298 704448812 382566237 719023081 475639912 814945466 641881517 100303570 1051380475 366646517 985879994 859395894 825129260 277375147 460119094 893077806 747949407 89283787 339752047 737695010 834228715 991955220 967808526 484819715 1044628542 1063649818 836730976 376514568 864568044 78953680 1016876734 614867011 41682084 138637815 695071729 81381840 460039051 181030881 194245487 679787878 1020932755 802726654 178604532 574961850 15401817 220441698 1032001423 704027619 300420467 731165163 1000358314 372361196 251517493 544850782 1064479934 672973341 367357009 199384854 144872427 30500575 732837132 714344776 804153928 383056833 333213742 273366102 311010437 797777045 619805246 548629941 171254183 575414153 245943638 665411311 686469739 1068035957 83832670 362592344 186358315 895500594 147541664 807070071 160727213 538947148 209402937 993194768 419881883 528573499 661391648 965062001 595219314 60604291 1053789021 319153186 503747100 1002868595 101502013 381406433 724971267 303419889 792842920 165656869 825139222 876619027 348108246 627509970 472010593 719905886 187381562 485448236 813617517 1059797600 654795376 321567954 981782908 262212156 54977448 971525698 343223098 299601854 720661366 661991798 974001608 1005319009 765833526 984861863 941984995 868403433 322747499 705159905 212580403 364942451 926842028 758964171 644988315 336664680 735728495 526709112 696474862 284162673 878873093 491858042 880708993 720788020 699067505 645778246 656322201 522421187 423923485 921297229 690440618 412512403 38827675 282765966 987385832 657880547 458660970 260880049 175742234 683308097 999810983 582587739 681543305 306590363 385269566 141089728 994022336 535463522 863788067 389730773 1034616804 645489725 124968307 436985692 781187899 451912441 253547539 171788791 383226098 630853114 1066081079 462970477 810803665 729694951 235179029 735825459 448583701 638869150 621405103 816860751 720888842 681510850 767819192 754314290 687883908 252888164 764607897 514543614 515537423 202452365 550011899 655227888 300052427 490931670 568992217 690921532 879149789 505646353 722703498 1054380692 672876675 393647956 110108830 737665265 388123460 12307343 292780359 436576662 244118455 1041894738 374338964 74869210 75241334 694053552 908965582 290679007 453896273 376725735 330001929 624563078 547906343 213160365 1060712071 764764057 989191446 418443818 629856790 242874972 42010355 702458933 32595925 491271962 221479306 147389563 191942483 637628288 1013832744 4576967 809005513 559000399 665374967 984391668 271694757 879297429 272967660 722476578 983397897 906134823 786880163 682826565 396675274 42402224 1027272046 384014626 939042378 46605539 567785812 72131923 432629355 549898475 1023722341 844267034 401430807 546230528 752384592 833025766 1026356585 910410413 22114774 656510473 981566658 30356441 313782270 132051668 24179397 1024859356 112502631 302505328 632062 600275031 53755848 509865425 54382620 409957439 660902358 399810024 751861276 219486730 454157887 224925993 945976811 558042035 1031236807 1004164614 50948432 1008143857 49396319 612699554 355802831 370550989 566167030 102397760 383264463 689023746 100303136 853637963 518066209 897887640 251159142 869947939 190709649 828132821 745013827 933604627 343631410 90008948 515202318 863175010 312889683 174788982 179617981 624619295 811762938 182933362 316978857 202785167 533226440 563204084 734300916 363077808 1036043645 991835832 532316668 807955935 109834784 907047433 656307454 119387730 406380507 823845695 175072283 842924740 6873115 773245777 685844876 274515094 506063855 632594433 36753238 841151122 610762121 15167210 409342034 389509001 244577502 624804709 464555946 874736379 1045783650 714691091 593730755 134085520 217064835 1050341519 188155120 419132866 846919778 42735442 184458876 624710703 1054115686 7563820 361590651 937880321 502186141 468411118 171849152 292856863 1036627343 51187511 142492834 176638356 836804150 383092222 354853123 929662725 41038994 215869548 1009268091 1000437233 771935155 729890253 952356245 1049312588 687816191 277741537 134942108 982437185 779231089 177229477 531342259 804350894 938989147 395989588 24125005 809354576 777691889 1056238180 1040705884 861860749 46018943 252717380 551729778 750299234 542077144 195263692 492194138 689330800 264799884 1031828497 1052272188 212893763 51199219 151959317 91731778 691678121 519025075 289150478 392601856 335268549 1051738488 130774301 403239989 570997006 508623834 992938791 694990652 422854393 91035989 552745581 780618561 561962998 723581047 646620113 532388196 979394318 1033633641 933557479 493715366 717222856 716157311 384922900 315478427 885842420 993785162 24696185 34900068 755626095 268952849 686293238 1027333289 299123721 107084645 285198022 12782660 264607700 44770591 866243133 335681869 934324134 852920419 200610640 707065182 1051892127 378746412 403824372 110565199 574019157 292751592 335733562 463049830 10043384 996926593 975971418 541421755 124102850 695949794 301147605 242701276 169013734 881503426 307615105 463897049 605751283 758802346 556561542 337944325 288792468 691491403 652370353 118575845 130336945 809296865 769158926 301133467 851642901 217673013 462828078 60098550 260139793 1045926831 419556054 787176449 675414319 850684704 440249215 968678372 984205857 831836525 307558102 663100514 942321381 64995730 549093016 530711329 20123992 84521637 506578183 639608213 289251174 768986954 791841737 506235943 1021729514 625069565 99100579 908944138 404304269 509667397 732001922 637192743 106477645 126237300 343388214 526678823 971803459 819951721 517586756 276291633 162948482 391973000 584311076 893686367 915081473 644365568 986914084 651068964 149674110 633993400 161666702 322018232 822595336 701437408 154176864 204365462 56165270 752815905 682066567 822389036 409532162 285525358 344789082 55534235 270693375 799527738 564782730 668375755 430342742 461627450 345537008 471796395 310737386 511482003 219558646 512001554 320514560 448676189 513607303 302656677 1062776548 221157095 893403093 576379502 848991232 477722655 49380512 617880834 47164499 810301911 270211535 372660161 389845704 612669546 1014122467 679396058 713408512 551398553 549920333 879197404 366826625 649656602 493206465 1038574931 506299902 415253952 598534575 804414072 801867630 1039812206 183347280 590087553 322566276 623972221 748412495 513605545 293701164 1048562392 650634940 328410084 731325550 717472255 348639 330795070 349522912 413237007 639405946 973346262 174087615 608340083 213531167 63912037 437047903 88637160 899558900 622157813 51983527 508682548 682270077 91324224 443760902 607768209 1060500997 541305636 413276912 813449418 975294607 233761383 1018881385 940562971 222703169 733020669 891729859 500882493 27000818 364229019 235929629 1056721006 389904844 8830389 655511039 110586739 118392808 90954891 332214863 873913295 66843080 766646305 385492788 775424838 295419247 944895048 112082668 408867534 652120819 882806517 197008257 814520671 83024531 746290253 521058942 533910738 873884453 171942543 650939983 791348901 490260551 994420190 479142004 524777346 1011717161 622792075 738160506 157186685 256132799 859628023 1033777142 1040299225 218915119 1015574557 321221151 23554077 640714131 800565294 925213945 37983730 829988883 845720473 27600789 10525353 717093883 1041952545 759829532 879585151 292809961 1060572401 26467512 190525651 127984215 662088757 535381960 396773277 388514860 337532006 610209161 783083893 26267778 679159584 726493652 260780371 235343727 33763315 210448893 528462669 735169667 178140047 919318603 904502379 456555871 575193225 160652511 804834936 25418172 113145262 1028599882 844683930 628496242 72677384 874481927 202197352 312101765 225848201 492923153 851413341 779230380 583500113 276229861 841916845 417531836 1010007714 261272158 1011872945 936297133 850814450 330996737 49032179 698670704 353235865 798661528 78671667 626781901 904901238 510458141 471715240 324341063 408101569 514469397 916578275 302540186 878185598 176627354 631551465 542456601 931333086 751685679 648668945 382734155 232511602 953350307 764781838 440241546 271359537 497355982 568924123 55353830 159753390 795570486 682277753 312229481 717580664 936394454 705727037 141166683 588968708 798961379 567853389 778951173 833398058 723110891 55789416 489674243 320629279 595930087 366265018 980125645 934401866 258069955 38497117 827395884 98284497 50633781 1034855469 103041316 343451319 7790770 587370221 614751466 674575048 749994505 216121079 26022160 14701458 828432379 79987315 575300226 123124043 1069190186 855380746 716713057 205162623 841745250 546257339 337289841 156648216 411807457 459021980 400068599 277450749 641667605 1026201798 290082842 998520431 182852621 21795139 323406122 156320412 618490002 878409744 99252050 47171356 28718562 374857031 674351443 705227799 1037709941 456742257 347961169 991263856 563470930 357333650 894058166 842814039 300106627 824353826 625444687 180203501 153381655 827125952 807282341 636483716 829301249 797301899 178584556 875959556 41150270 379218544 892719472 811201004 348246250 627097021 437983794 573605560 609413106 839730390 282342616 742849453 899070388 229476976 1015347770 314885610 455533220 995574374 202494889 446772221 446467872 428704861 708425586 298349813 776759388 805600875 622961769 622611610 402064723 387857208 553621230 700217913 1072412741 197766457 397845372 654112481 825111037 993283503 359611357 1051119922 831803567 552878752 842801500 122138954 734613520 387610504 648267626 261301003 1047485302 500480494 518240465 490768356 644597594 770441161 245484373 1044493211 214523227 413824053 442762439 535323336 142566158 157245429 797534467 600297483 554253287 558647409 1017172983 710798785 185717152 256806843 66317296 593707992 528942384 144215760 32781268 1059121221 504894550 322866478 397853960 633452790 815014780 1018880743 65739188 581996375 105359770 837137024 170972764 941121190 454184225 635696749 38893028 143042630 928476915 455341071 357012617 557364651 722605866 726611769 231382147 331556346 270577943 424294142 107563784 875867305 520554160 150108776 1068936821 434056139 574565849 731658598 214494340 517406481 1069698714 740592517 109379241 856560920 870066733 645062305 27531398 670192543 167446814 910769244 739517183 738399564 684047729 969450989 47253109 203694564 859328001 984586086 704009525 2382503 1163916 384704855 267628492 681359999 213061982 749435841 481922559 299461205 578796852 1023368691 931966271 844497011 339438482 277464339 178396429 850178455 415734405 434976285 84897209 897212084 34856240 374840150 1030455439 1063085410 833120243 463689471 649647876 930544267 810735025 983819479 634254061 681324663 426625066 139011643 984195808 158200750 917701766 1041340207 1008696032 928272407 618921866 1047435153 578349875 176553193 1001406169 536154730 503622003 460840328 444750319 68195775 461478007 322120742 9220123 550472855 1019326255 60777360 27782282 972626473 231230828 997971768 641449020 840789987 121547339 46688262 937053036 665318920 65462325 833465067 868558508 469388802 736522189 952349942 866333340 138621207 724437113 338018662 754855608 380204971 156026052 689236125 295129305 1067649110 255532561 854186412 749826250 844735838 451389129 1044017683 380352985 74724199 508574195 878283780 597684479 454979558 407230478 205488739 286314145 626959118 409759555 738437754 667900369 653343028 16394761 119363697 573126074 96825737 904873804 1040472920 144553539 271516251 912894332 176696336 695683850 911796897 968681197 921183288 232003773 361557148 150783323 17538504 371667795 317396976 844044650 892307583 64537592 347358619 244165068 281787497 4063225 68857573 2542787 1068151191 1030745375 576980545 372024352 1020529274 680006979 501778060 467140993 799846134 253975678 931901079 910686547 973136771 18081442 230521951 196052523 196160651 986719192 975453868 592474216 328505517 215117158 92868340 204008611 1032382211 638041830 599069039 913346508 28051514 32048065 986781421 693994671 918409067 18349652 17378313 374361938 337607002 628336237 822010746 154678165 842728583 944455642 415672740 8748840 170666141 731220561 525320356 827587387 515423778 43880346 175866583 807426049 758548171 849626229 222559888 426968090 714028348 842681037 993939237 510346547 194357018 407681371 745219541 383935465 254111926 314622652 722823553 408543478 632193785 106324772 669068829 761587349 273747026 994436135 403898606 906748358 1001781852 392826222 335273720 447422532 483705079 894199734 685470587 655781460 258853333 311550128 395715338 131402524 886088451 645470219 650461926 799056720 208594560 422913139 370907994 591838397 1017341383 409476097 568728454 207825273 880381956 768441145 738191682 273201898 877026921 1015394414 340915472 957179532 664410644 858749991 687912126 152792400 629888934 148290673 826805041 150901945 972617255 202064908 128488873 132827831 1070498148 2872901 751432651 1050244636 288782763 1072952557 751116133 408190381 902173813 858876514 197776498 479474091 165294482 822910466 336168628 738848872 706047240 801984208 467833186 183876383 1064621812 743106496 392930257 450427495 189150137 244878665 797441760 428194247 333680465 418466758 98139627 146885068 446823900 437407613 421324510 907590569 160018046 432639413 209132441 496519808 905079386 278451042 990530538 242400235 703370143 91510922 194763053 431675580 1009924008 891155767 289748804 842943806 185370174 463637079 1026465448 963830041 686785982 626764746 147199665 684252837 591504318 995392956 574970101 396551076 418297494 234310005 240526634 75514947 456878689 823964726 792367497 261912935 656133919 300742208 859317835 431821475 563216653 309168169 419750103 295316768 637647343 146578600 394118137 171757513 576141664 360338998 1064517245 400515228 837356338 628933971 372104002 666186459 838099547 934254014 904491991 796805498 680634513 248743535 549985127 148572176 910582305 47076705 707488898 225015197 777404019 1037230050 79746937 180308202 912424906 286774372 643508149 324916600 643827959 303878898 401113935 355865479 19526755 710728723 707066806 808941491 925236248 681838575 384454740 16561767 603353774 307640765 370493620 509120296 175007704 660462884 505781691 568316494 573706534 715447580 234796963 212855948 998717525 286048024 427332128 646987325 592483419 159967830 999451471 819272938 890560829 602218427 865548764 623132447 1055231872 84481061 646996807 145939823 648130410 725957677 1018399590 233253923 476254596 863928264 517181133 906325446 251997645 870327975 650189179 130205677 399108167 926782889 478854927 551612873 670061381 724604036 585563939 765716790 1035014527 240055042 996802486 52859736 273334443 50981812 668892799 355361739 339225005 861830953 640573964 734512688 1008662371 188110156 248644817 580751826 483839041 1027363569 140386780 1027446334 513592883 733341352 236112234 186989846 555992169 259861286 817749790 340958041 275472231 517223006 812367988 304187802 723721022 721476041 139464817 519341536 936641191 315381476 620988181 43717832 563065852 1055214606 614149567 848443329 1008653118 446253057 846353733 206642856 198186787 999909130 771077108 742683168 1008891981 332691238 464367638 1065760826 638886519 188398610 474953366 718715330 305847312 564078106 761796801 747945358 840491829 198203555 392765110 242256718 536091455 1013895940 214541412 28867164 876235170 802449935 747818142 817162860 366088165 918444782 806506145 291616572 14185891 687046128 1057649131 1052790710 156331752 679255195 178448962 119523355 1040889482 44543503 787971148 78828563 961647174 217561228 123283346 105571944 988697256 496142915 657042069 962088907 928235006 732045812 890979516 401724887 491644136 459700495 31697624 822028767 942323392 941063656 749907696 46394490 626287610 611666648 526143859 313301424 204245316 590494919 768742798 552074718 619986021 730174039 17435501 747898509 314651863 635725153 145352341 792591295 35458660 774666941 752782217 132911005 40426682 502972873 842865862 743759345 294249063 1064345054 1030534299 1053945523 20909599 216110208 206717081 540363409 798336835 621595418 988869082 398045707 756985756 447326673 822923585 206752110 813294274 286791215 415401772 1044529264 984437401 332442980 473049617 998459927 120250879 69924688 835413433 913212697 1003866915 157851836 213926151 272263814 324153868 449354561 122043970 607607220 990317709 955589498 433201974 730817260 103056340 484013626 598557768 984482186 1046281560 557188634 79921528 264059937 296441300 979449924 994085838 15997332 442513903 1002910186 231742284 203873481 375849008 991100263 997747303 648323666 1024791894 959640673 291198031 145667398 687768411 83047747 581690564 822331973 306049411 968986294 342832690 321792010 543904529 441170110 867932600 808908928 47955597 33369550 1060918360 407211249 30350372 312647008 164979749 544759374 601715531 863262387 944836637 930929198 54027578 110356023 969998703 750255029 811391284 199219684 901377024 744113831 1034035716 958092488 323003989 728337363 346555651 3084507 115921802 224841196 438642257 914572480 1014225293 113160175 164952051 453386195 261837294 346097940 434577131 901856993 847655269 202226741 479162870 445705109 112915950 736441711 539335619 137749594 200399507 101062886 27064565 394054234 614572789 1015073882 133720 1038132925 197359096 687336178 297398469 16326649 837812403 279404801 91795617 587727336 821780921 583553344 136917109 851035479 74722133 702768915 334966578 746605664 822667782 653570214 755393596 875433784 384077732 865949829 1029527073 566531303 481918950 1058155758 191212210 651400042 671113199 286573329 11441492 51127545 196454161 1024167267 498978452 505565798 566771320 584557567 376358994 646256650 560606727 258995968 568245385 739994135 644118430 372248363 477204737 218931232 857490472 909549636 513357508 116631712 101112670 795892491 155106467 326906126 704826516 154231959 677209527 246189455 785955102 320487041 410696363 221564182 61954496 340433845 1023285467 925156215 834193001 194372600 942298997 230552440 875837196 540637007 1032622911 464411797 899906066 493176469 636068464 271309882 66312761 711817632 1014536766 321694660 943665401 780833459 824458810 187231406 820821149 224056471 81556178 1040452590 598135687 447515331 358838576 421935390 282231740 969368948 292966485 115506717 81504528 595191792 779784174 465888158 29554963 31351461 90655204 661548039 525351079 679950049 480011558 786765058 948759710 219986541 301799128 774434176 753390079 359721983 203449524 368035494 98085088 144134125 556207442 353916536 491119847 186234861 455500187 564790858 360945 556967177 1022265244 284616302 280705015 668286754 665660614 908550777 136704642 277551948 1032590900 165520083 618732665 717730596 3928689 568990035 1886940 845393607 252893450 367290257 713431522 799234728 904973661 817572211 988117791 758029481 989804710 1064103675 443875944 415901868 407508850 863044779 512427179 399187939 759561331 912312875 637894550 405877693 756735175 746779621 215684073 1050746461 877873837 427450906 688448650 260710416 279806716 34577227 940815951 305714121 848668205 861817908 184771473 109795426 731219294 107152880 282038390 761980053 200791353 390176967 929779647 682034619 361424825 210533703 347403088 542386395 535924823 750204826 973990543 850622725 981103196 615672485 775118830 464803475 99461850 679601198 905344972 567597831 183010435 711179399 829891193 626006850 915887985 809208618 488444864 770805631 250893905 993982163 204077856 81064517 489724839 1047532717 906785249 346238100 8246057 551102137 397542407 618220719 594192127 870210395 583002427 786604785 444623068 283822642 89038642 476095413 727129765 801256077 117098902 51652532 899823836 857554446 446942465 981915326 657974689 785259253 351638317 583215482 182654509 834191923 260195062 278873719 798772535 965845667 277370313 189573837 231630007 169555528 898004821 572544409 384396223 635467910 933618652 662216401 851221256 818297122 182868258 491340284 283941811 179128021 84183561 285575271 609955521 313284446 625601312 209947785 129250010 656962577 808040776 878742137 827538434 259108117 926367866 1054188883 604003598 94704519 1057451321 103470546 278770890 351433698 704074281 848475106 28093259 303174046 252111140 676706536 995581979 1063677949 413383104 641925928 181292270 924730558 573894281 64870829 22301963 316034048 504005091 1509287 815349431 282715956 813543944 622687534 52839952 854186164 1048191154 1012621188 949857048 513209882 388629541 204245881 674080990 29451010 615466674 976317598 1008382860 203828476 416395421 54350288 943128000 952557218 538062869 482667357 944047533 276354243 871765366 55456576 753251590 386457520 139164753 949082678 259515514 365085338 52670559 913237536 171697421 339982440 156954836 646877003 336727206 440300860 129113400 1067628921 512654572 817361149 323983696 202542938 509006993 141396820 740214877 474167708 1071525102 717827983 1041580456 395442599 99089264 436621262 903959588 720875705 1073152438 904520840 357960384 245655942 607515556 1052645270 1053047828 380883594 1051806875 867294250 491243209 503950937 438078600 123044404 879090276 738499416 268840765 716496626 657933911 434398663 1055570458 948434991 527163234 746232981 967939945 827416387 110714651 996166352 97972393 385683226 1011249809 830429561 566689966 54054776 965140849 186164333 471530221 942195965 551116463 597624982 174330094 28445291 29172039 134123988 456528494 136015679 579919796 283054618 352359771 62023273 222985577 745966233 339884826 360723584 1016810415 659369425 566807694 889389720 911006977 240150791 1055933786 322444823 779936456 828142562 438057750 499549 360084847 96552513 919190831 664025729 626088912 82979954 760194193 542697925 37791152 876223742 242692579 386440109 179046917 67748685 107329977 242290774 775092909 1013390870 856046534 649393958 692757014 100284496 1073239937 887430928 451558703 465061861 83121579 426565509 211024030 749133222 250255388 279810387 747527136 114915943 865162379 852855522 251576999 674098434 534027091 521550743 4248693 946043288 776497368 636997926 425455493 424655229 1039035095 941845622 520790792 204189101 122746996 683685993 450674590 741290543 798145235 226910025 193137628 288816586 479368252 993691425 430786533 940944383 176190141 348801962 198326049 969161358 155707674 664996124 445296485 771234392 284769275 57039640 849052005 378782861 257139904 675621127 298212762 1043777199 821413271 30745891 928343645 759501237 943071243 854658326 258586325 715876770 1052639144 1039860510 790822966 908812765 952523524 407786912 388450135 923415473 847535953 456052276 405652495 1005692118 520256964 247435103 106688883 374166590 268194667 656495070 833962678 354806199 557904727 181011160 251241129 225899727 490599086 158025274 74265247 1007447821 687487153 679262968 844142934 491816504 448425400 912901935 484171188 385531706 599287355 452843762 1061264936 386356207 202512006 747829160 903473621 196325383 753466729 58469704 615343707 402687602 1003789609 543125307 301933456 1051783522 466263152 122756093 92330744 158388373 65589487 41010722 469365253 459622232 654330679 745659387 401853288 444466947 585976639 990343476 667106370 34210154 785516384 861885487 771973177 338033286 721260757 767478273 823314918 243839727 725253972 736828725 216580911 854552702 976724500 583603263 444864167 612484262 626338904 714924059 523358811 845745884 733863062 201860831 348273328 282609936 418059743 316789840 654214552 588836499 854908120 883581637 462762447 956688189 591200312 592814516 194951538 495152544 330566602 1026376543 145357883 472629216 397437339 270158691 674816323 527696107 550844709 831150122 732377681 462598062 1051804277 602690485 765427593 1007967521 127784814 326842876 55378979 265714480 1044096114 643694066 931382071 416576742 490154 918295088 148288914 1002982475 288271550 338710875 413899315 902453883 367922063 1072879159 980908152 601846457 910928649 255532971 717359652 703427360 721096221 554200058 861434071 868476493 238740423 432711779 570957875 48774794 749214900 131894028 520959066 86587867 391524579 255049104 812055 912067508 455164857 246302197 774526857 670538496 192881574 158393005 110719372 493371606 1013422792 899787782 176926588 222954038 1066562243 759169714 359448948 911945270 688112654 933761458 203191980 230147813 710444251 1071776578 825439592 552847777 868205022 597155124 514576249 912796294 50921035 544431103 248161757 886059469 321116291 308274397 334792281 2841023 793577116 257425695 1022058459 559205899 976242104 606374211 401333490 739944013 450446334 193522180 338343952 452284044 420731445 9274629 311275724 154280933 1004040409 235190473 1017004142 719626639 299670334 736619788 794465377 751209112 407643922 15000192 452875800 417436896 487638322 964354730 528819551 1034828705 1053380671 645299864 690359177 239860030 291775896 139433061 405682090 891922139 1022321293 81621469 234297918 111433481 118053768 115821401 356728906 771555840 495549284 252811231 999851760 782819042 992166982 1038540833 807078025 537985922 776856743 1017965918 413672422 322706992 567248936 277272418 317543974 1005110754 55330692 85981597 354671345 968000859 342622062 1051797730 157422894 441475207 783263228 1043423286 801673923 614640057 721554005 960607775 305964053 231999591 560809029 295973776 921927307 703172323 409357284 60906757 675897912 581530297 587380335 363992447 962006614 469875000 472627851 483438464 155669048 530792110 328002781 1053343504 101649298 546985613 239664504 195872028 921895974 830185361 299232098 502084607 588466461 66891382 593170911 401176574 1053800747 273959038 880045479 347728928 189084414 105884098 969339026 354010867 233140342 641866465 705663166 978186752 220543356 50995953 1053142119 38695601 504630392 588696757 802991568 457646074 136611289 636382471 903934014 689695558 370704056 978674306 506338843 2817699 274774582 429145966 607671837 256148110 100079469 723955137 519968825 737434705 1063885850 407284032 50073845 652366530 991005421 29542029 156968663 874691474 112065451 305044799 1036105273 588374968 1041975421 380122411 989356880 134033855 833020061 236323234 137680685 211341895 558773682 479557507 927333365 92425695 1046937682 992486130 532133891 873468751 203927367 369083432 198693986 361585588 853269610 333226517 727142526 813413620 33895205 435670312 933565181 463863793 603302812 368489840 129088180 616135651 207993915 217345899 461811626 286034558 904208106 793946523 397784081 361773334 797737676 465915536 836457703 327091475 955710485 63022290 938489116 473725846 829826209 624115548 892955594 695176690 636173935 965100785 422026923 234577000 1040396478 374237384 807556410 132698946 889664363 384760684 303121154 487966958 400318485 499795686 608576422 705242819 350548423 256245702 777902501 814467133 95752024 695527550 5486502 17186063 20232123 294393551 531381830 185078466 899145008 539942532 58766040 377948729 817759581 224095494 34322353 943905610 605832200 914792555 229121386 702810309 64305857 378071616 53684985 290345175 686406868 634898386 853614021 617560279 983846937 236305119 910661868 957774950 606579354 563821639 150732525 286376552 312493613 720063874 165239312 560362876 409406346 477337408 271005966 66518601 85502297 840030373 700939907 636503008 273601134 798850669 420500994 532206579 530933484 762281414 57077437 90948186 186738680 89258538 990170146 499489904 503263081 2826369 1000653644 578352874 234146807 707308062 646536923 421135934 57283086 813967236 894307842 941227801 672303761 1021547793 833024004 78799412 821077149 113140732 1051731932 636452022 48556135 948660074 766055390 723587054 951625829 212429278 769335876 693080260 998552236 619378314 151736842 1006219583 1014137726 518578633 360430268 556331782 203942194 1027643885 426297677 1014558352 844434779 809200437 274322444 552786158 510502265 689527374 933471456 1001221354 588006208 685914170 658132284 103548317 858901349 981373456 901233464 248142079 712381531 141896371 69062925 145058460 405720482 143151801 325313165 44757330 677901374 539725679 169540874 71060301 794469485 373937989 668772496 388482743 795570266 495676845 896749027 694052067 814637053 716214150 260569457 142316161 938866592 733008281 661618329 190387285 589614640 356377202 283855147 172550183 636155507 1047105834 586267711 553727072 705142981 1037754600 148396823 503900384 141452813 554587243 731441659 678058953 810020199 857559157 103946129 999433713 685106993 653126212 550463624 795838366 1047128915 204049930 57671936 300944373 332597598 926505301 792525924 230396936 978851865 725320402 501426936 998819239 180406390 728081933 365300217 456115833 247535945 672275092 1039637609 1071173201 800257609 810699658 810217686 415703654 578404003 848614968 851789652 495261609 557811448 238873197 141385893 756621043 250395024 404508973 1025665834 377617985 111473888 412100634 396381196 653896699 915279894 794614341 331907484 541955615 579236670 72318299 33389516 523154862 528278821 874184275 446244458 967576336 408926282 371756461 223699062 234494480 799750584 733807354 960940893 718187285 786543117 666301366 261035671 572403570 640498183 747122119 1036067638 241889345 72813295 174608177 318209619 182891002 619998312 360114261 303200007 734948420 368901308 92552397 644466402 846951981 752678384 158788921 466346096 516510336 681279365 347224347 699376290 919276125 1028959213 887855422 596102129 80493960 187775251 649666765 68265362 770058871 693609195 841437109 456144119 175142067 562736297 605328997 326466748 861811547 946393597 512771979 474357050 614201873 109471307 15190115 648736211 159618852 488412729 85145302 4469087 153697667 78701121 31915990 274258585 778389821 437782974 560687151 602279145 745852132 175962371 771330103 50008339 878050086 534131356 207608189 1031180272 319938969 430879026 617926361 885272673 1051552016 221139519 759122020 925470437 965951580 730536003 1050248106 567396372 473774888 789327746 247976511 918036878 803990402 791633017 1005680528 357837861 499114023 51938215 762710835 779572099 278931818 975467805 344604770 956357123 597267371 346058861 83742767 28944359 936257405 698173177 774555034 277327351 739366887 1029959231 1072911891 13315636 71418835 765821001 259490555 121182269 4352166 874717080 546246431 876543682 310993473 960417228 1006997737 392141408 543793569 116481745 433263393 983174378 316957034 766483197 438807620 711423480 237508203 567114930 713721057 918572860 374531199 979426854 1070623692 1049123994 606785498 969460 241500936 867372686 761916612 1065548093 1058881217 53153585 648316469 491155733 959196814 899271753 348994245 995380981 785909037 989899352 287976727 911618145 47688702 171759551 901159182 627381751 285716025 528598752 241685405 648479740 56314088 352541217 952111865 496075561 1050914558 973230892 301144624 830187890 297252400 675218760 631457642 430873453 582052406 267848475 992038249 291049300 264106752 761590045 794617066 645283060 298776545 170725588 228750438 480821074 315053559 301097589 368848691 810975700 402045459 388793115 639198252 58989604 830999114 805168296 587178612 748300890 53205354 692955017 171421508 842677000 223672698 665121979 877934867 482768371 244101624 228630580 178642363 354246578 379010135 891668019 702962938 259557391 350161804 537008549 199526609 569476280 569764998 1029290594 349555651 506385841 757114219 1061101496 505750848 604366212 715070538 162252738 866509723 516513022 544651555 486274114 97411440 566801040 317622636 616336289 228430776 171837165 186763555 961800100 78601207 108969370 660367264 1062882747 299927156 804282548 468816336 633643461 345783235 296503557 95338743 1070615618 90926483 198821838 610118085 436429665 427768486 164912087 654648122 492274552 197452599 189223338 656858791 774520412 787948971 721252890 559398845 434479799 419748440 128264576 538585499 182763932 239677732 221268481 776393109 887121867 101365465 813516455 406220048 823924516 163081910 666820314 82107848 653259030 44737162 377141394 684375963 1036220856 204286489 390914178 875990755 988296812 781261911 252314052 419162384 1036251103 934608923 860015877 509030925 1012456633 420249154 53286165 168990496 88103079 617998814 341159407 740902313 739942215 747142835 338272830 834129690 438413359 870044464 734802627 436471939 531089598 953615654 609108151 282603406 151604654 4387691 466754484 799797886 916253624 778297557 491580258 1069037461 750260592 841879189 725649617 722784545 86524356 388318329 165066484 248814614 451863647 27217504 891211000 243583291 114760472 152967883 242236067 383490430 613722547 430953754 1038065781 428645198 156717410 815443913 864226019 1062058865 414648792 383663858 538085874 327123001 1022390241 852410505 546964514 310084076 810086368 74328864 1014538054 916962953 787721176 420558775 881074931 686485866 1036805523 286196866 797451756 230571734 398427111 378263646 714636889 45489603 1029105514 732276532 328505297 763132428 20368972 27579882 448459452 645398126 937902461 150784258 502499566 386326936 504949888 924871378 796329450 608254840 1006980037 508740019 93908019 744425810 792533028 7706296 109825227 368858526 462601604 379965591 154418594 500684943 569655840 30938093 68735681 832576695 1016700086 218932895 516312452 993631105 280887357 375675049 143933936 533318899 644871671 751945378 669421620 873681978 60430828 296568468 278478289 553682843 608413688 583452950 941095063 336071361 498415584 354166705 264098940 213994321 644891256 776226488 99064190 37649424 823841884 318653717 191338843 878941513 509473626 473315490 52149928 608905604 406344762 267943640 291083411 303914913 381985495 1030646729 587189267 19944520 960812042 558137517 623980742 324069118 535560835 811910242 113894854 186022151 323844844 774645043 47754385 191799503 598355914 134351704 644531461 178767423 790436821 59858323 731480536 420891696 33265302 424342327 860864569 64954633 196494056 550028313 779084381 101328847 79523293 102053017 106582716 745744827 831308408 35846745 131564663 412012015 70977150 932419712 98479973 62627811 884234444 516089026 355154477 231259363 329100423 189177515 468023314 575610130 310464358 263366448 247417018 740515746 703481673 914267073 107638672 24778103 514810087 129218008 315311924 357638092 322525156 1007754684 977851702 8168943 149928103 775759311 143563583 1016777494 489445595 112488260 490658906 667607214 477792565 1036781076 172972316 719178597 476237139 367634011 8724562 389754177 233478604 404978142 605880142 760627655 641845826 449256601 656999217 230142528 839412606 292713722 612910168 1064653467 714186679 633467300 364716890 729752003 1062465148 220997888 51587126 606689787 169961486 441192201 598643433 484757801 179228799 652511592 923269274 754729182 191091754 529142599 186670059 450889408 791117898 778782416 163172779 182344957 210746446 209325924 152086768 674184285 244083744 498706781 199533020 528985584 889632677 762928705 392644705 181058703 416093381 264980692 48553458 191368517 624296508 431156036 726934953 672426023 148459275 313486266 718132546 304179185 913639094 4241591 33051275 29275628 8201550 256243801 829923819 1028997597 116334919 4341573 124287053 140098446 220392067 166698674 255075320 170870849 972269263 783554802 369581752 385139311 96560098 434209188 877269354 910256693 772176652 701234238 199951530 563555591 1061459989 51213340 941185612 573015272 178868869 830919678 559837126 779827165 270240711 216453721 262781077 704353062 402887786 696104514 302421416 179148248 243161208 569613242 366833852 531003975 713895610 633857191 1060298541 356876078 243834335 397110966 70972937 1025871975 136635651 1024944878 288603607 948252691 239560569 634565993 48447208 102830908 764921718 715195972 234789058 226400214 827868282 1036556112 249208969 132136338 673109867 333173893 711391647 862207841 934278125 499912904 61419315 176064933 426728893 11454321 494518003 336221313 670181594 125147893 49340431 226396257 602515572 918964437 766774285 61800185 221675162 310909496 106718609 921415731 586291565 234885681 210510672 1018962713 298212757 199669496 261606135 955454598 461579914 370258736 515976704 11755889 891017487 145846964 634853599 321043677 912714627 276017050 191705619 332696437 807608954 848787574 784895651 52479595 542610272 774053834 676931503 741364225 605788899 1023742345 32419318 902980340 713689716 845436988 1019499544 108640346 210762828 984406303 982322520 474640509 369235789 328078167 206675977 457463280 1009426501 931409499 116186369 287945631 762475361 257443080 320410304 819721626 103843143 309821112 357889361 151801622 179945027 466099818 195039490 1017299614 605815143 58714979 828828435 307883373 844390226 392672374 364796876 928345576 648446013 293189152 74901708 6569267 542279866 942948479 153521363 391173927 530473232 125939493 219274936 792802737 225723975 670099092 444078810 544356056 407175548 151587911 940827669 284799450 472018573 185259176 92908340 143986235 38594074 848501729 693213016 464374269 722574933 759277137 1021243337 468232184 593345844 397162748 1065929233 797593829 495277613 802225349 119254144 972167856 1022176336 495132437 246350480 846921326 70633102 604549030 880411704 224353665 439804764 165416763 630669985 865618031 866257467 353800738 816662357 111412958 738680847 492385946 595155833 951688267 470165895 196837215 18487113 1039148700 1044754483 595699913 1031056252 484696740 615677456 167064872 325650807 123778799 612554788 881972706 833958536 507305400 384567177 126264476 575094752 1050664073 777518075 325727017 602043205 711777481 184502903 986041755 841890417 409492559 717786773 936701112 520241329 265306443 629356203 694348080 979753694 337987712 722682784 539711757 386044766 241311669 829968413 735873435 399405634 568304920 724819116 240617613 259151448 613566329 254124657 357263307 178806829 485085509 334749310 431197259 329501555 147442949 849406358 52937321 602017146 72827636 1004106267 649157803 93713166 564491107 722373536 1072883743 947214260 232831839 956931599 302508257 131360235 909358889 511217079 601138106 469594961 742856474 443547268 912668891 457545653 924998460 406390222 439768738 992895427 235647357 44089165 998009180 845894325 516097557 17190487 677624099 151080468 1037757884 232022595 184659316 953947587 284992990 188051868 149142964 200970450 323558504 932463581 437169891 44062745 69539496 931323768 1008202685 733051336 523464771 321401692 834713615 269559435 282416277 862967382 123329025 854252446 116918454 235416558 105803745 276086614 978730740 775748861 630941981 857061397 912370710 691774119 225905446 631161766 520136947 102021264 950421590 684417338 701252520 810126115 935486609 74971780 493330299 529507114 777748765 948861164 97988863 300239463 389237123 622930090 758664307 563629503 1050475682 678210513 965097594 408176541 6309313 251122471 311942453 732543093 767667413 684111840 424531541 881289820 36001842 329257759 1064151123 575614957 95504063 592132698 858861589 626599318 231190434 452412763 235248302 419140223 553170931 981819963 776749583 733904932 199886745 275696146 277820102 409437630 402241879 487483806 34145436 98179056 300383522 298046017 101399984 337808003 371598130 487446110 197774359 831458794 447535812 174840943 81640894 663141482 1031351545 462876095 470129265 711780197 448570426 21668452 874253190 423532859 543811091 705035430 946272658 987100070 447094571 1041656665 515959163 198117995 974339674 1054767592 641581312 969120283 533837425 198705967 436163364 367087098 1068084308 128308375 212536256 285951215 881151927 903207600 737571223 297083704 9220448 697878238 556326171 580122184 191244559 737626082 331544102 153779874 51633068 476134709 343956552 928596906 685823358 509101281 207840990 616150316 734151700 31020604 1058238411 263556165 245861483 385594266 964845336 192211369 867943958 977292681 4121837 981006887 230840826 420122070 590134045 344600420 236105123 257516123 455243580 710428658 459752555 311314285 72130969 635660850 436696885 534006619 934206613 949883959 175544093 387413136 269595798 233269167 489976806 231954176 621466017 104557966 773794735 394845877 531661866 50355303 454934619 738244234 595494067 177871137 787409914 1041204276 268685972 107135265 201697165 947705940 761257483 498646231 555312764 709905509 2000866 176603185 17938259 191384059 386596889 318980630 195768759 1061912641 416625210 188313473 234223404 233857642 197017052 315759045 935591760 411311291 1035759425 191281525 869461966 609727782 703566265 1029401463 2188431 408359633 815154870 328705085 638711458 903290638 451487669 293059825 973788928 545883074 594745438 50613669 334039523 796491761 990337340 865818879 675749762 450523266 388861192 1040359951 240379250 767919302 185787728 647098536 696808482 348237137 703570604 126260677 774827005 400513826 435117527 381856218 1024035615 46798511 1052975520 58253775 48259441 295126170 432752019 975141583 241507754 1059538776 406274093 612868047 51527276 83328519 723035959 387554117 498326894 122697884 10470402 667612125 224310070 828612619 709803929 1016640996 447111843 953055311 355483698 824224974 71302301 424401401 242306738 317567095 684928823 657637554 717509884 967528044 326782631 885704614 709084375 337342022 1029636410 162597704 1040904874 850975977 916377327 438251145 334201863 922891415 418948222 125426428 576505273 664726757 241119668 780915380 942063156 943732751 352497766 463546290 696032151 487439586 112766484 1030626551 952870716 43403128 957383171 77263030 483565220 669059928 802376639 822560545 697925590 898469752 916325267 1032000960 911304206 1019293937 268977262 326268334 877575671 550631024 773541300 906849352 3140381 972376578 122712002 603398215 37872362 728612839 561741022 179312831 857421562 194388510 474411374 703641020 215070485 680791098 199412337 271528198 682910638 266314410 156571842 934734266 773373101 331652908 882476607 1027841718 135067704 735585495 54976339 283318453 64609370 834913894 805844279 85548148 722932642 1036695600 586759205 886936999 1040751798 928517907 715405134 128282051 76675898 390185769 132204367 317899288 106470609 837090942 1010432233 69936741 226935595 657698555 259318429 1022350444 965066966 901190060 1028084421 847594168 355755532 228553303 210555757 1058185493 984682077 434113491 638878586 976700279 40193585 259709654 564314166 296309409 816490588 753624529 799848230 849224267 939058139 1015254048 589020731 539255857 276687084 321685833 719402471 1069718230 228858033 505368135 661063722 1040785110 304467753 240402688 1035526125 947089521 235756978 348064854 1042846151 336061746 168109553 1060131053 146037898 874070655 61255190 864441502 333540543 268498429 101533723 600316537 298436539 211475682 447820969 1037007625 371520671 810978795 1045182696 781612866 911202797 240164588 549642765 649012225 1061022794 236633795 843729213 916222881 532964536 394155802 91996582 57332500 767759173 930776053 168186837 317160270 1046909443 177209315 841261075 324242112 951609977 1053849609 477162329 120149057 770920753 946271496 702956864 44642465 240492523 46721038 46691005 678435130 481077280 460121925 910069112 975344147 995553976 462707669 745820088 627123907 663192884 1019514626 162856645 485168510 873336233 391722923 903815853 208509491 1025460393 128697984 274799779 106475542 331895525 61892906 197556847 225842581 810522345 193483579 1057951367 465231116 637317264 551050270 1025710425 313598036 381018505 699968008 890608136 263257277 568537559 168795111 608148211 648061701 939716726 664383381 695026528 903505082 588891711 306653026 701962727 292242628 243024690 480994007 730770919 113683499 693167347 916638838 83709614 729655992 830983943 982496818 318600044 71567295 728568677 660403110 996793593 122772253 83927468 862588351 5060501 457273883 247182790 913374859 868749351 314932737 287686039 51216970 823643496 548638927 10838678 940927111 864013631 947689703 330140225 521055338 863586925 650945589 431563140 159321549 679480975 306348869 569645530 434000905 648165255 860837783 571860238 952351195 209757625 257799684 543910218 64701625 971300522 234506633 995442313 864726108 728841122 670504713 797034026 1041470068 745006443 773264558 753047615 61705072 122959744 538915926 7129777 979507427 638529078 918787844 542789330 548532586 328914336 77255581 16426417 210202997 983337734 895989337 517528139 892615446 516651556 546194453 397220557 369241789 32039869 368677358 97740493 1070675171 1007693473 971235835 394508992 330238942 899922834 883276290 283444296 384927128 144854691 222005754 16829209 736690875 970429300 1006448052 723881269 173000310 172722164 1018461745 284637950 478354852 267089679 736410410 599989918 396324391 1019209654 286048241 851759052 761087988 472558782 279446494 686653677 938337749 118116100 133650005 590244632 596542259 945774153 879834082 882919519 353798323 619017014 294469747 378121715 260063755 478235131 625563336 214142655 781375446 867018254 422836105 570933968 77822419 82154390 25609389 215366854 653481006 995864561 487323201 517342858 705419543 4980840 704407267 59694974 339265292 503513342 180250852 440491400 893408613 86206801 471039743 814917899 762847909 429737013 855507909 95508956 76286339 1015381097 1021122630 562240310 49703963 254870440 123987846 357678952 694118869 495402488 163654105 338579031 829464009 676638011 407451087 421086126 1034928660 1066395924 260294045 303558727 437845564 408555758 806938596 811562623 795333973 845501429 436361064 69545716 578800133 450702101 756468682 628552824 979912758 904098199 214165791 928655665 396347348 244175820 400439976 193153631 604680860 581384585 860203871 268001364 959792094 953784911 1047116468 528450507 427670875 414670299 270886770 1036665691 530563807 1005545967 787653537 517225743 54552529 837025782 1057116683 249845861 19980050 412519663 876548847 294264115 841527485 665325502 324291737 922287485 364813443 414762994 83650371 105785778 322285351 199193494 277955972 672995714 35736031 970114454 1067261352 207286478 712017438 380995925 26207167 895731802 82456745 285394989 472847312 968402779 464837110 244226457 794901512 501836335 936336365 336352446 266681169 635807489 1028786799 153360546 699854822 233788228 83716678 418223119 314969602 146782026 173823069 435137083 806444331 620328471 960082572 813114163 146755606 940792885 419531202 842341909 872472871 721025483 522983035 923272295 314528677 190640112 421193723 356152505 974084677 282867776 693519443 670967573 764298598 970427733 955670066 463987190 914691661 298538510 359803445 1023086086 522685794 507709918 728516895 1016909190 213665065 568224433 731601898 639864051 171402476 893832689 37399663 982363970 733983665 965141925 511886028 506018944 528486697 966806336 758705310 17876051 66696497 364288033 531031234 905821542 509544871 51975056 735730198 193742347 719077903 32483861 990494022 364376400 566551372 623349852 616821093 322781809 384960209 783212632 651228317 257600315 821482746 327560265 62423348 744793388 219980409 784485800 526015112 814480448 65088798 318597329 1002881340 724101890 173540462 569702823 428903822 569406119 259403430 36718884 876319099 430736321 778158413 499431845 1039808565 239010115 344602262 298006538 287142112 1034441658 878205475 1034793855 376332494 912210744 33247916 811772508 609812001 1028474887 81330297 998399804 25516191 1032761022 788915321 212834421 15189914 225887543 668294518 437222179 545705359 640369749 15171559 415213833 764362789 238726615 877962985 825168371 860045803 670811757 731295927 710022850 310409312 409807956 577519907 226230920 70930939 236937701 338333526 436275158 338047698 291090552 736106097 813618569 539619731 876224268 140750201 853774317 357843321 572459959 1016224227 17521720 839547179 195648238 695977906 1027294286 605447295 626736619 781782262 209025057 424423718 903997450 214869502 718720470 266214711 926184738 530349150 1037069585 1057262273 379793734 447496744 336222038 682747630 688800306 929941158 119791059 912472435 969362918 1010692470 611514383 670397639 830466687 198614064 317149498 768120814 769364690 958755761 476709250 999356575 1027579729 636966919 699229253 992177179 114809671 129306528 36716675 202273186 332576200 13488067 486629804 862676367 135736254 524267714 177476617 485614703 603137088 547213952 533575243 457723536 652360262 459574360 530284338 322417295 907073793 45497057 1033228126 426931959 1016821223 2210460 389998180 621598617 272553774 298991614 1061566993 507038236 111071102 423100633 497747311 524121115 1013599347 43962085 906896643 542672172 195761984 1071309552 213780272 166395202 864142607 243326972 479590802 630414583 319846548 740493337 1025546910 808734376 760747468 977605370 866852889 78699202 544807449 962949841 373948471 55525511 854852394 888953494 664025346 725253443 702351603 779450864 927878876 885428787 1025793854 823487295 667942526 967392785 726228566 597394435 389863533 450300913 171646848 909977676 537758572 139002175 802910653 375728299 841496324 66872247 89278162 184338270 291455290 69468355 191090692 437099394 704988244 24709657 875129533 959196575 393106153 692310653 44037660 918768682 434195966 744882520 41018388 579557629 40337643 379094000 911240290 611035652 576251485 427885442 218012146 1060418908 347374907 315652273 446582588 488620667 422582184 789966649 966395015 695121706 797030243 31911588 1006600356 748447496 122682870 522427754 942724632 297429168 46809917 3806196 54292165 921968739 367015514 482701737 424663223 808439670 901003172 999248862 545427857 192515597 116711455 557975984 318703293 1066880986 709742679 208895783 448044710 449774610 987179207 905560163 209064260 287479937 630451955 887458827 81517033 797143088 319714620 1001891510 811607372 360351901 603299385 327742549 1053869884 76545696 903789127 410310177 1056217625 870719907 90648608 838063768 384374319 368874204 194857694 92685555 134227411 496545811 455588767 403975361 425357038 97689681 657691967 127433837 812504687 390597992 446491619 274914107 363736232 285992476 151378792 23443404 433529788 158465306 841097339 833250269 384512914 661341259 409746042 495274437 573389399 1019459148 951967468 165052168 768388518 863511502 693562787 40283676 353561446 792044862 653204466 372568473 95114413 588289356 83987332 966105509 177981549 39210259 846491666 72579624 936514952 688454473 556821895 241149498 410154637 446269216 186080947 958784682 193022448 72195032 961723999 763411115 124797524 1069625966 849184985 724006335 681052046 354972049 348174648 495284320 986055812 702108666 655363844 1022144342 709722715 627858454 497129042 95667552 377477774 492588605 597914567 754476144 411689479 196688164 380022780 885186370 406682307 150235480 882406997 822246289 509543340 397895581 482442554 673086657 1034675562 891430471 346603500 721104338 891978562 242913474 6267951 730948860 558849010 378625381 2378771 347005477 332656438 538133744 500258485 545482264 650053143 992704105 627142205 684348406 474101728 454519210 545275391 79181457 30351203 197746444 540754463 736541501 597259947 765318681 50966167 778288643 966423620 324481073 403783583 673000487 899690872 368276153 1023586524 744433294 987651789 310271162 1061653966 1012407818 1031566924 101271255 767369005 577998242 244670417 938737848 25543152 392898285 241599451 754647436 906111184 898599378 729591424 1050796515 1062593715 342195729 594136139 802979705 325891516 827590786 618310193 1064083656 840846459 837672442 214777763 190111677 209157193 187284970 93060500 58263532 93111984 313067349 117102384 362291772 581387597 787934328 1064015186 89216876 353166373 738316614 977532255 888337449 302668688 199205527 1003594727 433972545 936240396 358792514 1009089364 350316947 520850732 563434233 335221700 634687403 730340119 128270812 575922398 773716990 845478354 264735237 738048123 631022582 426189552 1016378944 209030093 990197514 612129465 187892327 59923122 770252493 54974999 794987997 553693292 500903899 988074793 350217507 944052764 901834121 943044488 297397986 648978230 152637391 66456506 332971657 97157716 291306747 274279589 36486952 675726793 540434876 680577963 282686683 307473409 121148580 552737368 98214937 177532060 19076124 444361630 517370559 215222976 582671583 817397036 120335966 13718217 130876283 203255607 673908439 727942776 1026017667 460263589 568124826 106028957 1062943487 1028049163 1060571034 508775933 23208625 824403699 723933083 167060805 913020005 346240168 332821781 485289468 741082034 696960811 897473029 601517852 15887557 883801400 305436522 11698993 561643358 513889817 820105844 285550219 165876639 613859466 1028397155 181025208 1006323711 868590996 92091468 303213735 768370934 101569790 569301938 980341361 332139233 17558216 12336032 74461106 248432237 405727048 142986772 1003655611 665617373 592398164 139885566 528985146 215475328 278731960 360262838 949093416 267702214 297755637 1002718477 250926293 589033163 141729280 145581742 667808134 532397099 112894554 821258053 175421644 760238211 382167274 906091394 827396849 59429436 586794381 95386903 990193350 786673109 328078303 843403199 86721832 256895452 599668261 217441730 319088382 158415566 983580876 411486636 44277434 120781204 618222586 1000803911 914537810 890470663 675409995 564551585 535705387 69573066 484834395 272429854 355000183 762515736 46395520 1368526 602489032 112735300 403924058 509570042 865701277 354873156 273173514 219971474 174345574 20480202 456057527 541084172 174771781 236980666 795219124 524174484 191540037 654624393 852487783 240974502 863945105 827918325 214131598 717599817 757147503 626267083 490748046 772974709 738565270 710037039 276452487 868992036 319254332 1027539144 74343467 25014165 484930999 855894013 63836291 965431036 934080271 623836883 681814151 303356922 235720120 142005973 449238636 562270361 556010975 734927500 1028874441 816101248 917733770 596605998 696915385 686808481 906279056 189021240 294970347 559426660 477828794 630979939 838098963 513832573 747528425 117584643 671492153 570077798 364348199 1025820254 1013475218 940494389 426908879 273402871 915521480 538747208 177610754 86414849 1067373728 951902696 1068380398 592952081 67191563 527772046 545226665 951295410 612786549 403689031 83095053 56789095 416928613 944802784 140197569 167153409 685813099 254010997 430205088 19930344 278656791 452836649 629823778 856380527 258075732 987364147 57025175 891424146 664015889 231133869 901919038 973900530 229550710 903787728 1038835926 920171907 814310784 165269790 867777851 288226607 103680983 517747062 516805754 264129617 786379627 488697973 475050380 324554416 1049121836 226033221 81639960 3172395 963610971 176170441 635009989 875374935 723737509 196440439 321912755 906901219 664661948 861099807 957365684 435781159 785288513 251814556 540962453 42031537 767896937 351997638 157911785 555280874 368454317 676291132 35022956 554305156 226882248 450502564 298712552 227739816 320679092 346694756 608258994 333058978 859364514 892757158 647186096 805591115 904494781 689563203 257938127 949244727 855033164 622750472 857739770 114055585 621131547 74001096 772786619 105064889 305783595 694397750 618027580 232325661 679009904 105492015 439015284 890866605 656923352 81750853 822682894 968309614 325333318 50324847 546466147 389386560 846345529 440626763 679106080 535605458 343003201 659840841 923392567 361777283 605676878 580022763 389957933 54194101 262260005 910301147 688009439 998795725 485039772 576502622 133736217 342624144 989699280 168307830 88533336 637320767 358930561 937908148 148207432 1039590893 1028724027 764213564 793896474 598566618 120305021 317087174 763543231 406969132 858007029 237036521 833015611 547924645 482220405 216070626 395152536 1047496468 915113888 762622416 966408874 282143039 201807094 445097910 773742326 1047554267 594010408 829439345 1024453535 417853367 159272186 311111408 766335173 349749411 262861959 276319461 331784492 737907118 808516881 953800404 912532422 104598320 831007189 761165939 677970676 900774460 45776155 297891202 536987657 983273187 957855236 877494490 139449974 320936665 911730958 483477048 882808537 384990527 528902083 126795550 590803658 369437843 94351357 69104424 641323991 813991124 282875024 1039429315 341052959 43320185 615243534 209923179 197894988 510167910 376678718 898778010 205674950 153823435 358498298 847578918 330049958 19135556 416383273 993580917 598889514 608280356 289704520 1015300956 522397572 615010440 839532929 662008872 937139553 339919698 808366965 67168464 298371097 508392400 490527067 594936623 1058581865 33673956 697292112 6783148 810035795 224368883 1018637613 613077016 451057606 683846597 126624789 111151742 702815638 367327162 962275405 1024028074 533915432 508523441 926903217 85499740 1034102322 752172723 864267384 69600740 674343388 920087019 1033583329 806947211 278737503 45217501 463345868 659133570 641236317 841604273 992913973 323613149 506617966 887160608 441046210 839703366 194429531 853035344 870278551 1067202786 106373085 255185539 784595512 182104372 1045714041 707872781 57565441 156084701 239698957 833555245 462995792 407170866 538058136 347474640 37195829 889520233 953072527 707726226 790440905 749276703 220268999 840545125 829025716 551831283 84046547 570845216 32355615 594822225 1013965502 291903222 779375384 733956819 334604369 368982966 75628514 410625549 62315437 681010882 1044695553 803221162 624249798 661701605 998274834 676500066 585985154 892131162 729064158 997151390 738784051 936030640 694833397 436772084 206203363 795174796 817776710 255931062 253848398 1019923805 671016716 496544581 735219880 1050231578 625841433 469535296 471238391 71886009 719245697 786115285 740458410 473038495 1002617883 874205363 532408599 218025329 611904871 228216554 413793866 864887061 738294635 387843465 540556003 201222341 1030223766 541211193 401817378 344425359 342721399 859323125 123511678 708582785 250581748 459658397 660381760 725777793 509493433 1053482220 752377276 56999318 60697873 163350169 572937321 415289752 383559442 126737210 932084726 116032458 555710618 100593966 660931316 186006320 507039251 955437018 184231349 785378773 906948068 718281811 512946392 809111344 389859142 811726531 668159410 642084614 191552064 260302073 534630950 551044433 202046242 586971405 913995354 759341574 873002655 679149542 84342386 797873881 132717442 975953489 314466854 432616476 419341317 970460306 649452793 582021292 850740933 118377128 156480620 547104015 874427135 913273626 557992895 148398624 27018785 186742732 525791775 214995562 835056180 112433936 689962958 774786644 1070165146 602767915 1038420078 827050978 783819792 423403780 57133699 872739073 49144745 626671676 695925383 813229957 973038290 1005224613 679865581 64914546 390907275 1051999967 840720315 585619180 834108702 123882333 240979028 511953022 436634631 1061463595 22869714 673970862 44759749 858111261 415730695 68639653 454947942 286099820 542813203 796365797 170244811 564043439 321224785 620866924 820727095 510227201 501808117 1029944453 445695670 365841804 733804370 568444531 241000943 798925706 229420253 633667529 784498059 94653557 446047723 992532590 938748531 580745394 138288912 505733705 106170264 176304458 553842394 578231847 1020675678 946977448 54935806 288787904 803054241 971136530 273883941 280011327 558502654 5213852 1069856836 166782744 874548241 1063634693 887436328 241742859 460076725 782606410 17211365 244961358 361781688 55446292 1043304908 700967291 83068750 842512137 648423451 950258875 770176103 896234113 276891074 442247936 159838501 932200991 214568351 55728411 123431775 655164775 876858990 954215319 61911243 299254216 509225029 156309674 276251221 748335410 1021866259 153493173 976566501 286960658 411150410 422545404 88299418 938941185 295549171 707804281 129455649 445780450 629350580 1073545627 302216346 268650151 1047873437 365390685 265344829 196189739 159261438 818088708 882478512 402845036 471114797 267120196 532454923 127420179 245644678 297511565 620629639 641462887 427900402 980225463 942537544 623944979 547727561 544520762 268591872 48969116 996656878 918914544 89217451 564396262 136146351 60402261 279926733 987935481 348968745 597453135 934165748 847894949 651636948 331387819 547769279 505414549 1031697153 31175324 405756401 891093122 135399717 192058909 1021423850 195149268 544257278 913323879 730723685 858642405 91744572 449999818 338992938 853933408 418928088 98208356 907126120 399061255 557168862 1013378202 968162550 171542626 571436347 570923936 160873126 845748816 599777620 1031243206 302825663 552902381 1002545364 987875565 710564551 710264230 712345027 334914131 657353346 461564510 917230795 680412801 10386733 52156597 531436769 459973182 892448470 27495046 820170024 726270411 523174638 307724992 874151376 189587115 842026954 494977342 884457950 510884487 734143634 340471287 738982654 647810104 86621031 105899265 311868998 590965952 513381467 132101764 634089596 246487896 502238366 107900860 790534318 340479218 671611387 457928182 676041129 816115274 61740567 898362131 116602625 341404025 67459144 247696506 815482188 481756739 859942703 99771535 211456147 362562988 2706437 708757334 586987963 713371737 1009941702 160920179 318570351 780189940 519045795 994989443 266756786 130293871 574176805 932506260 821663066 888408309 734699626 759365926 131327958 564472588 99918025 53755141 788846207 676246472 839352152 119157774 340265283 831563711 1001364226 543528875 214104021 863448872 261024866 64977387 537342248 202042020 701607258 31577318 190646892 239338007 846742459 3606019 238433386 1042308536 270542537 818573439 382099972 424831833 367503954 875956845 928324521 874186078 194281043 807158172 426364935 936911243 356481102 81796476 58140866 172188615 98029001 640491133 739442549 728861998 515568449 708374194 804006502 130044305 527298175 711857283 101851955 702153366 939557929 324810596 463222692 1059171425 625447374 1010687301 959090339 136257536 928011421 86315215 989947993 490045814 365769505 742892557 167289470 657118457 372145118 161007626 672390706 89590611 696824752 25152709 1065618176 465989003 831014908 390697543 429803505 1054181096 351280804 872797548 591112976 554385992 887615334 782852349 55431680 809222753 628291371 362523694 547187020 271740942 460238009 651324672 440900815 301828142 342113730 316465751 868548812 573976306 645360207 572843795 1046803433 15832448 615611647 889857003 679555130 673969635 853129170 242674411 125137247 347646016 792125717 902582005 841642109 576334098 598688003 814439121 217390555 511802217 695093907 36748246 1013696203 278619602 261426472 764153637 792539472 519504279 620367311 299640327 359320412 844227245 245202546 806560166 728977517 1029095800 663823337 660128028 566422912 697448544 783293674 76763353 279936363 645749622 442139061 1006662812 997132560 956306663 421521663 439051230 365982337 791197657 920606027 576333061 655726467 85497990 5600336 896793032 525789766 1005266589 1831681 559581504 71901175 637505258 587942689 658066035 43541774 93770284 744479812 1060649680 791313037 869622114 1073282388 50315616 524069086 237116909 185200783 81630962 1009018075 426509435 726947744 630132833 1050778810 748678626 581438795 602742442 824431149 265561216 956283642 420509003 608390693 615120214 288050157 916313496 1042117030 132304011 501432988 857749194 719880484 340871156 630305359 328419408 1067965993 355623151 379132307 225128515 745173087 1007232344 456199423 949619799 852411560 386164910 601998747 944176442 899697534 912507685 762543450 926079749 805103734 942776535 791002852 626520133 885507549 416364223 928226299 308142711 1063895948 426033413 549441068 407812232 990778484 136356986 1062759205 751636044 281408496 130708776 319120433 626079899 139432613 387051792 912303263 200725196 870516244 956354842 23437350 257211917 53429880 654710927 740103000 54193415 789712328 302057254 231306752 305217504 789861965 169130055 627850152 823140441 613043361 777516054 6902649 788987024 272048437 473388624 70791356 356893038 261546361 81844867 247788082 4800069 825214454 806857391 172701146 483929284 149821965 122113313 82231884 73183396 871526905 583145822 233749944 751641547 175881133 459357888 217655243 838064306 414274734 300526506 445925464 554586266 825191300 32725838 763521538 710254989 67173481 316235967 242094285 766284171 501042379 738354222 198724349 237196940 5505404 425693640 506219069 699574100 737343564 462208639 567276291 491069340 6566920 714571765 1003903070 105080315 453687166 779121833 45456668 300927474 536490583 195094358 318699925 988029758 427245507 12179083 794603128 1061352137 395518380 126568575 951225526 391056953 1008866278 123945775 697555736 876451707 365960043 622885856 486171706 904428077 145387325 317414497 336723200 181068786 821200709 735418381 661591366 119624408 331681207 95262549 626202132 779055603 503449996 407410704 864777251 384451608 234522134 132151440 126804036 610016367 812035311 798389828 92749228 155045322 665661878 691317550 910344675 244533498 719452036 928645899 465978972 406923505 5974528 434091077 32621679 716093282 476243165 492483323 854939969 864013939 68971830 795175429 852908451 472153983 426418372 997832346 743974630 614867190 591072461 968826510 426933095 1011887350 692351544 691348887 805649587 743875137 429983030 508693161 307379964 594042404 484729488 95091711 789386960 251407881 209584746 1004114238 123364169 694689911 560436731 482187804 394093130 624531043 728424786 110066359 161792834 72072240 256497267 61767093 52212879 14282153 172581255 753287050 618650911 848094264 724544554 609438268 708853406 348411463 614456447 543209492 196428744 40823499 292677465 190960369 947395798 1033790033 656778564 321935862 851202620 642766177 386054356 1054494472 774609212 509160451 279145548 80451494 98575932 276158144 860476830 607336007 545945168 514477243 829451632 310019010 370832314 1029439624 1043345373 889518694 567120800 640214601 79609395 283612332 409946718 65255948 1031077388 600155190 296167880 301483954 49268487 1035771534 237652280 963216732 485871173 510269928 588832013 905058973 876731658 331820218 57706308 612936316 845085897 3323909 796140357 569149015 376550387 1000903817 696766582 810261990 485031832 779034710 53336094 145569514 447717410 880973427 455134120 330573361 786216205 138065279 297378234 117871701 1068810341 172571559 569022925 787490414 669733891 977993846 655603255 278356863 490328342 257367963 834441076 651195511 838884391 247434145 852713558 551847622 208725897 1045131410 617975422 669821940 494423676 817484791 815073985 1004058094 198594739 1037265617 910422471 723718214 1042957595 124634515 415104391 773214061 296988472 15761310 129146556 133405239 622004297 537571613 577783351 135299003 455897707 977707369 763790109 467865081 169378780 314114387 616621747 715037790 323232375 1010927202 237374919 29256062 675507442 629622586 139555616 680226760 187011159 75909708 634998663 411558968 415562438 887327625 705810087 278955005 527451082 940921761 499358479 929020121 30596577 815416481 532617904 59060641 628517720 573269604 576036487 546706415 799362314 172488389 549550419 122453948 586863337 222926975 886095389 143669451 63051136 373618852 793714106 891603737 886585653 200694253 849346480 1010944402 205523714 578792912 348232820 797944561 692065432 681658659 175475947 1035691663 503918087 429339019 1017127226 491808827 636566438 274773155 181729413 903557365 312960521 996150633 989250544 964182312 97272237 710318040 348233047 842110728 397934465 59365790 64584126 829447365 1045117116 629990029 648591589 187331221 480690084 212769243 434656336 606795822 306186730 671379630 636167192 7056997 18538849 57801415 698377148 513913128 236313148 1030040126 890053072 396283337 402328329 52194313 34361550 366667688 894398926 667592250 976363126 30910915 235892554 75701304 440892974 378101209 1056387395 150263460 421936125 834323736 641278878 345999899 546797450 1037378924 135830385 235805401 284915210 765624792 219855767 260786509 816921447 815426088 237758879 471315588 373534297 452969495 562306007 840311617 790734155 769719165 888394565 80022869 17864444 82190532 693933759 269285648 622297309 288279420 339780212 524556212 1050449125 723568872 487953053 1028867080 726537723 750166604 271483429 644597345 241153661 251453050 692363155 153222481 494035975 555511389 530428424 75006792 158667558 293209341 298497991 147721831 905253221 1027127775 1028809994 541717431 242738506 639006609 970760307 915111422 978955444 891428639 641601619 244312869 115406689 981465609 774502339 752651386 322487666 602371885 209948028 334199173 388655523 932271398 752547805 136869156 45215850 700496342 367799819 796460493 534448439 512450987 22916300 442459840 51521686 64109432 713923423 1011799317 602665276 609612739 793221365 399592889 301568158 84673931 486574081 125677151 736911266 1024919340 56648824 277961481 143629701 697914278 819332179 134866802 353099611 562481725 221305000 767704836 985393936 879990715 345908250 1026415427 439448015 498458477 350540229 791870739 816362997 528080657 33635340 166567092 854835341 156907320 1042914449 696301392 996982833 29243534 757666273 243362948 13341346 525423281 393251794 973639122 838753951 553362139 521960126 642429984 3531094 254312232 487136352 832090064 186294903 169522896 494908483 367518563 855539458 547423399 249805572 719896318 1004474271 654973882 756845377 678561957 34599533 627665878 917353636 151839690 675781316 1061933490 1006580992 896165219 100843605 544494276 324383435 56909855 747082686 886733380 753310879 944429526 263506604 597696925 998472843 526095973 706622846 758045198 1038729031 599254405 234830828 1033886063 380157484 145179666 576512124 336705675 25336692 616460963 342620569 330962793 878229605 1008095267 267246617 722648654 49010891 615311781 841198761 718392028 946616288 114247161 983834006 343978980 626692698 56921296 766995316 1054786294 313569594 1060286965 964982257 979448173 284765962 794871396 353398867 688725649 478463292 230963713 460068847 814161056 1025470326 495964257 887837306 757458351 641548418 71156362 1071942395 846470448 961420184 680796497 815160056 191699153 158590694 831583465 589063597 339496350 510347845 971571236 356288686 601296190 465889397 169122058 505074971 597408571 871372940 868156197 234301192 844449038 441260341 291459912 227754021 991947064 39739513 495773816 163505875 260155979 853206615 125758772 299981483 415435265 140666151 111131239 794282199 961445974 29206192 975005163 129219008 862850294 694446220 828322814 758444448 957916332 709573949 148430341 769785487 419449870 378846025 240783000 1031356324 948444251 732070929 842546718 873813274 64310792 288707447 229670604 577674318 184432265 1061835471 681834648 923168466 424610555 440758629 22732174 1043839326 602062066 320824524 400325369 1004884142 50950004 414034788 197142457 166217058 69597731 552572618 870472382 1036760359 696577005 174453998 119733202 567418554 513008827 42614951 351124344 711363147 175251630 832400255 72360214 1058886891 86900281 907577548 985318180 281533311 60291840 117312973 401961983 663410556 1073082824 771449839 54936810 471454412 1026765656 149386160 522824175 990822109 377768108 968924560 411504926 322691088 1008263918 3030190 1039194283 22566172 822858993 466813682 1038804573 1040291984 1060320857 875276028 116659771 706814881 183397351 215118095 609251579 811490079 498331151 717942030 566550784 952820410 756035826 969319495 30434686 618209244 602623141 991780263 119856822 695393306 244051421 808144183 897748240 999278329 876606928 988937 209136776 20250692 638437915 592010994 241125281 406449176 1029707644 204663436 267121853 978993146 1048789351 579242177 532185994 1056545974 265795692 240177831 696105039 776604531 840196280 105102692 1050971720 436607141 727530833 703646193 78742725 225723938 878154115 902300784 509335504 216687542 1017083026 367473294 236705165 367344932 284853441 140163160 916738844 221516700 382806836 181836113 713427267 296468206 515688209 151803568 263472759 136134922 306844867 393470434 719430282 671973543 982242359 315249851 175374757 720625262 12780157 773875214 408900676 112158656 1005528269 108446245 528517922 392455977 562062712 3552030 835943876 597915463 880476914 346640309 714320147 1034070396 1003266064 253897256 150452816 7840077 445357103 889304089 598121054 623100268 464101834 113509489 126860367 901656383 875135676 733427693 201437891 476369189 531557174 107900007 44977594 375689410 41496832 183549718 140326652 352073654 160172177 485952843 472032053 67777713 520828829 644314361 726065502 146995459 492044405 347900922 834191302 548005164 399794389 831979630 928244417 419465798 376476273 181697385 825108535 248550486 548210199 953452416 220884505 706798032 27826607 322066480 639261965 772041881 361122565 557256296 601103672 732530414 957775019 138926290 711939079 171986601 693591425 171901639 377571998 163501312 551631625 886472772 806056695 637117764 702049240 692612125 5009891 186992448 216766725 677785941 64998824 909659382 772726664 853085424 291041366 920705500 514391506 728061980 652463096 149547062 1063875750 298276933 704903170 485645523 320789609 836721061 615367766 116121450 779146976 80611667 450185064 498367208 174419367 800985694 571075709 283441084 835143891 190336967 415468771 430010810 15365426 636151943 588880033 644452600 574718609 757699138 828229450 963897692 77713874 920211323 1026997249 165481734 34107299 178219562 337896546 155405575 593807720 588860211 135911955 1014985956 374094143 1061268658 443446033 343148807 781346708 410944749 1038300961 188274635 106267267 969534577 351254315 264605258 904294447 19372777 535909566 608581315 682371493 708324967 731175835 906394078 275880293 1054506826 983922754 132510726 1046688478 4118972 860126211 883000683 821862647 141782203 185941114 526749801 686883376 331938335 66608768 178144767 679653871 401427128 728734510 244444861 326838735 824065295 654514502 610866349 802673771 599306763 995406486 115725591 869626511 641636072 306806549 658539426 119060830 941408112 407309928 176418013 87893734 764803906 834712096 422354386 692581982 957479486 821983097 473761057 49358403 896506878 871057440 445175089 236868976 485835525 216912546 368894599 350330564 713844566 504105344 603486279 522480448 245539536 957367037 833389084 713660197 848355094 762552041 163897734 179082924 912103821 471146139 741560047 346438875 437556061 786651725 677803926 781254636 951049099 839693266 785347289 729747570 66798560 729615750 966004057 371358306 88775512 910125902 153118331 701989910 944736162 29771468 599710221 914109777 563655608 772871517 852157347 490903050 366499474 253010345 133753858 965185902 271940670 78967098 494424489 234469536 656731126 976931572 939255867 533550309 472106624 123038466 638252043 708727295 672973758 532241795 326178425 672345978 873853479 308700844 765245494 59791174 982446302 692585991 489050072 908429370 70102359 927869879 638196313 257221140 1019165514 310745946 490367702 401429376 463303365 727314735 728628085 990506958 582329168 94456162 832679722 736259663 410237299 1072169584 483634094 476442554 79311700 324924255 157948956 112779671 209037995 682230651 734513150 1017216699 226325152 607167883 613180558 791924543 336552341 810737470 803375285 967395432 510224106 497070333 998469116 605459461 351148110 250969473 658829854 328290812 328702989 997398949 540424001 171631853 726976229 898035380 793697773 862412878 601692178 853043974 982330047 121661772 640151551 587258808 964997724 57679100 158741065 131984970 830665403 687465667 14612473 923501758 747128399 862729800 98641791 208272782 338683252 508614575 371984794 1060534264 102427434 1000526818 420120490 1026056307 422896446 715597963 337996621 264406095 606850805 408689133 802230240 824705500 53973992 143221683 196642230 496514988 761453504 844894290 98876857 48438321 771076521 341342299 802182480 637643072 87877759 41661359 870305674 19918062 898586 512418801 705979677 95172183 387624286 436629668 36821188 989433008 454061047 682060786 534444321 132375705 1030379910 841143744 836928194 826170656 293155682 740410913 784968906 186235874 702254953 768480203 530838067 101277027 956013815 121822544 448367268 302748588 633686182 539812306 436293385 970905427 792903050 175464866 972822089 226771905 290336762 318154622 1073358597 613656024 403464764 324489493 1012609484 456155483 706867634 522063808 168775411 139907532 39498515 234527030 382228855 1002095565 215117876 58243764 734156270 404115443 512856790 843942460 665907016 802599958 42632886 259807510 475650594 452458762 584338687 980088447 579544298 832532364 628094619 349189134 989841014 379768368 591138327 136473359 370153905 993858273 527532164 379245609 716336697 737649793 391207967 304436975 182953222 517625806 514671206 272420530 111756562 367382209 14929166 769674927 522170767 221489841 552789902 162996399 450918507 147918426 729814742 347964964 838690209 920191490 899184688 606397846 307593722 986994905 673695985 286638240 842512395 221058277 627310377 833763217 545596179 135950518 535651952 272676108 859903609 80854573 972250295 492497772 145174349 508605631 165337936 443294719 535034000 903404960 20205139 1003110062 315631009 662352686 167736983 846925175 710045724 883510804 842581006 501558222 777216474 583954664 905429235 143045605 797276362 658983628 780970044 441467331 639802637 610183226 36141840 456536913 625941963 588269997 30963915 391938259 111299622 224862985 121168331 273471404 256699581 583117034 906649944 314709623 953477372 926992645 929667682 934992167 812436527 116410662 955953328 993005974 1010822086 823042890 402586678 237411037 135448791 274248284 110527055 488893953 244393350 1053638058 119563602 308227538 166974739 674376049 1013993439 374012232 913017546 466789798 12893998 1035157229 75480072 81540536 693734263 283168966 866855565 342833245 1062418501 737521000 969289588 882110157 197569753 467098340 108322808 953331516 331628341 402349485 622446133 596360593 322461586 273833048 498765937 339917247 51181720 793423168 78604651 836837344 211967136 51282746 730254136 893326291 420897290 460653028 67777742 83594726 142187790 4362419 44678930 370623983 797552563 644410215 643006882 250864119 61574086 72224898 998369379 968112497 1035412736 1002384280 336243271 370727333 1046524699 738878195 822177421 227696259 717523343 95139891 399845875 519592407 92394610 1049251638 832183905 42915206 314036731 597155253 153283185 175760608 661045663 773525745 70353545 703174039 1038062845 588400045 1038593129 814184163 506503143 824402928 14498254 614909858 339148860 447463891 999457436 45620475 220994640 342577170 514659839 132783870 954214161 892952784 672250677 415192101 1053622820 902825316 1025900349 393260536 67231601 574864071 1065725467 560021185 754368415 829733179 929690060 703119605 531440576 366327561 409919274 12301255 805752436 769059656 808362056 462208544 480662519 663544564 1048919157 660154797 1038839363 180688702 189890929 1027382985 150588979 791830023 422234115 589294736 411703092 1006103296 916524102 421168265 1065456216 868843577 349433554 836477228 48004010 687201059 755988291 379695039 1003977167 161965634 944201829 692637273 800542323 863334454 844681864 828021156 738924704 387906428 431822014 414710377 1011293907 678419148 194681402 412972598 655675684 413424905 46992179 907407194 922197535 634275218 891863842 135638601 573342662 887843813 33358490 379432921 16733413 839706571 385166037 54969375 440208972 814181804 376366886 987051949 528655464 98298980 19683916 539027313 935191710 213300143 289935416 754784816 445823504 289817756 611947951 415116146 45005201 536747070 228300175 300077387 860175359 920512025 444749870 482084201 836021721 497499725 411731752 1005615158 911097384 228238745 171612689 382180372 187619158 524366960 459207980 762659445 482503184 234289720 455940937 93569573 740179926 253010556 649240324 953512965 443483448 622365569 88751557 494474393 677475213 796854915 718231999 509988492 490888436 1024915603 1071382755 580985160 1068057126 1060111325 71173904 862783870 262061392 929699035 699238091 852768824 169365743 1009298430 732277285 46428830 924086440 423831009 570778123 910988626 335072610 944594004 1066576029 1052385391 576027115 413751226 761711289 33914758 483913831 32927707 461935971 980999835 40307437 919917702 190328596 174531567 9584314 137242607 149835078 954373426 281954085 565560049 405652476 750570724 952262840 780998695 959847881 252002908 999310245 236251161 576791970 96992353 685141920 1011962489 713140418 408729121 701407399 349158141 150709477 194441151 597333782 404594935 221913140 442663541 965558961 15562977 584493910 117287210 257678868 481558475 643850053 516324450 788819413 522111345 30782407 121942619 261799236 565595389 518978390 261090848 227760492 339224246 160066044 1021481840 267753072 960429401 621372327 580733708 902654437 319868188 66200525 432311798 516511341 202775626 167433571 424923478 464003483 766772259 794568128 124672668 754395062 591796801 957597259 834203323 892468209 188189067 520204893 13761716 835307977 998608246 959432188 52406564 775090035 334201079 313465162 504866296 293495499 628136307 845005572 772830597 202031269 756677600 433244912 676048533 617125026 497994685 337952515 584696350 600813214 5360883 753841195 378904640 701864099 99552338 96241477 468172382 1004090940 389651559 384314438 911810010 935075791 998419227 728035334 738580956 553226396 508130107 311304921 442644128 802343174 1003775904 744453472 571441655 723443533 393760453 287076025 212390196 402091736 694339950 366063625 606898751 53411703 359585967 176373969 229841992 686024088 289316895 430507708 127954618 863003722 499700869 220274398 281229446 253109921 77774137 155070749 419031793 666201712 13432756 949487536 89718401 380057047 131026513 436193226 257990511 806907325 743749742 559126115 832039644 412377237 827207656 858149070 574638060 174622876 580202986 186789383 713747991 954925511 623805589 224562593 839871698 763734952 958857305 321352136 335036295 86355548 254260152 566465440 715895131 316644679 699484821 74676562 60106159 492018663 998817058 803801339 800343940 698332726 457530357 1192020 490803631 780554861 622494781 853374604 962842835 755762479 270901521 684424258 286139710 38605288 909989362 740458536 776860161 397707834 667040752 412650806 253123742 386054181 16761091 503979007 661859112 450078764 360445053 974946984 1038914672 1036403328 695053540 293675380 1000026833 775980569 250724099 360468236 888095770 516038863 340903407 819942224 764796641 714480064 488890068 809768266 386107321 104688204 587911439 1045898538 1003601557 837182670 1041371059 671929319 524099897 742268567 223263110 857728509 779607221 1059466762 685160750 367165532 459447552 763237782 527115712 218657267 80173020 288073219 834948489 297832141 977363251 316642907 594946594 346715831 28574991 974406570 294675528 519476686 642895914 689371678 214426536 592042002 559971700 102750967 900998314 319569694 775723790 813043706 314682269 925993050 129938313 376446560 720523805 818121231 944486289 121153727 581626 60561169 270507809 1050411186 441479690 868822796 1072930051 229427574 698515428 329354661 552567581 559733621 115126815 105223127 831870056 48384422 945622577 261137718 466088000 374922664 756538067 846418689 888075329 1000023916 176819561 42329549 879014823 350158493 581780638 389073576 857043179 583831356 921466318 505073792 734409000 369793699 498636071 22787871 876048094 1013589256 806650503 182678978 608372146 703391940 595028370 272849335 521227390 110918112 468634174 672152701 767428390 398786099 749435712 130834368 291746380 369783991 59483474 32282529 860974570 874111823 997642693 516795428 409557672 893837159 623787716 12252699 314317682 783594187 206560352 205471795 595761334 605516298 1049690224 990181026 907429765 860859178 371333313 525670677 1011493752 240814024 1016791324 318910371 1026674283 634850273 791877691 239877021 219915007 622455329 722785014 548015888 63545573 484060712 916233263 716841928 483331347 1053632644 901605952 694049237 593866871 737396083 486509785 717887878 319735698 287595770 498714779 854509958 875711466 306460720 13639443 900130243 603126634 257505154 542512915 533237996 404796283 406274439 10093072 82346286 256799797 230478342 715709355 859426057 973469986 550381566 790668980 260066621 481823467 413335135 366512540 599722171 930752391 82069434 262099258 1018296688 346242865 369555131 570880490 166972068 166597889 236470071 534857458 432388374 116897013 930047768 932186116 843839228 606272272 1034434463 572396787 392006614 442153628 964409010 879696184 254058998 846487505 50862550 131126762 932906192 943413005 274988769 1002418348 746588518 716558141 573568735 908732476 459658010 761934932 710227868 691215783 309749997 254948038 676655890 225681031 868321571 225452931 533390258 445692577 526309076 363442036 233402899 529545537 5557124 168049874 783306534 443829121 227013584 306827937 469846159 969668384 701201674 614341564 916241095 187939943 309933848 282375631 446850849 471888848 857011263 626951705 448328730 318266249 909797769 705878352 680258273 114783305 839648736 437286628 48879725 547120108 819652279 1040249941 310628604 391828916 773668728 456625545 340566307 987526492 537671641 979763413 72287136 828906027 941740843 393161609 405064365 779752480 599491762 654924381 642855411 324381987 1000377749 437307742 632320213 577700191 92688057 225600670 816537841 975728584 429598427 942678461 418712728 1061043683 411321436 518400772 861778426 67040595 979431731 184217264 482250315 538008137 563074870 84828424 683970200 416211721 260141160 784297683 472177249 257399987 513393893 153301402 196438094 242405662 35015195 178502874 461609549 590019807 371460516 315094391 946112352 771004500 421897015 98940508 633616495 789099266 399470812 509881508 718058832 802471860 592424998 408181272 639850784 1017989180 451714630 1048145436 982834674 354274216 295630170 500609770 139705836 223024898 1032845972 46200921 912343930 737477301 179474675 470193129 603965052 1511894 961007089 761677558 501272604 782729321 947877375 821629085 571214678 166778328 731376357 671103629 599037684 198938620 350839292 445186302 375097855 538570748 600311937 658551559 293720026 722964309 214640613 914254853 209770736 823598094 1065564960 588662939 389010278 79915440 86316467 321073155 40448340 164638564 751617911 356333610 127701898 261293294 511942660 1067276440 260477399 255628267 760529409 560110483 350571445 996152388 567948980 310628833 49460329 492570355 1029874830 790708185 436800024 921190382 798262447 775504238 672618969 648593321 669762474 745775762 3272328 294695867 755404989 368575435 207114521 276789921 1054027585 894992572 543622076 57845227 29364416 753813552 521188120 792723652 327752147 1005038656 328091092 929894394 470261156 782767605 362962516 986711864 441625496 205326730 428324879 694080683 994458053 513271904 136023625 175701942 627133568 95176072 92888394 437147916 52358080 224911118 1044838685 8652198 506749760 556394277 793671350 698294666 809933949 1063090022 314795488 561061087 39304845 412395596 806172568 314899768 468459638 1032356260 329180837 963613766 678077066 498109502 1015819226 1042427250 542955413 861364749 1068135392 603443442 738738417 67139372 795483280 704947369 754299349 987707089 320306342 895426644 566687468 695543988 366814820 70368139 782818864 939481974 799375360 265300286 785679509 509774494 312581648 354778616 999188021 452093258 1071468956 739513741 641734898 372069519 566873226 765467208 385383714 618900130 736372014 90497053 698988827 14792619 303865229 192901135 450182014 147960691 7777606 478731010 35780940 853848401 599655501 484718750 1039436753 38495330 636419201 593707566 183304642 859544572 530787147 404481588 808598508 873871752 1070721953 1047229903 521348976 855214182 587932005 99835443 989437237 606080787 298603027 969205938 636602265 273801255 437792091 330281249 819438732 615213083 673039085 330579640 947002713 23270681 164018613 806155447 385328050 162530362 962572975 396823853 748243530 1042038820 110507688 740854060 464315800 89393630 534155627 487182548 884730269 788752921 692942833 876007639 859744005 184322422 536582366 878876763 279619775 912994406 14425983 826409799 652884639 728605569 647138724 653380123 777020294 125312933 235007087 552955050 565235030 393433217 236538262 261042643 60595538 515474979 656372193 515317463 869963046 727755527 816355837 423827931 1048301973 565306737 80924448 229450784 809955624 170465245 601981780 490139146 610570346 618183951 948793882 688783945 738833041 146417219 418413664 210678773 893042861 621515906 652186710 591383036 225163754 198582130 594669227 85471560 157448990 713464851 54852776 626773001 862750386 881954679 737586812 107495835 462015795 737437386 120122272 389482900 983442922 972986886 416943076 275700094 805321714 169139504 452918727 116607852 386881380 884795223 459026738 186425028 377318030 899736196 103473369 792368603 188260794 598549256 825772806 448077415 423086098 554191528 942289906 27748868 553899368 122428034 205899583 545875001 935069953 175453270 750568695 339003402 171895765 392601034 586587407 690436223 1256229 112784457 795851584 817793897 1025750745 95129025 712684709 514007924 757916253 915577988 308634926 539648184 890340296 367423684 240264391 798295362 556612697 684501417 20176082 351712730 680573506 673015424 750335523 939278806 624113243 699399370 559330542 380370185 948608836 42859191 847357769 379445262 841459755 777841120 642724967 177593498 637736225 436761183 80179884 273047423 787422912 300908223 519124119 513209048 929864197 732781581 963846355 246530519 525767392 113905035 686341012 964064731 605166825 599520781 87966685 876429412 533455461 581768605 261295097 55509872 678394066 945598396 469115135 320294007 766178468 562904839 976569836 1002921689 1072426579 185394723 325803424 195041180 501085421 72517931 12924349 230220305 793517138 171371060 634985220 459029521 208749056 206025592 489586244 30988483 765313406 259346841 172159080 668340852 701471710 660675923 720120874 882692017 823953594 188970568 729175199 771642629 883318659 193310089 536916552 171519534 437879147 247920109 39818532 162388493 675742505 202255636 692744947 415884678 103539865 257170344 614628409 870187833 724947964 342122532 850481291 85342705 870056942 300656188 342640885 81840037 947210647 465777420 711726030 688560308 499489347 186189116 942252081 460024239 739806726 640726857 372643045 276819328 938373046 195702614 243390741 314674694 111123276 481841048 751995165 827694201 909200485 992331885 829895871 507142062 563388020 843862224 761707013 970457743 1044586499 774800400 617758379 367303575 447532971 1032140268 119782630 972609158 630315439 185097381 536558181 43031434 1044573691 167984484 10680949 113861315 616305729 466861499 1033252972 1035741347 108421684 324045376 496358028 786976738 339050846 668776202 724515291 867053160 694876421 533693374 969812406 964087226 440009899 999807786 62873975 216161803 769746684 472225403 946986656 645572996 303114156 1062501117 692457850 980482114 861389459 939191016 928183249 989554086 865865771 122892187 793536669 589882981 795920125 943237182 709197339 134891663 620440063 254006393 334920335 208291311 982818521 584106010 622510210 318658015 305622946 865324374 325417245 828528449 154330583 235641551 318910567 568481879 634315498 25130636 88331920 185115642 440320836 633364940 527451643 948756509 716265099 760877223 1022728860 19740711 1013900004 261353670 327027257 1026667993 197682601 945555682 766056053 683236796 19075946 492443700 19479156 204559522 390572772 662415356 1048586917 580321599 330222477 332735671 1023516298 362420269 610741264 394746 859869975 87462711 911105003 847237058 501378629 204804666 1028427827 764319303 473521685 728048770 566697673 457082932 1003561271 765799878 844375725 879542230 398634510 452156897 300177222 22718138 675160341 199112077 183192986 704105399 1063013179 159994569 133633789 615930227 144325099 576443884 265286005 456003961 340178832 1027373347 591098779 354460891 759644595 449416468 237261243 947449627 677759368 890309249 260940464 993334846 627365192 61981864 661875006 939101436 357136933 345981039 551603845 513071044 828418218 490480990 340332637 353543688 188944124 881897197 245183556 326826454 438518009 903171194 372648533 529268874 715841468 557413539 979247401 612049778 554067916 131723327 66539209 567357032 5720408 346543757 779911322 794949014 635691652 883671865 516876827 308972995 676346869 437752980 286925572 29206570 1037453753 218807132 560702818 512282722 1003737498 19563795 730174007 342634449 962081836 328276412 359903533 3612705 629942245 694883216 664444297 778925204 59305449 693828981 587533508 324399077 32316756 828417742 358026211 59071001 644745015 298235485 11304445 55360564 957935705 1013987309 983767035 971488667 224384984 1056721744 358113885 904833826 185715472 712894486 273492543 491749660 934972635 385039766 893854059 587395216 513759173 841542635 836717836 828855337 740874612 500898925 298249162 621522147 587700516 1067994930 995029406 76908377 734865459 62851230 45131930 381635889 39177499 1020739498 124858466 889483031 967493758 248398895 349780496 42391346 141001309 700408156 368508005 512690681 488497584 477049273 935947416 91981832 105014171 848590465 409794167 630735344 185415675 795614603 588853667 859247593 206477079 386091332 453641318 28039754 227450835 55304016 44726932 307121212 995156750 273817646 575771217 684844499 773754950 217653572 1042136920 303245617 525174850 918410910 515474712 1069754365 255244693 396456956 718473151 174860712 159438122 21769290 571393169 229218262 818828579 1068690252 487143031 560188024 1037069358 30229717 740967483 862547255 401683728 699935117 1066181404 1049873369 640209597 713921890 275245111 642208283 406552982 927193671 1044016221 1023163900 29964796 162152605 731649347 486616116 266657008 234587470 839088072 732105389 427172685 825002972 267864463 982730594 999252128 302242104 411014228 1013434718 297306177 830606938 981749721 448629303 1030398084 50258112 345619426 877554818 642414926 891743249 786433836 673488411 1050188862 972801917 635394931 960308834 197787106 513249383 872420906 349603115 529257281 687279450 551301920 700969440 1031322148 30165315 111866265 928147379 824594292 241838196 542959537 831097551 305981906 435951382 167966795 507869889 425298956 932943378 548112253 213356732 441787730 245330031 92998030 242344303 213486781 332665498 1026154692 415110575 247267613 104672505 715288713 201711320 474261121 758730768 741605016 422404402 25187415 761322104 94735798 774138764 594077322 615549736 196095759 160730881 839468476 814584336 636786335 679369754 724406458 945307805 879766713 764367659 989597725 629210113 926322920 876790941 230856516 572700515 844501188 434367130 982582963 791373089 1036712720 426226405 588980550 858863616 592733612 847319217 22416922 797807153 973018184 330039106 709907395 258078081 887527965 234752294 176068060 670381152 115904977 40767459 373258085 650232256 526627902 434433902 486504371 496828458 227076173 134420403 742064117 293436735 100314354 587590542 389265968 877651090 298536701 206508908 1024944038 254863690 493760967 325334088 243814591 884937082 773474435 705581581 316502242 469981085 798065228 514929909 479587443 493227255 142601883 915968237 47673278 228355029 896761355 578654660 1003417563 798624594 656514983 1014866430 915018460 755933813 292151849 673404273 735365127 312756740 1013291034 399798330 63678154 685619049 165317856 730715807 659391536 510789053 866343491 156990528 93092468 281392494 674775241 288037318 931952583 558853117 113388932 419922520 5443027 1060263147 736583041 886661968 426860906 781951961 544217530 1058116790 256307910 749707916 172523643 894901576 14707095 742759009 189724246 619961704 668333882 874358316 55450253 175575456 705907709 744553643 572563125 320894247 1072209664 740071043 570602301 174195619 799019965 804548641 809125285 276779353 346425374 85273920 245594320 296966883 504263003 969128730 927386430 513365043 102904909 468736086 567463164 965882737 121582768 1016721018 25805980 359966005 716217062 971559534 153883395 592759509 896268907 58643465 636912508 288120476 75081651 305697010 633108651 981433026 210759257 601287802 878771768 369252023 315367296 102146209 913555466 224849604 698307349 1069683297 247082923 414364132 207585629 441784967 540964867 926737804 663895524 991372047 515372507 770345066 183833831 1000234566 281291315 717529338 1040948258 4103136 896959234 228240429 686141201 974536538 650652646 97089416 273579649 932527844 144503814 623788222 418463340 184405919 830694621 3904297 917109924 856803619 96476355 1012284998 230438490 957485468 805569150 367089555 552119148 1052312167 925841168 369981719 358422133 694455020 900381377 461316926 455050475 566005745 8316005 910027604 103904754 896214878 144042941 35402360 457879011 634798134 1055795627 581934130 241832631 244067924 115581422 1005173108 239043459 164918759 766290067 390510861 148937377 353530036 502611317 241481515 557135680 540927994 176935240 941733515 307060340 398955144 164479907 269760573 711649095 140036528 1000767196 880724450 615439672 363454239 686865729 308289105 945590919 828320945 148034788 556759126 329541481 1064471571 108512019 25605502 1073075872 960089003 453108798 78368708 709608209 24511334 457222726 327375500 391037092 553421635 486224761 951907540 1026487710 242778401 972437914 927675226 935860558 549229807 7430138 1015143565 518641181 192137852 785007271 462626865 793986519 481311529 911450411 902937889 872124757 609723215 209449308 474356682 822857502 344608448 708795864 979169982 432669627 466848394 655130282 1024103052 142399821 573427575 453910587 686841485 589472525 59734557 548514761 546858961 15101932 949059843 898479100 932745754 303485697 498420540 949233426 1002907172 724159498 524333988 175008356 454646629 273691503 713558832 132043107 426991722 42304683 723052706 770092723 840112220 28938408 875350845 903488708 282597372 1055920676 958630397 517176294 852501146 777044723 312763168 487566435 775078654 283366909 386139170 867950517 453432373 907769784 536363793 341603151 124278036 133663550 239881932 492555280 3331807 862160793 597963057 21180301 191864572 375292308 696444048 692797524 392253041 753602497 844918625 906520517 556142644 476777266 1026445066 648092102 1050340851 808851011 448031266 69178524 676853924 1046702904 269632528 780469427 36286962 354154938 860184343 687828780 378742287 993780820 238434792 517732893 288451340 473499734 330528288 613974981 830240999 402308238 619489536 366669517 977513300 459621566 293205811 1070836786 313620752 808415435 792724060 818314503 433477803 798486548 645041966 861823081 332354105 194028111 200299069 83174916 839963168 501693179 529572949 774788880 885008893 288563551 287179290 718409337 785713000 923774558 222786312 173223221 943237133 536717656 255293991 1047860495 446971424 740919374 179315007 461224774 7734669 286114752 980681353 303601779 629286464 648664661 724966397 500987104 936336380 888090836 734828755 13474145 227745887 414057920 265950793 966105248 508332599 189720241 104264707 366882815 1024152779 431872281 527191172 556992927 303847673 366968370 889213931 714474755 481528957 147637006 838538811 547432052 554568056 542395305 1060737328 673585111 595510240 960248290 612728498 677045384 80786980 439699147 761552246 1068130955 893914805 209347686 664627057 840921059 928904612 520573215 52544809 636684968 748925363 1059601533 531919768 1052222987 547066067 300759958 231167899 663590311 136660984 267299940 738185361 353122381 433816791 405054032 327819302 285097795 772176380 143268845 311328697 687041154 324758428 361077731 578364251 943855163 629177662 202545353 356834728 895419712 240657611 732042946 483325711 689571479 773288904 830015073 78405985 636707024 901422130 100399976 61697474 936124676 323555908 634701189 417165800 525570765 163094570 10343000 625448384 971993139 1070028757 809695023 673787357 483716858 791477687 142307184 554869700 979024886 888855141 980441698 464101566 838490755 709672882 970867583 705146196 643945653 67673972 607389491 63222520 691567597 72668564 288983879 956297122 881732484 984422546 602342001 118243854 885334938 69820889 452153271 907154074 418438538 115026355 1007180458 514864540 728584285 474684537 34406790 711762641 500596782 48817137 587094223 289537833 444397183 106367027 375711733 1019543260 467934504 941502149 475915753 767170787 23717681 867025719 643436774 836771788 343310395 135424249 271737867 978629232 722094461 653908473 1033487110 741590622 763053289 1026904168 467541628 1040385333 366221258 510959666 709144728 396556919 621797083 325885584 90675466 206540212 805423578 531366684 921643172 30371186 1021678622 908309498 552536305 898300497 1023602878 823496980 983493001 826993372 384237635 1068653956 501520930 987016095 363134751 165224188 125177003 43351202 642489964 52465682 75427254 728310366 541583563 90535401 312825241 528247955 82742581 813506300 558095652 617512018 835794065 339276279 667142004 119458335 631573896 416498357 788427254 231707168 592694849 655786845 665166169 759337464 316659008 320134041 397367677 709636049 781255 1066527235 102895303 257317195 1017090859 373614935 450824137 728443806 388556355 404581038 410601416 473942607 550539410 329375832 204617116 465321769 611188983 564248079 145120884 581431387 206023832 1061357443 906431564 221429178 738652642 950679458 574713303 862842346 795706752 692677391 482653844 513853178 678940288 349067751 416780935 308401590 528740204 116733892 414425227 952270629 199383866 32195955 21330584 479200431 273462307 141284035 19135150 375110348 701593711 62427903 380729934 164586182 91134143 653786909 803606439 901631216 545934231 37004731 518410190 648986904 887730148 664848094 193649127 201354055 424948512 408477945 557585844 206426197 129632003 394821128 438095488 556071883 832087386 661726872 46599574 470967881 28260008 608938587 498877515 815435545 844710644 708044518 665448697 199543950 946021181 330773696 194058367 178217227 1034107371 295636454 513748278 430511834 181273866 283222083 958650865 965561672 288379927 288517300 108584079 68221608 956702646 280389883 774092041 136159921 878262581 238985390 208596073 620340612 333946383 693424635 625472214 11935835 907768901 139292240 87668166 20340381 406911269 180871374 852803690 258196593 242450824 497237646 372850110 220329899 249748032 1008168296 524858225 1053362375 578291355 665001615 204178578 287581712 579891662 204371643 193968397 685754168 559092223 895477862 894924269 732761887 686610580 385067774 650519522 491959097 682178674 4014703 576094009 189963839 592760011 676001139 186674807 807045350 945904845 760436024 303729036 676495442 986334347 972765928 411283305 325906597 252031267 590226679 1059133327 620956925 695708560 655931644 873649060 560706755 423973303 453253263 532068043 670716360 892736345 624564703 474913826 8523719 1073028033 783048547 66367404 114067316 301448160 650041427 744857200 421786008 852129872 594065236 1027916239 694707451 180504462 906448784 390267438 435160120 1058696899 901056974 401333249 120494535 282814930 30295747 372361058 279096223 725469890 406314192 313421476 650435573 207143850 577852320 736446317 388590498 96161252 861177191 575709725 502025291 251947833 730811670 106422193 897581099 712680257 316694367 619282920 1033352346 413617357 327582264 506441081 937536931 189134843 707859554 340087906 817227234 912845425 824133530 335360420 458750142 300610931 222605777 261789968 175927819 355931571 22878274 539885508 203016427 830201080 399505898 834265894 864601693 290134328 905645147 934310673 327720106 846074268 836763030 400485713 1036006930 936580810 763938694 355993647 404482487 706293201 312356641 334598908 846811420 635293945 673441645 757111115 249790327 179409338 607267927 1024181158 356131431 199717796 874522469 156555489 194532098 640186870 849015467 435340792 714143171 21558363 743307331 242924598 228039203 515380133 687544728 983353851 553952937 621114553 386443127 631257987 668274578 498725904 918203867 372563842 503426200 1039004263 144912220 190436729 375678478 910277907 618527863 870900248 807409811 436814040 178970334 513439122 462694623 884028832 314853193 196382568 983244735 1064930033 461160991 602554169 536054315 603045130 260415704 602326678 280752130 416679564 787932769 261646945 604856020 261267192 982069592 432785908 301867143 437113170 629131678 939327965 235644809 940511444 828946570 1040824622 470344272 51563601 976406673 391515524 484412624 787183160 766145737 420522800 207020497 400175293 941021640 872600453 375292765 922431403 369395292 275639976 435654640 122943134 835179807 693161572 53533359 699385569 403586191 379047602 716681277 1040237093 1042782621 516027117 894901340 740407174 326173384 855124638 70211151 506780700 983298831 254160123 192712883 902426284 238844670 703707607 580847444 634516347 691754058 995186006 1002238894 493865295 1058830669 1022426060 649786357 305444003 626452476 620238576 649647832 94603706 386167409 615655708 702160064 372379116 683340181 503245966 32312148 1069297076 144558756 435297296 680176111 13254744 782638975 991657499 434276592 51715756 606910891 163514002 74578776 976995830 921333526 175013286 53984921 129584391 850700577 571392769 809065767 944905013 220010092 930077607 10396249 1040714321 19241172 607356925 61732490 328440465 418076680 277702384 248951496 984253543 157307190 126596610 754798065 450678178 32591261 624723817 898090467 185459280 412544351 878197521 1040013882 37891053 991657193 131448894 10577373 436838143 383410817 330951154 447728020 980054156 649451921 184585044 951805000 985257324 542010332 892920567 958272197 665450843 670265686 266170400 632802839 864693095 832208299 875055908 222899577 691909413 406848633 275516072 946733890 314171641 414582988 743949210 460497334 79488554 881344687 292978717 934653912 60564583 70370786 473947109 471028838 577841424 992114920 1053560061 159109179 198113211 842337737 711485255 311589323 1045349187 363277412 643205968 635531040 922634790 1050731904 694518386 219468664 735521269 434916773 204125678 648870954 330568672 645393734 586952209 988063379 523654338 812678471 192433760 1073490211 1066132974 541202959 894942353 263542102 377706153 964688988 407772067 487881681 472465981 1070272909 650705933 332769071 858031077 95771469 705376974 59928619 614136608 904257298 843525626 965829844 999407320 270525873 989061297 103750340 867447984 190079830 562736887 494196538 400989011 169826948 1025801754 740076123 503551125 591396590 557826973 850013329 106891611 582094777 817617918 702048927 265446395 952995202 501843529 276936134 726154585 322261062 938795939 158204189 717180914 407509672 981586707 600530326 840017688 323996428 565319534 1581580 16611185 751108146 383808742 389867396 445573792 940316672 928556808 171833803 942584835 158054089 924174066 478002580 782492258 241725792 933001019 735245329 810058359 1067311994 506254922 194328574 997029710 21210208 485619511 698492722 525140799 851380565 483389005 970466837 507856867 813576946 125891443 585551441 493190789 626015709 154101588 36981454 536468864 115045227 903911369 830205310 692972063 810547993 637186043 476810281 461252948 649855733 482973609 337604635 812304015 883719319 401921061 464084024 563767460 949207376 547062393 272116324 256981795 905956260 176501656 373911312 911458555 649246891 91529233 987783776 133710841 481056323 545247674 545926719 358994586 241146069 948925893 1071809110 922840634 685230323 39600211 1049361274 322415211 167422966 412987295 99484604 900471347 8933970 650821351 607448104 655638801 920735951 947991050 236992748 1024701168 906326515 262404895 628660974 690766729 157068309 432878612 159540331 906197803 14595338 37478089 948364470 99264364 434250364 691199873 667345679 440308804 374234638 349724196 263863033 211409437 116028823 159286509 318765190 84761655 557798264 706581995 209877058 414245857 143194292 635943524 10689539 631123574 860156719 35317717 471896976 124230287 932114207 523350502 339150559 214933885 230186336 851013988 916374708 927029670 151853821 517624109 317080896 646627311 916344356 607240399 251880561 277427802 1016827436 945170170 562503404 708603352 942978442 253204153 1067438127 774887833 1063528713 972930196 903189172 717025042 764663977 174844074 1004829086 910270135 105688068 604943051 161306426 935498032 354655 225506681 91900920 66178940 477547457 603881708 254377974 959189906 276538169 302319426 11552537 477496999 792490970 436904000 951403767 963700604 352925124 979907620 533400925 88944979 770980511 528183538 1016019303 6412251 878159169 498523555 449154651 1021067864 330613477 642498746 860850159 705018308 14900907 466759557 1009521091 15114800 264168365 254705243 22501450 209131652 870305752 404934140 351127899 104640559 341965521 513006475 1033044148 715406492 366439011 472551092 966591351 942266121 1034616694 520163604 166281707 444821037 689940620 862247868 597075684 143488160 749228157 791400163 216132085 382327619 772158626 79881876 101318712 102408570 713528511 752126992 1046860137 723486931 575737531 305800115 499370512 963051250 912898583 597781744 959553498 176797022 714929075 774017596 965515432 1020946743 829572473 406738124 458118439 956138394 586551529 198234302 601281780 170551816 378539335 658656467 366296309 361303260 988462054 695697137 544088951 65772299 352317189 561194470 504395404 752271012 792227624 788011692 602765995 90889470 559484217 166437981 9862809 281656019 453575005 537143751 366678253 266734847 593671970 725157081 140142923 443170141 359440943 319037476 45939016 383409745 946239097 907141483 476499857 1031250461 340285591 1033227274 552264584 906089220 42540538 852953069 145551116 304526329 501111192 385237003 571735041 638187388 16817521 314492657 286308051 423684854 299382024 689283773 110594680 976786732 510043520 592753620 955517194 872214808 555305247 892848106 209996152 291238436 246654379 937709731 578357143 951831021 25393447 841796721 114069711 346024602 1042853342 240908644 591782508 982817566 425469176 765014108 805335333 572235117 613268059 694091760 345568019 1019791193 240621703 159404186 278225205 109101645 734283865 266031173 958224061 413725791 955888879 16133120 239766607 774203501 424288820 941766065 409800320 676665553 683536160 891856998 426090747 983248480 1011590973 1043544612 117321898 580514440 144358380 765593276 551191398 96978074 473658055 224921764 965389164 723989535 733687219 557393277 70119307 155108248 491498717 56670697 32904596 1058158312 104009520 972775561 617194163 130530242 728276345 152108794 773334109 323528888 437048216 358064406 73706081 509531897 605057296 63429170 496396188 728533103 870853085 896985770 739392999 899871555 891836145 77877919 850153106 608861140 538318879 742677707 457551652 561348701 154887040 385164053 405365344 495167516 748337265 646033490 612846085 370758261 732085790 1002489369 984328064 650880142 381817105 420161876 1016030886 944969373 190809672 918933933 827945752 800460999 932242292 23238583 571062931 678591911 352626766 59763655 916968150 567175712 513654829 992456658 880998416 763279145 601140394 787030106 121352919 858277267 533297022 580444250 139183338 693378458 999114049 217405367 335323669 710613883 827664422 18913676 972894716 1047497493 1031713809 815874917 105670146 660522682 250616479 493792863 697517847 198646673 612288796 332793025 944987833 73133787 1025619534 11861433 823080305 982495395 994338715 1058614885 877172519 842326300 623659835 943276652 550291302 247539283 368926313 379314890 543148894 58032912 1014192439 766579132 509405473 113612756 97445252 951329439 877332725 693523192 177630447 438221450 895162381 354328369 241030310 70085208 761634742 337699818 584611058 658212000 596541886 575894892 777687237 1004207335 623796321 608025948 967378081 784446832 331648269 291456061 120939714 185803362 508681456 551459520 503274044 62508567 845471891 833742780 1057447271 417044521 253298672 494830803 761178168 694073861 649823529 1009945239 994869372 134699818 24662491 369315761 52587937 353990228 836022099 113027093 842728228 788435976 819687558 174236820 49369064 439433242 127494135 309005201 217427567 733316500 397633144 996946286 994783750 91319202 246199840 121262605 316123407 791721868 127006391 155165261 602966313 870629658 720735878 839805329 769527645 652758591 631613702 689444099 923964742 236495766 869543513 497547910 592481843 547547478 895176143 476349422 470521187 389598555 139095793 632851166 1036855718 795494943 908626309 518419360 101776080 1064124589 143335730 584728027 803348978 784610150 956028667 525442190 705756617 362150010 959587196 329400537 944884420 1007604388 732262686 231542283 792763956 734633647 578614044 847590095 257212269 470591037 532627360 148935383 549207477 267599992 207312910 505033362 193074175 118635795 98811932 243492057 298613764 536863175 742755244 596917739 302268653 700725658 876880257 954826307 546997518 348053108 929029517 747236344 403215158 120936809 738319788 269357673 1042976497 629729310 886486224 429053231 895641007 995440320 168320406 872615813 764677382 709397663 509195085 824973409 67113628 824843278 272813489 790690658 435222069 494631561 268676564 513816643 427451999 815162637 724468484 908978347 1000524825 670251715 271537770 794416130 881471444 3520042 875441180 666301654 733014341 906943231 844043471 685661905 279913480 1037632214 788572658 27928770 912148791 1038136760 380396565 17163072 636195561 806322021 538228720 600603839 303881107 578461485 391658570 705077562 1017021612 737259642 737653290 425953339 389387372 815246215 954827202 577895694 66839116 502884929 497614413 471138496 186735148 82473131 856412350 570092793 396549295 144146128 265916971 861803998 219408087 904100641 654135055 132980095 993158448 344846119 458733194 5247864 169173779 767626921 494583273 566188237 65373708 489459725 840741978 122179340 121799753 815514633 690068294 237066113 562563454 531043973 275649050 134332623 265770693 1051254300 91896231 262302894 891440338 309041914 912845639 565997986 504471902 1008454325 410709458 1004109179 670534966 33211548 354747371 66391321 789678726 58752533 530072005 201502264 400678367 252239599 999673791 772061656 938357805 144619327 757015826 964445006 1023482709 309370322 487273868 251994441 904924640 264469132 113046677 380363660 417503239 128963681 697443240 485943574 331491318 827199323 117792179 371817769 1036877554 1021891679 427618239 861027621 574968438 851972834 193550446 294931083 879455425 518040979 30502409 572154584 245614320 482471890 491215586 1058824411 1067124177 82342111 935933568 712265818 444990980 872483084 255884117 1001329237 722576045 456417293 203925098 606953581 820425974 123381669 246576324 364714774 587401988 952127902 361039619 225919401 217853415 771932568 136113726 480967823 728137803 726084595 834402256 637999091 336150224 361952902 1004726389 152824173 1047259491 193566766 363379947 46225979 426873635 719447067 308375510 449840675 670128683 306584685 437882406 954428709 477257432 613562921 516736940 347346211 405806493 540261822 649598850 362948348 216824867 216615110 631489264 161875248 836698487 195555308 1008520463 182535665 648836560 1012156839 947326293 904695274 935425647 185793672 820388505 203112899 832679486 156160562 369467863 1041944258 472553974 1040005248 725523854 344010128 554296473 713270036 124240955 35329619 164769909 784566258 248206182 821521947 430285445 547770557 889523883 56008046 686984938 140304987 1058030335 513903569 768121183 150449538 820043129 983863401 196324944 412074130 563369086 962829410 13436738 467577174 788129565 235826789 949009607 594468689 1015893373 527830157 373748202 776827387 10635106 1048416968 844190021 850580860 601091301 732618214 415528116 141261138 918091633 884797092 61199633 262985913 110728172 385793516 835913874 201024248 330337102 1060327215 808978075 726343180 599143407 248155810 905687012 677972676 808742298 949105422 1059229879 529338686 848900025 686936638 270751526 831050703 414941016 757982256 481065535 768266729 741105868 37523854 373348522 96445342 460511313 375061372 547777906 230326896 411143283 572427756 366786098 1015696547 813903319 172058664 412879815 1058003753 235693067 240447306 692678003 943015810 751567920 708744101 91470243 301926040 976328757 640575316 24216977 64906378 598351088 938994843 871630751 451980920 440877913 825803020 1050835991 178371218 862668522 524234201 219213146 262076345 715588555 470952777 526812042 712420923 344039339 405520829 365782007 280750166 442674825 37834800 586431767 877618348 16144036 63400520 622518510 667592978 1042508523 651678047 166577211 69204323 331176545 337102519 877029764 715720543 526482720 683196931 1022496384 393702927 414845508 252659635 308019727 155972872 372220305 432577157 450809527 295401355 783977963 1001342978 35349593 955281216 148384015 994760010 310378283 688913069 100783506 420952026 899924247 893314708 167170713 129432167 94190702 656959368 871181738 340370210 394331976 288005246 444840074 559549871 793844965 192248951 352876260 620661808 1004087528 403327518 285035078 923143096 797974349 155593759 224698304 881624312 158022398 774162147 772747526 621192632 919702979 370521316 302736735 609938484 197523486 537939917 899972921 376461377 1003390616 472357585 83845869 605635845 325208935 860160339 249560768 588018359 557438547 830247353 805202768 206081079 992523684 335597940 413299645 618086961 1030714466 127254161 132030009 1010196103 614404770 683264035 738875429 351121629 339191427 517371540 497842603 168989495 354964671 385703505 131888213 331031425 828468773 693803692 253869770 667077978 784618077 780610901 279759674 794695991 531691636 158021445 355061022 292453200 1060016078 785942566 5331541 624570496 516839886 430050507 451982598 652456766 86651697 216916382 948731687 810994124 910283369 512338386 322602150 326818278 435244774 676672789 59635537 770761208 65617764 1017289099 700897578 919000578 872750768 824061800 661160638 646417952 721555111 353636344 106133060 150869041 912837530 769538639 1023961776 347574240 392468987 592628080 703526271 667219136 818153478 763757827 24239252 349567345 1024382931 435046780 975757906 723748897 359861741 614983557 225378805 1049620345 818437846 108113328 1051534966 456710615 931609737 926410827 312640139 1025436661 733548702 735464659 831965081 1016584154 125643141 911171942 840313433 1037916294 33528586 482867754 687719073 11109524 249146521 1011948073 939871041 418676919 190122258 596085390 988604039 774195511 68488858 888810996 633124150 439264206 676643633 601288563 583052708 434337474 837649044 603480769 674117039 463292884 735116840 585948981 176135960 909241392 621926097 512926632 836226090 873205519 789851107 281045875 34935906 178243822 190917278 836070139 281329642 523798976 575725175 840451181 792664761 683171315 4447686 156834975 92876918 435111701 34139391 45907796 398280239 975386288 390475604 2081616 554214974 717829573 1058628159 331366123 881474650 241848922 832687447 860830348 211919133 787211453 464638324 806781875 200111316 108624659 734738948 288387979 768204069 322439546 884939135 639785181 726253789 384093963 719242382 839530394 538192532 374375775 418687849 679161031 442112881 178679818 595313614 72630322 711442654 157281104 1021309069 829049472 454444443 162755670 906273361 200158853 559626249 455610071 484164444 726154740 8385313 627074637 500576281 603959494 335214432 60483444 940712149 298058332 22309145 809699701 602634861 64916431 984488201 687361513 730721959 339281454 927520647 244058035 669610755 855689115 227640024 106495405 210372444 457007254 604749127 323876813 761141345 525908576 356278636 822713724 725345928 991211997 718964000 728264794 651269747 733159304 1055820405 753203734 823901344 672053176 885531465 586928631 643881400 829354880 662469247 360393081 784729022 137745201 20566488 216000833 388197613 1017344651 192571828 237640294 443440327 558120558 905828846 184860858 31708765 146169319 627101125 512309566 68164234 236356590 1060783136 731313782 803766281 574734647 462825189 403600609 519883988 839312814 983733858 925708650 579700994 1034711391 938120671 391361664 739665424 37239995 537261955 20854911 732825550 95490407 336730594 436686570 213339625 913586567 342413642 1029886096 654922831 690695398 858488178 698971205 794585396 1070369991 384108688 379256051 718385473 419630967 1029926331 81338578 179704727 254229600 700799963 720536109 326540158 407245940 209255401 1030419266 754011246 164151284 420901125 403545005 1000015903 54711864 220645156 903597570 940785708 423430579 581867018 132226007 228961674 343096404 22965709 261337901 246342858 396977277 728652905 351574922 407392219 281435421 942748520 194192570 150307896 896766760 733296640 461040532 619768132 204895805 598861917 118818708 616091013 78686910 544939509 667058367 646347463 516382302 659326314 699778464 379196381 135479426 149174535 615281571 488476395 541857653 889566236 1010705119 952029192 995780365 477995325 394411284 254527582 455800446 390069196 827827583 111184922 710767730 303840827 955575525 747253290 765762962 490913494 906875308 790953153 671580963 280203237 60539303 939186481 635743099 36872899 183779461 580646080 752252604 533170399 372511999 1037030212 468253650 238539217 992479077 30010603 253197277 98626888 677308773 144483882 13567864 518382062 702909235 888716645 814566602 42741161 346382987 263788603 1058462636 982564322 550415975 1069192095 1049543636 2455944 912249436 126864188 182222178 548014763 809798458 669945310 172888063 175608360 178466156 273747553 139339759 934407070 783037 91029933 275987392 251766965 659548571 414718539 694109187 222977124 843450329 688416371 436671368 409607287 222269319 700802922 807661819 58430935 74904060 964126856 804791484 83455227 25215000 777136044 668120028 827674456 403776293 1015895032 944452031 4007573 323450060 237536262 1069250806 825650939 748369021 50240061 485087916 950530446 1002639406 468568347 474822397 199006433 282695329 792577149 841932296 587352650 604289097 48778392 13862920 292478315 370429686 295453359 202291042 500117031 1018837609 757381752 310134952 86725846 621267531 220533991 79632382 78842997 325399320 806448677 608794158 586142643 960101116 1010305296 624847977 879434331 526067698 752035906 598978449 889785411 883224151 631191722 358123888 1033343170 610641567 54437503 808939740 560845133 814613856 305107759 790211370 675577211 91721722 620875056 704557387 452532145 714898546 554502813 837869387 158338210 62770484 936405485 822028321 953926787 173328046 852707142 982224501 886335467 320671463 1025097984 839299404 792818038 951238180 484955171 811091949 505361992 104078842 328293970 589221324 467977022 956594889 747258420 550041584 378591015 683248236 157374402 361718379 651215160 800136672 216409694 808114185 556707843 370788408 375933478 817721455 872520728 33019310 958255677 82230694 375574712 430271296 285690654 318606387 848674148 348013368 135694210 245375737 323916933 673772577 278725292 749408392 289541971 1043039170 383772515 665618042 105676534 465186682 64849147 728117660 1040672018 713818415 474237147 318268974 419881841 517037506 1050996354 20204033 721056433 747198074 675592806 396982399 1042120717 401657999 65019945 1031733546 229730052 816608565 433507204 1009271290 911060334 747999928 166240499 752467332 230243530 794324714 229237988 265597567 168309058 701915199 829288956 565172112 571028621 698269329 1027592415 777892660 162478818 581513113 524121760 727523521 77554123 525520294 665637197 741540315 537072316 869594545 445908286 814726826 822824746 637958272 967549872 914124189 430836211 486313137 10502123 115584602 796702109 17721418 300522137 38301459 808744398 809705857 519170445 681209366 68949263 651062473 261419426 28616092 312968987 408290008 242167856 854086588 976183688 155687704 597392199 137152442 968057332 134364432 968179659 379782437 1010595335 163519140 71593928 9196381 746190211 152015442 705288771 484941174 897287745 21651573 350210455 682967241 276734093 300983796 221975614 221271819 162399213 603580472 623048824 1045818318 335954108 368309242 268248050 229158731 754283040 614753048 297988217 737664950 434202072 877080425 995425510 189783204 699801347 849711146 137170089 872134912 632493020 978245491 208681569 770019928 300720949 983960746 803477365 846209854 1005814277 263651950 191026378 923259073 302525333 967191122 314530601 537345489 766169972 642831906 14248593 947450994 118149230 1057825010 76981007 978447216 712157824 783255345 347825849 420911701 470918203 67320670 113313006 355202725 971481978 1002419519 850158471 717689176 715401157 542067467 989383330 243780746 644990352 672363525 921200808 841298945 848215555 1048092525 365995063 740267108 74491124 141016330 678571580 220590217 922862585 519369588 78632918 875785585 631337758 97146551 81235695 303102120 296259809 576365486 695249412 644745676 550455269 284885196 707532870 116421198 493326616 998223928 31468194 408219011 41632594 202388083 216648895 323507660 1042658958 100134886 659362030 837135372 20638412 275831472 555973677 875899119 953584974 879533707 484807380 225205953 211963127 1061221082 356085848 364045584 169988120 382706256 512187472 224870742 11436958 116204531 693923673 488142344 50412890 1046570207 195700417 717524103 521860488 942498196 658074876 785990280 496556106 869408480 645025587 952388341 616754117 376575608 782760581 793000937 151994912 557866915 713098688 398448401 692758075 333981799 1006495707 250105089 878863768 113944044 16600661 18362307 329335003 898364937 76304092 853055062 268623571 237590838 410919486 459360243 320104001 816094787 100327370 267989939 522295915 1049611374 1032984809 571336312 331718279 982754575 543919703 81836608 645342535 310548173 274411424 315282436 338113553 58279430 850804933 95867951 439038705 205121784 1035478473 22033724 393805602 135996279 51433055 223841246 390414832 87108862 454389899 246578981 316725697 643134647 458816229 119548396 434629965 709699057 600344877 1037905728 326117904 304833423 186186728 451723691 266151179 199063099 254297648 379679250 954862106 283803419 879441418 950877012 630860176 944999852 187902844 354474584 758272440 447723330 525461839 1031329005 583174399 454449379 1008956016 8338887 619404036 252008152 238873832 109592642 986116906 642667588 868249424 893038575 448346184 247435133 1063363803 41792802 729990334 477846729 117834712 347010693 520650889 849264492 700259665 847414577 687678272 1010644540 1016870927 597008065 871785866 225239167 232412092 566317390 49827915 478093825 726639146 326605333 392420195 161147682 721085655 640094467 733839324 918560861 857113681 953644677 650828019 327756199 75359389 913831096 870864386 426990450 183740179 477921393 564587167 1013974360 320475222 259747782 819464548 881440467 1023509438 294640910 439076833 21296988 469339879 590831729 84818055 103692341 59436704 329806781 235588273 317672289 360441299 983152762 741379168 396452504 70476718 710013458 1009513292 582957746 486977210 668733479 181147530 189927105 98885138 85320331 384231095 541885215 1065250119 496926847 822252097 269899442 754657811 711651820 947384083 171085888 205755892 964769562 602408688 796740115 386997387 488259396 639255369 105006000 938777345 876317921 675027119 978420696 694367588 501078364 970259168 813696409 220018191 149337432 644515603 226130925 664725636 1051695988 116709311 14309806 823227789 782318450 166877306 198545616 266496626 868192968 204229939 511445575 470074600 755169019 221275779 930293148 466208128 88297186 241004571 367576389 58187582 363078686 342734849 672044046 994555371 529845324 318099482 915992257 356945059 19343903 576399370 490791972 233439273 508672887 9136756 278999415 356499545 393780709 274029631 480505166 442998982 428021400 934763011 251519229 361747050 59450328 147599877 922888758 335451857 76820078 888583557 455832985 753698168 193544095 314640750 189748045 681512940 702366114 402004548 141223290 210352786 473555182 872973977 39444721 479476732 440714745 844830133 693486781 686225609 658483059 245866369 820295772 177242992 477046285 501673635 709617891 582024490 860995329 154900368 1047195906 430413931 928416293 897790093 962529225 696384814 672719382 215773726 864906843 606371166 425870905 189831792 342270695 66721429 903525968 271160038 1048987595 729692877 141796682 1011562541 713839537 6414747 473476832 1034871453 1015138693 507875492 883296353 761908050 479896212 154538145 174407673 522370330 679452137 506521484 440674380 995046533 555315637 874826109 1061002513 997242234 176935697 15266699 223546670 430110734 271560899 91963879 245945543 742052669 158209768 763786634 112225895 847817780 98371620 461885607 578243585 764237474 501216116 767897099 192759469 526678805 543703886 860289704 805419039 456837527 601396375 111529404 899284988 677041994 620964568 609852024 1033967810 994724032 759857124 662823623 60312352 411269270 521381659 856531396 234495198 632742158 1019754073 162208926 641140502 287015289 132445657 389528375 636060890 898429539 387690455 319439515 549502468 278506346 335159518 839480319 400493104 445466423 979203763 714638967 547399182 320681215 770662532 587353507 562805923 830494867 187045045 946864458 451992827 8901156 155001320 785315556 907820080 106489743 938556687 619486067 756680175 757195717 794616008 268379363 127428243 434962147 190373307 219925620 983819809 597779028 911810142 184595186 1070832013 287321608 42244910 118014738 998524206 728727022 575318199 724459683 909578772 173636409 495081030 921777931 1013684916 333182822 209430326 586445981 940434516 723043203 707020566 21305511 522586288 647747120 866955081 421617224 830277402 877129360 1052384655 783265632 459899608 743818953 584875912 852132542 933685415 679343854 596532011 105557026 497574107 998489712 823330971 395158535 73774147 1020545704 163176450 449191927 920503347 290675870 76512648 865175708 273998577 733373068 928551701 315478389 806045743 355153078 840973491 671647961 59075235 218370739 977822663 218535362 290057443 54415101 867239012 384087026 956180000 176783974 836018908 243596145 792524663 972703602 464848176 235204556 158501968 727143153 674336785 779451709 736215626 153935773 257704830 408771477 699012892 1032624448 975938600 602594168 173791060 1058911572 622275092 614316348 141486009 464903188 684950604 657001259 1008470979 1004716286 136534154 61393630 359064127 50128596 828259543 296352264 1048469235 368970169 54207397 79249895 1024664350 128550517 710668937 544725136 713781955 621156121 1041053706 576665972 363505723 637573709 489480484 835837425 606996475 863662439 436064596 976730649 625009844 254604278 609762068 232184113 271548304 998646415 576263874 945559611 1044620382 110690252 189776666 255382908 766963361 1050302525 842307622 424450004 949346270 784560220 40283136 492549919 169398915 290021739 258690269 478913422 309460828 212690237 245378575 520617337 910607862 30054083 463188934 652150106 93097447 724101858 849489757 437673464 914430133 764865695 122405850 281354675 282612102 680107040 614151715 1064217048 809231180 575511330 396322173 630289322 83416135 894238023 525195905 996585850 222921465 254535973 829802510 250930610 167800678 870997828 191964326 717887675 403233927 605124020 233321276 164897633 968103601 551931188 97416295 760872670 44632779 970868736 709666696 324810770 399129971 532473399 899083198 624766565 902542457 864094305 319766409 550422795 557800719 1006530193 711508739 962342275 665506211 243131285 649249327 1025898137 873023434 845266574 802793188 452068434 561644640 362393704 709221154 981183400 983693281 994153639 1020119080 586767529 441036658 742149280 85903505 798489920 604991132 314711459 795826459 71308356 186985709 878197461 689124614 374299171 207994126 709291931 270162763 820036867 352426662 865371988 931869320 711672404 952742393 633696837 248456643 557252831 418939515 736007261 686163431 775043777 178738110 895390819 648911149 45932437 468535299 814811520 404637688 257603882 602033497 326558100 448043082 750682890 981701023 59874050 440166985 654515424 598837587 1073507307 197293879 107759927 454928660 107097900 528400308 926960225 792441156 914484210 140989220 345479157 357279901 65153162 622859157 890788969 753746557 147996062 596614551 536785094 442864429 599793495 536471242 802753759 32683874 824531157 1059753292 526378871 491092215 174152161 825877766 927908294 291651599 346308888 709459495 100822036 815000650 61074707 453426190 1070633869 564971226 721099094 19466278 6266269 847462910 73316891 533033648 68543527 404846964 1005934087 673907681 1035110028 967629553 850942095 893841155 627205440 431476022 820695921 499973977 1048582705 895382217 244073956 329840167 646928487 103037938 664012597 823142475 374840975 907404257 958009067 264954154 348466077 736190906 373141401 983219561 403049302 335170412 920421962 837649880 244874833 1049065859 739023278 378140748 860531756 300928166 398979121 905433226 332675070 448436668 643452727 1006665915 970224924 409867274 196368134 973480713 785864261 126072224 809670947 80002203 1002266866 251579062 641668576 877868833 905288516 767648683 35301644 700693679 632034384 1045449067 234952698 274154939 547851296 546878323 266180943 622081225 857568560 875822917 561149415 955602925 762121910 627007267 432304737 918315162 832095859 39283712 142282447 916135145 404106443 51374432 966361847 304719250 150747101 752484533 867240920 727521892 404688161 57317954 194936162 259863079 687115944 818238698 480020557 292304734 1000886264 609483972 238415453 1031028471 1065731866 563545872 689323517 741114709 805927153 688767264 153214826 142022185 135879402 851573547 189283255 661506149 582402697 91204089 860504026 611712736 566144526 951502719 423810837 179477196 299885715 983136889 852970278 264210342 759666434 339905984 1022851074 462735048 360271019 875732461 394440007 420154763 136487303 950127150 1043490900 631377334 60268862 342827144 989517456 316944357 630581483 734673882 654535565 157874357 73477441 88829414 959798556 782411013 1005072001 751883993 991703051 3544448 42107099 731144477 1010582524 429423085 344686348 1000220559 572765795 843474480 905527509 977207754 466003680 401206306 494656385 192631366 290292231 898370225 870505602 169970833 25684173 135985350 228540432 215032492 176493632 574449138 137350490 681418919 349741040 216943585 825025853 650572298 787525217 643773160 111894449 417135996 615727163 306248018 38376594 370486865 251536447 34541446 180890151 537678501 190981977 653707931 862308509 1002533928 154707591 43871963 136099410 752791972 803265737 683546943 186839933 1027804947 1059628485 300198170 153891386 945108615 905392997 173394042 1024501493 223565859 969005406 240579687 259484979 238801486 298115189 82109776 1005778193 95743996 570826006 181867895 108532399 508780667 137157571 386094458 121794433 1015394792 845230197 871536226 431136578 250382977 755915386 690062181 458675529 726106321 495442672 269721284 590404140 915191108 316586313 795729586 649556141 917188124 435395305 733333961 698906977 650397106 832501999 652641407 601038043 881994702 615929980 373641825 224415007 399432821 881834955 604943685 567855767 277783765 398423838 928434058 5130030 803918443 786851273 797584019 745788707 485018724 777322030 246100398 64039271 916107229 606287304 479635369 993104372 129355864 1027451125 993656877 1003655518 683324299 286094854 220041030 733396005 870698509 742402578 677733827 66833441 470642000 557588669 9180833 390529767 985510981 810115357 371632887 703376777 462762832 44851200 602529283 799630840 597571251 731392094 561960676 717783277 780304511 863591477 827373649 1010192554 491696540 523255890 11113635 573367046 829392479 742300971 241043595 454860682 587857119 902353066 841295656 83619115 531726097 826534804 621088888 350930031 896834885 447606549 919473722 466476191 304942817 955115466 127209759 368306849 731495727 456537674 1031669457 458053832 527759946 323875151 871938973 679174333 372519449 59509745 716071164 438087250 791512532 680975603 964247856 758676843 374039339 942888826 617851367 425476650 1002170637 685397343 391074213 638224851 730392946 661324628 606440440 150611066 544015283 185164927 409444675 394280055 196760846 377720275 707097626 289675336 467499123 222665300 945904658 909913169 117509338 297673878 588338312 181500260 666625600 716999206 167701068 931916548 643066576 367055135 154164516 921116053 258008419 661219605 927300410 357963579 321380115 818515966 494174225 392253163 277019751 242178360 688309896 104758599 836108466 68795950 763092596 226775096 88134143 290309472 934779788 70602173 194934290 506292768 463928039 241430514 940439545 281793151 94320717 348729485 295260706 463452352 231828800 84058761 560913926 959991670 900823981 19680207 729957151 56192806 275381677 110068977 659111821 280805892 1051125516 580331886 853388058 530563152 634531739 242325855 69888297 46544083 722680821 889734733 125254370 310170714 189980193 161290215 633025349 865290674 301365432 460211119 756876014 143058557 738198540 390356445 803616920 905967571 11505998 469647426 130559222 309410549 494188650 798218445 952758694 66309569 429920632 872762394 555754283 1043310964 1036385465 335754496 748790941 413576465 586555571 606634853 800412670 485407046 16651964 385678771 139845009 191340319 429003644 833693646 43053492 882295772 619171347 125169321 415050356 1004953314 853661006 634409559 754815968 213122129 1035501738 735940034 230938462 951894397 276529239 465470990 110043337 704831408 27606702 674484780 1054170088 198381402 352836646 700511611 591905402 952811091 428269131 629111208 491769365 508144764 135040044 197318898 421508642 986875136 486135674 881557508 427297899 232869390 523219612 837572716 756884674 986071248 722999386 708677393 807520382 627342526 470692534 633784473 685488938 99973933 555989473 539138232 292735965 48172691 682059533 326612608 904707351 286995706 525886067 488033589 221704536 462332730 817497451 474574438 781080070 563809499 808564377 827386386 806461817 560979740 668088910 239611324 122854138 463595302 459174117 147417853 661466557 806157808 829661995 214429515 337632465 877820019 902847549 416242737 347108401 355219652 27151027 289357254 172653788 624476562 305243201 209496937 647572032 929563852 299719826 857178661 380866457 707291799 809897430 96266313 1063490806 861682405 207839267 897455191 26163218 691119373 348624826 527153967 650603526 601581001 420969833 1045593337 412720624 404065827 407198801 123724724 75371657 17801594 669807948 993215200 35628659 1004231716 1063883426 175517258 810188007 480351031 612928130 442032107 431425658 826144682 1017105067 70522115 664356491 1061400466 734975063 529402479 706267876 880803299 423098653 639465797 683184646 61411456 367954589 778288946 263161806 613143113 975402419 988209026 628818987 415758588 971178481 266387258 841634443 688622712 700287921 899069727 435871264 688354568 934784815 314525114 808050038 824350548 182030027 722051067 438621860 523619820 257944499 787760800 998898094 943364019 325627466 892234021 1017917648 976912636 1023157476 716611387 44651535 544891962 908702360 594370821 659665207 731004078 958911429 876402178 469378334 49446740 494835637 347015391 246992169 829315347 984741064 257752196 167982947 778920890 1072563509 597871425 868869735 867672646 521219974 286057620 434842017 270676069 657080891 637615083 984716114 139412601 582512168 225052897 558670881 514147884 95862834 964931049 332272642 846665697 17748472 1065650960 862857756 668766497 794251292 220502034 932351409 984966100 1002526358 1035021298 571363165 368918226 859021577 614943896 589148516 280553674 517597715 944957390 825580252 5578202 874885067 914991971 336787897 996539043 143690283 932634244 231217573 219568126 998987720 544027339 508020027 91148331 172714175 943126008 681351749 96695898 619832700 639501247 787764573 634891015 791333995 1021709984 786108632 572562442 927190706 756707138 120396235 560395443 580385697 969243901 332827907 712971962 264586198 75052774 83831031 796949578 548935641 330338514 222825050 508224563 648491483 299587640 385128364 135467387 76286756 582146380 499077573 270892130 589547850 309501755 623813538 511174822 72535537 165145316 545310607 1061003421 640786580 106631707 413434430 18163430 845589682 952145627 412065856 426346804 533775061 440942192 64120385 440365178 558847627 235262993 340528311 807772940 624232866 110202544 436955021 695026876 836901415 308138998 648899102 31249754 62015336 241988777 856306552 56864791 508110445 657306833 984765610 135705406 523678453 997600490 89276488 526595154 29985023 58840337 983250186 311111030 855340235 703488173 567063467 766118466 985364603 5530984 240058414 607437233 732768428 436484388 229431757 94652104 915152098 195414369 907827656 253845329 463974621 634140334 1053031098 373549058 750787181 685266880 1706574 848857575 617258023 92774159 887820945 601684828 69857534 1014839449 324584483 851525117 41167222 440716097 1017416951 929551085 196223466 512240770 92102302 912418013 722695078 432530163 25712783 866965917 735809 715194251 93441997 834521513 443613323 1041624651 35853628 440795273 91990184 1073584817 487665639 352910016 794538883 775498419 731721062 464703255 731523919 679820213 858736112 992904749 262716706 992714695 518787888 988345321 819767598 241679623 1012009212 585624056 966826191 295354466 490657629 878837867 609758346 561509845 1071338676 9343618 217565612 430640386 124004427 445132738 961205899 704331366 272000504 435022861 336191402 97472191 858843789 874011838 346387054 653936305 16385594 389482444 367580458 462765228 462204862 659737685 345310056 1039068927 1059412258 543537696 815971980 967259680 702332617 544360978 83733517 1053273415 953868429 103291054 997570711 417724260 233379051 76115927 94329959 540147505 230422875 784399099 776161299 324609237 528102180 716223547 1010017342 523420442 385921193 989555519 630891336 195369066 201599374 679139120 1050100720 40583497 840203633 674570992 799514256 569380055 850120577 376728345 261681566 166624175 755706333 830123463 803833369 1062633634 712384605 161577077 567026405 857103233 134607200 954284844 733189962 1051449885 761881110 230340271 452401048 30112730 236293012 1053627596 398820101 94863552 630450986 101812294 420558492 692870823 528662993 853434939 881058880 928307774 887821183 933071518 651017463 811492318 157491056 429920631 185880871 363241813 226884182 172979150 1030606167 52358284 966553909 899330746 466770795 509867637 259531086 802259417 212591130 975571475 48130056 396160408 614774826 959700200 102922640 343409924 225989103 473006427 387167536 462153150 169386834 97170923 446188164 131555375 772203472 518657384 423498366 218642649 856706846 9653970 623098228 572556874 944414774 891710912 122416281 475973245 507465033 400329140 405532314 969121832 950044231 521019845 392676086 903218621 974143312 26750053 667881553 143069603 1051477424 1050964753 395319983 871478625 715908163 1042826539 171369613 106476979 676698466 900113504 1032350507 504344425 851579281 174133896 434505415 225869097 429650734 431824513 443010432 656988336 439860024 886928158 448629199 153140935 486963192 596987265 859950665 222020000 678674250 131178084 631080881 268716760 695922724 122139097 958379133 282482407 748614243 727487686 992614889 228204164 123797876 1053080988 75536658 339040455 385230392 58540526 261657244 274826647 421854248 570830246 439618730 925091818 540149058 527840708 43964923 418226553 497108320 743820525 750142088 1004659792 549473938 193058907 824728431 777145506 235960842 304978394 939179235 374458680 351066415 313734747 692225404 158166327 199218800 863064017 11393236 350746183 135463940 688240676 544368916 647996960 751310922 662724501 857126479 425747920 633021444 362779116 520839267 632778246 968100118 888128591 796438340 185080704 620191339 74379932 953532289 121855447 912600995 902944825 171968507 51050429 1067701421 754147551 982388497 774491047 413510729 402266752 502024039 1032180095 47158008 558034050 862880574 424940247 640453170 980274836 281984652 610979486 60734386 594564425 579142314 768737141 274541146 212434166 905716918 220802696 692273038 48499130 321230982 762511842 960673145 970738522 357165056 657612211 921349706 317324432 73603862 83621608 827561192 403633901 473855758 87116861 377592659 487414685 1034649400 513902720 439653525 402334599 240851544 756395589 906134199 827623658 168400755 680450701 182451414 149303808 229650609 529571287 28430269 976845630 705424660 32535450 414526854 541202262 823063247 140600131 427110202 762017438 753334940 618962852 268161697 38349821 229606386 661471944 145562506 1032054211 944300242 246125484 374885228 690924439 441010078 32377349 408013630 650349691 309145003 158409960 297228438 459775809 417902942 885180878 64114517 552471950 796618446 1009748634 664212989 255343005 844177420 659600051 536510622 777441159 746727517 850769513 421443384 937966025 498629800 336624575 82752408 880517721 624994510 704342581 924097366 968671315 990885876 621532315 77115936 490287615 1057417917 536608206 543242104 148762805 873009925 771269036 910171641 58438862 25071649 758348761 796969529 168106479 351786017 747382020 140309059 465515202 1045533545 124977703 577164932 83393226 21842602 1059895462 215184984 612323753 708473165 287759077 751394009 419425667 266093233 124233480 554742629 385829559 460152452 282154087 839196972 528484704 378344680 784410972 178792806 321675377 111871650 731698099 701709837 681070161 517029999 866751909 66722658 787969247 89045958 756579891 959690102 521361754 1015962535 915999216 336917629 627130549 483156972 581015918 282496697 869064576 1072852977 337297560 1055469833 408768536 42323981 745067963 1042033590 599006114 742457451 1069535009 376918456 138958573 541914917 940443840 868633397 170453328 329981274 130353807 640053872 804770611 983126042 435643867 743812701 38723735 1013401728 100688180 1042987733 539368618 577837007 724304828 1042416653 722975734 947730631 588363033 717118882 407623661 1070132656 119100154 173196247 103757339 153594325 444797609 134853944 946858147 1033940545 119471393 129911206 812098346 599072427 809129893 408950053 260082347 961385833 561272568 1002154521 631876705 499974188 612351838 343010028 796670069 709322074 20821485 13786299 971602521 220484409 575209056 412185404 953301443 1069455012 754876795 261303969 641193857 568651615 23908055 470681918 128735828 205644413 819398393 491801389 728483648 10794108 1067740796 96990136 712564871 125306528 84430229 879094550 893525039 939612195 772258253 527235924 817330020 135846975 621239180 230504521 1067812667 899587229 565395811 522296921 1014241366 694103046 508797342 712329344 7017491 41421956 543599096 48331386 436623843 742254457 8783999 304239863 357912256 490381111 774736382 536399091 713107184 579369484 988979421 166083671 428676162 619191885 197604052 1050774684 548621161 632439035 836667070 657362582 390289612 322765525 618853107 432966783 814175260 670099474 296774884 773070040 251897541 337000159 248842612 625496180 572868456 802766305 335865900 376098454 540342841 953520500 233106889 942906666 184314770 856296448 101280520 798238806 270722829 960070190 66256662 215726223 108812740 565963053 982503905 47763235 1031328096 953224125 868139919 627520772 510082250 956387664 98962028 641661085 826618219 347208077 186153965 452599755 694576886 212785543 326836238 891578606 1021461367 806325095 249937496 240961319 185761050 378072154 304501547 931354981 600733379 188655925 75228981 765131636 618591881 18309251 310603056 119867680 499903861 414021703 288543156 77037963 867379603 1069483669 722489721 706694201 569872609 534719478 281807030 854122732 895814907 304537479 456857358 873069956 363294715 339495170 7164694 516522577 446947859 814632690 457343741 446274851 552612011 766689851 37894848 921100577 695295254 1051057165 762074919 196033252 990124811 512916604 642100749 559093059 56412359 1057068315 221505382 653979272 1061842547 233033851 466119654 503858785 220680074 240997409 692782469 289837314 329565109 221499912 874718045 916078093 745008054 581081597 685580359 540562137 915318425 566530375 59281103 1047484396 426418132 357957750 319141798 713157258 727305533 701511039 497839456 1001519082 468051638 12842733 472203850 27392093 177258201 949502886 320623365 808298864 64237065 442130625 382982071 406018614 9470173 472998976 444560487 37682549 239776370 785339048 535898193 494254562 724769166 972750694 298124190 839002927 318595559 943940736 764583850 549782737 759772803 296417516 180504573 568080531 147850294 851373969 406537718 1060625822 147920859 398412628 654810437 717717939 663836457 193340291 849307788 661554003 151210116 769012757 821567960 482173203 803460999 618042244 180615571 615245694 398490033 917727780 502924530 592809130 279811430 207503876 20966538 819880245 770707519 326056104 967673301 626876651 883904418 318053901 775638805 572553208 47866015 872317994 493875851 374005426 588045271 180517888 127031382 255775723 730054417 695633364 309092519 827283863 242521806 997377461 751032154 882490181 475422060 505264018 12895911 512576467 170943576 619038095 265328351 827755070 359436553 384623022 845962128 11160900 575602057 492573356 571186789 131969612 540838277 522605638 1004055081 600235166 774782750 346662337 802967303 14866574 1030746066 226398431 270770684 743343171 506711885 513537041 363128931 41538049 688792989 130999420 823453805 595370034 664066030 488111313 609376672 521304281 937642708 158490711 784114056 377728436 184367493 92939665 849130428 264591286 976034194 637318815 135144339 219557861 748003641 856421998 851004873 34063023 496821450 1040467520 175798926 1052140012 928121964 366874213 807068546 966916408 870221981 919853056 310246251 400840916 760266526 511359612 147572183 19817757 156464492 710184563 410412542 198550745 633358024 77595940 258661637 1040730171 964116842 461388770 79018449 751211519 988420143 74062620 1061450811 308219437 679677547 166090031 316900841 292098975 537707260 729167925 397977762 749674010 804251669 813733036 52798951 116296127 371923239 165095940 346229711 81468104 668961430 695930815 189730318 113078724 1002343612 875039216 573921418 706717530 742738854 682718043 452850428 360907432 85635509 112225993 89338473 797120774 154811045 87562505 911600974 1018975915 553937714 52534477 4028354 933809563 946023579 980442991 606413651 991763582 406912803 978943926 12505004 605682046 105571896 6568803 503458418 255379266 1009923632 875432395 383991744 279212611 794201432 107200003 587850702 925038008 929042739 979375310 248736195 313225018 155520659 722796308 915397474 467110675 477628344 516365870 963108067 155053539 1023108553 195451247 1052671962 301834693 1058045959 857431688 210268968 1012923644 128950061 211389543 139148899 714237397 944584309 777243335 747801631 111364477 699044378 628678173 423565500 240506409 829795734 197566996 391168729 119465350 423655926 518388141 678980643 744696891 789797198 418562290 927950480 143124976 779136765 561544048 968620760 826161028 104913024 546278695 5112912 278831425 271113573 43228608 391887700 588153083 88739485 82525060 388066219 53272937 396669882 797330197 301328924 639397741 227942717 992996364 549822810 9096794 929229475 686943010 1036978164 312077919 125245112 647424467 183455983 444000911 679770745 638915718 679877444 287339883 828107612 873741961 1012828329 896236825 601677469 555925074 248766693 844346578 1000244910 355268751 83553294 754276045 829842074 92149582 234295664 163176413 10862119 1049866831 217753284 48252611 807626770 435335382 656297105 253836199 57447798 771401617 221160671 589647736 402182638 802286760 476207985 426500267 84929912 852124738 945119876 696625969 59536312 598984607 832242903 802972538 515700158 143798971 243200006 731047123 32240265 946131803 192753668 427105184 559010459 620360013 311357029 284878489 130841963 785590028 480482879 560300947 1043049741 806825575 747488856 539764246 546547081 862066731 955311996 489029164 426236948 929835326 398516783 821580713 953206396 375838915 902592251 732461031 1025924739 349984311 791844886 81674157 916887899 200927563 526536110 153618300 41838196 593173667 523480786 913339058 753525042 103152605 418781475 252426278 814567174 660645383 102224851 67230727 1061709796 564039725 1004228218 1003318563 737181876 301480769 881067571 97516389 519817358 620959040 195223496 736993119 623202069 766175637 818410337 115469932 1068018349 673599854 120861338 818686499 436072447 265364806 111764341 650886722 455890310 292957531 523394260 985987281 9899703 776552299 96114456 1049230773 652504847 214787562 574881277 622801945 271840793 47135887 587898725 475471595 981831081 39077886 628172626 110908737 944873921 885347304 994447176 761163140 660050726 759919388 167725330 202631757 950068669 218733176 143268787 831701222 265768830 698191847 385620965 567943187 295941873 854423101 375198557 966379172 465508205 977609193 638042972 609429776 631224794 104620757 590467641 513283501 253607575 69299544 175352531 723981863 751580677 1045607557 208730202 456295064 697294985 943083636 284163350 351333806 1029000431 1068533307 917980367 511774661 84452490 168518202 935320314 30315675 879270105 103569890 548205542 937046524 955729694 774321642 686607465 526327908 443209373 733689564 105720204 549399861 149972410 771426599 659233141 659795821 761625406 125927447 947367630 310857438 865855592 696158681 1070991545 335232402 491000374 477324174 480394794 664257426 302198483 768846077 13105733 438852970 793916432 551171369 41721567 1069645880 439111917 413213353 989901608 633860428 598340543 1046843556 810742774 466119133 817784081 241956806 15277601 552307677 382128455 427539388 318155451 882428725 925027971 679881494 107205907 372151203 149601656 734877012 636551883 1010797938 138714060 197907444 800422819 761159664 562092341 426398944 410327581 326521390 609975209 972559242 478797530 132229227 544410103 126627864 158457996 11741196 820180220 744490335 83546029 964544777 824196643 129037657 807888934 252551369 305925579 1026982062 519726247 738705527 379435063 719846414 881603291 790901889 223325614 303149756 297936172 575937589 34783811 730751937 279542091 605870880 213253628 248709159 231973034 202528936 766561334 630241951 88152990 99867341 697622322 894345430 538079572 99714897 664876090 145914028 322142698 323456646 903026687 404429194 205994402 1022809096 799889389 27309999 662373263 800611488 975059573 752394271 933263895 154159907 130949851 550967464 27262859 919974540 52001963 431919770 573919591 107211200 747210849 289697212 592235326 268734549 855183623 151968607 154310823 23758762 107018069 650870836 832733667 920366857 1021077014 350921437 452276702 949487581 881422109 160325731 242529229 1025822979 284777967 359197473 448049167 343222323 70853605 959799961 270152269 677696796 608984263 853299587 152878561 269018064 981439877 69988720 729613751 246795722 174240004 529687282 238670620 341524337 886162263 602936099 583387951 1026543326 94737174 516520335 660206202 500562690 50587925 111011288 321966868 73283427 1035623485 539056998 325677990 724946992 995655548 645266426 403213791 1063860821 948211967 395640295 518379401 483979822 550988151 531042479 401949899 361481749 610791367 322246228 720020339 601203580 585290540 113137093 210572460 805844762 582428390 505877172 700202003 478000861 281822275 40892771 995134049 648472952 962481576 713138711 1060949839 47307217 895403056 792841942 980777114 254878104 205437425 314438269 525599416 158143602 645023896 992807843 821084070 95773550 753073866 772675860 273483731 935078715 885208002 558010640 872973748 300940515 733759485 778579519 934262208 309677398 919140062 88464933 849096775 44711291 40069645 693086002 52225784 44773716 267721503 907318110 778983002 199722403 862126949 441479518 726440779 139396731 580344402 197347019 1066033290 1008092918 349443018 440677417 197888669 169435492 799507326 816585136 327278751 963936252 887838498 692859901 234334344 927167468 108567322 823795485 64048181 358906581 110757202 828040800 947182694 541836625 398141612 874630521 463815344 1038138566 309610630 391961225 451022604 804241246 1020040916 102400745 808803249 302196844 502169627 877889102 337018807 1036733833 881821728 814321415 868612141 897689758 416792006 463818275 552211280 97990741 822823929 634767677 598071664 499821346 637937062 427485352 525936553 790769788 971919724 518666967 455515127 203086216 1021606530 880661007 642499169 796462196 427499085 150994735 597312313 969831006 862721809 14005478 406648908 413385700 471521411 949166066 555727394 190604820 628226567 927891082 693489454 411509827 534009259 881421682 1068093313 675196924 379833520 338169234 226573688 25437965 8143924 728793949 398659816 353674827 682620521 763852665 368235085 854928597 403505869 1008547462 246075914 488173318 796148904 69988823 658522743 313257218 492431527 425199234 106427043 5150421 605627475 509547044 218201378 217382333 990080578 400487891 449914090 968702499 1052870418 571962045 1050464103 955983758 771185119 257241274 526900189 423656595 1032725780 511219614 117884504 4775763 901622843 149217339 246009352 728619632 259162556 227735650 231904994 856582488 543776809 525384375 146149874 619458794 686446112 699088527 1069285855 1024592081 281822414 815749288 1014872283 544792108 960445826 720601637 240159406 179007532 310724016 429843240 6313830 814811029 515752098 82006247 466907005 1068821373 1020076608 1065788534 1054015186 711015269 1038149505 614494335 449059752 726775528 883462122 9346544 462608212 932119833 121017206 550717049 685525486 1072844850 180449289 615185337 709120818 202291798 451401534 579971577 991417925 196566886 294207061 494386533 158558689 1036901749 515378656 1025192743 524781340 892608198 1021673532 870270279 951064634 323488921 862114005 481856271 394352070 502004526 43392773 87415895 521384938 322740583 135397322 1058276949 752820693 321389815 178063178 239681953 309097626 925363226 592910602 71043253 1039839451 283127431 7079719 166504074 426932363 188990025 175316868 18748075 623354575 968769493 447556698 673478626 537115723 75459492 1031590680 653060920 149154172 465307683 607963124 1040501313 735097192 748232199 324095846 511078928 866266601 155751262 250312982 480772160 546922963 78964125 427593931 267385038 429717871 626866022 979520782 902496484 313020580 395736814 249499150 421132836 524137466 359290150 960104042 13947422 54528210 940894454 967044413 1011601441 822515997 540534687 240910418 64748333 927931817 1073265622 362229015 200105329 578519224 333408256 409824124 732731416 1023064903 569233706 246657190 88653419 133208876 1057038329 514439713 973229415 343757905 14721454 284347810 1031840727 135510736 970291804 787758758 1062251032 388908473 907876864 413670379 222683906 1029607530 701951892 1034385334 357442875 807206320 695036805 636057008 670625599 258546628 283391594 953096486 651866908 76959194 209971080 766089951 735633050 389649230 135476436 323517814 305167416 942788201 523852492 503045274 950496759 1014170342 603999736 84691604 461530171 743064843 935401577 579077778 1020413881 133342414 791457504 355810433 624581548 1072752455 286550853 400552413 502386292 681179280 1050036396 476727366 2508385 764265412 611822343 487871849 5745948 639869091 121728955 845222410 481875503 880183029 659829762 1066583495 710186005 122028907 16518565 585530432 381910712 1064368285 280107230 446780134 399763100 589594630 966956713 605588548 743228785 899318154 557674991 229639196 375712127 672228476 547913043 920081931 858926321 1003722204 789316767 694290875 249003378 560188230 699084166 647500948 594997436 254085936 835995985 648139110 47892302 135033670 155229854 499443927 38368667 1000679280 598839684 333857192 153316982 864843148 294937182 707256131 532625556 808849543 521456244 582335036 473340505 345749170 189509779 240799013 6312258 706761971 1039842074 502274241 30533064 1052070665 635067128 554463215 442824024 928773908 590121257 1064689710 519357477 120722142 635815046 195319867 744934271 830474629 995321629 51224784 392278265 540828535 1008070338 1035393395 158979176 994971022 164470462 712194334 950616264 1044760562 1050006972 683126866 703510707 235299534 576757077 846106875 194129070 887790178 1039540405 836055797 32132760 109736072 921114391 318556845 542474542 19904617 818267089 154000382 639837170 802505369 1066324078 950784911 862699327 779918902 251105947 905567068 980486968 851335010 449373025 514820066 762383213 207468784 336217695 1034487848 1045510338 504217383 22170915 900078977 917092741 653782379 948039455 963135503 773571199 187226594 585040900 466814852 469302923 496163973 773630237 351435725 530784247 438431347 96793166 88753309 855760989 410149498 1041397605 290644251 811403471 14158634 262281273 548398282 644764278 705864162 873906628 855624177 513815832 190565449 451434019 86836596 166646885 8780778 8000258 890009529 863137771 691990811 868470187 57881802 175301969 466682045 502509757 641392971 872673772 920023499 264816209 684852901 515939491 515018140 500671699 479349773 863938501 874951544 277234452 914944786 470209815 987201714 100780965 266013498 510457667 752291589 364263908 276790380 565879016 105534491 473539066 305465966 607973712 619027043 340825997 231017403 52118311 54723531 604074862 21942002 19795231 954909928 558218831 868834494 510618908 298309284 200949304 572483657 221299074 195461927 711401032 763899313 475922118 1010832556 456677973 809511657 241148376 344818611 891563594 76281124 583059091 842512659 939965687 292643842 347532465 731772720 307470881 777382456 819787411 826470774 659491514 229935715 163647440 689382359 443644328 428020001 81436167 254913228 349344235 786560561 568461206 252863085 262163653 21847098 582999477 993184602 70242987 421234502 762726282 909773238 197146535 37020843 182681664 893024570 905113732 795989241 529302966 623957228 932199023 535974269 426208647 164316321 379993041 423736114 1053980833 604757828 324759080 681376238 681088976 963713275 721738689 883819898 733941024 780218406 423126616 714710072 590764683 402217067 319829820 820807744 361372514 496946623 891183769 540095336 1053637613 297046504 94462620 274747499 661982548 762325090 242960174 304354765 680652908 949796859 246292506 209657706 404548389 641699300 232111039 978043837 588558925 289725273 399256433 50921899 917410495 778420675 1064914175 191900741 478673108 276627090 1055531451 52419810 13690009 685200714 613389742 269883394 1042819790 226104524 672732295 685429228 222594085 143124518 535547313 135989187 844371784 208498791 587617836 16420467 370873128 654869514 324826947 304991418 886928998 407652708 14630729 682101067 473114184 726496658 416263324 240816344 852792195 1026485117 472103546 410449044 514896806 878431855 446666256 976241313 162469262 465782563 671042295 820063724 352195785 284266258 20867575 340252278 168663060 754709502 277693982 341156874 805200475 1071013556 292578627 355933982 391643475 930253623 176935514 9429006 71821787 504385696 613089038 306362468 474850247 790403618 606762124 975864311 844771922 706172726 755907815 56139080 551016315 191781348 590557051 627326847 349798998 56442106 367806777 995601275 627889438 910504874 527991689 973956414 374470832 390450788 1047667480 538890183 438173643 40984039 199698217 338679039 652504203 31374242 507675874 477293622 71373565 777059185 755680554 922475515 455699980 50946242 547017194 355202131 913093394 559594768 608796968 1045650593 948340007 843178700 490069185 126734300 608232480 867804607 196640042 440771655 987871779 758145897 90080592 825330436 791579524 804810993 930759736 248463555 80583227 488343370 391231678 567686452 282114830 497193091 835654923 45310438 257456633 721183976 51512337 241382782 770426150 734791084 380315900 22030780 653731257 812175811 348449378 450796365 781253789 672066835 117729810 87248593 910072840 477433278 368059857 676689193 952974995 311124545 25446267 32782626 436985100 829687251 824154795 19778005 920715861 975009645 471487933 71270799 342707846 149584573 959340367 792179752 207990274 164289583 354512526 139026519 555831369 744140314 242336780 447967555 143645378 151876230 499283237 688721092 619788207 137127352 40460871 597788770 61912426 238859086 526874766 745368967 853937527 57051799 5605592 156000920 1047357678 62223878 343418842 63161169 457626369 248430084 623098464 936553189 584232702 951191798 722829484 131906091 891503139 657828041 680558526 675643150 998801502 810286662 409066600 986410319 1068935881 525490749 849665686 516610634 640584966 357440435 343762155 399622645 1036384606 1008327265 615170271 360873029 406562380 776042399 82846359 133343278 758974593 944801564 82964931 3947065 1047727437 820962143 452708891 151712233 594705441 477541610 607430572 519218461 998582741 540070942 456975561 856260452 766540908 19209006 158214865 444365999 53979439 771929720 458576481 886279894 348259474 485855466 999660313 154258753 121618388 23419554 349913031 566484624 381823181 124319275 733390564 1033626183 529222773 972114233 383606743 817620109 893155623 921900089 218861267 341527202 754054783 374778228 1068735089 552972429 157056746 322746006 25046250 134932466 727707060 567712576 27646618 610320773 596064120 915897292 518940182 316392067 370554686 372456110 408109691 445664621 167606982 926892455 4700535 352823793 446170540 827053649 847845066 292003636 610428954 476157711 344604243 1036478085 1062712049 299127953 489101913 101751223 696871960 361376634 242958151 505781019 483895047 311706964 1038928866 734015022 763591869 419434 385715304 1050237110 986761086 459967829 942044237 915002521 665300910 648554713 372140777 972031294 659260311 1028405245 611475414 826650795 505090804 42286187 592563305 845553054 794543238 415648787 137094906 838681427 668799584 904522272 1021020435 417604035 1047791879 859798876 134511282 539470870 722689669 288267101 62569721 33133560 976296480 1024782152 933245720 973845534 565857545 250596439 810687382 830159388 936177953 914030916 381995922 250643469 246871525 698289545 572931177 558725101 918254047 484174133 1022063081 784678759 715645350 357051795 1041533110 338782549 466048578 394956712 470073547 428316497 869795668 476713153 403694007 578892994 275349533 776350930 955086588 857378634 533081497 518896532 378737005 26881145 528818600 892995739 494447062 782551193 531105609 277024642 319783461 61564858 760355385 563078303 839741699 799272223 677831801 809854914 436493830 536956628 319441839 753471841 433428895 760938881 864844741 410944093 503349111 40930223 542465626 647626395 741851724 243896968 251710141 595424207 226062205 717414386 58278079 393443175 375600330 822402203 455671478 37376268 256431912 795112840 558848150 115439550 793208159 267355116 571202262 17146314 933726482 340081010 311735831 952593345 674965900 654232300 305331704 353152654 301358276 496554035 742286280 984608081 313497222 327118834 273688436 354652188 599207386 876920817 34562042 896178613 904404635 129655297 442537520 526116777 908941344 730761384 38696935 246050393 1002067416 674645283 552530950 795835027 682967430 779524258 262094613 730115269 651767225 161308526 206678788 428139544 670244133 1016245792 851326814 1028690216 715134421 659249807 911177303 678883119 252666489 479374240 417018063 356317573 295308931 303864989 730910457 115361888 346874802 850354618 493557948 431400846 314714384 601515707 231791823 156450495 721137429 542102719 346021882 451055909 343624333 809158706 223791101 650813711 152067228 998260953 627060940 940356827 983669487 789588725 1012085805 280619292 1042415431 438763361 16742509 30556963 143066598 243273615 209423098 643772565 472732511 1033319357 482076805 945051001 195143200 882094695 137633201 672674693 793351552 552877172 262731789 944371344 656656135 573690688 527558038 416754116 496998415 229209527 188881720 423941202 255073130 703087952 80670503 1051243014 391810877 235262796 928968756 429228378 375344947 370601589 1002523850 92257123 196035189 1022689010 928686981 821864818 706728752 87536902 4670991 220550416 1060357777 321109345 820497529 891492051 114488782 172333137 415034382 601008610 781731001 550276047 556537126 556479841 99440764 127265667 48403110 141550534 933829842 640475765 923305997 524780977 487431211 508603361 424928031 228061277 670580546 103436257 764482162 91798130 390164003 630001504 242491122 460314855 274349154 458121459 587259633 860071705 668933095 327835943 842207305 140995499 755139570 312319331 347908200 681455627 141946117 244447506 636991051 633190397 420749326 302189806 780971866 788103206 214236650 512892469 201227319 46977019 820372327 669767329 180401972 831891601 997077915 859757046 907568375 388887885 1004032560 528214556 100590949 1032591588 223002219 896950760 611766903 65363236 629397541 206590974 625585070 459896665 333309632 1040535977 1044360278 954566352 1011139345 331569447 234323924 272720060 332924996 556646808 207558236 1039343641 3012404 931086088 367910576 426711080 572771837 1065291535 407222969 730864659 516495249 551974333 163949073 542814057 962415260 127968929 744871180 638840248 722797607 314965502 428558847 532623624 832390381 685006592 232034399 206106304 556939816 274239782 948172595 764334104 300025310 704951197 255671682 920448608 909911306 295612103 628029622 1011128347 467934316 773656563 823688782 576535601 694879371 893481096 99643305 1006441471 1037504121 317363850 844661382 385685425 984774448 297964290 475351379 909772300 898750206 787990494 770457855 213384768 708225552 539661432 893786270 297198399 233460244 493422378 212760427 268948349 235236382 817470085 208366576 326427154 784769440 459717756 920248599 943608953 523360109 294407884 286751517 494231803 679066200 988485844 366741430 147071844 370403815 180794545 499898965 941622128 587003807 546132184 471056526 753636398 1001029247 859251891 183102477 265539272 64865415 624637576 732463755 582891199 450015497 808934500 528830996 859258711 526478583 60943462 261244801 454819927 80888166 402023007 92004386 1032131256 880528097 363699452 854209014 172923623 1008171382 569289375 263115682 699564543 897771089 244311738 875993615 348735107 138769845 122522309 67644125 345776721 152529973 749375550 645431638 474802355 672333657 237772071 156296159 582919964 884787666 332021117 493298261 311293078 738963947 434908618 436215269 819795195 287910099 371272104 427997487 971595914 994835605 145140042 446385810 293687911 733888098 847792870 850120248 785792140 960944944 233848819 105635935 191925341 489958831 918068102 468756457 306184398 591316639 935426819 799698101 264128595 768905708 280338065 1029264051 351288667 671914952 1008086541 699679036 550099520 567256253 435048669 623278898 242014260 287808579 990567033 282653916 403373992 266078671 358682319 951926967 839796164 133922534 667006912 452055580 390886176 61628311 791437863 231619384 330877855 150444844 367808192 482396285 766429906 418156985 262953450 990504066 371695574 420787733 397490581 505210097 88666758 74293806 98925855 858876578 229779797 452983594 285359314 481215885 230040107 873950524 575607247 797168626 87225630 417078357 178491586 148979583 933717683 542114818 56523967 737119646 257435608 34008500 522980301 76242298 131383234 1067863662 489447468 513295151 274128180 851882641 651550118 174810767 732506089 615396828 256478118 918655519 515424749 314014796 520520263 907863947 404516889 695000622 681981098 577522770 280434589 490785263 537639145 612210021 429524251 1021985862 577330519 726776043 974552229 778135948 589490600 607258680 34263376 856969665 626002597 330617489 299946830 16569859 969211868 1023942293 605351298 106523320 655972274 595105973 820064686 788120838 973231906 849227739 1053032935 687956009 668297870 578840412 633728917 340853534 555982805 1055100493 116557069 252812025 495744530 740361487 170117757 1057021306 1060242777 789008906 602684980 710096626 642214696 796043738 627372443 925884333 1061945121 192723628 362704003 262765674 806544869 842786637 724441011 154050692 551584819 228094528 314962936 1041391680 273771738 907644929 205061740 603708920 713733415 654205490 827193741 531384216 657462571 742849012 207104351 998343847 846923177 956893988 969947793 428541045 136630637 635222905 167714803 306373407 641325760 229088644 671933728 308733107 466357931 805503294 1031586528 618176606 457581703 486167913 278653966 657512737 135326874 935280414 931241050 392885725 351830903 354982350 818052899 963791330 542071631 981991723 1006953161 685630048 31258270 1019401763 721097440 770779764 971333862 567199685 412544942 391800102 195653266 958684324 712808560 952289337 1060088269 15853667 625049530 216662146 45280309 184447043 975224653 562203928 243096057 15679365 1070246686 121406611 896742168 610430300 895711390 163419017 540911155 724295290 340835231 129635887 857593269 111753530 611485406 271300732 83973617 772700599 911184921 950201877 974804593 112114563 856878308 443701753 582407600 286586598 488101830 580304251 661094338 402002179 97232175 533616163 1072466699 689987943 983929020 903202979 936615461 530322730 658401078 990643514 560480258 135661346 257900215 87436073 457027317 562800878 532177355 247611117 320452425 108782287 716194549 770609162 596939641 352159303 353081824 754963905 488723256 5397663 567721607 672460086 645149707 934757725 765371163 430139167 754774231 419197119 311755577 46765825 88890168 707189163 524272890 329027387 715649014 976369608 114959614 690630544 819314618 61735337 4112518 50887226 235308649 294372556 253883522 366624099 477302457 832745788 518230264 254514660 689193774 266920311 210141930 927364941 1007450941 607402653 862429082 28336556 618154679 590854886 34910503 200200510 1060605000 448237987 1017012051 439999355 1036584510 1046355940 807861785 1005957708 493792430 878395656 520421014 935112823 296657905 339989305 529140867 594896360 978548977 772417631 1031308241 945666781 518731517 722634640 387502562 784017636 24533201 42369937 860029452 992434314 1021991370 389259881 306658753 18275880 289682044 560787388 588697498 364843350 229761468 221919509 1047579397 728818385 742254222 755015590 508661821 769305686 306076220 548314688 73881400 1008785047 621703318 709359260 789183974 51637437 557883166 595868427 972019348 654427030 169711471 787291925 957877554 91287648 558868488 726108356 869082507 68487725 136942319 1028148463 281233513 775625753 146988285 114928083 47340906 422167667 659531504 821692368 250766392 98668814 6831617 951934982 26447103 950454992 129606215 356629646 701318922 243738359 302108634 642933849 150766361 911603896 928678227 370469854 211762868 424963954 733671468 756384595 212807582 1062250264 459697682 732785063 413271653 614919394 653410826 276023238 883488703 316703254 18414974 512652397 701338536 1036156080 896496545 125484971 600970715 780005895 162056688 977839317 313604131 180474642 967183490 7106400 670849547 540712949 833404886 140461797 1045496460 52704718 418782265 715833166 948846954 536785736 352208540 84764476 260989713 526336681 677745112 921140403 386477542 92168276 671706510 844740606 1018506407 280233225 423609393 962194130 35137426 813146919 8813411 353226957 8579652 1008540219 666017363 702239190 103061361 771188521 983774972 687376868 585103329 656335780 681755314 505314769 1040542546 380715996 598779843 296296080 986500658 745345342 859750714 121803287 625874379 926280274 885416104 586580636 998017774 134034269 48065438 24511633 1019037458 859702426 556117683 184288345 518479977 598329560 971948389 298728570 8160211 967799321 994081277 343379768 243587530 76963531 5508835 369279949 604124015 454186432 105878841 570979532 911666386 248618183 961274682 621068403 526303221 652068403 368768859 350509298 765835324 209850078 960257693 402940798 790467427 433857780 377330870 108260413 183632174 495819502 468292014 594155110 418703532 354829607 400376095 925159751 1047007516 869068031 497978059 593961873 635516394 94523804 36870923 753895514 147516838 169447700 581612518 1020717033 168063269 309404578 570734353 272557747 585021156 991404671 782247507 309543443 1031196655 789699107 894493030 112008726 677878068 1018333896 83244672 868804151 592650384 353057555 244150653 752730366 149922532 51227912 863046140 958367731 690593138 638839989 510349185 566487436 558949046 562449061 161813834 236887538 458457286 271658638 158007079 790187766 893869220 965760809 908939980 573174427 418092008 7149075 732255805 999891726 565965561 696995407 964448612 141096620 58864645 457107605 1029831525 697319682 676397118 875022150 286753133 755648542 424013945 150830076 1015830980 1061244060 57157308 977990933 1050855650 547450665 1056258137 746890623 91815267 256982105 593258170 955115112 726363237 284050193 561947369 357265022 309446931 333123405 42843225 657104421 547836239 77440019 484125706 747657765 176849808 810275512 273381907 345783950 944827071 646417411 253201669 1041109687 94206137 939567822 188584486 431698356 1033860628 52321119 454241546 389717815 727471674 718900934 460717597 460305272 140750328 714729150 16955246 925835305 267935739 318045867 929187070 512497341 491920916 1026850120 508057288 399305893 709502045 145787446 659398843 244033581 21419249 699602219 612661278 836578157 297183296 460476429 97408092 45617484 719696259 917914449 315355734 194739212 53241072 858574910 43147953 367786328 530426308 719827528 209150554 84316170 1033230688 278202540 872982787 555395666 474466381 65139595 639423027 996515429 391833178 240710215 58133802 394340901 867362594 224188625 755840528 919182899 105083342 140095492 489884215 642550516 405805121 422606252 341116482 761169249 975530824 360470698 102704144 648000303 895552031 437940765 861104939 626988313 795926285 195664921 815054574 768889897 646114411 948514224 924250605 886022829 567950821 262012098 748006823 867216969 37779099 895431079 50705185 858834174 390176310 578095553 97425810 432842995 300783394 992703558 925241012 690304674 137081044 378067673 484026310 1020435196 918554055 594727387 743176875 808428805 403633910 553346016 77487416 488509380 496327157 740902128 564490937 243313052 721283718 345713568 557658736 585642862 78908832 313816650 270701591 430778338 732504571 606804074 726503573 832551760 884561580 886307340 679669447 789268905 276307987 257708455 486571006 623057327 397581697 975230570 905625397 756985870 668318172 98357608 272391395 640700399 166575604 25252905 623275452 577047485 1022659385 850946008 624461350 1020620827 772545133 508633757 973282268 957903329 83336351 893049029 458396096 705646772 594056683 252952729 157158919 504077466 903320073 292191356 261233264 393803150 977405576 220961906 928673272 798111877 529052305 638740911 7098302 715169152 94101786 438330777 804854730 726073772 50322656 1048488005 403337932 559842421 231252719 499633836 464330142 103864810 164868894 272918590 628677065 1027997383 35055798 657060763 79857673 904138573 615005479 239746516 1011615907 478791484 836034117 506058211 175458866 980379182 190080733 105906401 1027388816 208495576 462626421 875221431 855817709 872522975 203866935 1047727651 221288774 718693807 873424819 602621308 796657432 916940123 664820606 641400670 38346278 995535799 615388388 716687127 848002727 660076697 665601804 865968711 703090953 77723375 133006878 497352881 1161022 647972493 1023424862 82750043 164890953 964664596 102936685 245353489 955737667 812175175 738765409 282568493 33774970 61420706 462837365 18886206 293879350 524870910 426200754 866012923 342796076 368711515 966474914 883976712 873638703 143043296 571609922 855657560 962303351 1001817394 529424502 474571241 953420012 403874320 794579639 510705523 817450923 475957663 914687130 719955471 525705484 736305761 609556357 859307341 590560044 502379540 763880597 926719215 584485704 24632163 941661732 240938356 781591921 152505550 291631390 34611034 690371440 977457328 964091989 822484711 832219776 219907879 25380560 769033073 1040909752 812185277 143115135 302470756 338209534 717703654 351089395 568242886 729627385 356542465 648119077 342610169 832179814 605166632 336911220 859671295 861885832 206430776 119803621 441366596 119802286 876175115 350921406 98174951 316385683 315994298 210023477 404873289 927448873 313916489 51589247 691282453 858137927 823142663 542148290 760263520 60526838 793731884 526952297 226521955 245052499 47455703 315887628 621971314 381583729 945682501 315967012 1017621252 161419836 187590604 32165883 932704200 778272559 918091304 1030462927 470098496 877346684 768442405 748390459 517437400 714227537 894718583 930852534 646253297 78845551 440993757 209242112 877219605 125241725 863434112 1012355704 666344892 756572761 43998619 1019490557 647421842 993710273 645636517 324528005 803664366 523128009 64094172 914300475 755766193 886240568 336716571 672051742 785634579 366407348 1046650299 153313368 1041879375 24438454 67604062 861388232 850869073 139346007 856334237 776029052 205114660 607722218 576315500 251324698 6292165 914182880 19370121 150914041 665551699 400380440 295369060 807805369 783825559 405505462 387691204 889173491 785332403 863779960 151939100 493126315 384341125 760584748 161578181 128563328 1069420138 244885267 445955754 203131872 466484407 613801504 187904349 594196172 214143636 829170707 541489577 137345531 560539559 446438577 1040855013 581999509 372464166 58154450 81873483 129039105 80146643 497861822 91697982 751349619 535370349 566433886 234299430 199763080 361903086 1069677802 362844589 802745539 883615942 30124349 222220967 439287138 224443906 880004595 708306157 749412271 743808047 1015150874 472910504 981218668 809955843 353149575 308951217 61716319 937782239 398647244 536269178 208386420 470856096 926114046 180609567 1029026624 977856095 655750050 900050237 1014436677 662864979 261637768 441137634 1035103274 417994564 997320600 360870319 543617271 31153440 953798697 312759867 741457330 243281066 60079896 756659842 908798094 927459111 396366016 650003860 534632423 373073804 821638504 489345249 838244370 1022690509 85418796 787652574 701683878 261945521 921020003 184009771 262204757 102145145 837602453 868434370 796359012 513953184 204362607 294366378 605743446 384186646 459555472 471740534 162426589 176288320 923843210 640224834 12663211 257483154 1049470233 1051989727 898743545 747588878 946846487 588398502 111167790 863936484 813848029 1061727130 299942614 695512246 733720631 230370702 133623418 146966373 738584350 1038585474 470169108 45406149 115002462 887238812 711120961 508038548 477740128 1009180159 965033141 638400558 429300564 737884827 933375894 675470633 537884061 870876551 953208975 550911784 448696697 674272548 556709669 173843906 763100216 81855873 344903864 126801137 890467431 155722814 30842163 657929848 110959404 556541872 323261747 866728321 1010416175 619594386 848675446 698594283 439532863 556030258 287456686 419601200 809875917 999242824 344276182 336070464 304662666 350852171 578994263 108498148 936505473 531908122 712996125 605551139 620258001 325826399 390184010 105677564 382506862 741582123 203801697 725409869 843680381 463731324 984434747 1006211695 48778525 734965172 667019418 108940630 713920118 103935532 703431042 797517552 604739472 866998716 770862746 124327161 884637400 617584257 542189971 789466510 320205766 1012563010 663321415 107841219 448561198 461025662 661504233 175135201 236632843 779573923 10013540 311298697 78706618 575422806 702884921 823221145 582653430 639949475 295721742 1050531037 69250218 669490249 328334538 372095849 697750631 402319477 785590910 236696798 441277006 22557353 834803847 479127903 667670452 556757329 84224897 920667142 974413619 116272246 880528778 698558143 847375081 987681384 717934526 160630754 478746229 364696059 696522867 423941010 449585542 638317842 521335689 879924184 1019814440 394285350 724626111 846599343 348025788 903297236 842714934 947563759 77018056 18162804 423786138 792694514 750294307 289990965 646047449 713771379 955887820 785545888 261970712 131590114 727560116 139289537 626195552 440305916 807274990 561233887 930725519 489296197 500258116 143167505 236425379 599892068 316138785 245125848 1052167525 277923355 571439107 996650907 76421215 382231729 1009681320 214261866 463118479 1007233808 801434204 427067174 173504551 722169978 690484999 409289278 519230401 369821332 956967763 675221207 902090714 439192585 660727858 378251297 87127985 982935878 1064223283 68797387 902713914 316169117 52725735 30456284 43801066 528542424 35924243 27541822 642680063 246585281 859933999 64200059 689678440 511404297 714815381 1061180537 467745940 465451142 809519604 833148600 1027622486 406230468 981181685 1011753032 189899033 672672407 397795069 857363761 135210973 441631341 451495556 593437189 146804140 439200687 1065077977 253827040 892676062 37188985 141078711 160250463 546763268 1050572268 835485610 6716105 597877490 650606069 309127678 636605899 652967739 795302522 306139719 464472622 957600580 363979258 551144731 840420162 416427774 338098480 1070042657 388617393 403767614 398800445 1028559867 126584718 437943585 157607810 135216313 619575359 685849534 460167283 943301278 796849922 398375399 906803859 956517779 753768168 481592188 359906278 657425143 62249072 778586325 794289365 668121385 342540270 302208830 484973496 318024283 441089808 600137714 788038277 564910208 1038069520 405397077 375737427 458378221 194871373 965555505 346090206 487391309 41960881 296508040 336821993 49063306 727458251 176080720 945152245 956152062 808163295 849785736 653752016 988197784 797585623 734679395 1004034362 1037916582 271785940 1006519319 566161698 799254445 223069154 768881347 340257761 847715875 989644060 751784597 60732382 828715226 688911641 37167113 670127327 753214085 213538607 1060278266 914473275 945116135 148901654 203689801 591218568 380768581 729696948 352949366 519941056 18915352 846928785 56458996 457240824 176759970 748754264 665405251 964215304 293605803 872477243 162971056 481302827 1046806858 695518265 31651118 831788242 156327942 743542430 692281953 788350790 592420588 591247268 164527030 687364140 192474751 17757905 184124003 1032510079 893199036 920307304 821046942 100266480 519485948 271492827 786547639 156396038 628927849 650308644 623036393 798523342 301205906 927115673 494765314 79808514 459605475 339213839 691355327 866284899 376681353 832373854 656300224 233677460 78634143 709498146 575480380 19745278 463782550 71178549 1000142482 965075251 61092092 884327147 309612270 230672528 443449490 739343216 874455849 725549543 488688866 643604814 134359458 95143294 233855254 103072253 992381148 281177995 422373696 336035572 688734922 592163943 535312402 636151789 280425128 547427261 1071924149 643823950 967860993 137594731 691097351 883666239 922476292 796122387 783749729 134444256 202929181 925382349 803682775 999747407 120419012 792170621 366375001 912074806 810375689 244594515 11204902 1025684408 254737208 967368702 944406743 452469125 860716907 918456218 822202346 565163359 104564814 139006687 976266392 138672172 977684126 648658331 332539059 613234910 582177627 584770265 683101698 136853617 983845350 133639747 94477829 911314226 545880232 236869360 1030142067 270743725 437334562 52409231 495344795 45012139 1069954393 411780770 510662683 527018913 225184028 166001422 764325001 872421618 146315900 922148811 852044829 176995954 892994663 627074769 434445570 698969381 1020617488 1071171800 109999146 275614708 846663517 208297939 333352531 814109987 121428807 468933216 989951639 174363629 424353968 905755558 418152257 554166117 299585610 9231276 112182280 610521591 1016878779 228641591 742404044 898923292 324262045 259125887 636666519 390151394 1044458445 315782623 724764720 75443591 793176409 737597553 212546324 810713683 563247616 219205408 71112044 366026209 310955552 381943492 295786589 961191649 355459688 820850647 740564739 735349140 571932563 318349163 404318129 238251200 356723921 120327189 364012780 270211991 373461385 895186446 416107118 501527687 241140944 830998973 857759905 953884188 825934460 418881338 40301389 267824926 439790343 350747746 38917274 24904526 674293898 34108895 473675128 598878880 834509488 129412963 266807097 476437010 554520844 173940696 405957672 69753583 42242023 1049788620 704157933 465641395 155711052 477756266 641916459 414150193 9348177 30662070 253110151 71843243 651692634 542403249 216356642 709293376 775720132 75950770 466023977 223563214 500017914 98906654 1070899119 810945043 359957871 911958279 863178238 1047521013 80581913 888514253 609402340 981460510 691557960 37739059 370903143 906355058 488763694 403453658 370363801 351289614 24453271 962517199 126294289 413951845 535648676 582910205 83333002 595766655 721477972 997671452 49294810 646318508 1051702565 137875115 406553121 374616001 400500763 997341900 787636791 65492998 499358714 390667029 742925802 1036115242 855030760 802437653 392278921 487093790 918538898 722707149 509726817 470277417 353529976 492585640 1060009732 1025231066 238935106 118159086 126391592 656769970 514922918 988313828 758813242 699420254 468999225 955996379 258564575 904623030 998821850 1018841774 75074280 1009479161 211070690 78472005 1009266482 571785597 1021098781 7393345 1073698143 714062776 566426342 410919698 578836580 154620224 911378318 254099395 229371701 813317541 715962041 699977564 765706751 224491511 532967302 244981802 91402740 995448413 994991449 713425638 653917944 106993612 653341440 185726615 138492988 714008756 3635620 929892264 235956543 996404707 659271972 146266921 990449171 815434513 1045911068 982767372 308819914 237402962 797123448 644824610 708710849 441907741 873992952 926094782 497936580 1040750037 326386207 778120845 64318607 817674620 293330520 966733664 783835430 432483278 973542764 323972807 107457624 54439160 692973830 957320727 806211658 48565134 330053466 464106874 777753782 890395048 43641654 378602627 844743211 11193467 321599042 992809270 592249054 168118106 741149905 609430337 857848392 495214832 873535595 154866120 949520235 159493136 58585019 887256244 575941475 225764774 456326561 928076714 960672049 820769207 926067464 854086294 926526901 602658217 638263177 765650585 704004818 186974900 123505875 356003719 74001201 478633991 787135435 174471543 493481231 190181896 884841369 201378463 135137704 27837360 230729570 338765490 371970386 407036729 82716970 49730603 964393648 95088074 947641644 434113646 151526893 728205192 37299075 378021699 551140064 337829155 131107506 468934494 501071661 1020806235 94650431 502629675 872085246 672516966 891944325 685738852 752157201 1070596275 285370769 269795970 579231707 197487923 69042178 576443691 467154531 615024375 72874529 811125019 973674220 153298293 10927744 565147582 619087766 410702730 221871753 350786455 303469854 565300833 815933585 84764490 413594718 534470118 798482783 209797185 585307410 534849887 314725039 22957839 307988825 954608757 636321433 315132072 853270817 239084898 606846276 272224468 273964417 1067805859 246506893 378402116 827884639 293466072 424579149 493752674 207900449 516123262 773968093 164400228 252639844 580751986 89411026 172952489 185758597 456671209 390734321 693729313 186549433 945041336 408398885 535853555 972941012 412516398 133921901 881744966 204569181 812635771 1045432108 355475616 393095892 364636135 713270577 123630780 237616698 438027681 108466700 932951483 981291373 855611795 541497897 305984192 938079616 46747215 719335867 721576006 314404457 492614888 777015563 381507633 661161433 900277345 819734363 551263889 583821151 768811005 163001530 340923182 380681572 983370202 151548309 506812580 407187963 508194396 390869478 75646077 925159147 672181951 279551881 245243723 931596603 531170529 305687295 1015233036 531297639 169143516 632459963 1055164032 592758358 684699167 228352645 778138721 1043623476 641800767 507905165 1045478310 282617287 319406275 23616667 128785364 984853191 543209989 238647666 204525536 644346483 102948376 900740074 1044843879 937679611 54422192 50299317 252369811 617602153 406124162 841084189 297073048 1071503765 540425970 264637178 178625256 624736253 192262991 930697082 445743764 627815372 122783600 434864420 399348683 999846730 529382885 661837922 363550334 886357708 321088665 133406704 952343961 512272614 74638395 698883218 726960071 644590127 681019619 1009329901 626922641 735779668 529047283 782334008 96272613 372574927 256521303 809476468 748673374 268571659 754665264 617073913 138352027 357339046 1006817366 921048900 436178081 808293899 779595138 328016582 413539971 1024687994 1052188482 222185751 9967047 431624136 548221096 249865120 439403740 312254260 865958593 398012626 458246005 335407682 152498189 326080566 568768510 239925249 840687298 655353071 314163790 576227557 809463308 315074517 351490707 501857097 143795137 483615304 178014114 706692012 83657448 79330272 768492224 40997411 927237636 803580694 926080834 965729178 1018901513 943418955 1068042841 307023920 839555648 234773921 579332122 246303934 856039495 298892996 400548332 74184670 406423044 643217065 194345995 487504827 433892699 949738661 703542488 729839362 838058971 171686902 68903722 944007934 588286896 992947289 362485403 942212329 533415884 956170863 18119493 298910798 376541280 944374222 682984339 881123639 518192060 161386890 441399947 963390034 894100423 420694904 915625353 484725992 183902495 634874607 108391628 151540196 831453825 43744839 85172656 553446970 524398752 240895751 846513244 757547236 905195545 232136824 175233494 167773414 986230610 680227468 434195390 28427461 862737498 785723152 615123040 49288543 228794191 672366489 973332717 638624372 888741055 913287203 228860991 69503122 83854055 87848518 1030697827 854561669 606806063 941176988 867340097 64089793 783374914 908975417 476798166 489598352 511347180 935214559 900972545 878552729 676979293 72407331 883445230 10622811 903886745 749724819 790984420 889125976 599128470 549138342 674684737 803288863 660891950 892405380 1021602190 422810372 286605140 1065728189 808332503 798939622 785415474 498527950 360242677 664052192 594498280 78874977 315854954 986811611 860032005 780773178 821194004 991686241 419663361 1038615690 904171970 400163073 62813791 798223524 477360378 870389175 242102238 223499309 785401233 994698904 995781877 289561074 713505569 168296830 952415057 115955362 240530656 937098977 12977179 730661390 1004994850 148163811 89153535 510744523 181418562 32823166 124287331 923939689 616611998 686012910 598145670 538611350 750766269 566738113 339551821 875528442 10680243 942496033 137277336 1060931950 767337163 889596649 639414950 453400103 68026798 141739479 975966620 106084743 82468916 579003178 318816349 111973153 352994164 827572825 867203199 166662805 763038010 321372506 901570487 67516277 595929563 901125954 988017388 755267973 207678902 956808359 719135484 587354925 415570347 404295836 63056572 610870822 371260177 914511905 361512992 132847714 830333129 873404326 966891293 749254655 358871385 568039796 285229657 874325140 1048184474 920448926 1021107399 618902989 752667025 33348245 725049014 1063984332 830327816 82769393 949815137 656818314 684221111 382575048 422608687 886522351 573969802 791784125 989898361 1004041946 498418091 336005711 249994371 264433311 1068492249 63556203 752663714 607144200 534749321 775792060 802747850 885322943 976734759 1025540114 66434290 471330356 251057142 271623858 51164712 721961689 510756925 352780715 244485185 529539911 22554613 480434651 26674476 422847675 755380793 309197729 685915051 109767003 174608323 1059870768 136760301 316451700 543947114 325915497 881974321 604488650 729615194 94143633 583087517 157661771 229164813 595514693 636906994 170066981 150867310 958989665 403715105 976052849 873220321 523306325 927393687 65586016 325528533 540815108 458450316 851486626 668944582 647022154 425504958 604855797 315323060 573595871 807476248 61047774 774085871 167608007 217376934 661390373 768223956 122389747 274195069 78636224 58402980 578424150 781282184 991475057 713581111 275297261 253948800 730825733 173937672 74857174 596185096 508534566 200088471 802804427 512185148 259885800 914802590 859109638 260244078 993534813 968541453 765922975 593153985 84185159 762878379 191536565 598921939 423520315 172525580 157512273 874044664 1019351050 982951181 593156957 7977529 320857155 274017248 1014360232 493924369 130927737 719914664 1049671064 654252304 722684260 1010794655 476685655 381861008 280125363 842553100 405424649 753999222 851672481 636106863 773750174 784396224 922787080 943729103 19438996 71830201 46933980 289932960 804682555 68421205 577611255 644242425 713196968 535797757 378700388 516492755 389035245 617084642 593691772 192256437 547660727 189524220 16814173 17075432 691073959 112873463 35088990 985941793 671846801 579087959 618307382 53028656 393642959 1448270 545588134 275540812 942840540 323887269 810069281 968122878 547196814 290243818 695419556 187206437 9738342 180156531 133552179 717010391 1009654850 343601731 676689157 133119927 299366091 180707561 1052551843 1030179919 725295856 1001197410 909941489 88850963 215713804 314787392 185291190 27424295 433937231 1046414170 506902841 351344196 472436016 683924143 55777311 481705074 18632645 79770567 645944450 292578888 777484559 243920398 319146137 440744438 370511568 239243199 917420084 447683744 48123110 194412224 272778986 149788161 224502415 433134934 312541254 114855040 85795762 408820677 1062465204 24846106 318451042 137332926 291292721 619060205 1014752532 1070011776 856887874 633528924 321486939 559895499 1058223373 125601862 739190942 450514930 135349712 499299299 289442955 285071184 240483225 325078091 535284012 158375830 436155789 865086573 655956140 682476711 177702137 502587343 392702740 631787608 926270420 577742357 276433147 925718139 964572009 786176568 290481212 164841740 383542337 163506506 25032365 481727116 306016484 613521441 883895323 1039683519 172830400 306138488 182726115 357441012 961111527 765873974 1054040511 566361089 1053051071 137996182 149144634 207677555 870760235 303145073 646698255 523510369 565633543 979062914 1050404429 187508797 290729996 694949695 644517876 639196572 757537850 28056358 193399458 515478547 302498846 147498210 962136689 551823207 654042350 246151919 870473667 1045626059 795033815 1021001346 513787522 563952934 517697579 485300987 873185553 735661891 89904642 403017575 61205364 973069271 33124927 678021671 380522550 1064846770 182390828 127432414 1018352945 981151452 557029677 1044471373 8184275 152241198 168215174 64131365 327383071 333718274 48938177 227454299 624445155 1022633731 119514311 923664533 521036348 165001792 1027195218 762709606 126205017 1059144174 890532221 882100785 91376359 1017740233 227014606 656146644 748882221 27514473 451361225 637847719 313642665 1021127891 93746218 245928839 765534624 163040780 857930546 663548044 680343376 297910752 74696334 745294207 856326112 736882014 640837692 714028857 352158446 663220419 892344358 989247866 154100806 894752218 1043393442 968986768 71695256 388743823 194977925 1058568864 16273185 487079717 263698940 1065384639 574720321 636976287 83065198 296407412 709259780 1051441801 1061772170 384193907 610867922 109834549 760951956 431458710 1045765960 174654012 944566356 1024688957 1020277340 28859058 323087289 921089867 451497766 1017544262 718282419 893324176 817703717 1062296118 964035192 310973405 145790038 72372025 457429875 982847116 680549540 32397749 411456955 418234206 61077739 160464659 701758164 882167022 220155570 1260258 160036954 744019114 979412076 802254354 695611150 926249728 196681472 482113567 450513671 158471068 459381164 833281266 822301952 946085292 845327712 1028348134 14070035 335628643 587657187 599836212 514287432 183808338 695975979 663516386 570797462 594327431 1054114950 446643825 276037846 287846152 890345915 960610599 721113619 644344812 508916515 80122409 784125125 201552948 302218561 210076393 470931355 156791134 472141569 381627152 68247145 695456830 871264672 581919422 316741566 1064327021 739015802 459857115 493545792 580825031 303828000 1052709826 581620997 722058579 410224756 624759109 485036505 952247411 332281775 676958939 951709373 402331311 25765256 32818824 189445438 539757191 846966931 137375015 295287317 166249745 380914623 585724677 343770802 1033294869 739213585 568973756 290158072 740898946 1019543447 422297870 859203693 210939550 474790277 760044464 317723093 149628461 1060182524 678790060 1036223420 745725112 498478800 902942053 860532994 256369139 578300899 581383770 563582082 414829515 925322580 364156604 176423069 971804407 338047085 1006064388 702172683 334743526 510635787 837824115 520975004 334185606 198028631 741713226 852710956 765729327 119204349 302066737 639966072 1043663832 597480550 955248816 369695904 1026740021 746332124 735294641 648660393 308747504 933148668 104236213 362878228 571608046 457314679 98481198 900740029 315646972 742746952 74379536 266165653 934177111 176343037 409919812 976738714 24121356 764641515 88437700 536700195 820363355 798804878 1042247143 959499903 927041414 641590302 830436068 942236344 475717105 205044763 975314062 105362560 679059599 476466474 1030864736 301972800 186004949 1070887355 492531180 199456832 169064582 222369582 975356763 47102694 850647493 719835836 990354567 12026860 901182915 327928504 214489225 397422739 241247458 561139946 116838253 115276936 370606105 429845014 856607948 309499473 111736295 406477891 991269097 182361436 982318238 535022480 174646749 1010107533 503790688 511351186 1069799557 641481755 94360100 1024479444 285174259 619882201 587097564 501737313 1000103802 629653641 607454506 156511168 488663296 772348765 245958037 435347187 989625455 67776456 268035687 769886786 826025724 415844537 878082505 93248991 396678981 699448171 143899212 613989184 553552068 914964150 783244260 930663906 245425324 660389544 482064505 1057598740 351628775 852307472 455932226 907846664 1068295135 803747525 110695113 345279219 1063510993 853504533 437036685 771609834 754418689 559589135 1030690027 713862476 905481362 55399255 965119191 458602279 919358321 37217470 921963609 413448244 585556429 640549999 4733370 118890832 795877435 515334522 635368022 313465093 318010535 1061161895 546134271 832608737 311115302 1017946211 777653556 665056443 415976263 921396326 892974482 540036168 305292220 757412751 277589883 918158541 363548990 995552889 696493245 862820150 95112496 418497 461677174 568773405 786342567 262835345 10898518 613443006 565567721 338677208 328614540 870754639 510802034 651368763 144579314 445750298 103712278 767529653 1052200567 128866539 815634792 164606930 155899320 545059086 120931501 381676541 887375035 707394475 362612707 601981198 802522854 954754028 41840827 909736578 114567174 1023650137 343728779 642374221 790327668 639629505 476468009 503404348 926191969 963512834 88327914 229035959 596897844 841456755 827483787 312056524 794037975 22740130 426112100 927788905 732069811 242734029 610557167 348122383 744539542 573385780 459699973 844572680 1020931948 672761748 352507746 1012088818 283498483 562618610 339510719 771687599 28830766 787576045 358022274 440596083 630579748 611542795 116684914 960331392 393179635 653061820 431444634 528919249 912582226 378516336 808459729 36563375 596638979 1002132327 180339847 850399511 69707581 35233858 321971506 854671992 19574390 125846019 671395659 276840112 708700228 442157446 766206993 747617822 159342131 245701818 100111157 57868353 416997305 351808447 191846114 735312286 647487476 876005498 480096316 901947082 855587122 979343798 495950125 17842909 518173594 825449927 1043233003 663232503 852110573 223526917 839344345 463975820 831628351 393467658 86997782 305206049 227201745 93219351 359176176 957322598 134693902 867321777 644418681 346045725 336338183 541591787 1007192272 221521904 103415270 758556273 558525503 902988636 481686840 288264819 838234787 500657019 1058151499 1029425321 1025512030 67067124 407351625 61793071 819170226 74155226 308933813 470284409 107048575 699391906 428832911 60362448 283027083 286065374 901027135 1025358864 640685891 671346349 404793693 980424266 1038198064 521156929 597573305 699197379 241427282 881849971 711993998 121938150 410697433 884643404 490077662 74793820 60369809 937397351 955955866 1002623867 100756256 1058052974 179701860 878078029 146060940 193812253 523114668 272414708 255221440 407705685 935226309 474593081 356819502 786425065 408416993 145807911 352830649 359976006 297742320 901384361 1071782997 950399799 442201282 655203752 970510313 416638991 679567009 511604088 892003674 170449396 973596844 612467114 623726375 1033080060 927385132 302992737 202864555 360706446 523235720 1055721637 373106786 520888024 821794902 795814650 493413811 1064452463 388038630 324337718 1072569129 165499046 573719605 680851542 569503228 605959564 450132141 688101090 352303927 844276647 124271989 1060501146 586209555 562981430 333063467 558603875 153607207 671901003 966401226 1022106332 337065428 671993833 1051470351 932011671 593001538 1050589909 318277349 1025643868 215593278 158495624 887098952 477106206 579027075 797292682 364825599 15916076 643719106 130792530 438314979 17829993 213212413 20865218 975509655 689046744 9237004 1047851109 358502451 1035828654 725654503 77161914 916921858 945177915 239740430 816247458 484731492 518022587 897964429 509297873 449346186 465904816 386705962 27688167 560919394 898011957 622049513 61002188 610699704 489635565 349993497 38692150 741656150 404411282 210307169 515017081 116896762 162245081 185219920 541998250 647952320 310924335 405316992 240651471 521123458 245607877 500631235 201720960 484743639 166151029 45903324 933832021 801402753 579557406 651041619 827138207 701147392 333383686 308868215 527754471 448320405 355556662 799509439 878064522 994246303 56630288 26615908 333995345 247200794 683070121 315675127 226122446 884477503 568267099 299871970 1008856045 188974957 238766380 1068363037 84631384 63318422 822703407 295891941 349658657 666611634 261165804 899022057 737898765 307311426 36668435 511679197 405106398 628726968 231063128 807613153 187683581 604836676 358327943 889687950 943049346 692096394 821517637 1062156704 174238387 567929261 640566450 511190899 489763447 137786470 546961370 433750821 108686571 289480404 855915284 671603639 504580010 401193917 281703416 35990451 942374050 624890462 641634677 18762393 830378777 743347547 581842389 180452718 334851947 450598553 619732956 401261342 976332008 218248961 567515156 1042506465 995930323 985657287 471835533 232423488 880590161 865101076 82013977 379661287 126477757 343073861 226938226 319843178 371375984 992177992 563916107 311342963 250826687 738085022 513922349 100582917 875621976 921603630 388535592 1045197058 602561108 275135090 652433676 131558392 868826198 526349490 946098734 342431836 625352374 1022916187 67705230 997938620 93094115 620604607 124610706 53187551 1053527555 258861481 734496126 1007866009 730536032 61325544 365692404 146125644 10898235 486604913 139864235 377014188 1026831965 1035688348 280501950 126486576 1073635392 1020697417 251090883 724587531 869785928 193634705 839469844 535142048 1038839603 1030679810 168432682 656386513 297790878 278551195 277777360 676574933 842009144 751048785 539774176 434693598 114765682 166685563 191277583 533423003 817747535 628315282 503394759 1045770602 188956865 721520392 713147056 627825083 973679704 709836762 539390976 624351856 324290388 880259351 1023123169 444377132 230836335 876584636 442383187 1020890614 793514753 807022311 464570312 919700970 983394907 677722154 412516356 991840497 613444036 454051228 713829639 938902055 932510755 1060898774 510167860 1053496440 513136122 323904705 254213698 157503193 635486917 203869867 125184354 367499390 370438188 876614786 415447945 286679080 501124305 407173928 205166442 952417290 856973617 832591755 937806317 205522895 1058697684 807732924 403286656 873977227 208523658 653094784 613206328 8476840 794088249 754147407 569587415 1064128002 955811858 1048876924 661841445 888406710 1042473445 181048011 95854342 698032227 238155238 720599402 152708535 1072945816 135919481 214800364 891581047 290063603 240432432 839907162 881404415 900943108 183705732 116483255 492154021 345086237 285901664 919756371 938523391 680710364 143959425 375430151 703946085 544190040 146799010 773109382 54451134 168350764 915308983 182440578 852668085 420625618 129959244 819852028 127777481 386161191 318292934 353248446 352257361 714732998 829140877 986204975 807680150 689697513 832570400 299215874 678853796 980893028 201664409 1040909125 308044457 119327914 690176689 128374514 926390749 337972471 645064689 95522560 710537285 118672048 49777118 813905038 396615660 143454280 945951258 759535758 796708139 389407458 580923599 829437589 564925575 101024240 921943534 731453793 750388390 875598557 869260286 28459725 956255461 310933629 920576089 52495201 944167695 269868500 481476399 726526589 39997000 219898828 386084890 177140717 282129020 245487738 728837298 168136511 856261817 531588090 36636585 767933046 183125695 270886561 231589890 821229861 272004278 1004824657 191391397 411385250 508149503 739191524 689985595 996345067 480813633 64716346 628133827 102529584 360703241 210964724 924983742 486158324 356148899 1069718012 59896970 912199858 49471197 29312334 423306089 1073191015 799559232 195068925 763546671 538130354 659786730 906151996 970552711 995804745 668268315 936211439 656233370 408136303 626875994 709800394 822410569 184710984 82515719 192285833 359136473 562189693 850293609 342267393 49859302 931490885 865466929 695540541 1042446106 241971503 495748187 435824725 475419834 600712043 242793090 791393502 521698043 1023790579 1073448903 875200917 72902601 542985960 1008160218 468507395 854678821 352975423 838570867 110485130 405599612 219296994 913822196 499483809 913466798 1051629149 870847550 515136597 655356054 64459417 413062291 232197923 620328472 18288066 1046907727 302030425 953597900 279204120 232681953 619526934 678604745 846124746 887668734 576772409 701701828 930047566 722816019 701750508 547821590 193384219 91279905 78927007 492265724 210371082 319247635 116310686 10108278 57566644 544417403 235943232 880029370 473182180 1024136457 463663526 440478694 166961193 571090888 551106206 407026363 961814245 1047058047 69444475 140690040 551000757 285536867 820033078 539954277 232994290 353133137 886842954 415032253 677641344 794028304 968612211 543813626 796510122 492224364 295765683 666151053 578671151 764336017 312652304 28310940 770150623 1033169101 483859846 853196623 490765524 277196882 133580703 705323378 881089021 261271708 172516855 505650170 1011890000 738573640 320380296 1034349498 244605884 761159487 1018618536 940211536 870668068 705874448 160716861 1021994637 999072281 596697044 211302979 1055961225 459053165 21644195 1049175271 640498970 313304304 152434494 29888327 552101279 1058787957 121616710 934757784 105819278 140052792 947582398 161858023 622256607 997587291 197942156 677382257 994416251 821685689 646377703 760761913 1044815878 465745781 213025999 949425952 957241770 883306882 324156259 627421407 527623448 516744338 960015428 759565029 183546825 342370846 273437879 602545517 1039964405 468250347 769175492 237881012 31056634 27247253 486861769 172909156 308994859 376107161 159202666 36495153 955982465 625264373 676295096 335531099 1046419942 803005494 750612111 737783905 937724413 343474759 600904443 488648205 564135524 869389491 202322682 412980278 512340677 61704605 735974636 45322660 938698371 983223244 183271801 47955119 297171078 843044573 1008946733 888448443 310881047 368571589 300152219 884804197 281315419 811686972 786145534 137695326 56767749 458515928 77020892 218814463 591371369 987971151 374137659 1024430339 263553860 349702802 94169784 409427671 477819968 273477013 147606238 143006133 726605525 608308976 630429151 131354517 179823726 639489147 543313098 741504718 179048219 753933678 723900911 208010082 954596464 301706045 194664477 938697164 711551160 991297031 951974846 645168457 71816459 300841552 63997835 855937299 4960316 246171602 206418482 1055832595 1007791736 191717579 231847364 199075266 262990187 854066701 592811418 850154160 1357091 750215229 514469317 582652381 602006661 197587667 526304780 804928224 1069033014 370111275 661458667 475591341 686338684 270672760 635529110 968756761 658739289 560324268 131223153 978009454 302831702 86435335 212367924 762895657 221038745 139309562 127435126 771554341 186138152 15758009 405401533 776646780 381854615 459412074 407119888 130291277 863692671 998602481 837137847 735315075 869062587 30562665 55571952 589681188 193403933 850239348 1013384379 361615418 280457666 1062513427 782444231 946032824 995587459 22505564 784535789 668240853 972538651 388956524 913735566 475743380 741980272 971216512 870950780 448204859 115780003 416539772 754973082 936925240 148891179 4855710 307649386 837780282 264517527 676684044 351048858 115801250 673651656 530844640 105389871 650454486 272931481 613390783 591911341 98300323 943114805 251641828 370695714 634938608 733213060 985284475 502927770 711492489 875460512 275453829 147846334 398856606 728384274 297513072 661132355 910795230 130635742 503070878 792507891 191938237 594129060 526830825 801575411 980712429 802760826 556631335 167684795 279599890 177268287 633486252 118023908 506664089 6704137 688986920 146857016 645723229 168120060 769992711 435608306 450436955 142132532 999569562 34106983 666834959 365067473 792142392 909914210 226207729 112228350 243225406 141263497 336240563 1053970240 724989835 242379115 248267380 1000740265 315384402 413431469 949425961 641019560 187702024 808248600 706637603 1023073362 906854451 28228103 399827206 238081634 336252491 628111215 342599700 215070208 128546403 100551496 292078203 216568585 937233749 501030245 719871489 275212743 328409713 314408420 504706210 1072673823 942586511 613030333 888913691 973892270 515280960 23529800 726427890 899610057 921397596 290348813 758509439 993315729 737883386 573702872 576933074 954087775 294339021 420885684 324280627 204857976 788420890 611665798 444552434 164449705 440355957 1048356520 464766231 591243342 298084078 604317669 211715203 1021871555 330004395 420546707 449956281 490557024 834795303 445361943 975159507 340716445 81422818 454286096 1043051157 830186460 220021648 1338981 89516518 164374119 150863555 332525948 300794471 1045581336 475821193 385607133 393610515 345831237 175907706 859647978 840863602 198414663 994918943 70033014 947637699 630321865 907222193 152225097 402255810 224173644 900550353 123005307 840890347 478509129 140574134 194733977 898785020 308674377 499706642 628191537 554311963 288531596 301538069 110278771 1073006740 421080387 945279914 291748215 945431804 253494651 1002838634 1030224699 758891591 289749634 743992442 21419865 463675237 289744126 917344031 231710442 998666735 655423901 252698569 953623634 1054961879 936967180 505714011 695827538 878939060 673465618 57990104 767137867 510905547 572632997 975959507 716053699 958662422 572933293 653000301 1051056003 239889753 106136878 298096826 254704722 425672408 231582383 135815278 129033370 611121494 242096658 456254059 215862081 719041053 1046278763 994806549 767854515 183365183 522045985 1020624519 368648723 890214522 650117359 134237532 157272566 586085723 730693414 961749965 869082467 796223672 27288588 118121890 265270785 621247473 689197187 452587734 327664042 29503701 372394265 1011548882 713341701 792372107 310161513 1029854146 777095841 772952813 327157762 29533490 893808563 494010977 471910281 633437235 113859424 359946545 18622576 643475615 750289079 832449023 535347435 361707276 135385048 524143806 946513177 467645118 847550096 737495569 446367773 1019599080 276069045 412975942 468928199 247489774 289040221 614297915 24961340 177138778 55179185 604991934 1070851784 642428121 279023754 537983459 325581284 262217938 1001997656 60533599 870217834 555652682 560491761 23017236 861472811 560383002 482174546 170642618 144446706 1691537 30179770 711334742 901111815 1049496738 632197810 118991343 1061465050 716049883 696182024 797954007 544508396 160274242 467162024 73759004 277971537 1056552200 247128053 693594340 182126321 881309819 943406713 252376278 210709471 963668018 473549724 411518213 541281934 703149669 623779917 363003917 681590634 174093253 130417358 319722514 303213031 325252746 225835458 1043054506 131803851 75951733 995605006 949255687 878191037 97679557 64461444 483987012 382373883 596282272 766236931 66606548 979497367 1041406867 922406579 308569941 716625531 478205063 812803860 332711730 1059479115 958193598 913844163 595481106 728007545 132147568 520613171 600842920 849183779 600901513 90201771 13846404 1048463122 53978307 951015554 738381402 534056938 70750934 869041671 864581827 566841591 989218777 739922491 899496324 275413710 1072244952 80670159 337337605 577769314 1040357097 662506992 920571982 598566805 15054082 375385630 220003196 605709555 615308678 1012633105 859788897 391275844 910647094 1059364275 716204984 769993709 230553559 148931043 170663730 542479478 1005485326 296430207 428977163 582735329 580648553 940738672 354215120 130623037 839703332 620224967 781090150 1028659719 97520791 841919537 681276954 538220529 295172835 800146446 213860025 585493090 443317808 966737800 929673290 299717351 472578281 619857783 898853276 180758442 431708080 123126226 369404295 265421420 817511768 308198225 565499937 424554494 148214810 618129715 87716790 544143541 1071450643 546931113 519014535 312365044 719424093 606174668 985194222 501196505 832261392 400418823 195831878 826639944 467953883 609717533 634573648 322188609 207812781 823933717 436457552 967986551 265685042 270124169 290702114 798304972 1056798582 520318225 826595912 929092789 748859054 557071418 724082559 530196175 1058966759 1061464829 238380213 407537069 396294036 40521043 387348951 1373548 351258918 265321253 1056274496 493668338 920553927 177595610 602906057 229210632 862425854 188749100 35551562 635459683 260169671 899336706 567434114 985588048 904324142 440271627 290221587 441487103 177834170 580794968 116444033 119449616 896619221 490852422 45875035 233718282 802169073 850194493 50747176 932811818 700159432 719357923 841560422 96873795 52025091 34269672 62392180 192690237 463279073 11777640 981910958 426871923 50201478 952565471 93886385 1024734509 394348701 944823498 444434268 358897731 242237047 421764912 995829362 1027245136 819716984 888176468 427384341 830521659 418384118 439150112 829215545 475442541 957599086 526945569 987235595 515814408 665383417 227731064 601247313 1044952471 855435554 883464965 372347845 147593462 550319201 151777643 158060702 940761796 1051719432 88513758 1057302077 74809486 79812488 805189944 941366845 47476988 56036812 1014113194 1049606222 943710034 781646381 1066794530 480390250 324618701 793913183 937297252 65945863 774491340 528949357 427629884 237923260 892677782 149213262 1039860306 970609435 70578212 1066533577 752906474 647578618 327720621 1052334348 676074442 128862043 1040825207 662053560 582324101 852624956 352637539 257057483 665849080 1036743162 195011891 284823629 695972047 215289832 16848807 310834508 541322532 365514702 595854588 453103669 802998765 620453085 824055684 923235144 889720756 123007035 925049456 334838373 28484585 369642130 989446044 1002575721 795481738 424701186 178899618 821367326 170783139 471657612 400350021 800245044 886122885 454556798 999020423 111030643 612792756 980561282 824972658 35497228 630369922 853639594 810146416 465762594 86023490 29613750 167182794 1060947123 996671395 794788397 887710063 669033095 65470386 589159570 269245282 969730915 461537298 180806316 474351466 330213501 48638 556359015 102456883 811248006 739319177 414734761 490267290 430831279 352455524 921205683 704663732 616194179 984502826 545112419 893101832 280178172 86420594 486351526 173835269 220837771 290121092 833013571 1027459920 362350944 991819278 861093400 285494544 429318337 921625096 260896112 915601819 502762983 1008628302 308990366 686938761 530332313 312541298 1050840942 519909335 227557565 82329313 748473450 1042720440 676066710 402496717 102791365 114906381 553798939 816218086 4241390 20588413 43426 695376949 261490489 84377924 951678138 180341607 895079881 861876567 114756601 2971694 121848789 918817988 49781078 240119511 676415168 266255014 223815761 272759168 1028506582 781101589 786771871 605893680 796316048 875477692 309832192 432895324 363433523 1018343537 209183406 328551171 310192536 64488203 952232418 964857909 723032711 580182168 174789598 940211476 271541324 175235323 1073214117 533331259 688645790 731969882 624594563 471047568 1018119762 1030260289 20892149 664553643 27163570 421503277 522052977 720725112 629013154 991115414 359118966 68309290 730505319 873062901 1051195909 758312535 609182306 513340960 861537333 83367188 978507113 470383069 407992141 538911200 324578081 954110658 1016725718 266952954 571846791 380460183 274987314 674931895 271712721 542470082 651701298 154351506 665729723 749381301 109064672 94075149 344852313 215761799 304578720 969632997 885562167 526632822 256225859 642723000 612783576 269880242 224272402 260169443 555991630 715879487 1049102924 607361512 506598161 515844446 1054611475 234612655 1000427207 589658320 899873428 194439424 826116485 777109910 240879680 844573768 355003588 1026502674 817798114 599940414 465498015 475375701 916999712 1050318190 59537146 404986116 48254639 1030049733 926416387 768119836 212959728 210950667 188566243 448839815 320676753 329541285 537604442 624103946 918406048 405875198 948658528 877082280 313120531 424892506 77886786 816675628 173949306 861487901 132335890 465919721 1050120084 1024722414 214211855 860547337 1056051089 482521016 104206069 999745999 867500666 1062588185 299372374 437251826 991208342 977344514 386769485 138400679 124292686 532508555 373832573 441783039 900265629 78242967 270810075 484008562 582618916 661869239 795916232 49060241 511575845 187183189 434943891 1034225254 840232929 337384668 636667001 514695953 742794948 983137987 733959719 836147327 234055934 574037248 592242201 280441408 647133462 201471285 1058734344 561040825 186609238 402028628 526130934 837536607 521408722 1036626916 521113784 771346257 1638515 125480170 970845087 482851097 201986229 208991598 925486362 361080743 983935160 4037281 619396586 655965597 762641499 425933911 854871684 477191569 675324767 537592903 505645152 994867815 756760752 782088097 733785778 86575343 1014599244 131607992 952131368 952151531 980669175 1021376775 343068511 217736892 894540686 1054059771 79236746 190677863 909846407 379752828 303108697 140132074 685870807 737413899 944049904 413029049 140125769 112573979 1000135494 704937357 428981117 1051482373 124488272 775819301 581441736 229865983 258110302 640175819 133376045 300079608 912404518 385670949 242070211 98984570 660230675 245352603 1018993855 723229014 621492130 586687199 680173133 275617768 712053203 170520421 725691016 583858857 49310857 930148583 23022506 43938904 43067062 765621911 943046847 41260363 257339418 456398258 845580492 594639518 892037155 952427860 157950565 35919530 1069130956 631511487 201989441 798321421 216467732 242427210 189928805 1029151024 461923206 991531999 581143662 66533530 92074978 661051393 400928666 599159601 495698382 808769783 500245861 495386174 379777263 721790671 832062905 923425566 878216495 645536447 312686236 772453705 360471569 897085610 838240051 1049528825 409820966 185435180 377511911 927430613 891489412 3959182 303488673 637113241 408770918 278353000 377297727 19016158 642345535 420952652 630784232 1028895225 326223931 934322106 809670461 770993241 124909850 949926024 107978530 508944096 687074935 719462943 346896226 583945889 404056226 462153822 47149822 837863682 629806210 283090650 520974901 489364838 740760371 845709510 1055713405 1024429059 499527486 189439123 725736279 405076056 616916121 202860809 12786062 722520551 326663024 724659433 631936923 1017628937 745811042 140136920 589031221 563021969 737954371 308360941 877960287 901919708 545615567 259851237 239443141 232691392 448006835 762193313 5179503 666196908 290140732 620473553 705874806 474876714 269209063 122813807 918241145 190260277 427494651 354572243 688704126 699136555 684434354 814534316 763761000 638085527 650661439 1010393333 467813840 923733511 523541116 1005385151 720796075 269827367 377207417 672158518 3755376 641922762 780068046 960310333 894934387 36595982 373870782 136237808 470759538 661710376 928203962 846688825 244114613 908805781 303480042 1060101008 417372940 265313583 996728442 572367386 160668647 726817783 660400227 464341018 210559904 313468578 971795259 553072823 688148546 958232538 72202248 835727237 914064317 100773678 500248735 545974997 728842445 726033413 219792732 484172596 218400992 626024789 982778423 729981348 731763869 394728225 15357336 198288084 498359567 69638884 980245559 336739818 545519923 623212292 1015076647 419579747 155678148 251211072 492302159 860849268 826294661 801013169 432056868 348874628 465755632 622725426 70341618 914782277 516657707 689831959 428713546 789733160 699779533 336473997 897481900 325395250 649664392 384650925 340794753 358538446 901169701 339618926 752775311 297996105 981378569 147471389 838958769 906264540 871250304 303650962 423322946 383928759 397975426 658214741 810703233 877911864 643850962 780580854 514736959 641597300 350545040 1054962598 888626309 463679121 1070303287 864089180 476773453 642345751 117438179 987952489 353272198 173514527 106277200 783176366 562820169 771812207 135619409 767061321 647117690 767990627 662928969 788941059 199538940 335692017 1067878189 749058109 242307101 89574265 727107892 7156376 1012938784 729277508 82199936 505307505 717487982 659271788 330511085 976451859 664544461 350432690 578583797 382500895 44610445 656105723 527141785 34023700 879377281 610700157 18848977 632025827 695874343 963560989 604186603 389682414 1058853858 426559034 124480971 956955080 367181639 723987584 3356014 104439389 239095094 212136848 715235798 1021045096 876205024 446233512 726138899 1001799433 31869804 456496745 1052895515 478690714 56832998 943435256 257055633 888236754 841280271 575282732 452100964 497496764 683189270 791795312 110321170 508933642 735706114 555148809 1030514342 57535558 427312989 585995071 890048304 707320962 634263937 862591006 212446022 958042332 957007013 437025298 58568713 610862793 913735579 1029872203 353079359 969399018 346126577 191498311 560910415 743923693 1069927354 710222316 175120287 443402057 91723288 224686727 90667948 268699060 846095288 350466000 986970008 65092203 611932915 656807070 370732927 186975048 297061348 865643764 451382068 1008663434 11032564 778689127 11362125 427363489 471399453 981687848 390232190 720327557 319308056 425690529 489027789 497656612 491195915 786527760 19760326 394540079 368925211 434041392 987622044 720561286 636044646 601784299 583527500 8293845 170495687 74133330 846992128 392523534 924262685 810476213 29461961 729391399 935283731 72725218 630367791 330869516 577543530 13904583 57043149 619790914 424660264 746402713 842934942 265693598 363219729 179424038 332310190 424509678 253333638 722732883 836297527 1000115038 107161104 562534756 249058773 4746672 448946938 505168466 231763485 1016806511 504017966 104553162 984904387 77016267 858744586 569818191 534517 753086079 662871975 485685564 1003190271 394795010 329863483 462812262 965710887 384542067 302226993 1066879599 52329212 605524442 138152504 628996181 683896319 917088078 704503873 101947766 441215195 30807198 994901570 691271140 999272895 983224041 190999094 1035128819 85761814 421705600 739096942 707984444 228664666 422625393 139395999 403778285 589354915 448484079 867646801 556333469 887005586 401929974 221806341 341538038 192305201 422783156 622967355 318325334 843466385 37070676 796529757 365329724 123456467 655295875 1025826996 748876534 296054904 656107290 145363401 614498719 580358400 940725714 700442673 652145223 1019318928 813005923 421520115 584528973 566458518 1022720704 992426485 833598171 207935205 840924087 144180844 487336859 956395321 300986654 417649325 97655815 116226229 811244311 894793428 398579748 168179964 459051062 633278153 673414137 375675372 12490178 233966650 825919428 689408422 536608879 705578861 355690161 747711692 514929719 812074035 248593676 818353901 798730742 470897008 236068631 240300282 895911925 448819926 316510777 378488932 703202627 336181963 529703428 264203680 596751210 870483056 1027500320 115023712 629995197 479747163 741441771 891203485 200421621 617261961 596308018 1055093381 1064106053 838110205 475223549 746438565 100953072 95371952 51936697 806278339 488077341 395225104 335629540 98883797 552904202 588738695 603808926 1043796552 100502807 113765723 984501989 660354944 998466085 622283041 945955721 368073635 283326261 500018405 302541961 482746489 353470089 406339110 46750294 739790924 164687725 769713822 391452836 1014146724 275455025 550218600 386318308 550471303 535086497 826517256 677756719 983286810 946623022 758423188 367998067 784619022 347992311 917958633 329560270 11369517 208165678 742639477 943984191 639569766 355855092 935993867 750741982 687967733 441774466 715199517 977953667 935919448 1042598202 813266517 1025630616 561017982 145475921 946970214 144918347 190743604 623475839 1039168574 822096699 75073809 441607468 8005075 614073604 511277763 989459410 55693077 287926687 904424679 533641009 676035130 673723944 627460499 314219816 756081837 994858433 938293205 287967318 946618291 85997897 286581153 638020780 245461129 255788062 289512928 370055516 413435545 977943903 469588975 377463919 368846311 573594212 1036530413 811814757 1012865249 1029595456 172070475 534836173 389333429 762879335 152471193 926778194 636832513 627270135 392281815 276654581 115585148 824447124 155847327 952844720 962342388 274021823 758348193 594773313 348675466 942697507 356710432 349839150 939699635 886871347 98735422 431459456 283332783 275727428 950806485 996942247 962141381 22872857 625672461 914621093 618408409 327961022 832800322 531107516 664610109 770708893 333381750 350835487 989183380 397886503 314550542 1034723635 915045212 363405089 1014369009 716185826 917095096 192461010 955137254 553465949 986598523 1041875123 912659667 882426341 156519890 1002450092 1022590298 740018279 999045390 774483994 968949792 651030700 971331188 138928851 979237817 288069694 307931640 676119124 754163549 452016415 978334813 923463091 594884220 1015095588 804466040 960915506 808578219 792980512 147264852 236705427 1013846105 2903901 144537610 89417556 564899648 705474920 20112175 937907192 531872003 643234857 662564103 258051271 914027184 273226226 638080853 295176825 495982581 194969595 781020483 91581643 133180879 604538621 756928869 355839347 997328911 537017149 956733320 232183932 194072636 885248593 494107126 645839297 908435811 898279490 758172624 251482708 180591455 590729723 252921425 115876697 970992983 177281936 980544355 451756861 37353857 760933211 950966395 829055341 542767150 794553669 715225878 1056852165 871468587 445616452 754777758 462887033 381312343 793870166 695310402 455712075 380313427 238873510 445660321 1042424440 661644461 684122248 148478532 1019335938 35277248 604039536 708086995 880647001 432366609 739679794 83911382 480885880 244462555 352322301 243073985 882232344 597073448 852068943 955453164 901676906 964330419 133860513 331949632 53932968 973951112 905025897 1054989303 5365498 580114086 788700527 564166213 100384569 148544253 426593942 179467385 175267322 499435815 476712344 641017544 222549828 556043093 288643173 746068296 874138351 816699036 871002793 448411010 915969803 212695147 827286377 473165737 572258551 552002593 729770485 16778741 967951284 585694462 818979546 530481840 580608592 402127778 1040928007 998541227 234252879 939709020 34151059 882344222 990920532 407253814 807999576 901326279 935125343 211947147 372198861 842100552 395485493 637398089 951060855 776912491 1027030420 279350451 689909736 715192214 343581143 166907175 179514721 160066641 1029169017 2604105 352296100 511230833 131413761 741765915 524458957 137540583 31866753 494176880 852266523 683563072 403633241 595959374 770951122 912269738 703274157 216952637 299695763 187335163 277571395 366588743 213544442 1073379623 890774859 149942703 719011808 340554878 196588018 244147435 710725040 1000101069 30706884 373453682 600457480 345620659 543357253 212886238 867478303 946538733 340907889 957501143 332617966 456762790 82488619 548440416 228054078 147753428 755872306 979361314 830431153 787493506 633650225 287313476 958825879 129089620 46582714 42753895 600959226 831578735 604282019 711736034 469220957 472778098 918556057 51546907 842103650 335764447 170690489 339092130 995020791 279530886 606237911 511268998 675749831 173971670 402058505 76816234 941487086 454179598 216332925 803106972 513425761 944180233 296959781 947047094 699030093 211406549 761643716 632178308 162195312 965585432 895885359 818391008 855286737 45169105 821603261 214216843 448548384 269553886 990349588 153929683 1021683826 107021440 158864785 246141092 794219601 617350595 647298307 994178853 225749957 105143630 325604762 803817397 922172694 113975360 316234359 405594577 96642611 412201579 837389810 523640833 763854587 134278750 239091680 181087180 175786237 995744991 228873974 701998997 451103269 114822301 454110465 184125280 667665004 340224009 29343062 778900044 942484954 999729911 747576628 830549338 314786181 752397982 803483243 769809838 459386674 207989245 99597134 608702962 951778634 612440329 774899722 989514464 824024682 120832659 923769258 220227095 536082852 421154114 1000265528 635897346 617732092 919120736 529965699 33094166 456301528 323422378 806242260 988927073 446627783 368678402 554942713 720236289 1066121309 653055579 1027113350 326355019 1028982615 467534014 99607629 277418734 503114269 375766328 280609152 765055355 300894707 779591750 907526960 609391710 304708593 492886658 664733583 540790977 58170463 838835221 389919407 443176026 661555573 49240873 598976225 1065924009 791498016 428343318 54461875 897547276 400695677 297557552 106482425 800931827 140966657 286779870 193104593 589559909 112654628 940262171 666951524 780774342 1065728001 1043284044 961556365 638006482 731061766 211809430 91206638 169471873 522423436 1003085458 1019652319 568709971 999184388 382180574 134101772 145418421 293914666 661900782 253211092 489546625 715676166 963309002 297462187 255075255 297485245 167063085 238977866 659786138 812956395 293798287 875710363 530566108 510667298 107229432 739109609 984379093 88821269 1040121465 1001414241 117442737 823689229 139314885 137854510 316769470 564643944 379436586 337903772 269614385 598362233 584923797 1007397016 749647854 396075298 672772788 67454720 404752919 748494845 560257344 1003018955 399728551 744033418 384945144 262086900 107111230 9519939 261859634 876424843 711409241 428087201 31268887 605072377 1002316836 120563587 306780073 947498769 716415318 146978954 18565905 19140847 1028008279 176157217 671688053 219587666 96421487 451164481 1010471359 1033397727 263515298 1044371763 907657360 56017947 821923686 30827918 946871023 147611911 1026583660 422803776 898060462 560336364 589295523 671278535 483395723 1025754839 829568283 789259779 32555033 365437445 999989941 680657854 1007906512 30836652 82670104 531215760 285282472 453999535 99413875 1028536157 979083064 643629978 231925861 34414182 551868147 186532031 1061785696 606816189 620182692 821371060 216637348 721512626 655591407 754991823 1012172101 216416998 517011993 247637433 604238991 433610923 35038825 791693298 114251258 123848241 467586744 588577461 191986753 781656539 685528173 457035839 318989026 953152231 87799520 137770272 618967136 7913298 618368422 761083475 488857444 708301241 869342251 764730221 292230003 5810485 293419053 410492345 241541134 995349495 359192373 145277880 139428533 954883061 279457694 803444910 420800487 108977009 508964767 709275047 717122263 732311708 355252667 103468416 102214002 357868201 732390968 366720970 252405486 708969713 311434425 679455886 412714906 807673900 686169448 303986883 426155349 309583046 426149573 221151031 933058121 562121904 991087228 876975028 234424825 865639445 885255325 615317481 443683980 181705128 165362106 366287008 533228437 329132650 338987330 209751609 624963017 1072033579 368098005 1061478418 1056513861 553317918 754936391 658168134 226787644 85228069 1011046663 524078110 360284292 864618445 418902595 184335486 170756954 37049515 535668796 355012634 999675557 371970031 703599699 13372270 141046417 830354297 1072477494 964306115 625441278 976103185 664337204 202933931 993565956 278335283 629367419 973190506 132468551 169538388 806292119 690646625 405679616 873296769 90299173 701882600 919010494 332955519 55752963 733781857 819242558 15625689 553553541 453012153 22100717 288102705 844540325 900269566 743695613 149670293 75152754 255576048 357807339 334260580 848409322 37594051 201448236 748595526 940019686 504720489 341538572 195863773 774446861 645675724 1036266619 671868542 1018126671 602117838 330191319 419256903 181939826 924650916 721638782 248989435 726524006 327346903 151360027 926973967 947195651 641231344 999190207 1053636306 464398701 494885561 419924978 703398817 96707675 174010554 543168375 342156700 550020939 66598370 483822268 451270151 966761516 592988615 730194441 373287321 827837011 273193378 819188435 260520521 383125432 58220109 179496138 832534725 37707545 1028275300 910366926 1038072851 504336261 703231074 861203882 930656230 575438200 321138844 821617880 247397923 887459808 214864068 1048729927 268628211 670293106 270103097 997477579 908974080 143160424 535790539 705063217 820454021 212710002 1055226748 332315970 979490091 440505530 456024174 151064577 363016419 603411226 286309864 767923160 57368924 487018732 571287669 490046153 177094345 1018310742 528578105 362874462 379744501 55094200 621410961 459939617 1061623329 355653154 838597692 990131826 68266321 261876194 953377344 13183502 50057867 79821295 312924393 545287982 136616619 749154971 496847789 131741404 141025407 302900607 298785799 727016181 257428505 50082423 372738034 463636202 473653366 885468201 19375014 1029173614 89173427 56906425 206843874 1045793796 99567314 1031282786 694709389 816501769 64333905 377963541 652910831 567676794 736694354 810298238 882803053 766307354 261559185 808687477 117204934 111621284 943153626 951834923 53570625 931702096 667598288 8714100 548609507 666748436 507639411 405647263 674000065 981593956 469391060 1028714796 1060222845 153645926 1063660723 326467262 148011198 234433571 164172385 31113307 871837919 1025756099 521484454 235804171 141037852 47064748 963451848 762565349 380053127 269864869 1007458988 621690698 1070128763 928473908 577194403 97821671 557866502 303895581 913637388 60531790 685535532 437927925 1069546757 87530579 609536660 512100105 382937146 760295935 951317003 878325447 46209940 375260598 576482284 327455889 788572850 912523325 638846978 531228291 622441273 347765675 1041834702 253043130 889303106 1019218526 646885679 763455971 1054574096 970272232 746871245 364147028 35119694 40414112 775611826 1069986035 647901606 133708553 724389806 10545520 539592952 519649107 969081217 421934717 348057047 394300884 1028580551 497068171 820666707 82057103 566473871 1012206987 39025848 444274329 425199522 88799796 445558314 1024248514 929343264 11310960 648570870 6852877 523074124 764218701 859271654 254583153 671028231 1065519692 927417208 333140792 31526500 105577737 165383225 727209300 541992142 937947408 16442290 1062896426 145534751 954709080 751162516 644208724 539244906 287811047 341008457 796863830 1049708494 541054541 524132436 122702254 600856777 848281316 984227150 808440325 298381326 576106033 210846022 902958829 518874809 74994722 831894051 1055809224 1017348641 434868954 563794783 150118996 29298549 654146890 926488377 160744107 880713741 721919216 1035184491 810454490 569945250 1018935360 383588098 287319761 832061722 668452601 585067885 718322037 1002326775 866928691 601391733 608454454 403738363 415429733 89246457 625949968 75322263 790130218 961728481 337729243 209343677 402002269 792667402 207545792 795170935 863972924 1062532076 425738488 89159125 861792229 613236668 237075386 252072906 378688454 643329875 130399597 252083540 39766839 332216908 630911819 585083555 157981328 1044010703 252044991 93466400 774582865 562571012 330719432 1052029935 978004538 805655434 33811923 843724896 320915260 320825615 863226195 869649909 274276109 971168068 899636773 62046042 379281201 686303531 102931606 86948955 653974033 796540904 236482502 614593374 342868843 1048209695 25971112 183056810 805955902 9395486 665485591 159674852 796298454 626798469 514454126 662672187 504173277 750393112 864717005 143049962 43658879 314870618 475603411 940692130 389924786 1012957744 90861763 998841854 972733997 924331567 719745297 13268323 582200996 723781184 992132433 75879806 32252888 207555319 891503926 56981364 1071772520 749465229 783354635 197781528 746304392 9426067 273090446 714628877 536246927 142468829 972724421 308787082 282596222 37546211 1010780832 491897049 324640014 917467389 296903612 651334890 673398579 607356036 481333366 212339017 495866222 25606780 965174351 140820688 261801223 516551231 554161701 701985167 471979620 491263205 888353189 709853148 978654924 613712355 25563989 350043628 1015271789 648961846 672179090 670749822 137401534 940307546 68151241 307406911 39304101 935199824 580072652 965162028 989991303 650521727 591886057 287647513 461361609 713652530 117641369 40632915 439969189 318756719 1014450351 972732850 830730971 485477037 101900595 519099166 274858111 568020477 799561499 793560210 972119662 241017928 479166526 483939218 609668433 167928056 148727837 594823649 201091230 1015246246 906561632 402127890 778490273 601966097 911232424 577976241 56614269 185428515 50745066 484613511 348883749 966094859 1053663007 22030744 351170054 56198900 948188396 784537297 70223623 476443498 127965056 980019690 801723745 570329599 995679828 816137614 185866834 1014098968 874781099 374648084 12231312 341917098 127837988 705889952 447472186 1061301353 669547091 1006586800 808675921 309251866 784217620 153403774 943138068 497797115 40103624 84115434 429964514 221908627 370715636 842955499 231333555 818178188 606428070 41956419 878195878 441284030 877431799 596198377 754155939 79152064 985703011 946381819 428424382 332288386 238702099 1031839883 350785199 951171848 425352239 854229195 990637147 879596860 936747088 926551968 847285772 619238720 95104268 1024192413 96911598 101886071 24166460 461176073 65336376 652708508 164585693 716304266 504456725 33456453 3552079 373141903 179766135 691606764 699096402 975946764 696559257 532017991 878177193 252886968 114837513 733029114 73896419 454973973 706135579 543393069 597539905 224654928 230804143 1015355548 843297043 844292795 831458875 633189276 985548282 257208492 871537650 757314027 132431152 257639000 243063497 148507435 1038297353 527333506 205309114 558844177 128277004 420974290 572432321 374635976 51666185 715582800 291068587 113756284 254410217 726913114 813998853 675364255 844023302 115230905 992509537 900452882 814546586 412949161 824125150 102925013 441957585 563965762 729740084 259206505 878729355 420507198 549022882 76935338 918256950 708728610 1017163583 391796277 296939590 341782832 265160530 966998298 85518804 448152857 758925211 827000851 116796208 278574004 960958772 199296327 1024483137 389515063 883718998 630712983 185849235 686046510 9837287 974075584 796728573 100742792 585687094 923315770 601306962 499196202 553852514 506386169 637000335 561722416 616698046 930837473 888125762 738459708 466859054 110812941 215802850 546872553 810758085 357608667 235435653 104369912 1024696862 310470020 868763227 856085638 955011970 885652892 320243488 1068578222 58492648 356246473 517376787 1022865724 507129604 554408795 862768665 136388327 590385596 57679640 386674864 1053881236 805466970 573174548 39912394 5786198 732879216 123145065 38812033 18063831 766744749 886342010 938154649 215492823 398272232 133395255 540864473 397705930 1014038324 86029796 213350819 129772179 644939400 791408484 888967113 563968356 621519658 964190942 681863496 709085513 973715088 24448764 196172233 682806554 162065369 43960969 1953962 861492499 469748766 842362377 381074275 858264375 838603105 532101026 107415306 777464618 647963917 1041419549 723646942 915968817 196500922 1047551947 915349647 329122719 537258112 836418190 837586521 48859061 995361916 1011520756 422891870 710575597 652674428 1067563977 180278048 1039602281 607053295 386225285 728580516 861263363 681013131 887818003 18906174 747437360 885715170 332765314 507116626 267556073 1067804058 354765694 111272099 808003703 946462954 19644558 274577724 150323327 430566171 888867374 317878898 468019011 687804783 206714610 734622135 278670489 752174745 973917841 606598840 982710199 11957714 662301640 869035797 96312023 816007493 47742885 187401013 856303207 1056623854 198164857 88324995 102041795 396999643 964469368 65470665 23056013 45542701 49539871 931745689 154406426 30273054 927139137 686556121 215130150 1028649257 691321784 658116198 242731797 225005268 819442620 11022450 849843120 709304431 1045051460 624284720 196262984 867990812 743835230 656290598 293018149 898018171 942109978 500830337 389116386 369137693 1054983378 580657643 409783219 124772893 544407999 143846864 900620522 667991280 804763758 373678565 560573810 526785794 94224410 155839608 228852143 933915435 424448691 1060207180 110918874 989391157 412963903 64695045 494260213 767684781 163579603 499567829 56946989 134954183 876100321 360830504 677771881 493252108 105780185 570275795 4053509 812588995 456718602 28983032 79289207 799205278 763463017 159606493 149217481 300410858 781933120 837193458 802828477 484422739 792959025 381051040 444100509 427376611 287445221 932861654 15604166 483660954 177853128 794127846 722168442 104403782 264690122 4708637 977794460 675549407 1001588482 892926878 506174930 372297540 1048907548 163194598 460341533 59418695 447348248 508664365 348619902 790363938 275801948 486869372 1023569773 306915011 914615580 650367395 402192392 572671699 454736437 362403194 1014479209 709265740 660530422 71127152 924157766 141022017 1023147082 44665469 1007372375 618878351 488151262 810168624 945696608 803553040 387692921 267148105 582894788 555446740 80466156 613306479 1932248 732346968 207340683 1039788410 324801982 369986305 1052358049 918208783 953045985 937668132 798617221 786864293 232409570 118603578 916309479 552217279 794294011 323425668 559624360 915952746 129659382 300241283 1046391757 1026957723 569563148 423716893 398286702 883394124 1040049831 1046038077 456519458 921751599 96236679 132279000 406532321 736176669 52911525 1025934228 27588970 524817872 50099010 728084634 504061386 322499872 342548786 924824941 85154069 39594707 607064098 970949399 498625976 270446198 736663495 266363350 489947284 480695403 210982169 326752124 438786274 453559788 702337769 663777510 727135248 53658640 783213187 934660441 366068814 613287537 1025262899 341936568 798169727 332950629 663117982 134176061 210547423 353399203 621509559 631068882 465064281 246282054 689201969 299996419 796670429 766360601 759425721 860693768 788544574 107995206 958452895 770061610 592714800 82121223 759810380 70861094 515448703 495822825 687588828 202324516 572596645 345537381 142270800 203169964 472792724 313751344 477037815 351141462 354532960 973650550 42675352 862322580 1066664612 327701377 704074928 257601196 188170740 327276677 368482097 740398117 596556717 921575237 631659421 248294373 920039630 60936533 48413430 886092394 162043080 669262350 460560489 460212685 700785243 759455395 1049593489 962594719 708691755 736456233 728113149 354816291 1022599191 482168790 46781956 927710209 755425483 960780778 914905214 1035723640 741296101 8893287 652448580 844939925 659696416 749938028 855252729 581453982 122915197 864614774 6425538 177551472 144003856 777161496 927530970 847118242 28724206 560679694 383779582 894433525 945462442 1067535358 927970508 854412863 415082596 175020300 409614395 561274833 170943176 39860935 804671588 817663818 459164850 372832204 336426226 86929090 52970709 361503693 218978454 512983978 1073148748 747532329 711846750 184706902 419323092 857160020 856076110 1023399283 316053498 892302803 648569954 67121810 798512454 546060727 905544097 890746035 517911708 672677863 693670744 276881773 926228216 950997629 217563938 387735722 644102897 1048694562 419052252 259882815 172076919 817551820 392780610 139023086 349321759 180888933 507130169 188825061 844611835 843763052 730397674 754059632 734942609 877683843 874349194 711048452 180848197 21529372 170935928 184565152 451693881 753988065 921799119 735517293 969087038 913855107 995990057 550619270 281681120 899413689 631380455 333083317 505403338 318725077 873151335 755933272 365622138 512801703 771938531 586571531 497940544 954620861 583653348 996179500 810480303 1053996391 137362742 54544567 789379189 1071339356 854930415 1013953158 535197240 928462637 655839704 564222761 589695437 328569411 812810579 275925372 781200868 682902961 161678321 759179896 300540275 371491882 714460673 464538838 173955109 731785347 197200849 688142164 805567192 846821788 60883428 224687960 105181724 148931927 142743590 730424877 40852113 369466624 394268199 576689618 132064058 669653136 980025716 897196636 230016746 728233900 838043166 35780727 38378198 744114271 878716181 313292892 722204302 777359338 558352803 377632445 457611065 395185255 790329269 902110765 498504040 592014886 537103888 777830694 915179085 740943427 188050744 270295477 982585781 103434475 590885497 889671991 325891278 296037436 294756106 666533511 426424591 456312320 530153135 340081358 632684717 222908546 540171045 266222663 288708739 888923943 680893167 868694674 394107725 654021044 155968873 748086809 96534709 979215822 230687972 466514564 884825403 289818703 922384247 183985783 483344535 130566369 985371303 516803634 631636057 557968695 112300941 865440237 797634858 1066321461 1041932288 620894292 661084785 934574164 262685190 945889654 14155194 774629222 130510446 858610912 963952838 37182120 251402580 341938143 841722052 659922614 367666703 314160558 216911942 886556671 226140288 900780200 16603330 486769381 247956515 618545071 898927222 1037186245 598258884 705254798 889765852 370095665 578088295 800303258 81080280 1061197463 640135047 947651418 197943601 474901771 992717992 298624619 16498086 549542677 107433461 846577742 38357661 345098525 747409992 531537527 40925748 957058960 473317652 873251874 911606166 483516631 116209056 633397225 304831962 424534594 612303081 148208754 443614990 108555557 272882459 210385286 127119995 248753924 554518350 937646514 993914330 381860552 869865300 62253514 960602445 657862430 849746112 162099733 1034878709 1071025691 1007180511 943172698 197678208 20284109 281514566 68236349 403382290 47860341 468834840 496144304 31845024 36320607 187080545 126045642 496391679 1015233950 909903007 322638163 218577038 754416094 611738745 287278590 672874275 688073238 308537894 977840852 127727230 326859127 649440786 193589857 454938633 297798401 1036537902 690921141 917330198 256131380 269903785 20323552 660261487 610305864 177654096 321273756 1002645767 170419875 764241866 882228428 1014571303 381978629 385103841 152897273 834673426 3105552 468063004 183813179 377373711 71303541 169202864 535075145 944193132 700125352 328193826 1023472741 695605339 559277338 830073974 377061341 1034443169 229159761 207782869 667452906 129206549 42761793 809699340 13145737 732786816 32407646 9227988 315112438 44693226 270476847 131857897 1001884118 924086471 263459292 1058791755 658622964 1017840625 465522492 184078284 365155888 684405382 219229410 854122587 443340146 1041296114 196996628 553295922 457005133 87757870 569679623 972465414 387637375 633554333 952962755 160992586 46337025 164179002 929296705 26526330 423315053 305519094 444952759 1017595353 764409991 491041226 484134104 655195838 196942495 571286181 977412456 371321254 369814792 737692015 1070479829 923864130 565942409 327281539 445405140 162466161 572172862 747327453 419023390 1062080657 602523417 512186805 366947490 296512135 996504369 154709579 91263895 942264457 685046604 632328693 73466110 643467950 469392790 707819110 354081158 398023074 73816253 1053830918 378854128 31774282 288947192 646185555 434821805 844775265 660341982 831741148 50601739 831882572 325176348 267684997 785099647 804695188 766831806 515167206 899882543 704913249 255969810 84562380 72809202 997750237 653757443 537005111 73018101 476857407 85366645 577352776 642956954 106163635 702823123 372486875 414541736 404768179 347393086 1036952533 641005255 286266193 348210360 240809443 385858660 897784953 834943043 350158584 206154821 602001643 219334803 364444565 1036435474 1032869713 4168814 146667806 442246450 694301268 898956162 46646809 1001465806 575878689 77116913 821583045 730687598 438840608 797735423 360130812 238330414 60468383 707321483 765340330 603823675 1058549940 767142249 701606021 491528348 294344687 558539973 1060835144 944984583 180493040 168984922 869695460 26475133 433150636 784488693 633492550 818892522 582175147 292576709 37074276 351408978 255238333 442583037 651337875 829142336 1055120485 107938187 535228513 459540594 122932094 342523889 561624665 1004897405 838774977 1029641829 57354519 622426625 913743537 229461156 38253883 101317754 688020499 448583373 914942153 270915486 611199885 609903839 608797181 301227221 1044734898 768605340 988235159 757722464 522491521 725152529 967283198 241357667 538976849 974668395 451631951 944505120 605033494 570417945 863060979 1069566440 365708375 134835343 418901770 224504991 502811012 1072003635 333993719 593834711 225542315 1064658627 742665589 620248457 962052934 19564654 271701344 1049218473 571299479 24265764 289059218 909849649 274295947 510171805 332457335 740702143 40185667 532965475 255806196 439739298 605999366 244443128 222146688 927357850 835212187 331693778 739785855 909761697 800054907 145600376 932684205 76744244 615624879 231838334 430413363 390040501 836095206 622119836 119832307 521072208 252069722 995804516 369078928 7982167 428049871 880555461 260355119 802347959 405599086 406291386 555410563 152432343 843988145 1049156995 458664374 132630501 416594747 215913718 48755904 1059002543 823921762 880088636 952022649 660476679 485664114 812503241 253212400 184193060 103086655 877420863 993226190 745784402 204294440 442062230 805352753 17122389 45970066 467532235 874073070 773106809 803390825 187879782 1029845808 239156129 763326050 614183505 236494435 373003274 281139776 982600092 942164438 757557923 893872526 616572798 600115768 738949400 186608755 172291880 451859623 809667109 494707360 501805974 466148110 759119334 182622624 145707728 327715018 452986727 602726945 21778071 891069053 549670802 126862093 685859200 24154279 424072460 956777497 937486908 916506115 971297691 857555848 226279406 58649145 213269509 126331952 1006330082 80712295 490119185 807785306 764526239 199921704 24484380 337160270 622132200 1053240257 1032330180 400111484 337365954 329780365 735362336 486547855 982595698 868700568 125243286 737397576 885893427 326811686 608031822 979834985 924469479 908745255 510899705 962156261 599643586 16327163 669505086 539978238 1021498251 482705424 655924423 1036733475 420891493 372988220 251129999 927083779 232137839 62687126 348676168 776930076 310066420 142209622 210844871 502127072 466615534 221220306 1014376574 999249891 252080305 45926615 246811875 302149152 790840116 1064232631 466267629 377361847 204991483 128131238 602792292 197873069 754743008 30768532 569258323 856544581 387751977 608015594 163208630 640945969 571979562 911222435 810561945 817592153 174522388 838109165 600954541 982210629 540893364 21316287 62911245 1062286736 735585227 335388900 999817718 112659241 351421827 676709452 329729916 810021841 1017003920 535575221 819506118 249703818 96007305 886544170 656167323 317659131 1061164488 489688590 791324458 785785306 387737834 884473775 453309999 149229249 704645742 252690980 421080042 686021705 118942817 802886470 23627747 155110015 646659985 260071327 57366070 310658723 650624320 916736837 309908991 606677474 706978641 14821272 963413873 418434295 805365231 893539745 895675150 727362354 442819108 771221803 371049627 885618301 289223960 530192572 126280469 886166526 654882815 811138628 732332712 325853177 637760979 342015508 1059502059 707049699 755020498 990486625 757838326 696521402 46241502 227134234 266113936 203421072 939095234 1042340941 311088465 265629181 900546678 821820407 326261966 149928874 893656278 377772303 1032053791 997657907 271817863 347081254 441206819 566287941 938737131 954504265 774152717 512418350 670830474 389059857 366309222 669110820 410390180 681348730 87813840 17009556 161711752 17665594 971771903 354364689 193457823 467669539 788721765 540288549 671896400 93931446 910558616 1023697992 910280433 824787630 96428570 153700864 423768528 483608104 211943091 1033431463 492001317 187264948 459530350 198137411 39306982 1818019 7666844 733310359 705149571 10309574 733856305 363776747 960411048 131898624 9173980 44647275 634163415 343199360 581349948 689147401 899112054 682271073 792431021 1630342 352404934 755881046 583029470 165606575 905699138 521824563 347323595 726514973 197025496 923090909 978153925 340814813 629150059 279661549 461074357 580945450 51575297 319958229 410028608 263625301 519925950 339322923 339876518 252786963 403046592 557513185 919545452 186626039 294893072 186474399 1005767145 1018900958 543990722 413385323 273650762 102666207 511469825 249434500 496298852 832937857 951319604 719307290 968098228 571170185 180290546 370202952 309184774 666521245 138013673 380667326 821022773 335220721 572218089 979894422 13118955 689882153 203519030 761548288 453597911 50785786 804330499 483974819 1021085964 178757204 117484556 1057370930 513778840 827185197 270467240 46183625 1062326826 678099779 858605671 572219476 914041311 1000136297 522264296 219480209 299969552 665165996 576471613 831613934 142015711 21108231 739746346 192170147 268391030 972138162 584485747 951876481 311083578 751543829 700931936 467495586 960805343 42965054 840206985 402379870 15670046 965517180 1049420649 787466250 1047155012 71893070 580113879 37515496 852883090 158324217 121713944 109691422 408176629 404542514 716754246 935871473 277650727 803105890 221462625 142069716 157312875 755865934 81544647 56671512 450829489 371453591 464127263 645008292 122585964 798831240 142493335 912216331 934540851 947711275 201885135 413925726 586399608 344422530 807122176 957774180 803560391 988330119 560584422 998897863 207985151 13772428 233403745 146074364 941317102 813842771 744066770 271913522 411377241 579294000 726762951 968926932 669407228 766328893 45619458 295439667 256479913 774414768 1069288367 720874269 57890512 81380650 261228585 615845879 504051652 606260773 48831672 917126341 205855720 500558187 395824208 275752804 83734968 206878155 551170534 67818688 302203716 951086471 106381666 662031235 322932765 32494586 997266579 925929689 565410352 487657827 602249085 359299499 196391728 160558345 869755351 1049223768 74277486 669116665 617148706 583519460 344996773 728182074 498777624 463090666 282886240 851230103 772936427 419037107 557465854 643621961 993808034 254818627 833496591 1065661011 329343138 685686229 821176943 822531386 352707648 938438146 533889437 607478091 1003038174 295606589 393235021 181611213 1040362613 993311961 511212825 462904340 276772875 764747097 72525491 534664530 734486240 518182556 171606660 421452709 662889273 260991259 24143022 436573145 110063233 438941240 472508593 823158647 235781269 144790882 414553238 23812044 261587063 934439759 580294068 189848296 129568696 730865430 869493400 654362274 1051175259 234484464 834719099 199413154 1029788350 770258495 919756588 390392379 1008818594 827059936 954257887 82749060 147445131 776933981 837529784 823703204 851748653 373333814 562305193 20337098 315848496 240121032 116271246 960389180 107853579 256179639 986629793 465666927 551581168 214910029 348855446 237916879 457913754 24199056 186169931 531973951 777437315 102739599 1010881432 180179793 193493879 1054182654 645458765 6306623 640593229 226745803 1005472484 130557701 810626191 473269002 936965576 26542241 748691581 639223757 872644442 513913388 576567084 788798334 243162244 243498841 63288712 321916743 927561333 393338710 369051160 651278593 443450887 220734518 247572627 1066960287 950941665 814185291 734632013 583709322 1029195640 800430974 683394576 950955332 604824036 224538779 155233140 548305860 605869707 655227661 530282596 912727384 528878885 806053519 518139867 872559227 368383100 36094357 6589629 103079745 816204814 900470841 234287107 540562137 979880488 955760412 259541232 310166512 369453295 55223187 299778750 918676947 892179911 150353676 247583431 1052272813 804556714 702289189 247394006 739959512 629744229 622455673 1022336548 436341356 1042447365 839939917 829072131 1065331526 1003339327 503434115 594440690 870021378 848641444 38544099 561900116 62577161 1002282953 848437108 430503197 629088658 43298910 479993554 546838525 539449513 288930985 705636015 200173358 855911924 943182794 511658647 630817314 510765659 426179603 411334805 875257568 1016742785 310410350 207276225 264989069 213391702 937432654 476320541 984388152 232399983 730329372 964379642 165216185 861408219 805898581 945160679 174518935 107178671 820441187 603936057 819330192 411176466 891408161 470051132 273038061 601919071 679361437 293942206 692956357 297218420 697720528 83634589 723867880 455865665 456162393 344778620 84563092 159280045 874579980 1012653161 836527762 166283250 774295407 127438674 668799987 545861206 353669228 626661837 976411422 321971348 94394765 32647281 920623116 345968943 577643233 1003734552 241813836 165387480 104804782 440948990 602666384 476830212 450238371 524454199 790730483 959007013 1000992880 85592324 893098956 561619849 98903260 1042249256 351184013 263059227 550773097 575692060 357731547 719187795 770260280 161494759 708982544 436644656 843733370 628031910 1037057942 88904707 892434879 866023934 449310284 499914472 1069171875 738763493 243336959 653201019 770734073 75377207 860230228 341933751 958189452 446326341 905005988 387337284 392649938 122800310 1014198530 202655371 803268191 507826242 314587809 225782415 415826725 575452659 407862507 789480382 802173984 1032633243 36320338 907974538 694676610 323659682 593170167 952631195 844727073 1035968167 67353504 664117828 223788599 860154289 191635281 350088241 9141667 1053275322 984273066 633442856 621623670 854828076 870107870 587926488 495994346 1065885456 156243662 292367746 836006288 868606659 39763788 812359157 930736587 292297926 600362875 94697800 291857975 1065189868 497576340 607346971 791413712 426606212 1066581166 144391516 396614062 310061999 1021770099 1021737933 92558837 911984495 501103564 898543367 567733852 954469714 454742977 457533113 754301151 48249698 1037028549 928005436 329888768 90120297 305248869 145963549 795161571 395882471 778792346 205924271 800309483 428750947 462412264 471783919 96127883 735045236 942888797 104390931 141121071 927298392 901139245 921148947 697218590 33101803 229921644 343148747 991438341 77227124 656590753 117209633 775429986 46244248 935129849 998163585 1006617439 761698483 742376147 1017643409 611556894 390219303 456428718 917384522 735278901 148109622 1063047298 241019441 831432029 1063007779 28378019 1022335401 276735099 125311478 675104226 219970750 1047055515 624900606 246588503 207397888 396088919 182265517 1060662053 251268031 261281969 266980873 510559672 453682209 606862128 926452705 169974359 447971584 681619603 293655068 229418665 1022182556 414546993 429410219 201279251 1043950381 284990504 948747075 126956834 9196207 282664871 602414595 21428257 283143933 899053075 609231929 51945785 68900701 269291161 2193218 700782293 592793885 362684881 511033579 97978596 543433176 698794522 438265572 1063822744 46737493 895423657 542250107 528520020 1014217875 881923556 267963082 189937478 506112189 384652409 686913646 790421312 607310496 383933369 184104675 143404563 660870226 199909267 595473570 186323122 215496668 146237752 658828945 936464267 224812474 656864644 390595361 747516756 811743079 868315745 239986857 417311902 620175529 903220175 950607371 42704100 954971790 185229502 818294649 710838751 757641038 698157362 657334576 584710653 499517678 419978536 873369979 142988571 1069990667 739882880 8802591 370139709 941756130 552007241 79442641 499965262 216047489 229795396 290818959 717708556 1068651179 1063399041 348281287 136014338 447313236 838579048 253540901 263272499 283654093 393382907 252778212 913248410 315396405 69638348 870457997 867785786 516710377 230923120 894554784 361656376 169936970 900918255 804863621 850518824 611638163 22032129 178765015 153529155 930583769 1072287556 594721672 174926233 318114693 461595899 303811566 1069050488 88794811 968195237 480593497 93927593 576260849 818729335 614320504 284157344 1015018428 862758071 1072724786 279885036 1065365469 843539474 959157956 439407097 346771535 447118348 437681870 819318372 349927148 48973614 684286577 754932454 765624592 341953052 65918244 713420138 868382850 1060685713 995675449 876263083 263690300 799798790 460266263 856176425 982705650 1011871601 413673176 21279653 541246633 385163131 309354790 14402417 666522259 400991452 14343213 1017665789 776764900 1051867796 370803293 723618036 243769511 27573282 987231233 902842966 78314739 172690975 1007699801 215505869 162175668 1039529148 684042304 37159218 54392676 842553579 677809767 407594805 767815796 627317503 299339904 689997654 633050887 996000491 563717835 512462668 865903768 280672688 652502062 230201810 603208218 594216338 998944615 861018767 236030608 667570066 465368938 409925394 217448149 413925052 93890398 259599092 188816730 701549356 218354680 766207326 539756638 290235559 94970174 1054574201 685486709 246565804 210782607 939348097 384738019 721897951 449317927 419336555 150911213 728415077 496857376 377775533 971422340 929887959 521985762 16837278 853524818 514018136 357990710 51000348 130336042 664384493 282772076 197959496 377210382 807163776 213070463 906558716 248683021 270629440 182910851 793298182 969439141 296902862 15644747 451441896 1018927660 173608802 1005533437 605006578 788115464 932986542 1006910253 505705667 5623602 28083145 953506735 189657599 384761307 511447635 508996576 391178601 699464020 335991096 158834239 122278978 968458524 99902366 749864675 331216791 422159012 448908074 36982507 271082161 215879970 160368428 404559501 407012419 327094800 641448129 642451323 655410616 682275699 550261012 583918601 736138763 185816907 440157728 279652429 801182742 508258657 198126262 1036975280 641801967 738447443 512095726 829193894 892760899 603618386 269161677 928277897 670331384 609569116 33284093 906615973 423277677 618695612 572468105 682260151 1015597441 618208048 614662115 523367522 994403164 527251510 996782175 118421392 777773867 132235549 866756492 771912381 29381521 138619861 479224999 281914174 513943271 969752157 114238564 696022763 1032322490 541288767 221150002 61842438 300817925 274306203 13443295 518253522 203127027 395133231 1068766654 966505487 895854820 433982403 721242072 705176894 311378979 438005625 64754835 946399044 65204179 503278049 183290767 231338184 735382162 862490158 139652953 514433617 610914920 183504857 20104347 9438559 212141762 653926799 290430612 662380706 32761471 154658165 4486005 1041817180 177667898 633500775 22550168 873185666 463943763 513554457 935887602 525439415 1010762576 98749557 150079789 538292325 550251413 326749654 464940325 1065489511 114784235 373290657 310249048 709953782 709370791 182604608 863981462 319495579 286969857 151742933 472404742 943732667 542483294 27263907 907017423 282380067 31924841 141153789 906447442 633827638 678908381 260858630 309350947 139035406 894001251 979124029 7661741 1045634273 95995661 910569583 254921807 7151130 650659363 284917513 321890170 572693482 858797277 268800529 602976269 496822153 385159674 942673507 360987978 684043222 168322527 543995934 1056521813 104867013 477824992 670005933 204985582 746465913 637099893 761574789 1017668981 447960133 720848439 271139845 465917251 91387274 835691529 181504975 222321531 178233272 458691042 57941480 468211297 563102132 877425433 1052620217 749964012 786033319 587606664 594200003 564615607 169845836 816399471 6578443 154819372 759378464 316535198 478451596 57672055 530517118 614769771 1065394563 812516306 104898714 370088056 606913300 829256957 513505865 192173895 673952649 702968377 1057787271 655144384 809525229 3499373 341526552 1001983083 657137325 703165691 653373521 401153568 595486517 476445179 631885855 74085339 474899986 168355322 160962094 433720390 338815166 263427570 700239280 1041175083 484793715 35975432 531268068 749740589 12769005 709721955 260130321 136323286 756935994 550327013 366202225 989161298 561553316 542038623 478326937 384724849 1016685870 869722459 1058352765 630774712 877854010 132308399 653104768 682470575 617363126 626217508 768287562 870679714 239308853 132582155 878091493 630204900 135358667 608237136 983652754 853613802 175227760 1058628599 763063287 266792044 743387067 352951059 131149627 395432046 497186223 993926528 625377831 699588333 176498754 662770158 192664425 55571073 833930992 980810367 632272370 904516322 510495694 827778610 696749357 908363519 572351610 317900367 1054291030 83820348 607322633 581606693 808955513 953217423 342795948 881979757 157792519 272868594 774940939 1020664560 1005816308 613145310 626992883 351237698 202160558 652301983 198525301 1015458592 659782979 1028044847 512325381 94634502 36860353 1008783029 29281850 747965219 582719074 959479743 203906533 493374141 317549651 607729737 536127961 16024406 3979236 263042372 688656188 986047959 604544626 947946443 756061032 211661371 249717471 359882149 921918554 569021705 903102399 117765564 71368654 531713838 1059739854 289802941 437718084 145084012 671987276 178685228 182779422 955083334 621629653 695956696 24905516 1033694692 149639722 588474871 549367237 545523437 570123876 346431820 710503520 1037198905 778065658 632028611 928020123 20006478 425168764 656528339 25732851 161319102 797618152 83369392 988735625 202816846 191816891 351370730 6333179 37430590 909183939 1020543999 358399194 735581997 792432091 888225838 247022255 488556930 215643559 619147324 277610151 138738798 88793936 308643288 834802999 667082214 722054190 683552440 582409842 667502630 1061124278 399594981 699597083 447877127 767242943 191541679 235338418 240584776 1016648697 1055424593 195900606 476233221 338445023 811708780 360743917 160533280 58378534 272594808 780815546 514542935 66300617 1003132531 355417204 173496545 48154955 624635292 459715230 979184084 90153374 479860356 409805846 969198093 440591591 879594817 820310554 223216519 349080210 853731780 1007777766 25003787 655704920 76098664 703510778 247807444 870349775 312183647 221623276 491068153 706416261 300053084 401154152 79320441 237199165 234433406 125726894 845678575 920056014 1005922425 839548700 219017449 874716114 271746567 252403062 809107477 821422452 978011630 943707673 386502618 521741766 677850098 130651320 67136172 868642616 626668560 159192048 998645084 117271979 398986814 642899091 28244261 542402203 637344055 648248322 581420272 265846033 727695116 558076242 973415134 370143700 732188207 666488273 238347824 556431864 1001335789 314148185 261881481 216148760 222152556 155025757 618079155 846454958 422270081 623049510 563692175 615312745 170143718 132314454 341248445 857344047 209924070 868150449 808477976 686122717 133179480 810096466 835318644 1012148162 754208588 897977012 578401601 239767436 756112142 164579134 443656592 978730641 522543257 9867070 842916606 410474268 267965931 536842953 217256718 509175975 915391009 968660008 795059571 638550467 365932782 77788374 359137862 804746957 333888605 801348635 265184028 522132279 770765297 53263325 785294573 2837309 893368151 67155340 1021333406 799168888 738500816 67699127 192063033 753764270 1010475609 576805846 582412213 961027086 315955432 1010864668 187729038 320269731 953904910 671958189 962983081 815539952 159593975 702635317 950743885 706688845 767626399 986433795 798715673 481859510 141967656 199677132 426359039 933461537 374328239 229572237 814175326 153654934 1026805582 95166054 864639811 348606203 112826502 734676619 182790006 175639661 685434256 387941622 774322122 340621841 272932211 459270838 112506804 676010756 427145380 773094954 100400696 913037049 478314050 426776415 384457290 384878242 345886890 477432592 698713894 1056865203 304367430 722474255 150495228 833067940 884843523 756017535 760657120 891151274 794177207 607240373 823794825 941566703 138405336 884760702 582090112 22334781 424236290 531066871 268591301 268317910 394130944 770469189 377476175 1012361109 815015557 260058248 48922669 309023327 138416870 965525287 287665184 644207475 91977631 304320832 537150474 217963259 510849719 802654886 359262136 452569692 613959477 700711603 274067549 722632517 452521185 598811509 633040725 261564558 1022231641 867544332 505672398 1016799228 394642679 451057662 353048004 55678624 401933918 955546859 611583428 76579375 1039959870 144970562 241428015 417058487 347686617 742824141 808296070 48362215 1014853867 843616489 460487329 891831475 368314519 530287176 635632551 439938095 740222197 938924207 303885994 118021904 626907803 677937105 8079234 300975607 770738411 106333289 932908416 857574516 209379228 441152645 492495325 464376916 800849905 984144402 555934315 782330457 163850249 58330878 444586439 783717297 598395280 767767324 63210106 546603744 813874579 920078522 174586004 797908858 612889405 111305856 882230117 529477599 743828874 576983277 512101776 343962614 887151280 19041129 896913485 264615501 906619610 677731351 611005442 437713678 317023010 732778142 188121706 123042235 1043606049 879002075 965082234 748190756 250446263 703110819 789521434 47273755 547067614 841528642 724312870 759853370 752596670 231305176 77315396 249828622 95090014 484771398 649944146 390645210 804355628 835463138 428355466 719772 157745930 178380631 921881278 559307593 65662970 256672710 940916262 73575373 747435821 320121763 941740810 658923706 558229386 888542206 930209487 477019510 8526327 697199667 443887744 104582852 1053653094 913450055 680782985 23950659 387537076 584620521 753034296 456444800 783899397 667801306 954991511 474411691 891797753 500520055 12599623 648495245 1064995765 168490290 24422461 989529564 720665025 851864260 916701881 798101132 1018941956 7346894 298815882 378915 650387989 147611907 732088714 621207007 974566552 444688858 833044790 6465823 930808734 56958028 690281100 763148274 937408171 478481531 420999876 4089673 571219183 20262473 656211 418931005 632820625 25495619 986210331 483562139 103505780 90703463 585497347 983671800 780946639 1010316701 731653312 903985190 849518164 428189962 661654087 1037194844 288279145 631657897 861969567 173380804 985508265 674118373 245761750 397211401 565564525 22230811 139804374 141590428 566315552 359340435 1063794538 944387655 285406949 1059880298 516474091 673822121 787050680 682171284 613986418 478318510 306847503 520253568 826288395 615144209 626631637 709677529 677131513 81321320 249301959 14225509 798042781 60624810 434129894 399669565 775878683 463114669 803230191 534443402 459467798 791186724 916779497 36635509 241226219 45883035 94203616 249374955 185489747 648306362 313678038 732323929 83792199 72866457 33501613 297235601 885679937 1023994920 448591100 435871328 165417752 307876327 418619374 679522484 713534849 476010372 207450085 697111691 444817722 1007904069 74115178 827977662 414762298 141771242 726983240 291592108 635909388 613720921 79992998 1009618556 830059925 808674210 708902888 552078619 261199150 603396952 213644301 436338285 411369609 462544912 32475741 822806490 90122902 216607570 736066478 446204680 663242365 11650689 882525006 1011176116 581282064 634585758 127447327 312647528 476882549 937086715 523253401 786562132 620092770 284692826 1058400312 753937613 130255484 449989729 982865869 89768162 60827478 970504108 401464345 957855358 926021545 457903724 828136143 302723927 901968692 670804325 940466178 282631418 250205690 23444586 878848359 1042034579 985737514 752435490 312091538 678088051 336922350 863059050 265829346 214043129 1071610525 833016581 698042529 808396103 912854691 576119490 732858501 167854756 50510919 243228394 833869657 443172192 792514433 275371956 584252579 612268019 475052851 835535455 193236033 168395421 767280750 894466561 935193956 889342898 232223262 435828366 343853475 686033458 230062868 59437584 840078016 819704912 855533995 1016014539 542444508 933525753 907245914 1058009616 308164236 466418717 491011372 85922540 380164295 222156688 248756230 38792017 995466257 339849241 909459985 254786022 475908507 131810792 729625417 1056195810 1042302559 103844251 118697567 1006276327 54073144 125005722 866990674 65619477 522038153 904753590 748371289 1026109545 736465836 571466746 351399343 743016705 277719152 626340182 709623059 258333058 465857982 1049016937 22043615 281587632 291722137 683890097 726239391 177349194 794349366 1072462619 883901003 507357439 389595316 647708955 863848241 1023362841 957576471 912361072 1020138958 321758924 703390220 630095357 600121543 1054509626 115736841 988512340 494785384 405878284 300723839 730822508 640000220 396196214 671930378 444758346 984694072 318341621 755621841 550223788 857467546 241646382 966487529 1046379639 580044699 566854815 695151595 436922036 388343247 197296495 917625882 444713130 393761598 219101109 205221097 741194096 544892850 255305886 795914473 99695150 352328751 183231306 637386804 22686914 44681466 935520559 394390389 219881322 625248969 42224498 394598946 425678270 949532524 610409435 7155927 927164940 816615489 68544143 159671887 766628017 347793904 753150108 714610890 17970008 243303825 265762943 631401325 152363545 708531402 813610922 942119494 1000688615 725275514 754449755 620226923 512712255 929385269 668623136 662674515 920655852 536828832 685661492 67692634 330391875 424047357 449564656 177546468 991423931 907063413 8268394 1026939813 488729012 815951837 200590637 411606669 799646017 47482997 896185944 24269929 125611135 624778364 530180045 645182423 501022761 767004408 557732142 792264808 592699936 832994293 160370096 59329762 448992143 391985400 1020300865 503279006 736697728 380062571 641514493 195194373 83104809 288540483 950400372 1021900821 255143618 83303714 256757661 884479118 758034947 56592500 640477227 515263946 105725597 249028618 381105720 884181789 695422005 224062347 734467255 670469857 374315974 6711269 706904554 661374251 973266052 268538310 177539187 941748289 44075612 1009793581 679436190 226734298 764600262 538610302 874677373 723954225 587592496 564162443 511981756 86129060 3806893 415699655 355614211 437300243 1023026288 391348082 150256370 950542838 373788947 146450960 66270861 928986762 690675924 204875546 596579415 85900020 573061997 576412207 50443695 95115297 768062920 939234318 168390735 876278149 1054104367 922075365 938387543 54434837 422534072 751454429 994609842 819914139 835930814 42185610 977667916 108168953 760094876 124401061 793380339 279784266 305642205 1040288260 96467145 469801387 955052105 152311307 375370029 72442004 633960368 837978157 248894521 426975231 779880456 680648449 235582801 73335923 896058878 537494748 265139128 412965211 104444346 529888136 447747166 425765866 47524357 89310908 950495631 623030837 25607299 205722679 141620448 732231084 119235284 777879584 226326825 203560993 978452045 999213364 279390854 864627859 367342879 222163911 602030530 553386926 833916668 48586415 436037555 1051972734 623661638 930599362 296611064 302517536 431639967 909361791 695312387 428839985 148034629 627777255 61157556 458153036 99639786 867109203 198385421 358447850 456385282 194037755 1051951254 207364431 540943706 269598445 468659812 159800935 417410256 761712394 672691277 216547073 331161595 1014329467 303733658 1014191869 762231554 376982792 786571906 395523161 874994556 315971774 812048195 123979305 889345344 920828888 645481118 396916754 732182044 1032941208 287814296 972053093 911513056 622163147 961930512 629106428 397224417 401707422 392478261 908561805 176209898 500523070 133152220 705669464 520570205 622005643 658677560 957846498 543075530 278218077 440294857 682504150 1017535577 842841437 82443343 492615306 141315079 506480138 631031875 780399473 744742806 372520552 824131272 270132027 787911626 114335857 274730187 963896255 121357993 50553943 324931590 849200007 709589224 89813608 583097114 1003278095 686179037 124508271 606045937 36642155 310967090 507141439 791557354 38861818 172354118 938667573 716104819 370782656 132940136 113562812 263093243 772673363 991985626 47746169 324064509 106632965 788994449 619523949 537827602 841317544 92131456 92010316 364300511 1064859476 478532301 671604386 5318817 763481926 465718990 500171521 670182810 896140207 414266203 846026925 678196412 390783212 328921443 9063391 833426469 202711549 931118175 90836618 394980176 312221681 485479520 231939759 168475206 1049421775 50619140 969495735 10321272 461740324 565376413 1068770703 181805722 243096708 472193101 87894827 803900753 390851121 39368453 211419713 871897285 303123245 594226934 323919085 605470783 389948408 598964556 99426002 248143318 988213498 9697860 973434268 464062245 98848100 136854855 241731130 956469565 159449236 348586736 1067755628 574618467 323411605 728986514 1048023708 258178312 703994369 772338107 46502206 1042087237 453207773 1038630482 734287735 753165369 196673173 929530950 987389884 551304526 342717639 66922335 507631901 759901589 824384258 920088035 925043181 28573173 812300535 38169068 818028588 1061853492 288188659 1009140670 887037906 873355327 108300985 259082484 1023152169 1024756102 83652416 798021115 275047231 230679906 426770341 386481696 108558312 644418464 800645622 837014779 850876806 833993491 12720605 684298088 199909257 1048756385 561910218 510640412 287913245 832843594 518006647 676091918 95570519 887828825 351458623 32304476 93569529 618316719 105647103 472929471 161703893 261216962 691933064 754388753 82938693 479665881 159495452 990675597 1013801698 683872933 297149875 488715992 763599156 786687181 1026511560 289394726 626499568 435828288 54344069 693733213 944266759 590913297 221241523 585652456 1007363933 972131572 954951097 165998071 19082480 857858300 276200496 992571065 464178565 1072821973 795254279 87148171 424618180 22057322 396846999 537604766 468103946 595712792 40384706 967525753 368299677 533642529 255130448 945466671 298495182 626656353 809246144 408407760 856124929 802065749 68608895 393827083 182841259 52218404 368552926 406595096 820564095 281584728 365616926 311081712 589235308 41124865 60524004 165151901 154792934 1069605776 756530220 889830564 224865109 913743845 169445800 377059700 129377458 113196640 72161524 108684307 390892597 739782892 107502674 359645051 534018494 857137377 699535899 402394494 624532042 673355740 265871323 653202607 261807170 294151002 391766943 581861232 181902840 484862419 151909823 247439489 411939750 509325867 639486991 262956645 202865729 613700841 669215290 579122381 219273017 707230551 957607778 308437822 841761137 548733892 561362236 44475601 452313858 162943749 68081459 659087670 974449504 37592299 87950646 641455751 857017067 1064213290 295079070 882744391 1039130423 544408402 876523306 128517332 61683863 930771854 967781472 250561974 95604273 218174857 1072896378 733761969 1068010433 665413395 772943181 968169401 279167592 400195733 180431751 899281735 874591995 91729013 915252028 840103637 747492295 770848198 1003722873 505029321 386863000 72837739 17862636 361591749 897151021 783758386 182774656 671427680 326235463 445222207 871297439 521723853 359528048 944568036 912012566 95092297 108235380 675526108 575117908 474831731 804644585 271823528 1033523346 521606836 715925655 981512985 661918255 791983167 279172546 1024536783 224115639 206278217 378216387 809390480 208177249 206341579 129731648 795286267 1027070699 491820826 101737920 393384913 981746402 268360443 524583956 139027115 637103705 399381087 1021798144 871238616 727939477 456759025 832990990 1034758706 818668592 598038919 469443102 985691561 412206198 480186134 700588208 949194985 294112657 212580299 590743942 413260573 318489063 865542370 544327695 677711730 754993126 132986934 329123952 817861584 39757577 16215229 223239576 822441016 361914599 760342839 141923130 441638635 632903860 572075532 325103636 815401671 300998808 694831368 580835361 685878032 407135205 922525593 832809948 693006831 220375522 780303450 104553626 429727857 434189313 753408959 830990384 221413265 848306803 656061402 684164056 93822362 527378921 499457897 957662161 23435277 205015286 1045916730 430162851 670102826 775901894 982870426 90400283 284905131 1067037071 995918058 231808552 840185886 368580065 103730425 984836762 251939588 97007062 563098234 606392832 283447732 831262188 499003547 81956046 214750745 406359583 98669208 1037482093 439882631 423396899 366332062 1047665033 680277428 453803364 417166628 389555644 154911630 843156005 433291538 917879080 593922231 542003311 829287089 355448678 1001106919 210589021 700556483 901283390 542450775 985932365 321220465 115658123 403994423 214243822 610413611 523620279 52454453 958707125 737461797 921030079 601845225 310733080 265029243 17008591 282955375 1049174308 752306929 1070160559 987359297 659707521 5948764 940267203 550939777 1062096644 725656624 377120433 709129057 766154491 896898674 26859063 21868691 887520765 1007863500 130476690 996069186 331747042 806153083 579468376 912599785 82280753 421517965 106351978 821940614 598720246 89488346 213356851 498564822 984120622 231092677 107626328 67841298 332334323 377078380 101633551 696707296 627139821 141871947 325165878 1073735488 613584751 17832364 365298607 796991988 650450230 638939198 1002274110 707683749 975034944 880555245 589798554 36035128 19608774 192202322 557512863 48253854 864152248 869106918 866670539 1037404863 246297175 390126372 134068357 18432681 663306329 14648571 876569036 5488114 783898810 841275380 1059148841 732564819 704638694 465766991 492539651 406197293 934132853 838535565 773858958 558065423 41027327 484702476 910141325 257313364 22653614 974765434 904447162 21364825 775302539 60672861 31035747 198170510 142592609 794246631 710430445 448129897 771786761 67520107 842911066 285455919 805687483 766899341 217954597 262333527 1068724476 895873198 1044011137 849430857 759100162 368405603 540727042 718374634 914616731 559041990 738295997 147668406 644255104 604839297 454322716 957224847 457714490 988952555 660484461 374500230 88375784 43735039 801431235 839894961 388486473 348954237 375158418 240989645 746326696 149681467 528736182 574462853 34633396 803704759 229903820 482083193 619943296 634501770 1032430382 764326444 480914617 1041828948 86298147 74911029 601743673 658555975 1064913707 781529882 595030826 971859943 428325098 11902068 81136693 1066152206 651468041 450840685 399036898 962770106 222664030 593192938 865693565 1056784287 530934020 1030771254 309635503 153370703 646564680 865257057 628425684 238630353 377505300 151798632 373813631 413935516 657752935 329776968 133949178 296808224 305998556 149099170 727143306 330261358 531735237 139191672 478814811 61120428 4972154 435121006 731358764 491872101 479698354 445256888 392259918 1051246349 4000116 94205578 1011780402 93067263 622849559 111096445 63064887 574737837 841108087 63634021 373087975 923305028 186202244 19873927 338604122 3716778 156649549 351675085 260765326 450394418 372633709 684227569 1034637650 538962008 209183619 139188390 48621258 1008935399 543214999 579059081 689799443 1011670101 401885224 17217496 462507970 98520475 1072351674 84196493 818211283 228915085 1042545588 774646211 332342201 509069504 70552235 137684201 359288601 593674754 658939421 994343581 706627809 1044304510 675346616 31128421 3990761 181782665 454864816 997833176 971250537 934429927 102874809 153149959 245731702 615170391 902898417 517110956 681625263 525995539 79043565 134711812 777371228 672656398 430727408 865645221 424782658 369495225 430586838 83913055 353233888 178234973 4259346 101742127 688990357 318314370 58819975 403357739 451494926 959776528 896259838 64335647 551929382 611141103 560508678 291564338 155906762 520058928 332606188 299373532 89362222 317080214 88027806 803987612 588224660 79289665 49428550 1044271248 439307854 942024973 443514619 963940011 1064926495 858732257 449720031 642331092 714635281 56887926 934261701 775859578 633486877 975827601 641478648 409355379 863118309 395510282 314531743 141893945 90081756 525835291 946931342 85062593 959046612 191542889 175861695 230329136 427201139 1047096629 570199239 713933296 85525206 746489693 117586727 409818357 481231593 314530560 623116765 525165799 363098081 276784941 866689031 869348893 781357770 18679743 46410918 719946103 401904029 578088152 626085752 209577068 153634849 388006937 236803069 105974215 449460304 183193034 702266162 735495936 343464039 243514812 633226174 318355683 586400500 969340894 716685669 562700085 119428901 795071637 793475272 979219970 733645673 333706701 411080759 35806729 1046343041 369535114 815059106 55585968 1055009162 697991740 77275115 659440767 266136466 360581362 631508649 635666967 390330741 572737735 883516822 408650485 1012989306 1056602122 648909187 701102408 596477039 226331972 225306806 688748669 686592706 373481447 633683206 647367097 765822311 144964267 136788163 770044696 229094474 693195320 576785592 758068239 187805787 754504498 161776825 526042687 934227223 196603446 142326572 878299031 702075527 807815390 11459472 768702548 937843880 822089239 157243537 396390985 150711227 502712304 1055396510 427618750 192066618 939035495 292591620 1049076463 780069137 709771403 154812817 216466193 143144049 457528622 35804132 1045009518 624502272 636024415 284982086 53990514 347431058 617842532 22102657 889066667 555810139 1034973516 366451687 219472689 731581625 669620350 520945401 1019542241 939506265 228986095 43022510 13606291 251926604 909580309 356580120 1003281785 133168554 966434317 647110733 861129346 280709426 966764959 159684845 715421106 137816079 721186367 602393148 476515512 275455494 405180938 335310070 915674233 23506326 1009075548 757499517 437106919 710246084 540417507 459257921 417213546 581069308 331970552 118782794 60709360 248099085 60967494 1034589353 949250253 85749221 31362663 812410806 597370781 751342126 570239663 981900832 583207834 913431442 577077060 625904414 529470461 662009805 1030939451 737214587 837801326 124468551 71640926 564065697 342297744 596611823 900513641 294265145 994125914 777927679 669874279 295335195 467674479 950299126 440606627 642229921 585867507 323816344 616202136 1033795741 882793895 515352799 342956200 706365242 581073049 952679179 345474362 425187395 639755450 458368630 654653751 931512282 554591891 465758800 243244437 693379546 117399501 345162544 834219144 389803723 714773790 792977650 347084551 669098625 619775944 825819202 154904887 573509240 84034493 593615004 625558463 485485679 643266687 816510263 390729419 526709942 682896774 782663673 67076673 843190938 830303493 163493882 669478715 801132821 1016798843 384055517 871469804 907859791 711867816 618216367 956412733 219990816 886317844 70258897 826026222 1053212 351930650 598041937 253896468 753927869 355506899 549728551 293087150 888748954 905474261 22296574 834342194 678977574 449661944 40369019 671339000 65189104 346168454 518458077 239795292 817822780 476963472 43650511 88215047 825086984 99163854 940439486 77108308 284646327 655229259 494990595 90989907 347493423 392821885 925453441 694349328 982165814 706713846 69609691 554630686 637353025 896030548 641561242 717447369 701375178 80904046 8407186 380768387 926466160 137523903 450308812 1011961241 323773862 273887414 351365794 862324390 540134770 541417522 976692066 226582410 797895403 543302667 241668933 664552117 205402332 235428237 355187836 354201046 909525331 439934031 927686877 506854120 415937382 94949765 1019656116 1055400397 22430120 587493603 758732872 495307332 1047770488 569622100 631758715 628666237 981175248 954923995 594934405 1003334134 103989485 753988033 528059268 70950979 903061287 215476199 736182794 974068136 860634864 859084737 41828517 387582044 476424775 312761946 1070586692 127559412 572084748 706095387 902348514 47922940 1001365602 966430779 642767985 896778961 999890253 540713312 124049109 53589737 232000240 1012431435 939719118 31583627 958179957 39168807 752377418 323417496 674913176 571607555 514567121 1017383941 923654283 462327802 733287943 8659363 326820214 286166356 244719586 487688450 598696417 406343162 563789963 570724234 82119199 120397978 386927053 430546037 1041082233 406923536 620229761 348712771 305984021 97745792 423799756 44950803 1071539659 40974893 19769002 343971407 143417907 216559958 1046124097 192667495 412274913 68059570 934301600 41715913 453668592 299573699 75614484 217355855 1023790145 737032588 153565744 951172336 1017401454 560889520 177010588 134696778 575009940 369712972 910601765 302373103 880292627 380521890 337345404 497983557 421853381 555489045 635153928 53777246 149000261 645094594 112780313 359329320 170175903 1071934996 1066307032 917949154 983746987 373730886 596637387 763721447 1001056277 390828722 925627946 802271512 923344589 1024320123 1037914597 33016085 583473802 659681860 451911649 691382892 1018895707 362169103 538896661 266288260 469336916 657551460 316928280 857759318 971192291 543116280 48323997 858836128 260287228 557340602 809422031 142789317 1000434250 118068088 345397445 535204018 220435226 169920301 649301906 333958754 19189209 78039334 107984998 151623737 60554955 642579641 208274048 767222024 725117386 538406119 801814460 149286296 878018591 752297824 626086942 12265266 837251991 943334792 617402486 807694852 648649190 990794056 677012431 593175118 246518517 132059213 13785386 1008292770 411247829 832980826 274228331 161073782 732093426 906395393 140073637 382604459 102392028 547601867 25432945 390718968 421486546 694315872 836206882 915185538 286427439 305790209 926377372 340445623 322423599 559098643 263048374 490665375 1015611510 167082460 918653134 528261068 271574408 572167859 79098894 247190064 224025813 665458963 516213681 968080231 158048406 451057892 793827917 842508764 1048377744 250122959 751826729 910867717 408859896 545678937 990488175 422702499 530621983 926756527 346260657 538923222 702105644 22894896 189075702 2728869 888207673 157955300 104819235 506274980 275246002 379382258 174516052 987042561 723926185 830424483 366750320 523263771 891078198 311181873 27548147 49151856 534627569 793528947 800510805 920446072 1016277865 723311778 614363445 343038126 834076474 755089722 147412908 268658265 326767737 631344600 1047991121 442139626 380180399 174104822 106668351 790845177 654853531 915071111 954518736 85137948 897917483 911626469 433262407 249486243 85488459 1001733770 636235043 1013301260 753001852 1056336951 135793116 314527837 516155752 501958034 775410805 877395630 61682971 240190685 394791156 272941060 848418241 685507492 144030264 874295411 512077638 88106994 735691719 799381107 976377444 796275618 614877061 155014829 573369318 203818659 260884143 840580782 903496253 108940994 403994140 114108720 814436720 717142419 237406038 45665046 880622505 425546034 909152618 470530932 525227432 58718188 893894330 499000210 984817356 572378498 177195821 1041906879 763266693 1004652061 500736402 288370858 855274404 667563211 505820065 705987466 54866231 708765908 875417191 991045183 536746592 196985131 1008579718 557435061 75048795 285688063 1011780450 344139058 329248873 830022737 612100188 921704604 112400068 935329548 356420874 252904526 237993105 93776078 147639001 935717682 399277192 938858422 887396394 816679116 1026979257 150532806 98649044 360529698 350727683 821243156 71613283 761813545 555761245 167961710 700181475 586954735 172989534 13799144 171237560 211964027 35926020 1073675298 701188904 539270562 747442311 179799288 817719379 228539643 1003122809 917874978 3969505 349147921 3896309 597741904 299815984 909317256 812667469 254039257 618947043 983509493 720533052 173936614 453546916 116611556 1071372111 300008324 863942526 154199395 69188967 429561923 1040554597 852658394 928294529 790606527 140447018 518123003 254285017 768552890 32757649 1006680415 593690762 345282645 631832511 356519874 687629512 302762465 72087939 475695956 621780094 582513973 687598199 50701032 999041926 368569188 602523795 514457344 924639088 94169293 439254391 956060372 97321910 887371741 75041336 1040935996 988823181 305413028 852983562 966573948 640342877 653858815 410392056 418665128 212981403 780067329 508204 864670958 372124801 425930583 1002864463 650754484 727279840 258231353 460427494 367161442 520039758 487630015 876331403 914915949 763583465 249638571 194766303 1039228593 1021547793 416829009 821282396 644574310 736112734 317160598 1017619951 41514108 1046611151 330776438 722719884 78044032 291852041 378227952 1040048729 295011211 497191987 497680021 754777706 1066994334 1023998742 210425323 199889646 615093236 907683528 468574042 625646457 914418506 961832875 429290183 1577847 442269510 282338840 85349705 14208207 1025065849 330996058 468584769 297260011 120224458 851635373 869132485 18466116 178219234 363343588 7659105 752972800 757094168 519872689 557996693 554722083 1024306900 242175877 336543442 922475308 611931088 693364178 877927573 317269204 301737731 724510051 394762035 454192860 655673730 271563014 589641054 636803538 1053221137 1060292893 606628124 536196303 616028347 188931170 597577092 883086210 446752767 447412254 2435953 1059366314 23049553 714195014 612805231 923195951 399096945 100497695 656143318 168094908 608881257 624244398 501511581 687941780 927591571 67639423 1014927456 102753306 74923059 581859052 28882024 848515353 358744229 179592027 959870871 444564179 383804585 309163969 408642300 1066758585 123094193 872000114 513102571 531676371 90052498 166486667 494077930 844068116 793438721 359641123 367287751 75587480 915638991 276561381 1028554026 101743326 587911548 1060733389 1016228408 598140979 766767312 95747254 571158660 1012672607 202613942 958120152 758899198 58198333 837710684 1005992805 1059368659 860312353 419995418 427015176 961920968 338992467 880263862 224068543 76543956 131138711 20032032 652475008 734573977 1006112040 895915706 446170842 970933202 355412463 183460722 765990144 492035865 171711234 684654265 901773655 514617173 433591494 757435332 913416162 770493654 637876806 898533714 480192656 460464507 894495250 809698871 158842586 182988694 277386971 902869953 243061112 854137561 1046405637 159588645 689790904 717418388 18493069 443010493 492033604 554622356 422147013 214041518 525259947 270287875 722830779 838739564 410774904 820962194 971260531 862423978 470825995 150167145 250623489 959416575 423785681 145182336 906741806 848810721 8792010 619206315 541155034 279375505 281080350 415157150 724076284 313470350 138214920 435018569 1063171679 986981327 99347184 954363504 942150821 698553521 859245856 308795783 382675648 932977198 189541320 738221599 271060220 454513031 586194753 927606424 251212027 877944323 755087284 24273142 353124303 506722856 86058660 302062181 898948683 949684054 332299222 817577426 478773385 183675107 727672878 976605941 74177781 375457210 187937486 845568034 683073592 155402080 208966209 449861190 563152695 745126015 997530105 121790622 488951423 839940122 639292721 331332866 41225763 827997693 158424694 1060192472 810861585 1008184815 690691824 775153095 805869811 127102231 66234184 570642551 685559351 264173739 749868462 670244354 941037849 471629454 266630046 519842765 1005253227 296628576 749758475 242692467 250128050 581175757 994322121 17493352 583991476 399308765 771394774 236198040 36078270 118954781 67322548 543425126 578883433 191020674 1032818693 817996886 679413079 760400262 1019519374 440511006 481515049 181827829 37418195 798789902 354255700 417444589 1035943429 598626915 840751986 914691765 138615125 191094956 412095283 614086207 432701946 506366090 282077782 1057285978 988725506 478708834 204972418 641982782 1002988467 960947523 390630619 511436555 673260240 553675623 899070927 532189151 133357107 646171237 100210940 86016034 24365828 655485848 90595802 413881061 801367289 851884625 975023854 327846648 566115029 936424242 124335404 383478861 528228195 108868810 847247194 739853948 654031826 97970574 391035132 51633305 458313514 245918825 747627761 116293205 295012355 956205617 1065162879 676459877 613197140 385836524 943578287 500403642 958026157 221679912 158036947 426839437 670517876 494436198 480865521 521653718 938128780 518493708 288195191 944299592 199577323 85054317 472798260 634076573 107790173 902970946 873729650 733092738 841977274 182511548 63436251 1063883173 547389686 536164116 793584737 499721748 675547133 1036518069 566335826 852093505 722118339 214687385 920783876 357040388 790587580 50037690 131684556 235171520 177728632 223470509 611428702 294229864 381317887 385740183 656656659 223110459 62596583 142275872 417897189 590332691 802317593 865464705 794946678 999392771 911047979 535152217 842073456 232475311 19534204 148752176 155362291 968780895 367267582 547356157 898150363 321812004 1030127309 192431519 549913121 306731754 661380169 488214167 798906020 745894545 736268789 753693138 987311312 156179740 702144852 892643821 303292823 512965263 361967339 507361326 958383701 919452128 565011821 1000096279 509423154 7380345 252329675 121977490 664542777 262496935 805848892 375072780 65117422 809592054 592254496 649779156 1025031960 336713812 370146026 525339142 800658544 120440938 377101612 430913080 118574224 203903202 891368650 1023419152 292519730 506417919 908717640 340554011 92633815 142402248 704628971 852960371 639964510 700293621 235451876 263617558 284885382 632791756 570520130 419354604 6224355 499580181 779864099 303887243 1062696857 757680784 569567193 543589101 580916882 539229344 778765841 325889850 115053553 681216596 197429639 338700125 561491997 1029582336 121208935 394771373 469721326 494628850 653465302 469780029 744604040 932939414 58230196 270877257 993051781 417067919 239272336 38070041 84643525 115863830 73829786 647373480 506702775 141638433 475776137 14317910 54240681 370700654 705659419 673066595 215136671 942043849 780018438 97251391 1024581718 479198954 296345042 929892757 852208450 1055800740 833251044 957553357 82029608 738007413 438365165 207262492 807215171 788720071 1030491682 1064086517 808362032 1054146134 109960889 430988873 151180016 139690102 355787061 687993169 933230534 1019338657 284101692 27430038 662846986 1065654963 415809208 902668672 109882095 120385637 981980950 368179061 266412512 376627305 797973202 921222644 348655305 199677581 139395695 808182379 1060123424 1073018834 922897685 378775947 48602250 875488987 728578716 649878982 700029895 136780633 247070825 116536515 295969116 245738874 299713029 252426801 1048774393 211319583 332174440 670570444 955647583 8650734 15381633 956211834 978551629 565863291 314297889 723072834 661756247 486115508 139743119 748442037 565021891 830761148 926744399 172761760 12892625 1010596853 894208853 914263141 896773662 531324201 271464326 363028099 277267653 851543250 446844414 110459775 84479732 906171867 66823328 97635493 310063241 143416559 132274758 174529811 894119935 631157047 186568178 529711296 1069017010 14114729 226354121 460535580 583575572 50310929 1058389629 813614975 592454166 9290152 776604003 565198948 142218419 168693922 420234350 665137733 654151853 840824017 526025591 438583883 787028703 1036399955 364954467 494122769 1049089003 982094691 252618643 432512263 848120420 646987743 615456401 522913958 950043400 248902517 1058248863 124646955 410477608 250841501 110759918 833862489 1070566214 92514567 292269651 185105313 652887191 787212083 440193897 34586862 84217762 915176169 186595552 44176035 894870807 717665843 730743736 132445395 513742547 696089724 613578820 242250927 324013090 757248868 435099646 240531679 334990559 639839599 577925993 187039616 755496309 960132241 997544955 504505960 500029466 99441700 206928563 656005148 653314122 496986622 96815082 454760743 972056806 884292482 1035995391 1016786111 869081520 278476867 375552084 612612635 345532915 293261527 818268476 452138321 1009141169 256214329 532775970 1056305827 297069421 1027813511 437836440 564444703 870502497 87497002 638205610 241264674 866979713 1049879610 547177568 185811929 963008792 837994709 937839624 317392636 547493008 219801519 382707594 402556715 50384716 190643667 427383437 822927169 933108180 422392268 988352613 518292139 833754881 1031095248 859160533 192356345 299283277 1015386515 631620557 776154056 740203435 1063763123 837994882 24482280 744231482 1027842528 860256860 935150423 773409652 775864004 635746712 985549059 919344635 515333078 119297253 1021218767 1069312750 625674664 811791204 142995694 439026216 344021298 604923673 261443886 866056742 794437117 650850251 757302461 614777047 376409420 946537440 365680622 42612301 1006316839 52486321 264858240 97433350 510244447 1002027943 227245719 425815784 397999164 286831511 444226304 733025698 124514858 875622281 811297320 520257971 671712865 485665028 587487052 144994957 575137791 328415442 945306881 643914248 279735046 887769328 207668504 36876861 946105145 1003380376 202342305 959887974 695215626 580133056 837631315 138005112 912967954 196155530 488188112 175602903 905477836 1003889791 875018670 882455103 991611833 1016868464 447533018 899873287 196924407 653624187 330451903 690721328 158042967 277829821 861505707 761909022 609941588 133486444 138638164 883574986 582602041 637201917 635338883 615882412 893006721 223327525 858500099 251854555 750198432 199617299 577548841 425032153 943816844 116560307 895744191 794955394 364211400 806892515 908590763 264050491 990184737 673427271 776399672 810696834 626416487 719040738 703533403 378585248 701980390 36409787 728818141 710487407 104135001 140278238 91731036 68289491 917874256 2243894 240905688 987587256 472242425 574462119 942288457 58662359 893907435 862473688 475357084 675409586 508081929 1015290379 363730744 914893450 797501945 70349121 110711791 930792244 692306334 515942572 971809157 918321942 1068640894 887494192 760824955 530802184 172828544 841332755 806290208 677059804 341322269 329702738 1056301966 497584850 488193152 35641586 885642399 856429028 277741545 839787946 965678832 484351124 471465274 802083266 398269126 91133971 810252305 798651155 788900833 1064974334 304956563 186879937 291562201 152641490 102521799 455400295 170277432 42963380 358909429 137610634 486881697 38897630 365073224 899181647 882061592 845961440 1024229078 471498319 479621014 669337232 846766058 302582920 38034480 650976144 912437824 683219283 159545272 849363780 729786401 488119760 759743288 894787227 1065496759 75570524 18251755 771088593 694902158 48760834 530272437 531051881 972349966 586204062 585868319 929389132 162139805 203178678 747458372 912633188 236798609 607972120 203154094 363808454 996616987 630687177 493444177 66767188 569135166 252384237 681781155 127176677 1040232832 112513170 592734778 901651102 1018009530 1021033851 871126918 152647828 476989743 333182977 842780444 310274337 113821699 185110081 329549400 480192228 584655066 382938023 229298632 593121491 557445491 678462716 127651652 672933585 486207865 162554395 109514637 329448164 869316238 171046081 200281395 113621547 586603465 448693356 227796841 421357587 184511535 997892787 960722924 227057778 430139797 605118441 201074622 887084492 922275490 796383147 154946975 204591033 222308026 657665854 370347894 773459527 513046855 652663411 530701029 1023654115 652040496 693837752 675239061 199976634 343707155 684587877 56843852 460496230 277188553 873421999 264553207 582910358 808986803 206812490 577579676 606113791 557347076 1048865863 348337369 772252417 933373538 186302443 616827433 770882942 410418815 493318631 414255931 792819703 254139502 330326339 581056554 147310533 154898414 352858755 641772855 158719756 107392711 547350831 902923506 365721942 301065130 816368529 1023575820 287708889 840200710 152364808 622912200 937628773 700647078 973222072 936921551 154185403 960341689 212886973 1072876836 640045062 553757458 529828590 32652281 434511133 234047892 446934256 825890601 291464433 1066959435 512933195 879458634 120761598 1001920345 231825645 344501126 996603804 724637398 351465115 676978383 224287307 358773524 572099593 969234630 395960500 638484496 162559040 539297793 370146567 773861263 241351397 804189470 652476329 18280131 790081312 210410243 342066327 338676510 767587940 89669236 351660164 692415603 909240663 1068776704 364246370 782039086 812755960 606920952 622245480 272856495 306952190 411799303 843274274 430841635 183974541 139810429 273672296 983429010 566943531 879766984 27855680 787607059 943561363 147722961 199434687 1025141703 351290519 98153928 679484093 955565727 560263779 681819181 589409157 851086654 893309881 801006169 1027007283 166174045 90534568 426241134 266963797 931829463 508367454 769602448 388346765 891412157 589213913 448932520 686182564 802014988 311411632 1033195105 694594518 567031778 235610394 683076193 707433605 861091001 93923018 779206010 136550218 1049580063 838646312 671731457 713800574 874591322 734821545 689190591 41509017 995776485 993131694 373558399 598029698 888792145 879004057 752011732 16738048 1009193989 229949981 854416107 1035657934 537356506 58010645 224610504 187996408 691843937 431877776 169253026 243068193 981054048 213400327 429395356 654141671 974815016 1046075617 869004163 726447094 598202785 369677504 633959321 210034056 681678596 603358753 371698374 796858368 771413677 136837222 141900998 498306015 861360942 92026404 964667437 8475266 739422333 965894414 276273878 128414317 86221015 563077633 443811748 194729195 679642221 818888151 214184833 534822066 876581015 597250735 12092062 316192569 661250029 1059835473 401208569 970964608 864418176 540750156 192081812 566199811 719426440 202195837 500033185 315946844 1048985977 1052073768 382789995 78090640 473350784 781425381 651111735 929486086 475936914 8581820 636686511 437030410 916308583 105019949 1039543493 397278090 62805697 935199315 1060399793 705923621 94457863 557206024 311430465 404272615 668412892 212601672 793093306 577129928 630043322 56459943 783531807 270788467 800097510 876376990 699491591 961610203 906066098 648265096 866278746 660495622 1003750712 274598624 979133569 791831624 681460080 785637041 532989958 672958785 370616648 246915052 755648024 147647693 792198220 559423436 795843837 1039319146 577622859 1050197453 997559235 696990692 1057291756 914266342 281877409 8482517 872998068 346473292 571236141 741823829 701564721 150293689 659875051 106421584 458265318 900454696 735699910 373301847 352301881 233562444 979812049 912805069 268504472 554227402 215261470 333568665 155573675 657109370 719862447 653208768 218068692 209472156 144722963 133057669 333831906 752654876 622981523 342348476 800278710 233723504 15865237 418964161 260099762 1005717296 438045114 402516437 396292111 529564686 1006206724 216894875 946698809 240438306 66888185 746404053 377224488 449169674 915557243 863693947 35932813 741235414 599336206 833494224 706918865 602408754 181654463 346235074 636920226 327372414 654116682 988864873 468423651 1014767888 534184441 377992845 785367399 152957634 921258912 409686655 852330176 155748923 969486468 366039526 277018516 21428713 518889686 756506527 684965507 509841623 329271568 17735945 575245856 533670336 46649607 478350546 298120460 1024822782 167801554 488548397 256721313 526816403 548876607 258902768 835742101 119001582 816429938 527326332 643260320 385365423 693715832 385308857 603351502 488471615 912771609 551758536 730155839 1071474201 477548268 596430489 553294168 611869400 405312624 527362982 837060932 621060816 62027371 617510848 237639099 816370297 835396665 136401699 553860549 383396061 598990524 625076311 594875479 695330302 473254458 265426001 424136511 443091787 753945907 353190824 275273904 606411537 976808560 136069898 840211010 650430446 392525999 1034365997 304906247 465253326 524036725 600208208 291689177 231328064 844564468 577454773 242798787 876113629 997496643 837614484 1053610556 226981740 367889186 49944372 106462910 112287069 834370355 362001361 686851930 975832161 891645873 100457215 546279879 847838591 695618358 110459967 1003691806 10133459 346588580 970702657 970960244 588652256 873919274 898283735 607927301 78708180 957492773 34572069 833318688 846903272 726818066 1004796212 335620046 295375188 411698079 1065174407 238628996 649728667 469412454 420408988 345690161 525557236 522418340 848035548 790488029 258088846 1003291782 944505597 194014505 638537463 639463987 860545417 637773059 109737317 483592104 526358074 14348688 428675857 263086302 1042236962 564165937 81685507 548968093 349562523 79874479 75437343 182669171 415134954 594148215 257057919 762255482 225102628 254952332 295714246 772478123 1040761659 471198221 1007275760 779851471 605870970 84123659 1010068826 438232773 134515614 432373803 234491857 1023591859 993472943 100064697 117186879 967360891 317197403 90856523 870143650 351124408 710070582 652071406 1028542281 740047893 847149887 694759226 861540089 76300658 437831453 602631653 909476499 80246362 777012966 486065589 769118445 47524767 282581903 179414713 754148771 946757427 55573721 696569744 859922216 564998888 573613890 780756770 131915651 167828474 987470168 83471232 471312349 40884369 1069076195 326804797 572376511 163495861 270081831 49307648 166303404 469901004 757806096 499169606 70973014 138233141 338885015 96000429 210932121 787680292 484012527 698684161 635204533 357856237 239484431 383709561 597365861 146639725 917777606 256184826 986843580 911941313 507799437 618648639 86679158 894783743 92605883 885819617 930124165 102233183 797173491 540502194 388066398 255616023 480018071 1051938416 895521645 869397875 347826431 740546194 1030317102 835807199 353909633 668326219 784683248 255055522 269228259 1009440681 1017093797 1051940845 465350940 152845360 346857655 354861110 395895372 941313315 34929054 588885300 845202426 335090608 160752117 747939181 350885388 801464077 388811738 534450491 438774161 277665107 442914957 579382783 754644909 301534809 773618969 861915164 139117873 978301238 834224884 956053256 411201478 558895775 690517902 328330286 16640698 125347298 695187167 774601520 625677960 222903880 226427440 665660515 992308559 1015308295 660713862 418748450 321908224 642370497 41767461 619928231 456750192 659413797 175318667 108850579 777402890 442006481 112672869 148048180 195356274 90421604 412683827 235446500 742111986 69408714 184673365 570993262 630937518 320449221 443910100 417484495 769036382 344264565 715485624 167071681 674914917 738605925 263805032 802325245 262343516 326380133 749769008 878837724 241109900 580829071 919901801 854415123 763992211 239606608 535078238 125267781 633020155 267803965 838042603 593603199 937460179 957686891 778944571 651117701 101313945 411944728 141955035 156736525 369577392 146878334 229016959 330499482 455149953 13368017 458666107 941711306 181839483 467410056 722031995 537096243 589384415 399598934 1005921287 354900330 947390700 151150198 919546593 560381573 381249660 290185540 932533639 1024746088 445345329 853786770 938999219 906337122 848968691 679138346 162438216 551475632 819463018 65486597 268393114 1065319979 855676583 523350045 782434152 483720020 684030854 825114456 654926195 645221521 549869722 430219611 474367805 286966252 730730277 115074985 832793831 76841106 855678206 702967523 586624949 870950799 858893935 17240678 243950994 783714679 311371647 33825391 378017497 234281371 762589258 227838796 153376624 870815258 611738364 594150164 389631497 213619197 67595863 55374624 142187580 638193473 1062573549 261877681 998739290 917531264 981433647 922998708 675365341 408462338 456649879 308326482 328682096 574551151 308386079 114641912 848903447 284026294 1017344042 633516150 190879423 517991276 795840095 888366853 374252890 177998557 894087502 715776310 1066447684 443429014 26392616 1026223191 714131284 410225898 820529886 999604734 32956228 1062269791 19273239 518331677 970365798 837601486 137303865 198648780 337480261 1059416008 1054972696 541897312 117899506 512911370 698811966 227934037 850148042 486181826 82764270 320100135 777985617 664737035 592757074 284561336 268553084 320138455 143278121 303196154 412845552 287285057 336112185 720647374 313504438 995993679 40338093 1037826113 458141307 142112007 512036378 976998522 304502363 1044244305 195524841 191477576 970305477 48967131 661999837 364666857 909063370 693278441 885227402 929603127 663669074 68790302 448017982 184000512 465659009 579386247 415278112 172502172 403920372 895480449 793579362 242491816 202174281 812751881 82468694 948674928 476259979 1067231163 990526641 496086834 73861600 693139863 891763196 792050058 287767226 486896339 797885139 695782025 519446956 1027729034 693887564 227964973 1013628789 273197288 816095516 993462727 972687814 684529587 996622643 385631791 917236356 307938832 247225578 244433360 406410434 218706678 936552203 649920194 469911703 210000925 844642057 600004032 424395495 253834959 969710172 1014175020 691082557 275359022 388324718 312487324 973767546 828432692 1055043191 10822504 455818863 400360086 1002595549 353819834 665997609 902891992 293008039 38313857 46815261 754936705 917128837 473487963 723123205 370799838 767093776 558350175 801966151 17464087 907434636 544929905 705949298 941308956 440954728 831618339 133065968 544813627 33704338 848449016 254261271 376621451 476102773 1006860805 735585352 413183757 702005619 818533113 51348611 27972402 771304372 485679883 421317354 539507480 945131325 750270694 355184045 593183140 616594606 780513730 190114646 16924001 831662592 210849116 989258481 64853516 160042056 609520712 976624902 289193757 184583151 945799485 665246150 438665959 825971321 612512247 115454094 740343845 55000887 216005081 74490695 356347601 551530248 982311303 706039627 125915128 867567506 714411295 911012211 177309415 986064318 567461364 201088756 22045763 233635791 643429324 1023815487 960386518 1064944131 366820355 312012543 266774974 98417821 416159848 767031269 902493703 783851245 519214279 959745993 30741317 174919651 765006832 674998783 220678789 750607543 906830771 899949465 486717438 240828121 398154821 879963976 386936183 131952674 367149032 865710994 802177119 108279454 367629389 747580296 432315046 1068340086 893160791 591720796 43878957 568987864 180167147 461653555 138273688 650061949 885331198 800981124 380523939 760624896 223113565 34185835 372876432 659615442 182909637 237524991 15359419 809926650 675288312 463546620 776147770 997006109 689342897 392370563 202120355 780596929 77147959 478529748 839568247 234473007 176514523 930921853 813213779 316118748 837845196 929760301 443598049 137191410 317250482 127547491 412064956 494628917 185007306 848469366 88796238 449720879 89851940 629655640 86494637 1045713000 568866881 996995221 230430510 252424281 809969283 724757682 5296605 168529631 236756996 802990700 297476989 1007064513 770641733 778910088 567849646 607683417 178381756 144192064 883090452 514836106 829105088 302940033 876108666 428737196 844801488 253246063 728127777 766726491 50050931 719498753 146424421 537379233 299498248 835295342 930216923 137538192 406989974 505732174 626478699 865186999 300248547 128400414 562066813 195550553 812452585 108347602 1015367889 245361784 410625154 888991965 375429828 964461678 500687201 601420351 308661403 596686079 917157986 989209464 577397744 528279688 993631413 844061998 811909958 667295906 223060439 553849459 689693932 506824887 460078660 555358011 643024156 1068453174 1051714691 42780265 111666690 1035353406 258196743 908909845 555180034 777038024 565081518 698149037 928156057 899515752 796999216 110872669 403876965 839771906 1032548831 73143646 447337539 493766053 1046720651 74707895 511012226 982034912 773110766 536057191 896318301 579084959 677814018 811080947 832771289 520219466 913246502 655502714 148532185 1057996452 1045213014 79351643 746047629 174835067 508455680 175049850 61904441 88857591 723914558 824180620 12226618 249700722 287456716 914372378 13443509 1066738792 982477833 280402915 201643733 33891790 759817744 214468007 425393388 646016760 689781016 773373054 1012587432 524824503 384782618 651384261 75659567 192169449 661947131 276298464 48682232 666324017 885635123 68791951 493450731 318332582 943083210 819154772 554748820 811895248 723212141 964185237 919394410 957756596 739474037 887117763 902402986 118911723 402453581 934346333 826122493 604096518 709096243 708792218 70366568 588542372 470053722 307054455 94312817 230403840 366802899 122163178 880193487 225572671 300032654 146737361 873087551 594129167 725093802 197453510 1051125556 673330603 429275414 850291026 883619457 320693688 79076862 83597076 235657664 723720375 803521880 30551262 831778922 892663549 341485464 728152973 731352084 922781494 326775878 214110788 868191623 584206987 604762523 93431523 23327286 774813045 718314938 713328952 563770101 120810591 473732843 223604805 947199342 1061515161 462437834 232423930 552827698 97380735 864743648 44453438 658600003 823418552 511301972 673882050 1044139384 789692024 280742201 527076896 143649900 449841463 330054386 541352249 766259971 536837651 995282643 539940721 552731621 100908527 636798273 937862178 473950035 827210510 414267891 459811768 920427309 365174818 158150698 395760389 736101244 1032012323 586886978 389920868 237213557 227058663 868143685 413427665 632836160 422181322 920555803 674014388 169557609 315088125 736773695 708744835 74728645 826887539 812761539 377344276 177780531 169597933 862753776 620111416 312211610 745381352 303429378 399873810 42190270 358427244 658236067 679950267 365516074 684917453 468161540 95436841 229040864 413131625 42174176 966933876 552728996 110907412 916290392 884018133 696098215 520051861 469012545 626730389 359886106 714651989 251492150 748959667 939756093 463509006 763483235 1000265222 709519684 320211226 421160824 858038764 986519763 896437644 879909807 160183088 488268612 524415561 994102817 738694924 342323286 609097409 639573293 50675585 326999325 896519804 503093184 642603242 202141747 850271756 942688441 148884176 358723300 436583618 451172575 765080258 438570428 420870703 772706680 817232808 977838126 867656748 995490703 1030733444 485600850 842541767 188767192 762474280 276622485 647449658 220725371 842294446 868611095 682072731 781298296 904232113 709561047 913089658 499511125 617375455 779992118 103282260 716555755 1041194566 900215576 450103769 368905701 818529788 893703064 798641033 790356293 678464305 1058601826 768835742 20776128 436832735 377643095 159660236 658571209 321989699 36679794 128090056 116694958 642443209 911044272 89709636 244869375 184049690 277134640 194157698 763240868 652181401 95447345 858267141 953755227 360980983 1008380799 465432195 835351166 694977988 1037526291 807873255 976512176 17750665 877612358 174625431 85253906 669584889 74218935 401356486 883768080 229900082 275047568 961594406 857590279 856012001 560073103 268280375 845787322 664980485 195226250 863202809 385884685 366459158 385093797 738306059 876820904 109507826 342864440 820470827 490902481 536908873 534493963 106655815 278436327 606103212 477379564 450413628 179410636 431104291 564347414 209795180 952018806 737722990 56388088 780584133 98359347 294084519 41154769 284824820 52108957 558896225 915299577 640130739 693878750 586933483 891766403 667678586 112262500 488217917 1021177337 143213216 603721456 407273734 573022130 494793858 318705030 553968900 980178555 262103566 423386668 300090622 714331165 718072665 174538178 948930452 177469560 691853805 933998543 586850362 473983706 445965221 586418827 301841369 31778152 677392208 326764555 1046037338 335569729 30976495 14253193 615301752 951409684 970293417 891272285 594204827 748650674 786648451 745056240 598410726 822416775 552562467 948166870 1876731 477434860 48643952 724699263 738317107 163011841 890570388 629866333 90806411 647626714 69400176 932079585 330221863 886931986 479053896 157674734 774875527 770464795 280289783 125992246 941315667 502352025 510038741 845505743 135577117 611030340 927891957 597141373 15539831 201306540 190755620 42156374 857664808 348484516 600310465 215307357 161940199 948226602 861789150 312175611 550953060 489474917 732371813 110597310 132371533 1005716447 167474267 455766136 93033736 218321131 715201388 928097351 828164225 424133720 665867329 1070156909 940964566 148914382 159533041 950547364 837443414 529785718 1065679136 721373906 254298867 515000782 229607096 775448692 316099506 404334945 645537418 469720333 381725279 96356497 709686370 94788867 1054324618 450226108 878022188 422617185 352988963 139257992 551137127 383753229 843867301 1058404345 930326932 303311402 63655968 182840896 892759521 201642229 813259954 563621512 239648921 552905759 627541839 1057429481 677027987 426161086 544789363 1061123800 66397755 771584897 129939552 492216179 530633635 568604585 538762570 649318768 546211566 94227219 127092616 927598355 284583633 360064906 103684216 937557819 742999716 289244725 1053925837 652862490 586819839 902994846 849032336 1065075663 583629814 268945286 577144634 387712132 656426558 939202368 88659797 413932836 1005600906 768582260 141830616 922572678 705152137 462995413 529692093 72482876 185771833 933134585 249648592 922041791 787586208 997857643 397302349 3421711 313574896 626386954 600127685 430929915 693892696 1057054343 336495549 921642804 515245631 360832599 746853247 725239869 64562811 474289847 368981743 694702830 777305493 633813526 59921971 437326893 276461174 890974321 362950043 597648391 441151203 173060485 211596924 378897122 531823264 269330404 900142196 89939252 979570815 401829897 586788845 866126979 879104804 129776323 719918470 767444061 706107539 41273428 805324278 897511402 536796522 428998583 757525605 289068431 672199714 367977379 178579556 248310749 418499515 1000097030 450654763 164533574 989495904 194906108 950965016 307895406 497974144 717679467 553409866 299897758 981492166 223481408 315892963 848213164 22433400 558115455 51534178 447142541 515745672 952086387 128527686 870605542 100608647 1064389949 601846705 468143505 51183152 112684020 915262021 598590920 876901477 284376991 580230545 78434881 752105116 233576528 648135575 603081954 653916875 367997994 756272583 963099941 797002851 174425643 79966494 961324986 14185379 329567113 574722753 788703834 743762530 908469099 581688966 80349377 639196978 328002070 21694848 730487609 862413424 857397540 348257147 291541997 218232573 83033321 814396724 753716441 157815600 370205105 873002473 373988945 664692386 901081634 139685171 877603005 1066943117 218614248 807559743 790434223 324350867 454734591 819500185 187934462 563901450 479413904 568995802 807181846 179515052 70290853 316487308 1055308351 511730042 713961946 764961096 63129815 37365861 99041691 894783799 683049012 946061552 475433057 446572994 501722771 374117685 852443742 798534570 591413342 38106704 461298350 960724543 422311037 588810585 551830718 268770799 986224598 578947347 737613787 551077042 399827943 995343498 675879342 822555583 985285220 252644392 919192700 377429663 40901447 646005947 270152213 850694336 154479775 233869340 337243523 442924782 652485968 507532099 94209357 156225399 293310900 628926667 944439448 811533949 892158865 450233544 913505057 41687316 596770171 958935931 542401262 273933426 421769869 210440665 979847932 710673872 656204231 1043807328 217392263 455357192 209141070 1050333119 877582649 700203530 323679078 790493819 38242603 487246599 725150170 647576738 669342131 506973999 170025813 554048282 346239865 475573274 618518889 362279965 806820573 865707939 846694243 502722062 706668900 592452110 914427510 625367078 605792524 387349482 831928170 701145675 827548339 1041055917 73597389 569918350 427916087 680269046 497443384 502137583 219467511 776896414 773246811 846109036 222375654 599077254 311763925 911718476 877367455 755407076 184677776 528754948 972111761 796983349 784436310 37050254 353022512 143650239 842494270 918680693 839939617 567822288 345395737 806811808 237698251 458248795 1010804842 980234960 124920387 525844002 473797431 979863429 628976161 43219395 992909118 666624988 1032135673 412820687 180567957 676126689 545968177 696191260 990121756 449285072 41802299 805331166 272474003 644927983 608785210 803365444 132342220 402408073 954965925 332582263 673503714 134805200 481334522 748254678 503832581 143326054 273220628 634249548 592551312 107077286 1026353298 256959051 925961315 7063799 999287750 220215555 755427529 730073866 106937189 92512829 115308351 233944402 48798289 356154853 175999176 464862383 289656757 202029884 1054684956 203250502 553330576 406811015 253312150 770076657 212795484 793308989 332721225 231481074 526847782 718138964 545434232 568933560 338273506 409904722 535543942 63590843 193799487 580575243 102619634 107605404 1031353414 93233246 752100551 647176385 992751068 846401084 645930407 631602813 944854014 99012149 1001020914 195595272 651215933 631609124 849949406 982267452 409813501 441358134 181693464 677658188 37592532 486950734 54076227 820710385 427844865 689421626 1046997709 357621597 91016961 91200149 208510934 943771359 1004376057 369223111 692434500 549194366 933972995 750477434 89490554 488144405 175071302 581080432 718269847 839028170 771221776 764673671 330958489 208660453 9625308 153538461 692788291 892719635 842574204 818435537 284055335 655954055 56908883 446230313 991585874 343598919 464262884 465348787 939304894 767621832 830212330 196685906 1004552283 783524137 82593835 809270360 629978049 859253412 22892484 39111391 47625650 673580166 36961159 881272513 701348041 11237738 728462884 368568448 464788366 903274547 563944036 458163424 1051908163 674846487 1055734751 582997559 127636159 465358504 360073395 920421581 411576229 151472761 935748931 1046104718 910399769 926990250 868481343 664137555 118361437 338643177 230811681 1057657390 414512578 1072766208 959489359 742746027 890047578 302878582 884258304 492421521 113654199 402992259 1033487822 863277515 212895778 664069035 65263683 66539222 484850299 95745204 694343196 886109548 620154178 302407722 851857456 258885797 1050959820 849596790 558961493 771164045 806347345 959710619 406411213 838678569 446873620 78078066 40035132 398855904 886549846 582734592 726263818 731153622 854278782 979083323 615860660 479023341 1065470544 664494800 775920079 290776695 1050628034 789139768 425853242 387890263 562181876 661698760 451801416 488481319 401319596 544298226 963748533 77811204 622723878 860593261 98191599 400883152 1055346216 181256194 914941479 885504787 471783557 988351736 718379084 1031314828 786012620 965246257 186000321 676589227 336699922 501873706 935560995 386934657 446058290 771864278 552111942 1073608177 506641577 337454217 417706181 161949564 166813133 1045465443 33082654 509201354 611563774 808516579 264915787 810860573 1002622520 28701751 33524074 337956508 977837799 617680863 642564690 655988378 652760644 4519836 591351670 982083161 995932323 559589370 658004592 1011819343 868199439 560833072 428795310 275722908 13282938 811632795 471663967 1071616657 903862548 559001748 758356903 914280755 839009457 558455663 906019428 383896719 715924155 216242937 547119744 204632357 104255942 990210343 761030932 103663903 662534448 237673737 907152666 1052653112 630791585 727301918 990495100 351501888 526695113 402887244 781196936 729928705 817062958 789818687 825077317 59766594 809917576 483421089 1026948356 191018073 564263653 135334482 761441402 774315703 953629640 799824606 1005467088 367559741 1004408129 784579392 538418606 907038297 71888313 757387568 890113224 508736208 1035525321 129137031 879538837 1055500719 577651196 1020910175 313225453 790710806 850277842 514828821 792831685 836440177 950621334 1063442582 230322651 24895661 820362166 866703410 329878818 582459596 946122884 616320527 66321434 1068551322 516841263 146465789 77779011 308549924 718386090 22093678 783883183 852512572 494517073 31609101 2477715 931032602 687997457 78407860 267049142 420829390 388026094 719214407 928045050 1043248233 1022957015 786525160 29323305 542972516 642310839 282770692 1001185940 305863244 1066259270 600474958 276819465 669816229 749123398 633164980 608409043 195370167 837641160 531684244 714860978 422203758 139414688 563802130 700514146 98529798 745136824 183522917 937857555 548992922 479220164 142753898 65766001 864710236 504412135 868806800 116289565 88777378 333155740 71163387 467148921 129090209 190634121 312566977 498593144 838955488 580977250 526114681 977445764 381789015 17311558 477436533 646354634 923801069 378832627 817021924 234042532 20878710 579489278 176962297 113413657 68042731 271459269 496333526 571774048 189512444 766835381 1050420908 528746088 327328037 581481379 810327936 89219197 294362002 821856000 583606732 286165673 30527490 301877081 160840598 921877639 1001337647 185469474 837716735 752640944 651540660 158656794 101748058 770733107 836426602 274570261 138836404 923372968 822615574 637330486 217925535 171069061 929803998 793011306 406715856 226988101 952685263 501218516 372906564 952566959 705921249 877285084 161625831 732401143 690089415 62810823 276479827 514972220 437215183 321523102 896508345 335807898 781382810 141315165 250363603 308412019 162512500 387900484 269832549 858578218 1065840182 126290813 392883378 700854614 667255158 305291490 639423638 916420821 765451341 628528479 835723661 1034504175 281146695 279783743 888146669 346893214 1068103471 435339879 298622691 568627223 350546959 319047691 823185961 97750901 622644279 321568929 245948473 515036936 172253238 927395588 182664772 517777960 91569471 893136615 984092235 715103974 516302042 392858973 893860376 594378602 95509069 204445792 126864389 820342936 494271512 454335745 51649986 1009978145 166636906 245135373 18121044 229463210 488640163 460869810 597196833 811944710 362461986 76025536 162767462 74328850 758105143 525075059 753701858 1037346885 915105600 582955720 510847130 962305661 612177934 682289950 529416477 125645472 584173986 213200619 629009521 574853381 925514360 784416161 538448421 218066315 69158224 986460237 17861734 938062716 978832595 154086794 621484991 59816065 795809108 278884604 280964821 396902044 291654350 734792550 6017004 438845166 890677690 135682216 422873011 199213097 814532039 658990342 593495161 212089200 345889778 842116946 401714807 235271201 66122355 1028012584 87457118 684174005 405472621 62066395 175062438 780256831 93591494 917816982 47247413 617466688 375905670 32566365 723898089 441082456 1040184518 812466884 587362941 895594458 1046653165 538456758 34161571 616636558 322840829 602547986 172753179 737027656 947425421 245522999 480585297 631215400 156123310 200501518 334270870 799608786 839962700 1001995266 500128109 366906251 289421278 853897555 792579244 706534005 416624986 356706395 286959551 15876890 258627257 860867081 266281160 767535026 228085170 38204909 801822848 820571831 149118632 1022833678 272387045 482337088 423151080 334931895 158515505 675172588 39896847 587996406 616274363 862039102 1057568167 63364780 791584397 991310911 503629678 832239719 971596698 213762793 487146720 445926393 536796045 507726375 1027784393 853254779 101691194 572012174 514547920 274670749 684936687 849472060 216327956 666894906 856477751 931672291 341886279 966569005 45254426 304403611 419895880 258257783 38138642 927453507 321398592 591589946 1038073500 714624106 768608084 567647026 673981759 4815316 244219490 218771995 354391712 1020679557 387828849 244149358 327688461 54926975 80360666 940686891 798565195 201780318 177451522 336041190 93293023 99611997 479643125 276033727 516465607 420418460 1038526977 899123152 194640998 16003428 463098832 10909972 280860866 477290903 311177129 566003453 204555944 412120875 1010920393 1679151 772676457 446051568 45668150 967582159 1020649588 528705719 810596796 719021992 752743077 675963532 966624860 538942007 363078923 900555609 1002292109 805952439 720177994 357054271 81167762 169152338 285295926 273963183 647742433 332381144 766624330 266632502 803734838 246790339 140770430 210467970 655336322 959892745 286955459 270722954 83207288 675591285 24986325 279742040 700134496 138904178 524862310 878073332 394470052 1066336470 892336644 319269641 432087523 326083586 402874928 525426405 590993099 765315797 408281250 619207860 695532657 863673274 1010561784 278136751 329301526 610565332 878050931 81942790 692473513 733050296 692043769 478846646 873490659 954647086 50119451 100039505 916617486 922332323 445885662 1070060837 358063336 372805750 256061202 480904059 568229642 820916241 588213146 313841211 176334190 638479383 17404209 644241068 654136318 981785194 793873641 239192647 211336392 366776125 402438422 13253127 809692969 914067282 35956838 294788989 1028720605 141552419 743452206 669819251 66411649 389047872 1067840007 451574918 696938463 550874829 737462195 999514763 781808357 679634992 418984852 815312789 665715183 110685013 184828464 996986691 490474781 39646031 130792662 67766784 449667031 433901154 1066205103 205141212 762230368 607361962 373312012 667505321 1060138433 609989552 986265868 613283066 192357391 996049295 351212662 940762428 413746057 615684010 207386964 405125300 506393266 1027696926 691815119 257311069 745446755 389073396 1023737652 798793315 965072736 315124580 603832085 526379553 620848492 352212009 253122152 587378009 597713347 82310981 433207616 1029902419 1053446886 108740972 859785241 833534932 699569908 410615606 163372294 744262951 1054919685 971296435 795861520 491999136 1024317370 786044822 804478466 60746262 848360518 493200555 1062478643 914171526 547423415 237827365 514621710 47124649 493327295 918210399 1034838723 738825266 355378202 234899661 1013927982 982580970 8587653 519505138 36933065 985213849 292286300 816716014 423912744 790771148 333741489 507666691 963796708 470938640 258226845 135720140 936628295 242098771 253723303 214833074 499513837 1069867012 81051980 509400506 657435512 793208022 770265145 748591647 844753781 657748924 60187522 879937974 985049446 384757042 645004233 765114380 98358385 919285377 323747897 147274891 973973075 390857911 512276739 422311541 1045735259 444911676 739904577 16359668 349766233 66768988 218662047 659785448 1029622668 723182436 103342286 141849011 751024557 495842711 1016992362 775592930 412296346 774612333 729156961 174018826 1018057156 625392721 725523403 459745776 315976318 451214035 718357749 335694453 571009426 279456283 895874691 588857612 102772163 74348975 518284181 393375435 262680553 615007057 752394860 392762870 1058571042 682873729 521764116 463709704 718973295 696762224 554737489 791255101 1024837742 810583664 672422943 881062014 590773654 404655451 948532795 749559033 662216704 381996758 767632752 609849575 668851475 11894424 697420969 988885074 412070976 400959346 224444265 704303960 299830730 961052849 715785006 874944831 372988556 38085163 682957324 693333406 944064022 16745849 132559854 130144312 537101139 216186708 56761670 374063488 1008153222 1041121792 10485062 240330996 917228518 497223608 1042987859 72967317 341067266 1063002411 1010645155 134662367 189335037 1000012715 627439104 984246265 115638577 716202531 1027560492 825765940 379876383 552178692 888747611 302453570 417442772 671589763 16255611 598253377 602030952 1041526767 1063651119 253193836 832451050 234706756 958454651 400298860 1053746453 190797933 113642515 917129616 188161484 699896601 880504462 266021272 298887489 343164243 729885269 19822252 452435765 291870029 1033088217 592252801 787247507 145125882 880200571 102918715 427575048 930458813 310657632 1056073676 168839627 387973217 607591978 6021189 11845108 247740979 860591174 46863724 857885177 827457888 332764472 17332398 360845466 120843519 465259427 516646045 159744817 919777425 36179271 346336281 119613550 498608036 11881845 63298657 152039693 1069183261 412666706 1058698016 888359191 744829233 132838007 657732606 32073688 118621600 466082805 1046571153 420256273 809075133 158176756 1051989867 80099369 984179125 547113455 614303930 33380056 20168175 551527636 913273809 191147360 315929599 1027148622 388395558 332125680 365839529 841670819 580924021 232065111 714909366 314858611 89459018 418551550 973731681 60381731 115810165 599533831 438612049 634984349 267509994 56685315 78645488 882417364 229009859 554750599 877198686 936166276 136012883 709263313 570850376 105803961 765593796 691342971 1047328013 877651027 820533979 146887734 892248151 153950825 219051489 75095230 860322673 707040977 733712874 245719302 819304627 234843832 452719139 386348137 542429744 385363551 92484699 121250203 196329335 550103585 550296039 558656529 712295242 902077809 944950627 850701354 35944619 826482058 306894226 1017257056 987979277 290943983 910738425 9656533 731817989 663821036 788059523 241438867 219948231 322145672 362880318 291746648 946049937 344074260 547085673 395517886 321512852 872420378 304396364 656403350 1037916689 386606103 214733516 680658260 605091851 868592679 595426396 339877401 786123267 160221749 656020385 1003684920 932150955 1007417419 97634777 377784201 742011036 872961083 619927118 760869321 797199693 790819408 96818856 994874975 427867145 743426130 440662866 919840949 878879406 838866637 586337355 913525969 248794610 616727144 597314845 454003203 439960287 224552228 40394775 579829340 743541962 51227250 108192843 991175848 675735822 433714486 930973067 824318638 233497263 217869930 274046369 121833785 35621691 313024487 740233020 354884175 948697411 459509486 944429204 989594271 297351524 493858455 1067679697 1053032081 355582430 969947322 729152387 577287880 1050262530 49155127 756114295 601023016 867307390 17080794 366312844 951961594 489818748 702780312 656587902 6427772 235091884 770117928 272703837 745333530 164844655 729194232 979872679 405479524 464383164 622787447 821261159 606425962 765347244 224011349 995443440 974203872 1003986972 67640377 381994760 194347225 692958556 498897981 708061128 90325035 935263989 74889912 224673811 93545154 275796031 390764155 946825324 818314590 531700399 815187589 693303664 67483218 840756297 755274508 794495073 83341763 887769651 145437668 768651804 767883042 238679024 850980165 73682801 620220207 116402889 930918733 773268060 49827858 626109112 899874907 521154061 868386808 840707163 587283128 277793269 1003977156 687123374 154431975 864824280 444155941 590251833 694664068 688129380 487007872 723191722 976987154 626681150 546188640 1060872412 773671234 280840568 941931038 749145685 356162990 122579793 779591935 416402431 991101195 597176404 1035129365 980850699 911556831 582758839 948993421 429717293 688388336 304800811 773433602 494223931 812983579 705288559 85766715 637700979 225081040 400903775 135994 203087141 799809525 21012221 815205343 343284475 797951003 1018107559 898813866 592939516 826991818 859811833 732642436 731310579 890179506 1015067580 408639863 966889787 777592581 738105105 350584165 849128738 45083035 375955753 34777308 251964871 633637431 207677973 1020094728 691778528 639579488 889014611 342035708 605115984 272197845 973205581 236678010 524682873 558540842 349123302 801078065 970246032 118778258 559841210 653557768 729279367 944247806 573989814 208326130 76919257 370047888 159437490 993169168 466478789 455367472 940213103 316328650 1071636332 1070440597 780489937 414910139 946468471 254306886 421761215 480471412 788092398 632063893 609801485 206326641 945809484 714763902 392982582 69315423 16580530 490656410 200963789 915997044 812531208 922180660 501585468 394851605 281403115 871621628 421936654 221359334 662710232 635941133 824122126 527078568 196879321 253788705 478890663 825600647 629816554 1054620602 909681683 386822313 142946088 985211310 502379121 919159078 465040190 940537949 950581161 283031374 471545148 137351837 572305784 388326537 172347180 1046950521 344917555 874800917 672398821 231866973 652394650 149569459 888199891 822552600 355870263 605964557 512384947 908293861 429936677 934321833 558541170 976819357 798785649 518721839 910125901 992120261 790236187 412730895 738767235 123362257 59375856 951674257 220331226 973133023 1004992003 60902599 54263677 378011366 268151686 675417699 40885918 859216208 827813394 59784282 621473761 888314791 884895709 158341134 319791847 134403197 734205361 692021320 516929616 1025859545 56300042 498186932 628806555 217309509 543915809 981598894 788789727 534398572 899740353 838341131 36168612 553810781 527674184 614294634 516651719 384174943 455016874 775594344 326116494 563832346 210876628 512179541 32331966 168133948 586770587 357422846 994067716 679957563 781944960 796520653 574212052 968455297 206121132 876146393 473840848 1070266925 254367363 136849788 46281875 888218339 415524663 45771668 979206198 236830267 758835480 484181108 783866355 498591465 465892033 617782795 1037248978 488112886 917854072 684261964 78168714 561174685 952344894 979184639 279619284 468185781 469450213 211391726 973069621 489561661 627838106 208584793 380998229 117450652 261481357 139961884 963958535 206466235 87164871 539636155 104343932 546998651 497028632 827134571 415176247 466741993 333585719 64160253 180108620 98671617 653964188 717927216 892367078 962301982 44145743 784918289 435690435 780093701 565349351 1021459197 988490508 836493563 18670344 579590182 134598536 502023396 165343097 845992833 352422943 112657727 550622557 195175094 532710996 826301260 1030569409 91245260 373755943 880835312 779206594 732832446 212029958 165070781 290124350 318303123 161720377 159142680 363122735 850541517 433998565 65440834 380592931 26790338 789739305 661494694 776604214 120139688 615684867 437209371 630052253 390826552 420068692 918891247 345200316 25370702 681163764 1064998912 93950119 538494819 274122574 522817826 53459725 448123143 360163031 190868004 710048474 1017831458 232057351 24702307 104356035 381261392 589429343 798929111 387487240 606325149 585252891 759834234 270481767 481179961 32922244 767266197 682663625 725261598 646981168 641975914 141269542 954077556 847785850 679157335 635252717 279626023 86206786 638212629 239796325 429793523 901101141 80946551 1053003225 302127415 449623308 276567156 578417540 786876228 185715007 437804040 90970968 412821996 325877505 59293374 835683738 845162501 139648945 1000671937 905546922 775358140 1054539752 340187835 384737612 871334557 202429235 1051267693 368608832 858208500 900064082 921646943 681623236 226106359 832817998 116760536 309898718 452757881 946726788 204829980 197801144 124789251 116471616 991749596 415843999 870403136 1013056652 184853237 847500198 952425204 200206352 684555941 631021087 928399990 1048631164 482740158 45514490 992997869 565465109 604898746 281753716 161198277 663418590 165944732 811304875 661145471 23309296 54834812 42872080 898110209 434866101 204927105 467753866 949553091 993742035 740117165 685610208 791924869 178217412 5832410 655872247 182907992 913129300 367552365 144570563 241697860 142567693 45628743 455720488 233757298 462296273 595536334 831023618 657606156 602948486 263801302 298809831 485377670 904449038 747726399 677105305 682057033 46667432 802808020 904389480 699716384 806824715 273635677 912788922 56562106 881377670 384835848 26739718 607982800 511040416 358150790 269418645 579302115 170350078 498517540 344869422 1052374336 4371214 900179156 19206062 236474335 974316821 741786774 137223038 733131426 668820036 296850813 692208703 306135386 980462133 458665812 634333729 1001826748 549043538 109338399 941889916 25422750 718892754 178388414 453502308 153344422 395229202 824286209 948812440 31234353 424565972 605997971 95885361 472698313 577201547 673837851 447263911 1035949603 456210986 505219493 103440732 132208256 1026978601 200440575 134098745 415659247 535690874 394128514 331028657 41238105 847472451 647028716 42365538 173235517 914557308 423528312 313914194 352002321 337351229 432471948 187420358 89713618 130459046 471254181 116406252 647804969 662376226 350554474 647942121 8312201 196622634 358765919 890697280 393980872 815293662 932093640 184016128 559711110 789290550 893839792 977365387 94051633 1013763205 969783372 853939413 360248013 1019542764 999698999 224491649 789359349 144896649 168325136 29706922 379870623 417668160 674748479 966961499 616806839 573421991 87558731 919176308 381743289 601422335 890360668 66142058 250740131 287094228 621589373 356967610 547858311 867720744 127517979 128961399 871585916 30816907 297189153 989701451 520876433 250476078 238801681 1022231463 166148933 760444865 836356875 434498928 552740773 817303321 721159618 996901185 1036968884 878340473 127763887 808984103 1057683790 977691034 104287329 182258504 443905328 240741180 562794682 879187825 978623034 1030414653 428911037 294753481 561476716 111271563 608206665 448356592 974027176 375867207 743791553 545421380 744305546 1043993391 575128875 273296211 1053329388 5094623 690728242 368122525 421881094 845386148 3715501 651442205 44710025 701809483 575137126 70371696 152743769 972496023 497284513 619401842 443993748 109851568 186556594 490804758 111015902 883657930 1051523888 354356405 662192650 404101783 857918321 312565091 621577371 189253478 227774337 1036735133 71292720 536635426 88731071 486324159 41109727 955247425 9531970 348954983 638791971 557978384 764029270 770386970 643728645 68705889 325344635 322367022 552744686 35007410 480609596 994050989 93268683 278693502 688852212 97529025 69416441 921062673 913440369 339154038 100857624 704503186 440303238 906055585 354561118 779450755 478210834 579961576 408619550 43282973 636848298 185649234 698542962 271227473 973007585 692481590 709437289 216983965 192150484 584877272 890782616 996193173 366141439 661764368 390258877 30106379 147958397 225328723 816157006 749713185 361920177 504446003 1061755115 895649262 953786608 499878265 805972207 336896292 389354992 996196197 568635911 255120349 377488924 701399540 876378361 667722164 438850171 827293912 328733062 98244852 647628260 767885123 359932642 656255161 232010002 560859179 129427265 610077985 784602225 253518017 306892543 333798481 458717614 286188020 263990451 802799637 412051487 906130731 762173829 87867836 353481639 302236721 599013776 841438365 961688848 453169902 862870151 682446609 81856413 641427296 218045370 381100606 310105719 91945054 569701781 948407307 121710342 475266666 1014229297 198617353 802555523 1029901066 159906390 306604831 315501441 28466388 99822001 782094217 965940734 169194188 235096112 869659498 515577182 168477629 443988884 659517375 1038091001 67486181 909818675 485269622 307392094 248761091 77836609 139000678 269766254 568456000 802648443 51800388 592814568 195398223 682598265 1063305369 55110774 567495744 645191817 452583139 1063908584 573913789 649596224 652736808 378552560 268746757 500267937 308596570 654304934 634321182 727927924 617404977 474990603 884942179 126216545 84208430 753598126 891068962 326458427 380593608 800851862 222758149 259797300 966339411 393057138 346611530 492770130 903777842 673676943 302754162 87661889 542472924 709816231 300483292 962420458 272980541 576520409 981686384 151058225 727512925 1045855331 872542376 129856348 951533683 676351512 912078620 945362381 652255664 754083860 580531318 480285690 363567585 438248655 165623612 35429810 317830851 759262335 469210716 499531067 351713462 824766662 254932137 463733045 112938059 228239441 762738463 870244324 101688244 953907134 394646776 933231749 86584809 112509793 453647262 136892683 70568621 648333294 524220748 840531511 296760926 399048195 573692265 371374668 276416693 1048122633 99324215 403322856 144189599 597011376 535313927 401379948 208001232 495968289 593855129 673187770 1015393902 116397140 419263396 529076655 562920984 457181951 228540729 976432507 955447972 297025007 808447709 678407998 697034365 407549194 725248788 722214253 315321945 378483605 172167641 158198565 343787613 843026855 279021924 723537335 449770276 998354275 274258383 335969461 5768786 751774575 1009212550 919656704 298582028 42105211 908067912 862774068 579904893 317791292 316862005 609162334 660693890 97843336 338394920 41914501 622772466 108566438 254271967 144684566 420801567 260247255 567284729 97038203 145538709 422484434 584204126 333090750 115771748 649972689 230557299 881271683 557574781 728359589 248694014 444025292 718467535 952618222 402498746 765134914 713245384 861139511 969119685 562976063 1030304563 426899512 389408317 116330375 883681516 151452355 556874964 699010273 449577131 858698499 930411469 614242029 1014729151 320911324 195743927 1031975598 200422848 526189726 669952544 946252136 162727515 613693172 688180320 197356819 263195336 546718993 942714927 1048185475 272287772 396498400 666695649 1025738155 850695453 483117868 313690547 238743647 647997594 321332976 610144882 931798582 247683899 732408990 393185380 657392019 826005967 483454829 598844006 187531473 514068197 377940368 832634997 284533474 980097737 50264664 411470450 578275872 37799908 408240303 1009700175 853505628 775446666 948016123 653711906 470980976 1069894945 735676697 99704153 947430291 23938487 644226717 115243263 423867571 405657655 490549976 354923419 232281708 170980865 4472436 784781224 434875122 32655505 357839394 515709856 383165849 286019090 834305310 563522464 34458921 241259570 563274556 308544090 336069217 666626405 300133321 621177420 926144221 962629365 21786107 133940089 119336138 668285670 76284393 880431385 617095182 19749661 504178456 225915995 758317594 1018332140 688828920 228216807 175237356 150084256 568185322 764806485 718836500 500174487 356174716 410892619 329708936 757115691 601376345 75776490 872755533 371206759 695826217 447207234 632442381 47998383 538913221 177178987 999745528 197958914 586169944 874296537 381458559 959205365 422133049 745607034 38877198 1024299956 601929842 1009771900 718086699 169344088 249757803 312030591 369123570 49093414 936748638 49291421 250371873 1056445087 976855461 258590390 747474302 794859299 613153498 314591680 396636784 1015261393 205754417 538191280 818178170 892022926 1038355614 343617757 909805981 152650183 35958974 543475392 1059743980 1030287232 302387116 1027215954 1013302544 1021080543 379910831 648470595 1036719081 677608402 255077939 679209267 239700276 37439889 366078489 428245214 554968678 668733083 912534775 805408517 4820803 717344114 210670707 789824978 711102013 1002562418 157719103 997007688 447124672 603561151 732722723 911806830 770824454 591285699 955543181 1061652723 475457751 359271080 943171102 438823328 674669588 475135178 46804271 717954260 812506332 1063678952 510122520 324112040 20377519 174068312 556567435 448747900 197849817 633452495 716306759 914624463 268808711 82234553 602581984 369110213 899700484 213408947 256325127 53436588 51316867 813401880 959106958 20925993 143293771 271882933 138945712 411868366 949637229 794045930 455896692 42620805 386857985 593590205 74914979 1029695344 436777427 43281087 112752091 649661860 798594277 967926442 633112885 662277159 572307142 816915822 511988691 1025306625 433611862 560947802 599508971 285197525 651564846 277856219 1000845796 540693337 826534357 116630649 963905045 267447057 401130776 586871838 418047409 57080391 559778553 1064195767 603029393 60152711 585487496 985557761 542899686 108111937 711242980 433906340 980466146 812171042 920216260 65257242 938527008 698673740 864531990 136034462 538480587 49799826 993490778 555459299 259831240 924551665 380038344 597716713 814782573 166047714 590849197 684397894 267409625 226462498 778949754 271116608 97801314 625249954 308456913 460112194 274704373 48001535 151179106 329734752 462342466 491994835 265032754 497408408 178611926 1045114039 430839612 221303906 264926282 1066413798 919442209 531213383 862540460 692776909 702003354 581878041 1010886869 1059689676 282025601 746606342 213773652 225569875 157653703 262844551 246162174 607241634 1029722952 195577747 11968755 497645067 624765766 296015419 516286542 746819781 1009714639 463055184 1001822625 704347296 456607033 325508791 292558923 454221512 115605868 613386609 6293771 928347241 649170731 238122072 1025181693 212669678 784306506 1011711836 72989788 845106718 988942434 23057908 643059955 621525546 1049073265 371242162 176011738 454404437 157854812 787755014 485449283 1001206870 766649254 995161959 50568662 145565012 235245601 36214722 78577153 1009716150 344945443 96957466 914374718 944693800 881381857 718927832 868332996 314476888 563666340 266571038 442140251 707764750 708829128 938121044 529808845 443894057 26993554 12768377 427947119 248269156 1072776069 1067000019 580479036 820006477 694743604 755596011 732058327 539347109 300766510 337053402 546175630 378689787 447448734 142641255 985370658 568266391 993751885 663128443 572151049 493224205 610915228 988159336 443540882 895237984 450393534 995653964 841764532 905685663 586620166 1022699001 571732292 889380037 600218083 283319334 644312651 504943686 294978858 204769188 973299382 277665695 821654208 1009573288 270282826 830648857 958918108 453512366 364903272 706550943 1036829830 1072693203 366779701 154424690 433292319 695908354 755769016 110319341 585203920 71691014 232140754 272582846 436561127 178734955 813431299 529762002 1024440995 204895820 153488945 32988204 1060107215 193053883 212711768 589509598 134561863 469771512 297136472 478969727 342210124 304327128 581762841 928235749 704264241 462099716 961325536 634098142 653892724 702229288 907197036 303210475 589472364 543335797 75629700 509093427 319803786 854882548 786567183 946941077 498166925 495810342 281268415 893307237 1055785663 988428736 180853579 550435775 364951618 531476126 199637391 125692803 476815865 1060060914 532892467 602500286 732859149 272973920 110861375 409056203 477198751 660004493 341055375 472897091 968257874 583339854 523223878 981800850 171459537 992809943 190193216 657697344 809625031 506372259 875509741 711375938 723870676 59136435 140811244 1041504909 611166543 711361392 19781587 451495835 112636926 883113943 127669962 506732790 802761029 373862999 897808870 917557731 391150857 924663230 994788939 442704319 984819103 624685358 987844385 300056425 187846416 787092249 959572518 147611582 1065584720 598297799 765807284 832236263 595244492 499684065 149947916 533567279 840239902 958009061 643471050 310843040 548480924 99312767 546205241 462740470 289428061 805886957 1065501517 363611633 1033064746 937964815 961766794 210767769 852255379 638678789 15895603 635140030 367823255 831662588 971388148 918273720 54615974 754531126 199074009 627947532 53015418 986384839 784678379 748376100 857693849 438720738 247246114 416388406 378591658 325178579 236090321 407718333 512115660 337585851 106263812 49337441 154606816 1057961972 1070459674 444262187 834736010 864466074 7951251 1038416569 704615377 1063001095 810677758 260329616 310266968 889999850 951334405 213172364 953151069 665608123 237836268 763257314 677279276 996572540 338208645 164962046 963536797 837355953 132227232 198615024 457388333 173834326 1022558243 963322675 641603307 479004144 17226487 820986439 354420190 811327844 895697826 286254439 330682823 793353939 853277746 345333667 698758923 600915518 755178411 72717352 851495655 916339476 344603113 50800512 768248835 896628743 157275291 919608431 593007541 785078832 519957003 450051883 5098053 663296032 286197835 971908474 310396238 591139391 786466641 495092762 729163261 506083464 578295950 927834406 794111382 665314076 637428098 84588352 1063438414 192268137 308035798 651421538 1022788356 528166686 223731622 672207589 771353840 555635128 757339660 513646128 987862901 207678901 248545566 1045992715 621369974 984166558 283109669 845872737 707609764 1031489514 865472088 562990599 344724678 876581288 895913141 638437374 262933908 260335770 260131957 28592462 102528688 1064286194 534947417 799352057 942220030 80202709 825197259 288021708 537542457 922848639 726436730 864279 171468620 754462449 748922515 670588157 944702390 217135724 841599608 208356448 491376795 716447094 185922761 781133784 574227835 9589607 50875033 111481257 611096015 612526730 390384123 271002232 906705072 669075668 721719955 75746910 368713098 741811790 973660201 403130225 980422942 163279644 877259196 640633059 186216000 385566904 815956707 362651594 886452306 537337564 832081349 803293454 839005319 402434506 170320181 899188352 932273181 700342205 1015442520 27496904 785672410 608011872 298681246 957845935 825609720 72881103 189580505 188854319 624237255 1029421622 335991110 754976611 406878332 430646940 176218913 18862237 858627310 1065905755 76670613 662880458 400483937 414824364 123683725 13128989 525477594 1073603379 415505682 431541108 559243154 1027126678 626485462 90959157 311120821 1050460112 280480822 727620792 389659535 266361934 598702955 312527538 716984392 352324482 433300784 671792627 91126854 691236820 582745280 682934194 34621071 956138528 1037625341 855894699 248594114 958376149 771939865 492629067 894191663 439308485 325817797 370102362 908533842 132213498 408812451 982817119 57344320 98509624 420690149 125468036 304668182 256941101 369769863 704922177 1049000453 275861275 745155144 320173352 755841985 688758747 821353427 447806831 822423979 409453516 782212889 334864280 322874999 466221495 498465718 10729653 599522300 650954215 1037749404 874601998 783578158 377027050 564968514 679231206 782194795 1049187758 649391392 89037465 551360132 239472739 384404808 792217293 899435997 541762380 520003007 750154335 62130648 971332212 1018385900 585488610 963330774 118632944 160798752 798560475 499873993 868339881 17296962 65267975 471486773 357725218 412032064 858803513 968798865 1017966118 755546719 155656616 589684363 424179019 299686587 716441646 649795595 725061382 298853115 344919205 943334466 578396221 102926690 801721657 866434510 56444605 732852433 536012470 813499678 38445428 392806105 671806798 746749435 75181092 871908336 562984357 576911606 900593748 944284731 415176171 15555914 419449923 974819411 169496602 41910220 187190399 1064438092 665849236 725287292 970779504 929234218 174860 477404183 567052447 809888420 414114224 467750602 501402674 832518582 992875480 484438884 457913702 916313427 759053801 96152826 1059359437 86097307 65989710 520065382 379001841 208311661 360323903 430892935 223103814 280317792 360358115 650539961 1021049062 944549325 54894118 641120655 969214022 727873083 528166606 348827513 497264333 101667003 506821236 145788414 675818568 1024585954 662057973 290401196 198765242 29159341 763542005 195455264 664485249 408604293 206778406 433922067 901531463 735312319 463176275 446331655 717298873 578140951 432956602 1031294763 161791389 935809374 175529939 267413796 969429013 682069624 665470924 206851999 450288553 205333746 411805275 890601042 1007305793 288565925 850138669 181266275 227159542 268184350 438997937 273102690 860050716 540884319 673023638 810072694 306392453 454053359 678680280 345260548 386978195 85016803 348809917 1030542482 362730944 1033695304 470722213 9177979 334211414 294383989 872339149 1028752730 538295571 1065950643 414128682 336677737 426489347 91637838 848278787 147874798 676993672 386046461 178713929 84607058 364233279 628692725 991881286 775529768 537686161 415299216 776248288 984745137 492644956 411905988 412686183 338227262 562023304 748589521 6338872 458022552 428829907 734816036 151664377 262254461 878810354 31142258 823046115 330200983 692352016 83191722 751440771 626798126 719773977 658784169 408358013 393650936 406290429 172911502 978737935 182205933 489817996 466244502 796705022 387466830 214993510 392723954 630099800 117653276 1021948328 314153615 206465018 347386544 481721401 719823735 891305548 981954478 286672243 657270605 326670358 508209418 421830571 856632323 668448804 948255352 466197673 190153098 212019748 67885172 903036470 83522102 19757138 177579523 743981016 644682418 414185459 376960289 734817609 497362098 721272144 266256756 954943750 838372517 445350179 1067616921 56843944 646674634 441280567 862483613 409907193 945619063 1061494800 578093507 415510525 1025801225 703448195 706659651 512114305 913523570 777346685 906659986 966675541 595817137 402292137 920642918 835102615 824675417 448607211 806687452 1072611374 238161386 940105274 640940274 201938225 564224603 694213984 745916218 1066225490 101265549 640261220 495068219 176623711 417658822 240006162 587239806 559215918 881138498 231509981 669545427 86105260 432895718 874559139 553068429 633199447 791180046 735938712 428306606 584563326 752665998 1057235447 359116414 697416159 145317179 935789239 30623457 847051471 921794458 196581523 493240350 237320211 977516042 738818629 985022896 632400386 655201455 365555051 1027068360 537089103 911498504 860760869 908015393 909714462 837261208 387311075 332235753 981618183 1043910066 652307147 734174479 560121302 416815237 194452142 1016352026 903190362 646300853 35723294 919974393 550773639 479507545 25283601 556310896 388476798 235706033 1030105479 703164436 438379261 430994896 459822477 365047651 201739898 343290566 121877776 658711097 380226966 562371165 1035310990 873615284 624310168 582730071 26333200 240512353 238349726 258047303 280478260 823273601 1066935224 3859869 214670514 156629957 755600457 758226547 735876512 230834903 396671497 819500086 50161671 116125999 540089696 691475747 621839905 554457036 686170421 73002165 686007488 976958519 493928221 615604653 955685924 284040672 680479803 12881741 643741404 929032398 837836786 864264625 933379222 236806826 626688432 827144157 714170394 247236197 663018492 181943594 1021936181 1069372633 409658762 283811240 568729239 737018945 1026919420 123082673 962213187 584055722 49755521 936979804 684472878 956409177 808254688 443010361 402207038 327351800 334252275 677683064 370169759 653590879 788344313 1067807521 702105035 291796742 324996689 505589840 984494023 849790127 28883747 1003815648 639374305 279750787 1055419170 820523660 416161979 323409567 569862045 396956062 669895700 497205581 528910307 230795238 715161901 845315719 97143592 1004547770 306131839 682226519 299998 894223013 721399265 698303831 284738820 803151533 402814811 525355351 124852305 259419951 799527332 1071439032 507950311 643834340 982775527 142227672 681773256 594719456 221558696 1026395318 65964437 791238721 1005071655 234925761 1073612704 408134101 869639075 244552093 777904560 575238256 750692128 405773453 825550792 786095011 284987477 238711343 950258028 177222425 919640006 69923639 553878613 904956604 596027723 570714343 768972806 726280622 311144975 212532325 129146412 805051902 53186958 720874516 82824906 703575604 947968967 715903951 971182203 13632055 494631975 907155834 528348264 805969931 227529968 57212752 49177721 339887558 1007212085 643963184 376421246 623128581 242536772 17905604 683078676 95017249 867029996 1063663500 406941321 1037016050 313936817 564777897 364885286 79499220 655512884 238343521 982027947 705883676 592133452 762486332 513515321 425544489 1023560316 12474683 455736330 359614344 926758953 526479825 185161105 566295561 935168916 69673885 268075360 925176896 1031332207 1033274229 721750023 489032349 925717459 595160540 529003744 373568626 1017917692 438532691 58745458 173292618 67607957 684748278 263054452 967169051 996193339 446504771 32342077 941392029 644195687 1015151998 22582735 579166526 439799610 763189999 228412473 218387104 74810669 342663759 552941583 736740442 500003302 214180302 715558129 381906440 758603311 938044236 805164657 462325153 817506002 1053208136 627097880 257951617 786642870 501468082 102722146 311407050 210694485 372011997 661975957 523029650 24483926 27463026 202189556 181896922 272140540 819667342 491537145 102563885 106810227 246706792 603895745 58090061 682187691 108283447 105812354 427067726 15320145 549623276 546427562 138551872 831256597 766614655 932507754 817570446 689914746 322125701 683948944 473993510 350336927 217663787 670892117 585989170 264078279 909783596 175317778 388303287 833919908 916494484 699788456 806109282 4488975 15126528 716977385 907271144 1070735093 414772239 886128547 441328539 817712866 236669155 602712786 834718122 981279620 480303546 900376056 397790506 115030907 406463003 76242306 573033345 1006511705 241402121 306416334 243569986 96578716 1045259691 339224272 309629732 966164721 603620373 622114860 1046485916 193382779 846868805 726399806 889460610 276163332 606943108 586753566 1063307560 346427569 392492524 416521148 302823919 124630028 1062601315 692889638 543571474 33741352 885975227 787228668 125081402 854069699 444208088 919852443 309344991 992679071 604935126 838572034 974959594 762366292 636529920 840951558 679265258 694427562 338002508 824217523 312766591 935505848 931874715 769571147 228391795 1064912958 342956893 607491150 305934623 574257694 204123752 848496609 578200473 945156952 800338697 845885790 1008406904 28889175 346000290 942401952 757806489 557535507 720579335 422504815 838943310 221426942 656535918 522960267 700937169 749151668 783683281 147785323 524114100 9867556 317474735 680299305 504409196 1050664655 263088040 669016289 871834229 1032155853 774364406 699065649 1023227769 16652782 845582456 448786321 661348122 436588239 712228302 396817792 187943909 472262109 539865511 1066730270 929306918 915354217 185389223 614861171 998167056 135909226 405309122 531979150 1018054416 453487985 848362804 250187656 113849187 909291361 1021905571 960231350 883772833 764352395 733843015 330725515 608798149 794566991 947497383 950253013 151618238 536567568 101530313 460331309 567254818 330195589 9587083 862870026 181407624 291517729 112742445 562822932 331639849 198492271 486643451 855847409 666347855 376046672 195024293 8078839 613927642 999888023 915573614 813834214 347453993 212072316 830966869 830538158 551746427 202757683 147599201 883675027 629435853 218927375 738277500 891059048 686257426 923240107 56186021 258947744 91423793 917987707 34181599 180141125 1063457720 598748113 137074553 694675682 443573614 813671558 195107957 37347966 548986167 343445208 418084884 598708535 734045311 988310221 487926056 459513132 996343169 684607059 963900068 531010527 170173784 1055638445 92762207 961468408 584667124 800514297 747974193 709139783 763198885 410178100 47845920 847599417 338055664 795348711 366172722 404463653 90714612 752566448 308592731 81360586 654860735 771222268 956571766 171709408 896401920 950009480 572191428 305683790 107655352 92441224 752849460 1036387262 1013795622 126190010 1027085334 800415430 988132721 47932824 138155626 453044570 52119734 352009495 588591697 359614725 480161078 372721307 462332373 964113910 659090586 488934463 959586879 647774261 275426916 447230483 77933865 199803970 44400582 700323024 571475810 454530763 88693664 275748088 291220774 968975413 926199836 933956051 56872528 933427415 209583543 202534984 983614701 786237911 481212979 496605698 53708621 1018205518 155899099 234375148 923097509 531951356 308978469 917133711 562531263 86962113 1061281313 341880416 43788899 829824155 719669544 1055087684 1026421547 283781862 235674858 1010944911 827417334 981757580 646718139 586667542 827179666 831065332 730771155 69094068 675511411 470087548 218228821 1049066647 679018595 408615731 657313604 144104628 333153439 486096146 1049679298 903598419 319189108 530093328 15377977 256446322 916680588 58216554 259868326 701249082 497329274 74803275 218592917 781140980 79274110 540392758 27705782 969090273 682420746 551035 995131754 800148582 827651529 94613724 16627744 310762638 515230854 60403051 696677013 773088491 427268017 12238950 256615742 562991486 404341971 847710025 64152120 606625492 634027090 63819282 646764864 416962818 542843312 421568124 84840526 384581103 620241661 458356105 16373867 1060131747 802164760 408382812 72455927 1026911474 274874581 450753610 567809693 461596612 765960256 659639297 681225000 157296580 1022326389 571541276 388374457 458137780 446190411 500120996 83976132 916570390 1043897632 773367177 656174244 903613555 902285265 126507332 193914040 642836627 872808334 293362552 381898090 259508336 710265935 450648741 862543954 657547187 269222280 542686279 713432552 490669912 212005757 739679251 900662667 146316326 1055288305 559642206 39743343 212124010 910470955 823674301 651832733 178788106 107717941 83940472 231766584 728441464 842006186 318287272 16654567 416418769 568458545 639594051 69394119 4791243 569288377 980975220 674762029 308203374 760092227 754601842 407193940 488002384 1026063502 931159126 1030235394 230879770 590936499 970179674 913324893 131638546 455211924 197840062 939129233 481440192 268847006 312032728 845417741 1036228726 894412990 798219399 321542418 814057203 158194795 176167262 1013424282 312137369 302347846 886466474 496314521 838415877 411218816 790938621 336366937 1055081064 599603349 981627090 152822765 400436807 612860837 435543145 50886743 705162551 852914287 226744875 262005629 332513466 560234498 720893095 900653833 304864639 869656620 46484149 106378977 557780429 875587154 700866309 587258477 518932585 651110360 888533995 958147757 567119793 620491631 407736281 1068179818 196542555 601453952 398125531 1018781040 701789618 4495383 358372064 368255331 764677553 518754518 911807414 253915747 258497788 421621968 562125258 206493434 110602071 991979991 798136699 838121390 310516216 11987134 770254837 839875444 716058161 141723424 1044367935 762442955 986613633 987906046 955835023 165836338 148675705 1054491314 548809527 918571150 815375802 868233224 847756087 548777711 6165900 973936846 381558404 904523122 1016914127 756456751 252881706 842869172 106284905 426206818 1044565803 666437373 503278294 498992962 552529885 660748181 215772248 1066428355 561123133 770928158 354278205 182874741 831694633 546058373 806744885 740544188 743303008 855329174 200686995 606485828 127274135 845318125 852215335 374200253 127459764 221765959 939111108 129185485 781611038 711588447 762570368 395450018 733982139 268228075 556514588 771247045 41755866 939449643 399020020 247659653 954291620 751770235 42353283 192415696 877355963 568736207 358370899 761082239 445976366 265390382 8460687 305469912 75720213 475058137 789713600 845254101 750588953 853384582 422588674 1030467194 1017724387 924801245 694429755 401181143 1042407913 785794924 960042976 376974937 303785881 646468887 629846991 930804656 998135457 188398437 149048674 25115259 33232955 1058111814 626987719 97916943 827874158 349129506 160649257 220150289 455842012 922783387 711025640 1051514110 319227242 235338086 55927825 1001143485 429830112 1009984900 1014544260 93006828 402093971 557659730 477841600 263864606 198118008 885010713 982471327 708872022 449829734 496898162 373975928 351383810 87602825 292994413 1015669931 935052760 56451973 1065204894 385287837 715988062 602781856 750428840 695539185 715168435 81066165 642710797 356870199 224139301 988086850 22620380 670628381 43905307 536297427 203175914 392739557 146754257 461670704 212582286 262579877 606810552 77669107 632219828 219861923 493681461 637743268 842566557 1062470038 427596457 307124331 421719662 608682331 476772010 442105618 252441452 409701020 286697380 685060505 593042590 96051977 400761345 475585531 1037035958 803373954 734589336 596335168 734295672 270663725 47391742 976534902 567545127 797166628 207623401 670702743 310002842 400798864 959348499 377434641 325698460 909262400 86384990 619667434 575167132 258317773 99740596 481139527 542408119 833758849 134906515 856983086 108754514 228215756 524041360 1046422291 877963940 610176925 909227849 874582196 426007869 556122192 1052928862 341451242 889500803 73883696 775415051 30461913 960800973 626411717 275897906 672443061 963962473 15926380 541146832 334881724 448269228 30824669 878062737 490575167 33365684 834652736 854810754 13716556 898543823 429621148 826925121 514790271 782936750 547947411 624346904 306512870 984404600 184029546 647435254 633658931 780694766 531923235 958337301 1070729014 598590350 946583416 193030160 75774657 588432630 73184497 224444560 49702056 244704844 563990362 1049964936 705266574 805429624 647415348 680394550 349305748 159869443 399170791 664460859 963823810 1049552544 123819125 458181967 797336868 267008232 968590305 947426935 107450150 64738046 50920741 132300183 898693452 769960190 525808053 711096200 622950741 1057019883 796084916 566310403 1017013295 1060205288 201775445 940225984 262077415 283526079 751981740 709378850 15661943 213052034 577115726 917292102 345392155 564354866 252784271 561715563 690085436 115907444 382056255 234685245 311864921 689387304 403415782 249580649 935251798 646908862 536814538 842729255 666539226 515704448 359477052 474404582 56699801 927020246 17538505 888672033 757112887 568446072 727164943 971600025 997930803 95956203 398036425 537398582 121979662 526955850 985212050 170531362 690441451 3185725 1055521711 849992707 68199167 524587188 97973406 499459875 1072759976 192872365 897182682 139932316 656374277 378053479 787491169 397511806 462982831 755005640 138543100 354552392 602686528 625685372 414875023 995722050 497210282 397652198 866442722 732095080 856972693 636662664 121955425 337652144 287215065 946941636 1072805920 83952054 857646229 229824273 865671911 85757569 677710357 936484422 890064081 736806192 47746289 148956195 397404871 697976446 1064721722 208033079 50768726 185544061 874218462 62973343 241880346 264077922 860706615 877501790 1013305257 1022368766 986177345 162108598 1003912034 141890656 784254333 182264293 173761448 626112690 360872072 60120816 701847093 710370565 9412128 1073696347 211145092 836582500 512277338 203161130 459478843 392914605 344363215 677693598 112660544 332777209 677932955 52086762 171320679 557577838 334908626 495579400 26997513 44193673 640478488 669511220 741206739 679262989 656505457 913625842 163616257 944400826 853942187 876990150 46968117 766954791 379953999 955309034 751230743 288950673 768567436 324473485 860441359 339471508 257220647 639108316 580126342 628146419 495339099 254202708 322979536 564986013 1043008192 332745015 1014165350 205102106 729705078 1051212464 549256168 753081620 503905553 942796089 176004623 660410188 972374934 184064793 105015893 929602211 347644242 1056871772 765272848 795187068 687319945 655538452 383648311 605822852 601527547 472413789 35385721 870742893 323464759 975966834 350178935 112700056 357474573 466728234 818526626 507903849 553955799 32762224 267843946 751698694 624068973 1055418993 34969215 750082252 655856411 399323405 99370607 679740257 1069643983 694222877 794156031 606900623 806848532 494052701 584533237 924047616 801251525 926346837 334262030 750370694 749748189 11700708 476090057 550711075 735278065 495315829 642430952 981781755 177706489 258898518 98789447 495676343 936104372 831933323 248788318 909361119 448637443 599723121 209775308 219567503 820735330 721888867 986141373 585320862 205391064 442408307 979139034 314335032 717108044 340489740 133910099 547048698 883807966 803944510 287532612 584077796 152648650 31200418 992991146 155212471 167608469 775539747 257196252 481631145 358674463 831829905 889037991 450614620 446308063 1008567785 35188850 484776455 546806911 1043004980 92746622 729053348 557639534 715172036 24142251 726378592 975480550 617110652 548545329 83146462 306718798 253773309 908243647 568929930 251021204 252305136 1060722256 899150368 728408192 355782669 434941954 668966559 1045984815 950207803 474389480 230515834 899018946 393880680 485272089 1051502809 442869857 679823345 556093329 943432935 408595712 758386070 888487464 134741291 914857841 41613118 579764704 974752070 530593661 629782168 867865484 383359188 889705093 652576688 540179776 807833751 851528122 866914428 465158396 305512370 84980279 116764660 119726779 783642342 376399272 637915456 349496485 124800691 161197655 486129306 23115469 324020418 172253866 873901002 192726177 678587787 347358890 642442437 423308911 133530530 725610876 350948690 561728067 254298313 234319552 325429116 662053369 997539158 296423937 473272298 1022968471 1035618740 283620866 919691467 701566818 748970537 747352565 253969121 51840346 1045721246 940000177 760545118 444308276 905596981 512263700 161727186 1012295467 112796923 946801419 332558784 1069053195 210032355 157648699 987090053 222528839 994349143 68504348 406589564 298059056 741969458 1052943099 784118293 218202992 1040407774 167877045 759220850 319372406 1003391674 395125890 1073190655 371101914 989219325 727575274 591915923 60734044 953488415 676514088 446323330 1037691863 675513556 55326045 334133743 549050926 740090309 818080559 480025996 124557896 35756401 929233622 664471161 17676148 826507294 867825777 1027690058 1045764274 827712813 193101972 1008300725 1039891346 854012865 249362849 349621765 296950293 731665084 183341686 649599146 612006183 448827742 828379513 1060270297 998602096 681204082 64096217 790268427 614831559 673572665 775992428 1055313218 603646901 1008894067 50969250 415441556 62459780 1069613332 1061113345 84114924 249025974 610515917 392005880 816028149 47463002 143872015 280370736 38848475 992366485 72229901 693538502 378713737 649381582 562149685 741718490 622853354 711934241 878091765 526524520 788009294 31399421 287923059 1046109832 397604485 213590745 488739616 142011188 444945823 690144125 133060759 30502410 900136491 965019101 922045049 97104860 167021075 1066767051 178717244 956806032 174812225 353479244 166135014 441639180 394528820 103001192 553691404 426958320 833589563 70292672 780286130 677172319 1038626255 930786537 159917440 358069184 543663252 917475506 742225703 51015621 346517658 768867946 456501057 533373011 860758761 340766493 656266405 285307703 349047858 87821345 89282729 585813050 570404834 453535231 420909445 742916674 131891170 960455634 60109167 273669707 671707613 966568076 865414685 459125918 438594194 975687876 135160047 941967402 442269778 452720413 839935477 465855829 941899985 681376098 54100850 878380871 817633849 322922051 915499854 127397537 317397406 329407335 169021885 491648063 271006303 400152962 33170707 827749424 336152143 510458525 129552343 355864585 632878183 597388280 220937610 990211941 711372111 475972779 719764143 24425694 618728508 495936503 436265314 445657662 424375724 670854052 82176340 848479544 959014333 891536695 122644674 320414869 798909056 181855595 691110547 487618517 290021294 272379815 810928546 878766096 846650762 408893680 742285234 570149044 134641197 929662765 757569935 880779646 421469836 983482596 1043530371 34152082 720937658 621859297 960235099 747262337 559773698 443261620 510218127 357580130 294798035 873188199 158655984 684128603 930184694 1035901408 242674840 185963638 706045599 894522551 688115127 441049159 354271043 272140682 494548414 317009700 169505992 294659830 113196441 114133984 477318312 755556565 760676823 662916161 5050705 329913744 918991040 854402348 905426166 154459184 1052198523 147506810 199165169 69185730 688239406 802105896 410295743 740828221 808780934 1025216725 680117441 442672051 498088684 263481901 952147226 858959455 480842906 835138927 405103678 863660086 834615839 355698019 60736572 2292056 97221776 660662149 733918868 483356202 1009361020 640264680 852386040 921742769 675977619 737846344 624639336 798896280 492132591 928629390 1194977 213139048 1028792084 526809425 116145046 803958633 1018204722 126937948 161715347 746891037 628966454 404520288 201803720 797027033 811595039 669610539 523763866 117242230 346068963 699127974 639935009 573930549 993647862 92750499 177109759 862086501 929954721 58332159 366129367 917863677 862296708 204451132 423335241 103112370 231153137 994466362 895976037 918518766 614038887 848888953 744046710 1063197497 40691337 234052311 939775099 464911311 1034869484 69887153 472633403 547093223 957086926 328511864 938600377 370863310 215175090 6617124 996689793 668574087 342499953 97091927 704391136 517327586 307693489 409501009 92046757 90522463 364707992 355003597 681936546 602484231 685679072 418921940 120735798 957184595 1017393232 866232073 460353743 79782947 788290361 574567157 130070867 459709909 723501173 720591420 406359968 58037012 771753968 317065413 493329881 923516172 603194822 364555256 353138650 203061831 952361384 535038322 33400242 123095176 521063978 333395677 905381504 435124587 90939377 686454751 864468648 113471063 709686688 201415904 379539458 834847327 235448319 453103363 123052211 124159830 844262599 121790199 981589196 899405262 27261434 355507561 1031102416 561946109 305991853 828914652 106962273 417126457 22989981 703597664 194997511 668216188 903831895 607634724 255447472 368599049 1021196937 919476384 269945895 959503573 247349774 718395735 1067157802 32762057 208615107 295431597 136172989 393342650 548406112 400518417 362584284 247523197 791306501 980158383 100678416 480199249 222571240 79502680 182969829 60966605 139796411 477345351 20590225 190461199 263146459 917364279 605909570 375734581 765814824 884773439 560295397 273990077 607630166 338149515 643332093 460642071 689185689 450543647 878648290 391787689 426135932 84425451 718830501 592100117 900525638 763326782 681358971 867045433 727840196 135567918 214250890 108830946 217480838 657537365 190327543 386859474 310634659 1010395452 623123528 961492544 896399484 845583680 61400131 477018842 61880937 567559835 24649993 521236068 699000309 1024107935 843665380 29249018 343332686 922459906 797939657 439808736 1033450790 150945001 416758099 390415851 736419897 988522727 321664063 185322522 681157591 713688835 615456216 327930105 938918859 835705292 638887483 1016327550 640737810 1063592511 802632187 40324615 364435849 176940745 167783392 613408908 755236825 238285790 398279064 1060732270 974308070 667030399 298407800 183739020 923560721 716444621 907196834 756342393 226594857 570861008 875873592 237993254 942322993 294210049 1007839925 584699179 735118475 865066553 818187403 396374171 795224512 714241422 806266550 927911327 88626282 242876055 895581887 771880829 519974591 720382177 153202641 676973094 698194837 787389928 847151044 530316495 640493166 510408716 1047563692 1066902842 489124987 759743022 662546659 694888152 721578566 36835064 546183460 293465206 957435014 810753770 593177758 1067326115 580131004 974350303 502579664 454626294 417819814 741745318 731803425 576225216 145931920 120349509 104655655 84252677 134297697 716746123 502813133 143312951 329840258 541805707 643015658 238910218 995837761 260865806 954697192 559167478 719266441 903197972 486642211 57120160 961359643 515884906 1035056424 631047933 469150425 701899651 397334361 1060872633 331382962 798561840 908830309 194956107 370911198 1004979903 103984011 82593888 1033176678 974941008 167472237 577493865 25813019 853325642 802272531 77073148 1028754621 939558141 835051169 1018905982 716364175 973629841 413446439 399102267 867087880 847244410 289580864 472117636 336381183 682989788 638417423 508487466 588928392 1027056098 502686309 826366511 534705516 196512762 844055888 211695427 122163250 579616433 37139111 749498938 786364503 686975863 720345098 894454286 542265312 155632171 876952031 323785152 605935030 527304307 190683541 146140459 1007911907 828743099 379425211 1007738569 219911626 498069324 484660753 222854753 379986254 503325240 417994161 691909646 328708562 266280272 732620901 689129693 306448502 433365095 518650921 958024908 398929985 180818950 84670470 86151885 255559910 510659158 314913694 844324506 569446319 424957124 732090914 718924723 629072667 844395058 368325013 199019410 629648581 93114303 658959722 312750922 190692097 886114348 990921913 349900145 592647277 542018353 930128363 285922229 575067558 823384909 219028338 62955196 1027106878 872365597 391460728 875590890 329897210 64428121 485234391 345933596 721464571 615258279 494020893 568011382 866000748 424966882 220880829 934836204 583345117 525424323 669049695 784808953 189090277 475486532 732895842 161359921 156795110 586507581 231667531 227572001 566585121 1070244425 888832320 22866583 165939294 57321882 36788482 167578394 806394650 1045420330 928752781 801873879 414670202 427736583 471813596 509209529 401923469 334368266 95914243 359571134 985162886 897594502 436312849 309501193 849272743 173352491 100339254 910326221 571183881 7864633 12785786 861575000 315013432 485206200 25021975 784740087 669452186 561971698 946960340 992640257 316003794 271011759 696489488 722174946 68909464 972120475 185349581 380618052 751036951 488532096 314746545 699900766 240321847 1000272146 224070685 528855198 962392464 229092735 204717427 892955259 464970559 967310142 151556571 1051514218 85977779 405938968 1053360402 588553503 832625609 402753578 96696324 866950077 53560162 592812973 650613837 1040771876 516420876 551266480 305761356 492838899 266487267 543243531 122991006 518378121 616812934 947367009 842542961 622019594 935146754 575652200 948017669 664354082 64552597 688985022 896945366 668671308 965921035 948298073 787303187 401158754 1023755404 836386407 48456187 66087397 464775087 599858704 977834017 875487419 303208224 541460329 445707375 90843738 478380723 170250340 72534896 820755505 607372544 639680879 356928403 391151059 627108781 679642861 606627841 588130056 1065065118 693198831 502363802 827339002 878677897 166163595 201251644 454689270 710545524 291342506 848289947 471927922 187499885 271116992 628713040 126568766 326127601 174983784 266600035 1038908683 713055764 863016899 405399202 795004292 508646999 998310907 770980996 325971621 911395514 610023023 906148444 743441950 640524509 380951204 75430028 79471656 689265876 87869652 38619457 324842733 895329611 509678676 340323316 238537417 408878179 1004144566 715387555 90995911 523081467 571124007 875856981 370250050 288498827 777260171 322088183 256804507 115391372 329246307 133085968 71549353 1062008237 702545021 61248402 223260411 159440993 401098564 959617716 62003973 355729003 390929464 307869697 683816311 451540974 557327871 784857544 553872747 750723642 1033892853 257461377 144308661 968073007 258001038 63854218 1016014348 801968097 941687851 458995488 41073732 423838121 654170855 473101686 450173294 944692838 399750860 37451359 593838959 536460922 309151823 894104149 696997737 446324357 716077750 1011926029 389158741 311679928 832325510 614965379 289747688 992827225 62282568 688256461 381531074 213197819 131052681 440052095 767701326 751244089 325845463 167118996 584925101 405266612 35074265 484944633 900584156 356848542 435982736 536345240 837966818 379710467 435847328 383645558 62172642 308339672 849430124 732406527 740839156 480918120 903233609 1036237255 326220102 217529696 961833293 351591041 191026929 664139458 490581998 698157904 207612594 376992232 259344069 436871225 1038572992 782015568 742083097 64165492 1013217001 371288238 930437786 805154277 681997561 781066651 744452042 856406227 498901487 116499965 239604550 252163803 471988483 447778867 626953158 47957762 376683181 799424800 966580759 747886634 75051838 185057902 184946610 14843231 1047369442 1048772407 228428600 866727271 492524088 165426926 17572208 630627980 138573160 640841899 477513852 515661265 732777139 106712721 68506895 687534934 527738068 73694781 754263636 377572638 686643686 53421083 429847297 251616467 929189208 1006231054 801867732 398073378 841410068 569852667 266912611 810722939 259682952 263399010 766807423 374690628 305281993 840741642 907443101 360361788 193545010 443626828 291905414 794524687 947544372 164649125 758238069 198962005 732025995 457087263 468139487 409723613 560843844 1038246662 296292591 78837214 692964531 361611419 56581206 569360337 521419004 972134378 740533727 601041842 318632667 113133330 876331506 325429949 569617546 248681184 606476864 576350439 14662820 862646493 803549546 16739935 348895174 967871190 300454125 1032868705 746537026 226390489 947182083 977023463 293952893 439268785 929782287 1033595489 283679509 406276294 776528340 628132573 647148190 392816803 996149640 536232737 133895069 148609254 687906989 295455897 19566548 178646085 308871888 528475945 590568558 1000664741 206147715 249842292 40593689 784827114 537532579 610727021 990921160 273494480 151596437 470134595 568077356 724652992 563663273 449071824 351282566 359570494 34959117 804571096 183487100 666776371 84141017 275443443 307708207 143958856 300793295 628498326 852248115 482157269 431656946 827372195 604142400 744532942 501951134 870021134 1032253015 252912374 641283740 126617955 831683011 93934589 395874231 276215750 921955969 1001100298 754097473 349397111 815682630 174254766 302283674 980719279 351596723 288220601 418057938 180906333 218536837 760467886 324551694 417502300 770830400 563865926 858539053 951660868 295504737 239492811 137541236 580061362 834503071 1029971174 969632214 621690739 493654294 718288248 755714275 69774824 580734391 11451990 583550429 82295758 856268515 95953643 646991078 463612358 952268641 6811488 299257770 836020913 509293664 835663371 127504122 645977532 676255785 460114253 596975709 573163998 640512186 66528918 336815868 538492316 131384594 375279691 370570024 238470489 592992925 1024836234 115840370 664198931 1014964722 178123289 940214734 339135786 248339961 387411505 604835689 622510600 767951863 377693513 26598024 314481 549441600 768250136 886942549 473294524 715714207 436935018 717605702 955510527 573475544 73706309 842600960 922776689 550951690 409646845 784724236 428617880 49991819 993689415 558314503 133983234 852376529 352558442 968666133 288280605 705597458 255663911 137061297 385070878 630279759 804899323 868396331 789347088 943582952 723116084 710840641 960897312 387366531 346896448 465419676 902869635 649851271 953915833 41420649 308768590 626748687 271126431 905708771 686415074 604420082 320748285 42079285 888204941 1008616213 281462633 579544362 12519297 838181336 841378258 828574436 1009063066 838732219 964126223 993174077 310997058 155168786 67929616 997824658 845009799 853732781 799224631 310054302 983134913 7372128 33985694 445677649 698888596 259891175 101043638 531452841 253713745 801683887 128064294 1031394578 78641015 1017810552 609171702 566785611 67841912 347235310 1072029190 756589669 690885967 1072792703 391097383 825357249 338079539 832976874 560406404 861269076 674102568 179721230 498996320 596109256 279620388 17310241 249962735 972842100 998911072 263756617 702340058 51038048 267573000 129238476 176305755 1023552803 181328141 292715481 152969299 888221654 645255486 741951168 160742327 689483457 835600775 212361368 48506594 26301028 777449719 694365216 398149092 1072074772 860796840 999951768 60782277 311735482 502289163 920610044 407330332 1040149408 417090965 5762814 710033875 1030166100 886678117 602957135 429662868 1041342068 441325231 854072576 379594099 136045624 851503954 220870409 342701119 824089609 379639361 700812446 292082826 402790798 175226688 462522332 483192099 496082617 676150120 627798064 674629568 754437521 169226018 291162001 1010309220 62383721 357139573 864446373 492857939 95018253 499238021 111149608 281428030 1063009202 821196025 681499808 622916005 696556878 832571821 982551213 264764467 700988359 161354516 89354482 808658673 989771334 856034447 993307697 564144683 309854270 756469773 608849372 856400884 259604259 203992012 632853323 451755347 442126 688521627 824319875 106890897 726526222 648892636 170906110 457130612 147312037 548552000 919130153 883773857 412259041 717073491 946581468 392730416 961104370 728065124 13285750 665709340 416453099 851251550 710896657 26542227 253360903 510154845 661327569 614348411 25301501 668273471 986848143 912186455 572858767 916177401 539277809 880131800 184434369 1002538421 9855722 391673252 517684811 277730666 329480370 841223504 301160783 118316222 564170119 695590089 737535799 443715768 992030409 782514868 194477500 218211066 642144766 990607590 389727700 953173388 980140564 426610555 854864093 242894154 440807058 163882386 128909401 277923299 622940751 167766344 711640723 108181174 190627123 357009506 531052046 704767191 791419049 510026574 220686285 401871521 150003257 137997281 904224872 838006045 379246989 574315823 816168612 836381556 993699645 723155090 177005912 583498815 663053176 348271782 566168897 138604162 587207847 211744894 268757677 89146785 952956863 707168645 472265929 134919327 482521164 172156641 226596909 390854611 977048735 973231650 170124955 428138142 501544628 471279248 27901018 259829924 742519391 333243868 86026399 587436772 577452157 586778717 5108903 141162165 420051217 29431153 871354495 823398394 194987075 67306123 757083602 670245881 657696737 1057772551 535275251 108656228 928558909 362692097 803403114 345250953 772144646 141646371 276096001 612280675 1047362968 453067215 929919626 935718128 360057386 735476285 311189623 462387366 765148111 576087751 85841484 773711186 112348967 620805939 256814771 480848331 501823798 678694798 863481924 494123825 844863290 262407780 798854558 180137108 775776211 227129043 509113816 1058604361 32356867 789280745 352379774 997051115 715234768 894921962 860143134 445803741 432886025 409762635 922271101 853629239 1073632607 1058074690 889033004 760889945 496016441 164503174 893036445 885494513 632421301 1065598804 767183950 124967739 1024506665 886916120 5116853 1006436885 452963293 1062357228 233431659 463948188 372381119 371955780 785902292 393180864 215709514 770010006 743459260 707118574 89892213 1003528052 476220829 772008418 786524821 382759321 602822328 21091346 97409082 216373576 896985747 1064004468 562909965 562433789 472002824 759442282 1029116158 182544089 69431796 215364933 93953943 93640947 682807569 150675369 551342090 800162838 12447810 384668042 328816004 588362716 422391929 677765944 450129239 327946365 43855849 289634055 575943050 700544126 159400432 384383793 495377402 312096581 1022544832 818973997 1049704790 483134972 962830341 246231614 884400212 752560139 77213848 880662213 198355037 388971913 602222828 182103842 974138188 294186603 344278354 871817886 332252939 1022951030 46237583 553044360 158361079 342288344 941228594 238988322 112555441 626922289 777725832 735310133 445471352 767508653 311473359 565461044 84213798 510515176 698404156 758905056 1057097967 550213144 517801580 991038626 69645174 255769746 938705321 183399808 822153319 264710915 825815584 68046162 623703000 1009872432 731212351 458174039 108542620 736088708 97873628 326140211 405955662 763163465 726734005 614001832 214161138 797976266 557779585 522941230 893919494 112013665 52706923 870668511 933002480 27906522 318893825 310071791 167409638 176428489 227971487 408150362 236612362 172502883 314997915 172410067 383457407 899978234 799635305 468025341 671659822 483941837 18434623 1056602112 63344375 204326646 1067837186 67172939 898029810 944465640 1058935225 534514932 523411076 1056252612 652719965 515886526 329769899 522041145 496026582 807797284 97067483 644770735 752013726 76011844 614845183 683655646 943712100 831192934 221617821 92166173 747887361 239971144 940143344 280804558 162629911 965766151 181404632 774306703 147375988 974229685 192081104 67329678 69070793 833470162 766939358 282235845 377468905 312979279 708893629 102715313 435189875 747790625 301006767 148948207 870987437 932281319 800696774 31790345 637466234 45957663 159629900 604621008 958111371 1049058984 718840757 488263087 215573063 821534722 400701533 155003529 798466081 627305116 746390470 563956866 445620157 884384581 99074084 79908788 971597597 286389214 679508144 307199413 1003136541 48497571 940609566 762422969 378648054 372990660 417289467 119559538 728952216 590510308 744774857 464328335 860420611 437246992 117871983 437351986 769851682 229539664 659942113 273548733 734755916 270998487 31213341 170092164 925083265 69982555 86183789 163769969 553006546 1034733698 1031460034 246100743 94129493 392121901 639437999 916084947 848301166 730637779 886315110 941153522 254186709 977313211 470449437 606720654 378796334 787003012 730003810 677890711 590451857 31975554 528845426 88695094 922367523 129822635 465864515 438161907 384646103 951758949 804299152 593412181 713083424 721102750 486122952 309288348 9201300 998567414 208252894 563175900 1022869359 295213861 225570865 471774082 159729830 380174812 676270103 849795824 790849364 247004424 358787641 506644432 648864373 570288554 958823135 479425814 323014467 497146527 278735521 1072550553 463538550 325912067 962656821 135125195 742471833 590278991 163124183 43514743 766500506 1055531110 1048298762 1017793411 266613326 343104610 812939687 815054244 545694637 842015928 314155239 83883382 692576081 985140332 54902553 10450542 749513143 999129843 200895458 409034146 403545169 38050897 799696854 911928816 524008243 201037705 304245119 510649124 189220319 622368971 863112233 224127382 997898105 50889131 30639763 943230011 602725975 247259288 279893248 152468130 910254311 728337539 253705234 322212312 999526405 582208770 1066165651 668973746 869305211 664089362 197137938 23830267 535921166 427722388 497517721 147431126 258469409 256875521 1024000856 259149461 851790148 144604698 426202952 861326212 1036909022 764617370 286608803 899327784 271923631 745178422 47432308 730902568 306807652 781878705 604939797 1029543006 807830412 262877864 429272002 1003068662 234919905 723386341 641674603 975095438 72612647 295391819 663869124 497238777 895565193 857664159 321503735 501041521 448323790 185477251 519646979 429083468 48609400 480972873 532775095 803308261 813537726 607600379 92445996 657854438 175911391 177745132 369301284 47606631 836593721 597943827 333957032 378715095 73181685 978808334 856271414 688849352 1018012322 658760122 896502232 617499815 999074153 114439660 1026713022 867548675 93443890 984580692 122920489 799538721 170318569 677661386 112924817 925761812 332656989 79834045 913385687 526779751 111315173 578690702 990828491 418084093 1005271759 651169928 378265606 885327805 872101885 467038300 519000852 837695709 135054556 1017887089 1030595899 949577475 617419329 216356340 34600871 575058511 56422342 390735573 697153932 587375009 1016864291 126132538 331286128 963980370 894179335 649598115 760519296 717877514 862066082 170869689 810440054 192614667 5134281 155917502 564650758 1051142693 963078850 519620540 385763288 368398499 590952236 823726180 564203271 548438227 959480260 1016965575 875845102 1037550545 272786409 56069868 414765406 133944168 431965580 104027809 839779564 452906389 811313956 563356383 303861174 60212290 191894164 420435759 1033694540 432098723 1058960555 766874573 418637745 216723062 499412457 517050633 86239068 794818271 22097299 738150947 38690496 735611502 958326975 1039267646 649660790 445764402 728205260 802073915 18210936 120075208 774327133 522723858 359963612 828365710 712612933 1060611744 657423072 301390472 266378281 729915514 868349636 447466777 157385580 33796239 631917041 378405382 423728189 1073401457 720637205 30715122 426602719 684120206 115557439 145431044 1003412781 97917976 706708022 134733060 292757995 1051807218 580701772 129604840 910490190 240921652 6965715 656499912 137208136 984190986 532283360 80374908 242134940 258091943 625721966 11730949 85131049 278885684 897047022 701922490 400380212 626903577 587015538 189977150 239632194 741843345 197893460 209160114 572550731 208545845 794072524 609065886 173440523 353812864 1071278135 281231828 611032224 249889418 786510346 387019056 56146877 380294786 954269564 118537583 137092054 85201355 159750277 713020331 230673465 926393229 715096891 270011248 676964129 802023653 112866822 193864298 440502600 184312354 792600065 450778228 583390211 263158229 121808710 203582943 140761779 279075652 555157139 385773549 837373707 1037751341 108543456 202525876 504108931 226559873 773353121 139364887 270565371 565075922 78678873 3514493 720925369 836087350 443846415 958121286 893358590 763745048 186261548 83362610 531342570 375160861 397238189 775157809 561550142 816527384 904532834 175853391 898665948 100348719 230079692 437703796 317985243 389204462 210551548 840008798 625482932 747387441 760623945 126191926 632148088 402468829 614738146 764376882 66440006 687078344 62183814 299293437 447322425 553810656 835488510 936701852 704915410 274244911 198609191 223621571 834789416 629416383 257755238 591535997 263289019 396821352 238742818 544149874 479677926 151913618 17942628 1051625360 416516975 49150505 248113438 15079192 988178888 861883617 292601551 863245919 138754500 90402216 167138493 252016612 483101181 956785521 803625977 510261339 689782712 761497180 19212444 353425057 438200525 162417023 860800752 1037423554 499304880 335855715 344095197 816324183 480472548 153842715 522017064 205185743 546318046 938082870 536072513 738704980 919899213 279154195 744375797 668038031 256967929 725246076 996780513 571712282 1003643020 540483646 777226766 729956951 824313648 78895182 669759098 365423569 402308627 854689403 346687147 401989734 651971671 514566038 919789133 768608367 933631950 38874810 1054312473 524673280 221477891 643974386 830110186 374011396 130641278 490200976 410774901 388160587 292458409 751658964 974389865 737548530 66879972 597465688 743263694 665291139 677874582 54623107 595749005 16196878 718919161 640181143 258462244 912228985 190487958 1066347803 31073793 853723040 348805999 1055511239 617082164 636514402 402268437 488196043 56707343 192624792 1064073989 578651258 47182421 345315403 402103347 273999055 1019662449 902099481 278757750 900821078 126077204 36934676 777630617 170033411 7229017 837366538 242453608 626165910 737314808 418188940 929811504 48594707 278421935 433023863 759715528 397295016 896743561 573187216 75065567 732566534 808681096 353077444 966845702 568479474 155545034 727594728 541300785 338483189 5072004 783008763 442554887 689092503 1037406097 959014756 151568593 484571028 905051386 50425242 509957392 400336865 1069925392 899249868 373972661 632088250 398188098 409286893 128132841 263029973 989882229 123565785 641285960 245141116 652806734 286451442 1019432667 436612596 798471553 1058550146 856089324 200958565 396852895 434787396 747726792 673581871 594430275 11634408 855962210 715292315 414844170 569021062 343408128 740533009 87386944 120099741 103312407 707794983 21648262 771431064 674929234 316029341 358708907 132592467 176629921 637832343 807467608 78581979 618547202 241959139 550300853 568307972 281456771 513449796 582981949 973588035 422557190 289990425 281567302 242898996 846914047 904944725 130092521 463514314 464965021 911441686 1005029651 638145716 459156744 69957641 50096172 902339802 162834774 717694484 928240854 179313844 826428488 297215820 626360973 712471163 778834711 449758553 351508491 401460316 458671683 231047740 197358011 995063500 323608828 586694164 980150233 955178335 532142434 278683898 369879763 195291617 190671755 195452714 780630064 182027900 391324387 1020559554 179653180 434837188 932444140 70370927 870432826 751251652 918496702 1020879095 1064470318 484267409 750687000 438416286 463535056 320908679 213874656 810279560 543681120 439150967 370441683 752370508 770974857 74216055 444163844 416894987 1056694104 144840697 897725500 390729146 31265871 874359242 42296241 412832253 597039326 731369346 27715710 183290627 285146454 333496326 310915257 515431898 274480516 108043807 319088400 291310764 566524529 551719710 583556179 1019213294 821650037 10110624 473046390 134329151 781246348 332918365 316037692 545669020 396605094 1060032703 253626301 807974652 771694984 2970070 314579822 516584606 28914384 709194451 269625615 454208481 393879024 1034196287 589938161 789740835 918581092 571793510 365780400 314381812 584324336 359755744 757336764 843569163 461551418 373878078 928759517 350371273 576025651 1028196499 142438894 885417377 243510079 1032373135 249034873 174345353 61432625 347201197 157657766 698858133 3374768 506563127 392395053 412668055 834655132 829867331 345777699 1055307885 478146989 372263130 754642060 908648039 1040528642 263089132 1043277132 667123397 785392141 543103316 727493632 153770080 601779403 377055669 118333284 340832359 531897822 32167215 20562664 15819388 1032781672 803634008 1057772329 24328287 216823527 315162422 321974139 164704511 827664866 151165310 788695459 875680971 376926723 45537936 360708242 149851679 37477637 160952422 773784899 496060149 780717156 769254633 208771304 146489175 246087345 422606090 927511616 836150581 611843077 1029183002 664675359 461404166 792776102 73511578 849326312 631288016 915665783 939628464 513376382 1032671670 320953747 375560741 500350029 696131931 785392161 8384475 821742184 359827261 430569672 573154339 819917665 57547733 810015017 634637415 641533129 74696681 988929209 1020466578 554858594 106532952 16616900 1062269089 789257263 699249975 788979290 738094889 937540394 231916106 887539915 878878139 1038908022 225568951 507289553 966825858 1046372622 191113346 434787870 103654655 91604589 165484531 732784820 631205731 728038661 968872260 23288014 118912025 961121235 312342764 139741062 598871213 377797885 119367187 485125716 95898746 705808454 509253885 766063768 917855257 252364102 1058151000 452113830 332935607 936290707 807680030 299759288 295645535 585722342 1068555759 186496565 99344308 1067108499 981667434 796884907 915556904 992644563 584336520 584017487 691460669 190105260 709009005 348627247 981368600 495318281 530588233 490885531 514290032 471396150 703705092 923021094 947690245 1016066962 587155452 686376688 16355647 954586663 221765344 754401645 455001240 961320325 670086726 977649178 722785775 1041910597 942883729 1070886690 393533299 376518229 751986678 469488472 844338360 500513117 916323077 1005589058 211512315 480225486 570181783 373291826 456434570 217893559 929634212 299616218 176392499 361363604 205906456 243875222 159021881 734070087 102935282 2742030 353792434 409195555 968099732 677341504 207003909 918008887 947736562 211419614 315814514 297247136 1067319753 490025402 611158132 613312084 92123578 823740162 65554067 519761231 196081916 904835834 427660343 383486138 462537555 385090920 140676231 787891436 877058929 557796108 378679107 379260694 229441170 380499796 397139437 962817374 347795150 299561926 172948535 991353434 576356120 256619580 457003619 794531155 743523 223073917 975058931 814213223 205971557 978467048 296073597 421544171 904690297 1007350306 1063175419 56581575 608063929 191053285 1050153967 358121358 868141585 637113531 134848531 1049852853 173933119 258188922 810244142 485152271 135067261 473366616 19504967 532208966 795918472 753790194 365522198 1015559540 928457784 761256658 288850666 502359191 478031081 962010853 571471592 213208877 519668947 958119664 75454325 729157254 38965735 138898270 1060594319 718416760 66026957 581189737 673994513 584122086 995566948 429897831 976728488 377381258 712676079 531029428 239410605 308247147 511213080 337491098 611135517 1010369164 201168211 808875738 83939424 971207214 1051024372 835787957 818314616 979544537 763627560 70095975 281422539 729190510 595185414 560897123 691690821 33682423 349490547 772684986 333058856 1011684980 888866353 442042972 646978135 523363828 1004781942 628486087 98900996 771568903 578392426 468262707 260439553 8110772 782947929 977556026 203410890 978765241 1042487256 320495138 899539969 282407353 662338487 1052704565 404289406 1053173273 733299814 953184130 280748663 697208649 977153067 869898021 419483193 149133707 643024560 203547756 753914302 40871991 496867022 490934771 1030771399 501952295 658702988 346918658 266397263 636615592 446843349 243642289 313494158 469634638 1072967457 713419086 426609175 26967981 591896582 188711433 592259766 367247307 357970893 617027357 1028796595 254138348 118871218 167539409 976579812 1025896599 165692058 212052791 1021460593 397520566 667221136 459851581 936166639 119413710 665324433 207151189 119949997 95585350 310648002 670798224 438493422 392747067 177803418 864978114 280352405 664966782 586558561 364882545 298563694 1042946933 1014134142 987429550 578991114 123006420 854997018 891565714 871179616 236264791 926881771 224145621 46161756 423057009 81517219 1033689917 869514715 887345386 964907175 274635202 3710981 234099786 525964938 943720430 862515911 262488408 713404606 371113039 803172067 838228327 753949858 383863512 1033049904 625657597 305203277 498866981 646759835 153139682 74850643 639377671 768218167 67950272 1027315619 451640895 212450987 890794932 874152505 514133488 1029090271 761434038 184057386 125528833 388652441 316586012 504297941 31048969 301321702 266358541 213496760 656203396 391838880 848581944 229167662 915394877 133289959 470085535 1008042310 571556689 938210241 187364207 372179725 406580774 730007068 45510054 327990828 109703444 496524711 462264797 231827130 98237961 952708751 743979851 1009275306 226740900 557837578 358141857 969773443 1048653056 105993549 189137244 199608975 892928709 121783319 607482651 418166789 958879089 842511017 1148382 920338171 154333573 1041996740 215155105 525332523 699162884 399889726 931654066 982130657 848387150 511499754 763776462 983866225 57245033 3945190 285074127 14570128 951989508 170207902 647634889 716222027 631652930 635206641 555592746 862224495 96693672 163797788 820036231 127158653 885434745 138847275 917098824 376968508 227333916 176391270 178437133 298336852 701216135 1046552726 996605058 817347070 968866599 944657611 1058695303 420346874 500648462 427683785 285024503 762483864 750084612 1113766 978392975 208166030 316883627 241175867 819285576 314082227 631721865 183331000 53681652 635305544 983602445 590057694 954817292 436487979 367250897 144682189 821400308 21363136 467058605 355001903 487307785 548139981 316390315 308179456 1005774852 95967743 337825877 524202878 59354226 49108499 589409021 134920864 972535703 228026945 997046799 975610024 457157378 1010850165 30170701 132999365 367710117 614054865 1018319411 1002991738 1060801702 273077125 390588568 233368643 1003607073 392713499 1056225886 635750041 994143949 264750124 1008023260 656382897 212373186 351978316 573345702 979880709 842027765 544384582 1050733332 826173451 373110232 937765814 397622103 409441627 395661292 844672881 377260134 642693554 721673734 880019255 425267767 67070112 10196588 324404120 357944330 633449694 469765016 473213321 725575348 482569530 897162956 678424988 467129147 536354623 1012330122 379125581 841191916 401721569 369623669 103280566 632733794 261758771 178423838 145207826 782589776 191780901 618544684 474754100 150062044 725167212 170790151 29980727 191614336 271774848 1061035891 610198242 145105692 41231410 733997750 208541888 899412465 1023676771 1038741448 615979328 913196831 627407633 444388034 630945853 689348690 15764336 1013504820 411635458 973929432 547878130 103799441 610027745 888496324 469832485 863665616 712951919 69121376 986457288 1063201763 83595239 914321257 609789568 250299326 950642117 790934676 751044868 456330808 394092484 495299265 909337498 555664809 172441529 329581654 125590983 411266840 561683735 793115610 983579746 168811185 883941113 854131676 693140816 933216698 372852705 71504150 8408659 92649748 150762400 249492713 504498279 920325821 30488317 881226286 462874137 854641714 420466278 359893370 619287900 1021841842 479616391 396080218 506755802 43691593 367132108 632913591 793336173 370094634 479628554 673201062 352203473 613743738 476936561 481136664 138212335 49654406 692720566 725704759 535736022 710675545 354903109 1003612398 975310155 573296671 290214832 340076586 443909034 477372578 749340792 972027333 138957068 674139797 838660190 832765622 981954874 560442899 830695066 570775100 45575328 608572160 892318804 372688683 797174235 787497067 718311420 104049831 24994781 1023154808 744631062 18775573 229051455 36243434 381259735 206486495 567450354 879121353 742119371 139036052 561540951 1016271269 355733169 856654834 83813103 857826067 320262909 659513359 918057761 810316673 854045886 514461681 928467032 147571585 216237099 867791274 170560166 954644949 316100172 462142442 516668811 607513921 1002914716 742861602 155906307 44212785 32189278 819935311 717585763 403049208 178796671 657372669 1049171840 570048799 1041643700 78604418 999162941 747788439 422271050 586642531 67318030 137745406 928674261 945698947 483313190 299503282 522802369 683556383 548554866 186608430 426778889 299021493 152678391 764980046 474771244 517429904 1021853189 957808806 662966629 613889828 81301198 760655920 105287362 774615227 189402697 720848146 379539761 178965411 76781932 120457092 493656737 98542915 486205605 341985030 132127951 248336209 494239742 431010616 400862871 313457356 230375529 30333891 405944052 740192044 1003052843 980609422 328902457 655488267 688950216 496418090 328695711 1068959103 697569428 470727753 158963060 582866873 319743019 192973359 337765318 464825857 485726139 892348687 29982103 883218119 842297875 709005696 1056601969 920860399 209145279 854724119 214080751 730087852 822183008 441082640 648955003 544681408 171909173 660227647 1072640930 15062095 501953353 383051913 991312956 404550050 517474754 222964888 143522168 331666390 80146441 381502407 817431556 777176291 432027079 435742039 237130974 29988741 709863756 677072897 866028565 1023276687 71517966 451943682 653077952 205138729 656741530 803662684 603933114 1068094661 569308338 260264003 658297685 732487969 842276147 338099427 685407015 325544513 682607986 929566866 347961950 462171564 489885003 866588376 672618220 916587412 314025798 949420523 78519402 326521343 573108356 508806462 290130348 284060093 629852985 722999574 104856937 54839696 528230034 520939753 916259314 572070436 723010142 287566400 596933405 151437805 685595895 953708912 248905378 270234747 841687104 236052540 982079179 902327820 196535380 997868451 101506702 894911115 729857143 230095041 14996685 917655776 469514043 1051328951 966121004 862018311 618086328 672915959 447578437 287825236 552009299 66705871 150944205 270325245 940437142 953336261 406676753 636946875 1050114621 712632243 938926272 939588738 448315169 503293926 313684097 169210765 363697407 829493188 234674298 497474770 806856563 104355347 283681118 468316763 1015587643 535044781 915512666 962469812 121552006 210875997 515875385 342779130 763467740 871226283 1014892103 161469998 1021347460 527244849 573606779 665149821 721155483 643254522 609635717 759345589 166725627 1007743432 895569213 138287976 283250506 163073704 939744462 81329667 1051489603 91888787 459768285 935442256 318621558 379827381 208782452 731019282 52360585 866507813 302117094 994467582 182671753 123105708 848548291 937176485 490715475 394537347 980508495 529301954 1033757116 579537609 99459420 1028694251 11294915 480419683 843278829 1050531850 110029729 227689007 1055796167 61376890 74078848 624148449 776634918 416101606 845579422 641252461 1055199308 898072099 43572292 1031891925 790385416 770268820 410664263 119324136 562461678 152014171 450697671 316816915 40344230 754071273 861301360 879044817 424802962 305890656 505020436 417518741 829402630 486553565 260571796 95891767 833543165 31438383 656723055 560971117 821083520 455778067 266670158 925989952 383477407 132641190 949464382 858760219 886827199 600512594 40838063 277949567 125034805 697150768 455092032 470471276 621100841 398747676 940710598 567251337 177641924 522750899 984348387 668179075 406588163 213072670 539344329 593422061 949814981 536664782 167746672 496239708 624743567 984712568 293695007 222882349 72469485 466806767 361035625 96644094 1043641881 920032918 186312505 371776706 805509480 998459840 922191432 235202807 855495946 471066458 471528408 201106366 244263164 592554518 961603900 998849053 447835563 564936393 307925418 418621327 788717179 69994799 280764833 175176847 1033334272 587818040 989230877 900884897 750478684 620792895 347323000 988005067 240642689 1071249893 879997287 803722746 8163864 30631004 1027800446 770720483 399136204 476833648 554330799 951081287 290774807 41789524 274883440 866806951 892289240 339067549 562873585 200637376 492602673 1012381165 414420356 328361563 943682521 568795550 16223045 405724623 947785230 850948999 216708920 999237603 226047326 259751943 787362798 1003393669 517965612 863257451 151461432 15646379 758457700 731965679 388578645 977841232 842518263 41363758 50837768 419488022 217807210 350902651 967399327 791789292 66487451 1041123399 301253310 544368140 44794428 258278492 633455819 264690548 391779465 1058782143 651220899 1060182039 646657875 441208997 355002678 189233025 602133222 180375499 38546125 985410775 881078549 796672020 672441188 275559295 751726354 297161242 824348634 790437168 783052492 676223752 956902933 571961535 866240282 532438919 147228332 550844916 415630632 472068861 187187112 1031121384 879014443 396481888 836841875 1039915062 409006097 353336857 353382292 677207803 665317742 99450431 324413362 118878845 571172521 19347812 524345307 458258707 961403202 598066438 621166196 1026181520 307349026 17068909 595327378 132914500 861276887 979455127 182788207 967633582 237477831 93744351 223839823 26049695 949011168 203799857 99735239 289016471 619273779 992935296 890516912 742350167 109237392 930351004 763089769 201202237 261924701 84880440 152192312 630198271 211420318 509328461 745839737 559866949 19348418 275873177 318423928 981017720 629856814 97404869 497840941 1011505025 961072235 358205163 190463658 946222456 645561544 608514117 403584106 121584610 717164039 1056555995 9649889 1042763618 629025710 187105022 698853222 783566341 94466533 207700299 930503860 295777832 773065668 234713506 99300438 661001439 981309729 39882068 1047574804 223882063 1916876 111684088 332855714 966190631 187322026 296455587 87790096 835166069 824439473 715604997 138035835 91043891 350368974 998339347 667454097 585444500 611523970 379370373 268264122 508503179 39345291 835652473 643410901 392886066 1032359682 168692491 740256542 236342871 936555031 658910342 1052849798 587021068 268545623 666807602 292359001 105462348 571365068 263863547 407445235 549488507 194191704 345590151 600039237 826791185 827442136 803518507 136281110 37193237 1037111293 434528234 1059698772 1041985677 1002424617 438367683 788335803 120009174 460240124 274035212 980286809 987768673 16256871 209706547 941315071 451921222 1057756407 534501400 605198639 22514327 501639656 872161967 253494022 293378169 390768649 459123286 102135567 837930103 779735774 521388709 794796901 999758447 80578860 465347813 185299773 88778457 632756934 244024540 91092496 727953346 467765239 634186084 591905587 399661369 512476491 305692474 115017844 549014002 884691327 483509369 116003820 965867853 672094039 326394035 689098295 156070085 254827305 265625474 162114383 1029539313 146581422 756443165 649103250 240622111 848855318 866307042 242504696 875270105 466130067 412720629 230388331 681214107 673385152 29252927 138284947 649617018 485558874 313321434 521203947 750217270 808769569 613952191 396719896 886521928 675154450 651836319 722618400 854120780 428462012 1024398923 334076056 454495536 405487979 720873552 56148153 999133373 1028769338 994616593 235478303 486805604 882148502 180459928 382089137 420278845 163350267 455211426 1031950048 230603171 595838651 451868046 22377582 420804155 549538752 606531336 260827897 516830367 808366351 387381594 41131495 1022909564 754965511 349433670 33885386 530519452 82582992 901031002 214811020 524017362 347882671 886316057 529538842 28417701 754653124 44291584 780565256 230554540 279061737 919968660 770148141 1046425888 363863686 230929343 312269207 1015926138 862957259 765714570 869513921 112212397 622271748 587037478 742210937 515879278 868682578 941160164 483664112 789833752 60749668 526748817 549817862 293532867 776254120 279460170 741170951 933006484 410396153 561981205 1045879866 537913697 678331113 528869845 1047109682 313189272 417250632 955878822 6757832 47558963 119571781 282682784 662002928 548431177 130466677 27212562 290897910 853020271 645359370 939910264 467410781 134807517 283580776 789839517 779007599 554016097 493570630 70325332 315350649 278893233 964130987 893096091 273543029 895543057 420317332 193725892 717740529 864037141 164191574 461339281 606148928 1065073140 235122024 261059229 407731050 709138025 423640062 502185125 545426952 683830657 422655306 685635587 669050317 678077874 8109611 809626381 527292791 199990518 264040162 140983427 334261997 143016202 636807918 1072059753 339837171 802036586 190161167 963244264 834553326 848060799 961799567 65128246 588622822 600907057 810705228 38936195 23502883 347966128 308385662 668510015 183726985 165233311 1044162029 1095220 171478924 557012213 800722942 318368685 633932616 1052501145 404388269 450431312 573131190 416924859 310309829 560379744 417611356 1001745602 451334382 859334480 1069830573 358978103 430083384 672095579 81315525 667582890 138119361 400075096 346768119 489706182 653869475 877411944 455825396 256561125 333319508 1013516367 399217763 653347317 337916376 920888526 963707725 392910903 861000230 277162434 419006354 237449873 268336557 339103755 466060979 50347385 825445228 320799667 555316721 727679050 560337324 854341513 583354898 370804533 378515278 249622303 918862271 526200006 460875485 803048228 940326616 264234113 432739054 52282858 550601366 875575278 345129730 451186544 851739001 642623497 504698118 347317920 948785110 1017867480 625493343 75736644 141843372 518651373 663567748 592892026 677461550 121585103 991590860 179330998 668566533 693005852 996478807 1028483500 527339042 367049470 22381522 879954708 146151054 1000025634 706288407 810041101 829178834 953625081 907573197 268027221 18947676 582780949 787513459 709346377 573118074 495071248 338511053 615810798 97992977 165335266 154462744 235765116 233907688 251884283 705827172 319792424 721242764 182353083 984443062 795818755 909780812 787089424 598143350 128307843 550749607 463427673 507458935 971364747 435977617 424047889 671063854 315647727 511673784 156247064 183143632 742692049 709606405 645506103 473864738 650537293 535368445 432602109 849726318 211851821 1055236560 724204450 848682488 391239491 574212333 139800841 416693689 1064820795 813225511 296440490 494893454 882265980 284594333 989580537 505262823 614669119 472357876 769689446 632128762 451575161 968032365 408106500 202292502 1051461881 99524374 106828338 73542817 999982977 65626782 64764537 613454935 56013234 80642744 255694360 228781697 521953455 423200242 813751577 583980598 142527003 348626177 982119726 988989329 158816617 820880624 706822187 871535353 511643443 796754677 659755736 1034715967 1029236619 722630652 158197597 110189675 76976618 808049772 574575803 828605746 714423644 944791581 187386820 1050268010 923673195 77836670 269673702 928273756 960027523 157532460 316698686 90721083 993798099 358586270 168260851 903813543 16470486 978960089 1067913997 831413441 1047875091 263970926 355192011 1037052619 740639552 176886116 436501352 470688614 327746518 690543791 925744540 565982529 225135847 357618163 149825272 283356199 704708192 216799408 62810092 99043706 381102075 573690870 317575050 636516502 90310248 855046921 787020800 993886405 503279303 177715596 576494096 93616891 174818686 458848156 957178763 212383465 512587172 633995316 143504883 176603552 695203443 490177728 885322662 758899474 642234818 926324123 573633774 228981297 507751039 150737896 105326437 469851843 101858569 409423082 270234459 369552371 541322184 395636293 763625619 16198743 419694305 176549021 251520624 657293271 217584645 365782374 564377091 642761838 715952040 852308530 67586291 1049503793 804147314 856635410 721177122 1026984527 539183299 709536944 856529431 996941845 327181127 720481965 767379998 687247490 202671219 177549794 752108661 516317664 807474236 755647481 1022948790 287907820 417332538 825799416 710660449 696279622 168071076 267201724 528197602 1004103695 832268265 468024137 49924626 619171771 270612967 831250633 449725982 972051968 81837061 518098200 717199127 962154657 718616459 565728382 664998164 995859104 1032342885 178430709 992645237 250051923 31369622 921005065 631501673 150980112 963519960 596514143 559587785 520302380 1043448065 241277629 626215247 523135632 118088583 30266328 414279108 1042440429 179073631 161274774 173901288 457589755 595631893 60607993 616923056 301299699 497235189 261948136 320690852 879251910 182769560 842057194 968430887 281363309 351759587 75911128 954877781 829209866 571854878 883393670 1061690386 536988279 772342673 251888427 859007072 190056470 484600697 25776032 626129213 996805118 7467274 431726173 1007728459 462979740 299188042 680222356 640492703 819600193 786378228 2321809 394105214 900794107 852842311 593894779 803562847 124433847 681089911 42682382 73110550 266824224 95045069 36950735 639845218 694707205 75896 734606695 26977623 599046315 490205140 115955722 1067676132 10626929 952441456 1043476012 1045555697 727207500 785180076 826434591 668010734 264706577 979891538 416282172 1063897990 545160569 105935309 353969009 823649110 291321903 492914748 51603835 568775528 279431678 853110669 268438846 121600537 646289331 888162767 153050379 440939745 115740813 439853192 194593256 802337343 430021037 189363212 127105169 2463312 721628146 619212733 730150975 72077299 883608595 119016288 225343282 1061888351 130610964 88023443 1010484592 275821448 809477096 297049865 579206144 24609900 471448256 602837821 925395485 969330465 884800576 711289874 1048466270 1034112427 360527457 770805355 468978730 315919534 216189519 227952012 698012226 355244520 205402970 816193369 850152381 233473706 903797805 220614490 849588103 344825982 1003440037 704066997 154912548 38498721 918605769 72852987 737501348 770798963 521893896 282170768 292596639 1067425487 157545722 92748887 872919781 595190055 151479103 394852909 339837959 205951956 1009261210 573625637 1004990009 89650327 598725004 726937647 496979194 26988277 308092941 159082238 976223921 356412770 395591158 216967505 381367201 834892129 247892583 425106484 745822372 337583862 552986862 396158971 519889108 686178774 1015771991 109780866 713806734 693823679 818595579 1027278819 783841857 703098245 14363424 478452583 967093047 432199138 38439125 825589765 477270205 817093433 72783732 348490052 323268838 494699360 380935279 774380656 410790145 991741533 728834341 35023503 522398334 479811495 598749847 556139850 619535470 599731129 145089401 189755103 126480375 660601547 388272945 1058468230 520756956 646654349 636008914 990693574 633287403 289765107 391334557 579003687 115049491 429958819 828106633 184287625 162878586 343764219 160428130 489922423 778759341 448436966 438289147 190411659 928448523 1000735070 801555319 572445951 128515019 94177977 836918008 610079082 780614031 1063326528 370963811 803969744 193508828 1071721895 334454707 776602205 340723895 716397947 1021803307 87200199 261340381 18201724 161094419 997266683 40684979 269557067 576396604 447388012 938628340 277417810 618677257 356235106 397035850 100227262 417007259 1003484767 644027293 310781537 942667843 531863763 198960617 872171098 714348353 230585905 619512644 945465431 87864449 666447072 293165703 379177377 946986368 797669519 1007536653 24840277 989707866 316677437 115083195 727276830 597086151 10566367 19973364 338299685 831699612 958063495 1072399143 286092880 421042163 390249582 517044555 394729172 298807746 77593506 965774078 1060882550 35989665 488845621 493751651 480634217 992255951 715648450 181737460 558100452 847504967 877214314 271060886 1057119998 707279001 948271550 5587861 259547332 796650174 277862892 1070987157 680965602 360614439 246758521 1045588123 799751209 31665356 599235796 223959678 679182841 900641210 824046747 939743584 145574625 1064126957 446512541 290400247 125652036 210954764 679154245 1058885935 967559070 1033811432 372794073 883693818 902890747 272252099 962372821 589918398 357317452 335779188 656582877 388886251 596956948 90326988 297259615 964363703 1004961793 145699172 787621269 80244245 966632881 1041563166 522339075 346789805 487952741 528696625 845635332 358174889 695200281 258175579 13894723 255662303 939794494 918118096 269005593 1037554424 581361282 223235664 566693961 551708475 982791479 260800527 449317801 207612700 206431797 71204021 735369123 26862051 921731516 631551046 942959381 834131801 567464500 970464458 1052304785 342320242 285291145 517223870 487103357 260046776 779902896 381720252 484122871 205477760 912936356 925670307 440802557 954133958 773176336 462828436 436996108 402746712 684843967 658137098 429913360 758048270 989591652 720929533 507593146 332396937 1020425313 363098800 217185274 1047052668 330420524 485231563 152904165 816006535 1063597903 53620742 422489776 1018417916 520211048 868049628 992223901 485773796 975999445 447408133 123845753 857281397 66862230 779249997 63523778 681354314 135219124 427765335 102734414 1045522577 558108647 423129088 829615882 510408905 479598044 823603380 489160691 856906166 708820559 838774929 895993649 449943641 644596812 1052891961 605767570 308028236 989233929 393908074 420588158 565185834 592496068 484327758 21532289 264227706 978300802 773796091 1039450532 677384865 453427017 129232271 618211727 369455178 281891547 1003512522 705552825 974353885 207398643 394518354 936943399 432414096 554802054 392795926 959721119 911465621 384690896 732140028 372218169 1068919984 169722100 400556668 885130471 598713909 1054015327 957518262 33964476 369115556 85431636 654385279 423322069 135549864 535052543 667721063 242880561 1041687287 925066010 423837121 347684466 80756834 199384894 629631209 598878280 804587487 210208122 926953929 829171487 186851207 13338914 171855966 158203896 742105176 890293877 120346698 191299683 124484195 298522977 842918788 186806199 981614723 932107066 355074015 152435891 998287305 987197546 1009875538 515576638 836886443 572552721 557330965 935315173 720231010 243517001 134558386 508672906 404514718 399156497 241331474 7223849 709525711 1003210062 757998876 975563848 393067 977446878 38974084 864177481 608978574 159126214 421059993 313819182 777652139 261983339 889286133 420830567 428462323 946187930 391698899 11419637 370761183 950470766 901210591 693654867 712554089 171084388 1037123050 540364436 190008560 401453533 1057599572 187150996 328414332 597938986 292792548 351301015 297472625 573599528 378382284 141288237 487903831 975296124 251517560 810869641 475280021 424292136 654469055 134763085 967363422 614652324 1005338289 508409415 1045305317 526346952 873016659 723136311 473500581 318153920 533508477 899712338 515442172 330464838 7222173 769648342 125871329 779821164 348600460 109190488 659120351 221449721 200160539 1061418985 863097462 267084156 224495268 796140983 345822409 124933805 1028707665 214208391 650708849 529472209 566664700 319901773 153793751 551622188 169608267 736795268 1049296431 66660802 587076730 464824766 808327574 484791113 678907128 1229612 843359747 870662306 220928289 274614137 533856561 923912458 954421113 456096893 587070181 219451386 327923415 353987294 913550775 154335710 178470181 759675674 1056198734 658582066 406648611 984877096 510036826 871426344 381240327 1064275276 927934471 628338189 956868649 61187486 660302064 1009430331 283059834 182054019 510281332 866348791 500673345 572309537 875105879 93235348 95842667 54582452 21418367 691654195 599642904 217777655 657527125 618656021 794756735 539491354 208234354 297979844 451225440 106874571 127254264 719392043 783552363 120350904 536822891 645008489 399894942 26901824 290823809 610076715 141355499 155487414 588790352 213676976 896836305 300230487 212349611 669804846 822627442 504422105 415910425 46514374 614934895 228048450 142706243 775796650 929707474 858603263 1035018030 878298980 149219961 141525917 482981675 751087214 801772571 1022396252 283810187 452232468 964910534 244444233 429191177 85595731 718452027 502459627 473564315 471300053 296279976 118547518 308834627 783476225 845363276 452473830 540522331 871266717 653576949 812380194 996987228 116168161 158790793 991954457 560431454 791238384 208165243 765647560 509779207 346128062 372951272 186338359 369124522 986745132 1049710531 28422683 345972389 965107661 874247722 910135867 7414507 995216741 663486854 559471180 375796973 1016958457 398558995 1044570644 308283708 62251942 792050762 229838934 865264362 530200403 585730825 434300387 1021566706 968043663 894802241 848738691 35015865 1021263611 791320181 529655664 49734403 1071871497 531006680 1067238898 796872863 848602459 697115378 277108078 890194264 814881281 657140810 76897360 182039305 586685128 1010970076 716803930 329088529 878745976 890984434 557261461 185869272 509921204 649614132 287110879 408572354 132692697 497940549 334154305 578161526 119379595 1008724451 20969913 113204705 808606105 387050228 823817789 919384043 999856871 861208676 646289658 576315374 531691608 929980967 922883642 948204007 866634858 427163003 300283019 199113659 836740022 333876476 761699809 802653950 526638102 1051856890 498022896 495245404 1003353508 348044894 790441209 881042191 428890399 535233783 443009668 551327178 862041117 940809327 306581906 967854670 187322325 527571374 159616539 267288700 482525472 222817224 732792525 648895560 73434329 1046746865 213835464 287082779 452096393 355434683 399487995 54196291 841277352 247293144 458649459 319101777 283126855 242379562 510459733 907455783 323728393 1038585963 1053751932 261704033 638966656 288089131 955828813 746299256 429203772 1011017669 300213625 773943071 540985795 754538578 325964811 247049702 184181734 1058935955 46109404 333785365 287345846 420905422 1029327669 1044410965 935187922 1015756233 306097417 374957338 372138853 991183850 673257502 380544783 740531760 559422365 362714568 39224510 908318751 924475689 934200481 188491957 886649892 974194493 612217355 986334529 389351053 563463751 221325480 1039731712 909210508 537124006 127582336 852677266 69784144 110141895 952034480 304098622 324808377 64201711 54086271 777583796 797122003 352768442 286461140 490789117 37382968 608328395 474581615 225990635 45777248 703947990 891997811 638141852 436539953 464830723 1063693789 362168173 196894794 744158571 792299689 3263348 778928993 145066202 366946058 783236986 625902098 837947650 71581876 64697691 901187066 697006877 988359756 57352898 865237578 897737487 452036454 747064152 524657937 958807440 390687655 43343374 37483367 461775023 875115764 171648099 349691601 823014424 424746853 192100315 1064431174 884616981 292591870 400935081 21182664 482453169 1039563513 809615582 116694681 737617575 797339375 924446447 976734726 585017826 632489383 346130891 330211679 378138486 636452834 888517611 457461875 300020446 447305411 808655599 482757530 667583026 91965256 450126318 48117788 1069479087 608339086 809507675 717025934 305035567 662738811 414220294 578997299 519664606 999970804 981272897 930822124 416914387 472219342 358114246 116738369 995805325 444415335 736800510 29926879 15331471 12736606 503339111 722500577 970079911 643495793 129517117 970762726 544829256 894363638 801905170 272888650 173255733 409149478 956726763 682924200 514623828 678080384 941457256 231619018 253821435 440072945 597825351 52413595 31586213 760054918 572233813 987315846 660217112 849436903 978770930 363113755 898821335 195172472 951731169 30115339 313785231 672055231 496775812 189985942 1020700019 751157908 588241292 741895817 259873458 471730441 25629626 405687114 423187465 418540862 34409125 560519644 351014850 488358955 635058727 184453100 1026969474 657805601 35532371 599449448 1001015801 104899759 144114099 794766362 812625908 570814943 539486301 348514133 66016476 1069344530 809541374 65255745 960928848 774086511 139307820 380253764 203181979 315166240 393250870 102783829 770170268 692847741 475009219 885133284 1050486939 765814264 795846690 52712507 230716691 915517017 53897260 152772803 830487027 174415833 103291167 1039349245 195029122 221061996 785303701 271046884 1003230104 1000874672 13656037 490612065 223146515 404450684 800559652 942101244 837833279 290339021 257732520 512928642 936627674 49906614 594541191 925300164 815677542 702040646 747160998 967113604 380168369 676506286 228470142 747432791 397050670 266383408 704924177 1019831890 681874666 462121239 676027270 409006761 309040108 262354139 890511567 15460686 257194491 82567603 868600281 364158668 827137961 226453625 683439068 321512534 211410079 167458632 254425884 394609093 684746641 937244886 787030102 464744242 868699008 103607834 782064613 990855494 522766625 675850691 606570797 30845270 234136284 910204581 761934452 44262576 687160844 820849371 716853508 440958362 446208061 43299228 583989719 889242481 477775271 834948374 764429988 781567129 641277975 487140174 459465727 99936046 535549376 737479608 489606607 109998197 601767774 290315668 126540993 813190645 990893405 878836945 348831824 643533839 550363638 720211164 901573329 457076715 93008117 438555931 1023173070 146284902 950150662 101082293 781338021 730148195 392298661 1036372601 219656551 996867132 211447436 599559098 533593544 467921722 966315986 307804474 227057933 68625015 88811243 879576907 316113039 627697309 603418588 65356370 369474832 673605221 90731879 376540888 425109485 877137255 582458842 993248068 314999273 1015404234 645741558 840182881 753489250 321992492 1052864368 489352482 268830696 1038036770 276488226 316972112 566364237 875325760 900244683 157545725 810365282 807565836 997885992 285778558 604709972 715407952 665012533 777278915 258257140 944030181 20971852 83261382 437432189 682698734 540896669 105241275 262682829 825308838 205658858 801569806 244122064 638898773 341413816 946569041 790068186 685086164 803277882 760347939 2883504 228046643 119933474 625007326 109015777 607170464 900072693 712416484 983499882 627482734 766037397 1051607126 135159768 407398565 182828337 1003312613 142851461 4225717 713899329 339311741 973887884 387329411 785806491 413664933 1009638530 619676958 462912346 20235265 172997910 753393351 964573260 788011032 448354748 29885219 739793176 984149687 133266926 588713770 542917120 31569637 41851527 607592075 1012079682 633952347 500728203 970273621 1027130257 17986685 390004666 477323827 619237571 925402215 1570635 736434516 1037706850 83100957 289176172 857347052 1015755888 472193795 247330775 858610362 160476024 98447159 1678555 639743509 1048379327 839790872 205274862 642366592 692501320 446838959 887804689 615737299 138614050 929523691 1035941873 451400991 56205681 898743580 306693852 563835638 950201181 375542766 987833486 456095324 830982589 720687920 406174275 921667406 881307479 277887977 29219535 160880293 242665066 101428237 993956039 996268270 779959985 324220815 564176068 820898886 860972285 762568786 339729004 660315791 496529010 690570023 423132907 54829464 704161591 432794763 295095311 186263825 157372087 158405433 512541945 433514316 745418423 379518097 289496126 693125026 373798534 70667939 460824703 810367549 859576823 184574439 633118453 25512890 10997246 210742865 243171958 79798402 527232467 228853457 72585200 604572113 587772586 143172269 895765306 485323899 692819236 125919857 254289490 714121186 691626048 986377882 234581498 1046166339 778706293 1018293512 418009989 414987066 598262177 817488625 713559515 1063812653 658056491 260067575 465440196 1007654268 787360160 320532323 213672911 686674122 831260268 832341017 281101965 133086539 866462614 352651752 131071086 462368428 285901258 310295533 1023905007 509972578 829705672 583798231 542444520 927616589 896307687 1061241084 99580256 617849044 217718281 777562996 118518123 387752222 1014073875 989549862 367351395 71850997 300725557 836724841 915489165 551485942 272773550 182054132 1011990942 64182890 393293346 1068574963 924729032 39946113 143958075 100726697 210116363 406545114 98998185 595777981 854298453 134538806 564570418 528831332 556231871 138894558 236279019 777998288 553941990 185525658 715816922 824681476 312060585 426256255 58062269 285012976 539169749 653160295 726028952 459404939 777403808 130236338 122040928 617940739 335461480 19619062 1023719740 480857214 30298596 100182231 1071435824 687122169 502565477 28393439 327037633 131024663 95137579 133600348 960393160 1052190597 517419435 895070598 869842336 414572636 217802251 451689079 580286383 991835887 761287646 984754583 702724315 717695694 768312053 1000229237 1044340992 89717000 809167786 924432126 448546661 360247343 753408309 733422185 785368198 546750746 445711161 559595536 562290767 632893366 177743186 757805267 927270282 60121594 533110972 117189624 289946567 129369081 991095975 441149490 499957291 102625375 186291967 446856863 286110231 538998223 302894451 858655485 770771137 836370830 33844705 269272156 663148768 515886521 235555432 222376535 340949980 526896561 361542001 796302295 16279535 1065151311 1025714856 801620951 649661494 326030326 925511063 433008957 369053582 755721931 363754202 133543545 758292965 511296151 208358507 954145707 121574591 314592753 651214844 376471605 9590695 799864863 982798542 638082900 265014146 721112700 532970995 888667942 80005969 231350965 718456072 192338336 419363545 318271628 205693973 299002327 412420509 716111013 1023879953 634652520 780827403 819962212 250984739 465480364 379242626 641963233 606218265 292754018 21827891 563401004 767242755 919866847 946072285 376554991 295996568 1061343461 508031987 627682510 190358186 657860256 945729979 1038282327 986291112 929186664 1006242062 687148482 718690106 630460125 31193687 958949382 834503729 731250455 1041997155 925993536 781359693 397929387 655620735 386117944 1060733938 1052699063 311511683 254748078 84761923 679213031 371455123 14936186 301714990 944614509 266779377 1067909925 829272245 111304508 183202380 983022977 986675923 321404520 1059044821 1032949491 680615482 196047278 874621609 675580803 12981269 673848714 500478330 761962207 779762231 1025204522 598967592 441416380 81772892 639550715 30540331 691480809 230323514 315168850 474619243 1033215290 304173418 127460680 54089348 227545986 843388914 340505506 1055883240 447146077 309812736 623215018 222833123 149220806 102975743 822677202 895739741 112471121 998371405 256544188 603545752 56400835 410147939 850516059 95004970 76851648 700924977 418225115 168962980 36270209 763587572 109665256 379186330 554514217 443377610 866199820 1658260 307308383 581342769 710918842 99130228 82820862 294487148 173215996 515634487 541239590 155605224 1056775857 752193061 45714055 130035921 1031603339 826717089 33842743 718243947 555151240 59198475 260867937 408495666 589941223 151095404 1062816438 923051898 446473177 815326616 366472267 1069564526 67025598 104230504 339809949 412229150 56804322 368566174 882577887 720603623 421574277 752846066 444485233 1046128962 824793456 183740892 1038150030 775171301 522775139 368909816 84231401 180773304 1012079515 216397599 116437368 834131321 817118296 301327225 234423207 997007606 333031660 336267558 188872144 711889249 76686695 764908443 82158328 335519371 974764186 404875438 491478920 22617242 812231542 677674450 730230128 780591390 910161347 922861238 899524420 616542455 310860281 96743757 838084013 659882761 540385143 385502638 1033987731 527643612 939740908 71962355 852580839 325253111 60244059 760390321 973872296 205888393 67857012 563179386 706976476 779241193 235625322 628496457 444992406 597492247 16226273 267000613 245824874 202115983 380925929 114695858 1033751816 610385119 387418705 26632075 205227232 784903591 828959528 67354053 328669077 820110268 395411142 159345470 508958648 459203691 662157565 276247104 390404714 147141187 752512943 633329432 400476776 471644247 62119950 265972018 465071226 358442314 526020145 328284661 1072096266 17416636 474679950 920301666 471189628 633992208 231408575 174355610 724661612 267421085 161164922 939126247 465912779 1045042163 937236963 878764061 924966061 190963786 90567771 251973473 807249784 850390738 151513227 933181100 270319530 608136298 309944867 690283602 590637006 609847236 279541554 267505878 957426722 620372567 953548154 512458379 809640067 490697587 394000299 561097077 371459903 879367114 272806350 996440965 938466469 376216486 853360116 971623472 1048308801 328224506 128520008 84564688 294099397 288626688 491273984 298181551 537561867 1010447960 697372515 872229751 1048992697 496755025 618751074 38668059 841915674 944402768 378916573 1003228104 589747600 992058056 413870194 548360619 763059609 1070040362 378579468 804493134 1052098615 375034839 257667628 416373155 114143378 140373776 657251376 440400513 900565475 882188311 661568345 571035018 58912911 68695164 990327619 539725358 992532162 785718545 930449727 831953073 133421540 5993073 108071390 278290760 923845666 65499428 847113566 941670271 687340552 205271443 218457657 330093638 1019832467 462298149 512115687 644110319 1056631437 343006219 473284922 483299029 524762440 375902903 586097660 637105607 1058697758 1010291575 456656350 379869641 559069258 611675465 1049307957 443060646 540101076 530208677 138365202 772819438 737420377 154359218 271819704 221367974 746803805 689953319 291968187 851797385 1042584381 597435060 292560126 394213826 498703391 619627479 320735834 770420580 671451663 188530370 999229051 190188838 177624210 763778239 465883366 271816710 754879455 553293737 879303816 857779644 108705394 936150004 749815473 262764412 907796746 608293100 978186078 736108577 270772508 784074084 698544433 699486648 372324658 727885818 952538646 503047109 251176787 687333449 259930843 969246287 677913801 400828652 345596881 636355273 472098103 743870334 173754295 1064228431 798593921 843539809 285615712 612803179 1021340662 37014841 956258847 594424348 606553417 16299293 557886193 119928141 773715127 576688798 515585530 273059965 636221889 402387313 1041824269 353093574 146401957 773635157 343462598 247441073 322201636 868594125 358172606 187578012 710336568 343250359 1065707379 379554405 732669068 1007170416 615415296 1050541904 1008142941 1064586357 544749504 401062629 186325471 1063063447 437817375 566528830 787941304 520857685 133537926 609700187 903572674 878308099 743632320 273852940 810071864 571381186 805577953 574152698 617866839 973887101 21488249 232182286 851118066 1049840110 734515978 779019731 967653808 82851485 740320821 816369472 78991797 755138409 556004248 171057889 225327401 381592268 451607533 914430377 982456116 696261571 185196586 600881266 532042145 878502720 819258726 412478761 797285004 891174580 557560727 326400310 269987670 189543243 413984064 148653497 898428660 286444594 1018275861 730177532 1028594502 955851670 380547890 466970848 156066247 277820402 721975661 149680276 236286791 415209179 726021439 389742191 961959938 362564399 845512643 309101793 720089277 401287683 412167633 751844512 408229566 482665815 356545992 515486770 264332833 1004216174 678681034 20250831 505247382 49180715 804452666 443945006 680445543 638668109 943141745 880130742 85596744 399438408 986980749 941831054 275426751 84295244 693287611 741122790 67746680 809514034 393536684 937130389 269904016 1003366846 61590157 81336527 401367231 257860274 578607669 103040108 879596386 478790018 532283168 901332497 803351406 288912843 823191513 989013714 414145771 1000830277 365966062 322093106 1046586056 976019434 724006516 201631267 215789073 983240322 448678319 60789778 819719897 395796606 19738801 765390555 218969037 941728804 542705245 26782411 72528277 986540192 456997662 577150653 807747789 69718010 352921114 742654438 205251948 154928294 219520614 566871181 757006417 714288638 393804854 422923547 165960216 695139518 669518732 684719332 763848748 1012538643 682529948 410370105 181965908 847587754 547946037 169974907 726480375 419343228 790022105 679502385 475582339 675682298 335618457 604043417 313510050 195371126 988126885 417502543 859229710 27852990 799064725 317036456 1033158514 744441432 182337538 975708637 906480241 970689771 639164739 161120203 969559980 195827924 313614575 12048651 474513940 695465957 115778868 701517956 702531356 982275300 328610018 763786817 539122104 947348998 1002428411 251375612 809586082 623861059 553268583 512073096 552265650 14116603 447942731 74847991 1042556278 454486667 149248948 277890882 1051418768 370601198 643028829 656142259 536542871 217233655 546206584 247198854 328510486 572377414 513578435 1044507119 916834320 888980743 939944501 1007601160 978393418 651354680 165580829 355748571 208513612 161281680 406944855 881339115 178823195 429370932 360189989 173409531 802656205 492765260 417592544 847527005 830115509 11950597 606129342 778264213 366831860 167872464 18446256 925731166 1034851350 597403525 501557253 165863487 1071014003 36632903 245599266 417596894 280430950 17471428 111728988 599811003 384462505 1035295036 45596350 951182950 985570601 468564084 663222826 850046332 486102618 654307362 154720613 439330862 668974914 245761485 206433211 855872715 531501557 1052380195 1049814762 288634393 522152044 58207727 859818607 292585333 824617134 852129006 889284314 330988764 657317976 481852724 51081974 908267034 489658859 1022642977 398881662 689557363 251062769 373888883 375455257 980272058 368535861 942389686 403087218 235400347 472915891 637004828 118148105 716283760 181479154 175282839 485627047 882331762 14051090 944906167 686301414 128582141 708683771 333950270 1054972526 915119759 931753458 485414664 346708040 32738587 879455875 424186166 141731221 546938535 1032922824 31302964 172104183 588330941 533455975 258582083 646512220 978690700 61327794 663130372 18822217 66940634 419044659 985966581 169317128 404327272 445415487 116781273 590715266 669013438 283151785 349213794 935113564 627482310 1009164899 64923326 247962301 870682175 711137866 983993552 1034036651 15786333 512731720 1017659049 564694463 443481457 846296199 9150624 268556653 381636079 729556617 780197786 346095442 35527003 387481386 639203276 944521165 233324026 353051021 509774908 835939890 583872027 242538984 608211644 496023085 688561407 104946460 292702606 189147450 366674253 1051132321 439873810 973861160 832700289 883277046 902101297 635446387 954099833 629168084 386747300 340614306 541785253 462632658 500350816 615628121 125486305 555440325 659976999 128503488 671098906 1053229854 113241216 715822995 905675515 381660031 405312827 880132362 1032241673 61054315 691071470 9929697 139002283 548132143 8652829 268881877 1021100766 216611112 135761905 1017821325 974906339 883496696 343158345 7630050 827456838 652167158 1040144803 137633264 344434137 196887440 185084224 985102693 1065975167 984921341 787498582 56616475 99645633 522448994 368457620 806461133 419876688 945855731 468980037 672365216 684185665 805818575 738562135 45605851 570809301 12063398 517494103 150608620 813748092 466367970 843326069 662398267 768022441 1046263647 515519641 497205923 74432246 635122821 765256386 563478670 753618430 911182974 714400658 740571372 959383120 283943226 273681499 176863135 49049699 301426864 329062236 951608351 30437580 1060403173 872053944 998675747 875845716 391590056 348447468 787035572 21817445 674832594 1425613 964894125 776051055 851945909 341440598 708047338 584519774 83650508 148134700 883778844 967391368 487322866 72117717 570033194 744436643 253723116 787683863 246397980 266869185 191166390 614269043 220907645 1042779450 913197934 906155036 713553382 850487746 723665798 961158622 884701847 835431796 892216193 412285428 278468697 386232417 615596262 634933291 180959367 671207832 599980231 339654634 637685717 934558370 278932732 160582374 563047523 521615538 965383498 348693255 775467889 450272837 724839801 226393879 955506456 878341426 957536507 838333081 845985666 36851165 17056288 1065023177 40194992 588951573 302970689 895228755 552302108 530649129 322027903 1033834569 473797979 29294415 209700912 799122607 707072055 787793 179457791 510950592 327802950 474671551 497527687 835828009 530551860 418927498 82312117 529210177 467162458 466018521 104903944 632484882 336231590 377131942 699238230 417472753 570339384 284158655 125731147 812467225 819896239 790638724 865771247 804967997 936351788 911323284 691337883 395627739 116763240 795032144 925387927 674592504 969369360 563650520 637760847 765814200 1015247345 1068189955 881969166 177260128 382780311 63443378 1009461130 70035436 850358021 28851318 625861751 574978534 1041188701 45019628 393362100 220252201 68138593 788824800 396208130 1023324044 25753373 328733489 641365943 1049050530 811205270 459717046 996980846 460682106 348768828 475745796 263374881 690611869 800228030 160888715 775938266 116216086 799633558 574089589 994930320 783048390 971782340 928572474 874007963 127360039 752850829 996510925 832822933 119497723 276340733 79002747 7333574 124033992 665427021 1033878925 544521551 660947091 360187201 1014370235 721180710 158113053 304023222 1030194977 835378508 4296322 866187901 111753112 581664219 456498129 209893446 661797734 645084732 939525937 78540539 966316449 411773008 468467570 712536741 599133718 968430867 1025726224 901206235 578746811 253900893 709318680 789951633 56909465 782517024 335461855 284242816 372126146 616833438 301144470 678264500 951843009 980148987 869221322 108072962 552870811 152420247 397418877 678618375 5276729 686174262 508662736 105286605 712101067 388994286 168342936 477646196 717309175 545138452 21168653 1056584980 360051009 288108563 580914498 558557487 550091882 262378968 784603040 704487705 536316199 1063311889 653209152 837044430 802082067 454974679 957128698 538489007 416630422 897243511 97172137 202918812 1048552771 926838987 103247134 1051780935 383803754 887543162 830831979 704180108 700176455 1021231087 628545219 40122265 649934677 120095075 365812660 937278021 652277520 352754279 734084985 44827400 572417747 971533755 103989544 183207162 214947374 749910849 456325498 300807909 147265563 640545006 1022416538 542684893 360204316 856078571 850174678 922415866 549586382 924769956 976288904 249191934 934500671 1014626520 526958767 659603791 657731191 732119145 907172556 723461034 964980630 363051291 389568692 400977442 156530811 363085668 510514089 240911133 914445448 704606615 991884043 652267660 144232720 607012666 765282500 993406703 1029717881 636824259 521059870 302512728 933496752 351881468 910189842 785130691 139447961 456643671 956097835 713631716 188765134 669730503 207647002 147851787 228734344 117999943 522900169 196851898 464325609 84350330 701630176 1064655602 338660937 197333778 893613781 268097953 764562998 483018518 891178642 421960584 468654183 131549876 715075449 540238024 589616434 384296620 554480591 24973368 383168863 680989006 614299347 8006398 815607712 698496975 483289972 775740711 128176292 685928658 231763226 523314413 716903661 805391161 900618006 374745853 796619095 1017758242 125872562 1040992735 815049135 831369938 360191653 609478750 771679225 135234566 1070835457 735079462 1031011809 890462184 356042253 445007678 316215210 664585889 427480849 623488655 108924823 304718917 895488658 276327423 87548683 1016796957 396266249 281716143 581929080 600549581 180429114 256525983 693889373 608819368 530470769 426143057 993082522 92072125 41156716 151829044 460322709 817582996 740614104 193347891 76396132 673733059 45674876 407231312 233516555 297135016 19284879 247018860 437628241 759174503 908289028 448395891 473859720 756779411 552421208 171183733 926327650 526586538 1034652998 1038261713 1062368781 543472751 496134914 301430349 781801882 400760147 280353876 257949103 265406551 1045090324 353314261 580419440 935147585 129160505 366934039 71597903 887466692 163590377 43804740 556745946 149985599 40489964 804458455 813865613 403000805 931125927 1059750481 3260276 37488969 472214699 935686724 752365890 470487827 747652369 151101960 405513716 1029446344 32672967 507499379 170538091 880011921 481297463 121845694 701267256 388909555 950960942 968525840 82225066 766956454 784192124 959548885 220943868 741212022 141778150 206767856 403414473 842984717 408140525 472088777 270479133 726723637 779656148 424350331 195720713 1056662368 963568604 939931047 692478812 199247084 834495126 319624512 558432646 475377012 615710127 1031815974 469049741 278556939 89235129 306895829 722592524 41457397 996882984 907783288 268316272 384379208 70648259 1039468627 16127640 969258118 426143134 905466310 374848148 1047511333 1053279625 149930055 673370145 925865372 985048268 337964331 467705241 1033247956 902603141 197876892 384501265 337881896 850454118 266128992 73356105 1016064442 835056921 962397440 736757249 43912749 663558619 834898043 377962701 213933867 49800970 961711762 167386332 541845709 379095496 430372492 911342242 607424657 47976046 988732222 742894049 1018230700 830504220 673958744 246381680 689934759 1057535307 103744378 386956216 575223657 740763759 575685107 764518020 1028812895 152626703 481628047 350202706 908419627 152211374 299044663 340028497 1024427805 9965436 781282644 15051748 556217803 372193655 715605480 649285944 427489264 809723452 864960443 657265748 180195438 868866301 9256251 738137432 154110263 276532677 942635218 640767442 550734174 1067637987 6767108 35443283 274918649 996974549 605138756 31731849 1021267835 485779019 484858728 757149240 556411450 929600312 127183402 515359419 613573309 979881218 480788568 1000105279 382870835 951243070 560446963 676923052 74407464 161228539 1040849017 179505882 576911330 525906416 766112163 468918237 495061419 155163936 130631918 298322735 764158241 468191242 157263869 133375937 1071472475 551107409 519293030 445114541 306397168 246274519 330459031 49849939 638129389 966200327 1050683620 217262892 323596704 144428979 654276843 519600274 819554675 925866317 394574709 715601106 1018693037 148824301 733074884 10144900 627387577 114250216 423295758 53870315 540158882 907149667 303546707 904098333 957291810 125607847 523860655 194447362 1058646933 531188541 647911910 333096679 914132868 370053768 854455464 984335060 873520718 33471551 1060777472 440995661 925465307 328010774 551418162 300465849 671422447 25406639 321979994 625352204 874948469 758328353 527512418 554959907 95385609 271898765 467173277 567084319 401453307 985337134 14662445 409076811 366368658 189510184 345569654 462157513 1013910925 474521099 822848075 518990645 410794760 161369234 730408075 237594235 183558028 752764509 832812871 389214084 1047958588 188412571 322374925 764634754 560856731 370770680 287961174 1068121935 461797582 728389828 375733099 921285752 677214429 202815354 117143052 797972953 1052520106 14100475 624723841 436941520 434868980 852787592 869653989 152152239 229875465 776977120 1047592624 860220332 179848498 530613510 234121095 958820252 723463956 386796698 277167039 820788291 1034201009 787741153 429294254 582165115 315000099 952421751 1020146138 388385737 375306011 458314698 778478265 975593940 230372284 474584445 138438114 689849826 928582144 959056424 674119156 834831193 982773204 8341035 170248320 897590692 564408462 988867863 620153646 408068173 86745450 4898170 474280809 337062082 443221960 772784119 736836569 312266573 355218499 108421931 951395271 244035205 587367206 1029786755 81257512 111376691 856780774 230345107 674670558 699538815 169275261 932785118 626914352 159349788 412077220 1048371992 956225940 305864749 9580774 541688134 130958037 245489915 806553745 235774157 894982235 703515477 78376693 392308657 702302919 954940022 338721890 950347171 917317240 828034192 127585226 157994470 510414294 1060428642 1046958452 773059727 498111441 253678979 613433745 835679406 197320890 1053381184 1060026608 528913678 1059640119 910470663 28637144 618667950 18912183 757899590 520367985 840043418 184864827 1031420968 178385814 1046331190 637424861 809152234 353918959 729419391 241265646 431368765 687886586 930588411 5058586 598454391 1053695104 1066385126 157140518 259426193 135795370 557357086 642154825 940623936 581159913 224224252 207141021 867865304 846035472 878810243 347280626 265515004 262170632 856785987 689870487 302581271 793236218 633271169 634391655 950110690 862303506 96430111 549933157 825262636 486017167 455686615 80737643 522458045 798963805 648548632 791966029 443653214 142601135 54384848 860504161 977575237 809444037 834400573 681805360 443080363 381539116 535927016 201793731 671225278 996906589 766623375 536969335 437681888 482729205 619002642 956829632 406515479 565770613 224011395 854330024 579871264 199094707 853405032 302145606 622612716 844175662 660329293 730787267 728891483 451977353 420547832 505468575 1047254608 906090250 963877940 357540453 804901548 913517572 1034890474 1069879521 688388318 630575539 473624690 302359990 301276300 633078138 952511792 811674068 1060863887 906249874 558364439 188362494 633657229 146027952 879540793 429983205 259109613 912955591 763655451 203886484 954978851 51228559 1047268490 989752029 822583362 982040389 891947692 194348063 171630238 341371808 513417506 387553945 412937338 698799908 921301825 441880068 714746289 400316057 308240972 30907535 599654230 257712404 445280279 307932133 913699595 709087280 661944125 759563309 980083939 495369221 367365782 192969290 473516719 911763657 786228575 57468983 301252807 658253771 244483514 525397842 654108737 304302461 298451182 545838902 608941265 719153691 289690551 464406290 74988639 883724124 480257847 544919317 237857682 938136451 284611497 849038312 888737747 945782574 730398513 828776138 452230194 883630624 290603027 610370986 572096547 1065882000 546348031 408310205 999824559 301739153 527146564 716818957 227145327 388772524 1071226316 1018765516 270627840 133188307 788856577 722749608 617281910 671236134 877779594 620286060 581996086 209470109 201848037 375436000 310583122 1027839635 313720940 562432237 936110576 1060565814 75301996 713837122 1005942193 663031833 86900893 1006537490 75244831 146230730 29129207 812839409 1005303135 857715798 193023854 395527290 962169152 791505350 391470719 352726874 305720750 429949336 628349739 826701451 897114515 682261016 522004735 874699428 1012636663 761916817 213406750 189030526 612308506 376481415 243809207 536640594 30286822 390427449 740045315 406560501 682018763 8219375 251765333 407854926 503902934 36819134 163791669 408371994 271524492 321214813 725975261 302482014 54596545 853148685 237602026 777919151 839874184 902912205 431737657 607315175 800384539 72524421 249024274 431555210 727559004 894742054 922536964 910264334 998717467 993581359 890551716 471439948 462447552 774557459 80542579 540177676 1026406628 430671890 941313473 717786932 536391286 289243148 304490476 766959313 259693378 706696183 542530940 840002337 916307516 799691485 600864584 569555795 414946108 987999245 541034335 464078044 208388276 626699234 749493210 170332343 835173273 520800126 112472180 472633024 430465057 990374649 526353931 418869912 780118322 920186000 314433214 955344584 894780544 1042619043 235619809 200572707 1041854591 496741677 937526733 857315326 663175722 457902525 117502700 397162738 365414224 220409570 345890206 820530713 758422642 312596956 876237755 406593296 789503779 962692595 962822772 332991039 815375309 652092146 111864217 30124563 687700299 726618560 304032478 973272592 215860204 332706780 735294147 12837075 254492774 900430559 178391179 160464905 539219443 217799667 687467578 900477789 842430286 919327296 104871503 356889924 499677710 325968006 516517330 552686458 174104075 565697813 109439543 935509019 818629965 162421318 57628245 77804728 708141821 882793440 203919847 554537559 869478779 511125810 315269187 212291921 577726169 789803967 903155319 1003318588 339288840 818923397 265216383 901517385 899133637 470036649 430402040 923560791 527264285 1068555614 151664581 550876746 239930606 84124834 158846979 1015783963 306354131 790232583 603880128 711085215 351957956 225521475 154186530 333811170 899497872 817294345 834746685 951909889 819619772 169207620 1033487773 377318851 973113871 457869236 1021080575 346604148 945661031 574043178 147547920 564375429 873419233 660019002 308439472 905479949 1056279748 934218647 758721823 201852493 967604278 442213649 1011905794 621562801 213392697 281893317 512614908 198840338 210553001 871845658 475805433 971891015 850520556 972215299 692885537 306584734 633178200 18180448 319190476 810365777 437779501 185793750 437689753 876011967 1027967295 434186509 733778249 103560978 545677572 17856695 398846723 901303466 548744998 112484057 974516363 916018626 282478887 115122658 962464935 118281356 348597504 642811548 604164949 769431445 256332350 796292735 882864078 26114903 1052726511 322924965 899567915 360211647 733135023 337310948 10552918 904198889 746923312 23325061 787780489 413332786 424330833 638164150 405438138 893739657 189520902 640819026 826961699 1053468279 208212388 840371928 195607905 750416623 232335774 176733408 961979126 232989945 643742193 199305283 373044395 1050897779 322947821 845424763 397012123 1042902413 741734132 557690276 587164303 522450800 812802096 850055478 103830341 20590734 479271582 6848165 990381257 325324408 614042995 594657718 429787833 1053703050 29703695 265673460 667276438 361935445 893162866 978402224 307610520 840147923 627832793 560439673 351452285 538245672 348207025 199512484 453922797 382618394 273434239 896250001 500458087 102123240 82248177 834495792 82587444 951211680 873874648 148542377 1012911849 233447551 953705051 693842481 975598071 829371475 677576078 64919417 98506472 1067484817 60123735 310928791 308803216 362936120 242998347 319793624 743328771 567944379 624471946 333656552 272838648 153748864 449422188 262129931 860134004 297381686 934731879 405502818 527095321 751179242 138923731 942452543 370373274 726146887 369031056 665452747 712576910 336805160 926633607 312851161 242300216 535278556 790090838 376657877 158244209 571093581 855750167 115363431 8042867 612883850 1033314209 1008624496 1038505400 857017178 433163786 716009052 833911446 544091117 943051919 404623483 647456046 292952178 913628610 54961478 450061176 791921875 401650296 40199573 657982940 848795102 989943932 976627729 513448901 818995680 563929505 312093706 480587850 521366565 251665872 175072206 755782755 1041263470 1027812899 889372876 207489420 929186684 428280688 1023083545 986817367 651813520 1001496475 945101638 203224754 245109631 316191900 565802595 282509471 879766258 28543157 411137419 539800686 897405280 172924894 609166299 679978239 663025054 274089486 1033363827 548231885 73624209 160252958 844260167 336758801 544225702 1043845303 967524033 401989118 117855740 85900801 1020867761 539083769 773812720 1043563007 1054731128 966751166 553522753 689983951 380448794 1005205666 655796094 1016577129 514011120 301725569 372553412 988100943 1028939492 658600695 92416711 703475411 982984536 935142160 645916077 140188532 964810363 998785673 257207519 42343030 337132779 595578898 24226693 33101482 879031687 253387199 107675812 549516747 779623436 636917316 691532900 696866695 56181042 384469540 1042231284 313296132 684845397 819886583 787601524 789986551 986627699 34464752 749964618 118824534 880284552 877349023 183074140 279049948 461740760 392819976 1022830874 552851014 807708638 262195484 431052596 141284531 1026520184 223377820 597928477 342515797 793294237 688852897 747064996 609840653 258394463 851972461 443229868 359491463 440338428 578519542 265092589 995844014 368092898 714300225 792028045 996479818 860540706 595886517 392007192 1067603731 256582043 572866042 21786607 436323520 77233256 138513742 768103980 831476214 569918526 475682375 743950328 803467303 333196884 459852377 490946888 737477307 643075479 490733094 332971847 1003957814 678615114 435557887 68993582 842318390 531475326 837749768 161937050 887519840 565404800 136857882 6743961 191171991 143224710 317039215 616624355 253189355 660505864 79332818 638654086 7665662 138634997 480642850 967240913 282973566 650709045 333029514 123566141 171299798 940854891 130707376 255658560 440831828 655417706 96152581 718673121 398299215 526686393 608383578 323438843 1048538256 678436643 111789487 954269453 852244852 520843361 919088875 631482767 398574062 3967902 329119226 860031110 610923861 732296687 283660568 302959190 864546594 500194890 468975223 840805045 976406312 994139696 712788111 483788606 903320811 878672215 199938161 347545753 856604056 917155376 747869450 85648506 111587576 222414425 650831778 35927541 797572952 673196281 237304405 462066545 324093161 668220989 4285046 47821581 36841753 837613346 1046259908 536784319 1050628648 492233888 185469112 755228623 813060947 956783878 1068046734 763874366 203004311 280787806 495914040 279779915 66132925 726394086 1046295992 978061643 712399070 805669986 788869745 911559411 844407873 923098903 1073630625 72383707 155628748 404647458 1019278680 289459197 969041863 689594276 498265584 744417957 702655374 466942132 251599926 646855116 370823665 607912994 972513921 505659072 540365943 23491469 503041632 743015301 635911451 863326696 329148119 943674158 496534173 78314311 56110446 924620281 62475869 835492210 843716165 209842999 1027726853 343108587 962441005 84543923 1048793086 614729198 461240606 691476577 174748321 451994358 619304089 476671503 266277632 183311560 622181600 784192669 27467099 1001033376 298155214 1038198663 147879344 567878376 220775569 814893755 452152790 1021249102 525156136 371039542 506730158 807432673 470232515 43907030 135440317 818859144 44313566 706279542 266482868 362181535 246274009 251827734 503322677 1032381649 509609292 930103877 387763474 342044873 798302564 592783873 63585634 579692382 235752652 401246887 395545132 23310573 328427408 1027241880 940504497 468810281 187280235 335605752 853198520 2748805 979989138 424454471 664975749 936450256 356643844 374304715 374375161 404366957 167583515 461213437 210901827 706567678 801049948 613080556 115749893 996228760 687482545 184804807 459205134 438764950 509590421 125761484 679589056 176855034 231177762 673750544 391857162 235316531 462030652 33477306 279140167 163957292 610304790 1055166726 407647301 362634750 292820957 72158738 718971476 871380693 1044484703 343916247 4005368 697025423 255356707 555324296 546201174 637378094 3068639 113562061 970465211 220181523 1053620867 1061734207 791267637 81567453 412347812 112601708 488847693 450890070 236987305 984447560 839514305 1998376 908569947 241315651 418159705 696095021 378070398 26873395 1071956705 925290635 877685826 277551032 168267012 579165812 727694492 949025301 1016523860 628958445 233564719 995314315 128930203 164873952 976881972 826873834 793475577 968223498 1071140923 787619762 955128377 826385407 810957845 239417920 562802002 550276442 877478333 176924669 160851836 550604239 12508652 259811707 184891475 697761801 320566232 495058589 185975162 824974146 676006721 520117386 320744577 669031909 53778874 186424651 202043600 549901857 1061134368 929178152 954395866 480374062 303304831 339690774 748862416 765227122 272102472 908296106 830227350 865471773 99184576 888351440 12071893 372135759 817230 490321804 19252064 1060921394 1015391260 346844152 603363886 57668726 621956612 688789444 877876522 812778023 220373368 771700777 528348657 31469870 837471553 887884991 108988348 280429913 1057850490 293138536 503657338 676369184 539645275 964425274 465498591 317397813 641966588 3222663 987260162 315623228 274901059 73453682 283758141 505668723 413503760 807685929 484415554 407315572 231150486 805746249 497235874 876270685 666183644 1058321248 543088794 820536186 587610823 728322205 537065869 418463802 666063317 475144086 715863689 500374776 837521649 477968331 995295282 880555897 503757472 913214636 463257181 112490130 224684588 607758094 1067842263 212834705 946007556 795348447 368245518 756486433 468383284 546843961 991332569 722577320 371325509 955974825 199141806 430973721 256293104 179701680 788075013 678902306 580699222 984939920 134472563 818042853 410538679 102698100 290860330 231631647 112436478 992187299 880064594 428995828 344341795 808308642 639721364 125758153 945553164 833462447 93759240 534961929 887177997 419110498 284863448 20119849 125140278 829335701 213604405 392831271 357082842 808109710 1052841702 908108261 677277919 944644304 912914862 420644642 131649723 100824867 67062948 890066985 498534405 976520992 675050452 496597555 354743369 702865715 248368996 809699777 823683229 978859717 664392155 147053614 785721503 769419482 139907920 366424906 911719982 817864339 317459278 571545981 889818638 736765085 243797367 688026049 543443253 760896594 308694442 967758417 348898797 12413983 144798112 111495645 404156929 262565302 765331165 330782239 535050015 872319835 267741881 195340874 717041045 1048369320 45568646 595502232 280389667 291305356 917813489 350468233 510322038 164787690 951908792 444643014 199044070 826044414 198404001 117850051 632326109 943222604 443828941 897339244 58887361 720239114 415463223 310096258 209497059 108916265 113706708 576154260 963584192 805737121 678685567 13609219 732609789 348246660 488359572 1051182554 3931816 548429602 653871512 73828717 244485451 569314660 491661754 427305023 639538567 652469280 556290167 760331925 762142278 821478994 940272621 1001549496 118652089 304696272 369084312 711275011 44744433 65057268 1071525871 77352269 187522755 824680475 116857657 30255237 1027215565 40470586 872802487 937510723 462114530 514198594 1052865361 278572847 648431181 952512290 796815421 682536195 720867191 451990950 263537506 1015832956 900464054 336683744 163219309 394403000 407628996 885043524 577077436 992540534 861757848 632565057 91800104 1006664184 1037905569 664545709 789700259 130130267 497318419 432867037 935980723 549899938 350834877 172025800 157259300 104980414 74777515 965035931 742324203 996178038 445939437 854455006 260068016 404405658 658501278 94973754 766403854 686126081 802472745 1046959083 78556628 799526132 1061444591 92617428 902903387 769180372 76162001 739110902 957999699 615139668 875393120 901767407 159566030 596753442 293864662 981855332 295916716 642140742 797181559 895572641 902412545 837964685 406258459 418511782 267598057 22542641 1068632271 1064805522 193131388 522517348 126505994 648633860 881290691 563344380 959918411 910569836 1025579123 291213459 942470152 458387819 594071736 971846092 297115299 57071968 977034532 618636813 13200478 235803439 19245865 1005089393 413688343 907590189 184450864 231917633 486394296 797114590 192065008 592673951 511412802 290310646 1015120082 395299134 1024691180 385769755 217987641 705004422 473906137 682067341 432606314 47403435 582622969 516386983 440490330 984698569 945592547 52609239 941774431 498230765 283062762 863578286 595925991 620249562 914186427 487769117 817909385 1000379712 908558488 401232821 907001734 93128134 721412600 224728409 594225843 419273806 290391858 251333480 964469430 480716966 202986441 260667746 590326647 1048944760 1013478997 108024294 486855371 916415270 977136021 593008851 826132975 477870316 202237623 909121245 926914035 258548921 430805031 897461277 358234327 877262216 933222127 800026773 233077932 1062087118 904335921 814787770 263417836 1073361321 471453793 269599341 888996602 160422494 730871025 728774308 305326088 656820906 793483277 1026720264 490648 1020488133 99779662 1037300394 695797016 437430383 976525830 850285362 475413188 622667738 290450998 112000071 406786322 144327284 518148751 697209765 275479896 18789319 938863203 954783016 760600193 319029823 789262439 569227439 655112942 508040223 545991889 623903042 1070753099 620671241 511756513 1006343204 825971307 663742582 298758508 796253086 408914303 186308456 581762385 283532348 173332936 568701002 788386526 920490152 1050116769 175211907 755841658 616886885 216205693 924677636 741702334 1062170788 417148051 559703281 200901814 260161529 759964097 908742430 340934760 155020736 132747512 797710971 639939931 263219260 24450797 788991645 558500195 488103609 309479181 14750880 1043063896 939854663 369064043 260172355 396048900 495478069 659794186 780868060 84909767 267218905 238632821 2224114 209662315 109053315 767111260 219766396 876259163 309955191 381161204 754360022 169436167 991852390 247494416 55804635 335970781 92307549 388600036 778552195 568221133 868395641 724461742 211457216 490033871 380190865 504365100 831636164 1005424963 51172412 317413427 376996296 902894973 98763832 1053724422 681611961 165720070 316992535 617265810 330919643 614268047 1051587855 970788976 122641699 289919379 1070186980 319966388 709277309 427356391 460051132 738935298 763263486 668056523 901873186 705735108 201733325 129380981 797241867 745973026 544251929 257207830 701139265 842672556 660928456 363306442 446555846 422949881 940109086 814088386 1019653807 313785247 304644115 335807422 674897972 185903491 221174603 467886657 190216857 381329041 851096981 1060798164 1043232454 373096259 673324443 374116080 845306227 725986113 570265243 921565262 261459226 794658032 851665224 1023782654 282225614 286207352 48473711 158168384 514435336 995196472 484947623 787352344 15504561 139183939 626538232 316037218 168349850 50948799 59764507 926102686 526562218 638924912 687169141 695008003 474722493 858316576 77173110 361252358 292790202 277779016 99531345 371874268 410176378 807358539 984470114 451534927 910468930 405770554 648343683 332064193 516418726 856036565 38353958 314993044 152706552 2974322 439134819 868410317 1068514737 972557318 746324288 228706730 815105157 397594746 605884927 831992319 541566932 445719871 986868629 49150692 889437684 49535637 910167816 565112261 315815002 176625055 116806160 78283398 32083265 699770676 295104109 851539611 868104065 956260848 774481411 711051180 329869122 809170940 128500277 824372524 809215709 257476755 333615479 401956697 255718038 232832869 178277130 821333282 191648706 846490570 917560819 431187365 913870298 356521793 1067398909 86092083 507485828 513891877 808983126 1035489952 1036614416 356139442 176113526 1020803147 1011057369 603927007 310723254 37171595 898437485 272146093 758059423 416162971 227938445 791915228 14901124 128974297 461001410 1062666233 513944166 997403821 196914226 848639776 811956145 992749207 91704902 187037487 158098270 370542272 320736425 966082043 306979288 237672969 413108134 276271318 363191272 511816449 584092756 128720508 884578645 206743636 187712275 165488871 1018407520 495807772 527956524 711750417 427837440 866632551 565405915 920723519 290568449 803169126 220720706 960722043 634707887 599344834 778592670 338717127 704736492 29447656 659002345 295949897 667268245 120436228 1013290830 951574069 626257516 66176756 749528201 984260918 1033930302 505855986 426452401 950072998 509126221 608768826 163741730 503787995 913316603 518934067 860173614 640581253 1011186983 900271407 849503104 128759253 760340043 44204814 508810015 535224343 100992177 719863442 718969346 222066923 706103823 827858371 728214555 393711761 678669980 1065202540 346976505 97971045 62492096 864961097 596716407 927523229 243282548 532941250 592622201 406788126 427104214 23948236 91690160 412849957 350241819 775519016 748453858 640755622 487126352 835690733 941700030 792003669 236352452 91285695 304831705 84586362 417773714 846925256 1058154323 123739488 276626621 1000973920 36928516 930380706 346167562 937608576 366703649 32077311 420903077 1066585771 85561414 441608240 1067894585 971905420 846769143 189978382 699369547 323665166 943696342 689185279 688723701 288946372 211799048 927838393 884200148 540256887 229201984 357704755 734517242 1018141131 418137163 1025381081 406408447 945724335 960730371 737358493 821092300 696853781 1043849330 584360542 40907995 944098842 724073425 1000917124 285059250 1052415096 778197315 232771740 629021544 820680277 719112532 600111190 900587423 771717946 439889892 61112838 152464643 167183489 730441931 356680036 137295632 255727445 1025708479 62322236 729348587 5929594 1018686661 935753180 608656311 888293463 707087510 226230767 733073689 856880802 716007168 415390906 550759707 543232006 652649870 811783330 528909843 745069617 70549912 374380248 853694221 513253574 348614998 745609021 327031912 827667992 712251811 98232784 670921193 315437120 839650249 722177321 533359207 453847241 560467614 138579348 325788160 299923265 237119901 192186265 490632002 1053935338 900607658 178919815 240984788 579703733 509683905 894871873 58887723 640200011 414232298 1053375116 95478012 341659727 32195601 1028803066 560273633 693737720 770072318 697897103 961549234 539511146 201099742 302035705 732420953 35880358 733864485 111243472 579673863 323988159 238876573 697774801 491189333 856275769 393831134 906613963 391781095 250518189 474483503 817045476 179890979 203199597 557445455 382838230 321276132 603603543 200090409 970167490 846165889 92426262 1341821 498132195 390451986 363581856 751948329 983345534 501706493 635414427 198698776 549852795 816845902 7288212 452776008 134252340 755005061 185708311 51381691 934908263 595808312 674971536 773468066 938156043 440283277 167786090 957376824 343492936 800010093 546333724 78381827 580925853 674901306 891895994 650977035 95069615 350732838 169256801 901633399 46773478 539195002 137785264 841092195 607443597 464007830 78738828 571864359 14731007 206063408 836630060 646830992 98597757 530667981 337884948 294276291 922740345 371588312 174142922 496208319 956863295 979004324 488296862 129405431 902547561 330207894 957416118 637250854 93136654 777307518 623946849 69152047 401162880 899606476 774798510 203299537 336960143 899618358 887328879 858296660 320576993 714785483 694065852 113915535 295884772 939582237 56295762 88613688 356512134 737382274 147388568 754676325 376283961 300561419 785035440 920638967 1057132297 78555411 327550628 171675728 1070863003 29858113 410407456 614016780 41578956 112776668 851765454 35550075 640027536 667189670 157864986 1031037592 514279660 1025028510 518027335 260772807 487937577 541293771 257298035 303304025 211244549 358333710 793396465 1041792381 884896441 552625866 1035513462 220850095 658826358 444783235 949403395 68033205 4637453 700526866 970905817 596657233 937233218 509715497 134365309 93386973 956929467 700893623 1071063011 110911808 1020406940 480827130 815080699 105558200 99783498 136973039 803637801 885430468 855376621 183935251 394403830 444341784 65202391 200484031 740111505 80382967 785714687 148972849 947032605 717194499 436145757 282152313 533372222 211627139 201622578 585984294 937758077 528594158 125334276 864811895 936800071 506567992 388498609 274409660 847168071 607522189 375264986 302877697 275048373 732430497 347440695 353674597 79740137 201892412 223836372 374905386 956312707 603787635 592340043 478339022 599770516 854131831 713859187 751592284 232046987 103669304 971482011 989000400 786725819 935665416 661642249 135109664 1041744630 561137126 929327049 1013564376 480993471 782214012 610277932 441303001 354480049 508740684 799234755 154331673 114514075 352009294 349377063 437635022 497133958 184326452 916699371 527925611 266383623 586307241 324801485 538071100 505698791 754163486 443073188 130883270 48909059 625786286 811032394 795264422 881552680 907986725 946291737 786263248 903859119 57048684 967037761 581055188 335126636 362657377 649896462 91667580 918189819 413365741 222500831 415068868 44159699 77530843 874989578 540677901 167320104 563261005 720943412 966475373 302668851 158556931 107776978 969547 625491135 759476626 380392099 238016164 618943761 728282445 980282706 309414711 459438475 1024426480 14353778 758981196 169911488 90997220 773270309 438599772 824672625 97001180 106193838 187875134 739314960 673777001 410920809 1060084911 305224408 318723720 965823094 901217486 7247217 319076373 813846679 332450886 270588912 333113699 149131875 305353174 637062626 216092340 63465885 803609099 664860417 353474812 472655328 249977220 1035421151 134633809 916658097 434729099 33729645 906730988 513742461 639823306 816533157 46551002 152800392 997774462 478880521 972867382 138060721 272684917 642596273 210437890 63946018 393829916 135839618 1005216769 914484909 34047866 170317061 611660606 396550752 390615519 290058050 402873249 777005120 468667603 375014128 495414131 1018200899 273430585 667391145 622409108 240965012 837365672 306969422 713881652 80184063 344670030 940411968 143838809 183172711 980764050 446838816 979156669 752432563 251105371 605305084 202922289 885234037 228409908 48863438 884899125 307776464 680381175 711952425 861221298 593978542 274997318 519126566 359335769 200003693 22027172 738247813 355060099 781204567 837955240 28534644 228919116 393615178 1067211278 907093497 221199300 1006474982 744818317 130190853 254091562 246494297 486237642 698650888 585496799 975278712 721539872 191368678 573445732 974967044 561038882 749261474 1062285311 702474623 202493259 934383655 936773062 765922085 975139181 905643430 103589645 572913922 45463321 861543199 952891318 154758669 951987160 767086555 596992352 622130698 275452647 592366513 589557741 245146289 560129670 656119459 953614040 542813415 446348919 677296347 990563973 769070078 443012078 572915785 121493277 758443514 942002500 1022431732 648727304 96050998 546278817 619321673 951103023 994126610 389745910 484087437 344733559 64539735 131032132 838988911 890965519 38618288 244042214 330528301 246649959 523779863 572005113 471272791 612443513 297931550 881289877 922410954 763274414 283486774 222777290 311375464 503747741 799999195 317153242 699543010 705683398 593476536 478508534 375128805 310592366 315116240 533787631 384069317 390666173 175167767 791420677 953168922 1003355570 643393245 270940070 1047516436 184563925 971011939 682877969 1002859010 593760605 77021446 538817789 677418012 965568652 393958495 288268908 299327797 697540734 1050087817 851238350 563529388 790040414 406412805 788796439 446589571 607055323 58820287 923219776 218349859 54335635 217055455 253778683 712080178 403169088 1041104019 199784711 91183379 840069939 18201997 849481621 837024847 25519573 61848611 824692641 889253472 621675279 127012703 453563952 305311542 24367963 582932690 207488225 592168785 154694351 52173682 217979625 14468545 785870538 875734732 833083473 30342242 191600200 1045943165 681859527 506544416 215734255 93691728 146713867 511499709 264648001 534281496 803365741 406064951 277898099 792834184 562056039 398424341 970118763 1071892792 102917408 685851606 121150261 623897725 45819319 671206932 388710283 455131688 412245079 734331379 712394784 53948826 574922615 307748925 694188715 836674481 530972360 160774466 233356032 247197971 498648470 247236110 407853206 185882 1068355105 954987363 540584708 77599572 75007067 275230283 96520240 809516621 227224595 942401745 918282382 635380530 953172324 175261529 263460740 418001871 306478542 565713242 769427982 783085547 177242423 550482627 833181601 707451116 233086142 848378625 596944022 265183408 353461394 647000133 983600469 27774729 843294594 751934727 843845173 500366756 973173445 1008302985 850909238 701439340 1012252896 262553530 256807829 925954179 342415765 945458659 88840852 296452071 795857494 709536567 754279206 581869106 527444961 449766268 264063116 881403990 461282223 489643634 814081142 86744817 606053647 448694650 329333007 493390470 773374113 90718929 413604868 103578678 703877190 553488036 60815868 49664900 235930496 885339496 671804649 308542736 798509300 486749070 211736568 543618125 392077283 316904479 114652685 963607445 308455067 789077296 1035431390 729078950 751350212 883956225 384908655 884470666 554326993 82156306 418962364 703031541 677085006 36272910 705899443 225521594 115280843 875194222 412595622 948568202 223196732 560819094 806819614 4585903 252827035 829226513 990329964 364450922 299183179 339984814 75498216 23975462 278567071 535955965 333263396 556974881 563121231 432946560 911357161 1010095983 580470296 173967233 607962704 1071702472 118149466 879220177 680645932 1003531393 453752736 602662222 1032298500 645588808 971393039 107428153 390742468 243437645 340195405 412989752 734121255 280583700 370667043 1064196300 946772300 68489112 476669260 456814830 417727478 300414868 357817034 94883927 791919513 546159933 503806428 1023987197 1007574659 110904580 728055810 42635288 627503896 611996938 656562689 460374090 164590714 253423183 205042077 101747507 72671536 78173289 183648577 27703380 727293089 451666326 411514844 508708233 640811397 243998693 60144970 878575963 346734668 778460715 899250728 153799773 87223501 1025242312 863116984 850803356 829096262 315065360 520986776 512264547 953697215 641933892 1046813768 119736271 90942247 996010310 430210243 554002906 1043576863 555586361 123101999 325421248 723688805 238496888 746828564 305369400 319844169 677354428 1007504394 1047590921 969446538 956106156 405401228 31229846 859077101 880881728 349357285 62547937 498224958 414671239 283150613 406327076 86354643 266205073 868664795 847587453 977195485 282394135 420746474 944172309 63637141 95177085 635967950 88592360 119467331 714744032 945714163 560838252 75221506 974884330 379432554 481013390 199467714 773226071 201836363 896213486 896706274 818782227 441870190 870143848 940672898 497504197 1037265920 740231234 949522095 1012851602 1021629821 882147334 464352986 122895322 1047199848 481871005 41392687 133501270 631012417 581871518 576482741 422995322 208759637 855336756 754381629 189832804 1067770123 356550698 1025094863 251441187 243503875 275660832 732332921 855512017 41912319 179745369 353701758 25475769 967600468 207135489 293453286 283628137 802193154 1045494837 864972541 89942479 227546340 850814194 144111547 1013194794 871211496 479195989 178480244 441075542 372406468 85217451 778065528 248892708 204358346 149625435 484923747 134268326 1067563715 436048535 651052122 50043867 432986218 36454231 215586947 417216220 413031552 641117594 408916982 251906339 1016303560 242909242 363387253 802335832 607607107 672409775 331654208 856049951 683028805 705406865 661284397 379042723 514193789 166000140 290289272 860655696 286961062 20162114 801815144 840200631 926983909 848037838 45088980 161192305 141485507 556957131 594908099 190633523 986674145 395710877 984446566 332548879 1021689286 394143522 1050477815 568022100 127910260 1054842406 774047619 663487013 979652986 182860269 1017834285 615434678 262728455 92393704 467035673 971700289 1057798178 201509174 775486695 234485004 738327002 688397391 396857260 1051262752 907243065 284690018 355118339 986091947 52239092 413870225 286714791 685722901 943129387 396053404 536609052 676831880 565258953 453555447 659606867 955393802 765007013 1016773910 298422067 525853097 472709514 147356718 1013936981 535574461 678980683 545573751 101013031 579058951 394609908 303105585 1039484134 700695827 946450354 283270570 809250552 244746281 947022845 831501691 974733742 699214202 645418897 368211669 535683076 497116173 627885090 611548262 390160413 1054340821 12060269 368442367 937502062 841501210 847046708 602371671 719060747 578767979 217834358 689747421 945212797 733824139 808675391 385238320 409533997 13688053 271849337 957559613 875716104 906748310 195035865 272264045 313140423 423373034 408016538 25996153 617419556 738160940 701889777 596170560 702635165 76266225 200205580 922693898 621616334 868682072 946200130 409416905 506519216 839420988 497906490 295697944 4438027 513994444 681265824 864801681 717080918 286591419 286733717 864636429 976616321 361782044 727977263 1065640820 388903620 100853864 447479312 471270326 235847990 657578337 402708838 848548371 871355540 230329804 860773122 483034149 256945185 876370692 543667717 692498239 432862675 1057399856 922327614 54098758 819825904 429328554 290441756 888762409 580144579 758836764 11326711 307508935 514068992 334948262 989866429 335755244 164625112 982360195 635240124 204543360 416973473 187732543 355428557 592595738 136843095 67290135 366196318 684666839 340283596 959868498 831480702 36148981 641621368 973910934 928487945 779173483 364391247 1891221 474789314 490998278 518467931 1002801930 668346425 382829664 746026509 233747163 56098169 441779754 224055936 186970140 334128382 1042412565 543232890 978314934 31640905 435067846 654105483 908280378 172254045 240802188 954634003 104526872 779937413 526000777 414086217 884700492 369231973 935074960 531408679 670096501 666599759 548891702 860077022 468073255 21963951 925269409 578397761 105052051 613482010 521892135 823975969 837852450 843915907 664748577 211961285 833489987 419234980 1035160898 697147753 529591447 679381997 444767731 375758904 1032724906 908082273 183173206 268925538 804064197 494898152 409974986 1044349636 121535272 684231297 515479176 914288900 445655202 258601693 487142677 528516394 935761669 687732912 493597823 519413790 454348293 534064248 786466931 529106435 613529826 630594524 33311889 655254034 898095272 216710079 216441228 821181781 609098103 738398684 92232091 167743327 211163924 957823328 974060335 679869465 755686285 661514128 791585501 30805202 680396252 621710598 909448770 523470597 62207944 957787919 332252570 801840924 347805700 402194684 220150778 706880712 1069277042 101504458 650241078 226194600 7037080 646505738 719129734 3835646 935636809 466750077 994618903 178016317 2165729 225479877 781428582 298386553 736679992 596901175 42375882 612343790 324251778 521350817 990863173 272585530 829862031 419768986 918856936 789421993 630149164 87445385 1044142595 596270223 148275235 568636621 731204859 159545390 490089949 478656331 613772577 43969178 283818572 443428089 343321476 826699862 129157048 30067405 560242394 174936203 505445067 680576885 910418428 776921425 962063194 823482993 958399980 304652060 23463137 449170813 794411798 176752767 475686131 220800484 629585413 496391136 91109786 204681755 209584531 193850445 548851632 765997002 599935788 952416965 839385773 98978782 140275769 948164440 193048274 329773271 734535057 976147820 417863805 177345466 389231492 926090638 204534028 793012401 260314289 160734151 675497427 32451076 338856817 435933563 400892568 856359948 878594039 793570935 987434090 944036100 242271477 350297272 169456173 831127575 137642749 548784992 532752372 228251878 211273245 254666654 168646781 656501854 167486777 707504278 713612807 1050060338 214698553 806860899 458284427 31921633 23201793 954490285 286239790 519397522 249686099 366348729 673130226 1026509238 947424847 174510810 421924482 256841697 746820888 857195533 206263071 1055179097 870189889 167828065 427942387 584114593 438099871 76863369 504292463 616811044 148046114 707506974 747726474 605001815 471965334 132322258 934841987 1047694763 949135201 581193153 937158276 830301979 685053916 825481294 855207447 880843669 129015305 76529332 519961706 850390326 688353820 325945206 582512501 851218921 7023294 839608273 858095012 26474853 46019832 111159195 637562353 386707486 253065176 100218600 496943591 886355979 323655184 181347035 248568072 970515070 1009094214 353921482 921622772 317321495 1072727762 113318353 662671492 824967620 608862383 210335529 544790256 138800952 580107221 621098503 519755005 462112649 733127750 113187041 36945359 841392265 205493465 19009117 60325023 670356567 578126710 1031477036 25361762 642778250 632136992 565970153 386197216 673417730 457672774 331910958 956387509 920650796 906891910 370368519 62937726 719920689 756730277 391889735 962132849 1036671431 260768271 260896797 23181996 527073491 678776186 677498364 214120048 242264077 701662864 283469009 887228609 855548555 67940305 22353307 1040948194 474280728 179287691 1032462229 464469449 103022872 92646689 483084207 670551756 875195241 995086516 785844349 425969106 246351645 37718849 1061123340 226113753 779274047 693822385 531896700 390207398 553585531 477217661 17623439 427276202 876901486 1053849397 128698500 852820364 792337623 185385179 773917410 399918250 441517610 318692882 992302385 819876751 582028235 800272402 225564593 294024929 400637355 272063545 866921307 736316662 257026582 109692704 851736805 745293842 196186302 249224917 439100040 461728712 565283390 669848221 523927332 669565273 908349742 160506880 348572525 55611685 549013408 672204657 1007383542 137184546 777162642 367839892 724050274 295672573 498949804 128982647 361015618 329054399 542191662 240194593 922962946 316039706 259072196 678462420 707600243 602760621 770073101 976816212 29423365 405717376 505459570 355358308 580701054 507534350 47491387 219009642 269691087 372909395 1021905964 477229761 753596373 55101789 90579622 532308407 477671978 675042313 367299817 532250859 336921654 672282810 150281666 478838720 33284108 679603871 1021250791 270490701 245677367 711251547 423446088 729990897 60715625 678860227 890107959 598394438 629709042 881162186 726619256 431700302 571945461 474243479 940303895 334627153 812353962 881499668 380932833 1038523902 522096272 152554640 975943518 70455030 746787073 137218670 916253118 849274088 81847145 633043234 320923066 325775915 213649223 227766331 328213065 1051054995 343064888 712587719 884104632 568479710 318940669 662961686 56692146 866959230 367995374 144696835 44184121 396431172 989265788 372473343 582801455 110286740 329702331 111909559 636295578 548845838 984712746 813750333 244692669 117758195 314414040 927723305 709909111 43051841 655055865 170127742 337058540 805026812 464580146 1065385539 600341343 524914742 465034214 938669469 386838986 58284758 38639248 814661174 742737786 395791243 782835322 478305706 1069063830 523342062 546048474 756197569 990081457 408698453 708651274 984035566 929004410 910825650 377363461 939059714 36976071 1017974151 470926698 605178302 767031927 146797362 938253377 807936773 168851838 768408697 652675681 616894691 420466508 407694402 1061265718 34820472 729199970 1044266527 587312655 903304690 951618263 588096106 341814132 179372349 693030890 1021468711 565697034 210611918 474475254 827309342 992197923 541317329 921440634 883911346 877160445 585026836 133792905 429505108 725131922 506481443 980183669 524921989 26326527 487273882 557986597 427601140 59108902 272050613 133074046 58735575 943134509 103063891 926186770 487959171 926313305 460300418 458907545 516186534 461907461 886606797 361327266 565554075 967665441 969709452 650079042 983629432 342513567 564959731 7902551 367489660 799333453 365403381 994512488 66874150 767966904 432704660 147379787 759560994 1015243673 813276409 850925684 799985702 649580636 628122682 444137223 697866904 913334636 40478554 315973751 1016109899 801775601 559862891 121656212 541132066 165717843 635135726 359118929 239991893 1069528246 301159958 1052080664 922044658 234003079 570483866 683550449 202765407 506819447 359575660 151439116 7711991 769197911 634340999 293855658 455070234 341105326 660032974 845404994 879973124 362835214 621185829 569901724 203151824 741840959 952184934 641963235 642019315 150845358 116757881 589729393 541095063 84478462 828569315 736793379 986873205 20400812 361038311 181242585 351841477 341817329 970576 204266837 77692507 965408187 330173638 124757326 833332634 649441016 764161146 953366222 976249508 488559031 408777019 501221829 997573982 305124188 236475726 501071327 453038673 878671944 271665045 784112166 311464905 293253751 609826899 975525009 260720825 191517784 906478892 291077001 960408893 532049494 609686324 904722489 1022900036 82284344 219907261 1045664381 463644013 973140152 496111025 921366741 312400813 378457489 410607512 6721857 392228992 890025024 287417855 901496175 493428913 11499232 318688585 817948209 181098400 798824557 564264466 971731658 363574555 125880431 795485347 970517237 338723640 552650404 971063482 495030888 890046541 872544228 440665306 1021605095 891559790 476548165 747641861 440242604 726680657 962738424 684675406 127258775 780354901 57121829 101781126 111126729 340875730 406729504 50846803 576233127 340408720 640057492 628882350 927864603 524014995 841287814 573757340 490833885 99265913 145937453 1012206105 716569781 67610021 849999322 458020779 560866488 532166520 26992856 1064723865 325274188 807589520 855502998 877618920 958994973 767104805 606783212 1035085510 309865700 708566791 576621073 397612292 579901306 470745211 211286229 264627693 152801721 267651169 973721443 44880142 1042864482 159968975 21312367 642656034 473644087 578316965 98338077 484791913 909700871 782330863 584790880 303878842 325284713 196110958 126497581 577252111 51614042 367832139 894712366 13650425 979469331 124094068 104220747 447947749 100687319 834061947 839271230 52987614 1041693168 567450082 714267825 122624086 1012148860 890732091 313727598 996115435 192562834 422063861 196197970 401690873 794683356 626285965 671691138 161506777 115762730 805032249 395477956 608563898 224389152 944529123 602172898 100687032 825162392 963637790 471714959 638990203 483062729 657164361 537188974 135750279 987482109 598035943 54968413 581433687 170964851 1057709023 784235390 539557172 908537415 663658248 572732377 808275804 213922168 997527655 571371517 455955631 234013069 377236944 419670006 787445424 233880660 987296331 634478838 476726346 673999588 105033913 356605294 309892195 1017405783 139241801 491286774 514708620 357935235 44005213 232189666 261692233 592582032 221672698 43335108 1040040913 400432889 207842750 355640736 970615021 211714744 74579938 759168773 446491540 1062513645 634213879 726111241 136235032 49824945 997307129 862911750 157853573 933206191 214623197 1013302479 402532064 509688270 662367384 422561329 938633384 980295059 423641704 622623888 834103602 1031779197 721127138 329170512 605653617 635989242 27366242 44350719 614347872 600801672 159034231 444026871 846165832 549222444 99032510 629228495 923436059 543053980 808469390 1039474969 842402909 421964899 1041099142 635108461 1026911590 425858952 372580307 898047639 343878200 827031074 77902570 466568 660130860 590382079 188099692 1766901 533268480 325891260 87695728 177724144 1029512468 720591189 21010357 542452639 117483885 877645765 326845578 328956606 121734737 1032125332 601708945 458741779 350273413 854799993 297439863 792185875 331636819 496126460 866429795 658090627 1030690325 735615090 36616778 700993902 517950876 354803195 677822208 255552910 622771425 654965177 380783701 166932295 496033999 688142582 711401857 572378985 275875988 672985378 759675310 351574973 500899019 112079586 495132798 1046527232 1069910471 23076369 908868179 1016188788 83168672 147845410 170907141 397114582 1072637524 425115034 1070033877 961371200 57973489 1010355519 696787072 771311493 998394389 162504780 501578212 792122715 44618077 955527890 730206823 67826649 58277535 39749887 944411422 270436045 146195635 280923738 405177194 939160022 889635624 221773275 1013975312 609226695 157382954 866528986 707161704 382204445 455513089 816915318 974853795 714137585 712327490 76312373 473424003 712011828 725781076 278289210 166260865 414072376 606381519 439719975 670799997 757538861 106169581 788955187 669676927 79478385 386371064 676543653 846251636 618108299 975208650 472167707 254797416 138405188 1012025517 277459409 1022623518 242940411 13029646 502859502 761216417 798925837 983764489 667394160 690909909 115980356 659587191 906660778 689121935 455889123 566710070 895040645 601020115 848878716 997724658 465177915 144313930 93134027 631959233 318932572 925088688 399449603 502911377 620061050 788508951 432193074 799391294 730838460 773951076 440568662 769262936 584626566 386432189 407623627 536834601 121005766 697882560 561921470 107137120 812248646 94773987 691857884 269324894 964376888 459029540 918163438 404347453 1032314060 764974195 873109648 250828050 233959528 623784806 760603930 577808789 384461785 135990760 150458074 530933476 1028184986 458665641 783126465 27563489 313349934 423652804 1000408668 291408325 255083492 882583635 480041321 46646453 281051852 972273206 352740056 588878001 358310216 175387022 886644268 104627817 248257860 594481020 971286877 663957320 159912562 324381892 383773157 259716242 896199552 473065243 861357753 950549679 1027145937 302384335 617582123 279049382 269812047 192539435 639984422 38033005 1004160490 1018243526 805260195 60828760 1064217276 620494680 51164945 378334148 1022448318 17288001 49136907 573621438 647999801 434400973 90454401 169548917 891438535 7072511 696088512 627457366 39992249 553318603 60743620 582301130 239777842 710390969 708585536 759243511 212899383 80275831 348515425 766963230 821081540 969872460 19407406 342749785 56619301 919877682 506746054 752195944 980407880 137769542 1005627323 268969569 1002220135 78914609 1039617591 743754622 785557413 1067178434 504610890 686032156 494454 887181228 98822943 232780801 280721410 858815492 330029702 609863835 295339959 353850881 929394598 1018175122 868713696 720114409 669184746 593066709 220375843 763057984 1039628900 81952699 78125380 392441313 638575473 32492302 584586373 807932174 838943468 99450158 623704554 1067832348 568774956 45958782 591020504 600357546 98371718 1028395264 999079409 440838639 334327446 610623223 507033377 852809274 618284012 457555178 341927286 997561889 173951859 797179679 42159167 1039459181 558586756 425224567 798459453 817908271 320136796 743797361 1040157214 121003913 1016563998 885543141 466718094 603258816 9948807 48547383 150121229 879374904 467481265 209200646 705310697 358409430 930835193 257018168 206451303 2816101 678421410 399821915 941940796 667512289 619426047 798883074 587750996 678341464 970645625 509050475 765899620 685127707 75725527 57339735 580964368 573537024 137447268 612013862 823408866 95656731 286240424 873129247 345878882 154790828 523057643 731319124 861089486 167884444 1009609462 86929041 981179285 99609780 767974862 57416197 42341714 615760916 510597764 44174001 98134023 324054370 433146677 192241137 131435734 792126363 180351439 348817436 998094948 430497487 752477075 344321181 994749071 822114494 701981578 418824431 507100164 217352448 964135267 93572600 497104279 259233189 1026663841 723200141 371111611 233695523 760933376 284057157 1027597187 768485323 629572434 652117545 185691520 980647015 660744085 100796468 170482147 151362420 252770043 1042219439 838728800 223924523 702571348 269457906 1028908016 499714870 585063119 519858851 614822490 653200705 158370748 177054328 261393355 260983730 962107633 873408710 29761025 466695608 399548135 596038336 112671757 86927477 812300625 92519683 669872839 609383497 461522246 125926504 735255660 955502630 315856621 941666375 313281861 221416254 494411660 793952092 354592184 663037862 63518843 1060838541 601167197 492756927 183596889 573930986 790829662 622666701 334981270 995639212 433161257 465640298 285805597 243814726 363675844 276373635 1014655129 9784234 247599417 1013190830 173785186 755663355 725540707 747326868 238444522 86149811 716078875 207356954 727390293 746776444 524939523 542878559 254146398 416902771 703427090 511185199 770579182 9910055 1012496862 407635174 1053362012 818319236 823901647 421010186 77330238 793159883 53309383 98506693 806209619 182046940 682933533 301950411 66455507 100694148 553462210 460143831 343262191 675303881 372608050 699170461 78174418 915597642 418969172 23451503 387843101 383844302 711703832 745378710 293355093 656621192 77416304 719171577 384882335 675082615 792062916 654068603 724393090 1067868866 1034553785 261949614 799280202 758515716 668169870 14934771 696707456 251075167 812395414 515696267 693549253 956450883 15242890 1235206 35734425 382048066 371893573 51331112 965328578 1008269241 588431754 218659796 412300679 653873746 448221664 441003939 29368209 377781462 820986584 527053217 543071734 150428190 451111333 566506244 949600775 631949993 587117289 495926079 760796702 515944063 641516415 903145525 169956556 349388461 863902461 475274105 901648157 440207398 93607570 902418481 480218612 231471191 506471180 204661452 841834023 406855832 269553232 129727545 14261596 216312880 701799432 950011330 663319700 169276827 729104595 406673042 81987518 673300686 355143490 836360406 771256866 922646534 287160318 425418732 59312397 350399747 251500346 60640209 219738805 182400485 282261203 313838257 673056032 990618588 518754617 709635956 297625246 167591731 177137486 572940560 287367154 38974322 159983905 207651065 649911606 602641612 10116077 185900016 1005438651 1045016444 960910023 1031598467 625953262 515454180 329232361 644274256 909155231 813785673 944500597 822519426 227252077 458301090 6566890 248819963 969948468 879841237 288198609 688094631 18144476 62173093 745662776 774246380 459314997 746536947 1013955639 567562674 258829456 6824188 123678212 11120935 723230428 133567563 559998138 518370184 765428568 462533986 717448168 294714444 22435608 862349700 46361992 109448131 559187294 249098000 408026709 60350505 755550400 897627619 1023168870 888528895 455333218 543969412 24848567 679290245 916900588 981711936 789409007 667596508 690020221 390523556 68940607 744765298 184020237 584791890 176334395 795035156 1014457611 1043610911 91716810 839629440 234445491 277818720 696153305 787389764 475659842 927350584 949978255 683124682 916676084 638916539 566030713 398240049 548415274 312160650 597058471 359274589 951133586 416633926 580356112 87605519 791480882 747051202 718856382 761839999 928091325 705015988 415981379 927536389 120075788 977549096 630547874 621633357 707764482 675653428 302330086 398064571 242771205 121380080 686048672 22736643 955587328 414368272 373548497 465610302 7699962 719288748 630768330 315771075 854673976 620994493 94353695 701212919 793594174 340994883 114099787 401719087 229987937 268178717 265574360 303739494 618235380 779973658 437925291 31803705 974361441 730955923 583827226 454363897 64298063 944280581 219431126 826273964 930025638 624150461 1047734752 457114598 716039754 1019949469 303253593 280976334 802156642 366833836 860050025 570467562 184659602 346699619 792521698 940425125 47234849 824406342 511846450 374175361 897761287 275564041 389058508 412612138 992407522 625499762 431709172 841538468 419985186 342522220 1021107361 535168206 889986442 767065509 497803646 365982267 283930213 310549791 184827592 998593472 625574169 568274266 744669470 384679681 1060024452 185899184 879140523 527003095 997714951 175941068 829104540 678479838 817633019 835042196 538562433 847824128 998473758 447795426 622000484 426740929 252387207 114505663 171357628 193048943 2938963 580319617 205301520 657506578 258474167 749913660 130593991 640912789 111717309 410661004 172448354 817832123 721543727 818626646 751917477 472440654 733229790 768243755 895005049 756968678 1067685271 35812492 819024812 491292136 260629771 381135454 515502885 86669265 42843473 496084223 1026090966 282597387 211646656 835200570 637004192 793690998 646948966 11285432 88224994 748693248 420977982 882095988 987961187 908909489 598279763 832264304 68669314 849669703 844489377 92326698 132997582 395165066 1055814790 243161707 518361564 297927995 326754700 770504587 213860071 453165744 96902801 734193536 800463270 370112785 10053763 295893580 354698393 1049150878 569067464 367477767 1003998747 174146825 1017409388 97479651 377365927 824964921 624447684 302950093 520254774 635757958 657026293 526524728 594211725 809974585 285206690 813595965 795315882 338033707 348981078 235433218 424943216 848750085 577556423 284959996 831435904 578538552 605252512 952985012 473968045 937858076 113775918 607180196 492521431 24339732 348219596 195431961 221552744 984866077 22533327 673588339 763660972 756837855 316867182 788920593 341661859 329516691 456499300 17570263 929616095 855094522 114773578 923046350 291405948 903473457 282117862 174099589 962919207 56683489 752303144 281022640 53875227 35758546 973760865 411960390 725364774 81060139 934559490 465918547 109919809 823529239 314596193 961865022 377470833 700336023 520034982 457932570 139023408 772977914 373826186 272058157 837117879 464360133 359977733 914865753 647632899 1073313284 160950031 164834132 370220102 659956162 117222838 403656714 398548394 357689081 968167800 26498442 258642570 38045168 778341875 432756642 1069972754 457457746 340754020 617435876 266764222 433896696 675426898 477054385 565167841 486734938 916298199 167865101 526018984 513421733 117997047 628727954 679373902 226621858 722801304 677100250 274711381 796259268 589608048 972817929 1033593724 232972263 446853513 304584009 833483470 505849162 834039220 526545388 861335482 134824109 296139724 3945851 576333102 787248794 1061572984 259322262 473367599 441468380 881994842 443521288 640136195 960470680 481988107 414208659 644729503 536673706 948665628 514366488 1043052223 1003493972 775205863 643854709 27382297 434140915 162116328 725853091 732801848 327607714 12104747 14123751 921119963 289717791 1047226748 299361708 959605931 327733067 646978593 348270103 51270577 311287586 834903290 97398935 675969750 752647485 828145358 767279066 78383964 279760111 942150059 525725627 987473203 137973119 982043550 790175854 809644020 205058497 842247672 893488219 517267819 239981829 296767744 1033959792 1046340441 63909867 721146304 1006579772 171693936 839302419 495666020 171254350 637000153 62235507 92786858 796704748 197499872 243396602 274780502 637668721 158133220 42506460 678504785 285735005 783532213 160667342 592617121 599472207 840315023 801775250 876465801 279738151 177611725 1066060379 850805517 1045674375 458462060 686812656 115409503 960606495 870355248 777171361 778876044 821874778 437688382 1008334140 526049220 778536613 641141360 554217564 388325893 329434797 339456268 317229769 431546729 841234135 897273176 288491649 170258862 285370444 191294794 328544947 529466871 364640069 935071962 546292215 431436180 264733736 42598747 131400145 715920226 249209748 371991615 576125197 486074169 602601088 776295522 980308428 862372047 537079122 628303500 806190394 596342941 535976074 945917536 735205307 905278755 1026618265 233318375 13734388 285422540 529909746 837447277 826888155 348853781 944958858 198587517 497594329 475571101 933084207 73921553 943871124 460513848 82394417 894742758 533509193 53551671 485074820 482008900 693225593 120971633 215106844 737651546 397216516 339336154 199292248 409144803 246906462 521188817 180406352 789014631 976347541 144026132 528617782 99694201 918191995 887107469 391823202 55033027 970537862 270843625 113700497 769807312 942363035 402283431 607858348 384803606 762989448 399667918 458392768 280755458 71278887 55232494 392828852 851081338 782597124 683431459 567290875 442848360 163948346 875786219 1015311287 33752794 1016193913 173961532 932846765 422975002 971745423 778963016 314392114 492182572 766316129 718277474 296311596 218705072 307686411 552735313 694430863 150828885 716423627 914770929 92904005 220062135 291473280 527945040 1001160139 836377724 799984753 799205487 101716954 750195467 272818368 989242883 680168079 198665030 515289262 606824449 1053437316 105286521 423900484 636933169 478705663 394789757 289754165 687589027 1057889948 33194350 660910377 711789176 520388497 306473130 392853423 46661640 297493127 1060454471 366513732 236109550 955618171 474492988 863446693 1049395829 888846350 851006321 693283429 451877077 278343998 309951869 477326197 772542573 869486142 635040705 508235719 856537634 576903367 559262091 809346991 690991843 434527972 588335725 392671535 837862450 260789514 471967619 567185761 60410728 363813964 445907722 627779261 680150549 983989132 813047074 926757769 65615042 972102231 289132644 933229383 658022892 894037675 331428092 455589712 704977797 901366749 1290439 845997407 1042113962 785635469 949828464 302307475 855500881 355602949 600316483 740379879 111479591 1046967229 974829253 333528995 926408604 529057544 735703972 519479899 963530897 732000949 750619246 209716274 668963029 680053699 711022550 1033769661 609388826 670063936 829328161 806402039 138715918 639248598 452475985 117386441 86053862 330183102 405243135 64776243 966454310 673913801 1037586332 1029159153 955380956 320004244 24684139 133512344 1004036254 1017632721 790049449 149797214 1070507422 615010981 473901048 243794798 777271064 603700080 259864291 805454612 927886483 6899286 644058420 635497356 1024439123 1007963427 749580114 86573349 455399045 202417171 482080720 1027223212 188498625 943351097 1000782767 124350611 879597560 967710632 12490352 1030926748 899294474 378354504 303735481 593133618 719609034 775327651 105721182 522285361 333145674 249777676 473651900 613765926 327641899 284740124 212860364 41035910 827736412 489284399 822058487 957234712 569565562 507375435 656925375 895252413 756331700 879542553 1002016033 694579163 359772953 826029677 102871500 83482665 804429966 101628497 741658054 579491884 674226823 1054544914 281159748 235053445 653949403 817266066 37088378 857602028 953116668 504969311 399843550 900415444 982020234 257691898 710808906 316119043 839263944 787205955 777035614 981293338 278281521 227628394 637732085 305319859 640334851 470132447 531738156 650674718 458010417 904648494 994042026 1035520188 600262255 307824109 823106448 271657006 961229914 297651944 378677027 997762117 760135222 134136472 70586282 1012803809 241009005 542335375 798241410 445617494 82580183 824022237 374774023 205901222 761916557 169705708 872297107 24124209 400520736 815049522 131923500 971305864 337939307 584470630 206805855 124857023 80859218 712097377 752816895 433838686 445424285 73607178 765722027 247507091 72384019 160040100 373523598 811145973 40943319 289677323 616723693 767513821 523007376 586258816 970852321 904324074 933782245 191161973 338011787 206420583 595060019 798210094 407151830 871953650 555885107 418873802 263420446 912968570 524077054 525080334 666858494 1044111991 58681234 119504922 769267864 568383517 829854059 264946782 419082384 362722078 217286045 750165211 332062516 666700271 27838259 764449861 3042460 1000139047 471147577 568210805 192186590 900144334 284662538 631076473 667289760 493923454 58816132 254270115 156893088 144033415 556920246 293679638 608185995 800169729 997991841 891915226 86666931 57633377 555979534 554231305 258923455 609006723 336199546 881895791 93294429 556676296 824766936 407310857 874976314 458101811 477923540 282212914 1057044667 995424610 788956818 862135713 889331421 211936668 70678859 923668987 1030619288 102180103 1057446860 146119307 610640028 980516998 647622369 619525535 488444408 1025659678 223264838 105995243 829431853 1033986569 436235193 609280237 33221749 950625282 352079325 721489558 192600528 968205643 29583505 427682987 456376093 922197709 367963418 788254073 20562779 635145113 574551349 72143411 811034296 428465630 751505499 703437398 189070918 865126761 861290177 149188945 1048056656 167507568 838747761 36944032 1071044180 787251557 536634008 578615289 220947862 835210980 628027015 893403229 285432898 304160030 990871130 436697095 38654483 848332234 615774645 366550867 269902839 747371346 134829830 751406638 863392429 279677531 280806006 601508532 850623715 424213932 827474585 965894131 698052212 889870164 640931471 666830107 757555158 623238742 594406385 769170404 75295571 150752048 974121262 846608930 454483508 650453430 1054284822 255373853 948448453 240713010 689746814 1027937958 532070170 578037240 380129010 90627337 390781243 404775536 558542209 737935605 218079926 932475597 608174133 775916617 1072285478 796571195 699232911 840246943 455478777 1017897998 6026786 739514770 878608716 296369173 555579301 788707919 368539269 798661871 866467641 137515123 342790275 199842473 653488857 563418597 1170236 657070357 188385451 581705223 655355538 896147097 24778617 783246390 566229698 264271190 908502557 405612157 720568899 193069839 909779019 192260346 843039364 659416079 1053638183 827848996 605198760 758109497 1017976733 65132265 652734566 758338017 770105205 65788797 2913729 1062064703 528310604 446499894 91232348 395761912 465075552 1037637160 23983708 216016217 642561313 247842011 241054909 1014203041 750451501 166866625 599757126 102679820 294968745 1055847645 474111211 625234038 395125586 101762195 354959816 900983014 129831088 316154330 332269405 877254758 803483251 492126380 730162612 787909534 662509511 564668965 229622332 316569108 861086675 741144097 987968364 952055992 363145932 1014786989 589421667 997454643 218368641 472786294 460376865 834777406 267560043 366052726 1059697325 443144913 384745949 821714733 258892111 189266581 304284135 22222841 875916729 1033926130 65280595 201047346 262541010 1068163337 197968293 232066301 308593378 187307969 747653444 960805484 571539288 926045426 644296873 911222076 983060894 207983172 51616432 1060730189 500635541 168944077 397552265 218034420 444308209 288586484 305686457 829369086 543769101 595162139 914126449 573490170 527965536 589391164 827402215 65098636 182244406 490271438 466953736 14984437 988924400 97866417 208049931 423652732 396069139 1049571232 202213901 202592007 525163722 929434443 281763790 823589643 568806345 38998404 703203851 907325918 695744465 1061685126 35437688 1037782781 422615065 116802300 290043878 455581506 96185893 864048015 334375579 267396015 245072186 137548936 71991760 177459679 38203260 151911773 302677982 1029289936 938617206 835792070 1016259894 707107014 114440903 503813508 596120943 727436131 226315659 667773533 346915318 979036043 727665145 294509837 937451560 978223787 557900676 354770836 607171407 1003058185 424103026 597246402 237724589 982494973 528076515 643363680 190487194 17120117 984947805 336800458 912120423 369915933 84082031 395201931 447800723 165613889 750766037 688557239 596273638 1022348694 394311075 493653035 274903690 250782759 618266904 251796963 612250532 934367083 259545867 778462084 1047763883 336409541 1070253260 738989487 156470988 968924573 230823515 308243286 42172417 961610474 857001498 679806372 195247201 413162753 453414558 657978862 491307888 803984914 925862211 788662482 1039317253 855718741 336399154 389128207 366582274 45478241 1052396988 414510050 407625328 558553986 29468287 56326517 393995939 26867032 123252063 659237047 194897014 206587756 76396049 188259829 647559039 966024016 902866003 959741713 655101898 386650853 870295347 141655013 892511898 838969052 848496535 433628806 702933200 399373774 913169092 4677680 283425758 533853557 983895504 428443624 124845460 179905409 69247423 646947172 861351797 243496827 626328315 229620288 853046077 218261522 495810701 500761212 710379576 231583040 870408353 478593809 1059818886 440057591 317872154 759669298 867998316 364651142 266616223 1004402439 264465099 750545253 464055459 492313511 294553565 555244020 715621861 799712107 80200742 179623655 838569319 917881840 691924265 422599836 802657933 133091224 1028146807 522241445 749608176 15415141 271539398 571483020 986708589 977427536 506637126 578362385 685855070 631753688 907454856 306538164 212404243 866796336 825606022 92582332 949923259 9736211 565309390 495657954 165429445 105517596 770753548 4402522 900946067 191327210 113170090 344673311 890759634 380756562 497335207 105230356 492393799 940457845 351346628 540149336 876408560 633576633 1034329121 914952800 917921904 1060721800 511452637 107094138 487043234 357539271 973892263 1042577976 248948712 416397326 875380106 1072725502 643356240 345881813 241251003 31844054 815075034 849909802 14311938 6714519 868822240 451322393 447432256 895127388 87371885 324000787 731342647 786091785 306162082 120400678 263465483 100423171 259123288 136833923 717655304 213607933 865863246 788017781 651397310 534465985 777108021 765167394 607805040 129885846 489337646 822302604 206727026 167062116 157654774 136552043 522646445 64782517 506640741 1049092301 918756000 206542691 852482150 235707751 963561780 962264486 1025070035 1072686992 317668258 711625894 378667395 391198073 824161863 498791098 65015531 474539448 393190121 425750065 410694691 128282744 38439386 34420979 940183302 1039495826 141603596 1066510099 116922799 377351710 118627437 204022423 925642760 852883524 399921647 453749337 1005638768 352569923 637243175 92851246 645327664 459503643 280352344 712098290 236815378 1068659163 925312098 1004205474 117644835 810802840 318714532 168099370 712850764 561427663 823264126 1013732802 179925708 314262698 252316843 429152974 223347914 760529544 63690009 1063029031 695919339 869690631 683389032 934983097 598348530 734807443 677060185 940033073 481477343 715090432 538159110 577300866 267201702 711227001 575647482 401709971 219081706 731892214 434450982 658589502 501671008 951517967 53359162 724376330 2235987 414489849 97057759 788977449 529275960 302509293 653988000 442158817 561257685 1029705275 800120949 486817984 542668628 102421207 231141134 302173300 41557526 591919760 166886289 995337114 658830037 235519391 96153148 726222257 768412657 764377568 565268431 731231291 834360660 999711678 102912481 321271592 435025359 341964379 843365523 17824009 38128334 968400045 25993773 513097973 90774515 868841406 75692100 708477601 36323294 305458095 377220519 620575316 246083242 646331071 329923587 659018065 2358931 961262372 368675189 938801850 662814712 577679352 160257557 101619368 294458382 1052243736 659818536 177538768 579242461 1045544694 673114921 204077712 210957968 467434699 312436142 896777204 267552784 809905938 77648076 947366353 136791500 752588857 316986148 751809581 853337180 1057133551 455061896 141232067 961218862 361017023 906244910 664228864 1070760433 460886111 355851604 846695983 179804441 439513172 381310166 746368601 1011680153 917472950 291834995 434247928 396204057 186501167 849046796 864457866 775168681 986895360 461906095 184495233 603499500 186323468 372992459 46875976 362699895 851370549 635763887 995444423 120414313 508427510 915554655 463258287 566203715 62881772 926913875 1057835430 655018080 180350823 500419475 72754810 1063789043 92225313 656568039 456155186 143095102 935550487 830918 45898564 801252800 1006362370 804844533 314859879 378517864 234006172 614954104 1026621148 357792382 527736858 539009122 890826695 286433046 311775157 490382890 939482901 643258142 494414138 188666792 270131122 152247592 1058793469 271330666 969062621 854368694 842712643 99789459 751122502 927054671 733012405 993796815 200441386 690710613 521459551 147159698 546026325 463415105 445437997 16561493 326815917 92185535 682218315 837283566 311507242 604409655 964168692 87637716 751106833 803965511 815740233 1064993062 74287424 114744136 803654060 1014809729 931762138 305052794 13870223 957098047 614862819 205069601 226275302 986681603 593451566 830315863 300431411 245254921 853287134 76131671 954802935 964066843 950691507 393022396 23501431 334242594 140147615 1056079739 873168103 141383367 119706607 1049574780 781506523 125840939 11949323 902667281 916899149 135967822 200826010 105232692 742164734 607782305 627443374 425149052 428644644 421214616 690832734 977434930 619492717 915060948 1021736611 79831991 514468561 771103259 844031654 900078134 375069986 1042324814 221808895 430052155 326643382 111809820 307660956 225043407 602049345 807434225 652500857 471530007 923698558 844034859 801234734 552295843 147251507 683771719 74224855 179052969 163743927 531885461 425963483 532604695 6459560 523479099 33830864 780339510 559831065 132871370 341798868 353631052 606412141 251976223 458715583 664680027 906927346 501371229 599199441 900970895 575146921 793948362 417073923 394283233 861407457 865753410 7881127 1054377884 757683563 932240578 229743173 991747774 492628530 736828533 232702568 285113937 903750136 738258256 737955355 138864263 605375951 283482123 333487352 238055204 1044318136 987827432 982716085 657595039 53033700 871143261 322334400 394593197 983645222 560566960 17900991 441484604 707364229 769090591 702647460 1046642055 747231440 62364772 320391273 308459937 548228012 189796607 427713532 1053074945 591878361 139243598 908710317 940182798 881064980 456965468 1039883833 798153855 537968492 499262121 353423372 68590833 332761914 1007174979 332690090 607226717 382697780 832874485 394317865 345644421 328473721 495662362 565280705 1022012480 245013109 75316422 78233902 281447454 477889041 925603792 222382441 46587599 262331939 203886168 788239284 862890708 663246369 736464121 31581400 569802056 322864543 215284255 609119822 424236324 272403083 1036313869 707883144 477335022 1062115743 359306990 943913568 326721045 263161538 987411160 801109010 926498601 854518926 1008559643 69920997 734012033 1038326078 576294077 516092134 333143701 618259264 214973934 486429151 1005006339 461830353 508397028 676557934 939004309 114109871 411235526 294630280 281499763 645859242 637347230 710309638 764121101 1046072713 47929615 341663039 980795238 737707520 164391987 125713262 137124628 636315025 134709031 748590213 108125316 802642890 949564426 551194634 753944445 664639992 909771056 971296071 478123020 821463628 85592566 72223922 574082306 698670532 456254242 658863112 137254185 832615536 841429290 708859785 416336032 272774414 348990786 955847710 279616683 250818067 912576283 931623404 167020171 390857388 350512904 642611431 139701469 95283696 146896277 356317144 434053325 383700142 980530117 32809265 233703284 397460315 326758180 573869923 380458821 742724765 418867341 292873917 969481037 1032468294 470127132 75934569 207663325 690269946 898177225 258110279 704739792 114581792 344800427 1025856759 398125205 15674391 368458544 380582316 1033752774 356840549 983538570 761080772 144948455 396811442 994321592 156963474 410963842 264931655 306280354 663287191 372282683 13610466 542792418 101755299 969232501 327914612 255544771 493923561 1046465702 52173253 220776019 40576233 716703895 932518914 1037971292 38350119 544784253 1065703350 206175749 802944830 77812910 448702295 973409731 554180383 553165774 212131635 1037652832 598139447 323422734 286285499 838888840 1046913037 51868409 520859843 314853069 916197738 805345878 845584521 924407270 651139012 485272801 797939677 14436688 532038633 399302927 776000751 55101665 898461169 610262335 271071932 889895650 441959099 767686358 949276588 645833450 33978049 613174451 10310069 727583024 621559453 113880338 324657167 1063869397 353109965 710665047 204401664 445963993 753704184 598177603 147022717 273483477 5034822 894248068 69431124 518644168 716072636 1043899640 843730688 787983346 972118459 545224594 366999079 787483286 594956367 979734595 659365837 530108970 648817527 618817104 322649819 455438581 220500670 796099662 462911323 219113589 630452760 176223313 203400593 175211017 298710441 386024012 708752962 269136951 846371762 51618489 870754950 926190544 390459773 198694507 401062520 285186423 375284165 452295335 510616516 1025738297 652316387 318453673 814640235 512626505 728175788 289229475 557203753 45992878 240444938 338664622 154404045 731871685 969212564 237577712 292146553 92013377 705509431 261895615 444364774 81629063 276781065 881284085 409887796 605069063 120141060 396393023 402161770 544547167 373146706 138433276 470152085 83555896 208121492 658666852 958500261 139796228 563434812 325834902 143219599 771611436 539354837 691736558 488993171 950471815 495525353 112109099 385329230 182837693 980611436 855490417 331885323 422490488 112323800 929010521 457397969 765483270 604783917 200983649 824664838 374428785 886563636 881478512 631604719 1013015063 851199014 307021895 690938895 629854933 570953269 683567429 145307622 646019778 425130889 38241744 477436088 266436078 839278368 364512104 690120519 507480014 167041579 100574429 457535447 1048163354 349816559 623241404 922280257 345436043 301255946 1004341 363415869 1014902591 909815177 882482614 561854736 208892236 447810091 587394579 1014359367 84686772 344415458 404519987 525651398 674075283 702020720 24343659 773003089 320364433 89803918 714831759 225048141 596151973 267698167 1072289103 671343105 883800905 870953486 446529115 455245971 692892137 909829716 529632403 703078449 495228927 524605458 979562034 5459956 876901887 961410227 167804453 561999895 1059162900 481716863 691000434 785004236 1026727681 647479956 145149861 429909314 966665342 85340044 251154766 188048976 964494756 806161088 303054420 686378980 407692667 1023737677 1052873020 319777462 441795179 397729648 289591998 785491995 302265437 715379665 845327398 750421304 712760108 879755421 492836966 471008340 1038544946 473864076 332054043 260610404 823455661 564767774 506915906 742935573 658330469 582438025 991207768 412101070 119323344 906162302 985644810 277267021 1048528485 82772206 454622388 389806889 920200058 388384911 247892410 491019508 46835646 717528549 47383172 734555108 226573330 365147334 110888768 489824139 606218682 997922698 813800841 684527251 740998043 174512095 17595246 271093977 273603320 802196590 385422687 256828635 552048498 368067208 444971051 411908108 298678215 838693925 57085234 614110820 245966226 1010183706 878276175 494230801 453541954 294613964 190744067 860314661 275453692 215424572 489523894 409194341 200997044 752255839 94301554 659737771 1055339135 475425818 452839387 776866198 619008644 710669139 452159734 198130886 424291694 844939929 42884979 505278516 780948461 471760844 717671841 199114414 887330465 939100953 719923288 1068533884 461081194 593535952 411960013 1031211790 550193255 91550234 241922058 896726321 759912393 482227155 270398772 142998668 506980740 744416675 672574916 876227713 398584577 824907812 971669809 509569968 319309711 317078152 126930278 44907937 987404453 413476569 558197696 777305613 651878008 1021862029 1017024883 313660680 794353595 226248070 981138163 481570087 705376324 839045660 985490339 843678703 7228572 436647174 288741558 204341105 1048117907 1063253823 501973167 734353985 609576759 812005903 130712645 550508433 496447314 943571767 498812339 512477172 660538140 839255812 692372226 60249177 126419979 334467653 686055059 223880145 505578239 732993740 84441388 616286548 1034380054 37073046 598355890 658423660 619836381 21364404 735907736 777153046 548036630 366918791 699911305 621065340 931178395 969640986 306146723 808702831 237724517 1018140556 754489018 62672333 319799896 347705203 39305202 272877902 1003495235 911212505 213353886 351020840 779480278 894424779 170335268 973068909 575625894 192105710 972793979 17073631 992614469 372796483 464256385 396254181 457200390 632853350 950062410 166040872 746276299 391445158 102822452 585818655 112315975 544365995 258970515 109594948 1032888217 636042999 567046440 386872419 692796523 418971047 776573526 565246688 313928784 658024698 687404297 864832170 494587835 68130054 1031191147 971912663 475450356 83931765 291777117 446414965 76022507 564186500 839314337 840477273 725714474 382622493 51278510 226419307 524379219 871686920 176193401 699384907 113777399 37564681 454795425 782775903 937342786 703297125 462949145 162647449 561549655 443603170 804897141 111822549 1005819965 631551320 920638377 723125958 1041314249 605283414 360659927 18334283 423511117 320410578 174957094 302127905 330102215 1056891423 768359397 410622484 530665363 722601947 832565586 180257730 1066923597 752367246 962639656 178092108 898852547 286259459 674955078 840556420 672886161 276287219 669978211 545561140 550660693 284220955 278590364 634206326 843220023 983014512 153889275 594399131 112493799 365828132 321657891 367120847 282759807 75144993 81142445 968992949 1007265295 1070832088 950239792 311074894 711948446 765542901 4513118 182376965 241749413 762350859 227435635 454820849 33139484 165941964 520324262 923972120 45632198 921027736 28645692 664746270 223035137 167840960 923853696 126981594 1037059239 347352292 583235141 755795692 1009139232 707626423 51295306 953602528 1038206069 831171753 703194805 188661876 484907091 766034911 1000993903 924821986 989479518 644791542 483146385 498787641 951760785 813537136 873227117 244946659 857909792 1043865779 1039603070 623159979 475613440 965327812 9931753 886596989 606174406 397483643 365811192 567435052 707273160 543228940 964863931 955066032 314715024 1069407449 956998233 107138428 432792278 900042332 840849822 413315032 80289194 922968558 638625559 296930915 473123688 1073243514 937901710 398246852 711970221 841720543 180260093 248657593 370694820 91287033 258310423 551776840 705421141 287938857 298571055 466072518 738330265 259138860 329307884 314867800 712809602 921213813 969800612 879095100 553005962 742305859 1061231433 515445174 102232677 963811897 377709762 792858210 1021212426 645276574 535192925 790011824 1050363791 931650555 341258977 203404323 901052325 1002858879 454601574 84641174 329522799 219560069 741341424 830919392 268952746 69288846 369558074 75282493 104717957 433150455 423368087 242172132 651833117 746310560 1057627982 203578025 641195753 855979635 223708426 623442602 932617426 15417030 22455442 785011479 802404719 305943406 1034439733 686498551 151609056 642562795 545866387 781106766 777339334 941570110 687023645 654696092 885253861 242635936 948285651 422189688 264781953 674112653 1008847928 1046379089 830295218 143084478 322697052 280378024 585761923 483578291 22234019 935825125 726835657 745141914 144610417 634721875 216385853 57362269 353772742 691527620 330032802 1051467437 45676249 750632483 95131677 850710718 1020166887 638109489 415454168 373464651 98311422 829163476 889554981 1055523942 970229993 619216603 740887435 686618474 766862726 323569923 1002874485 497104104 620145609 470640371 666390233 882958066 827610574 482744372 287843660 384714980 87317188 527954501 735001454 944944617 498785803 479804854 793426976 89355177 521163057 5731565 388813470 231627232 336729840 599955004 620954665 174239496 112937305 21427333 930850987 190828584 437332878 534554913 942744911 671434158 760897540 750909236 884697833 601026023 230978432 749847900 726570559 763941621 647560891 254481760 495584429 769046446 1001908809 363974488 186004862 73190344 1004901614 215657879 628606117 989836338 186298844 830541889 561137779 429989336 632637687 717748933 73227613 511815207 28599199 62138505 911147558 572586036 148206890 88229945 670464270 31601740 58761278 803788116 637519397 887275054 668194227 831842748 1072652988 234535427 481346801 654076214 799956352 128228078 984656306 53856046 665036270 1033678249 200368708 369032248 402091193 557065206 857244281 420610376 34145359 42233988 938554837 542114436 927379244 1003340654 340565025 602880621 636706068 562292441 205834562 138747352 563725457 419447069 652904252 84856963 428135218 751713365 74687273 1042026648 293519254 22843276 407475111 62203702 598069764 12221310 423194994 20190287 762289785 36220787 592419218 976698693 397831793 173568085 889334070 831312912 579564740 267497922 144244461 754199290 643287936 22219994 381384859 828117475 195148902 695796778 976773837 145420542 515048476 190718280 426090334 803211316 623354886 794634530 936480976 203242613 414586389 544146346 917235360 252174547 307652282 205706888 521606838 1029519734 60699580 790720502 275920961 146851281 186533048 40639363 198198652 632974143 1030622566 885171741 593691308 379878441 289967204 634193283 541918433 631541512 216599460 472935860 775094658 385399106 773514533 177001148 76707757 1016361828 1060811810 334067585 636052301 883947181 342780816 451553734 971153796 270116944 176852819 636488820 379211167 546424586 20430645 916981642 668270370 1042455629 221744442 206674084 218246988 1016316901 66459994 708498018 472852356 189074096 926690397 856933087 452161035 501933710 221839467 69796686 707036431 954817591 525072663 845245801 381097319 334865503 742733833 181589895 197645162 372664516 262409579 677102865 35341137 170641965 831651357 728046320 496701728 589395510 205105577 219595046 548902574 644592763 36765004 628637332 875394025 30430041 904840300 126494675 903238003 791953365 304170478 167772655 795528666 451837309 766479546 235828224 948301276 476238910 235750412 825384780 123307972 402091927 575288721 1035471558 30925262 19109289 337890529 257110084 677513382 702223924 935187547 676751052 894943921 79971023 286520489 858388343 685191534 939669643 411037304 172541254 682342878 212282624 435880856 540686733 157510685 72211457 99091109 590659037 974824312 648488254 693053059 1067502604 656969418 580753610 1032048544 644312214 136366765 831218470 969860876 215224965 563296718 1065907816 206067160 497824416 496405679 476091596 53036191 667938527 39521771 782166496 328050107 152948963 254274269 98314635 1001772197 102774814 3489983 352219825 136444627 230350918 575394858 345886043 678398940 599095863 379435311 29381729 445038574 901751813 259675793 509460947 314358670 960377525 973214696 575218983 576885678 86994567 978222453 40934451 912360602 137686840 902440920 6872051 1048385620 466805439 285126749 285243661 519927319 587434613 268966937 296940731 1069818098 152055098 52944454 657976850 391837124 274801855 503350612 694853960 217761151 387053525 403178179 60247439 924913389 383133489 429565784 900750341 154069312 567023342 964448802 683258282 281717270 803675712 202673347 146117939 912093010 777414069 425345642 513433950 195483705 46611787 213045000 103393841 517528908 383631286 810930104 64550540 303764863 34635491 228519493 668149693 752273782 119803390 932619393 624060020 363491294 764697940 1009447481 871182594 1042770529 73049751 604459527 278202679 873263089 16663795 636982857 703689918 402712430 191544290 278728705 448825327 180979338 847537691 540090419 309158353 116218529 978487459 899024956 914446092 758043731 614687632 42214117 881171435 322423545 404762636 666379114 437726851 762554621 707895731 140272146 817769011 565873153 205823848 608988582 811079079 691283129 295954504 122056980 225023981 38555427 602543506 628202502 632782976 71017500 258659541 591128193 665276269 1022737713 969464135 364798702 175945276 13121633 774884281 259679552 677187076 989149692 1059469424 1039555177 317654738 590115898 626710009 978633621 1050060600 343777514 655620804 650104283 794653380 1035587368 536362106 259908721 110881267 118953765 525487396 448450257 741212430 764945585 963005630 561210701 177033338 760288988 89822723 711073774 147344567 299082553 169562488 1030088940 91251960 594574685 100805654 1038415364 482710517 128273610 2537173 169749226 345553980 505591570 308869579 429273408 966281282 1053094561 394864425 676085423 152502762 31787644 576214801 911378101 1062039512 382367585 790178587 853509337 580669201 935228748 376623712 286950739 119565484 597473197 595031594 298154288 712930476 1061155641 435149612 175027150 371423971 357564061 523268263 8261106 300699850 272601847 1017306768 610508276 892480138 98195912 569299320 1006686452 910659951 361681291 354302324 47640542 221301716 403687381 434393036 875897656 828089664 579069015 730067456 232547203 999548169 1042838749 676734245 679765437 401118779 1062979035 431481909 698648850 191152807 166340304 571308657 257793985 556595213 736829011 919428422 430211631 230361247 78707715 598153601 177922262 440378346 1017515331 785918586 367374896 242914197 1017186136 654726318 452368896 771523150 618034876 474879035 98213027 188822238 214095854 425188199 966471359 22044167 638850044 458812730 655928146 931314408 54219473 523623772 783708729 628040388 129159046 221962505 677990778 834935427 911641947 536071035 838625610 529182610 899024433 953418072 321080788 866135649 1059796619 314061881 912140277 89633833 320849917 306714301 742347605 884885157 381670685 28534290 934370082 333479477 925927242 491174234 785844488 641487367 1049371117 787680368 204159561 269997685 623128999 482655894 385813395 952940665 65682821 29319749 345118436 1038733546 137784329 696119406 949453391 399028702 10528992 909385891 354934204 96444126 701983344 132822586 736078159 782254353 919930639 192615777 74535470 817230297 1003361191 1036248484 180849971 262146565 621564265 394252657 367823137 926279156 692469847 755693453 791607681 323006265 938229288 790533705 551912320 937251227 183750803 66261454 263083319 784202940 808943058 569754060 453741903 219036080 436072329 293501818 944192413 1021189407 357041838 336453228 220444350 915074886 1067266698 56007993 228563484 122361468 556371420 978626232 920688849 963349111 462079051 754260400 439065909 448279918 360319716 475042015 559520879 612728178 748705869 991212000 309795992 146759253 762789571 739229587 562394240 520270188 884190595 987243720 533770618 55471350 671107534 54043371 815764348 168607599 1072079547 1029594700 311434036 311328021 768630643 682941085 436624518 963537177 1030915717 741514525 716139264 194387917 308423268 10729250 804335644 698407708 105798170 449124667 493716892 704803833 794818014 61554208 435253804 105528855 902818256 1036598853 683546669 526238799 798285221 281561972 665903370 504068931 1015280452 795778994 172247311 486437965 198357868 607598578 951137514 286602495 672278949 349620532 1058382887 671591226 1064413850 404883972 288696399 612048396 483276561 116597761 677139426 777810044 361981816 38876808 664242414 201844381 257476372 873082287 592273277 235619904 656728867 11400172 834601944 475563211 96535981 311551739 156044100 960675064 439049626 87377284 253703538 487118998 420855917 163912880 451966465 306438782 911880591 637838460 932273493 29544400 582266058 337206122 1007742099 746782823 187605147 720167284 40859128 97240956 998427993 390627669 816888317 926469646 861965720 426117573 182342795 985094460 110981113 944974058 395254478 591111606 114964567 613241491 861068684 324114445 44056710 371652868 653437874 1040923901 867933045 418223493 725887578 278424322 151897680 732890530 312096051 386579064 981430656 1006037482 281065003 251319766 297565488 583415797 197915868 453934376 105748904 1006663967 524720155 80490522 500711493 718251366 478537060 807913037 114665356 686868082 301646018 288485714 371334062 1047569578 164169811 361507345 811888165 86680011 48899942 404572523 594627637 467558812 1070953830 15449136 201405301 260937098 824731003 340769272 129392864 430517500 771627598 578096712 1011495191 347765893 883183636 1011950661 519753561 744062775 607641797 568744428 635320692 739536791 501131881 955074953 90318407 379299682 960300741 271899646 1004840660 174241755 475559576 237278169 836540685 842545546 813774766 781872909 427292645 850471277 290481526 252875745 423798781 453770157 1070626458 572964651 685459373 986942903 88588876 769874069 189540166 576059801 659535427 721398785 1026572115 469765451 1047138303 662286261 678753416 204022494 716397962 125255996 829102951 425416313 138174459 307886924 241853846 870497731 920606582 1018593159 365249518 673152405 772183132 434274289 556140830 8170299 515990982 510939256 867935044 672372790 943243880 188516237 589021857 913662828 569753295 389622506 892385534 774194434 927936960 627898225 548984440 736082076 994939567 802680557 965036639 203967415 484471928 30155112 559575529 263107774 890131287 418693748 606727071 88171121 1048028494 284608461 723589332 325463320 1060685854 1038036821 434375860 721189546 187861890 956072442 528260494 471748786 151262054 413054421 969971239 647235670 1061968282 403543336 406763615 777065829 324332962 22501357 399959445 877889486 313491819 736092595 1059439567 454198692 1060938856 47282244 700563375 108398583 918419922 842715495 375845819 380827129 736539527 796519500 797186722 349534490 683017056 1060272230 980793144 1058876782 684010656 502461145 191260747 498819435 513978045 435922467 316055678 656285172 46281289 837017998 158011322 300480308 546526924 478251640 299756225 125770972 847868590 596109726 985416393 751841032 865219149 123665953 497778469 909073531 151473878 263204108 344016307 115670754 665655304 497031373 501568073 422063623 33930653 706895288 92642530 406011708 750058386 275652199 347874742 700217993 706261001 1046762313 829541261 567205677 127573646 462025587 279184805 240367453 463271120 296168600 543549693 842613833 671883671 51113402 457901259 189151874 332304931 583274182 1013302909 880120369 539361675 849821514 661218113 399265444 592141103 660237598 156831060 1036137520 41148554 429062779 432836997 1065171139 1046222330 437801193 249384104 158186517 657909958 93464760 426341223 243270598 852878799 443623549 833205108 468250523 705670551 744142041 571152937 949655597 317278344 729575299 93894450 67149236 602167860 600649110 333040693 268853859 917641165 892274471 216502059 566369120 975317025 798311024 738004421 479283443 293556381 1040307515 1029280637 28980830 473570893 90515078 967354594 607956493 472075322 707232880 585303168 548045200 713933303 531191133 121310919 944551379 488949772 580834210 420720702 113285362 913766552 353368520 391877908 37206834 333292927 513918724 193346803 898592196 369752213 826230881 138736788 796130049 468223795 328611797 267826496 210746053 419250421 1038485085 151775622 495299133 328769257 456525334 516923919 55376614 141550075 231204320 358751238 989574471 5441084 386017224 107841150 638149708 1014530452 567467962 382649848 870540635 957407610 445432909 549452342 878515341 447344693 661905927 536914667 898097482 481764035 479642858 514074218 274980344 961641180 522754288 249113639 378333502 347516507 292384161 368744306 1009807201 440161927 822224625 710502911 359989711 269642558 3791495 199864767 237427731 406171133 1000972082 255624558 592018730 286291126 316142510 349319014 810949676 509525149 918983940 435913753 605048023 430050884 797521343 936571292 1064621524 383276069 396477318 579626175 157920914 727043399 225288498 991910349 383738536 790287563 833768598 499163513 657601891 1072805934 565880091 291481203 1068381229 755805401 957124522 593797168 16034526 657368437 707559374 188319774 695773646 797558427 294717787 171400093 1041164745 974517375 523323262 859292083 550437517 910820978 626180343 926979721 895686046 318430048 447060298 581367822 364071619 998469621 215530837 536134400 452213810 699517421 465226252 112354137 607854875 440907499 703594927 969749762 251343626 675328497 370087671 256297833 1045100230 768694220 70346237 918353743 618156807 49344988 12574393 83738676 258905309 173915581 262152945 161693710 254684688 502355977 32255986 819288459 403219480 198938715 935543047 1003711252 44288041 201235793 17054339 823757984 100834540 116503261 575805173 840308496 906186014 413464417 190476976 122217021 209411669 670847308 1024518557 488193926 991786775 597917651 1009059329 817098885 595254648 221822291 292647927 962467981 39882252 661528816 450802753 774826489 814349756 740055490 916579552 478651494 943871737 962213977 406754665 529926219 713834383 151090199 722553922 5046055 640639862 615211280 432711212 533480091 34933126 611200611 414903401 95260756 180617501 923848273 116964467 216980654 299125082 504589755 433249502 855023890 347510694 224861517 789696063 167722055 412242983 541052933 786292849 886508487 198720295 575251443 1022129422 592846786 80397239 216245655 477386483 859925765 261362609 135959617 753621982 60375886 190773253 441258157 608404739 419216243 584219810 942878190 375916607 329496548 1031151269 600823235 189815627 741824461 310056393 62806304 293159972 493363019 604872559 356422601 901219379 772005861 210085152 1056210881 960897502 620476385 837183746 930816095 377317145 697583479 191627401 383500447 71240232 558267900 274635966 541573747 182815473 450579498 74787383 410410791 473189011 378090584 900819497 325627097 690357222 911405627 744930938 855195888 167637268 960633561 455020281 42507170 962264414 927087277 787927497 988262717 32256878 360185123 227706950 151505530 476398157 872682495 255189492 112053376 518304098 739430475 914385649 290954073 567177439 714152350 482261693 556425535 426366109 660027834 730902246 795322222 938749176 672978017 297135210 249040228 241249076 188059645 684636989 230109464 832931110 608218699 393868726 465960342 402239098 155154463 177858417 85387248 392757655 1063031975 106492854 210415188 10825069 621144107 660066132 548242538 337580362 425844248 95306055 387247951 415225202 394729460 364238624 767627558 837868425 44498415 280307615 953632454 950762877 5216384 916144708 1043699891 724335711 455776750 678110815 176699224 1043367949 147400893 221950291 759034635 301425630 5556709 368299055 9972370 732627379 822554017 175453430 109879026 112283520 754063217 498474797 974666877 551672296 164048597 691901121 757885271 569373763 320969948 388518932 132493320 462689522 811197174 416480668 457574049 828998971 551360301 12786888 57145255 782468172 357382737 455759825 127113804 959326066 1058505019 418947976 191535564 377230772 310742703 251344645 928743840 776535035 1003224702 418808955 740507136 1021501253 596013264 755281894 38763277 415060046 573255322 178646860 684643477 344933542 423996146 339901817 17871863 981161702 492204833 321618382 232133133 696783001 785861993 804057932 937232958 912213837 537469891 435817769 1068205691 935879579 786408417 534380370 573953623 716171082 13163955 365628977 880599192 288439796 110277219 1070616112 539169334 101378676 594421468 153040657 811450399 1066202261 836826086 476921348 807846309 792146620 554389764 987099859 812246562 261922842 107259396 516091907 544463238 926574918 592949736 755430070 758801140 492546011 914463046 466325916 258647798 1721744 410499151 438560638 898229282 569022018 606537797 218006024 1002727572 75180922 901050911 136407993 119040242 145575602 97432063 535515683 1016548490 940301595 515492554 610514501 1008948984 318588296 986512351 544364514 42093453 669625700 613924318 887441785 710264939 853134347 298817316 863399082 864695153 904165031 826192316 603092083 195165513 535750884 657402580 487193804 412749599 759213848 196032138 993330356 232637448 863980041 656461513 35823694 738162378 862383399 1053311477 906669308 488118149 857624600 439959149 355501964 919531018 592019333 864992338 142148433 1035342004 1017435014 359204639 907141321 284055563 49924596 972564613 183927800 593824375 584187783 334764210 199406348 458354627 997822489 851186345 69962097 772698204 762993593 679244448 1054946933 530431349 675554431 299078665 623335513 571587491 771319503 682561244 921971550 500372088 1054837571 721130015 14591883 1037776465 1027377215 549521187 400739606 482527960 196390139 832274380 428449817 885078628 413805544 914947178 618129246 126840397 173840093 919873283 407672761 24248991 567997073 27043429 829441238 352929610 914375624 195711366 552057859 179276888 679867850 305425663 1014956080 812941410 128505483 933342966 574678795 149872634 1014601297 966008500 120747490 129730096 1056673833 933016265 710948832 35757656 877911923 780884104 403192717 586672109 296511932 758790385 968470802 440670717 1002678671 286904352 294883779 103417701 921691862 735806453 609764949 1066640824 132671447 434862312 111845893 141376546 149283919 211714493 66015112 546388001 604895923 57940676 647752234 460419788 110808684 571737228 44839471 744642483 637880674 458433905 379781970 818503754 25798690 642337496 1045278425 311734690 759251739 343087578 384262356 470806449 135011506 420534547 989156040 181746183 1037625132 1062946577 1039806275 811733825 830416497 416628492 203721383 344986083 151911500 639389640 656992651 1034199898 639125277 808649318 865391419 829454985 274873929 333928223 208677886 704629536 439777901 1040205703 755556851 968942259 1051648898 598851431 609422433 1055795714 65374480 514684851 164346699 310276619 100735047 671746692 763973902 3170892 897775989 176961884 1018749821 766455884 116166594 454661191 565461987 514687836 992999881 676654688 937630041 44198458 272153230 656667777 520245770 1031385800 217087026 656155676 313375733 519835670 769951808 923935241 631915193 585321771 826977437 304426985 678212592 234188152 893606242 110947580 336410730 996264602 899691592 247371797 1047125564 1022075120 914320803 163656447 263024115 5177043 776143251 129774767 943555383 1015840551 145944541 496960121 253305242 802354799 396156318 643004219 13477127 609994428 213031783 105915207 393441871 455772643 49899303 612974801 167843320 290698417 795786243 60992457 687048463 307983576 64640683 277093250 674753561 635660734 314084636 569077170 764353554 75387633 826159924 399887325 269908405 88782441 255933507 1034311542 91409919 898291386 162767513 74307799 873554339 191203460 2456675 680531607 572337766 722815352 743874282 683924149 601346807 392019120 683331044 639736363 536351774 922930175 2309356 370843306 775316555 225925661 465290962 299205014 858309257 350587904 467623542 468752208 1056968399 356265512 1041979421 28834704 338478813 409733627 276152381 742867477 415432280 738280219 155681392 709005997 964137445 529245515 720098730 721756113 924334611 189844024 463478002 436349963 595583776 896109332 733741746 221824539 455090480 351411734 504514979 864739828 909453390 230784155 783815564 823068265 95069073 785992866 351126448 16964092 375062623 455674764 785295875 931814003 705800891 687988218 1070861550 429774 648387417 146211121 32529397 297540382 98590303 792388885 134010628 258810223 803876491 597589229 760517906 40162641 636274746 608261083 38168133 831608628 313447099 842622655 217510671 461219307 448823858 663669553 530135142 520970263 510935841 342128173 406503425 719985018 63966093 1067523818 163356547 1022212698 584598764 1045480886 201828147 467970509 375722408 70342719 627606683 190204028 709810313 690192813 497091741 802487827 885889215 216820330 845643240 664522846 18555808 778120712 971043701 1047988718 862747316 950443013 630387267 704924912 1016309569 824638265 760778571 1029785537 500011930 459292411 511170 857727042 118329393 808334886 636248540 706405652 690810893 943238712 551422880 790286365 907121203 358177558 985092046 1013949172 937022113 37429820 599358261 253336008 875171583 898532828 625648207 732084556 180628982 581031442 570421847 59822564 1017789111 183039698 454792850 171597832 957683510 1034483033 620979998 496151200 74603059 512015326 188080079 624749831 14080270 823106719 330174910 944434664 809897053 897973731 750590039 97090602 1043113442 902013750 897163550 266570201 607513261 630128312 836743461 954434100 106814340 1034398922 874310669 843984432 754371859 718747138 526244705 401613794 717572579 211246302 130179224 106203009 810330267 1072449254 456598876 260876852 923432366 984787641 962266079 703473477 365123788 972752652 61815051 603688996 381586904 567687923 84383467 942858233 1007035240 1069862235 20209237 751838821 634366738 197443082 301765696 73720551 127708844 424261410 437508865 747405883 336023187 198378655 529507213 478094077 996207167 240494267 173782577 686278058 926841885 1038326573 468795675 90709007 328467388 101368582 173299772 975905413 1048855830 835649950 881127757 998925186 821017649 746020833 285050961 624337408 815013089 572591867 663523326 191008888 242915967 932055220 642097699 707106468 927547339 20085595 660606667 932109556 520328416 946231582 501979459 675235252 48613366 255321011 708863944 619261388 1051653560 634492236 665370907 384677028 582445200 1040915263 698066032 722813817 503282846 511048614 218313774 32643935 338848891 205993324 667339511 218785232 136778905 43054434 169514666 403058273 336496877 98414801 41509718 498970432 785143814 636726503 114598362 674576494 190300984 767083035 181966180 126838582 803399484 148782135 66322776 285124309 482778895 613583514 792669912 7792593 997798355 153068651 252962103 31928666 807067721 1056605280 353486732 959627317 612838670 295175058 368446485 563242355 203339692 40394147 680903334 167748851 42253639 1063566798 413726786 256595745 558881715 581538022 539374779 40311123 992297194 742687442 311122144 364763839 171487441 654579546 121590317 368995423 863897385 155342077 755617802 295754290 430742323 765650652 604478390 239783218 832146942 635381567 944648477 253958541 527795938 106637973 988107483 1060238942 935192181 962436393 675486062 347988426 166720164 993320629 367085943 241201739 987371806 553105100 848895293 50580507 938449462 309890804 253429241 513907100 750135207 887691534 885625901 819873869 753086196 708259277 146568634 328009638 1051881130 1040356211 391263646 171053476 323409015 917942494 956904630 234010617 97636687 450598493 192702998 205406706 903497244 856167275 907525274 772841333 648797679 360123947 1017290675 779852223 790174171 687510807 453375460 815830149 97651481 1054617536 702617383 1053933054 1052777962 400900659 573395852 347413567 856502006 523093209 282829445 542762932 764944192 170461588 166040284 801980390 49141446 948977669 199081766 49195342 998588742 473571934 677824810 260136681 1060149006 716483155 1017401118 134813051 96655651 332819540 422490354 660820664 1003755367 537600668 445487266 802290576 116250632 832932518 305003681 119151138 454271808 198320411 1037808151 137619864 1035697660 297775999 351610239 763268248 164408757 285715076 555020576 391571870 602406575 581728525 273225046 54841830 1057162591 711864023 342935238 602752780 568417866 433213474 825175605 870761949 828646625 518465601 375527787 334544501 773135703 132019695 842557944 645170158 369578638 1015670564 616472992 224402434 639491490 913560534 172578259 1042068026 568539189 624690907 1060204525 70254363 573099754 205688906 612701752 913889196 704727794 256858089 235478209 395427888 1039171735 624675512 373760989 707163664 723456849 474311231 555288147 500993996 11309355 565225565 250288328 922470133 637866850 1035524719 454250472 157176576 10069715 409314882 916051329 553736364 290347774 627411900 528268021 806509116 370429460 210542454 121437757 697973400 139561468 930234652 996019553 754998940 276291966 78694831 804998643 713142310 494391375 513165684 972969887 788180607 1029499475 740805947 94581000 845425538 470405310 947909533 360122779 371526655 891051584 989634187 59480471 197595293 857196247 560640840 133203978 663389030 247138528 234610452 859108570 750460233 328184342 175144939 840212624 808058868 376849882 43504443 801959399 517517618 718671845 375608701 603483214 572387510 906153997 631536680 529592675 149705607 161488349 767788391 42530989 280203541 289826796 565610621 517916373 101467362 380974236 504370839 628486751 987573649 1009211415 194889315 494366247 24835727 310778150 490112092 364901849 847131135 807589660 823260872 276885648 1058596738 939723198 114200386 525243404 44972477 807508238 1015436258 139994846 682927416 87193721 749174192 402013259 850650818 368589038 1047557935 320845611 2652694 933754687 755169401 337695913 392895067 92141867 666357759 948689618 890071096 363718974 430520911 502436105 515124443 417339184 134726621 22555948 377967804 796652153 861268591 772261740 382690047 628248986 17755353 498709653 1030784230 888675273 373828757 139974017 445481557 234326429 826980541 532582334 1052419289 77826266 947619785 102659652 580870271 965706913 102158809 529695935 707049973 274809850 295841131 736227955 131467857 221659646 754961256 496311154 862347300 943029688 963369819 86496417 363081523 260986379 852431247 31338246 1051849904 743909551 878138115 1050749878 376885383 381004263 291200884 264136370 362561574 1024449990 887171435 849839195 193781626 802914011 168219377 702116017 891167621 338289455 831408623 23120821 127756613 321239066 45742587 953802198 121307078 186274366 33672538 693495259 295684620 728856907 83975676 63022627 961782540 426426165 18089490 979565583 230909119 785017283 283246511 857593687 960118099 836656663 895734626 536994103 762411376 318507792 214991255 547805379 1067312345 437443590 52052698 275559067 320968534 93969885 199210240 783464954 1064912202 916117011 148311826 756043781 1028662760 173510498 934078492 976183572 219842617 883903722 285720299 208841636 411358468 46576984 434545597 1073331317 693611587 764231120 40310842 343016089 813413060 394180718 194118413 182365175 496712903 243234930 388495173 402315052 24702672 411309728 517885794 863168050 148847549 282453890 987512217 352694604 643316375 561847221 528521899 786622646 54128449 61605051 828818664 57713248 528673463 733143559 30711420 870075558 519402850 79860267 549522331 796248419 225970111 249635989 797442130 376631208 653352796 1040860814 997842609 319578021 749637733 188167041 377191670 804145845 46313008 177284375 122027062 544790158 784673820 262304033 722193626 554442671 648201987 83587420 391179487 972360207 937648219 41696729 158058759 570200118 309204678 40556629 773523549 650081418 726593481 731315973 998608726 970787074 349458286 174396710 424898871 330865490 571594200 151127454 636298763 679742505 422350107 809854993 607278454 244717320 111334514 740858497 87514662 52045919 355255489 374750381 39561374 828993842 638740970 222555530 977177518 1043344698 628846762 445474855 762506462 92261593 149352863 25623413 85207801 618595595 161054711 516354153 123826874 760795587 795397718 708418220 564634201 372005198 914408169 825878887 1063603410 1025738926 547301403 1039305678 605506057 409746077 49974676 578686071 32416230 751806604 792065313 837087448 655445556 670652106 28201102 959057915 600744151 762960813 182150996 397923171 658502226 677863123 18521652 654347863 416734391 308987842 743250861 272029125 343330573 191243414 52233188 451860861 869798301 933298360 520335808 989120961 941620067 376460783 628223469 877645875 773854417 586837069 292038140 934175633 798326224 598832680 141508275 189000111 545156597 207255284 283132452 433284729 24207389 520447233 325815277 478562784 642567968 423416303 289781651 695362401 768926588 997652744 405381889 677221053 47634466 1047967956 912189145 851510770 126824868 661935310 428535765 858836816 218567010 672949274 133493693 509033039 366204282 791703975 570111689 451825768 1072100192 425586091 420316214 398264634 697986391 379665322 364829575 821486902 249704580 606758029 167626984 1016191126 838866449 49791845 2059805 1030082999 104180621 47232009 798466464 402053084 316979443 751059498 807005824 200078253 494720705 281217509 731694409 914716182 572758481 15593390 576728506 45987871 668847560 303476428 852402126 554132232 733606962 1049731948 960789788 938805552 568472975 889938577 222890530 1013142807 514168344 813297451 648047300 599712727 228130615 89484943 355251345 659534211 476468851 775312389 685674521 600678064 730845746 900313002 73930204 1027861926 648474490 16363379 455471735 704453468 1017103545 742671827 469373955 644084977 158744137 1010520861 995552553 687283076 707796943 396810381 947245872 49491784 968402960 183405255 29780482 910091986 365832745 27764133 192320203 495664913 662420947 165072514 805488011 149542057 422256523 444742697 544355888 348348927 980797311 228483522 888085369 231900530 411780996 995863244 864568080 1035941217 517727010 263559980 992238097 644343191 331355308 119028828 121759806 738359036 933698391 487192630 584006451 981321359 882018740 734625130 879360715 998416736 44713116 657862899 146851818 454563570 874560920 169907966 115539339 647438591 12391705 815309978 793385107 720803267 711315997 30631408 930494098 491256036 1071594580 607544937 435168922 399446410 183727410 655948287 225850510 35901696 456021103 360075890 350247881 864790752 111576540 494147843 775129278 804548917 913567418 1031012329 312920612 960187460 234145814 1044510721 1073205614 645928470 715106087 1046374811 1036444092 888554257 92537980 984269163 888411077 739797596 563153486 30143737 167097380 986841130 483740904 733611265 516218422 396910351 181187099 675542642 598339334 598294576 901305201 461605785 637807959 735821856 792771102 531670439 509446528 740577856 555086469 14424956 506245740 667312739 566650004 820467123 764615079 372557375 948948943 417254880 775137395 310541586 333799586 727615084 547044634 236929334 535836616 572788487 425374687 836127915 174624011 161090274 60591564 494406151 488200548 132909564 162956813 100941598 542921879 206630693 1010913718 1015282805 163634056 255732468 764190540 960049276 88207945 989615598 758752383 382346932 742868362 337235043 785308592 825909900 576351082 763406762 632396837 663721987 1009668888 317964367 340720057 355824491 52627943 613798276 301511365 639615631 972067967 772560041 620347767 510679433 179537770 447089613 897767771 608054268 837901853 847153350 35747279 1070772389 341505785 630135983 324639931 787390114 203698086 145582611 3696762 908221973 55635420 616019358 344894672 840828226 907633483 407244002 680783991 663582764 60430244 1013221835 276531913 66966967 236871761 723482888 625818550 488706155 475741971 251600205 645399343 874371493 868918817 518101798 17599480 20621049 300819889 625701030 118353898 162496384 552546793 507374266 443097464 322653235 449166661 450463393 569083113 655146377 204649382 391085386 865275813 803836898 1026516363 740844601 1006156819 207164084 258170438 224603803 668139249 276122702 109861383 534934307 1060541652 106534843 970087625 651772054 1069428410 383380409 482986052 843522065 451684997 1040993870 977740912 932655921 354989631 390449528 365056901 764970841 969861718 388281534 423358533 133857071 344277293 1035070325 181590580 1049402308 743070565 380603022 700179417 829384933 744267382 490403040 723577533 974798825 836592964 951131867 75138565 919712206 296225813 476711633 351883827 574789037 756702902 963555757 1006067333 581266871 884845237 576543165 695118871 135480293 395120857 892540132 659427066 289095701 61593734 629297999 544958651 992756680 640025937 880239762 9406309 715358615 1049012023 958002747 1038385254 1001654974 818367659 278403 756922406 231574765 45364716 72575909 504465877 513156114 61133921 202285836 46067494 518249488 203607277 131706245 773273119 185608642 620468961 521851783 198263396 166207990 482482612 21789461 480353389 294912812 580512579 523512634 484461201 246883077 425495050 49962912 1025312025 639279805 74720906 381546253 594442688 1042233901 611519786 706739948 840509060 983721575 106381295 697390128 312106414 232357561 352559147 328933347 707085443 1052034047 530871193 940850475 853681949 741383906 400183267 84512726 1010045702 722004320 443673625 108314447 683883892 861784241 854922076 243137099 742215576 508306193 514611122 549837733 867885268 189179920 885372516 621368514 59192063 1005259776 580911665 597269530 171064793 793476355 732443177 38973320 493144553 413786766 443317873 31637198 838501816 489311370 154189209 262329023 336313769 1071145009 291960194 933056381 786778133 802744157 709452814 97251275 340044305 169865614 491226016 456405084 101336343 225706449 142386042 94303634 318459426 781147382 155773610 751654751 988024159 522009214 895843156 363116952 820049142 174340794 645662577 12005042 1029755024 400467911 919273094 436818609 213639915 241512372 134001237 466044478 643401172 388431795 95898519 985929102 861656241 486816651 198857034 587703879 208611429 1065481423 875083829 750299717 88402329 709731826 913433705 546235574 655962372 85683904 82610999 35371507 85936940 1918240 756175141 763653761 395891767 360996743 669133197 538161758 879041705 852251466 278962786 784110254 690129544 262816212 121642378 766035002 1062316841 316014888 240997242 47024068 907553845 673312983 913267623 35059266 315241136 1049269027 791764279 45065256 244877463 383208439 597362546 846002622 1039019756 134873216 519361376 126763192 755538370 283216987 315717249 557435309 1069065943 602851511 666675550 486968035 924462488 808580778 470933606 875176817 108732423 32329235 304907484 904724559 385365519 619114341 104570607 352493073 191723222 785235791 18679357 861736751 827327425 689107430 520047847 705411432 946135580 173205108 973385995 591167359 764008952 719982179 57847913 136480297 90019340 721007572 577078539 428887572 1071816008 857756012 333474627 333092482 741321028 316581626 44956292 115203283 583329570 464321218 998881244 491489863 730409974 797486694 410408891 773563596 383931049 680641897 818791903 209069559 589843673 723847653 422595793 157187740 359932759 282887082 683237010 774526319 568771760 167397105 765098587 654093046 67724421 521340185 414052838 728740026 843004694 226456134 844009498 699242155 667342153 897256162 1058769581 255767532 290866739 816068914 257328105 949521478 852003873 782578065 942998651 345378856 98100022 702996305 697466090 653795435 548792983 952344199 60113744 573849734 745120878 478782196 1065659471 225817097 1014721528 660506862 486266392 631395938 845743272 839709108 138552050 1002110128 858177200 182533963 136689642 3644893 510289139 74706365 347515681 306244020 733664411 920144322 845393198 335477869 624242458 947452154 32981330 452365639 904945130 984518720 807722692 412426490 1028439319 413579761 16116985 17049447 484256451 306457412 553327394 986013223 1046936617 329413080 939140571 640485656 997425751 405133900 1013827106 24608999 974758470 716881904 577265281 791754159 371692314 780314211 730636006 378759766 497745034 503731977 925931044 469818892 8384264 554867340 332385131 728115648 786539752 1045304052 407998468 726054837 627505513 1024981588 426157555 785086602 999055497 948995536 611260993 722284776 801253351 106673613 582120102 904340088 377971062 818260190 82987119 138126526 369255039 1029454968 831701571 8724456 861106413 721351806 918506626 395374245 13756250 817271143 494015843 1064084691 575468649 1015545508 670471786 397474078 155786043 8677548 11316112 750399245 930277696 483192696 764614776 365323273 676971669 1011445012 956931731 91586014 153414963 175528667 878367890 1059073664 118814761 1003625894 19592911 364969666 235927771 431990221 733076684 522153207 830617978 560592782 81117845 815447316 624348234 912249748 648712461 251391817 618493643 792317809 903130698 683267127 360204285 601350875 870408078 463579325 294151119 604526996 189990544 1033608145 876804143 99290031 335007875 514139785 786837417 938996142 735148391 355384411 885229749 347098175 472790887 331515285 504087013 477475636 519189655 222972840 614310715 208530095 1051824902 636579265 1000802056 530549978 1068925462 331059057 415280843 82639646 911080143 720847018 593175148 269030395 838069863 117859818 946143074 394939723 519164501 226029609 1069543208 361959122 427850005 1005552376 28182556 319231548 599783357 511064386 754864846 773539932 783651085 248508167 636778280 260392085 893569830 101950576 380109237 834185296 533397144 274086430 292408787 1018467670 272918160 668969285 775603342 624694497 164714997 835458860 290170846 29431830 631251885 289093131 79204736 209698869 402091511 898083683 763176645 18359933 1024188262 1067411877 796770955 881823822 517888200 698269496 641925313 72406487 206879408 230226205 739187961 924813139 12015559 738136717 797238659 619521494 850005522 401369583 738382412 441905788 985721387 89052617 778561843 861558364 967533326 914278973 405897226 1049747866 582703897 382602932 576236265 286614779 760746389 92057137 488555918 887080837 930868557 451717514 6043446 629597944 935643019 565523136 937363957 805825332 809816105 381523427 372005447 797796276 86841848 488613538 317355716 756191171 446443898 14376111 621204415 861254280 232849009 162334564 907116123 560784514 883701363 381171663 1052757569 1002630235 1067685182 691004135 522517457 943793472 546825550 862361941 98236604 349906659 745757571 222617905 582738625 942939335 916198631 610012989 613877801 824220832 555715542 407809118 227581658 559892329 62621337 941180513 543336192 812250649 129949054 1020145437 30469270 298164912 303126739 595638039 1031831448 919324206 1021786281 963578605 1017393653 479324164 40353661 344553416 29005034 458547024 365662691 301813433 16759159 198363278 213360648 881056863 871391651 427041099 24748681 807084366 90630157 135795550 93226572 932235031 856492068 580552731 643987406 238504742 450384911 727876151 1071484385 139555591 953959228 99134704 843735281 185863455 286200412 768762566 1017517361 841493240 203630679 781212962 644262860 865303623 901073368 568709902 454204680 323939282 864788924 49234025 279254306 157618624 147689353 458478544 629932933 785024399 1060205532 1025496803 887435255 847863931 586586172 49204635 545029362 740900149 98070248 1071819488 469945201 211485996 1044371017 591088379 192750575 805185019 608970591 783076559 546798293 6386162 538444837 639756453 254356373 1022438344 848298178 626087909 353757471 653557204 235907185 105049028 653784242 235105647 1040719080 728947941 1016242278 507447588 638171672 112490118 313333286 262409269 444407656 22155629 204401618 908361857 854158901 449250427 724998866 469125395 838970725 1042505268 284835284 126044189 429513544 785940961 754090756 753198174 389984209 423285057 1067785979 423915336 928438076 33560009 298476649 924409027 997853329 297765921 499268450 763854681 895166725 246082675 416018441 493242439 116327479 965676323 628133140 503008750 742412847 278060530 759347018 757079312 491384005 158057003 354749712 935107661 540012854 214841218 292489538 346128599 24762027 917582659 1073563554 16115433 1021376221 196015305 399866570 159617020 984035078 574212754 4073362 1028574858 283753869 1033612333 454362040 537314838 283908866 546043259 631397436 639196196 481579332 973796556 627396992 889498060 526369429 991279758 346252369 662259660 778121088 918882813 862604015 235565253 537134311 917557654 486520211 694393966 532996053 165633966 449515800 999747667 222197364 199293968 706129838 422022391 319624321 750195563 406717946 502072568 548623369 543702326 413215378 669488302 849988638 932033291 562776813 217747797 1066522582 407082582 750449121 744459863 569515144 690837566 894817527 548817579 33973880 307701963 846758171 952120078 953939965 786625603 256896077 744190230 397067440 575771355 255979540 622897519 528777601 290896741 459140996 77804374 1060082718 776454127 311215548 772496272 23517849 298069025 548233255 232637677 17834506 161589409 935160009 603104176 920310960 940004446 591133887 827817789 668838397 943490493 333015617 209187933 395409150 961561851 808592164 767492086 225913298 716026415 38072954 279394548 665213908 193365258 163026668 730967880 535039344 501789499 452296030 939718834 96169442 263959586 468809646 967012543 440351999 348405466 735930624 262222349 466131440 276386189 311101478 943903150 293262783 852063600 1026131070 1027289877 599994862 572701949 631893217 204294135 183221929 366114924 828244366 741246136 866418177 621415194 1033660110 382088702 950585524 1055750002 907666905 126158355 105291879 361933954 519442886 782066242 203759089 281712510 734721526 240790003 668803277 199728480 993738450 782034596 1036876728 73297005 33582542 556430177 900604851 166164427 3676690 337437775 858595700 219292828 323137445 681619985 877668531 131354372 444509569 725039454 1070940949 442242139 661067080 926903846 1017435321 254385360 794776615 562725177 623462642 906381720 725929951 439426307 836870076 827923733 513162753 184247449 528705493 227827882 655673357 1041596640 6733665 735357393 879025517 733670775 218770069 812547600 329174897 1028883169 779203626 254292342 376495311 371927363 92262414 1049647503 332493473 591494187 1006285532 822990725 778866518 530747559 800364452 460742554 1004513932 781785706 720580878 174456000 900054786 716958497 131800867 732570997 589635570 900589909 569315474 381559854 117979338 53392054 568810746 401262767 942944593 464673611 517632882 146538054 109709989 211479238 664504069 415361458 972253788 695581517 941520643 961943878 811072261 585057463 812157489 880529532 36434799 905501121 549349027 1069795530 932768514 302698694 163883325 149598201 874063555 908893320 1001028391 902525329 607731884 931446184 1010832937 908488138 51208526 324448010 431722400 4703205 238867296 289051664 931712675 599914729 649974242 232555793 3338321 190034534 677813309 347918692 687178214 948382076 88304861 858305326 237768292 952518380 379416894 74353457 85066480 623098858 807043658 487292214 516442390 781785761 377318424 822354715 151531450 12984270 757212977 424800192 930233004 395862221 274369917 623930925 1022311278 919022875 810431543 53240712 714511280 199252181 685514844 959506787 881295401 434005510 679256167 467324882 80999622 799600167 40504860 334209820 387659584 616167001 898461641 606442320 594940699 386354673 378192047 31859021 337920814 961733897 747831939 30343966 902543160 1002445252 496711988 389436925 990068057 579405311 85473731 503914054 811012234 466073373 551711629 214875152 1020601279 642790672 280548882 394161150 240531605 838692912 533024055 374787068 593562453 361340717 242619404 1000320926 445925546 744344931 799344 963042573 988775540 12000189 96569974 1020070669 810078551 81748555 379148144 685809204 945646176 726755119 675027835 393533825 178945940 1062631240 482553727 552537689 805125946 962079101 566023306 632531329 111145326 966570548 994345671 91205820 131774016 366206058 201968896 422934142 74772865 533819191 20808697 777909639 1015985634 236122440 274051414 809617680 599551869 544630735 29698129 740737471 616726437 197581809 796653093 660683454 628541159 936171565 40636191 267494201 992068565 1028257536 999253081 586282565 119326899 223783632 216017158 1005329232 718709929 228399776 65446521 869081760 699594152 347506078 915872056 707761009 971707618 211539213 314851436 205675924 249057095 713206042 1047417112 196479373 776349444 442231470 241327009 647593704 55419017 894613423 224357074 12734029 247016804 1068677093 72788703 787741018 1029409631 1028729011 964810444 849490351 219265898 924184533 930932340 1031236004 260318662 953726424 110776604 668568200 869820893 486614069 373924765 905609944 309613229 947529202 908536905 669453257 103176903 834077378 173040898 363514486 394672046 63271610 518278138 375412802 924331940 313053602 157900157 365367401 730079697 210894552 61516684 726251344 353478784 273811530 136597798 995042753 195110377 19566655 723207634 73911012 878815531 639316846 1058698926 971386006 341207833 735348472 1025238580 304945656 737566594 784998964 139125658 45178629 492822994 559372495 1059862692 901590545 950120868 920533416 252232926 484875916 209636903 475803313 889734783 605448223 408558094 257551468 769921214 986990942 499085430 437849078 176945103 17171514 164935985 237102709 335292118 775828527 433924467 979303464 489270380 395113244 762173977 765217001 906112381 229898196 70139761 850679192 557245296 174445782 320125722 893440014 127794086 737114753 20118495 980564144 280781878 312885684 743458583 1071697492 560246458 36161532 698248248 41418415 335743355 715103575 759085517 133436666 400782155 408285953 813869561 1018116257 905085291 963466848 502692705 993908896 921551037 257131734 415621974 989429390 167676654 114003640 639887434 293845108 532283530 110790579 17614082 485463825 667419247 542253005 418365898 1061788250 566722526 979007244 548178193 917495847 48162891 778552340 294874622 696304516 107880801 278555486 729317669 1010119509 881371087 836632191 382088008 821964546 634974102 37430943 642202798 596733917 472464036 95900022 675196293 644627421 994789886 904858277 921797387 563616924 631700569 991462059 57432154 81319188 279013861 27778096 619422207 1061591518 15066422 707773100 725560070 484354959 301709983 600700062 885152918 931366189 884628865 758993623 189324389 41866177 230970063 263497112 563142455 273973537 331478616 213262128 301053868 731458734 98003550 871520362 1072624716 308891292 591879251 774898436 285017430 279187869 852182666 393457606 25166578 746738604 702821676 76216629 1068888681 310703824 66209613 746685844 774392999 766288332 392084352 1060153628 169032801 632556968 1039024640 587942229 165012403 1030663157 4485238 303222787 734025087 682785660 118356099 881477291 759814954 748914954 1056065961 73965315 843304883 778092059 753184245 755870565 921938648 148864713 680856283 1003959721 165568698 981135395 1033000618 229142843 212838726 628668130 296758185 1018410016 334453578 154938397 83093473 292682119 281368161 478681163 782878 160480196 161115754 979164996 783465079 606531707 258411865 954857956 65466044 136329634 563427510 909933636 734665593 726684224 236581554 708570791 895532741 102802606 794203284 567475411 349631788 476956347 383339809 837145449 854259891 1034241554 937443388 169305278 848922423 474189952 24760319 865171688 410489034 329140487 854491491 935238037 503451794 369664306 782345762 1001606112 684411473 805041328 772024391 681038331 439849166 769174040 503864732 973386207 359652809 473331996 988529759 632592523 1058128413 488867583 725415145 963160849 589617046 1036521670 1010192723 387114616 254461994 380809731 658130186 904830243 91111565 610774282 125080886 465455148 401450319 570692650 747719014 342260910 316719847 560128726 734581498 395169445 555462592 246675206 240947176 562262990 1038214 662994626 156291986 656274190 943759584 284676448 129307990 414574464 417844700 577389926 702933004 237742618 89871354 804126363 752378800 648302209 417459118 366096796 61404438 1009258305 858626477 49104808 178474388 680469130 13622191 446398709 411307117 4047258 852326606 585051806 1019075386 191123102 854550508 98576046 506236491 126847160 530152366 175359638 675156794 545767499 713550552 475759845 115662694 1001709268 710873919 235271396 351794818 71670491 783115636 966490834 554656109 527837146 72361943 96600435 471490140 420704657 713110584 247347648 91160966 435314756 297559087 418580652 1007571632 545622440 306530335 916475003 118431581 935093437 461611123 337887306 711293471 209339368 590171921 270136040 56184964 660741290 826843333 777188933 766345381 376420323 979620817 880095343 765542644 924219331 404062441 161771433 556059189 439770167 548982026 122416452 323406916 559487878 121839746 1072380705 548941617 109037901 559418460 574324235 120869554 795994489 104735173 162745230 70935424 804148042 421655518 27625970 470963776 762973417 1071865003 734617009 876996565 503113429 717536256 701127706 553923052 1060794701 654335944 145392242 151909003 584793987 692448133 274370812 464337541 679216670 891206687 391126219 583570474 406741713 238261215 795590419 20106510 114166185 959640514 799064512 781747765 898932919 968078120 763176408 683153825 409796762 725062139 987037558 5378775 424811834 241076915 385002082 440480772 973782226 779531941 745007293 1064655769 216247350 299885479 545010871 959157907 660932572 297457205 442419932 255224114 194455913 952769315 403295952 49509807 146567838 702726860 34437403 1051581098 969379193 130971586 849912092 1054669388 861617896 571822722 206361108 89048896 956146792 889221688 779365967 64083478 328245986 804658411 164771323 689248421 120643733 169443886 875099932 1033332421 930997708 254435654 698291676 226694008 95722198 966605016 417152286 724017861 619561669 617185379 817866280 409112523 187102019 591511873 731496054 595478145 660150529 349333790 140264780 347368953 608044982 717468903 12079869 444752466 879427679 841601236 265573822 754163219 644126022 494055347 196653015 164270968 399911762 58432366 802876017 101467289 905145757 489231763 1046134201 757965088 290134407 572197329 215387525 1032456880 93449407 728192551 603964047 872353485 45504827 659639603 417764146 543994104 121378696 410880087 869538817 652433844 677602687 470864236 367806318 782914922 725546699 567519036 548949098 197805787 735211989 838503102 176679168 462374907 1058998314 164277609 13530600 105863359 886939743 386791003 84799801 413822881 39656354 141194199 378352122 578414629 356237605 224644082 375507143 765471242 843436039 305932551 313592109 669301622 761008262 678156508 274655843 1006760186 761645707 466719575 1000473752 460026993 857711953 86840227 794938664 528476874 273586657 998114675 68704720 477532352 256149690 35509365 585458481 826615680 1000192592 68970180 182232326 510250758 170128119 462514244 792689804 356245243 88968089 947148833 1001783444 685312470 520830878 220330233 844621825 776669744 360578609 751528906 481719270 28712688 1009287559 307953116 336465889 761494493 1027777793 428673653 211114073 346839103 916811632 1058862542 687947205 996929763 108859396 464228841 1064067013 338934240 580510373 325937563 133035565 157410759 827097288 358049960 376865874 300411543 441161367 682399316 64319548 584484386 260587537 647212631 487358230 652684143 760911974 656339081 772470956 359944771 212373447 679274701 646069388 1069138733 887196823 512116608 672158392 993336100 670768814 200668776 496269224 233382407 778280749 404609317 995663351 1035965302 907362133 94348489 1062588852 564377256 970041718 933969396 773313265 238285489 655878222 218252507 440817462 563083496 451828519 558219429 471720865 464939314 242327147 42859679 771877360 845390809 1067043573 922381121 476526273 13691043 159468010 133095631 239319232 34398317 610863480 581396103 179039836 370560146 708804007 144601514 214753539 904206783 748749673 244591791 780870798 666780510 1045032605 888852700 385164899 391371978 217946486 138430149 768917814 222519131 30447522 151801933 698025949 925478937 798732251 46153905 766668002 85327356 969650431 83069909 187413633 793104349 742412116 117213170 997325677 550768710 866907868 66688593 158584917 568626752 419775257 797181436 647298810 479885085 968466788 378939626 316910025 578535373 684702942 52168660 435964570 890131976 22674243 280166036 957900763 351213739 612578159 273241984 697261921 801964635 743410062 452302203 455634744 302484331 928860621 249196938 199329256 646393090 153815592 880525332 369920694 659864204 800361125 929451305 769487512 139590261 60077498 598927397 723908114 564398786 467499826 469878062 772214019 566574314 699072478 863787874 384496680 946533809 399646792 356887219 640294239 277837850 1024175065 92536686 956874013 917627953 463511931 385720233 1041145603 189535388 903481126 268044936 1050813562 1069845341 254686345 778940706 624775958 596537955 711545399 557719923 110997599 582521422 971959093 674686422 479027513 415891171 58295863 406462095 740164229 530431661 423042051 45763246 513774356 843592586 464860277 614589404 479724806 139570178 623926171 686521512 1017349430 592402899 634714282 351962513 866961434 487011749 333289598 842590127 1049165686 670110764 733100031 537939828 397830103 583568823 277430484 43329969 427282618 406084948 190148803 920933259 537049297 454989839 364646340 392312333 1790530 999028134 715367313 261202868 565785166 94990916 991613792 710376433 980400783 163687781 1068954675 792548056 901674288 88391385 739528868 864653487 235668598 430573717 717640680 547195427 573026812 116574816 341597742 337590954 82904170 1005113790 509681087 41562146 899746458 143645395 24995092 881300231 628157496 48158156 970605396 723764113 723217054 635869604 825958104 213828887 134120125 1070095352 639385292 85813518 826560824 422864206 660673770 944548027 1034662603 851334698 876310701 505127274 138234685 30206548 74038097 70961198 321140306 815592149 162791283 219443594 717588505 588226391 529149620 603741160 427399198 636335587 1000220933 299513531 1009874141 950024465 1027162587 213534763 484310662 661340015 950190038 123397011 619498685 213689953 962246307 543662773 243674648 831438740 578545220 62332463 593138559 387303744 494472632 955631459 406921023 452146497 874232344 889993750 909130857 146225916 924219690 614110758 148269626 53448592 637938526 825131470 498178209 813818453 373318199 896997168 41444296 756204833 427234697 865892237 440514369 962487980 914177796 703475815 257112437 125743746 77965656 1038094572 593086706 316247488 171988073 1037074647 272920719 180231893 858168999 586347267 749279908 354310755 11650295 708518738 581052293 580344928 514897920 542479216 380361484 1036371330 278151857 574710282 872355070 156121519 718807183 736360801 518053382 805884347 450155686 713984597 922421124 224870952 498367072 137630597 1029619277 365450182 366873591 87351054 849784215 359252705 801404187 430801520 923800449 557597144 695136482 922953680 958854846 516262208 461848563 998708285 934063514 128170139 1018852777 398624736 291780875 607737572 320181958 809442255 678043608 494059628 1040773507 524578192 401722965 653568949 459390664 877516231 976730333 1062179285 269441222 1069141479 746979537 676817100 823626180 833674082 190621088 803762706 251312683 577328948 156675129 292470205 217165014 726322740 85701497 128876641 873767277 376652899 866260944 164855998 626191295 140115310 748823737 115601994 631963984 579871553 263142294 189409728 85470709 511549768 61527997 681673065 821429222 45367846 192372441 598725306 690394029 1042749825 43995044 682147108 182382939 571785350 591714409 504474842 565533808 104155069 348887352 169141742 746066947 500431971 983801737 693813558 271989665 569946465 352428526 38367766 273072398 801453056 518394577 1064362667 841901982 859527408 413543531 616451673 770906233 1044865637 375480637 192455918 409757032 330625568 139418484 311610528 698829084 289921828 783955804 1011565733 23417899 449647564 828545169 166398531 332958395 883546525 359734189 927831240 396730366 1023726567 638678986 404179857 505020199 567524380 323258937 915171956 658371213 999122202 27465600 866474259 403005850 766528241 638307071 650015464 51590877 937377543 312466492 138881260 370569991 607875811 828185108 804046560 135373638 495157756 1004340616 870645048 996706461 1051938286 166990313 10836942 1017910034 703894729 789131810 751853888 653380416 602869301 646596455 649861607 58388063 398678337 621298398 863224829 956361617 987602427 854864251 423832471 184262372 25293175 66479460 1073731122 108580815 278930645 565217261 797177183 466214006 631069306 770775297 71032369 899896237 838161250 789857052 1064814014 530413845 325121601 576427063 963498267 1068630874 845239140 954395908 585003750 809917835 905578225 994442963 378934689 494534287 779847479 424382341 658879587 1014063369 293159698 314996638 327004795 463768869 869532211 751814792 579913204 846833619 45069982 259007532 303194867 994805443 1067953687 674661990 299833354 473295697 126080504 330391292 1014450067 1005909631 487514377 816093224 245021676 889875989 543659403 210852953 1035149420 644624243 473833622 980971680 1033658002 829588339 403999509 404738172 53282893 789560928 164946794 310496726 319188413 546666811 799511307 239813965 375697597 392398067 479512391 451853224 341183400 991367166 186844468 711491322 316275113 335434041 374390694 292942353 286769563 943889122 832640396 311190493 742884928 948997394 128504129 917590647 164323002 48682604 173544145 1069744478 116715580 201968995 40650232 882052005 657608160 978474675 82721631 960674797 481322318 590261146 61816931 271766603 591940830 63199525 569772771 682178257 973828078 41983928 51573097 696308804 1027610850 335649279 936225786 206312077 1046958434 707673791 366716547 111020730 525596709 519004549 616601398 1027904080 780614790 41912728 912150124 938602606 332968141 413195988 791196401 357165419 700807074 365776715 988834245 360054779 376015164 851702731 42335416 619065579 921657772 815157557 450744759 141407430 703798740 454118591 1003399009 34967189 312541950 983473132 1071856563 356636319 584703829 895903593 701656747 1032794672 92059212 742757691 153044886 791994275 381220156 182539870 70960753 418534262 1019036729 904818478 923390248 684518991 379889773 893287375 528690414 1054138693 840895470 63258965 443561335 558631097 885383590 640898978 612924381 1065251948 941540967 984811633 341334308 1050085894 771940706 414404502 203888210 1048642809 903057345 551088792 902399076 787196504 33676997 1049412827 469724982 364890013 467950319 178078674 1009679174 415432006 443136023 580825481 23423091 244634250 824595975 378715849 784898259 307172673 863223870 700557631 973053201 542197161 516048140 164109711 1040053817 892473452 572356983 658929160 496873595 822455914 545640143 346734709 990481612 186024506 872036882 318174006 380493637 987577117 1031680585 559008796 716575617 63243235 63119839 288705214 60765399 7372234 392259284 697780847 534496349 838740819 849318940 409653427 637309406 753519349 791332329 794904668 776294033 269629749 82285730 527069066 261489611 757004179 401533023 384782827 969803280 198310978 1037003673 1031661413 291701023 748690200 385208183 96332725 577376855 230240371 493642508 781783818 927887371 884594662 174846177 247435253 718722748 18602324 346088166 318474894 554819623 784982483 219651129 770399443 1015473921 163743184 788335304 935207233 202656563 722361188 183241120 595210286 167164268 917793425 608113463 856971890 727217325 1022400736 383304643 706874352 521108255 314198630 1067798411 434083950 89239631 227421656 232929284 265928880 576734426 824677828 1014773111 809863033 665838247 311620557 226954498 164215332 693547553 949524877 542612654 773244855 901067241 598899858 60832701 762939007 664459730 948951775 199052056 109249729 485853302 146453708 454117485 659919445 876422921 1042651993 247850131 84104886 730806303 1055110108 242660028 944523966 227912046 613178546 578831467 787695837 217091654 285478141 812278220 578440091 480393845 96827279 245302036 681265063 713261115 130092992 40898921 841201304 837226456 170796236 567380608 802420011 48453043 882574670 342678194 287845507 994260436 1026398705 1049364774 718699177 79278300 274583115 469632333 837688457 1029543143 829929478 895079335 452926361 819473921 116638696 506450616 198201252 420165866 579295437 596193028 824547424 642038205 426416142 441028826 551931890 553621634 942391488 774965641 848451124 643215165 440883505 824684974 181846807 678194676 524485224 764163513 868620001 777498203 188182321 65279854 596430 332621841 885911269 709461257 518508178 622925092 771829807 112678994 1059053084 778578368 611088185 599584698 1035010489 577404147 451511909 519236713 755731495 555590524 841022865 536509720 1048052818 246958974 600969002 16006745 381676519 635505575 499299897 352742209 391198292 607290623 412805963 859960449 699918777 679610329 387797465 1043163168 1073511710 894601111 794559310 679211641 689021559 366965240 486881857 207933352 1043775863 881624718 439705585 918233692 672142641 170959786 106811091 954842771 538998192 695214460 620127433 283675027 260269647 986485204 28577990 212034101 88120369 572184022 673955804 82902259 908320194 993371986 633303419 527114811 1066130967 715904172 390850754 999938318 324578349 908475277 40432508 932005670 240016723 963717548 137785374 673654859 997778304 452796557 23871195 775129044 235795082 1038401255 707319089 605872989 973940896 428634857 325407837 132226256 436597995 226970613 800963614 376369647 94459975 617671320 906514296 866501974 60469132 359776769 161896960 209075291 832904117 658530317 345950526 415305726 614369419 1070420971 108946737 292793055 932151639 180315428 1071095127 270689985 145866550 393423225 978913662 133138145 20013136 86756550 732823014 631002621 93093003 884286500 569992649 518295076 764177227 20168153 528580147 862181250 603087798 306687067 1056270706 404732131 675010985 506296354 46332787 405200891 107108209 398017282 190405501 1006049858 627346183 609183177 612309425 462458493 672956172 507666045 750389512 516732786 28758414 936069138 66872380 880114500 715748808 514757594 12159550 24041013 892661801 710756808 716123763 213976278 729709883 547046803 227307654 911157238 455662073 656562812 818484843 855290498 535734439 581152563 165827699 239339362 422162855 247213449 574224320 358625163 789880506 40187658 588199642 524057039 573321790 932365872 329239279 590183758 831113036 339882423 371870001 527577539 422828344 244608986 583784079 376119451 564912036 728830250 831912468 527335566 1022419272 1065204771 631548105 708571888 429847173 256237405 472940768 962915390 558325096 300573724 830834749 657619207 708997125 184182410 973329927 723225532 766249479 158751246 413958445 387650681 11675498 943093545 964724524 739811966 689367173 219015487 200661015 904760743 482080839 310985848 847926932 605440862 599621902 732739130 318007299 486931923 824351022 859567324 521890369 312934695 761311917 516719760 955445699 309112115 868391950 197004247 883979992 162310431 443269726 373724100 1010898655 321742219 282867278 606227094 680345153 524752869 1031334284 411288816 806122408 554897428 886434772 979754351 228950697 850132515 730053262 817436898 57463968 451168180 32151769 633937242 996905054 548713126 312829489 141601858 356356554 388565862 523725826 1033550028 244931021 31656406 834007777 1029692044 236717814 463477474 863164675 38219127 537334077 871435068 237771878 500187945 239280275 198416451 927627308 148702748 735939030 799122874 764390740 524349481 1061741910 863803323 571072282 264821268 1046017196 510814895 953945484 942871577 798610555 203927582 418561484 381523888 291510984 552353209 813525702 663179925 562864959 708732884 628305029 91791599 78883988 313510321 7944811 837089448 367581240 23249254 234251459 161242419 368930273 954281130 887384096 661495203 205725040 56742828 797645074 914224329 112613031 1042264821 626432953 299337417 759898664 606084243 828863142 555051114 410577064 546461526 958192394 578171129 610313642 397452429 1071380747 313261415 35524302 596048122 882037632 180067808 533292912 391308240 148920354 787758912 168637296 842641818 467580563 1025108136 873624707 682162256 94387151 477099025 316157455 507212767 728836016 299129280 998249371 3469598 155336259 13980563 372665933 302029852 864968713 886751461 308187095 561028549 1013917636 807903747 359001289 541118245 342192080 359334719 939217547 408502321 57276266 772022220 375137018 1003787595 270644728 703259123 679975620 1062770407 976110504 435290671 595584775 198642763 840917177 724415463 621788859 225417361 676872013 939657415 208709789 1028443650 841016384 224065534 932814487 1065066422 11987574 468348524 894337438 158583383 297012259 753764161 1056109203 70965380 758614438 871278479 1053557145 505949630 427390190 712433941 82023003 441237328 401407296 915771378 327727081 489717064 1072218052 69396335 877718592 41525810 240894997 265524052 809447384 394112980 270301410 394451927 1005901373 601221125 195361622 981168047 604478891 278140588 979681480 920951754 414197522 566317877 847343049 742046835 176918981 517406122 290145086 556556260 292853185 318766679 578871083 337950478 151732004 16596844 750571704 128449768 1053984775 833557674 364478239 152351615 1013380226 83343633 49239649 682304294 584634893 854922515 810586486 41253384 779689244 637502734 656219672 397522599 741391229 1036119805 413341499 720602205 614032947 720604944 976287246 694605175 374640759 624411415 109067680 757554484 990942710 167854654 1017233942 100106754 307975882 183509804 762311702 316424192 858564491 945423469 182074462 1041538622 1007737681 932057978 714667622 895851721 1062262787 1062197876 702759732 372200795 172225310 521669442 627745866 736032026 90689766 475096134 185053092 491925809 476780873 29667082 775973556 756758783 1029445293 916805584 998972487 4093075 530245073 1045582747 804946495 344297018 347793768 1040875579 1059577036 151164245 432818862 682228616 565524745 547715880 966155942 797072811 295616716 1026204414 744372634 779281161 526195617 209917219 22239500 494415136 1006287051 464145758 460808190 571450915 916087490 929440249 256589076 966099185 971906314 846476575 465318650 621156111 1052890545 566239812 981321133 464151989 1021893561 251278389 877895295 883346326 104936137 1035818407 135395071 57845529 23416166 288832789 952478272 169145358 16616150 293275530 29343389 989598337 90054968 653360402 757759084 1026328593 7807786 854922 158107786 422108646 134069021 778721308 136924499 563585722 882407834 919102659 313435699 1050670190 828487624 1069211400 540043009 997386866 115185506 588927388 1054160474 450423454 380841144 203778702 64587649 753453243 420686855 912361567 729793403 156196976 152306685 277240546 268967649 1023426472 475912203 737857191 639150926 91083678 612310844 759657744 1066731718 83179172 593505522 251469746 599744666 860254805 437875262 499522529 871983941 838448796 457729884 299630601 763050940 982449706 354911056 625034803 965437962 511337556 956581665 247043884 95857575 392240981 978058233 1007881194 384143517 478056749 127281 758794425 539223265 1008505686 570238918 607576699 700576931 759190126 272201576 952850456 427098530 452286823 87515386 410237771 994474896 934248547 622503045 890674009 835252075 877839107 20301197 688580682 755270604 616760015 18613172 39586419 289318604 1055023636 980758291 261739156 351270312 132556087 397598105 880651786 617425710 991223337 304271474 1000309403 35323221 381001426 1000368280 180128470 273507638 368276784 131867391 887166576 363250007 624498054 511912292 988599307 10087899 245369399 751396526 111574329 816948483 725899944 792520555 421271435 309659165 532852976 752369872 955041900 617528665 829647529 535198109 523148673 705057459 642636404 547181054 3791107 115925675 963640194 569163754 227946365 658941666 993977724 158672196 593786503 295331000 396070298 721800724 30085170 677315471 614872707 710088643 452224361 251673971 590376031 793871382 1048047575 296269873 868032225 361357835 1002115781 786385080 64323924 258414122 763555464 513256272 488002629 869945783 511899347 214292375 466308752 226905338 489260378 233312567 512272096 412219563 616611237 988281289 729666988 995600806 199927986 576404523 915480477 364587872 1059249244 402413960 349745480 949410839 884556482 596317493 57551900 456041000 600884991 335527567 611096735 23111910 565898535 874557181 226686708 62564163 511000693 866687149 9746870 48681601 453521159 271996433 743346089 560844 271212838 129022653 886303819 870767533 461474204 854417775 862207766 166907543 333487268 836526763 111649835 115175254 231405151 704102036 824727225 936640202 533912578 792194129 1006059525 598006310 66394070 9067287 272719245 555849724 125916717 1021770551 100152841 101665486 283416906 979814398 203450588 165861509 894369579 371268990 243214108 559728821 410010773 711411268 78674741 397311378 39260438 532182161 650891420 359575204 642571909 217768800 746573720 436794140 682488926 340369582 980775140 715022838 938164415 219907184 463455705 803887359 61677572 995882559 188204136 243387276 963269632 123550817 970110702 663035844 632399140 431884690 192359910 635692497 89809980 699085135 452891609 176590638 757568260 178870661 104454360 562056639 773244679 434786376 500350326 902361832 360935469 665695206 754135323 858020794 361162534 1043458550 531950839 343852754 707073013 182776754 35982384 855610130 700504353 798923919 223329074 425115913 1007602131 662975997 160404119 1004223397 804373933 341514139 534025546 589603768 93625388 675924051 24486682 768789979 455412835 470316632 444168459 927183785 498006832 90595536 145561114 539582139 874608149 758071559 174919256 463676897 226723310 445832771 494076715 21805336 946671466 641344682 445677231 778839678 1024889362 45263970 15353550 167404789 814599890 995387620 534123486 384997190 675361281 1071125170 854939019 4099986 1019422023 290304905 933984544 332801411 74265671 966798583 253655551 410311890 123825486 909604503 216844375 694205978 548918268 515133063 628614251 211837103 688476716 954342362 160743736 609155367 80495730 807899904 893009711 255877463 1038498656 95701928 71507875 193680620 318410635 525437361 196312996 81421559 498874069 14033485 443463823 827320619 147525954 266396740 625066519 756136169 1050764449 611890930 745541071 1024150383 248177252 843492787 321583766 377074131 1013377620 755854809 206048699 904205004 706449466 7226948 913431138 1049479299 575220974 814467179 713678117 146421406 963944271 98641816 468160476 354812764 211683282 122553217 261223859 867203513 608616806 508940940 304193062 137203989 914799195 746768700 511655255 127057663 1021520709 256141636 1041048244 888279986 251046526 400591814 8527568 857892859 61421238 131630516 635837460 1009043774 622210714 24240492 738092180 493901734 987244222 715222706 691502873 416659768 1060964849 210923308 628425208 1054313196 755343968 66947128 447895263 847046146 17960892 113974365 998784632 906639302 925998700 782223789 6386155 588486579 94140508 237743335 571769794 756325552 525214247 30120517 853601384 15066666 189762032 747335393 41706000 383053167 803220127 633282832 887314112 786900744 912246561 983548108 215102107 221672992 882074728 407950249 531614170 927207260 155554538 586792387 32058641 119790548 35035148 636272279 444118879 987079348 662036935 172131096 76025082 398738014 232028477 1050269816 854047497 96059415 934055317 601320455 230275598 15195027 888844722 861845747 224323504 285095821 521343540 1007746086 562333089 966284610 60489915 755026903 482038631 176550532 558348605 393258403 98367433 112257038 145366378 289365203 1634912 360057601 319978087 925091975 227403935 1045968976 693030890 487010671 765121082 9876107 1060174457 461779290 1049830938 155330476 676387829 481331563 464161101 805569329 733021469 626030974 376131185 868679878 931182210 359578610 968349252 293090509 820761368 933737051 28843067 256981475 1035189959 1029042598 916291940 967366912 715029999 1006710526 362661548 437374391 73236330 374797411 845999550 322845526 835105378 35796256 730321178 847903533 128635824 219123549 554335050 854015861 349932067 404674221 70079238 515091233 69781502 64720125 560879069 528924175 50900782 341675610 810942159 870633159 14131497 542836514 342286114 219637383 166462607 601515983 151716589 813956276 492833545 18112778 616718246 159207710 116942246 1019313979 964671776 109453641 443751203 645037690 583629804 410970226 1034165703 38432359 1046102134 99488774 153142967 431221029 754297241 1015096084 98190039 135351265 109817474 242412073 962316944 945205699 383735486 398921135 22943582 70124330 1024716926 178214589 616046693 167432554 933185177 697032554 856633030 389925253 480538634 1070495294 763999991 128570434 880086259 521205310 812320964 825579438 924821320 547061954 774766717 486307165 878222123 478805480 27127691 225043936 371789614 482129940 924309778 650930089 616821610 266515462 925202412 510546941 1011212833 923184721 459120826 127276369 767101171 702546040 960252265 339795245 173510627 212681636 778283337 193605893 925085813 29626477 228225860 418134111 1026095481 711588750 925635662 223132629 1016677626 505852823 645004360 226006123 709487955 583894488 141509266 145723764 706869550 258781032 594415028 767573173 125974098 742069760 446013192 168249039 509750405 316200425 546032467 610073503 806075325 276131733 976401684 881935396 839765242 1039987311 225280713 818900486 299378718 48056794 92493961 441716380 259425603 493724217 39480055 780442265 76219453 319656494 910868425 776436805 840236626 165875379 685321435 749302383 334508810 260251491 932917351 503466783 260540502 267423772 22115478 323403799 166150703 499098445 447758567 876434402 871594094 404398294 782978668 796675118 399156708 199426236 504065261 401334572 491016743 824578062 436769513 985143624 580629551 699104300 488454351 720405102 212363416 328660273 849782839 338745784 909134449 609470956 749766246 269776017 443193198 928571928 645524187 702815988 112966910 855417790 606961162 846820590 837763965 631651830 75819485 663042031 487956731 154882274 1022602539 358323619 1009038356 872469248 604454260 695486337 499180600 217679284 28798182 156081501 967483102 263477331 660472363 547713967 32048038 835436399 247414966 732609747 688775835 295692220 820541142 595770631 241350547 627153826 987639102 418933188 81665797 991596932 396909474 120861252 603191893 831822970 32393771 1013933791 678076766 889387490 436642550 766122400 838902089 626638626 50002088 617266935 671163703 1050765072 487183357 279667792 591499889 791062648 931212273 260590255 737367141 285417669 440407591 363605047 433178003 551181802 918657978 385769243 77448915 870295976 51324009 303313846 209505351 1040437706 419356962 287643956 474945974 401368312 429673188 401578154 1025892906 270474408 42275912 440501779 674200060 287966248 273628145 150101358 735804423 221843950 345797576 918765220 148838776 287073513 971259287 358176996 674405854 491673056 578830511 267142993 660475596 330718931 618785107 464039934 480885164 790566215 867749446 999129919 139063975 962927561 506427781 159224396 240685872 1050008986 319025655 423763505 68012485 571488968 33553432 418032145 732446105 440557295 756578188 493585190 261177788 81309147 48255655 42821009 440724579 904628603 960400676 527804553 479633548 1053171325 43277819 85005254 35607273 2931741 1030283696 115366692 550219840 206909957 731571890 488578824 649413974 10786777 365169105 240642221 433913491 111399474 165923676 644228926 236037000 978395007 932106514 673029300 790749503 947601344 299817046 889247216 604269304 595045696 443626419 737312781 545690221 251916482 805396934 15708512 25687229 672953549 394297051 834732048 606766782 784949523 509458650 917701949 237687410 620858039 864461993 125434208 175032627 45433057 261053082 26506586 199233359 626260662 296874735 342424740 330072594 371439509 765559971 512796528 858637567 401029452 544537032 768840793 206853264 148803764 95895602 1013124607 288351545 913352387 268039194 398583550 194310564 381857445 964894206 684122704 878824978 366457908 301267307 1048056492 483914237 254506009 1027523168 719440207 2686021 821876813 878506718 189268801 485459110 790312423 994264521 576808954 817190048 288695234 627061600 973387016 87250686 716489387 928411492 977598329 991410738 1064343008 405028339 709780557 27744180 187630034 424829603 240122775 344259382 1024572411 1022841987 745714082 472585810 907709106 845550779 1054191705 417577226 385935078 27428624 951857440 57977190 214090431 930313987 28655516 351337187 485890074 283253788 338668636 648419845 577107892 488789455 168111301 14802400 906500484 739689683 656836495 635375546 505006296 231398098 133985610 123724589 998052723 762179459 121361543 487554925 522887366 324719432 973468319 583137936 753931146 37894516 153804444 317856976 123920948 170698200 24227011 325368209 442684257 869522834 761652759 923216152 777425198 413242515 305507651 24748474 1010839460 582850799 422669712 926842334 343811757 742922133 320929576 943694899 577526316 504812443 1020704942 517473247 517085010 998683254 652823101 297113811 834512749 918147055 944376986 785208927 1020127248 247065917 868551123 719393606 642806714 393624426 481657140 824853522 76430321 667828623 166039969 710135296 96986864 976529378 534895926 209920761 777140655 727947495 1013845385 272664255 874263274 322396033 580015772 33947124 384068999 22335539 420896886 681073084 735618149 500724641 4267035 564632064 705099878 743962581 543657636 223031523 1048225527 949529570 15800124 511647214 254442172 634853799 130070165 772411291 1067515314 235507853 692850661 665843299 392446334 44960012 920030261 776887638 584888725 823346969 392077149 526192110 890738493 1004200205 598517455 228752496 115939296 497480071 926916821 250915604 785915073 124872050 349826796 938917264 182143239 335381075 656179071 631061748 905889617 937544620 442889771 942831565 303844845 254648967 1073449148 1022405553 278574533 244374137 357952604 90795541 643663466 382245696 72507007 432868892 248838229 1067464737 817251698 248479892 14573981 146924059 267408733 246785142 85814583 23746399 885138897 609149765 434759238 215779530 694460702 588891590 307536294 215096310 617320560 186600655 706618294 126524348 303769972 276990897 589327445 167183605 120439063 634286003 197466928 835836024 789546527 271562684 255523858 387938976 986880522 639624002 787924362 589019654 418064596 348692103 94293786 793189540 9966004 550950955 594829624 46624089 733802783 336819512 265004944 898284133 608148922 881342542 784713258 662936575 809952223 584641354 1027999895 832739571 500998407 466614988 1052858266 525379697 196860518 82767008 321707298 773957230 692890859 541142920 688858990 320168879 815472148 61902242 579169881 416823753 907541422 735900386 684357372 337899570 797548505 780568457 1059726184 870739166 768172371 78273050 503572112 36585255 1012276480 104594732 345936547 329152148 615252341 281172394 567457596 199713738 879260695 990213552 32017583 1063017053 292252275 337280856 692077877 142563104 788559278 65897050 692017005 703114193 566944014 487095619 632677479 481882094 494786826 934288618 628314378 339488288 768072992 640372425 857695096 662153033 817163111 878009843 562808803 1033876151 984261920 1033515697 242544480 273138176 761841066 76111003 1007414061 182661905 334411723 850009220 136580734 380640072 317369034 913442547 1073228389 143363648 39286505 847347558 1004405312 946019813 10589287 447058892 623614808 656297324 838456287 831566625 39727647 100082594 169796015 400217512 618503584 310433896 922040539 792851309 145077944 248729812 957335490 172511207 688023687 769796410 526126068 57961079 393926238 581443821 916547391 952918529 657823866 900554732 1044424052 976874623 115967845 433956368 536778821 515409792 465968753 113837586 925983796 250459340 222479666 372452996 35123557 999675933 965263966 151811222 424496336 411932853 1011157681 56098131 706615129 12156516 276038081 629774594 131292870 642807484 96173344 853558743 116177994 549273878 645864054 913193570 743651241 383004881 737375126 862208568 632553721 942350433 912663352 916383015 610191370 229193496 813460412 16172533 26859823 369862703 548964736 271529741 695505162 834524974 648896228 797622161 256459310 868474370 639109496 810239822 95706605 532993623 396371530 879939961 615782612 328040251 245682602 158109766 119189739 370223249 966678581 646276567 733261297 630177522 665456857 805147755 972742048 487109775 1016950793 1012792907 415258422 1035534834 883765539 457121950 753688973 618383252 567336312 323052993 331344134 494715167 1004835459 66759652 618824107 438436713 1043122644 246297335 385277608 83997974 525881151 859746644 921866893 397703416 776039902 564487723 830703237 418700724 828191186 575318029 942179908 1069430293 57087428 418964845 507815571 396303198 920465345 579462370 937156265 144297340 17901736 821823021 201946261 380644635 441792885 730132674 806612337 208556677 462742159 688092470 485320369 44129636 648871346 414938006 488886693 218210991 282518510 991394031 899322344 322344288 910622554 871768943 880668223 303815718 194803589 235044985 347340185 946415903 115326188 768689914 404104558 100830847 10425619 100805051 82680172 841475212 606587519 152513218 574105004 1003515907 662224688 201146458 315343814 321307972 1066570670 965670004 807981048 1069253057 745531449 692470287 615482953 1038116980 206025184 938002410 910632492 792647092 643562382 581498551 526481335 198598780 805586122 929193019 736251397 185487138 647748337 395841924 209867281 590545557 416215453 1067763800 140207528 140688668 348136590 174911127 712626873 66545008 544440448 670462170 42274481 356710195 457339312 720237097 836639459 251488501 451539173 195474903 107197097 882462113 367360986 572119086 341077769 904574989 360840333 815826792 901631951 50923979 881524063 451191543 240308349 466404339 1036712913 434486391 977753032 637716002 112381971 963023994 76325203 698964376 371794219 690923748 887431111 636188948 150334460 147807144 398587287 1004811056 910579514 687202392 1040305189 707430057 804206458 331606917 692396090 794371752 462762104 1012092620 945538182 582754201 579689452 657109709 826508550 411994754 28901237 936621435 692022734 164001792 569446332 66967576 737598517 553914807 390313762 1027577598 711665718 450849004 559853943 380058509 1051897582 859574844 529949907 26789931 650250908 837965028 947893881 487161780 293158578 301415582 474065188 14420909 597802801 771480183 324904141 59509760 986253176 873609048 960541289 164441451 569073075 231590275 98290135 144635608 553954681 20147250 749552919 726604618 39138420 379536027 761876202 612655683 926989929 266038892 762866473 886578062 908924129 121511181 29508184 120131283 1028957701 364815492 562720339 631116745 282943334 223080889 266524137 543366695 642860480 770840516 106987000 229695671 543831734 900176400 138435521 231101937 712876602 751025600 89432491 50965709 1038015596 193868446 557952229 479144166 621098545 253247580 708806690 932021067 655842846 317470821 410954562 21558103 921558581 204602599 149132240 457391853 285431389 21110410 971697867 359911110 375518092 750081422 821427280 457096879 535553727 1029036221 866658009 1043411317 197843542 574191885 919716003 833385843 1041170529 731965320 174255965 776453555 443809575 207030527 305883567 948438909 821338541 658723832 993783134 941516403 530604686 799914042 319244627 644386508 890548655 1028780362 317559614 544091708 674515612 283208983 399500196 1068482656 777712043 653848952 14408228 470327573 695750471 972462748 480723923 551272281 815315678 83405968 462602837 705469759 130819094 56414458 337067080 882346092 344666273 1023487672 845128092 292676484 131583194 348695163 250158039 141524554 542294599 984397302 370220981 991838650 968694502 670699104 273840461 682763405 379866012 907403348 862074108 732326588 314323773 724256855 761307895 973562644 111307637 685648760 491647480 974966770 365250844 1021780853 1051874995 165558163 485809611 652077781 206853212 652320630 272980610 37182887 529896312 224524235 739328071 534209266 105134069 829911985 216932841 1021057357 880814646 250990975 855527501 833174334 950766304 165285006 578167659 767436579 162420404 107602556 834679637 320720298 88182212 960684363 924101356 838404191 350511220 233600385 686702369 148676395 931571875 310694246 480998342 632791028 672594656 50697160 719336095 16957907 501557613 373703666 886371475 424889314 623008636 590585945 624057739 355705487 117872147 664082911 776996639 1029406970 489104296 766695336 179154989 1038442795 891581902 630061601 547975914 800872961 759998166 883091733 280740797 132595142 119045545 350358083 81536119 1031338516 1065540782 58015464 752789897 969879703 242068677 186342647 243308757 161112157 860057506 791512379 158387428 28565946 754917976 491143981 410113888 872242861 152569814 447453688 38938855 786437827 674721908 368629739 715358299 836930062 749053832 92303237 770013983 1001680 983680215 924705990 957435665 798254225 919783970 219704849 568957163 872659732 59382659 177613051 588333897 103137785 40934050 916667532 31342645 176917066 289902110 470087143 792303524 870883305 446545262 6994832 561288768 1045652174 544887000 240538154 520902214 657802000 577832876 456410345 859510841 566391823 437817523 363269095 926300163 721092946 21946867 621298720 888080288 61116662 612409359 691642235 190389663 859856250 870313160 1051905760 669265067 960204460 59709323 338360456 89496204 536411967 926223502 899746361 339687223 944564794 84453952 89650639 146409442 5528759 191917690 543564858 443349812 366200412 228562010 620064693 652445015 1027099937 214056967 791527361 992386539 254084416 510733110 658559263 947809219 153693620 306006685 164073506 324330296 113147036 865043815 345436638 139948206 815026476 634334786 1058130254 791749667 1058788660 362641130 268374407 846606235 907813125 73473973 354259857 276194133 569189812 11091266 817216759 990306418 969923489 819426972 431094387 1029142646 929696168 311889125 632485776 456920007 332918726 55032094 893406823 988614622 91126353 704827111 172862550 905027009 722424809 24741393 1029592532 482343563 109587149 939889735 721318333 762313331 736158093 817108344 1036228054 160142250 684002139 290896692 680863513 704577187 752155322 637950675 859800418 1005563137 719308285 705495296 82820832 62248445 343937334 748030105 947258161 1043294874 757915644 574136984 393417368 846091019 909852625 882250606 241938567 16248051 908798338 1003021181 647789582 269793297 597911105 910370167 704607844 251031135 630393018 159269847 355231437 226672032 100009326 21189609 731213311 736249755 812564149 65392025 147058361 99473264 1055811910 239006308 42862570 717145519 767124989 164999196 36077743 1048356914 346944415 733192412 228833208 334434676 1031555592 927475198 160832599 823684214 503962186 803853911 1015646345 458253 106884399 1013507241 872849178 367594284 573049585 52879949 880434932 111773498 533463496 679156538 897666702 658610320 361397678 148196107 122958021 884379785 168055135 1031349319 103456659 810768780 223358488 944460044 410642829 611375009 1013217437 410313988 320690735 879577435 875202033 498703848 416227642 1050893171 688508630 108245152 213400783 809174137 249296261 746608381 782858953 982916916 246455509 1004840905 384052541 137475982 992103390 107329550 671952910 953166388 191806068 830431141 289867851 129029078 193071186 476665899 345090025 232130809 850972095 657186829 530907295 193472440 1024863000 1036026876 1037320289 651864384 584790659 836948764 98659093 927182667 506709388 317343533 554614900 122621560 44013718 115049113 912631249 495661003 111169789 851144867 99435660 382734385 1013935434 169702325 273926689 120295246 268345296 971273784 263056668 343247740 1057960523 313856493 551704296 729170138 944657862 493575256 275236984 742227037 106003197 402218203 643476520 265733161 400598233 787277218 948335764 791275764 110238785 1064780702 17571115 959631906 323875140 1057095410 167735899 115525461 900516138 1026785131 204822254 958366205 495574018 916464867 313595767 207709623 87886128 998934863 343314774 308133093 975062795 1003993080 489824740 479344949 282148102 454301026 486679552 281076068 1047519443 238474274 614337705 313490046 91367975 970070246 236117444 361123223 733799866 885664494 253811504 1057562610 335307568 537289164 792377532 977796132 609587548 991960817 870121536 1011669138 316607821 928071398 865918378 1022698098 105308024 314370234 324762428 918751165 751567238 758634906 975543111 775679597 245630163 742611958 402462231 332425556 263911758 201169760 669720531 829220218 409355347 347437282 337336960 762002736 261670217 1064807322 103126940 368502969 423491139 312447022 52930439 521497132 193381015 24634689 117668811 442258899 419237534 499619366 1026903005 399044449 121799975 63134196 921029045 46028076 733307739 400533725 516654592 838979967 539884890 935446395 1024534745 230487166 782150588 619800793 896878067 656636260 355508977 1051704412 942311826 1040346022 820362346 912524280 253156736 459854683 881982766 801766237 479242673 833532962 6159193 283557286 214764055 258132940 652061842 815388095 399468237 454929671 347447745 412810264 153134035 1014645291 368537811 1041362846 302677224 23289068 326953631 947585156 297604576 244485957 684149489 498760686 873598741 577271489 293008768 994986884 821215928 6536201 1035966779 128093622 410758809 39052627 333232634 528605306 853797178 650049680 23675781 74617467 946550659 941439490 406723816 1061419007 292688858 186281783 52067001 643552902 758928673 225605250 549412815 206734621 457446601 713779360 205705071 61140636 710085911 741559129 928973222 424989940 234449011 633830348 288250312 825324786 786066434 214513124 948057310 43395654 155360580 880888846 48896125 553638256 181613564 1017895533 780836297 150560916 828990381 800625689 1007510156 423819259 119124141 119192225 967358417 566900942 584121020 670096997 597366140 769447470 967134041 1013440700 389327801 691547699 195050757 532879649 116535445 191438019 167463979 736342943 319189341 922322030 628730147 245953223 131024851 823023658 140384238 519237545 926434124 355577402 736877146 776134982 513484232 562475628 989993112 219768551 16723843 408950914 340188246 400714892 517796355 702404422 974302032 1032753877 1051265009 204073184 250872996 157212550 308433571 874459674 523964762 609197153 224716589 634067226 416903519 39891692 775054020 555204481 186204510 688995936 791123971 332484423 996228446 590325047 1021647868 159497747 400824234 491972191 439972314 475365706 121591220 835739645 393306241 631641968 933775838 220370121 111129658 633029770 55792224 119979305 349114160 725811316 796153069 21520145 154822660 912934349 113074163 504637327 236796011 907801713 941536637 519812271 809886116 642771727 271928543 966402597 18623906 675379305 1033783191 87935032 13726571 193536421 283129842 444767621 390848520 205879336 489342674 156148809 866428795 220934775 798608687 1045166540 222617447 219492897 279902488 475738125 923845985 60480727 20795173 413802034 505325153 1032683261 976940769 620277984 241871108 130192997 978522990 77148253 23280476 919740428 891106499 416469020 107175219 522531588 601577188 101405072 981313639 144045659 199062211 605745491 1036297999 206180915 639704260 855512980 476699787 157655889 233025663 167446140 199112791 690470940 478644057 903077148 312517440 366940482 157803290 381212720 148515145 1063339601 887346164 413267739 333892532 433242192 433774467 980158747 530834554 239852506 913802770 467173849 857377814 960172982 1028817506 412265792 414124619 139212419 385404346 141558252 1064262987 1035385681 544871561 97762789 1023032351 86388538 444327376 156146285 114096029 797610113 480308635 168597518 317607725 664703684 890644076 2763401 274259146 248651053 54555863 978038750 503650944 459083480 597901489 886031413 480415183 328719099 130283253 343328327 476707062 435935704 554207622 299450675 360336266 288247873 384129754 114207149 55354918 729318737 322138078 557628714 673244425 770420819 944754034 951087647 337415056 512273101 836935096 860495506 841487494 160068249 740948284 243043619 972798915 921756348 222880979 761563687 359220256 538983549 776300337 1055461803 581020373 728171476 138111752 761810501 823413066 733945902 184217017 541783440 449079885 365340639 889166072 933875651 279987165 364992093 496667735 542433424 1028737882 467010383 912134768 885682213 651359985 45715661 389212380 111053587 274591712 931684329 453592293 916737490 1993759 31146127 663091337 417185812 341732767 789010385 548153090 70548691 175875269 801828884 96847738 30843943 831370640 264168847 939683226 160418108 293520444 988242802 772217357 827577873 551182999 354856269 659017858 619186900 483162407 221200473 168623205 67212723 319979766 1026560000 25022341 107473170 753706928 741795717 964401831 745528669 908031010 445352537 153624136 280534662 463584684 460922156 504588147 100656962 3024954 115705693 500450036 171842540 562542096 869733258 527059476 969653894 500388585 817068318 857437808 834444833 357109130 256982349 588388511 276616478 759747725 152551010 844444148 843581361 831231644 593510669 394295708 684798099 1017744481 78153269 145681225 83860114 317606262 956756575 506385463 381488029 410033383 807331212 521833069 597724112 908033816 383306656 592688176 909877726 727361205 761079251 573380955 196143074 1006645113 325245220 393053824 683662916 89693647 417752649 933681838 255280462 608966434 888168940 430469729 192191340 217281454 170813212 465680925 423742112 456768037 516556700 166672067 478676570 290046387 290397248 514778331 841995374 560267395 347342200 253018562 224186500 617644987 1040641252 959686742 671346917 131984861 466566118 697041599 230784001 724595948 1037076809 578175558 466337066 760423854 354622963 50698451 637539602 1038746459 699311670 501866923 330921396 198849665 639633320 792994631 44707824 420723276 841358071 269026915 653437575 144401838 744109904 678222935 659225227 745864222 655477068 876576160 733339039 637796370 914647218 865255972 1049615015 404144239 354010913 958954957 61436431 165352137 855185688 205864697 767650869 171874479 181470603 976506410 520639198 402118984 891383146 590952604 89132361 591093039 928637863 108129526 539532479 792954958 431071215 1011481498 846031720 225574544 628254930 887419999 20883653 949212863 859540859 121951144 906217240 379118251 499358048 801809252 629222500 786770970 346330714 564007889 284305650 302422099 694120192 361137192 941125526 76056422 609656627 468742824 682749417 730180862 460680916 1031962346 28985 240043675 41395601 387583639 426301439 74244376 343622964 623099711 42017585 908727705 648095129 731662149 296399737 802726127 826920071 567882198 1012388282 365270579 873425825 428731529 424867793 536346215 507908223 44169339 358977681 987287865 476222471 715146166 838855795 547941145 739107787 246654699 945416832 213413405 41981954 41572721 321440509 753605543 922309765 171886908 712119574 65164610 1026513935 286506792 335460091 501864835 1038328484 276485334 821650021 354896613 469641219 912951200 699473724 360527170 772122323 862035571 643179450 489445863 19613894 725340876 731033565 834993713 379898377 380197073 961000142 762344513 747011646 1063114997 130626506 681064267 303494921 795503820 697454766 393268201 663428156 105225659 564761431 333390273 582851958 140463998 1061243869 297474773 1063586823 838615708 226864523 87773174 838493839 416328235 575748616 739013121 895235954 993051465 169563433 524814307 652417459 986193552 901851083 862465603 207795865 530474402 1002350252 790450040 1019958676 576994945 25366379 425493662 110915622 925254484 434425492 1071558646 25529497 312613470 514450828 139528133 276755606 594582797 106742661 702863822 522650723 677119068 569086631 421857366 47186046 631496775 685469791 218333738 328054599 940783181 900859008 307841981 829706702 190916455 758457485 600005831 290606583 865031244 704769678 204254803 36498745 1067388443 497980508 268893237 702464017 757672702 620767811 874395885 32912720 405341713 45924128 254727511 944177626 55606191 544731547 718823692 583494805 1041494589 115879232 1005839088 291711624 763851989 425474690 753413560 615534727 510040624 364993936 770737958 970908111 436886433 616452506 940995251 317913883 896620525 412758619 774851330 100318626 509412407 21893195 620802915 490659094 703414756 365408911 545414445 156030939 1030651175 34694593 754686551 678813574 652303222 126471577 62004433 684522208 755227573 443819174 643777854 711218539 565258864 119975256 21100070 225522200 267540119 409592777 1064318620 956234003 646218464 800147775 909241183 143607036 863108924 289288340 351785455 863338213 469454218 196578297 61149009 166005020 867638447 19089304 983047386 276058157 1013754172 220878534 899518254 156532510 791608040 272741011 224832012 6248087 475138303 567911810 902097613 790614430 511599896 215854661 382159337 971435748 213374829 34357975 997502661 804684563 902782263 113484911 701929081 239275263 254098924 120052803 976677651 589473593 610290574 718225913 509053541 173227869 1062478822 300791099 516563228 1045087577 24418753 816122871 85878577 1018638788 836880529 609664479 678539314 389517380 845588113 612732917 838936939 750520119 914444231 611749079 661226884 91648758 336478281 624059172 446425559 707857489 609212917 219048914 267168701 678096287 734798908 601304154 887797940 171312596 23084561 1015135657 593791315 461567435 772997812 963200020 224340456 439817102 483420083 273859940 993866544 278547074 101253405 42867798 106832063 753958137 426497665 626743843 76468709 969783607 657088707 938205496 289057679 200610327 994956899 317072783 570813947 883832766 65082107 958136683 753435625 404134816 538070058 19989655 581841352 132696824 374264539 677467729 380011902 171811924 66842311 7845028 249079903 1022819592 997051954 909798473 891355856 1026262827 587240915 222733594 128468560 937566690 766412937 329951646 486153751 969320894 501113703 1049649100 984518273 68861521 460776636 419145431 412798112 839943374 177645244 1061171789 113914701 60024549 26058665 332326088 438557987 284881895 503972993 383528522 886555399 1039631938 909976831 437001660 469853862 304557047 965720418 67052477 512791507 315372742 554801281 140228784 329786394 588377570 304851122 361910215 804439668 64857422 131673929 1067330367 142057113 402977827 689164014 826602101 240619569 922269397 522419389 545042396 997617511 63321159 329808743 311241855 852529913 63298985 773311464 235674476 579576378 662642557 207018019 418864101 229910173 403583555 139583583 498970702 296888100 23626258 679139958 1060052223 35378690 335309985 729663178 128386884 891963539 584646738 19244390 488945323 640761666 822856605 303152786 964876067 578750032 696700274 138542600 98406088 386010488 112328260 54948061 891749168 520498964 315065837 384740945 1066450445 417394550 411775678 579956872 929092474 1064611239 11892747 45221909 704239342 197993929 189729836 728753274 681228196 1017391605 478343473 774782736 23944222 624673272 251865448 471983265 8492652 374536681 315137231 999672405 272259305 504577131 252838414 299539364 398304993 536855663 365000622 738300476 860885188 421020139 409617832 148575379 59089825 618865755 780702563 787521131 342785193 799756158 744288283 399377022 115444520 993461586 538632591 314666762 452052657 142321796 968811692 829853102 810911142 930723519 590592126 481927569 1008570342 743749891 189047481 562475565 436586761 802809712 1050166128 565342451 864530951 315569694 183651438 754564106 538576693 614098372 709265577 38904036 719394522 339208400 437209773 1026236012 298653467 955551830 176960433 186816018 147147489 124051434 370313534 837361808 295192212 64431332 932936883 418991336 950833357 501835250 735438676 531220880 949073870 707151626 807964921 54659721 212954598 298040284 393856511 143659281 497960416 756212090 604094538 459364275 465621588 372261078 797801276 845673695 583864796 858067156 775162560 970825697 285593328 890705070 580403911 837700476 1037383515 1030033014 854070267 1051023785 526106945 935438917 402799171 36901544 347234478 943354635 739564167 272765224 618737654 277931320 683225903 598524943 701268303 990127592 735609952 298120123 980200563 554285211 574660503 78917324 704563964 305213520 501158518 502968663 59426339 560443472 60380236 413574884 363786379 518414955 39513818 757301633 123857425 659143396 477925453 276758318 466054105 232048425 1017881187 327199683 30708579 1067122322 237020510 281290873 627388051 488944525 905484477 805839967 535413468 734275906 488586142 846403658 740989437 111072486 540175501 974699584 678550300 63287755 782081606 225350591 55719299 153342360 468972898 955996648 503528563 434429236 804953077 372174029 390118605 183691397 927274948 685690168 346338286 218885044 947524271 442574252 438387676 855317546 834519694 236281924 761259324 637066337 554229329 224480756 308897557 342802189 48111409 407410502 143468916 815575529 109654109 717449751 10708855 300615094 287428875 353562037 840764919 262951951 177122288 50943897 662327427 293765141 106385942 673578822 920086011 792423638 582735349 75714482 13201095 464879120 1013383298 343444645 276272139 1044616555 924296405 239358660 166726027 393922257 316824061 262904616 903473108 705314141 545436589 737856148 414704237 336482983 211408592 557381112 286708228 584167170 853527346 523464750 771582372 474259869 407273616 29409154 444015677 382625247 257516039 1003391948 528332956 400017130 43744642 490884686 506359582 929853404 879352596 1001506843 628813696 547122884 140719314 101485037 543005715 77037938 865298120 897723403 987304003 474739502 213092508 390216820 466575772 840850749 446645253 774411525 850362206 641693061 171546448 440770974 685137849 106855014 495482844 1018292983 117838098 686775913 14592547 36242376 25919935 375956465 69940326 928358656 1004178765 676017836 693898797 587607215 1024750652 120905875 340524753 40251514 211420045 548686817 183580910 882289374 994013991 475430325 476341704 978026280 522047570 377221706 181107503 474688766 546150149 939277500 463484807 234320481 178772160 521250140 446808082 616320068 1047399118 1047964262 1050168488 298507411 917370143 711526572 415669451 775132728 185690099 820050294 640282772 740877608 315104652 124918347 527992468 277175754 495182385 465484153 597275947 586860184 228387453 320042727 393828900 731279146 488471094 750506484 118498822 803574607 645428211 205085882 814756102 667010030 545946390 113606347 530423500 740870360 953388438 305123437 363052739 84113887 180693291 683320115 477056400 87804323 835002665 1002511476 45496253 606910484 1000473340 1030452400 962011810 188089046 335403135 728119574 301871195 462038757 649556429 672298502 242094482 30259562 242818814 489418503 162973033 920402037 139734408 194582199 438918658 963997138 549835344 463749108 977635223 614526678 310179543 276947452 1065669831 438604724 742371598 234902575 161129000 475858616 502259031 524113345 655569729 898894190 89569620 535514283 472740926 616602059 748614266 118784583 247462977 410821609 488641334 133221199 811796427 598246980 828317023 1041693192 177368068 60236855 391733477 508749449 753617604 145284511 298392858 543798697 804791208 298297993 166135747 535128817 836880367 76974783 446659252 1019630058 94848451 312461088 419007234 343763160 1014301247 316839237 72605780 307554339 387927572 608337313 160841236 214396428 537523860 347854540 105503274 101486252 774200614 933314278 367174244 72327199 913889754 389895917 64942005 738087293 1030661948 1023427270 30861600 438036773 1045547999 1051368386 934339113 132158430 283166939 776599974 846729101 112717478 510281806 968131296 598151618 973391511 907492047 495197174 504612997 306358160 264766108 860566091 130679634 381559691 49705934 676840648 736399144 441203231 942700278 685281282 1068240971 950827603 109313834 562199045 230816197 893519947 922302975 441118894 769189509 756985231 1011976867 171514885 202916533 539970843 780057639 488876192 230568868 989427409 590586645 44214592 645818213 944735970 503108552 13468892 610392814 969021486 1020543761 382463484 1040097480 88514685 36939408 459600245 763468323 1019667972 936250638 935577697 1061267546 791053823 730268698 32231303 388692289 541309065 511507558 506916977 949710215 338281644 656251203 713259481 539804802 791298327 587036294 505065165 909567545 914516993 308722804 120317007 335725745 710195890 962019044 500317596 709157835 627949480 405261624 730526679 441062367 455463257 434894750 402178504 949289537 664013640 795789463 445381277 657292936 861006912 329780494 326307987 63276407 245976918 399451040 928846559 782683178 1024467513 1007946256 815395542 1021777532 606482848 793352848 376831134 1392277 219596491 395610607 214118179 128722381 936338139 775692534 47959690 241293734 991642159 593669728 11481169 311087961 893361392 1009694162 492383892 633900278 414508896 887560028 332381587 746456153 334935416 11955347 716858285 503497034 589037660 578646195 438550379 107882942 656951640 831606097 478026480 756227111 444158236 871367224 283676569 329297137 950763788 472296307 867161150 303867775 1056761493 61427714 711204736 456841597 654088904 885010291 959665717 480398618 247662243 562023298 987398763 336668182 505973367 90134897 337035012 1012641052 498625327 836196952 533484538 828127 804712317 703184054 720660976 697135893 464263117 325276063 810136287 703227773 1043941201 709564588 566399545 34930974 106098099 408458113 673667793 470449264 394801588 578636958 588658102 988923134 169069303 792086721 164181817 614339955 580154043 562564442 837167635 193577258 503361411 547718477 65442882 652011713 824480707 435119845 518431704 385042920 649611390 607314330 652100281 132084139 221146783 933318105 678499857 481948692 520315117 661914709 316352573 760644580 253846707 122585197 294227540 762268998 627009563 2235843 651097570 169341060 743122490 1000168956 257601709 79514973 882707086 552730038 1069571824 33745804 110220052 42651964 142482253 1026201406 165068203 507559254 445857683 793556532 1035836247 1057089283 317105197 254645971 223555228 189748237 812644494 529957298 253823975 437220193 18780560 1068354351 1059116166 317186756 956481846 803772734 911135698 611766861 279211170 615291534 450476332 199408289 608677613 266421522 724863878 399733326 1043351421 439053731 800297274 348883455 979691422 435657395 1002185242 64297301 971134202 344991476 462719307 993555266 851159569 404868523 907136786 35202242 528706366 535820963 244748205 381874319 656530802 596655363 509658067 876438423 272161951 742762897 746112653 836403563 48211678 705783472 856320959 45070036 255510510 667368651 134112955 1005736625 237205181 840548767 324619745 62301652 134948819 707929255 605555788 165740393 504751743 680040176 451274188 407141419 38465397 717301990 138084702 663789538 94510962 690804751 151948501 140583766 110060693 324955076 477737949 415580251 191201251 639848717 749964692 640797111 992237109 934773682 913662920 950562760 272227346 397315691 101068979 228429715 835168836 584612759 387542151 399321623 377591126 1066810164 1051157331 873243035 534246731 193153986 79290828 225707753 318899889 151637590 924817729 290381977 31803364 534908648 105144290 987272886 195909052 573084663 687486353 420386712 607042966 699791373 1010585299 45770940 143432700 1007767532 538931010 693577745 434633749 639454831 80289173 27849702 835598547 796328425 586149036 1040706919 244442222 503610025 352715480 505929592 527458311 567127943 396081657 582703154 228414772 999668421 742799555 143114773 745292577 661047146 145794042 629199824 299965892 503166260 875010375 423186114 833163793 610517096 237428190 421100370 894660883 148859342 201982150 726439253 643237839 189450266 828756798 105345734 498462807 33567207 497558396 704969883 393554896 63908737 426686816 454531531 728770776 536404123 465712590 701928344 184195964 501460791 687160275 709919693 392989818 550652929 181124655 507586502 437572361 908982350 356435268 884122551 1008116685 316113129 898731896 128338971 553428780 610455612 846385438 1000029180 660608743 422701122 46003701 687863377 203112436 812512312 516032070 722401205 155917215 505395282 240153918 917370609 757067874 679788398 499645394 277360077 827147147 836607685 670446939 167663778 8500958 408344321 787106546 76598183 851446406 548938117 194290113 382079643 266820855 879851416 802213173 617379889 169923381 72349923 289461045 233198572 890122477 57158381 381431951 720373264 694642502 64206610 860826636 263678261 1015518987 920029126 655955560 378100987 887689338 390487633 501544277 306665249 688593910 761206146 479874884 743536326 196836568 612851385 308700090 799905794 687589288 696758021 184652991 244265569 170229168 327162537 176005134 62099915 214909672 1043232992 818942940 1066327316 160420155 555821759 408815546 155870709 307026941 1001012809 601823810 419906213 391342794 676247545 421693006 323384302 768202808 812995724 690993238 331292857 557030407 85622368 510696595 867192467 744836800 516380895 393864975 587208361 964248098 978896633 328519835 621439296 1060693386 821449859 127971087 693500080 419184479 715612625 448347665 959604404 693929318 625057894 31788324 340177852 729756748 499734159 396859888 436857705 917804962 285610988 892147795 118897334 653876386 28111000 883420474 664592425 153522437 635027742 965313885 776579665 124499903 1042722727 303374205 822243495 44808017 312354521 725173751 120430848 880845522 127733704 729802542 973339939 841645109 452783176 585086988 752131983 13407317 95957694 16174305 111241460 998754397 673031240 773778724 905016911 601268397 138419758 12168833 107182270 1054083621 407377465 460618344 107826426 323653720 971480059 929919560 1052444561 423320250 382259629 758816909 564151858 236471283 776070924 501133290 268275501 166879972 747172403 461995683 69659765 208049770 626693617 303622167 896950491 744653272 814132618 23727982 198578584 113116698 852865993 342854856 292933203 256357002 729034219 525498007 617327382 744704128 625654101 118186526 705573109 870438485 101923060 91039838 945231184 532786034 295529010 247392756 602983050 967563573 44267355 97757067 615408855 317425228 42004490 374670167 539282573 898639304 372237052 556468402 455319216 101403408 955307042 402762551 768875579 936105345 201321865 276861867 471939356 1035575985 1059175191 117185463 403637081 952930292 346923991 265137043 21679222 1000041988 344077596 1046652352 282770259 794955962 763148238 220965 526661888 442266271 607753923 232881241 825470842 471000118 132653533 86009765 785439382 459469768 1040927126 793331039 756219621 73475387 876994197 737406898 1016849322 148397114 772529200 823546941 339650228 657879026 666182899 626749467 241171089 1021936041 858628977 819139608 240516307 175625995 567077546 15175767 32973112 966322116 139256007 29773034 89378147 136734472 164150354 334239794 1040379634 76237092 176620317 610155295 524358318 974158268 482526069 193770729 16349529 672248840 150994359 763530229 492612103 872874091 683632744 600614778 573232157 410325865 674239634 432736761 584865218 209545527 182024678 899028156 854482724 652117940 203147047 158274285 452024384 1062459871 284202408 575293138 524855401 694245086 494403453 712205502 377757003 826025483 822562373 430287340 44101028 83887567 337785178 346787073 427834063 304275115 959354022 132719093 623486822 587896752 76098610 787267192 466121566 35045492 685462272 978104122 144670538 808448326 171390075 726174449 171386144 522895100 874152113 538885533 31521365 81836242 879588947 450909613 1024012858 1003827288 643994619 6444258 822443467 966291365 186875158 97429041 794117348 649798401 538896608 140477837 311023983 731978601 988249843 694201608 785717803 555395024 535094531 810084483 1072905626 166108591 30143954 260847071 690247370 298310137 503352369 7302603 809746171 718152298 846659199 467184199 31040515 241864541 235628792 380384928 228000949 22369798 949990152 514379506 957727018 795001894 918596779 572646655 291594424 1046651946 136260688 1002418467 794454772 944040597 337166406 179423665 712564575 931751375 636082829 625100267 842904500 553496024 492601856 902820442 350945303 637005741 975978555 713484569 224013411 825839012 648345 141843102 202071938 484210955 204818403 720474505 355047177 411810182 532652079 17261396 682329581 693109450 1023978163 597895154 800646436 257296041 791094997 943758309 307742289 68584852 341988688 65683800 64452760 412559101 1034109880 736835574 280733669 976458795 864725141 602708687 633270881 55501752 533613907 568926937 298820632 777872983 563952325 741711903 1019439726 687434646 321213947 822898827 46081081 773772785 253727234 1046476389 1058309706 787224118 59494129 495661845 639192809 566665486 794813828 376571562 357654643 922954972 179523048 792041879 356435525 509051776 938099118 588959802 219023989 978777019 948677713 371651671 207728713 875708965 885344989 365978092 487368325 768641400 378947908 121880247 382359623 19855376 883986838 252952618 692415039 338562458 229100285 742701608 190219442 527690014 711626620 34270180 516648717 244902914 887393273 382318432 843129688 75320534 1003187560 814557478 808451232 1069671278 548241263 518503610 798967697 712695476 766500651 777957235 7101705 510642305 871656835 744259711 440472992 496475362 907955934 409610557 641285331 754013082 79385482 434113377 986769297 657533791 1073675895 123428243 1060151797 374333402 592698129 985411638 865422098 555770902 165855041 453546 1012258858 196842834 403420327 198506960 448121989 687546650 119500030 657710297 472979468 743929937 405662914 1066520075 1003573155 321433539 673388614 9723103 468288456 765123390 471860640 968627088 110452211 998151727 498636345 549662775 547295431 619999537 28184855 101219379 763572349 42050149 163000846 47718321 371105376 853728457 809833183 800315372 845855225 1069769620 910590060 718197839 940981915 709458054 528224998 58915947 127650874 493061171 415032325 1069541779 451541844 69504567 622486951 471764768 162975830 679631995 231207115 215729229 192164879 233373539 221796845 935861750 1040564073 161295156 816581158 346185015 357661052 948799204 45297610 132399634 474444340 592376241 917940104 154960052 844088948 536088912 786568663 132407195 264601723 510494460 275338017 250107283 85443708 664844159 507978702 824179192 365878346 1047117533 258396475 244698673 1015342453 274241250 897078318 300821897 70157864 358447080 937642900 843541025 1005332875 220248413 105077801 995059297 1060670106 824858842 335525453 1065374764 685559094 748476177 612671664 266390008 937835590 1027077688 876396216 233959500 685909553 438198902 414947892 119614177 679026892 905365673 144254209 1023434188 769036835 250640109 864395953 607288343 597435538 773648598 416807990 712673817 928930165 274411816 129998652 748550023 944606906 471602453 779801387 97876388 428336715 262499137 637887424 326353755 418471359 692552701 60455613 499331154 543670518 160345446 261559082 902630461 737044106 1001056463 809422898 475544776 480336122 953811376 1056271405 253636505 502682109 636750370 221652931 733859380 845775194 720051919 173763362 492092705 990199298 149623278 73747622 113460798 562416031 839800341 117338969 351131300 442165645 849149637 994852691 337358492 207359968 237721317 607392425 311275961 5222812 877987476 349453393 648692398 279442315 964253093 787443406 398869868 233236589 34754746 557290690 650906663 244986085 57364361 924779630 80518348 438350143 715489025 259247569 572005655 51731080 895949199 1026546273 550527405 560177086 670415304 721864866 423725013 709279458 1042199274 796054342 422949809 937776941 1062932053 1014372808 429162595 748039211 204633259 762235792 622732667 549001662 217541117 375886264 818382645 183636461 43835639 911831040 334785245 1007763161 294206223 943419703 28076525 588730303 843684014 532520121 864905770 562049336 230875318 865018953 609487011 466920196 349789469 109892353 951484605 299605099 441725886 409179452 652502002 344577002 556381298 150257563 652760357 651489665 912780715 66820915 410524216 517301870 181340728 787678617 154073090 538852317 464708179 481434742 834632605 750077819 996512161 262559663 1049827486 880690371 85107089 262443689 961586607 441316951 295996810 376274548 857232472 538159334 477335548 463953234 974234054 55275711 498960655 856154938 207251750 788782298 150944502 213889094 878070230 630778280 890147221 741889822 883338669 270806487 34035074 286020809 332787664 892343834 39224427 675472325 671344553 580176403 868087951 276182230 1057745325 740569607 46450755 327734110 566174254 460508342 511356654 788827192 593184098 73227409 607546067 117508180 875134238 178308431 230573329 152182216 755367874 382017533 257207011 835652625 404152393 1068857486 273266799 832499271 459483717 305289463 729486413 1046888705 181314819 907259674 397901572 91249192 358549080 177547697 337390368 461824292 835771659 302264596 846662172 755101463 5553514 360461540 516733195 896841735 968909461 265519326 795212916 444789901 1070288132 680793743 477933410 471179719 609839396 787563091 113610362 1035768770 367711178 934711389 679216570 1032246998 668430356 272774393 187568646 1051962989 40844245 35206278 183219937 472899900 824826932 10096199 944136986 782037633 703474866 522286408 942191188 829511508 653426727 179935922 366547915 513710894 237034384 266980067 803601341 919037620 479161436 555050515 489211022 894289710 893515935 956811666 1052510154 228654038 631549000 548011487 1067813151 740758261 360122721 618233686 853021956 609567103 800420540 315354520 544808371 1072839843 256438106 290281409 1025203574 608670066 897885941 819364983 745667777 492719467 1043734589 923180197 266519438 508170370 455421214 873721777 1037240470 733178416 563810837 609559862 186792508 526171097 562357370 502488399 656541236 190943131 379656930 1015735089 580738997 62831879 955907562 540876945 397999531 206536764 527745955 23505567 874263265 905589751 345400015 320161408 849386276 81993726 191064565 416398911 680692794 367674676 385868719 342870770 679178250 139593064 240475241 782030894 306704912 701612314 844515546 278343511 345082481 264601376 168539296 286716064 147718436 624633423 52409054 1051142347 574730919 524483564 421222398 29937062 32081299 1002948593 1045071448 68000128 511902991 800712405 28164334 444372431 72474729 151076008 843800569 686491829 407749071 1062704561 477506858 1011391836 746131391 954879036 758807484 649392573 108985985 498528139 229729592 889198432 842781857 255380484 900705965 705510254 910897768 853499075 653768718 220471321 943724139 388901681 233401732 490766927 35776987 222785788 652688358 451600047 980888666 39541759 1043423842 808689378 364813881 545884231 505202959 823187227 932179745 7173816 245818904 404918005 241495335 79549918 65289416 507271194 677222284 683389264 928009181 361209377 144912791 477004177 816422541 448795924 361246258 459446890 866111002 261528080 956274233 933534980 860865699 761200783 101894163 960837049 469790123 324447756 721955273 513251328 889749970 396415833 99952797 431917213 841764407 470182826 487619318 669703476 350201378 844037775 651386809 295790728 849158763 500157584 493607017 221703790 986220422 256719414 743739730 112674659 932464628 1032218326 710344626 134340928 969003807 725827607 311552513 889105511 456488262 51131037 366604407 80376017 196494671 855143831 294239997 776299802 975791020 605485620 591392389 812211035 936540762 986976853 871272328 183774242 743146505 94316651 126754260 806382186 198957948 664079731 328347423 193662669 532188564 613726680 177165093 1027758104 41704797 445335566 684637944 599953412 780468776 438674404 402661361 905023825 5112395 664666165 861930309 943923955 462862269 669458611 166060587 1008920830 409788193 870726563 553714094 684279726 92859716 884342845 162353087 561785782 1044769051 525155068 962073117 655270846 209932299 393332760 747995505 429301164 606845571 814648802 959656518 814911305 603903938 1072013271 442958930 474608006 193229828 229651384 239763874 857435197 699173364 601700369 117931454 743232649 970049764 83833515 589393086 750456630 214558176 755762705 169300865 887426739 1055731802 84397374 368820877 384434339 25144837 946919277 111620455 23724958 192237597 195993754 316377378 950179092 707009999 484608313 829111241 885728173 619230424 463553712 108205699 807819991 919202109 354862707 826281832 309450494 852258487 232121409 73366373 879050926 826539541 43872049 218216451 596168852 956110158 382044898 52963489 829549301 426605848 846600343 816554199 130520077 627719429 399206436 194194096 1058110206 789991195 409572294 163262645 6600872 300356494 289268379 435268736 156313770 633531789 774081604 251951569 481211875 630619885 68513377 820572466 344249116 884558004 767098153 271816367 893130847 713267341 880693726 503626271 230859409 872444415 890849669 998620336 1009196127 889856379 623545889 789136656 853631251 43833819 507075219 166196913 172044362 246137055 133103895 821544768 249543106 377121017 150948149 22656726 828186039 694574519 542798615 1057275929 1039874173 693185159 894770631 1001231503 306274243 207907420 950242291 610329314 501331836 173900272 695278504 60913463 60632265 1051581499 1053231429 972967301 816338941 883582106 9670275 610341774 76684290 30710133 525688703 693525850 1070107229 673019894 940503308 903440305 661064250 247642587 330999318 1026662202 405901425 762563587 1034243486 968457795 565907061 858140869 1054641597 503168861 937402972 426341168 126717927 1057837549 373350702 759481503 452851485 325424697 380175432 534501014 554196485 822454411 612641658 977096448 723155208 333410236 331621501 91652302 686320376 1022354567 100505329 467090469 360539534 682136575 759784819 350719810 139052231 192677926 784712242 771775690 45777906 10122159 775792793 24030076 153633193 756368249 870909730 734245956 336636950 606650749 799305367 770340236 474383881 948811167 417149151 918996249 445441521 992256193 1031137657 881885198 176367741 482172110 567473598 424211152 690387809 951363426 485856325 934673705 770161443 518246026 110614592 249903908 577144899 702844025 2913015 749781453 377942329 914017476 761681321 19776279 811687993 626626188 61050187 160432347 541811949 1015729373 990002824 697559838 355869384 1061334711 847703593 192627472 209225829 116425347 493387444 1032334427 1070680300 101672249 841772399 1055831010 495803946 341141442 618741089 105101273 261948287 541248987 432654684 471600580 408800478 314418260 879042766 414791229 18687016 1068275706 755599295 213029966 638343271 731516677 952393430 629173255 448699230 789574051 587531307 180495733 652682704 369009927 1041591385 607411234 697544533 709625771 967064847 53287250 5935269 691498399 706399265 506531283 928508873 824248534 900554748 338980405 386191290 1067669046 623814461 765001097 51388722 55151794 977108912 542806757 488269706 676208631 567614003 693516410 606707006 858207666 597516120 139484755 445965588 1049602491 669800199 441620302 652924787 952184025 351572627 907610403 512396934 587911869 138647172 142181380 174663282 734639806 925089151 925891111 449434664 486990696 997077219 885545307 758878782 129647976 597234432 992466472 1032060880 301544412 300294552 54987601 401809480 462647427 871978443 266190332 116718198 862782680 919624872 340703022 121814062 45961774 134027114 205359001 430123335 724551068 243087734 464934023 326870394 233796003 518813452 909590288 493926272 507789061 631475384 967282093 678097288 885973508 581294452 617666688 145016948 1519201 680766112 454801681 93999839 1051606281 678061253 886795232 874976808 1016361980 196678963 297379055 785811568 564824601 48442734 819622311 367235262 538532167 885890729 905022800 761931269 923693207 451269911 889004223 206759277 151074309 329250963 695578457 496674035 541437912 1031134505 884607497 941858844 869254110 978824113 558728847 128415081 739882268 286432529 36098580 15317661 855732992 708778228 727069589 610637742 1016602416 809075463 871802212 1040811446 123584648 167170383 704058073 692843651 740518622 531128557 640556764 1062659202 1067239282 343849869 924286031 20880056 495208557 597764052 1067630823 340650038 600807960 907866892 650790137 226899518 301920179 448565888 270953083 691444177 1064567528 404031643 183518038 829845233 318163568 84771561 857652505 53964010 596971315 582041028 726470925 334036696 397891565 982208328 587172332 271478179 454073904 930507119 739189227 799669001 702612328 60742871 232102311 898144963 1010301824 592948406 412883218 245869968 68408812 308629092 269791105 617407043 611079022 82648245 881043121 840096 743017162 1021796341 96530749 294394919 756796386 30698599 1066042524 470176388 429103662 834626333 861700405 501466974 494249216 192729940 1060552022 582546016 769250116 704868960 492759198 855271472 898550246 426313121 611395586 819441401 784716299 245583504 408839019 964995466 444892575 953914062 246875790 187506642 513140447 1058671228 600181477 414503870 85566306 726791721 525783243 973864960 626868611 820235693 139332195 755436258 917116007 357577732 157229734 890120514 495379352 751952349 644054526 903600009 346864961 642018867 279176214 360014947 218651469 880931907 1070172796 762050322 274745473 45896066 261754617 417565115 31349087 209031312 211329953 1020917290 598961282 205473250 152162618 733371490 213271760 680648450 599283747 1059093535 386937174 349707122 890579425 258641845 853371309 766289446 1009822669 678915426 376840330 48798161 552744206 209103068 805052025 501083551 64006537 727404386 1053245204 639760134 380862230 420755556 758180238 404279230 416234994 414836351 1028419911 435036460 419209862 941829634 362856438 236067599 662967725 815407067 457835957 685473900 1066576200 934041060 467775045 819428174 762998650 157637479 496995327 302986178 763055736 527243120 352230846 226324357 105031797 805081278 632826727 522672110 528429192 336425439 326453866 875260719 522651114 631559090 803251032 84549261 878280011 400515402 693084842 303088148 881960670 684102508 619890987 673664260 614111104 647670308 103308304 40054781 762601266 308538841 196800092 878153253 447842333 354655760 461821145 955719254 308842440 423695618 398263070 873057323 961028 45159995 1000312442 802593371 84650384 928955286 647433652 282505948 1039760754 932577698 81707386 296054544 983010405 940866526 230589845 745962274 774306836 532452659 189058333 983371860 299463018 953082029 128374882 888502464 894872701 592096688 811223859 875494415 52951052 277977581 486536832 859547294 319232549 744304826 615367979 490744139 225570432 850946200 830876310 462223836 878796291 224048429 883002431 8563449 239539726 952882062 248331096 189021104 190111893 726287981 402423716 680984735 337590861 1051393545 465019894 34881245 430798705 1036009690 734896020 192051256 687823185 556096911 1005165033 771550644 665993559 591996639 1014343214 318664499 333252794 853197379 55752018 425287138 144343370 953191646 580688792 39497446 320866715 637196654 595764454 518573822 172693844 859689526 868579588 846074589 224089051 539941176 767330389 369563004 762766465 298869852 321390481 396774904 114252142 204333001 1054955035 642464898 673106267 365346102 381251059 600866409 710085393 127535320 904007583 69059243 664293171 712664886 270135441 515686242 942876426 1006559273 1001693930 458703632 1073017790 542042146 89298599 854188114 50814427 878198943 950113560 359393724 478786610 898212759 1028370898 1013383108 789905185 587281488 947623688 112189917 227008851 690228319 164257446 274676192 709985076 388848824 643064009 299965709 441099449 656377198 949072908 1065272155 791352560 640866064 156070790 250205218 321801490 142614219 685569407 846127506 242742217 368275026 68293702 867087660 849979632 263779016 200773171 1004627501 859051100 487771031 514680174 533156443 51885440 569283788 248287422 168261097 898744630 590075663 13895408 13946979 436908374 468262667 538393652 50484642 1002369990 282278198 1025072938 742581110 1004080209 739830921 417985296 429767574 968714362 406094046 882237151 685449957 651920934 1015969823 1029411294 184146795 676601421 304690997 866944655 302186303 523843924 368372605 949323503 515403744 649053881 10740003 1005755615 1036883542 1014875423 1052608345 69243303 583977241 453060707 403559290 957590561 577381443 490841257 650495569 659745847 933851710 776431166 307381445 240228707 301627005 377702382 247342125 28563520 405848319 432857447 516795158 431970334 913966384 403840596 634431274 853560112 383609247 1048967225 97960469 16410358 358071896 398433358 89588903 149508007 996293217 134258090 345981829 200784673 1026862867 570316840 138096825 658679119 576457252 287151421 1067951118 151137693 821134614 929402969 796254931 251402965 1005160337 241527965 45140372 655702890 207695780 373009522 655355956 693514539 131152371 947384592 647848564 642687977 602965699 477924595 588428897 67529307 416259994 776635599 610846225 831750259 159675913 779503833 5424401 235256435 565697987 764363717 329032759 311578975 435525178 747336653 280372313 564309865 595053131 72157318 696984778 876658127 758451526 633973773 973386480 920722604 75509200 558566697 779895820 342002645 871488246 1006695357 1013353776 284937799 138546029 921189112 779601342 130474685 735751226 141518655 499588353 808258984 247148056 173251055 89668542 773400552 10807531 401320399 649414577 822115540 1070629118 888534794 151597405 896542995 706139998 971767650 167342222 384422155 1047621824 418464275 444691772 965789499 667285702 823617475 620650907 110878386 1034660248 487536652 733821465 694446184 569751333 556314451 90126642 890108878 248328363 181059188 377574890 457418044 600895179 764452639 291420187 645621041 179049175 1632653 407198873 712298986 468888266 473904900 918236771 925478768 385318711 1001410502 306208358 293200123 522421475 850180692 656411783 769260092 6125877 272052246 274735982 287806563 43616140 1027096944 925163845 699442013 710619639 1054132413 546310044 251308362 82852446 900520680 498713796 262527193 1058747724 56841394 495566252 1070564380 853659579 974629790 666067645 24368286 376606584 223397369 782715184 678976390 842229218 346316940 665212417 545180083 216535760 114290995 370087522 944964635 725487124 327695355 1042655132 751639539 655102456 688937107 466858307 717773514 185459076 297378181 909018840 967909646 727536540 834479834 371372602 821563010 1030116534 243902486 1051273560 106291892 315463422 699487150 782855479 378065097 252360757 396252257 574980374 360357164 382441929 375570146 461757876 78003598 672457489 801411500 235476417 873622056 562303269 997901103 685373758 984871372 689145974 429175557 448743482 297256075 938159663 235597702 546341234 1048447575 796663517 541002891 202366458 472813791 675133044 1055793749 320933684 836835139 674744893 160441658 1041865018 265895847 654293406 82186257 840216930 19022932 1028551715 620062494 965909526 825485846 562204211 299620001 295846309 375930128 215397810 462568419 510262386 829335256 874892920 186578856 527374559 531082295 332461309 415441263 903077826 313820241 147845897 899428485 305274096 347693748 205546370 593437026 293618903 516609091 978626759 492162311 796634683 140135395 135219119 186251331 736007455 634745312 230738958 559486632 757785274 686718603 263346855 330143304 575150449 65353012 446010112 1024201428 358677983 744894549 93796778 765954755 86218171 284108084 14611241 599094225 166895631 495283458 18485104 398718460 437262956 596079146 307575247 983342568 702128163 61118240 718375243 829607374 270778832 862215633 735868640 208869264 150055592 817844639 1057298295 775365632 303684710 526709194 506779790 934061900 961702073 268112598 278501377 12920425 78865596 148514665 710799807 691200305 454004105 905538791 231232964 232851494 10237897 596352689 953839182 1027421555 906819319 156291313 480378440 15986570 46564289 1027988213 332785276 661626310 5356001 968225678 439442196 623588967 96104669 127640012 1064729538 652110677 157305702 1024504183 514866785 728089204 334843044 744344268 883227506 303336679 1007707586 759942986 572596083 745184201 387389458 92350998 247247058 716739073 359455255 1070833589 357924741 973765080 393677502 1025241630 108463826 670411534 114360743 667805189 806408496 126553638 966581245 721999560 101094895 92264731 984348897 973954271 395419629 712794544 658397103 49704974 1053107871 735655973 366652365 249679092 817023401 956571460 410013146 844281775 77905173 1005959630 809147050 212159813 82275818 352475274 308904363 915257293 967307545 1038494732 376645222 1026712369 400780585 812390845 716414144 32011683 787546741 813622225 886503194 448211097 13999678 1009425332 783152577 39189809 991948175 585356821 65195356 644120138 227540311 214817357 550486744 271763065 650184790 544019752 480520388 587126252 735664796 197035804 716254537 689555277 882081415 889201720 217536360 769762019 931702734 526615775 574779963 798883755 906201101 134502456 855047996 693986626 919208086 1071586028 61805324 618586682 1046477812 313320179 122358523 533254087 454519012 611078768 1009422290 852189408 1066659711 312355288 366952159 490280554 375488141 289269246 1043125102 586728712 870236066 134488697 248531839 905993819 333380036 90216432 783827081 187337223 466774330 546794135 233112507 15775471 829091302 182264991 60930526 986158537 801099654 949554491 141801487 671163412 794744571 979119359 671764263 100860282 38678378 394479188 867447709 831441371 128531766 468168287 256614745 456703820 617006916 702324224 479746786 541350123 308744495 606085454 225066419 358917734 369817552 481102273 133289504 451504269 152975777 743848632 775967287 757213857 161622863 933759183 764898290 192539585 182135826 1041475533 179028699 278144029 331967182 526287223 780906706 506585053 354031186 301849939 734438994 30195029 657851535 1008390005 870484748 452043617 90214049 427958976 82902730 119502371 667540128 828718327 85924574 298927049 429531951 418365841 820768918 722903558 764921863 859480763 489868768 306450264 352311053 673378545 25575885 928139018 197702870 56692015 894628661 917882128 989612595 682034996 458708646 808637688 109909004 306269232 560861149 425628133 897671047 457743053 251406340 491756808 776208456 830084670 89920075 949346907 736831547 1002960712 803319820 244103414 565360267 22011683 149535788 65455065 183121010 555144733 1072790466 17652576 233011925 586399382 44627918 162529003 449411602 651025565 328120245 184003128 647686183 370063397 989693892 175015990 535412745 1066609646 882960889 733890652 1037000614 266627759 1122574 1714438 467283020 969177736 281181405 22853764 367879857 1060294806 662871066 403122956 156043927 960286295 929093856 637696812 111013400 534128243 489831037 222605338 779922580 1047222577 92530424 1021304784 761799500 382307425 455613920 10740126 549695477 802600694 926186844 970341032 927391138 280277248 323702679 565556217 718311457 379495331 651086826 223388948 974015616 28970997 261830396 778754821 1052057536 325531338 801270454 517173093 971041204 797464311 139355907 193031978 579329612 431455561 627155910 353074457 901297275 990295535 967570750 97710776 251003233 446418161 676328823 697511660 824252337 307418090 334724075 610556402 484380910 685322023 432561388 53013529 832586066 357522124 753691113 169109429 568196202 621088626 567715538 57473011 916035431 241933846 153459830 854216742 533442370 784910096 26123469 100697535 235943640 35766918 219000705 351478286 688975440 725365810 122118470 633690830 1026418480 89821266 557083158 38055705 802170790 715004797 485388649 420577633 848965987 544785198 927865756 630696269 943612730 800625107 146795539 673574850 348200723 74903429 828786164 782701805 44646640 139333643 665296699 515894943 698595067 67147093 892760690 187862032 119316851 1038249966 331235007 745909392 172856160 143017169 663902083 1054651465 283404909 974068749 996519354 435169798 142442899 926225197 43488984 340419896 833216624 548458703 98625586 898776270 911238666 269083431 957454007 265631442 827021479 670961003 501251382 42914224 592053801 997134851 916780799 595129131 519914451 101853909 632638981 861681567 212995731 852852184 1051767405 402495240 12676595 42439484 731687136 1031838379 871836403 239633328 622485967 239644691 1028391607 839296488 884893566 663566838 807358171 1066988895 167357269 1030581708 107441649 437360941 546295725 622683339 274158700 565430881 943656261 872658744 754987074 383142533 662505689 344633410 215181131 852659197 933745141 336548551 843397711 447055103 44528791 413232804 980153930 459038410 249002926 863528840 279401420 82434999 709702512 979710950 402159310 667068951 724227975 148606252 269675252 589885687 984990669 1067213073 672623578 703871095 433952279 422340433 590571995 667940969 43657072 1008750742 747826355 459419569 975704890 745022037 880277013 360090212 368140728 345846335 491079984 620890665 858905503 490724590 570124502 776928323 658514124 968313363 209892378 467634772 96168758 821158194 616390297 42929294 839095379 641871590 778000603 247268235 98931267 875443303 211422842 221948232 557242081 955106508 302665287 1056867807 350611880 781354765 287229451 289313283 399956844 271909345 872847118 951009462 789139077 594095512 799691650 900637383 628180178 461974391 356182984 693604547 375184091 27317744 146019303 712638119 658884103 728227835 856198261 569618908 935247163 549619020 341678785 649107411 5195335 1031064232 943961422 683049913 614683706 1071532202 90302980 106126885 927444000 932242050 168542878 760007751 895213517 847956495 37921660 882259830 411588598 955152788 1069826633 305687112 999718779 7905450 746738761 294126676 168201722 756768089 347475523 785715826 942086661 297225976 580832461 522174289 618247283 136472193 1061661675 1040347005 399784636 479003829 185073436 494169224 299072570 729241044 307718523 494643286 353640600 748011435 560633836 798561467 765402166 75547604 332071644 65336193 86088565 732207001 773515298 197134567 93803518 270613462 891600287 541376886 205449665 855632661 463964195 391909197 187065870 543524529 645624582 274456316 741344387 282625063 941374012 935097202 554784888 50831571 803181623 397289266 893090535 445962391 152220944 137960840 112442291 603483385 619613659 873187303 1051633000 1017175618 46153907 328112942 418148547 999293486 93870531 493082997 427347491 672158018 470809232 615391686 762312757 382127923 462739393 240340264 89631341 547738012 290115746 14686042 1043955847 538495072 363753149 1071800710 1017253210 7715019 683370908 873987091 34153028 119690507 449469129 353455680 898239305 410078084 699729459 730456491 360181393 236386378 363976684 197153907 416814892 481000641 117929836 876038086 151921590 273062783 214586315 892222285 49706153 128485308 126204525 426335406 983163447 128341167 704857100 209554830 294451443 133424198 226799101 671143807 210765054 940148595 761186431 126977632 112144126 173506978 622533292 655274395 243301192 28806457 6347795 233810393 478507820 282127027 398445642 935764612 904865129 1020985282 930559630 230430061 608134248 82203835 996197482 953199716 829519012 183140371 863404360 425432520 64464192 14979150 879098817 783537832 320355921 623383814 462819913 1054318377 688012500 1054687853 152287096 1027028358 610751217 402853541 28828028 151595015 581759957 779604691 386003473 566414598 720399515 466503888 42147387 1037946399 314068939 212023575 716685623 1064247562 808457756 1010810091 622683237 258515798 991166934 372920378 633633754 181314327 50253721 759756765 679767430 444717903 828223211 882731277 579370578 657133325 904498014 663068767 20230842 488713397 14234220 849275302 448577897 427894804 1019941923 924690159 365906612 1005600322 750278485 686540136 215458432 214546551 807935878 988766109 1037453247 588816101 746510868 504673552 612748086 138155392 817670431 654135114 725471371 835133803 528414569 989672070 1060229086 281732429 468313322 503319818 284605067 628196958 574167084 217703248 799054971 742086184 348826841 518913007 241927470 631048408 569057769 960289693 9799502 469029623 280995160 668527258 412569993 919579399 374549057 36178330 185156328 978960768 329226891 485420340 658279925 1058296600 4217640 865616412 729649266 545296953 835951893 289117771 621771868 391400554 1031017045 967299990 758604054 140954417 617962736 562276858 469098476 810040055 171976454 808690336 895161938 564137724 172560059 628492707 700764300 288611971 428108218 752149702 559865507 63415509 920665493 693476351 838562746 642399523 431257111 949339125 680426058 300805730 924671095 750699791 168947409 165750459 809243703 59122802 621555266 246449068 734934084 378075861 555841920 988406276 986498835 193433831 304832211 599484269 312688687 941104900 666090543 989404010 584074980 94655782 95942438 474620776 964800253 958107870 94186680 664646036 504410805 159658005 1011144027 931030258 280316300 999106888 302508807 759872595 788519156 897038333 838350049 290879971 819476713 991540614 3190358 1025933574 727455340 8338529 896575245 473625476 458083572 32156381 440388850 345468417 259350034 852445325 660565205 673088143 106660 577267501 888783255 562138666 936190250 415321394 406279051 783063938 822430838 641404535 754093995 895753326 784749736 40046533 490014196 1032759183 308609542 469883665 336970138 314710570 498183743 236914914 123743064 383922816 862827316 263464391 669154591 1060956911 552362100 466361608 383146754 870331037 569442431 880650363 682044322 94354521 828872530 298627089 208096637 1062495868 152080597 724066873 493002862 666632764 781139358 580934855 1011182093 32927008 285266392 416813477 545390768 1049323994 404593704 925318744 1011066905 1068758156 939249644 104255401 817608106 471653238 889497900 940171608 925984110 604835449 422758437 669178142 138600998 1022240624 1057238682 755080092 344903217 1049884483 405561539 1072546811 645918416 770482282 176786506 482266658 270751961 991343091 246826537 59015766 777049260 490768037 786281997 11142306 389435181 247133646 104871546 740831414 15508500 285676128 50823593 486347439 538007054 225401720 52715416 445470749 841196639 753422409 363235667 453015230 956375309 1052309193 508638128 774801759 997002662 898626333 1053084284 935050807 888294253 880969317 768803981 293806396 286811058 90847368 1024860386 44074100 794228818 16945092 797831896 35496851 445074119 149405367 194070786 294983581 129997777 590539743 541626022 331280408 241315672 701263853 106695409 577214304 955536510 825739030 513780922 946764275 64805583 1004608751 232193442 989958527 516208008 1005712060 304085328 1002132187 576486035 205403517 233365211 698845726 461127070 712001533 1002561768 305719798 981194510 364242851 553035421 938328021 614567181 1052764647 806769684 740438179 375140471 693556086 247570632 162759829 240948831 71512359 691899835 407346736 48329917 829206422 161049805 359294719 750127608 772726586 102886612 369582698 1070070304 1070592448 923251515 274241174 82389928 209335310 743062399 656294211 115209489 763650708 971363508 529969823 506653845 44381552 295046583 88555953 268132704 732585437 895931430 227168569 846186598 951390286 298068873 852186314 369117755 600406714 62655172 598629657 178695954 586626362 1024521657 354150468 797309030 834463486 366756736 713062259 344699753 4749794 308955965 897147115 353011096 98988449 516513745 6804474 892580427 372394343 1038585374 354393207 37396548 713627694 395142720 1042730084 1053338812 500204161 689363121 92787344 586084524 271796922 565473367 798510135 645347646 183234644 804050732 538049758 138470071 1008666716 1004912132 160420873 278834913 376755765 176350020 135081352 257432956 865728115 855538491 900408166 30113085 727473282 794505111 700443429 1010664946 648325923 80957630 228308241 1007363286 713549888 808935148 338710788 338067288 795364132 370328897 27684265 197803306 67106378 517251917 136231605 692075564 234938823 708919385 850922664 26501942 815796186 1011658127 320915460 770431179 964181 183413909 941150135 582616452 45276753 857960180 813911533 93282615 965086668 365044751 504214361 782222150 868710367 992801779 402759079 647406822 580574898 112058814 148036290 61338390 642963636 17904947 747331556 285498571 471810301 291053835 111006495 664190249 1045486883 895551759 486079959 532822289 804575856 991345150 400293036 546988072 1063251356 356688086 227777344 93182823 1007446455 459581821 142606005 921284327 1037490483 960080409 981173073 25348985 1055506264 141268613 873185493 1013252806 852569716 497758882 985471678 564838173 647591436 657282578 797569333 333359539 438340691 826053830 973314101 841701946 974048486 52683293 549388000 998246442 97855492 139525309 24970929 195247319 225585926 33644029 771316214 528944300 29619088 176612459 993983575 1029869950 776093108 1063142406 89255557 869526360 337638307 349495467 444583147 677064598 870696217 1014367894 614473553 1021832157 418954617 715315514 1059299467 705864948 897574394 926910242 659053878 240085818 710992306 887450528 107546321 235047577 317090738 460332558 598174719 64623821 661852316 956583513 139115436 679265378 200671747 112826384 97299752 858942348 1047660952 448071810 366090599 166171650 323640854 558197617 1052056827 292991074 197235310 1031161415 1025307858 225011995 651673790 669911582 243227275 714140043 740932780 248042386 223846789 173818125 136111110 1019320435 433352912 101412575 823031648 304226469 567294545 670914899 1014579742 425083718 857351681 107189346 68955749 801063739 232084218 1064301858 16355803 953329289 315547624 74032302 1038581370 1065044589 1008728278 31639736 975152031 122840756 540192590 73399046 872503874 623757499 521340060 555793975 241202749 329240488 587320263 848406610 517074207 331182754 533862987 99494538 246280180 129108101 255849903 517268867 1036086411 801206534 372297660 471091308 1003649295 457919037 851856238 123690143 623702916 1065224794 823187403 995125920 528553067 1003349738 1059447680 1038942902 421212186 747991693 837488518 16204055 468496261 990865778 942872939 796503430 119877591 777185538 587587618 782590473 393770442 164088403 898849614 720601797 55141325 433266078 457357384 461660409 414919407 19949698 1062021332 144099245 187353209 295663222 585714912 620383565 401332821 852153899 1033460558 814226887 810047963 362992305 746829074 213970736 1040138376 424463365 212693658 605973183 112897322 612392796 141041503 1040526069 1032630513 671453454 136966190 359025828 1055805130 605581191 485770653 804935330 256534619 492823260 1010083011 369900615 1005274677 237361523 857621956 901231685 416876277 934785993 873681032 753777714 782021228 607266459 329331068 546035001 842776291 666617260 60041985 513404744 956982690 1068110205 634643829 783868911 843496473 900801290 24365133 358128596 1017986448 465237134 296147510 743541406 269675187 454289453 39461095 248727394 468319739 733747000 621343262 972667846 320430897 389756944 812745052 130119399 390411551 853235842 695032599 850602480 589075118 283067082 285717600 989155654 449034478 297096820 90474629 944609131 412987047 892044981 123188886 1068973508 1044655660 383344233 226504019 988903521 746518617 879510389 432788711 735952065 132179683 472008932 146433403 725033562 900457789 1033699366 598078854 134601055 438907962 525067220 578789659 1070889128 984798538 904296047 644086923 330360560 780845633 90570364 701354340 277533826 194923018 925241720 812549525 953106617 216774308 300765851 455265692 935744224 403294241 199504731 182241885 185839366 820999954 639651698 569029470 740240144 561274329 177953967 543892855 648120293 582531606 992477428 641550271 14300909 204364786 1055917260 446748770 29324242 825582331 296558217 597488091 1042550298 665630659 79618231 688632005 24737358 805926914 519052203 858278805 205586575 786282964 232200411 668192063 500688900 774778398 96159582 208500756 748181198 707730246 630228978 739866216 402374968 927464223 561749463 170853808 79723342 300758670 319443458 532654180 28108044 528525734 760271635 430274381 477487054 994018470 621379618 868312626 205918129 1064324787 990018689 53832370 686567301 983118493 24569921 937929513 195743746 521396831 274946213 129663267 850816954 889476496 703266339 547777335 128960747 671336939 653890702 1052371919 956444054 248097511 782103901 11859015 13976171 781062309 527729220 200062436 1069441665 849951928 18387775 38451573 575902945 93665983 918521496 342421770 1026006415 675916983 496473842 842586882 151260019 887753604 1032718716 631009139 143567023 704623754 572015472 819183375 696169568 857373329 28322984 1038370100 505633416 656012798 929097380 83339484 3701865 254571344 169355165 131519854 709330448 355506865 832435116 394565624 465505460 240932578 11937904 408766858 376474688 857605031 467445897 680831544 984831688 398193323 912456416 52351535 551158946 533760583 836155563 405219421 561517519 968027825 738702807 756941932 137677197 830082409 693873321 913907045 305935728 996522919 739226905 1039530537 1052313129 319828049 777434531 657498029 815914404 580500442 734128182 475358757 268309941 577549671 6567432 845143529 513132827 346471722 478653232 200195439 706902815 328438132 358349786 256941860 672382141 482532160 402988950 122476652 701630915 12195175 288726113 1042992845 969864912 796853828 724462330 50942216 546494448 499490332 468465368 305016351 405839682 807706383 153879880 539160876 648623022 898985333 89643067 750766332 787130269 836291524 390303787 633558779 339557442 835156410 53565776 69715025 122240566 282156057 772016255 439151942 915246651 554690348 609236859 667452088 59962346 82799068 1032454603 485903886 767955356 1069478345 1052186697 390936274 726220298 619611209 1057572564 95159732 749649123 795681962 970751893 161449921 846143552 823312812 755370865 12085701 110011811 748257923 659011615 872742981 37866017 822765920 620379468 930263730 846588872 588018865 363972395 958333373 317241255 959682972 217743425 17694363 922068547 421373543 887428433 298772487 156582455 300733169 1061790338 687838051 206852354 496613796 168971152 709558775 697920631 400792116 40376583 95285792 158526948 310868867 379869286 614978845 600234580 243219511 501623406 411715322 704140515 266201418 934675397 346122237 671111278 32535936 322904896 83083715 808215670 1041370100 421963447 250009599 700106059 991803833 1039166330 175855222 970946764 253769318 481188955 340761757 252245004 846684527 152870948 379574686 587922993 835511716 822804630 389397767 488948298 432064656 902244430 910694293 577045469 506047014 350778229 601909848 972027495 254683738 557732641 717714109 693580485 877204838 690708456 646948536 516811142 619787460 759794405 411370276 593850427 762994331 921112028 1031705447 1040667399 563473387 1066645693 145989858 488191195 19887673 696853183 507346092 227392726 246431196 778010324 570961990 145863932 830975067 947427594 677451946 488414496 760145435 190819628 439836050 257215260 773193670 1068921713 529601072 2992748 476100789 266437030 506420623 706390188 158061513 277126586 858184643 636263049 102844067 953461766 671770935 22635777 604835795 755825187 934513916 829094795 490983025 741430642 285836579 563863865 198774775 464986584 604363937 404256432 874100034 310647723 777386306 598540455 327831996 436024587 248314896 1043806703 161168430 1011007620 691217518 650623578 9965531 812297459 164319301 186067849 551019850 155088316 324041252 731032984 987783510 559986593 827335457 667607842 450411613 726149401 101360198 613784645 50519429 315867552 163178980 310369945 987282471 804949841 359960718 344152844 361151938 198447079 190485127 447925522 587574688 361535453 982396928 819080274 448664189 948768005 51556188 780312129 960988793 120842015 922681228 931240320 572329671 307601181 212919980 139063416 968617640 493870294 298588299 602225700 46667858 550153536 209431054 175248690 122825792 1011504818 148079994 203338588 970087967 282562183 16178938 920599906 502798608 935602524 517687891 494406892 395741046 635118938 785478439 1011280423 120382733 573557906 207545972 542022102 364993428 704710731 441931454 230548855 158766024 258469813 682674203 1036286652 122077348 67519216 453661955 1067701645 807958685 1006850847 719612892 36820169 838090062 994486543 744589314 512600973 466507021 111604483 915479089 830052731 461056372 394935071 443804869 828856262 94454101 441078932 681171159 532983047 288618992 733663360 628456633 1054733096 1000386944 234753591 223898831 493811395 36766444 701689117 934725350 809874167 771061789 802675981 511891157 410802004 1042975545 1063743250 776390412 76775602 582279341 929331140 1014150713 490324667 434215525 778675194 412141395 465595436 446043273 511492595 794393490 934956679 980265487 211374703 874678389 2333975 131071527 397730053 745210565 472462974 812084465 661247258 402391929 408902812 974130102 750323071 88354809 837091483 1027607100 311417209 990586758 122479184 286948909 112446527 631091965 518704486 521372928 1010660234 415198424 255458299 765577526 434709554 375878991 228244140 564872274 234752457 873591256 588829931 698534837 359543621 520319648 699104115 946101854 162625264 810485144 83519894 727069464 664730059 404993521 1066501159 108581624 216630933 357320227 968388938 17882050 164843876 371794547 1035064007 227931445 704197976 455925068 667051294 880477835 968198793 808732019 487824415 537873869 1031707369 444872882 329230555 546733704 189179386 138306738 770889660 948628587 75258118 229722490 901136595 357065683 512832750 948873102 675606140 851985496 875581980 987526244 496781153 156254049 411968626 900803234 88882874 599291873 865034570 383106322 663015391 776495307 416052447 66994675 781687276 218285049 909625816 338923301 447394987 1051688512 901044866 667614648 19961334 1072444625 657140025 791826525 946316456 266173374 76465017 594481062 901931377 110105869 615621755 744769891 54421280 333414874 914178980 804319277 202169454 1007546743 374289191 395860782 768004266 168891603 408823635 207695634 390112654 217278033 446897642 631349792 24396127 585051398 537062461 489470910 62122315 602546418 271605155 893131354 971357297 1016409 218553478 1015402777 528544210 716280167 535812192 619167571 833339668 562692676 765224223 482252229 556576605 213019027 402415039 779017864 40455194 371319221 494353198 99592470 774374730 7531975 5322052 533097782 53749214 636163971 205376553 253292593 798734188 79719200 947749744 533363753 779187796 1030268293 879773163 793827384 672136190 972653391 394864506 212192942 909834826 863081688 182135772 939601621 356767556 228366464 733707630 838029876 613179256 773208548 422475981 189565337 736876270 606651616 1013591338 302398733 613679670 255796232 911014717 204451815 335568184 782597656 990016733 1035402844 300578567 178509052 52526569 938306891 79657029 971085065 1059863601 642072023 864656248 27291633 720451671 1019617319 71964974 816946319 889141386 594979451 387455636 59246877 949742412 210890712 770802142 501017790 308933538 909450665 861593496 787279054 54270046 120506122 873096566 1029363411 235803906 25721158 570770091 420201052 705558337 319072370 604243594 278573642 30942436 824166701 814209809 678925724 279778792 339084110 200947054 638236236 797612807 413502314 403065194 247606792 742164066 406966004 680747522 81134612 152300018 504146125 265421122 777032723 651998385 208750132 260077233 203759405 908358164 906501332 980074494 406396312 273801029 957736452 16777002 505187309 227680135 312438570 780427149 719305713 421958644 239777821 376337323 909285802 810490409 60875106 262946086 469519793 160407107 551379793 256207552 621139428 131018133 174640758 1035897394 132096754 655603479 434193172 850606939 390354253 9523984 494324990 63702387 895732172 964698563 458387966 261517475 1061723974 560813434 32760515 324556296 848048174 212195148 879493857 664934410 193073556 233044771 606784612 1071420923 999730808 945872486 1002315463 909285590 900306950 205525996 627906398 856661747 662933852 488953935 262573438 440320478 196675762 1007275481 507293562 752569544 640822615 991544960 723055191 634192330 177212217 36474964 258849664 726084825 144484713 374961673 463256192 607935305 1056410759 605429371 1017297913 352410046 194749117 92652471 516791975 670681017 390154226 422005097 451157718 780432091 486530805 664570963 635151423 938436363 270453120 967250732 31956662 388528404 1001578927 94619850 34455077 437039944 697542660 25741362 1058560454 169378985 835158017 738424388 439606974 123156957 362671675 477362668 310832322 316230615 171444841 380137382 661399061 1016399938 789016797 527160500 381505775 1034441596 72872500 389275519 135223869 739242335 179338258 758762044 632706320 619694578 192082832 544068508 442835210 1013417069 194454586 259004005 394254051 988118232 997849513 245626686 858528511 999703303 595934398 588672002 871028866 891304805 346803213 1038881623 256653458 38688442 750116714 435524810 1040782478 705709970 209167494 772141519 774024442 269570129 517463355 143332272 572850864 168035831 30706406 621066775 476785385 293008688 514767268 1067913912 55077634 1020060168 538695981 702428019 1031657389 836913326 437979013 717103328 717779887 302845414 655605918 1783053 833081453 848910922 955787112 419986788 228817147 807367544 558718006 293784852 969208664 575585805 512234910 884791097 846679122 346507323 541363161 316309864 320167030 9165636 168585891 791374785 315206817 684791960 437197374 368267510 307529016 888971564 21281338 400222581 288818822 117275491 567942438 91398164 864146573 937681069 32931032 573868698 75341690 982976160 382141693 147307102 366019703 383077020 493503802 897372526 192349528 343650533 52325809 215434345 97547422 181319122 120628803 374329946 878044730 767821854 29022008 642144140 3573425 350981054 151749927 316487103 1026954622 914618860 115285658 855178125 139847084 477670675 654467643 7438912 470184381 667331318 545464155 70195958 209751918 566410508 1065924994 210802596 1036919300 37645173 868451759 505318415 776153458 105786213 588015780 968229815 501475945 18580707 427523561 823785109 493328553 434513556 471034026 403450883 943155818 320205065 250161763 847471659 218784337 707254337 837000527 291678803 431467343 711589555 321996054 795744046 572057149 877391333 306035709 433486043 743392939 827614538 1072458060 534149299 1048226944 114889503 130912928 1015736452 446203473 739903265 1006533382 680400403 422201828 605329313 874872396 627620335 1064670347 11467802 503511441 339988483 226159826 177212228 766048257 632955557 1058804871 781058620 458537632 598302223 324271740 220279301 447462978 902333271 730661548 345321420 523388920 982887778 75347354 911741739 265368689 307618947 460914536 813733558 165926588 38623869 740429481 124150251 806932614 399014405 622229310 241287524 337938101 402313303 388446301 306645631 513831651 544081627 660094504 113310686 813706544 1051152187 922227536 334726129 299165572 823891169 145773102 210045691 452736971 359794001 107623063 178182595 541121569 33476416 937620001 885737783 591235168 164299489 563415788 296463419 223540448 846226857 996069746 222509462 953825721 907953291 770397780 645976353 935203916 949137639 566552521 898485027 826001666 597341509 764460076 802159658 770833250 993839510 752816986 326279245 38987632 655077040 151043713 192599331 65024965 271136197 954214241 1065188156 498627426 456932061 525669410 32417843 516918249 167371083 1042974826 87640059 41133191 576228213 44375149 102878515 315928601 88957167 397611232 734383940 567714745 162739267 686805457 327729901 747119031 1028697004 559769292 790078513 822676774 304119800 860379693 407909403 193904870 612270007 663942910 833708328 831457535 171353042 464232308 1042593856 660422177 268328763 1064864306 708725716 787419647 627237239 568176271 108405416 915329 408078898 501793596 804182502 437040270 768567475 231748487 186974752 409057201 129591484 1007243606 758341554 1055427743 834592030 991338586 61164467 647498978 217280946 594751213 829636950 2780996 82804563 362135445 231621552 172071044 108752522 584933993 86990938 622672432 222279904 1064996338 1060023696 1033728911 32200958 726121785 2170727 346430330 1009855834 613999541 956794434 478874245 61590658 94567147 299363422 1017287226 391463397 870653964 844927356 858681264 121466009 219282529 3653330 288866715 441508015 66533867 998531922 284779544 990880411 296646578 660617579 244277842 643632364 527893768 1073136835 697582451 690542350 812175903 949546592 6156882 627409500 684859526 100250251 807524783 771241582 935152472 516689295 366757058 1073231970 304418724 1015594058 446104089 87405346 1060945629 498124035 687835930 470865434 383656071 416467669 252674596 342119496 668454599 220006271 127912041 168926838 794581096 1018398375 1025099049 134826509 425780570 133248901 1002548142 913583797 35548450 53813275 433690129 260913453 1069954691 543586705 275104013 631103165 93831334 1038993128 231063788 737386943 1050881470 993429129 701504053 482330269 364726423 762781969 78927103 626735151 182548758 988455936 77496336 654393009 305029346 1045258421 871128751 404271249 38844101 9400726 107067679 370496930 75034718 843272435 766009600 684931579 821629082 1029422856 978420676 119519419 420825822 895182532 550994118 431600753 194257702 132154961 248607217 329301347 584936888 537022559 356334510 225820948 701788243 223866028 702057890 926728291 475525222 769848561 1049470356 1036692201 861556397 28513903 845387704 964480964 480224237 62323732 584143223 727722865 1012008216 789768982 395304780 817306720 446554727 540386617 222439851 497645340 1065901172 670938209 556559895 512132684 965798189 643043321 99995089 999686329 726603355 570723376 391389770 751706275 709397423 414188352 74983822 47355796 508370796 1049655995 987980458 641698324 219385003 238480242 1038991659 644111828 176619704 30695685 989553734 339849802 391030669 240472209 793048962 661968646 656005973 475583985 20611213 152744344 390014464 42587698 216239821 933900757 299977779 504354623 901287483 704039766 190518892 694001723 923405069 331846662 997093091 560291743 913144543 718296847 173028650 707121532 370199593 330188223 397200132 588621394 821303904 366762295 58326527 499211731 1016316219 513929061 966262788 436549097 88118605 84258155 302841441 971469625 800896984 1033716175 32011350 405220674 452028889 416981426 319924217 89291197 1040144029 449049523 364004161 401260437 925488771 150647429 448438754 101098813 1050037278 709235560 705182702 165379278 445560496 8441707 760927550 844937396 325816888 460032042 326717146 108237842 668740475 782337307 150431992 803201458 945043436 744957496 310295809 1017853359 836221358 477683702 968477466 743823014 1052474109 1066294100 83015431 330195639 16020219 914017984 114985638 420178891 392881559 567344101 430849820 827423106 725644436 261409157 701321900 667187962 386383272 296467927 386506113 330941648 635662172 733352176 163405692 914606472 1040441189 420368909 851931764 303949526 201493408 378167371 521231206 599685132 872556588 592328162 952362699 811800030 910444471 1025414941 7604373 455971768 882096253 274142652 678755005 77935757 871775029 908783880 774530580 11373358 808135321 747818097 570496970 738647345 757676892 421860996 920555467 183337439 527190656 529726498 970540995 545053892 382799156 164936562 559119450 754065020 992288306 717670176 895046301 679086077 518825118 836127357 470596799 828080482 230921520 873695114 882672774 480668348 116858853 1054735409 428510842 736136723 129757507 79675727 262340087 154038778 760465633 720628473 820797389 494734918 938123544 970091822 368181992 844633281 711955725 1005939072 433741950 1004453155 295779201 622423676 478671598 1014403398 402718252 905886160 790824850 131129539 352320181 401018708 124004876 960381236 619012612 250459889 1024085114 284535168 907975073 109902593 94018626 826493007 499909920 6724446 557722967 575133661 1043419515 386620747 761951433 1035987064 872297997 173327242 1058212005 517230031 173611154 1017136528 592435048 280178549 883063414 1027593214 150062099 64583222 272296003 906251047 421005215 143622325 952034731 765279442 412348722 897485850 83434760 901637645 228313265 80586909 754485115 336166868 405627936 387728948 266531414 196648840 731283352 211885362 6686368 453396475 1066183270 912003811 971626412 711020968 674179925 1056076280 1032211453 307677719 806820069 438650122 456735527 7152020 709243026 386921344 417837416 66173690 612837760 976786744 544224363 36036219 427943079 607945871 237522191 681882982 520327555 29024218 291039577 256025788 605163451 149732693 972811893 141467800 829854064 124222309 858280381 899855182 813841338 825478256 289080871 1059775792 221022756 832747507 659183905 234355898 433481155 904789432 122795716 74398163 127886255 351803096 743769083 411190728 996738068 1027827594 330627119 306695347 212622659 257692253 36307051 103988270 296113258 617750007 1020666519 797498412 770245811 389081749 206494594 239422076 564401569 135033200 457218386 384561409 678339884 978983424 976015884 125083362 262532476 436545586 20327978 653437697 428774048 424415442 82269225 709174243 272002131 224374678 64610368 603589850 259113732 415774972 195256452 1017606699 692280469 771546656 657462996 875274553 691868860 529309963 374128789 917179894 958045671 185618877 462947004 304632375 1056926547 431575008 614590632 992258275 331847153 641898796 326027142 54370442 509797246 826442315 21984240 622682215 1030619692 174203103 94252513 839132973 878313146 955828535 343563645 1047026352 734751468 112504372 308523207 854936360 890083444 448996780 214790547 974832902 265090178 734123647 915460652 893128239 218412484 664307596 663452448 566662495 779034087 458624200 218568782 875095691 463391615 881835855 613134344 33556782 130736081 387632847 998271877 549421509 519971131 1004016985 567040296 1001115987 1038399976 62340493 412140774 141429970 836645669 517943379 45949940 354314112 1012601680 93734560 268397338 888484669 565045958 887749629 411207165 942693280 589851202 747233434 61291811 572103517 944018848 246998560 529146105 1000292092 257094997 282263302 658909121 864102559 134976537 805868789 554157789 496692486 987063430 453717413 1054711428 444273760 616158628 319215843 769716256 856400297 239736895 518147145 341273241 632528799 824552019 713080998 177859773 192224223 327583465 477210554 376331674 660392488 472124098 421677464 882797234 976438572 1452245 756627819 627893778 340558511 625859070 713407493 898072305 207017135 325059612 633713270 763348323 294014836 341242584 116779257 188093710 545418789 278523423 6740822 628877059 685619954 384829809 986582622 160100782 959119444 359851924 598528394 669911499 610114172 132966485 928738942 407946128 359759597 982121479 702619213 496052230 1014529200 963088243 145103437 1070637603 110424557 354463104 943296155 1036044720 975128270 33259974 694065728 378776896 52507710 831833278 640212239 684446603 123393462 684001631 714447215 78473819 302782247 878721695 764496162 182899301 141004544 305235864 312903166 214508031 631271411 916958817 884948268 595253426 703823616 574942480 475043815 718980291 446386247 979576278 427548981 289093955 265939812 95897669 671287580 899276617 1044832545 440355206 1041594886 488070963 478633847 1049462676 63613353 632669768 777884279 480916899 95366517 836053488 75723443 577116345 638686201 124960808 1039919543 82777970 801848963 711409658 881981608 282307542 87733167 838844350 542396351 310181900 635194561 493503652 1064193089 1026037438 827749942 891896404 12277356 648141750 923426276 679810264 486239560 140892013 780288218 154298261 227597195 916481450 523120801 481571219 473515141 149478000 970839377 505459552 1036328186 818792777 627425800 820295366 1049479841 162200947 4662596 589722049 1035172550 27110167 333940719 1071810948 997950608 678069083 125273053 688201149 1011367678 371526184 674703825 105063636 819963840 512996975 664091419 722953417 549769138 243365536 716876995 930023725 493885134 511906827 882176816 289219694 51702576 404668820 911342581 148697430 724222030 417654287 309454723 503904014 431714230 808729370 363034495 1055102396 575638911 196733518 47114296 65058620 512092312 603945594 516177115 882728013 973951074 750900943 735448280 1048013042 209513109 402857865 856614550 33981114 263067772 33991967 243669790 796194927 603039041 592043951 698814432 465393257 1022190933 331887160 242418234 518318862 314692606 904497030 470542482 55910855 227270529 128012190 978731691 299977954 1011661274 647419411 703069295 958040650 763295139 603853036 670725385 142061994 289839981 326007882 770868133 870434584 675127017 510344298 968499164 1041331898 128248900 130495796 772515489 423517138 512823984 663262179 422514319 666904994 139385112 877625273 255749174 697539945 75497858 398086618 228630053 537729102 444323185 978246466 1032948449 305031607 894991919 950071557 902930837 700345418 830844465 489795313 628654925 431980037 584127974 1067420029 330949159 676722293 590576687 711997544 253137728 793672591 487994440 935128446 556726541 788317593 484823000 721794398 446230529 899151183 845324861 525431956 43300195 843046760 357243051 868185031 569744043 373291831 980015578 965950149 268868056 960044619 791506583 303189860 889463409 635140694 63007844 254795006 457521865 433508740 230809387 898765264 1053129773 323956853 247092080 741628037 476622568 186730562 39753030 240584836 89963428 155441074 848227136 892935061 97623554 969059690 356951214 208201502 629163588 243480086 465280969 115092646 182528547 113264711 314467618 160866051 925545437 384791786 582710866 627427989 383385150 13652239 222270376 113326142 233003614 281035741 445170229 422184419 833907230 410629589 905991056 988860407 185772041 812043794 808171511 586522700 978648701 634237689 248556063 923894303 280719258 119276437 451779900 64186188 312713554 833174739 357521101 835644208 434381179 73023605 261479107 950859179 14126685 307531729 462845736 1044401627 515256609 323552878 786325216 449514874 157664579 870549452 761708952 987965282 88146598 676874875 132511863 635170492 268747118 347899762 471648756 767912990 771211736 323658221 557194096 657809063 890524202 220087988 472663385 783355833 258794686 59369662 151004320 603709692 836109473 921614197 8245067 281393608 717648749 417550293 1016981715 237231785 810495814 462723920 894389915 736254174 606866789 130272192 539213046 859399979 429268858 1028788827 1067723392 422102084 985245208 140168564 439160667 239127891 741006565 789184498 102480295 644346859 412789877 649578154 116263856 734955342 217482671 713306254 1032332659 723565685 1023878367 234506626 414957121 904094016 935355520 1020311261 543288195 161226928 213903456 13929336 845698662 974771359 1061055878 466768940 580808386 1072434453 883075968 666188755 198456176 594995523 686444163 403426602 1011691117 646728865 816055755 997127572 1023308408 1052816695 841661601 827149990 771971311 1014828241 807787281 463797595 294378018 601896550 559229409 311770930 694297746 1055371132 427132133 982951560 193614700 661390211 631505203 992889055 273370705 884526956 228493337 172214300 390227221 895252293 1228890 260233994 614964837 1073279278 613511632 452088891 819197981 310914909 457070253 732618814 811308616 230621279 502579598 200460850 468889331 32020356 462333150 721662210 787622997 149596261 978844594 745362900 604459517 586038572 815946378 618912374 193419934 457653511 560342725 875240385 199459756 35264039 796516208 859202828 10569371 582507978 878078462 246090205 708975193 420814179 1067327300 860223307 912022274 17941392 996066587 163563368 756761574 622777612 516308661 431846086 19110752 54860591 962853388 814542274 36083129 872071698 647319732 1039640940 911689861 106867696 593578451 363906855 309566078 748479943 366328304 175263324 548442674 594562185 282902703 1036322934 244116588 700885752 814304291 676761897 946039340 456109350 955167460 787155709 730553404 732330920 292462469 379941371 67507894 645746912 405533494 566957712 758669211 434564770 286595307 684936044 1033502084 941139048 67950955 167807132 228925168 978889637 942568084 126925823 73927928 864670410 550750668 354383535 530355823 633330157 735972441 379765199 755001331 7242163 559911747 863134257 889227391 102295643 710831095 122647890 623002806 731231747 52296276 379375851 396996008 406946131 731933242 405809663 212705923 1020998640 972221051 637337505 773876154 314387043 587122174 179833329 974989476 935599693 720058098 516709294 1071640471 880903236 949159364 294935298 146067963 752486200 181177531 41627009 76160164 1008966343 124027963 882152226 690348350 247658902 908459132 483062357 286523269 283884428 995439183 553870364 799828054 346864400 975782707 500044678 468807636 23660508 67238810 622399545 817901299 673433908 657219735 1050632028 338909176 179222536 975837740 393278885 1032932599 576993532 196208111 1052662254 8263382 754676646 175462357 986203008 321948560 327789584 431995822 806488344 1024023122 907203855 416933545 325573327 962533662 696493923 829137985 638986309 929418642 201111925 623915209 1065722162 38578025 498217869 253572031 503634059 716995635 415889353 977287341 912916406 610104527 891000431 182785922 277095806 468837063 496602043 710223325 401974797 1019994911 620619242 139675341 228699470 520036018 189109634 189537706 190099014 67190924 1046599603 949732934 182578533 337704426 846163646 920089971 370351681 1023510183 183377474 989331139 644310668 283027729 319124107 877753812 891682650 420956286 990728530 943216065 302983126 166952261 987379690 167898252 312899702 893695193 944913702 940938039 618178052 670455520 895672881 620440075 686001794 314088719 598764996 969152510 556048864 133136526 11426549 467264735 342022347 748868496 784920807 1017980247 313593984 990035724 1037728702 173661500 753458608 488929904 893662417 11425743 291533542 508312557 262311675 330870133 973835383 471134063 123749387 248583728 184547858 147285962 767651557 380152847 380972650 77871944 487810957 212215559 637555571 952166601 949586151 590214148 932830899 735140094 793902058 877486255 760166952 484792204 936872013 762308064 387849356 184094949 616215171 44832789 400464906 224274991 91468748 1013660251 994964380 960021935 759304392 1010438517 972823825 936766045 572409809 933377592 88339727 476624138 942326950 568058062 175840270 597284771 727704688 244977566 847595174 267289921 614859213 811667283 421845581 622930704 1031734752 680966943 710500224 468472633 1061064404 276198127 624816046 531709899 620712557 873071368 460390516 223290410 68629853 1053886730 115772668 737011698 975192694 100673797 129380401 844939018 553801076 879592379 1015971996 915688788 561486059 541995140 179376137 74741135 1037548012 1025415297 400858587 156838865 646913268 935261119 746678868 767989148 714700669 126741232 231720329 39236000 977477313 244764499 854797510 1051401999 302540350 754652587 782487246 947385795 59836554 426819014 986922385 560365967 175286471 748619493 867690730 263833063 753783744 628365729 686081252 438186612 620752715 257224494 964284862 986060789 1061780296 333221738 636576015 386825354 254173631 365377988 106582187 40270152 353145106 983607979 328359701 34005895 502911839 135784706 198713107 447015702 65560925 182116762 1059145099 1022188506 259252817 620496229 639222793 1002463881 36715638 501235193 970884958 983016880 603485754 484418195 573295616 990122912 641628676 365240250 107369163 395495835 268342507 163744048 617285466 53589175 15855817 769387387 404732656 777663147 984762174 775777469 493901851 64081627 789457524 254153287 193617632 621256008 322383178 41301837 120359514 924615530 719159838 840184143 10361631 836120504 944766940 892277005 694167566 992366397 985880839 146322054 613327754 464256704 243083407 239244042 65260304 486343254 1036027570 1018584563 875760003 1061919839 356481304 924687856 649028911 207927199 779359273 768294911 1028702554 537884845 263483449 492731259 765310413 366499496 355272399 710366683 664590056 288384103 29058145 584352625 599207849 114717400 597081487 650070614 1067229342 612471079 303557573 516405584 380730374 428799853 928882398 460500590 210494657 818468754 265695711 256574612 63369322 1028439920 984724302 848813544 1032259884 903245559 101567746 918541684 958022652 617712459 443698991 467539102 170304546 1038093140 569578794 889804803 520923662 290887054 296114226 426942793 172089612 860953817 638467672 953680562 481156030 443319443 688526169 454943107 156014098 718113339 129539677 475259927 813583502 346169283 433324404 740482577 360410430 230242774 794696649 922291783 397814901 206006109 205543984 741075810 1050220117 530925917 787803072 902442605 886720227 649815528 600487204 997157450 693147050 1064243761 466523088 469719306 285817866 218742794 16464665 5052634 190623392 523124128 352160380 248062937 849287625 98120864 781896305 297099103 628571436 65021306 692860937 102989688 11547878 546445406 205410405 759464538 737904880 345091323 954732650 705262499 84527022 561878410 249263924 827927352 13093876 343181885 398122888 404650364 414566770 327089081 1003584681 132556951 483445996 701839493 925837470 32343798 454914449 91228817 187431768 926501360 152991276 256893976 702753084 389269264 647231330 280675144 557933866 187743808 1043708307 609660302 634889127 370725933 453777879 781154027 625407879 926514196 154625624 958761938 750277148 40175260 614863170 723856628 993611108 469182885 62379208 1019055444 730526425 535606281 20754047 683152560 408083714 953222857 97340321 380461476 1066032103 194824849 675855558 875444345 545089369 331444716 1004166761 788053275 880444524 272365872 250277539 720492177 439745818 856180637 418979154 946307083 355174399 832769583 379707711 717182651 986014854 584870511 348118637 212254830 546798943 1017386727 684495944 284639532 607661613 287844592 354146337 556227860 852170392 877725575 558116872 457710336 901372542 245528589 614973456 321298111 1073291388 368721638 586769883 91814325 696650685 280047922 122416830 476981645 161108011 759558143 323837690 63163552 651365916 645857605 858865352 40760835 603731581 462833849 849359762 240619652 1058635697 148527454 958787751 603317405 482556594 36970304 177948247 425385984 140160229 937615417 71341173 884539415 177626375 204589938 51309200 176273856 41218892 681219038 90970999 991461577 520567356 451503101 698787712 41815108 663735853 191241564 895543959 319819675 813128275 705873571 554134647 498718005 354320164 612289255 505202061 18678275 497968078 551294750 924751560 690810228 900137056 541213384 631785400 26971814 614326021 952752431 1024249710 354878414 623936806 176450789 223460649 199435410 828805151 50466579 217469771 1048101217 136367422 619841350 649124037 521299299 548692845 313522596 325423395 481472639 444657763 956976466 352198269 703332429 706876037 290043373 137967477 494440135 118533566 801877001 622872031 665934269 232541877 111857368 305371898 953238000 695908668 62068565 371758930 145632896 589401333 741919706 266493412 994021695 756492269 809310938 852818862 769958786 342082333 453729448 187303147 230417502 765648162 423020605 48278917 965639060 790929016 499987744 974909984 818442582 978960594 403443808 887737838 662398879 720569607 727087111 41089673 506512043 22595144 401103983 199703466 405857359 701808502 793823425 952487478 509345623 136128718 780914660 476984736 398182625 805953042 994172415 569736097 822052839 11382714 262929384 28661278 406523194 1071938120 347524075 546395058 197834888 329268978 106674840 968653903 836974426 819809415 2168135 642357149 808864868 200671914 636088629 500095485 952786561 831160744 978960223 458353454 1060754380 212098333 437894957 883901431 157541532 406834760 799692887 697576143 31663156 557703855 500603964 709396515 1056393841 276500262 946140531 141812381 366981038 42092962 48701984 674259354 181465211 459387229 403080503 223763742 1066325543 542613953 596696306 612749724 608843603 655159385 7925908 887822050 972897973 844021970 569693763 751975756 542687995 294481029 379429521 841578857 960603708 289901848 982151596 509688389 909626156 414488677 814323800 141009705 467395415 963714674 863905948 783579242 325605409 909772955 388594629 970420366 172153528 934076083 701226742 868994091 173271388 487644735 65070063 282819326 383236506 231716760 322331182 922610378 122220869 429571954 2163075 265295974 201060512 147289456 862938388 301844515 983818329 701586035 778299080 224322955 325556593 274583834 389222808 1945235 68735339 986892122 973274144 817925551 431560229 882620866 557036050 493655105 104849770 128098094 289740053 525486715 139135468 60526815 858901846 305513771 450221081 874624026 560365046 615510026 236001253 153721040 389596739 478932888 307531081 501257899 337830946 669459372 683059811 116289253 715952352 538944228 63272070 232869359 63546528 950454639 609676920 937521829 201144430 795120592 70035147 430823965 965264866 621063761 676703818 416001448 848488882 271122926 895999843 853071919 26173513 472102940 476361618 1840672 626508903 261742017 141945089 336691887 485974274 809889471 645279898 559693809 994489751 751023849 139661360 690087833 543902284 500482217 907665267 179181108 727698531 553850479 533383871 451448786 727589724 995099451 843763680 545906568 483662933 410050517 175682942 804467988 259487300 2312211 214661498 394714373 299166253 422743960 177702294 1017374512 105171826 891359287 347566998 247914177 549318755 256211812 6122531 350214901 252613797 292136662 544705351 561608008 666144425 658230187 588019019 375634258 1045338967 643921621 457002707 140241265 639027062 697835311 581733376 1051913562 1037688200 788948300 498848697 12745064 222610740 1021985023 884304950 504225651 744374352 690124867 7327920 933656665 809358498 650452311 630122178 490108584 738297795 316808157 806951229 231137435 98218328 659669497 358668444 245265408 10332787 505163344 700052690 151762782 507535814 437983266 43976790 549114820 337721997 1005313524 931635997 16120982 212188343 548482855 1018824996 763616836 93715488 645163463 190357581 856274085 931079273 275403063 506810550 828593880 163372699 948938671 672413514 890087985 201082353 789473600 334757024 93134081 463371901 437418824 487585323 297088258 171002097 1058060345 405786239 835517389 545406202 251012022 748954490 786094860 171314144 228992582 684005786 534478824 1024096552 253607649 851351843 593836440 1021671674 549914720 875526978 203308535 137056224 856274234 728970330 378652797 1041312009 337734881 642284746 622170814 513339266 232850365 16232959 54737059 785322284 749516290 94709273 74751262 46195267 170924484 859713748 728997277 147810143 570440104 737756512 152331512 986606053 376512633 672272590 1070891047 73334187 115564116 697084325 55695363 1392619 339804744 318246544 195550373 548087205 72415089 568834978 29879683 755662822 139936726 864861861 345180934 739546643 490068907 24593016 172563959 873151534 907374650 646579737 530285633 1018834624 345731264 347247959 150685307 465657966 852820895 74133864 985674174 94362923 595759769 768839305 828003416 452640936 630392714 711623924 821853350 72155149 197986845 1020262227 793767800 124164485 993902354 850291544 845888669 464199327 8639138 382648435 460579400 1056993874 839626848 363684739 836791541 952398037 973570280 709828053 191880038 523430180 819786986 743907218 256302859 63902129 841729415 823196712 631523163 437425622 364429772 398192052 695788823 614182543 156301588 390076893 509982531 369526927 792605729 643309683 478116834 396841993 915395276 1066047777 495043575 833967934 316743644 794307079 796121240 482757906 483919025 93387033 820226098 798892340 679530829 31837060 372625090 799164583 514890520 349577066 75054219 8935165 881125722 163788057 455821970 717984071 337349241 992680126 730330302 853013992 39678902 129459910 247519160 961484289 394603197 623462358 361482060 15128830 288171414 770976866 335139261 64261532 569284533 601587958 593718188 92535182 1050161349 940135403 317253809 428542440 548052240 963632982 244922766 876115447 620950875 822694692 550868155 919905539 7214476 922478945 336660833 192905374 621858377 138798972 440313131 664174492 152251619 797725788 995102220 511773620 517155152 1056621498 542203724 433734828 675102376 502071702 17150938 178078456 891943240 1063443256 464282067 13665550 334835288 785043958 676753103 137938622 336306835 803162478 1009553721 268357124 213462323 1030895311 20028356 822972664 240574624 657550309 905227813 247240899 656355443 49323538 179785357 412804576 418150077 445275284 434462815 520856031 153768732 112059869 33036178 677697264 982497367 880479735 1064877862 755113681 144095236 497742702 973166096 919976655 1067760559 689297876 803163315 655666778 416142837 232111502 914365323 330833570 74041533 201612350 945725453 916567604 520806720 726836420 621426435 429942085 273847349 304298492 1020216306 781116903 186333128 490196751 804997193 629403665 1031729358 422283884 780927162 143725845 691609029 259511501 456411030 343770654 56283579 219710946 32862025 706440509 472021119 690068322 881541728 241053999 610159890 361389551 178947825 339204775 722881787 587908467 41772560 970033305 1034913486 1021519006 55344211 316780155 447651959 418382069 352410068 429403900 336711351 480567064 952645286 948157671 1063992741 251128739 307425261 307975615 138211418 725197781 1058618072 535029146 226157243 366115653 82003295 265421099 799988777 853762931 586826675 1001933433 504039217 382235672 77378587 778345523 683271229 63962378 292622404 460747478 993932292 458328554 925772455 694540337 271141438 239624265 1047916308 844815924 549302623 560116122 788936788 953084400 736908345 610163901 635083591 197048580 1002300959 354194598 533900124 913187698 891563835 228515298 381998648 397706019 332056004 435956632 613514337 486220132 808328670 121477155 226293579 630590260 820199872 474251408 396570685 653598597 102621833 385483694 355514634 197190083 324687899 84899711 180135806 68123264 64841452 276210058 1000749712 668754100 184519712 212840861 743012210 980272310 234624519 957797563 521755877 583977817 340997466 911985420 845404241 85536285 98251304 645857065 770460133 228685049 774510215 723671076 229703986 405436250 380440542 533180327 1047913022 388347814 486478226 454865613 236431334 539522993 605020778 1028170686 12923197 654261258 976909032 138985210 615415184 1025258266 366061177 213027966 798934007 880074705 118383073 397863347 466158812 423379397 908247409 550961715 512876754 49636663 457723984 305226025 606341706 627961338 503605625 16107233 974433755 879157201 975955809 659177328 803451141 337356394 241781395 2950913 169091506 783525953 822712481 962031892 280308574 181286306 161221202 704393249 809830320 365054317 111652244 326293619 576676523 756823420 671988634 598375130 553558518 301642597 31519580 724977626 97502094 81673686 793245016 418147049 911753122 495691047 1027499488 251106990 1039557483 914683394 929573806 175446352 137893842 634474335 1023969037 32024277 946199299 764571034 718275098 323569444 945718030 528927591 383890924 4864337 38568036 721294990 528084 1036168365 586403803 22322704 662176280 674676199 797832501 192276555 379601077 66197654 170361955 915578037 836953955 728881339 1011132933 865290709 355191391 25458203 677093068 206176606 203028236 86282906 656480828 829753693 133183559 1065428771 577176560 6304211 95310308 650129251 509076516 884884157 135794431 786226517 265675602 819346597 394585827 505663694 269545586 482999385 819464708 462210784 415150869 864809445 986570752 1058457463 37993385 241750920 137965670 1024287802 399226327 427863503 329996122 511786480 318725068 549899641 156172655 733885440 994449018 912842256 580574295 317927504 898931521 663900929 909301449 607850377 282935615 213655612 199507590 636408070 702948656 664098808 1027331596 410125747 217554718 754390493 712403267 722275873 583640159 91440186 716175664 232318765 571561237 508340163 159951125 1023645819 1025621282 881322950 732351567 698639691 112882963 838486029 155149146 341751596 901112000 264366422 692657674 553085903 608600382 508183635 1025053738 390132 114474637 572525771 849219114 719855523 494617119 859577537 241819026 367180697 130790515 726545545 49888988 306571287 152425563 652033609 985213468 573254195 281819104 102342916 538497247 299436055 1046782221 996511525 809679651 19562041 77090036 341712861 681085259 162555006 360090273 224474229 148892381 721890108 243645231 664390783 57689590 383334781 177929434 919636815 799756982 70260848 370886374 560576992 353693958 548484944 18734408 673992135 911286159 1050906043 838506750 87316474 807858455 115425409 532043809 259159225 345773667 902254121 558404409 107916117 1064370339 592727845 219081133 206689291 218047893 553120998 522067807 735735828 720547784 598752932 409492966 443970721 571489410 1003400188 455244089 99055382 252667164 1036997388 222101893 273591004 1051841835 1011734538 384365966 500540774 419109720 206308075 40090517 284440798 707134790 116344419 705645177 931380321 380936807 700257349 820058822 417587329 310545487 849132229 116952551 939326216 301495320 309148709 1024888189 559283437 945685127 677736191 149472955 850761629 690902757 574776357 532613881 564432366 794035781 774051940 200046767 429618894 139143348 597444938 193948745 1020815782 829173585 210850920 341454747 778153899 350428462 907740719 466197868 72771014 385005347 257264117 284245045 26184731 526737290 1007080950 518992967 302063820 504795213 247629666 214870219 1029756768 839912181 453914035 347137647 377804736 963668661 487667760 674360612 334442157 596531235 493120704 1023709888 738497916 882621361 87662910 115338741 260978973 555861126 456310267 641816486 400352430 334077822 300472306 682000158 773743714 674852248 595336631 813150932 524666998 946429224 468642216 1035237057 377946818 666144231 577648226 394737826 224726224 318131354 236086180 1031051449 495116838 39714937 915825681 824430229 747615783 401808446 942916925 101505908 957023164 3377238 550579740 92124738 71748251 572856372 964127530 489588614 248399372 116893701 85048171 152516915 1064754721 903011303 1030489101 333522747 951822974 885858428 490136595 246766143 734580988 879810581 228946498 680245335 960522950 709452045 120555460 981919123 648838882 301252761 930244197 107227094 507535080 421560226 914105701 72135406 783896701 973356302 84104733 954507770 459455826 970349638 196898100 1061021376 97932795 587464709 508910760 848061125 730059402 865673303 1039501168 922909109 855040492 19838171 1048563228 305475918 976366941 974629662 441354492 195957654 712214119 644615338 439515399 215477393 142322325 1047849856 75985576 887935502 82718554 695255477 703149824 996691128 1032147809 665626160 998732259 531111125 901699999 287110379 764369679 380920757 117465599 382681526 2065430 308302910 291975411 752145218 205276870 143754382 253012710 863087033 301389473 990047133 1009291798 589877139 944964818 997995543 102849007 1036688608 361189866 216973368 266763349 148393195 954718400 786055855 963808597 432924437 137901785 704700414 988458493 308535800 437544811 603160630 798179250 884727497 235244112 938371300 87559012 843272636 966486023 617280087 7364915 392238562 517718332 27398353 221468559 912432778 1049507633 1073230589 948031323 538611132 89624167 518995701 1066907574 320875813 525587449 412647411 606661303 293412985 962565699 346710874 701047673 425845036 658638509 985077617 568361322 557936709 812714943 1057514625 280324543 578336015 802902248 906325785 69479728 291323891 856125407 682719927 758998934 518602826 360134009 504266405 1067417735 1017365177 677360901 761579131 981155642 950337256 714120987 472823255 62307553 1021896879 927847196 632756044 922259908 402987889 721448098 984094289 286350759 678484736 681040003 782392999 75614324 105867884 215061923 86859132 610879465 790242893 222733103 281885286 513841136 322642870 40744130 692928415 811528339 852397110 493853491 74822726 629878260 1016505506 96468591 573514982 701292972 885158074 144124388 963097051 688321854 712289572 442915714 290534300 298514312 968412041 932249136 876552806 230607595 857294029 220859585 379779663 75578272 573435811 227005366 551923172 821066212 638735406 359675003 676512417 787782256 132633939 4953769 78340133 529429236 620198766 658304432 241165899 73595003 653290470 82635831 203833345 719773012 377300927 862024392 235106035 323166606 417788676 923828312 165794224 444373844 7098675 909001270 407105686 598312345 618546261 716634891 1001613325 539569075 74984038 453679811 136018320 326374031 700766668 38387035 721192029 895463116 668831787 81645255 163322050 192339702 14252416 70007698 943542243 1049718166 866907980 691475479 318442647 186435437 383690699 940899242 21405068 85750757 883457717 329733135 454141175 751561628 504712970 799475175 868360471 663877560 167452512 905715260 969916430 579529591 711097478 172898780 674258243 33391361 305273029 718760747 918811657 740526491 715866269 182841353 416597529 792709144 608654116 520367856 948305662 855007901 513467090 417820309 474086082 920566048 1056054548 9147384 219836924 768599600 102996842 735833364 704424750 242045177 706651104 288807435 184145745 142259775 147696401 995155072 75708418 959417022 566543565 676976858 210576802 22985887 539959115 374424657 452009908 854842802 113473958 634374438 982380444 174095747 817438268 711176369 183457261 908441551 672905072 1027672116 880375647 892586220 698058576 490186077 925537631 554655430 674171296 572043991 419905848 475053788 357341436 23587079 913528561 965576366 391569980 652485677 744015031 195659000 891871268 957666566 107304419 701413392 565272385 673405424 405107113 628209204 1033042776 502835121 454269870 195920751 596737492 919665838 86199055 144455871 327122816 230307179 904750019 394065952 868481781 906072997 870117701 108219720 124082721 440343433 611850473 156047224 884231749 425177246 755742496 623708758 810046858 600962061 471881937 328062286 41377572 347155533 728656547 383408486 864015868 915455467 266629777 894932230 762060753 294624440 964514343 40935378 784376546 182265235 470570672 79333994 1005175207 1061729441 899032718 1069015658 357457973 120990715 720457554 984418005 823432656 230033505 764344452 56343648 402343247 146843169 365850039 430013274 994002689 267123852 688097644 506839386 1064077899 345585065 965409130 423222543 473026658 201541831 896308926 19167014 1061833909 340459557 474889892 36405910 1008097506 662451874 954071762 145379489 13253428 523084625 485255035 960316604 659079253 852863011 369972615 66764243 873215788 514049388 957930889 216135323 64680897 755863536 343847157 441103988 781205503 576866407 986809982 941549613 66172812 411962028 265695906 563769819 150697172 292231922 50010304 803142939 973345243 915777446 228197200 387452111 963930032 344401410 1052221737 287873210 6114757 209859280 1064025864 352327761 544547073 204645735 285749899 752949070 348717079 1032856639 386640263 444158101 55028035 360193602 274862111 828489569 1046783817 829976253 795202618 634898450 724816654 30404092 656889673 507927597 227205609 654559167 328361901 623999085 212276327 203563890 814769126 383737770 485090539 508612787 114191078 1064663365 769294662 788142483 86653066 883923851 1034370375 315323091 823154451 36019065 37214715 882709701 647145466 394332881 867062308 212343782 766962867 897500070 924579857 552189356 454500346 505059100 586828831 472548443 839587400 1019513617 186995431 789752018 929580858 357718988 996881210 35611869 10630793 471280264 412794748 1049367671 971638234 916749342 144603972 414594145 576802783 698874708 41515565 35300166 654645475 409831942 810683999 21856625 974808268 197085136 81283851 562918620 173783890 795107115 288682036 865772269 251871081 877536402 1022935445 834934667 13366760 256969485 223026660 576266847 932474961 974508300 388705952 1003303600 988013974 859505353 794812878 882199052 394933758 192979114 26069872 172775208 528509718 744900277 837701472 322312974 123954942 795325792 191161207 939897856 518057681 1024676258 919629098 757486087 533879992 611301163 558213674 682804285 332858773 871417621 497164894 136066160 12880891 1011242798 50958323 775915987 723921684 243413931 526572265 127790629 229817932 777686578 618344787 192904809 694961212 270668325 235774325 163602462 343668930 241421806 91391968 771793457 750853826 118425496 753710244 1018304302 394870942 454429791 1063801382 494891279 314700354 794054247 517155365 93798641 894841408 467409087 568850016 717815182 760567351 372129352 321475447 779332399 789531741 868783771 866124929 289800643 513689019 912611998 403391059 31819170 1007943410 390348758 174347665 483336993 864836315 451456509 259812358 96234377 500595564 448624146 536066039 930769683 844007810 930310290 454555532 494839214 1005486496 486363653 835663026 402061141 551342149 503547397 271858508 594759827 267544650 442484958 172422582 509808808 125402696 299009963 796967826 712719173 286805100 918081025 50805727 531237152 611256030 199752231 1063496278 5918726 168657664 520160922 509468302 360000520 814506029 1029089921 529357908 355735502 191201210 506543310 540883667 164861800 514020119 446009957 820724560 953764569 74244142 54345041 601213867 795603756 812258181 877373932 582166188 498631895 413677303 814790709 239019639 255548640 831342071 1063269562 456342998 374962209 839176198 874195564 409163983 977147945 606601005 142230964 927904651 949404949 672388780 81095913 366981909 85140509 1062172216 267038993 341905244 381655036 165994358 16090028 1052362532 257632836 182838386 363240377 301744521 753285567 854637843 346307991 811914703 907458561 1034021430 171926656 1040671465 244156770 2829659 126336042 729495372 421661745 246661143 336640752 378106201 4688111 574752324 72359958 133211771 683882478 667405376 935425552 543589119 722190755 1038275629 398450212 861313106 479910818 31023257 497461432 297378353 961160300 608054598 48775465 352890967 24041491 856351874 245837406 948558252 264495129 702982714 681469090 470629417 62171329 536862708 498687544 712565261 843190817 252218720 488129861 632854986 871969584 71466487 461755717 882228490 1010405540 430931742 369749689 1064266132 2836873 91212056 910995265 985474196 242571087 235805138 334530112 972510238 230306713 761718877 328043939 821092080 777448248 248953518 483565947 219264704 509548831 361092771 256856061 1018367112 1033131476 689514941 427842274 568886022 172821719 26575332 920168050 827645946 1060112171 31138763 472855135 1005656417 1047413116 391184315 1013733911 749053858 244276600 687157489 872352036 672996847 210610217 57376314 822044385 591041127 651230863 614828765 488208469 866082107 1070283098 1028264317 828606018 53976611 706317831 590929845 383915704 438225826 523151036 587183113 632850841 813299010 420963308 732124000 705758917 1066983091 550213869 548173965 933112594 338923028 487557977 461736145 234288855 925588269 139610164 996016633 834809739 276838719 387735785 253280372 557931717 48539306 518102893 865482843 581848639 957688969 34041243 632659812 213639218 703243420 231656331 943312472 606187638 622600750 17096813 355149941 766344567 952996011 752641284 527131262 376331178 496480170 584003787 713455909 2710849 327859491 223158351 552010367 540889963 354966344 118530318 551438313 606617212 988342764 159475978 931470240 467249609 351504086 555080486 545852215 660866879 700152588 279278994 518975498 837209652 721248672 125101269 177767446 1007446442 808798602 78347422 1055021134 932098003 1037267078 402898893 569185715 515127869 620138100 385921961 425349616 961647271 918546411 89719407 777568553 556482137 22571669 698540148 300050209 795634677 411240980 336961089 758012787 321679624 296196689 151136928 818086878 708250136 600856967 1028787043 886768715 328990279 822378751 206610685 417460205 844208376 473054580 276871209 327472392 345711959 189304245 360707519 954447863 69447736 648967825 796925964 956487849 139388711 1007587029 51050790 866283713 64124604 503547430 913683061 814885020 693692672 374822697 211825792 856624254 716742523 837302262 896157552 943705749 905922855 707050265 822575759 765781253 526769592 432919538 316364602 596907176 738953137 979466712 164571844 888150603 29220086 533982734 101462669 768087293 674071606 37952844 646087527 714601561 559728250 910507952 504065973 965048018 74492198 411891538 1021513809 557227724 569090080 986467814 613003872 760257057 333551444 1067515977 88785392 150439787 106194528 19124077 446393974 1021543411 221198378 699353297 787625135 530989020 469754699 488482921 48845930 1028083032 1038523261 447924308 921257237 98133947 809974896 52126461 444185772 955211648 790360209 244933534 645624814 723523700 500009966 87476199 546843285 423539708 411810940 1027419783 134544606 686509671 178663575 825859538 909157283 352565496 347242448 418979991 224166716 893104692 784834738 212020779 94781276 96412370 26813424 423265914 930697343 504722641 846262154 259951890 284712906 71170219 70077378 261455698 248268791 477690968 363832465 498028063 393065558 385955457 141912469 662713784 843252602 455692515 1032034734 62874042 279427270 120295573 541333655 756546424 1044988054 473470189 420909888 347173283 92369998 857324346 1043865402 753394841 854492234 172048889 637333252 793735687 544077398 963309885 144517496 795356677 528829434 502447100 816899261 321975403 856281618 207271930 11388599 937694874 50039360 659887527 53759663 114017634 451966592 466249135 623091181 813694497 378370791 441849998 322523738 865710568 525928473 129431059 135835071 1021691488 286095056 903187641 44035716 566262876 549718013 926805694 617950564 375261471 372914214 437997085 969413888 626451734 654840900 977178338 298006826 399914102 549703346 643942013 946288700 898179497 804359962 1054502960 435567410 891672892 360015879 909200823 511435814 848703722 3091806 778512548 1014260018 923611768 214188335 1022277702 878818462 59758396 65389701 430869434 889659001 737646068 483094458 525356158 119520131 147079894 976691205 580541619 556204413 1027119236 437314324 955723424 644384639 586607728 104520609 478002935 702758837 318404342 940614010 73701993 416266776 25979941 95004587 157120626 431992302 687361407 892339628 114768901 133001168 8857156 81151887 79783524 544409407 1029678575 250870914 129835416 79794609 172357628 412108125 162514086 800866110 88205330 940201480 157158601 572829362 633320616 376452133 831241548 55976942 980749087 321757802 1041684819 351033491 173584546 68894913 390042244 761191069 120619417 970068682 1071037660 85175681 526853929 970002774 461419254 127268746 327844127 197794282 58853573 888181136 1070197224 445307119 963781995 574918472 261843662 1053882808 421938814 362074236 1063755747 1009823186 821884654 612038503 44917127 97598254 431028412 219273250 997174737 996416051 685996248 458751935 398174869 996808607 203819196 323404067 43655654 708867268 494854989 863620945 923017690 751960817 700612052 987656769 505862554 183672126 677612793 72788104 970797440 591117237 277670568 645887969 491355269 750442126 745627901 923816056 387886542 916864362 986772938 899422540 644120197 599983937 759731509 110125846 698168266 436068971 677528131 1008927351 402613121 72703060 128236858 975475451 168311105 574509819 477210298 1052532669 599823854 945583568 520932822 483529214 285768725 322830315 936563908 640591882 913192466 984500993 165124378 924688286 925856954 633636931 190659907 1001309027 1000913113 967682114 940641022 76152416 991007361 277646850 614277566 889653379 275510789 666630379 834601230 328528333 12571365 830427858 1010672065 1008651287 1057705216 1010065868 58583531 224492678 87730335 4930478 448371893 27908661 301699658 95746379 573706834 290622341 689327047 527141410 625337251 241897684 429234442 921879298 717399278 728979879 1013618732 84615883 538610085 794099063 595061277 376269442 103483812 621085862 997610211 306446927 975218652 423514913 977808938 39094982 437546032 793806892 694563265 12343981 398258815 959786657 585818133 3582192 235089204 486229044 663553226 978573210 135535290 614005858 777935677 437259047 544287075 987640299 861977501 422392579 1003219813 1050396976 978791414 325975026 955526768 792118264 46614411 87037407 812917196 770902496 119292635 502837719 362498336 446803096 107580742 256242065 912962869 47796743 214620376 432925087 592812563 438328917 336188362 899275693 361386109 764537467 516102217 509053005 413039795 644091272 372000747 5951090 951412949 611589425 696825083 1023599528 493661982 1007790402 206176403 303012709 46521106 66301248 919483641 1059045423 931208454 571986776 339299123 1041217727 296970488 185723716 489638667 117459155 154176022 914855834 921755509 444908125 935586313 133345017 929625704 853242284 623172459 606468019 883012316 755224334 677252921 217836044 502568892 1058164713 846888134 163890727 583710055 797337061 478293602 718863629 513057104 1064131364 67181319 326412379 459158700 81587799 606222510 266128346 1060664274 405210801 613851342 281525209 863327882 892347622 206299216 744191174 428655757 612803703 936184005 772971860 363237036 141576639 172572146 925965401 1006512853 357189119 827308372 836132646 51521266 208379629 344721713 607683000 110703092 331836382 596272764 770198032 946276529 117019168 157808860 384681288 755103188 593686327 960035804 682246892 929538613 543908738 757439834 508717177 1018474890 200660270 712038347 277991174 893383063 389949546 307001403 419016868 551446031 130745401 842267926 774347829 838750112 1015197664 991187799 682453915 492312407 18682126 398185319 976912489 576216292 157063954 779022588 497603002 23609341 352555146 714159446 8414842 8043321 996269933 369831341 370675256 233899928 503054242 1062061581 666326093 725554988 770292091 163192852 700366275 231865233 76302364 359067425 827560685 626751783 144549253 60188660 981091604 519627709 362542309 449024761 29206444 396979319 549457656 261508924 1018308087 1045796329 505459615 709904168 142791944 531102607 179173856 571230792 939902488 840814084 693552699 531879104 174006773 137907988 15397548 531793313 294053145 366266330 811906878 293520327 659392642 244412815 82282128 904977427 951182255 449023640 776672242 465052682 774799064 910628674 804446319 969333199 503251014 77600334 62920286 478232069 16726972 681037422 811459981 43275317 378626841 937982945 495717571 788578298 1029702458 703880105 384120242 1044645309 366077395 298130431 523323983 51755288 894236354 1009310826 210894242 808032609 872980677 590319343 783425448 760742324 98117318 187684147 843503067 927465189 1029427962 625019483 354400387 555155657 605750118 328680383 850924872 759983297 219796502 430413107 37403913 1005277297 664623502 957931999 233921329 11411410 513906296 551251498 476378564 945905604 168006500 174405016 44626309 766029748 1065657765 1034890949 331434309 924194329 232535571 861938743 972455581 65147749 138921475 686037358 276527973 440416921 387189499 146498069 559610672 429006193 997244978 930734409 222097967 375187629 982090374 728946681 95542114 1028037270 1046378429 900226371 842781036 80002863 774584077 535929062 463651423 207215281 127101680 1032237855 752776443 309205641 539288550 229264487 563494632 502751056 740511767 293426165 528367337 643612334 55603857 911359534 246856583 462652067 552330183 894976536 896553612 268127178 417542584 308917305 635605112 748735919 77044312 363282095 148529147 224782061 999726481 383424235 1020190455 217994174 432132433 814732561 44384341 52326473 936264305 430670863 723918755 69657902 758929775 409383409 794908558 274299752 813610788 34863684 190340214 81555945 991727672 721219389 121362059 570488433 224159777 326336832 200519888 176389795 1027081726 318169956 449276325 193412985 521410514 327427992 261897008 900641981 462000266 38668726 676021805 577897922 627660533 275946766 513275800 134593415 54357435 317260073 829632401 799927809 483603687 121601427 43701577 718077970 497914397 262200734 331036599 1020686692 158575467 576677464 753991954 168234355 988927866 858678681 737766149 235860440 580891210 211361766 324140467 1012721218 419090042 1056085654 321928483 381794941 356430033 838751203 533010278 847481826 152002401 1071250448 460544141 86584365 688561658 571280080 108194789 825399142 699365996 1067261098 819079557 863811598 632623659 585284142 984023001 101104849 628911443 720087817 243156742 690496180 635789554 903837407 456528077 160309111 464367233 19820976 678976113 583332018 214730137 786239399 479311640 70120559 354461867 832618452 816444718 513689471 977226373 819749398 97187084 938065497 339765405 130883493 1064723291 450176528 13856748 678220540 784089082 99970304 814930531 459235392 966206124 393884340 964270849 1034069177 403225814 757521468 826474104 741011805 55610458 718656935 1057002686 967042641 919968915 146647725 619685833 946919671 1038656325 751109016 203221184 94912274 159167187 124498862 253704576 1043160953 239552938 149861813 490482337 839693408 1049676070 1063615308 975622751 56714168 566017726 7878818 617405609 417530506 1011332485 57077150 941465553 373746939 4949404 331265404 287562089 785442465 468265214 631682950 17882489 506341427 345019874 438902141 1033744671 128245314 834764777 421123905 310953920 698665868 26148934 844571815 678515042 494273714 1010196258 636726647 397296919 175588129 533662454 804040557 672875611 883333354 439922525 566064285 706222370 793740540 1064811851 157950309 521759758 642615621 29266258 480231525 1024746599 130890988 493529116 662500779 633497097 37650867 376608276 793533839 753306734 934716454 351414561 699762071 18032225 368630606 252302860 994847219 564499004 1015002842 934598061 347963710 693576761 1010833012 108462977 98825928 950798895 87869919 452512322 628079051 164082035 1033880299 976050555 72342640 970344205 948087480 649540474 778556495 1073626672 996721640 565982038 120627773 989016143 355156360 723943119 276281917 350218285 137247474 823854264 240691197 865090064 543896167 35514091 642936270 471479628 925454160 452112191 441579862 1041419640 729624357 702577553 802103060 265342026 986716479 42141007 392536375 1029830442 348097774 573098857 823610320 436806190 494355885 363289675 739707201 573218808 528630598 118815566 16728709 283817202 821137924 82215072 572512164 348740858 468646569 427889608 259982590 397584474 895716116 284051517 434691845 267140430 589709917 163764632 231228344 614133660 223039323 909965483 857940607 175270579 200465149 222769671 262764466 383198860 77259788 27092920 919691520 963860451 1022917731 1004263341 259577731 88785777 458768983 732864829 477531153 537702434 910585173 794422981 343480860 847126842 769029833 96093311 196159962 304492221 907982633 457006835 991813861 970275836 45000390 977219234 444432675 819094650 765648656 19066990 643032692 165840150 575121254 210003528 890269170 440834935 300910049 721804611 308260566 759723370 216122946 426926273 304584609 749299149 333294889 304664456 179034000 123740457 712921912 305995353 47775305 908351393 793705688 260847015 320898973 257670011 752907953 553919398 930648955 836372797 913443502 892960402 366813644 436938401 642246398 402650261 508842463 505430680 759645938 867760873 818571558 842362480 141054659 67719725 703400163 740000507 192462706 419135868 418750271 481288514 927160470 530798277 200146057 135986403 945556042 825793504 734247212 116552804 952800095 1025161573 936110123 742916944 616907827 907924937 215932577 580340852 95156037 816649685 567083538 5482212 241634519 969107208 637863204 262813241 238530597 818876435 848174774 24022156 11729044 998759475 682262421 535890582 786709824 780970060 762552743 595263068 69506931 861388478 19428943 472541305 164500021 306715625 603783 132132898 1004228462 673040122 127783801 547603384 193195462 171236384 409280714 1031851564 506349271 70745685 350349614 384919308 357482974 989911179 1048978366 122620272 422447968 225694455 609927964 175450043 642416922 109621142 752966393 65503951 292676894 768995912 1026403775 514398603 377955663 890488763 383685425 362048987 473051923 848837369 616647012 709670705 1035508538 642112717 979396048 1062798839 1004111198 419872950 427083373 1068808353 303229398 439009462 943578458 976972921 382070598 90075552 103405258 180234931 637678939 264412351 32149596 350526432 194325267 528773095 317704134 898039108 783191609 233276888 127030708 1160584 112291282 136987400 347564439 964821382 441856416 662994307 284139046 970946497 407683857 934900394 727839587 382790985 736541881 25582438 321785005 985137669 613353709 260702499 433717117 855853287 85192209 303487166 835201192 948796690 426035087 331316479 807918079 1028485149 121372770 94752693 534075484 325602308 773853245 878927187 438116978 479997622 918667239 1049748249 404479966 504452574 418815890 365298118 397195006 476380410 1016899801 384476509 574607896 137104767 987259570 456786580 697935687 811424094 107809849 534927937 777410968 258419160 166571451 26627686 471916360 542768758 378972879 1010028016 659561943 192507359 81099332 941241972 1035910851 330923524 269602789 81745626 499993647 688993908 825199272 686624001 297507354 638504734 617546659 181179182 887777353 906107937 589888248 380254084 957947212 992322568 822203043 411494035 561241290 620751779 143882338 639857288 330851494 491706282 814786853 812946635 121016181 666377763 411051604 252751932 787688598 267407715 236017523 609781822 577299825 821144156 897494417 308531659 823519202 164078372 858530538 972721212 837225563 630878330 4505543 480614525 342647972 927281040 930292201 680200307 1053572614 1021252532 58595160 67021525 7597321 828149803 342744629 839378988 665164733 1028691658 325502828 413788507 268359479 451815445 738088465 187940714 1054828726 1010831798 538270679 831206740 637795779 781130943 345928954 553072603 208314345 894927467 996714993 701943213 332852909 974625629 954561451 1043111945 829645915 509889425 94672964 613482727 205870360 200956250 572121291 769031763 317516448 570310871 555208902 18263596 84576385 232623379 163279594 540513112 201221433 498970027 79414158 196788416 771600036 945222290 37631435 955237036 294334506 285997860 790798085 73452994 491372314 335194347 5627913 411270232 271385540 682848415 626780302 343360214 433774809 1057327748 642059241 358792277 113448704 158990171 902354034 557892809 365928073 235887758 723543046 687054576 396834843 96195471 831299240 1052467312 153002203 499177812 291704740 383935323 932112716 822839763 1066775217 454815506 318201556 746962095 520475738 160307846 618079496 778735845 632277180 65967813 217678148 577636468 694226646 845379599 849724858 1031478853 743367054 240473226 264945081 905683846 977549809 351756813 88421872 295001565 809694823 423648590 713407074 686047523 1065527194 531753143 866181812 804689441 277635012 845625987 573811730 25299884 682203270 39708717 1002061679 336921897 443606484 46399547 182430984 381679962 519583988 364496036 480494085 1011513492 939782570 375205625 628610172 397306500 724395960 432433468 451682652 753867063 432842681 1016446324 414877387 519360828 990366693 998218969 768886445 763893177 38554713 597103734 254301535 291432783 2009705 287305084 479141417 57127218 1032796551 549025686 977152377 607016872 444509149 460119283 11504928 724732982 698399486 500104556 13172380 1069478647 302148744 960980316 336898580 737237754 365663096 117071483 67015215 232342317 683142727 693702709 765333830 565143109 426231479 243583755 904549879 868244343 392281384 354727856 553559597 679011679 202908374 969687772 590032315 536894883 844163457 442369000 380706681 952498604 206724096 44685657 530866282 806669202 281100851 45057528 1059313077 293118268 910110094 519686600 16220601 593002545 352704492 1015769670 895424931 356905663 1039156141 242901126 621569217 65335441 962176900 599400461 713143866 208133339 670913264 309224675 215436788 225247188 914268944 940800129 472877837 530097208 872389730 633137185 222913416 142090603 486665759 295459349 134927052 223754179 827536878 444906984 603634347 430815311 950467973 817478638 97112464 191309672 72518587 128643010 1037188767 496451461 215883523 992764219 707449979 710985035 282291703 527315164 520506902 101068770 438462806 1018080277 1031133843 180201660 74126394 816460622 939380338 133434177 607274646 315417233 109872331 637793785 854720559 362199424 737034448 392623006 669129297 894276781 543416820 942955163 712409849 512972102 662543005 721529669 204301168 121874874 912558967 994954668 145213268 572008452 1038761901 940418775 999797440 784057024 732246344 409834280 927973720 801612771 576171627 687830603 894901133 4497444 923368887 720686121 970690572 372307833 989189203 978879867 237363847 878245297 992915352 925508166 1062134939 548912620 936583883 204261098 622756924 953872133 185904022 992359324 603086726 377086399 130207388 589717068 789861632 731034490 558634236 727265050 1036007548 174048261 408991187 468480 86885838 180464720 119458375 677322322 472040230 361282432 310669551 476083513 899321134 446762951 821269875 854579405 1045928429 336097788 389562501 66825408 664183417 80569748 703570710 327045310 36539328 1027423150 742541122 859314955 395775011 66514166 531535149 77203665 539547923 709501714 284702608 997692644 126104292 162297669 566574440 404806318 485103367 103303157 319847612 698406662 579892806 90771389 735937667 52707908 200064531 194997856 337497021 297376049 988351966 934616895 309146185 1058455144 105754537 124858236 545185754 966704109 870584758 475934621 449758126 425983692 366113215 787956263 432253438 243533972 225570759 594503726 199732385 817576312 611756759 794747448 229870324 1008892326 223463376 1028703338 1041147547 960842906 919936419 900827604 1051762586 734132841 516904150 973081469 913891347 346315788 725018618 363293785 792876922 831949587 742667516 742255108 676613277 641310439 667845783 564227890 1026647140 784559322 930849784 786207323 294992019 703306084 684947808 877647966 57364033 530529989 812969684 458958850 281378681 806194480 534324942 172328264 882938686 828883833 590232215 48243235 463763557 501193003 137298756 528200973 622846925 332039065 745350996 48176953 693318394 757326082 461558512 126064545 68469802 48944707 596456343 661492097 559258201 143066095 765729703 942248606 791250254 942688659 434540319 125928596 209943321 727011684 594178901 1014655734 497384473 1058942768 460133725 171875568 539063688 865752854 380840197 705643784 492109856 974516413 621204088 699236214 826951226 749030604 289587797 492854372 712883122 732321764 678994349 645366579 551850937 399261424 6565498 1055213901 484819458 695647589 643546691 747932244 126166640 473939353 775507891 890085776 981124347 506047558 439649036 195793910 587143361 777581582 127043372 1036242545 933304555 288096806 98223399 92789239 924707078 518182168 504097470 888373352 610762601 650910352 479687176 301704941 956889740 229088536 943922717 883262103 624563759 368782832 207063486 748831008 337395943 642766181 768537843 600087514 584811200 449309058 548141463 851235180 150010064 1066173711 173234670 388577347 830826983 699163804 545254717 672731171 634140718 718575136 953789365 644123622 723902417 410826706 193024444 288333956 624587295 711426508 218778339 143214784 349665872 1037635293 244004428 257935530 524681744 608640467 903870787 194889822 710282436 209035461 348910632 1063816525 1023593476 846183478 944151113 748681312 319618204 819760644 298697342 667344424 102146946 875819507 125928126 870618554 305397866 216078418 524855129 853596237 17830225 371451884 757418967 344398380 572135278 920302 938679032 829535560 45811046 787647798 849621216 762614924 399092048 207533478 665768602 83367491 802302185 857258391 1058102941 689309748 506318510 940539721 103742986 488067233 718834850 22946433 774861243 380352280 1003470615 286086800 243657249 194055554 1028144948 854120416 251742546 1059134058 347889991 311049405 590106626 778251128 206097185 865952985 33758468 249702326 747907323 868275411 154840135 980815913 653819732 881943432 493053548 944196061 367024323 893483707 186344725 263895087 82131874 712462823 696640484 325344287 258194735 773864453 314196327 311792382 854806482 153575147 1008842551 849826091 367577028 664983018 661122823 707919178 333442787 593448463 19966972 967860645 310062829 351037459 594253769 40354062 537953094 818503438 942093303 325383880 302886380 564726455 598677811 1467051 1041044249 426298961 103584554 135918732 24375628 57988785 493965123 729049639 767842787 15673585 563405210 574281671 1063558645 806880212 338003579 551779494 250082292 624225419 698503762 297652937 368232281 64367183 532762156 527627845 276635112 1041993493 422230234 770989521 773043814 489606238 46881130 491834468 1045662310 1023863424 116154398 143575629 549446271 127081758 329777908 401772749 730544242 237887697 900416475 762365937 75732070 72855089 290045325 345465047 633960599 546375151 113774958 8085400 241367138 880424913 761696290 650110088 764084016 186918675 482068943 874539061 985553546 338936297 297933310 932114686 289910432 162844621 634337690 271269268 977649541 885481273 360280663 931255906 1015650071 223712764 535452238 1024781092 95076675 1026790116 746357526 296961961 32794466 330627987 847035730 258743721 1010614860 175760053 1004112969 330843147 394401191 79147605 964371383 1016130778 268576204 1016613532 720600886 81436974 482952634 364521835 968939116 1001923819 668331516 56976221 812435963 862345028 256558584 769088123 91724894 329709907 444230362 838530604 140923533 964757634 760947442 588750114 620851266 210891410 455107254 1069862369 95663363 79074484 128974434 181187260 114457985 924521450 79082143 900296999 701258039 34551196 956124537 549928315 164449965 191156184 433199128 199668909 489153620 969942264 428230537 660120965 107760939 544612994 962493392 746817830 1011265697 510967101 610585128 1051479879 672861083 1022882116 1063834297 974150076 145815158 1044540462 201785089 141361434 317546989 612179634 402280670 901283361 998420243 458840233 978198318 357728493 64036350 606553278 152586900 937864 587402017 733045605 670028219 1044154568 498478599 623988266 487726171 748955870 756455815 958049549 595457551 136371711 29379335 23358983 332617026 883602241 353593089 987081550 419509370 438486846 702321463 226032126 81249513 835952534 431295041 562778362 933276843 462153494 606646941 659321341 192732629 459402311 227872025 35392840 44338365 610115695 431702726 462473571 875732735 646767617 458589640 1010876731 395626670 68971865 950501213 598949148 32425197 135853337 878877152 329548636 547893292 301280309 413941196 474652231 668203195 624888423 794615627 862764848 804400762 587905354 578900815 192199332 756241133 1804680 456903459 669786268 252450354 374077539 8881640 762057922 620814560 447510566 249045864 146064785 825454645 580113073 421093299 168709091 591115088 948783989 949956745 184733933 13487299 247599937 462248784 1021023684 140252194 565360697 825978865 937380254 457682032 370324424 358829272 367775847 381342415 748647007 102233362 408544447 959357977 214939808 580508325 369609639 365754713 140948106 139500902 155789137 758394271 190983057 668470093 1004536266 1044227158 87929489 890167511 883879507 143977368 118291359 427348298 666249722 452276085 905012459 392804128 678873583 944294046 267828797 150744879 126866375 920642666 49144476 391040846 827407014 1069798122 780886878 350035077 854238886 591247782 898052196 632433722 106697165 680538997 611144348 145729612 574490677 613417076 734303884 902748132 875815361 465007847 657703965 790738770 42611417 730383421 379946753 7060951 845578813 474982591 193119820 127557357 935144970 98024623 942263940 438710757 529144272 693074497 373070162 844906570 931164488 32637351 861064208 878973876 70011041 153354577 620152062 737978048 1014400812 792439729 422984208 483847883 108997853 1007831727 604210120 956216337 464637691 349046091 447507630 680064673 176939964 31262511 288739890 179960813 541986382 315330548 49518 643591258 876818154 210380246 401219678 425877790 592091197 86670226 875329615 331650235 674553550 61971214 17492048 350917159 652148800 621502491 289756111 95463651 447961236 917889384 963980271 648097458 314993870 1049716054 120571801 452652603 1068728378 445968675 403424303 468498522 876469929 879630960 858548925 159018422 498206346 946332926 270936429 5478870 303737763 996610123 537650191 907757095 522881954 22760596 407898012 384546209 294179653 581788224 412437960 12929312 575410947 382326140 797340355 329542232 748844896 279519539 190107158 509794288 1029950890 560329235 530316669 949060362 532904553 300963281 475905107 796715934 51485804 566470213 733554148 729585607 102226779 584197506 994109828 697907215 209244827 231838820 1017174789 1007328981 141205957 142343908 212460535 768640417 669911197 635710359 627552178 584823161 105078841 738788228 557595938 1066235660 396340016 888056602 624872943 542259702 967221133 909374194 898408830 116755240 760625313 391869844 68165005 956270520 828035942 840050947 317538888 983234644 500414854 338139892 723461845 792205288 956323073 301801403 212883021 605771119 770909383 701866265 802685788 185492819 488379479 597722990 560836527 913163583 92262616 455626196 296128550 647482905 753011952 565475514 130152414 373810717 587648132 758426691 796050662 724748675 525787942 984457825 847389746 882151265 959823273 1026538690 791802733 340049485 1053869514 1064772898 1007368999 369063464 880693006 959161710 604209172 531028448 1031440385 964574902 372923261 145756373 474250329 734460199 634696183 597890420 763422662 375717813 437528666 445536444 808131909 630099232 459828521 30466855 707329279 711858796 305121293 291038868 606021677 471754367 487029896 795605539 165109815 684017187 401718718 785566022 405452770 843253181 518948609 919754989 467080281 928703347 610123535 198959383 922835915 91112086 966132366 580509928 1052281633 628797336 587602800 437057928 457478311 186500241 568276101 551273292 771826482 160745823 119667333 93734671 1012675972 753291190 603006793 842591551 320287581 322092086 828746180 491152545 384520580 770753724 882979053 382885717 837524647 948559781 677196671 289557543 395453941 499395369 239890642 1017380625 428640244 336069214 416049716 682133021 1035021647 124258736 264164232 1054140891 142979386 984201209 312935494 29941855 310521157 602454897 709677593 792846960 574647307 1030802074 261230863 709026664 186164346 694882023 875872943 709297962 981339173 768622823 243222778 514917680 501670115 134410558 437272553 865115124 996915253 987628892 1044099830 965510412 350698161 383957010 46996470 40416292 569612318 625248105 543421044 1008856840 248932360 1062061499 197539074 979041179 52082876 872936623 1027888181 519372519 770587019 207172604 667653662 907302579 111275538 631971555 694797360 181191572 708281586 705843414 738062490 526602763 894872095 12817540 791688460 859981813 88441159 994559214 126038777 808859843 703226558 989361164 659500551 930401225 157551860 861418560 259801108 398762867 270987825 48448744 123280414 78226445 976545583 804420062 857467179 222876224 899877223 889060726 954319162 369937107 681252448 567483630 1029674420 467041155 73316745 77335424 813323107 676209668 798530225 888625295 596686193 835013195 556590617 132556354 928614806 269688760 907485498 439014347 529188438 828057931 811184899 1004403891 456760910 705808758 32862129 563456322 96635793 718212952 523931334 151663486 606444975 393714445 79919705 1001635061 685325414 441664522 91458033 87961429 916533625 302155544 160552594 84886947 4075319 377431829 839865609 577956731 785479694 436714574 1005483047 785415284 1012000350 226728324 178981239 235848688 282774922 219272902 493798545 80767972 627506399 603639616 999000788 877686057 210956391 207920919 478587450 706398150 1009688915 303986550 696769720 383888704 207331325 761914176 320588670 79481333 583391414 750327367 802336572 259097929 166154680 1009919126 718351072 829666589 311339628 35456845 1051390676 118471696 323472342 845478077 397248095 413381683 946663073 748185793 791114103 912865393 119700011 205009280 320096152 967013972 664983797 729647354 529893259 761354077 1035567933 102513623 357031351 411410722 919775318 484956649 350806524 319607510 222900707 527456033 373063995 294981334 107922244 1002887145 876376537 829607548 277102914 806602024 830649848 754565378 912825789 742026643 603721200 209121891 687704511 5116715 775441443 90475146 741325703 532516833 1016560580 1068235262 456234679 561117204 905699421 1024981963 375708958 601369335 96930215 732660556 298938156 62252248 687977426 823388513 163876773 56694330 627070838 647228209 285408718 748237354 45251330 340450661 105988152 792917645 232692323 1042369417 1047525804 861971223 383618963 29254197 637819893 769562455 437555952 318929920 1019099441 175622058 871688055 918471553 239815790 938945471 481433937 826938547 644339833 301275018 163670777 191586096 681140723 131885078 3002805 870123953 857323807 792589942 673164577 252047885 123168811 1057553550 418071088 65377889 815179054 806356848 1061225799 916723403 463025755 29014705 980422177 320451658 879445134 539757879 855414529 478058677 504014382 694496868 646312086 332451797 979913947 1004117606 837643257 999824502 521626929 100049438 627804716 91480107 969401002 857289880 935887035 980811662 897679622 947483885 146927989 549908949 98438124 832559753 56527509 166426366 701103981 568696742 1020716385 185412493 1045167180 812604217 15937797 824593512 136593398 78458981 166863960 592753081 25231623 269411034 707216740 891892408 14876956 189444893 213548529 705295173 364410671 641055217 277356235 549270465 897011318 936133987 502998157 124627386 410579212 130326244 201035352 835910721 334785340 109081780 189682960 707254485 455481646 286728702 698949493 425623614 522035536 745924052 383583242 543396150 109335503 499355784 710981001 294185980 82815859 431176722 706756823 801635518 376496780 627343773 580291005 1036397233 369710172 900264676 81578040 1062960704 615577574 838226892 749148618 792607583 678268778 765612873 412203385 163507529 187819904 94656801 406242880 612289152 917584817 96836304 242360360 744367938 520168584 933077986 1043096016 824286852 217411892 772934380 57926958 809905211 572365753 879624922 3067616 221372297 105406245 518496042 701490806 241682593 680408001 853492792 929863859 150795447 1067402453 382165557 594448907 930088316 23814314 927114418 937755564 60232271 370156137 776359258 4094727 563228637 419829985 410209651 1048257384 995158865 516373790 147844676 322494376 15691007 973770524 488218369 841278106 907300676 999953211 886038315 465253097 195418826 901582450 46223771 1031585042 273911104 312767678 650505455 893850837 443334833 2921903 910296523 123335111 830823929 47642247 490129002 683202318 579408726 980724698 629832941 978328901 282306851 742531730 322848241 860059425 223724035 434190538 311467774 47577210 757537312 128222523 677252054 995569755 294431573 430656785 98583740 191826258 25354033 319862400 961874670 126910113 612892954 972487989 78152956 1039662538 602486737 280053420 882316331 227063149 1022753909 590791080 87416921 239828995 728058891 62910123 43961486 219493888 743804108 823616910 700536612 239819655 302249325 465996697 635323865 64203403 1046406194 332457395 459671994 258767007 555170647 566690838 1033105443 443481209 518568117 47100794 207180294 40045520 5851127 961825235 506859963 1049321179 25947924 364561425 68901282 1061383790 249321617 874120218 1061876100 254314787 867558220 241883663 1011465990 104869984 276165641 186746993 481581375 739851856 218668909 1052943681 167557592 634003040 354859970 668212645 715952036 798178639 118042527 803474863 288033622 1041139517 59297780 922550923 813541865 792261785 1042663807 562699106 941264790 428628948 800236472 345532977 87409793 209373946 828427603 749709305 154838870 28109773 715746320 954538892 268287852 813078458 265398204 307932487 1072871066 578195040 435263194 364300694 209277915 70275888 1015372179 635597895 551348306 444526183 1015589866 257798098 30351146 1067565793 12322550 557369127 940404427 364026806 9637471 329284647 778715390 1067196954 112619101 865043304 480877390 339248202 70162688 225572885 563353908 145146980 336695150 558545851 72346743 383445061 341420406 879596400 379587207 449279068 35917910 846464038 838540812 816190703 9426831 17933580 26583652 321819573 871252272 260838507 321354501 464923284 735982893 604759049 823748534 1044642976 333054396 506267048 485077897 1027225921 906646157 866640655 60086771 223958874 328239476 724738361 244165124 881371373 904898462 857583752 715462286 897613145 609786113 264636057 335629214 725432835 644510665 139105983 952141576 516688370 456414690 371148034 332562243 908254350 633253211 502038270 1001202218 864469923 596184979 171208749 265538918 694827643 83743859 1053477562 778384795 1047099685 285900713 196419829 60832515 1002285528 458015319 291805670 1043464894 418738350 667929942 1071936888 157326980 1063499461 685951850 164078241 266106713 113250716 398422922 212460526 634045501 772057436 1067350944 623739469 65023982 39805642 805743299 863067250 754010276 337374735 758669824 47225785 1009504935 341683511 797737419 992351296 647562844 149666903 757485301 262970750 564066034 84055387 72342209 8481306 660469537 692471306 420371613 1004083915 411355283 293443840 1060446972 662170475 574892461 808289916 863492249 985542978 748542921 84115155 383587133 656678811 272114864 556017993 821327468 685541148 645118640 955752207 36547217 669627128 108957629 551429136 94206120 992420150 165453467 877942309 831011127 585335350 69066499 244786521 1070801197 454523442 198854442 910906845 633895157 767247888 402142035 13569387 709412069 535918871 789046601 165267581 848744369 606943361 729451054 1014518495 800539636 228547956 960729445 130984966 462271383 552578428 221746245 314323776 284540187 84340404 918142272 845839162 817204961 36149781 379794868 126382997 370902353 207492486 466727971 84167755 689613971 1058740821 546432958 604811589 392290244 785606540 224302782 110204670 202242049 227199457 720265201 1053340900 920253765 245337897 199860520 344037618 8807428 459265259 610460391 305387862 243391268 1007508194 72674919 643306393 1071705584 181392438 384493086 397165604 546831893 815985036 221043180 799696807 390876263 696218115 130664279 34291735 184360826 45849958 770094070 561441092 259595306 876138338 252760922 901350413 278053246 250145926 104194954 449525987 108286606 3630658 505705468 589315785 953811936 304709152 977026405 1024082466 16247959 871698726 411685697 74544077 968691639 1058936025 707700472 920928456 268179989 475652041 726171720 427479596 761579447 879706274 415221862 866141480 143164470 937982332 664421383 1031469891 1029430580 921474314 114861778 727149915 935838139 244881544 576092434 989739261 961547017 693521857 453048954 792619074 64110142 1275607 234696899 162747986 50352956 20879965 592610496 413703705 976048415 897512850 967489899 441454580 561447328 765774764 605278040 219182674 235740011 579368666 214186902 737012141 532656371 962773995 350163002 140867095 605500653 408052925 133200933 775146626 576735754 99199843 696533657 806661712 204597101 232570617 849925592 1009918063 365483020 193821833 328474109 277052748 692275479 1058008039 950359582 400942637 388379155 840677028 781327141 392930027 525020478 450679149 1057793873 949314850 684132729 825321464 384587609 152777610 933261205 867636536 869687910 1067840971 286115810 767591787 729945428 990452711 989147173 531269410 349603306 979329436 718883533 697589976 524064260 501861636 740613145 596984658 30520648 833513306 607016530 1029126870 858744470 502944925 728781774 995295433 858301861 735345695 1004753189 527674597 1002389679 298632438 723823459 614078262 491394964 534401879 493011130 9795810 1049545643 294071663 117717564 437690421 142308184 18925208 956360491 5767960 732457407 570925624 707163317 603599546 515403248 185615929 193570876 1007090500 142277847 777604765 167488006 464112061 714607938 158510446 1036658931 594062606 719873415 59275838 667215349 866859873 924201960 602162514 951379038 740922925 270021876 443522922 929556678 262858342 732221079 927763935 657730718 343751830 311515428 733954019 356056730 645288162 463411932 46026560 711226528 175995943 257445404 555558104 151485069 247026945 120565223 679565197 989750576 361212153 604101630 494646487 103840756 655277139 847869997 892812062 587750648 633734520 414987564 66243165 97511263 999605061 104881128 587947480 104974412 42899052 521341995 489383844 791804585 762823567 1025522561 324842535 912938095 490076954 32337140 1039721353 215890615 951448099 220349801 1006508622 669190930 251975432 384316253 472574654 796958414 30905525 225556086 786653977 842318231 938662594 873711526 56928877 862768380 278945747 614924080 135062251 371804623 729630146 136815499 568350883 1013100426 611431112 539348798 195216024 1014454251 740465023 187541017 92152996 452459908 1004442323 862384449 691920885 253130024 919442627 540895200 629591001 398169772 250683421 328876930 974346549 979599703 135552061 74230659 251528731 343298544 452731144 92259813 487580525 915460220 989305075 106252780 1071744671 564652422 118506320 833103535 154080101 1001046887 952076369 476454393 128649787 154216749 204903066 898516094 303609081 812887654 1001344153 429028677 679073414 46592208 12118169 769946351 996215881 119932226 872635565 821037248 617325390 1021294329 260050416 325472230 769082546 798352079 51967171 356132930 104306963 512249915 271172323 375334155 168189007 561462074 1032944016 544214713 518759575 788935287 625950760 1011791798 385703123 578256260 916073279 228497036 100100270 554916911 738787824 245004519 642893642 579790730 298486010 919431301 443937468 248685605 753546438 54466850 20237295 261392433 973743444 972757900 16887838 882906063 869727455 649967914 532592808 609004030 1002784584 598948600 562356740 28486644 621582050 162918275 875578311 260567604 244488306 342350104 178004737 634773150 515373175 49567441 241243754 628889798 53996029 762044235 623963243 519617840 766481375 139930250 622071781 445289178 792717488 295154548 490199920 444264554 881972864 133481000 231096700 1048375428 535060951 553000876 413300461 553875624 832822259 189934979 260434909 903454737 693018921 365956770 225774770 657450137 1042596560 776230210 793097912 177579851 568162186 705491924 220116926 431582142 714086422 862401016 480579857 220017773 1053778551 885639210 383154115 303645689 508935607 386262806 458346098 657081792 910351740 122563626 998429332 580467747 383297591 950583956 115008718 754739302 226378577 725451741 661318578 951115522 60552942 663031638 440530213 940765747 1017423628 968117670 640894243 556642417 449795835 332655472 417006829 498246687 148423863 197594047 725584363 282455826 536123793 808816678 183762891 14921983 350094335 186305658 665146695 374139200 882488468 825189322 863097861 35391693 636095959 793559090 13964634 251511558 94712391 1038972462 21575428 102700455 192901621 218534993 870277975 420320639 664313869 643300193 658687267 1064776834 451877585 172649223 706698261 406675006 499424292 794643911 284673997 221032720 834747580 1000819954 191494414 882403905 841675030 25379607 610698889 886527353 786971191 619784898 922741842 694317674 370844364 123383858 28307578 540252764 325572902 721733244 173819401 973475500 707099327 852180722 1017607283 641752451 671441725 467977093 151645676 287593747 585149518 297109884 1066153632 884329859 295212169 491264561 629126411 205241965 868187204 343507904 405118775 117527849 1030925624 588589413 774730537 886490702 782462759 764596135 490731870 471064183 662799105 320440492 62910531 940820624 337175495 737168706 1038704604 924971599 726263305 387223227 550258502 154623675 446435784 94226090 149704535 1061977319 218789512 465767668 688753580 1058486086 274295985 201480449 1013413763 719609275 917932246 860728056 721288039 944410932 1024769994 475201131 396957336 766864570 984025244 357559528 587726368 417590551 432815901 264864099 871283828 727801453 277144180 835795262 378846361 600219876 6791469 885552619 633880420 839101298 509839656 142144491 528746504 836172496 255831797 123794052 975816011 785819262 1068690985 994286076 351367907 35478984 811049465 645227800 440709988 940067300 955336932 660554152 463708034 150322014 192615208 385818659 951325850 768040594 650996949 316725457 240706700 338659418 1057165934 858774857 466427237 861482450 478029667 38564251 247724797 790646772 827661940 723978635 662439455 636902502 528452795 771259238 626358458 606732654 230219752 775020905 666095182 92870895 837529804 929264399 261439875 739998655 249929137 575528409 1057365644 649076450 187036361 214455922 489807247 758053770 1047484555 866037217 329341004 360810519 932144369 736031985 189157356 689698645 313824149 755320703 562274841 970074490 567133828 540057532 617118878 616695651 562870094 722232304 301572119 208016797 1003077699 428065045 775109025 767452491 6765890 984971132 1036989226 814044225 701245301 673790006 233001998 370733250 178616948 552598908 318419559 1016870785 230811446 161942936 355845517 798581255 608314400 359136456 1033327976 362968531 998299449 837296552 96130716 441309290 423797507 938673187 691727403 986975417 281348426 440007457 449285333 578542216 922761873 577238720 190591015 836794968 852017906 922581067 313441056 405214245 817366279 114608834 436990954 4029764 102069753 100943419 1013049937 996513408 445463601 566348071 68360652 482271142 415844313 155442980 958475991 724382982 396177968 689142321 869928059 390202105 26341776 1009705186 245523180 623716697 979070720 527223524 432201899 322716723 773092854 1045563994 494157938 641485899 698663262 78224309 1015838697 981982792 348064484 233049274 432267154 109036340 953551945 3880157 316360616 641108776 856004778 464446922 133411469 583022397 67958045 748648223 991114339 822262366 590961425 32373385 391774558 522964325 636388086 368222711 911361756 355601699 154104533 78409871 658744498 423780739 995582346 76075269 465215945 23065099 191538483 313974374 170675779 500193428 669491822 309033517 584510353 198645143 480922803 693135858 1052043441 486805016 1068103308 82349564 441593519 799707175 1026729589 724700169 540976580 297256417 155744523 405659137 910834989 307329552 13338399 258019625 84533175 36325928 867047557 512698200 957217373 626927520 488998571 783439952 875225685 121504763 1039300292 622019979 763540284 131693176 844735608 829238 750079532 267480228 228960602 18120287 662676972 516714065 825139545 793077563 234296991 348378797 738880313 1026456487 213037482 826330442 272083628 389350622 230293731 215467513 545968142 289296734 960909903 12690584 819788086 953069701 882594868 229224612 414630969 125020542 896776878 473007386 29796566 198791987 556663264 465668271 509886373 316354849 413239940 883462037 743314673 287893715 1054736264 279556329 723345922 74581314 1006999951 988829170 530312669 900755435 774809632 1024315505 569602283 226504099 519266978 330940273 191743676 138902413 417245699 703884688 819378701 870458273 922745516 1027081690 371156026 1067834269 1001947339 352026209 374324472 1068568168 921875092 319279861 713119896 640752698 983097004 237926250 362724062 321269627 376603550 862972200 813306184 398535607 757069764 555059585 690850517 132397319 827123104 876618115 321334002 67812361 873445841 470665388 698804709 781400675 575859915 519016398 1066601513 310326803 912466918 1070297697 222306258 832720925 95025717 819396619 857378889 1037585865 183351317 616497615 830313022 229150321 2135347 716766596 444203303 10563526 422926381 1036125513 617628971 44765019 980704436 348461820 461516203 98156032 189416716 514983306 614160641 736650322 520708366 614071684 586164543 649843225 437896913 591564141 94454594 590453764 650215102 927994985 668026593 129623767 562304643 507249814 826080900 194368535 142551955 141380579 1005202994 917832655 791657314 895248989 1012931156 582828015 564129911 601982859 164507495 876922795 999704996 623541053 756231795 175193791 1012145492 499944916 63742681 761694024 165456771 20781907 128487099 43203862 326419732 740564379 526084036 338990040 347169022 54908094 3402315 217255923 958698510 176181702 162990214 852188681 463877891 20571263 380121418 183447824 409741172 361459687 358316857 944083685 202256152 499280371 587335988 426559955 440075586 893025652 411854684 941902963 381419973 542977900 182986996 104067460 855948405 349979718 650595039 884846932 432982680 228749966 212023908 848253510 292309508 1048199704 820361626 92837912 435985010 407391409 902032568 954162182 291797582 812944831 165017095 825293902 610176312 1046545203 467957383 936581877 457564162 402597607 471314246 418124364 717093004 614728100 784498172 738418224 537378334 1044111099 523319674 498085175 265926950 308234871 157020849 193824479 64408006 12695166 1016509264 845370666 157524213 787816794 739883340 496684339 983434866 920141210 248993891 921780727 568424189 15683390 942488381 151384348 660849309 690514814 419641701 567803685 956909045 1046644347 99341546 702980105 931990207 108680612 411971224 123592062 147152869 304139187 621963023 780618146 509717870 752952059 35341354 301351716 817955872 219872202 942176293 1047549934 727209940 783922654 207743555 336353277 487914052 770981069 877336804 370645912 780281506 966711576 142582190 521609949 343863283 353170468 1049361630 668471129 500562807 853556917 825647796 1056952397 541605061 665395772 415068002 124577611 1048890486 423894828 616356144 710662720 431695574 652203332 939302696 187974182 447404614 414400285 131930151 201734895 231238823 77632056 569881702 655793834 703179676 658941073 577483185 556896452 102255132 506576456 568479086 402351937 453864805 373749606 618269570 787428350 166365365 276076517 419893393 399537365 834798038 128278442 47573020 337783890 374914067 489746898 991828792 395600109 549474226 405559044 554425222 1045081837 1065318008 851933592 330833783 177344891 576404483 381028581 401228991 226714132 1016678623 1016072962 393679758 32830892 545702980 803889461 845441313 510452530 619854290 208187708 147586361 84433039 830296501 563865200 702822588 939246254 693270621 622541497 987684456 783527612 232719094 934172381 472548071 396174213 695581689 818729922 1059534121 690989903 46636524 254576806 623003836 748599226 755404972 94271175 70195828 1008939207 956016537 50739626 673059375 585766119 797661744 668027929 419264116 204645900 610348160 64471840 801815241 428077224 800870428 894056237 957177480 766719244 808604366 886181048 819971267 1065480202 264498596 273420997 198639261 979900392 859674829 745908586 93392842 187561130 971772395 196285238 448155988 529073011 222084518 837932110 472527076 339470142 997496768 886241912 910906650 454271117 765140573 915840265 962108397 561404119 500540083 199961960 932335102 995094815 1037798003 1031878083 245838755 1046954413 271283092 160805667 311685441 642307707 169831369 990414492 310563939 807021238 863500935 177303581 469612153 287463721 503210363 170801420 82990957 833477562 608147425 263458229 537558580 479022061 179166444 174273830 869972544 20312248 872783220 269668837 201774904 122345065 1024829392 719482504 250935058 151015635 46433951 57316321 1011900037 601538111 602012637 1048587541 251848355 367527398 974982177 1889292 756897748 177914941 385849647 629260945 272233926 1069551038 357777564 1052587452 128161931 92877552 605308273 450211600 1051283296 848320955 391962698 191086079 423323594 749576569 623997894 490774930 81784050 396753339 502388007 915988071 908493673 133984662 348553617 920381264 1015663495 561885384 447164034 470554404 81171654 1060040929 834266302 591552146 1031100781 338601135 471290406 646548320 186619292 956542179 197529363 384852758 438311858 17634491 1022930871 338533279 773899078 80833178 682761995 930514866 358880580 368244786 931945881 770682704 166389561 69615267 947937068 617128738 360352710 650791091 139302017 480635835 117742422 404856469 975048039 360519148 982365101 1011914867 984752668 769352366 995823080 391555509 319166267 656046609 518246217 321845735 807175922 925800525 665817261 1015343751 473684173 510038411 815920411 787039340 5668621 514369434 6142333 169266310 1008785460 772887088 670097027 292227852 286910135 950784706 26850611 553114919 109079432 774149230 865682994 1048770433 24062006 568882553 915970836 367576374 81635472 410644427 528618412 148679539 915124600 210230375 804033480 730783701 311188648 735198613 402354924 859570651 194163204 357852004 42874246 1042553920 719973129 712980617 724960179 159034649 655807163 991669079 40535880 390030093 1050720771 959723665 437549798 450037708 1029787483 871704105 527754903 620041185 913340086 340084559 708915562 402508471 931533530 226405181 151342468 42351689 450749771 551684698 890476353 985776771 671100210 294304507 940824712 414527546 185365144 15592275 670489686 20141800 143535440 392782930 1058103871 554319581 515098162 767660859 38786649 401808268 441228374 100717124 194494950 784063866 489272333 31018461 641621620 351644641 43092087 417101280 444760465 952996849 422795907 447598944 205664690 75903835 919093330 458565263 229158147 735591711 810286769 59587369 688596360 395119226 467079248 767678410 759620336 347255691 53504218 326108953 510467190 3423507 161883178 461213058 26353225 758950472 350849832 108229974 647186178 179021773 700536577 1013631531 455770093 641317181 93016059 986643862 502966876 521809924 977337826 779918334 873842255 57587862 190630407 481182977 577105923 166181391 587199448 950348837 777977956 249110969 358055445 1073477458 1047778754 209169574 853218994 621216351 775107859 615947480 229746741 905692827 472461054 577916151 530426249 801981816 600581766 658650096 857029341 331702338 810172495 211145370 459456776 1030619324 800197169 20718523 133311384 684933464 409696900 381861392 316004429 92623321 865538728 574737375 956254862 230204458 12039564 834315523 487641349 706985419 932057395 169770962 811957386 294270698 278033230 936263720 533305780 43895754 971360981 977378990 194830285 644505308 356473613 335054504 18591879 340180489 561346360 986659965 353440643 45488840 168286056 282079870 444341546 410807363 296465321 141059216 1057490379 1036745517 934116907 461764289 38275352 798189841 542880834 501150375 724636229 1058658285 779507927 33335069 395410589 710976755 684103814 335721793 421521882 1049504508 39355992 642549227 970513505 802281124 931634976 309850070 326177919 561978226 781737978 387327326 746187986 730933913 451782426 1054692291 516053512 466756228 364383006 543109714 600401924 470898746 518254383 552678071 758595667 976093876 970427462 427707055 303409341 568955425 732910011 481224379 324295177 519264346 592683229 830562382 468051257 510000941 551580478 68203769 1035749037 888889304 984595085 364175752 22536018 638328699 43762345 621600036 576710135 421685155 1070536992 753973216 783221808 749951040 808208019 94278463 280216598 247688875 494911370 123356061 732426963 6921174 850554220 240121269 313123952 1013557238 299170800 985553273 476499801 1033843793 391115180 671548906 471071114 609755554 262758518 901356129 854941364 134651055 222173379 644317842 671512735 556752251 610714579 921388916 253883761 1012680278 1011365820 868920037 622325515 75994320 91142151 91413152 554717550 1008487254 574853686 761487959 490426532 328716793 313180222 285664068 914584470 557965207 1017162049 984544850 640544112 575271663 501335421 159084757 934887762 993995792 727631925 50908564 143157458 762166645 973927225 27501516 55483614 784699319 453653426 229585833 429732309 656212546 90914017 623206685 179544775 41363589 645763485 881043008 534965757 79717465 338349648 88210848 836106155 788220234 775996170 286570222 985908511 86699359 1029718638 191146263 222825987 1032689328 436222369 613781252 4125403 188769465 499046341 988716897 628672776 236997003 601046952 193779972 764167901 489858870 963616952 707592767 263843995 817561363 726415543 461203744 8132557 744053835 31132278 853826004 353484315 583619479 483154750 88654145 249398883 597510764 215277326 299157185 351580734 891083012 665155487 746750315 594005700 790848855 43369509 542226710 604853923 683504674 550994613 21363816 788439112 986291938 1026501334 337838135 20759734 534696598 748576836 808690952 535110307 382072305 559261807 193274366 300778254 112224827 259653166 404553553 1052982241 134038474 849457324 525670164 827172347 764144052 239343105 961928560 312659567 204757034 97884604 15869605 759680182 218990737 551212246 257856403 701041459 500272874 733539872 971537703 372480805 614992031 790041970 913970198 252976681 1003723383 140569367 804234733 722086761 940546042 197667192 922859097 531239794 571770025 1035827218 100799944 55300512 824794961 1054548013 779506448 197973050 451763808 617401808 10368901 217559350 250833400 730256719 893801172 795585997 1055056744 308731936 890488226 457597297 618761189 90737538 451880871 740913512 840444515 889297400 1071469269 307646103 1060112769 832594210 984623505 774130985 613780444 994599992 510231947 535016325 103979927 104497565 441274982 731662638 242722549 1068691857 201448127 876850504 996522936 723517165 355312999 424019506 93942783 265488100 491083524 488445296 1067031298 81214910 774946038 1020575016 338454241 931672350 275269061 132331544 55593290 818549729 642906023 184364406 403123253 914138958 576689713 23796350 454314293 705021297 697483639 97801361 269800444 995532197 1036760571 45142593 676242497 828060382 834746233 444100231 672722219 881611032 393289363 726286900 576738269 933196566 348021567 853700977 598175899 624232215 726984139 227905296 610577422 724108628 36026567 293450600 886563963 272079115 899623264 715791206 193102933 121846370 408717452 220457670 409966121 90580486 36022390 15135477 818992060 265142787 486922508 275388733 825727519 571167801 1013781422 645379609 667672498 128147787 252922871 561344054 777764028 335938241 977337094 827575598 726916163 847582210 97325358 706741371 320652496 467413040 1051861845 95179334 1050855579 459119614 57389882 36500061 934772098 336979635 557237428 671611917 20181543 444400272 758112443 221810805 590152601 695972185 239602037 745251947 301979621 860524360 81632992 582992617 789977412 114887144 757270210 938143867 269415918 751365421 153736074 368725906 777381808 250265103 237508180 770507315 261619487 736607150 524186127 598664947 1070844235 201346770 757303707 659895106 599455641 845814521 374686697 191814956 746732879 243669057 759203247 315856322 137059631 407444178 883455719 474265985 415456537 593977599 254811314 553617086 765944890 139481645 1066920033 147864955 52304211 225200861 960164434 776945461 355053863 695039281 24001268 87304283 960944426 712978242 180979717 894214428 872926762 305197441 280005120 176133446 228377624 183101791 407634111 411298884 565916537 1059938263 404193289 475953038 594447743 828214115 548861344 538009999 171344183 344109432 129277891 130767734 428462935 745289796 619830361 837562660 496759787 1020729145 464997395 499436923 147250314 940378533 115979688 668123155 928209939 809146501 404629283 808520156 747107386 559054227 103312484 345922355 368707930 328013882 202077727 481631157 102631240 1008350514 23008101 324677507 194726653 859254693 808142587 862133090 310536485 1013147723 324721263 1019583489 265558949 1018778622 694897456 951539937 1059775466 856612619 30640159 223553537 117600969 453569435 747018856 198855936 719785476 6034629 781434023 1039558891 291621034 851166968 669769620 356629588 284847651 518234461 246974368 454068866 531565075 572215434 599951211 659692893 788123468 1052209757 919853205 554173598 118303635 415429069 748389756 698550312 395089058 252789558 63352972 453165385 799862558 601079067 707436607 766964584 365412788 330697613 1002682184 358086734 712705836 356797561 618565907 80564290 273875178 863468384 428373929 32600753 325276301 917828905 960920714 884120729 150768715 735234767 737346734 813140038 842507955 442452674 557712559 98726340 164935115 915331525 451285231 670480958 741897199 947528203 117279251 1059251910 115833126 612762300 718871183 1066977978 549914860 87697196 401975555 493753241 327743217 477708539 656004301 679691193 494200727 667197341 243220172 383664244 150556250 407477152 85239015 937035333 761674138 12575705 430689424 1068861231 461677801 713396232 887784094 703375784 890862960 10145448 611932243 255143396 137446373 854102829 729328653 486232832 326451465 191934830 289104971 1067895934 438786433 141125101 5885077 226461878 279720493 928488389 789826835 423252438 742697929 811933272 601923784 468884174 699544546 640084341 736677502 338182525 107503786 511958830 234307854 298528853 727930426 459449294 199751807 915978295 530916532 87286895 777537989 212600696 942766126 549898422 472694417 7842914 351041457 539738855 842209111 498567593 204331526 495208218 329754855 100347746 642997476 362096123 817687420 11270017 730369982 81234369 293828074 344952717 17374270 1044217863 257670738 109260721 1032232495 930120437 174419781 747900207 544463728 576695721 941864754 96621395 16135421 330643714 1014757032 829969868 272236105 677720105 75285881 369706978 698295855 958213350 366444417 1037007908 1022740253 940270441 1016025800 111051364 698946021 1016485137 855693266 309316146 418471408 601620864 115622641 307151523 966632590 865540128 178566953 637026787 173036963 305474894 107778637 874433321 85523047 930049984 968301412 909356800 339418080 767246340 933550383 696749372 264952803 991265708 767180828 739582196 312250627 281823566 69283879 482077105 831181344 970054248 807754686 182387259 435077283 1051986295 764842736 65789545 780774524 436427141 24481541 816095260 200161938 651566779 259659796 655406612 759951041 644271377 99930003 926191912 1071234413 51351135 761414232 128559316 399593691 636552499 17470445 890485084 243891809 388552217 881749661 339715715 262912523 1016556278 479639467 115258977 452135676 383607173 647339112 1006283733 953232523 558489192 792666035 1016125595 914974340 184982497 847423085 389503361 493281225 153204912 8711186 1026430703 558030415 399491898 948183627 451154516 103974877 115721409 334387161 422568769 466881570 372771677 751416941 971490177 648366464 1066295582 628944783 272576413 1025656381 12809526 430211448 92942188 298598417 613533273 810458440 690229645 886832188 485386493 887521238 975878438 548854985 111972039 46077135 119240964 775371517 945065784 37998272 737704425 873722595 158112382 427569711 836095445 96190414 751177455 600804430 457078875 630616342 442531496 842171314 365503187 201376649 277179718 382693065 1011310002 527991501 531502262 701720559 198175693 554099855 1026585459 292814001 724097594 323917196 769423396 1049618350 65055215 578301208 395882703 726339252 729215310 389813352 1053135392 526950833 729020197 29688404 589288844 345989019 412738420 52516994 612260537 475165586 342605477 7329536 770872803 994895203 840169272 660124655 600660284 121226471 416552929 724288274 735122740 322089142 283197592 20400545 608424215 606780525 969114239 508097844 651482764 147933292 1015830955 381889418 792852153 166564580 442809820 319254678 228765527 46098465 548912641 291898105 772963193 845030223 198657451 1026247634 418894086 439625986 592495822 302404334 566387002 340754546 91653919 451140486 107438397 402689380 218080892 404181504 256394690 40721502 832048496 555458023 189026504 780298620 466389782 653868793 70970124 661658621 970808627 387011775 899713750 93077119 793776262 703247108 631347470 730404687 507230196 516248779 543532164 458769567 756841300 380231492 271088651 674924954 522864731 174090807 1013380314 435533712 772992859 194597085 699843856 737148679 484293880 891990777 1071247529 453254763 109127957 153725190 148799749 20315468 344232116 555740515 65464366 938152776 225403405 950326590 959744106 98926080 645694134 146422397 825666389 466313318 100937200 452397208 44652056 1025560368 905885812 296328412 506811270 130370368 701545511 722923856 969370068 858277085 315764014 801637285 930528638 1002205276 97869354 730034324 1027699238 474079693 177206759 719000502 282239443 881321979 291244676 23798696 311136069 768985532 868291030 248577431 399231639 71911513 229581056 589454745 92649120 325483211 136048800 850140338 971002424 504181482 804572930 527558474 731374040 120145087 456932648 1047215339 907027657 598055961 320734463 299366057 581258523 1003787733 289498874 243541880 83260238 573498969 535732131 480888324 650161732 667529225 301632887 1045694261 786207936 233051755 858887037 195639025 787843342 616337735 724569246 233843433 641497209 889356288 269609009 102949765 1020306025 722551924 220525442 132071696 249170639 467655548 860723016 668640968 1011025964 400999509 367052682 100076680 1036148317 127342078 322296991 774148151 695309589 820290005 183311676 499173987 153556440 220716682 489443673 858063858 52356125 329292460 5732766 1004222568 74784184 476935526 214211579 1013427153 576136783 478137972 625421811 151863788 547689853 45985023 487000370 774606709 256458448 352314144 189376442 890682470 126955513 112487716 519479313 75337272 1018631575 186477771 103750179 274394232 546550870 318718389 971891663 689821940 278453971 675555485 702619563 987929000 154694837 308060622 975997703 969436102 411270519 857102866 458167104 488297906 569533202 536103715 216137773 25829900 618355452 440454848 91889305 909349750 606649426 570300688 729117080 405828159 743858967 246232539 778755357 451613487 70067066 522420316 769697213 964614880 1068325212 138136553 108911888 616370076 151924270 110968639 621528132 524822636 235718432 369124839 236051683 179156815 682150042 361347580 936536961 1055423823 172263403 688637966 902954781 829754724 519500575 252451598 481974622 563937266 236080303 481180825 894322243 684092679 395553820 767878168 863580682 470348235 438160723 506935178 902485127 320986641 657139886 120545076 1046057827 712267200 1022956220 55967002 584630063 193170566 12319388 235662523 847145284 587298312 192184941 845222239 93906026 637329551 302243375 797257385 87977618 276641582 219981189 625317103 354664034 647557935 458026573 287971335 1049117067 969268283 381909339 618126748 385014163 893285760 92918291 230741828 116405831 293492332 474371056 638025182 407445864 980226589 14343706 160801406 964009848 561454790 878233601 906942489 746424932 533180441 827642294 357004009 812368404 442441841 935865975 45945917 2386912 363658254 494625090 963841172 1032231735 482482275 444501293 87401717 486665475 934055329 664769 594295764 412604173 1031654070 538426195 1040717580 55524209 478014262 335705029 350532455 863275671 534591423 376152062 915691769 598932966 1071827185 527558327 110508882 947492157 393914948 268178559 51000353 908650768 303181961 267446644 762156534 767192255 970990437 993906836 583780237 639859711 878977944 249509557 201374217 182598906 624943797 510923997 895391273 212281550 624184151 412336287 737664023 409008286 25321106 139963373 85487911 35119461 558844124 6932893 410292870 204027390 231764858 869187431 456873923 1048304183 427448899 548142667 461852452 766732729 155149203 963443709 718949546 508870198 1053389847 341064888 777240296 364799583 258197031 279104656 1054680136 178111011 349737802 154737911 906523256 992548546 935749635 1062601291 301758059 582874870 870322471 147472032 405946901 869679812 510202226 571041938 146503737 674059277 371520361 811342088 1050071135 727412364 598481147 872636480 406949727 179880303 34422451 859713412 415072063 918823252 573494874 827176433 185882399 18261589 564275908 118690245 448201028 729079565 508248748 790109688 438005389 1024343716 853382124 695528372 776795251 761844994 846216155 217436838 996596376 225602344 549672855 420105073 524234964 951727059 476726493 801620142 492508505 984245413 887346979 614458981 333976888 217649150 118868118 593997208 973125010 139186416 777411163 793352045 86311029 907343038 574139596 403827510 621838617 514508377 138022867 95444165 1068840556 727400484 761765823 123727229 421220132 211741631 1068501145 698291541 61446229 957773254 183268916 486042336 883628672 460448726 1051423175 48729665 349139810 547463987 108973666 926743813 379148216 653931953 732976181 166620706 291526230 79354215 863474546 132086768 69875004 271694645 855260620 1047290152 736339840 826962088 1060214303 629596962 117808796 961438815 793744389 702836384 1047335157 989029245 641996163 425180041 471221483 102760068 536761727 279815183 424204243 867472966 101399245 815021945 93641269 333719328 430500104 673313199 964932877 838000569 455731240 784774503 748024720 439542402 565339048 904674038 263761697 305643543 485426798 692252664 382571150 848735963 880597038 984113440 434531385 535899480 192047522 726470179 352352710 153830009 374250478 867904600 290673757 387324052 866119022 351210457 938837829 1004529946 694657422 674838813 1017533850 623242169 463821744 171094317 321941769 892819554 328405661 243207319 219712004 655567936 848363558 93024689 131167870 571194571 268567412 898062307 1015852882 491090639 986158035 5040809 995243227 1033857544 17853162 582619325 728918896 727751260 704616350 742620168 807805172 317246109 118056911 1017015681 17518955 484385571 450086634 917933809 807934516 583293389 965362968 215009802 286177953 186252735 360538555 490038615 223890823 844467400 617091946 869494485 75462114 409779833 208492958 693554335 258532861 791905659 628035792 470482505 613094853 841415772 327001870 195311193 564634260 746952688 439870456 878506575 32658855 616722203 740413046 1072045985 989935755 892042325 941929173 1018322120 956201655 507050275 498767044 417480769 57458195 731815615 785936792 461778922 89372050 62276012 368698688 667017736 276932026 421469640 410822528 241048166 447193507 773684760 676458588 1395153 115993410 664199337 238540387 349789898 634444605 506244658 671835715 644364283 614938465 1027226999 540034785 606150647 466216808 835714117 192261816 778953975 113912847 415736559 469041033 624612202 467910566 779754127 785351433 334264434 461162986 598822363 972953929 425060961 683096267 738357728 379557316 940080668 1026524239 177245102 1024884616 1004238556 936091000 816061349 483769555 890206835 739369674 368219415 431683179 854388190 256880651 57493742 767962218 383933810 914251184 485703635 666175540 290567711 917609947 751948089 562774425 965035938 776728513 854720961 601199578 406292408 1045379472 29914054 80712568 1049053908 727592559 933264756 499594283 832329182 46697098 462740406 394553864 499902021 175202260 750246638 884689193 768150242 42303461 878591068 363177046 910055197 843300073 69673056 814983601 221856379 493788681 1007287994 1060949471 977805630 136751615 78488663 991666961 194795282 81699896 455232141 34181918 302538670 332295630 456077780 360075688 989931099 801121153 633587517 578947948 450107054 1005079062 694074671 1017669989 42292182 56582019 485436395 658061213 464030029 670702115 118356389 947932214 160575980 829640957 112329746 43410321 666632297 187553046 542423281 982686960 736644963 372263108 291854555 221724223 914495567 176202784 54410957 701349483 256915437 494582472 884600612 686401590 346322122 413658894 873942067 32672173 161934480 748879938 625663823 60558978 381341563 548585449 216766541 429845790 633358720 282520357 916284094 363839848 278433816 361869438 705657458 371179347 12041044 59094344 826630204 656205819 131377437 617374465 170258559 825932111 752717663 729757490 99306110 423615683 90622502 404226521 259127672 579836816 966519238 1047732006 847081487 57365629 570443849 27799994 898471373 704525216 795180151 953335761 160993833 687494138 813631690 5662420 86769600 181237143 593280263 553970196 538352277 844903599 408886728 504604672 107909250 134710955 36706793 18354853 283362386 700683059 6362418 184302785 1018662234 1003726504 156314995 891132923 1017435752 794589746 814671018 642632189 563826702 896228121 201811078 85429813 980390031 13532565 962707592 457937301 826204111 308895825 940634264 706652672 450828706 198180583 717340929 1003302806 353811668 202997100 568242713 160701473 871925094 1002952837 449971598 502568782 1010389107 923750242 836419395 299653174 309219290 377252083 835209311 600794441 273413732 718707856 467202037 505728970 359586171 755851389 232154504 420179685 716445613 402939039 725989410 745909924 650527567 214094087 732623331 618865773 161271874 711390346 464507049 1027315282 45612567 725393088 5779624 213266934 764532629 754010580 394100313 698242945 931729582 366059025 843272743 807225775 921150913 776028702 1001078266 882947093 996917068 738891442 82903236 1056093742 113904061 517437671 702228123 413296450 429548136 856577476 478394202 834497837 78560930 908164307 340053903 422958232 1068822382 1025218326 763732199 835256626 78658784 171400441 266112072 76952178 1020792551 403617402 895975448 680186842 149757808 32815325 647658976 566229027 956617858 43313344 840195339 847999213 244880640 491160104 953913481 788505346 197100439 497342812 757064809 486523509 347748998 749296160 398551291 850975769 957287288 21687494 987237944 857889692 461167107 481396134 887466579 52899968 910624787 619299789 340754632 637102365 227698520 604611496 1055876355 330692506 1072301015 97384487 518863690 508553981 598771935 87797099 717497363 760462826 473015887 73830490 175942689 335610996 237675236 535114054 61058696 895330845 312418113 758168020 1061557865 861013773 733815059 160244758 16723078 62458162 383501482 81628546 608026024 172146845 683549990 926453303 738713691 688448083 579745873 237914788 1006067143 250430926 238642016 817070683 296558703 867082066 797072642 743110913 674642605 480358452 710802105 597301395 121344561 783788036 115914931 227811757 852450267 846465915 413912990 1044445800 84850180 615729640 1056452533 497598825 11084877 361541339 930988846 1072329249 197697508 731243699 1064398542 298254994 745716206 240704122 104971483 851500947 590443711 274659043 183156573 647371464 523379387 799715392 31743730 294813042 324204221 924900687 815041918 580376189 12822006 815451993 113294222 334859028 570413954 732752814 91034078 237589263 1009207308 6924330 297158271 931621991 758493679 526609741 658172158 279550260 873161838 90265223 913691847 838884262 426424559 49946389 1013428369 134807787 488577905 638554536 1061954829 726846156 187082883 631287834 588509899 214855136 750447069 366971160 3166028 102718433 428601609 764891109 492565849 313447915 393644753 39329408 608264210 765931272 795657302 674680335 335716258 633954640 267834549 943770588 716203307 148202163 514413251 359976306 2045794 747235810 38057462 951909095 690321351 893555285 287063461 68731121 1015085882 551346921 605740991 851758570 68631658 592319533 462938620 759604711 513605370 75166774 1031886412 346413049 152079346 973314502 661605029 929635616 595645309 560068915 118163941 303942662 864695696 92089683 399749489 399776997 737386596 107585745 7169455 175284413 825986771 761854871 378718710 701866430 169595250 505961340 726211110 840496430 1044711327 687784352 915611602 680040564 958732235 89550073 829915428 672541554 901821842 573954053 166905823 878411045 248626842 108391547 529492319 914765461 728777367 44651680 712059458 125825513 220853536 630225906 334129376 686292551 366721179 800931026 747227680 1033211138 467962194 860068486 495716787 561256947 63134243 83278984 951033803 979999492 388370931 720200975 159813220 666853244 383825689 722681724 445870401 462618752 427077290 887508045 646677384 897924834 85214092 687365488 307876843 632905203 945943565 597037386 104809497 444479650 735053995 319150879 382606491 400233979 284273619 68920161 141550144 368909490 679573053 255800498 339291318 747834834 11067029 649804671 1071582261 1013928975 227597641 434021950 830192366 15346436 798195090 502460938 164670256 1048887484 3341583 972285316 570982019 695413718 457327458 1017326386 225596817 257883243 488852316 689869152 419467117 966884340 81793808 696119900 340619351 162592194 426165836 947390958 248208833 580897262 30841481 108196419 96524170 1010810352 675004600 946597329 1048584060 845688229 297115638 227517543 375189205 941313338 363137742 991434089 554051392 589477322 61776344 352577735 925544080 497057760 946766222 73479471 558335286 988473739 48085996 839614381 183857392 37973520 972512782 45982481 159828349 453056910 447865974 985066079 414013086 425764106 673790393 947585644 532309435 473286121 369633511 991002300 105153779 27915055 65819093 836519161 502142808 750374492 953055626 1029541767 755922879 54428978 196486138 871032523 335415727 437453372 126825334 1038504338 102687742 752113062 458843874 1014996244 783340690 34994975 112834047 939593345 1001149975 831963396 51762712 992011128 113431706 813389765 153340829 421232994 703432591 877320803 346061627 457332080 145234966 108450221 730136810 70450476 102975467 241104438 859795893 698658742 989700862 191134937 229538118 341728609 490606179 270874013 794662896 517973684 634835417 498511874 627790714 527153975 20110612 1004756536 519796942 278499111 820405187 550944245 595920209 701828982 950391511 701045827 649597106 763525052 344197736 706104541 294559300 490356088 788450337 762556837 950797179 995823044 613502261 512652707 779243515 43630855 333618061 645962502 649425939 482308951 370589881 264263901 326454747 707574840 1009141263 85293700 947864317 1065102264 658668412 97859536 147682799 736405499 1044105822 667228516 170588116 420166816 19585449 286594322 646805129 871129421 264993126 36038200 530328543 28419452 367264399 1000325830 88773678 210598524 74799079 177511492 802302122 793834410 549486906 632338169 136884947 552851336 470363013 125078750 307788274 378818996 65040031 100835219 713600030 881705017 403625192 400174113 910903615 192215831 51857497 234025933 643909783 360209733 366125155 506056602 536981330 810318162 612748236 684648057 225175894 807717435 732494311 455942451 7246030 58304093 261273171 886915328 310452705 282294051 194162578 632936733 370341648 251635949 1045197028 432745082 1026215552 787794154 129130431 463561973 843435963 562563719 313886686 21283250 478113815 918860022 108974898 616954551 172381658 448670449 369076587 614926087 733916683 1024916752 928290776 841484800 423698038 369849802 146992301 882804696 399705164 824608480 1024193163 1005028541 254336272 446176859 61877297 1003516924 790732345 838048525 894162262 763827542 473379963 662012695 729104273 374667202 447950997 63615991 150401680 821610774 629632676 749245601 912505875 794171138 419689898 1022191218 25039437 715409952 974708694 999589075 145493333 699931936 155515094 613976236 253239840 86226610 1001347392 404235650 370042223 37205809 738461220 913606101 784595771 758682675 710063338 1043838508 874263763 401590643 439005060 196447671 977968726 786415138 668849058 417370686 408524805 782043673 190996323 887710676 169978795 949520022 359828860 906354604 1020752675 224962331 868217639 74771788 131420926 35004768 1016979787 297514733 666499205 100667918 207437503 475820940 486422278 1045642997 791563143 1052377845 488512765 443275635 477190896 400060520 79451825 1061430365 66627758 750087773 377099049 831505416 1039694513 755464629 221155372 543966519 199668481 463338118 421286287 300828384 811994944 540714021 31240911 954255868 571007880 953821099 340160746 83278464 546828398 433939194 110363391 394819852 501005395 554721357 716647354 496737467 1035646667 890476160 257904796 450976963 685272917 94240133 995006657 536064680 356708296 857834225 556491439 577224165 333535755 246808299 375311198 76674123 862609475 489353083 973848581 411241601 163454337 599854822 761449566 796875742 900270851 642682033 271376674 1000441528 529799679 798103048 82802482 649204556 364464628 951368095 97630837 985225474 740887666 772138986 127522623 197058556 786183170 240200687 854900422 903925265 758997115 1039714982 2824567 285840461 276608122 827954444 224127101 691358115 278295465 830160502 269326980 673289450 763812916 1019129246 143717270 1024963953 255352666 412330846 683973268 323675976 622091262 551779973 868231101 181702096 642857218 452072802 109751193 162863526 457364962 582744680 818517902 533109850 963406264 956555862 1013302411 268213385 308184496 199030939 1067149670 343131464 920826454 837613323 75433229 1041047176 118543354 395753809 614231714 1063853071 328544116 625185007 115229256 714472911 1039669723 596778023 196210245 478619746 46133577 153317606 174688550 443362664 418127528 824903640 970355940 110602910 1001300815 989988567 711474423 31083908 1065559196 1031249849 168098649 1053522199 755503797 313800273 5489401 586093924 994050166 32404685 167830239 1045090465 50484976 812578282 253278081 768933638 310834891 665712673 701271885 87588532 407598935 1018647350 1042570738 597645073 425471485 667794622 359044362 83097879 219730812 645194571 214995368 137454844 189734135 524877325 309169891 994789810 432537866 393731464 750813553 471912940 721171990 744373141 1057256434 822920337 289237034 615566411 564113411 1026921165 967493471 948017234 42973555 257942306 173399932 120762295 22468303 595488788 239452176 769085477 552052151 191059914 562625466 808662557 230913594 77847108 573220128 446745972 654360995 305135656 535675020 793501570 933615307 136080835 401771572 375624955 163342101 8174256 842082298 954737160 436543161 95079879 832946566 760842288 339056447 592897050 657628710 781880267 760883681 590574859 900237289 750396871 999118354 690355377 407231680 387652062 978537441 446769927 717900472 260086119 822697620 904432533 1069548119 152808765 248763443 107453028 557419178 575071762 246695589 320303349 547652220 591254357 866795689 360952393 811687627 862377966 867239258 689692561 686553152 3196071 285389147 746940281 794050559 778556062 265951857 96069040 1054357800 956933387 214674994 175664183 117720690 851864995 753477147 119555708 425434808 577947839 1007434678 898952014 370998928 847080948 812742345 194445472 1053083229 341280674 102997939 298469173 418425754 677482674 858246129 882830843 920014129 979036927 33042479 70723710 522161175 1021088860 353071279 498929195 338408415 388515009 72702121 114576456 2183645 785771246 1014012607 254546084 65606979 138613663 210436160 590281811 938445698 929315068 670012092 498534448 619299105 129991460 261094977 53380625 806817776 537816539 312535357 785630246 364533862 327495874 95672806 13420138 747127374 1009761747 656618669 141451992 378258561 587615405 406438692 32149042 20536315 57538966 151215664 1066140766 989539257 293860643 835817114 779272127 109671751 933863132 42193849 1002493429 169350559 772373499 579596930 1065795167 595525401 652630542 44746555 85966617 917734262 629472480 345483078 396932046 902309026 95672401 951318639 423966053 243410789 938295083 996498267 336158010 896214135 189522067 997744306 201684358 801496847 542905909 531562576 970212280 964572404 137127850 464653656 176835676 245726330 106230791 18831835 1001709221 490487454 342914903 775143695 923287236 1049595009 636623269 72549731 169492267 831591165 129728639 762387984 377806162 464917072 569055255 812814351 633301826 771648219 865985834 93169761 301025191 274987080 838666359 673446488 214757949 18082090 1047623433 872237009 980137280 423514974 977540596 474069575 18805 248624791 118830207 202385092 358619815 921673225 393876979 415062376 257776886 642673945 974707729 464634941 599471539 967344438 301167654 11198484 191133010 84434458 54422536 524081039 156188723 527316172 848177816 101599573 247087848 31097300 136099485 609508288 781897427 939276448 1059715660 903172364 599749480 16729686 642069514 597513352 914783775 872495191 390538645 616284131 325864109 639836710 310388141 431311842 801172732 737091907 794137287 708585900 652352446 891281398 145717028 471143858 1000582076 683036210 618972468 173615625 167358229 844253184 314044007 1036192685 945490525 412978107 741607552 1058216988 364870740 945439268 823552615 243025701 375156950 354239818 759491732 9153486 727196882 725888727 715059691 897897920 1050224584 557168575 462861372 888331738 39463085 57002477 796804198 604800930 843708890 432926915 758505784 907989876 317857574 214707209 1034127659 699735256 918361840 143166730 811295064 1061493677 509480123 29492078 990763843 59574975 522693447 759639344 464772685 621969630 808533581 489859756 188074453 451563927 64086193 241614242 948605764 544551416 86733689 304433761 327546715 543110457 143827492 544611611 231846063 345237278 555920353 230145704 1006075579 345998760 953288046 244081120 48309217 283141160 334348158 938736961 1072062207 727395708 447869956 250267678 518497074 243402180 700762577 357576351 114346366 114591127 215369458 275243396 189840903 642267256 491035422 154872722 971241540 369696316 81186160 1035636468 430783996 1044884053 772296016 178055234 854066013 336801345 788985566 343649089 189417812 932924996 934302628 429997252 577963565 407113520 527536559 253870269 86959548 1016074454 152778268 1069242649 141158174 41472790 231137934 49918065 630653854 1054942634 1053786515 820285990 191303225 791427371 562291813 308063701 152151075 653593991 68894775 709805444 54292215 185989650 1071285295 765899228 467747637 725072657 769005890 415291866 841170673 598249776 913485097 334533332 519869099 800737117 250680426 656773231 849191918 150077281 1048912414 445719210 943943155 806084965 98852208 701378497 253415032 937495649 245356377 280149563 378445768 145689335 435513048 48160135 675190766 979622448 7691005 491641238 679740809 506048047 620396209 700386655 888836679 605403778 868924198 5542771 502746640 761099108 841991182 240773805 735461213 16748347 240630717 202158048 374663165 634596999 542413531 274671791 240228463 813692331 681721729 508595490 615194195 50100263 452998089 8639013 372235277 979336989 1044578377 896360050 832301975 561212638 533938823 179255815 93752909 945961135 899426955 351418012 899267514 1044930846 869884117 286942883 909932260 130850701 928928278 636731621 256392969 323321501 731149378 79251413 89899767 293782466 201837580 1044128647 458019882 280854240 445487126 173671622 747089107 536285506 721191875 500984867 604624401 458847384 581007620 43723988 611307620 382710573 268372553 1018130957 1051373665 386390707 472773084 1046118425 202383699 283537943 57342692 835896007 1055531867 178464889 729982845 167036058 105717667 586828581 761637492 120663544 40834407 492154296 131470076 622300019 551577975 563767595 502055888 774407040 670135984 208585455 551063277 985828856 724684946 94571068 253966659 193541882 112494056 990287304 435342898 348884713 748981587 246782004 257098494 691620569 857648485 988645243 712279014 262156797 130647043 529909573 1062969549 400016408 559316869 435351525 133669264 881899270 906357713 840547522 409997689 949404266 964185735 264294193 595303745 244321485 156108975 598228031 369709558 911749052 494595984 667099895 1006024296 57960031 1061868443 963285857 691567583 659810710 153191737 902721261 286655181 176925142 71660916 208522203 670053504 908729291 847503427 913770097 60036794 672613654 991082345 904921273 1006141958 868883996 18801996 546099828 306556156 371235043 1033956020 951752340 169452982 521684335 876779841 398171277 603874012 47969328 745903076 686640680 851658871 308075104 863364901 11282212 185963488 480159655 324593164 571943871 622190220 805272368 472111269 442797193 183205642 952986782 347067606 934208083 717479705 337301268 802793158 965807721 709092544 6767176 667913326 634458161 669521289 200461965 454228623 580187056 161232857 762381961 529635976 660307301 945646168 882396420 1000113396 192612967 861626397 637942465 209560433 897810716 425199427 240855068 1039017899 708625568 944781618 631417669 865337715 435617478 746396245 863179041 764878871 353859392 400229460 643202892 668821835 329509712 285623506 428185813 848008582 139503486 694405468 536408450 27307405 39158634 157126260 715936974 309001727 730160767 997119777 1070353728 1033281901 550230053 508054551 545539725 521331389 398102603 481992077 722226459 927084795 700460900 64205788 514075801 257074398 137230582 516965990 976281076 779371709 78452672 387585919 1004688579 73492645 550855646 300970581 192979851 268240217 704853729 250801149 795636891 86482506 958223415 609051163 965768682 208147690 281405578 74879990 282128353 902132681 943322296 738424512 446450587 40866770 876081992 267649975 667012327 696565536 17559712 35362392 751794909 505973271 60776190 808709330 902504330 853892820 107317537 658871529 195959680 194103653 1056418180 573429771 219074419 889685422 944449905 224617507 358944084 1031531335 429639698 1057624307 521913239 588361002 125115820 567275139 575822356 83977295 992574946 72998563 761813811 51082328 694087306 76029120 932913198 771919134 441535185 1016310525 794589544 714190581 209333188 294312792 1050398552 331629926 760257162 43206291 7628843 853745491 215261330 529158356 308560288 124771041 8831317 649762708 1041649046 741133034 173900540 983053025 433401625 56901475 684113638 367722776 318367638 631041664 1025068909 440524891 895706321 511178858 1049695594 1030619199 518816326 196311972 610672859 861015193 218011985 98588631 313394273 972950372 2840536 136723692 1011879057 258236001 69636223 875907986 773561757 807595757 230433078 459861027 636379569 22520442 403413787 136091773 816325244 584385176 858287617 319354396 699725043 193189054 380456758 801241188 198058065 594378680 17329578 54883395 380839001 354723959 890410317 488552579 219338744 602236901 715015852 451070272 1061829375 277235751 945720432 93966843 664778015 464658135 1031581427 733981268 891794784 329496832 42496772 949924127 577615093 502185288 659455539 532374043 97048620 359629719 1059598475 523073526 232335732 164205784 380477481 1048913839 39049238 1005816412 761701231 460915169 91097919 206850847 714838379 821790961 197990975 745355869 320056088 730663503 69740156 857337933 244654825 266438530 216119318 713900030 721718421 23143392 552483561 467681899 605864968 843831466 185439130 777141089 847127368 41010128 821283348 201057306 968734455 596655203 829242719 388740132 436798881 484603740 164108547 418563292 66678685 142304079 153190900 936212879 609402386 1056274302 125388726 783572778 1022949062 254385451 571353158 628053236 547357655 1062647408 390130982 929038793 1045709040 275885369 219879281 183486497 915846721 578191378 176729076 466050995 267162099 311339361 836135011 102842220 224759031 228842443 492492530 699950769 393106344 13589566 587490854 1007222493 223835830 778942135 928272088 305476723 643414646 372810696 180429945 343908378 442296033 985065903 1068836413 581839240 902283675 987641184 1083509 836629524 312788533 926247064 66899505 490173744 747467857 622320915 712477877 954833744 386397887 103743334 926679930 351597831 561875970 77566774 315702756 245859813 268589070 865584929 93265276 181148430 330330320 839342311 244774244 899216336 288105138 83056476 617638165 403366156 423715174 282820059 715994395 338353853 845738364 34858630 692463809 545363575 682369356 573209167 537989796 31708869 234518972 157969986 845474412 954191494 879157341 435440416 481165690 286558023 46289011 962401394 544062758 995718933 900336665 1039247491 370074342 280479095 114478741 193423694 580391758 545432187 910597188 692804350 571588244 774531325 779450938 226377574 400206109 842213780 311359767 518492522 302914173 365942551 192924347 400846914 818913266 994837671 834775897 501137475 688440114 645114779 707228464 291527984 702134166 430988830 651949521 103350474 46006755 227798238 851254992 383660481 713324833 510525143 642385723 682458844 160602479 563051617 367697531 792186557 760665366 275262382 807245188 418990768 301037391 895418887 130260656 348991936 614556692 898081658 815907674 440842989 8755098 66631199 869443490 571267183 138114448 191407484 833561344 70340013 29670728 452206028 717667070 48889393 872048418 192837496 635807751 466025782 155360070 286660251 896365347 657972235 521872588 1057623434 670182461 60745179 290834971 853379399 867551520 282563360 1027920493 166278394 925356092 1064845993 951302367 470483849 30032153 198062406 794999416 571458525 738084381 163682640 678627526 1062981304 886610923 672111696 979813476 765011886 356029369 659889425 932989461 61556106 274657679 406946266 192290558 711866712 70219099 205739613 154606577 584066820 605458233 377128407 349901348 647976780 704928060 490288696 167082875 68229404 854709794 713957378 513673026 120845355 29032570 723632763 1053523214 709200524 933779296 176067149 343648942 158444170 26215043 445622093 204202967 1008996109 63810286 729217351 126854621 895036808 135010146 815816218 964205816 789503424 337000034 842399279 302966528 119551233 729219994 341221755 945228453 595297593 741354798 123833063 483631614 275648662 1050891412 587608442 288050051 878224715 552046080 848223364 494654860 962003736 853521252 907152854 241842276 174974793 426858081 555062566 177793800 27294018 593575687 613941270 412615247 239099041 705318030 624014100 948715915 462042537 872713712 443432494 645430299 583967848 484773750 599491574 267270813 874332014 46507010 623069572 923534660 691220563 228955689 852488895 481128519 774489410 293515429 1035653520 736268784 539174788 984390660 944388256 441572509 714922355 878857499 643285153 986598539 686113431 648253881 996128423 981499139 746906548 330870081 528699758 1066158100 984285801 321704250 345719082 956901290 747026662 743051135 621422766 674530991 612301599 142789281 776730588 1073004742 63141338 194972324 753022277 284372885 1017497260 553534108 1056527201 976595260 530737210 519561840 87005690 637703760 610038743 570350656 329129607 21134000 175232691 239948274 401711113 105079004 902113858 222839240 781380164 48760214 960737523 966823479 696127349 605862376 1025910932 413740958 413273119 310640399 923585231 26298393 567692459 134212068 428968285 380942957 832158465 336052635 171733801 138987274 719417532 132401548 696972533 73811564 382450142 199466781 1015069884 467022735 254088887 22535165 921031333 1005522393 1039196443 370813484 294129676 915926441 91700854 541932101 520436198 448941491 86267805 501650041 634081135 525871613 12568252 805764617 739198820 65351226 28428627 501741845 65196758 1017842546 1070518825 945323037 914450687 469352199 112121935 369155028 118530291 316031525 544339742 432475144 174251427 624500443 487464391 818595765 489792890 482199316 712581625 799226322 853295792 778474202 119852371 959258135 213267040 575497331 720828744 580052666 625925121 448497074 879691654 499046698 981378799 219302064 205298181 321100267 927968607 266713122 142685694 167524314 633809062 833977222 55247555 502597113 905377031 221105905 146674277 202639616 767507407 341221504 115686994 710855358 8627091 375920107 302015312 523726736 85277159 821556874 716772269 1067792256 963890141 1031663535 921592334 206192012 321261740 216712245 106728083 713573668 927091891 599370555 91005033 666765316 975980424 463320394 161271034 245901698 1046907402 247568099 455671080 209583878 573058501 57997560 112373051 379588090 368204893 663005331 592702848 409548142 806007552 755398065 605140503 621388468 55846568 191798358 554845744 210644956 568900910 882531719 370832989 396704688 443499440 713781005 855902115 118239665 1030211507 276816294 396140602 534125995 1040152842 100921084 326463295 44446432 596371553 1009394342 145146572 1066441657 631672479 167469031 369696576 766083306 492001455 599707027 702890197 640029423 151055121 785533991 296251245 609717931 471576455 941134728 224330329 358955432 857880901 250941860 176540290 982777965 128545518 217079091 1056408657 160785325 149668235 23846732 810299383 476878155 319490197 45611752 916853913 492050527 903941953 265884058 656874839 463614260 169584242 813167853 809933516 692279417 557477164 586050714 534572066 462909567 1046945516 403883238 224643055 322329273 814982264 322418834 840999709 437906751 884639651 663026747 292616305 971211297 564158619 345219837 407277342 535338206 135622428 1013482655 543287653 191335240 443733960 163102441 703997568 41546804 702726184 1022925886 689991297 571915112 86182395 21612522 738094207 1033160971 839959984 961637694 823434824 520505067 666833645 845452323 397948320 404317146 832530149 330541550 505477571 705233254 566428387 764383705 909462083 732542900 141045254 744601164 349326974 329833283 1053664846 571547309 216260758 193252742 552477945 265664985 821570210 727391367 232585183 980341115 67190606 77976383 243839743 591276962 620344912 1039912341 31776446 972503895 565765708 587256501 529156313 314752484 637800590 1035090020 155809090 152833840 610812616 135619007 657448266 26386787 267319143 998463462 844201242 251954343 176598027 342810465 560634626 1319417 671811887 57467739 374699686 792012190 316339500 502704146 990919034 770260646 1046701451 990756899 717827165 625959896 1040508728 761857653 606059483 55706307 1048305409 303661312 998414165 109898856 313193033 83400458 330951373 831974164 119977866 659954866 355911271 555773687 8978945 849880166 931167629 855336454 520613636 459499084 1068619868 871537759 963116927 850100167 747971497 912447758 862820709 846995411 344584819 942259758 954481135 712684362 425499417 224639134 577378985 1239452 164421181 307119213 165000485 1039427063 890393828 644092521 903479661 794032071 279358511 42966072 1044796571 728891365 146618813 322738245 208334646 749761935 564203193 253948089 679068004 709965082 1046595036 622412733 350060120 942979238 629800483 622593035 137733008 840090354 530415554 148856689 616064628 628436300 744874609 632552653 8186678 304672355 803446606 482707112 1007243382 518285898 335205472 515065478 977636188 902632127 70206822 347866117 622326349 882950098 140165252 450589374 864627766 120661478 1017975465 737079676 680367659 361963882 280509101 703794249 342853690 863753973 78455620 729272471 47873273 215168851 31841190 856717744 84467659 170632835 351708120 890535604 225513863 453371004 281367718 150415430 610556639 545254937 349606274 763407250 641451693 907092592 346504530 651041098 504588642 564770779 351087823 773328483 172190950 836778375 254621484 981466941 698551216 570282896 5736071 239728118 879514187 152562661 461451108 620362626 322345777 645134971 365237594 353176720 699655503 981843296 692402242 984604956 986256367 975096995 73923446 280407625 535101752 969341286 1073091418 513193942 872539693 483489048 803926547 220471417 939515100 889339875 433781042 728993704 561581576 238916857 936840036 206807080 424662086 61023624 423026579 633820045 659273989 679264573 819345575 49300438 452540478 645090090 598772948 745056102 194106084 218049157 201002763 325033856 574918407 479548569 383309301 595194706 44741291 853826466 591898441 721971687 692317720 929744523 510296994 613883728 407202416 972233152 548728100 21900726 1056731876 270223935 498751750 522329192 385161976 486080369 707240060 813899657 537175032 881359602 960469737 472086455 37281849 595381271 974891345 952822191 616210542 443026001 691881424 561380589 793531508 349618786 525137500 319664116 518378850 312526090 170277417 954773544 821379830 673706256 877554737 343411964 763132365 998333141 966912801 5981816 875755357 948218161 434614061 301660709 773404804 736295521 886325842 330368193 50152782 636160389 195661119 319464073 238855571 252539779 423184115 72963869 399599811 915958832 338690982 589646505 877643327 661685885 491129159 59907118 453560442 967410799 566559050 95761302 911904436 350321122 554447282 760057401 262063419 913779993 683616912 444684362 115196961 685246899 13734796 76008738 1018232812 659394783 405046565 365198892 621543330 827923591 246766829 846219654 558173556 343571998 447568382 376425767 840335416 497038348 335178245 326528983 670441147 458208341 284567618 386360354 919103746 322754888 899369027 576165584 612157412 67878641 151429908 765760778 223033923 422626040 367025372 900412028 976501612 768116729 524208855 360444523 254132131 688591350 295479824 878273452 250498469 379179045 762996761 944364337 140387594 946986784 862545591 258124521 505615665 879240813 516360088 342902816 974885778 922669950 180557594 953189850 628152694 513347816 621156505 424808845 987965113 882383320 105607643 476174533 337344537 122649304 627956479 650656441 139163314 363203586 616276045 334654876 826231612 454941433 113973023 902677266 283591409 943616392 1046354657 942877506 613845784 560770464 694211549 540922780 495202234 393906541 718556834 171576131 215453315 610811883 292315851 244718070 181471766 604961991 1000372453 299472535 485770982 932831052 75909598 957181119 71460138 821843853 781980203 120685439 848713473 758955649 862196471 737060117 675311393 562370507 457229411 1001145031 426792595 638104880 629484117 96884431 459104686 95912983 665709657 603820276 914986624 750754537 900078141 598081163 314655059 624497624 150487753 801361133 691922441 637121967 434553728 385967610 647241853 476211408 1045465452 569925791 1028561037 443857900 267380685 730398070 155615836 172182995 456276353 446647607 87957856 467670673 159984668 1057728338 39199791 668515085 882298040 787312952 36167375 34076873 425768207 747187591 889759420 744280355 1073092862 617805380 547936301 914095577 81292079 571951164 1012902313 703288934 554594615 588006514 473873304 568329728 165494519 911848552 651615979 496791418 269227743 27344137 890751069 354150999 658183300 33772962 910474867 815158283 381454459 178208605 814029115 701193715 260842941 622926996 777842171 787070793 816579543 143109298 858976348 72333329 947565199 690995046 327654961 895488389 221040062 57114214 320255985 133499907 1011698910 799758335 333672496 401547496 119055162 262807797 740504635 523464791 130260422 971501239 771942484 853465094 617405537 486766769 705875955 686665690 219365019 51753164 1000478982 194152127 258806365 884436218 611541695 379496109 23601214 157459582 32165568 201305163 775155464 301496908 902634 285242633 649436599 87683489 375852670 130093529 748607901 406059676 506114096 312563787 648905433 253066751 1071963691 396295755 39850779 617598249 60300654 240543288 962042931 610558185 21956010 497184003 313911027 607431302 440339701 944689553 152392094 446626674 930802811 62696958 774440049 256132414 716646601 1064936503 428401738 504238865 583687609 80865963 251576719 721525153 869060824 283077152 534354437 849968663 412526548 124599449 1011470992 874372657 547301057 1019579971 498642725 1017075019 876755195 196010960 523085597 409349391 954747480 962349951 595986829 730869740 41392646 451633477 544700523 780160967 327039321 537309292 162373793 894893443 1041402700 98341972 13338391 593704167 492845902 1003675777 374178745 169940219 516291874 733782814 913449439 22883483 1014504148 582828886 41208726 542034178 1029633985 783276840 694058483 430832072 746016387 32219050 188097732 655424154 104839107 403276839 885929012 795006523 121007538 131878681 310878177 503176439 155969405 887381378 518164391 67519527 741022463 76878890 11748318 166336579 935479474 971591815 3533208 558373334 1053619052 480411221 342355390 668276428 540417017 44475016 324963712 409039351 873910900 250343489 426312972 167818395 392269752 337168725 814527998 401706805 409184250 75280518 502281527 853874742 732240137 88999616 480054444 872233153 113226952 149247538 205751950 282493240 85632101 570378697 319335523 811805795 370070926 993045829 765125612 423499206 578579057 210671500 292223965 164680243 268002642 119193136 314262095 749003541 217937126 812181062 458787906 51112436 791289329 471816835 667232730 1018431141 645117341 334851422 45625693 827752924 16064926 1002305720 99517741 85176698 729212847 332184515 282266028 981520079 684897183 227020742 835273349 79592178 239480951 299893206 915142794 579505170 256591114 950269062 702213684 745821696 556494640 816338463 20314802 826876262 595770153 936505608 827590916 622430408 199528684 642854150 820837019 656469158 42611015 385198917 70789252 52804924 247706454 469598946 989045508 220161497 810696848 740053140 830356095 690094875 948490134 130147118 1002833392 945709691 89238122 276717550 460855308 15135631 851808682 576382735 803834470 337407625 251804976 857249538 86414067 744722940 448088538 132351371 934363916 392512431 857173743 1068312360 773869075 1046454252 235643081 620382241 377234825 361697168 676929344 997482998 360540053 191640904 314757616 695578234 55075985 533501126 1031972558 905750632 186762065 57295962 26402388 370066362 534217806 489538370 55670788 451296837 230724918 61728780 1041475037 97602407 398339046 768113365 698810836 104654312 673930601 453737659 444980813 133946174 748912814 436233413 1007683680 522914190 349916088 1053458821 113529298 67877513 601591040 733817135 63946563 64284427 503216839 578709639 886950559 938245960 1045161350 828171941 575436687 887592564 661847582 53337935 248996561 190442496 533968428 84515064 1023737341 753620869 756732656 259387696 579192890 626114351 429944573 365663187 711965685 164530830 784278259 270791110 285013534 1006338521 747148377 247209305 894161215 757744698 690638601 887149849 130875949 993498560 636125878 911271194 756985365 1038761575 949513523 74521501 307424642 716264127 813246649 196139736 919459870 739542417 453967739 13131095 603015670 16524130 18026855 847228782 59774352 1006427373 489360917 820853435 831133182 1011025557 1058784198 655257362 579705214 750498552 380670960 548694581 276043916 499360994 752185451 92676681 84406248 335838550 420731010 1042397163 402814167 305151334 996331809 17165625 932388890 276567310 584496638 660236447 1015942730 595747392 203362829 787830085 332367356 934926664 56550622 876039924 617730143 203398356 590679857 892828605 224159464 605172846 365730329 986666236 533065000 171642055 926561655 71533191 279939655 210917007 464660429 443678556 1017287182 17002407 594827862 513812123 372679592 611716890 694065250 351517357 423699487 422624698 350119158 2937817 976030747 506955149 1005441208 525814306 876117082 565618615 975160063 983128737 109947164 419710836 188390333 471632629 55500238 316148518 157006955 977262808 611102165 1049489558 473152841 821782303 140939711 959129305 990354900 444519994 331818054 1003983049 455662926 792524303 595175164 460607614 669677568 118678655 1123976 535214048 254030580 574001351 928887290 946645775 882043389 975336770 7350841 526267376 65619208 146762379 561507500 539255676 665136312 975441125 460459168 1037004097 308523674 279572154 127897436 978155341 266381698 789596206 767362475 901653373 507014991 148317981 897945125 919323896 1009955815 501142485 847008221 353527108 242666364 908057799 190279199 882604119 728413406 593517526 379823394 536654716 286737339 339284975 27152907 403613889 165681518 641997914 803736283 79642092 1027731314 892729804 73159209 728404392 913308764 806102437 609277184 915779009 776688715 759444705 636336535 744905644 468285866 706773988 658337690 136966393 818979462 782268964 480447673 240508930 362131028 859647899 652994680 137192965 367427332 91347744 85116773 966427959 2287173 502498629 656496618 367559862 946767832 956792510 151874599 970163373 384562912 467105216 828334233 589918460 917036895 493027930 665257408 407374568 345873370 228649550 981092223 418814371 929328546 299780925 111802022 131602734 660414643 218453877 781573830 976905384 549570222 419904307 7389281 459641158 902602851 692027298 89814143 960560133 604093372 85758888 506060445 700735463 729611254 424819555 951580525 937417244 686111793 607286668 587584025 849140885 903098936 329690042 1010873713 656903834 198287288 1003415304 539861351 460233210 894044240 1022753309 760597626 951430138 101961204 255635073 747268225 242758490 382343733 814965114 43466181 295498502 393365080 74052311 125242081 227034458 453944761 252902921 381280453 913817724 190221097 475104976 149600071 126811088 672917042 846385503 122949576 440298803 771210991 139712061 820376340 732113071 786197491 204567772 788075650 249049603 560963020 1049852835 620031757 694086580 760099492 243411904 62884902 699069260 70324463 735504684 421442259 948020930 774316018 759948245 1063564219 15773431 800518349 1020050697 539515975 195586957 388561936 608148420 204263993 721769055 539002255 1044599187 219761410 715013001 572962598 697282282 862608673 70620396 384210385 655089076 893170332 503996256 484011721 1060318055 367293279 389947027 354284504 362842184 1044914162 900803684 390724982 203654051 496842055 877257130 556336695 402579864 18250179 802256015 67175639 253865416 796547833 802718008 256108546 436450731 910586437 890381363 539983059 499488569 885578349 427265407 544671177 942462452 577155615 191605225 73139512 625481378 24952739 395652801 199507635 657897046 779771745 435128432 1032289610 411191288 676242971 739987384 6661637 1022495445 942649828 1051803444 64902844 266573647 64764857 532352274 740211422 12649766 1017483418 622802486 112789889 772374785 774906325 731054231 840693171 1035706077 50773242 180614781 904620943 670059333 835244348 1064874765 366031959 19689521 659332369 472473066 721537488 895677369 958282639 104603916 119028653 509776810 278876499 57737958 1043919837 523361887 353493430 329896776 108717878 688398514 790915669 836984007 937140891 1062872239 37740429 564620275 915598732 877190769 854844878 263208265 541252494 647620264 240968456 579970728 721928468 409322737 268363297 481597237 1038360337 13183228 617915505 545974243 150856791 728811072 886132571 494019429 109637350 639944033 394126075 742958024 1055314682 134326099 653698296 811325066 10007 156726954 397210998 843964440 274422228 584006243 393822017 778424583 295109176 829626917 498531892 467544272 457524730 583279293 550047266 168756876 397826867 693560068 139288620 992709827 438519985 349671929 958779102 1058604262 545686794 951708905 836863738 849666433 191406973 1023615825 483097808 461120072 366075963 804423491 1038073405 1028414810 416228396 506156894 772833417 874362089 10773346 781418162 1051146255 308371748 454263060 1018671806 481685931 326124190 320123232 888653375 52965509 59754920 413899321 374943778 273405163 129606173 816193095 1005765975 277290860 1043709249 634068806 200701400 261813763 449887508 103986210 145208486 687434005 616532700 175440773 833477140 190989169 485640823 284473655 100349278 1061554075 564505278 47282237 115545561 824679184 364323868 753845748 197649610 331458776 723355093 548989232 858798147 194437344 186859046 30999723 290991617 661799227 941673837 136692912 960343446 946814350 24296123 984510131 366116405 299961397 416620629 697841842 581087204 237765879 632715612 263287745 454110892 1058234273 180176917 740161557 251720196 45318275 314731820 923728251 952874199 674247935 513320140 478455274 663301544 369211686 1018693374 151668321 928328041 630620178 828450558 266728888 335195127 695394779 324418115 58930954 119157900 30998288 744623121 132190094 603398372 289337901 89342067 484652213 86321517 550125649 946876020 528519755 458277193 586822671 833023960 786478531 247268488 218600679 669535021 513898572 1017724836 442255954 299640595 226289631 482478145 712191186 652757330 937886462 843145998 644636972 909936616 318360389 22440344 215361577 989633033 171269994 863206858 150796387 792888303 970285460 243692573 220994026 1048175317 584885193 594645392 812561931 465413681 980280490 646324229 138485290 157765322 579676000 548348732 379836079 12130769 590865288 158210486 346727836 346885522 280915422 407346008 693289197 15778021 947602932 169752575 311989875 81471957 355553751 106132515 539185182 203480723 130537242 327223114 276486034 643172836 634783817 302837746 787701810 744477616 816587259 30243363 869293367 317207966 435709182 225373191 589711251 947470235 1039489141 507872648 732907417 239431668 855788649 895815270 444770479 465529360 709931529 462020410 96756343 177283430 402004982 887336769 1005167203 435627112 414911890 562842713 546451945 93601644 543189453 1053277567 436653677 542400464 928581810 454131753 650512651 661160593 1005752794 1057179331 1040524686 616305930 629248279 1063228278 479751315 577380355 21560103 492814934 307329645 727072887 1000508242 964827810 58006379 967875115 631610974 404946197 46294832 295547818 17802574 262240511 515178339 469872216 387216938 830726942 1040362481 4424350 838488766 358718899 667473688 96622958 840408446 134866625 831568773 663908571 788594013 998547295 417109790 187818370 17677864 362798841 1032556773 511251792 48256655 801756798 33878799 853844103 76665179 178599555 210463696 315894624 30468790 267473459 463251586 74703864 20029243 213541712 783875827 656694620 458835968 47072136 1053392304 220300812 325886672 918549245 919235162 654431092 847094278 541427064 480377757 1031952556 931242925 356994203 648715362 1036189590 965665597 28321179 782574151 605943917 8250314 580147322 679664325 399691383 943049520 1020411641 335720515 1032175166 419356391 176620499 782280650 552783966 731994523 432559128 41256530 998061034 568988893 338723289 698574419 502605101 123502682 189662167 442381332 865777892 327446287 27731889 1030550628 704468381 42878731 460951107 793248020 663204597 830122700 620281948 653237978 942464679 377325378 767269702 898929689 338290126 376051288 548336818 144774891 1003190227 49561320 914762931 876175288 768628593 557479271 810010037 141962304 400413285 1054459190 632659931 857439332 67636321 91692129 239203982 389240360 744201966 431953179 550424051 658455171 576090996 5641787 645667749 70482069 751193816 769913519 509444443 303973495 480579237 642397897 73438797 336067094 195372037 917257165 983434854 990046047 358185562 748705127 324282257 479572587 912428433 398602803 1059934554 1028738963 303479198 696022775 12121105 682217498 504603075 1049508979 519121301 133298304 420568218 616494949 1068166755 626964719 604279132 688720207 466626288 459553241 125829088 1018549064 521081833 143230339 506528817 388489546 654557163 10201688 197907738 923780934 799170264 491599653 891070804 915125763 742376133 760320305 766247395 250175095 429869467 275527712 503346646 661967414 166200480 1006165137 418846748 922087669 444885097 703895782 212671320 689660876 494955447 446327583 64561393 811460697 99676421 648774290 445730403 753953624 418760287 12255857 1055553559 727745028 659488321 613570492 889379821 695319069 782188766 35545345 982730338 444448976 850276452 555410590 56941219 163672658 907492733 352766662 875333715 469055552 290823143 738461671 226231239 39575726 381161127 1068232202 232742075 919736786 945600169 859720546 461839579 347896437 307766024 1050746806 581373005 760966326 726377203 270098521 92044059 414697401 442565482 981143661 912508682 385667713 249989776 86472851 693913950 396647538 105088791 540928653 1055457747 594674529 818203244 140167141 209716436 781803676 242027162 436993808 512722104 596658942 332789032 112044692 535311585 515816949 97435059 131526051 152447499 408029906 929191659 761305061 507254193 577935732 731096546 1062912448 433300712 751035062 442921585 43211325 128131506 320109507 2474437 125018375 883048714 435455580 912317859 925669311 419699921 695937256 593581722 563401128 1000419339 1068612010 196654132 213714170 431952320 519506942 1003723960 306213113 382723866 772546578 1033989256 1037198885 629832671 732009587 262279796 464594597 951476081 783276512 605970917 406157853 982775216 1070035579 410779125 824112854 272069026 656854877 952939343 904376640 933136684 618896769 678465126 782321079 169053311 628690958 1068260379 551877264 941089859 658716325 897289054 693521577 144262759 724264811 727010744 744458544 134833302 351320127 932504037 2917311 40891009 87682220 193535935 927054797 856361946 623803186 980685515 644887508 350320488 13741226 448641734 258679911 964556483 441737451 515771540 302646022 1038403695 507968214 534399188 463247431 199630395 784890328 391985292 773350413 975205213 986775119 32617452 145351227 81524341 611415828 460624207 671898697 246308797 866332973 530663447 144933654 889402565 968872616 197830301 44215739 682798562 592972491 163732999 612849247 856159854 522176109 1053487963 460777988 425333977 891027210 828435435 53304493 988969774 948638519 16758857 878046716 658263665 165868635 507762250 558359820 544396334 96673433 315565622 184488770 462493647 503292238 845475007 697742284 502379585 872687484 1035434033 725889824 503666211 613783557 699622959 1056631124 949918778 357944344 815215882 87797273 668244775 302870516 283396626 375653692 412503774 633923868 1035209426 305551811 253553951 986249903 269640959 240584909 291690545 14771610 829506785 546058199 74627595 436431579 608140629 893219859 160335193 12124572 798503738 35166549 1071775845 837259476 185958498 353103903 997003322 465675339 351302889 321012192 291883389 171963208 899004447 54645567 144517229 158947072 563058856 31384591 337513333 980738453 702249876 939425091 291597740 313843674 584818075 552227123 231194444 787323625 193828679 798749338 7099915 699565911 34098963 538015210 535504918 53410603 665438537 1018370493 330263863 967398761 760162873 759623060 80824670 1054436913 966476663 671804944 354597829 388172226 113621359 135133420 514874031 292250342 577703916 620836287 599414430 494941235 209589921 607251556 768381502 1047263600 344351853 116792985 740466321 1013135635 368778548 544287039 687124139 350069502 878367487 171848557 989132012 738131038 15558410 669524270 1056743096 892180116 684875664 704946209 1067943938 94296075 236951260 1008444048 82115273 802345281 552627001 976622089 650623170 118500248 421440038 724249056 334256335 359252816 661452938 351692412 151786546 267223993 470414143 522198741 357381992 382753766 791466377 745712940 412542035 152278220 393220588 128170605 355006827 463806039 364975393 191647582 1018027228 714252426 1040096414 525196486 248240378 835812847 49353257 1006592531 271734968 149468128 613769700 548156103 75805596 1012381615 27047188 769302813 98954867 148161330 133941106 721032228 842740469 901577127 818311814 666195821 562851899 965361717 128226525 1052765459 142539559 306397556 761696394 675161126 173403372 4802750 659608229 1012264788 933737190 230280235 60096322 510776129 161811742 416050380 499670423 721346042 292151994 150788058 464922593 113354500 21014055 444750201 1016629365 867325918 335222426 114901304 1073609883 324409643 136681823 268951142 168340854 1033591431 419011116 67196729 793284103 241939572 563168135 1062604645 434745269 553161661 674238914 688193769 897078887 912212623 958294402 317282521 198538653 931664732 56423865 930695108 611312620 709185997 1044780736 214663251 810172654 1003853511 304592969 514469813 795392395 689776666 620506113 683529441 658304497 829291745 553662746 180179279 598629453 566067450 7769393 820490196 308278981 1001843323 923314065 927034664 686946075 724510361 179957424 291138168 703235936 349914239 329746114 234579164 315292634 240397034 894414369 39099154 565230947 394219847 663907425 213471355 96153929 214527221 55603255 183429530 724321468 375281378 337598120 182466794 768808632 675304213 270690562 833293289 185620172 697319385 669939727 713485653 1017172562 652500776 345065426 238760410 294878777 295494236 385592469 380762474 384428016 323276029 276291766 803417449 484512545 142837706 86720048 948347880 558007795 790176002 884473211 51233250 1050754394 884591489 282922145 413390812 46355594 266564723 368259181 249641205 606826859 476648527 967234826 1054329818 1022565217 597376643 717588289 566938929 1027710291 804538765 724019275 948249491 1038561328 760124316 149930969 470774470 899072872 701233337 711870564 463731520 403957609 777993610 209830281 552442265 948073201 429610900 598704790 1070688296 1054859971 143178427 938445486 294068997 268870695 268145879 280515909 606006835 301704726 790593715 465537171 57488280 950480629 717503524 638459712 452903238 97718437 733699756 640568722 185881286 120433767 513593394 388788702 382438511 684970686 241054696 261776199 982207130 526211284 517212252 622745337 511630226 1014769856 130744240 439000012 431702907 887464738 130094378 231782685 856927617 198217501 15515677 71465533 999556450 1059457527 676959119 125368884 355408109 559298825 640024792 407761386 49259709 880076121 682267860 801577862 52750541 276458221 776547216 759818794 704612925 268680064 993854593 20558783 309371238 399490818 418732862 14944026 1026028677 436048401 781408255 810131498 290222710 631806820 374251415 295405748 85958091 219894341 577184767 760187035 545289369 211132380 1007020432 637662551 542190667 424539816 281391026 413333501 396658689 271447637 403944566 616182962 1058763276 145218406 979970239 778771704 219341207 773573465 508728793 508957903 722667853 911152366 548869954 909726992 973869511 968065676 688529360 637468841 910650414 734615624 441819380 434679912 490331707 284100449 802553222 445257815 610896480 51565719 1031764014 846638140 212608725 206861912 172364371 439827978 500310988 937396705 507071433 1003471344 929427235 535977387 813620897 901461027 249143393 366738562 1052713621 562522402 550127166 710290936 789921612 258780652 764752546 204942068 673780907 655540455 98227888 1012509154 74099086 177778185 235123336 1054978206 789161863 11175166 982211188 292706794 19011200 1058665221 647589634 140931735 152184041 782505291 798715381 370228733 308620377 813140204 614524674 175515879 740900897 600767042 64780946 468706172 775748355 1013644421 868411035 314349802 58918183 657296638 527675596 969129697 13114588 400303968 738610735 213999162 1042599958 119145389 562350314 736552939 731791073 406104793 531986626 1058926423 846187379 110825136 417064407 131631139 34246140 298608962 814380957 942882285 660090930 288631832 15217141 645825158 529384629 509104085 1007073827 622614365 909545840 629645816 702360972 818216983 669266458 599222149 1021021757 470800096 276250543 264798359 369378824 272370661 64389426 763501947 360159776 967242926 1004321603 685208934 1060132753 993113634 145524170 699889583 352650828 1071629576 59220652 720570853 479845942 239716389 1030597998 598166482 1052536362 382665781 164339671 849416200 624987661 508887842 840628582 622357898 701769243 1001238284 142659825 103647959 458886128 951086545 596552277 116372802 936188592 971731538 1025000652 841251441 1027746028 312291747 968920172 939681086 82323362 400812371 843600147 794200206 124398056 231417623 380799442 1034962172 295721159 777658062 113987034 654677250 798052097 851585546 157011781 34352045 756742913 904441375 692607300 657202876 465628475 801229218 892830305 726513507 152056997 351269543 353969867 355504742 56832825 953422575 911695304 461804551 1034445911 719381105 4936370 615829267 36207253 401556871 810734336 897828019 175130469 126444655 670344452 281997412 326482091 578658233 401277261 296150709 522267628 508417173 860154920 892987677 94462700 357384254 621689232 38158232 969545490 117587304 940529174 623077773 288389438 162301904 201513471 552835924 780088700 160398837 569562008 26054380 591139217 89109490 1067908357 270009471 156429102 731955868 723969181 442746548 238261675 472870591 594459116 571761775 1024235068 899454760 908885269 1043954032 618561751 17907787 950465056 922250729 652410945 1025864047 1018277605 612430129 1020771747 621127320 60462527 859891415 562119885 541360698 468372995 723497346 227977202 492017668 546949771 458108206 283353552 250241123 154922798 393659785 616352270 838179255 88711461 484136149 856056186 900497034 145962288 788560884 554428863 337535053 328910424 618685781 514302594 459077803 668658387 291373990 196891111 481734434 503518670 986825872 407852317 38400163 483598844 474420701 289469 994424937 113924683 591776180 740266328 357823634 586676977 730206039 39632640 508830304 195126026 571983907 718132125 885602117 57622262 528542404 131158398 236791304 249400629 284605434 761260053 904716202 818908141 449244617 758528599 729665941 952489599 968802509 455815793 658256445 699936802 1019556581 8767217 748689542 703413095 634745310 709658514 902178775 701202739 1063963861 817532508 562295583 260792994 26479835 868522327 234035301 452075104 397111900 267558421 936221495 324707561 1015939687 489350320 683871617 840069603 795625179 931721692 369309553 669578878 1051557381 308027741 318043987 601866554 116613829 641544555 584811963 956881493 164176185 1068927952 253766353 867712329 458544306 752786184 10859946 783889986 858598608 830714143 811356551 967867991 557519586 1027739700 586846739 1050730031 613946237 322858562 1057363893 475801052 781725527 548368309 962534279 319815973 577774590 1036013823 898967280 592545418 488667077 901417319 380127700 649452141 85073189 364571601 461800781 830375414 547893721 1030549707 413076152 211151463 471184122 465459888 899854520 60835907 773256342 356233381 692487561 432606949 154671076 428609751 527960237 162603785 124654647 465426760 740956697 958676201 430582907 1022894730 1048944581 307799378 227919445 228561812 343796915 447619144 496042268 646329570 458237869 897464131 1032949279 932266794 762237946 333102391 397521676 1042221258 501185691 320761666 635600498 849712414 784951618 885526654 505401380 826804626 37210762 5949704 778379544 629526653 416409788 544351552 470682512 909010053 1004309782 112585047 755479562 239185269 214677061 1014358403 252467727 41268485 985923767 544972706 809002093 163291790 679709110 520818185 916639774 414666669 797315594 719604665 112883211 61923886 204433903 531252575 377453879 274148980 39471602 285345664 404821472 845938 765014251 755977063 394859822 328243763 711151364 666246933 644366739 126717257 1011760842 97428047 399113415 383804115 630134411 649440043 667767249 755352725 991072785 6745047 863401064 137657223 352252338 890443316 72537592 522542132 350845028 109618046 121450417 812488034 277581558 295645531 125122079 76957647 19595562 119671706 409255571 263058112 405785138 1053345515 913875540 402956420 390103604 1051276914 535779556 347808988 724441225 239065236 763147758 493543492 1035868781 1002837405 968574473 210078389 435187290 109163507 75551686 463962840 863674171 442940339 613213466 371612202 844605775 1056138058 342470326 846526358 470823659 351434570 167662388 790103402 637435803 69578977 431858010 248783696 273971494 715018051 723150906 819622009 500032459 1038361215 417551117 197136795 179803071 747149230 605133262 178249861 595588562 372865814 964816758 304546564 260012576 374965462 884692036 284353445 421910920 831975108 874537233 317916307 102945093 650746956 417715302 579229506 731129118 591635477 265727583 493546207 458400346 537292982 281352614 37955375 986172577 930161471 770360250 1030170488 870524620 286908562 1038547376 1045665378 829473229 835322151 427051344 421160099 351580436 633391493 482270525 887584613 779430891 723209065 1036640401 714440591 792980321 565675959 521841927 1045279822 136190583 807144175 422055169 1028374458 1057960406 818253824 1057935965 492631246 540376317 996999435 228280560 1033752214 402909357 344433535 771077961 902178658 221399947 951707116 391787129 481597903 265468148 508402745 428426278 241740575 585170445 768029824 358113114 872079698 548341255 742601092 684095337 668151486 120365537 781632742 450810766 243732337 180206346 488958504 552764563 406134970 85337495 51521901 47207050 589245623 625811522 226837996 27637614 608292105 470886008 6007637 579624602 1040468457 443367528 164762215 826649879 814130253 753249287 30082658 184614371 641369571 485974539 417214849 937954914 443761637 1032693117 132667939 82630494 673142623 608538077 673256306 314402154 220564825 923717177 494220450 760427719 868171255 228650486 863894180 215834338 883559857 515989902 722902793 960321263 494489716 846250888 1060556503 879050894 32604328 155938310 221446476 862028915 385101203 337307331 736440408 575979843 55470777 381478164 314391140 219366100 827966977 60949795 686748714 3214627 974995044 274194141 1055131973 53429760 73923081 734657019 196683812 97598495 982375382 1029300554 124989491 180145632 470846759 3172295 876258707 5243208 123852171 11056104 455428057 544352682 1056047691 946863766 579725191 265277420 137447087 734992712 768529993 90905573 344629660 574937211 925460349 1049801167 900214429 73690907 601504800 589453892 428200820 377832714 471654949 962354941 622449449 739895166 761391505 598303206 344504573 529574381 213664598 829878782 128839343 601737021 816026419 1063505029 510815581 987496625 902525674 872023936 584466843 784518366 48040802 275383557 65376435 1031053196 540812086 391220098 12991556 1008799819 384384888 155116254 97023576 862187456 812114867 358184483 937830638 479922248 496500801 861602719 132694775 354230976 857426968 647601774 225547101 720781273 966773036 258416466 919752456 801029845 304215558 866570455 1065527997 709871284 7865530 903544064 654465826 357699669 177632711 177723746 431827805 270717819 509858730 459432183 810427196 378133535 672141975 133616386 472582970 10929549 1008016835 459173214 988776774 689237434 169213217 697166200 407551711 520933162 993459124 293518648 362124018 165050803 1055329796 233118739 899059047 649568347 881587416 330398369 567418016 207047124 829566881 993043108 1041903095 656703984 349452681 671406881 205164049 902148254 510520043 100044685 135257717 721637468 561333564 219888362 563522800 288026812 174691883 292286501 112839588 210800630 250634172 480159201 654685148 833934101 236353020 1001522669 787965588 538447325 673143600 503348250 850479089 359396957 258980761 520955101 702380195 555848447 379367744 338919408 783951552 920571296 416147582 622250035 583118580 66685213 28591850 343399999 194803763 809272650 223175318 193299533 150427184 680004035 979906436 202635242 221213856 862810850 681807018 98173140 778145566 529149146 491570307 464787832 441353272 228376273 135115040 492648360 716151563 733848439 4896351 915330389 262725479 537187499 847271697 904455063 558999520 277672732 260000892 508444692 810762070 288973374 985995921 1025556335 837952155 406933614 147764525 552604259 851956253 977293619 1038521283 520895752 672027871 408119523 465025209 260388508 983354057 305364230 560216616 722379029 142954416 878531227 244783220 812635943 549212192 766636695 500868860 711339428 1005619550 623422886 676151792 812361239 347313285 997809629 516308683 354907336 308740707 348802365 1062380671 724039377 428513119 982192720 784784954 970896641 539053611 970329965 383516530 6443023 739789551 421869934 296683894 714783911 780822930 507574166 463904258 1066095898 190239885 391628785 314577049 324281431 584753914 1035315387 1066845633 970346824 362977700 136393416 825283543 114117712 160104103 234942248 829639068 428479291 639720643 379576840 719119077 512156847 751032972 274788543 442236620 113040947 921942422 157818892 889399920 1017342276 358183407 327871710 176800492 64749661 182356780 962499399 498442047 1035574515 847463024 864898596 23459176 144650084 974401764 138772884 561753125 755267683 1026810397 640268930 557460045 949784732 851243220 32189344 276783177 860634896 938610508 731538223 361849523 431825799 906500185 850146406 1001325322 429773567 1019688091 405292504 245251300 1034809752 284401542 756069220 702171203 775241592 1066791448 746805857 493078109 183461872 150812749 1028052646 1049522470 675495502 277434435 23422451 306873398 66089268 437772908 131075455 370341795 673853465 638427585 824441207 178039896 761856723 534217595 828958726 684875768 1062597795 882810567 884491596 817823797 923547998 315950250 971127674 106009245 887535521 826351647 343998989 54425224 270194274 425733741 890621193 612896584 494373494 794652946 853027211 495084044 607385108 336017514 460688504 657506529 1032329615 472614647 191124512 472577673 588743853 689578959 814067980 309184885 18484859 301479849 295295158 713374315 636050406 726872967 356520085 201400312 524660916 772641560 191597721 705777876 429693188 1030960465 614895888 259285301 55275185 677615241 201077625 366793400 955374985 303294781 569690004 817465850 341621099 914931695 515152039 342460588 971700322 650278469 717552221 777578830 998643334 844043325 942855635 161137690 786290192 132135104 887938861 475038119 165307454 704214680 877028428 552346387 742145705 121711645 592851192 637021734 545961881 137295178 482097346 795353301 1013636450 963618774 542495967 142678094 986049685 74408843 283024852 995506447 312990749 52431839 1002508643 955321133 489085428 94811198 690712098 415108717 571603664 646322106 89803726 862148723 172499897 327899003 373059265 456706683 180105597 701553761 630159730 25620800 691405777 587182064 309275202 714708205 279719014 226652820 782364005 791599332 580261371 922507737 634840498 956612062 110424658 474683639 293807668 354804683 849082595 973538870 388449430 25216557 930915512 14994233 863980027 211316641 806301130 982322442 160076137 659125669 248815195 91357149 560023061 721445652 64405638 960868043 803958274 606719467 239785589 853866539 109095738 999537289 444759890 714196915 196655446 369033911 935248147 277552563 922796176 669303342 1676850 712267954 513947213 748765941 84133196 1030401580 649238543 313229568 124942267 527988660 485690890 68726796 1004631822 411113149 703165699 769569465 972387026 959370964 340507281 287943393 679697385 331118227 514299127 363115914 683749170 691362980 217776107 54990551 431302366 245217262 669963419 1038881409 490011350 29200056 357452554 1071089705 119490491 794838076 481568820 199305701 811690853 175433880 503320374 888282389 775395674 9386386 49420827 106468488 134583098 814996362 312662523 505847256 635514467 740836138 354282965 373909129 173359664 205421944 970455475 362096456 625023014 46762644 855907077 745587478 153469377 300792984 438525052 668383248 320698163 115673858 978689092 1043248362 730925925 418944065 947351176 251202388 210542544 15936277 269686156 171492410 794061048 253608244 610615804 892544684 617145707 900190219 620346493 883817707 597790444 224610432 714642045 928825194 158881636 698237782 979791077 377984768 923269426 39379955 276089075 832796946 700786353 921661929 315923501 110614432 457272788 308007436 833659123 789057663 994092576 231284982 455012335 900375196 870058889 112846547 784987428 721952180 788194999 196083902 275458546 1000924360 983146935 452180315 2276137 514920215 336187212 1024953480 182031390 399895667 358955431 111685783 277365362 911996264 994750629 508140041 1072281396 918195204 231157050 1022388181 726262988 337108016 903816414 842785492 823960118 230800275 211885884 586715042 812634458 460056149 42555433 768027643 523348784 448596960 613195465 563921363 959365747 402369822 46558094 383775826 646201351 333387664 91789753 73362241 626134456 958590507 452373384 1039601780 946916032 577202274 891305156 297093888 540930412 789549125 543980741 330595259 200678820 761752192 556045590 452779037 616103294 77908463 247130166 927179255 200219687 723825452 884484881 84151913 1062789976 883508656 182321509 347096618 773719879 55400354 892497851 919261494 67819109 739102209 739530910 145353354 56248718 7421206 336382957 255990997 572166705 455262072 546749149 304207187 11872921 16425331 914920696 771428232 967603412 348373078 432310142 617793378 1053849134 498962917 700022004 214513416 335500723 7835211 702143487 613619251 694390320 831979332 748740829 411893781 711858386 410413240 226140856 804744089 353995541 906502489 575136246 215767887 818570101 713354722 195270810 183075790 952206550 587120703 49096716 291669007 746872531 752426777 190239637 337393411 761051670 840076837 1040615158 263697101 516049283 926696057 568376553 3763922 707555303 171282289 629286766 317816519 933743457 551798946 968322982 820689903 370831158 330660403 467514823 318666523 910573077 609755348 1059952416 836645906 503044950 49056979 22931694 43588154 532966590 825772633 36317137 1641836 123488914 62170927 896864111 265123792 1008825202 110111904 530328760 568139553 452511025 445620929 384921292 884817465 320854882 856632892 554380406 865412941 586281512 4094762 507851531 259520466 358465196 101501576 283319666 449459676 355393810 328245834 184097845 539214684 393495327 763236633 1065279498 387522886 205113718 779794099 893158087 29228209 267086041 62034201 764823868 966177206 876726479 968802164 988185003 306098094 174635494 13358028 135300407 545250850 800863960 912792365 285750572 925693784 49388723 418864565 384346679 446766306 82370527 652765617 384317940 201603981 443019463 708865904 722958221 437430253 278481317 1016872656 138624705 1046242073 242313581 530598893 348141635 863576956 429261939 440808575 358311556 768346110 352290430 178862906 415381699 902025545 461188070 624001778 86248161 622116663 408491676 84983558 845291237 614117867 305324309 16691926 756655430 197383586 996976701 366991229 857115575 469613468 1035229892 818852267 575925784 797106679 387837066 864784004 467365702 265403118 32832626 295265434 319039332 397686831 909157435 411713355 172724257 298831226 528708344 464104490 157938365 261357912 106988382 395959460 259824775 1040480985 327844092 37379174 776503544 674339609 245591060 1052206533 452318850 690470049 771616450 307356066 117872286 877631166 425853269 541728190 936037818 466608847 1128865 66932734 642244719 386115542 419003724 603135556 1029115630 229761014 984573106 370895598 545940970 680209902 173253751 25577051 454182220 199371307 387880853 791174478 252757482 665296548 750347650 279756392 284969764 934665760 1037488955 238860536 424318168 736392929 846150611 341087050 188793505 874603983 434863646 492086961 873195605 576897367 858473419 617660469 493922686 274966278 686498238 1022853026 963270525 784152595 469215785 159568097 950100581 762641526 939318122 419361990 759714758 433172643 238371632 1055291904 834584069 461944051 256318490 357369679 160696388 758124441 437415526 902267238 405084961 396250496 140825786 484786013 313129782 796184077 167095847 429173925 1019561165 370489933 272952189 1658041 1052234388 105079646 384679590 236556736 803134341 770942238 601347312 542682577 1007552143 577035179 993003745 185151847 823733089 158413457 299312972 901327079 738881799 909944025 806973358 923111474 474533909 820873071 149589082 812599317 238773170 829170501 929557598 579318297 871594548 926849708 337967148 395600079 722165374 513618070 562056652 737883706 175565162 420140799 784869333 107824562 785468159 253861980 489051625 464306131 592959757 446801009 570332464 106647399 306674208 528592470 701114571 683830057 930466279 970142241 520360856 744610044 16456765 997980901 1007116493 555257130 64078129 516011515 1052953209 779487742 241636798 942352300 290299657 405069325 429574508 985780486 860461442 666106685 379523078 571247392 1003523980 335456761 610667914 210392624 1036812276 88134591 634769280 882697763 260891724 966935090 415352020 902522537 533164852 617496510 13554228 126662539 611067536 101066037 538585409 721461687 763727878 298330942 316992403 914034580 824962057 661279643 548989166 339141887 30226466 314881470 209746630 321001150 124319271 586372653 953496823 302909911 366782574 575229284 590872122 317861762 191714344 879837989 798285554 1027119701 261267528 836655550 551249761 643869753 836117451 1020008245 406472101 443386131 109135101 248429033 10511098 545716 483834897 607682005 588759792 340850010 500065930 676322145 546335353 885964975 1027186728 572104584 704110307 665951107 770399381 461029856 709467759 579429508 1041515876 1020447938 1062886229 456498558 224284972 765541911 755906834 1029448035 218976599 240128238 522974864 676014047 289741512 682465585 876062867 90916953 57240961 15158410 113092151 864736417 120348476 903904877 434946529 198087871 519046646 690292011 257567337 111918794 625076717 955830457 611610290 146678376 788271102 86413256 191211081 873199209 94098086 753812871 917827791 232669690 262615925 721702697 595518736 210351226 740867574 966084949 721109963 502220316 658254614 5620921 691434978 1043607979 132988941 746917016 554143241 586608242 372700870 189888138 567150843 646621525 884080679 1066633308 684271212 624028573 386688200 641603975 524899523 233313326 755211391 544021175 174620660 899624678 771503867 391391047 261699767 764598445 270515013 43121672 386006198 307823781 231788997 601885726 855639766 733667983 904044046 299403119 86773739 800282620 856491433 746944911 985434870 603475087 686232542 546696914 203006916 1022375226 845474734 478821711 267669307 782243508 276124437 814527177 688039386 199622338 809706471 251158390 195475710 791778285 946293136 704999329 437477926 920085824 652434381 443034641 1035414266 527693398 129810680 156459244 132674539 870933223 551792494 987090309 623059537 502110876 255724896 1063818071 837565940 991303383 959045953 357390388 711246370 968273820 716643063 718518502 570232262 961914092 544041176 966263074 209741182 886789830 46356523 119467189 206547 961304308 1064157640 714335868 8680823 729106726 321223020 711732704 615904912 973046393 426846606 636549733 526502303 407763477 1037911164 452532715 1071328770 66114698 973563391 344790011 468367895 849556171 625714052 437592268 3701718 103879537 746539249 586754421 606983522 211303635 690168702 700972921 248259920 728043947 974029730 134838465 699443397 691074143 1028006632 20055175 150375565 728858718 343037618 935159526 1068962969 718391253 13879824 583873380 1036990903 285090093 795743941 756691677 894736614 716590100 699486083 664107805 273288818 55923014 100968395 48861512 370782062 282453012 862346682 783840616 280816328 941360558 570876112 706557859 579211740 187470985 688244602 118726185 284690217 883670919 129312413 284938994 616665340 710260378 1055139320 115831012 223847174 547376246 110390634 643878012 665275655 53144378 705275172 716148515 911506991 29387970 1045756829 537217760 646823861 596335110 939548952 1028779973 460389249 440071022 1015661457 1036667302 911186332 1006518786 202544713 432062621 926203619 206124177 403861022 110678475 205525958 731661479 422584641 455184285 623047560 629834831 76206964 250546035 255878853 670820747 443079711 613346029 71364661 560346446 41134187 742210480 936301547 746140162 392463344 338497679 452545415 708580446 1020417942 154962389 106323577 30571848 780398671 352298586 135585226 702506275 880065017 150138396 102567374 960657427 203131834 373384215 262795048 335151704 830527855 1069464852 836070419 697479745 1061539774 668002978 980392983 708390608 1037533690 960287115 75253132 56118878 927611542 58195560 619133839 244137074 494005866 556530450 940538107 66099872 759503178 837038228 289765872 100969771 709164887 597459374 100830364 1043572863 94942719 618429323 49744055 440179263 804831981 706857886 510798479 886612337 546684239 368884220 1069354389 228511026 663709867 390270718 802749721 808071214 1047992046 209227331 426991208 956093916 142081341 118805196 482048058 579478430 517648234 147849802 185906761 7459019 670568172 327923146 658977474 44597826 126188892 275751158 550591194 1026785012 374101567 51701556 1011084630 943530202 944167026 905146277 1015292939 629616138 267069391 216869961 78303264 180159224 340873884 104065782 305653542 924908197 329560456 596339627 236751261 869075669 421152224 846355514 729239543 377068770 205351600 846919226 578429532 1070555599 857256591 40003548 232536415 391812750 95688651 822342680 872346661 832643609 616158912 309487588 72006283 430860545 776735486 981193273 704665865 398919363 122102499 640466015 604385346 175382079 167640721 219895713 821158496 308715880 30859316 412203552 795694257 1013844779 434434748 736278455 37263155 406531804 680769995 198819876 154811035 842741961 345019342 733307535 483877422 507889574 292446928 308769037 625368862 208564914 794427709 328536586 28994427 42914782 384950759 1050568218 809096195 964338635 294919054 629616268 926293541 347357278 312577308 1016679634 838774170 864333354 55423950 307310048 14029125 14498741 581489723 724172517 706652262 22223917 667212220 466502598 54459732 772655430 342454258 613835937 438181438 526141295 105445558 581808180 712831829 926395504 967197334 806190933 614988181 23903856 385967674 876379382 195725913 379623272 919485223 447799933 854605465 728083179 617740251 468218440 760164660 533169021 413844026 133411318 811755535 125645868 460925642 310802202 671334444 406031978 220197214 208116872 888211696 159966659 562805566 211656929 842272750 949678365 1024334378 673307904 982154757 804961843 638813833 553445333 201278644 409631946 783932497 42917969 106436951 716750208 708642804 694418675 258930542 602963640 1036854948 1063539644 1059707651 920869280 383131138 582042821 577887350 102002315 644982337 630877879 750776304 554592604 890456572 253074135 593813241 418930724 1035624128 50121334 395995111 887874914 196048880 476174739 874253518 770162179 799180898 349391071 419375134 139017471 376872356 224053093 188567666 764923431 849127917 257634779 731170231 1063064989 566815374 104403267 640022466 951589269 1021648485 534123828 777245440 131328546 738126287 544190762 479061983 766776070 595283109 968373225 841759087 44522543 114966948 907006119 904151109 904586266 3801873 391915474 691986535 826377307 870442670 374798570 676614713 1003560213 1057083164 917649000 578188338 396941590 756570843 1017198006 326100184 877095831 235536276 835109844 1001763875 1051754547 187561560 179315911 352399745 19479715 583176233 449247664 307730029 977088030 45119480 126666163 611256265 614362784 334894880 470356625 357503445 1061364187 879799803 147937785 141153970 633247038 127321406 664236860 854801209 453272618 76021562 477896061 447220647 450923472 797445907 307029829 626310024 250963858 311111549 757311724 414879329 32534950 189712313 885638037 830650449 230041629 325993956 199973288 865081839 535820570 827102555 415116555 479932669 281264203 539306880 784775766 212942808 183978502 652676617 235686369 403491344 529312163 246555479 318608580 85461344 297704924 110009627 480539309 695396159 221580193 394957477 210629553 178833873 731494147 310329617 319004498 624782851 851070951 299507641 123932573 648969897 358522398 129863260 1010665268 690573405 203221183 336819732 562919795 469426601 1052276941 582023954 1039460311 858900109 518921254 201072550 965890082 921531011 716926728 354545827 78272743 771658975 419248752 732283506 989533251 483114947 343297454 813632558 378633537 355761338 223068202 855670178 312634510 433663719 586772411 620985071 609987586 105136019 495639366 966886034 471891173 618140288 151080556 492013200 795531286 887571948 690774867 977972731 694543957 689181670 983823879 228259633 1012615786 18601818 362847414 728016671 110827574 65706243 809934732 134576782 152488279 343762439 1017797114 1034362391 748075443 1027453740 832460684 580526649 561080968 1035783666 709859319 1071831902 917669142 709376492 405512103 162743911 768784626 836670217 901206208 795702729 953088003 113334815 1028572285 448364745 410835663 259855535 845025427 879489569 790672587 633862125 295142650 967141183 533564020 346252043 324167823 753320817 373310876 220535499 620161563 66360191 113036506 508320935 943558886 971843664 891457398 805959237 1034977306 379824898 559945212 760045168 41776110 961489216 188227445 245273378 363652471 471587350 566808215 585158672 842326906 812735603 355933896 1020795875 63996929 984944692 405236495 572876761 44920399 503066500 979225367 28580762 330428871 386898307 579146515 435138837 1070349835 67966193 809917021 619427545 309428033 166394595 582261680 948629816 355386199 486300106 703404178 1009751516 640223419 776836186 377235156 110043716 816798426 572738955 678537304 825638178 919494752 162437593 914176780 520758674 288396634 471050936 773169124 35469432 4486064 91297538 848600935 429357113 124462672 659669166 619928318 956065030 447620079 187763200 722892878 729305355 815535574 98102333 188575396 209801112 606951389 835193494 451293725 246768017 650250953 1017473531 937598369 936706511 689181096 1044168327 1058862771 349355171 695754593 74531099 525861504 14008989 1068297541 15558351 507293001 719308351 570235905 454142354 637900067 397151392 208247055 906100863 951194374 627695187 867718197 345967709 370032855 903817035 814234895 490984063 622077574 769735736 812144637 225491148 255069831 909750850 543732473 123575789 918758299 282345812 547898621 1034159295 237497965 613620341 438155642 765194228 339430382 271631534 531693892 471881772 429867022 729510616 466615479 545197967 935854713 56667283 185718059 1019749461 837191612 436612226 374095453 735859827 407029135 869092319 495537305 333914884 773305619 116859841 205979860 519246208 12017341 330380158 760881824 164301048 468200284 1068620262 238697705 22049211 827287188 383455982 478900362 470917520 220179998 903317879 265227707 137249740 351931123 208597453 1039108710 526798539 863002965 815906622 630919216 991080430 215030101 560093680 711354447 572740384 748183798 568038913 825115621 486759932 456453219 150000633 445470421 246885652 236468839 654880035 796665718 992171789 406433120 604184035 381055188 203255620 692493705 568298001 334691809 220828174 471427104 174794422 621662090 263986093 11360413 513031636 1035942435 133949649 205649067 650475396 247923295 243202185 666219014 803523721 662441930 81117778 659763277 693910580 745225688 168089068 586090155 843391712 390890408 739299686 726692257 452177007 1030862582 220120491 130993440 854871823 762378705 1045163553 935541072 812703486 398827931 656048884 542139224 1054111447 981103660 704236532 68863092 1029226934 899798693 244463875 48668690 661988214 579065227 1036631621 484609225 767208821 583098664 1036552280 487716651 401154118 535735973 136601637 652968433 31611110 847330884 672249509 155145877 871444669 829031473 762122973 110432197 294746568 312940903 638817512 1012633634 227294901 520784933 650955848 794974680 10877554 539050369 844226394 516773304 530392109 87864201 871226358 497055549 390769490 249184577 907045444 407774684 639156377 446279533 793304379 320614669 393678072 376912292 915654209 313554776 483890785 1035376392 629857372 473052673 868102705 39200958 979618247 482199358 1068209568 398644275 518676251 475742748 720380477 702867201 347620690 274100881 904926180 139808463 225498880 976913300 1003894822 1044936862 734226732 900039779 142119505 1047698829 608030409 970100416 490551007 1053813127 350669234 178804117 411143616 176807131 795561601 101382055 251596031 324282103 758935801 988095707 439054947 125985698 190420216 113315468 1017845612 836695391 613934541 286619478 290153393 1034301363 234216450 861944093 743733071 514719883 479256242 215733507 379491395 939997851 42275775 496857250 614395912 49783441 1050411428 287446283 972770393 456851758 162342294 661195007 337247988 340067943 589635525 889072979 200176748 198764668 32510642 478774355 666364580 668766126 219410894 410813307 194846332 614002512 604714420 716467607 552773621 506864760 179413096 15013 164339491 927467478 913295253 131168993 851818875 933506360 652714983 153226050 670026622 101156034 473096211 1002470290 593566174 97796413 213526998 609573909 1057602320 696486023 741631859 1054665697 187588491 446847132 916702450 759351700 1059613423 386078429 178795292 638621976 469084948 1009862316 543895938 344519058 818909672 511882935 137749196 5391759 1045282483 205303618 122277686 194448394 246685825 909942161 114541055 779059037 462925273 947958653 83067288 85066982 1072255217 154328289 1054377826 399128005 666876646 693466659 974772450 189245104 26256712 88010869 419613707 658458346 447120528 1072387681 872012378 267548860 154465214 111071395 54680848 173252544 212141565 1060793221 431702300 767388572 688030348 676054738 845449944 708897580 696506807 184529124 442315 990103387 806443725 998745663 108222747 256314514 682021036 993314388 366363619 134227108 508481030 471792863 663895809 824213795 741785713 443582166 215094756 751572396 774425556 170340041 539617788 524070013 420566605 101569618 451685184 860506907 386067643 543081491 462913902 665310850 297824465 228622403 245382257 957952831 644887394 111292194 485814761 398231798 684930462 435250513 265659700 985560974 452417643 161293075 399895279 325649785 269777395 290676774 97851935 967463099 1011658815 637216498 1035004451 432398751 956155360 959334993 1036336016 539772817 214612121 196829436 248590745 476138408 145320363 692190347 465016048 619807827 490491330 692571815 1019000833 535625162 271459844 165583420 610405880 102068877 614462204 209076428 872020301 216651136 603162264 814647427 207892480 547360615 69284021 158714148 919864923 972771793 103197613 787387186 394469944 1002354519 998997421 11992508 253997509 516484553 51421473 263024145 129712010 704389221 142782338 1047266970 9832639 261349436 895221108 872461825 1008933856 709401119 847597743 910899368 619738555 751460505 638183094 302361960 999830375 271040928 811119665 817164992 370840399 339015783 531654809 223106958 521203929 49684060 740765595 495056452 799540834 1005356562 707574291 484687690 857723273 69565578 221709052 653380767 1003293429 216149699 335556616 251427346 957299213 656511324 153357206 223091084 1052267017 793759687 134873570 163901628 437283812 282709352 948911651 798276450 881608158 570133127 307754209 213580029 921428350 179059325 929783638 598475582 83333012 105596196 863166914 801138569 568417820 1029074896 646756712 745990148 277190553 776463003 353527749 455462560 48376561 500268647 65040645 973380270 251645625 129069930 153844895 737319409 935648752 1033479069 191742263 28648975 672220326 587463551 1069227090 739645587 930085248 976283830 407390215 900102115 622833675 429650832 920407737 1061714150 666212315 650148391 628753622 245604430 716829591 635366281 870523355 106043305 756643365 1657308 678436068 181464828 650763903 678387338 769529459 186856073 709957285 660825784 985109502 626931461 670518330 428294723 349283112 752896347 851628486 419250972 849671977 751078810 1005505603 743116518 478245657 330933779 547388388 345773551 445465928 936923985 174920417 712280376 150778676 601118605 367670264 716955301 21706283 504094306 305407054 1033290520 401298424 721555696 805933182 523005147 86487928 946569880 271057399 460451980 162204820 990264620 721141568 205792871 215615585 989432979 560279082 867371374 211441567 327784312 704591821 286266241 685936166 242282365 906955227 905698260 124143374 599015888 637553400 416771930 885494532 641598371 513574769 46301936 142692713 344223910 602750706 365664232 128172862 977910815 185165552 656848245 910612142 349684944 538702685 117275620 478755691 172226156 763959725 328022266 1025499932 925194845 75737682 829831700 928714433 440691445 189220252 609889258 674640637 793175855 465145243 960193552 169017085 307038107 1073066336 794293323 446726332 766103368 511528343 476992526 974188977 74211586 563567831 140122909 366889201 2246488 236914275 1053598617 818465801 803676175 624977634 237802095 32311667 965915420 718146153 588201313 371697328 189816583 632795654 667567294 816526591 682054873 458461362 86492696 935351943 813001046 527844342 607669305 1003339303 462510794 214952302 637751117 432619040 432446471 669019251 1044668464 797596020 622049401 563325348 486641468 869725439 783885231 1029564369 552475963 977945245 131244082 854769861 448350580 132782334 526965364 39336882 144385268 1016681371 1022105614 128055791 496263790 940423474 232592345 887053890 652307459 961532154 1033354129 539465780 168085513 507671755 457757797 456787791 988564705 627976731 579778805 57962723 727254330 402048262 47915507 938351347 507747965 968951540 398313202 908608004 678777145 995819506 165128464 893093153 950944427 627850391 297835244 979577081 527614132 860980217 996642841 930541198 408253387 767844219 231215069 968940144 934456042 486199320 943704473 190524886 25741740 71700933 132935224 117497946 543338979 1056551149 992896859 952070541 942658931 874431841 264598280 629383811 340405904 424948430 139582294 528867891 290333332 1046522892 400725939 91269821 834922243 833440819 580453732 953897164 147479678 842498112 1000934545 603920068 150399376 86528250 418173893 178336186 386907117 664719633 152682532 320938943 963008194 678460766 798488133 431107589 634179809 547519144 848138425 105919413 1005080860 274278494 282016649 894967147 41651879 422676631 633131221 754656337 323460354 1033353229 199468215 177895449 254296254 1014401160 627184996 705533924 973074954 1024798196 54595022 612747940 104984465 29092928 533381203 741784157 840272695 227243440 132301112 364734596 188597937 1051181168 297464193 449037751 1063564629 257301767 137474111 544583616 86380975 112235351 244065246 304363260 447340751 560565625 724024700 897592127 766149343 1066702024 52741526 820282216 49497747 7872970 314473089 763849767 937513517 344375608 755334725 1038142989 486951565 828165119 78594013 54538537 48962766 274365306 305166264 233761898 633883065 1018873047 41987405 111631714 206883479 445528289 42696878 554529374 630215159 878710628 509164863 1062511721 208180906 419685553 199671026 571343209 913277174 1072643228 136392485 470174188 619959757 687013737 393226795 585807681 783514485 425568012 495950316 680924034 33077411 69079833 748758232 754929385 142381535 508742588 767531232 293226774 483037612 193469209 9047092 287002511 58265625 60083412 594618965 257520 66572809 252402845 830196537 962794653 183860256 495894044 749942028 144823964 592055808 878458235 92509798 791765373 465492729 111282985 162743045 758694988 608730540 743207552 931627753 672031051 798744420 536656882 354786370 222568502 163234762 131846446 1069763206 968524249 86192689 344151338 972835885 104779719 717623884 596896998 651924401 338979399 794447336 778113898 602718652 1006986624 571645273 333542772 95061931 590334193 732073340 432160217 365021723 709714877 752567473 959104386 94273903 768066142 1015733885 617851835 143487821 186414875 370141917 338115419 868135689 181886798 889033463 3577235 352732466 207729566 104875876 91525360 377282171 636804654 232402552 144887272 435697517 977794630 275352172 806609326 656507043 298670063 726809514 1059878566 403451323 394832092 823738779 893502359 344122826 1003099541 158973239 775880724 992362721 468122770 464334150 900950662 16930909 289397532 656569843 813232487 871914456 123281938 701050922 507804868 314678262 916811355 1024068064 886533977 425397093 102687446 942980890 890612349 820067338 309408544 1031999679 699513078 748903890 461071238 848995677 1026186483 362033833 609821628 745909547 416969640 74914539 895403812 1055255580 808053471 863950530 846801754 852879545 672799703 1065646824 145701264 466471947 20546332 618954184 116383512 990417427 819534339 793097043 970636857 708579083 58582742 985456458 459681310 176866561 696435979 214694329 414718371 130752802 463307847 988039628 491382425 4451621 319504259 464540460 349623102 93535942 945861167 260658337 41598950 420285229 268374298 799921834 679167782 156667620 524348906 661380293 864021285 570832911 816017621 978876152 364108269 795335228 6755973 994636240 921852239 81827172 973412938 326127608 64245710 913289353 234767951 1007052904 771929936 512060862 613406257 547783518 503570076 881908053 1000594987 1003548369 326177374 261598190 1019115137 444237061 964672906 113925538 909967981 323725243 928357286 870834162 421532338 558530553 595540061 1044437297 945575084 479117545 328470910 874621938 40239155 895363197 609510276 255313444 873738652 253244625 614681194 1016431931 444610627 1000486960 488275656 957884244 576598673 31894099 626235041 78527142 681172618 567821979 398963293 239121982 964906149 106504982 693215666 252881884 20607173 1009430353 558726441 583876812 293237112 742256013 480964897 537567874 142515326 827880470 968485403 1069442900 481152132 744296727 313587727 886509136 530418638 8368500 843715565 958349798 245033732 408783133 405000163 732442696 767230991 568082550 911071505 626853560 337244622 278495301 563878243 381218136 486397419 993734202 924233108 294832727 378142891 621380914 243936418 428337825 267184398 754514834 416509864 857591198 1033767020 465546681 23879788 333619371 562888224 331036274 339834446 939587745 316771463 87290489 340721150 95172491 776192001 6075024 201394946 203451130 155761005 24646190 898521571 441389545 463418112 82818311 941204394 580200690 721256258 973707366 612640546 455519807 209292279 438886469 588774791 9001598 475377045 660700616 812778811 610325159 86301312 66499446 1065344958 397743657 282424777 548943802 226349627 829310520 759648554 33189174 72092315 522085344 862970178 956776990 939978491 670550757 526366369 644021830 840655713 591555013 681340138 734025277 830189564 248489713 824687197 47737457 196557152 274842966 739236664 807716167 790619489 188731471 841536562 418146298 517077228 232991067 968905046 579736671 452358967 511889491 473444477 956201932 776812531 708424482 1017422232 907575204 715786518 594817542 650599010 458989731 491118764 385085075 345496808 302930276 81517567 449102052 1035937884 444779275 871321301 917966044 245832451 782749282 555626767 870331570 905560325 999967060 373206607 238098238 837150209 347452822 572956236 677211407 730638393 626920950 688366511 845702585 544565378 122575526 969349153 215354257 94395276 7411041 357694750 453529207 699448344 440696145 694360359 499063914 780016744 159858375 78772907 398270764 395318933 756968962 869938352 738641464 376262539 498649915 684745433 88832539 365828570 496495595 953873451 260135028 986854113 365106115 626480828 1030352593 189609433 638156649 131492872 852299475 504547626 297537182 165860890 329642253 208122440 100699201 728062447 675920403 298499501 407343618 1056088201 868799502 198647271 933947445 700653805 193733861 365357 52033110 886359412 509103495 882407157 199314537 373110907 46728329 41262631 729027740 543206451 129519616 757556074 15066656 323248287 822951700 909301420 131254279 518419619 1041331913 512269029 276314644 614248700 712735614 807223447 387623782 128519829 342445596 543634814 256798916 795823265 417258073 664892707 262411688 550601204 1023959907 111583793 589324666 4736286 665524195 609400566 304804480 781533883 846889870 324624313 981129101 843539405 89676993 511932242 995558522 646064965 1066663048 485012667 248391234 76015307 187649164 358804123 1060706691 582045818 160462247 290543335 501229481 882211546 471084262 327495450 1037404057 973405893 791317746 285129408 757582734 300259573 31776389 629673127 311669309 480093292 182089847 579833675 728619929 612248412 814335595 432997886 646506302 181933184 175449719 583655027 731127500 378715482 908315827 394763090 609148191 846141687 184742369 926228302 848141152 545648935 551548863 687014593 220520350 619507156 695194087 427630148 585014350 585408982 116107869 1005142286 1035416220 570311265 983592271 989183776 653907847 141970702 1019378112 997941192 691409755 42477467 470471707 1043709725 1048140129 1033025857 572723654 861125569 807822324 203532256 948975318 682317058 439461593 1056068599 331143470 259946134 531775163 1036955465 467401250 76555781 260753744 694228381 515195949 404363393 12729142 657999127 978359617 964704859 701926861 264123684 998446045 390762292 433980588 495692810 975906602 626823526 125397279 718961858 777761031 68681348 615644265 525242222 20576007 969496236 855745865 318476297 396533971 47574522 4375886 485592398 362419077 395345311 251210211 1015218412 742691542 313544002 272029563 277372932 705046100 271185425 838670954 1059110699 216141715 784836385 828234737 993083253 119143661 524741829 1013808535 573935883 148151833 282579379 196283929 326853521 186226828 953221233 144724191 56122427 278928534 870484991 905435729 934764429 1038335772 983203936 240654931 667348161 736634401 538058334 373810511 819173261 698896022 750014506 437188350 354810833 431741296 439352965 843076860 949917911 395132177 1048006533 344347624 613893759 479453458 458212185 960189726 454299784 983347211 402546893 893516418 148734886 351896165 52309433 996975636 564411345 497692576 101290336 768268412 694980240 187412141 819757617 621445905 500603055 992318149 304917948 556272550 118124515 195393741 840416345 1011961476 482648475 813421607 505019892 924159554 525935455 575876430 461550049 117662040 413611217 109858469 1030398042 558122405 980067657 239124775 821570544 1047781869 53771258 62881171 489519757 792110291 107112966 322291891 451998962 31386006 474160613 186941050 1001940963 426482583 910258726 1051060745 244615872 992426882 798558407 211309105 551720123 393813202 499420240 972463360 1015971123 83958538 574703083 127471359 154682032 916813958 767167166 470321909 1071650994 141611019 586626725 882675250 672195459 346679680 229299437 946541290 1057949467 848706709 31446038 132390594 278280794 225687378 18928064 303713235 732577313 930717428 99421890 893771140 291618280 1072503599 133225472 318208934 1056677393 488903016 644592605 410635524 749252910 752076043 456323045 133668982 34818854 975178171 30733327 63226890 499247669 320120073 688159340 33727822 762467826 476930770 276289264 906953527 824783363 400616803 526440437 56166905 582214725 867822264 116299208 641614834 305294955 240381185 11975665 885384579 166336295 158538949 135654449 938917047 721892753 835661844 317577836 101468903 921532347 390856585 331587025 140276512 79482857 703454296 951931575 629470789 441095616 657590950 1042115564 503002945 765863129 470221200 183377491 823568005 901386765 1006317305 818076215 658324232 881014409 978605054 628048876 1036165270 64426715 224033192 137007795 443683742 20119293 883648444 481874834 297057692 226862655 1013839551 427294805 96926289 403752909 662292273 837572581 1028163630 439601414 876613270 1016124181 950147066 94833908 616475130 556754577 677036638 743793950 1036481799 445902836 1021657002 914883857 731176116 865544056 826473296 434732434 418893677 565194949 715151998 858188830 489694432 386742519 649431199 578593095 390793456 500165794 261011287 117548461 222879847 817470584 528149274 216940270 1070381275 896621466 959133319 310372705 818437336 897180706 782705048 161648002 85667585 698175419 244746202 397403456 872730646 811311541 312480592 41826854 632705332 82097032 691613584 148488983 637068259 110504720 305602037 220759168 860453977 1008347924 107647298 1001491305 453924777 900742820 756560798 287725939 551171843 334686981 607304589 96258967 1001514077 145528942 15857432 902557106 483439304 702955023 239874048 660376047 586513491 903654236 121450343 136832239 619336912 403768087 1057434143 642910566 165013423 812865159 221671390 535259745 187861419 790952263 189120673 189710064 760959602 502187566 284157929 1000278510 517181115 30606198 490822972 78796517 104158891 379332297 964242821 639496845 464860265 771421756 907992670 361191298 886898564 336745472 520874044 935052596 1008995324 957160207 79938444 830728005 3156794 861037665 923235814 337537429 796290222 805374335 645398225 750016862 67736473 611497450 104513075 889190612 341799252 677963117 75979510 552947594 436230592 869104296 111126774 111945799 163923735 53416655 876846920 237210092 670944209 244291981 283865667 499283261 614705046 294300847 988608846 1032674561 457363243 268238506 270125979 74331180 92551572 835610237 330037470 687501966 388903927 443580799 827242239 906917288 731753887 847738295 137220832 758063941 340995087 19071225 65636078 406145407 193402636 1013611822 424967394 551585073 633336428 733710429 207136396 39016787 891653136 84959349 1071637941 1026432074 71632255 327334104 320638949 1044309526 587018365 279106308 759349082 622941923 212585684 187023998 471603018 822786144 111779059 493342510 1054621997 311529854 213475958 776084291 154663335 274711742 92369598 50868372 326281977 840946135 490760985 628890434 811824331 492626023 401330091 332143024 573246225 431874278 852948370 1057489872 62121816 446447707 20426480 263367837 894051524 98561619 27451322 344745539 581648302 332249399 795132589 747763478 262064100 189651352 392003258 493454491 976207042 942615796 985833816 52701673 816084713 386984424 1021076925 339348658 745518983 726269601 667234857 276184488 390821657 84543500 836441592 324988312 275969033 696708118 509906192 870607389 845003436 494638969 124381366 913512920 627767853 169134994 531681125 154812283 955842890 1047678031 581672595 93237723 531826199 987270444 174405429 397629885 121547963 242933874 153773616 180470683 604101384 146353708 498596883 519951311 993834963 936937492 618173209 360037978 1025270287 194555516 143712419 267029830 372642775 613270082 330123564 673768577 171714715 330625187 853046119 21811978 1052786563 444694783 931106441 530288004 504986497 1042561646 940703043 295321342 790797893 56624135 920908968 972435666 858399282 403730406 415850142 413058479 444548335 333143295 934595007 501685715 171067624 903736753 766583486 799740494 573789700 877738853 698268598 148741064 507790825 189477584 496262934 455977355 5328444 175609891 160235904 18995874 404130514 483420953 689637423 762792568 439566331 879766436 222823605 78455555 1003330440 686212976 830406516 7207476 118203332 442903296 109382214 569404824 814530559 189388093 987973299 566438601 696038069 261560473 899444536 658545785 379734321 787254524 817073628 640726600 478226973 672861789 1020498998 677026355 7461437 763500027 367777902 43731597 623309669 891247642 658485307 790214750 521715395 545611452 555215447 194449748 55848693 1006737712 543724688 701745453 420841588 145562877 28200936 360555360 1029424987 947313368 192202457 999888568 914143213 850289671 275546326 167547191 692991061 32977281 586288115 67945733 206273449 832613822 697476798 982101717 832494634 1045538133 110989831 814967600 602257959 865667950 380417083 242292846 839819099 802079936 333868521 13062964 344209706 429156584 913021532 933376575 240381909 683671716 766043383 2100310 576342412 28120207 517187556 578177013 594668220 140536666 232997755 694203087 180821432 214890415 648338744 245444960 61937190 406724675 410566050 534571487 947932797 57243326 691606495 613399036 964756883 290054509 1013211942 244541616 588583275 509230293 758896660 812868545 316927064 957721742 1050176568 374581099 432540083 901376788 835827538 940762470 617969450 94327432 1065975656 874586532 847765077 282521935 818472269 515027840 1034160309 159797022 266353373 355534253 407841820 653261416 595056780 682198738 113042455 900550951 631623596 555241119 139014496 414561147 648791250 579119018 201231745 823101001 666323583 217594360 979496973 671197282 270669616 463119968 383718160 230294863 766754752 114646936 338049919 436293299 26298391 37593322 619894823 929306008 606072745 639196653 614268302 57886774 1023122959 1055152858 577395534 282501007 439295298 10374107 976066235 459712849 849475151 160500471 322722614 266247044 392562357 70420888 597920723 520052077 873599810 770728100 583417538 918320859 403163520 497886451 918742840 508810731 14642747 739577482 594738634 896993919 760049178 709559639 346526618 406514470 342067687 779295227 603935792 776700425 856250572 553797048 627172406 373651204 363768639 818284061 62440834 469938616 1062968014 606458638 781565539 677742042 723544582 960090873 452387501 338002007 897752276 394580316 102056888 34720958 531216701 916239709 653803315 767312624 643026613 56195142 634815402 629609280 272178176 452355326 818510189 902246677 267571861 974757429 566987263 1049730858 419134867 441992996 400739158 114329303 427159050 910050604 895830987 772857269 41674525 891487044 392528166 493008041 1015316380 251227987 987153052 990819996 575083604 1026514387 508432905 239337654 797434262 93785595 663260454 857594868 152263081 125202343 571524545 850484452 627967630 461770947 163597185 388742513 85155918 575065731 241153975 47987681 489042991 867104631 490920370 1073716438 319942644 184924706 150088922 349521121 1069024410 1035350483 53283322 293734319 1018301039 1029210717 287219461 242509314 417200605 836042886 883606062 1010308221 616739102 483610689 269074948 91177107 371865349 666245475 515816953 608452666 532889871 593171862 394799942 407318207 625056075 60301111 1050944233 847570662 393895828 164593154 38220158 514574462 655630437 34025080 82846338 558812881 278423659 554087744 1024362491 384134642 207414500 219318174 869556531 654205847 472109891 450398669 41131783 656463710 928274100 977558554 92783817 287321620 92854184 562098643 548241773 324992070 618333496 1061851052 226261688 182513176 417516701 852070060 564741856 972552759 990524810 8711298 899578399 1023572109 745552265 243699481 142179542 984621076 212090081 219413382 836331908 995814681 714823305 874070859 1019809709 245228254 750776039 871601126 135349066 343705092 507268701 936646268 386270185 888380529 155859996 901868040 434759203 280987194 953616232 266958976 551990818 88540118 475410940 195793686 58963469 320021675 199185391 287029866 231757094 560457112 945317627 700992466 522935887 308449411 226601960 528758812 106778043 604852211 766106798 514846384 20243570 662178389 756753963 888526787 650914376 542683802 847979907 780124635 932614793 165587827 181464772 417076784 1069061292 725121377 721282367 188926432 971984758 96217351 630522480 326466481 950459517 713727697 332218887 68840638 202070487 511213702 38315404 985131141 974750981 135316521 377393095 335490442 482178064 88153023 613696719 23247370 282777555 696925011 896024929 1072452265 523916064 399259126 686434905 388099062 518764872 625518195 939455122 659148140 729165066 6694341 308253535 238402202 224330327 393162546 320614332 229434256 351220417 431981794 564409360 947666629 507017194 834483198 52321262 857225091 1068825954 232781562 662646102 928352561 1037277982 147473502 46971210 672228629 861504324 956657914 933247411 611330703 608640752 214070708 318091231 213992014 150107667 133231920 650347979 656957572 73867697 411001381 11995900 132299350 135702081 564493010 682511004 501490416 292882323 773850011 3198749 955231387 71501358 703931255 728689808 1010380287 704101660 520683470 331156659 356623387 244502394 13039437 344891486 564159605 683300193 851062543 339984378 730485454 859896138 11789876 481183551 683741898 836663578 272757418 995764845 79857888 972923906 316050133 496764111 681579071 393095549 247998520 725697557 288670015 917308028 633337396 2491399 369485797 853067241 428214937 914024034 442698768 106268530 993631497 530598307 652917389 610470330 582428786 289188523 407306884 618490040 734047300 134314985 178928761 360300493 602832466 207474790 993648591 145342200 445723169 203346983 648115908 167010462 293545994 171561913 420985345 233576992 329500239 702524036 263032281 559889839 544081822 541741924 699276667 523213833 675713522 275746623 795532513 703642637 33601824 463378490 1050317050 961913410 877296411 52175930 604234581 561660483 515359419 163328962 414116073 713245999 1006951265 592922603 1039087328 861670949 776405781 512745901 795672917 930699878 922303959 459408046 67548299 1058003447 816954710 1010354336 754219307 1024216989 930323700 486441891 552411176 184706721 1039759418 859992287 17299226 50654005 942886270 238100402 800025888 404657218 346706090 408824708 490663457 519933725 74179820 803341768 488340455 202711059 196611765 636240339 688955409 374588240 782201445 139002619 1050531585 28404681 934476338 36028771 537310999 19559264 547448750 328795543 360497696 718671455 166612954 3226585 429218777 952414283 440267304 213358369 312673264 810140598 827384110 509119804 230968395 192606492 813340178 584865423 136934483 619926105 801497966 733080982 739225024 173082020 130915683 794540196 752848446 1001266872 997753582 719524452 753913132 1046043289 35207572 230232980 586233360 711359876 805936454 844834854 63552840 871255235 356455827 27733498 495809152 978314527 584250446 989471894 98972690 102424939 59325119 548811634 695359191 691335772 207547785 454645023 380269217 310804187 438900222 1061964959 533251627 846070100 783195008 697677835 861462243 1000846339 269950070 57112097 875320645 92088671 1071319845 286279429 961234422 131302230 998378035 354974701 12049010 576025603 509201969 1072265147 857473746 552924997 796995691 61928356 546098503 545170247 7101839 840617286 579227291 13338669 191176322 37200217 57598946 966895428 590820424 816176124 285686060 397402101 701513682 369677988 279931950 291552169 796909549 871387211 522837874 924443526 924399043 286900614 901848234 1047533539 977798411 111862333 693067244 301832168 88439113 1036557889 83570254 751239126 935638076 878805097 1001761619 133215145 776365755 887972893 581475235 596015927 450929174 190891502 578904778 1000921801 741561512 55433751 428736794 547085221 608533832 136594450 184879066 728043775 3318566 898263392 421246790 3271053 599370124 149573096 208833461 875286480 654597420 848921844 101316435 202700000 537391925 502655285 443999845 677758501 760143743 284963113 576113233 431384040 873603314 253395171 103875680 360204780 969789949 564238587 535483808 1001431968 57203818 921593966 76054363 223307527 127682155 284667450 748117694 820942601 896709431 321890276 427081471 113180850 421702118 311314861 551715022 86933731 584291672 834087466 82969048 271634309 704370774 770754629 176873411 598459968 992810779 872749947 372692128 28913890 75737827 959699291 139545279 23335900 776788842 591785324 951218856 1071903172 265898113 1068070567 81030709 365073278 1021258455 368949925 913267725 366981636 725023067 707313085 364573684 712624005 682603667 880172210 1008093789 71243787 954251721 1068296163 98574266 582477714 977939899 1064003332 21497018 652851988 915125821 257335520 410019259 8773765 921289597 568964734 718310872 674658713 717836257 407276054 179940801 285172601 840027281 727867825 396236888 520468625 363741442 736343222 566399967 339417754 3857530 345153099 613778262 1842837 719769475 881495197 202503611 1003726805 352296502 167841526 535476617 715740209 821520999 410360933 23489156 847349638 131713942 255508083 312214322 1001915815 366910290 568089332 279025152 500997888 160846343 503348703 829812162 397414320 591418192 887179568 972187858 371491374 134239415 739062405 771371911 1008220975 112588263 1064334370 773607742 467429404 206843292 538832517 198107534 34583587 379590051 739072702 315937900 357782177 1022995409 371613360 51372264 76586608 29114129 313842073 351528078 512846162 797771339 370997554 646935445 51877971 793955504 783282166 133417057 140723017 211751421 866680304 554120662 838711962 885760420 87644564 81212932 875301463 783879635 991015328 773098874 302550787 211915258 88190416 644012587 567419627 65809981 380531705 166371341 1068650944 755410595 539891064 217987324 789447678 448836357 345981938 924807211 371950897 34058854 861803863 232669399 18126952 504697122 593039783 970807068 604786808 277108090 116201771 432052545 324991153 1022878703 245069054 553440560 356908570 663082690 951053669 410970193 832306494 375245541 814957264 159804021 432797126 712930429 590987889 623549048 62533650 9903474 485464999 641680962 845567219 400911511 1022843211 301094907 81796550 23478543 109237757 440863776 270218341 636075212 191841095 84636247 394753869 651514773 599321322 1054309584 718744366 612606243 540069214 975704652 468982633 904335994 9789618 954179076 736618670 992257770 311361685 816818114 461267543 1064333595 362489087 340411014 397600277 267635403 80345315 591778925 906667465 536461426 566061345 380344998 194744606 676303356 852435185 50347891 695417695 900336971 397548851 415217823 576967908 158973129 199205630 1003830264 801242423 835581194 374897061 946824049 112559939 708957144 973753981 720456706 121367347 1073146815 385241140 699748438 202736357 475723917 421146575 332067064 511077339 255667 236383506 811140998 1009011005 173995934 889463936 659986497 870320479 799023117 768881562 480317608 764925704 665659769 941486544 449144911 830083339 142954224 612522759 1064326527 249463172 690590008 151477887 366238614 1028788051 791113760 613951683 212019079 265401084 274718289 739196535 355396011 430247184 642256671 118149248 1000381801 885542258 100202302 602626156 124751117 183273214 945020547 760294172 57008874 694033185 666803664 246616089 507530188 397747166 305971293 654755630 694055052 706650896 304287808 421640631 577046576 314841328 88459500 219868905 676533854 488984311 902139778 512584240 954923137 628915741 94503445 514477602 166394128 249765923 787016276 268740277 418665442 1038454350 782815531 980220328 788752197 820250866 296262734 442215584 259760189 306875212 755620239 771840162 149025332 919240880 684043629 185169817 775443047 821371695 276446180 197585943 366115233 183769014 47841622 409605525 78387708 830735418 491791723 396555805 279004076 564738440 762090725 116064886 992977191 636376281 740912664 959158699 1020707328 598269349 382970898 158752118 249719096 393257270 139982348 799269419 468743854 32635883 972551222 628301168 13490883 1055157481 420653996 511294437 13148316 184213464 875887144 1035020863 757400762 1048583365 693466809 988190103 160497938 509156647 921937073 602110409 291684173 695907486 657605322 823820612 878353895 189502464 779836489 631698345 676370772 222602354 931632824 573314512 597174544 777190384 602624293 527120139 635935959 478461822 1015817563 796842404 969733250 569846492 94752907 911446576 626314813 1069003107 319500243 798719388 908330191 648379766 67196002 72114871 735076279 68772658 1034807596 24190206 465942572 351421845 485661 118129815 614973787 756808504 72278533 860459134 48206339 377570064 963230921 809007470 414093534 448938588 254276922 448037565 737795523 1031753579 639366375 878706284 94766983 330126878 206484040 977564659 843605476 678790112 663071161 986542433 344127530 388107224 553262683 1046439131 198387572 549665653 864206099 218113486 565466545 127226 879085757 453887389 919732633 650984066 816890100 358030729 973547844 972054638 1025321364 834836951 142870827 519074663 16858870 552317701 258832101 655020697 325169961 481941131 254325954 291337626 1071461321 951587421 850146377 114660545 899174113 868231363 693642471 578642212 715326954 718829859 673572412 721954653 790072254 890933869 1066945740 1040865225 325315657 75862092 497602814 832659517 773579005 875954918 737365422 604463059 285932953 927066938 898817310 11797586 125188139 798280695 464932085 242789976 797781138 766336999 189402251 113813251 592688162 715277364 138515099 653947902 1003894907 1041800759 874242044 60800818 900307789 388897224 146823726 730469981 677382445 540815466 1042058484 812765126 525504145 833732867 574852012 996092379 129305809 845145535 1031259483 71460314 37490183 378542419 4853840 1038604630 878789410 590319630 53579114 213505086 1054731482 235418338 653034535 970223320 156566733 466588860 526395440 735469589 763573182 531072151 352254921 844699580 492117174 475362509 112317751 810875406 925199211 28079767 232588804 508554217 442523982 937143519 173882909 783738401 796718349 1015885435 671024567 493614816 1009635071 499552357 963411531 76830250 606817373 277567672 344926172 372644249 1010909384 516624605 644254518 944777834 923257484 703532711 649677930 1070437068 612824921 152796980 695402857 898236848 42439791 723143104 881214472 840418746 372164795 783196506 966762135 982478476 855421732 412095945 491736670 15409522 710244538 317267507 137831495 491773561 260139046 985194986 501249638 36137498 364728488 693292014 216323855 6914587 504709732 1033205813 219152006 435620706 909031228 753079310 695965519 36422045 546492586 189117577 313578215 462609487 1068568126 241833854 455547320 138276321 10762 445970111 265695239 759058581 815884534 864465447 383011871 1016671702 937174974 132184432 1042390839 991499338 418869542 755348915 888726890 710135702 150529276 69924292 853967895 1013814999 9705423 1069484554 956859743 262903791 145041764 352486353 662102564 26862634 1048321861 434363524 684637029 102417140 865249709 958912513 905700161 581455640 898004800 771057388 56776388 947389244 530279042 95895706 353913038 648507304 903291438 412722481 442056473 506905924 928467166 176574004 791186747 401384690 380748125 657406409 701670837 956026114 223250564 483566472 955515154 196870449 22335198 240721888 251578037 645185385 307605044 829472712 985005904 30590117 602066238 382792104 486120138 678427510 605030986 222004275 543035245 41608905 910390469 95592378 871436982 212527731 458483842 600483547 1068863300 181706649 940885667 223914864 390546941 855716181 515905758 940280362 795033743 563980665 265166580 405501764 555819056 140545942 1007290900 528914620 982241367 455980946 760501695 595312191 962822613 788637813 847276854 944648273 415341720 62043130 690822363 526204098 397047296 114108528 822256508 822412560 928299010 298105951 864116732 750718169 887779417 901208630 472026285 850336727 437340366 108060032 794357179 1031394489 25954306 335379154 100814737 939963710 768000925 199183006 813348706 302523395 827876437 75869651 920904535 669852043 792045490 665840277 892680413 528144096 795307010 570573883 388712317 1023858268 823925834 186074326 121042873 643271161 352680312 547423472 278157905 87879715 732898919 638404848 890507534 292034636 39581490 430182934 683172911 288683151 1052863364 876960930 315226759 918602849 841349741 994369948 114712559 198441728 402353396 567863942 556755674 47200138 1032391193 111377403 599597774 534498401 214820636 114563379 512468112 589773303 93302282 283170624 865041617 884904890 676078878 484440794 441960008 650600411 1072612638 1000178694 399028058 39457855 1000521694 688693657 434991103 630174392 644607460 810773882 779800491 835028161 592808721 669398662 436321294 1034786619 771332842 1055013561 187733411 563124420 1000002347 258649582 810221569 868016081 483711707 694284431 787040147 553831961 979711616 468728091 718546585 287506103 823784670 268587612 563375864 948090324 741165504 628564113 401178541 113699662 144803486 478672044 159243277 114434931 603845375 921461533 583029742 591061076 73320906 825473292 1052050292 433385449 481268081 1015011593 95465762 500119365 299163194 389030902 414562749 852132959 655960213 694924670 543269922 947007704 772161909 854388329 465255521 24665097 870140620 298782145 302548615 815603001 921173530 128246046 103687560 781283837 511236136 750852695 114569898 833431427 402339843 103081700 945367266 335133889 317786903 48649168 744811239 983541375 352995915 431712132 335168426 28667799 303944192 687506614 747954995 776418736 61101182 650033533 49651964 486462554 698832996 395458305 1000489089 257765390 103193368 356082470 841532705 754188223 333862523 1043197086 585596269 243904965 962216832 888035314 150452751 848627768 949467361 250049354 597592054 135198485 43980896 931241236 493872614 857717705 842228028 364467970 72865046 1067432019 523010888 74133035 1047617379 825155349 247870972 1014283223 733840445 498881132 675042717 928917426 942626489 721544823 187425162 80773936 256442981 122864215 44229107 76857818 828141210 810461257 833376299 906977856 72675312 189204146 802054270 951850744 933487852 725376086 949248185 199207395 831190779 2035327 883726658 371763929 553678598 413128509 1028240566 562522421 787755412 899331282 542249127 434506899 285516957 468500701 788779169 641704160 941102541 466226294 781567307 777821041 252832015 264605123 931394833 179298282 237184637 594900328 886473830 220048594 387790456 276982817 459562360 493627268 933684407 653393072 732572938 603260746 205146101 155383855 488476520 365465820 535610963 202223312 684305836 811301183 1045657896 397627920 77480488 1026206193 686178413 205101984 745452972 126207978 734728385 492443534 886007597 404985512 110727073 552050407 687528944 959612685 446975140 633775654 875841827 1021587911 858355927 135667811 173204740 636274783 573533925 101677678 391356525 470202512 667172840 599773857 918907471 716028276 795082299 606781850 1018282872 1035374826 93103678 478878865 616120939 592100529 441036899 135180828 61320822 302536161 809287510 103129313 990697101 1038735659 749274064 207832070 68926211 58703165 415016259 211679106 810868127 614450921 694317914 131877243 561253369 637015999 1005201008 682689141 219519392 404669979 517662442 511118494 923166483 146591270 374748589 679457010 140238701 1047637560 966739791 128981125 836131459 729377370 653479739 1069520340 786298713 72133820 335372960 453636839 109763845 940790599 717915031 432761129 328668972 1020673362 88191601 557900065 1008496338 317754907 457556288 175809119 786766851 46423067 264190518 50280951 877012957 494335121 425137529 611868119 928399821 943602891 513850651 12804995 527937347 616750 508160937 271658905 416757542 23995102 261817152 977090273 555402412 789370096 964912418 662478901 523861678 697834817 740787723 472942070 590803216 799644211 483421249 842151434 273301786 171725108 220761444 28890177 321687367 808274974 151778615 346017508 618056293 884735422 411625342 185117271 617975529 943219267 746033794 993032187 974066136 192041577 163381947 541741339 348984211 813045390 766137201 64479377 713096588 280536576 553786377 418801877 713632278 1065812639 344521104 800889279 643825727 458903095 933887127 72253528 80333658 520286633 255559887 219116630 883225339 828106376 762163990 2654215 420821079 565419883 670930525 705981133 349340176 499261054 406280001 368958895 211150218 8769753 219153706 11082211 488677699 1016934442 286941746 1001726326 158541024 67265080 263294221 373949406 303200153 488839524 67508246 470382933 267476907 238666202 810369837 328726174 788091286 542673520 735959797 853747120 929111962 299723193 1065368484 793965056 696632551 1032846119 290496355 1013561798 41102194 901959036 686223783 551207390 226241232 265416056 598069869 745766460 900216384 952051629 811141552 108262921 408931120 491037102 421925860 431429782 606023273 1067443586 665499702 1068819064 224803943 980081627 758782143 446744756 112165167 135445848 898836109 64665951 763207351 1008646950 437916510 460760446 135821379 464571502 604444781 206885731 306720191 341602089 913065626 711546639 616372205 778826769 247226034 352442181 775176030 161184393 995777408 488555285 137209248 715123001 544387826 671643295 178296292 1061838137 35231555 814123625 612504250 771339709 708460553 71633840 56336998 606344642 787699567 395637087 800368364 462966737 677749902 187592569 1445603 959625399 669934390 674120889 802412254 912603073 30789848 72775763 881821742 717965249 459189906 853824155 47273575 652456067 89168236 361563908 188808689 587190469 495688711 459439133 279747479 277823208 258043791 64062936 111921864 435868254 52006451 987470519 610926524 992115743 784783517 606390443 644773428 875109190 293276467 33580063 503803984 68493845 985286574 500644068 507336354 264130793 221552330 245535115 624396888 782204349 846569042 379932715 889472520 438497101 936036837 1008438374 190234333 950400189 871995695 524312218 809400729 68572101 1019174601 370111460 221970434 479133917 180199241 208572742 953411780 628603553 665612489 4817835 212776553 855025409 789013138 319132669 537205079 455023682 533582985 303068297 387369474 56962705 552198326 484628692 31834440 727586522 942495543 764329845 974782562 853793320 212272894 438828324 158945592 409056176 345308186 892377960 418497876 821926419 958148817 654544831 706645339 292565084 703709654 51360953 593743263 601690070 857913654 1072572993 377854099 506379345 554826114 16555230 123125213 952260218 906918561 5484702 420457829 230522638 308080305 495275961 114621088 982088183 326808667 674649677 694013156 201467311 741308379 137444253 971837279 77582353 766751345 65720282 549405932 249319609 439697391 1071978677 579194781 967390631 907165938 715250818 154758024 441567550 55800272 351906549 596528699 964252949 917652206 282728753 701357351 49048979 412305673 274662292 332640301 441556534 334353164 886310682 560188929 95545136 853030186 457139657 376254720 362296644 1054433602 433001733 538734473 298936077 624460022 875818103 35703132 177216073 41982735 714783001 524677930 534125429 581418786 832641795 782984150 293138823 144031425 583540962 702370860 505069366 444869614 598101186 370958128 364153733 197499792 712355856 744061854 148460246 481984164 270406029 1054800039 952783927 1050138235 378684639 905115692 413676056 455233538 318601391 104200410 1020200741 378258748 107127069 652436254 576196195 853395892 849802403 244264414 240682733 199772362 1020325255 376763928 13834687 301271963 1051001066 858250987 200809833 91946475 296932133 281714650 142023419 176382829 155863593 198952958 540505939 796200433 934911027 181280304 32069061 938603281 976504270 782808039 286061571 940542669 406047664 471689960 385442713 501112828 769959031 692355654 927474158 130353283 88488073 15007769 133688535 691817864 614558013 879828292 243688848 955369015 956100057 318971663 507424799 613563961 91985455 183637796 480716342 359567625 733100755 789941798 1057819862 337179864 848836939 125634296 711293790 1046079968 357279664 1000017374 866679796 998675605 644932169 400462261 238894169 650823003 99646730 968762253 1022859183 293840765 294482462 1029744328 5597737 750131198 25029372 921226766 1063268928 559030135 1006965543 1026449643 52521415 822533031 118629445 884618703 32080600 11058 540028350 875483494 1056428189 955277252 104183611 433717651 957116400 885880611 411477817 342405751 483498544 891719946 182397046 835561954 510806403 472695608 977499665 836023762 102922898 326164784 268127491 286150022 790382942 1028645775 452042088 241878183 52307549 192944310 72398363 613102367 561910252 465450731 405481950 636518142 825426028 675655827 888983713 8000949 788259055 624253079 158169817 985920101 1016619053 594503084 248984685 650309139 897383170 205722053 723506132 404213473 957384326 841729787 810527737 660901464 888634548 1021472662 555929950 86227674 285851784 129303113 1048288417 641331693 121439433 687091203 631538391 210920712 11256425 820465450 504083305 876074866 112484335 552424682 318653518 50573911 314275206 911269694 818920739 815254414 357670723 156006850 791919974 372639327 205101439 442990397 701984529 275683846 746092104 970103153 843985360 417296072 1004780474 167894397 732973717 854248347 962422683 629471258 1041468791 775613780 130549670 717302127 526404713 717497636 945555413 543124053 550903278 290053667 673808965 757944944 913508117 1028034127 72973329 102827662 639576700 120743548 891893344 77292083 547009521 12393627 95816400 221184325 31925482 336626898 1059102012 194386281 375079547 146177208 555122447 1002576255 758627636 164204338 228079535 676101454 250093498 134750099 28222650 874703757 105595959 182456286 523254351 959341310 1062369837 848674047 114927412 272811627 676620648 346121698 272685324 641076990 162408694 375769897 88916504 623158774 1049094013 237236616 486969672 500679288 100068457 896006757 18192208 269412455 567857066 650046390 1022706077 916919904 5991586 256235233 265227886 171853860 914103301 509886213 879789412 633137300 641325163 959059447 65326890 525800482 108453697 560236189 556028422 1052111867 846577923 488017657 913044676 577255273 148952833 441100554 889708996 1064652879 164110112 1001596649 570686332 797911798 332191198 841850762 595622561 74627144 381309812 433394344 357596792 751516246 784660155 454408402 381028566 273677206 214866565 685841067 449679934 861656548 881346792 10286168 456253368 220571708 121245855 148367739 62279346 725152392 75710690 956404396 292492984 738943486 197561992 930416285 702370551 104277866 122675033 13076592 873622007 950403471 554691566 158478265 490399008 973780238 297848560 598775571 359600686 145064183 610654787 823184774 433701245 845117435 416697000 707132202 559864644 674491035 95664967 195591622 730291108 749086607 810961897 129185663 27575338 1012841390 781771679 999028859 820841278 242950709 594224118 923646375 399688592 398019552 501670858 571207584 737396183 74684636 355593058 169506707 369075802 497024115 345201444 41477777 197129864 1034717731 3509625 784294147 449929936 891950993 136616028 128383094 1068862490 828043921 221807688 270094829 295185190 718792761 847456141 262733986 542452603 869169106 447660744 888683988 422536689 846827924 955598215 193385202 970695931 571616750 894813706 602754746 612512533 976042849 596054258 908538828 276940312 522166303 152951469 631154373 1066472875 806394620 340114872 952536597 45790163 137238902 807308175 813562564 375151829 1014281778 249382556 491667748 859359665 990222252 901335474 341664730 942269968 613170082 490190047 87926396 631953580 332020510 1000357773 340616490 620785945 1067505080 450579076 974523367 872921644 164323040 598118432 48332419 849389752 259851671 849811389 491048594 102330337 192028218 900895667 943743522 361543731 962564053 232900636 594896916 258477188 437278777 555464237 431672147 987367184 596740681 198381383 340743114 240819075 855085773 82744219 479574669 44565689 798020546 467074820 145043356 338411579 859369850 866048773 208162162 193588265 940755891 535069893 959022775 762246905 16012979 208417795 551417425 467160364 810765833 509938285 993967460 442505660 769673902 326543317 436003088 303070808 11336050 583737394 926480910 441602540 579798596 468204558 264704659 266888160 1051232334 405625343 678218893 876400725 1040198811 303256984 980292518 1056768483 474848625 542303769 531501478 874019759 618089151 396347322 1036385083 516305510 324655195 213911616 755523539 748618329 166871045 63194100 66152730 771620995 316481102 172796177 801546580 189499513 693999279 312909458 926073732 250172887 478878485 1053464617 244718830 928880023 921524256 1044402562 732683687 505310776 750737960 997208106 935324164 353652707 703466778 684111179 238194356 20794264 455174173 475019785 666894337 690317812 309708778 458311708 461519034 513880157 652680289 377596648 387365153 474767295 878657058 1055678110 385744648 1010444124 911943814 323655774 1018515389 733809792 431438019 117288163 706120472 277562581 234630871 19160121 12405691 645047771 1058295081 816434810 308205429 971871580 625603615 1031032692 399570227 1017979446 603300677 926515721 451790319 843441859 96145767 61437072 464626822 516708931 874567960 563138057 734800043 856471369 757861564 797822481 915917164 823935213 186453848 449417559 793728480 1053101166 333387532 77216485 641362874 830539534 371012453 43099991 220439555 711013133 468155573 839966016 975663537 224175164 915949262 540599149 256247961 49355295 213637451 229604535 538565612 30234350 271077189 663168634 474789038 727392513 987842168 322708534 899929142 361594014 630349357 858091029 273070688 962114435 614874499 280532991 727006194 325698961 633942716 490156661 21713584 388451022 871875390 889831001 624400026 801612861 726208520 624373291 113446468 44718015 881127449 659732717 589002159 648488396 886623433 444970084 234682902 710461502 991799324 701487369 953837218 877528583 146914275 41749179 773728744 307131428 784366215 124293718 966645812 1014206979 385401405 134728329 138313062 976846723 883713146 584653254 174112319 818052881 601607066 205392024 567149879 527239793 96755705 251303988 934927264 42295010 434235745 1007001702 580011870 119980432 960968396 866331601 262884131 4604586 280641835 635542380 211169207 393715266 728525098 756858817 81156961 35383369 528931093 985060417 53344162 758737380 225897020 434441132 353472231 994005516 221407974 168107168 888724854 492497403 297439815 879036076 386898577 732480816 23550616 535384042 645551171 849735869 600610261 900441434 616684825 195828886 89177403 115672875 851985194 770711195 148762626 524863565 892958619 589538226 545803713 746298789 151106395 555767203 868972269 667642672 887937155 604376711 658505375 855723458 891636456 928832314 580110029 802614003 213053404 464650297 1066663052 826144630 206445813 783153674 807472884 635868495 892200669 828178802 619931935 843142488 1016600918 95879559 998165584 32467649 711507855 974394397 970493153 680704935 316753593 444145494 607239098 650560122 786239852 588329483 947885019 280424590 466303294 695012630 512884889 970374079 171129519 870635268 1019491472 8383746 754623447 655112756 948939947 879931064 605050791 300170358 901077822 464385629 1019071827 839016439 22947118 323043936 676722115 21813203 63250585 106389018 712971372 773939011 830730234 469628056 598907808 614925820 505093834 502964018 406638392 572711856 78043198 940093546 472043201 413506754 980666725 553303081 1041471701 428466892 24593710 427061911 300879879 195810994 365766890 238166536 432002303 874663432 1050053786 174229041 571402991 546949054 25334396 152415307 352618 783559392 597431 23322780 368522841 698382999 995989694 452775503 447302422 332282737 677013982 368078892 257042075 200921772 239512164 173502918 632720266 103072768 454075547 913029455 56525477 302091479 614521343 890699737 636014065 30166694 744790695 1047987718 313900912 300644256 704087916 517856337 255431700 578600217 203182723 755655391 771811972 172592974 366194147 385824813 217266204 860406209 529401817 962554619 101257248 871751882 240888963 788790011 308630762 283611506 308424869 90999980 927349969 839397401 677499086 575547913 924835025 304289677 1026966385 726713907 457919145 147166243 3631134 487798587 558248496 543366244 408126060 359708811 862832239 452709926 909515249 521443410 836793420 615131517 11788868 5880814 911611602 207789577 638010245 980418830 183364602 137247673 892713123 941005965 495362502 482994789 729286145 596591066 846156306 196740721 356002359 890112397 71031125 451744170 486592355 914534621 563918965 823845888 212766764 803917304 973805644 275844580 876793186 984522839 995009450 414620191 1034664145 551109531 277879494 802158825 476695 829574728 466065466 183857698 664818068 315641065 1001958344 134667556 33475898 256000921 719551228 260845919 225755707 324532669 198112563 52503563 349972440 116334211 589165895 801050739 236462050 502124177 950825477 1002481419 799342645 13135147 102607848 622543661 128737164 496044305 561764883 319937998 587571275 847659546 488885950 638381783 695481978 924919602 382648032 431563589 761754779 696244105 486409594 927839413 449997173 105419025 61089222 598023830 696653052 38616862 836240908 371916727 298818256 392624063 497303696 316008071 799087545 900783251 948921020 559659981 920949794 843511216 743315669 209758750 979990995 254266239 619730241 312848396 1068219393 487278941 242692845 62543766 1006527064 740141747 75824017 1052351816 386913944 244903315 921023882 102945062 188320755 539331759 1022358947 667394396 50501414 810985974 242009358 833923643 568003684 325009498 245083254 947767871 983430573 784695014 37328922 141035987 635926229 509797212 702129164 747316814 674999182 506031744 88810849 422126013 63714309 928676268 923216820 1014107895 324499640 108018087 177354823 59898479 277230600 519705534 807818399 35677068 628362570 467763296 708298324 552255430 20251631 81216364 217831563 255883743 129812901 30966793 69379499 478777051 907993304 380769002 1031902650 686724701 857342727 912365577 940004119 209105934 380715390 824007305 221480680 356767617 300104797 1055671118 945929429 110114416 324612479 356423428 325923176 393547933 529857723 1042959322 548595200 1058066680 660104904 148611908 189947743 362053419 281217662 219982697 423250142 29381999 932184502 151158209 579426136 525349837 868979521 91174863 1050549374 524355110 907980470 497576943 575643238 882638108 300004002 896350125 550938300 866918084 549763566 354865555 770419525 572308038 129891848 374854063 482254508 97344246 285991785 284457477 379920477 308954615 156510596 483873333 893462849 395887691 892698843 882572868 752802221 742974464 542023193 341737276 962416952 982797319 421624882 693697600 65896290 3779263 188115783 1011495115 410193302 56427152 583430720 826417455 733057225 63570842 777466709 585144365 12991591 527271219 608726025 872229575 263942537 303834406 346086621 114323498 772066962 336750927 488148310 966174073 473135615 439998432 801314842 193737154 651426519 343107979 1054445517 183576231 318136416 872063029 10350776 517550240 738651065 291412475 34564459 183775284 301082758 682604156 383691435 883073458 850020177 613812518 578685131 437417236 747526131 996088287 644326346 1014200539 394050981 275638298 534869173 441176156 488430270 525075135 588501353 790684429 412299454 154955140 762301024 537907146 105296097 804828776 1007584186 147211089 251952397 912657488 298506709 764322160 321533986 246169327 706855916 108377043 502976822 1063626151 305915002 368630972 156451739 933347158 869330408 700699333 410474099 557750933 375326333 305209023 852394341 934322641 512671463 667982199 1010383470 26147182 656794135 471946414 724430320 741189260 651397342 651523458 376376833 1001250341 305548903 890363531 265589712 61522165 1033779391 893055291 72761910 398366351 224949637 506282598 86221956 324933792 275111228 531659247 651854353 160498395 379380844 457617172 1066375067 231716380 839712666 755385042 4678027 558873230 465735739 604424842 287062056 102477982 46228022 677038263 551603889 39207751 422101793 46931108 167175920 56767964 561343456 937791863 675340686 757762004 652703297 364579792 461949973 187793895 1017213669 341974182 535494984 651403037 421042495 827897939 1048545522 340953219 143950299 90667490 274688385 190742448 880629765 845366828 618281664 497163148 988244720 817564879 611340766 205325046 529221092 816975660 237175344 345380544 997966185 251183145 251200673 593270907 996740784 756417138 1006577198 1035505128 1044184494 544009626 882320670 962072320 823895916 523212269 110913533 624874639 749840135 444292293 970968191 968184393 475302835 65117271 59618579 899471984 319103230 615042150 427495353 802211870 182163528 1005244877 1048700581 754714625 167970418 542440716 1041329435 451345417 653513471 77345144 281932135 477176095 272904148 168145469 512560467 175744684 599108994 953043373 871845015 380241665 805448561 344374135 545099964 123602231 58533687 659766539 751301013 476296516 628063164 590471279 763529913 124321430 801239687 887066702 359514012 192453395 843868871 551217896 931675162 767085535 336997204 519395745 615125399 760532041 956296760 34705483 561078259 6201483 325281271 164844405 603910752 954718306 819009693 757781494 239952312 941476383 135724663 606994110 670286079 47793155 1054894966 813677747 231792739 749547012 731481102 1073617969 939043243 550881259 773788846 628411046 413341786 947069707 1003577125 936194054 406785973 132558899 71065031 527092899 27920848 189213350 45934253 1042148596 366537744 468580137 351340243 176289981 349098837 696170758 712947052 449963159 224106273 350884008 701167053 214202759 156412119 606883196 367242785 724265966 11668928 460137893 399340279 523328328 94355471 10426863 180376686 328318916 346162918 534471117 73652446 185750655 745284907 904014426 446859802 350730130 191486966 370462181 357040961 1026726424 958909787 505194375 221320917 454520585 242445664 568442112 205616686 511202352 854807810 594572638 125955420 305029712 160428553 277334148 241869373 174111478 1035510648 3738333 587200454 935489238 253717149 932628919 732002554 72658551 350437042 32134055 294714310 360918632 148263289 530725523 871967703 378868029 782865001 232286548 433201276 28998772 134844950 575641685 105743884 856078415 801505714 251039379 233668407 762170585 395435763 498033196 330364434 650769823 774530691 161878447 635308676 508556500 261829352 398503540 903725496 353682109 413254202 137660313 198779221 440088622 51181062 1053641942 328971128 41217930 585798195 226792865 91950604 126462012 769773110 755252607 21691464 904323660 269807467 89175149 666007462 711915193 703468363 923890551 232639283 876975802 745162358 318804552 996618146 536713366 259465996 967167951 1069684608 510877778 123520169 410332479 229315143 656635338 823762273 578757446 149846828 113801151 997831808 410574364 457807095 147374326 255320210 1069706121 830797384 184210765 731928320 13699632 709913554 366601446 100845623 263544671 287726914 36352572 615993731 988334296 536313984 388877942 779183954 386226803 46519418 944773264 181935094 305786188 418952990 592054704 203533812 715307221 160609055 868715742 398067144 276088016 620414852 957517952 2789101 196268887 545418933 635423157 390811931 106276119 787352101 25922866 235082358 580475840 597401282 739495256 917523604 463947628 1037311600 615835831 766183000 909624444 430264404 1041939390 911056624 130866312 723334108 782512713 465179660 687631393 82988396 39847867 206331139 675791568 103289835 1035100458 628043692 378729339 262719647 500522629 239856074 1070467817 46485846 53580421 76070703 1009680982 1067288884 520169261 784628163 556230771 239001836 624040708 343117066 546804555 283282311 500722663 872994735 836623169 977471114 183990363 15090186 445002352 552672444 791327220 868075092 230257626 912989841 1068079716 363617314 365741349 219018217 748969476 633028106 379138957 995890947 97446653 1026215579 85095117 939795650 179577930 431778730 1014921040 904890528 238711262 132792967 42683976 610918503 528337168 771576385 204898479 199142206 529137147 730753073 301742804 897716213 1009095547 329512244 187299962 810151434 81008623 17214324 1069193504 823425270 665028695 233757165 344106147 498388544 259191901 1038626267 274612011 274403591 532193645 171158690 715396439 438929027 719220051 714852367 117104359 632101191 565681763 288535478 928886641 692896534 560074809 220282695 912726196 1059581835 451846641 712253962 711942239 693031506 953348930 1025493826 720646274 876817981 1047904643 734595769 826511862 836587337 409583846 217392909 986811395 133180774 847775801 764738537 995977697 706118058 899970650 997856871 844515899 205189170 129718438 236808788 1003539860 812890025 390507502 22416609 376441020 403382749 531756472 464134429 273250107 776625545 653989085 154724200 574241590 145754434 77271552 424076987 826590962 750711001 357499216 1031388348 1015434524 955707448 730689332 887107496 926817236 744985595 656918619 764244353 413145510 470964689 604778007 349869267 660730000 874567243 193607324 80523653 274370923 794265503 840199115 801408542 926023028 741763084 551672325 784561728 907500360 642384331 342244845 169151145 633982737 851970543 419246334 31914442 441092419 535743193 910037179 530603267 172439717 1072667762 225495982 575160231 36949420 615457119 239081778 640872074 763525455 1038402297 89451786 1003711613 670984273 374516217 694705979 742256899 111717867 867421289 324584410 761119262 278281860 289738100 930398471 293495684 325648537 993542969 620719466 450449104 925718145 212904798 238547540 688766080 1034273474 94437024 293926035 1009786194 164163097 66989191 173233842 872715860 44923157 936566231 610178576 530044220 239415914 368146107 839916064 629725185 663398600 474843555 359702747 507864173 374248750 915224461 885889235 60478518 1021171591 831593725 1053668864 346233164 202170884 252210424 911487272 82267872 879943952 567806024 472270982 984286321 628699272 484973387 27492065 812936244 1027787496 792157691 122411565 743966221 776113766 482959022 324511495 303305910 930021414 54965803 693567784 394058578 212254144 586113620 710486590 1018887429 465558736 187454020 480450306 407484926 721508778 328175588 815957622 633176474 156744067 949060438 289460608 738960881 736315954 877404961 156177752 59967109 975448691 889157113 489252706 111895752 936652752 47069133 3302755 431719656 1046555857 688941883 209434523 794423971 1047002437 278651985 683650627 668756863 32828706 792107264 736673962 979149999 224846329 58126387 1073441766 455236135 964018161 741701814 955830713 518653702 540120355 727561507 475139246 187171631 456081140 44034635 561723720 5863954 732634182 834515077 54494541 759275625 11177775 472574363 350492884 554738371 478649090 140299713 165929282 144516515 1935821 278497803 942560815 955049293 704653481 1006809777 998880436 5252497 715614528 29723085 112607177 470234014 84369153 508628225 769183324 471249486 723082967 894700452 1024798230 17217772 979903334 199583064 396657200 199360128 8788543 112637062 34616763 337303596 766874084 294569582 728954498 347138221 1047294016 184270151 386048637 773786161 720060052 756297759 728579368 429302602 274267095 1016877741 503557120 939893606 674369439 455640619 248484543 99482211 323351503 848018250 791044957 167701633 643398863 1005527464 361675577 631812111 420890983 575322768 314392332 148499266 359063307 953700124 336063764 1042611064 711651620 267265693 727169238 391706312 787140339 802641498 840339011 825257889 914727610 951769314 625869323 936715705 921125429 521134373 839487356 569644218 351962444 406488651 759176814 782824488 331774455 1011242211 533231170 301679465 838489259 467376157 3043546 126229031 1002306110 562263184 375468894 394593097 77855532 34269585 534180063 832693474 421206326 75781898 665210590 167565017 453695579 574474263 531290896 545704803 276188010 644303152 790727863 187982991 798019842 354688431 1045465399 810449714 111025748 103072926 607396192 73049657 1058064508 844085973 167621801 336997376 291075845 432452505 229112749 656080808 492804 545223592 339951174 593121556 637545250 89395742 880247202 144655954 610492380 1001480421 612277226 811061719 92257518 414457383 149575260 370870945 197783501 478767604 1016431913 65692224 208880777 381512757 652959674 1034757846 17985588 588443335 119817765 851476340 511539518 511587841 440913865 204715545 496210538 847524797 553926892 1018863068 207748913 454586322 2696039 535814544 68019778 297123374 390873100 182885742 670266707 1018987416 829325273 518326980 852783843 566135287 146549893 494452807 481389799 34283694 1032184741 280447897 1002171417 862734695 543089732 702351502 223076154 479938127 548083542 1012445712 194268753 202720587 724683382 840931626 93769575 518618881 586733808 704104143 747366501 1000821884 466769662 46520416 158206413 157129320 593499009 991591031 35132023 346197457 821098515 465614980 461639967 655540741 695682527 703078592 840726176 335518905 338059816 701719730 994441320 663106763 383922146 587170077 1061424065 225336896 632991545 579551110 504499456 19027320 864964824 73287471 555726212 162249996 959450374 734268788 88392443 484804340 315165929 872175261 135650401 5913060 349006993 407498842 713122452 505541248 174448641 85142219 830767692 128864718 324425178 75482554 1005716466 510507206 191155043 354848371 392260135 102755704 1058515482 299826642 804343738 83482790 977206088 1055260801 784585127 487845621 948815997 334224806 772843540 22696839 526799514 823602885 262046921 164215956 955345135 543636198 938209296 387717469 3719244 450466381 975543626 824888557 645214833 989067526 738450812 94475189 338034926 268362080 58551914 652349487 511142413 161304022 523429328 787182184 975020995 809205063 975732503 323362868 585357356 961605634 488805436 671003263 432948515 734151153 652220157 92562585 1006271277 852270383 396849127 807413586 761900195 719731920 1029310471 68545425 290879291 569373547 690282879 637402836 536590862 731737599 302057279 335471384 786111749 694108953 470913285 686960425 143116678 940876815 200480514 577141515 766419241 900619163 84884414 947239713 1054787159 242095497 753641259 259750486 1040407914 742730323 478752695 572083238 1010625246 577269790 108089382 374635954 398696803 277479119 867951620 907112983 400789346 116962060 750144787 159003812 139548931 536829951 956021139 602794404 342143797 61231923 802056068 581493786 746313649 596215393 350821642 538320223 579024185 247770785 719372326 791667725 840443859 412257527 132557303 692252191 169986391 297325348 441052492 82053273 929823265 893008304 1044029417 395840013 173818364 891429770 516488876 543726850 1026320153 945598397 705571036 728528545 492817566 753411587 933934556 503364116 92621912 91372626 236053265 52877435 125848658 56512249 639214526 334826241 83390233 222656812 369794119 1007392967 463057577 503162749 186276175 687139426 689047500 472430808 579122099 970151091 494669917 701048762 237414184 1044351116 315576205 479311970 636419816 32854415 291463009 488684222 16736443 245171512 739032098 180518427 189084545 576957811 212288735 401777499 859143225 912665027 107200906 444922414 975583250 506270767 224386361 489431194 875489257 132470768 343804660 377357837 177249674 612233348 1048932597 413852501 739606172 130276295 484388508 138417150 895716470 1067119700 337763017 214500008 317956172 796298490 174845546 749745035 489625347 363328011 764511191 978253384 771809187 966439007 207133855 66435171 953504102 727277806 597882103 1082696 994510127 437281063 952438278 206610155 386476463 125752705 763150363 1018359925 842913042 87286185 863242625 736666544 118743117 841864116 442268758 682407247 133598229 912464121 398373891 828115808 326772909 257146359 711969544 255095324 345582956 63224552 961899684 1004191309 960759276 361809195 397986114 278962213 984020935 1026514434 265554177 789594368 406965931 427189216 582062766 317822029 1000520804 438137025 77603321 249144238 96825445 322102046 322270109 104221782 90256338 98219905 17719252 469861585 978402374 785054852 598704357 388396773 1022784161 111073886 441373328 286075589 413607694 72426969 153741898 352382778 327229605 248427967 22319171 952923611 744244873 119474077 920809886 825197489 436740704 616007266 122082166 181098214 164580986 965238040 369952948 201278832 66314388 706113198 267188405 911383934 752227984 961953379 533064292 60615959 655829660 8471493 149639390 28418024 81491053 1073055528 970279759 788436643 677144908 707301779 671840703 86056917 659888041 380952779 670784785 525997619 969157075 839174525 907862262 138176817 749552652 1068417097 685961017 14942498 741377420 1006884700 971766874 257165788 1064416117 809703817 705612294 912113946 778601702 10500587 587888350 907330313 326469740 188454311 1045231719 524254231 949786085 734761676 961863281 55153593 478102645 669614222 1009216085 748273004 584424570 971692170 404810122 95749479 423078498 696625346 619400750 682403462 179714189 33647533 1004124140 466038918 102584024 144952814 714397739 790284516 393225290 429418198 204363996 114127103 1036130852 97988457 936628601 1063255462 656515201 654783404 887320597 379152671 754865704 808555603 75121499 729524982 145985475 501931169 340707999 1049733867 568986027 326881884 269964111 288125383 955232862 377752424 778317752 438473802 917348674 1048388803 696628536 410769139 67850279 557962040 603071360 686038664 666983237 403145098 389734582 911698380 746635539 301107138 29252927 644066755 373900187 408895288 540047394 996808713 725176291 113029875 343146509 879860857 595106064 873666768 797108878 468852851 901175948 707496170 826336368 190032511 583443747 1067626256 688266446 430564573 243398465 108358957 601689731 549842134 427449840 114537244 53369587 871058004 796105122 138634675 615842647 478338410 678430668 286107593 677002680 394818966 954678871 934295141 223087579 312483796 205238096 797323861 980761694 945578950 1050489055 443870486 896280268 550511556 558189082 1047806304 556923757 698593099 1068400929 1066519184 989688905 874135268 277765999 849903042 99495889 511856707 594159305 8500449 945247113 94893966 619005718 134801739 430117583 797295227 663260286 43050213 607491950 350448669 712792882 51286534 326551872 932602975 939436062 228997714 629400587 125918851 815657524 906183191 849962844 195146712 1000374645 366317024 1028343951 71506111 228590420 273176878 512611935 101126900 539010243 717915130 683207623 610189258 558282856 38622948 805843241 313001369 823402596 3852108 963494814 604222986 979843851 243273589 827231145 130443712 43654655 675463153 507961548 978031098 116421224 621739491 60819416 37543101 634366459 117405262 41889830 591632333 947942495 709619682 582008445 13804509 870478862 699546361 658376264 1035245825 715810762 730150383 406402111 389198235 519983463 788936489 931445192 156516946 667049738 582288062 793624421 632463138 790764742 167784634 555852605 276395706 437265420 834137843 320035166 464949534 713699100 847896344 439045041 981559005 508740698 990315466 476241551 603869695 318501869 1027876850 590990142 848290552 351134488 446167071 700903170 210657283 26254140 297685092 129599708 440269821 345073236 1004258997 633706022 152022861 83528684 985444971 759135459 338954801 50755433 907526848 380961353 188697496 448831899 693216211 24063113 238724698 78951031 69677715 966338372 684090518 719544855 963296304 877381779 262061081 530928448 196366543 533343016 947441769 595553595 649921129 902181135 673330893 942133300 493963982 1003748668 812940536 296991628 158283494 744433867 591640834 889914197 278904713 345857144 241777326 609586038 154349706 939791900 804708843 1013763021 682098596 216687477 365000606 148619335 26974497 769944012 1039143079 446265520 323691363 997374951 834505409 114851562 579870595 1043046916 443068242 600917687 112165320 371523825 1035694707 703413932 739121641 248423859 657414006 399151500 422133931 94823055 41541382 657792508 326215819 39615690 669190967 574566836 548192717 814877239 768660022 586414390 69908056 701455284 354991820 944813175 221727181 336908285 1005594812 501055537 518870700 684275080 1044970633 104771995 886835203 832711426 482770087 915847481 509190130 867233223 269172387 485283125 400682167 587470493 279573948 775481328 245580514 741928184 531726084 477601171 970151953 532341513 443467784 85181941 159900122 280893942 426535542 904499527 573035655 345011418 742992407 39624776 542888614 790413214 381070425 769898507 993411956 770417279 533655683 290856609 336372725 994098238 622150385 376456974 296181565 316245660 350052107 1027263924 417724486 406842989 872061925 521808028 943416455 622942840 378824402 974118037 260798249 445966243 883545227 285317557 472333900 757404286 196257224 237452077 176030268 860986606 532644267 485548313 336130648 367739893 775705794 182979215 18588161 34237932 1063124639 641176747 1012131534 343402566 39384463 839824527 1003476104 809990036 190147586 616344465 603066337 271961052 572533724 561297095 714711545 529747192 857065737 644656133 557196547 788543883 135543881 340121491 155502115 119679619 734806441 588372988 742441740 59152631 263866354 162670368 491831062 414035678 173720609 571325400 548066748 813041439 153301696 897126755 555254273 1049876212 283536252 315137683 935946306 1013329071 728920160 713704358 69711372 609954835 128354160 1047812825 352584968 432503305 45368308 885983974 653587845 411084101 364426825 294694367 299371553 259338551 529626247 741057053 879773678 899818895 655314870 405407827 30910497 967039481 955740267 975969527 987682758 149007850 728470292 1015652878 175957183 880792388 111901832 226905946 14601053 384746349 126029321 198824749 756857789 544628876 139033850 473706787 731032474 968557414 114368441 204523140 276431151 614296692 938095738 284801581 512347203 178611155 887519135 564218314 446770324 190179241 207924912 617670346 219396807 516195650 1006881429 242216128 819266666 30616816 356228460 1004151195 999697756 567623986 126055594 22447699 885012078 559969083 776600465 911325529 499701569 186683995 506966607 339683679 167329764 488784548 734451287 92044248 672571191 636665859 533097577 486774102 843127539 3132078 519061908 476736472 592269951 48824606 856335705 979613796 558521255 690909209 877995867 860206686 439689031 643117101 899150214 526236540 733715502 299495460 160658619 319223245 853938530 261801655 440315240 555257927 813972217 159259225 956596309 409022040 742954017 886254644 92249116 302418408 883240515 986943658 847847823 182058782 546223724 95072916 940508697 928777794 574041264 1041045484 978944846 487336275 930549677 311190791 440563921 58586719 237350394 263583834 399057761 542724552 122535197 530868238 84588546 324421503 553259258 553312372 660036971 450021617 348923882 954055001 549648264 657704073 454539358 916526990 833038408 700438967 516968996 526586409 578968011 806231437 851782481 22729120 21173512 611083742 678832189 156064514 869747447 293387320 822161702 962755311 627683699 590052622 972793719 150649886 952254958 503243610 655654661 127750445 998913286 4340805 56351273 953401294 321700409 788953132 642957652 266094296 267259850 987631669 449385528 187007623 33806521 460965268 565534066 100894483 119619190 172262968 46194846 195140229 537365 713826893 625956202 444850063 631917645 543155267 195509627 121476133 729823882 268905791 782927351 73701993 618307976 356682554 83991026 721636258 296599486 584638185 918639879 19063209 46846780 484217950 126163799 180665294 235817750 661657016 838799816 1022319000 200927999 142362617 560432333 610295703 246337195 638762031 748761073 970180249 42942791 834635504 300808845 71961667 614755046 614597095 430688659 520005030 602802233 69939920 128451000 101381772 683161359 786339474 525001024 78286918 226092241 105224745 985410276 254078061 854674743 437667854 207761967 204126113 976099367 225853743 184396004 2417470 322889567 1049395175 661393178 748697850 880637668 1071777114 624069301 196813383 431842278 1037038953 113726183 349883918 627479294 287144679 236942809 931906391 960867002 116494760 355336628 706125931 720649594 867563861 550639182 869191302 827447287 465938072 1001571646 302012143 473424346 635718625 626589739 469966570 740270685 868491812 75198905 970003645 714517684 785658419 31150974 147880950 550963790 599461691 299955420 399359714 629472872 183781445 251206382 300219084 282137284 694144467 950799447 369586582 1014290661 537184592 484168434 852672382 602733261 1051444532 299159821 966237443 370754696 696188453 625989604 855551042 199590719 1045594503 851713522 36905159 1036633605 95821495 91982258 663506393 477891679 887931948 84067997 1015352670 996184828 543200550 76952503 535296129 183776401 696524395 781416033 728879990 689494367 681106157 866637847 148080622 551840600 1053811414 45182607 299729223 261314701 563338171 457290305 41231795 721974618 728207243 706812374 268952891 1061410422 218054566 685254589 576270075 195642409 219830528 196157281 201538020 490836179 412726938 904274864 895648192 25553028 398930879 1031018521 251725409 311063691 967918033 585430937 298338560 12871348 610918529 987808770 695108407 741173104 626506120 332275901 234499684 1017966762 642145790 827782649 243476297 1036738488 874293982 508325515 880301689 547458827 938106902 867081024 69113611 541867677 267657532 472457768 187895925 1052772500 452240655 843094947 296712969 697917253 301879688 757892861 255913336 731132367 964862107 721904950 990707263 974643652 919609337 439895449 1038266472 95865202 930667314 911309401 142788844 477842247 390644856 53238701 330036053 923456377 22926682 435621638 695518212 318102148 457132967 791884316 237134841 896505431 460769836 473843232 12321169 890342795 82685965 579264623 692491997 283555598 1017757541 296758165 715465518 791454989 683554804 988324789 710398783 574490418 249549252 680284689 677338781 48453904 561456359 1046835544 290436508 995823168 282280772 878157409 118833245 885312980 754232405 812298075 715337381 943327231 666413894 49290797 547190113 629095636 95342712 909620324 468166546 141422274 356757882 728658419 209040232 1046377301 57516697 881893373 922977808 845147784 72756508 291762942 763853951 611271269 603555140 1000644871 283826356 1006622336 462418169 99804828 446098143 211553256 626745595 1009270193 133870536 749864367 504779963 91831463 919000856 611240844 768598631 1059108059 1037660718 42180610 100855042 137933964 993617334 62387706 192355389 171731509 916504143 1067560775 456217908 787578634 1029154470 579777067 898314786 189727667 445384390 34240323 11348321 5877637 56972537 576495962 39309196 161551527 530810247 820891533 970979840 369089557 389989117 907986236 221079679 178352835 235576704 739626925 1065308133 167631125 685302490 727537667 904336986 488003156 448502312 469215916 564127338 729344294 881108713 877037869 954516071 882557308 931154298 664901567 1047326835 386163779 765977826 824794116 820698752 337673956 502909592 277807799 728434920 150484109 293543315 57767126 617726338 359733995 980848518 942838247 423283311 326363441 43934306 775071651 240479701 780774165 147307468 607329632 156523545 457406017 649969545 981346729 538957126 507482631 396410469 857938780 509669085 943908503 516370602 1033669708 42213347 971565906 406612058 670503404 613537560 835305181 239101779 696606078 966627912 675233049 519752714 2415962 995389337 718271368 532525366 51256716 562265001 147393108 733593790 465154510 165654704 591634507 1013148413 421630809 795436597 378088625 550914895 816042947 769337796 492617931 568145178 548159557 352616472 1011728303 276545420 394193358 791379084 280314874 4911354 95879463 604565005 784007516 669041688 432163130 939907788 88007810 404247757 554682897 394667549 20793554 386766040 50580465 129928130 430990246 514005214 556222619 931416820 873237526 953835754 1055857559 938517914 801323072 911830444 1021789979 598799922 369477857 18579081 1003489379 375224890 355917926 977907946 29316280 229896382 889486633 459093788 694300376 100948725 345405296 842817082 999970978 779740309 829784951 972024204 1031049831 62765054 889862518 765324604 873873305 588134690 665992477 1057092066 247203528 973777724 645605155 702493586 432830599 182208079 400245983 339382316 435970836 923872282 263208786 360794546 181984362 281791368 577468885 218040615 1011788122 207673198 399403036 509838338 197244859 689780694 701529244 257046920 71047732 90751186 809085900 869184170 781909164 762128105 396037752 210787063 99207358 541741894 434469870 20915029 737482642 863665643 332367671 399791689 1020654221 818111947 96359776 590768737 748412636 510500749 295443796 754167882 1063379612 916049579 975664834 1064592709 1053530738 1068776118 899481231 708340040 1021052211 856265359 354354125 1066764270 379477961 1061028428 87125600 780743463 340068249 687986270 20193837 1038179591 826557249 1054558319 513958474 797227070 502681158 1039462281 210680295 125198352 777236830 122022078 155899537 361004056 440349468 819947822 1830961 117874004 217445733 922018985 424912415 896488241 640307257 801160846 479290067 108429228 566584530 136526410 517509012 475789807 70567604 266287391 132632026 913830404 374447454 1028391603 199551192 479360075 648535616 649592258 205278336 14653671 388082744 768106071 326418993 698760190 623511532 255178522 780912046 386682 897878538 237229162 818260009 665561086 18189491 303356002 787798967 919362455 657447142 491030999 884839756 974226430 541304564 1031044906 114668801 24119063 819533845 759271632 561684515 95595486 965940833 176230340 130072642 33258380 156448594 249782188 301248587 992128688 85921511 951999525 94378852 61769447 570050885 141636430 419822939 108076137 190500176 1015485198 960174556 795696652 888068474 273329362 533173433 1042676626 868775439 89921181 4906299 764581277 279584107 739119061 684665355 996859222 207383481 267815471 913246495 902933957 35091916 1065473806 174956699 22616009 748206862 785529050 249911605 525641148 989405388 34147364 237281781 1013999324 373432766 51726915 1039648192 535232813 355912892 144715671 837095615 846879643 488482167 516630030 1042905427 597925042 734205887 971293638 794765908 864071978 24762274 46590851 921832424 312186110 790821172 767916534 1052797948 960471596 949842858 673599194 559471121 434808393 151938679 163994667 586648912 706272487 21223171 722087301 374678565 17913853 1024937128 419277574 453336256 466754025 34517766 947533412 817495321 509486331 881719971 322637007 593580730 66041010 885030544 508971725 324325075 1004403924 580926597 821749318 890279941 777682789 270950523 345895016 1032907238 88599438 834825034 927010277 920796184 59135872 129016829 627711182 478101322 343466985 300485720 956606227 742032336 40697544 869223230 518686202 1025773081 988966095 900124514 872984524 586622137 380029221 695466016 140125265 341860755 1049248721 731839217 56456908 957068673 233128739 351845603 113989981 770502226 300721693 659981175 183560094 421858669 836107505 830721116 420221497 958958425 447128385 262647697 692194551 720085806 67850206 269046529 129571235 77330203 747796072 210640080 461028022 603799125 774572036 559454470 619936353 504676277 23766146 368101622 17767248 785984029 485637029 199186331 31648847 656771456 560807545 71519797 20331886 329524562 225815909 788340702 287294412 908562787 31121123 757212122 788634023 307775502 239822945 68974218 117727934 955668992 277995154 691817179 928628978 626323057 558684747 697402241 367958156 118600335 357984505 1012958137 848327079 735941542 311404194 674003688 615166737 880740844 255090782 345469170 715959108 489771897 17363193 543885841 904844280 194868736 558982771 176247998 314206733 386444978 466662718 758189271 771357094 856888210 325225948 1045144995 207246153 719969897 676644875 883004332 601868332 168056421 443082467 98529014 1037007442 905756528 310284420 784266829 872506315 474606436 676932826 268299617 1004639276 977267947 771493106 234096695 677668790 1003610556 574923074 603272219 595818549 216603563 1069436789 479386049 285125529 659543337 241284918 953768289 534236955 19957026 1062153086 76495004 483856164 785741900 526500274 560653463 678860011 1048107466 924584087 1022550106 259652948 604352610 440633274 1063977042 1061084339 620595058 13208506 270916555 530214546 144060692 718537548 697667912 143412778 505840536 410677219 850917687 100838130 353380953 651915445 144742343 539237566 505886569 621093441 222532283 683582621 572162547 1066656391 857091882 707018088 589957271 509888058 652742176 1006138384 763547422 238410869 944682326 484180557 220233552 138912004 558954657 1024018963 1018331931 290553628 574038818 56380892 112719528 373648223 388309971 285636707 801912642 803205867 584920973 465580248 571364894 510419772 557793154 302573979 457295714 492592833 891861696 708530216 364075887 805166146 708077168 299270845 1060426014 1059415053 245836360 187713819 415894520 838531805 717115523 746991958 880951466 593657270 953867898 297391742 877472981 138157851 615845474 120256177 847667398 1039561978 935447105 809331111 180181741 354503963 760176793 35141132 413923344 343519852 862496496 46734340 369782204 338552678 950558855 745700732 432700317 801829962 590694973 229458068 624907482 211191773 657071283 627974164 1007326514 511871723 896011577 410924229 569090927 738212605 921904459 932508805 152939673 74926921 817548801 627993165 514264105 48008818 716502945 411094178 379691335 827848428 512672302 283868382 215167354 737329548 881079280 813897896 199792348 95148003 522222670 558892507 287887394 107515591 962635287 706820388 597673214 593331499 711608422 15041144 803091848 281286250 805783698 699924857 85498587 629005943 734988856 320587224 651059055 804646283 896021823 460099216 599538005 759623998 214661954 1012886677 506846604 8012872 958176079 471959541 1018194171 102975084 85503921 423419378 115686371 632667008 777090442 361355966 381313555 806709625 971412847 605711528 582544651 861215260 39835410 102333954 794444601 955484636 973042265 383447518 301203159 174489968 48049100 80478327 276769240 799023397 172502195 850615714 99466286 737537114 1036138306 524049754 450243763 105338994 1031047673 907078192 312036941 716693370 660139940 5429893 642495041 129695167 71369078 107231639 660628158 927736693 139117181 844891406 7187595 696938117 505110663 1016043132 851471303 840637292 229102671 932408002 401278010 854087177 729265966 856439042 229789557 510242948 228799795 853899169 498124686 922009059 515520538 245649438 998715448 449929673 890809479 132423403 473482125 212739207 570492937 339664377 145426655 1061952938 903036502 999354226 714920421 366642507 307658079 1035897110 371067880 545368928 572686043 465663441 269135486 83989612 624674903 1006929051 295279036 436457613 391152303 181795171 100838092 841622405 182972623 854814034 42103222 324423532 967829916 262938244 650044862 161941057 690584434 780483117 352242622 424621852 488728741 168421024 579217473 194315133 898905530 417780076 687451811 617830222 591714253 48276002 637592434 978221595 198287740 100337928 214402949 797751101 437171466 869936823 978628471 323142549 826015530 1027076959 937353388 262258102 818862044 1044724587 802985666 115938515 269982133 316706385 20193263 936184614 772416878 483552971 548004694 703815743 374109712 838986386 1016807860 179917012 490352457 786480225 234704166 344876458 429243630 706233807 960589164 750385610 360836080 601081483 286860005 422624948 474900403 995937896 598204660 953974099 493099187 900772958 336286114 242953037 327632492 207186240 1024384931 543196680 728646264 630836805 483911383 514608075 956138638 765889753 370087373 665775581 840915074 138242970 954278607 913155603 890702260 583350287 611527448 263812467 545265055 147515142 150595017 962786008 515025814 49455076 946992286 772491284 367682101 614513033 619729610 854706690 144022147 755273795 32295851 878490953 750527083 173914846 784673950 756407369 109743628 225635164 347995359 701754460 568785218 933669278 150333058 748352609 374486237 801936543 180992498 494837041 960891220 302976804 351020323 516804187 1045718369 530052670 526754507 7442876 496007490 581061842 579394357 404841856 1053282888 201441519 846079304 723043300 290919966 332121857 621780174 920901908 1374402 680292784 433564997 153915912 276943915 783536937 279012569 821567453 452897590 137973192 419117939 407208058 347356847 903992625 630207438 372695160 389512951 641992292 569056636 214303801 47652504 639882569 696781225 899411976 752508150 10656477 285439584 718733157 942096398 30027317 222902685 904726364 630082725 157890396 516498807 527149632 237415783 465501536 614298433 195536745 69731250 1031367662 569861986 816503849 594624288 753799099 965032921 503234454 481079363 374009921 894355499 707361164 62428807 976038163 216703076 617607604 385579392 1057151379 443726443 468966686 399080659 1014500296 446940076 985038866 115942726 829018072 1028881561 938926431 411864976 517551553 831392040 484242789 238759974 989003711 910083736 348896445 354855553 873038960 486028378 750200611 686701498 253086425 350859793 552178754 441951512 972689261 22755718 1041866058 318740991 712121982 885374740 712931353 913294128 103481295 203356795 1009821056 1050120470 640211098 757401313 985452926 832518781 943608121 714336600 398911395 869164154 1019201877 558646437 386254264 209116221 700428981 477979413 199401354 298148356 536657784 455161400 984983921 712008962 574965936 883750713 474132490 991067079 664253191 934917593 430123598 652390458 173313907 648617038 68664409 168508844 531216955 241907925 592008259 567095974 579168020 715387640 903006296 547073964 1047958746 568261669 888517234 405560031 572722890 246244454 394970632 722610985 1014179455 299345619 768084770 115681263 164880812 1069792288 100538517 562248417 142984825 662714435 276091891 775746212 204410354 820017025 196914647 1019005835 604377017 847086480 413059043 1070649879 247656653 71799652 27029629 56794700 789835435 36266215 617564239 798315575 714919754 713606399 346225805 874815298 496673754 175708209 745675798 311089317 629065919 53385299 515828226 631422539 255050333 109919746 521864435 603653035 855188581 307773932 269131851 884938878 626570009 522719296 249568147 244555267 147612421 26863335 565084993 959989555 880073928 68276286 139948092 68307115 549473053 737888759 510492277 105641282 589990919 446227242 496285214 714853991 423113106 581820478 683519053 899116598 399583305 1010397726 455032221 124928564 458793924 840107811 1013321862 329857431 644969781 731016446 960855077 284666742 350850720 191575399 768026878 391398486 573805431 451117991 537743703 109873148 940121827 950041746 665507469 941581319 844611199 421200737 699984881 478815996 661190756 931813721 1014902487 72409895 311316518 289432829 302588893 593181764 162071909 524514990 885537413 100283300 247923026 66262561 355768531 472892645 533648143 1028623725 844958140 586637989 415939540 189434661 502536408 648958778 931477718 112075318 559884838 21796295 594681880 646562376 338492133 29702188 7724238 357980072 599110195 964625796 987119592 187509664 711335833 78314335 492699817 23005733 794474071 465571791 202822340 107951141 880379876 8978073 634543740 547565679 474152341 998288605 305364996 700709816 565209859 1013229221 834576411 942623527 650736800 870367292 866421692 254271406 715581855 236409820 407683077 606198521 182879075 909277846 513740152 109790298 410937193 246169899 308665115 494633988 39585302 800164630 820112284 241567755 915329020 301428680 762919564 29242905 376529863 772791256 709489076 465677068 564308474 138780923 423299831 916193462 171147913 665252074 1040816922 172815489 641079918 775660314 308365357 909807966 873874205 291891514 185135863 266516520 54086583 452998214 227609906 785778311 535366283 220971803 387016708 275242233 483540861 68768579 978492839 721981357 992315970 198276145 811285513 479455287 623490475 563654280 53968401 232007900 728398185 62526545 849076021 167880545 898800777 708261291 115062253 836414065 693404683 859102932 474768609 901109470 742226234 150884681 114546364 273224780 630288996 460152782 552308188 893495374 726267481 57767610 634425239 977494730 370284764 304821090 983521794 261216152 207309410 817048259 1062801580 295442171 351006203 742502121 84406329 307141600 479778464 701383183 595075232 821941539 533461479 35102608 855958225 93725609 193310155 249157455 1038984409 396687965 848902355 729863377 30159372 541189760 481424724 186969324 524741792 622277398 797702660 587238291 750666045 62843124 239568105 953980286 443480235 22090078 547802916 572706890 842882111 984379040 811702907 127093448 430797575 99111192 749973558 204635760 525433439 532744271 36559847 456726735 86833512 883788812 591998130 19053699 576340493 446660086 465227329 18988920 249279199 995484791 539452774 222037228 764582305 924451927 142301724 648483563 455639862 425545853 619555217 221152998 923096670 561341416 100961528 531088627 753517571 91542534 130053008 376423098 125207995 452852323 191989824 1040790508 655186586 916458306 1029398495 938892359 921484300 1026284401 694938489 853431219 439474027 194961951 350127383 576764640 5252394 500446459 223606936 131969906 646545461 519608007 892277989 872779500 608024460 827976264 69170221 549257110 924635702 211272879 523669814 87472583 981296746 965541362 1051814561 273811819 549491944 455256378 285251255 872413496 123609944 896659650 420395467 153247684 347616106 568370980 217661309 1023228513 128300623 213100467 869409439 631105104 704867476 355532320 592072959 188797341 764514403 870888359 186815359 336460424 996826803 509111238 244494778 303183702 807738404 1051466609 761136917 906835731 7662470 116776917 352941954 571803002 317901258 333818618 454759401 569000485 731797079 597622723 429983723 422439632 136622461 135549476 224573218 382607382 314555584 786260295 872525506 697616676 515730651 565576193 242751983 24743966 614252892 287290642 811567097 537320443 514422330 558185031 525033084 701271500 1046376366 699809652 95382480 873257721 293762067 84467114 784540470 610761945 244343727 954249084 677077058 987912250 741968603 651375458 318799799 288247618 775208009 570875110 725720459 226753774 736674219 276888533 781114515 129619254 310370595 131318712 396854617 734292540 876024824 937795778 32630261 1034411338 491375341 229869501 521663705 764512147 492028291 526532938 202578288 817971353 599132488 947270656 709703995 554453365 69193910 14840273 583427132 322277523 962679682 391488967 995101960 252046594 41205451 471463846 790034715 530362063 340688488 374075639 482258565 423041264 678095794 528998529 636679882 370300400 835367387 975932986 245830047 596802012 744849996 875344074 1022795114 570980799 487666241 117369650 68113606 914257620 312996488 13145900 846535903 936806804 351426130 768556346 226186934 717713186 688500248 18410180 614850814 743302436 104156549 366625237 1021851144 728120463 810036383 799237617 481070075 379029260 1055154568 602985892 1024315638 532950073 816904583 758506236 764554955 870426365 927447103 804421200 16708434 528089550 983557918 320869478 170722442 1038844612 464055545 604754191 168991912 49998995 511261458 761320835 353534016 404745361 1070844390 753243691 766432149 516490552 352030156 900406735 682884539 21517501 653754529 976558374 810653112 903919039 1017518134 609321361 835170863 499644991 73291252 239122645 13732256 769865132 267259443 33306684 17326669 589133545 685483844 624043238 38487164 219814683 773987893 506747081 817328047 230627143 806384054 339909923 368081283 219829496 1053361713 905957546 985834744 664314702 202225125 322845515 941002818 594967636 502539495 474098795 770683697 842321474 364835978 25520756 708892815 160790848 556714798 934913678 425881543 165866029 689555545 101782291 315227954 675014322 215793292 681264481 697197654 415557516 351579914 508887766 252399822 258264947 81726302 253213980 33753144 130283406 801540863 196605274 363890984 729469142 567180090 687828215 898233316 942777494 851240820 380503665 614535783 633250291 17346503 580193411 701616186 471601165 252009790 109025579 638499350 684835397 1076755 986196416 372575551 1032601483 683545657 762193687 194686366 882086378 318483439 753088344 279646587 306859188 216303953 120415687 795615025 581187054 181893515 855699422 180156982 462491239 816552622 219867924 663023568 291386790 647299603 618473385 951973125 969491866 721613257 313360312 243295027 404144868 908174680 21767215 852658635 401344099 620021224 158800632 321432556 871816411 309534797 663417366 705824254 270069797 951664019 192132560 776850074 368957926 876671031 814613664 363475853 705839261 25037445 772714388 980540094 640167123 396529005 245119874 625870563 569145905 890488140 123031685 226861971 582638626 195553940 745614586 656744333 106367356 891048987 647716013 6472065 127442034 648578146 830282847 834965139 848414798 809982988 764297766 858166495 708051235 144225319 849861730 906918772 320147229 42347567 560360888 480460318 30498419 367813010 130291915 444208846 665237311 441434976 631321299 505875589 570359650 926115755 386929107 943657323 325066926 384916579 1015492131 931999162 253164908 314027239 358609639 306196156 428865829 255439689 136328946 1067794408 518232473 239640863 302760610 58450008 691686908 156308939 461673571 589230447 789972151 173493438 259655505 609136505 238780120 441911090 781777 1005796847 621007843 69813480 700761904 864834035 207001117 227405241 206189092 487296744 1032715367 734756934 1003932078 81416306 723661890 860110992 32157702 1026216357 183625784 923378954 321348094 413747345 62388681 209305091 264563554 876629491 962852342 316476222 917219717 626025362 272526870 3239874 636790866 1063890825 77518503 741626396 218629265 173250337 60068257 517811130 96798622 992958956 667353328 893605005 668541408 191751026 1026110391 439849344 68149115 850762468 450789759 252786203 662785542 268741074 832425175 1048540828 479585025 998610829 1009532614 983475530 591702274 1044322747 622208361 255680372 979154400 723823510 854367542 886891488 671828660 756245208 418958094 31743737 194974101 86084311 31686770 343290775 376166550 950730661 855167963 344756508 981929698 273004368 182211410 844593538 1014197676 906310728 421261650 706216783 572775267 860686597 1010676847 666623743 1000051873 293596426 224802842 169174222 671477231 1004408149 853246378 241454722 630589141 177020339 351470920 29522541 438166475 470496830 529205124 894424097 905452476 187179873 555466426 970670394 261443542 722126408 1001428810 411241623 1046513635 880410133 747603552 169673223 837994175 977079494 929340679 229217340 355516104 962235291 548840232 511630331 286508374 216263560 551892303 479263245 835714734 894470789 734525083 722036695 220360692 48980889 949657240 57007971 179695639 199209079 293940970 380796141 361193359 805274525 654155386 134071446 1066917277 991693210 826497265 456406639 222073703 269119397 862916598 981606250 827240135 136341553 687031226 276020698 960005118 271615777 289156938 472367827 866616108 472644956 772512841 1008247011 395578116 290705180 464570258 388228409 131032155 883587149 170272717 680473350 906124551 271434087 1065631075 51692616 202148857 377708947 449878345 443540109 229561516 330291617 376541027 904104391 42698424 720577758 435819851 254508775 613808993 705139370 316595407 697998736 790671397 367501700 395370000 927501019 476032289 118693836 447594377 500384211 355120823 743828926 290467221 724047556 368795095 1051781756 813195002 147111814 154698490 432612863 379183585 833661865 754813942 433657777 1034613199 780915194 161153592 13872123 950068493 829177455 415549730 835596244 47328854 186130122 507321354 378925760 641254990 1047066375 778604763 907075665 774813602 329078156 819051929 26426569 1011334079 295227641 920662938 742554158 913919292 350696859 611657531 423502876 60871268 1060421024 492804035 808614081 875854710 801570607 51946358 164500935 435046205 90055966 494907819 638076742 564599836 519616992 407673557 861920330 484670545 674428797 136358526 562680937 289205464 616918926 702278718 153311435 1025256623 413470583 933386482 881950745 860440119 11449623 147148048 228829650 184610816 90686277 745606474 352833390 661113874 452916864 113063716 796374703 396873848 1000736388 386766248 445325841 490223516 1028994308 508441487 496057353 642293040 846328010 624247035 814441027 380386291 505078237 86010412 630430712 437517004 513270250 768283202 1038178728 649058574 1001827380 466202473 1036081067 958367406 589895804 361563520 81958186 590194282 38846192 667661456 320118484 571966297 1015543324 474714345 596748476 620667933 631259647 550114202 754147876 1309135 668148072 1044054890 202365854 892720104 594052914 258033634 303115423 709531247 410963140 684965201 314859550 283017584 189416403 966775264 695939118 464973703 481436821 652302628 985282209 633046600 749098808 851446128 846506329 693861606 785216639 853766188 914329606 817840513 900448984 386698362 207076559 38874735 720024323 69435417 356903868 326654619 1005954814 63042498 620527283 344023069 1064911186 548014686 921620921 398280129 495080845 622207148 616342705 61958577 875869540 892211871 980016160 839479046 634396002 945670810 666891428 808773279 908403395 933184868 1036896545 207194725 534000381 403513819 727793039 514919345 559920708 1041277558 424012784 260107259 256444020 616663336 516815424 342532560 1015953551 678383160 695079529 611886445 304158800 548567984 676443583 875451373 802834821 655944664 198273822 639617194 388373292 354150023 29036276 309152666 627850150 184751638 56026017 148522630 519669162 3024221 855783743 117433464 133775041 517576691 771412688 362703816 692722007 915073501 216303132 814383132 628598389 248162588 777941288 1060396621 253171884 842258621 41800271 890012205 333941796 535840078 413709248 482763861 1054948555 560278472 763634304 300850256 601462346 376385559 657616831 381508884 608366780 112464237 962097137 860212269 835818217 92688507 987119861 43139275 807874442 729453732 316971482 7370552 783092591 1053640430 915193137 758460941 852343088 334721786 1027242082 294607336 158862283 708315723 500911357 165681683 769224588 467143989 50720743 432320808 1049980924 864205060 25580353 122698539 455699480 85378224 156714349 438049620 136249660 820999955 622908445 628660223 963063100 280320867 26713141 608166637 556716571 1028637002 1612694 1034220668 199435545 19331183 985183053 628373098 343625497 523211167 634114951 796997494 290753539 839129190 381294596 752081245 367035125 831367540 369713810 722090016 855875446 14478298 385284478 816018475 893342026 386301078 516172521 551744645 58874169 612558246 348390557 754014899 126740028 831122135 546779935 56548242 224256555 786907286 781014266 99326105 127569965 576884464 170792499 988753239 1059712979 694357991 802264868 958000780 233577469 459391855 909826860 348177358 114217545 258383088 364333827 958387645 607520206 1003518111 935218602 814931160 273129669 989224408 670730508 244802169 664402244 451144426 615860676 810444198 689652386 855017314 682316153 700807374 905039724 175775298 693870822 174557318 1058922315 29695085 903838244 324057003 253129671 244510539 821756203 903615641 942093786 693800118 704948641 940714387 604905336 318972561 776844873 740217498 118327903 1028196581 202415898 659286554 259153457 426409792 101832823 554885065 425935735 1004482837 1072543164 22699078 719303647 900753054 745349664 861108904 951545361 179155781 780596180 474382166 414725036 1026763367 476965593 561954083 178659610 939315132 1003364425 146373545 1062999100 41794686 808620984 940517431 860427637 426237839 537281409 309315758 234627566 820685856 335643867 749826851 925728520 445499739 603186203 858424365 349334307 821851473 821223210 11794247 199272553 1058974429 463843283 465015562 569006551 352829420 790482374 67171737 84140669 619675152 297879568 943463909 403172892 360333472 163418463 965047546 521993127 550204895 392848763 691585262 890630893 920252856 1007850904 483276161 331903461 841944268 391972325 379896758 1008632577 253998027 999077903 724600029 697422285 374210463 338973189 1013762508 449336351 216544159 560021911 1053447313 148901191 400187692 487437184 972489472 658120542 542395222 250443139 434037518 793665120 591677595 320756158 755119548 609280711 1025349067 472087466 167420081 308417996 711720084 32985989 726459746 911448953 534739556 22847449 48205895 930668733 734169022 826431419 358640845 504093696 430708223 825346695 446065765 792431458 72916146 935572711 789627584 316542869 987815499 188109470 435563182 704024660 1061389853 759255040 1048883427 155334089 232922825 405087317 660517706 293450988 31234175 589534085 828908711 1063707403 392701847 956914996 970146200 1012204064 881689971 20672662 755714768 199426308 551383512 961766540 861748771 217467141 325756269 930064856 501801438 664098569 165236915 343155313 479727032 241411629 1046362969 157521733 497538272 732760820 971375359 613733153 536204502 678705140 980180843 867747532 428872914 746025340 440279047 569256837 105968034 835646838 528304647 552695013 251299671 410727926 473152143 575861468 108831213 176470074 449247647 311350559 521454702 1011929641 464892944 624269377 177269184 285912659 107526787 491620158 754358104 427156098 529073622 1046562756 495713903 926155375 382412128 622496804 224709951 870731814 25416149 834927634 523345046 491760491 879374603 157185704 649918883 1049721499 529628275 121364130 456744922 450839927 302711484 184188604 112971126 573455576 477452440 99666342 147100005 27421476 801459304 958391922 333410989 648832574 629991002 588159287 889359974 613152430 472032919 389491370 581026899 361982605 4409873 277445105 442245310 711400087 361029661 888616945 719611778 102258300 526553461 923152518 481110274 615750719 815184721 102702984 547640410 584428960 805441099 614450834 893085081 127328121 1067488987 581472876 111112536 974291433 216305706 957629745 876795893 46272842 1036867848 541951996 758530688 208315504 366395944 664509765 830902435 54925131 645533598 800400833 819823513 694011198 794008897 293943767 185453327 359573973 202899534 10557127 401370240 662718163 835920162 864096037 277446992 126128631 807593088 311603934 808433727 29570007 507107709 841226563 209177080 361408047 928919637 387886531 988895571 612349233 833462332 895749951 682359315 952443476 147706350 584972288 750797622 904472217 555756540 458734608 370931687 772035828 209054925 102808539 373791122 245461337 24353512 759647179 570807308 501735549 74888604 718978085 312998686 517939450 670728140 684994736 760566956 624398031 307088277 993060418 594672307 427579786 128204097 603167539 408275159 204025705 796993346 623803823 1006190264 56293490 1048813137 660130113 303801706 709064395 484755133 869532995 327414853 1026015150 869727211 394342070 36714702 304159450 332979693 738036096 418503321 624912477 483684155 529524240 904046216 266312114 454204932 225386323 167302353 353108537 259182333 751767020 548288813 131106740 345869356 444116254 1028174154 317881196 496502457 389194447 828871207 787832017 534485348 98590009 570398187 659490570 971635982 41901562 886192560 405358095 6384774 238106202 692024942 66096984 581704970 385317859 1000708173 694810898 82866071 406743371 59169478 876488053 665841631 981197418 687870258 387820436 592417739 1002507048 703715135 813161951 323218250 892019380 549598348 96399960 708990021 736706934 831475182 763389588 317804319 915273466 843721686 41818996 48351235 152167691 809806741 171136420 156237063 1011349231 943064836 680723916 629671909 951436092 653729110 272068102 820757178 351208530 22667114 1051780471 162702789 753717252 55262268 72736581 848727345 744943980 1002824610 471188092 198458718 604248868 689521069 404556628 993337720 452631794 57074328 708867221 508310342 1019547351 115757481 634638758 225768064 900617545 29546125 820189640 550032489 986719777 330474415 84724972 908150072 348962957 986078440 450139321 745637967 108029626 712789781 88488570 374326640 986693178 557645075 285291669 867021222 641009265 77793045 207884580 841833057 847444065 115859797 471836054 854358732 245523770 316117607 779875881 439581475 139170032 999620174 935235212 182242578 310978857 999102231 133923946 1020643992 614480818 973475096 309651343 196507085 727241172 326139750 805176147 473729064 866974391 882333901 952393701 367820073 183491248 989075179 170960276 672955213 416428330 634984282 322960440 895905807 765523620 117604266 22455071 758702566 824282897 984279318 430840384 84357383 907700376 746459901 1010500920 118124398 1068619555 885651950 840997976 769514249 519401255 974335643 130874226 866465206 155715564 487483184 1030204556 419019370 772136553 41565096 48382992 770474258 898107946 720118129 557763032 242334353 155248057 133197422 261824684 55740895 246447434 730108949 753392525 164962017 472603120 225141642 345220073 1011541776 1015298306 454614781 102517324 322529669 775825146 84935096 274863776 260215243 781351490 528683226 524155113 599737542 189939641 509449243 539562138 451870211 56752811 810093209 265276448 658115970 855695063 229764415 384992846 98462057 220996529 584147737 103682323 29239545 890363257 578866388 452753178 465003415 252355123 919915909 284675228 443523423 943231190 272396830 13921079 793618213 534721799 471909770 155226400 1067833619 157620090 480167969 333810453 508491736 462974031 923999529 578785159 601766523 324910780 527071182 760040186 596244206 1016751344 747124861 550122417 395420202 261537448 301212264 645867596 52733760 177800829 664628035 794207066 478325483 473467626 515759210 446998300 994199283 420443046 107924700 1061884651 87304896 265084949 783367727 388564884 944609138 143823589 51171849 19103054 911745735 1015396420 518655616 592438751 573371495 1054403980 955679916 1066615249 999789348 558893484 966909445 367358124 182515745 1013253576 169780495 533646842 411654105 226983703 1057239058 755894181 492587749 102287935 580499431 1011681817 104486088 1010562942 65353707 216603430 821759954 900099943 746692459 217550167 204060297 303330679 187176809 954061206 22601618 746297952 777261275 275806582 60092103 535934886 738831804 19456462 931370431 604577854 875603635 201434646 988527396 203469873 953752764 883325773 389895653 394908945 1006455359 435874492 847196207 165370709 390760278 254925698 588302158 365527079 251805305 506472272 644721084 1011330212 3293323 891232818 984638171 1042971817 942003715 788552242 633400561 831641683 660932082 385235961 424600486 326618295 320008153 184944683 565660203 902074006 332905228 656224417 435986014 976549680 164108148 46334658 760857318 349563717 6534312 990610441 927327327 449984472 349925821 692048864 617100539 786457630 197828596 794948212 401159281 630313550 429232923 959423249 804065641 354841125 38508856 481883651 155259703 768170153 822965363 502989590 353627187 70464065 811288954 613641904 149447838 960607329 670145062 257458687 432662616 700131635 873279965 722631878 407430977 362285750 226855955 24881021 777890467 541751891 978375133 264216599 910177367 29975466 699959816 748066693 87027180 822438087 771824144 991926067 1054003688 908390166 609302643 992929726 255899677 300548053 14388370 1007379722 780389111 832952850 457855230 118051427 197618516 442982570 153316684 712693715 338736830 69540604 290511972 940985921 173218011 261758297 787926922 901407441 407190306 458906078 145354663 339698884 667305669 233950036 51301575 217110758 407496955 579523894 758521586 1014757784 483734914 817309197 1028888488 495276541 793323044 649542968 952558322 822204829 356412686 438224756 843389868 61507288 421591882 608395513 369338146 247878864 247853381 610691810 179728490 215566641 558642140 589814119 318998987 57806765 196960008 210777413 511930986 195873703 277398290 997719154 1013153917 410202475 125025373 705673320 603891592 881058933 690038564 1050861980 801824401 396909158 937870237 363169121 564235703 405978515 346550564 332259348 675184148 848235822 677680318 495933446 43138349 120673257 107480158 380129764 858154812 707904936 528656829 264965704 371665156 624145082 850800607 505495294 106667053 357496611 596825670 114311427 699159684 929703066 392508487 793673778 657660903 928237657 393359248 713542230 142423010 329311584 611290648 1004772041 75063741 137854851 285045303 699869059 231753144 646205290 896539175 98427666 17926786 999703173 636667925 651398517 925801304 384852005 1067902753 625247236 733895426 498788725 603385036 264271685 765722349 128610879 399988587 443211120 423430079 1070221609 707364715 619300895 753283820 1025723857 558314499 543896818 867430018 675803909 213241345 84075704 338793731 1067044441 73552845 379153473 99033492 824312791 245435536 193178089 501337808 786914064 892370742 255025027 951601880 173012310 177580164 605105632 381793022 357365788 576935805 918566535 837187294 314438173 779120660 733399246 121174294 859710553 862455119 471349685 759085735 117800462 1046735060 520949561 554719739 561359132 68730585 186799160 399381554 379300013 303508278 243454654 3725621 355197783 372865657 918056311 650843876 291452877 486522697 900542251 954906315 741793133 719675455 703429549 937986926 1052851556 110349011 956418271 1002443076 744410093 455640266 822421820 178871018 363883210 534568391 167420274 1072561778 516356378 810160368 623606654 89692712 376080982 839838809 654817087 956708543 214660685 272787974 351340510 382237956 298489379 882152707 960312346 924639026 1050345195 226373021 204656090 872744093 1072249736 1036157643 117640957 737259042 822404764 815144 169345369 61678509 296219751 310741944 521824551 120343612 1019187711 675814482 243457785 249638286 833078112 480999156 833552992 811578228 844618594 616308665 585518607 1013118501 1015235556 200015753 880525939 843919059 348738847 926141443 660398047 770159939 781772899 280520449 159695861 240165132 836695556 328395409 435520684 559426889 201944996 482292059 839048711 183096241 834384736 361184130 268358609 371068478 330359494 285087203 871631665 48813330 697694314 616111115 131915085 953626891 815891506 697067791 656889798 53135332 719360135 1017474209 425991472 650018322 69407753 642236095 361410178 583365306 370120397 958983053 204704973 338523314 1022357247 551837309 407132895 858708627 1056514328 630508580 161831518 813601552 1056078556 311082336 148494559 509087436 248421563 715533619 638991148 321345365 259144631 729582832 71746531 935480379 121362329 973938533 1042783793 464274216 275813152 335698532 574260047 323554949 643200781 820946675 120127371 480383753 636499455 1030452970 961926427 1011318217 309004563 1050330710 172225672 627143289 63455136 137212777 615027415 955553777 154591633 682955363 1023305928 1023227647 929641435 847778163 220072669 1050337114 691659865 306680506 110168319 907071318 939141889 641396699 818551091 506313785 804862569 285241970 696245956 169286772 696434957 606892764 137707324 482954038 964298941 645917064 467079121 436587396 784754492 927359408 568307729 366684845 918265314 151073021 50939583 935103903 23324148 425070316 7015015 778633912 760786850 872250138 634097924 786687711 400087401 515829927 747230669 634257351 1007484392 449178273 569192348 205393 190388980 327184809 436753782 583994690 657166481 985062086 1008425764 948752865 682271971 792454570 416767250 63645105 837264580 685836093 692623964 196665194 145843405 949734052 576375275 546238032 987598302 38328797 622869117 943052289 509965412 621731787 696515550 697152583 780112183 2409022 204836291 400124220 822294992 1003360128 516447704 62970615 878253133 389043946 1065019972 1051580922 458330633 514081342 33914910 244592093 827836106 129676662 257353789 635815144 532745954 45681961 510804512 62287896 222958080 80373486 256055290 668258411 352228952 1064516030 985059707 844821597 596631982 475649078 431788787 518065968 364343747 546875753 374610545 619123167 956097863 905672063 273384292 869685993 1015795652 902904062 395445249 544528683 89264392 602270592 477711112 736665548 860543372 882198849 435945613 15483963 828021827 683094605 610752307 462107781 563633945 853227776 155715374 629602380 556849247 16999822 245854421 854500606 625482154 135321276 232855740 720800794 600642686 777488380 1695437 808373986 794363526 756104050 1050013415 523409290 18482012 638142747 389002564 890677839 118722112 505741992 36604022 365977484 216425461 269512950 1040537096 573262690 803053406 488954429 971823355 1002411886 270608457 583872733 660413457 321142796 39991472 385016515 121013843 550418087 1071709065 118430822 33844361 332118375 375042029 735229490 197023154 754611211 70278443 156127088 922525995 264868772 59919231 251801043 930821969 477920670 1064428200 879936381 601315961 356913805 115793821 1064813660 27753613 509993925 161843173 1058965329 10110429 58334321 584544028 1070896229 166535158 912148965 129989647 292351115 753300066 308799851 132767152 925525432 388276352 731437027 296108748 876647771 229808119 989874827 349000185 764006982 535785880 487406566 860960450 395943611 844690583 45601653 256928228 451039767 465237947 1016535596 991244659 928879113 401540673 164277201 203366828 224026697 348544788 760411859 68010150 363145504 885333752 26048678 308045015 563169166 573419939 81931254 18499822 426954896 273059089 969371838 594221759 290938426 1062326018 53436393 481903156 631296427 861560007 741075342 157958142 1010967589 554996872 389941418 638843872 168140563 80071476 480957451 229610639 81390852 310503843 955372616 826356144 699559141 1042524783 168036104 665179490 969922634 555947130 957704248 229952930 308154154 1046170349 256536351 967745611 730485475 10293146 577609461 876548932 596679007 142650551 325947461 91517608 539415816 632441632 505049812 145687765 224631084 694022636 11526336 658139792 921474677 630830802 139465722 293308134 821787660 618394928 37659770 226673012 926427567 179662144 213407946 365444676 567644972 812874549 259930800 192664124 326303913 387112244 551524356 733424831 239906280 696647281 990392602 1041080268 712911031 464161523 364518605 31185292 491331521 761597986 517102928 1032473298 712663157 671907074 943465993 182003327 501408390 350214738 172535934 553094702 635089222 699779582 798928076 625899741 843427447 939677225 40185377 905734165 109495847 153863144 1006522017 536978116 299812544 69905808 661389133 548029782 430515663 207755547 299230851 554743931 8155530 50426224 276115766 945256952 520231335 766727966 1003939823 453947638 631934750 489802382 486650459 344388140 349344662 725684135 120684152 568446685 286813036 314282395 907721579 528186947 659737070 255661219 207058340 622996710 694395591 67826427 75670174 181882003 1052324213 20920828 330951931 165525863 327008661 1011357799 710186905 17958514 471568520 720741 274671047 1053607587 2846817 952094977 999360392 38958803 708459014 683015698 342768958 416206270 1056844260 750917154 987715160 1023127435 719307471 368187005 567284018 577819317 939730014 56539472 425123548 413088952 445232792 335349925 299577430 997812818 43807862 695652730 540782352 919956769 896941718 440575978 675265795 449648339 230634331 51334624 933556738 882399794 428203611 692291070 455853051 28103921 1035890959 511993106 575592387 861862954 247203161 40033806 941347388 121131109 287622514 996960990 286351301 517001056 1028482495 910425237 961127806 572050368 510171379 857803610 283518050 178299151 874973091 45636711 645451829 736449973 246281285 459458631 458702440 513219367 1000354110 597102488 11461492 599814984 198017911 22244344 147061851 1011994002 534880540 477904406 515416318 1016968811 1053293437 213681794 501849750 115195705 656008426 130815322 178859939 174026459 1016430571 305057223 800559539 672608230 526743764 930783159 905462798 208431176 379119500 1024699324 729826379 471505984 387716508 787627528 150702569 420457023 725532786 264212547 796640116 629929569 177643774 9903939 802684605 845989802 459813291 290097159 1045969961 233422956 59892518 891590198 850543090 1071423999 770513454 524268593 742242995 1040433791 652753829 277343738 1023510392 282076237 971023786 240337735 450765997 655717970 330997026 854490914 376083365 369263531 115115536 897250855 349014342 17798448 743562286 822960811 526939901 334645176 1001867368 70889459 861920160 839075943 750546905 441602440 195733730 209445572 848240037 590869667 137959897 996884925 414677249 617170435 643838741 883317782 30891458 203872129 841949120 263239333 570301162 592523279 413282286 1048996208 294572112 435004062 54562972 566748615 1005022135 605213312 148074813 910888358 494284724 284608644 845841614 415659269 1055562756 707795908 289246343 549931819 345913666 23345459 910821018 1003094626 3109248 476560885 825181645 730565990 551459497 561081989 979929411 343029242 477995551 1013113464 108220413 678080142 926789576 427570059 259026474 796646428 90630891 656513145 725568180 28555438 1018588509 843510450 385834698 182493156 562467908 477761044 280472773 1045519130 442508482 126708998 188879826 649041513 807464162 336794164 300232708 365073291 24500389 197405482 1042285207 578692060 712860211 441885506 656910869 243890513 782785416 46833405 1011975949 533871734 313079298 676006045 408843683 24021050 172399650 822103974 431576067 481315634 857836830 778146460 186772321 1025042754 307595763 272198710 782868192 294307789 711947904 1052037456 441198941 26171658 9992279 569186452 258199525 572440855 1067611900 148010727 859764974 732749211 726872715 816088160 302666761 668066354 384315057 851507210 486501647 279760874 667322420 184494452 679728831 314138357 289934484 704549663 224634304 887053659 942885228 514247543 784378838 387150044 144915012 1066893543 241611738 903202138 1029208615 666028595 785658439 107735650 329763067 498231747 1050041411 330066436 618506063 183480531 470803059 373370303 453912376 2205554 22867310 256241876 730641013 1046257567 986981063 46568406 556726155 490922706 607414478 662483087 454423976 414812591 990781284 896356164 789114736 534513137 801624025 375248452 559354425 393293683 440333631 1003887260 928951974 107385925 103169289 868190326 254709347 468252203 650450106 413940227 75100434 101012552 18160874 756064301 971944644 342580348 246662300 295347170 472723374 389721736 97768828 232247147 1042104291 730396021 940498308 536522169 962144993 595224064 188626696 225686899 785332767 388247744 1065472854 639382958 897472546 413802454 904746677 706884227 277851238 606378612 562654567 636283552 330962439 807207537 372006398 522564069 712464752 883964541 372973872 984407317 419347761 79136585 993865927 601454414 360368485 707431493 921720806 945282515 1067180166 280910294 345073957 528309898 61627420 617280809 102813859 969528621 355611284 330395253 745044019 624716223 167553367 958485644 319848787 795182695 492267391 947761515 360826526 733847555 924377670 348908945 182942882 1019715017 779893736 1063354404 746921830 313789616 878921482 409752536 716134270 588378104 939813196 898303496 329522849 785330234 1025220556 728509153 989949814 929318789 459657058 805344149 534907802 914874842 676488875 255129049 142726960 906140461 82707499 833790689 474319713 905610916 598544085 27221911 476267519 88260171 285014776 1051823689 401371797 183729566 944833315 880268688 647108621 32125664 3805082 153104650 275349137 225051676 834064975 999966071 322577181 492418697 579074531 1057505099 195244864 394643648 693919039 622902805 700851079 20929472 182614181 648039232 690851947 305394240 555394079 955543017 89039106 281456487 490956624 266740385 255025542 116226091 619762840 641366386 991249873 891420265 825530638 852837164 416442630 114901388 724192525 744774821 403488202 877482202 1002834728 259100691 220373722 789887032 129410094 321956959 348160146 948685892 82821873 333392982 990156421 692727103 785482223 660397601 451648540 144287391 442541914 809060765 985850060 656359149 335322144 241974631 1048477891 366203670 778143688 950797080 409588517 824365051 626778381 811954485 119134241 192764238 656115037 445848047 46139989 742364967 323726482 66187551 270086404 9992329 312938825 466423094 1020682326 905156766 32854068 200597726 182656423 925172301 25687247 216297195 907211546 113318110 1063153363 335142824 567852085 945889807 287901393 862610534 541962311 890790057 502463346 504054358 360467947 876250182 78108296 159926273 100788020 486435911 649016040 654346530 79912451 553738989 456525292 1007947549 10286107 457862771 315977662 743626189 632838188 1051976491 695241713 417091778 938643903 972713608 378944997 793000903 527426416 501997037 335865653 439675445 625340228 328172671 294075122 567539402 798781700 109996221 931659161 765113243 524734917 157999103 728674287 125204356 96447648 438601213 267723449 420223451 356224429 528665395 512756289 781373244 1052570679 875730336 279452146 816190045 835717274 576849459 631305620 48516085 1034912589 437148103 3776103 114238657 530040260 69369893 953807987 248794153 684553541 990766715 836051191 973170385 202080725 1058749897 946687770 89180809 160373242 109372014 1025773116 618725495 797973424 468152820 39834436 50748553 35209225 572519795 657478704 583478216 502580849 1050409628 743738944 13770278 784113288 113331420 844206231 523612873 886392173 309040298 955051392 221200151 844983601 223916179 529842146 128774733 28708389 1041259877 310654935 159668908 880910659 737521095 224768960 228822750 764147885 180580312 428782413 230107816 1022437996 23073065 1038147901 647818120 48288718 829906330 424970219 464224828 592227757 336895609 284638923 562431159 940548974 792732297 630016323 200611286 263683569 538441809 96793346 146373483 284443969 383607040 90062343 143160775 392319050 890459481 30228088 202509415 442263950 469033301 707190878 787791841 795507559 241356920 305542071 532023619 300293363 115825977 751574189 565333843 43508756 926259771 982263947 463702612 1052231256 496600577 623267654 759806854 704244545 351289871 20963989 296982051 1061158672 226993615 214427480 52362106 571044334 809377912 81998543 120634582 151180477 815841701 934340913 953711431 744681686 556673295 916770181 1012299866 400465186 564524743 1022950665 257098749 487848701 103736155 16261185 1070374265 371754866 940000649 968364055 1056176494 999316622 149654432 64810788 1034162803 1028291749 523785887 201020282 44948912 832887948 121012178 1009492262 79825756 1020642468 165159725 499191246 671223564 925164160 597364601 886642857 317693915 680168691 47216313 976078997 1011159 1030260957 296482177 92010364 286799012 1019974567 935497739 107385961 952006130 774072358 552328015 247732137 762601887 59283989 149380123 657499800 610880103 807789760 1022429433 15264512 521761697 428671777 1045753647 823171450 711479313 364539195 803099028 1002565494 487698055 985533712 315206518 385363211 618017554 856253085 309108092 294200820 346646279 1042591062 817602606 871483512 339980815 589218211 1028388670 871898518 435593930 723169575 485117298 694108525 428253859 440280064 779441196 223858200 791348166 793035383 580655854 403669461 595271073 928595252 736305359 18898738 110988671 61656845 517802540 950201028 255667450 766213632 582421896 587779878 1032814682 24091470 883045993 483169552 955757782 39200084 604373348 135183944 987938714 632570018 914075137 932479670 48199555 36595061 590272205 692440612 890840819 409767339 1069875610 914012958 809590155 719406390 86273484 526494057 882179638 313025797 1050380089 841107140 949598260 872178692 92444513 874535213 366226584 661499317 435938342 708446073 195546517 686207798 735919271 485029572 781984231 151961318 226714868 550878413 985978972 595128488 574473140 92413153 53092446 803057515 289133711 1006216493 1061248369 551284964 38833200 741849523 559816567 16587700 1046732768 719127454 783397631 477377081 520987882 1058802238 856843760 965072367 438775293 604159761 650702994 785930626 669670585 547507123 84664128 939569152 526793576 539688290 885321740 1050468236 1004191392 511756934 499079836 483848319 14899403 292076950 1054186775 350587245 868680719 842812660 329069019 136527359 159020104 48450850 1042287848 360018936 772496049 276165629 572380394 999249061 984052170 624805831 169460042 364975300 359160263 864079605 136214251 567800476 562086012 888956306 585478597 449262370 1034132808 694383046 514941862 1070064461 449129312 292033029 1029232929 549688777 945590880 174970694 114170207 503819001 916031822 244078788 471576148 542513149 247399086 18217160 722481770 709259173 1031288334 518269104 593096102 731016908 292409120 978795716 949599320 187130444 269708005 1011589267 719135921 291449863 876643247 504068822 55799488 99116834 714686316 637380245 227139290 309693648 142048605 326887294 204613616 30693775 692348878 87552401 933660088 892938652 1051464369 21528493 535034165 1050324571 232624083 523175299 174128688 414154031 369603476 861807880 816018082 622060509 361183492 559217280 265674605 213460431 47171687 28062602 1033968113 714013852 157389417 949109262 997269851 1070849457 1073015373 428593799 754806236 911637422 846120955 832662683 989003738 30568063 155685073 634223102 688252835 209837185 575415175 383594233 1049484289 619901504 615347606 123661878 693704785 263540125 113165500 404150323 757839427 265370898 747677928 203274320 758955732 833222957 474609000 1012863254 719752086 534270691 805775738 504008775 675402129 201361754 895232786 499747042 823667976 347441312 108404411 238831070 259237054 90757010 1001404501 811383014 868705511 755653788 1049441155 775956681 271679834 144230528 983204948 228190224 48696258 1060488813 770309025 82053886 41021237 203179954 403820594 487902584 536431591 635534830 339142190 620429251 29698137 934099692 153282591 910985020 168321734 1036249448 220808762 370477251 1005837941 883225454 688084505 376801466 779135930 682959054 877900003 973028077 495345705 323254027 118123148 570426814 514090692 143829282 28157538 688734304 296792785 315449781 657658812 919702014 848483022 341518707 210304125 775798475 454252477 717162661 580038795 50983609 30712957 32134515 1064140869 613051457 777216914 402615808 993387803 797154335 646682207 313413249 250284072 692198857 1053734297 1058192992 288183503 877637133 994992221 434323944 541708848 854281772 1052020523 82124022 783454613 910880231 820203233 720029347 685950635 653867963 189420212 52481026 785543853 820405494 833986859 527894236 335336325 155278722 263155661 930837342 939324681 114650297 604827384 746817523 903428793 989860519 1056302694 470139963 405994923 688195078 660605986 857270995 247342143 24278828 924643678 1039855817 172159355 979885401 458571377 828211824 1017300869 405000300 725947440 30589645 669030900 674513568 60633892 269287133 47028788 93693483 420123094 170494697 17199723 635275509 818567575 977106350 728837699 543691616 169439487 668332021 462827652 972464392 271766668 981811291 772777306 401822598 778166512 281391234 758372451 678355234 220366897 957810688 451656222 139731441 707093758 779967357 1070352027 468988431 595927534 985382795 503348974 241306133 621457825 666688446 464444388 816800760 3824159 517746983 902621877 88707746 371956411 564818762 394835985 355940403 762259137 418410889 1064624204 1006741587 600444787 198456485 913117720 1057536405 648797486 537356924 675620104 506185797 598984338 1057443156 979159024 763699790 958449293 672230387 833239379 757256331 1016820759 566094393 235294373 413215404 680017556 782418758 701239491 15375460 815554991 206605076 1045692303 136616743 590592013 185037396 742239786 601515629 400325743 703240444 678359955 424003494 933477438 230261972 293474061 412317656 510802639 54779019 499717132 220682924 121893033 63337273 227873529 326297209 245083292 232241399 580654961 921003881 981314477 246256824 97590231 279633531 678450235 1042793018 238457449 106386312 946633840 307145133 950529332 720835213 586332600 208817225 595108665 584560377 1003123273 231918906 191205631 516903706 915818125 854388193 816352285 308360000 636087766 577241491 525542732 119125571 168224791 547470524 170633207 656448639 277120328 668509279 122416186 1006884387 698602380 1069932804 672709195 1045859346 248001330 1011795924 437424782 119316964 554035135 382614089 462005430 687567337 1000810834 811732195 423028042 1025324584 24087297 507289767 364777551 795598861 793598749 1038811500 707509354 747045622 816910457 440226261 1062124268 839712543 819362911 1008343056 568917155 521047451 247703010 578521625 277458896 154759696 1004073612 701806473 778364888 247026455 1024169870 569311439 578524004 715384135 631484290 894871747 79675281 348566023 301978047 745321296 233205228 815466959 486412181 854945929 644202530 581486264 730650376 125658394 587095314 733833071 691283035 801327851 26957239 946880789 1023664617 611239602 709003146 681229653 864437608 416372502 562004571 866912608 161116025 481376273 668785933 328078036 237815531 968498 900739010 759589846 647097082 606608340 677503924 164470542 747213565 724186374 591742627 554883316 736862151 10492336 609687174 354388100 844632269 409438546 428242432 8182059 994725438 405433415 70434350 566516521 943684914 692920721 219727034 510766442 18562497 539785442 191676403 322567001 616840562 157498993 738914991 591174829 769490384 802687078 1017319265 1067197393 962228689 315349808 858424814 651274173 72558768 126395368 143676786 353211709 805330432 169379794 647244425 521176489 529937124 262417586 86766588 789920636 803854431 907967398 930035509 414572297 745831506 184363262 323822289 796327483 385055068 886487734 188761504 171740810 859434054 975358588 920825052 626784674 21063434 208284782 419390744 590319748 810132541 515347075 683734993 495742909 639158055 1067267521 44381973 256866286 738479370 763717516 304883395 27119524 494593347 166752567 859569826 762251598 890289398 274283389 27904008 26475552 366441846 950863305 334845863 538231185 462003834 730972718 674775756 357070165 28131433 311216498 374468499 98428228 762730665 502834930 333899765 555992642 84957887 775595592 950716375 260844913 330703161 523181574 146402249 145957264 1001205160 890668917 63377008 793886023 703578514 430173679 272463397 44223756 1020390507 846864634 294800789 254613601 412738106 633520510 394148306 49450776 653866963 161430025 99200099 698343728 975049545 688860592 1042352809 799233405 486645148 283168616 98757266 809035163 347805534 293296061 770863762 452937451 275288269 1015239556 1003153045 798782323 812322220 739375327 597872015 126575032 267497964 453718266 746529232 487128269 806280862 913731798 197507530 114015268 626225397 895788075 564145154 732569427 930869926 529757068 446749472 511924476 61001534 296247148 164449377 915251149 5778158 209310417 208699605 225602967 574614190 480483688 880490260 111286247 459574415 433121933 580224488 643006400 362952136 680679233 866603820 931718439 1044358777 648335383 684565141 477706655 688863792 769134750 324119191 661638681 189649883 361804104 882211728 489960010 288423903 231307647 850399436 446421164 585333598 81929542 783507129 834867155 249413413 519143273 522104137 1040162690 847949660 458079975 606934932 3009554 944699646 80035571 401496179 817232920 941360984 437589515 638829833 263781806 356886989 829756603 559633563 608949745 871332394 455752082 260570980 531183926 165666543 917016995 260360290 307594893 174820830 240094818 689818168 904122693 838495764 193987028 645898721 857577755 1034355515 324052720 458664580 277259541 530750863 659337367 736514798 790399653 429061159 377499574 176848107 840244100 685046404 690042277 1070519884 589143743 103970285 945626476 452519927 365637393 80099747 565208725 139132316 319845236 453879240 274982262 519254859 367445677 302622319 254706332 131712519 528575110 913012621 54532688 237755574 94160675 483943626 786281365 204194930 1064260034 841047912 515346836 446699364 548752954 409457503 263851175 856546758 486189218 399030494 864551406 1037841750 88259649 994583735 752400980 831965333 2775183 17852561 520722469 324468447 563703663 511437581 728931900 171159486 508738303 36186352 886045265 342526204 48097334 240220670 142783675 13997898 316202241 556161300 73269688 349162760 124323782 927001851 416307074 646059254 18948390 626035300 669321108 741395016 730965045 330405712 152781205 1062601325 678451801 815161220 832647040 99092629 953388726 352160116 677074508 934562992 983273686 372829489 756521069 602516214 595710903 425312134 959285498 1046674146 831928367 375620940 482600835 132465868 389242247 975563135 194225850 108224257 742685743 879421651 141547820 748406043 113942018 231212269 455090624 316800781 300656517 347162459 580096434 578979346 486352798 632647484 629370977 221023620 826027931 874671820 308572391 362429734 207335229 325084426 8621536 535152002 580185450 1028959122 373396444 204001956 574960515 948028673 197144099 690231383 1056261632 26078968 481525971 707358435 754999626 356939610 576254488 993600416 748327904 590083264 549056632 791350224 701131019 133680911 89553869 484627510 116971527 675085676 619347973 829084356 490675193 316183983 295851066 810292408 792351778 6411039 858429551 580018827 126142535 956896195 147283689 401472277 237543727 951023272 529825283 680364895 234992662 898296588 94655964 551402962 695704469 944519437 477089981 386015473 1067144869 214742719 893749889 448839671 671958994 419053281 79464006 484768893 37833222 157210697 401928625 413253577 1037174531 695434572 711958776 103772161 563244180 243994852 585272063 368511366 635858549 552624816 35448505 619991941 184312430 633231465 622481789 91815543 275753132 440202940 115739275 490188752 491437332 1046581904 38575136 863213586 455155018 95905366 945192107 218497503 890626878 877339923 1056449207 859244948 32548591 374403296 921035763 131084915 1045463173 469576833 1022487207 163780894 582011585 123077417 768977934 17179570 208619475 216749452 1071087413 685800167 1007978540 1034410461 216394248 544046923 852099413 846967654 885605241 472806653 614922825 993776248 528636634 324844939 122837016 334764452 193958110 513445368 1072529988 726134072 369857320 828555597 690243518 316916526 988798155 18138730 127170675 89193687 135419810 1057561882 468435931 978515871 908364537 468276207 484997017 509005946 506054193 145859095 387423350 840837350 183889915 1016827887 995564061 1028605177 250926595 1986437 131218250 179704889 423587693 1046629368 257849661 994546288 860054971 375628238 754827072 270152074 110458089 361831177 707101533 630465644 553212274 755188389 551955414 294542339 706840141 78615919 443600573 970350912 523433350 672894874 360976581 539155609 376353382 959619623 99901036 547525789 174349867 619995539 497037440 775875438 847413218 74580311 988218674 47348548 888360157 789682321 401597714 898280495 460285358 671500564 190265957 9361525 612626706 147956991 727688811 714765096 733191358 772293289 49678480 760864633 996995606 829978421 680674854 554295052 985259987 867973685 347906713 191008971 132715457 227369765 615774435 136736248 772130137 965917417 887401661 468310988 438600831 955081789 379045862 238105969 733388609 449019143 664815188 515673840 437493125 436892678 880831609 343658619 283308598 626650941 963058429 1045390178 382280280 238223334 962226643 175603229 861222870 250152091 24068967 1042514590 261987136 591613944 407019822 748577455 193874271 923372972 743920680 433669392 180369656 538501206 878337437 231905792 274098070 267286356 364655135 827669161 786191519 937137624 145935788 703705086 597445503 232004496 639866341 336123007 919497266 944601506 164574892 231427655 655201298 610842751 320066040 160343012 345834219 638019133 705261103 825633244 827234515 705900310 663716109 690501627 133443845 227073321 791436361 731358884 375091819 897610048 780995936 696700262 573497859 783028084 981090048 408648617 245032614 163933682 432975137 688117843 591050341 50508879 258155316 314013799 246949522 58336767 543425110 378381797 51791849 319668588 356762955 1055824996 543482683 301406024 754726665 921421237 206336060 533501665 251937019 891483525 474588145 893596505 950308332 356012146 681318442 949103483 472380804 24004499 321394868 415378210 81370604 631867391 203010794 309197521 492925389 202627261 1035881564 1025589684 893186879 505025051 875594860 945843471 193779866 106959729 755203312 263928889 991158533 450710316 6367221 958895384 545151813 63678994 204766314 64073576 663293090 608298963 499972697 544085583 71424604 622571184 239888883 269892531 820054029 657910170 861736084 1047050715 1024223624 466009407 898416854 514965236 340931714 1048924220 434157875 396660345 558755013 1072702426 325736943 980618648 1063584869 224269300 417962191 64305735 44531265 248497562 905284712 196642763 774290382 349217431 639293802 743168425 826440785 291355973 995556437 652763520 818614030 343085166 28149746 302770698 1035834570 911426069 708473429 600658427 657175767 627383952 324322394 129396290 912627381 999426951 1046982988 540971186 410097875 210617334 17395439 1013259477 751615169 897719217 929071496 656196635 27097361 800276613 152707527 1027794088 91896842 240225396 288500055 456298322 1034075933 925699348 326919637 283618902 307764432 216898896 640316832 485543341 518702898 634423583 1054951240 460190398 584459055 387211656 100567627 723162636 783792621 1033255376 471487601 913971433 580844202 479552745 281655411 154315347 953284150 676641777 1006908553 427623661 626646397 381393246 953724212 455725801 354585586 575307913 513192346 183895163 733301296 1062813709 443413157 810800560 590081584 1034504343 6571384 572673002 977036261 492596950 665183056 157884202 589053917 549703972 387696565 694813035 127212740 475183348 194126251 429162066 77788983 673036678 819498883 342858371 95265764 583473691 148639280 955343951 478546914 653275005 687475437 270282440 434314847 125755306 927420911 662528012 851583957 442251721 632984319 680619819 278020232 218621345 890869261 356900404 587058105 634158708 73015005 101414326 739982497 77715833 365882512 290326832 100392260 772277325 598611061 261294695 1035562663 215204047 639070438 1073652319 400602357 930080151 926123243 543438946 697639893 612671276 796071601 450235349 340252991 978113355 465764017 693823411 442472385 111934293 794381667 574858665 317324895 361494771 996336328 914996530 1038646604 887041128 608223225 1071597592 391578231 777964773 814704105 538299058 482639112 174556585 655700085 772875760 242760632 528199125 153907286 978019092 200916622 956917527 233563803 508760036 845213643 510846395 138266627 223149611 257861094 795866930 106261118 641180294 989328884 400983263 481792575 583806723 1050140267 846161417 502850513 807339125 637625629 260257571 1034618786 732446545 506778836 116716431 185240921 468787431 737838336 422323552 900584727 292091450 200306994 119157240 585444244 162385983 115894194 1046552468 375808493 911212541 876962641 607006708 258324723 929032190 282108187 229728928 29308272 519973201 1051559202 1022782760 559240114 172164592 36737813 907059614 341735744 717170333 926453412 490406210 474344183 324444161 60469959 214278567 813895677 989913383 833407403 841233531 1042913919 328758525 693666184 772302838 875055364 479656015 467460683 827798173 235674841 709608653 498728488 914379374 185262384 224628489 682444021 335466814 396752018 364604738 596330672 821986208 606722507 607653441 897532138 789517419 941184665 1018859196 338909021 665572017 927698793 657072446 315504558 91759994 300993124 789214932 119956355 925062161 142533218 529764759 209950238 26204923 952337573 1042282185 1017905112 612441477 664388580 199771243 837590634 219025388 190244611 794299251 405874399 183316286 950616711 958848560 224155836 31893413 256609728 871334283 806268795 572237525 757228942 291265015 945591967 936518552 143777023 671871561 426311623 392427691 945193375 945390804 791113095 152098842 962268594 918090735 119561232 810053394 766275687 758187303 696721361 131189134 165861406 759501729 66729905 271358251 573637542 105436896 32532413 924528581 52577164 475844563 159222317 163734338 624379647 642680472 1023334067 522012395 563464543 818980469 817740150 986535776 695905844 327575170 1055921817 1010485677 850265739 273759294 7307393 655958629 357041389 736125759 558315162 359163844 840817736 398119897 747974703 895627636 13192943 56759926 542354021 96476080 870197785 669313471 634839866 861653410 961510779 506184972 861566723 526190250 267677347 731255438 712333155 246496530 449977512 846958386 985405632 254682130 742978687 719068802 169786813 115859841 974045317 1019901262 439569423 1048899936 990107942 949087302 473172359 728900776 164815450 824807815 146950920 512152282 590149724 343789667 363465818 547673948 807933975 665302192 930985474 1007559146 790379015 700029590 847168636 366236450 395048976 540531883 311961571 704490035 50079461 1056667837 754382972 821071058 609054694 539556001 778197460 770906864 615588585 480984364 59990396 917978665 797032839 522328003 2628825 114382255 997497937 263217730 441015656 699366752 426623432 226307749 171975261 907000101 680520155 462153044 614186353 246490602 236858772 496059728 703933830 929614821 405958597 403888720 908692002 209622291 544542193 584025005 298194218 43549287 59596322 694397816 1055254773 812322976 891202340 912376052 1044727859 996674513 956223065 574760826 508761969 786971143 753767420 461404354 183177568 784512217 680618042 649159858 514775492 295083120 896872534 429058902 164552149 677559841 687548787 129134130 764619462 422449380 312520418 998176857 239081324 284080648 2636521 530016165 603841495 935491992 830885369 103571460 520899562 445809113 1025779267 435871303 993665509 738208201 277409192 1063141267 600473425 341412686 238661439 381991204 54864059 298870760 217924700 622693581 107315889 526532681 132301465 352128359 521609169 335050203 252211318 658584589 957219950 643474558 561596205 280858306 145891104 479851030 922601606 971431820 986284237 86509479 438519848 2264228 710216323 842237154 185285319 749336289 639620326 398064356 380345192 920440334 219642552 89775547 631153667 406656271 526322459 881198425 241563370 192851208 616565589 1063293241 860285879 603138816 42584055 695561423 748183485 1007761793 731905788 377586178 1070156743 635069750 300421061 623378418 682529203 601717773 829322333 68530358 617385310 131128153 860733349 152056469 175626466 385530338 481009370 899417627 332718923 722963882 1025315362 941863757 555648463 632209427 265015115 107099404 656364792 700775633 731903882 673050225 392079660 120574984 141960509 841711861 917953059 296455228 809180756 609775667 46375383 317882733 320539641 14193420 678692577 828155095 739803906 809538043 80440888 676258630 691067202 214429576 912295881 913581781 696029000 755056910 536157850 613799968 63572592 149955840 940743009 1033132394 437050638 188879390 902383824 591484840 1004826084 969628737 1032247705 270008453 399455380 300584862 152280843 595413817 322989304 701502875 834781285 281728276 769523764 59139140 576110110 44060500 668251325 773436530 1021622524 239317779 586249008 734924353 959452549 868473929 214840774 784325899 339742567 170131464 751430780 151520938 923423725 411618688 217235046 964431501 64107319 606851910 1031904119 756794139 874898302 944173959 97983750 851713865 52596434 663590368 329079222 365850026 1039640123 386892981 450676213 970472494 157157949 554451692 322139498 323580444 82643152 202582453 133107915 183741570 1049943462 444033380 247692683 503694122 644275949 511800479 697078519 252055562 51509188 70748398 394162227 395993903 648900080 521270276 232072470 971780822 419791666 1071883643 1034624049 885319380 200566656 722997359 643430189 1056442166 676815458 931761818 129190817 596777260 347751037 139651501 674610265 8765187 777582091 145564149 895719192 59943651 177073301 512918375 504772682 573685197 212412313 364233424 282325422 116423480 100075288 306128969 3642296 316859801 909173007 831199483 1012916766 685252987 911559818 672216250 516451592 974117850 155320121 821968450 570124471 534122437 824699050 40162704 795046411 224107534 206123023 300536109 856242895 346480530 686939992 823735803 759878519 233912549 534481294 551828547 657233835 127392569 660345266 821501827 868743375 758867241 1045676368 948786326 599049609 253632323 995534303 268157920 881579005 478703053 395512524 1040686280 652943256 672613264 620119245 791798180 366537256 650211632 814280088 828282570 644934217 336972503 188203715 731193495 695538723 829721060 34281877 746662560 741846672 886035022 799672836 480040424 715015860 354807033 804758351 487312255 239501503 1067190942 516378841 907886674 337101437 405306032 733507579 319516270 405847946 195922159 622758914 754058090 524636339 1013090700 437286943 113577744 747512607 765129945 1043554612 925016094 639065488 610517989 638339502 497661730 1063792545 776911768 886608549 914239489 628214936 800746512 988932599 888402420 646995621 377434196 510446144 264338138 1000167693 559739193 813515909 231632785 909697404 37946204 308774878 973841976 621910239 475850110 71381285 814633252 497956712 583415872 920727437 394631706 19372961 534419516 295123210 710559387 80322334 392526294 159854982 240265988 461186765 734478945 370393637 105054 838002681 782678815 374747745 523404067 1022505892 296800668 938072127 190026075 438584377 753228575 400951106 694883828 776164217 182732782 276068919 766136159 803984695 824809911 271610096 451399258 302981953 751793211 383049424 756561408 83554762 953461835 963374185 658867479 125534262 1058278507 422876401 675687965 212524800 55844898 824627774 970647310 640752792 203878189 160453621 1042274877 214381725 200283339 146211931 220066539 844084418 915928625 758570484 692178366 922306032 857620456 127838423 720315095 433076339 971830865 1060398011 844342509 893550725 1061679339 1059233022 758935464 723802720 588450238 647161886 485644645 663850284 1038227634 415425953 531617961 317405437 23691297 1018637256 13171790 734344133 513156299 749184923 297959841 803674488 655695239 433534558 380368266 529449381 752300743 327584090 844845082 554109103 1052105020 57486363 1063904608 529418413 381602972 178558774 776324839 1067109618 987317031 6063318 958000761 162928977 955913902 796362508 973919791 594701617 75974587 562938180 207320910 357204298 238467860 784644572 225164202 234307524 1027945753 207005355 330111694 472501926 792712815 425241347 826130110 175627757 706308789 183316245 95132861 1014328039 542247772 15687446 730509229 373918447 983650658 545096544 839729354 169947122 30245090 709624591 159460835 672921318 581295037 821211415 1040372791 808121237 165572730 196021731 447330031 368332304 670206682 1071673473 731639888 858827666 716030606 1003471419 515986842 931715711 137934156 228759198 370622206 42907108 24068344 4692873 53445049 258856904 1068178773 76254385 21309763 188526893 338436648 137473840 390988696 603230094 182005481 1071456998 92071083 227885842 750998318 696084495 124631253 328481819 177195688 600672329 308651063 839039586 613709646 216259525 300739860 63372359 500204325 757315759 41981047 37878841 410698526 205206981 526152462 1045030094 911737213 933104220 270569144 120789126 965955823 234875780 263460722 490285671 659814492 604387918 971833082 261612436 840004410 457396677 1014312272 485328960 1009099767 989909989 137023639 408928895 294758095 171713395 626703886 661964365 727123659 74794894 1066389894 46215973 757179857 810798689 200529156 513560300 561160781 1052929439 769160585 133814382 652624970 803322948 697201682 638529880 994592549 451639283 951968804 474386980 223892194 457696713 384134009 641203047 1043697685 103393589 895763053 970339252 594886904 80478715 623156881 929195069 657675399 150687014 609470501 726297014 25388193 583570715 44525740 720082321 87478537 905348794 628451481 373527911 496086411 440634028 272978653 807601403 989197862 69494452 264204991 168196683 634015334 382399060 46719739 446637798 588871797 465172080 1025096164 1060788276 342865144 386849063 107623059 1018137322 690540699 49552742 837649578 604577424 539614604 726189525 339342499 54038054 459612469 592684445 1070427214 339326402 21327680 20231504 835292460 89055233 1047772563 668079710 845162656 294756715 404353233 669167842 679132689 58786299 242184811 413675390 1008817723 531066414 484466786 237851687 980801031 506557962 721209494 507597468 509503341 418300582 274234237 702324516 270635828 65298170 246447264 624935639 190448250 968455318 357623176 699354420 784573681 686269466 159093895 945554921 512338128 978681936 280497877 599251144 889276729 95277065 270116653 955128013 553749792 46628545 344103665 301685605 86240622 303675082 839996702 594302895 463474250 911482662 500459055 709289418 568012994 190702519 392805160 797466109 501689842 975782713 858165163 840894253 793294088 709027340 19980567 141950133 81993655 655929120 1018180580 676187964 972992783 11354313 119019440 445257717 895421224 974089314 1061768510 378920697 153924304 154958406 371895640 976345858 720515000 369069066 752044849 79469446 570241097 946153302 252903388 207645229 605715363 142538405 452405711 122479679 612451356 167854330 487218978 999703199 413361 759299069 23443615 1007409685 739672116 129271156 285000997 795204436 736749509 813451892 861541705 536354734 611386920 2017732 519593457 56848822 295814712 1065192903 97292370 381600278 267729230 624647022 714400789 96158149 29393819 23585204 547428006 100375421 100902197 980110440 882519164 570583593 635218709 312128274 846402984 529756620 801490075 236459654 728012017 917789923 54689809 276379566 627565741 573960921 956382121 666051691 997117040 63003039 625838674 1043866599 104361178 933724102 48807815 127402546 814520949 552289068 153959037 710541442 414806009 779681532 960193494 47604625 23343399 3793614 11606273 50091278 313889161 1058638893 1021256705 1033436854 963476394 88707041 687952405 352439048 960809776 121012701 19921381 177030354 374542661 21809207 345630695 803882085 1017559000 269121183 343877713 573651964 88976740 213804501 558448427 209173080 460720707 123370019 1022668303 180541421 875866746 153514027 199425750 171984457 552976544 154008680 59869670 688487862 898578934 577297309 861835330 663700180 377756352 58151794 996876063 138408546 684227122 1064505337 246387004 704390612 971394241 726161317 26542620 1043366790 366240206 48779004 791008599 538742006 458381327 212946541 280205730 908278069 376562093 626948454 328454084 447493032 451365953 769008002 440753841 625318373 970538092 632675704 113738362 460550238 1032326385 1014610226 120628566 570588335 394024919 424987963 331320090 85055413 999660627 482868653 1628502 197475512 375973412 667609474 791146816 654047257 1000526629 667945073 511678506 1070916501 1018003903 970535383 160510425 612651620 484696675 374599075 367991941 568921867 904398086 274472002 696315095 886829793 297066061 911766380 325324549 913397570 479844997 170119416 592122383 878844048 586658137 546052506 1050661863 245453290 391254946 194414595 121114338 345179001 554921751 825006153 609377951 1034597910 984849154 1014004706 439790716 768085262 61699562 19329659 376743403 812422204 676196089 947737915 590455758 364893068 1021193933 260720250 730812903 237493136 188576750 815504124 735320229 19877677 443927488 316011516 633669305 991817126 609832693 567190244 500140831 368555341 9909578 151231546 315992027 1068432732 813968442 940102442 880801297 539340046 102108492 1006675114 407934946 451404661 948635127 1069951901 136589842 729377773 461985925 331222437 262100464 355101229 650794754 2950552 618762465 688257293 540887870 643813136 319977720 721415285 411073692 515594871 861837219 167604545 763597815 213567910 261952665 519950791 23864986 734439927 926231109 225581419 400729962 492794454 652777912 234002575 197478357 358491737 464748489 1051206139 137305212 915007455 260262536 81107907 710830361 816110877 527484879 121303148 316847774 135368625 356670515 1029446345 410199165 872691593 474105521 305509758 1025630596 220873016 453783542 941155510 968216596 114629395 510102133 238502734 226567483 1047166340 920793613 110360447 505871007 711121090 479581123 364715049 879084400 161885613 318440853 150711408 296243016 927817745 554380027 277451380 1033824264 123401663 322500355 152032705 150184660 265213629 893633587 246820675 277308022 707106982 23931481 405526750 579143798 129293218 235039338 1065713743 462518537 32051199 854502632 922669816 347463966 597279737 397149683 409088757 102020600 600049216 1042361641 907100056 354087722 422530800 513494661 274373448 7504463 508534798 91489160 376290645 279312835 440943289 150901905 714241453 483966952 949869969 129631189 1011527088 524738391 533922289 304061639 991459667 679601029 815676322 740763380 418740528 361839964 688104964 603252134 620642927 8574939 836489228 514681403 885561177 490821867 957876807 255641471 307145981 235390331 229111996 899820927 937730702 81192727 773019613 234158491 442809607 819795971 10344859 1004297166 414444802 625977983 647045310 484253174 142765205 1037726475 380560063 455413415 777803153 998611261 625442854 115356234 980999475 974271021 620809152 1065969628 652666756 477799228 626823219 361193382 779975987 1060373975 919652590 777576451 76684933 935385604 329124800 3239005 632229658 464112224 1042209326 93813875 6125884 829384072 903133335 6158349 218825022 1024643069 287389671 74617020 477025133 677592487 347705698 418842799 927106111 112652436 909697971 427232330 1041226893 285377327 323315701 840595655 669138998 67767392 659989633 304566834 375780585 1014552469 160454384 266082466 493966266 533045944 76431587 313481043 780683952 38274179 404254296 652497622 640168109 722133888 523796748 280879101 38116624 423996142 1032358873 130742660 956402270 176517683 704783521 717315276 452340049 203824613 624519228 118987786 116357841 823364393 984368480 969501497 280163251 264874808 1039129053 581785011 341077945 183283812 1029065 871294757 629695776 206039061 32196286 146571687 166053528 965517793 177089835 878505879 317270648 656676137 909953341 216925635 282966614 738650401 251808435 898764382 442259391 502131962 1025843195 808142331 81604961 309475195 407474199 128661528 880560896 402030391 791284200 491630368 737320988 71189701 882663952 733205725 616912613 178515205 730379231 232713758 763641563 267733706 262783218 459304509 766911936 798754927 252920527 189123134 252216588 669135646 1045564637 502430355 335686732 862081947 846783707 93206234 130639099 795984337 895303353 870014029 802995474 758514668 204740649 752302356 859634936 115345730 148449544 539333940 446840537 1046727027 733344752 931001861 438179543 414763672 990437076 121934924 547829248 955752246 159339576 111605122 808617793 488222854 199298320 96917423 918313372 944926504 226716280 622341496 97395762 748544718 709998555 68393881 697211861 968048522 403625558 790401041 395602839 863183162 310351952 195114983 199484825 785487834 1008732530 1070570778 834733833 575448907 419492408 919769745 610688679 819716076 237734912 801663796 279897506 56011636 159002232 776457453 273088629 332768747 623697326 258300881 687952303 159754119 1372799 10741061 59136048 799387095 71595369 393593786 702425953 476979660 808261026 1014153942 321015957 597020140 93958831 612402870 433107304 1032999960 698515890 822630514 451611387 84907965 63835613 572710801 1009940 709026305 785015948 564585689 27852161 1068894258 735365555 244493309 863331772 861914938 232072472 445873204 280912008 889545501 11314995 454497635 2058510 896668259 856711743 458636341 247476605 680102254 683865948 383829725 598043130 1014046546 48472491 901372752 683293151 66246982 405539902 540966879 518141040 168912619 850815095 901364216 1024724355 751756152 756694322 1057292103 63044455 398172844 462688017 1071626699 476131852 468608346 612872952 132911137 589968299 539309239 437835127 673677692 374082543 1064546779 556749411 176295910 1012474045 303701679 164770951 993370912 1014968390 833183601 974106904 54205797 389397899 150411637 1066094440 109627516 543192837 965196866 576939088 61060318 530982901 770606286 916094368 230351262 432182007 769936299 1059942056 806782638 1053922750 146839726 507271186 557703385 713518662 295911362 725171538 768176845 67182414 8670649 1032585564 922338551 790181679 643007345 21715532 783917214 24897699 375903459 508797111 607811523 849253678 51505286 212172886 897460315 391231497 709045587 946107963 367652532 242806643 1037842849 514276673 334768697 645833893 369070232 589071444 212858879 469206645 886658609 444980363 304844539 247315996 163724772 942623084 351829137 374026392 886730781 687932122 654588276 604114631 137117874 529463225 435134681 791449429 903644964 647041483 53186085 749638262 304337284 626225039 406278956 1072703422 100046313 107853815 211448800 776418251 935153389 647011002 41585134 227057852 508221995 827425731 394527416 199718171 516845970 284324380 793224087 78197571 434917127 385853238 653886980 721659501 1056968725 758576620 628026374 309000448 254324448 638288338 188719630 54016125 379442628 433145031 716468244 633409269 183299758 138796021 363807540 413542285 830834715 811135068 100357443 730169782 769057442 664235764 625272532 795520772 558480870 987916897 449920252 147443331 943969097 377822722 539757531 29051167 860604793 1031243326 651076532 707027199 908130707 716983547 678203969 651121261 386868255 287042615 600333950 237026121 716559477 703743954 176462899 731685380 1050845790 989860183 984188400 587408293 847661157 48123989 333026138 38435941 365928318 332884981 48065289 433443818 651945749 562465143 693186383 384217074 1052070814 747267038 55189692 259735648 821170086 694458446 523277478 37313381 482469569 602015800 702316434 699294814 25483848 133093476 699756401 579473549 103135236 833391844 337478365 106806768 830907411 366126360 953852719 714075143 772723948 886637103 344193076 801199234 181382782 533263364 364049776 515222110 934288863 960455984 262294828 231362927 953765693 170502104 530763109 613497910 475807473 397754408 411329599 100664672 900765215 720811057 609880632 159502040 1011311604 511025347 1034906721 1043365015 568702466 525884856 1066568715 412128594 1005265418 894206390 20326969 664883873 1002131979 562873646 635850715 362035720 588515943 631224388 100185394 111337166 630175976 946073410 877557597 605812344 719310944 111319654 655557845 161680180 859469463 560653499 144507667 105611606 512759159 919908521 902288220 683262051 28509266 129939045 50581342 391093918 177596431 580462333 368343234 573075972 682590449 760449982 320157051 443424615 998484939 65031067 568169168 840299958 917378287 226188150 463590294 519011901 32977106 132325525 943386706 1025272735 41461521 34476067 709799768 543505297 606733752 106138402 31084032 212108170 606247636 544083998 451763900 81998356 663605079 15967013 983858301 716626396 803393944 95072386 819774681 600651399 44066041 425856194 528603510 837297024 726091147 78745308 570389067 432850112 503563597 410732895 1021974467 327859888 188326711 95517840 828216733 252519114 747352113 750203969 261729513 676800650 825829442 167450676 978250346 404118435 85611273 548251483 865275071 226985537 1043958226 430554925 839061844 426259838 584600033 219015173 347725572 957369127 71407694 245843606 318505759 231001893 531722534 162936235 387158900 459243272 434776128 600111025 572610793 517227222 335726838 796458670 799052338 248438264 49173537 1054528250 395135888 427659751 42539822 378755723 192768417 297944894 1040666841 923131377 67277545 403096191 60016305 499993210 967199919 863381983 903756711 373841288 227510889 355869224 232712918 805294965 33891412 24999196 329530798 625123831 349787954 785310647 498993133 501032172 812172878 901629196 965137446 180284325 706942506 561555289 862579424 957545685 1019044402 649218294 622739741 771012649 175531089 266375389 367151564 78638734 1011055760 487660863 1021005013 707910677 822734717 289316406 619427118 773513509 189672154 711034660 172885598 860622909 395161305 226203740 616107969 704620063 899715457 176107364 406202939 35057578 258643976 780488311 229745111 220614293 239772891 485745492 91656565 774939478 134944372 237229080 314029198 619189209 933856792 582902798 291460474 1057915619 191045511 956329464 481312650 240502074 371802089 357573362 776413197 826274605 566887410 687248668 521024708 747212705 539354661 562911542 66661321 695245310 677642587 192448836 955034469 460386488 875395634 169640210 643107937 330477297 101278409 73426184 627231644 84110474 876936676 829567560 544121558 162765524 1015361992 743026208 581991208 124591767 546382716 107128297 730760890 1015592244 914414731 466286808 213041483 394566688 408976440 153347946 542480475 980678735 614911682 19407410 266617846 844617844 751049310 18963376 754930820 370745721 333755982 102078770 383740560 492388932 806920400 944542253 686821315 221122371 613999661 730822876 431738383 782553945 579852563 212644177 20096512 446546078 893846061 358279481 928120258 932994163 1022450413 875021159 1047120578 790799811 927584145 949498734 543058055 407983165 234389755 167164024 332634759 439112182 911179945 483152512 380903794 775088071 346811852 885014804 141464988 385824127 992446349 230455467 212082071 331877734 686189685 738768418 228196818 63388011 894728385 678444645 1031311571 943844164 893665848 753898229 923666829 251593364 138259301 432726461 910555350 645680256 719508052 338627419 965446974 535939238 813984216 606125101 40990559 209559420 23049055 165090996 125821213 426765256 118986792 686216331 575837782 643292543 894626338 911159046 834257773 820002644 190024384 208739598 252033372 667036665 91646139 903484463 119604283 979787901 579061625 256613548 234906568 367759107 16116918 8795027 883658649 851144467 674253556 817077179 690800148 124723026 747434025 4284817 579545101 774631838 29282692 475291536 723663737 1059002240 801104130 401503173 966124503 402092930 306639398 278407540 762737349 865957082 40273340 565259915 976510590 437630386 564457649 831678656 541721984 223919768 420820712 619310066 914095283 814710739 770019283 613144631 556137431 591951588 420023641 161894590 679690227 869361911 803125579 742095595 818681251 970431934 395171446 877538232 400948967 222949358 172116543 355671589 496613869 34284821 909351730 159913468 498594315 142064829 925316924 456958019 672191544 771000453 674412987 822319762 531802833 343483762 293580594 730113524 552159342 757655111 675333089 406233563 743108701 1055490693 1047492397 2060774 878135370 558519963 1047483733 94514636 171042364 826763162 219713534 300493865 242675518 160097764 489317277 521741714 631673653 832963765 1013916338 825594249 161960072 927765764 384934704 202319926 790756056 42922456 165140829 246442121 694900540 537950567 593386449 215723281 604700319 241047384 205345504 250070764 410772597 280513872 65158479 236782806 41917886 1060472029 484866555 937792478 43002365 10516272 269238788 998006225 610712301 673812863 762448082 310542378 966877428 306633928 547235438 247203066 912483341 314586284 884810136 214990956 164959559 634789432 341683741 693521918 563236861 1060078467 172900414 668467034 531647910 933484706 810237305 652545844 14928876 10063963 241050827 65238062 442531745 483995044 411275906 152329140 853045320 187769423 1061842119 135100202 546358022 409256500 443380065 715301936 960322758 476772576 1057446212 87771920 694827282 491295316 32066866 580122754 452173119 181774755 404492108 179260134 1052091939 845182906 757256868 315776900 735200977 1024788915 732607056 237395162 409165329 733814378 239362705 555002789 56513449 496374305 486035821 373458480 824531064 313258228 300347318 992707265 835347642 721555829 69664298 614085843 969146067 981847431 733410074 219200167 567977060 46073379 512132393 725216346 396156884 371764872 666727138 38775152 83202140 139838716 101887076 97046890 612885601 679902320 396673142 276576591 190994920 971063673 79272624 948982301 51871297 903699582 256599766 758697074 334210348 1027711751 35421266 299112768 901746871 318762216 52292961 62812667 70472851 451811375 771943697 555114879 5749741 771891649 40659847 730678070 173735466 920621156 285276391 622305422 61412474 32749051 1059010953 94147114 1026798072 792862915 533875400 879404408 748176259 826980311 297504744 917281264 441345819 984726662 876679060 690676007 520080802 232734986 113037877 430437546 872139983 527015526 368080482 647316316 660372214 161861053 786100421 852025904 581086885 516129302 804265171 125139874 897944654 799342354 326636646 633589788 716387540 490523268 115506825 235680684 456430584 821623859 373174413 643875210 499146730 285263631 458572101 201093867 1069186588 951550230 1044933507 1016872750 821740980 967094087 328419462 356742168 475805223 21367128 681783516 695604319 543977957 300337512 806894412 54686853 514429360 990482009 1036228602 898957574 158286825 726111113 123969103 259897302 825571893 135251876 816299441 1008782670 141848552 708750502 967128744 946666850 527387561 547578123 764960866 882607806 697420583 386811588 545933777 525493105 136118564 800521816 1005816579 985785513 82378722 777040950 157022847 431488260 221511267 105323784 497479121 290777587 994060800 441943514 296155742 477197244 78975226 991647556 693023394 946344792 476020400 473105138 165730249 460162005 194788957 630731030 278080561 976715211 634190937 679049338 741840439 445299580 333431559 857894234 1004521370 773789123 174696273 362655686 875783761 301551411 591464828 335301766 380963754 1002721573 747881561 287642379 383201134 720347746 970217847 66923650 472486300 926982829 165665928 573802262 850732454 1071066775 343186527 730004458 324863678 561703449 128261147 692109603 396510528 213163640 668061221 619782904 466351112 865429909 178034093 374034378 816456213 364412705 789583028 259785494 225623004 970119477 610088863 715369773 217030523 117927439 652871657 419457627 818384898 965339858 970461769 973983054 778564240 627217571 305416341 441908430 343573690 187909692 146063262 750353592 338089835 520804045 577326716 889681463 429335342 937693333 77372365 803197116 720887502 714061960 839256504 52060596 664568498 35822697 783962355 116787103 361603935 216695584 1011807507 857129247 944477157 774054922 403027725 830157543 946963585 427620270 477730875 223452871 477090451 399539797 509912683 403323485 828127210 246070394 198037739 31026995 423262754 920056953 98984293 502723434 1001267398 151163887 17872324 134830654 660397612 533590197 425522512 934929007 8114637 974739459 697368912 780403692 812698591 187060370 135408482 1009382462 436920443 796084197 223818622 1029147781 948495847 291726284 855276128 680018953 656065930 1002796589 1052015667 484835835 360368941 563747327 881152155 195260172 576770098 427055138 919219441 13027158 251913141 15659584 1058355554 388649062 893846196 723946611 555340059 456161905 319632036 418414119 347396217 857992813 109363684 201397915 82108118 731120903 620525256 671241639 1055960974 521414435 494880008 418009525 39120617 34597476 48938860 788484898 818792453 65056311 275015266 912392167 125673269 717786081 19578962 532623624 1041009468 390094029 578908860 283968667 624552062 192515299 1010336088 863242209 644475249 101296292 771417199 828740759 846434159 488491326 486574126 439991888 630127925 777542115 476869973 774960791 270127399 204750654 953480946 37479814 679152501 199080647 684225504 1070481782 916954750 473897573 902615352 1018654897 635475377 441858447 222642709 573198695 35815981 764042563 912317146 512913275 289749628 301828980 770944768 553975136 618206752 599645640 219981036 938073349 759694517 507109646 1072682026 46358137 305260117 872148610 908613134 186541771 11145269 497003174 220726988 1027488871 599443804 614611409 475045481 223406729 298976230 717591328 1067299690 691005237 783609018 399362467 1013188248 670726429 1030577362 1039618257 816621695 459721240 255830595 440992362 203976884 141446640 947278181 889834485 1051114865 406796793 513529769 820441252 567737787 634076920 507337445 988561247 674980309 401187743 215871801 786902865 349343739 718718658 334727501 1047951562 986333571 503027740 506295677 830584358 289546979 446099983 856551893 995435741 738845963 242822493 662845811 469630004 39461388 265668278 834267902 916921123 846033689 124928996 837697082 753863247 979454337 856949943 141664752 888018295 601143411 326625480 1064986254 934646339 535608457 938097448 259823868 406302292 409893736 476686829 326703449 435717368 592007645 1013218020 289618148 889195250 352815173 437671918 474223425 715534649 898139438 10519036 777963876 805281357 782606414 288403666 465244191 326149066 384307281 730872928 61007003 708210727 483039558 284306504 970706823 1007021254 196105640 965483828 745877420 947675279 33560438 583138090 914221672 1044125001 552121535 836502649 761883810 963738753 879321674 475861056 406915063 1045859911 1063536618 41411240 598107413 248299920 310949092 17889992 6859352 970691164 375707869 15299182 382021022 918531160 85189695 874254940 945487457 1014727253 306950604 329683252 1051236858 67375843 869250048 710418292 121335773 74536306 850976220 375151162 1043058685 578197899 534414556 114387806 193636537 797254135 834188146 570814198 965274680 677710443 235987204 1024223853 631434880 759918851 257327090 155065753 1014168277 654479471 700741666 870958917 134187700 213006066 502393316 561410875 247289560 834676350 690029704 820363969 825601525 866171921 1017756414 585002015 608964720 358354863 470328149 718246068 1027454720 505864123 391516353 400467835 1016666478 1061781796 818590026 693102278 651262631 347713503 88004714 61883307 605170088 63347204 476565566 792032368 17626064 862896525 335890389 395011798 35631140 924225371 210794172 211238971 247821432 23674584 1066270598 719657484 385398934 208696145 724593800 345057295 1002684331 198940170 687619806 200909639 635949004 659008593 395698600 117891150 424873435 303074464 592785179 818727086 142794148 699931513 175233128 306991567 445857460 75507005 97793772 925472321 793626126 56971984 22307488 276912025 871319771 553465622 671719071 565477290 627968365 609832519 203022507 356823160 938259727 103578930 985710825 727057121 608133671 280150047 799004978 980447142 830920000 913043842 206100586 318172219 662664713 643850766 664371412 1006797462 554659262 87123974 731800666 231019744 373400322 12400120 900204258 536658338 1024083975 178517799 526357597 293796490 209704578 621211059 926119891 354383385 706196286 735702264 728843195 213805558 862180008 840956609 705727430 879265464 650802920 845204155 575821537 577828219 183543183 242725300 651514451 851283245 680158208 1016048938 233779997 986199800 696147487 386596895 311147550 411460834 633396179 738468569 671262436 592809252 572541421 781018889 310975248 822693491 639098712 169970160 588817931 170451604 173802930 128547422 921949967 727593628 397976362 351321162 499330725 506381909 851775856 40095737 234160323 331203685 931624582 811918373 546672455 131247856 991249351 113513894 527678991 88682843 719266531 301199026 466454282 252497883 654127505 15349018 519069912 183295292 642252129 34561236 470404612 350051675 422748272 914733675 973242787 193568592 795896412 1017471363 402979324 854994951 59240653 83365978 658496615 735800754 1053796295 68571388 443636235 833897707 408461004 752274146 321591111 73214948 986699689 622537738 958913941 153586982 100633296 516333045 77820257 540049646 724741780 736006115 851436756 839998933 525287202 645527995 391949490 1071695227 702108599 765467810 250378260 37744534 156100061 918266467 730474993 502063823 644705614 174281939 672928857 197921887 352917694 821288795 1055768656 47964011 875228847 791788250 763222949 205201971 636441024 76163962 86053638 789867522 713918309 1050677470 366858472 576684086 979682618 801415338 342022394 256263034 433306814 656281510 816420099 507726988 1072896418 88734688 997079119 609910059 232267364 760450871 219292152 440430538 608272637 75472077 434271894 551973456 989300961 883352238 530180672 732804263 38274348 853484685 75956881 1018964399 166450497 523449848 270308044 719562407 545553165 552461050 210006797 271049895 876488096 1071145458 488771727 292966029 160583092 1017736034 874654810 993985557 750760277 24351578 589962892 612949737 1059121276 433864125 872038864 479661513 832929499 553755232 1045413102 29255240 1030098869 1022087356 360931794 989284967 564371170 321157038 835344921 651671277 895480559 402811141 15774567 484612384 80723421 168250335 238910788 971705565 905139498 72472674 264843918 528250603 784932863 65772622 28078205 520018921 198893457 930462190 424357721 85311723 776624263 159895997 10312910 583239065 151010806 365906607 173869720 586969776 250523909 620901264 405006983 950530611 135016143 1045237519 521468508 908252018 283990137 557434831 250314565 925205090 308563778 565312293 732357136 692813588 835524304 249366945 411154808 878260761 291944007 558187777 459773437 194647307 534733849 1068366172 100194371 289243971 430273841 467584086 40926498 775747433 591519369 175880294 458023871 863731010 565947088 412420888 688203554 487608029 16906120 120887565 424521991 192031424 938963451 908072255 831126643 364859739 471949192 849274258 339026708 998844860 412752395 7074579 268809936 1030709013 923256999 203326797 66442218 438514869 69048988 316184432 256764308 631017806 518792818 316995731 167155673 783874673 498741463 960558408 122823834 929671740 488852910 155148103 482993516 837079004 129058727 623032351 73523909 519380858 1022218833 162657841 558846250 475413800 323245088 921636441 130447786 632173377 504271885 186239258 279762508 922488400 171182747 514589148 353723416 299866947 1061355777 807485476 796179409 384089541 684387273 578792452 681256177 613434501 551820140 298737319 745843329 334104909 479193166 751911143 589028639 886512978 592184525 847725429 59156248 785822195 259316628 368760826 713985145 1007208624 488525676 36203411 39446109 598385696 3261160 464049619 937473857 130823601 862754253 909249564 992133075 181925336 1051105367 390838329 988374964 973435849 1037194791 155228946 293151940 759443277 803742045 852939446 147881736 287322242 948215229 242975701 4355290 1027582929 505106620 580390916 355048345 180168757 395336794 517204943 141202660 625133307 558231060 679311734 225359685 89882319 141339205 267283246 1066135419 293493244 891563220 690452346 901841836 893606439 651601767 590587865 658334806 104214507 619343898 134752401 103018811 479139034 621330253 480529524 532695737 853262756 804297103 594007084 198741875 95214285 14724696 769534885 474027493 320719313 367243358 1062006269 486201955 820435215 14586742 592817630 564737675 271785799 54786539 616117676 170347176 1072838647 5222261 955297762 138932615 572183104 638308101 956189236 951746140 877087567 348802460 831494011 899492249 860794295 495820908 934841353 170817216 933917415 955542693 979468054 831674248 793281484 876322005 385977139 61834456 832729636 573730755 131117945 296331966 362910892 38237291 841512702 506432588 400618237 1003786762 944630920 143250383 385648963 396272744 743529555 576510455 333422255 248336737 805273101 977358780 330220228 746956870 472576369 672085544 365922110 721453957 566434196 466929728 739197640 1053258909 41322527 1015458978 183194777 726094981 1004094373 375986576 205979410 561193813 363631980 892244804 953098886 949309261 546483388 283353351 797750306 986525354 423333885 853148623 168752600 798946857 907663451 897157715 905594785 370640379 643292876 299635342 403574424 99970670 534658839 1054226514 775230237 332492923 421474345 111679784 159551006 812214113 94214764 629391528 918150044 958098523 944863650 89617556 114616560 170325917 644473662 690055352 340333333 620247576 414507832 760295872 51823065 198040461 335027675 15977149 872690701 996712668 1044374328 419991381 499242762 361957294 483633151 167102644 495095736 489726440 299305347 457212147 54214659 267941410 975417037 851202627 358442741 867859439 345472183 107781992 1007907369 463489120 531136639 480148206 212485323 274514167 453441597 67579169 255877712 418801106 988256592 226390214 682874218 251487177 185790761 840923140 85761929 301754027 693924104 383641387 287266812 177656101 75457244 715679372 766663056 617771553 972526634 984104285 221850582 51536416 804955053 264007260 320418104 529668745 672853542 1030972917 959205907 710744415 643046281 945934210 34250285 1047876848 752275317 975687195 908612848 183325163 303673604 745696381 717589545 603067696 200634290 79386311 752908397 315469137 731403425 352547938 796985355 735586888 149964300 463127461 234949061 883663460 914973391 560062869 578212818 401095724 95009073 160517380 59247534 248695496 600367718 416676798 710941799 403528855 419695393 109637975 976238329 742664815 129897527 23133657 264031587 787184702 657227268 988279436 966511245 1070675010 793237637 1064634938 916588447 780406681 497659478 1022306666 583160963 221417131 689696713 978256267 523805318 186727558 505869704 78948254 231136725 413406098 298447933 858998288 294912942 541071271 667942279 36319739 297635363 583574352 168431477 481943583 188376995 780285630 304565290 861668405 838028550 91115269 874598443 226597961 363589730 78840211 722328913 346074598 646921503 48758111 151769421 853100310 728233753 446425079 471931491 559193980 538508940 111084798 245526727 78326597 1054425169 13872152 22727159 652879092 539463413 644137212 24039078 410515353 523345019 463286411 217882506 131428007 708081902 295041393 480323913 198743293 767799670 819203913 279921811 172328067 557381893 224693971 634169997 411649610 136364972 81782244 924771638 747816484 965822891 562198762 811580942 995692580 32140415 79837819 329359852 408159638 660521331 242588272 74484707 646910767 369789998 53787395 632940832 302563511 28055439 604620806 641605363 383937250 336423908 241154542 613446891 984157826 763430071 1042829600 614071643 273684426 685387227 744663349 1028885704 749584626 914288580 600937486 652245343 812320252 892212460 267351125 464479362 796310419 566459583 571827999 280801391 116349618 38542514 82460365 330302271 231998707 244244484 772135475 1009299163 101515591 438084282 239113271 549184801 426940798 597813938 539916951 674857703 550465959 821178163 600453809 730295233 417186382 49067710 140567250 424900165 925817162 955257443 758846714 1000228480 974716489 166056736 1058949212 992691829 85011813 142917634 582307138 554544755 276245403 409327365 507567339 923200500 1063367244 1042180680 991090918 650049466 493295986 328498248 19327129 515499148 954806500 372354899 671023614 345740073 55035756 498731333 1059942522 788605506 878841951 780032290 643169114 689715848 376188890 248372336 482066686 256946665 749310828 1024355382 1050216843 3279464 862962288 799758943 91659689 666578155 996980086 652182609 982686601 212447841 398231677 511569296 978002361 339023499 587535377 191673357 217651853 298116298 904876752 231232829 106529043 985304729 301592949 184950242 1016161512 944683997 221122779 942779548 985823708 690670115 925514112 446994902 254004434 832693668 484522339 32403744 33136919 51699420 771922346 466519350 844702379 235882488 283160458 277665316 617288358 534158452 904098991 633297709 990715925 1016734688 749998977 936044898 209759587 536767985 437797395 119939342 700625267 210097465 88296455 501199821 636209554 423162366 873468054 281097060 849368335 563565740 900697690 132287445 703073266 591872281 217572733 204136756 760835983 563200513 62060923 536166932 251848614 328771888 632129232 97324854 850661031 818178906 995383305 381817358 771280598 757051421 1003422543 812731329 990379209 189306381 224237165 953712566 403717177 918410292 920961430 918223032 143693071 584018538 765314336 983872738 553818398 784878174 7100937 903810278 580027323 1015193253 103768515 57311150 369515752 82373957 793546959 694270023 1013046792 947322374 83160956 85126316 927415131 401005157 712047259 966056117 798235866 594131068 314385284 544663705 338705429 13779356 959141148 509982668 527810586 915032272 976667818 39098285 807559309 946175632 679424490 182403038 921182236 930353753 156868786 55938296 27879589 895012899 607906080 65613829 876806833 850903828 853897009 996286965 863971519 689876928 922032261 1048632017 635340810 606462784 1014120061 713533904 353310413 262863201 1026304610 339614316 444264063 164611847 125241554 975704076 375279687 222115159 173074774 355865089 428916866 200288893 470778659 646034314 380628181 503745434 322303450 269395970 518399757 248622687 726563115 977739424 479129733 111568285 778975568 446453760 958325278 176250925 145130917 437498844 11161542 920524868 926832399 268335695 521887155 47436841 1052620525 860124606 336951820 29529087 42695488 668909497 286333071 892352862 306678759 762822004 1071794887 515642934 491415150 553898690 136908851 206596560 623621484 839524930 297375028 732430795 657745997 916777976 624184696 8890164 42004666 131090934 913004102 436483554 58493257 1020820247 334759005 21107087 103063199 333108618 144400439 1045633092 1070555769 393823023 459038798 439824511 576439506 615220464 261663518 281418884 475063471 284925017 330912205 889302902 1035729559 58159793 396951144 1017326504 98766435 457926320 154998910 286440213 757321129 656723528 121301368 692847952 917118440 610308617 670234280 704873836 650523346 783295043 1054776504 32984758 1049024660 970824295 200899134 684246748 142988497 687746289 873140582 644054639 853329126 468191372 125436861 667103087 698920621 654250463 190276194 861507051 603295548 974221215 2583964 389598590 969469366 281154965 202711324 911489495 74016394 265061613 544104085 726696617 928923729 1025278092 497341241 984195381 317511209 73295176 756615762 222894230 440800928 502250685 153023950 732025649 471072162 126970633 475419633 106120364 1025801270 718666152 247435649 525622632 258491723 381245081 328617272 41745383 325243214 800223944 540516921 672104683 447522747 197019512 37528934 62987461 913065916 241765426 968512365 68889161 37300281 482962883 790426299 934638335 146938887 581476580 858400372 995782517 679835194 563036783 918514629 715611123 1065414547 310904784 128161642 860591264 384560678 76803858 42884733 216092505 752554341 968105968 682232405 645939440 943594333 67463182 208784398 485374169 199078992 21250180 58238450 281322868 888056547 728463770 34446556 321863152 895700626 631272599 253277924 811490530 366848127 916242690 105565034 131951317 489183288 301785662 48452578 32658679 1019568912 274454716 842222594 271766959 767706237 755247742 255255037 174606690 479863176 444382597 731089503 791061638 722325710 935526101 654557176 641997585 397894174 393817800 683916154 172159065 670835774 49738691 1039468655 1037538807 551026531 585501011 198352474 1021609866 968181398 951118425 1052483940 1056586149 1073395992 708305492 557859420 24442117 414906809 914837517 14807809 500095547 562889692 377701255 637889373 678324059 342876733 551496188 1014619803 838664616 217034315 209738835 477855571 81504924 972293163 947000696 64806267 877247684 318483379 44927524 1057096620 510468239 73556911 319163955 79699822 489528764 1028975054 255880164 269474956 218026149 914981306 937536316 513205317 1060370026 74580362 758273191 15565352 865473114 969055267 1023034163 881571738 747461433 654444857 922832936 417334176 184409759 1060495992 622633519 744002317 1312491 377494766 859128056 15598061 262208514 750768279 648681972 748505040 692320861 66025297 702399400 276085286 80234862 82313556 855243084 561288667 659024624 38458513 993703874 1012063474 1037003703 719426990 902484920 97610863 368545067 874950439 751977773 222796904 666557308 400674198 433174068 620789168 96806515 1026219085 989063068 69629380 770498723 603254762 293079269 639066218 493890302 163885920 651625198 871880430 999439230 1020572089 83175533 737742001 922198335 801801975 542540853 897388837 463991467 802684012 726702973 827431781 925784836 13829599 510454140 302151869 897049388 635306106 340431792 105547865 1048713671 786434810 61553028 894582714 321837319 521076700 514044654 94381500 23603194 528915183 722955973 140820593 653708584 395309325 530115406 785601970 268350948 43956517 475187732 515258089 73309115 805835706 535589455 650609093 5431248 380716935 11374781 981185479 761880794 288720827 189581890 658715890 320241764 268624398 662641816 218150218 711914563 223087758 471888073 244012656 183799502 848359402 548019259 606678159 477897474 532514500 88140272 766518395 121790251 358008367 141834865 646049904 255634145 538506075 549168505 596493145 74358204 352261269 813212632 105307559 254442087 516831101 436371282 344990290 730753595 97441245 426555276 701364476 992851200 325638835 510886907 622469500 385319173 1007648151 977581770 484512955 297544987 261138520 633066730 1042067333 852410019 80142147 632216137 267631905 722862325 949652763 439617740 146685313 291011834 387979459 743872298 892379545 410800638 267329404 924792359 624859306 1042153285 321264493 496221554 932512613 1049548256 393144731 616613604 894935926 700655967 1070844208 937009898 605074906 796068481 230891692 352382939 1001124721 995989098 470457589 848772869 225252700 922853000 502706445 258938199 972919590 481906909 643100559 43715207 564481145 302764360 151123225 669658211 868575357 1052708348 763986169 363573627 133322700 778049706 1008003943 430669200 511805944 860466544 378836933 763184495 185700668 800180684 599244970 108648939 792766632 23422410 486054107 459272012 531755321 445840390 173856374 44101768 877877454 64617887 964951564 918561497 1040136793 59969172 777945602 394129955 9774061 995892473 578266447 113636393 453899321 468259404 120308649 708572382 608387102 939439431 968433005 734943066 1032009293 771534860 551207999 722786269 560663549 1022491533 973645090 212606376 1016264850 337997156 859975971 176208274 591144838 593434159 231887954 316401659 823485566 899705819 816214720 622480401 317164020 997778423 265566540 896987208 515657649 345366625 420046871 440413682 136324980 141670768 1028902775 602924027 102114725 312022931 823285959 602582061 1001711482 1057190898 372128388 867034668 386359900 1039784025 947646154 346551652 193260319 991217711 333289332 286678971 697202829 702504569 97217445 909237807 196295435 1002162746 723971171 629256744 86826183 241261563 979109655 813282448 343138198 965034934 874413205 160772466 949331783 597415338 115545484 1007343407 7468915 193392762 986239095 871243085 699162814 191004814 672655025 240105703 462256830 1010471978 900840274 271871717 436139759 354027453 457874364 983321707 859122970 447993278 838788685 528083854 957906253 983423548 746100778 1027444637 1056894059 703536389 5181974 459841899 649274541 927912447 822759238 762064915 757912185 630996407 511703391 997444067 884810243 733048426 423104296 936835988 720278687 613731375 988302798 599714569 781193335 528098240 932931228 938446937 363648829 825523361 652131839 161587222 657797481 834149489 193584338 818512761 31245385 150993287 705870726 394459599 538208198 393269393 961261421 608796542 1030906004 917803423 331922439 657658864 93121107 904268840 652563947 305959309 429834663 236894282 982036379 959143614 44328703 25977701 643384570 60202734 477925647 448156657 1022445196 215521955 264917501 1000746676 73806291 877819612 620769705 632335499 368360833 263280835 339727371 286997936 580749876 997783676 639451600 542874727 485983639 402463413 681128898 203766882 1762530 236985660 935063972 1053945913 570114993 411030062 761059148 38412538 508320608 1039060818 69933841 19993206 790319813 929201820 898847681 342379376 369427269 663431287 251173099 505395325 381139055 825697893 952556276 668930477 732576255 612038790 434134945 962462506 136559876 359102304 29964798 267674201 921333777 673120713 267553730 968176718 931528286 187324888 679190287 574352754 247227748 209543541 785578679 535081396 496877894 364086995 141227560 521111010 662268355 886733990 391252477 409805057 704275475 733688600 249278460 698853440 171973610 435324661 886574281 924139725 476987719 600389671 486956876 287880311 184230611 774944285 1069714835 964895209 144713907 376590699 271977531 58996748 51500603 780979920 530267649 813292349 967956930 360480228 735390870 846060145 721225500 555820679 920802169 372330368 136462418 742305967 40337532 968428566 375477469 901074544 826514070 810459389 28871311 153864952 452278624 663622277 189040877 790090315 501221462 330538694 102597601 935351409 582760453 225888695 786241527 211934155 849176577 490178145 161209152 410737744 785139862 889982120 531810734 982808573 263739983 181782249 138844975 912372511 806787871 693681491 847402520 988542313 974937011 97531062 1004012715 791152633 630928158 230977069 692798950 932008107 442229973 816256765 836260727 967975972 779636041 481993 776391636 746917561 753054271 604374056 656314534 712071188 923619878 844742898 100359676 138093593 1023236852 233043941 38441163 129181853 503795337 59547956 454406809 3856356 81947927 875421158 535089974 1068405646 528757560 438895223 851384712 889743115 926987291 886256467 286303611 380160218 279402717 924382265 83997186 333698485 792286068 1034146799 963770765 856690062 520704398 671925464 175216437 435724136 357682896 506324593 832736664 177855628 105992363 618190205 904162772 770243597 335092824 162417392 375946689 307856186 195002479 157268987 479033604 97421118 473623334 299110472 1051612865 965712838 82094203 253730704 988156959 873302709 915760690 572868798 445736234 1065129142 969109057 263380773 363000235 974058130 460753069 374119991 724381829 80986195 925257278 94961486 679373782 333567873 428519379 137978488 1007611833 43556984 498824906 1048897223 97451092 409680295 600469917 1067198388 116106417 1000696814 346343850 265575229 1068711172 20342503 200205825 437219377 209283555 389932823 638433531 252319834 841321144 767840363 61249432 101851157 194068319 390226491 566601600 58608154 614851345 510722131 173079581 1068327247 467995633 669792548 373744400 809629877 746926373 938878628 596277143 891710506 697806596 424565350 419943901 974135645 68997805 810993987 31311544 877367673 795486080 947154691 236675050 912984917 184581769 929887777 371755774 262060879 903598837 32999512 200672911 590599221 297205450 932099884 780106725 90179747 739375432 222786987 236244489 370571446 798232017 443458718 468439157 486315927 290782870 951028254 586085706 618739590 446180869 899165011 936880213 236420329 137385101 914016425 346758255 1046258855 908900280 885914202 966862432 812475133 668134000 305519280 579567486 172037121 950572450 224649342 246281889 1045407425 2649510 48973673 656587064 561555267 200485374 312903101 884601203 278172124 945068531 515889923 722652560 142543500 1021566907 7332474 928855552 33363664 395893299 481397602 417126572 508266808 362534131 200682021 174453011 281364646 1015263387 47697757 828787393 73362988 940533039 267317032 691299942 807026649 655426302 194209223 404605202 689354060 700357935 166846299 356754544 558199743 435334203 249060614 509471163 684882617 908934483 984345870 245009494 604977791 250275731 321304000 542475284 119268139 639136012 468990109 1038546027 647816322 633918296 978997319 486606941 1032432986 867707007 815879346 884624552 251579475 513574982 950560069 98067658 282741659 705204575 973000837 96379431 837249820 190789680 213121976 320739388 226405534 227964200 165602830 276595644 211738044 255773538 232659390 998474195 971912834 832966005 444973105 640632219 795962232 613165079 911302712 194911192 436904590 1006011515 30088553 626491479 851863425 21064015 434982039 748078631 505800865 383558086 217831562 366570523 621302535 65709471 118272551 121009360 273735693 642264429 840144664 203909591 988121757 227425864 767800207 952677188 319247711 11214337 937108568 288128086 1043721482 832159969 1069281135 4093409 154612153 30060027 71810112 598245771 449466560 407819492 787400055 158535683 499393496 800833592 1007278337 559657836 693550771 788551929 545215444 182804033 808617331 1057819224 21922915 927785731 175247590 793859853 856823509 285173929 228467507 216845592 107645028 1032384724 250794604 112297266 1000891334 887434995 403758763 900327480 868562630 306548674 916012210 878786829 542760352 411599668 283090471 98090040 326376112 995013872 864198325 705470728 546663776 608492026 6080359 859854830 798170273 881170641 152175897 752754480 156481541 24857524 847982816 534433198 421250183 745144818 43677006 41435563 712779708 710939399 29510314 1066511968 825150858 262855979 563153846 451214274 100524449 402591015 680004060 150167251 927706907 584549933 702596599 332924762 322233233 418487904 525963133 872916594 546447472 699104907 697275602 1060119570 987513613 505567645 1021092588 963546102 990053289 909011513 77601398 655710664 669406601 777604927 514409707 590898325 170739086 620655143 552952508 1059260150 1008532650 798030793 284796184 233858452 103044531 6637305 802513061 971378901 297674434 671937244 1059442143 140682306 1021878503 825950885 910380817 1850347 288478847 529094492 527972570 362667787 256908157 962979942 371353767 587907321 606675753 932487471 11493759 347076928 620870595 282478680 493474048 341551098 48104620 999782981 231642675 142702806 169648269 157140658 744475846 266608379 449921045 324816591 223855519 736004403 1044137063 660749132 393100329 35525743 690519042 987731041 554587747 896074656 16416735 73043999 1023172985 580744911 381243527 650599463 221996274 153473533 242892489 717331734 54358500 914248895 668772902 639073381 300122620 165660380 309187169 885306477 751031219 667567245 544323492 343663520 1029910678 884543195 53876751 304692499 1009174339 427229089 200343725 13409117 405231796 624192700 72718161 876284241 809207543 298869948 255890143 860122737 40262532 859684421 57190394 872241852 805004713 639874049 396500874 407711092 1021673750 678532442 213691301 847206200 935161679 107007272 196914658 266718081 533170988 682242672 658638433 350402815 895646993 463530536 446624671 322520186 624773345 683432277 1053751802 641398803 649845880 382504324 644085629 610076238 718087953 826789877 380453044 993836397 269318024 584470057 977798296 1061334448 319738888 906753942 559175262 202229589 554117105 902257321 372871107 162770430 743423941 413161463 343276344 860869722 711963422 242698919 837382318 30608736 474508799 722599727 866318639 600012048 405803826 205193353 903674842 998665589 660950026 570839876 355197747 634583610 573536380 857258414 511561613 694597498 1026689162 168073984 497775980 593840525 896332394 1009529316 654713568 711291522 771315991 224264444 783774807 413759839 417646599 806159949 6348134 796878195 580922323 584755314 916928406 741111916 606966608 889037694 642247758 11173861 276115034 698574376 764957896 554005615 477446922 427099385 1006713107 668817536 437062905 780940451 412784396 571995749 597484229 77809808 946490671 221337121 359684334 739782785 474432949 717782410 169576185 315518638 952339647 670348994 817623144 776796845 267877545 412924838 1022728242 429034537 547513555 178466434 111451556 207038155 777474783 613544899 817793478 808623375 895680722 738681808 249474264 830035162 929034285 248832767 334593144 1026266024 741665609 189501771 261478487 471850095 311391321 1011774979 712349152 160477915 524728436 345936520 769323881 516474775 735532238 197555126 795004491 952001550 911781249 568280775 1038255858 512649988 612370359 684311621 201862563 6268929 761432673 803772895 622406430 291552410 664541573 476738711 22663946 915226574 476980225 89256688 486949 370468351 310916779 433104019 221571780 648610468 154046169 355527496 253321597 62451440 376890239 778899685 516016781 861996505 742579896 869331401 861277068 896789484 139732776 68386449 1065817040 295394231 820015062 1061571278 1063420315 1056282148 1014453431 647869843 749941970 647666637 519814939 64344870 1073424437 478835236 487518549 206269573 595427365 850830930 923039976 858020962 409255942 131420954 738000470 464982025 424283684 698249152 574150578 854609267 571433775 570086774 385023539 579901826 202560384 167591793 706581096 205450884 103566904 727928421 48544774 962649327 146492917 624473395 8957279 424906998 278311817 652479313 161707796 907460362 906670460 88784046 824113138 1009108034 981202540 741293535 94264939 595470768 873714830 317102522 314142383 921246176 292448169 504265631 406862158 99962328 1060686919 325681976 214694084 483316205 407383242 694084512 394821722 48334375 781245969 1030955367 867882625 761566453 629678043 843382987 791674662 859171510 136627378 648490899 206785321 606388821 719766953 749989802 693577590 127805790 371499041 917340740 730881452 981535681 764586416 49339673 269073734 511405771 964379609 1023133340 298855160 1030991363 673984058 489418380 702405650 99669419 52925640 287202831 757690080 114080154 126548217 633494242 152928985 729192477 734739615 708310956 254791092 749819356 841749348 77817022 846937646 460442745 869234420 270542339 658803740 724936141 546042656 91566256 64698290 340027217 722132008 762677732 207476244 615383113 795496838 351549778 924266311 41740750 557786866 501882582 113356622 248669465 294686248 115695749 358404365 116429473 509231004 952909654 333926667 1031673572 281430254 363978098 698705398 888875725 228357690 334769571 195048973 111417554 871101849 644079827 438633481 294740917 271707380 1028239774 575503364 354639845 568766223 105874201 955083281 537290206 529941814 1016591541 779247434 193144152 214449322 1044625627 987908496 580069328 413747906 835490398 1025985415 5340143 509008086 253052173 345549903 924803656 875725098 771073084 18930800 128402426 658017161 151227915 155832163 901435531 179192122 395979063 829868499 418079383 901668757 579135168 766458726 846501815 722754287 835738754 1031552813 1030065443 334892945 958260656 1072680364 839067262 673113328 829489187 105656455 1001613203 108070090 712961735 629737648 593403422 559749321 866310042 1056923935 1046741946 528763855 636392989 1025431589 82720802 6470221 923968470 262261428 278116346 750251211 388695217 332216962 439502222 800047107 687281381 896560637 120533727 191265108 833895968 596259475 429168279 193381340 286133763 226807803 371990551 665530044 307343246 139261047 512589709 312455572 522482055 136991168 682367362 889760840 705982195 1057708055 127600677 815914110 287230914 549707535 903008458 109342396 634503764 601560998 1004877202 271544459 655523263 74261819 1030462196 341204961 430570316 672630110 151199830 623389066 805790692 137623304 801242630 335282646 393945645 857756370 484010942 461746080 121260146 370402188 275175257 979185963 323406160 391499591 179746193 923914217 71776039 771911872 141774772 776438301 234146187 721862153 707198439 72120444 6347601 741686111 701798911 972489942 329117192 96545228 347208478 641805575 855381805 708676586 1020045877 1036377180 812233329 838829647 1033989327 604401505 9778378 42335014 630710202 290095684 677882121 922935969 158311351 532850168 865624093 437809387 997805028 90556797 43645646 1054075984 165431739 290714534 1031872111 473024141 628483244 751712518 690488594 727643184 1045135083 533256143 499630091 143500181 1018371472 345856322 258072970 531537705 969682996 991686406 711453231 51044712 514331030 286135831 511506350 667094679 187601113 93143818 849275848 103690694 133908886 372704336 315386566 803815143 495703451 1777188 753174952 130721014 345011025 1007401707 288078757 588639836 267715054 181984398 48601246 29940829 440047974 73338921 843287143 236739660 108693387 708190576 451344228 388398164 906199688 98239880 1046908088 753761144 25752008 737604578 318482186 345586332 1028505049 68180983 224696398 925652402 1043526555 689284555 115967332 904974152 363564597 733910405 814095116 289119303 415681372 48534338 660917081 846822488 520648074 725533077 510342665 638466550 3313164 235588039 295105760 838003422 728465225 579931693 633879641 635333802 753533466 916987773 1024485983 559349317 916729350 557299526 617114620 38945796 187219550 385008009 550227642 18997072 21450727 907279189 378475267 334364802 930191801 575898245 515133643 256088223 25420480 27111385 694130772 634457256 767508313 216433961 404581969 944007924 383747079 604644671 396582322 88866736 674835524 864482759 384018022 538861830 223539092 1036132047 1010591495 807897161 71897359 967052889 620555326 337385449 65708177 610893616 480608839 807803838 956955416 690839850 310987908 73573816 242743461 791835062 277600447 706467857 1017106123 119709454 869405108 1043211340 95716983 310571043 981769803 914206738 686017490 848445229 873532665 44532432 794937594 386242451 441321325 13012493 316969817 663585344 594629320 627674859 421364846 383875091 274599243 388856514 284511872 582240349 767332687 23445996 120632303 764450147 582995352 991146970 102320661 587131739 416708765 331640694 15061564 26184314 590297708 891534546 488844713 1068900665 556484149 253264028 433392517 151485701 613556283 675764744 236086327 941802398 750642986 735831149 868168163 22708349 1014272904 343070419 1063982952 247261474 755594407 376959766 647575084 846364830 320390966 759315572 792407490 164750225 339123845 653302765 459686464 733421507 923411285 469932321 242751703 242001815 892802393 505429643 865580188 157871180 986558262 188656679 608777363 504534728 591432473 346957728 900134877 721841011 514559484 164283264 1009722794 1063451955 310214301 774989759 311840863 689673516 528631467 371555744 1068426972 75219055 179834396 905628103 163416678 367355689 250130751 620963828 389607990 1019734079 462526257 90053602 579565972 670053011 370891942 15129808 223730019 853699311 859448488 762247914 304718127 879949998 362637912 1016808232 845847329 176855316 42787062 390691537 964635145 875288940 33501443 795188197 560306859 554093760 496253521 24510090 1034951299 79389612 622419693 1021967699 190760415 13005029 648791746 1030424786 555318038 396252796 662885691 747722323 513539227 943041688 815873173 231224281 13600563 778106926 486303127 104853626 891377738 1056874072 720225543 69511595 124980566 391100589 437148032 664032725 540068761 245978142 565399625 448705798 1027441839 169658753 417207950 35713730 892349658 86029932 1046090383 974622946 379471469 470213983 295223874 384842865 242766076 29366573 672291704 789957862 264438897 1027035155 417687430 904135516 1050174823 1046180323 930636786 110143860 191405584 1011662203 23428987 529154425 111223545 164719723 959711871 1004113091 818565860 934412014 935380123 226171113 953914886 203494076 698567680 863954946 1017834263 819877073 814008710 356033113 905706036 227186921 1047789212 539591706 825515206 787797938 631741208 38621130 520606287 167632096 523399328 402586040 325458310 776038925 681503339 324210321 1062294068 803243528 853187876 969280331 940419227 585139701 567184050 106734528 28072405 520194583 294343313 597046193 691285822 653652787 84434410 51078334 423085275 559343710 474624138 863783423 295614156 462652928 203666521 443510088 484152590 1016982154 381490050 837929246 2234032 128025449 699855258 268991576 963975738 265651364 411503610 920213601 467935922 570699410 812624067 302772869 869809147 21267462 784958071 937761872 312083367 552726920 27500154 694673129 940111959 866976739 770029444 596755893 262126528 860234594 218765849 258108038 46566541 130377514 871267781 854851758 80370049 101959252 422896007 461967760 761080377 817970500 493258048 397422244 259535901 782686957 697110893 192661641 936382159 66676651 536684343 344939767 525128432 785182904 344766941 329972538 193885257 14374734 675811994 265774233 585156695 888853840 163064245 333879781 183011668 782681481 1071853825 355813882 1048956563 539900284 123198915 628998472 116627133 265602580 880590607 1021967313 702982070 678496091 743794200 802585620 938073070 441765156 865309495 610625582 913025079 17539283 990242786 33487020 817333555 509303158 251218457 602096341 1021180163 756791109 489706517 955015502 742452856 56370640 542584300 99457700 33216999 327923333 341025105 155718851 897317645 936249812 271215981 19516837 859201258 972624865 619170709 399894311 649344070 339643387 155381171 789587731 1039917073 220897342 168717472 675340356 999303010 962125430 16673320 164643434 271352761 928781979 819608158 916770885 479824296 502025144 949750876 378871400 4518677 282320935 737352772 1073259221 1052036391 155236701 848942564 347918848 593515672 529885380 738755761 1067438206 650450971 876379588 345151235 839828889 596200479 472626428 955485995 987755130 40596509 42034867 21395243 357918913 606060477 149717278 1041350173 490283292 718317793 136984693 407884203 286920536 499417594 940308684 818561576 744149033 246740679 60810970 919413834 405531836 554050390 383122980 321034032 413514150 1026423849 559198124 640294125 1001227346 175154878 384694552 22001873 76175691 644142527 1027021942 339226207 540675796 176323751 367186648 827464815 767130121 451282322 468090833 355799750 702706434 597617916 23299935 1053014963 552929431 657459094 972006529 507742700 884762184 534786159 7845800 511021513 649319485 1013491742 369488875 69126080 1242971 795564441 64967537 358646342 1031974850 950165430 147038127 346183111 506070097 440674465 611753567 395964214 644580757 1001236601 587737836 716605752 483968241 660993076 425033564 128689226 193962685 8318295 40054920 711252595 53067285 893428537 451178428 57804394 260426054 517803722 1070803955 508549405 633195854 720405755 302506077 667304985 291882251 523496394 866346897 764587313 976650628 181036226 887850431 230659277 1017672212 1024351108 493141733 525064328 348572251 52148643 409755677 48091466 529831176 4245729 1009804798 700927617 115422174 389069884 2325444 782493838 532706682 509195 441487577 382935014 176300349 659417401 932236885 657871070 176181737 840185120 703816814 571961753 304824244 379204323 1010197271 705460428 314752666 256578849 853832616 860714304 253044252 771998155 232963450 144492958 264506618 576548103 528617113 332387756 979402276 437576611 493254079 146247120 984520322 581669456 555774295 794942794 616004653 759746060 361479034 477440864 285370061 868805971 760491526 406130111 857635696 169024864 49867934 236004407 757135868 376279265 727046163 456758931 1017433524 261670470 170691877 331526519 250772493 710907818 75549713 844728025 1068772903 922429073 729112778 703950524 190201570 63168837 917665187 270929230 583093291 463480241 849876810 591378918 228948765 405760583 607925109 936540640 33809918 257721017 143273818 538259306 668693027 593072987 5666978 808824081 891088313 818941784 554447916 921093204 444909481 79305815 310433162 391827416 35766375 170166449 23201981 832037043 526994037 716502302 1014421711 909081872 618160912 1067570190 370263023 610593800 87670373 245930829 78212079 23383397 137383492 287286583 995876523 304153032 222709518 257467925 794060274 502645553 112015149 752510032 733203099 337036805 49129634 748810359 553086509 407032503 310440622 1005130818 768001140 363174443 131511726 321928775 1025617106 273539956 338858605 79243412 461062432 924800705 596455466 1072894909 357826032 290741709 314046681 594013660 887912057 1032312694 70700920 920803410 228223746 170154273 811690121 552359841 470857234 623141693 136637689 857871718 827587143 283260351 749113573 395270158 5934448 388027400 14401512 557844963 1028850416 1031203817 761835931 944289353 132788981 929065013 754796922 812845930 219106233 724552291 958449336 916647106 269054900 1022523093 381613179 1029190768 603102804 8662413 817223073 127130065 925442045 470220000 597633962 558817166 1072640495 299269950 628091147 808585461 1028032416 674676763 483652685 494390637 665046813 111725622 962343767 184649216 684631640 494484763 827634681 717640373 1021818346 110563753 61513722 1022145560 834586442 59861237 522226804 451409579 193200345 905528616 16585745 254314995 848066409 1058798728 558815517 444763901 1067724389 982884576 327590640 812191793 64500969 680497 1018114886 878687776 737096181 314442196 322391804 374052286 166567831 1045291808 478524050 427825843 55359288 323452307 1050974969 835038816 902241736 619516241 694428154 771340108 962002156 307382824 460898535 187535959 493504228 451358201 458754865 374583196 1027270299 658874781 750639213 883953100 1013017891 699212303 463582221 527590537 399450002 265080763 421916036 470895318 878984282 742826347 447965048 298097811 199609302 915933677 416108304 803981834 769768372 514102059 434632964 1052429438 280912704 24449512 781307993 558549449 60584632 499483258 438011877 409612056 400784003 965759508 857286441 575601965 154828718 229249456 156119358 416220782 255405675 714310569 672380884 1053116904 861155843 1065526886 586966558 205166019 47727332 870478022 752473377 557561559 868765219 793795427 679130666 1012379559 140123245 827939485 629955298 912408700 313359190 146502715 64055837 509100302 126141950 980553116 1039167536 414846737 276833812 900745501 1059295605 467327838 754627116 1065313539 777039336 689777179 1070404702 767674454 829594664 49965407 811094204 832785068 545312155 550079091 678780465 363318634 774208628 575387174 790463708 727923567 800398773 31649114 494792535 651847548 965867563 299172629 324579144 987597886 787191458 876720722 813424449 125410921 850942266 214862050 191288829 422688196 776620295 247834907 414271968 776555452 196805957 36786330 1013807570 333630346 368747576 158128324 849056114 240766385 457587474 295605548 531740475 11270553 451776657 689017818 512171824 688881144 473039758 399685974 629151576 1002022788 316573802 1021715091 439578054 1014975038 331814930 658838760 201387375 493351646 491295658 560493110 1020529220 997630853 675464382 989744504 1000727672 106707220 31470061 432589384 951765041 240977486 533733747 5106733 265482313 11421749 34738531 227401596 304570442 67648374 583426545 685254029 555155586 332855900 492299183 711541657 119620716 906647870 461102320 63609457 15103569 659820951 196923668 55735944 185848097 1062575022 670923709 663265081 624684579 387322476 608982160 651717782 970006252 956791537 808177939 844995448 748520925 194215059 167812726 435785838 553257451 105629895 208125917 582831141 468326439 925938388 46790373 974240121 1053515291 599213062 729380465 104558146 876895964 210489490 613585071 458833291 360221527 519206871 691750985 381934367 956925746 598345950 621084145 1060207032 94048882 975503024 483385783 965751285 528003109 755144346 677876428 564541034 267407187 404149572 2788677 441440895 260167883 106356271 659067201 576881289 1028510585 475048336 1024412612 400878721 299501085 1005380280 890921923 121198740 750504490 990643385 117157641 380478014 254303489 356568131 519217534 404637066 337808122 129392994 44349150 813966266 258073179 1059155834 832912055 728486924 188325504 411400394 351420324 269486338 653666603 442351980 763461423 953746653 73583572 861741105 914260265 632207092 53966827 468798076 145258016 31764681 768857638 874571637 367862711 1057617976 136603939 462163993 497305951 411991513 537502688 433271190 410788949 933443543 898238006 1067664770 429653221 254369522 121670522 308597822 121578280 459945674 811484808 587139673 226669451 45931042 345063545 672950746 567790271 836038023 1048445515 473386591 56237153 840778276 87093713 823516430 137776670 793664291 813591141 1058833970 77742864 946188667 722333519 851012493 20030941 883213650 185170146 335797778 933052256 1333919 215286623 456637846 175554672 847810631 199617110 746726098 647129246 921075908 1026288779 6219018 97000459 619331666 357637705 516300772 439934395 353641621 272078887 512196441 1055208645 257740851 1027000388 398721637 384162043 1026027808 1046592451 460748490 283965464 122468918 415125789 695508430 90503987 751394475 230739495 919376466 20276960 725776797 782108436 427457146 1038163138 859138741 933827075 855393423 245650720 721798919 1042823990 162209406 430546593 798663384 41042565 274659243 762462520 986622635 795798921 1027620015 333970052 71290216 197902240 731416582 427371201 47489934 1038226344 401539200 16315143 970171651 1012325008 337713785 50760012 847534923 444297750 167803263 172681195 341952640 717952588 968343744 958917937 731626650 716220089 1024386227 537678007 1066161144 223430104 283764598 884000168 392919473 939861429 108638704 988275697 220903702 902297396 630499296 22465386 61839102 408360444 210473417 280566572 490808788 1031583862 845048407 356492255 372225989 974898714 40846036 137975910 662803535 602595403 152698121 95065976 1027070949 877188743 390911842 518717380 671061733 26724470 398288844 991802436 1026645711 907974345 344764563 13530425 426442561 88020489 718229530 698599862 849909163 677687267 555677612 808255780 851825656 150932785 108146787 425418801 275301272 247929480 816421256 725446902 106355250 809266704 497612627 284786825 663116178 747014009 217327845 694455493 86684452 278209154 910818545 704381945 983849034 101772761 878833098 928211293 831653773 271984197 114115318 927008918 271414320 354313895 216595468 346906211 471062466 537568026 988600514 131252737 66252960 574483112 535560535 1036661678 614637280 356429174 784398290 42664152 835399933 518074154 1053846579 692065132 309343139 984309448 691465227 880566802 446885106 122502639 403099866 309719099 864105562 799820416 436646280 596290621 331746732 1016205877 27804802 896249240 751815146 392782643 378614019 624131910 714634622 369035878 1010054066 345209780 874701350 917003109 701625783 1050808450 384340151 813118838 631029959 168017901 865948840 751900478 985463104 921743802 558250727 220826498 831952544 264679079 337625484 699071359 1033897407 272499334 107572164 515317748 642700400 612158249 762684330 53525112 1012944381 492156422 391690193 343515491 92098232 95158026 521348306 592100086 133432605 265228813 110089796 109965656 273810425 307948676 313501359 708294472 164587202 717398014 82473544 332492427 671688756 310015524 792714478 939321952 688588206 37003244 749501480 103869751 801825089 708600618 210414871 854993454 899208872 554601882 1062847416 988147468 438394623 906292029 875210107 860714445 145696301 373908129 991191890 975438528 995350858 946686113 704026900 813336527 709366972 885606912 857251963 228330491 400543947 284585056 1011465247 198298738 384251522 366357659 910580534 134863903 249279235 398299280 742930246 494514188 218918611 684194639 349196548 481118649 490810647 408571012 332709489 603516196 149830387 681371876 532109693 527864956 921783176 920226278 762281411 357703254 939461336 42798012 22057472 394386632 445298567 462200730 1044424219 315608253 808918069 862695182 436819189 133375519 670690391 824254628 547008076 933123089 314553975 517962098 17231341 200786186 777079237 1059211598 523630933 913897682 501841388 697147206 313789691 836357057 812408293 541132631 288017650 429675571 368613523 934509333 471159689 157069070 952169012 1064510352 496220922 1011559935 480948438 560847724 14993645 381824397 902827122 141368100 684926341 588603311 203424837 302825102 647082883 1070991141 1062224888 1073228850 476439320 779683397 464728047 74120070 429899029 317944002 930965752 765301172 490859414 881305073 856616315 474222643 817237957 822313409 40392952 949481051 104238216 623351747 390763527 197488108 934510365 977965787 446351342 877596500 390127044 1056282680 858718873 156975938 14512664 873143403 16443206 984672128 226344204 932032302 810243152 86295771 158422762 131587422 284615721 687455602 135276992 321241611 600098024 749851377 641501954 301523260 962483380 241741425 612699090 784848833 137023862 739420710 1005890820 103869761 402148635 1021551730 1046160961 757469668 1071453170 32873213 199686214 861848553 756074911 95298030 608294355 946935008 701351712 614462684 316397378 674254182 850154164 770744524 719387643 225067525 1055737317 773195163 553281642 230963755 314089878 374660772 281761341 1056407432 220819517 115543519 531408843 397325471 632705928 843005349 367050427 911972553 952360243 866822652 293436049 849733407 344528057 517395903 28769597 202739806 508177393 982965436 486012661 644886099 742176288 887911315 405268913 194479410 922762256 425887891 973640470 410198731 829327402 746414574 464073237 823329564 127524921 427447406 838776758 552801217 669504631 910743231 1065671640 794326328 791524877 248366585 922482345 1004477629 888989255 50334556 98395838 727126408 625261123 777668130 745087849 10702405 993407669 894185420 340546752 1067750655 295931280 840813273 550261724 235747651 198468508 773084884 849866385 590994597 600544696 787243314 498088796 229353675 99560992 222618202 80042568 860037970 147851882 71440723 859084405 343118020 165907790 989628871 600094635 65475794 959562702 1053847224 768843361 1026200109 259622229 937261396 888147688 52231955 857497618 455576887 1070321223 812180176 1005383855 775220707 363384069 208312639 882407292 152226147 1033496943 966313309 507466361 554035371 634111747 139493826 1008520354 686011080 549017999 115240676 591218697 148376892 595324338 116704665 88326541 930818779 300958097 343526337 540369941 356614719 810017747 148753310 634740796 1064683734 1035485249 202331681 55534127 890303407 255569283 981171657 974165233 634313008 933685477 137750243 6679307 764633786 957076678 486953339 722869132 1010255169 775036433 989764783 953228834 493347809 816204072 290373372 15555984 124106663 771333663 93317655 978962731 301394657 653111984 18067714 685780362 685443002 647675419 171504469 603002331 741104551 76443996 647907849 604936760 616098002 379551959 175560371 16961796 494211757 737911209 731937141 1001626544 903484520 335137588 84678315 1027924313 369963037 829877458 947165828 862291503 735545067 554278815 771227 815033558 167771524 378715768 620880569 176749194 97044726 553023992 945144517 52239045 544512862 650364226 553620032 629341287 954743373 879401892 889158219 725810810 258125049 964765368 256777272 87250426 621336663 704400468 164326863 177380327 265673790 861032359 333493112 774641007 849717658 478236439 544388996 227482029 872100742 402690019 842188035 217831592 596253527 885586742 902918200 495842274 483639086 330929474 74019192 737660346 511222354 846619078 758903603 456288716 679801246 527740071 728674000 276724853 882777994 448953558 47442026 58361270 148882346 902680878 663630938 407171142 752721128 1055032971 344326349 755918486 410908476 419037795 268769172 115112121 410867826 952354033 991157643 854959802 518752128 891007230 557798778 802819739 1072859727 784851697 83495193 926976968 80687061 601502541 957301785 68438584 246758385 696160553 1049725975 945040635 479673900 547799923 1056870279 839951863 487234451 348371115 634934323 175357387 574896304 348663801 777098380 434860941 867180296 375158271 401738545 104727959 832690688 83621556 900022471 987862256 661124823 503214990 991377079 678300573 268995837 376961799 819113836 1024790061 442350975 872152571 528722964 301540504 895373376 26767999 513601445 348847285 765769939 639017985 950768495 543141116 981577313 296181995 741357402 329323016 1030940537 445697790 626479651 994049661 629053707 528424794 378324379 717659782 230012747 311021227 10028274 300219970 397353429 523264950 327943318 211620700 515033006 676617727 599118403 75777477 748384353 311421140 433864259 98197661 660139925 186292800 229100621 219082416 936950120 67114083 389667978 594593403 973571677 932252012 810487886 573324172 1034448115 379865847 560527813 458059317 13726590 716182736 1061328964 784477503 112903471 38641950 961873764 517302223 762591972 567556643 699903513 19708244 970292455 32694441 19431848 936111205 282465018 10749212 41979917 449416655 280669811 211713061 890247658 1023550875 73199250 1065156469 37451299 59651591 85964559 234816179 1039613435 569761092 637439364 236354492 99417744 182349485 89158483 29338902 794464119 73810938 115917780 678777510 650050963 449993729 205677807 401879007 95472157 717291018 347878141 14597040 457093816 618765423 772150599 197649216 1019898545 48006903 842191441 886598577 1021213950 579754869 915903913 657647692 963186216 739116943 46924720 404566613 440524403 713735054 755025356 900464879 106233429 644153119 265778134 558270615 676577275 724657300 190672668 361553521 555257331 528530057 1060061739 792557840 584995368 624742894 1043586497 280007135 1013246768 662560585 329420158 699496009 114679338 528345108 862845591 426295481 401645372 1065366849 461303016 578366616 875144866 732004155 72354505 149318636 211806256 893311305 972833113 906256278 1022923466 829060489 551379111 291015371 351808233 911359676 818204477 429450979 677013883 386661024 885624619 796376282 454187513 403367404 464247245 288670147 486723423 1047596538 601235030 707938396 143566400 664742108 611672719 174642735 671667239 365667227 788191138 309755001 209110982 886991150 411427216 20030642 919970312 182263815 990346832 878012833 414605245 235763312 684345425 736375842 831135109 637070731 579832159 860774477 420673119 933516266 40525719 567518183 834735343 302465140 123336080 342190690 44222889 621434088 265621542 276927047 908809551 738372349 267446307 582840757 60483988 72737990 907915017 407940528 911766524 447426676 470362104 59907140 885909803 100890700 938144715 276741971 625345543 681407058 41811603 75343327 780695487 636370924 890926503 552391031 539479741 801595698 358121324 281836218 785111699 1007915116 31829047 240622544 248287541 588097004 431216228 53658736 569407977 940026286 814745304 964659338 401025443 139341070 485121794 946302112 806770027 435422692 382764267 620679213 169010329 69779226 604895407 317243708 484438525 337779756 272198410 985919602 642703322 735641854 701564341 1008198668 898466373 1037699622 733224874 983082574 715842100 44156422 274964134 562371046 833877965 159479135 714200173 871797279 1021612610 337653780 326735603 403285308 516966421 9033539 117073639 210612183 420046725 886789228 310691887 426487171 952483676 40298372 394212768 1016527620 445212182 394312551 474723579 1035968206 264931327 183637065 733837257 16220990 1008876142 308695466 369644890 143165958 753884446 687408500 802130864 880182033 28304246 387945219 886257624 781585123 110575563 1041842776 487619910 877825007 417854403 101734817 715639261 992096096 46352756 731496169 431279035 275585379 279818628 316591149 580579835 287336524 65606989 924436420 271648600 142163849 860940493 357256807 1058783018 23842322 503626309 364293014 1033718025 188862313 838462608 257486783 907362412 207267669 651348051 288146568 386879829 502061152 367503541 392228590 1029745833 89393903 304541321 808560500 604199290 165543259 726712972 845615057 121969776 199985067 878103045 711731791 233699475 639439443 1049310495 601308381 162178983 553229903 834360851 867005241 597399460 707926441 653347340 163955405 130208153 828252662 563761266 611688121 705730081 362362625 869829441 127856654 483617039 330659921 775221232 154983447 1033932385 182159703 688300820 1018103168 771493708 209650501 468588302 118542771 10041454 771141885 876686638 95970735 559986021 569982097 250164011 287801320 199942068 30397599 199260569 413007091 457140276 489345511 671974334 213374815 514019960 97581865 1066126794 709449686 338493608 346176870 185550484 11252956 123375064 416606341 85859189 286580461 397982377 595878732 620103556 667701813 872553453 343931953 519905099 371979212 315424037 833354299 1065729450 194590110 810249357 629230259 902183870 866321251 1044733201 512354401 441362471 839521305 383358450 651426201 106889666 51226703 1004196328 117331094 890513348 742669945 24633635 823377233 436581645 207196059 638340973 92318849 482312553 44745709 450423503 797593403 43432771 476404537 896171912 124670702 240700450 891858422 698986298 548774503 558339407 931867736 241047407 70487985 114316310 187746376 407288336 804638438 339902219 152299649 316219437 949689989 489787808 278006645 610711898 161650740 956099119 33623849 914868308 675731556 529946038 673172697 1031867829 432656410 801399480 867119105 153903213 344901121 988826484 539293557 659850402 785315592 457932012 43993007 303994190 1071084963 1035861202 736832254 538406756 882479439 460149949 926807398 120902199 731333621 836366935 648407277 859618065 153603002 845939253 894500300 17104107 914603748 879679628 756732708 912686419 833400008 492173973 1054112543 597663557 762178760 896413827 882284871 126319575 1020198048 64075198 546069117 661829988 607043413 252159974 434341920 728851271 502897230 997788130 666909711 485080878 587796511 786204869 461828817 586379333 565467060 473503447 187457699 148724547 492640022 778475546 296885468 872979629 95487261 128341283 395201316 185688589 40000889 986681171 840514926 649001683 366575415 93734591 175210397 86776878 901582459 235490175 337754938 526432857 423720870 954860517 716001358 956762839 3577564 69273840 751883961 214356000 832904866 873997337 648245828 520748561 144865582 51972951 709357658 354818197 856179010 957995323 58351124 938989852 680884532 990128128 212811300 167136122 196243925 428181709 862053038 923834950 85662291 614884291 34120796 564216817 563204169 269718083 1064271985 1045316793 712685511 819488619 239805037 629160268 593582397 385134580 410851759 644513877 807852365 504810959 413062633 645573460 156011620 556445034 184698826 713883168 77717327 888175277 770607924 542459591 246347475 78345136 578191593 58911868 102505674 1057225343 661080435 935916555 699785672 620064306 230964940 270455367 392523737 204371312 511863346 305494084 497691994 21068422 99294453 1026572951 1029899344 68045948 908061923 360196992 725325703 579374223 62307901 531735587 512813762 95965483 925771571 831819522 608608118 521461838 223583319 167183443 319622563 506810375 156403219 924613162 35416265 879152533 503398550 110912012 874002633 653332269 88176016 321396906 77273599 907861602 1069667303 248881082 944377885 708103881 643864401 208278611 751994484 759181227 779904424 987362766 593776394 989370755 288342043 757082632 709934342 866112331 312142066 982335263 827487307 263748554 150796184 412682117 565642520 713291801 728846014 937312304 761300497 421521617 842215234 423359696 654186287 654775288 48472326 559417099 233810881 1000636495 434417927 77968029 592027832 608849959 872520102 197681170 1044965656 791929894 670117558 452671423 577919922 281260789 1056851422 971737649 643177152 942321958 862737635 115343541 336639962 503938048 359698027 65889810 45726984 1050015805 72295064 307698918 643992428 792054693 697061672 936584638 281871623 235340447 836453948 458415039 438682707 700380733 836257498 163531063 702954175 521084194 456118434 22408662 937629871 737363545 489414696 768885719 770612755 46103171 736889352 515823520 1008077236 203202228 448348377 813953210 401526638 839886605 302783028 825953706 574104932 250584834 946877439 753652941 82652939 200410738 242961726 446550710 864714119 4554544 578382607 586618415 550586706 948787025 1000256927 252524501 901623776 620374229 485016065 817053287 1017334451 354114520 861675643 470275677 158657746 213993844 154066676 259741530 824524171 643575566 601961462 723210568 811329538 621624548 137941109 701147107 683738103 92432743 693368724 1072384163 489859132 60609814 982172816 89620728 408623732 831211707 830553175 53976855 569895315 97924658 578003624 863497083 633822847 765146295 890190346 194115264 300192657 732473754 980477866 541549217 379127322 48964009 1065937869 882992275 190003694 1011296945 872725312 721657911 558476149 615758202 485440908 491119057 879154392 17904368 83615698 932071812 473966140 511612046 512988983 1004580633 1040182230 242226048 298585294 294781992 763440248 852744548 147532713 904362020 751058653 787686323 997397809 437485663 959832506 900737126 246201063 734563258 32901993 895042936 317697852 663706863 405976591 275915613 690837583 519859246 394067150 1062256842 682107472 305068545 889970698 733526428 548707648 496733553 886968644 1004789318 610214034 584471668 202135417 230326997 611081414 350569005 463020547 486402831 247870979 166354645 973730734 940719597 104964733 584049181 569185799 393056759 555408162 541831990 448541386 641721928 576745851 594400702 9099431 621749559 113996732 408649930 402020226 596846447 518470590 650019150 1054658690 41398204 455550013 534171029 737683798 915391135 133397137 885748972 964460024 60005290 581618183 503034443 315517242 536783706 411687844 1050393515 443930357 1069189888 41287975 38927093 436801692 249292437 769571115 476985996 583047065 332803003 1053409436 627789462 31134147 1069938498 729093062 814845760 157387127 358331651 1034739958 972778098 478905102 318778240 241210201 594790450 152009841 41405725 882691964 11678372 830981443 146470230 441036062 863048182 1061950268 164040078 33809511 758219753 623112371 114005946 718376373 883445921 781045627 24989676 731273750 396802492 307430902 264501170 788726743 464341675 161652727 79245745 1049285059 398949164 648716967 740758627 26357522 970358421 225127240 561276376 307287325 1013312386 669848420 537170125 899371839 688649591 595560089 25688472 877120499 680622430 26230949 1048017052 276373913 1012372516 798389410 1042783999 69510261 556807477 592160751 538996727 322233849 1040472935 354901457 580386024 613322254 321373497 749832719 774375048 899040344 655846620 405458875 740183483 330510652 1001970740 216765782 53455300 442028759 102511681 419218806 413247502 820497368 17086721 74495765 273358928 124710848 754406902 566818339 35668682 534151023 118316246 53206834 813304135 563987677 79949370 931840050 809905696 745006946 683927594 969278840 11002764 289223647 402282533 547183598 49501638 163148483 414731260 925978795 504045178 452565793 12485480 84009060 724327955 18920929 518591249 723781745 938872019 965506470 382932453 662346160 28512511 507442402 58964437 1036118244 986699995 764584124 648068446 123191314 524819063 610865292 507254980 483280140 413972037 192665516 241544687 498015864 338133682 567990354 60370066 682016972 398739794 623724856 914728307 825680072 752540117 594517487 1013446977 855205441 238399754 1032995848 419175105 16263520 490507275 294564815 806930500 225940485 229767390 844236605 43696786 534329342 648728947 914541951 86332450 1068376636 546351244 663816479 163587902 549515087 103667731 978652368 879804520 858793322 372625537 858606495 211338791 610535631 327976586 759238152 106510305 513191175 706065793 961730224 272324957 502474218 11481790 794503518 8745020 635889423 761305300 174606505 23863247 327768700 938952582 89847282 146185642 1052086055 502508763 413918767 122565242 583999871 1037648974 802931851 472140599 632855276 898342398 796495600 454287092 926835167 411013316 631445115 928717217 1015552175 119626062 326435841 554556645 526326552 977931267 385212704 251742151 780202343 808238381 943893440 385093830 95998499 842382978 958807223 272540210 142331576 1046355216 1009884613 707571133 1008015392 505571706 882301629 1015280336 474605328 273695931 965204821 248797845 83051433 857255128 736643122 480436783 473499325 122702696 714891744 302272657 223230358 890044016 984274026 440508418 1051185910 793738902 948234990 702719341 774068567 158519807 956689064 452603826 797214612 616820836 250649037 229412518 832950959 447452345 551958443 94284255 731599121 481949186 517574398 1002641089 728358464 1073596159 590691353 240400475 326348562 806974185 645327897 908323391 1049322208 404778586 90977759 302218043 884048854 842240829 759484492 707157046 722540317 713482333 678540319 294725470 62653319 276199927 328334131 312210076 999248193 12937641 113073847 262144328 79345722 303488848 417405673 805893858 159605072 234845030 116802869 6395527 196406310 928934003 324441881 320570989 155954101 555335667 227452584 130367442 1464952 1065138382 878687286 942295242 313711820 736032424 102733360 630994529 280734354 1042221678 1055288812 689596665 877326321 160104090 737716448 77610354 415113735 818481825 645409261 320353936 453530621 1060412819 890015235 209619961 358774885 936337003 431028801 197579324 600152027 729326306 196877433 883940562 358175469 22042969 673467518 159369877 865050475 972354476 769181621 1014041228 165058976 126513186 997866755 171107169 535760634 66575014 17709275 126609256 806746674 748474441 738404308 1042291364 690235948 818882426 120048535 139763151 589697658 593538655 1049938958 452835226 961973198 252121054 41262738 64602158 469435059 468537042 242923955 33546509 1044035424 707865480 536155431 202170694 48687953 12780656 634783940 280686588 598262184 213829783 544244738 247995800 887442470 888475389 433396721 109478528 603971521 423184696 702373683 330900656 234378625 879436398 893024479 1067674373 323718695 307453083 499856149 983366594 58241765 310608095 193421255 145371142 302279961 557626793 881433731 473226297 1037451203 206978518 340153089 155319719 786906981 230668366 528549829 442574359 165026941 989261972 93392553 281823322 850227973 747300285 269880614 650559559 17192414 1057965273 928434071 1064968761 903173962 717455685 1021453267 443305740 521381600 291233682 801232421 996869514 688180745 84483905 141174234 503001673 1010452788 755179230 1066405761 370826624 1023306344 991291812 454142651 887137166 617161259 730786741 45719351 207555664 80279146 546044411 812704571 110320350 392392939 526558468 474357176 831210644 352620205 14008095 75167324 953334800 786157803 60830173 756646707 292890168 752788945 210085345 1026405078 297960204 434675898 427161894 1067014966 400340840 353777611 699958340 1072171425 221361881 656249498 716433493 233042477 745948799 410828946 1052890866 221811966 326766001 1049587817 177834692 535678727 872117988 889865047 1000968949 580310634 937191003 718255624 1062799925 309359848 720200366 138415937 69182472 852644368 821163124 586557306 660072429 20751719 143179944 685283028 543192811 993425110 1057996453 1025436439 994366960 566359826 716376972 388880640 85745336 1004999277 223182335 786861432 205023305 461144300 987763959 666415933 7523670 283153310 766672928 19681833 904390452 998335079 347004892 158263103 300178569 285808198 568474891 800011348 700006569 514378020 724538543 604302407 700684138 939943081 176486820 862993805 655997454 1058812918 530149815 20190419 856355075 157500958 373451906 713397858 118358607 985290160 794443963 401887551 226877861 600655963 60137259 976579861 883628330 480007659 757484748 346712163 902214564 459905698 583063658 336649814 420436835 396935064 782679390 930939479 593884273 396184870 606601990 905216675 434168195 299565966 706107000 528862031 1065693039 76553290 44650089 515327066 727297646 822986004 96345629 653200601 631086520 1028707529 313128341 503245104 111512839 38579327 993654935 223154733 46025021 557857056 190727012 1030263983 334878729 692408061 778016969 119636271 872324251 723179970 1002438485 499747233 452703519 9090024 697940204 606179218 384606369 278381392 952309800 729139739 494450520 716165506 915182887 842321193 1063596103 530905184 43226034 954776473 314732033 86798523 654436092 976081483 949226818 863784611 682739993 922480972 182480283 512183634 569429158 472013378 256188920 775814930 836853079 969122322 689031946 744988054 667018037 716252090 817804434 966123344 856026521 290717566 922712949 380496941 965359254 967457474 534703905 214132632 861934840 994387712 1068063341 1062761659 828242800 435975959 411869319 837101700 192627652 187459368 988286859 645674336 1071471212 960480890 210811789 891545840 409762738 456257648 4116938 581803390 705596406 330056907 993060033 881134540 755861928 358478351 455377424 1030051229 24094850 882374357 264740736 155207849 637087718 491311869 301384015 758532056 776430376 925147021 400903038 517695859 1066022976 481829871 26737127 225311010 905316581 275858038 781815913 784248760 864727762 1040309590 1057677764 34420193 977869381 88489680 107106432 712587489 158004833 68427159 641237462 811038183 955578161 342374853 818137784 845368443 506086158 843314977 1061900418 1000535463 51359928 459850263 600072193 882224437 453805294 237612306 1064192175 250204904 229670844 196990380 224784853 664645573 352839513 437056518 295157650 428541197 758229997 424570802 392328017 17441221 560383887 797893241 264443071 923416949 94719809 835152555 555422245 751462149 479592932 206088313 315464222 24884793 817470492 563455595 108552145 875016930 407077243 968012765 716723054 1072092823 596524227 969183252 431875413 561254762 128468066 444588620 595043793 637660109 475440208 919304468 532417777 716470651 658136795 586592008 780561560 885692613 452053986 32434459 882965302 335464778 51033233 393086633 805275823 276803841 46560962 26447664 830261823 5179901 653413590 222436933 390599066 601696980 1018216469 551615584 732847775 683361207 378019155 547632759 402938587 299863201 166964733 188847718 410423285 306785198 986379563 497864196 968794723 273586500 67880243 608144955 1071380079 836161386 337103270 118269744 351332948 90828095 40883404 1053778770 617604646 548328555 919133274 958011381 666871777 1005954061 662157949 312993831 348191906 930971776 1070082854 705676132 756260520 539774990 953403203 1027431371 691782329 586624601 756195279 969302888 681192213 72430805 561152600 835643982 749846699 11235910 849068097 682861511 523889327 49395514 321988647 59951144 112014925 118104159 657398194 728083408 654856767 412489306 235354977 485826725 221297871 814705346 552931802 731790926 623190417 457977924 1051863219 404123370 304402272 1026816543 290995754 530732767 328289433 297864684 384862405 585860715 331775630 348166874 1065991843 458416374 744075562 1063116703 645148995 680676977 882635025 584682548 514600996 31733688 660690647 422478984 817902128 799025872 835005388 430825231 706581503 251940258 132138654 13984961 693686548 159922681 611025838 515337271 465229162 231460234 193057764 201654693 879960279 624804408 1060994183 854797621 115452882 269016475 927293538 111002191 833493278 339818110 879269017 948200103 846579390 326012108 539377992 662650200 412965383 657387235 1022429314 442870066 303318467 1013642847 1036174037 427359836 955295962 1027423572 139379896 714637522 580622891 28543456 300164926 1046875565 757351304 99097644 488855031 116977855 100849705 97678727 436800056 204065701 739941720 608531724 115465733 777905823 796871582 294696490 251434713 217794391 50337423 199564979 76654463 210485598 123714329 544038915 227695389 1067193226 140004901 349543514 505464724 998170052 996213457 137059427 952835193 578490812 1024122746 150983519 204525717 126629534 1052399391 427352730 212013367 213446923 894035835 253177854 363607153 1017595606 792566202 401981825 985993951 31200974 49131959 596208911 758898279 746897789 964446540 43189754 834571070 306335939 355490698 313667602 321780171 62852056 645754767 155084339 465648030 763248833 920724462 162760345 1051995655 288272738 697238764 868805420 871676888 990170624 570189698 440055637 593621782 178521735 659785677 678378371 661359566 879929712 147326749 324078249 883942475 309204274 407605349 483706382 1056303527 572424800 406588093 401284851 183829227 749187424 586778995 609439709 523800522 119265476 438550507 393496947 440752772 126086068 748944506 719827750 228562142 1036536535 228168002 864705461 531408735 314989647 957943560 883766497 705093282 201547833 421431545 803454316 725935108 86191649 475607594 390627490 754597323 452672466 689852134 652486246 491246724 789506093 548993415 146753303 437486672 183455297 667416177 571602709 1071599115 790977430 747064194 1018059877 795905406 728076541 723303378 800175459 391903729 489033775 899073538 853669120 97655455 65118698 3900051 263801 1008994709 370926916 765389651 1046867408 291309230 778940252 418580916 734751066 808821524 422510026 581785206 224074768 915190762 681160277 363253273 987004591 338940397 571544135 408064523 35561622 587188221 50237263 311247495 866957076 10281669 463969410 111975785 737749752 518491415 415037423 732354418 547562250 859976244 114193463 174308269 408290939 236257243 1152340 1007152840 550688421 12728292 987378656 644412546 375586336 566150659 569101769 703492016 842088113 549746920 494018166 345809000 792993835 434323552 40247875 706450040 384265703 570850 187358891 351752225 38568081 154211521 537269333 697174909 22726880 522645917 548766347 1050827153 572316717 723365645 543750503 629052344 580845608 75495695 324529402 195649646 55816796 147364179 481674162 627777047 547611618 891531304 289146174 703180470 118692031 56057550 753090747 127627370 33808344 1051363652 675303845 805311358 437300877 595939174 212355311 599296241 8650004 702016600 378319433 812984219 982524639 354648080 285824030 773061178 355017323 904213626 679462147 402220344 570123970 680007680 125930482 630543048 437250220 408034884 744052024 18218152 518420893 710595941 958126731 197027 862621058 19654648 801742538 706040373 578217467 210959120 508424973 658219633 330993055 1040429975 641726990 56607069 375646388 51613662 1053713868 294347761 892707557 954619586 37958383 904898943 397282225 314879712 335855836 369619166 833003351 679913757 581774658 799118340 148686719 66227010 302820363 45918764 184082742 390401720 616472204 574046213 597122938 482944232 731957651 528196310 867263333 41544708 719733533 812705154 129756404 720123866 818880408 25674360 438710352 838545559 544136481 27719993 689173987 278608436 315884647 93616937 331164413 760191501 225291421 721714476 744051158 727719417 995043569 706882220 829524187 669772165 557875642 1012213735 62682236 708421555 862517660 434907093 966177565 16854655 1007907032 364547632 790950909 712586867 562038719 388276781 618259857 499711792 463989973 1051738834 641441427 792745059 586539211 88993073 89811156 110934417 955747641 647984922 692225884 538363888 111891683 292583186 613497312 303643638 828679769 9449029 1044912859 471147537 1011566169 68981111 351042010 338469479 618503878 285005474 688037671 179598359 518854051 135540862 927571066 1066126599 388405680 381342068 54942521 681127833 784357777 220802345 85351625 138000646 849537410 882177030 672866548 444700386 996361676 132478552 131653656 371472724 728731088 264718101 1060419379 790507893 106698625 218131049 680727740 1023741600 444663067 422583510 1045888939 973545616 1063372226 223425084 491202053 204950085 887908004 116950611 817530176 741029815 153672970 904605761 1015434841 493120681 803269741 736004312 628781324 746211523 57818531 46183080 663404238 1024164185 213687368 250209387 715714493 482965786 245008076 543270247 661799472 218206493 337914485 376160187 620362588 771722138 511011071 624789986 313810208 792330820 94470746 81258048 438553192 911841854 728265310 886581708 139924411 433488657 420269224 219397109 602368047 436415911 179906208 770812228 909847672 226957675 113483510 775470878 506297529 125417634 282059474 878035356 298666633 99115269 1027834118 615147911 277395367 210264439 706004602 962301381 880245605 1052100662 168113864 968663014 233234204 968986637 432654200 17235859 399649020 916090152 652151346 157651243 665179318 697535793 762649938 947502929 50232538 94948633 153006168 476335300 467254354 900366075 298387432 208885138 303386157 348752 772541965 539751200 547925243 736779801 483228114 972421139 1048200988 816781396 216195853 314775267 317846786 942309503 222364662 215283752 1036574186 230466063 223939585 446308379 863403575 71059876 736570606 966956336 821150683 340218521 729177353 932290208 836525031 794582724 726432539 867441262 476184673 40165876 1016665373 769452651 907104206 468915611 1011734522 415732861 239780194 510705371 384689324 1047309222 345323056 491747412 476279336 828630579 169762422 394620451 348411788 759269428 923082451 409043591 771183901 624345592 859789592 811561358 785097144 503311891 148759636 390263478 1058095082 90084254 368621438 1033097909 172272607 336546650 839547059 459246399 561544477 442072250 975469661 469319186 38439555 166800715 655910929 556238374 1052321922 415791841 781514218 729670249 839438110 1011259842 651228755 63581356 381058035 135027858 968717474 589009664 309027412 784876074 591191613 223894630 730076535 71115949 363262107 803169642 926625769 384806548 169760578 831132949 599033274 885024674 156730636 820259170 1022748005 289171950 890944323 621954606 311266059 87401265 892873758 708294779 106294055 621574445 24222934 852975820 510575001 989365859 168311765 668373739 656241728 551953921 910948764 571540373 860306485 255090170 1039642290 67774404 42908236 876246447 196640288 447521335 196688153 162204474 376436342 25349036 908772498 498134079 909252439 709859672 88648618 904914290 269041106 794908644 587761372 46861988 672460523 799389962 564075859 809231275 1056495119 1023122860 58952670 916861587 1027396097 94955486 844268905 36640012 943185833 405715709 715442158 400762214 227792742 916298393 459899823 317992578 838308405 302802188 314402058 755126961 415601340 1017166932 835596416 641082603 982369437 894406633 1073007854 101420467 566945724 30951830 210634225 216888978 342479005 361667812 675782433 967901828 463738964 620573878 218611178 823912526 659838750 971829374 225869441 865382080 426114244 373442212 841380328 654163079 37946386 606878129 14778245 370076983 254117960 956920605 152293898 768968542 869763946 31624150 679157461 457573668 287960203 771464408 990276232 635530897 58595985 733865718 466735471 318174398 1015254625 915580520 73546566 1025467862 595488102 612671427 184143595 47829425 785885450 994088350 844808094 132928465 865013098 761482966 142372806 352403045 634402666 502765748 12988271 739791232 440852380 1056292781 177770855 375880939 984980613 836008950 11186661 640306845 901542270 527840863 318591025 148085805 432863443 757600689 770249356 802921132 711778390 762869947 265029651 805651629 628370289 624142855 451670620 1015393326 116237743 441928911 136783014 141543237 597126663 606551223 952282147 897080885 792266197 358704475 171468957 209745061 453166956 197907276 933792618 670310683 876845155 958994680 105006169 507989189 1003621211 798151413 91352298 929947013 796963796 721197810 437686547 1021860864 42904275 502431896 115710128 475794651 36924421 694326572 402203027 457567542 769032364 640475978 912652129 832532481 843383948 116580368 305077488 80943374 992967200 972168056 613203990 131945752 852712306 749833099 503718332 476017508 967664011 364168490 759488270 596802874 330577393 769060660 312223986 20022049 27804651 45437077 1062959014 702872723 960126457 45895418 55128764 397426678 709401261 829685038 103443332 729491650 342404170 781139242 906868705 805156792 596079298 317013159 104665216 672703705 799238859 718376579 262255463 731867348 969408700 267440964 777024858 476486850 491208610 819421225 747268401 845578123 611796662 640278228 926729912 387647668 644319248 821242387 125920589 232517359 262430708 195770208 723119850 394716304 557209250 161321992 633145575 983859782 789742420 460901004 56752401 413615189 754489438 562134490 971617774 565517552 430249418 797193348 309417216 642705578 783417410 866232626 206877572 93808371 557649712 1045066723 1036587567 832926597 812442876 804340261 738556932 77073855 1071112706 361194729 259803297 431393304 163436346 768406370 599773020 410830053 556059518 1008084585 1032912108 131286716 83178192 148750328 133277527 657081680 897588639 149332647 211657248 568119381 955912299 538146315 852574504 236856824 162414209 158979204 710131922 954402625 310253695 877001681 235136430 568287322 563361538 445499075 476002103 838333048 851080430 443282198 830536596 722962597 279002116 273044335 699606757 490854351 717510947 394063961 640547752 263445091 314373055 55457363 712070329 9802349 19106121 656048169 267351230 15050114 552492329 767107432 47956115 843719998 681954154 738389709 12769891 254314808 641280156 856094713 588766565 78217128 100875124 666897984 459706096 46292437 985237226 493662535 1060323598 183381920 536731935 913128232 816673443 725059440 670901926 439532313 903181645 35536788 981812545 364076056 680649584 323835610 92848141 543161107 27320899 809783853 12167373 244635409 430874438 728501097 601249317 582034820 452618938 578093183 494339863 605074591 567412851 754246535 160178767 476944214 923710763 5770078 958523332 612866029 910905609 555472803 827406875 1070159401 923208132 619303969 690130141 376530381 978840122 593473962 714752714 135348330 557438374 128335148 81670815 581343317 433406873 818553796 80280141 677469468 457546738 933786141 635712280 843728053 35785441 462256609 737128495 746158200 782864644 265679508 280997823 266678387 474661723 292621325 182541073 358798581 909025589 105227679 641884207 376083005 947193030 147919665 463202667 259288663 941139765 589077488 215243344 429464983 893309981 10787095 8095261 754606533 723628349 305799767 952297756 509483109 476040505 616772643 1052663126 760638420 330288888 662563112 590102048 473081592 509702863 578511519 174207497 591099969 196439203 920223181 733381095 47791119 521079808 136209117 86166757 585633500 160291615 343787375 129552773 447650639 203203919 915554550 278863060 851460909 1042592614 990800803 968860104 587090922 786523309 321402837 1000835486 132891695 15305052 353131965 324201771 76467660 80429562 788880001 997955192 96426078 755825671 980679881 1052112637 465365683 679788161 819445268 125456268 992736796 831580197 7511411 802535599 341343078 650153154 92555398 1028607568 656765201 760730345 878036902 730144273 699089139 198441268 233975139 829918829 434658203 919755275 953147765 1062009808 846280508 1069801635 985451197 915724146 729534580 262015185 763821250 162338599 393279024 801114108 333728907 795928228 636426940 17696962 465374374 936966904 70219175 462313272 938820503 556505171 159921130 371350502 829157057 646900229 399343294 2392498 465809655 1004512152 469348940 717609671 695783210 188132610 516907955 366395556 1018232086 520127669 189419097 426176675 1000967138 62921601 216745571 193644600 55603502 104394764 163166025 38898741 586328597 183444803 381721248 390251498 981995970 1041238234 637189464 367072430 750383900 615465131 1011653940 926419472 1007700888 830592804 766582006 659068915 677389862 784415482 1071827010 1062694917 1024293242 120772170 778069430 714075415 615085942 775507808 18312161 52406509 157882971 62825974 180700106 865713623 1021992209 353785824 29936142 135365526 1066096744 56066731 410983881 927296464 56701153 542463283 540292202 803675596 793281864 361292082 315417101 127422469 595934497 794287989 174924861 457339656 592542522 210118728 662889965 162700167 980470025 990307859 721191569 9112412 873181856 678395732 72748683 319071874 859901303 99382520 504352922 498229239 987153434 404564561 421645030 771502976 959284193 854184397 565252952 630521792 468916714 1017451104 345553574 673913026 668626134 956202733 614396165 848732495 581990449 134471549 481949049 123552416 18492517 749506282 950966216 423908614 180290119 970496224 12611603 577711900 780024296 1011667602 488957125 969739481 907598902 580456559 95994754 338974640 666407773 934007096 872448310 98782636 774573751 854417382 1048597092 35197592 1021378789 447277262 92655490 678466115 180075875 956524810 561105472 890541461 1038788790 542362244 752631250 520423568 292447110 931852489 485322435 294609279 975267974 32110301 544465546 492348464 873521171 998918066 141537638 467907486 125966676 407764988 294951284 36042155 808882580 824254181 56097890 657911374 339082585 965224600 822801818 344707540 425140056 92611681 685881799 896544043 887329073 222325236 296952605 121557602 49848492 968665296 496882563 522443869 491968257 623424674 297742561 390223276 400022285 552251532 964299027 780350287 778450470 1037018330 90071985 438931592 236781912 992514788 740546094 288322563 418530952 15401342 273925749 836679619 221867874 143513957 935160355 1042769912 487780949 662374220 312907295 814788204 22765086 773063656 232389023 308584976 623154793 463341041 954443726 299104819 954076777 361914295 978598887 881420439 298960665 759312152 825832114 276937919 879197337 110068841 995596623 709843713 735211697 192972127 875722799 930888996 487356047 293208275 78292160 338817457 1036963179 820031698 963774959 922978072 878282947 335565524 27787712 98336924 144085004 945045769 658573495 712469964 434804055 28032930 97336498 834277731 114729635 906254227 442489258 809980862 112163921 172769910 599556565 209703269 972412015 240794580 198355169 438765060 895004560 153851298 500636665 636626196 301002230 229512883 875941270 333117591 882465935 225405805 709066258 387902673 766732756 328282574 449670140 594821613 686262830 670563058 1056394754 890994451 657940815 470535110 570697210 1003629611 778453613 957835612 321474437 579495789 564919763 264312580 836674273 661674579 380576550 600127372 182110585 265722743 825858765 609203210 970248879 397755691 380921164 690021419 310692904 319800844 630026639 229670635 257607632 878606809 221124605 553403448 1050936887 432496483 9115967 872773809 691392491 378944918 212420282 759456986 128141222 131168537 535074836 229698699 295377610 459810308 68740600 443849496 385831235 667114917 421845617 898295666 1073101628 469943110 825244855 643110669 924512309 381732388 64507872 51694603 613647163 746060884 30710885 253025241 44475901 304079867 1062830552 434371899 19154636 866820274 1022134054 1015157820 668114158 762981013 891976468 975000765 1068733026 352894913 844477480 566200618 383070053 785362692 420424593 62519994 917746389 618636500 701340026 938723821 243403383 253187484 643187546 1033576011 213289590 382058128 276082101 938061859 247019803 488993581 1042455698 724157936 375265551 715052636 418189011 1062137775 115244500 801028600 655756568 886018772 1005677610 119342789 391507436 539230705 526795583 855845775 659556580 253277373 945829367 644954583 642251795 579443532 983235709 886898536 1004277137 106604161 206957009 153646472 512378338 340828874 466929033 546992312 327891124 286792892 726576556 126309809 357530897 895056787 94028628 565779831 166319063 303691814 1022283274 861443387 458778185 654558559 177120933 968316208 1027352849 488641086 454006164 157119974 901963472 72923900 535326609 888406936 961176927 462313041 327903837 795074564 880299972 987777462 22720847 702534112 696225854 1019644921 596605358 1039642436 586096404 261667034 458684509 37694579 54850632 93654247 874861437 154041543 591344696 144643826 574487044 681253593 46505481 919255237 775834403 99828859 1066687851 75653303 940783578 872866322 451520136 845915140 349082039 420829068 915470237 86243970 797332112 807127716 383595621 235548505 1017555731 356243684 147220245 967646739 16930425 200486948 224909432 675339332 922327920 756505516 68131742 987858495 446330248 396182970 10048190 867923233 180351379 452778148 359682302 812587361 945047873 27266131 563753368 679046473 10213716 921455161 624939713 549670617 486547263 460216267 806849669 1004023992 350430272 59681171 116259321 742647772 129514472 424002414 777511996 586750585 240443809 278313491 606987228 16822457 619751275 812314523 448905563 375040242 856748609 955760437 451918316 183608950 19240084 514706033 11808635 940275219 1015144294 1015676908 279894246 300797480 821862836 146862331 1034189225 998823776 227805158 467153334 28266621 1005431852 725600594 1034764275 57695522 251193168 303317006 435790602 918867725 396299927 826203380 898616093 736722110 375412940 280767136 689634787 420810732 920817363 477031324 585696014 682148463 455396925 754416365 689765873 388231447 757570764 137095827 113291722 674509449 1014251061 677005928 1026909505 971881331 255807843 130975707 756902895 1060480542 530302102 31487802 647165755 176768315 552419289 373841103 956798933 246488193 1018672003 774455199 452852514 387532792 298567083 639153576 837160065 302647216 833362012 926518572 770453421 511094427 778431879 211882 941943122 804794241 410310254 960921395 193634801 900180687 954745361 143366905 464738656 336403960 362594402 472894353 128331793 480242638 716796604 951468154 495898695 391574750 714680470 83435772 509089013 660852278 228529043 682411883 952534057 916121517 722909020 553763975 842068167 909456992 93549287 25849791 228556001 39554034 661864044 332954199 1039341047 769498686 83937422 71424848 877979219 782790803 363461026 481754921 510083460 488739365 357788212 640617869 931487781 406295312 353575217 497731800 437448902 995323696 808480724 934412367 875679651 823509064 648514623 307438041 981462444 413318265 747447529 226727526 872845991 448923051 493977541 174327611 446648486 984979129 667317011 575355987 320933200 268283267 383582465 285336645 408146808 24422066 273498796 838863196 1056575591 1920515 583483403 324185875 894786192 649517778 256655938 81054145 597217416 166886617 678570417 948449439 923174676 443310577 892775599 738570559 594192683 810194865 388296397 747886393 538547015 103990448 608161944 344281562 100640248 260532536 950500812 73945567 581268879 676419419 862028307 135916722 823177054 1002061186 248346647 825423379 497508218 61711808 498915025 334088597 126578416 400176373 306891445 212647591 584664694 732178738 606796819 3853829 675639980 8825098 605614234 139438072 201595381 464653227 979675874 326563646 291818770 980431282 424003201 533607643 500199751 694537866 978379684 1037131628 315451213 693288326 893001040 887857331 876540520 539874193 484719420 732739020 44636705 645119494 1025090698 742861014 813027983 475289233 884557348 523478874 429256476 432493608 735407452 829904908 16606979 470425351 546525993 274106075 869374391 174756478 818692775 716372663 44473326 604905511 1016089969 303994674 336121588 814655700 401943260 607729137 37779048 22733398 363108573 245974926 988210730 354552670 912553648 212994705 918684195 646950549 586448882 426884273 732328530 1010967751 89346919 564138676 790916948 319529445 72241021 674545145 315914661 127868815 27912823 327329284 382806089 529112537 1051678061 99995015 576646083 674112125 485948963 15981241 938231001 763168660 999675251 545759962 963469631 912171182 405435942 494853965 105103252 631936172 533551797 832320923 224813541 966454065 443283787 1033120570 886248559 198209715 18767393 762825752 903834945 210187971 684282658 369395980 134674567 114376088 292959004 1000589466 854536150 629174646 1035815286 836976723 119190895 1071579232 179728034 770422000 953492889 250650583 653637164 839597509 984625667 940378062 532057039 275296269 732356152 959761609 255568794 294379002 907155802 35684834 398883221 669190630 217718067 39490740 618266615 1046840119 486998988 343228771 238930025 616237797 947081178 904019555 506407747 307163266 742771619 749493852 36403399 501379925 919405918 1020618972 102800449 911274335 385878414 731569796 1073459173 749803849 666160489 617364021 2964272 761941966 451353204 811874505 457816369 92221125 835673705 96278138 704980709 221568783 118282166 98123559 1039597799 952350486 1002498316 883670263 793923269 1016780496 76841897 124240365 791815070 816728635 186945656 205660329 143661211 260492362 313139737 16868147 233272865 571459079 1018666500 318717329 948946016 981920577 570882866 469779285 700583179 264921062 16815992 1057840261 141344945 943355580 181364481 4055547 903390014 91302289 863004447 604423232 839775398 1067187365 27093153 442728617 464962725 800016780 939901694 1056343490 1027198535 276065376 276866366 742507141 104461374 788511253 700038395 1058210789 695892743 514133047 426578991 160763895 269581876 612630286 241019995 84662350 618461339 22158777 725252088 805087249 892762575 518788358 3703034 962184887 866470817 60826394 102217017 1068145994 994253446 292310219 167804999 998630571 106199909 503810075 94099616 504547544 630511272 280055221 393751537 58318492 661609955 1048417557 909287779 686505609 818345129 55830470 504435908 446013054 461086413 999526007 777468135 435633415 946578955 717408183 43783004 761798802 161583521 767553668 35664443 408073049 129476129 135468533 1037348939 983136451 322673091 572071670 819938591 469528378 561762274 656166531 948590798 172816401 508722158 1067796549 82586991 48233777 945833643 242731343 124662879 551080115 28824571 359212793 246241681 339225564 889280778 928453495 735124420 88781995 1046826940 516643566 755339030 793090253 25444301 734100076 105339806 342567164 675841025 810256770 572270563 194696165 929135531 481181347 884806854 705841257 768334615 525081319 43058211 133247464 1035095414 770757637 347769279 28610304 821539687 74512054 136937637 893320392 439378367 228381002 213918332 688164870 111881278 242400941 96352750 564488604 555041864 837930185 115396417 519759200 290550950 347629494 491758913 114857055 474673202 561308621 675627648 254050336 132685467 845926138 401304857 790877751 448438699 205499400 918922672 1062772989 673399124 906042459 307746489 125922710 781779586 197236862 715274061 524513657 314158602 468147880 196345623 943176937 262467558 44093270 654607364 947552329 551213374 219085210 96639461 971183762 1050167786 311031698 407043358 230507747 569022931 609065368 464394012 220551613 564266772 258826107 745028661 20764999 103359435 707654496 348486883 922376398 989563283 312214296 395644582 176587068 55689756 112568025 971199396 1034506879 215697123 4119054 207555525 422218617 74953511 678019042 957020322 329519194 258388859 365061937 270491361 493829553 122391574 1041609050 1020447107 550177316 441484056 74580546 22267562 800721343 221226620 57375877 936156913 955053512 160013063 587714118 573000205 550057945 954110377 928181687 1030066801 985073649 497406628 966129871 413355140 339586576 759356512 260964486 603679967 283060692 825278286 356177999 974985314 538756669 557477315 415435271 559270624 791142757 58408003 210114991 433177574 529265146 378776112 592946320 297234510 117371553 730617920 598621136 383536745 556634911 1977765 923420274 779151003 817193251 95153036 805238869 218896762 237396599 219474020 962868369 578056745 558074899 663027927 493819767 292846245 55441163 552247017 184524078 195885702 620424074 192990557 282836629 376487062 99371978 569456447 488631822 1030895478 800387009 433230130 142318769 728596892 993759910 538316993 351767327 1040024358 60684139 981439003 845016992 75207484 671053987 666304113 621000850 506650077 644686991 208804453 542269164 513712629 120968057 946782638 1002078659 708015547 426054203 786483158 642257816 799686921 601927061 712477230 1002431068 442920440 469979253 54670991 874419356 524189119 772783459 115219799 434087200 180627388 646200931 224974452 680946417 415327952 999235657 419626668 80923175 497372683 659709189 226424974 473199305 905075073 372227202 165948746 792396868 536800480 615023553 650861111 910284370 909077931 491946661 948312206 712487909 806158870 39735162 654718408 791720658 173620428 626170971 745987025 295390794 616387186 8091033 480939353 754889042 1056583269 935801797 680164341 128990851 960664043 783947587 909736696 71665613 779502900 109095311 115764906 71945827 1029820220 308215646 386876315 140385763 330226292 525496951 12222263 462605245 259655008 351271924 1069789558 1011931568 1024386724 425135745 55232064 1044108009 567602688 506917328 622350424 1021536720 407446184 356873358 1007794648 877739858 408977626 481244756 378564693 609336174 123236056 81563371 755806078 34018278 155964699 654181003 588262824 154609667 146011499 25779215 780405479 741864992 298971043 489940099 53584160 236026938 528005417 376245258 990611960 408853806 965268012 269599361 849871487 464612821 387368023 973717279 809154777 69465779 371867312 642268242 340989648 8922495 204724342 948520189 206435830 900069740 925542815 815211489 122934458 350714329 531604818 451266035 615497636 949855152 1050726729 1041395828 719301555 603074850 79589570 315756855 15610084 241797362 164196571 454096796 47723186 312407580 381506993 881226422 263504698 399760299 243941469 310041254 257782106 626038158 661332786 669585530 1001853683 265047304 1006161030 449128694 719103362 231666127 445684561 606748417 725638112 850789030 92820643 299220580 551070325 87166786 12598197 559598302 547247136 584529477 202967985 489068284 1013418595 647157307 592807357 183709510 83478436 783407115 246127691 1024643126 201538775 43213816 671453001 934578694 1059140550 482893131 1006052624 499644777 667590014 128854614 549457722 682820565 20391829 585688962 393080299 514030122 416476291 755404085 747028694 701480589 667887425 151280635 166693650 773238114 1056813919 716621485 578521265 979188379 357375488 643002341 323281083 911421896 135082378 718314035 23073863 348027194 775665939 431075370 1025220473 712685692 622079711 468292201 517405408 43330049 844291933 461562998 185896300 140718584 441911311 238070663 181094631 369297287 638355382 241462454 602270876 421120198 967780915 810489914 63010083 934867904 1068390202 922987558 707303743 99978610 1004508769 1015807891 874017640 638749523 304959271 994788100 975489099 428686164 241993749 896584743 315682779 626834228 145752249 165513746 98956953 21334147 548595990 670198971 78765650 410096778 705074389 159375619 872191928 629351295 922637950 632916076 252823019 944438785 26528793 638033408 749174389 582056118 972483729 619087678 973118915 662966383 163710997 385643538 843596183 571511532 793275291 70826288 1015731733 122326405 663897799 486475449 26613823 640952154 394484617 988444562 900897142 408978927 220444460 807316763 66421249 691343618 603587537 480237964 1014221298 724780517 624844798 457086108 532585418 372673335 161939225 544446013 170784854 224512971 215049709 112737937 829583802 749034512 658415513 150103162 289185076 667515656 112836092 864726026 643363921 97192846 550230664 143723163 821305762 479510549 1052215214 156739768 103908068 923120627 461303281 515662437 734060177 995397300 1000525061 149622129 348550763 736857212 403453830 304652200 814384594 992270843 241085235 117109464 151483564 567975130 738451309 356435019 152748021 137330221 884065651 434285680 428684679 1016071469 715305185 126684005 1005319017 353760559 562660283 79724010 346279586 587251473 906562593 1071080668 21732949 534230408 391153204 14917869 193498042 768124591 1056050018 828018724 1041391208 373122198 754563169 359266955 65738892 1004973891 979952267 296165054 463225570 780262401 1022173165 295778089 106519087 107464965 476822419 830925270 209367324 842239730 567202793 984430116 59520408 435567187 934133552 345172787 803848029 812259529 945981462 97103623 600070944 1037995146 501688061 470359163 732046420 140059073 280092382 437643716 656918684 328290654 14030944 832879793 678654951 591927047 233565711 892236193 764289643 559237332 353503738 491308212 863077208 417966221 756972507 953749234 912118065 817199312 740365884 932482708 193252770 510325463 749223663 497119250 789246751 467135087 725826437 204334279 331567549 607278093 432768045 797357708 354181530 409229810 849745909 35072422 336440524 219119042 930033188 221011557 213989632 756362012 552855072 281384690 839754999 56203676 354035999 537746197 700428743 17555927 288456930 895254544 171353226 999877954 174601564 794235936 409688895 708698092 629206737 709831654 359073056 261173842 749470674 1030869423 121555802 162890180 671433290 1025909611 419670332 1059186386 288136046 196550090 1007738464 724547672 219677689 528287368 51947730 534253866 811656058 227048693 969495004 423362022 201805341 609829542 666715492 592832262 185150821 919379479 42875754 482528138 214978586 931975196 873984897 352097463 859715872 85317290 597952463 533270383 85450120 702799620 184523326 900124495 885621922 936299254 870659013 30873399 560143820 113517992 477156316 543587536 313297134 157429865 98661334 990711347 840418900 691535070 539543085 63740951 512150823 61147062 778429705 721797554 190495382 554254711 330511009 620641440 228411509 401683365 576497400 827665992 521552319 891134869 1013036940 870808855 577418766 775329220 990072777 548311226 170362001 390832663 459149380 468209844 1071266112 491189158 318849252 551726183 948380347 763324142 281621086 188565097 776543304 146463068 176454735 1064185127 708629017 1008219089 159197473 83284747 1030962566 779895038 173184371 334413868 461435649 1045150243 135967077 643339609 971486539 844428302 12512840 855262570 110633128 599813914 856449814 977591939 332793339 1001988441 352911714 547629934 709585737 600860841 168403241 490555661 562507998 430083674 146458981 572412356 61975614 618241181 806258824 888806546 961271073 574307452 419291810 763789870 800374999 193572599 493091902 612230274 590947218 599918815 486425364 936267769 240422296 103587131 484531852 899750747 1042443993 228903840 430760822 676832424 1042001980 450350847 705088011 824717992 963336788 739005044 172072443 383404007 285562347 832566942 1029190297 505531710 530389077 508262632 942822248 116044495 266484897 950440542 388214853 920812203 164425248 968475412 182545237 471580313 306142103 964448873 472832334 180824212 1023920450 378848652 889404642 460854992 37390585 121212938 338718537 533211027 803031578 221674294 68026600 145058728 458367537 578484558 380376452 365643633 662423604 948576673 629450739 991958478 101593768 178050469 213234622 924812882 794488370 689316407 720952395 746978071 436796048 673240348 406073619 759030760 1062053608 1073064937 263964738 715712173 436195235 358293185 451057084 521373636 607239351 528491944 807876312 767661991 733020697 948926117 73576547 699465702 469340280 291462950 199728929 834722388 243594278 203054558 598448526 855897511 291560731 53774722 893572807 888468608 914054548 646222112 974229915 472847066 104288297 346972585 486314313 426762383 679186156 466521820 746844300 42359838 70516554 218993153 1048985495 65332360 67349099 1052001037 689306421 398138205 533680576 925142602 644237169 211685776 677228052 1071213609 453209233 133421610 402843329 552076070 454872609 944136737 486639019 964709073 348416108 29870741 383281071 603924023 934576102 849316919 385246382 1024615158 530283683 69983180 519542775 345013299 522374534 797186293 607580399 28020076 304909673 351335027 949033125 963032674 226471230 312421109 948471638 453054384 512743173 429424709 942826995 974829007 546663813 97240544 99405679 916603893 889985330 157218834 588295006 224060105 594865538 91641955 138412217 325079878 376271025 831058226 219502291 271234436 206087070 749625554 221273113 759013651 447989556 682669545 1054131528 21831508 385558368 754511209 739436778 792182236 832748832 826106273 753702441 358982026 619671165 495846312 304555998 594529146 262743769 261472204 612277673 74852462 532568963 1000717251 497676867 343771274 856688765 720999371 962685659 886005424 358675931 595492105 551443999 745899439 57633173 446909505 8896359 982588619 710056219 952570642 810833623 158297489 515957419 693145751 219231579 682856783 145527786 581398593 955839072 713622470 756693526 182751930 60544629 96853914 849030838 605094138 425049559 243058008 892160726 525599691 998819729 592949433 858443450 831674631 754600988 371319449 764281153 107797099 824838756 795502645 873439477 680694170 403786840 375174746 606255896 838907539 28680347 567032132 313392847 716430022 1001095930 242796148 781376338 741767907 207285451 696790902 655685643 689308305 935392036 910858967 709062301 11750513 673842844 12711111 911932862 859950818 481421766 1002010538 416013978 598801971 131034063 994475903 382017005 399522206 258008298 855081544 240703931 242829739 767549437 705358589 98516191 995232118 416325685 181028246 111346459 789042915 374319409 51597336 63649617 1052785069 641270759 8643175 552400727 127783608 237212108 215646061 246529253 450444091 1061219966 672953547 256639903 80200422 641674935 263447801 147739676 948788834 971798575 34869368 141708478 351592688 186761593 896427535 638831852 763738282 87263075 763359990 482714567 1040792196 1055699607 583552284 677870132 29258370 335494940 965249769 519715701 580865612 815414031 80141614 770461114 697134618 652848805 321088833 1061555240 754723845 549339817 486955223 769214172 13738112 193287413 439906854 403311845 113435207 1054461182 835271900 49516825 791171019 718586936 273834328 930907766 671733179 694770474 116912564 715160664 907357112 1027950603 703109002 197050398 254420196 848150021 629116842 481499790 903748201 629242884 677021587 655295904 760539403 1065855626 990636245 713718389 916446119 725366866 898258994 492886534 350855404 532313846 207256702 964064402 935298573 249424583 1035248761 134953068 150848196 29257098 861371597 852467771 1066180145 662258968 985628834 741182663 118645572 666378112 298654421 56106696 81709189 252347847 1003190111 241057345 971485905 930379942 539067741 320384564 199806778 18632809 512443197 607800338 1068882294 777341628 565293566 463077604 216396427 334099413 718932204 702068596 369188766 1064179416 418933669 289741957 329727047 1035703571 378911572 658533952 941532550 1000297077 650976174 832995438 581395829 140858411 625623665 191720726 191602382 594403961 299595529 472557821 668613946 723750255 445110205 466432534 616490285 860797894 727398785 537356991 134216202 655948403 738747173 487449625 811144053 165477271 134831692 862950415 968406817 704247078 1008162800 76316653 203814452 976741869 1022272764 414265612 292241477 955537954 695137347 1000115505 184225248 838127575 259348027 630351678 665730032 873630842 168607828 363818551 825017572 494464569 1003115264 446959211 344136302 84609245 643048861 719867691 544724513 848105250 963542695 675707003 601493838 251186665 917681372 411894072 204438317 736964127 686956451 316562899 844804733 1046207448 768237346 970698056 898036088 935689036 385284578 111703539 523120955 667133140 35517646 714085735 855787555 650754807 541398440 710139310 23823149 110109974 332970590 295584049 203351185 454984742 1070431921 833622624 514137661 53367035 469190668 513615083 489541066 624082107 965730737 831601112 132571413 570678773 943309591 644111408 848693035 243116075 38719466 699048087 220588091 920987879 809896207 844497814 187262351 939737602 274713743 61546940 462912518 529690648 158757425 570430390 381526537 52971853 703190953 279471970 90108980 722334022 331001225 779694070 160437951 879170774 305912449 394021660 388988926 159197584 54888729 150656624 825411706 392512379 221142770 385230792 225958294 184395697 597538873 71305975 490912251 208171865 651929350 939761387 629626416 690848924 12545607 729719509 8404098 473208705 519575220 438169109 757035191 716465196 749341049 6934130 22288022 540714947 809527426 888401578 881632274 104518604 225113186 825854491 682456280 712255729 943816819 94055403 548948936 190674652 885627698 158473759 98112934 765533713 699309490 545596484 64928694 901582800 506626052 962168386 714265133 471521033 220952920 712777921 411006229 133882540 415118166 425668123 184306935 287716449 472847856 306196583 930193396 483831449 591675975 577076016 461497389 398019175 270732304 754952121 764356597 577534971 165164931 166611178 638520808 273824064 443569781 96067551 971512052 720069990 268386378 906531915 150601464 848220710 458918982 564538351 72866282 48728843 799640216 1070383268 28817529 500481115 207717134 380255636 320238075 775436936 250856587 259051312 690195049 554669174 813366066 959802380 78385040 448177152 687423915 462393133 345143573 811384694 723751370 738586305 970133297 528461074 974923646 232690131 765002246 307475202 817940849 190486790 612032105 322981469 370084206 118929408 938711382 541743358 289290729 643955948 315594234 305049780 640983554 1005652658 1011037344 570108284 542838884 325566854 1063111393 76356718 572611330 230816123 2627049 739263175 261477571 199971198 7286854 774051451 474020957 260083993 159400348 577068377 318609858 704394833 507988929 648396857 32418707 276607044 126815767 407871636 639610407 752336335 258177099 478420638 8563945 587950209 152664058 399860708 104432121 60592772 644176959 39388876 576195129 237001847 830878212 906812425 394659593 586389365 874466517 479409357 520669474 541801742 440223076 382586824 851577296 872274464 463216215 242881619 364737051 623601685 674662271 627388532 687756288 354221550 912171861 852854095 57300136 136879764 1067789776 971848516 328423242 759024793 601546683 320867370 225101125 810652437 504171914 180713076 969998882 881398719 905454989 210432379 366309570 937632446 306985039 362901321 797906837 488332939 477553234 931315161 248547743 127502982 19325953 885730193 289826699 139980935 669317644 271393402 644094226 166712364 241172373 570801878 649982014 685838547 136999678 481166127 1036424577 129912014 281410438 779477156 576671766 148941389 756448430 852434287 1015909494 983752571 522992434 972807047 813391641 970429628 312374988 441256145 786606478 521458146 406069797 1034062642 465691147 685814204 578218891 737721022 347418706 86391852 586980742 943082638 1062093298 358196000 191325491 951842453 773680406 127676057 165050653 634323872 941610791 270322254 649152691 568140197 448367980 791818971 884257891 254139910 483853734 352260983 522480263 217164185 662050638 401861591 850375574 1034476208 1049412109 552200214 705865425 379749105 300206452 108501972 1048414522 467564916 497050057 563376503 667870937 613240442 620677383 618801329 583027513 421726697 780647464 42890809 371694428 209555788 903896824 867625883 645000791 98543701 522035335 112118464 203690720 672860720 89126893 141511581 429539503 210296731 1027318827 415517712 1052806100 304217163 260722343 377466420 92180727 664740888 993025173 504259482 932606858 113009777 223187060 638780163 509650558 331276369 187761780 351267185 466955667 311936855 856557383 1024810829 128740442 107615108 357102010 647166387 324488442 16832267 169555728 762200356 380479839 861592118 1033559861 458232255 661337908 774201823 475873848 106987088 791374260 316663044 458641674 619374292 409956477 427112028 104979739 425001166 831518 304597564 788791628 798870450 650195860 5536597 721270655 935918678 555613562 488688367 894403263 159562236 1065025894 308097942 1054708984 427844518 67888426 840175575 446253641 570882434 604918433 677635694 304580730 197861280 536133254 983334603 384671390 716204116 552346507 983535317 103405532 273800693 275850944 358362807 286302347 974181549 406205978 207615867 857623730 828495879 735944061 196842423 901354631 431134941 179245960 1003240423 776403999 130725337 766799620 50270670 243801613 505473210 116300944 500855039 1012559899 326142850 473772669 534387858 152814818 104626136 218696640 786105040 302675580 21647240 606383354 360502634 672273396 960787861 803285469 442041682 134662909 208391654 267088198 605994921 754665843 136664533 482561661 367909607 822071615 328915744 994543700 640232997 236886946 262295331 466864335 711309801 941623247 647346479 96777680 322330424 308283019 787458928 783024815 845286413 927092717 241812014 207381110 970485687 959854113 216492309 380934532 493854844 907453995 497176965 639990920 710797162 169742877 533442697 758054277 1010809095 578568874 277063172 572002674 816022437 410693242 332603767 632798688 834437017 266661612 327432330 848949255 52736105 1055020789 906754750 189028924 924038575 891753671 506660996 1003858261 981085777 34461180 1048520827 496424941 327535986 830755804 133401545 386879808 36706531 494974156 837896454 1062983818 643949733 804203507 615835440 219988602 696539193 798238419 47606368 415330144 509329243 613516949 769849580 48045692 886341757 849694602 124353994 923671532 273772269 475650675 322655786 478533818 253211180 42846152 668422769 674995634 533348679 551791177 833126258 624916729 507766723 575058856 487574167 71038867 1059056126 350545100 64566808 223489713 793066180 779966072 227168572 262020337 112085944 294901135 449243899 979484619 906728139 905967779 294229814 230857956 483071443 806233543 203898151 1058793818 996661313 247906790 643356727 184674859 224642730 737390617 168553674 199669045 800971862 559756307 57272883 215563208 489575383 653122415 932984809 249418798 885394761 1068181528 113659100 47630348 481425273 586931500 668844530 994244006 538319049 1030749365 185537557 298109386 531964730 648930531 998156523 180144247 223955270 375166674 569321058 377129379 701453632 1017227257 957067937 115026460 948434815 559648398 1006211674 578469332 563904358 940085021 870344882 871325849 59011538 771561040 699760134 864723838 62091029 44003615 562232419 975603548 618054189 457289750 809080708 144918262 1004823885 618193882 795112532 10134161 585109451 198103409 736450687 532376201 887194225 924624633 843207580 53600209 872883704 518580973 923968843 97236222 1045188901 85803845 688878391 1057468374 62544202 1029102649 309793548 521931949 877082042 324028593 879267440 475188905 870609249 98667293 160818109 492366610 981198881 126220224 176565312 279939563 928232449 66700973 977320875 1070016229 65278423 804873808 578242945 372409422 896083861 915171355 697120094 1057600603 842993106 142474992 189669540 131137478 1002980942 574287208 827590416 2071781 367352984 654019663 35198443 439905227 981415489 1068645737 117863303 794932612 505330730 36622900 92454240 1004868680 767353645 330266422 234476665 67387190 112225497 491200201 860601069 521287717 300339353 492998342 1071125726 763935341 820206392 625584723 61941351 495956721 63846642 423653918 176134940 41573039 765249449 146850933 1004559622 816522412 917185015 1039750788 739984536 151520857 967671533 551044561 467963694 812488597 297195752 184609669 1002201490 229585463 959316125 1036626082 593274237 1011658888 1038002252 164762691 21339631 797475211 1030741085 109548316 513892302 1032492797 748449470 99610852 319021421 948066942 363831171 803558412 71562480 94365537 608285793 817440370 300701977 545297948 385455003 276463838 677239917 910729583 857196115 617433407 641053072 735468337 420326093 941306327 126519206 178904238 742668633 54183481 118317708 224510895 958884807 44435306 861035914 659657564 417493004 322900691 866840161 559473642 830802450 521224132 983585314 83430543 732280766 390595053 756025375 86736619 460078323 1031693620 758870850 1051916860 227705858 347764301 745577529 734751399 462306770 257241621 385852904 783434868 217176512 670662391 124313783 526530606 275446393 485498218 533461342 1013828608 24136156 760425694 710304245 960018672 811739608 252522082 682839122 76167016 663932630 711394289 741674305 1048496085 102048131 33812889 855795360 552799823 427752986 435383070 270071037 305948960 230010401 812917 506254570 128877367 236354801 569688693 525440152 283907174 634987473 292001565 267975136 370173157 417799197 42260919 535224000 68823595 1068832795 680227066 925084474 526718320 752214438 618400418 667112624 848307378 271763693 164613241 524017270 902118868 700756482 922808902 429457483 986823677 1009424045 776114703 336421655 730498000 193586182 324792749 488764735 628154341 418462259 963786081 482902053 660969921 653307822 298613837 179025498 1001076162 369375093 298987372 680413541 659719619 187180652 756443753 648730128 890662860 346379127 36850455 1056245391 15421418 199667127 957346896 940345898 69469614 909250048 574943848 389207366 997195476 699495888 1025242419 793224166 470196211 700048828 476136904 453373886 128951533 327818429 203592731 472705956 411646757 268874758 153593237 556716830 308354492 284375430 837943317 30455284 805821855 470810255 1058883780 430331273 1052559567 982759932 791067053 217116565 1007385276 929015438 994524144 615696475 400714350 104981304 225999002 351418890 699835217 489939150 588299274 473849268 728633963 666024793 897490569 455975235 528753321 383963142 941060365 757625054 232067882 894793170 137892679 774338955 834252040 580704320 614211096 934544816 543469009 91506808 779719291 590659649 673941484 910594870 333544448 881558472 1012348190 462773849 828385500 696408476 811566835 782179651 195962388 1012515996 936747948 799433082 550324498 352478526 815718677 1060991650 870888961 828757997 1051389503 852936262 895733219 18412629 165744380 949767906 73882470 665146527 574252491 893763016 391706379 1922511 41492305 98391502 174006110 580155262 64229570 1069010067 1004168261 821824842 1057427643 373190525 1021782395 619260865 456832024 416297603 461105914 112365366 579261237 1018945506 167352599 120938415 159261615 446259792 462063798 879623332 857074290 324083244 104389748 852394774 1030004952 1002281395 165036728 255677326 604138829 277996878 897777868 108174966 90367005 943441534 946276642 86190602 632419051 445384593 807950807 156318668 814118818 656861130 338646243 747397121 708747833 248600900 316813301 855707353 1054850187 171686299 1052196793 249561169 1031526374 964687808 563473198 833662066 117508220 422135702 387279230 516550726 928844822 75600036 733140954 849536958 850706433 607652890 160219659 1033630873 768021716 861954191 416403911 755768727 108000036 106266443 36741922 342309930 402256474 94328445 904834076 829165864 925777688 577044487 856777610 735440794 1025734727 517071505 364619501 798370273 961701696 642269064 1032544189 415504345 409274032 510808315 192665254 159755528 390961596 734372693 81860715 1046446887 235560206 792137960 217846914 978890975 127969333 712652469 60769444 884237347 229687181 919952942 848475424 1014353653 74344211 378480838 53132083 233729819 613119136 485721722 342720497 909280189 543338418 606605219 302176003 843829876 482280586 6632610 999999114 339430107 109468269 312639895 236234641 727808179 329842753 1051494235 130853984 828163909 155821751 668530409 320475673 139773287 459849228 177899593 1056760666 923458244 300162667 932477135 869821214 675975898 411268886 105881598 913377394 991366631 908018455 965890812 361019051 714501485 32820561 768916153 1030362921 428004281 34862953 704162764 494633283 48058900 139099860 1026540381 24250152 847676448 919234724 277574779 483422541 693919273 797464429 604662510 69275964 363423899 309949801 669456463 100627555 233254696 383497535 575193395 319585958 53744475 871563729 303569256 557927248 161468486 381003249 999826870 883925410 629470476 742554881 232153905 1029646437 240515908 225970898 1037030231 751979743 149683376 362706687 669684094 887888707 307687851 143549243 899726601 85651822 420883361 7253432 673134574 298061203 81224703 725937516 698793608 107517676 230367814 860137306 977774197 449785379 1038005612 776332048 872749317 448070517 117046986 870757972 471562264 107189594 837665187 796002233 48533166 806561305 935059960 361909918 506378539 898660035 1050233164 1031755825 49320402 1068560917 581551355 871680732 938918904 855861426 1057526725 983273872 620724356 348509323 726775584 835021408 642716094 77960091 97416748 333902345 830080781 999318756 19035535 664275712 358107817 574170563 723540674 514820675 533404653 88792742 399338079 448865561 276672563 131327325 97293603 432081125 555972205 744307137 899706962 102851638 726597399 13033597 408251631 1001777889 695933771 589472395 834879907 1712425 224585687 999154037 230055958 806130650 632298149 156315157 417016937 158313267 962474609 428082059 304588599 728120258 1006435815 664550696 810760211 772872971 158211971 55053003 912692206 945391149 123281295 472542405 1052204442 610537524 682270593 86723815 581031077 453913793 373240468 784654279 729777913 926731172 870463946 686685437 108379896 385142535 899203841 68272442 443836870 465883881 351209793 102698749 317138314 321729513 122535615 68366070 316676876 915765905 353601829 1036229626 454197280 1066837334 678085813 1046508265 209678430 639246429 1019409787 452244883 113605758 627047136 816885285 158220062 869356253 607856970 984719363 772734049 344148962 739471610 772235888 453219259 156264912 1036650437 687632526 433493037 249815419 988361446 461774884 13868726 485246311 81047255 106198150 720428066 787537333 600337814 928142579 893217706 829826358 382147251 1015557548 924128044 376405439 1010834089 764516304 226829994 1024624799 145497496 574206671 385201945 85684985 947848659 729795503 510687222 399686363 951306314 423566354 621354840 1007273363 941250708 694343221 680338829 812551345 779377314 860334211 553063394 92514502 481373 433142693 232616057 770519494 803269408 521511386 259130618 191022596 902582368 34296685 20768451 667416092 593070639 429289486 987735572 227344866 984985976 321007258 221904968 605512673 500456108 913381688 748429447 41352286 329446328 434161199 453200135 263750104 313330220 185183432 717127399 171086974 201149315 168596491 161974126 34984049 5519192 139163324 663947206 660350607 973640730 160984813 917694066 395627909 816408953 889818097 501448338 937199473 175024319 891817496 48139939 1042914172 82244276 568236843 207678538 314425399 462217422 246273255 934833446 608260636 90352157 424509373 536227988 837338965 656112336 462672888 642122697 610238503 942552559 967447703 462777712 187066052 935958484 136367018 684289050 119802733 194350956 264455811 170748145 822721685 919210836 1022934736 261801602 309152797 769248366 546200523 495438854 437198174 701269758 193707992 510019629 94000556 216984079 659611025 606854050 811749895 61228036 605546019 846617525 374191821 108128425 888366677 527606751 48744491 453827378 923519522 1000675242 810736502 1018939666 875585826 1056082951 813615046 480339933 429885215 1062676831 928160118 450296669 793582628 708100399 152937801 847182308 573445006 870374077 230094028 69353127 1072761450 947862108 425219578 665229015 462991331 841747915 266522054 101066518 529679457 42352319 1027126120 791478507 270365906 33587042 678491037 36531423 536302674 220940073 477437621 288347512 659796972 86045589 1008289822 382772844 970288989 708065030 359677611 202764441 854629701 402560316 439893838 253430884 339744658 649865743 462801950 490042754 825639463 304398230 636098834 810370218 50450803 757080000 308573916 657555526 488900722 767860115 813103042 1001377194 165995511 13302413 585181304 1025257797 774519982 668923887 820682907 388274475 960377986 875080413 497272396 736672794 756504018 137280406 206734062 179390907 112588799 81973584 819562837 545064541 895978729 83523328 555536132 559943491 53970952 31416992 443592862 390741310 35825164 822275811 874767519 986475294 968608581 383866926 522493857 500540832 648230961 219287553 890450722 874348572 1012409363 77891711 252854976 167010578 536044441 157781505 423346764 876367694 676105107 404895318 440202869 937643446 280573447 325368208 120855786 324055752 1058238593 521035940 639108481 496631856 692913732 113412721 310154727 154142360 778441223 808333963 377055165 237667991 255740394 1064881980 977092800 611028019 151706462 202823246 949786807 592774941 207201577 576685956 274698645 287860177 41759822 265784529 386307938 737627746 412420841 129452762 525766697 5018561 307809356 994628503 784399676 306672822 262376742 1033850785 996187283 406181367 100225124 946177674 348338456 568216270 778026123 578367494 470224617 17308666 785256637 75845187 277932215 846844223 787692137 582577739 65312856 678062744 864512342 1457619 42496855 1073266674 275230121 412497297 753669499 1049154852 775582674 912764454 854953129 938510632 933405878 760349761 639477182 47571288 971160247 227660041 201132246 543923622 498691319 812901922 63292174 751384979 685501429 253813433 429935845 781312958 756100320 372011798 24819049 514142094 254194514 7622195 465031327 618932127 243148043 355838916 1025256367 698732015 469797057 957118277 372721902 897002198 1069770621 705081909 284547682 977625158 930934477 317067534 711079894 479069344 975250819 134860397 508091987 44612434 940660304 515224847 808366656 471058752 91427049 769643091 652813588 1002774914 551715502 13335682 997618160 500555470 1041056982 543675485 362140111 362850722 767076438 578856395 181068800 576579096 792320571 503686988 669549048 55363817 831172527 938476500 863381986 553766376 694182185 1038223649 768564089 685473947 707634416 386538654 909635228 510168998 412197496 395494096 1017717404 532395595 505915869 62494922 743336231 355510618 1046776082 434302991 555307567 397285208 448444927 567963967 733310231 311741279 391153654 389451498 3031912 456124316 1039824080 77607594 85938787 143111195 286618608 709113243 67250171 784773502 661275228 32674807 43053872 236985829 124600958 2076842 788499915 610385690 681220619 741450678 513180588 680689820 65845749 907892928 799346577 260156258 672492466 1062103176 299437243 546214534 1060936893 419284296 248087698 132180510 797802782 729519862 35827435 189779864 811475893 942315920 354634846 332205212 622457760 881061185 391656531 280962346 839429645 925510424 586871876 303061185 617223458 156999771 561315356 654902080 898456739 897029933 234083620 5961714 332439198 648078435 298258525 837223461 597573102 947452194 525054793 998844615 86805323 449534925 358859881 325406416 477619299 23866706 161208697 574022858 972777653 852250015 595212830 190402903 460046398 827808063 109743184 766730773 215364637 319981819 739799207 122741964 626471793 172555186 771826206 196279951 158631100 252886557 524336516 656143633 555100122 867419798 353555349 863916807 244382582 428947301 365993108 670772886 456621911 509018928 720240783 166077413 335717340 642702932 154132677 942854360 537606003 811799042 597790398 379254806 833875216 27165289 850329815 641223391 79892468 1017103327 876444551 632965807 404628822 213499635 46430616 19564442 1029893584 904176476 32065433 808468732 848377263 438617481 256337985 324594005 420035224 1029346390 826725899 151150940 616498871 611346341 477189582 555398248 1016884255 1276120 311730360 419807790 813753772 1014478056 359124499 7404422 826387777 177550618 293845896 103959127 289621526 761136660 15979563 733232376 306544254 236899358 394912129 9767866 519211567 170193878 355269269 611731000 88112687 174238548 48056745 618362922 250996759 486854245 913476303 346279480 93322275 785963161 753971496 987368228 223986881 385750592 1052309328 361796152 653715904 934689600 108632366 791132596 921308882 722138969 605629666 387420557 506206435 290103740 876009761 786148506 662288414 32776507 823663292 1030408516 986619899 238589222 58802075 388756716 410279232 438048461 441859574 373134796 376643847 386823007 984892680 754999102 939290603 972119397 738700354 276190961 786451691 505611321 293657173 192732730 865534701 792426687 431471543 713389524 860449132 116007941 1028020790 903432573 271132864 461204765 944285993 165198688 34671009 49938852 712779659 935695209 209108628 337751039 794240689 1051997884 455383110 887302008 983038598 948001186 784607021 960479531 555005165 372564475 822925624 943543078 241760702 842976145 587450471 905326388 691684724 565551571 689574798 78433773 86780063 415549558 891874825 441295800 619750438 268126327 279504515 56796803 329908551 612147194 163156693 717603339 976864669 647728981 325256822 111955006 483409338 282285248 601850048 1052063508 249659053 88637659 500524914 89073785 523387546 825654849 1006206743 1013499996 679036332 127145563 301122499 888422311 153716420 70228933 887410339 26352168 620424946 69571541 279888488 687996587 461518201 667600368 395093282 330453975 362434672 998313194 740134493 908571419 435542376 848444553 104235704 295765169 190443996 1054440265 332598843 152969671 406813657 1028294306 183813966 1066890469 770044476 1023889677 620633628 894404466 737966784 355394756 774725607 394382892 783689075 835288897 896964088 1060908498 338992031 367912519 724691290 361501308 1020138503 1007300460 92932708 490348097 468009313 684066935 42034261 133051425 119085436 101727812 610035486 870170552 726716467 916302010 337563996 200923571 1020564843 240706613 942277029 1053307001 3691337 898457616 1047699082 396957069 63605917 971123329 93400966 842560067 476432867 596890780 934411185 638089641 372872768 107539224 249613008 366124628 115663871 671743743 88045200 996420624 573333517 968769933 254665538 746317304 635581742 1013912734 594843285 941458438 1017431902 942843828 552790060 652728670 509818476 851839565 849457075 471346474 910191656 591449380 431790253 1054206543 411609899 408889475 166110161 909419713 257180030 359212845 39590626 133573665 29422256 263548968 504129171 712625544 426467755 982342566 709631234 300804741 441397996 10759794 959204127 56657064 496143147 11954542 195093725 117278692 933165380 942375721 883175297 636766112 540522528 344165738 881627242 221685334 8255134 445904796 26014400 773189631 386530178 103382471 949639743 266171517 1054535283 436243150 158064429 243799587 602973642 316913696 657293840 945399638 793694658 162950302 455322032 229443982 423019821 883681360 751392045 514829602 577272813 642591981 983030135 822854202 398062306 843089532 306224884 764013482 222206741 699699432 1062934909 255287690 932775413 376473116 856015556 376472358 892021537 376532382 336414065 1062762454 230117665 615595184 267236590 63555645 526032390 539932414 113536077 281162076 859251573 920574335 27861450 528906088 358098695 760031713 821986907 816077230 629921624 956599606 953142259 623147165 300784171 896570792 239232875 288616855 224029936 732707685 420312970 344629254 199100043 319660240 196005719 449207641 325366529 141306816 777232721 595633 872812372 865212214 416354447 848720874 826353038 382317025 445931139 195379547 752406955 782252988 579323042 487430709 625688040 674568543 608006859 492599179 576947029 832115801 80079717 69074820 212102451 168238221 795566921 943930936 864986463 496077625 577990922 243506161 242942751 63114507 113806854 728054286 699346852 185770170 833358595 672752804 1068268550 1031788654 1039891714 604510974 616989214 872481838 939271129 944439556 811168714 24657722 455333920 127916559 986704433 278004529 343349891 87122191 623855248 907614486 520729813 601937601 141903976 918490722 137865707 522760343 101042774 871287481 492013513 638266808 1068823537 814207794 122820280 770659561 679748732 301733278 365872846 422644085 14504239 382680869 811103479 880238590 802145309 972285840 130946004 489319280 385587296 548270405 44664800 562545792 893838606 265699378 265424283 941499562 495284908 560707270 47309810 851005045 754130725 577268735 15860427 31441620 835303668 687611529 617218328 669056260 700559257 566450982 272590980 920868388 221103651 687824247 242346795 565213408 865119297 749150471 82538543 938602050 991759914 480186925 981692620 950107054 942657874 215326462 528755310 333430669 600149837 170174011 1058885288 658690962 404103389 791865652 424891607 888055799 323475427 183286233 270557523 687391403 63834044 1057301031 942531631 1073031418 165659975 99948924 250782424 207880143 62632931 54492640 938062068 655151232 7035921 497195768 420302469 964025000 700284741 1067441583 948100785 190859850 81751243 768784401 748206232 552560271 605368718 575947267 356373779 157421285 85748376 458678605 250088122 627671769 168118498 35141065 204768913 78357047 379754400 889955351 555240939 362750002 153933606 313956061 951018521 451185817 1067085768 732410602 883018085 186773238 429264878 548254518 726624600 2189684 537930900 317130636 839545847 668038677 317128365 299311784 306697495 640584810 710348890 534434246 263645316 104534302 613736048 141420791 618892513 218791475 937610894 766987819 969116388 983772187 953897016 624992022 420860448 311576945 61711821 440315181 901022055 599021223 284541616 465744516 774991896 855908653 466980503 121442399 397118812 1058824011 936596737 143556640 875732438 592328497 816303966 254764368 1066380259 8288285 377414663 282481014 13927173 88443862 387268140 101272408 517703203 660979496 603770115 616703491 891131183 15397030 948638098 670611410 1029309270 1060505510 365641719 96202028 104569917 255716134 461578932 722094534 445915743 95523112 852737656 872021253 762946541 720959746 899530274 800487639 421382044 767759350 1039071282 740473836 835436942 291203781 318218153 394395770 951576633 446828368 881197026 489995683 628467622 748407884 566245883 628364004 241469088 648328978 681848372 639004716 141377206 324659532 33707711 733433377 657196415 256420184 150739538 767016246 1041433213 1021284893 485067684 125307876 1042435632 621584372 175158295 1006368562 18679920 27396957 181738893 890497106 309471336 1010942005 920710016 656909076 720994427 411634100 634513094 793018144 743661443 303165418 1014356773 138866061 625050710 633699674 104591245 716519760 892022356 883300555 592095027 472990636 31165385 90395804 685412560 725356468 335795638 845444606 734170679 159241832 361609347 703706709 53449712 329982249 412955255 574670345 314053858 489090373 674051871 171507825 412345978 84117523 21590854 258917323 528321901 364170990 572970466 14834112 747406303 495496872 809210549 645328542 775159429 40464709 248130063 673527627 508778866 1019365671 865840145 278439364 438112383 453240748 648294734 84166941 646383510 248838399 106999167 1048026361 439979222 44654657 371531178 432913454 849373258 233890323 816780844 467600947 49068950 404858232 541240198 330330124 416836109 171604974 577032398 208194361 204462058 780795466 737208629 644517333 756407249 642342867 906698288 762331498 846461997 42206166 390000070 913365400 177962961 56095056 254898893 899507365 118336018 980267589 540720094 677437678 625204324 908097644 502757358 191643964 289656286 12623248 224824648 302002446 222948888 327911572 93064059 564605277 292007024 57394430 712367449 382522745 4210924 817618344 158952050 216580876 478095224 395194903 401718103 692844493 77969555 976286429 834361969 486621937 317413793 803854665 183808494 586942504 419315187 941627798 561284426 622066882 448567611 315966302 17739323 38449472 548179960 821743276 1027645704 523694754 36215201 630749568 963147226 585000553 201196320 910289281 817498737 271104677 844665928 301912462 864276087 412666434 766690844 561418501 668824287 269598128 7223395 84707568 669431279 956004321 382880315 887267597 254004626 24459424 6557076 641779975 838548706 222478614 855441940 616705114 600163385 448580350 963184978 865873788 644904414 1044265308 292157695 203327482 423268279 653713471 555580238 526667236 795288477 656610962 477292468 129523199 607628426 1067015379 786842784 8038764 661546592 872941960 715196822 246116469 916967331 41615486 384350621 162790221 575402600 846288937 1050351411 761320778 252999769 17014257 893140585 810999744 94747228 691141543 446848987 560179751 703125734 359307139 587812483 744648584 340354873 692691147 974086831 330482961 1011654607 667255859 218238388 1059527111 383868800 281161575 795437146 225230388 931222654 74445822 779153118 558178270 772797824 746262645 845768167 611639821 73365584 744524559 73865635 535479618 996342405 226192125 923451358 826095329 945797070 217513707 402124224 896353523 192397085 697345841 288192569 949291054 171045925 597868648 814025932 603924274 513931459 301839723 776929236 941259438 751020223 217060066 837050791 65803184 498345259 712743349 956514380 716723534 885730806 944636683 1002928461 743554271 962202417 1065178505 894890120 615213458 742828882 295277273 847809365 959217870 966421225 743330974 964996734 201945742 145915456 912835817 507996421 958155064 346038603 221698541 458220578 163986364 145338833 874153322 507352724 607880137 286293636 145457453 644893399 844528417 17097312 893713685 940960670 108210955 534126462 427393415 144352948 748712366 358294948 406413401 141669080 641986694 328473937 858790913 655974810 651198547 810119106 602950933 554321448 697467397 972217829 418024659 993143771 364709616 897971762 351818693 1011419613 912676921 910270156 642279954 532576775 280285471 706353601 477656633 308570148 756886973 463594976 736214087 532545716 235618590 388950528 162465512 470298608 16082298 791588027 245927265 436360520 425915498 50095464 436177559 105590094 957444035 411923419 1043829553 779149922 527314236 462670960 1065080452 28391482 1876766 585995937 526390971 1054658523 971060771 285819465 287288154 548583806 617230204 208041200 819370557 614548070 1018659104 602632983 280984685 3972900 432477397 503440657 518647566 412187665 323518404 955598471 373813370 253009102 287313180 361113848 834582603 933124847 933352474 995906801 619606952 286718144 37314666 592874630 1030314249 919412797 114775321 336872224 633636431 63752783 824770769 1062735592 881206964 418236935 568447181 791049816 304208706 425168713 365451468 931778308 1034119333 736628921 333728798 549281880 416883426 190559765 283412695 539985757 858626193 592422650 324234570 761225907 209747448 739174 646433500 841667574 849853768 720058237 442873882 738300321 116654138 844575186 725388473 371921814 1045306081 780884162 206987636 265270425 94672004 327864170 978351341 838063400 989329728 808567703 64526602 989441140 124720601 1046030631 1066404699 642599431 390819519 1052778861 96026555 532216033 126597781 754790803 204613248 7167327 924217933 821026756 22263781 938982813 480938483 222945495 689352357 8568022 224856772 604995923 315013325 532207959 651430716 427145877 314216831 151314398 594457722 787729110 346921798 868443837 235820198 1010739535 74448334 1017871302 1057025410 682545162 627314640 557823210 1000438428 835533068 1014948174 219679846 1054318975 822255329 497503385 819637669 730431594 46038789 492314251 216219218 980336498 237905921 609763445 822041092 517715198 549747319 387720051 1020934663 621711596 373475311 694062114 19935297 882662690 468398936 79074434 425188742 817577149 506352286 403277221 592096104 767797801 225880484 1067177459 1000074338 737240956 1046822637 547440832 1032662047 155872574 863392792 1044816768 792427858 233977156 416086373 310005792 598028821 200440586 88590783 477094497 791308379 806657458 111115369 853092651 750598324 548114796 320930910 271724961 669267587 429361590 594149604 418314944 901664469 657543719 455445189 109395834 722251081 944064378 750020048 16311194 301571460 173866979 650315643 510444232 873594383 506161391 397738611 1035542292 815077805 306337785 65711223 822829360 997480744 78730134 177484338 931355567 344021753 198450043 255743808 91552947 71798389 339222800 124592787 732414380 544400545 763315061 519805305 1042101501 759127134 687700675 152020407 673178135 814412495 660018634 157217899 610448220 1051382066 725425242 598664457 763263098 1007023446 595203806 386859064 984175907 580810106 227902803 536498542 144630780 1004615961 1028120400 14453518 774020014 271829008 796043514 1017608210 1032782870 530761909 865780427 1058327683 888955648 274773617 1054017535 236821752 871007187 1002801970 1004265060 217800076 24686395 108427546 566669572 598644506 468771033 939475181 505336549 185393130 783790495 795136276 220380437 797382865 828386627 286229517 983066167 596842257 565928598 665818845 799710760 505862074 420570233 241895233 257801981 795293790 853432049 279647172 586434564 954987140 723365601 490791663 179711068 414759929 222954073 101886798 503457946 1051649110 537275015 904560994 788456660 29149103 891455207 500803703 928409681 241975079 61943255 860337583 398621375 501313835 648807821 38954869 976307 846653049 973356396 929246788 39964267 80469089 389003239 203066239 96636133 240465150 596488166 178510016 1071673929 842441851 250314651 316044656 393755000 663324405 243727140 326920530 654841700 15921656 856159169 741201584 988559180 959823628 79816164 495149794 814249832 713915434 341979539 1005303258 138756395 75133913 718767842 673269857 645228452 196729020 764316050 773579170 135517344 856665698 197852418 721750234 890989373 329087802 992567985 1018138810 65048824 285133666 25348403 485798693 713898924 127141446 429598311 571908618 760913301 40039719 828985109 456784809 908240081 202532435 864992078 856434307 96469948 769163050 824022496 513126239 380069037 404554618 561466272 603516234 781351856 362283113 554796719 598311874 757542802 1000248916 868852295 541251333 885447442 711384885 200703898 544420021 173328971 502914855 265744405 731562683 514281694 61866207 659906074 760170065 897023606 846722353 955282709 484392510 128492449 643528497 236656081 321003276 763800930 814365443 503998467 541076713 616628132 548247854 796169203 437085040 456564606 162864130 961819078 799675681 195815590 817814070 902265349 852533487 1000714675 1031420463 621967088 57104065 417132479 1052402265 551988104 625566096 909522094 661026137 584223774 1054333234 978065500 670504047 837065089 834491520 107960599 22683981 1015572157 1033874322 821356686 317890812 876100846 789572247 285849352 550807740 403242000 1024529182 173144599 860826954 188500480 209678488 873333440 283393678 737373876 866781362 934294639 639126612 341557765 333051146 507524289 343123247 965749087 91059151 608303808 516383882 45361871 67422297 990183368 951333648 519130838 421604891 876772208 646469667 829677947 673327552 88147061 378107902 798773370 604302346 81959704 758884844 922756074 734040983 694746938 555897752 647132135 702446994 241778045 123123469 911356554 658526116 749376119 374879891 43101572 1067555816 811481278 779255555 65543536 1065944249 463179977 466370376 1057566859 398111550 796365427 717623698 9907919 237427250 1022500996 726275856 936456444 833877799 39884300 81211466 295613498 36255823 797426131 207680075 398002645 824055179 506129532 799162247 273995572 199321552 278793317 306634093 411441646 790278624 13806267 756698222 573215336 294391966 605912408 189022796 786649395 766958698 80819786 895747251 166941265 579646975 33099087 613046984 472096545 528848688 244611881 170314828 225604868 410622156 882309549 1028202134 29016195 590880443 508167603 861450366 970549949 575710499 1018232754 201476797 20587513 1035443401 682369787 633047478 358731587 94493019 700037627 326798400 466860069 384579764 1004110552 621516288 221365392 838181453 44556927 616557199 630891761 698420837 661181598 688381399 363218499 690067975 924818093 84680626 435676379 150440642 399058597 657018706 790526379 152311863 801214305 51821445 658870050 781208480 1011728297 906794096 1016362386 1052127778 780959670 493516046 970298453 1002959584 962509022 566576087 845708247 679585344 827684214 956594457 883632878 972297914 174066838 40460860 370755515 860563564 1033152176 738255243 449086023 588998043 196780417 807127273 1022972788 856902493 379632736 864824953 220025523 38488031 980601255 792431043 151560383 628952869 275380088 585178781 834656209 161523779 675628410 590731255 571833187 390421472 353573284 818313463 826554670 687422973 330216224 890976094 170413312 854059662 999092168 330246031 44978155 879769725 187981625 53534254 674676343 20110361 992053569 141713824 655070173 489219795 788239920 63909203 759867229 311270139 535404 734901956 137879507 235065048 196015745 85123258 608453791 64449340 527901100 849569839 157041914 933978797 650490956 446544392 284931478 828069289 248846526 113276833 487818333 453672131 991886291 539720531 931138728 783058681 901287759 721296295 543948987 77255100 197038956 970470767 98160437 774693341 197489500 593021400 882783685 385557851 997060393 573968921 145189183 853799161 438697984 1014279973 926089148 275869679 1049970853 452913770 114599227 508992878 854674746 67385053 78850025 272583819 471832362 2057676 275140238 970631597 519992503 183334901 1055130278 360293071 767551554 47572155 84098156 922024464 923877453 277155635 536749323 419991149 187317414 518270118 980757369 950629750 144824843 525173267 690387636 459194462 217430959 338161941 936337834 905262275 649524541 745203053 147603508 790004914 1000899563 978699828 1050479346 138978992 678003600 385451297 698818182 614271969 643780542 777491913 816438081 647227535 283370243 1004864081 373340919 735480943 543755194 548783340 220563224 235820431 371616704 812818628 962623471 614280557 331072908 902340040 135679273 51248771 979287612 221880350 1043078265 664814512 414095973 42045291 223012603 185291031 32688582 410226141 140734115 227372785 744464433 257819935 1002791529 262535072 907052921 978705761 1045157723 122337276 188624806 895643191 232627383 991470121 279569217 780820650 991240552 52228504 834923743 782791506 534206839 708618350 970318247 890106390 321433618 900033734 444987486 695867418 748900650 516179804 1050416170 627683485 222420869 31594361 236960808 699459552 153698296 311933577 97553793 134470206 334641851 168450554 625529695 300290892 590641154 290736201 369700627 25358264 464259451 53844371 764250861 978130309 686435299 516138891 155222967 901989568 936396418 671676907 429088631 344360077 3000640 956460112 331430961 1058171614 951494856 260573506 490423093 536325867 788763060 103331059 724851821 869190074 580424224 712589973 820594741 70191466 750838411 856746959 219194096 735759729 708558241 741882383 586478820 1026531212 1062043886 940187023 411251193 13090772 227842916 340969256 677130684 212189597 260135234 75086003 554958287 317273634 557883670 206860308 1048445689 444739293 1013102970 748610584 197459671 1073085179 173812473 877878086 798274154 753827178 1060376978 67013805 693547265 841654026 239654786 174424907 15578519 668416278 438091245 149591568 426240613 489748357 536261527 203650591 875790096 699028032 592004956 413453655 448760591 516340094 43993776 456596849 116213599 247557633 249533185 123942334 710360846 971329197 416876226 440447405 440935312 720574433 116386513 529990336 499091424 35361233 983044455 218329857 547205407 483445424 402427312 217743973 363811703 307302254 1069969940 817057312 836472621 1005309839 553110255 577495615 248697446 356888998 430620707 748720689 938315564 513423259 189323477 327261436 981830493 465063026 298605395 1006892640 180646961 693383817 946915728 484744928 823896879 345667815 134098739 368840611 627926168 16444312 599831821 276705443 160272246 536147644 1048100704 967009752 268044795 895200393 155239002 200796849 436512430 504095418 322937845 766364353 1011139106 254270093 124561987 102014059 218455740 968491381 825326432 527989732 638633441 380878908 650827161 769914710 381836264 92476839 863316611 321916305 866416749 971378463 576841359 907182086 497727340 52705611 550799791 505184822 589488751 460193102 30016926 186034148 85423093 562821073 802814681 336106123 476964124 592118714 1005892987 732112851 943766180 1064007648 142487626 1010503274 952340893 875867459 474934014 980591954 715693619 660695516 697077050 986800810 634642717 964461275 191863348 948799647 398438119 59679185 733942112 327147541 566132472 475531675 160593920 474285077 231649298 830836202 673211058 837056962 560193969 473038147 887493189 782759355 398349305 282492463 706178263 27332395 1065991239 735466568 1007095130 389051986 1006295753 469811960 292265767 151979431 1020829557 381791150 726768095 947855575 749620960 400906159 989405599 869184301 815140773 299651025 190179828 218044825 557880296 379633848 1067122155 728922990 620739241 1021062023 927564435 472423648 117864652 949469479 879602798 313919164 565644991 265797306 592796258 238059289 840001022 766233182 640539354 1051276932 66959525 801162428 138001633 449495055 727135886 336251368 572728846 452104821 421801070 914893424 398242117 285475146 106633342 672840202 144864802 563624157 170368050 40356232 307849844 501194195 668176497 900028010 990246462 151143735 940821292 828947611 682418787 198663670 906863376 496551849 644461194 83487358 122218349 642329637 745001270 676182008 894737017 875630288 921349018 651616028 1003174858 612349968 727471437 983231830 770224371 89663278 884086005 1023165669 573469115 509130685 887937957 348269261 405715505 85940620 897396463 947376989 645070895 456020637 183502085 1019295235 981428268 437175324 25961511 981276695 895368580 797195283 553375795 666478827 79714008 963386435 875027411 648130137 658052337 21455744 854194810 301551069 564427497 53195038 47150654 338697930 890305219 81750610 158908462 1025310180 1039771297 479927125 1011894626 786283129 176677131 1050625488 223142312 116850786 1003246977 340781910 144780881 206939188 663770939 229246715 637578005 229609280 303257887 386249492 1019700810 964539199 1034966238 641977728 570110150 997561793 380032438 258136137 249965235 943074498 209289437 233967603 874010571 724934267 449507724 609693580 341966475 742136361 674769001 97001754 677188166 1034139751 846723567 69549913 814556253 81886319 424343422 699978811 1042436930 224327163 940092286 370564080 530526253 1061739410 67834963 876178498 348014270 1033507120 683103268 1017380180 848167411 1024658561 466304112 114202354 606074531 816519893 937933188 687859410 415252407 624836380 794413819 755010848 858810404 597435628 567265794 605638961 484518242 69808254 183279003 231536470 572879290 881165561 671466711 418122105 469442327 215209417 701054895 108016368 944212387 181149494 972303251 878102492 507949654 145961208 705073158 253806215 818002610 400958359 435418273 786803541 940552897 1060989443 290683981 793761022 411646523 36682394 489484088 364967990 991841269 530847241 463820241 721713593 868788072 47783490 212978459 148544928 936268727 814555629 809159877 437914720 222288661 356336007 135576192 25425445 54954438 74772073 743267092 1027003126 776243644 787483309 678877685 267553617 661088099 647232081 138106770 640531034 738220984 899708856 413842937 466267463 816638849 657350688 792259668 880809042 1233169 643320394 79190167 320160537 659684121 393224204 1004910395 143452508 39634780 618785323 436502383 225486780 276586685 496057612 661221294 562354302 849323825 678150160 286242030 841669896 60241715 740626938 378882929 304288844 887370401 926053184 371384716 118466660 918635835 517105315 939313509 689754547 634890193 462818542 300733719 912830141 598913632 998383098 442294196 311896439 423235387 212310640 210279855 988398412 476493967 1000891674 690278719 422445724 230041098 535622129 981068204 806302414 736278510 123255596 189396521 343341399 637565923 820495183 148251710 103603989 56371623 148374977 890279893 28448221 672179801 717948860 71217849 777625642 188849146 570054214 398502392 384219241 905251514 116847062 617620121 272463366 286931090 1046902986 898764703 881712936 974025301 65804299 601545561 1029986512 119163001 6949280 958198467 525693223 451428012 705856499 598059644 1023352265 790250898 20181727 813928003 196633529 939066011 887210473 546212890 418441199 791369718 488117769 780315360 775733366 296044892 696416295 593130354 290559272 294828167 988048801 251858783 485162035 609921753 1030483792 710747362 755097763 726110370 779869375 386811450 619894718 1044868529 87289261 108155157 579513337 135296731 750526360 435271864 708593018 624743804 580903569 599245045 48590706 805521712 40828659 758027236 419278752 499386221 789661613 201624465 906967176 445789743 551643284 71627766 501435556 339775672 578823041 659866430 165654586 586039474 447631887 951344196 499610993 364933977 373618174 71810028 394978088 1017467664 97271647 265126495 216694808 329827344 448279246 228312967 836679975 681349352 837821421 177349828 426454302 264411562 306549204 681404042 646736820 499796487 11928991 408397981 200164000 6680699 661400482 98615941 730350962 278214951 190394254 1058587504 478650034 443741414 559988980 279039097 744591328 1005105257 376377145 336640780 220169572 432711517 848551421 97878430 1018407841 1023792126 419617216 283475159 778203345 45451800 39712180 944650343 319705075 171938446 103193992 535441806 1063105543 285188974 724457120 78971840 743426347 31261647 836952478 947497110 353650440 676331035 413884452 108344923 112053274 588744089 935431281 963270503 257547333 1007349226 948518149 1023565370 419608397 161207652 115718115 792698317 188784552 399972021 10433266 850555400 617877854 807402006 1069065404 893372029 904361644 993646393 179257569 801453377 115983790 78768416 378708676 547646561 851293042 708127852 346931812 755329516 1063679063 460689407 412091225 543296419 192222055 326610628 989258379 1060145940 1073415882 835852189 267885731 735685263 366649950 693371875 980670043 851462130 614237204 346813311 364281153 430260092 354661232 439715169 304128374 828233010 771451206 111791704 358931307 732710619 246602911 224155323 304669494 209914822 316464667 312158485 856426529 248127662 1503881 713729472 727673320 106834057 716989206 260359056 487164838 309739993 342576439 446650618 560141676 654545521 204995975 58436459 917430278 26567663 21432030 588853604 277586584 1021328528 210907407 285077301 611083943 342450729 608545834 634722879 312621062 826389593 662994786 717750064 746361305 306448883 1073635338 517068936 513202860 733490390 143245613 739418917 1070894970 287593455 523075153 243848202 216182356 65439552 235393864 1054095759 896804303 718984376 539743884 807215969 207070540 343693309 306375128 409603653 129903859 99364510 1048102061 796731694 152682607 52666797 781671368 287598951 682884129 156135949 630919269 19307173 817568961 39580782 1047524513 909788459 39921008 323191573 72751992 88784023 681134224 644098440 751442416 387666781 79389869 52531358 1054749945 501718995 358644344 393316217 85802605 687807619 735003128 314053152 73694416 983455296 971939822 606543265 340866073 446447443 467934637 97715332 212156640 1070799727 611322388 935455059 644697259 338818052 840097580 62770442 268170554 693283773 347042964 393492049 602318715 521407751 836477638 446404647 679654928 717136643 467113282 771833790 314174111 62206624 289859229 83049527 507210489 1009295349 41769693 959694057 720224452 914133774 1005140692 213002012 689214359 247416175 92945112 506337595 494865791 966599109 422735411 395990057 854177281 17714496 169828688 500909864 78240263 297429391 67008502 121216341 518369775 110619747 12451581 887577925 559778164 213644897 177511620 812163223 181687682 105843101 131386763 216581243 614814463 441832310 937689783 225696920 292655165 16206114 76218418 427152057 990184579 6502637 18113764 888372824 716750 949182615 5300543 82850427 12184846 840354422 63388236 372729693 8476007 680081570 27690957 270665123 248164152 122375168 376637361 482782877 802061773 46380547 355258483 742881574 32156655 176268398 940649288 683403296 900821318 305838322 867271912 647182117 686287721 973265955 832835078 122586606 952154820 213434029 775232077 737246948 518337313 861420179 104615808 4836265 356937502 192545749 3987879 10006532 944140080 786404795 998997582 229148538 570709263 911762536 119169721 306218873 650426266 599403893 936187028 308319011 224603567 296601586 523185418 883403401 712206629 429417706 74454275 996907045 207220349 957378357 343910082 451104141 1053348576 253555992 363993145 506445353 755982801 343281878 1031918630 914616645 465161195 848941084 236065702 358637959 315750228 764871568 329518782 564513612 187825772 3828770 192720807 372252061 282882582 779273541 477198930 1062678644 182287690 413591819 601520218 870782150 37584312 675731179 778920261 967481003 101130870 892415370 466336697 125114164 292763597 963971425 129869210 410565227 44759416 620991255 776443133 43817483 52905807 443324775 282272294 93487153 212019802 642762704 286335250 300180979 857722842 256343531 772429266 20653897 498904704 318291335 337247968 626142170 277965199 696239021 11904897 551124472 730569150 776294855 674106790 1009469238 1062306450 376014609 885273628 169145088 124965414 130022152 1017858808 767188325 104916241 1008073850 715846740 672945564 189684703 202804600 126286858 294906006 163688946 71019456 210042165 971063943 370660641 940450177 774813588 188957304 1057893861 344487922 753121830 393964416 338713872 142218500 131123093 525028795 1027350615 588639705 335414656 809138610 260734218 21127261 846989570 897299666 269122184 788212201 597957157 825568106 192107824 227584832 629206527 870913160 442157260 497572977 80920066 635959402 78334241 1003644023 947200743 422155528 649443315 776282858 43114251 374287019 912088051 479913064 787536605 231350453 301088735 137736769 424877067 544614040 973258818 443318260 514945825 621413048 664295473 280166529 796712486 339369136 482860484 972527257 1063306560 334563329 894014274 1027272981 1007442444 148778786 837361390 981583069 400915728 628464232 729011064 455861650 889237313 135065842 19621473 1043675149 520928684 433672364 984858913 721569976 302889624 960492708 780662692 898049001 910927231 388243145 256106947 678963814 1038970961 703461987 1013335954 352663456 321215633 285176221 442206995 15416606 55227705 793876042 276354045 946698640 663207248 120206001 62507846 863234602 892573035 642866249 960887962 1010836441 838835284 190293748 331179112 632091980 648332894 390218502 856906147 961706313 30543284 127980357 55868723 575772779 726676006 442790379 775985469 907357188 633359254 8058019 848123645 652419000 1046469222 630524419 843522867 311294144 266184329 707561075 765373881 227391820 156432063 120742746 694219636 1003034486 203687550 221172177 426300124 94137401 624142256 102827663 361646914 972541261 585759608 318263812 566832804 584377571 501472941 474622999 562451105 421806650 976514491 871774145 456532517 47811932 830561846 53314030 312758646 505064680 275922363 564414116 1034284125 546264008 946279448 290885655 659176772 553192340 881109860 174921119 572481036 346310448 108351494 849770912 118397176 339644304 895562285 620952576 1052919514 900985984 1000772657 744443304 128127164 1031133940 27404571 1035316528 239674832 761520498 476698638 907896130 723787552 944448956 801785742 703256190 256157831 865243236 91263898 392839519 20142727 602890052 923555947 1013882630 642990117 347359518 684467576 734323683 938990363 1042796916 382772788 833275174 660402970 663094176 352135244 95072561 390695871 271452631 864757761 500963251 887257583 377387347 197311524 125509666 955014747 999593746 1044836168 567028369 165008851 304382113 825640454 682789506 667246557 432065196 619901390 577272623 706344680 351563469 354913487 733070192 671971836 536101791 398539597 51652257 1017023464 378384758 878114745 839637311 634000461 4379477 368295600 765148176 750195346 160685518 76089864 620682509 428712526 424183718 839786710 71975319 687595263 74967154 69014833 512560938 509615888 609651524 6348957 734930696 285865024 501174383 745829542 820200259 798123020 937381671 836719052 286202629 11177436 654849342 147802426 891836004 201252170 35971686 328628723 441939006 326579133 103838649 453460652 280276273 310411522 698695965 680527129 597471674 296157154 649425112 490668313 610287322 230803443 810466419 230059810 528246480 1005915022 918764626 1044071115 549994593 334131946 475108111 210879069 768273747 259827803 372582122 873404315 67461941 417609419 523939872 771606658 590607666 597274358 589688974 509469121 151409825 281981936 632882267 849604335 467253402 217223792 857888860 427207490 350436769 501065283 639348896 12272466 510203867 691450728 45566224 40553717 379342839 245505693 597307748 1053551511 151776744 243045718 104051848 28270458 647115556 170856281 453499688 489462846 655818873 357179984 65190448 971620068 262651985 302465486 948945484 136761309 491882815 773960419 609907310 695204387 163555973 583829307 758433728 602519585 916376888 280087518 927147762 586235514 949769342 54525409 921886406 656741500 946511453 710687559 718217336 477362316 613237702 178095100 1000484236 483265663 197471188 709524934 323276919 955725091 22004828 547981710 372389935 357036369 556518483 219077950 605274187 214448345 919879031 542134821 385315396 928053804 429803845 35863133 325853498 893233258 692193041 569853362 632376945 689422590 408876366 118521005 480495602 518481951 581854066 176722765 500839300 1032305596 762821987 623804022 612880795 942813534 665263299 899984645 59033793 401521131 52364183 42191171 883063893 166397726 660445438 675945882 128120683 858216052 862518154 162686643 902417159 589503405 96972930 874228662 573813242 662400537 818951341 1039185760 859125412 298873383 143663965 989632268 192883466 681953037 954284812 751364381 993739076 1014145238 985862132 135847709 828648941 843564329 463190125 345106070 199386716 776901281 703008870 202885374 534785094 884798275 580373753 59628162 180650921 756709059 327030978 746760698 177736786 309074151 482764154 761053566 431816549 702670079 238320114 79430387 462902037 916127091 428859583 531577020 836599113 550665703 690636688 572810730 1059800710 205291771 1031479116 350908053 335919290 808990960 398505193 929780128 618304694 545820622 849911831 24822545 570218666 731609149 1049631502 1053099226 117987660 897533770 124050489 231385713 260558506 420237435 965091323 945423850 759211070 31486155 359909852 745430595 85990026 241901824 450248981 1021037639 924316366 79752740 199514078 182215196 815588853 121643801 239570957 28714405 333914670 551241515 419722651 94331865 387897818 805910237 41783042 568686239 533860302 414689027 5449619 880675006 940952050 705132824 770497142 900169539 687259165 655837810 806287594 214033515 846153399 1026859219 674366446 776016778 496820512 946814452 629331779 708828800 602288869 554001341 1050306714 261723942 995956246 1056667519 293035561 767689594 179902727 398740016 299881980 124996242 162988086 534939367 891035371 525682234 236007580 728299888 54188732 1066913520 49730409 406087049 800827126 624349226 882317610 430698990 122729341 582049661 441458654 656800117 484480454 48357707 906483548 1057906992 458474068 62437797 518551673 775318720 844191920 994440033 118488930 869834378 84459783 730673981 639259555 269300095 678497191 88266641 399263904 563034579 3696480 260957265 221852776 777118335 900837062 543170633 185117450 795087726 158234496 788329274 765494943 967302721 478169542 911154943 915465369 874717340 9374874 348299635 726458591 412623327 282595286 364038544 628690108 911625978 760336627 744993065 167134069 700163403 980802369 1058935008 913892808 532337848 581479327 347845947 888525275 750183138 251526814 464375719 823532069 326731550 932848333 722230397 405440900 290470890 361426201 872643625 366925395 879075784 992346092 528275154 684866175 397741261 432529620 771104291 709392358 639975984 910586441 800602298 162423825 714217380 269293534 372278101 527413753 550687859 91389472 298048670 875804365 912843888 75711762 906815328 484020317 504489138 609151247 742927231 222470350 71998379 823502053 945874586 895487294 469526217 601611134 668026208 285898252 968936817 840008807 433161383 298610362 325426047 323692427 337134338 44002916 929635597 1044531384 848466062 429032296 329434011 665602005 160112106 318083375 949897525 828888641 274263770 89595295 886389134 1057066965 411069034 447154494 709443514 147369802 814959444 792412365 1063510470 681117580 405014464 449803555 464454915 229888164 661261272 432769339 883122250 189368190 679652192 613357714 145108028 480471975 608188373 376190879 261958553 841186300 354185546 192556017 48920114 178785543 861036987 529518027 340228042 696167636 880220019 9714799 679473033 35709994 689332849 579541645 760543691 228057560 802831028 674205873 407478448 615587547 187161196 294452710 765760850 88834399 190811625 223409172 351414191 939766921 349496858 1062040490 996171862 603550457 227914770 233691755 872073196 601222366 156525192 481101042 592164552 1055652595 204221583 20631041 971200405 726262257 774536084 340423221 123469381 355230740 11422846 556739166 219612053 891645119 18859123 434653856 874043024 635863486 564537349 907012787 610916837 1040595029 599293184 876726655 81084584 456087631 537183646 425164717 229385929 569335049 617728222 925857168 308728133 694953107 976853166 186169272 167631478 489397084 29950860 422041835 103221818 511146948 232094012 766433299 353450696 475051374 26017239 176355893 377666710 919185542 55320039 421963067 105426677 613480545 324199907 705750939 1038520450 1066378791 895624372 184884149 655989892 584710910 112155860 1066063518 780805603 913596335 221289146 801456068 364509777 657416008 615864714 458169378 825838789 860226507 943000508 568780748 138666649 1054685597 728286592 25355715 369327324 551222474 184282021 575499760 1058054224 843260193 461372081 831760710 802264415 584370886 842634678 2339623 518827382 28682253 158106135 890511721 32762849 995843143 102772185 403232252 283268179 136727936 1007882112 54344821 1072843305 940100518 949775857 338814779 478938607 749476281 876916221 1015870708 231769032 997226374 384225381 381357405 74588134 738490151 261306155 780505498 589832273 512134972 329525155 827973939 1012216004 761998261 384396949 608573782 540947904 722814434 117792416 499644856 749273287 1062699281 122792708 841611751 429394033 399751870 132404938 66999122 179743264 57427951 174354943 917226127 510055652 450509798 908108441 156737631 621663398 452196109 62223030 429194715 300466307 729008565 687982412 456436937 1012742910 1056820942 1051848605 115688475 945005637 273982627 922511466 114325169 495991809 913590359 919453605 200264141 491623985 941013118 304249390 582275101 875815289 524308753 99803023 341548471 8020134 589662586 83474671 93275218 152226798 123400992 982069369 247712024 60601956 424273165 753078765 358292390 1071668622 152542968 738117742 840413736 1018605960 77342626 841690929 292567207 705548797 345930511 41348965 229147940 470188961 983566647 977624408 187261102 275943485 1003510117 916738119 1025739719 357334392 898029921 491894484 805757424 277451082 939068421 574313570 92418205 139168652 158716388 282306585 983110471 257119948 757583831 831047907 611071272 643634896 251303636 687404618 563379701 268965194 497668436 564163696 669264892 136407131 459347321 350026402 759863061 415125456 978379867 911456672 1057155293 453131059 453115508 95492903 879022573 405854149 15297898 446914159 143463785 221525192 115121425 1057971042 783964829 709562069 598571052 584240782 149307691 1062997093 188563122 769125026 674628030 255689419 420612562 551204423 1072174178 193038376 216144737 681104093 664375131 17489238 866287421 801190597 263539370 834587634 685525479 493525967 653924290 432453357 481799832 373372014 567658994 745899470 201629312 216751412 100596890 392345286 273005984 275635799 1066650228 355436232 796918231 471065217 257798775 780405679 66177588 661295081 115282401 417537607 1033985878 1025384782 749818183 332425510 902254581 874002996 661901810 1005431123 547691244 1068629893 637235084 519695943 494036684 53302986 392699813 594765618 180170798 997470464 997882995 753546327 432384537 937687131 895167851 380113366 984792319 934432488 291174085 59065447 57969640 161438286 433886541 228219842 263153859 1041070243 260334382 5461164 874631527 612344309 918383098 1046139051 998557900 433605127 1049011893 927854736 346411776 53243351 755821956 519804982 229150600 544811415 807534887 594776399 286877865 186047162 583293037 124461408 149343137 562509665 557033643 840514913 34097954 773307595 593995304 443775959 599077075 725496629 630163007 723278845 16029408 1064094087 543965833 526246659 246498562 544016313 761995965 1063606602 865655234 47593220 242423149 902842201 558075837 180008715 897886550 409559726 665718762 9079640 152204690 192070403 1000420840 384939873 973898247 78967576 310171320 234929996 557365749 614819621 475825684 889678085 495841930 682071126 563979870 45026127 279168464 522498203 122967339 403685795 725603746 745525435 282533011 504770024 899018289 905295431 901112294 379512413 681092599 592326340 921824270 932797618 247770743 299514462 110556595 948889571 547795267 100421758 613208367 172350596 12244423 951028010 466109680 916879149 616906099 656550825 112551831 1070748069 381492798 748603314 853136306 450598060 884574795 243072162 766567207 152510696 230391901 830806696 398238356 199043577 749379376 67400074 496456064 977151102 929135500 414387890 401782768 271373434 725443940 156129700 144355360 45090773 52006246 446139774 1060368751 339688841 185482087 828066866 324486730 231154832 6487470 513440934 1009218413 901380568 128964156 100514522 414118836 773581964 224115767 986013359 102344258 794223273 361302569 83495032 770385541 344641248 375000660 335173786 89232982 136014720 942676828 234277598 175427787 542414847 91521424 530683044 643686366 715908705 1033131864 209497494 563927640 576460042 725056379 183477419 953979773 774140763 478238802 511272483 373253118 936969802 883933949 259256009 393210513 770082987 887295867 894479079 272846721 970971192 794635799 648810982 476991965 349203897 41190830 103063618 427390679 238623837 717078704 314350507 875852921 645403720 220691955 643367619 943623479 1068584034 545975321 72955068 506426367 231667936 699412216 190565475 301695094 220301787 566418578 749273438 439420597 58112181 273039181 412723350 435956875 676501389 640774194 903811969 683433390 979257739 579584469 1055713566 672337173 102057922 75037281 607070753 198860555 498577388 114818712 227538485 922444186 957089723 848851265 944920337 58035218 170601540 440025399 761491611 876120981 786155363 412189560 742829231 958385341 138423373 238061520 575012791 234575492 913513831 639776442 803691442 157050826 1022127661 333971001 96222704 485424649 275761580 231913900 237605874 353420124 447482607 276641122 272429191 108112083 47652255 566674196 15796164 730518201 191646844 862775958 351325361 441634126 770138313 876697742 676402300 843237106 364752289 849469622 586624185 206838674 341598656 1048832617 887785597 720190476 374643171 395514130 562570358 840692190 217868279 445335744 23047699 113226664 314203581 928612113 305250456 538181148 945792066 843792050 480640182 156723745 522023512 128693372 456626848 644090964 255382322 807211340 270170991 963881529 682510439 52026054 773308295 904790459 597518905 390477391 549585379 182145252 1012277289 644904441 418220469 629260663 658440674 510673985 1066987960 985067799 558071653 353922500 288618727 492996393 1040002066 540432258 939400147 123737225 500324698 176187489 642310367 73436637 887296078 414429352 636681257 74665173 530943524 142739503 411276052 94350561 215395845 773857928 522419141 194454430 451362870 631279397 597714548 736159570 612082216 816069377 42437159 932318555 1061559291 772452234 408055505 779602644 1014385975 760382528 259255402 688357689 80159693 772846889 451025389 595205467 595627535 703028169 814444576 568271301 938276162 288299795 43008807 209055422 20463012 859221541 488026790 365655117 201124828 420186316 421544930 69497082 1048460572 331562292 557215602 1034965562 456485301 67756314 307422095 697256172 171621095 154050124 823414320 644328238 738888811 198368897 11046326 897252606 420464972 11854664 548532445 604808820 1011283116 945846619 429560119 183878185 414013841 545644780 194025098 478915715 748615422 380271080 137063375 437301054 634294077 164302038 663321157 526750655 651530522 85644778 521190839 458843639 859908873 44872459 1073736196 135973690 794834837 45323986 775236027 486490278 937590216 1026031317 526332728 1028219448 995347954 822010911 1020830133 23389632 840819787 742593374 496578346 330039978 383790883 204776025 478419322 827991047 443823365 645998155 76690929 1054298422 1058611355 911470122 544937081 238610997 272587203 598671767 579323068 477061497 296584046 140351472 604618040 112622424 1000481226 88760178 154465529 468353342 844109042 1052246890 176108373 136604191 333776021 812565825 81931529 63204848 756821983 112443984 634814595 1038102355 755721108 634171085 975558980 438147850 191996780 99866749 994161844 951166816 508635887 948987022 6716276 227820018 339512919 858621166 100885727 1024875852 45007795 801734687 171243690 760550257 48332918 199353218 585093183 714171119 329421971 624209486 45314603 178042528 447922669 980659741 607001699 151006016 801460361 447550514 286119575 938669154 689803957 462811519 213690629 734818752 973658958 887712431 607474370 530658245 515571252 395712956 734788571 718489351 92695685 165282304 719212266 983079314 384629489 612896244 979504378 73700431 787967331 735114335 161216460 86163889 895174050 1003079927 308671587 295906101 30773479 562798604 562464549 167174224 289857047 37498290 921639714 203648114 1012807534 36078729 445561550 193491286 437544417 612751007 1064999012 528101338 1041570778 960280662 253220204 205991002 701806847 241262629 872129965 964714087 528223585 103755793 823322984 114599855 1068712832 360654396 364625327 734053264 838804353 400262401 457500155 1006533820 308013390 529357786 534159298 921735906 111496057 859008440 59503762 958597778 797856775 963699437 642774447 1055874940 970840227 236898237 554061705 896836500 829629065 168601914 899346884 633836291 876606784 367256173 27573752 498296208 875197897 892333910 38776854 273249059 1000624696 601516475 23472266 973862063 715770184 469804233 791843518 15783397 744698974 472383613 818495158 77601219 764204847 778311629 965071230 289183760 522316114 266294875 616154938 932966745 547124519 659576185 615586620 357511355 332423567 869806953 601382964 231548593 559828082 1067070825 937527085 209964919 403820629 188865459 53280528 529507931 958445641 942735472 1014920814 782606425 365827027 464857843 296351941 187420609 453131379 997206676 300129782 555121807 831876161 680971462 395783169 832340968 694574649 756619572 694617727 815910514 550390090 218841755 138689197 368566848 173417018 637093387 1046047333 568327492 179306930 730075070 577094940 193471208 629394562 827749032 333933672 751895190 425020160 612685755 710085597 517581110 227036508 104362457 285133342 956482595 791775382 365202813 770603391 954892858 760807600 448732422 706124845 756551666 427949128 457568418 72834140 466513231 612172257 785170224 51844597 147251439 492920172 627779171 800418449 225741894 1013459724 403509141 216047406 886039643 373909010 74065530 940691539 386773306 329588966 864687999 150286252 731799207 784904963 192048211 300220225 1050966211 271910369 628177451 474819130 1005422623 521687670 288749535 1064957013 498849848 434261723 560513555 867866300 1069062825 31938675 553536579 659380316 744638183 900705949 667001121 169180283 593603648 562898049 895626285 818588967 377557350 210168915 121133048 450095802 453761014 99013584 719382588 480086263 495124471 1046090274 708769760 708904649 1025096604 625768046 652457562 27408956 230387593 155662083 231926396 565774426 648818938 1022573499 129213307 808819920 544738928 17561049 35483442 212065768 547827614 914470236 1042862915 835638730 837645491 633117655 512464766 464942128 1000557835 723177038 589836420 358618136 793462506 855497208 525419609 67468615 695859530 1021958524 631439139 540013051 729929077 1058336900 64546598 936103040 878068663 158115457 424474634 982231639 856359815 342678685 593263700 843781993 426913441 458108248 1025783130 625222780 895600092 301427696 963770505 357954459 541330556 157142153 207892871 426014468 330351075 139327348 799743176 721511301 358216742 319448692 756521584 822556985 164869856 428147532 704735321 1041848332 870219053 1034065684 119886868 782086858 999221604 119595547 590056979 562532164 237027574 974855824 419595641 628635431 387948079 273986217 879458542 111763081 315075230 293581540 532988763 124326233 161975681 176253930 482551471 255017025 791910754 804179335 86674410 618880133 590978208 1024316752 732104603 777147929 450165162 580129494 408202621 997504455 173007326 491748972 57511315 132650143 867340690 438344557 932941522 1033296171 141762871 575651007 313305403 185158178 932091131 620226073 755715264 234656441 694255644 274266217 268607730 842723732 1065869076 595961409 213182373 933431453 752245021 602086453 984278242 351146443 406003547 407692425 897545608 702676760 821050679 847116495 695247241 779316901 1062426735 425469260 6388554 736515392 1041502699 1064811358 446436580 564116249 652898256 445822080 803767257 629220898 381609484 666364386 1009807184 173929403 1012860059 319426139 244210390 239424381 76811954 277795065 990134204 293420613 578521724 1019375430 729616201 859543584 525474452 694203683 926368738 747868799 317654722 444884138 609469835 886514710 959577442 115391688 377657120 880547981 870705024 603186639 529842779 41004337 56177631 672245144 829341204 1068461257 667568888 662689295 855615888 158869264 654241800 254352712 393664944 991640528 454874575 764189512 719894290 861234438 1005927443 925403073 642804467 419468396 333643158 64601255 600410954 212625742 320388465 551832664 796192724 196255661 517519439 563819174 927224046 766273538 446422058 206418323 783018344 427735422 248004673 946090460 329811738 883221103 923500995 431872233 531698176 858185470 624600075 468534075 542329699 409361107 396430179 487016744 74412135 994397036 1053163263 222778050 1044960227 913713287 807110699 779839074 933693943 682172011 453856634 421862263 155092093 1009418098 512811680 64409239 737259089 977873341 123940777 488721286 928286169 1010819104 951172348 844313799 1047087814 882811490 793060645 191055338 468805558 175621828 404745505 166993877 1009923121 546630202 157350435 426235356 712654962 1043384227 347803193 664723607 347812067 681416798 456634743 168426021 641765357 946482230 331329636 734026040 197720774 817841570 609373357 824981467 15415456 16489168 92722131 859030006 460184266 556718419 569520473 577607084 570712926 768156527 248579625 503066290 955833616 402969898 534967839 714937209 1068890780 236985254 551928626 28692206 909697674 591190879 800072380 651087024 528162791 826880062 41613003 101626854 108935981 778026722 107749445 299742790 771877219 49366081 414988227 757928536 980580942 1027044137 427540126 709796080 572413474 275111094 880083549 957332057 390282303 529847715 703914084 1016794497 26953547 29944812 890335647 836240590 966884543 1039172464 325119197 653097204 85558354 157490902 858472246 329456344 737009455 457458435 702006197 786044961 107734836 8243587 880373778 745052050 17309082 303807978 1063455211 215091880 686972877 921791675 286209438 547253055 736893391 92742525 1047730371 837929226 282518637 885503163 158831238 637867937 801943948 161220745 538808120 21517581 688599076 217585291 572943092 1056900915 812512380 844635884 146237062 989523226 34770735 860413464 42763653 593951890 896866839 568585558 577570529 722983905 631550831 922467476 160204672 308942407 848691546 319112746 786656718 977797338 592288831 507786212 140958056 657527363 391365306 642535169 731614893 150362042 568933944 962505258 341908536 253599623 528805712 966530291 456977199 1072431830 147680375 259918189 739739957 804598607 1053301363 301931960 85014491 640136682 943591965 383884133 684343644 92028715 161947137 490971551 390000841 1021841362 279768977 957603653 149880350 565627444 764011799 108081609 542788760 537365585 312894045 621322904 184102336 702332708 949981559 676595734 431648980 494356517 1030660912 164222412 467366563 514113121 116660181 449482482 549934527 977303361 191064347 820651099 292355795 28432519 365637609 480925848 571481304 472074382 25862709 624829229 104710527 660794327 858566899 336333716 294448885 880189335 30561308 347699425 531406406 802162290 434822105 996876832 93271280 358318690 112473840 536836011 989053494 315779824 448738333 969715164 230638145 58595639 222311261 1041919247 924090629 785387496 976996351 365927379 977960935 89383654 522635655 118389593 693482146 658152741 852894146 99107940 555933296 976717729 730907714 864054710 1020434817 869505703 74759819 970584869 275633283 473733990 197981817 752228139 221112770 6238393 783244930 863241080 631209997 638346931 815943874 1067299397 1069590727 987002979 22172168 477592989 204513647 608119949 865221091 104383655 818983871 339772043 446361617 641365116 761249337 405519553 802980487 196884922 664191845 730200790 962773532 952076777 115558439 1068312934 412194023 531263860 221766689 964129927 954527108 177442361 451196261 201510326 824851838 948768161 697846148 653059544 831528367 509082317 432814143 1067510844 125773677 511027736 666538006 229679874 924410080 719296531 804463486 1065362635 265084163 838493622 998402180 680398556 443961624 965682809 372825868 361519911 563645117 674713569 154156542 98359333 819535634 413419829 171476526 487134207 363377368 125983492 748132719 882840605 781696614 796237104 641446156 262770805 392619298 939040104 342579503 176577933 455056166 812216944 1062421171 706572420 254796418 348524259 173794928 310492910 981913113 1063208100 789215309 902803678 381157215 289474298 295505018 377562112 112186164 208038837 777953674 256446856 302887493 660784107 1040326684 248159331 462120836 59358270 800855182 462769355 1067437366 202012453 1061581426 1026234480 743813754 161311932 376451170 206581011 194260491 574495939 8262743 838224021 826138466 491175304 489312324 538386898 826752105 738478213 1003277490 427800405 410706594 201914499 533485365 246473736 418052639 662609868 661128810 864383573 200160005 801717302 684243767 159334912 973323717 132109931 657415041 800589724 207496895 282025815 258639342 317110002 634764810 486137856 58135564 583146581 880145754 292855167 147101077 1017429090 331787862 240676108 204785041 737904831 982430074 148101701 155858615 947811146 141026711 323718633 686826860 843946403 1067565675 705817046 813864434 193614049 804116709 872468006 624461614 296039488 443811130 92858191 537702658 778652204 864057539 484857660 483932197 199445420 298152780 691179548 568230122 588602010 360964310 271347324 70756149 658936166 298905235 710158090 210464875 3494650 550477567 140632960 481736800 816376744 1007816491 91277307 660140436 507511729 441485560 124625337 537278344 922554648 305535905 613550364 712918813 179246362 149855368 856362318 605387750 810948151 667471396 668021660 367955082 52627126 278199315 1001877746 1031555632 857909930 923313564 477977208 814172685 426539171 853192578 606675216 493925489 381886259 433665579 444472482 766517994 35924609 399267291 1040516806 966390498 453648819 148907067 174690728 90801374 379449161 882730775 100525796 89039042 110954589 837957271 22043163 832646034 85519547 842373045 375836705 529485341 232474836 562180177 851722984 542878414 936974152 1009676613 800650481 97880534 541005317 700512868 271860009 523051188 830052669 20596336 781711170 379610963 793485292 699810183 551304652 1015188037 77784021 511394925 440940672 1017206940 163530138 781316241 753611266 877720222 224984544 274788563 534095824 284814736 774457377 1048228297 224663319 67330699 592415562 728356976 901328712 498615101 27538828 479290449 14009512 1057385747 141480781 951544853 528774074 811361691 760554394 436076914 419672561 319794408 744475154 618635204 811447925 228461395 976613957 942524367 676168018 338083965 231509015 410999932 1019646055 943178176 981610820 805954874 741767166 56873306 593710794 912690913 548719734 48676593 480696510 856204371 377018267 212032107 1008972726 855006930 910922899 355213606 765352032 112382416 768050242 941468637 657966153 459953252 809863608 1028480000 846630909 116788541 590608163 566337585 666230952 548646504 719923616 818835800 656818588 170354191 493310918 449954643 1070541894 136042411 454611184 735242035 753364522 3027885 433930943 647414390 644970324 62325742 799995814 124615839 518390130 752527114 54240668 222765242 473598003 167830968 783746168 285651710 297440445 731536279 562088862 618905645 999375077 218346805 410594355 678177962 567305061 453610070 391749287 1012412500 166911161 19087919 529423985 250425464 596077351 1037134297 945245657 260245288 449466716 613528625 256410139 62765681 404652563 487610284 745745868 566145933 1036524296 1016383268 280064147 539622248 610429662 543095783 620618477 688729514 15716830 316435586 861449150 71267441 911729635 761622916 249802040 609334082 707076658 377903226 686434939 888283899 416806130 505322631 885634448 549523384 148362857 829868710 413401311 230870968 847272439 680849463 121895433 333408355 635893879 1049469084 543534969 563397625 914072040 895939830 732313092 776098193 951014521 700135323 644636759 726861526 328177902 207342973 929398260 222908151 222468566 828907832 758298332 252085059 939174978 1022028939 148680872 581557922 271102274 254276138 719612907 841247461 83735705 390739553 7648224 911727704 203599569 614360006 1031976968 25845024 867361382 615772329 3210610 625671955 666328378 1024429033 1042988653 975378695 843311285 950095351 333034661 44709575 15057273 45156719 244141829 817915034 1051712678 128687290 782861918 221506980 460551021 193022419 704802428 43466945 209166820 457640881 450395504 1069251170 1020104906 808588800 454913121 234343164 298771293 28817448 715427396 560869368 114959333 164394017 926465758 213234448 312508612 550828555 104041749 874565714 771181433 895478021 763356244 562208907 1042944106 431008768 193079363 969506417 206287671 943830662 463806771 714361770 904185987 1014673142 734625 450059640 95618136 784509983 166139109 218608940 627179213 137383195 385383993 417065146 366819182 86387416 586609291 845624497 580679870 714517963 761261517 284290512 942584875 638500525 545072240 1014452182 303029331 1044248535 683477290 730326266 233591533 516181001 446019772 846988167 576929425 546227458 38308152 33801805 929975636 361968501 703767952 670338862 778239865 1058548150 918965212 537090289 330266994 707555397 923968703 437823734 649071238 16312607 370441687 580548340 149400521 302205130 966343013 779102170 109116044 187651216 565888610 457365515 699135234 47717414 48945790 1063266896 379577999 913140545 1066280018 557914191 259519655 115321507 382240107 634755958 1071861784 661143935 388292252 1045567436 523152013 145526730 306819582 457680295 767424193 671087423 436716812 26696064 860592967 71352298 711935665 80494077 1032153775 467205565 539874724 487755188 317384496 550418306 448478578 527745860 320360759 364593701 368942102 275760885 797796206 717096940 964242279 891177524 669548533 219564698 1058241991 1037044513 921653498 399492853 234505328 122200296 691330163 218466000 530690817 446239367 755291238 206805052 543840044 491950724 523620470 155611347 682834694 674192792 707954861 582416658 1065052400 489879645 364937303 966295982 6879054 271497991 765792691 636618262 236576499 936585177 807668929 419806431 313084704 306463773 187175246 1028804969 27723956 413395503 1049849984 657336389 188125886 719014222 753322824 522691698 66853386 122605178 37042735 33370082 428709570 751755743 1026918067 882378351 755416034 984927100 762646366 913556560 959962931 699691717 1061088165 971901396 113866296 40185821 988800715 154554433 808289592 481694298 544266132 663637124 513940099 504236704 828105518 1029479301 1041754073 68261952 374269064 4073893 9642072 131892896 913940307 434649909 493707300 160215466 1504316 224819386 27796988 73655369 774203013 984636694 290575998 983582222 791299289 863249184 1061560289 142340925 525680952 965038283 458681814 301742132 527005653 224853239 1033459300 998713647 241569662 801036754 962509749 221424641 812256817 506305060 765445641 841189818 928857633 782657470 454299321 574545652 54867089 65437642 603602159 281962147 954742416 735811740 655658219 762102017 738945258 25213610 50998676 745684082 836936728 50861228 594369078 524881688 112833289 143779887 967650960 74241145 204393740 255537160 321909465 131461817 153769129 779183339 723137842 549513522 138210576 1069508401 652179180 31808380 1061852923 70798852 903740000 900943258 511299002 571868900 553627975 410300076 901822630 276099608 605204771 34042820 418485900 578994885 753018976 775233053 808366502 694789284 426213800 465281331 933214122 271783201 327240498 101689186 660563957 476190216 493527777 719646593 398704678 995433884 170534386 744459892 419322573 998823383 1006339369 97913460 523387453 320702396 70076279 385574879 362335912 675731276 610637248 138343366 688646689 89858956 850397148 737864252 28024041 118745074 120074596 1021876237 652740861 230638973 959218636 183679146 62026005 232963697 1071202098 1039013359 52608395 682800192 43068610 216565673 123833256 35280932 616695669 927933768 1032851096 875379814 858316901 945752056 783784044 107154172 733106884 841884951 1008321851 295299889 890853318 444928728 930901508 982690116 594017278 194866492 36772059 178651198 993956213 688503355 434786209 882143491 730073704 651578447 448680578 627463498 879061110 465503656 978569944 809259465 97654890 10902187 206722977 794793349 841462996 97547134 966141370 700102839 257674665 796793856 648903659 145557902 663777046 981688827 875753183 994174569 378579477 74697 220338130 1067140006 620235705 763635513 226142779 1009512706 646081666 1024541917 577466025 997094368 526005658 615629555 364053236 647102583 958850576 805169588 857378244 661889112 972664890 541589228 306163254 1016804153 386924112 402237974 848728706 267723787 952856909 817732084 416194161 547614070 596058720 913629280 238061101 246477949 1040738726 1034073248 21990280 938366436 869506218 530579402 694823760 780350988 751240846 519064515 705383052 800964107 715427302 377911114 294817067 720588051 291899881 57917323 788498329 13374246 875135160 175837780 91997161 457065471 252572483 828478458 1013033973 154441932 140018265 968070784 1059420731 11906996 101062640 168354199 813725762 68432995 863447851 252325163 367225829 308536657 163250972 365520436 501732398 572383748 774786167 107395537 124702091 636300583 993536655 1069127356 621725661 481651720 914024535 666984883 546579004 582000046 597397025 952535829 413183717 177700142 487677294 21785537 533443783 431822191 539650975 234598645 491768105 971352801 476536938 79085237 87300802 99991670 207732402 1020754472 580740611 911333867 587697404 877238449 376337593 754718850 249719 516198133 264795616 1005494122 233379640 67068088 549221230 990607713 312810186 590140910 816928179 334771489 288732912 462877810 348808442 804615718 634545000 52799113 401524196 224049563 835335744 868235107 62651446 863946893 863412337 543721740 218993714 625414863 1054921254 975450224 20166983 782556974 11583044 269708954 170460222 660730534 480927402 523049284 900668854 43302239 140048907 637607133 123377153 776758234 404385762 934080131 1020718408 699603294 778689205 16022269 968732128 631951229 300458432 556446344 632589283 264143727 582879753 866615475 1042255667 337638373 821492701 700517702 534604336 505803434 664848113 597766181 1022936496 881439605 831502511 961429262 559105002 217171227 659046778 690063569 1069303865 724661445 551635221 796935850 471238718 580618349 961008156 322560343 1016600051 470767917 915964766 691686290 631554269 662530281 111680066 318154635 820669742 1034329799 317540203 136480868 372975319 414541320 655584882 467754927 286475911 1019997550 979520247 482472827 950704921 197517862 38105642 334986599 109223582 52674102 740565026 394927199 638290649 292751118 244683194 443417533 609602419 353816259 53116256 547903992 943228982 836273456 966958688 797878457 1051797708 380299886 92954083 804888610 550502351 24812889 680235204 773185271 1027847567 906984256 519501637 146915899 93521471 88745936 252793965 174454942 164168109 16158717 789776522 48566644 917021216 472320587 562617177 545783640 234253371 861508590 229721520 174539450 408174979 897686783 997752823 531203310 752807683 103418204 345364350 969881633 762610524 452064414 187327157 14065928 393506727 74202302 542920021 185497261 640219267 977616515 1045833218 737876192 775100450 846980466 488446313 644546881 240893911 807745505 255090261 72423393 409007849 121581082 435261186 1049055683 5943896 878432918 903339924 687381551 410927521 82180052 529947369 254235451 518270120 64854608 775362764 787285795 417295148 966495396 159344988 713871337 652351456 549849598 410198528 810729179 307008489 1015905686 392990747 870176670 626828995 145980636 921282919 674572759 273332986 15627650 796242199 924125453 231260872 79113190 329230659 21650558 520736873 570655182 1057044038 743533829 739292731 246656295 879398985 383487852 677324181 1025481079 501120566 427938197 51364853 1062385169 882818056 658797575 96278582 969336734 335743323 934617802 904613187 355672357 16741821 1063675477 994955451 344542880 62017893 276902984 387237047 556709498 590179362 405404016 911170608 830996553 606920336 1060664496 287676767 938845445 469829355 613947134 269640293 822874288 77217088 476893504 167359795 843201255 601459874 250441540 1000307168 648331571 150383784 645030090 502446833 373787343 393334624 962920987 550538883 336357334 411970181 691911556 206804860 877361183 940283782 350291812 626680216 337586669 871287424 157434124 166730299 70524918 934558999 637816878 425922948 982587799 132682915 733273346 1045240872 221593505 258941362 156725110 131919222 557799622 1004384982 227708611 274626698 600030786 862554790 97262399 633519214 779740710 672456974 1007678974 938607766 179571900 639230659 652881386 141758665 976705952 195815229 257359375 643380003 515527202 281631724 1064704585 988704843 574364997 388811383 52058115 249736227 705896980 100628128 10509317 962066033 30041378 984404441 843785738 658826624 24133714 61915472 507089486 1069101424 62562041 719568751 308721401 731702324 690602529 481161198 59997627 895119591 628899302 346117063 374044113 137084642 988081547 101396152 860212506 40037722 90924555 809377748 646660820 830933449 885005204 700680820 911113610 454700767 592835654 551440200 912986144 409457372 64468846 38016771 856323582 39832192 930553903 196836656 178727375 364084785 873216489 551691068 22979232 371434322 395268005 718409299 399487702 105643205 98130262 35282002 33127278 725182309 499191975 259993377 668193633 428699099 200224372 1014833059 463599909 239703589 919935721 881745668 1008043467 932826664 246620764 81063092 718731551 678595510 905820406 140080145 752075487 380791625 348914673 620506311 348870584 487100605 391694511 723425368 397390161 647283164 540251067 1052223757 548989276 996710645 375390804 481263391 698323095 51782817 218962110 77553340 678747006 324688033 419377832 987268347 115075188 811111468 200649475 807450113 10705275 565661555 369935376 1000469188 936308280 219902386 795156667 1041523484 76198907 618485239 274510548 470146518 901679911 43822816 1061670070 688370779 745156059 536655248 56564950 333378325 379725003 159425844 154143100 1024843449 747737386 679843733 42701469 592075339 1070199863 87350790 191249317 555219157 974411548 958346940 479177207 676039986 467339186 20736262 187203107 111144323 746836157 337082612 50287749 253517938 813003143 410860397 314501051 536416174 170987637 877490074 424756635 312269504 937817996 944276938 747121633 55671598 682050674 1051521869 257063261 378483055 188682962 937321254 598462547 68473686 33653440 686033515 906365488 903863706 541020906 158650712 526741844 840116720 686963677 44710633 219345962 869185625 621637056 188181845 179501462 403290168 896145647 765157545 833031730 1025389892 772956929 423728364 1059843575 614460487 588521138 219912785 880144474 843268822 604393587 620332101 62721934 942889687 426863085 37132802 866469454 463578146 439762416 851503075 488803484 1064395164 896751639 258938151 182798734 987037209 292872570 154142635 283794431 273597311 513418926 10108613 327388161 687560126 833658203 428569356 876872482 348071093 885390575 1057954275 648616896 48480160 282730151 190446147 119004287 632214650 220585321 158628811 202113142 51775312 779030798 741981089 917028223 915342704 694117762 6600720 977600609 788552875 805119429 806103350 306935879 235090523 370961964 723392292 610476265 901119216 641556753 874563805 795706553 884109001 514116504 488102274 26819740 888196675 562909778 617188813 30281084 295029094 734475883 1057934490 886387219 357655915 946792994 696162398 421959382 483299989 584611053 312036841 369491138 509075961 877019731 905360377 949679739 804215353 873498958 618690582 751748444 217013413 715434373 893275407 192672453 200486327 342074784 258906667 354840025 513314696 453596822 402054159 157444740 930557939 960792548 82979940 1052014637 411427258 1037278812 110836476 180560838 241755571 274232334 697235005 367051724 93196960 818300008 968369034 864932112 287311520 808525400 761339625 694272131 222442395 576552644 817460699 909322478 710464973 25939612 349102419 297389912 472127318 569098968 718935298 440908986 168548655 843291376 3459948 686005457 391636435 631738713 345471273 285685361 990589159 464656369 331958772 135152456 203138857 1056311377 1038633330 973897651 529149130 630737092 814128255 942676377 307619621 134705705 287723544 220826025 695338576 636511058 794520455 648793844 1060019070 650479348 1010771953 552530782 266717816 868927676 49858267 884815065 379580050 427760747 713983508 64249075 593427437 775956848 303036492 582223727 805430072 68616315 780584334 500881829 540423273 535093889 542323285 232774219 512284647 322307982 695792682 900970909 839704351 589739707 738696551 3360302 754476561 353911566 1031696870 650447798 367595982 328669973 415256053 879537711 827139702 667879240 654071367 373269119 969729611 990780793 647315287 203818218 45644481 734605132 997977145 115587933 843093746 552998790 387455551 994610189 366596456 743200914 688892137 636057981 1028150536 540697680 512822123 542933879 415322793 150864532 966396304 745345326 766813318 933462668 441554822 678967449 748799740 774751433 532622203 931544045 418187541 476295924 478848628 86605197 155487420 146027590 5710017 699948319 176669274 786519486 493490451 939916579 775146213 353394734 259261587 818356581 544353499 474156388 28435062 178315581 125368089 3335998 1052206278 370417840 303432138 140728736 104104853 920983387 1045825008 292534859 949185594 141712402 938927141 251509239 627070555 786173763 1019826056 203505009 148310833 640254815 1031504396 906495167 207437160 342168095 481601269 1026500077 46906305 760299179 11921371 900043025 78556767 946489417 313095378 227211583 423218165 997168196 958015865 220757864 301160498 742477456 132206023 11489902 584489334 522713832 375101162 96713646 978327411 629095259 612911805 89037558 776657305 1071148180 244730634 680692886 443253323 1008397539 852365485 710795286 567247129 409369367 112161475 197288709 29960174 586988087 616816320 304509412 439649882 375941663 470025272 629393267 818097124 34621018 1052749952 750368687 630556181 120321414 321699368 748020387 929101387 324587504 392355393 194176436 135197089 100245612 502036676 255089437 338561131 553347138 1058433783 1015506473 680940454 546756810 926620160 705731568 387881378 568168403 570584305 426322321 44499427 532464949 357608312 622987518 78388331 932696411 484759878 209174714 458446438 147733807 299991045 389480000 313873616 462138093 444056409 253320022 905701864 153696617 124218710 514574249 449289147 622736652 639449074 620147765 660137861 647289493 114528992 492207187 229770714 815284277 901195419 559955322 906948242 612722315 154738670 530529223 191542902 1033250634 68976812 521438781 56049975 758033162 829494779 812598270 587839184 139618174 729032590 976847743 556093682 387626688 968005924 453678434 606196293 1025866122 156419378 837167245 223680769 842921992 977996793 105292751 1034277726 64194945 47588184 874331657 511664203 945640391 674384830 653797661 825943038 891489344 940139744 252563899 901461538 927905339 196189267 473214439 863203526 847505987 590675979 765272061 930667624 827267554 42338957 359202802 664353096 121628996 272095910 796833551 829700327 517311467 345945977 151203632 787796708 274912023 126060031 544262295 615219857 1041384096 122506943 492870413 175606290 18779491 968604049 390730788 54767653 941687518 51687915 910064455 137722746 472514953 142328445 474750279 698193487 289927207 817234376 354092505 185065289 117959157 441756002 775714600 82183996 331129974 529458818 271102843 5574994 56984143 699854761 278442133 28818058 558313614 795944964 396128123 934772323 839745009 1002274173 549801111 246034733 656508147 302423559 573249661 925676041 750387877 2429252 1030676477 502428178 129794727 745459367 479216853 750588270 420147571 979220799 483778376 664110514 348956695 766246875 138924191 828439609 960404212 41401834 32204848 598588241 483402764 666017544 69618917 640415361 967404829 357113880 912172969 600580045 182180454 686647471 939594202 1046534336 626396239 939546671 691383541 637734201 997382679 388668388 108071514 113133124 296989157 350934367 1027758761 709826949 930845886 970169995 936431500 417656854 341722724 217953262 784116336 270569043 722039149 65946564 106755653 455496286 376311809 1018264732 835655775 140589068 794575622 372705865 12207252 882245398 617305293 751355430 812627727 281885177 196268111 682324612 680606619 766647622 485962546 556610635 439117119 550172968 878401 779567147 293487142 953321380 483858739 1033098159 152166906 811106906 1058737869 587167832 128878327 525842344 478341645 970117882 803024937 121135123 814414256 32684678 550619783 1010421558 922288261 561525933 353416721 993003727 306805791 908921867 896139431 91551174 517088623 549172239 780680778 546617626 997343825 487455483 697639271 740962493 247515265 283734111 34785948 1061569805 643993105 944403610 817460474 413387677 446249733 781798036 636615598 883170136 8689240 506504541 441990125 472711321 847719189 604078862 677063929 497404065 233822741 430048595 580640282 649341914 1032770398 449077215 628063215 359683623 425911838 209463900 1046150366 42114300 229738547 797676111 247560534 895840926 690957426 285200615 798318162 510971501 793470368 702230318 190560643 875444760 452661187 710031139 707015413 231910313 31011383 707564555 159724035 185858456 459790741 430274019 35381451 696566570 729758491 166544811 453335098 583462160 316672538 418063650 425316810 259626232 436618506 1052586962 551782027 629683527 808434683 971913557 13574267 569607632 536674061 616616792 368527162 670508554 447828433 766523602 103649117 351111568 39126900 156493958 904454402 781994179 682924509 741443893 209461451 584785697 933757490 557695486 509498207 225698919 461316009 654841144 851309949 405010194 104168872 807208167 424921457 153247458 224699198 139793361 741439246 934179841 334822040 419973898 505262427 456735907 294531604 858219329 296971779 740996697 545661170 561685923 289393524 814884577 619509523 342217781 1034194937 932956172 502465087 907250913 934026279 751404266 957284543 124907453 9312313 652392356 66856415 421963435 935064189 693380167 388703177 751272499 919826566 25565284 854338840 784738612 312744504 464973611 960729847 71642674 629898364 603893892 146292693 29069223 801265250 79097376 531396434 916391277 869417199 111920213 118332348 358532793 18681848 179479101 1005357260 302519941 521883185 361567108 22738108 820010662 928273134 100631494 75378266 1027507777 109368533 469192346 911721984 766032862 1018373587 540540388 772633893 20357734 530787526 376320501 900657383 911125177 856520079 1070462686 385454440 838452845 376010576 226447399 851789013 261146419 487330370 284158533 134692046 274394866 670062049 265679702 232967216 703255452 146679784 722382796 587977531 375553992 183484855 471852434 18762178 313872976 915298292 942368063 666186685 970787826 376687408 511192143 626773595 163482810 685887054 451919537 660752163 778460742 590614334 530097137 934129019 575753300 619034892 535651016 973062226 1068908730 850087838 830315331 1021829508 720548977 390456103 406008909 223371106 922029576 103116731 508617536 246833496 225339261 384921150 574828850 1019084064 699519393 197801206 197280041 337005528 566788702 191599523 713658414 955974037 848595354 314380254 694029114 404753339 1048159923 498384480 1018543716 1054648076 841725944 559685255 173600945 371437789 163038498 501618271 916683039 81931960 21078471 118665079 878664351 3773248 586844414 610226272 1056039492 983473582 142057842 840715417 855065656 259025194 689948082 124269472 662149380 1046661359 749607093 1072247722 710918314 325344883 2444830 302316485 65036409 1042948742 114757738 921964493 19983606 262437886 149449112 586477387 1057401106 43326211 5189676 835749212 526299828 917211418 935251126 694584876 130497692 536460157 123313053 138798940 36918762 562260144 756230092 132962479 184747838 679266624 548985431 208991598 568706091 83468074 1049207110 710020530 441300907 186542234 804773896 528659784 644674989 703071581 308378104 882221576 31055346 187209823 253889412 526765435 95157485 181856060 1059407595 651189145 104546062 39677547 889183817 407904423 287107444 174856939 790033710 785886173 390999792 698771560 849012932 214817390 728187038 586037298 135271556 576349078 587981991 184875991 374073741 323173041 482021427 370390299 707654969 216445366 910095382 435333955 394409801 854116682 763462269 1750973 343618538 924807539 837673901 582864783 419777898 555944862 641018506 100119892 231786141 85907195 645217897 972182963 185227963 142013328 1055744799 1056393834 76705180 842764362 371265385 575102481 400181677 480334023 716432574 63367460 148237210 147844015 395093208 291152847 907153308 1042825622 758866046 763770215 435583711 725621948 325133029 710351849 1068917971 985956433 580328570 313304683 6737108 798327411 564709427 68690172 874716950 637424726 182962456 750270186 55389413 894101243 323727796 788592582 179726622 455231213 905583396 405579286 748761295 1053365532 955376789 499451667 97772899 372086354 786451986 191924751 53230031 1031997629 138016952 1035564084 252876684 964113249 790734914 23578458 310455785 7336034 1057261398 1047113110 987468497 33573730 229756691 327516429 833192391 543776745 433822832 56904726 805208557 964503091 595267712 504899776 683946010 312150787 415226744 870302062 771955202 21978151 641734385 380753534 369218728 279508131 584601150 841964480 277942348 36239030 280975063 156327126 504765332 217664378 372349313 575685484 150898732 112650612 73972801 530543381 216328385 580551905 595749722 999355486 549905690 892231161 796693783 782895241 581668448 659538562 624382739 997430785 570218086 442852264 497099936 609757706 167651005 922325060 794396324 506223177 672672235 910832057 661269450 514994771 570663909 872068410 217014144 1066154680 687835691 64116616 600022636 228577394 622947097 380822240 192751098 1041728993 128966374 383558343 254894165 461425881 663723922 1010515809 545825713 167119889 116659171 576516900 47403400 425160590 1030801480 235983070 878519111 1034718584 161934411 703652403 94157273 735253348 487176520 554109690 59378428 842529351 737601103 1073496020 617503701 750101683 155835212 220837573 651664027 140677254 184554555 169690627 297836498 326897533 673770958 755289657 318949040 1004386176 937249627 974922374 766049289 746076720 190493944 936375535 825409559 868495278 409165435 71922311 334012367 166417716 802348954 280654400 587897703 409867823 434549914 314293700 736532823 343220693 880106854 719212778 922204270 1032326912 13191023 523622081 830213318 824083442 509438316 895511490 416801481 592229700 1069509343 987398984 941854498 282634399 663260586 623444888 107176176 230221875 986413608 136357126 251906755 63898287 651852943 300610427 510425415 297541781 168682723 161370031 813720073 992071332 382205683 231603467 778948071 938366828 287948199 717483629 406165584 715523275 1020580880 1007345427 1034754488 595812751 817908064 122459349 19620062 1066165993 560615074 346260645 120083194 698839909 968887709 90699743 676049558 781552601 531458567 188895507 830154506 168524059 503328620 396467033 275189264 517096529 63557104 461314566 942889974 1015962463 461852919 20596659 834989741 735129424 167771935 17591277 895767235 393015745 968587438 824844936 496816937 334421867 960124047 986100950 270078100 442397538 343086087 989614181 654336117 882502570 96868382 343489893 214393868 1051668476 834411437 672201323 612925463 552081601 781207692 280764329 926372831 810799618 316646696 596613627 874903012 851033230 990401517 16551821 227170450 528348003 818435459 379448853 523979653 533779660 629613608 498128879 116301946 668678656 515087307 514389731 278611354 51303893 412354114 25038309 903211373 49450010 459616731 615864534 242079064 292845946 287218909 1044574272 759825230 848856275 167498850 248439852 857777650 160927239 585644036 821764692 94298028 145391310 555465407 959375356 104922611 800030760 484069971 105638645 83801016 764922504 942444106 197495884 728080489 709408047 939125365 807731836 368259520 542887907 416937089 584943531 420715901 566903200 163767296 4905160 543744022 815640288 723220111 530962279 646890446 25439152 1068075351 422814199 462830024 40075277 551124017 66802616 723246715 456355874 170663836 305197326 662603064 610986350 722588563 217317393 325542200 952606802 859954966 348008088 1052356621 377062007 779926429 358498859 235120075 751321010 232590630 376978059 850078743 482312640 658570386 904618347 517810390 91030052 924425929 978574514 547324139 584223847 825991499 819955370 244405742 459952115 82350294 820910626 688932947 410815776 267189790 488531053 244924588 413336950 451779811 227435064 985555521 421224669 700777365 904684429 912538919 478537896 87161385 102576797 287315699 618449449 584600668 171328283 784567158 257465662 122651163 324945610 541282526 851657474 865880328 813094765 709295974 681684289 242956770 1026811481 714269242 712480725 149132502 884726903 522120268 340855917 832626933 357441749 727726904 529673863 607818905 687455626 966244943 862678006 249216517 949098711 16107897 283101573 902797165 738790646 802393287 688202150 563616656 310133991 708444307 884124550 413793520 984611425 344868198 1009709099 409662260 116288132 274221402 1033061941 625498407 221322482 66142702 383027838 564301973 847052857 314923700 911090901 573938965 292307029 370383415 493100182 193046960 476146834 257066772 490009833 709067899 395620259 895833161 203201319 4334659 470965996 359949660 38465549 268027130 401079511 822429616 368110666 58377352 614310655 762759920 701436171 236968938 791894623 1068692947 862638180 608329289 275214277 186091259 668960051 694246472 645809990 919893829 745882831 412613363 741709702 56780453 754694035 535114560 381176780 13206285 22703649 1002117323 323983200 321194514 734843171 476577729 403472317 720675894 294598569 1045823447 248725471 225261735 583798535 304200801 162735794 442872166 845336684 905124574 999767330 975710749 361047851 344701806 967513569 545177491 556661975 749554106 427352089 58922644 669479780 758818842 778653015 657512595 639614605 255615160 162021055 489275525 206212320 398752176 577755451 183579730 560657649 227305559 143794411 401304663 1018398593 927713443 935314499 836763179 449325171 54434452 928628182 362596226 358090905 167338330 25791325 831451938 809720358 190421710 648245395 695690177 751997423 804258831 934355547 302269228 479669003 1042016350 984422679 725099789 19992994 321919129 465811692 102292247 622327298 464330063 628062884 172887510 797137658 237128728 881143882 1020950653 803709303 792632020 400666599 626638570 392427592 576738759 380355749 509730974 1003925693 884016200 288044440 848275137 126050372 1018965217 180981678 983963666 680839155 805932253 602024307 570684792 623975789 828510378 146292096 764382537 334926244 763538381 86833011 837327681 744497099 393700211 394447292 773151826 922792688 965779072 1025419202 937859883 672655923 38783478 212950634 133172278 57425742 679998689 670079070 165054240 618184126 976232356 443072798 888407923 953843674 962299419 990135561 662870485 623800830 143186345 848067037 797328257 926669610 480732141 351782411 669854931 733135161 363433277 199980873 625509204 450046379 143971627 242688624 135816732 351688411 256625802 401336765 375141613 1015181943 204466209 427608606 182104949 508565329 1071216121 127636311 822798881 704031717 642293802 520322202 967803640 753758940 314770523 737035483 25917198 673679415 519076237 884472841 971929886 629456932 799281794 668412644 590690941 599429102 139765355 700319204 467607968 1032249887 706067721 439193470 684958681 702248298 321226657 574568056 922786456 3327498 780440597 127944454 172547671 357222881 1044191451 37691787 189781117 562933081 862289677 77436073 579296839 879567331 962586666 936442360 590211026 368702957 325549578 279714018 900145826 941453949 999529421 173883365 159625346 97189703 461741013 475760892 739896334 1047768767 1065970820 124083442 856064176 348666722 728184693 750259465 217315854 241223313 466481185 679582832 510777412 950261015 593025705 367349756 1043658935 190474804 9397337 283772209 186554445 336735474 32376538 600750561 183676532 342841288 76291016 632216143 483413990 842889312 539787047 322534053 70306267 206724050 621276519 650820918 215841522 284902652 602784203 714978030 477036572 348451664 639106359 701607030 692660607 604171628 740792555 911571465 787076263 373789279 290868338 1014461300 317341294 839299720 432639951 1008968564 967114311 345233381 280380527 672266274 607411029 961131631 484043110 200827850 159703419 694268251 1065451345 618778148 740257452 306683306 482211820 560652572 611623761 181502258 1011512768 492518667 740218689 888903349 576791795 509667980 106403887 421728546 124470696 972599092 674895914 811363181 355952742 628377604 944120003 945692810 758745976 343237226 187478990 598157162 871628604 745569797 59251748 388363760 600321510 530693928 517138032 524989147 707075758 673053126 1038184674 423842146 702925271 692698295 615462338 413789637 119202267 61275399 97052277 350977145 954052071 68614929 218134018 509683891 707156383 876970596 103778889 534957492 506587064 789646090 423779975 996190388 342760319 445372504 874240949 579305946 966929898 429740887 23232619 153757244 773526805 731665136 392074019 707116615 55129831 803470430 375847563 693667197 1071626853 571746982 767524378 986461113 961566292 202899352 325316402 648498038 523448436 610452046 28224782 8754084 761839678 452472165 656104180 333710805 575626061 545710190 374491848 111267506 252352180 499298419 27256808 84290710 756317769 499762971 1040487008 692376283 539318469 1054828648 35363095 638729181 970697529 32731207 166123729 1004687573 539347658 888515610 793255589 798168840 303315757 372777103 101442997 821917875 387179836 328825580 609519145 244134455 1026788428 90646329 992080248 766477665 455365199 588030350 449873921 600120522 241494728 1031944166 686907123 346046125 935543779 679466916 400459287 123143472 290336424 294379997 795138320 876331493 695566697 884168932 724419083 1050117622 865748085 1046327811 438183973 559312329 498131906 863986515 963551233 876254987 866844691 22519030 150725050 678683898 263871925 239828121 536272938 733968873 909793435 310563241 824025769 619775253 923053278 518690452 887422618 535244898 603792195 650435973 522522973 953103188 968113829 220955510 274502036 1070239740 632036933 420863995 54468035 697762010 230008818 265260703 966534396 726146600 62330408 254209573 205693658 533644918 628684934 493932696 519423795 663593340 524995762 137140590 855524108 935244812 299068566 711257981 918612565 1072846397 153424069 666117013 133758962 149438450 1026990651 561971276 560041873 549050346 651724727 145195615 4988295 842174422 343261506 146788373 339686581 785699845 365819259 171469299 870764576 663796850 737039313 339541820 735432315 843076515 886015208 287489796 997225498 600331855 485853366 326009824 506793028 644081320 984129164 449460473 119823028 553514484 800127317 761222608 746388186 15368575 890731702 662358681 640503543 806733720 185247221 920820749 449904306 580586597 1057057885 887788436 734080167 692712380 127192326 322855798 419308210 1053850327 530450907 432450898 482109690 771609364 326231262 289895179 744231156 631780413 185658091 768927657 621533723 353892289 15803099 726995040 35221118 158998227 44833063 143749263 354838225 180629518 424036986 424719002 716762341 539915776 787014417 883284446 638015581 423518636 64674193 755178791 774604619 277437130 1004032809 943579111 225620655 953480938 505294241 406845097 442218459 1066401871 664198980 128059441 122201356 1032850956 267001356 697554979 251804522 473874296 426131143 1033325575 377684847 609777863 717228624 29042713 105753881 822368453 220015225 580198959 686387885 218574724 526560379 266836593 889007355 692966673 645441350 71344530 58702085 507935235 762831306 924033112 894306987 212240799 271749855 606419408 592180256 328777616 366604664 162646520 183290272 1015222735 355668842 943789496 128843596 904365521 1030172641 652195005 936015332 895223779 784879191 951576950 453129377 456353277 842863608 724896449 730204721 163764466 416817668 313553860 323578787 282191524 934641834 397149743 649869631 203355200 743009406 126769861 260900618 84690560 1052751153 999110482 484459663 814957466 884071856 1031212320 63254085 287593843 153553333 763305322 709866710 661487223 219511147 1064326307 415784304 520703715 428169413 886905109 96821377 81007812 416836521 855996506 756529011 270546738 133560710 305666626 523873042 846961923 619737007 502836815 67965059 688922278 706795795 15880244 378708942 130343568 402860501 479427121 60038620 179866894 679160348 916073065 335977545 1010759882 369613043 357006240 321666770 843703239 972126317 312507280 252406986 764324897 1010045996 381014404 472910982 985121552 849579442 423946318 677464371 848683210 831670855 966628113 373713942 430082422 773607540 290174799 551123294 30462599 977877613 286899152 908547284 636293237 673110260 654967288 734246584 707340798 460605440 967281572 765313035 666888897 75457052 942298926 258271334 262641638 399281870 153830669 958563043 900519362 924931796 17977497 350529183 850081507 238498565 1009313140 490588071 241305996 48988994 869905683 219829147 965935915 514674364 917804845 286697174 166465948 797805106 399593442 740705500 418121369 611431718 473445994 363559883 908734487 234551643 1013299690 836846876 188785178 618631207 972023493 943838942 365960845 698062769 535581715 339384548 583232620 246034161 907144600 949462523 192124230 1071439227 681499119 868003673 853650810 815261402 941307597 354204276 999012576 995647424 684845989 143007839 222272865 989402432 484261000 314717316 876879570 624873832 53720034 1056874748 801541235 158482899 951558052 891588609 337057253 443683537 1062664397 174496713 889750208 701655896 979684608 980564409 867729883 98287558 756778822 153674017 700568924 963483945 716369990 316776166 332193701 165140645 575499787 61777303 501949248 501552059 1053135176 643882320 177410036 701911529 669038033 886150632 991544412 924202283 350382409 383944581 283826004 1038888256 508362520 333526642 1047122917 493158978 912948198 227077223 1015172130 898355550 155390344 623259943 590176515 558365892 110413669 462502095 965509726 219198134 296977191 677224544 492135648 799595250 787910182 93772514 18866607 8431038 34210020 130979419 423046984 596617476 826360020 328619548 285538150 554475449 829905781 183368798 969133795 517444694 132314385 784807143 902456415 786822815 859368885 256246017 439442618 338410191 51382688 1033903812 26879651 64269515 309620959 1040465821 678276468 80358377 965382361 826223412 670113409 529250537 1039586373 284350569 18406732 398446787 426777771 412800949 316976213 744094444 444266726 497493517 338796127 340993634 676813140 788558542 962893026 741199524 328658384 1023500 854950485 440152836 91266162 911060529 465471587 1000421811 30119706 738358887 374989265 103852203 1034332606 140895337 195717521 894777617 58503876 785824815 837715647 260964871 171239132 710508728 665068177 946684315 739842414 405312550 333900835 493264314 961654654 89304597 595417462 126004660 620890421 219703806 437360148 745247143 366000291 1060764324 896904759 228376259 799448752 667696746 43847752 229533334 671616153 533776481 673186077 879922617 695342803 1053536585 929942083 562476797 110475243 447966357 76712513 1007103603 164952021 727377675 668845273 95232235 656701476 785556272 752443149 657212717 191153784 713423612 454243159 157624197 945324193 1050490605 739906667 11987038 565093411 14248822 38426522 159016011 355118405 1013444220 74998902 637236294 58462603 783042601 458497118 929121200 2405357 245474288 305634381 665509787 598933705 663284959 970872861 469077776 574629364 794098646 1029800170 326732369 59926271 1050289877 929960867 607360482 370194578 1057373444 1037065933 663529701 458409021 46954973 982046307 1043994722 236832429 328564413 597502472 117482412 507078769 230983108 175130495 481554162 995759838 952288646 120344922 305506305 424978161 93097065 1056483089 257032862 105311033 809094809 262452420 778711719 108246195 810831213 342910502 92639234 366155560 340266636 493553203 613854768 821315491 683281002 1014374128 750508057 643687069 854288855 165959185 1029448026 144056973 674764343 634338006 387225428 987627818 498987051 690572275 82158828 223917332 926003106 373426917 913215043 470071339 28424816 765266515 406255814 215632536 129206063 313803273 973588703 703236913 229268372 639440831 112161198 30642158 280354189 576476873 300870682 550282270 732276383 609822520 243810615 65741966 834163651 333390334 196862327 196210064 490040391 318257222 147823377 610366862 267185329 116470054 392481365 363116905 162799134 677511749 1066204298 187247529 680922469 17694103 862356498 143662655 236870944 659954241 169044002 1000846839 172141991 770070611 678231413 1041744799 840279822 1024955239 481382862 923455055 858363927 95732804 155185470 443558977 119606127 1032952405 172193642 882330187 829443928 485683584 389486971 373547450 882033068 317327689 645915575 794794926 835482897 778722456 996006966 103429062 477729962 1032307245 366536935 409341821 857212080 162103632 53760752 157970593 850178331 146794854 434032259 670092862 49052162 268250688 38010666 56593363 845437329 1034719316 41609573 443221189 89918844 904019046 625467246 691415928 601158314 893430146 498970283 596706257 30880557 689317439 301229243 789414865 860170804 1046384761 866751648 923346217 610213108 443647087 458360721 192610971 959014599 716624433 405751962 947854756 244075904 496137573 391094075 698873388 806100356 183490658 207948098 868599725 229408793 573760185 950617249 127685588 484693237 881386515 158081477 598029901 530015914 302070233 194000049 1031603961 772939048 1004028491 1054182707 904415908 281599738 413186105 634260213 372758240 353257727 686000772 372729987 966979912 683119452 321298428 719247104 750260411 1037274117 834187012 660573706 18647352 553731744 781237032 87236140 164684544 993354439 223603274 1014370815 105284898 909637038 43954726 549994056 430837927 469967793 669099293 435446453 902586120 784241261 615724803 422442956 726637012 810737948 897575844 299326711 373806100 664108861 408333946 254842533 314722676 945320147 736331816 193973854 393803587 586687751 962122104 468026288 568280109 821285243 167991585 126574716 836315083 576104331 1046599166 41884724 896935901 612622896 1054604388 114330426 464381007 583770936 255298670 243864013 858184841 661054373 839615994 467481973 454332211 777355856 897041454 750157259 484376916 540207206 296317255 895332834 949092944 453932940 339386108 250433302 451341316 261941362 146253703 853684611 469834196 292508663 814189397 844413238 439004720 110439934 1006540702 706942853 24800412 231971570 38766527 520720512 425110135 78622822 576472939 1058438334 401577450 718114125 169216650 46672478 343546479 449452345 884706244 753345730 934397184 874158972 182477107 694282420 581055646 408674612 665011278 212078229 766454444 395036174 936915807 196638363 287081698 847816074 134564967 708596617 535966382 364624781 332434707 171993653 321576574 17996785 577635932 270130882 1069090513 332604927 722637065 5792818 459183270 289885951 759150677 857659733 580858694 967928453 725126938 825612965 842450029 25000198 779197321 117060948 951354712 515866201 702835375 571335177 85360992 699502120 348976460 59881716 487567718 359363072 312048451 994438570 342554392 516885683 48033812 566493818 530632038 96651948 431673907 275772379 595466765 204669794 558276097 64313016 318854672 706963604 611463386 373685022 479820861 341414084 998152672 324526011 636438150 918099579 791700112 718664431 583058607 562102996 859374321 126928704 665877500 74857373 596978944 618472352 710844633 864894623 712514783 659747445 754272825 452730594 389321745 258528884 834066855 730781329 378619829 352368863 467310958 363622103 474355589 149722088 919114698 889337572 744318159 1028913794 856008079 325002775 669332866 289359165 629328329 711023347 1052403885 512429802 663177189 222920028 1002027006 631053415 405145123 1055016721 212117157 668865674 758967558 246081408 293289673 852434134 319107789 660693590 405823377 1048717641 304595542 148714864 730524188 434594648 251999589 916268947 270512553 689370965 942584159 178025910 942544830 780537880 180057331 484686412 967501677 784850490 556351374 265939774 988107774 454757825 364175167 349532105 1010100966 777875982 940895242 545437053 379314734 149889246 44750421 557556079 695936652 675982161 187990305 142149926 89939492 945163639 480738161 565263798 694082289 746804857 743434978 281510498 461366978 725255729 903044422 374501121 643841452 406914324 198627287 775528727 989225168 553304766 130045315 844231921 74256789 23002858 705789344 719236036 796081868 553753636 506034379 113440643 749413619 222111549 692057387 383354158 1059354721 995000024 406925970 961399119 399531180 516094947 15148436 458868713 871705874 1025821078 515929221 140853097 1004035496 987844366 352692408 639726658 190389072 215422487 1025288518 838137102 51891010 279613938 761807618 532537365 859844414 314364201 631232360 12241991 541091617 1027031432 119435663 850927927 218640714 745451662 262077061 590446778 729967422 503536025 765342088 624138392 107486660 430503095 568102332 701284198 465281065 463379814 810850921 909106402 294925616 334293788 694694777 671587376 780918127 285308636 374091082 850869072 691286005 328856352 1070347023 132719824 236375345 305891891 620467756 516528893 197833422 362804123 228276295 1055736501 976474454 80645316 653816282 653522005 323149892 497170776 333844035 567737441 1009622122 468650348 288598454 455927393 1069341277 690694827 338505475 1011640777 405483376 717301712 173235096 224208237 823033540 312822828 783793062 1046215279 701552077 957438098 771019761 363016876 817081355 886879714 425969030 838459502 7884301 404198854 750438991 89282926 402252676 61829766 77734291 499890782 751417682 558238012 905196071 56145868 800501661 143882134 313921148 952721422 354670234 1007636512 337018784 396656598 886300288 136834548 690409990 31787611 48527830 466918745 520882516 458261927 641871049 233337943 457947904 996712747 163095785 262537308 993936915 833165571 262610368 749249648 362951185 1036427872 292119868 925788530 465900063 1024494130 611719872 1029784394 312893068 321507406 574441057 295659736 585466862 464513416 311524474 222493463 882598899 310832338 147749342 551510454 831161276 892467717 286520100 116633798 1021958555 701837293 238112649 978985542 960010564 222829324 508267240 1051823380 63889410 348325739 646813072 453658332 27984475 1044659308 287699804 314186653 506377549 787929920 572347335 17102308 349012396 337986208 423166952 613677550 529039856 774379628 827730608 419589168 817544381 510881315 816608362 324038460 25741425 991082738 325326531 596898710 262199988 986512291 1046898028 797276124 389302617 295835979 844280232 475861260 339312460 674452775 1068834173 111710856 160958436 954584696 411013673 854942061 367760349 926223307 742268661 12241429 888127273 512605785 660187601 161534676 642147705 350319638 1041839649 758243703 379219961 395687036 165300508 478307446 775836093 981828207 189279755 255138060 279278663 90594060 328298230 593606152 179266107 868656097 888393681 999576377 718019373 796147922 769157488 175820705 575069539 529765008 798710396 599048835 372158139 384881620 592386735 671497454 300536072 751425276 452109847 118123509 637240141 108860531 371014154 834930418 490111301 216644443 532817972 364086851 404209525 648308810 240264886 373218843 138214255 377994473 888623009 410595546 811174514 528453025 209509448 931825993 492004267 868667905 176661548 525013568 386955275 377815452 709549619 628690661 417132940 156686824 740696356 849524618 554066472 545465888 681351139 676037628 792046002 606482355 451944797 231134327 345197580 991418733 591687100 590575848 137243558 1011166234 75325853 82919823 911155949 259595238 825315120 139313963 236621451 493348559 894758527 912447815 504080862 333373964 932051047 6812079 701303006 1054588469 89137683 887296528 992811201 859532167 165283604 140626740 384402448 119747139 908214450 880998793 268519922 154458864 774073675 65062654 1030123591 984149916 593685367 180047950 931134386 1035096195 654777936 962527181 449913243 170112280 970467594 882042839 786933646 406999686 375406451 693773636 317433611 384311474 475977818 23851868 81264338 923602327 154283090 196930525 331253330 566582499 195423434 377456611 399179449 777106823 598080511 207718991 856622124 903577077 219089532 918331740 7065565 475827224 1009775830 995690077 696972075 116669248 908633376 19260220 116484645 144829053 649644748 39447411 564117473 742225763 24364776 723255419 442964974 719180345 189901423 104690615 1052461766 741670865 277119634 772657096 891780866 166300580 249556823 924382765 708484688 539905521 196585461 942519812 64126689 191615096 991906073 204317623 954794835 368115846 768404551 767090108 459507980 192811945 427083315 1070095091 451072141 609118016 460603196 258338171 778572929 937965591 48071858 1016810365 1059723361 816468327 480408076 163774692 288961771 308462186 714326630 126071298 196231040 957330856 617248095 632252450 611198353 90065254 359765936 928434644 556552126 96946275 379187822 484087971 147935926 929113649 645260821 811382972 362237692 184369737 95574448 514493240 538440065 78374590 512266715 384457080 80844602 402992815 212556654 745524321 172514633 538478096 729516932 1047409237 1044988049 422196130 130401893 956961410 732972800 530169139 356079815 795839119 757785022 333661077 948092010 551605400 388909965 556370909 587469463 151698208 472648092 353794491 903997736 12966192 244919962 5074379 736056055 380476557 331880066 551748299 886662213 682552328 310323145 806614232 501021758 557086983 807949271 411294643 451406106 421362088 387541591 819347204 255806380 537922492 319105879 407375801 726297668 750931616 110876460 584117878 843646464 931581222 375430341 47652742 852384547 216780740 998363971 779028404 693039539 850120561 904687653 673693747 1040379785 504288521 121413694 688633225 471479533 681085634 170234557 728916699 377525359 186841689 92649144 15252534 301179700 635756960 905963877 91649838 710833942 373446651 819533765 815980929 593971874 794790841 44159588 440083346 58422232 238419559 402861253 201886913 453330967 241715606 564010763 540693831 653976722 876700142 937164971 361420452 638006300 325416244 447113621 872877229 977353334 719677429 23458149 1063140751 520628122 647052627 170959531 706565276 256324087 361975301 320112061 661003110 643124195 1037786353 1072777340 448020199 472355258 783592567 456326344 76614590 942600915 217468573 997263174 668423727 746542973 952121522 1025325639 749179409 335641343 455683911 894717352 763691934 107078700 1043419661 280497458 1021011834 489378677 370119598 15231278 930040184 135982800 727231204 389362296 146557133 747823331 561253717 454426012 253876622 711326078 386019661 340205933 686013065 1069989219 979904879 626449698 783300015 291590176 790964561 494224600 33305138 855983763 296543712 358695642 538793235 519144978 580257338 1059923631 644637533 187863178 407065793 458852041 468748981 665446411 720965231 379877305 723866450 417499235 1031864344 415319777 283688165 1017764026 1059436542 527938613 1033769477 389368513 810295556 754427519 164229602 705024075 529546280 173761455 652704263 107645006 891150996 294741832 124561263 617425515 472687540 271083258 1002460530 238945210 741665152 571959340 874740617 709400047 302360195 700424661 152963790 65213133 12022211 732522117 87337791 931993595 58005413 482754751 801530683 270646980 61455202 854960007 672432288 643383191 850432972 826296601 726380764 200816840 943921762 258665801 59253716 714496805 832824297 711878550 37273335 136835104 687644547 766634095 293655489 1045291197 29843960 28389435 531539057 577856485 950171121 407762913 880905421 535593947 991420932 3985804 351691712 885436370 131233308 77691389 971135753 204373775 436894661 20753952 625985932 1063376784 396771817 643560344 437361148 333542568 165666327 993055749 283833778 307470232 660317141 657791201 553703500 385194257 699764404 174795765 605826689 837294604 734832790 535937521 1067862883 634355565 335105163 975579524 918499270 10922758 399320146 632092475 732520578 623648588 781732255 807941699 730232941 456845280 967796129 807983978 77821455 806125939 464411702 629217181 433387771 1001274048 724466446 812804340 722015644 608032041 709744183 448619028 510385080 709176534 347506617 200691085 356017369 813641304 146486448 651741128 906999712 944568196 9712155 555373878 978641692 381051618 927496372 725125804 939391783 65179798 104780844 926742509 851073715 1059895483 467384216 151151218 438099251 717516165 577686848 901719064 210105300 727939427 628591954 975835084 766358276 466053823 88984947 840423588 642613373 1059678918 847017486 577112045 411979890 565340534 223641884 624727843 79656484 109424212 922995555 424200571 867463151 371484529 111812787 229153967 1023074787 115503763 367158764 671752628 920687219 320745711 994933857 118560512 284968312 799775179 241648119 591658960 335591528 679549501 969206183 191571453 274653880 51037275 883687873 344101476 299970724 45522648 32168823 429607318 951211265 900494513 108559762 652410932 376490135 970605472 795316570 623410626 999854343 398776087 62367008 690864611 800440484 935899126 1034850086 506348904 933027725 460125256 346936145 178357209 899293420 693153951 557567510 1007382595 93405275 392939038 893632268 787654886 812619466 442865489 983252709 213830135 334032139 84682513 856061979 812448717 825868442 203490705 671323536 814055226 997563676 1026483617 203922478 698039588 335382083 383282232 978431328 130209330 436373607 414522117 474831456 438505608 865498219 650952217 578930602 327172015 280677655 76970633 890228300 230884975 909463612 318369409 695902415 16541423 609201097 79415565 598001220 188657766 574756017 861197848 722006534 901701773 993979023 739325861 833424780 242664153 727380454 725561993 406229037 689755137 322750468 180254080 615924922 413513804 500135161 732833554 37054332 289602591 468854966 108358431 25953388 938806796 1030733301 377156241 245703326 937255843 802970289 327568934 472435363 604767261 490110441 135037615 1063655106 730356396 535028241 508380711 799011036 504691001 256928021 891669485 100407635 948982139 748204167 572352450 44933966 816971582 698940919 963797174 567513476 806921065 727669620 303931266 141159537 549670271 558774741 472791427 126711337 171412062 942333129 461732651 685742702 811550996 707733211 546055409 4774561 525965468 1064325652 332456687 50660416 709170654 524150770 772155877 823421428 16887269 160958748 447357281 615369238 751767332 303344664 349063260 318786110 336472368 961145818 638353710 260542304 740682873 745731719 864285771 42081624 959479361 79343356 285403078 961273324 945602454 41118480 594977915 616246989 9678504 239274198 1029350905 220323779 440683193 707798977 239308274 824191404 404637103 982064077 759856876 57035483 249814464 662213685 805231895 72766764 1037270708 374425604 566601332 858858151 34793531 861184084 1035493331 5954438 936983064 287415272 781028289 556322012 16293868 485699260 584079797 651190471 161319452 345908079 654071799 826126101 807949875 492438093 730491721 907536294 296937025 577501810 213614054 352141195 406865260 877945701 452458560 696908020 205800590 838037799 1022949198 446051783 846168652 188637554 992159858 457928460 1008821791 241502570 509761055 754050205 763764728 521139903 455502576 915118816 964918800 328366700 534848080 928550060 901976329 586829572 136799463 1000508743 436709357 543943262 897052845 967393398 739436071 793172637 616944268 972037566 295248168 159766096 471409276 592333380 853689741 515186941 679833079 983808202 976228841 169758810 385263324 839877930 547089740 153072654 315933100 258948662 424679101 473556927 27709051 162469292 51065807 436422778 903765971 439854327 836840127 453212885 897837191 503785866 89362863 230011297 447644687 809834445 736221407 1021019917 567847931 479612866 772087632 680889816 696169470 622597795 310043368 728933370 45773237 323423076 373209430 577254530 1068961025 42488999 700752091 332563619 810943934 734153139 883151213 574935520 865874621 921573394 170365604 604242723 481464091 790045785 383791524 161988291 693444272 284920339 1060831511 747191676 1035578869 497744537 221999138 478531909 91609660 715584837 13786611 788428642 747428193 50149186 244095779 1014708900 210364670 679310711 645197447 971814516 642577501 590735827 232948834 623611847 1005345750 310665883 80682758 342736393 770592602 22592501 461262221 876723195 1022999103 699875777 392196483 49551478 281789734 209628828 1052692768 370251949 69347416 876368147 733327172 197930088 427686167 916596389 151131836 1020640182 970329069 976578670 857660384 307548700 942281076 235707785 434657503 215642147 375533545 768238466 733163134 925997465 911017489 15123022 408757 936032196 996153923 476740659 165509573 277724838 248163324 425009656 910735982 176580451 974683955 1020975564 315562793 459379976 184270397 438097250 89122466 140657981 234346583 853240729 704779583 554989874 898010854 83045022 952539487 620983958 240128421 117734034 22351675 499070241 893270007 35988387 858444771 1015956388 637111483 897972456 103235544 12131633 801071771 858195433 558568691 226194808 276979539 908629768 1043022397 229445172 451937076 878736044 271020292 905570595 223814429 130705960 105504383 439627892 687340069 615725009 67842523 893684445 384895087 142448279 19238376 292164228 203659951 399186211 476724815 957275171 847844767 775456534 1043743429 1035862892 516758856 186050594 704762410 418951988 643069331 322072623 891756004 402437019 858209286 160184473 1022249948 573300789 824918044 157421252 632764728 449025239 931953263 922080570 1043945315 952790476 780607565 602454636 178797680 713373455 850898400 196596549 53982398 68969692 780589972 983259324 957694898 807204682 856629393 689350575 99572742 137892864 294322955 542273760 960264141 810817396 185091620 247604460 138834515 239911710 1018534010 154728079 237381190 640381905 574187057 942423667 849540469 644042427 941837673 226810214 1038892873 609510547 418368386 91053721 33934267 980740124 459798448 455218518 857742026 61985570 343086482 305042666 277935867 727115742 433150930 912615356 847322425 904884620 536966810 416032674 852806162 536223167 99974104 746035106 583592333 436809809 1007312671 882409306 774649338 135489562 90608282 982462974 916784782 354154863 595130907 56273613 716001181 298383314 103677088 700264577 708166900 770264343 1045204674 610293727 494874660 235602974 999385079 478567481 175192357 557855778 845078875 825839862 1011114127 301177965 543426284 748477773 557334607 956278144 551327346 302051031 247092114 260556708 1004244133 248793973 523222482 229553793 533116714 942491695 974923195 189915280 909087929 668254086 32024509 388794928 911898831 998421488 883163210 743279071 666603744 476450925 353880068 332487225 487665517 266582002 160194301 19310404 65850870 985810270 819490642 127645144 39296862 267406913 1072878415 801057292 72617051 440039759 16316300 666162244 496417254 1054505906 357752290 489316054 564763889 654335652 365829963 933369796 186888649 954068318 365767267 745950757 957538802 1019716271 295494932 224752572 143070126 123104767 618933007 660440920 767637070 355317833 275706681 829492792 398948027 229690945 389806583 404889541 334858665 330325256 539387003 156777130 957398339 1062500895 257089581 622069766 1037554700 184752335 287255042 916617278 126910617 69030018 661708357 437602977 1005644280 1030821774 883457355 454879405 161812660 889443391 1058005771 725974302 459082831 272111315 714079299 561425797 600843568 1040717794 823187175 941696244 811922101 505725980 255023530 268009748 546393475 948672538 187830826 691527414 693872701 206680318 857815658 305853126 895580753 201635978 416854297 317596055 574380992 711056513 635821858 65471785 992574882 310766206 323975298 1069683624 985160161 170229913 726190225 900071417 839920367 5764495 983728949 261309991 933250151 277871526 8596643 527859808 980741471 441688906 431650208 248111547 815575277 204416203 185397354 508297654 247759880 230345289 266665054 37246125 784371736 351755009 264382923 509609300 695198838 552372873 720970250 217905719 88621446 236608643 312261709 108289769 664682787 1053196278 920443129 664281852 418243496 357031590 692878531 72762149 631830473 522925687 305866792 969965739 244979369 731314904 383172338 221883023 658038015 147844223 726744122 719089739 919182053 184481229 981368340 946325567 730228822 655661207 157497171 641258097 191762160 276383326 517078375 15698750 925219843 604628120 4248130 442908338 990141800 422731078 924265352 112737960 706830059 356456923 652577530 625411231 306581427 12903904 449002630 122467575 149945077 567710459 553840979 447476363 281925934 982429306 771645996 552162782 910984503 261488407 1030039605 393387511 194321248 749915033 597597552 895157381 932094187 697183706 564096551 613995556 896402082 590031776 821169040 577073721 26750585 590979687 722241999 763946186 320995693 333285071 412353936 723584509 660607918 466650391 571095021 548724487 548555676 911367761 926264196 771379965 820136767 181321422 279360275 386061453 708893382 247463905 8122537 808705907 403179689 530031324 908876487 177273425 524002235 953801314 881290002 254467717 684659385 378655901 28359799 754898284 977661710 127123053 84681913 411250623 248901182 313720970 801725699 67583431 512044267 771200555 74655600 365152162 764363733 491824603 512742510 685454231 1003023329 827572957 698325367 1067406049 726909717 789388216 143526795 857841597 949772517 638712084 485472941 639766557 953916720 543369318 864626386 17941295 667996877 115782410 521386947 147240142 173098502 35714689 894819598 560421905 207738890 645930431 212785791 327875676 781305354 1064745999 1052469024 452736732 257736203 726429612 601369619 284589914 489227502 961963069 547662425 57474694 361407313 843516112 944252802 602896279 559631719 935902977 332959608 1054828236 897144512 95665916 468488986 967722777 609740908 161389425 335006664 197385659 728626781 157810501 336668160 894369183 688749645 114801841 866238012 839104410 151454498 167224125 1043490027 1044367942 238156943 758114914 351608417 784254006 1033135133 933075731 407707203 347552383 587219101 305539122 172924194 473364105 251841916 452897316 401999853 721156321 251338989 766123 641873757 28701595 911445015 883655849 948382321 777348132 165065157 495766836 135781516 25967996 890861296 660049199 180355813 48212524 654868780 388459207 17640741 616268136 1061643778 208052676 122664629 311103488 336424760 960378047 753524183 896689251 196273079 681193071 307860782 753962646 310441536 578911866 244949585 619858089 931880627 951024319 613425761 461835924 332763972 887239000 975554970 873528675 250038639 764367397 52523072 560652795 556422299 598433342 37679676 497989161 1065665349 995080567 540873819 53855106 521109341 966341957 130765191 828265672 838300648 610721243 1007397832 417947845 255974998 718220277 231716831 28036286 464632842 46622683 441476559 699259559 365042162 745044259 77492666 230344647 334499834 1037898226 373191924 369711872 522873499 844717567 676340006 329392440 116139565 60398137 430666706 1016753036 316186462 852679138 490236542 531413811 901130817 773081142 600015523 147230471 325489440 57487035 986373694 683090033 72901388 935910264 688204302 281682316 310660337 854323813 830354143 1064948587 985790219 270404871 427617167 460030548 525697657 864170615 576446922 683930978 867396772 1018215403 459723393 106278164 44721700 375940877 77106261 210332894 601591664 379482184 537126461 318238332 164623828 961013127 332719516 395890614 669896073 431085085 756047551 67656361 977553871 391866992 521128291 344360537 1047061833 1058070717 535006538 1013365047 1072260464 522287805 312150293 76612276 896893525 207699156 437887635 494969477 457536796 508676385 579117595 970927738 633415776 78254850 621533818 377393970 774708235 793002208 612887651 1025816655 91038505 471422464 917554179 164975249 104068935 766945538 812344667 894177493 33529504 708745658 372008556 811781775 194041356 140566291 75362911 114534022 879642153 526553433 353904347 491098625 14185899 832900568 189506554 895768195 988716632 573784007 1042544844 347352732 53719376 520272303 6348761 903386591 704591674 777509001 466395 206807644 621003661 777961036 747391183 578496822 768946318 782318157 621753820 740062321 140294935 222807609 853084392 80894436 1043951543 996399912 752758693 124757660 165920804 806139472 258563307 644824548 271886733 870996422 290017165 931179538 21299078 126041546 975949562 239815730 536218312 880706115 500711636 1040197153 244311087 90931171 695232895 122024934 413548411 339208904 626307454 799971799 633833210 621328792 409754940 249459616 596064561 771915784 40796054 676662800 1041363015 702547393 69429392 381896915 592366374 174307333 391086881 817459991 942113307 848148997 1013171378 523115776 451890193 354858978 197200768 681945623 520463397 913197362 221746808 920629229 638404552 223196049 329936176 255864314 1003614296 404282669 241807437 1055222173 105103838 426948445 516147924 745137320 396465963 289157460 583750443 224026126 728207149 701827008 631407816 171466942 766528370 942241211 151081324 851233982 764200357 704987588 737681404 417717948 310554010 171048398 756944135 227765929 671102921 775026701 900747251 477814954 687945473 205941202 867073749 303209278 487688162 71957435 1019724771 411768689 743788701 50140254 107256918 990704070 1073218569 715024740 244297593 482148084 97555059 303940554 440587296 155890547 730852371 422185357 514446314 696250502 797507807 350126836 816286756 5469064 11122850 124418328 853929927 590802600 1014110924 951209552 87829235 141002869 194728266 538675482 819784482 946878538 808451649 789265406 524078073 461660963 892449269 435152984 1010815309 759071547 1010146176 286571035 48422919 856428306 364003872 882978080 909994456 111816267 704471632 442744658 121372280 423280407 573886860 955002536 467046891 509698557 532315906 965468501 531717382 937598389 578858475 1057568524 562126938 1053843050 58583630 787629505 289686746 288322051 695699920 279308960 194423506 97116423 680006037 695851240 318805438 941458242 235504483 426625114 301348853 360564428 236822398 853700592 1057842259 1001668881 739008478 179185084 505925725 31527707 1066316037 743187205 346334671 789190878 924121280 110766523 10894701 425561201 138041814 235947041 119545710 928821346 182194342 233301028 900731230 965041842 538924591 212633048 743525994 233636974 1037730178 52193406 446350917 412847186 857014391 178225198 45730955 319786969 221675976 751486013 623401232 910355953 821776845 1029847968 87544917 854089251 924722950 555713390 756955556 770676601 848924111 306316677 133161329 982288538 461467889 115116749 876557730 101344999 242703118 777762128 928386848 583002510 957259212 229344124 817438799 594083726 775030698 130834336 379763182 825386609 806398327 737379462 366259424 1021256768 685430518 288064648 741137941 385212058 1019626629 502057415 725891174 834373022 879256811 811301805 438696347 935054077 589813512 371157924 793338698 880961299 399744919 983214932 17111497 776756765 525253344 625164828 488384732 554397669 967530151 813904516 419912619 767301195 1010306187 470133724 926999888 757519641 144515940 431795042 76889032 116500410 460596564 661276171 449446951 268751870 194070473 444719931 904668269 46600731 222876542 175378781 733768056 1070381648 442198717 752143201 207797616 392771580 775194406 733338618 442432321 519915292 420746942 457704333 404723881 1033572851 189063223 796521521 828092948 115834279 693538725 702431184 1062705728 1016020439 589083071 679901209 319153698 293525744 517631800 775026120 93665732 234525565 216281852 531507950 435266440 990266596 110410763 862018436 797304512 413519661 846151598 832046365 570232214 673601848 943291300 232272716 1034527 697281170 465496407 35973781 788659267 765911290 51562834 206482258 300984159 26315087 310703344 16625483 786827224 780056036 447592220 152853029 676101172 1060682842 466595426 694448191 754614815 255375237 503729798 587930552 828580946 282333153 829775971 24972618 106552243 373402660 734417538 150118572 567397704 767014127 948235267 41018794 915831095 633897965 205546008 327463221 1003724806 757173479 944183432 539116096 1045105147 583900655 513403098 670705086 470349859 174340297 402096912 88909083 869581321 209829740 843075837 166310115 952480426 287523089 764970938 57674154 347831968 137956579 528641436 186273684 172863698 753106879 886082339 747968767 355755262 346756158 182304644 486468031 23954097 1259091 169366355 868035073 681732796 985324321 526019314 967369576 48705074 643918507 146039991 147933656 323594826 412139024 624677508 171415836 172913169 909423372 801242719 654773804 436696727 320401775 1022628750 625473924 66449782 387177193 771570880 225380738 622447241 582325786 1029904488 124789087 305039696 363736384 401116776 951459799 230915521 384556433 24675703 759819050 990294960 857622711 462469746 739421320 210481595 414447447 948613922 848726305 445830178 959302904 486282857 28863683 240439411 228972267 411051701 671341355 900031584 105281341 696987248 555709508 865143494 562512625 422376688 754288300 190326697 988257818 842881178 1066286352 569759070 275857865 397001064 69319139 399025174 94376312 303153279 241867349 712895197 186204845 1028288231 885131619 910778729 941357020 746736031 816272399 795253568 701261988 946393007 498462476 854664055 859030663 882103849 263305757 847621996 567436079 304588612 2195084 351721795 865757162 107630050 129828135 163951000 724965740 1037540825 781740849 449933905 390593105 195630755 441301023 284174995 749662099 680474266 432894776 131585999 292503302 894710608 1064816025 1007574647 511456067 302786959 794628538 982490012 1007181082 743731165 472621530 888785897 256037797 335834999 263612953 291080512 874020607 444368736 932572365 330444015 973796903 1045018155 985432892 608242211 661861641 415979962 260600346 223985184 568067815 936916571 251892175 33403632 454885069 879338450 618953538 457624695 209170428 271110681 889836502 245724812 372382188 291785269 278964904 159307754 126423240 299370386 735699638 163497517 249743127 583205218 433556193 699544117 650259878 287626264 313135433 59617659 496391103 728555123 802133319 876483232 36558958 881960645 938143099 9576100 566094065 970497564 1018622345 278057304 1026681774 787857920 674234312 517005503 820949259 288747288 862694228 688691467 988035941 114516213 921121753 411994792 845457987 369680088 686145860 930496742 544415891 485837288 894480875 312740609 453402482 919344403 730868970 517892654 777135275 547660167 999202882 147419972 513320343 237260760 927421009 366524318 494733535 687701874 328539283 262815018 1066780171 793876074 180144753 937476308 670617616 576813605 668703821 169984270 185207145 620874284 816369731 420570259 331600017 295195572 62614777 340269476 533160572 218679490 128923957 503209744 922917805 901318895 501501202 497469990 993417711 256006069 864253398 106656837 899033609 397134779 692897961 415299610 764237320 634252184 412964247 99113689 796853003 89807356 743876399 747880388 106445299 593643020 194256822 947784825 350209655 950698646 1018426951 335453145 379125944 399715789 982225182 851105227 778974761 939653931 876919571 493302130 302664357 824599647 990391238 73286975 726403764 635423845 361908316 597224952 333116297 857205526 274475998 1051406700 152308040 1024000729 119154034 267347219 980221713 846396927 549966493 1052888947 833615761 249275302 707282089 972531230 213355307 588614062 615691141 427614341 407833640 852981867 271274583 941587171 752770739 609630834 262758458 897307951 138178388 60979100 755006236 304205965 522131161 465826386 62722571 455479677 142453907 348090746 602911532 79786635 416729760 104047035 122038159 297449772 615583658 31627057 561330418 925097413 729761303 854671466 1036260651 832351431 780273969 54164542 227426880 372293378 954144872 505789788 660837450 971589230 1049145296 345417005 317538036 885515886 575097059 365699151 266660295 61475816 599780625 1007444476 309982566 478153453 329047607 875493115 201039345 933776609 842305351 187289669 348674042 824052572 225549877 882037918 893271953 356799478 104236081 672906311 50233294 127407152 1055012048 556525664 185532195 813973174 553621503 734300356 572825642 667646309 511913559 527950941 722036412 707244963 883524573 222313721 606240368 904954756 179605865 459947144 1662880 859762153 117859693 643552212 103415851 492990146 100946364 198390926 1033778503 607915012 280750999 941654455 221028549 594237089 506503103 261834075 525080305 266905415 992139276 356836373 17388397 1025312125 125630568 171976399 241245128 211533661 957691222 624086201 990436727 253065411 12956474 944551725 59525403 144771482 834641934 909719701 340125560 949120310 833503230 263450310 559400082 226851506 756685853 18143045 555121698 240465620 367094262 931813829 851621095 838376748 513069344 315941789 118964552 167017955 488044562 116406053 593813807 827797321 660179219 661557062 370285730 911436938 190313183 495757969 431557528 348645376 567657482 8245869 856611957 982067373 594825718 531118800 884929889 954805084 56081669 153687959 851362861 70534881 270816304 117285770 982849489 436701531 157562548 64747823 823195500 673909423 381223181 17020411 823115111 844671108 281738168 800331428 218966886 211690036 730417313 90215412 906324172 766096638 264327008 558236528 819089397 715731770 500610569 726299319 980739579 1013512508 798092076 553159252 1073191102 695166410 829500147 1068974679 1039534126 817100436 982675974 449931871 242439711 191300075 753227855 375335981 282006950 577443846 498867433 640722493 326696748 57875426 400488763 802191353 629862707 448782966 780226972 649234127 704674630 21384419 651051504 308504124 629609281 342411601 764597495 992811667 177577639 756745511 21678930 411638305 307799041 840465461 217321229 579732849 524351187 790849218 962408577 273425325 454942842 190972662 298408005 187685331 615863611 158184471 512436013 743315323 762552403 817813504 791616297 912932313 291265179 825717665 58497816 1755799 988287076 756219445 146725472 519628006 384158106 56062451 182955843 191953943 508291964 592746439 796250561 767009518 594366430 224035500 388548776 232693003 515317088 318945701 143409884 607909037 420715331 414682747 606330568 127024102 916640101 491588713 940674493 142100601 364882394 674376549 55520077 398829698 666682863 1050810622 304672660 762350378 796844915 451573459 1007223101 431605259 461551392 7464698 963081119 424413409 225478203 966201533 665151128 907745379 158957509 948770736 57369438 938773469 1036571415 156992783 949523859 585407256 47271401 624152206 679385683 701656939 361830512 100310737 615622759 196353153 991946374 453434198 883709162 882491494 141843523 713009997 935196618 1009888485 729849011 766332813 470975337 532782385 492175101 1062511816 430419714 527983159 975609997 530034504 44653360 360704453 851539432 569617487 862417035 881100322 68929291 315259503 224199986 552800652 434225023 488212449 966892222 989247464 685680320 976800338 480973018 129078554 1029727750 255770547 987107404 856125019 655864542 302725931 683256735 624274004 358588141 470151068 549863712 985949080 120099882 568241343 1033463679 260612550 60438267 766748304 868327414 720933868 1020696264 942871783 39319629 746892338 752685250 598176992 151108441 774557743 1009309510 53571775 775781610 925925178 404984787 798637591 577174078 408483567 40165796 686446811 479938418 589537177 317929446 50578759 777958193 644026453 781721200 352847606 414565948 556723974 342769924 351213644 1047067884 928090354 850058999 636659492 290344471 61590007 623382041 426701982 118085991 981126599 1002716631 528787474 182874186 1030607471 366706477 546659947 31870845 803142050 178164704 243601868 440597518 744976753 563745260 414904350 324251771 189791844 278713106 738208794 316470529 824571193 645690414 159537944 264729122 836798376 930687818 751308738 90007772 205104409 81094691 435553855 1033152626 237583636 183141697 82020691 978663784 727267596 658699074 945438249 494800056 833186524 229485593 242808252 434798007 893606428 147309113 915718799 946546204 303225675 437081456 477346434 770044481 426631825 356573723 269276003 362049099 1028109370 223388713 315009582 870889451 47630816 940104877 362675959 515274394 608400846 1033022064 271979855 1067362518 516622366 169373860 67437835 950698233 251200743 529937567 351158920 594884380 775994879 91111589 443476186 663631206 892536883 1056554913 499349264 228890773 441176349 264162472 836521621 608020121 280848202 276169911 767478684 294098429 261846410 371179352 289594721 334009141 869533173 519374882 1058264310 130136369 679361613 799335928 557067822 1003912510 926015422 295509203 465557447 197177535 366716297 568106535 194767563 539233019 43051142 308568829 547207097 1050390758 868937305 432885513 300290039 935658747 1070074117 820034919 28744760 552765225 663803266 839889267 841522771 342908062 213542245 681832449 422891729 697655863 794453770 518238940 656777117 361189365 706504861 422364050 388122029 778639290 24350742 410498258 488214511 897615667 482117770 29434200 888064356 561030917 83602701 630614349 361564186 351301510 973459026 125287957 837808271 392672642 280018974 574193188 545649281 250818873 1007838889 771190379 217773008 1058115780 521401134 536940172 531081257 560389015 293224409 437922553 218852411 711534958 417326779 1028390488 465688508 271286317 942921064 442620887 956604667 383963220 681594073 532673106 34834126 390108895 789917274 279149730 464307342 254899207 646166753 503472340 976005086 633631881 1002033343 747277370 880512931 834410343 757124190 693261171 652674073 759735319 468448631 913929484 744646432 645453885 257814777 532011389 501582398 615840235 651077101 254074433 120058386 732973884 640521569 81043923 524936241 772940810 654679364 61517253 908760609 317905474 93585780 103086545 333657185 567264877 919138273 640974226 881623520 1005464280 150719713 1059510183 211396525 316848565 477622649 764667641 156021366 600664914 25608051 284278039 2836160 648623579 1029404835 786651322 113670182 946023861 489836026 998640350 351578340 490537799 256395752 185993205 535900710 1065737765 535272024 31970100 893857169 291420110 100700809 196579102 125717271 35203909 473327114 556848545 357447332 682547209 550174279 308172365 164944471 810436754 78307438 276117490 824894291 617857479 912572060 866049180 945646543 546316745 926201302 99527486 952397981 309063479 452038455 828830304 786382681 570016301 169914868 966631569 27818704 645155946 532580621 739890033 121411489 547594594 720435062 739587657 305232767 518424844 759781267 485325442 9126645 142837050 666535798 364285265 1037673147 986597555 1031263107 865556275 30470207 480021223 961701052 437123836 964126906 261992518 809815031 9131982 357390519 1008070784 790140153 474560910 158031679 811614011 601544547 337551657 523028941 893634216 238638537 635900842 306950022 178164280 492512969 539502512 919473482 294059916 101397090 1054840404 608989158 252158697 6411289 810880145 1010815024 761263543 278789202 1048408817 115477439 952272856 768691013 232366339 435725654 963707981 381575110 996333312 963106501 134610473 1062130664 866743807 439076378 601432001 351533734 613572647 219584770 477899050 613669625 673590933 309398037 72228384 869573703 604695666 941192435 809531797 929047906 209586229 1027819515 962502974 511199975 814515704 452904842 606515568 873987223 1071359504 953494921 848457451 934850784 27475390 229996839 847729726 73945936 837178754 529481169 796642277 211858268 64508291 847375089 325832484 493559154 759756392 106197043 117962678 1050923607 581042811 186869378 417101467 717365049 633612814 168783056 257226486 217892241 749723177 780766825 138809695 792996229 243203769 759803404 678019984 942369139 108016418 1009496376 498609362 243487804 752626988 103550418 155275145 111252027 784236287 813331040 116543134 680035855 340042925 615676181 327835822 531912348 388675321 293493983 326881154 805097599 498187854 216573207 195940347 661516032 984787511 121655538 55488314 437762936 537239547 911594849 11762466 946248695 1032903944 682632187 993366531 665467134 757646774 690237212 930057268 735846545 495176629 177408226 88265611 509921552 833587639 501817910 86852108 787110497 292644317 433518967 359209792 823403825 696281682 403115303 501192462 1033373543 214775413 296806188 738529744 444786680 726372832 85168672 815540174 622107589 321023951 1005169087 734442044 982154923 700504080 188991046 496951229 881788707 101749335 849062391 46137812 736434032 775304135 370987017 527369709 399978839 366712704 271997555 48784151 353196220 553283996 308005784 455338198 673667174 1010565267 635999658 34013672 169876847 9247948 535215829 761853162 553652456 622975400 537810154 574985501 1027166469 686471177 130841814 78400713 148038945 1009880206 111402282 358188142 1057699346 577501642 231416723 268378817 375847866 988298632 970260184 482153905 963041143 991720899 244201763 930009815 8986265 905104556 568703483 519728850 813655865 739845088 430681245 295098003 645027270 4010567 1071937177 966851043 201596653 468990444 904142247 594203216 1040448608 323135981 569141642 374201893 494583977 685161597 606718935 418031485 96882282 392065375 1019401940 771277862 323327529 945219804 173585478 590608116 958255118 109289377 56220248 188794328 210265505 494360814 1055529706 166811041 766058416 673376076 159410329 751707582 810192650 874814945 302318325 333381052 556379409 630521867 516444214 374102002 150177219 31471704 177091464 516863701 332757219 92206002 193165917 128454090 983067058 377723692 709432789 846039146 1070307445 77467412 961417513 216426588 675039576 954254207 999290594 873928205 771665172 658928780 333329387 83861237 857725832 552533643 655884355 321979186 908315742 331618378 89118865 966166752 612298292 1016080473 278492106 206551765 878325717 394843254 124672686 844995526 23226202 156626310 698114704 873198369 148158277 488877182 493903053 813459163 813942993 566288333 568256838 214367027 485752015 930109322 457220879 328738294 138649156 914805580 859132586 526760141 348237041 199439373 557623583 428257640 572091324 926390425 1029784461 687706201 44112015 94333263 886571731 225133172 216083862 43397922 1063744841 10409034 985286357 145034777 521739893 912074837 8580866 618177301 516141965 319059176 622230683 563398742 540941152 904518001 735882530 933426656 580031364 763701106 554013194 969595031 269864463 522136148 836256877 209480708 930984862 1016661303 305258021 924406114 758463953 242550347 111461072 111940442 432312227 678178713 103491067 168266146 102627237 709208638 867388261 768280491 411086387 336815115 679893918 1023004232 192383860 171159697 14025007 846069436 1003395490 1013818055 549219500 353799632 625507841 719559992 259496571 807102476 54866745 272576896 58183674 1057092262 614164197 405487128 30486383 618709933 1047846960 614409907 678901125 99676273 785780270 845340348 1066957922 872189945 343767907 981114470 875836328 107870883 231054554 842950678 810972871 12387369 696591631 33088800 965086975 856228434 215795824 154876768 992772774 786154574 297994114 599410221 212583888 629949404 154598080 481368170 227215140 940109731 182076755 476383755 589907246 480024287 840631986 304065809 1038419783 701249521 615584546 642207168 702490774 711643963 482456029 978834541 716986145 518146967 985761205 284982984 110688737 326812876 142633927 110148367 190308876 508391530 47338863 383560825 37581536 659275359 512556742 922468433 965425203 910997280 550930669 545159858 684844203 800453357 8581549 598673953 224930150 922305422 568574890 1000959613 961500679 259910921 737026855 19699025 196563534 557235145 261117071 359105563 747253364 6269476 317620805 244287013 197703129 290461408 412630498 392039112 606904209 1060323085 338205824 420396159 527353288 50691666 587298310 1043170820 717360301 778211903 805698368 422862366 246070720 341759779 352433110 1004877577 137189734 794715189 493368 653324024 407104235 1043799820 506569886 187107811 97534933 997839784 494954811 242594859 359795744 761287983 768636350 564306747 748665620 523677197 215864014 68193982 928753949 919093478 989383566 678190358 310929684 452785757 368319450 710596068 512038153 157499563 361633303 1004266748 1040862922 381427849 121910171 846750853 885094135 1031721771 440171817 695257857 61695499 198224205 723435653 116065126 744764276 635186426 716260455 797238875 712355103 1041810195 305922405 608277219 158920943 943044268 748614346 688300126 50789298 802272767 73479268 271510058 178172378 496597700 510279800 341669589 548792457 918159439 701743684 897324337 679608588 323795808 531930224 236800877 815498526 864083700 765781134 987306600 505978193 365605741 865144894 268990437 660658634 389613810 620526773 114691165 766437012 1035279540 195902682 101014383 80505654 599463895 759388586 15345449 607484578 487558522 501279306 629968806 153008322 908252527 958448759 252617507 47449194 482627983 360322289 389915569 411017269 538247221 798474137 454190582 492355381 346279321 964123197 1028922940 715554525 472763169 135259741 1021220824 717771649 932802900 245776455 797597338 358638486 148850754 1016257261 249962204 837837964 716790041 518229608 353335063 574168889 129985771 680085630 239299127 194015406 404114467 195365168 351002290 536914353 972156225 486689176 758310826 508955983 818025715 545484870 1043299490 1062124231 948430525 98350000 333507151 925254622 425912287 346139079 414156482 227384851 393535067 230236532 73830161 177505843 488851576 18901543 879320445 887838224 983138752 80331683 935148899 553560921 182169404 202923034 1032595985 240409911 630435771 450590221 255397712 151122627 961055801 38819928 845330902 749734524 802582827 616281773 574108854 401918173 547086458 482974146 627995136 646462377 36220682 194377685 612163764 381974878 164249454 360504460 883385304 791583938 770334893 762815998 146281182 472504897 939831782 846637942 600917362 770092862 283558871 1037507744 256268287 277993892 267600013 917017483 139057381 1003388746 156145612 432249761 450840977 1062726233 295514307 710917477 619525075 255876059 925489923 1045176765 138346868 213921819 895257674 105481605 299578278 46840349 832529379 1072383108 302272334 397721278 864424878 46531965 1059599214 723778326 768442560 628527075 454768795 530739713 99640127 844265671 20861172 1071098756 720814254 395017190 960996328 895442121 1038574632 481158772 154411685 1061883118 777201605 889187631 516736817 385605072 46768051 514481513 666265064 992233928 709486183 462164150 834058749 178253514 755512731 761006194 314101339 161917148 1067357633 40014045 616958333 260958691 169569572 897042437 513472171 284237824 796413895 80405422 496838627 204719083 445454688 224335803 834270159 1051252672 1001355742 190727176 815807487 580038842 245258028 913642213 880225329 403384299 460257590 249526145 850269568 245811163 915382580 412116597 340425833 697513241 300336524 1022716017 287549057 133755823 31502393 304881359 203724694 791037334 135815928 383630262 739859251 552505438 732888513 190331391 1060001022 919560107 248173538 508007395 664267560 63114787 645176167 343981452 327630173 769321364 607901450 909408325 122737910 919770291 638495662 46679268 64636212 371905198 548847971 64456989 587307625 1033669156 237486030 574974634 671252252 864170519 763458464 884780531 389770364 532344142 320537269 635997058 332054899 632854864 542125906 452251260 534194898 357074467 900982459 451549724 758413090 546204640 984480409 3309238 1048621577 125750783 972717608 366864542 848019182 47493249 963537861 20787827 651711286 230127291 601007558 770598513 137849304 281773617 372534197 363091732 890075083 881345208 744512135 23447579 574177078 1057393843 529795576 1003585357 741244854 881904258 102466587 846646038 863320912 57402860 86413352 1065657572 804185691 155857920 824010055 533879858 72048005 413034724 126235170 990591520 996825553 473000786 820035811 411564121 149786303 670360152 166774334 877271259 855230539 57831480 234949875 275328205 678940596 378820790 298477155 854919302 732197957 917726946 569190607 316136895 560182678 169389874 555867171 965640760 540203478 722059262 534592813 795791640 155346145 206641450 37467023 891610285 450696440 317548491 781067406 264973277 767492644 215808077 31693814 942159143 750345439 946089904 1041689655 5512585 15506549 542017487 172885147 309809859 37589611 165871209 907816385 313416691 549325573 729073814 929849198 585604334 594390531 281654037 460554680 298943407 330810851 35429824 156288801 429436947 205917534 227745206 936504134 840911006 416525120 642009003 1070637408 1072494341 468834661 639221169 557759467 1057976371 993871908 659041779 591761035 44432120 500208503 1014354593 619570763 723744320 139326841 565038458 179258374 824705782 646508927 234145778 1042172187 89695783 935995383 535246065 447119021 330915100 457977984 817448484 300513588 995292527 129136897 1054514575 329404196 405727560 383528726 650083781 703496797 441509854 414301434 355668917 6419245 284735599 1042944531 925680363 483245946 967239689 778266631 630869772 459308577 55395508 34115044 703159725 229064347 880412383 362816948 201154812 127848553 755143177 137459953 320403698 100643711 858191964 353817716 57983744 956820690 219551364 3283544 333582935 594233102 51920236 518953105 488441431 327518987 471911306 172079244 531389205 158895093 133818736 460879216 522093152 1006730712 673828983 59666690 487451111 624128868 686972343 649910824 692782017 182208203 536386535 1037261663 597483368 853052281 190866969 837011515 967614092 92562284 420808725 179234025 436921959 712615568 1013150659 415118526 66295796 258729089 657740649 283035511 450214157 543011947 986999909 127931804 305004522 520828550 745851621 502455973 816539905 511649625 902412223 671086032 855209242 781328521 437825471 1066719405 310919700 379302657 681026958 474336205 151375128 545285860 544526887 775525598 114472814 29578922 145708384 111654106 1019039705 680452988 349041000 90304189 1062367425 1011937871 864073874 280233718 251378545 288845921 520348275 258624405 249371821 268334059 316239505 242022807 72574391 981104296 814948554 717904902 343222198 115368705 8200894 765455533 854366915 1060699210 938238973 147109083 909838844 757746474 1049049475 297964980 540477831 128434243 673878376 632442849 29519224 251898558 584712163 971836430 836395058 173239586 217219677 219883207 502734302 390915888 836058457 162494942 829598613 490270412 1055027170 472441602 692372585 169575098 1072404434 458861152 629489151 15969030 5206789 113533722 491000455 60917542 697802504 730201434 973897373 980149767 957254739 209306532 1009733781 937219054 255597732 932274038 328528635 491634076 451154954 371034022 739691936 95965165 165725117 105507342 289825554 959841304 577211269 638969710 286160839 732104556 293985933 204399755 395361734 923443683 489078026 617138590 130432220 266505450 700618494 815501263 1057839197 938138777 230740164 904837703 556328717 214733917 870745387 414431161 824154091 128233686 11070388 78256374 1071716057 467510865 802407806 603901280 189730179 414291488 704774718 923384111 286226203 682172753 553493630 150612340 791066310 872373563 746926988 828883839 1046077477 955998120 648242982 633590109 387578010 1012520480 420213887 978116985 801659119 1051262089 755516463 643372254 441493402 959049799 827622815 28454607 624739279 925896222 508671614 1003942229 29576680 865286033 694056297 77772305 197018248 875739631 857648962 72987529 15666601 494259670 70526399 26449374 146192863 809517677 46432371 174325245 1034974838 88966565 488704627 546662170 355653287 432511634 720715319 111543005 979601695 302750029 666747002 874144474 795391459 500848684 218111463 589642949 758947204 910667861 124329801 365281019 249598238 830307857 258649746 1000472306 83742803 976373621 902276870 792831734 150356359 25123779 621352171 464406863 694837017 431976907 604393357 38612922 241401782 1008558805 75664327 1026052360 255530461 989295564 44827875 81291653 755510394 85683844 324878035 913816515 573836025 116608457 696661401 502132378 779761981 953456533 123879658 838716189 946950176 67061047 430973834 673675669 671227701 1045211470 684997302 393825541 187453828 743506133 803760844 950293869 978218822 761493619 163503505 296814069 825295322 856105499 251668408 715044604 767093776 988502434 406697078 285902975 156910422 886769220 1065901921 849460222 400650800 255153450 960059186 152193978 430330386 1038543397 797577919 532407613 435691789 1067348007 989223511 738713756 286372063 832963430 876795066 107112630 922144820 172621705 752277191 895479303 1071122369 808857608 12358390 643252044 1010698593 657379847 799332702 618470666 1027155957 65351823 689499344 454536025 895426119 1059428994 427597061 463724130 38675365 48214919 565899808 874277261 992830701 697910480 433072567 54751358 619888531 438335429 785650250 274068601 221568049 334530322 742262049 941830634 700925302 553980950 589381226 587446959 1054466792 286427041 919883126 387792933 720253666 575421817 514054125 1062717163 285905760 720399694 233534983 274445590 601119877 249074467 640131308 247188869 592956061 258135523 918136783 12290191 405453970 707901092 513241626 675155387 629484800 614904781 178931195 263984343 43497620 456429695 131573880 173376635 852577310 331362474 443875227 741853266 303880201 611312858 591335988 759800441 624248332 594894597 1041178784 524457449 134432601 1029602944 263866933 144656281 195965979 112332298 768409252 884408364 971300122 472299379 887739907 337764997 458665442 805144255 156291088 272197706 696756320 946540073 870405163 108877297 894261621 761159105 427100798 237663063 614495547 740263677 128459193 604625250 892409522 676824842 1021959508 577216879 717373530 931338024 137342000 265133331 1003610468 96242025 342741687 819732381 807373559 90152859 83406457 569562813 634443579 404504505 388298526 302130008 741268358 712820811 621396000 825303606 751764497 221069055 1017217146 777480245 382835360 411636571 119884011 390951419 748471839 720418218 502457456 659001758 903977620 54866251 634745581 508580289 368111637 556474078 148980757 464626295 1060541920 523857252 1009409049 1006629507 967789026 837233609 89844029 241748758 620961443 304207563 831000696 327234433 557395654 839109059 531380878 378552421 506500374 915015353 801633467 403038096 511124416 1013852980 57746650 726754221 516545333 592796074 69684692 28409500 444511608 11899098 628324538 365356809 250592390 1021663832 324146792 603949898 871376553 271535928 786199364 9734781 634438090 677051996 694252649 949178646 287121974 286841986 622848027 619198106 1057673678 619739656 1017764693 104105895 229375049 78388598 603339822 535544695 435898849 134072264 472514250 789622798 374689577 396620890 477426491 848641061 1052422870 408935575 1048757512 1050452053 950957677 624476634 206527685 566787270 282602311 994424908 102774294 357853051 617410036 412633669 1009956242 632922114 501776779 1030554102 627368535 921224415 740774119 977622083 703609623 164252392 778958566 86315597 459999292 519106783 891348820 642222421 766948277 567701959 1031045515 487888991 544063436 460101489 223076248 704271694 218993689 193376179 1045942255 615798160 555737733 967515194 580604402 603280586 916912013 611140651 472010101 386942815 843054211 664198700 331661183 565562970 1001109835 995961072 517343819 826706511 815077316 919654941 799861973 868904983 298922067 585218993 318590001 252622694 699721922 882361479 677572400 1058715665 1001181413 888103574 717851983 713220611 943946816 886868083 213209607 538686814 138132503 632961054 897344720 405103628 580871332 604368096 1015812373 939321459 726918266 441926215 587036699 227795835 413270515 520339849 969097379 82074661 192212928 513536511 132173314 34665743 1053090501 680358343 927649869 415481609 636640400 298732325 64195232 921252276 223511553 951291183 469425114 273593549 434933533 353376486 782667136 221422349 716540912 592302158 779336218 630754429 845495985 950455653 446497306 534533671 633115173 117947342 632527575 753050421 347132889 182298007 556160681 125186511 953227640 508833598 737513010 770854140 371403271 650580832 840145736 867308854 572098996 442033684 90044158 842877274 133651468 421442590 25370171 910873583 744733512 655659353 784940598 352518731 277325572 1072412855 908592010 894523601 630332174 601462455 665914732 13234827 1042132964 919536363 960965118 985515477 331152236 365874267 446665521 486933874 778791777 85094067 2433561 1033984272 747372441 872580346 423552044 530122957 418682332 354724116 979096658 1068505722 18392481 854218694 34289012 456600079 902788602 128251876 641065483 497302431 119754563 677340883 459670517 658451430 197587417 277793570 937827485 22697917 1006148738 1059281385 614886932 812133856 567651801 129873653 825496819 654555338 701728379 87545368 1071537704 510661945 25204653 636874049 846699061 191639231 785983241 88932256 836315980 461959706 799580329 963637301 986769852 765393549 980301332 236711451 61022686 801718002 330840248 944329277 645474374 534822208 88926612 752352221 552380475 331892078 122071217 622077234 948949207 494198266 137816221 557742840 478312964 973572378 730891820 573060560 607158508 646490756 849120311 165730072 756230204 74824442 970609289 857151949 340901195 428461526 698983548 332608841 668942018 459304315 427351170 428079044 80723843 1013888172 598210653 200911764 630513058 827115670 782819527 1035456096 693560503 151669278 997797981 25818033 986249172 269734577 655641009 570339477 962769876 680576638 645769594 36983116 141881719 366474445 519718083 461498105 86707817 1022879305 965148487 708502032 350099136 213788537 585946544 782191733 950519652 561743094 234084587 258945574 918963783 71463709 175581298 672624100 659593510 349386785 43822071 36982425 528291618 809709089 441230629 738629108 227961174 330398232 70467763 332125912 21561652 134217097 129533431 273289367 1048546038 746212362 44046838 177741372 625585538 1010421478 637512562 662429224 19436212 313612234 595831116 271125379 66314096 601465126 871598357 670882452 578238042 58088778 787377708 989978139 398529296 589938297 219730933 1018844553 934640307 195568602 1032041076 86099716 1050674480 382408956 576284474 889786063 973247521 629331470 713863670 100558108 840530615 797936779 928119796 1046480905 659839650 144921857 457901394 328041250 758546319 840548897 301179412 217141919 511182216 1024448093 89992536 439100399 164260596 926538989 744624551 499778092 94825598 399535534 623702754 398425662 816423330 723566357 421154918 1038568516 358484737 404201772 307016611 619978448 363866 143385190 299263544 673831800 41870255 440153007 301354398 784141812 292205827 862535911 681113809 842078229 684486030 69810719 876038131 643427439 690156496 221955968 1025327425 42891005 452868129 12188938 818190283 580056788 806050875 974903704 938423087 205160323 521437495 527949944 28329519 539063209 281202192 216732872 1039705828 612161070 603544222 398523857 409604293 545057169 491730207 804405773 617001333 328531811 957386580 1000686946 927891454 997665360 757556554 463555942 983736280 926103926 527400600 336608276 773714383 129077896 353240738 75257029 229377803 944552600 924656244 787002248 807268414 420546803 208429683 49397088 331001536 180906440 397096975 815565107 929020487 801565080 784067517 105904600 889203992 513577407 654789959 723789419 28510590 715610683 920424239 675997154 742131914 459167213 668772154 315129285 367836875 362001318 269196852 479164491 919840794 145404202 794001242 40844944 561492080 1035410791 26622622 645452315 76217138 471881034 843039116 185237105 372678542 644103595 398623627 358045522 965991696 350673008 454646490 69439736 1005019659 945986240 662256131 223473470 304465128 789594963 628396517 751462554 888172578 709483159 294131336 897689797 1002835264 1007412504 281791617 453819799 338973731 512926628 969886060 671336469 739340758 306212142 319813704 80831764 995511397 241356826 7800170 452898623 40890541 857212199 523280343 194392439 609827207 832770608 16412696 934296328 829764814 759844071 164330533 102442195 943379097 903600930 357405978 1069225736 806638579 50014942 740295444 884441303 1042409282 283472803 196730384 178634028 42127512 833036145 439557000 1071051803 748381396 928708500 669417492 926065572 222270337 520844794 99038788 523650218 741530447 453830066 985901119 1040253537 1044692533 806644193 298088677 344928329 43337310 894955261 1006423381 184249533 244801517 182101757 739957371 543855321 1005106117 287666894 346253479 240121604 495183057 263699121 97275334 257462339 100970136 948137323 583470847 251566892 558929931 717630482 35243164 336637728 566063748 1064469833 318654618 357987787 823671676 541035797 277164002 571907156 549450937 278210904 436930305 11757278 900094198 211761298 944121531 311024792 635462092 910312590 975756529 546287087 199458695 390238687 865578345 892195433 884531227 964175837 978100127 189205771 289121075 107425069 49179373 106029793 773312761 587025772 760007855 511458898 508129819 879511901 866362694 445864628 611368075 972299744 915577338 882071879 1052783592 789865846 246627822 57060082 110350126 621522099 911501571 279274855 411611669 258714528 443785274 332705434 251663441 831559057 396545200 810571838 98288309 204432843 659733973 404577650 4739189 1012697467 32873140 102550676 1045175271 264159111 717125070 995910750 349734443 147814999 973103450 938189359 974708555 807137786 330117167 868838899 615142907 10511171 78161697 396292270 6050122 783323322 5941125 995907535 16241347 695394638 322807728 984263338 54243524 103548165 325766604 1022726055 741985744 376880516 401062715 602484697 779045117 163000194 14223782 912671001 219693551 911070170 938015270 245062657 955499592 895710866 10335788 880446856 20977056 321925045 624626331 616867920 256501794 869709051 876893060 761852505 852687990 207768608 626592819 820830815 625705753 862927826 445650622 821428118 1013978691 537907780 47495371 200431568 227654384 145082377 1025627031 560245650 818372724 179614618 551547251 973226600 976839696 475153908 650890354 757949266 615703287 1000186310 326569348 412811209 207838379 886128189 210056230 412950121 673330682 336537723 1071290953 585521437 91739435 542588222 235052760 95736764 147972288 624190393 776744775 276597380 343754983 455197086 650324813 440130553 1058401031 237312395 974222707 264601267 93027180 735199033 294908701 858038150 68857461 621397400 855539423 26221078 683085753 129535085 927661931 100589613 1019191819 917206542 455231889 837778299 898037717 278396826 1036731048 855246677 625173512 491407197 306285961 991450868 928909944 209977467 195525765 193458598 862647000 791195781 1033041783 716221018 1062014704 685823114 9610873 97852530 570426180 394561727 593308339 721169952 766345696 487255021 761595255 197728178 253298692 32325223 484252403 196957138 555296281 428181902 695835014 17300747 512062258 733073232 664662183 339512432 183687867 152967 935754152 849077650 805771017 898882169 710108618 789828550 824540345 114819946 967790462 701050872 169015993 600418981 694950467 953284118 911194547 381656720 708356192 470459234 870696589 690601579 585087961 692218516 532564603 1040028309 821584177 73532448 872781867 88014482 987269633 260103079 492220353 12470575 8317614 698722177 1064806863 474743775 276201411 130157989 747155110 578743995 304415147 505531064 925721137 326567197 53631512 852386607 652237190 299090288 434586342 693178201 590862871 670738676 297426880 531915107 912976281 990951809 406534910 801337194 587577759 763960523 755519716 897820489 1045138782 329305433 128557344 1022944768 568621732 783727293 986273593 217788149 333567850 93030873 88891626 1003060604 783799272 462398150 762135632 1034776192 254617333 254212132 806583346 607529984 404426946 913685705 399878705 183557070 954969606 132574551 571848829 1050658350 409830568 162261653 91590364 992732369 551058052 786759679 1057692119 972252561 365291312 112701638 10272465 206699256 994358072 630806433 462976985 728038503 261826404 265002885 897461715 450088895 214612561 214109390 285970281 544141590 995874253 142200072 496361503 949555162 509738720 311990551 17975466 134180185 700629094 601808517 413463092 613941086 66869521 946561051 527788658 966878234 313885465 267367362 216426506 834730145 82185195 438940141 348903203 244653712 566692318 347198396 300451352 878101207 478067039 57681162 620697914 434929408 266619078 570668283 576483388 193923543 556634855 511896173 437166992 594256180 720131553 563800662 1054704850 142370473 393305554 215623275 632677890 962349695 458349074 672139912 291307299 794734097 1011217826 220135897 82155508 236542397 180696286 641715125 496121082 598762912 566219066 258457392 649345506 416396308 620358965 207889732 23073254 628887419 560390209 599599359 223765937 32624690 1059073233 352049193 784785752 248672744 750996212 774867576 1010153677 91978336 993764795 312314213 652876691 143740973 358644267 562098575 1009778471 54316737 1041989866 781986388 9345297 734996276 685253495 506445216 593634967 209017419 1050080576 965546819 973113869 131396911 619397648 687718546 168074364 743691786 874908180 920941393 596188979 170316197 476277100 176014047 1022933505 392557731 89206532 619216725 503092947 743136568 559406793 239918391 285717462 188973174 774819905 868339670 642515694 771731402 801127898 116785158 64088142 878455665 701155823 47220392 467102506 146397818 515921622 103947305 32622067 745606038 288283530 189681016 769904542 299547161 214849395 466243047 509242665 349565545 993782970 547184367 169737320 13393263 7784957 325377124 361766768 393663874 789232877 263831968 123741968 769831936 125260498 293873649 325911212 476350175 41193208 254474764 747907996 410586387 972325765 369684315 115920675 243502487 362658055 995427402 504942494 901401864 1049340186 52688287 21155952 653526576 771170695 585512206 698840694 51383955 712083272 405079006 352646242 497126385 639556944 234695784 123051598 735929074 108212672 175968200 782029240 708698988 826713020 23061268 998619214 210052383 136104014 990511407 607972741 671708363 478392734 856960416 682356697 120171024 444145868 172896567 909549796 1714878 46458948 169621035 320877557 158785621 355854486 536132470 901092362 170027897 30953389 17284399 216629190 411701243 513897797 1028672931 951252383 3447413 227111606 687531539 790338298 240935527 864470743 891753599 886909268 75031361 856775114 918833506 344358677 353131547 756013741 644643380 365501902 844270545 667645840 306151078 929652718 37398831 769225009 1008087272 641863042 632213162 393798179 685228051 526371906 1061312445 438109863 45368551 421968972 953104444 928687750 146403790 627767810 483132794 444773038 183127503 68853507 1009552456 592156460 860118117 490794231 597387780 823775402 109253805 758506353 180108863 953499805 479326332 515982209 278450079 382083918 415624250 112685161 844077349 130515813 252050046 952802868 894281393 815137442 3113798 680227190 827008604 274304099 92409036 493449041 427790331 295536594 883095441 321197442 386260147 408749448 184079111 701307899 746011817 898507857 317732259 957343436 403407230 461121279 892662027 129867374 657873716 360520695 540233564 822639233 248907336 835450438 895746443 386501754 895580816 39382820 1056719178 113544814 658033270 523472427 485196040 455519694 233501075 825499398 386371149 1072863505 535942385 715897805 393454682 62620469 884271129 600983923 821212396 123644414 865097834 833560819 833238715 186110858 889057164 736188359 567047917 1019879922 413968884 104526446 727294565 1034528533 94779595 984517017 222685164 127619671 853392499 376788038 159170138 414701459 233304914 113010253 1063184714 532075067 1060297152 1004992681 490252022 1058287547 437366427 33716930 199643542 754227150 39463609 198817898 1017471865 431530770 446445286 234596755 64724914 403739909 103432519 667303538 1069068265 576095035 73436836 248967470 1023106124 192046758 825343047 361763744 929099633 39260850 120913826 90186249 228997813 192985588 331913154 390081733 443849902 298027687 833496209 266773267 812197432 358644223 11221921 567170200 889256912 507911020 462802472 802908053 697077027 512635505 329852803 686999290 648824565 223456859 2950438 528565735 717345094 315877156 979903686 165026521 345520779 102048064 957453286 129913804 791786209 735698564 954112689 611717392 241352876 68592921 895034675 641961555 446738824 249020986 164321947 765179982 1068541722 1070068169 6677173 531096496 159870448 527148472 200051562 78585290 388720293 372043095 867892201 133218857 1069334607 396313223 53765427 1007700162 383544301 424161963 104119084 352889081 963949197 89001750 923449695 244443871 1069907952 967603517 237904925 854345433 491899484 673005542 789903611 25803389 278717799 801095450 332953516 807580108 531568752 536642713 672214445 326260854 555840468 761982082 500047913 447786613 546170752 922252544 880867857 723109979 906463197 164725826 753164424 869458223 620331882 1010158263 826614957 375973378 472357134 1050661371 108761461 716336959 597430805 337117190 929446326 871238088 941257160 127543242 360844167 555687658 14359531 805623423 236641104 4455079 27289726 1066237128 818785236 450073768 1034416899 224743713 808908892 146910643 777694479 734083501 312418458 119301991 587040126 858974447 288863398 247067980 800516584 223292976 840750360 721104042 994254941 568557710 835804540 674454577 975458787 704664028 2362355 350236043 940502101 59594390 257021433 465824014 521895486 406897644 888034071 203218439 678809583 248623256 1000060541 402171695 164878854 1028169632 132982460 60197271 918299689 369104321 961005989 483125548 428725670 130640385 606431747 997147887 224093602 191550298 137313505 683676983 917501447 912397331 339863211 1006519214 458773953 295064219 451897705 117587658 416648198 626768381 235493238 916686227 935684043 985484434 463903367 102059234 63586468 187596474 955726367 271632198 478388274 721106208 70594303 375943269 173456054 207894448 468804899 519699922 555523362 487061128 942248808 630481650 647245558 351904458 805083919 958863230 165780506 312842844 689066194 984429248 1007197059 448888064 297700997 614973965 887307694 230233910 756732077 848354563 950689113 399224685 840308453 22569406 125540708 261420215 917615756 854371852 346203466 657770826 627102190 4752126 1042845320 949347419 591233992 807814272 835196280 129672635 907721665 687275541 732156960 340692943 364805205 166627152 611516800 11924299 150209646 160772715 785229417 816521246 189004671 821146820 261612750 489030461 478313399 240960427 90306983 614705714 868654453 920640498 1041433319 309631672 780411342 563594410 121267360 801682488 990879421 1034341734 394940186 648062105 254080695 986219458 279506139 242427607 963684090 196778071 195867755 478523851 218544279 1045111043 253087742 789239025 516476534 1050790782 46444379 425994356 575700555 378564017 405331879 190262907 639244584 134339037 404395692 944740120 373120302 864088293 867120362 108166954 991887794 565971257 877775448 769882692 263272125 906784987 510979144 437356233 316513261 985681810 407426850 721714724 223538716 144633106 719234703 68673938 1042065300 376911087 902280859 811503682 942223214 1034988215 640906396 197889380 938783872 926955103 858619034 814358079 44651136 1054964616 713221577 375511434 445435698 36006297 163251816 804543439 668410707 508386907 175223950 327871386 676974661 256524345 508725874 200423580 760489626 971546236 414424474 511226774 81891372 927994313 402778828 937154738 351157172 899985600 991483490 485660176 237736671 534831754 1012478411 445436944 961243525 244559644 201577534 808671152 38434170 40572763 286745900 315578819 1067343993 517531 33427446 740915143 856134626 361166816 662065545 121284294 251865948 471493478 939276844 69940104 336675148 1049497175 86679137 644515983 225303930 804062661 106240333 671541083 462545411 1023628513 485269038 390464441 553939450 51597049 244435822 474335386 539939965 990967985 515147793 303201448 219432126 608524673 985875269 424415985 1052804337 487779102 344835235 679435518 826315588 138992264 989277012 1001561758 666468346 953336519 712225230 429700352 509120811 97097391 818563202 955533169 645857452 278203582 931579536 387241829 530248999 310208359 973967461 634111516 691895445 207206290 825552307 639595928 1065014061 877590230 221782413 725811830 196522727 149869995 913557634 846863829 133875710 937292998 80710421 1061219092 919018237 466475633 401130876 214510557 730304185 339362408 313015270 999650317 765762316 847029440 529966267 49605425 437140320 813914217 801862396 656799537 156446066 140557932 703801244 520462366 1037742020 888496382 356543316 973938347 793682702 990094881 33540059 220183955 946310551 149357936 973895307 757899226 825236339 1046945893 679739951 954788645 1037097967 265889915 854913954 948057189 771845906 40082532 562853553 385543036 70033980 1019135771 160303124 649622454 919601363 284423632 480682557 52213423 882415118 1043382158 150592559 671377070 480585700 194496382 929469473 275615228 309237302 320571106 997737258 124998928 272175099 97541537 134334009 701341049 73725106 744135561 40275814 701150022 702927700 1066364353 39150904 208249639 130751532 520843484 530596635 491209159 232823621 644166750 727482884 444479834 1004210986 550732038 106190606 851328021 62965349 588331247 186845281 577997100 459582000 483032255 893046412 510309964 355791432 898513706 718149862 331961293 611764297 880770079 72515184 720145187 198519414 451974311 721861337 1073572372 652132817 447445427 726499441 762069983 441839382 205020732 969756306 604726151 305772155 27216567 207801100 671615586 305124480 367356600 848693554 1065834346 357028459 808598768 175711914 88935915 1045885597 571453263 844237675 771600226 53474585 762075080 759409670 1051084027 978148090 781339417 789911974 564099249 438882563 738754801 1071493356 701410518 507076011 194298505 611338269 457061408 431338061 163698487 652682002 292717540 43909637 215372352 702839179 360971358 185554291 186427460 1034599003 1018163696 433795160 801596232 502367490 21431369 46270274 779143733 169216624 156914195 649406816 332920860 998516092 491531114 424993497 474850191 663281365 691462563 832493624 29848495 958630272 44076507 587084562 726365122 590979192 138116399 796789413 225720995 676857007 618954103 377727903 878456004 792321870 704528316 767709837 395171698 480038523 67553283 623455208 104948050 640960833 705222603 821434833 79167587 417452675 866173981 512911212 185579849 969386297 468811299 824010985 673690923 168559839 572373132 900312557 282948159 335049626 205873619 351582638 868564970 566534283 1004368783 203043397 198382682 816101077 921880794 730158390 1028862283 263351126 63991278 786723703 209995133 19635446 301104622 472096334 82334881 145365932 443011421 778508140 201439964 270654468 249753286 59303496 146659884 26718865 597575587 931569944 592484910 929395828 248726346 347619154 542991153 709933575 197539031 600498240 932240278 712018874 952660787 1011489284 242094883 1000595489 592490566 970681960 327372115 538886393 970623849 1042021692 684604080 174729281 81466747 221538511 411941410 969397228 591257922 279975764 976772839 529057427 978781960 709308066 326889952 814328789 264955606 938099236 1069034190 13625840 1006846106 119752584 448136732 22314560 831182728 320159050 477816333 189545339 343396571 518123017 837522157 149186316 347831452 329865484 499926245 946682296 38219341 542188568 697532046 1071670683 368590552 640982112 510121574 404749069 401227929 606701453 443018680 311492880 13859519 348789283 618983392 96078455 984607649 776392946 440184146 783899477 1022360580 8383134 764510321 641272518 968516278 337485317 217382259 648402350 163714560 994634319 915263515 964033035 871071855 552534482 186888523 855887567 898148987 9308016 839677464 413536964 240082337 606014604 625890369 1035780328 798374568 244658538 849742157 671850137 568452038 224347276 17555165 2477344 462476459 37877407 472819883 153763927 1025585343 1027944199 746184746 188291772 682961220 410373947 5350955 378151335 907470502 1046097924 18950422 275378112 211061131 606043431 1004042628 340773374 911394176 507262054 922676837 252455395 595443510 137542372 606877681 434447495 512532204 573491866 356738384 931028581 840202454 49063889 801735784 502316877 17785365 486169358 743056159 557588077 971857024 109310254 11928280 355099895 877853340 649697781 944326054 566407253 508862974 300712308 1055182869 306115966 149468711 687821621 262424156 785672527 265612520 975902435 170465119 257185223 220294009 261889325 160411929 818879058 569287335 508510276 537645607 76430234 794875974 391423824 961433401 427157571 352708636 686790494 836421572 939804297 973917190 516581514 917314045 563457752 949277034 539397277 290418588 183070031 355526571 204788497 25931057 764615056 668868048 497333857 134064234 33745952 229863816 220958054 883781892 33667117 361829962 883274192 965669537 805493678 423741770 573479262 717636131 918836508 1057675069 758498845 286739369 382745939 690663093 342030041 521975356 1020951307 463499263 651278913 1064770052 881146921 943654058 969495113 1051497177 445852149 250827120 633492566 503331960 634570575 687789171 246437832 626615717 583760317 141378817 949601743 324667412 754895280 1056645394 382058727 157305883 843001707 644009289 195652568 296181117 358607722 638490541 332626911 515077451 32483597 122057258 758526965 156538909 470810801 829922983 355443933 751532283 568768093 1032595598 543282899 972077217 290203433 107244914 766340353 192562889 42444050 888444567 358434828 263130031 19595161 487380973 1015697653 1033529799 542389359 1007166104 98670872 865192768 798293847 880795692 349114246 1055428016 334661494 997528121 1025230768 666532745 938919401 710560588 959463029 590909590 60554065 855171729 712345365 607143062 1069404285 60846402 217628889 282225586 104582730 116912666 119142795 779399570 767967974 465132704 295405308 285524621 292783490 21455328 477934851 62787728 538325171 756186295 220663171 151337406 194339427 403851963 461349014 765309439 724391290 723769257 797213703 770666664 313801234 1061248010 116704349 914344946 972662279 247679954 35939619 240555033 213239078 632763837 1012236930 288748776 67691643 265486454 654047028 102976893 535351054 945009554 521045226 263980575 1059564226 990378015 546423894 842391612 176570617 809169140 176680068 588077010 502072598 751760189 153918693 706928685 462162947 841747193 706749295 405902836 496589263 296806630 394271958 781745931 229972983 1022287975 481773853 170050447 1051949026 1066952695 607444807 147162723 1008080242 938016413 256887846 1026618577 120847488 1052762467 255504867 2108838 1030252242 836340891 588885267 91628921 697341546 830251038 225603155 974292641 1000773008 377505224 451364947 262449052 684135402 1030379922 515828286 815732976 422769219 391508190 187369464 13854183 361866023 1021700597 367866319 852653437 488219582 156804093 345914639 378696730 993372634 623501016 596404199 490572961 93270156 778982670 361437674 691361461 924444518 212640674 817508679 1033708831 103294783 415129722 969243244 31437306 596376484 111595800 412075692 627818691 294793454 313468982 797337946 273159767 382345946 933528534 384739656 996740958 713076925 444901680 117971087 877203315 640072119 441103510 966853030 845221765 852498749 100114966 99074968 783342557 708190767 976648351 716904552 908745055 502223988 31788774 723276742 903685874 246728207 975358529 668862128 617263392 612956437 964645205 964078893 704734134 530419295 707878043 472661554 230829266 793103970 468947154 1013617420 278948056 631701824 915971570 396908330 57810720 642046580 110442798 145666456 879398228 315289300 529252258 850470484 239949798 396480990 399079541 765856399 771364404 174378465 399661934 20957038 221614084 306269465 672804255 371039851 36263193 710742125 333858184 585118100 909808471 983642980 253233942 591789186 248017011 902811372 498662067 448412438 374248313 578905599 140409878 935380748 1063363999 442926883 598879955 981199762 733645889 747500352 224054027 938277533 401365583 916306865 50539740 833299755 244070558 486609338 466113557 203757465 268935957 424460945 831576923 402848398 703798526 300588024 542903244 113725381 512959395 92300828 737386296 1051293622 1022830947 823044047 881794030 195349274 520499560 634535045 84949236 453613262 103352065 690772762 831735988 200727866 294133025 100074187 5390816 621012737 957743335 301705979 831151287 803162054 427858335 957292666 451761578 519942864 891498826 863735294 168354485 309049074 983435135 962553748 530276850 880785684 938129347 397455747 518893639 517066269 973027257 551260237 206042181 959967517 742641513 944715707 854425217 718948007 885042173 390541993 157745610 627912724 108391362 736163855 808997133 105570284 58098809 50036949 409543787 860943607 722130990 552880477 537342224 407644382 537153595 643193454 294292326 858194545 951176316 473535057 152715154 291867898 625256422 629125423 612728529 105014504 650748336 401368097 586499443 562106762 118975037 369112890 891000966 997891111 672203163 108672761 441324151 692209556 963595100 139018651 317455590 785887499 208034524 269573527 475350221 1050460079 904413433 60542492 774422153 333875790 289478550 829446252 192701040 420905927 854724711 555744233 274225891 1003442144 541746351 120892603 929215134 1026981172 721545064 1026639149 156615561 728180020 974083147 827679602 235494529 352173778 275645529 189916663 229095323 560272097 1046010663 977473135 353243503 177399026 541922991 893618972 210575742 713835770 399593376 951536636 857789585 890359746 351276657 394089831 536311188 313972455 139812189 905694101 963683161 727446264 1769624 164168851 323632551 842496575 837933517 166242066 919399936 289801164 707726889 264252955 397825516 293884071 707522954 396743065 230294765 192773379 164103213 923560808 776134453 549840463 331351942 363683490 780964097 285809492 661206265 410512264 281475587 102666412 917325998 265640191 34595351 880128388 556940097 8127440 327799680 227610527 1018369889 528008344 997987847 548104286 682551270 14088695 277108600 617117224 582006005 319290116 753367090 871399911 112282895 999128300 724077364 457069873 1007981852 960842187 550566041 507465397 712013023 808373747 492352995 375333400 743565269 242771557 637272512 130182770 928098005 441484874 432892636 281290056 660067358 107146179 669291176 592929059 670848833 902051468 250600623 626149805 160324529 599337751 496648414 586653538 843947342 544019463 714413259 83531065 958645977 422835697 1012417533 634690484 450280801 1044723047 549577723 1001025285 835760804 1032830124 575971004 579348321 893004689 978760577 857359708 942751669 411100598 122339683 62198313 362802995 150435170 753974245 681762956 133825737 726040263 149742052 951477510 29564602 435475734 125562083 1068572865 86593295 377602673 941645600 506212441 443901332 721719504 259937020 1060219685 916716457 160098838 792616277 420256691 353771733 141484213 1057936875 561774035 790679372 446683315 557533784 114130838 68126155 311663849 497026826 214976278 193528975 361653248 569152539 137273516 1024017428 694468635 879288587 954494146 700821292 874627541 816608490 800223290 705210003 85030092 713008020 284454006 793016429 60893948 586105956 866086501 1005219676 323297336 129152111 703287106 929652927 510541951 933303457 134504752 46736083 149336058 609901040 438001261 561441457 398063853 1008192831 787062439 84223546 217253536 771639779 81756717 543380192 433114635 425369288 984828637 940179191 1025442834 637566313 944077848 594875925 782370214 156854955 346687954 326057102 230334038 687836172 1034616244 397180162 16223191 776458386 686700458 719483414 44389478 376436887 603102136 363895800 653313519 1052013513 792011840 407854732 225545278 130911384 822133539 304575822 495053543 811327886 60246819 351676201 68740942 231321708 383071624 176028370 631547022 816410286 629799498 832844227 459295496 1036707308 891534684 560610963 890292320 11251213 361204360 792409660 948387633 856960233 979263318 34690586 634118480 745271132 1030449706 477615296 104743796 571459719 722155775 121287026 984751845 385684699 673334016 964062766 497991787 933647374 806857020 386711702 258683312 672595421 727533010 101248666 623820408 624163091 127098218 37784640 244991096 276580096 496372442 343063391 618091657 76785468 938823192 42175732 581489701 551840925 521011721 832864342 656374910 354206285 128105526 1045198484 654747625 280692648 808572009 248305146 91447818 222957404 263075732 96111655 231886500 746296122 51728860 537000505 809761070 967155659 506892822 1051532978 878129911 1026556830 572659619 574863011 344700207 165485379 74099899 899215338 105686814 427116144 1049692894 455606484 80261805 765316584 954896462 523311717 965111106 210761203 67652431 474213986 55748924 422170523 251291770 984063542 474080653 220706067 788770263 506921971 198093288 842071779 525422355 334182370 376081994 740828356 113426323 604835045 784495444 94707165 987391063 677416311 132702109 242932542 452379549 330790801 562639120 734253231 622055508 630845556 176938696 337746640 419771375 391500255 565290823 148987324 476382744 410385048 70607120 633883244 468641518 352508651 981382060 477822263 960391183 228308783 341578936 742187514 305351788 754882613 909559705 540107821 852675720 885888626 373433994 507946457 790039940 725157209 490929027 392328725 1063131876 621976776 601491920 509298977 112436878 282335418 923794614 778962256 470788379 695664183 635817806 222884001 869736591 171478152 319493938 449033216 1023242862 668180097 23660591 483638443 647471282 906788415 813435143 387176956 801190354 1031200180 567265024 881844373 425426216 719233846 890394829 367615265 946470786 443046703 871140942 84234908 159998032 960591748 147565842 217852197 406344053 754622394 682304776 259048592 145053674 885251124 215002541 356998291 458912433 518913839 321139304 46913851 804789196 857986053 688209265 108268878 614174630 24991384 555869997 565746155 546011671 736088625 407600776 989558076 954758469 861771889 580820522 869733946 118763204 184746478 386534997 458081471 127089750 961711186 257309997 602725852 90396508 808172831 369800411 855563817 130601446 704616186 352390705 754170122 669369678 519844746 877861052 105732629 929810878 599934085 818248990 518361188 836155512 1063535873 877311839 1034025750 31058473 512256741 141961734 282409817 962579905 531477594 201891173 927459350 1017900924 379729035 157391950 285903796 686880115 973871864 446865580 687238056 62040504 68989467 794371423 795146755 184204999 551132924 1015351974 974001092 321031407 394596680 520346928 293140931 232731008 339379520 249929396 463061940 940158285 372181521 83570004 785593890 704485632 484361410 386507386 173391624 471027898 436009736 733623090 871035020 186397144 227234926 16353769 367042313 981757165 450126039 530356018 71445815 842773283 486686739 24485618 1001027451 652663810 586412479 152926453 786206987 905020840 617818031 384286026 687227646 958413523 875192728 762156205 589754444 892330237 142617201 191861532 143390837 1027223311 774656053 5108050 613697387 602777872 590232857 800309113 355560937 54005196 413456442 111109655 843401100 868238987 300750256 767826405 235969151 163455749 288314860 94059327 177481937 479192043 46137465 132664871 135992790 23522313 258180455 897129954 549046876 604650128 689752236 1043334818 859582221 996834813 103034434 777538025 40815412 941645307 45153106 308202374 672592081 385723725 565074121 1022963309 593946828 987041135 350700715 115829993 434194896 741900687 1035159860 75357159 409599447 353530217 704847900 734453241 634056941 506247656 240502802 589885574 287935434 542872348 495905574 94404988 172256218 794814822 1067047083 862398591 674517105 220720234 625659707 1054647378 780953991 966362206 895626882 393065649 393920385 638256086 608360355 1040641792 611896141 147879919 820103654 604431388 88482945 819582090 418691955 753384895 911917632 881040360 94441275 1009588180 446347205 277648648 474020486 750066805 1014100028 231096774 442948617 862004648 989174375 779635350 920190667 837956133 523860271 384254400 891208231 262328572 237417119 590934753 749018667 364812862 404232303 1005005219 748757688 1022087438 688000504 440254580 828848602 764758119 1058337571 605620733 499230908 391476118 752116278 474691230 54611641 407140367 255272562 584992614 796393525 1031269283 883442509 175994150 529717037 349331238 541062310 321587984 659934882 598411971 847376290 385627015 67377267 74266755 269330940 774476378 1033352445 439693750 886735437 210636229 870618452 1034602440 67157352 657979547 205721064 404726854 240744465 412434427 1040682965 214238081 875057476 907591723 985290050 470394185 253606719 497953479 1060245076 100206470 58188725 926017446 381748124 1030335747 936564885 20174642 636228218 949354404 1071079803 796656592 53621569 958403000 393479326 1029559407 713495646 217623865 553914443 810788772 531209086 557126741 21412700 779655500 91143324 748867008 718890427 1039041365 91593166 84808289 861580429 410784607 88964648 1048688490 418815110 178902710 783040678 399329380 437838643 309727515 835575964 949272465 442813506 500862519 640813899 782491476 869041056 258401314 372013100 321091904 354892811 752073615 883827344 25924072 693586108 248495941 265751381 1042225761 1010447819 1047167743 746256920 1013995049 314130846 158163294 23654728 11108718 532329594 43404795 48494657 310050875 575492152 851131799 609082967 803545939 628501843 195909820 211487144 392588557 615061793 641242280 533332205 646237190 537113894 103147138 890304619 1025492563 747759566 34852715 996153541 23858744 682504910 1072157238 149373060 509559640 357041881 182476942 1046921272 217158559 580837819 462147168 410521394 1006324279 777625726 660599935 282495182 425889385 58683473 552118702 849472975 178871166 182818900 155815264 430530892 282920433 75404141 81836258 795244118 67886412 794292030 122816630 1055723248 492926334 645314391 964875533 76367404 705643738 300764942 389757324 1060469962 442185037 364554462 250073361 859115691 844994127 922989371 408072644 111848614 921166169 360785192 95847914 850914191 571609063 733220002 365306120 798435666 900542374 221710043 899248444 926994628 1045111637 820807495 1059881793 135363377 1034180734 355722487 530568734 122888143 50142364 59775417 4790606 460773504 606241202 427692297 318021822 168465389 428665136 256351310 57779173 823211200 733653 912561672 219292044 189505206 692847796 675957642 1053548478 586136628 512842273 719808821 434594194 459934805 512286921 623820109 482617276 785785194 673658406 1060654816 452172767 1056398500 367521478 975875292 307301904 127659206 721855779 617822018 107719856 817335083 757200674 729500980 586318845 553309182 912649116 903842626 668791091 528483456 536515153 314607358 295073251 1048590454 646427481 812975718 902145906 415613298 686641480 632045032 219160261 134661732 818875212 764421146 565344862 236886785 148747567 503163693 437791767 423899781 1025546135 914427732 652397748 1019015174 186156758 527438784 88139733 669443412 305553764 419919325 564748550 456864787 958257302 974133456 371632955 1022069527 771382584 869521341 449442483 522940469 496866202 269629669 520484340 475215470 494455387 701988231 37804226 718047050 620756736 29091536 1015694429 500997340 457741526 436728697 666601004 828917941 532991158 421377790 998725819 1003924453 667563991 850863241 782127194 593542000 177694401 856076490 521773204 134137818 714554034 530662163 956953489 585616356 466263994 773195630 760615465 787708476 193576539 85578382 874704186 679574841 192410412 709896691 319179278 1052736691 365142774 1043978032 314618996 799702655 535636742 548214516 654002482 220878695 827159727 598842763 201634896 444072047 165839855 986897662 286733738 466257564 81377543 1043303703 311303510 894100733 270819042 1071811690 585545258 1016477647 759429828 402661788 386291098 484913827 955857010 245232871 899001898 341057870 1016662914 19438736 234773014 492430989 279733995 957086681 957722243 431496503 212810702 451738556 369805867 442732824 153518689 932162484 571931906 700170902 6544214 394532066 322083488 104738363 327104553 200753788 939707529 229127678 789203026 781106211 387219117 600200197 430589040 718579106 189902984 479530579 526152035 503129248 312653020 979481957 395769458 179636197 1036707041 969890832 959133637 809030725 26447881 764964554 85461709 43296272 501054911 681115371 838657627 278351222 640307565 590574553 579513469 324197285 1043301861 279488569 354003657 650349434 360386305 79932896 367063165 911068444 287809838 948070679 675676961 325960362 298336430 88593302 539029146 405456610 402424072 77690888 65847685 371147701 176448228 835354526 233815891 745961552 1007931181 635624877 899533863 1016884179 205362284 792003404 203092773 556298237 1019322776 836315326 939320890 747623311 608758761 504253140 372208955 1039672180 153029193 91383589 407919323 909774333 1028320175 317531980 210785227 486192379 436389966 814984626 806037268 604460013 812119074 976481143 617473069 542977564 602265165 1033043474 827858784 187311128 885744775 1029398006 976531191 610157264 870435072 270118448 485968694 496973387 450328065 246726905 797044464 403460105 163433444 346670937 972235645 566525677 749400277 492711985 541014009 701775026 240468374 205120479 642530772 910402373 794343654 13578328 461323270 324801116 440649702 596423786 55438229 545171516 985191576 766995171 737590122 245828821 82465026 767433672 357684810 1010633421 980036385 112953287 358412943 352140585 842847090 813694972 783348474 335752311 201495732 673112607 270763257 304357042 318574103 472006330 305711284 640921349 869950579 610155583 87918556 371545743 564964430 426327188 259151773 586324725 407115063 451410519 597328917 732160214 363175839 775998738 887761925 1010471762 538685896 196622457 924121243 447256526 740255328 80079926 1028265882 379767862 836085416 996722266 621387308 278526791 197545990 261909008 300187905 491229111 618830001 1031660768 340252442 1038321624 355580617 478085642 670211814 600868693 997523790 399079270 1026492312 160170924 165852556 244148552 206555274 863316881 240504496 818426154 816524638 884097867 366315546 96639021 403768239 499451944 838045244 260627561 294099018 1004904503 950495579 592546554 814188058 704333475 543814171 694006298 480652915 632351825 510279412 402739044 691289720 421329614 692991275 549533636 402147702 344663305 978015973 1064654241 370566434 792708347 872633918 835988991 846384034 24268345 282623745 881955805 455986831 477271615 377208156 1010438875 1019957276 962209220 980170064 524108871 831138295 1045752524 620465400 229103545 198367662 44821835 617653230 4612081 343611295 765356146 21742164 607627357 387500102 437306223 668768009 986959333 139764105 626875345 794688552 256373139 195554444 1018272512 565139039 484284019 510233393 411387613 573535936 391180518 111065973 362529381 244775210 1068208242 843582527 300699768 965883104 716651972 1013156726 1038321561 938773903 605790274 905911734 600330940 454023680 563594873 709844151 1030363604 891436379 1067037207 925606776 489350805 547354185 329678036 728861313 15299599 750119719 433659335 354277898 278289891 828398633 657139803 1054041171 1056033642 18141523 681336542 773704836 759004612 588851561 302296582 583425056 366735357 835160151 194174205 666589578 826556363 924905258 465565266 873665644 488729870 901711786 778830681 551221484 599445958 278954879 298431767 483372486 599971321 133545226 13392327 1006753163 704009707 349823898 849417742 494207685 863648874 694792524 1008229953 858065774 24684765 634152307 1022319238 326171091 727957818 967229417 600499081 274674484 123599166 193664103 84728949 1031257145 95882663 202501498 177481047 669180657 575591858 848553734 693634368 720356668 12361541 367702702 1019487752 954733773 21030520 503629205 894049726 409977625 913354415 58535097 279488200 584557294 748306763 266097755 537017645 329290902 780935807 487824860 417136087 600252521 786123762 643448014 257666947 1065278066 851056190 712044143 714311231 337944834 432747564 67148547 315121925 309563094 535824617 764081700 492607160 909853123 1025693056 69833130 292217269 145580928 789794954 591261672 712682979 941374499 485286714 61799593 331744695 111086841 879172225 478767388 1033334689 102421502 58383407 625829431 377014760 504525914 59981277 666316543 942596248 999722286 292505054 403169801 341581135 993982916 881293578 199333545 594568094 991769113 922820786 440792134 34488169 970906512 850802634 239152577 402096719 754705967 672193514 20892460 929251730 3284783 582718563 322107789 986670468 742100474 475912554 636181497 67068529 359597103 905304203 999335010 434145147 986296097 563794773 19760437 1019195835 665525616 288508182 345816458 551081432 994019102 508487763 464606754 653038920 347812460 665001806 410592422 611218960 126550503 943563573 233951834 798758125 142486365 725650292 61724649 1053091448 44440097 542602858 323871954 394135065 1061724256 248534098 538946005 598082169 591711056 1066136654 402432604 1029787665 621314515 937413595 235829050 1063608194 854603423 662747079 140224675 502531949 540864432 926364982 251184622 832891492 896645042 377012090 450354270 715893449 739076187 282390457 672674309 3498510 406753972 95740089 1026759660 398809856 4235810 644059659 72743471 74695374 683923234 352612246 641206067 530737968 902205382 515383993 118162907 733662706 1033353686 999205323 867077799 463188439 405726367 759263099 369271468 390742503 609149452 48321765 818956385 883297063 287374286 12835648 172369811 875717869 1033892930 868819543 788505761 474814182 993569640 337760983 829071967 444871929 429657201 562824554 775737497 474373337 41302194 1047867905 869081076 462256461 840443298 410971395 169502092 811693429 999354373 788266668 620798742 953521057 943867232 976829651 525345615 668948394 594583038 123244993 826238844 946776551 1072159270 47711542 1009870527 325645015 450408000 741455583 848607445 321380769 922054630 905536760 744684482 265359412 162715914 137942873 384148714 233004199 62860473 436278716 1042541684 903028212 44488250 99527956 988865863 161561248 162348454 421112079 653707984 119972788 325592375 158160688 342260809 33613550 58618222 440735679 970742570 47153531 350288337 702286622 99650471 577507348 698560315 378227941 489764197 439229926 685848093 441668198 511285333 213123057 543576045 461121471 288487947 498349369 331139957 407780775 569867208 771540780 473730961 123816315 33856694 114269322 857638767 312101800 352558525 511095945 980525801 811389505 159670299 250506600 191121052 990304316 1038503708 336243035 1053751741 177714881 779476216 798642088 861330298 46544543 102286762 808521509 5934308 850126328 871636821 1065536371 1030186113 84693185 352441729 706360996 698444378 690976341 485376705 479538324 230067398 447591273 212185528 238608743 899788509 519320272 195863725 261454440 744662785 717994600 760883258 1005615143 1018363347 150484120 930468682 6914287 1047281230 508045496 1061843758 799152768 896102234 282941977 1069015921 107169146 432871176 317131011 1040180890 279746507 839644514 99192031 867827758 568936789 295679336 826846977 676728081 287745374 177332089 304740006 409314123 906402172 149162406 610866540 688575615 951272551 123232326 688525789 85698411 1044037858 609115832 371572848 578342670 439026320 960775940 529104787 878081070 732922807 85964449 292726631 447392723 701563326 758882339 190942384 420287684 1056620186 527309834 414020181 528587482 689654412 156016867 921474823 230561421 440755587 155396487 257652279 515372388 294129777 905813238 707580251 469896855 225482082 302995987 444661972 676887274 798877123 259079866 536538092 687634132 705014185 527516936 46640337 665715339 300124259 517601644 484963512 1034902042 171833630 380059021 730860413 785308030 271607667 382803727 538777277 67179229 728131028 188870408 352955672 204076884 307808525 757149937 271264351 327736172 485493251 241118733 627719244 823831739 57456582 953898412 510956585 483104219 464205271 921395707 645972883 115839877 103065767 416784953 800351852 746868414 690168967 812751489 332976030 422908561 476082492 770373794 995072684 401131110 439975556 713153954 224945072 314730052 329319920 229338106 634501024 38349335 369605101 39014448 979770787 697838366 687676660 614180531 244310361 237868364 168494015 646203706 780194756 48398959 436602572 819962110 262490080 997905400 246135277 432758616 934499190 666979617 259975815 288945595 780983985 66339622 396494206 474503787 342524604 482163074 377229129 534184640 67026772 1017876691 287039226 132543808 123781396 954573046 459828613 978752305 213770266 96665463 858626569 69857807 889784910 235080698 121850427 528113376 882811215 566812372 388917722 61883247 290364909 816547903 75202484 961102221 613701033 150528688 927958289 937082667 439001957 887111695 540679137 454098149 37526297 840868852 303106311 991158626 504819407 351401602 166698196 574671476 650683821 308622922 599988144 679224986 1034273934 760871437 294994961 970230486 318440882 272849187 47533813 864858571 749890764 973796513 94898884 698747077 215689616 56661128 284398466 22746874 776606675 458343399 290319180 140125647 762267927 322911184 554292952 954444990 653495090 582531211 1037298837 565023094 38289165 83463482 258391689 192535687 1028211397 88983305 143504739 154719513 601197879 643505274 952526991 382367613 267192428 420155109 816218592 234055870 452623858 784892751 799781556 752220960 453821962 316741947 79418386 331047325 679546762 481242129 3084211 992796435 423715678 631542315 896079521 940399655 80621522 530860431 487970948 467030711 545924411 159015457 834347191 136592100 165491189 683837496 566777415 595941135 410479331 414217120 691915753 576858959 72150127 41960505 548546112 133395288 501301761 478680515 725456585 658152796 802803519 50529343 555569531 812755517 466397894 28523951 258344584 947802941 941505769 1031047922 216889087 488016448 967110607 460119896 535755515 567184083 849776458 827065027 156881471 220516367 162763239 836609322 55240941 525795160 36388445 303725727 628558853 665223128 247111488 27614071 417404367 161307771 833334704 39752906 782135089 818273480 1010277359 291051979 274024065 239243188 924603588 154942984 754879569 939464483 51887125 994358769 36733386 78564647 332862392 956420325 1049427082 69185132 705551869 468073345 983078959 858337494 83632321 681991562 864940252 370388860 639105242 880144857 592988150 487958701 852163845 749790965 759170877 158382452 376171074 186706580 276911818 652421274 982055946 197029695 1051521971 339200585 465471393 965953794 147598415 165136081 12095391 414717055 576708857 717310910 7226197 515433738 214752102 296999007 604662248 905667027 271369837 163584929 744096693 1060325523 570036893 471462775 405499908 374324064 912341550 953296009 235584171 960080937 367123145 99875326 801293326 16753765 823785770 679354097 554753890 270298950 459628885 265900113 1067396976 638772583 361246035 12817637 480626329 951654376 208282979 68646763 1002685680 786526011 710561512 943566258 954533049 492013313 184388706 967937628 129215816 888312662 508562534 764816499 948518786 113846965 470839254 232357649 222249137 777061848 384033223 1018108375 862392241 332698349 639332817 30653797 639069055 1065797411 996313683 931959179 634529899 473975423 38903231 585106537 788980200 333839917 900220459 99816581 184312263 124769137 612651498 892478509 960820327 387553274 617742673 768557755 896099892 720001027 840346142 177532401 113954437 784046967 940095300 455656878 1016333806 44943410 992885307 239511101 137099580 802462937 619991665 627387906 370070531 634091040 795305503 668916692 646456913 995073234 220883344 945325343 505391758 42458805 257771805 706267747 362702782 290366522 486577376 1073448590 700724170 27419456 476387137 689163322 112380513 562220593 635699374 530374907 709830597 4105648 865851567 56518954 543194542 282763035 1070489705 640592855 709113096 292459515 918401713 296983100 942000672 727196854 804223566 538645475 682591881 212594364 907986587 720503211 897467267 549973113 482946163 1048890899 888112495 217869215 547820455 506765640 538718271 321630701 1022827364 128889276 86982590 413045575 161802241 443983786 589545222 17884292 456685773 231323466 538346108 602515500 533045998 665492703 561631197 677470839 109486967 783102011 398646852 819624552 502871545 313352387 629415419 976514630 865856574 1006720543 441468675 305891375 408641333 286923555 142972704 961584676 279271755 903869378 147148825 892221536 421976700 232830761 291169330 726507553 310974412 794253219 871903932 29250168 88141187 823406281 420549983 261953892 247979584 966442818 524954843 428195847 332994611 739042079 178849863 549703676 132147700 53848223 1070496036 823450786 204419929 643964011 829704988 519749229 440554736 63159076 937946121 44171678 836292199 319178397 310671653 592846782 182490105 566761460 991655297 343823319 1009903897 505436429 1027578701 517735561 146606210 761904691 588242030 767566405 363025874 1037221624 271551227 553762377 409630702 392315989 143021224 966761205 184994212 753005511 902849792 829432923 752557722 439024219 798174488 654250462 909330991 801815509 878752016 706282850 241311125 380614793 503529327 636929706 903503345 230101944 497818289 769679874 232674998 925517607 98055429 175413043 734938510 1013613112 983077027 1056989914 259452280 446356153 336075210 883561235 244082793 11289533 1072832272 597655641 700366007 698822654 69096023 995844238 420424807 500186081 23758372 214856320 1037938353 58709673 693642588 618989983 599647565 233912137 53034872 298104758 747261200 94207107 1033963570 2204142 954014984 828387860 791189875 249170671 642249032 513233084 703025384 317344712 548168185 299323399 560941107 477797404 953767067 865393664 417119722 924515049 3555837 188941473 860780675 630852827 754086058 729214961 189288418 807084360 594498897 573333104 786895102 24300396 139729214 949741525 927203904 880404361 16326424 979857218 430824437 349080371 51141924 919609841 92008035 834176099 268319936 36162877 213071514 891821222 903424996 614334663 915987354 414984005 144619143 450191769 777603838 849308755 508431313 67660575 334663919 412351840 364278174 579992567 656510300 434892730 775917277 821730348 338923536 355327515 129908318 643434214 109671673 660829105 829360962 393788582 933002449 739995415 101394412 482799432 198998507 9588989 1066715825 728240263 873403486 407136646 833686643 266893157 975685595 108125104 521537440 471480149 257616298 117450470 187671673 109451719 121589352 218718611 640350898 35997514 304607485 481758207 423408075 272777152 339601824 191285615 222742972 513358449 855939586 956990502 614435008 356636460 49448658 259564244 697405615 699181275 506083006 387500239 659080671 825048708 224451245 621199162 859060690 734763504 231908785 697503415 902108917 430240163 458694611 557103087 672720186 570430253 723877637 304654030 65835584 515072177 140125699 961962232 661126438 333530586 634827953 1034594113 106353016 504845348 823633877 311107027 952199343 16795302 241312962 382766451 933033489 660349164 489453782 794036053 869123374 1027662115 509308434 763141641 487055541 926390919 840310612 583072053 1007750803 330387775 209279903 715832605 785271177 1483388 441333805 994666824 388163808 815127671 269875775 587336321 416231562 749226464 378261272 621842158 132254723 584106466 549942157 361900055 282934634 547427554 26131855 315040367 476516879 855175921 249961743 915984233 302789199 179104475 256835156 31909652 782032764 1035471965 998500325 177334679 429126242 966058215 448004022 27980616 354916126 588915514 77375774 859179950 61602068 739853354 542570592 173367218 893254563 91741911 853194731 841589390 443469269 88527588 268143449 1032072377 557954923 1012086989 529489539 16912249 541131542 612100388 87605211 958538024 133954232 586573795 801036119 104362690 69979786 956502235 999790965 114363795 366670511 704917863 34158605 231075609 363568840 930100931 280637296 464972569 160076560 1063667263 885373537 527735363 325816934 216530354 640931534 172105116 1014687597 461988344 570045968 557917486 268552125 465617319 569364960 384110259 615755111 694525375 1001449853 506240866 305387885 218785792 45784099 145731417 536177623 486723963 6096329 687577588 735187367 102126049 907938452 488659337 755485903 708220718 504023443 1020362879 1046926101 90509704 45233336 380465970 133703100 224956483 339826968 794091199 187814577 188543501 435636008 719367916 283766023 544453522 389626302 207823547 255658937 886948045 176488419 135958115 262605148 425985981 212307086 206933288 629199956 268732298 407929268 1047171259 1055761582 215949974 835828735 592680770 7578311 279895487 36718503 144332639 498379894 386750479 91964734 782121143 469476876 335420887 517016170 274061995 1016962209 430370619 934977790 825788970 947937267 327381820 180343605 219653812 981494709 1015896379 366558850 421791884 594057044 65030428 252807668 20347321 1017480701 145896721 554901699 921717366 944900860 392561882 90165095 255580440 763751328 383926219 543800866 963516636 713715153 906908569 927122750 565899900 1064506403 542312147 643978234 713302025 2323238 603299850 619083790 489342393 556134494 247676463 781971672 244726310 839686340 731109936 726683902 932650357 540691713 567301078 1039562260 17725138 263489811 257752031 302338403 1041078526 431834269 3073878 827236706 562817478 454881957 839865320 634882053 693586126 768111876 381226475 402637844 967054311 1015231817 69369540 287849182 596462332 777848968 1048080095 984751345 555770293 678791239 1062319096 910913417 694141214 774398110 647404017 400548136 442922311 584027413 482774166 125870079 145450533 738631983 896507424 727397974 63340778 880340153 646791308 621060336 794201560 610591929 807787497 542133621 381559422 1052269915 1055364615 372628346 280907439 534469099 352359610 816062960 957168599 357271503 82812889 724765951 472929679 946224019 923180034 530921716 334641207 147252393 928862630 403658529 93588443 484897110 1003347193 380788898 816262430 739423664 304606063 1001897612 174086165 602792237 679753535 457847821 427143213 92272893 499901441 924388622 189822121 777528945 1006586099 252496948 299390530 340302014 902850813 1024104776 514497760 694316485 1031151392 1028133229 124154405 236751530 842730416 117406725 144712742 902666033 624232197 294378076 358160016 435741510 880157039 425963717 723116101 415838572 878341109 137471700 780484830 948468093 660123280 229182641 58908418 925583302 896073689 317746341 314375498 208329419 622014267 746160849 487402761 88752366 226813064 792918334 211247594 236994063 714000639 866522325 684144833 550571592 140336024 483196826 854470986 613136795 98949041 862417129 910990861 466039131 331127788 503449203 845558668 405779437 934369454 185636732 254810381 291407828 121999056 449865402 352267651 973365345 48873680 661534597 70163413 374024905 347823450 785772167 1010856759 339978973 355013045 453370241 507211569 62516225 1022317385 861443550 1000133815 566359671 286372836 381209445 236065350 1059477051 74650952 106945154 51590666 467685780 972397743 61645320 509981640 987038424 225295874 828239264 202550553 81572157 711259004 340888958 178136685 741394956 558421510 860169423 735826733 408133565 87716497 844782088 566484016 602248990 711973085 778431092 108617101 950509397 320117735 118049334 101653092 159812401 462080610 313317259 892368146 131274352 903870035 345061710 541179720 876054041 291682888 57831556 983275394 754589401 739895477 973465837 502391211 533276944 416147202 910580950 159432625 680335104 1030489362 784747949 469645859 593678767 117917767 613441285 90565758 761052563 764233798 838543013 70203397 72714741 850251025 694184399 166436188 653897635 694491021 219636322 515961898 97779153 472731992 73712229 865471561 1052883371 625472919 879354964 405547880 476963239 853373713 189658427 1000920691 256830195 329475883 262985611 1016209550 537521769 384039583 214097062 179926315 759157615 134705639 509561357 296253097 1012894312 246865360 778029087 559031374 461934202 155751545 416256286 107812583 365434936 414844691 151992342 955841734 789475108 411467563 116336837 134040711 286667326 250884948 1029083327 15124050 245139851 158673357 893387753 767323958 495708419 86154694 728567603 280877005 277268611 108721003 1033750772 20228528 200602059 430286692 559523116 595768166 198111785 616071525 980358577 800790831 2352231 573830015 328590200 1002521902 242783545 804193126 157567439 494093385 33479821 466855970 648879675 826952997 370247249 1051787292 6613491 1000093556 623332555 468733661 971232814 714053846 376711609 983275380 251815450 129394221 857739142 806394901 926162389 386203104 465756254 478303057 892589431 817880928 328067068 474355622 179616446 348655687 601168439 45485591 25520606 868147168 326411377 244147526 32722189 413900148 695168074 922436167 488344946 701461632 594211967 915703432 898375395 716412259 125293358 977263427 816737135 873750523 106236421 819237069 876957465 465572892 645125256 264029940 727036061 57598146 672654228 263448884 82822627 849245876 421434865 628681923 1030882627 1073451440 788787326 813721338 174501143 448156585 753608576 207993169 1025210885 500630935 147961418 216293065 916353917 220978355 930625548 796508958 900133555 778865027 480119540 990334391 86962392 139440906 118050667 849599073 764333727 443015771 357614013 719197606 45802308 987982863 565252562 865087675 148739496 222527201 153881911 244093595 852181921 491350383 993089492 1063368601 714216416 73460789 373457494 505686074 925367739 313602869 974035666 543064711 711485998 959263480 1067051391 692620858 439593712 100709996 192786296 117269019 682591080 298213692 682467370 499794945 680522270 553124700 419747929 211399103 908016757 778557217 779014307 437168239 912795622 756689877 1025303637 171286871 971325977 332329161 354586095 849325445 443410854 436352056 595748320 998800793 106171201 192273503 1020273108 830057579 789867737 332886658 309813661 497084876 860152137 949634212 325167586 420273124 194984065 160894737 310727053 941926941 1054899686 686960070 690443776 145716827 484343216 603946193 194919516 883078408 343732151 525157215 310451922 698810638 463548420 421832147 491135641 666347926 23519588 749171394 390905524 69662281 266416324 963785247 791666851 412174191 321956928 585258299 130067014 641143431 727620644 357878755 819875507 595551557 251593648 794434054 988731424 595356523 754230531 148275100 206332713 815360952 949160678 593641185 357469118 199856572 10829717 837172209 169914164 930140125 569191593 700666695 622591234 475895454 288143475 854758124 625177685 328973990 25113479 888076272 710801506 906738348 181968256 466638309 811887321 825955849 613942738 40707570 740908400 238733856 560031374 536691222 696343659 201554481 1072189951 366857880 513415636 1047205249 740111066 130559994 576113441 445833296 381816885 430781077 489833998 378960346 677108319 1014041471 224590467 909573232 325088583 789808101 683926439 801270267 193966406 79965815 45291151 424224670 381453815 869116816 664627156 298306100 323683839 515974871 670348932 916366891 469102201 103157842 555655136 616658572 816533897 449627043 391923322 1033871501 948456789 9472653 154340206 103332829 862908352 1027858902 352592954 947114622 876242825 930647464 587002303 920788910 978988188 771092567 1066776930 834125810 223116555 174771075 194163034 443172086 208470561 543177811 165536150 726849681 893261840 124217674 790194209 396433956 692345858 212905009 1039096499 633002161 892491469 478389863 389848460 73373753 638616038 1020014029 234960610 437498004 306404405 546141123 930777771 799547804 291695642 462380377 111187502 85771095 419955704 257341520 638314671 168701865 687179529 869185977 869677371 12001318 533333904 726537508 1027858369 331300519 434342107 1016782797 644870974 508332220 396359896 594991444 690279875 532204101 607546883 189081515 514191888 1010836243 753774834 360221612 412323615 776606849 485792095 58102607 389307419 547102192 496201986 210152409 221364741 784023724 190847464 6216263 192125629 554506292 741766076 492140875 637143307 638515245 397841279 596865855 69274137 749642623 447553648 634159572 233662625 757027181 653749864 978181391 101536750 757873076 531041971 876071002 94801112 743628571 946564113 254577145 519615722 84231701 720822783 359353599 700037077 863847900 610245799 43734396 656387372 623318232 412130916 402093301 223255381 23506216 516756087 436752694 106132039 563543996 133204113 448454648 690225166 32037978 80076292 577748010 281086621 917336872 839669141 715764979 85546249 607993054 1060812748 111881186 183103179 526874742 129038939 482524265 1055095905 188232671 341143098 421737516 1022996009 309654334 843024087 88887135 295972772 627537863 630004424 293490520 210905455 386750634 437109628 28276571 40212046 558773172 502317326 894871218 1012702690 695254378 201431048 536976489 79060218 1034748567 77443396 192704038 375930530 305078709 114660475 1012365344 978557746 450929543 243790898 104358229 583241453 599859962 842241125 977216615 329551690 383737989 29666690 206352945 850912403 867415342 399312102 521957580 763780271 230626577 635060971 60665937 932162739 47465998 65666950 431665088 21842823 920635358 354060557 838414040 855389524 5307350 364824506 636364721 27375294 185030449 95048492 582407688 390698718 685436 817782370 826371711 222699569 122534286 989164106 489242522 619030085 782005587 860733878 717348047 805022572 808574036 602852749 576751374 507138934 945045857 567680243 539935393 797334258 835205137 980783568 736219412 124068108 339943360 616146615 317121206 31533253 627087024 638066374 149863271 419677676 378961352 298551495 384280274 127467675 797915264 742499857 973915029 494850168 166935609 328233136 232741358 1068264156 501602425 710827034 525839381 530365663 1032312447 153756138 158135216 981540179 97890992 984563690 639154643 484525468 980834480 27670838 273134245 719335013 238549676 132841902 47117808 603569726 795442973 184959062 115245931 560160554 60292665 303697927 357286046 782360227 643800529 1061984729 251561284 23441845 186228237 632754058 395334540 1051044787 710809497 959398838 1014247091 634524580 564046871 556530746 123179420 51003170 659504972 941326791 590662884 604723705 529273441 659702867 22512464 708165850 372121197 121647740 517047152 516773946 346701249 560751723 263086237 1006747691 156374857 394279877 496843897 911534069 178977172 664978776 148549578 482168045 151628971 580761415 653161638 433617358 167405186 268810423 193980691 514556621 266648377 915508264 1034371254 639443031 577645380 579966450 495004116 534073507 613508707 213913546 361692589 930727076 401713458 1021426093 241111442 121794447 737851361 756139384 880144853 562478579 746944726 205959052 841936676 522770434 615796159 827856156 843227356 116059659 868789487 996432312 472140884 299032924 309434483 422088642 349146775 989759530 538642639 359039552 142898413 549763626 877082913 925431851 658544184 296436640 967600424 445966881 956841198 705103920 1072501405 403105729 621770846 475934828 219922691 806955401 634183900 313216705 484932643 106050568 1046258240 534956906 328539677 774865765 658674796 123732144 732360058 527029612 542257860 393179289 599804744 167569212 696876126 190352180 813937815 974431600 321141260 377729444 84381830 585947962 134497641 601772155 341678057 661068222 902272944 57610820 1046490936 316035084 566243985 176467625 844998139 185425526 65509844 489323289 513387733 932681175 512407533 548717398 863068490 730339866 31941387 205470004 566621741 939934533 623628936 274177427 759573753 397228335 980310241 892580826 415479704 96789031 641094768 122616049 48205197 198099115 840812039 886423567 618484457 792811699 45286018 838815847 766958473 960514402 482117924 494104275 300154071 618226514 765936658 1000736384 376525561 960688855 796991033 769606051 282550962 916772370 644398740 137121859 955092414 380969077 795596038 921667599 897137285 590398276 29891953 192753296 662560069 230893066 629194905 338823805 708970936 321781545 179923826 967076838 651498618 719659030 1020742764 91095252 236643770 966694322 945302341 848517276 468015760 289725253 115882300 513552818 240415526 969550831 958688614 395444919 258175808 396404904 1048144371 294674176 524268569 897313146 955183311 1019127513 594655810 890482727 977656476 139212925 841901698 77843334 272526542 1011823258 476837561 150336787 246265480 1063498599 477907604 502858863 1028188164 936565403 121356912 974286920 588100560 673636102 39412907 711357827 749352005 15929897 911532582 930275448 494015952 645078527 593647903 182688085 490866137 523926202 473390376 471895492 678796649 93085174 290187864 1064714327 403908395 731658356 385700702 337150148 936781635 531432659 502224135 73666738 935911110 680604410 365609679 297990921 635268866 244958352 506715692 750297049 593616618 532583538 404788402 393048376 73300587 289720035 763612433 724574186 914714539 177868649 380807267 37343823 632270699 27996128 459087858 47645929 823449762 350319429 368136115 488124204 316194101 812709553 297542617 1029292908 94898705 198293985 76553703 348536417 866111838 717883968 91699841 578509131 288467028 989910261 445251092 217184640 630983383 581617615 209525518 10284062 990904106 853677407 551372781 755511839 941195230 587912852 734778806 962544587 762529961 549264556 975099514 372920270 154681284 252987425 1008325691 1059666423 733403547 933909207 861373858 350232448 265581390 464034912 618685555 867022090 37565184 12694937 904535098 164243797 689895189 502479824 227591894 495565632 959750250 238128324 957381849 60987438 28476975 77933025 946496914 145477806 262222039 866948137 34210244 318361174 366594557 145572595 539861959 1072036728 236570417 112696641 24873102 658752830 559470460 156521750 50220118 563537224 851033140 266511020 769349202 30147331 537986888 117943922 173516594 138447605 769886847 741171115 789245017 760297321 834291370 537563549 785973876 101090180 467023738 832212429 477906045 513660722 370870484 818294451 746503806 289031474 584362058 131696876 707121426 205418208 397874451 895650794 836877594 69308540 524946632 43961635 795400181 342778204 340385159 91864160 123992865 316140258 722813896 510945277 19718592 465263009 823368415 406915657 691777196 223949735 258054361 788146335 564429747 366761124 809907396 445947375 587918596 72362464 108677577 292856683 1065670921 585553291 35291681 613910315 765768439 217013603 898713863 493898930 773438646 228253618 802747215 931832175 74066541 483633248 447900672 649757890 532153931 605033074 49398965 1019826557 827619310 523868764 1037451340 905555455 316250632 462412982 590251267 837353233 628463827 836771713 647420051 972559131 983559970 427069616 644284359 735205928 961106532 518905794 142108261 248975545 671523282 979881448 720169465 1066411727 884361722 176743000 535146994 2349114 574477995 525043367 15918998 872611519 720899031 1039636507 855388339 309767252 172564020 158502757 933235855 17131263 907332562 964345867 116311526 473278901 920365458 465313537 918561621 528352497 992082938 720639273 508189870 213779492 1025170469 974995697 891743599 170852863 956562130 123203575 83995916 311908187 1061697121 8970656 52088538 578833890 1035016054 667696300 88920037 113441506 990208491 923393601 632164325 496562992 285748897 344646656 698223605 584051700 90966155 456848464 782302504 61996386 491463630 636617118 876885001 681847194 457062276 279448231 35906119 92091375 411623627 855827057 353668245 377221230 875713855 751143631 318285408 548602972 316575193 538716863 1015911395 775422983 124013409 1043712877 197697505 460761100 686972453 468890430 817958762 385905847 418678722 982389960 407402516 1042058670 988570504 829573982 188591161 775039247 60275319 463939441 259336159 635064951 1045772372 383225393 612954276 630202604 452963089 24778254 891399244 567848767 771031337 963167159 590002070 1034945458 615864451 924174413 881637213 61783326 909332900 163491183 470552698 777776696 220647666 928210733 25368069 690742538 1016649388 811177692 862748724 696954148 779518466 536583649 122357885 155167371 535179531 386396821 771394719 479377319 469711031 683679791 869670267 541107769 350596142 1035169609 384510503 735253879 506565872 122218003 616710752 724163748 647142177 980291405 582124267 961779012 732727970 521220662 253509915 188395522 373045859 244471612 397126199 675038104 710711055 824646820 117483598 187723193 798851464 824425451 1051604293 221139183 256444231 1001615253 416048412 188541349 516241229 975726001 789301906 154481276 17522439 852472194 127682386 548916690 15360993 104163489 855161377 615688468 862981944 659072616 530430131 886297601 180109463 300102211 439894019 413487041 857152861 318454067 97055600 1044408476 884804272 397120651 627324439 857052816 492805783 1010048318 910947684 353553022 853162297 377824912 947154649 206904909 447772177 704391713 156804360 395073066 601277626 716649029 904260399 820087913 131166755 947373629 257376377 386826461 510427224 610777266 724873157 499610942 320878406 727722917 912611407 331987055 280807916 1034491638 946774726 590862605 975132155 219022552 68985469 550891879 638321930 678120934 746164894 580884422 811879581 344265147 1020683115 1057093815 34075338 728209896 472502766 587157867 752067969 61094778 859673304 762683163 104710646 234284925 918850728 531184679 180619483 61386031 1032755043 670907570 1023437587 421221068 621090993 1056720052 723026079 217327161 193922814 695507986 658194431 878704405 743445127 997487246 1032079318 488960687 142353007 94631905 212634714 575883980 1055317145 183012212 790901672 500110321 723014364 569240713 728391994 605174420 996825650 817044068 1067061580 435768802 191712033 597804328 534366530 522851104 591164656 445556467 491452303 882005039 874554293 131646649 635716199 826156546 732545897 504949374 362129567 975316821 737124987 979476196 376057313 996876053 187027641 422681288 1003665736 558797579 743740127 1014778189 627466947 952660499 102966205 822874146 173861388 860039011 145039999 970132417 217709542 466200143 162591339 398701969 496743393 220079693 836757719 972827792 445690697 598505816 398454000 243792933 315603136 906837955 19712863 625284434 560933399 755958462 372148331 940460852 283062170 326508840 1007171908 1011439421 437570799 926108949 730949985 341903621 845989958 1034291496 737078810 884575741 618854127 990426326 420345849 938031630 611836337 652373592 278096621 70694430 121405054 725868937 362380422 337121885 862508829 249934112 58154686 181525763 44163353 250959829 486643957 356895131 534216946 711272888 645272762 32866144 448748842 372037157 744527922 700419362 279762294 21706094 665377138 495389486 432755575 328811507 485937327 804906878 148169874 887348045 318473119 51577965 453695014 455695472 155231600 626887170 573840484 247772613 655813541 218047961 756523202 383415637 61466287 374208360 484658464 972940906 576963466 664439381 835910473 749900525 481361490 206322187 386623752 259205208 1046262945 108602904 800489863 769072589 320069783 395727782 671860701 37397704 102825334 974098129 984807110 984771585 664515888 207679946 632799357 943536423 853277879 576538450 916378376 583308506 1033240891 423836394 579668331 146752043 223962000 570901478 391860424 872775932 694031989 450230097 512509311 539146673 43568367 418227038 99665980 664566414 110011892 914713393 974296704 878379383 658190629 3756476 392230873 106661778 319660201 88869331 362268053 754915191 43310164 698972116 459200371 664023645 848059157 546977506 553439424 358516781 813193907 109566342 100494928 289280912 34253719 110752481 931701120 16946604 872055793 239525495 800977524 124413265 851584097 227999469 849468286 893348482 882540888 763566238 821385467 197942345 677381363 559556327 689754580 833058659 63760886 922998508 1056430392 382055298 495559791 500861803 306505448 766424648 577898294 21858246 857245012 530123011 912110852 747473954 157662191 939723711 506963849 168865722 871759169 509403478 271639032 220326086 202448875 633116885 940812503 381258055 661548326 1071019797 990023205 191959858 270880414 337827885 704511006 514378913 817443057 759112204 767111506 844339538 134267537 767257980 309358293 203150601 210496874 23382564 617563604 324067055 90691682 513360456 418480940 250614965 1054926551 851059687 245091470 1024185351 689977888 39033486 367888161 65831327 710020950 818781804 564508726 516661016 21107360 427574858 411707417 156147004 759096838 759354064 594099401 800122471 462779391 585266455 583884970 46472239 730524431 227160276 876968348 482470885 691979117 263006564 866115455 94591764 146337911 708274773 790650256 233435291 899948694 423327703 601062183 963199099 202724825 63280233 563415473 673699666 194930598 919946825 55050222 49016548 328599988 38540788 582191757 769696635 559989947 129944396 995314443 1011388154 199761504 652609584 779611312 103551585 141106316 910543487 686501506 37032455 499259538 328774085 281125615 793254407 64806884 526240024 293724094 719108697 751344201 321917682 368905040 419734110 370515845 621299699 156491732 151753938 718481359 573376252 317929265 456442728 413605442 482602450 290372981 537073868 878330562 429185121 564102592 922318272 923165086 354046137 615182639 1032923303 564030699 683243796 692157594 446540445 15989777 949475590 118696034 658455193 682023399 701256723 416434083 427902923 273066485 409717711 165220700 548127249 927445146 196097995 444107510 963414109 334162000 667622080 1064500389 214270148 881066218 358838951 484355529 1015900040 183742192 463377074 835807209 941523402 557200407 1060254238 16092555 31925395 415140649 999662752 977625268 654050549 494802799 640997032 594380016 1007043223 484068612 199330949 1044899643 453415527 807054166 356155719 1021613151 613398750 545003786 174747169 412984059 326009779 691137848 836404411 694741659 1008743993 141234935 1034638324 704350067 543277062 438316279 558667969 520337357 387653248 1048985885 686658809 1036225758 437756826 143967817 141937704 816919441 526645045 1004813293 995531311 1070739911 285960467 503134359 645242235 233061315 296554297 204220976 961773977 273549770 943586396 513904397 780977335 502490324 452514201 276161068 176784748 458127130 77864107 464835794 192509734 202921967 391926742 737907475 141079996 1010529906 521961663 970407400 16600745 735268014 989961408 31224568 792480909 253895190 175583793 1052330323 432774897 537514776 113782857 944831752 897791147 464974653 64704940 590845869 671758549 983996167 839729415 362650056 779681505 9197421 150515301 956128794 405465659 317676058 42400650 1007901686 123107475 785049587 861555994 405357870 369463109 1033247448 777932425 276909433 811396015 51411588 324336928 524200233 66016725 3261171 913889951 879675141 168479814 523235495 1067644348 79919648 270099925 807388353 457141426 993680082 459368733 396842147 1021629668 21194795 156126660 365691187 392862243 1035449960 163782274 65753793 321031707 1018812040 438080882 71435447 427764509 686902066 417860509 114975835 907095146 619633191 299860669 47511201 946481881 994629340 788700648 666976382 922054059 737844613 989225520 763619190 1040226662 602340141 449042512 825814064 424990934 224281293 946095290 529824869 620198484 761090628 670141893 136293183 183352155 48867762 1065644489 955571364 272697244 909156670 242831160 891236470 1058821652 781962969 223207421 23225880 440602981 657377825 442495671 232250155 100704429 155724076 352352406 298972730 38441798 175222167 44803090 302668327 365868827 588470467 327519926 169765340 105281335 476292539 564819147 605451820 933278459 978363271 561175156 132150296 55069737 226666432 1041301329 218463870 197080064 342124697 515274029 670488897 26923811 432482500 861911219 627119897 912506458 549165951 111759144 101981515 781018979 43392185 49587803 626503080 1072350476 990138586 552173429 683290470 497055570 710951017 723146799 515097903 852438085 618775511 298692432 102962662 608146554 1054470781 188824630 372686587 1017961009 857434012 437952371 861413690 823297082 1009905104 571542524 981894827 848017192 59594588 836301129 720705611 612293588 199439577 1063730040 461365440 12562413 36338385 374472065 243928270 817691326 305838786 1013453984 112700898 472511051 162406315 432396709 381420434 652675754 733044738 511360296 826749734 610459216 778237198 183569916 498016024 473454263 338987390 734803291 88131589 845601110 610404126 814565191 432374480 804260112 964870212 589397688 8381499 139324948 1063692027 818992735 527990199 536444421 670486237 564405201 79971605 492530078 1017464467 852228142 190757251 351403757 107648124 766874229 526977475 547824991 972186726 782445049 607371832 527810134 677233702 158941442 139219267 297529752 420222068 506091146 64064579 87173823 146810843 71428095 857369577 740220482 341459069 790978077 399220910 223653105 151828354 118429841 603163417 323697826 853043781 116642602 353741069 552307090 440724633 955545068 713857786 950119603 555906136 16672980 55838544 996479516 590834585 651507176 948890708 13939561 122088552 528165634 330164821 375575518 866735713 174467935 455250836 467289705 863895113 284000865 1009972172 277330468 811465434 353986719 370089971 590941445 338300264 258068286 237596311 33914912 69172050 249159354 279561961 605069071 949817068 1053702469 192750866 416965797 329135228 674469207 830341591 399525517 579366060 766869944 543059994 594840156 1012762492 1000845293 244063909 808955580 511457400 334656685 91309970 97047084 919409504 704914704 733676916 994185022 1578385 184200599 997611247 921311948 481388424 126676782 1072132853 452908701 533880308 229849398 946968021 280200257 329120603 1038987054 1027980381 122129929 41044988 398647529 396796036 410898745 699392937 741460858 369831865 1027882218 990301431 138934895 776877977 564631059 282384127 922586818 412819617 1029626163 858959042 987567110 313683518 298127905 394228563 155120488 513029277 452202624 493848459 860867718 8240998 844568558 915530464 617906358 210945694 699176845 111219889 553399817 691902439 353451932 136477503 358165594 933562303 334221222 712293154 1002221764 355649220 1020329587 625631484 437888555 293635970 423229700 1070533400 347428791 606937645 256241047 180710429 1029030441 259078772 803470511 143106023 732570404 960734653 194690187 1043255459 530239585 271716454 792097117 41559958 992909283 630971481 977940758 427218048 45037885 681342745 629474077 433390439 967242360 270891032 732670459 651478665 964355670 935645959 517199052 503601959 458841530 289233507 92424975 252995014 1008781229 14404321 983581601 374245251 973187377 348448395 500502149 68007980 589083339 828836930 1012636052 499723941 336379483 775753765 12084786 873846393 1465817 276599300 295823000 227927223 927414204 927604770 236315480 318153585 517377936 79498457 19995016 180437137 724285416 995148598 986983326 418468341 832952529 783925857 377209430 669138588 380354223 13693360 826464935 560389300 252093820 201075014 175312257 251497647 686832116 673072956 550465780 871010902 855748744 472532166 1025339508 597248136 744001563 640103887 168849902 507574117 73751034 533396114 699316167 628904585 352040509 376722266 470589161 289320494 648032684 260338798 264076854 174692088 916483212 238092767 812309443 771795502 424054345 578311948 286164120 392251592 833333882 264218108 281631177 125975366 987233209 191262341 569730921 909999666 852804463 147756156 891429307 293138261 921873663 585289881 957527841 873821084 343904476 736448847 920806581 889473370 726751883 514210283 568150900 205775249 155312614 694830188 557072562 652809357 340804168 555247198 998165651 682417954 441476743 271276180 874000074 919783849 829325299 123578411 406848190 456979480 966545237 497446859 785956214 316633471 883876873 599013995 695123311 719733175 762693288 865401646 901720236 764719926 942070231 76841685 350381473 250352365 554779601 423537514 879237257 24363814 307683598 478911482 448331050 428476629 75025173 948281906 304485250 20840554 437867 464545739 275502898 480850506 868282968 635745644 951814594 370372789 770570767 637292209 260028319 27761666 352650214 216625364 533232858 784221491 2811726 527896512 912961897 23019643 727277546 76543711 433116056 685350162 727842646 409043100 728145035 818259960 543134979 803749146 474746272 1025415246 600854037 348970275 913015851 99288647 277943359 326882875 681765210 137799808 77042177 1001444066 844242298 1026049373 511293368 786146141 625294034 940835944 188202541 895619261 540199151 672702180 466924075 77143313 310447856 1068496086 462360208 243165278 1072395038 353635819 973811685 674614479 740830055 2108065 146919648 732079642 229877183 687652744 1014501821 580170006 394460764 493565422 142075318 542383513 694262468 767941152 158897007 171412341 482354115 864318066 592124715 53591964 957379703 446955814 889544132 701755528 374288890 759329808 388513106 956251193 36138070 330031796 431440840 473021457 1029297229 837926794 442125662 437304416 1067118491 794624750 185443063 729498606 654771212 907425016 256881655 482150376 354390803 913675331 596113476 178029679 340615692 1015340177 322211560 953653632 468799002 187089320 845949462 623271741 709928994 727067545 752771212 544557011 926073264 770126190 486829915 123960630 808572393 763265654 1019598558 47379364 969771811 146608736 524139049 936627588 654039957 169957553 157639834 921027528 85159004 548589723 430966823 512190590 893865791 755184209 614412543 303051343 259291683 211605042 1017329701 818027021 594837764 697637471 904603863 258611395 496791629 634795097 501676007 943424547 1032656906 187299563 801210969 118828199 609448751 813689110 328975242 659501149 966034957 177815404 942118459 1034997051 969502694 289378023 232016913 435656352 105343693 64504153 288995786 467030446 977229477 460738297 956444333 862846379 673516795 606300636 1035320511 32450079 562885327 506746551 80722057 377665505 709725658 827503679 697127536 1015178443 819528585 535547186 766261387 283687030 56141851 862155706 505791801 939784497 421817961 338608984 366927812 995353314 605929077 445510775 710570083 163848843 85219403 724058241 871791323 971395277 662888878 930299951 580355233 302814331 315557052 500498239 127206426 895378697 595550143 876231732 18520508 990147943 620440246 540194812 698050231 532574874 763910220 669195710 91620911 395761116 873208973 525548061 569028253 91622936 72797742 988992027 373244462 837628050 312584521 608739918 394105204 846983719 210530923 350737368 105416315 708474274 840467810 178423260 777368605 628109205 569342135 620015872 2722131 311426948 261514903 943349615 43319516 6165112 700246633 389513218 946531637 484761036 143664794 307145509 329931460 502367444 146234186 342594052 547530387 503021276 267821171 323025463 716768621 56500905 462123392 560060952 223592739 45363129 880235757 361230428 755848522 319728877 248271102 865079901 110595611 509303058 375546206 337549999 119746770 252759776 1030396293 695656242 659814557 553391224 594869778 474428792 791701529 483109733 99061901 112048269 1024101151 863771646 516357269 178040500 851408465 58347885 489682726 186043081 513806516 949833476 286220648 389435678 470415632 909681557 332718301 36852195 650357985 1011234389 627998885 1052956431 519667672 852283054 282012064 12476741 134997865 201375843 17107344 588172539 1043302993 849307872 113246777 217052765 916138914 526847961 963927268 19191633 860160086 179872088 448130506 616351550 934890114 668627925 19581029 357931437 917156778 861552810 960799086 389575968 642862155 229551785 1017404437 914534262 625231781 227249785 36325112 208755317 150654650 964351707 336565119 589069870 88193143 1047142080 875580366 195764321 540513587 5089815 758709500 408921813 494469586 582060013 630944264 946725518 510586121 1034905655 986339635 845593808 101399202 224584393 457933484 635393535 505728352 195791088 654594272 1073180731 563690112 726931194 849701900 647383939 769024077 472919002 543719536 544122085 83050479 545784597 31560563 264391917 404041927 443005528 962896845 51161866 898415455 212334460 179876335 115657432 1005170057 443021897 938920828 192152901 1009555462 961355397 725065427 606175553 817880192 552223517 337078566 368711013 1044091083 615275865 982033096 966799641 894295490 1038219350 124236375 727601772 88395734 171074016 785074504 110016996 139916856 72338655 684126042 789778710 103662229 1009027734 256671327 19664921 201884743 811633107 890015925 453617035 141456146 1057120764 1059179508 1047727775 714410317 997556070 812457888 816148342 649167326 551705268 1037915443 406863136 443507675 1004528785 320241927 449662789 41055610 518029540 403539428 883044900 978898190 713678727 523085975 1069576729 847263587 728450945 130763296 324997898 547357898 751371734 655953158 189417183 875126304 1045723142 966818397 139290075 158209177 264050663 473264680 730700834 283704706 153288674 648690286 544527970 357444659 693525584 810174550 271047128 757522009 28732863 359387202 67212178 675871157 239286159 1011482597 791879267 710701533 958594970 166838591 401409866 650005832 509679722 537768723 609478784 351294681 939061657 239628905 151145831 902227850 155394265 950047267 878209816 780805332 74109927 842094432 963010079 76407497 742579489 890988227 736456788 445419355 756813995 131856329 164539810 346746601 555491096 795740618 406916235 1071814650 167489437 252281563 607154865 935015165 360601014 539850988 713226527 621891366 350699255 719988299 124067755 343104400 1028656096 1051231460 957520535 336357646 1007210018 1035043892 578433780 58091785 305807120 719243637 49461967 765976419 266211305 63852696 321876103 775376580 321074667 1045920063 1013982647 428893041 263656285 791702289 192019432 946176431 397284892 246068375 363253940 854808164 968929721 764802000 649117105 766655811 843792174 1057405789 448250603 478544088 735240117 350972935 28310065 407714308 845461741 582124643 849132666 897219764 860493896 568569517 766771614 900847592 751520919 589921032 17058948 132997852 488228566 910946502 242060500 760602933 494819273 19447594 235450312 334116673 201956882 214348545 999963771 626015501 36893438 316651766 455978152 438464034 737418581 446034860 822083334 105134256 866479596 8353120 944292463 836416233 1023100545 793580317 82251709 210203109 436139744 669069607 60146547 766028993 582158492 820423786 160389589 746173166 628062250 765025378 355920909 71360279 985825157 946514380 175604320 322035524 694588526 468768961 1014597485 910024500 876876004 883513235 25664417 655944356 18578197 712784506 630266447 46494927 50235210 339072114 207896254 1003747538 782578873 231017098 42742515 31454617 36898910 1021543404 267023652 840952847 1002201268 277741896 915889139 489229492 491075188 65636503 473320758 1060912721 651621816 959881341 53984024 758299052 1065941027 785472053 424649514 671464717 149944093 792117960 174695993 1015311204 129120810 1025218980 664007736 703607307 520978031 421319570 65539171 799133268 465348111 577134858 971569502 449858073 180190065 182167939 304352403 834590839 649808711 951141466 19265949 164741933 782203833 170479799 143130784 400653246 802469556 308557288 249749612 872605833 530634019 600750771 675989696 683850681 832806563 412707422 509306178 217735116 513933452 56842390 457121858 723555951 612969587 118008561 228499759 1005135419 393766389 83284083 699075309 122539845 954518006 920319160 538976493 59576172 692045511 534514786 864994156 286888181 546880772 476998275 417716930 713157786 1043648573 734923470 880026008 618951247 744040515 526807936 264320431 540676904 836578528 723553036 1000660923 807004001 410857291 41456667 60617684 1060477302 676213654 1067689996 610394990 215205408 417509802 108976010 296041877 888406007 783350240 51001706 294188922 148586398 44339579 171970686 353060267 1055853927 661207847 154259698 444076069 480131807 597911484 377488787 34385743 141655537 185652352 274675149 811648149 162025932 395366456 859087507 608150579 7297410 247213050 526730475 616837157 252017258 195519016 621262603 939819787 247284139 647124772 956602190 229668453 255467928 903390867 1012699993 395424438 397466303 374119160 947901144 722267161 80688183 245405363 893893593 454648359 320864200 938809029 963083230 76982067 347206381 766146462 205821191 785581515 228264044 309866632 241054625 1017491746 247682399 846397751 592723335 982570261 160982137 1008572544 708393476 138316917 279554368 200792475 657171570 858609201 922728761 768786552 457993917 11540944 442937825 769410440 984885519 312350087 49872338 126482314 658059744 985099059 681614669 261973197 323002663 1000915850 240133624 246917145 216964153 271136713 939895218 503902571 782550522 569657528 677426985 23845966 288116264 855943710 172775626 19461363 562253409 920042488 102670580 907545325 94026078 229589167 788247017 687303900 1031402057 345120500 415806772 639306498 217140843 518312577 302375414 592807295 874686159 677332238 454771532 886006266 768301621 416367243 83635328 1003290187 73592467 125791870 69764318 834361028 537139563 78800691 1021867320 51539975 782614860 837978871 87595335 404809585 1046145603 909124278 916172711 83966611 693017278 806868461 615244236 1055111737 79809610 225289633 889972286 641447174 362530122 90203664 26343383 349321666 561660268 58829031 314573671 234129600 601218412 604686420 75003221 705710370 830992364 1012655104 391769139 475659853 336041431 550571950 758490015 567293090 25848045 536777039 277104519 346108478 630765635 568016695 295672622 677693644 550846958 1024849572 437408412 990807044 304351409 42286307 245735177 516586537 984860904 793704415 756776284 165930432 124381918 948556470 438614052 571335619 426849895 396177417 114428407 920051617 730962785 55354566 905135391 899922645 790955854 152948271 271916993 331979792 488175062 961251483 776442727 1037836530 806226789 801483405 151740282 177914137 234346905 868321477 961740656 575981614 776212902 563215966 422388035 394849285 838515997 165873395 981198142 373697613 260378414 293407664 535371540 817096257 231031619 927123745 393132183 845676007 1069004834 527962290 767815783 985598270 727038010 208830960 637677033 386689328 966488587 466193438 678664463 594490689 52586566 547493184 979774844 216726337 409594441 887874280 997584467 460801594 1036198904 610436752 434694331 373232973 325977701 378049432 547292335 624302498 790445660 213527713 75841708 64438171 897269728 1029001456 1003418033 812050563 602699877 379088631 702051262 855357701 313796145 134617774 510468746 994131826 522559333 936553343 756742759 884815020 238448623 220112478 1050712344 415560728 295548719 534339695 724038308 1003821890 461125957 435883742 776955097 453118892 676291842 1053308970 335819648 174262665 967221797 650561523 431458365 573015497 616310112 940005343 920958427 535403143 522356053 412885842 842619056 770961970 114685363 215824114 402720041 380631725 351700180 599264593 76647244 313949822 221488153 226016835 630368557 373194272 983818155 522878794 207499246 186478973 504299696 902054249 676454655 1070191491 57726935 325155708 717025869 190825861 522490043 927868149 241821039 412349827 1038354361 554353064 265257200 761150352 40070639 428939985 966300876 629444996 848888949 180234637 962087014 238633735 765659822 813273394 468724523 792900658 995908995 714612983 852769494 948711048 938204095 164232737 457808042 714707451 615805564 493491107 319569835 202995004 607045826 1056963521 505387554 309893174 1068656131 1064922531 925830740 494340483 841641521 448366087 500425190 666779651 758310736 813672768 1023651184 367161381 252190845 36416204 117397229 128194856 642612890 494878517 174600911 368271389 721689433 58412944 737051028 322273402 925089005 644321866 467255733 150808728 708145766 431647118 135543401 793286914 411294266 397611681 217799689 313335516 211781761 420841157 1009640033 71958921 1062910717 845383007 332630802 840478887 730095595 667191071 283523936 858072010 355667677 551668047 1034788113 257401266 130336133 539801553 386401133 800394902 688615067 93090412 925581251 219987706 106767811 49005361 132018857 437736473 102138173 264783544 514254782 531166050 483080209 512982197 388920348 853265221 297174854 824058612 758630331 337121547 14735977 803323344 611486281 473339839 593656689 586770095 554643461 156099894 52424381 845377878 318650091 396591690 882733201 765157815 546649075 711123327 801849330 735201533 336654236 156382923 511739965 1011948856 380166333 901366231 345157636 133444460 460769925 202149458 513595075 62176039 480897452 1064927624 84795619 19906711 627277472 574549800 770317691 884705080 883462640 552013518 1035289838 718391012 48497148 108389318 412042524 277275647 1017335212 206701107 865324127 524511796 627863482 608840864 277542666 193571173 509940970 159007742 432453228 996292394 228697697 915067932 796335057 677161819 10113645 974640440 427556068 151983026 438232886 357865970 567667412 384375840 927498268 861740357 531912272 53384661 895818810 500185248 568720520 158126919 353818550 371932800 148188986 896570611 325434575 425195826 789620722 858292394 593808214 129736321 343562693 488767106 404948165 432677604 855135768 257450941 818447029 431366567 134800995 840514295 1064684232 70085766 858590360 990426631 331626286 367614354 218919987 756594667 687417113 441651533 739656976 228421874 881762902 139597910 235836909 521387160 1067024299 690617158 767383162 359741656 366211107 1052920760 598200475 180702324 237797497 243183608 923855880 684034623 287805369 109158767 875298592 326070418 347590422 204751022 659438011 471803379 132020445 593444632 539877726 466160115 1011329165 477209326 582797501 965409345 1062087737 596900192 222998507 537886716 12674844 832630889 873420234 2825110 668387276 1051503562 629419635 179994958 673190492 250075918 406791382 102778785 11202638 220037911 692382545 631429817 177449666 1015709725 506211334 447973471 642226378 910326187 875984364 741198641 399195441 157440274 319807220 443572809 694966581 939201169 652220837 107942079 399164787 414605314 931435965 874142972 1070546088 723237321 560786706 940134219 347841573 1048111703 590693728 803268206 201730304 859897234 371834361 142401919 809809776 144953823 58086519 78356096 38689390 530657556 597233679 685535937 93645400 278466697 425745738 1035930151 488578942 358622388 183252273 98964306 329444215 1034429657 606714485 240841923 454742264 209333203 21886962 577351174 269850650 618953803 539598406 278326864 602784709 18624378 89441750 954597738 192814462 433858469 78814317 406147994 593933057 767705984 768161068 238272813 54194352 309460989 189491817 499402034 486820950 535788756 900714002 583190281 68804674 727690370 125145817 483906666 583417997 927379426 1007496786 869124053 77802295 108499866 196420514 856094823 310081984 39076368 834816584 482701667 187568331 8418999 192511965 116070866 454110628 612951498 113769735 368108770 378360766 501255018 288126184 397665874 268519247 661385660 843738908 915843243 956490861 733530694 583865386 590045205 652742692 22910991 121429836 933106253 191795902 545920865 185859718 581150186 339886828 1045516577 90358942 961907853 44705335 570821056 450922151 1026378033 963879788 1046125798 955616009 256976623 602078574 199710661 483098419 399396143 741586902 1071365072 913462850 489914997 682237509 822819784 824336808 364442923 262627805 961307413 242290425 861456653 179848783 189369553 160995171 667294332 101868683 1055936060 153851125 749625583 329890208 659692856 880446320 945267134 192628293 958391586 1061544898 100142344 860050243 64791132 549510332 893322129 214996547 20780932 727380394 536529150 767799761 952197002 737557608 811674757 806134448 908750998 754634293 282510457 107038443 547989343 754415602 66137085 1037453547 265162383 797261133 56399587 407247556 147131046 203828914 631183874 445045009 727071409 208818827 1036207448 421577274 818386790 977501335 688296144 278208873 218382979 252371433 253512057 682333758 146900406 418581846 476855366 387967150 243738552 45485147 649280452 149770150 18341972 608728806 899610263 580710675 886035074 747678043 18207784 436841778 215775396 489755411 802687772 81647077 962176251 177993309 23993808 456499593 757878419 729921495 725822375 603229046 681782668 565334494 424861112 72424853 716296118 68699269 572741454 726420122 953143076 563310518 994537484 965563075 668656664 618343835 371299448 982929798 1005209936 270547928 204772362 84316714 705080006 621168949 943343076 763904120 1066373452 241598647 305829569 548541629 923252545 611641200 755178282 194777625 895074848 763020258 363220770 962478728 365214852 859383450 623471233 335051898 816802761 28303099 381341012 314974459 596909129 359477255 225150358 562885694 126920935 405926099 54136934 248756276 83275410 831107444 959527495 182142695 116174590 930531663 4819738 76848452 523627232 1041420793 807519852 1055999881 724249045 193185901 56681609 195904285 420437207 859877979 972210829 662062956 753737349 710455639 582971105 853665651 71604228 355060767 988383983 470041510 965058331 58740649 57618852 737029330 303509985 715010863 990397631 1036164720 423135326 953996749 1027379897 932670172 976295372 156390199 259982022 595890360 673086542 834076205 273002600 339934867 985515488 798855817 398043103 927010775 355838831 929740875 395429437 927281089 419662916 849270973 1055983338 978806367 562618075 569658846 205613814 148805955 546363778 135859065 991616232 501368586 105931360 454917829 211983423 948206865 1019040290 641680471 53849905 378423273 1018698638 421235468 496300068 485198223 780118 981907346 334964369 388799750 375806507 1021334836 345557836 874871457 610659732 969960161 972999978 453227982 488529284 422251930 290790282 1062729571 740815393 664992032 451540303 901253581 903514471 709153388 1028243938 535572010 485724721 871927127 617084664 926073513 249754857 525813016 994597198 217663733 46495611 524635876 393802261 886000411 658754795 826205495 977551093 1017117984 683649924 790092304 969836451 413597757 124623649 719289140 158252945 431694600 164831671 522400856 988051591 653896720 956327736 852503235 178272669 439578853 143441411 533977215 707958845 795444957 73836249 626741136 177019729 106438533 1050693993 282590016 52835970 101287527 354973994 1055983710 397794769 501220094 1039919012 785200750 644880213 478743503 109710382 899669282 736910784 368052705 856038784 531751716 428893661 965079284 530954501 799969195 800346102 995005431 58226624 685884602 196256689 128124262 958463845 320899529 554689120 4219853 266359964 498511849 880435710 52489984 1013263255 732693928 920468630 970029552 24979732 805442549 822630409 594392260 123912021 959021500 73837910 201986487 243774703 698509835 490316782 1040579256 617539221 698129573 842318569 3771497 35655510 134193463 1033596292 81324445 578950701 108390041 470732611 977571366 8320657 892074600 1064180585 903419898 873512883 50750576 96130410 746408848 92556396 616967444 53735830 888295491 289104493 330881186 268309650 205799865 262667200 85134719 447473875 835029774 895898179 871878013 600842499 1012321215 823938019 138986156 862885565 421674121 695882252 30141436 22705403 408674168 994702687 841195382 877388865 202514475 606219647 279017492 175729068 82404140 273551866 809371119 140880313 398095916 159247295 371754600 537630094 197770603 467595207 609316427 459901508 555015332 425807853 344284379 155502919 923047098 120551026 38205234 846534901 727879805 1044873712 972374028 457781617 701729179 52569825 751783722 203080536 615940964 63651332 943015016 271112702 60355432 704880665 868397955 568696979 940434532 211814181 684149225 56849926 543237383 953701677 899740540 657442854 549586160 1053098917 897425731 728328755 176844325 480908542 927116418 303747852 399956959 224017851 660491887 1034907212 84609313 44730340 658048935 423935601 927489891 40573027 1016423065 630403093 743008059 1004157155 959183425 395639192 80155758 91654278 581480288 249989153 593521755 745209582 175170303 491150987 532806808 938238634 642657190 60612620 757586705 669018955 883218351 126632240 178960125 913374389 972309516 402520811 707364934 35429628 550023653 239938519 975176975 342742396 410380985 564429408 843285372 701547351 409164134 2244792 598477029 997363815 889581681 871508680 882154202 327930669 1027179609 379951696 33735910 917315327 9533852 121357271 884060578 523514190 59291006 788439174 205707153 484528346 147819616 472584189 637495110 260806707 93429761 18157866 467885159 828430459 355004216 722715277 167755560 105097195 364660167 428096761 887692100 285365546 629921022 73905483 317402573 216716672 949947028 793832262 604482068 1452575 706426177 809268197 101814721 749216318 556732760 561250980 1015436691 784330524 1070036309 737361072 354485726 457940227 1040581145 573199817 170563780 916038941 600524050 1028425604 191564692 615123238 512242320 157769828 1011568782 189456313 439748152 37595200 208976858 976669177 301504254 970997699 757324829 771534804 573620415 52974286 137435307 291199299 441496499 806298075 936108590 107082030 472072947 976132722 175642474 1055056687 606429005 214730276 488150444 654247414 1029347705 381650495 95620272 986059297 763537835 740962642 61300133 477010409 755344300 798288076 988479375 674882316 139529012 886356240 138990917 731534526 385508898 1028493678 897743049 205792384 145485180 932808944 440085280 1018904881 802503581 613094047 553189516 785966967 1043577726 362153651 714615971 865447363 568671735 95264973 597590302 918122672 398237937 83582487 185779230 740508997 447863954 446835725 606138653 504913862 40811589 363756426 1026802143 127222826 765573963 1036427680 238241096 1054583036 795214425 557902076 474175577 990445596 1047377665 495472962 525755808 182557934 613428002 184053100 898502568 224659531 151528549 384045323 848798070 323213969 962018956 891950173 852230062 731406107 426264848 206503012 38709843 272655520 672836566 325078940 114451201 411708801 491798765 311397112 581308007 128759170 495530603 325110928 390334379 1290528 174646904 163674642 431749512 898439766 752668560 110172029 632517234 859924258 503868916 730059546 108726716 100474000 440615835 702476232 85460914 714622424 269703734 74833736 532691354 170545031 589872334 302763253 122739982 205849931 481994898 81258129 546953999 222004129 168097504 415934384 1035816548 416242394 895353232 311093549 1068628494 575564511 377232828 603290728 857766871 881257865 137258730 337817935 106567775 841188997 973357411 639174127 941022676 852725329 40287951 1038431269 420377701 208431608 472913899 429974483 215970067 867737616 907932256 739926272 505903402 313238564 105324384 826778236 374315717 434228606 645059844 670650026 278483591 988170370 707704249 471744481 589797135 118450737 1042053613 622587011 206144097 485574952 187674053 863545078 975644443 599532345 652357943 67333697 39147637 564057553 237886540 681448962 149552977 63674971 762548627 723342485 894903833 241349105 263988307 366690591 381668616 159107616 457372479 920713096 1056276393 322741696 970069263 252378412 1038346041 333014839 252439639 651855272 199628692 549453185 893387991 981406665 492020933 686690591 769569376 654631830 746523468 363761899 670604073 1050104906 276607942 285992448 726001199 787841 174829531 1072073570 892323845 863532410 412514527 550912230 977136824 155961784 849969070 633841436 199715966 260875253 110898744 977559162 506057030 183638232 299963793 892070836 122047645 393539375 681837215 765804706 13454149 277680572 551574863 99646982 108591071 277724485 273791543 903355134 235896168 32950802 1000333807 474284208 268566244 665309749 1056607507 681414624 546035125 478678852 935059296 600105798 856293434 1047776869 696434473 834079886 970420762 188443665 253380374 815627287 479651437 282015455 226458673 362118350 1030489840 819642582 153804799 369542998 717758993 814869271 177210463 352117429 366644882 120848043 988612400 911655564 1062737389 374018529 449993951 460658341 809350188 142233966 31264111 237186068 889094887 89532689 926588384 121431461 239204984 41042687 310152795 289941697 440350633 1011149154 905677189 192757792 821972116 886338766 917535140 766531726 785276225 303331891 878299467 369243054 947171609 955274442 502380106 565770861 667473729 869398882 753069068 132069645 137987747 1035959268 690027245 863108582 657638833 366075431 76494010 782698821 856869607 69997425 884160766 766947836 962878091 474838448 822159133 714899629 439715481 933281909 78332966 997099361 382592977 552152290 170418567 881371879 571072137 910176203 512027558 654405618 320389924 555093578 869168312 698896249 295026040 208795243 862713233 653847853 1032983879 687419524 925707217 641384175 845747282 740832151 396712430 538705652 256161864 439968610 557139140 781696965 264884136 594228629 762985257 891491118 310373617 1027829216 745934331 577947562 138267142 1049213478 1015573801 141873666 913040027 881661869 375468320 128861633 397300675 588338088 224949673 779335493 411278116 324932600 814041483 910453186 1064288543 128449598 781908139 547337241 51823713 308430524 894597652 204267175 696133909 821960838 61657978 1023755391 435709814 1002330185 58768447 119362922 737179115 91351650 473498883 713278221 522142282 41245198 151928329 500389342 1064932209 71525059 768507209 401917229 698491974 390698075 755960785 729547798 144066578 1016558163 79641966 317026593 71588156 118369532 1037224643 686391336 811769146 264722423 57879886 293934795 94063608 71708391 679270644 528296998 451636444 550863831 295878286 415692319 1018931774 931787808 512725674 230089360 890812708 921411518 591185350 159349189 610141106 1050365618 319796806 663363786 623557765 888158286 978529251 9148477 540245822 389648437 623177927 321272525 453164931 169207286 435197155 1004100782 383029879 862598059 40206586 239762675 789001263 252820066 552928425 265092833 245764003 383728526 445005926 510968485 944632208 284207676 73756467 1059201125 223823319 846804274 576101706 585637950 699847890 772590025 503475931 389005423 59934718 56600834 158842443 37927286 347749187 829466451 306469071 994684799 569337337 242599506 299688398 451177094 261628973 1004993638 450772855 501298393 266936449 958932844 640295276 372430434 542037916 1002055332 401963599 1014210414 983394106 439259461 738840390 278812581 745408842 265252337 47716837 62004567 626508381 392658228 784471511 529385389 959868918 165338331 699049354 1031226973 378012697 691516150 294130593 277065120 807599594 484729584 1043851280 598571538 298354574 64311206 102664171 302898682 167469506 688222682 751500829 484802077 276208712 980119646 135600871 598373995 1070534318 583865631 789720939 359374487 35750174 403039409 347042057 987020412 792832120 577524394 524837122 1052506890 75555336 228271221 496064989 249361838 95905443 954143619 402412069 139066989 570115099 774632338 679455722 169464296 219794240 381205518 63200733 560300607 302280909 55960932 855341856 859986032 267490435 309808791 508976156 415968081 989403213 678360901 986823485 470250888 919429241 394735969 555962610 558417092 42712686 400352151 249268205 230710750 95784852 307271157 296142937 348115887 857487967 381437786 909107537 651974382 1001298802 873710029 787432537 255237285 580317222 893930875 149661430 418886496 951600241 1021443059 792235111 965160500 148472431 490904707 1589587 741131840 981118420 511141639 202838240 147648009 172676226 238024253 816749377 1020992315 703652976 850253032 31040465 353366337 255618029 756828558 590344061 132957040 738074346 390857843 541088617 918479058 79400141 678049689 341737897 872715713 155620230 704352010 780196561 624830947 785335356 733457243 643490051 1064097218 633497297 838974508 1066948262 803774915 616314016 325385001 954909955 31904544 857993949 524038874 95066892 142330021 982980065 998981993 901808392 171913458 54450269 136359531 639312137 921767379 913209487 375789275 656444357 756769984 934754947 640971816 69036458 269202733 291586636 1005608575 366642486 890920283 395759180 1064300413 187133654 56677594 1011005128 897759656 852240944 434419338 198587341 950139312 644398281 150272975 1047659155 562597642 170424164 112545104 401237082 268203306 274003301 585939904 220523705 358457175 708838894 789992841 315106371 899808642 135930598 1016984606 203339625 170718445 56038595 350559488 1034488510 979360834 999289311 581508596 110955206 22177413 246385663 215956460 596129760 786210685 404767458 53069796 1031716991 750279110 271877923 314313981 227994987 63614241 781664495 978745178 272064622 1010630848 805798254 77707387 390405535 105386832 554515892 511300301 859976211 696449510 84533501 19895376 854113426 572197202 970234223 88089786 618323427 666063571 856045477 272407254 24661732 413484894 898914289 740276342 436552318 164255847 759993546 317962297 1066254156 462041277 76466185 725235809 218411317 513854085 578667910 180242715 80623286 878076614 99963385 709207478 1011551976 685145121 365891407 549120484 368628068 668920759 244883792 711228040 590501806 1067041415 794373065 379211659 222851729 440152477 437530612 1039976772 1025521850 729271790 984452957 625285683 159738059 163375784 278809040 879555502 735906119 589759586 62557628 568958835 816721873 400258254 1006754036 610269124 787956865 159713721 618389354 507328731 501216883 969012129 509055881 697909539 76557489 87621012 95333469 168852400 796219872 210117598 952017238 845625985 938217249 102114655 758293564 170514603 840964964 528889698 423433206 334826831 361084719 229490949 15600384 606399879 976204065 134602063 458574567 78595985 316458414 558160887 607670594 103069083 958928686 500528786 1044984813 318186630 441070371 74530612 1025546583 391012055 889808118 25316750 664308982 787557716 20265319 519133234 397046591 328553596 48205809 420650521 665034668 262095344 883933480 1049510811 755396568 400494691 37260138 792328948 286993012 736493404 959972518 1052221848 1012380682 994044651 629883029 1013091786 362322566 567113662 972422447 937909373 954217 435626951 352413693 812775805 4823569 5543060 1054488789 66276223 875639074 491300817 393988423 793334082 454658176 1069121087 757689762 402261278 163050471 402301992 79282637 416694973 762394708 841223624 700339425 685334716 40445865 257806738 268691755 784465422 51660838 555291171 853139714 877732380 965390965 545546013 848344143 84013953 562752152 869969021 378839078 680058414 654411293 435330052 964761335 561663396 584188106 998758456 759184044 992919463 971910423 41103854 883437377 1034430701 536273104 506951943 258082025 697095193 767659862 149765955 75040621 375400588 469755995 414107619 392172422 503587889 936837023 546135393 148698107 251530514 357259715 838733076 280682997 639564529 30736510 395511806 427460698 320874080 191055943 461799934 954607526 343755233 131993544 1005762184 573715836 490650947 16221783 953293049 852549137 134587601 695187905 737257409 774546069 848315390 437015011 85885260 1024649407 555647584 93868590 841500219 722073521 1069669367 777386533 479274816 333254964 39368246 657750156 980436780 684810372 705768740 44673564 582265463 314380168 881830664 732617422 543156597 438889767 765803781 217542646 1019676484 938514746 842022182 586775262 373597535 954383336 373954037 282761378 794693711 981345304 761394185 178001151 680646230 838298263 106456589 333881323 1031542254 703817758 703826093 945137096 976504728 489645350 755707660 556387573 794076841 837570303 318815610 765127079 254343857 838759003 950518077 484625141 980731089 135587670 927520259 518574604 921749431 1070306513 279865162 452019632 12226655 110327505 441456321 58039964 282118634 401627805 213477480 1000289917 838454343 636716334 169443110 147226706 790708659 610436833 925156642 495985522 730710530 243483802 1057905693 348868396 134504734 666738240 35442639 951095685 1019056991 39767642 776417797 433155952 883985924 280193754 1010009846 851936078 139386741 997994464 854925552 102774551 453101492 1064880685 71280009 470755850 54810316 462758644 482738340 504908318 575290745 532185803 695595655 619669166 823220451 928295698 84474373 49849689 919353349 1067816450 932716391 191271078 134901921 566272038 981346268 408052335 317077984 808809752 691244134 224052870 415338948 1035790121 801276303 764648617 403791225 652500554 123202674 126601114 484007268 212041683 608780330 167828418 735113681 1030935096 527826846 188665000 724930039 729093304 281261770 923274588 385852114 766557619 838009924 128519406 1033601112 865295823 244631724 629338854 263780855 190342729 222633867 8256257 956307701 289856634 1014215901 684767632 545899948 794551949 279242951 993453102 413672487 896864442 315870559 876568227 157014376 632916998 570668495 831470219 68116249 550756339 110549610 781055224 34907354 205837049 13506545 914794157 304347165 791782080 439471301 24000863 935313746 376919320 1002681105 88768904 91428469 729677051 285048554 562217946 843369761 856449015 17476383 344540918 885834870 174820365 12131324 90737461 1007504494 683926876 706631862 489551363 786333223 850885100 1058328884 20432764 661913765 578435832 120894015 930290887 939576450 301381919 1052574815 832659490 48971564 449448400 77816438 990839439 353663006 779028283 288255940 481537383 873854513 298079249 435534513 805206733 386423546 646558762 591882709 932863638 756172576 751118321 421142568 621207256 934093581 129775661 980433015 132056954 384623346 1044268086 642890680 992380139 33060543 42024836 793282420 116387874 36857252 652051497 717375265 545425448 618821051 130387600 482630339 134046459 75506826 255808699 745053382 297459764 617352391 184027614 226485655 1068096764 686074878 566506749 485492993 362004798 1048218315 386409253 298062171 560620624 207374551 465698377 304483241 238222740 623135612 317405322 194032114 914723258 550197113 167041356 84943662 456726617 917112856 1014419391 849412827 881770770 1029137803 894616219 253469039 332059258 494127592 994555980 37682253 353278820 22311831 232610003 866862971 847388901 994322909 147313728 976780326 622622298 739803940 864749766 865365898 853717448 256931227 314334000 31011505 965091645 478303478 169263154 1011988743 650465774 45657264 192944811 540151205 398005033 770843332 922637888 914080823 470982869 444338196 411419318 887457090 995770293 764900786 434310604 70467769 699246819 840187406 789232476 1008188321 674672609 185356282 796034375 277959240 247748318 157821700 187877881 135677151 329092986 783651643 919587546 821817791 914573926 351431347 790117806 636834834 69020405 74141718 302356985 531195189 760911525 210245094 728892776 973255329 970351369 136767800 861108710 138892943 889285578 70683017 255320548 85466667 876628023 1010534138 813569010 641743179 1025981937 247771052 190951812 557529743 160535875 578006448 118212674 36319723 670787858 709198975 841726357 149197218 433939817 726708410 574956033 591492351 1000769788 928111356 542905354 824355910 530295206 51821124 321433017 452171933 135799967 584337317 353882821 38777545 359121487 516197497 626992979 361910869 85874098 785330036 6879106 989059406 682844587 1046724849 436144201 450929787 380965687 705994298 859346153 514052812 1053050128 215033730 695037509 61434402 1068641773 747778975 666639512 340832700 419407247 317058579 246217081 925154959 253967565 687187890 10293668 1015947572 660249088 677320695 791132147 982023177 889412663 392736837 838178918 76334547 66638829 586320523 77342660 3348445 907902281 596639499 218847611 956671446 29523199 378370972 227794519 143318707 300230918 956793805 77702712 665060565 806967700 421350013 576439066 610361876 703516575 607224628 474987586 322076894 696772703 638148110 206802834 1019311379 920912526 526308147 981905616 461287959 398743136 861577988 469118776 848872673 879173034 533017914 533384502 99306127 387516418 932391442 697753154 450482091 823854257 777293695 46172925 638986123 3169265 1021516282 772148442 666496757 864645976 273062743 165548398 856928675 311174468 677223706 525084446 68297654 478654663 308975572 260775973 187570921 277830984 745890222 822825288 106181374 827668341 238060446 8191803 774005043 1065651593 932256132 596635693 316810946 392243654 230008484 508578325 756860704 515559274 724218046 420141755 245219074 10152464 368627217 330046426 59247696 446185525 199317461 519100356 217809968 1032881494 300993433 363660165 1048258553 277766733 843318864 1020060110 461078401 939833679 792010092 238202319 305442311 144252577 551725154 416230382 563021088 323059914 1065682203 729680241 609422462 91697076 639924699 797016854 277760337 311830032 509282970 128100539 9812422 255617176 906053225 487485365 936855396 423537665 818190363 785500572 172012035 928908007 1036447789 577073854 993762924 500476639 885733623 635158385 134230546 100144938 107676101 898594781 193305045 415132262 333993594 1022779837 3318718 772368520 757444310 271297409 138011730 1012111041 415439487 246429576 852263196 658884246 231833577 1067395566 463579591 590030473 158125129 979948266 384434197 502026537 512659359 745382542 754316837 747971286 352477741 791183030 873311616 355219453 238204011 456635922 1055768770 298687321 543258568 844022406 131607932 218083499 939654288 879369401 726079233 710821633 414381968 139925623 1017212791 244098475 394561002 121234869 339556065 385546790 981602167 542803047 825083148 1029373451 196295006 528204780 312592950 237172462 499888325 625193670 324893551 472680039 155919587 257108932 908307260 810157228 71813918 281051471 1014626653 560500452 351493763 926474245 287564930 465410795 882516983 865952027 260725897 823481331 521521729 683331988 900375143 45077571 303864220 1063294265 1000579187 519429112 333838996 168970099 81098505 56505884 767395326 938786211 847978542 843853044 478289529 709899995 75515945 903251308 165022973 301962292 323861253 998168916 413967594 746984079 398561190 140093238 530031235 1014615050 602985080 1058865474 400210949 605312214 339768691 470548210 759013522 565983742 523866536 890282749 88680127 520521004 300070320 166992271 459997858 758089873 517422393 930823336 642266803 462928020 472876875 891811975 919104915 698702494 93276516 977646781 234575386 539229435 731755751 842753487 256681525 822879790 100837893 1017026729 54513677 704680438 507769523 831488594 1006308617 117772427 137257075 623521763 1071372961 925693876 846671724 31885817 931844811 365588360 692992704 966814931 715363947 454645791 507506394 319086992 69551534 17002219 254656234 132845981 127122847 427789085 104052656 868228412 423344004 175167748 819397607 996033044 725934713 580172708 676515065 40538588 2439260 722808647 938802030 1012695410 722241277 736855788 823730441 437630091 377206017 937152150 509758171 331935735 233102423 998452854 917466092 256172804 622642799 556245710 151556041 923025685 935104028 803706590 354701615 660357885 451894602 889933232 588903089 767353764 51575816 948252647 934559481 723032953 146652522 612564260 152928173 237437038 735243530 627848239 119213954 721540225 341489904 600254164 945389315 975975985 99889372 1002852432 318058813 607407898 180968184 406694495 773225070 115935046 378440241 956751409 679330330 990044859 564190657 416843872 162295875 964332475 619551141 605549366 136645878 599243984 352244815 756564162 1050722236 174569085 272413929 606855661 540363193 200916026 476859486 798051796 238423446 293962962 497092437 100831624 479720270 480617725 34540463 967430363 570897326 635397244 807886253 239337892 439033880 985898205 195324008 542108532 443501672 119376113 370858630 984787845 262377817 1028271813 855848031 175537587 318326414 422954442 233834861 436384418 154883727 9554055 676083602 472841682 914310557 516102611 78095441 876750990 430094199 786053989 866242312 402449448 626245478 618331053 655050082 134780649 247085686 1047517031 711260290 396353508 577329502 847786646 624863099 390958694 640956966 769207386 931939321 537803528 86592603 824602035 935098154 446928159 876204084 847113480 763593860 868781865 3212002 96549409 608435744 863326851 78370913 701497168 751980561 871733599 872673334 660828805 24852989 407190242 689203879 362914112 324236587 56480248 159742059 860255930 910329665 468595225 230363645 702075375 797721102 8710993 981765184 345573146 510453674 930673152 920315245 377964440 518803308 931789324 889459487 296399169 18940048 28124514 965576959 937174995 217032839 68077920 549156222 932895004 1049099101 155931932 607144047 938212547 975545375 96012952 521259460 161594738 676145075 793972421 503125849 11854984 91307265 966486312 239153170 190617161 267065930 426281368 267486019 123539333 122987717 143520416 483968832 161824974 381939303 859502873 387915451 390896287 1056698765 347494677 518774885 333218059 946447367 999946261 360525803 340963466 755298885 367115249 657450156 7923504 186515955 877554942 1042853010 787516420 402011158 148121562 943147927 550537657 78418448 192128066 137447550 506644192 65225416 744159935 359584950 782933901 564729772 848170957 570034533 707773675 532257924 532424840 557981444 609361802 535934169 278511949 473882797 492951804 14483679 944054408 1023111835 247687972 607604871 1066268081 1010406653 211064429 405431954 265184224 340537070 467150003 801571454 486115574 62925657 1064848296 802381152 133674438 233066177 527407275 155240245 81567722 121130606 453571680 321606357 525578463 949338579 995388267 465065431 442039916 804585548 986610044 930339071 247672855 591137156 728677739 249903328 585389509 845895743 653576990 657676646 640636704 493414063 618224241 147281294 680098469 175104141 66661807 718725025 787320948 1037078553 145367773 654797502 760417048 1068142576 552211880 769138467 24871517 567212812 559908656 214361059 398171179 158019908 652461226 108699029 167231766 316413631 288431794 868109681 78617746 578568294 418913528 904858248 434804069 677867541 20082092 216537842 868642903 829144127 15840323 965589945 918951785 61322869 830008427 748699298 996094852 252520985 420621612 275882714 302254216 40556017 160956174 889889063 65702811 207961483 606275229 859412789 809520498 447103399 981400143 403440177 979563650 750326083 635110005 66709599 226843055 523183883 96295940 36311870 295533755 682777131 530536147 45719991 302079593 962155296 934901678 343262656 279483309 231770036 526835516 593290104 1012082460 444992871 465054946 502546010 85773046 913217028 554008059 566048604 167876991 675186801 183508017 865521647 289606661 696115515 769919292 753118216 787209016 967878823 326667529 364893715 621470195 367392622 806004662 551012689 64285287 585781448 90201387 150503086 119168799 525890516 755056728 917909715 213338306 312379060 20482976 932146622 171860290 412282667 479443160 786114267 177247394 235260137 261034554 814073433 459793242 478183797 904971971 174556495 659194209 680504226 153948735 206784627 905834806 289686757 422735624 54628315 1059780262 854269761 746269944 635971024 45326802 981568000 265134113 887659465 340984417 1018762186 225648081 658973114 920398393 299966515 264462927 641210492 679526911 39376448 722721261 804751115 307669320 45845460 135879936 584852312 52464507 663308461 852338903 573386993 758241178 943317883 695843168 395005228 941604016 938996322 97694330 430726116 553138246 985671812 722076543 699895401 829796771 190544783 737554395 694269109 121693752 186440928 647409460 747168743 698450089 342118086 79722041 778543647 16955739 878518326 657231611 660560383 160007652 376779133 212986766 982965109 1018936859 992085878 356350750 968712644 959987658 384001464 351490541 509419505 984566228 888040359 284387728 578580856 179045802 790552251 1032175061 852645254 261314863 168030687 673034983 479375109 308229866 703671829 96635755 570777212 556378649 915454331 830661676 612319660 884699882 285149923 657772170 745440359 1020333220 997497512 516985603 679531353 657595919 1043204145 478855302 826114319 181009483 121011 566793874 372927888 42441094 710040886 540591439 532544087 981613715 142492765 1646238 696986074 845654721 35032276 176961830 923044861 840726603 21884307 792080981 610404084 933300170 173034677 795244664 224698241 727722223 979059876 713349338 99148852 482846324 114101932 798015143 739140450 259006531 932906299 699842571 657104195 56462956 475742384 569580366 6985253 933728838 274817178 164939646 503960382 830680244 1043232967 870141660 11487777 48392948 57925769 952731394 463273108 63701695 181952419 931048366 379777391 922521373 751650794 643605666 659472217 148819618 552964558 730225545 823753590 971838638 636716326 492990060 17821731 395390520 395770198 637556212 4552484 422397957 954949878 348756449 872246323 85444339 99645081 897274158 1067052309 888134653 701116983 707581888 906262721 488600259 431824907 1027200353 331610017 480181698 943481212 18354671 834932524 281994701 333697405 1031161151 316831690 285806932 931263826 446058045 146750309 431960070 692377387 695896941 150178552 76500711 334243952 296226378 963320855 859991676 690746374 445697918 877268607 480093756 1026934492 828449700 144309174 979668041 164628451 623044181 570822609 995267702 381177661 387826298 552747036 490565552 514964927 373428911 720597523 89092928 539874576 730409098 720121253 270476402 76806725 187855088 273806761 235336741 374418537 580609822 503939900 564602042 1017285048 29376786 658056481 626634802 505033412 67580914 201693606 165866391 618678848 162390653 195823666 450959303 867993798 225636064 1014759906 864858048 584605016 64653175 289632972 506109994 577384138 47895747 12031127 496927003 947859842 602616015 333504871 697097952 193238247 763382111 587384864 389474245 410788999 890315471 540358058 932177481 245155094 150971663 1014928668 405700767 770477532 504626766 114669323 664788796 964424842 329896296 794324818 611878107 387887629 242581236 191289035 472620912 152896285 216022323 639635218 808170236 389657987 526860852 426419736 63121340 519117113 265025826 592383078 688498798 1009049784 808673441 725036415 208586239 141020219 402205427 177827852 39709505 297882417 815981307 700673457 823786756 32259154 787755932 710531333 395782226 157612438 610271014 931852249 100868317 183883199 878498824 812113015 770100320 386514415 697856824 857500729 449137868 245986160 157310064 392385812 288313454 5284406 966416998 481911835 259338569 837709949 372272978 552551268 625533531 532652523 593482666 51757294 960468317 818327476 904891230 542536855 138510103 153564999 120421821 678863161 46416519 86762215 728950905 860145366 379950180 15977556 27090404 805146825 82547139 1035760385 678301805 93519388 376631553 300407223 736802120 913459 519881167 876815963 577575023 235888046 903328506 323814620 806086269 975715441 775934729 6219208 727688779 753637747 83176132 116718901 705419146 421725221 445783652 894081610 634077822 677982312 959082147 977216196 681021391 276951053 574716732 399489004 736157207 693632058 761796781 729219935 820200559 433199899 222532473 244282887 92330202 457109525 309587236 409962158 705521085 278176714 42088078 897286830 335448588 535237962 984169336 295167339 951153817 970682700 235473339 650607453 183160351 320316678 470700876 266027256 669141549 981298329 448206780 785183030 1066314303 136544794 508947962 637536451 654183681 154863415 511883025 833206912 73948658 693136780 1039576340 827305952 331670947 991179968 133167021 386560367 872770919 376358405 789886692 807893726 1045044261 512822882 308304480 126597931 619464664 785641612 150857976 1001319649 825037200 809728385 218421974 829602873 193863798 726624522 363400283 873738533 422661234 171882066 234103341 47664612 928954373 168731138 77118413 979894710 162826820 109934451 1018294430 123796539 606970147 768690872 289744847 889506407 690338314 366109371 186694692 563752646 114349437 1073073480 752678287 382751840 138153832 223837226 238501931 543819701 463174017 546032182 606142122 405142655 1044816270 855214274 349790595 808462702 1020814827 601023007 97149212 202919831 524551385 657713064 556885302 1012012151 118010665 347020631 281245120 107925078 519287173 141621815 2044051 103620035 803045468 701295028 178599397 416082858 274981124 884896248 402210033 236797527 714106411 904051016 152651965 727789616 827396132 303012116 36203990 116058771 836080838 164593041 504171558 227707036 554598633 492204371 1032500760 859220100 566494831 1003631189 230332368 910339723 830855643 271394787 3646884 1054032134 733063557 288484868 212358216 411708360 763929268 224487231 1034038132 537842919 616494893 693974846 773769414 370248654 53407513 855320394 633146495 62362797 8857841 100838688 135864209 765851569 930606611 673037796 809052341 1064867116 163472623 736591414 241333778 844252855 212704268 101732491 681289416 933844108 406057616 18197042 902393818 832047642 104248612 25207205 306905571 216892994 962105744 289105374 85280034 34627739 561300829 59306033 538974869 485266197 117960814 214781606 180268173 377175759 548555789 1023496809 659213128 1036406946 386988777 994188405 911305405 1014857837 940959568 695112483 207789192 242843995 401037647 231545754 524745995 338767464 889799635 655306812 196474542 899700850 502662119 432203544 618720442 68081455 485614902 394582409 226375135 226035408 381645467 591410001 287906814 513634137 405720022 211057242 143999733 443391530 40980200 518490920 550601965 593210849 789725006 514669511 117657121 518673324 44349716 352615299 201490955 535627900 193407247 866626557 1001449016 623449136 612901153 281872649 877186872 595299047 226562967 521803511 847539898 670191308 666254052 607814914 334343599 272909130 417372308 227653051 475920261 670400391 115941053 940303684 999194003 1033790391 41162432 895113208 108811514 361964553 157591979 667098587 7420069 831569622 924548420 30637897 49734008 1016890582 266273763 514863787 897249369 465031744 340332218 934508578 473728849 51246891 979509940 131536407 175192691 724429667 941388669 135776203 276835827 208253473 79795954 632964592 199112544 401221263 971622122 448735304 990261658 83635000 148009088 876830844 368325523 964388948 901715780 884274781 71387070 556597783 790147863 78158125 641889920 539073949 138470358 651502153 421090329 200902387 311969447 112715995 18190054 41047185 410786824 616055163 339212957 525077911 173084270 1024315975 545065220 613773180 124856540 1055367805 847370447 947038937 464363380 1032925889 568324959 683569204 306757401 103880665 714750804 3845901 246488828 1044531743 1034844740 615671634 494393133 638150836 1031532200 1068623775 982345298 49048810 112014595 423849512 878709703 939981905 338181299 563259451 548246339 235945908 23594149 971137827 913367882 637940489 372766382 656990650 836077268 948187550 465316743 996944602 422328930 945775990 958213859 540165986 350178663 868875958 1011762030 694406878 686093754 298478155 670933738 390014677 177783154 501087691 314400692 461903128 354672434 256385650 880550131 296058286 589293872 519616652 282555461 508285738 837460190 928380782 386531297 410933407 239043938 382540463 326524825 1046554625 704477362 99733462 605482160 305197745 478446936 191798535 284895941 46716695 745091697 731169033 435592747 423223570 862750687 533242217 271771823 518457261 131174675 58494991 499476517 545995857 490145810 362643657 952879285 934184987 320549367 782365308 127084078 221438663 855218300 93830863 769050155 891021614 405371929 625163979 174967030 473722160 350884085 329115385 193220242 711931836 898360959 1061053046 530416708 900981842 1070379622 295109341 26617867 726810252 201953053 695867994 860050162 418511373 176833520 1056927780 106452607 266042659 938364029 54506726 716001359 131166279 457588398 201419622 323415899 97078756 648368437 365864693 906824304 218845522 339898890 148999775 389010436 515133772 241646333 775623284 671221505 844442424 660087256 159467799 1002443086 655811494 775139887 869240742 28804357 423458460 565890769 581831485 738454070 170477576 295945695 372050222 136890866 606816479 108145425 680431900 911910600 223825522 861684883 676990850 353558460 635072087 57689267 274597634 270318417 379969865 47621849 37824442 565133915 354671509 134612944 41500633 793477678 388572450 473673135 1009697328 166940820 844173462 795412798 243305767 933168964 782066035 1036036453 246755626 453294023 992833535 361164193 650335744 832460176 387719464 655356509 719397253 339264034 902120202 760160456 279733340 604461192 722701661 693841196 271139254 973999605 589155070 971514851 218954944 766111043 817795283 359580530 24704131 336134688 261536966 869203904 48163079 1062524080 155046375 30452154 626660391 464478129 6327159 123197166 1030265251 480578732 935177918 35023415 1018477996 564325057 313608247 339748148 101069522 252168199 730022361 671783727 457433060 741581446 145711705 61812940 726429827 194505664 660634362 838674597 17258407 676218748 134048345 949545144 221908969 954576579 986430305 1014157092 368899752 680339597 765163770 1018801298 514975752 556588606 461790045 547556808 1066584063 87820497 686747468 749440637 743871871 517063148 948918165 1029986825 194337480 874908691 696703860 213806127 702103077 900653572 645731006 880299748 204445604 153483950 943517010 674627240 692318983 865794544 500099757 1028318647 369688470 661298146 1014445078 291902351 508823402 304144130 1055830505 696608920 496316788 56068582 136897518 164137409 919365359 794166911 1006242255 754339854 500211601 378080563 514136544 553825919 1001844700 883176848 198866248 697196953 270061855 1048099768 496774956 903698830 413028148 735800900 61276075 897427823 86956996 430653325 630259027 71523624 532241954 576976042 292811831 73506706 835364631 530291336 531160282 39855294 368452770 72740979 645342635 322992925 878644570 691129661 113436926 601023363 465263628 117042935 368942341 542838116 490798039 802832124 874684495 158498982 231579065 74050331 955813921 526942269 514743546 586583184 411761695 126002665 391630900 1009316399 58969001 243184099 704158269 1033727312 307464716 241376232 501358164 756502180 217906244 773023588 116255072 26753157 892142619 1037815780 96012353 867966648 956922303 1037881741 495990809 529390677 579347072 549316416 33912376 768351131 799429929 513549389 445244876 341227620 757454226 39147127 145561526 672324779 939831096 1040519166 561510108 860053876 383333253 449878062 111507353 842738299 1001215944 310784481 323497726 878086291 131112989 253267071 694436095 920395396 56553608 33512483 129785796 972008555 537862871 172518595 454351426 332587744 95972560 573705632 520105165 338505033 268575244 1054066 1009651677 344897531 214454517 374742340 373102293 763943611 685343957 515606497 362579764 499701460 688926832 876373644 368626787 981686034 606154134 163110324 442583869 815450874 130510211 666703119 275904315 454354267 1002228357 623232002 1055177083 357503543 979834483 329313714 352300448 792196919 115922302 292245323 536964995 467428852 269988345 993095414 917494291 983337469 221259740 625496820 55564959 939567098 275587788 340743575 24053482 342560482 701076323 1032399743 324245002 716766930 353641846 859141919 576309785 796716049 645198756 1061610703 762855456 833099955 781484939 220454564 555193315 608368100 838175360 600381583 289606813 1060779418 307179581 751760689 1042074573 114709202 862800063 57149683 547720465 277434270 223096830 527187551 857994250 571490576 950734163 689729804 672929026 918299994 151911225 494536160 662550915 357224380 492259538 1023211796 336360007 441451999 219576711 682463064 896099084 22452510 506670753 1061281046 251106143 614294545 608317256 626879063 675179997 202885149 253210196 221596214 794499801 93553209 260675588 770445411 870022892 753524290 763448285 415906182 240776352 839277691 991346221 30064601 443722269 518198761 120832789 477516425 284318479 520693957 103904540 791214947 554013582 34035819 962170048 531983670 951514720 933495811 610888726 489533386 818346264 752866897 267724518 420691184 640666687 746322550 965604875 930447111 442532876 359391930 197440741 640860548 484119163 406729256 685199635 32825107 874395294 1030421482 14911600 501241166 943583668 495061777 460945074 505362618 889370718 811529212 71865299 286868694 913224643 436080262 920553763 259731400 221298400 654400612 822013362 835930122 178992934 424720724 742788683 191651316 314539505 134818106 580658511 597640634 937803133 759837479 559450017 221650600 199280026 545809857 595121692 110284536 702833239 709775961 63271711 920618114 884383432 246273053 758330532 507834406 389332925 850153028 6251484 684039092 496392032 762656374 479224388 948182786 458774765 462116253 792070631 841989497 46571267 94023221 903237368 735311722 757861419 328425056 254142087 24843410 333639248 628715232 835993587 661637909 701246662 905345732 79193605 1065576140 105384573 592760114 211229539 133056702 429804323 283344920 504640430 265807419 236907475 587093031 750273643 364315695 1012299425 216067382 387684992 1063708604 478417444 112614289 250375448 395895078 760831568 934053463 161053850 578805176 56664628 56894830 286564509 86807166 394881648 246293634 653226817 494187937 1017771494 379587311 380560729 505730424 672030838 1041740254 204719714 1006929152 80122502 166438759 277596547 208080648 865522373 837403782 722339335 487843365 524641848 565542072 903393430 529138125 914733787 636866032 516535531 332657487 454348067 609773577 1010308834 730798226 1054058871 416850911 491118536 46906634 891308170 34607462 123736198 594342658 1043189070 500499618 496666120 74358988 125103217 665783918 773105000 74255526 99059055 395319144 480631256 901356798 539737873 270200700 554770163 370057348 640533698 180414973 4196866 314880843 750067086 907019953 82421601 684248129 871581977 468031165 915718480 901054455 350488531 433683017 214261898 238708916 994613390 800316351 955669908 904552904 29734708 845899256 1004165471 959376726 1020575947 276153254 377711896 723815314 83708786 349345577 908697791 709549451 415748574 509928559 25061863 882057921 667682480 990092048 315683808 245024038 108156200 363281552 553832566 736610103 648781103 243935124 735831400 421193042 818882884 248764673 29295431 80025828 528602782 1029600032 1053360924 490177533 1038952374 907344045 944401519 190971982 881002420 818610640 311795801 260834216 1011668766 810657969 515510230 299033505 6828595 192457272 948152377 728954255 66634631 122776572 995713444 491512156 124312017 863678958 270298514 29361903 94490639 52301922 230053597 479304113 515426641 331873046 89142544 944192910 1040457508 613037479 206362903 848141390 780931138 101953876 632737600 282484403 1016944004 13067470 173195348 691084628 404497334 156567965 897496677 584472574 141457470 1054878100 375271972 696793824 938947822 1061201456 613428735 77210962 50074399 692413639 269310656 221486114 852998313 1040387816 848308440 50124064 579040267 571734850 950185406 979304214 457895712 798517849 684419919 102238984 944631250 825379337 727205377 1017867304 411376371 58396045 534381112 241773771 680333646 782937746 762724151 464729265 460346066 780126397 300960081 806706096 619213103 278286480 263011249 818312102 875430286 238748486 981590595 368926554 513630256 786680436 966811958 755490398 1022491461 55157114 1035619463 241081618 223080212 304104421 462516452 402029222 785806996 1019128666 19578820 988115312 54284404 492571204 448484977 733708104 654256155 448441596 869463274 583873542 307406628 312256917 1049782968 775350527 243395994 16096991 762131048 335135680 584047157 161764197 480618250 868802474 270928841 164277265 708017462 92390132 790075621 646281080 366898244 74454092 351291752 377280292 1035635726 933138941 271411681 1010576457 142145958 512799829 333340950 471304936 751360919 83658087 148261371 92843251 717052587 715133427 422161356 210422809 1048160023 787451630 804736835 300764455 758503656 1047580895 826463103 671933353 643182601 883166692 555555092 881375712 844033249 834489844 724841495 291312287 688280538 639806934 120198702 702990939 1051929929 353082353 885500605 816667163 64991172 922038838 977185334 193049414 605813893 579183102 948227783 649044131 174831973 668997258 214084192 698362060 447184679 820039548 808698561 361112261 670983554 842855538 972268419 310209340 327294455 200947746 1020814825 39114019 728546582 85195971 192385247 908701297 762748655 319754008 170622786 1030077093 471849970 685354022 593628647 58685117 880405029 62975337 508510367 157049132 241843848 747745126 1033212980 687426722 200869291 483280201 783155481 866803594 109328470 968045620 525098868 690468953 19147311 293084689 255004843 318919633 591387413 504102865 955572433 686472576 1060108824 201940557 658298230 823486851 984574249 71791977 549160341 620346006 131943188 785435348 205999788 347887845 544833011 273935864 232065720 123276397 424754269 583780033 898938305 83903314 595423979 718931004 54294371 551732164 232584331 223692411 654618320 192227966 450595577 55790926 927756280 194174102 801153338 396710962 574457418 114664297 717307581 1033818582 678188949 459374602 373246697 1042359531 853841120 722391383 438358081 822967086 490673333 616411926 476401001 853677678 406459797 670290184 483287592 444896450 684549935 16931201 404009654 10651157 323786523 709777436 572994074 404918702 757643670 303084051 1069184159 562536822 656558702 769964027 689901590 942539850 613592856 690887455 778078342 503750865 874660888 918582212 1071155934 891964930 434854558 800499769 151102851 142158154 74820507 182680040 935200702 260251807 725278222 613077932 564305054 25323857 1029091579 567226387 528204707 912083288 568690418 555606767 48128700 196232020 700526233 390199217 901355309 833938187 410117460 1072700751 273171338 999778891 915693280 653920801 735030662 393196561 787397598 829986860 404051954 540340400 231520712 1071287617 277456649 199613800 177280892 478085339 227806227 84948397 616436826 925498945 902242206 745503226 900150366 791945500 185327622 730748932 272030663 434182894 764925708 1009051905 568936088 476288457 689497801 1014015904 1004014429 906259113 683265005 895372056 289510840 17490897 970830118 783656166 876676971 124294676 314787228 397475253 738522222 721977242 402222193 392941871 586135176 756665003 125871443 276373612 167835388 1059371126 418869324 704500161 779460687 42535231 540473514 1028162666 425788187 1046114660 638662602 517899712 414266496 28040847 518785759 16709972 198509815 193206792 323730988 798818906 506038411 351530402 774399126 401345034 1071025967 76013412 263036239 701166171 548588621 524428657 958171556 325126787 581042172 959336553 765325141 872595967 112835049 658411657 287574830 339124615 762579625 613959544 241831802 613223119 324725079 242293734 324658307 753695504 1032761119 679143577 914563096 68353941 594925048 206959814 550501586 424854990 156390977 609398308 126308185 791007102 697134214 132645164 332770105 153224448 873213165 454011742 839501146 163393370 145673018 1051125182 684435106 493240400 610844156 455441806 840570058 1043103076 362054178 246993294 993216697 542598864 387995852 1032222219 938520276 15521633 272486213 889823832 439205178 937200353 404456980 932502214 18802490 940314805 270528423 190905988 632891795 490508708 538517968 872424078 46360648 850057217 755400509 277064857 1046923632 75508822 946628121 42474689 917212554 347706070 209900121 545983256 509519918 375348085 925823721 822606293 297844051 585334902 995727230 645126855 153833670 517538069 823582172 760834744 675539041 966125506 126668236 389617661 425901903 234586006 275798207 1008804601 285001227 776494058 143872937 468990844 368875869 370279359 626712960 683743165 909326944 470984857 317495154 258447121 786957520 372330397 489393352 440390889 96049866 68850241 317110204 905229585 624394629 761619631 987242861 10375617 919546695 992454623 964387584 65596776 125675872 329744654 172011702 948042085 536053707 369663732 512881635 622404934 250588322 772040430 156131012 187493619 65415746 182954736 622975761 944915697 290447268 397454651 922736418 431528449 548060111 152054100 688222028 951132230 680049744 1065967975 738246796 386773006 608232680 954852466 75063065 631631803 728269037 310241541 477876504 449226258 52389067 124498921 688477119 879524917 155972969 355265046 650446014 489480702 861884703 656958875 807910770 901575176 1063076907 31055845 992108078 653548599 607078369 669193010 547290271 140103048 451059739 329632121 607041231 33964553 128376184 911929396 427036766 27595203 355459716 659714241 842120693 449032511 399355354 535234205 133750210 189446653 424178411 416645091 449090622 392687426 367777194 696769622 269694885 643684295 217634754 738620163 293727617 355587811 278362139 244657090 119098295 544945688 1022937756 341062647 533091103 1055606366 120650069 404961021 378928499 353147093 858956378 237997768 876187087 432629155 576232907 824103873 30251561 507462619 258761575 263968424 944534106 390858390 219764514 223191389 262167154 1061168607 258145745 463331926 902204701 549571214 584555965 401438078 123427571 86285710 1037631197 434548702 654915880 387548726 1058368922 324044255 370880530 894062292 767224390 367616728 512520086 1017871421 631717553 625690709 798415303 162344029 211855482 766962668 200022702 18929635 759990441 95301604 127705177 252968765 237488124 986308387 301760433 810043986 414243813 637175855 709956223 842284817 811092132 114733973 360198204 560413157 899122602 547344151 309113998 586959331 880639979 112812487 635438818 508916405 748302338 800226084 536152021 469065955 929191793 800810451 720218006 1031868363 424951692 665250425 415361099 531017340 409078038 717536757 1005668159 159406822 386132209 463838587 552615041 416336936 477342138 238269102 533433872 8220461 40952758 226711174 585053720 1055077664 740391778 1027300944 384711694 571613650 1005553039 858247066 116564764 227541503 832359847 621276206 975023992 785903438 285993347 1033249259 893501424 1051006119 373287439 637025874 754065239 773914382 700330132 41098444 32027336 500385936 921780133 934147403 664445698 1042012990 94879042 198576015 767954472 297550285 402834846 227394402 308107947 877169967 908670892 567942823 97942935 1010932953 88852770 85795321 486710339 396047284 788493583 98227340 892798835 305349786 579855845 818852346 961225910 387292688 855530035 213090663 594981770 528767631 807828124 666792190 500494556 604958882 407967260 766095749 143760431 143060294 203589531 716313603 95453164 832846265 492433180 173269140 80755557 150277999 771057458 1020780407 1049757963 634369923 398302622 184619170 617379103 632498544 101243456 717819818 291304621 3141740 1052341954 33160316 469918246 157942472 461682273 912702702 78702003 487418191 752749385 185505169 597381345 886950703 767311100 556530371 485216188 23284767 372884390 301481086 198051052 1011412624 75757066 731102171 695329899 392035677 998156622 800275650 431229710 252751097 993947825 394973733 278531979 1011971425 455507566 104319088 236422811 574468610 106989043 962277848 128148522 452807550 721437874 213825135 273056866 611249526 626928438 1042950346 128865504 849805337 226969625 400633097 425576639 661759147 1010870449 613690297 486687912 662013359 949777142 662771507 551606092 15873133 381940257 523327585 649582763 1016972089 784929198 341339674 305233214 231453278 49096308 631799688 594725730 598553249 161670686 63777365 116220593 795203762 1022628738 409588001 45242470 780456881 237504817 1060525367 496662601 135807283 781330096 993619298 128603004 704334423 462973465 246990895 562445789 411423970 666179827 795044888 338061275 311284828 706824914 913366689 518513370 884574607 53173483 349713553 430188639 610108186 330922358 1056512628 323393367 888549412 1040027289 451277996 458130277 135363393 28286442 780184859 380391731 339087907 112476058 861568686 236159949 66975871 894168773 482380696 671185865 842364232 269426340 350493493 1032376755 218627850 755208952 232814589 437288786 917241306 962360166 517057999 3540792 429979760 492630624 1012170293 170022519 154333084 168467873 479146222 430271208 286489847 940731428 521752588 828726374 419195900 483662524 418000966 27127164 15511090 893277558 728237469 297390880 1016221104 35868470 244803790 735456657 70679485 378879992 32249015 399866424 792623106 1008724579 291599609 585346854 613418538 906056476 881529393 6122811 594342179 316345577 763942111 848819358 602095052 990787141 437452423 368879863 998479680 755745453 381952198 114933491 968374665 358062817 755335995 383350032 612277476 392322587 444621200 1041292077 836931190 290444149 481857889 145991477 405249236 401165325 166041229 212858156 971207882 317254112 455612007 819150565 664793903 470247033 386426282 400077973 761712053 473158205 112299422 779273491 338929850 746140294 358441339 178701547 956965983 901193257 675597196 806983300 580453238 341226312 448207931 362643208 751948685 303222225 700022727 164865952 110582616 11360574 824669365 404114394 755650752 109860704 93333033 940445520 713926535 589109394 491578648 617185065 479091998 216905720 361338708 303340041 9015624 174185845 1021603452 739327278 476914735 77326960 547392525 1047061115 597432018 743790829 1056112952 492815526 986350080 229700147 734977236 305120933 545808271 669242515 182792582 248848553 979198120 570370212 21559155 913069080 581160402 499067215 40915503 525873276 838140154 786244616 1054986356 117221872 564220584 362747519 602147368 380960345 112984768 966504097 112015235 258664070 554023854 875793146 584098649 383537267 341028235 136939744 706999936 790472855 313875143 637181083 855555182 374467321 474145279 1064950162 11272219 184928852 164399819 673178274 821650919 537470115 147980040 1008267800 927297197 679088289 832559560 237102865 908153883 419566560 890572073 182788580 597131028 338364522 591822309 664233520 242634800 457512602 758316664 601575738 833522991 307003294 925305762 534974888 260338363 967686702 445034244 18439213 203472554 253251983 181527225 1044547152 522574270 976598741 429837155 259822667 391516337 577358763 65257071 91720989 920295587 931255903 501598806 273767045 18011344 475033663 936539516 414718245 478324474 576476064 1020893386 954875343 625510834 653563524 75201592 981525120 997334017 105580766 1017882886 527029895 866501090 291631904 1031850700 191068867 569931407 364118184 36577082 65821692 843934870 638153748 407199338 46278984 604157929 3414314 332822928 506617540 257261039 164676356 193212353 930675268 297944191 67326901 676463070 544443212 655349033 1045909122 258208058 203833945 657765319 426653390 242373132 729618454 299117830 516578077 11824255 439537524 976267169 541380892 234895018 780811784 880443769 227388378 770332047 496099533 917609396 90689263 451863932 892904330 71600215 971289435 935312076 17171619 243402936 1029999125 96809396 915080786 945273730 133436676 1072538833 921356140 836905814 66625854 760955787 1071627640 1065573669 1037759374 882665537 877976795 644980717 668673243 543021136 180727722 1028444024 797233966 598849324 784134590 432992699 337583475 32175804 857318880 407183656 652830828 641086944 342053444 912330538 735089118 1053535281 1059981052 411643728 61381163 756287548 130516971 988530474 977629692 459992317 944755130 168846774 1058436978 130409030 984258527 1045847488 304167601 741811854 752151870 812193475 1071298474 960656708 547910397 402920136 19776713 1001437006 11037626 365274273 936347156 845192538 288442106 185492266 444755022 263039149 334894840 814472112 190420095 493732607 906501847 172792311 780206330 787024172 882646861 780040028 528954496 956799472 888908789 614465091 502432852 467082305 831045483 904588485 463639713 875367629 114293309 562209438 315081119 508589817 790664147 915281503 147275488 59994411 472243061 228487142 200082308 892016158 866154547 686478826 12804578 834691502 753764189 54250298 660498682 818600779 761445139 418790767 755564869 6249196 967298283 390778004 718909293 693087580 139143698 670068803 796518830 13806409 619494134 647248569 274850366 531304662 964684815 547077347 511448207 1002601194 513529832 1046043516 565283201 704561266 329422846 645871062 46780393 388048084 235676448 197528321 199796908 756857751 642051212 321774046 327527411 864934410 436937606 96142194 387933163 153664965 106843608 685860665 576523827 674840500 541400183 718605766 705974382 605165857 971999219 893615937 351658691 251114483 665091357 300112765 91128831 276631335 949521846 542541841 257525662 689190138 886248107 543485843 637172593 166319410 108488637 866712267 866584574 881146847 611109044 63175674 246275757 575396079 180449060 1009811970 388048862 740599348 659711 763875187 122001512 522890278 655772761 656022948 136368574 904048507 487830873 392529579 232399038 125311089 810761531 523738160 564959512 396727948 834937002 823496021 721765913 337848642 357389066 372045146 997638259 434773024 961765097 372621885 641020382 456091781 383100907 892672673 650560944 416650941 714962505 127494402 836857499 512754288 61193258 957929921 380797767 802785241 32094728 185706471 858698185 361864640 450356479 355840316 446383746 339246923 993864839 1017042167 384522437 597600507 484427228 905769582 439541407 793186673 390469861 703450471 964886030 891509959 842456096 652732715 863945406 94354457 1024405229 625963869 269043058 135511662 152717948 46402700 250401851 157706815 279795136 31983945 187677934 822975969 567528174 223800603 356789513 727278867 322520720 264560518 951265806 33678498 887854995 754809770 285976637 604299568 1034353055 477928987 205261191 913206194 53601311 278558596 881198662 450647529 631000461 1036669409 956272476 731518746 1059391315 741738840 82348909 436939821 713657999 230997699 537326027 487093163 411688070 233531409 427313650 287444471 598151391 272550815 147598819 480280576 901893878 759635397 517682225 893753508 1063298473 817459060 192686689 365619414 432562136 538105007 247885399 1038266195 636765235 578093263 244447558 569949806 654062516 257230344 631318745 410077172 223685875 42695608 871589251 606578327 56167432 935272668 440243548 172904801 771980156 464321869 574918975 338015732 191073608 271676103 588986893 121566647 878031473 255834832 919799400 300544374 347453289 521831398 972834136 1053075499 1071220838 35314014 142235743 596799888 571340397 25978376 387741699 256009841 1014236716 24569197 399081969 754030384 924884389 632265355 458138223 1071175764 787107471 121206376 606713186 505985047 734273680 341977739 336990623 50908448 278231991 554621105 452039775 424438073 108783494 416018906 685482589 297182096 1052141550 5331535 324094123 292015395 365969886 435020070 1023440265 738679286 483338494 965630944 846388794 745300652 816028222 950980731 283328162 773309168 342344406 119049068 644612293 718757856 441332532 614741783 876531450 1038573994 379564412 965158242 767686585 327375518 177839241 218645176 586795773 750556944 866999951 899620130 1050963631 823557141 800946617 974202743 946485200 390588097 515886251 537732614 563982160 180611895 992131777 214074623 845624239 380085850 357443480 1019962704 89044266 839399643 386179967 1071444748 936299795 352968565 724628054 1072541458 712553208 225405500 917191310 847382123 710599572 217560523 628340222 664452216 952253257 625706669 120149162 428199209 33828789 686449539 295929336 1010762235 266637546 724777631 1032786745 930120186 46841809 200091973 852285728 415588144 322609011 336152513 434495211 914323008 431919483 450365171 487915062 25432248 149661585 199571474 855807181 343580519 990855832 348820536 298234396 840946792 678479661 854385416 353094812 209399535 653934937 886395439 172039878 609503088 126592695 907021504 260604741 926858397 544100779 112931322 960610404 603703372 783240139 583779327 305345709 446478921 89201315 889831712 922155918 768960922 981499278 703422106 798060228 345524742 23616374 583271058 592281417 353315522 929762257 42417261 461659226 306174372 342206411 961395675 159705736 227517046 69281659 629079245 382888922 279328716 32298245 575839102 759985619 887572597 1027891354 595305300 804367300 322060542 781497127 462661608 1067578330 1056826973 612363120 877400212 274675407 336845676 580369524 109752914 397216399 30153621 422792839 191937511 647192343 818482580 301795641 594503184 431895017 273934233 572073724 909971841 169383756 726315831 271563182 797235471 1046685009 1043678083 1034159166 688712949 679909085 695757333 1037339132 446347697 465292170 917165962 425612163 309428066 504501177 818384417 451328324 239454197 399876761 270063751 453444655 817482034 659261837 451426631 911796326 739373797 840400004 550579810 834557716 168030050 372960446 566245304 922523292 367028923 743185863 479061612 654394610 183595325 81219486 610153637 868964525 843504413 491932576 196054793 942887979 235678137 137703098 64978895 638388152 72036064 375181368 57931165 195984524 60699552 526182455 818597928 754051199 777439393 667087195 436556686 457264290 441332123 961299587 272909467 574788413 32004778 258174438 957260640 979332977 522320647 560605745 920364843 182300993 959763689 201346016 228486230 477715853 1072127928 369604889 825468089 337836417 164324390 301915410 238782749 947360862 230640428 149724974 324597966 230598094 39189622 646397754 645075170 544843551 182933840 351466526 154704478 833989130 486541857 1036872008 874750724 894087600 566495851 140298443 481498814 503346831 573872781 201527264 976878729 177258786 240076672 1760548 81538113 289389284 151881016 834018092 771327626 685047282 451846061 782365917 766095946 827244343 770882228 1038694488 346392099 123620285 222351047 926592356 922820783 63537179 810741877 375837115 871256569 809988958 207983152 962433950 956527660 5184017 1008012958 273408011 980039641 920863054 973718257 1084006 936008735 780873705 920076642 604420776 882596576 517629861 637805769 550194094 545421699 853809616 864863288 489733469 410619229 579904182 107974169 400785744 657079755 345478562 991230101 83593041 204782362 75649698 345390110 811949685 662733736 177941116 192755378 189775885 1052558231 757869297 828937796 728852137 812243933 700743551 651082672 580897295 37757034 811316201 965899163 283681330 36326098 1072056344 128135714 1028283064 238366146 842292400 835227097 723834979 387890142 306679439 914103333 11644263 767140867 1066178711 525016154 474202478 289203724 156669394 398371746 17232934 412145778 698158349 1072744983 101198868 315499075 479563052 213425333 583744336 276661655 724499779 144164333 360862766 537860977 339701826 441303938 708112487 175194076 804326626 174568714 139127325 496883229 998407025 1032256746 978001372 68730596 160731641 300345428 1034799967 864984633 668871798 803357964 951842261 883932850 479151866 505868871 1024811285 488994763 231693792 463447831 550204375 656781585 153242362 368873779 690775450 220378143 780875683 268740601 314618266 372969437 142260691 925683232 126719840 954419544 385942670 318853052 875681005 94507239 361931857 433077598 55112620 565748103 236917813 165892797 563112015 946788768 933469651 1061907859 104491904 490257634 600100699 908893299 220311752 75383338 727932013 586721389 955918901 876386095 232283758 876348913 113854210 385033894 966582596 852734480 45330439 346264664 130348205 327281479 944628715 937754437 279265539 263069334 705097827 924778598 365005226 704407853 743884315 981802644 178708541 580967983 658972122 543947707 505854858 681724150 378033311 659164308 555404398 670819254 69939281 171787767 411454226 868260463 889822660 428395460 871556858 75950542 666428665 598478986 889952020 786852220 492218706 675866047 421147248 940458533 567863060 115105413 75881338 949239420 689920828 421814580 339583628 876321729 329847530 431540164 100148207 114813592 367193607 64084268 303991967 643490977 693007037 64064286 862935239 91415824 513082965 238144238 1034074806 494691078 937282142 588422749 614107004 839608639 38220709 369630650 120918288 409358422 604339467 607589243 134492285 418519731 817287658 238057291 176646974 555054444 746103018 639966427 435188930 528480724 1001897160 857842555 485065337 235133178 615078038 508281440 382449488 230569161 923163631 906822549 265993423 1017734812 540760602 723552025 1022137052 879577446 990159577 857345122 689185597 732606082 736793137 263420324 247692605 976205670 221005788 736610780 916626520 700951698 718594358 189021922 517417074 402929784 520889591 982201451 648754343 924353686 480621460 144373500 723447398 368569847 179119694 941513512 715833542 270328973 237345460 586301728 574073241 1036609362 830619111 51219167 984891053 977586061 812337698 833110446 216689202 325421663 739404477 838998374 36006866 738859361 586123037 750429256 346041122 425177419 622269814 905399152 418706522 963637449 905161231 853933932 944259673 598056748 634755852 176853900 703423199 537033380 285713815 1057717195 930005892 913208455 198333857 463833607 940510981 301940548 38900648 124749841 766284669 432508659 632163442 466144048 312919732 654947362 439991149 521644035 557991012 255939895 329272941 404469368 607477511 742075208 725999476 385156327 752879887 644489012 227284135 387290560 563911552 561099025 796342115 880052113 77185938 667987781 981309613 143274703 1051958666 914556200 1041181687 424170688 795783179 345468827 60946291 228721201 822613062 968717856 429503496 568489914 72323977 898739295 36334453 90585053 20372985 554067870 155425850 44030736 388397091 496652560 681176896 161933056 1016652315 488461157 77921574 995990885 82709686 143366554 179583840 260065042 335154820 748986643 293767528 172040290 1071341575 780454121 831198121 352390243 677269598 833922060 1022602584 777032595 855883960 125093437 620555068 501599382 894684121 526302883 186224749 545390528 145837140 140570360 343481418 423877574 1021501106 725587247 248206680 402071446 981839051 949591557 447304894 294499533 573886929 818130106 909322393 272125227 209951689 123635932 270422037 233691098 565894343 438458064 921752378 455439552 580838960 344425593 199962377 795187560 488100510 394970031 802122302 584721735 1036380421 67225223 869996665 1044179236 407509118 658132972 397765391 526324895 614686018 797967570 338309473 266978549 867572052 833495296 119292008 929779838 11439776 526734839 522745108 634549361 663002869 779063065 293817687 815667223 62085986 1006900101 195320703 475830300 923490638 1052337079 955551639 164221792 160890859 343823336 78828909 487954368 796692152 194291397 1007386994 620310591 354199849 440645492 518841307 242311246 70735789 11681375 1055231742 5000090 1047673731 135920972 573784130 378370563 487835388 803463896 91738106 205655362 640572703 826955175 333026770 119737270 352729121 752061452 759735948 204717861 737679717 730284494 798418765 847323801 237583533 219979678 494461483 1067992344 368372631 1030543040 133010197 594260889 308314374 388324963 420065666 77439645 764386189 430485506 825932483 126381669 669490396 648745099 52129206 566629257 476379883 339468720 342160634 849903657 740541846 884372507 757703420 547879491 607065935 208953942 134883094 51126507 260502139 1048165278 559046036 805621946 241269445 785550293 679027109 395038892 554648830 808272348 104260942 481090222 705570896 225923878 535324663 1011002943 808064284 536692476 54062953 533577274 873397497 432898959 189875857 987436563 551489205 1058246196 652061639 531504426 123522547 217980824 534317094 311062460 895345561 594659188 401284293 1010016463 520720533 126023658 154694825 754395530 1067013382 76505497 532527740 136053505 957063419 714374124 424229405 167292526 721295253 60521134 958156550 28514827 699868354 287951705 147595719 614258172 693557553 80111074 924599000 903370311 7907009 1069283974 243064907 667784410 951959056 804030508 43904597 473959018 408203912 606809797 713015221 414818592 562813553 366419554 723686042 765410541 309849171 537357306 551903614 164440005 424011410 885241292 1068580426 71485789 420246832 673005312 569491162 897164785 565724522 746684661 468052768 849661717 114325085 1046991900 578335647 300418091 645900916 16265481 76175952 591206656 1037134767 52115674 1004327741 858051322 1060136457 670730326 514405063 56131918 283612830 375800966 215327379 417550296 119392061 236427251 996573208 181557006 1028960261 233098648 215375975 878658129 983358722 896659419 911294513 199729213 289865224 774695291 35239945 840958291 680791997 522647612 903357452 935778136 301454094 131206226 772727748 1061858901 252210539 488827415 380139961 799545505 278321145 561475863 514334281 783147614 1036559003 974167823 269622543 821111893 60523193 810955925 1021517806 924745971 722660598 72079865 659278586 1034300452 633085042 563126957 857070238 85126511 743020562 424557755 344319934 959803692 233582294 632194794 958659997 735095340 488323620 643377971 884898628 108246762 12936680 1005100474 287126588 284740044 726852135 172785784 669745383 427770925 179021149 187704222 15253897 1043359924 245002005 175404179 778382296 602369801 402471069 47217541 274640770 542904418 703146130 321205803 672111707 591243667 708270764 431848170 30703851 722221346 26375563 605326609 888327622 752528778 282300482 247206280 574683715 323951291 781190777 967657109 132470254 343147455 322316146 416817812 678536993 725161860 508001418 558948970 393312937 869478593 1024495472 1027071118 831235831 845242867 709821064 496931956 469104659 100394067 784589148 855115918 561000493 693703953 778271362 242846994 719917780 920740249 863787639 852281096 10340911 628137070 45682327 87166486 217022108 600080651 289962978 751827226 391006820 115715492 413411161 440621766 230238233 856545804 904210720 646170215 797974797 292566018 698332403 374292324 212640967 59837705 571900976 1050704217 687229727 278595079 904290613 981617640 48306083 690212611 734850646 562855059 486710503 936073064 389305251 827061924 1032913526 866761881 570845113 515714543 483613831 475710432 877926503 220412511 862747561 676665166 767022240 304627722 933083656 271404055 768730651 590932010 469758211 330865851 775339708 365642111 468386878 897577950 132193772 605918026 867826693 282625641 978549909 1043598087 564904785 853125559 1041562944 724648495 195078738 380253252 714557431 573624562 543897369 241588918 406700895 670893916 93211813 1073333444 488125638 654061207 574903676 570985668 102683572 1035302054 1031573927 226631364 229314328 332905095 525929888 94767633 868465203 342264415 859513908 34002263 899683843 713056920 917142347 49023952 481425400 265260639 175154326 1034365810 721054598 679422384 55729212 787170100 723679599 418809384 412640868 1004841322 740334443 60041835 171542680 520772625 688529089 1073414066 390353475 137773366 711341072 841499656 881561791 620692394 1071228842 1025148749 257833807 179525173 776267257 532658398 938245991 630053323 859107984 375810774 99761685 85953654 62137702 322943237 1072797897 23621463 49587953 575157624 174605582 795859821 288190353 484788175 601607482 1030779292 816614129 725380901 374198873 985071098 378037189 230022857 651105940 42104844 599787850 682163766 62552558 365736214 337365107 643407315 477628077 602069059 354147126 45479229 336776688 700603132 458572530 930514760 169121200 403627317 931886973 962362376 134631070 572051548 982925736 562139535 725673603 333998724 605241751 602940920 809390745 56687736 40877320 839546600 790663369 679179034 756941715 448319728 786474692 786321249 161086279 778394033 152230120 480250845 628071562 570059762 280305985 13014212 924069713 1010242579 145117069 666083122 818654964 386192052 506217210 67681217 627649609 1048098836 547463091 481458008 987904524 539158714 36255602 235556036 81923286 684122914 757236085 1004636142 979821110 831167556 64539256 562538748 1059798861 958464215 3387787 35951261 702047228 445713545 1067505459 584008460 828326097 581841562 628968366 253497880 1042884254 1027540060 590501066 300465120 888515327 985559149 797383151 463396346 91079372 970482845 96023651 591903499 471846416 73001721 1034797427 748464020 42846890 371569356 963211179 907521447 782489058 554471106 528929827 298551858 977085855 202265747 501088202 674490901 663522822 373566617 726163942 76341447 962005778 286752780 114927794 409570668 971651512 109227401 838747718 930287463 272465571 24355986 110413743 422009101 302723818 497667965 965963339 169804555 433588079 902163475 218543960 388397031 701056974 82103719 809878025 312221650 1018407047 789715676 358661085 729464156 306262938 130030669 772337625 980941361 731278108 203139824 430902756 987645650 672409233 715267187 808078720 951843636 32236819 512670597 224231721 85130640 899709377 745126953 507079309 1019893572 432357471 601704564 163911874 343131688 836140312 938600980 476926943 190906976 290310969 976412215 600364905 769177237 445334252 906441961 348587235 770654467 623042958 706886337 45767382 105916268 377940017 950348894 210988549 258375716 597022411 461089515 19775649 322552389 14775484 350383738 970566160 182661777 385550480 360129613 447046954 431055261 833951731 169952868 115674204 362823857 241453 769043281 390425632 871241667 757485227 243232417 994215440 140993117 980784290 7088572 549859569 858623106 939323681 758851998 538434370 52551920 1031701353 453142932 460854944 148575047 750219002 195690723 193878 508556489 738990718 442185016 196155765 15067859 485450928 193302793 778784953 436684891 641512120 175295645 70059263 550879433 63115378 777874828 546528365 287857665 416449128 718424786 1070466597 419607014 793670323 961203433 415943951 677884381 174814084 912042501 743511724 181524872 1045170715 432251828 423903203 659732262 416177635 913232818 947692043 573346351 168596430 1015853495 146211110 326984923 323407455 232517495 1020462176 992702626 931372889 691979552 710883115 131341825 667113921 113303213 377133779 971552160 717537072 739607347 73064909 410901211 973630286 539748193 36973754 761949129 937507825 641290222 193298648 221705761 820871937 227316947 339830222 172136306 1023705777 884792873 515823252 720850983 466839954 161468553 250575936 928608578 795522050 277803279 617344872 376990785 134377722 867953492 935262391 923547330 577268756 433831859 749657656 517799190 674938786 460290148 1035804246 334176916 1037022827 1048944045 343921808 611783418 179237342 395744787 1006678063 1018244257 278162096 440138431 188877784 979316282 379836114 73098061 156524450 1003080191 492487672 710117084 532199884 154801499 187997267 862606186 310684569 1073674185 149414335 806780114 448936198 783135814 8488560 640408707 175364536 970474032 382657295 258302042 752444145 464033792 760942080 568756196 398543886 582113163 857144733 831705608 125051742 70565135 865362625 864012378 706066148 707039947 775165254 136092097 974476742 220345364 529254098 522282168 797102587 646671319 666502797 766991427 533205887 970073668 687465234 979569095 380028805 1053162679 714891187 1026101343 522236070 1018851820 627179598 431096059 610625275 948571634 218088600 613077950 1001327848 476301959 554068221 625107851 411003207 539529926 730945007 274923289 155126930 94715604 705404586 1034885822 243333649 565836134 179626836 168125414 409053019 879244785 809481581 825499584 648036894 690477788 505174633 372498927 1046707359 384305959 290969360 397500874 1000860762 311791386 267920996 670300885 196593956 147133147 467878725 1011898349 458460339 258191815 485666152 1065079826 774426882 1059051248 995241200 726006860 601375134 50639015 1024201669 786208366 262368215 847402146 217485986 441567226 656447443 147170762 933918959 1052214829 418807451 426765619 345114688 380607031 58007805 289101833 311948232 233373083 695662864 107568414 694020372 64473843 908986341 1072224923 253836947 696602573 27224890 603891440 516040173 542850586 858480547 70265908 162206963 395548244 474019343 1058551786 122901186 327929150 1003362968 856673797 287019136 577503129 692731936 314439885 936701560 910783723 589661740 919957323 6888898 611738157 241984354 568147474 267976049 840353624 113983842 317900040 407571755 382196534 474989945 701120655 754840820 869173712 89412390 698717208 36768923 359785408 374185236 1036059382 215214969 503606755 730683982 533715875 24111664 120764720 431626662 320021588 632657638 387112198 801100604 1023524092 984303160 769367661 303379049 810232853 479706481 332743746 194529574 73106890 1032503720 975005966 275364556 164574849 907418541 1057404620 557185021 453308473 106173208 497296558 983347030 187446053 149863053 321748727 491714069 533001606 638452771 342081202 682016482 26655367 1058891 209446258 634424444 627860462 991687126 666880838 81162651 998518879 25980597 680712768 11719169 316651686 30812423 813743262 626415076 969001423 73707168 523449267 400452873 80590106 62418290 1043381958 782749992 586543875 1060849565 735110215 474452435 401259798 852986683 720574638 596450976 1023403090 462984573 214516452 994570944 211215216 679931577 428864244 504648793 63421320 918860011 82147585 1032104428 786189797 691792554 874854598 742970234 766893720 301437422 766657139 621291360 159175481 349732238 747411972 168851415 937405146 1016706271 603312532 456369188 870203436 132595505 550648208 750519551 146565759 373888610 943789956 647063375 87565221 677099978 928802465 1040098255 826207223 938541783 56266306 883200319 911705978 725646011 375574897 65840497 749425356 328958697 903465561 930494754 150547916 669028191 1011042138 1033317634 1008178644 950376886 978835084 733996064 858497945 290286230 349552745 178966502 1068752223 506589378 169939072 10846603 368889790 855444092 671074565 138796243 964150238 537191610 764188579 718365726 22749728 777516121 1000538463 379912006 952713342 371449641 100244056 397927329 392130145 307113080 12494593 805049841 282953241 358340395 238871046 670938037 1041561362 188625996 620409063 24902602 648033502 240008393 668728026 341011309 79616674 907851420 71640236 533758955 761521023 363492000 39908905 736880845 180619607 703401430 624986432 1024124618 1002634190 513603178 390105322 13908276 200869090 488405364 52150844 868476370 876271648 416469954 29832737 604088017 936905969 767553193 1037800311 784506569 6813719 109398537 95523151 1047601667 5546073 1069229236 287803579 988661419 539638121 481916537 47729883 1040481849 191080686 458877868 916117800 626578171 732507783 552522862 263791916 326604305 183334151 581830296 142892225 979685336 708253490 194363107 751968397 478905 1019838639 136283011 894375974 243876690 290534892 323953787 1010421076 745115251 468445122 491927184 163300499 709952359 631406492 1056747185 718020664 55121479 849431210 318838910 963986312 881918510 132153838 214926395 290891503 315589238 909884008 322314701 404852868 2544473 419366167 126802426 418696380 823925546 629448770 518244680 798041005 647760518 163799404 442070247 939985215 692531363 1389328 940163089 210085100 892890660 146645177 723359597 940779653 11820489 888923822 870790662 647092282 636980295 374012309 611864977 241165181 241196495 538756200 323529739 364762835 671532294 358749521 199256301 349340490 737802225 461373355 462776050 230031718 755075248 614340264 50223337 512535276 629499712 508697477 525077086 257425719 460948823 30173 81096440 210460633 831023996 1011545192 84464875 944726957 73031778 536516591 937646541 22454700 878461480 158899490 181012361 154401740 386751819 585919733 350302287 216176355 1064446797 954301026 80699845 1008794016 800384564 262289231 411344708 770766222 662376072 341604248 559289513 520049079 217655995 950537135 302171500 279593703 891863912 254272345 963163864 82513861 413865498 150524121 20656898 403903808 210684114 319882300 430150291 580475304 596501262 22748730 1040900264 281719231 178495077 862187076 171028440 858002002 718939842 303118175 391251193 582953322 578881760 497230308 12238107 647946169 541424480 1072974803 366538503 362063385 647058411 562239837 429152615 388461450 292884480 1072710088 215962774 783657560 186943735 280180745 248924873 648850466 613361349 677039242 808260949 763758053 964383782 1034082857 832067880 959633562 548629073 436460651 231270167 539193210 384629520 243410554 803064962 134234724 603005987 1009936563 352710763 1066389671 151952973 888395488 928462086 160821038 786406565 978763239 802009465 310425349 422466774 855986822 1034644211 150150592 785786564 899131575 456900179 477400962 276602665 758964775 951402971 1033424298 505057372 219135130 944183967 538313858 480848628 376995697 52893048 777128162 945689435 287736711 57672051 744159384 976865944 411127961 431556629 993599907 698614174 92096767 40765662 911785902 283669233 753870180 964126629 443903895 146035685 310869263 189974075 204885141 930363572 452341422 950928580 651978060 714165235 1026573991 855721743 598708615 611235066 659640751 242984191 562765776 683610851 380922705 776496555 944073568 951630475 207463173 42184408 85526274 452749450 77102913 106052029 846901371 528979030 836571297 693217674 628973211 114024517 967679305 986369614 182212535 489202945 714084248 956228895 658662268 586143812 411029765 547811482 91070727 360778246 580693271 338745335 572816253 46782173 251802213 876743488 87389523 211233890 1012053284 847538426 127376534 279462107 1067895295 752426115 649223685 795514727 871134967 927658500 1020454256 505178695 340433541 28558767 145878151 991414458 763235503 990592364 1036279570 126833995 13456706 749131400 349455151 346613809 219313550 118443375 9432771 286501650 642792938 126208390 588766965 48683086 621958014 514126083 1004673301 939212442 456464100 1025582215 796743570 946495974 642859388 691563793 427480 455605938 812838057 999523672 13585624 219515926 943719983 642457549 556218062 55956852 914751511 775670040 885317244 919957521 22517331 487527535 463081373 342533878 617353808 199798629 637164740 582746295 334054326 380007126 547425851 856129159 682405147 355382792 670465183 737423177 737602581 196365307 567830881 700668040 828750147 446746311 924153887 966973350 455466092 779150005 652605338 706117916 826053159 230029458 83141599 538780512 337068308 264925151 612223986 338572433 541366671 672912052 879633935 520371132 904148059 510290549 782952700 662568659 117959781 979660660 561643347 812292387 566085378 492705546 488707640 491417909 714473470 1038476572 221944032 34384837 111652457 286534898 439363521 882385529 37455111 185346998 487037045 645644301 124179333 864150206 618432509 1019367531 123300309 404155248 645451335 286286993 466017422 772041433 816246945 733367657 408473122 971806561 1041487309 669510773 1035725039 115291887 587378553 187272654 343856590 42398310 184117101 644648021 524960282 74643463 892458017 315450258 930138926 974466765 612702321 988763166 170449922 391889346 466823090 1002012614 680967069 651639037 87394528 180804678 433912922 605793661 1026899484 693988589 139312765 730118376 567916151 589085021 813466288 723412633 928139368 297581135 1042231622 1018620503 313590336 731046194 751712775 386078007 779395502 283705494 541812227 954686207 146368518 238211619 165776651 625988266 724332376 1022218445 314681066 979523425 200165734 961008265 324020746 536375174 900655775 657617498 592106597 911033182 746594879 325036680 1057668805 934409024 342480129 130016135 526249124 946478736 374702358 1054922481 679599820 870346013 236003977 857849422 590832980 720369322 921518677 272147079 821640115 332836170 618831333 401821128 399170693 1025952361 930257111 629718456 914944996 6251995 387561801 83923784 1024164771 298053035 637654294 346685497 485008131 344846849 816958153 680756708 518700425 161229417 19605121 708410972 326391353 614408906 875063026 557101694 956612842 667122004 845618478 208885124 174675208 301462594 53521812 196046121 857586102 500452329 1001883068 398146121 608087930 675011778 304305339 490041438 653421299 997333541 740296175 783003299 698184329 151870769 330832963 484237678 48999050 409394592 62795955 70064375 932702911 107018890 744891005 246495109 786577623 982876643 364359882 209206851 407798400 973860906 61796680 938550463 935255503 379177771 584653117 344773145 1063876964 270446179 591165501 434916028 738983360 132873583 1041228267 396882237 20829603 839232589 334048305 348498904 234613693 856349389 905092765 338416033 75136165 690407161 890217033 631352898 128333332 674215077 140959088 770862200 421460915 1058265675 837627647 902878608 334094958 194299696 271827788 243260402 1020969237 659577330 331949155 57329375 464798966 938185631 768222689 705735734 105946774 349315184 316640452 694980055 371854702 962699036 243119702 440511440 400357965 100989784 142539453 245525806 751180012 557066817 993494678 81571904 525854201 473879081 309067241 684188816 466731739 760523601 385781466 159933151 919590006 414311261 113190992 185578274 490866958 1072265533 776544688 478069957 837773777 1044782260 358663471 78201041 1021076440 189368124 764330621 1022948574 193689962 901082726 997625526 821621183 598849635 538573668 498894622 831160435 958515666 221532747 604808766 105766079 833282578 835422260 273240254 311778462 455848376 220415153 700454215 822162833 371313851 970641146 893151884 450553394 645173485 277172212 17961563 225060092 682140289 256054604 559840487 1048296949 764718080 494476079 880203572 532149496 417303701 23937085 359206639 715676108 954816720 877136372 697595161 434454060 248765781 80694733 336171585 320685863 260463105 153586353 508197872 571009787 936793238 823389815 231078613 583166749 996803985 751111756 709994351 563467500 618884688 889313332 233069998 140118744 197278462 281070622 964233167 80662951 1004437592 631121622 389393126 366300448 139639528 506282455 584842553 155456763 487627890 314995107 1044781501 631536659 787584661 419455519 1048482809 547269986 111311270 206918867 114260082 965313990 584060275 166262728 889968099 548270000 798257731 832647867 991466357 70300213 234195536 817008538 705892156 353768160 480061004 271873911 70057954 99855561 790567436 858308330 741445216 711638124 652605809 550191502 546044646 419548527 77825550 120015749 726875721 652927042 499017527 1042519593 606465562 422477138 782109860 1029238174 438975289 380130387 354420240 855757539 348364078 821389795 948537176 628578896 658949491 914863539 446720888 567913640 790558161 813230115 896776612 399089873 15217588 705718905 817599595 917008987 417458453 199759224 127205087 350612185 838287467 128040225 360345882 493443089 548073944 255003777 898480734 915854031 895733201 596956388 698569249 596596378 412358825 774216100 19469948 279299679 555783018 676611909 127493985 34456153 827764771 534166297 70273838 1051800937 59583807 771307635 593841736 336843229 116452529 812808574 807667317 757973775 897054111 692336812 29828210 446993513 347423431 20730129 194359114 1062946956 222081099 944223398 354773914 357529543 1039440552 425880480 754436884 425785207 856586520 925654689 1008902291 632565443 897417134 491626899 97225090 1043514400 648509288 93543567 1046027973 815813815 283006752 58104971 797865424 482796617 574985687 220879192 903310321 321261522 498943340 845344955 301363546 1036395146 870471764 1020737459 204794196 125970303 752114140 594494799 113036637 229647666 527889173 113415259 295579960 1039828999 316866752 324806435 91965841 654816082 768352969 993817990 518660594 524384063 1053074570 913174141 508851795 999168347 401481645 978528553 304580123 286121082 898509313 885627609 47022672 268288230 860216322 507591168 792797823 286499684 904555583 769034164 222917027 1068362114 699780622 525579208 738875865 49492785 664669854 164873122 970084747 734533671 456686456 701375296 386156276 514739666 253169631 590758372 966348911 44560267 554099653 193943721 855332740 227747689 941939869 970063474 444513448 312906365 917515402 421590398 790578875 843526912 143255424 578208984 364960819 945717366 806613258 488833136 984511824 732367692 169707439 479840959 1067041944 322388488 785454318 1022195615 216857323 740559491 480116486 180889513 783428321 935309458 1061627257 812356312 399374469 400479781 750066106 654064530 486190892 485480773 301512814 622666803 591663502 530515673 91745498 289847299 1045571834 966581421 301635444 284602346 378341348 186374317 1028192879 277267502 780708865 588221425 973771883 563332354 286490883 213066429 938424712 108865543 719749299 18597331 679101085 484614232 479881157 532287344 1026925174 507540722 276174232 294726675 181836323 124433524 844034912 809675033 833557756 211164412 483803635 682196655 206955311 324699916 451267408 972425051 868042099 30759235 83358365 878940900 955249943 973282981 422539896 281606491 520771310 930424586 519381367 643256332 1027463170 578780945 844193788 275707893 556276794 396065534 585613967 1021584302 56689418 1050458537 304803898 406680362 344175675 217704744 547655102 953717148 1044201312 303793864 369389592 605924705 611141839 853386450 452905449 965792460 650512013 990809499 315203172 946720094 412064139 339899237 166926618 213034165 210898326 781519858 38453152 695299638 640180037 598854075 939290629 88198953 932385612 375194534 610979028 768292832 708771681 1068425086 575998750 395684266 825076156 57019895 132751043 6187692 878184577 403099903 744883624 846769907 308772217 258685256 607933308 700946868 761509496 976945751 289178075 678901025 292217864 538243084 328311229 345616228 293175449 1019966031 101237863 183711254 987528493 1036634122 686513485 695290156 858861924 648322813 240775799 660031652 301723937 116713028 1006851400 696233304 51680609 712386049 814216990 258189773 907194422 850879883 282413473 860925791 719867671 307616667 723655589 321947971 883246078 615677204 874798491 307569204 908442416 717541509 648034124 644468404 567069664 290963325 340042888 934224015 759859181 361707453 1012990446 768474913 621263862 480568312 796151609 261106892 166006254 357450724 692537965 693944942 866687740 967064973 424348560 846280767 149516306 309592011 661783843 685092339 138096396 227806523 538009156 362405419 523268298 287275140 477784366 898668364 928698881 61063493 970699228 409521046 445208181 652460718 567063270 856950062 1042332676 723530060 443538630 650106864 876570545 291756244 944423244 365479756 764371894 977968372 281877544 708112267 381085415 684693070 725547740 632288488 912459189 272820138 976558097 809481524 292496901 428539165 695839960 36165597 35192442 742145647 246613174 246775914 476303313 1060184780 1021430276 178899796 693124199 71255312 286773479 541718028 711570277 608896961 997201873 791034097 617661487 400100964 783886571 1025313806 725118861 117240901 1007307995 1050044003 510167765 1037417603 661493785 956305013 264246834 480642064 245585859 90092574 437452980 448620880 903866360 559816195 532546871 253451092 142769016 364000401 862274576 959271554 911643168 180238732 903895499 902361688 28442554 1037902800 362058917 1062868086 461880797 128678482 41429881 670532643 831631187 769076744 44799022 150343435 489107860 305247454 1054899693 603641042 606823445 280737975 635324799 513959113 535917145 767844643 1029295702 372788412 808594099 793342294 545811124 144958146 997585764 300733671 1018529772 885142798 366255235 512200316 236150124 551966522 506263462 32664815 454322301 286566759 970736565 224036491 244597568 380858559 778647744 963779766 124781507 213701056 562671833 779630829 484038309 852465781 715451057 1048230000 462414511 579701492 459782805 561300010 348250191 852382387 516800650 909724632 629637215 910835569 523954317 121948713 344306798 811723214 225007627 997833732 221393595 338960606 620934559 243657895 142397294 806891921 626689897 507752312 751518600 421293833 334937564 426125840 1021754126 33294296 630164614 220881665 872285957 168268884 9998618 435415223 943994425 997755854 44009949 441447276 859967903 716214033 281310968 12312693 164530907 12791769 260986460 1039220949 962426886 206089443 1011600318 212955995 102216641 82089043 505193666 855550703 204239659 229511303 694676868 929237750 796807326 764804394 400883996 268942022 930113339 737661682 16140310 841820773 920439289 419379150 61001305 163339352 937272788 753592591 964714369 792548666 701860893 677281752 48723707 199005784 603543956 578648009 933232834 1061089563 472200956 27969088 257624989 5081125 808150156 272465336 762249478 796153871 1050391870 1012364835 824980877 345458626 117380007 819332206 275576705 316308509 638016793 1069442564 811103263 249466850 223098473 110224730 350828577 400541858 521689252 934125675 822285421 501766626 766325970 243414100 111899432 499941146 159497046 1056234854 721304163 5370386 466343990 835658705 29939434 83931625 405171978 172306789 548617408 434095229 317280073 944763044 979493551 555576213 1010717513 7740241 637290550 1062251628 839311674 141607520 79430324 520872283 388181323 568717072 662391738 458049454 1044642582 46651565 336824084 372463676 1061339314 70176147 735437068 707839192 313265993 416206738 752305954 678191989 726094606 305447612 974451378 829803225 802571931 522422843 848958130 1068493122 240869496 935877545 723588871 534152091 65039278 539691528 359855760 472020571 696837459 475819674 248702475 1056863399 566808188 53603558 729565856 338903622 710461855 506346785 288181427 144836326 21871479 53012095 544252906 598285743 532361079 245778189 481218749 554129888 652753344 915895835 862090356 502129850 730734474 525472553 651081930 722733330 759638168 686717203 601856230 72982705 431008545 506740023 820552890 347578593 1059130979 992967165 967960304 756483497 463057761 457707215 425530950 692051622 460261952 323209373 27983611 988275465 183254960 389035075 913189037 369971181 606008626 222806714 561461871 1031371561 1035458964 814808369 113220822 1034132708 566380485 583390905 432446121 229690137 570777064 530136866 251632615 148516825 639569667 550450778 160143820 827623411 123014234 598130249 282217718 830018755 896872563 363754459 74743279 716541070 127583523 537567387 886974272 1055601552 769302375 710271508 347924407 553844552 831565220 856312625 903268266 329636027 412651367 176493456 860803636 107804709 629372998 296039004 227717287 942175331 820961730 900438390 1001707044 595430169 200695250 935319484 741980891 768904423 829279471 698997664 676668165 318795085 823108301 748583248 278987235 374401669 622483078 41988817 396966643 276073708 587430652 226778499 308600734 860980401 247785478 406032548 537123658 781840829 947952365 450163161 231485307 593677409 572574220 618659826 555195085 169908327 428606684 177253023 174865992 244708092 672722763 497652880 121029698 910488099 351829624 670065968 267488406 31164901 872682409 914094925 206312204 178749922 1013985685 944138488 393317194 639252609 428658201 113362281 511787694 408187476 340899853 889099197 31924362 316314367 154302016 50047696 485728934 646985058 403695130 990000516 1037797326 732685664 999783845 471944724 1023037604 606052693 590484302 16438701 703818579 657214286 60264056 1026607015 179577403 190942383 138265727 813049580 505969645 142982413 171253837 507761536 830078157 434304538 109255163 19824858 704111220 442413305 230779248 201046643 264139317 587186764 160068891 665586197 756719045 128285505 404142733 615181626 527519902 345015928 506270102 675419740 860790829 706341871 601237694 521345586 549739321 640957160 944743385 864928078 481342706 511535396 683008397 37535999 1073303470 800550367 161302285 254050786 292033026 551847647 615271852 455778512 624558691 125780090 459936309 967987183 873249124 427849616 397882970 502495710 149914803 866786062 786694455 550741961 997919497 191689922 31220141 50829485 3885345 363286810 874856643 174525323 662196828 1040548347 398525825 641889801 878470135 202662499 646445687 493085106 71985247 645410855 213258831 889714739 594783402 753250125 574085655 967889348 853601749 506130943 444471260 776918079 268580337 68444007 649889075 479547982 960924966 362849415 503143031 728790028 114408207 413695334 120523102 1009979735 80946755 455489646 621353069 270393966 348848971 211885126 760777466 267220205 161893822 241871550 355911348 479233319 1042493740 653073156 337976680 697128925 175104475 586305416 826255766 1025187272 197709137 730001877 297660973 492965929 119363029 846134090 787314347 507016422 384334707 264833394 1052609091 204528308 837535124 565505612 294626721 85624307 512955602 338938788 514700604 408257815 435919366 928023033 866210406 681388542 366861513 355911456 943977404 724623451 653545334 781818788 650822629 109753770 246323012 22207656 840364062 884469360 1020584041 701479482 26667900 946324201 61559162 435199706 210194061 646432660 66774960 264798867 149093925 598966696 753137127 211615132 487353881 237578287 606135216 1037249949 596795704 451293789 633258875 799927140 14097295 587695482 787341643 188511901 239078896 979667198 99064574 790021717 50696946 323124479 895131936 857464851 894302240 446723678 298688563 1064499665 952584555 63883309 549375502 927213977 274443555 655327858 868139102 127913653 861841569 220630274 764353642 174970284 854798951 431623185 645978199 98663954 529050858 841294777 357164117 271813148 746010798 74376008 165793699 427632111 876661196 1059848108 410738930 373172172 1059324837 494505976 623082353 679785148 948358481 93165705 693321754 144056335 420590785 865434639 243519986 309326125 57000027 896660287 638341336 854065459 80696409 318716057 443778208 27994995 1027320004 432355957 42817628 699851044 203037655 900216688 285601095 775059234 315295571 4221972 288750888 48605160 591153714 811900438 59898931 1023628825 148968533 932815889 647209348 233072860 927958843 41145357 702960745 458798253 694021126 671169628 1019060698 489923328 629511985 487006557 972501232 545253719 621611081 332652359 764641672 1006819424 436700691 79237800 695172373 795430632 827943037 38401986 994683705 641484474 604366917 188019575 1045530430 1029461077 905133033 756957029 887529262 374925873 117824038 126923732 137283637 995561967 939937401 348194064 868814833 661678567 113373536 210686130 987426632 766638408 1057862665 453146667 183962438 885097069 301345577 419166469 542724126 906143717 773350652 187278326 702951839 1044189497 166076872 1017745497 601534752 936974556 293347850 445104538 554453317 20787418 591234114 367981552 174836168 130093149 791332324 767763273 440999887 208889523 369371298 176366338 465283005 1007437999 1060981076 623862165 909964667 39614917 658380137 269509254 425933638 39717160 813530918 407902148 194377959 863679819 873672926 462902866 733866518 362498206 887122439 1044623148 726974846 632371683 1058855558 830104204 851028484 518978869 790773446 702026947 949112301 293028996 224975365 392654460 696250471 433392085 218517037 779854964 5055590 838865123 477953461 412915713 103864118 695960266 1067871489 188982331 72843735 97692755 378969408 442226875 1035850082 173067588 571115069 744447481 958787276 248723530 691329929 92013389 234788922 948468636 201363102 1045073241 732981776 959717038 318577953 59810901 320144325 642537340 262755530 198619701 474270992 43374288 867369771 439430129 681885189 660329399 649111103 836917951 307807146 389583324 398890704 165931814 492456315 616694770 672602815 590770755 118162917 797954408 917642384 592455086 220397703 667854347 753739746 73663377 94851387 1073387071 20767215 733244044 532616334 598665653 475854869 305460639 308617924 961999012 207083638 387911206 1062146152 66352596 587098136 485488511 687697761 195220321 227872534 422175387 551885791 541678328 24911756 517749408 992434769 729914626 310125423 566788823 621277321 327314553 1073652021 148294654 746842964 342111956 358497465 312057849 445767647 104329569 216831809 1015250578 196279678 473372273 232819912 254878217 188706837 819782770 26696816 904416606 917849495 432129844 297116592 926151317 818168388 276441138 231854613 315539806 449254078 886365013 199811849 304881587 172385950 74831664 922974084 1000454673 832732486 290597917 757691121 735099176 764299348 708924558 385095259 928162693 901534611 1049762134 344046503 768924149 767825929 307854528 235890709 164715076 21039317 410295606 923746981 851710671 741179613 512480819 446112879 660553806 973106142 662394814 708342934 722254477 475731602 696249002 958288697 188745861 111575702 594195384 126205393 282856762 498625411 226772483 168111785 227692725 124056726 47602413 45043658 927485816 421597112 52598335 748379941 26029224 298076480 718226789 958963482 512494161 499233895 94450556 555963184 815713577 674375085 293616189 853881159 23648708 622179092 415618763 497294729 975770973 128081615 692225756 400664761 170178410 494238442 1001777330 920361797 462159392 15345574 771421566 495462104 368997244 636242756 115016758 507278569 321835155 89468102 25729801 489931260 344541446 317773436 292227837 10008462 1022777487 646455236 603110231 460321210 572200920 1060359322 1056798333 851227241 562693679 622102064 433802062 949567386 434178782 586264306 531627730 663915349 379895258 875736637 472528971 392764988 825062651 379747259 413110547 1046913980 921756237 643032358 976641395 283108603 320972181 39999406 928702013 697389307 590093498 63590325 150755394 766444361 936133787 543357951 170614415 701682589 371300440 197894014 374043968 76366015 406289290 553321094 49845098 482910185 642146802 11471442 688562528 579032648 398621640 394443700 771022551 933747166 187762868 373495798 771712190 676673158 829296856 286022714 392334919 87586543 467911668 724814360 940029837 234418842 517260657 873856066 831824997 963919361 703023321 613937483 558395134 148336164 1438691 556226922 956356199 187316815 734582652 577987981 708083823 688293739 584028918 500158091 791057789 69435836 102266435 481012848 820580254 868491656 117989144 406863403 678387535 260534979 596906048 664762309 324254446 661719978 290841819 71235933 145381071 949126159 925707160 22863250 568232000 851057219 772998183 78367918 452818646 412737682 975796784 469389933 155468355 728402676 904767723 603598897 567862045 1013204905 741532530 416366991 184831589 468473140 839415489 1047786672 226047660 859104050 629630162 707755423 647853397 125837531 920758365 693265173 580935015 812443606 392757356 1031219125 68952725 651630116 680369474 1023311010 536854350 203418006 983037467 988838899 718024688 416248932 558304241 856231559 319877557 1014754085 277016003 1038933997 1072485345 471343925 215162339 408673026 702571548 932035154 564587055 489386097 323442661 397851505 676905209 476714178 96201013 803564655 207074440 254952609 336928657 371808537 60450541 959006010 540306891 751803808 89614141 320671655 712697463 212885479 683875990 979841413 989877658 772802703 405200869 187013480 742098488 99260255 1057202478 119406901 914252073 532658710 738899026 746456184 617748309 644321459 369636100 1024475207 347600300 975768728 378822490 251634755 917920227 634461577 1040187661 574865775 676003799 1037603055 547591480 543817349 377989660 194304727 1005586783 557036035 735447490 91171786 303742437 1048818790 58218566 668653260 318490887 661070229 916798902 816890021 924011294 563928507 650632267 323630161 570956375 268314574 412480573 427779654 851999165 71184053 313398436 118301381 447461021 101577981 9433408 794200446 314966463 487980664 249174237 524176198 863008919 847593545 891378069 313203725 904213182 274811061 24123414 850669843 804182722 848722638 38191787 285492198 695069870 634545397 946604301 67519851 548080290 928006721 579700909 801986266 625924850 1034719791 108671027 706894379 710598726 639918677 143737698 536631775 981676575 917572989 300909730 35441329 935169997 847796331 319928941 43930110 652423235 690054692 743204737 635409468 700538424 220608340 857760158 879916031 423994631 576772481 733425012 168733168 531222495 384726018 940680784 575406135 57562222 368795620 312591066 620022218 494165000 865964167 338442604 57572006 545817873 154478328 799239193 964916694 47369885 127793450 480333864 961974286 353448916 230708434 619718610 876059540 324006831 766173786 779180290 169833972 982752667 296181711 243747720 531557071 835760003 231663234 812256091 264996068 884635097 877545054 232297917 894918107 1020796070 476326543 343781530 309322827 971720581 490814680 820174367 20337821 995143800 556876275 946976830 627495307 636192006 1058498449 561556646 53784681 284873016 158938872 192943834 336304756 1035457438 538826825 906387668 756965177 953409300 871103578 389904443 889618186 135467732 955470264 323564199 30873146 99838063 184066489 1065429849 858830416 497767764 34181227 175531322 80365721 925040958 666901111 131359479 222638079 578343189 999161671 817479380 1055034328 272540962 982812427 903105643 383629359 1055175639 791001174 852081776 42446052 171315579 1007086312 421447479 241229231 198077482 759165614 584389308 379016995 555278647 370452461 342710325 726318007 254406463 585612904 183740159 776025043 629321223 471195865 282049597 962777332 192859719 860771543 711118654 92447806 84745356 501903598 1030794495 493818162 382222152 704759093 640109365 415795747 139124792 716906743 709084588 257899588 757883227 991435990 257496278 496267740 864454491 795651165 569087160 628244374 9143741 870773715 569632311 622793054 1022453057 649553597 584346634 1022596010 810509408 453268935 469806702 264591848 43759808 91639984 522651169 263753255 707891120 146803781 129670116 476935549 181957390 986113579 973820138 929754396 86753749 509103861 1037374462 528650592 702071178 710510536 717050518 907869877 245418199 540728920 203914110 345765367 307341118 550230661 268601509 814150462 812712351 534756056 766547545 127576851 478408463 351242140 26558232 440360557 798542993 312176020 376472248 399068133 733947635 226784387 87833654 487592364 1018424614 595239508 547065686 573603077 872775830 825619415 480866626 343784468 1030867148 168357207 313597958 496678891 99553836 137818360 324733861 765638623 84495843 1003196335 921721618 650652326 953274501 1023901127 107363773 872867200 683787716 1010895002 394178756 50489860 51512306 476319186 185879244 549904678 42542692 849586236 892272993 542864719 1046958619 411688294 795245566 136866009 720986009 1025193315 643410432 424020190 1012751077 377993076 329819692 611732280 556283458 79160635 300260845 70583345 61425361 464713055 584189678 724403101 464082836 506907258 411540003 1007514972 842939895 546380884 686219206 1053028669 784280444 877623541 729920325 341044700 1001201021 90913593 737649748 976353152 68088952 148670642 680439453 286262972 210519099 295274041 257137657 697733617 444480669 845446922 166985156 462472558 727584661 727882913 801624627 306499933 639898824 203182451 350427356 473861611 1046786685 312410763 725859551 498921256 243372488 608088898 134730112 893186612 526102987 431216961 945564612 961219830 480474031 355146959 601176998 426393483 907962724 856385642 518071809 423995262 942212668 542518865 223193405 539960931 807800342 1026253981 450993649 753187607 386919921 558347855 516664519 196524160 342730169 172082624 264239691 755459227 76661558 1019454679 208815905 408957569 310442339 229463921 581796809 114211401 1011564393 11585159 265261382 433065804 482228247 825553309 328404870 1057125585 139954785 592438531 847201741 562381754 1054676884 616789626 899755326 428404390 873590616 759131964 313785204 252346704 469354320 846659017 5937989 465586002 655828103 147157954 879633564 811867269 922829833 970498771 934997018 412931061 354180114 392928788 715015438 995508364 452221220 764475151 1053565246 79056090 982929713 661504301 55035627 276588221 711154418 405311212 1027952485 14360947 915208816 866594258 879867297 17839204 250138613 606663637 195044007 963350924 950859394 317603155 1030340807 734692428 793786587 678584682 929668536 89664268 1058439811 534936933 585262906 579522301 310997799 47391987 322499329 496988415 1008810632 342962639 564202799 54499565 544317584 584956097 464587897 798133804 791383767 268833631 938863832 13423382 554079167 807029080 486699391 240990315 84852862 433402878 374451922 211201296 244118340 460013056 449197787 484782846 706688862 820388700 581785801 16137466 256667997 259742838 586760054 169255913 202914563 550177338 681602713 805043644 617386702 911128905 386182621 158375362 201976575 278141992 357084916 298655087 912739588 220336534 136857766 1040082774 843473879 411920712 796978466 187972632 76424787 486772147 784411396 637885384 722986779 296277556 1010316080 1039718875 160410068 449633410 364795924 300996197 309868607 403688526 698941093 326489159 689246461 736756566 377500084 619725114 789813664 836746638 689170249 797332303 775265800 287065055 237320425 171895316 103908821 593802507 319398934 805402328 948017244 19273726 204995677 501219775 915259263 273518080 814034275 616085264 698947347 376376184 363673928 696930804 821593061 998073338 100954140 546848291 1029683262 186067948 338050296 516349621 927429450 250415919 240951918 315134640 892751751 457201099 515264140 685426740 446101627 54689830 1051878809 29762348 46947301 49145921 907244131 998737446 732233317 467271943 384251130 62842395 578816934 140804442 681165740 810259198 821350713 1039736816 735413126 368886143 232691356 175406643 286678723 84134391 357017595 708211768 743889666 97441698 344082491 379099002 966782258 489774717 366508983 807414450 904361580 582065984 632890799 2988921 638325038 694697910 666904596 460353907 68558748 59696290 340368865 797448985 589430700 246724624 330000631 252789697 854233722 411496028 1006374560 338631130 923190559 653201471 255512442 215022759 523402846 368281461 438687422 155581925 72371845 15825475 227350321 898858336 106648043 226491827 867920154 309445158 56231867 52533849 205377850 144403817 105243718 625957714 909347242 71987422 810505196 387581581 224501905 962753379 534306658 1038240998 848401390 194673999 944686001 412512802 220485559 264295880 830393617 1027258780 669470950 75258340 367835845 456064331 1063997443 492574065 807798570 1068216869 594570362 498133850 558273708 940405143 535052867 87737504 1038855417 983228360 914557329 34973213 606456340 816911523 130806714 707231549 447328587 726583193 1039536348 14830140 351961600 191780348 716282018 500539194 229854013 213525335 682867300 741853592 349392732 671125174 163781021 457705960 383791944 690705035 1001540559 321814978 399361039 87752518 793832095 182441145 439400843 385171853 125891951 225277355 190156235 424809953 513517304 221359521 782103774 20100481 536994977 49805214 473175303 722575316 836194841 300937558 1029200850 643185678 1051853148 52890892 2726941 704224205 266647581 597691928 660917728 880409737 914558202 918362626 148401752 645897430 875328719 759777292 785476834 328599979 162211924 626420723 885048706 687327376 355529151 162194441 671055555 447496081 914074194 243916323 729940020 1001967403 855809864 305709593 299838196 672729897 688883275 1054954260 783795812 593118884 329140223 144668202 426228962 1049202733 206827825 515279046 169191585 739561566 818875707 920569796 167345849 589880223 871278156 135635613 202564099 897644837 789619095 954236957 60191504 938694557 412461092 286139707 851037707 649600461 451925480 762558684 408546833 377621642 822058279 278297307 329354206 730651959 99778373 528362781 291668949 958713938 443297943 3865498 140152189 529212043 851496656 849173822 955283921 178588976 42943550 117004355 90029098 626701128 113119172 536885096 969239953 201922043 348205615 621174355 534465203 554427716 513176572 790066182 142472598 1033712353 47624426 4870264 632807845 529946613 288934723 390945859 525417913 889670609 27371526 373222526 979076590 234823490 135414572 670424661 781000284 193980569 685306518 1010489825 826313042 736020553 71929946 8048141 984910594 792630556 394959992 847147011 363597983 830715584 20324341 665965851 704334496 116432589 802082907 791382072 428422292 724232462 10185317 379800035 996144258 612346410 893028411 705958422 811187177 301935138 890867239 420070317 639697920 1019036708 131845448 930764215 153760877 1024653383 209606868 438963933 119173689 417454904 522714717 697234371 74896470 982119968 669244619 783393561 670199533 813698053 364806013 255355947 616389012 313244597 751515973 346615729 623285009 940345232 958779742 506719983 144930469 882830905 494215164 419532352 224407036 1013239336 563876508 518376046 337713359 261754244 639403319 109689816 944043586 21995960 660731292 317601659 374743526 573573532 678960248 289396666 634950246 884266136 968725018 577336826 23674147 299818057 700659710 107315065 661978551 526086502 2470554 95050741 604930121 332923672 903394244 587987581 432432996 653136654 200196015 730690825 287213859 255933254 292299786 869524266 330564718 707613260 452399171 164030476 821080837 911421626 829980543 564245071 944835688 885391073 658565778 61419098 318437871 513960219 866912725 543485410 277050998 146562584 306735740 545443258 837583914 79078357 281891542 651495259 34292137 244893890 85934655 773422215 582297776 685936240 1018618829 718282484 526347447 654515231 1038956732 197051944 749192963 51814760 753460827 1049081310 731087785 788139877 260011276 695202388 295343758 238154701 588371562 125207075 308853406 689604385 569698729 447196102 373242949 576981653 980210127 424125615 681288313 534501055 117131575 676692768 869534527 158675073 917527749 691439156 247245798 371031095 931254954 35509153 481599153 303405483 249396872 684077548 359524038 7621314 1027857960 619383294 215743460 230247244 939027626 162121863 1009475105 226801961 762640744 557517544 15353345 15510875 748756677 682486956 336138352 832624829 507432654 785914096 52244415 1057670638 697155351 220326838 350113029 944704446 812175650 422512753 67411011 400442162 535034751 132994136 785640124 487286741 381509145 81013418 101402559 256514407 283531354 66618667 396944571 486896233 453113681 103325389 931430337 720173102 374261741 196339688 658832030 882211146 107579727 840194589 628771997 371901230 284696919 240365064 721682432 1012906490 333551362 916303179 805835228 133482484 400913977 963795259 199427111 46698746 995563857 645602437 605181691 84033544 243877449 536550313 850187804 158288396 410947407 481771536 815860363 1047523938 599095683 710149272 801339421 1026776786 14812458 463601471 691386090 206968103 892958960 576358256 464151427 208440465 623932980 573534577 713956384 1012124510 523907228 328176843 244990293 626814483 825455711 3380123 741228696 512284032 1061907203 913124136 847980030 427121654 560049838 824981599 756238872 752978627 343452459 346074486 692019935 171311168 1068559569 815296918 563984130 322089092 1021816603 189658213 502152817 363789057 978669748 910466506 275524550 291957920 984233527 479933034 906124240 377222689 1025605061 315486046 262698259 681590031 633948772 675290734 90686072 393662077 984124142 455863690 357016496 86120123 53992654 116012326 426234770 1007734598 594846412 886466960 154066817 125968616 426823197 845366454 610856882 126317966 241751965 227633263 310082344 244863782 774313455 548026258 520822689 591617631 981145290 536990781 872635915 839810636 222482962 132612870 263305021 280430807 404406347 1018546321 820657583 59826805 696562643 493257140 158491573 971314843 753263146 292410562 508898800 802708899 298919454 302918038 762297519 518170241 907344776 892401101 1062367818 305379151 755570701 637268215 647738115 42768403 42017550 158033378 234116048 176680610 126909116 854457288 293183023 957661278 345879470 643294896 119054 254916941 981031419 58137676 249804428 793528584 426670795 98332800 985186909 383361567 418443062 222065791 612524826 715298289 826986898 1051060422 344819767 686871732 882105319 1063870314 719893972 576983277 444440077 595424434 771237453 192864171 396815487 880664543 1028351038 451069393 1056579451 240853490 906479465 905406832 407650910 285904834 774350221 589213793 312438168 49542758 765310429 662593207 341354306 21636406 394306442 70706881 645104687 473604058 1023347594 818675040 211457177 61654848 820718479 878131841 962031664 270428402 194425271 386050176 638756788 653644728 764363371 226099194 821130349 501580009 278200958 106876265 329416371 209582026 257900075 824714715 877107752 850580094 4816111 73332862 674747542 989169295 382750391 17112699 793583638 472639911 736326573 619332463 1030608448 772870091 418467520 201242455 552728405 986982068 925935569 171674492 1042044980 838225938 904185302 428700010 310135224 469244102 490974708 222412807 947707477 1001189392 841269036 1066843295 81647186 805549451 570024937 1065901126 587954312 429342106 161748281 907014062 618560375 277113828 46042979 567779514 639965300 722108384 977574273 380040862 246133978 544274210 783982688 1047676274 487100659 658795438 160115860 968481951 845156810 1023782200 565997086 673607067 967607193 203398219 738385510 863711651 535853056 755820696 911308450 44115815 243720553 872781352 84213200 1034172902 899593047 216459846 1064395074 813662910 605313667 653065615 961087070 604624610 830501901 381406933 850124051 692674246 724454007 188893319 176411240 600640291 105072172 390112201 951845215 434683048 353650702 451999612 780151494 609358099 99902949 13134189 169249964 770377415 259222381 82825164 254092886 886898806 914542667 46379546 690603464 123688820 1061606803 574582120 837675009 48596708 771692537 333240357 79461602 258631557 453792908 892227496 914031153 666030030 533823173 927373570 237067523 875299837 984649968 365458678 261875698 59342828 109695586 443469995 753997894 90827879 21648778 931245843 913898166 663570141 768418766 318252687 754412224 230420753 264117746 267228867 660992902 28052328 181274756 148126062 831409884 635765456 228072456 201357949 405422711 362338211 108941653 518037337 992622450 787293228 999460448 873588110 317073867 301552740 185345111 754429247 320168486 162539384 362619162 185958480 821918092 117649389 272017127 506905465 129344168 989594761 409176211 675699370 558087621 409885162 1011476389 219743179 606271283 991867315 148054130 520019577 80168812 956673306 333978150 1015184262 9541181 196058082 503933855 477983368 997454105 1019325609 141808741 662920925 804543369 202903384 304088631 112093721 376587806 182141562 872573053 542745331 282108854 980709260 1008019062 482183038 138777766 820744120 923515965 367915197 609318915 467630677 200000038 127818778 36027947 771644581 1042764846 703958722 698546159 530525213 727192668 444926576 891714967 685885770 28447291 194763047 45597857 963763518 407528413 800629807 673903562 281475185 838456799 679298424 323096871 398322234 494456977 94837516 574856047 540871193 384913210 844457640 428398985 1039288079 533959050 147684645 153089106 1014123247 199762471 725250426 3311327 189781463 759835072 23764532 1007751307 930657164 804234946 718565884 471935503 679656928 101868093 830503552 412260266 895576107 517070452 298009989 912949072 714384300 1011067784 333775773 206083717 259873160 881614324 678740639 76245854 329517715 367041161 226958844 977421343 1060013109 569457951 992232593 707965096 781774644 505721219 138317586 493749553 857893003 677350947 743963787 691981323 1046382726 56412065 1055567317 62276729 423053522 380041805 443619111 881851616 441464788 625341513 981369540 845777915 478241578 517829921 776789217 684361174 190769544 82978101 943130486 617578504 657651329 232361808 443036279 333651134 243622621 508649104 580032546 1071780981 686237787 149572797 976483502 975222527 579928187 164150754 877352233 1026220102 513146764 396185335 294869580 631803453 409392170 546829520 796570177 1063327469 348965895 961224461 195332660 473992963 629971539 826815934 49253952 807852174 287170271 242144441 419580465 397474587 43873547 268195250 152674065 404224732 281844129 1056894809 1072690932 166210567 66649732 255202953 854258949 474033433 17164787 643279653 546509425 408620936 55767503 919803318 583797381 99430764 772221292 286657022 810027683 124066190 897566946 232007203 439184429 321532839 723746920 988316600 365698991 738580100 26415823 54104044 915289037 750922990 179328897 308428477 139312765 924163525 153180829 227362713 1012576383 645305357 13788547 428076868 885929202 187524510 633230778 27378252 943460285 1027073036 45489932 213582779 799720686 137841388 864178625 241031876 608687960 671399283 987462445 862249739 262643993 809431890 83902028 33911718 814103365 702297144 227842264 215003742 180811961 971203079 573517431 240024247 683280163 520947636 62610153 1006371203 610139366 313069960 685362428 62025295 1051773592 684536255 774120563 482356938 894300565 242217554 632811535 819516017 733341308 533575300 446075543 19663385 751012801 818962073 464966371 542918316 466023197 248084360 1021975723 391706830 218392420 931999616 894302476 929794306 54216556 868432647 155112633 539080899 1070970089 665689700 732315906 83357719 320055659 779433550 1047565311 410726019 51077277 270288389 203594127 723643340 781334408 35934349 610791431 203121245 167001334 106076969 322076447 42796995 358823059 153360032 945857534 697845724 255067164 36400139 23952571 193632742 707661436 834887248 1019658984 421191764 564424629 1038663056 868978209 615077297 970864986 149476130 389074270 934841594 948443698 587709808 638739747 937189970 477784436 410050849 957368244 52729043 957055844 426814930 757803034 335553510 832214881 902395029 173548966 643879081 53305716 689926481 213451513 291237335 84689215 808119844 1031898386 303809063 309321927 781709362 211900743 924612904 377709493 1034854986 588072242 178118034 963850301 20486670 1055358506 935364936 176109251 34471184 817261856 562509066 882788513 946079159 386849586 878604844 153680716 811391041 458638598 27503922 1023637499 556622122 49079696 100933912 286480409 361386386 599305818 365128585 113047622 439477125 398341181 249127652 288251062 625353823 675204242 1039543835 198255096 807610874 63926041 340774692 974470571 741149159 141211732 1055610068 614523751 699580626 743696183 709433289 947205245 439511594 602054380 432505618 1061136879 645470964 357995608 501581622 684329721 49759507 140133952 56951814 114272652 514004844 759375332 71511031 39234171 437084073 547886741 133731303 123168943 7641940 616677505 585101510 293721346 974990332 1054056539 312525334 529072053 576427005 982126383 797263306 49644450 394720482 538437957 951428635 330690234 616228833 531239813 120810658 865221216 105862006 571363683 287241430 829211782 338814086 855243685 371877395 819194559 328463835 960022934 692318347 81003354 1068185247 670424327 855509922 451696377 486123104 1020618646 46407564 772515960 525891413 919057868 876115625 67847457 895443599 223042993 341021506 925868490 288704297 356670355 584546952 1004255436 467751376 338498524 270041127 664491491 788294979 238190309 296439974 367623592 137759594 574661043 775859580 58455707 809206534 290162573 737165815 74278730 990236117 192509369 162005097 552824237 885003797 651305226 934365950 974166961 315909184 489229897 526060213 412895672 962243488 92767875 547455602 513617823 398314648 1009675288 1019132595 970841832 276861005 269346305 491527563 383784150 1062766019 113793142 1042877880 1044117396 945694625 954675378 984836359 389184966 108743438 881473326 178511913 669422800 794883558 780452377 907325798 906292568 194776772 804888218 390334423 1018972168 69402342 86349567 488834432 168727654 445605819 268914329 854758711 626510045 330953996 577072924 727052475 929808019 1006646722 21979316 283201754 549101840 187692693 13072701 118632431 163553043 1007239223 148024438 869977227 520130348 827511783 227843884 546401969 245779466 116276917 543992206 237311893 220077846 420854136 132459199 891721191 516474209 570103754 987830209 796567785 275284737 714742447 379853606 219471611 286588298 464283667 667545999 969707358 622377930 737872771 883879634 232075309 526410780 687756051 197437445 1056052170 1050746277 640662443 145623660 1051163617 665788442 444590333 606387785 618413052 788935080 1043989481 927056239 571743216 763423245 259302326 584640280 452901792 111719156 991956901 490545348 706219322 504553476 1036032191 134282536 53283607 1001241990 1005180925 1040180071 417997084 561784438 150523104 467137253 246501336 844893849 631190306 244164794 316506325 535712495 691803636 818847843 604833047 909126933 489399990 257194999 612378545 1041064119 495543536 683678241 390872667 254326346 895105702 35326069 452483354 699741195 563951983 828761776 204288089 862871787 979437848 374646001 791094824 1054815519 868778871 410937026 186570663 964429223 887610894 346819436 1067609063 605066356 303779034 805580999 195008377 948369339 625582881 933450416 745771253 703155878 1030773660 634060237 712395876 1002479348 186819975 940936851 441442596 1071398000 642154097 576014885 18556463 940370792 703378434 1010799699 843281437 447852155 253445214 1031449843 77145991 556141534 976372901 191780899 157419698 630222680 538489968 639806254 311545771 582079169 460071009 348639080 414410196 968134145 780588729 1009400345 632355582 98091383 714769281 70326388 582385149 572596947 42027938 1025324549 351039311 982396229 634953415 299280456 595287531 857750901 90924108 519747653 852860782 311007649 926849342 895736599 605976068 92476878 413751039 840971921 921635229 1023821226 686266919 490838411 619576280 961525968 397367510 482955193 610953052 191032047 764286505 674730982 910567826 305728470 241532568 731832069 330721644 681021296 19145479 615316914 233402647 815921030 1066183685 454264765 842223481 9495061 1042008152 208476438 658476187 893982206 796888832 465012293 981998018 515319870 676118778 788573424 967414704 58686940 40027818 641808649 800969772 315098603 666180025 505101215 627935648 356044632 181562368 35056026 842481543 373738330 487636156 553619237 891466585 398920985 678413635 147721648 425282412 457779838 122358473 242245851 692490498 295497596 486016959 866235826 844582936 414988616 297820285 746852571 815073641 995125128 292337939 227050815 14699969 370454586 298799518 809719617 308604219 13258085 992369295 169784938 424427611 1010586827 94432602 131371882 1033537093 972336406 554441587 50174957 389955137 1055203368 112484582 387554721 425367648 501585264 478918673 423741383 156755100 183224561 575139629 315147424 633671531 5059008 1004499546 573808666 613844820 28504775 166615986 411761852 157141084 643597349 56605672 24826768 238212201 372920945 827656791 736212297 634899102 955291107 820142809 575199798 976523590 392406524 1042970082 629002331 471730672 706734144 372874325 315969005 736014705 945295615 454149236 900877539 353562091 1027249257 251818525 440221349 644361206 324547304 842691947 960411766 245904536 361366423 296650294 543298857 84882771 517745330 14031840 957153427 798349121 635250430 729627290 721598383 34708628 973081508 7344548 147136592 733516782 405487273 800754772 1006660066 294352465 943779048 601632194 375771910 637777760 807021502 320987339 903942056 1070801506 267665529 678600628 440443204 564464841 14935608 789689256 1048208855 475875282 509985866 911008364 268242072 913847926 897386751 119497936 291244989 181865902 406733088 128409073 224471598 462985414 612401584 891141260 505621278 825192570 45473944 907029297 402145107 760887663 558561928 307836224 28478825 1062359709 960649542 741332881 963176024 1019672791 698820136 108158759 160932522 981070701 258819003 929929977 659203892 1054967319 838879043 682912766 645879521 379348390 322806444 55074674 882210515 975260493 726601196 445495445 667207210 776016182 367867492 65947121 239137076 967565700 389947679 393502364 767183042 500337430 579829307 526499721 846194862 775524888 234746806 543882011 719977235 723455858 335986121 56035500 754440748 622377789 747950716 145838830 728606452 1011674353 118056941 683343938 1004392823 653093042 140324459 3401865 927769197 133584433 361061534 233407001 418621554 778198135 860324339 332716051 1012900682 484921801 962545330 616467118 262527109 11762934 709595295 848377942 849719709 1002258164 353668913 951265940 755798823 663500374 769232614 501328746 860347388 881516060 285832174 433655052 780801859 725835122 934351696 598553312 1056611678 276823426 737905846 322137345 1025342353 836839864 879267331 951791265 623458993 748433774 69099008 411385389 415404836 983255899 236022074 166748789 46103500 1047990730 366365334 537313050 289287266 532345677 729133690 865033253 381376898 254817256 302550768 281773338 726170959 1004280419 395130703 964143943 385083812 911881474 167043048 568890407 902319075 721762347 610083446 398508357 724099247 594939973 77488751 810818119 605743650 672662272 114385052 343742225 721675410 310356326 775492790 401772405 421364087 294466748 175862958 293242671 786627691 695575180 300248367 675865947 847080680 1004576729 558941635 662906120 979689009 561789183 834362495 816073806 708937882 667538040 978322363 394085635 615063931 200813414 507902751 117985252 989057107 626384170 84892010 97632380 779379364 584344898 235686942 96725872 333532838 366441853 849202052 585870643 412364179 901891467 113284507 864671065 932260018 844717209 505695170 1049966885 421979426 1049288705 530856085 524320653 603036938 33066494 323661855 529316799 852720389 373283983 731523607 123672696 869861065 634866987 714076689 677745774 889509648 126745134 944503205 282408333 368778918 820860404 608132875 58126915 186543313 464561235 423855939 379031068 162766347 615557318 502979340 773972574 1029792035 890669706 918837443 992578091 840432755 460640477 236910872 365384872 907344846 554169983 469449301 217780661 984241650 390826410 994024484 50150159 407929987 132173658 256948664 409919503 56564530 758260860 113499484 283933891 905478724 903851072 222855792 659565592 1028850034 167860821 54712833 136550653 879628253 608610515 540498708 813202531 821640895 333978425 167062925 353448161 184144398 647461395 340920478 5396428 194246796 761360179 186461697 1062273833 6154733 577940013 669261684 494339845 308498026 251132718 389351262 670629729 295052021 110515457 502142413 404591485 775915922 441170504 664426388 6059257 1043361123 716111025 1040398587 846138553 622963786 223940377 236823922 1045927139 482493380 111621055 812876234 860485100 1063973166 391679419 65266776 274537675 887113637 959164017 391343733 320857502 197858145 250980911 938418998 812817885 998777000 295978822 208338126 120617510 308237127 192579218 177772907 391844289 1029816166 484959793 392130397 190354760 641505251 665233319 609185267 597461545 518429027 384104933 813392115 477155929 318708101 494696434 403175328 144692539 685690048 221563533 428253574 753318185 39467163 1069906600 1015973345 307781875 584346562 402397946 700786717 775589787 353475458 389315806 30217167 761156606 740550503 187302478 80981982 1004492319 1050276274 238828572 980098133 393751665 850545878 3913891 543888662 81315938 307204110 613402033 631022603 216273436 250007360 6153904 621735766 1028706490 97209965 1069504731 1048267269 389825202 779931244 321797081 326496825 989776213 1024877645 798276112 748337917 520011714 335533210 19197211 169324305 41777115 511756326 1073556407 296444353 1001317125 873956783 969199557 111106909 676630840 787759154 285061597 729221088 482673037 349113065 366714491 819113219 488723757 898451320 878372095 160791947 889971895 444757539 72740454 618373452 434455089 780330435 296691295 564001901 51749154 368770411 550973935 998750153 526057601 122549448 338912766 1047445613 512485051 40145556 230308162 440118506 604065478 372122474 670522633 97445366 235002595 170509783 615773129 715217904 410333203 36316948 237443693 995088037 136183770 693501353 619671156 885268072 245106278 835321004 743414668 108623047 555149011 444062151 954577107 688755776 918069915 989063973 484779196 424168000 978427356 140812467 1026834586 347676728 680544091 746400411 319993641 734033926 655333615 744810899 1050489767 421888749 422861634 414313761 216354692 1063454453 151009995 246017657 176453091 122949973 188702121 393269156 577071504 334009180 430388144 234339695 64448305 636396832 759345529 985480245 362594330 306769937 394983634 1062779048 1009993976 676563246 273298497 539301668 136625262 629926888 22990320 369853695 116727546 161055391 556175148 424591414 955436653 877444269 1061345628 864912604 987503035 121638601 87381541 644338878 468425445 407480395 413300833 689627882 306308608 124520252 558766545 405668226 709606956 296976886 489421761 469395732 255984639 13758871 435541978 783676304 629308064 333255538 1070115279 509325023 323166823 954767194 5624803 909008367 668619708 637722797 21771769 886323151 318804264 193195397 594859240 743150138 263894723 577399199 440773542 815674089 539726378 898819888 958508494 376887056 748881487 225410037 943754572 791266627 193967905 937109548 822774376 264360133 672089837 785271883 685789404 984392421 996483676 910016475 963731038 737870187 808855337 457909806 644176579 235209100 202696874 340001990 683537460 1016822488 769521409 219683085 731718539 50194340 683427425 1003582389 109054965 445374836 513147273 398105684 1070465378 6750448 1019470655 510383531 986974143 668333544 826880061 504297048 795527540 798536205 686536008 1059012888 37087339 114253062 543196803 627729653 178171266 618251737 48306339 128910914 394457995 640070907 37391706 51839001 851475870 585022770 661616891 114093075 1046120752 460167439 812985209 970750890 1025791274 551915742 212698727 213468876 831911942 492303491 352133005 442507040 533537397 126726923 930693339 440216411 935665999 607276365 525287865 798415963 870533393 532703119 850908632 397935702 610012565 864354625 81891936 284382267 962041443 825461953 979585714 921178766 703216700 697218110 965954269 451710999 126759221 634580116 10564061 754404820 82426844 166317044 645010021 958667668 502831106 589191264 962837538 562498789 39439099 387027958 294757894 429510056 982480537 463618365 209907210 465793861 646138134 859875940 611534131 710000293 200979942 705648006 233293094 910345240 267286649 444385914 408311688 182459900 954629863 267766185 29018441 345342059 658293893 557402175 408070716 803535764 577565152 924842926 934050288 1037242041 30759834 565691642 111952782 531049909 467756203 966555042 429126235 515751588 232875391 861395946 980673800 753390086 32828653 328355570 254458116 412701409 567208803 519131040 725980432 587751618 1015341071 63037040 100546632 331278930 497161044 661229725 100961013 373711543 470105134 256111435 41373297 119022583 312222337 696019610 826999671 373662849 688634 611321385 459646182 738115095 653800297 215804293 286996784 719510214 149730013 45366171 101426488 27924156 765673936 122629168 91722409 993876812 875081653 133257490 170566475 557069922 926182395 252508660 94838782 1027866408 539101225 1050963251 681952116 59359121 124340139 236136038 241640027 765263771 66978219 433103616 379892322 759258257 665502642 566988809 933012852 689822805 1040515282 29409443 1054579325 409850186 1068136076 920803511 649845970 442904791 562855957 449085068 202693120 967433600 227549334 106151062 51646084 582547330 233588584 1018254226 459429914 745218237 241755329 549633570 685438389 1032511518 821544928 266719043 601281902 224199548 756102510 269834965 881844912 515052323 993329615 710107163 197783559 343125026 486090616 319814329 578246173 118463282 106067625 124733624 883203318 933538293 364022302 367790627 361389652 715384192 392188464 942312948 918323592 594959487 290155074 263451214 713379192 21930427 698493269 680484872 345037265 555457974 64975637 790605507 56426263 467395302 818282555 561405565 41077657 46864898 511988874 287083200 989148253 206339066 886758795 825049186 130937031 417637012 606403583 430060723 832554718 10348749 286286733 217478250 182199686 262386798 253143348 188065000 495947928 41079470 161813039 799882654 173603935 617220094 517330038 726269673 391847787 512092073 958171084 296712258 943493166 960402689 288498977 212391080 4529921 419961416 306740066 541839696 662774415 682177290 118693733 130364524 503647538 415476940 612017569 35301084 725184735 1004009175 729678680 520577578 56425209 209722111 1000636865 977038692 628411974 6342094 805232236 924975271 786500668 301374933 360297589 421077507 46238165 185019365 804285824 708213963 176852483 932588 173843576 20418496 638489276 986884855 553269574 825298182 977547478 1003610825 964907380 196041694 93735319 802386574 177658671 512208589 838732696 758183242 22018958 849631927 455735117 56793348 812214503 917576615 630177642 211613310 695351133 567702924 617522572 162839875 551784071 63938438 158538381 4584337 394935721 127431920 970359951 1060876871 838397238 64331158 590775700 440215690 200164499 688878483 446912203 169669959 218223263 893022967 651064448 549454099 68963805 932604910 893337961 414206308 371619683 836296031 683211524 293753369 230400693 145048495 981750892 409428935 245469866 151304021 1005074463 859557990 766952005 751719941 315251495 187912811 907807498 776677352 493535945 126026210 121396895 18948029 617135151 59094708 550834309 26669043 484185905 825354472 313909776 926565976 610110735 59147629 959568756 996189720 998894039 21332971 632380537 140666346 399806719 295766686 500388378 153764937 29768605 22966429 186673502 882357922 804870098 737709615 228995474 986591086 187509470 300931509 584516837 461138455 486399627 191795464 12890748 393424488 271376137 768510447 928286960 1025534051 312070295 738440057 1050551706 387455628 431607739 710788513 738570574 1020784192 974977681 848137873 810618310 735106709 819950764 347896193 445808895 162365218 854040887 586338181 28908318 634878450 417443699 321716072 26854182 502914709 715507271 370934948 212876351 428923736 838640134 584527115 609322882 446553976 416489148 66525459 517908140 699556291 770068713 289420849 29268405 790812714 804039685 58911119 752827562 10464162 642902575 594672233 883954183 282940928 390944644 236095881 408377393 704547110 276841553 1052242546 209537129 405566597 65793889 898499874 953170077 445678693 1031169968 177796083 983790552 504652501 238243333 176264795 587160154 1042578374 889739959 589229504 499451967 719291930 661400241 435427139 879737494 983003562 810963133 594442131 324432382 412990118 873589820 672811861 1035524162 433595039 7797742 180301248 22048448 1036311138 493703336 565785477 322519227 995641657 162413866 27226984 566058057 667731255 465655970 872297180 968173936 727010205 333036117 481099019 46963250 130832564 7731915 381080342 406951943 247417840 753369232 730034600 382464155 388170223 1028194595 886608477 520805070 561899373 275338311 576969876 102465434 22561641 359150420 233854089 684681200 473395186 1057965862 331178304 167382775 1025881739 130789895 152852489 294641923 998482901 87568242 159054557 400596263 452718220 987146092 648497251 226343654 490149111 329609571 1051749556 444657658 662484136 629156176 766176537 314818306 707301798 297153860 642418291 238481355 26855439 841760710 674425333 477112712 594251642 563068326 636877694 237612133 563495637 437419576 942115814 493795560 790753961 285865686 389824021 147090301 122759132 807474811 800126788 944312126 779040950 882905818 859941455 1057222786 543323448 226195231 159707652 1015085033 648300613 411726978 679838522 693048260 424805298 815917786 840464110 423135778 611959143 310578506 282405599 770651849 238508942 1034866327 404352558 999819628 394153120 492720404 170606053 576497346 691884929 579599159 522108801 897154244 398465511 736529642 191742295 820639502 86044873 654651551 945013975 787544754 501415404 454418472 976419474 346671655 676240038 892970592 223595847 609929798 767873127 44698501 468565157 304041842 798687554 497926756 1016059157 703988125 1018810998 12432026 248530696 585083339 1004787133 169756267 767941939 762015005 964019070 1036688589 987431586 349193080 887997530 502166793 868842906 672533742 545656689 998779016 110634639 968488415 1056701362 151092057 702892810 894915776 454286164 606090559 824851986 861780763 902468579 60270877 1020708336 66700164 380946089 1045673654 752841378 476319109 188030560 542161175 464103798 1021669008 15014820 539858819 1043169145 154708499 115381926 475335210 1061898448 772442063 432686096 231350023 1044810809 997780309 1006924591 404185180 850464617 546093309 222530389 1991606 443293533 1064960087 6666341 1031219135 911936595 886346813 252702524 893694700 170883715 958223180 679485880 780257395 500272127 537973456 507785675 1069028558 493887722 572876358 180153176 20518033 994639080 910925308 44198936 275190727 122638821 620793218 961164246 541141294 576297882 944409981 148815638 479524236 343883967 45735251 279156688 109199331 868264090 897491258 714043657 492471270 904297619 735638963 643333681 761275440 86045832 21810500 569262365 828371750 393006368 847215464 159476468 852375471 579455170 1054738363 652638513 367335551 311136493 169052255 885819683 847557556 443920063 486376097 911186453 1046300561 441387053 510076243 45238505 632467620 802180116 347337175 281671164 1020902228 178739947 973005141 151756688 1073547719 735767889 440899888 74393635 6937068 59090146 719869594 349040940 880811432 271783530 538235485 169884321 450007022 1001657284 773544417 952783564 981420996 604321190 1068346949 252364049 941125096 1055821158 1041036141 981951476 1047163694 1012062320 832016452 878224074 556633152 652815650 994290572 756790241 106718974 886884742 717107 929081386 486544246 53661196 1017633897 615069253 735222620 1071639952 570183191 373312104 696239727 694880368 72759006 936336233 229158028 890069125 127178876 472724443 126261203 491026387 384156771 112596968 415137259 834608950 496486138 930114715 89090477 426815490 997680191 612323375 248127148 88500606 619142500 232754558 327941728 124759711 96690738 210220552 76158038 1037229441 391131111 65284869 493997765 737280693 134697909 50118642 611057983 365090026 406908388 972313937 569485387 428794381 749455642 599391851 480071997 715957541 333657123 626716533 148294420 741794121 273627040 162568787 307883931 750005113 794477265 238244573 171981307 338623055 883066481 580531741 66687132 333347610 231508765 601632939 63995642 58591393 998766037 813344052 788729612 967294510 470749406 1035040205 858079679 95681281 345121813 145191145 160125400 131660090 794211752 970583703 62094613 280223337 671157257 610284592 647267361 530333928 405076513 113856150 564984920 704142081 343670054 347422568 896404066 588675939 1033580765 629404623 1060893530 285612793 688620370 306285831 858122145 105070645 254879875 97229897 137873407 330484087 737773181 219357032 711661869 262600606 612051927 838803372 636832932 1033155831 981928884 820016830 778513518 522468407 662771868 542434343 399870495 218954505 237268142 110207783 275019841 979466267 773019220 659819614 909040461 525941802 802883546 416480647 874676633 767393520 531092949 473626120 417339782 1037288030 922384966 139928529 128527772 938064563 558952511 984557620 147189817 474419776 331667379 639928346 381117125 58671157 112358117 507597361 497634089 817300517 18760966 133999871 90471462 249506391 711376283 752074751 546454808 908954426 479603500 945100871 614676648 963070979 645124646 427984421 463714268 672850220 256262814 317304326 719185178 520689740 648428707 668232662 573714991 289977923 155230468 112284994 452830693 595434223 316315341 1055127025 1033170674 548184996 88241601 891492514 230956022 263931408 574994638 795944366 376395776 10304901 530869595 559595929 563671638 324540996 206288029 250494324 1022366158 463478717 121559999 916207165 94805420 584921956 477703621 438676311 622976649 587985849 669682258 889951729 233747066 687591542 396602757 409502946 243266610 339477134 771118938 219499593 474301341 589892036 69444546 71881794 355170500 371636468 307160721 101235337 927154915 484004166 591172935 998026822 640920671 627901839 666227161 768493734 828777589 881076273 358015491 819268726 454664238 561756257 412429493 823487646 747702505 228700739 202259341 793155459 103478394 740286579 430062590 51478896 918472798 863210529 719276313 688538508 580118115 21792223 594292660 176421508 886186650 64417965 975919143 974638158 1030627241 179821022 643120882 992421863 140927025 163451711 394762698 180691171 41939948 62258655 66365931 644744293 46154742 651304545 696910685 930449862 592514426 726624636 17203914 892217302 708995577 969997583 1071949159 37119573 649874833 166434467 711803571 1022425767 914292508 77195908 510579286 565192916 113775713 802525599 1017388794 986299736 819689440 1067697759 587124521 447152600 970240638 335869012 243151093 964622717 17459424 180550627 827834874 599310328 4046981 323135113 566218059 1043150275 655591386 775595864 768183203 192289477 8616916 623791746 638677930 385651040 307251811 536572375 640321024 215685768 227173747 704734313 341878274 95183491 132272550 216670045 587111032 598284625 356640067 148563379 844822922 987290456 729985690 977866852 394040422 822617045 645778422 190554876 821570765 817003070 740732966 729909095 245445313 1032330838 758401503 428228766 1000207189 432678730 715882225 496343541 806877275 106940545 176963058 722319954 870841860 1025639678 337667931 567989013 547033622 727741530 890493151 907503551 10459372 573162774 574405234 923054507 470560802 445508169 820737425 31490756 1044446073 337738261 295542248 271200144 96206316 979044243 1021291802 604871079 727822135 779850425 427166202 172642431 1072778072 147479849 841503439 406406983 68436610 182955167 1004286461 782787777 587427064 122314511 468425657 145032170 60848408 188197493 942927451 794949018 851582816 856146972 786850190 355012088 444078214 216700227 553099460 227472951 434148623 350100403 776796120 27512607 301899226 782409707 180913985 932368779 290225077 105870586 947554104 188561560 944900187 752771880 409545326 826254728 330773071 775703054 571390733 361366383 205497339 41778331 835769446 75926115 123369950 708212059 113599620 129358090 749505937 269111912 632394676 868730166 362432436 716067341 130821539 17338484 126541920 664449148 204787041 740721496 112191763 363737477 465577720 345319563 298052939 1021833873 201218541 630717750 142091025 27697520 110687570 572336955 7474219 904309823 606122140 58706901 55541682 543534557 192820424 488601359 1063448016 1066741961 470243447 581190322 302618870 25619555 357004310 186201684 189500970 1030884360 757585467 644686098 5457900 602301059 114580900 580539765 517341633 852219295 200609629 980626589 441226892 102512869 65133148 793227087 681699391 241002698 661562443 484434254 851215411 1069433923 338759450 568706274 505432253 433025774 1025881428 701288044 20543134 1176531 70824211 265924831 380303502 982152965 825693345 757286472 41520506 274564726 110330287 454181500 1007224321 309606707 298936579 523160895 513312260 398027495 296263060 160208820 547164340 267855993 717114398 22369418 93330900 732354895 235056481 1022522125 12706010 868611688 947065090 816170623 378271101 606286892 747605264 216649803 206561704 130419411 94490915 947366586 920867206 920217769 639021283 510729215 375607310 1049036396 160326120 305878496 868439420 168156540 966298438 730303275 81701862 142110967 157664399 445857351 604806686 211348269 479390959 285449868 300395518 245139226 987291710 83985806 99327151 273252430 1072022333 525287005 892061335 1047770464 863700416 344260387 1855217 479426518 1022297034 962472299 713457368 626539619 284709326 884537757 195319611 623718821 884699131 450454757 820622997 403296806 385921241 97105724 781875491 697493308 59122325 971985981 296154667 1046170999 321158359 776111211 49594222 781774606 531055965 325270996 736597711 666061349 232635883 416456499 975819076 706410344 185752075 487731824 268363089 760801957 783641223 765655499 321449554 566108191 793866154 369579358 365855665 857235318 109796032 299401018 610063013 702033208 439238090 318955997 966466777 373636646 921852642 1018643432 608046023 23131820 70829367 243905940 589936342 1013906143 616804608 500851613 828137522 100135423 798529819 190928015 33091059 251881518 68713017 335074296 543943419 573935205 342953933 887854706 632275980 135285194 673145575 486035248 661333530 42943978 714153379 687923730 879146383 343846981 828115015 977356327 311943598 500649023 889511366 259855508 438263166 969610468 684562207 641779137 725698482 42338584 124490331 77230690 1054089012 117895640 495729417 408860715 733153560 965339479 754312305 439986777 451803415 424305632 65120807 801615386 310977926 773389563 1057221292 999435645 906851413 592634972 981066978 169842051 186488283 514802947 14317135 430845449 521210368 825766651 542432320 880803299 397989226 521528574 577350286 1042201155 209901658 465540866 117761265 444376100 742922602 629274522 227106141 255415161 272515492 728122027 691883891 517037574 486991089 692672795 777205778 793112606 283064271 323832414 499246240 532084414 1004808173 1042854985 680127158 1592414 1056589850 232717809 402377034 831951757 457442671 279267584 89727571 325875692 165571669 45983912 475647453 754142629 975800019 433480723 36978165 975831582 242537757 892890106 1021013886 54952734 294870611 418659633 1006810986 780683196 62937764 510973717 94339520 513392921 769633777 968450660 566238414 575343100 340999353 1062643778 1005296284 419033635 405465000 301408855 375926569 81517210 327761773 1014095797 47878181 702247219 21399977 561480490 243490262 991169341 501860270 11853999 46351141 1027093296 37461575 410181634 571292295 712961605 795493581 459135386 133653124 124303096 208959201 474297496 466425701 446977990 780680873 584220319 969898709 1019979456 563701900 82692316 117400874 884030930 3085662 41532430 188573038 456655034 706886804 837307461 863399615 516101721 442958272 553882557 49408422 330673909 785835748 440915331 188682281 1061714237 592608833 787494634 1048371474 860011935 737184210 330805761 939941701 612203832 614688169 486432075 490357094 811919915 986214213 802655695 951036398 363348117 436330440 81918097 304500600 897687739 819630957 1032597196 260503692 733026629 732121135 817759112 424056036 700527876 381400416 85797342 439348909 483180761 91937450 67906916 450557187 1032452950 36430668 55318217 1001117040 225186043 661918004 778280231 419375820 474110729 941251721 770891172 742912562 692223486 673303090 1073324955 646200746 73191005 827805820 336307580 50304639 1012409600 464552004 599288762 1042871038 144813945 426344081 63277370 358446224 129341868 120467047 719627946 660600125 599441759 99828829 539286706 814238574 932360532 219718785 1038313292 650231921 989927126 893754298 910943275 428035556 988203214 108998522 235699190 381999416 554418844 433410816 757013042 218029133 132929865 898359018 930503600 721802231 123615903 346391461 283249932 140641684 580875562 463385199 791791211 517699782 299080553 800867837 82575155 1067627814 825626836 389463268 378357691 1066463757 455367672 761796134 352074527 649229868 137086046 807933255 360834939 351206276 806765431 252088368 240436863 1050585546 941040218 985602088 51073428 736353865 10324089 964871629 1034204461 459722557 345651467 911996203 768015002 475946745 119953232 514095819 737845253 238043229 256090648 807287633 178083196 73752346 1011856233 72819976 493746315 1002223184 652065650 720435356 509234982 93189591 435773402 558190782 482568370 792572265 771132575 322007078 928784800 451263527 66440704 227635465 989220943 772794630 476087891 232476099 868197566 835321229 922967708 475816174 34986493 711131720 939639761 134050137 269116400 45043168 462941336 42188336 278425285 259275198 523030093 835561413 590764171 1036013313 326027557 413853235 1008111056 898843169 116847776 784529494 28416153 692781310 502108575 809569647 439701032 1039321558 364018470 183810704 323769872 321785316 673837329 437966007 86441169 93952935 704883414 119084369 167362195 476040203 673950457 487800579 67661981 217503684 1038345886 962613987 4396027 500783138 124026967 74632844 309808985 386283854 905199347 466574477 374967327 366009480 376527188 736131553 480486305 787802606 535706349 418754128 173708154 150665570 812555405 324643954 73515040 392397187 690600284 12714446 524143600 227191508 448242010 544798881 941211620 599172782 85020844 301714995 600962141 685442824 777807766 855365716 384545057 944313216 742791657 254505144 482669848 604113601 305613124 54265391 623806970 807186052 444204189 965401151 508839482 463378966 67862817 944163288 957638600 824513521 494686848 527805734 312834971 196179657 325093027 144419385 7081953 891686438 677666496 454832603 892222353 697734806 654045132 1011012948 824758690 324558277 152604163 636566952 490761017 230096735 553892644 256756666 39936758 520955241 1037689271 922670800 58458089 788972224 494741404 689659782 872715705 949088152 860779945 78793243 498528171 38639983 6548609 837272235 111752450 181516975 296453433 769728463 321412400 574625514 226296562 190360426 400674319 575789486 824518334 302868565 195971823 211681367 1070203816 415349855 477779037 424350054 654489295 1040913217 965730836 23561646 633140534 743853588 1064315747 634614912 4289401 732437827 386180453 901519755 812037960 232021244 138710442 274541438 816378675 682886929 879593302 428652588 711147960 200573478 459541117 48858994 525839129 455691921 301602902 613006958 281131960 291067325 647731332 556750436 87319851 154431375 18665300 263156019 115256206 292537614 261090815 718769897 557052966 765704181 820457875 858362993 726287416 344887759 68483203 460188887 240859448 948763885 834290069 592418323 457413144 1032819421 287180689 549703283 751080450 285138065 1018610550 239045694 882194150 126192079 661232654 330998751 306453168 301658132 687595075 259869135 131035567 93313815 439119420 445959666 660305944 795752833 963569413 924614657 285052059 679413105 1010552415 394274540 133848671 641667660 62456226 632510839 381343987 895362373 1002413958 1006787928 234236015 746325772 207743345 418182869 758615132 467663861 699566741 620202083 423496245 654142883 344818782 583124971 580799478 347382420 520332240 213845819 148441974 357017667 202812533 387184214 270268760 775932551 511707468 42177949 100890600 542692464 211446608 1013783023 161362170 87230879 843743960 770711947 827298781 32448605 976230249 208577986 694566741 67795162 46184960 747774391 318945069 904365831 973018851 657841752 718763658 594200658 24205130 87672428 562489956 14387851 923392171 17865797 400225978 918040949 389422042 418266247 545741975 969866028 306010518 34163971 581797713 483078492 135256924 832846221 602449820 777895799 264295396 409328587 605146359 697285318 1018622014 153478914 492061093 253902967 994008363 210969707 911920417 991202546 503185994 1000077500 394376927 1028828498 923395367 372101329 65158049 368913345 669147417 702635919 280230042 432703646 272328015 752620876 220690683 566683805 925727860 367847208 480199345 234030238 423847961 325554848 780951077 825907146 26107145 152309681 557069241 1021576067 455955177 216434615 78884925 415864920 940156764 316357644 549991783 47994212 516967350 691983308 215332314 707882236 462060191 370750154 155008531 1015568284 1041095232 976967270 237763541 840356046 888006155 292896204 979368075 60896604 116573886 386069203 370219759 884384237 180048156 637530622 1059979941 70922876 159851120 425337111 721257488 600226279 763334164 394987443 606689801 420375028 115529304 961931179 144670887 421738570 31021751 961571176 821552014 158274262 867019441 582889179 352560989 264189367 1000586728 399367540 118249134 499605532 397498631 834672098 1031785095 392230327 465266875 873585770 6814215 48942798 1023649844 74970331 975097067 125772613 244760100 826981047 91895137 447451335 922753124 595522986 145317617 469225304 648446208 26813169 313424572 840813031 580158789 475917832 2479897 362931813 110096362 794617080 540422164 99875823 481393164 235101274 681867474 264931144 893288582 299677931 937731935 689877129 688202674 76777775 312501468 643086983 524610784 239293482 764113288 857110252 793786942 76209826 462086914 850231404 292515004 158963599 883556652 497760450 256218363 598105231 1011690261 373640379 705994366 545596975 452208077 161426180 501483847 500379165 560635008 667114454 850725811 423163088 664467202 959852560 513507874 198610466 657912892 27865042 290492571 763100905 405985702 191143208 751203933 1000077406 671258887 726040477 741805500 592514175 821900797 208058324 160115669 890468676 690011869 439151552 366506079 794867861 689132675 922781621 103291910 451473784 761643384 641723686 687542278 230983338 917541497 167299838 356354779 253511087 606444129 491378881 1047429998 248713922 276560016 510981121 319334474 59743596 870410336 1028213918 747015153 30644778 325756119 471725627 441460031 507872989 461052241 290682208 1027278619 334832701 434065368 581787870 102071715 736963734 1033349808 522491923 957481510 694979729 797048837 763650170 197277437 892613058 52578767 586911392 141632408 709041964 708974097 346621243 800330812 281134569 403050771 980543475 501917588 837206710 640387586 753283369 339314227 668860621 998515492 441823202 765776741 875443845 600572841 828157846 716648744 276900734 493478996 189271801 767680427 1050663257 909707724 100769525 575714655 3639376 792489903 342436301 343669908 185894889 737158103 674816921 199584009 748940610 166918457 267094986 84365410 10085279 637393937 1001170289 425655214 762237467 957118588 47339098 863216060 284311207 1060479087 451383332 170172683 232668486 141825941 351183297 1069542371 1020270717 883448042 336232136 451804178 178804596 270939454 973728768 674459950 713927343 928914612 260361713 808689984 869896857 331415841 137794502 282863769 15625500 569813271 442181965 999540343 83351600 470938117 283946399 778026411 239136359 392265617 588376415 314168718 231181104 162412126 82688209 920593414 555264125 366104738 1037086064 619293724 346787579 52692371 746272864 826249067 996079941 110902924 218419896 576761899 329605796 841199688 661916713 741283643 375327019 370091570 1034128306 248997573 843202938 686711347 437784264 454430648 29290294 876357945 304190101 902987989 999404276 532858226 643430011 667968018 935815051 572843038 334899139 371557279 875947116 300326973 523180794 116140501 669257256 58360307 205495240 965749248 54670124 797801300 1046106906 768111035 1057164489 94372601 910871489 458917067 199902103 938667814 892109199 202784332 791837521 434985150 176603719 320961293 475800300 265297320 483052029 572696192 815388522 792498893 71283205 603688637 698054544 324024222 592449917 500694057 979199002 754712894 6413025 421385986 559863339 304220217 971732798 935160406 29315625 655867013 232887100 61216346 659730519 101773727 766484488 591036528 65944755 600120309 854308680 804998113 772655673 133173494 721456785 576182498 686834035 651136246 307586738 628465311 799929111 102482038 110621429 675402179 1066173433 887772659 544021960 225992721 662325408 965326584 258835780 147817705 755283387 388629891 147765256 888320930 818570286 817909724 569139644 813331116 355061002 839097727 748514849 874318699 666176812 495577356 873851207 547242357 787495584 610837673 155727069 559292290 381827233 957300358 214765477 849794715 433388043 491118406 1052183307 935759333 869596475 850922216 689826903 787336440 750553290 192034194 53345804 536632987 577656333 1053384562 133505725 971285657 589711096 785998709 328568203 318319682 950303209 994164215 874136156 331181685 1073127533 262080082 40056663 502420981 992336473 1025347087 703181043 383003006 542727234 249307215 95355319 172636778 95976849 331342479 329339595 567047980 53334205 453795168 809107140 692375188 116541342 409475146 263620106 432275276 372742023 813614047 104189258 164279012 447736094 641481494 467128452 591874294 429657512 93407177 246193946 754234950 369068283 737327321 745760126 488412298 132952853 440172056 463357336 213557418 956018622 461180904 753957306 946079678 943312047 597165178 1003001634 37768351 499910935 1057402178 55884141 984586799 144091537 670226983 77736441 889864708 843138793 584450283 501323746 122295045 1008587954 865539564 725924054 834882070 671978345 486686783 625753761 727305049 1072064072 555912237 967549498 300705228 411353984 583086040 478650766 1064941100 433151947 315997311 128153460 256587443 964745273 614013040 210718009 1014706348 601291885 25418375 343789514 929718824 872990891 1055493713 88936612 683621361 1004539916 917338135 662287937 475629140 875839412 38274775 899962442 351129907 505603867 90861578 718178829 993887266 584355902 858046146 965802840 773854271 536737246 385351276 794103552 554555554 80409596 947672906 117723157 640669189 123493215 727415166 23034040 756579723 720355032 411076315 395070735 526077201 1007468084 524346608 729564171 503105521 750073520 857456635 904580532 134187657 1031926425 640495408 842098584 75131928 721109828 901861003 953784792 576162670 373341769 972528038 372202192 85913252 283402496 1013048917 1053185784 811718806 537007014 965511233 643638283 964637688 258921219 432451052 204200567 1061276835 186310839 121349259 662974822 489908268 25998559 832893002 753165172 527913560 517040543 136766136 510439740 764908035 140020862 889604402 107044434 610184913 80097633 452361517 980737796 973533468 109679891 265350362 835547490 587468738 571014598 888270624 163861234 575071328 143563771 212122693 551511861 982908800 795711977 169659786 1015873970 319192811 784469324 179503222 521562538 522250849 370100552 837509700 368000232 880625336 152274838 358855372 893755564 62997806 752346550 724016178 703863126 1029394259 324324094 184704206 635816168 574425921 121425308 266721794 743354209 135813802 1060382286 654273186 135485400 964571251 843746332 734753772 1067767052 719052398 672197805 773861707 881528379 952601312 910195726 454939800 303488091 1022317446 807808591 970578063 454843477 328960942 913807810 506178483 820657631 430912974 788046363 634186996 757586204 381075901 746995726 734699363 234818787 361253328 959199654 162620185 1018280382 588992026 1004588602 882302118 655551089 205409885 747820915 736252413 69046536 240371605 467789441 526799026 708301490 327973554 99524305 623964988 949072180 253562459 948643332 1029918427 525677497 870694255 358296768 360692836 680984530 394711834 757101564 305708848 14128740 749815624 101167258 158613741 62827146 599533932 188878221 1058502601 278026054 984748888 1035502948 401346937 1000430771 892564819 899232499 615780172 271863229 888821529 241425328 882932777 818320491 925185543 289943578 116560447 348223280 818761367 332358595 767596882 520102806 160195457 27066774 259269437 531425437 386691445 521183378 1019472995 1019796138 975175257 1032784473 552660399 141156975 555852972 195138876 268935035 202641361 811483450 62359017 869912463 533668703 1055657209 351557949 673526403 889024956 793151447 806036611 727356314 546133374 2704175 206547830 336667208 847368011 571183797 768170546 458467790 210864334 1057957294 14796764 156220712 524867605 854844112 774858068 541084192 316775898 351050472 279489453 75954767 1059460669 152287113 208363408 382523765 49691864 636665075 923378883 254821447 1007583574 702179227 586967700 529886166 867817043 1041490250 76942943 780201366 887716619 138090395 239379676 141648479 258804957 596813262 1026356146 786527377 711685210 767059841 451274448 2209039 700789422 907679784 568388287 767051632 482740055 1024601391 107322181 914430223 395506049 239887655 693923123 763427202 340992095 667616919 205332495 1011368482 816796218 405318916 100421887 424219872 229832550 61660620 105860394 781169227 719332451 370959540 996491303 181113369 267975340 460499112 870531587 840189240 463001471 645850893 874067540 283751116 13218952 134488722 679125607 468160970 633323605 721903616 728799604 785091374 1054850342 27173139 330533272 788135124 62295909 659872409 532820386 93219641 260341349 684386941 851902220 477286647 452605348 556783711 768017442 780419076 850610519 143809604 526397040 417600104 800088219 851454920 731397194 24219515 448892486 54773234 168451861 313506095 350314841 618795396 855538888 734403786 971339550 233685538 105913812 18713303 635327900 456488520 637252074 419576106 286881633 813259378 293878819 1052384821 692267787 308992673 839297554 199880670 64079438 502219914 999542603 953314539 792126377 851052011 49932057 877392304 915007084 565671414 202947162 465474206 127322996 946913567 1066552508 689767324 894839429 843692037 469250791 491443087 912936477 643067905 1026100683 295631587 812730351 763362641 198987128 185311044 592172315 702744944 124471119 592987795 187454713 428932235 374437854 740090713 972073393 591295604 1002869136 540478509 657674444 655034772 85550070 597240830 219799689 524454298 446404841 180816468 117933810 1008380328 535809801 219561432 873191631 934635324 158852921 65090668 110832012 105639398 38644371 690741314 769907560 318636066 500078809 867545979 24247332 646485719 428071617 920453389 969161142 500045528 536927214 274262418 787616069 175727660 1003972735 763577933 528963793 320431887 820235732 16724699 837728834 20731850 598975396 866516299 196814923 285948623 866740606 937017441 946568326 50063606 6314352 758191630 951875327 974691643 36271613 433095073 832469847 15793095 1004200937 705512985 682048522 381900897 611316189 701429394 645189701 542004116 428580833 314858388 874993024 752120013 385725806 894622464 399013286 214515919 390442385 221469998 222776693 842189101 33314860 997173839 652740205 94334754 439792786 457178029 15421573 291913121 1027407119 317358582 330395477 579429593 1021707733 455451480 58500320 256983526 855703975 657797298 629985725 356453584 461069235 293742323 864704693 676122205 896791618 538791375 844650863 1031554705 925093362 647532856 695529020 149566000 9661122 759349047 203219996 260171130 83203139 436705447 556540482 670292280 779276628 206156794 727812916 1073693032 737444517 279669599 943746596 1060314996 870372989 78564097 192419778 241595342 379864223 860355130 875531665 546872037 976701106 125499276 554466947 146622240 1016655772 153598672 461678440 1051282700 511142037 560881072 280972741 85325152 401269721 393311189 895467672 635887478 787671278 331248340 735485794 820060747 612152966 325130731 996357599 275271362 964198012 353091979 349377612 513991150 430716641 269143292 217089487 18209740 1040427323 588668843 424069846 671001664 805054066 955180815 124913620 418039039 277967435 217765932 84879155 539573588 983293932 991249064 240001140 920644119 852366524 1020709659 15081179 200624081 931847153 431622632 767524636 136541947 247204233 924201470 147919000 11178993 536072013 514269487 118937479 228026367 158467240 532484309 419804159 614081894 506416860 951372816 558064758 142939254 624494529 806442768 693541861 834812632 303442891 223277709 734718682 401060097 389090079 136489567 1055444489 303203859 831482766 869369308 7881425 658400432 950114188 995518896 927602110 716978858 1044237609 403683348 408612422 675996355 1049806803 393686070 287114060 930778714 17035573 810140713 662815769 114156989 859712668 146692551 221460758 533940796 934503525 364634284 851042121 507385714 581197918 493916043 101642193 363324477 169434591 956792454 506806137 406999839 741825843 655539589 559542458 749314389 663999027 151093575 289912176 1021700765 546299792 560983205 224698379 3119565 20726843 905045606 436636646 834861654 908082953 695450365 835726377 288418303 880342177 147660766 706426749 277312815 660185023 349063190 631003193 276135968 343227168 565683363 103528333 174219695 239516556 975978274 398824433 133525499 631079816 158551751 1028617980 821743473 30828196 839017352 467415455 842135908 673088983 917097380 972621812 282643818 925516997 394023678 892403979 265966274 694971314 657466320 853277458 1043897898 371568177 934993119 454527730 472892010 479303509 868592781 157517681 644261424 146080651 1028518566 589191218 762002532 695830956 577399599 389688071 739047357 198683626 215147197 470131243 498580788 247726228 683677369 870429034 234524450 529685099 781606234 805023228 308129020 84571656 324365811 1057553716 727378681 125067189 1018465357 1061124077 13349575 957338501 184666798 747169893 792567333 747088533 552754290 503153853 54408381 394248541 640147737 813194784 317818172 603582125 103293755 773106984 1068971923 846210845 1061499097 586446635 320919337 981816010 656070266 307564801 744997501 910666159 286125814 270078811 934620699 966758758 145462349 113073758 721781234 574514007 101509184 823984829 181282001 1039040693 241754724 822211493 779961047 932441760 1067319799 201762583 35804045 133852232 166722984 438597843 602371772 16194823 857769132 925809550 647160588 679285800 341865581 870858048 368301275 685506342 44757856 65676421 264649919 358167003 619351474 51700146 165015356 772359725 1050550389 146772499 400036127 509659439 963935493 788832913 608100241 119130351 76612689 427404014 525339086 630980475 777433371 360872935 1049522360 664460583 62918660 192670172 460186644 125725981 83856129 45579020 17155420 233083619 759428804 916497041 720241637 829660805 842799798 486935032 770625928 372046442 752406025 673717517 124263959 989035120 365329451 166826522 838937988 498519239 625589145 180124892 39893196 878228188 107782682 347305113 1065046772 1069053535 484450768 235925244 174746972 414918786 906288 708800279 849182865 856479018 1031442196 491871019 239992570 680719105 609829003 836006206 591958848 1033732267 73283593 886540326 30985858 694191236 678607058 556754876 66772534 814198099 347665265 529854767 243272985 745668047 903439973 508523106 800883578 987991271 992517109 298475809 962716191 961229077 110059685 123286709 421750423 203392995 380110501 803382643 656846774 948834301 302976239 1022304455 736915536 796025937 377015034 821013459 379263851 1046062593 285917808 415845094 370712821 387971754 890810169 514790740 904970188 312164218 63642052 77725773 350952150 990186071 94376124 70649740 636318304 616335706 352857575 405890587 976309759 642032683 695276004 509921023 378098413 471144213 564862884 996356004 414354284 481345432 42972178 961662193 63695576 665714664 906840618 625572062 53852149 265963430 1031782407 194631890 400350716 49647546 636476175 387532408 854045538 237288552 576474454 891340751 785223888 185669774 496735997 141782209 508572048 272403730 945375828 504519107 1015537778 339519860 410982666 166570490 265046923 151699530 588776657 304724495 355136692 739395327 817993652 71258529 616061401 234688908 1039513360 178493319 601992705 722725012 870988713 489358896 1049576007 98092488 61393781 912168313 577704345 390513816 64819606 500226378 185720947 709770773 628932035 677288432 937172549 420951661 458976033 683456210 644465351 664297421 228439077 161921152 840815405 204215434 248414626 740185442 260270249 224013643 256000145 339327664 112430290 1070598852 633075491 528353183 716157274 865900587 187038741 956956024 125733653 232062019 684123526 297109164 702751015 321282608 648996852 837025995 249686767 142615752 924264003 508106201 683094955 53369933 181905190 817265966 217340002 931151930 687080468 381488942 332098071 813497649 771968760 726045009 978584169 1026838739 883114404 75472383 170285748 87307166 466241412 797360957 269541232 499345494 1056817907 226744006 301900986 197562475 853518796 983586131 399350509 272364024 571920290 75898783 244504313 198896686 628731559 1037139187 213076743 570516996 864300440 410646503 274681439 125768566 766884691 157461970 956749634 410115871 339199222 555607804 58424201 40371030 27402892 139240881 1023633104 858981412 362126054 872381128 1031360561 724842508 970553480 691088790 766225369 847744931 394889685 926191162 156909395 37587793 820666179 461354973 177209459 973267156 538290895 574446939 667294018 75409410 851938409 502148637 953596709 637447846 426606175 47640129 500002774 179568407 866490661 352277985 1031297730 168864006 835383052 912861794 353251984 499170159 290147962 173534735 683442230 357647309 376906440 946629361 981734416 1065466257 820054420 450192923 74074836 664613026 1065017497 763794835 1026133536 1072730109 354577322 209868577 82967639 896112675 125092036 276769222 896963039 638286446 521221003 848914516 1001870123 796395613 481884499 857925594 690466743 340331650 805612123 1021978634 610513567 1061225987 304768668 166805926 28143110 519403325 413714576 210393971 889421936 626472963 77824058 338844756 158224169 839569165 1046626017 172288188 414735029 479578194 840969285 58364812 833952454 1037244361 574677695 213187272 113806946 530190145 823349343 395479542 481884739 947252457 899806364 762057467 415863314 997068636 22051088 740161995 452856368 540763825 825744266 342689843 841243556 348250286 262713943 68190231 142589265 690328057 522035162 267854026 323836231 205532936 528218306 142078000 385237172 117919027 709169392 278570987 824134874 306209296 388732738 330921747 943810401 1012073478 148691562 978735231 462379373 308232420 416855388 623700395 521258535 611893895 4060851 64708786 315037341 605066956 195427544 631225051 992910829 394586143 57332185 824661518 990016500 54018788 220567678 144247635 614570444 246362962 859963063 828759671 220420678 257761225 959701616 44686130 226648407 539686374 528814202 466612422 464626700 655436078 327922903 272575898 862357467 86537699 792876149 712557087 181333806 778562732 1064400338 499769593 436581871 547754419 749585483 576663884 770546558 743200624 276788358 895424867 557723197 1000101418 957738685 1021559680 986836234 785954258 4796344 723770307 376263190 193644381 616973399 72134486 166311801 586724808 657235881 643610152 874199720 202815375 417329672 694407284 629159592 892353157 708064884 635403237 492722764 489683860 1062716371 495056527 418188758 273404878 32479310 869488809 427784816 449907224 139592606 788296017 283385019 488668936 699208603 924036885 444995662 454790202 276590829 950395809 455355970 50776971 388519638 392214781 1005084176 580456900 335541439 330350357 175894183 3753461 290690887 617993018 496465623 157798367 266677455 63089907 611911357 800239596 795563173 874182548 349976214 559761951 865034963 688455507 567640447 734513621 349756816 411846432 997526996 666375690 1015877789 491697293 590860911 303985691 291846246 509314755 921600976 353463829 713247201 251641202 35246912 967178218 670287665 385007655 142646000 356865957 413367457 398606991 229098254 855684002 362800503 783676156 659120968 40815559 825717797 23310701 371827628 908658930 1067894712 450601003 793911140 284227435 312523991 338388996 82629280 72776279 974240146 120142162 555865147 87264172 656739738 267657570 906656773 525869442 670160471 317358410 138929768 909199846 381222936 650558794 1039254291 1014878551 882285728 384150937 817914027 442368731 44991156 644180321 917517444 973439841 1057345718 773864140 947545627 178183604 595121095 659286319 367796502 42805132 762622912 689046868 2915443 929636796 364939404 466091290 1056560680 831698537 240980082 54856461 209186169 225881175 464962225 26557340 770817208 845883777 899285930 645531036 483380908 473857018 180565891 1068754835 201909707 847397903 238084329 1065639537 478229046 278901815 272781559 586932450 588301018 335151014 656318782 250826893 101943941 581412489 147352113 612048808 372776196 755647155 889458821 832879499 353817696 166397825 1000940682 647530799 716834110 60547563 635135823 988692436 852289833 639058447 429837793 376814733 730700620 459088767 110493690 441004892 488440318 432935960 174273097 538780442 557332583 58618774 651495962 203946046 845980075 817837422 722043544 594399304 979791446 770243222 146503251 756863139 585903208 856281531 1055529294 149348593 853287135 91609281 1061990303 400206152 203623309 473602378 396583527 102246620 383485221 723574037 520248481 550115048 138115267 253459777 308593077 986737991 687807979 442513975 782153256 713078425 1003311288 938896146 82958442 220294855 510195139 606122454 927798542 328915969 896605349 1054213369 774969705 32035102 195815898 965432674 536084205 512359290 279521104 11038365 950267587 646239434 809539847 407377379 467259250 538844764 389786634 940609979 580910185 699085999 628782094 26672412 962350975 888785921 858045834 635353795 539588111 863359656 191366850 290151538 691358927 596143216 392892620 248931848 656319051 95550827 982301311 40976221 564274149 951427676 199887586 854274191 111683160 56446051 124874981 763694277 557890501 644472092 1016926041 130394363 911137240 1020843816 504554433 183538810 629906547 421339194 273616509 483344828 702405203 720408838 458191495 645712995 651155280 870299761 977207696 167283648 846083907 514700418 373120774 336278881 783002663 936116153 961587008 266687952 523834863 429456977 857358917 541444553 693429621 891101976 2663737 254627020 514271475 8657325 1002543279 625833717 454361124 734237643 1004856710 720508693 602760980 110121302 933279180 891430057 704658802 265337626 531643131 400854796 1005196201 705994327 788061632 1009916995 255571467 960562563 984430982 178575533 384161743 1309752 658060144 428799078 246783255 618439337 435379186 516152437 818505113 750733303 692659899 623575927 448987935 918213945 66090629 989604670 644247860 51402395 704979246 335950438 1043326304 64459708 678731854 446054493 298774660 1024441742 627060486 661969218 483431162 336648817 445313432 919444934 541755779 867319708 555596061 575800737 602776964 618364079 275563073 922311287 1020631893 646437003 1066538779 116460895 514734471 960451197 80660992 184771312 791860945 318011158 87059613 944872353 319158676 603461990 293238672 651008138 986691470 77753840 508945813 454659653 79823302 427016560 893382764 853842542 728415860 915998313 196840052 292516947 615192198 766684615 56464153 376188123 474279722 165401932 410340837 82145847 820188680 392929370 95163798 190023977 481634283 472324849 484138337 496401884 318005031 347399239 19675303 714101430 964504884 1026048754 621764841 782525268 700808242 189498378 152602901 868263458 627869750 133881200 393710817 708914810 760714709 962019213 229822319 201559565 561779494 165270369 302841768 420445773 486112229 819654368 891976730 195782275 886045463 400719437 191188117 202426799 671312467 199571225 831279280 106285886 482269911 711877996 309095163 730029807 792659852 128003008 217800550 39483489 855001874 957060079 118380484 923186859 131920519 500153763 203810250 257844482 843804841 175181709 433587461 691023164 318312325 480328745 973132079 257786760 389114506 198048033 929071085 757145665 100391920 796604267 707777123 168528157 732557760 842206473 667369863 1024727282 825768646 192816951 66089487 685295846 214248010 84003792 442089272 417994787 542537277 288340633 731273908 180617898 624845759 523279053 1045784854 105354972 426966665 757553995 794927970 849225665 794293624 91106703 6228907 298071080 894426320 446715690 16228747 978044153 701779793 665177302 68077886 938274515 507454370 582410833 877088093 543582293 178746438 237680394 658418185 628881811 754384851 66846648 442399701 917201396 279412413 57340769 404183342 271930329 1582028 1000148270 735495962 892296954 1047991328 706605956 230512852 475671469 828060202 918574460 533278618 391971195 583331928 982903335 442797911 880879252 722666260 653105686 201110044 964872171 710038807 753189696 333054774 203693893 896118664 999683304 286026475 358043212 749676932 173447635 811895227 940808758 1050634183 871692662 127613109 176170876 510901564 206907273 751939498 875131355 670448734 341979054 814066626 689723475 1016179255 764207184 278579371 980313894 828335872 282464952 995449644 638289852 699991145 811939823 390835037 320620051 1010435563 896466582 166000835 631645892 1039972443 232698157 899733922 940806426 356560418 195977343 19823550 700504608 598127767 717731661 766072890 653472822 502276976 461835174 357320715 246401373 67134344 19065159 466801782 14903828 591002809 532545642 55256422 1066187338 778676896 950367966 260284913 750977728 671728102 711270332 332783058 498595826 977732541 512178075 276453760 1036938786 174137596 584824377 995160236 294524038 788660231 730337918 627987396 20953153 648539195 445876420 967845563 985239087 983440169 796157236 261380352 79332603 990814683 1066705256 524355294 683842659 526715533 861979285 701651995 523340616 424020474 563071204 66076311 804294599 182199598 474385555 809969262 1066558530 862594212 43376492 338775558 808078313 48422022 326417208 349631660 401173455 341172995 1038942097 277958733 663644527 877134671 401290312 594675819 898304469 898957834 404097106 1024539267 744063975 89315864 733074197 923219189 524186726 456477375 567016287 641697471 211257185 109230797 651124275 584012981 299465015 719346195 195181286 257106808 731077257 14048188 90277060 989927987 249799124 563734426 935557533 786861179 444410396 684097089 273188357 470670463 460152376 896243347 291113739 355944378 406513359 178254176 230295582 396278879 920712228 593401007 791276394 895440441 396626264 369707583 828382268 293569570 284529181 763477795 644685621 376277984 355700388 242485425 487080974 560395775 163368505 273734688 350129851 975071349 715427204 401011541 942740414 533370190 32811813 393102188 851382780 486055543 131565940 461780682 462989169 457242842 286534184 933077945 622145987 182049436 28931292 782745443 188401676 1023719410 463082870 100793354 114425104 849950788 914354332 844257600 186620766 336907473 1060981234 476721075 725824386 401603960 788837372 368266188 366031473 924803815 963640462 903051612 786270105 206932723 1009742522 840798561 747847920 221136682 248988628 841349731 46783426 927581459 958029030 869138824 799153130 1070858872 292793053 274147798 443217909 602621551 342067611 370662900 57717256 644527250 442853684 1039049248 22536647 241652095 218757833 1069845195 707265119 256657249 805377782 452910423 220110178 167358259 493469184 88522709 823969787 165341102 471208222 671403285 592715057 475463791 657811504 963843813 731708489 914342380 633339920 687152250 14684624 576369864 1070390326 879650098 324406875 313745474 408859387 102903049 37436920 60900161 786084702 1023404017 873964533 810064835 780632572 609679478 409248206 320573133 165808052 622069285 43352685 301071034 429554770 815971502 182679093 332031718 43946849 1033739938 866430038 943793789 625259653 230677273 115889049 680497481 346126347 341080637 716441180 692138575 85714803 1067595611 546086766 389662733 24181211 778976907 749140996 140599047 673040479 428096021 97234484 243509213 202627662 974232131 910489073 598422201 238890394 276626491 725823094 978190249 472964673 1054704929 287012675 878102190 969078655 391903598 989977553 639678820 783985705 56915050 803752814 602359240 632898026 198486833 505713741 419578802 59039410 205548967 37191574 91375345 552175791 551845349 187425064 1002136174 630384409 124860708 298476541 175704819 317461924 492236989 1061910025 69125139 794346616 26091000 530966493 28815626 300459937 290484353 987237130 388176349 784461625 597492114 568250330 249714779 127708654 495271888 501548387 612579581 413474090 831813614 502633696 356115036 845534859 345443807 846954591 680269428 173602280 1029190770 602008143 489399083 873298205 69422383 671998048 15688125 1012806884 796016743 1015851106 271110780 130953374 456503922 1035526117 54817507 1023987482 34989845 279351357 748630173 491930901 978165520 4171068 149879551 1561590 16174767 15377100 230608412 1049376904 319764586 292977549 112528647 651702279 638653946 538849947 356863747 469178851 55032450 37912531 664244964 76382326 926496638 1012246114 785622395 931992988 760052571 317934002 95449812 629600355 779978737 680392816 919321419 788914170 67735909 146262950 492124396 251197703 916267794 100510435 155425086 686149791 853894375 511130662 344833724 310071624 764576173 323086222 108985236 401617904 1055867571 740222337 552483828 1051026061 111347670 855132189 486614163 250878861 210865890 768232812 924988786 629505509 1064806453 228817602 160969953 390715765 464050297 800320547 350786389 926716665 216363588 342268273 880884574 388989385 553112104 682946291 471011196 959143121 986908765 812786808 692434245 839640233 329295329 1022892258 940455969 746098671 148518718 970112971 331873120 518553872 993941599 265510510 604948762 952891089 276721824 673086951 922639935 31532817 901218591 840713752 328190123 173078009 91527664 940046973 442760213 87749855 484487361 720522375 154375479 18972251 600203164 221164918 601970547 445640074 514920356 977303325 938061225 324519087 1022520392 354994254 753503449 84299509 400734835 134125998 406510273 887043558 939577765 529104603 335593366 394095133 955859895 648878757 1013780260 951071664 517187427 835523705 294356751 399143695 979325224 651882526 814108966 66512744 759547374 938630619 152929529 347734732 355085840 500351811 735915645 167473325 907010199 704952274 78059215 638523985 43091511 337370870 493745790 766063903 146128452 1009739824 162437618 362532081 632747970 35636396 230224101 791346724 572300691 475253893 1032241604 930332435 20109174 661691420 582421691 561660324 17293545 633248355 491608608 113470635 148786553 691396571 790026445 431086102 975360700 313582326 5780492 291978742 699331923 753333274 670266435 491918230 149118404 641083449 456571952 965043811 181185469 389318141 902955122 567083192 778223167 777279405 716844871 487784234 767282007 448781322 365643674 562214742 89078115 445542745 900964879 702560594 395761684 1007627590 281871417 22454068 239791842 941475108 596323307 965484610 6314157 387264192 427757975 470440988 376498011 401335336 882757721 584950398 777232870 861899321 1012454361 376320877 563121334 69516076 361229801 182361431 409506905 669713488 536135770 355572199 26469098 952181415 799221043 27938437 775465321 301155775 229421151 889246856 28362454 419278888 490468757 225354850 197697249 741429631 16076925 276025109 211923871 476604565 224965488 881371180 829465083 472563660 875755747 20166635 735572241 182535524 60207827 262805892 846666619 278233073 589540934 978399205 846462665 207195441 742078319 692479180 464572211 618185617 231361797 1009908080 511106812 749851010 156455270 421439298 435585148 97798158 1441969 849783456 398219160 308224341 775745475 885970441 914309813 130781830 708534582 835737409 66353471 321211931 307363658 1005816561 432372572 358472229 676604503 745737658 651434855 362025568 901674401 447411850 906195684 116591313 169960083 531539765 1050869778 247084236 253846977 363981304 301146565 63275429 633018525 578564295 227861161 754463584 287585240 635456816 149476601 380855851 450154691 690138836 781815016 433749283 942387398 799108392 578535782 648795266 1066466470 844967715 596393272 785602321 247597017 260383367 170712819 407000237 701747771 316877228 495066950 732699329 564720249 216085643 184803565 97106016 458543481 554546220 265038110 603868602 27606654 1023699709 516770908 104331411 482456544 558482189 241946118 178236859 623324999 444583021 46204829 401022402 830043319 666977449 423151434 127566568 405842831 731601365 452412094 434873975 1040766577 995953541 121850268 770858312 32666604 311098914 22646921 180788254 665596457 531868124 632143473 864071449 760591276 184620023 560489027 1036823117 879786977 93219376 320920001 266891023 854504053 158473513 246204525 343879557 410197589 609310856 10563454 525500771 683751665 53967901 404902882 440597642 702354168 56541167 27744038 498724730 632493722 950649191 206359282 76817387 450449003 462053085 936898413 225020880 773577506 543550088 641187178 150101716 517724653 1048613801 1008433783 708059010 276266108 368947583 368857943 903503002 448050544 815793801 1061181385 325468107 841230995 1013473550 487720309 910812082 1061496757 1031139780 944344023 383897456 745098499 812732760 751570215 12518327 920639774 972455001 587132434 853698832 46113761 145849596 800562087 199792326 70254560 635375274 4886269 981885594 660395363 648496106 568760731 99058635 332340498 825938711 589247557 886989686 513206200 110027712 291973461 835392250 563279918 129034118 744758256 214079053 618250405 201377564 658296024 389708483 526805613 780288481 459752198 67485919 55573493 180771996 566981647 121264427 1028998629 411265435 871411999 427865268 595220123 652912701 302995867 359861015 839801629 257057366 514718232 326044418 636261406 1036736101 511113059 650420998 806036715 885249754 384928883 991876904 1031020061 253495061 464278270 128734652 351188440 253095718 406592528 757111005 188620012 875690842 325179420 707112893 497288368 810603148 382303403 140160712 777984840 419466937 21736433 332355066 53836321 454572813 428573480 643436505 335464785 108181029 136545755 295092794 375012711 104489058 778063201 624262619 872471282 192153197 649097341 413145101 143267875 348828568 851567044 682908295 1071290502 588880952 40457957 553991199 778601798 767975611 237181165 509906688 210724154 29652803 487534524 750584775 1029176086 287159190 746524223 171512612 122982163 661163185 58946037 1008418214 871866050 689515525 925293531 976434789 829727811 327102743 208570274 171656909 643407467 987272101 58768423 892798391 814678753 478397481 810001369 1001169444 672238431 719194613 521407473 272314669 571559014 1020962224 986534163 443673560 47482625 341911181 969952171 859012342 53563873 673050185 336557138 633105218 295375524 252724480 730159360 578594533 967612258 621075312 985253514 659610733 151065711 941621877 40001358 626634996 1033494811 288838676 703628500 1010370068 413851316 157841068 728114199 686716863 804006734 665369758 549734129 268432714 49648806 917458151 176777010 903476144 388670742 101866289 333111802 847860513 41008295 208385433 352334593 417192227 1008361963 341275452 335526497 367498970 828665550 1014803107 341228949 138245099 371479833 356457452 1038327105 14098451 969963823 700295136 780131980 936105902 318422714 298989123 451494752 986330205 527643167 382497774 558334374 80890519 179132677 904514560 1807745 948597172 558047274 105861512 26000557 515671070 358572799 405807334 210539078 860117079 332262988 342201385 326134267 937190971 761273400 300595985 753231248 283154563 295750970 62622907 753600629 775964032 940373124 958881621 241484733 1016711679 781912005 157167379 270547039 386844193 698579474 886730703 796673305 760970012 405614275 317930268 1055240311 16905237 1007102826 205011885 969280273 473934306 141843550 601726148 352614270 518862997 564655213 319771640 11427131 525889473 703051534 875454946 472008786 814511403 46900860 60485423 536548823 593457374 272173448 314626517 742043301 118883033 488100433 474489016 281220260 141071897 85389460 608568251 279987093 87089905 717560481 742455841 308200791 370215177 994474330 588688390 38453435 592371077 985997540 564173923 163320606 71394840 939916040 390692252 471939292 372121027 682590987 444787212 570799143 674443204 464866828 1042416313 1020241142 764322292 283108223 219191256 268237381 718340213 620909157 382136859 1056327655 747885665 690975483 146002232 23724600 624249886 209105159 459188827 117472918 273458975 395124872 1072272465 721520723 507119787 742060793 656822654 659081767 190014393 285440627 681121386 660997610 478094726 817021990 908566818 879523886 754089155 558164857 656428461 893078003 19281162 966320874 1058915370 942923878 612026481 82628637 245417301 245011677 396894959 71299928 121539152 939753669 829645128 662870364 166595099 597485542 415440436 601015938 217827324 1020151537 365325653 239804949 93323694 342525928 82555975 344998033 419730557 365693103 1008467966 67791828 533534091 607569997 564964279 483969055 852059712 405649752 317958056 282712199 563415194 649950901 257401224 735442749 108768496 545617989 145232836 742560984 361981994 55832836 360540455 803390561 585622681 323954728 130187256 58239832 466174230 620568665 465911680 579723786 659941174 269609786 196319754 141247602 894577101 1002200332 48600402 939863949 591744710 483078529 450514121 930768029 85239413 855878227 241841846 911475403 695090144 143540875 29939386 201828296 183056921 66155723 211843648 782931599 788626580 24494930 1025726270 911065218 527292577 574379768 1003619552 785981029 1058985750 912509888 125997924 1030826150 893085288 168556800 57051042 1043605814 343277882 914312951 152832852 77740646 627617623 551181871 884028147 257747397 808012903 654531333 355587265 546005260 316494351 950680711 162075187 267791866 208034144 30929545 600173610 347631083 91390291 90453428 364580817 1043937924 897895500 639351020 714838673 481309879 376889613 275869222 482231449 435129448 176133578 305967326 936096407 980400237 12730936 122785288 450025356 880528028 1058630317 419536653 694186860 791603192 455585542 162436801 388960162 388044220 898671851 731911196 551170391 731618645 656382465 178105893 272468794 440200026 448758322 494566472 567422728 395517415 996140335 397904656 569499137 737179672 349026370 41517333 909686793 884724150 417577853 629868123 220330745 676205226 326464754 397667955 521985354 400875003 1046656957 480654433 993815183 128711433 874516826 558458239 502874926 855319401 470090371 507984402 256483190 789616493 85298871 73096972 563081115 388054327 576004229 1060001507 289484112 616802163 924444880 195516550 158186507 838961763 633009312 644750483 552758266 588458812 652386090 39552834 915448079 945803090 243242648 317835700 820449787 231802438 862140781 789359340 772755388 389567819 1037523871 313138354 594415227 432125046 333077848 442215347 989349000 513514404 733313478 82256745 991493250 869948424 892246128 878880275 6673824 147517047 79696809 975035525 597102519 1071214325 110468165 447260580 206024790 559865042 232699223 142253079 248293722 229102213 505321553 1028723464 308620614 454622930 96500754 354685512 819145711 641441609 907674970 240946669 921086334 883646316 634878680 117097746 472033777 918098866 611004034 198450620 344118075 701346481 405728574 975594249 677225834 2764967 842589338 484297105 835415207 135271760 594886803 606627828 310567688 901162061 637823955 346625574 628315867 774876539 434067956 27228579 754778285 577107807 99719228 949353170 814242126 176277291 559663167 234542774 295593786 415004184 884392697 460776283 529548562 718287314 444044685 544666201 72594679 450684169 814103779 441439455 806469958 959212483 215427929 1052761107 974599451 18078146 334419882 16671897 374590794 447747286 187634525 440426306 870190958 760992830 629973691 474089353 756902407 110608480 1054023842 991357299 225638572 839902042 581961949 804042168 988752672 376967194 448720203 47489441 67593170 967601653 294196656 171153805 690356987 181119764 679002854 870729039 399289081 868625820 306599145 987703673 945696896 70141195 884436473 1044812801 160079812 671079043 696251645 460944793 480968033 367110750 14568991 374978377 967238222 774506102 24800746 636224402 609440792 904295778 450646581 902538641 172058466 100927292 479700254 459274954 541613829 465894934 165116355 245026525 412199439 253525180 259102472 398244061 379314699 849783678 794003674 275908173 113094158 57392939 288208385 549299567 733821074 456895086 137818118 23877482 676514377 648170885 464510180 1047780301 1043005458 112134979 561859323 465055037 478905513 359680723 318406935 319193799 711342337 319461706 530509040 361088652 972216369 371654349 530984666 918966919 981380963 88448471 549871920 618706713 526922883 8980345 821706430 577762080 850424374 459449054 695592177 940773785 36592587 985184031 817585724 475987142 317124041 777861826 341538953 614049158 1050915523 45505691 89352643 282602639 141770576 507738165 942905458 604854254 147249205 77866604 277497336 435804817 380702330 848010319 833437814 876384462 862133290 855635033 773497189 920838089 783194563 538028022 500789047 274777267 388625031 452306847 442214577 121843988 218954741 483384706 247863242 261887254 982542012 122986730 763457418 840328628 250029524 819034590 913888550 494022376 468172643 555765819 277980191 580241638 704331668 548662974 633425251 159132177 528809644 653841472 1017597048 421429326 76302062 627749829 597000675 673958556 770460050 419894585 222731366 618080400 1034669428 714600790 587423270 57020661 282034978 479266895 112131456 907917881 371659731 125050692 47362243 957733995 347181141 703942972 94560179 555194151 512335718 212671870 888273584 948206277 331126816 1059217793 459407567 384521644 202207061 129244536 104887601 926264814 976468910 208754735 591955949 375967231 303153312 518154210 704614107 21859051 154147353 827691255 339325953 1019854402 195736123 549052384 759271965 782656766 787540048 756793736 506892518 441020164 865211655 866159496 357927 310233159 195891890 1031510193 477255155 1047074964 728181427 292566843 151070833 108927364 466701562 190204359 227761487 1007236884 78928865 305421338 622722112 135975401 962696207 624960564 446448196 535568100 444039163 84440071 464973284 391510628 603620800 742870172 417770019 143058631 283158877 658531680 33006081 724567055 488092400 401838683 709604166 695801137 595628486 483127765 565129172 20266736 748625125 734271132 183586811 749074698 858142935 632024314 382324760 589635699 483491421 13964895 814852181 1035727527 224434435 386736068 383940154 724699355 168566454 497512552 34867873 719086908 442483076 398328019 445063842 623177055 956468216 79814472 5791166 519336586 454984881 220444343 167403365 661257573 827687278 358179636 1009116290 892085952 819119650 892486229 161125470 119298387 159409853 58665756 1009428049 620062233 781533948 745668087 1003775469 403341849 650777646 708433727 232741117 305326358 883793868 906598575 1042795858 283475735 847659310 692788414 860138690 572293188 284511240 892786319 609830221 641009495 747872363 210627260 750133329 24089435 52925849 805746948 685190333 199648839 968469987 731951433 157237851 266229952 413987398 539981696 511137716 869859172 771107966 218217575 82926632 664176491 110197147 189635638 626659670 536934618 598376881 386169097 856343875 1064830155 707667897 91224941 51432239 49792939 162003269 897150589 183959385 839929597 591495283 463639069 514374397 682113652 725479242 110899933 701927753 828551475 519937940 11811067 63213665 956845544 496689482 93304736 274037432 520178741 626081238 776503619 946524512 828956020 682197365 496230584 126023304 1035074103 671176698 734369153 518485739 156920639 254888915 185511263 574691235 996341050 477121486 875241186 164026815 983740926 953867838 893152177 585196936 394216124 131790354 281227770 619760467 674791849 80689125 109512647 170976038 75095230 892195005 962246041 220171307 1007476552 791274646 772665899 698872829 675624264 391455097 605168255 886993525 683427159 678903209 942377463 114832057 16322865 637649603 872712521 761235988 134579242 837090454 655797927 259017713 385180145 226705487 691979576 623086357 677241679 839593815 761950623 1006790159 269950041 181243398 789788603 357579788 645041057 1039002618 960261630 523872690 1050158709 4020427 995679166 367109969 827166255 1050565768 79049899 736460952 876348401 434455234 953873852 291118963 746672934 480545094 830769466 666526378 853086831 756671059 504438923 755761746 892487780 758634090 664114502 585072051 926838272 937994763 617338792 1054843565 431484610 1036571788 67087542 605042024 1046473062 191232383 167664555 711104067 848478130 637328041 433768098 121686667 587619449 835956720 628213466 171561806 117308099 873196678 481919309 260046602 597826653 575854065 905261332 1049829771 646449017 771759862 172068489 463048676 498181411 408644102 1000497467 870225562 103769723 1027018141 544675333 732608534 3053990 898198248 142024964 257648407 225124301 653709241 741176536 76342875 787127980 32897647 569749217 427763672 194690754 327739018 688867022 952551767 611831243 565254396 472176055 598448052 199533474 888549867 331178778 538383307 345420853 98958218 920415331 15301059 344423725 486238946 327618762 40621393 929938917 676806603 835680096 459603484 695717212 884723816 223504550 520054041 303665412 548966539 186776183 239031135 170209078 73356147 300729583 441667173 455190118 857176597 8570824 859685836 442072007 626361234 275756204 209071467 286623259 695895162 35788804 143637101 975074902 718131056 642422218 756522492 805593200 677111892 320114481 256531962 110876000 1007724962 438198357 228771560 661283095 207236973 625842966 679800202 533623803 351008540 657481771 465670549 340206672 760047054 823471373 524143184 704345275 629848493 181247403 543043694 685463665 241187320 543934077 452221992 887703147 799443637 592716460 1063080365 296127685 263989653 94340187 340893345 81085984 947745948 417514162 955407398 386681793 376162377 13734604 631584544 600671117 757622022 603724013 941754896 750489300 364062562 692286955 139834301 496310601 516548230 1052152218 23334031 360782425 302775380 1008601711 850169009 859914589 914426032 466556246 179429159 794879213 871947767 999583823 458155299 3933300 1053006415 937643190 696796637 365291758 724479766 494888008 439015037 3900590 938936921 513079687 851779355 278614972 444858193 1019601464 689282404 134384398 1016147167 337362049 197577183 41125631 477428439 1057995231 467757031 516739245 628032600 946544687 84397888 735578252 255544668 539255772 808131844 32520623 566244565 960133917 834675191 903900913 123255499 387854403 64478019 649766871 1072564875 177711063 747790544 702428980 568241726 865066210 253101990 421801280 669561585 121122440 264900064 756490972 181305700 602561980 693720402 969646614 391365259 907978793 238214258 263409614 484370362 22507952 951243371 1072385050 842353801 7457806 963256311 845451441 1012727936 615233201 59032361 236886685 818045737 847791138 404435845 855550260 551804248 114652228 17670458 841390366 304665913 1002172586 291218181 879789440 396774410 772574844 599296435 213705722 562280906 735810754 247938653 39159763 752313279 147778752 968090583 422213776 846783829 224153979 1061070447 829282996 573968666 479920400 552957657 63596169 420002031 980637560 78705938 213201521 524744183 947135787 699395256 942523183 533328063 314994926 716955637 1009039350 1029720469 1035618509 572890067 42089741 387021775 345514456 581694780 943642311 117421377 1039120588 146910196 25751409 648083376 563769054 337214070 56991784 902884525 245335880 418028687 542490454 436695715 719857554 306751593 25122767 116544311 742166125 313834506 379483425 162148220 339167445 695578270 963111553 433233738 983560160 20678966 859409714 143766063 395279498 423943981 11349431 974497427 304060229 434307086 1014593920 307826656 261624241 142510456 34768386 290009338 432424533 1016902122 1046951637 16940881 380775516 487531298 200561616 173724937 678815576 559565828 180831199 577847357 361086275 1013204158 593407592 21316614 609024568 861989025 231380234 550042950 242235324 301695911 729709289 200233061 378192926 796420489 565559505 306317993 156761447 947452096 819978055 752620557 369268971 844544747 584771147 856786619 117687694 914979625 630973711 667013377 430332713 544551640 279575873 668674726 653469715 699232302 920015591 107871927 584169361 327179324 770252469 280823525 428671242 928249556 974672743 989301656 782474405 1070409228 1019964134 51637178 947142818 640521201 388065975 834895734 583139585 8177635 753255484 57239886 750907247 173726449 97143669 380839167 989248714 612632245 725161404 867876001 40527944 277037341 861745667 899957286 831401864 970123064 751570989 37334935 384571294 468415856 30172015 87976713 183401803 423805025 723521328 877455476 207317880 847691991 194845099 239699485 37225002 354095556 476182761 474235785 457180368 260168258 140039021 925050133 163383654 394033393 139078822 508692950 870856460 3994771 716198284 425838802 486261760 280621487 723784050 53407054 505829984 966956206 41861246 1010860955 385902994 786808500 606018822 521152987 45747822 857487354 1043964635 338410940 45929341 944219278 105737123 672507336 424464850 1053259768 381976208 867678604 412104344 1017560015 675535255 1057699038 261562418 657710539 594344610 950277837 520703159 382908487 255940757 370141326 225694805 32503047 1002531678 755294432 169287807 696611022 506772710 1027602255 338277993 482393517 177268082 46220430 11555038 244431622 338883348 420817943 449862864 655643190 402412697 413609942 796936283 93105142 109410419 580407921 767981362 200226995 938640338 632971803 949145780 373273183 479459963 532886172 36919672 259444695 23463237 738799239 182210059 781682170 937473122 306360342 433008371 328569708 186749891 23659192 278170312 622673779 972158330 281942352 208176473 168094845 430585831 397441884 312804571 534134417 450773505 393585955 770510183 295538992 189011358 640178086 763667511 658297582 993921191 355712262 993577052 258935940 422224321 309523760 480678224 146364019 688544077 35681307 203259812 967679525 15790209 371811352 711665721 14859515 242245514 595938115 864138917 912094471 635310674 572006361 208439515 132309369 373764486 441448296 54238811 733644887 615940415 916972975 377476841 496063948 258183626 274123261 113609406 712979921 745892316 844401278 645688666 471687375 167058553 30791865 581049624 249472375 861897156 600651422 442036980 514633687 761486112 148662996 718930308 299409970 953037118 394768667 416246732 765543517 218313078 186928250 448471355 322727371 58735359 655567596 912112432 100791281 662727323 544318420 548735249 305313037 493830441 770679191 549827545 18707730 896979657 198382536 796496275 74349322 950048684 1071849530 485246428 117320853 119439390 483623665 501728659 391712921 731507427 244198244 758920807 1928169 274408652 110965736 557007175 126209981 242803475 672332119 503296690 487871263 1054519579 681297902 406171929 1065376724 767267717 1022698542 116598353 893209100 947092465 555551385 488239236 428016095 741299316 104169272 725067199 916338995 838033881 60099437 439211127 802814849 678267412 919643450 197250080 349823524 236598299 750821058 710842885 685271817 516321530 437818492 160182124 969802337 474161838 344907385 533132705 381215086 252024702 497959359 1000815090 851916799 827424486 887031759 730487882 233718722 897581638 971690018 179229498 44503770 387519630 626192257 348526379 1054784136 389492735 197286378 326741239 167684060 753448106 918265083 328761411 257748963 434911317 455122448 989621984 475847075 422042573 988798438 478461832 407991124 77251427 550381294 797038973 277118517 827192273 782649626 429786017 702539571 886623830 1024347652 120091760 772246607 547750900 277934520 514109991 565222428 259241453 464620642 863760953 219324753 422510773 305405245 232666720 286975984 476124562 476092011 462128447 478916904 1051464909 819969844 316973499 819711179 373929378 930471581 468491820 564633141 305342990 713557922 1025064487 987418479 563332240 682942876 547064519 115479593 313175172 105886064 408745036 406472492 1048744398 325694021 897706774 325234397 108134223 563582224 503868585 745479646 878845775 842618334 223859542 651117635 365955628 237676773 371075016 963520908 343953967 793361661 514185762 561882098 720703131 659690982 291128128 63050275 414934708 71276634 498609263 462492639 806884990 674534750 943450906 1017506277 343447850 653063161 195914465 262030495 166032875 834521418 665518580 868054037 441585539 449834221 308364872 996585945 1020782065 555800925 730375933 99139237 977311410 629066742 636010646 70703369 130859157 569050190 31487045 789969858 93830524 169624329 825580898 606707172 863564914 586852006 565735968 766783834 615694308 230038919 1029317301 1070435621 74640068 816446030 700051386 143406819 971495940 504155814 135003823 674083160 140495605 662801564 136007869 421864387 601218843 573004951 55973479 1033005952 117621147 223493663 670889907 648219776 706902637 217735090 493137544 716592171 438902183 395583221 862528605 584656734 923906839 799987185 507697390 955308009 752908175 413192473 597087727 995451435 502429624 422421407 1050753536 665081499 11471492 404384457 1279695 861645518 1042662819 630151407 793191499 1038902617 943518967 791854945 1012511486 969919874 352744254 458562042 375922171 980386236 425942858 980806629 337199414 1018703912 223431627 483361716 582369383 678439790 1068725429 662933620 658722640 837219985 321596865 677994977 380979920 27630175 92211123 736924198 746025488 787567870 706617838 500996334 689029533 91779683 519135678 321561596 1027113213 159745726 1025048810 72201242 52172739 398874449 19702614 360981709 436081285 540307217 397400835 929166395 5599432 392008764 843668470 264627190 795117042 842544950 603961110 55173154 844128410 824850821 119874320 696811193 665528849 355404389 103924886 768021515 155950915 289344027 459392748 670932700 639698127 370548331 689436171 150777354 512740633 640226580 166515049 135816250 983102182 244999415 394712068 552474902 1026521154 59804346 994350292 293854094 856046135 304364918 466913025 892606808 186290196 1016959499 146497701 424054100 301829495 570330509 383195705 951125212 25363398 536934101 85016116 1018803866 381387299 1057769516 1067059439 557742009 66787369 36561953 760508940 494955219 789378716 5676320 466119980 882940061 806201674 791117529 2589320 610178248 189970940 504461757 586619973 1055357047 886188732 494843142 209302883 653600921 123912319 754690066 899948078 979955511 1030265293 108066934 859749992 65600388 976404851 372852547 410424283 118970385 146069234 208357221 520253618 744651213 740662992 596534283 436465475 995748660 257042071 1064683841 1050056552 145717068 879761785 531765377 739770035 323112006 399209636 817157770 1000363356 596735 825394719 311885680 351606993 645256363 945604208 765556097 720057894 739762816 707540833 125815539 1057948258 194134030 853569131 961793424 775576556 86732149 1033283678 241219784 13498186 322707483 645635313 831214340 89309471 836931212 728234788 465171344 698188006 695103437 766525599 550765234 748624684 710836808 230905058 489161783 997766606 994515886 200011653 589776221 499071282 764436559 563406013 84307130 221621809 617311411 279203571 278481436 291869205 149673839 133527146 738973053 181804448 260240396 826587775 721390462 991886832 519877347 445315291 825230915 595592890 642765874 422088137 610385318 221077371 133535717 646690996 120325110 838868989 994746215 637396004 550903790 824357400 398945984 785695428 595088762 418230260 284376172 23411795 848753482 858367491 812072348 1063161884 799088255 874686594 172114413 94025013 771607589 503941751 779206597 58438578 980512364 7879845 424899757 814490266 719249072 683237596 622000667 506553395 770294119 898476915 596271888 232440878 608209584 1000772665 235756377 781680524 102998925 967068053 805660890 146196762 349722151 318322737 793554221 422102429 221206714 1013448822 46055497 437023184 387087523 604919521 13310413 513908711 1020145648 54393273 846654450 420667060 217759860 561034861 1037236267 645802316 1065318016 691484828 14792650 711261511 371331755 491313015 1026203237 332438875 754181789 924991229 930953025 602324695 334730484 961504339 185651829 684281459 634864626 976479748 545430622 783705312 942784604 949197890 570586330 326194565 219131512 104634346 760650224 1009465588 212836804 565720490 63990550 921379054 755606827 1030530547 589209949 1023821809 366622963 262186901 280563074 671518394 61634434 617825699 743968082 357198329 516638114 219872518 50075327 49157588 376708548 842206584 4167266 502482671 60201083 25862115 859875185 445861302 52295165 792318567 356458772 208944682 280712088 243066114 243554498 643466415 435591572 137433607 907423149 522636863 534248907 175507497 129942002 946063968 670394629 248518188 450375176 521756787 875722551 641133279 179395021 902453693 558546299 445892421 132502484 962168164 1055715792 695822370 316358579 144324034 73520151 486571510 932831632 565769972 790437263 14471987 1005975964 221836636 177332322 849653301 296524460 125313454 332699492 315977382 6478824 427294184 106560350 1007793706 766162710 329776088 118853698 513426682 1037382444 361556365 130926500 772355668 945755368 138332862 1041556488 844153709 823784136 884270006 453817975 694030315 931970967 847244987 313618847 1059483035 194985802 908615444 949656906 643423774 791992901 521113205 775580688 400248384 741646859 337524588 776393753 562250052 127645945 951149054 463782712 740253785 1058823495 392765840 88742417 770400373 308272063 352461002 339355474 771092445 719904898 704834893 158499514 518603738 158978223 67674934 283023609 975140140 893977036 47996084 108285092 683131626 308467384 312810533 792671784 80082972 598545344 122645810 837213020 652425413 54942621 423211424 60507883 304417319 1016147210 392452262 867625764 677245836 246266462 54044003 980344000 178236611 993221678 116337011 331122136 100940121 581535499 178571212 105716436 850529163 880838460 616467248 674660247 17451032 159076322 313042879 149177652 556506626 123694102 1072593040 519398266 351452237 955737258 573507289 331885279 371557841 513631091 417929079 68689091 1020448874 127411800 48041848 841553031 360235832 912476025 988460035 1009298322 709910433 417821204 655923919 573201337 391550937 825329299 825878453 872965924 205397293 209236148 615640065 586223972 483468060 602145010 1015302672 131856618 583521348 980077062 208642352 237722705 830227796 1002670075 81485733 959412702 759548695 252450405 954838905 838308484 416312625 791363438 166978647 314583179 937368853 89421998 936338453 335415734 777781176 920372690 172148777 807309243 512526704 1040476594 514842924 1061589632 354351725 568540837 238510359 678238975 981635153 724742927 668226638 612573685 192883057 264667991 9880202 591837872 3781930 1043557637 928936124 205419352 890443779 260325180 94840964 581633911 1018851898 100837701 118870266 28749490 28898585 419719187 760707530 997907525 141572440 867422052 591672865 684917937 415283560 186964391 163450739 307842606 296885489 1040414462 825921581 558096793 156238342 760873966 163113136 898657171 228979975 231482807 369400794 767754654 606429843 519675336 114721304 987691147 420930932 1058027688 220104009 1019137549 312908853 177678620 611392176 756624937 389279442 881063663 821633568 630313203 521420506 450936639 385564496 624378380 674163571 684889127 486624817 999946751 542843967 837754669 957401807 164090746 90598308 473960289 277643783 827467692 989267316 918682775 744480034 1013176828 996981938 707740978 818197110 292137327 509846578 733824723 250800172 495685167 452478290 915840012 133471752 775768713 656665832 571037478 51936590 853896328 444021060 937250642 282879718 76981541 300505865 66217370 950602040 859873354 254092711 793844754 11789729 123296216 600634370 361192960 978041281 300999706 212890096 627743063 216719342 738251166 129548505 910015430 656220583 349304457 365798764 967816566 532882718 412679251 194682087 763913177 1012159580 876545220 225180697 413816796 463430951 542018352 416166226 186320887 1061242186 967315771 201969139 916838942 649657453 303437876 655115925 898269806 535317318 446607542 259672646 215367808 71108951 902877237 628372178 223518753 300615063 559691474 734606922 800192519 885893798 619198576 74630421 1058658250 922811392 954153191 23582592 282570263 928033925 995375555 965875043 595866949 962297474 569932162 986675983 584510537 141802979 63886373 327421895 481364037 824241394 1063585883 885526618 481661421 666869872 611466965 602345053 868371316 128471299 740085430 401571308 290811722 727982869 227218512 144006514 147703288 418342543 863026344 527290949 227945202 767131772 996073036 684152607 984976645 971440900 103651443 1014450386 223140827 887561337 552554590 158861317 483071742 402319617 203045840 98665510 166276140 357507429 771703142 311256096 263976612 319344781 150098611 583084549 788821707 152561047 348610966 47615333 104679736 265306691 721944402 111340412 181259682 673926031 136888643 321908502 492582631 453278716 248430059 415720748 687081635 271003198 553722922 509073550 934117671 579461937 752802032 576161549 399098118 572749751 164409876 830756299 885896355 610245394 625943738 529884877 306309112 694480465 397214970 177135635 581133460 622796575 94193245 1028318167 929886574 722565437 693906909 935948211 237651282 815414033 724774516 1004854158 1071495588 979580647 443922589 388442506 625148469 204575789 995667186 1019504615 431080414 47896455 755480646 438399820 50857221 476121895 145468734 176436364 583218793 187908721 37399065 803555562 89951797 454564150 919645590 985340297 117066659 363893570 14005767 112144374 947493572 568446077 212927673 549776303 918577606 211546850 506221356 574060804 543771524 676789085 1035633440 684820073 72529478 974091456 401950178 434138401 712954911 522033211 976945315 519063612 928374844 604370369 949345891 343272874 877470978 961667850 55555534 1057473035 816535004 392906424 165208484 541727034 842458545 591758991 143721071 531876723 772080765 605973613 253162707 617850015 322572567 717666223 834751583 138297377 277409496 969409532 374841982 600484290 986410749 212751727 928075893 296498707 630310653 17536556 751967482 5595271 783726116 505921021 689342621 479252344 600235682 549654300 663130248 209518118 661530146 165388264 142247189 832261774 903521043 581030920 1018369533 417323591 960101402 967332105 785158175 30959735 814444011 1017415278 803242514 835032766 657985204 533414866 236045951 970919279 390602171 1045938010 988768800 863950617 665278624 383755280 882945537 58502547 1022822208 769575666 622011437 171904332 441309482 871642783 1047606957 433495150 859987052 641716899 1007518387 392598449 445300080 82430330 1003033485 130981016 870737156 1026939061 932840140 1008538343 556139891 964400777 1057122812 1055936606 1070969733 741641699 273349525 288493441 492761712 899027880 972158879 1036911845 193212846 307324745 246964798 510469791 254443556 133869987 206412872 548049334 975139345 203546879 397688586 941947391 697111149 661652103 219155907 819988139 886336002 587582298 938709065 599612249 1011658560 503076258 948513619 1029756996 516723317 749141715 315489610 718657055 10317079 844153332 483736254 348432029 813779352 613410196 641272824 193193521 850939744 277587720 152057799 733588813 45904298 339883712 994369991 557710089 698947831 925938592 392957303 944753617 98247807 541370151 583741860 7931062 654709657 559777387 445633762 713823326 820950566 472685668 24391067 690132327 387338432 697062968 742319169 221730345 470901118 977649522 400865575 367012955 907466755 435092343 459468831 916706502 993458225 629433428 267586338 775610478 601556622 446979421 789479232 412378109 571490606 1026071494 118508445 124349704 801612199 808610522 280687231 479948613 657986836 601676943 495504191 591646005 167515958 21958389 854196459 561989495 274217662 444403336 240227956 214943809 370996728 48356950 326265584 295727522 535055514 363709773 527607526 728620058 248506677 119863196 445888739 817497188 692040640 694609521 656312813 83515689 131333914 332850542 46605367 460106931 790924707 942454619 17566145 161557410 579571556 201794526 469492773 582299436 513352824 531162628 695662614 1000119599 865585608 772529293 698165570 677754809 105901685 1010100144 472213472 206905147 309952545 599845271 482039583 454714164 865577666 787519461 701406833 255376172 419024982 568919361 723889684 69535947 229833965 934371945 574343381 4108934 1025247797 301877213 41289685 848447563 334415881 714829191 667683721 641584627 790548996 364305781 869041033 441782251 886428703 1047783177 823536635 408621908 174831858 515239650 810642254 104830645 358267938 604758835 263324952 1044965534 289282915 905900559 264661021 31526113 177587812 710334050 326955781 17466185 888107507 919419237 715832447 376228653 54199434 762841537 828395555 307498136 1015244185 22288048 1038064525 208330424 491521826 501490816 996054027 1017781128 913105402 838080687 485424937 904507961 861643819 509748879 816875392 830350529 578060320 1053393352 113455744 171277491 312935913 54789046 56193413 170461878 1049998223 957000027 518406126 718735346 780423121 1001425474 862134421 261659568 926355487 19123925 831037924 584181918 260583655 538192958 28334188 453472674 844635069 833742981 534597213 548030153 523560837 668574165 990779497 593978770 720513864 161055930 53464584 759618610 467453271 789892513 514648906 207474426 774143221 929494380 363621417 224467884 1046478770 232237837 153283210 729407880 1025053813 127088423 708862380 638610685 741259278 443126434 897120546 404843150 257540899 643797857 364604902 592800867 636110814 908969385 621276565 769574823 119241607 499083742 12325851 982366673 331726269 727997300 642170282 361298942 589250688 670848619 63431112 943640564 812919639 1046122096 684980711 112407466 913813748 314716040 13081556 694672747 701141174 686380366 534892916 406443552 100685921 281147558 338450949 683435093 496023960 678110345 118221473 361732664 219899153 24766216 222193578 20492507 872731201 1068803049 443201971 393309430 1059070251 210216559 821402356 827191070 607945089 30011004 828141188 1036764668 1007973984 1019042051 178365399 819008503 836229324 494550106 656012140 860080380 4276178 459897173 44102072 661005270 700588167 28953274 345886365 274566658 431176827 951689374 508585147 536534955 410174742 23436165 526183014 110513017 55679178 1061001509 973606324 941264936 1014909118 890381357 228788012 860072900 354798179 444934856 507251723 968614086 165754543 143054563 5859488 68416662 87784529 994337104 591798595 165860326 971316900 213725399 175462126 810726897 128304552 909360752 783021028 62241787 638906707 875026111 885617953 373510839 432218040 872299031 803690678 72589924 396287482 160681128 693090732 467165430 241230815 1021304503 376751560 586130327 348006323 643006807 434735245 684059278 340089038 101671687 788205137 686811592 62543178 781077188 272711309 699986174 704826429 340318474 327249449 245206925 860449538 367956949 684709351 914665444 432993211 221967855 115911292 424046722 721135939 675667880 238042395 744288198 941307390 175882416 363942267 871278469 622101771 227449336 540381047 1053681401 969097234 166929961 136643507 850316050 437325494 538725345 728916579 469088984 1037478606 977093663 807642922 784267327 43898502 423735621 636116649 327209190 1038076139 201444048 246434428 723009926 401289054 491047719 510318970 774859377 101412876 27727298 791008361 866351790 437929309 649960867 517203844 356088327 397197726 3571072 369837539 377017565 732791182 13116735 502390157 66412009 916489762 49444616 905600990 518138117 741164728 34106403 845996283 124952206 480430732 854798463 736552543 787705691 247769486 911504420 312429299 931835460 644636844 752531822 1072313562 525443225 259270498 1064760554 44304393 462135044 92861424 299193690 547565133 418718886 959077563 36124456 398382149 742747306 128871083 340567917 529741291 530162638 865829797 804746026 1003244341 521497876 912735872 408752729 1007118563 722111756 714263811 815398658 486550855 388877761 762958422 963921066 504074820 671671997 294599801 355364765 603612887 739753195 391990910 126400482 581685507 390653432 151730695 290014199 159737535 70173801 272528003 560382989 1047738840 406291942 984793423 404266088 31796313 655065630 554369195 378624490 1012152666 985844526 738285259 1015899437 682311853 566387641 978145935 59734466 266292805 357408984 987821505 365772011 922201639 461716366 83461986 484584158 245318103 18970033 252146904 189787431 987359527 402790441 449114328 447852977 238634941 386811092 721898033 429734976 536817042 31609370 657155527 368235353 784842847 486506695 88047396 50353459 557350165 83546898 537689608 830977176 951889559 179203751 582245009 794954003 93515341 415708512 316557766 828244567 453033700 59614850 121486014 705294308 1024357406 994755281 978563181 1068267010 842974053 211544073 596759998 199673149 256742579 132856053 757277950 1058231130 239749200 33720196 217822552 420687340 897923265 207890123 581741086 522777961 170842986 209330497 58458392 955939064 186024461 289532029 650993014 439430346 411472647 322922117 19661921 1068185309 967016827 411076979 131614703 346346251 475706984 406294153 35523942 382509945 415132894 294317237 197412754 425074594 1055024324 565513038 1045354127 434777606 508910989 1069000825 1040065768 750056274 890047756 437937821 427775486 999427357 236958158 440257819 252372969 206000350 1048297824 919332636 280391217 299897289 471164596 257866018 580709782 26330888 517580850 867182055 516212985 766401234 937400036 291017801 742158396 692542180 959763912 201072055 151392522 627647587 712559018 406372278 743540556 3937021 850574664 982904181 613059166 1047601805 353105907 268575785 27136324 401015150 1064026913 760551279 891353156 1444107 342457818 267785769 973231659 486113244 589015637 720212029 177273752 243714686 51235774 73031081 394385819 28808748 730154029 281483778 912491871 991947887 886033341 289990230 818205675 817818931 234009033 320045260 840747747 910097059 857413673 489393731 113183113 1030793430 118440131 467691822 130901189 711065101 231580979 49580113 908047123 222586621 969490700 148990443 613463835 754948815 960390197 646183568 212803780 224938239 112035853 1072715312 727476925 518269518 942074044 655270435 789366362 771273242 181205231 947319618 961285132 40660190 927098794 674195682 699836340 275598623 644092085 123227280 623762572 792492291 594686770 1057907474 590180281 310103520 49945372 845146538 15206930 570433954 908588567 512800826 67877551 141740644 281190677 154343622 375960810 1036350239 37650784 1011035103 919755317 141766903 929107858 5840584 33419934 776406300 356268992 822285506 498769719 901628467 624078966 784663238 682447885 205923134 952141527 578439958 28609925 521353704 741838523 906370429 32968282 632543632 226504068 732164174 928736612 948896195 716236801 252105524 54652813 47537457 321158023 720369750 899265341 941544874 358094678 922827961 402027357 707676126 722464026 682363185 884637164 1060923132 668913917 540484396 283364407 358561884 765518431 601568729 132923071 317347544 278944648 452848686 529052055 125047897 488840036 924317407 108866912 96792120 760662249 332029240 482931493 612074522 526556067 592398569 884507385 467000239 856222845 841825982 303509237 792316852 579228850 884286909 689970224 646528323 68079519 832869318 387344116 365799505 201338961 201746608 772610698 304012407 424571669 443968788 653820897 798138026 591863494 815609153 929039110 729756601 561177336 106156929 949783425 224138268 1000139009 260123236 1009028697 973444842 1067443904 785071239 307564232 710595003 651809819 883882548 537277170 528584968 88101806 719823490 762933199 18000635 19887916 443819336 442849289 761319511 122869725 792953713 1054541046 342176481 766219554 43479799 335285517 905827674 1029102931 404149060 718816064 274479352 272064829 555185742 985026716 189440078 782038438 896381895 707825306 483809246 453634094 883134053 57375299 1009366581 433251746 169832291 280451433 569305385 240191373 300512674 220434938 813866256 646743724 254112338 26495517 676907251 331906371 759002001 1014677736 3904166 671414163 346951998 444413605 675648622 960625884 237497637 618171669 450210569 1021052267 194369517 676967480 495377730 977220658 303566323 155464954 38079834 1018211571 208124202 1048302595 503865065 693368503 954594239 10542235 941478634 536554993 152836303 547680551 480327443 193492341 902515166 914417863 837019592 128789676 719985708 799329604 314053543 483173335 142329693 1034652855 906959345 1047750724 924263385 812246912 443890491 401361642 644232603 506318793 863639389 304065097 919815117 1062335814 140806199 222695597 376586380 741260675 448772515 247654215 683844169 636307206 37855817 847126395 1036847590 63908611 955193390 1016520532 129787244 11192254 79802126 8970872 1029311558 382257744 180644985 851938711 471937490 766157848 689696869 446921349 754555513 887060380 28160337 965366600 426065980 1045935279 442808636 960645477 929329852 868994061 66865184 94903412 58975748 43819706 497981670 89499270 702742674 918152448 602996655 244394489 572474311 42172067 396080469 179710736 271533896 309775447 292164640 1049571675 397644879 225699268 1033662365 990857866 136241409 125176522 64367583 883168328 81103419 651243849 1064890813 950340368 240729367 546920202 610994006 109704754 69377593 807263576 180357277 773916572 740655693 603139936 1730469 101558855 443130460 65053200 916015207 401749542 1047927413 314987967 1060516709 693979879 4760741 558679027 536678649 20685850 719012872 519752302 685403869 819620932 80874270 720613396 542323192 145832814 815584465 187931177 646553665 957237217 1024649664 27466126 979401348 625472126 766790458 747826140 92858133 1014037481 45805504 607231214 313972481 115896373 786021543 894523831 722385191 79032503 1068133395 857743329 421103969 626320841 733833040 942347030 885762012 83091538 307471384 790106324 546072823 353858957 730734521 218195699 488302001 963063114 772409389 962433233 263924933 430658344 344196698 965139022 265038507 931583484 185729900 190804992 1028801253 425766564 600960146 468453705 546359825 940926 314093628 78267053 361248226 134209131 163196102 158974850 961465166 671306170 960113462 282117545 634205910 479752613 978864164 728557248 484694242 1051570750 240776779 572142029 883128131 989383328 923000158 299362498 776085959 58264069 956428726 842074612 391077166 181494784 1017018937 273017188 1055258423 710342556 471517670 374836044 184327875 297241499 394685899 50107081 227078552 1007182744 1055996112 16633473 353581034 920279057 916094773 1008446093 1067473394 1037606679 713132173 641159084 206144402 776723677 1013686810 598917750 149732806 1042261895 931765593 391281148 476650965 999432260 890607614 474811604 692863182 773609037 408145091 330805694 346872279 818900572 27598485 181561394 778189438 329346342 232217360 377855465 644497131 250763937 441388404 123927704 61754731 809401401 188422728 873097531 559588359 613030369 361640422 497951410 475744752 28118414 331799435 551091616 8114131 936030802 797194267 506608212 765256090 704004010 1043476723 651206030 1037688256 944498479 268219990 154313842 144785078 1024283830 283429363 277176221 489635299 170835813 643158999 979500366 117144107 560024624 1270794 639560475 756501519 483415222 481123892 258971733 390599904 311808040 578150422 864280378 52699469 139079625 681339914 477320350 886808182 99775023 426217475 764620553 974311764 163467173 184183685 762067514 101192215 104816170 575116650 471061090 990526639 749065965 490204955 1004547750 613622296 195673940 951728290 1011428272 430504606 591137398 845737376 1065454136 650414248 547880762 834823328 979773362 173233640 11742432 799763096 811189299 1067936465 23219045 409032672 468669663 575947244 891704291 591674008 112330466 284684681 880008742 125378555 1059896300 162298833 852338951 11494047 32528795 1037662182 317503877 422231411 332171946 808022192 286371972 901010554 481511801 643449492 772066283 850236885 860284209 380215421 516095780 635375570 600473391 277831845 318573215 983291033 900631840 113194889 433980593 13413239 551853182 632431812 847651431 943425073 427220951 519278213 95134870 172550237 258874545 455612234 960507484 332885510 751954983 233042268 761164670 665642812 998903118 340725139 785014608 1030974680 589325304 969710942 1071950949 820977798 509705167 670721247 250449508 45115955 648340006 362020148 576440732 1043990206 978464708 571609843 490806798 336719597 903771779 585493817 468325136 913632396 495091031 344297916 549032449 595511257 141510593 128707072 435774965 350144930 838282966 449170729 895033113 298298919 546408469 48658887 529439293 852679447 114270929 471919741 130468113 671050654 162000486 632063677 855448208 155346813 407510288 225943401 5859193 317643365 973033858 82474551 147584089 91478304 745435792 633096157 12621742 1046642289 176560301 728284158 613812073 1047111301 93785097 118716756 378567023 79555974 347018451 574048492 317077478 51895675 726069594 1043787478 612994263 510478911 879538392 127521374 519289112 144445229 692335647 978658238 219750576 853364431 65563532 168374937 537096787 875928584 841705535 733685681 883438947 107920121 237649344 565487781 591946379 379535855 287518082 983860669 683054634 644647717 718237154 741329479 193721613 1030061181 522552439 316793258 398591778 354698121 830871564 461980529 634736007 476666399 893874739 738919665 921598869 529032181 853017336 350469058 375090801 945371715 390345350 81497079 483428620 71896750 75004372 611591964 1057354647 683965841 154563173 1132186 963063475 372534251 78461914 612295976 520219569 536011648 931355676 691145748 854433042 227360716 634533569 472108898 806085289 1067758587 11295304 97994143 894809446 5077665 655441622 869314994 436204324 915566856 1018471173 536779402 968995036 829063976 686977668 237771683 634686214 366665933 239250960 70666377 1016758547 827493078 939400905 703831964 209867320 868615842 735116159 1012758493 273882116 521479938 556045807 135601164 492144358 190662666 524545019 621494953 702347180 900910747 162090891 507275789 606890571 908677829 1071949853 701427141 799160610 489483509 291238833 568187167 897536466 912388349 503898327 851664059 174912606 814221447 855039604 242749320 455527481 104705334 66393280 545292577 442500082 181061187 491312118 722435147 465404621 211389636 221086571 153254503 851252707 977931496 113819911 168648211 404746830 719640898 214806198 136693913 1056048583 303479434 149965711 30964340 1039515958 650298068 399713109 1027469801 545257361 733208204 1060406474 877789159 103587276 1026405136 725298421 650181707 916827728 961285539 977190339 310477478 330248784 831898665 684100537 607646342 232688700 667713015 633022399 253123033 45853908 252681163 491618744 978927248 972488546 736753266 287308363 446396273 145763913 48909347 858904549 1066215471 104709238 813869728 685379513 662859827 324762970 41701850 53991543 162481628 892478913 430366037 688722760 470264417 95408242 81192162 301543600 750638138 525474024 989526886 608383065 604011568 87205752 864309647 74786310 170969094 730475169 396343253 141986988 561487815 817884213 688689672 665557793 355392224 264556732 534401303 961601654 216830218 720240034 490888389 1050555609 367345545 526495796 477326073 153197255 432636974 191999311 1023757813 501185286 990973772 431145860 1046431400 371899544 125207767 572404526 901060718 928243360 398753502 978722593 305665399 538113636 794705560 956020925 909315663 503238000 302395928 203947172 521727250 353229908 314465348 48028969 740180208 622711869 1063620590 236778363 331075021 282996563 774010674 929457113 912526618 461680883 1030621051 131556049 692305510 177338311 907801669 60328263 14538940 592142110 11126709 28171863 1061103658 616657968 487701284 516740354 143850868 953108519 497866500 637928550 634051420 788122326 640134642 1025568055 837574362 129733690 469709613 881859354 66990498 473874747 740053275 92422292 369928488 566259297 245446491 980134733 816806363 694264948 768554373 93152281 797062049 775321145 940379525 385980112 887907015 245917054 813119117 338785249 11727162 447500532 520777222 689845418 970467935 291018234 1046160343 977507487 139401934 335333494 1012858516 558811287 337361614 423635807 278046389 360318758 227063683 952823797 842245745 785009563 825462380 84925810 407877798 1031612315 1063269506 748536559 1039179490 37549275 856145620 682035357 234380158 75530936 461377273 524940116 271874909 1054409517 787758612 1015411962 364775563 26173133 411638244 324568159 270488957 73135443 654419562 253759710 301689867 157275275 604399294 337755131 668196571 157871971 298509708 368671517 81145395 167758072 221814131 324183811 20921744 824366481 458668636 15768466 517103364 798327791 372346932 497982004 851178152 893243021 972535281 215095959 812281189 483513119 345314999 210851050 620266793 474132765 932820479 792052500 485594130 446836410 1071079380 548795351 99554962 436027454 887994535 71478444 861344990 683177223 542669428 357976085 787977010 256224242 806220147 682771300 49768087 1007886000 231519326 637497707 192514428 457752377 405077606 425270048 549967382 602600137 452235504 625301090 849657212 82892042 782411646 731888202 83922062 116294021 206724787 911371253 93452957 899488013 872173546 62122879 409351063 917012399 1014221803 196990417 973270799 237726569 23552895 35759721 39621434 71541686 785142029 789182549 934321484 633149571 22236451 638073887 789014537 422039787 338326161 782033180 906447516 408347831 459983818 287306352 1068428420 159480072 142072901 528512119 494531737 729937505 729678163 616162310 1005352668 1003534221 124152936 900714977 175887614 945140553 954143797 45842505 558834962 414224490 17910694 998899479 745132827 247371969 509361707 166923249 195297221 766249092 202711167 276188792 135068432 17748978 285914651 998696348 1011497186 476952757 182255741 5474048 558715306 968807398 283632846 703185846 376575660 554965210 289430593 1057637005 676697096 411081989 806782617 403553120 639078318 1022629614 999023461 596329304 60407258 310397168 161456754 431942861 151115885 741939256 281719017 657514637 704662546 598357237 428406696 759987086 977479612 955604635 535212967 655362843 282708613 661094141 140705195 533509259 808964272 224971242 382684961 1001553467 282761998 965992712 210988245 824502446 140442630 567563865 582972696 244963456 938341701 201488713 343356823 270526239 363396713 650216334 761597760 131802455 425292349 651660579 41876447 983469846 1045447782 786439755 4892619 667341378 710095501 926452205 851290546 1069295556 38116934 1008163851 926038678 118963426 867743141 361771379 323063501 23104668 697625062 496418280 632420866 553551956 641012122 992485751 165764628 522024757 736239238 759299939 860161873 111836194 151891912 556141678 770522911 51233550 746425599 661286952 673757051 759105766 335901912 899164866 145149376 779482941 734576164 211765624 97242050 142768286 95731594 703989826 631775226 74390397 305162320 626473304 978784426 304177760 930800947 326590778 760016514 362220437 430630141 939965425 230384744 764359735 722475568 756125456 1058266652 552328623 518772947 925227869 648109287 805556756 872660069 542906688 522035123 327751193 295991701 558849040 409526641 1015137428 455349032 664150311 506444072 177731046 379319239 498469866 472528663 231324077 1072687046 791317451 698276584 685989879 137504764 494830496 138286353 934602615 427904853 751871402 769315184 23135899 304727714 423301772 665174755 101104055 558141212 117075748 915995005 460656290 126535773 862749214 637489489 487405862 114290383 294946432 901938762 71566871 660594541 404130529 583043552 665205919 775231804 502454251 166094281 892460209 443584145 429224234 219155776 1013548208 696574093 203456783 164180990 49778912 72021497 517634390 25609282 962972025 153156453 920619182 997703984 823278010 685987025 269721556 614816719 547742978 593115915 746866389 328270532 81910847 419789674 585189555 418870155 613114196 121243601 275218050 896278117 535468104 149634473 588514351 361582842 911482368 872242022 161282692 807367710 858064572 702303375 916487726 289162384 653651677 209240984 927386746 838924893 914193364 374868945 1043581792 754708551 64402864 686660252 592812503 1022692785 552084993 621027069 924452918 1069546411 1004337001 516015036 711545750 908348913 350911381 684388338 475714516 344643632 978397762 675505937 903396912 58245948 968181545 620047734 954159135 137747466 143997998 521734192 61601718 967592658 312525056 967540052 437936425 149779517 217458178 1023464821 1031959514 339287707 29863485 619785313 824652921 315105397 297498714 583778600 238361669 978776249 144616883 417848324 465535480 336753054 524249302 251897841 910398926 871186627 337260846 703350474 778177610 813031084 671793905 50566294 910861593 559852133 279768185 977901010 263640063 150175610 635455040 122724356 729505086 318239516 1000340927 824479745 100562036 892453740 435411546 997907700 1039874640 26754631 533219465 476192250 957389836 231041686 642223356 217070994 836762547 739773096 1061898210 13153797 739794798 42602953 707167679 134544239 263493806 487935355 347857212 827154755 1052265719 181673064 912468663 237562753 703668818 194164415 81230194 742762466 690893664 872977971 1006155146 822233505 478313955 820992373 385668058 840810314 777245634 794078602 704778098 604634259 1042532581 953987691 677336846 214008891 610518661 526172535 410485155 303537541 179392929 235481751 783205108 497278625 352157137 803368686 502761147 436072328 572914994 25541040 843495948 964020340 119706417 136976145 275023310 376474765 740896138 1016139824 387143726 399550227 762831969 1031218712 834789239 434993724 532170348 148440972 124193051 795886369 974357763 378427461 1021450252 331012568 365964852 673651700 659683500 416609330 681315927 96729490 528698164 904927653 288165366 813714341 1627959 668518753 805552729 832381210 1047584006 201113241 96886570 776903700 808666958 234938279 707447599 656807328 163686114 150476111 884849899 952580891 435038887 556674900 619500319 1023914278 601999188 50473379 1013568620 133512297 991989482 913843928 494589121 915215077 789894101 1019484366 543219810 602078907 196241021 811365417 518460860 947835170 349287990 75482815 626339689 675136301 112195757 570436596 311469720 315708830 891959818 268939281 321845644 190693144 978993255 295725551 322767213 507708664 602117760 476756154 214178714 80828608 44757822 748080377 452078447 655666936 103596607 129479779 65751813 856428835 123602008 218232876 42272813 441971823 437251699 450272323 395227303 673667583 56088291 722132636 984428556 317946245 988959201 417089709 439537636 918345793 589085844 343701893 832139402 322877128 354650795 471231602 367949482 631171475 820568444 556129090 85503598 262851670 806302914 298631310 218704017 1022734009 319408879 749467324 1015812427 1033264978 578094343 771948062 635193983 992141535 160079929 319341131 674724943 279958134 784526672 280708343 184640110 113990958 458325983 411872554 3962281 397027373 217959631 697203824 545290517 906656930 100004548 218762140 400775009 563226035 474126123 100417851 852878255 272436297 48633516 960607483 912647946 965897139 458869546 975304097 163058080 542275774 30610443 558906844 229676140 96898552 967349183 389152391 847540908 331039349 1012596893 641631955 705534939 576589055 682558655 619294357 726452669 444668461 713872798 786637218 371927696 398557723 151232408 336256002 718252615 955139904 123452442 316577524 460379412 935237320 859540401 810244174 629443576 785088847 409754141 1035761852 897181483 461259095 810971421 130301318 179346496 419821025 291011425 426088807 538110789 404778922 320979891 88580184 970575471 861875109 53038940 643447274 1010118343 138573890 363180158 114652504 215415273 329104234 445466019 1013308694 329857397 453985477 522512707 465426292 977706348 827224368 407106114 332586474 723543892 901988765 801362487 117953057 1031657049 637714134 1018251497 197499216 587806905 787829687 277028319 1027778354 303085534 516874033 354182551 773585489 351212395 730002104 119354955 877679038 1033866651 263710183 792094126 861515006 915252225 958489233 1068643799 1064232246 399478181 301408545 906574956 906826951 1029246459 888484760 445633226 612453463 880619098 1047733711 185144534 59236764 420116905 493158488 352449473 983505865 822530622 1015952878 991493265 857286265 829308354 958881785 525303470 927169090 112686126 113227409 120881556 657636775 595375027 641317680 415915301 1036332998 601659697 566590703 665621015 959200365 311354616 2989078 260303128 611897220 53202730 836311061 357829165 448309901 270710558 877187586 175346772 997516299 717317871 56956015 26610196 627746476 243426138 783474506 848025193 832508845 1036469740 662453137 254081740 777461443 416650825 336044343 398578050 642053678 995466387 118863712 395808040 676369911 915484349 704575192 110964302 573333879 175404538 6359079 663686042 413641765 420591917 454928577 138691218 125393102 44233419 78457521 218859608 1062813484 562763812 176172608 127616584 267457269 555306200 923661046 553345633 912920192 289779517 76450986 383052781 414349284 641459245 313524065 882489331 1045446387 761891861 1012408114 1056392983 1061535708 632903787 403507634 714055238 381700874 17754578 509040586 143033918 285383253 336982792 277816793 108317589 402965662 873352832 532281069 386472038 1057915488 896259665 895733643 287535608 819427351 273352945 300256564 882164494 747287626 182957684 138909936 348465812 889971917 787689345 992768590 468685969 548770652 905997178 188631449 267988631 339462482 992024349 964165291 489175896 1026072178 124790435 1048184303 452243434 4006684 1032560448 189649857 693714148 709429381 52128526 543542992 100749046 284281851 662426226 193862470 714801171 746940836 673925234 110910855 645234286 417785840 197078789 754520426 335289234 989563307 312472754 39974691 472296305 1024904923 217471319 139358863 399649408 211469660 623256145 157388799 553212707 499953581 203775771 894627925 38675451 981509945 166454254 1043148226 850767143 308063337 926322689 328281204 181464957 238072559 305041225 956097898 988108628 737919179 895925547 563131825 431100380 265986274 842055171 999586017 656595887 304923274 1039798259 742658205 776688732 818131508 955985353 33498907 852232746 912744404 503303699 233942822 710044589 1061240241 331681525 212046236 877074869 591674110 400384416 978320914 26265919 937917340 293286363 482497646 441530938 504007616 195955803 793459150 1031234136 326253474 260980480 267194095 349750463 368851138 675791728 663514152 850915764 996794007 659342748 869724961 130053726 374974904 45961419 110002669 198255561 765202239 235953815 853751061 109462308 318218616 1064528835 798043066 283484825 858992252 1039653359 631255707 868424440 1053978357 16271027 42124963 659004333 747361076 604315892 1005475191 930020349 460214547 552886141 961196592 988758133 742303229 547870333 360102941 958217133 509513793 448013926 461602141 614150328 381109018 34501737 739557882 552695262 15914328 677909852 383372474 785529995 1059812561 638089405 384807360 608215839 13437742 435623755 20652351 175451332 562294235 167917797 545146970 344600794 132184840 676554027 769519133 244695022 318581345 599033065 716092373 762395231 409981470 1021100334 484499590 514239252 282820274 1020471331 576131697 1035241535 346983651 565661919 266624639 380539988 588825353 441297173 463935144 567069459 956754252 832819918 720234681 85981959 462692029 309924039 664118332 634731377 863634238 863077013 606447652 753584738 795277883 612638107 287754070 243296849 347012991 411870134 312222980 771651400 388005533 460240582 333904257 111769758 685638880 170205978 526595719 345983191 178625006 388521293 992146188 1026363047 1050156060 852384955 638320628 249806574 214276993 662765005 94701341 758624600 289933558 418316704 1009268680 92682407 749406607 161154392 942245613 566289449 284709871 2964170 384142365 1030045291 923907383 865905738 543730377 709725912 114463677 837678417 890780136 769107721 494576656 737227189 408950643 803417212 132865466 264876947 293060804 649019708 108195800 351073757 465521416 558980888 1015626537 484033553 505002481 663326543 310751126 1004076249 263906393 659955118 68815772 812572152 665029788 644775565 798004740 699887593 402905444 956988196 427164635 996092621 727399144 219148156 820765005 797003240 590914854 730283809 775171776 770307772 491601574 547613632 146067570 585821020 442986289 1023828520 675346637 1014443189 473205963 2860523 57731357 80153422 169976037 565561265 584252749 203261686 715289315 934902985 983033866 854992208 562456338 711701018 685084384 20935725 739004091 10623157 40970958 189644522 648819754 545159158 827224943 320355892 531290014 770332367 137726784 206778312 982460945 544386198 322716168 318872571 463395396 78177500 546076578 163992417 709911748 775445390 944346222 550304377 491615601 294057056 975822104 808058259 1041552771 653802907 380502188 709077854 594236878 367870069 887976414 929775838 585812377 972092027 1024134260 951787585 985344484 640458886 523241720 671421936 947826709 259203073 1068125801 215859330 1021545633 631365165 158927832 895880000 353813718 885918453 54593735 588416474 230236342 425160607 613836779 318909297 715769281 934029802 911297197 218795550 563411725 748606552 890016397 66784304 983434804 533500613 737877213 73008052 113006735 268815180 441883500 128105898 231205746 274861044 1072558565 769382858 13225012 115552766 612957434 370618360 23423309 234799159 361251558 625756523 763503049 688648578 233096276 761033894 105638058 555114253 160433821 357956295 650476027 765224826 675194890 985817970 34812293 87544255 254232752 490409626 682299814 631603940 84207567 465606207 862637582 710904750 680925434 729230311 679530889 873119724 1022685994 267237608 406328599 612755976 931739922 961113257 445687459 833110039 305888637 254563224 559255209 191576368 664737850 369439066 251050550 454400726 513570058 305123135 451779794 102342111 883875705 473474705 835883603 529664042 760918288 315167488 60920878 127318786 450439956 427108378 25904930 506768820 8809542 1070291409 916052585 77684754 305254174 1032024737 688151483 895538715 221436958 458049996 814592721 259539967 640522793 706999084 622898158 405941606 485018879 1032542125 961908305 518913068 539482426 277839716 502282270 876251257 195945700 771179395 438610271 1042955258 372890827 1063756306 339702892 326656929 549250913 655148872 724302530 166185390 92254582 63420740 760109614 675542849 426273337 737227683 189304476 815805958 782273465 120034653 657608602 405967421 72640562 342101619 881700917 421968177 243918404 476382777 306587645 47124999 537524791 694644483 36569213 131060697 59953382 772684868 717322816 243325236 718898607 350932689 731151866 549883041 653796748 561241661 98654394 946856941 62323404 1053205899 1006113591 71301585 41746571 301168117 944050839 164914923 862414006 799260987 161598365 492955633 217932809 44938043 391859466 591751688 852468029 67853169 577017228 881660917 256964662 680395992 512729186 253626589 928828143 864040739 813987553 631968776 196475219 670936542 970319507 989809263 702747377 694467348 585915012 885489813 43384056 725777335 60314818 626044107 755103389 256030843 1035992222 617739148 196859625 647574407 980865629 456378158 783321244 270274967 69941002 144736195 270641165 121128450 157532297 1006202249 1021604381 628035669 373349119 874756127 186981383 530827081 924473623 909075352 270362859 731029478 189533529 608908259 842863510 548457818 1043190663 92420449 398438613 157452991 139868750 992558875 427352833 611889532 637997941 320083047 949955440 944412489 359762331 413062285 238851214 508983408 940614797 306855736 979675201 837888040 339056315 840414136 1033504039 340782695 919625899 660581113 519640985 68066081 722649266 983445684 314072983 459339769 99594616 991541713 494681090 2138378 1007250148 31001304 436755971 277076360 392153708 953551159 219140113 833433331 468236236 1019093568 543361907 974224560 296368187 793469247 265281719 603392038 972346170 968872188 297022347 668009191 44318534 1012219183 1021060596 124872996 35196119 441913529 166203502 207374311 406962000 729345582 191582463 1031745911 400362056 666027372 280716691 846110754 980031831 384251941 716463832 391696549 232205068 581043443 39928572 1042744087 230724867 521328629 449115399 270328749 129542419 452048851 261888493 796450731 254209307 486991163 169285633 345239292 785932422 712213500 20382788 285097019 430804959 373570915 581716166 744270611 1017320508 710587173 161064223 596721917 146835323 110465478 341544737 925600688 1069941220 78628913 672443776 318575433 571868712 736644239 161513811 729559105 432272504 997739251 377831506 95689241 774030063 526565916 524611653 341322403 406465705 430229238 20483569 549774554 671187154 12764709 819155109 104246577 636670168 1037941575 390087402 294262545 781806368 642904174 621582328 122749052 281804436 881685636 299080817 736724275 616070422 640168322 865293418 800212967 870569848 646779688 1055316278 467917462 662513171 613076027 1067587587 828771887 57220895 852707137 912792608 848994828 589155406 317930147 487785687 384278765 677047933 938457983 25591269 189809885 263549115 735901352 192715018 920193543 319569289 252567007 10432933 550275058 995111343 977173458 393120173 776740895 521376393 372082765 130106058 719174799 590915970 577223368 415196796 726427141 977028787 594800941 1008651941 579293033 655818102 640742814 320784368 278521551 585268726 616652687 183362846 717879518 806492880 510137021 562600426 452148060 368766551 811869327 627031230 93198464 404382786 1050547493 410066691 409214088 376545115 18531732 16024098 1022055462 866331037 796722957 41871616 967758374 341340967 222889244 1008373568 311190925 136072794 745045218 279760176 67728369 784356121 791716782 101687022 267361875 688212203 831714467 795913424 105018344 792092551 561119008 1062224390 720155857 178219765 975990843 571939395 93141322 830841869 849618364 857866234 1036122845 929727502 982830252 925425656 632194828 525877712 22288176 354299834 100350475 922762768 15733559 844563545 122692852 1013998885 1054264160 295509271 790845070 63728534 497213392 947439744 474301843 443772089 771773334 468703942 721704930 842066141 230965215 717539875 988124527 378833112 484419345 851736936 917208305 1005138274 315959315 608201568 888589665 717880652 647428899 435441222 1054078156 60810143 1005386102 170262876 473893060 101298479 476370545 587723530 89400354 750750806 702102843 846732277 1037200939 488041496 1031515546 584760474 267107516 262489023 111665158 641782104 107535165 942582200 272875120 375713938 778606511 915855134 239098551 37239848 626479427 471302587 5029001 84608028 12731041 118753829 285266363 836866913 774468906 725435091 1014328300 1042140281 917272826 984005515 631479862 802091294 890725335 877412656 15198294 68540428 561635301 802845856 466967867 103648785 679454544 605135573 541342644 21450436 579369698 866246157 754635067 247632282 90529399 985109308 343473643 766518532 472839903 455236830 420970792 218250849 821110246 114091926 350096280 183127315 77927678 11570268 579327776 795911715 1016430306 826058439 513465054 627717751 615208998 1056495518 1062307217 43985132 512011802 923467771 888841321 101708973 231023670 380635361 3625992 377064040 418182386 1017810109 296055587 453172606 562947416 43091137 339974489 452945257 835787046 286498984 310590234 302639177 531437870 341450055 326574172 394631248 361712576 545433151 323812074 946690084 1043520834 91187112 78177407 523507067 870022036 111623007 678178894 1038853559 888422786 899202166 911367730 643887489 969074207 985193803 1024713322 991825023 131748747 471824373 801463261 1051522895 969717256 589101587 658283880 79021512 215241741 804010164 641973121 236119842 166992743 160715652 777831939 1058452654 705055661 211070863 892938437 1007078721 661145132 756816094 743412914 1002212740 990146450 16763739 226002004 852341194 24238419 664630955 213005468 236142932 1028727731 21772584 302757791 1051820569 677737674 356365313 235780530 914034800 375866467 997054423 59801392 657451050 1034413295 550767205 108818733 218054664 723994646 334007485 468208716 668262213 65176220 557901468 938666531 1023158409 247539103 863809805 263404765 416155909 87994042 376064912 376550429 123718099 109804596 515802022 193875805 636988443 454750419 982603328 1060988650 426520761 36459647 636847419 505472337 233950087 326642914 94588130 721849742 439466444 1028963587 404347317 835686814 725919957 618453302 106499491 920165551 861408913 401082150 328091260 693025471 662453945 1053096690 695719345 96458477 16729318 318107376 901323559 906076444 1047747057 593891749 148451394 502896383 212440395 612514593 446201924 1052798840 967305441 743121966 1010389814 119018181 906452694 1068478431 928688490 209991612 978792038 260007264 1031131660 848612076 61056941 214445623 574600853 997208815 803261954 375994120 863947663 33774615 276456441 227595504 759999185 736555817 725224104 518131189 1038115209 307986838 203406213 667680015 1022461958 646023772 753509750 855314538 548700494 943028730 571828705 1064029370 600890852 590820995 526182773 653510496 26732943 50379249 252836723 862526549 902540457 973706704 670496678 379903142 895367275 391936572 229541240 769432918 669479585 896976569 988166876 42664582 31201691 766463141 48870192 293801782 921156974 157123578 758781311 763272210 236919780 381880593 812848184 100370660 343816378 832858024 289063671 270535874 948961034 669221600 896337122 1050703491 243183451 228380291 642328589 1042214072 25347458 850520442 419477773 598586980 137096393 969152303 363816951 840580116 106757975 1057981728 468366248 524232793 393854079 282215849 95789147 855284026 107059523 540811568 782776978 935506827 950161683 1001615628 637193907 397401127 970185419 1031221300 513225942 589094697 615265071 832214066 364335935 246862060 774091595 277379035 674106566 826951827 388267794 585185854 562025784 793365161 48973912 800138824 293546492 212436993 610324248 568586380 762026323 1040134521 95524182 220328288 197254760 786285111 296605460 703953880 350087640 288421447 943575169 101101505 215457831 122237926 892735821 601620004 273578556 805215536 399585899 18029450 200206302 502648635 455189036 567878164 581761649 382143257 1050843036 365952871 533674217 787381826 944920138 908055880 850008654 111608541 605520789 715887155 245639957 204026008 130540153 385014715 212705682 124662865 520430343 491662973 526882193 261603549 969830498 648894823 714545747 1019312318 120614576 91436632 881843931 992008123 552689831 698234552 514296826 467956876 467126460 790420710 1009529638 356300530 529039834 526531960 626998895 494585810 31931952 118488110 689715017 1015841603 677545278 125619673 811997759 39575455 36212 168515624 835728937 619243656 923398600 128843397 580081477 571047173 882418181 950949549 106305407 171252071 252979741 58969060 390493651 63019215 613626284 890917056 63994976 236124529 893915763 358770147 804252528 629431168 24332187 644291564 38341515 788329404 457131732 792640160 858786020 1027289922 725292329 402229392 740341870 554012961 61856061 783077553 287137524 943309895 1007694838 73941426 924508066 389084832 126567249 93404310 228571270 1035875967 1064481081 8036431 916391823 1047828680 756897737 351637864 813130971 234172311 132379310 336700805 672449428 610150496 513856850 367910132 519111542 11141165 1031496546 917578126 683202804 210814533 788894607 861564139 623682318 327396254 137165127 427988360 204752274 440469283 290070087 1004592096 923203668 799808519 877859123 292283104 1047702998 600745963 573852219 797682035 870308264 358048734 872819732 208177304 185225497 878042669 176193914 611600560 448024913 156243574 807207929 801639067 583442191 98734969 681233149 287262490 321390195 401678044 1002843932 419866474 117816959 282354133 242903817 338393528 897486730 417789177 640642604 491069152 105770717 267372435 892673495 9139085 41742093 714296397 262363746 920647090 804236760 788195899 585726267 162524412 528932003 1012678152 955170984 846668516 218491691 948826601 534060463 862392942 711948905 89585190 287706609 426284947 1044505766 133304614 587019612 812782226 827889395 26721720 188244354 71062675 558788782 24975703 386632450 375402592 817961288 292461850 755247447 237458350 750026915 533261138 325894228 864989775 502387820 1062547430 406538385 273250405 673597345 968868177 910701820 659181199 154081582 437022401 514794768 325529306 100730092 293019034 607522692 502171159 761697252 433371983 798226581 712075656 222240328 436040405 799043247 44667528 360968901 130366832 879439286 289244596 442209068 518580902 850666658 31650910 844470240 991267625 293380316 574918045 511933905 333460978 539978179 189221212 800171819 195878420 356193760 275298456 80556078 79701541 43222023 151760862 85885285 610337624 883722662 553237672 485457444 615541864 356664016 728965538 394532711 602458765 77176489 577263471 266284643 690332128 636602396 617493985 398017436 700001878 847261342 889417097 914603073 1009113308 665520095 230989626 992730161 452435158 131900604 309984683 997895062 719851282 28482415 355752538 557162096 557195325 56630094 415490410 24953906 351800740 286324128 725239821 1065079196 946967461 49234202 308633878 437241066 926947150 761721992 946710144 990542908 43976620 659061914 277474718 786240882 493797318 792288370 310361670 114587974 769197540 855136890 777549969 17472719 625365427 986883868 133750957 227598981 242022004 58930409 538752803 749766029 447735224 565332815 886724053 535442331 266219136 1070352209 65828736 917662921 293048603 282343632 724756374 142952589 15591157 600653283 501065624 1053730020 543541567 440725667 203793977 1682038 511379375 87895404 628242948 446607100 191785932 1061963443 355717048 541712194 710545656 52237733 1038944698 605648885 229985234 301905764 704549465 1065188034 472121439 573921195 330017691 936667218 170556068 1003826769 267992391 787754922 838034412 472037620 545514734 668421401 609302911 995302085 731454313 796616192 1073300183 303442946 473200435 164153270 22773900 394558591 508804216 1047384192 171091351 539390763 514452440 547185516 868934293 265018342 106784277 64331272 761542469 1043668648 893790921 237800049 963829849 409200867 551036303 681670102 827244101 530184201 84128407 409436651 210558804 339836129 862995478 354649713 241070503 413847974 838395141 364081474 857935923 806565270 994511535 460115507 413194141 168904135 1009058663 764482476 174859054 424736098 967244815 989959522 515515515 1026599460 1000999874 396765027 944691507 555386060 944354157 279467712 257855304 24559201 148198004 468706528 368350449 705045672 375583277 553966689 907644973 894382011 557359561 772517867 928974021 776749428 216998663 210290647 702954184 355631836 922269698 399956947 885198974 376516078 488992175 886091325 462807558 537063875 456789335 238412840 135431822 91597994 114037037 918879011 653185276 511472425 481922827 1033657307 345535172 723341517 1011741012 259249962 997838602 164462655 357703722 320343347 33730578 772151119 483592050 809393941 175688103 740497392 207784392 1068478251 340646067 143779019 879165643 124750980 42840235 542520610 698025729 373762348 323341247 439824784 304033792 1015118559 919939021 948303971 212692074 288984408 512909335 159267912 351864235 842708323 1032789383 824705992 49576916 912200494 882167542 432010077 392452080 168921600 710901601 438418485 839789445 841355964 1008627550 923158112 975922058 661443524 302849435 3363368 606709075 442699841 486827388 312841700 268012277 1017897188 488772141 654154195 260449002 320543606 1017449000 609774364 202299022 218488408 941584520 256147240 637864226 882979877 776211143 845639532 634310032 405255660 155380830 463229258 744477976 207189374 974353919 861679939 1033852489 637623388 599311470 313373619 1015136183 702755608 503750000 1039703752 266886337 447907763 379923278 367659123 723259074 715914895 520201824 573687805 530804996 654997076 727948197 853348122 97236366 311130252 972342179 420276153 336600537 1046255974 361687324 716009721 298229448 416946685 646088912 329297489 362038431 1035666259 921882596 618236910 1032740618 53512408 71154996 637712002 643901070 495400160 338334159 460629910 625996757 518691517 290958843 956763077 893405928 141634644 11598 229335537 5011683 809652363 297343542 61766661 397447293 142555552 963582882 161319929 810384323 899957514 952070941 354977361 195665366 849446794 938379616 1024685601 58830303 60439691 829891448 536356199 796104729 708711580 683430044 1058427494 222138446 498981333 633485506 95356299 391703828 1047736851 872035431 1038102780 163671909 1040345193 81154063 137774357 894658118 1006368642 154879485 36901717 686657991 333598595 313307280 1015366987 398559331 779413405 571038490 194177536 460122757 726929865 376809354 428850998 567654550 299813487 38910330 881518303 1026097350 471263350 434009431 347389980 1053093926 291308527 628056614 780292531 121880679 670548598 919855567 995112226 934488982 96740743 483713818 873723663 204279184 233981700 104433497 544089170 387995948 566947519 540822270 925190732 349487643 267519384 436663742 969828696 788212056 702481842 180733040 1066416265 680931983 321095911 386971298 268107956 888280807 832796632 147118042 343256864 517183646 258995806 574907552 27253644 193725186 532947541 894717752 305341471 1050647598 1059448114 282190119 287805542 326094098 383905628 905581738 584656672 547323258 90332118 878533945 141586624 238953138 218160278 192527297 210648028 997556548 1027163838 322677433 51840444 370090470 215946643 172336511 893151368 766994266 635786854 175179553 254138151 87132064 171146622 703904563 782944178 83588855 169390274 596012411 931637499 82603550 923392070 47730915 528660756 400899017 153477080 40267653 559691200 436130382 35254861 1058363899 564853820 538565039 311047449 629030232 1005400808 14133882 315912337 743587028 152967707 126888800 187362987 565226312 874538525 925141002 277346852 45118358 245405103 729775557 776037614 253007639 367153403 570536436 156666316 1033735191 734903418 611322943 234166351 819839540 421786100 741320289 530545766 362484513 1480598 769268636 588983111 232949772 462057552 775752803 1012998878 853961997 403978457 707433263 127030345 115866260 551651071 602571109 898733925 878659572 900420827 702515169 648183842 227762747 700240589 124367480 632085168 1060874171 630608411 644644125 570040633 186992288 135471976 584249824 573360236 829877435 117181303 437560136 659954564 735442126 92010292 578286676 166021749 755536605 323791368 671801997 138696991 351159943 452504120 479082000 739756292 356639955 136479120 341305100 349925440 123566764 682459397 93054609 4367457 205119240 527775986 476585374 876895257 180927187 836629230 975553704 912035693 109383408 500211739 26420422 1055070236 791595209 470930740 696130357 509416775 637166490 612007745 458687173 580173008 585590858 416747555 892636972 28543136 360077428 886187936 42689988 68508691 348997964 275385394 94648387 781551281 220346135 688642480 636274647 1032159073 340040326 260062832 137711872 255966455 846771405 473013718 724844346 850879379 819769720 4263187 843539345 914866938 84920533 135983721 1021210135 971671537 335980418 400110410 960630704 21721141 85304492 360235264 968908644 771086792 576436455 454748506 883852076 194864695 22927753 1006494657 550086251 809520677 608748406 837344477 164038747 1034553615 234873999 667270088 510643306 629130691 716921905 1060649767 425265178 1062222862 726067483 744087914 524008040 700883079 1069418058 308087184 919249674 382412870 792197250 421136651 1007585735 1045190384 478279231 797741894 531394667 872278693 822878766 998228663 804262268 1016408720 858226921 44999757 607094391 876448228 600596233 652479332 370384912 364937654 325984391 6489810 734660962 1007938184 985345942 307902540 797144246 619479044 843525700 633343482 128610467 743152538 934197967 492566479 226227287 1030709142 271204107 732452585 841416645 549739665 378371784 62528805 681126077 372646963 27227985 893862699 956455211 930414980 871063230 529303778 56779864 701675381 981034245 849188925 541995284 1053317196 857334548 981815892 400094979 713032295 875662338 360347382 438154685 743545816 217273749 334469405 706825723 331040995 251178627 537084399 977286515 202868321 985007645 977830105 612495739 750234466 467891964 441298996 664875783 1021290907 733104321 1071202485 514385580 224937484 59014744 898487082 508312604 248484329 803750392 972122382 663713512 698801599 644014907 635647235 615678236 946413868 510220472 234917540 409943713 443971349 919583914 1068677 186614929 476633965 774622908 107190503 174350453 815104287 598097452 460790294 743942484 366505109 778740853 501782091 505696538 868465052 216135003 519455331 118336289 610455243 1031163105 725153443 859496343 536117392 892727267 478897730 103355539 697810340 1059355457 28754190 59702719 2711357 1004884021 321170696 888476235 981070192 773622781 223020112 196421336 839014463 409942117 310342743 489382248 856561096 1026831932 384342629 706373247 316773966 536619145 1064696430 829655068 440430499 474809568 252849216 382195873 67576720 827722963 1063519398 32357941 273065059 773445545 925171640 971416523 313324099 580521271 332679104 739746120 110538784 857383866 451661677 20261281 360615979 518927468 109205055 395106894 546452607 1072584549 407990531 409893244 1001543807 563655323 934696849 932318807 466066648 346643442 218608562 642050694 1022576511 699227016 73052965 864982405 921611284 107041845 725195164 868436078 402500317 535553197 880513296 442094517 993285004 822635535 884052365 193974877 337996126 799141133 463555525 1024228710 536242754 57163521 268201508 91276643 1039042263 339453893 511805363 223973623 393861581 361751754 37195405 232875422 58924404 400525583 509818091 234800510 118599393 207281415 4324461 350871108 280442242 807226637 564091463 213578401 225604390 288945383 101010242 809617614 485440765 759933824 8202430 637850052 346649885 353154145 517364204 1041736266 848375955 525407987 507839922 397853095 352735085 789534901 764700828 227907371 65097114 351043960 411015316 14908346 927097110 856076781 427868473 435891636 67082873 620350063 1001118101 191094990 281370044 64953938 984887471 176614150 932188016 1065191867 445675265 692537765 429567357 586717887 278646897 774711061 252708104 850925747 1020766250 641760719 779130635 15744648 914837186 877063831 446071880 1013285 185997257 1065004011 864261836 446530200 1052887289 174219477 402623617 783226255 400420728 428560203 192960280 187287898 231861661 507582363 174985991 14197530 324667223 1029698999 842751332 1001681845 783215614 372285747 586020879 384419108 1003859821 217446072 714174480 183944292 187541643 1051862498 901779856 509889189 402874761 571271550 160693388 58959688 1035564028 583749353 837661394 814682951 51292490 702894884 26811937 162126393 800358001 538886310 990440809 186368887 463907022 775460968 878795892 1071231475 1052443251 539335191 721110110 744793373 359059779 39308265 997711682 285748430 484520343 295520538 235317556 982678307 558081626 318333663 346021180 456772912 93971947 555606317 906870923 408086927 163925430 339649174 459591561 32852165 293453474 1071830931 499199831 64320126 1002188759 805479062 408026207 186142027 980099461 241903245 251318662 316940896 714561822 349749908 631952180 458450071 195192335 449904871 224283417 660856745 955896653 13142339 226638070 209436839 586457222 559796256 674635393 304617532 194737401 878458725 797193973 147673928 707989510 192935354 397990106 89847556 687567730 556561311 756927190 689406403 643178718 205908277 261691587 777914533 733594413 1064776988 499470644 488682141 589632486 558156109 463403784 1037298859 225395440 165758370 579549180 449380238 437558895 797831126 369971813 533574975 1001682035 465329869 372157995 203098585 849797011 488061691 922722412 624923115 833391763 316390986 53519774 585619706 677309652 213146610 1054013888 154420825 810759897 213687331 828712586 923841231 411728857 908032828 440574661 46325003 143114237 459485289 809062843 1056485028 672820883 1006829192 792626861 422125662 729405415 58720032 550191034 1031884382 387620169 114644879 531815077 499692875 36820723 587531605 731321786 840869461 292938133 1046370111 695528742 532860522 937454013 753486307 68597960 2682495 89296879 939765959 1042450173 496364832 354571683 1297796 961883415 367126808 83334568 502712153 143288212 435456799 929838839 426239614 714734621 1065111790 1028382950 413582192 1034738266 771806963 623975974 818937477 539559469 832148843 153061960 950789108 180256593 36679821 323650815 1036469058 625120311 221307838 245019128 1047602074 691586238 457952775 218399101 107721300 527492555 918065126 561928350 183256575 94388600 294169134 28427797 536859877 223090424 391472743 258440695 699660579 674271744 382907438 494122748 165098121 82046967 983318424 535639861 651689956 460320012 478521795 892369672 307171085 868494172 867758481 67268823 730113971 901040084 474900765 630066813 720845906 185854306 257615000 761302454 701106954 989969819 724493875 188503585 886550228 931154820 93305319 587784071 1056052865 971755362 286949329 854349178 446023482 389587083 438683046 603732154 702088675 126202857 505803026 260207129 912749953 79356485 631789003 704499767 284913057 11032447 555538754 361767679 359023741 360156609 957089350 663868764 495316981 655178408 949670184 456314934 901446075 878050823 3763358 627338034 995245123 619390449 739683766 516542265 181419666 942404629 518347710 97943307 111487658 996423758 472786328 916170466 620393854 191485948 695164221 1031979422 619102847 406414653 203076512 946734973 569730851 604849656 656031403 843299961 709548154 886071264 23783509 231944807 469933121 514322666 629546352 47386743 659618971 604968394 872994939 99364706 269376253 77406448 362173837 399418453 695711533 829962263 305995974 686468780 421492847 917389197 502805161 466334067 566919597 600537863 781407208 299720855 413950961 411872611 88645351 67475713 554198143 936840357 1028813737 699294598 476817706 795335403 709980279 1057458234 781344393 792022312 799352276 226339175 706711634 834190138 315281172 886607406 249667726 1009257145 726434385 938429136 524213243 966798761 442263759 832256293 907724232 822775266 535249727 212302085 319784328 656860256 346371877 197658147 669532863 415050202 846507093 365646971 717304589 872330336 1047800206 147172486 16359415 598639202 374397885 473894584 568919653 831269436 543883654 393775857 465439108 174476503 541910814 963416930 422692807 587581731 240322502 320334929 786577666 389525496 134585993 831714452 545181964 144116230 179296483 999746 973203243 74652736 536979905 729342255 295646924 755247922 250995322 46884866 1044968080 357177904 144693436 888307007 712915063 743378067 621304202 323850570 582600991 322043471 23499316 64338720 843495238 311513897 376824605 168892803 489968279 1049219104 950233155 635446334 640898703 843794640 779974697 804871977 803479656 647714301 809656622 906889142 1035333828 753533848 462349804 314021177 905737584 34466868 592522040 38978165 174353495 855603203 719683242 607998045 722303925 927790552 1029126971 239145512 924284855 517212680 314800453 979445566 658226702 141492761 1003757588 519335100 365329519 517351747 593076087 376200040 161004955 655790402 987349891 866396867 230833568 994361232 980339863 611564855 102570715 140751823 833946071 525117339 545878097 29220527 588182618 839163863 968734524 762087148 929965110 264828771 727077933 812173165 610743337 840631850 296661178 980773829 229457308 645216726 916121580 614272527 182934473 332571427 465068379 346523394 295002835 903225416 433336938 517925349 369581938 731168681 900203017 1021549321 552597273 910794692 349095709 273200741 287412554 807441729 288860627 885817517 768258075 294809812 315603382 33733687 188428218 864198607 677526645 328759730 691723316 463683068 931600205 1041728508 745379746 251772035 223414377 517787293 238106380 147511642 803142490 516775224 737705165 918011039 873499887 136721190 696361496 366957400 973470152 575895173 596275927 570631393 944110673 398262992 597524577 24277977 680597616 252777913 279764364 88045386 662716181 838204867 950101401 316427624 990543964 448985887 683764446 371921061 365395306 242834904 795597451 144108399 731489696 774880943 347376460 302152583 555708372 163932915 568099465 110795832 793602677 621902559 612033432 119234964 210961745 556206949 863419162 943706402 766385180 759090671 932849806 488435440 347710085 58245574 669233227 570884439 955063382 22950035 15216687 76550432 746419952 258634920 47845512 614781505 559274457 954780154 486003367 528366547 123480942 1051859884 50090748 843084097 375731268 951278938 886620215 850662790 47119731 991230985 1006483415 243406701 346716040 190675264 722948026 489091557 27774565 284110733 551148640 828026606 858919980 231194469 860695563 371211462 185923468 1011470199 705271071 313631703 438165203 893117665 728846719 518803061 584829895 626968894 508827281 803089465 563382017 38371007 196526231 511489352 109646614 936659887 508656107 901761618 413704938 371577583 942112064 821533658 84938782 263697591 560303373 674658902 501506941 1003719615 961087432 273816872 222064749 881024454 1025493759 661934274 909249322 986674379 700403789 498467130 780966683 146632657 821739711 195159237 694174898 665213162 465600613 273581160 86666256 58115427 875288457 944314250 852263984 600992676 627830702 1027323451 940846009 1028977863 891894352 528837210 823844419 680116325 1027588595 23637679 812920965 829904608 897137664 217948737 113481290 604592180 983845760 550083785 496858227 492048227 453311825 636682122 622384424 347090746 292766475 37696741 704915541 350621577 171380982 2411793 800300529 656745355 411434453 770540067 261073710 501536096 1035838037 38988285 445632323 551849807 973107230 700342645 366890653 31662531 916188066 272552952 954663714 513381336 430739651 172445984 207800541 118980025 127576909 723400793 553491601 857568521 95143241 450399920 481721035 760029541 485827643 983795495 674191973 968170057 720083351 384226337 356725630 1071638513 458047218 1018721037 860734076 82669344 756510226 698115060 19439483 1071692923 1035337256 374030187 790793179 663068804 317213245 1035370383 669428058 729240675 243891038 620897009 91476969 1068631115 167564808 513374025 268687842 755199823 745962210 345890760 1039262933 350738258 135165617 229981236 635033245 767051189 198854844 685916741 494513679 598171507 370713741 591372325 608850288 121635827 980649363 914683876 935941154 480870755 445083334 382882179 867587425 191124920 836700501 660635835 943023886 192779107 146007498 815334546 421969787 40809644 274665393 732971192 767346732 957633130 590327068 709699880 535237331 935718674 209391214 515888223 874611267 317704092 261912580 227799270 653518309 617668642 658368463 664180291 656695640 9797888 943987542 113357421 76428715 931304498 780269970 428895754 151019337 1005679353 885849520 440700382 158430466 670238923 653645976 776313340 753840466 765885162 191898118 161372706 744896408 33821443 954127625 70169915 391315223 611678166 329329975 191313265 673160872 585852691 82154101 475334081 276700364 1042723275 268421423 641176432 253315397 660336226 507298558 72775457 867612743 349238423 711985223 711562098 557019580 579971730 103514666 89133664 290191386 626546473 139098109 861465544 118738284 564626347 394784422 836521968 397886503 666458927 250662903 330882818 1018943857 807481519 763722961 1021328212 5181042 66475559 127785662 879824199 80383376 640782142 264711497 270972179 423779762 811366550 487784725 166346904 55832384 436834770 232424226 452964765 897796149 553216229 953024956 583639416 361520980 519146275 15671147 187641924 168375821 760140586 830196202 782596415 764537466 297015272 604955476 917564006 889109537 420939144 832612363 1049060552 98883812 415765064 1024750431 28201936 861598925 712885387 614823387 920969153 180251025 1033667093 435100586 182957469 963566200 534928363 931065236 98743986 626328145 951044403 777345937 556985756 244769125 176070097 326582581 1039661415 289457010 240301438 25280883 812943281 983940897 37658896 149014143 821236392 896400831 874785943 81659284 176090551 529288013 200726414 836308906 99280058 656469150 922986717 255791373 152361433 133380609 423146795 198088385 617399753 388260815 387920886 837455566 410724410 494805459 463875929 272023458 1013669964 220408826 611374408 396821935 973927048 635407878 57847287 155125541 627772220 1001973611 899346562 410403017 703776088 568696577 259101812 728004416 760358195 610188664 315320307 540709413 445119887 67466801 712331593 439040796 918289283 910577870 341368000 1006896257 637050602 5275634 345977281 793000457 345867505 320868871 617813225 530950095 583468836 451605624 843848069 459277767 1008286921 966944009 971221595 44643525 40466895 497130584 85560882 1068987982 59105095 805768195 242784666 223849065 347989816 353175647 893080121 236452249 449136145 414830000 950369713 820797425 379493353 1045896132 1019921732 561993507 431151357 665455278 130345060 712314103 1029218038 203260567 907832741 559668019 1012772409 110238226 683898402 550060334 349396605 916923994 242797927 91201038 2062804 540836983 639579625 465549464 774814739 686682639 356422655 735879170 184169154 949210252 494589984 1072569340 583768164 310992668 724578203 1043467013 400601074 960450241 18458766 798732962 15941880 218899828 609317330 156592160 198136256 354469481 433392517 564435478 1050051563 10708439 977191038 424246813 71221321 1000015636 913417373 688846812 624627332 1019107515 989423368 47809527 81992348 820322991 1044320255 720851653 569561599 735051377 740238638 417098825 770717485 359945271 610762678 475209650 902586976 94930198 519236228 164089113 665192832 562098694 403349344 532792798 1057790214 181827777 1020879972 684179650 667788475 835751618 663239128 588518361 584273725 139359850 295831655 663682903 779644024 217378190 897222658 101645426 636961855 869661011 594157673 53006787 689838677 114006020 55427057 276578545 587953726 1072953904 669488502 7051365 160330507 661771497 623947072 643789412 766301344 524258281 368905227 970349087 888780779 402630014 215224533 642437404 702698096 624485161 176676889 415078608 446351376 455475517 794700208 618867703 1004329285 161005078 1052880846 549639906 20807421 594269019 69110204 61928214 1050662031 166073759 170585658 1036452829 228034997 307539895 565556658 997955255 416104072 975311505 750628075 24389266 274838267 127920791 909856728 276591112 859198042 256933897 797937217 378415308 288639033 784469172 750301201 115510429 463613039 106645546 83785672 717977037 1041203719 285858310 512871370 373900834 561903126 758565179 726531939 359121097 803314956 90882797 633956819 493458647 6571688 741275581 556723863 187419868 117149235 477612654 863210296 82499817 439659638 911971623 861048640 680532318 912894374 356277419 752890541 213148394 573151835 391045294 511565741 443209691 12119146 543741626 73066074 266066694 702918087 833775930 1066446687 221641870 666724985 30273756 1050412769 399827318 16810547 72254328 1046757592 925137691 536982468 946195821 832800823 1042032782 977994472 911222823 246531889 278450678 560582124 17405987 235734383 1065497317 482076496 883029924 11295150 320673410 557442311 405830007 1008846201 290913834 592857585 347053613 97360303 702447956 877107740 455682885 999819785 749678906 382390340 388963438 860633664 382771233 731669975 328568381 917472096 317071029 733742324 325589928 950836573 795240970 62278647 435501330 707162926 71103559 227443196 728743268 1053321453 613846974 107448296 390443035 601303373 771894086 1033549483 237506250 1009395062 840813977 204522887 74874192 882471662 554675197 594255611 415746768 503379345 844434113 142702499 683365299 374277889 382006794 766618145 676066298 804744164 509844575 257725835 613181870 187789397 923665774 572763755 33460260 1033707988 1014978185 605057500 1024677207 205048703 768759689 815419682 1034646740 951219824 181976841 104202165 920799196 429845712 572054393 748615875 435469542 687572269 1071327934 629160339 187219733 412238775 8197116 488850739 147593844 599816 182050277 889898409 527084267 392258665 114885981 154348936 117252884 552818572 1065226126 485238828 555432142 925380898 921606702 458302533 360563757 95569780 552461673 178264593 278173915 798707705 800321943 396036486 146481693 776576954 866080471 1062273034 523738888 21366923 400358430 43951183 300257883 327864093 626691181 765070434 192006187 421514900 578740979 531770386 757928173 818406631 680738465 195510360 653829605 379142537 447724380 26218787 144983205 710031973 274306802 986175920 301210080 121158247 735841835 830746555 665227755 77169562 863435283 226024964 632462011 732834531 444197229 798795069 290152304 54301627 798241321 85501293 491031649 818828943 1022252974 902100612 1048539998 709551476 572762965 881713492 680369885 773623129 118766699 878092274 617783309 744869666 472800189 575357537 846736765 974541229 236120216 873255777 375435400 437421514 434160714 44651584 111910637 1058911953 865029517 21774442 208007245 93291347 125808026 278037713 74832480 303144869 300322674 397947086 860078647 219129831 87952713 960087964 1050352239 501839817 531757534 853321761 910529116 974005580 143142316 294600501 606196992 636951601 109853757 13262268 675910451 430758917 624138987 987361448 909427226 157623837 548054916 429561131 26755848 626089749 190769601 960345023 263041436 177935596 456425491 864106934 1390168 999889292 308361730 166221870 303499563 347365016 1005556314 13266447 303052474 865559167 1027848923 444304558 4798557 678604236 405303684 591749833 534873973 721482182 560669546 857024783 669523208 310548173 493576524 1034738403 845398620 657446249 503371750 124213482 921511142 469860239 846914667 7305191 42994483 883273513 636957331 796905098 1013858300 49096312 282928261 434551067 741852328 802233031 390363865 734272168 384149242 1063968124 48064841 619686993 364101002 727664307 1027690568 958545206 656225108 399267518 20998484 4132397 972464939 871824679 234147268 798939521 662603945 789601660 35687435 334146408 346024150 215523826 471509915 338700280 180319909 499942477 794942672 550140000 942559601 346066658 264478465 924946358 972220126 847441263 160600708 334647962 958776603 326987764 523924549 82464784 769110081 43678821 1069808101 580153278 297902910 759081967 191805320 355338508 133287035 911828374 868692414 163870533 216159312 3543560 491632437 503726721 665468662 529851319 648032563 527793627 972179252 248784715 988717349 519208189 943265630 1063726833 985529686 902954158 410628011 269443327 828451459 447264464 987829448 273534720 445171803 676427899 498789923 735931275 869748044 874863579 922132880 916602617 892014990 565810949 193692661 494102750 472455157 863049261 1067283363 1132198 604323111 393780765 93814978 842476209 788144799 516962551 948784905 1008537651 636480978 784972012 837170307 334630604 75366174 62343384 799234250 112646914 37710349 879722429 996989978 729667217 702541322 216877195 988745614 642251066 927120723 471806189 711525004 346401037 124755197 653063515 512959552 450790294 914958588 763093836 116195532 548556684 209596856 233687181 666892808 662379487 478178486 117700219 962505028 850452286 431059718 485632670 425440402 992026813 137172529 114381323 609716242 235764239 508009535 613584857 441566159 972684535 837677898 870358588 474426652 272851075 523096690 886073005 1068552989 889457452 953422363 991486501 823833533 868119287 137404804 976679460 681498951 329932807 812390244 1010758136 294888369 756252366 641168980 809582150 409857859 144004144 945206299 956752623 1063613356 572537358 18090899 281351117 813154468 504792974 397547625 240036137 267298457 121541940 56144241 989289819 383749677 489356573 134657234 261070983 408806489 134246915 295857831 76469252 434440601 717484133 650336851 791753888 485356943 759553776 328520135 964803704 651263975 944480369 159243340 731335481 1011738050 908465707 578129777 380883513 836013142 725372380 706952395 265388707 814000197 469096241 702658848 433310120 364362048 713770656 876041374 332224632 427779547 794304636 426436281 608995581 978928187 47622263 909878118 992894555 186613864 938430145 850439679 425232953 956896663 302096269 833888077 27122466 587781800 417002589 234629113 506792225 979393302 750670205 432774371 637516408 1025622090 588493906 556380114 715030374 962578481 702204332 935788801 1009984007 823659846 561068601 312306652 190890872 347059136 718020887 852532321 507334743 583216720 97608429 689543691 237170026 286156117 826708023 748369320 817833416 220131502 969572451 971978792 627607255 468638374 163127625 645735095 30767324 579723011 250937045 403075108 933182215 360325968 433960216 907584141 259236430 1031350733 756386651 541176942 794085391 857493396 277172511 1067406807 879248118 221131050 110858912 110545663 7152382 995715711 224069749 780757982 702683457 386871320 754507341 630730067 394378612 762944034 156254555 1031424982 1496899 222878813 5863113 440819774 37733923 477313628 61352092 668569610 541783150 516654586 784572475 337426088 546356305 282622880 718190435 15084098 203122658 968494113 987574204 252388044 1032531370 481750459 836370253 547364034 968323828 714788372 1045121713 544886387 447704941 88423886 964177264 754065559 887527289 487650653 486272390 44331921 373656671 911684830 597342566 642999673 684624428 365088781 987144305 340260746 582248664 725308696 875716713 666161254 91584910 279477161 765147314 373466045 675300590 523178083 212720654 335019407 628096780 453054105 528127493 375565203 709385746 185475704 227068340 353041524 740884113 695653007 1018752933 653011191 405765994 820147646 815751048 621716375 530335887 1029185730 615346604 7385616 1015284095 459012143 749155671 568821677 569979619 910263682 362257207 808709539 950836345 1068295325 947744933 176605699 173670444 172351162 914184206 76394986 123148502 482600208 700949018 4854942 1020102856 684704258 1043003719 3255637 727862276 249403925 624554550 518202090 428630845 590279074 385178271 476415249 883122434 12055136 304075820 660089474 215607273 191780421 167637063 167830258 219375067 482744202 668422315 843946265 952453821 591034577 911425370 498810782 141645055 466136411 491142706 1032532021 479206442 345160860 396576349 105368783 927882618 240730497 170005779 113069164 520545967 879928809 699230257 949066216 491359068 599447532 767151834 570389041 687281589 939683912 369293072 72715102 897310951 148680747 1042556992 586731993 103422852 924332999 410711991 89362493 649692827 916582398 435221749 1535451 1034651293 451318991 171527285 110535245 684281890 72438445 879201333 863449448 250903464 1033926189 690485030 1061003334 1012612637 542802506 675382093 865710827 507594954 998687790 435271929 492977560 499329485 520129838 306897462 160055345 899400742 451927781 918132224 972817480 197545412 229643001 1009113446 144047927 517707754 929928656 402245265 236653490 996361715 725214594 41527376 762051831 1041697818 398223882 342511749 858409071 134484072 721999328 75639094 742877265 125543581 615927682 999335688 1035738762 63434751 1043613924 226369680 376160092 380995226 490973246 559104867 354119526 952405561 373128568 929749825 641680906 240529667 928735548 933667960 384669658 15649255 259826843 833168416 195190634 350772416 398680222 982063148 306111977 258819615 1044665496 561695046 1053731158 943174378 924425782 990893769 481401617 563357660 144581191 731164064 220824475 109314787 418432754 930842051 740914952 518926093 458370819 670127710 574403052 839761116 288631862 169222541 678815858 479898326 1067555632 174542868 1036968217 288453346 145017065 919966163 951209163 374745553 375370358 914107243 611051236 789439769 614628808 986498661 1028835229 68095509 52353977 376099029 314789714 1066498849 833544707 687500233 435859745 193673374 713728467 274655113 80188399 187456532 530659757 539748484 924814795 1056781414 218263965 982782450 476900316 40240973 798313321 760358337 840062535 818158857 228754664 1071212962 112208652 271828796 650735356 308836555 923956673 20038013 580788390 887786926 511529596 169791347 160282656 661419245 19815613 424399784 641745168 860220069 120661256 153822521 135587902 341429604 197985175 454006779 411894296 480862867 377927966 802937295 129670219 113408140 309238246 88955107 697304392 260540360 853100039 1010674360 428349067 64735230 469788597 270015951 243647076 411076582 219788466 945401616 965768621 499255506 597290775 1009189703 156954237 80243090 44306731 832512821 680245734 212548250 515585541 149757547 481567369 280887881 784159657 1044776209 314226215 47693565 792903165 834472745 617600889 835496762 447526191 1006854582 861207617 694109304 692570683 321852287 371628320 63557812 113061239 439454212 1009309950 822210746 848296813 1022844134 597388267 689588705 944282296 191396150 823633632 602613785 94911442 288324199 231250226 917247839 772130484 730893257 91083403 433116509 170282469 995071906 213793720 80661658 224056026 152957074 771836030 942903884 72804901 833789171 914386182 566646000 317344452 485753952 938541588 62972689 24053466 52525587 572220640 535412169 583598392 61138515 985113736 917910173 257915633 534070061 482121509 432945926 554005273 989810915 64331886 333667883 1014965624 746758415 684595435 1030050813 75425777 828232 907022290 65818970 538459719 871254678 650357420 762421014 550903586 333157972 476940052 609315793 34539021 66815795 308938477 449238122 145078204 52105914 866634457 921035401 752540179 761844400 120840743 777447611 192567535 695346379 32544720 108534507 751486694 443425354 131673212 885596878 618619331 744092459 458437061 35916480 110579406 343647478 222429996 922784970 140377821 50746478 328538764 863543945 579781271 267569104 202250106 1023713692 475432328 220343317 1061232069 700177025 189090807 100322185 854244506 115555824 913888553 938839821 811545483 282426004 1013551144 291595940 51080083 300417295 182716610 326831356 79220357 798296298 25832249 195900870 130257983 661210634 5028597 575255019 142955117 1061050200 1026248812 493947782 772912907 591515166 865352255 659543768 431075888 106171576 1073085276 102060169 578348865 591897492 440434645 169367875 749497583 352303390 606854454 950188951 1063175851 172563232 120221771 415482514 188913522 323720332 257576266 190968032 624939839 764122110 543217742 455745033 1064691182 562659554 736258441 165521472 955858777 237037432 770248618 842417706 5190808 269823000 567922448 664948235 348731124 105482582 784816937 842268066 1021493732 193222767 501820487 777895893 129645753 93872225 946778634 189112110 1052072191 561061649 801714583 769550749 957628064 732559415 926692785 589283762 454832673 739761436 700566454 612667039 835871334 273741535 647939399 446438590 549066530 837448652 655963271 1038382196 1056401678 715859814 335948160 911049651 1009615381 313648817 816084829 863536921 667477881 559764668 422840925 354531538 926364530 930892841 466117412 1039298511 952388313 717267549 37407715 284242654 500688206 294198519 764054885 68673146 92253512 661465695 152890698 862933988 439487912 680693825 650721868 503272910 154114603 34365527 136660635 416370937 277599565 7302966 454992866 839644558 667469182 1068275121 603024142 35152260 9329895 182310510 127430167 633549148 69639266 358662388 145816477 819017606 459978892 768729005 489487886 2312265 999008235 203083514 502912759 591902416 163094506 711355862 466359935 566579743 101710876 149986845 46445685 194903220 1028795778 666927020 302121597 636121294 793559975 648349961 687961471 437999216 859317030 677357063 800883233 427835297 220790649 935799780 986428114 923767601 787569044 54451591 665127795 244728835 461305482 1033294396 675900902 302451717 117759984 133377055 872897120 482001098 220805066 160642008 556201976 215011313 463074133 1028011383 375520301 479607750 421127496 411782975 363192407 730879799 550035641 1067607226 87681265 987560199 1068920579 315391680 284102743 134508021 853239999 380231204 633456096 742375688 208186738 467179064 236035462 639557079 268962996 905589844 568790911 847448940 510661468 436087608 315443497 620107128 565063641 912499305 409976152 339328704 363266255 961124390 292125467 472330578 328507814 915443491 227522367 458223819 521048610 726817380 855892736 332481181 92052556 276498606 540801072 811693586 839644704 273604511 436427271 324167798 531252042 435573902 395161319 992938488 865947447 585446653 1000799875 289316079 236085188 401473956 603859003 421462901 791348840 966026688 904738371 271949741 915896461 849048042 846766616 717224806 1063888763 865123561 134321055 640932582 1008879051 992901945 413017729 841872507 69887600 778156972 505454715 92366929 225111984 260107543 411038724 123530098 390718587 300878764 226967543 1033626560 1044821473 286705161 559217553 1028631956 647030830 837783225 748891841 14739796 125693079 56065792 976335435 94553300 799661857 866379063 993860959 653961691 984526067 530065980 312074820 650309464 804762440 44096808 65060603 111464876 798353164 653606925 275269181 783693716 865825888 116997316 147686798 25583807 378037897 141815510 392257826 158780121 989536694 1005943410 138781578 343513234 868770558 511083159 812589878 738349337 158305498 1029593623 875178774 652760722 420691556 1060546434 60299314 451478320 578879806 763779476 69708229 949927765 9464950 994816109 300099536 599854962 867456015 741769666 90068749 150591177 760215054 780765042 85136781 145215263 853097412 243449863 144480770 938700069 885360579 1042055271 360704721 888696346 679565532 84754547 147520913 63192125 1038469762 433755732 830830963 311975172 977843415 1936914 328846228 8915329 649800279 419015563 64843610 879859880 583527708 949581760 70270897 387089196 112858865 308153938 520623512 1034314788 474325998 64880569 868350507 564229891 676684883 183083648 315876344 848232231 167758937 1056795460 80543893 302908896 490146569 1067008933 202928036 660188444 1021487448 687300696 560735904 530063537 940810806 392536411 819400202 456401523 832772204 581591610 630771954 615198204 665540077 155683949 830784186 321419425 207827635 626023420 187839346 146974540 127158013 1004478719 852617129 411175061 200127298 276220577 1067031502 204195986 566009910 482415423 1012634380 736057420 436143801 349920486 664577608 398689071 29558676 405934110 82475442 115037552 1035891503 843184391 293635348 635312326 723328043 607552190 207494909 255720799 32817558 688506641 250148749 800997478 457926815 138865906 1031604970 147481372 528773610 933994681 71247161 903438919 681992503 303690408 244846661 310320394 591561732 945790753 855184493 928230770 447758790 221501347 1047513327 1701156 1029114949 522510887 220012677 362391826 705345815 567861140 1000340994 140206595 490457651 922232219 227149273 686209579 279316998 823335083 965152745 393844294 55570364 128256636 642282795 954843389 401999254 248578653 470760328 253018449 984937099 825359384 373832315 277408576 926295260 403353238 797795368 712382257 1030809066 434012530 1009789405 53745566 535305474 967397899 162959686 632503480 724686145 202160290 45745311 1027275462 1015696865 823543730 192208807 559467884 550168477 922349553 4574843 496786198 352762392 1070751152 313605153 52104903 189205423 723939999 121648720 689533262 174650440 798669071 1015994393 782707553 536883088 890304348 262007056 232428406 191731249 131018812 769394836 470862652 425068196 92791646 260060729 976406692 457774231 390786200 443865647 744892192 347420303 852950342 650745575 1043013398 400350444 289695246 386843836 495277407 852036543 948369042 217215009 430663325 853527424 753363093 328577155 559823515 997367060 481040138 1053835607 749981865 42461804 716024260 354926872 174531487 499661983 389844652 671360091 740578147 542421034 611011983 85516824 547314738 388466124 621678469 981025491 211196191 469540645 923697546 887846910 672486155 546991544 447732419 1064573027 459152952 342534457 95110815 1029845357 2279869 93184627 58226244 973868882 872658377 739045518 270193313 298249103 76592981 69305299 382898624 215702983 450173810 716785399 300570402 633617235 830749223 166187781 598160380 860662303 567140027 823334847 882946677 364587635 356409587 427040212 83146434 761799553 52952654 174860825 162916171 736066902 667237444 742888523 457228476 491082849 907501509 207882418 645336056 413419488 588825078 262211809 38814466 645877761 618856655 887558759 809013120 70974086 705817875 273884910 533560430 391772129 100014646 746279890 557878324 303944336 136129698 972788376 367074464 488983249 488656239 601460233 878707417 834928019 273909658 184606652 724373320 440005387 483768158 524733252 68587723 12648938 468767171 841423888 812287896 445571442 625807517 340529950 417234369 274969632 576166729 545469345 603545157 358651841 411207797 342363678 276662165 620517757 738320007 889881247 110168111 30637324 919387886 811648456 271558088 638580514 67697208 410978732 682806887 390771816 36437387 607665358 810475026 533174840 115933478 536708730 871137870 980441223 830517465 2975671 998061046 291455635 211778049 772774538 295588815 1005834868 501754298 124240224 410658655 519331289 909029589 264637263 983614809 12196439 719016957 289458687 1061612177 588539644 392043682 861643588 986327805 534253851 15457761 365775708 457353842 333567526 911831415 892581053 358801367 743267864 1002612925 657993261 623834855 878417334 743467189 1000038523 502692974 184828607 261204686 242770021 63711241 41198442 357687147 750029428 917040524 927546210 612712253 338348384 743366459 423486017 472125532 254946689 323296785 597373383 270328236 143150118 1051117756 639331782 80741178 149768714 492919661 893004644 1068058825 431557798 415417837 9039901 1014211830 188420246 120297018 1056437647 67483368 559849688 295126830 325636334 750887713 167714082 1022247897 528736421 269977324 432350426 200987510 366400576 632288277 171491866 993495497 755144599 640109575 673354751 560444581 996243390 716191833 1036295394 790028622 2466893 553741751 291683528 705648425 892426886 840707800 930340535 440970006 146827575 585679716 700356762 12383688 495835976 1035475313 891920271 909737863 716102782 749053392 844203015 863919516 566685558 231045447 81766299 870930059 383032216 646836133 1045241822 941551038 896373233 90060782 708080159 463035259 767544102 660567845 902722256 860661235 622915867 313567207 209445623 51605321 382573029 563592066 973325135 26321753 235759310 1046189966 1033640802 741654146 458546038 223351340 723336507 633400453 379155295 1037516151 193381311 945821289 908544344 564816011 1031847478 340417631 105683332 646018906 967043835 572565058 390467538 450876092 798378040 236193417 1044007328 496685234 834076067 295671274 713511972 207230940 835248098 1000994223 96889281 843395038 553158074 650654075 103375599 416405252 132627863 227763709 1068767804 96399090 209788855 49708785 506920838 287627622 502017073 427956180 1018648334 601188829 834879668 247754928 63036005 191919648 876401108 980167525 890413224 974694959 686697334 573514744 278828522 972097959 125936989 864324568 838432634 870219014 276750020 836657651 1021526139 970616095 822514178 115407859 1033315508 445675345 274007673 657852390 284232502 568669620 723699294 692528584 213784442 396402994 397981999 680329371 514839319 859906369 241948821 131841950 576447603 988404821 446842494 1010284565 932533164 795778117 363348981 300974587 30916261 842081523 84660500 679266038 22185374 636337619 516716981 243811597 908675839 963785121 150722030 100470330 684805047 672280966 1002186199 423034008 495802973 362727591 131619150 96004500 350633281 146248165 906312275 817513201 1005888321 11015096 1032087242 762326737 681976817 803353065 1038179169 828349501 13154257 913415308 789673679 546418305 16135198 1002100430 234867163 70172190 1060800848 79824486 142635648 551266027 593171141 559509460 458251301 1036355833 252363416 190302339 983288793 681369740 583945756 504624475 6866837 122114909 207191725 229357572 186606793 166057770 564367236 577881611 811028455 272667773 807097625 243192701 355850211 188944027 703609562 60701081 791187717 358645753 1010531637 828552594 261111409 1032495862 516118381 618114033 349077796 393959994 146247670 344238724 297542067 381793739 175634051 1061731098 984599331 461890794 1063155583 315083329 875893949 374092707 449880992 589509856 360127909 127348413 1049187707 798573494 113925937 1054327873 132797035 547438433 855611120 938469856 176724739 200468865 898580780 349429573 608560537 967811771 380595167 944328706 462385834 263555795 335719203 605159689 444322138 434739576 361027573 645335794 213110445 800632639 871425845 39562575 668331558 75036817 504567010 10057191 671367148 856030107 320137299 991712449 828870279 170162906 639701782 112530356 591779660 241580114 657288951 117565474 941142670 508198003 76112212 583428227 375740800 92332892 552561071 371215750 851203684 752967214 679613949 964528036 834852744 128796574 493183922 83642096 814804360 63464838 326931441 881332183 774562362 697015662 575843971 362651882 242844058 1424564 324594952 621352353 778725412 394553402 784737714 211054328 487467951 238437743 317807878 648883589 559755538 383080940 71436540 750884487 999587134 1053170573 586820309 1062844630 676494110 439822909 500391210 97676176 515342735 533902789 177613556 1071311004 836865113 253589182 132125521 582499794 1038683743 958320879 558798172 622933654 991428914 435542475 837276789 315314806 645396306 925666939 775504069 200334016 953780697 749447505 563678932 735481200 520315356 327524891 36995377 574765489 206089415 319208788 1034897967 207933431 1017421270 143353843 1038913190 935362426 273218448 849155616 885438153 941227130 265472687 177045445 101734026 371269465 956241817 13789171 134307862 115321178 833797375 318239152 928050414 213873987 93920507 56451897 171064594 943304190 391785757 207519076 956113265 269483848 779415409 601547968 1072826691 27764630 996658347 376062471 608249450 400844587 450407716 937910804 1044969307 214318575 84824884 367629900 293029330 870327062 673592659 387927553 237774573 231831740 111529458 1015819614 257901612 103235560 373343653 222454878 97486781 641680410 110256519 650959501 81040644 588079444 76164917 814921235 350612184 619633994 644333969 80817390 1006013647 343370286 249381448 950096615 992163037 365550119 396689370 580837143 844450336 883118589 435568754 2516296 504090779 600920059 766952435 636916231 360764776 555026518 206543881 621920149 872882952 410530954 66885961 695322275 497005005 982417693 811375159 265120388 1003099343 317086121 1056507148 188361097 762211625 1058199636 489729694 512798186 529494290 490208843 32741799 1046199528 223999751 958947197 1014100924 545559843 850618187 678449812 572472383 677507329 115963275 791595272 822152144 351910969 1065339683 610262418 933914759 11814723 173484106 171867626 355719337 413773072 578013522 550794758 224404956 1021364187 655493800 327452861 563912773 251077557 454606582 10381072 537370110 769730456 712439920 186670650 1058788377 1046068730 1408817 1057445728 718318373 829233815 449817780 304515120 63843795 165152732 102280961 888081628 26174625 240054157 423506850 203985843 300179376 441755523 297973246 939625269 549908644 652439427 423223505 506890183 474749003 410458241 403934955 18089144 1071414677 710962451 509834945 904282237 1073281950 556493680 381242859 829655990 488446126 990873324 579260622 319449454 939524048 818501351 914460694 1012854046 101275212 96129127 368641803 904884878 399621456 278694087 97913424 979609492 400855524 284832311 1041314593 421852692 344960064 38688056 476822309 208705178 338691393 233755219 576637213 289325338 779363509 389748141 635908620 241354273 305854703 66634269 1055873810 233601311 391795019 426028716 1005869728 569219308 650199703 987070784 474867890 640718471 761628219 89635309 189914087 351699802 711756699 179235325 13656576 475316920 289480388 1036021445 423600015 189099126 429225747 127446394 1067270949 318934966 516177170 144263716 530336462 483629817 720530639 524384977 502735159 882388957 637496378 447266686 53722531 743883064 310277205 320102478 575091959 876215645 918329939 457458885 932596078 464716905 795589481 43917203 677602473 853777931 843479620 53630797 391499810 581132312 131429585 753161946 710908076 427004044 586964422 649098214 753890071 828912273 1061994218 171787905 300833792 100572163 549971491 920364829 1035291208 1039563122 144019797 164826243 642921680 679423405 1045303796 110675409 474014365 380394168 202915424 647380226 875598739 558690684 521734738 1052163558 130642493 610595474 659062388 46452021 173902178 407426152 645815786 868162956 227595861 262512365 859413582 690710772 244035329 214488872 180050888 905732935 962060979 907916332 595613167 817877930 78189620 381088055 374657131 599640554 537076404 269313035 740949823 468144495 106308419 690489747 512356602 59232442 982378756 621243874 575603368 405043988 1069088638 535248421 191975240 762944728 246754414 16934800 796493449 848592856 364676215 718140193 129977699 236045605 476411580 781214918 274375883 420016859 196959780 48247629 100857440 135324624 807067493 139520388 868518444 924533661 1040743515 973091127 1021214048 70432002 564950503 998144933 998241995 409243156 231251176 834262087 818624710 960184871 675471993 4601114 217310429 445059577 565828915 520251281 699630970 610788689 492090398 939089711 63183837 29047192 422027515 583806425 304509039 135079400 42641468 533485983 466261760 615570409 42803528 755672205 150527274 961408764 787251341 24441419 2083859 392451747 223300266 605475925 568107145 382909636 944840348 295137315 817867722 251307972 753698626 729522973 167920112 506864361 203051678 67196600 575244835 811457232 271905617 51390960 356916470 732985169 419573623 649025982 414771789 148413119 1065684711 162480121 873678333 409409728 303996583 407590975 26407785 967947658 647991660 130852130 178804347 173847960 767191759 591209771 352502907 316681955 356970399 201096495 195167379 981315267 1016555363 750842046 51498017 26463513 950071559 260017335 572594662 958126471 174366108 599732646 529560031 984034962 75576305 153618597 846501824 128114179 715814946 356251629 942031251 371050930 851885314 604534155 337449550 1062957843 408302474 227253333 862034835 762278843 594375442 483229693 897843249 480491111 873989850 997558185 128367490 194259357 721799358 707069198 97069852 93613753 619993062 924476692 715650461 564377290 1048654791 154654465 554333318 9543209 36117591 737506421 252305733 341036357 549430952 241844426 102292095 69145540 295110061 413863145 635825975 974972119 1060712585 765118787 833089663 76136008 202183671 81791634 607264561 546090531 991572454 542009985 80457003 914671010 807137182 832903944 764735512 999342419 504003465 849355976 24248132 688196527 79869769 892372824 347140310 626615201 1050060489 645255339 733268305 602855912 882595776 998014211 66725418 1071039079 160596146 783209133 802229463 594468643 1029868035 375193580 855766995 1057284472 140511677 110328853 103146747 565715438 169218814 694324178 419028937 578124384 935221710 39656686 524332632 735666312 265869930 585301415 759269858 60766174 268958271 1014303672 352126552 201986999 532231127 230541423 222121505 45541321 992495714 309134406 750896569 305927132 619473215 177337160 199972451 638971581 127447205 837292664 355691546 515933194 690311170 395769667 967877051 306940014 19302300 370195401 891532111 45114547 49039813 606824850 676115251 393365111 466605419 565133192 87626523 737455976 135364175 273256069 2543880 237395674 413675462 534420789 1038614940 579018473 30369212 329140755 832958503 982822953 654550700 431125192 960388434 104024120 371856018 459300409 83225358 904212320 549373983 241140450 572532850 237688938 313775235 1003819197 787064424 326778228 30648994 1062619515 74167976 172751081 501198688 990301506 377267973 764808291 1055770760 774986680 74574181 520046618 423674269 27228618 7703258 288751632 838928928 691997997 498021167 132893341 982165632 14086345 201536041 21911545 485981966 716515152 825603619 875719047 528711610 1061287038 233769865 11116205 295010527 789418424 101202973 365864181 919165118 391434623 305946430 47999147 744519367 333834569 907299688 350142973 523568416 858586827 767628021 503871761 336891710 983057374 452723299 742787839 749360836 937447833 688526301 369356584 874352220 750429469 851077472 833657768 267575945 509090264 938292367 258635530 355731045 1006541598 711155398 162750765 206782965 894368798 808318995 699795353 943923084 565288442 18446531 182921482 900446748 259440596 87270057 832085234 55611368 553627473 43862303 313713455 252603523 385172620 350374923 354667765 774197856 694334705 696761323 683513470 131483859 985452274 209986579 917353842 1026442366 868951413 8901881 1015112665 1034722257 675074207 529125826 647322166 340058138 655599475 997008012 988698340 540557208 131961374 987890239 1056588880 464216235 216589143 388689227 134240643 139836305 34879712 101513852 235594512 1049010641 691209131 233088095 91848041 830244621 151413245 527911894 59967952 1072327436 550652508 234435124 230403223 472569879 318283826 742724417 543702328 723331125 804359291 485707930 260910159 224537749 994994493 904896897 884875858 185778934 1002975756 220047352 333236410 360540588 74709206 187614847 180351941 902532308 816660030 920090525 865849028 891404434 664732206 589754074 525639647 643363461 885163348 939104798 1007266555 101483212 235062415 415198151 998110091 292644875 33038830 512288904 37561458 678975453 562598536 369158982 455112002 1028662360 906282570 778382974 302205105 253276515 721601360 709882668 1027249920 687918336 957966004 688720839 978928296 586610934 451184713 273629912 742058840 687666527 182883209 993128021 80669483 299243858 964563300 860319744 536433125 333881632 364990608 517812801 380155177 908208602 893691299 88636863 93589087 169185001 997104243 479422969 501475534 110800108 1041332937 804778824 412219704 911733062 65565365 173399268 918927615 689833497 109923722 902314362 975429911 199987575 155223105 453120084 519237873 479646664 785121763 427878850 796268480 975313375 888951485 351631281 697440679 500443474 680114818 909108754 688550910 730879664 487938195 215832121 544382730 328493939 1031217458 539410668 907564995 784056637 478290073 547690057 233571325 29783720 827495535 417602183 982779070 796218378 677305867 829277060 260763501 425992514 1034572702 22817659 132919247 325855274 903262462 51479416 911358610 913723493 816707956 382812861 208932541 722623214 44396016 426715791 547765524 864385518 922621871 1038067598 756231367 915930424 956787911 1058992714 623615105 576609987 433995281 764595851 149100957 110425408 1038097725 642466361 984431653 713654744 37507906 254489528 694107611 942423491 877105041 544240623 676168826 338241289 220017747 101167282 405709271 105494468 371600468 350176626 764633026 290090174 79721882 776154894 30934101 675600975 531954541 1050638102 136950928 349973803 511892461 576043622 748958402 589151463 155537564 473426756 109686671 347497420 978688069 419475712 562829490 433061405 21384847 426830754 583412331 1059302940 564630049 231792551 1037847705 98638207 901666672 378599915 228253636 160739474 1018264662 11290628 178129117 592234591 597057100 430622200 533769540 189288950 174369409 517031823 285443685 218519845 335981274 154560131 635971887 254889262 788309707 340076263 502546428 519664041 378801404 1034655293 743707649 228499581 808823441 1044372007 17109779 717960810 703386793 744236412 1173074 278175100 770142500 1069296476 240179897 829067736 721718494 863377843 333385364 827671400 611251589 794118188 247763218 337179432 223425382 698820276 424104815 1063177959 300076881 380901494 74038706 470397432 302481057 871908013 203119272 602920288 81000550 839360449 864396206 85070964 245081663 1023097900 833266962 703045571 1067002019 512362382 469064022 16991553 1043576553 873948059 470673055 134303502 279377399 77695575 823201921 73034526 431033604 851599418 512578666 266633123 495700362 839049356 528980837 699895743 285377197 15465055 330731862 89050535 535398634 455477195 821838650 599481174 529138951 246835474 760151983 788983289 534360740 868144486 931548924 572773933 169597484 359909404 385963008 866224240 11559279 297858434 670019954 892987777 483895450 557523219 950672213 225885946 1014962596 722523814 281974214 88593686 107776437 924689487 881611842 999778374 678613357 490881707 106115898 857750830 876068688 208444821 887227603 171532163 673009372 62047992 857471366 470713899 845600468 619108507 910534798 415627282 424058724 1045787101 612940998 923130729 452389206 188110202 889957304 789444486 725371592 580406842 221375252 542156118 569766257 179363260 566968462 304120903 734612543 546146173 796114245 223103892 394396711 650075438 798998841 354694401 39863387 794894991 418758803 1072384202 547445722 730109365 710698848 770434569 441071441 439399733 926300507 442991494 816751850 526435710 638613487 498747099 38214806 436038424 54589423 466463836 822917343 779571892 280998587 188629061 341449272 1032002656 511088458 624763554 816077812 237996222 501903373 241596872 71973503 387726264 179355147 188999323 650285997 194507546 470270866 916301576 1019525947 332335989 964827052 104387129 786784227 712388518 938283716 574088647 844344324 683067950 460390989 119752516 337175714 847430428 1040356400 373847715 683584136 977177851 685778609 812752900 796362701 433326225 869154250 736217125 714296188 444843490 804252954 247900133 457809579 134666130 28570082 874399002 445196572 827928104 776971524 605169165 385093983 377402629 643179652 469258566 661000958 10809618 182857635 11066458 647807296 634565064 47465773 963267597 733728537 669513064 149437342 638652875 965180129 315754620 81516987 512633896 434700497 173448714 762341505 431939891 569659359 328436925 926256266 436220661 448267141 226153851 324074013 472303845 247223290 746598521 124555051 989807245 464460639 289082924 1035838055 748707323 158734795 657833431 820582839 636055166 596080921 586434534 780113487 886221155 216087235 1053852582 784369659 599524583 1070339822 601891587 534528214 15433511 89434885 638660749 183829096 423577788 343769792 87048428 724480471 1031007523 934874547 322623898 222016087 108752264 187976161 1068694992 84774240 554045239 83731220 541256865 634117103 500299630 998532301 187853830 538703309 278370408 218061714 617736880 314246098 268147756 760575232 931938115 904626893 868961128 1053612926 531415489 78679471 921117699 468187993 304896784 379780927 726904425 211423976 849762949 125969802 482072257 561736332 724344226 948479048 167806834 280038619 532853125 161086427 63247608 446684135 741833732 29877590 682083304 393673993 789600426 227623810 36673808 588671559 369486578 550492880 451184057 569719675 1024417496 312032887 147075402 570369085 327752165 908447334 828036548 7743947 971573311 199130063 208797005 439143607 617804034 869338645 315370722 751200778 831354435 553027820 741290043 903327934 123978536 167406187 288724771 25792018 315797315 31720659 222893759 969095617 556814937 299891096 18503342 199157963 425180084 575351819 787694538 606523774 1052431518 942835727 555686626 52397918 461843076 857186666 255323742 878144812 317656761 808221668 846344298 361320404 190643185 820021852 323489424 390639790 3882752 96180717 746170132 586651912 18452765 239831201 744818098 357111375 45846554 28868470 114374746 571072892 450995945 381496658 124924694 863223852 12253457 1046033506 434486044 960848266 516498184 872428686 138890716 669759177 512817710 860544313 1016921037 366606961 771068847 93566725 107367163 262049344 771435449 608748522 54855734 209509035 159689284 635683573 407970515 553539405 639359749 508833331 1030836860 585184879 981850140 288020111 1065794991 379110180 387496703 576465742 345925710 728296199 750107280 433605695 315977887 492826880 54033096 959405857 475875627 905018789 686191486 387581569 922754655 982659695 67622112 759258053 869628136 53526275 199344192 421747188 235226030 143530401 140752856 845602524 896945268 630910784 1022069156 928387522 372638278 353443193 189071225 173414068 665928867 545997643 945064487 237403538 937181462 834370415 983300344 703521872 105971287 638371307 443572787 897073810 209255628 147697165 227880567 185506355 616691600 101004770 382258630 939615747 600942615 94663306 409520943 245310518 657768209 428152828 472933582 487632442 1071087783 204997051 273072744 905343156 487671602 316662912 385977653 832593148 324223182 581115292 324121837 443922144 867408476 735646360 228160324 25960299 155099705 845028395 313714718 53381754 496502900 980637897 347459041 545830128 67542916 681411175 622498816 91103715 200643967 608140609 508498599 987464850 377913825 550940667 246906012 640025126 603919795 374397285 173365390 370039001 909219178 338549019 357790367 195598713 303342406 943280531 958054859 284704710 571278695 801601905 1071887063 766262352 430705497 676074159 124455880 1069310193 831451987 855888775 378577094 854791891 160508342 188285972 90452876 833541658 343156881 587806930 368309107 439914156 483825083 78767481 735352619 914158443 485747693 309357300 626902908 143097405 973033297 777847737 279794583 52350698 855748063 292720183 493013292 669130138 208981216 395602785 62556655 1033732683 924179709 739876355 546811333 900205282 813138931 450676799 85167764 725836944 356366439 643794511 455044571 355826970 30265129 503970277 948301395 460363858 1008753278 211437572 551799768 17003511 249788391 305995286 268918756 700214089 245425776 688644187 760120677 244497908 457492306 927917800 862268530 529031627 857549738 190669365 1007168835 519408159 473215886 273222989 919074819 429200708 572213364 783660650 132039153 786149648 993472868 36159921 780905247 404597182 495777700 315719191 716237206 959836675 550386527 348197967 812615825 633183563 595824296 567797515 209373484 108941208 831907993 811855345 893753188 508978122 334721724 730657371 95622821 740780691 980247769 500620285 276002607 378604907 645999244 775195808 765732889 899958013 388718580 890917524 940216885 869379440 924603290 107590401 484302233 1034249441 1025998060 868858841 877702032 1003414888 770631951 157981824 886298945 862300226 1037050939 18685057 556062250 667592832 323601993 511331650 1052009009 636000140 583235142 478571505 48638723 444085469 897146242 773419227 919210533 32843866 942289767 480118912 668233914 946291496 728529481 598452812 639670605 879126506 741173053 32896497 255350053 843303517 884692213 686031455 792864602 887662237 729173766 14149369 739692058 76146737 274169913 320423905 350784977 1037505781 509136432 715908105 291938890 732811030 541106245 474681437 469546438 512917813 210505720 510851312 1048500625 199141239 375710961 1065917567 518408415 936244751 466770164 836687023 474865603 848449543 972481179 907849155 1006459445 579258787 438587090 773190878 912247419 358851848 899403522 228168358 183260277 878911598 168721749 279212775 132214636 176588292 677250671 654066708 8219221 1005715391 56030904 497588811 1007318722 458288350 268523410 1003317313 446643130 785038540 506850916 306273411 399767036 415433498 701504840 65425656 146288301 850164194 596214560 995075789 278978166 181247865 558572271 814803397 589180484 454027236 579565545 400770638 940657153 649034878 414740785 546620930 635880979 592092858 93898184 919335783 285185924 926907929 474293650 214914722 88598710 301484234 189993888 1060595289 346349372 297948025 608262427 178215912 1073292151 111152156 672545891 876372708 577675588 1029755218 692304044 857058741 400770764 881062990 135467921 229330548 994166912 957576306 274018028 500474349 741945674 113809860 708031022 320668923 1054091566 296421484 985117524 473079535 547601814 838475266 912466356 59174280 828476440 561715071 890237543 48782704 281510510 634438666 822610248 1002056647 638980175 301230130 424137947 819139154 880838374 988107772 871256330 708869007 909660594 999704125 832194496 274221996 526780730 167810341 388498029 260186864 507976193 970789641 178096778 73424376 1063238562 10086669 1023552352 236944065 521691739 399210996 393257268 859644423 913912990 492732587 756715874 408023704 395668984 485771768 762011993 430011422 938915094 880963867 253784987 446707774 1043815123 371697723 685802814 1024036252 645738186 33893590 13651348 909796551 146038780 821123606 267065286 92165845 844411795 768858261 101355379 471796605 924367732 641987710 951406827 962952527 1000486861 968149622 484525756 637382288 691127625 712153832 919517171 689449515 223729924 65315227 770986692 102147923 280804583 18904545 923918114 659847752 551395009 122930302 1069388676 17397527 756206255 688034214 210279309 206760715 931089013 535734262 786001236 1020950246 778801690 843903560 281276990 305050621 596280150 215235250 148497605 106597642 451521848 119737062 553858727 32134289 701026582 604907172 746548321 820642475 1030399844 452855645 573042136 132374031 788364705 5431715 1053391271 516485966 550975447 370048695 460409073 428538805 574856193 79942826 1996379 953438908 155078137 874550485 546218888 849091476 351101743 236483323 885742031 28308369 483920330 77750843 701358708 536104008 723650298 190217627 1018882083 260676990 606061835 1015767372 31846914 340781981 617023916 35171131 981866514 798235718 509343408 849141294 575390251 853958737 591247920 603135848 785620776 692367836 203907195 535865932 423585591 762450684 1061909723 585345764 903436507 465104143 917706768 798869502 35673802 95562593 904498533 631447694 540555510 826367840 252852433 824831536 961674542 458448502 131264560 369841098 932595320 543796431 26451957 904299714 80692346 400249655 666878869 19703103 794378442 486316018 49514262 1044867266 266506260 782966530 500737527 224731602 819118468 110082375 340716066 142849426 933982680 526310141 587862319 980278290 338126808 647653289 443479189 169825217 908636741 521336293 130777240 795669537 569520732 837410334 674185609 884311038 550325988 43840127 759437956 1014425878 1825790 526030422 873246541 874111805 493357426 244914698 797823822 996630603 63211511 301733310 939276261 600916105 273281586 195451490 896392113 116585240 524288712 531554798 1014727320 283009595 1020475966 492167625 893408736 985378902 81542984 597267483 932887197 444735234 870602106 968565852 54415521 2679539 386837280 485229139 720609484 714866467 550416907 411967322 155828550 361537854 600286383 924747676 23366586 1031334730 254898658 296026235 265939 994850355 170719643 632829424 1046231560 296918998 459663680 1013170431 78580147 958461470 959364022 565337619 331227547 957139954 486051814 564754033 772273985 646894033 5924176 1073081464 345989179 897830968 377041036 527888721 696348248 1018227921 747386924 1037805401 400682153 745479104 415421207 147367433 126413738 690749282 761020751 19568488 718525216 1034806955 655447310 639776347 340392323 334276854 284690921 888300700 468289817 726470794 438545901 627875619 320107565 680843595 105269433 607534191 11068453 35375366 1059802015 579278731 140758838 885822441 990869199 952570762 704973707 47959636 699952346 161267808 130517862 346142830 224608029 322206479 816228418 1015218910 59850501 236833596 1060690897 361373656 63493195 1033793600 883204435 124683350 119094955 1037600615 11019609 66277176 56027247 507008805 442343223 766206176 1042206470 599293759 440456060 1062235672 514441187 373804856 132278189 383581042 1031185601 868211220 633262930 616516287 895890585 821896403 414244132 100888930 470421211 105985922 103052774 1059474748 124626005 599524514 792292837 408357720 435786255 433438945 672026974 555456024 391868696 764865138 1028536279 859786471 919332819 891378868 1021527027 564990094 672478678 43541220 486304036 278294019 242044379 635410521 761115605 172800414 59350177 653524273 520874709 585343470 172595132 738785836 772678353 724706421 174267525 89382903 858414740 136901651 56684862 158902781 646034344 629973849 134120657 535442281 971694798 459869405 1060038135 342616963 776941699 83742551 701691984 47040606 558578517 334225481 430031757 597954677 799168845 790623587 25362375 177068843 1019879049 475151569 547617770 306899703 269635171 872767408 368224411 846426318 565798793 17109313 629776714 56759006 1057868447 666198539 247960861 851140786 691745650 122470557 699996936 747250932 1046003783 679992180 329472975 863493915 952190002 254706145 69339092 290237804 1066367050 544764910 1015266108 455869027 629849401 947067516 135972924 419118274 173338804 220262533 131624985 1048240223 689769812 825090123 516346976 49181532 1056848164 905415655 809761064 122407521 622338782 116594721 1011654103 765498081 390582341 410848387 877318888 837331097 844412738 808295484 203238509 532911377 182390714 204915208 520556391 70716344 99351790 962791381 816896243 992292659 852555519 285906758 807641993 175168185 368947330 1054576191 955725953 159501427 878953833 797447051 328746476 882405055 749823728 432235132 53497596 529005873 856402896 142567200 831253258 110726553 476167701 705583880 611067786 968664271 531133903 165578034 666247880 461105564 908631731 978463711 138027388 507342414 218925570 47394355 670556833 123571584 582443144 1019187096 887965961 571225911 592211011 598671733 279392774 568935112 651109565 626304291 715501084 837759539 695770701 854057098 291301631 106634554 517893704 737978952 66396735 951198618 19855220 207014709 900212484 854034808 855231519 551896496 121706066 478609465 165373804 942894108 839980848 82369112 1053346285 939033465 332508193 20152087 293195122 696668377 265640541 391394966 281696542 52881918 744095230 655388145 83147683 1026533053 987080220 720514463 807517293 527834087 148364150 97599456 27142298 958909709 668638133 883853838 160342023 332453713 238148759 799273398 5927742 993357909 105894432 274435732 671568003 678291947 541247685 852837924 681830626 823304429 251749595 235415527 969254916 938555934 873740638 511495803 698749770 343030572 289482736 187721320 878342066 682407236 483953831 272190136 420810543 35642305 985447269 573349227 486536178 873208464 684835452 739113579 928456798 579837192 786587424 106380818 1023757455 581072352 475282135 315591198 705626968 204109094 169334505 939955511 339973462 220734087 919378157 938918714 771785493 504683112 781389015 87732406 92823189 809667584 460451921 246827698 1051895976 1015096711 245415559 402838649 58147194 498945534 488364970 706573038 656874368 289618832 797643985 243774136 463298358 563730672 986819519 714186260 177368009 223856404 724273847 631538920 679785230 696406655 122303377 195919999 1044712884 727659873 680086304 310426057 94632216 414853445 804097210 477458174 75086516 172728182 131018993 330673197 678337580 445549820 827800678 458157930 64829674 672701596 65288866 374090802 411262389 307605578 49390603 931214267 481274794 748993092 33507473 45845795 449840584 697662044 688898620 94931451 726075131 497680891 496895350 369170403 114810842 24236161 858559351 932342420 549484067 582157479 915751646 185385742 663459000 52262998 395430346 810629498 845393348 562890487 849254753 232432844 609653894 616701376 1038766648 736250775 82355010 362354517 788657065 505912535 77135100 390209392 781212326 135418871 70165982 190790333 189175151 1009035258 590077263 538539626 939545846 438710668 829967482 1044155664 918864677 84880591 787060561 526798347 186179343 836918329 502184108 402708604 898237278 67691887 839835613 279468565 383751176 578708115 749263448 802815746 534414718 388402255 61809986 336914709 413216973 661513179 69812178 904818391 1023936457 499490707 442319232 340116101 816461026 270885849 697476153 384819719 444186046 374874706 857251358 309559374 1031107342 83184394 344652791 399838851 630871708 98296210 891959908 288510379 777780208 101662899 993658250 474851770 86550251 112136301 826786998 227226951 851732161 974664312 721432449 54727830 334371494 733628090 488067452 784576159 397976751 339163911 1047570798 365495261 864821569 531403665 50024801 147866273 1015348514 482068776 168654705 644267130 931216092 1042007926 487861764 1032611577 152890448 839715239 509098544 780032816 153240060 4002002 599648439 984411431 735472306 968591324 678943778 1015569211 831539408 510997359 477747045 901885353 26381228 316589819 842859173 777651881 255069611 345848632 651173629 233162469 842735256 132622160 121819256 918024756 232891008 864306981 975724639 684052731 80892054 561694631 454917775 239585213 38062348 865585901 822921833 98977184 17166137 251509649 215051157 674715420 466704653 348847368 1042949060 20409247 959819420 165572279 17945130 544443618 578399303 594145014 110388722 531982846 759923655 90582084 767575215 348199123 51451522 655915900 700598922 1011100165 902249025 766129312 160965586 85895350 159811470 969199585 520221966 379960424 1003045026 177420743 911000005 240894265 360414117 739051196 274930950 83027712 386845143 309194697 34691014 1035886335 949463590 667480740 762080787 30038667 1013014430 468591808 822402514 1017843884 906263407 804679274 20662489 550102248 878325978 772424289 965197688 1044182390 657257505 968180502 917218629 667289608 498092408 733695704 332947881 579167751 870598106 676141480 881613006 800720173 1054722280 1014894150 956572699 369605817 662344061 1053605253 452533031 332512453 429244957 456164179 357280926 846758644 498924172 675468427 339313049 85009128 766839956 381718552 1041115570 992436619 660019737 535320709 130122252 6273022 143078242 659827762 36594740 870943894 541763330 767365845 375963956 106945263 944591866 213749827 795034454 645846102 568352072 708611707 68567341 1031793147 280771401 979692436 309500890 733108577 324830944 727950871 111185076 276374958 858379690 731745973 90536590 586323395 787878821 1035324633 877416870 662447289 390173277 679102160 635050364 465363405 126307317 870794052 404833552 504273232 370998031 1026181057 750621876 588026236 293690987 529090975 523127363 286879572 931501515 921398087 141188074 503368984 699523450 535693379 36455068 690514560 596585392 1057821182 847105966 271280685 874511649 984042308 448173293 788699300 282881622 825964898 108076023 66333395 803018760 738629727 781998079 605586426 848635922 643626488 369264368 177936146 590189962 159853211 732446774 149869991 339191915 266714844 791135034 45873101 599028173 558944279 162726278 908757300 628045735 892156250 857073279 460217983 28306315 577993655 347825249 612969287 677267962 772727514 1024947379 734553350 371970883 1011565260 407820938 883335097 628506846 403579894 58292646 679034050 1071543429 309434632 456951061 393321001 190166577 717181708 677547820 154236585 681191726 695531204 1002292993 347420843 239164315 359471642 722371715 845118841 686212484 639925644 522473973 930293612 310233305 542275422 29236034 1068008229 778958 245312719 753425769 441642197 52421900 224923515 205270448 585127109 1066879676 149208825 63653778 297562308 497947297 611549123 690592597 7832599 829563744 602157775 241865490 1063197748 4285370 877362556 818544022 335432686 515405934 3352336 902667846 993902111 180635116 752178878 903907689 14963161 420485205 217233302 988920773 773155088 137045228 380153084 639323292 168092672 22733290 412416185 783619705 392626064 453009836 932656916 401777370 648138200 397300685 652786317 39553271 351054061 536431179 255638314 700806217 80799770 1021256053 23803583 293096208 654478561 374757692 884755522 516402441 222548648 445719723 282369048 541333198 235465864 666596845 402888935 805209811 158099473 644340955 113853229 40439771 720042065 430027082 588574311 270791474 213796417 525731612 603179695 734028995 554497217 460144377 647838159 563365849 668433753 130221784 699234600 151357863 287642740 764323010 346045001 629110492 446808675 565781850 653250939 832042824 737071507 190549987 856218264 601256145 946730278 564703109 874080302 757930507 894028868 873466856 686976313 276487731 773892826 816629637 43456161 834887648 479670755 159692004 810104690 97343601 919843031 462746887 577127998 804732416 925483357 138305254 272098076 88860730 916373395 379915270 413847059 296652465 859082385 798827890 337522026 713061669 1029796207 681376940 550069425 623024950 566302214 168309037 958598945 509933443 170099570 593909078 765927321 794212600 850224661 940105363 624481740 232907347 958042274 649547120 360408953 213756593 20116252 608675416 126963505 273212081 529054861 835545084 503831167 864614186 882697579 1040149845 472544413 593244701 469095292 366331075 262644984 85350263 957166575 309094176 329953918 133045907 959902914 1038682561 726388184 943373669 268482660 1030701445 498215782 1069537122 819605261 592874392 867241957 1057082126 541660804 146773872 724187377 36840761 812708202 293637815 909671298 683114658 567196461 1056539672 137579521 778642298 773379403 158081294 989828418 696211404 1044400369 352507022 236991842 430472758 235083717 684285781 234132259 805092063 158058464 49933812 12872536 191881375 646657130 64738247 304214513 689839252 946792637 245450017 243500738 786960677 252120314 332780157 375227234 327741520 484935564 134573108 30916646 982782560 399417869 457344839 633097276 509300949 933886972 346113154 283166557 580669046 721561344 388702788 70233203 621659957 381556527 594515269 444622193 964743638 217246745 435045811 514469539 589871075 400398112 629845993 906451258 183416849 712515088 428379652 940078536 120107776 637719666 443104405 930183097 472307127 90147317 720047153 222111400 310208366 703804947 55020244 907745112 232488746 227188945 620049349 471987950 395907282 1033245786 1060269609 903565671 230762633 100574864 1054876347 707663348 469771141 325262862 353258470 747977650 759726863 953080484 78158915 410081851 93204708 373792801 949214573 208429389 941947707 42418820 1062218162 878226908 142208814 496463191 927019647 868548526 617234735 904264798 141149627 620586412 973789268 940376238 785128282 56684165 872247777 276259263 1044988026 1029661381 282767043 551677257 96464677 286839032 319161431 584916699 522899929 810032708 519155908 196595434 764643918 38367005 871156359 328789793 744113327 469579450 9065487 993918330 633629958 528787715 115255008 504835189 772385535 696106302 331467047 928829065 189925877 737829701 756910292 674453290 173054107 774087957 462367736 569264872 90821788 801402247 584922051 275729484 158851190 80585899 102988819 370196032 440709224 376595959 12640635 205750623 1061286019 168914559 274235639 245063964 839472570 432358690 679573530 551359714 371884024 809613077 362348498 501189948 127539794 890420044 461297884 455785754 269122989 937243928 581603010 753746925 495943954 505464050 627326663 585538686 993329576 195097363 984301554 147698735 910320098 460301925 695729749 576697457 804316173 250007622 740644838 936401084 268071928 287878728 333915887 864556789 907689085 739372041 343268955 11433930 279506256 349031519 990146554 228342983 118532282 488197618 734681728 613550947 515549195 1053150850 279430174 801208814 26308720 388557680 475786730 425958167 12979850 804035726 468172063 417489243 424726995 857848605 992238756 330293700 1053893866 188230774 696676103 862696473 857605824 465504382 252437417 49231574 498007692 964786563 982848133 983464380 287863514 174210330 294074327 651136643 660856478 384450496 569042991 579932984 799404336 903021490 106557152 585358310 512816624 646225565 565108368 1044836387 178308932 819030708 992346011 551234475 1012865085 383369800 789397188 973810633 387875103 787925384 600830514 397678252 716506219 805390667 214682398 161048235 955663509 975170799 249135497 552290956 903162339 846623858 634080896 615811351 664075363 130364512 641790650 609932508 39072699 1063871048 298841616 249880082 286166745 526022388 108494297 52874915 677484846 624500624 48173724 319575390 469525406 856035802 312073369 473709585 658678448 314160893 85667565 335394544 895087455 248906360 340864475 700164558 396831600 826084139 662698383 548028294 839891251 531353113 1007008300 374367325 1035497522 468146149 635715668 519755467 263125013 1018063953 981222153 290529956 277046495 735372752 552178057 92739284 546926245 190735702 651193226 532201577 931789366 42148505 658895281 243239233 288068201 266885664 765681507 657950720 396163369 1013030149 235343276 629970850 897756480 546694376 20105511 623088290 507860377 458516743 467028419 314537110 484467827 150003746 224540685 1064609028 639739995 47183513 415654787 600100715 696749950 120810469 878900390 894858003 632331130 965600078 460963608 193161827 305917784 1044368128 171424597 201217891 1000750998 279353659 751264355 1007817488 195931566 16635340 739444252 314828517 965047697 1046151520 145396908 875943428 319627117 922748764 1025718327 471136146 623789948 596026571 103467498 453874605 289541038 805459510 1014945458 306647634 477365968 704008789 752709744 994197935 335055950 139594714 1018015345 124929635 715860886 511785760 998594663 210376407 620955460 741621286 335870839 461629408 557273860 720050576 1013127923 418332597 314778158 445492215 113594717 928571510 450921888 612656746 1028960856 926947200 860249653 184801167 536495595 171547584 205496930 871892887 406915263 565517771 832599558 938432368 285232117 732055089 197974314 668609289 799948027 926954235 537240651 866420410 1034953971 181842998 344473791 191622278 886993840 71737450 149717472 739854680 28794420 139908142 374953718 1037542930 180608863 1026429503 655395403 982314777 49859671 986451655 672154910 354530556 681605655 823621406 624330432 613320441 300296532 533603479 580813679 734915558 97815855 205354586 104705838 344622149 277634132 1051059080 39712257 599381636 65842226 269880370 262330054 942838034 660343239 414341814 41950678 561029746 739563124 895240250 371800128 331276791 294658520 947552757 129837227 682508318 428784151 167971749 528601590 952657036 903662255 366222444 629597482 356053708 1056666815 125468540 583972983 633320932 316472012 691430378 961264119 418422970 1012113098 87768052 675740432 178302008 463006017 1057810315 24857582 109445732 435520880 373944412 386470462 212938689 763473257 1905662 362999118 180359935 824771978 76603313 373355061 785104057 625714100 154767715 1047985330 875722471 617868829 685689465 283314558 113191269 121519136 1023792545 321795530 391438619 749343088 853895014 1011593277 603814190 72315757 606832352 758948543 935044828 851970858 1020962894 329894275 807030472 483212234 575552570 91739368 997746480 518672164 1012448421 1070343817 551476010 651465040 714060629 237078678 342830909 1008490503 8032631 1046347424 335048055 657346615 225642 1044936780 768839096 971159218 754473290 548018107 369388586 929787145 182227306 696805172 1044607638 714155658 479909954 995294323 4947734 933733701 965297434 815689719 777157999 134029387 861179482 64163651 827189246 174131871 859366887 822288021 50867374 80407209 481134123 994445076 216850860 830775861 223319113 375075090 781999307 371182973 996940431 302205362 20617933 250685356 224496937 775170830 1052731210 938369941 72079134 676666937 438515085 893476481 309768930 50871954 873091279 514633038 51236340 673466511 677417926 967621348 93254164 373460267 583499687 1017549780 946940321 319450973 425263168 243659449 636622479 59824699 965646343 968597224 165120438 640437039 1029257462 813551554 345459375 569669544 705783093 873965944 322760371 629370881 416757811 240688332 1022548704 894198885 431035211 1056659983 855484505 827425958 545882158 329882133 1065015157 594733733 245283610 70863639 531052933 943713404 1056358388 863651831 170302062 973837355 804798456 509347830 2752067 925152625 966334551 878686311 731189259 723999224 960592414 481022022 1002960336 568916874 172810603 435199107 852370473 262376976 1044391206 897334296 34798569 465206505 1000217456 1006612723 917671539 928421952 775980931 554454012 492996604 316272898 424873364 416826606 296862559 237330614 89780223 610887100 787852234 1052180760 306447896 710275003 222938412 752959773 107540358 572554041 877392354 636533091 462193201 957193670 771223601 817150060 242505864 1009182864 1068849608 258868123 871872339 465290144 960590227 279983375 143219670 824201680 84854456 745143235 603748551 307284834 42407683 37873959 195775758 1052254650 409177161 574690543 603776073 448371420 466644882 886556378 5958394 1028391551 433908414 287413174 968474863 606557108 508503992 509237228 999970001 684408842 54987131 559162410 544303290 1051323829 609248440 270434591 373216480 16871399 100889953 848003563 196324140 759381393 395365698 212315196 158582648 261586582 337885774 1070141024 1044658244 815172323 868763678 616115078 414481625 715950408 373580390 671516829 877130276 741302449 367742255 1019534024 736553383 322557810 640548839 685209252 818521054 938767425 117867063 392866590 4632521 486772942 587587460 340248231 590718855 239499519 377389344 372131940 118884922 24948941 456782837 127778142 184196610 302901148 5308637 957965586 753074774 928679176 11192060 543644562 371939914 837188193 758373314 979216092 743943919 698645280 271923479 205209128 727897675 522143934 449103191 452276225 242150117 796730029 200125393 504030826 716464343 186359092 542350910 122874247 1003935308 585563425 212106290 563707712 395644020 462897072 554577553 936496892 523926519 769176376 204838548 269325755 291637336 427733238 35201269 112108660 744677720 840126762 271871420 1024502129 728060522 811240868 991252172 767296509 253585801 1010208025 685524719 722091772 655439740 555052974 128600054 760835825 605519405 186769622 214855348 447022908 842762451 54344150 400541858 506245910 620761781 981186200 623880416 562728146 1062783232 1019122636 261581772 130876937 194303456 205707383 570748211 199416317 743944749 68940654 620983637 800918126 797160350 1005000343 122273783 982389332 712402356 43653736 35976345 289782175 223695416 1015448498 731499081 627352345 368639506 654564338 627102713 527529722 971279568 360885457 411313859 494775737 579523865 480998844 366439458 611342381 373703549 667946475 922766181 86842220 321744892 1009715539 477182368 601162029 7145520 378672311 305986506 212220597 476702714 593564371 557698313 348192475 428282140 942723928 939961656 411772 291416038 624493979 635985619 208727669 1034023740 206394779 645963085 1000647998 863247304 207382577 854791213 1042012568 217380734 1018413498 265442666 237369121 988692379 36482212 638391214 880672883 877706673 933808625 999666053 652172961 6024097 266430112 429166694 615196270 86499325 692670399 464448557 792363909 1040042254 656349216 862352849 72226489 67513415 653719531 983995750 21805803 381367927 1065765279 445756014 909811108 675672615 1072768201 682930562 124407968 209876096 1067743245 426684045 240512868 881514996 110526932 132907276 135682380 465900217 103275339 602163611 792193673 726071747 282802321 913325856 55143649 316980022 64985711 147672174 325286308 1047472596 760368258 99864644 953237275 426970371 195802149 1036299285 598861202 40391697 743926916 683287650 261265286 692609107 986631620 534614301 407568569 172691214 37706494 601243374 407636432 456543127 952465159 952724304 12880239 475327994 114327028 558887046 39578076 613580603 876143064 1002100923 215350411 71253281 36348555 940403557 17474715 90925983 35834780 989340369 51666064 166351269 427471989 274837548 937006820 1009399911 422528417 203164895 322712969 481140966 489051543 186614793 141144001 426784262 365067213 551707142 909200752 820305916 171174423 881935200 644986384 775492780 1044708804 120469555 250334244 616258177 968686920 234554451 1071442583 369848131 946864260 684391940 1039690560 774880835 16505826 409877593 177087374 352312479 1007826618 169909565 268971008 789985232 850176586 632716858 901452269 125222877 629190128 632381885 282401317 922883428 970907364 637670883 826630118 903068332 242149038 455683577 177589872 571643106 875158247 555964087 228586515 720554961 590275138 761793763 552121289 953248657 650193122 533894347 112860676 166253829 540946594 49135637 249457832 800705406 908068971 178622413 1061369424 834144766 819865527 422341228 80575234 385504346 292435337 642199302 874964507 935037427 301172239 475891986 829157813 199404842 241736472 1016646176 412160152 566888622 240672487 812364878 91943908 136423265 320763645 82798826 48930094 126766621 37625902 447463463 379079489 189266733 468373889 1030483742 485540385 266204914 213689286 269764762 340573844 28806790 318925740 287486067 169346062 350393407 638999864 1000012892 356731204 937570505 761276358 807504768 32535133 774038997 305718579 135005302 729844192 430441267 763331603 38781562 166850533 878175676 1015740683 791431929 1063424531 918540606 741419503 852538652 835456657 545784853 897914727 328201327 664980904 267696296 563872749 931995658 673089311 345527769 651045534 117194249 507256975 148355154 526478340 308304811 729176335 502055619 738379560 552801883 493053127 1008273181 478409346 37573405 455374136 516737199 136108612 609519270 193935234 919214595 954095715 400118020 1032130663 195319262 129251974 529791301 215549745 370033339 299645552 503686254 980696699 147392148 872152564 617296187 232896977 294004036 156922313 980474656 196516025 1022198519 77895084 858107540 66106117 949502644 281298205 532170777 272883130 501481201 849623453 1019528002 316899049 255618191 125307488 145393047 37838334 110046794 903395106 68193759 831898075 409400125 583349082 1004720791 1000358570 805007001 951800352 582164137 227262084 38204777 195198321 712831740 516046261 473409250 692799999 105177637 1056197160 266078640 507691836 366866768 207861317 14055890 843669537 242119203 951208681 423872708 770959018 708433704 498615234 1033861494 15994479 639407607 503318859 54945174 817605987 381132072 207809177 723448387 1028941604 1034557322 594868643 415799051 602813717 665132668 1029284847 593173525 1009051717 552725064 834565565 551789490 922148095 947768591 896399323 939911687 474537589 589738334 365065687 443305875 735206899 87896567 460793974 752536250 210331160 825441601 230892811 138811920 190825696 503702994 421419352 655263062 206140604 425546330 481447935 643104605 817063517 614085161 3770760 959878062 722695154 214600345 980351698 639325260 10980043 294322425 1066818582 593285170 405279848 954630275 975249865 501036832 834414217 1045264339 388918864 503775984 937553434 553832146 166990405 579888090 317391615 609984069 373684208 563527680 893340745 138328524 976368507 762814914 265669903 681793995 53437543 241789427 1015138775 44260093 338937440 609076840 458054301 41211402 162061432 48799929 1030993500 752573799 66147334 721629127 678027427 83041028 808178390 114379155 687719772 210104353 683469347 308703758 665830289 59903870 1069139252 278571095 524055360 77679388 840216181 550576666 795799075 133486893 846594078 946380022 672456958 700424182 997460754 954404188 234111931 163969274 164741559 681006858 657521251 708703346 80364017 172068970 973840651 641181562 597564398 819062888 264746609 897594158 560404403 362253551 109669498 596852380 958790090 1063597965 92409136 937931729 222665330 60661375 82768157 41044807 103284299 599901595 439506080 1042819583 962585634 813132078 904813187 342756314 334409980 155792493 7369976 92319609 681029596 300382759 1067875873 827172805 763287132 116908757 837008349 10775576 103520832 5876987 405837138 742889605 131689671 946388115 802836682 278603950 320824270 853575753 959323557 561458546 65896337 1057544918 554068378 99857233 70037211 862577843 785294673 393841828 386171371 877039047 69321126 296370950 407728804 1042382219 163465856 136033979 76376163 523343190 487698914 444554846 725796905 181935413 866977258 315466277 1037701723 112692221 46020276 138036757 908873451 1046637278 466299051 172597883 712710984 309860994 469652130 409716620 84632651 532036191 222915111 293045346 145134864 833087355 331827980 98216229 446541818 855525469 952888623 1062014334 953038540 483720434 18210549 782479259 378741813 770486778 837740258 227715453 18724796 555827011 570125233 1073229551 880426677 455668124 1026490873 921479118 546476443 931615530 17394175 995520395 682159423 1018566410 716422797 157464250 987346648 396341692 102013671 239356066 269052720 36424037 322223387 564083875 449275700 1031639393 226109279 568639304 1000765235 654695654 535616708 747399467 1000641361 265214200 79231795 729887329 771865650 459524333 976024676 259936482 84023272 677567102 673303220 1045093571 251447970 278524872 136112402 384074398 870660569 282044553 842525058 741050703 256953721 616548219 50960222 1029614765 679545343 336829281 139937551 710151457 830942017 318404693 727555432 798155704 30445288 336467489 71749684 929423918 296493182 478765673 725810835 355199828 220830078 41904873 997993247 894867977 334557581 905722382 89896816 862530689 784433 80448719 751428385 77898668 707833100 419866664 775670600 599232331 636591765 413618351 8641101 569338320 844414393 109354504 519727673 273013424 1002845940 245339757 149926280 811953371 356046420 157980623 926805906 1011569190 1054097661 1026450080 173992646 965798773 979462637 670577686 902956675 568525468 411659443 866056751 999649650 395612906 267327139 235554534 554691936 34762482 438945471 329624439 337666925 199358542 705854399 559363903 825707367 987120462 846166113 727721657 246452723 1065176107 167885594 129141142 186883311 469057615 599830229 134957999 1025973073 1042588644 142316592 224627238 490829133 642649459 244475802 311375872 485968596 532821626 206938173 1043865432 170324593 581478751 944708703 292642892 922020700 978607534 1032002231 964174526 1005829575 318909377 371157436 375017567 101254138 932995397 19941169 276501567 130318460 1041360896 880971724 205462941 706898170 62439674 983132928 243279108 834177121 990511286 330949382 279245811 771262664 263524954 64416420 603688401 912132669 788993478 246947005 796213020 261736528 951474802 980134310 902414650 433118116 607479120 660599460 410459363 151378735 646316205 565694823 656192716 830383759 289569859 245742031 621841463 98388390 59054623 183767523 636582200 825529242 510789166 272664876 1021268360 638987521 523818671 569657662 561542933 756208392 491142596 792229114 976376453 799524088 832222496 821628011 426728546 408211851 1038179950 597886646 392214647 147802989 231389476 507126175 412142120 79820675 850681476 1003686456 848861172 489413212 205854356 257069487 913336520 448281067 856101485 2004318 414361412 293582559 407442395 995258710 150415484 612182431 342727461 117318236 657670048 366344379 33383413 733800791 317956016 172709163 549963587 685729743 29785660 793623727 736190819 43528291 317016921 491642576 142435633 217349882 348452298 486719488 949849148 1039153021 251096983 463221945 805550395 826019584 756843852 203258701 696753227 976943356 625802515 180237436 201078066 342007408 959489614 698780299 472370502 851822136 299570666 436127677 806458296 622081784 350757873 509397858 546675260 1059307218 95382541 923552162 877965393 909498095 104985024 648077746 963189548 584783688 311647203 795977062 55295263 570116144 207131300 447955326 342660042 275019973 174506068 219038271 67967850 551076499 555962856 1023530629 372117951 210526906 5627355 62344335 613703057 672496914 791129949 583357849 971243998 917528574 1061618248 352441339 230282983 268601900 442706720 722965907 1018006288 1062613696 773636311 452323611 338402926 377994026 218626595 634052050 751400599 569332243 33979643 201847248 769801064 86797483 108720063 790402733 981908570 362577346 670609791 43382266 532571475 108756242 712004124 671058735 932452455 1033206246 1023746001 49689269 565972082 348274076 137516065 992652583 196562231 707708358 958701734 907633102 299522331 230333601 497954051 663897926 586195809 134763085 308233600 724558418 343765605 412392804 186554505 432842270 2260478 153006644 860714518 993661924 366845262 702791241 955691597 924916773 398529273 710685956 1029564116 168326321 1046569395 229272611 76410597 1057376031 790997330 737577678 1066591840 86096140 503469734 673602047 950345532 525407680 225608491 511639209 150565133 98020154 598575044 457462255 521278906 460161428 532625445 493382734 1007858723 581450109 132502453 434256179 61349307 29980068 1038847274 651376110 63491613 493577576 544176470 81057768 808063607 916544271 942736501 940849780 311126552 675856599 107936298 427067473 947018846 857599011 763233048 690503923 652037243 803734652 660571495 59336984 479751921 602458536 16820818 314436691 263810252 986674136 28245431 970693663 475546009 193816522 606947461 749113023 355677491 570549172 721562126 914025016 592811927 285456656 431162524 74499491 595227384 605815627 475051039 211049219 462646608 588605066 779427869 200454587 519947346 616590696 798278913 251050986 71311243 663493317 721397400 651754341 385238356 743521271 718801463 223114588 698971169 302860763 389930090 366782681 1054835671 842371416 420330426 1035030717 746068030 722803835 589624154 97385201 1023954525 326629961 1053574367 289251167 459847889 382507186 39241394 545549647 352852452 592309921 719736728 1067504828 370446459 499233825 733754738 117263469 311147795 9306171 100402997 848033993 14845503 118049554 286439066 992116606 569760028 349988967 531135796 765163100 361864165 1052691358 224185824 84918916 51361143 696774521 890297417 1062020348 974344020 168356475 360171986 571682104 907202103 652513703 868149888 79460135 981145766 877582624 893839294 363814768 741238546 927844087 238519317 160659127 557685309 371771458 665514593 623800450 247040288 522104281 57635928 354184058 223463293 937056085 476438240 773412458 758663831 767413166 853489208 936400272 416760605 337248084 607337249 343676695 299254306 744861515 709457263 622127063 114202063 196880569 517382573 288246798 928997324 948201031 980694589 381216836 883825459 629616169 693799377 272248319 687863800 620267938 171453935 7036903 672883277 373421501 236946487 785027646 1042126312 1042277188 331910761 427558106 461064889 856767956 987769031 350613904 855313248 708060020 641125433 889534746 308306973 618292965 197749079 26577106 739948515 456455268 532099682 903082858 516186629 91057273 952119807 912553690 374003683 745035269 805076803 680152866 295560318 816908556 825081754 447906104 673973419 211170002 985628275 726184579 956814466 407107212 907904500 722009420 708439713 356708383 467467358 484966684 285367713 31170758 601758801 386028269 83356000 595230037 254259178 224869411 289346907 81345155 177339156 330650457 12071939 368903293 469355302 698059910 293192062 499915908 357300578 757482421 400362701 807026729 368736739 324849048 444167701 368059117 858073214 813593639 463191383 755822026 97531899 874695845 589307234 395852974 1063497886 395508118 52261247 569300440 177828090 57589652 677000168 826086563 1032337709 313798696 480913117 564301323 45210533 1060560018 773828940 224634204 353109015 457769191 844283243 331705631 293273775 658902788 370288138 337928699 123276954 1037927462 1004161752 77419160 325978820 690099404 995204414 1045044728 146578592 561568045 796376986 912300688 432714122 927670775 615281891 668363780 482124512 75435842 377769192 146564139 168343176 686709066 930896702 56341224 504100519 1010866564 62220768 950981288 563106758 1028940765 367062645 289870398 933528630 963166203 1037715803 34574412 522005103 358579540 92090935 813856729 321145861 609838462 293640920 72360667 179779175 330978331 1025209845 807567335 1002071593 728678270 581759162 160043703 818927855 662404354 490241294 180029483 1053819987 341797745 133030991 122309306 112094753 378407701 727289059 1065752388 4328624 834017184 600906524 351671193 691357921 460316556 190832 481171808 888025908 247479141 216375636 366477467 832793452 914210727 49821486 77241467 236528849 618696241 380394349 962457718 612917981 795656719 321253557 645427122 199970318 461098151 334806257 689565965 93496533 2411526 511976766 181732971 35803456 193166042 382401606 1058164523 762527328 127880409 423883353 42069797 117352892 903545720 914697888 809356655 835855829 271954891 230928381 455605234 732513864 879661812 238200097 421053330 920842112 691980506 763106890 220354902 634058611 389965026 497711357 258576470 26456097 290093328 503572870 766212917 982903445 339648767 105312745 127754225 155497195 893315370 630118530 264098852 349917824 133184777 359002145 429759577 867121328 161033166 838932505 755043903 667841118 91654412 960828485 36237151 722220648 375541471 714046532 222966397 277897500 59866819 1043129924 676992076 573871878 293148537 291669536 264261237 52391902 206260613 701615569 86679359 605395615 440482614 257957180 413742881 1004301022 875002738 157913418 133557327 1019038942 546876143 459876881 509047602 601000047 467554979 62497579 811513240 115960557 563464460 168762132 812388164 246903457 1000834383 190938291 692489688 254680713 157806389 739050418 834931569 875198485 211242110 46233282 679076716 206511256 348024305 721098663 796670493 683712493 963533446 827046677 712365172 52375154 62125073 333152770 553764459 827677747 122835466 30354164 280623815 1028395296 910979157 680254464 123069579 725683193 623064189 46736165 430526448 867512116 512459306 349460417 488960406 1056561126 190088920 210495730 390614284 119016020 378973603 104275999 617977985 464780773 645667284 412108035 432531514 487746848 9571832 880520703 581817609 475397916 399196014 249057769 623967223 669688709 443031153 685494672 757157162 596889723 1039641707 965476972 977852653 95818832 158220638 87264297 443519914 201904803 461450593 924763095 538452301 386168950 71030735 258197948 146822807 176105798 833631214 512297656 766110326 658607567 587630490 674938563 287650403 944204240 176139587 966482065 466055742 393909915 870531977 1053800081 688760032 975441767 754869583 4763464 332183898 983181556 1047802683 169155717 228879922 926516507 473886768 514032681 700102354 670167093 757337509 881234227 824999690 447651432 53962122 150777952 1034664401 747328050 64475374 448289088 766570182 563035230 593571825 7810924 712048710 584847998 103250986 926617035 854438349 622052553 447441830 596547352 189673785 323857824 755895349 1003761208 96540791 93591235 638883755 49286777 978592264 153709286 273706609 961707476 129947308 522828783 547717618 274586610 698518472 466730017 849420033 62075076 755384219 459915399 803986078 641200881 1032867601 619106059 237386539 1011470897 491918795 972458256 72384706 219867569 346584191 625454473 837429541 26229795 711137959 715913173 518760649 460961498 661587469 749933298 163307306 478427940 326572617 396666836 420343551 292450178 639430537 35259671 1065074373 105222079 441806781 700565700 749381189 702579188 715933212 646045310 180646174 682529143 178317082 374056331 270579724 352855498 333182274 861038999 976288294 662510083 270612548 635133370 466337431 903267592 568629605 382057925 848139399 778347014 307528263 606463186 148545745 977622270 72941306 721921259 94479026 950437852 841787384 49141715 580905864 144617454 794918145 174959350 188390740 588329432 808712200 661952735 409494937 636827505 812566629 161118647 1063184779 917751787 593080326 560773344 957143234 1042179711 282655141 734739969 521143668 362749208 122966661 243393485 160269783 952875256 106616735 567678240 735389927 134491978 1009680031 563159164 631471549 257008358 1067434019 180509846 731875581 784469443 156091534 967100790 244953198 890301974 96309603 996239050 589275395 748193446 791681848 536625918 407299093 449239766 865569696 665501720 440803075 992569452 277851546 1031184360 88473385 318529927 247014963 798967163 83624866 802306801 26003216 870096117 863630580 884513667 34121134 444233796 717924515 1013568456 602672307 979142755 568680145 512479248 589862297 495304492 970826259 349002442 1055412304 978640502 985479407 826887020 681648552 527245654 528194776 1013566320 819514157 324901538 125416710 863559753 298676621 96537568 765285259 544898377 1065102532 374340782 777013554 303958470 188872941 761092034 835782573 847444068 542683933 1054263524 965027148 606961609 806230429 863367994 1036985621 924992663 169256020 274500971 349289639 149757982 106214338 335708801 454268498 491584971 583448208 844609757 905285416 806211955 474999183 367746429 275756149 970641719 30369918 683762223 211044356 826057593 512401703 962467953 969822208 715464376 1058837726 658570600 780602550 355663484 197205738 1049421794 73290820 778604241 253203299 127344160 706322227 372405572 904605570 844214330 1020313517 493968435 20221979 71913727 1000010262 269839295 386720762 127696182 1016010901 1020103839 435365072 205462803 682327575 628877569 533889999 361913875 607686354 272131425 298893621 978135973 1013744676 864326569 385149427 708020935 918971100 859907343 1003268017 1061094490 90139750 882480520 186845035 319617232 322526842 286448393 970002656 1024597004 961889711 127176548 490787923 802479262 769299130 881836519 1033493980 844533682 523145325 498063223 983831578 1018395783 405701986 721043613 427321969 208474765 557963410 405392665 381253371 783037304 324524736 84699009 263084989 215112174 952673543 1038002250 411336811 1056377143 101071803 132696788 158552800 646259357 163490927 721737366 694535384 817787122 712392535 26794435 104512290 702432551 84189603 680407709 83813194 550333774 930809520 693956507 321379777 637444668 44058501 1064385132 801153644 447696680 386722409 427928742 439973064 24163918 969035697 306974273 286584027 688968831 142512359 406018258 705198833 641977690 588967759 1014461036 937868567 20691854 558104685 402750748 482800777 972474765 956513807 832497396 492417946 841445711 264918054 530459551 407072624 205967453 164313119 954201903 91702839 922498607 508141033 339572628 391314871 118469509 149075952 636503202 911034526 772911548 816283660 568052497 38346179 889966513 823091277 331739070 302961825 338594922 74146376 41379842 951469809 423831337 867575308 1043874495 660454323 335234335 398069417 47149258 117877580 243537368 949953985 277699037 212025868 869070901 864598522 401044502 366148594 342547944 562618824 441686876 733269491 616189604 304918203 83847163 165833469 625958011 918068946 806033822 755201743 993616435 775239941 76747975 108383403 670635613 1033629337 154688098 933716330 36902647 636502331 405717668 164512439 226299009 644700621 824725489 974809093 972189618 1040584967 848846007 797617926 215203301 559599887 923675018 585794456 948760312 568431845 988275635 254594648 800726476 637534627 267518537 877970797 51293207 233021467 1001714268 440770702 21429991 1064190932 575031959 539411225 806195474 710253827 780364258 458081116 429188718 729018977 421276179 806958291 388915530 729169377 333106467 263855385 635615505 928745639 164480301 536131967 345936131 621274840 848000413 397310139 978174057 673085167 496832028 645256693 139086691 935902580 587172132 741931857 184384818 398285219 742147771 214127297 690953463 680557609 145334678 409609497 350873499 1008719506 490587573 833266070 779747047 339238499 66970336 229412125 790343411 1060513456 1068059773 724931777 225170623 171486953 916663190 708819016 680860770 1071691200 859268751 980483607 472273943 175747413 73685386 204428525 122808821 815667896 563294791 219166900 101531704 128183370 988015000 415733078 70058542 537247155 1021158238 762398944 541622412 444570566 803514523 71071117 80387242 397688604 376933805 340619730 587362644 391134394 724737115 288243047 719525418 626237121 982909366 1046781547 163090920 513894293 693919977 639666025 348832972 282216747 996964986 568408963 662767955 488219425 830417904 10069981 227891806 992933542 606797175 807797576 535714088 303645796 221922323 124780044 963834760 82466195 520473226 25280847 506075214 268408972 442160409 409500446 257767622 104077844 1032309613 741373786 408548399 85189607 638503623 637639392 243947022 424633093 35044840 478168633 228193611 152212677 409393654 989868170 725565336 779704873 753702389 585409528 525162753 458752922 856991704 599873776 105765670 390007167 129765547 443863419 330184633 154374931 623858519 240822889 809098817 970130606 143197175 390873097 398951374 988420023 764853162 323294378 65151495 572757189 693638132 804417907 955890825 262994353 848387856 541742546 606016721 747566357 992063864 599149438 905280900 39772558 990852882 267376433 161420265 248263060 597366895 812775080 237955522 612982200 199691852 22342217 473045178 573637303 451154059 31053207 246550123 508535931 918896831 56433579 606276325 889926593 1069718520 194991968 835974315 610265339 761191477 561216519 329327424 277611372 102169795 110754576 262606859 991044137 216306869 272803042 1043273165 758526418 736088905 909091073 439107281 606437059 533086940 740064058 328153287 895172695 1005956740 961552728 79580387 359744410 48760717 835712042 266513218 943906545 260457063 541038596 22068201 723064738 128531922 480904261 313679988 299462858 323603480 262122868 944217395 1037135671 249923032 1003551565 232901857 452918494 515340913 652357740 1016694146 544808446 317141424 862122962 612975835 697786686 110195788 799584225 275122340 194373650 816340324 870774014 788122424 28031663 609110912 667632183 470062703 192371910 83393220 34059952 711918039 1052826235 973093927 153960637 714236334 585377451 707384301 103253316 361000171 918494790 447025281 894316288 364779709 566830393 1013227333 514953432 951297720 399917005 584069694 708118560 563456785 101539746 330707998 567785508 1035920118 578648784 991467227 637784810 65891918 157685351 441286057 43982616 877309546 998156458 901761582 760699818 312845330 848815145 986353030 721413471 684754213 712537413 183631262 858797927 715819572 503861483 619691142 316026044 100765288 1048607934 1025509392 418928615 984831179 174867320 644320561 207685388 855610544 265442857 501835323 88493348 109492501 599737885 56974572 1057163849 916048125 973542834 532250857 33195081 295749481 333095289 32329089 106962778 1023785398 579586041 1031363693 1037130733 845268329 746929187 130297240 114046303 27543308 432295749 447454245 5458209 1042163310 535409226 945735572 918172388 567534039 158854566 251424845 503510872 92743828 246133664 47113319 666441963 241675302 347595225 694262269 662358163 694096340 413860477 734033500 187570837 861426843 179178020 641756110 236177225 485926243 770804760 972441182 61310035 870630224 989034449 806004754 944050111 426967221 467236044 205504989 946155226 253327152 314839406 610363466 103175588 590916794 766844113 861019209 646547011 989192333 595304898 240133674 105778244 471740950 750259038 523980377 831295477 167771108 867362742 518304803 279945094 629159292 531375208 521893566 285961989 800910540 707330773 520198323 134072171 995914261 632426427 500887174 407873556 1027222300 616851051 665722347 465227892 433663689 1042670918 837029061 1001917847 168918098 335995790 1015268871 418726797 219153136 318525037 737272364 145693159 313600109 32782478 743942042 643438169 510137513 339036710 499280968 823894967 254607102 964075236 966464332 196256957 801920870 994995493 534670426 522324622 394836444 539899177 558117545 328767029 877917631 46858384 594636767 154984212 818601945 595833816 925413236 919023086 304405153 66928503 688797439 289740720 855617039 678862384 137087976 669957575 70557178 921790531 658157583 847902351 503311102 1048908625 738223490 781389428 562645331 478927259 713779936 1058650166 303330984 43464775 137616988 339920083 313011570 295151713 615245201 172067168 644054465 867086616 733113999 77239830 747643736 46459590 309749103 859690093 581278616 805843816 1042886413 708019912 382271740 45383507 84422903 434871881 719663686 733999401 383335502 969260838 618083226 173836588 1056318739 310606045 863904382 60074351 489737282 1024084918 137146152 16080173 406958355 383608325 755216122 423010191 10048734 30938028 24533092 230094514 22456182 444968080 1026085315 129840114 571202422 256647969 592232914 34278142 29597531 813334038 1071506314 643544021 369418607 865265542 401578202 726896579 480342688 340729703 202438465 402343403 377938035 803222937 543742597 719103607 430346484 335380818 691139001 300447416 116943894 304403762 49165841 346850417 824488704 1021507479 298935547 836687383 113945104 579320708 106371629 928690313 303838026 779818803 998980867 369987589 366383131 999219111 429911741 394037685 403026263 863281215 684706118 3596344 349298385 431993707 196528492 531344184 434799488 938380426 70882024 765354589 908583211 975980586 764414390 948023926 181196071 583967219 863001174 676811183 1012145160 479134211 127104024 9420312 871889234 422070713 827340347 938256965 85167005 492904036 214040940 709151449 589384196 640025704 484817565 1059229022 515697405 387361372 409102251 196777785 249792638 1045093797 434984358 396646638 1001260660 746085126 399333468 656940652 411113384 1025296397 274489600 253747779 828991092 179211418 441343584 517496959 303809486 857208814 559244682 530218404 260003008 999450277 645160974 879253137 572320090 792231946 1003645849 476737335 85684224 601649079 132732732 819797658 477362958 965828518 900252625 956639554 693829753 739113055 901533633 1004161356 723752261 71336288 603191096 843133656 621866496 715054938 359908841 562366322 719572134 512479459 977920003 118874322 82702116 661671957 1025990934 252455078 5864540 622147432 743449372 585043873 957304611 389510659 1044856288 871618393 811166596 945597663 845816518 624053070 367847989 139097926 568345991 1056782410 934863360 65692290 161870286 1041460825 87582245 163625775 227893673 534595783 491216604 755900964 469123209 746701815 948514723 1017684420 619411540 678908012 317116026 123209739 901048254 22980621 166944684 423211243 164479044 505239036 14885663 852340482 506091622 485501038 816719440 35306524 732905590 28191525 157551193 648915802 21593784 15066761 152018268 644832931 665042417 935820753 532443972 882633365 344217017 473439189 465453356 956351910 84852630 816069757 126587438 526689230 924193560 190094494 393927236 44611833 411416130 834170343 372473594 808256930 1032348860 961586483 640529472 154822106 189770288 452569844 467813554 680494782 999840914 282024836 658883884 820123573 752963399 984781997 500605586 48886562 313322348 648396695 80151435 303703744 701715651 719682713 371607243 342013987 255062497 962434863 989401963 190804747 123874160 1042494758 1050396442 823256252 174439700 640764571 571062754 364901061 723138498 953704617 263975258 842598745 896265220 63093608 119929347 351896792 983578613 404586831 839351302 325743099 548161359 815764816 137558792 799268373 822912793 362633377 818881842 577937107 1042853585 641434030 541729272 614884616 627459329 978905883 64993983 825249062 298456719 144965033 1006255391 50606550 289332163 23573566 110976392 230532713 1006573786 278502294 941734297 747701203 849329387 935716205 665774230 173371037 827091615 991272153 808502998 300602022 1052973178 915425163 731928509 573039492 491789587 58040814 556412044 848184904 24814397 199717647 162015183 500237479 390168311 391970095 713601361 78999302 5205847 845428671 658640582 988806203 581379887 815972641 1025591895 455083059 634027876 48886456 678715099 1032420301 525740032 823082318 296807502 1032725261 477926700 437434249 266969669 816860163 693240317 873221408 519403761 411359852 546239198 117921025 41316138 954706003 938443225 325670940 507463208 925990715 355336803 66833428 310626975 912631396 982888527 192966772 765654954 187521994 372003502 721045047 952093834 74588797 204523992 106960789 365096554 398172568 653882256 994467085 738247663 893212149 676166386 1023504926 71103067 23906280 421643675 933883590 641869044 433066013 224281598 1024330486 207610873 152266898 348004477 760634720 501746452 70420781 395073649 973464081 194057993 222726860 955212521 684613349 308348938 912743819 908081552 873044493 356440887 447032210 589774664 758258485 742670205 895746046 893894285 829995292 425119789 587244892 966896292 166969858 971971560 978480181 105178453 461653272 337891365 204349604 345791220 375779206 953731268 801127256 48734987 23795160 926163252 747557313 131279215 685932109 943626643 493417212 96456180 336687948 674766724 471924320 1040971692 955319408 631264735 1046235675 672596876 527170047 63848696 753883148 148672493 176724348 401230221 605701015 376486109 37126286 811330629 696332042 71333055 233214499 927603361 135403094 419657445 310962977 144892121 68850392 329548155 765042897 334487172 245718889 348097846 377380232 752993142 980832697 561211657 598882096 637259125 461123358 744569375 816323605 549318976 249640890 378457721 903773395 220509912 642741197 210361946 346463165 422079829 15012850 851086838 609562718 522636544 847746814 527250635 404925783 781490774 560159582 43366387 313279805 419665974 661144495 492657569 132672674 640537155 52093976 214926972 61345909 364911702 191424127 829338160 135658713 103771152 157792780 417552265 295013139 417332103 230228405 375337813 454316598 619654683 957335437 978901630 587378363 864018169 1046356800 900394482 251635954 64243870 431306261 350532798 947602307 607529844 276390779 324708671 6666725 708850946 88697412 510207215 968240367 899624975 675795915 76281462 85277797 990853481 801974575 629420245 982356473 764460869 142108629 801472889 318743983 660770147 973333487 904681816 379865308 508986239 191771792 1065670436 1042451426 916889410 286220434 737983125 961755274 667827157 630574310 497769398 98012108 314722866 193803616 206492344 730924746 1009152727 956314745 454080191 737518305 532932499 926094718 725637678 425820390 491917357 111982756 238563396 677062578 553136268 1069587032 37060661 602073438 924528857 947123026 311538045 4964727 973564063 710653616 363112687 905231600 305333333 73549619 726355186 462508882 810803453 862965009 353781329 411974818 113032426 613512946 139514973 741142405 264340600 337320226 819911046 71151569 327464569 1006107459 134843885 552380323 607023083 928247352 641430228 504663118 134709657 1062469030 192023100 72608765 355252768 467382503 715998339 502987776 1004097472 702460488 1375584 314851613 1025491096 1026729034 950647994 184988186 583220435 1002675269 1038172495 645548328 52693828 945841222 324097770 458216798 366014126 537524466 780352477 236877651 646476736 545038169 696960576 255815206 252719217 621578368 611119932 642929869 853736256 994178591 179001688 572874028 170831005 22019360 203347459 133519319 153428992 626545848 184868710 533764010 253049064 602803138 787545296 24215834 278899771 523240841 1034809521 52267082 858285961 322581990 723036089 812126682 727434407 674275442 205857381 857909760 467627500 547994685 265859062 204264856 194328647 456709099 359082131 716029079 273122087 491117056 94465312 293590307 148785317 63365347 370251448 542628835 280567722 685621767 315035776 697696416 6400889 820615363 287114501 1014450117 542653167 511770463 143634264 1010586832 429979544 245153155 958849785 11489634 503071252 824094655 642777574 1033154325 575012352 725594132 370981219 740506442 746585186 533805950 791225791 732179186 493196882 194465494 610657970 286959656 10753394 45939227 4909407 439558589 995320105 992359881 93381470 758376977 138115324 997542833 885403462 472225398 827301786 289098293 689128512 897448099 543167764 531020503 463919092 642418533 862487437 632170210 312403436 1020638567 494766038 79684855 623320869 1038325284 424019882 121434883 817098111 927189942 693187914 463255090 288349855 365766619 495982178 871279575 872643545 313172605 1035607650 689703115 245899563 817528114 786556293 135913713 197029645 759573471 522106574 199996815 286936984 296275266 958927558 612657630 821470421 938694076 259545353 339198011 283864743 395697012 831396648 562177331 900647288 488394848 177039230 410904359 994438497 404449151 832388497 241200359 881952432 957807810 1073173164 599987014 646987281 518995232 686719521 979987381 32265399 765358982 560711244 616900768 546332381 716342635 528162288 238643022 814330410 563268587 464149046 256501696 162909483 108055064 613752691 11194742 282713879 139466655 252694289 267543965 526008847 660124748 355229441 1013794078 950710246 89126638 597155338 598412917 594802207 593054191 124515829 953613954 696407472 619298926 69929199 351774281 9967240 52325010 769133583 788826976 112356531 593534776 68645296 315039012 357730187 676346597 606862013 184646564 278302140 167409332 666361511 196611188 866836138 54229217 735093653 464077008 929447277 730462110 246160905 1066995209 468484425 821029020 621640080 1484561 340639637 84918960 605715439 733412489 567954017 993914592 444080259 238590911 354530052 742397878 170856504 395556802 156225119 771592363 13072869 990432372 833836811 930917022 843157189 883673664 977882416 1021095565 781069323 537676227 1055662651 1016290875 126056805 850808261 107681996 196731261 825589161 993159182 521425044 15997580 244305144 369811321 1014143110 901406864 457783783 994602940 438179040 1055229789 365762465 390725158 700746749 248492103 453543512 239698748 157898821 219786371 540488588 819079208 497524599 974193336 414837351 57923579 230426534 850689376 579674190 1071078275 315097668 709047878 152309444 188530273 198066697 264664201 311654708 488191925 572769592 990098826 658986300 821983438 846332199 327328211 177597911 527421388 882680443 514362380 829995251 361825667 1068779047 65069610 753650459 156896876 184126004 481818553 235133771 176529589 523194859 161194890 610781982 133308780 829109985 310706754 467879571 326456993 506886214 238811786 153888615 1072858748 897607103 629618923 760318764 840073095 388942878 492931046 624652274 257107134 997592012 310341029 525431621 903704525 664825057 610934974 825881628 490624571 719947204 240103342 938323116 902940720 965066175 837172605 671444205 811300839 452500861 952506818 131412256 355656840 333103892 154740278 118309225 667716625 820672601 944549618 55764346 921467868 776714252 976873666 444678777 955527555 1055854673 569424348 860099822 350773566 407030697 772994218 808922382 354359039 524640220 580697324 13377511 814330009 488154134 126766878 761541965 681418143 116650988 641028242 177326559 213555817 432904182 660179146 27989302 368318319 326747116 1033748799 888044900 900307701 635861377 613080453 852662644 444652490 759155262 259459973 500775411 981416560 222294708 860089807 158282753 659459883 37905048 747737034 1035755837 415209963 387918421 619012831 867056909 811792555 686303713 678961478 163354390 517146224 287331159 709191895 1037839188 342649117 390858679 708811853 242891091 389265117 980137488 72714341 929599793 640836163 933073494 741681795 884369791 672402463 1046912135 612642159 736860389 316770625 1017329937 581144472 1035018843 658071557 84175301 612200291 496763519 408927487 300390526 50195002 986602652 733715940 130584793 754396921 738663911 115368669 547715575 996662215 921279645 62634244 886168777 83215562 12892703 79213228 586208832 397733249 76684757 25522099 625955922 87082924 555427309 935116402 62926158 80898746 21620619 1054867420 166230857 199653226 242596391 760976781 930053224 612825906 853925324 423464670 473607090 128549103 985094989 219402560 1012104651 201473270 828875434 333283269 733530361 843497852 843332338 652013043 212205044 1025375047 1070399138 415430600 284834455 141105121 303575665 278145142 80717840 705908592 1030443064 748255225 500703158 552608569 771572696 17102174 989050047 746999127 589273448 325668598 34647315 219908979 37308109 639643592 338631073 1054106608 821047985 828692515 455601214 70078390 120447181 909528930 60851233 813636098 1011835619 286735418 703722032 380496211 750570141 812811702 263867483 824287806 86382137 318230050 189005323 1022838725 502861787 1035984929 709535826 565418072 939425534 949216120 459501678 119444737 278165575 603950091 262939121 728731542 821102021 348958657 813272201 43491443 908812622 119389877 339404544 782532622 255627555 427871533 654119270 996431605 494828848 613607601 914712741 796381072 1276705 324197481 992955394 1058246125 1021304388 942446277 76835480 75183780 567181671 908210913 486029503 246428843 830880300 529824099 1053186702 527102950 96075516 286043130 671619054 224932232 220496081 705779919 898813846 96530169 88973673 706724738 5907987 448834577 436531950 392549424 163194662 1059083900 1004274183 1007647290 281303765 807158570 9940961 573803566 885301064 244845885 244104666 842815205 1020942340 333710787 215180075 768675304 909746665 57596721 1047022325 479129150 77196776 755983795 265910305 382945088 957152670 875937982 740880801 796961968 53404711 227991914 277422156 587837480 123432279 88944535 617816267 545040044 1037983803 420917804 244173804 1040236258 306398803 523403102 599143627 547682611 754022235 136563095 400111244 85869500 642298439 829354822 657831337 905080549 309714955 232838212 354245024 682837563 855087885 89019282 632970732 568192814 474542056 469962943 568093764 775341731 874679935 918847405 995401982 858342260 609540667 214867453 360568444 36516169 591108396 1029810985 620051102 231920093 857368554 538269416 286819862 861318868 661518365 766569784 172556473 355331108 671769920 649112261 170749228 43363575 743295241 142813572 706779754 188984932 715593761 841115788 769351210 10139772 1048541189 915478295 82592969 425497081 257810520 401748873 54486257 577453043 233578629 610351719 373132367 1033551362 108969627 843218026 478443514 916883155 906176047 1042102985 910838278 1009355512 180842459 700222965 420034948 8385329 969580818 694211277 959997445 515891024 384952608 158989961 929342862 623764846 401836572 580494474 254676814 1063088483 62321010 657710266 798582439 971242444 742852344 1040585131 340190986 1024727455 467286675 970553876 891044465 419768046 863739839 864138834 872484532 253069105 596580319 270386302 565796466 472855756 541625427 189343464 969500822 473541942 906430715 1012632912 552651739 234703324 375550598 666879291 314578775 217514716 17308196 346953490 173090736 313098831 126575154 950982491 713382500 761033372 991982623 936535577 927538706 284495731 21330507 382467083 132878515 249994283 410568242 703269945 342142768 986033614 656082799 591275526 822853557 401220560 408556771 14615970 968495499 971631535 254750758 732922817 300004063 106613988 990734377 510834869 660350819 277098603 360292055 365087240 382657267 627552838 96015 836405865 103424225 576894663 209085639 629180472 227994835 630842109 22887831 381566808 60613441 584923770 547957094 537251772 800756220 329418880 300214072 152270812 173379354 455628266 906381130 152297125 97374362 1942002 913868762 824510657 1050300023 81709532 630587186 240149929 224668281 369647653 599598625 614715092 1028860177 106846967 190384633 51211276 704306333 797948622 283953981 737165650 367970963 1069755623 1064972143 216164772 288591922 979391572 425522781 325129559 935084189 996275005 289234231 97324081 541044925 560997579 288499179 303982657 291704714 633044582 435951518 330524009 731556541 443991551 694612267 540223568 371166504 77288592 437808806 720067958 61575059 67457398 480649195 581650924 184985262 66355362 257352032 535103406 378738608 917202386 1070164313 723216313 585129212 299180354 244006338 47762205 543169523 86006364 436100163 536001710 529520101 1042702851 522920124 705404876 512952387 1030554020 96904098 163680529 867484506 114121938 56830537 228315168 386960678 749183739 575827988 989804240 877613895 510785157 296603915 110288241 524878741 401666475 94539632 209902680 736059994 1070399379 818491267 339062135 960769393 663369445 109179064 961816622 113784663 686303547 1041888512 814842990 245175455 484579859 784324009 436458050 687452999 346322040 1047562812 363973554 811326294 965478140 1033243807 621700772 140417981 479314961 328410381 928202037 947601020 744311250 755246694 663653740 138505085 987462727 823629589 455241891 750264042 183779733 167930339 823380429 19169144 665340911 236481613 760769869 1064054880 530414282 170920292 189922740 496116772 485531268 339484001 625066893 798544091 778249060 779987119 746856675 196013975 174488934 912661113 371813326 623554077 1061061901 993024904 802672500 858256432 640050866 1028623637 557757055 513453910 381559886 370714964 727781457 353016940 364186366 516274234 470782986 969325494 10731062 120707417 923829712 31290992 745825262 809868011 366967087 103182248 1058163988 670233881 336594519 321334229 772561861 340991434 662138235 408440280 790138093 653650154 272160533 1041671334 320762267 52655185 1024622574 885845081 919080979 666130086 505093811 264589124 954149223 707580636 1001356925 565771539 751187461 293175691 228712757 406741068 803027598 10265101 449673619 77259163 486575665 394679592 202696048 1071438405 286526298 1061729929 141227328 508580329 1069075069 55120414 831573031 628903798 674008122 198824301 151436458 481211553 599548195 56034444 1000619591 841791131 111770884 764635513 178089327 964148985 44485923 175806662 29610605 765657857 298680995 1014987321 329054553 442282850 457193629 605142183 243475645 227867916 285849957 864325135 402795455 608935650 64083906 703927889 826963773 996557189 370367041 658770099 63191298 708824285 70053869 590956405 232624272 1018234648 213375684 333514504 522214946 1035424668 220068966 392194687 120619072 63397149 317985634 190998817 1033349750 651492982 18607565 937941470 1066446594 459165613 362144046 955451201 429596643 615382062 249513278 594637835 109224260 782562961 188680811 361360070 909464304 493820869 38234072 886108985 1063330304 885047380 498499597 523744205 507902335 410060122 774048920 176338465 389626176 122337302 783466716 431282068 390856148 934890706 663566082 361496484 750818179 879322181 594972798 1031828566 801647475 1063988631 903398317 291656183 489983273 490633224 473630035 860111257 544783509 201494381 513601903 488585793 996793433 716782284 795077316 1037015044 438202344 216195910 254403384 404132673 732786954 397760019 655017996 803640608 3288813 691951889 914300946 204966605 1030362376 405301778 1055668307 470765724 215785023 749019522 484642954 222257373 810608389 167535266 156151881 189274011 374754054 1033483502 271576834 89569893 1013235135 707657576 454386403 256882571 342252844 246153754 364296378 223786794 569713891 468272749 2734144 791457951 445536513 1044465748 236756415 720552709 285120185 486699259 852861001 667861662 366564578 463977666 467062421 517820018 236165575 50017343 119421260 770985872 782530043 466022486 64397173 696399145 469524979 349283058 684371691 72112972 554583904 652061686 92312043 146338133 741578636 587009029 526571513 918311187 185373662 503738076 310125623 564882838 107336728 545553890 392851043 374261741 44192650 949805380 847333013 961375352 430748378 566261367 936272855 464986659 753652222 232801738 828467444 136488120 452824926 111814753 1005193837 186534921 174323992 995105662 673795673 416138466 359624993 133624460 899184291 85519689 208753570 777234884 19400422 183795145 971856257 192332589 433246958 323474173 645346910 151752338 909202340 1032639110 617328000 698271131 1015455063 474773390 641103348 725517872 443406105 44869564 127580221 594709099 1023558865 96714990 28547117 920562071 821489935 131410594 351024804 678516547 1045825814 771256157 227042060 322262912 981111103 611048881 898404695 927513438 109418929 532784805 337338252 473951310 661242096 405187282 62210581 528499126 140315322 972788539 892204032 487916037 939286094 936331910 383729684 432546477 944296918 825785913 31281154 1038419450 486668934 111700834 555344137 731597496 87076452 153406188 258566399 877014891 699749171 370709405 894191503 646929054 789991709 139598191 254056003 929671171 110242617 200160563 874616352 966824796 285530979 263512028 105271923 177331401 567000625 348757890 269607691 943517315 971162279 1046743915 958484539 32622913 1040301980 1014083467 171573379 987152103 710142453 992023090 502203615 179965654 876025353 191434055 554326764 909652455 851566480 559617488 1013242139 653790320 1056846811 514229529 727545715 602597444 197309405 708127986 520128831 242033630 222016506 596247093 776580049 594756549 707451022 124697111 887876168 1047412969 921039649 676475736 981508895 607941054 463460958 882216382 927895230 639430075 190510430 137358262 603078002 1018676720 1004361613 142696698 279810321 579492351 62343691 39159417 454114751 880537929 920952916 351316451 393084898 95325642 643397577 894887381 541928655 54191384 609482528 36796174 644482432 879161386 1027565341 494759314 1018089496 304684791 54588953 50916057 862477950 444122189 274688852 574737110 767352513 94464535 1012479049 653484678 1041863597 993938830 839366459 94644688 726732632 964672290 432871193 163591165 169884064 3672840 691221779 375213740 337313280 622207393 562934956 66237996 45641281 268568991 980484209 375389768 1005706344 117427686 700384801 158455214 954576903 439920247 57903202 746448644 275705020 366929576 934263614 866004232 798332900 405741105 384319169 1071521835 606034244 567476867 1825160 581130558 134465286 256838515 838256128 723154629 123226066 577686958 874117038 333498885 247136792 948681955 928657677 383137202 960635203 536800270 321554885 850006835 216718672 1070387823 232044233 604015535 238336004 768133432 722478368 342469458 835175388 474030635 568705678 681687765 772470023 871888142 473242522 302804389 635821945 67726879 40538372 778094146 477984709 173093163 124129988 335243374 898596540 883169782 567299485 847806590 464230888 186327087 355718249 948529018 258633842 916870898 981155281 719299440 926073808 939546662 730344848 1034701560 763041299 636275060 932061583 644923300 713014839 247542906 381160751 740241756 29878036 665239981 82531661 157466886 604029720 440329154 944000678 758480340 1047394343 164231405 856537000 795126320 718274342 466719538 685260102 1008128277 768487391 544108992 36293601 376460982 795077520 496863177 88610408 219376335 652039974 44635831 593068236 772891727 803548412 226342984 1003196040 497619279 118102548 496212841 459623717 441891812 929523715 758815207 452439003 148494411 948006557 1039027908 800545020 607562523 606198449 1039716970 318701762 1044114646 188374028 1056001913 521604012 506548702 877203440 639957727 1021188205 1041061154 120394109 182199393 825916238 147539666 173702074 339639191 893412789 259766534 827934214 1065599169 1059814461 39715769 154713831 782935779 1045588977 284391183 620376510 614921006 603291779 953531957 797568668 264370647 511731455 810190279 476498610 133523606 752237717 360497446 779395110 200362911 1065750155 147141707 1034669620 787940088 183026010 3350862 210425214 769337737 806215602 673485166 1050669506 650055946 951616995 308751177 1008769815 37468848 922515008 862163831 246853086 317160296 809970474 231907491 913217579 537442444 76638855 929554623 884831703 715829987 90696645 675191121 660788579 305687653 1000404453 392457532 880787164 985476730 1067124228 1029128290 630871076 613058854 737872928 632765297 143100002 996609883 565493414 106667252 378508574 875229882 622151827 824504240 978462556 387214033 569659801 162900401 602203138 103316861 803611337 459385883 1016205448 164486281 907806217 343056485 149261978 201444283 1010799962 612972835 1023688140 68997911 249035094 660885220 296012311 705270723 717319101 136455092 746584848 576722240 1001009327 761107119 652455036 173496107 786935277 520622185 711170133 42898592 510832949 574362252 226298144 919883724 396351491 301229031 880906744 1058761914 214925381 961033689 274288784 978776319 602707852 980061174 15256874 630973440 416044744 148601615 134191362 749461520 519414206 671050115 958618682 722905799 401685211 225010027 570056190 881734856 465965301 473976634 601587177 707298769 726304121 738015330 63073411 906020155 511440304 579801645 772300134 210680786 287232377 964754692 334440450 577443127 355237532 316780275 435896571 513617741 215047303 896304449 130511198 405658607 463567662 384257074 954428174 519981070 681661472 142086160 439013443 45633736 965902531 474832969 45437684 556336274 192471202 453911933 214636398 741481291 845505686 999025474 1011380944 5841728 17844679 195820085 137427942 123944221 769635300 967541205 84928194 323816162 638111449 934988717 373173629 960361906 85131155 346875182 231144331 935022594 356831140 86870916 1044274924 853687250 748760996 53027204 767346419 947739074 120525629 979378863 924787526 864646540 748089815 615105752 774468664 108513110 694431913 632915935 38922960 310948856 416899338 259483765 701055182 5106096 409379973 233404401 990523485 540232779 312770771 352836508 482000390 371369057 899637313 939625491 221496466 783593732 551897219 1052044188 285851262 396681438 810058419 689254308 612442391 304274115 649117882 88295223 203470462 756917752 905100351 71400477 553001909 320550730 99142174 391953663 169129924 638713737 54368600 164627834 589590675 82307769 1072959425 9053426 995315653 117847366 917648165 425284243 880968262 434801513 408824474 1039743728 97852586 361819011 454287902 511134340 354323685 209033748 1023682017 25763010 1070984544 928197203 353515386 867035299 1024724203 905076137 850537365 888775765 75207778 354682893 244820762 200269911 402880127 261678758 690386953 615248695 488358474 18052014 764974064 546851546 611349606 1052630329 6422542 826879532 662493541 112365596 618648908 280233710 715167090 630097052 814667985 600733974 466248474 920964200 403321402 926355676 441277506 962194496 444840308 494920398 106468125 780475951 874086542 784863938 145039814 442352183 250463157 344069435 339024872 9498281 889747865 646361732 865877003 1032649006 945033735 287011749 72453160 736840203 468914554 20162029 166253824 380797265 891322553 945138351 724250465 344901645 171828909 267548053 959719454 249364227 525455412 568284361 407980045 844200992 743693390 1062956305 533943725 405046102 200302311 400482808 121608362 1016981497 276173934 359862322 449495118 423395844 358399147 589043106 357611539 207013695 342871269 364956345 114804068 248747756 641655848 400041238 484963300 602208646 701714818 1011389555 453916678 614264086 964225875 134521059 586071784 1027713929 460730765 378960900 151940784 518620299 552605771 848071100 888064195 219058021 46399876 105790384 339997591 300497890 725917484 834288054 849524859 158108622 710106580 826862073 909080124 547163359 459709546 267816894 762193724 758664025 216712163 502728636 726906668 829859308 401030128 757308699 893946382 472265604 950696801 230487361 451970519 507338984 440684271 811908669 925201992 1071707529 626547421 869603482 737319004 355499300 336747988 340171007 595836198 104010083 353995020 1038256425 89786514 335418287 860148923 314237969 700942461 125276992 431929325 174523655 151497585 250102592 342732907 10938976 376337770 612055929 24375472 135599650 557888429 347997863 846347816 862294580 842923457 728765477 1036036510 271327670 370422737 207608220 94064058 352667370 803946675 119926764 391597706 812007411 450468669 194112386 418936921 752896505 186426701 349665710 553963689 983677471 439375875 623560780 829899642 707380517 190542037 593205140 614374048 89774205 909885085 704057085 1027050184 799482764 771625857 810760725 1010527937 890730871 37786296 1031785102 133227468 1042021330 98633286 85529428 1046461175 283841782 204520896 907998152 421783194 280784398 219684367 850880801 436179436 960122585 30343230 101429658 957460336 675578980 1002218056 796168603 1070331882 165039312 764959432 896770052 645540526 712864407 443053942 409805189 847543467 123512381 255953711 1039330378 1043594534 68005261 933039036 63882684 510438123 137468390 49885591 181804533 299028086 770766774 161745418 927766222 305002721 511493130 612996732 226161080 876042022 1045509082 40714976 214317331 227063741 39725295 320492108 201010820 367346663 1061330891 61721332 632061664 811822322 986706008 228282360 1062925460 874720710 12654696 564797442 857860254 451301652 170762913 566446452 381247000 299046906 705628745 836829413 1037598188 148940159 930889226 883747283 550930716 728105404 615603073 794019199 311699954 611101251 450492197 378185413 938038568 1065712460 741689362 358476453 622488200 130659130 105351058 215997948 259615602 725949512 647190834 811086177 558267280 367886553 868084570 973591136 112336479 884768246 116435156 232451642 395432605 651242412 41922029 531923156 235902918 985289411 1069431622 480281750 473403368 43354894 307533146 311215040 423947391 127999973 942022905 205945138 721697696 150029640 489105026 11888816 697068473 995250631 736857172 339558814 740612118 926185271 783250860 756860636 527578558 813326235 847332927 678437172 245562752 776078708 1053833159 836192422 367350672 502892308 463777601 337385669 562106420 244365445 489514424 943132403 855827238 319364644 858368804 910263298 937042730 821330533 279964679 800583727 140688980 860283105 243689134 740077245 61430920 953359211 85376479 883861129 293884113 55251536 437378144 401135544 517518392 864544678 511800705 864928881 1071076600 817696550 148755756 69263144 624499841 427059359 527776228 26880 561614131 201846917 678424312 291828983 802012763 58637791 532882417 655983720 164163368 622676440 903164576 533467202 298505343 885313811 148210351 89239123 1022971950 1049747202 449805099 664821839 538771301 568826889 582230057 530745515 599298207 500636798 396798192 183202102 1040479572 63475091 937123832 649789605 157056058 1025910289 1059926078 879458503 289015564 254289779 562392028 474508924 991000385 571319505 388544694 470233080 14561892 996546131 278723366 795444488 617984721 845745080 873987580 899225255 187638859 608783533 422651269 25673746 70375557 419789345 140316780 228279389 208520809 887993197 736627056 6787153 201133365 104135365 985565037 801930599 834768537 518149447 56087114 72562381 83369613 106100728 271979320 707394413 949715617 875582334 143365959 241057799 637450062 532336216 973338578 733040061 1014864894 474121858 140191909 686695105 346981905 377806865 377319230 536580487 104650289 699426828 560846091 36444324 658556712 175755763 222685065 890906900 454108645 902856895 674889087 157631798 417168164 139588490 82128805 444625847 673627148 714559728 494872914 608834182 663358670 844909112 976353283 948876829 488688784 293958606 805745032 1056878964 136437262 35004141 299066018 688921377 721951467 553793872 375608893 310347225 569680160 594283432 432109236 404642398 962270794 989600749 262507246 668293243 832319126 558791597 1047849670 502323658 752114995 785323270 848509322 15686004 516499515 138466535 880851884 747068518 854705247 520204447 235773502 108156784 22590248 356767431 752739824 414641862 483766849 114124369 513027705 541577777 409494776 750413864 468258594 395304648 619735819 887348642 851907248 584646920 968851671 680270860 535672922 557523063 76316782 687961291 34629960 11020390 554575508 397194896 90282583 692271766 109121748 38189589 563632001 1057779407 431533767 1016067146 651420219 408315703 1016266012 945524844 1014775508 160518663 691001585 859903056 608323141 449578008 286793297 667177945 560993802 265959404 486503925 228703696 1034160953 449282747 326723957 535814771 559056867 214294497 337911624 301482958 23116384 159117455 181325077 1072571917 857079828 324908464 145208440 31777711 150215472 564070411 59436982 1032965569 585262859 1045586413 10679194 1014873958 401646996 297283266 17526217 108197913 273976094 1042796347 954558197 504999282 710759079 385352196 1027746226 188004908 402194498 353059517 747599377 10112896 514408731 1048938038 102591800 836421536 148523820 750096420 580229598 199678240 720823203 391895391 480334140 1028623881 597404311 548037456 300152688 255539298 652091480 918403592 850868697 888467472 89064886 728726962 292790141 407165716 812847893 107416761 298097077 921785610 890269450 44901834 740552869 842547328 444520047 751303089 939563085 193239976 1072032300 940607698 681659790 216681330 323095869 566220972 983205191 369324073 576174643 61351364 64334859 995568736 1052881439 668165049 204472080 563177698 484226762 580712756 843569356 917732972 1014716811 169060461 462392578 583040902 292911028 241867506 562574925 656123348 470494242 155101763 961123229 588291427 682340645 1033339857 628897361 383547638 916381644 215487867 799793367 961029157 222680690 68616005 424303521 327668161 226577155 309729480 64875377 380275136 374794229 341501229 231978825 286079587 641386904 471334458 1540945 691818595 844438411 829339558 874906151 130558480 1042587027 402016242 77922924 462693691 418738546 1048389849 20551469 574730693 433305270 741660289 1043933766 45394876 234201057 1068203773 330975653 1056719467 705416359 1040987847 238630609 200190511 22519024 273941681 406240105 972516673 153448987 194017587 298131274 62709969 663992789 713637447 18337981 618860870 207957990 676955367 192429964 551776195 1015058695 424154567 478707717 836907360 79651170 1054502879 837485528 652969287 195889808 567140333 630395011 462286178 463629212 919968795 1060946298 36632814 694025366 206329673 444786160 928596449 1036621734 694432192 997656262 1055683401 660168211 461571145 165420532 799574866 1061042550 418050529 350846518 183946300 672445641 315243203 751700169 7719213 318577223 219125176 89552305 675389224 950736639 1012723166 723679953 233387715 664040705 853421616 142435547 882253881 451941714 744328673 750139334 312030791 715868113 120859814 517550509 924013091 841258346 476519840 456299924 684867777 424817849 738281985 752573011 576387541 370329859 95718705 282404233 693312765 970018542 651972493 1008259842 65503184 209243956 330975229 179971138 704417932 225428660 213141833 475350407 758695453 657395043 465651765 420291196 403247955 295623622 350925301 706848530 64766855 74392918 364123761 1003168667 2077583 245076733 308700500 1007975078 354779677 622597087 986027653 196588126 694654500 675005546 973319740 936602055 554745503 205975566 311348503 856975550 772394374 92521241 293964021 1024186571 564295759 135849246 137355036 144937024 794785639 725024667 439612926 561895509 401337773 258779070 51177560 534147900 326538652 213905747 895416877 414717223 324668497 522017848 755200172 935193219 323058473 130515203 884560097 566403214 855037781 554662178 196762790 524253313 301062653 176940706 17100432 163141450 782269069 219475974 853083931 349062149 445373785 159263627 374381074 796505986 210639949 600889260 332188185 58094479 1050535907 848628550 530488079 115741629 820891912 454454958 34856799 278975667 658565830 374945691 379987573 389236526 1029827513 196455040 300823759 681461356 438984831 1019649255 497969012 645254033 76055512 517250572 933134401 978258669 867714040 328521571 145042214 62732650 392418905 928952923 338920717 48161711 481519144 996982069 387170152 430512898 101624926 66173389 196814694 680017751 410859815 1006910237 515492720 183430625 408928422 266139366 313873702 896381834 81852315 406970531 119126457 907075106 110131866 955500897 863024597 857703268 344338946 832182835 606154086 377095712 954536818 581243203 960628442 32633905 870511678 255330944 648239390 239744930 1030892007 719131845 544634953 583262209 893067212 489703460 141805144 959126511 920403367 321501554 448210791 597591403 956856923 638136077 466798036 421773626 82976056 277907585 1022448141 804302941 32908851 50810601 792511594 181933186 970338991 634256168 1016423338 308671995 776797815 575959419 794741904 329002893 254155346 644533972 964105692 779037221 894436464 1056372340 9185439 659051393 271701161 107838689 196894115 581074115 553691225 407736665 154887316 685186278 290678210 926527640 456690960 136929523 791213482 1035189100 243130190 482681616 1059231222 232529323 453190111 9067881 436215995 649987066 774703474 937946690 780486642 584553329 865642513 200683927 714240751 938951565 629610710 582226017 213909768 657320394 796157561 773816127 403794962 593499723 522271348 743535720 493716272 209453136 52173219 981364204 500128950 785653917 9556658 833988165 100554027 683631812 546156668 612980916 426083207 179853994 539280150 977581668 578177675 879942687 183942327 80253698 75180078 393491530 811545527 1072769192 455257644 895481153 1073286631 537995878 233380044 970371113 509807761 226065649 249392549 681608433 7346184 870446933 530016415 694995456 201358727 46521633 930480643 964211275 805492756 21573505 218611210 114288401 1039128336 116952138 655742065 758351073 878505159 357169706 1021332633 699396878 167021089 504168464 12593638 746335048 146757173 440483167 770327100 683274795 156993220 122900864 193267495 459708495 355287598 533993110 93792527 734679181 818284355 35994296 1021688637 323633895 487411107 1032269972 66942661 150094280 236516298 958656693 938774525 852807368 90887798 450461018 710037026 913818991 409764289 236937193 454272350 116859076 351856394 215592078 337411388 81640978 897253446 977497242 455941267 746270245 955122360 962242583 935572042 1058165045 636827611 314154251 30529548 724453076 312448115 337995307 214553360 227320983 53811134 1061518810 604896701 123744395 997044125 315844894 823418758 710997324 475978982 733429952 34806606 172438571 475389718 153830150 722336005 169466478 769796099 487315697 137488254 104298294 409521064 49765495 744618722 809398485 344033517 452236753 417312693 54536589 562392194 906075275 692185408 817549201 971649628 333077252 691299402 1010153156 694752559 729971975 808253715 1035452220 946412062 882184705 1008779979 66404049 601372001 55142984 482907380 973471521 22307594 68127123 741706456 292338666 575326392 1052639088 139998215 350339871 131617005 1048906189 643873801 929357426 960228739 688566500 404767493 698944993 292159933 822030603 587008470 945213561 615875841 680088531 906783445 538023528 308892439 290059268 667254246 736601016 538700028 48723711 515315151 357555124 780696468 980394795 409254862 846502113 909479331 433247358 381666118 1036312025 534363735 85906664 114209019 1033733481 537812886 254314258 879123538 731499064 968042975 679011505 415293287 481925473 659757805 975409243 678091802 115418063 43159918 74700844 533141188 151245111 951573781 1018748227 346722675 51175765 1072622357 57111563 921416867 1008395505 334343190 247024803 888513686 348279079 326766415 968446029 623478595 76857876 954887501 994447023 449513660 771609958 909304919 1025520581 451238179 228655532 1006766747 503484724 661343121 349027389 671119554 951807175 324558533 1012166193 50794144 1015119325 501015281 500914777 749947307 111928525 996845137 5750886 50011892 26932678 264320588 265929604 563333399 1052158124 241199362 880123034 373203606 828904550 565329944 773550506 912021159 923474382 622071527 168106485 643961106 1006880132 652744270 541435772 886201220 25301157 55637278 369357344 587301860 471900975 997135571 678838562 523737522 1059700835 220107653 993954014 724779353 642418110 562342852 294004466 37053560 12040623 309355263 421458174 445496581 797738045 1028890193 37206701 554889806 563135062 530629422 112195733 86525287 948877997 944398406 675100072 491962919 123258653 308041789 92097927 508383459 569323726 334830025 936313229 235819968 68741602 117949909 279916747 512299577 374474560 870957751 780627286 156391078 165489891 660505963 1027844171 779831176 814355624 998138218 310356702 895693074 133823678 10259667 635887429 149462409 532551722 985799627 974486623 998025480 396786755 259685322 92377509 215844507 768519095 230495643 529037916 989299749 648519693 173927259 41295356 358761750 935656793 861233954 336977322 214793387 993866649 530407285 703912438 694937466 762281557 780731789 38816022 278219278 162792833 567103787 706518440 457252119 48224978 99108958 832921545 152163724 628785861 517712742 702783490 577292306 262390595 848951468 629724181 679448919 606059024 155722147 255539599 563339848 218155953 705698632 322855368 310547277 362331073 235033808 697810583 740978786 554817982 482274355 706453515 561026963 217678216 273120956 109935222 452652741 808309674 139759291 1008498542 303067386 1018748400 192896501 469164030 845953065 138793088 405521652 816942928 664596562 547600818 950314688 570929597 152321004 991680317 230744366 214258801 288172088 487279782 206464868 471212588 666939394 570413829 802243524 967678644 891267115 888284468 704593709 933264594 179323477 631152394 1031277512 632059899 881626247 464810374 208937480 1012748690 302038436 8387736 1046105997 303941456 270671265 725668762 31300462 761082925 554179606 928765267 266518788 210871100 1007353346 1011065885 478264279 1029814765 584615760 790831985 12267807 523711200 359685106 1025407115 55277322 853958278 515892171 248147861 620823134 197014741 536128821 76819131 742607794 23687855 1010646317 66828255 231092692 309354153 447870019 353651242 974405087 341605949 957334793 365341731 366436866 57118829 1013462681 495030492 561268601 192011973 462168309 303136102 86328341 880877620 952273256 744135711 459965192 568320470 461798016 124410289 231280007 289131267 236199059 418068606 965180874 94249701 914877160 922074247 59127190 814621699 465190509 273751954 1038931100 254149986 1071346391 624197667 487612697 701020312 892507551 798199657 365039931 73169429 380354320 252783572 746274812 982633247 809069363 706617613 24088213 437447290 902053280 189851809 364192281 873084266 1049215105 630015664 871607710 330549210 794520651 79704313 1018453090 295830321 885926798 803128302 568255042 356413494 522756676 855588008 611289215 166990230 169528304 193845430 433341708 934686344 9739813 862388555 261815498 1021009890 863333358 624401544 672705365 561130380 125133117 47182114 475660636 313311480 321808486 810738800 683320011 867915310 940794445 7934952 721075628 919681787 1048586433 259547015 976844485 191576192 951241989 862513316 696700150 244624839 425723785 269825922 774208395 744961349 867719677 855949181 967871570 842974402 591405815 288339903 793017514 798714432 210212531 212581730 901728368 976116246 426708574 735216079 512543853 115313312 877266702 175935056 939358191 200318280 1032260917 743116113 534152768 198612614 770847726 954906364 751436379 291316720 166338719 891252437 299028755 657433044 1004861792 962630721 497512578 1020137719 890177909 254834837 260540105 242584032 619156260 520287389 1033117270 921990351 709329428 808105886 596710792 1048309903 946434351 477924858 1009382171 770336885 863185413 547394495 633952157 810231970 521047555 619496488 996467294 143448360 736679339 778218628 911322095 408120619 988985627 617779418 411101959 989198491 815049720 600084138 345704645 884386171 1059262806 21359052 954616142 352997066 1051299437 628318279 126390602 188410944 1013960363 878420198 352312745 651890423 993831314 117989217 935316126 982746775 684110535 340822783 491677833 685065567 87583504 122274501 627106875 610574694 775480852 271027581 450102610 1055044453 409495259 868963138 428215381 317268198 555602488 355926466 287922504 441613129 293192803 1058987995 459744219 567239337 477598587 878349819 508281261 319444470 686448743 308082482 811851875 652011180 684627672 54780339 650873569 772611348 500308785 831898013 726160570 635946192 718261443 262815411 238731605 441734493 258883852 338908012 809172423 669370496 321842624 829020245 302519851 26779398 417192910 1063915089 904897401 597245896 665783838 1070568537 60690653 952350384 495830316 226768411 47421759 537267299 622809942 1013984634 393208234 582693221 593815537 660566127 1042917437 378258498 744800624 499086327 1068008124 285183034 552338322 225846372 821905899 971312013 301308834 216752953 611727612 611822666 978665062 30869138 302154308 494589758 899298578 880660965 156592076 801803822 270634536 563367947 450984503 963869211 1009637571 5729230 554563906 972742064 1069035899 10336226 2683557 85878504 625218843 347106276 1003672913 506822498 1060192116 660958031 346015307 120063196 273823438 535460289 527371864 910887823 806413699 700846771 968124843 480883779 116669834 606715945 680059957 333366911 500664121 1022074782 724974822 1060496826 214129315 882058902 460168677 604482238 1002633959 762000006 1043126347 575268670 304015441 228747883 1026098981 681222012 98606446 642547012 364877884 409331465 233855917 212944243 238189628 336266240 995987752 468977990 865279582 806887419 952577060 910836187 596083179 610314735 860932478 416004267 301628111 125940026 1010440820 270703599 107207056 980064671 278569274 275169466 782702805 490518372 680341141 194131597 894619808 114518536 919550435 45018540 200457651 42501010 1073680448 122231375 1029707532 103393149 715221974 328721888 158802853 153445911 233919141 212931159 638722747 566206629 628350623 195568196 331317138 783444472 475683579 522723952 582160121 968219582 520246421 63702333 429005215 343246108 361773348 214097592 521565295 105458548 93701642 106953397 829441539 614223549 120190273 28086374 399876312 877965138 192182400 33095958 797032923 56366300 752380163 1063167557 464574052 35481759 714813008 408854530 188880139 32003104 362662644 1033001679 68453824 725803052 656745058 93195852 853946403 750047395 848896432 276042536 242594927 325913708 697282211 436775030 196002844 658633977 382148359 855794468 413597548 618774847 426060613 506610861 797587025 23947735 276630780 615362043 123745826 6395417 186228320 435860258 256463883 536284390 443853951 882461511 186928659 849892346 595371515 683650313 508843068 963519878 824514747 670815244 302602244 286046802 906190251 300670153 83109367 908886993 788149494 1020936171 794928282 930885583 10405442 814241749 326400802 903120629 1054539034 372286534 187551687 865240884 130776264 451759579 384345158 652391692 388830065 450707091 426889265 379115836 173466452 14275933 841830656 727109961 120767572 401128455 640355559 608010282 965586745 888893374 545205128 864826445 696494719 822356766 903262134 1009409131 114237289 890855868 824771224 679660627 864007071 1009400027 347538654 2728025 946618887 1002712230 550041707 55762535 813143379 826255360 521842483 236998886 935912868 230671732 534536806 546154928 594943293 654308967 245850061 351189943 459508153 555884149 478662636 1011566988 326937347 948362907 634096341 292070934 480254546 160383258 748735308 475351302 156700936 34641388 566120546 323508480 816611683 36345995 313547740 953066498 122009285 591564494 514427785 901483680 256453453 688700632 991857065 824370742 795416350 499429102 271236392 74570832 986691933 266014141 400537185 115919672 402244532 667125758 328586853 686198913 757690823 935728394 874883485 31053664 644185487 982927685 41520748 993912140 457004178 314701409 1014272359 748073107 662253313 152269710 507312463 47535117 240093427 962950889 954206845 881592543 759399810 131890422 359824542 472092760 779467795 179907028 60334005 117299111 174213773 744470340 1032826637 893807182 1003817886 436573694 621364429 794116394 809910040 1072364250 335524215 14089611 348275151 933166694 710362144 853094503 615359364 534350678 575277705 586772309 936921057 554217078 1009861511 736869836 699722017 254856229 965895695 884939624 576904373 119734445 720609279 326548487 183846004 4729990 391286564 569400628 751165410 462944296 832310876 453910503 155343531 398490181 652637018 458078586 160768563 584479670 17224937 1029588417 564645913 773372677 434609063 596790780 510546946 680918389 739733528 618138441 402071821 166752557 768620984 321749134 86697950 439879151 829607422 270554648 743180082 989801478 364168787 723385610 773787671 540169294 728793656 323123889 574959306 454313029 816329849 608274559 671859797 766664929 605025917 518379287 989914772 261247639 536216258 316440964 244924030 349862943 404372957 853202204 390326386 111826342 902432305 312750343 337703558 847634541 353492905 946737111 607058305 448459750 257578537 579489393 990704390 138631870 99935151 1015151399 153738068 852266986 31997600 632327209 65785792 543148482 844300238 204854855 584516159 989119238 989165858 967405046 970021730 923522717 616687818 696322037 1059767882 342787897 642934701 169210287 401944894 12444471 1020429580 169868635 1025504650 683309792 299173528 1060371323 392202054 651694932 144944149 1020360503 803910142 276509057 1044051595 358245957 272599654 934548641 385031196 152666291 210278691 219291330 400771847 556968226 173922391 711548088 647866208 312056716 124181237 445622136 285896507 397413430 413049486 309548354 30299588 316761826 228304250 887788307 614735156 198993209 349298791 526928588 770164504 681140098 14532626 446801753 859842899 357142820 853905279 1026976390 223956202 970947619 860893707 724570469 290812831 800375961 1059871023 1057745685 621366790 41704154 308861761 507889653 106565951 921282864 646372807 134729492 632667947 291052090 602724667 649424986 732928766 559841415 865033811 1030628820 874440016 189013949 190205433 279276092 164933440 567736557 273735305 574249165 1067166590 301946461 572148217 530081607 720692125 524111313 515148954 602226975 828484775 959552678 707573955 488447771 451104932 545652607 425943338 708229573 819335964 863236665 732673045 899890150 164487662 98954083 202150827 1064203318 346332219 369526133 551466912 283810070 488326327 360207991 637919097 80921060 482902752 662735410 664915516 719722447 138977823 13498528 492048809 534878018 172117542 357211254 597341636 896232878 292658880 622592085 207128895 60831148 222976442 575290840 724609896 593657922 210895015 540861686 838654007 146685419 441059868 932095496 258951352 117590420 290675702 440622898 1063695918 131291555 687275578 595074669 276179771 124381988 769614595 521310826 838860377 276612816 932925561 590611950 354072003 891391274 777508266 518513756 717588527 797687707 509907453 657688112 226721826 614821603 996514396 339413497 201495365 57942042 570684111 410148762 865474969 215472218 1012464677 727588442 510628055 646155817 408546769 940890365 978163039 1001828643 846418889 664525033 957608022 278996487 568065365 132563065 208631565 625947510 566196585 946843273 395877311 792067465 646242140 118917055 272987698 569076343 864357032 1001202763 1031278070 258860083 805747285 408623764 1028780702 509757928 842785532 274942842 598980590 229618261 74810355 1065333482 1059733314 281464488 872780853 864143003 1064313668 93792635 285120789 1055394295 1015320029 280649647 179245368 59109141 443960829 971785285 493671450 620942634 899089142 807388288 803859097 950023884 332464116 320992725 682787405 847308101 1014013021 379421119 752736971 695073652 329491262 308580903 899901361 543558410 295474214 633121575 597428883 768313820 836948083 398833921 661747228 338920342 879612447 1003330515 552300409 806568607 575846515 229741341 466403684 133713032 527973841 438845531 361109643 475529686 950120992 946736280 772899709 915832765 697498212 737523014 712207862 888423216 935224991 305615019 576803190 921058194 981674453 568173443 901542176 939759472 136666384 800649976 833447472 319202489 679003510 915511311 211785527 102111421 1070783703 587231879 811135476 135356086 566350216 997191415 103917945 591277525 288592158 894024104 771885824 47141939 857257967 825270940 956752412 785811772 719184961 315401899 898258967 676042184 946382941 881209423 108975070 535669994 957942065 912863877 1070794175 900239221 387312024 330971911 1039214474 350631946 695761162 12747665 237488346 956217254 780543262 5962063 456462934 6167615 1071253709 895547048 506199605 1072494986 537640197 477680101 724257557 62947429 522890718 643953746 453841996 472895912 847667875 553999635 954389963 628728390 461637429 292029340 478262551 795132180 123688709 870368659 796486888 781094064 755946347 163966321 805616540 367245170 23348861 9988771 936151841 369755894 695151904 376761754 625225494 205763699 913031335 340502239 72598725 878750782 794422155 796351530 131234857 207931944 36118464 454770706 1067224188 375612862 419815750 972197511 204189190 365228147 943422294 570339398 119397644 377163158 642364512 882993595 865224969 588877573 338044002 510896542 1008722086 604283635 390213549 450135031 1054086350 137363122 789896654 743383194 103819450 99275403 227742761 94329789 1048508695 128253096 187675903 11114414 1053370554 978024801 379580246 590564544 575118213 69291512 16573864 801103639 846967861 796500868 227608664 241654995 1038615777 1000454724 981954962 245309698 688864910 771351828 298205969 469073420 108151511 299439118 633112427 573308062 89639329 249487789 750289152 126572694 219373657 425034971 58908563 67078786 805668416 941893132 722321318 804185037 651714022 519932043 145062563 330497712 607897800 826484586 682139817 562715963 974551049 541911179 634090001 438415082 1019868621 1016671992 581129490 351193533 210031066 170092266 229302776 591649840 994775713 157602255 513988341 1006403210 379380891 71161852 1027811515 1011682442 879611252 531766489 414188299 894706953 820190559 192715933 314968993 555145614 1070054634 743790397 228045661 744376379 1037984869 522580737 261213218 277860790 510333906 944936169 115146542 794081311 926213025 375841512 134772305 834886970 649538605 1045931890 661370316 588903493 632040042 759036951 221304083 554144392 794345730 526907481 689261068 616272102 132180647 720337716 1053454694 654921263 924638272 1028699411 748693283 379457279 689122310 452185000 788578263 1037615243 540882232 270385366 573557759 1060064043 983138373 948992496 654898686 949969138 289868434 497510468 290031138 452756817 816066975 471098805 317961678 400261579 503469452 772665007 41030132 220730982 264525856 82213955 232443603 411112472 899639182 49519768 543148607 846049611 525900430 811042633 380933693 787552512 1067555533 920765627 1068407098 588291027 646594183 259492542 897050119 564034462 279485531 291589925 916322270 484430715 227550953 797370293 957129893 491720241 515835080 67987145 996044212 675574258 395856270 509326941 637620804 412875896 8214805 465398342 48381813 891226830 510826122 422035275 511140102 588451780 527678255 527614244 307684742 477935362 381590892 636410049 557238636 355991259 348433333 969028538 401621879 777325856 282375925 915499742 607372077 522588043 680837455 254660194 588520468 233674955 740216898 146149029 79815509 509925002 440133758 595716455 246810158 353908256 155319021 23247599 968311395 865519845 751874569 627995369 956797596 14485883 278359165 618052298 877609280 864951222 660632486 761536355 890940417 931142328 913001415 922929609 397050117 272391651 825080691 866808993 41613081 247282937 429422758 698534345 129395996 242459994 649547254 770311883 298138237 785004489 536823501 50623439 344891640 977566997 852358024 94307092 443614984 356005760 46769021 295609745 227212574 44279871 695532986 407343137 9651151 434003018 64172209 335488925 1058460645 929423048 3154533 971342513 62477434 909102280 941721055 178003632 310220099 17038323 30780712 691153461 1062494302 304014735 396428024 429745387 494887104 608283419 811393895 498414398 549255684 390776223 970141354 112586154 926232649 983670343 292401244 683110142 940737612 552492619 821313263 215046091 714499593 194876403 109539912 951054810 1069952797 571335063 255653918 1062383221 313043950 892078070 923670719 607670642 929714466 669411006 1053132762 374721106 472367447 606200776 82499549 292703089 266757039 417895805 914829691 1059074661 389601400 854932397 685738457 340698011 1034196391 934353130 133855833 198033146 209842164 862261574 294679875 69820531 197166061 785216684 726638649 685232375 559030648 760637632 439247266 400690768 1003763008 757821766 990221341 72831972 455218747 755777127 1052474035 1063593888 814091665 510059655 159746834 93361313 342497778 303349768 240680155 852391883 467771085 229292765 536714517 717696113 345782758 769395234 70142855 306169321 670629443 1053271480 357405320 631806129 111814060 511872754 726260585 96417795 326887357 783069011 886136377 877962460 572334698 524537552 336868044 898571186 988589600 343765381 169113621 196704335 346703388 176021655 203530969 577940889 213777594 423670129 628158349 923358056 399636589 341289914 471216234 859357034 245087925 289874273 80002634 306024208 527679418 287508619 737671712 604439123 444527957 866677091 969514903 1061591976 318361584 517925995 888859273 596776310 27762812 605026883 43146238 49045155 41621907 685497860 191956783 59529358 337865214 1013912993 32630971 3394196 775911244 800267546 490831226 709182452 347497627 836762725 16927672 137695083 260055880 476299124 275434081 661042205 973340733 516507239 645826176 1000270914 755995417 757057298 895257789 839080146 96493135 54918521 493640189 394902019 710340217 571614565 405921545 756879350 886328637 990197805 716742611 194240554 968406021 34478941 14141790 311394446 1052895634 812341808 878268639 891577134 59110283 254703511 204569450 170515906 637168583 467391731 776981467 530109688 509412746 173746892 286145818 713786140 693154712 452580965 677793063 107243167 109118604 340996200 743820270 1046547861 990982699 933582005 317106450 328295466 279796844 763353789 1159174 194641824 611839583 247905220 31601596 383394098 648270150 729374190 104331772 24129544 496197572 357165738 494013202 842256575 978562934 128345006 868305846 870250454 767894915 249920246 346524212 290061983 423249590 55516023 833020626 761438013 706446200 672277904 691522759 1068466733 907761074 94914496 87274572 127813264 79601940 17200104 858760248 1042107853 377434083 876030704 474686871 537147500 783605292 106195747 56423444 862182003 408000918 873217064 658383538 200315497 734834892 339838098 679725906 160680812 272672657 301642207 68642401 402295168 662353758 697912595 152811090 803227945 530853939 382814060 852183533 821306628 834138122 26294190 260847744 1063785732 803064261 608785527 194436397 263910136 558401314 474668910 161295070 1059616268 747385540 803086482 37945837 869332111 482322680 303719872 597728903 399427176 409785280 333006412 792915118 242387986 878229003 251663729 49730962 816825198 439307070 806139122 262126013 559711241 554382404 271743377 745458092 162944062 206414764 672277319 996789922 836401772 401928708 1057505925 135718595 592003847 748853690 1018157963 348512441 541189452 685169928 1053495487 461466288 597356931 833645194 314100235 963708811 831224063 756343334 54797812 817842121 183287755 514857678 670967276 690855192 548749258 903477608 1072751486 937100926 405082751 735022357 656125734 186793199 548399243 1000880452 338037904 695939052 760786598 964611142 933332377 377490210 805758535 168968302 224091449 743089384 380017159 312213208 227528236 956209690 346693257 271246733 464664032 246121121 110355433 361935550 378067233 212839574 982567383 28969922 40536437 492951553 17410038 119869137 717535283 650186425 609489656 962261746 275299503 264240204 207504176 422357138 201027027 68531906 32379843 798602904 840123924 870704963 906816729 750969300 1021662478 97474637 204241654 601924759 734435024 244543833 502342277 647235114 212710473 180514721 398780949 875138293 1027436825 178005163 84535131 431401479 1044608338 909477681 309577752 222499414 878316270 695867261 422498341 701000329 132353973 464511101 576209272 593352433 812706982 723558709 560413229 213064704 241085974 370591415 680207440 867539735 428968532 590225344 756792328 129239641 285553134 1038485755 850259424 231400471 829053054 276671427 514821792 630257366 402107625 315927810 772338949 401480120 169795140 576825378 280944832 877332636 658503147 985179501 1034856863 1050262293 129831188 1032319621 259624822 283903426 786081048 73168793 595714335 987986930 130289961 995986538 1004968044 297166357 312208533 384092933 394452012 107476339 203840586 791158581 422322716 1064428349 796459390 694864260 256281079 785581004 88881213 67074232 159191879 801565753 910009880 237361638 465663620 35076136 479124934 803491459 1049401870 356155058 962504737 235998654 518404734 337803841 1027130836 325114408 553092631 929020302 688376021 419634482 278944168 190787974 1073505552 485733076 148201629 1040897988 804661494 343185535 136833911 844472550 108034688 779183330 752399703 331789678 20612470 718383077 967038574 821871339 579941837 81230843 530538880 380243683 800966231 937807636 435677778 215351307 856206855 90002040 572013556 338357625 803119491 995084696 637040690 62411267 26432365 14148230 4068569 879097101 879956441 445209652 62341463 848338607 98366733 258059533 122147688 99132798 156626036 44560344 111854848 901932394 102671759 1026495265 117571247 943505545 269350489 491959024 1007476278 884034346 302336826 538700928 382222790 532236539 586567813 953746079 524583869 376720250 205012545 1031517718 694153570 417741921 746234505 863562215 204311838 205180176 705710301 982437447 471212428 226541677 584939705 91240363 418283169 369326648 523459404 556354492 1047452171 916132234 545610630 452601562 55645182 747467587 882849211 555983228 25552203 861638408 398308633 556089871 796733951 337335266 704991945 406490246 505211925 498328266 190679663 280173026 8880606 603213841 1047775687 610866006 284925578 1038783031 165069776 449614576 352383393 945607163 525555146 978363157 40343387 325222385 1072852376 142847270 180478099 242605660 211506560 905660133 974575205 672828754 509580994 413263272 1037911775 515474314 681896007 218148501 860612509 653332911 117816462 837679417 92047187 986660395 1004729455 624020917 973939411 1019490353 54099545 491516580 604739549 101613124 184332483 206000719 276173993 806935488 465219741 282327100 513286342 143899700 919492804 594668911 399633937 504241025 417375008 425240764 723264632 282239336 899186667 1655177 36537365 339719137 38404299 198684616 198235731 866114306 161327665 226648483 433453436 388567174 566830169 853275607 865603206 76582367 801640998 572642077 856971938 374202818 199752619 1014493443 969004803 1070897005 441376513 237279070 499002892 536146373 687374399 908567570 836671365 253171017 252599702 600326094 382659869 278491731 225969701 420053417 1038063550 108720087 964334309 842632696 10793731 740650909 1015817328 670964790 74360639 443593311 737395982 383871809 506122598 977241315 927931238 864034523 466002350 260775098 467640137 96587585 774845156 813376004 1050011027 444801744 163684388 539066081 491103595 1037685428 950430881 550235291 545995106 1012102734 400169592 1024803548 421936131 777665247 124182612 506095793 745385122 234920033 95625738 786110470 830546156 98491390 7605210 191304 987091813 878211784 331080770 785795051 224372090 217772925 74090945 277758984 572526702 595802475 914387129 812894168 856715266 14602311 22451534 331788737 827379004 199584105 492216680 95282097 885979830 423483867 513242047 325653385 303275364 481173616 575106092 319954684 14264793 683626806 691113328 853174200 386227636 900481156 821119716 437910548 996031388 1057067957 235052939 937165908 484983851 1047267460 767599770 512843290 628532103 831746778 97246081 389510706 327161978 488452714 146403072 964405183 948960996 1002184703 1062227599 377804071 818508323 261708139 698699575 975331219 1002385902 1013684691 1060312033 958038666 699591849 184246232 641000077 871271004 453781985 1068036719 990105004 1034862058 185277528 830155419 310066676 533920861 34334331 223380423 758325612 836644067 346960318 825994666 269081073 863748778 563346509 200529174 891660486 628506583 340381519 29327402 599389698 663798059 953673670 89199493 547498147 762410730 168358457 408327405 980668869 677380512 937312900 115360226 199759850 687098250 451775217 179215081 764377644 909275934 47705067 725640558 663441144 883496660 247917083 743832376 726780216 918889012 8819718 514566919 882613380 204099816 650256345 770190467 575591596 335055357 158103460 919969903 974229039 609682085 846136791 398631744 424742496 666038934 640953078 398656389 122679330 330298907 690826518 254349431 91910753 333603105 202417157 162644551 948843215 116694210 69246791 296606186 173905499 36473722 34768865 969267884 591747785 762680423 289762879 243948341 810794539 385801491 253704535 512649982 322003 134355316 488513814 671339710 454375692 332168141 400350391 909706332 1021585248 407103010 298731338 387445657 223410151 840520310 838846673 958216744 742727984 445350648 710857012 677894930 359208067 395393733 851072976 278814590 554039488 676896389 1032504601 38541252 94242706 170894628 652652651 621849931 459744565 513112548 615354846 469274749 16833218 221880186 617057595 318102392 551235445 727155785 23774189 139798454 500070597 960650706 1067026846 948729031 777724510 146930538 38271402 657364557 597048799 624454636 283423938 723017664 1015501833 528836562 339485599 81287002 377331611 880399606 761162256 755976780 130107539 614439849 853278797 96598775 207059082 242573731 743577457 823156562 874243636 89442930 177045715 435658743 495842349 448815665 112395448 559500506 460872311 804700892 112930798 697916108 732597881 48604693 226552341 581209298 175886539 919415157 620639063 409322954 785147716 768574772 792468840 458736080 830873541 25393406 880337553 893801707 912780455 244597466 463768037 125906507 266432598 497043173 987194625 482286840 570572286 7430757 769231606 312422530 379039849 719175702 491400961 467187627 395808287 877469641 997370013 1023749843 840146080 965230710 516383817 466069880 866733027 638082456 790544716 957314625 314500291 82306603 686367711 776865198 448529376 670467990 666758970 1026156863 702081756 601504674 814911482 275970215 903752855 241475132 926899414 661178824 512028814 480969217 725783208 999543487 125336711 926486049 608069918 536449674 828916452 965092335 1000845200 885590648 1063687041 225698307 339395973 25134356 301873017 685950739 215746685 814717627 107208461 360039415 23574958 887621142 1038579780 312655049 723858000 181983708 269144460 689614195 1049262082 139444008 1047386855 673892465 971102593 349773025 877968974 867367690 477170813 273891778 357469658 695019045 287588506 1045306549 665825868 1053027848 1058179152 723545342 397682430 232289225 969235796 178212383 174101300 623768290 596096576 775914759 162336965 660785002 890880006 561534117 895953087 487691275 378610356 445873181 454636723 722234313 558904368 404780391 37582884 11501643 524735562 148820958 751368701 883222070 496943651 35815730 501688521 78286147 1023645443 706246335 933013608 1039984138 887999413 638975674 909074884 281568687 402324463 489441920 576951659 710828585 784173189 655412382 474879339 784764028 268443993 189568035 319325638 374155745 812908327 740843806 567998401 975527224 20399843 711038696 784853435 757502013 191667477 719378863 460887305 491103982 835005999 524293726 440509783 102526823 590770651 907116023 147458644 378668046 91594180 278526360 559364609 852475897 243464093 433568785 15514762 937006709 492617457 168600704 769410036 935727574 865478131 65144026 919131851 521770816 1027446520 384501642 519505909 629644198 176776914 513543561 285568819 660117459 784229909 156523993 988915978 549293457 943099548 794015151 672171495 152500691 96308138 663003994 415420152 864313073 230530674 488822327 784724330 686281595 420306544 344889477 650569766 658140233 87248082 790387947 48522648 311313631 316307700 568951086 990380995 928963739 122701022 879902507 541922999 1044024258 212597471 888836128 61044060 460118528 136138965 299728158 779109492 437395716 694371828 992454557 508844844 241214726 907229294 214391487 819088445 135838463 160102983 14719957 891512231 902877620 462459152 153121719 699829022 24772396 627432329 892662471 1051839484 547342046 784903826 25215986 935037160 396397575 627877240 301165986 181627829 304169924 853828472 903949586 803107465 2202070 151604513 259032251 33416390 684551087 127595802 420416436 1062525490 339391900 376814539 73259215 569152127 729229775 38324694 933987367 434002036 199943529 926847599 679521977 795477524 191247940 114601190 985951554 264266688 539382646 549643501 862103725 363352336 1041209668 994111271 266268320 304156227 722220496 1053978685 145088888 210084207 127102070 867379200 869406603 697608729 267902956 281674368 899490474 700844812 962882610 638176406 336631283 930123227 539014968 481034711 6160285 77461167 796755422 97201003 247377837 289463594 79907547 1013680290 77213860 388724570 854775797 880513023 496520963 1069295446 238136822 663578018 714098845 560350362 350057039 72408840 282997193 581092363 909725253 638336068 1035478972 716689380 1068461761 282835410 482720155 267947562 933695280 13477190 246265063 854155445 32351211 987584886 489964762 228886882 885561163 147818554 256469588 530368232 814226625 220978670 298176603 640682085 930368614 378752301 730114122 457809586 939191891 536290020 105406880 716009469 346297189 395014044 1028011240 454726621 455814185 375178986 898861684 64022747 670952066 62868106 356259255 658126874 182999415 263079198 1060661354 344790999 146782898 607628802 674471174 662763223 527475284 873453623 943375589 814215422 749387918 336323321 464013267 1062577380 42354920 199348217 119916211 789197700 97090296 765254383 695078662 674047791 1058230024 1058135136 621119980 195454855 670130207 732719329 412888185 918147513 1069450978 904478455 429012635 7720039 621325951 571488997 991581357 480709313 305684857 302746360 471358727 133433555 669900075 254559338 383715819 672294291 139590537 233585284 377714919 683882189 862899718 530958210 681887942 905868329 245105908 567009029 218491444 634461058 1059184103 937780567 46669605 698604324 329218552 729693419 473271481 1069637912 928159904 883831589 452325467 1064921994 292790947 178367238 497694005 365647585 43327329 377092208 89906969 406305000 728923950 674023247 1067369050 209479636 208495402 449380182 568007258 731972042 527090162 487898790 297555308 1000318105 964127296 831540150 343242628 405528753 842205817 1066904686 367733485 339316188 38323997 547713892 666542453 722365617 719072563 1008412876 972286169 369091011 771461790 483766873 780816239 799941604 1024683057 141800869 788937557 935813788 166435625 1062980348 871387918 137907734 439538206 930870812 37416690 93899257 465569913 853007138 563084008 143491304 690477335 331094954 82907007 673012278 462800180 246598154 104042936 799359305 1014200246 759300485 130316735 1020722440 1007911283 1019830123 983621181 124357158 943022003 622100093 308000951 620166811 168936034 724405560 256851492 851394564 246300467 300239819 284407175 554818192 382186517 571998376 237714595 179390901 857204165 509110640 712390222 720355314 201965676 1051943641 265779901 763849189 518532483 882873920 38513806 264013670 235587214 746698889 709925421 418229880 90494565 632790447 382820927 168595502 91122412 688446345 328647344 475846398 213233600 792810817 582407671 223912294 1018793869 530089966 208416844 966570386 928449595 631413239 53224285 685639766 26804169 353509347 903285162 486963093 702036626 886988576 160946167 839167235 929256 465112117 81320457 285691089 620112798 981920110 224471640 591273398 336021963 805139816 955671272 119430636 403343683 962396509 502065359 820112822 5073278 513551420 406691753 116278821 913762178 720755888 92754466 682745475 898840905 367015656 774602058 592011741 409118263 409285478 287833431 448133971 1047329605 100720390 1050529554 247942006 673211127 753694619 197212040 2468721 381812688 278666493 404833246 254164558 799708071 310586160 185476362 1017499000 271981343 277993788 470110360 932313827 410495423 20287450 576595053 337046340 108264161 717165632 860160381 307005102 1004437949 58499080 280340298 695043507 1031405318 814924524 355807283 461273141 569941313 160437164 779219133 219403988 602041152 495502884 126397259 1037193074 603983081 199100518 987026294 141454703 580846776 212255750 836461781 629364709 286243330 817028836 75048384 662731645 850648164 54661679 529605817 859743260 137455118 1067207036 617418139 1007093275 293809396 312220672 148961748 218958176 366509652 393855524 75569835 57989872 927328928 740729603 345962831 810005895 1016437766 27109973 740499984 168515725 898645260 590752314 108912415 444624605 283023817 1051165365 721057952 72323340 813833307 544915300 776045486 426868398 930956078 71792657 607854067 531679915 127438510 239950573 852038504 460317526 797296804 790049529 296469908 1001481751 287012149 764511723 454540385 920985271 1015109562 124909170 220660887 991358435 975773498 597009405 806864621 1012918983 918365320 208241036 18807853 534302319 568196600 571310254 454302366 1054473954 1069038648 746816673 664422417 550281401 980442806 824359920 690530082 662584663 246622311 58223556 228365123 366624908 606200433 843432140 1002954976 492498538 548333487 353630494 1007705002 616645158 711392835 998520509 403590782 747404442 78531200 331695973 533650422 313559128 854711284 355004097 208341651 605861154 778019917 135185233 969791100 31608825 451690713 287739679 922750782 1062463264 406297617 696335874 290967039 324450564 101227359 1009017701 801214958 481479643 415819330 406706529 644009330 689000766 36316005 569039261 385657765 430228831 72171831 531790009 654135584 8321330 1039125047 674582440 113611427 655705195 926413747 1070593135 539571808 676726496 518771766 449651579 1067108626 1069429271 513693206 104767989 616654873 194925380 756929621 705466181 580171381 156728834 199331125 851011862 369963883 840795759 87038532 355175585 402877608 1071629218 431074313 742632793 315989364 855828284 701286741 312403269 101326276 494056832 577671924 601435090 672722059 17656320 99741520 126080054 989874332 331579098 256706690 738388668 485116335 453654315 852416921 567114932 36901950 950153479 532947554 297687599 576094454 945355001 809439049 826742608 109421548 900320807 414951041 216267622 1005491080 795499302 668449568 944223325 514192269 388729063 666449065 764569959 868904788 931457282 274672858 403921030 969113472 724383453 1022848567 936498515 622115868 468744454 483786908 973430367 782508745 1019652445 26596305 837428438 425564332 943050763 294940933 737589439 341125951 614642393 291022375 526664115 374368386 106632908 333945882 530960875 523652096 1063466971 432496940 246790006 325369385 266917985 578650596 756475523 777185835 590183793 851043250 338161182 308201438 853768231 8395670 59841541 207558773 436211328 550926582 262067316 311550471 1032409016 59353654 576523383 355734869 217347278 61516651 480837159 75310716 418825465 281937526 247280919 8665746 279379719 806182099 984650633 120483946 932155530 461315811 645488806 308366713 673677123 839381985 854216017 438409640 1008291476 423595981 305976704 935219308 1035418776 11887328 568799949 101627379 1029368739 836559099 195551867 777413616 31506726 788116970 428487703 175554924 247637104 35703229 848230576 125268112 79412038 92360383 100944047 983783748 795830065 221640260 494208572 345023915 639236374 728316800 555958667 749292981 757969884 624651520 682831819 527526385 194530524 701127967 840501938 130986619 392788385 421270537 852835916 52139984 813320770 329506888 225083182 869522662 479994360 617963710 19730386 58488244 295869969 450799280 545408545 377718514 136541822 46708130 40383371 963920934 528108104 155088675 662455457 809307587 763560546 519250713 974746571 10817283 227459402 192904283 686171938 969829259 972030686 769456548 596596647 109660976 668639519 922253977 900932521 786249920 1052935427 109044060 676923207 227184783 1213276 498325321 20844667 19173634 517543257 445072904 1054690960 748181994 673196848 606240374 53705797 941176481 341718330 97621292 391158712 632697160 776256312 559294924 812491497 149975516 115568701 836993616 539338719 864908448 248534624 355154540 1020234360 223935343 199431843 545972588 1001008412 834061866 799269477 411226393 746305170 519459912 763736953 545874179 870110627 394815845 327607920 995670088 899746782 479505689 889105590 290353624 485958603 877162147 538237184 1007636833 1037836504 362110963 707447993 731008049 999078599 72811706 628478336 298947989 140872138 533310634 702504624 707960592 556753532 306685086 843033132 145734870 143158197 320326631 603862404 91826678 617605371 744870599 226263258 1006878565 760929663 597955044 852834410 411613299 313895881 6541563 591552729 148001583 760081747 626807397 697437440 767565608 951590065 59274465 1001382403 650664766 711640216 803676604 403258522 802576488 1015489692 373504726 54461239 518438010 166417627 929686404 376680437 999844340 409498301 233520790 688911751 512701575 872069632 275355128 266347566 530742350 658378684 321871140 924343655 314981640 256101111 580697801 160800143 254552596 677822896 480501870 388756899 109164780 460947606 361461008 296659931 651226880 904797393 322251324 212132930 1025568619 516926397 356155240 632847646 390228608 329851071 703990170 984160100 592889742 297005814 549254529 382696742 1003968934 395459664 879004091 1026466007 683620993 116559153 508509298 941813793 638001313 976044453 884445403 255260349 290207376 1054206743 993833189 692800669 508162560 317557826 760520193 1066224576 773677550 276822157 247763379 340803480 852488907 481257822 801566129 739467770 692257854 153666396 984493947 312570935 230000269 692556273 1035180721 205809165 511325040 681083602 759425225 923606539 230075158 277683556 814296403 468174262 404250890 139525344 795810171 35803213 610857479 211174767 108707414 44496626 359723554 106722116 704209856 706392101 457481053 472269224 423878361 206046317 648483550 701811901 798615367 672486269 342171901 362011322 775877994 696303808 320686343 574095721 1013263599 732174594 231065657 342740473 898823397 344954079 394224859 154125429 980348366 933896157 71253431 165578443 4139133 280889064 245884994 794995907 197476755 168797293 129305607 421851806 343813427 365695547 897954703 197174563 333479906 873442801 932237352 968969843 899960440 137215636 916480957 448578315 635233322 732114959 410493161 307892139 365484466 670335498 746567197 758297485 899171112 759002871 183170642 678980915 518965169 1065530890 355867345 925692189 390284999 483006804 1040653018 345877187 393488053 428184946 491837446 438953810 950986726 728845846 513529615 334763373 546152851 1063861538 713700923 767890886 520442985 75877897 485134564 714520293 199264666 433782880 350828945 566577771 201427161 633714504 61808735 171232705 443709138 554079292 830682974 622607300 300663982 290735614 212030454 864922753 203202640 560951596 468526749 461857040 660600927 297604869 600904528 297786957 847222809 1001178034 928652850 741674704 491564491 880576928 41311506 533311583 989676863 599073895 609449303 618957557 21167079 818264644 888158811 73103153 371867045 716377662 75083558 982986012 243659002 522046862 304807141 71866408 119686521 1021462715 1034631094 472228754 234236743 516588801 188010039 454048313 729270417 451146197 593035573 353295445 188086635 187963745 338827767 942210240 179342642 160207227 603032986 544690987 369805590 674601149 889964294 945177887 515167139 90839356 963379854 167120347 235129968 401574293 295919114 900989989 789542733 480803469 662699058 28585160 75480809 320516633 680084269 459849906 1027841493 530705460 918863310 245835852 556447012 652509028 954574669 878794180 251532492 605722474 108643505 1043365039 783809637 563631609 31931583 951972378 828280033 850288723 801047283 312467894 400128600 579709053 928396678 8405775 774888860 462529788 336100607 1017711189 893168901 517339261 493825535 531391394 471279407 351802771 1017781014 423914491 240369872 616455991 750125885 131524964 893394500 895730075 687234375 371971647 737323266 510659353 713448148 919327866 771930174 77339598 395116405 734873901 806530331 623669681 490741348 475901119 403703773 741184197 738900373 441141931 664738052 384628319 427665510 861536084 871523976 811221703 726612205 24687615 38446915 1022741401 821888881 75719594 782684693 1036279939 98418299 344058873 800009713 273019122 348530732 763326035 167429278 672620596 726085965 626638871 19376777 736883090 249699377 253343664 436116071 351170180 760998380 16069336 166996571 586172186 944304119 577009123 417407788 509025674 713210850 115803961 1042125081 1054954457 708844823 871976267 724085510 749857327 27939622 47785448 414964054 746425051 792005731 752370168 26888362 748524325 386823592 237820588 1063003516 786287577 366661059 237720984 125541888 1036623681 389092157 672338679 265252879 790579348 1051357185 374728636 308190268 113524868 272067778 787258897 43936896 319332998 168857250 343446603 923106820 807267159 15369377 783102765 957614142 69385592 6580593 440626602 73680482 437143046 249389938 600460189 356527936 704280858 770483112 910308922 370890470 824917094 988188989 400614734 829785416 612240489 92178080 906833202 367795652 880913100 181198659 248320759 731208568 277834139 248495346 612739707 844291564 274021930 1004850129 452392911 196969148 1063829320 573068787 376202719 782765079 100837763 185244157 789151173 800661574 439014852 39660037 487220265 439305775 226079003 762162009 391121295 1012825606 403709714 229467387 377933421 61984123 529682147 1061753992 792721749 745907543 364493945 49938776 446897019 351475594 29060954 573247169 545265379 196413694 1014047597 840458593 92292304 860013071 638897749 232829722 396033918 667482585 771071407 252199784 208241249 278084708 597908904 981740739 878089634 494911223 327749562 781685758 429119815 597896523 10047578 426717027 861355659 781496848 978676 913968865 732674443 590194863 292261048 504391399 985104904 518709301 644147942 123103810 951710803 746586249 114754353 219459485 210393626 496657871 40871054 232509653 461024619 190098463 646723185 96470109 673541559 535810456 606741924 467805245 704657500 29108235 141456527 136864633 829503155 400248700 883030800 134511418 268011422 388908383 991256328 881267108 266323408 879652812 560892733 232649094 792395074 642114162 1009975749 302749203 144565563 486742377 432124370 866125293 937050248 676676917 604243590 606850853 185479526 435797663 381079741 925380714 785797719 1013298713 694549726 656224179 1031103713 862361636 475775432 512112856 627451081 695832224 519884990 398431356 546112401 490114921 161793472 813657533 852350769 239938528 9116174 1067664129 205918424 76495113 810533285 386624227 1017286973 511816340 902004491 485250998 338631 909338722 79846166 607470483 786386324 983388704 730797658 116067659 766751899 214541458 89903874 56302032 889743411 229433256 757503404 252253777 485484817 777138088 553965685 547515348 271999860 265614453 421422900 198193962 909700299 254604297 803760061 6756113 994467355 1022896916 474910866 960018253 194367849 609716826 856683676 332875416 975535046 708420435 778170786 44597651 537262229 131942310 634399600 758913188 255648302 915746929 89562593 755084088 908043939 324243485 580502956 121302561 364839377 352658531 689125760 90845921 926842865 236708740 1068618212 792074868 475904758 974772134 779260299 131885945 659093179 858331740 357339615 206301505 25152066 1041933093 244102173 98568588 141862561 433031047 109218474 870524852 700741133 763167810 868483677 269559633 726422334 819737152 206289363 338617731 879087371 237213350 760559673 226726736 705644686 928181697 802751593 79846272 140245605 757220316 406851793 315923887 562402784 237647002 636966806 209543178 836184798 753863950 556861592 1066481265 15928506 692330610 798781857 1039112091 206289674 190945664 403053552 862423523 748544027 518297474 582887766 647582357 235772974 164240301 811884681 141631222 679216702 1233952 576565896 810101577 796902014 105009399 936377823 444961010 381566111 245837803 499881966 540859615 973965197 47403987 339446936 832781890 911774698 1016282907 769233642 649670018 452127823 655673007 584296018 209894503 967241055 101238430 946072729 933889218 682868419 634914681 263138286 232348122 476512363 982376338 534850038 372594070 994747785 224822752 841574075 679529866 46006269 32704183 51352978 4642739 108289991 544535696 64425349 236825734 665052511 538719940 1045368695 848042343 550543562 480681447 422918945 297209780 887423826 514888200 368995372 321856141 233475157 258401490 113379611 38378956 380975826 598819382 455094097 785961766 155279897 741593415 402924791 721109968 487259237 694896739 703112209 559036021 116185951 498098651 861226233 137179266 456273525 573216124 154731925 582604978 801104372 945434707 161138326 597345178 288643703 390228644 764033221 348583737 128033894 494978965 547631527 449274474 266794268 904362689 542403905 764716030 283122881 616579023 835207732 540361831 556246721 118579907 98122227 877604369 584273485 209469559 1025988456 603744927 957065135 223905816 1060093045 400852813 612248180 575327855 480207456 695139792 258682317 958827305 159128366 332171256 946672694 903933312 104921742 166312125 254661237 1064083189 923509961 131861862 340842262 153940601 945094476 272731660 853108037 789551672 509047893 315379742 590621095 21001846 818487123 359409560 579045024 777897705 5942856 852342442 216522274 873740786 545615334 51672329 19408771 1032658670 793128630 950475089 351805107 919199822 858374902 889101640 953921173 467057623 867921768 959668837 290576891 496312049 384028594 126380490 772689035 474271822 416280045 207707124 52529707 588610600 971814690 119491897 606592626 619943655 922300539 490257766 424098530 354421923 596541307 722020748 486981621 516257904 149371849 193241624 367904380 353708088 446305315 578845538 980429655 256715203 1023565562 333119703 562088670 1024074137 165809277 771028909 1031197551 384733095 52030429 638179899 457802203 271612587 511045430 22373732 550777575 83835846 216038132 616361854 950141552 619586641 22875771 1016357586 739498601 743602977 1003984797 99776326 300617300 325622647 466702569 441209017 46295501 794572553 337636503 814269817 47230280 226488835 353198807 121761003 671784362 542329448 711597281 850250591 436730908 1055440192 1045637919 900512410 741689269 551179951 260847683 735363917 296523658 636112641 137777016 588186204 132309953 1073200267 1879564 264725572 666005210 471602830 528475530 209399377 825258169 279627613 469125846 796538841 208779747 841249852 148239338 136609902 678400415 850382011 318411514 268220505 208991894 153426706 812566887 716105761 458995467 44144430 270373872 565173925 65176421 29358612 105079577 59645309 714837371 619016148 556933687 841144108 10027560 705702296 981622855 288128342 546154343 1036977370 1019850173 748083680 12448881 669476307 226464795 672209552 862147197 316669875 213404327 466925271 697338441 305501077 741384714 228985132 547273109 756463710 206366146 634846135 121715115 887326346 128814815 104741805 194897694 1064584070 240074106 874487099 420966148 650289823 217310017 252187627 833179278 5239727 302109194 1064037605 871242737 938479360 520334166 244874078 55763814 625799263 243755375 423662405 614230719 684675988 1055835531 515619744 125885360 898629056 492856593 19414642 718911576 434033549 762728251 114207441 834059784 879589351 1062834608 480116826 489567302 1049189893 1057420834 226327986 308872188 610582409 27704670 136339785 382476131 633800567 12030298 650755849 868507802 775773181 156889254 265664070 243556068 247358510 156444996 776644041 337405157 534518627 799655202 822241717 924017112 820533060 71527208 991660928 386054285 207513451 391008199 255797138 113329860 694796204 628158715 538668262 557473237 402499418 41907321 429685837 139677215 491170591 14693732 556859280 868002128 532478687 97584847 977694545 214068304 86318463 1028973274 657556737 17125065 457252226 720542021 856207414 684977309 728534462 47042248 950456003 861679274 225415741 1002652289 397513401 721725345 669157174 231787587 110742702 694012914 103463188 479682378 655699422 211359062 632189394 708090655 831896715 501312598 636856711 351794212 866912245 913459252 180360331 839674372 218148549 531466856 229342347 1022738127 599351252 795735143 764349460 63285062 175583770 41098887 1001056451 127621441 149530699 102464673 396023734 823518196 906250664 292831703 755029251 513420129 846414483 158066316 1063643293 1024330010 616859310 65462492 908480460 271202651 267938832 487024812 893563757 756599178 121860737 760218008 39024590 268300748 2394220 107640995 539492475 304027658 734770371 952447256 827140030 168630012 568468466 151556342 30776397 954962663 152655774 529533795 1060215286 340333763 1010342993 286844684 75294420 414598097 651839442 528626279 142170741 255771707 376044495 926478549 824482875 541506257 101001118 964069667 770715115 429811295 256560407 1066682313 790562319 986493787 931954511 598956864 657182544 711247914 749662103 1001951024 606727005 314372193 605355202 912492598 766239973 489883296 455619108 727499293 815872181 764811049 405704512 852065670 32704368 664123311 833271555 443087676 626184550 358986404 563109081 934839397 546162246 689373588 560694189 1032804655 638282947 898831893 598628950 171678715 328540318 686800669 883162228 101041764 120369501 223504582 803774417 985584328 74550305 85510858 521235856 55472277 178416186 951637599 985812280 135818636 678119961 657774002 337876647 449605438 571697800 642168443 697620434 618616291 480468350 832113558 912150871 803938249 192735453 886015308 35592093 950542537 58134013 151486554 454781839 112695330 464407666 854923914 1000562843 202868584 817940228 503412699 297785157 150472994 3853325 553702057 667193797 834586658 647717027 592785768 444598258 689148817 206898689 184187653 363319096 53107249 980313380 575863541 496092927 139214797 525933070 143140170 824700661 296077487 409211172 67964365 815406348 839375845 933242852 512691974 244070118 181365268 914531654 463684394 1037073825 535820002 969137500 691292552 277858244 510220539 985363790 103980953 951079495 647933752 209401549 829749736 348248418 545748741 1023801505 452606668 452401639 1049530448 508793385 280670083 414125400 965014087 181339014 750469374 1031400100 827975155 458915390 1059228552 500658715 10069205 369030356 620911966 859279651 824949811 967765253 804235571 148641214 610114832 917087528 1011399032 440013269 507092593 1053480619 771674949 968665372 82361289 546344950 456765524 992348343 861209450 15059091 63422014 383619490 503688369 1026831922 635250531 407871781 394931135 255640016 944747426 265957560 313255097 499811523 501523952 667613797 324137378 1037280805 672918215 854870108 84321783 171797551 188578337 1016045235 289144798 716344474 309965535 87677710 425233158 263286478 784262596 1065949736 832551226 209222998 248919143 719112061 43214729 970825647 865571062 267072963 322380905 16300919 293502145 438711107 916207382 495203187 630671041 1010249959 660647138 448293159 336487634 480005440 570967507 13723673 701609732 753528666 939549537 137615903 9575036 916041709 960867295 526621346 875770158 966447892 889450440 713020564 89944999 497750546 692877176 1006200356 868522638 943728816 164591469 680188339 984725106 164365355 302501171 543774537 958085115 318619574 586242861 272634733 707235794 203854232 805988895 444839766 292423365 844482229 78864492 506443324 179813879 264311225 70807513 768223818 922227483 497313731 125678515 539416646 427739030 234339752 464715040 1016578294 368493476 593992473 763846763 160556690 101267919 735149923 430788418 542417832 1016427824 382372954 512307398 743514939 654459458 177650519 540257080 476799466 313044988 824421700 251437682 883835912 557289113 923270237 657047605 91321143 964350687 197983120 45800194 966682274 302542438 931876103 90088168 1055264891 566451534 659962375 295638323 139430596 25941108 1063035781 780314102 47239441 332117413 815944300 455697977 152881120 762761920 150973739 242439533 765811016 212114737 984605237 460675940 15600870 113942801 131345911 183443095 412527633 849736170 348631445 601249557 895889770 1030902237 473867658 711467038 38660468 294371650 311704789 164238894 143765759 223678949 174283925 684288818 676450325 590912227 296714626 360993856 641053995 628026711 464435526 911890050 178755576 189890940 809590086 1045892481 425587724 899477529 618606852 302919695 3469346 734271756 921421346 267579104 215153886 744858798 96510485 367240907 772240721 1054243388 557631063 833238848 968843496 1028615441 414104208 452040536 715529017 102949720 797361120 428149431 103273231 309711724 346819118 646142727 107531093 967468889 890580969 110499537 310340573 750333152 716369993 699428750 477777427 863699356 515225457 419821721 91754619 489317413 249607575 440412690 754750096 153597917 115763070 461445168 599872330 203710282 836674996 705530447 547313247 58606534 789485612 516969002 1053546031 575206090 138404823 479673120 276965260 372201722 532307005 382664959 167351459 514265237 995277814 56346996 1013097326 346462761 739024430 985847703 834058372 961584868 196596098 657984260 789336709 843354474 645162470 603182216 576899352 41806548 629701951 894380535 570761797 802171453 839450940 857436429 57411045 386751082 970590160 675552741 101242917 544769383 810397106 67631067 341645113 877813330 475615749 178760772 1038120021 516528934 462544829 1053820064 901390149 54853631 638197443 5725402 108109913 160294291 751485397 573599895 961507604 892665594 954103667 335245134 578594391 648635276 437159254 325988213 645860145 295669661 122542624 308752826 893856619 959465491 726973982 199862221 621356925 443457693 527008107 736586806 177448469 741084624 588052300 234761332 120289238 1018329787 1064182960 958425630 603366492 212675399 586648723 825478525 634773028 56616712 545044102 644673047 625651977 40955875 124514797 261678982 84000043 676570413 92718753 249232357 1022553220 591821917 744265369 318418341 423781879 399111116 856831222 541109331 1032530629 476006830 76948655 834353954 136588900 1041950537 924858041 48372453 218878313 321021133 493423477 64645501 411463304 344479364 1034604040 387867083 462310777 828249645 905473870 347779867 275935572 507041517 953460872 691399467 57464396 917717296 88281377 627279662 633784544 824504577 791084994 638869015 387600946 592640139 496957697 887496771 191645219 1050510614 727935919 59314126 610394437 710729711 1047457961 998563609 679490835 925704729 723477848 609672286 1008589166 591562290 1070472717 291078316 453932823 898587065 611914098 565571837 235667423 475876480 851877974 463367870 231362096 508245632 330903055 276644149 873381742 621062263 738384071 672820729 244829444 194886786 724752050 19397267 947841856 163513837 342346268 886563739 982152239 44455467 400578038 307775420 862236336 370650204 163637592 397034546 745417949 173136365 938955999 792029855 39712587 121868576 777871368 66587149 638256381 610951720 253320097 982199533 702279952 530277324 305627016 577691699 892288503 431029712 587967897 1071442055 804086556 928801984 521660120 832779436 637304251 657142610 867318737 842170685 223124558 54389372 130723368 148291769 446690328 725276181 444889593 532198190 827742996 425300704 9281179 650705671 942395246 903443734 163956442 490843418 373453880 280118539 688111031 603945351 695107693 444302678 543255733 469716978 551998860 916694129 382240249 425672488 753299230 824509708 276310941 599394942 886524820 652449852 396038484 944424502 412450308 537387905 635181092 1058094053 477003347 600249275 970514002 483557018 323565634 947280571 135413487 154756316 834517487 524972747 106923641 141248862 784312131 940933578 231128448 1051590787 580139958 217061098 278516269 760243669 1052627144 46666892 910113708 904839013 644017639 703808840 386965533 32005043 276299124 125072103 790565402 362449272 124421469 354300512 742147321 970376019 431420187 717477122 707578760 428261572 356757625 584770946 735768247 217614846 417811092 266356799 380104342 211449226 384327377 132105047 366670010 1027264823 763384241 294697234 430716007 315937817 824426389 672274944 808722188 61089870 191915031 944603226 477828157 469270091 527810753 657601019 257984793 75332753 995671928 102094825 277633051 494019000 320487449 428093211 701042909 13846309 1001737620 789441432 622283225 200213334 324508466 622872172 932610967 3937437 1018910897 179172525 1597215 246679764 184856124 381034528 1053820227 870236883 1005748768 986761247 437243797 575584305 977539928 50182045 1037938369 795870813 1068624946 381269064 824766791 368577336 904060223 680799193 904254599 913879293 54150791 967195051 669755347 51417213 908639084 38486378 834572540 775080253 685489523 956462779 1063363195 124446976 931037698 389155598 1026923145 342149239 232425859 678584794 174972889 164966494 326779438 784026969 574437473 823503637 537712956 749088105 811847688 349291982 250893561 107323331 116826924 414892505 1022821915 307580960 493500366 420216739 783413212 1026745016 151290227 289266297 915209219 40783836 191646639 293027075 283642559 714161965 793587813 1057226924 617730630 226191841 920665254 886112620 488350500 579863802 669643258 644779233 238526498 555980400 591472201 547808797 177844788 7842045 1061779760 1013775547 547747273 676427824 88827472 162607332 565850474 681397596 744262279 726057551 819987297 950135920 302715075 603169973 706913825 748991439 411955430 624313943 813086340 745588008 545737482 721244765 157371100 326295796 491785755 490735851 849061389 1061096555 728832128 902807502 1033217179 320200618 1043187817 990402262 10627232 972045459 146247435 549040785 788069195 617674235 1004081705 577091013 900141183 229298261 643486434 1006730667 62339816 729421624 221334490 378569984 701193248 684528811 818927507 448548135 85745643 970804980 713818423 1008755833 530371563 506011669 919376601 213078096 916660580 65836950 551522645 360738711 1046337407 1056229546 173219162 1067224147 911194021 364668952 190642955 548053690 853167914 574938166 317577621 779109116 222638431 699338889 38689899 437351083 1043393738 1059956306 553043291 800430103 992554269 696869684 102111265 191764343 57596119 242091636 657067767 852763923 44740529 839747280 346151622 815960722 365087706 883902114 174852657 255798834 593592161 466164898 734749056 557842248 826859219 838657954 184701375 834176661 393090636 763961198 477325392 628432267 994839701 710052279 738083656 619039345 709073691 959651159 822766073 526398091 154651248 65082125 5360922 1028035487 760588829 94621140 917390255 924950084 79275024 434009356 733603189 563140053 364796818 1006833493 744944636 1001669413 320809596 517645535 473303769 107059218 179691383 994654743 745699803 477674340 904999498 550865456 293087873 570009562 337883927 1072900070 103341023 826435514 362060662 1070418698 557853025 315954881 301442433 358341691 260727725 757155390 817098522 843441887 878891080 439090932 296829799 46350749 824704824 22909200 914338242 194130549 573497547 515908193 263972260 995255305 141653720 536360083 998446999 451281706 892152614 232623669 79644737 775078335 696593170 306340253 701419431 445630366 852723136 214952736 83508720 257903952 159049595 90504627 985363432 590789058 1000071937 517105926 800020724 344076671 881629222 793448142 249108414 31445492 322713128 720192850 1046447936 1020743591 511251203 455144731 94705 913902799 537564202 572592955 740653371 573549706 376571804 227067840 759570538 67332396 129624756 346598103 189257309 812604943 849413673 307580138 927612356 569078603 1035376469 1072505562 21195400 673185189 469478473 1053375633 889196538 552628085 287490240 474087103 849356218 696275359 116117531 635662004 1068975036 114959523 566185728 530789571 681662086 165674319 613211870 169815248 301900222 613800090 339688316 231566524 891146130 218205574 894229595 1046586913 598900846 82048867 480016560 231028452 201049182 342198314 862724527 414822020 921425444 225504761 1070193337 42632108 816316936 6778842 209101939 372837301 961124717 857962217 291218425 184830627 281714092 238742651 836496134 475031120 683316032 74280673 22703795 21356048 420707446 660351990 332086686 11820518 433487286 617322178 991249515 1039654203 994635939 262035966 222062404 1073302907 857401580 369618020 963683981 640509174 861029405 735654511 1068518922 157648979 385666312 278829351 689066359 393099434 396877074 913897693 419883790 516665123 575062292 891905103 978181995 246247546 880701119 513062288 259961875 856392525 1070221362 724189482 1016952878 306539520 446817375 855889922 532843892 495036691 851871527 681990462 772976136 715889539 716097065 174636998 162035070 863229541 743367509 130255703 591270031 514087907 558301166 887863060 757746604 244400598 444276316 510652397 436797030 186119068 746506171 91870143 247874306 266178389 836926633 360325422 404789438 532745088 304158552 220982226 541310973 152660506 722037596 18563265 1027020658 777673241 873072258 655668386 141524798 7669637 279985835 360842904 830591847 688055755 810192342 955125302 104998673 532629446 890338157 948830033 911685784 779346841 656095969 1039609018 318906456 32429622 1021308342 335134752 974393864 361854974 437923968 907518586 1014815498 246257007 896726504 421658698 980691183 216388583 886670770 395930662 375827310 401308926 1011769922 844954814 72689810 603255977 345340237 871917615 99679294 33134336 387719626 950537973 997548360 875083074 443676328 429541103 870775790 32636927 764643516 158484165 748898512 368410265 922781430 341071084 283517939 24141731 260927182 719831803 454511820 904799127 685355590 50186657 894493697 828813783 325839598 998828921 822612071 30366248 877825737 1010662432 840946923 1050087124 545159676 644292954 998723371 909591958 228876261 349148498 1067762966 788452865 584197968 454908063 673157160 969076128 793405270 441582332 417653133 579470704 820893898 260116480 322764263 472176451 685314483 192190098 862046693 1066068902 617265960 679106727 746119494 844259406 182661206 639933121 1069665243 679635021 712308906 450202121 106166780 499025889 524683686 522897511 475554351 38036656 959397664 94633628 510270078 838109148 201010758 848937466 584274578 968994667 533533787 386402391 546769565 482100309 302607583 119209693 623223365 87234346 44134074 745630671 875805553 145056451 828774200 580898558 409466679 904501406 730048142 921142685 197170 261266452 23555761 403087652 971339865 564368255 536724968 422213319 432745123 1065283056 302238219 158476448 223372517 489052077 824782421 896942426 680774371 80779297 967055459 25039835 788003946 715245775 653629257 737993799 961234942 521874576 468764684 720601766 347225604 1002289819 418806799 939389982 827946795 96875672 903659686 1035865756 706241079 882915318 583277473 306860789 761864662 1040061499 246420429 795303017 325788411 362904594 352194574 552189784 946615915 736314735 922440055 484268404 567698159 692243156 889376399 770400538 877777329 528166379 700331524 623963767 905316733 53805298 20762732 982197671 626796904 1035306785 878022464 860019364 829388263 335173744 16419678 737495469 541074069 588631932 434918432 339679438 641908490 558511181 572943105 850897930 661414552 874960405 794499660 655718800 952035627 132086438 409427012 14114906 163009559 868164914 757046791 841817621 995128854 188283882 576517737 298643002 3948283 277037401 859623499 20063642 1059863320 420302061 177820494 523189500 425833835 459550281 795268632 1049423662 670945962 753938333 966729190 593721523 453732924 481678978 855492301 62126253 330376674 551457585 965190337 898471941 202152993 288981455 586903608 720147078 380017298 632532184 872679148 815868714 1056707733 364852550 179221109 437799713 1015081863 304508849 23748507 945450934 338080697 88332936 560936150 67101074 552093473 205365020 73641313 508247638 377860386 942940655 867370795 435107715 753732829 891379262 303171485 313926219 90154710 353841929 34324526 897040487 867263067 706085619 115353866 1012871121 1056342171 488232837 487667828 948627091 41155735 906192437 632002647 717773023 448889224 932417094 1027884154 1016864210 713425065 529987349 691711963 102485733 726546831 1044685668 959279167 771303143 442711785 935075164 1033814145 867969111 331293761 529458658 200358814 820872637 207244278 88970611 930854325 1001118244 974499098 103685321 635080859 541668724 194285182 234220969 542397748 427680183 349291450 778466921 149838948 979900076 1005416926 1022971040 391537740 146303412 215958173 830831478 685499320 20739616 988180956 568684595 33189267 410539541 201055494 285417454 572949504 1023447204 376742646 303252375 145464223 970912964 345965550 412521362 977793777 539176636 965409707 720830724 1033316769 853995104 191357530 22787462 944032819 109992447 27480556 969184966 839611076 181373109 770705119 997058160 226317172 1067490431 191093019 939277096 488900162 300957508 292690369 516201513 555732695 451845975 215291063 487482844 307098127 640559449 278561781 187659590 950518152 242192581 932870194 997448102 651490630 237873941 125660611 270401034 118239451 205350075 620380365 461201589 23748228 981106965 576089573 669045559 990704405 644895403 292091974 845207960 1066549136 936451558 502279383 144351276 407998354 392232069 165102833 89735457 577878975 256467954 920472352 901398794 201051125 379353992 833598339 774548822 494114721 954188479 67337821 664387667 318053318 177401064 977254640 934946943 555765541 390359793 958693213 884053649 63686262 751150786 234009605 121391748 108356159 1070876482 387264671 946942622 365635666 678800103 106540485 170989528 845332119 820527513 267614734 827616144 941705240 308412976 227024576 678050326 737873586 227900306 652541932 264857347 525512355 110637973 653901325 56818566 996039036 148486894 709994155 670699131 1011309376 1073533779 1016079860 772267224 207976386 406873346 149442556 260667772 190124304 505640387 12462397 1056307302 400325678 288622192 924183220 314565257 600383501 746043543 551611813 404835470 290188109 1001744367 749155300 420743553 649260226 496567624 1016567478 185584028 674214299 379650554 537327749 290364416 598634332 909520616 334805427 457030715 180742998 740231944 976191285 694458178 1026337636 838379637 626793516 37642174 833386323 828496426 626472694 942320009 143765553 838616030 167538323 485474742 43752775 85725321 326673960 405396728 999621472 398268445 86420345 693365642 1029687613 33221748 26658789 813142145 905253726 115163183 358407447 569075437 129400716 95428474 260150834 701130444 193343607 544035040 977302001 472496927 725539721 231621547 875136422 299156010 289341439 738365804 265923811 524924708 629510101 193161106 553079139 314172290 732680179 210246953 283896258 1005483302 590734649 1026002560 706138561 52047357 554172337 51349903 175470909 14397194 996525382 705032546 161450501 234799051 768450873 124719697 495381236 886289412 240154795 1005653251 104516729 244120695 250891714 950092601 352566267 102471909 95235020 204742582 182662436 520590778 96684252 1040851712 334133601 289976163 187254495 431081448 388447106 691725848 72331797 317231218 9362331 185614055 280519875 167503524 711283460 708058750 907003127 678565687 682018765 127037627 1046904678 158739426 182453168 339575585 896849694 376077707 44470154 846208830 182455834 127578019 855612178 141775439 46787402 873511432 540927284 104051890 710902154 1050187651 440130966 672264571 416860478 384600549 192178276 1048198698 261642444 22168636 633806462 840083187 364451283 1063059012 318764263 410518432 893813375 243122706 599739029 788166095 450611782 826917118 397478248 577199640 185618111 621439801 425213682 382258201 1069526399 329310310 429560668 38124510 572935336 866043954 1017354719 469480585 556593213 165624058 152460059 975347680 250266229 705462084 54617977 669605793 366462524 693848987 451362774 635359665 934566166 57751177 780374658 712800392 346137396 702831185 797585888 70335750 484324658 906059616 191675624 563242948 114164611 355 995931902 46123337 26348308 210369302 315549906 616074913 350345442 146543631 979342767 408693190 80026067 281140677 935053869 937997089 575049461 603831267 959421310 108941584 283731841 260070502 849509396 824654130 600631035 424428780 366182512 154468557 816295405 171181116 862425952 1038869042 183911785 684486649 790696728 445424324 18664247 795707678 288851013 185819919 301617656 1009550163 190649766 144593463 222708430 419256817 279919455 6130926 637996370 581478485 925763101 860007211 981461278 102699952 385543426 792751812 1038196101 172596965 914272319 128742821 432580074 594646332 194943821 31475817 720449054 267147914 732040152 829932799 465034813 318350263 1027983365 483987786 129993333 56035623 617977170 502807862 23512965 1044572314 804640557 205738052 147496522 608736778 1061444141 535729744 470888620 1017066519 249740919 318526668 1009174323 700427368 679080978 566908138 104699885 631570842 54414832 255232851 181317116 56310638 782751485 324434117 649416276 988902600 295384895 611311223 405199705 235839743 468735194 428116299 201360765 545230987 718324808 825726882 823995710 462366867 532287959 279505048 788093829 924128570 1061560632 827227674 16286178 584676876 990810197 767623064 795055771 670297399 370422222 823238612 37573787 604779695 1016222208 20277680 1071874794 213048458 32994426 806592793 719928612 301366458 311872900 1070229876 933319146 863177558 117564685 333353799 413414467 251432799 829275269 374372148 800027281 247455480 425760153 896140858 540394696 575077179 15536799 728063910 539321901 370166472 968960814 353229649 913070275 622705307 457974546 14941933 370810366 762735660 548948476 301131795 298750893 727818217 493563664 1073581889 405461679 899969545 584067432 163355271 1043298501 289396456 442305426 122791339 692776166 1036559143 52143823 467862941 201169504 1048106579 839992116 6953610 1023534349 766393628 565061912 695530325 22243681 738217787 938875788 356746260 188546512 1070196751 863606919 104855427 769630257 377659476 935199780 785974384 895880996 561350267 631368700 379839491 229056570 841188060 519319293 614971214 646068461 874229320 771074360 288097299 364953033 632982207 882292459 468346666 663693002 404696997 939968335 378612133 1007072604 318228613 768900590 256896200 1015118450 109870857 984648249 730602043 182269929 290413639 68092788 728409516 975312828 268685956 231641089 860489383 787608321 29247672 153232809 291806599 607744177 1038279089 1003266100 359548154 328433340 390446373 33721472 958131151 204972204 53142491 430915801 351067436 239222176 784771192 823318126 835203217 943493794 89263915 937277233 855190842 341575761 254310077 13632437 954974222 370349434 728072333 935032630 714163718 1001760074 794444400 425765998 83985997 862855113 558868816 578299100 638381239 363266683 559547960 289329022 682100739 918025103 547238153 307596142 903501736 422162490 966006282 263924758 802793214 649587189 332179877 986169768 37866242 735858374 312415797 700080062 636321955 826845852 819732593 121503103 400283225 1042362094 712212398 558649868 236370414 591977433 459414933 978048094 293874910 620541620 884180306 35495679 846628450 187744805 241320264 458922418 505482176 41899914 344081406 210733248 625201729 177487188 376025637 745143006 326734293 478467752 30217456 411652481 403637288 674462271 842013398 1008091915 111764505 341879622 292663865 886814684 303589602 513888575 881145216 46704469 10602138 548599864 1023321498 41542933 529759808 439614511 685227620 50649710 172863297 1070546324 417197436 646027817 163754727 939032690 548352804 543514326 757606573 275458011 596654391 208364153 985378318 191731304 479112924 307902184 43451722 693234168 1004018454 297676837 709377388 489408856 192057224 646352077 22998557 986491951 8199730 947188376 771492633 761500137 249325772 459552917 53675274 389904796 148918365 727073661 88423228 621814139 271024401 68164947 428617987 562816583 631260763 21559099 962986129 260803242 812679724 937126752 1055316711 525162680 150585609 973572500 907842412 857268575 265328558 544042726 646769725 457061006 807086951 592461421 224561832 4482149 311787924 475452088 825015972 250959551 624898213 47393139 858195808 963670379 399389770 860619510 946523976 120537233 547400191 660156139 732193810 854059198 8469391 470851104 552312466 535989213 351902289 734122404 488273357 49354945 359376954 569683539 1063468396 149986546 266658827 263501469 252911358 679722948 883422314 345870712 308004794 614283504 190013957 314753913 621936773 549434126 691610452 593919091 443838373 35349742 366587061 81672697 368748176 354530281 922930172 251977198 1041114215 122111372 67810826 133110067 923105595 673104807 305675725 690901739 381603379 115981549 618737293 357842671 548233297 898252733 729176084 146659049 787430497 713167804 525313681 556185206 313412360 53581129 869067997 674267106 452370106 967497219 179918816 132705589 10699540 82432740 914964702 783632477 3585055 723600841 321822463 605969017 860507279 145348904 119428979 357227138 124684403 707361839 21238227 374386702 382981499 546954939 820962905 89501028 337529170 393953029 205373310 636649080 453397118 831963079 199814139 709343233 676731394 1063141449 564450925 22389332 275571067 836722392 735202266 514286670 627050576 746664199 78084182 95073919 660026043 754805437 352655947 433400391 196443159 506479781 618122567 585004665 632675824 21076241 326791432 161799855 871219418 494993733 252778016 640770587 932918780 33430846 411012984 515153083 168329234 107164429 974549136 1062146841 295513837 753637851 366565971 152504661 977463357 970309801 848233778 1008878150 441407297 966049106 971169566 349617916 615365176 654467182 152153069 389950437 551573385 191393065 460873408 247069281 957730458 715159298 800115261 884911394 216006794 86490326 218408901 760786411 585858926 558050139 576400457 136004337 34514557 521394538 390492640 412515650 303744381 721825563 695172248 1020136459 207258330 480390610 464902654 146946437 184244421 597894872 880756398 735069048 452684487 137656195 751865381 251235271 85546353 688351214 747829903 448624154 314379489 484763220 247039623 222771221 771719038 895066698 183400095 161259794 270061315 134971651 736990121 72107353 93452374 741922271 751139795 992336646 972897758 569102117 854806699 240181402 73274435 793908398 382719360 164223238 575709364 505898016 459079341 69072008 1033548032 536289568 574378696 761341890 249877604 888967686 112519750 512966050 736659705 331621909 586231913 971165258 924159357 701600233 838064063 805862207 676288734 213719109 399901849 1047357202 118914124 626619241 373167311 707686359 182270265 486278961 360120793 923788845 209779265 654192616 510832758 105088182 9593801 194051208 924647747 895239110 858387423 788735866 421182161 772327595 717708012 194203095 13164330 450673610 44189310 193560017 645625733 68862592 550315235 418035918 474865044 337363635 40809630 407806207 1036751938 676831139 536903471 78405107 91213448 221231793 204292738 98378293 190761781 161439367 133207661 758290457 305205478 544486722 9175291 976702245 127618876 76167896 676920766 65729207 245434944 270813472 390760122 734032597 965441040 583991536 872591211 1015129298 732057584 925136545 750963967 600029902 679406543 115854384 657282307 828336415 43813430 763383645 225907940 555276446 197216036 521417935 601034901 288351505 870813894 414726162 691809195 337614603 344309553 291002111 533588911 784391164 1037075165 406029117 130797709 541098819 571861745 181447228 220269503 618703026 970241890 34477911 754126544 608280204 97010964 438412312 1045461737 688295194 1015280288 634375674 593946097 162318300 699782533 187963800 897652532 538566338 1059920962 305302671 307406876 300917348 401866747 334537078 556816221 668831239 284713496 338131542 276170906 813579246 691311368 274247879 645552785 870047871 473517758 690566079 784390000 299177806 590903673 953381521 552702646 806203087 275462646 115179705 968378562 420546685 670618984 87553482 110605219 127562203 96483149 807027110 927036258 410895524 254431201 314417837 508281968 111833082 366510083 923728751 887881798 772663591 639372729 717170567 250553583 907943387 847271405 29888523 562325526 396206840 28535402 1048114804 176525754 794268460 317234392 331630665 382596573 113118269 354340339 77258746 446219187 477419542 244287338 1034509614 383329247 728152565 256872006 296425992 934475437 1025893002 303041605 354658531 1069219940 449057542 836576743 841999548 608367917 484019002 27965741 583714941 1022656325 479314611 804858985 739171244 296729545 11536499 481903897 491575484 306975331 980401402 187035974 111702480 1027530744 114720980 577489895 116136304 434819896 680656949 873157353 1048069505 86619519 904998909 765491022 43596305 450807953 26772811 310111221 159689618 269611459 804019116 532652023 997134903 119021466 1014291998 1064053553 873731132 287334884 452818996 817190291 1017422847 427725102 398697484 712849247 350728011 952450277 730894557 776230540 599221206 453410934 681798415 85965957 655130972 154655788 313273403 393176858 99378960 673040215 687161296 730768915 241762913 750727972 189388508 189251771 273675351 729589589 750948892 164424762 37412210 255642459 391287693 646621932 437691206 631610822 593414167 82884572 37579681 912043862 678917446 624469969 265100071 406075021 22135528 333467633 599696986 96740382 719217200 698902716 952658869 248302570 306622497 1037394332 749330692 964171953 645673200 348515713 765490585 68116825 57102718 324954911 738177191 691507927 756949142 366630412 510005252 744974154 276829084 444568279 101719510 327490566 838844043 185433740 836385573 663712704 736316103 995772187 20165523 702418947 680076304 895018826 390421599 893378562 332599077 893113130 887415789 138884211 546557365 865163962 270331033 145485398 568924920 1055877240 921878723 190390712 33160643 277104240 474503037 1057883825 25428748 862406271 439497267 579224210 123744674 993072524 438736930 267959811 159561521 1012455091 334802962 251034588 809679441 843080522 252921286 527793239 1040484970 105839322 315321988 308859154 187602622 939497466 812311553 799359325 694778404 325217878 1003770277 666313860 342138743 269867348 646319711 856393192 386401860 357191541 908053478 861833817 534643400 338821651 329591786 93041825 407528466 247144976 385617634 1021874161 506792038 199263380 357733982 161172284 568327832 851388151 468219090 105299142 875590309 996807459 802397814 137173 460390717 1043452295 435351520 297396414 437807371 15093887 1021479036 674159859 524825701 443879319 100839578 366672854 1059858138 752592208 604714802 1056243370 173555967 1038126363 191443177 884564581 414882048 108176388 78871280 278077989 402629119 192792425 428643853 498215426 464175970 470395843 132930612 897671662 252304762 471728847 1073330296 989568607 976856488 95082162 205554487 444603887 810918460 650415947 572428965 59721708 482878761 78254678 320570718 1053040482 541036419 1062520348 927349373 142114438 1054733188 786769673 956110887 236853883 1055815131 251054681 39963459 291408628 73805555 153500613 1061688708 564405966 764091679 1007013752 129099649 623647598 581148117 599443858 384585385 922355178 428544784 525689769 723372943 795097239 740297616 947329760 893433256 639044431 991362482 895522235 513394645 856023702 568966489 300885371 737109901 826607823 789412177 112393663 260552171 185891877 265408574 492813358 1002875543 925237254 227276264 868526573 201649136 125581340 511643588 689519544 195733726 443611842 581861490 112275902 674652516 667786560 9805896 100793460 630282304 95697797 927554490 487749867 833230215 529606332 873874775 645920271 172785536 336130373 896382228 231531765 509711587 143391936 100990138 712544315 313360505 572693077 209095452 308130541 847094205 419233472 19622058 1004415178 696416477 332611125 960050166 282914624 193080295 13330400 475770516 575676737 557100131 337761877 780340844 258885198 486708696 805340858 203740272 664654431 668405115 520634155 369504704 881004155 662854578 366293569 57024327 186054471 423214581 966569755 999945912 737315630 971258269 554058006 1048336385 166736440 197660801 129789271 959656565 12009923 853460506 802098291 893114779 1035618575 672930786 876066314 162320288 297121598 947533292 1012244828 921548182 270114623 458200782 344162966 222142255 545510494 89350343 763656973 734281327 424974713 444772733 409842088 835657378 432073433 396443758 416144257 932338792 172631114 407539609 566729679 953617389 753024227 977308257 149994130 93265511 949718146 178707879 989710877 595268088 1057435399 1026927892 483262940 929071119 336626593 809971080 730039261 732753594 138862062 910194571 529418336 421974130 871568347 248842844 707984585 472072246 46500112 634558448 1045856262 137617503 1011515333 124575285 813077596 66809113 429164701 1042896390 947642190 648078966 358596363 365662054 645179297 256163079 437591323 952492481 532722636 490599228 547924396 701319672 88889366 726572012 304725237 397949963 594787768 111430509 652376798 823071735 638099717 785140011 604438298 278293159 982168531 398138616 277172027 271395473 815671706 150491625 617583765 495805190 460494829 295721923 873024712 951496482 765124907 989158521 10176101 777513905 835473105 993395167 702936856 515676563 534382374 521644774 41459958 251827636 748753088 468999948 176326820 714642025 681676086 428536769 180119142 553443196 9810990 898456542 907702861 474231746 174397412 402222251 599419647 568298326 337421550 665302107 620532385 260142427 790781263 222660118 175170466 718779451 566537936 6035932 533766857 573746007 880161568 820864915 726270307 1064623891 302083549 778993351 430822669 655326929 627675318 52947592 671463457 529012289 115117115 10573026 862153425 546665291 912890904 329273628 650969233 516478853 20372049 178266945 115538955 122221045 335995282 119353970 180162291 715958495 650985316 194936522 44939586 160454552 649684567 496731442 100901977 576449739 475448600 963204906 1059941763 414144991 37690537 1029526739 9052487 577532334 194191439 360840283 444872254 144918662 702763090 350566134 95783050 1054483154 949711560 288340646 113500477 917301595 500046942 891113769 983326107 957116217 246041616 1024378640 995710969 866573175 834050680 605204935 458640426 490497925 754562371 167979207 589465864 530908068 570674545 710646641 708583255 83240178 26235682 993235172 766587324 132716899 484255995 931188185 490834327 441869495 370987970 424789278 386231394 260021334 672057913 171602124 684883204 664253759 1036955078 61730713 92281598 1040599759 508905507 85462631 802463460 535474070 512936803 254168979 638867460 274319484 781512109 279176684 940420815 156899333 994330563 801946474 998301635 29415463 639560386 385530782 735956853 208819342 542032125 575156874 47494979 940085392 216052647 422498916 474936090 1056661935 796281252 220314279 915138094 237146655 222720660 457854882 912588623 482629237 265945653 427760156 356637708 11454571 146740604 573334073 888858296 359829809 314774190 910342930 535313431 545284496 670113595 825533501 248438004 787795213 628745392 698006496 392182864 478393148 435734897 128564179 888682644 460691719 291817386 106346996 290280874 313709114 691878354 553505291 1045038336 420783640 617213443 295622134 429044014 134006722 653570746 14960876 206299883 1035966600 674342302 103784064 835155652 845302609 788714336 667155904 925894841 617216730 105530912 866195257 107377052 923876674 181268444 444852766 629332369 245596351 352925576 80769154 830675863 61983561 120551049 147376465 1021421443 144475095 334544914 90124560 462615704 565248980 964112866 235379507 622329570 126011161 195594842 620085679 862999902 792956311 540671385 205776029 584498995 99037505 623368873 320433117 8166756 867235434 413839225 327891640 752995277 445354584 386941195 243490067 470188115 828290525 180854660 705527690 703118264 143268958 159832257 289661574 478615590 749070951 755276146 176533105 477855395 595260538 581433841 963752720 495862853 495966811 460979934 391192063 579377590 705337393 361627151 980666099 488264012 151140722 280484311 511208670 90097807 390733476 33718955 907543008 594947244 361767738 906079099 206804654 600311825 845580825 100633894 237782672 55811326 951726335 865360733 129648148 51749700 627412045 672584433 816088241 253142163 670504115 653910016 650747609 169905535 905133970 611244252 746426010 421979170 467030625 557835471 217931237 864048056 617733869 335843160 885461399 468780571 1067744148 387794279 675430926 238164496 490230044 923862426 686651721 639645331 229755634 132682413 652744581 388705803 76928753 11024682 494942156 819601214 652746019 397128645 927451503 360600464 840116387 1003238254 651895455 37641534 416024300 584213820 634958034 909765113 42981251 1063023697 98979690 1140300 321082145 261765167 9267274 712708477 745358991 177495404 575200128 234731563 318897628 476267876 366661030 935171324 444630349 341890361 747173650 59650142 907483127 250385488 330483542 987263140 848487030 730715143 8568544 518049999 403143592 83253849 827302769 110872055 746007474 945976278 544803307 740451450 490050499 681204719 986003520 696473334 1036260963 688087343 1072196530 765225373 827174107 586328411 201201781 727601761 841537223 910239801 956009106 723161991 115669275 743892453 202356862 423908476 1014406875 589352975 750832529 56666929 487574012 893708425 960199880 670604676 716506576 859231832 556384028 783728780 906942314 1060033633 87227819 198848212 311735727 449587081 579414636 974316725 713228020 572552658 408857948 490569801 638294238 11850297 91648036 192596976 212063383 133278606 759545567 536407104 626818743 645823272 706410845 903593373 690742589 255693865 59562026 1009983394 37464400 699940013 834577923 833792547 836394883 1034382579 796030320 575396241 163841656 820333612 647252692 809423151 6272767 132317355 302778968 317411492 398477713 662393911 146109216 970673956 231841927 266320224 96182847 177836828 773757281 775410925 823474145 681709851 342277541 311846862 925162943 959064669 102135467 595554215 593304652 590911304 718601752 167653714 862639649 398911896 1063207033 222255093 184289189 373604248 34869657 836797962 162626273 89401191 28858656 669978871 79228445 993494652 672548891 527233239 765007773 551444502 690295201 491938498 913960571 751927112 483741317 271045179 654639922 856836166 409446952 869387099 396111983 161795174 259736811 552741220 983601454 789875613 256988061 205463983 626916052 357576452 37383542 10121624 1044669200 419672440 596007453 269099516 783786976 294974301 364417857 644065874 108552167 584116579 423544023 99912569 276252492 158878028 605762074 364587153 602332822 285602582 502726964 397900001 333065136 874979639 924762465 914001380 588959164 1026452766 1000858716 45462339 1022733217 33247193 342891121 568853497 564835858 226610578 344084032 714799728 855332895 559805517 26262154 207480977 862016013 921769754 348758478 130915698 367648820 245889306 926587441 513081395 339008572 660814343 147450899 278422921 373394668 192946455 41193993 1049407011 95532616 366149657 139840836 96697476 920297785 649006117 384726846 433133373 832617939 868589077 19144507 995597598 951139230 1068689332 406957011 611387265 62765885 753510840 1023911546 75793323 548066955 194834159 365114325 193064510 190537948 643220317 1060545283 337827539 564927173 177128979 1015665200 261291674 861622533 806586026 43603351 783164845 901127804 465828183 1048985578 900115489 830545371 100882458 503844628 593859034 626720544 680073281 965462769 356917004 59954097 356505269 255788969 1039123614 549546829 56329767 993290199 812774940 629225439 366309419 981829230 533064715 147490447 887664908 752553069 387472234 698561537 659280635 496424539 920071099 102767143 118932946 954125598 219722315 1012898457 36001240 949294349 1007882168 1052862474 647619093 784990696 874888934 899739836 81483964 956938940 343776575 987075992 277038201 269767734 807785122 16507333 957502672 719769769 801794942 1002412663 579302074 649656204 500330384 192929107 870485796 215714466 129121732 811526045 874958081 388992661 596580152 654749853 200046633 181159387 13663129 424271048 573738097 488979212 155920213 20104626 58789453 84351408 810751949 842025824 90397702 698569243 849208963 99900300 349553731 699320167 317821797 496402719 899175487 366363960 342250293 82640460 26019358 1000511634 528426064 183476374 1002120968 538155624 542655865 205985686 250857807 479910347 544587195 535021117 16466125 863135448 492432468 816221141 995387038 185991397 1014276823 973026974 8861645 228207898 259879305 745314009 223411761 668703237 471875807 577091633 553030466 589745056 340126647 224645988 762380330 848009144 72945751 579107928 977949535 32749971 684478609 684483209 408660883 128520492 769126671 543408317 997691620 778636463 22057627 97317043 710878972 399350026 647666320 528055259 344966892 130448081 267279370 62289371 646125239 692651780 740113926 498850008 569390942 683792382 517076946 1003369822 321087399 637993982 156739953 751983336 50407724 850042955 532445014 192050495 817274218 582617347 850313238 467159984 888425430 512189367 64251132 365174032 1037332859 644266638 998210361 540338437 524211987 685033821 793291431 491844710 549097095 548735908 362738245 1030162258 211541487 170342661 157040209 770007871 384069733 932659602 823519922 391045944 1070260431 262068948 722290770 388034033 1033099598 1062183715 328748111 235704969 466286571 326448378 47423598 245538763 893735598 236113795 929132528 926915466 598997211 88153913 133845815 868959862 115551646 902844193 17668830 1394581 6465568 263078194 809099400 883583746 972967419 715872301 110693869 680264845 657141962 198866037 752281963 203374058 716191292 870887111 177855396 874185223 601414048 498646492 295940749 38371548 117152245 988975316 691279979 117652532 243074069 195194080 954030177 875016539 369873284 831501867 852482677 1060986464 902930408 753031033 801552346 71067610 208575052 472983664 180662359 883702685 676518411 231332055 495902899 3050612 26665571 978831023 82119372 699629030 502511555 949847377 20603474 520332434 1014327323 481275094 384734740 759764011 376591045 1063710658 645877978 886850482 639119047 565953835 671732493 208211071 996983045 784294513 110056270 91633388 554005338 741803359 485189569 1023092167 970593915 860995617 272255492 337527441 897783429 151088012 418798896 809711770 1049611492 991266071 645655227 1050467195 197331079 658551947 73834538 438514034 1496028 24398602 996670680 567493770 113337131 604925759 850913650 844559882 809784458 503944902 960062595 571749893 492548126 75994060 402952070 3845382 349746230 120398166 192177375 1043044336 961520051 599580412 632918666 461772065 661407514 716511067 184803338 163626015 147532381 879198278 20012875 743223941 972810145 511755219 347144432 278822523 887577999 664050257 44795438 717914417 471475611 915692069 541892790 38691787 178920080 59591305 331316853 398823773 437073908 62664058 113975449 349309632 815584856 710676884 76185507 358320631 127951034 273035759 4641682 255147319 666718290 32477810 1014752805 1002411852 882087729 925278401 153224725 567326240 401335404 82867853 737671297 903040333 797843356 217078506 435798887 202540847 319932161 1049457877 173277994 969614980 124848709 73471646 480310279 774413342 67532503 751982154 25406009 178337878 842019092 809652059 472517972 95481036 981507965 427822270 859321483 278584645 562795635 862023821 400518042 830144667 1050901174 512330513 803327198 243765720 520258890 718610175 1014036619 812789891 583966638 388564207 246369261 118687470 332307961 562924120 607070913 486490493 844989802 870573635 929979963 673348066 293724902 563501691 769081358 1031004276 342268617 409317486 134768980 386864694 727536824 631029408 355996910 117263977 654456133 720652572 281269546 1057009939 239835162 177723665 1017867295 18655218 834987336 68227497 445370151 237224473 64714890 226121174 384578865 750498169 952716812 506844048 563088845 239255399 357063621 117892894 905428506 686460623 155777156 884057025 100174266 931073638 125425362 289915550 413278115 262951980 544992532 884649964 270945197 985766733 330581614 720255284 217688603 680829734 114460086 423770297 993227995 387227657 151423793 339519854 996194343 683503641 91528989 934399888 865223846 54471722 462356463 443427530 109918294 698523283 75083439 798765252 596269647 548272217 269964548 322063962 718987993 106480070 189278236 217852062 411108910 98456396 226530632 860104040 397400755 119951109 27754051 5804098 670637773 638528228 571715086 932317702 304445289 873938777 721441917 422144231 543924794 759644545 865402529 109138961 629343835 940731933 75462841 256183542 585963652 203655255 829973691 335188530 647579772 523731336 349111672 865207912 650524539 678270220 191884416 955949108 220594362 1052998288 458591647 740468167 901596711 54979410 638026210 360560677 972165923 841194323 357856428 317118253 385672708 436127186 199146423 83543239 777427338 1007112408 1021368214 161437448 5727012 989675603 237088595 600021606 450528094 494299321 438271844 624333992 857237992 341943731 400205159 310310648 511442471 564995765 587307534 341713810 262175861 329830571 657317678 604473394 105138311 953582783 829300414 1053840680 1009397298 611902104 924854211 71684626 470232160 179783531 394264235 616795163 858205956 189278186 559978273 423837119 255490434 174667167 524171646 323937897 973743631 68061833 214503232 207401285 599981154 371701189 641974955 185404591 1060056304 283360201 904864799 965612497 942413304 92995837 186951002 948128402 811000980 377164832 965821649 362427362 632110190 164788651 695554732 122775771 1017982787 456219872 892121266 281247441 90565589 959432149 33915101 559540954 851579708 850340036 516935755 640868790 339291069 626002289 191131874 749256719 817275662 384465101 796733543 883505228 983803135 330250334 944629325 696958743 1067666564 961338533 904875887 93193095 415288780 532495327 162936812 66411393 47830123 1068188195 358748395 1052735247 402773026 881569189 793424817 911175183 561547031 178254537 362143225 866180965 912139756 562546814 1034295698 1045190100 190426021 583342052 98732270 14806152 90861142 252040151 844645988 522320198 473400420 56741625 612294497 91105696 913907949 927763866 604907014 11446104 156011553 500851430 426774380 972936966 675365415 1065843092 411007300 798878922 157010862 710931075 358967545 85499137 539484203 995687681 1058150657 231141848 424091572 678836112 1001272585 260042888 655599682 953383647 868795669 675193180 752657452 640345366 259934103 105583748 650869486 366452775 849610919 233400360 426805489 312551146 37249419 131650510 1018743101 1066692589 856881780 785461288 282752484 11261693 302816032 274166202 222392535 290914666 161896338 384538167 85691322 167214209 1054089167 86755088 786396721 445155322 70313477 371230963 979508162 426065769 633789448 472830840 649613618 216392150 353889803 274605758 575931552 686748505 784105085 724583104 36062425 465236377 1034485957 738599382 158146844 483003925 867780760 33053169 381153914 460708241 191902970 675726697 1032286321 435533696 44230325 900811006 358537551 792083479 970596519 9777896 917638654 1033444476 674440287 354748385 427421223 529192021 707171631 393166372 509514450 320953216 6008379 649781729 844278265 817384516 319020512 917940587 534730656 936278135 149694709 938348705 93322664 337437907 644247333 794120639 890853644 120579163 125774268 649425914 899144143 674996397 1064185870 370952818 343230962 574020142 585873842 719273148 135351425 209648056 950065938 558757979 212135930 575452763 670477359 705083670 343413354 710278345 730133350 343544134 411794338 726988778 29675258 183245065 941857731 513964901 229809773 306656885 84781901 12156494 581391281 438772724 346057673 286243332 1018554069 1016796907 570633943 775421458 446906436 549905057 374034554 512626838 994026810 687203181 990509418 849163700 60986054 628084508 842603140 284076986 1045621547 230354961 892371250 112789803 336774051 330307922 874055468 137608899 884291603 999249169 504794186 941129208 604275282 691824133 509889957 281924776 217418765 295051555 406509868 831564372 837666638 463886784 68761050 807316154 857149071 335613583 424235387 551413675 940280974 432259127 600134775 25224656 1025204409 139425257 832476453 385886876 317339533 144688642 541280421 4659020 534848425 304304934 278554791 48895695 221680133 52911176 5964835 456412315 516642000 167264215 120491791 660323323 709927591 693634635 396235854 557231598 522665019 907986681 260193767 711090891 1070264057 399584899 267861476 950555528 388266870 384803690 574285470 569291441 796376345 368443685 269710380 483078889 343370997 978784060 227145032 360688694 793572595 274476194 1060337276 347323569 440224198 265745070 249835583 814699147 75402924 240765579 441419789 142544883 320011910 664502875 1036323829 911451240 310855071 937676054 882570569 11087615 184779507 779643917 781711965 634650006 915580387 310698852 5877716 149445374 861399221 530455203 329144339 418707577 434134750 792191405 678944463 671697521 554566355 26004213 603519317 1021722142 856545082 753339233 229468325 1048325545 479531265 255549503 945412317 43263488 456950430 70377468 367891377 467519818 313228293 966279236 1037732691 444780740 566481418 56459107 102105551 731861101 623727504 968639301 1051961619 532530369 249324809 749001781 23231407 365816775 17676889 251703798 154281608 183602240 547223155 59330862 980162036 487201171 45097631 566055627 282962825 1008522029 531481509 4007869 38050083 768803746 1015731954 180333758 497632639 362951158 405972093 670842613 112331512 607830284 747270469 932885599 1008215905 314959941 195605482 458673083 266781753 523473408 871893474 683231605 1004621381 779747964 96936915 677443708 189038957 458018375 612433641 625341175 9176675 697330873 952372262 155981847 274958801 957664619 941784032 413556207 703046290 479754640 909555674 658114435 166623106 109518066 589228108 723110612 832559474 141696568 414498378 714842232 260329322 671675226 1057344284 1005948593 53951891 1034985792 502232668 173234201 595170953 676496214 691330729 920387775 728742214 118556943 1050562451 78769345 572310685 685719350 371563506 1012706507 237676320 1061483543 715499659 868124754 315024988 1025452443 844829998 960518408 774311304 404727517 100179929 605277294 47022590 523667785 786147005 834332800 391268545 19885690 543883211 498288060 597996072 670206200 40265670 701449956 411702283 94219975 95093941 570107434 1056384328 803646263 931217643 979997551 360305310 123933057 315870308 437212747 943537534 812919970 692523925 811576980 612765495 372818223 806880929 280214168 804413841 312417176 639205511 1008240692 812930116 919757472 728471709 251265412 3076882 407083830 316104082 203268101 1064755853 986997794 617435532 20046585 357015150 624096571 309440159 113614842 137272211 950035959 148027151 338141924 609759458 190513633 984136003 752568627 496948481 659426569 359539158 22104227 122141402 328914113 32986060 761858813 441794737 108291977 984799120 676862315 783871910 389340635 1020704637 251902682 980467425 246115753 822429505 426595072 27311145 940364995 150021640 759579827 229609240 893700562 152740875 79332315 166951520 714067363 99740204 333504210 789538625 1013934934 917350870 167574333 53323055 634144806 766774237 271509870 406333754 871294769 345401296 413484318 994888425 558857375 303159038 269967895 454827697 388637148 69278546 448459246 164488115 73639993 974027293 39550354 526007432 335962009 264924193 1012778690 308177152 149441928 361167408 951826864 646625990 574897876 8255168 222361227 260215324 621130999 304557256 788408174 979358356 720446127 839939003 532503906 1007635161 963847831 656652656 851396637 585689265 967136442 758405920 366181203 207231155 102803261 712280934 846353500 23564112 551137740 505204374 360800725 685036580 567302685 592166959 177567415 783150511 505967969 450373501 227890548 263554502 526949558 23216658 779466217 902210712 948339619 610651421 1067245841 854372713 474230668 701060324 1066329852 955166052 381217195 924089792 169079293 831697299 232383086 104731649 748437786 834193017 795979628 640469567 911975137 931455311 759439060 1004485172 231751377 596828435 720479390 1025869385 591675831 571377028 367505759 764437030 536552403 257418456 633220812 927215371 827226960 533728919 430350931 357914345 266409334 714222686 604463468 216858937 445974958 160897767 269027389 1036555976 339598033 1069618593 344365591 755636209 496003383 334565436 366773477 41744057 91211213 459137937 828170261 132454719 261022889 871249721 1069024710 595524979 548376280 711095590 738782603 675805612 525353890 412957151 966123252 93392354 894986773 242297452 981602668 733779921 562904795 1003863074 1008189979 939351840 748793904 500750070 767196753 560654182 639894933 849793609 81999277 706121398 931052168 292040148 1019637511 452769394 226009601 333383424 266729014 399942031 318158699 43570368 857145111 261195779 572334157 47537980 359066515 288097511 347691323 549305703 483833197 897372992 355705485 580110813 62777748 167251268 934447742 147089102 614425226 46047373 712093786 739686319 211865748 65767761 360544241 459904014 429746741 284660812 942544647 461853106 332698029 15498645 630130681 68512163 842457127 561484591 877828345 785050690 722422268 523636814 879876748 348084903 267913160 1023337918 293459006 203365803 832734272 271194999 446585757 447032998 832596789 593120352 167191666 387553468 262169462 695154515 31233755 203289011 385874601 1045494473 251881140 844017545 767705997 821642093 962765701 733245530 1031568634 700318437 625052257 642748323 777201757 29588578 108234993 236158146 362538511 892468823 359529816 298136902 956050333 928839039 383509507 281412657 832986897 693752661 48275590 336520120 525859273 665110362 754336931 419787205 128994566 462497249 1012457370 231823679 770915682 485353212 992664756 341739870 240286626 87118118 608940278 67942772 407405247 513760600 485760208 398000677 576756636 241074089 644744832 785078034 446217239 828351942 154512081 211938656 882592201 602777923 596524814 491223121 716358455 305427906 197218391 925200923 573637222 1064746206 155455538 981606073 958787583 369098145 1037094976 452153538 466806429 593803122 329340742 404091890 968777716 87040769 1039522154 1063094661 744239386 894224473 488829803 678971414 12989372 833882597 731994270 132200392 459619213 1010195846 963592466 890060253 602265704 772729411 344683802 925930981 109018890 392691565 734441767 495181738 71833087 570464601 781201264 134857688 115653664 368736067 690948204 70225716 231545507 918005563 1059096025 51933830 469501911 674558595 425783256 873256293 905167789 131639051 240400391 370217949 948342722 196438319 1333472 880380089 888728886 522492693 45859389 958787506 502514591 927369644 579422698 291847064 769975168 6690057 126601480 560448772 868830846 79862751 658228292 502345080 154820359 1033141445 814268333 653240988 1046874605 592628687 446391020 556827678 386076760 46132616 943598635 964238166 995828450 518657916 815437305 745086609 771552256 467924264 487021283 680396810 175103045 244824823 174453026 187487653 432354005 500060581 989260726 797958431 586195381 763031416 224170192 643054151 793537060 658585224 137401277 1037103838 10670245 103925211 245776536 159103277 607084140 72371854 406587521 748272574 375768189 194188154 721206773 690025966 687448094 164569183 402488626 839577726 1063282025 360247802 218087582 711572260 629447509 393919475 174498778 970822751 651622980 780518067 620332783 96322176 814749961 734180232 48427879 705287768 360340432 366098010 582896382 780699820 656493878 469630919 733667922 761385790 407597893 682365333 495647162 41268440 553687487 800457088 780453428 651431198 297481475 571509185 586174339 739339625 498174681 778468741 772785379 1056810831 654492667 999307964 616489746 925167423 637068679 984391430 43305926 995282551 512286290 1058408029 546737331 752010441 82379517 803439670 461164774 84883472 7987687 364640651 749353142 497104218 929264975 1024468683 765359820 72751911 400620114 153232518 343219071 453093517 1041499204 1057647549 655545738 112889339 560635028 115738497 725477898 530864212 1047763105 132338693 254811201 608794575 311797323 719433304 747148686 734720858 899430709 920770997 686303815 672307665 823042387 780782872 987432919 1062606731 905782007 804663460 1046177288 397283941 282567970 768542976 1039066614 370597311 739027325 134469261 668382443 690884366 980046359 679683400 795342769 887559260 833670265 266344616 772846851 624716779 569615378 659695478 419163848 731319240 171877938 858483964 910435427 451195662 811094852 468214212 402148284 1035697064 162087260 44716458 397478724 311133171 131741081 955087881 811127861 935644481 783750652 556586325 513385612 387723780 138319564 24273838 899841080 764144068 1041031292 904404572 190381968 125776415 580098931 584898796 522359790 921584764 586121607 997711286 95726455 350389249 521056589 724809331 249519952 413906184 903316324 309464568 157225002 739973893 603750990 1042351187 751703381 312206110 111635959 556310837 1056409586 413860940 49086838 253509337 544815579 445578662 1062726092 894935197 252957155 5196055 103424812 431836411 53785631 744739197 998661424 414622660 1006870896 39887658 996114510 486409911 78156148 781302761 448352380 573918175 12840871 122059965 516302003 805720108 675543867 940254636 699935750 477869622 567364979 1010230474 339399582 332428789 873376131 378652477 62424384 951551965 600411457 154174173 48544431 419761667 512017579 124017148 585613494 112302141 875963604 676679621 72002178 201366551 373805348 194996805 1031234030 168591266 964157664 504645580 967623192 493709684 824569111 447871197 545471657 297438495 855165645 343329047 389066010 952047350 608037052 144680813 675045573 467260872 1067125947 592978635 530608093 725538205 684094535 694973052 431623234 124581104 815212890 910659862 684979841 661884742 928488508 720286201 921318698 920214839 491289616 523442760 714510044 487279062 152516398 998202570 595028551 536381907 235300920 516732313 341597171 579743945 442565888 345360664 667848357 768584245 268330585 1021181337 169662911 946427731 501270174 440863223 648264453 177851450 957597469 986205108 855874926 857785848 545749947 776124743 197075219 221773436 443267703 184698149 369319293 940744961 785379160 669124814 997992902 751897178 913048509 458806127 357593267 80535478 446431156 600692671 51496173 896878408 699105582 704236130 437360633 827008604 397245685 912296247 232158790 573591414 424202044 702550249 651121347 625335037 229952585 992999414 53405887 911866306 774794202 916338699 645252791 1005772773 508979496 760769294 332876907 279210793 98863131 384066908 1054380306 612783990 134649108 401741192 227071529 834857521 467077441 383953852 579178162 276517676 485629195 501558291 601642915 667090495 532002367 474225304 363549634 470871215 447658736 559091292 791143332 795826970 762579457 873080704 579803164 879171277 882804349 860302403 945160712 1023506877 151560738 507079712 441310833 487236966 713439056 842119719 370501678 974326909 107279576 120380223 12390463 472516849 886663773 393069289 208691768 1031165840 90752748 241801741 928434717 438706886 646898974 295871217 665761298 980634691 238849371 259112867 935874971 6286504 412964250 981872365 342258221 781594440 663451159 147514792 562166062 1065563790 943740963 410328140 661671717 1048577058 698066201 548845903 63191361 881053825 493864164 619740934 883918650 825733570 1023305769 1054530928 708840338 883052460 349221916 956689959 1036138555 490141915 434857649 1040864843 872613392 732211308 121925883 1066309511 268137071 550951331 642971005 889469589 564685691 533917654 70502196 833744275 816439727 806314181 909816669 673772847 473344771 891867665 748333416 161401727 1018786949 95239853 949637962 104844352 875207374 280633391 207358431 551034208 122608015 2274857 434683161 1049248469 500938968 442411273 198337076 196421901 829494279 943543019 574813889 497776957 640033801 636196870 913605064 387393631 544360126 643254473 262498579 280646321 865767194 278291502 299347023 722894591 55739207 828078429 1021668202 611569513 427704641 376836162 50817135 558822848 188744455 970177625 492891551 841610408 900164823 558516143 78335884 1024454480 519777488 972087401 637613729 260465966 972969662 404967493 147225289 985696139 478060992 257450109 493753821 1007591184 47724593 592755714 154747886 271526648 345784915 415682591 399690751 310287462 381330373 814278572 928125451 210564144 574815908 202923735 549261491 1053749801 132357228 93095919 895423732 599360165 617524962 778511915 126883786 892361885 48032508 558726049 695385576 493298676 459520189 489274678 1073731303 504513733 827640696 6507431 957100058 564707345 251475773 21597044 392661721 445147933 1041937938 388069783 780671308 333330957 729254202 770945122 223260172 526181687 797668771 253094422 125126994 29162573 334451180 962787596 205929989 41834656 187975724 979890889 753262703 263920188 956494875 1724248 633520041 352098055 608893501 1022513006 778641228 148350474 150972135 269346929 194274595 170882985 833196240 194928576 892667078 605541915 943563046 113323900 435217861 293113675 417657141 228960800 919044200 812215595 933210592 684724556 262775756 892115564 505505846 145142262 582506215 421932 1061275692 369858226 858419477 299951342 351324028 521615451 899734089 330003162 318718045 1011765421 470788687 179731837 882889627 482522439 434958151 26238789 440393246 974986208 127479496 1022977667 436012729 782330020 429477522 1024860639 415544865 1018242484 791870972 756969683 377314287 610812456 259723927 426532727 250683620 971489116 400984996 495237248 784240189 1045332332 135565770 1012797407 962285489 520436221 115804 126081819 123034835 496078520 879750522 126959888 426184305 631890879 271916070 628789842 39478663 700801712 919102382 689484857 61362387 1033762897 58811783 602958788 882466383 879693998 742899607 457669231 745785402 307290406 488920001 722917876 839091446 711503300 688023617 1025562014 893543989 436348444 529794725 705092183 578761541 438626731 212459484 809586314 594598457 372161154 321832174 824618237 68960408 569704743 815460831 164173869 409667633 783366978 991891596 448376937 487718066 600727644 243963278 412799661 1009566176 377224542 278962331 161659167 360198423 458322703 126311208 208775170 810682736 109846988 709859473 287515646 351730954 170341002 903599871 544752622 292229481 954816368 536058481 633911168 267554515 432875746 351962104 94463727 812521410 544210097 40991749 704089817 702056766 11592669 419197935 890781795 647402500 483866992 889455757 37239690 393427726 829726925 1036910655 736885858 842010973 354084923 848989429 269341491 1018178004 982854826 217168709 970294628 976778424 595036417 543207979 966538596 571621206 635828382 450375898 14385340 185217381 747433739 1034721963 718793647 621058124 224354106 41349663 1063531595 614224469 296793788 251934868 367000133 497841516 235406249 745132401 789288839 732026298 940678842 866651952 1009898717 728769555 763975080 932832616 229184097 872353137 268209088 374263755 535455188 701397618 841149172 31025751 614877572 801298886 800353549 592711513 675516240 107584179 362991439 801702492 888095922 408152054 695484935 379003236 429161782 696116190 406595269 279060158 832807690 1052029298 531074152 685749787 510365094 418055829 56731308 799029082 968533944 534353445 410180246 953190890 1044330709 797836613 220421066 208714843 989137961 156804011 978531607 914338167 271801413 218689452 59441099 884794396 118140023 140343587 859072543 369206601 236822664 1024979219 697184315 723580041 131055573 988356338 21839009 580508213 86464417 706730123 639694468 418227077 348033636 114595448 822189751 748529020 249826099 1016958561 114178154 863499584 993896814 1032580310 245105103 385521116 615292321 808540429 139437643 888420282 371709362 586825068 316876287 341039918 24964108 25480499 736927339 63662361 76718576 792698312 91478168 294873241 815790553 616241260 540766411 29486972 862981085 144775193 981484909 500525197 321289611 111406518 56903595 1034425447 761063520 615949419 708269068 630077503 494999809 433370158 468782157 664556044 192039389 1062466129 843768039 145622053 311745535 490784920 355307830 975129758 618706467 953995373 727159656 491123664 528494501 537077433 539100820 279018912 614207748 457954577 194241985 994719247 580006349 981316144 557300107 331922165 939417174 262772636 276251416 367934631 1072052055 481995306 62247993 61944336 56622575 1050028176 645656534 1063640194 559137011 321427370 996477519 867913552 513598978 86437637 180278901 938967679 934898489 864783007 957059483 796285181 984720269 448637860 612922203 206592664 856329743 204650803 1065997474 991015217 793374724 208430341 389412012 731926805 355521103 602185349 409166145 707184801 734860755 239401528 466676270 368420044 157747007 51124314 444530557 436867994 991927114 1005067770 1072015734 61434418 992206203 180886932 1054602365 889179957 922751997 436768733 790776857 268086175 658342370 866476030 363301491 967457500 337278268 362719573 1060830587 927743167 519366668 781690218 582248514 805235681 46517176 143612716 987489194 139352466 659856808 405887300 964421254 535194786 612381305 706440883 981363126 38185523 481895485 333663348 250432201 518928429 231681099 606731694 420856843 935783584 15959434 868655153 628269761 62000475 834713729 101224680 72517070 948189797 121298814 469639512 982631780 327031939 586149708 642299322 706161667 4666757 430676940 964624154 1036272926 317686188 10313500 683777710 988182165 969646479 1038788448 877720656 124082828 978836929 514330443 522529900 481150516 1001528041 506302128 1056866551 295349511 458460323 359596677 137376347 708181539 1034810812 43736216 1055154474 146140241 514016160 1047601831 229508777 267580808 683156573 476678356 119143718 465986047 876875358 931396204 445012258 649712635 588525625 158592972 871608701 36353813 400096417 540044706 615272772 896392878 584657167 783466838 397747943 415799084 12361563 985009420 888196948 244462285 117775319 980238333 315448459 834008617 288389663 814931785 423375175 209797396 901361310 617717091 894828991 1027012871 515173950 816714532 700000652 244369687 126796620 832008640 316211134 942507214 529033953 406539631 500678670 718786244 691724640 86257876 914701369 336113863 1054654346 504075095 636502969 692254484 192883424 235539019 352252771 579636920 693644958 397926941 599726104 847379320 542162740 229684292 1068505863 757474100 246114457 419221328 35642354 355397088 76393293 1050781122 189131546 511910927 102247214 554017527 163512852 437780318 316468639 150766799 803280516 512268175 962756938 349827697 746412750 18933320 206225349 760487494 723301141 391177351 773489873 1048073344 596136940 867089737 953453504 159444639 877273900 860887870 835596019 187899444 139760714 995964972 833971218 71546235 266932155 900422690 492417191 456686467 247258696 15315334 382313489 586941810 544479483 764187571 237286153 734274207 969054627 220532334 695041344 323629846 261744266 978074203 826888732 815101880 795162159 709571607 849350570 379165535 247970480 558384884 552240687 1030551593 647359391 967049467 542770086 339272494 532302665 1026821422 896421425 175226599 1030142303 910669765 730913749 389006081 261060651 382415544 274927946 395798476 806445335 534277313 531247123 207906662 489460237 994242825 495485052 297516869 457796203 240494949 19642091 553951736 653353572 198035934 394500119 166738725 567245607 495041816 507493893 1048555031 254222109 939370363 60597744 1029555783 685898640 612868730 398876578 858982728 410001887 1022119322 93671081 756342966 889060159 131910118 1037504620 427360090 514980431 786477328 530566101 967996593 69723224 326174727 483793756 680579645 1012536102 199586645 755759851 858825089 698854952 497123349 434904296 297948836 232706754 429229614 37979948 34800398 452052011 643874800 176721395 297770065 246766253 959217035 219582506 978221128 244955865 520324603 801390354 104360712 161099062 366584451 713878471 197007162 585027281 511867039 278534905 893291319 1056694440 1034052711 989066367 1005740338 577704222 412608169 615074058 48748956 1028857515 26928089 348475854 883019818 643251633 207540772 324521139 26642689 89645917 110418252 841141067 55824172 687042830 308315004 1047628820 572669007 999636351 668800456 814420505 260629464 586783308 841854680 237012399 601271584 285203638 559188761 1013238033 515720752 685671016 956152521 345837579 734413272 923094295 772011131 490232574 48383621 659134981 260801930 98290380 1046710423 64413051 888770852 683971649 697359660 616301295 817496128 543130137 895191978 165619570 62261078 913094042 507985668 265143855 885042286 575721823 428533248 787064698 916220100 278672638 342245132 571876863 802918617 485098759 363917567 565557292 326731848 908249136 546773532 442985300 663303308 47593089 172493184 907259431 685605611 605161418 31109872 43205653 830104151 549741964 918824014 153335311 425969041 881727960 847711608 649054788 297395970 280527601 926688330 704189055 426707880 595120918 551351994 512073005 1007520257 677832796 787584549 314165027 781281272 291036326 12301798 924815847 387085007 167835942 977329766 590871316 614883997 70217414 921146276 689744042 494282784 592045174 49501000 167823248 455963589 822669667 743610573 863817226 750342974 469223255 1057901173 490591732 268404959 273807819 453991385 525396498 723581273 557657533 369877100 357214131 816152702 1025314755 439722715 626667816 483029802 18131093 263588219 914865568 398611610 523990007 383453971 447495185 1021194769 331272634 123622049 518971380 950805435 308663423 911470857 993552384 32550639 880458680 722724878 569635759 742273869 452963148 410673784 69900198 861820244 985383331 639361751 532023393 353731638 407614512 780939261 565808307 785764804 831072983 530029638 581688719 571410626 227978672 952153047 191706961 136224128 655217476 1055157981 1015467748 967915992 194077221 339632202 321410843 900317205 202407868 651965813 62634971 171266072 96389846 79323588 449976670 356473237 178330338 517913700 594299786 285852402 150994598 385602258 704596983 1015472528 255928867 583121070 624095596 199136865 499896854 147673456 821332495 495615251 473076744 89532603 878144028 495537943 457224086 576822226 852252112 1013370769 324190402 504876430 504183399 111944928 2306715 1023169272 180291232 152701545 270123514 355046306 90546397 167493083 792709736 783437955 354338194 545641705 998037266 203438010 847560126 401299378 679473092 799993260 667308710 130908530 700022198 583391229 35917587 509527993 640055583 878965329 487904506 1040361431 510811184 382205718 356424621 837753871 225791276 218498275 771680977 363804143 865817118 272421858 860245853 368173916 798732403 193828095 277256926 746086771 24570707 666323850 272106797 266333858 815444635 975847218 725934774 738078220 61099208 55973739 10427893 304752388 719655573 314424671 647172129 324508450 255172942 207838379 998582093 317577210 1014395622 709892683 7652782 1023790374 794335746 940439367 398921312 52696194 64942836 731019619 317579376 18719781 907964799 796208188 200648224 402047495 419918215 1068969470 945906577 854316106 27229 368887645 198884888 7009216 591272972 318070391 78003576 415702682 577144374 163358043 713859154 269181140 727913824 216120386 791037778 796403442 1045840560 665294658 605218609 946115427 59002830 516478618 690119400 62733711 857297202 17015236 157311597 753736512 997843126 368904700 692817922 582531602 827472578 54396228 387488306 387221240 8407656 694367274 360185622 519054103 557295917 564628732 893926030 737378541 602521126 130386383 841145333 532614224 56445895 497009984 156795911 530762854 411815255 877327351 544577065 468949426 878667426 281943487 596934632 878829377 336960284 182682292 673473605 251232057 921021523 457005543 491567053 705912377 966915196 677016457 618234729 831414965 486504783 622217037 312059589 816491207 467925197 830558090 227002996 700483512 60635356 198602560 312558 983145677 126144303 1049685931 598252273 93810734 710767166 215441816 479762562 868020365 813557610 659146276 928499900 18853356 396804020 1046303183 1042416784 448331952 238771005 171852143 413926693 379078329 172856507 579581332 515409278 512908500 458226577 1049148145 516942512 335400797 554295563 500912082 105394538 336857956 192545771 246339934 526848049 129123839 268548469 696801215 605090770 987161245 227899308 370082048 1018968752 335578929 918923616 886409665 171533517 512564996 332486874 559176369 472714308 476993786 922534267 31668885 458083833 363735873 519393948 764887009 840022799 465179232 820709241 448786094 997755820 906509672 191041210 620920989 781308413 357622321 581924674 127832359 623274893 149922351 455151021 246844024 454845066 469586001 29054046 416086977 1011602692 398727183 379617983 576070704 997026920 576584695 720708252 1033418773 801789345 742811238 365221173 937663200 790633934 129975477 142492484 262889439 248046221 423086686 28737645 882108447 40977183 969714300 598523864 538309511 914293589 962427913 5582700 263691937 59137531 541416915 505299768 147964273 63857638 471710188 357660476 638312097 809103438 185759499 1011149655 349434016 163038706 1024062849 651317504 132596398 1036379793 1049233284 255627746 1046291346 59520930 675262444 805008726 963677734 237616273 193493360 501247475 1019316857 956692754 691863951 79838250 442357063 715146763 122882744 340382721 611388294 987429477 918150214 844608424 834691725 929218104 510511842 505796980 853076593 685375082 737339320 1037313607 145338176 12937582 566570775 872470325 41216743 237080376 763656121 957255437 485759236 376363401 322001139 358300560 141669394 784721253 247740556 1029958656 378290476 1000299904 435143556 537862934 589105661 21896175 155244159 642193888 473931613 864581952 133282541 355315915 349519103 348833929 315452503 505225883 1050166138 596269001 226950257 912461142 853179770 613165194 588076200 143206955 807480497 347991006 141073691 1040264827 367223862 239478553 739190608 653860292 547225640 465515786 574794450 742604646 391361376 1048963443 837542222 281388478 918919428 273912253 447781410 606909323 567355035 787560920 426385327 689593393 166994913 133584175 349548801 464980998 83905533 381449135 81372653 170640839 433205400 997888296 963634680 535245530 663688209 969638382 863609908 506839527 468210908 347733848 683850759 876965637 912727919 768797970 106514116 61452339 392913042 365943510 1018014347 259776718 9342315 80447867 98292141 730515000 817121814 880701951 14007987 771164239 1048182834 345640923 103109855 233782770 921279817 702411789 652509085 15390069 880458978 444174379 1045781492 282179190 479913615 949560661 1034094421 453185749 319584597 987999540 499220825 475697886 930905895 994423296 250986780 252729815 286562239 372415088 712250721 334379760 105078650 934166230 691607912 486631306 305359061 972676957 37939953 819019071 702318505 369324741 549139161 176559647 482272884 410613448 265996097 702958307 861445069 643717670 311017913 691488867 220011032 644256876 202388440 540690386 706950424 513120220 514843636 393519329 1043825117 350605381 408831763 66818700 752859996 35887259 512121641 12637319 656184482 211386538 643099041 1035503063 1070803262 108614217 417918807 697479917 728657994 694254814 374845440 43403041 29341105 140136331 582513351 639428917 251231266 627247334 355060975 516290882 294280229 102254248 1010922697 1048008887 446616939 218549844 894207363 338693540 1006220805 89179707 269986803 925011735 81163071 127119429 464344932 303216429 96567867 505479795 322736274 19703770 972579626 785200513 314585798 727833182 969971444 467122317 1071299605 225128781 1039387343 428958465 816949519 971325082 454495339 820059326 559022675 749410558 147663251 500363400 433705365 977055306 732729512 234685674 269084552 465103437 267692167 755580620 93266453 405167437 522595134 415558080 673688678 605385817 836240527 559394105 17871899 590899345 840490822 723167240 908053017 378183047 228862346 402301338 863734712 244320177 13925365 856088966 948322378 84579505 857920136 295146070 1042233357 1029948499 450080392 896002878 459802613 46829710 442078589 704124646 786817863 184280546 233515529 449910386 606268447 411508969 5633550 1055259794 1017548158 290173451 211925573 1057133518 204441940 660572273 5099022 584661198 164005435 246558940 27111715 181163167 191325183 523874582 880340103 840903184 35930539 167206243 193071823 567152060 432367046 238801063 670355881 113919180 592296697 146938648 882247620 986236973 449205157 772466505 238752666 56732606 395155643 312504009 696339595 69985943 578145867 692455715 401616488 998942327 49662778 380762525 399188940 426622285 177567880 314408878 199279250 620454632 888685235 1072965830 76186834 434940866 893971524 550946810 718865129 773316116 387499741 467741856 1009757017 6116362 622434569 541610416 478029348 72280637 6904671 961857850 47321268 1064189882 187921568 130721215 1062105876 652833447 232984039 275332498 875217915 834432032 172515805 1022234016 481562223 83322982 496711737 11825273 208779651 191671900 990358504 524560566 20995286 771784499 708764995 924819782 642834535 162860997 227597836 783672778 478341027 172815574 410874396 600161973 733828224 213385193 620436606 520257563 490413415 776967885 157743382 125312320 389691422 876279779 648504873 874213686 187949801 788273677 412056718 143991902 893178357 644107703 336035951 146452006 655108581 792219129 671976613 95462220 761610239 958996571 335937261 159183423 1045157213 174345375 213629531 360595059 546431981 845980824 545512724 563525774 446757215 653667161 22219825 243461082 416403080 882294642 363967751 1069644599 892026670 505044848 642434782 675670670 890343753 482651341 833972172 782302150 45292841 123065775 230047398 423065438 373726037 345181374 191855042 407043891 100629784 482635622 818942617 1060217239 480611781 1020558284 516814525 108312926 25897298 330062303 218171821 1009216680 53990080 121501803 583747803 977598107 1044716179 617755759 914691897 872159515 1035905479 213787647 592418737 798966114 874927603 216725740 46242825 899885295 319038240 885359676 83659793 176130892 105452096 850845622 424102231 633748061 669453695 1070657359 644266939 700931913 920755825 672934846 559845735 646125588 255712660 431645693 1031732574 966654691 612685798 285856122 629652568 1021946753 868229655 220637302 904444269 233411146 880909753 525795255 811564082 154000642 454716843 314051263 786804177 330828660 608973311 916934934 616512548 300809385 850020672 119727742 362080442 822155391 649108462 771577440 838713379 1064399355 82976912 474737953 292831621 125777015 264913143 364517500 28923522 835506825 557549092 526044044 382607847 623256414 665555494 337423251 810056204 998469366 1027139973 639781938 479814012 803489582 814785806 646300032 723253663 109739910 722843654 974361227 531811646 1031866553 326876666 834126046 474902306 768619342 987062318 809264490 744788636 480538983 1024516450 496609377 279979007 277667283 978055504 846763574 425822075 515446229 598394184 148113326 369277398 919906234 727080767 453028955 578683861 743907470 179873226 5770992 146595789 529440262 399469806 865277534 228476823 81459804 282787578 758983192 739514906 135282556 203482358 526247277 766269528 149769289 876836922 229330442 616843846 824103059 1061401444 808421781 1039405622 95062839 107326598 365842493 427426365 228360530 576022356 653166560 274123703 561113911 438251392 476905314 929316742 461858811 360573592 516066258 807677995 1013936964 834220890 645098255 796504385 80525413 489917391 655998514 632756100 797662132 972107306 205224302 850814992 220962471 1030125802 236884718 438727001 242689288 7561771 581140242 454512449 210253432 1030457501 441528542 750281810 662790695 649904800 284323104 131131661 339680101 482105252 287225729 807692829 648739852 8677962 637274437 173218970 294925022 655670346 743630350 249619873 44395856 717869759 489920699 367911778 286239330 1066938355 630485894 961525270 698410394 320589958 619203580 105721237 873382079 837033888 509617051 972970190 397811196 900716830 325789667 505585271 159889946 20607150 751442789 52609206 585260256 632410707 199553744 776706167 33161728 266567814 291795974 749186597 22901213 25618849 863466431 697408273 970806274 984188433 505074703 777687385 772869668 934526727 553163156 651481271 472633594 808023880 208329428 795608686 153969037 546927691 1056253531 545226663 722336685 169863109 1006594945 591883512 289073910 340942479 439630002 726964825 973007026 689893685 615403720 158648616 994424577 879239287 527711113 267355738 434731150 939740785 56042391 626299348 488358040 40651143 933589781 583210892 676317004 967388664 183083103 932797029 525256056 733975194 120066463 512587892 1042076198 205096067 403279912 81591404 545207409 363213041 696342548 545016116 402131893 628571503 1013812247 863193916 24012297 390783435 580304653 952799193 789745463 832852146 178493194 611282169 232830713 203909319 1007690276 851146349 584268820 339878284 386552572 487558684 96453899 535128015 896463855 815502756 382231695 539028373 172554568 1060187887 543404005 601175051 291988443 717366014 728820231 641705934 290858063 467547010 1005997755 154678066 158643427 94678024 395863565 920236667 628455169 350027456 191222694 911569397 73434949 870821484 738338840 398945140 484434764 275254985 936310387 730684918 888656551 485985517 568798536 979268954 813301176 321933120 365659871 32266279 61916228 340623415 207095293 634803369 1062418701 273863226 67038043 554116586 1004484412 584456551 532002616 478225374 994878176 785864314 387153148 84345648 791170625 211375904 1044652719 435687125 448815439 662413902 961439254 1065312044 476145072 703981410 367022848 164542383 933002611 604113735 638213472 418978540 659956530 1067652465 353164512 930724800 317150746 404086153 577852103 772690444 947219341 244234902 641297800 208023669 257692553 1019594407 564384098 982742079 745085817 607263450 813733170 507967816 303854594 366879959 1058772465 343679737 35367193 924872477 872132578 531420479 237539462 94821456 222653749 230085678 1018586530 367543374 224909179 880453276 746905626 995596752 645326382 613297583 345237090 1031146971 716385121 195338779 411141366 131358708 927785207 427674348 957998240 956149431 423591919 958633519 724772573 861282978 370663788 567616287 389892795 727923996 395507693 70191201 130931691 190838146 570057531 136712738 157491561 145109759 561377001 773679869 514040742 446099693 839274480 827699869 660655565 702645228 570594244 461452453 643924626 100560795 345594017 252160790 592036376 405631809 513176828 88420557 685219798 121267728 230246064 582911818 898096439 841136803 596718542 972065663 441978293 405724289 1071998659 410168207 1035126066 105243021 997358885 904372089 252920192 605277164 1028682012 736698250 292023010 49326430 769941281 776735577 834076583 494213490 142684153 286837580 208552539 219188128 25012286 291231603 814640473 749618902 548624795 98403193 188002792 599007115 381733645 250348354 963770722 559178067 89152934 1030897614 391225856 733003996 546044851 461156821 1003609256 187817220 671899884 686782368 40226505 611180462 649325957 363199137 266819414 366903522 796771653 310320801 493541317 856172455 619652271 102939293 1048747956 1051915313 341720378 696104860 356268445 281876527 162560085 849601855 434769692 109031025 936755467 288324826 452214298 763507341 658170059 401731242 36854870 704131492 657943247 933786336 645582490 429717841 53038545 979739159 556452601 220069971 821756373 1063626762 24617023 151704130 727812354 26880029 851087851 592419283 1016604083 843583858 537758084 685028600 91960854 588183134 880585258 228951854 313037574 367792790 486210467 953328091 391890633 18440916 1004474439 616984554 605184751 678859511 634233829 270896233 290779960 563160526 293140998 588036611 165839901 784718466 704804191 221255769 403762955 837630169 89270853 749456695 191629890 411324581 8956518 776328411 145173230 282415361 37722160 180830158 83332657 169641518 402735314 940158489 60438276 940158488 12555304 90708346 364292450 738182229 112203302 563172210 1047595109 397211941 617958311 1048276873 935351126 673631391 1005151256 76897533 732912182 688189392 381426015 173860256 172067722 118279385 705439839 73364912 887228120 987278193 754794107 209992029 844241263 450201600 631790687 638563396 641984513 900194304 879296921 619595136 420395032 921389420 86227198 452298458 962548954 103555506 536335434 306017420 584402609 817507590 331422281 418618288 958793429 328765625 152037065 344625136 1004658158 566872271 863223399 792951604 925952149 196618791 944495615 213631181 698060064 932623340 429063457 619555528 259716403 100655366 759271376 1035692087 143495517 709671664 115399271 651076235 618301243 501596373 275208560 918464198 793517525 783129628 794190189 315087415 216772635 103485275 780223030 704375251 871880083 861576076 981160198 583418224 661270104 114207192 1013793624 799938008 345298672 445522600 959487419 781069008 896924809 650779235 418397807 886246854 257675107 93985312 620960038 845494689 145548088 509570139 26958029 663879010 254880726 138501059 935355319 84460484 931876487 826727809 35944621 582353115 1039149658 690716147 176064715 778624935 958600917 190153686 170825004 104894560 675376136 458079568 688641293 939771029 984675209 635226364 724478492 474700364 927168632 524664460 814195992 1038383156 1029864527 1071696613 656350312 626786200 680847081 945121795 278251119 970341649 181990487 260528497 114609929 222631388 52755995 906832663 754905371 466858209 104556295 521731835 449098554 865135747 781815484 524957459 490672050 743685858 808251000 512121657 931386316 549535634 216085917 77625246 871369787 374156670 325934418 912497821 307946881 513957566 135088485 81507980 466427880 818001170 158979806 594484017 341805107 62078525 475946805 723761837 672392730 801194369 21632841 612984595 462364630 634087472 1053259781 156003833 661332047 604073795 851313137 925828369 167702620 300242615 718615426 429448746 529156869 817986302 921368389 197959108 902547050 492140185 31735748 267063037 466699601 680504329 857157891 107281305 959227906 621936839 334405407 142986969 1003620599 981263412 779418913 602256094 748509487 818007854 556314478 124771413 893999724 897064670 311405300 140045255 598231001 415461770 422648124 833567474 580127530 692136978 138613128 808696751 251342759 1042794782 783818989 277052662 802457106 212126592 287874115 849736774 219968123 462152938 1021080356 250662287 801932380 882049334 804406507 343247973 912661115 1032155923 601119605 920160069 1032606094 662531068 37246696 1014638028 436405679 437833700 345763931 563382549 39285218 79647987 1054515697 761979441 2461000 1049843975 202492048 912787042 665074332 323218162 371208299 979004558 453236452 122371300 681322236 555684533 101124595 833945667 51393585 234926266 6982060 159215275 356447082 185137009 577910435 361575402 397237113 266472909 541343009 725789258 1012629045 804335444 514196075 556383652 641745943 999068713 326726265 737542631 773402020 1059874456 659343471 733137295 705039119 559360091 845472223 702671618 506871088 187470489 122097083 280051257 651093700 520524440 592453302 446154469 78871282 301029007 312380151 252624676 44315116 1059046893 655967800 794231059 538465182 471281774 832386310 479150394 425090799 748681372 38277145 648733735 574022206 694446371 664274693 358941566 73817994 673675859 147159567 949389617 879240726 529030891 1070858563 246334728 106530795 1056592038 386958384 381592285 532619484 335220519 1032749737 488439523 321110361 482374658 421729732 672989104 102475479 11782454 288617912 1044468114 430264722 1008359404 764159882 842691887 34733751 922316901 973487085 956550859 850352483 882934382 979445913 675678258 159681652 243463883 945680641 162956487 130851336 185145293 649677324 686874153 480665102 582164704 81740355 717972293 293239434 1054403572 350559301 958493723 782476073 60168415 563381784 744196239 779628774 447165204 759954380 154558853 1010757937 72604002 718466556 507944244 305730137 751144537 787405919 545630156 868184226 285788924 79898123 889066348 97727399 887944762 1051810164 649982001 373157329 883280989 482736824 317799329 623262365 828221874 13206499 134216104 1000569267 744383147 834319002 975346803 414132765 234851598 202219619 1062066974 338764250 44613847 20468776 913954850 768552663 137755253 92384648 1068465382 445321382 253543693 285962432 729438860 764706486 47622031 368311765 491944744 1056382851 876725785 961746718 616884135 12796157 93096997 719529521 291635771 1019288614 288324082 569081106 204823163 838947294 174301033 122751324 155453513 734988887 500987542 356241074 865250447 1024186665 549344495 152118249 944019106 2340227 573481919 288086762 868131918 246123979 1058721788 482323839 128821583 197986944 597007632 480236528 113360380 321327572 191640517 895104760 616570859 937341351 267910617 1023978039 43379293 949650855 224507854 19484545 186377070 730727539 307067869 560551061 250357635 394965608 742131832 114385296 1031105272 465635074 123005164 1011187446 23728301 1072236365 423827621 415254105 296422737 772776062 23872559 451660382 559255394 647681271 895817195 292601401 570274678 936164483 1049255730 664220636 761605894 146705865 350846039 704610144 394495836 669878088 962184025 301273869 391506733 487410423 831632342 196034862 389048 773664358 609313320 687656287 322599749 1070004855 1057626061 485175957 352357210 1011313957 705704905 215355271 119400947 663342027 468370816 280625735 1040869777 270092477 894255316 759657979 531978843 74418171 590554158 80937930 614618511 12979074 641773930 609048186 110548708 550827686 299943844 648313089 496407861 887736533 520723806 8355200 459223124 245396100 392059674 1063407089 436969736 622306438 772620870 648005333 300645556 616805878 778080640 938394045 162797526 795502088 679909422 959089337 42685205 1006537401 399482767 279103849 823696235 506957809 1030483919 627111038 794809131 540885149 318061241 257807107 984005828 541076545 946368576 815605606 769207717 854431815 144512061 877153000 1069561433 838224089 799123669 799872820 141597070 628114995 739206365 538620141 877408715 678998348 525128349 812843994 553346460 571755111 607257678 289230393 880906140 540461254 356267978 127464547 569867682 89977454 171730612 535728510 781123619 1003679449 1017270569 507084170 138335884 69444337 570100268 231661691 60385572 1038870338 218331369 1034241579 865003217 60684091 347084703 887915725 503647130 599379334 824442021 827393808 28252066 50241522 288277583 714270467 508460824 522155774 41365877 1012312345 636000516 674796501 698259488 527912718 38885679 108049389 121074926 618339850 899904874 69954766 658287748 1020220018 609134496 463453033 219790067 501826450 492104007 376232941 225372788 143968424 74700808 229692486 446548065 540367470 936693597 461190482 346278374 310406263 629996508 485882602 1045845693 357958388 554148067 893768396 863700322 1014249464 35946589 56600884 373331586 239419582 193908332 651179796 1014353947 596846465 471731029 93600422 172366765 663501398 866904107 428132524 905938209 42962505 450238813 141029034 418583678 505636339 1003934742 205719091 415126843 89663703 673529090 1063065190 230632781 579644866 92149623 788177256 625677764 790344615 796518956 173367299 855509242 101841037 860669066 406926509 70478748 1010307528 1039113713 1053037743 916348639 490281796 913712112 952814572 652150035 408000568 110377477 500274968 943481952 197618164 825985906 817178894 764956334 197691143 260223290 294032863 766031840 890657409 763671072 300031616 565897047 466005188 662240398 307114223 378459306 495842638 151268921 956448946 1048185193 954866166 892442012 607104543 669168176 364774391 81643523 138615333 568728039 623681865 890294614 66313724 11729511 804097760 155042450 534935969 199924119 288984521 605504344 1051301386 221259758 740986966 692408825 478517143 1034236950 372687133 917872908 816019855 597238141 955341642 1000023437 267185607 10403105 1056632276 467187211 584518581 101747008 827291480 4804481 133192652 1062014739 406599145 60253520 579214331 382218475 1022992063 677356088 16192520 78793781 928449441 923713407 449633368 38673528 181862121 898523618 787249507 355156237 610213630 298097944 336088080 552620681 504206745 758607969 1017639848 637383904 455640015 1013823003 56110189 154739990 29531534 760689984 608871005 98986416 473944076 384605734 445015121 105023320 73627559 638891003 760203886 129574188 469632450 652579273 252911139 693265597 242813154 792542269 742134066 494134370 300398873 878241191 1002488469 335850561 206634695 659690343 283066807 591091700 349896590 64396207 364228180 22674637 482522548 224925764 29698461 597396312 1046847167 579366981 593672482 168229538 542805556 30484471 222745698 326671435 425215700 322974333 214675293 288153784 766509734 1017985395 281064625 456857431 597222409 1007039236 308988485 21998939 173928178 665206235 1071799358 546862232 285731328 674495072 299252450 998205990 623519146 922224627 376310530 823632271 12945610 259823028 272495721 119364451 293973280 211447412 547286078 879435442 76322227 352816270 224398429 136138717 82927605 475014392 1031314444 937432305 946802102 274323000 729048663 728178909 614776184 36490955 69485934 487572237 192368095 532666124 1000976645 656163180 275626408 558248053 819032957 192195465 149618806 216656539 548282654 514202982 34686726 129451909 700843263 319290779 712583245 677697719 235548095 1054214238 183814135 1026794109 559563121 147560380 590870468 253756146 915691766 656705594 851083264 755480296 869611325 223366426 858976531 434669038 280247394 628015260 1035152119 927205556 764540433 677162258 483192820 296836900 513631687 917639627 619551114 340164915 915918438 468725795 290866400 849052462 650568343 22817829 130008775 996489679 835192161 486822483 811237294 767891041 349503665 204229860 781900263 903105716 677908516 1006126485 942189440 307203178 470606153 217849205 120702555 549197791 690393680 957371308 197394423 1038392598 31507521 400435740 812847467 805348319 1041285450 753512384 796191866 223210923 466612170 408795962 476294350 24825558 263343487 773131127 910084636 395181111 646303105 27568629 128494311 189529337 841876956 927619721 753630967 174582216 288208148 393807376 378548555 1043312610 330932684 561020135 555726336 343325307 769072776 321558419 1063079017 85107285 628454550 654596206 188242206 919007931 246040155 1045151042 826940226 161980698 596090808 775231275 239783496 575070934 203456979 516302704 961477989 1020056842 814135486 1000220719 299318077 100765464 875657887 401454061 252289662 292469506 509755326 208689830 370887013 480030298 33252528 297036079 924999438 931531176 456698089 123419711 453861601 96290637 10286707 760717021 168533483 129101613 1061473273 433117484 194047559 614274945 982640756 661119359 516513464 507867739 962280894 138310024 478505964 515915280 1064750357 117344713 215641947 333094586 974570574 934058427 1065869748 879279187 938039006 981009834 417555183 168406056 138701165 851430277 367458232 990639322 483067965 302452314 544083666 1019122636 601355145 278565675 550497110 303560220 633772968 322826186 190816476 912702340 527534301 1044276029 593479185 192010850 700755738 792074411 407233137 285742690 139022146 690381561 689306554 76847989 1018848634 393241764 898942469 905036147 496300729 276684570 827696106 456976488 718548535 387081782 936674001 371144794 61064571 313447936 235028392 497604784 562085987 799036169 63040243 344112969 458670903 1038201748 837906688 574506993 907306044 580953408 1009106598 1053159126 898753348 35535044 90177760 1041873535 402547559 629143731 402133466 195055646 408399615 744723741 1006731349 569391816 867651363 871225619 454896979 131332607 219020053 616620124 272258662 138978056 1070563516 418722083 351381469 640482026 1034485960 454728711 1032445416 696976721 914622882 363819042 63256709 828542782 692764681 241638470 484057625 727598629 1029314383 843704488 1027608377 661237118 686364441 504396897 655239542 630438228 103138004 727792100 368125363 79419401 489493863 129610181 659982108 238495863 1039456280 598044024 543853779 980331886 549709987 1039920127 924072320 512542339 908522472 392045212 689533409 403982358 932777358 728512534 85761249 329177782 943649530 1016444898 902879250 58399113 818163447 88842744 600245480 970397323 756986211 176472427 424878437 743435183 638033011 34516320 954283454 329286610 334987498 1063592939 727036050 19171402 1039906899 945580147 372684248 14732856 866811601 1058949560 254210117 181727556 512918869 1032239516 1006543718 787977673 381840153 322796520 285972789 32512541 738561361 164936287 878968730 21197525 203741296 251325679 716508318 460903075 588085050 678867364 420780057 188181792 792837200 113386890 815811257 120201175 148094645 273888723 705057791 402176735 400925125 69604133 530110033 147679005 94687838 758534856 980266525 305967553 894983007 752530969 526577638 958778725 1045719554 698374924 254042587 617509603 461854704 117451492 800964292 596708523 849367973 958543655 350816865 498215617 878598510 410480317 288228555 639808990 638915652 525483989 212631 1058709429 537877808 969366654 685893593 291890735 272628421 47240329 946454844 287261245 985423686 753569720 745497111 323338421 926312538 866725599 139507367 523328627 385993028 618737507 447110833 88952616 340645079 1070945385 29031467 224769902 606570277 1042906864 557991880 408857453 865383944 536738148 428809417 723826738 446922011 800835528 598975540 204577614 396845222 19554394 479263229 873171291 58576479 166151538 993090482 1010486790 792766114 238988270 1047953639 675577904 75392438 1020994748 100128478 231756313 649258252 853553912 302097597 288363209 454086474 704531109 952068153 921690635 897215851 649005376 600475812 264860861 1029304319 740176347 90423204 957090244 204399181 722656851 919833195 916582022 208474556 714553707 646691927 107207769 299443089 399409441 962235608 167769135 1062841189 269225530 1020275032 114002710 174597599 356681607 51013554 781587811 806795086 100587514 739436642 753296682 117153910 718939620 161776486 1060254188 855077199 661457359 553836005 981190646 227527095 5876600 914222507 294532507 725077935 554330004 483593251 777644977 15578002 95297349 94675699 313779565 867117660 121809906 181412959 237147327 764782617 449532892 402972126 58623342 851701847 402257605 655114252 82308164 734788317 592092721 749437891 101668389 118667616 82159904 686964862 244865723 452669428 420206883 636200175 577688856 276439963 38479691 864087095 1050718239 802169484 920004211 898643409 3046096 8149083 189486884 266551660 708297500 751588287 641336670 216636538 361774542 376999019 657636119 36483292 470473145 3515982 341932433 882614351 442145610 966029415 397433461 951635911 284933195 591673377 50380942 795819344 335170607 767490322 355240523 416436553 878326797 913070897 833722165 379337001 416050893 652344557 778774858 222629417 311908378 309153895 177942644 301579552 702036834 1048676472 379626903 10928423 896131137 813487229 385586716 16397143 237291277 388436519 587747177 135611770 715896470 895100068 615642540 827536920 722836623 1063879419 623118013 219698531 933948176 407341633 578695859 282928173 639678004 265010826 756060788 508712800 516383454 271967228 752275825 671192874 683428179 327347343 373394987 956494902 756981280 844654530 998227317 101722709 871423951 643467626 650950498 409146541 439645013 974188301 811182945 757498680 333039177 92064080 362136619 1006483349 83305367 459043666 540523458 540179545 822177120 1011400304 549463562 572830550 467032823 770991260 910446495 988416291 514489030 11825380 197337110 908363962 332596911 70739896 898103986 743916568 1048023148 398317459 523409553 712695807 652403354 811136181 1060463539 331900799 412018903 40077635 397456962 7084230 770374 30339935 181499477 1033568214 1012000017 669553720 696296645 5121170 265798822 590171361 264834064 244215146 1045249905 643850379 857284851 779706138 840436203 1067156275 750452064 648240798 289183977 801440035 12575229 607283416 352167263 1006233577 721947634 77164875 34695728 865674470 668584459 21863373 669082658 591409593 357834023 321669926 653510510 1001658138 498180937 92236999 1072603396 204456068 19752070 514974269 34733775 875383417 671695851 506171859 11357991 213520870 463034147 684191772 567272981 1067730959 535481902 651046805 530539646 81289273 489649479 586405244 898947283 817034412 158826973 131663227 711171601 892311392 652864267 1031224288 418891577 591594553 54387266 778540414 180879031 521872571 278932608 465330043 69695467 59719443 618918952 415165204 712053454 337943957 449246902 942544611 327451206 745809380 39718854 205019473 140750688 727177437 909457186 344387695 956187946 827420279 711938965 485521859 300401553 576499210 838328622 226817418 145074586 83394945 895869442 611447355 581677231 683244805 289490359 66928594 271513040 530569444 885579619 114387322 645327689 709852380 191793565 28115123 184830600 321566871 630541498 412697016 1019210859 480074832 512030841 888847112 253077823 136563303 423519011 550955009 599133238 781156674 586827687 395304282 94741639 336738820 182735713 197440553 175881612 973828698 975776136 890198808 167801550 910049271 118579089 195718795 133442747 788908635 648898997 578251768 206346118 153040794 381162129 296758171 728463258 361838443 357919448 506427897 433830072 194300551 562307400 912068515 683703731 711802646 501602909 372965419 779385418 927683103 264125591 1073623411 210563505 1006872184 904526353 995774451 857819923 593166668 638753900 99872631 921796621 40589953 290057899 470866178 760055604 459542714 781444855 521660426 168483253 554887362 484706696 392264895 431014820 305537720 555302916 223067131 790250618 791935622 276160939 769759613 1047657927 820381264 503834707 599836723 193149376 615816708 700402238 68887802 281140893 111893808 85919180 820102415 649836306 441655840 783313159 442459620 1066182387 353176148 719562781 530984557 764686386 576843843 1043948011 809283968 191437804 831552693 523474979 475641168 902329882 298396380 905677716 545292989 904741204 40591837 706514527 685586593 365616783 206635084 1046770383 763824937 842135448 550499292 750008224 143319458 1043944734 851889158 610203099 656660637 112112512 453633554 536176318 357186599 251262520 650345015 694812298 352672654 115322656 916522866 202269514 827583098 803433107 586779697 494871249 591329527 841061041 326360395 1053213085 567990447 655849284 610037540 26880557 821355720 211018641 191831655 673225738 873390065 711014619 540896961 235558295 836620324 1028702622 433869061 929865790 782954432 423256611 546293590 1014316520 517100754 70718011 118350310 766958286 148188832 81468434 470427264 402195497 105285482 4952070 41883233 11287298 334063734 692285139 933063508 657756086 783438018 313449186 818456379 998689982 177318182 792292134 407523413 660968883 813340956 719200727 794994005 1942244 1042301235 189903059 498101971 960859136 116115524 961384363 328608327 521149842 522882177 971048745 352084192 826165535 503275351 16551630 842884074 721429746 424811584 706794414 822052598 167651387 485426155 37986015 273633315 118272163 639659943 385393958 966256022 308138336 701057406 289971925 774446174 37851325 375100552 319463723 869336812 1002115245 291617418 691676485 24855510 323768295 239607553 1062792299 448711377 67941132 476113624 322280839 359388534 850169808 223426499 139635987 757563343 295689260 406752304 611252757 59611330 1044386607 276462096 98284023 138412063 919833262 595636843 116795205 1066476167 897825099 598009089 830422306 937741674 359002270 5054330 505316604 510933983 284765938 597885945 310951812 504764321 913438143 139530216 384582031 657901240 900546032 308191569 345225998 481365116 432706034 208365028 437110939 31235785 407499400 688531245 128497595 985241366 1037159856 437189376 241294581 426572647 623247756 113049118 615029883 153708585 292977884 584522112 89027424 166514645 307672763 670283724 71149314 776245750 383772693 87502342 560546596 530933777 952115497 492028638 1066034184 142461686 141110068 437762672 770318594 193639734 840588178 322280834 161997074 345528260 150931823 113978724 123452283 751394727 753199180 1003809687 157730716 366397065 517242091 291152226 4618031 472105839 1041519273 202826090 511950213 954724125 643515765 44308899 362973471 188611661 296658292 851230260 496574075 810667627 782711143 387698935 1045891870 376361526 688830338 453753319 263853783 853100878 703870496 338496105 1019646397 803919685 709434082 230017759 920824774 194894339 467300446 761983044 353753537 181417195 231746108 432998666 65253733 360969752 159281781 596424217 122933257 1073068063 163923816 719129138 800301484 410648546 209042732 1055236859 699055835 613585809 745290663 760448024 984671694 742529521 709200249 952967727 731011384 260118364 338294019 589075447 967800447 130435854 969752779 176393722 767500514 886091980 288971363 462992589 877531957 282601905 141337178 282413295 860656208 332665292 61258886 200601297 432610500 693060189 831926780 1009259409 245877620 301445364 841438827 913865832 1004799109 72033731 229982458 236732416 719720054 987537317 875820512 423571826 763959457 1067229293 250973881 221553872 953563766 1002923661 150492421 64041409 886069127 830693367 587286607 265316839 640056481 884253160 37497928 997172326 787845475 715182826 443814575 115245460 637597899 656652662 295638935 371357338 196049329 1044766101 147913254 68907360 958910580 284135796 971733004 211518756 227619608 569153846 292903366 202182756 994107085 1003939433 616650713 753781409 456988847 177541716 18537821 562972183 591174607 713178007 575185256 875933851 751690123 1044543298 107619685 493253427 704401838 432134382 996164178 703993716 563814071 396760017 340386084 397998253 252856650 1024912384 806930800 117373972 44812905 385919 598136319 608114164 1043770666 767817412 749015721 161863263 274576189 737409739 597255953 815770793 469199063 277832942 810955577 228083585 964228410 597725548 356951907 981510034 631279765 925319342 541603298 752536046 242848500 793960476 248948704 506037657 111789811 551004577 992190795 961092500 843295947 740039699 612820678 865735158 188815450 118251386 168512935 980342812 717642789 204757284 416834559 360257890 14844710 127794654 690161913 846303186 132438010 190589286 324805163 772886532 425504748 1042279781 515963322 431190459 1057950641 458996921 719163948 113021373 629738043 148991864 253323918 899366868 898141698 723056087 862082850 302181408 806285382 85626044 301970455 311779085 479962471 615012566 735502028 774906616 362521587 10435854 452425926 745009378 739020406 620848939 430391810 260669510 352538157 269453935 1049882305 287536517 807543186 854421760 223384621 152503180 838950974 1028849967 658959842 12295363 71788034 707457500 32172050 748785159 1022044484 1020756789 241188153 153964278 441747174 191885234 517346984 790507625 341363200 67347170 589738302 244323061 885730486 456908946 860919988 395267945 523268659 7793865 61454565 484821596 485946564 386425573 1006820379 998702106 475077354 412855347 598992241 481872272 288920693 783546212 90556079 828745602 461202369 578293308 652487060 1063009618 498916064 555251642 831268900 459042485 343024085 891506870 887724109 1066994821 266769225 814502320 388773868 649285719 206963006 732816262 13999318 1041983012 689742846 960055330 861940288 344444570 331170524 703629925 345408478 18260545 722809787 911872905 1013468538 634663345 734472791 610860628 692205295 197182530 22442886 951578169 625649095 192064039 32795446 248680436 1041868574 484433087 790756714 833530184 310997060 113650282 604417394 1025789343 259622903 677115310 159094308 330368508 216054680 390994706 989046830 746227650 370676932 962143506 1027581390 348958674 2748410 524634640 71637633 813038640 672934949 241542270 531729421 567508353 1046601027 330337775 800049259 634160115 293498540 681690257 819312947 702965947 179548091 220303652 975789424 166894226 654581485 563678779 683789177 813547342 872869144 200066565 1059732452 747993480 1059766920 138501422 993158253 973289358 494902 373363719 668222150 991749798 106381767 676131066 859663873 981328922 553206915 285351552 540062432 316502898 760725049 453074275 867187534 73095288 147762689 586188593 544404864 884126649 222552641 897856296 151409521 485267148 234703801 750092898 929826800 189597592 388720336 974554624 426750019 407798299 963343610 1005901356 646592545 542487268 679613314 1006289022 379945817 840771316 379088587 922760547 986362067 76509529 114906208 135696266 236352109 57404451 389083829 247675642 701119166 742608808 679009499 471642427 610639790 611348161 296745186 411369069 852563808 601062521 1029810518 732793840 134112916 31239770 340008601 27541011 273780521 745762485 488433660 410303273 929848580 825842300 477762445 45132490 668526467 821043909 456438526 245379337 477561038 978861287 10665522 140151784 863294420 606441617 531390293 28691634 785552697 200949248 856628593 700651426 54434905 801524572 478760687 688482751 184452751 787905251 920572575 870375103 251894272 138258810 260297486 597787842 476281163 921497375 784464126 83559661 246641363 956949276 67294131 799941084 731697818 185817897 267328519 137627655 240226251 451737490 210578238 982559635 617056346 176388469 626024997 878865865 84344996 755254083 415859073 465467058 276251726 648453460 698176145 510166006 444311836 811892237 675390718 940361731 434166801 31692782 84730930 44652822 935106955 819176213 47361865 250927762 140205252 863160010 449922702 502481417 999460337 994546796 71504578 505957965 1066246033 945552864 714147270 362252043 309438934 630894595 530048551 512633393 340771595 930823504 497035043 54146629 709060013 311889898 1056344926 164803298 1055707104 81360932 1018715817 375131722 502868379 254621467 613467419 943284185 434328435 159646042 115445732 884445440 894217825 458066225 662793155 250835836 411416743 325137568 723489219 196431103 684833262 1057592333 1027450655 660402752 9658418 4075487 260635035 269338558 277833357 707991825 723713964 695834294 433140901 710237397 464478927 478889335 41021829 115443297 716948807 576574975 235725906 351200922 824244841 283264071 877197173 640515771 877476117 748439707 1004207913 569121988 769280238 983238674 202007789 663473509 1045618397 788238405 484718306 203250114 639117536 25420285 288357311 1003433294 189364688 47225112 602907801 806985886 312507690 144081839 351272406 400496850 891190550 489721378 226262838 992088363 783872757 1059287447 400682997 558727671 66703446 597892164 211831871 896668252 571619400 792480148 714007605 678471799 106371063 434229133 935183273 319985899 115421125 494109747 587345022 47215764 348310291 947684866 483851386 457220974 238080669 531973483 77005433 641794999 16175175 781089245 262833890 786491146 901484316 938318689 590206239 551881878 18455954 275207737 497165420 104208447 709591217 864866472 702405417 414114604 137179989 68395666 222128478 1056944889 509952003 262965194 669659133 801436245 406744307 144347608 328773759 708004993 174642114 677569577 982853787 327330359 373450334 525357195 780984133 583833084 587555805 311601299 202404233 1067572628 539105939 75081030 883242592 60971030 459837210 241690471 196839310 638249013 1049390919 28467683 971041234 634916871 306917186 626802281 132505779 604365656 683540689 270531259 559047945 272190761 540959878 1056103818 418422817 898163768 835889163 194436969 33372356 196928140 812535744 1992521 345113253 748681494 1042272343 288710939 897489101 61683379 677404230 122861627 290950640 900781132 1030780307 436755752 143772485 1016755150 674066983 1067017552 126896726 8370243 205574023 317098118 625272341 49292073 161585177 357236549 974323127 589876128 791014454 255266967 1024506787 459950522 1050180408 48132395 992395169 738902894 943041941 371287295 809845396 875445764 857931573 1046959691 552491876 643253274 515135032 772808912 415656543 222321407 419103625 373606211 1064984335 1022621296 626096939 814365751 730760368 66155284 928343760 4561743 160048880 802891210 762366326 150596744 273309309 789008695 129794085 130794714 18941435 676787659 575175604 939979958 697774300 816706017 1035098553 136279238 66966401 717287504 730317474 730355098 426561654 3700039 243181697 191658339 337960250 144379861 649183263 186233565 871561349 759499789 891002071 1058209163 490835178 876639877 1027135192 292188942 471462711 643786957 999477524 493676511 657460049 866685977 158654513 944484205 675835652 983347063 585746968 151796995 702763993 534186325 291745033 367738022 593829334 312388802 625361416 548283245 1004680572 14756137 406221945 1058118523 696592315 2360404 335468906 604768223 782434704 736157134 898470272 233234278 582856258 94749381 472909664 181817790 809585422 723988902 569858502 889513516 111626881 564853950 596502679 818173228 1028536805 487498656 1054774067 61077908 973552893 968824074 86605103 486689426 892915031 1064203542 915183656 467350149 67334383 755390606 548493957 21449329 740556763 877795086 523382046 995725073 281940941 813713212 1030225088 1066960593 408869335 4806000 379613724 197803549 873680909 769904978 265171542 1025389482 433149495 62882663 533106498 870403140 990416843 741304421 764446631 476448951 325702374 949933818 531969070 139884284 558304038 515782604 1065040669 556346636 1038394460 545103259 663029695 458415061 813743073 893185336 11510155 96299030 500950074 896939271 323128711 782016991 66615884 236891933 327257257 302151645 530389940 897771049 703840067 267832053 194546168 344569269 786667658 517153659 14435266 1016836839 645168944 209585579 822138399 592486230 506516141 98956847 862276514 1064176413 168820912 533258034 806604915 202105615 871879683 263083889 87228856 707390748 754155113 246802821 134934635 329266512 217607285 883786270 468741812 58756834 347614791 429261299 128202570 580002890 248934080 351455796 121388094 1055784931 27520624 1033343178 809682326 152343186 414359617 15091030 375095839 720207995 148636128 226891792 120082320 847609990 189130507 612450685 120847866 705097022 949712169 7821719 35794782 972528376 640588111 948425750 884929360 51319351 236680008 656176233 882578618 524471710 11237704 29075135 703855078 715165609 136025242 475600993 809633270 1014647597 713379835 468544717 29100417 469886950 615297770 158346892 71807114 415909875 1006620800 218711462 119441955 632474077 666801809 727044163 493892066 222848008 776299606 693699563 796746197 148596759 130355841 530796375 684177956 337863168 330310224 410952172 1000137092 93774833 249871733 589954161 582215062 533361458 768989691 265959674 820108161 863068082 446497976 166666687 433536452 482219659 453229774 982688276 98735208 740284470 133236280 208511932 316988707 963316464 792595411 570169211 48041802 339053878 96587493 49970123 43167240 898566654 841303730 632089152 308611216 957349656 938870743 733558641 218156767 906871795 746385542 695746382 1059391424 318929920 231437825 997005412 419251567 158275948 461874849 891114534 1039780100 274217575 48168966 974244855 465891317 858383914 788473073 758702636 238275382 390467230 140867446 60202168 779510326 345290206 566253489 282827662 776723003 715283874 533597820 798341816 113408546 574024877 765417663 880623531 1048461174 95855714 197404271 727756851 374588755 849464286 253375058 923417502 596426359 572063832 677398314 724022896 813390956 1035672141 649194490 500809120 107988828 242587393 24058287 556034900 659456143 3708995 812239747 815076467 509518719 338601956 1023074857 221267893 1064782584 341694268 972889758 1050664274 176035581 173196428 930041795 173626826 419532522 517126321 392983742 90446907 73836598 981132137 133988052 1003707116 309623356 1064607810 797248087 1002363405 1005865189 607845515 34821134 1029035309 421137668 386342595 90295016 797047126 143765645 319849007 900178247 337943285 802282206 106405339 525095776 430304737 287140725 48676875 452518657 625466996 452684909 488130359 292223229 529817102 730971182 81839095 422446986 564477680 692936028 769647315 165296880 591675896 895176644 300728077 572551718 596084844 260030306 819757570 168131843 612835161 836403049 921953498 81957634 470248579 37389240 683169238 228442081 829781844 702778424 99848779 206963603 514637915 381160582 652912945 598686980 984251047 178928993 108105700 508926908 1064584065 404301819 294505582 86320281 257124252 235042811 108681660 935404403 922067256 480160835 953692362 832964264 873246924 1071051299 243327425 363726164 289680662 697025100 639092119 205318000 708897729 548344441 211580073 32403904 806505319 254370380 527807887 190486920 358733337 471590203 134343118 710413188 417024979 661777523 370367321 902520915 769823456 248471161 551681733 51358603 114364394 524335680 935379231 746267614 17468961 768562427 129287461 955392169 846918724 762930794 107265059 629471189 642326227 306377493 598786371 811629564 894217449 320909203 735821301 270321766 236268923 693512673 418246182 865839912 798477680 659328781 583609262 645171577 524208347 574078230 540900878 203995665 436974777 397934527 727149867 243023255 526602910 811911587 987404119 44449776 485069697 533526097 623840784 581497906 226411549 335545809 376795531 755526329 229734957 140853256 504144463 152114875 623275272 740978175 552138614 559706779 370137029 266444941 140475434 99058192 627045500 1039569604 871527431 688201708 701435 433524989 955793903 361332486 662726447 801910900 694185958 747198630 193172637 756914784 424303389 110450103 365975828 955458261 838435718 784908243 672874072 81856941 998056857 239805942 755706144 941613613 494885318 880918128 277423626 948628271 541115476 230862496 451461766 556040869 730732712 708040076 320016414 478037648 38594298 864236056 408243433 258104255 658552225 117487149 127132661 89217989 638441915 264879582 704790357 370953822 474675668 285438272 721117038 731768971 245171195 876898854 465645459 924217822 2970213 963383894 229197047 483999339 94737016 626912532 376978356 576609437 133311733 970078297 111983074 398544837 1065643540 1067704942 212812493 269129060 517184456 346287895 202842876 227301215 963967375 914565781 272049144 752388013 220647170 500666677 859784922 386509559 890906434 988993922 291891184 966306177 321284931 778957400 952360673 926751142 716997326 753168159 829665400 629280168 24848063 150651934 945178546 506760352 582604215 345531663 668241571 325820258 335624019 386293472 531026584 278462853 794794629 555092167 750384791 403390952 603848728 306852677 883698461 592840308 829629239 735739610 594924766 465272060 836473088 304946073 37807685 98922205 908596507 383852257 306540177 551013824 904508435 960482461 401393624 367529607 684007960 149610493 116691381 140518605 225438620 110771110 145344599 39015279 789028813 364599035 555209129 625295201 314875236 1013474693 440084569 1055290725 438013153 82393000 724697818 777873709 404107601 206722410 779260942 579909124 588524141 1035544503 70053816 259606266 364115532 511096650 639652932 370973100 353940792 868018548 184839820 679641112 445303039 441244484 948993592 930044731 650625582 505255059 543028088 724715573 961198004 511703920 711132769 275943793 145988266 59741104 235439781 621061430 814560677 844699987 868271299 318578229 642762073 967501263 30594497 955557388 611649712 775380266 267051004 959107829 900957163 730549312 793637635 743320366 393055497 282270837 101637551 1044640100 469212484 315893850 613807508 282214571 161611513 869756121 959843448 1018515884 983010317 614333585 862595829 71396000 3448881 591196632 477610097 215368010 677007241 1065377317 692570260 134266863 289497668 198629646 116384464 472428488 229819905 77833551 337677380 705382254 183014519 942580712 613775017 623036905 246138442 585794939 726878602 642123368 88981662 464439645 934092527 849470265 457307912 98435420 793049070 16471690 102179493 122575001 302884788 599941322 237212200 1006783411 1063687945 640997034 615570836 187349654 170378844 1030794865 297981261 839005207 364435899 999713557 814884964 856476793 749997404 44392310 778459569 434826929 639991084 466150553 31884499 267996546 72128987 166005898 804066561 953238274 897822132 565582719 623580993 767874007 742789865 568832622 223780670 831601182 591802408 183880924 823247342 398464832 393024942 949724268 911925078 589086338 837399924 212917862 270636873 270999128 371581814 584652792 730970553 557648365 89456708 870903666 111442089 449440242 167112826 126078686 387202820 231362127 815586527 526111344 863595244 320257447 558974738 1044713058 809451841 31647890 1035863249 934058379 836431328 115624615 1060923624 171944332 964227121 869105414 678537361 745473880 728412764 740956533 190055714 700028320 191444808 190258202 32453341 370220244 123595183 653465386 722980933 425801515 401759015 1006654461 876258382 617861653 217206276 510958321 994348126 305312666 364015641 375553483 264194519 63906533 216948269 806130579 162045495 800043888 55940112 177445631 541019514 667414866 118738657 1003680413 189117355 988912508 377499838 454181435 335936310 167829939 108951696 204288525 913174509 441473647 788920161 474714640 723994931 699412198 330909755 836118686 933082000 287159657 714139510 937916849 829524442 873137130 1072379048 994157660 487028685 788415782 442463840 585408901 312143232 239306212 247256942 303246162 383384108 59465389 769208132 450488185 289978575 937498768 1025083607 430435416 32293205 859917897 268236258 397426937 925446659 667143585 783933274 755692761 586093845 771994996 1066542541 795598723 566251726 568974663 528611594 247615792 4844658 1022987594 604157727 613919871 780468548 387706236 443769527 976907858 71854196 320582535 868322776 800875210 898746787 791434540 344935780 910692349 180753824 329051904 930528527 419271985 899671760 757400534 296630084 559918854 897871969 536251524 596255173 330695401 704685964 892489885 926118677 961351034 591033156 576982285 927220362 19005664 374949841 694871180 250128250 94949752 995377531 569052696 677847601 891420853 556503173 330174459 483448770 670485709 71932746 671927903 847337388 489528662 770572972 200368673 423416643 750594030 851163279 773848464 976501230 331490673 875539450 923469129 596210158 584929239 421545220 798056038 801862095 708294861 510988951 981951883 655843826 750878651 72546673 84465904 991503949 983330322 561614762 238260511 894086828 682885356 419722516 374537750 59802635 321156223 472255095 553780843 966296685 156147542 472985079 740928717 941818365 929196996 740354575 432182992 585971634 334414810 746862230 304012040 789762259 523595518 55996170 602502740 368036360 869567685 451613806 713440934 400319500 490883483 566068750 30894683 397583901 693277815 946197617 146673187 148648007 45023849 236999183 58814003 282332743 602381762 848741190 737508244 519934850 239691804 1030873812 157223580 844208883 750646128 772985701 336374204 184455982 907912754 377592013 161902483 28802849 561162273 510833224 667366427 27256056 389199253 811216701 564795878 15487328 16113622 219103483 574936558 788699430 186628724 933618700 135144620 436303125 92260930 1032426139 555213010 500656195 904059911 1072302686 387276551 144713195 49880139 603037975 159335592 470768545 393320910 653580430 794438781 278143451 21324558 516301677 986391147 274047278 271144922 670299587 655378330 374056674 634461564 421891187 120955247 157265493 737848937 67647796 1020454660 527674976 684472486 372398535 452597686 632051148 329364604 531505039 867390981 782440781 233005582 1015976433 676753537 272661411 422570437 949834726 442593179 111475633 442327744 968194465 271930816 231487313 207992116 662415951 694307927 808966406 362595108 194780907 856982942 104936145 145829653 764239915 54279807 73884926 147007879 994555409 317345995 213932722 126823037 700217519 507804756 1057631417 275195098 217836107 758282773 73423274 437838839 324041397 170513849 15720697 55906564 174578629 532801947 710071778 244649933 323457188 705976568 103873099 663247224 633617441 930877838 369821329 518333126 1047697720 314786664 205516277 285137600 824742047 535242648 195759311 11259842 647728177 1035418971 299386288 462348405 685716928 832245955 627766440 13156217 646349098 1040937678 95596992 212455601 526330591 169517982 622431815 662625108 554970642 486699932 36513906 594567989 231956510 1015134812 623757050 565632660 382166284 506491100 472406570 236075405 1069040189 522861871 802849967 808582823 866520961 149224573 69172102 145867927 162140219 300684343 161196457 623145393 98511636 366396061 321853994 323047568 474070126 158692922 827569822 973611509 1062979104 756522380 19431101 790487456 859838597 449181937 862747758 902670477 249412553 936954976 461345689 147534212 416334510 898978775 598892762 834431850 861106052 203599020 243097178 276003584 724655436 545551085 856881875 797741093 11279343 619052279 603153014 421119907 656165307 721259972 70570721 30879633 806389657 382659244 792539245 511123597 417287109 68318385 477191166 336355357 408959340 71341635 841913161 167285957 217453155 227753298 439222042 54904230 735538308 614038003 811638185 840195652 72767170 176586183 933240748 292497635 300982190 327804603 792271956 294540007 816530386 794696349 482578483 432015549 798449887 4415565 308326906 847179568 1021057742 464711146 239591655 498457809 594222777 439495732 709790123 642198056 464589619 926198181 913798984 314619822 828763808 615831226 459116509 966928002 212251999 534308198 232655483 1059936385 110904379 1014313758 700299405 444397541 725737340 379726161 877014974 412484931 941934570 747870443 475972486 938712800 720006635 348282145 358234639 855469773 154274018 986411737 132287613 194095798 172132602 957698327 727938426 254480635 348420358 360899567 713883937 534718107 796868118 600988021 680434830 781037636 835826298 594487382 962121731 781002436 395549352 98342608 129753433 623068822 24224116 107154336 362940648 400257264 850260903 784459597 711872443 196954469 424295119 6774284 718545165 48999030 85270485 794467537 740674428 782137514 218467980 162796843 290863186 155880770 397034903 65351724 745905385 464312049 879996781 922305708 652857934 1017343410 3741778 699522860 990673211 382958018 719604273 8603208 403487751 497493014 92883145 583868888 880146926 965277034 564214497 576586132 237551098 853560692 283233853 173297499 930215206 326984456 268857943 263343500 803140657 900213755 440046307 282438124 402213075 130418190 600087005 289389800 711337427 430674957 194080755 843076907 76817137 425303088 902470410 18781905 829925068 1071516072 562349786 820436384 86121889 230245089 790116173 17686050 998536226 322062414 345730769 746497459 2314130 82279760 640731325 713472376 401316033 688049161 1045076297 443173977 99375980 256796670 895026091 743729841 233620080 345367719 978313392 607627867 862176159 319110480 901701194 828388907 964660151 510116334 541161050 320984696 870023017 575737543 424792887 27536831 407991701 1070439492 149135177 692388318 656762456 695525044 695089459 659125946 33713614 360450895 176579020 598954342 407764291 797053136 894524024 905434070 280770333 220828313 14734879 112790782 272978143 1048088972 425172277 942082860 203550484 935354945 876050463 425153415 839694798 1019101253 467939887 742486288 910642427 952435370 567823829 1050906085 27203233 959893514 285637324 628652634 259891817 503582155 350946802 84176560 129262831 1066100680 95525661 590995888 22177017 150630085 238432867 942444042 419562882 310738408 359986209 541942731 928996716 192425952 334267786 267235040 388871658 692428633 228543257 235417510 114566560 936025886 77881286 832039974 145061733 941227925 170509060 569018437 732397711 350913636 243315467 1046231795 74401291 915079938 911825262 100269864 218162583 350539106 1013353474 194353665 53431773 201129020 991457971 257276269 76963409 383920763 945211856 886416569 883404778 495239488 1048161778 971491701 265073597 460772498 618365919 720913823 785964566 319736024 362458151 75921058 396440044 424952024 961458493 879738754 851732314 885065810 736257332 778678914 285784141 304904551 459098356 265062469 59223972 287887008 687215168 168654426 756748140 474211519 893386882 699728754 324039606 356551231 1030419646 168032418 834590350 415916842 327138489 699774961 74709630 613709296 643503913 51726505 525933155 488776955 144743714 504831252 50302449 958275473 652290865 251332798 305011329 157168214 229149009 662116808 349714188 716824744 3412808 1015400287 237456511 814746456 947525573 551107854 263296241 716293010 376172070 962264764 88473374 319352443 235380521 193699781 60342610 633694460 247153481 593706749 668354144 754869489 696534178 117040975 5039787 113473840 141271028 35927939 175634370 717039084 15159151 737836814 786880674 745166798 1057955384 855145118 711050860 762067946 707014840 963178850 541259414 1026826617 1030756304 739955028 952958662 494808974 1059223464 873456703 431245976 1073574728 239377178 1068054714 392361712 296268399 914312722 1019420451 277994268 37618325 325330211 170734839 470020032 411779612 987590789 610880879 256844260 864624181 541034542 411381319 745574898 313401052 288674387 268662834 175843585 526326041 169930997 688739706 134149552 500405709 432121667 1050788118 13461658 1064156205 44498306 641000883 433132122 911666243 556249996 1034596951 1004563859 805713836 738359295 1030192593 161233817 222966192 534813994 529925724 489138517 607986088 970375942 1016696921 844972447 1018750873 685933652 797553917 595286068 539449794 241731565 814855350 150003435 781990463 392118937 602548239 533937815 699466738 834289196 68049501 445536464 963132394 677731342 771519704 1008081492 949742215 467341631 150518978 328680887 181080564 301404917 1064892690 946225898 340776093 787215551 687449228 618014869 369305509 446310486 274487927 361911469 197363827 299195823 792114610 617975332 148398734 257154118 820392461 535328802 833701643 354487644 823056890 818197409 1030147009 75799523 899532497 821450175 1030450439 95900195 879645898 397366224 1000827667 673412980 847723509 116183871 794156268 887065635 1008693390 710227031 196160001 332847249 961119277 826936681 522727247 748189713 46907250 684582376 151824067 409201761 373968759 930235303 421981864 1058948042 108886204 430774655 928470910 648555633 241203781 387218373 311062958 405369901 489229804 294762793 1044609878 317423776 324073097 1037504365 262652529 641768973 129931129 569622959 787325967 84521609 409572763 1018991639 1002633317 642666568 338174270 82094571 336159346 404923062 942877295 619854435 1039954290 943300348 387367401 5072416 391234956 420576964 399691451 840274458 984718282 358632739 779462771 222940640 994618240 725468637 404851182 362810988 647423336 316608498 199798946 210488361 881997435 920069039 353455157 999564245 559240431 332054542 329071016 6590053 288927085 15930245 931183818 766170730 657887740 364282190 974990632 369868078 672929162 520792981 860144396 654990977 601457962 88307480 340799519 1062641388 751175616 1026691887 358233200 389601391 667312911 975086981 205183717 358375693 184629467 575677824 541555374 85714212 883008459 688316924 944913045 156603859 441637988 572311320 421064983 967171384 307887704 777476694 130919813 399273676 897897041 992038402 677491235 946310547 1035809594 5474270 128190752 257782178 544064316 958472767 628840726 414255259 623251507 1022144116 609298347 744758700 949055662 106401632 616627886 828930819 257552707 231386494 1068575134 592032878 518638619 383797300 861668875 183782450 569075590 73083110 800773284 944960039 599826791 577236326 26573040 497257584 417001090 568403497 699115165 445816823 172731378 533282158 67874196 228596311 928466297 216639496 965514152 941612455 875955813 197039514 227982521 527228633 59268626 1033542506 1003558751 585711596 898932150 418448352 658902833 719235980 606436070 49661837 963372099 301810511 538978544 468399596 928933674 189010536 12987651 706582853 49671948 265212425 526856775 1018464888 610566042 247747855 466774839 362171326 1063669499 752266351 239059324 657668780 284861832 604492501 277837556 555779374 1073355039 203797291 260635644 954677989 713870827 839668932 521994977 141216336 949652092 73794703 719222325 445608500 16358702 1048112323 741132487 288206247 609141629 665920967 672837442 41210799 820318730 865496763 357756334 283858095 321748062 339207406 546569854 842186255 216112722 293814912 325049851 657533738 624199118 227863039 886435100 4239362 834321195 803474498 320876951 713390448 228563214 395402936 635526802 121127754 595872942 225160773 205621437 640205252 391333262 744009918 491758660 427281518 932926198 951458880 90383225 23246951 278391518 397351755 148339100 44703392 661901499 303265711 174524310 113575683 51582569 551490451 394897378 846577478 668391599 419020815 664569095 186378478 702621743 755147010 578079792 424930516 384025293 439078919 769075168 503249728 258901271 449790150 644620619 439054626 1015998572 475968355 186376492 766246514 559445725 719413025 753494048 760824895 468461963 696630554 83001096 598636648 747767025 563106125 657067813 828147921 841006119 843546712 569396837 372274655 106625312 921218032 199140321 772059188 60439463 400837949 28959658 92155947 707535944 802456242 653072505 45579057 743104947 183878458 796158312 324005155 1029896062 968550296 742111160 542280264 719450680 471514277 224724715 206593198 888179125 582141860 938260855 142168389 574741267 443148833 822845021 297939171 837800774 333248739 122087051 812914354 483825806 826500837 411978146 115896787 570278962 567276555 247468937 827334379 150378345 418549306 133945791 951786374 840639112 816876099 533279993 79051112 349426770 787824240 682728849 1030296411 778565780 316841488 431183573 597110519 391913658 964111160 41495212 609736055 928097606 707887533 327498233 114799440 486776433 587491794 220683657 773953917 660938969 628608733 960156712 862975263 34549878 466544200 609037610 839231352 967685637 381885107 727694272 873491999 137166387 427623015 543938161 698753756 315847597 806903963 791473496 821084389 318738530 628476877 115317331 721136240 469491757 358267144 590183801 342765780 217296991 616398821 771127885 462029961 31415241 728326381 38306900 468775919 44650178 386011155 700810228 322798077 268055296 487094245 318803596 578379424 897825005 432363011 966627793 322076630 98515590 498050360 525790674 212065586 374061890 966789411 515284301 14035825 622713141 191414281 974705669 139808176 828023361 828510543 569927001 431559469 921349765 492965210 917594483 1070393633 729697141 592039564 604410396 724741097 677489660 871679228 848009602 765606645 98484289 106816054 258938638 203201517 235192404 148469256 1006262823 98322574 812415404 147024728 413101783 851659002 983289508 772953879 22666360 889388759 334254953 277133428 923388122 323691240 1048673162 797099539 1030026769 798505277 562701170 1056202508 696697891 958070374 529463076 849639181 545763949 402141519 241048841 1014679799 498123905 309021800 329265022 507688988 510737301 659539140 831434778 596143338 139301383 902797931 832715059 764225225 301646444 875028194 623618073 52210434 83422408 132760292 38471287 826643902 435934785 294154528 564906055 763482251 200112982 1020325827 379535975 152407711 230058417 968735917 110443920 358030336 188435306 359345716 600680106 799985904 900184993 32372932 7472494 512534581 565118141 1044563806 458249338 565091849 1008571259 552515558 638516582 562382962 829886870 967289238 64066565 399316057 247244306 505461878 130122705 471576445 285229849 245862455 203800315 706872806 324277461 203628418 417072148 424186128 834083420 828032898 345357689 769880825 244354375 153471100 868050587 124086374 860723219 836945684 196132769 538009154 896342172 477181340 510347771 635496933 126546276 990231617 586787954 224025131 806767851 772375269 11810948 253728801 268672926 416537757 482180176 393756213 612075407 66113617 632936953 586318215 819949014 222829146 369848724 238320065 84153380 646311848 849077287 389267122 860560402 1029801022 86753693 48009109 788113910 815995834 660278529 439471079 381486519 129962161 920415052 74226885 686617351 812927557 920349674 613964481 674132709 943067732 435538044 669889772 795309393 1009330925 868993602 567683710 297640113 824997305 275801433 858420844 977498857 732595755 153908166 514378997 216662617 510455522 731105045 653500428 51915384 882052298 463862874 546428374 632668233 202181362 387360752 165159174 892131646 883272325 424320296 276407544 578457819 126204792 248845564 731058438 723635031 997632239 988757086 553207446 263071110 1019918028 199546749 707870297 434616686 683369203 196203457 719783538 947016888 104034583 441336835 39206349 286904821 471586500 551027049 17853661 679985739 744337962 980964320 987345259 600525054 759603069 897894828 982687261 485111217 1065081376 346668077 1073452989 618798189 1009457161 79182946 744206535 467289350 446137684 872908249 154226704 852560565 584607954 1065290257 959285958 201581433 980466711 477250433 709601453 477254267 676147913 502119442 99319081 478116996 253390017 743141209 502521525 892101853 973528428 509846731 710275973 731696911 325484556 118787634 285014937 795277490 801850251 741573497 495871185 929097023 86920992 351912971 678979225 850924077 1011758358 846632321 531918041 753537964 149522646 913982859 689293612 32148728 1022603546 965162168 895272020 72443969 403240257 114417842 462221087 844525348 462049965 219435536 733525174 814773429 14548563 309470600 509894894 124890668 1035612033 1005794449 186887022 180821236 544644974 762216004 307469441 457905077 958534149 851416511 526953375 675351594 472428309 88511935 532362845 616616916 272260925 418482400 672049749 879128274 33878893 796225506 378456250 249920738 680391134 339144864 323914128 885734964 84509604 339779346 1069196382 564608632 490097541 365248931 504131321 89085569 504986604 484671619 979426345 605302221 160076823 887079483 133570632 725064033 262965336 544732416 749729069 343125464 463834664 123913821 493986243 329086833 195589980 359407135 411115485 119133178 329631287 635614138 725952648 482994685 848228884 1003114462 528718386 769407015 23094379 558267798 267084416 557546560 611445283 818546310 409074230 204801535 251689381 359540266 402686102 258992573 434163320 787510639 1038472 326010429 9592938 844041769 972408846 794446823 620418793 1023744555 716541176 630429044 452893168 470555388 701269406 830521695 465682931 75126034 549108723 492771655 400094221 688647385 554077215 74260088 837994905 555284024 648813477 412708639 147333166 734735161 908977869 898264201 180778836 1024814251 374172125 964330340 114102503 764372161 474925595 784861759 543687130 854794755 237727962 995318540 371469662 941940964 230844296 559691553 817596432 61119105 393302286 796519495 677744981 599556000 456968678 33804693 1061192456 511863726 500678817 237528671 271579655 336991956 1070786995 391023363 346753096 1032452507 633131277 552926611 652148436 817412081 713745300 968216822 1006482148 969118537 862952865 556417944 743497109 68000150 336127548 184279478 85619890 129981543 870115880 90743236 23431044 667922854 650561534 128395157 729345988 800181831 1062711599 145837419 595405008 371125667 278895745 66165812 595332438 616078445 163306890 918866686 474007605 904506040 74388276 48741632 912614490 488169635 491149759 224582254 608073283 505432645 204960405 887572431 379333325 381602024 420257296 187100100 312785884 831375015 51614541 326453534 329991086 93421317 957382210 995723057 69893391 951438105 677518803 128460357 245426103 347077286 820460182 925978926 181750658 772777993 259257557 248976478 115028859 742841044 453523153 961773496 489831065 42490227 757231238 982972801 80244921 577619449 120482181 1056587773 638999646 599791517 381794482 928663421 727412911 1016181708 237720451 265509512 1007014086 669786559 575973762 252076602 39481539 287884554 752788410 360376371 588672440 538638371 411315497 116091275 981185204 840264583 1073187370 898099588 65917008 333578803 529230224 94243979 67228054 897484252 693477887 709328981 976165953 314779307 673450824 792637023 876469597 908393041 670933518 643851602 648233785 1044649583 785581682 1009554114 210763338 359964283 211879295 748653115 1005876878 575634089 531405402 885270936 764915980 240197975 940851176 804537975 147026216 755595223 977895532 174525200 392534034 640718728 293120282 636796525 518435350 187714361 766971013 297384712 467117215 798626503 158082326 711188350 807651050 213295498 187072921 731071322 742403902 418514123 36293016 520217583 810478438 921790782 92025872 671470018 864533169 214747193 919271904 150487446 454578420 566405778 606488697 365698750 816506348 642530151 1051357076 484615865 936195798 768537445 1055288954 848703375 886666610 327348429 1007223868 631907286 995632927 485320970 1047258205 47564345 229187105 149144846 229746727 356110951 496437520 182624820 1593910 25868801 802760076 268599637 967277560 900432724 696408916 68867282 266010198 409363369 835521167 731581479 687353117 469972869 863226927 571365147 916393650 162888030 861617886 26607077 1035750812 840060753 825754810 721704015 13474519 940736568 153077239 625040325 162843307 416636239 353535632 768122870 928336637 230865208 704063833 852504948 996473172 911929092 922969559 754997116 1012429996 1413912 229845590 712867846 713421794 432061811 1065539201 857248761 297808503 820438363 444064986 721069620 306215121 29569705 876516992 595558800 788708097 675412550 22141840 109231129 121684532 427669461 867257077 636549664 17197820 126958900 203664822 379237460 992939876 671425967 416023085 480018032 624313104 301861972 691277989 712725845 682847366 445819216 488431906 612337767 420297691 783500580 557623761 919136668 379344346 993752631 486444364 278397727 680361496 612905944 907084409 1021278473 504504347 545692953 914017840 820242726 971382227 547900565 44014961 284029680 211058349 116792074 203027177 229228758 597712390 708626892 216751933 896488118 60084480 183265872 769999881 670389949 676348692 538833358 1044634027 861159243 915176543 760551821 367661764 130747672 36772655 105967991 977711448 661415785 649631263 647715525 250911396 40525704 459472487 304377680 304330436 727741076 600163936 419922719 855976625 371734448 553022616 329418960 440710481 65950794 838451156 453169583 669492003 509677767 400490799 845253069 1007564151 937776503 192797921 501522245 307287874 137253241 118734635 764013805 68960185 688561231 330584370 261635372 448656081 652419560 989741820 898080953 653922934 731635270 781203971 40938741 560573533 29783585 736815827 978804577 834456162 930457273 878406578 973272574 606165847 304850517 728935740 974755555 1030434695 497580104 799110822 176358750 78001879 687334403 812633263 686304902 868939665 1065380883 596712375 746194299 859288426 251531947 724622295 115256589 948436003 345901616 263993269 990335887 585014569 690563613 311356233 706456201 294713020 478627565 88817988 655691986 460812278 614329447 396055138 93497791 473681575 361009486 755201550 1021756185 255867801 952893010 274989266 1004327649 1051001145 455375199 790860462 694135183 1049964647 572566091 302802530 175380800 102927914 808754545 599985297 964817994 582489100 443748169 769139460 179779038 327500137 850072119 194253990 678790828 25099272 637781194 767671578 577060489 571623963 498552750 602423810 672167928 199823297 971947056 250624157 227271166 27774028 797339622 941809283 44184916 360985580 1061455788 841453458 671839395 893989932 998624152 369651947 294384436 709391564 880626200 1003034729 334090233 1016710914 1054587562 1008805654 356348502 1000654700 972826255 680961470 538938869 350053275 825579908 78438531 609513335 921818316 558055519 427902113 348392958 475763683 775247287 860602188 374969669 726467694 367006591 311288699 571943959 196833567 921639710 330032121 800454709 1060601479 261039 980102185 671277107 166846222 583559988 141033056 615905836 715261197 400500342 146753102 360645068 1056149241 48897518 76230231 334002872 418435972 877349806 605380975 221654031 53165952 112239711 217093084 414042336 230671160 57145481 868242291 913598982 399314962 650034973 270513582 748880036 766613761 745024264 695314255 542149888 753498488 587999262 510265771 82457727 373027057 467125055 301944959 97881228 1025718776 474846621 347902696 770089757 772668780 637651522 148782296 1008642690 805756463 819252607 893619577 848640103 722604021 793719503 924839827 1052745817 31533682 887425185 827821479 29600524 279071998 233833366 567664920 1036471585 434036580 651549461 143371019 936416547 495279245 401310009 9455217 43838868 122450795 748951963 511294897 995403846 556665194 23479025 778850090 820316508 614696494 212022121 495130277 1054727 298996230 385218575 952474184 183094646 628831299 213503322 648979437 12682694 376705944 1048269482 620218353 480233634 146713594 709185439 907416780 739201156 139815906 108003033 851724555 816101364 184807472 743207945 492973025 515008090 257937603 963750428 926449851 265746708 476889939 826768060 920641989 108548361 398692036 851724132 186556776 990256232 871770350 902387681 627064586 381256634 340907947 1039047010 929527469 932384507 501154364 506109041 261149212 561687589 216451194 182373960 890814526 419431028 371430758 336759821 763435586 609523454 769059634 556829629 838880838 576591620 685137537 427973574 615677719 991027624 185403773 701813254 725243978 742737998 903218979 559096824 265196431 472034975 403630669 765971035 229167190 145861496 779939289 129652574 935427862 986244584 280187200 399223972 390196399 786820621 1046322461 963316807 453682235 903945731 931646918 128581102 563982466 872708317 759465673 548656678 983686098 774223924 1039603496 640430022 76335694 97914186 229185845 298273595 833294906 795914402 989976897 247179122 935993875 542293575 128094011 224049304 132742312 427567008 385947243 456529687 1049108798 518355288 759818082 38597473 1070912691 763286315 225783356 348469276 233480122 803886445 24003479 1065260923 57755746 707991430 84708271 807836756 805076009 1027971010 712582543 243266369 943036705 986205136 825352841 879556563 164981314 732095418 1041529288 622381441 926627657 769410745 670456585 944410813 228719971 797715761 991895239 149150178 217864652 514403562 311410914 654839182 171467034 1012217830 397652483 234799506 572685208 1021173322 210631085 1061368466 665674906 304139684 967765669 113222342 11386519 68845055 29469965 166800422 479268876 822227689 829415658 610728561 284708532 48295905 813243390 16909529 445277155 23398176 521567852 15996811 1004163768 301725744 781607425 880263845 713385057 462122120 125701151 837582948 487226703 279130851 325075306 346253703 356286222 19577660 834243776 97900213 572611741 431860822 742155222 774920166 92602818 1039182799 176346721 507573046 653589130 11373216 136538873 65857541 211988078 192683563 590963640 77277530 371870589 206364322 240264501 492008625 536049625 1035179756 908211736 944472270 1044126314 214227173 255412900 344688932 407604660 248778167 1041353584 1010789515 56141830 417892593 687489648 1028093126 336257202 1050985801 484914326 1019725336 495721568 558829198 19721057 810989652 685451682 652960064 618652095 139180288 1058995205 500160521 904005016 35563404 629366366 942981479 521997797 1014344907 187292747 259619759 992027835 892491958 155571789 550724966 1045909490 248141108 743370000 870658448 426444252 827233 360234502 65320366 645793534 1029310801 926233983 422041544 592061737 875625840 972254515 135059938 137283620 601917524 439749266 34118757 766400014 371961701 953836113 705261656 549357810 947839000 697729063 749429598 185739983 961128986 226527405 441396590 350649437 574081323 866912392 226265006 256620425 995257322 649022743 34705416 300097668 1012324793 991201318 547654435 791524309 1010203287 30042448 494335756 232199096 570220485 596839653 793338165 558733047 624974311 284402768 1020481655 669087035 68454533 12367673 984162640 106036288 1019789254 251565382 704924939 699096352 281786401 889840449 711885197 718503954 156769577 364133742 120683393 405824413 293143122 62782000 595958167 413250859 185662531 541241762 22822245 792345345 90957392 656556608 953662672 219570987 674012280 989043275 590624653 717798987 1042964410 183486315 437288688 162748426 559901817 30915531 913596238 892403388 270442877 534412651 847751023 571501631 12724191 612527219 65563563 233815944 242737154 354522619 394103852 19751701 712969015 312565656 754968223 854965556 771219022 690813238 738792474 292898970 614979978 1030986066 1013250026 636576568 412205847 912160977 865930519 851339231 102362826 539866078 197883974 313824936 384696549 218071325 361948195 110357014 602031905 52642950 373829792 403023917 1049259317 845234710 220460964 265121939 1012975265 551233443 675447316 28698244 129026140 618332025 244967788 1045413693 168651913 865813842 738738082 879527425 513451590 832207313 708800784 481654863 1047546675 306620200 414153173 166189415 476172542 898979726 391838949 1048466738 583812238 368658283 281687160 249999946 773412588 269776628 887932761 631047449 1043277603 53924411 1059711848 42063831 244799388 972599085 1050074190 355931448 510155226 593343315 851916830 465815251 256366303 18589023 697159430 692622204 198688912 577886549 593030920 358402 510975230 690790155 372215611 387937057 479789745 343402733 120472285 81709179 637914352 177369802 650299580 904613186 376244970 1026741055 352395675 147070092 466684482 377022227 308013679 137846949 1057425752 140734441 1014146840 256566471 125595874 323075296 375074031 634674694 721971252 433154365 230281010 612212980 612198015 408570554 262898496 280243356 852609589 664750832 14834078 117894624 599549136 638667903 131474368 1070799517 603046641 1042458905 1062753504 422297528 339932121 25247864 294874708 748546376 790871976 429569872 263081694 362710900 667023000 490274074 23877702 210167134 113567516 405491141 525132540 102803478 80020826 283479269 853968197 783601678 645559533 474862821 512566466 688277106 685971547 52233330 836395188 219605720 142403840 152101493 717693541 650788410 616604329 262365463 83185191 302966158 936618382 5189359 666671280 632021262 847772131 783641870 986464640 79832146 229461517 386982951 340746549 260658654 808243240 208200577 759874982 844259771 746933015 49220652 77368852 32903579 810916100 554913564 510206514 60101539 327083219 799502130 731603813 567989466 489499757 361248390 981260628 268826402 948249106 1071182473 412858907 312727029 1060875523 846038395 542630993 550919570 843082608 775230983 87182418 883676721 739104604 286650070 73805756 443079217 363901910 154645041 448299010 468690659 350887791 495653632 174780593 330203544 562429176 549569320 229802597 861768083 1040545034 1041782234 49774719 47435730 866340963 142483487 600545678 854832511 284686773 510520915 513517142 994335171 400980919 479641934 224993812 216044655 695513039 282716587 941105569 34844302 317726196 564738767 926394572 678268290 817205729 890272775 1071783677 22188058 719201591 871400678 847795070 857061206 698608078 118054445 1002971737 1028941151 372472519 953564991 925742335 286209676 579868644 65908106 683763857 1031025774 18066556 790033092 489152561 492630629 695597544 588294019 493859023 328524913 104218812 1044863906 651812445 1021304414 672358250 512143250 512295817 515809919 607840632 932641265 93040135 254326585 504123980 861318781 265616045 915594465 887845265 1010657129 167589821 961921960 881605945 681325301 118914071 844488836 44686639 839306990 876982842 425277349 632246275 509378028 355641694 439858468 101372403 968208950 637360323 1027004507 12062899 1052038527 872926898 243660457 821766512 715634010 748824185 199550476 543853415 981023694 782921776 352915519 225901100 72342290 496204429 891771386 994198354 924431165 620339935 900775418 443801633 434840971 437000853 87698918 880873527 53503503 892663975 241659577 913818627 992387981 965188478 534597905 1044532584 903037516 12336500 667177210 92997389 359689782 184006857 566689769 468169584 633837800 263873774 852609601 462648366 462873532 108558568 226526373 400694887 921104977 247775767 1068047133 486578216 344734254 24242505 499254308 761707573 634953059 173827577 315695227 422891761 238130473 130441380 519847870 234388439 671526357 368940826 777455256 811424555 100473078 481344857 442103700 1058429456 979965167 534309662 1052622336 199137651 701375936 192476887 968528679 965573820 270947779 665624711 53120221 252661813 110412239 144680821 437110138 852617500 285568503 1068297143 708429739 783245274 819199899 172857945 60027636 606384166 344538575 14378887 16259982 521511509 290473594 689604357 420603276 300141983 716701264 1019826768 614409004 266222007 798815354 499271291 601278322 1048946905 774300426 923912057 221832591 949033030 274221260 117235662 624287846 429469403 961895198 239474714 664581236 1054460501 652544041 650365899 1017493724 812206608 546321119 629510032 639179670 66585790 64893543 905887257 182029807 691524445 835493430 147713355 643254059 953324649 804885765 716505067 216409329 587361097 802842845 439377735 493918619 868590266 103592705 35354431 64817381 363840633 737214746 998853301 718980998 174267991 70511195 1019883744 138657348 470653814 481579734 718065405 676548827 793392738 235574662 623208029 299506452 835924308 997798261 163415787 593206219 187444204 1004986114 334773312 523951681 1067648593 227403369 966671999 580064660 10205629 129286433 695717690 281999794 126151779 345599617 690481947 594647022 221869524 888975948 256042597 115672163 762411135 595903024 203135798 475031207 39893223 317631017 121348143 382486454 832389922 144612580 853192854 362972950 514298863 22673093 803671388 828788723 486933052 237724554 892502044 1057400199 145643550 964347452 526301427 393386783 458788326 791587779 178303483 250390918 434377553 860847838 617588132 573412315 494900071 536606536 558005361 896851428 480427566 453407374 267639638 567133422 799663704 547371873 50292743 824659945 566650157 532791100 849976473 924982495 802078609 1013299557 395217535 941787701 261977311 820675491 70885356 1033962520 851777618 578648218 916809587 978289613 330213662 18582093 766145801 593071512 670467952 389440621 76461087 981664050 585181166 901290464 275943904 392389820 598319539 249917782 140987520 314862039 743821021 640614637 692564540 957317581 841335807 755478460 974742992 4564365 159406083 733665777 33380287 508158287 200961893 245243858 757980778 209313353 370673288 823714984 321966445 364904443 825650208 686733078 198966198 206750378 487258713 885219964 336074917 849614600 897323930 11471307 956793726 751921940 768707210 164887046 1053804919 95375650 247684456 105615456 56865582 845089246 652051623 61167477 465049709 265090812 399547906 355097830 33800488 19680738 784935459 955957835 390655189 542896798 747906683 416088577 303978271 949212045 942945882 194947150 944086499 506574739 113574558 1051503419 984259723 108383364 574049655 87638661 546014045 60081854 181021754 589602948 311629777 984512061 895568403 800094481 633392789 902073993 991488635 239778470 622118507 247666232 818409600 645264692 755924301 932412853 417951793 840152176 757830462 512501918 534094482 254826624 369849613 990020913 695974569 890270649 211459867 752399208 319950729 39131306 986860675 12857081 414545406 274723074 648394590 977664892 292461339 263673093 123447786 234206216 991776246 786381545 145629697 721060318 391229362 871338411 741514047 642122139 233933237 466909095 245035093 259805866 467475674 902507987 820795351 569341256 966344576 893244993 109065345 640353875 377826736 960308848 243527467 667194942 41742963 260548024 473204204 381201069 550445602 404156976 641258656 64999285 658671192 374938783 349686768 714189338 501780085 1066553062 120266754 657847787 203973713 220802051 86115897 930271876 6729516 102916230 191565982 719099240 577599005 349464241 512761273 205877108 62064550 821337598 800211632 554637368 938408631 301738994 770991425 74243906 306510761 252913183 708274210 567545366 635148890 144994663 961524439 884821023 993068605 687790758 489870682 557218033 983394754 275563490 888850291 71946334 664304261 901166569 924814993 746168095 615797582 92829540 833318230 567576382 198096899 549398887 300819858 1031746418 313626136 1001082346 67513224 517669147 342520444 715523167 288287968 597825838 956231577 33800175 69024145 580440152 33457478 1057518279 156800872 158382186 127137998 736322048 745180373 792408768 174700265 438829237 812505813 688589685 560376538 976773384 598665498 752089604 236171872 461491120 510032684 111100599 647481357 1015208683 262236551 254130057 543049927 155882933 377603434 818105056 682449382 458495442 658104034 763972050 496188142 715174805 612275908 86900835 910438815 769929674 531522446 711015527 860342347 1024974778 1036390480 112936442 673403981 837734382 1022245055 697485772 360068801 453097179 575585983 340175319 789211569 717913859 34620964 947907819 646968269 1061112751 154608116 817236842 710875719 683946369 610175643 656704376 728645397 128639662 761151245 73061459 328717078 222354413 635087141 920615356 775732984 303180249 550650694 728788082 682550398 435928685 683863818 338628784 290983318 988609320 829934840 294556783 945344622 617494252 1004444571 150846295 1059777978 369403434 39346601 980732999 157088095 1047829597 770064260 986548203 57256827 779427097 339521490 978021763 996241561 316405450 758096595 371676892 371231116 61671489 131094640 58287185 563205579 236266960 197396760 375334106 932077621 757814192 23918483 990950462 703857163 237862043 253009591 511632405 423461952 74730618 160826595 738988198 164592317 940164258 809400266 602716111 351626290 996757859 531576085 74991671 251240119 675431864 87117436 878826769 258656479 409673054 863200338 324444284 969947354 236651123 644977257 261223208 14506852 1032085756 77995289 996908215 300951624 863948269 995726591 951945238 1024940007 232668700 331903385 503690062 5476347 180654336 758637667 871915212 47987950 461361644 52186704 497702374 964183665 835114363 1058317976 36721625 16359309 583072136 930860786 1060334354 92372525 226718193 604822814 1038326273 1029690899 343184079 274182001 48019585 714455786 688389794 69828532 113595336 241530611 615001916 232052114 189359438 876043032 370354633 59191432 787435152 610315240 397580499 78325706 89377562 937346552 1724049 442258530 282479526 769726551 297760728 33508777 945470947 1002982478 873583543 373270011 264484317 380467599 670101576 1034081395 621885666 794027110 404538062 312608817 1023584602 176654101 134897027 1031537697 274859204 236674314 727151464 376208040 566614135 870344718 791215690 457455513 1019351380 904837113 437004633 134658940 100413932 826613404 951761466 857929496 214348500 143280276 446777386 258649375 1031754676 151497250 138165691 783583125 778347962 875688472 331018929 44943987 273737254 445811722 608730508 235263013 421858936 594557445 310082261 617879680 993996096 494251220 926500197 735309543 39095777 1045136014 785233478 239641018 399647483 680397037 245178856 619478131 1054609427 682437121 1021695885 724345188 1071901452 835603214 284364005 54671488 850783046 963545135 545479798 738022995 768839285 419163879 443119067 528484762 491249861 898311186 828720764 209049943 812678112 54796908 158196324 966331683 67252760 827792628 982928490 298274583 246031438 738066711 233841633 1015418449 122245164 595774492 414599030 814808400 60437396 137914260 85760742 307373927 388077378 183272373 54742064 281220953 268158798 389740579 669014860 252454186 546536676 593431483 49523441 409782831 185314313 106451353 531406186 671111597 685794101 926422669 988394075 794356351 363271415 473206311 1050206351 409889742 146343305 724727493 167493491 372189837 451025688 929848613 1002844818 815678693 450097121 361620641 864762674 165624150 520157595 684020506 199027287 711785505 4262303 975035585 383341856 114375020 629692397 977926971 575813987 507712337 734839664 51712574 934516968 567577967 625248576 504443933 869818374 174045437 1024325772 24491103 129634811 266649676 607008545 590838638 95357365 739661587 697996553 608736244 872639344 644464075 124620078 756244051 339444752 162014589 835738493 535233572 490878213 229335831 906649249 441145925 374302452 791548978 871139297 290286108 118455016 395334182 101943653 401909801 1027933231 1045280828 799322905 747042345 83224908 345394454 283474174 460223247 969489726 570049680 165109527 29905458 807926467 561530611 471548048 479809488 748215588 528877912 122287732 339262573 946975175 600421775 778806619 722449197 499234943 532476785 554553384 257039301 181270970 943451340 939930463 700651370 52718044 738104336 863083052 460924435 422976569 105185695 711210976 945504912 348027561 338807659 933436058 236133012 61292354 511091878 714809499 650321069 201015748 386426472 998004041 941897738 79989664 912176507 852266464 230647721 772797312 794042807 934323460 917578981 9729430 674876606 1037533709 492637267 122451855 401017997 682704232 789802356 642322566 189454227 50684861 282102926 657953515 258875476 311600472 224610183 979161121 885327750 1044597949 872770682 710174934 476148341 1018023794 681847007 203008176 1047244631 658799287 490146435 963511601 712270141 719076458 1015169261 478658552 352144482 1019083718 165784769 281353387 852292704 135577783 412974562 192835186 315256496 790195334 387748901 118744862 803212148 122931902 630833349 52108542 647482322 783353355 207415783 985945208 572516732 751082385 1010078786 55046839 753095377 476054988 72779855 319109856 620564213 200388778 581525327 755627902 818255503 932367061 13728703 865967295 953604729 466195888 268739331 496047121 702320169 332104749 60057204 544341265 760791907 560102118 757025053 873102906 817174047 783169953 225877917 1011832814 1058681247 392657383 12239199 58294677 94490966 133574555 1048084140 322339230 106445770 722579597 869505833 281099231 873788361 918769547 266499329 732925653 210339903 601010504 164091630 765743262 517267277 151291085 65312069 1038131898 15341547 997635038 927890532 742628394 428742298 267027840 290652163 802872711 63530502 782918898 342711641 878916076 394335823 414660780 398542295 228392993 235111266 862381220 208004712 115038267 440107827 440919510 286630078 353301086 741627997 693203787 86127181 822438217 448700602 436246520 507956442 216650214 842401273 970580597 492064629 159967250 651914623 874611533 753088570 221519573 27332333 266622669 222809406 129929590 1041812842 742470903 5355765 945564878 811038498 1024192189 884980378 835858939 53163668 854311014 784591552 935629172 194483143 721215128 103091712 41671432 489697697 291899631 226399468 114363416 820685014 271874606 24809854 811148589 1037157793 508091291 890227380 78594033 261456312 573907976 942576520 284241453 651299498 551652811 854768781 478003560 84375370 931898266 818378457 697855469 885056025 15410291 651255854 343468283 460391642 792041763 236692080 1021180286 329891682 965429016 222364394 40723546 485046503 186101254 308193832 953572946 423777597 889385021 42305589 584019064 951215689 871404241 1070210320 481621589 534757285 786652695 827975144 386559256 1034236955 616464528 159286516 271020105 11324585 27570805 972307612 269707354 648850290 330341264 752685521 1050294646 283920165 117141193 861012016 965485149 965304044 125286094 833272930 847061833 140858256 448772297 777690334 1010218035 997785012 146655534 117568474 21232882 891683261 235814277 674390609 649920624 344309763 1031273407 698563839 873581136 272823417 860902243 573647840 378811175 505873421 822124607 958935634 9128125 305392080 296525692 854759217 975051753 503570554 607584191 796425832 128724681 54771520 840531781 182871430 408755440 874710266 439175628 1014427356 406009923 993285563 295387520 214715160 529416860 1028441834 962698809 563807711 3975230 1061532416 351776221 198147166 10426618 593431412 336080012 654576043 355975361 996036367 1063473965 781091848 500860279 309979797 674960681 42752090 509144075 319104345 165670111 681545967 3168267 419483932 622398913 532447178 774819898 432445753 679654040 315064326 408756579 1012649572 395669485 426241939 206190122 91602552 1003634040 686715169 94803808 611107335 899837750 319092773 667028232 204609433 788554337 375878023 367706859 481550004 62261060 40223710 486336114 236502797 209552483 512224791 60453529 568188464 44801385 1048685801 952744138 335940567 1058037590 904916550 992650373 579574362 983617016 1050368899 862404870 355428104 592528640 404831452 257802507 1013895298 104478301 558379577 185755314 179084145 382142126 1067936542 173822608 928705193 233773605 678902506 795214821 974257228 73332354 654483227 715380122 107545461 954822180 761381035 819711881 958679851 609646712 525605876 190357125 173583490 379113102 130410110 120965012 271988943 386233758 490086416 899459478 828102628 986301316 648963760 2319091 799618798 237360649 786585516 1008481102 460284189 1048752128 601590951 206351377 775019732 903597664 18645764 682238215 801055526 89485017 993599301 1031732818 302177328 589107461 235621915 833898319 517267541 376844868 20748085 234294794 572698299 791132006 64006002 492337103 127015079 497525215 663325026 781208632 643942897 906607600 80681327 560860554 507373613 34979985 583867034 791408387 636974457 3000737 208858206 372801095 740522167 860034657 334722111 184677426 475235121 650320622 658038760 48279778 784957336 50542404 124595048 808546154 640879331 115265602 285938130 215067625 498781064 1056030197 10353993 443734880 184470607 188270134 1008701112 251719038 598929415 545274294 385296070 278173050 844418070 789523471 472484480 415122222 840305932 504436960 814232739 210998772 384189233 876725239 453020320 648003802 248349570 203761875 133513984 620666825 390586921 582805196 86532676 86099287 905055737 454375183 115723295 908750116 796633780 457529758 111030634 701102298 650634560 863521426 590311111 112730530 677540709 221103402 891382508 676211531 370947303 1038556210 264998083 861464309 356664567 321660711 556107013 497901644 774773493 8476072 921743961 546595134 718879626 125166241 675619602 937474326 946183196 293994413 381896020 419399648 23055854 457489983 442468000 647524124 105153703 1063854622 921848847 190078209 102426539 236455123 790809101 116232772 67318397 428822202 1062203340 403668453 187526683 467732316 1003076430 504150992 577907939 352037016 206048126 830686074 408485652 209521966 300089087 202219455 326950551 227157734 878468932 47829382 277641966 201718156 832726627 768488216 686904642 180348836 731662273 267346338 190028109 899712501 295830264 567125071 741882232 14379110 679792678 83444322 729253247 857242919 395791561 268815042 441458165 156979323 248629390 793739343 751768554 939072994 614313945 830560893 813970182 65979324 347616061 449752454 898812133 1063844438 766019241 110882083 593250511 657313830 656511865 941520251 303098135 129189076 1047492173 779261969 233395909 116481105 996493793 989426228 461165423 651783478 672888666 401902526 903834499 698193630 693748656 659632173 1021668157 586359517 1059263326 775326874 362619057 168627149 673831553 712403739 107881734 486327127 774580338 497041935 256481286 618096279 194267189 57212214 411394365 609711236 1049688570 680217808 372191613 992233376 569005983 698344716 91340076 581915485 696825836 356124521 283333156 867939416 161981216 1053449515 215637561 706578002 443946953 191148142 193136643 688333244 605475861 1073572088 153483534 369432790 597306797 285831627 950695030 242752022 55676681 957618745 556492906 302583703 48197139 794731192 145544074 353532902 830606015 399035228 937871786 732223417 912432647 715296203 296852981 667579237 672450337 675985169 417792844 673432019 595827858 201895664 294821329 892634682 622051754 255118573 347592316 812734093 264336446 712059115 715030294 987955447 114355046 67651284 110127768 625038734 755740995 415189720 244020703 361059194 686494705 689788657 760709918 646497835 760360050 284519375 164792206 1030637908 544967613 601588174 1047181173 997988978 1017618323 538322609 128560068 561687274 959008896 891151085 215894460 797569789 14122594 605692482 90394995 736353273 634077743 102760735 284479598 11501177 72803382 788625507 694656998 133548918 951329420 997044389 656486295 322386800 971071480 979736742 307154124 969277110 935711241 123122661 929658893 795711015 665199352 983166114 927840849 1013291547 873738881 65982569 544297362 923357479 66228608 720770917 240556053 205445298 697792011 690356929 455410686 878624921 420155434 727077232 604635370 686299917 293919320 268721236 563143539 441997660 1055653696 345672974 236077331 913282103 958375502 1036108571 997015629 534978085 683194538 875317081 639882609 933181045 307323766 195745702 33121129 94841448 556736119 861009840 1008947754 744128407 108817475 641553134 605741057 1018059719 478779195 93431598 346533575 11815721 814205174 819202823 212035635 933668101 1006583095 293746662 226790849 328338808 655155359 957949197 291076671 67635681 795049051 714602864 297716545 543120650 37943975 199050813 203708103 712190199 824732790 46773318 957068018 560488367 149873241 1061745214 3400903 835136541 152524459 192540526 49668736 501501462 662916715 848629454 389999247 441304934 1017539777 964795246 46995296 823517462 130481889 504655557 882394419 687342226 1052563059 984287228 501653854 654145850 248439320 316203353 47324479 564273980 700139909 33301851 838811370 344808124 150859128 233701070 214779853 629766096 684565410 556654667 23242087 964696383 589904914 854420400 25701312 852249636 792398056 318893717 326648033 895740658 828181691 800475703 823261937 684691356 465924997 593707824 963880809 1057778090 972243626 228268783 388646246 590562240 27573457 426566367 439157967 237211034 355468879 118271161 315488144 994608041 1030978851 563912151 125438852 458584157 287945544 232274793 651561646 975079134 664721118 145905376 825807637 943609609 804393742 714685861 664279792 460338951 447473546 283077865 12798074 286570631 710732546 238346225 450218867 901620676 285819887 269093053 185351536 275858988 995833049 683734409 711903364 20356745 842360071 945215978 219957374 217077370 686838399 757220297 474502977 956340766 34790770 571717034 468417234 187277986 84091230 204074334 76599053 772855619 191595 313177529 484956327 888727766 692615228 168525914 447611697 132241465 763436802 157135973 762984487 971860875 11089858 837698226 141997240 614920649 805408227 62209536 838065169 156267863 739056286 486397338 376945558 614111400 587077977 135972485 574027412 3565950 691451780 680209194 450977715 229059930 934128854 250629160 807276378 826944695 751807595 192598597 236736446 960892683 366238608 96334559 797726684 935822013 367465548 314444604 241213117 672036375 1057655910 552643735 1029639504 858774998 465276722 498619499 6184927 1063766953 620310552 17584027 19448879 980600351 380800682 85448180 129967849 463324817 910778114 84153792 814654161 57969600 269063581 700979528 394567911 997273454 944190566 235753468 1024574433 226742409 1072415218 299082341 165124507 111978649 686072322 961253052 726810833 792879668 360001864 982370221 1021531070 750786959 996389116 125484404 892636947 91532525 716905435 789251500 1042047632 872646911 445379391 662389985 557397067 214846279 92389731 940681570 628110834 362225662 1069421510 68110959 731309314 289096861 34509550 10346124 887015365 742209934 752844197 395004090 390235781 196187714 200297346 864854520 313784216 914369607 378645509 197171825 50450797 1029320650 140364415 492591828 917046844 812968430 560428031 810168984 1047706474 801976862 80310045 1015275287 83794503 130873145 222734483 899721414 722193926 569044938 539430286 992964281 147417111 160276110 140085759 643616600 308244801 389040586 244213567 477581642 103967407 530168961 1047096716 277017813 626218024 816952709 272300420 832019721 469363074 63584665 676125787 1007465218 661352341 724360957 1040980739 47579380 978409198 612036266 103392221 143080327 593409348 938752553 363741092 238709782 902767648 404374256 965540660 847399923 508037148 647586168 1045080421 434357911 647362200 894174245 640663458 148218630 282116393 637988526 786646114 321867068 587623095 1054265591 346305702 1060626729 968977502 919673390 458349387 255404583 885340933 809449500 186013960 924704654 834341377 715472580 170887595 663903403 166209252 761521590 73812645 492583000 937293253 715927329 355446857 50208344 93644294 938662116 853478425 134288856 575465037 335956268 810546869 428329487 767918257 715332404 354745730 202542035 731194382 203184131 173894165 28016060 40933844 122269298 165907145 242333243 10156918 884870731 1055485303 228571597 837474208 12615337 950301932 76396000 854255512 287930560 900978457 164612938 158024559 918610776 1055747609 543257598 466146027 466404836 708992045 672793297 734355596 44118585 1033830209 1036592944 537300490 988673687 741117811 937380171 616974692 903415192 925703939 225088163 157575493 861286845 313507301 454852022 550239490 585867426 503278770 177386544 835504308 157918165 970994217 202626769 959882902 960392272 398136507 393638921 396262961 165725956 819259747 57607013 728067782 881340367 494445579 601145948 658390063 233143381 364992710 339292262 885275740 760167282 842233237 156859480 450209563 418856155 291867290 1032424839 375952179 442416790 829107328 487854928 102417009 133693057 646860284 902819642 396487002 744894704 933579366 155710319 306896046 48959478 583541948 736736282 951364679 776926953 984859353 797895071 907804317 253033896 693396111 819072875 727813941 151741124 43345824 184687216 426495386 481715330 580475316 823753524 155244953 462912624 691912093 1069651987 606826773 786833299 1027485908 327704102 588626626 156434077 283618532 841964929 305013656 983218089 164728811 971477686 903570736 336594540 531081471 494065928 323658498 598847317 1023663517 249790759 957919297 133698572 442478611 577104959 2229977 191088264 115981013 906027980 497015658 91826066 242801767 86600437 1002177257 544046245 859581856 60967126 12572739 78071106 596515551 612308132 414048571 260603359 680739850 167448782 20315593 285732027 182883756 688815139 508058532 1016003244 305850038 5571917 974944005 154567790 751687129 988149596 181013841 669952525 939851067 933019507 828409816 433320694 535886382 812546943 734304845 351877214 981220393 813963752 197340291 408762345 631590180 983164604 877243524 871251310 379919571 501942620 453624564 229537376 83835257 976952373 449773300 903454635 885218985 1061149916 100446985 65369510 31600078 605097087 7380268 952902690 55578517 620814468 174002774 377727546 1063594676 671449100 424075100 1026677266 174019057 995601490 459791473 998239331 251989466 273231505 716277848 917919094 260051548 685056800 425600909 467734568 885051550 299407730 219701009 54371386 696646652 1073123805 76880518 236750152 662292350 595096989 512976834 1017242767 269154466 869802143 396025100 367608471 245170196 705128791 449012192 140401427 316552336 980184080 516283273 429663598 811816129 896852713 31956097 274484299 762383706 17372362 763687216 760295111 649609308 549638616 713777619 527188214 428365035 387577872 3031587 954171819 346434596 905478747 948243761 35753132 546251645 1071385007 235563755 4508398 735813743 171774776 238334761 860629543 862585371 454687718 464722244 148304936 100670239 980713804 869505137 547193905 751102561 613951399 750931306 693526132 697568833 647997108 70472710 1048560991 591827261 853270230 10041282 695664989 334431606 442523724 142186726 990476577 677206185 336514519 271961311 162202165 969743645 329250143 434720617 214821934 574408815 185628900 527003676 900253682 194446972 871383302 760261952 1017278052 517229825 1000694714 526173856 157631389 152389797 818235094 599579656 880495911 397712964 835412632 991062240 555851091 837625726 1051794012 106830020 325515402 1009570852 398913595 843650008 462226745 805812677 631130996 402025310 938540087 637511018 975656432 660457017 58432107 279367885 646357908 792181821 243231363 326821915 438964296 636837341 951971327 556937017 729084310 655871659 64748657 880180564 908291477 865644835 975205785 203050413 144836034 967065096 265246796 692471924 7965284 486770061 300921590 49431983 139433305 414751697 39460791 1066931559 927990627 913346917 278311070 6288452 96144027 512190178 217993060 533616310 815577130 189226988 386266426 737125572 701557118 254728354 350021203 581756841 278649115 826825136 830169311 685516730 70239373 541084695 1020741360 80646860 988455965 714448448 139864104 691512368 901847885 339239962 306535252 257764335 468742095 427788223 69249471 63719987 53010805 618160962 307412079 967318340 438616191 723212083 222066678 330712813 279612936 908819970 705495081 794414093 34334112 970203709 373602969 32834621 715717842 455613260 291688504 532639058 713455956 709458938 536321874 428519438 478396719 226889883 331115550 293164300 32853070 450020679 559634512 247454912 493794492 873090666 151534833 1024779855 824015891 144546996 987441850 645449212 598763893 186664628 351929198 275811512 937684075 602167844 316382714 103163509 422194827 996170052 185665735 423108695 429225120 343142114 849291325 713003444 759752099 556846447 834437203 64494047 813316333 138623631 648968663 301176760 1016168812 393680224 327273551 448265809 989056131 662180139 502469399 537251822 568322822 726857703 838496180 538233608 57656521 437618583 931662169 591831378 881301766 1003608976 782301055 1008770106 869561374 163243655 85355255 315561590 325863298 975762783 663289432 525751489 905729518 700671881 76461780 405944536 348896281 785318295 541949368 222601637 531996483 691937851 166059104 933073866 486989281 941988735 176341113 276842140 709698323 660439030 97122636 1039939 811896923 518319749 1009774770 682620716 66753277 912697761 448618722 446913321 552568722 447427601 763126854 21012929 156855723 765655106 791873245 874587887 856655975 1033553764 614740849 838198670 1051842026 1010437638 541087008 623563838 771255794 991665491 744060088 87635394 479517537 894452110 888035275 755807681 99800806 1065946189 347711420 176276678 855864637 685226147 90843969 511503413 430141813 762603404 354830223 678498431 105307439 926681838 1023717167 46152520 379115729 762176070 994697571 340860653 207123471 163402760 30524250 400298414 670379208 132925812 251877356 899528809 524879120 436672207 935554285 545125627 1029152590 866595437 755794263 472707434 143745820 86202388 106502196 894558572 436552473 163821872 788131634 353852603 819693523 676184939 549907510 198822503 138752973 470907641 1027951568 278037348 386501804 193716108 126027545 319721835 725244552 750392914 609648043 909127813 989170519 1033341117 889033736 730579459 432126957 583072789 742109074 114635060 859170904 31603505 296925622 831963097 874372295 322862898 363260455 120078718 514994220 374670752 1044686753 955905214 510497457 948292438 95756699 741492884 799829792 376065117 344983930 176010026 980112316 312921173 624980794 19343527 442789305 772533340 445418747 122240353 1017508431 152506806 154017655 760437109 315585355 697005688 68360874 527101966 358416392 793088314 251993315 462459095 368337869 860748661 970764595 332245806 278822952 124933486 693443261 498359618 968511212 933502004 494045392 918135728 940221330 552026864 654610379 239785361 180702416 291440938 508405647 702559091 513212657 389092428 512930433 1061169646 224108933 218284885 383539750 983030628 1005381621 408939385 831667332 453404836 55938576 947824417 875174845 906691926 448731269 706841589 329746460 518558176 580543597 488037274 152730871 107513055 256815021 495748836 396511786 1035287082 461501656 765046584 436448538 360398563 848291487 306962941 793397780 73412397 1043012043 812750918 159787529 356871910 551146258 601371232 448347702 899062003 40987375 571887196 704981879 836852865 292808983 978734053 443325686 488795272 725502525 763954883 748100474 923564990 245682322 1046010250 966674919 991125558 133263787 976229635 538626452 704607288 759472809 461367574 273830891 755234631 94877732 250441638 958420150 631529792 633299599 155677072 176253215 717780582 715873040 250316568 308347401 744134536 692378401 776015339 327668883 743546596 270952829 87213616 179655378 963817125 939720025 490740301 441478485 418399135 901605868 203649409 640006971 170073681 196751756 491278526 437165062 662950706 745209671 822627485 420693752 24586226 935105650 552855234 179495784 936371794 1031907842 1060516616 880763401 1063289766 586427759 29650116 476105597 262865655 151575533 406447756 484606842 34416746 567405599 1003271727 209161007 755141555 552138382 328018546 798773167 671747999 1009334221 663275543 581005025 343907127 648621415 503838064 184257710 224514095 412651387 421788838 662798118 913073642 975799427 774242216 1066842290 107916257 326005337 771503616 705751223 276713473 256725884 116923586 333660766 1067283901 506202209 738788646 81744222 474724917 1016105070 619443848 14971981 9427192 577166123 139924605 301284912 695496250 271711860 820658844 33136762 149463325 1060980701 458961942 842596540 764941702 429509976 565873253 640560735 348542016 537633060 920885563 763065052 859187441 58936992 477078041 153355384 300960876 269836890 582754659 121889046 130263011 589026644 602364949 609278934 789344075 145211641 554058853 974245238 946305851 487344298 151699943 928212780 102888918 5772756 836305516 376312155 693834160 706624376 928731674 217792425 208790350 1008334104 246905803 173385687 513010629 526726575 184243499 762528383 725585910 733919010 462620434 71856188 594826237 335789935 1050790062 402189440 705681258 402028240 881302372 364533997 615654458 90525830 1059313821 624220419 634340619 289053068 148952459 505966799 774740901 353690313 44643786 841130315 70787473 33354253 812415261 450485583 697918758 833390605 861055500 905213170 490184026 239190724 265373083 1062925027 572777652 30432834 495100894 1069217461 881212038 207253826 482971438 735613185 677838766 907728178 304870542 200415625 697589815 577196722 507788487 410247727 962135365 1048610580 1008712562 267373247 317978647 374009552 6944487 862783383 661425237 471881709 494699247 913133819 795979367 627241944 1049050443 287107424 605967490 163339734 314553927 721362703 258217654 597646496 1012500600 1072651918 1010906553 1011827338 572799646 659239711 84994734 1001320211 634853882 126159772 600074525 464679615 315203317 257923622 214382108 457165325 609053981 481588193 8553053 399959258 793496470 444530070 150159069 92788642 594897440 904552611 44249594 636614943 636188294 334882599 550158681 71921208 1017038312 701591407 234675209 430225483 455750242 117687149 489291922 216527922 999075549 579850397 86754411 1042818807 894636704 982336982 774196488 508909587 89232368 404611492 924141926 105120596 104456903 51446199 275880397 186196668 448918592 90682284 869166339 797928431 624258326 112344079 950942322 673219763 90487374 463533968 547828727 276679474 764208212 962867569 943908844 807062819 421627693 901639061 840731161 91622117 343431982 458290325 196907160 367460027 548026399 931342582 47149001 801071478 324166096 348688698 543781090 456363085 305867280 472107499 820712683 343491569 74707046 734688848 883292050 329400558 457399551 417964148 557022948 307029136 392584160 789048533 644189565 339772410 902052445 232656960 930541926 995833674 28695529 14455305 781485211 610980493 83256200 788697053 469580441 193595884 1008277403 784784650 643830178 329938523 1073003920 136835503 913845720 34665031 781435980 639498102 863208554 824599257 874022273 1052149851 640150838 546498680 963649019 76172471 685940091 683801420 866436596 860510794 226233846 357972628 893624543 437389795 284212864 677993222 918952461 291185085 724801255 493726283 945560220 625363040 488098511 721747438 210092031 381758499 809554373 218177400 589234736 135474732 222308346 830093864 131600397 770303915 832849233 957190428 182027019 164700964 688701132 397406327 614505272 627250748 928253143 293164495 216633200 1052448210 852669753 391757434 495426334 130195116 565670782 860803259 616386514 327976227 644186187 743832304 637567427 1068466516 751785867 958577586 304533030 670476658 52388081 706232139 1066633441 893948524 418842730 410089942 885473580 576489098 339570141 36831584 973678864 341967710 656155902 162136385 718168056 667298001 560894016 674564525 316250299 879720161 968750049 107981613 281465856 1005616311 408543087 643491390 173546183 1001655125 966615242 175116020 854565531 750572886 529099648 181665520 1029626941 164646039 425611934 175702769 259797005 766338494 592668629 473083742 814063594 1063597444 67044628 625050328 786674 478904732 121369536 36729307 378513706 456364177 588416984 884617164 679541277 995914902 371571976 84968592 166527012 290485768 962736507 336226353 1002679592 479748878 529299534 142827808 1033309887 726855037 283557044 752337183 629944676 979788873 75009551 293478729 58455820 354965094 682698194 469103375 49914905 12029006 641055070 68560371 452956308 1024956916 771954270 71936256 959359253 647523977 87618395 326307099 602924351 987581262 985614455 572798755 282336170 1032590323 254170658 149892329 273566089 434607564 666691441 336776112 1009772364 1020877872 292854161 694457888 810980392 418616805 635275424 989339206 806302181 1050652274 513941233 255656022 1054405721 965342581 100917182 15960100 754376078 43092260 354766669 564758329 546479005 185464178 572208495 610117656 352581699 503442093 115520354 790700457 219746546 63170926 353932371 271973582 19096288 20437896 526497043 471016969 481503501 181524579 823068827 624355263 562154617 358262536 730015222 728715663 438732613 419489795 742380945 787853568 94924543 265588003 604337576 705953710 462278696 354743041 595759409 859759901 817576339 462244525 387974988 99113340 747936668 573920550 799344972 601928032 260013857 489877521 619009320 165997887 72348503 237066008 151026018 987040439 9760770 1022731896 639086872 803535571 441959763 153526253 191627415 350013110 731392297 894888421 733924189 405637867 432067901 445411728 40802045 486388655 1027777320 501209548 721730092 714851243 509525481 398225911 277541743 935778986 243320140 1062232048 1039611903 654468179 273450659 751279319 562030074 985616952 580418363 382050194 634971977 1072604725 949872884 586944113 633651321 170422171 39398837 458684128 990115688 764685352 580514777 235708731 990794219 895305557 67879045 444799815 404566583 82406314 439002958 199210041 529142149 930184791 280662317 566883675 974837424 1072695823 825124822 389610223 600903275 934519848 447850737 560463885 1062369308 588255259 51599508 794813077 808395461 264181135 344599748 116675030 573660390 148812393 310648600 337306095 69872675 777671893 357577287 879218649 366348228 146612839 50730136 86923141 741005545 74197536 517151574 138112417 218519097 514293557 188261378 724201922 221731173 393097290 974057896 977843093 711700819 225523239 728111217 67715914 906903728 764379024 634200420 526105617 901854284 519082486 729067437 263333447 179341324 816335191 714410832 107083174 923152065 15655484 447928269 81943466 1043892137 230944342 969883339 139816151 847029794 899103568 894539216 954867400 588577910 266304158 33325371 711025193 159126100 458144624 307283633 627781560 235516186 604320121 112702316 275872851 247661467 1008705817 773383824 59347189 292917847 950115787 34982822 189937892 889251689 19032212 413773387 79317467 590878988 256089323 85631209 172016662 477122693 847178542 121746325 838569707 702117110 149431137 602759779 484592585 197038605 146073003 704634435 473323927 826543902 546547227 345186365 85970708 673157358 22599656 974348294 1054169458 81147067 1049320863 216606640 900604409 188668367 1012619046 109389373 226419351 977412330 736327622 401866930 232317917 811732015 133561998 592767127 697767214 861066988 489012921 675986298 542592267 185079542 393466775 1037421466 1024801736 410738599 722910707 602510766 1018404060 44634532 768818746 227241798 1032799663 879888624 1019129350 166596592 963786192 754323430 483395882 459239701 476324413 22481776 896837066 446049465 268104786 1059275770 21892330 909953288 8891678 330349763 845043454 412512328 492917675 134633291 807584323 184929869 30639938 796092110 657404687 523354048 866955150 649440601 153329948 978932831 574785739 64408959 154031740 924356439 749021562 494296700 157710205 299710744 692321114 581256644 1039992507 910477097 463966299 742184006 965856221 991599731 1013534762 394297823 982792755 787618434 28526924 586393432 894250569 846031730 937118111 555303204 235155721 247612264 39703320 701301166 1048714486 725114311 155395420 95731003 69004811 200986012 472416740 133608878 939885507 1010971553 134239532 559326320 441428791 171964135 347329915 416302734 347212643 44473612 460631840 1066096418 75216703 512451116 1037844237 744645163 367976547 1010763495 76647527 46215740 547599742 678545736 735921287 848811634 562858952 682576941 998049047 466351426 168951477 174220265 487570456 764708775 485786926 641336749 292622782 576254188 765607157 554401591 575911053 902124853 160660478 11103167 633374114 387461950 136164820 522398321 250353151 374389016 581212731 489608384 669233390 920919044 965191186 737795362 422565332 990686880 974473778 249945363 444398540 329444396 170389939 443976278 510848053 81895828 392471588 237723711 84211390 764045067 405213592 196218970 667560889 945494898 438885151 916037943 158240140 969127200 693793871 508242209 639054665 427729239 270999160 1055534876 494087731 748911496 691742999 535077571 266444640 34333071 478553430 254953994 278541328 786090804 209027817 366500686 931420996 822526555 764332296 249576678 961322539 375579603 156603464 516036410 510124308 357855094 153539778 545342231 892513924 350992072 68369351 793879145 788283654 287809130 1040476170 939693114 260843022 122718572 259645955 803354312 397830161 528893520 208799211 459959797 216620247 773648091 60423139 693602929 432662962 575342659 727865294 455483308 421353778 481587447 736849267 425034581 499923102 248696445 599275916 664812010 360136416 1067091419 193114793 16481827 815974005 616350646 92071594 821696106 703709574 145046015 360166254 916698557 934522896 688897529 920344058 724071114 283436260 926932025 1065110172 569288187 783292886 540407778 10578318 675355712 501316202 6983490 42468174 1033009792 173529465 263129838 760727658 877720199 144369272 120144318 104044158 663994316 797701044 292217575 1012893434 108959187 430702954 105308703 20393391 984609969 114440637 245965496 570142635 807023952 177079273 373919857 333981430 445672221 968242376 757882524 590672456 247595582 571712594 277206076 974135203 1025971462 751962567 328271270 902392560 718302616 214979897 151266958 608945335 374072302 409327941 178728047 744743331 533838325 678242473 652020888 533720531 689054775 152813990 306217795 443700689 569809324 772744585 781604615 981987554 1070242275 935644064 543981486 501522813 874998507 51147838 628750527 882308024 1072739728 312068577 943784204 94153552 955747590 393319063 608602357 611048259 446654988 328116405 1057455378 240580806 160793499 1007649876 1063153832 127379468 293347396 448547497 561010643 486758079 783489576 297739061 762811213 911683010 285774331 759726521 64877501 853632172 78296441 125965549 21737258 506542706 488578848 573131962 974972073 901144760 74531257 683383364 982639307 675719435 555971472 139807848 176636745 410383883 781575225 3493102 652575779 664896098 944283527 637357364 622442841 433598390 567490821 910504009 148984051 46574778 459175486 257313983 455848540 171778275 106814181 154812319 310079359 31273353 573191077 882724188 1068826311 495295099 794682214 932633653 328777670 186912953 507298044 439060421 780125588 1061694891 956185214 249715720 1035357295 728699145 410971824 788232235 475792090 62911125 577678376 805274620 641714321 53678084 170854896 718721196 443566768 6819268 548991450 685592864 247585781 333069424 488945688 159769964 418275475 1064709698 372047696 662865417 475511143 826175396 325521942 806341313 555884424 822238851 956080179 752559173 189284277 471712000 365523219 1061654627 252178925 33316189 684799202 672595461 881754597 292725570 493802852 324898775 899648711 941489856 541349233 270230435 449644391 474096016 831663433 982848902 917913862 930465641 571130038 418243715 775744661 722634632 1047928109 573540784 647621467 499273248 919015058 563110411 20927047 978840759 583066232 192237592 398377301 435909395 932847531 457641689 722973106 422150340 123672889 734107179 175243288 306875963 771650560 6789458 714009775 737919583 108743158 513635867 372915174 565794661 715460153 837984461 253237434 685222247 792997900 844507035 183128402 202115467 498747965 104215907 908853218 524390733 187480334 790661469 178293937 475462355 84638665 427975549 989764090 32192834 603674847 826159208 93359413 746204125 235153655 779375165 150463416 198575800 318777121 496461645 899046269 364895388 14342067 386158663 105997461 586461272 1061494956 780539684 594194985 961459267 692099097 179921051 90230108 1051863004 1043421625 197278547 199274228 1054219458 74811403 46639174 130616375 239151028 988135986 93018740 496812187 92465479 1011151476 791748240 797228686 928562015 141395719 785277436 853158702 240978465 629578931 1063503268 860082953 123756409 938764185 548990264 981637576 903720014 897384528 492144023 296089051 160948373 157176579 414324287 628753343 110501294 45526432 639262736 168773834 744209986 510537099 648687277 641190425 148453357 488274846 846440586 943189013 16531470 615643990 764517179 182751786 259940387 340446313 331524059 239043209 907241696 969148211 921001634 250445485 1018432983 750043400 844717455 1059913248 502133584 461593906 69770366 485374745 910400631 613463047 41521089 163942430 772472045 608061183 30802639 867652133 644571439 281797141 607099432 78040680 1004013912 130486121 140015315 696068652 130740446 867317428 304421142 1073351128 421756604 581580401 82925500 282179196 826419871 790306111 784878756 715952509 265514594 954755999 64882334 627128643 631802324 1045945511 546039491 988465514 298587942 147924904 816103965 293481938 1030274326 77007402 765745307 1022828810 205070704 663351903 461526274 472563227 741344127 325329120 734688652 538784620 555333144 418649874 994775519 467133713 153469477 898442561 220310792 31766211 1054854903 569516715 794978772 126057097 447896030 344258078 566029588 932032389 970971335 472517923 872039935 332865214 363646800 542098872 121256663 455216959 230000923 86568477 65195638 1029675055 680110409 511178641 12263504 1050564410 803620549 725768307 146701447 830949357 649733035 867334002 419565915 843720018 404483673 10014834 1011343613 458274088 941779146 192450273 713411444 921202604 143387314 139634316 298842598 809735427 309294529 390306877 256983203 775155475 27216244 540851171 702303143 337159262 1023562670 343970152 210468465 451891284 735118471 55145492 405333581 1048017454 802199363 960264341 435440359 963325522 199643868 149782252 429906546 900379378 660685053 448761732 984694005 173007893 904149879 951872815 398204673 967197693 397986587 1036037510 568956509 1059396067 345856763 766745766 377102706 531531795 663879702 1052342338 610326458 88566490 192655763 637230885 818858529 621791661 816156775 889683543 530898727 432302303 484773576 617154105 811040019 97674907 267922801 282226654 238691022 1066790521 522477139 686960889 16491983 647107995 804362656 592939592 619807086 618750326 767326118 989118492 795918066 654093679 601101822 615234814 529774716 154958916 418017983 37387638 468973345 854676915 408415625 925413633 493226263 786230582 671774212 129779800 534943930 816104787 654099187 883066752 69421681 492183376 684194821 1066166323 1022978481 230745948 626668037 221714175 296779672 307132068 170514333 239506057 661300582 280660068 870071836 60655011 668863575 329890540 988442317 937996673 907568541 485153035 228358104 1046413250 224581403 984154174 674379566 316969204 673575905 500978249 773732526 745056488 333086831 807873933 1023202496 996974538 314479505 263581813 152407720 337689462 280170680 246072449 103742724 155338223 1023386838 953754321 843317692 454360020 818692574 991444554 124056243 182226362 732833159 385264512 176659706 91368758 93789920 999861503 166077298 895382421 499277136 308242832 818253047 591636853 620119562 474451403 774349045 1066313246 871732579 956545951 106447170 855985274 910612901 564634956 1000971439 453940463 337740672 321285347 447757395 376081460 413027021 16486366 834240151 1035801214 810673850 651690507 771092520 556117485 765840499 1000319263 141882543 111661327 450070670 606868454 903307625 877789703 466405520 114622734 760765455 995361413 134013637 202328613 412590200 558593985 803870212 1042500450 678605994 374040831 568289355 1027768014 181342493 518511506 560396514 1049873307 228095668 439876305 150919275 35654868 55684306 464211547 513860458 29923014 316811601 368297838 932625588 36950786 713201424 73137118 656014109 216842875 1048244127 346376480 157576732 182374714 604418809 1007424173 45109320 613414955 360424120 768066692 587501189 735069283 979872205 45392170 179861733 523861105 1024793717 1016057096 412657235 201141244 873222676 841712099 772285379 368452036 370294810 557712996 97397221 372914306 134118117 98580938 715318482 80183818 735543945 731741077 705071422 174169471 391887145 260045960 96295286 565622126 1015090409 609437026 1008399787 294757399 67693144 785176496 954548729 755315370 984647822 46906471 760548187 583011063 660712616 683243672 112162235 747498480 92514053 650873366 652972307 68328973 373089174 110321653 211563773 167113583 1029261152 473607010 155036789 548775084 184633579 81569685 711011112 829697206 433490274 706312833 609678884 32345376 712965508 649972015 776920182 6228313 84334241 471068795 497376107 726958388 476578667 969359446 558773500 397961613 168793597 229045082 82220333 744440574 1053229948 781836348 566092279 942952537 408928 237250165 859360492 414662469 736833402 74660137 958969477 848091979 1029626000 190970084 32844764 975260112 134448433 388048133 983797823 721791582 465885256 63155772 471634967 750553077 185065312 45154428 449616034 640313414 473330816 648943740 749420936 251108450 1006224588 605711738 1066471923 1065475948 908657453 851178310 485930313 149760213 239778791 746708951 289716234 769218714 698458932 835298909 949533499 269147708 467056195 661466432 399278869 326574141 101341900 1061160893 271187062 1014145063 532761407 479438760 4406247 82445361 329223705 780360132 481047653 871714236 275782612 682873362 1020947166 729405326 336057486 315215176 194728816 692490629 288613440 942567890 121201239 713112405 681158089 635066402 121060855 632588188 934656197 465700476 717908595 651393852 636480224 826988725 791738636 1071837749 971245253 569868628 586349335 878028594 116909935 168529668 1061430541 88958822 808934115 856594657 536709020 507915780 270021865 182298417 469415313 948491791 661422640 146071616 775561628 1042632872 881134434 70020493 437635891 50537703 489152627 816112825 125376480 902789427 448805611 814438056 793520374 415811219 235112965 108987001 746931085 621543761 567178288 539842269 376750919 75996241 75065742 653422188 348466255 358325716 701449511 158089952 710588333 965132826 861286090 555281675 996129400 331986706 353990306 898040100 209148497 179209412 99220086 240387290 1020554050 381144217 307756149 489446843 96433020 430383162 411757547 617692383 366618002 292372234 619594236 222378020 636503371 547472461 210457536 651320092 496563860 915706255 175792972 210997957 829185748 493677721 403130342 417125577 523671969 422633435 527577203 898100323 661822621 1025132794 210022339 904606574 19079725 913300537 243579864 899573046 127836548 348538766 997158704 1014115691 911377821 621002824 621090010 995552666 556276210 123665438 1059537858 344849181 681157086 887242931 2312920 262123138 623754896 657075155 389738626 745586360 678719835 634518298 365924872 558396008 222641595 359394956 17996752 657988466 63398559 89675450 502953014 481253251 855652586 577777270 831635784 1044927073 483446343 885941 179324407 494622947 128015536 402527333 1025602679 426859463 53201696 704753415 485871864 1022374022 390327746 565902616 412517271 166236577 559079911 388785874 738607286 531403522 688127623 391276606 1008035282 1048840976 488685512 9940620 345290774 406687680 193200266 396944391 910943641 796381270 839176720 390651516 787858609 512174145 209811972 846210888 136071068 828368490 272487477 311068319 221848773 193242434 457815740 264437329 528313398 528025592 614337494 326285691 532868686 103417831 1000982416 105246214 950670042 840996200 680027501 1564667 506915906 967173247 298483671 131140773 433040027 743036352 750450078 792980054 160036183 59234145 994749239 898527498 1072714700 433538886 757672245 60440192 841730247 507633468 244190535 1068693347 194867666 792421063 451516814 276909939 869336631 680458286 132973474 746852287 237545155 142904209 871154515 856312194 400991339 425926737 619122202 744864589 285495040 216168561 6798761 588125668 305117702 688571697 256252456 1015556597 583934035 732706716 785572084 1008142978 1051144424 453027776 393075447 596327222 224332700 843487139 610747152 865136205 1047460767 320114061 1052474385 257760532 173924548 482444778 157852012 844921786 681726744 582648023 103721827 946176072 818846402 845337740 682702554 863584471 676352055 2014367 949232265 359177378 871791309 157277886 73982975 383425186 785977643 244762082 711287132 295398231 901151085 72105485 759334462 24048364 797662744 325910983 959667499 343712476 157111445 155561711 839480627 1069407790 1070807547 158078422 788823752 529047852 882355385 468823286 259882985 738033216 457282619 378631415 839681224 122949095 837417156 624222708 679528034 343092988 442332387 176837870 575442476 334108614 936930640 902480874 1072191288 896306941 718254550 803684900 765108348 847105462 967450652 383653480 773059624 636956391 569612720 891789897 178216801 347567261 985406789 1025702531 289624054 671038109 315004200 282385746 471560057 812505765 401554726 226157908 658530120 45143182 162400602 686302973 610146950 799000906 891844663 787121696 174664441 198319179 655775845 646093826 54995522 673561588 384388891 481151135 43026418 770889509 212475230 749184488 557719631 1026432087 279800286 909722556 546932537 189403067 771013169 412076276 685096146 85656539 811295091 535679559 903410424 427844488 201120674 638235580 799589185 452410695 187485190 639479607 178020509 742382680 424229608 494488573 160341673 40265487 998116244 183571632 246728824 665004417 54655629 173573259 479910242 137331298 926245391 840589767 278557193 948898616 319364479 137532873 143388585 653411 753573503 705843189 646219991 239479078 525545233 711240900 566184188 769653108 526873496 22946022 968734210 1021418392 850663594 112115509 992830810 264744467 403817344 435384407 940626668 876669964 212696497 644181049 531267829 334960158 334061623 817992472 988368588 676560055 109889493 260063854 948710696 847643649 1061844023 388784961 167433064 602173968 303454698 261235955 631954272 364650001 106707251 154562248 311346964 48220740 479458886 193632558 801953541 112083328 1060007904 513747699 1029932548 96050295 8809973 871782773 931193382 859214785 631775908 422981660 442256487 55052624 129777724 371302216 871887857 973079509 51129153 1059521591 659641740 637129076 1043653837 931796666 535289519 564188658 307153941 348152638 737568053 530636702 786606253 115038932 462877178 321828384 236154855 659460945 440539054 703123061 369959904 735455100 582390865 775738272 501917160 355618296 74933471 951795209 953445690 558598786 1060516607 871021892 815570686 12840494 427708706 280317054 617963254 946248361 506282188 864669911 739242255 258922038 39073487 896634476 480611751 207290492 831746871 855632905 647072434 896783318 220179839 953093256 63839257 945085419 933937017 227367449 179357248 600118354 804579078 41737866 30778990 377569084 841607384 1036132470 280599821 230832521 704551418 989989262 1006188522 12870226 733197484 737357504 280378386 1042098525 48266709 118868126 301856430 708582727 380536315 1073570204 490814784 414865352 428965893 850226237 776805794 133404257 938257621 625740383 1039043651 158617756 455637996 857168078 922908535 470475846 15273700 820744827 839718594 900294414 157793962 365191666 672488763 992646618 428378685 793882181 962020264 577463601 85188655 90141678 744040037 356777216 728625545 86101155 1067104090 863605092 848320063 85063860 83189295 42879967 962732340 1024189726 1064035186 190046203 141350563 1024893214 431642123 778998138 602335119 661450220 378724924 296588701 367431060 231725185 283605921 363401674 907803043 530525085 766405123 427389740 675311919 884567278 653550205 164881113 640736073 976728019 841506420 818169165 546922570 996760948 1043327818 650746590 281151969 1042616034 462774628 160213931 136032935 372872105 341156012 125954002 314544796 1035191877 468938557 734362136 483342676 1029809568 979005636 426798666 512229523 134862027 122868767 905115210 622259973 40113041 962139238 1044528547 408087758 139711254 31852964 576456245 793643769 335511310 100880666 402239123 438946000 503716812 189711669 204281149 568229926 1071435049 547135564 652124730 492020404 826821339 402142264 38720245 730617121 778450961 378059071 446238562 873048745 660918548 904280717 363950080 953804803 166155420 734046540 136825265 703601191 450973570 129580490 370059160 1050774482 861820518 54703819 497852138 881893456 799453298 543459589 28148728 48422500 45286304 646387184 666170507 345205139 215009555 842644427 410610475 19195046 885375683 703312092 927083713 577019882 125318008 418569713 46018025 447571883 885607925 720596008 400751657 562784086 272310106 256839319 708352360 235730301 888163718 1039074633 138677338 745677538 118871589 696768935 1022472836 1022626795 374636416 1061795783 22907399 75339254 561392947 254120739 756122470 130065901 819685825 395346850 591878141 855267248 895531070 872391014 1016183637 595079759 69914313 281906811 811480225 869750323 816079554 116159214 583977326 619540554 280314657 944463690 552706969 665266540 293239042 100432433 135076883 1017364791 179164058 491935112 857138507 280408803 1049271313 770786028 834551656 1006658978 370816801 225996449 540574606 478903403 281989265 120461569 319192858 231530532 358561255 632244031 584396854 514377772 254575557 422907002 922095450 879168923 168559121 64276734 220956736 478216237 786017852 857141639 939682549 1024914325 272863985 780943686 749019246 752455306 728821026 348299388 961895627 766606667 302444891 674431645 781750594 305349545 822668569 519418664 91893305 650922709 910154134 574384884 26500236 817692252 788744718 603864963 979955383 338213885 66000000 213710918 950166262 779432367 1047186030 857486314 507773079 55835931 987262131 604572763 396615327 570057212 324187067 743623957 204275850 364471508 143769209 858986595 32735585 490797848 760303050 1065314342 177467563 152428540 727407940 53209866 423919308 173666928 226904761 665060797 558000552 360524322 502077825 210478360 135525402 687510469 477536054 924344446 748635244 830638512 472855947 126084924 7991267 867868550 98064713 670674724 757428398 580193902 870986226 676060877 71535044 974099507 965512673 519599422 830221540 441687998 936194412 474695677 716813890 698100278 958262613 1030785990 510719396 1014950092 236761320 289908497 658730060 847285961 783844641 241199436 96427299 657237634 567719057 883079400 938804801 739732408 717784976 502861516 239106795 766752003 52894087 344862811 694052771 719463016 897918660 916286793 603181422 640663664 945891823 195418811 387251878 200216274 1004465921 1020497370 412107567 534280484 1046709456 323480043 247272997 623041875 965839471 990054366 318439727 757073128 327992400 1004144875 37136050 891784676 73325381 688184074 483627787 635276930 322705039 918510958 61512897 470810052 988714625 334729130 836315166 336970396 230214550 206518222 425423123 665666357 565351319 350144250 277405813 562173652 485762675 747623825 657886798 786222515 399783604 307618722 863233057 152968532 425864238 64179906 832579153 797236000 816497510 834099346 987765749 451332952 143572061 632086233 666756963 334571697 391256151 780763465 470053116 350766239 1035512955 362903944 725821020 21386927 116736219 754597871 909505047 448132885 670544752 1039370626 605470172 410033748 117162058 392490673 209840100 278835572 492741003 76654743 846161631 886592425 1067044168 937194433 802122678 298952635 310238997 577948105 991131766 283987264 382498468 357388440 663195429 199459518 374252429 916737097 616685636 519081024 150232825 561979504 652819195 810504635 977914393 737224518 89860049 456330675 571769306 304489865 99503161 52534185 17143852 999389506 159801270 492753455 21425955 669636569 643972238 636562630 939030446 87763676 397963433 618173386 477177932 371854588 510245080 516891173 373193364 389369194 529534309 318669188 972978118 529737205 201696505 847538230 303627976 436508592 1036165372 190829199 792926937 892911850 577325212 508949859 973566719 664347645 561672555 302751814 745858486 513713557 63577380 173785719 552534565 1004519350 653793721 855971071 230493060 336215273 1052591820 848153694 857117959 597894210 618598235 75649746 678361131 315409755 1037539880 941055403 553021886 16824179 757676640 881816596 915882927 77886823 647118020 619814974 726825631 956852893 279447507 455235117 1012308876 760910419 904547772 392486202 1060211452 894326336 325774530 957808587 505520322 472366551 14341772 192447933 576718497 88896664 545779085 852386758 23076900 643191524 232091226 115407357 756181598 149382045 532289974 716755244 362954281 481221280 682700193 966261217 886900347 404514794 952638900 828453769 414145946 759249119 1011391810 265138102 708528205 1027025538 526390667 37764777 433450580 494648978 712406526 751563236 810509144 910390296 861219573 57899236 672091517 119046842 935067754 18998405 954075706 406646830 925562025 131604948 602510294 539436069 10855517 514865997 412466222 53341085 839292298 415644665 258031982 97138506 1034625929 566648924 1016872811 236118596 430052484 851925310 100390315 778413297 579066490 335989267 895718243 807651164 933833818 281301626 1032339980 402305415 859295377 354813477 150687817 233573981 13020359 977842882 531920706 164855256 355053224 971540454 254162068 832208925 910867435 586004686 936030142 816191427 876950514 903252528 68752033 344973698 896766778 98486525 847571437 903931798 758126754 16253098 1001949564 902655870 48931842 610156560 849683769 548533712 846343433 594462430 546106655 1061302738 3349913 128001501 129401839 486586974 209505504 574797384 662557996 360707281 670113908 524675306 810290076 803971395 739688087 544287306 879908995 844486222 589637552 609597601 170211224 411293029 670510282 351270721 344662459 726145286 404001210 42701271 437629577 397947249 1000903216 921247911 1032066706 592465047 1051844982 470829970 807797527 148275049 832637098 179822176 565539279 239143046 147595600 755016176 680446970 861839308 150373681 1035715275 830763074 472866987 360870482 611361161 1030444904 375901016 623313797 33695123 13985981 888942598 239981614 875045255 464740249 1024791202 955854900 625592021 195202032 90218395 438218216 631193439 558868951 303977344 186633469 464622705 321469700 248157933 31845504 797742860 558402725 853471939 507993234 648836074 893058163 1035397407 278544536 33117990 868697955 488041531 553514267 600902450 269733624 708433259 608174877 626492609 830742808 594674625 813110652 436561733 741856203 777782072 107301762 63093527 3158469 361851066 449989097 1005531843 427839922 917328663 1003090317 581622380 478672076 411277956 457867834 1066700598 994247336 755648292 465070293 41544529 150922208 1048123229 872811761 625496572 746821332 63982751 1041731263 128035730 449742072 323872711 1052721661 921589310 835847030 99498172 1013473414 707523539 511432860 1050272559 916743851 687226173 1046275158 22934032 1020772907 728163453 198904315 517484945 499571935 263752512 125320008 751679828 555855826 621621312 723952279 198917435 484236087 226618985 119677294 116010961 596468257 637571614 409839062 675421507 496605010 894851314 283202887 715513560 879409714 706430216 70086582 127041247 926479556 611045605 475433327 231454301 62913839 812688960 1065353324 107172479 586603933 329803514 649822490 794833817 234702610 597288054 400771743 646440215 232881800 744656455 722017220 307516666 358613517 949884325 579693327 528219821 164686158 1010001667 924855628 877333134 897280486 792841860 3085160 72306264 922819947 745149071 865290578 703105227 92890637 106989728 231460674 463183358 693910115 523066508 397946993 253071345 900874173 150615054 107774859 692063870 215897479 848165599 332984136 1041018332 450377406 614689365 127345262 487951762 140561438 878331979 803193713 341837197 737977912 742471043 306294184 935078907 425237232 239805900 647779284 1008552334 982245489 411003147 180846481 22538233 851680466 345252741 928057481 151819966 840906744 619457358 755895678 219195022 247928722 1025718105 298255320 183429685 332319352 246698673 689027824 253025738 610458578 135776821 975895298 748951565 684111434 38715501 913124468 436589116 1021502226 132063488 318706739 649038629 211534810 30783097 612503868 644811796 294392671 253940556 871219933 288424461 169812221 393511657 917852913 1008668144 378665945 670318751 556423095 213395788 934409051 701627617 695890474 302823341 958428128 81413351 637905257 738728192 658864716 926960921 368172989 534188005 271387076 792097638 503537346 1058273770 6414045 930921722 906286243 126545781 243873988 886242886 852605808 286136268 50520565 81228847 592135898 956760009 111158854 748488679 981053216 95224771 118357307 222196336 174631140 67476643 486115053 824394740 580980537 871285506 922512403 275939400 202875101 657367849 770638353 754354477 868508740 778889479 684782152 789066219 530511454 47552319 728469047 925981911 724802439 850785746 1005822530 331186402 286837647 456153869 210016892 150026920 903336440 657366100 707973412 682202037 335908589 702870398 527874861 169220590 13767440 479479058 646084118 1020873241 247961535 500228348 387045681 1811800 133374043 221642703 41356738 581531846 678475711 559619937 634362063 911208555 435639043 980244116 481783169 461310187 394690893 829358303 546765519 70376491 340452790 298451758 147073626 463546266 3857242 40514462 451434214 985174078 915341387 911021219 863081517 404230600 749485357 549149592 99888977 850070463 421997136 818962552 802252372 379794017 1042219474 644509909 198729302 813031637 316736272 350497095 875706664 537559054 92744694 63219678 253564140 143029354 887716117 829989086 664364182 455051492 319689669 612176458 1025447522 944046680 517226078 1034692218 434085045 629022818 222953769 12501927 865278099 395589627 302480138 412153605 886717199 501904830 449862482 988096518 322624592 299853922 566687478 522741213 192875383 735388821 137192445 312933787 592456500 226565654 835662494 618275885 204176520 553448826 521306826 295163524 609089171 606438314 350446436 720873288 995725797 870202043 496888603 361960304 505303997 930193515 262916333 30431698 97135569 259074835 451799064 488528138 1019603532 123039664 299373136 525159271 350759108 436548730 11402020 581472982 998292924 956997968 185005158 634950093 483392576 81769371 101923875 268359359 308800917 431209703 167992415 652057134 277497661 644358663 771184348 590722309 611417836 621050975 317045027 673516359 547840069 606661790 767559256 917546476 111173633 104033537 721184139 932085882 450089625 511110302 800859305 720885557 590500681 457587672 188900648 245948201 752600596 51422791 110482263 983841855 958383315 891075467 205083097 1058864417 923518630 516559757 519198657 813994737 620177239 507439472 781096564 622851438 446076148 278944356 837026719 874393141 464624267 946869441 380263135 102850208 1008331991 678004076 639421391 600947015 369293114 641093891 313418711 569659938 100971451 128369103 686270276 435868380 251791615 486941052 109139349 335195446 289512112 597446212 933889477 1019445629 191817428 827146012 619765880 460644821 129813633 926917799 664485364 716718114 415391837 402046226 171912805 883644484 707444450 435999106 441751438 634413760 1020538986 17640877 1039714150 603168580 633323613 436800278 370869541 88400282 786163023 844137582 575772995 365942455 644938608 684633645 75501219 370208813 654092041 94147636 861236869 876001362 342577425 944760689 399179854 468484296 351662055 216219570 838212841 961535108 130397729 752734268 965962381 156706088 918044788 569357643 6034638 249596236 800217985 686939596 1009804007 674522487 572147316 961175783 65830077 914206 505673709 953655065 864746373 911733473 21030790 962790133 708977488 36928204 935421750 271563002 852130882 551892995 994077225 643403535 1053024750 184720890 190301237 94029775 808092857 605450476 577944718 624061600 660840514 898136543 592463714 48972096 755515804 207341053 83659543 191131744 631449904 831216827 1017042580 471392261 1036785296 386973119 610879258 366334754 717839840 137665269 230599835 5723114 26715259 897213226 659925727 335412466 691710946 1051282203 192955790 164656236 754693621 345924492 367894061 536335066 451938935 630267447 298073373 17429825 525575426 758232136 40742670 352779822 87495966 36681168 849518385 627653229 736270397 486439704 238329418 92843560 721374295 87067818 251591470 791359767 1071807631 73124850 1067583892 1057792972 1069497329 633903018 482183428 313285 963007852 547177716 172737285 908491073 985172253 699524190 69317437 80339134 559053509 70033321 913483554 708640982 436679912 947243630 38504373 748126529 838171979 422989698 368231264 206908634 135692623 352763079 234569944 926281883 318519933 166151047 1061205732 300481537 315745251 894830497 484699942 595338623 528015066 341499031 484739444 1038915556 780733238 412385309 388024466 588361960 1446884 230989335 868005461 116278085 492568449 634466957 172593913 941264396 881972881 741419490 814795326 250574158 92479111 107158541 782979882 449642513 773098294 949596030 747024863 773686208 637901394 893921771 1814551 894615778 773056664 878138229 743317445 687444116 998414096 761139282 735138122 566372810 713919135 994859582 1018461470 735330243 148646820 843949843 144505083 357101354 61544678 495845267 429328704 534504408 556944244 239417261 417270469 794301766 803653226 530124690 117192198 995571786 1001719659 765739506 901288262 303017269 333883482 218053760 214274593 40156621 587397779 684732153 201265277 553471217 120200067 794647831 523389442 983054909 55267611 568860661 912293658 702289969 747427566 961828465 344765682 612601632 845384294 145395492 887417033 430285709 371920940 529685760 779673833 230692782 869172766 591373099 287493992 943411019 817799981 41451561 6057972 600163299 74339900 655020429 415499503 745537679 839634426 53393630 968142158 731172851 828527962 839880537 191099717 203247387 1053098217 280208995 93391156 635892115 863927764 1034222251 721851888 500399377 21522969 778531374 336970794 571512071 670400911 1064343892 362926280 229688028 405205595 237076313 641941092 1064992292 834398657 704276503 858105581 267905413 464781301 473853402 946986118 964008285 751906227 287753390 962874872 717888502 980358839 1005657358 166117488 772843153 277793567 522904799 774833920 413172768 201930653 581915690 437338145 646916155 222433524 466791827 758350894 279747426 536285984 766690629 20495213 358037736 680516509 407724603 806583399 59112006 151267799 628771278 868192430 778648093 931798212 489730004 594856058 402270499 416946724 341688000 751633557 591293108 251725700 814328814 502164345 217225612 487020560 516505253 38814929 799229881 375344738 79203502 490527044 550567016 559211511 237656070 259805004 911349602 174143084 1006175257 137062192 583459747 880321653 162968779 806617088 1068944092 915123413 1064398314 719107187 153492788 818459301 841875001 353177975 1072472338 1064193344 11784990 201939730 538263888 705396871 228842615 873997804 512330682 860686835 446331142 930392732 468887111 426099164 68976572 491000507 302623916 263248209 347990140 639351599 164088123 965263807 810396941 347645629 1019186715 145702034 1064463385 359936951 352630096 868827579 797932836 480843386 850956111 929226747 491181005 808258579 1059042228 719181731 488775056 13162869 975177369 894978117 31978782 1062179617 467837294 248043215 676983935 80870527 575590238 275229736 828424529 284702098 670792669 77572523 610820104 838976982 399297810 1053575547 23872558 670187232 388263228 110809126 82907269 543770001 750608961 524247969 1015331587 598381871 962115044 707505668 1001143607 602987780 98084195 888245696 37529390 830431077 166369775 336961047 76613930 684584319 1069380352 347728613 927522640 453773121 9347098 194753710 966474420 941120478 441718024 166614420 27942582 137130422 30869895 453801177 453230789 514066936 147643355 687337771 807922210 348617010 550826298 50451716 310630848 1071087189 647191191 542900763 381832900 519588030 192239469 387075524 123739523 283958097 281289668 899760237 574900060 1053333936 956076937 1019186047 503946081 541128953 356610619 26655081 551868556 995963299 876874906 196803005 472418869 744563149 1025590310 162727356 460178456 1051840692 696398556 415353554 20518349 146634107 807684700 586807987 742769111 1023666055 819752315 389848397 869597226 160343306 496295908 933472680 226563271 946621844 630861498 221289795 599000839 435123971 659716814 678575809 785701088 538322298 988684011 933945937 612135266 643941189 794665416 501552822 834671298 685309285 1000860420 508980082 457572542 414606946 608914866 232041754 259151588 457506997 1021442604 1049861461 1060917799 635677630 851034270 788572940 269215045 987478435 694542179 489369458 130089751 668143173 204053046 1041059775 196034524 402162104 1063098450 68726824 503961317 578192838 471616427 887986413 412018452 655161497 37190016 905036713 626132284 780360022 243260839 1021369932 692703175 220790550 940363722 799647856 629658191 921459144 720698036 619060131 392309057 1064459390 480029984 57057175 91950677 940098140 944220354 952016189 797040431 670930517 668247748 682228901 1029487500 912247039 159116597 90436839 883805698 115684145 913231566 405190506 253071658 433296255 705982442 711105363 968068276 561814052 14860093 1070361605 598384364 548280069 185685425 577600230 198612970 759271592 795297629 916604605 413049274 57422276 162708614 230090390 129505083 287294655 164939635 1011604541 864285381 704724854 965814577 913034227 802878015 811528574 232855882 952042996 541185126 533324252 1073199632 989226167 1065827552 311403775 77368229 7223466 1006780825 333231544 409531983 422313436 349302104 566831902 595253315 455623866 702260693 102035395 795321871 404596300 508135740 769986847 986947688 828895616 257683797 666221456 33912927 551500950 362333913 108599096 460525095 27006440 69128905 289031654 76581513 841020616 613709215 1011509425 882323242 704723689 341001623 571495959 84763603 253109963 148949255 1053751668 911920693 346966404 386899247 723735231 210230646 1017313863 725143860 382749295 984654856 481509220 365878709 709569174 926175320 37927835 789030747 397634281 661932212 4401756 72464915 688388368 339454884 733074626 465676971 865472853 710386042 789168009 820613480 358192079 228883696 1069695479 24240286 814983196 216297057 539682253 680185765 751492240 949342595 377978730 958350905 205927476 755482472 724249466 872128083 788965817 143041863 446114065 781594358 649594211 946032003 249077751 538521830 429955107 542773901 20014144 109900139 249752660 618174059 457721381 1071320512 915889182 987342704 992108004 15231529 406544851 752924385 170302478 641936195 971455682 240645607 43066224 885750063 26637519 439955435 229496677 698449918 1014052648 385716431 826541861 140714493 475029197 781379395 1070541682 38938024 321630827 995565894 499171142 316642153 958996168 756870609 204351876 382593017 621852887 404339216 494139957 234126394 822617033 501360885 901949114 443356518 919867296 898367219 70488993 672792216 1058113576 212065252 589304175 577573035 997027603 254724813 798548719 562492823 88500105 942293628 872657812 366465568 786287845 215388569 457064715 480785147 906271116 588640539 922929682 323100033 190404711 939656811 483584722 394264044 307036139 505537609 192093595 238120723 87373369 10975132 685723952 88908823 587449800 129964337 336925576 11435400 182787983 214216022 699691636 140185843 264829556 703579528 1042630852 246139979 460730225 957671327 716060918 977374359 854032264 584313659 772890932 524079990 832288534 488620861 642712219 366837760 225042247 458206021 326432186 936949440 790816257 38681399 264916850 824935459 992451722 496372221 630343454 532346588 81366970 482577444 97995524 255475577 74096440 465442802 569559765 1059140116 1028045884 184356482 981856034 14767975 327952653 570777357 901127006 116764009 402375788 639790438 439750035 924768832 377015147 866221213 876960063 551909084 619461035 1009963882 846718972 158925224 25995557 415993018 573142621 928641073 189253044 493544754 37473642 13773878 1066290134 933285829 1048782871 874542893 125672445 273334366 702315270 214368341 123282277 625404077 1049988122 315947790 738215786 475379947 644686841 961162875 977468704 607961972 265564481 368662606 991114932 511218440 392210706 799818814 398608925 533699733 300168619 795886333 620656644 1005089383 426851838 987729891 686765186 250677867 223563748 946802259 997852183 751930905 790264960 256566385 206156858 626612318 427276271 682770858 935542951 1015197367 866308098 567040751 268480685 820535920 375393114 209765690 575147588 114453633 301185146 245006055 1067533754 322939706 490662485 720150655 474783718 845299621 355261056 624735780 352611190 3754531 733807556 68656024 359227936 71472370 440230931 928401359 403417317 1025403218 895481108 265937641 837191947 94098067 545374082 614044670 962359033 950087420 347229078 605296042 593708873 933305991 45706413 452748291 993353923 783950073 354408332 855511596 470660653 332029878 288872634 251039524 909271397 277741954 934021423 844962332 215235688 67657002 814407767 221805485 932049550 564077162 118103559 239296858 859806223 547212725 829064121 911217679 729133683 904921349 838315655 509729572 761731482 907008395 24554560 294028692 615979491 968275570 815856857 167615862 595986218 9810828 171855108 743862777 235423859 715873085 983115007 647169975 84574350 835118041 948225172 945897519 6852318 371805128 129390127 161871790 494965340 756641221 73893956 1044131408 336491091 124580549 363752996 500023784 859025221 683312882 700854351 581756310 788112080 622096300 525635541 725836589 5004569 645362234 725373864 691796460 608969559 738503790 992423077 836434233 864160369 649333494 822523114 181450678 817265087 156455161 809547241 835820480 780683162 965332453 8949434 1056549708 708110972 57793171 972157079 218781377 798931211 1019403371 389295451 1064317146 745229638 77857824 987231401 116194126 231467229 817129426 513665670 958365706 353854847 146014584 123487835 845456967 980429901 219033949 1024884645 347258269 327847942 562650876 845450454 1001981242 862902513 28471028 615735759 176438610 445819135 677513094 714268353 853708799 948432607 573233826 937151369 49507054 836995972 13187617 915232312 207856265 291355911 890988817 1035734590 278069360 466377250 1035067858 75150141 145330553 451106850 844267991 402477776 651467069 604598921 900584947 161217935 702963952 724052195 894343428 683094469 1037031415 672247476 186000292 960949449 446834384 969590577 271905181 960245516 1069126333 616188748 797893464 342912660 518111649 478561557 771491279 910752578 124675893 417268518 603931256 264170044 1061986278 16206629 861996374 457393968 479574353 813918311 813417189 516193806 703560207 664554144 999449809 796474947 957607130 58850739 687686788 23235251 1043803413 647349647 94008993 766765546 492103379 275540966 262627237 1057769078 608111406 193939214 596092605 181406131 1026520118 442311781 518736477 347217718 636952802 104890419 491869235 535084013 66206901 360343388 853655761 793642312 633651019 547308388 286008299 726410085 37557810 106505621 703296144 766414247 88495524 629259738 830291823 762334523 670683651 1018483588 914439806 74840180 71101450 618392919 534621955 929349124 908727621 77476674 531042217 193579966 1030156285 113314600 937703894 915103596 116887111 950090890 2481227 418282181 200144992 561117910 931966857 12273968 366313665 796692437 76514817 1034226933 160286586 110008655 907233465 228100278 862421335 237419569 18284707 725857364 425226093 209729719 891709092 836004833 36676094 367333778 260790769 930145214 434180710 509961737 404225411 279652689 938177098 786985667 390655408 303135937 282916986 190445340 798791731 74502735 346966433 464740694 181085472 680537490 252513412 710378879 1071633341 663002794 255760938 1036273356 140861455 869856693 281891784 422490250 111737201 368934614 482300083 198877997 106371240 1068821454 937311474 481140429 87315510 664948114 822666114 425179170 73077009 478382851 871926368 1006439039 199136380 673463058 704203781 596503611 815121162 608261925 45599400 1022471863 560883666 704802654 632242230 502496002 1004596266 31315808 501590572 730845168 402777515 672311148 28619923 880818748 42174598 140858130 697013043 571750827 23752241 368552204 202035294 61335189 152564913 1066612596 385220731 95537450 719118415 227596541 524199207 462688937 297705464 978529668 834373581 1043114546 102122629 965341194 469047737 233887699 315799532 908180851 695828622 843302719 988396402 256292691 626102618 711151203 104867682 730255444 1031909472 377914876 784344004 856349164 469863240 194439840 632998569 193370223 503100392 475600157 736238265 776131234 653358755 977007940 717806152 488810238 200487705 708698339 756109514 736738724 281944486 605985083 172054232 302882299 660099179 872207573 674808624 807980584 528621914 152303930 441027379 2152093 392976343 463610726 802036648 862347682 905737778 168377244 646143013 821817571 349900073 709685138 85466401 551104752 513133340 949991011 242555202 629934849 630528612 264233887 259379229 579767222 11974948 892177639 932891669 829258634 507478409 580028371 552867902 432597680 799305427 506033504 95172859 95670765 944182731 757567092 1017635447 1021390490 23318813 350726456 856293431 328773767 553961639 413422241 10341642 502323853 122886825 794944057 995461211 56699055 1070029947 349063901 233977682 440394128 362104315 125774930 57951233 494893320 850871374 712741447 820746880 456219568 179107860 971214652 129700242 974000689 956510863 744977891 749973139 938061564 704715230 839472816 867691335 173346444 769438302 131182247 498993613 208428256 1053392281 788894258 389952519 497859951 22059944 709499407 925616136 1006190294 46928101 579043130 607211222 91379084 368840205 875885014 886260038 411693250 828400611 109659334 707572142 332890217 107990198 1038991802 59099363 833581939 816284074 482312359 89874530 829946422 361022748 672967391 919861723 579905490 351783556 12637242 619936075 921815256 55580890 242937170 887659053 549221271 66287539 458029679 99656764 1050189915 774787981 679916594 173177208 357827919 634974431 974972532 568534964 382612509 1068544607 648374183 596391010 924374346 136520463 442965142 201270462 75974994 542739603 915994293 393311757 980314998 849571650 611399137 10645416 20623943 686710400 8633865 807193512 913973867 851182959 745276284 143825943 955383500 363547921 109991644 571355111 183697615 469748566 314004587 153957193 539222828 191383740 1071562890 118417871 119038509 689650332 619066337 324641902 430750151 153710473 275680225 75441262 888067431 289840395 1065402849 191329080 189477406 114966460 371922923 89360615 1015661170 396037289 879291054 473157887 638472006 271703562 519741805 464467735 562026899 89468574 639822871 542367397 260344720 541119120 437233385 819331475 13031873 554742048 828365771 113791331 327697656 219148812 777526959 791684343 250070921 209655309 417689630 934537033 609188898 561521483 563577438 372740725 341350398 124655846 989224507 341699418 287153709 1010185466 940743556 203306188 51642199 10755638 245452796 878351163 994143613 923099237 376645512 676585362 675409522 283186577 76075442 546135677 53759467 999887133 529931184 617301716 162004776 628260139 385263128 51260263 921667623 680232938 567067594 1071240092 474574882 828978622 137463690 276409563 543713028 76995561 802412956 692395859 979777376 743458 571490523 887118837 293308458 200006723 100412809 797327228 783091163 401544081 277215744 557119621 689580933 285444278 424012898 285562277 704275678 50113967 493804223 489069044 1072278188 468992408 989038756 342718516 380255323 1066376799 865204889 284317922 853220073 721447651 539115509 934142034 491126095 238304492 197500854 81416159 908909097 1004626266 812824700 835551132 307754198 19837222 970635183 511043755 863108108 342586285 667521755 16808362 319175019 255336623 924552083 477778643 1063083051 880827339 358030866 374972855 616611965 250271900 683432073 618450673 1024152030 796696875 112432039 720595570 797258664 363407563 1058962930 346432398 487784220 588413604 348976297 209886951 986340668 510527494 818382039 1014565416 169881361 571231486 620792539 769475532 965289787 506651659 206054295 995032065 637013144 597694954 637398807 442048192 1035667288 504410666 1029587325 838689920 1025348992 480669426 256043678 642206301 1011837422 140852583 775057807 1034304545 455973587 703464903 277661915 910821459 749759188 1054392324 402888346 909986780 324750363 446946335 21771275 183429970 114629130 669550817 938210086 39059835 372543196 499129040 156143200 27928550 77064872 357420271 277730434 312540059 464653658 580855510 213942856 866972671 865621181 811763007 10523390 624751712 683458954 94528879 60770109 838053801 218422270 732465652 186131877 358296603 73211057 576414518 628959887 63022438 127648850 350665049 761313128 1053687670 474845955 358094233 550960659 707955328 722895783 693241396 93764059 44873332 673951343 612819764 772329817 215510319 725722809 42339515 557491709 1072840997 854051196 150337237 167984818 203881243 973581778 268323627 921780318 180992712 59242693 930272932 523640578 811829441 454661495 941891193 560934273 436843741 347748033 1069381993 460679641 20042549 723215751 247416 512678269 483041701 128896459 735761107 697269722 544768959 873891742 531777597 871208277 839046695 372873689 837181730 199393629 98603158 701914495 296812302 49884805 361318356 443798949 780235072 931435205 139343049 821735808 1044195066 282648560 890241931 518128269 446911283 932872775 801784155 302700679 595537781 1053610170 678122597 784661546 695596222 951619740 185678599 61925560 582512561 527325512 649281163 381679971 73132909 765898874 360097155 1054534026 1017909059 637707374 480599819 875994328 592193129 879760194 933862083 1047856769 605603410 319829081 417370041 388683927 263559043 323151534 899650974 783319667 1000349534 548999424 879481241 207271932 280293351 1021021954 465939783 311771331 1043008922 255134927 453798422 49766703 335990179 791039095 970737664 38107809 462147884 159494390 1063396872 587385872 943142084 243022822 236555506 915450527 760782562 132168652 740822225 635206596 1027713444 28844414 55863076 652914849 732489380 628583471 856342156 12001092 9754867 293948034 1053102016 259596581 470643012 826427513 497966456 601030935 617275794 399498976 216736751 933720357 908352780 636322983 960721685 435522058 160682281 976014666 976130788 311884005 698031427 84308379 943705491 966821989 940784950 735897618 393579107 726068589 990610580 517246155 61511844 638540444 555858769 332558885 75549961 100161155 347602996 270283266 117207786 1038338277 968203648 874179004 595201168 27454484 205263778 90032922 739566832 374774639 427574576 372607770 238545987 344581568 340015110 373842690 231622068 556868517 682106586 369555495 266264865 387133730 582658511 821519952 676649613 108733051 1063621693 449290690 494888032 798597178 447998001 741771860 366736772 661240877 781057907 1062347134 756054332 16633552 925568302 696717744 861926310 314448205 69091409 20595388 398724100 438235258 756105787 398384027 301623280 899739260 553297353 434066877 422507158 457704889 13462970 570924653 631364726 420035615 822773276 30022812 316417409 196100293 673977826 471256657 362491934 250329890 61914117 534629804 818365742 446096569 82771695 218613738 1010420709 873465843 279062083 625085465 993684969 670098985 165820866 934908415 942816653 407307676 277193749 1030839468 830165522 769276272 846132703 875531640 526740168 1013495809 668532588 241764571 979176781 190807390 804005248 932330304 421875129 984653802 663170232 29019102 65951009 580532160 833728285 879647977 263601836 325518218 806702432 816314016 345217729 200722946 302402087 183066172 1035188379 481420158 563744703 265121249 888754328 552749880 1071030605 675335198 845551808 496159576 259859037 348052497 526122162 935428198 681963856 680800562 463288961 1064284682 325969924 890685603 1048797560 720043466 725582881 942578488 164769618 777558615 450065957 23273217 819134097 290139671 997040903 1073606982 553372796 1056413773 659555929 184577856 174583416 980803856 119299903 91694142 89939087 508240202 615162650 305363288 194152935 902183541 969926242 688830956 562083764 40106205 643949308 686300502 377348065 1018343273 37043805 673840015 995821866 896142069 391895419 362578545 31274968 1014694723 437655237 368543455 757118868 645041809 148666710 365142505 208738041 133860235 979003889 889377939 942884702 289578574 790091646 582932297 774014981 75624963 282949288 326846013 824789175 889580137 62083505 448397656 825214722 472059450 1042317784 1032758527 615354815 820621042 571641029 706871357 955722305 691112183 443839535 448004675 94536122 598909914 758199834 420590302 581856515 647281898 99049696 311207971 358692370 604464598 190664820 449007654 243193580 458560003 786747928 642175098 227598335 895063369 596733873 904525462 172439460 844021227 133883644 1035782634 97643096 919826746 604521574 722758398 521693930 993916231 912111279 915484704 12586488 481632776 645901578 685489728 929014676 421702216 858743009 1008561339 738531786 160434402 549660321 8256552 376619089 189407119 693445175 188000402 291089408 533084582 572946431 1071603595 29060829 1035448435 1037696493 949311547 423520967 445002636 168797888 768490887 591998617 1065120692 775551606 874870264 61443233 1063324679 892287607 718501803 473040409 138700130 499071213 934006024 372167697 268356281 895469793 672784843 1024943802 600905875 895581270 196035181 218462692 959985697 665687617 90030106 234778909 549534011 249692720 906283404 708792364 854847596 113294911 598653923 260357880 1020951615 151878773 1016830999 689030089 1018107309 201495658 972972272 472834780 581613963 673223626 424360554 456687931 123087834 753644048 277556627 896987204 35171492 442593819 884444873 1049802662 904801408 759920890 790970524 141679570 179300412 427039937 209165050 817000229 275896108 278883369 1050902311 952007491 376993401 349412668 473329100 274214680 154170171 272885700 471126597 471876363 924449947 884579554 67228527 1015239966 371252523 672058329 154155216 158609382 280093806 1042496958 426085515 123908768 1005388983 400138048 290955875 909936536 160626538 711236222 796748422 517811707 359681016 631401084 825657916 643061296 919972740 102375415 789979987 652755395 640683344 40337613 385753884 922826951 674417983 475709397 642149067 1047507098 947987862 182474020 322876170 710405761 539750363 899424689 389846775 282514816 335157548 599972443 623716260 50367740 1032500689 192826836 394540192 702133776 195011576 465726864 794741663 88763075 715839160 807106161 306622602 993671165 873425119 791283046 10883863 985442174 656052590 804544777 951938179 522424297 953267242 68888987 845570927 415640546 28321656 895660736 687238949 474519739 481524595 312755235 520103561 838327795 601835302 578856822 376340585 1045461807 432944649 737610415 665034372 821550248 492472052 459416948 228201197 20437782 427689870 79376429 39879872 626887022 198242589 716079282 919513069 44118548 910711243 1059628674 421076901 87523936 436869633 1037501419 753366856 204874897 867859226 473684356 757898438 94189707 758542888 224417449 436947690 353094202 460694727 431591060 961997175 755233674 993574597 200243289 203529992 1001211585 794251449 864463692 228363236 99210436 226991758 396292610 70031367 177623943 441019510 669302832 785812818 226621708 919420714 82019488 84787921 747822302 399775732 505832982 795843681 737193513 859370470 750365485 1014103988 675992332 817637028 561108636 97195320 78493451 948328938 698617400 114327182 316675818 548496475 901381389 691461601 974038233 314826253 720185065 540747072 232830629 569316009 815920922 572563757 585142305 847642861 448926142 421444511 455823719 245800458 749416814 481071770 915018927 677607701 223963087 563219033 815499408 723507500 4583991 185491891 271936645 246855087 151605875 398008182 770481412 1021423393 1071648016 603353965 833741508 786337529 440258725 811746798 741561045 304347477 199665358 795308218 1009364635 204977647 723022921 992278352 901290114 173460 312699219 932502169 6342462 575043282 381760528 985760829 544252638 19202162 276254944 161954203 244815588 850367743 251229360 864085956 774781431 942338659 50936734 398317706 664909029 507800048 815689854 95992007 498761819 755968233 1068474328 850789401 239619836 104364780 897718948 91681147 341514333 263487361 537158441 598319480 1039540220 928321318 972555985 51529956 658874683 583919919 695276596 267910617 688653258 962523730 868095896 61883250 571707206 746495084 554762507 343373068 44869905 323162340 38406813 449716500 843361691 781677762 1016408205 672639075 89371056 716183506 250714644 837389984 203189376 256979595 992034290 607413525 782047209 389189500 1020071473 203477043 961335871 66561352 713173387 570453440 404596436 383410763 967764227 324566767 432868253 239967744 336474119 936521168 704450189 865909791 489366034 97978894 775862024 367157289 410360792 685906844 17082204 617973537 713873933 672604295 196633214 889803216 805312251 725453935 622332712 190663341 502939729 124761641 955449711 154797096 342593297 210762773 590969466 43462873 260999763 168413964 902366075 746273720 10716358 919110823 474533798 308651256 724819724 13937636 593760387 116700735 41476843 618293760 891352383 566057720 522970115 652264720 842525844 451738844 692866503 245238069 204689999 279368517 1001731188 553180285 587779771 49377808 832658791 538126213 511133411 401037495 979931170 673085009 941712463 890598355 791651494 39693138 173298357 850113695 514273039 333146493 10858671 1030409864 520998443 119185415 728317942 571953809 994834223 787862803 729510641 636593292 615249776 25892604 540443151 915406076 358874089 612917055 188114968 47882426 542221676 196529214 932141772 355659667 1002799353 874611440 489619731 29343986 938840879 593681157 1064037678 659684479 147843446 382593337 3573065 77146596 820243232 649551792 234562195 1043290858 273744626 209676399 499325031 886951861 1059359016 956105475 606980424 201397578 378045766 289358126 421978392 788264918 506881551 531763898 779085529 498456247 276447943 206115275 745355185 152367963 729585398 438417803 760721846 800563232 574390452 405670482 299012490 344860465 48293328 798889854 815381929 805999801 705607054 544232380 761324114 796111317 204393554 804993042 730962934 208918443 42655853 91163587 938311364 801316394 883087677 480957771 817783780 316218689 1032037893 591290228 55756960 325984103 27035319 427642380 173995916 446510739 927230262 285584802 16688841 759878205 962031991 389031740 510000493 344422496 639024530 896993629 828569596 822676260 1031629685 545864601 874701070 615153889 729638534 477867782 636892371 719036932 770751903 1040240798 240004764 484547133 19100175 568330685 670731375 414509700 986130054 11581498 960816361 961945920 978166908 733779805 1010347276 242553794 730916185 1003085732 704082487 419979745 589385371 477160369 888880553 517071045 820684799 433674517 368195028 606679518 801649034 927395688 1018717877 221211464 914553024 286912211 1005437271 7336658 636268508 268859821 492168183 124616793 849285192 815276896 855450338 209336537 583825367 136736861 626913722 513140797 849049984 1033138998 627175087 677261596 256014564 902251466 879338910 16757449 852222251 527392778 620887728 10900405 680609544 561751111 956744280 858189212 752087775 811386768 278551470 628552197 70155378 121289281 1046347986 163566630 77366005 183993087 762093104 34752005 155690827 123335990 1060238923 923687490 769664755 608019778 413870239 623243394 690977815 533097411 452589556 935328440 1008848701 76042659 805036802 903697698 927992389 786680180 960406672 867686831 879624860 447206957 825447121 564993921 997621117 727990165 408776316 611790642 962999451 1039872346 301703213 945595326 660569622 103072234 487301229 192855758 147145068 1039686230 1038796846 182122853 542792029 144087231 454121635 903882032 447795559 825667243 621984852 24928166 485001640 399710588 62728151 244571858 420315350 244622542 825291345 150951270 684102656 725486033 814063699 868306030 362221349 748095432 188090153 973609502 190989462 1020912452 692425330 415149855 487788745 292069544 320914601 106552824 392476388 226314615 896810439 1039964193 627371515 481462072 999921368 488329809 865350574 179691729 718196122 167769174 709568767 215661818 338488336 308572416 349680760 135124383 83178419 567999398 922831122 493045467 766938084 402685512 324097323 865160547 658768990 470011619 611217224 346521205 333958369 318818178 1028131504 779602014 52852846 1055758590 364671148 871317042 424811444 149539154 694643562 742355119 83152209 287916155 873303321 714636257 351813468 1015033100 778824469 21870432 1036384573 854326152 818735869 930710692 738951591 755143959 285407633 790676610 910974746 465711845 338635678 757377349 1030470684 487395370 167722178 965302573 459940663 937309590 152862138 806551320 346833945 323403921 593884230 743138164 387853153 497922060 376371770 1064078782 1029189966 582709169 323230257 229856917 195264178 100707552 653937343 246441418 894014067 62448130 368044932 781019204 250946181 2111230 1055211519 103941812 20338883 317092306 602236536 782873935 186857971 301241087 415452147 901362597 131026182 996856609 185702296 665005854 1052423796 340231343 901790584 529165503 432921907 476871460 507381586 604811011 953593684 135776743 499255080 299525922 267773837 1068592523 485777693 886332116 641230180 665758930 722237012 591651642 743574459 364791096 852706181 239026813 293077491 759633329 734835995 337789027 867229439 189970573 457977508 613604965 51740427 510820726 806014810 904374102 1071167903 205536823 817801841 130834164 784873866 642252293 769001541 725153747 121973276 922490396 557808249 302843685 214209205 484974626 942170863 308695884 399483847 597848875 234023934 23611060 315353952 247584189 830567926 23185229 836117630 13582863 356066618 134552081 418008854 550732638 670245872 592139587 31965245 331314845 244356092 320653230 187819749 1015645682 138396809 439147588 902781322 925316693 1055651824 631807744 279941639 943584415 762799782 745336578 218850386 790602994 379608012 1041670636 417568485 57985730 923849716 1062918551 558466287 208748720 989683920 99138452 889387799 22635725 463503249 802273380 458059142 790524277 933924877 972315892 618984648 582388595 817368796 187283785 575361599 554854278 63046187 194461442 470865365 755152912 835379705 147715490 574588407 195177954 794645399 267797922 16314388 1005305721 645597478 558605582 599362946 615615954 164402419 420406773 1053311312 536720605 223483152 763364524 173450367 48778599 78852753 993054272 345942218 838926969 686886249 606963415 1067013213 951191017 819436740 279200485 722306373 167071366 601831250 267498901 766904510 280803991 1038036902 540896916 705779247 851957412 673693904 153212224 881005935 638366263 616438807 26758915 517234524 925859132 1073006908 725485521 163207136 76498893 121361046 978206480 511844145 1050150390 122392285 269117305 926664438 1051355621 63123031 900794253 296614084 826747477 688462570 181215553 988601856 604950018 21911827 279306186 1049465411 416603720 309676768 196822072 504464603 48367275 463709753 291000951 581806627 731880584 690318285 627292928 451343316 323457079 34368229 243794402 34222262 494876640 949295292 798431482 881059647 665671535 393684066 986922814 555714026 498001633 154866450 659548643 1068023330 574195042 782636596 660988257 14345230 1067429889 449791198 235775152 363074443 730417331 967389481 195777554 638579419 1047512047 920494058 1037017026 106753058 1020850120 896794375 381182130 732549766 684565524 113452793 928865383 960312635 277110613 960913268 1005871 182344374 824279471 584517844 1009590556 861541448 955469493 3552702 608082097 528186818 901952501 816335194 5907883 91719415 311176744 994293550 150926349 564411291 612444913 464771357 164043131 818896817 71854564 610324304 484722183 643759688 295845449 811095918 425980225 219981406 166121235 287105094 780517478 479181556 382878332 989249074 150539791 628715819 140500612 89657215 1014974805 345559547 827278074 8981776 575245082 384474720 276343832 646760369 1014660231 53228484 1073107509 652771462 409172448 664303692 154257249 575113674 343177952 856875701 486280311 515722616 285691913 935958039 265458704 895406122 1033046311 18555564 982332250 520190835 839090543 206901080 193501749 997933209 663359445 704565973 731229591 367836355 772631357 632764598 155396991 182420666 383376596 901305307 940506506 330694207 762670781 932421168 125767954 924118775 236396117 730427156 922277095 472752678 302923243 210098854 648533278 925450359 452733645 678820146 293983378 59339063 90622831 910594616 517575357 813558593 448525036 853320035 516060666 32326431 658361656 801493546 278554557 675995309 964119930 911887309 478172003 147219663 670751268 736122650 228721239 232553449 294016601 160475240 883456960 924149654 64300921 708055761 800070055 259937823 75674126 745265318 607711164 436707538 30549847 1061237163 832876285 404823169 383579550 1053986104 169610847 254789897 55944994 352776412 96942301 128215386 263572131 899063020 832022995 601602616 539490005 1060078765 346078352 453169034 795702796 787912665 70475462 668842743 543752959 267550116 696059468 214818644 857227265 178753671 235256516 949236942 357001290 65665192 533368169 528147592 995350876 647630438 386566581 116546780 712562448 82187751 653335601 1044385854 316547294 102861589 684516403 972801892 258641865 303935599 265671371 995939762 478861935 602811668 193058826 612538810 630957000 184390910 788705519 717521394 698531899 336035407 832402991 1005545104 982789836 969603382 313163034 109018920 301309493 821249494 746274312 783956775 788592413 879078557 862414715 826362131 371481498 625780882 597859916 955853042 1071623861 1039175919 65031129 970936749 205255020 1021886767 765090903 32116038 632502910 737301889 195813931 389731178 689681213 533484372 551851951 664421578 574765215 952078909 604589537 335684241 977339673 875094150 766396139 492210377 119081153 896225801 78303928 254809648 3433010 700108799 730149027 1017849038 990330603 132216514 745364349 857416163 1018814381 445879604 264077632 49118340 938323100 206749849 1066967015 541752159 811811279 839135824 554442554 239908083 99091651 674967562 268251176 737509475 814462558 219121149 513860035 265840072 373241794 359513086 473805322 186816059 275125122 1033109466 129202714 456930079 958787652 750804653 563800774 602189159 803761165 63693874 1000603793 201863653 719792119 1061232161 1014597676 259797433 435276079 271210472 486314036 8506021 719788702 899763261 573573803 833938812 30534428 254446519 980154004 683273368 167891006 956925748 771667994 322997757 442994599 105472350 222664551 261084 1027158999 951583798 258610827 128734634 988028204 714864123 1000436265 609987216 916161474 204514753 549299337 595922025 988895055 910739983 556695225 433764021 599690115 714096737 1001795965 429074153 195952694 443357515 547620640 145304789 602188063 709040099 609247480 982071264 20134563 183778924 47353361 512269971 897846153 884995578 423508159 116368054 994316981 417284952 993289151 443722250 94277570 713749290 229322100 626030265 211382395 128248851 925495194 694869092 473477340 748643384 936165778 106966853 386831285 329719199 1049556170 681007119 947877377 329509462 683665618 375732159 790338949 534165538 894037218 796149567 426724807 2280795 548914643 474152926 89072778 860848968 1013133555 248476513 836395832 812149629 386375197 477037477 684144276 189150319 232174436 984831447 962718150 508902109 152856498 935181252 949421029 1066929662 714866652 54824593 982968189 268691508 693822486 578671603 857590062 220725066 556437933 219891930 259407669 66547396 1060722782 854146160 630131039 752693307 997977357 887250418 666074120 106188851 351655148 1067851399 816363180 925932228 699760306 364171625 915406729 905586933 52974060 835860364 208429891 103943878 754912578 633512678 961284399 799542847 130150448 63567100 956504900 778042793 307504884 29796600 398395222 593004161 686706854 602149324 501871408 825321243 612560657 270345693 845126903 191003607 1040347876 440811753 807171292 504057252 501955226 39562791 686772956 133149540 80996198 1033204204 66247128 845877505 190691911 964080611 464579118 312761303 218981114 217439023 1023873060 697868476 287308070 982230419 848432111 481898374 571566096 804175541 896001389 121966234 225428822 996173083 813556675 680307274 988015490 1060661470 157837196 932814008 336338050 706144248 640638880 570795697 566582736 432335084 475851481 531898295 414390779 308783956 799140672 808668582 713838274 331615341 1051783491 736462630 797726423 1008456295 611328318 33351228 946041498 835651121 693906911 123897531 865412903 160913758 988296172 217197945 471791248 535046958 538467300 401857391 1068718826 977641558 33713989 178788685 451702738 770411881 175813407 697281562 880562054 633423780 463149172 426978032 507147520 355832519 5978833 555238206 193538063 834243636 1040366277 785300395 1065469254 176114475 890969609 210357099 176778751 100109886 793586633 116871364 831302521 487489509 483448781 781105004 277853099 455825062 224860273 505694476 23318327 710267256 519501874 431663318 383833216 229502539 1048153728 653061861 530544427 210176645 1065439990 333417035 6311516 168899986 199224649 252763123 521690933 666647222 269820464 964494289 149761082 290074237 117944099 943828027 65590534 704540570 96558798 179882421 1051344071 823146501 49333408 679792208 654013331 573187656 797931990 541191692 422471066 571658269 671689003 173662125 817463739 464458050 518035922 699623222 394943768 637376118 1017969176 799684492 579989674 9323665 1011499807 294618974 587822904 901723983 800516677 201506001 1037252695 260528595 793186058 903439744 60155735 98480634 676267831 931016691 80185445 899733320 285132401 974091525 490797231 91334724 512953654 363052490 250143800 140264521 677347089 518225499 717752718 870805001 1005194468 397839196 440540053 874744701 214390534 304203050 892799791 402958049 1067349262 521193024 256206262 887785431 573907376 34234761 15914936 840675765 87313110 911235104 1071784648 799333996 844724464 136939100 338724184 645356569 663755378 385120069 374434096 189318239 1027637550 1053405908 15342145 318908158 271586152 123437486 825385377 89273064 1007044874 382022200 161047736 584600138 700796825 619859804 49269336 1061052419 535669763 80262592 1025182384 705605350 666274940 949918225 117163168 1058193293 699787000 1004307043 28963758 957649415 478540618 811167332 518163416 932859655 635086863 111957500 474142825 899578567 7698353 960424453 658909665 937084134 832552952 596169405 95219401 895504931 1050068563 552527027 630038436 714796169 104795116 329011817 20837204 638895779 684079847 779272491 598478911 426164874 701498255 589000603 589395891 32251507 257013261 709738063 489310505 185329779 786271672 918620346 768601669 405541119 747503146 835768757 91178455 246691036 615359666 901459899 303418167 838702316 203701959 230874911 813467497 638211127 944755995 243959924 629180872 147959323 644748459 538503085 502307524 696894139 648689929 101266684 898242394 548033551 613727330 344154526 618498129 399127701 592363491 3504296 771452623 521343872 962197777 296153854 882390794 13403938 468158949 916184924 656293154 265426448 244714240 873201882 751044921 956509327 851288576 451968605 1002291532 508119639 795274117 81269040 232269215 679282654 132388974 370084459 142966892 558869486 663555703 935990963 525838580 906170063 592752028 415303292 837302201 884515029 504717616 1068616341 445109532 130189226 287264656 410406277 91159024 131613236 89723287 709158182 55726926 693047687 81089602 1002690910 798259711 1018539928 7730736 258725672 770735773 1009978292 714175024 970130220 145661926 1051798526 495712830 313330927 66435287 342794091 19007142 760894629 922419504 630136895 430934435 838373646 766776077 1071687119 1021152676 104164920 946398686 164928052 905421504 477906228 630178178 271976156 664712886 324668613 29599558 471124815 731376058 607847244 1044675475 756519426 142576201 469212419 536813843 1062874483 331057030 534553962 77774640 658276768 454743367 352902521 413036015 229715245 60603165 341111848 1001042818 184398423 834144891 808766090 803949889 645754137 712328580 1064374533 537247039 572946797 217836546 886926913 632983409 799062256 1008314066 553294843 400726651 100341654 146741843 669440940 793061179 464326188 987965544 343767129 714718676 908127669 590133547 211663487 994047632 430886073 684436342 1037654438 42557683 778544033 420493089 1039480455 540905404 528878508 821285093 408882809 741824504 164069222 322521267 494003540 423259994 366385883 876598355 59050293 934543621 552902261 263227640 415541073 1060406005 410817103 1043357616 208648018 573512938 573321835 13947798 280625547 736008518 503812857 420240028 326166180 695878918 977084039 570621860 499964004 508970412 961881815 850724729 255222925 452550179 656147358 70300544 800173890 909281629 105391791 705879846 641685790 961985331 1020528187 228662355 817035992 546529622 673601008 703130881 827894910 266166489 8435714 60692613 112191633 1041032451 962242461 317393104 535528550 781794086 490656058 802502830 433746540 121077411 908008639 966194777 975761134 866457851 845709139 1049717937 1028521797 695230209 533808552 35510057 183039000 436973691 819006982 735699432 967752042 22909909 690962856 628114118 765588525 58084668 148363676 343997457 986980233 250948487 408912780 842204390 146231804 637326629 142025569 1053400556 521955165 835428454 954257241 94131872 148902131 730919537 292493247 575311840 822278784 180675437 244287442 847464104 332083886 272030669 655043890 54060055 422143254 277128617 179504 748491646 823402900 678505710 512238198 249131466 94848882 370441511 329785406 318799226 13805871 168998426 851118505 688829780 812268314 37069957 561654133 455426873 1068044385 644401596 185096149 720984904 118207161 635489568 217862684 715697256 1026404315 139274435 181047027 615071260 553952587 884461202 188359882 562157961 923130326 386844532 56895990 156484500 480664124 244710087 436695930 326697880 956421647 261184566 715284014 583204135 567297114 864912205 537389902 719467175 693629971 590255343 229844819 43369411 994376210 872355882 284688641 517316045 291848529 762941182 402584551 533303321 460574118 874964945 1035491080 641208533 81458490 302278266 501095264 127176555 286471356 639865551 74461086 537183749 977076012 23548732 184361397 911526215 550344769 304604606 596402311 820869635 286017846 540380338 14607518 923127893 961143006 74748995 958410929 407239475 578761690 714804571 746237602 398407325 1069630791 323485576 849054038 565257535 76994882 586790897 984478450 629318585 646574704 168610624 793781795 943451214 169021531 184716622 396964891 610316471 430359025 869946682 187744717 99783283 702807947 644155034 18772121 69114086 358453098 966837647 323441853 556222752 1018438938 138837484 348867978 62484361 513274862 291633661 244024093 276194079 1022577373 517460206 305196369 670078652 332680773 611532271 185221107 299247617 664338897 339042926 1016677225 956424548 992304095 779738286 825888065 53494413 13039695 850095597 644133644 415444926 272241317 543480957 647934153 1072362872 1041229601 227242215 133788665 446423123 346020031 250535958 411930389 226689896 443265621 189242665 423286569 935550365 496224476 366610034 160882929 340524888 795943145 1023304976 263041830 63328769 686205303 62512505 652146003 806589569 825348180 144993201 216182253 872328437 952149040 714906247 900522963 277686316 889705799 650216448 380991755 242255275 232909553 535026621 965564270 813342826 78975523 340206944 642474743 761223135 189886625 685216748 1023305298 288105279 632201813 753269905 425101095 707274085 849689931 139198803 776716824 280705323 37870204 347047422 29786755 297254427 420201626 788981891 22627503 582159373 145167586 696428632 805625357 587255040 703788097 457326336 459564438 844164176 361235049 655070699 773667505 57640017 441014153 752631253 741736179 264886223 1006937641 900805098 696220800 339699077 756096869 458105866 60276379 381555628 172793864 91515163 287313769 619513715 468759846 1014986608 76144331 765999929 16086725 921943943 777404988 262455002 624938492 1005241051 193013680 77215900 524332604 17909012 258995342 659074816 405000991 794406912 837473141 254051396 90630835 928231151 374645216 948304935 77463213 140178754 473858865 735909079 988954208 468168930 436070015 598066286 83014439 61324009 651186256 328543802 533758965 897881776 534874551 789520223 953111198 768297764 969069629 542142574 604906376 584911189 342382525 603672537 414647887 360323627 751335014 604275584 752386220 315697218 11629874 586658372 949302432 36079824 1066507793 486559577 40810412 255354856 958690957 867091351 677364246 524769432 756749142 405438611 274040131 969581905 325576564 513314460 535429078 785539029 545997451 314558238 324210908 960939652 919046337 768572275 277447840 1000084509 538792663 523805013 419179476 119596884 1002326864 707035610 1012997129 532434504 638831093 214758535 1022383331 436468921 662542999 595819926 697438094 972166586 966251010 117947756 351638238 360212376 213397385 114528971 28712057 739754916 97885847 229259044 794287001 202631185 191038062 327260634 655122878 637500917 365662394 508102085 531723235 429749272 1039566442 564883600 17373535 1044589725 479401617 685119246 974781767 59263022 1045718798 639567083 698575061 261084934 312605319 1061334880 209537373 195938623 36483767 708746592 597112946 573215773 533703732 379160722 133927973 56770203 908859812 151114399 718294927 586076956 197735825 1044168996 903295511 768461333 231558608 609862293 10186879 699245624 320297167 215184810 26294129 890809173 478517104 715372788 1062773759 265856414 809903987 1031149985 197609773 1039744219 987934558 601853567 655407729 653801915 882662176 770070635 744257727 1049148183 599305763 395086680 823366424 894764648 952134398 920158602 331218854 530063285 437022191 170052680 422973697 388233153 142656609 287350952 236246736 858253593 595874001 150086489 685049783 628880736 409279705 1011851091 678887469 78454987 197067591 874484740 793331000 249349611 125381074 971370051 147747457 749583724 955475216 373340032 17810161 550549621 653022876 395592159 411301793 792499840 158528024 582157865 1038929625 110339961 175754450 723875204 502789304 459712464 90457016 797277813 953302228 408963705 641085770 654020026 633192646 849669206 226887706 501011372 159064090 677902563 540879282 58826111 132967703 864354419 600064453 536840856 190594730 31776210 615081474 1066057525 204063247 512475625 420605877 971395529 272817708 1068663768 519764672 631918931 602058789 1028979 594370075 989266335 561045626 210639450 538507329 506034075 656059084 93555372 1009621316 856291196 106995168 629288715 807884235 30162603 102347498 146547593 17924448 565030022 905889893 371025541 538426556 1040671595 615254570 616869217 388976608 496553052 477455191 640625325 89612752 843890290 97431080 886380944 138732425 69009632 221899488 769371966 760102978 901177122 909697899 241460447 644579539 607377347 990560239 163806604 172202816 623399654 602914692 829843706 241952559 339527792 315109181 228042665 52424564 518495809 986994684 127117793 967895306 525517941 542030708 644332954 257415225 987282129 665882510 624399677 853274387 892623229 415955993 975007288 359457832 712228042 267683947 391551674 76549894 90398660 683033708 822060548 807014693 531793848 323043960 1049136822 466271028 105786612 747333771 999962718 968951503 600478718 575174916 289958353 292522433 700256466 921095013 151784359 689974301 434256311 440903246 829804334 486662097 517541547 610720744 997988251 622500415 954068064 83994040 66882604 793247070 983336954 45160530 40141413 1061462015 96870289 123317371 298992131 411194509 497126561 1026119399 521373091 216465840 849326304 522378989 682575458 524097594 1023271809 713319489 217585461 90629572 94190470 150230597 106584694 631788026 792177895 400648920 1045076105 1012300518 994949127 950730045 495904754 603550107 917034438 413003190 347734879 25636865 243594625 1065788325 418169493 906226505 991463377 418986981 277660223 903198205 844937953 679413850 690259365 652055344 1056333107 121126706 173734904 766345805 706891757 891858458 242323994 920431813 886092683 905900412 872528285 1024408709 712030329 96746436 687029183 91247605 440541591 981754774 485675297 900976384 1069470276 770998787 61339066 289707208 640790141 271751219 324149767 724901523 122461831 422674879 6053758 1068214023 854815698 853706697 962972462 400336109 799718238 531936079 358058050 285033047 614302172 637844571 282382741 485661850 296486426 796641807 915416774 1015285822 1072110169 495342197 600909453 666429449 861249593 735081745 283385264 851937190 972398311 727471098 117737961 292255644 803046922 1068533449 252890224 87048560 370453691 989916023 76794735 78812261 762373171 462584661 291744776 832840238 594357437 14318213 747771519 188771538 514765186 899229098 1043975683 30249607 137186525 962481963 214381726 542472556 907461142 628383975 979595301 746266966 496809541 180592549 1070385299 1031035220 362081622 191725895 562815989 725351813 323856295 236132438 410138202 253265439 350447232 598873607 829441863 440429553 746456364 911155789 863259375 197195087 550098341 10500803 1033353507 11555251 589083851 536088371 724813906 434842069 472719435 389965458 573307938 1003537087 242122177 158932475 494295357 208747282 981455217 1045027820 3053563 128467834 1070222085 984670557 1055708212 376486267 542519893 348986766 800317907 972439932 433185242 70967486 812194773 802866609 266447161 921934692 1054172640 1055519222 227262209 672844688 407793507 505142312 274639466 874878462 512004280 305389293 223320299 787270335 1004255022 857737642 4165253 850593182 992562244 667489429 418593900 250424376 340630029 646358372 457848811 308163705 873613187 210737336 543737007 332245086 105532311 941263233 1018690049 848140657 234762749 860627507 357902668 288222282 351397908 1728169 699950310 592453378 515553179 786145343 524888161 518891613 230772899 570930234 437908316 587704536 815197338 84685446 799959712 656650283 177272710 427328402 787829226 478388047 189304470 898299846 1039485066 1017175945 312493221 456002703 569429178 378078666 1024977915 183366488 625722711 97964986 1062551199 769857653 816088519 930012123 240909862 921101965 416310685 132374339 796776578 865126842 647305522 304226491 524496046 612017537 969843247 50047250 125231280 123387079 672829022 463977565 973102142 53119702 826277270 270589253 671616935 45561508 114880290 595154668 1023554556 494549226 458603719 640931493 129229624 395432065 494300436 653904606 1026635024 603885365 480317723 350135668 497394178 580971862 97348222 81835635 830601483 690873619 118188823 750313836 588835647 12099647 1012573712 537351559 1014189621 557787002 79876321 322261776 194277159 905644181 98203457 833311377 237055409 307294347 236938006 800273090 33845094 16087025 1057147951 464121538 631621100 402477453 688511447 282421352 455733383 431351433 1020365730 855041062 333361381 786313621 859011791 90291388 769317148 234065898 846948637 1050675627 520796481 820684343 1029001191 243453407 682499332 73944339 938621914 217047614 459405351 221893084 302552276 748247642 153758918 1009432326 255047743 1061549664 979313770 66166150 399542777 37625747 817392727 600562100 492274145 391815063 679281445 666042994 975670831 879512220 681467855 375804584 267916888 351533298 571733364 44979932 847678534 319160207 1012120241 412963951 398403108 526308040 22871603 403206616 358872189 591127646 100886759 1007554224 986984411 15136225 571301169 612217801 718924439 487672046 1069550254 913123209 286600929 553987803 1041686965 1023325460 53017837 350132684 36720271 367757847 603943827 290920619 52037636 71465245 586775806 1022312855 349309380 82264978 774117626 170321125 1071820430 1002406287 771128281 744396633 189900271 387872905 629041985 74120995 792677385 448196302 952076972 270029339 188196959 229311644 490275286 1057035224 763474563 1002519644 678388417 107999013 304287470 412129741 330591688 109935861 178466411 185681794 1027840626 1051789285 395657851 732532545 773617036 299114025 636149033 744619014 104926404 769980397 541679808 533107914 313861684 700054732 241666140 980800645 522150786 127385005 753644995 54069823 888102583 1029972232 154519904 581204354 721393651 689643223 777935366 442461331 791900932 252578256 378713806 314543072 341511490 229339676 994504644 1003526236 180262892 8300711 135238679 161185216 61250850 1054216807 543329789 792896259 51444361 1015009779 35646138 529058948 130244240 754024652 262581710 821647847 962757397 922682543 140319924 1018877638 177612468 262255241 924942025 767110813 806174091 775317673 322017367 49014355 579400552 388990610 953894140 791022169 410420176 822660560 659265347 442584020 463583972 593919839 778458514 413062745 634134582 582308483 605295218 770087923 346471258 325739594 705276955 637133573 768247254 267324470 536088374 865724502 291444338 24494369 554411673 68425678 472013454 136447328 281898384 1071569589 582862070 36139009 142034038 356610276 540382752 1040046551 404778166 84765083 579731021 399560220 169210570 837423289 190533447 489008060 394200287 169928086 815916725 1050938136 278837645 633773537 12110449 890524091 240355574 616411582 829882946 563962313 146283942 318559306 519421606 722951902 865520155 295327802 80468390 974095412 18323937 442146024 382287995 218663231 238178404 413372846 904621196 601854219 355313951 856006628 408451369 668726594 627474903 322017543 151268 1005921885 925348954 111623885 247865636 70057397 766156911 199730195 490957425 802417889 374715800 986305294 952131811 734586866 879629769 320755330 664965010 134898334 189110185 361906997 905890778 428619813 277517991 970955472 552197145 81795036 667398257 931870800 184718365 175285072 139155179 285208207 663532641 981578690 143533881 140428893 507670836 762964347 614929196 275658081 492221104 1072218870 1032848138 87201657 186973894 786648754 667064777 916023646 495907867 83499423 1032241434 286127952 787518864 619056367 375659960 821028407 564281716 701295472 724021415 808202671 681402167 134342073 836524369 840384318 421316590 129680373 879656611 171098229 903156433 927503208 848621217 206600842 164024995 748053934 47495705 1070437433 1018584019 195848682 881739420 719284809 872132885 1067659895 1033920792 458907135 959359778 216569938 629243274 31511604 556558139 278219427 487470590 561679274 1007566351 425939515 785175601 763015624 20758684 310907497 413916385 678501145 705141681 421029934 877522150 961775403 987147853 624651789 259521938 584757583 690993191 565311284 73098526 959089768 1036908893 808548431 212080985 177002605 360226499 194503542 183767827 573787146 725796562 69721492 882584605 954545114 620643996 818806607 254188062 390174914 823369285 803177242 159250616 786986176 990627016 811588339 864905351 141490420 18406302 280452066 136449809 107484575 890000000 929353022 900669539 1062729728 1016269782 162145687 431373621 1016687986 905543351 1594692 782443782 34332400 626524717 902912482 1059827472 666374405 179111861 546204514 635628087 400184018 911126164 194988397 90821507 94425901 922346104 292686163 1067889096 545897693 969883136 392667367 47251386 281364735 480903625 596257605 595649613 932053236 638941253 852860550 2112526 419689056 347356027 148733127 941773433 412559856 746666243 870423063 34900355 804831948 909567522 966582407 486244479 1030652291 794669053 603739028 868262451 172080836 895930109 380170755 678167670 865047434 363415267 59379853 235792261 116327444 903578134 945416698 559998200 358227280 387441214 231770056 364629509 960124799 529821789 885636652 342609790 960938481 144845789 952370700 501782511 1058988849 374712869 229924916 162297518 450950178 163675998 238036727 348967929 1020153031 993557282 460792390 376987340 495212247 373593332 487558382 766918178 202370636 64848811 510079592 332208461 793585372 850165067 283762196 150323131 787232230 13625366 127188682 332947462 1051213157 741632730 241029549 797336838 300512215 923024 466443120 901528416 236959312 466014041 943437445 693199463 497306461 852660829 1072673664 237783185 521491551 914840516 840439637 147661324 1052774161 1005887608 99489871 73891976 804737289 541326987 835785878 909963642 890890145 699431363 697894496 240136213 786172444 594705641 667706179 256200009 789396116 864260038 989929166 389755226 579720794 644728322 949958759 174477394 992102736 261467800 912358973 375549888 171067176 470164380 974492534 293847658 1055885486 1038253985 775601848 1064866252 17737497 118797979 666141182 860089587 496075478 1061394788 264660798 866759582 324214257 1046629126 245193915 593874509 461845933 584379147 1034184393 782876418 542663396 31823518 24142142 1035857053 948486617 961138418 103793166 35359593 947010375 766462151 387874074 21219263 456606065 258807096 910361779 528969725 453250710 679673963 688526317 126608911 220629937 796524104 871580427 696730737 1055063103 66126958 546881060 357653930 571644213 582187986 989644144 955867415 109613003 224621032 87078474 194099713 611935572 274923658 711567649 445297093 198849732 530889688 53049183 1043865797 589588870 606231937 103831253 571255455 966428765 224450435 170128020 81388275 444412020 169796133 304179689 492894253 221121475 417307831 610327699 22484348 679082964 721917190 137873572 488669685 699031151 468901346 297674743 670972607 932301218 572526466 271120076 559462234 18395819 650399330 115334786 662708091 329399570 100721012 433931797 1007129426 239531366 314617785 826969763 459076163 185939279 472905018 186861873 548930435 53281436 50238716 240423538 776814300 1042693721 45314996 527395845 193446122 750587105 795181998 142666641 655704411 415818173 523401592 203113415 401531152 806587168 486209421 181343359 977458544 1060485777 1012233110 53786464 1027359371 30488388 725104037 625078367 506594995 470611098 548236456 341950489 1053832354 851753224 1040142654 474011479 1033821233 964424783 745968255 738228902 447780124 1072759388 635323992 734749775 232758008 997874507 910606556 201288924 899212400 163727054 926514274 548423347 48335355 325198738 543936393 401211990 733137874 983828452 633262320 219001558 435603659 344034542 171921549 715179757 1019141702 217074036 242563471 725061484 53301986 969600821 269909396 836740273 383202505 555887128 903902189 369551907 249771754 291884534 160833728 96491306 493830096 413338443 43203287 950081561 762126974 692521752 572549146 444122961 38562590 923252052 862727321 1000377957 393416224 1067834244 689841343 774647034 361731393 671961432 524602863 877569896 619330739 16920387 282961918 960006995 941829016 189457804 140526303 118554072 990583167 726849468 656775319 123856971 127632863 10662384 519674752 358318574 359219447 693140941 615781850 782107265 513178659 604589675 1071191626 505153510 857759502 238378071 672991916 788552096 39128753 45561123 785455833 310523750 789306462 1025191038 107352901 719146046 927340425 221775621 487027005 573011462 89878348 526022085 607515108 993586724 550014733 231072693 498502521 851075636 735332497 80742234 262711410 265690321 655489375 314403959 745289296 146634511 555230076 966511199 83379239 672550559 950896073 1013600172 690403840 241154520 710794583 993469884 155528679 344216636 362669671 513526916 286427309 1002040768 779958812 628591337 827535220 1010168021 9712449 147089108 443241157 129701342 600481187 838772660 13300909 21211019 614175990 603888426 535434923 480506337 1029556004 246192253 225624607 404271202 945400005 425024474 301520616 174747659 358139302 101648862 41628008 44556751 655635571 330731266 1055797355 466634171 914980554 376951653 440778583 498831338 523338105 918859632 59628697 1023839781 941866007 796898531 30485531 678667906 262886343 165436625 147989348 37225556 943129354 385643148 314310416 267807643 748914837 348914114 901942529 88761547 799465584 100695770 396959727 371185123 518966793 249474482 928164902 89726929 127208449 717413799 709715217 170117668 547253403 4925861 143732213 223528477 969021373 682202053 306928008 723046504 669568494 409937017 174163702 84059499 111784909 618169359 592232894 190859189 31195137 330654716 394745860 627364378 403947701 287414796 621839556 205643306 935372543 148077802 702889967 953099486 1069337300 894013051 214468358 905042067 520343809 655681286 566406128 184200639 600003500 565698393 741705036 551903147 222133160 872029339 570796096 64452151 617985876 402141153 914455912 988204399 206783591 1050401935 996226968 67171149 39313514 30732922 840731028 1022736299 949075326 391903442 882934051 903059216 985908004 81231684 355188798 194273968 596722991 459633286 1003060971 809099963 309845268 672869363 471657303 213503482 517463735 57385235 562947579 829116610 224233298 439359268 315481176 850830075 446908730 793865040 239778400 408533587 452043321 593527024 857420371 497579957 378150610 813376130 145384774 120173890 271389986 219690061 342312380 992483968 1070365128 32831234 268780732 784486772 435651654 798912632 145694031 3055983 150291055 764092149 311333523 350180018 711978095 289043175 87000618 396752141 789712715 560460606 202124772 398871321 882144201 90446567 981004601 413513811 649001307 573801481 1055684814 224554958 1038954298 796202501 894090286 201231824 429193741 771825828 314786593 987148965 779239471 175311655 186877314 546889877 182627956 615660103 586861853 79051752 1016911789 919251832 373374311 229359360 57166316 60393878 171405050 192443803 529265203 98342733 714958971 865014599 18966738 213152009 714102480 745736829 501205783 217512093 1039284856 902020057 722744985 927170433 580852266 392788749 777258985 599910920 9827189 522484762 940343798 659694974 774984626 963043802 604155037 2554282 674541586 397808072 483494198 429085137 1068572589 567648487 1043960742 557813113 267850154 217794796 557906012 588389535 961634062 648217595 464645627 148077898 936318979 758315348 480919074 588640425 712064020 643990055 29149685 917929853 352740329 509289449 615858540 381064261 624814348 911102345 643241611 970788593 129901642 632176775 894610158 808906321 158308809 305383110 391338400 901654226 20949886 920481729 1017010392 384513919 580993945 387901156 735222253 803594795 19169833 904867527 948902691 596118267 72506327 685277369 110077408 828608610 160683246 848416046 1001188861 964703678 607077808 754436626 597952929 56091901 232837724 824907152 159686837 237323732 443193950 329896947 661443496 44381740 933027630 376683207 717597887 853128235 335589641 257717920 924691064 154848607 614945173 392815619 1029192584 1005649298 1038130861 923012894 11329121 208594952 1020057175 981975687 164357210 815158938 95706623 465399903 857492508 43767035 651555463 666377363 501087192 463151872 458643354 360065851 216540043 339717921 726618727 334418511 626969511 362459544 189379101 897584731 362597368 639188661 728363449 455379399 882133956 155968073 476008396 1450932 170751074 924939868 955896939 1004991094 556239093 188088780 199498206 712619605 320019600 921763078 323711224 649698060 846242987 294123132 789789678 931101402 13714526 528945216 99777016 189327419 371317963 755919491 468728196 427308472 466778660 596403510 431635727 904542027 703688838 212480180 1003012537 696110907 149294268 243887504 54399470 423103699 1008014508 574480369 311132005 869190067 521683750 907862204 145536881 19437839 207624154 994677723 1049326782 1041682127 119497733 355122891 808141420 384804201 346187417 203242991 83541256 114830470 307872022 454494657 872643092 881816314 737284416 337773686 303652430 592890155 221657054 681663242 771199049 431766688 898798335 662529050 11436566 282272088 233584193 761248259 537645748 275709301 724772352 1067960487 191468666 112889253 750745040 664142072 288962168 588094009 139342386 806613260 442988871 800330765 694182297 428249615 459112808 784859476 135551164 83699306 251831514 548273584 946834880 242865149 245410530 182658481 962395208 875401842 256264330 270720480 356150321 612232011 45946684 1034188723 428129600 296454764 785518567 169376116 861103037 1035080830 363476350 514892886 927176526 735979559 946272812 37044764 878662546 373185462 600988965 341210761 60252951 227906743 4601352 692244467 788974309 218209339 10990165 69990426 87228462 904957747 807054629 821806056 926484190 86889678 838018855 936744498 633655770 695442447 516313904 10735153 1068144961 708624004 590003988 532990296 1028427338 749764320 956763359 243092297 137960014 913862574 964680254 951431136 374299461 954427443 17475918 143750256 906374779 862116833 11254452 1016517050 344975683 121120126 1068773814 583099695 698903377 833065168 286748759 185589166 823934638 276798578 786519322 928155520 332828780 422751937 206639864 605498816 854089335 912449392 981644029 928400503 994570856 425538322 111065864 63279661 1063210617 832258983 1053530196 447834838 947724960 690264120 490670158 1073170303 333710165 781082246 923094459 106275587 999760110 917664755 378814206 36686892 306668386 330548131 268163807 738454379 226351925 89588481 1070059878 1057976051 898900989 240723358 620529627 6255156 91582764 801730856 994753753 398445938 910928758 787078765 835583692 891432791 443878504 28303054 786150465 578752552 576378421 1031532853 482119607 911260677 924185485 102546580 815933396 348819865 686496706 663014323 176038224 551742799 711354531 405532156 928642129 14807663 95699442 227030787 198597260 413053323 54381939 797595718 448207126 704260991 357806216 285685060 379309202 612042756 413234302 455988059 339390372 162627595 210761170 1052442617 170166225 360723226 488532369 85169761 619357622 328714407 780109190 71283832 900665878 1006696552 37742433 639808217 1005076335 741522486 246424711 1073340466 621185159 52484864 921363369 17201604 665054938 10338958 714939766 300638791 952334739 617845682 5582695 740807738 562419070 358539101 735300977 1053431678 960874073 910471582 335156343 36786034 158067300 21967683 507592660 373348937 762666739 510181451 311322113 782609724 404598321 84306362 735334633 198982777 1027965430 331414306 861598581 920455334 50999825 388865526 477807992 297233144 5538589 538580033 357990143 770970999 964229013 66249710 787434938 520086060 723149804 526948181 140297943 699170529 600454780 163687219 268094819 80521322 957920010 987949631 560063643 309438530 118122773 580255974 65204121 741468735 432125423 591884126 680271887 132760105 169619920 836612747 946743274 333229700 124205814 856012121 362101223 735678301 777791129 157982955 243550711 306718981 695746586 427895775 625573291 811067964 666531759 612905250 421491907 15528592 174191581 699850840 817105302 108937854 951196334 956596411 7936005 995244298 660728848 9604733 502685084 825776598 379210985 71855771 1025197746 444685921 426768514 594543703 664217803 272850567 391291643 295856191 723921506 104350231 400652839 957153769 156585357 90912233 104332298 393648243 43676016 631012987 305326571 458592904 830907604 853722464 328073631 28216577 553460278 1039003259 962888400 244328281 250794880 407503978 599032644 434187386 170430141 939393787 706994788 955853280 691207915 130665502 614070033 357647633 447838673 731795506 934043759 456969127 957252259 409839427 943081948 913561290 375138885 394011848 705655382 57122053 888221948 19386330 512121610 637627859 464795248 619188405 351735471 251937571 588306408 458593249 310026239 934884488 985181637 1039699492 488738755 746061053 602120850 180768429 245472744 757436566 972071561 469524434 890709657 189129040 1009949945 840775411 523620345 173958569 422075049 627355775 412729525 794360743 201520813 369852408 1063858166 876358227 432397056 642308740 928304866 403185896 819989614 381839744 978094168 658564583 949712984 159910880 179844143 368582154 349567261 310318727 1042614369 163299957 387028244 63595520 972532104 934279272 522521182 72652767 7526928 18837423 557382163 623046594 181096841 528182715 459922673 517698883 780803411 861172097 659533527 955882676 314510372 798505283 850207396 556864453 600009992 796041966 99740433 244894118 72948710 1029317105 745037790 181195801 13587998 617241958 970946651 672046307 266043557 871562130 921058778 972839103 738243937 196283585 1037739966 491779593 141575889 80260809 936869700 479270556 99743408 260087058 645202110 112132588 625259749 656123415 487869914 817636440 808401245 725688478 1067192762 753829203 234296615 884572464 67649627 829136538 279395429 178747598 730485978 473339710 394046030 962643861 539299187 675628873 34246387 805222653 85936115 617887736 338548493 898056637 751921760 60041646 683538719 521672606 1025104933 255227477 876785284 464583465 869263542 1067243002 398915763 649326554 80692220 388863164 9987684 870487120 127269284 877628696 30584833 17458423 746578152 811743602 775304101 140026285 599099058 894767421 969770304 808222093 295176392 654142068 733876658 684224705 912606923 1051231053 216920943 240419448 889805262 178926705 39760165 908290958 1071476757 1054764692 752341170 436737046 611374967 317734404 341896338 316597289 594347581 573874812 947840238 560144764 994897017 544921940 56581695 340493750 66067628 378839753 658033395 895765699 759657709 179304563 705478599 1066278657 891729869 921295031 819701068 676305034 598278354 636864722 246024917 808826686 543661924 811022521 922983742 373279944 428068612 245163865 745580190 861681909 405097149 610412996 850101344 201608007 376903155 193366072 467350322 301048891 1021365029 721704903 1051389656 780357967 413348239 1055192509 67361958 776673040 190834075 1057503207 1002066236 1013415293 265597129 966276702 114562918 213125568 555865176 24033830 260350851 374685114 238479167 146058194 459651176 730398234 277156075 626541228 320588333 259413039 332285323 422431536 803048080 891964239 256221468 910093707 1016630587 1024857694 113716330 230683711 285875363 323547978 243920743 82735712 104514234 952930129 184063862 164736006 873636846 868626543 87026341 697914440 181029855 723814345 517467760 255903339 759699026 596842133 801393069 995154236 19247394 517299871 143582351 509419648 296573840 149782363 700828390 112370390 553098415 1056041223 959569484 89982662 108384984 376170618 791960886 661855298 355847070 100164922 306617050 540009735 812322730 447100720 1003422993 824527691 496377741 756002972 363900308 989738270 952890251 678131953 1047834998 104004372 638786988 1033626783 524855634 837326975 1014088450 785837785 946638037 177277453 436489985 1023351445 366087261 199977415 80466172 281227288 471210688 1025634553 1015063857 499314032 995659049 739959835 348066932 643497055 558801846 1044647082 907460343 45848950 1046558854 726160772 605419349 15966036 372991729 753542365 473245191 129874712 799586556 249771435 799880597 886490941 1006229159 672852613 692406282 918764209 620379443 1065823060 1040871368 807060815 539913816 9535613 200926733 704023817 60700628 1065039267 787606123 565989539 146277080 274918615 179123962 958717034 676874077 215950438 8074818 1065765170 488212775 89786784 472274067 1006762037 370571002 833402192 696074779 808083409 882244509 880629362 690619117 858051619 59403018 568339706 90233027 310520915 688258290 857952341 1058415653 99303324 141616409 167068708 713416487 773458543 643770977 254510327 255606664 387705055 729045817 751989827 1049117201 477507427 239742240 1047708717 730422996 216898705 553825173 560542921 345658723 672657813 189198534 197316461 366138252 466726292 265624338 482341389 476616959 166997483 700569242 545568718 196662039 573906216 420545390 360717060 6129206 51209695 681714748 187466090 604850007 776733218 966903773 269789982 656284169 464810132 827292948 74782988 231019304 212344993 92509854 979039232 193818401 117766257 203041069 503154260 813888695 311556133 936020278 725352260 873145362 345631736 170388263 1009649096 1037827797 926469562 171712465 187430134 212202608 577889417 531379505 943436025 620232864 470624061 767571670 742980526 3660182 972650313 150919002 555674492 361025910 936364252 85929595 167353718 1052070601 949351428 536888763 903417578 365846642 562951430 969839145 790103816 738877050 792536477 717545016 1004421819 343072995 247713271 621700478 678965038 872517925 1017521591 536909469 1000844878 99166332 728863090 813309646 390729738 542623727 840326161 708825390 15975431 871599586 191490696 203638919 150650214 982365264 923096300 854975858 799183146 33879695 516110116 183686124 194947251 339719367 93220486 833849048 244452150 530178765 693450718 1059235023 224202323 255421613 719122092 789980110 958686444 1004357357 423734684 720981872 873639192 277318877 262802739 528217376 320182391 921969415 569579847 230668364 765069777 332819161 744045472 131683592 602015789 87838991 125320954 367948249 886566688 238039464 305358518 545920712 892911927 758341438 492855236 609133865 157212966 439533665 1008442775 439362967 490535252 303099213 326068798 243315630 561573804 906175506 343244446 504124439 135069186 542985730 422992397 889017173 384681045 991176030 1067270609 880615376 898937230 437111933 205087405 346940650 676882801 19889023 403133689 760656537 707856227 822257250 33502249 73230050 326204914 1033861252 993265682 266004386 837986138 332391594 1025496840 1053861527 133228316 796871842 706456453 1032739550 397878815 297342488 184409018 717681351 756392345 568242780 130291088 583347894 979353975 528894219 458821191 115351829 332983095 238166731 65165347 217961083 216669608 441199184 148413547 783003421 409528186 1039708270 736082834 522815295 953035837 1027896851 1045058287 1039739098 913627376 628932810 73870159 848602409 480697309 904840012 295402954 619737192 623926451 679893160 912743114 1001977287 234501049 49906687 538674358 987405718 148918981 298763507 290608038 107751637 344509911 212255554 868034173 174185089 35335891 689494833 398876979 285938188 294360603 891542747 541828421 460970236 806524987 157536979 529004498 1022393944 1021939698 1063386383 877774491 299956434 175459181 498642352 160529907 983055226 244184916 1063663712 295829262 634941918 463591453 704746473 90410186 823195362 950453167 432257969 92062187 43592748 338693991 123897455 722348372 512153018 795546277 142527470 1006399241 184960355 744921144 100841662 489545946 1026593786 864681763 670674481 608533380 1032103711 467475701 902041692 511997130 200659537 238487367 1053338890 147417551 620228513 468482706 839047844 603959239 82252224 64473273 63771051 1017061066 128032500 226489161 722283523 404414232 853634986 971052333 712270917 818011353 344962667 317172203 461564305 330733175 249204882 168863160 47021628 705240562 463803313 544527049 460263523 152655524 650117841 581222547 390705034 190697012 412662930 1059841225 1066076939 752308683 798748898 866333190 624951195 96217799 968949753 819821236 560463670 289029092 540915111 752943681 211631773 771884513 814852743 982244329 342024952 502076013 169274476 223087429 621145318 304755447 654746031 1052310990 162646407 33744291 1032870623 418970609 636575681 852025113 46767532 954924411 481654381 760011649 291740010 508284334 876025917 811978554 728511301 328842210 340735808 157662764 572359296 756758832 29535010 512939178 204170230 790247617 235637854 770998986 290845860 272317940 349280323 5241537 332611016 646978408 333996713 443845204 692499310 279576144 894093086 963355120 931780359 1013337664 755689692 440858883 807595591 709045742 1055246563 736605442 577664961 294678080 1067711196 42371118 567980542 476632631 39198887 947575444 388772051 878140300 631583781 748391221 919650288 506759757 113072882 159438321 718503859 93633950 154157026 796858901 561853397 300048668 585933065 25023450 669428550 838066437 696708483 554202823 616766685 475394071 253980208 637449838 810518973 835411457 305065703 57311491 85865158 855517796 435567725 202910754 559406665 753442235 795465958 182368503 174426774 235179199 1038415999 1017677130 190525788 330426512 227060968 293902141 63253042 211152111 887976061 811889707 282541933 559572333 22683080 556793452 583330721 61470031 373690568 26288038 461865883 759607179 927871057 710747610 59419367 797221306 151856220 88156913 64684133 680098515 19309952 435651135 870220375 151336544 20602302 12329375 569494461 543802090 927736433 478188893 677670862 642045065 530792191 715035337 300165441 240532108 476489495 409845933 460661228 764732843 496184387 511834162 527589875 694011435 896507405 885687443 48902206 339428576 682090961 483248218 995446786 586414479 784043160 864073295 231478701 24676937 477968126 85128645 257226960 423668807 521677791 936142 848903445 352783896 620394698 144414934 631164941 485154892 186644301 189436969 104496105 616783616 464617274 102511436 27606565 944961107 1030785605 487833453 877186674 337446695 760131546 900062701 142697355 990340764 409358068 18211999 308700977 633110374 538483406 945752988 678698479 488723032 1043318029 198600317 124512689 265476293 512195837 237575252 436304897 39599237 171536043 938814660 677958344 733768145 50090570 542497512 222009275 898172619 163040961 215761090 261992503 817002844 1062298542 217584290 173154693 197270863 423180027 193481528 998553748 707281779 474888653 41733373 1064717733 308523494 391444892 640041470 1029888543 304808201 263866268 424399486 815773184 275948525 162321339 116362181 230233142 631693300 293462647 100496002 702031813 32462139 913455362 907168118 956904162 137529374 363477528 1015950064 203498303 422935248 899834669 620405689 47110842 725745900 979598366 553929330 180571686 884243353 821907771 353158646 389684220 9362529 872888628 1053194782 367454378 828725726 1066773360 436845180 1007948438 450054657 1044952565 845910829 241827533 319311784 1061341667 239416786 1005697044 67499035 625788028 698967793 145022199 430460328 949700679 166775585 286599977 1070662660 392936217 173422660 18802423 120150519 343841378 508422286 199215870 1033041330 334670076 944018449 767623129 927450054 334707253 217953537 742054733 520209164 114336932 226181740 536147446 1053571560 927517227 987865361 780784420 1041292483 377212725 972788703 427437362 228218044 197086628 602351906 668516100 462919722 89930575 934974558 951121164 629988281 971980641 77875356 39446241 873485331 909178045 970049046 697604833 349625070 934967621 134285994 318103115 1023360490 272674482 803931430 466764695 123183934 1006447741 248374852 503863508 498157582 509573754 60420846 158091317 187032888 253176653 489607870 617789841 544899176 895727433 988351542 17749912 938877453 29574877 604130047 161175957 159401251 820260321 731902552 752236451 124799238 563393873 233111203 321940714 210342353 172153197 554876032 783602093 117888701 122556807 405131153 513663944 282486612 576184604 1008814868 228557475 91477266 511630118 599201360 786239391 541276115 444831192 561021521 831588833 271667756 907199832 20076638 481602666 432241942 674296149 79918134 950229615 519264356 959033540 712458490 242998227 534027856 51031430 387015234 515139828 806076914 939676914 768639079 582002145 424496696 687353013 519831199 134138583 3195333 291446428 233638631 681925160 15204045 605109234 631454413 893395923 198827386 887489946 475478600 758127187 640291066 1022756263 71611005 97402283 606003890 704419170 601282190 776467617 755237134 533720504 222881413 859857227 878670125 829620712 775996738 798030106 952940736 895830911 212930684 331246654 248995701 182527096 955488153 72860445 431822473 552388346 851041361 345242442 785735402 560271380 159896129 387488121 192456121 213582156 812434829 153347211 320615547 971522695 603333142 276538918 18755838 784587134 279804536 253073174 666267776 243477021 374640439 117056318 389909540 519736148 796419192 255078015 250508570 245014810 868015466 368117722 753786397 651216415 227128066 99980963 74557458 965266851 891103673 139259536 1050837871 764759900 415566529 639493171 319560012 168395380 338840171 931734319 779941939 733281447 408209246 691129892 794514053 414782242 339953571 588251128 572448596 26673436 40927220 902527524 44716167 505337045 258484161 31754195 44201132 895931725 30639476 754237413 1008501791 122610689 366539761 617891412 385403688 410032008 832547663 585299729 769060882 355672869 278408319 510715565 45750908 834051284 935109065 482772583 337994358 122668808 932317011 62888383 993729707 148031790 609622693 200008583 965171726 728257970 910678686 210488953 914436393 743815894 9972353 704987947 826456275 243514345 282286153 67630422 718274163 1026332263 208122845 316398673 175463777 726138986 41276258 288029185 699367015 319522096 5675468 306527077 379330465 138145543 189899969 214579628 501090283 935232134 905567012 619763544 134635676 242702715 804414204 983100163 781467843 286916455 313652407 995987160 383404469 654797010 612441600 942967909 144827849 362740892 274194704 108689718 541164080 265537892 812057967 1059745532 641450157 594207416 1057293833 893806568 360700926 957745392 43517782 61781434 199730387 104297988 119815628 303867733 558379487 690391416 115212723 920903041 642562880 599359927 421709190 105035792 216026581 510333010 424421952 730566190 626938198 115243927 195905487 915616581 30731710 221444545 928578709 429152438 529140463 404981777 856265608 845119856 221944239 594697627 160953571 422515566 46582575 605954433 970102772 148040623 291208975 159939144 510854685 1000908061 756848436 503503535 669892439 991211155 777879898 398803036 488427749 319936355 840577278 581689168 190138822 505101143 225815675 55818787 51681285 783327110 1068434221 235519136 483301087 370906511 840234229 568790264 699760987 442033395 3273614 620993127 535675159 1022217988 541962474 363390403 1035153576 615733587 1055347940 903910752 390830885 867608585 845791411 645082 435639173 298613482 472514076 468405229 354515001 208942132 297175945 1059370820 621271778 62025344 60896987 836141318 630937741 799292237 496550015 296949128 1014334507 493199572 339116347 418142553 851226640 696505909 146708598 431464409 605617426 289016142 634063650 244102316 660486132 1052815343 271590833 415063457 129388467 42364034 722382184 4239948 74677491 488900798 672802945 390382593 515870782 28431708 509708447 337155953 752468828 31647656 241051656 21293766 222066516 969592742 594628369 596021049 231408295 577218487 533264950 765967120 963934705 319549261 447318324 74726087 205434218 1056653303 641479224 460769083 570285495 752088595 805680524 24030060 867012531 643552874 811179270 535005091 382124058 925094285 119007286 331362417 329962619 1068657766 211160141 59194009 61859382 747829685 304277242 740578985 820803749 739789759 655921659 505248332 80852865 551991345 115345939 503161737 572732852 627257773 371203506 602332092 511661943 47321024 938925640 1044026181 256471276 756435804 908799823 646197106 1001144915 259578953 110573295 30859674 612322230 453187541 372777282 735241227 314053281 984134194 988035848 61013941 813514772 1025433920 865694554 719735294 435827801 115128656 170326420 91267961 365028579 970219616 372641554 457859261 756380410 483150352 554334549 336922149 150368976 754519953 926188336 786629344 364657521 476219678 908794974 393165178 725551442 836671166 252216787 242233888 124923970 108558071 719072956 944707868 682936908 631390233 545161444 297343989 978244904 421819433 914715290 433666140 2407016 614926636 465346434 881277509 733019812 622369873 913723146 220407973 400271760 1058499097 1032953982 397111843 271760535 938045407 834636767 227183632 584457256 210551713 144943173 222555473 269201926 714911653 542154248 609162931 413594125 237810399 543138075 435763363 984287199 442115251 532149121 220959015 539165732 236902454 393268652 649625947 609498883 810924723 67159860 939630379 595594764 525060788 487900047 1057214672 958174658 219883134 439061550 882407615 888391455 738280686 70523325 300134558 428350818 740658552 153213315 689964443 415352572 211163908 571996634 996016500 858230383 753490137 272589045 718195374 823855792 166717075 1013790810 766760650 215684052 418827259 200740224 580538417 155159721 608743575 247217656 576566106 281856734 687303027 736736614 910289497 518808573 544789859 394530940 168848305 579627793 887086855 510937161 680966465 68314095 242265585 176885956 495196819 930013663 1070425324 761384020 271146119 282939152 453393582 726007906 331078203 26259482 406610451 33062101 578829612 173610321 659887027 99367840 288965230 801977903 263470413 69491669 511258037 339661021 302349563 541260200 615734702 874263006 708230539 795660724 469405396 1018400650 521995493 322440769 257131620 424750163 465221376 45313444 127299095 918461681 1053916781 750789035 987298362 502039977 495973943 631885912 238833665 147569760 187929849 1058588615 378911063 17944234 134990377 15372569 67384222 649567543 973969882 680504310 832036649 957540645 510725703 24067311 601054486 438495074 602746262 434047085 190848651 167019189 455379949 851952612 1021442783 635065470 817434201 788287265 275916462 1009345482 915141752 990944887 1007617959 400109106 225190361 186532722 607965053 630668330 943745892 1046381466 315896585 491187766 900918340 644518699 891711481 893478340 9044093 371474586 71609533 728648960 1008403291 125589399 566152549 510763919 91850290 550112471 926485802 191735442 568917197 284759906 101278168 160472293 889909656 881674027 881508429 318395227 229918926 922636730 507638963 38539582 1056367386 574492060 165646745 625891396 6323466 465993329 334380026 195437245 439379319 889831347 489944164 380667883 638804039 742692080 709005054 598815269 234575346 445762312 941625178 780137488 958972268 565165467 799165168 760800540 1013453166 979899341 156178161 251266035 619577534 242015844 484126434 665711185 846712726 1010419703 418706683 207941721 222589246 594368751 407504877 66699587 177198927 852816789 164418972 416445797 803048117 623929282 55391218 622980912 130088640 41634868 9738091 375566756 872390469 1052462701 932198891 951665919 165915135 841734154 16353483 699030359 1033160451 1017989198 1006446977 611894331 727655870 793866593 917397038 195397244 238966460 512440041 619335238 75400594 254144792 987147117 673350496 1061974648 124819376 1027352725 938657425 231692100 535687456 135862754 334216361 269463540 504533895 417512145 234252434 999874547 106203485 696644697 471222049 232318987 171796116 924952790 308421489 1060471519 348257575 231461301 876677485 632630911 537228305 271546473 624940842 913037925 929695598 94055849 450966670 643591699 129688281 463467719 297807047 577673774 502493489 593826583 1053277318 467613795 117921616 920229220 883850085 573301373 610641578 474203946 895955151 322619164 714437163 870281613 605765142 386093609 641929741 277495761 60888181 59729380 418989763 418733872 1975467 555360821 385409796 129623944 525398607 851571687 130671443 874640156 760563774 663966417 202460655 937403372 268027399 87707416 729476053 180759765 445545685 864817671 95036591 1006596023 493287558 1042939294 326443985 122187327 906850851 106605617 868970608 690850649 736195147 774092214 483653734 85968689 879729201 827110732 813401723 641398911 97803718 888000502 929135740 562707688 1040875491 629728486 678209744 878967898 765730149 443715014 31923534 45298529 32454649 776996651 787158577 66542571 162804207 522110614 52048561 527598240 548612858 628196754 369148204 939938447 548652980 769602275 155356969 811674192 245057002 940850763 123076372 1061039389 635224673 711243940 637640036 2102146 430465344 945289569 1001004356 44708286 411563943 408609675 117990757 15896137 509204924 33800855 244188994 1039699733 667669379 621793028 178249249 740885794 151493940 499500137 37335984 228466913 783857431 495036124 724638201 653687765 1048491369 329690170 570068384 132167270 457983822 331634768 835774470 793513394 44641279 606281950 917633132 286730968 342582293 691348439 285889716 371211192 172932503 323262167 819576839 491407001 771857852 70629430 471428383 412671426 179047428 942469329 764322882 311388027 905045213 230323829 845635620 678522980 821475011 32146185 107435332 607054623 12397402 166792788 793108305 1053833759 336243360 88548405 909128827 762044352 625336542 546827863 628366713 732295447 922878997 233998448 392104751 265256207 732277861 836050104 548649602 401125783 412950560 1034695903 348938094 111364963 1064493306 569761081 610020380 699889455 198101803 137175385 1052288848 196313998 653628901 229124896 465597195 386073858 858095306 536054378 785965021 575758226 800873615 628101247 873347338 333841585 886821532 376772918 348899677 141576525 948828158 799089397 922575111 816038496 631593682 267822131 462613285 970367601 868812674 743951412 636747378 254051109 579346950 528363902 301013754 1057797183 85690629 399215338 544611592 774942679 684150032 1015000616 520331323 572491602 202227102 102810624 5731101 698828576 556079843 219223487 275673584 18897126 209900728 300271062 469157305 248653813 645256261 784869688 948978089 817951835 418657560 571877232 440678223 545280301 32036649 1055531151 341962911 82915717 369039763 645235067 185618930 960481711 632040210 542261310 799341656 895051146 77871384 399869652 520052144 494968788 860911527 856733091 875724256 948382155 497481208 495883493 648433679 823266152 919676899 21618447 917688479 469046365 244456074 97088248 940879962 441685616 749225611 449602114 64469832 260019541 683069444 138132510 609970409 199740646 538816391 608586692 996891352 693655925 136795233 468007702 538015294 841805883 94593199 557580766 310472472 658015225 1015400108 296904975 621262120 245204170 480417926 694903903 180554611 453589297 28505264 336724202 89306990 483538780 557797839 101611107 586823615 379522429 961474830 154184753 977240210 310619650 212229739 398660644 734355091 484591337 345917967 322931266 944648529 866729854 904182486 134857078 573393616 298131689 267893480 104286406 361342973 218721407 716365891 670238008 20058640 103517353 462242013 551162496 1058690136 340369553 538300112 954186243 312187092 762431021 783891243 838237696 464467010 794743984 749722376 725127010 73812746 72131480 498207739 551500866 951508362 71281507 219173388 413550983 1011877521 122316111 391603349 246118057 156965120 564419028 393742804 841291553 632325015 47830069 348852417 881410631 780326634 723581432 418258483 16454512 993057080 568906687 798940919 476033834 81712138 985410428 299452714 425069872 809276440 430406973 232388723 178588320 798977937 259747561 919033402 387219883 433999715 238994136 939091415 874871509 869360155 319440357 644518679 565919069 1063005806 427635260 683190331 584881341 915181169 236508842 285174534 802100198 280686619 251909086 72775876 584039502 97338156 786543840 674256586 360518310 424719592 543871038 245299432 300779359 519426869 233174600 375676070 549119652 241808773 350972359 419681208 705677165 425621091 62866328 348158062 694212693 412584379 282003747 794360711 773849301 278630013 297763627 948245625 1006299416 1021077330 976253869 683705034 314905725 648453637 1027782664 303760027 486033708 1052353300 484349481 1032219147 311708608 1026753843 1013041955 601583294 65775951 125053596 1020571470 601063816 335039921 941447044 189231682 639135519 5211349 253107582 511937689 17103645 722931971 8115498 307077887 142309097 42739410 727734220 162811996 71096250 316368992 768650005 1029301427 588561558 127043642 529805329 721663095 790862691 358320243 421991119 928151039 481047904 734591728 357628713 140693967 1025723282 108701708 499934431 698323043 1001127511 51442822 1040079729 169954543 211115036 713037274 428739181 101629600 206963453 510513545 473056702 104301737 795645352 162832691 125956152 402058757 917702008 148200697 213681129 135135044 564537207 807706592 747018528 915967006 193906500 138045179 473629668 566226798 962882281 816281186 894692753 81631677 199499966 1028548126 540697269 720535995 864592642 785060224 564853073 1003495878 305469700 54338799 480472235 187116650 860347685 1026525322 385206698 711883836 990172001 952589995 717285196 158578557 858390988 73840396 539498931 953412593 296625528 734343447 579222007 699993430 784082195 643198493 729245504 524545845 86038653 153792015 806040072 753714193 559195389 269526263 905083118 295441198 813983679 964970860 691553677 144072170 243652699 688854624 254456905 103139553 1061596988 92436013 208774257 45821983 227082692 69414370 655843723 277525515 920072438 514657398 652799754 965407948 989184244 1018569708 426580553 105371191 895511122 701838398 455560086 495091265 971300904 1004242524 622776768 369232822 340103916 51151869 292649746 693749294 242659901 153233889 700515354 712578586 969969074 974217970 1050404612 607162686 222568381 904015687 179623896 1062877139 988361260 517347067 738874976 409225641 247515262 915475737 972442472 90817818 661387836 194312462 770399370 980058316 863690469 879539928 187819734 541587313 18696468 4757625 413190251 784596802 685959140 156941430 886014162 878144332 526860242 769455828 832016358 774216257 607382838 242306622 508639334 540350294 390183647 956879557 374903428 337089989 436221843 370702315 986714195 684872011 484155954 873203762 50966426 920858936 662596089 132598256 349862774 901619783 589195402 986171208 929267 616320650 306681709 16742652 149974761 274119455 498922834 424488894 1005878572 961416453 339338849 163366268 169548017 928721193 776953625 9757530 13557904 458817477 253324551 60845865 644631751 356574316 840249864 186920253 214473504 67757965 786932144 796581518 166084228 974789449 233853349 522838841 65113663 839785719 598151776 351835233 595851821 362621659 1070906996 768227127 163330447 944514766 3414025 646917787 993900876 342730134 1069120702 271794058 417728057 720492636 765160762 1060055796 1039294334 188875517 99010145 294708511 785878043 1031207745 671138812 439034279 849596549 618085129 374721494 1013099636 554609973 906706226 715922312 896357848 681344885 770144946 173093652 776559015 86014547 980347665 560234875 263835586 925916079 331146138 270505927 302828381 331567511 998920585 754449546 830905296 197607072 12528741 197130575 960688423 384577629 788211580 855179884 223586758 556798067 810841415 1013524601 664514535 43425904 155035290 612745180 657789218 948362336 546051552 866293558 687318200 690443026 472619864 231876403 397547806 13475390 669306544 187508999 223145956 163257233 694381441 476295370 1046555084 758292899 580909514 914822377 1018962729 32766358 633038844 302239724 666514678 273525222 600110547 531209437 141990817 778714253 619395794 379350270 764812993 987191356 377654297 906527067 648851732 830687071 217032759 44595511 899682226 224957786 827096089 712584141 529521040 308187469 751822412 486602714 804093092 69768839 389003987 945362030 214487575 412812897 13705692 328499997 438300414 63084183 343377577 132861253 1056153374 818613902 360462636 882204117 351813454 1001176999 298790668 585294806 345364637 512670039 758681904 218123478 599549352 244041974 359037093 549063763 246949370 119277182 410082201 186951545 799150448 1068609891 799910901 445356996 411127464 969398427 633662089 907373512 847224201 1004046598 479406888 571020078 448956943 865656001 235885166 842189346 110871045 185942309 203023204 1300531 569875576 963820322 427498453 622212684 48925942 410056754 728062234 617717356 268270316 899531776 603398788 277677559 609170090 295888712 386071439 1004318669 4412461 294783271 529398447 802033410 805318781 697204649 224491509 506443571 753118028 445210397 612639030 798031788 800192157 583873266 978657376 324776361 678607218 966834210 580845647 259201476 299893412 935273129 904235158 636179747 837218786 799251216 869862010 631615774 919076847 1053744895 891079940 342322080 275519012 725876591 781976638 48242569 142910270 1035572137 355290817 71524762 69338665 127822081 1063258085 50689953 193331266 771427276 829173607 494081331 852744122 29977687 623304118 512631313 33692431 438774880 499664612 214599674 421293604 573846109 511038515 207272158 299369528 877953700 882660858 338182301 1044322542 782335757 583047022 254600886 502794081 227155686 574706139 294674387 918705026 568218437 796305702 249340780 907299726 873088364 356823669 938620751 852682728 929630130 251257699 629812830 345713040 1045530109 33309205 354885215 502693477 1039815379 126501680 337650840 521404854 59302250 884977595 883282798 694345584 763773276 1041252957 156223260 512400103 390557493 502348570 951907592 373206368 16256098 185502992 727952218 282018095 737198471 383533597 481237008 334775697 803424616 64701857 213701464 1043453712 466317080 151180609 833353597 36331597 106073901 7450666 335707369 234831710 200486300 407505022 119541308 617456263 576182626 209181685 992928905 302690097 864262569 25383387 712807410 639004808 464307730 690000457 1023390301 743528452 395618988 324594617 441042415 921503118 917259843 364846588 884011430 1061184596 820591586 977733344 638632500 472210225 275422047 258588499 187608276 468577662 378906982 323732251 979313764 1071990330 875028275 436883327 238053241 959451965 728131771 927603879 593225864 1035759637 770872452 774194840 175938200 365219733 291221932 589984181 999975842 59175266 417902541 796312811 197133750 67129819 138726093 1020285886 961641618 885085780 268306643 127118006 356402495 462765288 914974969 892923024 73316486 259561582 322036589 908676363 337724960 556036526 1037977794 443564533 652937510 908611482 957164562 185451217 63442648 53987641 1025548972 970440853 280947117 129201731 969349293 502939127 238783336 782522701 754605699 537603442 870036128 969399253 391136797 252954612 990764171 905064745 402131749 451739926 617780240 782146319 57863336 1030825027 379724549 909473519 845449088 313736810 254524148 1053938224 163725060 613413012 992015941 781915565 862873806 788774340 131309236 600895200 270029984 531506746 624569245 948387886 62562263 536214099 377854214 94205450 144748855 72627063 454508017 1010732153 804459518 44769671 137939990 627540294 238513197 973735366 522550048 927171709 377242842 1031655055 145699180 362413238 795447026 509694330 304702718 5816770 2044685 528005325 554405957 485815458 226974204 995349323 1003432326 308827730 676089189 349627411 1021932487 403418136 790566208 565677101 783120504 493459153 358668711 40162737 353261090 841228212 72731448 283097953 357857548 42518505 592854169 606189724 47776858 757458468 898978210 638567034 3272666 260660236 783551604 753107497 379173293 90612064 179283320 343827448 833415982 24887725 778121857 326526044 966576647 184320533 1068675361 999253512 712883654 551828295 902906944 679597524 237967468 755231246 572554756 397333503 189837019 545320234 683712719 379452283 376979239 64329033 328584916 877084176 969545199 415793255 913776127 778890990 258673571 299090818 713765352 698465803 864321210 1042114596 586562227 310787338 103410411 967723782 190959783 209933701 794708422 308111961 101463783 625582168 417370370 369677971 25801589 900522683 683376581 378871498 835813838 1038385938 78690568 561733332 131860182 121202260 789691863 258036121 769104918 925618267 658503034 886597861 935868582 349726982 1028685714 715866173 807374438 674762365 899184807 371166510 923986940 888887810 274561613 358943932 735630131 472025648 876621126 621762915 656337320 609428120 440656290 114022497 323359969 482904690 207801352 871145744 705705699 380912760 625369391 287619312 678576256 552356750 654014704 659687632 504750266 946885227 1015473540 969476261 115216949 918577536 85713681 451031502 543443795 986262186 9912882 395929040 867665784 764933499 140574611 288328856 43548099 159409236 850906550 365053912 126061662 959649859 82584433 652772204 916748857 520052771 490121965 296358837 110933531 962419803 89374520 293674191 708770936 887357422 440272824 892424894 907516921 34961263 1065417485 124602965 497205872 621473792 684378185 993554225 737092455 461257061 305761019 851538633 784486195 435839786 352220489 1058207761 161433372 57805785 492921081 825653782 468141407 408708709 167180116 155771477 364232636 881124690 302434581 74327497 758134036 558438814 359876348 992277289 99730369 820124074 977373705 483319681 696620773 866113665 943691075 120886347 1052366665 796237881 908203974 955901377 527849013 519081221 542534940 125855843 100946253 825086976 652245226 145835464 613662787 915602730 545491722 650397425 833672891 541201796 609905209 764399304 146329134 347442755 782739807 960894899 171048874 690972399 439138881 681295112 830775103 1000967019 171541217 824139506 831794118 450865051 799640643 592761733 267841982 237509528 347407465 203501585 636023450 734885980 5108819 454222103 91990820 310396853 112926651 119416389 83923981 86405147 931679551 7201079 459717793 780416126 965886851 5888269 661262748 19012276 1044934909 1070456849 934450171 508471599 145654131 502148560 441815440 962177315 46475488 164438456 603616478 996568720 492140902 1070941995 63372480 801216068 120444856 975171749 577284811 1058294577 720960477 895633407 711616551 382466113 236039219 925746426 158568639 309863529 991534606 745692999 235015755 880320074 902605441 867028441 637039276 210280825 807746862 87647701 698553906 294168772 332298115 789250974 828080689 778516088 388645962 804896883 119195640 223925921 3235883 246855385 597648158 127069992 65590572 737874424 1014448874 910727488 507514583 107944687 440218818 1042116118 802597789 1048514625 1038024273 552502089 1023457690 849040086 938537513 587948038 974871276 177263996 180600221 986459344 611156876 379806864 1019001792 464913949 793317108 573761926 765546837 481181943 556736865 763648992 713177582 519396711 510264495 372621402 1017976811 620610238 843603301 518853622 1046895816 280354313 962902865 102551133 564547674 794083966 819711947 354680870 626734093 451511545 796615442 296484626 826513184 413678752 235251984 592265843 126247339 265155924 481947329 959416527 560595627 52937980 148862994 171725149 90052382 20469293 593552433 1002962821 134569420 580115512 981851905 263845023 635594650 172655204 688650336 247554676 839003361 135639415 483225171 512605324 370003045 690167895 680621529 123778555 609915784 197040883 1040711067 1011536332 758248635 188652147 450904852 215419010 996979494 882561142 662269752 14404613 647271685 781278851 76508271 556255335 631433030 789603332 457817365 1023521745 408370873 724820662 483749048 332515372 290199096 394744744 805218404 25193332 332950283 63015508 476562348 317215323 961284231 928010161 866548705 981715315 700969961 598904348 1031963302 893892287 663105661 243689011 410082563 22136908 427713357 267019840 33713519 994986002 720678489 973162171 868821782 470797032 592342523 644687409 333194204 470738769 609092942 451798508 119401040 937093582 725549232 237465506 866983531 751053730 242145949 168115825 821716253 995162445 453289332 119452437 204290821 598909192 292045530 420034525 198094251 909735746 854939211 274243282 179122984 194162462 1045114355 114653240 819819375 973221494 1014466619 28552576 1036941254 256057676 854073514 1025812506 778721333 1001905605 1027073203 236304987 467780754 498196957 333509601 984068879 753933727 560782824 498572643 608610423 884118037 629436605 177189506 545548984 507124286 179410221 1040780818 59068141 468007179 675142413 521501317 504870863 1043418312 50398528 703887682 589088874 428630216 289816451 63995369 337345265 721078 448016328 581597494 571583013 917647564 602388470 997931560 264692774 800565941 378922262 109596591 522841609 48199398 492370527 753725389 56584468 1041297595 322847831 845912292 3300403 276033326 1014136138 1019245377 560844053 379202058 737970666 850232603 550382272 221803929 414724011 980262638 549704276 160189927 619005957 687446055 452476241 998222197 659796419 635049714 338309041 331175634 109074353 416155190 669819773 396044782 499701251 441613710 1045119135 831388617 719037199 385503512 800763026 4714120 1014820220 638458831 352959655 71468723 705856572 1057920653 760119954 731984676 379772165 219162721 793142646 721887977 41004647 311790023 979694178 12404773 511004076 106966155 957727851 965475922 305611724 39224309 481531350 334028623 756424577 136707099 192387443 392620987 497182244 867875992 267426833 235570427 528771323 615419022 52170018 953646094 1025271626 996326292 569428154 870546479 575217570 176193166 285587120 744983077 528423544 810316114 615069698 782708798 927915952 948060820 1043594546 171378721 655028578 641085454 601246071 118460683 118112430 511777773 586307964 235777611 830800605 690425129 511116514 734743620 885631165 289326222 947089346 350092933 883148096 260056747 703320513 181467826 1045875533 786185767 450300172 352424252 25552185 683436026 597543351 210590912 986756293 736230902 873553348 377046323 432468606 352101721 589157693 1043433892 76078868 808849295 390270820 567671246 763577272 474186919 164800997 171068427 38521914 488828234 257833611 627354687 294448531 159666466 255706142 43401385 632822555 455982157 310838724 706555691 839900372 71742358 8967241 281640528 1033803017 159626435 938553426 516182473 91480015 163596675 151089532 899451263 71550400 313136543 264039251 40687769 554862073 828547735 732119288 567170808 923871426 803584730 190188425 138803025 694435043 190606784 152083849 548703070 77811443 539734403 127324416 255330327 298773411 911303240 705447525 800478423 420678425 820256623 479032947 957449804 118225265 6129545 981547344 880718007 469929038 462748154 962006686 324406911 491241278 306558948 508048175 813413215 809777203 154930383 901761748 98010421 92231528 85351051 896807296 215137853 853242753 383292347 249138821 947113001 104384162 527956210 819647183 1018282791 574806882 363350865 65495916 358200299 959705911 286682539 690023008 1050102895 91473584 567923613 832217886 889818034 88759857 62914653 397108220 729151326 287337950 691393343 211560946 743958858 311238432 318406602 642151842 357772565 88426798 218261972 410060444 1037566954 423943326 681960611 337843324 52532587 870563661 972088023 943855870 321752761 1063435895 270682856 861859411 526882627 306947579 604206881 525205407 42467942 159441076 590490432 627424460 755027270 745877783 690014651 24181935 331315890 809335906 377197505 265116681 509880235 291463620 715409290 237288631 614939849 991948883 396343835 100525249 372021779 248674972 585574761 404696519 119033278 924144824 995467871 329962810 335621281 847620559 43424950 839495289 580744234 875807038 234974013 30191767 508110125 1022293820 743058783 193598348 461982583 683556924 1015841226 315749145 226762701 879199027 157385145 275555591 280747198 317113700 872690149 922434165 946360687 798110668 801033327 330838236 623082414 996813918 564220211 748728509 784732850 464401849 253823050 198451994 428073673 113456640 276245055 1033749658 817271801 1071523444 474882712 377665504 756373314 299405492 75535797 306341520 875139742 414661588 317542485 639245216 591697602 84113405 559082295 678963562 162761111 691700543 561060039 854317365 288665816 505557914 533370797 830288705 401190506 421444386 351582171 999582778 881507557 190352191 756275598 518400446 198404219 519926696 1046323948 1018920067 778275973 987615909 357999375 564865799 845372951 133207445 682755639 625705829 828415054 23541639 100810655 480313143 513883084 649479476 64716308 402887595 325074558 1046961529 353007063 353991720 696819852 85138994 148549024 1065204092 984559314 425377418 502636030 184222591 706840170 931448417 195551992 855242669 945141821 51403494 103007860 860936532 968564306 71923560 819438659 20675150 335213021 167041144 439759374 564886616 375711466 507932340 516822332 367325890 858591532 995535527 349014267 920440715 829680640 734133469 686496017 979864366 132271324 135485329 473587685 315735595 577326361 1001804844 254475782 581615600 66354961 999358835 743124371 930613789 799660554 1031588781 828673146 709173533 823073620 547611120 677755975 532214883 212240124 1063742614 613872252 301680796 240317506 73120469 486672631 576986082 924778833 784004971 209112448 317885594 1015768171 90171139 992691585 63493142 884814320 46748071 745929310 66591015 675001258 314376184 722145828 396342637 1069375038 797157804 808376146 680174403 352062955 645511758 610398969 486265572 785530097 841389749 386527720 28213322 731485883 733262933 302794502 149488667 259714801 615581580 941793541 507589546 567231119 817661901 721529075 82220561 198638176 772480803 537657001 986333931 259246505 1013848865 266813718 905293700 968672203 577410923 303289508 345704311 514667779 777388230 315925818 303720866 505747994 768128475 319732735 610374195 79487503 380522095 632473777 796602656 473586509 443251013 99197406 712329715 220980220 599487571 200610102 368452504 882717189 166786203 598689901 1038311729 717868300 846605694 797585542 270197522 122548309 90270013 131776658 300511801 288972888 489768822 1055549193 558385159 145016198 402165546 259249754 305704043 254644070 446427554 667426837 484418612 261440872 193399508 707370436 638770542 65490871 482649022 82061777 878045420 1029214605 3490700 535345933 616437576 17470573 160056881 285378091 740083751 993318877 859950711 930630963 404770848 162927058 167482297 979516862 750629119 690762763 66169583 157013684 643847853 996704992 783374740 938928326 829897856 883808805 909414362 340899283 289754486 837409435 758064640 169107175 630506391 639809385 864775156 805371364 664032521 320250681 231873898 586758832 242610190 890305208 569849447 226763346 668443872 766339520 350522826 700272940 452159505 341561945 485712625 714289326 60551522 961887566 556173412 907234907 622016405 889004868 467335903 744678847 6673151 226471097 236098556 793226322 1055271248 247508923 544925828 940858429 327435935 250246179 455346830 123166279 495264579 270899101 546788848 1030960749 1018518172 448945846 332231082 450551947 171148806 230716766 500324767 950832030 551125729 870980727 222375029 169162791 246345799 1060506447 319165507 322391937 670189426 5876983 562096485 420367731 448731726 193054222 487772525 750807730 51107437 294077594 56409209 603153397 804775941 284740099 275552535 727343555 370124214 947212403 561075822 402385628 505533633 421311420 152230734 275416919 67695108 445031586 905226627 55420403 365919555 51669346 408673603 54586808 635343845 139657886 288483618 672487276 172083180 713002403 376627548 1027325325 983354992 114303809 436722432 48055843 807802167 228911980 608345997 728238549 630803172 684428280 421619016 546127300 62154887 967246852 864941216 392859538 905790839 178644931 942952131 228850202 745896523 421183334 438863178 442172847 514862381 1033225846 1066978859 483633546 762768504 201508081 63668619 313069743 206896614 831232449 551070220 22452671 506587871 57681760 549546747 1024367946 902825012 255300674 1000260951 1054516842 304407864 614044658 402496608 565103280 530357983 971065045 764867740 525156871 764174386 159434906 809818932 328892308 759663132 818124611 34158334 729565259 564633454 738591670 1005350311 113022778 535745487 266285333 556007900 558339813 994604298 532166996 51493473 530901127 800502164 72427135 1048887934 300606385 598837977 989637313 46503219 835695322 701920059 213718097 649276891 346515238 988916007 127412904 213221017 125210238 99427138 588529913 740494421 507046657 527601857 498367973 559362956 675183105 667017077 744070908 906250447 765255388 574828001 241847523 994623827 356794477 476361224 1011104106 172307209 1013280777 532803962 914229195 749117678 976376736 569564348 340998778 929027772 420464080 555356565 983029826 1044285778 825553120 1056115486 957127310 585275569 883658284 850293735 770965481 575946030 187537907 475953090 547936053 920500412 250062287 512488586 920072286 288191464 1053304372 36315 441469611 1040656968 618071148 554539114 597911384 720623263 331632593 880278816 371389260 42828910 548059280 36035108 227473797 573128305 224414258 988611722 405609124 723461605 172463129 872484531 724079145 507425811 218650897 1013465693 289489975 887721367 599144599 860927434 773294694 407201286 51058702 180237089 395924096 697987153 706518095 1019273607 338148601 58201722 773173863 716285839 600052651 763766366 331150449 396220730 207299134 232358286 962824326 720304645 278373040 715702769 940515429 544681565 98634117 931298021 557087129 30957795 485963761 339486399 1070541086 687899862 923349928 66067621 814742943 383299259 507606758 503905873 207864261 560021831 170311420 742742410 309065162 662645032 49203077 2268938 889533176 1011172473 977622230 242629950 57583700 402777415 449469135 436821574 345334344 103268575 1055598882 487400320 125123619 552449819 280171282 957128119 217038596 607191611 21356853 474332862 158853436 523311871 526875517 153875019 40630040 790309233 825840141 542378214 555714248 86173871 859837946 658513580 394496012 5838168 977862155 876473805 662318886 10967377 418034292 189533864 61906602 704262583 569385703 30388303 41611650 678498524 563276813 5116825 542939932 781004675 220518792 630365567 580824643 350384098 564166011 912623793 841299783 1066091143 1008493924 807925104 94183878 1080707 133286418 365676707 683857786 158725480 582797960 286590388 87891839 573815885 1064784260 998495315 756675555 64189800 26989472 652701810 38191987 403104974 598963641 665747505 663602552 448172277 767293547 423341531 948540373 640795607 312630747 536374935 576351388 376657136 491831442 653289130 409599657 519614270 521760893 349994643 993509399 250514320 668123285 70921052 1010540750 394174200 234653526 534750537 785519298 681586804 988701146 522205508 494855557 941890960 921437970 364120169 1040155439 136029401 156261777 872019660 957952054 585006304 526158600 684343855 191795736 944706411 490874458 172804587 381930195 259018892 723520526 907947125 390811296 793228193 9962290 407964828 588852277 163126074 136521879 476555685 864242441 866896060 985721723 300726312 81606308 1048192136 708480078 92845052 357274537 402404830 1009743668 74127835 447778637 850335426 960914218 529487984 957716913 182889479 940103371 1031761856 519197224 1016908913 752445660 458156961 860565326 697959490 937293635 1030930343 448479159 763054593 614670429 665388191 183455598 365760086 331529319 785632178 132168730 665747427 155992332 118919469 141649380 820656708 136160664 553556075 692387420 441378980 876809005 97019499 40192597 357470986 832202457 1002423732 991907726 971546426 43630281 254597672 542537571 374008400 602566643 427341918 477683491 1001404062 81382918 24224562 546500901 1042375647 323095989 1024336994 1002034572 684495792 412046600 687313787 270675917 675088180 190831429 296992343 177597788 459473612 545702297 594273343 468750599 714296040 383830825 227995789 456508124 364153202 504341623 937720828 121054774 755868559 679413413 642198394 966398022 993180317 712906903 566904360 489170653 1072522349 19673305 207729867 156121522 215340077 867985820 616232460 87443776 904817716 695400727 877239565 139606948 569449555 433671879 469388120 218881107 66020318 509059317 599612974 729171262 44184084 817448012 765133147 180624860 610003423 439481490 1012136810 73758502 192458782 109621823 326938444 338809980 917826614 222420833 95059199 726875151 238834032 311178079 283921894 602145752 477658675 298243761 967560662 803054272 674304312 901281072 259957631 633130793 658040272 846194707 77869548 216690014 1038380157 285439506 2145276 685075312 904420174 428139427 460431520 70080298 794425884 499750704 673023108 853544147 624676871 833632980 76418007 279483244 400976752 120674059 457963981 712388460 486939267 839192848 873349291 94204668 861155714 730306771 501895678 768815174 611330589 82859726 223278041 723545842 822735368 845626 385555016 715956130 459709868 904490963 622226964 417863115 885047108 495173721 60936905 666311598 1050981191 323662488 913766060 151308751 630733290 901500390 413438588 739290839 443658266 1055471306 315149235 817945244 68032549 198749944 828888282 248136595 99968165 808109864 27934629 808669737 55322919 748656444 177150795 874564729 629361500 243716553 473078950 963030483 1002316024 803859902 867590418 380971470 1061328216 219173117 972836380 563552634 402871727 290186963 958585336 281857491 821526668 165525640 860073133 228944461 922090386 732159657 474667529 521746141 540906547 727384419 1044359354 437946383 291559422 882099630 111337146 21341419 1006448697 350201283 582867929 620532305 446381399 111503129 211136735 264991065 390932507 558916500 708697516 308477742 26008807 276657156 1023909217 573455305 614648486 499077679 400623236 597817311 153104290 208700317 857082908 792128822 574966274 478082868 67388108 669491867 673424573 298344841 852727541 3447490 424767515 635283944 189155890 796342460 531476999 458718247 462088222 296489516 691431017 153677863 5318145 1035612271 93525478 760421122 349976284 718064617 45090615 52739389 504851372 513680126 296973607 1038709653 707676255 1026144700 911771380 323322778 961589135 531501548 252397522 821679513 994402647 161733068 761543747 283894856 482386879 122702026 807597431 901853969 620339618 1000436595 505852041 973456228 668571484 976804582 892741531 122429356 319321483 576534135 91447824 859876418 1070338869 196014146 374872678 1053596562 457022229 617684968 337703376 491906156 59878589 245698470 611231546 487583050 634255784 226324349 460445651 85322296 336726940 809868022 6009837 340868487 86826721 941209772 800196620 420190834 795135901 104151779 364955086 868696957 818757823 983545015 257536685 48626334 41258045 648794777 1056049920 883921481 925800939 99587713 430883185 115075770 813365615 793262268 963328551 164036177 603963236 489971651 469273936 778051580 368984500 477384673 320330008 388808729 1066887772 617843115 622130287 610339624 150087617 55662223 998230402 542063874 7882659 555404052 646407525 171403708 878517712 499281281 573836314 274416634 269271625 452551229 539414595 606205523 390889535 1056289988 286782280 119038393 581313160 259821089 458545211 807312642 145915780 498430423 650116923 869116710 418656338 438027220 670369886 525569766 689550741 500036001 883054896 248605091 438670186 648224562 676146888 586209748 73962092 303823736 1069745893 196486927 5478348 670277665 713115597 37026690 201150149 294786687 983615915 1052226404 823765308 608079366 765194894 892789198 712135851 822435210 916854816 592025169 985499939 793404092 313382757 910682668 557718943 682364498 802371250 635299225 975327432 76357360 925922809 467106635 431713971 662174211 144593808 1050874888 241656974 342166868 621415949 216256947 179038985 418323071 860387667 392378149 166380773 885331148 608552078 524978332 988239309 155801392 265941995 298319758 947563374 440065680 185691934 64235856 134388771 803597098 369656541 62909759 165849170 539028280 222296677 489179723 248634035 290320174 433400411 355515250 275422155 799223499 563844507 1001075056 18835299 25367875 1037635248 58300361 280442368 72553000 211388255 247727703 1044230272 323072070 683218387 187691592 725109342 80879025 957156304 552516350 702670202 365186294 484902547 395921935 648093229 312310992 651765740 586076961 597904638 874270034 747569810 155894644 734137544 789755147 120214346 691836853 286144585 678861887 76239711 477570323 1042584139 306065405 957047509 618635150 800911179 236691425 922194694 1026266659 806044651 3018390 299753303 77464439 109730155 224904138 327466947 200135579 789339756 128521718 917222326 298756482 609041659 202564184 987507211 1011142540 878753761 726228382 701832149 148999173 402462608 1043311654 626067894 959770841 743548726 224431415 625747706 208266091 666174246 93053696 188443704 516659868 884253695 404290345 113822690 324889078 873137057 156344454 779228995 601714769 660489204 192821606 86085494 283718909 67830192 226018180 891813658 566898687 54146852 693793206 379352373 1047990251 449547079 327025753 459350720 1017640394 325193964 497994363 103482120 30684037 597534211 290252966 327742715 534439 355947952 921585898 970447106 927962102 550418301 659141650 703894078 379113952 875193032 714733713 935378027 878948483 883031329 1000010648 274253914 508251915 949820738 809697196 356606521 178729960 368755510 632536303 207499052 1006805489 1659648 559436393 965383506 508948884 665544166 934967574 517868317 227860502 817092926 155898331 265185088 836158757 676468222 951780964 776756262 969855785 669377013 45404823 1043980433 878535563 622145601 534126995 860086544 341227723 799999935 738964359 429508557 320829964 810948171 842862004 478479089 201187827 799554589 930591651 602103260 350619707 622966567 621365969 419997375 198877469 75600895 475036291 721774157 362892363 19033744 577602517 912202543 482750016 716396828 801823077 709223145 734099154 529152847 672763752 956371030 1053939884 170211557 1050131801 398112462 965167588 650476669 145487014 552515941 440453090 873603248 166281796 40817343 468985453 682439290 707215420 993125230 631371038 193841676 927287002 726882867 745846987 786792637 893282794 49702370 672701237 666807441 88521770 370040846 153493012 196177660 445577713 139576337 151101208 202554866 117183850 759780455 370237614 526719496 996410314 413226859 449143638 630027062 250044824 1072575241 857033957 458881136 928757146 1019551629 531393141 240609721 855283443 489075818 231982502 442625468 876372864 1007680661 782739173 80503040 61254519 375245075 672663006 578552983 614994770 157463070 546578680 543997174 245025224 236349643 591104062 802424149 1044095777 1001068494 830030842 829008618 228861666 426169607 89977419 359118800 658477200 105559060 907299859 16019033 278193057 710254330 801508634 120413190 826380960 1031198070 527146953 174184123 707467154 275139290 404166532 177637547 699225730 35419511 648100673 907625437 763389034 745122729 459940953 547188890 526063104 228526651 25223090 822141301 992472488 458346378 1048410683 331548752 883777913 635523410 478392249 688327912 870862478 306128456 701244294 897136926 261444066 194916184 488304204 136423454 605780033 320666135 339498374 1028841845 705805794 428088186 440588816 392535138 814789392 348513161 39089109 290352134 608922358 511643871 951884976 998899965 143098136 354847328 148945372 981786277 146862195 1013357724 1033375139 1006796535 506354510 245615036 341470270 157952361 978396491 771877050 1054289471 1037204254 481866099 144909690 45899242 414700205 1049914485 337326061 71145657 82169716 371782640 236823730 1026384991 716693420 160106396 44959994 631297466 335529372 451435995 76129788 972564308 268046625 681858108 156480343 600420721 85810720 361248148 931353467 598619761 330650176 113608177 319348389 522320827 507239305 436035497 376826079 937911356 1071973220 827414433 25907622 857376621 157505291 331312619 353755193 569168524 179877810 241872211 950634172 818850335 513836834 30544433 600941610 995436444 140997630 914530563 945419846 44884216 377691772 981386075 25661919 516190168 558184567 983660574 498390913 491555241 675422041 322599441 689290251 14165927 635933230 584438889 1002331012 522769177 1021204490 29285417 572947943 45584873 766876467 878787657 606985141 1067207916 411990848 957843412 333811265 929964377 673711816 581777498 808729816 671059412 561248720 708260494 717623920 952748128 739476060 287772612 469822471 782844735 46530758 844037201 1071610573 421900816 866753038 669534136 138828092 571556520 574623599 1032447925 711467104 639829849 142318493 986436044 1009564286 191722990 902696704 153259215 823999945 983537395 725801925 404529469 484396375 541383432 531932111 642287648 755362833 871624364 926503652 141897326 785977202 159955497 530917941 1059562218 733837359 453502910 335396210 672581932 1016671653 476124039 577877699 393290874 226353546 827078398 583519352 741276264 969908853 734026868 208341983 756312574 743148967 739155585 817427774 195109258 198335291 24970644 254988110 674976277 1014089038 425243560 278043733 212294184 689140367 715110309 36389967 756214474 1056272846 586897898 1008478561 832369466 935499738 406490590 224645294 944108054 865022770 410453464 124523452 826697070 219283247 500917799 7660642 604481311 985292278 330250477 380760727 45972360 552120346 205654983 761109780 606589540 222984020 772431053 528986907 713756803 476811 224204581 1064827207 680123354 193402715 184065148 495274859 1028616843 692365568 302964615 959989649 97724860 356847944 990354643 546230350 688963824 284493622 618724332 299393743 249572791 75292948 212215023 575544839 713311298 719210208 554272170 694652614 384656344 538724711 434167730 350328496 39149904 256512908 896735152 481078576 958265067 478275065 493263224 908049469 415732869 709602724 542678128 692302661 260941501 691646310 299573633 494314827 1020187351 450330036 391617158 656367520 1018656294 317297909 760011852 314454305 648005826 445699900 616011851 661028296 1030921194 778792046 132704796 160125140 85645375 329153603 879097771 190554202 523796804 605213858 903879815 191241420 490840110 407154729 703350910 482164709 112985588 784605418 570107678 298071070 901018862 586073558 668769948 420238642 939946018 752405466 886756621 876819851 230568614 74117212 1025699127 719489464 173971003 178516742 664739993 889386791 743439900 756903397 53123016 252017657 505919099 701917710 974191176 749185693 796334175 15835020 147605598 227435983 437872678 478654114 610524406 103695660 694025724 214047410 452252753 817814565 901391263 897208554 987550943 211744716 561529422 933380329 453478175 772519764 415263479 789176084 10031341 881001312 498701491 228076145 39201358 564691566 532669057 903460237 71268906 71932897 273184805 326095620 176231602 112756722 932461416 540879433 10519729 965362332 294189833 873989685 253948908 517625286 844294655 806978809 531533180 1042617330 559274439 916370173 372484839 808033190 870071045 774516143 134609988 217749530 420643847 503586715 756315964 292205662 975951866 778955482 313491058 805619731 155365305 928850191 733908329 1012401322 932959837 682106151 507180736 303078665 840286031 103910994 742643674 768942490 246474677 8938215 660043835 89005461 125919054 230051417 497252253 551061140 852779299 72063458 822980105 634476572 205168690 39349563 195990928 591410041 734034794 892550566 148111538 697813185 791459478 134837414 939336133 301567467 459759450 3444111 480046340 605895616 581361259 189428228 913682443 744268545 1041093 575992169 786060717 364628719 578870188 57353106 164843759 409963458 418196141 902679908 709914067 140883591 716383959 745396076 300770624 831193422 741903420 763025710 266944614 578224219 159770316 385892043 140334534 590031812 702668576 643017224 329109725 153700853 271251081 614801108 262590944 1072048704 363056110 994430027 254414211 103502052 941028780 541561706 491422412 73215892 934210313 306898015 970526950 478130081 631037679 109467535 691298174 187225698 835144399 760354585 980311445 125725096 506913370 12131722 440181002 396813510 1023417648 226522055 807148654 81722078 170612620 495558431 262245430 471367385 498492162 511892368 92206972 823569657 612984372 178835 482292919 661882583 631832946 166984072 970576801 756871047 301018151 77635175 839337453 921138127 599953478 824186816 54749748 775218493 77455154 295961567 545890576 87411142 525843900 197685630 130779368 302352010 299909884 329199454 399344961 542278712 686864119 508086679 940238667 667445546 1020390810 1009651644 810419105 96692099 63411053 103570273 104310119 680468740 737477554 692927980 709726350 799573909 622696686 877645635 191887842 1063483676 351922699 890226752 128871195 233672351 785516021 272972053 387653624 915314436 995634924 139137658 749454982 406006616 238684220 202095968 914805183 523680288 856024340 915119316 353237134 322782650 238086154 533178165 456867192 99152010 563171632 725368038 623027506 975424976 539568864 1009002046 9462902 187730239 570551192 374451752 282314151 761890223 895465117 16699192 608866218 109864054 118190467 464718396 1024780794 267946331 389018057 66662506 578904501 1019745917 807821164 734871090 410741544 438867951 136959003 722107576 875981215 375433137 444810873 896860353 558604444 395596596 261742691 124374641 1053899216 150436196 503400676 764732304 1051361262 298510531 1018732215 63686398 1043105287 523585911 204492222 131698221 939379785 940661821 659647842 130924301 514811750 696146343 397398689 223485178 792894907 337607745 792839898 460595946 784800027 502678041 577932236 259272600 380789209 820272571 278141246 462333960 353806988 1026237155 509851616 450483219 325080757 531547572 835514287 829940657 778806932 614854471 778241253 116093292 949346709 369450765 988187828 847854468 248820881 17647469 302627451 678401499 745470188 312750776 435539613 142316925 854974198 305380821 739810169 450225913 421923334 590228482 881988636 516388927 1022483519 327720136 426460379 663890843 268799814 388436301 402742294 739298728 1047413939 861997984 198174846 346782585 993402723 737588423 556921088 296734370 527703592 1060586627 919041737 631079051 573397614 136821104 529239141 622279904 471564665 711418223 531572301 617336724 63826440 311555596 181509573 368272377 101465256 592815368 420805168 1072924121 772639848 571437028 852877022 198099762 109279628 1017304673 834859715 59034069 493593719 716814215 508373643 397844697 1009490796 71144478 19157486 84724041 136597083 1052055432 132476847 187047329 999970546 551013573 372204898 43335351 900626984 965521024 167695980 736777719 377655509 700604110 1007856884 806547125 1047925467 840828643 635482028 907664301 240783777 341045707 163852396 1056938733 489672747 446223649 609315698 87100818 548263541 25297818 430976671 991674793 383009968 874361792 614236909 888710390 845082357 141040763 588078563 1043407070 54856653 40008326 299409470 794902783 579818580 975391372 297333566 1034900366 536663656 12037073 673423539 32313219 825207818 40813731 981379273 310570393 238347654 1028146411 630796398 824744779 1006979201 83383306 118353568 255005405 116634654 664372386 271535157 273404555 733936574 259145177 278492097 998807334 680275665 92909339 716583582 149952997 306558833 952051060 35544615 203997165 719318837 951054860 178791805 311197935 657025541 980133074 1064117961 1017029228 1045076293 986511463 135226810 412854337 435621627 387733771 169932073 863810594 530683710 345511010 565281399 937479470 538265875 720916994 867360451 733380549 588020471 971970237 594328299 833799907 178940342 688035078 999841807 10708807 397370867 403210994 1073536009 632064472 78586359 997710356 302836698 146399481 214158725 579516636 8651543 395765328 711983586 983252926 688077126 30114861 117757124 96052530 548723663 69325434 803687929 456272812 158308587 217909421 687425300 423404586 413536313 651106935 414395542 637212182 1033316247 468352503 715760172 643837939 868869831 533190171 249397118 42530702 939917026 995999167 441416576 708775878 212246913 184522557 898333809 615305084 559505867 220207677 818008788 1064596651 1015367765 251936653 724887767 328093315 663675744 20498924 47201996 1056478326 781480110 941729432 993541072 18046412 513598359 59834996 640151499 825952660 562297255 760638689 564869301 420844493 1031733731 983419284 58021315 265344382 1072229176 445335715 891784299 533024608 1055723630 887488988 468831207 360505112 460408013 969956145 160494170 655095540 99155067 1013640674 1018794240 522005586 730511154 752534448 749478830 622253216 178851212 104501978 946050839 688043843 614892937 200602571 599772123 14511003 226554336 321306452 989228504 628570887 473669735 701155369 193554945 377740315 482415758 922904528 420271718 554406887 150429334 1015629813 427523416 412920982 194056557 338451003 955951355 78684909 765531808 413102882 1031959284 598966421 36256103 1041477756 1019964837 77215927 162734006 134950931 753591052 262686450 1001094264 232402734 953404315 1060033601 654500813 406171055 282510987 488644165 475447830 306175464 864822869 1007026838 668780187 631524448 706902082 662317025 805069822 979069076 969518395 762547179 296832323 767002730 897363756 1038201483 590575396 1036364545 848037969 962825091 818706406 80213748 834104115 397132658 188286747 196461296 1071944419 287746037 41792516 903378211 397027418 530070090 919212751 226199069 999283001 906966063 1068817930 799416510 856783700 13173737 263357850 747305844 746098302 509522254 855735606 129271496 911753710 447552239 530986922 381770586 729540292 522936977 669085047 448243738 423409086 525661836 287702419 385289933 940143582 317779457 991371739 1223602 10316755 478516244 496802642 213806806 453497751 783609295 170985922 585051392 776688341 308379824 755689215 94858982 916123971 467188906 403631543 619024960 621819394 703506335 918172151 202704692 215420127 676596437 105332471 540899222 87336368 496034189 984036689 343420493 619272277 941349780 256500079 422635047 34066670 521422999 624935021 634944928 611377137 1009008065 88855491 434255712 718354709 314219327 754486514 222619173 575893848 803865211 488283851 722167774 867439887 208295884 556135730 734304486 783204000 80166896 902146072 695358704 643369440 292620173 322865232 211753239 640718564 381278514 676598089 855233338 29846595 742557219 233443626 860688928 355405241 897708517 186999487 71667073 483274371 486927254 102521799 983714063 97200301 514029886 569792149 341540879 348438919 764234451 1032337131 644555592 199993333 1016621370 367825475 855136615 186215788 620049031 520358336 683831307 337006548 770919563 365905300 500268568 379313414 857882370 1005925221 1072866101 894965392 13888999 199901579 673449407 495638096 494342780 984810 88880388 336443171 988477358 260747786 874989729 660669441 170930297 345278600 791959027 386943578 307802124 262416328 762160963 883102138 820552207 573591655 471546670 737177631 71666759 471088322 242438917 911154619 970286772 751605483 882429117 1058800030 979056426 158332873 106748829 142024075 110052149 821223151 115761723 945434429 313879439 676008467 158281971 872983413 862539258 687186579 928653446 821066143 757676806 371754610 984648114 318352549 773413540 683794757 1009277555 413088899 415793847 118193233 123071043 1027455022 438267508 1033833289 505112993 940240983 211126723 82017948 373678715 73100043 909563843 982002865 413679021 326086374 804676767 426702083 920756857 603007726 776621837 170833614 165026749 669601929 254060091 851578365 802763101 403105260 920485998 67863163 196846295 941017815 921683342 1048437303 228299902 760333060 594707189 605332776 172096352 576522035 707007304 480897631 403401596 969742002 377981517 556282544 887188017 352097482 253573866 663599562 720792795 884933690 981988224 430174440 944886553 337265043 438751823 110099824 870522581 669952624 379275715 571533665 148954803 1020472270 111035842 456621514 224983842 872861306 836833288 953257344 543461787 123130333 28741604 815265880 252248883 554927665 270489495 263686929 61942339 242262466 1044223270 840011002 993449448 271608709 136898690 5452255 420912536 662074209 825019490 452453391 335072531 647263995 831641887 539663493 854916359 630173614 636760121 475011216 357859513 572625727 577405719 292037246 524498446 787559118 307040456 54236254 581602449 875290396 229642889 558802768 42152150 334840385 413834002 800575917 543170670 246430858 242858415 756761806 612933040 519744982 304351267 36682828 987279346 1034099058 11585988 803880741 905501559 496861170 894003015 1011653219 415447295 358460727 687682073 832056002 732790636 814934980 382587332 1040851409 169363472 904187704 205991228 825024849 159239291 255556557 130102878 63707374 230690030 1045297149 253413839 194780345 917964400 179272491 104141375 932401088 159677238 664637827 867924466 1038073061 1020560206 719375425 372953236 443848816 367677537 636395169 798323592 680082212 577882031 248863039 500894198 562204108 735649849 282152152 424907611 209312273 630609573 9354657 609604285 441691068 639186651 446078254 631705050 1030783857 640520386 619890856 130787032 608560281 646948668 51879501 1056866622 807165684 1001907587 894439806 408021897 224678818 228163564 429205553 294989160 634018699 368299405 1050597610 303726337 113321109 1046577569 482630273 89706413 171960905 905207500 843339993 568609822 981659346 696122854 677625826 339292894 473362813 1021347580 811691976 880477855 125760721 19180624 939400883 479335197 913451554 696099885 1045080750 385434576 277121748 161315123 393101265 804987983 171238936 478038703 172763233 315018788 536754430 208693948 731696917 99357492 692526092 366999889 177783760 957043149 279299215 965945610 5941056 748571631 215962250 203882802 748117544 297225767 929471544 1069876827 1061390684 245803139 1066534395 887138189 356455893 936205234 459341220 1015837039 768546293 685965972 814740428 729647585 795683576 340088279 1073607174 895514832 796762666 768823261 202225460 168898687 220578698 407260466 759945425 954142029 1748919 687101925 287504225 320349713 403164028 192344318 539599038 586114878 320480242 596686191 550312951 832439161 66505946 134440189 109366744 30947297 451895162 46861998 911475515 474541128 264623828 361938570 940085287 460468960 245531093 631461140 548584987 396069912 913800091 857842210 669835653 573134397 686674859 423723218 445151535 768274411 722815206 1052769692 287019709 736590346 371554448 1000231236 782980052 448458972 1000929591 367816241 244195921 612058894 129866879 1041994584 866028611 922681467 341905992 211192962 92961588 521800953 822355340 841770263 330259035 966886531 617417969 148976184 863219352 577729508 118127858 214076362 612922966 376345184 567407428 671145346 23324472 222551559 1072794799 124224510 891993648 621957977 195402667 118718419 172180648 156250083 650684759 301228764 280618571 275308287 884070025 636578232 146145841 325355443 705762647 50537089 913364404 298591984 974246598 689970132 935230646 995913655 213687852 827650037 690897295 594860497 50803512 410909812 533790784 878528532 722176088 48040215 234562803 682159406 305794384 451597454 4358041 235734002 781010117 1049928588 374806850 701948308 475017185 459364929 284991060 846256767 135079951 178238034 279586553 590746868 1045921837 470245496 738066654 619556788 325152244 823036826 797867023 426047723 365215499 342326706 351141014 753625563 896891448 453405307 22634666 390959247 80347114 450476978 940565934 618434644 547656287 484083563 573198154 790180859 137839311 1054228628 455732393 129961839 886630031 599461683 231481908 642784425 455874286 932744287 663960367 1016154532 101363057 924696617 742759195 887566460 1022994216 236438630 1032827710 903261199 264984558 632280844 151831409 696140675 156474177 73763692 74305769 316368084 619368566 311018006 369538754 913297324 72824619 654238031 566646730 118971357 935780760 198235960 529629132 905354275 770157336 774303769 82259444 770971555 904943113 977325420 954842282 40785990 846638932 136820817 803067511 901096835 38696863 96641311 509178539 622613915 613848387 652278621 294338633 1018859799 210440865 431471981 425244258 830211868 568268939 920521097 349045443 417453895 855637373 1002238154 860272784 732276153 206527489 496930158 259857265 93027014 83821783 761934952 293085279 533663844 345974505 999564726 149241442 399010893 56588636 447119067 81785978 122387570 115865778 217126734 736315658 74897899 299982286 293838230 579582798 652719583 554941450 526742769 263079127 970308361 763959398 458321068 385926550 46423880 28262443 595384580 308485862 741683776 786127607 249265904 306645279 272871563 174048885 774515790 548131769 820141811 672553757 155265451 54106798 1012511104 286681501 775885783 163612092 151023508 73453210 936669859 2210339 326174891 379334007 631353618 93419580 868036186 898196554 954120977 460062360 114284886 566094362 736253993 672802683 131669254 47926785 1053900044 765034863 143662741 9773638 262242628 661722364 576283245 491974468 754496842 504981720 727983608 278790856 611978722 467401743 803520373 327109504 1023785389 905344423 416482878 984759376 1011499637 404091310 200561457 910363212 164989246 448467440 820903625 665912676 222620344 437534552 813324888 86442407 233581294 408401066 12824893 655983866 716685216 317602450 922301580 695196747 755806686 648082810 913495539 920964826 12129953 62654973 683176137 145198591 699160535 700317830 747031476 626863736 1008480590 54472577 830521032 114688223 153727227 148460891 233097333 142167211 964832120 450139909 493847299 104821677 338462237 932192330 60803985 1035984117 30391343 563176001 594591944 886803386 890688723 965035377 131502508 692993066 43419589 959605218 845932395 270410062 547875014 344225748 619681478 364430330 64492784 1043425460 108009130 970775018 414387921 515336723 957769415 571757424 26533366 748203733 256972459 184219937 657204854 819307101 608019230 738826828 779237500 708864824 794525664 365585157 882455046 823863690 884847051 610271401 76523287 75819742 910777693 458240577 574052205 1024510704 935544548 862957868 130868699 10779946 379365420 644750905 427389047 605126457 1032491572 17870586 4523258 200735151 164240878 834244756 707158670 732977875 108607743 316194700 559997684 733120057 82267640 599695199 509148170 925823778 368986398 851664569 64837559 559482154 987129719 1052507997 924546618 912782444 200649008 76126310 962737767 487378676 364462207 513755686 297667224 662285948 135789553 870184768 523844973 370216512 50831914 1045302028 741176565 884341062 808743998 190374313 847638264 131198828 123386721 13073104 366828447 53287197 943608810 659372301 161647109 622561423 941200588 251203236 895325699 796352544 83664813 517577221 1026765699 679936695 403879799 186839670 369364914 55516395 596437757 264891570 310942300 300818357 264532675 1043379750 989759139 503235985 519222557 2178887 184367402 31200391 107643210 565022395 133453729 701940734 867325127 191904208 947462770 76532232 448166160 1069723852 188407887 293324390 961183858 741442801 719556753 349019597 465173260 1059389965 696397521 347684838 260429781 528624409 639602849 88950809 575259224 845789501 953400010 431670325 645359727 948815545 157534647 322264667 219243283 841551857 1020086406 74918212 711572587 131018017 1046823217 569864082 542145596 251673719 946799862 35007213 925052749 900144978 437090303 736694991 657361681 737426904 11859949 58706646 352517067 245484575 157718120 983217507 952237552 601046763 738736257 310241985 34584715 676143687 779381472 897337420 955754953 556862572 108998535 637411495 759817574 548782547 196241269 351985917 963707346 557519113 584183470 868933301 982232236 620958044 97224526 1010622422 415647482 192841096 991409508 232583926 517100368 715032625 307704960 27648975 349494453 260011343 911367772 503141565 505281756 327930540 187953282 916716046 328182176 237530497 881905213 792474824 634982147 292635679 612148044 307139661 158928878 954184483 640120027 763843247 146095088 949953711 663446423 1016534589 361723587 487469458 628730921 702907733 534948730 560369334 191270361 641218680 1015263204 842946170 269318181 641181471 654172035 563846808 217772168 462525457 37886020 692572549 13632437 92748378 885597702 278342550 771617376 205214981 984377808 928278111 1013405458 1073702521 724209553 573238827 417665735 731562530 154216721 91156966 854629423 887217502 1004129093 594481900 902346305 258686983 597908214 512030230 324500416 836830491 925121233 257467670 460074452 594598337 348642615 625977267 207360425 136734837 961192929 683588838 951686120 615589750 1013991583 1065948115 198638367 512318028 903504262 531775865 806676733 992195694 880185815 1024599448 477595847 113290120 838932733 779442109 274553374 237558134 32717107 939910653 809677796 688835128 895476530 125568448 443241194 775074160 660623459 446224177 280966285 611626175 186903240 636604340 917329023 836252492 365694757 756558884 296737402 412486002 976714271 442270544 223477371 804793991 551583008 73320681 126956429 368026404 819339306 200380390 300037468 644984889 806150753 605133240 537998248 218875490 224815923 712562322 26292470 625843461 217933817 870350397 334334813 261249541 967214026 181577284 666000377 700024759 516831854 565302720 709852522 457120452 893515216 658717046 590033242 670068013 198361684 124840519 908838354 1066404020 201266372 422525826 306236396 668535178 395909004 190941066 156525894 760374302 366279112 287791291 13213774 490741953 1066719561 486454408 15636372 688925295 1017662877 318493589 1038163747 434284734 675189083 581379839 30554671 853767819 871435540 1056638484 437621579 41137771 839545979 38551970 246630789 846156783 185313785 799222682 970849000 135587935 972680368 699171108 746255945 884854995 994869437 287952905 1059860902 936555196 583111528 28980637 172033600 49618901 472533608 520955751 779708771 125947028 7550601 177314506 914235993 231588639 72956968 856761405 785493503 884284668 989873808 39210392 292769102 509575648 782634244 630893213 997588695 278529457 686623305 204234084 145595710 144504796 436300863 1032533202 52776948 589374973 142282070 644385282 806007026 579203709 177738127 661207835 413598026 625074968 911521052 142781423 917583208 903445448 495860179 548391719 925519766 425259228 575827912 160000880 198906738 555988948 1057854307 558493781 186224845 183687728 756332617 604101536 579244335 76319076 218681065 379357692 498977607 234985233 290353756 435205866 566193592 792615075 613616651 383548464 87211296 464446543 612713252 887855870 531298035 758765516 550658393 212179659 154296005 707526941 255782553 332645729 507483135 968924109 1065401594 614724288 24055974 92911018 973258076 998609275 423426566 96887086 429378439 315929942 534273865 1000210723 582767551 568720664 765481532 753869441 474618354 414310221 165575220 622420739 682799447 626996002 244426809 207365595 1026233416 604928539 187465372 816550895 968584807 945856893 991958060 187155560 134676481 321394988 1003846683 539607775 22171335 1024132738 595146805 541387301 509076529 361205210 856583684 771797487 191410273 870779674 221861299 241755907 838203808 892155283 130879693 604337017 877111794 525549932 1058523897 1001241575 605056775 38835411 1039435418 1014687203 810283501 686538877 221185725 204821639 732687953 805494357 177566388 597392799 565053660 426805868 997419110 667062469 674163099 256815870 880144792 278880187 442287717 446243281 844596332 535365189 107806506 738173917 623963729 672939399 711573583 780072290 214199685 636572165 852498566 795864532 10013017 977233558 366236363 526864661 134214181 504557683 4084293 420576089 96072645 781520095 898329200 101443344 134032325 872102814 404673458 1023845654 60189480 502671508 184566919 701252213 185639121 632343604 107621733 246775982 769889001 927753770 69398306 626185620 1062093184 774577431 549303542 872088265 564790811 676175779 834094465 16643114 514300134 465791093 42629549 136406755 535292010 271285227 344166628 339694231 143068257 487852119 621896769 500693297 430435865 550172085 546409867 84613491 698223824 103242562 853294252 634966621 240980550 732589877 182294684 127485671 728268744 702992614 279070657 590369672 745535923 343379768 930204510 839628137 7837754 1043300489 360581370 723706018 272115910 639895873 440136303 342936278 579640204 230217444 1026349743 243002543 788693242 679641416 822430018 356306548 957194874 82487483 121852423 473066489 264245413 630024182 597551707 6197109 410089033 362382461 468290042 1070937093 228945645 95406555 101584231 946583176 137318837 486728494 83495768 313601672 139469846 320424437 297162835 313671947 387287425 410275541 161484138 541145011 272781470 822095635 288791492 217783581 855389869 932538226 367758663 935643237 873904073 947126279 336184552 71590080 1037454756 645844609 617989500 317007774 73027994 418974234 374667623 1037069977 681338136 857303872 568048590 468089005 697890829 427354625 157846605 752336384 196203658 392921133 557913427 1034696213 255139771 80688458 632473568 549755383 737643829 535191444 857631604 66876598 338315045 167518262 291081154 285619996 486302335 1015992346 731280455 997260779 859323514 363612705 30265713 570542297 478628659 429653336 824623304 309882382 521989779 531234822 767215158 68370312 621763064 998870849 61479332 981714013 499041110 43579537 518382978 258787926 543375473 811904234 832850854 935093187 150842721 897874603 864899802 708191150 384485519 592182698 1023825622 88865497 205742901 599031511 77122236 993793264 34414594 1053685076 302271663 352529858 188532864 287452581 647170378 378328774 376638083 187718249 33147699 864237718 854154469 792513120 1056007251 482545749 681675698 953583248 162926497 903515111 164204399 926323372 962329403 143509965 863544851 470815733 865170227 284886388 103467368 732669296 295212347 698101622 444569880 167039643 637707411 884507208 402905926 995448952 1026317031 738750918 440644025 395363715 5205391 747016295 418839043 472883387 683396048 967407623 898887519 685801229 85160043 829455123 278247822 790643687 436517578 825086844 551836161 493043677 524637764 53093534 361455884 592458476 944766996 1007855257 769409028 944771474 468776954 1040248004 1006845674 140184707 437669014 240761838 936128695 679500922 1063931686 702976257 1034715015 777279296 45728912 244291914 43364788 1025170568 657749129 16266363 341550948 905378820 26878791 720328971 595247882 817694568 915073966 897808859 874526463 858237704 984753426 670484407 407315083 679531544 631447112 689036510 658838260 640608723 101735435 381434432 1069855434 895282555 782271024 341904248 374517100 900569665 258593765 733706383 352094774 776331275 175338654 584660342 416993545 826505656 1042588565 402025538 325566093 525824213 991576772 131772244 638758753 672961894 1038583451 859247204 583571294 1054413307 997966378 284392755 570486243 240314963 213508930 853101633 131264800 485264415 890852233 177741788 914624826 963335437 587445517 758707055 422904672 871059005 599281087 645243785 643525661 271234722 423646328 192251817 473612859 985011271 825041125 716174930 227675700 420109764 602665732 371603478 882157234 557777053 587864139 789437718 273680221 45624109 441124389 987505382 370263666 969591646 590306095 85696437 87045381 428661390 148880852 1070245250 894776659 948345298 783921079 570529482 362558938 364809709 916307632 495363786 615527591 145271707 664362925 9374808 1068298939 1044653826 1044978839 855674853 55494251 442945850 744391958 487302970 1049792836 770536214 199782654 1057521224 564644848 24392005 672551048 289852418 671082084 945586795 842172606 6867789 327183199 230992935 204801572 900644284 913755954 671460265 951891594 612150474 587605996 593861308 732535200 435096672 293917635 160583383 849385162 851186015 961142623 475078837 666712629 40631894 680738480 259953499 1033711070 745076570 143743632 666211287 183459627 63626810 995992891 838511903 438217563 933771985 528676085 816939356 881892968 116667672 1053268315 647011181 707465964 415126923 773888085 441462734 213742240 103771952 1023792692 836820273 30915300 914075254 617462573 836217769 226118223 165873299 660417179 974455006 292200809 303473250 259742487 176408211 474396649 518016182 154790899 997109293 67701456 903567857 419149765 984942437 518458171 908124388 115882260 282860627 216891395 283163465 874406325 484457518 298399711 888747992 414248291 905464143 317255442 884613896 775640008 433243056 1025317512 863035708 805144079 309519246 505093639 210941884 180604168 898749487 799791364 155155575 353413755 1069094622 312070709 688061310 720111280 1070663050 142878091 401588111 734051944 526540152 224504623 207360992 205645610 264632631 863418994 1053436018 268073971 613802524 338942382 459330228 158670650 643241662 569528039 189701661 511958184 627470891 517440509 1052650054 1017377859 1039023394 985722302 165534552 30369924 901836659 895374287 657815341 720408632 907217414 761914253 19246380 820981701 908607508 443120295 527365264 131657235 416371961 65956309 164682527 602543226 363011488 562033023 318138000 711657270 681186452 537371224 754839682 763333682 498449686 301647961 812907473 722902566 441261612 691339364 1041994777 437951248 765112285 970825183 836732062 683965014 663010620 266462266 120181730 367756005 966808914 1033096402 174564647 653084425 971755986 631115294 51630208 932680056 640397849 816928294 170954384 486959339 569005594 292467592 897395015 732766501 605789070 590150482 587668340 999423169 769259680 472171849 33873604 1058433223 306052836 95051432 42950211 1070660316 1000867076 951586820 575128815 127496905 943189823 548675901 199558921 376472788 543573718 87508546 770933189 784430477 796581038 421638554 273194556 957881368 1033744250 71917190 657292189 18198852 836614764 955448104 229976023 59310915 468291493 393326915 679801415 377762727 449842612 334822616 835678535 911331841 708523449 865651469 453619482 12892874 96353247 96849663 72011952 55531449 1035693331 476305364 218548938 375149142 120482034 293197348 66536245 182308826 215406712 545526800 99460508 438422197 1018772611 72578250 831602379 298397098 973754693 468534674 353928874 560946313 417981564 550461825 998093284 780457202 322251668 262853844 270519435 219616487 52840519 1064244914 790855504 859431116 1072621647 486161080 789805105 215619055 222886762 450321700 726865290 497131828 617617594 859373795 967010510 508151265 290045796 800943332 354883724 636901467 627398654 132835069 963519942 758265471 856612698 308296817 238776128 414979082 847951232 551374567 266976885 512024911 260746608 479978221 941902130 147949543 189069867 408844268 917613187 937421173 929571316 534617852 1055230424 606427576 253271285 52839893 700021648 186367256 272866035 114607798 404647597 235432557 251177165 243056367 257457068 582889868 226900911 816228952 583958867 871926187 72138465 333177290 726570457 141565945 872811412 30026999 507341829 484336611 438640975 823113287 797326302 474689581 648597443 803955547 646637734 998544883 977228099 849592078 949083429 31220531 149768999 41351387 806084448 543856583 584659082 1035636534 773706650 1014779670 471500369 9654271 463692690 665068651 59048341 370006361 328742151 418502051 687368370 279789204 384540933 746925174 585910021 149945087 586844418 785606743 702904947 452361079 872463622 14509977 339998427 185729213 995103853 505227059 304812379 1000813450 781166206 1035594123 589659023 460213725 178814545 178235309 234349013 172544515 625555181 95608664 578731287 50906145 719786852 464508834 456877298 372231141 181638724 268248358 865194197 70935020 194928649 474278370 866896268 154470637 642752040 560707520 284468896 842871989 881009157 926085753 430100711 469992075 879953176 1045066134 105473730 399122898 641791893 168119386 359258517 998709963 568934938 666425270 624987351 623197866 897404464 303674764 310149570 820670646 659605334 898069507 779686984 698581171 286489155 395796669 514710337 631778371 136559320 288284169 49130175 752162355 739219635 141049319 629536515 201592736 678674521 5234704 158703074 914312946 299339511 275982812 94282246 895964837 962344658 1029867625 832431755 1057708343 619129135 319706066 478406925 746060757 1012245530 423295183 453543360 1026034267 458563744 614085795 473093501 652238119 21405119 828054181 968938175 314748831 990292571 739096329 870980782 1023445340 388535177 71823294 203856765 86821260 655327548 282541468 285720616 1052678109 529244889 935616884 232659798 1016092845 412308402 848912885 412142897 986776580 149821979 946271146 793978323 1007244612 350929502 281514175 548939221 1036883664 559642389 634517193 591820018 590763201 48045728 805911408 1015361454 16760323 1026867350 650569284 187064502 583078970 432433838 365449285 187725572 623368145 579445244 412600770 1057540569 685050806 411521270 622078729 531093964 975339392 799082633 195045934 997960185 748311341 986628412 838382865 863383307 788186577 359831928 833903550 604722762 876678529 299238761 30198470 764354385 741669902 288491210 274029588 582884607 661801845 725818463 447467355 1059546712 535744455 646060311 937333821 709208824 154958968 521838706 1008246119 575798268 967666778 11696307 479186180 253799976 371949213 746183301 610313031 542163668 1060637601 801048644 413746450 10688081 782911430 43294272 1038712480 275442154 149418944 1013859205 68889149 224620121 230193184 1001884584 669935734 78570380 827559398 222047887 269688074 447872561 765830507 860811957 459419471 58909811 40401699 420520240 3539719 673251429 134790548 387277542 75985849 49739768 526037520 138480002 797895760 73735629 191948751 218248144 667634442 1006824656 525529770 280923500 39650766 245283523 859992416 516000765 492774456 299437954 935721432 767968007 241156044 454512948 95353080 344261717 785207645 227838678 773641725 670632553 396921864 255909626 623071411 434639150 386040047 1045242216 856544982 513862790 869662282 817902342 334995053 1005130567 799377106 164769660 429008635 551824250 789065821 876075827 969035049 119708701 1030750032 973275891 473241266 225909538 879787825 580326242 542563137 1050262502 1014838920 946564853 484780662 579475666 340314946 527969496 400868205 857355106 773856430 697551201 107370241 815538407 279510810 959712416 838540030 112691898 401656254 493648444 622801461 532173807 1002440557 350357356 822297178 657477637 488874515 121133995 745226046 343834304 861858648 643709619 540401805 1030125452 778325370 795719301 895332162 21126167 786973662 651250258 824183248 326155425 125778676 702147580 288997672 157565987 555727264 194105402 350747985 7997834 563494138 571141137 87546733 643076070 687966895 995370813 596873924 119818657 88405853 1002322428 829616098 595228966 519718215 950224845 589577824 913786530 746330581 541956906 492963506 39191578 166363066 619540988 417670965 1039048517 442914116 689078889 42776648 961684445 386480694 36240830 205308180 413948088 10363926 959828746 93042476 286902041 187677557 225649991 706563756 581996559 913154410 542183309 40560641 835351508 828819766 503300520 408547855 837198890 999986182 995678049 1063129524 512032602 521805471 394104416 1014279051 390384700 10821247 652343519 650176895 416583290 596563350 821388121 69396364 146122339 830312346 655560025 233462993 652253421 374445794 94452910 898745429 152414566 680033620 540917270 224008925 392475788 835130347 678442046 460902821 669613460 158968154 859725195 773751989 904629514 818661687 264185498 776501666 784367374 706329435 1063862025 828096187 700827981 864958063 1065721149 572691829 781760835 576208944 767286955 29409866 619884285 775390121 821176329 93764841 285364999 355304625 909531622 436914905 810036488 10660061 115214236 13545967 557572821 948616667 880470466 549761741 213708696 19952982 622627790 123932926 352733352 1071327998 980220830 743988037 32440117 1066179347 180078351 625734639 420977425 610866229 546638028 680218936 519496371 103030350 429560831 913278932 96236648 687780241 244040841 176141735 611666207 679124660 300077707 563831851 783099648 255112243 80704088 266888113 437720539 937487078 145667084 133141037 703664557 90724848 885628153 13282540 44978764 1066892245 586900270 880662975 436565795 400270216 206637073 691044112 400210264 495733765 83175334 352649351 54738349 582134910 261111696 879255113 223196140 405686748 485055725 597726132 764008449 644855192 920094300 587523750 333464289 341601833 764239352 812502669 184251015 893563687 302215901 610521651 902867339 738298345 596163269 835138181 577763434 980822807 872465764 962315375 125030125 879660678 950739595 966118284 930863439 870347936 576574055 199115665 424472342 335633554 388693144 316258392 855954967 296262327 329358765 395403217 108370863 808790530 146204553 864778073 740495765 422896183 1009236439 633463096 250540242 752438143 276171601 916335384 223061920 493358845 951559058 442950352 977839252 509512009 373864751 308178753 427000192 427870157 292349388 905469542 180086248 411876057 49465004 386281092 52038352 89760480 889100407 690913025 177769097 1057168688 944615459 406331580 778511016 859997746 291723086 1015035580 572439010 579093333 396738014 727179977 221932296 89116479 569597991 829056300 830342932 870000160 975563989 716073945 106687703 860591037 93932591 1048386556 245329647 391855753 994752186 51751873 760311481 929797569 571185576 822859168 963508551 834976698 18267512 927509301 453085327 144992527 1063004078 715430539 279907484 704278163 777252436 331034963 36703796 281205010 220706802 619788381 493013574 207311414 676545951 70311815 391842371 618630900 209785766 155913488 943016348 953509595 864797221 771781081 1025412519 26353036 1019025045 700841905 20411401 527922698 772789600 686547527 1067052820 157701224 1011503402 50649506 60728914 5217654 328628587 1053878884 495876713 832153780 955847350 613117343 85979567 1042974069 453635241 413926317 1033972821 707731551 319208461 510437379 24170619 646198918 395598755 227310763 24112966 774679991 779959014 65444402 544607702 482397300 831674874 911649330 761530206 537868205 76375362 73239692 181412850 924583459 162262218 1017806817 161200481 59844057 880949177 314475512 445598319 827190035 730838950 453075183 320976819 501378692 11131521 316818581 516639021 222468169 834126212 566758792 171748345 645088572 269561417 169142030 245957685 440107048 491656670 716022230 1060412257 1026606569 192306871 131354422 303312565 656735844 174531903 584372057 534866290 623813615 457060411 501718366 154671888 15975080 194497555 264242262 65659212 1001482365 295726209 413099677 357695151 52886776 67973573 211229365 397765469 79215249 829728381 717048509 842632378 150720733 711184892 501011041 979874579 391585352 493578391 1026496221 766099999 1019592830 460272756 346684268 661691566 723720229 857001499 725027710 680585285 734095765 948891657 821639581 690503824 1041274586 451719857 54216444 615467517 296263931 425091589 668227481 140943728 140585037 959584206 1041209754 523121580 699891031 820370025 47184782 909097261 445988503 78257133 1006447279 261411132 523690284 974050072 585068679 213597187 46126291 529603583 647492775 861995068 83476066 835351340 180091229 644906455 821572712 1040764979 610519510 343918169 754704189 496537718 996547427 53799247 908674483 251883046 243304949 790711310 263291068 198153373 996853442 784116215 413513203 58082625 14326126 48094336 431085374 866660959 281255677 568777453 439080217 255224811 856287961 314973132 108188229 774115844 995319392 124083250 987555049 503136122 567191223 948158195 568454415 388048013 548993860 680551156 793629043 582086758 589778027 176632885 424779004 1019770967 676554490 738931245 645270675 50108387 839093279 842850334 1021208882 781763733 598468206 446942860 217633015 56477398 98290020 618354577 428413389 618588813 103333717 957376568 836102460 41328101 496958569 875443569 742882719 95341970 960124311 356405981 661007078 1071255600 352609810 267961066 728935318 1053900254 614918187 918209500 779666871 326063330 354538673 401855376 1071459911 1000215119 117781246 1013097482 730956465 351279553 699479021 730204048 310675918 297232191 111699960 1047624134 964275496 92873918 980889205 721544025 460663978 696390098 66642997 629061301 82002890 675010491 672345320 1018395567 1018867514 451976937 838070143 391869655 1042969887 14982467 972368967 549662906 780350306 252801781 851776165 102246043 957154276 138524444 591441887 518137055 228961619 439054215 902160255 686264968 366241168 827404901 458376893 443900859 610795959 705380815 150031464 425649023 893824859 540080445 1002649748 176164270 825735706 1038106252 380859527 1058147759 538830568 334285286 746878242 27687531 739037131 236014709 564808560 858520884 802101400 6303452 545593800 215063730 774697214 165044700 211884296 715745977 1002781426 242483081 669427728 386917057 236918049 641432178 533203089 28748131 123733783 369200210 562433242 850450806 375038274 1020789284 790871512 269605811 346161573 947376294 365469220 1020468967 282092313 485478297 643539500 232565279 374525317 926998867 1034759788 510248693 1073553442 162360604 898277388 395341181 17501308 904448926 857545385 479566977 449693971 740693812 746301649 66320917 21769906 695866373 797679204 492041934 669169781 884903425 688798229 795999982 427714785 327339504 1028328743 300740844 615785921 168456172 797825363 487013600 306968722 1037915492 346877257 87197644 609621921 248553933 961267794 105599415 723377274 503390774 74410503 120848178 314704065 110050079 227019027 418693820 692342911 549061955 249690064 871110761 47112854 982896970 165236817 300163506 166693241 287602566 604134384 976568808 281730735 843720743 101681617 889550291 37097354 400972989 457768204 756975220 227367421 165456918 146857280 672620130 808264909 1062819140 632830523 349206844 471624060 659768316 321535035 839042212 136286448 408282912 915531508 613082098 384720745 331683205 557199688 478104442 883488600 320185604 385165887 884470891 783851765 595213005 142221536 357046665 624645729 1001923124 321587863 25893492 354500717 416594630 510906589 44732305 593898979 726057079 946827666 615494186 971293907 244894390 826599313 1038922770 473436643 111051937 774514063 79956447 833951543 996642463 1031781816 145391015 761925829 143541199 562458114 554597245 521477511 447953411 939979050 423695949 1041927577 914923930 874464728 746422967 806781579 981769881 702260205 1028477211 107477070 537383550 143554824 300945682 275648559 973222266 118837437 608737832 691623198 1023004267 687005825 990580161 1025083358 622936357 452347538 848159438 539595589 634855343 315157148 733514432 484448155 358020593 1047463648 338386667 240280833 63131093 572473252 321043424 432526944 411159892 483381800 555014502 740492923 93123736 434803700 819694245 781670533 723667195 279235879 841802129 822202221 987209455 1003472915 574085467 93772598 30700487 39823745 1006268391 792837646 632470710 917428032 505102752 993416763 726249894 629506840 136926940 405066778 1056777423 734941030 35406763 171813595 152068112 300950662 147887484 700329369 990384004 883871468 534525154 396922907 624806 272357383 376460953 977659122 188952055 278826104 181217617 227578776 362848568 556304766 514949374 942984182 430629524 118899123 293750912 299745446 68441729 676305899 774817039 791712730 235045023 737127652 324786623 628575140 478170124 842653803 910230110 927811103 1053145361 67998986 210155493 261053548 55176578 989087048 927317575 526519546 640579245 341715003 887759792 256209844 447695590 530687456 983389887 154434967 873140807 406954740 168699634 873695760 712662089 555804715 75782850 898783213 34067346 968473619 690129599 158812560 764318832 770075884 136338797 955835963 316045302 169317291 937931378 357878323 1005695102 108232206 125605453 739856629 866174537 679957101 890374808 844326012 249387738 1037064524 483522192 138433692 925515900 634238546 19126655 588530969 249082394 205692213 808992517 680307819 1058237782 1028117713 958863799 193555607 853431303 373660089 97862129 965934171 591195006 456770723 183875001 191533309 360601842 577287541 175940253 409847911 680344222 218048847 605486255 188075149 355930300 475902745 609724159 172532162 778890050 647862771 367602139 477881790 567967554 982397561 240874739 713489998 135809711 654749901 279881622 260175751 385901660 181117573 661084203 105013027 964383106 168657931 322024756 950516735 979639061 498884047 626713408 775089346 666399941 200805585 203587189 212077037 953984263 648283802 600125509 645550991 523512590 126490224 263953293 873073976 25923502 54970166 549536096 51611471 426951106 1036014546 744437289 592288703 333429684 704593891 63231807 240540378 184721688 872792641 889603104 283362484 823101326 50320870 614383937 385436012 999119816 412452512 1064383718 551271176 973958861 871302993 642381314 215011391 186515959 80856276 507337674 995922286 72445890 31634206 445222062 798895715 596005089 1071290637 140550382 231422661 529684316 145580518 760769707 472490216 912216391 992701955 118869283 972728722 594937378 54013318 759101243 211531610 380698683 547862801 936729416 462528233 103880189 25597832 318737747 913300334 792295603 739058227 713839639 431382733 193553455 418199211 110825738 984829003 741377033 1065029739 629676958 396272845 78351139 387801290 232179322 89569042 225661180 888022399 1044745031 50014549 285439903 781608022 657298534 264325897 251384932 1044002443 1059410022 531597427 664163697 816662428 758618794 727452991 179859709 419426798 567841470 438554812 964248261 375797128 11721683 739572578 945421046 284815433 382257164 742335813 685323111 469572762 114099383 724331545 902123082 51686512 1041518002 910190858 853380776 614966485 627602284 674637580 824081135 685544509 640531749 160092064 515674073 742840606 547448608 691760659 705207226 408998409 693513990 417539581 169390213 502920725 294643207 506153578 901336908 150975204 244586088 444713475 646387339 319923862 790186428 951365842 418847685 724800243 860624564 982590316 426633511 751653274 879723675 5005491 288003041 1013910504 268836677 1012715289 908645849 860466944 650627469 323882242 1057053213 511900713 899258079 139952015 262650374 102337082 428959749 463612295 846168581 6512265 810148047 856463382 251570366 977332839 266324166 406171857 160095620 766693036 606627789 410771963 452497932 343567267 843384780 1026358938 351956033 219548909 516217898 3008637 446070414 532881973 494439829 865821115 931385048 1066201063 26353181 361142563 454016674 910365110 566548392 20763841 422954899 269123958 492262370 325099593 722960904 466310559 444399520 1040987794 441470188 18534353 19804123 387076994 661425481 693604897 573209311 352990218 33570709 966775264 321210328 677675252 734698408 699268926 264855556 708904842 34698723 267944153 1022685000 10768956 289594506 738399893 260430030 649179832 640076892 431439560 6785529 219662609 758798459 182381804 101927853 624519841 943049920 630025116 544350519 361944372 918973772 412573161 1063165070 711069447 366147531 277971585 940499499 237413670 58619944 378419090 968189714 57421485 59765903 749768461 235985612 663102527 883496731 941297140 1054389594 375503751 133953205 101843511 185362461 127905308 566375633 872908156 960138173 105347108 788183272 162640168 455322798 1066448725 963919225 367819339 432305319 94225627 314967416 523454591 290393539 293705294 983566197 389076015 816638027 297462349 366316187 723046376 229096012 136656954 963303599 1005748782 409424619 152256678 339477310 168355027 39625876 381962291 883105686 439558059 880926983 752542103 916927742 593359603 36194041 160860448 805454108 843374039 1018353863 555282354 983696762 1047899186 932590132 846421034 330913531 855525168 496805073 557203024 766936838 761925520 42380355 383752440 40185360 151433881 496662373 53023143 158390889 1066457714 135547440 341782546 795437708 416511597 613259194 66135672 747985274 31224721 112903490 885187651 369263742 255395058 566798859 161104057 194621575 1026196199 889257852 504428108 71724163 246367350 632601742 21406030 71770068 432233836 563507223 1002027250 399533199 684701440 42024782 443872262 339241103 630718235 684521098 647419437 617353592 996598886 658954537 325161794 806503669 510369875 575813030 343357646 171762109 363611937 14859381 391913364 224199040 1045068619 557086317 236153716 886296421 351115138 439341576 990365571 121973493 227224556 664998414 493435423 223089962 506390148 339172819 381553329 851532126 884503592 465318445 132996710 755540114 323427514 557342212 680619905 406123753 769357528 502901891 1014102191 766674491 813453556 778344273 976041815 602053978 137640646 320221555 884463388 231183972 526444919 791759377 768457797 680974357 653946784 377526965 33702469 47994415 270458339 948873705 892728724 761944080 746954025 726930439 190826765 481093928 984905324 1024834851 763978656 353937948 266318335 825392476 175752438 1032122201 1040230594 138501950 787846543 1024380118 385507133 29253645 224311706 542931805 410425535 500081173 845721965 1050562167 242588160 679751355 264201907 635170294 630888894 739996645 699070927 308911933 973921589 500041006 528056992 840175865 87493427 84543193 984146976 353542472 912693457 620321674 445872529 626036149 349203990 245528225 521771985 787691514 548979891 740440783 539141119 582975575 352465100 1071239920 657023166 726498611 92583156 50737215 878853174 912076226 100479189 460585745 426557435 570617199 172574957 539040811 959464013 780972248 337102128 552180604 500671481 39864476 519287855 827313118 230103801 962305724 292732202 419168180 499169963 215457048 798215654 1026342363 610818823 474539923 564665613 260264570 895637461 272784791 978493878 540836539 478898756 245970478 776936239 531189034 434923069 745105212 562872804 645177885 748356883 91667480 802295275 350297141 260356847 997250201 261532042 247550713 934033397 783274478 997375294 18572295 115566973 29220679 660130614 92368240 116683988 442194819 125711774 162688936 845068131 576487567 25540162 565692627 867360742 549374574 327968744 573444367 58228229 595592990 943909597 290896748 266785112 372538647 472793998 79467644 2572980 908367714 355545630 805049477 516425243 353825009 563735085 971517501 240236291 949588360 682705384 804838937 914136998 359023856 36527077 199209010 918214068 900433331 301067069 97001502 148994379 840063551 778557112 882064996 12828261 371374515 1004125359 519929702 793398697 900847431 515130259 377481965 944910451 226017721 712117348 56564559 411635003 804299896 954751434 944839392 767460937 9575880 838063085 119033252 616971272 599594015 916992545 1027114151 1054345323 259925328 475469162 419102871 5496756 465075810 780410126 105634896 375626326 922408372 187773916 992583078 249399281 41333346 70930884 448089402 872223836 394304082 425575500 460298257 493179945 299352936 712699017 134804500 658006134 871596820 855243915 201430312 264398065 528657141 1045940948 694003601 304635491 247894702 724058071 625958147 872889573 1014357471 262332878 637071810 297224050 386967664 65191071 740184083 399902970 480207800 751461912 842043857 1006331221 1065447603 939111816 73130104 617249121 907902748 31638044 664283422 180473480 525548955 852794848 403128728 729551476 352503863 215189496 514651799 210779988 319456518 627659599 115768456 697263838 553098548 738963904 377726434 640016336 112021503 249555480 369324403 17477887 479639621 793695832 542393907 338594523 930322218 537374144 389110790 139054600 855636221 1021191063 555809308 69796649 249569808 411965462 884001710 512898198 22726751 1069291487 723921757 1060852628 466471743 449449215 871454335 330623184 735009999 594523523 777570484 181690157 928683212 949709342 924712379 803811341 668085008 177440564 729098874 551444005 54980428 988889790 500054183 91839493 575596360 749303336 391920944 142962843 908923782 644125180 715542325 821121769 1039177020 11062394 349373714 811893573 555157016 570473809 62493516 32285425 735156570 572207625 260845685 317753436 957862876 314272363 927669109 74041701 498045433 461991348 703075443 763168212 894838050 520376373 71896524 793921744 595328294 439566295 960659404 339476042 731169368 275893417 45626120 3594928 790196557 929475494 656012448 608909753 105821837 983545616 558514034 844098613 74043437 946866754 423041093 428033460 487608100 74353709 942873536 188991525 999991282 98326848 812675959 684880450 68547124 199138344 881131329 709894104 968197811 967210579 44904599 743749342 364545053 673680224 165849573 940442733 357799161 950925860 779757739 364597078 701639658 868503559 52755057 775931151 1000149384 995002371 402304871 773442464 456547848 1045667657 761549831 865745898 501446307 250735712 627792797 654131530 299577674 191378660 324442577 616217323 601653516 561930041 687104115 335456742 776211403 292681651 420962313 895447759 992763598 301368994 276796556 927965743 1025994507 484644617 1037349515 1060794152 170146990 135667124 920180914 541089572 522044041 214938377 597554269 209421753 8953560 482035163 73201822 551462009 1036788280 31169529 880603590 501620708 445189907 534167496 797966366 694680302 239193559 947048872 857991224 573664142 614442301 1007877704 336527493 805989971 852928459 344001393 754112655 612827730 771096742 1042626935 231115384 1067097705 140648318 239963915 59890636 1005503092 191327206 164868799 902199047 355436754 187458961 1066984463 247633046 903820156 288139764 72363548 346200134 45065879 7538641 991003715 1045380932 856135148 193985978 804541149 941158183 116522274 253178569 317408471 165270364 81061169 1063118426 898618409 924676550 278184840 477700887 273013209 289369443 855511365 396108187 66524718 340066191 304484972 725597939 905109176 829215474 261935689 562624506 1894276 984288915 455816640 211254719 189994931 227092352 913975913 312401729 433158069 363626043 431487725 924095669 723462504 170014546 494802559 252538925 554101607 670760555 773375043 864509532 577568115 82246138 739507828 952398284 901895333 865998364 876924610 709321254 182950173 563137409 829079283 6029945 1013628381 856913691 593479254 783412247 600398191 40083952 167950598 518292706 594653502 716290905 569240692 215181223 554863734 922198568 189572611 968114800 750327792 604217575 747269262 195378656 148781789 340847360 617552641 22605647 399699104 640800284 555731143 742965144 709937606 481143020 1004123454 172478380 264768475 510985974 274231836 674013725 487608052 456649999 412577215 427259095 75805065 559376983 826143678 777935134 41086819 661191656 1070837793 931066431 504643011 1027919828 756321913 661167306 511289014 106752539 392857008 1017283874 513885479 493893928 824067203 253964762 391746348 394809140 374005437 875733044 906906812 464350826 384420321 555828673 648625095 881995027 441601567 462969290 276436646 866254934 455049834 133217606 699739094 315001922 492814416 721543009 92494558 241583863 631349636 345949634 968012590 1046420379 439538051 166056945 616278478 700356282 524589826 714428758 994762447 515618665 206595622 855486993 421310452 668604463 142162032 212854843 461048507 439474296 739199338 680681625 997728433 143907293 748329646 103274610 711896720 904408768 200600017 173922615 902488169 34461230 426207654 1063124997 265420513 1007867446 404526510 920285901 277461787 328955016 21209682 736152467 485955515 962465671 994957768 663173488 502341524 139504155 535164857 6905052 715317004 762717781 197320073 573621559 227792747 58352107 170522534 355750343 239982397 913696868 968933150 501857450 506440956 724075234 1067810371 897445885 673920962 44964255 1055929828 242248608 793524040 79260683 911296379 866082532 271682679 801742284 802005459 703886177 957496532 727672892 1028424523 328903891 623664708 968082944 512197553 863447808 1030459996 680610431 915352218 576801841 25872885 23821598 1065413817 371262590 154130678 954933233 520872489 909555686 266578593 887303371 57087216 702450780 32163771 825166565 418926529 845099143 454082898 317765082 942023159 514434626 705500216 1001651777 816661648 36291242 787078755 503150111 438600355 464246754 834463563 677678859 364995316 453643270 773491218 661284677 550721620 364057152 920900114 1004865465 122479323 611444280 977385071 1070816679 1047117565 416919982 513855673 385533286 491664050 81906620 524881716 230370104 133879849 851275006 959528201 165173746 202611093 381905683 525133280 72642212 449982000 474822060 467644774 53422129 256776093 52803202 542187628 169059375 1062789597 848647856 209260682 526332988 320144415 432263950 780440021 535368312 337533066 204533811 679537718 1072857043 871199182 25218772 685168131 221094450 1014934522 566139039 835278679 950160120 773006262 696782119 147972419 399537089 353010225 523542016 667647195 707374931 684930559 634704371 793616255 503165778 560886098 729788346 464166624 183628506 110040791 679012018 622131153 484695784 618656541 211061498 227115528 141994939 520510956 776279921 775326111 163239976 239467447 276845293 462009045 320506654 1026540646 780084090 548523865 498208804 270416611 38141419 866693396 78941591 256074311 881182134 284515830 1052229272 664497360 993237276 838431414 301335748 669086943 78451373 116390019 35410843 894903096 878639079 444407842 703474240 650259125 934342882 878653418 739253781 577296202 102618315 935801642 576195403 961735456 856205842 8436051 616922792 352260880 629001469 714786188 44053860 875165996 328603347 1017823750 555873673 22305729 139567983 856939616 625868561 1060739593 162531311 479771703 705766254 932695198 729601022 785535082 852925732 929964898 648992488 570163961 1047831027 366655883 890919089 715639672 164371830 577109840 646468543 384089853 214297727 266694109 200408061 31749648 413205129 100045965 635985909 215034262 1043143338 718291309 479670457 403441600 261684185 235645622 738238319 460558583 913891741 585548911 50150767 874906071 686784606 130310473 375331352 504694657 506229818 717259215 868856167 376344422 84309759 211469797 673741284 553873655 58313853 958408255 386112535 478942812 770580578 738879779 377829014 68042432 328347234 878386528 290485058 448119736 649142474 85309863 11716595 269143397 550857398 487169355 102226676 528854785 756234897 356832052 776389368 725530850 414225574 1014596747 124871951 1008654328 340888024 869272992 308969825 30257901 799207452 178161630 988869630 837436684 360397107 132408520 358963367 476245543 658231016 358083437 974736847 853909674 821113054 542389287 1042577689 774674984 1007401830 797075107 1053244177 595508543 871078618 482829334 678277587 163490917 558550256 449551519 588636254 1023924049 781128684 658068911 788495185 320943096 344958888 293785115 937063420 1036611684 475788267 946012527 430232757 800997191 222624747 64646594 862446574 671101861 750460114 599150113 604014704 887249167 774793220 663838508 685691974 606483747 1070166387 520416001 932064732 825324125 332537473 596744855 816116229 470534165 182275905 104260719 621921663 327413935 914603316 918952251 839028505 395837057 514554307 1059716859 240066503 261233869 490884475 752273678 1021238394 154004739 1027567258 154029153 795195732 192139932 749479315 801665886 323775592 377247830 576698947 623828471 1050001349 349048840 913146791 653606476 13677804 223758275 1026445815 738744634 517631404 132546140 1006356432 654438520 904379942 59235423 252604464 138954447 504449439 396405102 86322160 858323351 1001342046 507959339 824038490 645177406 396127367 924183348 756071072 1022179810 805071891 949673721 395232982 992463860 145457103 395867414 140474571 603511615 255711279 393407307 49750424 374354457 25427703 87846166 131514790 573201845 1011037270 389534287 798661989 200764098 782525191 198904011 1007330913 290650767 913942612 801003211 388366915 360314019 382413943 1002883290 736554394 1048368802 583625329 120262864 625228149 849328978 81614061 740525422 825842117 259875626 716047338 679587708 583723435 568031415 38977731 864463954 919661184 677421177 474604383 584979846 775927705 381605074 232485055 310355242 166856985 22325030 130442672 875617889 1034725989 722600981 782050549 461341123 514156566 443706928 1052866827 568739266 743911827 738106069 829051395 763588746 37920218 965358394 196213371 564082718 756861944 120596261 818877256 698044921 994235337 227119154 431438354 111810052 663052653 411079614 735338328 444489798 176033512 263365340 370326132 314983608 601243523 1003204907 1007953310 1004725562 104820158 987212789 825490584 348987208 759439423 124789940 1029761441 477157665 710580923 656124401 710071460 187951271 778778873 901332041 103931654 347178664 1036842588 403558262 923391718 756980603 21270554 430482253 719500903 803325028 817112792 445384657 470591608 562894256 208098308 559277941 208898039 489923373 401012580 493926347 1020839153 695897883 874231471 655174437 885384508 751605096 445869833 766795589 579393513 1062857302 541926114 655863798 584911411 91951797 1045822643 472466867 203841038 106965273 386593483 663839447 665507539 28029326 1063017237 303795910 230927733 1031405222 523184080 521466164 576025414 614941614 644406305 11587768 355476341 1024823495 711054694 31814423 752424131 888381174 451622395 1011972297 210281102 369742610 277982291 331662319 984123180 990003010 78229837 84223934 664389787 200122741 171176269 185006321 211146511 377358215 450349373 12992514 499776928 454879026 649053623 612654774 777993133 218765565 495243133 736971384 334491038 459861644 906414779 947117066 755153806 774710914 62333655 1016582789 829609160 936420350 923882154 577712010 198702521 427738392 367713478 958631327 825335639 822385466 704599988 753765025 1022317302 328636044 579758499 883909210 404865432 952223388 816189812 170723903 985184982 272154791 98493546 425310921 285033369 285816126 958316824 194492478 833669302 410096855 530614642 979710628 637170005 364954858 52270241 440553843 303733655 1007606510 257376790 398245990 668220833 937243222 754636100 894984049 127093819 354691767 630636808 350528363 725442808 31967807 785823074 244432692 968602557 268500124 939247433 1054515103 225966007 540676400 62751758 396592911 959366040 614427619 649269669 542558212 671983195 803830166 49888684 270565198 906635794 681104084 27572460 655706327 704975266 364451695 585245700 356283194 946206147 621087142 136029926 795851510 926018916 566931457 842773650 855507438 740320457 279182580 41569898 120505373 535922944 935778725 278877785 688119945 260046556 250462498 955175747 800873776 733735315 351276246 359874290 889814549 614118000 378684720 547464994 512574740 539751501 27811437 898181584 409097781 942961058 854986824 1034769964 752267968 259599813 585520494 648830193 438814280 887426347 825149589 789337098 801147414 445779852 196668562 529811136 751565459 488871695 682569792 267817936 186413334 376056367 699650532 823472655 227418332 707382713 622571748 766992348 414030636 762153894 155678027 564935412 487967577 748484608 395570689 506505625 881190310 992827591 132586852 850552997 564100558 1058289373 281587045 352220646 377056161 27369903 966424663 224789257 308434798 562215169 504769882 565597263 429876632 661510565 754679490 182041958 732976563 588245611 315283083 839832981 390324617 28720225 671720695 248666681 13157205 158864020 166725974 319197905 574302113 16372723 75659628 723758686 520788375 413744250 405979059 661621802 368077632 345245261 201286235 352854141 784567458 542022758 501788732 29347002 712395424 699550112 801082352 588611001 186491832 873996570 226228453 578587591 599823708 95249607 386851785 909767555 807093646 995224404 822756409 678690454 125314114 274155312 723250850 695982261 1067661890 36235702 762728383 983830873 49162002 341575247 21610888 30194643 311073934 481654719 667524362 665816661 311310992 47172840 1039748725 456804605 292460126 106154772 429905916 220817380 960617932 690196098 522443500 104881019 333831505 377165478 583494687 438404652 387633874 848746246 288990140 145050828 254027271 871103878 864583754 717896756 312211820 926537073 602264230 882435937 674844893 606154037 918816814 841958876 754373417 848573325 331105352 380769657 974614473 227920826 249538976 744739570 180100966 16726527 448702076 494733784 1068267288 756071927 816719817 738575353 883631645 49198427 336886199 288943199 680214432 543374165 1020665811 1069609483 548327729 447372443 4329851 598383857 888450316 1025888742 315418995 1025828311 1009418512 1051902610 13461707 503055135 930420010 411386286 963297067 135560759 924643037 127655990 868715660 617413235 319695108 980581305 1041033306 1051818355 340988151 937639456 40207469 112283737 777847536 660072409 589999470 1008541354 464654236 985545370 914785827 860798957 1021065220 581374544 1028178669 34249543 810713009 909598045 520510696 99072221 215132787 579340745 204607170 160438258 604820855 900657741 678356513 185255396 84166544 1013873019 786804744 421375326 1006684818 657588339 612339487 791918891 456423107 166086678 858046404 7964352 590825656 69208591 299959245 10430072 421656862 122946207 393331702 33568761 517230699 1042835555 397707534 914673174 189823465 247351822 663735614 910169931 1032425083 192895514 618211991 35915436 813292428 266531528 890824595 202518323 657264378 113262060 324079930 5996322 966389783 229133266 797880960 546932872 73643964 624217240 1066985257 339225243 190003225 909921080 617211447 142609369 431616139 280773476 248860495 193252363 905367317 28476800 124443156 551720259 527144831 1029133466 649945521 652837005 1026362901 1040388346 519629647 59076940 1015785206 161359382 594265078 652575146 87006441 899842966 358698617 853382476 570607949 913154057 366581852 82241353 292526876 1039517176 230522894 660299368 103219332 1020306637 408054175 170417702 399218668 288644664 109955151 616566833 707233395 1003864689 802563191 932825286 94139947 868273794 714858181 948043272 603164860 28903260 408890223 859704471 897547361 344688954 735385893 323527125 859890015 138072143 206542818 395368722 877476108 731673617 539604811 329070022 872826916 915259113 212471137 149055191 871433509 363261207 759960531 996917025 819614405 331196059 252608111 1051447964 827276388 427718666 533511597 288345531 967723443 226402943 159298583 524234987 1019800010 28004083 834450464 91400674 461876153 676215073 601690152 125815755 432715081 145704398 440023051 52551122 276545313 279165809 581037338 71240243 379700299 137364997 310677929 883512112 27639179 737591367 129382694 440097138 614121914 965637159 45634188 5541160 157353456 9441496 954526174 259123663 575794345 806099486 395065436 276784133 235539666 288057657 525946187 436834903 734736725 470158884 240831734 791284257 726146965 195923311 592997571 47608433 982773205 663915757 1067971025 683746581 81157762 986115261 565312233 480439430 122506559 396480697 469306250 739591931 629565998 569755841 519425521 723308247 111107898 36649439 629381680 246463265 298414990 749671635 811141086 1034217624 329398770 281143116 476481903 292674180 25662309 270144304 1016663423 861407475 100873255 434886403 955187617 294762520 843561305 606740278 616235836 351153278 229985069 765037379 882259381 667184916 572050227 884427884 607120138 56110959 763166688 71246280 636404543 599660509 932304138 750588256 772029611 1057800989 951867830 961658883 400626166 2971455 857346526 698144723 1049620151 554241494 436204893 688068594 963451907 414914665 930517264 1004766692 86677004 177822794 555485736 947227451 476626349 461324449 1033219507 906984812 1040165427 601431610 113673548 723388392 354094707 349091677 352973316 169337137 866080907 245610838 167238399 853894010 4372259 485120414 167893036 334677603 464973338 55176654 791816152 164334647 735337075 515102887 948294509 858240524 335317371 260309549 680060904 206717612 73572098 985470019 942312776 37370234 650134714 1050868100 451524367 1028033020 572397080 477788997 534546116 651941706 571578536 695726111 971940653 543952501 713564432 429723546 860989865 956798724 319621779 115900893 270472864 23218119 536503980 449578418 934316088 200260091 359443637 941716637 46812425 364629163 114225292 678143000 147606390 742016226 337913362 667443747 393442404 778510183 957609645 730157899 1031308380 112020955 926592166 852554778 139973801 995758808 5709527 882112002 533924201 716032505 743026744 488074586 846871917 815233280 499629815 638975818 286060842 159914333 39398237 953660823 927505679 558388636 799150250 425977717 620803865 540774502 1064872437 545527336 892679093 788082893 133289656 407129200 960690266 97979672 246499134 33537551 120958016 500616841 973344453 2741653 852734213 842611298 735511793 873524451 494884790 162329045 231324196 543572851 567452017 694230328 1032360469 834364378 259096471 845552462 22141542 124831757 407087064 51268628 758814868 596612850 72426497 95996915 744471729 986220212 1068807827 21748638 60427255 849635487 464819993 622390659 726295492 238208243 804410260 854374512 495699782 1051437805 477032948 279844177 436371920 294303440 375681894 597169904 674738584 770052396 947025267 783597181 1071834912 144679747 937623377 44408667 291682785 712460847 766253388 610921189 713894059 861872363 182627554 944461213 937205255 1001820207 1044687018 564340514 919042090 367554593 645216181 465584552 570774351 440113276 1058540140 738592915 859664118 1039026867 26366142 845610059 839080342 293537132 1011814863 388615639 500102469 68735659 68189742 767202848 884333890 240597231 782748894 563327067 546026354 327592272 671038478 310131075 687181787 351901793 509670112 677690006 16714713 340917032 515575357 94291757 144998196 560891673 912469078 375912242 593979015 209173843 354448924 845437681 979351645 1037181282 544971848 670522376 151001812 397043931 534695253 739393260 193403971 747625320 121607516 505715016 44448907 171587287 1008317391 791738860 870088605 350331368 1021504318 374350741 345223885 1019529837 343209854 757749579 338256043 1004909042 130396384 89248754 963677690 176420640 1010112196 566406715 1025836466 577739473 510069029 460609333 361608466 242008138 438569534 1057651501 948636357 174062789 419604374 959440348 303480492 7001969 1069982811 299042827 459370708 634414755 878256388 123805843 10369799 522697047 1049338957 105353384 47347547 850089330 631538400 484527404 146140539 855177964 264628049 214609245 1059694760 199949831 295671659 1038082870 673677655 976346991 622108742 265133055 942798132 940240113 398979330 160681046 359034127 395107757 459500468 464712220 326638455 72032123 110220029 838541511 154667148 643139538 320557576 809295318 691259666 243832798 639076385 566910825 624080572 972597346 61565397 722146531 1050085445 401674639 710068478 546784526 953922217 419127294 567132480 1035422497 789704921 322137006 588186974 937056855 250598121 111293887 1014572503 257474238 435900621 96423332 600738318 1003087868 1004085707 425757 155176047 988685559 765995887 794979258 398149380 272671892 284613390 915126449 40019036 624852456 979407725 422080678 243907228 398833929 544083583 1018984100 867020644 858508366 653663630 1072979620 20046620 987201018 890672303 779638177 769406809 859387399 339843783 961656144 948800445 728493329 891521008 121960140 643606253 586473449 348965487 226661725 103921266 517056516 24572277 134870261 3792295 620740853 244118910 395121031 856783925 1029056679 135733454 53230121 770070301 543490962 90180743 146601770 415565873 107344972 499619038 563780781 176624716 928023358 387113866 3850653 581948110 236637470 226019015 368906462 837801821 66380977 518239531 370086115 681471795 774266022 189421399 228086974 11090978 329140713 488271174 286779387 633529035 593126194 698833366 212219895 499565547 487174219 250883429 109153710 1006581541 387112510 947507435 561989162 905825255 130548125 736680930 1021005834 615982476 254782485 879651810 676216449 152961490 945198599 145785147 504545526 56762093 67768815 169599515 517150204 216605560 245475683 291657006 482713588 613320235 884582948 153223345 470461904 813554246 61992413 1048621749 332040303 670447901 918086858 417962673 3651985 364475613 754343356 515580965 924457385 375388108 890777887 938913355 669596140 989319767 264880581 367928185 961170350 916296074 197622456 36219970 321748255 414870984 606672036 473072087 26133701 933952648 1010499399 535905606 794598347 326757313 653105629 105816901 29043495 396095332 110687331 1021214696 583053069 709928233 137722016 1048720224 91518876 168958451 923747506 816812820 216756118 275283425 768473463 875407671 781798677 951389002 829914341 1044705396 774684140 726979960 4734043 74880869 799114711 463548247 1044941712 552460585 49706012 690415604 543590636 638855050 231597971 801364872 71807629 371115625 34785236 602003653 860151760 664725831 210306320 690903721 411782600 902699716 160310700 532167721 937185508 898085487 13953957 826860727 53647901 296431147 155457645 184306191 540813491 69911902 180273761 498115053 869334196 848148279 202532815 701887726 258654271 527305499 411506616 90812576 561021565 559167973 83486216 351622600 3740700 283456411 262496548 175898943 206097947 362482960 142633514 134216429 69313873 590092751 885413501 111452783 1047037797 900892506 350118691 826163317 166410191 917313312 528464790 325656291 166610325 681969033 728363894 402049772 503557066 337590238 512393964 454264302 367322581 360605818 352071307 982120947 1009281707 520494108 339903758 85504733 271808225 408267361 617207140 844492524 153832640 956945809 430989675 217455994 872268499 155262916 62931033 746129323 432511918 282033897 1060323273 892794604 257458510 897728446 185496206 480330528 876337743 256525240 726585940 709457554 972548572 815094305 939322251 976466375 65225156 172730911 587254858 978668492 143094900 383578155 473916515 765079257 274330971 305525768 212323617 86288626 718669198 80467557 1046677535 940453350 785313536 1016850403 692137835 555756279 280626357 1035553442 66686259 218287787 849906508 575287424 828452538 486167335 360511382 613242250 408601194 28893062 689137153 1941718 466723977 206491874 493426559 513427164 531042235 590587624 201178593 433012629 396205016 222031368 950551826 105143260 519050608 172517905 14278399 523732422 704080276 766100724 796999181 115720064 114492258 686738865 421535625 221529534 222141717 799340293 800168512 1055410935 1018731862 995512131 596586221 699319277 514321397 944563488 832105824 804437472 118192921 670006278 299468159 870459412 699374879 743876879 369460663 11998838 296919202 608944979 775033010 865468164 985532679 718737964 704540295 51594627 317802674 319326514 899081480 84861744 345288355 617912291 19104287 888009527 160972098 860306411 496618846 654184097 274876905 643059423 158488175 310852836 994798011 159030555 26407772 877287848 675645412 133544464 542190536 216381658 279900281 124932432 260592254 490997628 238240151 430947486 1061582313 916706170 672746563 735282832 1010048383 246981630 878899187 377713578 491643095 871520169 941081487 399399101 773205698 905774471 256063416 441843309 307924287 587675243 63336373 835663026 399913197 64674051 182445738 7601953 927852574 836788105 49523686 595925412 901179076 418698824 698291981 1066337357 566558126 646872450 893623781 947587865 109225588 184346039 785601848 493083184 648554384 1010906770 902453399 27852896 343026694 256586910 704137486 326675286 373182529 204363062 569358543 441541926 1015816153 545665296 28326669 114390544 116657037 311245747 175859813 613214027 1048814876 763383639 931864935 1012386391 635638332 91630747 105318028 525008256 400899246 453551143 958843309 87416252 789794417 659439899 522932223 589923375 1006160976 516939998 119413642 919587708 331410230 227595422 823394907 748629085 277341792 263640118 988402232 759420549 994404856 357789915 811324617 637217710 873778018 18731281 400332940 143164634 878222957 1042266830 811516493 798393626 72305187 1060920689 296238823 31004992 128346524 386437442 521330558 965564662 89398836 574587314 773627541 291524540 441231188 231060755 413227858 589200966 266734678 167716404 757573871 1040749757 528684070 590381752 290466299 664339135 11631870 787204725 137736105 20854684 96804210 227562449 925795893 512398395 862829463 668101774 160322368 710809680 301597165 21944433 154304705 758345968 113444356 464284896 446091571 406018205 834478294 663819777 872783323 336101698 552953638 223845708 886695673 906463748 957437316 296867524 442485062 962501680 567058250 513804973 367589344 182525588 638577514 51327861 313145537 248297618 339390194 745754180 952649228 668416046 889530649 558662754 1018560929 132193283 321648468 1053378982 1033763125 51284157 183069921 287614406 856229474 531289224 149893865 974857222 104389242 735647156 555355521 1025435444 554037951 995038719 568602340 689961981 1034287812 906743456 129538572 652548178 974073437 618899006 936035160 833216552 1071625911 743504870 183708455 261192780 1042390995 649907336 867098887 861477097 256296910 285204368 604594785 382598290 490282383 340727124 606079875 909357062 430856320 293790138 574119391 1036639724 927068441 684682619 702882801 217385818 963166408 541437450 260615747 349833969 28909785 435090005 821986223 231446612 138722576 363808379 1012857324 941191684 280677380 94398621 676247470 1010852588 816810730 52629633 671455435 225885410 317646548 337612942 656830746 648941619 795825810 483501449 948468800 695076361 518983923 737959252 957395564 843515435 477287350 418235431 167273525 214346405 186660233 880343849 337480120 1044964923 187151971 677051946 259495521 565473498 364151251 625091837 368875747 374459251 164633380 241848331 146508581 595513086 10841537 997845479 105842209 438925454 614819243 298040064 1049506821 681386355 176891152 645322440 608032280 1015171394 542191436 852474369 201878409 163441786 677926537 118984437 39634218 447571540 227067562 1061956401 456839049 455049645 495893204 815358980 789181962 339819498 636239363 419437 375683337 279178824 986623025 946663433 665870170 257176974 947563449 371203108 245886552 1030511825 831501530 619330932 414376013 361367633 905376157 341800685 905720117 94863995 457458851 640821164 770980575 628043912 827178420 801577959 309138521 919022616 1068865242 990407074 189224600 2537715 664629124 366065394 165827705 146234950 1020888316 616820557 689658508 517252771 224884136 772630974 203314731 752319309 1014472185 431816361 405266424 136676275 141286220 479643337 947971654 759970812 318621497 635320591 433598640 361806676 858593796 107062770 485369381 57017714 1006680356 812745832 1045741528 851251235 832823863 16000509 646857925 297298340 181899657 997522279 557459090 198366666 646841824 355710119 642911728 502107464 46929848 438051681 569169043 540617951 251376752 647065173 942538419 192919617 168915973 200371557 291053484 948938755 713779792 878767610 646125352 921552854 993095379 631151673 859480209 529203505 26293074 38554702 530035064 391609589 866956603 725781699 454463087 689955495 1015471917 208102677 950916716 138620524 407287325 862541231 1063755738 26080644 430430278 474800953 23148377 275724545 324537175 1016395294 887928069 235917973 223704083 436961 602057194 707146231 915482732 419049691 925173067 405278788 478957828 862748935 538423714 456284036 198712598 561129167 1036721489 160377676 602680115 938510903 294366480 968041996 729999202 521480687 896257077 389901938 482075046 485689936 775396049 266402671 1022701037 676585115 818612855 1000891785 480429719 866357335 371940999 189003417 860854972 618519844 613233204 82791781 1015817642 253230029 285088593 662597848 229159115 840804106 1030225898 903397022 928982681 703005132 1065642379 190919225 255690378 497941227 725537795 144617218 879704159 591209379 118014018 1032904103 886314279 262752500 42165711 585354522 949233233 838408613 514811336 525324669 831049222 245567387 362503852 349679035 664560776 631264152 497726096 835354212 264834309 338774661 964950596 325403698 371237331 193345267 577133727 177960268 908508988 968135237 777238470 980109677 196729861 22430842 1004847111 382533709 955652210 744472650 273570580 1032666820 561354176 152894325 680173924 1037925742 29167965 76415759 707731699 237923057 951928176 822263733 972780592 989176947 963468434 230578254 72020859 1060676669 897685262 458425892 256825772 835266953 102963362 618728379 589223765 955731336 136676351 410571871 1060684066 1007984302 148167343 301818010 1022819502 896878400 1041288759 198141327 665664268 107096633 654872727 395629921 759048611 1023215822 489228501 609260763 846636347 605455951 553669139 443943996 169235621 1016078497 370504668 890856248 109194258 863393858 710064144 763774586 886105581 369003479 548292884 873901383 587245590 648328130 874783051 438933882 430716802 305163474 980292748 466749563 834540112 406496500 541158472 779657231 110636429 563429253 199865840 19897466 269491769 820883985 98203230 401762252 858272027 926173746 244896053 734935124 700339237 464808270 14768428 958687489 639826518 384262202 444952448 1017923832 143922900 264822248 913836527 556005950 310809170 593161725 697275934 14409824 439113848 50459513 418068716 659568818 586644724 886699782 7902554 1037766709 638288202 948850519 585852439 807459582 830915643 169536801 349811216 724436433 655418540 658191671 661040944 214592964 711048376 965921582 755125515 359963626 1014829775 43741211 634706973 135274937 572062020 266947655 909848857 111351856 1035283395 810825950 313559756 83421930 910622455 1019657836 1045547748 673853223 902339646 1004611735 734285022 414806387 361191663 782514223 177090006 193563132 833730978 25450507 128320551 1073658896 51324981 624316775 30669754 696649627 499283409 507067500 579416103 621706000 277109052 752359780 277813004 66815923 662073606 527194155 271616229 863826158 879453018 367049047 666904434 399431476 680217007 1018849625 1025119863 421539215 656275698 862304488 333242400 394454923 762154743 857750414 430532511 501382711 136387103 433496084 1051576860 417412647 813194454 383208860 1050812745 670556461 820863829 772079058 459016961 629467288 115525839 689606925 480122804 573515209 91234921 162475440 724051655 263862923 857875602 50568354 189843499 346186760 676058731 289725584 787822829 148924948 65337104 309346296 5460540 295924428 348652612 494603792 830001638 446610262 198769490 541365013 506873312 437912815 822951082 77837046 309349662 1013956013 100458738 723045068 911255370 274205993 480787414 131125044 834419880 300555521 527240123 780507649 377932938 307610383 225015883 477379893 523598221 737261068 584069636 620302678 944583725 463524429 270541764 125700956 150891444 86506373 87039067 36872821 360544380 453687779 95053039 214039853 100307531 192597165 939601753 521008632 637405954 606322227 708011759 727082205 808014216 589103391 254480576 807121598 251000544 523997668 485045452 933136857 473314899 181325983 372233508 11276150 558121920 150886738 503807268 297870527 300554830 955944890 329540740 25669964 1020961703 166407909 311580397 358886547 1000371195 351694663 357254485 60782767 905839974 220216363 193287910 29696205 505428202 981008244 886709521 852935090 547605162 603587284 847467659 819969967 1833741 55568319 922253189 255741713 703533871 553373424 882091992 982552477 404206216 364996125 559164532 1042234246 446601271 705877312 392892213 824573197 35296829 648746179 359562061 743652205 596851780 850737624 559406045 637263089 179164146 580086381 2567354 747814425 558591510 454315461 598863977 19003701 947123570 247372730 724413983 268098285 736008453 766575304 92937301 118864924 555597013 741479227 185360134 643897542 2679627 304247153 80378691 1035282113 452513359 703440874 52190547 176149214 641857965 118321497 1026240764 947118089 622359022 257889 892276894 413728232 607359594 298377571 309662806 809660184 733284526 341286213 733956210 1007194186 832188316 468644587 1063689426 620618027 1057577397 7644734 172098744 265379070 700043034 700151606 69471481 37850740 728680050 500223642 622795711 1009778367 394708228 69030711 757198729 1058047617 946578770 1058466530 178549166 119686499 75468912 900308539 22838381 761241536 173419283 83348955 655551600 843910829 57385954 899113997 809646635 270524494 1041703838 126690204 505662681 862326847 545114905 990776578 727945148 325595528 536404168 91173375 713269828 223111659 890050815 209228875 395697255 669418072 954593748 174577883 389782222 372599259 266579357 563622125 596222283 368098146 469178292 316194284 1064764856 612809642 386087710 86045575 705133448 441399290 732308622 342484764 397998325 284593760 650680349 106252868 661664289 488955742 347767899 302716413 304737322 561256861 350826397 538136833 387186273 793794689 934182658 504061533 243297029 203641612 1008013410 999065824 564740802 492856102 759631086 1046781541 136280202 536303341 170157891 901854358 241475239 911401623 686237966 230429472 794677443 361357061 520063406 434412288 838091275 226109468 33603702 520911220 660340370 254782537 276970690 209232737 568145012 609205963 217699213 712009169 235157446 706531687 49117423 710476369 130619704 193179318 964425781 691551436 1029982291 917750669 230914465 332389635 339694923 660168428 811279957 206739677 34302367 889215932 779945282 49337318 1072583334 640601660 812049906 544466710 487894913 1016976464 93164275 569195871 617424826 189017759 644237055 515833976 763278190 1055853083 259210665 1054426302 222813887 568663322 850278035 792328750 206516788 387806776 1027923837 298518346 823799245 933295855 553557823 756730219 252424271 36121540 828554268 778792650 854200862 1024845635 57390073 482160651 121273530 615770454 366145658 593544457 651053892 677793789 663986439 1018104605 675748823 91105288 422066422 1047823422 821143954 703679415 207305851 9855764 426530626 119281564 13878074 587399565 881747231 658785559 139656612 1011446752 132368882 421191206 319097424 682235524 1054353518 469573243 226476926 163392585 787617618 531671437 796304846 324491333 210226322 1058703643 322146226 1050628337 556704285 563318167 394444862 668731559 753078811 284071495 590756193 1045924685 244056316 19859288 119299070 724989877 818826284 640858819 829704501 888418201 454253259 453244878 853488242 107412659 719955861 700566377 898995062 795988077 198878679 571232272 372279382 883892360 7762512 59179075 190366963 316532043 358409407 1008172074 345690863 67146964 963744596 176680722 878178045 792116036 808314864 857824405 484228229 771876104 666489919 499592132 970202853 970189610 52208329 237198503 646891068 90597756 349739129 566664544 1014730887 181324010 188550738 1073178222 955943625 76267341 228454423 783600634 405809177 602023196 866482335 315384897 628999533 200024178 697042043 864390685 366603265 698147837 1067880741 617873814 430169664 556499017 1069619121 670139135 307764876 266916418 402055441 696723517 731393504 694067470 687167202 947720126 354053816 561062248 142557781 526230434 464095770 888000423 695459576 863453621 675800647 1030271412 396415432 662076693 178718894 734144721 651661260 982527226 516405495 1030458781 978169248 926789244 847507894 404037853 45832798 352963711 891862724 496020854 759607623 293430158 186931916 725982061 724162912 339139415 470960718 822870610 209789601 939825695 718462391 71495145 200647356 731039462 119251810 722428120 138062249 48788275 1060239832 47079055 905188106 1062596303 464002676 502534604 682725830 433451589 104937089 633843247 687455511 97396784 165116166 334069688 464820543 411741493 796485196 313008026 330097812 1070966505 670257947 928005149 666956569 293640669 892384639 680849873 497067146 355046125 31146523 1015172659 845752968 924307317 643245454 195766088 858102933 637002803 393165149 213629653 1059497949 807330079 12325125 526243427 382957989 389142074 282023661 678989169 405030939 506627481 627727067 315562745 1045252463 642879048 450373977 59498385 699932943 643323408 827739316 448723632 543215223 291857106 712628098 956284408 138299914 262769513 278979943 76577036 380062865 833908774 582521803 632370077 826016542 528295078 228217391 424114264 29029904 834490416 996428517 273417913 221992097 754338071 978763476 222135293 308036255 438688353 837699298 748023067 13068100 796536437 389200239 509989436 725297103 639172670 154698161 579471367 429691820 1032173165 831175500 423525868 379247214 913036223 1002187027 492491484 1044840968 18516145 340264811 536334440 328709897 554895131 1012648702 537217555 574396579 1038612510 975510701 695800703 496487019 784021731 889571149 863567941 564115614 235097077 389147663 835994557 747057511 464972747 633480811 496696763 72664325 322555375 931807066 464506949 11351547 358023983 961859546 800107858 358514579 55976274 435421289 385673002 1059694839 578293629 514372591 410431630 721022699 172804516 154828703 789652848 678311762 597354585 493792550 257292944 494011513 823034341 926149783 339967033 897277102 628624990 117449915 553076212 885869128 733818697 582373371 1061877060 806706313 526301773 953705108 776258405 290475159 218053638 410909304 789087773 649442314 142641579 477173187 486808757 189321405 533313558 613126591 38920355 556099338 838586789 57914577 486280581 794767338 709850519 180475234 450809773 823498325 473363621 839285421 33638912 233842832 1018627073 388470602 380578543 101610414 218795758 907571656 583045864 268795979 20903253 561597800 983058166 792707696 681610733 912962805 590278154 624169665 187573622 1064772330 906713553 724316918 115645243 410387061 459330397 828315152 721625954 313755544 551196347 423715280 134330743 471235688 74057321 366418727 898865610 188771179 317918286 958818560 371295219 994544681 734570142 389948073 278033288 988798960 127732875 454775617 502369921 388316401 861508756 973459294 32461082 126886468 119985739 829230210 303364818 174450065 49339115 969443255 856782472 216416864 997802654 727717849 117862283 466926714 948055842 672006699 118495035 28758160 124730355 730355588 766960172 531083491 331003720 943215376 966357196 162727386 785468473 697226545 94512694 830140954 1059214641 183421438 230362387 841268494 104685802 928986198 39059254 262615257 739453942 656890753 420851271 652432801 305769498 818522798 93927420 171208179 255635926 349785624 365570004 888807013 665080580 817289980 740176654 245823764 455364765 769034964 357740307 816913365 16076846 300140433 445716601 143309498 264304671 962056045 995304541 990504178 163931555 375078373 932273460 367622843 56637738 341759936 931076314 1023952872 711243953 713656157 749039607 742747529 210507738 896867238 217440353 651939971 1064678614 183350590 603370522 182378614 589033262 180001461 66431695 263239150 673062445 732361420 758829251 444946759 898436173 431447915 985413719 213051977 178911584 917512900 513722231 167729635 958764837 661869766 226243662 1037214200 819086857 459441225 477438093 169817468 640746263 775845095 937109834 739343667 180030512 938414291 653797116 664075718 276445388 771562965 635933925 308001464 105102004 563750985 191096824 987622095 22753035 540845774 811473875 195543625 840055527 899554877 930464209 348096791 558741086 799231951 556040945 237008654 890026667 850316174 983846507 198977705 214026024 340080194 1011689728 177908449 339538015 741037647 224342378 796851760 95864321 621155912 620532926 213662182 53780063 801344599 378183838 457740937 217642490 48395987 510214445 152975842 412858190 738232973 442714626 686984232 528597270 428539129 649667033 771094831 1006869007 247419142 60256052 421703060 568025512 209536201 163128428 970963802 771905922 935220538 828684383 1053665296 640366293 532394633 760205223 577964358 292412677 837026086 214300852 168041594 757256879 490536712 870777502 986894289 369827467 574813676 953372029 1022737310 314513459 321777894 922444496 708455925 321894779 661296267 866796638 649868644 980384653 311292162 680147053 689417118 299393300 498495184 973436619 163188798 948680627 525103029 282589050 63479318 189192620 960121376 740404016 776045047 591250603 110020791 616652084 837348603 1030482480 965846448 532179112 169663919 352097896 356506423 273448158 429919225 101497672 356627741 480886203 308944849 83887910 461562328 852557091 529017735 691570602 111046504 676630490 569517143 44583067 428763202 596103616 188814094 991393858 113514071 147019561 677082928 1049093546 821446840 1064925495 601509527 789777472 522706826 373204958 423839275 438231545 276870235 687198817 336201036 53528745 850603625 954505206 389267576 524370971 570702078 913691011 519817474 950873472 64521404 247864195 982614147 875120699 938320025 929649400 913542473 69233359 537469476 197610024 854504310 1029200681 6120461 898691386 66430168 932120655 75588674 688948144 566591701 488172010 786782533 799124960 436060091 242377683 317603798 65162250 144858559 255613975 375191772 9843520 673999760 620366386 612440534 139645581 309724394 353732252 427901470 1011806953 614340602 233900941 977967579 652307952 148761757 918726620 616500105 103172372 816174643 328608189 334663992 810201582 69762399 923989754 805928353 702628514 95543555 918916331 642106883 198957621 707384121 163375496 842605856 612061476 519474890 224686156 352982060 522179359 360017723 291855910 495999518 933768097 932880904 230553271 125968616 1070682865 484803848 989217970 787559338 57300403 803143864 435011062 320705836 992839896 174182794 813694942 556412045 676560295 234767740 57834899 544791562 775704732 805203262 2496311 36821668 952715566 168692053 3756168 810626664 978819687 316655613 171151209 421102646 75539052 898897767 478187641 658766432 1040344363 156113662 642574293 210086123 407769376 308784929 983850955 685526911 547305709 1057787105 671557899 802704406 65612884 145519904 164684075 825597337 348823209 985644561 735282068 811337311 362932495 684057207 75078853 859631955 879346708 1025515518 807210660 956937162 539475923 807741182 1029665761 957429089 346459127 38617158 348121643 172450078 766758378 56014513 718876159 238280796 140222802 600271911 486058824 610284269 398478980 877201718 152830994 864952166 842916041 799549085 989608183 341914756 242885543 214590225 747978648 605253509 251291330 409424034 495670909 882845388 121542381 347049413 314692737 943424628 386366107 838279905 439365520 929354882 281628880 960891203 144140733 418433807 776697809 599106735 326009253 607640773 902930600 292953884 466957442 1280438 328936569 622183865 808597924 74180076 961210411 504574201 133973987 975175190 697839709 746844907 399112357 1060098705 314229750 307632740 189772290 21320620 441941158 301649593 751563043 813467296 29339102 629939913 274578806 155627432 885510078 267360712 299244698 544165395 767136841 972241642 442302824 624919036 47839276 1069881327 691377916 804565185 179881768 229082194 894119416 413503697 434985907 983832701 331807717 171775669 254222687 596768785 519548620 652661866 336485419 497105859 708096977 540404740 885577953 524668603 560340969 618913899 344553458 222638032 74565692 1021763454 618658523 255763467 695580989 923236424 86331053 1070861777 686661132 483925629 714525384 638892373 591807548 581829873 996992286 924341882 711056012 120362673 936485726 225476161 54988085 438466770 693915751 503123544 567484322 590018417 386358720 871345038 769960617 409149016 521003912 380413179 873391318 739381878 696527909 651435622 180427234 279199268 818721395 1061020429 734689047 279930744 589866805 630235802 694635526 606527886 522461160 203623986 257110662 1017376066 1073156706 678312697 607001945 309601360 1053429866 515628838 171550048 213034445 60195781 707546678 473419085 1031135888 12178196 342715818 496942059 961084668 969044697 797326714 700020852 180687602 312324129 463196345 279404283 753831094 510740452 446042768 134446628 1015778639 538502822 700215627 1025018907 938995852 950897131 958992265 176440931 113270597 468258684 790150692 994908936 569549728 138307599 129726417 661239430 848427944 820574462 240183986 627127281 35812838 776811124 246759539 209148460 360493647 585688349 726416797 386278298 54566601 691481395 744513961 1033449056 93734729 325740650 320199703 197662638 938273491 22111758 863481966 361630537 674894017 810763654 259363496 364758284 369142323 1026521216 716771292 997175221 902227719 679472590 372505126 207436858 852726453 902262604 28324318 210094957 817837734 968497450 1070070424 322918138 55067064 324349985 557307863 487907945 422926773 161052637 532234856 982539057 626831418 532855079 812156031 1061582916 403534094 127390950 128011957 514676276 106306558 294450450 739912014 71919425 460323119 809976959 440851251 823538852 90702904 350352598 285500742 569042438 538770933 799848324 102012229 828872213 958951921 571752483 1042027990 224909972 163598449 997154326 773473619 346469617 222758906 444343411 482006063 651314529 778267055 376055319 101051772 615712764 497542838 692952108 295559603 825463873 268719041 203142572 426958553 762946810 895459025 161039188 71898 960006214 643876219 1072172479 343966072 340186483 241208108 582565186 59505574 5227465 888293760 147828710 470091119 730610854 210600195 210189553 174333891 986278610 663043231 692762410 109975197 815563026 1034210079 39698197 629886259 958293738 110079667 400425902 514912039 971117324 572502937 588216389 91462894 1039041643 874253387 137775605 459409460 971242737 461123259 1055911391 485644362 469860806 131673261 749171685 184067943 256184746 832688531 182886148 680860645 194264909 63020603 170131673 972430071 256522353 990246602 410844937 829783315 88865897 412024110 153191594 703047277 579020918 517203311 899653201 714331514 773593190 708936728 195425333 980615918 156752173 655762652 1039482685 199605672 647784786 19460762 145330844 684339734 215701644 351261761 279274522 449069894 21066844 763856948 1006826812 116212564 722017508 266080046 680836665 430440629 550445738 777769877 235905517 1019902159 27824918 106223751 709950680 666809262 935875537 112899319 311223045 341133964 246429340 94497693 516941886 855764100 637200253 279562964 251623673 263062515 888682005 539410958 160580047 888755339 668275470 74557334 513589011 557773574 835786083 764689910 79641200 348440345 532469645 196134601 369300437 802302976 475342968 516891858 998034633 932870355 675527467 264104964 952872189 914664354 923458424 712946008 43124714 1000486260 572642939 391217003 789744849 1010873085 598030313 468908040 1061655947 108434388 539059270 76450595 609378930 615669847 303031280 735213309 806430545 883912696 440683781 994156014 104310216 1060359914 284617849 995247557 1015443268 823871848 101314578 953253287 482311244 564854643 317892677 614697482 929041361 807886046 327154132 127971444 741203870 439879437 981557013 345015169 601662228 520393316 807204200 214409825 112040822 941621800 844772564 1025391483 434579786 161281327 612218371 926151828 748212847 144016062 294305877 646486847 252330874 966384148 329981339 653522716 699077305 26057568 143636142 1032704563 137031898 788205588 424355338 1043537616 688379250 823796205 615083381 1033045693 152930624 32712593 1054985669 427092922 1013464704 152631135 506937711 996599222 13212258 482244123 897216970 15158552 603566193 354126567 861793816 880487963 40501265 869235567 76022640 850652570 968793746 1018971921 718617431 208298609 647041955 16898206 775606472 218661410 1032888138 526597773 37831119 168616025 425415181 458155579 256502315 476672441 285166766 169295620 227453418 1064243358 774633517 821523954 268360718 142718140 619735374 911534629 84778734 68472329 16634129 340065465 242571077 514101501 741317601 162894456 744384034 287127419 592335064 591195344 32065481 563995994 537120685 36786856 780625369 292290141 135742653 973505647 314490446 486306635 479398054 965523284 896007350 348597247 82218344 248879429 943517706 998187440 74974197 985492518 774546863 229487229 780851189 850508198 248550583 479881989 212440018 967184089 945566216 976995049 147171549 855249413 1065228914 974209523 1073644637 1029736794 253641431 785256034 429182868 683346489 395706725 249618454 780756072 32986531 996743851 165895943 153527685 1067873296 675842647 238202229 368381673 161180126 900794795 776278368 935251819 176562822 206276322 691283038 475613309 187443786 306498431 1057322822 111835507 668368161 202411033 131706617 142296337 475029326 441059574 432063916 1047687652 522578600 497028605 783525652 835578735 1012294056 381534601 985000037 221803780 541770811 891729336 662102622 724544990 425575608 337542085 1040265014 992804440 659131095 67734572 865473036 174745569 787962970 123349426 404954790 914413944 643558592 921214116 67638607 192350770 619676231 212502881 135613678 25992460 522947043 620020306 212123438 44209917 839486842 129733063 907135902 185588276 142851135 892847452 541718570 750962502 480110456 677536171 506047265 619048533 180315843 525911867 73996342 678692466 459750227 510987107 866586704 863402545 900474178 481330306 216411943 371741732 1005476261 966945666 1017042289 609787886 745934375 939720190 213624786 172024184 813463368 284787362 405080677 671943646 55334838 348625203 887382924 1000173557 667334933 461801190 401948045 666643534 967229380 388911261 144740694 451736462 540782467 864373269 43703230 277309831 96849734 928411756 762633429 874528192 649869349 596958648 964445928 349116216 758458034 852426190 897628309 291593941 414862104 58410638 10357483 556316939 255774025 65272730 647118662 484319631 397251701 922380384 980542294 1016794171 220689988 635603776 1026251659 246200772 805826042 758490756 367622631 72333973 967738915 261095048 541045357 266232515 201783757 141192833 1051650261 664792891 901816532 716489571 264736954 81654508 825854517 5367308 58539411 552531829 484125826 773136835 330808074 41875965 601707455 872754634 453682991 1001775388 654275961 261257916 307905604 409672134 327815389 832509971 582853799 707329937 484908844 542676668 352203449 491262789 868017000 488249388 795127920 310018983 925147614 666687211 1053910813 839731008 925730387 626854103 650397005 861729434 201371823 657407347 414941277 595448783 416509663 55013380 254519187 295193388 1024159300 691516419 508339045 954202572 584171096 237588485 528359975 59605374 148931547 316584022 859648003 925200065 256786794 1021744299 486325372 627816855 485336819 138355988 824315768 1060467247 153761493 439510110 774248094 472929960 513373990 364905803 993027594 565149353 842633541 504606091 899997362 84998341 166366088 1064056431 436432125 494292930 782841355 378712110 504637819 99530595 1038351955 123890726 51159760 975898523 588916319 747023182 715968152 466242161 377093372 740453042 366681294 646164839 209819805 763258880 909536715 757795898 160612308 881864546 1073122602 713125242 903753598 894049349 140846903 543367895 209095493 155037517 375696025 868026966 1028156883 823144586 641449343 899864971 269729371 472219005 530291067 396718876 777135064 97909467 378608590 1017443734 780768437 692772642 749705987 439494583 48668128 1065467672 276152123 1005759246 6083322 152098892 729622798 576668802 804876385 1036108303 102675157 1016576984 663492970 33435085 789526041 988624539 246558027 286505671 412803956 326577103 84904683 701913182 278866830 361100600 153999143 965580796 33226089 645448845 1056790035 519378600 500872350 1023827575 627867590 1059121790 678335847 807661199 196803471 518052840 456161753 1265014 585739144 931932742 509974545 531804069 93576737 262321687 984572806 686440200 509434171 934941945 154970267 387950944 495926913 551651480 974867246 46271984 210344051 304444652 521761583 260967922 495262628 241651896 949792704 276449525 186106028 867939369 320943703 905774976 622728548 778881418 638053060 735917487 797550589 913212372 159395158 463931271 176262856 99744131 209477720 554597691 259303702 907405089 326881066 773174411 255071945 256362906 1025634207 51750597 174360539 288135460 231723950 261717159 37402005 163227748 55017265 508874058 226643040 660684557 501123582 963873791 925465482 1016321840 145018190 85510834 1008996002 224247679 849345774 283519226 516514621 385792136 340203742 700845184 189626808 145889986 824949706 729431964 256356827 908068337 282770234 108134485 468012781 672637016 254673592 463430688 359071042 662812309 296387810 957268952 432353967 11944094 284593674 374632207 1044071469 483315410 1064230197 685227926 879106822 607968845 673173456 163935810 477179076 695861058 192355533 962280950 6193026 900434903 56606179 761222831 210575549 730399816 907926080 366477919 108392858 281964847 864777859 856701319 893449549 1071737948 1044400168 413319667 554748418 523274335 577758718 1048663171 1031513047 31156046 1011538012 348095819 1027204519 77430505 1037948906 398982684 724301984 195486048 758797932 585493398 404689002 492968305 434441772 1042439984 365225283 14510166 616286470 592777325 19267749 885306280 382374019 193496524 956060344 992561714 978399222 1055243845 861706259 862346480 851738688 337944317 685383902 315308858 1011525448 778634233 186502411 349504992 251403430 175188759 321204777 620685465 817219998 385649607 467185605 558452494 900443464 1061910965 203594250 618159963 961473604 223267443 230204211 353231010 120082803 1026871608 191880415 745510771 619129743 959419533 919846048 826186669 818923632 762602627 679230699 454874941 503939465 168135897 1064095230 659754491 780254740 950192211 573376232 549688529 986601921 1065998069 941551030 599287425 665411826 677374984 438799184 269548276 564179053 1035502438 329419142 531200129 441534858 114417702 779940443 70647011 337436426 1045266530 690775757 380621990 305849497 432638848 230418233 852673352 713075504 937803824 979556453 898276650 658419904 1020080935 862549137 238162519 52117687 47319393 347656871 338346935 260965986 1034794608 1009495477 610667249 293632444 737425845 779973323 1055960722 153489916 68150422 820786496 774547929 816175229 353198526 662625350 681986082 423287202 494205003 93574682 34114499 1046663315 523947661 973740269 125315978 1012798723 204960069 30868250 390918333 757067914 380669999 407152651 316774122 172844451 337704587 114796593 344295986 704682985 961647926 806790494 854314116 699766534 497397724 401740658 13020861 1031820047 678542191 625865254 99074506 336822701 801271967 769096758 160431649 87310607 405781370 573112676 191915633 300742423 31273413 471944210 298323692 234750569 355718204 563505946 968485454 177943011 1037866912 70715521 24366002 872495240 445155172 837803793 786490796 432859128 608496900 810184839 1044176309 811263606 474568299 822890433 387351852 643280418 833953769 592300174 708995330 681180441 952334222 505827418 434711146 76275951 353809850 76079928 268690633 473821888 571200372 587732685 615811899 668570451 945858731 646743830 912131330 192365023 155849707 356211175 1066159439 814860902 197592902 735201037 440360104 106212697 519472387 643524384 511652386 577064556 1016079065 842255536 502182776 1057257143 45348539 1035663107 1035554919 824536232 179509363 484363838 860042828 947348362 751120311 61906035 803327669 300852029 109378289 51361426 707132624 615000761 631588388 1070293832 1015896846 227570506 60773503 844466458 402710997 880662342 1013068312 36511854 218044211 991500124 28917644 470259151 352229569 14568774 76505654 746318129 975331065 304861573 788187343 57009875 1014308888 313902802 1009069152 361782766 500148900 414801912 764849638 1007584862 356360757 170538294 132436377 157963604 542480248 1041538101 778915074 559796765 944867346 863366466 301610942 447915166 97437769 669983998 1072654806 297016913 923869251 1006267236 721039039 1054217971 594208746 338741281 248706412 629219969 1064744419 951079683 1890493 298668760 340837408 1016079249 646181136 145426932 435610660 977371297 158711049 70308387 850679901 987183409 7107731 456570554 964868958 715418956 407722330 1019444842 881251168 78784364 1070282096 879594929 767665734 864174538 182517243 373275230 468732883 974235395 687896125 806756088 320754559 183430208 546137381 690122431 963562396 321721579 450281974 485082532 655622052 846254390 165831201 402441234 565474871 781982567 960113931 511736144 249506907 194644687 81234019 664650220 663159169 662000109 318498063 262442151 745124727 171200402 460613376 229173452 613530873 441366366 508755954 651283778 821094460 242551908 182798858 564557271 1027946640 99825817 281331198 1007811672 331975113 973695467 773435765 729508039 433909296 272422794 530063166 582908404 911289046 547188829 457136167 328321279 146363069 343264930 65410639 548981389 373687374 365708712 489463604 485476290 6737338 124204974 364367463 414660461 269518770 526675416 788209067 1038638575 832289753 269683140 511890607 187719139 416159749 289652726 923504891 160554957 533756035 77154578 658732849 779092224 132740941 522750176 729503113 976122118 935421919 937784574 276430875 106257905 189711711 64171738 967434873 776050215 170251263 416670952 899367750 950539479 439248282 946353126 49405976 406257707 192667138 874591268 316754031 1019670630 369298190 914130673 109748497 717115377 985979956 201826797 1042680092 1019122450 401531243 1261759 87733671 142499151 187246654 317210983 153000924 911074646 590265202 48412221 339097413 677626076 454189751 1019235128 781054261 226746275 907978594 979220471 1069163369 662174989 403294804 887724583 534847841 160245802 440984668 862723281 185545599 383762275 1024188792 708591006 121297426 757482909 406324111 750764951 4112065 333839405 391033107 791730183 690460730 581503617 282347563 898997483 275672915 582935452 281574040 844580185 451788288 673735363 816845543 52882963 923279350 882267595 518722939 877205064 559843663 505008249 343713315 345184542 883893389 354387437 765166668 907137936 269905353 54554448 335569782 117417197 955185175 47040366 454043409 432056963 827514821 282332495 631075284 455969540 896662490 963065854 136611719 46797449 793890224 174223642 1042822774 41973519 941627021 227687497 375983786 61442687 179957558 27756 381420008 366086410 802591044 149191703 981867019 154087096 252183785 584974874 264317397 712856219 322319295 3916114 76802921 481821888 457733178 676588288 775452039 894998966 387721870 822690289 874709582 649107759 885696062 648310465 771848341 346568250 187712227 800397903 474124717 219866321 278773410 434626534 424716423 789627183 120816087 400369539 1038519749 180954346 664978528 791307851 1000915885 580383960 1045949426 183289698 388455984 941655535 89561675 1052551393 869692673 499432564 473355275 617329457 751497094 626259432 1019618232 778091679 45740839 495198952 722320952 483684942 909476383 71695087 761467719 322697933 602784617 1060020695 1049806277 426995910 788672080 399424555 644519213 243867259 723660551 664864976 485323144 605609784 443568190 536548520 674833800 992039726 638384319 961599750 210406800 154943038 943249095 225368533 1036192133 899679611 11167427 38958595 629983264 345766011 252785509 66155320 616286127 206928996 1018564376 498208081 235830152 804045928 785257227 643412537 449135983 443400824 878601106 234338825 526537986 69291913 454645894 913603750 152958113 39353259 192244876 68847455 459229685 877026177 624678122 163587828 545059515 927503786 324703224 775780131 646364524 489747291 587455062 285881372 162233930 344378377 309100442 735023717 155874465 1025319313 1055371353 86933325 1002195169 417246561 961609571 311504479 261585475 1020253981 550856173 845077005 160108979 92984304 852559952 151256955 246342704 358093935 871945335 677412728 633624773 427443051 927443168 477735419 186840787 581794223 632028937 362383662 331318071 443530288 338322944 224821694 1030189088 390976264 106548854 703628989 956820452 699893525 759401432 224096577 762973536 769005553 269648722 308973115 655647165 866145088 654195284 242098334 984654946 183621173 852443344 446393429 1042907467 584085163 992930145 694528346 786781203 27478055 207016084 123126056 592904738 1055518101 1016118740 550256015 938513247 741085041 173339674 261402985 590702114 567464387 222306588 64736706 157992062 919157432 512302354 221614830 630074819 897431390 574386416 1029986156 775136108 607246154 861190338 94322795 645171093 707591966 994844320 900191041 729767361 711841810 1052998043 916844423 513128805 1025218982 975708650 735239101 890155352 416907899 889812052 242372459 819208412 375817686 464452092 722596412 561063598 147946792 434069995 756977028 607982977 545526999 823530831 160312618 580328974 569807195 785749 757970184 894842339 910024383 598730031 265300993 498286814 905652000 820791933 641773416 783518893 112949522 315022103 636369174 140095788 763223226 540335410 282005713 380170497 985070380 190916923 492880650 359829010 932199091 544620992 140179274 1059079655 583456973 684581970 525480043 814884285 460879954 1047100248 472769383 935342523 1003092009 959441589 674027630 961801696 269413790 743323665 843100297 118604753 278541933 677195844 255090047 1016855550 533945966 897581274 989512672 428445637 30046852 533259007 1058333609 680448941 276306072 1012006732 970463902 305354920 183099488 781203795 287545376 375831627 859220677 39410087 5354575 625692095 308981776 553230310 553765082 150848773 165064962 763167698 307465289 1048518140 899295142 436707724 370013513 328769923 8285646 131274379 1025626126 152313440 475525265 290240805 319760668 367476199 979358164 52334178 541768560 875542960 1048742366 389982541 535392424 379335573 367821388 405949952 132323300 645540859 1039499553 457840922 423748212 623816051 896932677 746588211 372196293 802205076 85295660 113948246 687016678 1038682487 173078719 944685600 998125702 500387991 427233853 655180170 690489264 511014876 1058831707 973039645 761586142 633880560 824910911 1001107948 1039440334 445483460 491003763 23539882 356348554 10720086 621964940 132500262 441721731 395417080 282772394 316965084 12749917 814287434 691938207 515553051 333240671 240495789 1044933218 174215371 820026925 983143917 65333332 1037179648 591557226 554427407 192221869 749068102 802157989 519568548 848506046 469010212 337697432 976619168 1050539862 740937615 3895270 666379646 493557430 596412578 331219640 470561491 504190809 125051390 114838381 9336651 798428143 938349793 121393579 483061397 756427008 443133621 876873662 609955360 622154246 166126730 534455256 607341298 956702606 167856052 405894121 734548871 528976691 1019610885 711411829 135233270 183161832 305810667 290885941 738364252 10046869 1040186725 646685555 569749215 687239948 844591781 525799729 369626012 579006925 645431919 204657234 209348877 489312470 190371897 989276919 774737375 954142001 20978955 817807599 961628822 143048326 112803012 532932551 234099407 983569563 313464574 31779004 764452252 1017562674 829787030 981137163 877662125 921301836 793832136 658967555 198277529 635633797 613483646 801884699 77433432 531622720 433400770 385574066 152514999 881849380 495874389 903928263 703487278 354740703 740418202 54573585 221441973 365638174 977097741 539221235 882235029 842611210 758732675 88851377 543587569 630321292 39871327 645970539 917638156 1053691210 708107830 1000884330 505739430 439968069 720427096 367766940 226450896 949802451 776560334 366774345 153503467 423705834 1031108545 357488299 611287037 83364894 509330182 420902576 218659735 587603090 686851252 392090160 62045841 464914336 376191638 663110124 1045441971 681731503 981850303 84118506 938694600 176434648 844519123 980830788 11596364 390686514 49722761 739430051 918087353 808152665 936056637 43607171 893363871 58275016 679467761 781591513 948559346 957243516 13559431 799520157 898899129 197702125 517615287 404317060 447114236 638938455 327762151 752803104 768787776 65808390 153725680 234147713 604621101 1040838748 795020026 223014224 687369512 41068630 148676852 82070810 525182940 780983533 57112578 839579668 351811518 52428564 253607147 287938666 903778648 973217718 323212276 77517534 1022831658 887624803 534518160 659409516 559856422 815840452 45574679 698132774 446227622 556601226 130678123 1007398803 277438098 986934558 694989607 497378337 1052988646 710111379 99080996 768358087 801975216 713786268 407167673 637372438 153684827 457832352 772860979 836030831 250861469 1030969057 1049792580 972362 846870741 1028255740 304182792 1050207861 83244139 1002340851 601363197 770865517 341872917 147486412 1018499732 102579517 758855097 761172896 695549381 780424666 1026694236 550327126 83596718 410554522 586832028 842322378 242214482 989413712 579594753 372900391 889609524 199477387 571638613 182640205 693802337 792705740 651678215 79586274 273574868 811708038 266552538 615526995 84001696 1048041653 4945320 460013010 84758163 382722272 526753835 93159141 316657131 87021350 829327366 13073621 354824971 585721015 899697084 404661391 375162785 421847284 101576127 135201754 737684222 277953075 1042533095 464054145 714900267 547291774 927373128 514349336 88887822 617905114 1019507125 412659703 530104973 132536393 617033327 639896852 640658338 32202955 129372282 51264493 778204289 971275225 1039917285 425046378 855578054 948200335 751779919 454265170 393529087 116801947 917611391 510336025 156006474 920296764 28066887 1051487691 687332843 860384102 950124034 518733368 456627438 692961706 549890551 662248998 293793719 712987176 449341165 172119089 246489770 641811335 464433248 781491776 488273207 413158839 570005717 311366234 165793607 410807857 508730001 62959996 916835681 847934860 620721555 93212303 243556543 22824437 350918894 553105446 991991044 453212416 421215261 119037007 509507661 982108247 819757954 155157621 126623599 1024939521 425919838 210536124 221839378 682390857 150383921 1048514872 345754753 641459817 686634759 282266572 32483791 1006086437 37652246 868426390 915705229 217098452 1025453032 226836378 9352164 199457152 603631184 722448775 354997846 340203502 1032313084 97139157 722430083 1029223940 977033159 460351786 59112784 228003788 207662997 616351656 941833069 974229104 7998749 291083210 941014706 253672101 617745626 108669813 740463992 854868375 643561962 934634667 59675698 473719143 891651953 984186194 421949108 5778822 367922887 389956374 905414796 509035277 519117999 457147657 859381067 1000636599 810209918 266391767 185541104 599378428 704556734 103863089 1043953289 549555735 169793983 153515238 488197229 257969688 637369152 949046114 280369846 151407447 494050681 950581032 1027778252 52489435 1028982026 1025769976 870655526 46150087 945995968 435862944 119293099 397934626 56002334 528618551 546986298 646738600 559632122 569636172 843175831 607050098 899081805 861950522 765853441 683487092 883660753 175657118 795202879 467846692 699116083 864096150 177746590 51276742 147866138 774936969 415277090 914166968 991259507 583354003 579158078 1014234308 615095881 522760317 452719365 797026296 767874443 664457600 309950689 453846003 479407061 339177851 974251900 580447595 562230527 222501133 566081636 981156641 118098042 519767519 221146451 886866208 608745599 835732468 171684221 435252342 185270536 290840581 978697783 149363825 701295103 351677770 718474543 61972629 338746506 669987286 209620314 565819883 213331114 136518197 746658069 483148962 268015113 109962965 651350066 694259872 952170590 1050752876 140369754 800762131 829642200 695245203 191230492 622098197 919653515 464691177 649302298 841565187 695086939 976280542 877281786 78905339 643979018 50340634 575091112 424499590 486783460 213375386 100300729 933768299 610461587 665709673 932639055 441511903 341787799 146306457 519382529 809346587 994603922 42420955 1000218819 676932923 980934556 242247985 651002379 885137620 662593177 836699462 2460199 962069200 316919422 464611520 155209159 205126720 833146463 43651642 107641994 529775370 383195767 37751608 121522733 527315809 696792949 527716840 938653513 100923611 43627401 191447696 1045801567 269237922 179518419 560122335 920084735 987002418 226301168 449580777 274754487 1050034425 220028652 808773291 590633753 261336489 447100281 717354423 755162835 799305697 1043148268 855817603 834809976 112685981 584357258 705397594 815032550 81960426 984656964 828492806 346882032 148884670 58248643 57767814 312400161 60159331 358986021 109573131 228947672 879313712 41810238 156311595 353618863 461680292 605616064 693829348 336780893 982986919 379341843 14646713 755279283 432912729 975846038 99301001 151043214 769025623 577772992 835876041 682036368 628362281 381615387 698886792 11122623 970279312 702546827 321643136 632403456 132978518 193064175 1068189436 529926368 151171114 536783011 727654795 506009786 600761636 410004276 31527355 255438268 909507354 1063295191 92267404 296253226 521243529 321503553 551756212 128171851 794078182 860165563 1064589839 691745313 131686701 379728876 455309452 94117577 163908997 986042306 182370851 712377897 761217488 154491779 700477264 365649182 654590353 83862076 535975451 23438896 456579877 310359262 228107383 496209809 688500450 1054592409 214722417 692536406 785738677 531778118 1008253105 633920653 318088711 818946157 587349953 348282913 838273178 554724445 347564075 604903359 652330413 535784344 1065789477 347052973 937307375 425578466 121986578 892745965 605421090 151623222 422886381 167786349 664065315 470615540 40256480 1064386502 188668490 124823932 148224402 111825585 61746021 333380369 603476175 102734938 498602352 729546966 966995438 782303361 948003697 665538626 99317597 896498109 677202359 120790137 718493773 427749683 545473236 200275664 958620816 950952751 496447034 15780650 538327824 595800645 459814484 671365829 937346356 319078418 886946052 90128070 83734589 484103579 382202098 503065758 274387331 267341595 656900659 991225027 560696640 1005726997 797745413 437646658 858926513 1072691371 713512129 342265282 582132273 888726117 752481852 616305889 147991965 826298392 664796221 974503040 1007607645 411606647 67975838 840830391 563946093 870540943 756531851 318398132 144862020 857822055 367209908 703060537 113598729 751661121 647325943 275084890 625210593 705317213 721641163 62306418 30095315 896901860 146166047 170023272 636265633 972785742 387502795 221877711 14615609 711392792 908407169 255643619 7271073 921029298 609045111 759060985 1060258658 904696282 484911640 810790388 1033802396 965139630 757150938 476077773 875142615 234491420 107152039 277511142 1028749554 33118682 569812473 869139498 264525132 50431960 451909968 1059909976 304051066 1014801920 958267120 995125349 933717700 348024182 644095893 484905261 53696511 966717721 220809180 583326121 649595767 162824881 1018885747 283389957 685499240 1067502754 403392240 274639284 698718565 812703241 7372331 546231209 1052159151 473916946 562851317 631044202 370751525 647773171 856413287 878897003 1063524552 1047559358 490944434 150742513 730609031 273798786 644511293 1020690507 288849089 792144246 947636363 617201736 573703277 142848392 197985354 287253033 254159273 34693877 231942294 6359069 85701788 241051955 752647175 627840516 842615219 620403035 566297684 79887264 16991836 717709934 661719282 592881141 738971783 312653666 865190395 975758800 193336901 469494640 363728896 954616284 402910456 83552096 188490448 826212049 572630365 737722483 82180680 217623703 612516930 366310495 653772589 318560433 1063541418 703766100 25818385 565040169 143842117 244554750 734467877 156182941 552058868 96980275 358196915 215952634 1050603674 997463705 132944851 147987747 175280676 325098231 313594237 626392998 178932193 182864740 995933668 795793400 1019662079 556601939 195476671 802444640 1050515206 990394204 22925208 319791382 987642237 811159523 85103317 966346213 910589188 508298832 507023282 711883809 1072342332 670587832 880979480 244831014 919571217 852455604 840934468 149557591 203639515 1061196471 43799076 192085593 83773327 1057882444 606177619 523873549 982737038 129036858 806469226 12160448 414235595 783742830 683228428 290107647 609602870 135483638 1056764152 101410646 395175056 543840289 800553029 545823956 566560528 484304957 38374299 984079493 890875938 968780457 736910135 63282979 104174375 513352818 465647163 58616772 320095057 125280824 870816322 319648988 344044613 1014532440 361771712 714440486 208940672 397671796 393300720 1037942808 425095002 857012563 1050579254 215887713 135565582 787099257 888183786 493633007 718432017 261391929 779637823 725577119 606422522 267973064 874257915 841647756 418112292 488191953 33627359 170069736 89167407 24866152 822118821 1043419287 18611101 244016539 509649208 375002765 935185591 79576533 143698388 122212197 620965500 664781124 866141171 1058574926 1041209414 978533195 731051565 756860754 136614560 731216808 721981049 887883559 867837274 176664355 862215527 400704607 309467870 313047510 261463048 1028936661 1052597824 260895099 569282506 491944350 367206650 954711418 577960418 305394925 148134776 881052177 677366159 356689469 553919247 501904919 863089250 58509201 213624680 119670929 238116458 370820989 272666227 233138047 280616500 283554264 961733401 1068241597 469586807 415776306 9596235 922071025 306196655 696803071 624792102 834839515 498959406 479267483 875115404 1032757788 583404531 934979092 852404389 697292846 184606915 889615711 578156697 1044394159 922617686 743248619 665085715 745966132 243078918 330439507 236035688 200358365 689040129 418665339 316652569 842262004 114120293 1059429655 807139937 638367650 600934013 605503397 53967617 77170143 668460497 1021259393 288466504 145699534 122329525 548615712 468756898 955098646 647543674 984363977 706268762 897235074 671511517 744110464 549270789 181361896 951778707 376101161 928164279 1309652 770716210 163331673 1054542578 804225589 609056965 706840362 721537128 971641770 619724921 945206918 151025260 132037060 444182554 107300209 695126673 908815662 277311698 513751266 1006668518 654567356 575505860 310421276 67415709 350263825 1053035156 537277583 691076903 14849131 756156166 241679316 691094936 80971355 400290429 1057123426 503071456 382744425 252674648 720699187 350634902 223646627 913767539 719178896 972348345 250563957 341335834 1008445404 1059152943 901765819 167948964 420882216 973588672 441803243 381728483 113467542 81833004 414824797 1032326698 284283442 956783974 324384382 690779464 1010178621 630593782 373781119 497085188 583938305 59325443 438321383 650473100 785859442 945982392 523332360 704080146 887205916 615300524 349466519 398896526 238440020 815467742 20493265 907301956 298083803 963056302 197278693 628182163 3155990 202700919 631936529 623939537 666707599 577226762 434609578 888000302 75110670 227908970 200641322 398399137 117777617 168931683 284036655 540373619 479202414 174115259 504550571 159489528 76781316 829918388 68550562 737970823 58157733 100956717 367260223 942210298 828546742 474337516 582751067 265605627 963210889 749007153 891381165 885916426 847697009 934296501 715941403 288654705 48975870 983336243 492058869 699317227 718291574 279456149 96790014 870931201 245579928 992261242 665338893 176103679 414831607 968258662 742688675 628959887 749042932 628918882 127951329 252365249 397102386 66078119 1027565424 1018710168 638033710 722112407 869269347 762725555 1008183482 785354440 827377214 756723994 573359719 546740326 1045790771 948858559 5068051 999359633 580741805 501456492 292255676 648358224 801436790 839877053 341425065 262068067 52752357 521023234 704196260 597436210 270391662 584392201 1018562107 539550470 293922045 184090846 17641126 117752188 47064369 451781007 117332489 852851212 284591333 858240072 125332890 827595585 644924789 210746766 496928264 1068815153 368740238 1051636782 948448150 425557649 981914968 603627558 304355199 963838699 703110009 614240611 18024955 128527984 742407062 70000229 905391383 918825104 721726172 99780373 258836473 925078087 998214334 510122576 117302507 934997024 837643968 459587663 363070546 639409303 343171321 712536263 67532275 86027772 732797284 739439282 736548165 972278928 984622215 1050774347 128318126 870330350 747867666 587359634 883805083 161489057 445741650 87316360 846046013 534658044 885230934 386019186 622371910 548788821 188246852 562319069 635886026 621907751 970545645 892780601 562370413 71761177 876543674 196995301 206607876 809177748 920747349 414474477 402459502 418649433 1023074174 540893586 926151115 745904150 123803731 452842407 151094324 180789393 379580930 762571540 723311759 98135240 534438518 814734092 259869865 636070214 462301588 602932428 937908112 62756457 321076530 802327763 174096778 723367500 269463008 1023136510 420674088 428228346 787018799 264814216 116957809 674279312 210425762 133698185 44023780 134531863 514931505 872735241 814177464 684970056 1072189266 733546828 914448854 80368688 310908186 18705287 714249671 226578473 595774777 701506644 896689285 720470026 547826175 293291442 273215183 52085867 587983113 781127357 626359525 53645260 730943617 318620252 737344429 186754230 1001091997 988275206 562238178 946986895 438087412 108438635 1021925730 322276098 538322303 98615929 549931303 25080795 280921052 119860898 314725887 157513159 527442785 238662610 653673715 794413436 1061169091 223881483 570727850 560908925 315410611 304565226 869862002 642536315 629521664 136548232 640425355 1058636393 502272621 295081898 239380894 659531812 752135767 237119273 724589785 520983836 383430097 774513351 88778461 225074628 326461217 33792965 918438838 694051549 553708113 957914905 898375176 1050351641 531961724 371678329 129238844 1013882421 928683602 657609380 54287215 557790588 291830511 895598637 5016013 584985225 394474013 548042895 743841596 833561041 725294138 706984672 64410855 200612816 329306569 1043239573 386363320 680869660 550231450 670644065 1016749876 194995756 130164842 585298998 115786643 27241225 247907342 764707824 720827041 978546738 369001095 1064596689 919823346 247190664 225539124 289538039 726097864 392164237 828557079 750106234 627117236 306279050 500819088 360817643 51920224 740482890 414925302 155801246 144860899 202977697 1009541398 407630990 384052563 533313548 363489826 141537547 386153766 134171017 947304699 387704211 663887981 161123382 279606745 1044894589 445933924 960843140 89234926 590714971 689304002 534467698 944855393 594344221 312909774 662352090 316491474 496804715 842894603 93843926 773952588 132536381 602673346 337686479 215313974 510655428 396070858 195394343 124707148 566056578 835552675 547512576 177029410 903798761 403043554 628584839 336244694 89517288 961566336 20774084 490550433 670455112 83795248 1006635062 137106081 1012861629 742953875 745956510 544260042 960913932 624433301 1042041810 169687103 472210359 201306036 964032657 113708005 1066395898 998741712 493669026 581696424 713371317 920571140 983997029 954789066 386583300 727496700 65160286 984985528 753580711 562345748 797090398 29564024 260789685 330554763 807969484 414167022 440852906 444903855 179966897 948517185 19174512 856240818 226697577 670753499 464968810 554290148 411144265 289810492 915995921 115854266 500867618 426275100 404308599 6774149 850279982 15359168 267663875 823792657 529390246 805492497 77810597 331500233 298137376 1015180786 303168450 950996924 860930101 268527598 922684521 297888029 557328341 760720731 278194602 779044697 38069923 544029602 52404605 565291605 865548820 157180290 448617369 348333601 677261984 1019460884 26426373 451974021 2603265 500541161 915436599 588700700 39310347 364754563 1045996562 987798421 984150236 110753716 1033319150 675175607 708079123 420764897 148278521 779932207 340060054 190556263 203529450 799834090 254475112 167146060 1057712740 281231800 380979030 588060533 169348660 142636765 328462408 192436733 503492539 753643540 154303553 956719148 123040263 45762355 44423450 520045324 887232495 849256548 475991029 772906626 722313856 891662438 284213108 234874308 735961600 170084705 522600777 347289157 413975881 482467257 849245115 914537055 593219583 938242566 1071910175 43331696 705583961 907718313 512439680 168051180 250134227 243949135 819934676 535011604 925729511 742969881 1042514967 274898886 545735613 673851247 83432378 953293713 418821797 855113223 90829798 361447493 44610998 782753030 511038139 879406684 1035830757 91994348 963117113 540109408 671977044 1002064497 641563963 38743952 328264890 41277965 718064791 512857807 206763231 78852194 103526359 400663 176426361 941348769 935147649 859682200 849112792 840844517 435203650 973952918 592915413 616555570 99325481 628329326 523856172 749782329 621626643 264501381 715495286 392296549 252615731 503170677 849253866 539413496 515661852 211868528 70457700 848959971 582170559 591763017 20949123 53321572 27633917 671918819 994115484 313652184 396305835 903129947 999568289 274311111 905248323 460985076 763644328 615637324 686904653 865981564 856779273 1048685759 933032374 976214585 1055364864 408511954 379377320 83724935 1003713765 692239300 228347047 801865729 170211399 175856035 47209797 258975006 1022417965 213603555 409286234 443843063 13901512 182919331 290535701 561914849 172256717 929791426 428327644 993482103 121133714 742019500 455279232 1049718221 390374654 253599023 400057145 31566077 802520843 497298398 31959258 543016174 421856328 537164711 368303966 112940022 527766689 998438130 751390940 92540340 1063816199 52255478 715276199 900549874 682505001 326742165 313666066 610558164 312454844 539208080 520759212 149352031 12209696 1071852355 332207097 1051935789 711254723 71214145 587439115 429772191 278489215 142687722 823454856 777572695 876484143 951469335 726333228 371757304 274171647 279185846 909387145 378640669 453524956 1043485801 1000620155 614363494 805442884 34833988 984685508 6780388 958059300 20720231 509002551 1016940769 986851529 295837778 129426750 381970080 32310090 609882244 837481952 380180326 208537819 1051419559 323850838 402027371 966549937 652377350 928011759 412355155 446059719 1043535174 656713155 400114456 706341504 286705296 877241266 385874070 771587054 891000820 737902064 1070262423 518272851 742752354 937796454 266569835 8548066 253556432 343144200 628875515 406213784 936566123 746483675 89655258 428537380 261751774 664670556 894182781 75953601 731700179 160713295 244336660 41328574 983858697 586945101 166117794 706841940 83144580 289502692 925078024 768722051 1037303171 286915763 217085490 839617402 839308107 681164217 3223467 1024097463 632068481 606330682 290121206 743123171 236708475 93508780 1060977707 105328362 71914834 402659820 19529863 32767830 817040130 857114031 908908510 174454860 915071412 93347415 963698942 457665298 218287745 605334409 575413188 28283517 380531430 535568495 250616594 98771419 191329034 435078620 335788746 233535923 493320297 189632829 321072592 877041528 71359520 994573132 158068315 732170597 470295045 677672397 822843919 902403577 109298781 827556518 470603459 779307722 470498671 829440806 944818871 102426208 910316328 308786813 653304230 847872067 409195682 768701586 1054146360 636640547 28183174 1041147713 336731552 631097365 532055847 1068028430 621617608 229997779 1013977094 970412837 57925063 7074937 910088392 1009878137 353428752 1026677328 276107442 807077534 441798533 637770956 139001007 177824446 593986360 745035094 57214192 168275005 193815371 769616294 297655753 470316471 1021527383 429359572 1042421577 212353663 653314837 332336908 461223677 699003276 994939569 537292564 1030187092 24851070 303078055 297824063 232878310 612776678 696910189 828056195 135863793 886617837 837105114 646213671 684875137 718478868 547912851 797929382 290445846 990529702 225170087 903002415 99933999 990297961 176390438 255906414 1067940938 115297940 715237473 900533 576252879 632005910 643125348 839779983 986666294 495613369 639149174 154431499 308946612 1055192545 744413386 14708560 170446300 382283048 66562071 508748291 654810994 156839672 1068894567 229946308 365052155 572552985 148639311 319472732 933657039 1022385565 348235929 188158515 431736794 821858598 707497959 33616851 950460380 278244460 768495689 401459956 1015721334 691746978 221508613 254514180 363151346 918342287 522866670 616087138 241042131 743068704 48061426 439772061 101790866 999472197 82301088 22711130 677286688 509992182 12056894 426257982 563945892 730939203 899597456 949154963 663870379 16850779 880429962 149262095 792795378 827971379 749653267 776582022 270709349 978636849 862260820 1017412672 190859350 410554713 1037435509 331030068 504929989 48163044 934100080 234483401 108814711 839304377 506458443 394206414 499758416 934298423 249765936 421486860 193542669 1057146578 528746678 303710559 1041729057 739541210 822158071 996316948 486007335 793570365 216592779 86524232 213982948 447443932 621921498 886714552 506687513 492305611 196700521 1052874696 199502112 603128534 110337460 29295158 883619769 603379949 174558683 647555472 974150484 500619870 290387388 89954859 984493631 225834532 253769905 502136035 89830374 171310939 144318329 660140141 980614551 236925086 987816827 173518046 899168940 287555592 718640077 932103174 818685839 315389256 980161209 990401661 635951136 966650188 1038082471 276001810 57163867 898737220 978784092 173217036 944634868 232162343 974461005 910577681 973806192 662574375 601281877 866864065 146369724 427078582 424503095 556347350 570364517 616543000 754764151 343003514 581305727 212210671 700418892 588233664 695527663 780302147 279944830 973157051 880295633 550454590 1061467214 9448546 839858187 788555783 499839655 281731627 549340376 280354795 493787586 569198418 52603951 423178362 796178385 869777983 880201186 923247364 1047647956 131941582 751049599 698521843 854932560 20821137 1053043443 1031516544 901244803 435136520 499264877 905697691 666258178 20740631 255995726 379161794 581504904 198881389 908036899 983735113 322917453 734412188 536696334 883255448 482658791 1018582634 566808373 816927947 560460451 205880743 70597322 100498752 875637641 265543707 902188646 689128780 461154564 964511475 1020174955 345223331 608818101 483637311 574959521 81444797 821515042 895164777 986016408 728177335 838801940 857562710 610135593 140206739 230208128 62592171 126649885 434719508 751583787 756181499 723701207 924678210 572385789 706896754 262129941 837917069 265801892 588733366 835353880 846492454 821104329 352102732 661284098 297396832 180781320 872119565 383729124 906155380 828263461 238124789 340118131 935986756 721021838 4292121 862771413 1015134086 1037907913 540745007 253800376 694087231 667367674 1045513818 744427273 146594106 375241400 364297427 1070370062 669360127 740661921 691817514 270201135 153824073 163830689 171077467 79834985 142266253 486464437 95809521 739988533 1038184812 21653526 161707223 368560389 448012069 664404668 153625303 820514514 132937033 906246677 200686909 400786090 33412709 529172316 646709807 693081936 884720691 199455333 449281668 316422700 358641667 524932159 533454212 849486332 360802955 336745406 2694341 1048000825 443369736 991352835 1001160117 1018818894 284812517 588985082 691370096 523894717 47082273 258252247 315147131 169309031 1073558002 453876190 103028871 1042350210 183344850 160917631 622100789 672956585 490424367 154787962 941781846 359221219 983093508 939855500 978922378 650479359 126883497 978737862 714833001 9569854 1056060378 115374077 61286462 37945888 895155075 633378153 758619901 131410018 61552421 778180331 450201583 326078102 706053937 783312997 92004825 603210234 407671512 227101927 226318577 338094872 591767045 611573902 624513037 728333091 876483297 1019063272 1046703473 357140078 742245411 83539996 92107277 991039574 709612308 401263901 842170671 888966582 522656782 563696970 348048435 40206879 881593655 587099585 314187278 763054054 673982838 1011368313 1014985248 842528591 371031772 348785495 353874181 715327290 287713264 204390786 258018450 83451621 1049423110 1025863556 860123363 998292759 1071819726 1045485618 36901154 367279259 976247313 925607062 49247897 1013522800 1070794900 900409578 260882138 890064533 185241516 386186199 250660461 725527986 624168661 1009971311 368214785 389671650 627723182 372616976 48342031 674262415 454134555 1013183636 1062144185 829606820 985862707 1016121491 784978514 447009745 950527401 298050542 227477788 92344600 133241555 325600556 45999262 797080482 417893165 728219575 134823115 801484133 652369726 251953327 831628020 1020435986 271036400 870338337 223855476 759741927 181744413 748849964 592281905 510527720 809194033 912721254 138780820 269049778 464304955 203810066 584710692 857799954 1068605026 1035075777 62972086 151240721 451129087 617376393 400966922 980925675 584468441 876618047 293390841 832817171 213182654 626290132 511546008 672308201 661625097 149959085 260339793 116050408 265565065 292529637 778166410 807830005 533816793 939377878 183434080 458982262 1041890737 221092559 878902510 11632067 322789926 271997323 320354829 283836989 375654579 589683783 478098674 979411091 58467936 1031261346 641120823 461909255 705878615 805168950 727119125 684244015 507747910 936396671 593780921 741392912 527072108 259110634 415027870 388467819 613246121 612332020 465883934 342400846 416484969 872139120 419136401 191052620 759042001 985975654 961249882 169922675 1025900204 154432960 19812786 46293440 88466593 570691200 867249306 196565781 12108290 1046903935 858084237 142928691 281784699 796264857 624554241 368538762 94749643 505787590 847170852 318600574 748686376 963601333 363810514 1049083630 809846429 167205863 1042088002 404252600 951709265 868130277 846791637 152547348 708897831 871243580 786950256 764821083 106695077 870833892 869552741 657225654 685885511 135122220 1061811796 1033657435 142131564 666536748 500430319 792633179 805626025 137883967 575502155 637951481 1003065248 385540472 476427171 505733042 539279448 832989385 165518628 85957881 22947326 544180624 770589559 46434509 118618666 181373182 535633666 157121655 477985353 653257719 200274915 788559814 600220587 345970672 1034103298 708365236 53307503 142251688 102705581 373308562 407109569 813226274 781675088 708210568 687913611 169941884 932248269 1003011846 133238016 420793334 336616902 102138645 394191959 781031655 296998718 361344942 305318678 676822260 1072696605 515327826 345687452 911085996 315213602 406650065 482718583 548671693 863204000 35520255 1046146943 132376830 279417356 328070239 33936902 832907169 404863545 534685315 531335285 944923141 1034521657 44028835 394953356 737791566 24203327 744453110 388272560 948244807 987814427 216981100 1066509793 532154547 995217981 908641558 298351679 359834660 71125770 597244238 647568002 676394838 137209102 776117430 823041875 1039893926 748690040 365018505 172297086 74899370 341762231 1054647516 184316233 1030054068 705827110 839616422 456118425 244193949 446920524 136585367 789221001 117952201 33905928 694905593 75425796 311919910 945946156 992164676 320454055 293550128 413304046 418241496 639927039 1036607600 920111121 957804643 1055990599 587743366 211219552 236765628 248371677 129003435 192852999 1042528345 484126537 122604975 867940332 331455642 903087684 713054581 168151930 66153393 1037644801 460879697 658064089 614446681 533171378 231466807 323118 270487699 332721861 909200797 522941577 838612057 7967262 1054569427 423521069 27292181 694534193 546697856 974795102 286495472 568552749 647517252 822173602 57405315 1059604927 462605576 873711368 394306797 934811245 751276203 443351469 266087032 203809105 32994652 1063296495 978591968 1054528293 74359763 847822194 228794259 290777162 311869899 484943970 457055944 767709585 279459970 363834076 404955437 888835580 70692218 800525398 1004511965 990217300 804724513 215775979 161525483 99639051 510139980 779963803 529851651 759499106 354139310 843851160 284777315 655131281 725042454 1060759593 184983133 373876934 975212885 952518145 836498635 692892128 392130073 317977567 952235346 412934092 1036337247 582520982 184567682 204869396 342768066 93826490 270234233 154344331 1011939030 822231722 100687418 767883046 95299837 240106470 617195664 1020468481 732307806 186738163 200944973 386415697 466396212 437949154 40709880 160138448 417610726 169160746 1063386183 839706003 428616897 791397387 168988333 659506431 978722888 115642724 282954441 874225244 575832744 860254245 432930116 163033800 892061127 552873607 103913530 155500450 1000229647 480734986 624829091 832680347 581529577 363216208 136317572 218656836 471764119 80650814 1001432993 131747164 901326899 479001682 166018641 206464557 397616576 293746134 42620576 974335859 858607600 640427154 794344287 216445617 284782619 914435830 561880209 99379169 651721514 24785083 824943527 583278400 751348381 900804331 1072756186 568944049 875562601 275727194 444554386 800432448 339122078 109001590 992866950 550056147 466447783 845521299 361495279 482404808 986348742 397497198 105593836 42756895 391856339 830861439 815188960 541543899 33279168 889148229 1072057106 828695252 985886606 394450640 549336026 266008675 46960908 41463467 337932331 471533092 590133541 688973654 973989560 852984689 353827649 699496267 1033037602 563641667 1035280720 877338162 611694266 1057655821 469168865 485627615 385208337 138670507 523040054 915812014 1006834817 827248156 653651036 866838670 229816684 696730884 568894658 535079650 380406938 329937027 391131168 36497985 489854698 911017432 582552088 83477703 118926288 329734114 299974502 285515739 1012946249 989416508 480187400 1024035609 440597011 1006018226 250296664 757543105 673583064 633435909 618194891 410739343 979649631 654573246 982513284 432540736 148885356 1052645208 584119911 688876749 236074393 21911005 820025634 197118287 45483631 368022654 947841004 345160287 583915722 123042283 233815422 703811072 224917796 875959998 555764186 261647273 106272636 334192331 95926542 63173255 625375657 256159950 274808085 129324916 113558196 444896250 317488071 364685603 424384049 503931796 712244948 715542997 734516471 954253138 211151877 382999591 1027036208 339882329 300863295 643087949 637977964 606162357 695259784 1018020053 175972162 797809258 594137199 524753316 428815499 317902135 355619017 608335170 335349630 238515719 892616037 286492415 792688717 919644281 371727973 621264256 220108578 369162967 184639564 785943966 248646099 159159359 139700560 149986335 143349392 94767014 942830979 629592399 933914449 461996692 336726803 1030138158 199264049 726550392 742983805 759966675 681973028 785366488 114153419 310640561 400088965 82808082 1031848195 763296762 430061236 1047240954 218024381 683875010 279763382 339589880 283952823 868409318 991117512 699206497 626628506 67028755 17162883 808686419 12925786 524185008 76855146 1060924018 317953269 844525409 587273296 635387527 189953304 948534422 71030921 1034028120 665982957 838537646 310892053 1013903144 311576699 978701112 709432816 247432210 277132633 561874350 69060782 337235710 598368181 52549677 265081295 456859925 890810130 104995376 816097905 609038318 179217151 121825376 217756316 749150342 693895596 1062983824 392079428 880915774 1066578422 11948236 774914315 746337245 98401170 938198501 730473747 84558742 961988702 697357741 571605532 1015115254 319239674 943096763 849129642 617491658 166128615 552260004 307838484 556966559 755956444 755892582 781203786 726546296 481248990 648800470 565063104 284667828 648069274 110329667 1034271718 976018006 324493258 816521389 242695999 277400618 267768856 330328913 17147314 429778638 10524764 924533120 161086594 932066807 661787537 202920696 966432969 470017829 942773444 1021340914 175396466 4089799 1034628970 546229900 1026450502 544382267 168567705 381360579 851872798 943824004 587175763 872170353 1001048530 490324965 350637404 222738832 1030735433 25709544 64155443 924682177 242237639 436248223 1010459140 970770715 314103204 869686783 547800095 451984496 196589290 551083488 127344739 937830495 310372659 209902509 1048592164 893770546 710107493 749227941 44316394 171420353 894997688 414368732 111574205 400790267 694617603 548484834 365912275 710488485 759249192 665985805 472731211 924339200 450456815 946242618 533458540 205606773 259909748 517423487 493915041 608068678 124385894 741108225 60061349 443656671 396181256 253255898 422552475 346757485 288325276 495825992 724987544 1002912529 766801700 228160059 150918832 902504540 996089760 407258649 27468332 452550801 937662036 805679164 794317061 25133631 952458948 384272327 874005765 906414952 280234835 560108960 590280665 292930795 349748308 27692516 201628546 415919464 522294978 828975001 992680024 89136190 439442383 430064670 585974772 437307000 330246160 150637586 477027655 329935965 535339423 390988848 237093589 775603165 619596847 90994796 686700386 147748284 153447573 30226547 1042482376 9749284 719480735 982242930 31513308 53611515 699091978 1055987184 721661446 713798737 1031086734 1070759558 955139085 12460469 796787319 355991665 667276495 942592792 284664760 1018927723 376992617 915419591 872922939 734449137 961484631 410804232 1060541686 903277421 169672146 185702353 239435704 557456832 620739885 724286275 1034552062 330638758 756228717 902635378 686602075 601410685 823886303 750869343 205959547 68588333 123011395 665294870 93650469 394356039 768932647 446193373 857858600 296325404 660060133 140252408 548033970 631104735 799796354 415519064 215649589 839455 87486799 332361011 132053245 793675180 821201900 343624713 143717753 185616954 1070444785 596228023 949383458 61370353 287361227 960501031 1012194244 616172776 581284070 63296034 20636605 50457455 450175521 605281716 804500513 350324109 325741642 809212557 360625246 976548206 435860522 722299602 183969818 896901284 487673317 361507367 944769949 38234571 107519486 832894477 176189559 179869000 721470173 307479896 639823559 220975731 997200842 409384409 1055337345 134734174 97424934 900209878 201691609 961073012 1051644863 438028827 139997730 14690937 202090400 747591577 467099929 256313667 52990424 842080503 333330967 639064075 551185847 95802750 249034756 390016252 54665585 798699635 10633614 465757973 254010887 589205635 511363196 786868819 481976488 403373177 90064152 475200823 871957177 466383756 522643953 421455670 548510803 698396250 522521402 179077542 175300269 749929455 372774381 742911926 283913805 175091484 613409252 954369841 889831227 632690358 785673502 770284161 192922534 1043641981 420424107 87137667 324462304 237918739 478023308 1037027873 359870994 77889 872553602 115677130 140734377 1065993275 89602701 676163565 122552280 772398200 843521365 893867624 71361240 832651482 328210889 1043956069 957369189 307177853 873613189 726920454 321558180 555673679 265472034 677627512 448454306 801528930 190565721 804749878 188720018 38993980 22131161 680314285 105079038 483254039 509821656 430569629 323777090 97897996 645263301 181438137 704625339 489113662 720179753 291586343 193842820 733149024 128176091 1028483905 27645070 385438255 54864840 864494457 798649940 748925471 1066439286 960489460 436144640 406649815 874914607 138377476 51147172 696896003 817436926 344586044 931737362 452364585 771225677 579138847 1060398909 915481160 91240370 646228037 845293935 735359487 36194354 161925994 824972567 763175325 920921322 227197498 554314971 420314355 742683803 367521456 663748827 368092390 904175250 1011631843 192408913 944913682 116540112 590004152 417480770 1024225252 148483565 216631071 549578467 228827307 351951618 292159903 509609830 601316169 843426052 1023497386 911585997 202750421 691154430 659051312 251541702 655768101 71571415 204607506 946337145 23437419 903645323 900927644 483344973 681130132 565842231 933362081 198039471 781033345 333310301 66742483 140085468 987891869 842818832 720110140 909977239 869879280 917533120 52835417 416877205 861245068 283811556 647752869 968106662 378493475 626162470 184968820 843754585 657985262 692463293 69156828 457332070 513513387 544678779 653195106 869921893 935113737 341236812 125542052 767709339 64535315 99408702 411529589 503333114 75649449 88039168 164687520 610491073 394593992 358004020 968518251 475491788 417460526 697204707 464735871 466978567 825346852 998167348 772503304 566850715 601906639 843869339 510246510 262541455 148308938 342931561 426974636 112775246 30950488 790228846 323526113 484515559 744241346 871678176 1046175565 848409260 223187819 150104445 511200091 999766425 984597021 553224001 688124694 375772619 118618473 1003701282 1038160683 2978425 947247588 812259775 833375907 419353935 715319403 53795929 268297624 336867712 172541618 1001704488 452880459 370858498 1014346993 210087805 715081305 171544336 554014199 788942097 905252431 791690343 366950971 704581495 933120103 657571190 299709520 323535093 866038743 844886125 762535637 578460329 380512809 755495338 413716446 962470937 110238446 31869930 17155433 304895289 205589166 835737919 918276551 981271249 1051257743 718919614 233709739 630983480 371797331 681833741 606423704 197742190 67155514 839844536 833402062 499088398 409662147 322424189 533524143 472955992 383691673 493899136 352920664 786381899 686029012 396467813 908722433 263488334 631769696 450244152 900613679 64304710 452510564 567232733 305015974 772418077 443673395 922935201 1070208181 563451553 508025419 352530941 470796864 146519330 98164388 819295756 469185122 122724816 216770900 199839689 270595291 642646686 89371364 504616509 734383899 726027029 412889808 959421475 797459234 319523165 686158083 143724439 125608275 894664923 999659828 642561500 322293181 28917791 785640896 392580729 102364235 328643465 379386130 960776293 14926710 571430615 1028620374 902582390 1016059208 814450270 791665212 410209530 417480626 387966918 973396688 436840621 359211181 1027780737 675065497 668984696 371012370 47792758 238772880 608338975 13807489 1010492558 115448039 508125893 51812982 239356969 393768638 606011650 949253423 7413279 974216535 765324419 579989432 203600667 440169079 821050585 390592677 854143424 489945284 471366001 741966392 967747897 679315364 262538956 789217347 441661803 515623674 971211237 676786782 8600276 45986317 1059677006 287499625 805904204 629944443 940186337 571267481 173600265 255767641 845304454 768360861 533226830 1057043490 855213836 8621742 264052495 705587906 602426764 645840565 211912057 28702199 710540980 648850874 1047059244 1065752058 259900519 362862149 496243539 498623290 562563094 845394943 111772990 845244694 303256186 956014891 433408122 645669684 797156436 409392500 800982197 407622588 218619357 252519375 955710298 51200795 342871029 493386436 7242644 686633683 817408636 250734360 846888513 441299113 793974505 833233405 379572268 730610132 1007382518 928284544 1016047722 724416200 32391618 347152951 190823210 345146575 750898384 343168041 217037079 926625789 786121448 135402549 471182579 543213190 421079985 42846677 378612233 1026141753 188925538 645109935 763986842 956264895 747890585 589707529 490449311 54624405 522584316 129687054 905916692 516488164 234896978 838081894 338961981 130867384 385354933 14345698 950805635 1058804094 405278485 791996369 492633945 310210829 1026607485 800681383 477768249 430504762 503914612 830337959 669622304 159790790 898565210 694033066 775310820 211292712 565120395 581571371 832000239 659453736 892911330 655030638 734721637 794060943 377919077 385335279 430003411 595880294 619885218 523816602 840354270 1020114728 969819048 828686938 1065605565 935177726 717470355 326568985 53277559 904052877 635519896 698300730 69344644 982694108 285053031 379843612 1035734302 490706328 438169217 226008254 660811510 195432804 1054722780 923740838 201867762 965358432 34559152 963284608 561569491 128711417 889004302 458364572 719910992 780153627 846677639 1038056459 915206694 759356832 1038385772 258622735 891126085 153301312 50725354 713486201 406118126 1010949098 846733067 475183350 346456532 517508232 640236711 918273640 559076786 575576476 173223063 403842361 592620765 189845616 158971206 563240883 1033667833 855834093 106610771 915101256 274692674 214774160 47304151 954590222 91304940 654998068 1052417161 975866948 128731913 1040056752 467506090 408413107 815070084 21798430 240987329 63835082 556635880 263730763 737917165 148411107 872057885 906129900 642464955 720455108 782981077 946408157 871554801 980652134 862214587 623288750 662251447 553184096 242872168 374942636 66760071 361023572 386861254 636344092 985051539 536047077 329285107 17219491 1000230768 513732422 128346085 841104011 1055789948 57756939 992133084 474698682 157176040 954811051 698276101 102485195 792843835 175037611 542443049 366873451 574654542 129227069 494894763 548172143 674981017 781521511 76804199 725663470 1070819101 222482301 672490560 820335200 79128152 638734154 276268205 5349482 817306014 715715454 474843664 645537589 750822275 479357857 161882733 806540412 539023359 1044236790 1033446059 767477741 108436892 822109949 1060053850 528468213 336155265 1011296849 779498440 586485599 940861067 508658810 871378506 88027722 729111248 715006156 593716676 768643665 166706797 713818639 1009644097 296073743 744739239 537380571 29345671 76410278 794838327 921938552 973101628 549419998 1042421295 456435052 190854707 92165857 450779391 487060076 186424190 874301833 779989206 181763079 862014003 452125201 634550451 923880837 26189517 805998984 131574019 629229778 496013952 1039665977 940563863 1007782562 493483621 337581612 30515097 324510133 150488046 928682185 698013529 499413381 553968965 922292 833231350 488505831 545222589 60838148 278778780 12577136 136359461 957090642 884825628 120689580 209342636 68609543 985869377 1018172019 674343986 683602414 628076844 77674684 543411747 803442776 32127658 771918001 915144209 67722028 85010254 381983941 280559118 937758389 689474865 582714347 480115052 91595659 105743493 204369515 951259732 858618943 340505529 964790770 221610552 269650306 716623331 442952695 814179365 113202512 271823797 604102202 728921051 814910002 1028597771 403337749 377783675 501309166 253174888 324394598 343814373 481802571 667133195 835277327 820082851 1043447760 650234808 985302566 525575172 573905213 279430409 817328340 464140699 657614168 151335665 187358095 593675657 864391899 59546479 21599879 984774855 898649545 2762269 26820522 550166437 435652423 836648377 948243475 337272063 519224643 112959597 326776350 284946904 479852333 20050969 125268447 184555860 739984034 642146513 745682282 281355833 100647437 516988420 948019847 409729621 891498472 428717163 977301707 949393123 663531864 896767601 407085627 280037378 1060436749 663903156 237731734 1051372594 61640420 95562814 903349312 164736542 1065833300 583785390 556394690 65063542 538031729 633022755 497791832 1036228505 835217628 1016781387 253636169 36867579 478013040 782036833 446420200 852916862 486341584 142027948 146104653 598173646 649804455 443651658 291452423 103762826 206092145 968745015 790179848 112033796 336875381 1063590557 722177623 171467010 885673156 797895647 903364720 491553410 271106914 265836750 107285858 135937417 49794937 904296485 241895614 774210215 481641991 919174353 854327382 321478493 295217988 859672480 8474008 694814936 265913889 42605189 223413448 33616068 48980427 743523276 457416683 868605614 981389838 194077034 1007205654 396630720 570470485 205736693 897886455 188723887 614988339 311597733 183766651 477485837 254878375 416320747 906609275 400384743 170257970 929109678 60683824 1006959951 889014973 184748901 531391631 340791903 655629247 1039347330 777007373 931869089 128542605 5453061 967896387 837456670 126875146 121661900 137967824 965271039 135968091 587162916 601075332 374645080 786269149 98137141 836357259 370168212 467613516 270690410 810470508 332982868 855500379 99930525 590058779 701757961 46327049 217775366 989828421 567919314 753037651 351907989 764178408 392377299 793835261 286527984 1062048569 397873535 964935185 160245865 308938232 732410305 482113145 556651128 32967268 318135319 185148485 336903389 1005683605 912918735 550736681 6699557 325530363 392542506 425231590 572592487 75106997 898746687 1019318415 420209195 627982749 332517792 806582237 643117474 276445000 956236626 341418170 304373803 516525725 347174287 349893533 167166863 95620516 750252255 509004422 554191020 812598104 971235155 1011706748 411413600 715360927 1042238075 722972320 1049130922 144930505 363335989 96307559 691687268 705084358 897386083 458186896 165997935 617148958 213077009 339056034 600928230 448886207 954493104 714789091 1037969559 313844886 666817632 261558873 682823943 490524576 346459532 290506635 410587748 115526216 86079690 765211146 913334504 694876295 759878755 1064103556 900168600 171302483 722669509 263433121 615785905 183387380 876681575 1017433187 602467273 322201903 959038765 724555933 765322778 381633528 858617550 2877264 495675364 528514075 774343791 811899232 423002371 219696881 56174246 105049404 232151528 1033764570 415272542 205293595 21761201 984101010 210296404 1022866590 236461883 77404752 871330528 373730092 581894335 945235990 177294304 180723882 394257819 445435361 745086890 575607035 895000477 191641978 950813833 119212571 887012254 202611529 1015708131 260134022 320092107 985231723 223729735 641454608 957974641 551834242 141612451 737221963 826538697 605296988 171370272 593632565 118792102 597338141 691342469 386977301 335514503 1011944527 923007539 1002166469 691693511 247531476 508772220 326011247 985192376 763836012 199220259 755487658 645355839 39910618 725980533 551473711 40345936 412905485 274414010 342408274 547044374 420470563 456137108 979605391 162534289 713302174 79594390 826558623 645824897 713747055 457719958 753398123 62692613 160345199 421825480 62292986 74541721 804327276 202672719 938293518 820912561 272899612 186261714 1055783545 375833290 497947426 1038125142 719372954 255967837 967668986 405589526 269538509 563643656 567305905 1008884662 1062695237 1000801206 951910278 122766597 550525517 449915199 449098196 854104686 475744377 824500888 559197479 505682485 439866759 569022195 977980828 485100661 915557403 353827411 866775679 659387031 235043489 321934020 571026311 269826979 744765992 584983036 642029458 205764774 357533018 587276846 1051766000 770282062 648908340 1002175068 128476909 573511114 364869703 1006548067 383412905 155465023 889418959 357693039 47948045 568208956 960601948 819649994 424378232 42776153 564626620 391334819 836542433 283580148 579981178 633467354 87225938 136644981 892695718 263545498 185833268 711928948 169155507 913362330 587008514 727782632 666312199 1042015466 910039879 504273837 244847041 82077569 1051024492 543931730 426937322 105535161 860693004 757118259 803564318 838323830 667977063 301901293 846106134 287429460 1060108512 675170769 500220455 124684623 860370929 197168531 543112378 251658739 812438871 603825333 88057537 695411083 1001683748 5226144 589974527 40404528 920638927 575085662 112598770 462658986 152600804 153730586 245982765 179174163 799118825 879765839 600817607 367326033 824649988 957022069 857265198 1003293435 347031693 478944336 244186871 510213887 115698334 873109604 899735413 446973982 832027479 242091473 422414165 567132154 764870461 168266632 1017367366 894796554 921879720 708800280 169423123 754542529 937510117 298064466 339740601 896609292 1035353530 118991498 492185864 632018253 621433313 668274847 297256470 483936363 732795613 1020353852 869572459 1035892268 657681920 684878945 949155118 837354935 7225055 708047141 884966149 1005335962 47195256 930300503 362384533 273311200 747414953 940367328 467898834 64547039 658068854 305307846 595174020 417595240 450253711 722102050 417066388 214382299 462442200 905613456 931101936 817840025 87623038 681739843 348061860 664236016 919034245 504044402 698832645 228949099 899243073 939782142 586447259 75422954 1029429982 635374485 496721599 420117344 70274815 48469868 173366864 851348013 485895401 787997395 1038880270 313950440 590651030 656362247 271771132 695282088 276937784 1028151088 755141794 204234257 306082021 179032459 524926131 255462689 295433813 1024410504 107151680 453560649 207819818 369270186 707209043 691716708 625564821 518953089 658606427 471986472 680072924 570655535 68817365 107309263 27341162 774414296 1072311789 538755081 843762731 120514415 420300118 36925877 359195001 606628193 531175758 976731613 1026884941 66160221 947087196 953204469 167625137 943911881 798735694 136395859 187761648 349434397 195644043 843534866 633372686 217432585 94694737 261376961 1009155960 745203603 663805551 485190875 636072608 97079173 1003141049 752118067 240338534 963510425 605261804 756670207 716386934 128393904 976975912 461033445 493669433 98902142 1055548749 366076331 129693013 177647858 555896184 1044606893 614355582 991981171 947437887 362450089 760576233 959909238 460769341 711891011 772105668 278229407 117856165 450319377 574049151 38429664 901946387 882267995 268730430 108947235 814628246 1031810713 1073176529 493457557 804586144 361933468 466666496 508146776 1039406325 519957859 796634777 360355480 602674782 670058712 438657231 1047782244 993615861 1010235361 994582793 913109457 811143128 371621898 550296560 324645088 1009587695 884942578 446393516 995581408 383252539 835581113 115208803 623158375 610826990 587905360 23343746 151433635 947367643 505279207 789194354 215002398 791749226 630540369 839265559 804823421 1008459426 540195 677380074 265160303 710104772 898570941 190680524 1044900982 596736798 498989049 933948865 34873347 1068055529 618575788 212619491 967303846 64594828 548235374 133113710 149752248 756801460 337600539 31037035 946690011 540517896 238503005 403701105 806025678 747755094 478521003 251960099 474339776 516255305 590462057 625635410 144648078 227684937 769548355 128769733 967515981 288443792 892662413 219774958 900273064 765083950 829755408 454034325 792150065 291757919 348761767 640087615 581620604 313653283 17764977 1016032245 715702879 649322135 957610310 761311374 842094204 922490888 1029095752 491749691 970035967 676797520 456443985 605139626 796287517 832534315 77204428 726044525 781557206 186797992 717598492 195449182 329421959 110836542 520710454 361490829 1012981653 77895838 129550329 649415221 400088186 753488740 427568682 664637456 458768503 718367676 369566029 1039007955 40857845 215927859 880580358 414015235 815755822 355849253 1057867575 434239182 928772339 634166238 92611344 456692796 707939546 807462939 393862322 702433467 53060821 284278877 567579500 335184386 341987756 381807997 767338009 92798202 990313293 56755923 825864966 467749561 68771350 468617168 923954348 1070280485 1031170025 335514027 539158568 384884306 759933958 590507514 562152045 1027870052 617818543 753717211 724893031 471887277 92850740 897016951 844630621 31144054 338536467 932723552 378031022 751223311 931290517 291495217 262765157 387101555 603126394 1072757223 528434871 844186581 231653965 545590112 526148689 264994353 519329492 622484007 527876226 713759799 695014072 839184640 627833044 985359250 963988890 103948586 962692786 156982814 1026378003 605082743 124451151 948536329 295544602 722719805 423988137 192622007 179025216 635336214 457561050 650612905 281206805 471550516 146354607 342308002 214961993 586039075 317965740 844161232 644488518 431363529 876844847 325502574 866160478 22714082 682164558 519383497 717485578 2271262 65431116 999910518 541247279 27107052 319620074 595960984 283420731 118415366 60143922 1055237597 581312766 221950484 309984596 747188670 713973920 26936197 120918308 957412007 696175202 62028032 392141842 1027114298 258607096 322531023 973262927 88784412 661286070 96473576 855407332 834173974 355007915 320554611 1036358860 554071787 434955427 662799047 74624643 589271402 10432698 454841888 157715571 345990003 783340675 211107642 190125434 131823823 971120356 128120757 1059399870 328362889 1001172624 7327739 27020325 669592148 535258617 703399604 888395080 888750816 907588077 226495357 162416287 577097960 931929522 931319239 985990283 292781888 489945451 416318631 970921775 981437330 474503533 713078747 821679504 826615654 798107021 112639590 762282576 211916504 298446145 1073412604 104260987 803667264 598159948 634374798 465743312 113653628 957818386 764564641 131253682 607552935 579365330 42703045 951073695 123507890 445351456 43038286 371370451 177518002 917169179 554632512 397128300 61387275 806797511 856358987 614268704 1023246771 313352955 557328495 1052285298 75594804 526588971 668744917 109347991 817962038 49916221 1025518630 341075473 337223015 920573963 184941667 1026231663 16584068 1063502393 915494194 626340738 55263964 217061842 661146514 926958563 43828669 843968630 139767661 533767311 291761530 530290490 120399554 695776317 707048456 978899232 589988714 665494668 1006637987 149001772 308396285 944851139 1043134783 225778867 456401505 136894223 382921441 3103043 304404669 582722953 834514015 806893547 490666968 664508983 474668121 401636491 203090510 904656916 448822002 876495865 448162043 576148453 11894998 198748263 795848984 443411306 818070427 1011160547 906399444 358895267 133259518 129730671 122370262 476130393 470162428 379314693 348549198 183976578 569905223 197908860 694302553 981316157 933009030 38248563 1003893574 608757173 574137174 22195055 788073252 365057256 127238121 805591795 711393077 708185188 634545079 237712755 1026082655 866060125 40368231 688099237 1051432235 192384895 984341783 97010910 824849815 733280233 664890121 242335657 558094044 725177071 524481590 628056649 867948963 435227094 739432617 927520066 1041556544 379718420 828601419 581590608 415474231 287292272 419598605 220356945 541695561 804429895 554504506 98675806 638216826 218468350 457591993 115008148 824205881 806952976 775610655 707527574 191808419 292435889 938934907 752381230 509726458 331995174 853639254 1051277267 622178004 357421625 71217242 795812599 624738922 250321001 575583837 709717962 44696438 869051127 504190967 848576677 208566543 559347943 216271078 425215460 798175091 889243269 677731726 707992239 667766058 91978651 329498954 405539719 442556367 926378338 64291112 540871886 776466213 419469956 1004340532 773075831 844136181 885763670 479885267 142629669 2081569 1061543266 956793706 814519716 136757109 1070271887 863379597 758059165 639948380 363617858 662645578 318209692 72076397 89438481 133060323 586228651 239826825 338569605 401434039 77382499 463397369 34631415 773202731 55151031 697605539 1033674195 988334026 849569326 533393435 1034640452 283603527 516520302 521818581 724148300 726232210 228259835 787073237 421044546 469506394 1062190955 1060508540 51294932 961091969 759912323 603701096 344209477 1042814598 812669425 577192609 881586546 851553894 985062092 1064960849 79418103 72682046 556682597 225596954 736594933 108305466 293565398 169144659 77998071 398743316 910098602 829113150 769177652 701651172 847378480 989883881 1040895953 446475991 285311273 623939808 319175786 1048960997 630567236 982843617 878497832 256696838 235274082 295193931 797881292 286961117 593484277 220286171 482157922 119722545 436324583 303469838 1033005760 54373372 1054696555 520030106 44050262 782040950 797454965 360649303 1044818638 560236538 661432550 383504587 164202317 631726249 666188667 946063320 846232022 938475775 126541936 513917940 733282757 139620422 1037071269 933967083 898492635 624625282 1006791336 175100789 55289933 870574428 590619406 655499268 786652086 112708695 804951985 740362649 878632809 25147195 781401616 328641376 552338130 121042088 53713317 573814978 487746433 476278258 827209976 966606893 604136932 895389312 819501323 975283675 824806944 290347721 166713086 273406168 394962400 770018130 583147529 536059553 460706957 664560856 775167389 668139915 934780939 179611595 990448175 166380406 711440361 740571230 923034179 1071455325 46755911 1054435317 396564596 357780244 1032554109 29944392 550520627 956728990 843450151 665583447 465134124 784043922 216090144 700606764 616220698 643820408 779058547 232965548 326777177 152331163 257232371 116703587 17860480 1051406018 428359890 931103188 669939645 236189540 570284617 789118007 180716019 539441851 396248649 765997023 545164111 855994185 395451489 62018719 119353302 294266021 983917380 421629538 267043607 70102165 22851550 932235843 322796090 494480597 1024067090 33832018 188519890 312415301 1067086568 815275747 837542829 665124064 464396015 285416422 850857527 606094068 832200640 889265844 241075487 287703366 669098883 519881742 980317842 175020402 913445164 843680599 640807686 305167093 709864215 613399026 672910899 259445688 105148610 422969640 36388705 159954478 430681113 514693966 1036319100 928616770 625980502 520385454 24564010 399875088 103455586 23338067 420490194 53601526 114287055 95336901 7384497 1034021535 942357947 970388493 9331239 389685166 1031380862 280045179 164052665 87454143 565260192 568558010 439271808 151797046 471658035 535881973 1041529578 415426624 687088137 464941151 968570422 892799192 883273359 779540997 946094401 831852185 415327337 977443602 933348045 308685187 620689175 1040250881 210765121 611176546 893992190 139070006 499119430 170462076 1048062702 42832828 1039517894 999195441 232044774 491785611 727804596 222261833 65170404 439313035 999998304 217438375 1039510132 550336785 47468779 574069637 242556466 919462317 208831252 170203598 1015600014 150784662 186886735 335236340 469821911 769252413 501683678 976650646 908775093 1038874861 711898922 185925146 384870864 966391301 291915000 434475708 1006892208 354867187 551897371 387551121 696036199 122081786 685834286 248506731 10128700 956795645 945855344 866719592 536690043 649935290 969396890 543167505 820155570 950957033 588119491 422652571 684947102 138486390 527941299 937048413 495017784 944293591 713159844 247389042 340711015 998262165 762027234 1021244992 95766255 866204258 682151010 142813105 700599600 259962724 240625322 593192913 638742818 424541910 359416025 937579046 289786989 461061209 612327891 314882860 1044977753 303249608 394689677 973706035 13729338 988587697 254350233 95488505 177980173 868323678 326480681 767412259 206802865 882317012 636077448 43104170 393868595 246248892 913526884 608498621 806668887 560240012 114899846 666729373 831313783 266036200 434619893 113474629 191169505 168165701 845080640 184065572 286240777 136087806 489477004 159276666 722132530 988263835 133462168 359289257 62138864 370357807 5715172 794961677 923296009 582803405 1063080641 1016449840 210409287 915139304 764728608 453700958 393559264 1041045124 283560326 360120623 135779920 813387752 782504997 5305451 91464548 365535975 18404965 279325684 406754778 377787399 217133585 125722362 417226199 7286201 363468518 875660004 212817431 421908856 951837906 63499522 587940432 1026354163 390654446 640833788 161410224 616852231 893387864 778313517 994872317 146960549 900693109 1026766356 921165225 351099349 317328354 137805381 681048701 288661504 99887127 531939431 285705359 340263739 341689606 488772321 42765209 1051735475 341454044 88759279 677575863 326592090 686316687 189810542 364054894 375031351 438764991 585715226 372344113 932482953 755568826 593080553 99264962 476516020 970719066 717488975 290890219 931980341 793933426 612709872 672682645 708673692 726028333 419470414 706852975 150002764 969542079 957730484 187615134 818664046 588298500 1013168015 954614025 145328351 774287920 543519845 794188543 958608002 973957786 120534694 401331353 519153360 942923038 927621136 642999273 383952309 898903802 672443256 399221310 900771429 1008556768 805341157 1059700652 1072633278 639755078 849788962 85980442 838191465 335691565 874369606 265936210 485146973 96317719 446113443 479464338 446313959 277691860 778715733 858624588 394712680 321347874 891700597 1058740054 571306395 670749071 866251453 410092354 258419379 922231627 683925012 712712956 321829760 840398142 1039177901 660005117 230517083 55374702 405057280 21370826 582352519 489927833 600510839 995216386 298975445 1030211830 885058209 195466151 901843602 333888444 757387460 198390192 195381729 805690687 283061257 1028362592 341353856 659364430 685293891 891601755 148657145 955682670 574971464 516131358 271140345 392694113 3694584 479609514 68392948 631170723 430786380 465509301 181129111 1009881832 507423958 801221733 654684380 470586332 695277648 101141354 253618960 449170061 263505459 601732997 269390981 870237619 4665012 389761950 783402759 938300341 261768955 249630869 705152985 874682151 768534552 889121101 651936583 730542398 508919709 617455191 857989023 118567881 483007676 268545708 749834907 618931308 113184181 597351137 966625899 700951097 233258924 425336402 424382261 797748127 93271669 762239685 772450993 741081215 792439663 48277362 88170517 982543109 1025852633 973615253 511310245 136379295 247307171 210029652 873526661 835571636 792981605 880508168 752105367 717470935 745455642 398325219 989405877 581204383 667576551 2384715 921808965 54752489 559170783 760322031 460905056 483116493 712482127 415602373 225822726 1034998063 102467730 159375732 836396172 119947568 259103766 424438037 1016121854 424422517 977125218 273426060 364017496 611699601 229710455 277287159 638621208 210237631 323005101 59858315 250430435 754834071 23288843 115793784 418080810 423657837 403664700 54730866 805191654 303969699 993376772 86845746 87332073 858475461 469709103 419785067 937677154 310015534 642250897 443720392 504514007 410171271 815964543 81295944 207545813 23150874 750310941 2404445 551982230 217396814 935954582 387170598 902487557 481519628 314723505 954630146 783969915 984477656 153734801 586432325 640841162 838553358 954782213 884700185 834039925 476084116 480312581 744960588 942703136 573141727 863708082 760880634 968575654 113838000 954841971 393968483 902055256 11821639 651149645 191263719 1003355763 60603911 487091460 191990802 954655017 695939694 248795583 309566871 195128997 312223619 978812274 286506276 1047466125 573457969 990543709 949175482 89372587 196963645 1039180618 352870426 594197527 801365288 502212609 999600902 542479095 696516592 315780288 504742590 114121674 315300596 464408612 702395203 719284365 120682608 885625251 759780728 589189387 471098130 342275630 1015764886 49423249 397853485 636939007 231143850 922983900 565460321 257266872 952923790 548313294 293773355 527984256 941437976 869959353 68630025 100339205 683609091 457788670 706466954 796026665 151716998 429436927 905616657 639353242 263730276 830362508 773318674 773303180 775641947 265477942 883122338 1013680100 271084460 638124814 955846528 432451916 467400162 97969190 839218078 194215352 243676020 612111066 424344392 934036185 995530912 214420792 1040882681 468443209 532340671 729901224 374866284 240445063 906192240 548933895 1009944209 91101747 678111035 903787692 706452418 562253510 530077881 301046059 955898240 209569146 954418541 1059153672 247744173 756690266 498474083 1030611463 925561413 45316648 280828237 787440478 1061113865 83953546 687646473 727377691 210067357 526665533 359873374 421494352 751232810 614294184 519443114 110738753 452723635 658638485 579974254 877903829 856216366 109808656 959847276 684976324 817563125 665287965 577474901 830282942 409760116 175801732 848294737 410455386 1024101458 333889681 549605136 102664070 413566901 237763586 354583794 542111874 803246689 843444220 186702210 423073014 615066636 488378021 784255095 219606885 62005450 457693076 327512106 106306550 688275859 955284993 79252637 73816449 175628337 45999998 756089950 113623018 157206667 852604899 160158963 231231026 663868957 1027675911 462438064 823359316 240590541 164906858 870758217 613538600 872846532 815477845 382213519 863093533 518944598 141161939 101610827 1014080559 40923542 68630381 1051741471 1029320212 204424474 513263113 408911333 925787515 504721384 285974076 906491059 128293776 211492987 476037521 719411009 800174651 397266113 807721713 403985019 111607516 560817474 717110781 581786194 649821888 310692053 540899437 830669135 857977098 1028026376 525249395 26184939 722569142 681996604 103254958 349943237 723177490 175118075 209605088 390456356 531513407 364004544 382087407 370803657 869684312 923915343 104574422 32035125 123469137 35012351 769151256 1043116540 785181279 932441285 88532760 117518889 626701408 1052365906 650072272 753199569 703790479 893589074 803544239 901490441 279921203 960304317 879802999 555355063 590616992 723190958 280093516 717364945 242431934 77228993 199470075 540718858 728659940 122643119 1041058543 472999548 719365806 568458546 784234488 172296831 416670016 173659526 233288673 50069013 768764254 743312671 379994622 492427432 696146049 464620252 852077570 1001906726 985918438 788257027 108305950 449423816 441922913 254174383 557851800 47527635 61365567 214869126 835751775 105058481 387495041 752623088 517136200 92225336 947424086 968778063 977447560 219150506 656924055 1000192293 375346346 561030936 96654046 600746275 105305958 72459422 807148202 896025455 446722935 973780592 756388019 856853310 435403447 935173608 53999710 704456111 269454089 1067120484 304845674 437236237 947318151 761962357 631464281 715935346 198662378 812328159 510122777 313222786 757336857 384376050 1058340607 402154461 522990764 26714612 483658217 169626825 849844064 197052431 702961712 329997138 1070759043 459076513 1006175487 1036563778 478830950 759969300 236189553 756797969 736508205 669149503 471255861 34872904 1072908465 245029810 655625930 780954808 101988599 754157428 380090455 99896399 677537969 665386662 811613558 115801732 58768017 530217711 738480683 645838669 95767167 464157447 659738781 402293466 51212337 510488664 742377959 99328438 206430846 521889699 56568319 30511559 780090103 542890467 922299365 665625173 1040392317 269333183 933509610 36902369 544780976 435497954 173751289 731893824 287041206 849340631 250393141 961793860 308713875 556753283 422981633 678326468 495202257 704159587 126591865 929976793 662480795 400688121 791523981 708605859 659064427 584187923 684746489 900523343 241056830 160602538 231442553 981396841 611537459 557587224 203991373 92762141 101550562 563615722 278058468 652258772 728639926 419336130 896168686 825176341 563373252 1026126936 365520097 471793111 793235457 1045312205 945351413 117453656 414666917 447634906 709817112 1051657661 477856532 318004025 597269596 8318021 363138017 679112915 534074636 301721195 1030817200 310472835 103767262 373799089 777046044 175854584 911108439 724180089 1004844577 980200788 1042470704 707152998 980492374 49527792 155437505 160471683 1013964586 738644123 283852683 228699475 773483321 477144214 751366462 947624437 922882412 309261954 249914585 746004262 421841874 954420738 254687636 248149102 856336151 741421760 489745372 1066528880 511847391 789101207 816877772 492570957 148753591 867395907 1036475711 910882610 450080110 630690537 555916466 94225568 855857672 619291174 527842967 858488533 1011230879 467714533 1038432517 158746900 737642969 881263100 338841387 270468020 204904640 798958771 474605478 516293249 987294347 641962090 59794328 190757768 870275662 522879677 768419111 383848636 475630666 929129379 983408310 260114952 958135291 742851386 112817797 403890097 667808324 746169678 29056466 12122796 114369571 425292164 98726258 82651949 1032284921 956193606 953011178 539656249 750867888 848092781 734375503 215077339 662741683 54747741 782098008 151741038 122899396 916333790 839309180 1016960965 113096225 210245484 822287543 113407196 968418033 62015450 450723618 865846760 746986880 834484619 541313696 92312612 826190764 322109339 269924173 992017803 179030258 743981797 465250635 175860530 394921264 5512333 492019241 311046836 74854112 306102420 760546085 32160158 15954567 486793998 372036113 346168963 1022309147 437930813 61699682 250458800 69012506 252541716 891041976 936521383 418647819 711311723 178906579 402914623 345437476 271779604 76395439 288858290 261257406 1004339553 544566997 560881472 91728114 1039821664 1029504702 499331774 487105427 675375485 732780294 297295413 286668725 718035188 88754776 285585634 1048649136 314820031 169142784 68308935 930431144 602096334 960257895 456773027 171371920 698229807 508563627 233325417 1066622537 1031647071 492048200 327624776 795488148 870562193 211394689 392440857 1023401590 877160697 38559881 583975909 464034741 473836551 929230212 354252626 598297090 113563786 226531693 115046880 775174361 917367622 19470296 82749534 582048006 549961009 410666043 925174001 322164404 465717447 179768125 152315988 708209036 982505516 954257492 581977794 678352678 747050730 540540700 748331187 1374348 96928652 594082854 19112527 866093902 735939418 651397031 307193157 244411861 525156378 542221891 638180470 481021833 155607134 173547662 372431458 696492535 598320675 855637653 928779536 1021315751 921777433 944956494 602754068 63350753 584048825 275438334 583811202 999103777 606154630 539158350 115952621 780769939 993019096 373158043 850787887 530347941 499247961 822844065 477048597 339960278 340087319 730727339 914208340 47094340 589665972 20111332 41031949 726362864 1007603350 578446259 711421539 300017422 172740458 1071452924 868601399 951528374 137091822 243778825 565440226 580232267 443689088 741244577 807638649 10377057 236275 404968855 565075846 147443493 243199762 676151150 560883587 877145681 274472218 330675204 352874603 988394234 16374312 362603701 76002774 4444633 451350178 91959113 799845502 762601875 216815970 212286059 200524164 492620542 64162187 215561260 740926459 583346577 741213443 346985873 740957030 464840763 297238750 594446916 929531117 968633108 555787227 624276803 324055894 712941566 439397731 389448112 153357529 484653830 245433652 1043059699 214352865 1061744933 909522742 486276438 436154410 516668523 459572051 611635007 756094254 55054862 60033431 442804849 50953834 661910449 671187168 349923049 696561126 340499769 163858418 1063091161 324387934 171922777 709469263 1003073184 64615389 570825116 1018096592 822773523 819825386 1072886777 200024210 520130129 55301924 89299012 857323333 336832027 610358810 79200592 835180464 520381020 858285983 686343174 729387358 612308133 669781126 49428123 254612381 299454565 29619331 806450318 1047347700 195484570 427364320 304129393 1005662676 538517846 899678166 980855188 646680310 548577933 986303571 236049882 950058312 947186125 120843763 647130401 832939860 553095242 843664488 368025386 150849859 213029782 885336592 447540806 837112119 275238183 953359612 368695911 145921173 430477843 194278077 971241637 197522157 196390017 53027452 8352706 159632883 247319880 303796066 1032986671 480365128 80702031 991180938 227741655 800079701 914333103 266228515 985838141 302022947 211832430 172702395 858220395 859556422 883350509 508401967 288168870 532438356 635096034 185728988 565463461 783020844 876227816 972098829 901632227 947894089 989474109 294030211 378830743 66303789 219638618 765024391 414854038 616858 489600497 279713945 1062142375 1021202632 599558890 951074697 880370962 405447418 128073916 549658722 536190102 294320027 958911629 294883303 624460522 133779058 331549437 743307279 836320938 309320242 676328577 929823174 88284190 40373515 765855190 906046090 327510850 341820743 491528075 329442375 395533510 728679635 837749978 497228537 1043913179 337395988 1057732577 646849411 280040290 1018971 368654570 826973085 718586471 181036181 624105882 80709642 109507609 109638377 244775543 606419130 478757186 962347776 718217084 170103767 205894069 557060331 336451095 676116387 563452596 790844993 104893123 959786897 481528858 866352373 5850036 315657701 145052903 619635594 733400607 266389024 189905345 84572138 300650985 850111909 841521353 1020337318 625323611 748657682 1003517403 1070727001 645274910 312135545 770630322 1018049430 26797323 885411883 801672300 560117351 949626977 865025790 148117058 200652470 851491428 496988983 226440767 436390378 425620115 3880585 307870537 885856250 558333722 916239149 820363039 990746615 976688258 317673392 209939941 743724638 346940040 392404260 213033595 6945965 531838341 517246307 12576613 400428954 138842145 699841701 762305085 1043450 780907384 780895169 540718353 559390212 515172615 140209792 820930966 854614349 249903174 980380504 781886062 737143964 1017707765 790309447 897642990 606106126 71643692 1040647444 111385474 413673798 64228667 415633935 226339130 290385020 771301645 814352584 687486 565729900 57052203 1041087190 172154429 378820733 909119543 989857682 219628709 528413885 596798276 21788044 836583365 770826731 606867171 16609027 1018439355 910582605 387493658 141829237 687057464 111240246 106308738 573798991 113421710 8822526 990679225 103118876 528121971 548226705 771429892 876827379 351064802 16473614 1065097282 691547472 863425762 749582026 236362668 891836415 910680850 575797056 238863654 185004897 51453074 245382009 225012825 604908334 1028622349 523847426 605292149 561062978 712664392 868393981 133363158 171587225 1061359013 136693877 455063878 808920800 900938572 502626955 99688173 317946929 415324254 402322781 493351539 772207814 544621375 821464276 907588932 548332787 186966273 235611828 7013573 699066543 861268664 677668408 147020663 316249326 749227742 875453394 626700047 739272340 405513789 902465375 258525589 621912404 53968624 472506608 478620812 775356584 508894917 399430925 537261378 142878281 824126102 1039107374 878143693 438665707 484958871 257262722 821568730 374745184 374191688 377706403 449847741 423709482 228463004 1004743685 263718424 445180780 908741148 425217849 670034241 543753341 8107642 1029202458 589882767 888041198 511708332 868055430 263182944 753787585 388158545 349808478 723167980 891789334 755622190 314170645 793973729 616068689 96278481 107537871 895185854 636454285 884577882 596817544 689443126 271062394 540409901 680966064 428836430 13692958 326299930 27584523 446287171 967855339 192222546 910665727 826171308 1050315135 877701795 236785164 427551411 196482273 192540779 946949323 729261855 400679127 570462352 487169943 1072800644 92724276 397922395 349677031 1041656340 862814974 395263815 855246629 568128983 495377956 174017586 169745255 546442281 1007250605 1007566816 719299189 683484183 861220029 208610541 56317193 896547377 902543484 211488134 70182562 61190319 734980574 615621652 621691253 569833442 173235097 163274046 867696340 600667428 38280226 593636014 542292144 565343520 851349573 991584315 144542544 76288107 188243015 891731530 604744918 106608900 27498880 223615778 155855150 896831804 949425465 748391876 1061472771 704261638 167910019 225832927 200059786 100955998 71851310 456524620 577209121 597736941 565718657 136068956 604821995 327153813 81452703 363302347 789735284 1031193542 770025688 826885811 666737836 879831140 214218001 149498925 621518548 1000328991 979823015 730186161 118045122 46923556 788796515 93048002 44579418 640404211 546613669 1016142926 267311303 800989573 134925652 372564678 150889292 552432390 664087145 344043981 1057981845 813018905 21024530 362851118 595027045 239304093 517446181 515346972 11830891 676700551 996917891 264107900 55823725 568026364 1025965964 853332339 383091717 799887773 677839247 684791696 46269720 944200526 593476210 457317785 119531228 110404245 39476450 658825534 349744147 1062655999 843864042 350120095 1027014778 56113379 435480626 1003281402 556463812 185902253 683725035 109743301 609716288 565812453 821244777 544329800 1025875840 755538400 118216634 262603428 789604934 1037267766 465765605 325369467 289094122 76323845 209453251 460934311 791343401 226099858 1947595 968315683 968861686 453281858 594289385 686051246 990274105 812820351 475700067 524137109 304165659 529407547 988262418 710050781 377904294 697651228 75260722 803701253 559140754 37080543 146571348 1060151333 673234161 335737800 141187717 470695223 905798618 1068614145 155321739 575078662 1035520638 56182176 647303257 344258287 565850585 370842214 675562151 532501691 754127706 702862158 88061050 34078581 297373213 209309545 943974000 873026800 695888597 312109079 727582685 705080436 168451478 331096299 1026173196 313058415 1026157000 71265206 460029305 455438696 96238493 901703165 632102927 1003400355 424897756 70336850 852944076 1051207180 381259257 64552854 641453129 557941235 980835989 571368981 538693806 155875908 766528665 813102809 825719718 327455139 589240536 841378422 683091413 180468137 953847337 508065371 514954090 1017935522 73211393 383567889 138246619 882189554 881990613 810900160 343726343 414666326 662784855 429952622 895128082 768520800 555625729 446094488 407688996 1050639203 841356542 150856269 259860381 14751133 512748335 350531556 998555789 219660655 237028827 586887878 409817024 518665066 151318694 32815314 1072600340 957209593 816883954 1055109228 271566080 449303235 351051838 275250716 641458658 737404055 349116264 154422924 327667940 82289546 434395672 542088264 502384868 599643979 511145600 205918372 233037383 434426896 528272406 866848039 339823873 1033699313 734278680 1037767147 484959244 56525819 820890921 915781243 346362346 627270573 644234448 573916953 1008458946 34601240 975970492 910700675 73697522 668910061 714002375 441769653 810026916 791831068 1035472699 505495541 1001328376 86861301 712182945 553486147 643039021 205049648 683121827 119059407 721896960 567329648 55769065 300850250 248533735 996823320 867298088 365249268 317653796 914298960 25567122 284953076 511199229 952250442 62943227 305862317 946114894 639234102 712328590 528451165 950160562 535687350 180052414 392982117 227321988 671272284 862406802 131975102 72447035 364960331 660365146 46367530 224482154 527171141 759153982 786387840 432802458 354081444 235468752 551939045 45736906 1020191745 90851935 767509240 673602326 132290667 516284939 552775043 965388776 23908731 287964631 1051296648 199816522 512229230 755903342 720525514 287730032 255726446 991036284 538815387 216096357 960615420 1050880578 706082901 181251464 834456407 870429175 364136558 28276677 330175416 184425207 791881228 842703830 788632840 189589079 118074132 901944100 699542730 349581758 966131142 698128970 664541781 700056057 57039992 654933895 1041577760 701272341 391595530 878179924 469734718 190971117 513240884 657328652 255405920 121149118 28125129 248091252 577899352 761922046 615434055 312389100 130688816 1072092526 120988142 111396568 898595155 896003173 824173413 578940068 576828 820466063 580183879 367173220 505504306 392553804 447637974 688465142 118291633 94502603 140047788 964334702 1069264362 44390774 897191945 762118079 828118446 590164099 834429343 425802107 9451013 1046210725 549097352 260674274 760818702 1032464596 596232733 225471625 649190864 847458080 276554352 983718439 117911051 429689724 38704780 614854268 422184024 250419660 437630770 387928181 993100082 922360908 616015559 660318494 215184206 1012995947 730179472 289035514 871211363 851070533 916996297 961722268 854421512 518750488 759905428 852577848 94049066 949920962 916835969 468486071 331620476 842958284 501811514 183241020 755114302 1053996564 365025539 59435905 861421147 681749579 230649473 862613930 529620375 602785449 626460454 1065749679 631116594 876410782 164910290 436960205 350873809 619485177 93746755 675841025 928234499 582609793 410580331 1021319660 691902301 263542488 686220152 190072972 249754267 104054709 1008712983 694237262 680581147 753073599 189090875 526587287 890980760 600776111 685517806 667279789 916276161 555756971 476522449 913134497 650903960 325368264 931842667 564790525 953711391 1014906420 10825384 117786867 953546086 8327618 773260166 128604790 1039891054 284413838 662853815 486481909 74710658 539157361 303257770 596513193 384758241 571934748 845543970 219036292 475072878 973851973 913301283 275505125 397474211 335321766 504176894 164406919 855239963 330012985 866349132 361269308 1022860194 314644569 180905573 147149724 761348195 1015144285 934788914 852286336 290616387 898101793 81228145 1018806010 66868784 33890823 315880029 165537034 224751382 949250774 644516814 514866135 276508066 914607317 891374344 1028271872 996809119 395774625 549679319 517315721 203405897 45390651 159354725 173234834 812102388 447586772 744276806 274353937 799662741 58499675 14735975 599258111 286838114 813855376 535740850 915952349 161448709 102504729 66021675 40073643 539680181 816653607 99249182 24392361 369758150 249267909 383341883 1049331568 1016917250 681173683 66711886 433354481 213821786 212380859 446335633 212624211 778894675 418948713 418831453 80730047 567879346 845225851 829086216 274653039 1000744262 897219517 91639744 882961696 269214201 1003341147 699021840 977008261 293581841 360460969 446122902 633611361 61290982 318180537 574258838 537590857 809031187 383305712 738526771 316429788 309365987 492496572 169176953 564066562 944168037 184619947 263830379 804983092 341491956 579238924 611967569 917408856 978756186 608540021 694527516 262969644 680766100 278799085 927085283 75230273 464511601 629488208 964051778 504145979 49422198 227665029 572996812 580955523 876260544 1035223078 219785803 130545559 495155184 781724629 37955497 963549377 986082008 958357896 201324505 533220493 347514232 175491291 190037221 97377285 266409153 848147673 873618766 657232513 242020709 76902349 300579463 54258288 860962283 750874918 172242572 874619342 488149415 992116272 383737528 681407441 435620002 342829506 526888681 1021059766 451609648 887737904 625082279 935170152 566751748 625172346 511927021 117980125 774397383 884780929 619492370 337866394 348194479 833329450 740093455 241655613 794222921 845695427 939909183 679685765 523153639 776373703 28410215 624872595 11299670 353908475 20358570 594755674 547981170 259187540 828075092 428710883 1029041925 120945238 388688616 871312611 757735849 940735340 645295782 845019056 826906696 86952286 246809177 279754637 165579030 539070266 319342183 181014569 792927596 733618970 528157806 795135416 1055437690 778154040 488573720 770957810 547526672 361919953 778158137 659280966 418400890 90231867 2929147 861566237 591261384 686214192 690800016 1018003124 173336900 136658553 890020066 326413451 337283637 543937398 963981676 454602538 136283105 477599584 573963989 84626943 217540942 298343933 164963419 619692140 202427817 213929634 990776766 31205811 426055871 277872906 310036786 462266693 972460272 165699338 978363637 607437352 703561326 315363192 280029857 800996435 315607822 687800894 955592443 661420558 783247058 557940542 263626708 925692247 455524468 21612783 867086600 404993743 1017729966 567773445 793530270 650398906 86774333 252214034 965731223 1002405011 1007688757 872189348 212676659 677637826 200308114 1002490299 972183005 88382960 877859400 737842333 451191701 349739962 415069878 118754970 402782982 362476689 843333055 398957202 723845029 851589789 522264472 645892321 1065875826 847477055 981851243 440312843 798122461 530044126 138461628 605310467 688131676 932109960 165317337 408927594 264315183 494914938 248818562 973247181 89416489 1049639284 275745570 560773873 719976724 355431229 951320935 984525383 410392686 703332360 546681681 884460472 48083263 567267464 172619069 989362588 224715590 839267278 102012797 46044434 919716862 495522982 566270238 955719658 772343477 378180707 723909836 916195510 971726970 45407713 935792281 16809706 180715737 876558745 480968135 396456813 16617115 700104787 943196484 861572165 973435868 334428109 1044573855 552573229 593742716 1068599137 456036855 329747700 461905917 452371659 706612209 846655771 487742560 103704328 11085445 1026103217 55304494 89838827 632042225 588199094 421125721 1891445 828564256 741882515 1008518924 896151408 51839687 961412086 604873137 297499323 118832954 411089334 958397529 918095651 883636457 724261428 402419199 315920204 645635736 904722415 205710385 604244834 792433577 761471574 417114980 439333032 1050697653 900813293 312242505 461895456 507529164 315974885 410086054 1002333969 39034946 997967335 876468297 443052123 557054324 310480185 190443673 351342727 13005317 355792880 243726956 303152037 726284662 797485784 989396771 28654448 641241853 885043439 589182703 717865411 204901571 714892206 560849678 532480503 131618181 541945579 779539457 357456959 824977932 515020864 1013306688 970372342 737111162 689287766 470672985 827331942 508321008 727184254 877307587 375878109 502688771 505613456 222982555 511992217 373818379 397657677 771473754 768823637 505808982 1008551577 715099819 603418073 911561424 950141000 557342978 659358645 212370733 577161252 546301397 249143451 596325440 159842376 385819278 222129082 350313807 260467550 138618732 24453336 721640798 566220175 448578506 756162302 169910952 727188410 11334921 718238179 253182892 643185871 408851194 176093229 828591239 481191679 510472751 1046570053 1007565873 509678818 151069831 390002325 780993783 789865840 967056531 1057176244 576014252 158018893 136296699 79042480 68019169 212333388 596774548 373524416 482223318 907922275 205715094 582870852 859871822 501229067 570705333 689769125 923316132 849896503 113159107 143957670 41061126 758924932 850398615 642299903 22239587 649559542 1024810880 767095850 174805819 454957631 917988640 279068077 11333950 325583412 451278740 578984457 1046687975 809321796 683316109 129890526 233538534 824602885 158464063 886633810 637801145 655801696 888089598 1055270807 331950927 723338273 424486568 498087987 302400623 690940042 931745710 779278651 562742856 210831640 537713323 307246825 527975730 562920586 934832145 21107845 970468678 483436265 135854335 29018544 951980422 428978630 719070359 826292185 941528227 644273913 911617336 276737503 628739528 614614939 450404060 748859709 324789417 776389938 920051919 256365821 767416536 180076076 461263405 808656919 782997855 297383109 894505291 1036092336 128603131 249300899 252000393 990706887 426128510 868491612 323777456 941327108 178151195 630172855 878921503 573873978 787377304 588015103 340444383 126644172 817089271 283927798 651347840 1054137637 37845751 783377292 392642027 725215032 604126704 125773089 934427709 289527686 822963294 658788754 679650478 308353504 15468627 693255534 789599809 768487571 1060966754 850032491 21714506 883963915 161347781 859947384 565729544 882616501 1001840007 793840372 730113420 581558711 715919433 587933367 117134424 126817643 1069397498 479380953 377274007 344791319 1003665740 506324567 88313249 355443949 70218815 639631122 1039360318 238323797 959278013 979885492 775033877 864814653 68728764 1033281508 628697531 973948246 402839510 459564500 244728011 675105117 83445552 714192468 256253800 43354891 810181183 960397884 404291112 481620065 308318585 108367970 666911459 106188076 637694747 886361771 788766161 515470681 1000725743 698251378 613594958 598363033 898822973 598580359 554263154 592283830 230518561 699133383 623619241 644749004 792650439 263469488 399974180 844558447 886835836 140760107 239113536 168138248 84169290 670639682 282852934 763262136 734360525 1020181119 925261564 702356786 254294993 717626613 785941489 556028873 442830264 581997766 490647554 905262871 752762826 1010220248 338957392 310348888 14936809 98645317 732834582 513980612 824638588 399784011 326138640 756140188 113348082 941742977 133355281 1014113738 947675233 706702236 393006734 968819988 1009381531 265979296 328132998 553181615 326146468 167692935 758450367 729627917 529922837 195339116 224360551 295714075 896736672 854086318 257099375 12493238 510956068 658012683 97140254 182930194 328779781 906834905 783699633 40163769 158690930 958167034 157316196 324162487 329075088 986491326 367082111 879004929 563319437 603372957 160069365 1037077924 659651196 52359348 183606833 26654364 755990389 283745551 664755443 669588200 811195005 118895275 903736661 168578395 987932726 408650319 999105487 301951440 694382885 438863047 1005032743 626989554 448251331 304829077 509678161 424259874 641986953 495538264 845489637 668588796 382363853 866426672 705568229 93865415 594690409 736452530 198502011 494614737 642528222 399486608 446479504 940289188 243494621 442176038 51032257 127623832 869913802 770887820 49881705 375497311 606759710 237362424 996951268 563588293 116805841 457461054 130666615 1042687722 638464335 919606566 959441729 493712078 847766580 115270195 680801151 517848993 352147422 585400577 952927568 525794340 206271482 437423816 957882911 156222438 982703311 991382441 142977792 717979923 225296277 641601506 97945601 856673213 232460939 350012225 326029522 948267176 574707709 93405189 25094469 15108663 954281457 124620042 751366109 333772042 356507599 593022340 774653392 287519323 772738709 781699215 612151785 704135852 1036988698 341033121 706005679 651471229 186107234 219472980 1023057214 330858996 749143537 491854001 840204887 559411091 692795901 937042834 992201758 805401268 517096803 504547534 632215454 324479746 247097972 13828613 258890521 129982312 1060412771 432466371 574561166 453983141 330509542 234333678 687584709 87843674 521624346 130074183 696338867 193125272 931639099 800016930 146250119 574885933 478640638 312474227 81570918 549978390 540749852 209752538 154198196 2975508 651355019 1072634628 89141025 186782263 29985152 692312526 419045730 571888825 953341476 208058230 552096671 224027409 786998160 8259686 870869429 469945253 627257643 467663943 516130665 153984239 851890621 330864040 61742778 781224625 31364488 615697061 984890439 891606799 867728912 795286859 414875029 586274951 278936584 702152157 777443519 1063049234 257491940 82646077 86036060 953504313 946134200 680918624 770017526 986114708 475542549 458272933 679376117 427278449 388349731 12695746 257529450 3838009 351119527 841179956 979813201 465249749 79336113 181366746 956506319 774481903 505083693 335187263 481266315 1037622830 41727060 107014182 516872416 575128043 520397905 966222549 667188012 979512688 327968900 157064751 639829739 192253162 669117190 24140478 846271865 498829445 7124616 768034709 29678754 306198665 120829760 643751886 1001806841 101719406 918518988 646850771 178052851 942203431 704086812 661348964 1072806690 510006517 296873188 980787098 110886704 1010916978 612516941 894420015 936898375 846381963 354288423 300443705 477102731 701409911 523483097 673312509 450321478 899265135 216410556 968244678 246941150 986545574 897705327 39884073 672418305 711325494 348961388 492798154 659304547 860532805 98315882 346077915 546990971 60902265 38165622 752129202 669668628 628216587 359949294 277298506 505155938 110490394 384221645 732814525 479793872 930913882 309229414 741922041 843035648 12822272 1054789112 615839380 638297107 612509189 195329147 1027882334 267026961 495415012 247831071 603076765 985458798 192505519 473279167 352208221 590574624 843423468 936465554 39716458 172852587 999368344 749375495 36435737 941124524 898715022 939603143 346404398 319742312 677500081 519654561 720190476 452269310 862900304 18888082 806194951 638236911 576494524 340992597 621235880 25853040 617755879 637004497 1038912621 572617947 512097910 666685058 549905515 913998022 365732677 1015270331 962427856 548575541 276913261 953758582 49563957 145776403 808057214 79256036 426240439 112300805 1071974724 138525090 639594732 731409048 917299725 1053875013 92682299 504512532 531980847 661686914 589927889 118505709 789027946 938491707 1052290880 352066482 926764447 440763632 301537936 397309435 170534433 1004700957 298379994 36533332 495515807 21625235 147247954 628900898 372289972 1014514935 995913519 1032727849 1271177 200165441 861754339 467981926 72192789 653274179 379039945 930896170 112835169 234351327 597180239 507278190 532120159 600593076 254355188 645315845 67545017 108697157 427232897 427919687 633444027 421925589 385179664 77340530 123177875 519628147 570313608 802913883 793142025 94903250 595300740 995939398 1012198770 772430180 905503891 901529342 925561515 320554279 46146924 518294885 866933114 127685132 232767742 481557027 401016602 590268518 150710123 204685473 993545400 481999894 341303457 313290931 214375138 1065620533 662979870 684199210 393827437 430448012 668258610 630967660 486902240 676843105 938515696 518657921 1013563361 544232334 257384677 743574408 344071215 180655295 1061607664 660178728 920096267 303814150 307640940 239915714 326183777 1038325875 238040051 889718545 18579983 774154150 360603857 1064015628 748390475 193795388 966616814 773357638 301729713 939260982 749825898 829872367 479397455 331491356 552783762 600467828 111442600 546536897 785826547 633288658 784744449 516385748 777068755 184939332 598390590 722832982 273592720 862915272 894500947 427022497 550803349 1071481904 1053912327 932417781 119822099 39686273 195915582 353535133 3753042 408657515 241305078 6208870 824547595 721663882 267208039 21873770 198451264 320114368 975260245 418633726 307995591 595678094 633559722 456254977 67301795 870378767 1041091832 559410613 868690741 321241962 361339954 787895119 61707675 268630235 954098852 532402496 722332538 894564460 353814724 309115027 8342676 202271911 710215645 902049768 560876537 159335939 350827264 63688663 941495406 75918962 950028891 898730319 7584959 857296752 372662837 766909059 226900792 480882407 947987821 214003096 493888123 366314911 794258008 374148060 139500252 405365019 671895200 89919571 196764654 693589586 36927315 290799992 774501238 256989061 173833808 489422439 520764519 109823228 18093085 315854930 603198028 68890820 253584999 687802732 902050622 142511660 1043505021 567813371 984427441 457151552 81561739 941896908 1012002910 92391949 595412347 997672397 292971158 710387110 863137415 482877666 127924193 653048640 427648614 992214246 881149113 337613831 781326143 1022313385 698961770 183231483 133693921 740741034 309932055 184200545 821789860 1006792677 1019347140 767360768 325209687 73650384 859084046 793485175 964832518 437005081 467076339 774501961 856881730 256997101 597032525 832348671 708941393 289670422 776914783 362468240 1019992704 794785699 428682974 544576079 851827722 373823482 568791903 78041073 312753715 590731078 176103414 96244768 658214090 656018122 459050649 622057331 448276207 196906877 919266951 540848374 1004996662 820900152 339145021 1040567511 816332302 626958336 261001533 363294106 490296123 515811197 597020509 936907559 526813173 1056381626 368448588 437566055 723848625 324023057 765531185 241661093 339606999 594597009 977178254 794464196 940537453 155885734 148899134 1036281306 270635374 502962937 978429834 71392478 972909173 718217353 365397576 9404757 706832674 877839151 1030693365 840372065 337647169 358189703 928029270 860104464 558173722 667956044 268161908 524755222 357258410 854204647 741872654 322243219 826527165 401977853 463637440 192642826 719778283 521456386 785072720 608958021 93977911 736347692 829180027 1006668423 993732895 622178314 813751426 244280764 1015880626 564477457 209583217 194533528 323264709 116915608 182972 969583098 206906930 273743926 421134599 735629365 533813740 250088780 114446569 259765359 1050258315 813746112 555391751 61809812 714760554 358308995 458296776 589332047 412689359 48255596 655236597 817044861 796998802 116634743 731109234 11816983 467675487 631318583 755988546 848894581 3262155 590252690 657064414 496736671 673263033 785401014 627473594 704232787 331478917 273368959 278583557 729418968 920407857 546185707 672053701 1018544631 1039117605 620020777 988579492 979973654 972604760 707434052 643003658 946484877 8044825 828878749 260910752 36894653 269093554 321136777 929720738 94833079 963292018 811847340 671354071 817262508 779735763 1010887226 855063508 614348938 280023493 235317998 315917244 604013951 1008606967 154245741 928465902 875031906 196855045 229041091 760267067 377240320 329980857 608964313 443113740 166275081 450583392 326063904 416972291 980886071 896308910 6446080 51691839 890146503 608541664 748232647 525203655 809759503 302750021 248200701 918125227 236676804 772658433 656573932 758060013 801029595 312884182 51159335 891662367 556692084 659160932 355609941 584540554 95944523 199597899 354452497 22592130 818563410 160239219 823841439 602962503 166177483 478891483 844324526 483874885 935459133 63183799 311603727 661484017 779387641 963208550 375815735 681371384 31952263 234563436 4494784 775796327 3422625 830996184 59892232 147439568 917700402 310491801 62708283 1046258373 1064494348 396166621 409268934 134372126 52782411 653717961 813962426 127152407 376283583 589850345 118133651 645432659 467114161 101564620 726450757 716301844 366562503 891522250 442112651 888109440 614071792 950882569 912921123 177968982 571559737 361738873 356327096 751133893 919999268 720829308 109051717 1064276037 433657728 599053594 229608174 343691987 191672310 885155774 404120062 162625762 231889265 28745791 566296592 796647473 293269366 135780322 973039416 369126449 230994658 647312403 265146559 20560167 979512131 690585321 626133897 996788186 684830318 956698777 826364704 221401936 562748053 939171397 687980409 346283402 973071219 886343939 347969731 31481745 822508302 1046300053 387151485 1072386026 668887313 400488587 277362993 222929034 730282820 623485087 440971239 245760182 218467184 394791016 638744264 768170590 108286525 375407226 102072176 507635578 457303827 1017148216 981570406 585454945 1014366875 716665259 948174188 69631466 149572239 370738460 676794328 267947751 557657986 1005004767 820000506 798197256 54732138 294582943 132533722 418619488 1027379636 525371952 554868112 486686348 48350702 318681342 683083956 460571311 80113939 592155007 778374101 721409862 900398986 747601167 396465084 852739732 229966001 546453692 564025988 1062010947 865666047 645421080 198019834 977348177 7116513 709085116 342866950 485145393 317811909 187739118 681904534 620459322 358543953 869108686 628800206 277995191 824054814 662666134 814560769 716235637 911923804 421470140 684464572 951165139 743772165 292772192 224455836 993143725 434752246 565710274 908843215 20517780 120312756 372303976 117256806 584454402 281063938 390832158 815767322 350495646 718374988 248655441 4565657 152861351 585446191 819928382 1013718037 591375233 989972131 58397133 991365469 150329886 1011612797 831244680 895900152 1019749093 110328661 589080549 136210457 396307511 347180664 691367973 1021922742 566735648 572382202 120699183 1021187879 1026982325 703630869 768402363 693339571 419452535 772863462 516826736 931840397 348972012 666382456 326106920 703357091 148767942 32745887 1021478118 431283639 713043657 776657699 786241913 477176559 703052655 79852972 441946769 953616832 201662134 60496985 41088791 657165791 69348093 601250120 951681093 451782815 145735801 57709089 737352919 485754962 54918760 771937379 953544362 140980078 694313725 697396437 998407939 527759011 581710755 77752767 73388929 217273893 168103888 421479743 936862387 413427731 836323995 463694683 938224204 45918173 572414873 655767220 824666116 518266962 720907382 375986161 208870968 252173315 935227941 104446252 236156315 22580507 22241788 28526268 560674447 809066440 738732071 147237391 353959383 919411926 626141577 705107449 688572467 83185837 450204301 376375280 699518642 273135530 371067853 244952973 267465080 290526204 329086418 525342055 72403809 284499951 316792721 887508336 951589457 588921969 916366139 554298786 572700442 903609166 721207502 701147183 290150681 481990778 572686069 1004894382 348998967 635552211 779215760 861007247 290111216 74008681 664533811 510966147 375801761 842401394 69241085 337033553 139976149 258492422 349936429 869265312 638412949 597978497 620568232 240183647 240510061 351694834 187777379 946760082 731270540 747483082 424268816 813510949 874702009 75806855 393567732 142064467 335208566 841716675 382495827 810707114 433075188 771709820 513526007 565180372 443465776 522694207 663403124 27801141 374219895 249446219 793909151 439261162 319364462 568440955 466648951 811155376 845140225 191648453 694601200 256044841 616178542 777355732 502346086 290159427 951543923 456103862 872683669 108749505 447046708 660074283 13773607 911907326 976177151 214446162 928292494 134874522 215034363 320531740 535854775 824831954 110566292 50080326 10961861 178635157 470923523 965059332 573097775 843061911 49712032 430884511 298086980 1038896306 84124045 248374229 175590867 337825531 768755886 252965271 570334032 907744915 656089576 91675592 187887219 815617406 870819916 42919509 665830292 131942643 618508366 443373026 683574747 151934875 889564505 185533481 298884748 47929550 907859586 627918183 395007422 54475137 302089727 588712462 1044670463 750628432 312093526 945237107 499300231 546045940 591966787 11229293 534361997 670923385 475531043 12151906 786222388 55713924 888168567 1048194994 743710481 715244545 388380780 435998888 271843639 833148979 401768770 263607278 191077348 479543541 812311845 950543646 1070998456 713467007 286595900 65915259 96082656 652330077 176418250 64270437 371951448 555372681 402053282 395133628 56917216 800061327 428479526 255599337 374161913 297064406 769127427 288612358 73439054 113808524 182660404 53175770 252131526 32922737 483889521 128046816 863034208 852787562 925113833 385006844 453894214 145309942 390244394 93587727 950116706 221039105 612125862 838203659 152262668 564717315 645167392 673772130 526746726 736989896 869641865 974180941 744313146 262262447 936334734 872948468 429706727 621333642 545727558 801078284 526311139 771222610 680296023 983731280 580912840 1027338891 621903090 1069187763 328397369 695558866 783174298 403093417 453813038 341362897 933249929 951682659 824667018 577563144 1050083193 599786066 340863846 719512750 1005976083 830899249 254613432 69816559 244422248 760304135 456900286 446916795 83296444 198522561 112786714 171822031 540804336 783702838 793126122 786659774 560214015 879751193 820896650 457232400 703995824 17849879 965654302 171431393 1008099885 966275407 663060231 437474581 299817356 479807819 660510376 397811899 372625006 452389107 224894810 644726506 917042772 102018044 702687167 222070068 295952020 945179996 1057123338 673406009 607352244 56570078 619383541 837141991 737876336 617572290 930393155 453672335 954071651 563284741 620326251 313114189 777395337 307215131 836355015 100199393 230766001 459078470 519862195 425858685 616088079 367717169 307698153 1055631310 392558027 697559325 842508869 254396598 587235278 244945554 669655881 261771797 584987426 479675846 119819127 149195931 28331730 9960908 389061442 899844593 780463473 876091126 809055908 230091531 428549500 413840587 893690924 289500867 103056265 884313218 578142307 95441898 388501491 841930045 358153995 508273025 672792798 719637929 791944503 750767776 834231799 630471169 103376590 316490431 102418343 623352715 525339662 831644409 777677847 726504757 947502846 42919461 669055448 258650027 905522697 859592547 374946723 718293312 1044172414 17205070 788820236 128424932 336053405 19556105 98290974 354284995 630779675 1061863710 733748803 220691756 251054921 470602815 390217011 181479639 1057828136 916488534 642009926 746203299 728049956 31705623 49758255 359918792 218716219 142771590 1021094871 1041979485 746578284 448011959 287631013 635243291 749144817 449869954 223182105 746738574 199683629 188174399 544854957 193696442 86835353 277830012 69863576 770161287 982368397 454697459 571436583 693450763 331433471 1026376057 1098431 766411474 197229084 404483210 412429733 128325770 513800050 16902631 1068898827 839367872 275649125 256895162 713648322 455298023 101160232 805408499 328216177 69591981 938938373 544359426 416455882 143725304 355467575 32428344 501088074 271887262 313952588 757974677 750869717 445377974 764061477 260059835 363325833 851274967 300320569 739844256 545971488 331220297 377098192 340161239 754041165 715439951 465720926 234278378 953602553 60364215 970776482 15105614 65741775 1004932154 353635450 214295953 3280621 97704348 680483003 933832085 378538896 115616936 775261973 231306008 1010446577 580955293 437093068 320428534 952792217 431993003 1067368806 12909938 786925290 685371750 818925835 611760285 551034183 941345547 432613719 113261474 544707801 596921589 329918316 32820459 451291680 572011664 983909692 278908970 729415537 849703289 24751701 967399225 571779399 961926125 749562691 181913039 642207812 136579263 761210626 1028626973 198844139 187545651 322551654 488421675 113987182 388807105 576681288 393687016 829790722 87295138 769413869 481428381 439250922 744870277 868557436 1013501863 1030291359 426359921 856930001 946793116 463219778 313881945 417387953 396474298 364123740 194327447 37597327 187405500 677380768 584662647 137681714 347026052 723889850 388203332 496977775 310976142 252450590 933260604 739832919 432500594 888736538 835923932 539730075 29228280 545578336 49801148 685432606 626256248 32053619 860450340 708205667 933443149 633409429 42007974 851458440 531621333 400326417 878343952 277756990 691882482 503780438 17291973 25457279 468510813 311757128 899227424 362230885 857711175 190778088 164404797 205152762 252839950 541560393 631860034 621402216 493956285 429911625 187542776 626941200 715713028 1067284184 570792605 829079039 544042706 902913740 741559284 852768899 607863508 485261422 444117092 886565610 542743991 590244696 279612264 208017967 81626796 78376680 752808238 924897849 1022524883 248773099 686988189 332997191 161283981 1005240052 369728231 787076937 403743481 357057844 685929806 24082806 911341370 141101458 330887372 846643106 960314637 320846018 781008321 669373485 603751955 308559512 454678394 575162991 252523 505230871 959089774 447828645 193947104 543038849 102783387 1065625480 951413140 658889487 69696401 279756088 488834299 159968200 147727278 19385475 476594338 740594693 784665669 38688130 629544161 460524623 37576713 213602630 213672307 418890813 679322638 972219719 366672484 583009033 1062376522 202714066 242218784 363976601 594605068 285432099 750883135 344805046 284708397 286454440 166106861 352874702 345154212 645341028 324746854 97640611 68630691 368198181 610953854 129468578 9271572 756743372 827535160 373615836 347439245 877620132 394482769 238590220 715552551 556725800 906960347 964822213 466811384 320467447 706183601 558878048 43227409 23462891 506076250 996919395 162231469 828295914 153418654 247737464 902754137 658744487 823709181 671052575 30622337 45432049 971726092 1022927054 1038829194 860599422 648076292 992512502 526786185 204102720 691062260 505037104 501146224 303034303 1072789693 267056674 879470633 556423119 114155061 847392795 131552570 64586583 1068425683 736284773 958376181 910544917 181567934 166793358 383092514 304330106 108536842 661628648 224740601 39749424 1056512797 758744127 293113614 917714417 861189016 624740998 651426933 290289362 991997837 252057796 682816085 57172938 1035317799 1064054058 656408612 173686075 79401463 559727684 421021231 170266438 319643681 305672782 694834488 379456203 127199468 699539926 15867511 588243861 344555624 112822062 708048591 716918457 324968467 102407205 444572307 167526374 688034430 83789391 746853767 899275426 42784519 735768730 91481990 735050025 809849624 538317251 848869209 738698239 761994281 915022812 544042335 768787132 858706817 823437854 807536250 695072445 481454001 761527759 1007186757 332986521 827551424 56134127 529157743 271236909 429416874 392614233 191920711 2814911 525448664 1036894452 974763567 25429042 463637141 314888765 750878855 547204562 221375835 730114382 710643319 962540296 862788208 1033985577 367730915 788083659 699851682 12131338 169535597 514127161 124954640 356857374 387167315 530726822 234422863 826337896 399915974 54169024 893024771 305335562 199115516 539713906 973693390 735947517 22027019 764848923 323044801 1056120578 297802561 875248669 851498109 218731174 114351590 129478834 392872075 394507880 596976041 749244730 894346975 544733706 140203318 257138380 823654532 685965121 328004291 231563306 660600733 624721484 259033013 289307813 774187667 79973108 972639404 699616294 994456960 342727056 23694486 113126460 275081499 815230784 275475946 38628573 179072095 275992932 1031860117 593457665 553435760 349717356 153482639 32676207 788862187 665158015 1065601644 701996993 442271201 62566138 26704104 248737178 662675116 567005692 140333933 559700712 363435715 1003436499 578675763 1036187182 1070451618 248075667 112897203 909193293 41739029 450160685 373014948 98416144 405765011 1028054653 46066932 722199499 860846010 737959269 441307146 593743009 992446666 797417708 295881134 848715319 352099076 954258858 338448936 438451797 593156886 993381163 49474735 983676333 333893294 561286962 728044254 32253876 215643212 712651375 886316998 627970950 617141027 14663155 464808098 1072707882 1008032649 96305894 499512104 593302149 14871423 298590288 672705295 25320381 283570610 497211440 987657801 484524387 991683141 248787374 438799393 110730741 296519125 559113595 621074620 732003241 224479959 1036598578 384194030 740606924 16765260 789303779 976902268 255167630 434686801 940354833 822197905 342467406 846303963 496369686 216324512 751166975 1055164992 119554444 1048186027 874452233 639950542 46775247 762780734 623344440 170510430 52276951 17847812 844372458 660004443 54756779 1011588382 911708963 650953522 196757134 166399352 978585180 799894099 244412678 56325073 370975694 839067561 484515110 354835475 500295521 756071256 296394557 872472467 231693895 726795270 937187692 553924211 336898141 796262582 351358751 507072590 679077949 988249129 999414426 776642303 955291470 246871539 6075327 141791844 297684339 113947385 24070137 377004060 314722405 996638742 144537616 4104638 887605587 405545230 50652297 632334373 763441822 778515332 673974748 866336034 615696591 314871342 259039128 984792055 605225654 815959395 502245330 125391925 325663048 293585428 178422367 281106367 902979899 292124937 83942940 862377797 63893549 832202126 1002326086 297235266 220609225 378727010 402069160 2928867 560434836 520015156 415372476 110742173 905703100 278996478 754409455 403119185 277380804 363107625 1037829597 16418011 243803304 516953508 652409285 433990362 154873840 170141630 362292274 44517263 651312698 1011909893 812951797 319837827 153966084 411387087 940678407 76277903 309430078 873614518 321450296 784144295 191490600 455870601 1027336714 8796252 759679969 549503183 128990376 683554963 326436434 337148526 896483060 338958954 449993410 421728286 409133765 758512356 681068856 112867503 723346851 27295195 87000982 517792082 938895598 608683291 660543051 783231887 415293201 455909166 104549280 775126482 239709250 206133482 532025274 78344181 99814662 28582225 125259647 428602517 584935496 760243116 734774288 291654902 253522080 264588204 368288857 105153131 732444228 986043010 156912148 546993929 104425906 364185865 22338423 73799523 250925063 978773592 472285938 714067209 631329593 181574254 374563350 726928371 281236545 996508418 931626157 40461669 993969204 892289340 605215414 1001959688 753830866 296509431 216065199 425443135 143050136 310935108 867048634 157226482 1064927916 656873233 691317588 39683549 844166827 377839478 479750360 984584435 765771904 457294317 389669630 531678010 755450796 209372256 129152560 526182401 905790763 925193628 776506753 438900724 245036337 752409981 265331800 1009388646 686980795 971161579 426385663 743247381 227852965 689597081 291508100 1022344352 921351667 574420065 817843998 824075668 244406233 453927849 197461674 683657127 212428101 911490117 43013562 21657744 546027773 3905299 851493820 847456049 290147678 423542046 334524961 515154466 42496821 852558007 639548217 994620073 448443492 497721364 733984717 382054341 702577264 247439709 118321526 23878420 60404103 982138165 889713353 824585306 253536884 133961750 568372910 350815252 901611516 691572800 981218038 1025124406 832132140 230074885 859948106 488815219 260911978 311561781 1000081638 895222047 966025706 954192532 802200618 244411467 771686650 957431453 118461474 124664824 75486029 472929637 117671327 414721537 1043530660 568444332 638899106 713373290 693023154 805404477 69058951 11515394 560884825 525836961 82362436 533076453 191281949 4394543 278490009 1071438982 578315162 393947482 81043865 106812998 773679247 846277183 745809308 93699698 221290726 795074740 23098462 237516269 392633088 128549577 187526511 846519443 368948776 214542177 142344645 762039044 180360154 1027438818 818170472 817306665 740405416 908030355 677560483 132711419 965943547 28386488 99692328 212549751 495291615 655676203 869177768 1040594887 533536140 611017219 520083970 787562234 442911438 979874421 931066267 261947433 981568756 109453578 652549911 1057419472 162724033 861267254 576848480 978825569 926402487 876098702 243248156 323225433 765845555 325674165 734628580 30588968 800011990 422241588 899470431 968914287 190853430 192849715 550060171 457984264 509846825 470008766 506170349 573710095 848823914 138556243 309277789 233402477 120407513 692652014 211171855 248593941 96922524 385624264 577735331 98108520 756877386 84085208 90880704 410672760 960370157 37488427 1028362036 179108712 507811080 769074795 3709095 449981127 467457278 123073265 26460884 67814046 814374076 796725768 822982937 768639727 706535553 919089499 247134010 640185008 687638709 671530282 758642987 546379829 919728417 21457634 113445285 198221026 634883970 756560096 870191403 404285898 317641923 909811999 641908753 468075823 210737886 21456119 640992652 85209511 417683582 377659485 379098446 884437826 969786375 155558197 76096534 798685101 1060062052 190172360 311319147 392502046 841036388 348088914 1031384380 286649110 474287288 633448839 219652528 712594081 565312537 339162308 492741037 549796793 390986377 567292082 289638605 1061130560 258598534 647913633 903849792 674218148 565560599 719859918 288660840 129108535 832316077 492667855 95786328 1028424152 1027397637 569833332 949508795 436585690 580925633 133832272 542019281 387011259 370310553 897765288 462338404 81316458 62058627 957295648 123805421 1054114470 494169229 948973325 627850941 458499986 649010227 693696263 877851826 584936598 746949097 889849156 214113339 1073344217 448200492 132409380 599692480 713334511 434782191 381569382 346554634 1006175371 195888987 27744719 950274224 667724518 164919320 246489128 571514378 258699056 984063735 303728324 328503892 554629756 23221839 861804926 22150488 984687329 112117292 726808113 722342210 404192906 273684111 221927017 944441832 643608761 343662220 570203348 730776283 408783576 660890789 627324085 559434167 778323649 588899262 483255768 93158446 792365861 281648879 878467393 138534041 844936142 913850840 132450528 94403034 366903227 1060089177 681052121 571637620 91941489 313172160 429557235 438177751 307153336 472033661 774801590 206189664 175543736 321503415 324065953 434911903 460908370 293360927 337038410 238522000 863359085 670139665 833930748 953638164 321832583 1028722612 909128798 934522567 211272504 806748577 110462262 898372577 535311174 722821739 126334827 918249367 505562065 868972105 963281328 871106912 227463106 372717806 564833327 230832956 512027394 519180390 187160585 887293196 231562261 615445051 135699392 421661454 274993093 600291771 516817527 36489029 765695848 82529933 189649242 357506103 877512485 273951834 40291515 959965266 147642103 421679278 927344510 931249256 842999343 553203250 617025088 614285847 681600781 924875575 673970139 146844539 786991771 252267494 393253523 959830132 243517395 726183025 812256841 483402687 383767969 533383656 1024763365 143471287 893602809 954515921 98733848 288863946 592513852 646076830 802471578 298856510 512814282 808096405 888453995 789613091 635519071 641349126 829852992 123180518 990646045 667768469 215679764 273480939 874994483 371803347 136920857 108162750 1023745777 857110941 415434938 836203467 610636549 344297965 768596947 279119608 866798157 145198222 68267553 602783800 172790876 335958624 331492810 909538206 9688456 1044990460 961047899 429047763 90657875 432195337 580027856 1058833293 173901965 127624503 658818157 46204440 875440152 113989969 992151544 311092624 4989701 1009221 889981819 798337978 808008260 600404606 641121458 4643307 308045844 301575382 393963112 1063059341 286327629 640084108 37364650 698399133 293257002 104845238 169297057 109128145 536929461 1056164037 589604538 929735093 242956648 152133441 1047106209 238013731 970359079 506976346 515342401 615606595 1001963323 922328096 447570915 607803989 882130257 767233379 593211509 321659463 148728174 169484918 270590680 527287965 622290424 685023133 1038778590 593647389 215312795 238150370 1047386925 72638126 454427205 910804696 508572897 954283086 789910574 932806389 693221242 125030625 1053768618 60805675 509141264 1055058390 124738002 802981403 136626943 351987089 674778002 56565913 507485451 590506427 764521444 214052709 699454232 607183352 336591489 422621414 413335488 709586066 755083289 165224755 522780681 446978850 176666002 926675807 121574031 434385547 437928681 451269127 784778162 604387565 567861343 532224993 467459108 746386533 224187813 1047856028 957687308 986810093 247210935 136157493 559330953 117494979 201297720 87316561 7996891 228271237 391596922 272420502 230011085 778962277 888729564 168961257 550742061 328616911 698929016 200404327 837288491 521275711 460872606 433612194 298327829 791143071 881555308 640409076 883845322 510769667 115124729 540606000 769619147 492971877 860224933 732011200 523582247 65137103 726532033 965473004 381570328 195690853 247074672 178689287 591839603 942973903 725986511 409720465 21445724 5810739 493868047 582332511 702012481 92520735 363869476 629904902 553245604 769855204 268466883 651110789 388004078 586192907 724162555 148991213 1002241353 16312332 363998400 754186467 642236844 27489412 168793693 427107637 622405822 1056329859 546885175 632140824 631072175 153154735 586388455 254179865 591391284 423994661 4498602 676985097 552634771 368396271 87376759 456676168 886903186 290935234 1050064184 253667379 194196583 977853199 538495252 797112532 625746437 164140138 291161915 876367153 644114696 631338715 379538255 542382493 430819323 906123027 206013555 1045694113 806479178 935722905 442099767 170987752 845944138 817106160 942786569 607087620 780392986 159124482 984923778 168918074 1001074371 18040443 970911510 334775037 454694236 996853759 389443375 795856209 780508444 80567677 462630208 1052884117 683222972 236614978 70176549 978724056 34308654 74952564 231499069 1049837363 538825279 738585505 515885101 440159037 50099467 13403254 806261510 589085264 890248167 670726942 5453540 536358852 846711389 214840232 79644303 878766213 487142550 795867353 899971628 342962666 168768691 944305815 30948517 607707964 450451431 407259291 967294937 535707935 714001792 925013712 498431458 52141514 75194822 81072985 473358830 890090211 309738602 123238815 661080559 131037698 408724633 838712103 91714577 769430707 171794119 1067145959 74055972 804544353 640077621 381270595 1034008089 989662078 370596738 137569563 408834581 453257384 713853104 1064321501 804170050 330815423 423458934 674452273 88551484 775670519 882668176 336605447 774712167 804145072 795993279 597631527 931034609 777424312 891206459 708799244 439309836 889476602 22841083 818034850 935945928 330740672 865726167 488449855 900242596 998856435 559012687 953616644 916948628 88100324 1013285204 444689633 196530137 150616354 90288403 169828766 353734228 568598853 898636648 357253440 205045974 593758783 983070466 684566030 880612693 73543924 964176247 85196140 256090675 93156907 595671603 515346662 819493321 527465754 786035518 930911063 610313066 356419572 803377863 798614065 2199802 704497280 432801854 1016987138 372317845 888457531 733367500 1062442657 123828270 555283713 264214474 849159180 841645571 217978801 823191984 806814058 200988163 839602241 664199873 958398170 991558048 361125470 647508113 187968696 613665912 598350276 167690926 100297801 531806981 313688475 975183633 410004072 364809748 1068417534 712307428 123209293 85395975 451038879 270764116 616844898 1051830689 231861968 888547387 330019468 570903671 646502574 944660648 890743139 383792684 668821483 251102938 732966874 316376311 861238798 539631977 362498224 923826965 976070205 318510034 178999180 56489897 149721870 301814545 813532414 346064818 407375804 975376385 300039525 987239932 18061492 715246988 929367968 286710847 484792421 297032617 710093235 673032155 886610028 934936772 563956686 647913577 235096816 1050722921 394895967 20018759 1028836908 108018372 221440612 435529676 521467629 26489872 1006262720 616999274 965648399 378192979 990008342 54301076 95408356 959146710 196223773 986484697 340702736 322998923 802320175 237944141 647990046 76205415 525859980 28316021 422105492 453272467 814740237 302131902 561927902 752313014 21919745 972706709 611133603 620256970 822195068 875620199 22348921 33158638 882762977 918177832 523997383 1066643052 706295366 299266182 280213174 148103721 1057298423 651061755 76555209 466760357 935381984 640812868 777746175 778199680 981859002 867541361 814043950 933992024 543427746 851170170 513415145 784144934 387301317 3793839 363682398 978758184 460857742 703293198 785504741 1031544909 397075960 131733375 823106474 877338865 404933429 486116512 68092657 579169083 386042528 521138043 317752781 967815726 956131301 391793481 482341124 682241887 434766244 641057806 890608130 485612030 256424416 1033008360 103022698 977198232 650887068 660412419 1002137156 628492350 173393771 768664026 145104838 976358993 798628766 940570143 532495305 842266160 278298089 667660423 205295596 999368797 978784040 609460639 84682118 985309032 642332964 414685235 147707901 11226751 762197507 820297236 947927063 242163612 987223348 311824956 106999132 635946316 618759428 662619591 457442186 860231096 148000081 604197191 696924486 1041602811 362911248 306642504 272486350 917141491 800766237 904729092 15505146 723019080 937724644 827520536 277643069 470785130 810274644 462539116 708744775 527051054 732954581 320593213 531194872 790698892 338245053 636107248 638125078 47321219 128991010 297096893 380631149 1030403748 866020278 946623382 724115792 528494494 1040373352 558047561 976603338 206733240 966203945 24884101 746044508 120163561 180565924 590162150 333209602 842400322 854174835 1017661038 947520202 901956584 582602618 85706449 378360027 727462894 142326685 24504103 490109993 49881911 687884229 309610935 655079534 250888374 508675601 786218444 23509400 464179078 209403911 696943544 684704318 364480512 953104165 205367254 214556453 436762182 534416647 825368402 731406816 536391413 168938087 670935940 215192822 311105742 124902460 186214151 79232622 486221462 483831763 637983901 236349436 970380714 258607576 775664612 603838212 277762589 602900430 597783590 298519738 753134048 1020041445 272309937 37496531 1037873604 744202557 944693194 392628418 531717377 183160420 742369129 360794409 787516851 862278143 596983010 960981577 36139303 1003314769 612182802 1063499478 192823283 487113927 85613967 413127285 709990465 11990627 20439268 705163258 720575380 456446389 482607085 757911321 193559436 152889296 126072908 956849441 260802209 522889463 975921097 92977482 204419490 629540037 835563236 65092038 92345008 724019607 417325485 1040876250 40620613 506525229 956579898 595940047 631937615 751191539 838277851 818717357 698603856 391166161 329304699 228897808 680194979 125336378 937430179 655952345 272808767 733447928 758703163 885670174 860402695 570325087 238835881 466095371 790829016 342246773 680087672 777601437 906599979 69350085 343639074 558574549 702484304 458950526 704905381 367125889 819616934 896675189 824791305 494624201 185141531 287931437 500104151 539800327 328824927 205851578 829577539 211590087 655392681 463450198 1040598281 214752904 333872545 121139242 47578314 829921515 753714616 708332685 609407813 918206904 804753326 46747432 829996464 40873694 779731825 1021262785 346209020 969980130 1013336696 369841435 195553043 637815690 770737401 117782357 502879580 498943366 1066871638 12610368 797407537 516338348 90303502 331201031 311893865 441011075 112516687 715462975 644807861 666859553 1018258932 883897721 741588510 412898297 310352251 535193499 527481864 641414276 181070970 861557381 808425787 609333115 673921576 576676746 116017815 547918084 144227402 714011151 956365890 331681100 377497365 608959761 111872180 726621338 258996956 424776123 868106071 620856564 134117995 400159727 674839982 378301088 283820056 675457692 302741230 264002696 956522267 165017546 1073006632 498959981 426214258 51515811 254502475 1066022950 553226127 198431137 139347897 338647977 397088299 878511706 24461341 928211979 506114569 1007544894 351837419 725885686 41995271 385078310 765761617 846597993 194883550 393087699 988699325 984565988 384079343 33598225 473971832 11730634 250730304 232181449 766552198 1055367784 139246433 276055220 642376809 361500183 576394550 36513619 423097702 73804075 750973921 663813490 757912896 968851041 1042824054 252656876 245556391 576589207 590962879 456729699 659336073 429630853 351990972 707807322 402308952 712547112 539497167 313423076 73346956 15724258 628565875 108156823 821585193 445541618 916216871 892580227 166706419 623389669 380436128 379713750 481653623 61689340 180476695 456800377 983738195 333049679 801628963 618848021 376856090 346746537 256342938 942115024 245911295 141599185 927722757 625769098 776526007 364949855 823699112 36419818 276114266 332073823 465245475 6186111 508405323 1047341315 298636371 31277416 932735190 513148885 541310553 407486421 445612677 244085138 999828852 75725852 880556303 153003608 340119544 44642995 138782406 43348226 829304276 789511508 975607525 462261278 613542205 321224907 528367637 1068918524 93816145 623760108 983947686 817583399 64706943 563596002 350166589 222206928 39387997 81704016 956082869 1052967256 20621405 288018983 682644458 139096982 803052044 983898118 308688157 529067867 474485709 670784689 197762573 816837568 943597011 596399018 336814545 168617590 411790660 979471436 359455619 593265965 139379913 1016947897 422540290 885157674 961705823 158213524 648197689 96254244 551763033 1051870996 662197506 637505340 685782516 105196936 960622558 637300322 44537277 922549700 1010575431 478304651 289419391 906645478 941667091 825307980 16132478 538824092 118891068 326233589 388013393 524191993 311395582 426918509 1026032487 742824717 131799829 593766112 492075422 493313347 809207995 667831537 849032709 288084753 820002040 827991931 806932037 684281983 255763047 1008437106 506673023 1103020 863680746 955767523 587421298 502499171 2373930 69049680 540126444 526042902 636679914 393015401 112461956 775690176 249183882 35409299 873011943 149900510 51974489 79672291 754963751 589568863 362162326 920263607 52779513 134070343 504187543 859521071 327329244 199658727 390685939 1043807570 899453610 701635931 716228095 1050309752 63544032 107641579 679844240 411007388 462080051 917688965 677500640 443224534 1036495452 252835201 1044127257 348760568 632607534 929746955 820519387 467085385 186907079 233480023 13072353 770124125 109501580 211515005 1048401608 602631004 823211999 820152314 554213657 780031011 864247665 861461977 567025445 345130735 19261093 507949468 518090272 151061520 610503290 595932688 231694980 403058601 316710746 380034361 503707445 576994191 327424791 157643837 279312197 791940150 568000401 209292815 303180375 508672531 526329333 869510375 715354445 218786049 850029801 854651131 641911684 337822174 55452189 911248258 284775889 122202741 466129592 1001241181 695261312 732977302 480489624 493424398 642119921 181077432 537961126 756876726 696845388 398504974 435935442 389497650 78313010 349047406 230573776 991767173 768956799 126136400 948665430 934631195 956514985 762487090 766284000 61542738 751167538 1050406083 128808882 557575967 178310905 531002760 355656987 692090447 510568193 859193628 696266997 519556222 863327843 796858449 259138985 816404810 204813264 42550257 990885549 946151887 961819561 103340922 194981762 379793348 463352382 765457155 33396068 278314003 705734555 357885378 50644429 627179631 1021734787 227467989 137320600 469152029 336971326 609448537 720725121 373271725 513033770 832139137 269200578 298702707 217139934 595311104 438272197 850948638 945383689 538631001 322177662 151067794 396781552 566196248 168333012 759163330 1044089611 466713808 491871839 434804325 96832345 818613509 881404366 572171925 200839037 847202512 995770407 858112867 162985736 633161820 968982893 972627124 580628533 440916962 668254265 207394983 539593606 795577639 674866790 578794409 866994528 600097740 656284721 391795804 631335933 532867128 943377122 19032740 226042311 277606413 222838436 228382015 1072369916 1012471136 937475690 947958524 302744772 506466799 266258610 445764833 32489966 389229514 237267760 616908586 401115877 269207446 1056998509 668411652 302811702 279562076 635795880 567581293 88106460 744048082 364669267 139854974 513569598 240496719 587510172 1012184013 907684142 816889192 768619387 944007661 941464584 679462918 330355217 756971743 956990062 38264747 961743975 1005691118 268713944 686090481 325958775 979440312 551798730 575482214 999349748 822161621 7446584 690409774 643859265 803036761 581375134 860403157 125116319 801349746 779748249 439657272 439212948 1037399256 933320061 98588112 772515892 524309124 947510763 409029076 644473887 788441641 839397664 117729614 884637966 900744526 20461855 283295507 741643421 637179527 764732736 557983201 198015244 779066238 355194959 409794761 827551926 524980484 13496772 464127990 277100065 163620031 801553723 1070387655 68082469 545631616 621689989 198861254 1028983102 38695400 496788132 904256275 671967042 186832270 1025556151 560849456 877183603 543491186 461199406 702688034 103397480 422156347 127988444 18457277 972016987 336504495 245430270 149777553 936796149 542574484 444765379 330500272 522118261 174624436 280847175 1003937031 646941049 239112567 480926727 222319595 1062717917 562099486 10262843 1031034757 924421024 98233536 1019322183 427569861 209980602 430678339 641580497 779281340 807125642 511674425 356284764 404969832 924650433 376937151 1039375590 1001080511 471195528 420919350 843581739 542659971 444840152 405201559 729597930 651194339 894536474 1051519565 567751209 1051016229 21587834 670162561 533258300 739860956 1035357922 943905416 234897632 550956629 331056624 375672536 631251043 827882613 970430868 307236709 349498061 628918807 662985610 726562966 99721150 362296743 735729242 115891148 786631587 789036231 894045316 31692374 587392371 262394209 565924255 1003688480 641332687 998260565 208337168 251782603 472432324 518121081 809017725 625842331 916590092 372751906 691079771 443459854 622677641 377243841 812545582 154091908 837056665 1064041824 461945017 625361730 939044637 463681006 42117082 281323384 639936517 259849767 434181834 31457441 189914932 601291488 1972481 417302618 1035056583 564270821 963347019 400694719 855338107 658723256 459186297 703120157 132816569 594929252 660460017 670633516 795807385 971820290 316949056 798296469 3845248 752342599 583193053 704521709 698592260 427100928 499983486 1005829004 105435853 832154109 813033822 351585508 287308212 782014359 227561944 418433618 980203505 611165532 30142124 521333841 614316482 105335119 494807434 633816893 985172300 63242108 389537872 535681754 730791109 370732752 139347268 1034243403 1030554859 154245648 359686409 582783497 366804629 929851678 316985763 874580241 166804176 252500443 677673214 490071189 705986606 933039758 214632646 434446271 1030679101 595737498 728788077 149301606 748805382 1065814396 1015890057 531920074 593780306 366358199 353200373 449478801 390978696 32560858 738945844 995429418 862541775 458165281 33648774 634313198 75837608 971344304 217325147 577170397 600440378 87430436 855629445 427418033 669640955 1002176184 521991764 259968860 184888678 600013875 817438644 755080386 707883906 642927841 366955343 1067703246 514894110 126508795 727709954 881957900 460327523 401943592 366815551 1038459759 20963144 627318364 128425067 530623657 525681944 747556986 81793730 2867599 685071741 796970877 58569259 420442240 700789761 1073590626 506955542 1021768030 382733969 704181512 250059752 131025062 953451718 333845280 387425473 149526296 169213922 926649239 543959552 602736282 513962317 40204759 716347504 806628323 955718922 111015977 809019860 565229667 151892768 1035242941 447526055 516528781 541018582 84994849 1033410376 18777178 304234858 586477474 259940179 1017194386 595037288 894909064 143936382 940504019 994737896 835492917 124053869 746355615 330170473 96142727 416718211 322116269 338835984 924672508 227896121 284254063 474786003 434975225 892679009 520690968 28551328 487266570 807995449 55231684 871032097 172202501 852113040 301945726 676153418 186703109 118416848 826719491 725464671 138776976 645501048 359465937 868238252 767344561 226446689 525643685 1006158981 573962060 286660349 875546928 576979986 21599243 48027323 125832375 474448175 773006459 674211640 805447208 498732004 190518881 253852838 381659854 282362974 755551708 260281644 293464952 656253842 224744178 614733162 473554806 33976407 168582623 74982039 1046261810 293997178 475719587 920961758 238446259 415131456 850401091 567936763 515711758 809242554 731126134 304287260 553921275 901327687 60451833 55764569 394746004 964160476 714508389 439088361 1047418456 973581074 489536668 37525032 638365989 947103072 585332943 247353888 537180796 831164234 39783354 27299614 740928137 243185980 847329199 283609060 919321983 820957278 498449219 677799495 197912486 239348113 443369861 1010129140 539934790 990605863 102979550 65199747 1032756483 893024355 979302337 28294590 899291806 960487587 198991290 663434930 764854366 706694188 686039291 332675142 97088951 595216888 548033574 511741804 144437890 639710055 424326530 156469057 537603961 817084476 167566545 778308753 131834593 156699691 563939406 880409710 265424072 269930027 888976465 853789550 781277687 149304206 308802346 435463534 43714782 1067165933 797675194 482591676 522830666 1015416698 656012967 112550479 179615201 8746893 565499046 250083995 115475568 79396650 214161088 37277934 123912168 585354582 872386016 628959936 271078948 753182072 736545724 1056206273 580304228 239849301 101951793 510396372 835242634 378720984 959909675 670637622 930380157 490383868 607484910 832833068 19362028 411390232 154631637 1057446129 1014736795 519231874 1020808141 1048800533 622281715 313177523 781893878 710277256 226623550 401559951 1040674188 1040741531 59245273 390503345 487290482 528140027 71892165 956975886 916093359 184822376 750343949 373474487 957274013 630532643 615795613 909085550 777603730 781583885 962030686 442760550 568170631 444949659 494284740 401168428 849424370 290461764 234303612 768549008 156072574 1011133034 758081174 608383880 76612361 394483605 760254094 236263386 770107833 868499876 872703249 511562467 231054756 855267203 719019687 616553444 660348736 536106089 254183236 289291300 951566044 933622173 829177898 698513820 21514332 331954830 481112271 16823127 22190003 984612049 417844689 274667119 1002797887 107202590 820605472 455112982 925137641 474252134 421348706 22170938 302702774 1032615526 390917198 504966959 970748526 627419376 798980860 314438014 817487985 80975088 413643463 624001316 827340371 263061379 68043508 237359873 183744116 808489033 436262700 740385355 437974893 551947115 869901618 184882188 262978398 1027150140 803943368 856814002 1050337248 976959073 124244135 228525874 919230386 149005693 1042933045 651939587 1022534673 27467128 949610951 892295842 482257730 153419653 755240291 459141904 56278181 961119970 865331599 970972983 348149855 113171943 578414818 642788171 229297464 776741100 501754800 476058126 387656929 864978521 78452227 768030672 1023221202 606588081 84205843 1032432692 670792913 259617834 531618634 222362054 627372711 368860861 649650840 990565571 472661904 168664882 283082389 605871876 449116630 889402271 421368739 1002744403 285739665 699978253 456045818 490461123 983391140 170634393 977739932 757700465 900672679 531673288 1014585826 41277233 360609155 746034211 526282497 715860429 907271361 423638356 885646746 725653910 835936578 138844640 516584288 852920199 782721822 591059972 742107122 496100490 16881580 199889750 681416049 436535273 603826197 743339058 398491602 799096443 651924757 384040309 756560679 177328743 43802291 972979644 891734691 503230773 695887424 672711033 953359682 1066166455 1016562143 839728494 92316943 504113522 189028633 1069647583 379706586 482839753 879781572 889084649 1036935583 808382061 924985565 907052276 758313755 416875652 265351027 804542354 86919900 125545922 894282006 344411638 402556032 281017766 209011934 518585655 678985736 54748273 196338970 487081003 589196826 574993642 34573058 402745859 537120114 861675597 30722855 1024800421 695402743 522268195 72343073 223901907 654294280 350274113 378203071 158128753 141734974 906201209 693308100 447144791 79048177 599462433 729409977 284309694 891802014 362466285 18230442 600329573 5604722 46340161 314060188 418169000 773048268 162808136 460106879 184980317 909706996 348642949 772916377 236178357 172965597 86647227 242518247 526752617 963136352 427285668 720485435 50893702 271209346 354350888 815336814 572370108 544463869 79185659 134546331 871978385 435617116 1067367580 356822525 98431333 49895803 194254548 207002912 176602981 1050661600 885012488 308335587 809095038 673444993 884249400 465038069 319791254 816227730 578734057 682661101 107695255 418962796 916477249 377934009 975104491 826635786 138683871 800912414 798122242 631230519 923298356 344323614 844164153 911897686 682072288 826384109 193687402 387938590 41526869 1060703469 293119682 614691707 484213909 809577509 983809879 533291012 45621361 798579627 46604497 264329232 540340030 924500065 761653561 9418495 164441055 135311713 89099296 65974963 396317687 385664358 718357682 619231392 363413884 763401033 966278230 1047464610 920594195 914174291 363118897 29258797 398033375 54401082 820132759 301626717 990509332 930218399 711866810 284099772 78996321 367230273 483235907 708921265 56719774 780759372 125303946 636616756 707515341 898612344 14566723 157916486 306237231 11776743 947238288 430738474 133942783 491721201 512768101 270621633 565767825 1013107604 898793385 827697642 780137023 521798122 480654020 10889695 94147799 878189589 70202092 302703399 249051256 209081651 551349271 547485445 132168050 672249093 721466547 149761754 87785943 276828087 216141302 631305718 775828420 1004878937 429136848 244403013 1010410865 992886071 643915981 303151574 660815891 248260936 208818160 996793831 468057263 519753256 222114969 682069634 1052497759 749004032 1035105077 1036576540 327302102 874560346 706230627 1045357101 524748090 645074107 8907043 877823149 779335760 571042557 173617946 175798390 213442118 495265039 850227287 867187948 692914247 602622099 392715568 424633657 878361671 974880792 631828286 780348870 221498757 890200799 773855004 770904193 834690864 233141849 894510880 680565061 213808220 708267583 339752021 499674676 591559615 1004738327 828289926 366240433 274336198 757990112 710023758 914394876 407401571 166146645 206576543 838744315 430619447 714309011 609240990 446697522 669831397 1017190173 452534475 179252023 444873587 690495403 87641992 861268268 344245910 735670086 501561613 384461780 488300606 485639460 257988096 227676589 571079333 190739509 772868693 504607168 378580251 913877066 920818354 313662207 489651301 633302835 965688308 561206805 997064766 937368010 1036835354 64880848 12374261 162367287 666268431 27731387 160061207 285113870 857212992 504254748 102789846 45818815 441295048 935988764 281318796 499392186 548182849 177011957 900511620 282705629 389818226 10940477 241743118 184774338 937701665 476921760 996537214 347693708 357610795 10958215 215955359 115071501 597688488 371715787 282302096 1064985849 501751348 521924969 242904549 340028193 776808933 918473313 274172519 206631825 347695421 328160144 698415673 1053878541 826697655 89823964 41248874 814457752 285348445 704986026 469424764 883071934 1001935259 338508936 403734325 286485903 73282545 1027456856 854821874 155529900 374682628 473883600 114535940 592097067 124690142 38389393 887822392 178530231 1070111216 29021746 1040464052 341437978 65946684 1004063190 231226116 807026404 186389156 180659133 123566692 570025790 909340407 1043040011 834795873 1026644470 38557326 672440688 693078666 619047523 286824906 829787555 333262630 252766990 814188126 583874620 953909543 74983195 503933499 816235741 37530914 136729076 8477853 3644529 706688327 513599664 167163545 264928845 248091630 208227559 29935516 772985828 920365616 426385750 56007717 158070936 675033626 511686482 514188309 903895793 767802479 576728996 452579755 179833667 539118332 713441584 524659041 767720878 369078286 381784324 228779568 241872129 59145930 638891263 1027297876 255302500 802024319 151582699 318954071 115974114 26811568 438928809 179155749 67276485 46352804 636076816 562168912 652207458 177453191 6135119 1032772103 65693289 329740932 716851400 274878168 493694861 643185121 834561823 614326143 326385132 753104920 190183157 811373369 59242437 162662634 146731539 873243759 312569499 140228591 257236831 67495244 116114977 508564853 578045428 182447618 177171164 350950669 88266230 507880104 1039802796 1058035961 805807259 415301910 733756040 757827753 319384058 599541087 438392751 336807252 704675983 356108055 616558472 550578974 813394980 248831048 243926184 674575129 686439721 396873934 946002350 169355857 682864378 1063813573 411967829 179717544 386049581 240672104 179849378 87074620 488802713 1004766264 916462644 868480579 479183301 700235494 245003363 612299929 354315773 660656342 39362768 394528825 45695731 188514916 113410947 313990598 669233495 297832294 446335117 734228631 510311696 298486101 1032170148 541265894 89558149 608678032 705806293 603532724 292448511 57018226 968069210 1005533089 1012225794 660671352 246979107 738924173 46646976 944544302 708964543 1039110798 257888741 819370638 159256451 237668055 706345594 485048189 957047512 755206902 956002708 120531594 326843707 395982192 991975353 250488518 124272064 877049880 727376275 107523662 254488238 815537779 13662046 1017185293 1040873406 752643656 468301758 99198622 383911305 549421291 39214599 702878249 475622917 131737266 762460665 431737225 1050696520 651962021 103047093 850882449 186795055 884355481 295287008 234345406 517683107 997325299 1017603720 298935742 503218619 1029643646 732785465 132751317 508227086 515872752 416354455 38044641 816874571 1067477602 796914237 860399945 1068449855 822729245 437704465 61761923 468426771 69467069 766405522 697720117 178211174 539402725 147921023 1035635547 238259939 702562654 534564385 326998022 843749106 601064537 579780832 776266302 738763718 118657096 906221864 329609230 501211529 603101643 446972742 534275510 996136285 691194706 953515981 512565192 765043618 658524183 1051563469 135061933 529091320 1021096554 244116252 359291192 244470148 246994203 724785449 317372176 528580307 107533520 629515793 917442828 299961589 771303348 357266285 12880073 661644124 627783768 547933597 811834831 174473552 468987637 395456608 298787104 307576836 240398563 940234759 1006967607 617440589 1038212523 569595415 236983113 798118181 364886279 782930176 530550683 955062412 402744456 958796179 123053060 458322600 9389500 896724014 121233680 761676661 1044439475 311998072 793795876 540759469 579313483 641088668 1060527198 183876748 953652338 602938182 485916006 538470472 542437240 168368654 529753963 688562543 394681101 615244785 671519488 913589804 34545092 199716951 671551346 682098402 630153509 550683374 681686240 228045246 78517284 72165004 15015735 554521933 858651935 604621627 720400107 92975265 224486017 97291637 771674387 798592458 563124845 913815732 379124546 477408846 574115871 156625007 973055055 410427752 318163885 355752387 942374607 841271993 577641271 33277498 563653658 80498376 891317222 628272400 805528788 193807760 91787730 521737023 906835596 285379277 817873152 32433350 951500368 319443373 983599678 223368466 917375937 639980566 260668692 516891450 223317900 445986733 1043995422 1009222124 2538510 1013728635 779157459 236048819 203822871 289768039 640324010 766201511 841430917 756894166 82372932 951662191 623189815 245683765 386716520 155870348 189107613 371276285 873655395 862905698 769494894 354837026 34951889 837498785 259743734 30219018 437523411 476027393 422272698 468824231 275902290 1052241550 337109126 755079919 71250029 487461987 468715302 711604708 915009155 849433707 504899909 195668841 1045730583 919618817 317888968 477203241 255049554 798354336 775386632 559921887 402492576 522237502 911587757 680871453 273120448 396614362 1046186016 360835172 592974520 470972609 518663327 699240915 36822290 819154800 506308914 18413749 91722052 557342332 257346564 61630124 92377314 710868673 461293361 224488310 151430561 519857423 13318684 315225707 459659073 568362414 462912596 164101843 524180772 431748131 691224392 195558128 17416758 544650654 711544620 270768574 716057671 48056885 42938506 1020684216 868747602 392268194 1063920385 515510006 39799217 858382985 117437429 853736655 966340224 170385677 381669749 362108913 412696768 46470449 447574280 690602858 854359483 210290274 646131507 217068012 626712739 392688193 550952486 624836031 533469096 892257190 521797139 171099938 764890491 877345152 556060413 1014451386 648808487 380790421 679092259 543804647 464746251 835202567 370394470 554595851 157949835 375581185 183694442 12736980 394475622 699933596 433272453 910533128 507399766 564694113 754267491 984633356 515921018 719859697 1010408523 749022975 32336841 68716669 169222754 33507751 731052715 955016556 636748637 577496224 594949035 834394996 91363993 816802254 672339586 1022990752 269372209 999290512 751782210 1045208047 538761537 669247091 342938741 793387126 241952808 1004215749 954807975 8284377 608713601 618777165 1013408709 163113038 555512326 571194295 20188407 775645350 729669529 1071447642 316515100 698169673 282530506 752275838 986402648 372892909 674195005 572804151 112414862 263018626 772299792 219570750 1023844287 939231074 1040859913 657705802 1038318608 389811520 72712459 573471356 164888549 264482682 565733562 451407972 318494268 674182796 866755460 682997722 684391800 663630301 564016401 245946299 849843681 801954049 435456927 308401380 524243864 129693345 440868072 810258947 84764491 174095758 158812497 590555737 766857886 68314681 742485670 151753545 942719616 452160993 408164098 318805303 961457392 879656104 306271532 933468361 1061140766 766664798 717796909 342134576 468877560 653445235 688934802 652417636 428692429 91667016 347391347 771416226 976896506 1037982313 557462045 208341120 248310124 708442945 274810025 975974441 125411349 1008447692 232409511 1049113517 689580603 485502026 856215921 1063467771 440063629 282211962 926737579 336008583 384998317 391251631 828285481 953577207 107270547 688689329 114692635 253347693 210094281 736897911 47887535 426010509 85963208 848380717 791021900 802283133 1052445783 511964390 15433437 1011454255 94007248 767925209 233452577 334363456 304412942 990188776 613810073 914880137 66461016 446940108 65709147 953860815 386770411 324991110 882766814 810404812 459192795 90666095 479755860 865220296 813371413 838939674 859323618 1029511211 473318109 581896519 480648470 799111017 362675715 978281966 1008566884 372454740 137401720 470176781 845402450 183368541 17932084 572876649 602031201 792755519 814314209 207363354 466504858 984191844 900799041 1052648335 352155324 254014348 716393880 505873920 370157013 168013539 588859484 630471358 389877504 43821182 298939321 733050070 732217595 1020158535 460214137 587499839 786508222 594685952 94310699 152193753 477956750 122749829 823421258 1071692835 584972117 274334714 16666519 261516868 95509625 657289515 838923000 664853216 70432014 504636316 540219194 392103031 23358652 37714929 887492462 818404225 874695081 577950532 923469040 588265277 859674834 1020547120 655881448 461118169 655814562 944566540 500512337 616815234 1003392314 825083567 560638788 193128305 24533151 344547046 777141257 148234455 800333672 373951946 294825624 734213421 202443588 365825895 417063199 560595572 446803011 754979348 341213507 730206916 600918292 41247485 589563426 417094936 77194173 1023321836 738619336 290139562 444442478 942557133 896135889 893620248 183703815 512691063 69525330 694482786 100664682 5775009 159661582 731299881 1053112622 961074163 827324114 404684507 30871121 232739671 465691221 439247396 566915751 26057186 200566687 709230953 151507201 226330957 623578347 420267730 239535799 433166214 294189807 238138144 576013542 18862185 974071838 113882027 319727866 922369616 228863861 840807593 716080883 152634221 743406077 580390204 737238195 1059690774 709238520 478441497 116432297 755862920 197456557 878120450 783021091 1004745304 133128755 1002682686 610695760 894503211 417085851 343430492 255278369 146587725 684234287 293276042 566642313 502705748 795209520 1058363669 1051743553 1061705344 841170855 282923652 519219476 712394079 568948882 157547724 417399595 290170322 1004312040 656218740 449951391 1066691912 628570409 565549074 904935932 434537755 255401180 270547249 510445211 745948434 344616726 899779376 1030116585 56410447 460668171 855530614 790356604 656633842 162322054 922742515 826042822 291342743 915771135 1040711219 739449479 87592192 223495757 697856977 651407057 578035745 92584256 392102932 634730668 322068688 119618252 488431554 282163378 114460140 610725362 836697021 570136428 36698415 861821172 244047089 1014316871 704712035 242037082 980637353 968266877 1010083228 368035260 514038272 922560015 1060013308 617687223 179816776 957293008 970469856 265756209 698793447 596843967 783432827 164940327 382385753 836333616 361771240 624814682 810898493 936269234 1020006470 1038024945 852202709 933539495 336268383 880763483 1061027061 613354589 957049127 27831406 254827495 206871458 386181871 595709469 138421074 622293407 631345728 919328251 138731970 890570701 782889983 874197170 20009924 647006338 770156377 131942689 905558377 643851010 49183797 736930801 569904128 560780767 1042589928 685458048 1049575278 674696842 701019665 1050734950 947887177 388476773 1031383995 366219170 14127990 46127887 377832069 728912315 14647109 7007208 574757871 728631661 452585786 1035949887 331766997 882838470 126502499 98822060 522382432 914439787 1071650418 948258914 261625976 340249418 472573086 200511618 115246481 913228773 760826048 234321895 542887959 178080671 58187977 529617804 1073468804 469275199 620980135 736709340 916149605 441946514 169477955 786689216 304278712 1003442208 514368633 111738225 57128965 664357900 942125170 407137859 656127256 98126378 1021912952 402415329 295582292 820639109 542228753 880948419 668934195 1065025289 715906727 830071751 1012185864 292660982 594989389 323954919 490824812 226201124 481176403 1037514395 449113430 170601725 796983672 102095723 186468127 750562038 344950954 757433913 220188292 163870623 815700323 82124811 322374973 629842929 288022925 138511325 213049252 484698745 755175904 52415561 1015204302 141276229 581704823 580841049 857373824 753996379 59308001 848754331 694143742 823686722 80105741 671183406 944902993 227140965 1012407143 720999742 953589736 154890719 782469921 152951137 284084374 658886479 121377320 674062197 762850119 632825289 1010932804 233730802 824632135 209753347 439239389 694729183 292685387 464707857 918927330 616141710 1039324556 1071005772 510892453 786511261 772818986 700119530 238810967 559952634 458711918 430249940 158222971 843383644 377817089 1003779056 381783651 238939884 633375212 967832951 150979026 878102807 36264290 1069136419 987213027 742098566 864293642 1031845695 346171352 140401641 634278134 1059398391 743132878 57630845 644847596 1071318299 525111534 951802058 834595769 219570609 896391329 149520208 467602927 9650924 726213779 524217024 124526377 367758667 703355273 872975194 919362009 814525003 569506637 475847427 922511978 608170702 557403086 895512452 289386853 861137457 959841208 725417908 755771360 280346839 179232337 693020077 440872795 302533876 42628853 913687928 839238315 697502846 552344935 899580858 275554402 396268330 779787768 846884164 731897279 930663289 842082425 150742610 135632331 980305305 881046691 962646882 869962227 746532675 369501022 512440381 598810453 715521264 447154230 179823394 46038867 472075361 74650535 86131250 1028322652 359996599 970447594 874735671 909875713 608483590 538373662 890251834 330830542 600146077 553790777 930440369 475366134 471043343 914274460 1043570 818087327 17516321 143919369 544255490 639055472 403836508 157957994 966832618 585250472 286856288 923074827 774478577 803776727 309033090 336253575 615616673 779967696 438027515 663409302 72855222 563983125 356275442 1041777377 495365901 66213407 999250835 270957524 711672999 700434925 376268246 359620734 673579255 548018481 34899689 575698 605338116 415427013 732162630 925794737 388944646 735693631 129603883 593518476 648320959 542131127 665337924 501748752 131796881 221654697 459233501 809537083 575813066 365941203 852820680 868344043 1021592692 84810622 531826575 706984321 868594241 852843798 80733455 886096774 310876625 1066024204 74847346 876655888 891592060 746793282 756351984 508772501 481824384 399777037 696637600 556551259 714414802 848092737 1017819036 383825240 98676738 1058799115 1035408721 122418476 113854952 1010055468 51369400 994910371 876547163 1070115152 888201867 990729812 105677552 909520863 567576137 415725541 150441806 958677792 495774062 947317254 284309137 321695479 674074224 842938978 42490757 7081812 673367688 886603032 542439354 1041579884 900359916 381299557 1061416400 473860035 748519504 145988282 815855229 26281787 842566791 96552692 367833079 30091326 1071236297 91649959 1054282029 824069829 260667693 127555596 80149487 605217253 642759533 628813894 411392085 315808617 370446727 49929359 185161844 95758230 896153968 918768288 254691656 510933879 83534963 668352490 705248931 763528122 160839945 551979877 18665234 537403057 963410642 182060643 163101156 107058341 816688195 910694394 637872182 284531374 16927193 285723470 254011126 356905131 891459350 299301425 468958324 73667239 280956271 701860160 835855932 28678012 1040307387 568586512 161822323 251184806 1070412974 811060543 684266083 348200292 380942358 797435693 141572570 35687056 711998549 1043028863 639021783 625753773 409428016 372933702 711702345 501429228 370615267 342827347 850787061 418782607 652295912 744102006 876048152 726064309 785763768 506091048 992828271 1057153867 307494607 784105405 731149172 439663851 12765952 352318677 153897694 1015542893 256501551 227087367 1022437072 885644458 224507033 105079469 354300632 594998954 938567554 967756047 985229644 803842311 937184784 31843783 1050266476 611171538 107703795 581396315 33807830 792131736 357310571 432298550 746597024 146516778 34068399 456545377 622378417 417593938 646524733 494746442 341545356 480205160 302178264 948760521 820769353 419782970 714630254 145576848 1065201048 250690863 500429722 493460098 1012254614 829715161 505267663 889233577 909766193 862391568 118707408 503970936 310319591 477525373 611473974 647560857 336458754 532855320 589478874 698015695 423231278 510381448 326230499 976176633 175898364 513336428 306419906 379203690 1004015248 109368644 186724392 624646919 636998329 27162178 489716776 959818258 199375894 954795472 495325638 56763274 761152465 75407451 462907401 323994905 697325174 513992558 623756127 221025505 952504686 276706732 680865698 1050379262 277791243 596406477 1015789563 314517771 809926310 1033356079 140262926 831013560 26548116 205587788 1054072473 21525494 470020477 924240940 661652126 256816628 498466961 344078320 190624645 157693905 183967823 221376289 48382613 602341109 240904236 648193717 800584654 484441266 654168009 609796364 807537507 149309686 73759727 524555200 337231080 765439825 586588831 372311194 911405992 1000981845 256487671 605157962 434510202 55926163 628220567 387821860 612505074 775823361 652538639 407123599 143594712 597238187 869965210 344761388 809621301 428370195 605195031 185670266 998993133 441735642 535102611 131617928 18883002 10025165 903703608 7047764 661397040 748010368 443444825 362139312 694938307 907906391 738285050 653233036 647028961 738427466 388115996 224535924 821630452 507237350 899093416 365759552 902880282 378269478 803576619 300526004 911187607 840284141 311327307 593183363 921180029 1006819400 881510732 438039301 905749987 760334533 169821033 840607268 872906697 1669478 178591697 1015572319 332803663 506891492 848631399 540866049 134225259 860336388 726333255 387381043 484463221 44112023 652113274 780113289 434527768 565968034 523015951 311920735 201860914 798273739 616994028 1008523045 799902682 1005138094 338352669 1035484898 112200604 65550530 1024487045 1027963729 1002764122 991797785 147558008 167932229 1052705370 205941677 679660881 28628510 704092473 639142597 111408699 982646696 832488104 629764732 1053195284 210153766 909090507 121591681 578469661 539485673 16549209 474787249 215648321 919159812 1054055720 40458811 754144474 748577892 781212831 777431312 483585934 876882401 328323788 29596525 541739721 984351187 746677415 780859123 309018479 560679451 927019771 498756251 233570420 271593798 856139112 930529167 859715433 395179378 581470268 641410402 521250097 140372174 265150601 987043589 135746746 490794598 804773673 986272175 467542885 1030396737 373073096 583382608 421178416 624150486 555262601 887711163 540403481 210204451 608082654 173129275 1051374140 1031352669 101408980 647007780 596368882 57297961 206478131 706460850 26562409 193518888 506307213 824410756 90115735 867695590 643096265 943526139 501152182 1043700099 807113906 707838959 775875254 890500508 547374816 980634965 591741632 969384262 36464648 741630932 216973593 82168670 528029948 548072910 955023831 241810997 204076217 276750106 19410657 226285853 175898881 904382715 334932118 584085275 478804393 916670037 837669298 815470096 463096530 362209431 709165079 563680067 862848538 3884849 284972492 1012742418 223759074 235796514 1047942366 546206306 118161108 622177967 332256645 2715888 978425674 216779298 213326323 559031978 546578200 262545042 396221278 435960702 972223970 245222577 911994740 408230904 580344678 30920542 1047378400 603181646 318125769 499045971 340997228 1021914192 124351269 61739766 849669433 914361035 511016851 121098520 950085338 195526968 493276618 377868506 226808264 433044521 248107764 940700425 561658139 531142447 698530789 967769420 19517393 843660777 530987998 130322834 292195000 568749639 979146194 666588668 1037168752 284181383 693192175 871852512 354573667 220295237 632686408 847640294 525977251 114438455 570530596 985962507 764372081 53891670 968303183 393799256 216165949 393212320 950602926 741788282 587475478 1014678234 69627306 928923046 336947251 1000631763 209115087 960598090 992254891 1830215 1012250008 407109640 255137886 239103391 901051481 779586808 26097746 791459079 359021798 901175222 820719417 126337594 269625260 890419725 226972460 902685733 841955859 439287927 440679548 763682734 748301010 84732299 892676432 1070461249 707473979 1047820506 431778472 1047262382 910738729 794936114 369159279 890365036 223614652 652356734 562607543 961851440 178511763 168342686 985401647 17814891 882251754 391941428 345476845 696664204 844121569 184611612 794786119 730245364 456505923 771701101 1017337069 485720259 752864266 946160040 3737191 450142216 632526813 818529650 369710527 823197501 554680060 965616981 22987884 92274912 606270266 191428561 553343801 434932931 262783561 440855339 489868215 190160928 356969147 317600508 951304489 901540624 64534208 903262486 687414028 949785132 526051775 989774674 420102526 203494833 10463673 1033452116 812032549 1058015320 27953569 476536412 157883884 807930684 414167708 85223666 520320069 993384316 7310920 20564752 673353364 294302095 609961601 837067715 498902155 988599219 987249296 1004983084 984277728 19744594 655322573 282324033 958158814 674177780 139954795 1015916365 533428663 72995464 190215 967179889 995787133 612586547 1000322073 302143093 133429630 122220100 135919259 606718608 471259410 71174983 620826765 657752038 331402320 959873794 472355434 487614535 35118506 842021020 242137459 472240746 5674718 409678749 14012478 342720835 97729624 500640846 637132328 1070899481 823696074 530175885 907232332 850100218 806418977 1020791416 889798098 722769727 591145433 568312277 875691731 877875072 683039632 884885773 959043243 14338046 786599775 1019169873 209529170 796642308 1035396001 271647294 400021121 541527458 350003842 785252408 345329100 448621974 807364964 499088706 97145219 90618341 770833446 277793064 1014252518 814000866 898057481 45157582 383438938 497262063 744641178 391537239 864629950 190333111 283572545 992598885 505972862 467407965 1966255 229163107 651688471 391088227 1030792747 771406359 435216637 840136002 288349453 951902023 313459838 627316367 28492723 23487326 478504052 1073191098 763285824 719404988 634141774 1073177649 713642515 337449775 287459134 200265134 525997984 989855721 279536479 659136189 315651817 592346492 111561929 331044337 1001415304 673596184 374578186 1043347270 859173469 246439932 906795305 333135012 371793197 397204771 929435630 105149377 494041797 582768675 278968293 887647192 463323223 1037329173 594055321 285234035 778663509 447581402 1061594772 173907530 194687120 1006690824 771972211 635534413 1057710221 491221525 554239091 330102359 675610046 116405054 632565117 706368258 37455305 965750637 563201308 767659344 68628047 980043189 75170978 729220418 725508055 313094830 556758030 782586954 629465830 308044093 47791363 923306332 897062560 250522780 784958966 541843108 998900100 367280251 593500580 872630635 58838206 1032179376 855947269 729561855 82705550 269790795 68792338 531565412 720003454 982028693 975393760 665000975 702714393 704540724 726356868 758206599 1049891296 487388652 350855581 954459937 619788385 608694380 14139564 821347758 817659658 552867282 550175138 947115531 930848029 999728025 60008342 311049039 135023485 494957600 1054819417 500736498 940287850 25201535 657528175 522687367 625879899 538541346 904718384 525303504 1020284973 98381624 459427306 400090277 458251938 389138845 32627389 474615069 228836626 870228059 573355615 634457882 348804563 203071094 12186035 695508579 698639045 340638468 1018067947 263319003 748337799 45557157 959685030 893913702 54868499 226316764 56404612 479919835 849309905 1046563403 797069092 550198759 511006457 572643831 6543405 1060714593 406064673 149249255 866388385 581309614 2823060 89025525 678095730 60633887 495344130 206922636 542673618 926714573 794706250 91854802 607996991 532585742 886303893 859495525 632033837 934985951 424336508 12733340 453684140 845113459 235715834 326630245 629586035 571417255 456921556 875734974 262746228 480822665 419842017 317206579 302747341 748538436 586897324 988787968 440049111 471209139 954902304 231394241 6923459 170125339 600304135 174697276 57834773 273008737 865807398 53410640 366637866 238234353 482529135 370781322 410789883 186760632 852259059 631791400 677582409 962302104 282674889 1040997637 188724436 790569523 198460366 716809865 17685200 816010358 833909960 187156301 692370725 858277406 464351078 687894835 863567712 228497527 318441525 248991852 655141846 289893978 1063254249 587135916 481849341 104886674 860283106 471517591 146831847 998515263 18165796 531876775 667658176 980797368 273786259 418186261 208603938 386038982 706113125 175159458 521992417 425295845 724072778 950194776 309927878 952870061 931598378 299079183 955595248 634022500 743272525 654595093 524181856 9801530 634943601 564451773 58490024 993661707 1058586787 659645711 781619564 1029529201 982672199 212370097 571699074 440111107 719103221 85491774 242867092 771620337 792545399 457494766 661694295 691058166 178146662 971017875 286637198 269959298 302044271 799930148 652037274 1055053784 45920406 728548489 544386318 455893237 574728715 781161404 512043478 273162621 270203300 460635544 109728352 661923998 881277672 257718328 635939092 852051713 950243676 918498122 599982772 469734123 917928483 1019649584 469706666 689219716 262997005 968589811 407667187 212190021 319205758 599135588 598779280 109708862 811906774 411868010 853941340 493328185 604586286 975087148 410155060 726121988 387111145 90530858 734875387 126333638 664535028 772089486 809025709 179046831 242032751 162012622 1030755572 834588501 698158300 207539430 81380768 521558766 53782005 920607612 876503198 376027166 516775400 450485853 493107755 18077999 710299152 479740300 815672579 167176888 629757871 850121043 265244937 890495667 53110495 1011983391 604522146 183728524 28161672 747849619 1070447519 1020045210 1037272170 815141802 620018155 687768586 98003989 916998525 216438415 457346332 203703608 659844400 218292921 971273090 383196613 679095604 194373676 685238924 826786235 240139456 399882984 969375573 156599990 626077463 297365100 1050305703 228229826 158142831 880607415 216459374 1073333986 1062982841 952226766 463535944 662877319 432914744 181365130 256921166 887288856 755882905 493745638 517607327 659931435 1014166729 766256552 599265204 1025740263 1055863343 1072408417 1071776337 1003357375 394514367 115842956 700650464 942949920 844929376 754722419 99280812 396900884 925993768 163360820 522645418 935209720 302907437 219436758 559880996 732703763 917320695 5466271 900229138 433149700 792465442 883369790 373116702 678701144 726762952 38702291 378078085 636344633 696935217 474721461 24494934 840731106 494825561 372371826 382350417 678151609 664699879 895777403 816607973 669969991 149704198 828238479 172146663 596857467 775387986 159570462 962384248 393124638 606974758 202813433 302025082 613349007 293404733 919096401 630192130 40530424 501373151 26741016 1012876458 135800638 952960508 42243375 315409112 27162195 295637219 1056085945 294127303 154819567 443794775 383104828 520280697 705651497 422403201 231044431 1040049510 504033207 606307684 43536640 818847305 469955938 591400351 409397551 559208069 753412826 696857683 553684065 918484539 890580926 563004483 710381968 319846021 60877991 943236566 1056083443 974931727 312240374 200412052 827162635 536946631 1012662057 592808890 441034635 228342508 292884463 278556128 459726234 296517934 1026776768 689172107 1000154844 885444233 593917071 229895037 479780362 656227544 720419677 279391369 47222919 132116347 563706322 752005280 246918127 949988406 573280527 464042780 705392687 194719324 364723719 57151443 409807049 885793386 641189673 176123089 651141367 208831318 668724842 1009635319 764975627 192898480 115113299 414458639 242606183 281604027 870658149 787223797 126234287 1035946757 203082737 356081572 578864924 1017571315 929761734 307067681 972610522 64145562 1007640257 1061938059 21003101 694369227 1051203828 232964158 752722352 83776009 349322744 686249749 736147827 917423017 672985883 682303693 995006327 917757373 674677333 770558063 591624179 541626896 764610896 887607097 781823757 599201341 481276195 916285355 10224983 980915435 237572587 349705251 993966761 996753712 321429401 873488381 451337905 292938158 657432855 639683369 125072319 1060992138 536658008 230239691 1053385813 525281663 896446618 835206046 5877907 412118920 970909989 1010975553 11850112 12460362 420427927 243314820 240916386 883252768 422557831 942124786 465523144 1016865911 949927477 944161329 186256570 566249092 1024146413 399926099 315589616 974896232 731728151 39150677 864724083 459047237 427758100 745532154 830489571 642787057 371244655 841760166 535955155 236048861 954887396 740605072 743083789 49616579 545621321 1055838451 776673897 30783256 366055594 604873696 296512047 48307261 206078398 301150323 244486565 350141601 34985293 89884872 80038918 647962914 210860514 1026238739 27100099 1001542263 556879224 130606892 98679368 112562175 810894210 1073370660 929614617 274561348 646784559 331301191 680448271 818530366 622287675 480132533 813096469 566139623 238874728 968485360 45915461 933054913 642567158 429682556 944323156 491838148 295688507 642104395 699426576 927282313 411901931 92655622 511753806 75737430 832133047 280432395 226603817 262824183 235312838 241951341 766313257 674719271 406844464 207681006 838289183 218594149 779891503 674438147 63591998 609077470 510221863 500227717 359855244 1049487591 678346485 83903312 1000984859 669823028 365132482 953923062 630749860 305003594 891151096 131934721 272473148 1012838207 496940119 461617080 481420956 450328277 371992272 159882336 136238825 1009615355 605998907 653301795 206323243 558076888 149883341 645396132 752617350 815358144 153383628 626026751 625430454 622378454 642598930 239473387 982662868 340121534 945832741 508977655 372201488 1065081515 562367064 977657174 12612621 873186366 1003172260 145702013 503028262 1062222541 249549226 785956950 1015774694 38050252 231423378 22364506 1004558164 900895622 733833131 268743713 821787287 946506262 213566263 611471267 149918155 229101803 310898877 264729768 1011764411 420447139 239076814 578190578 980494242 580228266 99630188 298674561 1034447498 957531320 8952640 1059961627 624762826 83563099 887243689 557374827 537638793 353611509 889584365 513926978 485299057 916629931 31189987 399762209 360869194 640777866 1072399109 545848773 333065402 977243080 1006418789 176485217 911725691 375440539 1000254691 306932380 838918735 912767 780532011 228050464 18649356 800731277 291199396 42095611 184271604 28685048 432655125 538617211 504140149 609402385 50015177 247483898 783920010 656745102 782157112 1064091470 351446606 281495146 474024413 206470943 853239710 978157396 860491553 592756553 656727700 356939027 663258325 479810115 832836141 1059938229 5149152 520208301 114790104 421761706 860402205 706960538 65173459 699510743 396452675 1049339631 611041538 500473173 94973738 346468834 542808982 328680612 60918939 46429321 704635276 755043001 1060655150 755336355 695867363 824454997 604550814 320997610 970240835 368317442 356857811 368138428 435468237 643884563 600449714 542876468 563894405 679958315 842174122 69015430 706514929 899498673 919664975 695257659 708538319 245074516 110228857 349776387 976482973 1069730626 286148496 275283149 987395749 937115797 779008614 482501153 182987959 787510216 250374343 869981615 963183245 774272282 798388507 391885558 516509401 611813083 456658036 753239829 944500848 64594425 508616211 1026718552 868276452 989876194 140183966 207186063 976380917 440627994 1009953391 728872546 377755703 255227877 565387036 814292578 351885432 76702672 643432844 406187461 295745485 852193497 301087556 242593547 741211292 124532606 277582837 535300984 830421250 1012956272 16236621 592382359 108782480 579576368 372859026 717717691 605015518 506652672 647576761 330473444 379496997 725198730 725689060 1048236537 742379112 94415974 146158327 84157931 875972341 990612544 141539532 1069730142 317934321 350189226 857966532 277867796 636847173 819508164 159578113 35783868 763482059 1021050342 447435053 807397797 609133422 110710861 351362194 626799265 575479641 632693793 228830030 183059500 199647053 963529822 444030168 961193712 894118419 466668753 26424963 564480267 957622573 918158043 13045298 510477363 301823379 82408851 1022275676 237953485 1029212525 671880609 20362385 640700073 922350750 685244138 425178765 884187788 8107212 741690045 686791076 557669297 611552692 78552180 667478250 399909155 438796353 780947205 731005995 516172311 332076677 322268535 305406842 277147475 646260074 292519386 546634059 852530282 1048155843 52425093 747131333 767208559 367876383 128475835 947454971 230441306 135503566 1978207 170234331 730130297 711474728 60079029 72620758 436391824 772123816 699963358 310974327 820812401 806291879 699974250 488098513 659325878 782852648 584726579 568392849 453133211 723883117 231203455 99649931 274983353 145430884 953416743 839052448 721222073 127630314 844522825 534140790 974824148 283387390 209708376 482231356 261772540 995561062 829057407 562091870 569112470 765708840 179934400 703088537 175205928 924306160 564884061 431681972 13402604 373283736 219180652 319409689 598958940 539983162 788864576 490519952 304870493 321793470 204466702 792965991 474558096 885252098 791577885 793432822 743544817 397001608 853991178 478284583 784448985 831382978 968762575 890238233 453486849 1024743367 769340223 49311805 597916734 1006130442 233427686 949357966 642778064 890350178 39034417 614319556 878107754 630031202 657653794 700014718 353692570 63773477 959398685 180374098 971609510 297177753 252130825 98534491 607379366 764045167 585783663 897319431 918299506 611341061 751041656 309599473 820644675 968762980 922655904 170307191 75949158 1045866141 1044089252 375117958 856025804 12259483 678994169 372410756 768467198 755807927 1050706904 358403698 55993715 1053636466 741182141 132767774 619074600 25485711 1016010569 742932567 821533767 501517896 320337694 968780568 968079238 187943313 512097994 162316584 852756069 900908435 560731403 763383793 214606877 730163000 1001094774 709676181 785690531 128421222 713471498 279847679 482006602 1064432411 384159607 321555910 466559964 232493991 224053823 634422249 208208053 761715868 185398227 903776474 162989510 679316926 1027797307 166162301 878226634 716643959 274072198 586753624 780975974 427750141 341635243 481523968 1016243871 391910734 396673364 9192667 789628214 616634606 538677517 1042681371 1006076061 811751325 838165883 879237722 161827218 789307585 452852574 821637634 1066078846 604487484 831039982 941465097 675000195 21255713 780877926 774922617 963464515 698769440 341314778 931144813 964284527 790875120 150681818 456405811 682958507 939600165 922470595 1017944478 186949616 509872472 468025532 746811828 732301462 423209021 639237668 710099270 593639104 419871010 780567358 342899558 273536665 553663244 175306244 213922221 790146959 673019257 105109745 43534917 1000059331 871552512 998000722 156704670 641887858 721585104 145501916 49289467 162016259 46058692 626136855 408397538 376890322 1018698296 253960029 39176076 830462077 23113090 746892592 56338898 166186341 57520860 160032830 399432335 464234165 383051805 476579502 854546281 243556953 90207456 1025612934 365506633 117978723 214314546 161879195 884944602 718447504 179948728 1062824122 167348079 305902479 347337114 669337830 107979234 368645783 131592526 614047066 178469524 480996280 40938655 225463629 698574171 184810901 616308530 158031364 362589529 273368100 179328956 169507132 826983307 407970757 341560224 63386863 403690145 363761213 413361725 48883475 1023510929 255816660 265765863 922632640 180420712 946496800 249809172 938652646 341982254 539687487 874679766 1029226800 63895358 959785234 744148903 588768492 116072009 161576081 942365366 674344897 425071256 1002005615 194450635 336024751 374432917 646350841 429290585 234331786 740104451 980953259 772933696 718438796 901798168 901763079 484943401 285408396 859105403 174534282 1035320421 1027489597 331170473 566577652 551470213 1068916963 1030169765 308046188 405254658 101617424 88205510 900898150 212018886 255138788 1062379410 478224275 271097426 974972979 810269396 241814930 123419035 427433963 645020836 269349910 296897491 416763198 656583023 173891920 50816281 959565155 196963779 534471901 563333108 528884237 503528634 128645004 406909915 942594741 716180563 98807607 251022680 1003683249 309454578 844842801 696752237 935236281 30014445 708087753 432153587 272630585 530310700 503597121 807792504 823703905 753347224 979321457 521519917 708572837 1013548357 483728601 509437845 493714784 692136759 575665828 1042209498 353741675 652778550 81903030 618844521 304493348 875329579 589100686 920757264 193180043 721784382 379083092 1008961350 934653294 507295976 613927231 942237961 432502950 1012683484 471831914 952493934 192099037 824227023 815767550 52414748 606519976 115770085 852185471 710023097 505024208 77594266 752976540 557180874 495530359 873666354 539182205 862090890 701922571 265490827 388374510 300655932 338626282 374660529 402368314 821520162 174378268 936162317 81961269 638733371 59493610 155264413 819721882 551352733 565880986 585067952 196190553 833158885 601554389 602400781 592876439 771763921 555300881 949710789 42588713 62686885 201984564 412131005 947164814 1006587979 214815638 363574916 272507240 844448231 349503309 743729525 832701259 990616120 435189255 347140931 899524818 147443157 281969459 241503310 872853427 995267659 820816464 348975234 416744436 214068751 945370243 348174619 617481476 218024373 1066174120 111960849 1057755902 205559653 219599225 212922285 625937184 94301145 192618986 74504147 522415392 559548413 416933627 773369164 497402944 883450778 178023024 654604378 243302403 566684906 603040275 558012697 79126518 934329120 272509244 329567594 355892328 75394057 567618472 119336309 1059258925 17304462 824972086 1009427530 800619847 984116613 477434718 72248392 202837079 268573102 519422643 662673194 65335808 753114151 790577556 276926728 445483614 348446876 143471949 498942800 73171530 599941775 662991172 725212684 607626480 193985448 384016262 827626088 90586571 815192195 893591407 564577835 399085330 36894010 5760937 685336213 796090960 617232919 202719939 592240296 820961876 973034341 975776351 390939589 790514955 1070690061 262501024 745926157 468737632 612071289 705874771 758270079 913243869 493095520 158133887 410367885 741484486 336414677 65405278 313752069 473056167 582009489 608662360 335815586 336456010 452310418 475520003 897025673 243524405 531448629 538911349 841576481 842975981 527792748 123929052 1070706258 576011047 476610396 958795305 707828268 58751763 189994268 496791239 394084611 220252176 94616925 168889628 480536780 634357193 676116423 479207525 710978785 964634923 30586033 281953829 727061836 961173828 213770999 521635019 527601616 1072091353 619028186 278071219 167372097 297076037 124900124 747162423 554419200 498154550 337839695 738239361 800953646 712263555 71568832 577971643 315394420 33491923 461190700 340808105 125673717 332671605 162606473 93877417 905909949 511617170 740935852 171287345 812635136 641346432 464646180 727185833 370843848 453125579 69066477 604335055 227721433 10268195 375198177 215809256 182001196 222803226 173275978 724864 1021342153 8105146 859810379 64705297 311696667 662092106 609307528 789357234 559301269 1021862094 637925661 932244598 522400238 490665295 223188037 182391037 841678678 177163428 129384748 879850691 567016083 804397382 815405928 62058959 197676875 92732442 677403605 352377530 948398756 608822022 207862687 587223299 958437821 271487050 158547536 740694393 810373433 992617210 399533859 955333590 694434798 35692012 687439454 931642375 778396566 873686921 910805356 605736383 811029689 32996761 871135367 786990064 337337295 181933686 348193951 193811597 149517922 411887376 577152783 979268506 583584463 416545444 251903010 1022505895 681229618 73969062 274195239 107537983 102621549 749550351 896214152 1028234321 129874490 668084341 746335731 576465032 1071485688 129106312 46563242 737240989 625625988 340042759 534322306 688588562 156657016 1035560805 1003778767 241871210 374888544 543189983 1065366574 216530171 5059830 943202638 436301131 731721155 920415750 811883867 304960624 997195934 417272381 116390392 865567941 967614567 72998224 321055632 271802508 145840308 121757087 565029745 962008926 980473607 1016259153 591050002 146812667 120540551 78692699 382975954 744254817 498638617 460467957 1056948824 152495862 466066026 172908096 679820804 715199542 332642755 360138931 951050689 764146359 339336248 980201976 223820590 953816973 310145984 157024856 286496434 977495137 453332698 357598172 635327089 841108958 452204230 463324307 113899134 920244559 686634166 513761792 449159648 624591774 922466367 272793713 979763261 1011816883 485530557 202304253 283678463 216785290 698941736 368500965 1015124298 39718037 919102895 920253718 1021820737 859776499 708888662 698141171 558197620 7858325 1056854048 19050479 327370559 886680820 328962902 1023719721 416467010 165658124 763010506 362688772 533174781 949287255 553167726 626449953 205438051 385697674 740090971 896462803 1020713721 82256138 26469873 865508430 286279595 464785413 464990269 524647161 289720727 449639637 979497766 401452592 700694618 430269596 247888437 283260395 23686994 824633086 480132149 715705657 963042700 114084369 1010883319 786781082 475820105 1012597954 1007576822 1014101913 185212070 138792778 180478114 63470918 846482986 480547533 87467039 973727067 903834560 142987335 788069271 132729820 784685678 496717356 533829638 799481240 10155175 867922049 96522430 45604112 527438931 367658912 1068778002 196423509 500456493 751590676 949069511 974133482 786272396 718878182 792313329 738520867 619675996 610166075 408050830 930490397 417030131 1072895184 765554901 795863792 46000467 244440666 678789110 673129947 146755669 661897889 170608139 944543321 142854874 583349786 190410421 274849203 1021859170 441185890 72891040 73593835 956393424 486361616 726597163 187894280 325744801 717739134 902583816 785267501 785232914 283099618 817990952 669073057 405551487 553536508 19200528 1038485341 847931368 182341962 40356054 519078923 8405460 119923317 473114791 859774987 182172767 881535622 629913673 648560822 443696471 545235737 58036571 202064243 925175383 463580637 758375883 884578643 76297257 952567913 304864438 924382651 44088260 947853367 603144630 1065996655 702753883 667849204 688837319 568280980 536556987 377225308 505589245 517547281 140889192 117568262 664669808 496704790 63545431 677721144 193596043 715975076 590374668 472380755 414795012 359284609 690442612 648673240 673175021 79043105 628848436 457278280 150132220 839190839 444222768 266761535 392298547 385780329 1056052091 668720250 218973647 373412369 831761099 765838595 223776600 113910081 924204172 1010991617 229635566 161146746 700241630 881678248 208651478 200490350 694176527 671464621 551216851 771333955 674324799 889357610 983843390 313793884 974236044 700929735 893444384 141934346 247519213 1027184637 507354861 111996385 15117348 381602268 171690124 409572411 561533530 467735553 42917269 471489710 900544490 297060168 388892674 271402809 907314592 505386124 252404571 914249643 834217317 946145334 1035060729 72811176 668608409 634138705 244841986 94970136 143250406 1062042979 431061689 270394477 488276705 974184590 1040703044 172337527 990969542 372254019 988547449 410710833 668766798 730212911 123697613 403152793 704196817 686505281 867005407 850213910 220145193 233330630 444207840 672893919 127935718 156930270 557409759 18177502 371012477 538421256 222653573 550454396 500560452 988868009 522450994 552313373 541428202 139387571 437272011 993380921 348538087 929085376 734817026 459930180 486241695 45975 533287766 1003889036 976961248 826142506 924809713 1008598723 558255670 679313735 463164914 17816502 255674215 903051180 120774742 732942322 81348086 909453641 826843653 537601961 828674865 285912710 958857121 877850402 955054349 147919792 419904384 130416934 755999158 933302780 985508980 160533539 69240050 1040098364 338023664 270865649 936520445 533569641 223457575 871648558 849229663 551855375 418216249 579954530 851916517 822481259 385673714 870595277 707344062 661442488 422648288 358414857 774394296 96105974 907015990 939981796 824999009 300277887 597405718 674279396 209560985 656028643 312816035 844600307 655769085 1015905526 706673810 743383789 704153937 375097672 987612479 409016057 904508217 349114608 74448550 783743072 252065563 244799594 164579477 664496467 841364654 112873681 135964094 243801581 269086683 554003590 358267025 602459367 672411654 915641371 108427654 761649152 425636369 517613960 286196191 966626304 1069649168 417549173 165994546 359825233 574339074 401452711 174596474 944780100 226165504 449674596 601148246 437536395 372108267 176364233 606951222 893615691 554230780 1003523148 1068659979 417487835 993957557 151510087 615775410 859091690 753481738 348253298 383938576 1011106325 665222173 312561690 758296660 979716519 835242560 684127096 793613156 867938483 428615386 843891765 778494663 1041282169 131003810 117124883 841949078 1069078738 142277924 425186744 646654224 658414661 755241607 863256011 6258379 350524814 673168150 698801826 279889743 354497824 950921565 256347670 407676645 153468848 24317278 408043656 447692940 701745452 306880901 20423905 520870996 38042658 690001942 163706161 664340866 221975215 76764474 659444215 626117147 1012762183 742295225 335255252 818722111 1020396559 988981139 783434968 922087581 162120796 569841457 606205031 896754988 448429456 187862802 604309805 526251406 595162201 91640974 321834539 839564536 747672949 937207914 108927136 245115642 3475673 92226644 1036499704 105514436 869146257 511686144 806847212 1059441782 1065636533 844576872 975018778 249697499 1009962272 262800500 1038284753 708705169 809227678 465944501 849223364 934943786 676945383 306988470 325373826 980528830 577110566 40953905 464589247 903311063 878515825 353604210 150718632 988974886 538274004 299534596 209165036 300713774 515833418 504546136 379255044 51793791 333860228 439301952 338167299 666832048 699932584 3797021 532849082 18165513 843764048 1001084805 178171137 712519071 118736412 541515729 821321704 689794470 748230752 1026223923 926670591 550980091 443876481 175242048 970703687 209419679 851675773 357998091 274194902 149150841 1064288353 833998946 895015156 446008404 5815406 428554659 220360392 197105825 688977395 741152110 79985245 521777607 960717671 335082479 369673784 333509111 284445425 435144883 64082189 605110694 765974972 553637774 837970803 24081195 98166318 126976678 443647664 625169935 213616247 564190614 646583182 1028752828 60408088 11842282 758756745 554721964 838756702 200141317 932617441 817086324 766857794 714999168 969627757 1068373485 429915165 797775905 604684055 1047616164 157042823 296749491 132752146 221382197 687643839 727735182 81014643 94591833 405942270 393045691 317871414 954501807 397309361 423454504 760252109 23816215 108446241 163752572 134339218 582374930 123563225 169608200 334833549 165725160 320323504 217584998 793781895 385777558 196008475 1010428746 763786391 1003468762 279452128 32759148 611903853 984863610 251481616 473095133 112379566 604469363 232225224 737992208 409498440 39450811 397113996 613147264 291068233 22986722 776411884 1002152450 438497850 711636849 523599624 749407372 464148271 319541707 418974627 700530937 290204585 180890524 7639898 403712611 863598255 978283763 999346400 988001897 299039474 472745640 631516905 316748100 942590518 533140913 486687674 313217669 754087576 52351676 407433960 498749034 598495125 556153994 433061725 190887990 237405078 863624119 277956947 798160224 681871327 418882769 464584723 568530691 50498488 418062610 1010214095 281544849 977425723 717317788 775150482 871175363 608561124 243980546 992785616 351705708 692617652 424025928 55111309 987814729 735431644 756485427 468669897 876471002 267859663 494305482 942792260 306999630 191212994 73996712 115521783 945917559 149336888 202501269 634334002 284057721 131659296 999633253 169527159 676412689 258478276 1012561377 757054732 505265587 908267359 63437189 837484099 901196414 483016699 1004904799 285974853 166790554 610663349 271744890 895545859 475530485 161378304 1042058587 68066241 184362228 365805032 576107692 727010451 348583280 835657207 364754002 936734441 780858885 1027587415 466119421 519094853 175626761 578654004 889872338 291524627 72266823 389694792 71755079 813639802 933366462 128408217 984849872 367913981 1046266972 834108288 274820664 600315081 563946792 880908463 612150412 30843135 928455792 683644825 387509834 553684766 1048259133 394534704 73283468 259617917 879478601 432739398 403592405 436395775 84862750 367429777 168982203 157063430 236677678 915297162 362672476 403608137 599309834 949445922 437786478 441861784 100005929 193727606 1005886017 609835539 77678056 140289704 598739582 564495922 232831751 345580041 877993504 732762717 554084914 655444858 818788320 861402124 277419345 557823553 805310758 957301680 400052481 846322122 711953759 519779940 389884333 1070636824 501831267 265386976 591985260 650029812 910746382 26860987 261916358 413286194 46367928 525153591 646902594 250012935 850259722 256615097 670434397 1056722433 256418891 696824576 724625447 4930476 904043620 142059696 94205195 693805165 367389866 19284737 415397603 945348089 190253822 629989461 318730412 235949185 544817308 1067650093 858020271 282655178 525274322 998107947 682700013 904907674 553907924 771676976 728610707 398991077 144861753 199877323 81417326 573050557 897732846 703212517 314852950 781856188 148551238 337146958 420718980 1041208789 774713784 712646160 4888439 1035921817 191188624 647539830 950248533 394956767 1045082696 122377702 178833930 426605888 892258902 112933151 769152061 248235594 393524320 178381407 164640376 91075293 794354559 209920491 37304208 427950342 1059719614 441485745 266186166 657344360 965261914 181041268 817817632 150992595 271138427 249455289 573547313 99979630 717308064 754384333 225310270 621365732 127787331 446581641 396542065 461218466 1007227381 352181596 11337181 433952053 92910248 690489903 406653780 951083678 602386368 902556030 190756407 531320573 254835693 166625180 440524771 936186444 333993620 179841902 145962700 1039097414 654554573 292441247 82007633 485017777 302334091 1029354431 712722955 938754235 857644143 365314589 600701923 638901639 442065589 239551178 744584642 1062425078 302663978 810309550 714158358 168053197 779559430 733597290 273122677 589515340 421712990 118196360 555052220 297393584 304275727 13493358 268595518 1039072622 583144737 978153939 629579620 246805764 714872670 13247125 985509607 699372807 534182168 597707923 1000747240 787403678 257173480 484859148 75681997 1028540867 473447903 519366602 915235855 807887258 791597020 691668738 97708550 682500263 392523757 34820626 946011843 327129055 355963472 749041626 564455294 671258606 146568872 76486662 363962532 249505235 1051776331 847612065 184029839 465621870 800081640 352911000 964922925 162622315 350611118 162181939 153506656 879168912 746141074 620798505 105747543 891654504 358036849 778479523 956583551 693448739 227846812 79075000 1045923539 201537275 273690685 301839479 1029595917 668220173 66156923 182273512 541142591 8094677 617689867 362971797 213679901 172637930 667473062 380031046 517385727 379534741 213662670 633215824 847005501 779799884 939843287 677977027 238354416 408586222 471449542 706634655 223711018 293118644 851387752 788035053 898951317 945897136 770717904 33486175 817360581 788986374 389031978 775727612 822248875 4689330 634415054 388574532 105972283 614347755 140889813 1002359877 741536366 237114540 12632120 750272927 256527492 583529728 376795920 485277726 206071860 232761497 623141769 221256377 773877467 228738069 962337141 847434243 340000375 960553137 105298790 824618610 964455354 473433538 148236839 507003067 447871260 935928042 436699934 327022951 29232895 220830974 469657031 561551999 113570640 288582247 102255350 510149573 900221013 572209156 257350556 829711350 185081435 722032591 782395829 74405109 612041061 1022870247 110892081 781582031 288334246 196266043 1050778638 1025118926 428070378 327548452 187525495 272480953 573467871 747196619 246433584 319935008 930813662 197323053 429687641 600164947 275411466 977613770 698526199 76837093 864263370 750382109 45917741 652610440 278052071 91185521 446729827 343866292 632185905 788254471 977334847 878207736 490446547 316589921 47676252 385892205 368921978 157864534 340773255 448653536 927664924 870546151 897896730 287902486 1008688959 416591477 22477952 923137926 1021217235 1010090402 897183897 516072178 9736147 718833815 701777287 146816576 586791233 521499562 116911718 325304156 353826965 298876156 1023017698 715480359 517191159 588644203 1003348501 515715831 325053309 230725128 158628604 725549598 476214043 381833029 1041199742 493951354 323288155 259343362 377659573 577260477 38133359 1017364073 751982042 224459674 183190402 406018880 602719393 816132471 117517384 877171551 700032563 1026671133 12901300 841716801 50543502 1068882196 729701138 731774153 667833244 517136095 173323104 898048117 647865915 453836101 893347167 599956241 89128600 318502512 4862813 1005993013 956680852 711449231 422106716 935582078 251989427 364451855 762762721 417077988 79939617 350634560 975678715 871017618 587251564 651591401 1030602531 235814174 446121736 277777223 563948786 889391152 400222317 104905185 22734406 101679836 33134309 660530462 1072291069 151657517 119642457 922478311 279905515 437399614 820211415 545751938 87669206 196704094 789387154 431014706 495733710 807984654 579895066 998438739 896753540 387187009 410453156 1069251483 320764796 926234028 956497032 809627843 905409467 795856462 783499666 763924165 681250140 844202069 666669218 695190817 542065995 989686104 1053667109 261180536 706116907 803447268 914153162 752225178 839162084 571374411 319581956 68921785 762067585 646983034 62419676 300158254 754716987 886492862 132504737 181608156 746289032 238580092 354193359 1010692532 381394432 821645776 713653374 60802344 743722752 631593207 1057720384 838514259 846357931 836592334 358829339 487101820 766952170 154079165 519173571 772041524 217351241 133147689 362816347 408431508 685935320 922592333 559510161 814683102 314487442 315476403 297181153 252754485 636286255 949450992 803924328 434788808 1015975165 1008419939 956863881 496939113 968079053 447692166 623986779 805761896 441259061 367085032 764043397 705179539 1013986202 899196132 199812637 279328617 108159907 87102348 26544427 711573067 115631054 155068917 1063370726 677938696 233694669 251199588 1018398778 851117701 448221140 482940304 456511094 888864479 632486989 161914952 751901353 302438363 414273598 592491343 381187950 336559507 960277158 832560746 815482238 699125046 765739983 962798821 883893130 858162784 551914531 507960107 182353459 789558366 47761923 914179107 881815116 920638333 529649921 892324484 621456602 939654217 959144467 346596302 578874113 146748861 1003487935 209591351 1034604272 191081571 137872123 832480735 202661535 702502813 900364367 286065897 59314510 603289489 761205061 487181111 691707139 476148459 806719703 42902543 471473023 514783486 239202038 942580228 861862878 553632606 187344957 780049719 190923801 101294619 916046013 774550617 453016235 217240452 777786545 377043948 932735649 739004478 580052007 419324214 435543908 853743709 192032469 989698195 562655489 460037464 290604328 563571218 1011462493 493918006 883150941 719486081 1022216459 656767209 485473722 484420076 64969536 292047789 701344807 578162681 599866882 826300507 866339394 891950743 1060810 498109623 74490653 396757428 972460961 962423234 763086940 602969917 945587473 461515860 130793268 714281237 349855127 431299764 296888602 605307185 12958951 89192839 73686988 336452758 303148467 691603572 684535704 937999760 484360990 450962853 893663518 583235112 108181239 993307401 395146843 622706257 291643973 1053026569 32028292 300046926 142594966 935097230 401749157 37248270 701028252 860481500 604951825 486890874 645041651 1026532350 84934994 19317639 819119466 324170778 191383543 103642032 688608252 562386993 77688564 839394845 128684770 672096292 703289279 426745875 642388687 1016873891 601451070 80618809 997376609 447325170 919605082 592695399 650821178 272173353 985724829 95761508 337865959 335504757 916101923 676237421 711344530 625926006 547912218 457754531 479791097 655984106 587351465 296597857 609510736 888997915 735529193 805129704 452730495 51114486 1002375848 385491518 562041769 836130674 392230731 313532470 162267916 305302880 903800049 38934647 711483015 156720564 619605375 378911370 99701996 699378467 441024075 161965217 505343742 503825541 987142965 965311740 471599569 381474069 90528548 587390852 725195968 60138007 302931803 172080180 416781684 259464858 710023178 372761903 61450665 602724635 515157411 221063259 58885092 1067281580 680736196 773365347 735058287 285030394 720698022 176413205 406324589 974590483 367702314 1013950418 1050110595 326582685 951369492 270501927 988276142 21535675 265919881 580966309 770862076 806892231 271222103 830013099 547784500 879628122 657506064 360241682 780080981 591685422 254454218 886409023 295495857 866782871 939349704 78390131 771084129 300851126 414983777 111812884 906308814 685108323 702688640 317638675 616561066 12758872 650247283 233248873 216666014 65157691 26083515 1000551571 718688272 499601148 17946342 1047258736 447901812 1001700348 1002458168 181555888 182626341 369582093 852333079 632304679 730230205 920127368 1044831513 323763368 162536635 717835543 299315212 734850493 408780484 109588765 267336238 321971431 49426149 985941669 191976885 382316866 708478759 513660257 761394027 803483472 102637087 885699331 801089815 221432463 974912207 706127489 987113199 808838903 417717929 69015734 452235199 470860944 765967367 710551693 65051031 796113748 448031838 994186826 957498867 1021319072 485963544 499677379 811542643 813705814 1060276608 615525441 1034687846 1022942238 477972373 821167545 910355124 198524472 876910557 14628176 121653763 769959733 450830117 271669871 334879097 871255421 389010986 282833713 181388179 662500442 1071915901 764271083 257212838 724999512 630679537 753260584 24497690 727126122 312963599 433291875 784877206 760490213 410211573 546108206 1053338964 148667585 686078843 821464493 376408860 510234135 794787789 209377412 542531132 641439660 843971562 547274131 264658650 148324641 481826635 779331227 1003683680 650682930 957492113 750182109 99675579 313371595 16483766 1043187520 139333675 480091820 723859444 936512906 1017214310 204636548 567749016 1016445229 595510271 185633194 350320634 828702869 45467733 492148076 813411174 25713979 260909197 807632485 123347125 109487784 541538905 383899767 498668454 491346027 346975931 119784569 901607963 301343916 832729527 674868442 893109763 499072002 659984502 907602514 453160555 84025305 171811221 442659493 159648409 418913343 583358509 852820304 512025682 222535569 55965678 248244775 1007265350 522725490 829389553 427943038 342852243 947072901 870102795 824609732 958652494 985505590 838690064 904941207 910505090 432808288 824398554 737555902 121835258 85943625 669111529 502765993 730025416 631214330 568834552 262698165 427532304 40439896 726547487 796693772 488800870 188431651 798294656 864620930 788159424 609391313 700073673 454506123 992331003 526991039 963865881 233548242 173905907 356355110 819812415 389895021 21004932 184170743 722692489 879953841 689906568 731399421 799114955 778334061 626224997 368612715 1021087983 432343722 525512814 587275382 565187834 423304541 913996900 266589283 959349747 49886375 658884152 659291650 1038276286 921675601 30828012 453439664 1045745514 222625153 1039374753 189255769 273664378 256295771 28862547 773503548 151876754 1063735215 978617462 638172684 533769 259891655 408912985 784989669 626124136 661534212 126146052 1012347439 408674095 856408527 777709963 82085233 472836371 480815244 471914093 602334567 942322835 519245810 52443686 390600614 673030471 427285021 132935763 879452389 433736688 111122591 755541126 450467030 268345053 286237404 104941046 86731690 760564704 746511557 902871367 571093621 470434141 483406559 416944337 939236065 697860473 307119547 1054479350 1069393511 348036762 664956220 44781050 107842021 548496972 335817054 24532510 506344867 889901058 89985478 764187455 753403503 199413941 909176834 558418559 651959869 228801540 469830079 376293826 943481214 142499155 518391086 570979951 33337108 297924719 388513992 215644891 515038432 70496724 865689140 332570978 881560697 215615778 449847395 564636700 759566822 236855710 726831925 288917346 303607742 529087880 607973287 654502556 1023850587 879039228 178048131 73126083 175637861 1011138001 410796351 644633155 934735923 411158511 63940406 894073586 164589104 729840068 59603829 1037387886 146047647 572427102 1038320776 364767141 898102417 345434745 241781636 417792010 42605073 760414944 309922470 524411585 899076989 921217235 306290543 131409664 6166300 784698432 793492808 1024926250 694114440 391992649 1022016126 576207065 1048981302 1022099314 1007309786 489046369 974147655 82370137 170917612 95960227 30522976 222412095 498251300 251332182 813367511 1016427046 842238386 849703959 62978034 143870991 636648839 72194654 170725315 76505464 995622905 163574322 616020952 583744597 997885308 1058762966 803622285 546577032 348154975 634483167 126961079 188470696 789626122 812359862 1045650110 775314493 381106613 999585190 781128447 612892135 269235018 748257530 902711422 371551537 989292880 869739652 145896792 440330795 586218046 637422008 194843188 316046557 300360362 999264053 620013700 701643221 623994141 914216675 500307444 1043157303 641407232 959220866 64910986 675806451 482297451 1059306344 544787239 378860531 259089044 958330391 30652121 825372523 549534541 812354337 139555488 878361097 45097096 737629838 979493505 928275214 1037567036 516778041 553424810 121168524 204669573 570120289 1045087446 532795450 817648025 25555664 1059860664 236361703 396757357 676117668 113793700 1013253482 723801372 935664067 433362811 354773871 936380031 1064219230 330572367 663578807 332001835 992211852 302782917 443771274 436684296 1045273049 309088541 277311541 573154312 674208002 820519400 253269399 158605764 579695807 333537217 21178087 593494735 447264096 434580025 417994013 420479599 183292305 729825918 940995237 252049745 662380365 953568320 410491091 976513088 173217553 248355786 30202111 358496910 281368450 468262818 374334626 670447915 883714928 451519209 729891714 121219897 177090600 436986560 121307852 106018850 225612550 369913339 919677389 751127634 859451887 350987155 164111225 209694304 753899299 1054545652 589143409 246425287 735877132 153388662 778201005 202943103 364100486 223038068 378380702 191158165 218531835 101724621 870053719 812762340 774829424 925246719 953076033 815599242 776613603 1056229256 699156412 638820436 473744549 851604490 514054015 891255888 833674539 544053474 133971305 243361584 1046720616 134284092 1047338697 218283066 730603726 546224865 398567174 800520364 245820008 206592885 873950987 584219263 715319775 115503331 383163863 208720665 734480065 840226212 368318731 501338250 564227266 373014384 696745791 294476513 6907058 61951515 395423081 896069174 94600373 97820363 686430294 259135171 892235222 637226542 353558888 501170820 869533776 77479169 49307008 1042948277 159664511 831720983 396869259 17389268 382428632 231811218 193577428 541400485 147744014 573015039 671376690 504185240 432248665 1023750612 708647440 148428075 884526578 457428010 126159895 943978767 359632861 649975366 291123691 311192275 64266535 368213136 728135729 39245170 165761267 773678997 444109122 350565291 68806122 627775640 8684942 447425589 82352745 544727789 560887167 542529986 973397084 830663 957185147 943862586 922917081 254139269 714916432 945786780 148885164 634647962 1070996012 866090215 845010253 284521143 918630885 363223033 426146531 868226304 256258030 769206763 534500315 140705479 759638392 412526479 429783172 1032369573 379224100 940526502 585394553 732771883 386065609 607219486 279346928 970611170 675553401 258896824 1006038046 934203426 445613042 310789743 186766507 822924309 159520555 82970132 1049064469 1068818391 1066374979 175627064 744688346 704748089 609009107 884161378 264231642 132967546 848458418 994825778 803700054 186347778 391592428 741629064 297812390 975166106 184977392 207735830 307117101 705277621 97711760 947803972 958583957 776578374 382942430 135850539 668308177 215571732 807372277 623034519 742137070 142813860 815168758 808253086 543109848 314311598 64140988 106498594 584051381 473634667 870068111 454933572 938683704 649454265 899500856 155539534 666691438 66587139 487557736 626823728 525183118 1049728235 974829765 569096143 90982261 445278679 609247367 469828479 719080083 734990643 166751597 352012663 92142657 29631286 175290321 520520206 127541953 21573614 56373948 154479558 63274245 774282539 460693041 602011445 959125227 440938013 104919843 58365118 898626847 229651388 541301526 691714066 434865559 959122456 195547545 634380685 1054219005 77294747 515471469 387068665 510525356 529261947 87455535 224030021 974514239 679339813 480393943 469561176 873265476 260640289 289152736 888339224 308730649 625291183 618938101 726770600 9685304 463058597 578155803 774621120 859343734 701909762 579225801 517859701 1053899418 779207764 630029902 714632994 243901567 793277030 186633352 1069864478 615175927 534384572 825504932 606130501 406389887 981761022 147948186 313963277 37486288 803894949 190878928 230689492 832210676 95585666 487464420 338702169 442456359 92078389 813303904 494038362 782419647 245750317 101248112 484026571 220187116 451101551 677656807 131525858 886668888 565134326 451907725 30297239 797620796 889709511 93429648 779489502 172027351 555333694 348445456 374493124 975353529 835470381 943641160 884199522 1017261278 774063711 130009650 758072782 809369099 303356671 572939358 712206412 464895120 713746485 454138224 333974152 154879275 260297539 290587311 612070534 939754687 619806584 157221504 319348267 457028476 333147869 1023989357 420052151 3297700 1066278500 609049218 99803492 813501306 783066306 878362801 1011091646 582845765 342912163 632496291 570956585 257171109 661455905 782461118 90583400 769321137 145636474 223782797 325987194 136310517 578225326 699044245 302880065 299799512 207017250 317049133 721826337 293939205 443679010 1744174 777964516 406716557 672361095 303815078 932234488 11207487 88456945 386752619 997001498 183893074 239875249 73265985 721253862 681161805 461425280 599303641 992793138 425852025 876005600 944434410 1009059793 802241569 627847404 328500 965464810 549923267 372160066 1032423930 299809084 626435173 197204 87238986 660615237 572341514 1031863290 910361188 302945288 1059710805 298034127 882777696 102433965 172152381 918994156 891811769 68219102 68338940 871725335 205021071 822895711 120635927 114656922 167904893 653896097 251237854 936365629 330786938 632821187 560887125 1041828183 190279897 1020669174 589158057 170917012 32481438 55172817 928580508 23163525 1030561119 820200253 778844 764819442 120620303 341929365 618083047 732677415 695087439 188496177 20881994 739799312 314486303 1018681947 462531878 827237629 236134692 843795163 279601617 501842746 1001096442 756407550 531102362 752390901 998066498 109269342 1005437998 317226798 524455707 31350964 945827989 123042852 376219159 1021554575 847572840 439574038 946241217 152690903 258893790 935464016 320470070 742552526 664329840 755300270 609641864 10555358 470086714 147048658 186165579 910326813 629716556 1004942354 240900209 8773705 712218755 997927801 782893936 133084805 175709670 994236062 998774521 533039810 177182285 272987126 291028157 186043596 515571993 913044070 334645821 858814147 824616239 1025097562 836548520 969780328 735931879 328219297 349517946 587059395 725648346 804597757 251456206 342994557 287125901 709592081 516100607 224128735 109453016 397419611 34847301 1045422503 717268073 308757068 732758257 289519731 654070339 1033047391 263913887 739306360 65076622 879373846 103734366 655920130 510933003 915943520 939399685 276774388 79711511 178144717 807952756 332252111 716302925 139920595 746755056 839114116 333364121 946850006 455866914 535049207 572038034 211106797 420723801 270111035 572133601 22193449 618067648 669167275 630750446 994777108 608735715 846466048 317538015 895622273 167627076 1056700013 1040359968 673208551 26553604 120993065 756547845 331838213 748563861 17507205 1063745889 746345880 699429416 917893277 741152277 956195317 258449506 955559398 200542182 810890959 208506781 355750256 225423970 730289521 694549269 85767640 619931980 327078013 962541117 427093378 545133463 416509877 39597250 776414931 812143003 266443443 1038408035 161437655 644604374 734054840 1054930546 654762362 199240430 959778045 713532101 182464693 527084516 1055861400 36257927 360951224 146064279 866614454 697311602 442079043 421653824 288233373 929707125 356510770 729893568 885777878 672478374 320433428 37807521 354088235 441177119 430789982 1041662304 421095050 928988486 98842161 542277222 72566479 495190848 86635841 109844263 1049575545 993340923 3375119 630983110 344023062 393845054 494554984 92536477 112337216 730709934 1015502511 949518789 92750154 436220676 695957739 922787090 359461263 711002283 944987924 792944093 628094214 367607206 886660909 634356425 485371511 712328545 816940954 573093196 712528894 233820723 243433 619464320 771764998 945790622 489563845 318793380 616387225 112769406 653056528 114585476 283726550 413594639 886155194 1071367004 619705941 1055229022 227044242 516126919 332013024 582215589 457360515 613077290 944483077 296995238 29004801 520876064 836257523 261246395 631697264 950831540 578002629 119164391 525900851 561301782 73123159 444620588 473122220 229240414 962132941 892580368 633001301 678857423 908195779 42732272 792301029 988499646 990971833 444001276 87920622 332119540 430449107 364903879 927846977 729430651 838827722 457189694 864814776 539882931 284200580 171700756 793704426 819157343 991173860 1064034451 977509213 983959977 66778843 268205819 144068128 1040921418 1025423225 707070596 730439262 840411945 314946792 247941519 883834227 936355927 311101904 647038002 202076249 115225664 799526517 345214478 855094365 849977467 72322166 768638475 665408925 515433796 800767409 399391328 1035992810 760787705 250301573 1013926454 194018873 44835292 755083902 814575277 335574272 538475918 1034494104 268819714 801892356 110234795 207534230 369897647 453712003 537335819 147559697 971476100 235458924 237896584 125696226 859293449 1013604861 114130300 888635980 413698312 1027373655 885697491 209997455 969984241 189260787 909217024 1066862399 742657114 142290591 443292015 789530984 485790944 93665754 1062301681 816299369 353564862 1025993284 605637340 602591663 907457375 66154999 671464723 158530197 191154649 676006923 209810428 290091483 688726559 1012505306 122801041 746502164 153287437 643283498 693209391 354961830 534708218 361460209 724925204 500572839 865425475 450880038 756874654 334691520 776277967 942470878 850783105 112026282 911547471 946664589 913643181 257518063 627800150 670893157 846845604 680563755 426719484 884142184 307228255 478905180 352116494 717836292 205065105 969783338 224365034 363458799 413397689 1070183166 90279587 815086507 440509474 393437966 417480571 255459569 788154778 982663978 456314708 31800734 745041699 722803350 555650852 92019532 418672468 930344104 1041527119 557784076 591833196 103792247 798055181 578568848 361940438 434830488 122612069 1039732251 207913481 915898914 957506710 203138263 1022310382 833027472 827744745 1006319098 334810854 493686419 53823871 983505739 928433176 413801525 60788876 591385113 722183881 658416944 585421239 510502070 29032397 707032682 20779918 804605444 197905931 896868102 745739697 400037877 736748852 246552512 620010497 188111519 606791571 746742358 586484823 219155593 666385189 562855664 23420470 657699297 414593787 23401548 688468378 688971338 851353992 3348031 923982411 308289753 442436795 585079562 334122671 486500080 426507560 727680773 773539021 299367557 750187817 1028291082 188308719 437669103 226211384 47425311 518319971 560742109 291796643 137220844 706320522 580137503 891922591 569047727 255935485 899717931 441449294 650303181 637167647 348156559 775269741 994935810 3610270 714170182 612077485 428714390 54101084 359261511 929287801 107073026 78949222 153597821 746138538 896042653 725130140 756747873 461686987 529942031 334145553 720885043 511838277 149887918 936734196 13293862 348726812 727736623 386771094 942238690 1043054680 786075091 812433863 182895893 795655413 587770751 197978322 257790776 1023539630 552085298 780393842 461856590 168804064 952548121 45714100 749341536 238472748 380971866 530784677 270982193 89019044 622303654 662418462 600524379 984437599 883591700 166362523 154991177 1026162381 88654636 774470215 434505538 395465808 1028019399 844712824 938761447 144215027 184033071 337126274 727866177 831083094 17806879 101118411 82621818 450512250 411199456 633670273 302892743 430146218 1009461890 192823514 730658622 893519932 266297531 866871502 954259622 503051618 469248251 380577843 521669990 502457183 201769026 991265177 372439760 720735052 576352665 47010673 801861422 500087261 967990008 540639853 693465073 351317531 825823777 803535176 112398891 938389294 129728654 300381216 472936732 432723040 751217493 370016162 1064856903 131385533 535046174 353468788 618170199 194860217 641624004 440234388 880628235 443701526 953228645 1014449623 769837043 594806027 278961654 749098166 834304714 934966470 331081595 147548484 776266273 138023103 935073657 753991345 636871492 199094054 994153641 808566834 381452111 347419708 647099186 43119486 250877181 228770277 207930710 751844029 636951896 549111995 12527960 250092953 889814911 1002396379 386235774 460101879 712955556 759396556 115727146 833729953 826139249 850369170 1004190771 702855921 341931932 197031950 981963944 656134197 1023010454 181107059 496413094 532956867 746536566 967032041 242165967 205605013 859470800 954235697 211470353 157411577 634297098 641789839 140982832 996665919 514013389 345846218 675283962 662862871 178567550 1015675625 467054277 1026894113 673479027 216289377 625895363 1000097941 613954248 987333171 144895501 483096705 611883481 601398456 378262074 879974148 585198027 663238069 182348915 289369443 25843286 454270109 13370970 683889850 984708973 399612489 371522645 457386353 1009667129 616521628 908953065 224508956 634258583 885329752 1065228346 63759403 144297743 934723779 1072723637 341623028 214082018 804970371 713212604 1029110318 334178795 899043495 394703585 174318039 828303349 335670368 240698326 33553880 267119440 1072863098 75085150 330429299 396672814 492954455 210521399 395747492 759056503 933814864 64006038 751548248 805876160 352366637 532693283 944537316 378955343 34596023 869353277 979725242 598003041 923578284 524965835 499510365 582062274 952025026 434292949 916524957 225486171 997440802 859170834 709572821 79438055 154479058 344188495 799997159 797444410 259146206 104619817 533821011 866697889 223712838 639114126 4362446 571967126 583818774 149475602 339563144 924384370 676508864 1060432480 325385498 12141169 594004828 590213435 71251020 198719362 795863987 795946926 172242756 350743036 735634425 289192093 705990086 285605779 84664437 193243437 25331854 915554552 1009723054 961298789 923857473 967319978 807807354 825578833 383557840 168194339 466429941 749429462 188447994 547367122 947053851 520283193 53658784 31269869 416876206 378537097 821888726 863628324 902239416 1038495812 279161382 389289401 321670233 96827118 93419072 1050817543 62537899 441482881 3567987 1026593652 427098481 819213599 907419729 647385585 131293161 390955739 963512104 120828435 282555379 1022908775 104262990 712349938 841113757 350654976 649052758 601563098 740654967 1051105290 760418001 517830391 965996784 412745350 348803671 70148165 835488582 27435558 140384535 391705424 701123252 415685133 802472087 1058356930 202443956 796291802 315633900 902065375 341117751 958084222 474777865 691667482 1030836607 331368782 727241165 327920381 761597046 756958462 1047102045 34719663 461583725 449919723 338799829 628061748 229025614 19804133 88681940 295268912 200382525 719152753 473672641 454410902 366242081 638945488 508027583 126485965 408380287 757211791 586504106 30100457 21515093 662190661 988430291 713682349 314466958 550368799 335141108 798246135 30912745 353658028 17713707 760928806 925960668 738645486 1044500245 59019843 876768634 478631497 359651660 303531868 884060779 29247187 1067454373 403668895 443400176 377990072 260468181 95835810 745405417 401995670 320934354 478029879 603417729 835730035 555409766 833147132 572556091 27155551 876744641 50479816 413245971 342136067 960048500 979185310 1033987529 1439509 541499007 928559065 705292121 981378212 1012608996 877291204 469292769 1004980481 53294457 534741295 52582143 994152603 137509273 1060017021 550925557 97031728 667926416 817749997 21919629 445814730 223261374 467747737 490833414 348039575 940049374 1025447268 48840429 882114269 4829742 521459635 348312892 31017143 685452371 922699103 172320718 505423536 1064987065 139438080 652489903 902910320 433251113 915477366 1064278042 939174582 715587337 511680996 919312173 235299440 950272456 250983765 822092170 117978785 452050280 546698779 1062497496 25639886 48621848 22427814 144049154 992997380 44552550 888702359 486205423 342949617 503381597 654018929 897963093 989012578 1040113550 87669855 355597109 972650314 299970130 217860626 613639523 582739217 339856387 623746064 465536056 395764616 87590267 895530859 102981222 498575567 1065619250 926302096 364044780 863872718 1009490639 1029422955 737052246 55505614 126089416 762488051 755700602 763532039 972565068 200526702 73739928 407057671 1016853374 161462499 412266493 556207806 388138090 412191842 218216096 131406310 954970268 993404815 1041990606 160621055 696283596 512540430 251679947 1049394135 455254560 801957346 429007683 155862791 214661516 276816460 129648289 491148110 412965139 241708017 536260943 813343444 999476590 416695340 106667086 680101522 889591317 815794309 795622449 41265510 810880108 365256949 938991866 491997585 407064500 433962453 235196723 779499685 501603785 652581618 939372033 186467194 258899791 1045562070 664003122 32316483 1043968255 432957089 324622541 1037088290 696765263 301357421 520490009 441500021 426551135 81741906 468476892 410759619 749607511 307229784 187997629 775049210 399080025 626643159 1062042125 281483957 63403635 976263347 920946294 400348098 509064436 419149734 1064587207 816064793 113219006 705700251 393980630 605318357 747186174 938703754 166411233 172959742 658233209 828072568 194467812 263893494 665537650 672142467 622935868 212746308 869416626 841160507 211959136 977886729 212505959 867459869 911070609 864111807 310963721 314384593 363673286 689368682 88687736 845050404 75585197 127883248 484099929 131091256 852064414 650422503 641090133 983462287 807157068 36977134 342567430 497555611 398435368 943667175 203970064 109761184 305000646 723351311 591532368 935970291 14551767 213783354 314815641 50579781 236488422 584667684 584785280 357469244 368959274 419343053 794255425 544917048 1068647724 361911197 799890809 95397108 895421661 34843753 328755209 737909294 248024460 984435991 410846465 263799735 294116504 198582277 1029941004 994960558 31263749 106007069 614050120 72481011 500453818 485469647 440464559 361959751 607686450 62189809 752702325 151518241 1040845295 545633787 47321902 374543153 892843020 11148485 35719528 83113100 585860025 332761713 150014766 320346495 264440718 87088023 953328039 137282913 672918766 844520917 264479187 234140427 498949160 567950220 335061012 427476113 247886976 824164683 126024689 418172630 638403645 163774689 559926512 685856309 911447298 1009846987 685134176 313470180 42923410 37523655 785113475 278032976 520278025 70413842 680043487 865354323 324791250 610939657 98209659 227975890 991311139 326056578 368434316 118472385 370501325 956699431 630529480 468640486 301001520 294355662 836814579 500979344 721844566 954149011 120241118 101210466 33940132 678295878 688726167 726081099 399547404 513385953 342981957 913001377 789023341 512217051 720217415 552490456 506389013 838645395 390302109 697568311 723615923 680375924 1002070135 920291184 623070213 328509636 798766119 87241777 885447065 856627089 563172918 158302063 278664836 950158362 413068644 576690112 1068594763 147309902 303214133 369722887 1025680590 694879876 925271817 947316360 236591387 607570447 603938533 228527775 863384819 228235586 786206677 582984056 721410087 227631288 946863762 185951764 1064049691 301458379 906014309 867422173 901422451 912291976 74407172 472975497 888394460 604589080 964958905 674805740 339048615 489531510 43861104 416171599 398916918 864654708 66340004 974432831 890219777 15934366 342107393 624959049 828462842 152956758 327743143 944864138 50164394 836687920 993868303 896901537 423856779 348877261 21736790 387332727 432716324 69426757 830125096 82130233 221324371 1001101060 55971777 239971492 456141055 994941678 846004880 737331109 328879359 640155035 836624551 678358555 279641858 632719729 666088630 572141093 264467731 993609954 126673303 590715047 389386957 788714831 793422198 218552637 356928223 207483904 334746775 319951547 244424152 380144587 1004974882 739822476 865281351 179200833 219987117 1067360821 992591024 701423028 823295987 26854773 366094239 628764000 1061395350 1026652763 618929593 950285848 22529043 300658715 35495902 588500494 34886825 942647509 303361410 831173086 655375119 399809509 230588259 1065004121 544059125 228630201 231156502 438460846 90309520 427104563 1023937034 586449844 756348393 808581422 686010834 1044054216 973938366 179165794 830905351 643677048 37880591 323117210 898721076 710919319 126295941 294652759 795145255 412800489 698898383 602013728 606812198 552030514 214370339 1006075995 701895329 247263589 171000119 488339170 636536778 245205340 781987437 167770950 679756529 919285887 850342274 998960723 957968900 589498333 6685158 362027771 413928158 174762781 114358046 581340672 904112709 662934291 973177495 470228201 409731115 1005301732 1015517284 192549712 546850790 421097781 1016487959 853815422 893769030 340191391 824596243 1063322577 608122246 27246343 501679737 742150646 399270611 368400469 1035763533 771610396 60627582 510642769 250494860 528878565 828284575 118571313 415513728 689737407 442103520 737149680 183764893 148940974 231451568 552556096 912396604 981681035 1010102370 929885053 406285250 128031234 102670111 516498383 214977639 59591564 1072704137 876664517 124360462 157809901 263229288 301537370 6818198 483564463 898298727 704429436 471114817 376677212 813272231 486540986 244411119 756395552 201304687 838325723 1041211834 371813552 544747266 777525972 641858767 527750074 355944814 4720893 240140263 1071680796 358923494 978617004 111414835 635661891 631295714 133660416 500535826 812250376 605540186 706822458 617864421 1026010553 917452601 295485608 934224494 688510821 1065602802 119982407 1004988030 384444224 8676459 821483149 710671168 386221048 36779611 797117968 881568786 436370002 418956764 129895865 141233765 1011997182 25069487 983354499 90136427 205544032 546560453 617395673 15110056 350616372 805144188 57536147 171425492 334973156 195205748 823770226 290450038 992491636 47153698 88206616 294137088 974430325 530470087 857460200 199294353 843047959 329467216 63358827 409393301 250907171 218881188 178372622 114959834 637377178 447080085 445508813 146514045 514308833 284973309 978360093 281718550 440621711 341094211 162789714 81317768 753136609 273692186 773955564 803586142 782609691 638167640 274154426 603938580 1021311442 760585937 6654826 406854865 394462033 954109849 368483504 1029384154 833849150 1040749644 739683601 851262248 710858567 488893717 596667910 646994426 771289152 474826910 42810831 83626896 297325645 584000649 903213337 39613980 718505424 570123094 765400752 25042308 385621127 450928711 750320399 492798972 838047366 665983066 473515088 794478301 357980839 699860020 917551321 869732183 512566377 885691410 9967159 528683070 665442579 705004002 323465925 233649829 365577813 8946978 764902017 441339998 614320660 912910862 426570873 807121786 542744463 5175451 173464665 564334485 600220783 204223252 917937352 938257953 431715884 870592483 607396315 398249446 117892173 112979295 23669135 646926218 48701074 176569363 503186464 99091201 461102 248028031 1026361 43590384 893798639 190683671 1026400923 424554035 858795354 933032764 53223182 443974558 263848528 808837765 520149794 729732620 708469748 400308689 1033359806 606884456 396079588 879136661 544360216 432154168 365143435 84938522 1045248450 306520680 495857974 869204352 352260187 975661084 201010926 700381761 671801749 939768423 169462202 592249430 843956878 933456012 235666554 311813108 782780951 1027094687 725181594 341493278 8236383 359443105 313131511 1016446899 38917809 554373721 148899765 648210015 185992858 1024395726 669863242 495310026 776923133 888334649 873366987 68670546 777823023 486462739 222810758 4220596 107084798 39400500 40172898 64997733 391922915 298394511 610700390 163395651 425621196 953473501 491173375 668940787 723521238 466634165 592878369 16358727 1059705293 10451296 999663605 1036746692 65237563 195786960 237387123 795804992 766475526 861625640 560596711 713573643 696805082 680825076 685866170 44823024 383570899 766461966 1054147216 524531104 122958558 308251039 576196968 1066769873 998868956 502204202 508571707 334992063 308184198 751276084 208927963 993018942 439755711 956325903 77757342 966940472 557476369 174494554 796499152 509168836 915293947 573405761 240805690 270136851 186209191 536033570 46900934 280599471 389236770 285720892 932519242 340175165 660921937 52690204 998555948 813444763 640339045 759911322 373830594 111884102 936237628 905621660 469284209 551162783 13401731 800661371 54154476 538861436 996480264 540226733 880395287 699478373 652297512 998578292 745911978 693679434 801384181 231518724 1030466140 347664686 293472896 215118030 32614135 706814375 21278403 356211771 754634579 875749689 829588149 84331737 804279879 776555456 365871936 9381300 952679388 610465294 702295032 109170836 324058063 810726499 431542450 1014307094 194583177 242528195 414456604 491676897 44288961 572417646 292418273 572086883 42519422 227469427 761528026 172146452 382513236 797815448 445482721 290505872 217510898 991736165 463390060 517428143 297141702 555053356 112177817 621234843 445386733 809028754 749962001 280858637 943893257 1010987694 557936097 768327866 1513340 485197557 72051930 7143998 4318256 444011415 299314742 960895208 371779531 1072259208 881709576 151073365 397650509 672645116 548538199 710399991 339184378 54303871 115110854 793945049 549820838 201276404 54345704 174002259 63143816 874030895 859481581 827015392 1068643508 271311961 1017987173 244510980 19135748 7662484 974402177 507502981 688566473 360459216 866986091 13892653 121708928 373105762 191423825 897940748 445855403 386007796 817606213 535365946 682960377 53441550 311345589 548946473 7641894 822576077 383602036 140813619 290019159 287130664 680759102 59007799 305922672 552753037 81222165 1046384666 138560586 46999113 141002270 722315755 524221039 822570337 528527024 65031598 913264626 442585129 418266703 675981797 996646857 52409791 396037275 500880622 852319090 189359072 212746748 139744607 1009812418 643637337 168168731 574507071 528063245 834718695 788658932 79711883 438223824 874557725 26243502 651048852 673667948 182866623 34846587 747994886 665369902 172505870 768058916 161570638 963740400 113479029 176309106 465664715 200017027 194677994 279166078 838170202 645505570 77381131 132034025 714318407 275819515 40620138 408563712 1005522750 412112914 701111008 268883795 119006346 584222501 487679367 475402092 426024234 830978263 152115901 79335881 852715787 535426591 373446731 584403027 189474072 280473371 1004644572 854983102 1007776823 428788920 607003589 134098898 516281591 635877576 596534732 173632898 308664600 1008552807 1073535383 358459748 939229359 351330248 960443109 211493931 260570334 212469642 29986989 185131968 755372285 491544672 239982052 179495657 236912262 783652501 407305529 181190379 144296476 129372345 144325281 606190712 432286275 427617953 99935193 15986829 189353679 819701761 11109461 980073599 641020757 336569268 842591630 459241702 394062373 250550240 495236245 179268067 714704462 363277899 388328390 413292476 965888627 794822687 67662666 962254126 853516937 546247187 864032886 627035372 272774457 1013204982 691667438 25722621 43739748 772998543 513735987 246854841 1035116434 208896868 763561789 643644275 429715247 604169991 447660593 577915987 681466969 1012744816 102397946 558777634 889682680 728135933 885246165 59457528 586228413 35442473 250929438 543111515 797711527 527748386 1069024421 59556452 928033428 28810075 524207651 278068296 107255144 788053140 637324997 739368751 109371855 519055083 265165849 400061819 693586867 1000963083 385932788 363523902 477737913 539634318 814270011 917007345 407239126 944615597 309803250 847959011 850055035 853550534 216098191 943241044 532105883 21628864 254740184 913683749 246617796 688898149 746370458 777634476 589342661 775227973 132976408 87058872 145662490 1012352522 109299777 861722303 972688323 148535888 1032245612 160864557 226696284 342990906 461024799 248941745 282497786 213840880 813811071 1008736804 273992670 520694688 776945031 470607280 359508861 738761684 431729169 179069587 289107345 761633315 660096130 734379588 758413102 291699561 795813242 667553745 951556131 495326421 443359065 646594156 298981482 949412998 849533774 842814195 578002128 763155903 664180010 926594421 24620360 751634359 775553356 73494387 589964530 1006800508 816711534 889836330 321453987 46254769 63803756 1032345554 655155838 755073123 436614673 880814467 448372768 1069137307 409838418 369250761 388189352 431570679 776624400 104077758 752946287 94988433 909014975 42136256 584853738 989071729 823302451 759546089 351952101 880505146 445077589 123740816 242658429 391580249 922623410 692480039 551950191 894426988 88588143 733888461 17691418 630577281 790136338 71872205 714147741 1047637091 44645126 474632404 1060863708 1014330559 60107026 945234416 863811259 620025328 416392808 1027881837 730074607 76597949 350487154 20053392 347851339 912953042 100763487 786629809 591254724 432203861 663624144 111128535 1062626634 401035400 888017208 527522561 1061143480 128866542 571430987 108067641 854703609 334930887 356860984 454031815 467050445 803029835 160314232 842257575 482417424 620371512 900174849 726527862 311780853 191495388 550066668 703324555 212127743 860515158 483634836 951879399 340905647 460733597 107316895 299846289 996147936 707399078 847729882 1040225159 483669944 524223594 1037242016 407814891 663851834 335463721 913364353 930243898 627145756 775199860 773520362 874851753 601666487 667888133 256532422 144795704 991070105 607208387 972623720 1010487827 114938653 623588100 124557750 857069790 192080998 857861829 493200047 402792171 177860354 790296483 1066266655 381625940 758158461 592172770 126609703 310894748 626316229 282619713 710717316 971428510 342337913 342170708 737429171 116598722 276074092 415585122 542253765 208033211 322948005 325412543 1014595961 148317379 652082908 349382612 808106633 1043774676 1000626394 833498626 852252845 46021306 234027125 1045821456 13254949 1042264849 541011477 53187845 20014021 190189324 1058725914 277612493 213997177 689203991 816090268 814631933 609615093 797449260 431851342 188275673 1009326156 81042848 130267013 67055711 539399169 660172312 693395617 281547945 860988759 565096274 568060758 687116104 350213044 734194705 722928450 24350763 757340384 70233087 778913932 596175030 888239005 657886309 237314696 924809243 365123466 367092154 372879928 849538786 175784547 449465995 606068359 282861983 776785069 930355596 150428646 117122202 329836385 345711748 868159768 461688584 526099419 866694999 720943788 225207449 363636677 735811722 954992767 895220519 230494418 933736529 234902310 619599648 204400867 221303465 392515977 361089052 607288343 38899048 309532701 295175081 436276707 575928972 731947498 990479566 315558690 508686410 605310527 1036519286 640429028 336623606 242619764 860211057 872079741 322874574 899200342 780833646 86095620 854998739 904225384 1003137782 77581352 36227159 795831617 745323228 901553816 815796987 867219847 98660533 308500233 709800877 453480235 964590796 898111580 386451753 840583408 402338927 59857532 250462685 577033160 4957364 292173765 129737792 378652062 462850915 736549478 235227380 149594725 490298992 656319851 543657325 810920101 107285020 143197321 377573602 15745738 880182018 970316246 477688858 959792036 494497401 285345869 522373465 208796106 58970638 474194354 299772031 438287419 891665639 447833764 203106136 915452914 914734928 482490882 836415596 758325128 630268260 2636342 671403300 790201259 686154177 456498735 88462748 587350633 237219641 681961294 417984290 844704294 98186027 90931628 784884756 655064201 13588684 595332562 178232443 487729940 10645425 678655464 243533760 765135754 1033688686 205107694 771685665 792046643 471044262 42610245 949316638 955357092 95915745 470145401 851034453 315343220 992247206 637552498 482282998 111503433 113371280 476636096 194983670 227304118 549319110 894624306 913260145 1047394534 850268102 393268289 135156789 568206207 75409777 64463379 989201451 215641259 956567533 537620212 661933413 787359164 535448115 689198541 378452752 932404808 571884126 987100093 172366358 540498269 311166633 483898677 395897424 290683722 251517046 160058568 835724871 676949898 633215873 365541644 972176569 242373834 521043712 54800349 1072445012 594743186 324306397 970694345 231705813 281474543 360508273 506556106 241184058 896342298 364610858 619994115 630635071 960865229 220833286 858235436 433778083 762754122 677085777 161284387 238316700 183435629 789979406 466715516 531881961 943076465 521476101 1009757444 778574904 915631704 372316684 286382992 732936755 761897453 763595686 987200324 66369430 168997934 841927097 591264165 936849090 106400212 931762414 139024530 45686972 572036767 439380848 338161901 19819823 197384113 108932375 329092592 339614653 890056179 121526853 549519413 299132299 600573672 112232036 367126534 145777269 689089373 224168690 417113939 808311429 212152717 399424497 92690605 928393092 487275859 1004736333 991540466 31702053 224551308 728280346 380976379 847750384 420701503 876076832 597413420 704773383 143611608 599166307 392703465 297749073 484146307 135384280 620674395 164262380 211322381 548143614 584192671 251413555 249189026 232910040 720648612 386867857 610753797 857473280 714033201 765997005 906134377 884927032 430611294 992940121 404864508 885314153 446706897 217185580 523311949 821639817 230458665 128030381 410036420 465959490 1058910642 355022563 842405538 119157829 867831279 437591578 306508007 712138107 613405643 435368214 523748514 33462588 667293194 16049654 544045209 910733502 410498648 960863063 984847151 755989028 548244496 603753633 1043336171 478354654 183714260 11492631 711892109 45425936 870846613 856718119 999659132 206941436 854702255 330249557 1025607072 531303264 677301154 688903129 836421079 783724788 907211939 800192173 111976139 592661845 105784455 901301661 709864609 216565102 259645343 888498100 855764096 754364960 251603136 656054718 241612451 667539538 365946066 207108126 409925135 822182132 204059913 437685109 564826459 28207795 994623855 42628504 1052484752 537993154 229714771 802988011 215757188 528215860 363203224 752022246 487315860 607212933 418397264 426067073 487292748 382654996 797777294 851346646 765328994 143578360 914607224 164136528 605738503 263216768 792866048 111561215 909898655 145031857 275083771 732893504 798934502 149382096 1002138620 144659048 1013299218 1010651100 1022928324 129520292 421322636 261203227 9356623 220200225 294359534 223619658 92692177 442843587 262417540 558168975 256921455 1052004981 823173148 12182108 840411979 909592301 439556145 96367713 793872917 751456020 175207376 773530430 1034959120 850258165 782008757 523498778 3757792 289662396 118319913 1014645026 394628064 976207713 1068348870 302017425 588138104 436948547 1028152002 417699404 984051677 734703342 339403530 451779129 554243233 254461604 175003968 134555599 58303748 624728089 581878057 372593247 854547025 574703661 761490841 633321595 531392616 833543081 576477322 1031418657 127281667 304734347 285532349 792309925 420021726 267998907 1042746093 1007035283 906260675 478921401 726707146 218427904 65458230 354286953 927611397 433580888 98789788 422853508 163627000 639034186 272621376 899313998 830643573 642255330 71041360 501343358 20148737 13487009 117973571 835857811 42367474 17995843 623925406 624153495 268300688 157551020 544798114 897459984 343883954 714932524 774417614 330035882 930563000 257934636 487857821 448366965 623220395 951154566 606672955 1036999491 771191630 717402703 887039731 695326595 362504081 666235969 637771324 741152722 771576990 28905801 203280452 527388090 909925366 162732638 658568119 854749124 108524021 42756286 543490696 35127639 726878544 970162894 624635951 633787906 925654043 1007078063 771384587 725366989 653416395 435561263 152585450 703952975 1047827939 771939099 424334553 433524766 842261393 648205811 594396329 592255134 1014821930 126001459 151166269 239031225 131136399 147268425 882475912 735380260 286435334 815891569 992436548 1045885144 181151274 329789054 940846230 784526292 491633994 976184509 896893586 911706350 935494405 106886382 614996371 292282574 871346221 1011857081 189905670 460787410 803722753 878618766 1060620041 227694224 595608503 1055594239 405662936 154405393 484493873 1028826821 21044599 314173453 901989971 917253575 834763344 384411870 339509945 363174928 773341759 788817018 779636795 360803138 1005677266 1011130439 365411136 603527571 240326430 540295410 139348207 952622056 841822666 132080971 316782409 98321133 609106055 859833105 281477569 826990781 618586880 367089888 433778139 1071056169 851604823 750235372 1044155344 724599617 386334388 801092379 19277386 171175553 208914567 742916450 216765249 189554409 347761142 396215410 594446901 459768606 780595095 982891514 192815883 2162559 707949306 141458018 391907032 366325805 581275449 820269550 740569739 287378454 873304283 822786846 441777802 6133464 296394552 919840597 237060650 401335790 724925100 162410574 269307677 104315065 774051595 340289083 573437704 764377961 713794385 202898415 286641014 94248997 563600156 777426537 379832872 611432456 102758343 565482409 600581310 369638643 552356436 906413270 949662322 760100865 662901458 23678268 623884308 111502245 876801783 832332609 357428660 650774840 923888820 66431163 605854829 103142570 1007911862 425857123 388654731 68309833 118930564 980374952 647191418 218067908 880205819 210168494 651253097 709416481 266503344 589365515 940336259 932708458 367557778 928276596 79692273 1068387026 749059669 5629777 434618268 49055017 822267089 77455192 195510569 229959819 1026644136 211434338 397932098 283909740 331908034 187028502 816342739 1048394437 476423881 87502108 646685861 799458880 994952524 1028227814 985720082 283856778 21210828 166367331 223447207 423753983 379689926 891372088 794758484 591058596 826755302 796548615 825550038 437256783 705097666 138333952 349125621 852050647 277968401 186562144 434840998 268844513 478179740 678065664 597310968 766688883 884370147 676025699 697773372 578084241 962817910 1004729455 307701765 760621492 281107768 305920858 566132288 408039964 984750866 688209120 321520199 484499700 633585446 717973027 776660054 25878396 149303046 635700140 559688393 350902413 366009755 710510053 712313634 844641213 981639062 77074265 1050924561 968172840 213167722 915669764 317580696 68364937 857441844 522629555 462736408 115457108 412300249 287049071 750572960 135426809 533972985 770348363 1001667095 855352750 807470715 818522784 853892968 231379964 109951566 980200573 90004705 550942881 1034715611 755132257 538243419 879910563 772565322 426070017 467295785 126860074 1048625329 426690357 529265843 867072071 270902773 451257427 903554684 919589325 227471054 639841336 846871493 309780169 264378847 305762737 1012024174 457224428 373963101 1025896384 270255336 132451670 154129942 398772859 505124529 1056740589 354284621 601952503 699446053 999501219 643616792 1073700306 801033788 540464406 39595333 74197888 810332447 432268115 658488945 17558438 737026265 311875763 959091914 607067360 12309503 599944299 45618859 172679715 527909461 969882899 219365060 200616749 845098682 385374946 685277536 542875985 88518486 119554002 637458322 1030496225 196159752 391448941 688240652 695720908 427922706 840851777 461548056 771098867 422657937 735972879 881972705 98323340 43429067 16280855 757735497 1060124155 230089715 276315419 587936704 665976859 435142072 955870943 963524087 753801825 982999652 13931 335288986 258200305 636625145 646667437 693855753 300854342 779814858 254957730 981606572 670410725 135039243 939414350 126944557 148594009 692511285 722354314 544800953 135765692 254419328 422550653 523161625 724943993 603729647 942408565 589170849 568307026 764744248 287461727 351386954 1044990576 909055284 122079421 660854909 126762679 584948132 108807491 446072261 1039144911 881658200 809658448 479237838 607206552 482360731 284286571 254492340 589372783 326448163 134531306 835076781 671352080 334581008 475914546 754478183 545509138 534562731 311061167 349712863 442410934 482087728 655327271 674398215 599632951 26803540 739899841 204070037 795737602 214045733 79341186 456810687 799642819 4433589 512148788 1056711836 871453226 754839989 818910396 318693183 585315694 87629581 217959535 1004039466 696943350 170511685 2049844 799913058 1033634748 147836583 910987011 766153831 1013577260 940236318 658403125 774046325 630279564 356271152 88021517 195589159 375301347 98342454 952620514 441037572 780565405 229337931 138237336 1055411360 536199272 728321791 439631194 229947365 504134010 1059535722 685040777 727381760 967311039 195569692 191149572 75238592 38470072 343622079 190757838 383096828 1052632484 200747487 224026755 462202191 755109390 1029718167 398813087 663986058 105978457 675742420 66976725 451908061 317385792 843222419 108009404 807386695 225925525 841598281 235138375 462075317 906324277 215492822 232917356 866112269 1014640216 309013850 401757746 544578896 915393981 1040394278 103217275 283561385 457711457 172669166 231914737 709244866 739592223 774082199 743500250 919313596 932168690 350057757 672067521 823683893 304024595 813913561 437468057 724240521 119395230 171439216 632803857 633034192 495035853 1030450812 606428506 227580863 393207225 503844902 414105451 286777617 664096039 847003522 861357462 969588500 58494097 159141380 784213677 652549663 636122923 435320232 251815520 584489139 278100685 442040301 186693497 201760370 179347777 453913841 161973243 326200565 470203329 659909812 718102894 164338288 604828312 257267202 501834265 639185157 849878800 581031146 246372338 256471564 927446379 482857215 861007205 719147920 53963603 222105447 335752446 931927481 1042685657 857987836 395644867 289913603 106782829 764687873 126360389 483105478 845307158 60858385 677454521 353339440 102462034 80111310 350753495 964501589 744390003 958279053 540104180 182647419 118295475 709964723 5063084 119521734 1048710440 342382449 750839152 820932950 969927113 234197670 43065290 451856349 593619950 758558113 280370205 233143218 998977808 949097511 289901475 671781233 520070722 953905831 663386283 269600721 569723278 920293565 534379424 194277128 204304271 628205797 378305690 463457240 186745189 968251114 33148790 586372649 977202733 625375022 384481226 718384260 366138996 627679790 254992096 735786794 85029411 176336824 687394329 928162596 79705961 514447050 11083596 736283924 208408960 959034714 1003787734 140007335 939937887 269870640 69729873 981224279 834654721 612070507 1055057561 420054437 957775319 336147510 739878536 495929461 34474407 1015164861 959437662 790167168 405677629 636176825 30877295 366332826 47956946 462140398 965248970 593873484 846662366 129672704 868305343 670438871 396269374 320505274 778281924 1021485236 875630247 542803940 229044280 273902445 610794426 401461536 781374095 983041965 25154753 618141054 430463846 572209450 993525610 916715841 656877467 421764698 941675716 822435895 555135568 597053300 407636484 401148110 882713826 1004637769 131089345 289749414 275402253 980582173 139146578 500090247 129639442 159280204 1017999243 132351223 913139479 463050896 298386348 130610962 21929951 132014147 784498833 360512065 441792815 687667979 993660337 1059811548 291659540 964638133 643753186 620710632 649117175 594802490 573215039 315863936 168885593 638917473 373747582 52480734 592121790 588375925 246429408 78467395 1030853240 561983776 198501716 228411009 690096530 387030364 638546065 945361438 46003362 123475417 679267898 699506968 318754206 663478737 786411972 364112815 277993067 638547294 556126884 926565289 276542376 512879123 820149804 651412139 777001235 558907810 39551612 198856063 215173798 631397986 732017569 377077209 476492974 60611994 1054836935 508108718 802467410 1051077769 818144499 140062466 66763988 873214901 1017208397 545425792 993915340 267130227 53353324 173704884 534791420 758417352 920964137 392650965 797283886 1038266014 594701941 343541860 637454040 189279498 158804376 461251841 493492500 903408624 307505240 433662182 207670011 719297987 542108651 686891770 993354901 171312581 906210560 436712475 68554222 505699386 856806463 150723830 338657666 953215541 60475997 477869859 730627740 299549617 961393893 113313613 935120997 887265658 649518490 767265012 583826034 196694467 542323872 24912909 769794165 725311446 1028189462 216440031 213475520 73273016 17413317 799436596 582643714 461064295 77696947 993858054 353747973 101233948 477482409 1026825727 279905089 138702615 3172982 829481939 484250665 257609305 728358409 436735346 491082704 491787092 690819550 178293026 197029466 243484856 791745754 24971710 89680408 308528407 367232381 343965754 15494273 719559515 464763265 687125732 44429603 848170404 644193812 680936280 497596790 20846194 745351383 303252893 763543229 639955257 583640955 565005162 844605591 772655865 386771747 349230901 504210559 141709709 613837886 688198941 1007024962 1023310412 949965260 341936349 848427927 287348931 67726081 312326594 222241904 110816194 99596314 780241568 640357987 994819965 33191163 644793007 603989589 228662302 24685628 929689626 252511551 960227573 1002050674 691672961 771219460 559256468 772456946 947781074 190999921 445253459 781990519 393539659 644747973 384722270 630888771 311735097 792048494 475766182 447612628 54607562 348799923 199098783 934373324 763286097 750777324 604758394 300822128 902094707 233156806 293106449 114714918 382077696 978244353 582651330 897977311 27506606 536087037 476291327 657513985 916617495 673083777 462918709 262110956 913332473 63457798 402493957 436075644 695896439 856474614 1029258738 319074728 955145381 89979767 176657172 672375455 401247660 564812417 334888401 512273492 18924263 1040430136 281204678 481248945 905908405 273482752 1000023279 861486264 737901912 429224544 128849878 37954023 545377317 965847725 614748769 587849445 800604972 757083116 262147234 961039992 62804563 552056374 424221616 323821840 331194800 63026059 84467355 106010479 36887792 89595187 224605929 174206153 601676534 477662652 8296196 883317126 568489070 28307325 654383260 635198618 705091458 1028541230 594510982 957063191 30180990 62260711 165344551 1064243402 876163028 870836259 666281116 946749909 720631641 232600577 1045973962 605333671 376629156 202856693 276745536 71723742 775809772 972299884 1056776251 232610088 460831204 392355661 248057790 85362791 412821353 374883343 921555092 584855855 381210719 348009679 590870589 928530380 340590187 81843837 899759125 19571892 493922654 149212631 485715715 39501723 254471040 189088872 493395633 83543590 990975475 730848045 853088121 167055351 78038954 556083466 355267834 282518101 183723921 1037393048 346670603 260340138 723978066 202598513 966917106 310517520 944216722 78955446 910867488 294586542 652816205 924413311 596557902 440281660 661475414 268858330 718404682 491846119 279143859 7869113 454859604 363797464 551514533 548262592 1011202161 313234449 917207288 1039251755 180375832 768821562 447815795 1009407530 793297657 675638060 352532923 169065320 131841301 1002589960 349554346 395686997 30895514 43775750 17463057 770789085 888007123 911058704 101242630 793847200 116813109 895183784 795559262 999692034 561754298 783785115 398944105 121766129 148971698 283674115 915949913 826560958 624400257 873657481 221970144 975866336 722031935 428900197 130986245 554569118 471867920 684060703 1039934783 986270778 580005204 571881796 741369785 959629744 368039197 316229336 670341181 631249572 808729758 673807726 345461467 295340825 467020961 927373761 381402302 970579301 440706747 1001081005 980069352 659879180 941393791 91851224 832387878 604217451 696299533 336131581 735291331 772236807 877402724 829712023 596438234 644321251 991476602 450714529 489594519 254961674 295591991 899289856 459841469 355516111 339869638 389370859 172602410 301449514 577382644 634980330 929137463 247256280 418741465 43983727 601649464 53900855 428126802 57873362 639148556 680349140 411172457 643314153 300910226 927598030 826893871 445455685 590208248 580340999 173612562 379428542 76241107 585758432 430673215 268714977 96539973 255554727 36844273 755078769 347881318 433693004 105892589 823176621 763058753 707361454 692867661 810861205 223784105 179655061 1501765 751441704 949228155 336584375 267726453 312665738 430429970 57736060 513745396 1020756251 281508993 11150812 505982686 204089246 731622784 848498733 1012143618 562172113 677672447 730441998 811853053 67287947 982151838 435764327 344404638 787671908 207155576 949099888 235490176 936401428 840355713 499798003 884536160 198488858 574934673 204795873 1062497716 743394442 494783353 928512303 185708953 19361950 496814911 608809637 869041524 219276031 631546999 320720099 508277997 463478346 471983277 980015638 277667926 614677120 937747074 760394930 199574804 1011961138 528749552 1009649681 532600284 534188417 588067138 332933918 521177006 62907016 636130239 680012523 883931178 246176547 229941607 815319826 774762220 957832256 853124301 96282659 670149771 518241680 496853028 138424076 770689989 748186814 909659106 917862071 699450272 833797303 173496520 522150639 442086612 229062580 464854867 478851066 936305942 878630830 518699097 449599067 1054792807 128387667 157317533 827907062 753052956 169144305 733562583 585740577 801739837 345752967 64599236 417314047 778372931 101008345 515803241 24524697 279506773 437162656 724011934 179709693 651177671 470493481 697221304 875107352 216944232 338000182 860184258 59815877 983453481 72936039 1064438400 941539116 550536071 424942624 838993027 352419468 563371999 757014226 377657980 613455923 971148173 48756489 107757238 1052578826 309244023 227307442 721234568 928585528 708738693 485430008 143094923 125882513 382364814 623650147 1043443856 954364800 1007783019 529893976 564510033 881643129 306994135 935150268 414217878 730393617 991953399 54622767 300626048 8106141 742314220 755049703 139460323 801312808 523532758 98948223 319290876 691743975 70466670 1038573646 837325203 547300395 957675378 67043291 663669618 462155977 34989857 270541037 994216594 156664981 721970485 789116779 828611807 584525769 496594194 590924517 114903910 980759994 206908603 798922743 39899361 896413844 146888092 714988192 673831402 374607807 285045110 681286567 833867155 177944145 708805623 644591032 473210081 489912078 1013335136 5501914 881676814 939563438 730268286 883530009 98498106 720765584 861261707 477276715 678116653 33782109 870711337 523630510 59184176 776669581 350547170 307761605 127644654 509901405 377714594 652614622 555814154 387674544 619381546 879561395 852371638 554178548 400551320 582936691 148368855 856540347 297784484 492270631 897575270 655143161 520322843 552794771 296960887 101375716 590081038 345755037 711050092 877467451 619730925 739270802 333905293 1048754416 409267233 977534723 908182385 854579529 62539496 951325853 522236129 963064573 695087586 468480818 768750241 382479951 316373127 237747132 1057403857 880359480 714140585 140563704 136452658 697922903 455797244 327027078 203695977 598250743 274384744 679965160 272982470 1023034140 141758282 629716019 1008551619 921882469 351507159 437006268 276070804 791670104 808358889 974716579 925110985 979089298 274062510 177809246 877960910 431028811 806671040 994745163 204505044 608225922 540294261 895778754 35645249 482682966 963893911 499208894 783183087 651031922 856410901 77270764 282477265 550873047 434976476 1067728113 251483891 732056551 112796333 948452216 198786531 370756118 542180060 852863902 820006793 952245278 658198199 14852222 376154707 578553044 66193471 378918432 624435095 18017938 485399062 1070439494 994366152 1060827412 481946420 622347049 1012317390 531790089 242506891 94800225 597846936 1059604490 283852225 99799842 186905672 324199792 806163335 675511486 998701778 340972394 157800495 677805244 686349100 353286105 587917521 761541370 787192527 786170856 314730781 100298616 660660552 307542701 1064152049 1062241748 130659746 157581960 28881760 149479493 51767455 471677279 505435605 789155357 611420118 37534428 1040628405 774234289 354962980 813504941 434214426 529118827 948697523 938909559 456089137 921409326 415391654 901100845 759031401 547325034 617682225 834716663 162646631 792036302 464013842 795284849 25863181 23082225 589831365 177174105 910386929 313720118 83914898 802321406 16164876 646209120 123277114 601683566 361828053 1070721607 141285553 1018771440 697273232 767474608 691852581 396894396 907923458 642483003 58117851 935959074 954435278 1070716506 1037253814 445953393 244744657 243886764 985826141 217801190 701682713 461928832 759178826 929054437 272022354 88970633 168494834 843885035 468483414 19448255 758842291 580768483 339883786 984472096 219203691 767702316 819050776 730188049 707201283 901374632 538608019 712433296 752491470 868835445 769130975 963920884 796492879 962701229 136344599 1058569616 372451225 281816470 201784735 753605902 283817700 533200618 337481984 266197537 397746527 619678989 678132045 906313209 586313943 720024247 386865278 659590683 866391455 329153840 804964115 967108089 956914863 759722055 810370697 584699264 106830950 1053182734 479896557 264569857 1013512681 1072461810 505676079 371748788 234412971 953166995 622035829 321126804 150084538 467452223 900780320 723901150 483541681 156538416 1043777914 271386340 521162529 336058026 592311704 533366236 879580907 258338539 56712666 617177030 676055745 553952254 625211714 88517258 230535279 809741282 604981999 828952900 332464242 172506174 604218276 903340945 880701917 163086573 759780383 847247602 172680663 59423046 872936968 892230276 121862937 91865401 181412173 236642786 630989712 133641648 867942102 142262914 142910575 170249005 511903391 446103163 461514875 306745034 707715073 561968871 401595044 14912250 821237853 189239768 910832245 558555212 351330057 983505541 703473196 972267841 865866257 342382595 757293915 592253832 999899 29080270 195054545 211171780 591062500 179340603 231661033 736689488 912841547 523485712 957026307 657071625 234992287 1014555773 737441528 399800874 154641314 226664975 750755784 976366239 834308071 50737282 601684420 31968296 825439787 1006568799 567389542 1021607133 455450378 868627364 117193854 845216660 19908884 856728480 55739179 196749020 835061695 1049408754 871982389 139319068 441480677 542737206 254859394 88429053 625648856 361070917 366314561 909071271 704065820 381337625 919156695 994365910 113611153 234798390 544475519 1036962170 239560892 990499337 212278848 641868955 211190571 9609345 452625838 797822522 478530233 903194519 205752842 167236375 262323797 765838067 251101502 686300899 839404585 997671570 400867862 885635642 798926428 417957632 720078320 785329986 372694789 1003296245 449476744 548306003 12392888 678374938 566559499 39112960 106339993 505031044 675291302 511142382 385904505 185885720 267776305 255474883 814277534 30524029 751444272 797031025 91260399 928025850 774390571 1061719230 622229005 833857660 434909453 238406154 86235554 649591344 732962996 688350565 107424991 1038198063 320133282 409335610 171183041 899437527 837488642 990532704 135418247 118534039 719136390 284677493 688366902 352603684 219179237 306012369 848873876 757831667 172220483 1043871818 843169060 432821726 382726993 504825451 977693149 793111865 240364087 703598028 434489624 811836776 918270614 733234324 436595468 990305024 50578241 1002369078 351727687 260939213 683347165 384792880 277129437 960462605 901100130 68028175 1058313060 959500105 629325863 136753000 548051855 493024898 253124256 765969330 8812582 463377787 850669294 537288347 656066935 274687859 62956763 144550097 61048967 450742444 892399174 731615277 582745709 96107168 548918873 885486248 275819466 844094186 182371303 1033332606 439646811 215803757 495244890 200332467 991020296 537710050 58874359 71044845 427870453 1031420101 35765495 643818804 393160172 129413106 766150543 985818159 5668953 232131003 749067361 913215414 347791985 739613758 316404186 293025484 504425342 70743832 806241269 206437246 1061910740 452655151 805534079 377792338 1029304246 483397262 613004103 843899707 1036878860 893276215 962998645 171942392 78578337 1070690541 682361484 797553495 913202360 600111622 966485411 506686519 254084039 252101087 593075976 521396462 690565396 664356829 185541717 254459927 919230641 255274473 789555036 1040693687 662923721 261808992 485088997 960911504 1031889156 497075987 631989402 981065084 61060146 994940333 113099438 813647976 680159590 448809601 73632851 532206343 650061403 780520099 292874068 35007669 658152924 596557774 526283497 406818466 966651808 939504231 418158144 823812835 763167026 552918189 242806694 295679211 964087825 540894385 138136517 926191493 240393613 1054986450 406621817 232737527 704086127 256132540 954134940 589281752 469267976 585767179 714172518 281361875 468559309 364764951 131837701 1072307504 216422591 820963705 574034714 318109219 883528110 263026808 404362977 471023762 1009202196 367194079 147860756 793391672 11448624 1034059226 128028614 615519985 895313151 90864 231663676 20027710 882220974 14544639 1027383285 844940333 839050005 515152343 1073566418 611267867 824944359 36203314 698364167 653034034 6445117 723969314 784655916 896747970 852141712 587385049 1065205136 849531835 579773378 513004222 868718585 98818705 671824547 1050593577 626316903 220949759 736517761 288531942 503441966 808893257 240647689 381755669 68087634 76252358 572166099 518198987 852115484 11115111 209907239 75268355 724760377 260960567 477930844 417321129 251785175 452827277 1036968932 1007958279 416763766 216824911 571742258 127068428 373089750 399911841 647612834 598833455 3455285 641128598 673644249 413617198 475850009 663811289 708278114 1055201054 70375850 833390478 539547882 622711002 885793349 967698434 75018727 797793074 1030514327 538497394 785534440 444529104 864372050 977454055 849450548 189042358 800868436 660636872 575156430 3632298 355765446 993374183 89734332 285313742 1026831974 515022773 991110802 349588055 889789611 194020770 431805026 572778490 1072047545 678972555 996131942 538000536 371335253 183367783 104830967 255402587 314920463 128887064 868226284 545458671 942489818 342075411 874300105 817829231 956078138 200852036 972540507 788468974 376913440 300999578 672328126 586542956 986481365 223139485 922580432 707345440 673328642 389464174 677078122 289764590 372300835 692337507 979899320 542252755 607949610 782568146 16376401 120992602 608968501 67305046 846754360 408378780 615094919 204668679 800100854 700131733 510767513 1017010601 555338178 650183631 982252394 101141754 564647389 656978227 824639025 854642815 762816512 889523945 252958330 139396508 254228975 1057595319 720821972 75362101 284650805 503635905 998825999 684767259 480268684 306610235 688722528 355337207 360419001 53409348 348320558 212609919 618142090 698773498 779987086 162229058 460285198 45287135 907945870 46857289 517596844 539508492 634861721 609173602 139445928 764961898 841872287 493761975 733762847 1014729885 114938807 232620287 442261932 28043677 685788164 265073697 65896636 429877005 546746477 114797470 1058899158 735703151 18827055 276779684 984682678 457713272 646691987 19391196 255948026 809927343 147686062 149463230 730305320 944290309 227550664 175536680 313124543 688742564 87326507 657235991 1019057159 943953769 753901553 314851333 864816528 213531758 979804940 28567532 963211962 728363214 1007111525 992357911 205247145 133106574 79079365 1021487895 109332166 105714879 978077323 581162908 557278495 976235027 75640835 413001263 717915551 131262446 272302352 673213198 442890082 685316510 546859096 846400295 384724745 1060481832 360917147 978980611 1028431947 602849034 746404960 478329507 756256506 522698804 106827692 370624946 70575987 367272895 779319369 737681673 841123362 601574963 957336979 15195002 729992277 466474470 384680860 229561424 374206523 584242564 869736117 677418256 271129239 863535251 635387278 794805674 598138067 17906519 121776113 598701843 890180042 1007032858 975820862 873009074 708783492 611901691 928146896 90104966 130601778 519163993 1019266698 884091993 1005544506 361675961 641111847 417606217 848175334 536225450 273463649 824264865 324988635 392391982 827498953 27232917 1063158245 823172957 798276911 171750678 510333019 872049221 106206014 169975920 939647637 716263069 1016916617 188854951 206340046 772663237 484422337 552718855 22946850 613522723 985122 785871434 364627579 29952051 430463959 865832357 502736349 318506005 744609211 69248699 40002387 805689609 828457561 97382979 256007395 929136441 537955310 648029474 629210312 287829465 814420181 1016451547 642165719 695495362 1031038430 678747935 205625523 586774344 789929608 6134958 975535449 433179830 351907469 567688644 394967579 563585794 294014182 9468658 942762134 651395198 72328488 939513301 11790494 649134119 851894404 584731237 362037483 432714207 840793234 99436505 516539063 545423403 276481433 167324254 624860553 699437658 999239 261838359 997786846 666303645 442077475 233740633 618719185 682134098 843540836 77368478 696064222 615933975 920454247 936909014 486425032 891801131 934675759 614111656 918928695 699644167 1051776131 916341017 289148947 572702687 82896350 821180130 763255549 898534457 30011726 1018636828 885488523 271245656 551105375 266372663 17350591 661138088 297866995 953260688 941494598 607939359 409838534 124354576 288882532 729171319 692915349 286356679 848320832 133522583 147167012 76852197 234450806 610998196 281919490 266941061 763308894 113002192 854920866 301455768 751608156 986523993 985552415 323365471 928469870 863587558 669508673 370630731 657887192 465699118 870967869 1015558828 550481908 874533771 695640757 985277531 1070738515 598042240 382969723 111724159 395345445 592197433 475032077 640227771 337309527 30470198 834516088 736864719 424623497 900274193 171892352 874474395 796181626 1051368529 231349196 293386382 929368027 140858856 704808939 693069696 515930239 129387050 391594539 384917019 120039945 191898154 82380840 378508571 402255098 183965859 1036996135 529999733 788173014 834160337 778015655 966123737 1027427349 20065291 273819920 358635140 195709341 907449107 135916058 1005472235 35553543 30659899 718890145 979980191 522502098 226058982 274541035 258026946 783571196 960312628 1054768476 216517730 986508715 515337179 884992104 357813579 702868768 746695534 467411785 971927375 981126824 632935143 785759983 381992023 454328043 490415100 778583262 997104274 484736146 78253370 542576160 673348551 203885631 125785100 418378334 519800796 920812801 16253850 410128285 271837119 687945474 1071600086 732055983 763976077 563490572 307762088 504387900 563092766 520043589 953211543 851867511 907189089 422669413 539738482 275625324 698013518 613214504 2190671 983322222 596585745 234928924 412974489 882805827 814745542 204613665 960065195 233626099 153592231 334334739 377577835 614532256 295328262 106833205 686564175 834664235 882828010 132189115 893910117 1069925114 708589654 203410673 505549214 49455826 884447151 325903156 372609289 743899232 746835043 236063744 801156322 336088669 1063436027 128740033 220813974 701445871 654605903 100088331 56304112 42245514 720396325 491139945 113268631 890907523 212235360 725801725 730957045 872710238 320057360 100869354 118569094 6179468 570233073 140319337 438510848 335355481 1059216049 919778691 541792598 867272684 332160018 32864451 668220066 622335612 351000798 1010298033 113907313 345184679 542915608 562141563 1032985731 763466343 601740453 410346490 773504270 182316368 1486495 619180398 919461235 592513731 795314216 2524364 141616504 377792229 776922412 363743515 766900394 125218455 6852795 529110177 683857139 30907362 412719427 206427173 257706042 844775278 535816850 365071059 107247331 685411586 752018812 154721840 800655426 561089121 169733587 226736060 1042053483 610706877 256854296 465282631 592295895 148880454 581442965 96889564 167515807 72413222 986139873 108818269 594982916 763477287 945531059 787168015 1041357490 150671837 437025662 987680085 704463008 70098370 58958845 427009947 209017731 613573784 983403105 778045824 796536956 162454333 843958330 220491649 253225132 870422526 627735279 481550824 485171686 949329128 507834725 114687443 715942547 279539788 710443008 968276032 259488445 635469802 469683955 915898279 1037503375 130695964 1021981756 570138491 751911961 112258841 14174306 703657372 175221186 39336653 253082741 899221344 179412368 307220668 570007439 799573325 880097700 463643950 136138225 314262174 770936033 86005429 90720318 47765498 974482507 637725802 652266126 872586841 147636451 866506847 968825589 71138114 507489875 2537456 1019613218 999224355 324783837 141449542 71288642 33966999 755318451 797944799 193507940 708133168 14934285 953756380 922555961 139595192 960762576 1070826041 963602506 896268688 713286685 218770306 1260456 282153409 94460594 955978854 894713359 696417622 158503410 13393996 282624376 167029502 1044784419 972881823 658030997 844331211 669480143 626153474 719913840 346019959 426201069 475014092 711439707 11923576 708404032 497305421 176833845 859454306 252375884 816220138 76320020 490540117 1000046776 511027477 349406619 687445996 764445338 492541839 542262525 261813075 497017612 140538661 35732115 744964550 811401799 233397793 361401996 335428302 159756866 842605034 168817069 177249946 331121526 775039712 353475105 738114564 375216801 453619764 213316748 777511660 438493679 282741663 961567146 210324046 318878307 747375952 296347709 1064505532 371907476 908003295 1054958966 575580957 194875449 528758789 23114157 697391886 1064765137 611504871 833755675 289695023 505301495 708290625 868341213 673997094 782489078 5911031 1020914491 624138025 405223590 27678460 866634281 702855619 548746377 728575165 635313412 995708243 885485385 886018602 326324774 658363115 156905342 438779287 23380135 556570975 242654486 628533848 616915359 160664441 557586056 408389653 170744855 159309858 593646114 482119251 173526222 302135388 779900141 595731714 988761709 884602132 805040434 844355341 990280837 441310343 510308340 566345659 113462696 190781091 85570786 850296470 658434392 625388291 977373631 1027484222 944305360 423250791 849815275 471964102 993897481 1001648888 756885016 200430659 294492273 110819586 341781478 155102312 199871754 1001029271 800585161 852353652 816397727 986586336 19243184 902592223 51362043 829261632 920609578 126170444 230909180 145049643 241664257 66903873 841230692 663199985 644043280 394761211 709974048 527462315 948702210 16565749 461307578 928147342 189336983 709407383 596504237 1044975913 924092656 426513968 449044207 807091514 265081956 360797161 448602343 779389409 27307775 635294580 894561136 497184579 958660629 1006566389 421961273 397419667 255275545 108578482 352362633 836900759 589394322 879775805 825009123 595499769 920138583 609727084 504257769 724285221 615831000 1013414162 544700353 51676114 527385044 680563979 159833465 794970576 1036105926 493185774 19122914 935148766 621792380 576524378 264667203 34587137 1011662740 76218867 430961054 227201366 765610125 914529944 81207626 655849422 936366185 641276243 561447720 404858581 721601609 1012882751 334241950 408147073 299999223 402557771 324577653 46091429 1011748123 594871735 821307444 739975196 867351056 103349662 557292605 935954361 443202202 195052280 736293316 49671584 369796277 932574279 306583324 128318114 970140528 1066314379 253763052 714145635 710554381 193394019 875384138 864431824 275355183 491754850 159922920 809726864 646461307 488778964 1001601519 218071286 5971068 858306868 705041970 500367967 710369085 18424205 623749809 881799039 601043947 1032937488 287210508 497152235 404504347 294925988 536171184 442426791 1061611024 363961693 274294888 91602515 598034677 672705697 120623323 387633677 543940440 451808608 489278921 32324793 104084455 433447701 770301018 389049725 710542908 126416688 417099226 205477644 95088082 936187092 695684241 247746041 935869972 442081603 705070118 579056634 892460647 66914935 1040260434 395617330 749289845 146667492 622179455 716065116 470827016 566532007 1007652838 220707292 1024278290 1053896752 685282867 796729230 245347399 399078071 400266526 502721849 951432386 423217427 1071799607 331263532 534253091 327025864 295843908 448811981 657756581 65592436 856413726 658379052 792063246 929894353 722724733 825158518 550919438 479395968 472258244 799503398 315592080 965689708 837805817 597245470 330870422 437051617 754426171 114136333 325840552 56641089 689764057 49716077 411810712 548098215 939526424 489717732 249431619 350708118 624350412 242074618 54988427 727518952 725452997 290294542 161398102 849017181 68501611 709294677 39537611 231767196 894808258 328300854 541888967 988430544 88843001 1070375650 481609495 763396581 967238992 378173987 888174852 815120873 474932168 62546123 692041723 313748919 685975589 413601715 305708425 340904406 589312537 149752575 1028128874 585648562 786367469 499997544 687841461 371623705 1057904045 591389040 723813847 384899845 898594674 373165716 604673980 686016338 893042791 107647442 450183586 945482569 991247477 880858052 878129800 697298473 116611936 334505153 808774630 626250286 464574634 940067013 893531802 149286767 505924136 626211065 364751615 144475596 739209159 551023386 762266460 1061178065 583486705 151022942 109771660 922411658 661231897 125041111 371724284 583833659 967538890 970372894 889655673 819459180 985091870 399168618 900358146 114571622 223214240 522871375 464413906 512462873 329200906 711815520 373877717 302753756 178210752 806247529 129633531 193533756 164731204 906635296 609881222 129727376 163553615 795698695 1536042 209654322 438274818 396686204 426154082 275035688 1039430775 413067039 609259063 1014218052 665436232 138130461 770917004 1026287245 253613356 562745051 367695855 45886004 341677532 867372870 1059491783 689221321 364760846 465667769 470475628 623223443 926629443 640776416 44866102 751603960 927818121 368822980 922726546 518190609 691051439 953532171 226926776 661224930 1006813489 628116358 730442251 564397750 554168198 202604866 282961388 566803908 333930317 297361558 507319493 510827891 497380396 1033759967 761492561 10136497 1042940330 546840544 224663565 172665662 626485077 274345225 585692878 780659880 122964814 54353065 512594191 315553277 145872682 87233806 877804611 880700246 16331159 1010423267 140960836 541141233 789473360 1058530578 29522791 673997460 305958878 989181187 850813422 580419124 28118332 460425759 399219918 260018555 990002245 135418371 414665729 895066926 266638023 55641281 304193331 712459474 661003256 628586010 1005011867 676930519 171051601 965155317 192951115 548126573 1025214952 573098247 814213737 1052637829 750866073 1053979120 4314083 788753999 1016773776 45346384 171552937 998259358 997027213 416848331 793260986 845945466 116528042 31389947 817461896 902343148 930915288 1040594759 29131212 787330826 325218037 390176132 712773050 188445670 189946539 1062193735 233221055 199039841 126885528 167629603 512803227 484616304 162278332 915440542 740039700 700343116 523267434 344344871 748339850 341901895 455633975 908952514 935886789 912547179 826691090 305035083 617046014 671781926 712580683 140405012 1033360351 565656170 805155515 86568201 1054783676 568902865 1067575693 315501127 113709908 23576795 765437222 834191461 45673670 317335336 1001391714 371115157 337412235 579454011 544024592 189304834 1059865511 60042348 1061092651 512867248 238924683 554019347 418805184 1015701983 811688930 720213095 179783967 1293500 231571767 668356260 315611542 161075712 487181777 657669947 145828877 664111877 142010047 763197468 327912582 133880929 982000915 339031407 958980287 347321319 633596367 909315474 265774571 752514415 548213475 1018189236 271483724 629705572 429163218 916591154 720874417 659702942 378019854 832062603 384768550 802589014 882811732 261441182 32047735 840809023 12109140 53480490 741120033 170197657 795060007 238012986 874715293 412430667 953526108 44105104 1071397170 1038672457 898676015 363685874 1051141210 142894285 474813002 668671762 616276757 492860443 80200823 339156939 169980394 1001063361 812107029 550270261 452922632 931215245 506391377 666769948 115223511 437727077 891170928 1048990358 284672745 587133785 1070728670 507912985 429439015 29674990 241458221 769156437 501687705 441311613 311424651 1024964076 107418821 949191023 100515797 699699584 369578274 669127237 452579977 783910330 204304677 810386249 264896848 569293658 303766840 684074456 414073768 673558048 355752192 281393517 967409408 29346926 342832659 535949138 819319656 589430852 383042702 723566003 1020911529 554361799 1003102848 386962359 217384888 106014643 649212680 902117658 853438885 672939410 931109803 110447378 269011695 1017893749 755822331 829595986 846587628 680402420 538052204 967305173 918732458 383646878 1010649607 981768896 566157607 672226856 872945849 92346331 405320637 81261998 348570795 81680325 1066559616 377549100 67783592 885027686 330858865 166600666 838779046 1033066861 767987288 253931770 259704567 159836073 657611618 170803563 760896648 72420158 584116443 872261980 31426622 813413600 546316461 240682335 647776456 32314573 1024081716 216036811 1057472995 677291691 774599787 34523883 64164280 944243483 504444006 667802486 673100298 1006251136 987007159 544995889 495816737 690034859 25669374 696210116 442550937 46866931 742185838 1010419803 558104854 834655084 1028093095 437451495 220224642 977690345 571233485 271650376 1066780883 602300279 185838678 596240882 913306197 677540221 946881791 787728035 853294358 768362422 134487017 143613692 445419060 803009108 280178189 911263628 630657760 849080314 1063222920 436690426 392934585 710480967 215753005 494405114 9724265 94549302 1024108616 736913251 738373487 13390775 705885124 159510353 887971685 58201743 169276761 406023234 139454402 770335037 360842304 79782124 375359817 943763549 353741294 542041602 577969136 675073858 347339886 832630281 618510134 1047082695 657487080 511494334 305060631 306100553 948815512 251034723 397491823 97646162 745550457 654804444 916141039 404138124 992301558 234914543 358285261 499931191 48865944 410460116 68310477 383627425 99106109 613722729 907128960 755246925 1009303569 932157029 884898300 940601802 617411439 20831921 107748433 86130238 432653438 958395657 870225568 423055088 631844887 426033186 516580555 890176621 670298298 1030536043 678833164 169771083 696445142 209378013 145760545 330308435 394471165 79616344 314791219 970233786 1071637209 75507632 715157954 1028763176 139807706 302986718 305291360 985108346 918055096 389767888 884823583 623681470 224675408 726841708 1068112212 187840679 966067229 598727803 405278939 465900010 834180105 848222188 546720272 356029335 1034529845 417305492 4847155 468608759 1068975298 997383949 662470549 877355906 516766389 633609417 363683237 100874882 715141689 665357268 882008003 762462219 917881525 281908214 1041166514 1072334067 811530902 596794521 171207037 32430561 608468723 29134222 165239305 840913205 657302724 185115076 225401317 548154116 237103529 887039858 115108891 136159109 998771990 986912194 410316275 459012717 590241780 415290003 92766170 208912981 713040381 799887436 563956634 304400874 13026439 268892316 979056157 959364617 959162245 147683 472870797 519586536 636178125 166205125 663205421 488321827 696149088 935741255 735775724 373637138 797986402 724678859 339025871 279481606 1060900841 828617492 904717310 638731109 547986770 392981849 278365773 6237246 241850455 850150375 6672021 68561606 122440916 798948488 519413084 76647539 469042808 749664554 682667674 101463815 767367600 404096022 273687424 432186239 489185859 260171294 226407056 671110514 270579826 598802351 895102636 373054431 496896190 176752130 1040202643 186253863 543401911 621735996 109624736 562689049 883056120 1018792517 1027124264 759110751 421826011 290594817 1058188011 445129398 900072615 818701638 506614506 216338041 5623350 632224495 999396331 300767426 115257693 611880115 64203747 590157593 507563915 408118844 921170721 395606175 222641485 147996477 878241248 466964300 940981533 682351291 643501271 139829104 246360490 207607151 683338391 261345331 966424546 527321592 1032345248 414149311 290857458 580803445 337701834 982514715 556631588 652378174 252053866 279531189 956323043 7269449 547429 984660340 93770387 297854881 86900476 503268325 244718829 514223234 548544644 744694156 581074056 492428463 261499920 289035761 161680256 850429608 239438080 623846474 517036164 43423611 646431068 992064706 184830714 480642066 263958185 656044883 536485364 683786161 666206740 736468954 178649520 198286388 670900442 51972443 646067197 218805435 498213389 528845702 800746852 811990271 28082661 1032447985 429878064 723225463 591334673 1051474369 923691647 523055886 447506605 504148115 962939715 268065568 869393376 608426663 870996534 595785132 282028382 381806462 424495706 1072669760 721883948 130785244 164701809 78711323 1047770757 609311112 179688711 166501541 491975107 317932258 1071159162 656593778 191887993 204782404 623769320 118684581 162326255 477625626 1037782945 663304717 123680662 721435360 797568694 452241964 455578772 851444074 262265819 702380891 851206220 325536377 939382873 70513234 13816658 923018030 891374877 633606309 946705028 471242913 1007931603 1053236270 423494211 358645229 891976688 146569439 405636861 206440958 337436538 401795617 781473486 45079265 792467806 721068863 543539699 551797560 791349262 842758051 442166676 548841532 664326526 907010616 590335921 217188259 553887938 903373488 810575159 2152169 1033927532 849953107 15751360 651505244 960698792 633612140 764517311 288262569 771089774 410913245 512318868 148624162 178254066 971240241 179395889 366983666 538496440 985092206 632616216 1066987899 817252843 469591953 477355500 638554335 1013009182 932068608 549595493 1052276058 234710493 296585373 992208049 723401922 253657541 27364806 712484535 963304540 34564674 327122013 933477366 1072997619 579709422 994790041 737960446 228261606 719942309 528803908 661992841 1051111872 668962718 704575203 382367944 963518624 785157959 58201228 34032381 856095694 462896611 699296977 577459684 25654754 764559323 742747327 601485427 946385839 711556336 1009932321 183069930 139282926 310575955 811003547 874072000 545513877 159417672 981016073 714959694 406206160 413017965 379146627 522811380 601283659 1066459350 617525691 641019868 115455670 823920566 285696504 944656660 650388430 568339856 978329916 424967008 320232229 327465493 839019810 714922416 105131268 472876174 315685421 6955634 517395296 913441704 762105010 689678459 800028698 885427492 1059068542 292978491 903066951 578346237 921114374 43159279 282720615 492719454 571647150 338453602 186094830 599921328 301926106 10675335 193066869 176997999 638136201 922503394 466318887 263587728 680293595 145292610 201606006 612957555 386960404 291566416 908706019 411601537 743457553 1046229805 269939107 458846085 682651975 599071203 693358824 1018608614 270201188 860731895 412568122 779919831 956079813 690958989 636765246 313755293 569822959 988849132 691395745 815270060 69885937 886676412 590920907 1038138219 124778297 732977003 552999924 530655319 790543711 816984089 401091680 844646657 629765381 96454133 659366879 232736816 98574969 289136566 970734748 810193466 919030268 862277367 848373010 509110086 160728567 687551334 991891460 1020767710 1012810401 419019093 367661127 683130087 601421210 113923382 313965358 396659665 70714138 871431162 989868005 500640123 970274567 6990074 39354016 537668528 173788568 550422182 230671527 461043548 672126221 1020114790 279822211 947995194 324981218 132457717 585953821 975845956 100985119 361947426 525260039 332416053 594893534 622027411 830054833 9801600 564624094 276282780 789175097 200325594 525570078 285571036 557730635 1015585259 234187605 1057951985 164159060 492939693 512749247 3227979 1013448478 237806377 260185050 305606437 219249242 118066754 48001303 717646792 347352813 313406540 1064479844 292034605 800828128 982901422 9685582 978571779 274944082 663663592 841773299 341216632 228178562 799382756 695930646 745665950 89390051 776323453 959710160 312806234 5020642 889530815 890651501 973281096 423077468 783013096 718625909 755165117 634582870 177083237 752468180 95714092 234079187 851812120 152407607 199546070 731311219 311815134 207340865 124282065 734844726 983707916 372228737 189997664 388788654 109946303 347697824 94134722 1007906564 15934305 494756993 827121731 611753321 4271954 932937555 503198587 240152145 143094634 997335347 594868020 211858060 704096183 606042704 624606740 811518158 998835407 317415086 629928664 316009118 649230551 388297054 68518854 408048443 1060330254 721960966 542062043 205183825 467580423 378855173 400135592 431703821 902472510 337838635 87732320 20888657 280441689 814348960 696825295 550659812 1050875789 980866461 998461206 25596760 103810864 867344530 549456060 88981571 245387938 293760577 1049662139 927380581 83284676 79188791 929671415 515930903 138791246 615758308 11063015 49765330 937895742 306183829 27367534 811314433 46550324 559805054 381596979 608395695 39164919 296009211 85704377 14366645 204718901 765946745 630691374 508178514 476290945 710076645 1006078938 211493386 87239869 875666039 752262621 1044945034 321465648 375913931 843745056 297409189 526460035 307802691 260675697 229056126 682000083 935914053 919010818 300907158 231959623 802610590 370942095 405360382 841122622 557063983 932408415 717698499 670300376 145847253 912529422 121952591 761829430 309487312 875626967 727030256 915021046 832356596 378680273 862370488 592472679 950479376 74471545 473256343 342225243 829558021 327686589 1010735115 75969870 398000750 542993344 821266928 688343458 1069836771 931260772 847362063 842898714 556711339 864425038 394269219 702968871 669095958 626106764 960519359 310648550 1008721146 597057512 162448343 708655701 100719193 567786504 637503710 241320135 893218532 479620825 511601584 66834621 499987149 601423979 650222210 198531981 349168275 133790024 25590381 932380601 965427262 991346475 512730577 735128998 792785015 931645133 476167722 711623276 223513794 549940918 234783932 960292519 586111910 974807798 933576030 828208193 16092397 390316203 208409009 571412751 246640263 690195419 369951988 913478434 908805380 49562377 912971103 792471293 881763036 935863236 981255362 16283738 185123420 166577223 831648634 277735151 304560027 767697899 63472349 23858936 621544088 373478141 550554369 450172310 841929249 40004071 621215126 707223040 775521724 359986556 562207328 876138886 672394928 744406206 816546711 196068907 462848248 324090889 625275287 607122861 894037868 920380174 582469399 168866088 43542811 58674045 454364688 924037877 249977991 522110086 805912845 533117593 93239956 36923393 629077777 737066932 941023840 167655706 940412949 994124487 336818092 630654498 890488119 19735201 753354513 495944521 367379783 134406806 884001800 404692579 567298575 209306978 828657932 350200127 146666307 469559839 697443337 1072981060 633994961 973945599 703318526 248997490 604212738 818178647 822979402 601689168 5635156 553109632 443442569 799744390 110484555 270788797 528586128 338977635 2475428 929450725 847523733 801995530 137991841 162680394 1070181372 750881921 109182988 377349493 72858778 806393418 430714069 683324035 77672204 192693898 281695071 428598867 344761281 448955296 631978561 800783496 941630084 567668164 474339769 626067435 415326712 709882212 60002389 875034290 577111217 719067163 225372515 842014762 626824841 75493133 882863298 1064132289 284515044 115424295 665939387 728490467 664397472 1025611784 209631981 465174667 116390287 842670067 502435295 267343380 574235973 785276735 250549011 560389060 105504982 1005288631 678155805 854927077 738878020 538812139 396733863 432892369 937545503 798762020 280035492 487648971 358176860 898362818 803448640 194556222 88900943 92819200 77997123 231494540 149326474 982119382 392584297 1058376198 514082564 265436726 304644600 93073828 985099779 1013014553 756955633 227279840 167665434 873181835 812235879 229620876 905350905 470978441 252192198 174462115 1000896688 540551585 790080365 220556513 1013837689 204231725 704395172 269129708 277046622 338354839 1025759494 1004107960 673743277 57808538 254916242 1069048914 72896781 547863352 1054714496 206874162 931825170 859250248 609563332 582005524 538740678 950947224 1005769525 800570540 745612779 552572018 183055909 370819871 383927024 289256228 703713425 1014329738 328005115 140419351 330552532 264066749 363425357 237942944 147876733 379540249 549849544 820556192 1073163268 526650144 637246818 484810227 1049582349 72037632 39526489 1056324316 852235257 334258031 450535573 447661606 1065107044 644796355 789220646 1029333547 619123336 438853932 521397647 1064120692 818403986 709017684 324723385 846595687 476765944 981407874 625209112 518002780 393868143 1066219171 1035641558 902977386 483400950 957697292 559776811 583061103 445832570 886954474 660435794 924403675 356988516 1034684672 737522786 470833731 303228050 389800487 330724534 570719942 682060876 1068022615 714423606 492907914 283979309 168818715 787027072 105400144 1061042366 948457613 854980162 189945286 1051979535 527194412 796865915 697213287 437189273 601883632 569826420 880902845 262936321 33174584 238166701 843939380 682937190 326514276 348989841 453341171 164264573 897266788 736597135 695872923 894527508 11420471 846427562 857357959 838431282 686000745 787381450 774843762 249049161 20642474 80607044 670083892 483292003 1022974582 825008589 569273678 105893153 925857709 43443509 1064794722 530693184 351468961 918927683 395436549 714038933 1002556836 327243760 24072595 823538207 209349593 916713432 356813371 843246410 153871675 98221793 129641300 210163777 529109519 888097007 145908914 30843232 144376877 138778635 551207781 1032717110 803435227 98086255 466971539 92282460 350394641 974648022 35237964 838307690 922852501 324635202 1073416394 573548196 564810170 69189915 332769872 748353914 18266308 197262177 839290214 778063254 421974331 247633637 781136300 173565710 922534324 211822682 195936032 796176947 208120188 512815296 140516671 605620300 288403616 788079376 1041584717 500965035 1000254682 442671271 179797448 91306186 92747497 770271425 126696596 533880068 1001735759 56004032 337900140 828174656 238304062 1048457749 151418741 436419155 754696452 680319255 658816621 819225090 492317034 40878064 627062184 890246493 790637960 690848001 741460438 404393003 1016404890 571342620 191201184 588479774 337401017 429542677 602060431 287552379 226911537 216546700 874420114 1014481290 762964283 885752525 678930380 482120923 714063269 340181746 261397374 1072038676 478416697 165801017 662268539 324382911 438844872 33053029 511004544 87725372 354824406 153350574 182941185 619221149 861468280 369980197 526078627 602271091 570545153 55561876 100603843 577725119 381113304 329092908 938424450 63080115 851012945 17807846 1025647453 10690500 676314130 885057472 187550593 425193817 827834720 362268397 353587178 844470491 1008624479 133912229 216299250 660344401 858192484 548189978 248733098 1002216604 189681862 1049826086 397350898 1024007335 219066057 981161311 106316701 446760719 566717249 210064408 128296212 161016900 316621092 497611073 356562400 756171036 328515927 460691129 312574983 459963347 96226928 72473935 503812843 569303399 965254266 204004405 551319936 819701168 876698432 242702490 853558619 209595134 328181270 683092878 959149407 704799661 883479329 212503560 324550000 676822706 108739998 671632454 217565938 93747966 851599065 256413102 625082002 55632738 665806480 1030172336 440277686 1029945545 28321631 377109199 631168365 201493223 242606378 627325159 58294377 527136313 735405690 234592078 129803293 810866981 1049536144 33323690 325747978 118142018 487883002 198399177 690993387 975469732 666289491 494402162 743202964 595466819 560521844 472073316 180773223 830801490 215831527 808043563 84469486 731178705 896445808 543066461 447182964 493197520 869926115 497443572 986973764 660814890 253795803 408246197 182234327 552281888 704098025 1073074474 518024195 264634829 76276709 200152961 109155884 408315075 811303904 366321217 859574253 552588413 562816603 995148542 37088027 389616576 979154267 631772820 194135726 540024547 27409541 215956549 1070793955 50647066 73457052 333533281 357349442 530750088 262728275 184796440 883500901 995085026 678861703 584761547 743233362 420807602 845545039 616504648 634613407 587192326 286041035 321323623 33352706 981725511 879610311 1000303128 611554220 502224192 714469965 73503013 538134365 567875031 908634669 904718643 858015893 764455720 703869330 525213472 717099917 728820689 652120067 103452044 646165843 681941226 740399221 242245579 343187483 491846607 100382184 368003186 657636614 757218978 282545502 20653981 223067359 781345494 928036620 369056980 797660532 215686704 917176584 867881075 44961744 719480696 448677808 324027628 262788669 227077616 244010332 716514730 415389629 796883993 169794343 951302407 766014271 498875159 540944889 535708355 211671227 534851133 503596643 216202700 834818435 300953290 491229296 511758649 268792904 258923911 114892429 454581231 654542252 238950014 78168901 850524301 104661143 1058527156 994713668 873936835 440517165 915819966 251024773 4611182 261169529 920270495 32551857 470137305 36527135 10508731 548861895 405973830 687640825 113172656 98088334 337950487 641812113 256114598 636276224 175419065 185893493 131157463 762933250 684219413 524347924 249975069 1017670806 913269516 97636691 560519934 8614676 671675895 978748234 797569173 329323490 826728371 1036667097 66222151 754990171 851624895 231985062 389157811 436827217 514223857 709732170 122645977 1057761892 404420469 913466095 289683563 939697295 464433414 889089384 16412625 678835573 723131046 138647280 307326241 492704490 913549806 143630700 218776377 1048041342 843920134 780256338 15410156 638224164 117374195 707332361 958876256 1069277138 1035342030 216784314 505899050 235163504 346818013 549263896 883858377 670255930 77445684 94880223 173033470 847117879 146521516 942124104 159777043 62997939 783622777 1039080770 56780955 1018842187 1055360965 448275541 20985683 727753183 431613715 761967047 711451537 496123225 387646667 503252125 184399849 651172827 969469557 606254004 1034381995 410806815 1036079972 909162660 301979796 596282954 554353932 109585544 464266394 971569921 831273308 619719543 838291836 50805882 458668361 303933686 95078260 927510569 168522551 883499993 885195826 1004898840 584623174 1014597162 424598575 1004857427 971812908 404922235 511573397 330185360 270969315 910711076 22929934 879397065 455651521 117826973 79394232 561871286 161929197 494125551 850622771 198666270 622116654 1011759542 223351397 25659262 444104788 1071014788 650910818 351549294 920138409 957619154 915298341 709665490 238216898 808601000 497075076 921558918 5179039 989215556 902010437 571704086 122305526 589217655 505242415 334606314 539745543 172806632 714202696 495155314 380766687 451552338 68072581 734010076 431021225 390771131 5175412 344307364 141568867 848845564 427412836 355858776 82179488 431457930 419595332 183174969 695843130 521048300 976485037 483575372 557236212 338214722 223450335 263337156 573232054 270208731 125961382 707845114 772828352 719036894 586991909 964302031 616572567 167497442 1043938576 466549178 348200688 20571440 42496916 355206303 666424846 238065795 534189975 613660461 280581360 919036013 109988984 49861867 482872980 278905875 58600826 596273908 867612771 1042969956 514487260 1034995058 144862558 903891254 15522857 799939178 620390986 140971128 589584829 178905913 656320291 192819844 979054118 688086918 811725639 143379897 884464502 483422249 984985627 934965221 82196371 842337641 126183053 105532477 763120848 1068229351 852153416 598307064 978538174 124636421 691971120 408113736 458592263 797244827 798493675 318240043 74472244 428103988 424482580 78510729 252289931 233238698 908185214 719622915 126238882 638562904 86170228 378545252 697295273 729611791 378677592 397162830 487703757 845937092 822987346 291171709 171107863 233961525 539715888 1009891070 436224937 812879009 855098821 942197993 709475580 497543257 1044506451 629515110 764071790 60381839 120730509 908146526 162380035 601614984 824395784 943544659 878354151 533280088 240996228 741012693 80347818 354790667 28154267 656183328 938084847 197964912 637948430 708611152 741811044 618863931 264745642 483548334 758755773 120087144 688555638 921804990 234317939 570884726 509437671 210467021 344606548 338686457 1032156949 230337701 818609789 174897685 416324224 159788257 306638709 466603624 481175625 565471328 134709544 805200245 582590698 1041355971 198638449 1035568237 559460777 270179207 453876967 33389889 503032822 562293721 108538471 363674560 906038430 1010240056 457850232 786869585 533129560 801910035 838885480 657137553 7362199 280474482 605778875 449274536 355111348 244468293 40105152 965392667 923672622 838324921 683327528 123152943 452562007 499850176 789344923 271429810 800100455 101115061 749955645 1015680622 485891780 520983349 288960295 918356486 1068529606 465871918 706202181 599626689 100558828 3830415 856593441 804201957 740837919 1026092550 68484235 264287545 1035798321 884602295 521162954 271091926 258454774 581124077 479418972 917879250 264725205 488611595 148023433 876192288 16575579 259299413 1056660012 307006858 517874772 258653503 495861624 221369844 841948842 1028590675 599336719 532676892 320675749 126362981 170370586 769326138 1030784678 229210824 869187592 889903707 762738832 45265560 844026174 768375145 283459676 1054350777 836581732 772571618 638818427 562088580 583927133 325518248 957290708 492134641 149363045 835752731 924551339 926331685 742306856 295417810 138509715 548134434 582064622 643602533 517071817 587232575 44278603 441690950 477561615 946193843 576140191 153769876 441084134 619688110 819143918 385463477 427670335 763020143 979674696 569782586 504396708 708164174 376922697 864443005 169658630 307063033 503612106 985725136 846008388 1050560284 1007520625 887332215 907184421 673825902 508414008 605118639 388889932 115072573 313018024 525688570 76810341 26026353 954252874 716553277 83204769 932948027 1051674720 609894956 20135084 791790694 194955047 65242710 935269965 394595028 382456698 555687600 317406944 59551766 652224919 1042601237 648650871 420628148 472231563 242100779 347422078 366133118 983648811 864048367 751548730 822260233 469116683 891188603 590047162 270473260 653058998 866699360 842697713 114918611 399280335 270946599 388450429 1041514422 589100451 785106751 1008975488 564547835 58519104 131882523 272457418 545248145 45362967 107181062 799412721 881032727 313013311 1034570500 882474978 998871682 654286707 291739665 801575673 788265615 699262696 504555930 1050802409 470777511 78615080 777720774 532258091 76432664 563183181 17447357 437464213 851696802 763986467 66819549 611327610 540383765 1013222959 230873167 559188129 353815772 770529059 936160650 366618592 452684093 204176803 1033705764 1068238214 434570521 140118707 200598902 238232802 263503860 314254343 428553399 320207832 64534460 570461286 635800716 921171983 215121810 243180187 909889459 929443742 1024578047 344730568 285396234 69028811 633683465 313319400 43429600 731937940 438811219 232028751 825390493 134897885 711657090 749925586 174408478 359827116 357442374 27084291 623252887 926841366 587243192 499525160 385166364 457246607 534696463 601341072 1031684617 423804752 136024533 299164402 980583151 450581859 227047114 145687665 743439680 937595351 697778100 670805254 221392605 1030075956 583229584 703979823 1037514030 811664674 16760454 539476367 684816101 684521614 233493808 579007670 927006114 685010679 360811219 381795746 122985934 528121704 81377461 798672944 286732037 1038446436 1039917918 103492196 64913289 702239191 138825923 743746802 872421616 179574681 340520046 854662790 535513579 499926331 603042103 637771824 608421436 550334780 66385 795609731 851380564 839311122 686927070 979775625 5664646 591919611 710697551 291057016 802955667 625224 81734107 878963129 290083578 1013596683 679427534 764580041 840828741 834665579 641285234 517820802 503941153 328095424 496119142 903854938 714040296 1034220513 715866957 579703614 933044973 940866150 862105894 955874904 88883821 76725645 418505365 858821376 747963998 617906189 892774023 33921480 94710496 782560845 378573911 944425966 764301471 761414966 1069238552 547972308 447567553 521096893 300450858 724409270 312472646 483597024 223700052 139573930 202027914 923709184 547121882 176627808 648854292 725309404 611378251 100993682 588841398 676426979 932070033 298453133 427026113 87568700 725721708 803317272 339392494 404819482 34055638 353824633 1005792212 545202380 1007807061 80724366 1011152727 495413167 364841492 7574607 1047919502 417129485 1007342890 809315177 440195856 433961963 867718410 464567188 811285809 319751430 704041080 416945325 515598769 885412182 302543055 1040992050 361211584 1030158657 884750345 782542827 69648590 808499878 429800517 1068308727 617977795 656104880 946278686 968215809 261722485 645204250 351964815 977439716 199605466 445248570 492882703 290012344 286309060 514531951 616921457 704257978 232924343 462731626 346488816 747658553 603297385 643404595 952672442 845417064 600918374 336479756 733977765 1050977850 344744707 83089780 300814754 323946981 186430808 64342570 997800040 295894817 1059822226 396313367 118576135 875976340 423312341 161320690 530332303 877677735 301928787 177762906 874952887 1072654518 812014004 195909455 1043633562 590337230 208172085 249765757 30717522 980572913 116621518 247485952 474819620 349242510 718288752 243911030 434154190 51110747 335413315 99367353 509350146 538248202 283307087 859620361 877970585 237539508 766250823 286834059 864984530 549276606 1071527794 756653189 592800997 441360267 716867779 580377530 414157891 366183628 706469377 1005544637 294187177 735541160 240145952 54470080 802331637 379022373 932266384 284028431 82598286 895080937 835908589 530643744 850224456 94447109 827059200 998332382 544701626 815622950 974134899 855944168 966919819 991958144 892746968 628987378 765434681 111340064 422787327 953942099 582036639 898579632 867669884 972486846 29847260 213606541 5823195 807597544 22945251 374245295 962973739 295129704 62658044 220986248 146654122 944118598 47741361 606940639 584860248 115634715 786836801 642286730 614817068 950524644 647545815 291108017 969512209 189474987 604505561 563152672 761611729 579961007 122554342 924503259 890203675 408689494 684389800 619089414 42572193 897907803 995546739 482974072 810836922 1065955335 793271503 47374716 165319709 435108965 471021203 437183630 223088183 751726102 522887377 920847849 80091573 315432726 818207797 219013257 1002748463 981537094 305980164 1044635775 794684014 369227789 215076135 461051468 98119351 817207820 909643113 335330026 670218777 1036026275 639266955 283107659 954678740 781963768 281865665 272959342 271634506 98737075 811194596 594901184 159165699 566567674 365539160 918764706 613471454 289176838 969949953 1016288040 374469577 10300322 129457285 92612754 690481850 258811567 897408043 417288110 943372047 337337347 621085339 450991656 303058887 55706546 1000706486 536295504 671773631 515881025 546481660 743646231 54650054 757591584 34647358 590360284 236151239 514365074 1073465760 379135184 221448608 623475707 916072913 1011853583 253662357 628906988 790215577 355190684 62997352 259244416 944131632 1028094416 65360611 679260724 28318607 386801192 620306969 481722035 116168004 361753908 820305254 1071863414 853214204 1025141642 856429834 230330501 645243780 715706489 995657081 358234736 72302744 201592367 267298248 77334503 230568861 934926547 830089044 189694842 1072464647 321603928 727543279 481006588 350572530 1761942 261530915 541939811 425266346 716250513 859932586 575191973 183352915 273603225 438691936 853939532 847307494 1015393826 315271890 304912443 202539804 329622013 682080312 889882497 411032193 498383811 939562714 329406889 1026451622 1018937819 154613177 944959728 332028102 69076045 55230537 468583939 792270987 813571207 242805587 264151519 14385542 789211124 232038977 839484698 550940384 526584656 558991579 972438105 256149462 497046862 878460428 451752979 709293413 370565467 345371613 159651216 306770728 242671672 648605111 838751581 432916579 218106114 777695279 996971185 59223010 492934343 372298703 126673249 261123227 721852383 638026133 659638274 225855582 411707558 636875359 279567647 885908102 790138656 68025342 93121695 7328064 767019523 604578275 705224331 18033735 346630437 78981441 437100705 106707456 49862740 705222518 104619873 821333214 1002006997 981798070 934215341 249671755 812644125 678278317 1058642127 516835673 714641643 863689341 296069959 698723558 270254712 305382185 215995620 551763752 823776449 683440757 120539880 857800237 735651316 849956145 954847422 598231402 978758137 361622109 170650909 272940634 185177058 46667345 806675076 278903415 804709206 1048890006 859151465 873140859 876292552 519570554 380733034 355233442 146560379 20009451 1035456565 382697953 270313783 807665096 361122442 438697239 505146366 398972504 431445500 712857583 228800233 1036958724 341468711 616595323 948534375 986363757 244659077 356989054 163454102 557768481 211305490 1053484180 436036349 397064463 1068725886 794425851 182084449 385494162 656237564 673482506 830720765 768730739 19563857 211650443 735692114 918003596 753337695 210183776 749913613 1028892716 453530064 863960237 940119847 539318776 180802087 388874791 383909901 745814940 997752126 626319397 795119031 251363114 352523778 863136582 447491477 220945238 115167548 290791707 1013228528 1046544779 15904202 106531873 674606766 940290260 797340420 315911945 447247305 776029118 293610585 236311570 644773924 114428590 268230242 1008568057 911447942 1021978971 386012038 791317189 287113940 733949722 1008882724 279402675 608113611 308145282 192104686 770253599 864376781 259142759 592138707 240460355 685431262 692355540 483821723 1055608063 419837108 275447822 509016071 28351773 27870502 481275299 262007477 352787825 766569294 73926937 28129814 129830797 563640187 94365557 103239541 28424131 822836927 36619488 775501205 627950133 52935699 630028581 14677717 146594900 1000271741 960629796 975510352 491488997 291017462 147219295 575202924 86543014 460762821 38465880 759652520 397313627 932375224 944943159 389671997 13661284 220903929 989330273 607758106 616036953 325479601 423383066 511756904 743438374 794061587 1041508633 122308114 74037538 358798911 725768125 944292655 238125967 132430416 178075719 503307766 235699247 559284498 851586253 421684802 252169299 854221020 630217321 602394348 996077925 1025235456 508176604 507920242 371197201 399418549 327308516 274985153 584566115 610952664 262320623 1060828526 21132677 578438565 40353467 946431170 269842693 809526816 131310575 423498708 341567102 859890982 170843244 620753781 13735169 917018377 453983644 27582496 995274686 161665533 938656976 57205439 254866074 1056468836 566930707 996913667 541379788 1070393801 551030331 403044737 1044540137 881896621 402366303 991931682 884010275 968703931 401889656 680583072 22726450 625541822 577901079 553147556 397660909 118217696 473575658 343268110 419567415 506619314 773925943 4760794 298340882 726664217 538723058 531361195 171311731 909200218 150624120 783237616 321791934 636803743 229339713 447260758 40369939 673911092 947076168 207027577 646786350 756150905 795515275 986228141 527936160 757472847 715533628 426533489 958922107 554670431 976372462 162117056 459283635 563685420 321539927 185668544 225559903 126481506 695970383 841904953 1003234242 526894849 522253451 586315238 220093752 721492343 940169816 994216764 888886667 628082597 528612112 39880163 1048295929 153312780 751958466 474195965 935360787 973086714 797333225 1052229126 646971703 1060866538 451964324 737230349 112650349 668556468 365208793 1027400715 894079406 174271936 136982477 635901562 1007185214 189054241 595626737 163538203 1038360498 470083455 1072182370 477720209 14468710 349528363 871432940 1046927699 264656671 960924451 816461439 875649348 767421442 608040546 681609459 424519643 102456016 567958361 379598720 295942245 781252023 700741924 218549062 671338359 109943485 172715326 1069078157 887242764 175226571 599415265 580939470 738869008 335271558 1000082615 627677276 159108465 591194715 1035295847 664315289 1002447753 80851584 502327494 854649185 374722092 109314813 918850238 304982834 1055406668 273451925 778368388 648047214 353460356 738524088 123361138 968967234 22874449 135599087 738222347 557471585 36633465 157346540 73210783 868229965 1033518494 489471046 802070529 3891139 713305852 334604493 1044502296 63250576 283064601 285196011 386302282 405577011 479331820 990438107 113727118 1064187542 270017551 986150305 240670494 841906758 820483462 1000464309 585018162 617857410 750738554 1019132990 903792586 987110749 479176718 267010710 283531862 152600801 154823100 482493665 855020542 653056745 705084349 406419101 667477866 321761494 274590344 727179854 584514866 1014825885 221434600 469488047 576373588 831389888 790822012 754676178 210902763 109473333 250379608 876591654 100028907 154955536 149330967 358181035 770379241 1027165552 165740901 1005501605 146848705 275546282 73823959 66241840 828343672 499052308 48663986 1069536286 1005169886 508789500 439735886 480988191 133133000 844319395 536149007 866906486 301772059 2245903 784998763 497373219 423860791 1063381735 994480396 685341367 1195433 1040478582 652066175 409006894 995341672 303240066 274081370 714705360 739006352 27026044 874495936 438901858 356618143 900487003 261859276 84192984 266296608 218179312 734958905 741580352 552787991 808130929 939133328 764159435 828782505 201025404 140332839 516469727 765530930 269012943 2694111 204228131 328461152 771349043 217188891 643589510 766363249 143290567 821417465 434178877 162151714 856759668 64170428 307257746 815229155 41779009 257101029 310818303 263578139 715149327 451861625 310918932 977325377 649711007 718188186 737548919 372003234 784613255 123946045 345501994 1035108176 543825241 888007611 518057023 217163540 39419407 647605882 476218832 411979697 740130162 139886518 55212797 685669821 53633327 801800536 50425976 429820572 728859594 362561158 869266488 741283486 798258214 265657702 518546936 1004679134 350813082 48653773 78858807 726962296 41184091 748590882 116230096 741278407 540392087 13260807 260305116 252898817 743941196 843190361 320972704 650858907 386602765 590912367 60957348 569776434 343183866 102880999 27210011 33160628 628333609 30724060 307036252 936847250 896814961 208994662 1028724177 994680517 961307539 709599653 594180370 393125255 268198316 913754425 664152315 665549103 10441759 1045249752 268435850 625431541 337856684 193014792 556037864 1047476221 369928950 605371686 472245781 1007758273 515850298 677706428 717317621 760572051 191287442 20889339 830657313 612238505 982507128 212463372 6964980 256280721 22649997 617786327 610466236 507331447 1042993033 744747193 502986098 776726912 89214124 716493199 476857394 928735444 733148417 979762980 154508332 182497969 425028539 93702211 540412464 590006323 768536092 539688716 180920234 798118858 451563864 240062910 198699943 450934890 230679216 208378941 375564488 680370895 142698577 989999186 350050154 104011916 115134692 741561312 973262876 709305766 25008739 85969203 11287078 38857691 386109163 978671817 730384228 639078967 90173963 592201099 458957867 563720927 843404356 331237890 833621964 555647956 881080148 1054477694 461234763 341242584 549123656 157278023 800880823 556126096 676519482 615085579 244050705 839237300 434839289 588499674 345604786 999879471 97422387 1005075881 394810439 623841532 676395170 5371137 39552979 154414250 388307169 1028485023 274622396 169106363 655702587 347616181 609079103 333237698 938695982 28143222 1004567921 172626907 144969914 146070349 190957086 323788378 654900010 178903114 1002533240 515066034 386640514 166789759 523747056 494985551 833723808 166292968 701474402 36241431 373001288 727338041 325996852 66133547 539666363 607662128 632674325 358338249 439812898 282381330 1037102024 228536888 94553280 72750250 143957255 875101798 228734460 887407797 382131487 519513938 726193819 558619774 502696008 91449179 289294591 565940460 1043586806 531658651 806745820 321919616 229870494 444504503 720491586 449836435 289815333 537246655 778569801 29096977 185761401 771172713 341644245 992529832 1020197638 31391150 321892271 982514576 886852236 476074187 398207795 791031252 991671309 869079541 717423357 492852640 837891222 266691096 828162458 1045652151 331411974 610699041 605698667 998368257 731653391 385763695 169595701 337919917 90686927 455459004 144811281 508593074 339996138 906272746 463844518 295480954 568757922 27223202 737735317 609782972 235381656 865328895 866913285 363358844 801176566 385461588 277009731 885582942 1030057213 851906692 538907251 451424606 887149767 211531061 833316066 173725811 784751925 595053718 949436268 237791659 901005076 930223977 507183642 626473990 839486972 490488341 99191942 238715158 961694586 799016716 248799607 308482373 356115385 899244208 401957967 451833357 410866257 47824891 777630336 581621405 5724266 841838546 630924169 289553560 116373630 87358570 651920871 602432376 504234567 671238904 252368994 486048258 828171407 844862537 833446726 801282641 149574023 366566143 917102801 90756581 55027001 833986210 737466034 850866492 480973897 171903474 928210877 719933688 254448764 896146575 939703415 923091596 768906738 983476775 464567873 51355236 687205116 538911665 322005308 751542363 824892544 704274698 1028729606 305393575 547967131 507910626 907985156 206980973 736126859 851517814 732460951 1000056032 138971719 621965216 162258960 673915805 854454399 1020714974 892367700 154518968 577504694 207133770 826827419 383263782 995476002 451441509 331064880 605624826 877591485 986442268 847880058 195912805 339771558 1028232504 95430354 88234678 31087521 551393002 758284349 276687227 5885214 375534644 143068442 373435906 875697680 1067945883 540083661 656105048 654413606 923857552 29919981 157821117 408347554 393761006 756520404 52591120 548383768 723355669 995495901 373611870 802169797 597084475 1047596394 565773883 533111171 594175836 98132691 952133124 792961190 1016511483 129174101 202470925 1045970311 265171807 678748647 828250310 824782130 817339062 14395445 171335032 135604962 273736927 273505061 799266421 700135606 849867694 723312833 198531360 22724108 118454169 536920613 455603920 157027386 120554744 953044788 921032139 12475389 456979817 600987220 114239721 185045350 60100295 558749951 937578864 718418429 56236697 344651446 783434880 791583105 529578485 476999305 679133191 112088592 69238327 213285805 224319001 971941629 271500816 646172260 436915459 845485787 960832448 55058436 403482687 615817493 351619380 562700303 1004298841 855740926 119213961 172916903 75340799 210587606 675734908 657301515 929694786 363616899 657988691 477176876 498785836 261704891 22589293 424814566 575746465 93058309 371190261 143849796 756403158 429225584 221799718 846955068 168639553 992128791 79122541 644134014 163617900 832212914 492431547 474902393 877125013 234966255 291704060 690757059 284169671 223611343 245121501 858651227 215937988 374216613 1057468726 556125120 877813582 808852704 375730879 746558420 677030814 817617107 959903762 714745390 106041053 244964363 169887029 1025190190 456234141 530427906 527844769 590580558 304666689 646715503 746714864 1014156883 977236896 600068230 822892678 157492361 468031109 405222152 636007569 277190070 844620001 799220679 517797403 568939239 634099224 64471071 555330992 168410049 953329326 404503580 484784493 117440839 1012768445 746760177 556707267 257661907 546294590 941328568 793005803 895961655 367620555 710651937 557584858 1003861285 453607359 774199860 845412224 395082623 1045565160 609657174 276496835 253889686 1049114373 9724652 139364611 698672297 204695353 159888810 913847095 146605553 98915530 901898292 965190287 581865869 988575077 898744416 959746151 732707052 711732534 954657171 512290227 427665787 388166284 791467367 995787975 218737940 742608723 672529938 876641019 409507269 478483020 453976337 195130956 439660621 611537086 197522536 933520625 251993351 976843473 1042811160 99898535 589931882 971876852 700011016 268660973 184291791 803580681 981979420 123738223 899853404 349432726 741874361 183044568 760890297 855316193 254712068 367538347 478146322 649622264 542376545 763763540 956626559 387971014 717911191 491754406 657606226 408473261 14731138 397629396 122457834 5385040 213473574 176207383 243630872 737845370 160545613 350966199 321976927 847418033 292096757 162066985 172185261 27768967 446671447 1011742246 808347433 552062143 1020894617 871476321 162879440 105522106 691418751 859697102 168136126 746659024 272464610 368999743 405588680 136267270 630545481 967392143 476328163 1053043527 846267027 571432715 61438017 376346388 507157965 520434931 1008678184 637315540 17887832 342231553 342228836 456434823 862520819 256746173 539887594 851150204 53874079 612001791 1013218127 839324521 924273207 1011377168 84436909 277535753 458020108 62919417 270000774 287886495 755390576 952666003 66665718 195995429 66283640 421814503 1053703024 1003640607 753605296 335317451 218400250 263186636 935459782 270446546 207760952 977778890 310858981 106714000 245485529 903027013 884308858 229306398 31269215 914135984 210972560 339657434 295424561 598341711 457492755 544765646 426476760 580682001 32783349 360856139 733982728 1061092743 1071770580 705134180 823351910 160971199 963944380 1060201872 1073189467 370063005 1070706786 473544810 786838652 951424942 32088457 167566653 638882448 101660582 995872035 565332884 246853984 206433701 516248263 221892928 1055035439 291835616 874092861 377536292 706866436 986876828 794403399 894938497 731807198 316435058 154720086 663746716 119888762 680436587 865165497 679759657 606137130 186898259 484377090 275608954 336841354 901599771 802975874 220686529 702485607 260107624 161780683 1001324702 991035241 326192607 129941468 104235558 517535545 330606131 60195211 307848220 529501869 270492882 192096174 513361768 281479589 721222536 227069287 666683803 135880138 62511119 730598918 228055400 132274478 876190189 245041185 678360519 481390445 655544094 701189045 152634516 793312366 615093214 478140307 28652271 38842991 499652191 126784518 44090822 84026085 562795282 202195645 318417701 66978294 733762229 309395257 739666687 656315412 200540889 935264652 531837478 382015626 811586300 813984061 84748782 339399473 432659598 1019334720 383699806 319358317 633100974 154268339 149505325 75044397 16395971 61614901 88864845 1016769456 150700062 737883604 81368119 751128955 419888754 544576395 151375963 308756964 570494386 139365156 271283714 91698999 746641315 249390577 641184048 218626135 322427681 1022067157 741486348 573126236 679564354 971479532 1055330740 499634803 432740338 900830008 73116190 330552110 819609051 810491412 438324223 219443828 950143723 921534217 312196894 495165427 344505713 223662915 889800670 181827267 705318077 491828318 71095750 473481693 154898863 574218048 653887488 899061137 794843879 1057153053 135873851 103558708 899130664 255985034 348500164 50240431 373235772 616446602 349950951 709586836 808374775 932494313 637491869 460238821 46738379 201997178 171652931 612555489 202049669 136878252 312456179 264733923 670968191 21659015 151626438 941897210 531571738 221494590 1039182092 670428320 627536415 304960585 1001512927 117511605 660115266 1020521597 576058104 418571707 786359901 373636770 631601606 363684701 247763729 155236146 834336104 214091161 1032443270 289318357 432775516 206086156 414051396 278830712 688432396 599557276 271104137 957033186 596680048 239169879 686856612 903750327 626058281 913174535 168860877 134884143 540397590 853606564 946632690 403226375 472730078 447449480 960638573 568446365 44390050 498087854 208450434 1008045927 320212367 50587470 1010967431 61042949 359665341 224339465 427431662 334499420 203059589 218567968 507368909 461909163 329537640 932650931 358440081 1024679639 584832305 140814793 74683343 314680058 377277411 2366898 443126348 1072607135 441677150 920373981 462810948 342528735 187529722 816920515 84996255 586107512 431111086 284769051 166212841 133765187 198211910 133265838 695241716 704688051 409337278 818868435 619912763 370593060 428046584 88628864 479033897 235192786 731246168 924954261 206504495 344357766 96850781 99161587 810172492 414554463 194176252 594111693 585752149 548344307 1066039564 588150115 809252390 866387766 144271851 315398543 475129833 359865835 725588655 243055420 117204596 582551121 926276171 843387401 447705978 262637935 67349627 809626118 330749548 163177853 456719070 413728295 281496825 942358081 812695111 993022602 986683006 145674437 458409711 185403673 334763081 307751257 295046258 521997794 597043983 667932076 999696703 28675580 594790047 131729462 938107006 696648852 880109396 518536678 102965552 653614142 414479848 92078573 648787198 893594942 620832521 202743129 455309284 756553712 960716027 878320782 1063205115 1042648325 155681494 952597413 1003877571 763865773 964242495 4826851 569362641 1022781964 810491851 617034708 752664620 194125713 631131489 129653698 135947221 688824985 971803027 871688963 668390951 508999831 976148786 780202412 865302289 96107053 89103313 511838893 602805615 914323260 736403936 397606002 339745840 164759030 757622746 174854121 396468333 203067250 377260030 1024869865 225136284 387096410 782079574 799592360 149359720 540905223 27394906 485098997 101468587 831721371 591978862 642067840 204352684 622125800 181506704 401540225 195871768 524281352 252274161 866600581 894169140 364106570 85771870 158588686 939219705 224090748 459312378 495069108 642215213 126250095 1015102254 665550131 201818776 678448897 539046924 296699517 270799772 131320617 634546043 1014106434 18905760 906958258 16015053 434565555 641192611 636235912 22618884 165841339 1004750718 649836135 960705275 864934125 87475968 59934160 505428612 117072445 936492372 783583834 997119685 643763218 852780372 189586299 708554189 167675154 77029751 841952910 377044140 1071482104 681366376 313632766 211707111 301254736 244864233 741311811 29320050 275201983 866190503 641219786 344197910 589349683 311968837 920961035 272906092 452713303 667921660 98523026 345054894 256426626 980628467 587088778 448483967 224037642 633528203 292276543 204904021 782809006 1040768698 1058146106 149428870 328551209 409343604 665460196 162198970 703913625 198942811 293140133 444809123 656328348 94556658 829160083 343283959 1023284331 497845436 878264414 831762320 307939812 842731848 956245724 115692480 283791535 880224301 953010957 304254077 1044299755 845265150 1033398533 22712219 165951023 704649737 589998021 987022635 923703652 738528751 581494465 815698188 671643019 878433889 265395475 706240006 1010190958 671113165 478850958 662752583 928489179 577197810 886990567 884379020 982924480 753137106 96946372 650183160 931971123 945159911 471816215 822193487 286757390 309695384 891650710 537691705 1053885453 1059946956 868555534 320688174 178312713 586023385 1007857369 578046371 373569522 678287853 24892456 624819841 581702097 731194990 720658099 8846489 571938552 370111218 317608645 967971911 543665935 893125130 378158623 58020906 145241045 34206755 769231610 696012858 366742605 576108856 426817521 765369099 562820852 523317780 996446237 156034194 374046733 8180301 1011849020 933674473 733902604 881811497 462390132 815324499 316479628 647776959 708151352 133193504 74266282 173929119 646912066 287731020 563374664 93511859 628090620 113207962 101886650 88425913 895803936 772141196 211988800 612452339 590926055 407540868 4295938 151093077 507286440 906343979 252467301 198685546 1010738192 831071730 886561800 920432654 202299054 500081205 120915783 915944841 310482159 387995666 862248191 692622423 115752621 830028206 782141434 507023629 334226896 427364091 44210153 526603109 125923495 736538260 725780901 435562401 151403957 777040888 741498792 882875717 984013957 806820928 734321093 448406154 509508887 991647948 734380194 256167263 115721019 795950874 273716764 79986821 949393181 494855453 739971742 18166430 351656763 66010779 85651448 551680261 155987787 986168468 638012489 764919110 164755735 803091395 79754919 628204110 489435759 435326304 295687921 66869949 950443185 318558402 233053713 481696238 701466481 144779111 232846417 45508598 456717087 820675764 695681166 757819730 1032231217 764526913 375187411 578668805 836415353 234630098 212707275 695879905 1069381492 277070411 902112443 52137649 56604583 1044867342 917807471 100991072 648507205 864499775 144570881 339027891 401761492 30056293 117091633 1003303842 523838071 140408917 33700521 999863975 852915321 524198035 100527028 860274895 538560677 51811779 848409317 455623336 475716338 607623302 67486811 39514055 467999055 802170465 236216785 787409167 177236148 1048899229 118834152 800406333 436991420 835928217 1065126061 491165013 569158039 599858821 323582503 835900352 761445408 968195007 1040192350 22286599 235186619 591950305 328885925 622230819 210379264 23650897 755435784 327428814 751792480 629286751 497014693 469099703 832954089 756281626 10003744 286472346 776533745 1029987024 869717593 151422728 35343862 816888992 922376173 439927610 154113521 143363134 527189539 874990476 384974522 1028420428 467179064 982742982 971193682 901799788 964186658 524543852 740696670 973419035 880665598 820582101 1057847287 673238099 138169503 447349627 720479785 282416237 963166377 914914029 372579817 296094887 525877439 654129896 253575634 658871843 966431691 600016294 500161191 175552290 188346398 148032588 631556923 770362342 462188648 343949925 58291892 972902520 981618124 332345799 469875360 923712835 184174531 671435757 790618137 422280026 239631179 85113233 340465765 778516329 738374240 534236079 188594927 155831905 902789230 586612991 257825689 359998805 108660919 164870766 7839749 98962315 571366504 283470288 382262846 841612712 191697177 725409212 658198266 258920196 30394352 143943003 425658685 179222403 579490264 889429342 129516088 720633801 261456757 682209451 824219601 395862589 830190111 368612489 38669422 379710155 686860192 111927007 228515371 743065363 689158394 120184663 242028068 512248573 417385643 939005482 376042932 342450777 383528159 833733379 648641929 128088059 344988973 73462399 511603339 914623771 786499254 513527833 890030492 186359565 673694561 730630695 8513913 202167137 554647735 471693156 1070855941 82137656 56001093 194025447 584288033 869673488 597389290 498695377 790348061 481913025 442637478 933915886 481536413 86305330 528317194 1048529561 165090869 48583003 26579506 388299281 936790030 467086248 452838640 564551099 324735383 931869977 915101692 134342817 430146011 229546994 784229442 21008792 786771031 1011906289 910627943 835471165 492605280 571664437 370637291 486154217 178822996 604650415 127970316 305833858 586883565 155228664 132664996 150081686 342695197 811415819 878680843 528770288 519985371 329843703 24737913 582840588 628024026 853735156 936915227 650486671 340614843 410836885 612707568 317440310 886291111 311957934 84838617 382431345 631438740 381012985 1047417 489387859 670889252 778185126 822224354 842640921 522875562 365264922 902510370 39321019 740687864 453990549 670604773 540828147 400833930 202927741 835426897 507946249 660470784 198490604 1056669502 362622190 1026291492 388925005 781547540 207131611 573232738 869354813 91175694 844050033 42594455 207409903 309007419 978890279 368570528 179838267 820592390 617014186 572842027 468568510 866696109 951602091 368162409 496334944 557507214 121727424 647416537 876148532 862280614 386590426 832676426 367682808 765348592 92456370 779960413 830432666 563599058 434240610 340928130 143792831 414929584 426726875 19253653 448124745 858029541 1018160269 699668388 812077760 869363233 1011500455 19656027 128057729 586722341 336814563 108268560 33001214 777061629 742438367 321045480 137908236 934198867 514775029 809706418 544760152 149256237 804663119 500928001 259059498 568453787 2304117 744518114 206265255 897602303 254676480 650100757 356192416 1023779520 129831973 978514585 616174658 965278556 855892834 63630052 368812052 527284834 618541634 902326845 859187711 423804339 528536434 656000760 603497177 609469011 518434243 455335451 78947314 708750662 507247763 508013670 191976056 700560724 589312775 528477096 616193758 680178160 401143767 928896397 997189048 940200964 570865412 25851871 981862571 725924041 799965492 698725809 358923106 443753949 911154519 1037525836 325422061 927566562 284674044 186327145 83445269 644573491 153775105 744422817 119129420 76837022 312396159 565604990 551858691 560162776 378225654 936575351 831588383 923528878 1003280182 553930645 987752943 250677796 941146213 20865600 493479821 791013253 702680210 987818857 707887866 533067853 661406405 1051527320 760297107 510167487 261878983 1010420330 361325916 665893904 986524381 864994129 9816425 366523825 311968240 960246337 191254609 14692144 556175833 646008363 390655372 165145147 414354406 895134450 739858519 438778002 878238091 149285528 683164512 1070239506 756184848 212379555 886362649 556945209 860091241 257488603 395662334 525263609 431750037 360053084 447599387 751213329 768016522 432802840 439790024 756049510 80405773 1043736348 99155142 111747597 977904161 767313760 757019707 1067379484 276337338 326984091 129576312 947773766 399262992 494012013 1013077915 928339564 226110747 297914709 564302599 601428065 51528464 799306432 4771229 919462699 348054088 276367710 868674193 979312373 444995010 787558581 929882933 626939622 74876623 79421975 987227622 206609944 218005944 795361508 490752478 661111802 438837514 928844050 366569659 691546074 111400063 131507695 1027805429 139424379 504770985 105223052 861007175 344826526 99631138 91686316 37390783 859583091 1013344026 914601694 253482701 675243191 306199037 41635891 684393692 787055231 614910118 869728477 824109582 612311091 938775291 683728180 643814981 994926300 260458098 1044656103 507889486 604578194 942581807 751393838 921540779 480680684 986717338 833970916 273877075 1058493756 1046874987 794823415 914737314 393572068 345470736 972867530 751904559 1000693783 244983440 963677484 1058317701 863422353 319908676 311605669 879971921 894449907 829165887 30633937 647945506 636118221 336805186 16729321 1013722906 466205014 1068542069 785258861 515594816 990468484 810491376 659290510 1039710150 1041040930 139904450 907524597 898104065 839673471 173637211 631051193 49993526 181114467 312078758 1000107228 682483144 874022175 54911937 114073545 749477174 525984836 382891449 15144922 790313097 666570045 544067126 796427566 569290441 784591394 722157695 3492154 471818787 729918984 829256857 832097915 93178076 142305224 428804945 396966540 812031083 671599205 42157295 615058289 632585070 415159169 1061546664 1042036533 326859104 687910627 238408901 638164299 410279344 449393272 38034900 553678580 868661558 15260195 653372718 553340886 995893177 981525860 522308268 643141946 399767745 989765238 210199541 1050588362 938755515 686878860 468865541 38993772 66412645 184471001 536382256 5520806 192830291 200984719 300843769 549700406 118871555 130666326 785318301 964074634 101558283 113356093 875108219 194390148 364235556 13453266 463842465 972136501 434194464 400905284 1055246660 736068089 223006008 878361230 983857722 383526614 877275939 1016132111 561676822 13847294 278351956 819142155 924402291 250873552 570878368 943284557 1018776464 561801363 216573398 971150067 296260258 811457053 681522290 101925162 204916075 962287060 127800190 320560923 474347447 446848251 788711451 754333388 205315905 412981228 386970807 254339299 46557144 561716099 419306461 983941179 85082451 60853440 624812092 84996889 263790253 884043320 43652810 55560573 863763060 774702358 995921599 386262926 638046129 228161412 304174926 415270514 408144936 466583201 483139753 964685328 221080567 214493374 917915442 863213722 1009477888 738253893 1025619346 219404169 735021152 211119018 368720278 222940515 900287303 844975949 377922192 706598856 135860672 586016476 571308267 968209491 778408857 516404865 284431008 628150421 30231402 256379103 699166525 528775591 46344722 293154394 620497794 943666598 530957640 755855703 844391959 582124048 587832447 81749522 883288545 440448388 1040852576 1016759033 815162306 1054148608 479934593 368387819 265421043 455855520 60716126 1023627585 890976304 738436201 977471146 190078753 960509141 497138356 751865377 39664708 597609759 287334191 1071756794 817412122 37326399 451918604 63219084 169136205 514331384 204675013 277509627 1039287978 789692294 584580686 416631653 242408209 426122551 324269414 737257466 176741322 922172470 476889661 852474473 438226855 426352994 817891954 794960395 415516764 701555192 407356051 726959748 942182262 317681560 971851480 96923769 443766050 465896554 20484511 527536608 515767582 396637021 4785588 1065833409 574579760 921051990 110922600 194659432 805201143 959361895 46850006 724549665 982998986 994570956 634341300 167261283 208294450 331259102 347934811 419454420 953373539 469658065 218286557 66056368 69319490 499181070 284271955 337371534 489698365 851539060 293165473 251739828 656674226 426169457 1058972326 279117392 768015401 22959047 406229334 811093551 420322723 326521532 629246034 137911208 319403378 722842296 322586580 464950363 725476639 742021783 428902788 91349424 879441867 632936414 505124111 373351446 283067156 816104373 970322412 897593759 123312709 927966499 203567783 646026986 184525835 400669706 156863008 292818351 484954797 116595987 742714938 535782354 677114349 85248853 901343979 327298999 23387356 53394842 438991057 483593718 666031651 663301791 396405543 259433262 700374150 861697322 810880756 699261860 455712500 1024266523 954463042 111883816 989442923 130374013 544047895 16493842 394596663 275917598 78384657 724955853 876477973 226382645 708730346 257055388 14834937 723307461 197924519 474578980 575973928 978884633 60202048 172064118 76421538 321138768 931753074 443232570 412785684 71216299 420550900 829640011 630577993 514065561 76229665 421805885 631922061 709960272 29904473 389060110 913800772 30947269 858580538 598604982 669291415 310943998 657951964 91468416 743253968 832041401 119488570 36031355 471936904 230412450 106819165 2926860 805321446 684113052 1014264140 324936324 16423074 691351742 523312511 235883176 488514573 195052461 786925642 311564860 57768723 679866838 625258744 320753228 688939480 987167933 216140420 1010486579 562305422 619118435 480881017 916021816 459783713 746843814 522196479 86104750 763747182 104515522 145584792 408431359 1031872918 797874648 610724626 261466458 164412976 509181891 981492167 598611171 583050056 218300252 353494129 869479737 771982562 580641083 992642376 99018602 806347639 1015693489 769475455 71160014 940634915 369662644 198375091 35016056 23108165 24824149 397839301 311366175 447922591 1002465430 370370658 250386795 713270245 561232612 611911813 790114433 869790628 588781280 371176737 565157324 74920842 430395255 418848979 1058094115 569203113 235223058 966670797 598957442 162613914 1027726207 288747028 592714173 389558702 576457762 697068024 46892120 906330138 704897177 531564973 216532359 893529617 910147774 640901841 259685681 643663938 486938875 23532410 1063840466 637948741 676442690 950242244 554481746 929664594 373307847 357513670 226850239 988774346 196399879 343294216 985757395 208246070 941090488 168794376 468525239 87533765 188780800 632735354 955276350 481218615 1069006853 125643949 404025522 392144474 27962725 197684308 139060594 846582489 228564211 581637983 654879434 711903809 672469803 1006971279 324495524 275820857 835166849 372878720 439927307 325316291 865962530 929993703 236125125 869945110 227910363 38293033 28836988 870340957 805933726 226483556 496690494 123878590 124541988 33561032 609461522 136537199 257274979 776649525 931990100 907894080 984181515 1050036142 470055345 336763273 180553307 87570875 319695126 499827254 51766264 446901690 226342939 229381579 884631578 977423731 408680828 256575177 636531516 753866387 483397046 99340141 422288626 389423912 253394120 665322886 880228492 663592488 568440363 826783386 577632136 684256141 219437457 284743900 796654193 581152124 734579631 285672242 661485513 588035428 954932302 489785561 730099549 823810840 147680922 340042976 531716387 734638734 971731751 673577648 510434477 62557367 833989180 824901369 449177476 481281206 747079583 86038482 702471413 410736386 563523398 1019882654 556350012 321210888 600416041 204766691 965392218 641714246 643126382 696387866 229724046 742656129 50563600 577462325 685648198 613807749 382082465 407970881 352833934 46532221 687369118 666756766 837080762 716878517 167601132 164183689 323487538 1068806216 987418180 627129212 91085505 761993138 485298448 208687391 743062142 1058734388 744551709 15276335 63404489 115456557 312819430 803725074 1019620702 137299157 163636543 906308409 1049834106 96494259 485906228 785361830 1030430573 87045284 405941073 828316843 766319708 446019896 710014361 1050086571 1018123522 437497537 163682833 853311557 733640396 471938359 27469871 735393055 857874876 391892275 1022755976 612794802 505248721 521628343 270653208 796592828 1048961356 33595021 231509926 965005366 698400452 583854344 654913499 780401858 926145953 789210450 179633284 673781359 362513284 712152195 716517064 666674947 368869748 1012788522 280276038 866311865 916850294 550886823 128955474 810167821 233212877 875018722 125970405 1013450325 513573716 1359798 89376262 196877570 431278242 457662642 982083780 982750440 814464283 264332517 669204567 290573915 469332996 950134590 337128833 1040707211 129114680 386978040 13155656 220585664 245983558 821691972 63716636 126933118 925002152 971199259 493093062 1059852047 701800683 136376478 959291901 62713663 815996950 168127924 916013399 113534910 333161687 874429081 267739339 707790195 564217247 405469762 674825805 444399766 830470013 661003181 514906429 529340704 561148295 217612120 988477446 965211595 1057396303 455512225 656343921 981032371 159353925 515603130 413691431 168215203 765543477 422962279 43607413 294474202 836866702 116900445 208462094 416358632 266143624 94670722 719754305 1052643120 389158497 853849176 92737162 237141837 605984706 521623840 487375602 1030406250 871306551 940391785 869193056 284987155 995547275 749890162 270140647 128236762 408714115 968846384 389865699 608369295 305607040 884762414 593134119 49067947 695740847 511692869 587507393 316860465 694844180 901658033 304945735 363175384 836635192 275859659 783510928 142387008 474010297 539094527 1020774836 337387825 769606557 526583242 791098824 621102693 545607062 837330385 640533571 236282670 245642471 464396838 637433277 695918580 78236605 784836956 271899877 236638747 1022136814 360905751 260588791 381320839 414247624 156768343 1007299406 982111479 502140272 567696694 842196965 1024197605 1070109649 1055567765 133189433 513249014 495151071 405985895 889331303 308750492 941271326 1061194073 182741452 306874305 183084124 581193661 807726464 620388571 677838635 637162331 923297481 81503744 171216828 300766334 255860408 129217763 338679291 862688978 1052798719 577009488 218238574 496656926 130405566 167672749 232791688 181767890 643268166 800057062 1050038421 544310683 95806058 859942720 843244657 378163402 768520714 490617577 190718277 428972851 570444186 219664901 152486341 298146526 119499360 810172176 490945575 1019733944 495807052 761584359 699071221 342150151 701980391 901899679 939153242 12211306 231079084 541802432 871413640 1039000841 134638569 496979188 154712862 248048559 824683638 66710900 452488935 545152441 557332513 48927021 563729367 756029250 1054550284 777141569 654411733 731769547 915831280 25279839 154562493 662058785 82765726 469518139 485979401 818267749 474271283 794567696 630332805 440772620 62343361 203471097 15694641 123231544 924616205 649738154 644714968 938791969 966241033 1018081827 639667636 505879924 238020719 579636785 339732472 980606432 310861441 741752137 357821411 282927996 609774555 402077890 510295217 266295377 173970154 978718878 314937670 456162441 655551657 52676696 267234159 381560834 695833519 1027132062 794489004 954980840 264128998 534880470 4807660 580371908 376230481 818424379 979207419 893654550 794991220 654974452 97172633 302516126 544284722 1009512704 652240027 901202371 456370498 467244546 483740679 766559217 670529329 589091647 856179194 718887695 450763528 1047390778 485783112 663416515 586456130 945448829 1067635436 417063260 831655856 1069546622 121653535 84606680 34042253 880976039 1031309439 599996326 214628057 102213145 463374178 389312802 205639844 99572852 146505461 101777135 976270015 545471307 149395124 1051599636 365958305 437271850 125050908 52454213 641150824 824275847 430308076 440822926 149015692 263386533 947930044 428420170 1006215642 967662751 479175907 903816379 773071314 898193808 1010099148 651675378 412189404 748342013 144119412 354225945 952880202 615872671 77457467 999436317 58278540 341432698 518851394 995649198 879881042 157328212 102835918 692046214 1020791587 29900545 7069471 105128323 904425670 61496720 21691074 942945340 572948941 922104720 994205762 893547028 836850593 167832636 430962225 182019920 213028448 894044613 191398932 923456342 498743508 907020185 737137706 753163047 415094417 165192545 550138235 898206111 63415799 688375882 648521265 1027489568 53528588 1067522310 702182159 31084645 263735477 416308352 34211604 779956983 444997547 855216307 604846583 125500395 207398666 1034185728 786999961 319814572 400691422 713839723 106001044 98016339 355215687 847142360 892337990 466966252 355166558 710512458 598757878 214277602 454825555 674240993 67941923 551799862 88093776 499876393 32489150 491458729 611716630 199602392 844883585 88446268 39078245 707331670 714100526 460108967 493602790 976826441 269874287 29903413 4260618 814666336 854489928 380822451 629432009 74893454 964636453 862457392 778407052 49172849 538377334 278822475 963565766 187748896 623189752 357237979 864567941 395054712 508810052 108128975 959166140 451850739 849626741 27130770 783106409 963348464 569821060 124765227 287556152 20297033 928540754 948693188 199806032 992625018 1024192836 1033852259 975304232 575940762 359453428 290206678 957480141 482813094 91532018 489742528 441773203 208979496 747999873 1070474025 968423457 195314086 362180245 185132246 978926673 361784171 722005378 926166102 336546784 586661170 306254984 1054510867 154073756 948214692 801449073 805359568 616616145 940487041 400466495 66558007 1017766646 795228023 825899294 13222386 719276721 130961705 432820897 65164636 301736370 702876131 267589789 630044352 111951630 141711623 69728046 455575703 443319470 111244518 992963512 1012960890 258227095 306283288 403941048 200203 611476784 364187281 545159805 93574258 1015523523 63390232 966570899 496764902 168107029 203963272 1057153913 405400910 511932775 31077630 589686271 643937392 331481844 1008534106 924041209 1021485046 914545502 798078106 820514481 129669948 967730567 414583916 495025686 431521416 974336295 673578265 569626508 55776485 384888685 511405577 355257786 575375890 965691341 979788679 597349202 116975410 411456144 624808053 713359371 377254747 208803986 245453101 913648618 637433835 828518353 329281381 378346955 608996959 435354921 901651512 91002061 638765266 460600427 896127445 126262465 181059492 554390833 391994460 537421288 755296189 433561801 178601997 487719220 545634704 88121557 577330404 223170584 742054686 885561174 201995930 509779734 3637137 156882697 385578348 390799585 363994752 16213356 552698978 120016440 248010147 505835738 985695989 542450657 749904386 1001929533 991049431 326098157 230068836 229051962 135915211 448898161 375352084 911978591 393511182 138309129 335443859 82559287 461030483 921865257 864616035 609579450 181052317 690775782 391940522 318134845 682589420 384184350 59300121 464334771 608338750 766641810 262054806 169505718 1026451241 369901388 918817100 199136974 3042433 289479314 1015501553 425765619 253327614 88272871 298235801 969210618 740830130 1040161966 652411117 933815170 41811516 845359835 719050717 655453057 749142395 524842487 439024138 91398142 507492650 635752898 829652759 334290854 694202828 458510575 733535256 318881514 1004119304 199209188 1037383252 644309507 531060357 364404826 132732853 247833911 591204456 99579436 96930443 624654824 304409453 730944033 213390370 924584638 672048385 628891355 138832972 1007145713 457218998 842585578 319675115 949994896 307121402 455856056 890427204 140712555 872045438 991247252 91508265 820063878 771972252 1019757991 221278711 1043135067 595021721 118231735 588163852 588036436 440785179 603935913 148008613 423528420 992556373 214728937 822615425 1033498537 975958381 356335012 277408237 763249760 952271196 767964176 676411818 658319962 215713811 213831670 635822957 216170546 797423800 843559634 657139105 511311409 338337500 518128735 28894712 405093831 663148541 820217936 1037892406 588208659 406384967 1053206328 340143815 301695344 258919445 939249301 500012827 894449362 306070746 42555943 827191607 883668418 723993630 146402442 672079831 812929284 418504936 467327431 84524886 707979622 683684490 370592795 97915593 809329129 772994026 1055338957 832247134 132895542 136086343 320369270 547789840 378119178 127176457 992502316 958189570 1002924054 270155710 41266906 836470080 17927239 635749391 907060120 920321503 418428569 56048875 683635664 777047534 522360438 237068264 247465893 904977235 730790140 508033188 159693107 269537283 89096303 453604897 521596432 724752148 343153080 336949619 327703745 874231409 148262667 24436134 141751404 669998093 1009894442 1016176771 643139302 26213860 14096596 548446782 653948543 235504313 598058540 132343675 799584963 264879986 923097552 47503491 416003970 124339146 825983081 958053451 810955786 757738860 406878855 762744902 631416104 579562172 104220610 490855324 396929712 97234617 728214309 804452658 38279669 345263910 918760909 203186318 110761759 279978022 265503108 944557383 241264842 139235434 447330525 818788915 788384873 813278036 994587103 892272039 455476232 642424452 22424086 845118526 446787599 60769613 134330933 326094924 491411853 257993370 602466970 603454811 1028765486 901348209 7684106 868554884 42372336 66501384 235227294 387937531 646010378 58252675 474597314 720521223 531190537 567118785 55017610 686344148 432844001 423591468 957587907 411351993 800896253 325348238 698650874 743471339 625127112 83005863 691715825 1022666976 32069682 271458582 52747810 796905261 983721884 36094646 571568624 446317083 178619034 412250502 1063120028 114338573 164631152 488584830 121741782 635029803 901405936 658302699 778553966 487096132 310048260 339521911 119644422 610818619 982637619 474052353 199646483 181319011 126428219 693225440 426506358 207405718 590292616 182172080 626020045 247354437 515843507 410459350 459539016 430662010 672725190 326492368 536591313 65595742 136287264 487930286 1029722192 163627978 213313681 58029866 985507182 418258750 717813865 1006824447 557600283 440365118 332547582 499049617 35702950 867898213 399254598 449075655 934051855 743203624 838087193 220235259 1053023709 953284205 1057283609 695925243 753065296 494841433 105325198 980271374 497132455 707417554 753603432 908278462 163312443 1054611308 571765126 9502478 188185109 668246536 419504716 1066132104 638163763 68441336 493335615 707255150 939921579 421738324 651419953 323795599 296123352 991239948 335743364 96798744 291192438 119671972 28194396 859685918 632055954 47244706 975893215 936607743 767710123 415707947 188784610 987425123 654385679 69939411 585426422 367822807 602968226 976343817 254047508 317045433 702067518 544013486 966422646 530811656 758627545 483791841 102167389 252905242 876824401 732071994 199355406 206739246 903278887 1065953571 195806220 562780815 266250879 1010010352 513519592 963296092 663811035 624284143 404508596 615392751 701772095 648707497 98609474 393010431 358792730 733758821 356916492 176264349 438759748 1052155505 129861139 240758985 455372190 1014193337 471382341 1031696807 568127561 1032990112 21664283 612051263 873087938 320546363 664924323 842220601 6350353 415338259 860949785 504561444 702576258 769894629 818969073 822661708 149903181 208805535 803343899 712212903 163643568 14101595 981879088 648776332 367102175 938244993 302489697 234177352 192863459 171230972 155910773 327992309 177658356 853478435 301240471 148290306 162230504 165937491 329219863 785175255 543710277 846978817 801803563 340085863 381697599 479507396 174736480 365370219 342455187 187236810 187751625 967345817 168971578 1013075209 1032573549 655292073 950686323 120071508 645888238 257456152 792871048 735226422 799237125 239818979 661630421 324362889 507199808 260527792 112412244 862736907 958978999 861698831 1013778662 657564659 1023089537 683919280 230443055 225518541 414606878 32098401 318588395 882102801 704340824 590076404 347443637 910015192 180699254 154874332 984465979 747906785 922350739 101686395 134790831 909800984 43674190 684924431 948060038 645296030 220756876 426310188 599205967 688657420 852698722 174710354 23640710 901587354 1049765097 859996755 886132408 623306215 1045581212 807582010 375806416 33512813 376365593 282265736 619241602 182534287 533309492 255920882 635804294 623889 183574587 681381945 799963523 91123833 1009755525 668965756 544398202 215824170 870342314 391125850 728268892 40513931 552655279 175070737 363028577 836658822 905558515 622789819 653483532 936227016 816585480 664074370 889584256 691690967 995050590 741841777 478039969 50018109 263805453 314476190 290174040 659884316 364415306 393231937 460883475 431366659 672221003 632224513 1027178047 303325879 937547676 1049123171 177999778 325368440 633551095 776373358 935699652 582489394 144222579 193695171 549374308 168196110 165046884 769373268 10870035 585864546 242662399 1051107261 131833108 444465883 50692249 203639231 224627337 712537427 271659119 136134651 875620224 367638843 624611914 553837008 976831806 458946996 581942597 293255464 992387036 702976425 255954612 558540290 907364727 554669318 386044098 880008026 656325998 1068385048 731926228 353356740 610465179 60846606 541422075 177290674 611666267 1008946433 74146518 806575617 414478891 754013208 78883207 850051938 1059227736 1027958855 181050693 539456264 67801316 315886821 933873607 829188453 1018612146 775907764 255876529 1059877672 890424537 974004391 477616431 350573038 412770271 703047321 98764723 1026677185 668931559 695246738 162531474 337745601 461283546 658191287 608629341 560967050 935519373 381166788 128279664 40844367 254305824 599762015 174901800 873069488 868018765 715292781 1055924468 844681325 179413209 122806444 594072793 344807210 276335666 739474751 397488552 577010125 735212171 388610217 286589659 123132231 1032232766 711612728 885779461 348200305 922827842 214742254 294782464 316189633 429120706 977575367 432700994 341529562 536310268 605838025 606721799 856822217 865433590 464367379 574982917 259701341 251151382 490437426 56342058 739632405 658134012 745675679 513865000 612972584 785950325 352447468 81004752 883028479 635700305 987280918 418991292 504741188 227721485 1013102106 92140081 464693004 753723594 916216132 94652258 392495358 262483864 450834717 800502099 556607525 270664420 738130247 347145207 118620996 897707034 636811963 488217016 982470365 82609276 351369568 308639497 206789165 782811248 266321447 416807706 946544423 232556750 145769022 1017591943 646044413 929494297 406085351 842927199 459160971 1029792843 850229612 924534756 174065174 49537793 363864488 805184824 949154365 1006046324 316440087 791758449 431604794 157788027 614417800 351343581 655674508 514230456 881040345 194579305 919592677 240016280 469987860 761669078 850369717 1022273379 303708735 1001361264 663176272 311429444 836184729 190814784 407398163 1043925136 636796822 628607461 856368425 98429567 1047040119 17335420 729457505 215414386 271623875 336621955 381975282 1040773091 847366176 270758347 667609759 693381261 618862901 787786074 1021651327 7961222 828961904 641393150 913459870 305793166 1049418960 525567721 1051665110 740136667 306153522 420374176 227104878 982064579 436001764 802838882 147934379 699303426 94566439 447274497 155311572 1016836799 441775112 275744693 235686472 377924083 195084749 104659324 518569787 880214249 705060597 443388690 915894644 601070279 436462001 176390481 475584439 565111731 151303746 415599671 972168143 939035851 754863498 59786141 47885707 272458766 61443084 1033885160 249634113 297659605 79268944 463993087 191263009 362248252 841192508 672055705 260768873 117080427 349236002 768767865 694495015 954386861 673222592 270692210 994161430 495991437 865727050 904683409 459688511 695607827 735293979 926781100 745906712 368144107 32521000 59587925 134674652 947476857 372144814 958533720 75942841 623950634 585002012 463531232 42092811 546694825 56684436 173408231 605398894 872135448 710027251 375692638 247177182 355272163 500692829 1021419897 503396953 683493038 774896451 933336934 72617308 892573855 343912850 536182446 694976392 564912653 471724094 220182881 932349740 34965696 55645842 826205964 811549638 470933904 423130141 170320898 414591194 967296520 758307533 39751251 820081291 241965763 411640459 521706346 19263947 411301910 249864176 409538277 5455105 125525240 601337823 552766381 171440268 138830770 499678711 171871235 53231509 524950830 432878141 786237908 766166389 184752947 92515569 648250066 892768985 553127939 284567389 1502971 1050704705 852530273 38089628 954216081 861033734 544569611 927688557 913828792 438181767 964003877 897068657 956435199 444008111 1068362809 415380976 673092352 389758348 462776705 358988 1004549219 1028940974 891836670 1072950793 594109343 613640714 294837847 847652635 32194627 668211435 385028500 592906366 434414685 881810763 166455314 880084509 654917517 594303341 1035457151 124430425 125015224 656665182 405768428 398677371 650058406 607331733 1053455219 854387320 300070675 274390031 308587732 440581894 752820822 780124638 737247799 220595651 802763857 861102048 458656181 464343403 15010 645220750 290739919 126112930 180694040 178873895 678686640 683221343 863094977 644793391 65931249 496489934 260867516 242369355 684221486 385341906 177860356 317338587 1070954362 994321271 797738217 367267038 743018008 357335861 992636122 768099680 226661949 53292819 945305395 49338710 651623563 216119405 892346928 698141737 497206381 807059554 670475125 435669245 1063931238 530739328 312681859 275751122 808088448 31166754 378927551 441265506 978610317 843920928 199055148 346546387 436310510 734223930 225743127 1064051744 624517893 520213604 871444676 11653797 919195462 479110349 998939537 135921276 696753945 287450991 627119598 1028962755 249720876 144152757 834671508 1066636906 556371108 222974758 90939369 562419159 247887485 838625794 381478833 948440025 77462110 513696304 728069122 698649346 261501758 390463359 442316747 280958371 186197254 664824645 585218742 235332449 1051132990 1052199938 807728514 341455391 35203517 608832729 1057428444 256121940 427513889 151952744 174167855 221966832 1010319727 871999015 11183662 118281809 588376419 116425981 1022837245 16558323 570894900 191442411 719434566 741207015 158644188 676200052 591596566 900421640 648935232 803912759 238328205 987758167 14392718 74745191 36473116 224799584 243548066 54427981 1024920220 869227282 152083495 709182198 345631004 698781849 661005393 780987291 237066563 819088347 288244947 935710182 1056573678 675739796 724543659 532400993 876410530 145203785 1016572909 187869478 225036328 903632272 643857356 699515302 750485546 794142245 634442363 663183030 792618390 894560108 149083998 366515747 685351093 511062438 257111720 836549022 705541316 678546643 688667117 1060409125 104899175 741521574 862217333 781656831 911617133 843930338 647251020 1065789142 1062744378 391079391 284569093 596636075 773920205 13695580 324567103 675800868 79678045 970862273 440921068 581768945 703267932 344603678 10296686 343872466 415864750 856166726 1052585824 26097666 687782370 153879468 811936028 261888176 1039733276 87965046 444525519 584717751 1048824687 1028112297 411779879 206219589 559912797 877557138 852218489 643167806 621434163 1030729520 828835131 696283340 984049737 124868889 485528080 448070956 940044826 711408651 860263865 261983107 791469982 583559844 931255595 844698426 1041588613 85683709 24381487 247496382 263093741 141534150 128729550 416934141 835933408 274517324 502332277 22209884 768849527 462314053 973663318 703891494 986755399 453958349 546029822 41263553 338740326 982700771 823393647 702636634 908841179 834451084 419280853 303912587 941938058 378765862 684952131 11963142 648144864 789400286 1028887271 882296992 300295183 428682239 529188484 818558701 1000484009 164209492 306290545 655163733 111649042 1059173495 223813372 891323864 49311613 1020171902 995375983 223745179 345760642 896638495 973000197 883105617 241545828 578517054 742512051 151589923 916774009 548404780 806396354 725094935 549331874 784754506 740831307 322392960 715607911 245702534 997468021 636159979 510240133 74455219 500058327 1004393697 353617339 191529699 897962545 801132893 480198392 923813078 433242996 645630298 172620493 596538277 467613734 600312784 750164197 117923389 407766445 363851986 58895692 463151468 919374188 133316723 378162286 226580891 37800939 827178117 403634621 741870409 344395323 818953685 863212478 78819409 291959561 791784569 821467728 396630102 761381102 372153176 236690703 596236375 180750650 928603197 871422206 1013770783 973909199 65290228 135349707 198085800 427089531 1006941038 833895402 517291273 303610558 150753139 42231276 520493582 424370700 177864299 174478293 326714678 334442452 907785847 705772167 561237087 1026546077 404543764 750254319 122972281 695127462 335266834 182808519 197990525 890772460 171712611 402708367 423779303 122739275 351021149 16356666 356821188 970961278 843337789 1072065560 965850471 1023681470 600212263 277150997 151811347 866426222 619327952 541708599 734537644 829387191 762303733 246234531 874028135 786978439 395430496 618305986 1014089779 887672281 932481860 480543192 526782002 665612964 1003593408 623383795 786387580 240578946 295708091 936282003 20277884 890886234 371231661 598162374 797757604 26121705 576778524 595610503 547628790 350259360 95960429 975883939 1049295705 676160792 497973768 994634015 293684642 31834279 629709989 754768872 854875612 23365065 827736120 652023748 48083842 111263087 124906040 833346212 575554520 682481781 886655983 775638891 11006909 338246017 803504644 963042035 737305535 900381430 190854775 684476469 490221689 226950126 254925981 800727532 931460363 617967475 616333541 915818692 720155374 679988939 234452461 832006496 725217784 83935413 440939720 611316321 665515648 26757975 1056136082 44984434 846341176 489968666 281063468 330520868 797398096 634597810 322728483 590446028 959970067 868736985 189426180 995640149 219443559 737019591 357038808 560671223 57732548 34779337 3652496 293047263 811223761 380581060 230842187 895334991 315599379 151359360 909815651 136896304 195324710 779972537 191401858 436692971 256801930 61495543 1073547546 1062489742 648039318 10034473 1002025059 529810091 24694191 863170777 78932968 478260563 790154715 533689214 374132455 615254873 1010427262 346985160 441392990 633290566 438980402 755245043 961415565 291466832 905917617 476000328 28080513 806597460 940415057 659197581 592701289 1068643783 594728784 30191057 578729398 909282827 376392049 893382475 574141707 385321403 761835351 883337493 715841516 472784321 144444187 533574222 888570039 562876935 1000319616 781569846 120106773 180923050 428398033 214457657 207538152 265058372 67220782 3922809 432959569 794002189 230218178 1017527918 132894071 759371358 964145229 423308730 131799764 1028789154 480047175 669522258 868814354 735639030 41764898 51167262 382351302 829509555 996305696 425119789 184464623 916262567 834815940 235361014 290273741 14775159 289110858 726411999 52374506 818597774 757965035 699998056 615523036 200158225 202266280 784453340 453629577 951466344 894567429 980498641 391120873 923783629 79348898 453755297 581097064 865171821 950329120 311227166 8658263 238905234 28235408 982047935 741162703 1060155582 167382476 206327758 283149214 718272037 404574505 876212592 230533142 798329791 191172075 966114048 665633835 955004946 236308466 180930043 1011538399 659267217 141430179 292863852 921334078 672322454 988759186 190016306 1049069138 245585707 390847163 308305980 703859109 1024879811 690725383 367601357 58196963 398753847 202806099 328453241 545627610 782988486 475471265 376928260 134440259 419346426 820025686 121301787 964626924 674053162 421277065 642114632 445434389 766625055 126743955 1022308677 734735393 501086438 585068485 857663045 796149447 878058092 1063362214 958579346 702150843 375609892 911155208 71914863 717563337 325445032 654077992 1037114066 379636769 532160281 199931952 378251769 462960046 684233070 950894139 404109790 227479030 687000479 943529629 401738412 649130447 390533488 452224106 58674685 561540042 275544114 316439564 960677335 83542185 152875601 133399109 736954976 1004863781 520653832 896671990 862741369 31646382 648485835 726381335 987206587 528816361 640860178 60451446 628170534 67287726 817466491 150779517 1005442837 769773225 491039452 767783409 1036866544 657585062 244485522 820063471 722821167 998004949 18690152 186514338 801986254 749894906 577131683 614139545 421129962 111466404 44267512 173333381 505998841 375168934 780611052 368659533 773364943 1005252705 824920372 337693866 830971935 636675049 1003828445 159479025 49803808 171282583 952428167 332913164 21630900 660618495 427647114 310270158 615759512 798860868 211390970 687861421 444864159 172572563 829259251 647504854 1032942884 848168030 694016841 116325599 1059278857 66167798 130073108 251664570 434437416 197736922 295162638 319536114 389101529 124731776 540346099 623039229 640757893 347175112 863729045 438153829 22794562 745927229 808906758 855968480 857585557 494670989 611990836 560947003 852032313 311978356 400572862 264470644 583080374 745037610 485597349 758066912 655919192 627557981 348814737 939817399 408509465 94702714 94481424 464027179 500604815 71385299 270240130 398201750 654283696 793265888 197199249 526466142 608700267 445300441 704712535 275863178 398945832 560427865 26724184 961816216 407407732 609654974 396509446 1017052497 384755454 934936397 360754030 883256853 907388549 281785885 376888086 788030839 987137971 423427122 874703009 559998819 230775268 501168585 358028066 804172994 212818422 655867551 964491600 515921838 430967625 924020924 818499563 495427914 838796021 826459915 1035352584 319256294 587009167 1036206099 100099127 52131864 365763533 836644415 1018805600 879191953 402798372 289660961 556821008 676371286 815315770 235192781 720246732 218035253 388974452 993667441 578572778 942927598 192078426 1042492987 876052365 34117036 136368971 512701577 67222304 995782606 549714939 386793346 667429889 542432953 394223397 119379257 580878376 863838921 712506029 625411274 16806810 316333201 393572343 228404921 976275380 333065910 339574857 8623005 856802595 688601301 69166748 1004301000 1062504268 301918199 664168625 526141965 839654590 1055590611 581993373 169054114 752932589 376432989 182471809 632159991 807851019 189260033 315814505 1056518602 290683523 545475933 1072747839 7048913 126637985 305295015 95410149 951243755 353333560 933177677 715758767 143313796 13732143 785179904 956780711 1064398534 177043926 368444968 480062044 533613858 385139394 375482251 877394154 1053011872 700044510 157919238 1022904486 139973538 331013765 1021084229 265765717 605790575 553695402 53594216 70654080 159165955 939741655 796667110 8397976 890824005 737828110 977481429 811942654 912022365 699980320 71955272 297667313 166501798 793761855 486503021 280505967 52321033 922016745 357257920 881998344 1069752706 487890474 31042565 13319357 63720213 944768374 98025626 763818089 590148598 652291998 268259901 635974255 698145376 999088038 838991781 1069778251 1049299033 623993537 212792933 678777814 159317867 439939868 688132502 784720029 470008985 230531518 610302466 1598916 416313664 567249212 95800453 52530699 295751873 949044779 850096216 951817209 1053367279 338891773 350541733 505712635 959213371 531394668 712454261 968548540 912053993 547037253 833423096 930716884 819600961 1056121280 481150876 133139062 795890477 640676375 1066880310 644446137 437388393 47041665 955637250 316422326 49776776 834678644 498982284 16770590 50210202 717364507 495159694 773578012 569989245 10609279 866479421 802581366 45682634 865577402 458803832 116452705 649194313 727049321 337679372 1067489705 1066740958 781489996 740349495 706097380 118872350 639758041 114185392 318238030 650934589 887387025 560956977 370909021 235225223 929524747 746680058 646608978 931828398 542624524 647046818 180035843 329137646 626828822 396691044 627227946 11718299 769522841 812105953 31208779 263193915 98525566 878309952 180126160 189083633 793345064 488622728 513720056 859560518 530183484 426259477 189622489 465479944 441324582 21486648 410516875 381144843 85763558 87891365 37229705 534797244 675093247 775103707 1042884110 628689405 542598764 765513254 797140142 32212295 10777783 689948189 351474628 937815547 860338210 318616318 953373443 263204849 654757240 764737379 174751078 369053688 663195070 921718061 1072857159 538769495 1052310211 253580078 150765376 868315250 1043510536 1027381021 159889185 239505077 415588432 259974717 658679346 985238079 778094002 823112049 51211168 561207679 438526607 111328186 636033515 292827426 1037361235 392184772 256917747 257133267 33457842 866880677 255707900 975698513 573610083 68151076 85860913 218973515 700577189 197457019 131275629 607721548 27592834 277787894 843254452 846906001 587981218 363159176 619192629 1013285765 395643392 747416014 84274665 175953197 567976257 599093382 166598947 360501995 1026806988 143372046 122287562 924197623 1028296225 196074459 529145602 103397475 434883999 319766592 1008057853 263728160 876090442 883476984 376169279 784247524 1071406697 587063250 488608641 119090000 659950591 697090180 317371143 513671517 343566989 359017168 1063514042 677974724 718695400 962295501 942961880 857823993 422854410 242469135 950953065 235411461 893167282 192331776 125354059 411271306 734434889 161243229 956234009 582487464 820133131 198418468 337566997 1030639828 549335882 93077405 221905594 585187966 21122673 1015345356 56550383 962182418 459821743 521435917 548872092 603733361 882562083 825162377 788259180 741953695 418479853 883448364 447320192 822069999 272926590 621214913 595843223 364492425 113553010 115530372 36320688 198831657 512389285 99332473 1049192417 677344966 405449745 787311393 782350353 323056695 567773101 309507297 159431624 154520594 396854093 888810264 1034171579 82305788 322583741 512965231 207506394 682623297 970933310 767182623 20937891 74833128 219315272 412389467 261984935 242702782 414056959 70372908 189403094 208127206 307465784 915837979 616345317 813543211 90284797 289513095 393432902 1058289597 563601766 63573907 30098648 485582972 760013600 961981845 395229038 223968937 51135012 553088450 116557073 115942279 29930929 953439683 596126276 790798817 152691801 957162413 1026594470 360386272 279034842 532279136 639759003 703507866 924501319 220966765 516534443 818887729 379271256 167033688 208348615 270814427 1056415477 1014029964 103962748 1054045371 456431826 870135902 459943372 134017756 808749938 669606961 216608911 303864061 946255731 479461341 607812459 453283195 1051165057 663319440 52069886 312021864 962112224 760323398 136963686 417027878 977794029 799573605 957260551 836886189 901038174 879699039 321916004 517933063 114061624 939467131 414893909 284699314 302417314 867197441 865781023 1001202311 576045727 566975807 675080515 313659840 492206345 627079800 328428152 566262846 418303805 1001132806 456724824 859187500 553285160 261175450 969745515 458370271 296918529 528217290 929228220 793514905 212297571 955489911 1065922663 18419005 19258979 494558656 890164472 428682148 866384339 503149370 728993135 820506353 549844772 349519689 511145981 863847229 34323128 439416942 730322055 426972395 629534493 956845745 331134484 984063983 229840046 761618286 739927412 710603344 175698861 686960967 437389154 745146322 152890194 1026775892 269039257 661595236 502032109 845477432 182982567 659895857 710323282 1054480148 705495482 622941291 283571964 826810133 631557756 756665513 798071502 703419568 967946066 388492037 77522911 457246510 110285553 919503520 968983483 636687578 24344833 207400648 417630216 88581063 598985097 371987949 127311243 422480889 367544482 674470988 839592506 160936768 481893060 290621363 649310942 557697837 65252307 11532151 419556180 979462935 983135877 926585198 403300303 1049581537 191953393 704843213 244141552 882286154 293108083 482163440 594899052 3235427 447166429 430113086 558206288 380030350 298817258 638241216 482773062 757893064 1049548090 944439109 599210214 732141725 311915286 226350924 899761296 634052325 672722356 615580464 1072053484 208683421 868599519 431818620 242907090 462130060 933565745 660532172 951746945 220486704 796528153 824456652 333481890 919427804 216232198 32994780 164945790 949090104 821556781 317379721 908151815 1020567514 94361326 164088680 645273162 21533051 753677821 1024566966 246916533 1001243278 331880141 642968539 711108574 172531109 1050888842 939852712 1018025570 678556187 787356503 178097358 156810979 218445273 190831648 921601957 922766806 832029923 655493232 526790466 565384460 49104553 574468699 922717005 639783626 937175035 163903650 916118581 599730591 331210018 229364537 725160283 554934159 786012535 693514917 139592115 685119252 1025567907 30345800 553073549 540468701 221830199 260393907 112668365 822656645 45558374 396744330 669369814 286860461 463263437 877881836 2944760 238450925 654464856 243001042 354711500 710169302 838813717 60822318 295996400 799284877 894270408 575030054 633534382 629325755 628508745 150977581 850068029 158611307 188740404 280467078 216779352 473724347 925922822 531031262 1017603746 205060727 995639311 286798233 275752446 568897056 86055976 761291045 946771804 293441520 810748820 1047463139 12690335 651872880 592320232 544518280 137760961 63568158 556941692 18185860 247573347 90934111 737693873 616041301 440923810 945147373 112307438 493598330 697525942 332545822 85028405 606245804 408310616 997415543 31109353 660683619 277003604 604745615 242687021 421770118 148838916 927487649 770672224 65732593 1058197444 517048500 1069494782 96152751 30741548 980222666 273233983 577677438 636741494 484341213 78618117 60157223 19511782 708331537 821776759 982919070 912824975 1045027990 367784207 861040011 192434785 675481772 223924005 947584449 1060226415 670781608 94743053 748393111 1042616253 179466845 1051090890 666207280 1022226756 467856844 791848123 723799394 274166029 291528007 26508735 230349393 872872227 1067897901 584401028 914076990 540212040 258383246 774457038 415835327 109688125 429537894 860379193 1026538047 771814785 338540168 1051633152 1046848322 870040933 568339651 119459745 1029542051 651027591 442062327 846845206 23646471 138772486 368551889 537522454 1003070834 825272038 590726299 127608290 6527019 154443881 616408175 82790845 185815124 181374801 798318646 201154788 53646321 768352886 776282151 43551195 115983049 70050111 803748125 635140398 99494769 17034915 213307569 585507305 134955819 896381806 827809381 129340413 440238863 189878774 155447340 648473856 772702092 839543041 947251681 704216361 1004035758 260475257 203750936 220086606 389531655 854160918 16334415 980778333 933211307 101085349 1034338375 387877477 388936354 759806315 648584028 483927369 513079990 116895103 974462966 725501067 584016476 177779187 148891338 219231130 666671561 494595261 446229674 873355060 952170611 447663599 380288193 299215677 360134786 275761950 1006374947 876042709 1035550191 392908233 1041460240 353012700 233794863 155005993 637082333 493946709 1073453097 283177002 306271003 555477521 130355869 796398297 697608856 485940600 628435643 774033370 81147722 306646679 234685254 303632902 86411863 353558854 286005261 616216774 997678941 407434486 385350082 316657699 594239746 744092335 1032156536 716985476 616578637 377323967 680005216 80286715 385797250 663439386 179231618 260960882 206292171 989955083 650315796 52234775 858234756 212478870 408829085 900544909 104141714 924218064 1037372456 120377239 204069057 638931598 21391213 87506949 128406686 986474238 792243477 126136385 393149382 394034431 182100470 8334225 253288867 820417337 1028712114 955186275 323474574 570139812 53891148 462303035 1058093377 653091987 870771828 484060375 72914429 3439934 1057249792 762808354 986247795 61265006 812024032 484131135 866788162 248823211 962443551 342879630 129218687 1044881179 117316965 582191980 599905891 297646087 480395325 162627351 474348828 115017749 761024739 161490664 1000609967 1047933210 955026767 319849996 309458839 983026812 748852922 910116193 666130365 984775850 466360736 755363628 811885512 713167173 287756987 425656770 516346056 695935701 61754638 26585781 56921827 725311671 236185279 132302397 1066789085 339683056 586759521 982871621 476384471 152927010 85744619 130054743 712660929 949088934 344044419 559707588 485723143 920774091 803263097 267096080 274633022 290011807 971384437 501865458 365418474 833251274 488458607 373382256 579627488 606683140 906096033 378704711 767527678 1002042267 887445534 1009155556 510319817 431641286 10824125 696683281 712648729 38619135 143125120 684318782 638944046 29041167 322953441 156040049 243330565 679016853 120283771 476332243 383015099 385305198 947561598 772230386 900283901 56616998 17428042 637670677 629946735 628581535 310352992 1041190281 489734908 312262998 580089312 128891244 857131481 321893813 289090158 408949415 153699780 285969930 79187896 628940949 632816238 54153908 409040116 346901826 992747067 799964957 744345642 887251533 829568871 259376242 190043730 578716587 378450465 984254147 543905723 523979549 1056149202 174891731 558222005 188575778 38209312 119142734 880832950 911740662 905532891 129948270 986453747 483035016 682959455 647537511 521884112 1063989545 558961855 71367126 28176080 118716242 1021859902 335722618 412010704 932518881 918424746 262531694 775387614 309095390 339355687 663521845 586614348 436379264 838461721 47543999 390898202 938481598 159215414 913612542 728735698 190428629 1038422774 928624578 748403393 1049931750 999670227 930124628 924534697 82907067 630707259 955621376 1037840755 198442530 769261470 401501310 590542751 365510792 1024949437 928597902 766513695 680313918 658377954 434868778 198837911 893902331 766509420 1016802950 153312512 975687020 705641221 426302860 550846438 23576971 784262193 643452051 1028110158 1054898909 665988247 1037953191 61092420 45791228 688510891 800379591 979393154 577190104 519096310 56804524 363675986 790595977 1058607951 627176992 218607964 654480323 574519641 878357670 794899381 654882791 231118485 45691537 282008300 740974555 932303967 912445190 488231726 217626583 277014765 32018698 454452956 1009954365 304505056 578242740 861274511 244933488 739047907 702156700 736625553 366230564 792583248 675417007 369893650 1003008599 1069640594 975070460 802667639 566198151 645490682 89223216 964484009 1062355251 158256153 639649078 863715652 1057202524 151135861 148247651 243987696 260288261 640020069 1001643496 217631529 671992270 673110630 346010770 1052622436 108325332 346919451 952402043 307355103 567709601 412872800 753679307 138627608 201383223 340679202 447538231 276379059 261411151 468141997 867010118 672329578 358967558 640407385 474394397 377926759 571702013 454076404 1062327806 870559046 636267969 625285463 717270799 332211251 1061732179 991589719 671509471 102902515 402232040 788060916 828196335 516240486 46136286 33854806 709645012 603341847 922745247 965941645 547591843 937785330 453304445 903080242 325064839 374055499 121612002 101625308 292071225 33089033 504384217 349688496 1064721329 441901528 311162437 178955630 215953229 615507959 879270116 360453469 461095272 160045997 418564257 560609799 643312273 58301930 96922769 785657042 585920398 459779791 122131484 631483750 962498115 1014114930 60370022 618162180 662099582 889229207 524749881 195962183 373038007 215041024 1005473835 354658670 213088533 282724891 144558251 31759123 259495221 732555563 506223017 354689130 910619407 434084986 385604911 689216667 808171076 486825654 181465529 199634885 85622207 116001383 46769798 608876397 787214150 671260781 529501288 232970540 248861700 732549078 1014386835 1033301883 1010710734 545856662 432538368 818113797 925695295 691381479 458716074 356621819 718493274 874350367 777775040 806104794 985926275 990526451 56461409 118503782 606695575 256629001 1052835268 34894846 242860506 812873901 536980207 427021836 206967479 949578072 816538783 82231189 1042067819 97077653 52074555 373998538 499018993 129152601 279969047 208332193 17960161 650637173 568428645 447507629 863026071 906998841 627540735 566572309 499768241 140990243 237297256 48719234 1032399160 961088956 173885939 412549808 676625872 135284836 32754086 307636377 947035765 913925970 604604400 915781693 23914576 744157560 501964956 94427357 974256451 921830633 488341105 463348349 399874823 533858014 808550810 820495814 529041728 1005406648 11572513 188118377 170172476 72765757 159134832 423445166 228479981 615628447 27330963 543779712 712346559 565174584 758050598 647319579 269684221 775330987 356712603 379315698 414269248 80749342 361526268 472935830 465900476 199571732 967507321 513273095 43176459 256343870 1035912596 271389429 544661737 984042868 957400192 368862737 732034413 434760758 699220310 845974826 486002609 237738338 35976055 392684888 624944696 913391892 724944483 237097020 493663110 415503154 655745246 271266324 910948265 1031857256 840671557 347845920 903124109 274824987 291894163 931700419 932541336 16204119 151025577 604857611 334509591 995042947 620513637 928067380 978948615 172300177 260993814 749303789 424375066 241866108 292169399 379390395 477623669 378285378 657392722 731375326 42461193 499651355 791860653 437473392 161305174 333441128 750934965 128789122 770723660 161733452 192728885 261915855 900728047 885979391 362487967 886773850 825224165 5994906 382103066 957928301 254729769 54747948 106486571 187515406 830141908 153908064 849503047 757871964 176210857 509086988 372998181 780346187 1049373099 985041767 470968276 1009760333 300167958 476936335 279688068 88642943 215503463 536850623 925702107 21496191 894056134 645023236 553760432 1064658570 250188530 369080818 548003119 998416288 441627547 894413679 326363912 664311965 1060841821 674654216 22571331 435627575 362862994 691446144 713779874 118994126 282997544 446450454 93643290 793499100 743296141 496135123 469001190 1010265507 605114730 682317672 34847384 941264227 164701638 1014353903 288655407 603228880 976476806 162831519 422202755 541360830 255288475 437745365 280774240 60826007 3899897 152124376 735207341 547178141 441921905 304850750 431336269 148309093 574910392 645576398 7005756 319169680 468371822 367099821 177525624 45768801 642817481 164738223 782169658 785864455 171180691 797880522 644109354 1011268535 939705983 86236529 189956970 208298179 722843972 1062847194 469594885 1047137644 909717270 331782264 433739538 279831 574966496 1055392558 199003820 948453192 491025868 904883441 640760663 496930750 470367978 719031733 358235219 540011283 944314895 573497526 621948542 585278036 909518968 848569927 430497606 525017204 503966956 369269008 209120735 295384852 164142455 511693616 574103499 361823508 612832299 789292780 134531704 595592914 562014541 912516725 743384082 321955226 528843290 374846832 129075313 320456907 478618663 34110303 377217743 300842103 315171533 39717545 602974374 301225975 535183788 513559873 681392208 901491784 388710759 887207962 207931596 379500585 404699374 539325605 574058725 101077205 584879238 939421175 794485951 504885681 364460052 646899582 433687369 923610395 307077721 981168733 365101937 8132244 3688964 83262385 990134333 952781572 117454300 915756578 747657760 163886306 861953301 919670916 75805871 778545185 457988488 155629330 443595109 255646242 114406198 125287326 26605842 130408260 928538756 654644018 999701914 109871101 544581008 481118500 873011534 474765563 905722270 276935350 399204848 16945290 1042532520 432511785 168852743 182698632 645913661 36147973 478842617 27718038 393845409 565301124 834978443 527976124 934963209 385011351 760234700 139213126 663346692 63101465 968980648 297475563 506990756 404208891 712399854 124674480 696251312 384856498 358348486 646421666 981956842 874479837 53627532 122743448 200470865 931714675 398934792 312401604 818736549 843621637 533099432 607530494 435808181 601073193 550971092 214300363 501356569 346035078 38198610 209210494 666833488 439630317 186128006 97070221 256807035 233580895 394268024 278736685 43003144 619342212 338831595 34125738 495700610 503188637 280690874 507226683 883716046 804726539 11625126 870076606 675788777 431642231 1051399985 883482412 607629315 679338532 365314592 1022407760 49163125 352652370 924014448 470381234 609310880 148758412 564864101 646958584 813879597 102678658 483427574 682583427 341193215 9327950 334983009 254711237 387786061 874167518 759590245 763526015 35104616 101365661 761318009 399102611 276747629 963026780 935543216 883613400 535697994 6283912 229113306 294132339 649729060 94144626 180907348 684236477 692542705 779123713 491415256 309291799 308306249 877732016 868983820 929451016 68716372 838523448 806411430 515583325 492905143 938326838 244121595 275309341 498735379 983896582 198389975 887887012 921878792 82908049 882869308 713617333 609175338 842762735 389984665 940430760 273154084 612353556 643458776 821094724 903677234 793707646 519833556 182663161 115368342 489127744 899503309 230912383 1055557689 842231290 631737944 585939974 963549332 651509396 549498252 559786595 938576774 10173010 304367475 635928739 487638336 461555801 288923275 127641496 946550865 56537087 235074764 692537649 1024839572 334023411 855459498 861671701 735661834 785043585 484621305 1033746527 877341367 252313398 577474062 534728594 689911787 510576865 867119149 994229175 324370228 665920606 55631199 471582471 293152570 769371513 1058070289 675048836 270777630 947182435 379814525 556909194 616332993 39241783 899520433 659155015 12522632 580133723 301884988 1071382316 919787950 986558110 824029214 640864096 320247820 807421447 719651631 178579957 740545981 703160163 58152052 885064859 289760206 103042998 1035992836 608514253 276316588 66402725 1044202250 929984942 824776187 817247274 184669022 158382018 948258611 896018393 178287400 242186634 99005829 761645622 368751622 392040376 635250674 1054807946 802796254 836374576 259566367 90086468 20451651 789279106 22811278 393038901 526576054 320686175 117296127 784929593 1006545314 3108937 1000267253 478181721 311098271 230361965 335286577 324314678 866239492 172200708 472995971 60915334 327013428 363403538 200242667 56631921 862375959 756799585 645666672 258133285 319310844 307777668 504014440 470488462 358258100 1011536808 680638224 446854172 301428230 857122988 801747329 1045271525 146619013 325749337 82991921 756494673 702173998 20213685 565166856 297250567 116617133 177449116 675877449 309782267 1000260055 193287385 65745893 93315081 996383754 11541927 747629591 462457793 550873421 797412756 1067682729 362161619 228514625 405241135 656031508 15681570 332670384 490536180 901522419 303984365 30527994 709446464 228224488 209567084 415403071 614108318 45525307 3806082 462426906 343547101 262721380 745891387 603551987 263963843 65612006 807788381 705365227 631346004 415752515 127375932 501865946 157322526 1042465761 697574260 247732604 136786077 927215664 983427126 453553678 738518057 373206359 41624670 853899695 808051221 807851218 284454905 281483996 714409708 378162777 284348608 414972 573381526 412072154 1024169548 1043566145 200785064 446548231 515634279 928105056 185415080 155267823 276555233 94882372 1010739444 260474111 439641907 6141094 11339883 719533414 380291526 841758658 70627561 642574573 648957381 250956546 453111637 680676039 756204530 396735932 110636920 773186466 417690263 634254581 279728201 813005798 310337270 491119632 794348537 364180001 400903669 91390260 797126473 295407122 814296853 253514193 806132389 157693128 1033056786 439971890 147155237 400715176 309350036 660221255 189577962 748319658 561591919 1058366229 807400549 908391335 85161665 250466266 621781424 697030312 922209469 178370424 980445228 476687435 1024458756 962724507 622271229 855219401 195774758 632793675 511520429 638250468 700987622 1037104872 448702029 868031008 1066119843 849185165 1023017773 400158261 63261215 143851651 112395709 1070346910 391576222 364139590 61246435 1001790700 102657636 381867987 370993758 470168409 975059928 959972684 847736157 895831738 19766423 351460661 743859114 162153073 1023026483 799741420 288873550 483016708 15544540 411319817 702321605 614248347 243130553 96374219 670256054 267100114 861684683 512425860 54923103 236687617 906158392 1000419589 270407054 380322907 1222748 270388968 1041218664 383915357 37778963 34395311 591402972 601164718 591324145 261716024 652497536 910247220 938288899 419668754 670012433 354109397 314315453 254297752 4650722 524761411 1003457809 261753071 475376096 430736179 380043202 1009743280 964395013 931015269 129180744 1064125454 175087976 431459055 618686509 37884488 426003224 1021559882 959342209 846546158 260290043 7558494 1048279538 521381721 10546797 159994561 307791019 131969169 908701809 707859781 207894875 310994613 685759791 562514760 13513958 806568967 1060094992 409820846 845527865 861367552 930698683 801638819 343162459 613679733 160978794 404278619 429526314 1017327298 921440978 577281548 1070156499 298060528 347435010 633222261 554352398 52384927 525492183 977134235 608498306 29387307 592758072 761805488 235678242 449422248 567762458 964750036 1012688584 1068488202 77975128 854748300 1005495583 493752638 925576271 5848102 175959979 355647379 168172063 790458147 1035918413 865870384 48682554 279226555 54085285 1033404519 786775453 735606324 492165719 862034345 107350871 439122324 443887938 342789897 581082447 1057964620 146639015 27332744 603969580 702973733 751770830 510932863 439482932 993333417 670229642 11163542 995475670 299122586 1020346515 1016105302 468403079 5944411 1026366317 952681917 810654476 383425593 458786062 962035892 433091557 734523242 482320109 902884546 414764679 474352387 421112420 45980389 260808510 407071730 743934398 329988393 690855852 623470731 914927739 976795527 775366131 358697418 826703602 295086722 619318009 170127173 734394846 60913707 389484466 450924445 503271123 623954398 473198758 620704981 353287675 625688230 1009027350 870777260 756104766 61084154 484625692 352858013 908702793 701824875 853878344 68021079 528163974 390032606 210080396 799462836 35547189 586278471 855486693 55164349 374815453 1042092603 863121615 688832730 667301335 350637002 417231317 630749613 654948283 767771093 315107333 909115002 746642191 925567220 544922866 554301200 971393736 205540922 366653525 340397071 81373959 331151338 831150377 758470489 187248553 1013603855 783186227 545367033 745800826 657027179 193957514 451370946 447252628 692943869 335615999 125793096 287101963 287656013 988428743 434485022 695066833 687452122 165506656 909806596 501539093 41907170 1068163640 79426345 528408893 776415720 1037538939 229266378 811480209 407494438 242961340 583251479 714706740 437278204 48117437 344582064 1067056308 504953294 833386577 1008319179 673788442 289499613 932213035 795739432 642702811 150635874 852953183 307551647 790728602 542611248 454945997 841748238 386323574 156580796 1073671878 947166452 833935629 935135135 1038182111 932546269 342478219 950622876 185174575 858045617 675487573 421064754 820345002 454129280 843127064 289479137 372125694 521950368 1054146031 282323034 100687422 672752929 549466144 355938740 356656945 981435405 496479010 520381807 295174494 535170995 524582316 903110763 42524871 578166085 338232435 432509714 876126211 384100661 903613665 65991056 354173212 420279802 927914069 143990021 682632870 908299573 430980948 964369438 936138064 280118581 633810982 36244233 229450241 276693679 1059226757 719634575 819687610 587249999 611302884 602689001 566048281 1022282257 1051693668 373567072 500941648 788744532 197264018 873516449 64351445 505102461 11121102 858673943 705787193 685976960 1072975287 581332203 842242184 902631174 21433899 858215739 143579898 236484618 492793822 98546951 1071895183 800810103 365933454 1066411930 408902117 349624788 63437725 815380797 57778341 371916763 311997344 494828249 24296425 106664928 220491196 193678484 816354606 361990555 965652706 157727868 152559052 1049156734 719749089 52038194 774525826 150218919 1069359233 1047318403 678153042 562271690 349534622 478697476 212271861 450742259 625598729 997140029 247904382 544421965 202264598 464185028 751006535 1043350777 883789423 339302293 825627593 236122521 98425524 838738460 270041393 1021441127 1049847579 1054511345 979618254 809063569 257014614 487529601 354483915 558913391 1043688600 828550525 499665098 398242824 425109497 7677003 790068336 210770458 415852265 276828368 975103355 1008372510 955115607 305157495 670907345 765441896 607645371 1023626170 117842346 327180469 662728595 810930317 529398216 535664737 1067242648 820693834 994514152 771507206 508806701 652279933 213753768 696410246 79224369 91545003 422803416 225373215 892168736 318001322 769197266 627009004 901633274 924539820 155120384 810036974 68714204 58993126 300276252 300151721 385759242 155101097 783877453 845346266 162252167 76699515 732850338 207700735 245154345 48442751 64821618 999570730 406760462 2881942 384164581 905117514 134300839 305227287 789541236 463751720 537851999 435924928 213263822 780814120 718813807 879440843 476800592 51524162 86434629 66136007 49278421 810823165 695485262 151518225 572147075 770895331 1056469297 271181253 257416032 1019564065 375475489 178892336 475220835 762944111 341899482 269963452 1003272308 295737649 480604433 669006741 5737519 364913213 867011276 97115151 820525245 101066045 904101566 628615796 538789229 1022977491 804973747 570404787 529220047 853188366 433779424 999071739 383651074 438831601 213472422 869453857 26251089 361154653 263355792 156442323 174167589 53110823 426805023 986303142 497240450 874159237 334305658 932963887 250352585 1066486168 518470697 532580729 848799034 493263144 371042674 246346437 8935064 10606526 22846216 150256866 776638567 159696999 678916929 893389724 807670889 535085136 870676752 661138130 895780313 4826714 150312354 628621647 918208098 1025259843 463531892 462750771 864081725 1070225514 152742124 310041264 315952952 246179635 80088770 756669555 377230858 1017947158 660991274 298402236 1073675783 408148433 272850832 861398580 365920693 310145331 910724478 138995762 740108693 60060886 142360474 987530808 842715934 328350358 187224843 753836232 161368056 562123072 732759487 12747639 11936447 749747115 388462590 683210216 833331715 64943831 949359915 513129938 655684130 599809887 765350482 959403684 321350454 749218418 973653282 776138886 550431756 198254946 181972426 751418626 344489745 163717562 665377552 741565725 142145536 365777822 688823764 135644582 141430220 61088330 51139777 599077228 844565768 340440035 303401763 217219403 242748232 1041866300 21133016 282154258 172430868 26564567 383575880 374124227 243172074 570550130 752232812 806174950 652320473 643255146 868063952 821443641 885659859 1005040504 324285234 105459892 985530167 187499016 148200309 625801953 353391759 818175942 1049321390 331650378 835766230 143451647 113766445 747930367 296475677 395506429 581023266 212672911 161875244 278761840 320367648 267093235 367184165 764762081 1032856917 21258736 75843593 451032680 313146558 146086583 62514039 550345492 543931684 181205282 1053830062 957236525 446349649 787695683 755955786 479219724 1040408000 491927111 227800784 588398597 884786881 942413984 138681848 726561152 919414390 1036381397 224676320 951431818 25641602 664867485 16270929 987654894 629546623 1048374224 434324372 390433890 964257959 866264860 605612436 469140284 282645846 392520732 112035918 72415587 51342083 540157620 212797963 1007857212 528247118 956358950 885247560 748980142 422302995 840717648 780578953 28283074 363768270 927130335 854337099 878233502 33286488 115725311 623064369 162450315 217675863 903940457 272318317 327595826 489971090 424824167 559908333 869700600 389139784 209988853 767937197 546978093 427946238 841905744 209899370 781714363 950223194 1070476160 621255545 630170286 335096488 852571366 574696894 922797200 824534841 538719841 820136045 528228156 985080444 690453144 777466661 1055874345 131515256 327300251 635224835 949444756 418468693 263415156 1008179720 1073052402 949580715 880161166 507484354 432389133 683066628 949299592 462595438 96811320 1060607719 320320494 525355079 513952058 849545380 294039169 828077414 814883379 636263324 628757411 1009099182 508393891 436904968 749317317 968110088 113435343 530234096 108168864 870409027 25846715 887897013 344539641 400425214 116231411 865036061 994935642 970206232 132898334 319851024 591625345 640002220 1060971024 738249953 722002228 1066896959 841209305 759958971 303278594 527411591 499913580 929115129 1042592561 650854718 612105754 671610358 33915811 605814195 405496988 807221538 573231113 876881909 925569193 288620184 894599277 1052694260 305357775 937033059 174117846 125936451 370648169 138491457 32359385 26926952 837229017 180351900 640417861 501051137 769046 314486434 351954538 662210412 188322667 633848922 210841895 424853390 897946616 598428964 251050793 481606606 444979173 882383354 1050482647 707368993 920108807 719083028 584212122 1041445263 854917802 982502145 459836238 273572491 769082550 760606429 620338577 1044681861 190214366 1014566668 795094327 129263562 375879710 638559182 45746354 654018564 486832399 552693164 108646696 753975209 105177713 585401718 754476607 470294843 625952565 739271175 901759609 685045635 31761068 422227299 868584835 417582603 107796130 625475997 540035914 137435786 353871955 272025314 414575431 796064953 89109685 880080053 651097638 110280139 659768456 769064635 544660683 638101757 559945050 753108850 904335206 579143316 72735337 200619774 119523937 130222827 534195957 880220616 602821313 909569786 325975099 978711514 21572031 112925571 377989779 507747479 793668068 773911619 901530329 398101552 37405023 521935221 884872834 480637530 807800610 378520606 549258875 14146441 981673675 378624027 531839478 118000741 765087358 986388212 740126272 42229616 215002152 152971377 596726471 291309938 215743581 215455375 294938161 352106951 944246653 410318442 616934874 365791320 922958737 278129285 921157923 723070477 228915548 996865155 868326616 692773972 695186703 694657852 1047750415 740025828 281743008 147846613 674156135 612038197 498102208 709207996 892013672 659464679 696033004 283645765 518781573 820112515 283635663 522176024 46778008 27765628 120112216 451585262 344695934 317637776 562367106 510561030 864539425 668119076 132454435 226983943 703734159 520138280 98847672 749027048 862400515 735957745 604948562 887423143 976959235 57372027 171471973 580584558 361861630 547392534 737270496 418604625 19631059 486323457 337415891 325324395 950680244 1004574726 385367739 380987335 703751940 890190785 399670903 100568968 610501835 412325349 1009438633 300116674 1030886620 186711366 774720971 610946288 307841278 78816213 22332394 256458923 822797779 995835916 868980731 659053616 187917152 931967873 885128098 181208155 719431313 983848969 24409051 223097076 207053725 843602440 891645717 711063913 692085811 30938998 710530319 246112662 1039425106 221506311 71597351 1054334309 501245830 475491350 502272866 428722457 894676957 995380456 290011909 114741504 189173866 230071382 88119764 9592834 385786723 147458768 711948019 1056155360 945610393 437143001 63581677 686479895 96960414 805083616 860754721 522468889 91632336 540637341 558560632 952228096 627673796 49689427 660852165 759291120 814280446 104972530 1050905721 89752811 36082944 679260843 288099742 916833281 73378335 489968020 194567940 401889291 253330554 35061854 619035573 931293944 909831840 764968761 634895743 235579498 803318437 790496903 407057307 584671925 897821754 107856965 349869574 58507912 585244836 756582054 496131605 23776106 622040623 611427504 901419613 727609565 710968395 212644402 859899079 928618839 731698893 782045449 648751647 512260910 393159071 63817215 184253639 995209902 993600028 917101668 920402905 891954427 636759626 413697782 185400733 160379887 833413372 897850277 174031653 787335827 849076729 15600011 583905127 42936782 775100605 1056786017 249655506 869923656 542596824 485646595 76799161 361914310 543243008 910705423 28370161 152733738 8880425 898891078 937042452 225378684 780085120 8013355 229481411 715584886 921884636 868949918 851369875 191474048 998467969 435890683 791464564 1071919596 644669435 660901487 268269248 276428294 95027281 263183614 126866843 550458543 507886321 630109797 127025322 694752432 345850165 717360949 1057484429 844152499 578499191 375645325 914239567 152457861 338447079 825753614 640389020 936074428 405902060 781455024 115290238 954453584 510337544 171323926 650446662 188989017 809151967 942542509 195618536 301604944 766140234 352316510 999536877 74498918 204379919 1066659679 407912430 19614247 867247031 683558260 776405346 944129930 518787523 23832658 277360403 22367742 887137031 410059440 118468112 25038046 395178302 962466248 160240010 822935040 19454626 454794320 166745686 289913730 1005806387 93893469 374303708 388374177 788767247 616874994 630884718 75656367 890502789 687644719 101916398 662120023 784113335 222602255 553500058 480001687 627307282 503223501 605040243 377056715 599777513 1054865288 822996842 88752517 545872910 735716237 303526667 73587836 611453651 945260889 376908958 977139511 757255257 756735275 746281036 936249068 314260909 794294785 709721831 789538677 822967882 109800099 559549922 174939555 116876141 274041594 1071694704 133157045 636738990 955441175 578804589 216534082 172571456 638460210 264854868 702569380 348802541 275191153 137624311 234396744 235265292 136013062 50016048 790605689 1026819823 453225264 539373438 647554660 104249084 437327532 753495388 833852251 821012565 708247974 825882026 66686919 580599264 324398242 95133698 876051004 429686796 904051860 685256226 1032137507 113381153 149005125 333257843 767169057 547272422 447299193 362447992 257435791 325721752 819823947 675812395 407715853 454476746 620238687 109639387 428694207 83026712 95592053 672166295 232383718 66869084 966357148 994950180 553388554 819023999 317553428 450520537 607812275 186093942 61128769 1016789741 355756663 744687823 173947527 200866200 843132628 767370696 111982556 774524670 927226478 43996289 68644952 903657171 788221530 612488700 553805274 739662421 439275149 937862735 811132303 909715883 845835395 248494745 799165934 571507630 815224413 483682782 290682546 833243694 632322154 509088141 316165615 820598195 230378530 1026701787 463810798 703862449 287867660 694734185 623616464 399198901 345239629 656898036 862976139 1017988864 606559600 174263082 613269515 46665127 85558459 921773299 554583216 768442614 775152939 266449368 113975783 537387275 166762234 254634864 961989535 1019401148 1020345844 815277739 16387898 721474663 812318540 1017075106 1046469308 687571971 259525016 1003527104 417060419 786624426 782446437 10641005 954951615 425156955 860532384 141946239 867912616 806288082 1063293522 878829164 585645531 984505237 1026786701 625707097 1043811354 771491482 652083984 109466656 17252892 916414203 535567924 38961575 450717077 195864567 686844870 42212432 376357935 925690235 782861277 409364913 321589139 499725816 139168319 62277365 530140526 617593229 1070257158 47000514 513802968 509494071 457609884 468999418 199754191 1031400033 490540715 912433482 1046469338 960970395 958971840 8472785 176578049 322792283 102097724 825470628 388510072 123599101 1047917552 79961754 792044781 722562480 27454127 148113726 80079142 621512552 813890619 745315512 406022587 511717564 361173564 868523546 932665878 309272671 518718426 317543269 1039582150 399998225 369577466 77885225 858018134 964116448 22271873 795621373 576864461 234150166 415481691 793037403 926798000 34637418 4252227 181102351 619800660 527691953 901090593 908966287 447926835 362107766 599674545 588722378 782516303 430428965 269656071 476820043 302862318 482011213 890476662 720072784 778597010 956413995 904287848 764591803 856599811 627169321 264961029 751106475 775484275 90232470 402616080 466372665 94593498 25428347 605831626 823399232 192155774 557550498 338486482 741851294 774842376 768216768 530292746 31834731 710957688 740998480 141292459 585928477 628636299 593503119 842226048 11152635 547500022 961320530 490781756 318692346 963454479 234930539 767352041 468976000 812057812 446116752 722646754 711834881 1022090255 458500982 750432219 615266192 897890832 786882913 382139999 412263447 592181965 829862280 361847493 478605809 49773215 361088792 305212745 865283251 406537937 589653648 90347817 561196681 666094885 704937272 585943576 565639438 436124145 465655729 298878866 45049032 798808572 271622680 723850226 973094078 7283152 236726834 479210996 318376707 677228206 640126053 381568567 575350468 786620158 466288731 934157678 477078627 291528536 346788181 785363411 885439566 707044764 254296487 1002441982 1019484214 998518364 923073575 575193552 659001725 75388504 497797864 1026517173 648529903 426775287 470154478 462225811 303703470 161350568 777518442 861296378 1029704137 439426649 260554866 290201472 700818740 191375944 121664586 334471527 430368593 528750949 712698320 888072328 103699069 81596768 897796900 366379825 813831540 271141432 692537160 146249327 769563499 723612136 35893233 551328559 11285854 149169776 683525108 741817691 431155780 173643651 187786827 602123940 304878152 153378600 139074165 866582110 966732221 207771665 625498493 811473344 805270569 125666165 675789615 671184180 607410148 76407003 223089465 271823176 950252773 804396691 271402594 753387627 276984888 499544471 285276174 622100241 585684140 364229696 132175850 22021754 107534333 1028536523 1069315012 856178804 915616981 329965688 522483226 560013143 515570164 346410677 44822987 845196661 263777175 831261178 926141996 117059505 160255627 645566870 841702153 400267480 87281282 19723418 943405304 566568227 719070718 835408241 798149564 452744048 335695890 709299142 569218695 808967783 284422139 783655230 842768703 764553833 668993873 844168401 961588832 687606265 195592204 150194520 291044168 187183001 732024848 241628242 175602053 560706423 246655468 291289207 546860056 868929208 466438939 978414032 95893941 437299877 941564001 512601141 904842668 982414645 76493457 475129822 333964520 117942246 358875182 774607550 130568601 887812954 400219835 523511138 453456611 664507271 102557515 587410066 678119042 193978092 712981600 195902055 837778833 259522089 604613107 1037385454 70403500 1047505920 943531762 927656161 726269793 70242522 550387035 961381822 1068040793 496520849 52133392 787476223 162855635 825817123 905497448 340474042 1059271072 542180353 3017862 309187892 429525981 560527425 776574770 837344533 154725589 199881650 671631069 430941562 151963009 219957233 1002422567 933416265 545910005 971730841 522410279 745985565 301999958 277999777 116165256 20034913 586627130 859477510 1068361336 351014465 329194245 465539958 410200102 84727126 59703535 577433030 283543842 483052193 890294425 541609133 991029538 383746694 699676579 964205735 373104932 557078525 734886139 401657594 599623147 101364071 746151371 614522218 668020663 442675726 853065194 436059254 909960605 441099456 921068938 579508760 949358889 738977461 435577370 719508523 313225774 763337959 709270133 25254797 835367084 371147822 56504191 525674692 897858046 232988684 194965939 480898259 108520848 38659771 161724204 896502646 158608466 863054201 35589198 31370898 771860648 637700434 757266439 1051345594 1032850315 1068664656 288092074 215334124 725164392 556107395 941649868 877238175 319068398 719782793 703990710 578105412 942310279 71486109 524742532 9672913 704457454 348778445 690562051 987754855 514934946 949500493 505211351 657883202 681983430 405092284 859564614 599597997 497765336 687029285 449088539 346304905 809402022 404022865 831912190 1065526956 326155480 103082272 1057839530 523163436 341210832 919070778 1017573062 721900398 899594443 76502843 792612274 600174759 83468905 155948627 521464900 124681234 723227971 331205224 31335184 83723617 762951779 720579332 564307046 447381850 1030426812 134533328 91502310 788679438 1070059115 335641673 83890876 324551628 13272719 451676063 336428275 308249904 155459844 702099798 271871753 1011411349 54124275 640507283 578265882 310570920 1031351092 772255662 979093818 163607779 843494242 454551166 809706159 913647502 900556166 846441075 182650936 745799812 367765858 878868679 593871521 568585969 35971510 1010499676 54085744 578320553 374163963 435624520 623823119 456707122 330901931 1048501014 947113272 983618340 739792332 746684473 829847859 864749834 677413540 637798244 315532766 752219550 921503626 157938896 641669457 972425357 31768395 508401885 111790328 666667607 468686961 995843872 292519953 439714185 82130535 174819802 59142596 38684037 540381322 416682113 877115530 201523293 635500538 970044672 425422725 1043266344 103134026 980433990 633025368 384587782 618717375 872418140 173034654 207449530 817341847 7242726 37488069 145647024 252782167 245719672 900943875 408311965 865505779 728503072 835123601 457433831 819042572 119100441 529216065 159153950 29146530 169280133 713596977 247754977 794021711 81967554 40622534 149575866 307193604 858184744 575797480 863175458 93366396 641758909 557615315 222596631 57279735 115343253 661273030 635969832 313104377 212870314 424600488 711056788 454349802 291448042 837596208 865430032 183627222 150380596 613468457 797359037 213351257 925153973 732403179 83122121 308413157 131551170 97860578 577204028 525622423 704436742 174143973 1009913081 559151115 316776789 103642207 103757950 336459125 906742812 201580533 651996926 616303628 229589178 169335964 941417885 418023773 1032201506 76676752 843617597 348861611 939019974 25654076 438075865 863565513 145784178 671473926 460570191 94433291 107945567 700972990 363048344 995218107 587026756 987707713 907395674 151363683 730712138 1000188088 1024340177 771461355 275617047 53185693 418589687 537817301 918369176 1026173852 623064683 43752359 789854409 463670238 225536430 383456912 1031477215 366704827 305045845 1065004571 781253627 870825956 227199180 1050567834 712047380 43849465 712072716 953034846 384243809 69515614 127880374 78780404 133364553 321037159 86201698 1020609864 286727955 390209054 591976256 157255163 47981917 971306289 665089078 905320614 949416141 95903091 244334027 533695635 712558254 419169847 334648637 405751554 320614212 455737370 881017198 311281933 595674249 990195440 18571579 579190654 448029161 965422675 280061139 502345484 124447754 467204735 458946162 844530398 796059368 1000877930 262739110 106546647 791641061 876533060 938193962 575744387 83812547 840375465 78890271 590105419 326487327 230001220 1035924554 445920470 927300147 883798190 294225265 728623569 229812820 1048977527 748380265 22113481 1059273040 267024199 260210841 37967726 796097296 64673245 461672798 310289687 35424930 969619988 971936341 803717812 817120617 625439659 108233570 151453971 660794382 352377974 302354480 1064229068 666188241 977681877 351567327 881402834 492770911 244908960 252733934 1017742148 539867780 553025879 243351537 588440766 457049855 449412082 644445215 510210785 922561578 925793449 318074443 233850165 293769663 816218206 415151361 694473235 442642397 915047550 593879634 729725492 545552631 502302797 335047256 288616636 998849165 567097770 629217174 797628495 371053187 717929528 951191354 1029252975 662529052 147759937 706205620 136876489 102250550 976386943 118564205 705106578 251066909 301712396 6429608 975712739 970339444 294815497 219642748 523338614 962476058 8755503 641550829 755871591 925152593 277964595 151114402 1049572744 319281101 830160144 366067925 732097444 213377517 176652391 838043916 192959344 191658686 732259053 522975971 745870589 518830874 519052704 555445512 262042093 740056445 457463404 877696608 491401545 769549560 682577563 565425963 511071231 77572487 346192968 305512790 385888376 198815846 763207730 549098278 944813003 848406162 106535839 83945415 204342431 1008070906 511333543 150228046 370983343 467890956 135561795 424182774 921092407 346948589 577429377 276241814 850216691 478262152 738805800 877822367 186575079 477301855 920302659 736736716 503216696 367128277 67537534 645280591 640554734 1016499083 40718905 626112324 272909247 756089759 271526928 464742038 960711206 256751824 243879368 932964643 775901314 1070562483 491468745 757126321 888152916 112027851 886917111 1058025386 401456570 184775390 532806234 337970728 627317177 395897667 38096616 126869815 377345891 208167601 576532533 423968571 333844054 198352607 197485134 615514579 476711337 1055067816 1030921332 616025698 911385472 666656352 145403921 341557271 1048507009 915332161 645637903 668208997 240417045 488085981 38346757 728151458 943683581 1031016615 152299074 704706041 955514959 886210432 527816239 288002376 958431962 18405808 1002885863 877628500 372694564 932077655 564236245 379185905 342220546 218259235 1035543001 267989361 487510873 800425079 131999947 686378413 154031497 560066484 241016679 806774394 923287336 598234757 94951703 118219910 888756018 824792198 333096361 230679576 121247709 341561308 96145997 808731114 958289514 147830099 603124092 661962845 1050895429 970831953 507452732 234644206 792193523 883043467 803667206 1002962065 759328230 439879422 101605536 35840458 393027025 486638638 28577862 472397127 468839224 756168914 834744133 869492213 765838912 90705011 447168819 1053051662 736781702 212984959 219494344 261982878 791686813 572072177 577228065 1039965818 20169661 99949893 676705142 661906488 945844820 860909391 1068218290 952418005 244928253 434240547 79227596 212534496 535825226 1001560368 755988757 5017308 809486567 585370396 182517827 831405013 410940625 1006704387 653711866 854195464 463560575 895675592 494213851 518441173 132007452 943577079 636990296 805801277 161127101 968772457 883695889 1051555767 19239662 296277835 1028830334 161866151 1017667857 44028609 834520697 943968905 751028536 917700142 1064668972 535562560 842716389 829008651 637398550 1067259489 744217261 464606639 734188922 455924881 951873137 326752373 850964185 255647062 923128555 975137168 420260833 814352822 519665472 131428793 511322990 446117878 615107736 94314378 1015281804 527086759 849182192 285647817 930794276 765923859 76258627 863238016 343697910 861986307 791819874 213409477 682181035 629464672 802365108 179389289 1071231984 705966497 343715893 256632848 491782732 91301766 557376463 151588661 618794013 148854558 280052621 501573095 854209694 562470673 1566894 835240788 641417351 267795080 582794857 1029275506 901856323 41246351 832981551 130924459 878914129 622887497 733025283 267695384 478011890 59840867 190023007 895282408 150820650 1009843723 52671404 610633137 818085215 759572769 665074202 569695172 47804646 903126958 608149018 941025906 207268536 224180212 405584240 547526195 990889563 302007115 563905888 904661292 1018667624 117472333 662244070 870076005 181337404 467289055 339239223 124551023 274513255 744392778 59163593 866080146 412131060 981922368 398627936 439321442 137715432 1018099208 77413177 569756788 820665947 643466293 398218068 854406596 531951396 113110949 928644220 490264724 589599672 1008340928 869977643 777175284 958447962 218630593 331182077 497886946 414519708 822351896 755611171 1066990070 95756571 649790138 335827859 996871206 663516981 798774397 508897835 917517802 724874560 679890253 570389946 919083133 758259353 862333007 659782614 212409780 110418154 912572842 127778389 949378024 272577085 193700250 549017260 92083692 293205527 366447480 651847271 625560796 1007711122 297648336 644568554 934155173 266557343 458781653 469870546 397282696 67951182 688823090 732446239 112721124 65141261 478458883 512983740 523266890 170652001 875522201 669838002 1061587127 951995296 898798760 802646793 354292718 741551970 148083571 737447593 559221511 157535770 331021830 453082177 377487 68023556 597256129 787304758 633601198 94797155 849865647 717270713 616131851 842264501 785136756 242699891 1051205212 6003967 1067877373 913639357 990529409 416614705 729679105 349777491 167529459 693061250 963432369 645241549 959109981 87222953 116235190 843639127 878978392 725624203 821054284 589659558 903987205 948995436 791200770 291990909 658311829 274419 313207072 866489034 737867107 37921211 249158559 154372914 630767666 351653074 372283164 401189765 153205808 416579284 926227121 767095989 676352927 251919532 164041377 542883952 494882394 428515124 493571524 452132280 414279511 887070961 655046771 138325330 74588274 330986555 631292308 550379051 419903221 337569497 551064938 960117149 1072739115 979260516 848624385 981755783 958016792 172264626 337815687 30482418 405875230 562576420 271718000 419998135 1072029332 444644534 430847152 685373186 222170975 917051082 959418087 426200967 340173210 95627407 1029964751 350892891 453901543 450850095 144729335 788912711 100817053 88417321 902973225 159008874 425291343 456762283 918469135 681391403 80006054 919894139 685260677 43570834 430801085 711177037 64080441 704498874 697891418 1030292061 551835313 147175538 407867208 35991701 1000216074 843388616 550418122 590085988 765211046 841168205 658933705 784474226 405543082 730214296 27498092 780615138 1027526029 870835571 529908581 427073873 877053249 584265239 709565297 272609929 121587064 525373482 496236630 412207117 323201937 1071957992 485557919 226659331 42900213 552538556 323369467 907461572 54590812 893203064 395087321 977349011 429701823 382301810 628451523 239482407 442527679 858914830 111646160 625628714 199252417 360367979 356390615 203430471 1015744100 249796228 658613843 422685999 513674503 998299671 789581218 435676137 148500066 30803266 282626616 297466060 114736126 47290296 712430217 942456450 31160848 934380897 1069307513 132361630 202215900 562943126 639382601 534196713 1000099702 902229969 327355549 329434452 81655664 339575989 784849985 1072639242 813289322 492662356 406357264 177818991 383770856 948215306 636110509 508884273 429285887 603093594 622227616 415091242 797748973 928397246 100739873 844582387 402174047 440998366 832402211 317037341 371478190 509421015 414639823 881216372 848784072 677669021 948108513 11706543 899525431 47929345 71201377 822628695 816962493 954580945 977404517 574409761 452386309 390022801 951372791 658228792 1047879898 164155746 31545315 811058558 178974641 964256468 446128577 900841651 681586 108035112 57600676 863683656 702379267 966989983 709837429 977780872 71983085 1002801883 971940962 489591691 1020841701 472112719 112722259 197622820 831333739 439807169 368665602 373853163 839521912 425071603 317582907 969551198 410046469 354885553 35369029 256631547 663848765 367861405 493287858 115038390 89402417 175309017 454368141 729045067 4356152 189075759 853619983 797854133 702781040 163633705 803893570 799381514 625223986 974473211 560520514 290542733 401268739 480859002 489409252 215834179 617615757 178346295 871394453 554181253 79012843 430939735 52945284 757176521 680985897 870365466 1001803720 443377918 204041495 822262842 657188467 885835582 447017052 404870008 840217391 549677063 388915532 988428822 211837998 512050069 511051780 92068673 180909537 482535976 515562709 89314786 155303051 791556018 1052343857 660756187 849434236 155243948 775922572 1028751543 1042903123 907991466 293924002 776684744 729352198 752513877 962362205 1007874330 446136890 952723820 139689787 495712811 785085870 396471995 334975886 292433154 732992869 393190016 518935789 1060292937 56070825 400317255 477277615 656682035 245617733 303976756 273699280 967198013 983303958 198408535 1036351357 956788120 938909454 1031167212 777807682 653177246 750015697 612764474 677231406 608693936 5709634 851547778 59280495 28752974 763938957 114408606 323600344 64479575 894221332 36472446 255647561 925275007 156396098 254218642 791687428 461753158 895283705 481028859 809931350 1062109660 794589645 354390992 175320095 891174609 771247285 329088616 718755975 376289974 732088121 304594761 730231910 501110473 976667797 258242635 594906295 301552246 479087205 1012311846 847331114 280358674 241227979 792071216 186522934 614358472 171777174 695375564 550407574 586655566 584075854 950822259 168296629 477921442 837558984 865525189 1071753606 943960925 992551112 980947349 317182114 792458920 736895755 823895863 1004857071 640973435 1041971177 269621385 61045297 979044121 909261195 484461525 790793975 212254111 203207272 341223297 227182351 893559735 1070784417 795530806 515721121 603086596 1069439701 796673731 31207391 368418404 749035249 216427708 938826580 11579747 1071272178 675792550 107036728 964599926 763368760 114724174 656750038 946731500 488621572 593073801 830784597 609275362 976451770 936079152 784499621 132151137 1066803644 787579611 391758475 948221929 935758471 102924705 737404058 214283006 857976532 828575353 712006339 455419561 727068698 50108309 1022409695 398563376 283572817 707336480 897455618 1003520424 131594820 141737270 492788739 691810528 375224176 473016144 487734746 581977866 803274804 531570092 72278341 891100075 350742010 984580274 324378675 186382627 37908799 199435884 320716584 836734468 32890742 334863522 306096657 583360598 540155053 923828459 581644105 514205912 872834942 763051894 313625190 135327697 944360939 557962270 823396365 189387603 260925398 26890938 766663803 330777344 896742945 88343671 351485249 40203484 27610698 1018946542 440745386 186293293 416034461 849209103 863002860 387680021 31852248 724180096 432333646 150770466 978950181 422521752 899883465 3168434 807229120 398610491 258004480 1024683747 432238598 687715923 300208892 199755025 464380430 541246860 949349099 311764191 175296314 747150340 559886717 491551024 529046342 472871473 659848037 519760257 646280337 179102467 497610414 146844439 678396557 817406683 933377784 321228705 855545621 92275961 476973829 239640084 990802753 815859445 204317883 207108326 268689767 276263968 111021034 604369417 846517246 697210793 485108743 143794688 822429860 982856929 873326486 1048975101 292040101 857858100 788219234 437223104 865336932 751156006 754567858 917139509 816244851 698081258 264128058 730489209 445665302 745021148 10098045 1026649595 806528694 477933165 4465635 1055109921 950420330 1041850949 726337576 1059708880 575789570 619066516 727687947 744732097 715950841 611901689 532015173 241525033 789752989 870272408 906643031 446893906 679302178 301523131 993035459 346464786 176007856 501205048 356630022 443156684 168083069 385546877 490588178 481312306 251812153 623786960 58440386 17329068 523962880 214076477 588197402 92754219 810424533 59385244 1048873322 1008241463 751406829 648441854 168320994 836263652 290466863 983886524 151370886 368466400 458555560 1029266470 441734384 648923713 195694837 520002361 606413661 719432055 749216524 814001573 234086459 482357984 921794996 237634749 697338336 140074505 910673229 368919423 586126129 261528370 720106610 509554191 341901678 708357302 828597318 658661354 973127086 51195985 773896529 1007632395 939493596 1025452838 287073778 774311826 571867104 314470078 299677101 605086729 541296589 867641217 672414664 437012385 420532167 41004255 296610447 986204191 52903203 679874069 517119980 457688652 330328692 446933088 198417449 5435547 1042144034 793762317 199022179 869859406 886869457 1024357265 50912614 577523129 503780412 569539186 306440421 269744084 1068214099 73796808 169170630 556696550 421573851 201451637 235542028 306286684 925359232 450997577 755615036 792010765 629002475 1059622885 176888654 528548960 914902548 172090506 161711173 1052055964 459017113 607131280 1072330818 506289996 63347222 185069869 481926617 411430471 178669069 359901848 953177492 207242699 97764724 675519985 795982757 664151465 1054101972 625192974 829290648 1015308991 562068046 760741096 592614555 775436721 910625831 661987764 244648329 612873240 135114282 966748064 521518696 1030970553 330319966 70023117 190197907 563349393 565274573 95226090 858123678 649806499 747847137 714143514 708090097 643803718 844459420 949637837 692965818 711723042 534309017 296257803 587024134 583770744 864125850 652493149 737700009 930032550 945528847 954661121 526499167 555296286 709570769 187572483 93911485 1014978031 146404163 665309555 1021482994 940076464 47146390 305977530 28218749 1015105904 455725299 450727738 1017423652 817188929 968516283 267461276 111081314 543565126 188711698 873038089 689775025 266610282 778557552 725351756 417139680 367941416 402029331 243925943 285197959 889846874 902202990 421271566 251266826 212573934 174449676 8236628 1065369734 94319418 536173724 867112006 377442957 615197453 996420958 75200935 185665398 944499455 1033385286 449712051 311522392 208166621 45019531 4398460 1073288367 1065174166 738408465 155113645 199776795 220590221 305495314 703656697 66563390 158674629 492533724 824398714 876340765 229854122 770005216 346526173 178961730 567813105 1049860297 182319675 91346415 458471418 239384754 988970640 974736931 520834037 768345996 1032691082 711390626 158559805 938943882 503067049 480107224 639692792 1024748420 632188787 9391476 497178924 107377332 561058040 1027800667 58088087 392698543 4771947 517665292 448537179 1050146253 731225689 183966292 879866955 431199800 649608980 351294102 133909300 213550111 318037942 524166837 785845162 558604156 641552774 948394286 998613756 72521101 559126793 594677914 633211123 813089621 300446310 213260391 1011415647 509197496 977340301 715309515 1055225052 845517492 387488931 216103595 803574526 815904851 1057136999 235472851 17806837 454934680 146847512 308204603 969234388 1028568958 647314991 341891337 585313168 828734266 395090379 671819791 1015108174 988566220 400202985 203652158 797296315 588209208 146053671 889620560 928213030 9112049 302879955 783709799 88454318 744190614 350432322 30696780 688949090 813084671 635553741 479751318 474105914 487361025 465562750 704332403 687340480 994435167 104735670 929159073 383330988 594844809 808193376 1005843578 934595819 535332458 899286952 315554890 254539612 337396904 389478605 223088021 1004332744 701416151 581348829 132736184 721650738 54358631 853177293 471590357 825019219 890235123 170198025 448308738 527622413 35461096 236535047 347376028 1035448455 1027084825 1054268490 262271063 8011146 219489382 38629859 99029873 180599692 801211229 1019995000 899880840 324073582 160677322 927731409 280659720 351513740 971126699 249702563 49702040 36065392 509480516 882049262 881952992 930154150 139089974 167256476 932419 413973369 368791586 850037585 640854011 313208992 899795884 670785858 856667705 389194494 434232924 848928446 465510293 611518165 340388805 317676655 238855860 718638727 602625674 41035933 486869978 725103907 294551728 1024800744 427043304 35399708 1042042684 927536821 964897668 661133057 324145521 944589577 689269011 360811217 669997317 470358948 1001677561 698348006 307328063 1023396113 546164603 493485490 841765513 126435779 514000488 524460440 221939799 669956686 14715340 636287249 726278080 39397353 219883678 404619736 342977624 18316157 438236935 849276537 582974349 376048389 468426352 226621911 256909700 438248371 702647099 242176531 564216444 153835702 733470685 55095315 987113111 1033707294 913284210 122519320 410626069 485502906 1065127126 853187110 1054751645 154148547 659999909 538490904 200092779 283477157 628103986 211528852 252070267 276509422 87766274 507283303 768998394 785307485 581812638 710854061 555401342 360337302 584786325 59158840 656518094 762575306 432001614 530170615 512694915 416912226 123554680 932671394 858029922 537535312 366983942 335903940 961469374 269018241 853499467 759931383 490634576 612138536 170659877 52912446 627580705 154202883 956658058 969175557 791418879 1042092020 653321196 946120187 787769444 388068178 980047124 1026583863 82997638 1020295014 143340147 1010321631 703445890 612302728 216752843 779939042 567024398 885355042 853757534 830509684 183758283 8171651 625830892 585121560 492668027 795592428 320107794 408031941 157013873 647116317 956752949 618947880 1061123902 605112551 449563653 575856812 1030653175 1050125689 930167092 1040231789 883067998 927029377 219485777 212652433 835022632 474606812 950859210 667496730 60183880 283468161 306809359 432294139 735178735 254282318 292800888 356629722 660478135 121223832 367783392 779254397 616503374 339309224 453211028 466953607 229564336 357565499 264072427 81064261 682783624 409908963 636365026 824393799 661551984 212897675 932798188 742101400 438656326 219415671 1025990194 158530868 692570849 746362059 806120465 89517448 147092061 466829525 840472585 764021609 39595207 846425842 227670379 628142858 161771236 263722468 511801440 484984268 765870285 100530733 1025087034 403001161 260204883 153538243 412180381 728195123 676906761 7746563 758341891 619382376 847829228 941342948 940329885 262834194 138203286 670935110 146055344 1066880724 9068800 969637829 303831127 73542701 957742072 284366392 364820023 672158311 144198425 75998358 445252807 813265039 314394583 438497122 539073154 613499269 351660463 917880840 528697593 661766648 950093274 304601035 67715144 399939049 102170910 650472361 961686455 876886639 770973994 709011612 430676764 924304620 256273310 960119235 551220737 800632610 517461291 649853476 410901441 522741099 613606443 698589512 765446357 385858395 589529082 128666613 371972770 889887676 999553951 961095724 618648353 616302574 345747011 280041055 963070597 464830492 71344548 1023313971 598336103 686255637 80978267 446795631 675199665 749730640 351457877 966912539 460986386 317625472 452669528 620602253 977756492 375745943 545469083 504449986 523027889 184690452 457728650 699649105 960757807 645884969 75101482 284017865 556458868 961446349 339494495 654550462 78989398 265796971 137301656 948222084 1072447064 753354624 19141986 933449489 32559121 274688555 761681319 911997785 456621929 1010152369 220758335 7097036 285849222 323330254 561789354 1052331426 979082095 855109878 177741083 542110084 335705154 797632694 263206258 602425483 425615640 830873805 650068891 816857845 580405744 392891849 79476521 1037580545 19800628 998976351 380509871 620822311 751342829 912902620 717936626 1044890964 671287038 950638301 552107046 376881865 388781197 60410344 247643993 114447151 191295170 79638236 178566215 101375042 968839200 349250656 578772924 732799472 117070769 433116229 1020227023 329591080 463530075 327575961 929255543 73269296 1067000082 170534050 522427024 758722544 896011514 465170581 387090993 323933195 493291848 835119050 1035786483 659655515 254179385 955267616 472003560 102826806 926954565 887977824 624298809 833868602 740201720 140885022 869758109 854745939 525163624 940226896 228575326 75889411 894743587 1009986690 435474320 1036794677 809592874 6541576 736022689 163929200 509729360 16450518 211379445 818008721 849630072 377615694 1048214491 443661754 339451924 258209563 85758229 338070717 446161047 530385672 805102647 965400284 992661245 603244187 797011252 182698540 423311586 252394665 229953476 702075533 811468303 535348280 411499119 586607715 448687331 328114106 779295621 116094413 930364246 132991420 166756813 430087235 642867556 1012763569 1053591890 951011744 494467548 581342631 129686942 114075291 749686113 62200061 474500307 279464688 557279182 22121079 801336401 208002414 410493348 138443216 940540920 660059399 375487374 99763482 72636165 801403006 476653603 978919829 1029526275 1047438279 766299661 763973169 130063328 1009498410 992459609 927813060 869344086 1051482201 1017536962 877765920 1014453106 50802400 516205135 895393999 920567169 77439554 359126929 201952622 754177789 500288879 810587444 743050189 108303357 372489565 371663502 230880946 576791623 865793483 301226780 829969918 644376070 778495231 369299725 419747585 42276725 994678118 3068665 942542959 233291662 407733995 767653577 116992030 654031561 459324975 303068958 820073810 401278360 337076299 560754026 241245323 488521703 528890660 144676668 282194287 702968316 428469140 641783221 56258157 1053983360 931503405 140758091 1019787121 1056258997 597932245 77856576 28300417 23881880 543134960 373373787 396488949 562901734 935093887 665785065 846721695 261251901 748845042 225687278 625382108 711268976 461246983 499684010 928798338 335768304 450928788 823389465 83057717 726350867 369097795 203232468 465753316 837941357 971304334 3649029 27561259 153345522 778760590 516567793 619321780 563410258 832817345 421238890 907642881 181901136 65340991 909452765 142923940 956402393 1009554864 591385147 160099658 318965649 763880526 826013747 345819565 46610772 643153864 672881423 30477200 1068421155 798789963 592380474 232925453 902495054 189568786 965287190 455868062 790784888 654770597 961166327 156056345 566603054 68450551 974369398 398212996 705084038 399477161 203255993 283661462 718982661 292602291 519575881 764162019 577419370 136598595 960897422 165599098 723685814 426149243 822116636 438848986 72823434 818780037 860059396 1059640058 50188521 699228567 911247685 446127127 1033990109 519183622 785714072 407724725 424804794 177276581 807860507 440410990 1036541584 634556669 1045643160 745631758 987113718 300556734 728209742 623493963 61499678 599098205 392379745 866295214 113225929 943743663 374693044 868325871 1999964 867053963 488107169 960720715 585504428 1038710162 403448750 850146310 913824830 1071404700 186537191 646028465 941876709 67459625 187505962 387207948 79473018 725711354 527857177 784362498 968466361 1043426186 821627239 233753166 1064940965 115459094 146593143 155624647 138605759 118615485 572839317 179011187 107223168 113261614 299815196 714222626 560905185 571738855 485614668 864545222 853412479 661092936 785171741 845006749 70313846 568781964 214414732 168705506 912014014 328209188 1047912818 802859732 655389934 870512982 492843629 180768777 715042079 671984789 237158096 306613537 591423190 597025891 842556306 48310070 911983652 894244388 476651276 1071139019 74671960 352143277 127148655 905456299 126493846 827805566 215837188 544832876 599577300 320097245 313511908 404609740 583683709 622258877 104928574 1011269672 644663818 359963724 76902665 585470034 191575222 657211938 66283246 174137393 907165620 992929959 532777747 59472612 210295884 629081277 425285751 148953710 1040464891 111424950 10493147 841915589 763454237 812378706 499500334 135005599 541194819 306936494 762947808 451266227 177905131 847951347 56431255 1010870059 586616282 254296090 173372147 726666139 472986200 725830174 605143742 681682460 778640000 675253511 710053636 707163593 276949639 74444617 568969345 729747884 336018364 32654663 869869097 610482278 973190784 284204182 845093007 192538806 427405862 774334566 566952153 53677774 975517777 766526343 785398554 143057267 155483740 582540851 63649779 458909223 593971368 114299403 399328229 1063659438 829718546 683999099 319392301 241512516 648912337 839753391 1003932954 955753715 669509394 848634268 1008310536 184001809 511510197 348993723 306755360 332685374 1070046898 795419041 1024189471 286034115 684170142 323083845 211624661 1068877549 817559349 225028169 725713312 43095673 276324173 769360815 1059732176 654281198 650420848 392938815 510558556 290138802 514552296 10699512 266060213 542527573 893190482 576432912 400435935 1067062654 734922698 60868460 462663750 593859093 963921431 26241429 381383000 939511434 242251276 178275615 50881058 433559978 731861296 336429788 846401139 235149547 624359103 520966111 214853606 23196553 695821640 488274134 376578286 881995599 902883148 64530440 916626629 70957186 299459718 691045473 36229777 1066720043 803937133 1057141403 302180434 179145367 1019042427 419838026 723470582 694150520 1018360879 232630776 529996646 557839696 805192977 37532223 810756066 40180249 375589247 50811591 506371505 686557604 880897735 239487151 576692300 122224764 84786291 146492142 1009858960 970242323 947810768 257414369 77078602 426863784 710267355 578653842 37575283 125956146 529169784 88983552 292485868 830234541 507912779 924008836 842634946 56358358 1068730942 299348539 46185692 159369938 908953401 521206981 743150822 177727488 99381896 905577972 119317611 92933756 455348852 698669157 910770705 383218911 252721845 1012203 488236078 905094070 552989476 810223385 406900063 208553794 1068054697 600341572 515598234 794365061 968838457 847709975 210494178 503997996 172937826 116532783 962849197 98286391 811911705 837882285 1061394810 260683372 227117563 893912909 781889572 1061748142 21360117 120801742 610442377 543153021 890433451 219180296 491545038 222693950 445992058 948540372 423290584 702548452 893513957 580835837 472600732 771893999 250758754 336534948 262595407 35942979 570095836 456387492 1015103023 505620225 613559017 441092982 167259772 284319360 863227676 179602031 181790846 753077134 804556530 1000396738 96955151 395764002 797120143 1069848192 1020491546 578182984 568080327 911884964 656944839 588901264 222003745 1026652361 155463584 262050899 788864319 421638682 105963571 324268280 565753572 256080401 836959936 94274913 241913653 42978150 764314932 450961760 314166595 575520029 739362868 398650061 480924545 532305308 977889804 569521501 757586063 620608985 1018591444 510725267 1051544061 408176690 780642156 487839062 762195707 415279588 808636528 455195583 702476115 265787078 426610248 73007356 205894875 773426290 704794716 366032915 993572852 283465324 451306759 945499567 1032977802 609522775 928889751 1005437768 1005234090 578580761 930049692 1055782563 648123116 810088292 1048521381 519965520 749268115 1052682852 1012535503 138114183 216790757 872984108 403519807 912926751 362828674 163595421 231471924 556740529 83512700 647614424 747781752 761455509 497040635 416053119 574678291 201834633 244966888 964839711 384167521 484475533 416599676 688144196 552472104 368187923 625999581 69456266 440002526 577028112 852329052 169500331 388861203 492002353 1002007962 486715138 167387151 743078436 608586304 819008758 46171486 337198858 329488785 385883105 245094985 487977301 464018153 503833937 761435194 405937201 521803066 438473897 25258159 197650973 321610970 99176717 393320610 135640030 843952186 957643350 344584611 252963850 676426903 61626191 623041831 486225250 842253731 980626943 349261883 327251850 631907282 275895753 273786603 253989066 504720865 1064087278 591524241 773907212 222353170 898640254 286667917 577903437 278292503 662711907 112875237 739299719 981383165 303670427 801995724 1028819127 37485295 651202798 472255895 224206176 103834648 40518268 932797382 385013085 125775744 278240758 1020768184 950503192 577204947 56835941 174726321 331346369 835890041 362368224 462146703 815022155 455027756 441101190 482888566 176032294 231390887 994060606 236175611 1002105511 486479699 393071395 486232432 822384811 926825394 645077285 752736395 146030712 839361400 178307435 292315489 503348639 515730261 851768209 848370682 986053522 480044409 595591234 614785052 392606777 45940682 150599170 583832435 240663070 962235230 565404353 195580292 24795966 604152861 700572715 78288115 498868398 435377811 999217863 724163672 167225707 878055626 379893212 528157723 1000579725 410374939 400312356 933788617 307696888 1045793046 639336197 391733016 595339901 78526037 55570586 773262299 460003453 792815646 746392002 73736478 968443342 444926287 157730549 840484481 91758708 1035006875 602011654 688007287 68284424 490031413 871587034 547806909 232363164 828743819 656970925 542251077 821165584 68154413 971005647 360098451 282166225 235323851 602357988 1039511010 488948694 631395710 187385654 362434300 763112449 733198475 794504993 253320458 494267716 506328746 985923436 6665110 411996591 248286000 83375408 193452124 41089832 780621844 794714375 990608552 37142820 964283627 787761476 1026807710 458910653 958458267 22403299 972217544 699948512 876609671 955218028 1058106371 619465546 218514658 850132513 672874658 371688606 1046553878 372401440 317615552 518399997 598915882 744215069 582780871 455681302 422554959 951257811 38798540 793954588 388965398 747583934 989582266 1024259007 790870632 1029265039 494551599 334505630 844661359 1060592467 5010704 828521636 217948225 737817256 576697927 513372489 258997090 753425666 25007495 989229006 233651952 345117487 566162665 518495594 826445046 971059054 866737219 24840786 477935905 801286725 565009153 107539313 315322751 53272899 246005720 214578136 779311923 812261970 853091176 289949103 200242206 590924614 782614387 171777094 592361313 359286548 366411384 562022533 745622508 22202201 454429828 838609610 996114223 165542529 734118645 75794443 535285720 695676929 148989538 1017709395 1018436393 348873525 199830 806289845 594094001 520112523 919651706 312108567 1053495895 913759409 186393489 929591297 987767973 813013036 852442316 421597203 63243187 188082039 302681745 962076186 736032829 758702220 818207945 410332265 249933243 534731731 95061673 447511942 453576977 7753292 260581544 701621379 1059927306 456625324 228920529 264289145 435659492 757652290 341249253 785409694 174431501 396754197 103676249 938750602 51699443 74251420 367524613 469322034 202331431 370506920 965398433 131444994 451656588 425877187 961920273 522728931 875372599 190686149 841936269 1008630487 727883586 393983653 878551528 974984046 180560736 763392752 351266169 550383273 459486683 417341208 195114235 774053352 474401484 219574541 856341466 880601353 311350184 657596068 120205815 801812006 268499185 557376606 727050378 872109102 232540332 334860816 952572035 989196445 968512390 412708542 619879671 832557575 845748695 594251486 681175698 928694607 504977136 694655591 706601509 403753995 11279982 442593437 26077664 520932466 318916729 289702082 519109281 276414055 123650780 304058046 819603136 619237055 372371155 890874897 43664422 354169889 365951827 790213279 841048739 370734536 602485794 748624514 367308338 367167318 203829043 298042807 223881825 612479705 795464209 415444405 1062382783 53032360 628960086 972025749 869680830 767693248 931481403 442725401 336904668 576774220 345479821 1019210114 312105520 805600803 870940403 887182737 564535618 143861849 751254644 848589580 86083994 899111715 867012842 232898312 1018123060 826169414 755799787 828285440 498677409 141492896 383741013 1002058685 1015648567 1037344956 763146640 544952896 1065697177 650311348 61507346 809278509 284666517 804916805 279961618 49682230 612900706 179202539 329145868 751098534 850441455 586344172 82454072 733862830 641802408 99072312 991432568 703594818 1068870619 489357613 266426886 128664507 502469761 1022177550 903999079 263450207 404184032 541163463 585015801 564348576 767480419 206719697 911031218 766482819 440059494 129481330 273742052 589404961 858887382 306086932 658177371 458649582 274399651 171882397 1054219432 566492661 311378622 1046211905 933270433 147720462 948207443 709101926 1035349104 1048594332 747696530 193170441 307906679 512145474 912867844 630857917 768712784 313751929 1033347494 164077609 667702894 496833646 57822475 273275729 635998100 960377128 628040620 1072256039 675923538 157095213 693737798 796523529 873039421 59596173 836749898 117452493 357894973 137127396 742007474 628933111 888730259 383867533 81469072 623615310 558023105 957061858 642831595 215470313 941181550 778583473 587743581 168131421 626341341 828706743 955918343 727281733 215336795 693070074 522962947 288843245 15148153 12950469 342749737 311704196 150289243 908425477 530390178 287033731 388865539 930852436 686982032 1050665442 199211236 252995525 1069738571 147293515 482706386 786311956 246977932 1050236356 316671667 936022171 621594734 288061116 96816827 57902225 467326789 339253838 625406497 972818360 368200612 1049776042 786975299 876115507 664014520 877506922 63953200 118388269 158572576 541005638 1020494880 734887358 1071099074 949677682 882479209 588858529 984437901 75515040 1029198821 84734281 1022791686 309336573 267097776 868550992 435174636 53927419 1014493269 483257102 319088758 969446258 1067343280 311112284 972890768 216637494 527469656 319047115 318781869 636345456 171378010 32213923 508106577 1018330297 907911677 266501129 77125452 1002689373 808093083 136414797 1006046547 903411876 186350146 308799686 301171246 423485214 1002156346 1013580020 613015300 626176913 773247065 975369044 777360207 748105662 293594820 144642415 464921719 81199347 536190306 138656641 79128843 369573602 54089806 916976925 429021158 914859744 482741985 713767024 746011068 719983864 853405527 659778732 712879578 956940639 901112571 166801190 936301503 542046893 140610289 784503690 1069015445 391407226 667925285 21601482 40602364 956101574 840531451 24423553 890623350 698405960 833273936 257158257 529711493 5447278 201765002 434289686 91323565 888207900 288851889 970304786 162860293 834457449 902479423 777419233 736640141 805770672 113365848 644186450 609531880 70858854 548423779 799707994 481263947 794702431 38346443 560403009 784695139 791775146 539085162 776862841 488967048 883492626 35003323 544234411 216815254 93218496 58584570 661861486 718464963 884944702 974372959 584982596 902962153 748970398 364558306 123880455 804128529 878672661 83934956 280895348 971294483 306163265 112019275 522814716 406755926 585633148 288263296 1009813885 762429424 276229750 534078170 515766511 1059613961 946955358 721543608 949893244 861694440 110674835 354777361 187692674 268018818 147858902 499886612 247622765 874685767 424602536 773199603 913102710 277618653 1043395360 884091192 713283075 882182240 957760363 442615070 276675357 202927019 675781100 954635102 28547248 364992844 935865773 776770649 659917743 914526436 298786404 473659274 749541561 1038573613 700768895 311739136 332207547 128424783 106825722 560832086 446018778 491040914 1002344898 675595408 46379193 276628922 172605142 522485895 391378528 79078232 717464952 336760937 293024178 672082316 100660821 876716544 957870894 170607376 67373929 508465490 797165764 45064799 1071844811 620424332 254382702 734835255 605278469 793629094 217111062 1004234073 578488341 447645257 300657469 928415337 451879446 249468289 468759779 40023369 274278288 235328735 375243376 656100476 291786265 691128659 88164171 709923358 1027045650 132825711 325493222 877449479 975357025 969032856 673329979 507745358 556140172 981342236 666974467 427928394 237784993 332927938 1032639932 763185752 205577223 110459104 626629167 224063938 434816590 1019816190 1069768249 687331582 203934743 629640255 317082719 643011681 231391738 928728213 898409103 1066449516 619747087 404110796 403593748 114535016 1031760002 200972267 912097129 354081465 341164771 140313813 740026187 425175174 91131648 426757422 457549022 673463055 815511441 609123507 596026606 807981285 28339086 1056431787 622589866 368068122 861420783 880005747 862524793 941736458 124956496 59273244 707067111 1005791816 88068664 916419782 161892723 585903537 265557347 208508301 1023615275 1004675949 585205653 199021688 438739091 731884142 33258739 718739557 893274395 199158149 118460584 952183466 293833032 587765583 849979466 430235156 172343990 41719492 745316839 390690361 861516760 168555847 453001037 275813492 153698233 277888326 875434581 692045967 390862882 1072184806 950711944 470609491 205260042 329951879 1057912563 947842197 542830665 99947873 687967586 769904521 1057735319 280125242 309111652 442969351 979105514 1021516416 514073433 395645621 161712521 785077699 322212947 170504323 987312861 134672664 393452729 385386890 1021415152 333086734 963172628 230251745 1072897860 961466415 41534616 642415948 1056453165 36847187 1054806834 225559764 38174481 194704889 863680119 138659209 535152861 428988225 841302399 994684157 278296261 881022425 3017912 255199478 999490727 447828447 1051736306 1022186156 637454732 564967933 812590784 829765018 465306867 209308754 932513749 956107617 959613750 285677022 738676640 816045798 769349490 701694487 516632003 273369447 790206385 199671465 37660249 93610149 27797245 304891165 271343296 143463778 426028289 1031274302 116405332 312522171 1010317446 951925680 523627427 155435744 193451126 330777720 960627532 690322209 719377816 162844338 101441985 593624197 961782318 605079899 136396919 684017369 586411423 267782665 643572211 1063152899 891563096 692223904 47101509 299797366 741819532 1015786265 223994494 608936232 290762372 626234839 435697210 272000526 529456692 50173219 313713134 55336136 888270376 479291084 189622845 115525305 839410707 594180281 950189621 635729960 806518241 338170625 769882475 969004134 741927407 666826825 127539869 588680781 177696323 816219976 407790581 774570358 304536269 715436049 1039254932 776694846 665197994 963878358 125907371 705146175 209690617 701668018 974706255 1045853175 895887017 3550267 424535550 570101034 11603797 526693459 144196794 813638012 232690822 128632234 692614966 274539896 419696241 588922209 1036409337 252786369 964287313 439134182 159168104 956113508 1010550379 870515283 208299645 78311537 866433785 488528669 1046996227 873418714 666102364 829985987 1070852568 373783746 816938386 462331137 147657650 912764856 500324938 697793920 640216096 624937117 306508270 244321384 530425960 207394401 263332815 615056040 777839377 963684262 268632426 207668872 2522982 1000622953 439132419 238301244 502330674 174329129 129143045 242767974 931721519 327894793 234411208 22861321 163697007 520365833 725953632 11502684 109151702 111279715 568187868 190834604 1046575030 11195726 430561684 1000178351 632715019 758477926 367641831 560694936 330182769 567788592 1031377132 332530442 759058929 954063455 69236411 787339829 313567595 894773173 817790743 138357147 705766735 609843004 433204856 654022046 1052547839 248194539 431805125 856276606 282080142 873891848 1028628648 263903355 763178493 841277092 873252397 144503595 700075176 55891775 267129928 374825324 992023925 961768406 13694410 561960121 93654424 34431975 60041598 504325139 792988927 54089372 758449075 585079521 807030705 850338808 44755231 731917644 919105573 885587391 404322521 38879972 582937017 242901914 246739989 1004960230 631016808 225484020 32758779 457612473 688036553 313622181 2738404 1053256144 197636646 195241161 497515397 427391711 973773682 1031974133 659565772 392085690 799079118 976066898 266170698 80603194 222816379 348215125 347981081 565798704 452555631 734782109 716862167 659992604 740974707 1039482644 831886545 737478185 884754712 357775820 695583461 657766762 198637088 176406778 690014416 674573995 296747188 223001180 920563208 739471098 899536955 1002393163 350154678 632934104 505442887 61397959 303264482 228343378 339568506 851198104 824441540 958749340 1052469122 14728229 867378243 1019368161 1042352801 275047173 1059697553 873698680 782246147 429222829 1047845820 744804695 364385791 411032390 329051468 795978867 123775269 618423115 574098718 179245805 109046865 842782503 920643578 742809906 598034030 922098581 352117684 320607217 957648439 447962001 157338857 280613749 411647219 381964983 241377310 407779989 226356392 589751598 509397305 668013017 493398434 79302324 280273411 904244070 644982281 704891961 669972130 831895977 606512752 791111870 58081302 1052451536 319703729 772970211 138934380 40394523 97090677 965395483 900485355 510410925 639759632 1039325369 676102249 789452583 1043872442 806617886 394392827 933489975 187513128 369682149 369145241 353911183 406808673 986244823 539734977 889000078 296673981 889549043 666833510 367956437 472729227 274203322 112426123 146320623 958095790 668581189 417321947 135360136 400599871 248263539 1013968380 250173073 178784655 592508861 972078229 620286162 604822550 455679025 455585128 114789250 662273144 479163540 1038143361 175703337 424067963 542297667 195551477 546680260 80427695 659004795 1002573927 867105433 15949869 220696983 376852621 332128445 62085400 135806807 668692766 313804973 792969307 851137825 711167834 749608161 743699457 643813568 1019968292 420779159 95171409 433335168 237258833 942140542 675902347 480004393 597949991 85400539 245398449 527476328 303145442 427708761 172196591 782411648 802082351 334728472 1003551947 1020500271 1048440620 367940402 567443778 1004128221 884247388 489656177 657640530 505313195 671797119 580423836 8308093 543855892 1018155271 126153293 756524941 728815593 524849238 640929899 717736518 965416488 745488332 394604258 265630640 839714954 690699993 750280199 498095823 293977323 451440408 99057971 176393270 846001878 561463171 931200357 945426168 316729419 782315868 829360294 61076101 429012627 944611412 1021133093 657579011 884726328 984501279 145934966 686330750 585693639 887638915 622110195 197892437 922630843 612325669 507104780 73716898 478511193 523630419 794962661 1025230442 197144780 179931912 480418658 593567533 549126807 676741195 680663274 409027559 317549522 317927830 38362759 55276208 330266691 175736774 539485194 727001952 685485949 977177365 75371905 98804556 675369450 105229103 185142993 561679545 30396393 866956763 587797856 575133005 479440408 139024907 627607088 618627396 64927920 28612546 86489830 1026158324 915789293 282150330 866283635 257902276 530178657 171077842 356264200 672647198 213630876 47941458 972764112 397628863 454578298 29866383 8024536 273353802 936320639 515487651 188730632 942228580 885714156 463480453 157649449 224164573 516354297 279222450 432958155 519491115 797766124 21808707 595824713 131488155 749709557 646603710 286788059 178729930 818248465 951134179 890819467 949886786 174957134 1003997034 903467378 1052026204 693135572 702333239 646000882 99034617 562733415 563375325 794195312 926697886 524728418 787432399 17780349 989132549 651057812 431476296 375165171 713358700 350707232 87134919 995471196 901342088 617862856 914697939 374221955 900251038 511857953 201060419 113075090 331406532 533702913 327050543 602623246 61218118 745031174 424568373 950353756 819499707 260769531 572026277 986137728 1018968168 224082727 826792662 40945393 89942167 159345638 426179554 44727019 666963050 639583128 749743174 1051543035 847744738 315827738 345484956 814229262 252073100 56110762 888627350 946034372 452044402 549334106 571700809 582605895 413847696 552523689 852084489 18041707 202560763 662498962 31185068 363531353 118621377 216897240 66111296 560888725 468444774 939339916 371113800 778800661 273463662 48283992 933990259 795633331 593149396 485287164 852399375 952172771 25509086 910620656 326276840 998057864 897870116 1040891052 786514367 478133470 445071243 945123769 63929457 912668843 237881261 874874829 958518028 409113033 173843744 507770804 247746107 305054634 826096490 967687060 369928337 1001406395 539820065 86700336 815030704 104253437 467020624 144368204 310062592 780525330 812342695 409551340 826304982 756410759 1058836444 984176108 528073334 42502070 1043374626 657655467 634440663 148900922 1064428748 342943995 253580877 135182500 113317841 50901097 548829159 244969317 366742181 341439023 742749204 187309332 249813023 402709679 222924382 715650449 889775117 57540039 853374628 467676059 1066506951 400307 221855543 89071008 298231241 192063582 638441684 56336500 1009206548 48334280 610907786 23363736 296325009 680710923 184215716 103724228 959552971 590684033 981971653 983361923 860295364 763651433 894836970 867915565 53685134 959456157 771065609 347340826 717268860 828166469 861430440 471412248 671140632 192111309 200021186 647676178 1006889788 955601292 481673100 807590580 367980114 996486190 390777071 416405110 257171380 468701922 726392990 887758071 731855787 64055565 174133463 787393490 999659937 199413187 473352659 377924719 99512516 829914637 476474060 476440688 389349572 215574364 852295187 874282752 506887332 864570747 789818020 673413390 422513385 858630329 420739583 996363484 446946200 843211393 833188445 772554877 123526181 849120270 610378917 676624792 507487196 263679406 849634441 532328814 810503042 525798767 532194392 521619098 599025391 584179591 56316802 511223531 666886888 495318207 1044448549 735574494 184538261 980801840 284591527 852799232 402388265 399514078 584587549 713973972 770351407 923970445 35039597 831434288 980288532 651627532 944944464 360628142 212587459 386808413 956138676 511948880 682684438 802178572 935946966 239767289 677783641 866205115 53469304 643402469 938836390 667991027 187597041 991300703 792784174 436907445 616639393 379496159 758060465 165199420 806977164 458533919 979916203 472813217 550287242 863262572 530087526 374301550 1064678082 171543449 91457481 449724311 658061611 243565157 1071222697 319536464 257113020 187473346 890519620 535777327 862759387 408526993 967076078 4529558 676109453 671700220 264643170 788484985 1054697308 909615915 741826832 411403019 756298529 880128768 244069106 640962964 668062724 65591502 397203618 168028301 617311421 788675160 637982581 705011591 970325871 428066928 592290627 884578277 525495885 278943591 505357409 85401923 920010410 481800209 568844653 360401598 609334732 10284390 770108111 13738727 410321328 833585891 452980125 342998920 85333392 935381491 819272397 88209997 634625767 564242152 582834340 324716685 503541187 594611739 726780055 734624062 700009912 356809987 302956622 519227731 805858922 210480555 335212411 44575189 135405623 537817054 125008320 707108726 536746726 180865397 331096850 552299276 507637157 206790507 677932295 728964032 1028788216 936885959 914257731 672168623 846753226 1014182335 882252268 159696868 103549141 337655242 784414734 969489268 778675239 214462294 60599511 667261813 756334488 981997465 998824552 578618207 269532647 724317715 623568246 254462993 886877967 196548562 944670352 787905423 355641636 283974758 386252240 169930342 137234471 796590489 316793312 332205716 732468529 84654025 848342581 579875402 214214929 401260829 285391618 889121767 658351476 905006945 683371447 663932634 641055843 136206769 446535962 758795924 73409090 550458950 356066307 910261749 795206907 832223900 243068460 310820877 845887510 394075763 1024522390 400435179 546173333 7512898 3173403 275855804 372727282 598201571 170015430 142760623 515960105 628070417 1057541555 914225972 691776177 1006273848 181958144 1068873004 734843076 130776233 878425687 927994217 682333756 49478019 121544006 748544943 202280461 150400756 877157067 759749810 948696934 154381834 912951277 1047181521 543030339 476143744 103893378 520905638 420000231 948365177 193833415 548266136 665541357 895071008 680894793 149958192 291668454 156614499 209850280 314817525 630458858 239107673 948047455 84213521 753497223 782375134 763618443 419046527 191575066 497892923 984670156 220705594 740927779 828451796 234722670 954929088 174799988 129990532 397830114 707611840 25524366 1070472857 190917924 455783868 470377873 902402791 209500809 28622120 769087340 1007791047 921013476 559953646 893038499 367015056 68299615 609852676 50456020 561309084 705662939 1044662189 716502897 791177694 200771064 63491347 555989575 781715128 540078132 768567685 638054633 558206458 775166105 608436708 886107948 339174118 643895949 779707457 9944852 68495843 1030850725 127076796 171266415 297797367 268709219 864887109 195721883 606240514 1030233412 346759278 14439975 627739620 955063776 294743332 369134999 968358986 897067875 838866322 597060453 815797360 14582840 104206638 327461566 556563248 1056419930 802187972 956375478 131276193 726334137 387957953 750575010 229982461 638092072 25543725 396381276 691597120 698788828 24057167 822811813 306525189 78865293 669998398 620725829 1027378084 595582484 926268552 459429766 731492783 622462516 815705914 857544491 668604638 1037136020 482613355 623273306 41291355 608129798 235072532 75119656 904904178 78135166 299949842 828930887 669132946 23524940 181025081 357271990 540317475 163008259 160758565 341282371 614736945 142924967 674870833 886348935 136398050 505472232 209681378 903951072 1066492130 833179688 250744974 835636273 791088372 211456967 354810161 116935281 824043906 451966156 82050547 389911836 847171492 1016823183 17788771 17259264 491787725 689033658 782016393 688276874 157275199 661627994 68583782 1004534560 898030653 781586551 408973239 780770814 262532400 422545277 973711947 395431851 214635998 597640600 859292124 693832938 208617274 376257419 831388928 435222656 1022524451 823282711 6587752 428958048 546667843 701179317 475811044 1017400757 1044593258 33544446 144501097 630924098 32437279 766882460 748436156 964544719 982802988 467689440 643102751 345579162 852424255 934563028 544630358 304005139 798171645 216304722 29267181 903365480 709143078 187045872 394956739 1060577836 945451245 763441577 145553763 442939591 400826182 645281801 549647451 58806211 897155607 812532184 651979768 896170711 709804733 686229952 80079100 768916419 1030119446 695110104 326089269 909471437 196993427 454187428 773753752 575697176 892176745 421339206 821748569 818323089 657031784 173293385 650639633 953389313 191042252 800692603 909003007 23950426 969421775 637937151 852663126 881020673 1060647678 116552051 904027176 814354324 983909376 1015053204 212224678 506621397 706401804 959473177 944500892 228933874 243423347 716524654 455917128 434340552 821418549 1060527572 515943115 946421629 228267914 1052835741 247151121 119315462 445327179 474431154 591410238 722928560 828949963 824180028 54748899 146071109 738431684 518056350 83395345 18681802 44224957 187769527 421860642 241837070 3260018 850791137 848681550 319922092 116520285 700118431 775443441 436375033 344989308 949780449 10897180 92930535 934092286 378446245 679096321 1008375741 798853737 119692243 850429067 646629472 1049561280 137231552 396195676 1037207742 1039702457 197903086 990911797 517418367 511342618 382752562 272180456 1022620430 193389026 572019113 808763462 951989224 1016151029 576523612 626267483 628960112 298495085 503929947 213056839 1048529872 15029705 549520112 19393482 700555741 216204119 809550592 579602234 863121358 339896975 533314833 600783351 528240437 843460707 335889829 27542150 672917181 184120042 1022292665 740605536 53693074 440097802 257621132 231930457 246256716 963862337 14399005 766834227 855068083 234974905 710928489 179374388 808499306 713570680 782296757 587391275 8914338 74177464 61068121 333680383 362212730 508969222 878352130 305209607 603189250 1007162542 680152484 789192318 963278123 148208848 765421086 481299026 286079600 417801186 1020588912 552645407 694070032 781525762 125196684 701321357 660575076 637940403 708232185 331101383 984243134 863222414 56756311 134857550 882910700 875644782 374421534 829864906 705138965 400481785 478209872 93934621 991755500 282904495 612162103 58319416 551487235 531680816 118140569 1029250615 871251962 566841435 635534886 964385106 146897523 680893071 768043943 86603371 751076612 866929624 772044904 316865628 785616141 329050513 858045920 59782540 637784449 696880329 385661284 429425765 515675669 251608615 809158055 685994041 881384096 753701700 857585821 701126182 209836586 744475096 532063527 762542531 819584086 12537630 434925704 46547679 60619744 306136746 710965090 358193041 93520278 553297188 277394140 582187775 377165766 656706418 787547804 364908558 308837871 329893047 826500579 287786387 840777757 831689241 126579542 77350968 640293575 110385168 230723995 942804139 609843538 382664127 818214985 908305478 10971329 200698629 362709844 537694385 131432269 105871057 1024641431 131846782 484111236 847215421 315858657 41726660 146407757 279026293 337764662 51013587 382988558 250067572 218989649 831866093 796015593 831814554 234857022 90851571 831341634 319828273 734047546 36824254 696426393 665511536 579865909 254478129 1068335991 147032101 390896111 953746456 962391816 812603971 147130938 960792214 1041108545 37360866 141704354 965975427 1038431011 955655651 692514932 146343861 456612917 238997484 971365572 175152790 907510855 237491710 496056030 296218597 207471019 384368496 908479275 217958625 702236671 70736249 1061192708 203270139 154653896 191449522 100826421 196383232 234484040 597375363 567981848 119217235 892270587 189218249 549712210 920106919 204721501 313089165 1027610004 526745379 568849730 378796680 678354245 275587115 985432536 154336232 7071457 572937226 304719480 939626074 268740865 50647405 809812807 3256161 320941419 910812544 987252015 923301497 1030738304 168969927 223131090 723978230 552035185 529716861 653296164 1065417169 207567406 41825228 310263815 668016915 31914883 1003415468 995240065 522315573 221359001 1071332415 284290369 42784550 753959437 300984804 897804231 825123779 600581098 31003946 965683102 19079895 226989832 1016884750 189447337 371276452 1042637237 56316181 1032734740 262513438 76810799 248168998 670012949 958206128 187188482 948425053 138155972 250072745 1003996525 310700000 978310213 16408574 913387464 1039444581 382215721 526784454 527469641 471556768 356931063 754097148 413982521 968812336 373302172 272029773 799376032 718339 1007179513 652847556 1068014268 126492806 163691966 231111921 7106286 614009948 165899562 78892387 517633893 1005412498 823705956 773320578 323186255 51181854 793317634 490042665 213716252 458871871 675045206 665492735 1024611083 860880023 605517285 265500157 665666890 508641027 1046978169 688271685 6975541 368456435 645183125 711533786 315107111 318299792 768071847 838780692 136388841 693245913 604060468 541170980 718537294 57984172 698183534 410732835 316087399 187201786 253545771 417689668 391942923 527641795 151056672 760530969 957488716 390968672 153920629 803515683 107724142 478697709 216251875 953849258 250822954 69531922 862711369 559477389 870291841 829582959 13417105 139308645 286623750 829217509 942055905 656145666 810275806 59889084 498988088 1049787673 447596088 942855244 239861892 944465486 205037373 317152492 403154905 358005602 743784205 866516529 1056208806 930627382 628960090 967812590 709148818 1002342117 1071810325 190571878 956331929 311127671 148241460 920809437 928521671 676402194 176291643 142797539 25143776 512735698 630762326 173069332 345890284 380929668 700448837 1002267198 985413085 723982015 420909729 640096136 684917312 354468647 237863421 955225637 956765175 341997505 290480721 223916491 376877961 500257222 772483184 706038985 242683161 493756807 817890537 411649182 561964282 207160455 59134718 1028355574 810815294 378420544 973975395 362479361 861293257 784308495 310598561 460681015 426564752 473856320 68554360 689087329 399388321 477358219 84125012 817121407 149755531 102294496 248116681 725504273 851685320 514505106 1029016442 559624046 1037393655 612261093 929173056 229148435 977393304 754214455 473346791 251192867 540243132 1028341096 173328617 948792539 935497923 675565266 425434842 131194694 748117974 640755128 397370147 464574261 773644366 627560272 292082422 300449599 290291866 454029125 5107674 200198227 492601526 175282187 37840382 49355443 545833872 350082634 696480191 351503930 578488559 817269385 684488629 607378632 708558749 675449593 28255128 112235414 627215818 535225071 547123421 422921949 457910037 560445202 535911816 475003973 1041577675 990211671 756982016 173599673 827907656 912577900 560215646 863920203 672847671 622842251 344648031 261369603 315643358 612331806 897895658 919688013 623447544 256600809 869135990 700391827 158962180 880803231 241157927 689444013 511681764 473740756 511512177 771283026 660174022 502790618 401831188 905872752 155679982 70614079 296995492 219442486 804714476 1065238974 518785616 816232746 199645412 167278009 765321295 703098984 665849134 232632313 260127017 85170932 317655635 450264767 464412414 665169451 948574347 1053240865 632712133 839809585 159795197 728314142 372150799 583405088 881199667 426537965 279951996 422221602 147598108 542558211 177579943 946693767 785011570 747059962 257990867 199812550 492212615 863379016 378240320 378976579 612541449 381901113 780271304 644703915 1039291156 387074277 332129454 221681000 797326740 682662947 582484888 917788738 468405500 463892838 319314153 385090771 358495097 593187568 1046276482 377207928 325736444 285229286 328096161 89853835 744007278 785599504 636201893 578647185 325416347 521877683 628187658 389033019 558125884 412457010 709436574 949100342 162893831 759427136 217646523 496751712 958667270 89677231 738125129 997581373 807933793 590489951 895931197 662052443 415017316 157293698 72656720 881927365 626914047 37515372 917999441 606972648 700563857 837937221 395600757 209477018 515830443 940221579 219703868 956516342 62770798 46398392 9521691 558054827 893897860 606680219 976120256 60289629 262504396 702877687 147944830 462559573 216225273 68569145 1018040753 437261249 424956024 157517673 204076833 834592631 659576778 792687850 973891771 295511580 272861052 137879459 844736434 747425147 618636376 51006684 659136906 303604380 826898985 718726925 905857454 324331727 332647259 905996848 266178065 499816829 751533206 200563891 135559833 526812289 245779021 249347444 997965046 183324280 712810552 985747393 365432324 652849416 141693247 978832662 907367150 202465943 456077115 554287128 46012040 881757414 68517466 695861075 696597823 146483599 342584314 541420898 364667747 137269060 768193937 329404803 682295614 591271469 538863790 903563695 492038586 182409505 865910281 56418369 224858670 543456443 269647768 921342585 444203387 154705770 157539697 473336054 503768308 390242503 824690976 5804908 796816123 515913664 591945498 616741255 217091909 698990257 941333702 655943760 755339594 812320847 299492377 357757093 30946640 340536885 965215939 228027125 78506708 1010680613 118911745 202091454 681628452 265157550 1046637309 405370319 210933825 1041544859 864735700 972633341 371582562 787217950 116374026 240003155 395764955 321071416 193944828 485229245 483307690 389000075 1053100690 687713934 961881969 369644570 337754187 76591901 29293947 225569236 207436967 930257948 337206493 937887740 213703522 57158858 185704539 956332016 523187285 758502887 843116868 972479474 560641458 106789285 567832927 1041839720 334702782 874171689 125340803 847716654 331631271 162534677 966927849 846355520 789915393 943870156 258803306 540899831 456748092 141073645 850452488 434584703 1013798925 231098460 658107684 498064778 653274793 189541501 458202722 264594389 507359990 563883878 772217305 358043472 534092833 791010329 70744945 380525239 809195796 944488433 812492461 645109676 605725633 614088619 609869653 764493737 845631306 1046974576 661998400 874628270 630071268 440006909 560237064 292824620 893574447 121852405 488947625 942923992 290627881 466468998 1071312477 909445128 395782825 640935637 507210361 625199209 911814593 507219551 115078025 63387797 1057802328 902454642 271554403 913893923 697049929 777359064 425884434 310364851 971572221 108913151 250610062 755209085 675655369 964080088 226979430 953398226 566457687 901205144 413819148 1051832327 604680177 408884347 451649213 283431813 37134405 640364334 1015814069 671916789 806358046 418608562 995837254 812514224 250357397 678373557 440838454 202363130 25543173 445697612 302225002 94100594 154268082 206262786 987558929 162638762 739464337 553922904 310226452 933107273 702234038 139205182 216708842 412423413 393138407 982982079 454768366 936363000 1010469760 879304155 982040193 1069817027 979957819 951840610 285924623 98515405 104562522 850540542 519113595 1072608728 599620550 91328550 137865286 822124293 349644152 11569529 924508161 617934443 176461178 265809356 754347888 813831347 80022814 33951991 227527866 158484343 369219051 50489387 797586929 225153394 574954101 410859152 775393576 947913063 892282189 595346986 244505366 928070533 836415813 60864928 205822046 1040633726 225374447 539237430 900034915 255696961 478162571 1018912569 225974280 457869504 57863854 506421974 390750412 207208964 143538863 722007182 899404503 51448152 532437491 881312437 74451481 224218282 715715705 826671012 620102697 1026867033 556710053 180225979 68770919 533654099 742272956 1066427803 987820770 333353901 130077758 391232897 460270441 523146511 134259880 254457386 1018733894 683461056 669202210 311706847 7485176 892354320 65681831 136860190 758775862 637167325 326641257 182497543 829977011 498251149 320880866 752326378 293955777 932280834 99167409 573459922 956039891 1069798629 513376686 561292412 878977749 497967230 1052265573 105202870 220477852 741290390 723352567 142768851 393417328 52671766 778956048 153593505 106710530 641198260 45122597 257105202 848647631 363564118 887122268 535490249 982849792 417978927 245801305 447597622 881607513 865369068 540174469 384175356 911249025 392519144 1533590 72596360 843382766 1052900996 336134339 506252013 290272406 415229631 1060710470 773524779 614391162 514797699 347449423 387813456 740032986 53778434 562304529 493920336 333406475 1018588556 642086346 1015071701 453967291 263718466 428542344 373124056 249238143 317733046 907402857 863231164 880865703 839031951 1031630033 999821047 537206553 630309910 931910273 281062732 813465835 835703648 330950619 975919764 1000737595 1069439150 90884206 649063375 440302144 949041912 668484528 647973172 995646532 941891020 252196734 604753795 1016004303 274746162 218902497 475005134 22899242 684029569 1049226084 449046 223716627 372740974 33186260 1006368181 170575694 9346598 343363640 936017960 130252401 87753385 618382347 561291933 695487152 1026587397 1022432773 500794609 290025249 673924850 220790299 175604519 68017333 435950439 243339705 983472697 448390735 762122640 901977976 19600071 834255721 690227342 409803093 728134570 221900752 718657387 58593763 183159021 793767532 231048970 654359999 734173632 208622494 778581833 763208710 782107576 219848532 557275167 144426120 265315893 880800874 1011329714 345104671 231224218 749537625 995368422 273941378 104875151 697106001 673169437 55686472 157517373 889007037 990772273 436075943 139857048 755872407 682812190 1053283756 756637840 66550967 923440415 697153529 756133787 1025573039 69958951 247933029 1069190365 876022085 782726597 893701439 764201604 680839739 982637750 163796162 518456336 300532916 1007806657 777372817 72905414 111759205 459099151 109305714 83304414 721256186 197904437 108093915 139007306 301056840 742161851 776046275 365877401 133062798 741211881 972646900 780756735 793410173 668711261 280203386 304652146 169891231 521141402 333681243 362441965 682845359 122194678 734500139 678965989 137656356 659986473 169875574 1021893035 934751189 143775333 651014215 141729445 305771254 900198148 802088852 759945362 663415781 615415207 573161645 856887169 413086530 201675516 656669040 715075099 1065542166 752799033 266852227 1036274308 595592079 297072603 443409211 942715564 1011069791 184689849 866718846 709687918 770701570 1028061258 2654680 215838944 43046193 759149929 386033189 87394789 746448581 29747817 584377826 262560004 896206143 453272648 758546061 980853805 1055038465 633856400 918920339 926057132 90922718 1030677212 323269149 701267857 212201847 1024884930 280133921 276795420 481523529 3930074 86995211 137535761 236349046 970890704 213157166 696364432 1025721734 991095424 156219002 536183485 484280260 750312737 71839231 213594198 344408094 239214540 220098336 563201949 158642348 461680079 373852802 160321119 728183178 245740971 854217006 924129674 596578201 750640313 66090307 290554113 1069196342 193902173 809034021 267171191 737488771 1008545198 315160055 541285917 810071861 629731276 337303564 1026208706 297247714 538452917 1028616300 1002213738 911666756 807628696 338502432 373045996 1034701857 715152391 497713498 110369162 275292286 301995529 204399618 763779872 674083644 46327897 130497180 134409783 74998428 412659675 771271190 508994614 587117837 550388886 727815753 83507638 588681680 725238167 1056827130 450617602 540555501 353940505 185715603 448094075 708078011 1024633192 678546327 303612551 692504280 162183956 380494320 579567609 435147820 884005553 99356571 358336785 538535786 719598345 244296703 1005369692 396734073 442290561 574218431 870348656 412492142 716600203 1012842878 623025830 609134674 336543031 819648305 692231858 724439935 407814188 327082644 76108858 169838385 82058315 889105952 3192327 250043291 738925323 1009219287 782736526 607999096 299085617 233294563 690777670 144924594 96757345 388483969 56193610 245955121 738244669 417272293 127784999 14223267 690284224 879874905 273146925 1715679 404863772 713765998 113609174 881058052 38797064 927562824 238286329 543282924 297254867 695596019 100324189 406930836 903064495 961327788 890640730 522076935 641079193 893275824 643526437 885138619 407844813 632887340 723487420 285958053 115199691 807005484 717340970 518798069 155378923 711649863 1028502393 944201467 913741720 936391571 320619729 87568620 562656133 161002902 912055285 686608476 3223142 823577509 764237926 732815727 1058420606 779865059 968359135 1038706807 854718594 731771605 689572875 917934125 973250193 832449640 968607276 78873338 158250788 703619998 763159716 584948288 833553018 294743375 511760732 971071495 1071466918 154428616 937450852 98617714 385572693 712187030 914811610 589243660 280106680 1060153499 749320700 36208550 514195506 986103303 973204760 256774092 625160036 251882416 804936977 725113664 858343769 466203829 612948660 1004621224 319262795 1043102877 428086773 44383651 652344456 534174364 1064122749 876707919 703209428 141691204 408505849 1069996804 533846391 451533078 766009822 552095954 907728873 87130160 41809418 129891769 93585580 4144441 789239365 580357886 310460293 1055693703 121971395 308098860 278861793 940969118 79509907 635679185 667134823 293865629 292851156 141090455 985752861 334390506 523622580 652166830 74201896 320714354 69768606 155779155 551271875 633371126 895500003 764242169 699707445 257129528 377889454 469102842 689990468 955209565 282093893 848094330 353604390 1001637364 5154901 200684517 974225868 74687351 339681539 870755192 441069350 662612812 1030355471 668166756 675045277 1032446350 523372123 574166764 48482988 430234554 579662943 671774496 969275743 528942523 415499133 1000582732 124267177 819638742 460763937 914152751 108554299 971940480 302838186 378522739 776031442 26891175 520347181 656569869 304987246 126075453 1020237455 747682102 735509680 42379307 381273619 941032638 596468823 832698010 539082122 921786762 580641497 354559268 568356413 141199529 250730982 197437486 918593094 411651603 773236224 386563568 175761894 605807605 812811882 683857894 662423816 563571726 256812906 837749475 882776914 955085567 196670099 598415403 1062358840 235291723 223054878 273115357 301370450 1052360459 704900855 773180612 70466497 196787321 689741272 846428651 1068247796 690784210 1020332269 799425482 569115349 226606917 763793293 374861187 151033667 1067153398 817179587 811471775 262535085 482478753 821788089 918998770 401016166 538120854 287915425 120271515 421243687 487596944 65693329 412736531 212403056 710555744 226282903 1001173746 999684777 65083963 301790566 441187006 797610804 117470995 698288083 352468911 1046866997 997220876 830482568 330235725 995391852 806956558 254422119 518285206 777651086 133484018 47259774 534812449 315011336 148103743 319388532 474739055 875188971 652645103 617277112 230849032 487750732 481932682 692933728 138391130 1030568852 741877478 452746110 706970649 30639520 156549060 262800613 120833056 471160698 534324513 370059146 233764187 50756897 785528048 723628273 288973034 617094648 506024166 69294781 898270805 938566573 1061449455 409898248 986249254 793306397 894194625 634485924 571208913 167038861 614538224 511535641 355515223 150975943 327441424 845645132 11531213 927270618 836469998 869320016 1022867731 708229025 700422626 819198320 68048904 493898013 702862474 368165724 602031696 597122211 324120394 309183451 901738428 723818065 287775293 219775949 881048505 545047259 66527110 831648771 687704792 717552341 817547190 911274341 644695466 721960813 289088970 131833161 571236807 1048838082 258313715 949625238 776926647 27680496 449323494 213700564 884197777 993299756 229870015 784945079 701937111 500666235 139264018 354383005 143195185 864750104 870842306 250848104 495294051 294649009 515829854 286423347 1047006045 412419473 600426282 943032593 452953015 639513732 937252929 222566405 323321999 172456325 268441408 779068783 100675997 724900048 921278365 111139270 582698614 80064400 878380263 818009970 571740305 1055892284 106191708 158081179 831019784 622583462 795905487 294536083 607634812 843245757 309723698 112373242 846664870 801448267 610670013 455253927 377870992 1048018593 720439679 593044767 241997959 636533681 288673230 766060599 584117510 192675692 195695618 476316025 524211716 350506798 570749658 437513417 603931839 854789665 595316122 307302536 652790128 957143622 690652325 910741803 19569325 632696984 1039189607 622247111 987373240 271285616 1068860013 234974306 140372516 228315176 117242029 860370878 618153041 879193433 700488806 84310964 733316320 958402230 394710884 330810756 1072638587 827627276 993837724 221364115 167904874 753030290 281902558 422120466 6473578 962664022 833029842 1003742828 610140924 726415457 47595304 699931599 443647959 270247790 787073521 852827649 603529798 551543153 529728461 518355926 152314282 627804356 970226159 388493331 647435042 67802755 228367707 457806909 858162377 412940556 692233787 536314456 797167299 184476578 296730038 195558018 602351379 598104319 177829705 216279940 893143576 899221666 406675639 245393380 326866929 1027217712 254620374 386053920 769413489 96530989 89583925 998143010 526836321 589379773 6606417 471530504 638325645 1004761221 403332162 65537153 549025125 11841381 119737735 154525103 160948913 72723074 66174960 930607278 860928280 60507917 339709715 81594301 133766223 176670263 601996819 976968717 90299668 856484292 245984047 335661865 574914388 773302077 851288637 600379197 45666102 656787667 472164600 969784163 419742531 402603142 421148958 61865073 347023782 213041752 412903715 358143573 755323732 922693620 489566855 499259720 855167856 28186246 579520541 841165506 805250716 420303326 585193493 84876655 1016227488 978700456 571491886 143861390 1005086241 321846056 787438532 458741140 1057129756 716443535 61703324 50419688 592734756 898357936 421673489 295157595 529329806 95951549 822544491 543455712 524134843 161445142 613012525 222293356 532228291 309654036 833891498 590260959 406343962 626472341 989612448 1055978803 280716729 725831968 843299715 216443953 815722530 310232574 290880233 1010591978 303253729 145293843 493527958 594604470 435438343 738844589 900581379 288959386 742002849 9755816 1050025634 582252599 721900398 392935925 967577219 653912222 764792803 894918108 765532213 587406373 33817673 953812797 303162617 917255693 715176614 801187245 867411351 656808189 683448488 139254149 435950874 378612794 834271001 762946394 1062359216 973338703 994255424 335198670 125587980 729290233 805150096 453189039 550522411 789643331 130509473 640240052 754880594 414415181 1035477224 705045078 116755536 214961206 826269193 385171233 329326614 778608607 692235797 607797669 829167270 163270780 614985848 1064110031 795438149 654503048 182779123 287721161 391958417 124381832 415196956 727397737 734428619 604613630 958222934 111553093 902134274 78764633 425496626 991537866 476040352 74582710 1050968623 1064103249 470315615 77582160 763805330 18168617 1047434763 710834933 871463477 530608545 343791875 359127417 823537075 135102727 156300216 968393982 708778958 996026633 351510490 381344624 1061001192 791822798 364103057 547969908 816505395 627308195 718104308 483804835 376039650 610453982 619477019 384324373 858416658 618762191 935058084 864795324 789978827 533770525 669475425 41575701 915027564 763065279 508544041 139919299 855361537 238541471 325066664 246868423 876536811 465348866 729049283 466409732 731731086 838032432 764865648 324341653 978092824 891979630 698314922 343404924 497118350 528324414 721486971 129957169 829876384 658636716 122193529 342854068 890921042 1066813286 418106268 31771724 259580669 259297141 263348937 303785321 742619565 300200850 492138303 180295398 719855171 895268217 820076115 928136267 962942581 346632555 1045976622 487675727 143092208 493424106 880007007 728741730 92179856 703432476 733957268 327326526 772685958 348975932 527471633 701380578 89064984 993664819 746841267 907123541 624223852 266811180 94789879 478506632 308804160 28687919 662116038 743466765 165920639 867547680 637905568 912570875 982334765 946383398 11796485 265210405 770636295 896627240 873596272 563969329 1068970909 601314950 913941354 406694781 780364769 604134710 312709542 500653861 203217975 370882635 1026248590 1036557581 377005968 263362712 250751288 126674685 963270067 78488335 575819506 451934178 945613918 483273647 945992641 816014639 808372742 603788774 787656288 194962171 386784795 251811738 892893363 673308453 688036075 625442591 724306876 51266549 996468505 470288198 125941068 1033809792 46063185 403999290 704335837 312542265 162267521 756439840 144098342 4931032 628935712 482536675 256041815 729489832 272504982 931195566 362013311 35079016 444604532 23375141 164880524 739373756 278778456 222747849 1008146468 101158818 522255761 13889144 626340910 121006841 1033573907 1044876967 229767127 587930641 822304353 114402817 379713452 880334569 471580694 237319283 636339 231876916 922963799 90257106 451814334 83093057 169601916 563947727 561259180 542191426 23704906 957224126 649207563 703315079 396264924 808264531 802436914 239872442 440146182 661557054 860725526 476813927 336035543 692966236 597740437 876640576 527241774 473904729 536236766 94550761 337898982 209316174 796813505 94056863 237211878 223416988 401389921 274550904 835457405 252721381 86573571 512957949 910657112 180828974 245005184 498583649 326513671 946067865 411757199 706641363 262844893 721493679 304556535 33452214 1008107574 947238209 319603452 674511058 936107699 852611416 51074350 100042740 783829511 180214286 422052033 297243383 338808542 329160114 164922419 939437129 270559252 1036778330 858624470 148240845 610488983 373505635 302416711 106743533 42452141 790164093 998169317 228617355 264776979 720245990 598965650 641484779 160070274 629061555 873504592 78779331 861019060 801177507 100419759 849162703 191290362 207823605 130231943 303351589 966373531 337760287 597479413 499107499 424563079 964013192 330030553 269408379 824532014 819524085 481929224 503319727 460863093 379200994 940173253 537701222 472669034 371557747 1068359594 165586645 415611852 810428090 128133422 184620683 485507647 157182123 360287391 696269927 828243960 297913881 1068634574 633333588 842772312 744002956 803083884 1007336748 520405571 434004807 987487575 741863728 783780902 563516929 700642569 111997016 173850070 270011212 117648019 145042895 573193506 865708113 796897853 1039331762 156292641 640054958 172301407 471669183 614445000 1964351 814232064 737273689 844964963 813821849 779665319 968954446 273209704 738928502 869700503 872293747 218925605 373891713 1062480866 870349442 497522477 215837041 575681378 227591774 743260645 400453339 593151803 1018466766 809116371 948958725 611690468 288483636 917429221 106707865 702458203 917249359 829613621 1042618167 328917911 486624126 402386799 948138490 479233674 291837910 704643055 68605410 988337454 979579998 107439469 63810377 474819419 134859038 824475230 437699666 852692969 363676712 273279690 659804281 742851457 525483909 571751054 212934939 1028886866 1007209150 30878166 85097648 766145009 748117587 136446126 556911035 919866225 439488685 588967924 859899891 997088958 267544109 592903603 69418807 479624802 690373899 603263612 589417594 395489719 825617982 163005557 31187625 529138066 43532851 680430801 165164669 462975307 586491013 1017546383 281893092 294992160 322793386 864729615 918200349 796562758 782306091 319570128 811956820 738077378 446171876 482217663 661948857 813118783 556069023 68880031 221854966 856727268 545335290 878079352 401671722 432057912 676931778 149085810 1035537682 234458436 900957889 574227186 437750657 792204500 565978949 244190334 983518209 747428258 87535604 723777546 526539900 71651890 829874671 517504566 912212516 49166187 276102936 823415153 404546889 298702425 502247352 479894722 352581455 780934149 921320079 883142921 1048227543 411194337 309877553 920427809 855669499 665748087 43424666 661777155 268707458 204513633 957895973 839823307 664019600 119450278 387779642 1064835858 586094572 671586451 576755024 1064844169 336453435 965625379 202821313 336079064 911489282 109752100 1021023295 403420485 304121400 133952831 96922442 600217984 138047821 793187855 431227505 505798222 133677379 334011367 836132043 592460205 205604493 999151736 563875742 668504418 458664510 417381021 804956365 722120982 137466667 958869788 259228316 423917757 532423375 3664878 851671670 336902061 97661988 437257950 911413692 406933790 267259837 380048130 526758462 379681030 683457576 736468663 117888039 585442172 118980632 188846460 289088928 788258212 110922081 926085557 1067792555 1059855672 411109619 133215717 413328905 761892797 834205292 1032507835 723169721 451619621 744363314 555558238 539970497 123055642 164767099 337203554 941756260 614223249 407490959 875529143 413093278 1071685605 367065838 230117410 771160632 311411868 666260951 374511054 772695527 1032719152 1007426441 86643771 603122402 413920268 159403088 153878894 96679898 836394240 802925678 625635537 650567236 111567624 18803636 876392183 489557850 581017280 851086374 48526413 949584791 1045517370 600222196 518352529 98349828 363714459 96619080 1046805110 610508295 333536422 678269945 793058750 835721031 640538474 135061568 1029742651 595979202 586324355 461213915 385809542 23601123 789949725 385104570 29606081 418556652 84662711 591343656 864186153 238568758 633541752 369629511 1018153395 451804263 648056458 958162594 67994821 222208055 943599115 17759715 20575825 71113241 789494551 986610814 634688435 851980607 951453922 695377555 570020946 316551002 509727498 79764071 271528532 872128120 676540199 321294211 384883810 962250239 674490859 301715822 933946763 317307246 841763766 883835664 215199014 212411977 614603132 296449141 337732035 109521670 177841250 362290899 765305274 172251462 828219090 588138344 478152382 1060825941 406800391 725089541 462986174 943427374 895941802 95767808 327157500 777364774 374345765 740731613 222820951 902582423 167416762 273713289 835714806 588716285 307674908 747830487 461674538 309311962 315715641 248030421 397312149 147354916 75480613 138514224 369322045 1069607460 46992134 515729879 47595570 957731953 992786426 404178708 95785364 602458905 898735492 569122457 455878100 826421499 692114497 557497087 459978820 433388844 142100551 661810200 574953968 37378903 597751898 339323158 131296139 914596450 989020482 438572807 962682856 674473033 335456612 356304235 492609590 244810814 142390506 948019900 316304279 807405544 317907402 600310669 1042046692 168573196 622061961 841836595 488919838 146654365 445204069 131877052 973186354 594156408 697260952 7434935 581962672 242355884 675868285 70815603 948907073 296564214 455742349 6116742 1063928331 534328344 410590042 345164521 107888653 878867643 200949988 565677040 582345729 717077151 305400160 724187687 270750817 688594149 1071829989 820691296 1021887921 688956905 341777937 181502816 797008933 443812896 302662252 501367695 121746705 335276140 297535188 346791569 626148847 730659602 959557671 195139153 468367164 387485834 804316296 348471216 906795059 401208503 973740764 307111886 616873373 889411509 183917402 614598618 373157611 357068058 608563500 393592364 85670612 93454751 966318626 566544988 733100749 932348474 875857385 849264423 648226561 11964851 514136228 681570028 1036965942 324575864 1021449602 243797430 812836129 420183351 289737363 291165056 801336009 1072168897 258420792 80057903 268041267 166871047 1036651226 258188056 761255512 376861833 912686382 855309200 965992786 56647938 604028838 844059420 679916470 520142476 430514048 528224031 262747902 133750646 456007100 927311452 837477448 3639646 973458211 415187224 52074542 908260385 738797897 898095546 842621433 1065033258 664600977 390248267 590779135 644820665 166384775 139743718 971472537 803110129 70221148 378795753 83200617 116974626 180543971 1028436194 612633897 50511398 14011110 105120412 536855737 688064641 490085762 485460839 732780718 722371278 747279687 50924399 368875070 450968204 1013166913 192759644 921829502 795621023 305646611 483682418 602483419 682838282 704415346 487960898 660212877 675695639 369122691 56067910 623938812 681685091 672644896 626679489 828319626 659416321 268664359 534467889 767793219 237452570 637701135 970171440 536125239 936167450 136848276 395828748 675745859 105315474 504922775 1064701888 267211210 784588379 982310063 600570335 11061999 12045437 703814512 704890118 614145853 1029370508 772768767 597219458 206312167 737278173 297062773 184358944 587075162 340404196 789473136 952822802 301257645 649776151 293532734 672682686 405754657 763502196 7458397 830431155 501660094 828404988 890705754 580013379 494951691 700622828 12595880 153735000 934004897 925290276 929406681 64256936 587102002 1025208287 958301746 913866270 343679302 1030666773 360104798 242808304 368876434 933128512 778790610 688772184 131890920 862348633 670838928 668418829 780573104 202123106 172519884 472308005 787492831 871306473 801979655 902131556 313643842 179353772 193807969 349299562 14165496 616397341 539798091 589517521 434964894 184681655 461109346 682015418 980491336 838891479 994796823 697582826 757190235 351737602 927515983 937085375 100730526 480368120 370219911 1058260527 443242258 245049114 288410556 649983573 590585043 442393709 454577383 931443288 264904997 787377308 21068296 1049031985 287163144 968355226 229666240 1070415711 216414036 673041681 116547345 211710194 343682980 665435383 542987663 616182981 684315362 879755574 829494588 455715315 515674425 778001418 640215679 538518347 238679918 137274791 771495071 509417216 786838711 475438521 95622625 372843999 524926086 990996079 457198642 387630819 225439058 990759064 7549810 266573286 170841305 944197173 770421334 296292421 551128477 981067837 140647583 23614506 147285889 270939112 942389961 1040381754 700664024 802979185 993080540 958640881 731233418 606915266 188844318 745389947 319724700 769610470 469112954 1053887439 1056935119 561979108 21187136 739565994 96382073 453782799 970236715 993720297 321955791 700973165 372139023 270207831 125345826 1008266513 630255869 899873980 156830573 1023169621 963623413 688208373 692437818 470084605 777703850 277234945 981725568 871244002 937836879 1029776831 701454784 732267994 1051547357 656400351 977572643 656740233 510843969 1058458469 157531564 560578569 614805845 498206332 635979192 908164116 231245167 578572950 824183889 587116854 544709389 243671006 318551018 638844000 180176645 66803359 159238642 545835451 455651747 375894967 900851315 200162156 3103512 236091694 220245514 13951345 428187929 402563093 218834641 142287737 512745580 179669119 618267596 359795764 361303989 751248011 206850897 268596667 966011778 1058167018 627868256 383266957 962115859 732577627 524186447 350904786 405831279 913787310 451105499 355793329 181551237 947782865 454245806 618671200 1033637094 972902153 986896034 625846643 1000185898 23130849 156954685 157927882 768834963 920875597 775053479 1032010079 392750413 553418342 957293162 392608130 676419031 499527842 805303720 13207305 145982295 727864422 581868599 69836068 383397543 169096983 776913190 720122266 503196739 240591426 874812070 1036929551 694818520 24946654 27183153 576697104 315650614 999904772 996647025 962118066 485147782 771548703 883292001 318181643 430615136 732889167 112985415 408652465 585712481 1056721820 650805932 462785793 772477069 857197268 686917878 264033029 406677763 39359954 397419352 1056239632 1004561376 924157226 151513408 791736178 758740421 998740183 242738845 372470354 560714785 338179389 169421348 283178771 649825894 301215868 984272097 73856965 607408605 860838786 375093629 710717322 164913099 962598036 618662274 559002249 239013530 386732855 342014126 150278863 464856178 238549596 623551876 824821005 960515388 413758890 843079881 823131293 246052924 399788040 788863308 358758659 217631804 844020992 596719052 124307638 1017432544 992776671 547968553 362521434 416492652 511621823 795537922 60216259 27879707 127257296 743511811 614396489 1068159823 187467118 476703840 24844027 108247129 81027946 408358377 201813924 859282835 204411167 228474899 192287812 528989004 17840181 492251895 692075076 266735377 328360216 741633406 908608255 576456178 1031815520 421489570 973396757 182106866 928921076 334781587 265724671 248024324 663682895 353780899 301415540 762331087 664380630 643854599 276411677 335467527 225796981 981123260 997088479 584636410 985967748 281956702 703070230 686348363 464116343 160133758 420943049 363548647 5473272 800272147 971004160 914885898 228178774 282002621 593842703 291903717 1021849571 274105239 563413238 888604618 900141057 1032943770 796551196 408892716 376211042 843428021 992875505 1033781044 107134063 291466339 127063703 10580436 898255708 204925281 90053928 405865582 342135149 474634732 979065284 574229713 736559904 837381359 928797730 497231045 167813565 15586950 390775674 273686152 89850525 736877596 712681192 792446156 450968660 62487442 558384965 76226504 715741496 506416689 447157985 751843339 842168376 399815941 622121458 617937730 984391820 812298965 537158526 418085977 426798913 60535064 727185557 39885876 370127623 138305569 19327889 291013060 967281472 722191977 646297675 1020162939 853865197 846272043 993468029 373358533 925275489 989470257 113818843 280782540 910540078 121777453 200384168 120286408 516437802 152179506 771380732 469390711 1071882703 1003623377 262771640 124310759 392528831 451469497 53776927 618857679 299211859 94857761 577053545 36340104 799078516 877754445 177764494 1002354424 152221596 720031595 425776237 572487003 26329648 500165390 524070407 753185233 376141896 950240898 540693169 127304555 168907146 5056404 1021418898 45132010 227376482 381996934 58986706 636388433 194930191 989409679 549018036 172098931 553126391 395197883 908152630 75640135 194033132 1070329087 496282932 695804105 135154979 392861341 1033811318 846774342 956048544 325689155 145746306 219522436 636215835 279259918 897489265 891777506 827816170 798359718 446328165 984807318 783086183 417892540 383430065 888056095 227229617 97422419 293065234 120791787 603383574 792916472 838005335 557544235 286083528 997039751 145365732 1009271056 122540736 61841841 467421087 166195695 753036064 1051805600 751114062 380576783 678168829 596902219 1034274289 727542705 908608194 1003013526 445337459 171145872 356274766 922760756 526645991 736370532 857340936 259911505 281859598 19453584 918593502 754918432 614887826 999026271 395090731 717286334 3935469 1044383154 219625717 41490636 746955946 218692007 615824696 86664163 660638134 246594142 793367086 505972486 878042000 663297844 846214515 871742116 131363515 194055199 1004768695 312134461 646445217 419571717 316059984 646432751 1033979111 557015964 288335445 490183098 645804347 415399148 571223766 397574986 865414205 582774657 1027909498 857823636 518925383 914090723 807275926 68405687 538621436 865245021 685476541 889307694 1072147390 1039897420 529659495 334716594 571242816 291941890 864000077 283168821 85158370 535361572 380985055 127292445 672749127 273581346 675924202 557917233 533178122 346083566 1026255442 584489186 264084215 568563753 542923730 310213941 80625778 942926321 452224872 698930007 1013922561 327959125 907939388 164588806 528369174 1042954295 42746094 246230602 78314277 129177124 446436743 503841134 854424512 402895886 918925108 630162151 524357889 613054810 935009017 653374867 658918193 558139041 105419329 803563579 388444792 582078034 58353329 312289331 52261413 577724992 242901268 44648981 948179252 36173055 906023188 463059998 227951290 308131858 210690683 223067053 589484460 249058570 684175203 19318050 516864060 48448037 8310295 462424952 654736416 1005112329 318380789 458266675 34707907 114720045 930960798 927812269 276485348 832944403 247436454 451454020 222157274 884833772 70364424 235397808 254034497 443741650 264417079 512994619 32111265 37626109 51988602 158963934 348745817 607314815 81472714 438880352 135497894 348435031 126108483 257564900 106842798 1058383975 701006763 239693050 175869788 557747849 644029076 30603433 134625102 401943257 385281783 912661628 935229839 920422583 34113706 890284687 755239322 321457994 650037150 1053731127 489851029 835735858 646282557 62331445 998491830 604681516 36084235 510371366 790576733 733061352 6406464 527244215 423587221 399813006 15484870 26569135 469202221 977537218 358107579 769812831 1029333887 863345844 733941825 281496723 766745471 412836932 880986595 182470665 255609330 500894274 577702526 651235067 812750614 113862916 781467857 176325939 273215066 795297833 1011814260 667221966 1060305806 158812026 597788722 596975116 963335791 312758378 478045531 563594440 359299957 708043650 886831565 418620777 243098326 41890562 181546039 522694626 69638032 488145843 251747635 4376105 21973576 689834949 280342573 351908321 658073033 643924269 878517974 98748745 188330305 806594342 99317619 572717097 1058949775 275066833 170113932 180070227 41048409 196351202 671282750 190212414 41619231 396997839 921277550 22501807 550660802 234966736 612335644 989670123 914445932 76999159 1060715433 959116726 985469110 575454750 211312880 882432292 387778847 882381429 246138467 482609771 632594548 362879367 951484455 452100688 540614806 1009099072 5309232 303784445 1043239882 34601902 1061677605 430085934 788224871 825763085 481984055 971078515 876459781 465326894 444404351 525445986 212951166 352896263 828699050 647779397 298277101 109259110 755921480 732612626 78074915 905420052 490016524 1044329727 806842301 267891360 637353194 455766998 1040409589 339508318 40448427 76423866 661913702 695111574 738710464 1003788051 816756151 800345928 835443541 784987636 1017950583 401541407 661367434 234468562 684870829 239216580 13162038 501916725 980868139 917189227 705831176 809935089 768126656 795903256 273283293 818719122 921074694 898262656 105226265 1041249884 559579767 993279465 881774117 954746585 781877155 777006756 21386758 601297967 249195016 314197823 866965355 557065417 160971018 1042507289 125249263 418497771 585829691 1020977537 113777688 994090024 90281498 1006288499 412971938 61552356 49657765 679778590 916864293 404072688 217898275 614984263 317781232 260858697 413404338 380111036 739444373 636185951 968791563 164509473 859420963 232783662 121971649 901341944 989557528 68716164 229093202 433384481 602388972 30934391 726776054 365777699 880312136 897803306 514168525 795169613 925478954 710931126 933864666 195716075 697582451 681973592 20440443 894161117 605299914 420779174 435326315 25324212 320627178 616491713 265420745 485155256 671116611 512360939 799026349 394459177 20149221 1017258408 298712710 25046442 495590563 943849805 869979269 1026507177 583925535 816682590 299436066 312700879 697135247 926224174 570755025 509749287 562327819 755015729 819237007 348779816 127616404 75768688 65334848 1010865139 426254792 353718470 1034807523 953871378 163761083 982754142 940631004 134846127 963607500 909914411 540298957 152263328 621497393 505989854 103752503 719158078 151722518 592421347 575852862 470906393 618448710 108673567 323510214 224515300 639932744 140674923 279968658 84130886 149862489 155322278 838648060 848985305 1072420309 1052745788 123322889 154640016 503709171 500447734 343552156 405483532 557701790 68824988 996545431 841610863 373938271 769098620 923261058 769194379 976359525 194392105 413818620 1043633402 765870770 859896117 62195163 364111454 916946318 306855885 359740971 890361845 243448723 289854546 1037782657 285852684 122471976 694758918 1014710390 670525588 749285215 581388274 220443526 112065043 215186091 631311282 227656067 935095949 741393591 310157278 984053414 1035092383 490270155 414074194 1004674358 8701315 1045659106 753098364 392588734 856981074 986327222 143529327 937587080 50744412 561644966 776916081 917576975 713444158 683597437 1043541261 639453888 876648168 542380171 1011159527 788810827 424211476 732940734 293929930 553714134 255090392 783655122 1042349469 586301661 170035628 620881188 348067849 684591252 58945842 992192427 657061155 361267330 514258305 29322043 510272320 817246080 587357087 122172576 147319494 293607390 563316385 765971567 228215729 805583909 954065089 962389285 290206017 972433962 5201433 463261660 61763990 86035718 450343635 779479402 881470269 524599328 588191930 60652018 859124011 1041281488 842156481 260269580 76404294 896586003 319395298 249108436 113661068 646198179 1020389123 870868130 160229099 697065652 422198600 647087640 375117378 163487419 186214982 165516519 650836618 904368536 308874435 23461328 869326444 248128120 235038884 419101700 857807132 1001629974 754164796 836367360 273551439 349854553 428890951 111622156 480439393 341043886 490640057 507939863 63589073 741808767 176902748 832078126 716705615 379421048 91569128 23368940 657183226 992683207 863268700 462005834 711926214 249433644 299555264 1012663346 893878451 615602346 86468631 541951774 660605869 143727841 920905865 561281815 526364947 3043105 430419962 493386342 82122815 856278491 745882345 65289499 67338284 823946813 393582480 620028576 232122451 443952939 420482734 947943722 816340780 568663830 110252353 275393806 876909720 856632574 948013624 924607352 625642507 143007185 66237234 199825176 817559485 994883272 856518713 326761814 972282512 339898481 489856262 490563647 327375687 724959251 143882489 314693416 879137969 231192007 8164638 652098065 99185505 495608744 706469214 588831676 945249979 222420308 157278871 696136308 82884727 1002486769 390106308 200345533 522680670 41299839 959272250 945833366 408059559 627203304 304561172 579219736 103252978 94100919 322589900 283926242 947131097 308823221 11721838 754898731 170283047 251827357 252285858 794536947 431561848 868958268 213321819 721178081 997814449 353294148 947626639 379754458 74920394 34671549 298206888 765841181 674118149 430812383 848868240 148516873 729719277 451540612 451881988 171151379 807542439 835388154 544391838 612903226 274301451 863500547 555512611 428502937 244375804 793987212 1009852620 199089092 819550284 290498808 69194701 263024833 296826411 1058055420 721888466 360920526 884117556 781818983 254168427 611100623 207924342 760259897 546652846 581825109 383797615 316040785 651884250 438264123 545760172 719925021 944238809 37670239 583521479 810704 858806907 527030285 862403996 123725181 441415456 870812899 953742025 845932567 837189391 30708805 1032111074 437355953 808555776 1035034795 309175603 979818492 500388168 697377818 61155575 262077832 60617199 903435911 807752858 638915715 884414806 525484463 1066658808 9508864 758419142 745641999 678795649 976579067 269738428 375990924 139174441 390792870 751374615 110890425 759973994 408735489 299458095 162533372 552107457 369800474 447320356 104955841 768681287 753849040 955241827 549287086 697074932 978598708 576267356 740462765 378190651 897937652 1027333755 273069475 375081734 946330424 850220287 586723796 47011785 456565849 577279234 542186229 513868518 809318933 847555940 634923090 684105311 563854016 561187695 746038176 433001619 875315023 929412638 676178558 263902896 615508896 922749322 472124476 724377047 171150011 360874579 188959312 941202038 647720716 494971021 115962643 1025022291 202363671 1000602063 283399544 968022916 60043444 89807042 132601664 410217294 312868821 165563910 412218736 468496149 432077924 376122740 655555966 698324991 483237871 251014462 346540412 144470102 895125082 249534983 845579709 611005403 393060742 54810153 532489858 475431609 131907437 995629974 857807750 80632362 773373128 304814792 922123664 668891112 183686183 577377590 713010685 1031251940 57603572 1033155535 626702023 96965198 1039685215 942271047 427770517 262091521 753968325 584164619 872194829 461664320 1071545699 144762483 930725149 281773823 189926462 99954372 615336466 503658091 94029741 77687564 116939731 654710476 1050879667 366116239 874830465 381714413 369049167 165837426 265847875 298157120 630080067 458517019 964625463 857375733 313627590 726550724 826302963 661410876 106541106 647832957 493371253 890931624 295730843 1067109841 414262395 715619871 708057287 1065294159 537905075 468330766 627364783 488186024 693163367 490570755 299945245 890464672 938111594 930166955 810475099 899626477 695037526 122521545 1054311545 962818058 738843761 550859919 1028550650 199743279 377587334 520157405 692702094 470514424 608119679 492237249 316625177 369021909 831099760 379684645 545270805 462173795 281109592 523608031 337883466 568342558 779569482 798212432 314705943 282140508 528616465 368361632 157365049 146962483 610997933 483144911 496127163 911520458 683576536 662811755 1060850021 574891136 939611258 729270960 865195736 1040558099 33064399 453290046 986520125 766266647 25232962 675818700 534774049 626420380 749881201 391412561 362914168 768747859 879381004 337553759 721348021 46968089 688011016 1042210161 116020727 955180716 360188338 192038288 137079816 416088535 205487082 843857822 738209396 642479482 570468001 323398559 142395863 929506847 747360922 797876419 1061076380 207049665 964973768 821859753 461692662 158122179 238271745 516983593 153537984 749335092 227696460 461177502 513203152 828798476 581209828 133316931 911662311 393461343 560182546 117313643 698884736 1038019455 656769615 169662369 696493171 1008252680 746672070 668523909 310447407 400629261 933052357 407475404 578606982 662417811 457193509 744019969 228402636 65261276 21299366 193616262 34398415 418157966 574525270 620078202 6831849 547036054 812533039 148454833 214834021 189558426 293911974 265540448 677284563 479531352 687663417 620906717 810020462 994320545 408672508 952159599 886881586 160531539 403353624 548135439 158245907 249771662 578897228 243677444 293319910 997352147 943463599 579817797 474111885 495216339 37290028 862554084 283507597 993320681 48815932 731351982 510433127 268863379 248144592 192026918 235225838 603911026 832488540 161613856 98874296 42792562 158176250 54212218 478380460 402878145 87788074 916535920 930455851 569753823 311616147 220945398 673222493 239774637 611421506 732117329 499429925 999308260 629434795 173388989 702041804 110319766 248443783 664040521 902796699 985982435 82825137 904705952 566947520 1062369260 423506468 30984804 423142962 361555977 293466525 763013477 195170644 751836980 271517866 825749257 950981093 1059056128 524581392 109663413 831142026 509662724 49796352 837654734 1068954141 388735177 292573875 1039387816 648393038 327141127 233071582 63342287 205897602 718823387 595636027 155034912 878048940 884362507 235231684 244004854 44736660 487334378 955058224 629694115 559438132 582145806 1004289658 396561441 99857446 533444499 1026069552 405158868 75535283 776358861 324007450 309999090 830712145 495188612 832312797 408936751 841121982 691996624 824560643 860724852 513029059 385699720 542760901 375273011 121059902 758181878 364532794 85520918 967187444 306355774 564242637 99108564 922073631 420839869 1062887535 961062275 1047789557 844085395 477054133 1040151050 1037503236 433758594 993759202 722178340 752536983 1060064412 446459209 715780300 243477829 318598287 638915137 407347622 801686915 619049139 730140374 355594450 742899019 670763460 655201013 685180791 80654399 622451238 989825714 874539147 92475491 204575907 379660101 514429900 160600152 665837202 694444799 43247768 812366826 1065871334 977673958 669698070 254336807 108596870 34942123 555718457 602505430 901529837 424210933 510915045 1045869036 655917798 290893124 995970141 278300707 1025059053 522170298 820133535 335394264 331384000 445522675 733400638 161965378 892114791 862143322 875195272 188052278 407851981 787819237 661422265 676613610 864769942 695512631 338951808 491435162 567675469 1015745107 864914109 833451950 1063265046 47601253 405152314 731404508 653485882 848511256 155476100 560195723 1067522264 144269289 659708602 810140001 163298276 946819291 184046297 480965673 592238663 4860253 654321600 44626092 247912081 194033620 506447999 531109822 200944418 580729353 596446492 181633906 476077141 31864280 65468471 979765329 745612261 189484279 7846981 965812604 619764946 100427345 118475077 1031624294 221428801 259901836 5553781 996061029 416496994 809157713 1050128400 463923227 950110597 588760957 565220957 927517105 168760872 547497246 830433863 276155263 1021818037 83628252 322952428 444606648 499535352 1001813303 45901399 508389866 264435837 253560849 427926552 682557706 613888875 251916955 371713093 761038624 484092867 651149411 301089420 306876460 412220355 1032136327 945651144 654803423 603290277 437625559 908389644 38271642 492553230 618210224 463937906 522052555 723799143 638877069 700878783 226522727 706110562 214937991 1051986901 603035435 569587728 260501427 27886927 70783898 570255575 229436216 169799441 873322392 341891947 606815852 738167703 543661122 75977547 966670927 893069378 21222158 588316228 580325802 370373229 945630569 1057413269 78028461 811312630 188020446 179540201 156029010 492567678 791425275 1017121371 116105529 857279193 176636656 254048555 242595820 26759095 667650707 470862876 673050585 680497591 644625083 714122375 105012810 387528957 711308987 567212172 899031103 367639047 157342910 831264529 828736264 488072333 582367995 752861420 3721018 875814984 487018401 565686067 836970506 383689927 195813591 324461445 567771009 722947190 175523193 1031281300 370510428 1017780986 1067223728 57224838 709929405 1006389717 672693365 38100388 651635219 534282441 159216529 619438392 446527725 437233607 943320989 260833039 340988003 256071339 289296248 678015113 288344054 104991824 978101138 243468204 514151728 130136920 361928518 239036293 1013248875 597225991 682176369 548771657 364284473 800408935 104434900 104903573 601799582 1057699029 306431918 667773716 609944138 39212510 915850748 978105945 678831620 206469811 344429056 74733083 961950409 29964086 951542917 775686060 340133101 719667845 284493206 473349597 165114026 1040306669 432472321 117235906 274498474 38810352 823760865 863254279 797802157 488489192 1055652475 290640533 390448790 436878527 1001966726 391718806 6493546 252465717 903207701 991645709 848337692 564390580 564211389 413942877 576735203 47442495 31583945 98545298 143173738 939699924 498204443 489137501 154907409 731661078 317406303 1038961524 365265487 488527699 478357842 329552749 553953784 983886200 9931927 930740946 664865531 447631316 116008542 13044967 104678387 108439807 97403899 282761454 335276056 1008180085 876372073 1049064486 977041121 4382868 291771809 375929700 1054024154 395351873 468070731 855501586 1000744398 359744888 379797999 709055424 115708966 720645673 83238459 841708152 803771240 1015561678 1043521542 591085697 222778973 5087546 872338355 731994519 120380796 617656832 442261027 555108604 386016090 485676193 818287376 260633532 739263813 988892738 263027072 166323379 213030965 806290599 292401806 898518156 552095334 558402907 194909729 493731084 186892562 1054272990 140103274 529382383 3305737 614720218 911965350 731573637 817100820 792541445 297761313 116560017 1012572544 740624314 43519670 859443313 602881229 1007784856 596708971 1026607746 354147361 506572212 834614918 470154810 290078303 546670888 299775155 1038644716 327516853 858128208 1021561979 263736991 247804942 887144908 474877619 527675633 763964815 823606335 1023360453 1070506484 688194635 541941627 977283796 757723794 753100016 783835224 660119832 413171876 660729491 411535737 70521224 595738766 728639451 480488823 662368879 14270080 91977548 162543231 137186470 5213172 877036518 119254813 499316505 179869087 1004182015 257678094 825211809 570203080 406984444 361698825 463300921 853819770 662851001 688971286 355812611 343634716 197331978 20256024 862660631 932791950 741146245 551140065 859367716 403874982 741143756 34207770 513172046 41818187 197767891 109440646 682421462 821706496 687054096 322534098 519407785 315086351 293994550 300317291 681470054 383462649 995702023 978526137 608373247 613207795 68576991 687231259 766821439 338543200 451968298 955754029 16690035 468220085 512563319 534101334 1036790729 830618600 974262451 546095180 532782351 491972139 383734876 488465226 60641056 306631282 985867482 1047498496 596120874 755888412 941346337 129060586 243596190 927671183 683393236 758490867 520301833 73777692 620009662 779687159 59032911 360310372 326800445 175476575 615171224 349753155 28440060 1037305866 768275712 141759980 442182910 245040757 769695927 871444178 455905855 119541792 819293326 107353798 1021071050 706264559 102775419 647800683 296757170 708856265 900118068 70892914 145633949 22292370 563360882 512439801 266669027 510098989 281895347 815901317 529808594 604064828 348874311 857257661 136127213 42480235 971249679 1048145689 987322073 152111209 108137421 819001831 312220038 786964942 745413846 954444102 28958883 475031465 933023260 136813849 980925705 350522509 864503570 899888803 902169091 767021302 730399026 108378096 37062285 618766025 272139821 913934020 887205767 318681209 807816662 614148654 978173963 420864152 562856261 159460285 96326369 47127713 355439998 130707514 708456432 1061273968 1008047505 584932214 971893623 1000994193 251954297 366727720 142791324 178499821 449833224 737134063 168585584 167799944 584478361 343516078 126683595 206524729 573035618 308332148 567373389 917033156 305326458 991233716 221353614 442255029 167945767 174205516 382175126 640174367 660459454 947121522 967027917 140803565 306679509 764841105 358213544 907306695 576326528 355268395 374110697 463736171 66893931 427981769 221964763 259703888 700413404 1072176244 565822218 21727250 36051917 258560187 833672608 930682044 169212625 13438894 485083393 549808121 723083225 878028207 419996758 962095869 500529145 969459432 365923433 685031063 521529590 303167976 1046550234 1002515692 512084046 320441401 1034329995 40268871 485796728 1067207261 340813501 75803924 1031789637 1044868259 653308725 731868372 228164477 189664927 547791549 962162862 651884728 343875695 1018673925 86393110 853557943 118704898 623579286 275402461 302083363 177842653 316009845 992883275 830860911 465026585 386968870 204625720 968759014 90659911 193858956 733595977 175456267 885765056 296412520 327475937 522697060 136408929 106600227 336599233 325006779 538801562 128683843 351802271 358495434 705112983 938068621 984269264 448090012 320112673 654734174 179161823 565359441 132010533 272247042 363298154 118849822 849514856 208688499 215355435 684927262 26930225 170026459 214829280 173215007 395008363 489963105 165201928 1030952038 758895135 571641878 577939638 1018141400 198231014 558674795 20554142 148639257 958187563 560537844 673796998 348289523 988605408 285323617 564151976 552931818 223836818 868226951 842251288 714792688 505061112 630304740 893181433 85963147 54278547 64496754 889386428 502826686 570877254 509249679 224162365 721894515 62445945 32016226 609628502 808938307 217398035 205837824 574625491 255411040 448817661 804695999 222591663 253901445 396642058 104181894 943690803 569389005 90667359 148993006 908581287 217692406 777398311 58322974 855344926 1028351579 123145294 471925601 952941399 400596202 415199852 1019875936 979091112 633586689 6605209 281931322 1038693075 973840525 316875720 1014556491 408807630 944910021 681428443 1018429349 799391326 957057083 221558511 180021913 1070047015 309055179 565169016 471377580 451477117 511908971 992503595 510583972 194070097 929860695 1072357963 392102672 547191276 733262152 103102383 109145411 255499548 508626511 667449833 536118855 597547691 75112035 560760442 764679639 290842336 705876642 287093206 1054492851 784487588 861464880 79198210 884911751 179026422 306783320 482143150 1004335079 846518495 958269155 354962030 730860733 5362917 743143655 501888451 484135060 936070975 120431567 761093556 960103491 175790817 662673453 587386059 642373852 965909077 643393148 946446946 285858646 474207573 844831392 375830140 164738614 200983333 285845535 74637519 6113946 176321088 472760961 992008826 220711515 34283185 922463543 727945580 826132504 131803643 819576639 516310671 550628234 99405124 556149301 823430617 512455118 203187556 190712092 838498361 901710420 76093613 162572342 969333495 8761094 836071060 34022163 190917826 168233273 430701511 184045889 938348628 99654854 568978677 696059643 125706448 35612028 371564334 490581268 687373687 393675926 409100916 771542702 127375753 105659353 230729857 666691786 111343386 480834472 775123490 305414591 521284050 632072705 49144335 187616986 946610001 701525769 786303643 779655012 352664117 158609894 643511090 128246285 795486051 738618339 878932754 151385635 110245602 93341629 771897935 277821944 916384743 852084066 899950278 484194281 831080508 319044741 412748447 120808522 667858165 1020687748 695016252 356309433 957231976 407812365 473134733 904193198 165037588 129430967 795831659 210012153 881408949 486360279 662795791 133831049 871984153 254597169 207718974 977660383 205841140 986001399 1020139264 225308961 825965618 705667071 480120681 1017116741 322945616 118588062 1059485941 176641266 973135172 308626234 32302798 517784388 935785574 1018234438 764951534 186078647 994784724 348142999 596279741 515391451 44149348 1001016974 585806090 1028145243 290794663 870522079 869105958 459007988 657437086 662673574 325193550 329744153 863350624 363664236 947205853 1010012355 245928227 470961658 692200286 982091660 696630267 108455925 2741788 146420194 44485549 29869819 338151690 96110071 304656569 744684623 54487667 1018385060 432650904 565668028 32318538 50583546 670216515 127913743 932280754 829302666 209511997 693655126 104909027 987047754 31951911 999598987 484683462 915254324 631292802 1047794324 995373833 1045506144 257158897 948078806 593426328 54291586 124932662 931739691 41521201 412248748 410656159 38481553 487378744 493747152 563978001 271313313 365322720 122632393 711218906 761087958 593350110 907674155 1023400187 617858161 365338284 399495795 743575099 101515129 928069940 987728725 130712366 342040736 303096518 827584396 636811340 746606307 565363453 895699649 571041709 820942837 215760603 39429968 968780517 238047953 470952516 585351839 303664345 833121558 734985605 472352345 868355192 34079407 269649436 1020268831 40833689 435477022 911555510 603658491 12612041 446611596 142435344 941519300 578346547 1062550233 668750833 1031545559 922147082 985789928 940360450 71872337 686591714 929010402 902918172 820104046 960230146 160210369 700531116 495586521 588575699 625757489 461628287 107649724 964922327 539349273 12902808 987285129 962162207 970700573 854039736 831760260 373846104 480985948 94450872 443531672 609615526 755088323 496557260 765627628 23149878 170560128 348166112 11016701 991143212 983339151 644566999 35846753 778840589 87332735 781187945 174729972 1041361974 512295952 676467760 720041168 1063657769 89719827 696666012 779444345 634853080 453493025 1040888930 980754925 802133441 180983539 441232112 582247808 284343035 673899153 93739746 187350951 802175397 1041974649 108742674 894342892 766626383 745369380 508169170 616138232 887953715 514847830 456238548 642183978 637754450 10758003 389678541 269514022 884156479 826169389 614200811 1013213080 86467793 347708336 593719031 875119136 946981895 317301400 264078906 148757645 102759815 555669861 620971715 1051986588 168367709 173539200 327147462 441058032 327988125 686982137 533755407 554530102 279772359 968760634 200906832 878753779 748528044 467701749 948630184 424819520 471421881 453377831 583207677 376997702 116234136 615688140 16014618 40911551 187046814 583761571 771286583 128154125 606351517 621222320 1019315164 311465799 839798286 163925589 514605731 760207438 780334554 1028291486 85824507 797316623 555264131 512136001 490207773 527413178 27468368 844633753 307754277 915328461 502409925 325173262 864723057 738537833 771272980 863326697 507427052 762536684 873520016 602297627 949304226 514145835 294422608 942569283 506707622 546301398 783169498 688763624 776168016 39161853 38094058 600090063 1029066961 9156190 688807497 747931028 137318932 645559394 343176063 326296008 310970937 757051628 449910971 867662614 445927474 758159348 578430585 616741712 968979170 217595038 889133056 719275364 451567599 848984659 588569449 235094031 530158385 436252735 993112218 528736467 283307523 944307438 462729206 361377009 309314647 850633465 783360369 586149647 572855321 547960941 442201726 646379808 555279914 1052588491 908386582 854589690 295014691 102963334 947486555 799548194 431791090 45671186 1016979056 390333872 986532104 936044928 547753403 389506845 337154621 1047296806 157140292 1046586548 961591602 1067280057 997201232 608254064 918929549 539635537 592155330 541064168 461057903 1001006527 127103423 103977929 818986856 279375449 499602597 123082309 53374210 132920468 1065184244 254297364 799104382 198643237 388928094 312780082 389063483 210664333 185389522 423846180 524463858 861527976 342306650 647785821 341398313 577776931 367173835 799034434 251948333 374603904 753714803 185475573 385204544 962122044 550864213 498703594 370247768 709374945 468154821 1033883316 758768221 777585917 427308005 6621589 171264494 95193553 982771628 280651935 38238708 668173906 788473997 169375848 84664011 389825049 462060684 741743268 688021637 80573219 635760237 742763418 925705458 666607686 78349637 898450627 961967175 208872171 306633322 795009858 661866156 843365138 42417490 50670271 513524844 933317691 894933793 154739239 857503793 307392180 371896942 500612372 126747377 975520030 326888874 620359170 894907345 359115656 355921172 902274969 277267754 406470408 95397515 507972841 351972235 709628 801227176 156736692 86622875 886716944 544453672 480019070 150788372 802075499 949066858 102966859 659363608 646110768 907131583 707293921 934914746 11868510 115745840 469594066 554839924 823133099 935617632 1062748165 108663208 517666038 562640437 71290717 1017111523 895454344 230084275 795229376 476980246 754624148 650160144 629067929 469992214 52202108 721832098 551973437 334825932 342925671 134536776 335706765 713760277 842202162 852610727 409578705 90775255 229407021 1053831194 205425694 488807825 391271378 268920464 482341239 248036190 744205212 503388366 602315155 17494032 13652492 10331463 834657172 1012144713 383582486 182382000 113605633 157003726 235244870 513802201 294750326 395250531 880462304 892782703 45355061 419534636 469203873 414330938 1070044865 452043851 712789819 205804256 674830236 8838970 536937506 448938655 340451809 150702660 873295466 679676242 6805643 574802975 743567029 68815528 917118688 361695632 649349498 747898113 56615229 358115545 595850539 1044606737 101738958 208926667 171476255 328168257 1043573589 718991145 741635513 573780509 106358953 310656967 143223234 281362695 525242872 686733818 564995812 718874648 804737060 660404245 740467700 861385510 642930392 324573802 1026080664 586897054 472712872 190227238 760607737 89637117 884073413 337585411 800053654 657651465 688494221 213816233 473486740 858692324 754672033 165832209 60035028 240829593 592210152 995551059 490333271 101262145 1040344686 957655995 629159340 719545765 26230630 54012187 617008753 684614616 249261847 406274182 273150642 846588356 609479200 814199777 1024446636 819500562 288196818 627926991 480318221 107246850 75795456 576430213 243630929 5763104 563100546 812381714 360268745 961237300 618532658 724420459 595864041 913417329 302210092 700595922 570339105 516400992 473291746 975269082 776184059 49722160 724548522 630475616 73593404 301171465 10805783 361518763 243134981 224599266 558736698 332902874 413989938 857601832 506227262 638382035 808062012 94963956 1068882916 1054225104 520104899 302139307 940152523 47730041 268726654 816024250 228833426 830095304 1046055285 315839181 1041835934 676077593 880015191 321743857 708144752 353264138 50238039 206064296 24055035 66457350 208631284 979913813 909795572 418857064 850344358 1003235716 245972167 1045611290 1000271939 549695088 577535863 14538201 949476076 252318183 844796234 585375295 972584165 670094244 443969254 155035417 960984435 608883898 106474988 689594982 489820348 831738085 486621888 959300847 122897761 923828518 356288119 892932611 878802035 88266548 884429106 656049119 801272878 429738829 698576223 361752596 275615682 819329522 427644676 586431544 249013003 583311851 482863922 1047903680 611520056 718482115 449833676 68266579 340286625 608853231 499484241 755135660 687237832 391627929 833713068 893214848 878177800 1061508520 804692174 786261439 366621688 206206348 498295383 298774355 565097000 386340005 109182297 135556436 840946626 518657398 691741230 1038238935 175166386 51898325 839435288 121765749 838279871 923315809 117873128 1040612570 600988908 642196994 818781157 554680530 790312192 1049493178 221886896 666877115 926947732 1008315395 811908532 254321579 577907671 700928882 159613019 182806975 408565691 1044548377 757631264 705085690 91548795 812065366 667079997 934925300 339096939 620847293 283810259 910677009 114175721 230807559 435017592 58551320 481245140 390372899 991572773 1063961664 674145245 264076934 556102983 295405688 380892889 156162957 112155335 909329332 467003022 438067238 411214226 261654204 915620367 528295513 190985021 799942930 730085740 248376659 961949989 411413318 192528738 492607655 845579154 576594367 813318965 934955883 265633949 507139978 975082125 609152352 392161368 165154315 396669965 720829164 991724068 928990165 925248908 986830648 326289250 756928625 387857073 952219157 942550609 45894511 1041014485 1006182292 616040459 248947722 323244071 249937920 628324321 251302223 840972322 1004413059 289511653 213560915 94096420 754396336 386759494 839297692 113753977 578005684 483046039 862930301 928139322 454047688 494191131 445610628 249122312 213223534 62203163 451144127 136830103 964322906 223116367 666868967 988547307 934379983 56516766 595301892 628942308 746963350 962119810 288105123 887822555 44957862 460682742 742246281 562216763 13058010 730355927 804390817 108304403 646609951 1067698310 374607123 302905124 590031611 1045613301 954332007 174564006 946156604 623239617 880879376 874883833 449983733 286664047 714218952 955757529 87245490 298751155 1041996033 440309458 909660548 62482560 832481127 536565235 377299932 302154446 222326469 820693848 727443776 784797466 946317374 251629476 1002562643 798759662 414081676 720739186 267796296 150370644 780164108 882797287 690189242 272725245 132766351 616938830 1007812501 736792863 855350239 296040651 594624084 317135291 247600435 316276437 246785569 970610780 640312365 398595468 862063914 764621285 708290681 119936991 991271964 353550387 387659491 67993186 43067833 796804270 654531185 783511390 341403207 217820993 493021226 62005362 502234847 960651777 377098349 84480898 939330542 710210626 788309594 240743361 145769055 1022257622 599667424 878394267 807752452 411673584 242059779 245785281 308126807 1019893841 1046015527 654487528 510846885 440017075 986584521 802770440 209322837 597706847 432293395 135717902 2103318 973120149 338326059 1065810895 287834827 388798148 810450797 276636064 359620377 511779274 116399536 456391223 716547596 62275402 824884778 515886679 338733883 944133479 691685269 1021720543 195922577 1055817207 648579956 407182184 862457256 131229002 72274924 642190422 456484430 976439031 283081729 621240143 365066568 483030097 452659183 339815652 324468253 829032679 294630747 231397754 827707491 1029155983 734375017 538084942 43583827 985640545 1017973545 674860479 409040201 6475475 536478027 1045569518 7294988 130252411 717232088 479458513 273273499 779852735 742820225 925104720 689847106 898199246 127143550 471411196 606802904 989294885 147307038 810770221 106186530 813720953 1038064146 109373341 847069761 49130358 173758299 396929303 418468584 876324302 304243588 317702895 163622211 384270563 738216517 532116198 106718358 895880610 388971228 188459716 611678186 873110983 191059257 154138332 124085152 567673261 69133731 418317142 674629979 539683291 1037193216 914235742 202855748 779628819 472540943 32450302 755814755 396066827 456395988 758378114 835943843 226127407 584849957 361576025 42135170 868973946 23360381 121221766 690166080 812977505 292572520 636377526 1025176828 792526080 236440241 375995970 838932421 677720542 104502365 767443606 854146882 27052010 1038584737 578876058 680181878 56968306 573181094 545959616 704355452 164709946 29028607 520009124 368527707 667111898 894801830 441560223 945013873 784403580 305907357 539059152 993764975 981880189 720007109 347837870 10763439 597836003 305012888 682953348 470430962 1040669620 270403585 825658495 586670730 223591541 793197472 511924316 424167633 666543915 29183069 180157079 886046503 319454826 844054253 876190936 270419113 782911222 120936123 972825934 930150551 555991694 605374966 294705773 272514290 240402809 173895632 375489128 464202748 150282268 408665221 352085990 433384759 606756950 937555249 900065991 797690031 890463050 1038930371 634270506 241685592 806394535 641857948 1010117696 911204503 250976222 699513337 62919814 78218321 624608346 173722829 1030571169 723594689 536737214 78871528 687310706 60122550 555912553 31222571 278416946 211972431 554201281 460101293 967294256 768824 55683007 326348367 349472009 537279129 280306731 957754246 590262290 868690923 828242887 380814926 348370882 424497145 411092451 741352405 553724668 482852570 200497002 557059846 790838446 942551774 910304151 384630642 232258780 962339211 836827953 649853085 715109309 413862152 620999140 687546695 370440442 54158000 31279857 281815262 225433250 913231139 274855544 435828347 582894084 175420316 657724222 715705496 588873112 985048438 876127831 230547594 98326889 753278420 54031917 937718052 34575344 696246035 984017641 366513975 171009847 102183249 927811056 718597170 414558885 397804512 414808051 177127240 916518278 628026096 95186115 382601794 91770614 439469428 417313564 518160993 378866112 111418743 913098755 595867159 851638300 830528422 702348987 289468749 187288602 405747674 484560320 134054503 192975595 468075271 23695010 536746703 362771963 18350940 986866462 834869580 214851911 381627881 80169068 159551214 959791875 148755972 480035059 51710512 237644483 137603842 970529573 743882348 541800052 244797160 430168911 991746347 118205615 615949503 958946454 271575645 322326347 326251598 221197666 217348411 100363259 211497429 658803283 620352830 586594510 354176513 292367289 379541546 768087818 76291138 943601973 772209587 476687703 847870452 140732647 652945918 501433036 1045021320 703214073 399732240 174158797 752319225 971015406 3209396 653528754 573828456 214501365 988856567 242226546 844728408 1030380317 790702507 330937214 629505675 251103643 426797019 549997641 372862665 592314340 449049903 722802235 695748637 367631765 718675812 231299860 639964396 894384106 615303682 18832515 250554076 962653385 248913266 469198336 900059173 1069943186 395550779 408628326 655862084 789929288 392438943 420565675 180147102 589863612 399009573 145030251 987821289 295856614 32034059 482861720 405067625 1050890043 480451268 860477646 306754625 502290056 561914203 982245106 225314573 6685143 86187010 715697567 166614529 335046776 586018310 266985051 919109400 513460412 8801927 1054807535 393463516 434116967 106303637 885338572 489346488 656560512 537764092 310810700 764839572 956560486 940665108 482518676 103007615 254957604 555275830 1061788065 636792551 400019286 956899827 663872080 767441486 67067829 916295946 147445368 599532588 783539102 37873250 591716769 344151473 614387506 949572410 751554058 277757301 924652117 724368428 67661505 196182490 267423513 1037539689 498558908 573619817 1036726040 497774926 121101038 1028704156 977166767 75270495 399226700 136056353 387234932 728559178 661547310 131264642 748795134 82395918 66342207 644037392 677362642 86756566 753120488 656379343 378551423 507884459 688319430 604674177 259499219 1070612446 890112222 340478123 838945446 143236777 1070004168 794098663 110591833 368984051 267664946 264934699 457486915 978520912 857013345 354614773 927651459 10931931 1069713324 873076363 868739159 627624265 694172842 415260848 52201026 166881814 608466157 279038662 1070163288 660569357 1024808462 828452250 115055484 490359159 281194104 443714247 839780751 225378394 1061053254 356976667 964942165 649327530 452389459 553873628 253491884 20528906 706624959 749502838 952468395 1061464695 804197714 26612088 393773939 3843932 791807624 659906838 58925815 289425279 24516432 660486641 340672130 335724791 602983480 173678484 209400771 460447406 237146923 526784465 162242335 258857962 1069256964 638767177 902572737 65849790 523067539 119761260 1068950327 187776976 936316879 827476550 1030599796 111051678 338166031 660320333 47632116 980519312 271493291 805359610 573529964 54306615 915482901 1034775016 391698234 566231644 720987230 144095080 531146672 794979079 120995831 1033831690 736731401 843035704 914222265 1031876410 303509533 438063914 377762539 727638681 487010431 32352306 888593488 283878500 691604257 112261161 644757409 130642187 965002743 425261908 118981940 44170488 483130293 887983641 1002300376 565109833 209705986 1033025165 699984254 791225477 49035001 70948481 209648075 940326277 668866736 161540066 519691680 280000626 591291530 681668655 1006879523 11801142 861693753 954059587 492036869 481775275 50062598 231836183 904143770 85816146 1052383992 839506764 704012578 183324300 852202535 808409919 775123097 250032203 87934159 461833132 288645710 278203170 151583451 466498154 274121318 1038608955 345593983 480700033 434901447 282443180 313946282 879038494 551720911 381663879 313572656 585413451 336715658 827387155 410482803 794015200 208108825 697759443 131050595 271050805 20294134 936973035 733565033 430621725 725431845 193636197 204470621 859359540 142963620 166246781 474912631 821214424 337145250 701378327 592954077 1039506609 735405528 748962626 614530321 328207353 748856996 850572104 824055027 327164925 370933826 265723649 402685910 816758683 774222037 475434934 1016180321 454944074 395603786 493906983 460993832 750106138 818103400 481747173 885288724 508585553 918757073 28450965 65849169 993808451 423557296 758860798 494554150 982722461 15869036 413951109 891213316 876889722 291213060 586459239 339981212 825071316 344427434 910548471 34326026 966924091 651170962 972144597 869027656 668374548 595455079 283092791 716867437 502499176 692154212 249096175 836062629 93715197 436745121 552127127 556373290 464215133 155421218 204660053 894785013 1040310100 428117446 909355046 142398834 292513453 427160333 472592410 598602731 959894672 171691089 415611662 217969921 123709826 97133596 915002239 697349835 892142759 942003732 908881586 813069156 958256541 959249048 337091020 98032375 197907887 4271989 382556231 284977859 164098531 1049597817 503588212 991569125 608556427 796666780 110460530 839522523 954441740 405811408 419080110 219127165 516100820 617408719 628183762 913755132 164702449 102994351 591102543 100286606 388312422 976906882 690141306 1037469954 714214240 994014025 1028582098 935114918 588084106 569507188 321029988 312666831 1063224891 994336285 892636857 618478222 127973959 474925802 160063700 749818599 375511712 690218176 263306357 742499739 361197805 847385420 140925492 690701291 568867678 210057138 1040278901 815577485 715649548 54864348 240574819 555669767 206248468 39251806 963702811 944385950 964804159 787220426 984985009 450486868 726789656 32473579 976501002 667578934 87667844 16144773 185174678 935616392 54710498 624858574 127921960 887192508 321089744 731430456 908779509 306809818 197458142 641938385 345065319 787000958 464923325 897922142 118803136 691308533 386575995 998818363 149079611 886107865 905402807 82591096 618205684 424263057 693039309 194751470 278144413 865763387 1024292252 300451668 881406283 1054949920 196735575 885367928 757245542 933101561 876923419 382613814 876885857 765038646 666693758 31181925 611163220 378482683 915039835 199881400 330746717 453542620 120149228 287990607 117948199 390629604 532159026 1001625199 724178690 305672339 10620554 281606594 160081634 695770176 905887807 283094013 983061627 673615209 735230635 763406086 750164952 725845910 905238935 390154471 759919280 1032787376 707556406 471816059 198049913 710083498 520337113 810503197 18610271 15261999 3219647 981262953 980745468 655964543 150070910 972448934 835150072 148907674 97431429 862227033 852573652 54464105 337886483 1049464964 347563502 1034674125 900059752 521233918 366185622 891666116 35451761 979503577 395707671 282588305 348049957 43334104 465529969 475374149 841377197 830009566 810190456 927495203 861344118 633347827 500729188 458006067 672696956 414400983 172941006 544378765 252917905 419599876 662569922 814208916 275327874 53886489 680229457 788135848 309945043 120781522 70983192 442952529 797851252 349559255 326881695 461138247 775790677 66951637 20738160 321525932 782922028 329778816 1031993292 759724813 413685528 475725198 44255530 203690798 539979175 749430402 464371468 454130243 1009425740 529565170 994652946 567061847 617817788 172170980 444034244 683346103 675333485 219380823 508835295 739715246 210711799 825149609 989919480 1017781197 98374044 638023383 871949254 655962682 595231370 746773915 819168609 885713431 549182630 330248987 532060401 288318763 342660531 95884711 426671018 722375034 216266618 257202002 709031728 307761663 964149323 616319892 634255579 544313261 139878764 501033974 374259189 521964494 256570998 773531901 338717528 143624829 529804357 1029284354 454003748 326912438 803938895 508005022 819802316 1048853966 397836352 1028499404 433678578 244980970 699994014 587456008 4785311 562291623 859082004 419100114 1061235669 945132173 638356852 624193755 640390775 738185292 583519427 379478491 768147971 561808529 346258693 1010177323 532249219 808920932 587355023 18585266 780966905 951666029 643096556 927938800 850187784 458352116 284168386 639286519 952813896 990050665 222258347 537935478 444265963 206216338 132752881 920685987 594735588 212194701 704929850 112014151 813562930 1056674991 352336116 760414795 476252221 404674545 1050438159 628117905 895463406 510448260 569084979 85468888 259346396 981304905 279908118 990122709 684918818 538640635 426462925 353411722 250946696 918930277 1024661811 471958208 514639399 745803994 306197087 164373869 528138368 7744246 251164983 446161943 53930387 618796815 728403166 741682567 1051151070 870652155 103523931 471734067 216607835 605077952 340690704 321361972 975759517 44878500 464508865 340553342 623453838 814103641 148951587 719762572 920975195 352572947 430274355 88435022 620364808 52606825 37409315 741268766 330801225 894998859 902523170 526768808 280188625 641705505 297840371 754485164 843320750 805183031 64887199 582780892 146896547 473954722 764347395 848362288 845060795 58097599 1008047743 855986633 3619460 131113072 994124462 881472042 449636957 386173436 162143223 1037227821 406484347 932116407 201718522 124301912 835240417 110656085 429145379 259197822 385372666 445115637 874057864 404942856 405276762 903275822 125640899 922283548 525904947 1011327179 1014740883 698250242 743280752 229819599 409364128 450301413 910719210 641536703 81822439 131241551 1059821128 219621713 607730946 802977816 1041512727 242069191 772732694 60643084 416640811 595520552 107421079 937810481 666234536 450453647 956912783 230694696 822139733 699122595 17069976 51215998 1062883886 410160 568187325 742297734 370557105 532978333 398323188 309054109 135878312 568456831 437947166 839862939 393561151 380120760 1021012956 945537467 471295995 638187673 281141195 383580526 270628200 152340176 160794991 976031808 794466229 317451318 219792469 115148964 923361443 56971044 259793277 116654714 546653026 70494340 756719444 586908779 998340162 636833849 482726905 758050418 894422571 494738539 960294073 204759634 133521484 22526307 86034320 36551326 217329782 196435223 495524824 801145188 1018022758 552043948 952395584 983277327 1046282028 710397787 17498339 497317461 1059080194 261506600 655594554 2580681 375705685 793432047 615329407 399473436 957333324 996995600 930279406 906423198 416248124 887940846 36003916 983820171 964039013 73282677 806609607 848861318 449829105 646626206 993753634 381680331 810346275 301821840 791379414 608703431 1042240968 382599601 406813613 746579892 827223856 957654817 806988203 957198904 326484380 510014261 634059152 532542572 121150015 234118600 712975129 657784763 905299208 84145544 16429281 434419536 832612769 94129135 1035445686 332998562 125216381 202788283 419595291 379999889 1034880595 812931088 347546413 488533211 189609609 107263498 694443841 712298431 233659638 420281227 239370936 447539690 103691851 448250215 622315864 302289580 374576194 633042471 408426072 545601219 365726456 207617606 767523832 473317201 107496530 227305846 596281048 975400357 344500830 969149203 624991658 1035783973 822849268 669469874 894136361 835103307 834105788 548607921 867959541 1056650293 120636323 185900184 494811261 534659136 239318582 527865390 568286569 128271362 209835438 463069675 157466045 425458385 190110873 175127710 460401400 89627238 261955390 753777895 645704731 975293569 989121698 610843079 804018913 547652382 787336503 830874301 550076356 675868666 584770862 281552550 248791462 114596403 651304534 974484735 117570102 737489721 1016312942 765331663 436085753 562596399 923664599 37475318 899858115 261039323 265932674 57541086 1023047962 833380543 862128861 175913126 96993823 159773829 240831778 465395475 788702726 842182502 501221299 915124567 276202544 443446924 98723933 910531612 426013748 511947716 660962310 894772629 697153841 901804425 63102474 133325361 823834163 502037826 856364867 711531429 945665890 348154956 519859599 635604298 1014315592 883785090 530107315 989119051 327940807 382464559 722174246 900407989 726891851 454891352 155496584 246755116 1025058896 608885936 480299873 148369377 561699803 173653140 1045674204 30640752 174409195 510000777 816399974 1064492833 199631560 83536359 242896490 516420028 814987012 981711462 73795027 289971172 750151888 185362782 998086310 211416327 1065340096 723916578 270277083 678887711 407235359 482758879 374189111 730529252 924479347 354165442 557006260 619460267 869361583 681394605 438926765 106303690 476843860 713207020 464579357 787342422 507965691 312050442 156306022 23484829 827864956 61322890 213047573 425911093 1052094129 253533360 989606633 973529939 890767246 737559654 954767107 711321862 503175459 791568092 1032702850 746003583 834317647 833312006 764651555 221751624 800229120 14683733 489891888 794452263 765330625 96889684 146192680 1062952960 1056474583 374161474 471872967 71735004 740492090 33518495 481103327 656213937 98516302 973334374 68885018 569551114 210856445 12040637 926239573 105661133 24321460 778083959 862024124 430132435 303291566 890578474 208126686 900010138 81745016 58847667 553575404 674757706 592856376 82798552 1045919189 297979315 364465775 267586352 763236685 579742752 440539895 656640277 570195981 770669395 469777935 145193547 449224452 229059669 643119866 934673109 198911085 963560364 852776015 485892700 982389954 354166254 927443948 332145729 505294211 709974886 530012851 577032585 953132463 384481894 14512666 273763320 613900395 776529027 397772369 1027159080 335559187 194887551 442226807 749780686 929386650 521993662 513704169 859940059 580556899 1008654491 520819666 265164628 97784008 112954205 726275874 1036763555 894585349 53510652 89993053 72393472 296054053 534211861 355211833 601346177 187596189 895354144 1033831604 593589650 559484146 474879716 1027356056 354893217 951606642 504872298 268409853 84866707 816568538 90744927 672009833 1066110613 880278830 736757564 38852303 462643081 673783422 669082135 458636203 570632037 648860129 571967883 522199493 160350869 259620926 461541211 977408202 280274472 726468600 684006342 486752018 126006585 1073417101 553670860 1006200227 757663474 1001958783 1014342211 286175939 932641688 460865256 413643799 629689632 609399756 464117647 635683691 1034679264 1048913410 105674691 211487700 373838119 471347117 956737821 413413816 11455317 495578568 1016901476 874234381 140890435 30067908 901009709 242676442 979813072 598273546 9850353 950655293 408290314 462668662 671856813 366027578 269374446 1016335589 1068436812 453420555 699233650 577486816 37546722 586961814 488040108 492008803 625529532 377116357 813725766 247532926 419222630 881830611 88300980 450254456 1022090816 448693553 304997321 72901124 152746702 1025951515 805146801 452846364 608713132 108409991 38323971 456925105 365178265 469110419 864093031 70738592 42900252 68743198 301441883 63688802 621176333 690969005 370712555 767526315 111776010 1049201691 79375353 918760178 419842985 263572054 994948402 1000683928 238164674 747469069 731528338 1037125986 693540265 753674618 593098196 244524899 806881285 399334673 713112509 1042911903 911632157 257372052 806613821 183914076 339396100 401576152 1020578798 745913156 962728154 614194921 602370774 943986278 124477928 88765467 713051610 442861607 686024423 1030896971 789958604 274998873 1071914128 53631433 103367187 810636758 1000084090 630003618 893963901 470154618 1050221019 233890876 39958410 927159609 797584264 49203001 180651564 565369902 937574721 869111107 553354929 446687375 617197093 686009481 475689975 288023583 902534897 713141977 34399419 914702059 272537403 166145167 471675854 622838504 498979628 789590854 394897629 698225088 969101224 585185722 143602068 469421897 663128817 767999796 57854935 324086599 890424686 758315157 469453900 452008781 726810434 954115808 106212443 657919798 1040760349 290743975 753217134 29335638 180435028 659025716 67397440 48350205 206907650 339255971 146415598 460725657 186140871 592810817 561150486 588372345 93319706 493112604 482474978 554771727 32945863 313966977 20274459 17673287 250682737 832932953 661873665 544034070 993574405 1048686667 214286714 619658027 138924938 268528713 785622818 627011781 4075103 421292871 145374527 133147086 802739627 423805802 748023118 859286299 154438633 941476961 282700607 24543815 520773602 45409163 67875677 991573322 809575466 208293447 294090978 139245318 522398124 623574941 622626379 593927541 449359737 609320884 351416749 38632466 846841654 993696595 305849172 221160424 879616582 440469954 8564982 778364430 821089673 283138278 999778131 19584961 614361934 946283621 392715153 367602869 460770151 236386270 489458157 403886135 543281699 336172383 954432280 482784093 884294111 148517911 895752401 499239864 290970968 78650706 381437720 730653109 579475608 5564090 650720933 433171339 751454557 967080579 333664078 196624552 365804578 756228019 595519546 988374425 467814764 7644804 691256615 330311792 800206646 832366600 36661011 449932764 992241364 401210539 66339554 1069923811 292466005 330968381 533287200 567103988 282027654 1048891848 1061354414 871101427 688089822 483155891 73629272 635967652 159653954 768983812 626264007 956479065 399174543 299253141 223421255 281461836 239179185 798704924 59034060 889464043 339178011 803337393 608646609 519393535 1037320117 176530414 480991704 827959628 1018996520 966973336 813452343 678723407 279616935 215973155 936844977 260665999 177213385 359620097 1067492440 1071958712 348833348 823907286 692002783 997979097 849261642 366003388 90257653 112070994 358962445 821712645 428920975 533412325 720181056 1049356939 754284939 12958435 119926084 181080690 927564304 132874899 47157999 670393718 284475730 190405184 961893805 447506303 803139124 389427191 840154681 983228626 96365205 285011117 282450978 342387240 965309505 830368052 631427741 167605714 920003395 246377349 424896864 665290530 979573535 612996915 558569182 941652417 880768202 520594515 846499425 83326281 878901768 816241980 526792886 200721024 942365906 776028986 751078924 27874796 222680482 416031560 740962189 38344071 174231853 927026482 281377063 688760702 825926217 366377505 830350709 903604973 361948591 863606753 771888998 484039980 777459639 104893833 641788287 901100599 283909242 505784322 787351905 438666964 1050469747 180106025 746843486 391361355 55887408 338875079 662871912 672805435 940501325 52298986 693760415 925626392 17840030 364320642 89943 765522870 900563847 20965511 843338215 434411950 951095320 891929458 282002386 1900770 424519289 410131940 878053745 949454787 524015953 780616319 828369616 445661532 1012958275 764737213 314000897 961119963 109798965 264983560 489004836 1067261508 240733341 336451643 749414997 830959511 834684293 413538939 475677535 95094565 886697331 241736092 189058307 17551955 946216349 1031045318 812806436 329298624 356169036 28008760 756958194 304532902 76728806 941569043 944358614 886441727 423673768 1040095750 282948233 237605656 562036439 1057440752 650761875 947930878 1020125935 920507444 987624417 1012610592 26995200 901546391 857917612 1040079438 931572692 812806406 692523855 801848623 947034328 654616778 918948685 894516717 376075800 131709326 340464498 586276091 497157742 227278774 656191061 318573201 891191208 416530827 510039541 325344689 1042086738 778965782 569834279 184965286 293604428 582563568 499322392 458584703 58419620 33927293 516909970 370074209 232164829 807164527 309945260 330847519 828515151 568935260 913673817 336493303 1041458136 767453606 744447315 217678036 642490582 967037201 246402921 793180206 121364766 977922818 507380150 271402663 559825990 172606453 1025744643 640088634 745674470 47398533 343033492 218994467 328973327 972509669 598206571 970989156 555498727 903995541 990706925 993928319 29605766 916999078 957061508 146675271 497451477 62438634 304172575 803253881 641892806 522083714 87881039 787455623 654608427 746450200 936160457 581800556 842554317 804635461 1026407362 603610632 694705812 22804789 401457174 500413214 965249277 586297683 787527779 202268048 1050186802 382624522 361129076 308758473 746817939 647572539 391224025 790181141 525597233 366534203 949065484 249321023 378235973 296843400 725020401 993430501 1060118414 24445414 291224501 455944621 94984278 14839447 754726029 698010019 49469524 796543494 1044678588 257580332 169006769 108660258 130826144 338037040 724449159 617618664 730492480 214400582 517548494 112379135 712620858 19214273 664773878 943435530 1053752560 429857634 295936434 716983640 442771354 953645406 871365989 687916068 252619108 57938070 757971194 513927591 69168927 428128057 781140545 678123456 687468178 272378471 255650994 170147800 756994126 715848479 794359776 351750237 875694231 188907976 764841743 125692408 330048539 141487603 804028510 447915819 666887918 289633164 563900372 1036647873 118459018 26020029 1032955823 963947220 5305686 197118900 678200533 669955578 329730703 393284090 1005579400 87241239 929009983 852499768 644256594 40616936 1053132216 302047981 695272881 110870217 580719071 256814373 844306774 464014247 28157158 275531068 366255076 908009803 778866016 1072356604 929351563 9797042 629093006 177506924 993148777 888213118 486759253 1071035293 197054542 61250722 959360206 191199835 673160543 1042221160 134840014 23651925 44625784 369472166 211912287 221629351 544010859 1044479152 733637869 170499443 790038735 914028293 447956978 667901544 360177512 1030196948 30995754 719974925 574024094 801985784 58409279 692931498 609533342 887486150 1061936567 920835875 639548010 676088747 300693729 798920846 855072163 320359360 687077897 28860407 625546321 202397218 535195057 704694561 207204524 469472664 166654762 347370441 698822192 469893182 724734965 684710977 773207431 165503530 149462964 490473763 27376265 810049511 920193584 1053700025 25829868 796718805 700518038 544024799 899560210 944814716 995927368 277357726 698025890 998254663 592077760 175393788 508760094 468088203 658740946 446817478 171373534 938703369 335919761 204150499 71515749 208463598 187572576 581371882 826991121 1069644539 454473668 510442414 823209532 1036140949 257388804 591238795 964333963 668839356 1001518612 116026306 462519393 715240336 469837903 356385867 917872585 886742627 127904579 715437070 248329733 295705832 185999963 210180 270527210 840950622 330735222 516786395 696938623 301098844 702853598 748965805 41300024 626276565 846211433 590664497 670917227 191227291 175084769 637907612 428086925 983347127 266215184 783927243 118834869 107803562 785929427 452938343 165303958 257223973 158544186 816787422 20504400 206038131 786422209 997120397 197191652 398996915 152610884 14681264 469739399 313891784 634040839 671846176 541602657 837671451 19584830 260683356 367872316 491248844 745082246 826022300 574914991 112656692 869515154 26391875 220687512 352537731 744746031 658027080 285200597 921302589 1003775666 388268632 861732452 691260829 1006518971 767206385 477131595 517498598 999367729 33354925 276282649 818631453 617716499 894659861 704907837 503632958 911519512 660745700 827250953 65464557 634869452 328447726 345262005 775353678 104604424 890866847 1038560099 476338305 575580550 1279791 604524863 352434745 434888265 158653938 331943981 896868249 877180022 831484103 467767443 456795650 145904058 653708395 526100600 307010707 81258453 110590280 82147712 956620993 128815566 123487636 984366472 18588302 785358223 518894562 646681371 50303760 216895266 607590835 1016776264 607693609 779123675 853935292 4552669 15375380 1007595287 198436494 118669544 804878178 597725250 883413410 657891093 873501984 676903476 953998931 788702011 200906265 768323201 324592188 927654349 180872059 1049204454 1070795833 92557166 438432269 592485259 995660927 778575392 186956156 504446121 454070443 767340220 345872170 874561852 677117340 593632059 1032121206 892020423 38301127 564394869 696799057 396902257 464173402 64704004 2243710 5751523 215779674 264647148 702071019 1020961114 226881739 379294101 440368378 1014184804 460875347 365763959 808530169 596557078 563362487 260097410 761379940 554085807 593537853 262687207 82392918 138952643 60491890 531935453 754623735 796080022 989717217 407666735 1051217844 158273858 35315892 976334198 602100525 619172873 405913603 167390860 711937415 418035760 649788544 33119236 752909232 885312952 370306909 678023024 124455792 1040917113 791134194 22354296 454006725 26826477 248493683 185510983 914352644 667153863 196279928 370164114 323094712 166673536 259272891 638941735 72206728 1036330648 583606316 355798046 36850733 433401694 148791032 278942292 724872256 777115522 34828108 560996906 132421114 79581696 685815632 859858807 293776908 949730965 597049127 613679123 721594129 141022941 772942880 998587311 1001736634 684319239 296905819 655056959 746475336 37252327 103972163 278288698 69664844 650092438 648957256 866618231 371062167 176926386 709398813 469042017 501690909 708103860 461488765 662602612 202276793 1067427358 70470645 15387731 203444554 733485669 862775790 308536948 830337306 430623619 438701893 1027575419 566851274 647205109 928133652 553588759 199331029 660826331 474001323 358095801 586605002 1039983209 643477961 963042676 989234164 495477684 745604655 890343004 979305362 458112012 938104112 949351867 774211447 527300129 816474293 484871386 326948176 824619983 583778032 364126374 367120750 460320975 810063072 223276917 839037529 158553497 1022977975 1019834324 560052861 693780014 69969366 832087319 215813357 207627762 174063906 728186034 1008834872 1006809186 812990510 714630476 215237228 651150708 253842946 1004379864 360477979 831273401 761059667 750966684 530211235 8368045 269225766 988473396 713184887 394934369 18136421 80002573 633678056 692209014 293443917 965698 242857145 225597628 420197420 76786934 534293697 651381617 996221836 540377689 526866975 952039666 328202307 228403872 721363160 651071756 725634996 528795758 330302171 757217186 32860790 111724940 804414201 339085806 26893337 814981189 518350545 413593738 125327039 548871054 527920643 601198222 464753155 377012385 575033820 1057221322 405816548 424549926 119363674 659597583 6839456 735018403 733898457 448548974 753943373 104257447 447700057 867973321 688323673 398945213 342288273 534656072 972691026 881144035 243614772 964529611 365373693 35732483 458540746 305335238 792576148 927177264 420065130 595795310 787670563 74484150 475726129 351743357 987913227 191040099 662615529 668511516 556229414 764315072 1051071249 567011059 386527476 438721577 656232254 277705390 112941832 314998129 792874974 36352427 39418806 496431907 67764144 121165369 760233690 511842548 540011251 29581216 144369509 372419187 289833736 742499108 588169693 790443502 891179169 169854083 611027425 330564460 993303989 24815519 424512062 782384385 744865507 605064877 237167105 4099483 569503001 68283941 650909292 59055745 986328050 273542911 504335643 511236469 535037552 1049792326 774696565 1041688091 200606641 877786442 733174767 973807136 782490404 617726788 1000257339 489727210 742315258 654853419 71802725 794527706 354978741 786818105 525543868 856877271 298716569 777516427 847620650 208998447 1016438022 207547081 955655928 999524655 526587829 318424021 81715659 63373778 1038636213 779424848 560623095 679591 641633208 142355825 592083151 696876931 965169838 694722359 964753726 438831110 798691242 496293910 325840331 84115892 1010837403 135219662 863092419 902624677 129632178 654439819 424115292 727869110 785582642 25054287 337192688 1025200868 774267250 652470533 7147644 736455062 386163696 210541033 168924445 317659590 821248251 558125773 416210207 518023299 923842861 735972090 47760602 602130629 572930770 664347910 187588308 778314027 808173762 569812847 583709174 829414524 452857863 622963151 94223754 808337845 773542379 970382754 533934819 593227532 997624322 784054248 273590175 925720124 729967980 580095602 45842093 790115584 438601171 637774055 903950266 59691179 160088159 235522491 1063441063 298268628 628160255 983300848 737063850 209993884 770617146 428301128 993807768 632236939 815341762 596550901 143572863 1064112681 3892316 751493340 690241822 573110494 944034421 466993699 543936080 79930046 702771459 1063514790 945414857 892336038 194797020 837973445 92279449 406961584 914808309 746390447 858697785 881433625 826763160 362842829 986788325 578334657 322342095 864620584 1007062526 953016315 930762585 1046214672 171701438 564872082 510729642 326649117 30510684 622211647 233938522 835096856 312800558 68358798 841604360 204767395 403235492 993159381 1042414163 614299967 304990814 768509870 358653569 919541992 1037579462 337265052 833377919 840375252 320191621 1068932889 344687901 577287605 1052515410 582948163 273615528 850863602 362724428 22238454 417863257 648168642 852714564 922113390 962818134 820582950 760113022 195481620 898317610 788429638 351042453 759316672 614206417 488780418 129510724 418056002 189128187 145171915 520514023 270200943 161259947 124720394 1055573744 566200917 531549617 160704869 132990421 775509706 441783477 208116903 825053562 745949798 996494057 520174250 994741873 63908935 388270011 246977513 220045326 1052827706 209988509 742365832 722187090 540530782 1053019992 446265443 877015325 819685805 315946152 499564066 940579272 311980693 730878610 775726973 175365527 1022665186 8201562 591605987 1039326074 153035673 410007967 975945342 567837962 336416855 474737894 751128893 1047295943 238391378 806702514 894465140 770855320 224136024 41519703 786322441 927931813 770202595 691779944 501619983 594935773 405587996 764852777 23161393 344881068 133931585 172170911 133729521 645715650 37636007 416849243 594636193 914263639 125034130 297284269 669072568 1054700980 716595664 165846880 747948328 963166080 1019954099 317841636 190237982 27052817 665857803 444486949 764983044 742082639 352639776 309539621 880088820 404494711 423025049 680777265 116508311 86794047 441012414 174972692 548445926 849748163 82474241 849691588 8311588 632148598 88759584 971636622 871181784 961401069 237298197 437830923 6079807 671454766 312502702 243233724 384586598 444607206 141090860 239505800 1038712590 260596604 233280188 660604423 784131018 25236890 336255252 572485094 761440013 1072257515 120805081 809615223 131311517 1021620638 289093879 524943692 19412082 401128822 375130122 74784243 969423061 530527763 443427401 75832029 44419565 971125088 430761885 239767851 972401685 911396028 72481407 667121592 740510745 53077129 1000405067 600695399 547538096 926351387 52268544 725591619 220175467 884278960 91941710 673111537 1003400303 52862005 168663933 372591269 290937387 881552779 606582250 229673921 950844278 245828659 196965829 203378634 257525404 324509012 139070496 240976713 988678192 39322157 836029980 1044752670 868838970 311414736 288275449 233546595 949314262 162123853 793800201 328636390 319754928 440727301 862231905 800983345 741179741 457031366 646618496 166232338 627296155 1008834119 394492469 447627462 650474988 475229725 209028623 304127165 470992724 548684387 538076956 480781844 193138471 559795225 842244960 68819542 592647896 538088998 502252331 359815919 652996995 165558651 471429936 631762333 965314534 426541062 227992610 236891897 622269519 1053282236 759162064 750952598 785123409 69855558 332960796 878243792 544168947 868850732 336780090 963640415 1065033837 670185457 663338214 580597839 254372902 407833538 505981987 623633046 130785764 1027194704 525022138 655573610 750745702 1008572632 193523866 353649917 301401620 844099237 963587881 661103365 482187406 770973085 307068786 805598752 393124289 175170774 498781440 938262192 213552961 944330991 228179417 431370617 114921404 939194857 474676372 408528196 681659000 266180816 707484400 30739778 822027364 530363391 6434955 358375450 268171729 218434431 1063534433 176247479 435243449 821772638 27964 961189268 584421912 738605210 138804348 112713547 118812424 835145292 274523217 250230886 250948519 904921772 255008449 349019872 410141668 457088656 336101307 82018005 202174702 62817975 589136150 70172354 180664111 185168911 368645189 178918118 405489257 743905511 602703459 961340375 832905371 340883031 575673066 448056771 749723512 518272182 69884981 1061436008 790648541 667415482 245633794 1008561933 1003433518 242019082 466443480 936166655 655276840 669500826 990728138 526856788 751248474 162122564 570517087 890874052 469369589 1009137605 368922943 382759842 1062070871 81888410 318585369 35781630 492509906 173346775 652307151 1001095538 93147204 66050351 1000681046 595531550 183358616 925232501 92612768 408083147 304444042 365255484 236046830 740209735 228133677 84647591 996366183 414432794 163194157 381082388 956747715 578806402 397760336 168528794 917472973 518553531 624553956 611932909 620391396 1015002033 747034614 709055957 769623804 1034717319 1009697908 754548575 468361845 393025996 626361438 412945731 689318449 857185281 1018840406 371014091 1055333064 902730854 248737665 975643847 961115468 804646069 553253616 877838502 204201080 371949697 1546200 417654790 501256312 280618818 614920446 708248487 342101714 405757208 911085323 68711403 693790391 464487340 197412219 500553386 299648013 999873761 315152724 1013899494 1073015393 124922880 936085774 884541400 933977507 1016529520 958735518 324948262 701638891 831436855 170662623 1047220470 194231269 301894442 895929363 1019518628 62328152 715559368 138183992 1015793371 794058023 327707238 196769008 596742197 1013632490 692859410 1057430432 390913847 21669593 951603106 711047987 267455089 38130206 291603261 587440066 801665432 406709420 852999161 1041467015 895525490 66546671 44984723 807305120 885035036 258041108 297473300 59249500 154386606 654609233 460655246 950154498 706274955 198065644 379953594 500339776 589257806 27416495 628603930 451165644 29903831 629186982 719896332 181017086 595045074 669551816 328022695 189792109 141413610 536300000 230868073 254398787 730927925 420350824 802360206 120233106 568170474 84781879 852714031 254158894 582087061 96828488 851883497 867384770 312469689 41936630 136791213 532948310 540237177 669956529 983857949 127036176 1073539898 751052833 47984947 772228987 979862485 16974107 127243145 57363382 498965773 1019255474 207552593 321794804 935411791 835790886 824529896 58036298 463761292 77562344 855708649 296974079 602764568 429181884 199812207 594753439 584155974 990531029 838443722 542303037 870584873 508794130 499853753 763363606 13516986 162813852 92848636 258447849 733842596 512154581 331950939 534587936 27542802 964367230 767534058 1067298079 1032070853 198203694 68206655 766538117 77251776 823686618 615925569 934717342 757097009 622113190 731613548 564966093 153382389 221740400 67526998 120832330 63129753 206684851 565703759 402272543 990878515 932801215 1024418241 982033461 776282880 54768572 365467663 430252429 725824063 772949191 936683323 258983006 47900289 269163352 243684386 408461473 355529931 610088558 349749968 933694974 430026622 243572865 499278704 129408512 481153886 197272240 968023107 712445012 911286103 137656278 767569627 469183710 742706662 455543553 876716147 84722037 1016005236 1069189042 951809698 672603412 92949240 902821890 616384646 520717757 83609945 852142595 573749937 546548109 989737644 111534238 500735354 36531262 247830035 505383852 687743071 789443158 775167794 895530366 288518430 578290101 541233297 1016301838 148967923 277841992 335975445 686726194 55131049 497815132 634650644 680733255 361477798 534841409 1051126730 741544334 191198094 1070030979 398612402 976605089 399467901 187860890 184655984 324961843 706333371 828452871 505596948 257446690 1035468303 976632772 408242504 698808818 133062072 1051913595 748338713 666662802 162774432 171255326 573732937 409195551 761772023 384189046 781794915 693244795 227222226 266695156 526810925 279985565 579210677 537297020 914490574 792759481 990546454 531173390 590398074 773587259 79716907 221163745 689761646 15325793 212113943 335788675 446588633 344046781 875063588 383867418 385604737 280054787 142268877 174630552 886597008 821423061 1013550876 635883102 635967180 199497633 510411603 1007078340 848720765 160719385 424663560 738429609 306735801 1044473134 702872823 486546100 655263175 152993515 556481279 908636361 542598442 980512911 852555666 267164349 32377516 464067892 598954326 86138929 919937341 731429907 442617889 949592370 735886308 720894069 597937974 634529724 435372428 149678849 335439223 817438127 787702220 545099201 476270398 997723782 309134001 748554386 947206502 192993644 228390665 35925557 1062501932 702333206 630668662 800227762 586634623 594669797 844774980 1041368717 913390111 737808560 933156441 614867105 605724971 122849522 596489632 548537331 372546913 165863600 459611515 997215098 807865111 855698482 801651943 556399253 242049770 1056770122 523037667 638541773 237404749 714704686 944272197 45291889 693520531 462369057 959314422 1071821760 610119338 1001745993 439319215 46366252 976645310 499912989 202307079 489683043 198183751 534017523 316836633 1063840719 153215167 269833582 295652741 428932778 16236017 617348242 886517381 228923349 81366217 567168342 464386598 539740649 507471219 213807980 321016211 406812538 1061055275 889545505 1017556872 712099950 380309905 1047897405 521693823 342714481 924577299 602172043 27290854 252066595 981738153 888871816 883802452 369736065 653841113 174263150 246609996 1004816435 162301299 732928314 134660132 898339460 949166517 315216758 1878775 91550729 295829440 366514965 782196955 326527539 357220456 757214527 1007829284 82609718 705713605 135547112 512270052 801221824 524505262 270610867 64709490 473804905 192489251 624247620 1003547176 46758311 289627440 101890765 272426816 588977498 855600748 288166309 916966102 322725045 504519513 32806949 235183530 561591159 909471103 306524369 128079894 748527321 879870055 228769183 388657417 743917821 602068146 389826319 64140621 487757262 26840424 534938300 549064518 96082084 10639063 748270298 387332343 385322216 240577883 24500678 781092237 367340899 938374227 313610020 610668154 820854146 46135618 207078737 891487575 246624041 954234113 405284283 509761989 404554226 762004954 1011788763 612145106 550311092 292147343 8882594 337844901 605256929 581209078 810648183 301249438 603583780 371656159 645396716 334113039 456435144 955774928 594869519 210969137 721972352 359346748 203227512 443996825 1044562392 155469021 568335969 347209599 277861309 735168630 941863636 314243741 451105272 807700309 874928954 557040519 84440224 806778440 910774437 200074975 453483073 88808225 1026929659 402652357 116161733 1016537993 730414255 753281169 356714808 564326185 708883685 662221892 450264896 78520643 791383803 919665356 168625072 482840898 1005324120 214624791 823266750 404877235 804123675 660593997 494899942 28247508 248446417 717021331 722225701 85244245 838093848 1039339333 781621703 725167234 902157427 841805325 773582142 321903972 406418588 125089270 238904462 193324489 139165855 725196992 240969499 346909636 102197134 386393866 423351303 923216730 627591357 561149494 49759352 474462747 976354710 176375241 506900544 253035160 1050502770 848225574 656238385 37452066 972586197 611227305 70144542 756650168 216232203 345879622 777516384 97484122 105487951 770931375 560300335 905470934 93637593 359146239 945589830 254507786 664456881 137635158 914435319 766144918 607075839 481263845 280828435 875225594 511069391 35389304 485961920 1067778153 533923667 516683355 10120476 238568930 562054600 39044448 444871714 456844405 431824238 682380300 828481671 365200203 188590005 647387381 1066053920 160144179 47791137 639598110 400733741 1028030540 480202347 868283731 842479079 600627791 252685468 1004638468 36397915 464909867 250650748 1003266000 166384164 519960123 506504006 679787450 566744985 970025906 24570184 909199042 887482300 235550940 1018148506 341012207 901092829 490326614 721822947 303078324 571426433 425408450 672162523 859814050 560827234 139669224 328063706 65523098 614727921 102245760 116926197 298806264 447948000 467968793 943684758 675312762 2506544 434218126 760462767 142856535 1024407912 422723924 245386355 420403367 407145157 985240088 793407219 972957042 65007238 281270776 836961214 69905816 866178648 195988198 61640453 468748839 96098382 490556771 603750382 225053188 661674534 660956960 716634676 298287759 843659255 652177305 961663035 892092724 956785834 62100240 137529847 60609023 205384395 751266861 443496501 457920660 973458167 94413270 99156506 752094635 950856388 860489642 486811650 849385255 840873063 1029735200 948620630 611020737 836613858 119686841 881032700 899319775 856134799 32852100 793134253 17729096 601816620 465537261 349478242 736078801 366304762 832113888 79106841 599579111 532992313 131570781 807030338 805304461 790041080 210035768 755894247 107685623 455003915 892952316 744327646 795559290 724856613 910378966 669272221 924383485 894087 943023147 121570475 693767117 54900880 640981165 947588866 321474856 440297197 330347069 455160069 712479689 351851508 750096820 1066858037 719200506 1012395558 503968562 708432599 856013766 282556994 132410126 547111703 888173473 650719501 718947743 939271080 529552882 265934296 776618249 364682669 1025225175 612293655 978120154 817095722 211032779 1019988922 783039620 198853758 952780164 94730103 367062204 964546062 436546530 701968830 241079686 743940023 602741066 830585451 696265821 519878789 916245945 520776120 956392116 473703886 708691618 1005914989 484241328 656086940 336966489 653739760 230658810 440253853 57145528 618930163 139365447 633039828 1068118010 771380487 896042200 553836153 394500336 984210049 761353867 294374950 530146796 66933392 181990733 989834673 1050217832 424233248 875512880 55258680 1004835776 732191788 573927100 462524259 944777795 826563981 1030796932 633073523 296057044 312946125 788555733 399590168 151942329 737178396 391674261 152434800 337183054 256249807 38670518 492639817 1009704463 489199920 748255840 49413746 635090870 26267783 1015436374 365647843 446206223 250111702 484168074 791712573 479168627 78683682 594481090 581653603 814383633 673998399 728932767 197358594 205644940 309775130 33685525 407885189 529103549 12945256 343636560 705981589 1045567235 109321306 187038465 204697008 5381081 69231077 842430951 383101455 358267804 628190655 1046599634 985657886 627169199 533173571 340819343 933726768 314580389 422705465 309867683 640559674 747651277 357668055 433420446 164130397 272883479 217348013 68747297 1001760450 838291654 879851954 354167368 302141536 356339376 436137646 281995404 542940477 577382440 947865082 745690189 703620409 279816520 224991627 718384381 870152032 960681558 507686584 808339296 745012009 312750226 190594442 669438985 371415803 833810930 696195662 660270144 424189081 46825825 214012854 327196227 593577230 131438168 638137131 767720056 937092708 392236283 863497583 451536993 877367302 234844343 1056744786 2359205 819329469 565563771 288170109 156856661 999708528 394365950 466422506 501517382 51578646 272233721 823167078 1003415391 686452750 826353274 62305814 237421561 117591366 865343159 304224827 750815784 1072531623 895692988 130834235 894044166 125417093 611818983 397318788 267480045 719483009 567359715 1025584019 699354646 596062193 957391886 661024369 823276574 127392002 39432491 671393836 495387729 841298732 921279621 80243773 569790116 1050536132 761841036 1037680301 1041966311 581241561 187048686 56859073 854199805 181583296 237657487 153254396 698796011 580112041 4747711 251315325 552906848 781002506 255669828 284436278 148617111 506854740 934156534 153179983 1055171393 582535213 864187164 687755666 160661020 847361347 1041109561 779256651 985383782 517998318 960166604 767749426 711766811 636741631 677358528 773880544 565978412 937943495 611765926 40988393 182301377 224746457 704757392 302334760 784315832 351135915 1066474270 347126866 68857979 712443793 548657327 833425498 105757041 733792802 226504115 476943817 200554548 1000681688 900764001 764726786 453081654 7202101 765198950 590070402 243204152 861672271 637563105 567800882 611881050 165538217 1016468869 822549585 1046415 257384851 73249714 243289878 1062708834 590307429 694742483 917968117 433269206 1027879310 456524109 93033571 222995011 184651125 340507326 180656736 185694097 364202261 200885340 40333715 723066199 422491958 86393173 561775064 687573871 1011584061 1059665236 1070697415 335400715 992708626 85262785 710953029 891266866 126957613 505242444 548345048 969178912 95252255 14745692 613718148 820692606 892622090 65015221 505358393 858011848 626944583 383399718 581316402 133737248 183090047 974283042 1066672746 531019790 821443649 162948229 743548714 685841797 1045037680 354592635 413180541 259028456 1069081420 404202806 158208120 832327555 556935125 243710319 12747556 101219163 1004582810 307086829 41126935 396373462 543142769 313861678 635305462 614720567 309065988 1006728299 92710156 321059223 475804317 474901234 69557531 383365383 49414501 681126790 508848360 365215888 297606572 289050851 8659000 85949597 961970378 977228296 512831613 497405615 192043789 1023208599 617969691 438043028 293275756 947611554 527481794 364533873 898012094 64562361 259291270 182714437 1022590287 471836421 578546376 603381103 91137136 819447306 632020808 226391310 548907165 1035759711 844315037 145619696 411981309 460572131 385423888 629255260 374069024 643745837 185349165 405178162 432866604 327859920 1068191825 1014575230 216722002 203601485 544432395 718708048 587407788 557382974 18084221 243612605 670136580 879654603 401108098 452683954 140080742 662606715 472013604 737524274 298569114 688484195 677434347 221533607 262232211 213384824 503111340 334639869 848722756 48800062 59657440 849963640 83665120 6859455 145393095 223971515 236510 542159770 59345088 513022707 945156708 270131324 776723385 507522674 161388436 857219129 288366666 841118621 111656854 267771589 185374917 226210402 636795259 189274879 1071129453 635488750 436406177 935367869 83446124 943084953 340805388 734720812 535460904 1019357110 271447319 84782694 534956115 64274685 113978189 498565276 468102448 376076059 499524961 693264761 721301016 746688625 627005570 939843726 186856276 770906031 56334564 671905631 212148947 710936622 824709296 222610448 82887272 778867097 867999963 855250730 476727494 363915931 394900794 539187320 506674020 406513935 452651628 984068241 426259117 233837562 299539831 643786345 929146345 537624191 436581217 790492135 1068967721 747377769 68805593 795821864 14649120 690059797 976200360 407100494 884412772 208110655 477568448 778158882 154609115 633895210 578501101 1008375030 110091804 801891858 475355959 640835693 377746154 609065916 735102209 408531904 564983121 937087213 273095159 17317302 864820044 11772297 540111805 1032464337 1019308090 387752250 706308854 436194441 4863625 298895370 745519783 993200914 517756789 246874036 706997339 96961011 715657006 1036964630 1013755968 454799533 991522122 632157665 610191792 456152013 711178328 988172825 514667635 728388279 437323262 260953690 10940977 334034968 360296204 544121437 760551481 6183178 694674198 791970089 1061886380 973329441 97199372 959014982 1073232424 190327547 85113995 933541885 317140699 284979228 637350598 335103409 617871630 470716699 228143305 426607106 623748834 330982732 686786953 884617709 695712075 629975475 745789347 460783236 643371536 134567234 749464029 675100980 713503348 584065519 203966570 607699872 852217495 593161851 9262185 847610817 984564796 771623277 731050691 200342513 967797935 295888501 327608848 214885049 294469840 861244219 861242916 339634658 125367051 977469515 932607143 1006830623 81154770 917401402 417670248 356006515 91952698 170274440 727315943 687867719 36963460 218701491 795482533 1047756665 350134597 281188670 217455737 684699844 154365332 500799330 305999458 456185824 164319870 827914303 819021426 305901940 766418957 459429934 954009650 925303829 1069080796 763816235 233691063 771191273 238332613 438155446 2167218 528690060 229383159 297681166 905591053 904372937 945245365 362481894 397186709 630536240 505169536 167775033 293975728 907173247 451104529 695456279 1034667135 364626348 96974283 50575001 45879328 13771063 1014637873 1019866874 313144519 684036938 1055006577 816814237 561397639 541304690 857232322 295980638 290495564 538835069 399891691 558107026 392609138 130674998 647565259 449705627 610811537 941733249 615020170 521913311 217167050 153885172 684677349 512660432 915275668 89368840 585149250 471185563 262742473 630438193 1011287349 785130198 267937753 193141964 958605287 801307703 1061196314 677337649 846587973 271576907 654684574 507197156 371674133 206653968 570263710 1011752503 917421028 1026583655 220938662 620241801 500032012 247293790 547079051 1001859856 34194364 523195814 69550171 282596834 806829904 220370657 1018924706 651490730 680871038 579042830 590054580 637124036 399438624 244091544 969940065 965783150 758529729 200293752 555949421 371737796 569101427 962644568 220945640 39029351 893180272 811324122 83417288 143706718 1004351202 586466753 725641675 90083566 89591618 441961687 902490161 219972627 886055726 717347924 748077962 304288399 438278876 176975182 396188961 790046822 272562811 649046603 794983853 606479141 590218675 34076752 27273998 87719886 890128955 181236134 411392722 300208418 859203878 761291283 990715723 420891063 809032401 980594629 564357188 378084881 109186908 87536068 730698903 987351068 153747292 563638692 1010450548 1049216794 583842709 741045285 322455484 136398625 977473302 234662534 1066498887 791605968 894443099 669188815 998360847 801872677 633122438 110536421 810175689 134546623 108460767 409759232 421094590 302774013 319212488 955970948 757619303 956436833 231367483 627250129 181833387 1002016861 97201847 108014174 877435884 790315566 1030791311 50529746 245277249 436639553 869739493 794071744 43266358 717064601 725348794 40607137 531296289 1069855999 620291260 103336170 372270673 837299231 557230551 997074444 117457430 485814811 1015723902 390297061 453987967 983170038 495827239 776699936 550393325 487352081 1025051439 195401465 663674641 335947257 11752564 702253656 93881791 988046219 1000302154 641247120 379731506 603632820 99608135 1039736099 946921443 621849833 734525488 998269006 149253878 182808235 654957857 538666564 316212214 282076283 46103853 418978152 521845511 726505109 211489469 489646995 658324973 484964855 229204661 1050695201 167956899 653163838 343657925 354393864 635255996 845467982 635419721 720118526 145064426 207924172 361476789 1006272195 642378104 982098698 1041604606 104584229 714368519 62664292 339405776 975321210 916229513 1042000373 209877594 900479420 356271054 497598078 738928398 347629777 717258215 682463141 496435062 508299382 390156734 330027587 661971845 524732543 641605368 154320320 701383452 327434265 356833586 471555657 787199996 955527938 1027594746 992743535 758399337 1042912136 684752864 167485537 292999200 126125674 766747714 731169531 333148692 379943798 172778916 144586452 686183901 1027536186 1004156277 170815606 646009120 330877353 1045105993 16548491 781398606 822919869 168800785 881834679 166915653 499878506 800353242 700116040 515500053 777434025 985646591 1038653704 518693070 157878995 274888694 305468469 175585993 518065750 400937621 1034312569 561302752 522022623 1038299873 138784766 601475884 328870152 516968900 502563667 151948957 606617652 154343845 321960681 649074207 867184526 380596400 889389360 513559865 107659317 495862297 662300495 254771812 769596947 148227953 238039022 151863610 937560840 308358519 427363003 187476595 339105081 192216938 184222220 1008797854 655005757 594493924 395021794 230067823 823128208 160623413 24548679 1050260717 1743595 234660405 147490240 800330935 611454456 841458301 559276109 449239110 988779047 844594618 522083611 396205374 597512546 743214173 332259640 151258868 383644913 200070699 604446807 422838999 157781849 279108086 214494898 950220753 462291578 546428194 817246681 1043949574 446902865 976681576 2634428 432357245 205146897 302216426 731937303 608882381 591869035 527125235 918926587 216642133 754470057 114188937 1062520312 595037238 235932486 89303198 674930761 903012137 716789786 785896944 41996416 334353021 402334584 213289858 769396193 1036497163 74441492 528423672 222476768 870474271 1038292787 1054314737 54523028 984126096 148909360 586258942 798322646 845976335 572818760 549962867 939282783 645281188 935597798 622704204 513322770 530677880 566446181 809974784 355990044 61843814 99296303 335832509 210589594 202971168 797433840 917323376 478208237 91696725 748778846 985110786 1024452090 733592006 954858960 477534728 131470526 911294851 686796369 653366060 653025222 241085998 87401054 782822042 665655933 268538148 861093844 431568087 1056582881 881830427 405688732 823857986 209982394 650208898 337376039 676361458 504999526 729414623 369865949 992593537 574209283 471638023 1066668860 65493503 1067596154 851181474 188596641 396860448 532001826 43555825 758006217 949031480 412780445 357128894 409824224 1009854969 691948591 197311765 9552462 136692890 45050728 247015403 594076872 988440489 562469694 353764729 695787273 242623099 545996473 32598137 289882979 219241790 52755847 446489596 998972926 350872420 765888309 966594526 747404217 596995544 1071490831 294481205 581799747 513098793 472139055 51818076 290693480 1032673717 997008174 800448547 938162247 949256615 853809721 712169714 121922673 932264952 129965575 586728179 863265123 134442917 621847887 506279772 492360541 725644102 24434943 132657381 181364068 1018371341 134440820 943906306 4350452 594901516 1016151423 442128521 408125757 814557826 1050785566 413009348 560573955 855987363 626770933 231697781 720357253 65884987 1010684136 431275913 295012654 834327817 89544138 115583618 332634058 959402188 373399776 649289627 317930587 946958319 41747469 509801459 443932571 87903010 38272932 1049715523 621874435 645112848 865508197 967268760 680056987 689317342 607389552 551793951 550666017 733113388 1052597964 192170942 3722522 491908983 224788768 156477104 273298203 940493323 420268286 145917599 893797246 73539598 508900049 1028960522 740450520 391495533 660143845 110651315 447947284 976018273 246712738 1015410098 1035903430 19314875 592157014 79934043 1067040090 1072654005 987229083 28559011 586985066 754991879 3167074 600667845 119714971 740768060 919755359 846331230 916437765 683620947 840979470 781908826 90041258 210760085 427688549 221623069 28731436 508448094 294160608 471068393 931203234 204126031 682616721 662961878 163881000 871256182 647657916 464696164 162758223 596109498 266089161 717300478 887049664 70218412 602415262 709700366 662402613 593729255 602013144 318702049 589004500 836661245 829768752 294117881 225744735 764899662 623923633 314415482 740093354 82095316 102354183 444370271 164270094 229918099 478165270 279702158 890769798 832674054 784918038 135683165 905316472 955126482 288213035 408333560 323639670 463633916 521736080 430787392 318717547 287562304 393936453 989639339 549031454 755318212 153621722 28353085 890381556 296016111 802755977 873188180 709711896 465926988 531911125 95793887 195558314 96342965 71256763 127041181 61575694 860157062 740271405 640657637 484000876 701978065 536852951 522596653 682990248 86833901 551122914 235661989 705549195 213468114 766179012 234572151 178841304 441498589 259541972 9593638 526270963 474404413 1058562757 317406587 775528219 427007012 465205667 1569669 516047602 132276864 422579929 929347309 622829288 47501035 863456666 567341398 418931816 115894509 1047786301 6691958 158742103 386140492 296556253 501567995 144566263 801282782 1057521936 604548747 611046530 804420633 342544829 593605835 285508592 580913262 1032644831 160687727 730321613 451655479 840940979 50519671 262763823 864939660 222820489 1030824016 1044949556 835974155 491760519 778283484 1244 285198201 333428585 900724751 915606601 317089586 855351945 932425010 188599337 981599219 320866474 569343795 1011935401 353358253 258804207 765789123 244757439 696639530 188798753 557850055 370479825 676793063 383891813 905589827 459486098 635062607 963342329 358590974 971184354 338547179 631432732 690846380 209827136 669245210 301068306 476484779 799172074 547129515 229247009 406096978 492650395 934954871 463014327 759198463 6410740 414851166 1065448272 310312350 821247853 488492982 479906507 538348829 966407020 401932816 234864500 892619728 666754536 49172223 592056921 257587488 409986158 765040895 98484980 961208782 266165794 380839457 518590192 259877632 78677664 289494891 759662093 409224997 950485086 1000440453 674451397 803136394 707504782 157928580 823125868 552217950 470062732 175889496 696336545 714474365 661208025 327861809 374906139 508242609 1036624236 832732322 646716311 1023376675 866933451 758697810 925985959 299039738 986812682 250436582 764829346 530644146 370496427 872597045 443021624 535164263 364931253 429094794 1058257791 995223010 918128648 117716230 57657534 845325336 854709777 918133173 801574245 368606635 538291429 584486062 696377458 627517178 722035724 741788985 756396740 264387889 92694933 1040075353 994818326 587933505 274811854 863963766 243689607 162755518 205933407 8562527 38698109 365115595 412189643 1000717796 118880796 1544859 31588019 683546538 535435150 413352617 410414981 891036383 659083284 3920321 230620866 1032108710 274135583 89822065 264766260 610881635 891843127 674078806 468883692 801270335 923843623 635395479 760589495 225236591 995045031 229693425 445524401 160132864 203495634 743889998 1057041610 190380197 246702085 120989776 330171997 488394428 538907489 39205418 778441782 9950797 434590640 243713060 237949704 952234299 968136131 642139073 667769412 571455876 591100137 977741091 21915099 979236177 332348793 28313755 727121486 975531454 793206269 99108406 412131754 924942450 740497820 555623394 1015618818 641278554 760746821 864403066 402932373 316683157 564699142 998853980 709085826 1059128470 35444859 195075595 681950711 645654876 1028217154 847584739 104940490 608633451 529380906 302475924 45991701 841525941 250112924 210585398 999524563 165990980 900571986 399755176 618378175 907266266 297417638 701910932 563055739 657564705 859070653 589035374 708453615 28678228 99816656 557414862 67665865 16409893 346403132 262220703 568985301 1066144951 1041338868 913898593 758559778 186783827 306993369 1033689918 940376303 485236633 200469881 629395154 971105530 444431497 883564478 471096932 1022634890 555645538 886448856 761945903 699944209 357179907 552833330 213575079 41292966 773807561 265932566 972865349 507710483 92176084 238631029 618844555 123485959 508498284 128832687 116128843 431284487 750195518 669122047 890059822 755210572 33501468 583473283 557919727 255547995 298200030 926553011 31133353 211720821 669472071 351241506 733065083 427253217 138758419 689836287 864082944 982023287 750510928 793834928 492804660 612660181 699405629 107166816 122124535 973972685 1032077659 474495018 553639646 415407055 935220141 487295679 643645714 196639878 906514875 368751033 1032151553 430215540 844865805 447067317 819650853 417064974 225691437 737533765 1064105131 854878731 867066931 639074717 405084491 473229415 370493179 598244119 598351901 86919632 602878785 323852453 851916465 329438937 497242046 626723443 968219048 875603502 319456065 1046932328 190127634 295285435 483710217 399913994 100180787 59919377 1036316072 623696826 2989318 370853696 1044968561 623028485 699644382 18598662 588109921 73535357 957068736 430590137 270480802 289945415 1033611353 474400048 73906526 215144089 1025066498 993585775 135193869 121326468 622733636 377386937 769947171 751592243 971521148 596488406 383294061 964947769 221010374 62090179 491214725 719810096 847874869 1007936475 842970600 689537332 444971594 55452881 938717612 126991030 1031991498 553557828 438446701 96419327 294582867 30282424 1073270259 931391198 442493190 319516331 162558596 985593625 1046625972 606455762 644108758 714930247 528496096 883526142 761324290 601982389 794435825 1069051737 371194501 355886033 59624457 1007255724 105784452 747411816 101401503 531037205 570611084 199244556 765804408 500042803 99996334 738013854 286988972 1010832626 617253970 961532430 659999343 128100854 518771445 71622947 304948653 989155886 346459237 534502886 622815147 659791816 400956462 176267214 295883495 324188000 104470392 623589490 72232668 937985675 789899095 745914953 190063648 862695777 834909695 350911970 498079344 257222257 920954923 689501723 851672255 979946566 386798746 479282851 364642508 749280114 966787322 296084295 487917315 607107943 166094220 929570004 839772301 817664394 496727663 198397073 488888008 415918795 345106076 650180440 151484881 289176877 1049385846 704314537 18303761 983857134 982658278 585750294 688340768 605797907 31764298 527060165 280880741 350549306 241490118 959759634 814876670 948567160 268288068 490534160 438654460 807856075 152621248 1043501696 459792026 250697000 336858740 815084774 441177775 784447732 871862963 517950704 147123074 849664962 584104153 1010051408 757184838 448065148 984358057 877778673 141250550 691575019 653957510 1046308475 83245114 977320650 647888001 445062596 555589651 530273615 735794007 1016828613 617371253 1024907561 409501645 1034586769 881142452 338102649 820968444 436194226 564621049 370068379 812129744 583329448 961739388 551395680 478209362 987185933 1024831742 884495890 150206318 1054007370 79284872 407943877 759769901 377739621 841558319 1003527690 737223685 442192209 255211270 853066719 440184883 48467835 290601153 833682372 284785404 692632275 1049019050 196836603 11483053 513190627 536679200 38320392 513034379 234000627 677133466 474201797 739231862 294183087 797443815 585981124 848042134 601910224 140131475 1054224152 1065288971 260164851 351146657 353609832 649097707 693505391 663103159 47513750 667932677 681221457 775683221 1040360201 805936401 685068000 1058957391 964256996 431339564 771007282 859883071 776701226 1058139937 1029434798 93291882 997996751 629782641 469950414 650938206 674129017 221320832 866559140 933922665 62595009 835548267 1027556757 81690208 26059079 1069378992 202238963 217790241 690278035 505282290 515450180 56615327 1035021677 1038409966 572463135 150894666 729634453 101975581 276516121 831053483 56543192 502248606 950889127 554076990 638293915 488248726 306210502 865466028 958183534 168467754 569453335 171180398 1062852088 633788959 1058353077 765312629 243049245 782553855 226547795 412984020 521286800 992866305 147631780 39268317 7616094 605600508 679193053 850045919 850068206 568289327 809085776 78961401 799364932 542266798 700214558 491233360 878267238 802116604 672645572 68626727 347363245 181538037 301763297 812359163 884718349 61331888 276491740 570105440 405074237 754737639 650211298 577828804 851806071 1021338227 2416486 1027040622 875195292 426383840 503238917 272721758 184868905 135802367 22551224 623403531 217248052 352663092 360631811 25542827 921850685 786428521 1065443315 545575998 453081168 409302260 324308205 314105593 890814328 551894336 1013070844 211614973 450319080 811742388 494336968 881862722 554204103 120061190 111837549 936600942 514156485 352674595 125706753 636802094 141846266 509596315 257782422 816215227 47936248 977454443 422492012 948734549 1004233127 191049894 578962400 770568295 965977441 164016284 629701724 895927490 440255068 468607630 890495579 921589927 534763243 773578489 873754009 664832661 703165315 32847455 444233287 903822123 209827093 672940298 119673025 60748702 286639938 938698863 120928538 45337410 832149263 95334757 916989423 943917308 852956924 408098088 274957585 558583044 124393828 388191692 540851690 674601497 935959335 931733455 96437755 699074616 952123877 1003924088 954332129 154727531 261453567 507035350 488141602 210032637 756410834 343488793 687312980 526941225 396951989 682187594 898361124 555765640 491276784 269528196 140229723 773482335 993888630 162964039 599361371 48046235 421879039 195422741 377295203 1014208197 895317409 62521441 1072469255 389344319 438013419 915021797 516794559 1022522071 380190818 945032533 468254828 54066367 425383754 818357885 782374604 538018791 654947685 412350645 456438488 542866407 29448652 1047538159 870262139 709967249 277875856 182336021 282663102 847906223 893737661 523916676 838010281 453643613 741441533 320051594 598566178 765006338 385897142 745317855 1060633590 819900983 70280110 522085075 532526082 989924886 912423259 805632401 717581151 761205588 662018388 437152399 958973167 969034349 564491052 760667448 75034622 363204209 535307429 900255628 358326678 245698935 747363055 69230459 108777387 981837022 429091023 870422801 798713820 527719872 690348300 318873834 1032703649 1038224803 617469285 34333269 454303806 558223338 718683047 704930209 551589492 646413247 978486601 180920931 414644165 285063816 509437736 989061743 908852823 459549790 86903022 118332688 955776726 788549975 688296503 560563610 694621439 932453747 421279125 228785309 927615420 578248452 66254928 665466950 759647552 422075525 251838551 828707109 254189128 182690704 606581905 1044686576 326822879 403077615 127071585 176342938 242682688 563432151 889518416 337537639 344773601 713799357 786010622 78358152 325386833 206420319 520503614 493733606 986497788 831250422 231662736 536048021 1024036567 26921956 852843571 430479858 1059993514 682218009 1034258845 787878868 843499599 634532344 156836279 241480704 716343525 194873134 468036470 753520218 694195744 731974658 827013057 1071031711 526346869 954259758 495091152 623445485 64111458 586396236 476136373 489854822 54930686 894654269 1063300729 295843561 183716161 326875959 4404763 323920822 1069296247 702622503 169833033 1043229809 708585849 651429324 810537552 915710766 18062987 937672086 183592289 156223360 253813854 450391265 88872161 73734264 603618978 766749237 1042790994 728044953 816033751 771598613 50150158 874493998 405066604 418937512 74172595 137686086 418541598 728766348 432821366 18117877 864550955 357899997 857428186 621126961 776892851 566989323 230389806 421512904 552937748 584480751 140149841 190843625 696156118 458019257 1033175297 605840572 137721445 986263396 692617382 828883919 1057981918 558610134 459285719 87202523 385108419 665024854 442265860 478053925 124694947 960891836 449542556 573449753 147464069 66111302 432520895 875114867 584181315 506093022 1047683418 942537749 53879508 477711282 944314839 180299513 150170104 321072542 427775788 451152866 550018094 744160487 1026724088 110058502 694505885 208333239 77566785 539197674 990258090 979953722 680395202 817702175 939042422 586129568 243466373 309131262 884070655 1042889830 521720699 442234485 505905027 58853261 4258467 953587604 409730096 508360128 429827390 138657730 235019686 797415508 825017321 743757121 1031011474 153609984 269637904 116288142 672687439 200253168 808443189 1001038253 924380735 207431690 67391716 666520827 257014825 651688560 185327847 664371368 31364848 559561440 752954746 64843550 6828651 121679941 868904708 108707537 1016070751 192163077 1044447049 785547047 495119161 1006452737 258534550 380550126 364259383 861074964 1056294083 204055514 575449996 674370330 226986675 634371086 62135129 493465926 859394246 76949200 134169445 869760917 547313335 376845616 500604199 1026276177 877839020 210010494 91288774 1047979058 421632517 715369355 254732903 183880293 78779155 162578393 126342846 617394619 771571190 960451168 591887931 291923470 925468186 978891655 939263859 221208837 989019639 770303037 447815448 139319012 162750818 675707848 753212055 428668382 989946444 487931820 372261720 1041553144 165441782 597399675 1021588421 581313779 297138845 733860796 985968572 482944715 425888748 833080416 130701241 935791171 531791586 1015605753 98715527 575637220 999196037 340293377 297828476 244153781 691590346 753642958 283207535 153304207 655324792 853700388 556566301 336266028 584213456 482199157 914909805 497829256 349529032 829486496 204891568 283412888 181719911 1057658784 798434524 800296601 193675585 966018609 346541560 1034700866 1064129049 956394587 792139363 714680871 52173103 958064369 938568714 848080252 1006002198 983323202 940302542 243338076 768232569 833738366 836121494 652249421 570077765 48164027 653552107 380553350 82766178 310277905 702320073 94964493 889179643 472283759 638313352 707476749 876050318 479848448 136746904 63744596 878091785 51025155 254411231 41384628 693254999 18385449 906675936 847959862 270240841 48361915 130067068 366777165 829952517 416196510 43500303 1069602948 447252258 72547688 107518600 870158311 912768611 174437141 238360081 289351141 477430738 895114534 1032550901 112263533 1020719870 945511797 689803378 436816182 514565909 236571035 633974301 767153847 398037122 80053798 66712235 75912692 897868395 295722541 612077579 150762249 261104922 306221110 29826587 763489703 89000094 149179993 600917597 831964426 749726283 816517435 268916414 622228632 292561887 768167509 860590911 1048178284 878915157 537617339 38077359 945596086 207020265 917257396 426934535 756573557 427736270 130565835 450849789 411755885 985916536 944348278 338775762 922405526 670459702 950760340 362136488 51489317 134807183 135090000 799345257 1032191782 156068034 933988934 979167276 172681930 156234446 678195830 933823540 817908875 334465562 362151454 605343536 130808087 896820904 327342979 373407167 898035709 899933032 2212147 587642174 844470703 175081850 526918154 858269477 552266491 982735471 871566074 838107688 624591395 881430858 723341758 240769695 292043010 649445981 685953208 251053368 206360 254148322 734019463 94881867 891998812 953665660 567202064 673452573 386731264 523760325 607329391 945891406 13622294 218186862 1003610976 255168726 753495026 672616914 517520028 1009074153 378017290 791037 547541159 206330977 517045086 1064052005 1010326466 431156615 383634237 419482949 282082630 730962288 446988135 49071206 1047055798 1005329113 181606204 812816153 1056858600 868888594 1027962975 158456675 946277788 429737685 460376911 362765378 124740630 732494323 73155352 763211295 981833193 422287813 679412180 507569318 1055456668 561483114 791010083 232144025 278755957 3904382 207908337 403742059 432840276 53748826 640660079 684920966 645007165 918360754 843743577 78851867 689633057 49025141 1010784874 1053857683 947821176 849662551 63574198 426505697 9835504 917835636 866226172 199550040 992833695 166508037 978714493 961189085 134809334 780899252 331617654 1000926931 273111366 207889516 423474478 265291499 846927326 64583551 141830096 977550200 600943506 906637368 204940753 541023676 227872203 480204912 705641433 509860750 799856453 929989950 149806372 991601853 577830253 342157947 547139175 822412676 778658591 671410310 38865647 860632468 229311700 613353269 831687599 750382983 350936242 200581975 32551497 304808069 505064326 198088604 1037502217 509392928 498282650 805840887 751798171 442970895 450021406 116332150 743974733 368674328 250177870 542991836 16407434 358736734 1022529564 443021053 269125079 136365517 853137335 515872775 340588727 805197234 732105803 172397806 203040677 481740016 198756192 755879157 282085499 963061074 1009327828 42281461 1072843477 989709646 684499901 581864783 920692722 491265453 614836195 1020691307 858478833 502958659 155423604 897101482 686835035 398568801 970295182 471579537 540055347 936005163 447291746 798641278 907159868 182514769 7237049 734598641 360425631 167041091 325267780 215666138 349349565 1061034317 414380986 344503123 124807696 510928831 482989262 632063465 312369067 362866947 182357699 129868981 79156221 59950881 1052014746 202419946 881408173 199461839 196227790 82113779 381572973 249080403 170732592 357496255 714467713 441789607 530871306 427097577 156105315 161037831 603768121 242839112 893115676 824274288 906005792 228947833 586014479 1034971835 956603811 168142527 437655148 158997371 115623767 747644116 579822301 977248380 239467067 105329631 312693495 354598870 116171558 195659443 887455780 956468147 97095278 1051567204 1012256014 519893374 965263481 393213464 247849412 393215190 938409607 953483585 828397417 386418366 564596863 661682449 745052599 791650893 806312247 914573077 665021329 894986783 311667591 670633710 693596418 971396694 263165549 987400990 297761870 370656264 852165746 471606442 930055196 256363787 884332962 213510284 172017873 170777003 850337490 754053442 713162676 1017283987 960441196 953703191 187570239 165353183 504077964 997733956 883772435 96595134 546510252 393806197 644082819 723602164 507401886 870371477 624225967 672361498 417701950 536721271 1015961667 170811008 873335956 294560829 433804206 989555540 1070016294 1044521458 627195913 793642974 312251451 896303194 711943373 43690493 401157536 982495372 818685664 836746882 418834680 167579432 301095232 862010555 277493614 817287824 1065097956 75024258 185526429 333139205 39919065 316757926 224783031 582600256 971442739 9601497 1063467288 198244479 991434148 118492647 992188063 522320275 219377679 661957521 1016884115 128651051 761585135 870773101 853108807 593023643 69453339 209444622 11682914 866202264 639639402 919720485 335792769 273785828 979383791 122332348 185934270 136862530 180686709 411757149 648385639 736279240 368472136 195358971 170502713 441892329 1026603219 368187035 331501867 123468973 415035366 425416204 969191829 248132379 218516728 548173208 854748988 1046464084 1001766847 666110003 816293890 170504732 100989539 900436314 959664784 134025448 540239817 4615989 682776007 205421959 1024540371 437255039 339258683 78722072 696818673 892731958 616095271 343473374 346435838 109569497 473943166 370122114 213742587 173160134 479824131 493453508 219327657 988317295 582498040 427211397 635926525 803679421 560283891 462983032 884649259 731393249 850052707 919217207 550889458 675760643 852691953 596252690 184114099 87406159 760603911 915860619 679594375 478738219 720875037 867288076 261087644 123502892 145744935 907581928 382922683 580682840 898167225 926605619 374806544 986501229 708571239 75883370 365959396 516046607 698080244 119858080 695826534 24196036 1041897325 430282702 804593591 598222326 1023773862 721415939 754142201 639414740 508150005 251030960 987153512 628977225 482098221 226055041 362362467 597161593 770760393 123924061 404482628 612810503 867035758 964483314 25146653 131510419 425495809 829868890 695985543 990168230 950709413 216965863 6530657 602957816 803990051 124846143 155992576 698562165 1053652965 191395241 26344512 980427243 904911378 445293937 739806215 908010182 211763776 480650107 800902770 700371022 1013404545 648270556 422660309 144351274 272440391 62041052 48305430 817887636 422654024 857570261 684970110 472598828 744596392 413860166 835746536 189211454 452321521 678266414 449367923 133624497 434740342 1028252081 130351913 539375622 635704493 877220378 116645181 431520687 344444213 984890970 965839704 809187713 411095141 694582003 795495077 277325909 13687678 852136571 111712904 279164634 350125475 190980432 883914182 134096734 796746968 313109521 111211434 250943786 732137061 1022139102 506114950 701985370 875445217 779143638 491558473 525674217 3878137 5710467 384125797 264625589 410103533 214211463 838968254 591208622 677176362 1041299519 347882458 1060301863 945618675 749377811 732712553 278347646 436297934 886822315 285515199 123963605 521833596 282683890 898974531 876550515 368576993 587465413 335790838 424767514 908630652 259637483 99850548 673195768 263903846 951757481 741514827 156227435 458227372 390786985 929021353 465255545 412167831 472591354 478738103 99385165 104487615 540822756 455259704 93254708 696015059 87732361 116457053 358268987 941110056 184846956 490674945 708465935 229145963 797923601 516134647 733653331 483752234 938871228 803161493 235002597 702730756 638111227 265056901 128535695 411724886 78016740 1059143988 453877249 822284545 875767554 660397291 372699677 960193031 1010543611 338805226 310925430 615873994 2883015 146252367 188729155 739948595 636102904 203071883 159063617 577762343 1060383772 282279388 717034019 427072577 773635447 989250768 895368004 448941191 385169909 978326852 115216926 1046110000 338629673 659410132 1041087607 512476483 881300168 312735187 458949297 727215514 1035589110 1035787565 101664936 910798932 773536954 390741726 259319280 689480339 474744230 76608299 633893430 309403424 857090424 643251156 818799819 67297822 778705143 364206581 210217967 878621987 630711540 731435280 826459764 941834014 853574295 712743299 325846427 403825527 910961171 246174270 109900741 725745170 879685609 599148282 862714124 371514905 304895369 397573749 575692648 185561002 750605582 884048153 127171602 65924136 772452941 123147652 168266096 353488300 627638410 47516388 728467815 303938830 557579690 442328127 370165341 712691945 615368604 591097643 612632773 662123874 403520178 782972690 409231046 1050170203 228146704 588005828 352743502 949833047 41301484 178489628 933961046 422208427 181855901 527998074 160325617 471119962 136325081 849190345 192800876 452821169 822258022 836519695 168364840 408269347 836276964 404944736 483869905 684936443 819284874 849472450 361350077 778564596 688802587 606363151 971161658 100803004 336071680 472975001 93327158 39554952 1026277824 981386878 751418406 775209255 959094351 356017215 177519904 727379881 553679042 307094114 725405011 586549511 695329889 946716826 939960946 1049338643 876616767 12091111 809025334 914314209 679488520 444721516 1065152745 530133488 494836246 345177978 247553466 756852163 18110367 525406339 764555778 754408942 366982934 78403354 508033890 711803197 614668345 409177579 189956282 281332761 738875736 153990915 865941145 798210899 509850556 908553354 912784067 310326220 893647870 403332305 805872209 151789980 778225019 372361381 11629519 701324075 1037504909 28894206 1005748279 835447839 735476554 912735311 1048029767 1019282956 172529319 736461575 427246816 93660453 893078510 412208891 670666927 939978186 701916857 150188534 365651872 650159016 347115777 832858500 217972657 483764399 810765101 542337021 131635690 102136820 322104866 429906427 489864425 907389287 831647182 431741822 827282439 732668716 467466740 324792399 767531491 207771832 747783903 34829133 78572498 782197254 1015534543 700897652 257554557 509793743 728986206 289951279 244274754 920187572 940972951 693391485 382960756 711831265 572269330 1059355142 297220627 65381061 756912801 326288022 706939078 191986628 87774839 123383460 362860616 240805557 838232207 73886265 932928523 785999032 470867060 955378849 727571987 267852549 142430706 540251996 334564638 945977676 180637166 223731907 272517359 397981470 735656575 178282861 143211469 690980532 427543196 570662168 754744460 972157328 414549557 934862671 67717506 424820846 894687206 789991625 977236550 984672520 93631249 712847764 106753798 366594194 615249069 29006333 527473127 17962569 277859174 403309641 217558879 304818424 781383513 573714493 412134793 102678152 465385637 389448929 164410868 459086704 740177197 213093531 254599458 660724357 940486775 151483579 1056200572 658149941 75292485 1072305970 619586265 383728861 518789249 971279707 654947032 680509040 969812531 542220231 724847341 461468150 109112055 962375128 144506541 138200954 297792558 435053741 810519606 793807991 118781648 640784597 652516589 75032380 297361647 334959117 184054493 1060859654 44589715 951622400 794140616 860818596 414440703 904820545 556775371 43810651 95829227 912728054 89522636 1023190903 810252893 952698939 1036971302 753209117 686465814 881762294 151237735 119877937 113790583 579402872 231416031 432198068 782367111 891243824 16141605 659138108 530517471 882489002 309999722 962215792 657158032 337674618 486937859 418244072 67340366 159925222 609141408 145695270 428943777 179418472 916830839 984363945 574680620 288493989 1070592228 980952429 540152214 49551426 577474486 944804709 618932112 87131419 765576450 535356445 192335441 105523910 695324066 349375534 324883334 958002094 88576071 576276613 930631263 528385709 93085930 700410988 137423238 386978350 596964925 942535161 915737027 697622287 624457576 801897656 159114873 362781433 393030613 436104762 762597822 1066839591 284121197 333321056 468878630 821653778 247384169 349027715 287010846 353277934 754683394 12534325 719089058 56207191 67876643 278271242 483043989 905874063 658711988 821858864 433501374 601776062 986271617 110697970 327622851 708530819 165712205 895482736 225491113 407544341 781267143 781077541 693117279 88642533 33534758 214655342 893832487 840620156 423236425 590534760 434081467 555031607 157601938 85898806 22117360 979357286 126173100 828480865 548499615 370445657 242878222 404404787 1033157958 84813601 104541439 169849447 15947868 775479559 218453910 431886950 916186470 472771684 792354929 128590321 697877829 937396497 732120862 840249330 163183634 1038363135 717024207 721261672 480931195 247725005 898521299 277547778 705620769 290526120 635349122 663888114 422981563 634174791 110322444 911995814 509418708 296639279 1009185383 620887267 124798380 542167800 182846389 682794444 192323558 537559075 559602170 428032958 1066228686 393628241 512908953 735773364 1070040887 156593437 105131780 403009512 754781053 186903580 46756741 776121870 112619399 885036245 604741412 33205369 182025264 159623330 281104971 16144553 859775795 1017028785 615322533 1055138502 917003247 917652658 283511594 411962706 899828566 785958590 1036202811 31494193 1035255841 1062043329 256820363 783048049 116042077 775246978 681815567 613580313 1021857677 1055602992 338450429 305737159 410857963 129241983 611111318 960051327 980696686 247260882 537928179 777787614 1011148004 724743926 863033936 1018491156 1013293879 699250595 146859610 61201214 428672991 1035738680 971902332 650695808 500549219 518996103 548131863 732897679 46420652 1005980353 793194371 2869912 974932855 792918740 489388776 989200483 949084627 578059379 841305010 221646451 532075572 86102588 385171113 455497194 953544390 899249384 971729060 744301931 463244576 162624541 82008635 974973036 394436527 882618456 196909047 227446361 747428854 853332643 1018165784 323221007 133266589 975074915 454260705 247422846 906392229 911279606 1040380470 873229353 873861922 698033262 615226586 1052882274 357341151 240823965 320585147 420183337 921106269 596766267 74624305 551038164 237084486 455550840 826481657 112558559 486165436 749356010 633200470 602956922 413910805 47868514 991256496 747455572 324073113 461143192 353914677 707469150 414220099 873520453 778535304 262182492 695209543 733102006 143411491 1016355176 530442083 932569620 302178851 687277926 837304200 494285879 267623982 697931577 156562784 143685906 371635621 713255256 1039880922 926839496 568368790 218941859 24336343 238364782 137554771 313177169 455738517 186274220 886408488 778361844 150194671 563285994 334743778 187457476 193129758 646145925 526079043 791863882 7883669 672946129 406664479 653820904 1073697115 427091511 114146960 124920631 650478585 445700137 257612000 842812031 203761574 164471048 280799341 279103219 338922689 508592267 554891584 988407539 787343955 628605638 550656637 1019711380 269662755 466707217 1017881717 740350659 799914860 495377855 17591779 784437766 135452954 468480165 3645940 672110623 1040880963 771532220 276252488 764198593 1042882080 822708907 504898846 814448249 180637627 573031461 562753413 549843365 70181055 1054351207 1005852935 783914061 517216200 138781725 793449662 394365351 1042894874 397362453 602594526 295594320 481482184 473423810 200294439 251946153 895154251 574357515 277051578 235226470 234980986 331134554 1014146103 909382175 213745355 667686164 79806023 1020727959 1033939794 834478514 268185761 990325929 932598105 149502360 331380720 430693842 35153625 13442876 820670944 745938487 343538104 557558266 683475483 889371093 12987521 1032456959 259259172 56166024 417001599 142346389 670259657 231897592 105131080 724096112 515277311 741459641 235582011 151538737 7752879 956706682 154816159 667655075 490476039 8568461 80264369 367161342 770336996 285286744 133844552 760332046 823818534 552480185 830044395 1054009115 884062546 1007109531 378087273 571020046 726758264 481769208 1034436057 967563657 958113997 182518133 379019382 159246704 162040405 966202018 14293054 742299782 972983436 781064394 319297335 681570136 980483165 453740424 650256738 861013358 26327629 995350966 241385236 693978734 750599187 162775244 558482570 869845751 367329594 412287389 793143351 798007340 26582527 516626832 129659510 82946921 1052967225 1038013672 84061015 1007701209 242907670 414054934 837240194 206473900 628036822 609597491 409620012 350165681 6479476 711749256 922896711 114831578 958475536 840654135 921983362 1054394657 89639313 820891663 275299983 482165672 999174064 466912818 821040913 313163209 196278374 266502151 473732255 192599343 818872710 214558251 157639681 1067592281 761252676 175971867 568972194 832724541 528807635 75429177 259503143 919355958 165416297 434399363 658449066 547633799 306015042 1042690411 348814645 21426296 271760247 370658256 501877717 856766417 267725890 488338230 833358716 157632266 987798513 157471572 740508442 34905345 362058664 78747355 495389359 118924371 678158825 426726874 307277640 682744574 846468263 150857744 864234916 1000047494 806256975 108141163 692023595 81189223 788746902 295209444 782471891 1038316429 780428637 813788277 571013066 136314513 398330627 441337846 263095493 942640484 917236474 609358152 463516659 103291007 1061377278 673542503 1023857988 494610405 834461840 1053780920 68565274 310502685 816953293 841606928 133994622 104219460 843764893 855065513 874741073 633433033 970514411 506602067 999182445 318290422 589447141 544731857 984611568 626369863 106021863 636931064 611122675 953256712 582477496 1047956191 380810267 260068168 971053598 583728767 1006922696 854665872 789037012 125913903 573327205 949849520 97955666 499746040 806138720 801917596 338364699 442004179 340229861 593254394 330233432 293958168 840952709 452469061 580320537 242802209 303672361 356727893 140506334 219021017 891878474 219333865 513773529 563947018 253274150 617235486 853088272 503196674 80844005 16699485 243519903 443267959 1054975226 776340590 861817855 847331251 199534718 994144907 237948649 677730826 864731690 282173114 1428969 124406716 324442006 610042821 98912184 632282574 83084755 187839693 625127461 448803860 717969328 41637269 1055336561 1044238437 781165980 245612847 919597773 818943016 907309040 276256341 283238333 365085887 303263165 50968577 512244840 586147417 915108041 75132415 34492477 893252699 135803057 922908675 819069241 1018450360 885522446 989679711 804106945 598779457 511814863 984923499 944245651 632664157 27732041 306753650 240365310 1013234490 20894430 189042855 841038996 862980719 839176841 205304599 652037656 119043207 571661664 125356867 452298762 963348001 892257678 674517974 565889766 204520227 223591150 1055531756 493063507 485415677 425311243 215554004 893870578 138928670 277711090 309448241 765630248 729325913 327128013 1015209180 441176088 137708451 777606372 743161649 489406558 988153925 455521833 498426472 834728802 250383547 19173014 187109744 713417943 263148976 379013950 703400881 742988749 67781185 430893990 714553087 425651911 502697147 135494490 687404342 597914057 592294798 11727617 996233063 775036441 302708114 437241012 893434971 467257193 285480786 630057174 781254737 497596181 703829805 967095913 938164493 952140289 425619178 992657702 880766805 203752775 596317755 132067781 25844331 804126343 721545349 454507414 496304694 430686597 414285190 278000639 453269984 842776771 370643918 232696159 115451069 286965195 829923912 945135127 678573527 654988003 287738531 774162733 989336690 201633312 403000155 333935083 805452047 848852580 168444142 410503825 808539304 957326492 144624048 233607917 883071439 662716496 455550515 612277066 713399061 331115869 401923390 974897504 9910750 196961054 750550500 384928114 362000142 742703462 807567261 274267615 336655046 954162041 488709691 833201608 328025016 884245757 276911081 811880847 877305693 748317168 607628894 266248475 741735579 654037790 638018756 180706579 445302104 723484882 454228809 139774594 517739308 373395460 498609601 998893112 890557321 562660215 264342835 772259408 679896846 904367233 416859564 841872433 269634355 25247797 577386994 85535969 50083368 158791501 495171378 409441029 94509438 65132989 329439945 1047117483 785669923 437023913 308634008 866315089 886466967 522750178 445682455 874746052 994197580 1068644394 596124280 22102967 782902866 1070747587 719537308 789534105 214697062 308998500 325653286 669322136 28480597 316077056 808842944 283905080 33894385 337944632 794300335 947921124 358288225 453017910 84870337 39805615 685057450 808419886 820848991 582568338 412651612 448916854 34175481 118640269 831003279 576967731 625820511 78511981 252304438 568051484 682902713 724626599 719984100 703957804 397740368 488093474 530722684 602845657 30949843 521205381 152467890 240499099 926810369 476369800 865028835 745354958 983556358 414627570 991010900 73079216 468073410 1024411374 375383978 388762881 578824128 718970324 514513066 1029478961 445672510 890746724 860253257 435611100 26076458 482689719 409370483 875603753 572282193 666907074 78851615 917431379 931333444 68900373 626676524 784067652 998133291 891381636 1001902079 776958255 993778959 396981823 929626135 448351817 861739787 425060275 841099644 398550818 53060862 462594833 104112110 153090680 407469807 1013991685 527735687 735370226 931790457 316743654 365172318 609277204 941696194 850941205 860926962 914818427 506048599 512696274 406674013 907410549 637452180 185487616 245848610 134219794 53517076 755371451 696839537 519563673 671890861 819321192 375256308 670974960 300612852 387011231 764656439 290233381 1032592319 867997078 437496812 858651816 926785668 313328809 110834258 835182985 719129072 490968713 234435708 569421149 378909945 15193953 984802365 309990634 1040372745 585935810 431981475 71807420 274299669 206116517 967311600 679848453 62333803 592898237 761773720 133291588 382648323 146795727 840998978 788764028 31928290 255423271 745818340 238194103 831201386 372128363 449465626 914173337 281612166 701805927 879438523 303227687 980489366 770457834 50599442 155742959 601686942 297564779 289124142 773698509 512339214 432450345 694398385 97611832 603266150 170062824 733059800 34973818 950172145 562431304 862492650 912632482 313712576 939732060 140470670 452131616 927407709 1020045113 115089291 258843566 318478519 938265899 521327198 494868064 159840946 391429501 139239488 867124770 90681784 923587368 906893663 434296650 833710396 387924979 277942016 63071775 97458353 945119269 720812138 32087848 841045213 614895779 48087723 980012228 154991290 706458260 892793149 831021780 453593806 476326254 93548983 763008201 432178243 73664655 394525002 898985168 480601675 830236306 634058363 1055003085 206532207 82408707 390701267 149950509 877638637 832771086 755877980 463595291 746235840 904246085 667580594 698593683 784566084 576397668 416207677 387303506 413951070 425412147 577271912 857915830 955876228 908647270 852378162 527972985 862955357 63697214 949489656 165698298 92927463 20989937 879349950 711602444 1033469478 160646103 340511667 562312933 980116078 731517964 888642853 98809219 483820627 461415387 353174785 200299585 983492355 360095922 890346888 1052065382 1057623399 897544422 976113430 1024915757 810972378 1009556426 716641907 914415246 474989367 785886287 145031368 740855415 206182306 522737888 597403095 430522399 886521257 484264709 70143679 105273709 83784485 547538691 516680008 94658088 452083900 109244090 1002449327 702877371 334100945 102269082 716787403 763005405 1020523473 715082489 673635081 672497631 554950720 273100773 302720359 281178388 321723173 713943688 713226695 903415094 400929326 908381587 133813208 568069975 625587572 729354776 157605437 528015219 687338899 699501022 1072942565 169591870 387345243 699194788 973460207 367039749 770558909 822335303 51630536 306684267 538656633 986403749 287310708 178951427 488972999 1042242342 308765369 137225397 537497585 758532958 444737840 266888175 1064550111 176871750 446109373 89642357 589517139 214838287 889350346 231209287 125223121 1005759408 662138166 743469464 1028693793 553343808 796356838 643404596 285858984 112880779 981750378 524418540 1065781979 799397682 196852269 916959156 723859345 927635124 927408718 260143665 828616587 711240028 789601603 491658700 72793649 29856981 435625000 919186315 232902920 61553170 748682728 793007864 989383085 619608347 708331116 210355358 195494192 377470945 322862167 490115921 688972635 226999110 805422176 779649595 291499316 216292943 699697604 773004813 251602525 116909573 171735270 132612198 471811016 804617169 498567287 160198640 73866690 148880652 211985059 109646683 413908780 67985746 352163195 912140656 925621718 759835151 1004888073 682115744 823058039 805522788 508538313 883487691 708757911 979146041 823652699 933392342 610633925 147483504 417244366 53123823 934004266 491431022 842702193 446093508 230823941 921236118 952595170 414815050 961292378 1049497024 961568916 1025970664 173842294 507275991 1022368298 148364334 627044198 491422837 782547674 703323493 728390933 655671622 483752689 426574162 816084222 819586839 171059887 845078879 702518919 502846688 727659737 42815524 293395493 173066424 347365130 239928854 370298631 270083360 659286906 374319782 339202407 721057311 551758050 608381270 326311328 308880538 667825095 1471419 489552958 519188114 873231421 885005644 837959373 179931251 506993866 39077418 537322994 360687829 1061377538 906327773 529202701 594373436 124596856 1033079741 664111242 334142240 477238305 45274141 155386504 327352840 177421348 23260174 709128114 954978850 747812590 677764110 203190688 1019430385 811731577 161076957 423664966 966012753 46248600 643667109 840695518 8266560 709381441 325870316 181205145 486129159 408359991 670778456 928304930 670372959 522856456 873155569 1064329142 139889413 64914000 830424272 250058980 503627813 967550660 1042246470 869626036 864997132 49466695 661621277 818985709 352446649 525659245 723083205 783601212 416259442 368403883 403501173 613699937 1029121709 818185820 25736725 391775960 640963964 848217094 146649981 476379125 75973242 346094075 476592012 616928832 737447496 567939037 352175987 968326429 264202064 640684570 263827883 56136860 958240936 755784158 470785349 519323156 736814756 70704631 523714887 632400088 117445005 117428263 1018833391 54681553 1072007673 911311474 718302471 543196373 312958171 551216172 1053156912 593450270 470962884 5654475 86975233 742831712 18965170 724769764 493761953 114219563 601612378 108639707 359816564 10716009 586479204 437950202 605826430 647369154 321920597 348926739 1058927525 150735322 1057872532 45468969 661923666 705831892 475746184 851574294 142749695 222952813 1052408974 830770869 991119077 87804537 442993842 767908879 226203070 264857992 134598919 564728753 466264242 726122421 939481081 516626332 992763275 868124967 498620482 899690908 728089942 98621552 304076758 321756885 370271114 906375639 478873561 1019262767 1027479117 272718204 714901599 465113829 802966835 111239228 695383503 32481437 786879958 600358228 644293365 1037805282 96160336 14258953 569178602 370023157 462329294 68568479 352673682 610352222 770007806 262743911 793996757 461160456 791503821 202432837 855200818 540976942 66207225 274713228 446119222 20859446 867378276 804163797 840700799 826098942 960569759 928885405 1036334330 918711164 655772776 541379910 519847527 904450764 501522985 118770563 206836893 738023945 485900011 257761288 211133322 1055074116 508979070 953474539 73171356 107027954 266846687 328375593 965379047 268173065 552524728 972800387 580259108 254667527 452195004 576996138 981575965 126059505 273494556 488658397 622157146 103588844 240084837 476601089 521580690 481298443 401876990 365102760 783579829 518522915 748808178 1052956886 981384531 382613317 373914157 56589298 670085893 809089363 884377602 1032700327 97291631 392464077 371132087 77056997 1009255809 748175217 526266688 920801090 978475647 145914028 747357094 799890696 66844197 72905243 487499711 58275387 972932491 462171425 748992063 209529972 602582597 883464923 72465631 567012214 671285767 688576067 201917397 23830718 878714033 146089650 1029298152 433203119 252721587 819859132 628938432 469078454 359612695 169423860 576701916 37272868 180763127 557141402 366718805 893661299 248798913 159921753 1010588645 213246462 547456269 178948271 732322065 510654766 51775712 382441106 428777581 165679919 491403425 500321799 614294153 687221318 787272117 223105417 905865139 3302815 758852223 535564545 834942766 164054376 847730805 968962258 546295937 963090206 176601028 613345341 80644953 318756043 676006061 380821577 361168110 52030881 902495270 1048278996 469240045 1000833089 606517047 644497061 540486077 479942388 735341204 533437395 839593552 384738258 1065820360 841034399 658462454 954391962 765589804 929984155 393233919 530983497 228577630 916882946 218134686 216979335 611435935 836248097 116618543 69161693 141539371 546900673 658462334 781747434 180884134 327974088 434008189 101379048 914721090 557500261 455792813 1039626535 291621473 124494855 550334013 552019876 142116565 360971707 556622329 675982444 7597507 1050521991 101838099 551693087 917472743 267301478 325949756 523375027 1070180370 824951883 140187930 22123646 1028721151 559096617 1050031075 506811527 844463617 652000488 227535053 203732224 902980316 39664358 422230196 726462351 345541201 162233705 80725273 919297782 960173340 455585243 878829959 539926166 727275245 491816534 272727044 518568020 208026951 120070970 87085463 414156087 919724959 616417579 90466685 807488295 546757196 983195411 541902181 304583963 707636 50955107 1066699005 152278633 416959903 507881555 27006019 1052500411 210935597 545563542 993815735 163507550 871554930 207348444 424440479 1048981557 398750011 524590152 896821634 856519934 180305914 129701005 622145325 1020478898 770489862 1046046630 407811705 56738120 1059264696 1054361435 1018266266 976932802 682743657 113787506 1064578817 698808567 879306097 249608597 635455405 919718971 133434913 493679823 814033412 362713720 111595721 298368800 582271525 504518326 549833904 822675705 42360706 797533678 173259408 459244762 997055362 224748971 237392228 438519125 926950041 74359074 135922648 457845830 708359904 29978135 280017574 608117898 986099328 914911906 833867675 393280494 870173604 1029216070 150344515 514984548 743631639 148600291 78601293 865631759 943909497 260483653 936553850 94881673 554606900 513730915 345088626 541180485 370762262 387003512 321331930 935919556 675779675 197849846 192602625 103435159 680411673 907236268 421259064 103007428 701149738 38974897 987318144 172965301 565881191 444578295 838815809 176626899 689250541 968797439 716879869 287203931 200117841 259006267 141480805 227824767 509339860 574726447 444924509 237453883 75383379 272425933 1029279035 75737867 963883636 454011499 866647890 487643698 104263960 1052120088 731693906 913096487 1047203315 687258791 566011455 316526979 291073732 24907747 2325514 293831392 518304231 258363421 125398080 526228250 538739906 557319142 715085566 617730687 159493138 458282860 295334041 625473074 538899837 889727981 409508570 43275659 823394701 918034524 598376957 349817815 1050233548 998087763 1035078192 313684560 11814251 267478617 823887302 442127459 246290774 214455938 447386385 942367963 694820139 899419132 251987759 435024323 114360627 899770220 750916270 904695242 851387822 639631985 860511921 6565676 226084184 814080188 131872348 323780268 102898304 766827165 905166418 325164759 461438006 463236398 334872474 918123109 689076628 290100243 211783159 324209974 34171811 588154887 153442776 338207417 698233072 908632938 338640803 851896869 492340951 625638067 147978423 1006601022 342553906 522095137 95833729 412198250 782819178 379117550 266257189 763017358 407893966 283377501 935162972 949402904 756762888 610379361 251103576 1024170859 438589312 820388055 761931437 111393099 723710441 969899639 15159362 775938512 132048309 682490300 947104906 83702262 415063349 932206747 969957487 62322298 306574418 106642916 1049760798 190744895 702374068 1046553981 484295987 954547971 272782724 948175339 158314388 43968574 517387883 643973894 546353925 683631944 74781611 980731432 488510654 406962391 786313593 310814262 956246596 817117665 642693113 694581181 481504472 250863904 204079665 1070075 662083750 710794612 349849596 101763615 24036709 729471641 326482491 529220345 375648796 733817494 436784391 820296625 736407354 371621619 52890374 975672122 631853987 516974589 525814056 293870831 982726815 970026341 248145440 787841914 120695069 87503255 651920544 691774265 439579481 250325595 739603750 597976959 229688682 489297268 505567622 389511004 611601769 900408128 388691376 127490534 990136262 447235886 541449503 344094589 343842871 274716161 964384331 590619454 764334702 162704455 146180231 102474321 806102717 593009099 717731596 247602363 64901026 497215470 221809785 365370765 906179274 106088300 458785965 257313969 595896096 829217713 609238734 657212772 506592841 895603784 772106652 210556606 259929096 453708156 183779561 878322653 149380634 814178780 284834640 800930014 569743156 700811971 131722282 73589730 494120591 746975419 169544122 296321076 236000965 1005901325 793005285 436673640 854898204 851185286 4519252 343710549 175028974 840475372 909707497 318150926 122505219 95366607 826150120 434765534 443052666 718602030 571997996 734651762 799544749 891008429 768262080 925294314 933647560 861463308 403916999 19225788 729255789 774099098 354310935 71897438 580563563 913352372 186390258 489764864 169328642 1005350940 248328931 417529866 496103237 203995239 700109929 448698069 824886498 187619187 276083753 998521559 224875104 704947858 114824164 783666001 442556642 973963514 1070516629 355880099 691876731 507862262 838576763 134811287 440704572 464681550 734498379 685335866 227015353 803614863 636260551 674149573 892919756 825921970 585839477 532303567 529999794 62410766 615474486 598882705 350175562 632546411 685143392 1053128697 105307078 877635916 1066619948 834684814 513749417 1020791422 716272345 888681859 242254169 993899595 104539893 215268263 537713489 162885645 707290235 478763744 513277764 1058279814 426833963 71663909 760093674 139156572 1000819262 597108731 322288117 730991189 988552737 504559008 767137571 995588739 153271242 657533559 435004403 89702078 738598372 108235068 75698279 717731962 881897777 231840690 558030510 769593862 476031278 576979614 1007819160 72307250 313091464 684023833 400309387 946003189 737195722 473951628 160929446 448361971 1073195634 463121136 952328446 739393665 808816778 725822363 276992627 662924895 42363795 113968949 854350183 768179761 10750831 389289054 203975020 27234502 666091773 1051686544 226037787 410858061 585172373 1033770918 552763172 588076829 211909415 929378336 158144229 758140041 955347937 902556572 695921748 1006091372 328335968 1073289089 611318701 879341680 393927262 1065490937 599601996 308165379 1011561496 965354054 647189676 98696315 537450870 1039328973 240443656 927379763 132804372 565587989 211125729 312423619 988099466 209581438 728552999 859645082 752892131 455311109 648895229 715407661 931736836 418047285 338015660 195814997 47788430 351287132 222346189 640365268 214195714 1003474513 39547577 845974834 1069061934 756819644 572303739 514612641 1021477403 966253797 754232974 12783599 257614114 635567300 399297100 947681064 897194974 809714815 698324315 608205679 440780134 790751691 155427048 318962712 445300651 568417308 209544259 449070774 192466672 943818971 94043122 812025739 101977787 324340036 523296974 741225297 861407625 87743061 924866205 408034292 512610229 774072033 134763330 681462945 319722047 549391191 1070071723 824508913 760406466 748606009 781740324 801672782 275049232 58568746 680015874 798793175 411467418 824111276 221564415 685805764 311883520 21519548 524710054 148114315 419660068 582354696 150402689 477092398 559458886 348244428 264982225 103421586 775654512 624669360 537349863 693160994 876568361 769443144 1056898872 195799443 39210871 722996586 505508732 364928819 511758900 386371746 97175016 528927102 990479622 688710659 337951755 606774799 389496311 973171696 346676292 843855874 500348970 993257694 935054200 297365259 754815445 626466980 39707688 456187529 144575426 1034530237 790664044 379208776 917675945 1057987565 306628084 927690516 1057158665 377728789 842118222 619287213 990078057 829935739 253824790 986099124 161368553 452861155 474840168 205407533 464840843 143340220 841510964 24531170 1040815916 9931158 993855509 1039280175 523061397 906724976 339316942 878080420 929217963 3611174 5395672 53791534 154149484 176638129 891995345 935677293 207977885 358847757 452582135 258500425 807300284 131942418 201892920 946485773 689772877 496767236 605277429 625764874 1058616579 514817271 1064857671 925819464 295913166 891341341 609724737 633638690 952656637 331730655 462975552 977244059 844046910 801856759 497957732 309906333 784813329 66196789 71384092 653567757 180152379 1071811059 121990152 487569640 396034980 913664227 103432449 653829541 201517757 763221310 785465290 376614969 545053497 329922072 45245507 816402906 379403767 676019116 174872683 463267886 267752746 184646176 195655182 52495007 1019965062 11592923 279866398 773965262 555064146 745202841 1053330613 534520320 715412525 438035837 100658088 924340328 214814759 435061959 935199789 444475792 515336345 430483861 174227004 819696709 198203135 727341711 749028312 543555536 844088673 1032357485 71943782 39358363 775284167 484604314 675553250 267825575 259200616 939998906 813179848 974998167 796596270 299980646 61666910 835269206 707601579 938685202 62414433 111506730 642452913 550810574 83202333 788811650 399741711 418120550 845156213 608218400 1012154807 616669133 1003758423 875523309 334587701 519417409 323031987 286684843 1005670927 536966104 277783488 405349948 819468413 774195112 746395111 622316003 893682056 773744614 77997149 941613823 885871000 435601283 783792592 664836382 60152733 136503697 473477656 581715980 2987020 390383432 623903154 315117102 565772315 544527021 646650650 454205317 661278835 70399440 540118451 13881282 453947460 59312691 674760726 1070188531 701435766 188278500 211736075 470963733 1050361061 686275986 630688890 529662113 222474804 633041444 1003327276 149039323 465390929 100406697 882193577 504824505 21039302 368556290 736624250 557332759 716721841 319299584 179751755 1030997583 405124865 360317884 414905838 511953915 5077562 534900817 1054447687 987474987 174130315 983832510 625170969 930135958 850153683 316771009 283738903 1065145341 413610378 77243852 86421406 147830201 1002717321 766099834 356691417 994129321 601684071 1015610431 662107175 316150191 935566629 17501229 533212036 1007063401 430818544 370596116 70768952 707175662 117172316 461010270 465590940 686264060 890302991 743998478 325190027 957168691 32153738 1007174799 238571090 271613979 473025878 1024326082 895987122 304605506 441372564 705252970 1007597360 630816858 307604238 942804192 53631216 994050498 715595809 611443499 36173493 947450814 224952815 594275644 363064629 722742415 996208922 410604704 728563179 259911131 257470452 1044479651 744325677 182994488 61464909 377665055 48512591 400805557 420252623 236152440 941770800 1067555586 11687627 192258479 443829387 43208622 332571823 787765301 48909615 903583022 498435300 447533683 346584294 511655239 287188106 547742847 1017175111 839595644 707587642 364154189 441227298 773469131 62640728 436605447 622081300 1064679657 505004854 482109040 581762698 570703973 561767748 999276622 342444781 768074116 716958069 787232334 263821215 962651336 17105007 796644431 532786922 438712276 488829956 841817295 878539913 696985960 60271542 980453557 221603935 814120699 491317305 1073301132 875669735 497200728 390498999 111135029 648061059 373922990 36323080 595027481 108577624 649087357 314835378 312502587 424782334 364150359 427173816 106410486 754749591 522428098 307281267 139625067 10330234 707435296 370786926 322934456 504900135 1050914314 9852402 175693176 262427774 297444330 866217200 956101520 267710856 664396729 898518958 76919493 590120033 818258831 326509612 319302179 163705510 660239425 290729962 725036965 46837467 142193791 402255718 547686927 649993238 373874990 214915669 841654715 567562310 414479184 153719789 289956300 56290122 963920869 913606516 683535630 208490040 806044657 725712271 294135245 635378144 194059784 659736111 841137662 616559929 1050541449 823854497 801633027 189210616 999870090 43601711 162140675 654398684 562960548 458282865 971153921 713625831 627544309 193603366 180478719 638324650 993137952 162294599 1071575657 616306124 176466576 549314750 385368086 786342772 717289051 154126047 240645099 637045329 12855587 370591533 321913100 495504145 1040477543 597052105 58687425 411807112 948295018 524962638 664410514 878268649 869367724 388688659 47682444 219587404 822206123 611551125 862123264 818367002 440443802 1014692748 944614155 359437947 1053403075 357981482 600597611 273918627 641845550 350359813 1018013459 822038778 844760298 593227363 1002939320 956525295 933858689 1052726248 859078085 397280860 154357116 873038803 681712245 683807949 895406232 373941265 888015172 107565744 1045710426 452298639 760153454 357483054 268761775 977990400 407571564 570391357 972030847 804899465 10318391 205207540 456244870 808912461 646391845 1032029688 847679298 94497025 523801790 748376077 149305511 936118402 23162638 624185200 621117999 545040003 431865788 348926360 217242304 298526995 498660298 392508934 638231782 386584528 535319413 67431382 12433756 519285210 213116422 60101636 703594480 1006906558 893924368 418326526 476243468 435826235 506956702 689285045 250873002 329960106 222839855 851137952 637056767 257035847 403128184 653424497 54114739 796089689 680398755 402569844 923974945 405037897 321567719 519502744 894308259 926799070 404248469 431902364 855234766 623821174 566080058 938392650 783419531 361854623 683163571 415523061 953882769 893324924 395444900 520570705 1056860091 120951240 765505672 28015364 903464944 484897516 473150910 41849436 50619889 284666971 999375902 668540815 178466785 730360669 369996170 532808724 336621614 423492835 528702297 815817481 202543808 27581755 780770028 584684256 327911817 432662945 189628440 725835267 373474031 952453910 554747644 794690636 898642350 377755422 740907196 684884955 363079899 927275193 306673596 550372551 185669592 375038268 978216300 353704976 660963393 518723336 289609510 256016579 386551690 992869812 43210879 366664221 653383832 226649942 729783884 887991639 949268742 294618277 813179859 803423963 502395521 380437913 57466039 738712608 128724273 193152003 574323684 226933900 503894808 284699175 745328194 660365700 596849414 1060274055 411766342 443220255 618167840 568376490 189689949 553949148 883305895 530965749 470864213 812965202 253115921 28783704 233515006 758270636 656845781 347838648 1007770353 1072222690 609706715 275267938 788299489 271099786 1014349868 470101054 227360468 924661323 230060197 776851887 326775073 397269180 833198935 865783074 176068973 29443138 910612840 380012200 483813785 951824588 112938499 832830883 94174217 539787331 682447504 436842446 86563559 930842334 326958437 119156107 260337773 757025729 476623142 768620305 229061273 289528979 658517603 632266259 152361919 576974388 142209354 428879444 823067131 926103375 856174047 362212258 448967775 714465457 641164341 147145550 356757743 520717942 527389586 248719600 631035461 1031849438 389772661 937902391 445597965 883801150 653963068 8769712 510219507 706141971 255764002 606488581 405810727 782539366 290243035 938779846 975551347 954392800 799702676 815261993 154293293 904664689 484577250 483815300 378323014 746322388 935148340 902693873 880908896 1066722390 253383743 202167496 484658030 751962216 8923834 788169964 934498593 709535187 476165742 940435278 1047464511 294713004 882381242 389368384 268427818 573742041 324848893 969988009 315199158 348629324 565812237 629365283 763841694 66985661 360814101 11079631 153735700 696706073 1057205116 84158269 59585785 747974379 404370195 222537567 97969180 692788403 168703708 889270915 74337858 117456364 48617923 280362407 251706431 138322209 122090724 533040624 705873561 1011251381 822903859 828856679 96623295 946745635 563461240 417748145 820277259 317905610 854485640 86226564 258531780 999692574 661311181 592517910 447113886 656769216 532587954 205927023 750020991 143201264 1052556514 615758146 626977673 1058688224 563306998 146489735 448656916 920498351 341755915 475230182 501430591 95794926 123156699 130698805 808600820 1049916851 84901507 47492096 132576741 1068206753 286930664 1045500570 718017221 307453095 904847013 882792268 80021484 570452564 671962568 125281826 792856181 196968128 634797924 667895892 134469053 822494774 505466189 550950099 7526153 151776404 244500284 916081491 148612211 660619963 717915034 887265992 861715211 57906616 279192226 497393988 26231232 357759384 802818770 928377524 808371458 942128024 401316160 620279962 1023817186 922293480 22288706 151171394 870827437 211016688 31500076 272710903 183495178 23802581 233617697 383193601 983682413 76351418 737129102 452861548 515390621 693589831 59353429 724364787 982086494 5326012 100255831 569768131 730642483 371851410 10988397 258790855 188121526 379252444 253876415 1051608916 127251023 962613697 492775205 32674329 1042906069 588211503 902057241 209610990 669974186 954951767 355264961 114657924 749088053 723768917 199152825 787333372 186064682 877683663 457520361 168532118 548909924 443289174 1054186313 886527425 607700036 240712590 1016228898 678749326 826836006 209706271 948120493 1033309400 911959194 179382370 566679591 858017655 465188928 400690971 590597584 977027888 865568841 161499025 207047172 560294881 209008113 472811923 464712144 538579141 53625602 854741033 252591242 799737929 16663389 762412152 171947104 1056187237 314923446 724657159 749006828 986916083 103689000 67654631 65485023 8158531 569675616 594383818 566286401 500925709 344392981 737307593 704727738 315715200 324007916 578134911 955858671 254487950 898693056 748485790 319969657 569675144 554841448 1027464566 569131621 20578020 598927749 696677836 1004840672 70883169 424539326 189417072 253306654 664187129 211682972 387365168 83903947 312795456 277431824 27559610 369547723 770930342 192635765 614294765 796845032 204985366 212272609 409616862 749266534 125844335 102911378 443405473 542146480 714980683 55056930 718375663 61683529 103276380 971250052 46656799 341629354 286168833 43724850 471964617 421839813 890782388 1022216910 933695587 524997857 492587948 997776446 208359803 938562257 432154572 886273830 708063125 517270360 601981667 541534277 727696044 50189653 948418203 408939711 738409361 504076507 720173676 45814918 716436756 800890301 253322116 603944488 446716930 354254086 514211502 570434727 896361171 937826644 227991469 103450864 1042157836 153483277 1039600982 1060448347 192232680 558648350 836309083 4083858 338366448 433520334 538165356 523229523 912657501 947613399 175521144 917616196 603263222 599751957 949365694 464450153 518582327 480295323 871710006 734865605 422781571 161866720 738355312 415191803 867346991 734519203 544111059 573119279 449962207 791388645 999953891 338213579 972715160 938773075 990883972 259648399 429617270 214845282 625348595 519630483 878807524 65086247 1049249055 205644193 1008763109 325607053 798989645 416472698 87112684 454766574 1007844457 228582027 959075242 577213800 728984895 935566779 1071089709 320189666 164531627 805728262 154440318 642004943 648013404 409970205 611169951 1026497714 376794047 667075822 303320010 631164394 678799803 754941919 378201663 699118037 572030830 600389274 1073516683 533968743 928602264 1071158740 685467288 366880521 780632587 788385119 388609835 260169719 687584384 394190594 271570224 57900021 298894751 727987043 255584288 999599396 980749488 1050732082 149610844 293930414 774938238 25005350 526890349 528151451 827196787 532996372 560968699 866375191 651333592 31578148 200231672 726447785 932294654 440877625 561684312 183810694 476848236 921905456 909719997 121035874 698171727 193172494 1014855955 184173003 447869815 252626778 889627527 847536943 1041648612 652870229 999623633 303429803 206848472 400180498 769638181 582244382 315204781 499647012 470905238 1044272618 435043179 19139493 107148717 749490912 73113268 277976621 760768126 173930756 789438147 331032871 1054217337 1025346404 163788958 555692001 748238842 288471450 1001134705 240927870 363225132 541896622 46995750 713722552 456375120 626972611 625373080 506633928 135711878 565055607 315299823 409041048 406154148 670860977 866524636 898786872 1073356926 712621144 444179293 795366457 546554036 226005613 631250151 287425684 193800625 925230103 778803806 711055730 822194782 16400959 92075341 309036024 916361431 155503018 133609774 278805085 886365803 348205786 372505833 13227749 540067374 99021225 929480293 996654810 298575198 731062216 323727780 408713628 1027447148 664403765 919775241 408991255 898728314 698513731 391491221 199806645 280793479 649216982 728767019 437688733 610381639 878245834 844224297 273315812 169226479 85660736 463448610 416627724 918017057 649220440 150404640 475388580 24777397 131366854 945940088 332051907 1024069221 994591274 397148858 286040974 687101656 30520929 892010374 243247511 65606022 47870698 932289777 895266046 158881504 882441035 187729516 356410400 994730212 1042537676 613880421 540673950 386925704 372690517 1044287682 474439035 79464955 318065188 207277578 502138315 113514487 113485807 495293086 836642630 686875841 288793836 975726000 455282556 556569448 709905060 885486095 895305552 531126459 156003641 50580077 812458374 646239892 502317398 394774778 881052970 194097430 586432020 533469486 109976770 52184116 352277539 516564416 766541210 1070747982 322047112 552245683 507751434 817705593 709991712 832882549 526438146 44947019 153691286 70368012 392720448 960100572 452591111 731552348 515363858 395462875 583799082 915134953 517079286 893826131 366501749 796211243 947008301 184816477 539487283 1031951999 286998073 967734332 215721595 492269079 877099541 299157921 17681586 180509306 291085116 770808002 1065358977 702675870 898375894 833622417 520441971 611651799 115977828 189992261 982975735 411746097 3719642 460001336 538524507 270166138 232245059 505221009 931631205 45293758 412996176 1056450716 41794882 168946103 701738719 721319424 163973016 831724737 878046307 372783624 78309572 892013904 700539802 808740221 628615396 1064203574 396932817 325342833 583013691 400688083 300372516 523170677 538062037 161905390 654342929 495507687 683645474 968964432 430639817 600802500 838277706 270414563 273727323 401196130 747000427 893542825 943595277 507106246 44187913 550892749 690194926 803063487 353115943 87967339 173406784 645008826 68910325 201254549 510876122 1018596694 796040502 903375613 612664561 45775167 922215373 745880703 875007699 529414642 218259310 301195647 852373876 862764994 1040123409 923527552 1041489037 868243772 240654403 907972069 209311579 1067900118 99222370 1001229291 93559943 363361623 922575540 315487751 966004393 497019288 1027927650 277674790 296922936 1034357609 987718537 290493075 68518883 527116281 456466219 894412777 802163788 669040336 140020600 954355645 353928544 304986426 887122811 712865496 634441451 56456434 423093554 250717238 193991877 645498698 922650139 347165265 783260536 276594834 650945960 602367564 141725318 419630370 507448557 945482653 122481398 320588581 406194803 746270146 258335059 981503937 730039292 925036992 805613944 709610972 908040811 290963024 757972945 437369790 131042316 375455371 152714926 208044337 668037598 529598455 1001179635 223925591 380100440 68757091 556853293 135585473 817442363 120738882 848941940 57973562 980054748 1043827914 535011040 227612056 218441111 728927621 861433929 329222274 125447242 936492022 457153419 633615434 190501687 260560289 180846833 262177084 248553606 969534137 224176334 520956177 833879723 1060947875 466714936 408472593 872499180 339040201 609604510 856909166 768827543 468991176 208496419 190317205 758083548 825641012 460152232 356037112 579241950 737353527 113498656 987608424 321348149 802293730 481161313 691527356 565080798 598695550 544094462 810857377 258008985 456509970 29295054 335321828 577713503 468466410 614291541 749047437 658853716 421582019 238005234 1009254488 85780514 34185232 435536509 316942182 981644143 98352171 331171922 658545869 624055894 269444395 932844321 1020606626 555036939 972262555 824548577 526414223 945351354 345062981 948455799 668009426 172277346 838914498 989707387 443088536 684392789 888996903 270943286 654446335 602450703 826227100 1066602596 163714152 8445949 751813561 534327541 630996213 554490344 449182209 526585290 675580526 494456442 379912472 545270575 533577633 537032214 513037786 238189312 224873294 1031249270 481643733 797886682 207797763 148192840 331451769 32361331 481550798 476703635 1046463388 159900339 522407806 828944618 588932274 784770613 265854334 100051190 531764003 1068800146 443090380 757076399 1006936247 544984206 826590694 673474421 1068367426 1067367899 73004014 997796400 475372558 588720958 811691628 502335498 672666496 929355223 455775675 86370076 660252687 6202092 480175197 324457335 183344726 564698067 507689 841493783 979590622 893087463 991469511 897365928 420575998 194856623 477505520 364488448 253408336 947807201 110304798 303442982 781982979 413999950 1001356674 802705907 569969928 53637582 829871452 142627755 620799616 662862978 999165063 777896291 408009156 138778540 526331691 507800746 192349464 866182267 313780938 483584507 202007092 222719367 914810355 969821834 1042581998 921155540 529609047 772671159 1068833042 962089208 320118516 737725387 371289260 1062877454 379554278 141948974 846806807 20720318 790549863 7943765 43441267 57921047 1061571657 993991019 386011914 45679370 49913822 345746099 855520611 290759061 461564659 319768581 500166696 723542462 919294316 197205554 290941494 605104530 754941731 680262305 509779750 677330717 1020595383 1060353598 338066366 1046381294 570708661 972174849 592575460 719154753 934015993 8527257 491716521 408317812 855442254 565893774 132371656 481808425 5860473 476630709 14373025 410569869 852642588 571381698 1033491884 139461296 76110259 85237082 191054085 808210106 647150258 212868765 13972570 367607103 1035625041 910486869 820743687 196576618 402311988 217345158 993725417 200920057 54357574 347732766 776979883 173141278 666769219 928067948 192600306 1031966653 1060247535 63755940 1047695595 325756299 609138448 514684027 599961508 403554099 1035242755 440549019 960391810 965124053 613390197 1010411979 102377991 46292819 93356562 285165644 845827297 715850039 66306936 632201673 548229313 261494990 771630393 311193424 464404115 475780704 470476960 595027266 590379209 681442485 163092344 929914929 308210111 315452241 344474630 360548054 202028204 583002088 37660579 966496080 477294546 721021053 305739964 663689387 33768566 435512304 884161991 86144643 881435107 814752641 449284426 749080449 988305882 780291421 479430053 357371804 539444894 276059721 260767971 726035125 422617206 812925600 407223258 1046656248 561824688 399763575 184040572 638834705 795544877 21922298 973782149 138008216 794848857 581883639 1370049 191020654 843797057 1024982318 526514001 782267346 323839128 675891328 899227371 573475666 661708972 1021385238 982050420 129390282 415598450 845236395 446558872 190381904 42350885 1062543365 362533759 122322931 244634794 693003097 505557762 747861439 1040987740 873320679 428509649 233384100 831555611 947763809 745989326 60083053 661052196 1005021549 690496980 398962663 221506906 531627653 987506842 626359925 483792197 182965704 201442635 205558426 973861592 547798649 254649213 812596852 538857935 387426191 415312278 241236631 546118772 769893973 650228689 1072088513 560888265 503637853 416528396 630569767 79412854 437170505 655140895 876948411 1033262893 446595263 361835542 52640619 1067512516 944171577 591687290 919792009 394763602 39573720 811210357 908735623 550667354 521130824 769625780 92326506 462571296 665467170 461889657 412463277 299943507 765193071 756487916 542865303 418418003 514162471 938412977 344962911 385482763 713427710 54260077 673736834 1009417540 511212620 814347726 180685954 581208750 61349457 606288172 889315142 1045908796 130752572 440365464 409258860 62702846 698304505 626804782 531164049 647181135 940551438 234026565 794380307 640456304 300035007 769774590 650361996 130266777 429699036 688905196 304089630 202828986 503502346 378776379 1034211469 55178520 131980290 465856444 186448419 520444627 1033245541 255832975 333101755 171600050 5942653 518255270 488601871 1043897646 209762387 449297247 456732352 747015732 24592583 1069843118 985063606 349375701 332423608 1036621597 55517157 1161487 55108865 974257666 17910242 762546479 660207025 718766519 307566456 176233971 841517426 446522245 808142727 1042108661 491751763 462804852 1063432159 100056945 366528260 441632614 334102194 38255264 1057499799 226593322 671393582 654711766 947615441 666976328 500598517 769413711 399383871 892732303 951117957 313013397 816079639 789731336 1048379298 985027339 332515686 55239441 786235736 980892376 971896525 695649183 257155697 940123583 684301318 630321587 924622532 47203554 765789886 276985197 512678363 256728664 725592161 748500225 773518307 616995791 823692615 413082302 923716792 624356049 861954418 600890149 532649821 767598173 946397516 133395100 302605271 992986737 1011604223 880201624 274040551 139888036 887691660 330916853 1073413546 329433249 560769688 128236913 647501059 29023957 128181809 1065574710 212299009 849325206 165017394 577980986 555004339 949029799 695912896 834475444 178274146 666411017 368165765 232473531 866756577 410675160 326125761 335732255 455728661 94830816 1040297452 305643228 826000522 231820860 506143565 922513442 1051332878 720666103 778211142 463429771 104639867 370267290 99045382 982658542 296733326 82596065 588534317 554257289 919608399 612534430 661304578 319931826 619985019 779278537 720616008 383982095 714819024 87983762 717493599 693243326 730794049 332643640 709334417 14510076 829887264 117168282 518475870 351341493 423043347 718789707 566065180 388890654 59521231 696959311 416931432 626554248 263734039 747412003 431113342 37015179 762709549 451126250 798041118 150884842 652843211 275338506 512027542 520199478 226440973 553940159 921085480 568166348 806820882 914832429 1000526440 875978835 963006353 892614848 356548860 678500916 609231122 36622272 739363944 382967031 354933049 913075246 61057877 579406356 208246234 560348901 401686838 189317632 390626591 254630409 803912239 749162239 449220350 385123825 258364681 980105098 756906461 389881102 207109611 190500508 205260004 2927144 423547843 541454828 452106146 181640028 751557036 942633054 575834752 129386037 552163562 984516535 227711183 519760188 313379989 551222151 567048552 1047066896 559159024 761749428 220174061 1027883097 9349794 965326524 263175572 539660903 61716703 775706511 76871339 954442080 902465844 429527573 399609651 742571101 417132124 639335452 661720363 354129557 753853272 548033153 1034502446 1011052161 269860940 406394827 414617383 948426723 504175478 737522799 1021255022 722250012 302130315 273930029 409102066 653279219 551198935 293963968 127358004 518151195 441000006 660405314 766616795 219503620 204659862 295832872 449105439 208732965 937309857 408954141 966172733 913160774 160758633 860548572 351186008 986804638 734369415 720323026 427367760 501686187 154139244 515170791 173602461 338538728 658256820 221486867 460293531 509054180 346673059 348496229 947186627 800896110 65649365 210162522 276202840 1015197561 912787417 25823031 168797468 854575436 415895554 1033640056 270039606 892840012 840844668 876775773 292344136 491987947 783349750 807118647 871824671 793772876 1002188604 627532784 757379779 913435699 916405336 295212198 490276402 65296857 798474251 928487897 719538171 44741434 92702442 452723260 790165893 42793520 1010475139 628627058 1063378951 579505368 105285648 842784403 45387889 801417599 753397448 1053808093 488983039 170749116 619101071 51205190 1006328905 685038354 308029142 318491497 442191275 274778172 245798397 250054687 92530327 671104287 360757800 442116854 832799407 793268916 1031377776 455969201 687645922 707389543 693905081 189007115 854581547 1030454340 430199339 136250503 485338429 96204012 96827055 405290736 975491028 132904756 491956249 926989662 291393678 622358631 1067392856 776392608 136268502 421711436 70033790 315358097 516336260 573078200 52251260 828153095 462966952 800663223 229877244 293692604 583560979 232735379 681043415 1025949009 328012033 453322199 988606468 1073713076 348510875 264292446 584375512 956302513 688085092 149847581 1030653954 179302935 394393939 265347410 1065597382 1062768067 945814486 744484160 1027563490 837641723 454039706 321604307 573250803 388597598 675423647 171637189 142419723 535944178 43893740 1068734169 1017924986 653160442 491776252 491703349 57226081 925437692 512500144 513715554 133873560 16107684 788075392 348783903 155427013 603943949 1060332929 1063090660 1002592074 230795298 277706900 732554197 759458553 777904136 257146711 668079013 345861821 1034389044 217631286 730298082 397892076 745846054 881075420 889369608 980856543 180639338 421905194 656748933 7905535 566386423 743150640 826082314 336985146 469842693 1066150551 261793910 569057490 846338592 69811840 898288527 268928439 19567449 1068475529 763894475 406300479 159992688 241947516 285151089 883726676 937838366 679289719 665357426 83835514 1022805360 92025412 364161598 853776486 452412393 139840949 579350897 710915752 469874813 898559482 996133675 245952673 409034544 254009744 299382461 372638084 768222814 966408931 354393009 480721563 946987663 6420727 983577488 168213024 1030888595 493159588 132380699 394918944 283369315 328466685 526966678 651788486 570108770 520824139 840006673 760291128 1006844386 473517914 384841093 521939099 720105330 435352927 294169653 649658466 542591426 80053817 205333072 487622233 200359155 345628722 607678328 393677474 116474941 973124342 363862024 752494161 234053313 314233653 1025702811 1039526470 510284663 1049701122 950487201 48459137 1024360988 970405324 280594928 744477429 847290661 925456172 146471140 286293147 521471919 860270937 389970792 318199486 515952136 310906201 552053470 19784691 547865693 583994625 230231711 556680667 990845546 780494942 847086835 668366483 824181091 317614728 121094962 751202161 999186191 928272347 72122214 648888715 533915904 1053477010 431416550 82833578 658794916 601897263 389381566 56916479 21745039 517326572 465548569 138686541 113433364 1048931230 421020265 668868876 897707249 498790516 1071335268 308944787 139058320 1016282056 457802186 801448589 302335968 974902021 448468289 909152617 905692441 154983124 7713268 832217188 380314336 349595392 912828383 969773824 410563065 151943077 139891036 443578691 934115964 519381825 49458460 686595007 328570688 299167241 402785977 595222570 920428650 978248800 119578680 431880930 629561345 59897611 482339608 862991882 746103929 366850265 722669221 1010293820 773948930 553352622 822848105 925030022 405521828 195962278 431740499 647451664 366059819 775062497 395509053 892289261 286196585 702416234 175909713 805416442 174100761 576421261 847818114 75259591 761421600 830123646 975563233 480362780 926699772 192720477 395228800 175897887 839637840 257501595 515138060 604020334 680464146 24165841 1029824442 677764925 149143443 974762204 130380569 145414103 496509637 436448783 521860579 986530923 285860947 788522412 309547503 82998981 654662988 610269116 720881511 126713934 156900921 929452781 903925579 757019771 387994808 220669897 659501507 526398697 592317338 627597881 251515044 638530940 469449266 506315235 328721641 537401993 327784442 64564323 589554547 895160354 454620587 773798028 1060255937 875992440 982482330 441775607 692277408 761095831 796977084 482816572 1047185821 771380226 68942987 236578268 94933375 40406889 127562542 155034463 1048737828 107288864 915081247 589203819 305889870 958697818 570002897 624337993 717989439 446562488 370063267 954256553 515207442 235626073 945885827 782321104 481579367 877740131 121168485 234588618 537227057 970855972 323089984 308800838 51523856 184484307 938493245 527454031 1012459454 157372624 455153647 949572324 74861042 359980091 1051126545 817296635 903065538 1042999921 543873838 429355963 859508140 243138776 475020468 730718909 381590409 148525940 455392782 476593958 682986404 346771084 640529591 804468671 540773502 556790923 978202579 384772822 392534515 683250637 546077315 698515936 446725288 244462399 644232242 1015440500 90759144 207306240 455497714 131933551 954151063 510883297 369718946 52789889 482799253 710266792 723144578 660143979 226143394 693758201 358387975 904234734 498250698 160568920 391863047 286539189 195982919 227113332 400830117 860035410 788820871 1044073890 359965517 700881518 220718012 533371478 1007670526 106572087 829918144 532647841 766149979 268021616 776029363 220782387 222501625 396534763 933351463 648969984 913876930 931247626 307672826 1065576544 602674211 225859661 832283253 421901770 613040467 883962865 685369593 435636199 558050515 935316315 969754333 386642039 479258845 768426582 830355336 469237784 239598913 746072632 294923231 336715929 76010679 1036320463 467998798 775242719 515862865 155783129 961111351 73375853 896912186 317480561 275448958 580807938 265780212 430155144 266079239 74938316 31479602 225915843 267665995 791120611 1072958234 646301182 925409866 71718984 458333222 287647691 315732609 26394110 729010107 543218766 524372303 1002539793 173895481 839105405 321483199 367418478 182332475 724283276 107786396 1012238482 271075906 834124196 1070032822 875736256 300709654 611709268 135389654 305311856 521205499 103292709 306012483 783536629 60522088 106023751 415668957 171599950 804262343 539967199 917459287 860540519 18629580 858552691 1031883302 728340325 285186967 430482570 506678816 543037976 455754560 575866512 395093059 591668725 993437780 28961342 741058650 909959555 313882333 137122311 791030880 182886788 199143010 327148080 934747709 786842836 875890862 828341821 277421333 161175913 309696721 883394421 77384445 517573599 133640826 185976541 602506121 580102464 1022821425 944612288 511097228 570915595 108156681 483067627 963003697 714709321 781634186 368670018 290143823 43155503 878095722 817765810 396987947 920428733 596076578 547125232 793280115 800201525 25061818 477912492 1064841208 61451239 339972483 882043812 362154878 139777833 662680484 355785562 695689972 188616840 620890513 931248094 407894954 729080840 394775257 351156920 558601229 538213652 715656040 648510523 371769842 585820208 55840915 957281639 75322647 3379002 688643318 715341368 441242490 185734690 874214432 465259074 511660373 164070495 503066336 432481193 976423364 157788101 703208211 459054382 234258075 991712347 94244807 168218534 237761160 340357203 1039595189 243204636 76616647 1041792682 692138513 193927940 627416663 502676273 319770862 348032184 1017967568 810668518 240905548 437265948 486158860 1047141649 698028611 882890350 4921596 464504960 1072507292 186058267 92816244 525159091 285518025 230629129 230607190 1055335869 462483740 5440427 1012315162 647352522 1016864918 504166052 196395694 817805311 420690787 534357328 94412876 660019058 291748347 329450824 855680198 773380275 150327100 1001814422 672298792 581489429 719038365 346416325 292332433 503203827 776827883 761269586 141492989 671442103 592711251 302140723 49417802 612690080 126261812 427690485 362524262 1019741670 329387966 376518529 925970104 1063913512 62318065 518116587 459760200 324028234 208464130 908150632 1008842292 184670824 135833031 919857537 903636713 1002264788 204226659 297008244 702823123 819938260 917839423 251253397 1035171352 149890931 129320335 1054470442 277620934 863056903 658249463 639780779 109890293 615631398 824125892 754599948 349759799 630968110 432803173 246355333 213115648 431813182 336847496 471894689 472270759 130197530 618180577 21384994 935876047 453100546 391637508 470671531 705754407 710713333 684235733 481727417 1056573706 698422018 206008733 725942353 287262332 1015262287 96612459 499008354 416545087 812815181 736944527 696480113 418454509 487399086 567477416 260113483 503678760 210390827 461331174 390679634 607475632 806723531 314964240 1053361682 120069642 323300384 1008890516 885246710 172342544 1014031890 161491886 180567834 269265885 136088009 458966459 877581550 1058726032 792878848 984181524 536048268 725402186 388983851 594676416 863156958 444921749 896226727 196380125 107384937 453949412 762117906 1023152572 840493485 267267571 356457623 752738771 560482518 907313133 668816114 294003923 982279226 873284760 375688758 662026494 110858917 697426083 130223435 604921706 498013259 993125971 538640017 347628997 897373311 1056335494 448470863 777012421 873241069 568175775 831294097 120340135 630308864 778287453 410935468 973997861 655981888 676030774 373976068 948088535 172945790 983657454 662347611 786242874 137865234 973125909 915569943 42186854 823602079 227483556 1039510625 629475162 701459389 214060579 343237359 4385749 800794872 897377123 167445596 194981326 875608610 843230665 976617211 828201391 914401001 1049376475 856558626 672384550 446638834 214021911 772987210 987977432 7022225 928448653 191572165 423071789 791206607 99162148 544438990 933552916 728741195 1027416734 464170482 672197838 433625918 502403229 318528704 313533766 920504409 945152732 342068786 318174175 287502311 592352530 832643061 641804695 875780505 106965264 123035147 748287985 398796068 290858322 387239871 79018889 847061835 184744992 357299193 414541024 530350730 670382528 313378887 259413630 706514457 328497639 5579484 494496561 60274785 234313367 950713540 823621311 979504085 931855533 834764451 212283814 333818438 366375237 384280282 329935151 610040408 216144964 496706480 932950455 850201968 513839598 977060352 998353361 683384031 537074055 909302 82418747 375089244 546988106 844630082 68166150 219351155 128703891 956254729 638156302 863481167 813483375 373541708 1070012652 498408144 184653003 944074791 471765186 404645634 788754532 785016517 724554166 253239279 135356373 593340549 854473583 948609470 351389187 672081953 867383281 397994850 787489167 899228166 735176535 796212100 1055847540 318883683 213562588 205290945 527341430 284974549 653829174 145145272 354753178 1048301207 746668490 915107873 967638397 351910943 740617387 485621903 747931378 772971712 1020191065 611936923 596430648 57620614 385763591 920908294 432619496 312356082 952687531 749535741 31635227 294329721 381310099 412777493 157940328 738006977 691809926 671385313 836752840 199173650 708956502 1057085416 732385462 430611593 119464713 74002548 773475444 520512223 998455142 1006761666 491387427 308721653 997493353 239057641 534377588 887106511 249137118 940727418 897161198 857832582 688623191 613759053 898857714 130669222 425598447 553120469 270070493 966530375 292827048 985761765 314293542 953816175 228366559 850113854 463663631 397748364 126152571 557851851 750137571 102099952 929604441 918112694 71252680 1035168343 387620423 960434093 499437121 545261042 339382394 301576757 134658949 146112723 150689421 386331766 928227692 762144040 252745274 802476820 615476923 161011429 940958703 289391839 117356446 1047768886 376998892 530314506 984498532 350979627 99177976 616916485 243845773 240699184 158120517 824227921 563712462 839286630 1001169253 222533568 544315243 172241969 801653834 911648000 541607983 576116286 923295352 292090438 465408378 893944895 115336089 198680093 1037113012 183936670 164389923 775192243 1057684448 597103208 437842150 230178837 596495603 173123721 485100845 913754821 21338795 353861564 865961252 809320246 620168601 589342435 375196331 597849633 1042395530 635858927 616947661 940002966 956186115 897691906 458678236 1026964674 682797501 932389638 14684429 768339057 278990146 609627022 807204028 839768573 337347100 291524175 476960947 435429014 147757254 455319578 229343931 958722645 113608723 60114520 607796554 549889048 77933560 265550390 868768085 650953965 406653270 129404813 829406874 880827581 119755219 938148141 588234824 499630979 624292551 695693547 788634387 266683070 666681784 244976555 179113545 328391762 267090488 485487699 867291583 368836754 365437656 704289674 488274833 539090064 779041169 877908120 407777451 868897586 569173448 1053248834 609996623 301829142 450426773 658012018 323291526 93013322 192113532 704920563 487860816 195320478 206836418 754721610 865023203 218994372 750403305 46545831 761885023 332442949 909034557 600263966 653275340 825064500 754716224 783369733 257338253 50816402 486763831 412802108 212572032 158602522 370319955 540107143 46396515 493794979 305138452 587591142 6763669 73480439 22289705 787419915 760391381 622495856 637304418 111525292 1046687677 494020976 1035640271 890089949 215468015 743933707 987914691 811022831 653292014 202541005 171926721 852380781 470565187 555653086 1061911296 364097395 88760328 971206895 260714219 780244187 707295140 56824175 973968707 960245117 14475199 115594697 127430717 1045171355 469398339 935489473 618369976 214622707 144639676 714417170 41227581 218311162 563925614 373928926 869134247 951897244 905678256 170552941 1012459446 434635213 110910221 1009651735 322115546 85076652 809049937 415064004 893311599 460988268 740807246 467627113 501077228 1018347753 293311151 727933060 593486933 405111795 1034420940 186767561 728089266 660967106 122959043 519934806 578638406 715896293 818513072 316551845 1039046107 311588847 579188147 53878445 807664906 994431793 751178800 413564016 975688293 764493393 759528161 520226618 444797970 943579487 405259879 698811042 591479148 296146150 1060701877 411110204 422314091 813224764 140586824 849142904 350569416 409809016 961390113 68644696 994108710 557553630 450342788 37416806 895291323 252108525 976766688 560932823 726270841 492670933 607450412 315330351 297911072 925940847 1054292689 627149255 143913534 338721892 585734486 914202785 271374310 44714213 762383867 695661405 980768628 50814865 488155264 766262926 53206797 946139363 107113180 91397277 375236371 590375936 627446575 951845137 746844801 1060931506 881205689 517186505 55636292 530162439 357164640 1015415768 801494098 361454169 839289161 628834141 441651864 951264203 1026483224 396514321 791450094 265525607 249118426 854090894 83920375 97578328 283885971 654678365 671440988 437134994 321866915 295644533 34429169 62720354 1013647304 743719238 172977914 209392354 979661519 382593309 590568481 127180660 214073917 388974835 471488218 162904598 44412610 484778659 756328830 391591566 607111694 535093239 173763552 829274308 862437182 150737335 272546201 925059122 86041592 425214660 239310370 460107200 478312756 581002453 557131380 78511747 344116335 274343954 671082447 253905838 336161028 750035661 270193429 362587447 832200543 93540989 544855095 541570080 826044258 958823409 881285548 343997497 181214229 758352056 911909904 380501326 36942052 874792140 564482885 1011789000 166158118 1063872635 224972666 152674669 133421485 47530654 1048351105 119842170 608688815 419654033 630308785 663472347 1053831417 448942425 455672539 366114829 242735264 241485428 814008029 199560383 525301575 337831744 138075144 170176176 514882806 131789820 972110539 1017527130 564938617 221051458 644345856 714242462 685127565 769100416 469436151 303487422 695054541 113417714 30603980 299518291 345528615 722790539 941388989 128660946 131693792 975801311 681824158 1021824661 73582984 881229919 1031951016 658049124 566019059 500338669 827652022 951011336 137496607 913051651 668060666 1000655753 60867488 30143755 948417179 1044803287 162566631 555305200 719011227 911480528 622161363 100063126 413452172 189537252 926383646 583484460 298091473 555736732 1011089739 531315163 520321732 432609856 655431022 533729702 806412497 763721318 812028660 3143387 344799282 799283432 56274961 294854759 977166265 1025253982 78914006 110167471 71439304 89513473 211902450 504769122 668120047 625511287 513406790 397379648 559532678 631389146 238454583 180978840 292230289 381801371 257804272 429730778 100659524 519941451 438056483 776784827 879933220 564427400 164223064 991553152 823894687 913593402 581028092 581451996 985848003 1003836077 677936125 3976026 817642558 75580281 326450275 982865433 510946038 339987734 453883830 935061211 761359115 979261229 457646630 623289367 480423933 852004894 93771397 455156932 21785693 230847750 66474214 730584953 813060638 750037996 776420470 296386588 398888473 443501722 122382068 737732758 297067037 936331030 690500937 946784167 187289551 417790274 514953529 31231257 434011819 325008047 903325474 211521442 367198155 50243010 966371988 928912762 1053281618 127410536 106314553 764805283 932751394 808869111 944569062 356593422 100051043 514137112 267696044 372986169 661900634 362028664 642611817 518257534 460324498 804043789 205244518 1039853845 950260452 490821328 208430710 43710363 469333675 535591048 157723146 127976432 606051816 212127493 714056525 263672853 14168485 623109489 64918236 158180643 605951748 752753945 211801393 403632123 987487836 920135681 466369166 501910300 343198158 518281596 765980475 513836497 280569467 955243345 17521276 768439444 916667293 14633218 997059153 332409981 424966278 793523455 768753035 982086467 182951949 1049123411 936695567 94830559 514109939 569478264 679701684 918546104 683187576 319037655 590635663 247931582 269741926 101093219 934607888 511447033 785065957 935488723 726336738 1059146382 893090594 1026991902 722563050 554843430 895825106 946673194 190431589 434709862 861989331 152003828 483944429 325861220 302397737 102131652 906452875 1015541618 339270523 104002641 621998608 563275986 289316178 1053283674 358904882 149501028 936060666 401522540 287744001 691585878 304488306 825595307 314066122 263684623 720569017 684256033 882448913 905259387 335949677 593624745 353371537 281930740 645594774 525994220 287499888 886851626 524516482 531653620 183447908 250570861 993175968 804129910 232237763 93023422 516481578 46999613 296739069 856758538 133425101 100421695 140193685 650671042 146188295 322524508 1025898868 157317828 127138494 820323432 739279952 120635584 626038358 908215449 269321284 822794843 951535669 372595301 392479000 764344384 665490044 428040289 59310500 559389513 62003260 438928128 647946275 637466617 705098467 485123384 669331279 345737976 832594837 330868835 272446916 441026001 534628130 229945956 917210263 130154122 287522395 584677915 1063838584 462533664 285281762 524031283 642403979 224582942 482975933 841047048 757261348 174087546 996099722 377520569 991594213 450800471 756542097 877987691 747174714 74246268 843014632 547518832 681552898 856999954 322649026 56504718 422072402 827583622 970735149 258621519 667248733 145418281 663204423 421749238 650705399 330711552 316383943 1007454078 474273030 106846603 93132053 424171650 851617407 48038786 366724539 876213298 648623744 370770875 643768105 1021784717 1064032464 1012343082 808559850 918628780 1014253888 112941188 354142942 306061624 923422456 1054158731 815714041 948484972 193225259 959962708 859673391 853451318 90105221 747122222 206078859 468416130 227634307 689600707 231915001 897666720 604205412 799420248 30830299 285633783 985660542 926665937 842683691 925152417 151721616 109030387 627217335 110304115 736734616 629430533 753158469 507911610 597970520 831169306 873280457 972463460 997704365 657435010 505479462 72139604 466951917 1017336077 1035463134 459804387 943328309 209533345 396834394 690401292 554096253 396857530 681101457 709328079 62869345 944537192 1042476283 542625255 658186244 958744130 208187057 532519930 606062432 581970367 492950513 64322860 1036238443 700029440 597262257 323079182 874355304 868541910 127372035 246929204 257238257 680821992 98282119 612456124 515386578 52020267 658848632 950810 404894585 217703244 163252081 1014013120 571349115 140402963 991970190 805668054 245735222 477254233 414194768 927697260 974272591 349365041 438411058 188960464 425372932 667863552 123072650 213598110 476501671 1042348887 881588578 83590733 313287901 112177737 1055121336 825437451 1027023317 659577888 495706530 689665123 805281397 538511635 342086100 394838366 1062703991 10433665 86381110 331319409 419305849 684743628 41890954 477259849 709504204 816635680 158217930 969098868 463078840 382160544 167344744 742411242 364774098 202446254 976861440 134145966 332336211 85036742 696145244 550566649 350852154 558543073 222112675 772613730 65768834 461257875 526019311 810508555 475105947 225894875 798909647 897938643 211853630 390797865 460783201 346206570 782812928 118199262 483707933 557357276 165156145 370880304 606300691 395879524 248679676 607792575 183753001 426072365 169216152 770949209 15202748 683205994 903618335 171884977 167079838 142493811 543401 658555984 477488402 520142942 334967832 684070581 656993726 180914722 836228915 441600505 22986468 937295349 832910869 656583238 587931429 1035265552 1066871420 470848550 858277959 657167735 273680022 78823196 397570906 276508627 885435362 839902638 231811282 921235313 862528987 993980808 759896423 76095955 384343080 194641846 940939131 83733891 260002848 161193848 976857074 198377450 396031577 171429831 660555452 379530050 147237596 797849671 1024378328 953025876 386613133 730991955 955105479 158456539 100382650 920140800 741677231 775006080 590205956 583707736 363186996 426325252 385945930 936807024 895247132 1003102525 885287362 81374426 168864842 209071510 314975815 631000496 716230961 720327667 951061653 358999664 628690843 910292188 626574274 58240295 997209302 622265150 388167375 964409166 624327828 712518239 137056085 1032162022 150277384 389121893 22558709 40508573 1053044240 945059429 607845350 769839375 400259672 842404122 665991502 513434838 262025137 775743928 371615092 789818228 631173339 356011030 486287050 224707877 120448442 233200756 76880151 1006697069 837923273 546863386 843475429 345567245 111949209 322250045 948666210 530037602 663421267 495645778 45107089 784940790 225222825 628381550 860610644 32276624 1005409254 843140760 758556920 432926226 849235822 300298299 19806792 475978481 938526460 337749679 251701425 658756586 339413521 618737130 639626803 97942790 246673954 395128378 146759823 185340755 973133817 34347726 667321111 474468649 665916425 200636464 321464715 1056288994 35930000 187921352 444738052 789577133 950259295 725304131 1002589013 163505571 904402636 469736253 211039035 495557013 210864838 202836838 46746044 259015931 174846296 341281068 299103954 101931332 878741358 596270612 350428059 903273869 1040685082 968542747 865925915 781284024 136901364 364512369 295569659 384137810 71285799 1071094858 90318455 38908150 890702554 615131099 433394863 101780446 1042133620 439897095 953363006 225479021 454355597 257776041 710506172 935868506 251078320 550478863 760760634 789630982 1059737574 422234763 129064066 406094174 996316084 536947804 725444463 673033551 262816861 613279055 324225476 330394057 506883716 849794300 789498617 921808806 132165412 640540889 666512875 788106542 205684432 704407305 915287904 246173632 224853854 828487259 513391175 448652031 825109531 97601206 476771481 970631389 789112187 308134848 431339453 329023317 334263746 734008812 720656657 801105561 519820813 170948105 506655776 935048217 857321228 534590029 495546849 841295928 828525642 146382627 991995564 982853289 991634759 184647003 93756971 1069732580 529903262 545423522 623833798 491390262 988813944 77987729 736126148 41526492 854243049 1049335330 666708361 15428505 471102186 1073492927 374541594 389477198 503059658 589791351 122682860 1040006932 442187987 1019049665 69236261 955209861 199562132 49820554 574067227 352539906 710453498 181309466 216653879 573141792 815847320 935958163 938915545 155187765 127242469 549835363 177012532 839960550 732066045 636136947 181370325 31794839 190245838 157405770 842132663 234238380 56231305 333422882 1044117362 510195251 479809528 321673613 108455143 411878740 674832135 1001537858 751352825 963731245 890619137 969079458 553628574 840110306 674290930 344249941 1044760944 535530770 254438890 373457981 567156222 83762378 584308244 711126454 32217289 1026256420 424561523 927585147 463526712 323416165 170268333 551837152 354097199 610699302 1072130958 433894945 532849475 50620697 3904495 812269069 360438255 321221555 416276674 806722510 158388595 646634660 282914845 635837586 182695112 157154196 531809411 515194271 942043503 803217899 793046917 197011993 1023557504 402049482 440555033 32174937 152067450 55298547 545992648 313979833 849664432 937787743 604949215 932986621 148499846 926145131 467900328 900144666 887889894 639207849 1028346891 879676240 479034416 907196969 529981473 633491247 911156804 480835435 482644284 53126168 163663398 351333961 135341661 663022259 699000155 715884256 200953956 444732498 42966667 138577203 986437832 594968877 1022865056 447879585 469051758 198435176 285885586 1989835 896587807 538277748 469084068 1015215072 250297523 258384613 239684059 263056107 821983817 968490564 232946031 676978998 599899266 601411719 628367307 641512361 236642720 529976254 574909179 154204534 702859332 397888822 1042444791 28535853 1051045919 534509217 107476670 44332815 579308673 487146366 961886343 782827021 679382481 741775560 445528966 800042522 126132500 463470760 822226060 174071960 692587846 458181225 140730357 642846461 131077595 587256738 1065292685 723078130 698779961 714058048 957087457 860990280 530575867 284517799 1052171232 217716629 736385889 517355314 371306200 692236438 271329413 159467327 485918696 882240947 586611282 891709872 387377384 193968838 948429218 250958305 828941874 567683971 1060189510 387835351 213468458 858690233 638533167 170606186 506666919 333661605 820939667 168332448 378289928 85794623 888254627 529727015 145291942 765580158 458766637 343113221 690231951 303693524 858520140 538591032 625514658 76934980 717123263 844896277 246119233 829846523 595183749 996635082 632525199 855308977 30722946 367069621 656612102 988796067 515457395 553333140 787462037 631753565 471314281 227258429 1045965037 410694100 832927278 1064670133 238184578 1016451517 164643693 298216773 190727124 217997612 1061384042 605930908 240893215 798389396 80738933 107029867 96960447 789267542 414178269 530916751 681473625 210623525 676882543 125345652 145121214 201638077 268443303 893704924 576370084 416351044 878244569 377737432 1033249288 362226307 145521929 963137720 658900654 1071999300 716381530 603698895 430228513 701548810 213207388 169972734 102882816 475938152 147843589 211562779 106102006 626928525 371457200 56419722 784500941 1000295827 590464269 642604764 491874545 108337750 591546975 618887144 934089027 1037745677 123862378 982146058 389242043 560960723 575901934 93305908 449169287 838734864 440159557 576485072 287612117 159471348 361347159 864599454 761412770 161359391 985760945 892483615 48118297 621746860 185944391 477610052 117628919 129273724 778306058 1029158440 225537361 429546496 266707748 1070481986 900720327 487162524 483268071 15228475 368216265 37754510 85128107 1007886599 407864603 435080841 265572719 554822383 545490599 284275757 951089101 596989476 143575033 45710734 848116099 129917121 440046531 600195574 587202272 679270213 68082601 486832993 912463712 1040632561 541808340 885354404 886090569 118402868 836416727 107999667 24109408 192175266 900311190 255537751 487395910 732173324 768356854 54326286 495371079 860408866 616522937 650167267 565592666 302385602 87221784 60150458 795972403 851083593 643418072 370542423 708656249 1065321946 840088718 885040164 995612035 293627113 675714358 614386447 386118311 693510815 116029747 483855165 100275851 719286476 757299944 765899036 899516099 258965251 276505083 179461662 628435713 556145416 587081696 88670920 177855879 561791845 281720424 505066509 501345288 502123071 393463984 720870606 599251302 168828518 90979069 592926942 96948265 452037175 389441880 339963706 966144783 583181776 217460020 716505574 333675427 395964670 954013600 183275048 531053984 482191336 264322226 311413442 698009913 1011071494 996136893 697265842 902009535 510039878 438118513 18061338 642058513 335065732 874000112 440302774 276864090 253809539 581246334 879103338 374378303 388135397 970159065 138675231 853011249 579735660 960641807 422138907 117239363 614915311 679645494 672682446 395788761 138801211 639448316 205495496 276988123 886501315 240041526 127664145 379525048 877905823 754251285 431199489 391611122 86340546 849838706 560187890 691468520 420062463 740547778 623641391 804502270 717402158 454742319 312691279 488232220 862209548 490953113 863675154 414171986 629222066 828893647 294028855 558763002 160905239 228314105 902344353 352290700 607363540 693538347 501058578 691813410 730549675 262834566 724080768 560803670 505061151 428689984 245306222 988546045 812195254 217870137 676371523 1045734711 319459041 621597376 668864642 32154872 199734667 349971343 272367468 89213438 1043394859 855682742 617445176 21411293 802474647 650056815 1044645565 551514669 910722547 723389036 380201716 643475167 515976458 87926810 261463510 446594233 261258475 92753842 49031806 788249539 630623547 1026252033 83777860 778294405 737115732 1009483337 912358143 136544799 478941059 85593101 710647671 188961450 603830273 482723207 440584166 206665390 104416522 888115746 358533339 852047840 418579364 459153437 215569828 792320644 168705461 303945937 977456717 98068828 295565319 549466555 912046905 690886297 168639752 571299677 724195340 853303197 249701364 200867685 213165906 407612157 82104748 185054844 16809846 772988391 318372125 316249834 633946251 195964201 205879882 628052840 459381024 397713963 923892885 298084514 392048577 809024930 76076202 440534738 74041940 85343652 1047093757 607430371 35194012 963475662 356956458 229751455 1019021361 887535921 831522081 151884864 452702090 795619783 713385328 604049973 1001153098 804110267 931544323 627261459 968350654 533921435 97236838 510822972 481652081 245459584 1021703774 571323916 131982139 741632341 208071343 684196171 185806239 763407644 510432114 210519453 311765098 779823827 594314920 409182209 1011712839 218271800 137570198 483749274 406786378 740472864 542700892 381211487 769193704 1024591587 148888409 384173896 423459140 352624144 773066674 585100917 890293090 329756150 475988805 323392996 401114359 1013466312 514692967 108607221 220532356 527462292 100096736 839333752 593089460 886530841 1003334319 260832243 353277467 250958360 938659071 1058010397 949198470 780455925 804494618 811346133 526711293 480431004 931502726 73042872 454966081 728447995 649512254 515520485 623427585 232346811 384664250 867776408 692306222 249100393 954078497 1053895289 95914266 416925158 4851768 486949429 281220209 718353580 1024709746 948934155 453378291 488547890 234095929 390346132 907100792 595734003 24598846 325361119 279967643 751757693 667253860 266918403 631980717 923834211 633888895 6023076 751769402 24233553 827486514 112364063 281934772 516745474 364196408 256256094 58391247 40217193 248164902 443465110 690454379 700647344 886176097 19097138 46302601 114144645 1004077068 704621964 125106390 811135195 146280615 56873401 218196049 124509504 963337052 786916313 633214001 26432559 245423786 1070757949 917378604 649607929 609608878 115966036 356011071 608128116 1000439816 498289011 292969239 771627416 161153030 806917338 396504298 921597387 472143047 851981669 1063850046 518118271 826839464 706485581 727193579 202452935 709719225 826294420 271537371 222522928 734550107 854466546 657611964 675994782 500024995 563981635 67307330 521593612 86154901 568158557 441156053 1039794709 233945007 999880174 1051721243 62731848 814716182 626105703 423236202 819508201 129501459 888929189 367774214 999071033 824384014 280138425 128105159 548527535 336009442 272850196 612700105 239487562 851019237 134421814 825091481 3489506 881414218 8532080 693880723 833063210 697405207 734938642 169035990 961605957 700948695 897503367 212958068 639636241 1009067292 878191126 813063169 99202798 166473617 1071587204 700953929 509722639 350528937 232746304 908801715 394956808 791034976 587302580 849147361 499685296 676527876 724772332 821495296 14466638 917581204 1061461767 394480644 726242434 19963835 994179794 528358105 731538772 166501521 53710394 645487026 736696561 770098669 555946932 339229251 784092018 331286932 592097331 470108336 782152830 935018052 51086525 990959251 564689039 922060628 486606479 1066345786 576310935 78712552 182113778 434828342 90910021 804923408 380232016 719877767 875903261 1039826773 880748007 674129671 588033063 683291872 21766118 592974529 772827076 470057214 237833381 637872922 47967354 1034546284 724479415 776043351 565660219 621606660 718237508 789894762 962400991 77357935 899197673 6539269 536481558 739592566 46365177 677822787 908544594 215357285 863631536 352815856 693351984 1034990823 752262619 770553473 104159414 456241630 685688724 40893519 97630518 133179560 492289540 902307007 545355427 409885606 944157765 156208046 102905085 355128844 697541436 398278480 280277125 80103915 140001750 214182770 1041755517 899418630 626152753 236241962 703575904 576818808 757219045 516104412 959519197 812294126 834425127 1021857305 196943105 717291477 367537938 1055552881 34721953 733206459 80314140 206242757 646573943 394130790 109836683 589190952 168310960 220632674 700455729 438578029 545618395 686498886 15355809 702180411 889444636 166477710 16839632 1013710799 892676342 561609225 699017492 329794525 261859436 807816595 284335811 697450527 712469789 951491571 148524065 44757788 43415082 388461434 77695230 428745252 699605852 556221607 825621053 325444328 715795724 195657092 339714994 506542848 571065241 662632607 794088901 723733630 122461480 841926954 347521204 683381863 574905946 623818069 216729568 746890502 93827729 699847896 371646671 315957197 812933335 615781923 223737188 1048256829 81452680 862892625 1069450087 1004043411 988168128 168337473 110807737 1031517839 201055187 640467645 438844265 382551275 799425344 962372285 388028448 1036406280 253957355 790909465 556919951 532671649 383412174 958694796 1042807116 573797773 560342086 1048855755 623836091 866946333 382912103 998086522 545985941 868773724 1070640300 639821993 691367996 669733943 828854813 314823011 682530853 807858224 7533149 1011411444 928535782 624961330 87080691 159411740 251784134 83367092 956101819 1009645782 180682939 583352092 495400278 343209398 1002286553 425475883 238509779 978163345 37011806 959061914 530630424 683520994 1022912352 285707037 928704735 592529081 654318442 1020153188 932531462 1043190922 969027486 648323131 333835721 679039007 335828811 906296375 71559389 844364927 97861286 877232758 772673341 319283537 346370135 581400234 521147934 1065899025 346123126 227213966 26414231 426354246 1013189943 273633038 228428630 341727451 786997872 833690724 825507706 441773803 235878605 988391758 874087408 49699310 667920081 995026710 333196685 351862621 973367972 643792581 408912260 223626710 697563548 963922467 620926070 1054232187 836627260 662629366 74369198 602951334 645618831 457151605 66951678 114249836 720622807 970907762 53607646 100139740 991354526 698351716 303959478 558429352 686980831 1055658845 382052662 340404915 575726525 788771596 207768261 573965742 197436307 1006091852 1067239388 133308798 882457808 315094900 554876025 332348458 394125742 127493184 126068444 395651797 18986394 200122142 647198275 270148616 480264855 10514352 421827069 753339044 973873234 68329671 604977977 851883968 318895842 478715576 771259739 186416437 779262975 471211275 593594879 113014979 379876655 998587140 101841750 659298027 212081123 296700804 1054328793 658774223 954223952 41104363 873568262 1019726942 173981555 969375855 529626805 758913196 789922189 858578692 99839468 101975668 917506062 541119697 433838171 461444857 54000821 587074723 478911356 668918136 599228436 552803981 239359685 264137460 576881632 137792319 752426172 30324431 393365447 528648907 371038868 408871298 60307247 54531923 560711062 837661721 825530027 36369191 768743418 858584578 26114046 953930430 734741149 346923191 909155734 981248085 379654887 351667657 372465908 979569587 143857622 201997336 411653737 97876938 249367703 291887985 598528892 305756847 879540166 220272661 826274200 136346589 15157685 652965901 991134378 79814085 859754086 801043024 703214142 186890028 178328976 840731749 403365027 923136618 634529419 278809087 96072039 901086831 789092530 176504652 1025118509 421541064 1019501577 891294840 224050360 671991720 334122768 747727234 720631107 658653800 31113396 109177911 397411178 715613792 90045159 832789136 898209835 1059535913 360958673 374293139 925035993 1059511372 174840544 661796311 789450636 54798981 535443705 946157785 726274162 358262508 79124305 852451272 301097361 574305639 1004378081 822435006 723223350 150747770 889052654 325636349 787011735 213139602 889446378 152069338 591502719 908038530 194971979 635371790 570318683 903474598 928153005 177142233 378079738 68935780 729824851 580661179 29084686 857233148 972793809 573785889 336316069 55927507 524441844 521365984 663787581 1006874644 336226264 602126653 100374444 262361114 171933997 875307904 894685730 134049503 608157094 775467292 638502809 200814967 1007424618 754881395 485620195 353563632 517464321 1049150932 235280390 338629557 105141894 122007083 97278046 276477993 1021732992 740266222 284257955 891427095 1020962615 312963282 228451734 440795125 794780910 543451196 1007233557 772172749 659988169 220150697 747883280 725762706 251243663 21807454 148508418 896408899 732380011 347367333 182380019 333551853 836666969 224875489 479562003 651432362 123565578 757802877 181984941 521647635 954066542 547391415 376690284 567753025 969534715 237764239 680631679 341432154 686012643 202102768 383616828 1070551490 637330963 280613786 701893256 703802092 1006563722 697599303 388287684 1009472153 299331557 638019664 431704723 1040600930 1015366945 1053854867 185250889 108479330 389425619 256101756 682037952 241946714 58863808 785518908 599998217 461510909 1046309873 57149379 821833751 907452335 893017233 306907552 413449639 494537185 102468274 402327141 690499058 497226934 472396386 265028885 403034189 632955034 1045553522 69544432 982211061 583057785 49865710 65921899 906054559 865014486 370545901 145299429 646862000 267077553 199021800 42127429 174898048 117107922 740238689 280593300 472719053 336094819 332097368 433570596 273172889 523680837 253516596 254170305 370836936 185777709 822672253 466390831 989802218 469303860 187036654 154660164 149010219 908052087 941185550 536905838 239973630 322744968 556263987 417814096 569995651 317749926 745496991 825817130 819902592 536868354 214259723 394326569 883530782 497304950 977947898 114231031 483478778 890554469 1067410562 814793940 236190633 16709077 315746901 723269538 702051559 922689039 641497223 432730401 191574286 905766651 243805673 779702889 93903749 973862200 182641611 231081163 524808643 707177445 928346040 829003922 757563185 990457749 982823022 986974099 424500820 735173719 537374720 190610287 227816724 26697281 762430502 541940132 658307399 577583767 581926503 374998344 249386496 40954725 952409175 353374259 1062024466 486898652 122068324 1058366873 226979903 1069822050 848951853 9386885 177388009 652897661 414126970 700938193 773985779 230739347 3513408 394808437 173489494 565850821 222219129 514273972 778550331 901242237 816671028 372746187 898580080 20750122 964234007 1070637780 125995509 511700774 501347155 671616333 427761087 717537952 521262326 1019367307 444599443 610304983 434619626 406960181 657332407 841156656 1060481033 194924309 914336908 135305395 793716434 369728229 197740261 878082473 108389583 946772759 187688982 267926274 438648897 930893733 851943312 124232965 344364402 746400096 932662334 824092211 388910781 858509333 265530861 1659998 614278058 753959792 502637616 263188052 767787549 973761016 95842630 648893835 909918472 37079772 223976699 587724949 591157394 445577679 255733695 368776930 952216090 987099361 177189854 717097468 42763065 731125423 92846525 597347295 276193038 685389187 77362838 213652629 127490993 570323044 60901467 917645552 77468837 525724135 138527339 3149976 679174530 578489846 381809091 944683339 680233211 958097995 287530022 88699523 988271003 273048763 984905239 241221874 621646536 575936175 183802661 79823264 327530086 549672678 82224943 1014222019 750685446 641931489 273722685 1027276202 383700691 562804582 917054650 946984680 1020355590 366898549 79957462 440224927 257947478 639013472 285894660 809207241 570047679 1024875063 862369061 737074660 479989310 1053474236 923512856 507412720 526627447 497137479 884436434 39989231 583467457 1043627711 42359427 536226630 782247540 606839419 448193274 521783309 821948837 122052531 261880663 659750304 262288499 929187438 87530068 707285832 949558858 661450945 610811892 643739945 502068519 182399203 116072754 1026777255 342948594 538652990 167019761 121418090 828115463 966085164 957948637 473850428 379791488 402572294 303519289 931926972 12516649 204357761 390434669 847102935 508776910 268860423 706718383 88678929 811830162 22778225 325241566 806606224 186775134 37246061 325636297 834661045 1072491328 453730942 65167817 606675148 477517120 100837727 107441896 590965485 731728782 646138397 20093314 489211641 649891768 907085488 338825256 222379571 581556476 835177124 995708814 992882911 1065903985 960873621 150473670 9372998 666910325 496470592 628865669 166128962 1011887033 464832624 365801176 572139794 665463357 838782859 219396691 816247140 47139453 779795357 503935666 443693837 846441441 75231252 294804495 816884409 326576887 384620470 169514536 1044819060 864381225 786697936 1070176262 674109567 792930088 1046673052 175922601 257428927 286304450 756022672 659050436 96055037 562917198 873283155 16073072 221271508 732902738 268207606 364608865 85107956 795429255 425779645 377410531 441848935 993285695 274008016 700593907 492239805 871252086 1032073178 100431446 53674270 269315251 961779620 642805258 284509514 416945991 626873810 392471219 720332192 697832652 662060504 107748043 572252387 566232995 789155441 458925040 989564470 372067309 381579179 1065637636 499400735 105938957 885742363 656751116 687517605 938460116 958135925 196894343 600331469 50898144 313572397 444603589 910263343 1032469412 314640144 60555931 938804793 431891584 182592759 336974426 577321302 326364506 308393550 514762138 1071243446 729578523 847614243 285841108 775217679 972577224 156543199 259006572 344644959 409706396 423001718 1044694890 838889606 769369345 1055754081 1017510595 591763174 36980422 985190244 42060007 695040115 179018178 919607798 938997635 557997025 930557032 250776242 887123596 616929451 614745031 276962453 620529676 94054595 216442394 846845332 750971612 753367723 897393969 1069670869 1068524079 148091519 256730077 618014733 576594746 1037226167 978872938 774013498 461364304 214544850 767749930 191050592 169715178 629877409 1066171809 709372066 107739852 66457871 950480871 350975385 281284430 229654381 443177621 65675411 950386479 884418 286956017 305675617 258718903 309491621 880623722 986074266 246414 195622512 293530743 47811260 967019995 242902862 600780564 736238712 573877723 149661441 279128461 850976293 3984945 419148929 727667402 746549552 492754025 40216175 798458639 832466181 953652199 820709503 478738086 220660042 156374254 170211744 383825096 338080164 516822245 214853521 465139238 242795506 94321689 344181549 677692657 610615335 139843001 790614674 726312820 700734673 729115777 286219923 132577019 528092308 32952981 253458541 238163740 152134991 389322883 903560210 587211352 121071549 771348712 118941176 233224415 83222286 565498700 638382728 76221264 559896214 109435579 339726088 76550461 798774964 18535100 652587663 835551617 898062068 848332769 428575403 339011104 1065993627 139164924 994231587 433903956 631009617 889351694 474250789 967354778 540941355 123587274 830255073 565006242 552960516 882284565 340406007 306906111 904941903 279275832 397193353 769486380 960239431 646855272 546686434 58717230 961964286 102874521 920388582 119890760 19628411 409612009 321743750 688951296 685813811 202873530 173129243 528127247 410786298 678460006 313217063 413772245 19845052 178504452 388417098 715218564 916292431 1053984198 159802543 157342836 313428084 72068646 985550991 610961360 884902819 498599062 399639171 994307154 721018798 807503226 578035896 679256599 218246494 370439279 944138784 370355829 518150178 817163244 777857646 795598604 35572580 303846815 468775923 734825328 82574576 505144207 558250676 686247028 497968566 817360409 1001188019 919496774 258191394 780985739 698717174 808591182 402063769 636674568 1055535299 687028530 1033547208 544179374 846995336 365193085 498907702 697065140 982960725 201249953 779108083 582090441 747583275 73633476 286921234 170993078 370966462 817255351 1008717947 694411246 201440245 544783848 553632425 1016443595 638358306 353408760 175811247 290587196 1053416700 300311732 890518304 381137311 1044286892 686200033 971117724 822374459 385425252 756826811 732798608 174439250 319269306 795990911 806316013 565552243 510180045 793579452 471291857 359265340 551056232 783540848 390729363 490150919 643369875 442291286 49933257 601895467 1061728860 191282660 930821291 737417470 722196994 273926614 607139612 999530353 333923450 947115470 29206011 336275669 520579045 297200863 252475711 838271433 56681434 274246706 503996364 872462953 452794493 106430116 1031808240 769929219 580975557 890200360 783750350 504821577 235221928 701230260 37461009 706711094 141943756 656623654 287782664 701688361 149355280 978668725 877612624 616869082 369781798 382276301 742267187 741615857 181286780 65607745 665725301 550626897 522410475 1011752992 286988979 162117706 988574566 142000013 327122189 247782669 989218335 742967235 745882892 246345771 466601091 114134313 1046644991 106100972 3488110 505751679 549712280 771353629 641824288 366046282 115090948 265567632 245360862 848554344 591932789 886245145 230381230 345971769 217595338 767099972 455680124 751308721 519205757 635226483 579830026 851023368 543291841 182085445 456412063 967198519 984783878 487157278 322425923 119075156 147112724 128274907 375287609 614656283 976491603 2360167 817480894 635157554 280993651 336271276 197358368 926233357 750205452 835144827 157716195 687021802 317282434 579341133 713791408 298978094 316709414 789028020 907368557 1068552209 1036204166 144472852 555320747 522132534 728679814 548717690 403780392 491780833 495585777 572247538 561424006 219740641 454610504 131374609 626640713 1058976067 992248452 192309874 1030684087 759386388 428336687 193532085 888465023 572814953 93119995 45603282 643207188 528541869 614388396 250330081 299146644 579128217 475609782 650397881 406810027 226231111 302521972 932553047 799358452 506931312 931257446 734220696 108256854 844887308 516487163 162255275 996670340 909740781 603373222 136920810 274394072 945161129 971323188 520490269 788804944 892410067 324024409 259291120 170674296 498331532 898674493 1064766126 88783192 691684748 671513619 619748105 727686775 778572228 112150935 1022815683 446187705 669235578 131721540 457092904 923021119 811810522 85419190 727051949 428015960 465276995 561503545 121503644 485748000 34053425 958984198 109120357 1008446675 420338918 1004295675 597730977 459865009 237704738 516074762 443501114 500050075 578481155 803703214 921577699 678086426 114549806 587894092 653527650 441389345 229640994 765691544 126186149 166713132 412515982 388732300 939879012 279625790 217594561 343282860 412935524 246428517 123994579 150547735 889856697 157177038 152774370 150680853 848019300 656225255 1016661866 647362270 53959186 4459585 640938444 956343996 1039993959 289196711 520542363 440708144 175972694 822911773 130151296 584337137 322332284 448914616 271346177 747567559 642022986 335129943 25390101 907497933 716339991 986704983 831840896 269219603 424082415 857433783 607282834 581205148 429464495 314555941 32701113 516012716 151343051 420303270 622137864 612780247 1042472761 311432650 508559968 110110799 979048684 793265183 498263023 358479803 920367053 700337102 718921043 369074694 244163542 979548426 106976127 904064669 424469818 412606291 960365638 996508755 46918514 1054163907 312985116 484850147 112447699 928881036 293180570 315464225 289509268 990850235 7278385 680825266 713443708 653438217 852800556 243604304 939132249 490356908 519964931 318778638 1057439376 729863717 1011517228 63084948 392627736 12890627 22417083 673063033 823376409 695224633 576874358 19757449 262694648 594146365 551285056 20610187 890178111 645390520 875697487 629697207 611061483 204580372 62369232 274782006 415289931 451971816 532801347 64426348 334606975 85841749 1007963975 232587343 122555356 217055623 458152461 359475402 521033249 822216578 335628857 1026893258 533596090 24242508 909078197 494536190 297070203 169768987 112743221 389851970 287449575 510379821 594630700 1023682469 964540174 590350338 789722874 194520121 797496200 478983758 614206165 113258025 880600270 896549633 326566039 896104270 81491432 925889066 182021819 630946825 664168989 1044419079 126652932 448080104 276609235 726979013 545661762 700754760 836373027 36533138 587516333 981196445 368414974 552766854 246906212 664511592 168022529 567665422 584969593 316867901 187122991 368593956 265839571 337050983 703062676 99706166 780335579 158994523 44785869 611454543 415994002 88860430 175262189 266593944 1022214605 876868645 839587221 276204716 792616334 546104733 597994638 558085847 941742325 583585934 1035829240 871673786 842720177 238476779 486190465 1047353019 726090767 883435634 1073287799 124536626 284491100 673230575 269411669 305062183 999478695 432050187 631484192 249977876 429467878 481579079 216590101 300839427 406191276 187785359 1052920163 435239419 722835443 434614413 421443388 948660278 275778621 782415354 910269237 41553291 282912055 608114441 330402073 302126549 579827098 456442573 580640247 938193862 699215148 308082914 488399958 368702895 455422384 214217786 103496432 320583986 29128023 222447030 986469634 175948660 444843359 357095486 317549050 582069025 488678736 221073438 250727125 938960846 835451919 892712523 165304823 822622986 1015421293 513807851 815791148 688004184 819967935 150696291 684793600 717928391 906772530 685654222 338609965 40862013 838836604 606052918 333634209 870134870 154573462 343483642 1044372281 271692707 379354204 985953691 163815814 399728556 415784780 391641144 849509455 229875779 95560672 352862123 302637219 620638108 326358635 781352195 206321736 954876811 592489282 1005907863 885785826 1009809751 833326119 783063295 1006373498 1056248914 403277548 18885178 654915656 494225481 150047279 1000709176 912793571 71857767 381998134 323673293 231178420 97652507 996553984 357692959 791770585 10873555 355832497 980673222 439771908 983330105 575327976 178128301 914386698 705459747 688852934 266658947 730099205 682639604 566228068 203183222 21709005 897341402 69406829 158518260 308980944 600618142 389302050 345036811 332031791 1073313436 966148284 960907806 264958844 215934403 1040539016 644029304 539465041 694169277 936743548 536663388 443611408 888957992 329626172 1072842261 1030536539 840646512 467395664 178622627 1016565386 136319752 740342181 284100926 1042720169 632212485 126570356 266495116 289524416 1061574344 1007330979 280799694 360116567 257377277 550750241 186938832 925055728 327778713 610731982 167795883 233543688 635214612 519600942 58800846 903339721 113659939 763697816 744640 924880240 655979708 469683483 346640433 117962745 145843049 451093893 162104871 254344114 944040751 465657036 526424461 75341028 715806849 413805352 836496837 315104384 275207219 880054267 85117352 399655522 149563561 205825509 973769121 648043389 479708757 252940839 175428992 632743440 371810480 158492370 692627673 167928385 296433463 232236258 317369984 768121554 878438997 879273580 1006725413 777258235 10367851 423409127 351682411 1056410944 815860882 325137867 575142889 297717550 841584016 1031928051 191039145 301638421 957496207 104398311 208647224 448414737 115384737 348705879 968237288 422730219 479525021 228934655 132925917 527156341 880978653 996293173 186532176 852280136 128554277 559964857 712743305 946078453 500195022 131500680 641307256 831070122 857900274 605299068 275797588 713542835 816629778 597483693 98907249 975369690 511834064 472846594 177418537 893038838 1019533680 861242144 1043163883 15343916 734606244 824716579 460601993 757257336 395366458 283750837 351406626 573551227 551140606 710977813 270578457 461634552 149215443 32957096 963974892 229618950 170378053 124622839 785957685 362777906 185672337 1072223623 546328841 83088999 708630430 117883445 620532146 29046498 972574891 641057339 675317069 788780160 76259213 289451180 798765316 469826702 772999025 117612355 723668644 823090918 339963862 1066143118 1053512216 651388716 729361891 284368454 924629661 818802222 596105659 1072199503 585322045 889629575 15506134 1039726109 439995153 727075170 385669668 46483669 688565916 345726775 48203394 708055045 258586393 158897473 203449865 638071518 39015565 155241504 297718260 242906267 115413008 329867759 86576401 1012475786 40960868 608791984 118998323 160365926 594557205 600135183 1069354936 65254238 130905952 386262953 320343210 674798970 927982180 564088343 202384000 828970617 167777345 85133311 115963536 169350493 115183964 55858989 227500249 683854664 900472571 1068589927 977776738 219366525 414147104 108576004 195308199 125405856 467871239 396750081 229402774 256155730 993645784 1036983194 535903468 363182400 992880251 29764062 363556023 1026211536 361362884 424681692 337000909 896780000 173728513 1021742491 234361502 503871011 1023494594 780936747 994244919 875687425 362034619 221263316 129520552 588901854 149413410 952840572 412012482 584386666 1051184494 785942527 538463499 112402790 721859146 769454953 359349522 273593259 42080822 230407695 251148238 1071206505 179576083 488660836 927432362 240539241 567800101 660608694 344377069 354628681 234595491 273399382 1001054046 89142843 120583785 220330182 717320246 965810427 128641748 1046129115 282065124 1012371671 554623020 71730970 325721923 1062606522 662253382 891198508 582489860 795600930 919000811 623672131 200174862 1062193472 597824227 658152259 655695054 603800091 320585344 610517061 305020849 72687922 85375445 849593345 841488911 972760375 563597992 395128194 906804486 785978976 775513077 995337712 789447944 451671866 152543342 836641699 253510972 908321440 439828700 871185502 422093063 67904718 597575677 565284682 335356211 976103722 336674184 802368917 459078785 469494782 865122981 672418196 230320235 693780028 450267815 965745253 144428764 81869306 48199697 949609033 983088008 402307973 1049025791 626184458 292479041 711633253 160461663 367649747 698332467 724884206 773450240 698903922 809482891 1054672638 542581120 618850570 382929478 919807872 865188060 173963736 121270170 305896255 55849453 636962343 719916093 522806697 255329879 44786736 945176974 591287578 156952023 646712061 837759001 963550713 200649527 1002961564 718449320 625462365 316627803 1059201538 300356731 488584105 95470353 862424815 564157224 924696575 337209315 793428447 471887394 102071885 396304486 379425932 901669349 112519404 206858298 562505620 133747119 411332487 1040183313 594192735 681045499 520400823 32714895 930571127 47601208 782492817 986023319 359676239 548385535 974320770 723928292 45447978 568349538 267165778 1058138615 612532491 737699229 395504122 590544402 665266803 276931379 1056815278 15214019 69350361 1044636054 756383137 445638645 206927814 851004562 291055511 669389667 879972509 373641530 284427690 822499091 638486713 360334111 536522116 469786402 852671071 208355841 1008212706 718910831 576703400 12631920 622575573 876866945 150989089 147581980 1026348604 766537928 596352882 670200008 996156132 64688271 725719577 349400348 576259665 188629484 914603500 856586942 747667406 422064318 968948486 184391996 32899608 867888483 140857570 772658574 742677166 424136656 112128044 866789961 806775590 898091408 642186858 149114551 903613577 616793931 883950555 71476264 74402545 63610388 1036949395 819938147 354388099 691534998 983406507 38802904 532233002 100052153 113366739 662037695 222074504 472194042 777647810 65996102 131538011 46573103 684268625 117311599 681016643 780998381 1067608008 710819446 824078017 584847406 878149065 838123923 947501810 846030608 933533636 870676674 876214983 583718638 553357960 356038994 932529427 908064821 966629146 527589029 3413064 933464628 480784032 1009703742 816097159 24279165 495118410 923779739 922565885 185937207 560397113 527912489 282498095 314088790 367103697 71555595 608319935 994430166 394781839 1022979320 115513797 757634814 599810120 686147898 660097222 133173190 536100730 767428363 395321451 1014244817 408564693 185251365 320148881 641230045 996780587 986067190 10994195 235723511 924009579 933711000 395796909 667891660 16656959 192287676 262098958 912259402 863661463 681740973 846399813 744903759 595294971 32375304 111568365 209493282 601358701 79637553 784755602 376363478 135165861 714850413 924857506 847262386 1061794636 722823622 725827872 115040436 1045532130 142034030 979414070 128452757 1057618273 750295914 1026216550 505442542 682287360 590718004 1017682412 188057526 761385296 1028588263 274513037 411162499 40100774 322449700 111938052 256257983 317035522 1005992969 559396028 163139912 677095647 354433617 705222192 833506801 60136461 1054154505 43655047 1064846277 184688621 453327033 717304423 428950249 491634158 808677642 1040580191 931668240 794969650 671747886 1032468239 510950539 354993930 71808051 215969124 81695231 242032686 82233703 414670391 1055988469 608665282 854749593 262252248 907624099 74763971 537268477 509746571 394548071 397784654 336194765 310136130 95528147 630231757 300830881 408843579 233970288 670476980 239351505 35544038 475746974 511244592 231092167 914609350 348643202 26320668 666725871 624548509 1045515621 952939408 372998363 849732348 971468200 1037436088 619677439 518685052 449278189 2512315 742180051 508713551 987901098 280321784 306322805 377459446 383910358 490857982 344075617 676905278 1038111864 232059717 480072294 1016767244 290372007 291199352 662552929 920700703 137023796 83714789 543849969 788582832 142218646 56766487 869093906 1049959766 333570274 476991258 791433788 778001837 811324692 276049339 551226106 787975346 949235544 538780438 1006202410 528350703 127365357 918800195 974675438 632553760 758526648 875519782 419505305 845698607 947690578 763570865 658802472 717867466 694353314 47768910 34748054 458965310 831468735 929920808 1060012677 1069107381 929654925 697126406 46926841 159356844 828339682 333186323 391354104 319006577 653209399 221150979 316331766 167075895 1040421651 1058757800 1395976 239158388 218093441 511696142 61467506 264874656 76253744 492307796 275941120 333951423 374879833 719020474 204107722 602248727 462448713 15212843 420522850 377642841 254186775 845583914 214967621 189902627 358245979 680718207 854313627 241843334 662327627 1019358983 1000868977 546278922 285801903 864293290 429126015 932752664 19962563 337757666 811944523 811156018 983330873 230216745 102449439 242652221 704592310 20887683 513088556 414300062 950208009 175539314 438071672 417279490 985730328 969245600 375004686 287605578 193392738 825489581 942970092 980526423 237140110 989861 743680256 915659032 375191082 322017460 695203705 536421480 970539325 916286413 625149519 60063395 154116060 295335510 149617886 517060395 309188761 1058228141 105304614 205957176 204512297 796604415 507798150 166116525 1032278451 329846525 39092468 1013013452 897752236 1068842528 451224318 735532276 884867801 353026078 551519786 225278092 940870123 356843347 872844177 1017173626 490455655 708890626 309829646 790995534 998237125 747399369 669820616 39331909 137438144 680070010 154772911 43367274 826604066 822236400 762110186 892029873 613598007 240620570 664167193 509613454 831776507 638202310 920693078 696216661 954939441 854270182 800863137 564160253 290215654 1059287699 328743468 375307821 228857533 715533621 1009276056 118580689 1046161935 421251196 740636871 210689636 333960529 864467688 806493694 1037317470 700055937 716728602 997459438 421969236 516095521 700703471 1032333776 346286154 60588191 106347042 793001050 35025156 41080168 435577482 186450173 438828734 304142120 822356826 967717783 38146451 716634838 63087956 242899496 621960347 446317986 437011514 558467905 675057132 747774318 441906108 226884996 360408865 277752149 651956867 230621292 367706056 1012636125 825847295 852731073 948818975 910916785 831868080 539151849 515978447 810519637 483055851 108822128 1030700355 623616145 685662860 746287576 439352745 1072700429 526507078 774586945 113927336 345904521 579034861 93879553 512688090 231447681 38102595 1056689940 669485089 1043460798 848612949 304497524 948075749 75809984 601849316 47565743 18337889 819271749 364946159 294118845 772569579 966032574 314515180 371381732 82137448 872171939 269050250 665237168 303275174 388109944 698686758 1055495850 429460290 183413795 1059785465 615755860 171138466 48950399 545641557 785692027 532930497 636638205 403251441 798228792 616158845 227830651 1041940079 512503488 1054943974 708120225 1059301272 955227999 1041015419 201608988 541036816 212524464 806905973 160114320 696024455 855706526 951665069 207245894 336675727 605227956 851441154 274950820 637961268 424633779 717116387 1022339019 96043200 1018382622 751226399 1031470376 166383817 1032943191 915051590 357134205 262008245 84776255 454638613 253707793 108327427 1014123649 515392732 905074342 895145965 356995769 754883695 596274919 378599759 630408812 882193555 146367825 950200713 21977850 58565595 906130487 274655667 837259445 418914887 742505496 891588030 88906638 196134439 1007705110 1012364220 910236251 90234978 655414101 897089644 435816563 657791940 399919439 169512165 733781270 393168212 885606584 544290772 415255523 106953359 936177248 524766812 228353945 551369681 633504221 145032684 611980517 864520264 498440711 707551936 907326732 903493136 635105432 811655293 311854871 490129248 774226423 88915886 697143801 404786019 377828026 711257225 1032427995 104926551 549447869 143831500 168656666 543406949 539101679 93488089 516255512 473990963 617315729 953078650 514886564 274772626 1013096520 950704398 707104454 692794551 5015213 700867401 310099833 529527317 640942113 93201179 956912727 268592952 958172063 380569506 763944888 506779243 173965275 483969451 862310225 574607395 182338619 593704626 205374702 905899490 296122012 969574027 528664066 329028367 134529448 112952065 720909311 165326403 162374406 843762947 265668113 403962627 130083903 469693237 972431259 380088404 622470499 475728827 798368278 601326371 946409652 4051360 990687851 151299589 822613889 513572120 126761920 269586726 947424831 998564396 579114112 314386288 1021001815 393339840 43292095 329994685 1001009812 349788698 380841178 865136373 229530044 114208742 3549909 219320728 1038187671 309023299 108839024 352162775 155708399 659129332 326538364 319549928 782243376 756223389 567994035 507084372 354669901 641710746 513138036 697393848 359327049 625307641 91707295 831634730 23186707 172367661 391140930 1033319015 162831630 669579661 27037270 530331543 623978105 553004795 27322411 53620250 583457151 980770250 376372056 142983906 69393780 198326031 499096827 353063190 1006074816 1058421504 650382327 903805307 393023545 813389777 127946367 714457128 583580556 953373225 1032255596 707817279 238144712 741401792 946408701 24831202 138942672 946262102 89369488 1071174465 313589081 296587135 669041263 871008363 849720420 73936692 704014299 893892674 102081830 812574885 571237229 681981926 1032076907 690048358 624493931 628429373 685520888 118738756 648380322 844063957 138880484 446852624 820544749 252380125 882116523 29647887 94314876 286060687 457735601 516367190 27735332 704856339 625635170 885704874 721819837 372390449 657137316 148063187 393190084 163699092 518189981 779865495 215047379 742269336 513930649 862825035 593000091 131704848 477562162 592242938 873655484 435125278 485586537 1004147632 390720088 1028612816 140322970 229387906 287605773 300496088 1055993589 328936333 143863332 10587683 282879614 452837841 639623218 957046675 988424086 3543162 449646565 234487407 71494675 624618597 56173172 743644863 447189147 325042949 608424923 136614021 976697610 832608320 708454034 395802932 997306425 236617312 355293437 144898407 339120424 1011738445 260653479 349801749 687653765 571009625 223796863 295860644 735727293 794428183 1042311501 938427962 771128520 115054527 98746936 414331406 768750500 519826497 446986037 616018453 480436523 912789865 577685943 848742631 1026649875 607612809 427346624 503832747 835913281 302556020 166045001 350070374 932749842 255351590 1063789505 437060186 881662337 175412952 497227823 923456738 545752206 805874390 844051999 341005763 574345421 29462322 909438226 168495737 760623065 946857725 20343767 294412077 773537164 133839001 643384816 942536154 514260750 460767657 141138869 755541082 69270166 424999672 184459612 83539706 963826743 798601639 414478757 599962551 605010903 851983193 296788519 35317895 474143013 186248408 565091491 746151533 869823292 63765561 1065094589 570353608 173736228 663616083 514286967 340213323 30267056 222408220 1007896627 46034546 179041814 480062393 336485115 972187158 393736521 92129488 986099117 371872607 834719948 370860418 608735687 878442847 972390052 997739685 521936605 1073440267 206150799 89455082 134956257 736848316 180124475 316043734 524538849 1013815076 395882400 433017336 973526622 113942018 8460453 440165306 472795060 938012736 851043340 462532895 565882627 660445118 566432725 137669608 964013709 603695235 471115116 478958773 617877008 16104665 215825035 179538658 650367540 717824777 560307821 474330501 1052732498 192372108 658391405 865666066 605545204 811673118 365715187 213544646 792387174 44332237 592962584 443261484 891401548 760508361 932337393 76377693 5017328 258751435 500392449 257299269 506406900 246633197 86441821 214206566 356387799 153572060 914013386 643665972 608534720 302130152 948511298 85748486 866304832 142104065 700498634 1016421438 972488103 19381008 105790488 88695832 938332519 456977298 1030103485 27406216 226889561 108457030 465617372 407689607 588144223 725035324 562721796 524936349 1073526555 897357550 692222752 515572667 892452778 923529704 898656517 859156482 371350166 463331940 936612240 550746989 885155258 604882964 753095933 454345639 696920867 880301000 698976356 590019539 298795049 221908893 1067857727 109652718 923266441 237981350 924686807 119929593 1063196038 573153199 618368864 643421457 75502354 747753382 404928088 702312915 953979671 28350434 1006398987 321255983 244210393 1060495186 700584979 335130092 845999627 516441690 961936302 52122787 1031667459 861099776 89925346 938008447 783078871 970738024 896623100 398743598 995278941 1023816906 319457164 30984893 573306981 330655717 398913121 351645392 382023093 300933269 149195446 939900422 317557828 757093925 218672866 394602534 453501482 365354545 965963000 673806016 318389420 103095070 116704916 1071001589 461894946 896350741 1022042235 708537429 390066524 724374521 271670286 834411371 295593562 390247938 4887744 871921010 665615784 614258078 1011413997 659706567 509379592 274671081 293143513 681089248 1005916529 402575350 602538208 748573635 400259098 378047593 31929638 834072263 676371160 641115116 46257092 990363337 1045240364 721086840 483624291 1016851513 53903619 254770034 920432297 1039167805 1070289673 46210953 213529093 304200597 1028939694 942423947 361158423 624918375 908874327 367145348 646712315 113739140 444714160 1056555627 559237480 243428268 982538829 732428549 251649967 930466281 187376182 182640540 720564654 792745695 286142414 937439939 854863761 761982623 7751562 690071358 54955565 794687148 934477541 11370787 1017785549 19978885 854565283 375286268 18466927 641627044 529803410 476622953 585910583 917520194 457678489 531232104 610774683 201828595 347590500 814899666 283231983 63890003 930517600 441628893 1036113863 196870620 826388486 65738239 639431157 1040608187 593647954 582292438 796622066 304217215 252542788 370011752 413074785 987162124 1054742125 684816630 368111909 642739238 876037340 510589051 920962825 461315595 792104120 794529789 690158691 889733159 995052163 616763611 8480411 906525709 976486119 1063837635 741452457 491375924 854220379 613060635 839132406 810813899 902581033 1000223759 109598732 270690786 428197675 724168630 61673723 2596214 116610839 49870511 430828403 356933454 524798955 278755223 225153643 961031054 629723181 988291894 995736821 1033093615 636126339 448153466 906619937 505688931 63635045 116342201 67324462 902146873 653134544 1063498759 718003676 889364898 1047098826 407318411 1060963219 783878916 962599409 414335070 1025245347 142612890 238945299 1058455154 495018439 23000727 839849512 712126170 898163089 1000166476 800744133 382710164 233429833 394183867 44706148 761970239 427557526 543848819 596974315 190966153 613582096 25226416 701304084 847475673 1041772493 257406740 353476955 550250153 991555813 769809567 969736518 285631896 743234742 638796865 24700315 632940695 432948422 427478278 82262869 398728622 816638965 181678753 913304754 889417825 800002946 38327053 464976253 761262839 420923914 1030345369 317884896 258844748 4110579 916911000 158803487 46632511 469380912 470394184 371022138 664648007 764001680 639204957 894627132 313134690 475828816 992233621 171979529 325916332 178584204 867426206 912104525 953644710 868806206 564577084 985427257 90181187 243847798 1051817297 205043729 13669071 1046882778 195913950 887202549 201530754 36699677 206298730 240855564 609964418 585391223 514083333 426940644 385159835 288927300 342223 632967916 590842441 724746613 1033829127 397926814 69485126 691131396 981098902 722622703 389696905 903410547 664536494 290422890 1032984473 646489376 98826584 771499624 827454876 92992364 53205044 389721699 341415868 562365275 717110136 21489528 380205279 276003868 711852553 761962565 182663431 1049110852 1038647563 306527548 689227459 960064187 703098733 542158032 393492109 742795339 490318473 957814492 24907350 899765767 152088274 1064200323 808289725 856267830 512069325 139575303 623251950 420716498 590954777 660865117 877668921 368242767 270342957 945601437 826638242 215726531 274786636 974750658 95040492 866701431 802568461 25368142 74344497 151484275 744869380 358486580 308875354 361150627 344617009 802540495 436877688 354834441 903566822 578734728 954041246 498231377 845528313 831108957 441931647 307756214 978277373 659747367 320760926 560309095 1057728800 438406404 864136727 368431446 302699347 846980244 674608613 88954578 188538210 1028790394 514926167 111725874 785916110 457875006 471995632 224356878 754361350 71440466 159191645 331906146 732628092 138532718 228971627 195067197 823572108 292859522 627943749 991031853 840045920 1071696600 1072279059 134739984 563915112 1008389006 934052911 1019322156 151146822 932618100 89391 112870268 242954045 786281423 921074048 846413582 409860774 965262603 649310745 579226794 753585915 968528054 546605750 486271487 378318053 1017486840 486018986 947973178 932961278 920885255 510533577 19806085 184703467 355570903 821299017 348306445 15298263 552806799 654654096 63118338 443041115 1028256984 747999830 26249298 255908840 913121105 191931367 495263881 169715860 413176104 18843493 121298220 115242355 905272879 1044072658 388843049 812193833 236905735 587932015 690750107 336363427 957846346 698347328 965297314 964247602 467849581 827733856 165834764 332245587 715740967 157406154 666202540 961007195 1051974708 595147342 76458342 944853044 287661395 521974155 819087600 488348703 520234395 657084437 253568842 110075506 477404709 247545782 607602344 666608411 879315763 610084601 18631050 1036121771 803372046 81800349 44993177 707120178 490899695 478963186 605187715 119890524 639342714 979668521 724405802 316347052 99836920 258619784 720987495 1008792898 655477871 218108434 120557597 7748881 3736576 711191920 841915635 330120274 544778752 882341565 916672084 109497884 796879002 95399738 219863140 327393465 750071438 471090029 174248455 846642875 206184336 503834423 387111234 917397865 985820394 677121653 627679318 503996871 880778592 24591815 551254359 389693017 1059372482 488417185 271478554 333131213 541744265 942868660 74845159 126307016 343853265 370968378 137818669 638908530 518839566 633723980 394733191 848598675 267035345 453279395 398618182 540316418 977097600 228739263 368076380 640238940 606296815 1004001134 908337339 831524079 427198859 824582574 55797943 85535933 310079851 934807137 897658964 950545985 192426845 821497789 397428514 957569479 1072913429 271053820 499529948 588480913 817981907 152808239 1032870210 774297304 103978113 192763576 566610345 397600667 728390114 248229274 98764359 119177004 1045655582 1030427950 1009784076 837271909 67005135 580841942 552188344 1013112223 614339056 604468403 139327589 119204752 475862024 607150345 741158499 782070901 306041599 213040383 48304017 469626755 588315657 196527149 496922750 766215762 86901212 462463910 508037726 433325997 692034005 784331740 217768222 290281585 992824933 790034131 674312768 922003320 733085390 771083649 684433047 666188633 179525457 770342854 985690932 393915807 1065666209 533752000 212540101 387082878 1047349723 133106208 121479459 532468300 1002437015 384913228 236396609 918120721 417581941 114408935 63904895 390727534 112968834 945745300 406697165 1026431103 754938614 647761755 597771044 1050551026 892036157 482731180 590249592 972509217 1010008282 14530700 380317431 459556709 1009440275 166571115 206671425 337338281 961112467 925025633 241713585 965412551 167296782 729456531 894301728 427235568 767729219 882027107 370447033 918952929 791022444 382879277 778206448 328507084 28325399 544400756 643244127 427610024 634101304 200501281 858654341 4218590 520837028 310464221 790972337 442751180 124986736 336050252 225244645 341506555 863730078 371504002 120733949 896503722 969084095 910714667 848755695 7274644 82439248 861703561 934103860 107849409 464042616 31204401 238828145 713770998 398007684 450281366 561570220 80629451 528157565 130098082 405690824 832068006 267653748 936223571 125894584 930528666 466066119 678572769 648212845 186069154 508636094 871432671 634255493 344821240 403908177 84507160 965907888 541419829 535591773 219465924 275736348 338415414 824336737 1000536619 646073388 194373343 888403768 151795613 575730988 379777336 1063224288 811078735 194450274 204068927 958066041 158135109 667989158 279767351 69111693 668072823 578968968 568831474 350876716 253015318 517712898 899448212 630654140 405658060 779494381 338677849 1050820379 555198251 463996211 654195923 680840463 366961423 503742193 798313381 1029407787 252318056 285494649 679634464 193672189 291491142 162080708 966290558 304633078 745001947 754897859 925223431 1030776752 805233982 349671688 178394524 1025307418 985545942 485627614 1020100066 330144913 513646900 728822974 1027189561 33153884 937832543 358590137 913054808 864374077 978498943 1046677167 1066722986 373137556 225893161 201855693 879489287 957903379 468235443 595049587 425749391 495777264 5368226 200296413 983752986 143349320 180073442 567508232 619069685 83036357 543070824 559871413 549043779 752364984 925417696 455532612 468302029 931942637 986962751 264539193 119330720 755629566 708908548 916980380 282038687 957918554 1058079035 136164957 717948346 410056840 901442406 32705574 967179457 767048002 725066559 957644594 291304822 179531403 685623695 744165423 159431795 232005654 540730196 837298389 279487348 803220785 614994909 385793457 136486756 903928060 945307169 837604602 459117878 186455949 891825316 813658890 680977590 632101585 655731763 187256934 908771464 194588837 458371282 1037256751 766051760 856780884 983715336 101046981 56590037 791628099 861361619 348109855 817541768 606272256 820426763 862162675 287091402 396638881 828283257 422018249 161682137 560013333 772779550 606701813 204290145 20357279 386470552 471966972 263448620 229359810 675430008 838809440 268284360 857780926 938046033 650821895 684407745 922778763 182519715 114907477 416562583 759237224 975784303 628462258 483911439 655646562 395265901 279836815 985799789 203758335 180368528 683994842 849662432 364314791 72292707 918715092 687647751 330827832 192990082 410899380 643921686 925035722 18133550 618652250 493965288 107706738 766558902 887592295 472985318 431920252 92708729 747874175 801578938 328566753 169593351 405191659 378653031 999445408 502986673 437147470 865665596 338663547 906962969 327417365 389601486 813449664 834065522 976697125 939284442 149181400 192139864 674414297 449149127 562462749 35093417 548949068 492741754 369933513 214437444 156746663 425289212 801791036 84714677 78813916 682016221 888112697 839248716 593342106 613037116 15007393 490795533 377624467 358348567 86702717 643710193 133029262 831681656 1022434886 44283350 194204730 638294805 341720485 274328851 807774376 986720381 23193137 871124419 606387792 600079875 327911611 697147841 979758525 834355740 241426628 888304068 808027778 694171780 795955642 333844543 580310172 400229710 808995407 845392585 361975713 87126041 378546008 557821156 658856051 914401956 393797409 26731502 820515139 729585483 563752266 997142546 109764515 136144885 220872072 254160382 237612870 418138970 406596163 759634113 61041851 558168459 933780200 558416201 519671196 901151075 300055908 19160710 877891216 365392096 948963282 931995540 237457047 588155789 93322887 829012099 111664616 977156948 1053106468 927014891 876502803 564095931 362114605 496108447 754646571 765968476 190786285 1054065713 997545272 444552899 385229190 362520948 221135953 158041211 258188129 909327526 1049807146 420048822 141200960 380031204 521054610 691178445 977871331 192413941 620844374 236499531 580451988 925356358 883783735 1027964535 315348579 211909942 797543778 802090056 923289178 740227058 714831805 774807839 720652594 240969570 1020861677 623152837 267035339 77605938 198678584 693658508 1043557928 395015906 802629682 161347176 269178072 1043782440 324142700 868981124 922676627 577822446 615532485 47366910 735657981 615782376 252163899 889232029 926513419 345350734 729878503 904571904 931709355 385931827 1000084163 412126619 602790191 418224913 143475037 700208231 44777370 568123113 309710724 351035900 256817422 606006973 712252975 433095708 852622532 800273500 970527637 188525802 409511564 632833319 96269925 489896950 151989618 739252080 249640076 118328128 1035563037 807211316 441385223 592732434 629008673 1039395701 595606638 960594483 49631217 107305312 445144471 655275449 1068166445 843837292 790984212 978164188 366288332 77651183 279797316 680689794 726690935 657003537 175331582 661522222 695442690 156586108 193823765 338393063 195736966 825340368 380649097 1013090480 465757645 152331034 128884366 882511944 761123496 575503902 724646760 991110273 684981290 76570983 411704556 987207946 56559693 444459262 433742545 193283871 880669466 502582561 118504295 915800245 729550687 514796998 186443060 134788293 884734681 296800835 202956694 241742184 1058809600 853198404 256594304 831871755 72060573 724088452 546794832 832197587 143079279 818272843 697021212 224377263 546150349 954735149 820657167 156288299 978828493 932493842 1062880490 861783429 907678199 812713916 224702133 926637085 505273126 666268261 576361579 156042800 724013270 1036342398 503021190 249645738 8466301 515521323 249402314 763550754 98408626 1010458958 221271418 221859923 815767652 580073272 291973152 143384956 1048549289 47376513 748335399 31633012 742659182 893100352 780551869 815753455 126324744 872541205 312313409 976833880 434077389 86654795 419099786 58090039 117454371 797357715 414500132 280301906 91476183 748859663 675367954 685005432 94840749 449736046 278205968 351535460 213432143 549600436 206376680 773649981 781767739 240262644 144241011 229807244 770583626 144930836 511370918 57223688 769183941 779648360 49016033 306845771 616112842 1052808648 640675643 111427774 597314653 841559086 225688390 989695257 1034523181 638831525 29033940 446805211 845851243 779472557 845476583 20270026 702413231 623871734 74661619 384691379 211260391 71298478 724024645 1052907048 833360802 597626843 724808453 581717279 769295537 895948521 515104425 923350575 94078007 362423678 84494023 200030582 185352149 607755821 63164728 888987232 611135282 419709531 42922041 570589789 954617740 296571309 157510036 979743095 43915664 677175152 865409182 732322485 331868337 333444408 348512705 773384778 934523739 58877494 223341817 280754463 1066893753 884753287 977535080 788412644 974274173 394644983 563972944 714573559 979091851 1036214895 104976893 970709209 985001434 828652256 356508749 411067036 1053387849 172132959 273875547 666193561 1009309274 176303536 482083599 162799544 549806897 484336467 1020127081 753573098 447976868 355817024 858607160 858632741 386949119 915690118 194144607 503579615 460063602 429623747 34484789 206993240 548836995 662401328 1066846834 899201205 464454008 880535405 27015396 654343392 637908286 583384488 11928112 242077680 254818513 336585338 570463092 98108597 542552564 696265525 712984034 951788093 1026979847 221711328 1064048415 600011243 55177584 176432321 501553670 407745178 273333385 473627718 924921615 123639978 445423766 788417193 702675091 797794828 564944176 964690855 444848089 133340194 574962584 992818793 435202795 119655200 396130847 792709892 114922631 582149982 777339808 911528506 816234167 751434201 196579133 44529128 633723989 927240750 727522741 315396699 1022262314 765238794 806653167 764334454 238132121 83495697 1062656304 493641659 555613394 683775751 602055379 545581540 43072226 497766227 1010173459 211220131 976785 765628604 183372567 503519834 1011994448 567580821 17244466 853642404 365025267 566319474 917424359 890036309 265220217 1025541783 265747104 1055232967 784108421 723061690 331671075 899418153 190509577 912428989 227013275 493213627 453182123 445675526 849488857 121522793 8843617 489907359 987392403 457427234 75797263 764935095 248983705 775473411 900672051 734088581 90478262 293733102 544956834 78882407 42360694 60016321 197089575 951456568 1037033665 217483464 784148168 62887685 179069376 1040143004 362447133 122700228 500590667 235782108 935284915 322667118 194861014 724538363 733853858 356913073 291570356 484308668 281881473 748934679 13452019 554833375 868959242 821684391 547115183 525387609 988728527 480899905 237928792 1015440842 387440123 937528036 963023213 679678331 167997274 407999112 544119368 419857043 222425480 534835752 907500474 578196636 975855935 57643913 833887441 984938760 1053011800 615866127 545681509 113804311 946166945 93126740 324336931 252061388 809169075 366226416 570098508 856122172 562803729 279720675 367238424 624414119 926321329 593022974 337231309 655782075 842784927 65664518 1054170413 888407294 612295997 147561607 538705590 934169007 997911816 285374618 407733733 921033839 974395053 250785150 35818648 999831084 924889006 971627890 357324904 223741308 566056596 127128746 1000279097 735459022 889635990 325181219 573730651 954572907 706302762 458425153 1044615474 588417850 167265769 642563731 138928320 124844103 563425405 116927843 961960478 12929561 641129145 8457922 80290861 144851567 985560375 102852741 311611019 725384504 1021967428 794987364 692083016 199679450 651971488 90125384 101771653 935911972 859509141 1055706454 102253956 432136684 740753642 716687336 909626343 547730787 149800344 1009916506 968584506 375472885 936712101 433535391 791554776 181200178 184619039 135244064 813610387 556275944 834734962 804977972 912646097 110597597 1014014965 1059784557 88002010 117108203 1000225447 319513313 774938428 241879654 70502667 680712609 507357550 496176026 96422523 711532594 343722593 755855433 380715487 773667649 115067715 690507425 778221103 901715864 634845122 471262098 1017597818 140015052 792621140 69097519 133786331 227590657 809402909 167499903 770499240 775991265 467847832 384133459 841900717 905949769 724948050 360158032 827482688 961424747 32821284 652843989 518319928 292287534 379050156 414105329 1013005146 187149602 199770364 174813773 600845488 202309172 121034491 1071685802 872892370 483582470 258851732 895424314 474197549 860712722 936544896 976666446 692508917 57156848 31714488 549904401 813489700 85936477 772655973 750639443 153832280 238139860 910043233 492741254 510904619 826519701 11126730 778998704 595635738 596258422 7193909 1003215333 516690678 632264650 1006920485 260290820 510334924 589334828 475289381 439711805 1051006824 30529403 981492317 384584941 21289365 969413092 547561257 850130345 727597482 789716047 751332061 289125683 988838488 806162291 89379555 797957933 224000524 327487673 554737750 950393069 696705230 300905552 757421348 1057782622 636155621 19291102 475759786 818814513 170934803 1062997177 453445981 247757000 598248271 2568139 931251686 768531916 600152752 975141024 408574750 848323389 356787006 495624763 294762319 355621576 658654563 491769047 712291518 598054202 902958890 266806599 1054909581 28044454 660396872 20969081 314248646 39877979 534398986 376493641 719350570 957057397 762078243 168919851 540175144 658673973 189385703 21937607 897330855 824783873 12428405 213481644 726170734 649982210 259501956 777356615 528635084 951242701 981933718 897564656 705808342 1029829558 969347183 57699228 311355382 774127805 166858785 146597960 262735947 455833488 215482233 871021276 585122602 72653093 686527016 507714775 730411811 424835054 1000998387 601784240 596790627 471778331 965701301 886545480 85603351 553642591 704619968 394504645 592818433 878833139 54498681 786279240 722252327 439258254 732743413 548807903 159793917 1034988164 775727140 787857124 239098710 764152972 1009486209 331196032 160203030 309625741 189522222 505678631 913061677 491861029 1015942260 358669074 148088700 264743378 489014632 530081747 233422096 148615159 647144038 524028139 385768961 589733709 618183402 840484801 973624077 1064702345 458906471 895592907 126360256 175769024 28609531 1049674378 149119600 842818835 314751433 292709927 267265394 550705481 833171519 1002885852 969201912 816722628 788629537 1039981933 490205230 1059505281 673289057 374501894 835909643 913073778 532924010 910315695 456194916 364755284 410581451 718556137 399815352 855764489 259794334 941009926 495748854 299168137 965830609 969260212 297093483 262964844 470459151 336697171 632503017 577272840 376042081 252967972 758554801 878132272 892220145 389239552 818408134 784923199 477880075 366535096 401058310 91505673 835059437 824769281 949293190 576380171 356971428 423600125 594542218 251671711 399844755 854045087 657386171 536746716 645984690 453934522 965236984 877690803 645786983 759682333 1000176231 458028542 3082270 322597601 887036296 254438985 1042103483 807399771 495067606 265011727 749736942 926472813 590241236 1036005181 503725932 638501646 602078582 823393375 690210982 79870294 91789405 459438063 197932237 888254774 268320116 673293077 172367939 841014322 750274130 954536932 1025912056 1045130351 658877244 841355579 378696841 244659967 978548304 39567442 596292281 873720309 228813458 952271706 710397210 1044219661 202976857 819137038 714924212 254710404 865711 225970826 213688559 27459992 961449468 191227705 300550204 393273266 437975803 860539074 117019493 110398748 605603862 1052184008 15127004 327414874 1026242403 65945577 562232494 576077280 602848696 760183145 805073053 833787785 829809386 327543129 135538613 942094300 469445715 491984479 218928733 292154556 914741399 593856437 690069087 553789345 238130638 1018864085 810816039 18506626 474127069 290455889 1045175207 716553590 898497602 477533080 549781951 944565480 666817554 36645528 583885026 888955159 961248386 442791177 49903140 744018964 408856281 302512736 369794641 768993733 630310 29695135 891378290 704477262 894817141 346677485 1031787987 93464517 763939371 967481311 893538275 29537067 53281887 372689704 437582509 443040224 505756332 844278607 495329066 1054895829 138166188 756699582 391712568 736819209 412742333 388491426 108454878 699142439 623844951 724452265 85114322 168774290 914309993 751833928 1047992984 246263406 284601599 127498817 903920957 837523516 312621007 664154075 593208856 381070016 286825641 422812138 128040000 1003876915 134719321 284131857 342865647 603518977 451602257 228325507 516121646 858577145 27472759 29621923 682584254 39300581 270358272 39341188 778992942 636818891 829476071 666071450 65952593 775573374 1019604407 855540185 542567208 394781683 796230156 898234577 1712488 760764687 309635491 316553519 282718872 458048372 1059997640 473750742 114626412 595288972 87142397 504520627 500351012 939565244 574591752 402189432 643087051 830367001 206987725 161848638 971546056 284396272 931813188 627291665 612664071 352467890 684635253 396816525 1048554861 390470700 96899884 105198848 800700797 580005557 140326634 937359279 671846317 594905718 667400310 733922275 940465722 682450200 527818886 809344988 670608260 714121764 543884130 14539916 1011836378 198864190 543180324 484406065 368795966 560726433 340157759 593007463 742859722 715578812 825746016 857812396 501356762 539730303 348391617 202521244 572558061 878433853 744914011 754578739 839134813 716546473 568434019 398876206 147333951 246831294 969819123 543680321 503404512 376880281 134851051 886430670 709365040 102383123 157881425 1069854275 852442098 54281261 444643703 458707782 551471531 398566840 121579745 21625737 833651314 820178011 293108937 773779177 1062929570 44967235 33295156 459182444 929599738 677925339 897674881 320238165 119691406 261948389 583867727 777713612 506048612 737220836 302037518 677225320 391737907 800993995 322026067 1046765418 90868996 218248223 1000040170 88850600 79415420 555060035 164341961 158219320 204016511 45121294 598577126 515138889 1044498740 699526970 246055951 452717018 948218086 618218147 780281311 446238850 969359257 715014300 401269393 173562633 63027147 839046749 173558936 604062203 643726027 91192902 93042725 748453542 477013000 571119686 91779800 819891311 994423882 658976254 421733821 552643439 114155087 225958802 522140150 469805390 878112516 790033607 266450733 343906887 938689965 776307783 233280763 724022704 896667821 441979836 376264516 300199480 1000344923 215479688 118966634 721630254 916188989 798074601 119318209 997956574 1031464165 21806972 800543462 686276029 1038974113 843820271 177000806 570530270 867360656 550694643 470474657 238166055 266339148 471015339 752275672 691190162 38977500 445741067 267577434 422646953 1011636712 581590161 143587847 264891885 492747940 699589232 756612635 213429 628249196 760955833 725157658 418927796 811417405 993083694 922589748 599709914 985262186 382734159 708916916 63751762 212003704 172243277 728939730 535938435 673790365 464284 429735741 566143393 453782307 657975043 221610548 857535941 474123058 732617740 367240221 934027328 73627602 568691299 710104710 64365848 808829951 114934312 943351960 731118319 949853444 520023155 548203122 775301280 985701797 364897381 411449465 679088741 488003186 988366176 111667827 368431743 61401988 213218387 580491272 1036669427 442129092 653269461 879623085 255610423 638095333 720085240 742494620 251081133 624898702 485064480 1029244428 1026672219 898057468 341666807 443629409 1037486995 1034952335 576968752 53549643 39834681 1058031574 769499858 931358184 129466506 555919752 276650640 67944455 1034924291 445647225 438006232 95095765 742409576 251271222 95567634 433475406 400577082 802033404 22727353 321087367 377809383 16662795 264325515 91226979 649288179 372630603 439419327 370834375 450175547 105146149 100706169 871300742 8269578 635003621 626385433 48687184 554631638 129103223 302390381 715179950 204556014 909245038 465954967 138542226 925261492 373209017 142299053 758251701 870744438 340314513 1019260203 992421694 302780 583305132 502030309 809008166 185521154 317594842 451109434 245621283 551939161 599569687 880112547 983464833 463045549 303877373 832633022 892401276 514564134 393182936 309214811 415266235 678157972 160527761 613137369 16941719 888136431 636129622 54313567 283665870 734303381 666843546 248609350 267114252 1046810077 578816794 221874562 847589974 443994910 79278264 624246672 255844251 746866164 124513810 699404559 774813846 857234011 28538821 323202626 258888797 786201158 658046405 832802441 487038311 64109530 772588295 324267110 417683427 874089617 965915629 400058686 791578213 630282938 875293459 375383745 712562936 2340691 271003325 1004218797 778663853 1046819368 91645601 459295709 854305512 891677482 249081481 164694721 325938970 485818498 28418824 208732853 296513732 857384931 1005896000 710272764 63618364 907326022 844026418 356322997 601550233 772757263 185758492 368257868 362645795 591019162 27140703 1002788660 94292830 313329960 70019211 698493014 399519540 774977868 309736226 543887615 117832647 217046368 388846522 300920018 167007670 403167575 329465628 183052097 835359731 469705041 83562208 412484220 385988032 186124666 880880128 321268924 402485294 713084964 26493755 525292358 910683929 781871424 158646215 369623166 101626814 623836990 471687584 875538591 945315446 840232560 951539746 26442769 918404012 287947683 1009099482 408462428 898095494 835207881 569340011 25826639 375991422 1000936299 642552134 267688183 713234123 820764240 87366093 868726948 148733138 586204021 456016038 112960957 125393522 724494320 857995780 723359957 872765699 866104866 440517976 358290797 956703731 102444356 131037868 1031219065 671570044 581870457 925592342 509170419 339176683 619454842 388486766 4274577 112215739 867052990 594929282 347839109 754139140 684328563 131711995 594806416 1920643 740170242 905334507 611625190 854294551 825927435 581424052 503995472 167577867 47871920 530383544 752825177 533239803 206227727 213128406 467133486 706613514 453961775 733412625 213435823 341779115 69722234 992082510 739821765 236357803 771195014 579740345 30002659 618022970 438317596 675217408 901871171 236085590 278159998 522165449 97469601 222940488 803642450 623953109 287727760 507172064 400775775 284854343 609423911 216962092 535520766 1032072512 603979709 1011712690 392664302 685495049 49561332 375678036 227024285 683141655 944909699 21511765 1012411465 826581212 173297080 730335659 642723475 660101346 318213866 1033179656 339926236 787457098 317109285 529333001 347317136 564178968 107818046 249553264 793890721 194224149 1052449707 823027530 491012236 218172778 878716120 1051945358 464426747 871816531 281287913 264042861 107981449 104807923 1060740726 987788455 470634069 942262961 947261252 1039573239 532771491 955139682 98366386 372774073 452474912 436441131 313752427 197337692 711790791 628663948 565312945 369166829 675325829 558066045 10898167 938670412 687680284 956443413 648293409 915415273 659483402 48213521 822948658 745450422 1040387825 454546107 1055296018 152345059 809130178 899077266 601256153 235525492 853609866 212189939 890825350 800564981 590606070 325409605 169100217 302407129 811486366 376613077 821082889 1056943403 468753615 123403999 948720196 417474801 814643338 783548154 1027465393 766694016 217794628 557519790 795514141 781695592 126338206 929153672 395676321 97271534 625740008 641633606 233015141 799640697 509843984 313632017 317594757 459096890 1032945462 15321024 420298933 837919250 1068469944 217969008 770694549 182051282 724356546 998017737 777344546 1016993516 32571017 652050052 308541257 400022374 341516325 576856175 248038462 659113092 652806893 271889132 349375089 675622198 134233970 640267351 57203656 531441479 115741373 579187779 191324103 426344697 518627752 70677099 145030743 334025928 771105518 362898303 416300909 393399162 794443029 556746618 583127243 324414181 753260635 657450070 124320685 738765421 812041380 922865748 264321085 113829994 878619434 320873694 539951457 882423864 297965312 429706664 397044680 514305283 191724356 342200096 187018428 229929733 45903599 738115661 347867647 238164262 186497480 537913691 326669134 530541555 919337639 415687170 143393153 608427636 439588035 103470687 207624611 731162202 970560446 740985211 250293546 234756851 789804764 928830809 750614532 274237146 951316311 390826317 229321827 310213961 460227183 108379346 111095817 754339097 95852187 928043751 328344471 131021236 123177414 863869034 560887705 564533771 541870102 222089377 632521034 575445763 597216405 507977281 879826209 600034874 352985721 319509529 533514659 727095838 1063945309 337888950 855710482 772184110 752540663 649980788 558684483 596127722 208902332 633480937 60697679 998435664 165011692 257024022 425524687 629834332 1069647836 338834142 965394296 445022098 691515857 336492487 305449547 384429832 720022785 389666524 389754115 752058180 381994559 804085308 635070197 67777618 131736933 770474636 931100445 265645530 606518524 793633141 382163536 887512231 570398734 720701841 88028447 591124184 1000841335 205339465 204610462 1008473315 885458074 290695358 497465543 566510719 714196350 912885723 204876325 845310464 580664593 693334118 849771140 81619907 169222416 888648080 468104520 1034459426 999745090 745653790 341694746 42423669 727646910 770752970 866043930 148119375 197481901 400235285 708745072 386053799 976501748 724563631 336398183 637091234 418700635 172377210 866112675 406525146 531812222 608339416 96520217 837746121 683350960 530614850 211283611 126381849 360660850 852472121 99987178 483953106 788564595 820109294 557253268 482550309 281115554 46975160 424107571 526626712 579834502 474850414 6535511 667161160 528485294 849608434 380760352 160928608 455600426 471260225 410525300 877204882 97956858 117750536 410944761 300448549 609657071 648447443 354921439 606974880 871691306 1035826321 349260856 748314758 348417025 97415384 430365866 141662986 38181866 267352035 417785713 299552379 506441415 587819387 1072480311 772899319 920653568 681715528 81714344 185562683 204733601 70753269 319426486 42145243 877911838 459153640 267409339 1065189007 157473770 809941593 815682886 35444825 436549431 39391352 583629393 358036781 7735018 212753145 971758443 632762190 44542049 445392038 128416673 137699949 442863926 341845017 433856088 677276906 103429677 981165542 730575995 39122464 453949036 1034981813 298772305 198581326 1012964273 93787045 433480886 114892772 840664639 816515253 804601986 123339777 683765633 730789168 315650179 642794094 816204546 345213805 1041568768 386244009 830495507 84026381 273401029 367576720 649875691 437229766 1006863852 90931156 567223690 743040861 851124534 291275501 51357300 719156381 458776832 294131115 814459074 984782108 871213000 908251914 698072266 588088798 817373523 505630272 781581187 1042335395 211713384 590802043 605133249 876173975 64317501 790788304 421911949 1048944860 932616259 590217858 569684778 290344931 813786161 185053712 575356628 397009016 110720228 449142245 144268324 245904038 747239739 999223119 646996890 426108533 464375677 428946009 820126894 812830999 567293523 354153177 119212394 56870495 131815414 231786432 493929911 402495454 665821175 45948895 501267055 356114867 81008440 344147159 533777567 767527340 1044305760 634082620 609910816 354114160 561304204 350626910 861718793 911659402 490366584 383443352 568084752 528213036 507024288 568834063 387737972 101160065 771192351 826269099 932888955 627535164 7466238 452687882 513152695 795585925 335411595 601900581 748505444 856881761 1023580134 681879114 525293664 1048979462 500562988 947084532 543265874 874229406 467661777 937349523 816297255 443854941 287094105 853809503 365386416 114366037 692402562 824068738 629670362 208517210 730305905 159406360 281775244 702970270 842615987 873990086 107469893 571468349 1039128316 860978215 611688735 857947438 196331602 594609245 752918988 78234746 509224138 460739841 593787576 1018673394 963331442 693092127 407622907 299707515 309169687 955884599 21363578 98243769 858404838 603984013 527065623 146057679 385309824 576250046 100521100 1038856049 439564577 984846331 944723763 660009248 509379071 731325492 613918033 559437186 479357236 75902980 419975829 728222908 950269889 58636423 924089808 222326716 949906904 888165935 906752 4297036 537806654 330492108 879627486 320646427 463373609 1045218003 371300530 893528302 425537324 505428823 42796334 947511702 635353268 871317946 441893765 29496991 693386728 117284025 745491093 789354267 896642436 743283689 799739389 1043603044 570142366 475717680 706180409 49993173 980749286 918820715 739679808 816408120 458939250 613974532 421032155 390005259 919914746 525043947 832584466 326077233 159069368 405540406 88732439 825956447 1011588034 817577425 595115813 381134392 854039042 1029961481 736788923 522855007 231630031 173298746 81537359 829671531 1005846039 751640191 162267803 149263033 295274409 856979621 570779088 1003349431 664043618 881334846 507519221 936823229 702271098 16075284 23336135 150733070 341205774 343550941 787908501 322848561 789696874 420550974 807798507 380493402 401421323 799765959 810264685 973200439 871958974 317651660 373166202 174947003 944289007 110028970 744614825 505860386 908219197 221322368 622533067 850494473 166893003 657890267 134742709 893400349 384012911 955965609 439676174 594206702 1001710188 1010347991 475265761 946266818 824099188 707815476 139801892 415551227 992437109 901007087 917250670 253040600 715335086 354533467 701172020 45839980 306237427 16251099 62693356 908739414 97133512 101957663 386867533 977174462 477760389 656444091 956156468 101259448 49867561 396915979 989302707 647009957 456634991 476918515 958391994 10337916 859216174 492610113 885505617 559704480 926290907 997635643 94562316 795732054 692907897 1239117 398101634 194625528 53053344 107249907 742756607 351661040 46588370 432064225 552935589 774350957 152730035 852640369 882848361 975807311 935491122 1028926788 580136039 928148170 116896011 672161189 215018900 411110909 319435667 474819158 249230152 400230199 850074987 376958466 137721385 354510498 352918491 886843878 13467771 1040685062 152440099 544899556 458106953 934504454 817511710 708504705 140467617 392484980 301524109 99875663 1032940685 287165592 568261899 300680447 888467148 731724721 570019461 257899640 232868307 541018986 233740628 840878003 406306248 24899611 772983947 898851518 871776003 521406588 531408618 544980525 589110987 976921507 235460346 19365160 489529652 249225479 101891626 1056322166 881788568 615902325 1041005460 970165192 895934536 72815612 839336282 257967479 338482274 854712807 418277721 350534538 888634920 714400823 1030423460 76713168 404722679 175182990 448191197 1004776074 617748606 950072454 28006548 686721166 860419488 614569964 609804473 219882990 414575081 425371340 1059063737 394655438 253147217 204935567 276733042 762991465 850181366 483046974 446949756 910085040 621991708 708718294 168363569 1010954788 431876164 338413568 1062653271 863094013 1049585945 960575823 849328339 659481830 777712947 998085445 214073178 394849884 398478796 697082569 214830790 271072199 194133328 548794885 299245489 219110826 759789339 776689790 640616844 464610327 193893876 134217672 378519570 267799970 866503207 554453623 815606821 578402589 718959062 742297647 632929103 1009694916 825459655 743634959 345227803 650088386 398443374 853550076 894881316 149245151 729604417 71960902 129114771 74367044 645391531 642328279 982240253 315611409 532299732 804253720 756438561 183028835 190027608 721461353 1041665326 57226451 836856596 271875879 620468760 664755194 582602234 328994070 337584256 19397725 299569592 598749421 1010332156 1021029692 535062037 644698819 246756550 543334434 404663229 594289472 468921074 709929686 332616625 348249336 98709468 217540085 1041811683 133336360 1001986239 179770842 431509786 172470795 41633741 624047191 145483948 46635395 612547165 519345044 236586712 294011285 913589445 183158262 350308321 242449704 20850969 110307555 328671076 52481725 504979391 535667810 566541297 52477849 1045892523 420107095 419598769 252979993 742966010 478564613 417820435 253143765 491456120 911166356 817884805 1028855333 484372404 829551764 48146076 1030780202 573979637 505981972 313563248 979002109 417333399 1040113017 933518712 157372657 136515298 612733690 964024531 330406684 865158115 224927671 837332644 870082238 588292648 1062867573 479329974 287337023 897647238 508363328 1009799727 725194006 967031590 1036479457 610070922 43006465 414151720 788239778 612658300 712751285 798027630 433310324 513807698 278188994 419596229 774023014 691154279 816803733 500889613 948584609 75830630 281206652 545948083 717437538 357748674 264121667 329256962 1040978533 868680261 1048596673 354825863 569395158 976484697 892076805 245030985 382204403 1059957589 1007210046 540576549 750506893 132318531 755688877 178155615 671816647 298692909 92272353 1046508646 596993515 146592184 516861350 259074510 490229982 208085377 965031562 962703385 463057576 147159377 247721938 481112922 504427143 223984471 956828586 30713060 307001925 4377862 1484320 911100160 473286731 516038124 285024963 689467495 88654982 564203708 756607416 760299843 971821616 307287588 31303253 51589160 774228611 124835664 247133808 186104098 215275424 1042364147 541827311 1012348766 701569272 789008332 439198882 14363237 691089476 392788481 775236952 83710344 496012245 527955093 998485112 13583698 426089657 774960478 630243589 788241646 249439077 768664642 952631766 570751961 508982690 257846088 960731002 72085874 35847029 645313506 158436806 160903647 403894396 112093723 1063553521 1014580344 55984399 438705679 1035954831 850415354 344246145 344658806 43856075 1015477268 90117562 354474768 236201312 625594796 363088914 579029313 777643763 811123886 974980560 1046840033 943761271 306973662 541347386 219230114 839160150 477683571 222632322 150552013 810124136 799609215 194616794 855085662 410107925 142955049 118202144 818065402 1062501222 761794780 980524331 808401473 833802012 11389035 226995658 496131473 579040997 978160706 168565239 930351306 287870230 1021040241 322935777 853756586 596494654 1022194060 536539466 943744751 507222887 120478820 884393477 775409999 207946775 808377379 664894692 456938638 80298928 328491556 731418019 759693542 565949353 1014354608 1015024185 1040130667 877220778 616905917 939210415 1043331855 900720869 340070429 1021857896 934909700 642431920 67706567 768568208 877473296 609792595 928467523 986701282 876827168 995829315 468171212 121945724 604879590 857415637 922984918 897715315 846325929 677237818 823255327 234414111 776044943 665553968 268872865 292513539 702027227 112613042 575413906 110925485 929648344 408758301 11616046 874974895 10209170 843352769 804015172 558677653 17852533 1052885937 248812136 77094037 408779179 681849438 278046235 531364768 966582457 33875670 838178928 393338617 939557438 618934999 42027007 390435851 110855967 106004260 46953231 637279961 627302828 871482974 415423561 223314026 602030899 799882520 599781133 607281929 942692296 562801201 148106003 712399197 907830240 1045615592 414825065 741284856 45996866 546477369 329435743 152524243 590648257 995981466 280170750 449519607 925901455 519685306 813416872 631495645 537004097 979482838 269453870 597803774 309764946 744116480 1069998975 197404545 712261325 1070062282 943323596 374623692 558659343 577033882 306222319 458509107 942434741 318505442 981729523 552838368 866340611 379301259 709900155 554441157 80336704 22527506 260771523 437020774 706195517 528853693 873622458 983596848 857162402 103876599 114483302 594416174 559380243 126614538 1055621886 80027938 968187613 1027599894 289942818 298829003 813274810 686861452 250921686 204675119 590354094 643096182 278315428 286890451 731430268 692493078 366617758 996346466 226300911 1067497397 4168521 815653743 989399977 490898529 465737896 29449525 292286704 996240045 606388279 837632641 976002916 390288695 474454570 927619638 927444324 405506646 137670385 700625322 121561310 881829208 193029615 759228517 630180091 319908011 634736807 211625418 857898219 561830545 528901570 951433399 691199849 721667941 183496266 435762474 965082075 91439962 500740160 242456334 443713880 501187108 963413627 609770940 437463177 732419735 789471158 681794333 937271207 892083595 591893717 499773077 997500463 712651825 250500855 1056102543 987399513 316361554 443335496 24846963 819094812 496078857 517751140 162676856 908508390 436701813 330036875 652103059 644696296 810632416 812090677 882313134 178046398 956456364 365110224 314940786 952091946 915974974 172300864 197862212 37618183 693920382 570036930 401638101 365747251 465240866 83934265 151088590 666983270 915575727 145453387 892215831 795277558 577475563 567239413 637132977 702296892 220020315 969047043 540505186 205278008 914379035 940448357 13229795 739999222 231980284 658012566 697696754 910916353 756797387 356171918 733987770 1072278190 496934428 1006543550 316909645 121559474 971737623 388991575 6008587 1060495343 805603691 659795574 593561099 84972344 66927656 546871808 246129916 796474088 951535110 65953928 558109859 124731720 985140539 568625745 1036814115 526741611 554535189 151152656 941997557 826632998 953523432 774549628 232838865 680039551 835710066 995737093 591068455 589430470 564739791 611476612 400129852 470552151 227427468 1018927224 906033421 101670841 186065504 797021029 367316882 507422820 816055293 564970898 827330947 205868823 842875799 1049631692 162834491 924032920 489378509 721859975 337139077 731017514 938842768 295521990 1024306441 669782338 156710774 236178384 77141590 1022907575 158875764 1014593812 566855105 943898937 706239510 204571751 731944685 627359636 37963375 464143575 423385017 193892223 307236553 599612695 268506020 305341919 1041857728 1055177016 1047567794 262728785 33697469 88859590 472823510 920867675 138426481 387114043 520754193 71936138 315809755 543262284 994475399 327931399 727083584 614243218 746768761 684226335 447850418 895966827 38560819 46147991 185705589 736671243 845083821 413872501 59801156 776383650 268217797 230647135 820190677 583841574 309362874 765280511 751955696 998462417 673309469 757815509 327874368 502116631 90903275 979278200 563453157 454991088 218689143 996656541 602949212 629714180 597964808 643096404 125001980 926974255 41178781 908433402 334157486 570920030 961661170 593199744 606857644 307615836 806201955 399762891 501164789 984341386 155870893 123530202 597110879 290081311 445241368 344265061 831736915 729855561 130368500 513784013 630704501 906055432 194050259 22563710 578752314 525553239 699362534 67052662 447113409 431385229 95058556 928950376 557985330 98563571 128054099 20696815 774014204 889846078 624134941 496523184 187990525 563479663 806868474 554327027 492964707 280698359 32877947 1014490738 130079632 353772707 748949993 398024907 136098587 362335201 226220725 249470248 807343667 45020809 99992852 1043701287 171793105 1028292415 196041255 750362519 1067581022 142570948 433118193 863636376 294662439 236452137 708975574 70278046 936837377 1063332580 670333093 8588782 320323567 909834143 636702561 404342113 287037121 1069791696 548459060 1018212025 113825147 115697444 91702807 610902822 391598982 394553379 140312538 565864962 61686079 800822818 736317098 1060857634 17152475 928948575 980615721 302361140 419295760 811671695 214540314 905690201 807833914 393384870 349774221 951326357 329246372 257865698 244474940 513943741 1005132446 1050107612 767260957 977405168 711409806 699136217 1057774419 44736199 836339602 694552724 98768432 941171703 392483914 778867479 608279707 439286316 962493498 426047692 1059702582 368736903 1007654948 484271598 815417476 937673502 233279752 910221660 88031904 822402443 266014048 522955957 735059701 329687019 1046914493 1039727971 622786758 925752171 34756072 542358032 812494170 580646065 719648334 712385296 665607969 266595106 622016007 21273072 842344700 968238729 302068497 989183724 1010152894 755535775 555987226 1060515062 162955827 297294979 170867983 14567256 293205377 232289747 1008035154 189692296 37052517 163891877 341627125 936176919 837346386 582718992 1004819038 795431047 217925828 628690455 284500045 61547725 852891013 748675305 346755916 390581027 1023898489 947935894 31480328 578515211 1073161106 81510901 1023061719 244411172 340164021 764861193 705173570 784143472 647643311 977578194 754566832 443186422 503066568 60263543 994786884 1050803291 30682763 896529998 192357367 41200298 808820704 756435926 566070330 347437786 152846841 133283485 474547906 249853844 332772556 603764161 838670694 246866215 484271622 396745496 216141409 67537244 929683689 672122614 255887755 729304255 230275712 605988967 945815729 608085354 761774828 618010071 581544287 735723770 1043471194 986317676 11169672 276168627 79692032 431429497 755244150 717073434 952021530 185127306 524412785 436490128 528290450 357137047 48452202 141643245 481200901 93835104 703208509 704638999 225203794 574989727 717483825 415122957 756425675 135649847 1020204199 126073510 145975667 1061468131 995328322 294536512 755106400 502100832 313416025 295907914 1044523930 1070515546 1042267647 937359283 1044091933 934358160 8995038 749189313 283604217 28261748 424920421 345485143 973051921 582467106 550640686 322031721 368130024 336117850 921352103 672948195 875540954 348616923 649549472 176009166 810664510 752766081 441865919 330132509 626391510 446251269 589944305 757199312 966944796 1008188238 241667839 630155827 501939494 915151815 163472347 667443558 347793349 345369818 590602311 814829310 506106908 603578571 850185154 845973296 1063780817 527258789 495831513 344810682 567933164 946746292 202765060 148762578 205086755 76841330 974389829 359700037 949857129 566039112 253269119 827026801 903782713 475958414 521321562 175216002 508236510 161078479 98660172 330186491 1020195075 1061630630 609991546 891899016 504341022 432003806 56689575 235262067 997801285 982994634 39540890 828310804 687168506 593699080 708824307 326318571 133434842 163506264 593712145 524970716 37887978 573199522 404837876 1037788689 871753924 99493037 250846662 265837941 176686832 649391986 1007502593 1017617916 338234133 381666255 801839774 273388209 895922327 661122886 972753459 368999473 422166127 373702318 439967074 954282652 247218380 942726367 438759743 514242160 899613603 707749881 17531464 867224619 391582609 428181859 516506974 663350592 207577444 756840419 940668592 390559025 917756967 1066354696 958885454 882914413 942558433 407366008 99372449 453744400 385610050 376457100 1000097074 95406 805668027 515930718 351491130 201446477 82950837 703475289 159066888 380903106 539594973 1050598095 194285440 778471204 828476205 195158292 248959286 495452143 116585218 462462644 856661040 312290573 278469691 994362640 726822515 240704649 495819968 292540615 136401743 1049810708 649148406 399994552 714498625 105767270 862301832 600531263 18054551 2550253 490663873 421329979 957273232 282249222 35394320 16588654 691496761 253073541 894544385 351155536 1034657855 1065943809 488203203 622195592 364766690 397921159 296630839 407063779 598444131 650479725 432299874 481906361 481113322 677796844 835105854 804632240 732973901 111014881 447871991 427065724 593476161 695750585 167202658 17451044 618063764 1002536965 458489226 624611809 308312029 465100392 258682451 448109068 554225770 896409106 1037606756 942774132 79559705 680951335 313326075 445357075 714299864 381232545 810828690 426091977 864124883 389766538 129585645 250449320 1018354725 711147776 114214699 263633031 171250582 459335243 473837215 864269064 498469890 730894099 700165115 310084225 727329413 69169208 667039393 188860416 257121166 884780567 822677888 546572752 241428788 567520811 848829313 717525302 1333380 419782990 124470299 558533698 62910489 494097344 692868322 596128408 878594997 318408864 525402181 153852740 330255143 344421601 184746280 441804615 720337639 54329143 412370686 483030638 315950894 1048467817 532757259 568208283 183772536 1059411255 159984126 376063970 611452525 266036639 532559307 977694065 340398900 1056118110 144878512 982623680 477360081 1037771999 1033625853 473888454 473701623 1035275883 115347545 242516122 67478459 971866110 224673488 379420502 422849207 316840541 711166921 738581077 293654077 354059838 731948064 987631708 1046347104 76468084 675716179 388919539 969209260 195210690 397411286 457674299 576175326 282086638 138510098 74103497 719509627 353783490 421307842 1071766724 149494994 113479604 508584187 180986303 619367989 776734452 479889177 692381997 643275 240184279 979029276 497157316 93726131 139226804 675334667 429688940 553286861 492218211 566835247 371775927 604240448 648613590 108541502 594091857 436631381 982367829 143318763 490764110 1022744350 709566506 686729463 1046630936 294633189 136688604 196418107 976881657 422485620 444468081 608194952 165085989 736031690 321720281 288636368 728585694 78833937 799562050 327683016 8017889 503670290 759732591 287256482 932702092 356191415 591546865 416250843 410310307 203621724 911002141 265971648 493448111 53947235 456062330 720774643 834009046 751732962 505712486 547220325 664037643 966385856 150149145 399135624 220122507 637831939 413117613 942174314 1004197036 814764249 578077146 885227714 931454726 800714472 848711441 961636916 539804006 961243741 1004057005 32936469 888229750 491155571 71719715 765751673 708944410 672585961 409646117 988784628 475984272 372954407 822900939 910497664 905891573 110613762 461841262 248241143 944245102 996500362 431423545 89187908 256494300 398514001 151310151 688769238 84688435 865273673 320507833 735640294 936780374 7982714 169063369 1061317046 254354175 966290750 322915443 195477472 562642302 403254675 944581885 193477698 116726485 532518864 823824207 902895377 518357106 118853739 145610023 618497447 669201514 711173485 93936945 1029803923 752675390 233490901 173428814 450991177 990368035 994764195 559996954 240105232 856179168 731263481 978280918 619737644 317460766 61975660 155429445 363158367 116488269 186984170 452824716 192341405 1051578059 762775491 665922303 310283678 921345393 274651071 523521099 115505915 618263673 906719426 394016013 54038796 449240119 462389281 317218152 776901283 519752876 853904770 368928443 639196540 964181865 702700835 706512548 365018378 671127672 953644771 701722438 430369185 42755188 386368291 960965807 1056333 745501079 914248936 36674749 311469225 780312160 686938201 437458909 141630142 647608623 830602206 764441475 371436880 815567301 43413466 1049576357 46950870 963130321 891171439 221736357 833380758 431659179 346320563 203291569 1006832651 152900685 206965257 411785475 805942259 686629659 708942513 260768717 1005880820 569163087 992880709 311967975 806309476 417430216 527375894 953536405 109423980 774743342 102271205 578821859 586696479 1001855736 203626510 375405290 6933996 712343175 66879254 274361028 292567421 21828287 244428176 136770947 590504227 818728709 280162656 436432360 239731304 989857756 906028594 474008706 410281932 1001679167 889608478 227845505 569036864 353663288 284909219 502985104 860681776 65808580 702388755 574587361 494428348 719076241 513638173 649824342 817137672 594005973 627258612 20473760 759329866 633284382 281656894 1056491086 941029687 509415092 518521384 267313566 916620607 343622049 172205535 785607426 724723510 1016980226 203300581 465487078 915252334 216387524 805672334 259451190 430576760 395729965 421765851 214171721 125299644 917919621 456453486 369876647 184467650 747155104 1066755472 588735551 648064995 20412213 194212514 775611878 258644752 649526310 34092321 336006926 537390240 982820592 822343481 1059505608 383241886 908036804 351353117 149620079 451899497 245367970 692540257 608825629 961585838 1056840608 391769201 1034318889 344216736 326183640 1043283602 493233298 15830314 760847681 422558138 705624097 525398873 379099668 981758834 680266830 370510531 683182424 68820985 116189305 472368645 973370249 80755494 83265761 663253149 971745383 897245009 816546559 1018861514 774552600 935838327 688026849 61101924 239293798 632311672 91849620 509873314 368828557 414980091 1052698504 91964015 1018586687 372122249 976371378 292740523 117944548 435867567 486915859 174313330 974240980 645379331 451203000 413359780 309832027 454977079 1008517292 90723503 1009524214 296131787 257664424 663867247 669015115 852213888 38494936 883606700 487389658 16229091 328387258 648841156 942926026 523318287 115662236 169403423 613723091 316570322 529334003 341449947 15122372 91816122 140355372 776374159 435247806 980651059 547333663 782550554 663078720 217997086 177796972 52025058 181355365 1060233043 38569681 753026790 17044750 1055508142 418972806 228323123 360261208 276800966 668555075 1002401488 187155770 1202504 36654349 770978743 865833779 279645225 778477745 1036984095 29713288 932467707 517572749 111964205 45424590 132766441 565350988 88709774 755032268 607169121 126263498 319439676 843040973 115867345 26970178 622128233 688369894 653471338 688950109 26623047 722561082 552442934 881482044 1063039358 557614509 114461389 166479095 543590280 483314693 604401179 317047831 290035662 886992165 510266538 128040668 503775745 532027616 3251647 834382090 664104057 753817037 689750509 75037548 126009339 248061848 850390106 219440324 839992688 463989120 497407144 1002941335 636161054 810472586 173596372 183144592 377895271 622863838 45222154 729178712 426528713 727259868 45683767 442883843 545567119 397632555 595257825 212768206 348185344 835846488 562308809 1011913353 614128240 454157220 12683046 583881856 801884509 695845685 958709003 934159400 745354626 96604747 270272861 57000860 531183437 1002678737 1066713915 674366463 918156508 849599970 219854092 94964570 797288402 354108673 574421110 634182448 987142608 381572197 326017386 596658997 861159001 1053010193 255594334 846984332 374933808 964261796 791284568 823121496 369153165 799556270 378017807 258255729 577449729 895831854 662375108 136266612 208896165 189743091 396720243 581261043 494490953 654768223 267329671 821608071 344348026 890937150 786275361 147572876 30057632 451773852 52471752 919593706 169856142 798958680 466949174 362542109 675456744 335782160 105666074 610467195 478872974 1039398892 37731084 232955291 53601455 27983055 1053220864 103940426 533535121 1013531279 414541293 936183954 370797232 896853087 103098789 1004587276 208615710 981369991 458267138 27715258 815536276 493584967 1018838000 13534528 1072573108 865546283 797779363 437494468 475379117 130025264 882962119 968648405 25456802 896842948 133067787 1030457758 731830740 780979453 329220718 507724822 74154700 350991423 155625252 386298566 864252896 959847810 235415935 517675387 710506412 811543168 949182833 571667384 259802813 294572753 960519649 390721058 613459205 658001740 782925698 150507655 49141423 108366921 65591777 131536745 584760880 744541250 149247882 229775910 7628933 831044973 557084659 436785340 98588034 844502281 564738779 661313931 859172230 378338665 140229309 656909184 228661049 247336624 701680216 280866238 410664274 576911030 134657278 366527028 893980497 142185116 638291744 254616051 782339931 890629384 129906875 444666089 226617633 943217130 753455373 775419315 46588855 87303321 347270600 202815375 1021783971 366395899 847340878 633080406 643265827 1007055017 626922899 178111947 1024637195 441520213 639935808 870391690 165683067 732634035 278104264 557067980 865166802 761055510 495382288 146907296 192800511 368241137 259300202 282899266 513272128 184365734 818655208 1012917854 551953365 251859574 165080089 1065786673 755881775 230006367 382729358 684868362 382995273 203413601 1004402624 1056524765 984651801 841276025 939416894 642515289 992411716 469257270 918488466 641200163 877326411 911347298 289765884 26350076 182719856 901611445 67241596 203030792 535206979 337656282 743979176 129911354 1060236388 36816364 904747532 32139666 344441840 302689876 612670552 577100184 1036531165 490565451 401799994 28274281 300300277 190762656 692487077 72551463 35608917 456050823 338409471 1011765774 272879379 720938421 676182681 183983990 1024561937 779528507 586674880 822154718 288487173 551181374 628509221 354111082 284584920 329155556 913258115 250503370 203295474 827314457 232248140 653961276 450242159 134500536 535155162 346731677 999944858 602038201 1003164864 96247974 51087519 579630289 834822701 43171013 321528346 416871156 926541550 1010986154 191771733 510021131 1041906550 1070328706 1070352970 429184801 857200708 792608892 406804006 676086893 185635414 291842615 777134125 890748653 778848422 955317674 929441639 301580685 901318224 759642403 174792844 787525417 457837069 823668021 799549040 864397397 401552852 599562285 1070536954 126566851 415622769 496361542 337735447 963001780 667355794 581099474 580497313 659196667 168210973 190901975 770562434 221302113 248804362 902403508 726058122 824279423 247454363 617449821 383721522 203042323 340308306 389546056 452414168 328250958 884118739 521208461 726170479 686013131 236195945 140787519 29214927 798210502 623430793 697679014 959483828 826900875 709368722 809620621 787795734 334744833 760431587 37952900 444477137 244057114 201976733 881456975 820161774 804647063 688780233 1017072912 544665421 272380421 964442103 513963801 81550868 765316771 120558754 596347868 967270952 261706918 56967471 200187046 427185790 1050842407 835447237 1036407793 662009230 594985280 430901197 382110256 881952223 660254052 221202567 1681080 475459323 470185570 668365393 928574523 420933440 648485574 932450621 398795840 324522022 533685994 30588438 615227427 289260693 202967347 573729924 329041996 550154205 666032064 298536263 219571741 996288885 522722607 948614975 999965328 290023703 497002453 821922397 620321616 844935899 932972664 416356668 458923044 440657511 582678309 788658927 405107616 228598379 648364070 390125911 696149011 1010867064 913233754 169221001 248851084 711115327 644163326 799600177 143504367 628250169 1026558535 591904604 267076874 381946406 530887271 411936639 883910064 373353766 135045442 949889384 1581334 829714636 504692227 682621268 1062492187 717290923 578137288 830759584 994753529 41413684 626948973 122155450 192227210 397897437 943849250 497651125 391861430 475434541 234379231 810514443 278029018 443751698 1071846813 595784419 145704493 383188386 235006493 301992664 877457583 75693520 1048750832 426548097 327614526 635540295 911053117 90895033 173161732 764361675 876574447 666340072 618557269 883607329 734928342 297681886 137976287 935927659 199163574 449577620 325933995 334003487 997943806 131533071 204725877 1030736881 137824084 578060067 992863093 114373048 1062348774 952876830 24135609 960141519 257711156 851361045 420120000 674134704 966972634 714107710 12709757 25579931 426134314 154588451 299821075 831981864 398497637 1044090254 56226948 275486850 773402347 729113852 744797927 261977087 957391429 711335576 358160047 487851893 902815750 558748462 724136296 232830831 565098200 183239953 830858263 315065931 575528805 10665354 939745866 689840928 329465512 222754525 347158797 663558196 811275429 73723099 729080295 470248335 138433654 872307001 442656639 902594194 459645001 863805012 542609775 941873452 54013048 976960344 432550817 1002657067 128017342 741146814 483614904 926456690 982881327 895753584 142038969 172102401 9087823 857206578 157616185 615551244 181775880 739913948 544442985 1061222932 688469551 833635298 623748069 228668789 951804968 973259325 441902847 1788215 25748335 59223039 386888686 894744410 560621720 592541319 621539259 274272580 998135620 1014674145 647624261 758745920 34130439 514939620 1038635034 762020542 208541213 567530660 194076254 167359668 604123608 838046834 381080209 1061142444 796360654 17222031 281154278 961777603 1072895054 643830921 829299157 494404579 360797955 103664243 519963673 568317851 802916679 78965893 481454984 307311678 124419407 355077201 271222660 298204399 1011335705 13843957 599601849 994963123 129724918 870560980 211419464 973428576 793881514 170910132 584592408 439536772 928384117 459511008 329678424 436200164 487308373 565349852 992107994 674896958 302373999 188396189 58179411 977002989 583883801 801600652 104360438 303716250 887362061 700430904 1070770815 610430961 321451752 206211517 337550233 628702845 301837213 881199060 769941728 771585842 572824687 774094245 89835244 126873782 969090751 1032679793 678287428 727188302 607796942 1051139199 988193372 204842815 1066591097 271715098 745499229 165936752 776510700 714263765 1004130525 780689409 350959608 516716606 284095974 831845770 583193459 780377414 587890492 762602259 703622752 114492146 168646467 399336335 749192584 946513372 366224433 876144940 830274243 90122286 613451049 133037900 200117998 364620092 221550122 300451887 946347614 623995104 994538601 853337674 748608682 612305949 1060775552 109746717 1000867636 485887957 445539216 697199546 410416713 177529002 421134810 83824328 59407344 67640033 419700861 816317922 58643343 502562385 972011795 502187986 611880220 106006273 543836080 566958882 290723421 844001275 409180173 144526152 76174509 599257329 296436401 857592887 573207904 508449210 614120960 615104204 159228561 89590769 438028217 852893564 865698435 428457162 683939059 872734167 659580169 126557058 895659176 274045500 995435779 176163600 518824058 252850385 58093902 224145813 583839095 71817715 212621562 97847345 904919036 532151005 126593244 612484337 422729981 75882545 363018168 1033507697 652008290 1069493379 99919035 792292968 671824630 153946442 81612807 326523391 523362153 105262831 760745005 630336614 217357035 892796192 707652952 182263150 110548836 536185038 277684205 86200381 924664248 851804604 745576888 863107850 390739133 719102149 676448178 586062681 619800111 121517214 546237632 660394286 720387685 727128766 752456003 194628613 42014134 151951681 937954283 842914035 557573484 443068604 961486754 996025046 106825337 1066724763 202330785 326454786 929953543 966622361 712071660 1035981542 906455148 508028745 190920336 303633580 24203359 558940649 440305408 222521755 219298118 56580317 924080338 247664126 787851189 910128558 196764895 39275253 210104785 435245040 585621516 897328657 848437071 621050235 1060512013 797438948 415533541 452677085 997975864 247319320 1009326928 638625966 185198055 687490910 524557674 178348943 988366535 317618141 503738432 347247418 601709131 940977082 403454935 206112426 583601997 712086420 427888545 791862407 1045143057 1049201186 218630596 475273702 664658606 408157038 105212165 440528620 502485952 489456734 625401708 49258987 638123820 472226630 188223663 605375144 3973950 706857826 988122614 1012221323 622920442 1072406330 340222364 628679477 782769668 728973361 903466440 626682171 147566356 365525215 817107569 920855289 477660470 1035918675 104875261 440823703 538207252 277410902 800090236 522428368 179661702 30052343 722370198 414547211 227847246 644279778 289632961 571871566 588937287 584680673 240100933 148040106 803618754 716879202 302087434 245320964 999750470 667773225 81633153 262379640 942591371 755778716 260234785 122589018 976423491 81266777 463283205 117672949 1053877990 727859598 372031424 893770685 1025419112 141620017 56356979 558191940 1008466456 627772112 907639776 35299997 665053698 261794573 552589728 166076952 42355159 492717052 670909523 545426084 1036884441 86258770 19569778 361687922 984670953 469513932 570285976 321041598 158459738 710698629 419432879 828490547 702415700 118465687 37095822 982194626 866623669 447781156 793102724 217682961 769690076 754653491 132020638 196931547 436881339 644365829 661740216 982972673 750351141 438930702 14075884 951090787 203000737 306810055 1010919485 434310237 640681961 986645613 290032309 56908520 394745942 340130898 68755384 1048377486 844137484 990517244 824134685 678604256 856318883 520898978 561830236 466567650 531949465 167070460 963933831 288027389 432145665 797045181 968008875 175321122 845855587 750551337 556294821 245936181 222583524 131790844 403529847 340428043 1032884514 367178530 1000301535 500998995 1061851534 917815760 577680755 842763294 391963703 919880135 1041419394 859815918 721691721 126301759 914580455 177840358 938607984 30814527 474212046 131274883 156018040 557133995 48806143 787348558 461511911 1012439286 506817404 414861044 217984688 415283145 409124285 400552363 66538697 77364864 800332664 383787671 484435561 1023756014 636538217 236051128 163766869 948162121 1008437856 769728324 332215682 351643238 362857100 759318400 249543388 88070038 195344911 1066644048 683964407 910968744 201495377 1030904791 683466355 979800238 1064827376 824442847 765320622 231121311 925473155 189046026 1018197568 746171682 343631744 686021957 36332546 871278107 122911210 444028396 732927361 16937806 1048816429 408472367 786254028 147367036 690130870 518888901 426435184 532111660 373406183 1037509927 998780482 749475271 949429212 507624600 957540682 857111848 817679761 1006762771 281461260 919952779 765092450 224529101 954563113 10817795 23372731 421583271 584872191 476023611 40891948 828967496 370382488 66543307 663070859 7231646 402750550 544547394 708256937 277050235 821938682 1043211378 87127666 624163023 267113855 154451023 312148486 318629639 581111082 613265564 516797296 454605156 640554436 976956995 1072099787 595330350 876811276 156584595 223459341 94044895 903095371 607902208 636997585 638238558 367411173 895267700 186029090 30324345 214515203 881629335 971880997 325339887 1056340299 532694174 1045945439 715599566 138654818 1030310362 1048273387 957326060 883224454 1069318372 636655863 473350317 268933475 1028743144 904055756 423627236 707245183 188385948 951088829 995152565 974415635 337415319 1036654136 577100188 863257025 50239495 815803291 114577154 926151207 699560761 856589796 343635041 600243248 214372634 1044712999 515644116 538240725 902146011 112646892 167374709 861966291 486416009 486266906 256471130 313687408 515349867 874656802 766866660 403786054 784629104 611286573 1026558482 548238610 648745270 686480784 211834742 66302839 971708675 56474360 242943797 614493130 281688553 687942712 972986740 1046494477 856760311 392679581 390030291 53480096 511133938 1007084281 1001526395 989974383 11772640 353774233 1012724656 151759360 543100349 642104300 528116790 446247697 681866506 8559199 706110801 366479730 596415683 916395454 78024622 720532859 937224388 249164108 896603099 387100845 1036292272 356684176 460226582 964122973 314228119 534836820 752451840 775077789 972491348 394725600 569007712 522079348 700480122 697804369 372221199 709117291 956930351 345874603 612597708 249602615 667200219 885434853 708738270 18985364 173070620 651830373 663511901 62300411 120767195 84867876 589615602 985313550 1016518274 291442989 256960058 986061474 774955277 219329061 398672040 35905445 584934077 943363085 431240056 122152155 423088001 882341561 879237402 625903559 397887776 88137465 591596619 449734798 268264294 566029733 676491860 915562852 815162349 885462325 935324205 622684574 1018324161 1001541335 96303717 208418465 857774873 400856972 122951530 1071719175 141723733 866314571 217052382 90408111 318190433 34098268 767168244 501066748 56338913 458494516 66890538 705343230 71999952 1070066982 178207026 27237037 165620455 420270256 238894478 723509381 920585088 391499682 716241376 126737177 626786552 547032225 531628085 1014390615 455419900 613982715 600858183 824916515 500036596 1001667397 919600707 271439602 982767173 337522464 314521898 685841932 964272015 923308849 574069075 483437467 628950070 354334625 391059831 728836825 695107577 403384923 908222509 944124628 606007740 44499475 247651126 129479187 935854607 571650434 220403481 6287838 476088245 524793873 697446957 729865231 7735369 731495220 7421241 944371343 514106475 311726160 852943677 43540663 655934081 696832816 379703208 691642324 617231360 632230143 291392462 19466618 544114893 686029607 42161635 49575205 195265318 549671351 660624718 964301895 286894985 295364904 180509981 92452203 100816346 837876049 453303083 419803210 1031717444 41639638 666245156 870394354 112292595 574237990 109436267 321018748 1002231389 174047469 889934561 912083569 410956958 620847525 177876729 367988944 1007462709 832544963 211061933 474490917 590323291 919213026 692322157 992842818 652329761 328500807 705409694 352746765 122300124 483829131 1014565383 754723571 956691469 731026653 123615560 385998513 169325209 479252174 656585390 1002620728 653312643 71817449 986728571 246341959 263195528 609910066 825275583 111979802 435606895 858112214 708445675 650594306 17540194 896822824 99089939 854208521 460783670 475678618 219370189 965785288 1053882020 985557414 967567260 96314744 494123614 625161816 333765464 313492016 876776877 567059470 592747296 382671941 735005690 27899230 918479714 721423218 962528829 320052650 659573531 118355627 65962325 646061514 322948554 1064066612 818000435 827807819 407782260 921760566 497081245 3223701 730619504 129190335 863954053 151957518 667786418 95757644 242316202 27154203 67163703 162659201 62636137 967409329 933603484 557715311 386520907 591656905 546903033 612676381 825157087 1055205146 833885980 175532573 720085515 396995206 986255519 486998465 310500323 143820971 201772750 823480841 619336377 470383267 319269867 365873363 1018234204 937178885 277862505 741434434 235122517 950298848 559808733 810801578 681513863 635571077 163844733 777225427 672611564 537034894 10859477 591434289 808146075 968536883 908876904 135943251 965527191 212512722 1060830929 610676636 525172621 105807858 146023558 655331971 953521398 730214879 420584907 563109158 771865161 178799433 503543992 277573998 941333592 20323317 236925759 596392767 700048241 1297921 430793985 474801466 1013093548 132263917 961272680 391600608 722315338 236414974 812553636 596070350 434361034 202742137 830229142 309483747 429780958 556753518 322122526 84822120 596591287 197376289 750110850 431908250 681954265 947694430 380493634 969053346 925847930 651767237 13385047 450453313 317276229 765692293 97891220 871146678 732749121 1032725509 341412599 122828259 408223638 961719212 316997979 912710811 818886650 191560536 587521033 623138467 168916920 7293751 556005484 636334548 525381732 431894820 31755912 1038853330 740832540 331832592 275738163 55284117 307803237 365921163 985753733 513405923 928768536 921447784 249082670 872891463 380845509 68106603 995963221 160768874 198291197 746526140 898807990 31305795 507147750 627635422 182350763 480696590 553079961 1064328076 379121378 821903727 1067779811 888748860 454017533 261503666 40365035 999248833 176237716 840029481 909907785 59694381 597507030 831394216 569132122 71293454 667018179 77594141 629270107 35600111 668070326 577815662 491510074 895580639 944805743 126432426 729756600 453537227 842166972 419414834 998301335 340879940 378129485 496050463 291086855 348009372 582086745 2215092 180017766 187711418 685479180 441428877 927620244 920899728 999516117 634618980 214463079 22127133 305212128 5779996 518404802 507952280 365467179 637960383 887230593 504382996 323450182 983328205 1315328 735229008 293084692 299035886 34462805 179805244 410999317 174596717 903203798 1061358012 166613135 550597630 1044447225 742137366 314314646 597846583 77232794 1045812001 32702251 841200008 323642805 550710616 1068385770 663610223 399226764 1042561692 820456194 712546936 886826029 100827010 255786755 232578077 463999718 740580779 690110682 484405383 788309939 782540586 474383216 777105978 351926482 948822383 492110942 87593467 316312078 629539217 976767104 405752938 930857346 535388542 405639096 592982982 80214748 489868216 835237584 456555886 769037195 573060305 150034355 25065852 860440915 866904175 314454053 493295677 289816459 291335061 642455774 404560097 990167155 187669425 437492246 939527929 365394341 114803966 891439273 807809460 914938086 553392490 225580101 684400288 944358027 202590828 117420106 411050436 1060435858 986355656 805366560 1038918712 1054285321 612332828 377501518 788597996 128964479 54972278 71010905 741796593 648996923 40552952 242591738 350719710 722194460 203228281 979818803 329903240 660533298 247397099 81685474 649273243 596028821 140753971 365407303 482269325 658204534 406928420 416441386 1058940282 765932429 693701149 889172527 881204226 997888596 862221869 498599506 565602824 430693746 135267328 783018887 395358638 280471317 566412542 303480547 632112741 912812470 802690869 228458282 692240456 649970253 399327110 181435930 787690713 1057932180 195614365 939888496 608910775 724549973 386674755 1139507 2293467 533873520 455601871 830412441 31468557 13087437 429262236 305024313 397519413 847933098 289169049 194639115 380418942 756781889 839383416 727536089 1017923669 591974100 303705573 738380268 1047172185 369063799 39307249 147977881 606858676 172551526 519839125 657251929 623065519 368501335 886099048 325054454 552795454 749575260 341740665 429505524 1004870513 859475710 112181621 782642003 303051598 892907419 388983068 401897988 473525350 837518671 677455855 882973846 232459540 95676196 216083154 452211509 123589396 528831071 915026735 7344511 997632216 896835194 294795420 649248812 876336824 153332361 147539034 1058573448 819722420 197481179 864418675 411133228 115567401 517393281 320935201 876094441 104289804 1046421732 570382089 181843942 1051428183 738231635 495015013 127335684 1037298941 855999274 802217985 128157701 579161516 998621792 75029918 536715076 564884426 611245582 750649713 728247893 510750605 973253760 161459068 930543425 547343506 62329200 1019550400 941604954 1008262292 447223223 238328864 838128836 210265270 1073007796 647086518 444585773 252858844 543923118 5923936 258009998 380131540 731477349 329554377 88278184 154286808 54131222 677356747 762139264 470492698 815060584 730627016 625950900 926661015 1055537764 916995110 982715335 515179694 704013220 663228496 818381964 491641154 569470041 666800231 845272495 141321377 581137155 372250231 61093023 796219238 872337889 96985641 70034785 908656513 143493049 148563614 570333059 103513051 222175230 309851455 1051642799 962041194 4672656 677359194 351844363 595555762 842179126 511973179 1002122912 983231642 81156252 1069246514 879354258 937561186 600506749 104464920 627066652 481417215 690374556 275532304 138996009 38077370 150991036 804442687 902593546 554334815 490875780 749907564 52352184 220087426 216632843 203050591 528425020 338466988 855445721 847237751 500750820 622235464 1021874945 442275591 379388126 26093955 299192347 297084671 606610595 526455808 520764330 733254577 545797671 912520423 286217658 80792820 91526572 94585092 127300591 595478159 194738710 434409277 74756934 179731544 769511423 193608035 439754208 600308217 474077724 626598628 1070791665 546933203 934600162 289482158 42694074 935549507 789784202 534388296 375772371 939657346 664948816 84076963 278906711 151455601 631934731 287718255 538180121 868918411 216256248 27806097 873939527 293819421 331237989 813929225 239138567 985216072 784782628 401547577 236455949 932681325 211852322 770644516 90640810 645402388 272530535 284513612 611388179 929401595 601375670 366938190 299474295 329358346 681837166 887184391 933122741 893002647 616228063 132901367 264323416 503660761 783096691 897784494 162517522 937284821 377538942 67313926 992595248 263284986 44920843 177588217 971511372 602892284 359531942 121185722 4921340 620020118 700551205 995291289 441486264 133984619 354232547 824208954 993119875 326808119 600227957 1043380791 1062668007 960875914 725354174 104276467 617189810 852221520 5606993 816291920 635682618 204322861 833315656 1065813346 790395838 660864543 84669448 461946925 472034202 41104077 677239306 374612252 9231709 571741693 527663670 195189205 659112928 386668211 53366666 386593199 240758975 480235996 302737637 616105362 388268005 943797160 179510989 267740966 161157128 549854326 159435858 918515083 1039643073 897693676 278909121 832054285 675525958 834876145 600380314 442647683 791392722 441118695 926996030 370271304 348145585 973513143 949307338 1061895126 29043531 1056983649 323600884 851477490 20598160 921172593 635146738 270947786 292741428 652649379 1002648683 182030939 949837885 43904676 932071266 650863987 560670906 432356773 260091584 447927295 783020772 719497202 725877470 63085021 151546489 801865420 592651774 846996671 75021376 82160318 421595316 657064703 990172749 401554888 469093957 284892954 942551079 173923323 189497321 495616291 183020675 158823917 562080588 527917323 464782489 99650926 808666428 13218972 730129620 36673002 878882113 205100394 1071551037 262920589 1623960 407628946 887170684 316486219 58220942 30338132 47775628 23960611 1015069407 564576043 156589597 440201091 660460779 619433777 241607729 227090395 731211007 226873738 363250104 1053970082 836984411 763274188 629096066 30352492 916696579 25480667 80956497 866960882 598742021 16258132 315975429 330086432 1062207258 331517782 965510352 874458558 218087301 1060725143 225053041 320878203 342907720 897334409 274761563 358257459 140216894 168277936 23163971 80570040 458250759 1069556880 625725689 454819396 553189779 557924374 243267670 982137868 204008867 383897126 636924098 820918563 144079908 486417815 210980893 2575013 808519680 971485731 333621738 74691863 1067750886 441891056 245085430 319710786 75647640 615174555 880072149 766972226 477113392 669191678 34114696 761783308 1060653052 91768348 286098583 682183541 32801733 537427220 557212264 220999030 213189919 407633524 609660215 670675917 89994587 492418796 273852866 892522880 100163342 993889066 113128787 330945745 234056241 665430785 652530095 970615805 787075659 111796768 862742305 767965277 210255813 892346388 183076205 370424385 540654987 823121080 630313787 101676928 79056110 666943918 102683156 867279034 884887553 765630388 204532668 947454195 1073137518 41970966 363477076 365838914 629734976 890121829 881348586 257157707 861291401 720878029 351172906 796604148 500025354 874992522 718523759 522249446 148981606 259498646 448253808 11956311 898674437 677712506 323119870 992210285 749690393 809831839 44984521 560800948 321327929 98546453 478391763 362565359 135861650 974426982 277406723 601545410 608349322 568537328 284478701 1060858803 400470552 710792917 49789497 933051296 197102845 445566344 618386081 406534640 368365704 108832135 315053503 247474019 194352324 51877355 875717172 1006597713 362945216 1040231778 529941992 68282932 866808774 87270264 507443606 494730225 160808074 592205875 837807578 902953948 557815261 16039206 69398874 421854394 442138585 569181180 270732918 776366271 835609670 10622904 125292349 296500214 411622626 615768230 197356786 668099642 876543287 17451951 154704728 954353236 610582938 211721813 141408130 743162260 321143935 813013460 737713196 207209391 592699905 777728915 321165769 931705336 779690994 179250301 110883087 40114828 532409538 502961934 1031109800 615562648 406885743 700943738 597309458 634941292 560923526 125127364 659837290 229844006 74338945 613913993 353987453 169663883 698559980 216345874 680606037 174475777 115892234 237290961 439459919 229545216 237257152 912239467 484404475 264687073 921529431 681749648 173558066 106886963 851709682 753599875 966799544 351317320 873773466 284594140 615646582 580658270 661181007 504620515 587851008 69835254 795769481 204266207 913326947 102895018 153306632 190600127 1061353230 68445272 8576463 17203112 308350722 824495365 263600642 1060888886 264519984 349782433 565358270 771018268 293180502 289195584 989387108 76541912 138644656 548902139 370105498 1049550568 945622116 114987356 1064035567 312000987 850179598 291027196 952178354 311022570 860518581 719142394 372078361 902507356 326490029 882630585 634222943 578307817 215857143 138543918 989420002 391013999 1022793444 342950270 1053863557 995452413 980853685 370902152 791949554 363233905 728158109 124161101 232256496 173761304 590496380 789663324 999500163 360452356 941199080 821273623 815804458 493491843 772961326 973816234 854704041 689804092 856621061 135969382 134525761 371645429 753581226 777679115 941305433 633703293 356580886 751680972 909622785 84395789 193003111 867610438 161309022 673759797 880199245 416368227 653567922 1030755026 672638417 581666774 70783386 839185141 184130020 448816738 256458403 126056295 580679022 729074590 798155818 512914152 845243979 475249854 1710396 347488576 643487318 593990718 192104112 122761425 71986804 559410085 486826285 602681181 131356458 319087115 77172119 861227725 85559374 928907749 285372085 148339922 70647449 90971335 750794309 206710443 234851155 168878606 865314588 5886928 1005105047 852042864 81749752 39188670 209454837 451605083 123330064 506441865 168668491 1008292276 617042567 979321273 223156214 478408011 310264707 904716542 422093660 657474060 861936172 945356170 189365139 703174735 541478354 854900198 598464716 432262717 653478798 810725627 405853115 615761626 380516753 934559819 1039033683 324723754 871651065 433672560 592567586 517991523 724504694 542637154 978542313 335754563 350252620 64852450 788512021 255803060 591009002 510792278 719506792 1047740898 833469454 715012354 648221137 471459752 569830016 663728341 135115963 431803671 479164606 494335456 685808899 761159666 614121598 410739814 468554519 890018668 501564474 311905237 472930661 286259345 360063692 536377064 355993159 922166479 873923489 296560216 551796560 10819363 253905659 253154208 697501016 52934399 908058939 958819993 501821696 887450740 349890074 119112058 943080168 666225693 65804857 159091867 254599931 124281391 453895288 813897099 144709989 888395266 727097721 521951695 134733140 561011782 589891750 551009629 197177269 133873313 958472698 46968958 896353555 493116372 106036177 552714820 473858407 856886540 449556910 718973884 27505462 99844228 529372182 382388227 877839729 641700421 221799030 273899547 389106423 536082702 424183418 482865149 989724509 289228529 750748755 608237978 947836076 1065965799 281264352 94239502 1006023832 1042055259 836397927 32789051 687027727 852378094 191632731 444912684 380003429 633568817 849447869 752304504 604909068 301541658 287164175 520841130 875441035 914420532 669178721 357298235 821567158 239914530 710668720 873800597 31820184 557433499 454032620 623157203 868194684 95702479 500496462 796044954 33610304 724215115 441580091 1065581805 639823779 371596774 806418089 341677797 1049649734 798944118 313765044 847561003 83924362 1044348132 262459572 396538778 162153191 959777664 978920897 1063039686 596721279 852056897 542833028 716039068 813902911 64314483 856333111 693843456 341321124 272502493 938167598 929428750 388130347 470742117 610778292 958285233 691167549 255901521 256070855 625672008 1011428968 369247288 205389696 835047044 353020337 67099060 204955920 632175129 563373013 800758325 603204632 825927471 107074837 728617825 476750487 219187194 754706394 865236678 166468508 823241158 900858048 23751194 287294143 327464223 1064991211 784189621 320694226 661357220 713137214 737582372 91585862 1035873762 990655601 620024338 152963737 1043929972 461333778 1027932688 216174665 474905826 546289914 272099512 811683892 683798494 795594642 624615768 513701787 511420018 216666864 90434847 354560386 223847976 953826291 563865704 951868658 753187452 144667537 583999832 949066201 861691269 161134290 562696495 41622587 526655446 247150534 782902618 987910963 961682274 61201632 550438242 791195634 548996040 1027673648 138601167 145762398 961074982 830542860 804323381 205207998 801649442 275529129 477841457 195555027 423436649 474441774 608771279 516922761 35247609 17412855 957333332 765131091 166574101 419104150 90626726 798071414 43278983 1055059837 1009811955 401348471 442105288 265785567 60812146 832011508 269980940 41777307 380598193 503665088 753929250 119386465 1036955321 748166769 576777462 698207949 227210061 263262578 522548655 863064629 451930365 319282270 310676843 641912636 792347809 972181194 365147822 404540152 937905339 769064183 544311129 707470678 82802829 348209413 305451566 156579268 131044184 529466053 663601861 861329707 455163974 1013451810 7416980 462844663 285043668 292554114 185600969 39106746 33672516 414801416 187003937 537976335 1063762297 665871157 586672035 445470291 253915799 772307742 977801033 1067735882 1019417635 1070105045 660048369 175667025 238402180 218410825 959663009 467973311 798582345 208665877 941284690 575045459 907460615 306745097 921298488 263449616 428506484 870737908 901146557 69721252 1032027329 875047113 1007822821 202997490 464568266 284999698 816296209 442351544 420990692 442695618 559383664 404820706 707132742 92425912 217797785 744137774 129532917 416850423 898138854 34958558 932506633 748646373 199307102 700576014 440018070 548109178 364770658 408586205 719643447 777823867 835693443 644480880 935238538 640635213 184337885 812771853 22879114 301548178 1021008068 43132810 617594007 319816390 547181813 1058614325 408602023 166021723 49075987 749371565 833651256 835474834 832589052 485742517 41212281 295523878 887194560 389903000 1057403028 1048253660 1051732668 806536658 271471258 530752242 519019616 245111367 531966372 223728627 1036422975 407557672 1055228065 448092088 634387655 171778208 155033129 78566201 640344514 185548094 658033958 234532916 1073485134 46040754 19490435 1015705850 786530720 242616220 870043010 323874069 606901413 54041850 841245868 1011888299 813275649 672395499 150274229 366461061 926781479 1012129794 559635545 210955252 753965454 129803410 593546319 813154722 373762153 969123426 519697881 86994223 45324283 162853096 1062816224 106746957 344505595 901976604 532195659 165795201 39232208 495892783 568092795 480250568 98577358 265257062 697504937 377909035 585625833 339413738 955391557 924773955 164616235 217929683 711183813 1053483805 862026298 992112606 82053071 884993454 76727824 100514741 894283667 16312511 1002317896 399761558 677218593 321532498 697000585 389442486 476864146 311788498 398943742 361276850 877634713 232650528 1071817664 264639113 147829582 64279136 714448255 1002052487 1039841413 745260770 639703288 593912452 11940567 905238989 630046315 260616231 378690410 1066780276 226689411 975391762 655201215 215688131 1037103053 360174663 377379592 1002643168 949190430 476998605 638837484 139927469 127681594 793917042 860814596 250599524 385423509 261002756 314323860 451508936 927808702 648432408 651055213 718626315 674840863 666306785 429886775 635362903 345853056 776980078 763021087 660372200 117532739 1034820631 641689132 60165569 654639804 957897552 265897184 334727766 350369071 68100801 697933252 262430489 347595961 684396956 961650913 711276034 1008517059 186912007 25773946 997919832 559230022 757048109 286205934 587889075 963633386 673618026 21291332 79541169 787277248 415335114 32296322 934038281 547353211 764656556 1067024417 444210011 241137038 391137890 356008602 389876811 658891711 139030972 337106712 443803502 1015629229 872129765 799027112 1073075176 490677984 743752112 800411636 188151438 546030876 991757226 265802795 851523197 396743593 948940591 33867349 20947987 305325028 15831587 1063134608 650982766 545982256 659400008 519805241 338733707 702614221 511557840 103867105 940211459 381196649 82923697 868935922 821431412 841576694 742856909 349314763 10164907 1058089011 636164319 696847835 922486461 77868859 195592224 695014923 922404153 235222447 374104845 271635766 273988142 361875144 564059513 659390299 505830988 14514227 198278720 552282513 321958452 477601999 95945560 735421051 531903947 773254558 1007111070 726450280 18666524 491487593 186872618 533222080 583448338 1067005249 557072800 612113401 732744252 988402490 429232791 789271732 717860351 39847835 999774806 1051538213 529875719 166193234 56801073 162391391 581085222 824759813 441859322 529751818 603508326 677762723 60300827 525161642 392143175 850864382 778885728 1067839895 155326093 493038286 473992616 355221940 1071475974 1038371733 79631534 440790474 369809744 532230751 27554722 252790028 76838683 225386713 222136770 491958350 394098800 208989228 334896476 336855154 1009671009 75866119 591178910 773204218 370656932 237885580 425931411 373641846 295123174 405733082 580431359 1011771653 525669723 554971733 420135003 294024542 337426190 654714195 135366146 578423553 943515478 824062500 370686071 581065197 312881477 381800061 51631311 431831055 785083556 545045173 1019105029 242833864 166455828 348204421 907566160 184839244 23287581 757612534 75610580 243490806 216075691 468665153 888315619 169269664 848315809 110357483 369606840 328966291 845938614 3197146 974560640 717723963 50369119 137965244 215193098 708261275 589259875 589849738 940349063 921862974 52113170 938650071 181854752 762145413 987594059 347756183 1010113242 917192286 957838654 1043874271 93526398 21199245 670217034 224492643 42147207 562892883 660948919 868666920 330825540 280170740 1008450267 1054670248 1046823359 137471761 657060999 125825017 774156243 722038463 989537010 857399107 755371552 917490157 814818253 274884880 893036524 892324251 403214498 408498948 474209396 1044578912 66223968 726012703 998337514 467007444 344703750 180920950 79955590 940988930 80792809 792496373 835554844 402091041 814609409 892511871 504120430 836805767 767986979 21263305 833279455 388496533 999100923 406480760 607227255 339270110 956477727 683264388 125178313 498480873 366281637 276555119 402876959 1009819351 155905191 935046163 380247924 56583436 8926723 73325725 563851530 943946068 729160676 245820660 666375897 922743800 122128685 27810607 985125879 1021310038 843899583 914705246 964340579 800668316 1027829285 556075671 1037002041 224372597 897006792 569033344 396688217 569565803 520540302 58082659 104246600 595513395 349570203 385686383 428044367 279554970 663594617 58451779 134230795 517457342 46789674 643904984 934222590 815818252 585907071 420897693 450048815 1021178300 264077853 742474041 567760206 569766161 463694441 8276141 683197815 1003476618 679516878 135404850 351859800 92713403 523080310 791082064 882957601 1066606968 819024628 47716040 940315688 809787408 721766974 377156406 383684843 601006603 905185597 147500749 943562306 1002785889 6456873 722364461 639321308 275467184 643823334 4992141 932555613 259840430 548416351 303006420 476313627 924606961 30116049 901260585 786415544 472119556 133070651 713399197 423832432 366403203 66272654 497915139 865711966 837472420 838952211 814469884 580343234 994088768 363781358 866386133 333263281 1055261529 352604126 295797595 913042984 85429250 255952045 683546954 912962238 1061459385 746258733 468671165 106087941 907832399 766952532 1039787556 307706400 557114894 431338799 277342170 320090178 561605517 326675704 658752938 1013656654 710779652 439063422 619650153 818029046 814660979 794821202 532625354 530478131 440493763 278383492 1023958444 485232510 590778700 752333299 1041761478 1032667452 152381702 86555193 900707515 525975469 596371398 177840148 353007035 1001133821 945458099 447924262 927305691 411635090 464629194 773843784 869269235 27280507 614219690 659223833 24413264 913436195 357826531 520517177 201533775 941902999 967937318 222561059 335507409 842122134 245549078 118636962 337179627 653527336 997370578 929104426 368562422 800243131 152130216 425455801 35629042 942456735 536521781 389820859 620350807 687124853 324039319 792648999 423601392 17230473 8050285 943785027 209096581 185972384 932850353 215544053 731734909 104995851 709436053 507280255 976430054 317933361 896012353 202362388 1010561343 887169233 1035386840 894782087 674605748 270297389 128139854 828234591 700266790 665331872 364815025 676496473 851533758 841435215 259579265 463662038 1028567081 214471085 969743998 233605936 583769509 222460606 617392680 716826383 374426724 338929665 309509146 402036526 720487810 342151997 632347632 616018369 824284242 530130894 78735007 266121926 696433611 1018516799 220900065 64388907 331503566 683447579 437050548 378492706 309786263 792641022 910779784 559569058 402866533 263090233 629343598 238710370 842320852 1052613857 243898687 303808586 142212060 218735216 46772568 947005876 1069373343 1015664948 705558581 1005143139 957272393 705343650 777118296 422926115 332314789 133458807 656510688 614944702 960922944 852623912 341258912 54743018 134737387 632671035 58967061 285779510 99058084 6905449 78598725 69564061 784533127 565712448 417783292 523722163 484512502 1027597461 793421610 332787995 661305034 1071374906 223889533 121658658 1049797699 91249087 226127911 454401254 533364579 955666090 273917883 284623542 755622802 779466562 636243461 929897483 552052661 578366303 481242784 383099405 577713601 886509678 246507203 856687142 438750181 26709299 707884541 155726111 913841173 583642994 800510405 591196242 113484360 18384485 373309597 546121900 924267662 346730182 71353096 897598286 497267133 259314260 35991762 650881038 777861011 713521475 590996120 636312625 334715868 586468194 1073234333 649147438 270402551 332054741 159106704 784399602 835894865 921005186 615071731 531479524 596308297 1028820648 931873403 375349148 1066287905 184317039 696938291 638245730 929015673 115945169 1059964317 746492714 167411414 1058731913 61298499 683466184 864693956 230813268 621807756 884169472 796768235 700867464 686824357 304834319 812328734 657448482 399859278 453802641 740203698 519688009 413677567 9397642 343861455 620181481 1057770071 850645016 353970871 86608899 532966498 13938225 1062145388 902390794 266318401 624421043 997068954 488516619 213756907 730303238 951276487 1055360474 194230797 113565775 194411251 1026615579 888357291 966044791 455449526 612440073 764743164 541935577 656319026 243839820 877633037 406197521 386541914 261613732 484346230 137027234 155865553 563023747 124865826 80975573 470105541 136068393 659578048 321499860 165923486 303030857 800684097 829202847 1007405769 624597251 212844240 253202893 311338813 438253850 124107455 424917914 558340846 260510311 393994294 56330559 682263534 783645605 84659770 788487359 622063902 373282830 722711554 283442110 916418253 495056371 1070171439 267199624 919928541 814524771 650482279 415608112 591599189 328336200 197727119 381298638 376018164 398730263 103291740 833318418 179527464 291571920 525324921 366599302 752329683 1037260330 707140368 796546410 816874682 104148332 765881936 994936576 795812167 561983579 727911283 271175977 765090158 552632923 47384284 570001855 229905758 678726200 824742082 369496001 450448648 585850701 963225617 767152978 926168921 220593070 283387048 86926673 743191550 1011352426 223517648 288348546 574326880 7618632 21933025 95469351 1072762040 937775511 792641442 442224868 514536337 118350349 90422273 1039349466 592653239 151474863 535134437 863612544 897329657 137170793 777511228 887947793 723333609 296691378 191563849 215589026 733746166 577315951 936543371 794126140 319500543 351076752 819895256 199019104 764022878 947469598 707587843 398648296 526669792 317236884 548796775 513290205 869514424 109893949 612559297 175897785 158568293 4268928 871604108 447523673 207682116 881811138 658764084 568803567 416653176 191477128 106729164 25687242 295299659 522149538 313335977 749564930 602559787 298742779 428277485 470602594 530350133 991844488 707807066 687121743 139695347 463417642 573261614 618296053 544817446 989672268 860976043 864919187 961084220 994127587 693638641 99242591 119982012 806410661 121848928 69277606 847703377 334999000 598845799 484359218 445768860 344062292 493736415 161591719 809232126 790819949 399864226 134678985 556550168 271516542 610047596 372441907 1041974290 181065267 353830026 923337968 569391347 970707763 173444406 419871275 642530154 452220308 736328790 70492515 587011977 794063257 1055100814 2202400 625367773 30699059 136665193 182667621 342759902 60717858 712942964 396799216 186415129 189437947 381084967 548991301 314113799 59520399 947276261 284329788 271202838 633153701 386818801 73837779 94913276 278734706 87384036 904662044 764547701 853210529 759112018 716325447 61770270 731061730 415774060 982581486 644976949 207189319 982563220 67979237 1062842310 781138268 40947944 566172730 897103052 520911487 585451080 479278732 283059765 956060399 130697788 564572847 941249326 585127708 511104275 422446340 647751039 431392600 1010247905 952875702 124259165 30519036 497760975 652020656 589249825 986713931 895933701 935131809 795018852 261954110 799652603 905244597 677274543 445433796 776231915 511392935 944609096 123784121 515001884 442255964 411656166 362637733 2154835 277106654 976854371 240047187 914631286 185743939 544454058 725477026 945020405 407036674 177122311 855902403 482365578 88472879 591078439 954240125 374376862 411197516 380007007 369962113 182855003 931284816 857528483 934363269 103560072 397135333 776434637 768259088 741438408 721229810 187508035 956973522 668505462 5849083 193861724 410876475 1008922061 856823903 619377180 532539777 1072664616 657452815 293554656 444980849 941332433 492360728 312386993 1073156184 438470270 958379112 874838730 430874698 774700806 254940370 356485980 1027727786 128615902 1025745926 138381018 352028913 484498128 217472962 335312907 705616045 813188432 889201654 365316462 223254601 1046299044 273073990 737780187 596905855 734149260 909380502 516347639 605569062 1064871820 982454248 307315021 248755584 676624032 936116379 499409471 949997288 1002673608 874109500 1003481756 912707943 141550233 448257575 40319089 267530339 416857422 446696989 337723322 809545131 728941892 348594806 107665854 586413596 943622490 855612594 798465152 206517872 519341606 635045208 987234691 767844877 660447105 925167240 280808264 643541368 547226203 185233801 391687751 570919898 460569075 851859356 983634530 732922689 569470051 45978432 113926690 741107744 280291659 990044024 900844335 9346092 1013789498 651352059 712323421 494095766 263810261 324600966 1047864571 569625980 65167598 56815522 945381392 988726325 564446636 541850454 716431258 592622876 110512845 876584434 747742157 295364335 379133982 965810290 1035009244 499447072 984537215 526157535 124151116 359709083 453798028 926465341 626132553 658284268 247927648 101703823 35774863 412309369 665313124 457219667 93121059 873477903 872430744 303972694 1054297802 261877570 978991787 45063722 730158607 843996907 128607479 175489222 229134027 67947777 519696514 381977771 234856871 38829377 105196497 577693169 168537892 612740398 1020227706 1046303632 703177430 67198277 44269557 996448914 228518098 801502409 244394555 738075469 265870396 1030323772 65197928 1013747223 361623677 303928385 531136340 1063817811 127672692 372574879 63190060 1045824762 842169366 930507059 905494591 36006320 477658378 974062268 1042215418 288506638 95408312 349392873 716502719 327476315 999469236 106538986 12206500 65151284 822145243 122359628 473763317 365262548 1047307270 1006605719 21059965 765204325 639214699 353239079 823835832 143972718 300929156 212746244 972462080 822301967 707767863 533651473 7185537 475673205 7643021 619723928 143034093 820538048 646432681 574531112 116660885 1070903676 142111626 484937921 111194322 709307139 520121060 652715542 902817136 828013721 995995200 289769119 1022403362 364784779 1045932598 356028606 424446756 841668349 153748635 25387200 421645269 27509854 50719145 702362367 1069929947 663077031 229178037 343906350 166233923 816493688 759347104 694675589 678276455 533866532 125320326 354573817 535845497 563167460 795541123 533893645 332426659 396831911 768436203 5461203 788717745 915900664 174417807 489189770 294619048 636404879 545558007 273598444 718610935 598852543 128185253 463419352 1022889904 628554665 751320277 703941613 118016224 106978077 528502746 932386015 481692069 364678906 644310472 381130316 757928291 158798557 1451832 601033278 579617541 169399125 1021251972 740751114 542048915 454402235 844980957 18377446 25895975 559178733 838423204 663083675 492231105 994066749 678093235 744114165 174522942 603213410 348610248 350212154 719110300 70713652 415590697 91562335 501911317 955290812 515373089 537903839 91194588 30985780 829946119 541570005 469656112 482511989 106911755 804851978 441954435 93189370 306340988 889377927 978573691 721642233 378125229 587148686 892968412 98009473 80875208 430781599 502743394 948156822 106215662 123508558 935898487 1052630970 450706589 494914453 661440298 838370159 899609344 188530969 131551636 752074617 286256836 829211492 629303660 1065994272 531650386 378781200 36850289 765967001 1071821239 705418207 455691905 849051818 435378535 677212294 13579480 428469941 891382882 938155019 1071734058 461394239 676048480 568443011 283103918 727974693 680780722 268943911 1055291971 636262134 246502323 768525596 780847797 192771550 270324667 377058230 375426991 677938343 871390951 978882147 352380349 206204572 1044868827 433809878 633260421 1009721666 51580954 872960295 943580065 994362274 659209191 651936095 582386089 290608609 37549012 890680714 629016823 83966613 162678870 307869269 922029296 525651285 284960033 1051575453 515697280 669537359 343993440 618332549 859273707 72269684 707577631 507188875 395994901 78411768 455123175 733099524 210056728 822551314 675026667 445987837 295379505 40912749 776761289 18248877 664345332 94280591 642676860 288193971 557055502 461434094 400436619 292561018 6169604 53172238 32759659 1042348514 562555617 834803568 956834657 371185778 897804725 449618579 639718357 598773676 84673624 380559252 600557226 138226709 320083777 237728224 520197941 262293510 250747490 284956909 625025366 270014987 693117923 586632009 646057683 336284293 611030372 417961538 23901249 442060044 50616417 539757217 980825011 841347199 202058885 563696086 538783782 891762459 321007080 546343505 843353888 384234494 548265648 207621832 875818873 290518332 908290627 548608339 195177202 271377263 229542576 624513328 824173976 58199401 849132095 386966686 209946061 894072639 50445873 714934046 272739908 581628415 846012427 620803731 366300970 979318902 102157732 1560226 676741079 842474389 456298896 436569052 938614486 598752173 777139689 535776837 915145766 298420677 364479941 324413561 921342942 913873975 232630639 51786595 684151710 511089618 579404682 378060722 875493472 273847541 711647396 597562342 863638858 415931991 439384224 879753753 275328699 244780373 184192283 174422785 856577077 1070683611 539099483 431304495 57671749 880745674 946843462 858323149 301475652 956841518 564433510 786790996 283963300 479368062 904634640 1008506300 242580764 873892530 1047963900 711044472 971557942 988629058 262836828 644185329 792671568 897158939 940613202 426787527 83586825 308983141 1027118490 124026480 875699302 952909784 735141373 891608338 509608966 382576336 614503686 26294133 189596695 502621560 545142968 761334005 509309082 567502546 398881634 684740521 856327555 545452656 283657404 236604469 696432327 259287183 997905130 89687572 369111608 571901571 7463151 316154164 630216496 755617775 710656079 242349400 80894970 670909209 895537953 901491168 921667431 517972371 928217 113051096 960410697 644002165 855094469 182286889 889768218 904039394 848719466 375248726 299110912 284343490 17664301 101598981 855023699 528506911 996816157 463215619 623921643 273847303 742078238 914364961 361628768 362631521 356438408 911642394 118247813 218486632 309777831 444460182 700356323 642464702 797115986 511027313 175345166 584324738 540930721 275676204 817704850 341832411 781368972 848195880 134413541 780095105 812054323 688093944 131920082 166534759 372614986 736886772 260877257 65257091 291815920 27448456 279739943 247769562 382028241 694749576 829013061 491562575 50563855 645888185 877898158 270438547 95896344 49752518 113662078 170209660 526752972 388638633 140298178 753796145 36095314 790230577 927777823 62747321 694195676 277138311 254400262 511696343 54873618 178767632 542873949 570505111 94684547 302712411 567511193 729989230 370284985 363899338 653334485 918896337 898780992 1039816280 694750127 356897038 766612382 206356536 358877419 59947468 315451311 1034560316 164692761 610291185 149794563 187161169 299357300 706933438 477249048 99937313 937814750 1049981268 899987660 116699507 999987932 165710603 662922443 486717421 967553995 728666607 838083728 947636853 133858331 253514554 19611012 33081428 1025276005 142893831 799947104 113796498 482528768 669656722 436423463 264583160 653987784 203317124 790309294 104934935 792957157 94139915 432159223 276803616 138525816 816112783 9553068 778828876 75132589 803686875 350951723 580276500 447031792 1006503229 286538088 512014050 795960109 209718601 205832518 75162566 937440333 672927300 700693205 1063724513 690452409 656486435 832889471 309326055 89116253 576655140 775119364 972138507 710078290 671973556 126254785 598576047 52768477 418727588 610594143 707840045 458396030 825861815 266697269 1001352269 446793572 930992295 845243270 246045632 295083245 399596722 45518280 717333456 794887742 967438637 12542933 749750617 20435232 262344893 805482558 536398386 897067893 180807041 621349161 45567916 841181777 783389456 60896711 475075787 307470688 319269761 974538535 801818529 695890606 486841386 178534958 902465477 1065326188 603419712 80534390 675773513 265825418 937881135 488551282 85758049 237348863 687899999 46860609 655945262 869319089 95987504 975804377 529238078 738728817 904005359 1030153006 589956690 569807472 449564700 144199314 896957297 556133088 624632957 694664271 844679083 889700644 447032965 605118201 200383811 609429831 788097858 553187508 878647250 203045910 405059067 831817227 228948128 501460203 1041966866 811946875 121231146 407329379 195149446 863362459 566723679 148599849 863333507 408104721 655752182 85778999 448256638 476381271 2077644 383234968 185684022 742385257 508869721 605047594 691359357 974550307 901771918 611912186 189186777 599330981 276275493 881488022 770460780 973479003 833586053 810810514 384690933 327979479 821721035 275689264 311246544 484093671 750629000 214968673 902327313 1039290381 169087902 273094782 979278589 1053178781 46956340 744602189 717461604 424571032 156103610 498296932 173772567 719158498 300002398 456740420 358340244 23526966 1008979251 692208557 412690042 745193201 993762905 308964206 1039472478 856450811 622276876 316754134 588151316 324012735 396593662 724617626 819719337 491200868 878777738 365557803 669921430 830649672 858488629 290579464 488086792 273569251 576179444 633517888 350390330 926240591 966161226 734616953 524267197 93613202 472569607 205233216 944652977 115053318 958564720 561326318 348509375 760571397 688365316 388916730 820413866 896997367 386637779 1036506322 713116213 242633600 1007891809 806746233 223416890 248556192 398637498 719463742 537052553 743994337 965293149 937927667 154586562 541143760 944179311 198654463 849946076 133953892 436495935 449303003 521532147 769085097 718625071 550024278 916316892 56757420 690304869 350382920 1030001457 80827096 333275930 535528038 170079255 972979329 180101455 315934560 548334072 396089069 557581028 782146570 1015327341 398570355 447706968 369783547 292841260 806911665 274203843 647180637 1056929510 877961272 174528271 818909725 353183727 800836476 361221958 940748087 537366448 903406732 605117101 704379960 662876652 1004229761 817315773 465272930 1017876195 62020552 732017921 932503470 664946546 880818480 907282582 526296027 1028465175 278917345 192167774 116217837 564355172 27556481 483300851 649457432 229801376 10059899 497174420 804149010 1005003895 189093551 338182641 671465049 620353034 183594381 317609649 240937689 168536170 125543990 600764285 847924169 995421942 297274882 643714821 35043464 315617964 721180167 559291716 423689788 139201098 530240437 399860482 466536335 1049349172 1007544075 543840597 743989391 716918412 351040959 466177728 69250450 897950800 278714218 518396466 31776024 177099234 613306788 93850554 945223694 224038166 45309245 228505536 86354734 935297594 199414604 1066773930 875457644 434357951 856135674 978477180 63865617 709961927 1069526764 962486642 521877376 804294415 237343480 1060807311 49763165 185636525 993673776 274444109 621051824 966511457 1000478735 811046133 841568425 228061157 975090839 1047480901 194495553 616821550 812845330 114677969 581204474 860649008 794793587 565256392 921206839 723421496 1038453676 513970274 332028280 705366914 923872462 364179866 923671708 210567839 317974563 579751131 887063042 948644699 181194516 1019586588 1051866235 671942330 588061664 195257296 599377344 484985070 404904831 986079423 873395488 107096772 367768544 1036066350 474965676 979729202 435998183 357106189 964591751 708149523 152333092 222711158 914547031 374094709 784483116 456093978 925327808 665837164 208678139 321584391 1055534023 499350677 590675695 510471984 933044766 493753358 705653788 639340956 724974419 845272035 1039654307 396721493 63619390 196885124 317455810 76682078 52725461 766457065 385444411 462737395 563150646 86760945 382008571 471891371 888203489 510518152 186981385 910375012 996389683 646307079 92638378 164074749 991753995 35336253 179857774 121754456 28521792 285155460 487818323 307376543 453291804 728813944 618236173 161098750 1065802747 668816632 899099320 778952641 280675362 232547255 325710871 413581456 571738745 723962187 358416320 1051159360 795916333 1070915091 132000069 782089579 179393924 63468653 1053478174 935202458 914513614 461073164 1038207983 825682654 97961521 341344990 149405180 851697609 608880385 1024920388 137734442 457559281 343767957 597652261 462526173 744308946 854387430 951543625 10374386 350796469 82105846 233914085 529953290 249260489 196453123 928758575 866078002 776037829 673770757 155547026 230144711 33815866 471005836 485281797 576186096 132561948 53161691 893093860 885264067 699623287 466920821 480662356 904048676 691267633 486201687 416986337 631430240 518006178 853485834 599857432 865930194 329261486 157960341 91089122 1052837363 86546552 945930077 842933373 916074280 440761368 946782106 898226667 550807443 242483257 366589495 961490836 627443439 326952418 1040816841 948716823 614903752 300985538 295490162 988455654 207469072 686376366 811921601 93836485 153791176 804363155 898600982 766711715 730995826 938477501 634357558 248745824 639733332 793886489 861244447 123123669 662385057 765889122 840533251 191324198 568564020 470618577 298512549 25345279 830256688 737081707 12914705 119036042 11485068 354595848 83120720 826605844 83306440 380625111 1001263040 569162700 519742468 730312583 531415053 580666047 306603392 122132050 897121761 795141848 581127705 574735326 86920789 791305258 944024539 672347942 925532510 764005835 968482719 514457854 969042397 208596096 206627997 39292794 421754581 817239865 600521376 11697871 152930047 143787057 1038022134 545535622 292855770 118724347 253169011 786515717 717113680 894636922 804065860 487748481 483021487 735608919 397220026 767041886 1029579770 747830087 383864995 190137546 240841685 641710856 964531360 155647885 174813142 1025875578 454034464 428717231 865698426 867650911 638351802 905984099 114359549 272892301 232310542 859042967 576574656 469337764 25607660 921247664 584662275 722914082 680076925 434095647 1020560676 488470288 238416761 405497531 959908167 232512977 1040350251 429019247 666745094 859917087 968473390 778869335 92416606 70951874 1049558735 908092474 1050345761 88886806 764246534 309329517 55733215 224875005 41220797 764968833 239620067 418719335 435378877 993175309 594912492 665937665 885324887 243614499 738363195 905189256 532906202 612774324 564182647 681779254 894011487 968721004 580984161 921484768 426633289 425259093 690927215 305731595 654279606 361683051 124193916 161672613 276539369 15793228 945860171 733995825 444888854 511804307 386307782 705765455 457360479 107695627 822420927 185065645 584507920 722373204 1049994008 1021208711 749916951 608712998 957503429 745294149 517728969 824961775 943617521 204951049 680239472 790139046 809707918 694326082 676083618 83630367 696610630 991102324 20204399 47500160 6048406 382669968 1038527652 433522674 894503539 268173888 310064161 967488563 1011474401 1056836802 713951559 381609626 964758577 239038085 890926327 517685576 440762109 87704743 514034514 952229314 589980001 452645322 451698833 225218546 53327011 309547250 907916732 408327537 658212190 437391380 463531044 381951280 209576243 361317046 766511478 416277922 922931790 322884514 649761593 712923154 400468406 314181723 916239029 765978034 536962707 987819465 694060333 782160474 696434599 349357206 959545783 975160840 124366467 98167916 409450875 109150668 436479523 163958119 321493617 390224363 391187439 876090535 967482213 161677364 321274819 857083818 477432845 375883212 938851195 439288127 1027055558 454714968 918910623 197539730 529953927 1030187386 374510735 690281298 490233169 398862679 271778538 433449564 438785573 378192790 649682631 436228461 160940893 345133379 973614369 169326602 799424735 255558013 142508881 19153720 972632310 534768057 320158549 915776430 596039999 1235337 707307544 223805926 223993004 381911442 315888129 862129521 185828436 545703689 38474821 911452661 196893159 674950611 686203221 606403088 452833577 634024869 934108398 428108188 361356985 478007280 718541135 901170335 89816426 232839838 137054962 296299883 713654091 521731230 737015693 152330573 1064315860 118954352 61661375 502448717 345546823 1011224922 58695451 397039859 358586518 393644349 882235028 685951518 611444007 1037889005 706770279 59533192 554499636 446076654 906260802 800063500 324357942 792853375 879024210 278716551 831297595 939302276 148829380 37941236 357425018 337203863 504377857 64515970 85962016 795301609 31201431 963924777 297557178 276988729 878805284 158022791 174758965 1042210738 428701401 71872537 91932851 701478694 1008108056 345640070 166959612 432119768 41969098 1045875580 426209965 107539878 75723880 340361284 868655321 338645819 740762611 379301843 696675571 525441077 179651182 617913531 1072195779 881665948 943486536 432766083 308542316 98722291 836989408 615248583 288757431 309296392 991199491 475834902 738867826 174747013 989357500 118704574 896815717 154409923 362909718 785515635 1018431481 452496465 189488508 553006055 213490217 161790838 839113179 280312417 50707877 97303973 7556805 636889068 840682547 947468526 987300268 26885971 962986286 950415598 704636662 941292196 861685761 352924297 647405835 291842284 560807742 52030678 824926834 166306531 721287566 830794509 60962622 866060682 71444304 204736079 961428534 889934328 282257549 895042042 317078298 742250876 732252280 129719545 802659813 632584468 215794127 138395596 362071391 1044859350 922933885 1037488657 817569711 185877139 816531025 832202924 603374596 641791859 25535828 1037267250 1020483263 321064219 777098044 544309690 1061045491 606917549 358199092 561950187 660398378 812208276 132177259 994705212 923762040 588646380 645708759 820191496 464413779 820594489 614437249 997178805 193060446 5164448 828351396 153226466 7249503 917150562 470764762 1000917290 630396351 702285066 525902792 263288906 410838777 663212243 65038962 399936951 762993760 975484073 359440640 98343456 193938175 888191654 766457527 25087093 137236617 439886653 590970700 856186224 480965170 207280012 775645738 621984337 190429916 348503304 297835915 305020077 726326876 374308745 526523884 687698047 966448082 223902799 677877220 670047909 890521030 998169482 686552859 527449567 88807324 1043201171 863729510 367313416 578047792 786531879 919627879 522614591 522246825 509199265 242301534 524566499 851072124 654547250 284800768 337128630 237968812 620414816 931381695 292837022 760439996 117112502 603431359 761619999 15109316 824470136 71154195 153587651 747568151 1026099952 121802362 592464510 144525453 440301188 54125607 724444948 682536057 245314430 865888479 894442618 658390483 749142916 115543758 892547176 122282906 868559714 724973350 732530616 463604237 458719493 1053993577 209678123 723144271 438597662 930445348 351851098 254641969 503579863 552131984 531520467 314436 470252032 408182892 226833176 852134169 2428495 446496080 102319120 148480377 471058520 132247111 1001489811 499043831 424741487 963964326 575231208 685987190 122877217 637133195 479044130 885378521 212054738 751787052 73371122 869681861 184322770 299542113 314696141 758143003 1058117166 625202942 296691143 135458315 412066432 816493709 827847257 565224134 1034484049 603292196 690682268 856217138 894138031 507533343 839470430 366680212 732770896 675598202 118427373 214113054 741963029 769542182 1050332397 529549162 564981306 386849064 482420513 194369949 805145327 889862975 644911191 790902207 14291539 304511938 907059886 59046838 103189924 428667551 431237776 180106925 687985662 166995602 250229757 369206209 519787798 88406752 613616734 17918526 690779304 281004918 533032367 65036667 5046053 615695018 725623496 106715386 242775550 481109074 311673162 434043309 737382823 110413926 182840886 750337680 243551459 292975316 353764832 635056639 322429338 18961791 130864379 142015075 671322307 583688218 794512167 702209271 867200289 377275161 815756310 384687157 257030381 846631225 195374916 639556509 616278729 758759251 359221139 205172044 468547888 206578934 172918505 770853382 604911282 433015471 850538436 1040004462 1015888566 399341008 325239189 41880108 1010510446 833693909 1069719823 886901304 85882475 398554085 904294591 963735725 161572700 290284816 815123793 16208604 356965847 337297478 828710782 93058992 742035225 301220328 848591753 579623404 615274365 278925721 203366802 75531805 427886975 1030490004 852794904 515801959 829554602 146479157 775627263 876850969 814388157 332303867 806996911 926526404 284422767 65456904 67603895 645308067 33296996 488086807 546131939 970349504 483208021 668589416 675889932 735565053 194463651 194988486 247366649 757754039 765707087 648767033 673139490 263522945 333369324 330614760 379080878 139874699 1040867113 253555195 671973365 922058033 84490935 835520432 1015907718 693679531 189146988 517002212 755810854 570954399 807492803 326750568 966970470 756117783 1058976960 903938428 109358159 815184567 29075143 672206098 426816441 320441543 379548149 502967022 238643142 891370839 349243171 380145868 880297750 641038066 995501007 342586004 116432164 172897350 619991593 658545787 626293425 682899635 653834488 60509857 936391766 629264872 43279264 563348571 548277118 764442765 150773048 244825269 628658594 1022592721 356305851 719511161 277336200 901777199 211374822 580932815 490016641 159449741 482361136 715826063 356485383 363921993 393562524 806639642 899600724 24336910 985181007 550889827 95553972 762255166 46280764 991881135 735073132 315184337 934584831 681848224 314877272 660463570 55938775 955087961 860153842 287855648 229037967 480618256 911809604 877295350 86833385 235990699 114446715 87657892 809577604 152024925 264529062 594136926 320587326 405176828 372347503 298501328 113082926 418627870 649090554 749636092 119895808 1011212753 742323416 706045112 605583626 447656159 1062907754 54428104 986652525 906158811 12810281 128107359 869307785 40731871 50587077 992279563 1034344209 41002645 240026447 658349290 566394608 692402164 17212460 178035046 677699230 174164528 706533811 219522080 1045563122 649866908 1010898818 417684229 200355334 142939432 658603972 457942007 1052957970 434416444 701234874 569369574 1053268977 608839887 761863234 732513807 600192732 88853700 151861659 974108856 723357031 1054543626 349057212 953813252 609215117 911340557 884866585 261286037 192699333 617660912 1066214171 215844102 208366349 883034495 649173847 553517991 861479583 526482514 276078738 367978457 145563596 358688462 923097752 146474521 55695818 108186343 259437995 697580342 823956030 721417871 811046086 565713337 1034273343 464533381 729390646 742797079 105924649 397986916 1071196098 373810236 895623875 726595542 11392849 684612431 9672012 660960354 195409040 1049124581 740429400 353350228 642880498 385633968 351947480 578837518 422850366 657850643 872786149 966247023 335042709 1001378591 775385009 391610927 667416444 867405020 485221233 394791416 581420016 50717199 704131529 537947673 705133762 816891741 466126796 422424961 269135789 858972370 136179845 639510094 270537207 1071491160 542073098 790950729 880216588 330434535 922139618 564607397 547603670 922795673 804836064 36292409 433468613 899222620 436577065 828221038 32205639 116559092 896396917 9887365 457463653 267058245 933681384 807767756 1010138781 146141566 602845053 720440287 892206682 1038610795 235526422 737764460 326251428 32276869 147697665 138234554 179801095 512083094 734103214 807171088 462322814 30690584 110277130 997133012 254981211 273805437 594442049 1073644279 471528818 615259657 562911122 351942244 271896064 126023757 887002158 356819179 603119488 362807329 47004140 433099909 293358706 440347794 53567229 621325954 922141872 854535755 422527907 618690162 991274594 160239572 1040555412 247558781 71275538 774242442 297158988 669025842 899137719 323246714 663634071 835922564 796719419 44748157 63576232 200454550 784554858 446648898 940886275 1039288598 749238765 838920656 493782019 318108002 435846822 378034121 491800018 41407977 704962094 585148816 675204740 901766220 326651963 1059280151 994352045 935195818 542946839 646730787 475795742 777361354 138680103 145816411 734898079 728617905 144806258 840154507 1024487983 654018866 488788612 99615945 167325113 61608256 934943162 1057499131 648475311 360673433 577236948 570967322 1010515572 451430756 94408058 348427835 152158872 923863125 377932952 76422884 108893836 914402294 841992820 674373954 620541124 293023097 204571808 147562920 502818081 298700298 610096549 97236385 391319244 487818084 340766412 41941970 617519700 269098182 216414955 401456252 460553108 979101097 772657291 843155907 627728979 723829675 111164552 1032219195 105952396 371158653 499460397 47764315 539279122 1021119547 699726305 138943951 105937036 513239419 1024458190 1004491524 58656369 837149736 503321014 855252464 839342213 1032443422 1053938042 235140520 560596239 76060285 767703624 399018825 933700506 60014434 67008260 822051167 538292661 58259535 339082769 35308038 924941773 207556212 244398807 339341893 777299324 1071747710 284255804 249310632 757844547 147652110 312919671 48998108 268380825 250515868 412296759 181503449 957340784 315512293 1001688122 561144283 1060947464 161818301 145228680 721224727 387630166 211693611 69403532 695292218 842273405 515129058 438035902 880423249 680115286 418417873 92013048 565150566 776051225 206920872 822873825 427137973 545086756 1034244209 879133463 395267804 111683192 501462188 138422573 920853869 471318064 904167389 145589113 659130434 915851984 396500720 632200551 854852529 652101365 911117814 743012198 78438336 1013778162 418495402 125490363 875788512 69316317 553326156 103351962 676689087 954958545 484336202 17056109 920869252 421816041 330607573 572397651 329822722 755917346 617351896 902294281 918657509 868468943 103856827 655365558 625967236 908758888 166810828 248043826 466122970 1040869046 1006374654 464096832 746274232 1018722620 720874974 119036973 165410631 98101578 377632122 380423862 363879273 107855650 864021533 653487254 493017022 420836302 286795019 801199847 404953488 466525072 38249959 982266647 63873524 939910103 749664405 657551163 923762191 189574840 217931487 937211637 169541196 230948746 247047407 54069939 105939567 378692869 75104144 813099 1055795336 326020908 1063940634 32924330 981145997 269182063 56743833 566430663 1023326379 1012862483 1048542491 969600921 364143798 174636955 87253287 145639161 201791211 646227601 228573150 53467884 1066517797 642083292 3429657 934579226 176995653 361066106 1054038803 201634051 912193994 86238806 22651647 521744793 325879706 807669119 632738133 785967360 622100806 65425999 70434641 685158596 288554900 596370905 855864885 590297329 373015976 1000497512 196499847 143396318 274510915 846430751 743860654 1065257665 86754591 981259158 479041292 398222458 347803978 273152394 701599753 279105707 1017001118 598571894 428113200 95590339 707869060 405779664 742466208 538047208 446500978 899103551 394857258 450332373 818818159 203882027 379935214 482891483 205994643 1009204294 709298508 328651192 778872281 193749448 144628881 380491419 941776203 571225604 486985434 526673370 483038884 42528157 23295111 588031091 963365967 242960337 232032862 10812539 804383031 967552035 566535707 19194052 999832200 778329433 57646764 625306551 389264312 26193170 1024118876 891479373 798384742 95488182 1036739918 437109704 450466561 14869628 731562854 827627582 211558902 226010741 1058385034 634353202 947341625 1053847752 160214493 299395082 905920165 460911248 37574509 730106840 1027252558 990426540 879201301 322967259 1044666535 876048192 262414904 460246836 882679708 405782923 554358267 17474691 439657572 56799867 448500444 341208074 216515311 904473944 221776527 422056892 36823936 777608676 493716653 902866566 1065186025 489144322 899406297 866924994 685784601 251532694 208137108 634942287 305040577 1007587170 213951810 495038201 264911213 859950861 343347604 701767213 441384212 774959211 155297215 73254920 553227356 1067828048 134685166 8116111 757595774 4222091 460802574 307814573 834992984 8682796 437929386 1058304643 174842581 368904048 625267935 1059511770 91784950 313251721 342016818 862070349 368505889 22432528 70252268 1043102056 533897690 275245889 615464466 462079335 121148532 280437387 447836750 494544952 64132494 819395217 619043943 724386239 142731868 498474669 1060439107 87805673 142472186 979892965 775456029 150255149 155808793 340991834 377010976 294981549 241249076 839693675 345436646 654729733 62137228 125341004 1060519490 562669784 1041572815 722155740 65987557 182536481 181714183 514633112 307595118 646661148 442627799 273472702 718211351 294381173 58656216 759782636 342579455 306505738 929857578 635611418 689854718 384892228 426735819 345251518 514476150 464453814 785777824 1053600012 228532604 870469724 599923813 245374647 426646834 707225481 571695692 657408612 284262288 450116912 644513747 161054395 1029389688 812332302 506083845 833064497 594460927 616083691 129202372 158053001 609835752 58764081 848639205 214649070 732088079 633613113 44884770 676432716 784065324 254808352 1001960233 679527824 896069071 135923909 341890752 213091602 499624482 333208968 384275083 444783454 156933067 605836120 520779319 375868036 197583204 597273831 400915672 174103419 834076009 1022090109 1012453045 468416839 514823486 313878826 987292146 975283866 197599374 585703751 975220466 720301209 894169625 344463913 609864079 141518216 685580571 79077260 296237746 452157655 272247028 690444317 927892858 560184864 1013209964 901649608 563968310 790187328 149509412 230344227 858440161 490662680 770479024 270088778 313874542 933852078 840921547 1036340095 480326211 55556136 117021321 670652121 982937929 756061230 283895248 1010690143 183356442 526784913 815959134 908312003 226982389 1040132690 620572224 67071035 267667245 950524904 58135354 478544083 157068277 311510335 510417984 867774841 1009492962 366079583 232163426 308696650 479131654 962773725 902300700 740952407 1029188366 638053318 944152089 939908510 345783717 901469037 54350276 979659736 1029309653 375445103 418896758 536214837 593429715 901262918 498975547 45775862 193240385 335605557 374230041 493902667 404875019 941048401 204682504 428871350 178955372 958571391 10674192 731396450 1045359391 124945122 902736336 549745243 123547842 618732891 238798327 196421222 1055702002 345233271 410612947 47235328 274284285 369089302 707097157 1036524333 751845760 65539494 16126798 873575394 1005650746 891793419 510813765 617020787 605885132 959997894 203756824 413093395 505109247 508742569 257453721 44280613 899217918 101246726 626286797 183943440 1031674230 793431623 307492652 871332793 628882847 349443604 509080419 793911906 706153414 842172750 119646329 581479983 498449705 711144555 365716488 110489920 847768994 126341230 92755024 216879024 494440948 25373939 905239570 133682660 821470360 924715007 912219817 258660152 805141164 411182697 937748432 818892528 634533461 236346566 670244769 2662407 105026414 615483039 862796631 120287393 986834954 277944018 939881221 298575250 588907867 993449848 147644338 1002477107 127160080 975731806 274959062 215605475 521927250 209115952 615505667 91859367 574642679 58523531 100515751 717608574 559648270 33352648 826378254 617830873 354627775 480025402 5334919 811656247 76485977 509866801 160506641 564092063 615187905 434466472 710162786 662283519 407638456 501950214 348153498 1009081376 309019221 485347424 1013033956 546544210 398177512 544994887 656038891 897400841 45208793 292838781 750180512 137413400 353884860 380986031 530225842 277427733 378408408 471399741 562958807 128698136 1008026570 799470952 894309851 713768261 496342012 93567701 994850372 516745026 571997932 760180079 342078034 25098863 887103707 515483880 292872781 972489298 44956720 712527785 718256158 911357074 290744597 632851883 599588464 985767695 414195107 282953685 238604088 1048089434 718609814 392500555 671060757 187459532 897480870 792936811 1038435588 93536926 872937131 295879541 695894066 273262747 520962438 968813456 131227364 145888369 172424909 958987071 1012562880 827522448 61990023 193943892 945500899 889668578 15860684 751218281 299675671 1068766717 119050739 970689292 408419864 353571875 80159178 31056233 785887613 624404756 981933171 308683301 451952328 1007498845 572672074 572285797 143950284 41412511 754632256 313578074 429746150 339946434 282975800 353990594 80435849 628355753 441779437 572243886 888472420 503483500 494521944 323204049 816304029 209225539 838980718 822723258 182134907 261379554 599025845 931096526 969524673 342759302 825912541 783812855 439353506 895036128 656000373 223831695 1020786888 24469265 591990019 135981814 26594603 220888318 679601178 206490296 606382676 344247860 238798129 75531210 694014566 604714903 970332994 848884945 1036782344 802803551 388505886 923336659 953134263 516227610 635587463 8461460 594100863 54001769 361663865 600939382 812574068 821619854 173649479 723762393 677906032 143672925 64651095 572151322 980608390 364972126 1003415990 732291285 90534244 83981137 79271246 49525377 259627030 148025936 435134740 986563398 514893520 1003700407 610337821 999043191 518406271 683025748 121033163 119994004 469459311 965593870 443754366 218568509 140584435 654247840 416560692 1036740160 349389185 954784503 835839319 704093458 101087387 220725860 865795586 640677511 986550851 1065618687 19840530 1054698582 687848354 295425416 435149411 236594713 148357317 406877298 406196047 439973219 365762520 4491102 186407456 112093932 337084633 824014746 19603103 626291483 108601777 899311021 271542911 586355671 974657497 1055687883 3083224 138239272 582727162 274388661 76596431 429038155 778813953 801861535 569608939 201490211 776555960 387627789 71212609 197815102 161789073 82181902 677538029 644225426 178519435 378503587 243727239 484647814 600247617 366968675 19501473 1057276859 547828153 392050526 1067802713 925483867 450803693 258252777 348574659 209164920 111543249 412450728 169649904 998840369 850802548 837709665 970889444 52543141 1065789000 123447053 969507329 27588768 264977626 842217417 145124334 98289042 190381191 896481705 217793312 459339576 9472220 796546348 1054520199 532190643 60044127 85680108 100395977 445709068 914907600 288571437 526994824 662078698 168923760 126744178 527540197 973402935 332449880 695969831 153503769 397205912 963861217 23537142 1033078848 678896287 234591687 816998466 573462833 92891891 136510249 164643398 385160217 680699861 144948221 1066571392 400559078 833415568 1068160082 92555022 268099360 909494390 985002507 991014152 418808909 251558899 840027429 714513163 172344331 439608356 758156996 395461596 83324318 98664430 842784927 186947575 565834146 677763859 427678755 618856926 465045236 787848094 454841559 571825278 591777846 389033212 711997223 1021004261 219017227 615131254 53654462 807782397 185783257 887881380 542174907 209778946 126598533 741147476 664706020 737468614 700080093 591669939 468720436 826200365 915410850 228058500 324309950 36895163 1012076993 125531104 836165856 1050826165 783042385 344075213 412120109 932770612 844271634 420702020 559993201 901534630 590678053 957570758 284385395 500486888 540460179 133336465 940567297 544337723 807941650 716752201 1066221376 258671913 306814354 827904207 273448779 348497026 560676058 975536007 828840268 767387102 233613308 685070741 576548306 205476764 21918923 142156171 549964015 600424204 822195833 358333548 313381277 1023889295 850620013 477486102 857517720 209068893 860554287 830560825 999179997 136833019 20781539 1017597830 671931455 331615056 81610353 204485705 554683107 785072697 147716940 825313323 1030960373 977658774 387441887 270753393 884757473 332440786 179521142 421317866 745648134 364448296 513395733 255955827 309541634 506152695 985840374 689002085 340179576 776352161 159886870 13157242 655060239 48601308 966774364 939347028 10300016 147471462 772744171 607829169 189416432 396258538 20332999 456011157 31391472 37465385 600972449 113438675 271921283 670344937 450055148 263851195 342141246 18635978 642884415 390439537 113252937 671043690 843040396 544341521 44782695 258976566 145556694 484197134 838847471 571724230 126358803 550523787 581192391 360112051 386512116 285389182 207069509 840481952 212043736 866833894 469105221 239119840 866780700 117236129 320851288 1050741961 195717511 834875648 344156299 20796218 631212187 591253595 461656424 549714159 622837503 100963195 249971986 572554954 157908622 99042511 1068184800 988255592 193083847 649890494 90316654 816672481 747134068 112501781 704174264 1027317555 873083039 937667442 621755266 276823048 206448486 496828894 274103541 438444486 554840392 839796691 712957392 834781721 270967065 666264370 399454144 506415530 59806689 942796929 328348826 338033643 799721295 650887165 685485965 950885323 73285310 589444048 780208874 595936213 719869276 331171776 1044102577 1042519616 872752713 589010807 249536790 600523202 1044371114 97091051 990839247 617528541 732259768 318260589 905664968 37990507 120768298 731100732 929152294 165090263 962070573 55636986 500360667 434246976 30302049 801150509 559891584 155568887 252792668 205806314 865235605 210083268 539164598 297875295 75105537 2130916 705535833 410973795 85773218 380276353 990049386 941303535 160884464 969627929 292203196 213335162 848672763 624801727 687767018 735454379 16525061 1025794101 639677084 864924926 803528460 90801459 509690098 187903951 907240766 238656060 129973545 884981856 802234341 513740630 88461256 383565823 289027578 354549031 781152062 299913112 74705329 1018490760 1067425473 986240780 216527704 29386082 642785400 302524272 1007993120 540804256 651092633 1051195259 771612810 469200215 595158506 889008751 604966676 495112923 869790542 632291733 264850984 1004520132 789671452 217061528 312653057 387993129 146539695 108471049 818839945 468926927 54164985 52375873 754908517 181830324 418358966 985239886 168938379 448450256 1060279497 500622700 646664332 1057164731 110653642 1031978544 904671784 1005813090 663817182 934748261 434810838 217487851 945402983 411498533 807123353 936013602 567057114 6819756 155791399 423333300 351811006 868058303 486886134 92516566 962866585 907332507 236936551 407318638 1043952972 1049110275 668388628 339831575 802895208 310942596 375098254 226417259 671689405 9472856 278804824 822932447 224934179 143468450 455225452 949899756 856244993 676782474 508615475 478807173 86926509 1060994825 630260181 451662950 431103822 290518076 429085398 629714221 526659225 320821967 1051773287 91403725 654805102 106393225 185851701 497710083 791341309 71093570 309195201 816007426 343145804 403567991 1214137 496921845 914787473 503185818 245289196 1007047978 999133129 506187929 353014556 368409516 810365145 200180373 59477042 902043722 640157329 501756117 475636674 64695225 295275344 450406677 349471619 926456426 561381192 452126129 351485167 949682585 540305100 1043958489 745840265 825642076 753048495 749776895 81107684 357598283 401295666 102337485 681645587 966974102 590162527 321806584 202811537 278147752 361036596 613545165 744776510 153273310 321762457 162164498 746058872 535750482 589496838 928802157 879487146 326392015 503411243 347321224 1017068107 908449358 345100755 229573256 387369166 783273480 303906666 732781649 668585077 926278777 492807649 348788554 277697683 108655216 56574035 118247824 620400645 11507931 392104560 934017998 175109811 1023091349 236782528 427102084 571202243 977177730 599677836 202133161 699217066 147602171 1018868377 857461883 415910237 527416546 546256941 1054462382 884319363 997438778 429477255 639592625 390711519 881982381 498747536 392869246 406887067 790714608 493756315 824683988 787010464 1017926864 630829985 757932228 935201962 753550063 484779653 717210432 253649304 384984157 241899477 571597383 11703894 991772768 802627568 782192055 555732024 642564364 681164123 450938881 475253543 332916974 101440101 167996968 87626181 22343540 609448677 19283915 198501498 978435879 86172828 985648580 271720110 145822093 332875369 927697595 552076841 723980850 438400289 337326663 56856177 523724426 614423454 626072614 805474327 936359518 933030427 469480985 769311071 924165971 335220428 146647422 616117958 518680230 543244378 692020623 888713432 945025137 419581444 45929498 934706014 131043712 148570554 480230207 519229864 121888258 328466867 318301963 165286797 1049087861 368861737 12544006 1027195583 1499039 386143231 635971138 30579879 184029557 600786779 680228555 680707627 702237101 577623683 203887282 19880404 456804206 520086386 202170477 1028795502 894342388 632726616 998168222 616441652 230393591 188398366 349225950 160593080 5267738 893215242 955772538 992747893 892081181 859993742 320633022 705400300 851942796 693576690 910080705 90611747 32135269 574351899 885734570 997197289 255306248 983778946 214207282 755514364 141462641 957854060 30522874 414377514 717091212 800377538 869453171 625136143 472080878 209252190 1042130626 7130995 1060535736 47753910 198326658 88372959 350321043 533815872 65133717 620456716 739534730 713541570 1019583246 970301602 420631534 150283811 737067304 486250697 933660925 904346907 916110644 593643880 61016240 865009829 355432809 650198800 748349136 55150337 519108810 809155818 541531891 308392156 725930162 573718060 915464735 948656997 293754000 1012346803 33506331 578269350 818657203 906611794 617274998 347195429 688069714 313901498 122511970 513307210 943986976 211587220 63956580 466880210 486283024 265062189 180427495 729863773 585786925 587028917 402039920 45149585 387773164 812357286 74534347 78396051 844057235 871635754 1003851647 705229625 278501168 1001968321 527375104 379051134 823400422 358246104 897552730 615067446 633232737 546931259 382895609 449724005 1057156940 743188560 192886942 970143214 294015570 541293753 799148357 239069719 774714903 833072232 365618524 674852137 810902494 177882092 269464896 433076462 388683844 144700782 665038197 291765889 675056024 378582462 84830063 352344972 534257244 60244892 476802437 928833322 23992978 1067450995 638295718 445847507 728530343 294836097 1050101951 709778260 1032489814 519195961 818691402 289350187 312415575 798464040 869596615 773582225 165302716 224366215 1059791713 315779365 55932717 231759981 992915169 789767975 207818489 336432854 1018996724 676189866 441637659 143391587 728736081 992869518 258176119 969938295 794035570 958494534 561778370 64336523 276250763 272605989 8876095 1034987263 467194191 753401990 489192874 213304896 402220694 704575323 1030898374 327496092 1020845833 397258305 446487435 455225897 225973062 596230960 572729913 938693510 68495087 847711822 810220637 273247209 299187951 956805429 276290971 495877064 827083877 506688061 425561393 612955667 733768950 34866406 984105150 937465876 724197993 335066331 476358341 172938317 32881982 682773845 770610195 1012410346 219212059 151609965 855967370 951386915 379279010 195199192 188428695 664688029 279429286 933564289 195856718 204829963 232656009 839430591 486639377 1015284751 931724805 915490783 62733608 90235783 140755051 1068585130 436298354 191398821 634189706 199365982 619849677 665363462 926564369 181488112 13372503 1049646095 130180365 611856533 181458269 640886445 260536603 663101791 62494111 891547952 123446487 676334684 886289877 344127834 113658890 953013659 196334297 202118482 282171308 136409819 709665309 973717067 630880358 195251924 140932774 879649663 935709036 545920773 967573479 830415795 952098468 917575344 269974501 525375637 1039826904 951664492 323914509 719032515 895579983 711026546 748980804 431661725 372883043 399583305 26888239 471406270 631005670 584176921 450164815 705973669 937425259 339161228 656116686 717771960 919535404 60774243 924296556 357317628 921950661 225369200 542284048 191280585 781984308 894885426 479335514 956929757 943989407 706057825 535704839 704154978 304139652 89115306 1050132016 649541714 256574972 1019578636 636876248 1063639461 147692848 586553494 899162291 676510364 950276536 273413986 298763233 77780574 839555240 783771619 446349859 822097651 921454627 974631358 846185917 285303044 901933681 247050177 47689947 889709887 721683362 313865382 681960596 706624953 177032633 1742758 407199487 953092241 237820644 653409217 241143062 899262663 873616613 1030649703 700653263 1033257171 642044452 466020906 723873679 680774938 87977582 568592572 420604 997202443 3817881 126066830 987257594 19590392 886284928 25495804 664053064 347517024 979092928 278660077 664452614 971481539 611351746 942325569 844967554 387529012 471284969 182526133 554811982 818107413 948628613 25031186 81357349 229922146 678397935 1056164540 505464570 337560371 952543678 930720272 290684466 739296398 631068606 881663753 701692156 240527369 652344262 389108232 786333663 969639488 811962328 189956032 712412536 887931826 639442678 966136669 489217830 27504885 803855730 629559146 169878942 257070583 550351638 931016626 505598870 58531922 1070239553 672199803 674931386 227267870 404357074 1071655675 312399004 1017239710 783629169 349150096 940616176 733993417 978189341 1025098873 1018094332 504655908 170228538 612115633 531230639 805742321 650874525 747594737 767312283 371705751 68645756 848114115 767708802 1014547566 395490280 374380916 920276639 633570979 822324487 583466633 21309175 28235464 19589227 243768050 456289298 529637468 134975853 754430497 603236192 252432159 279317976 19655044 89040661 15831704 365409936 522342862 1015862558 495102540 1052408924 547295055 457966855 860432843 814574139 875937025 214476953 473324534 93082432 979360776 1066033104 658428881 328502141 661890432 883614916 409488874 1072088299 556323574 517623675 650271079 557489441 649812719 125346728 25738203 231335316 641999259 976316016 1039412432 61797678 852634888 60530194 1020170507 224635197 599200605 45368623 403492245 571796909 857591123 508361668 334396272 285579539 346679651 971828900 294931288 585156981 235902901 948314892 1068692911 1006909059 477177569 470810876 162169215 606024751 686103847 1012455414 985616132 418381077 25381159 724737459 1072348424 214953572 1021262657 581643594 704709889 552507409 138503314 653075678 299141190 59769548 742657760 973733930 45239328 595126123 326922123 522609074 868550507 719224150 816648731 410437302 910403299 791928530 425993597 988016629 825671432 572987219 926580713 639450656 627746065 794090466 508516364 484796726 763788022 798245732 480955189 1042529776 734310043 337889608 241308079 659829551 734169862 613144545 852521914 846442639 571540203 532807117 673883025 676745373 603598900 305234708 415580112 807054746 679846509 602408664 833281414 747071424 1052731558 178411940 319787082 867262433 25667611 512369363 46870560 369100361 646480113 962582140 129416230 405365618 1061506632 899312528 579170764 770002796 141778738 187308695 131937303 983606775 175950258 657247614 638384121 431321671 950100019 491304423 394895284 226559075 487239969 348478353 30905654 755848616 528857573 217250703 885856009 610835975 788781815 842122005 736112855 1010081630 851547553 799315301 870835837 616055254 159452211 531243449 259293305 540006861 226806053 329843766 299562159 926169345 57677527 858874128 672004548 827467912 481979194 827309388 801329692 203808304 504654684 1041507578 526899876 715156483 276627950 485384352 102928791 220127736 241323635 806869285 365899752 898441484 302962392 543007573 256682719 590846117 591869640 968513155 387889659 698120477 240653973 829951693 446435120 633854015 337568199 645715492 530557118 138709011 266970791 572481381 401673958 237890170 366667998 33951066 498852034 243420240 397126555 892336935 726567167 535254153 154050260 818616826 824550637 1070961073 337015116 333892801 179725075 791865763 159150791 50798484 135947822 791023304 643801870 710138288 621219308 867666785 276333778 634945668 500426872 615126927 1001629684 124304859 152601606 712176459 1003113375 757227771 236168897 861758064 593815172 502436383 291275035 166125673 946084900 970046537 635734552 636858538 990245713 377365726 67705496 853337835 1033746370 1046951368 139623353 205088018 527394696 566683933 830459955 825579419 756063595 926989959 422354873 468140999 615259288 117344729 464352913 476537312 754688703 623330081 188459880 161567572 1002868581 405836679 339084320 862582819 609530688 1010214429 755956181 1000141475 903891334 477128386 989118494 978060483 736444257 453949044 1003842623 211424743 1035939019 654086237 534332169 246977851 61573945 34721372 424693371 668623552 617533377 1058610698 545932213 759433797 322642186 334612895 1068295330 994263131 495048771 204245027 95143344 70050764 172867582 431270234 257735045 891785601 608625223 442571746 70997581 480822736 261691742 988048961 434965260 812691695 805343374 585657649 579901198 168249315 408159792 9177279 917333031 17090528 158671453 353956616 756205848 970883583 370115591 264552107 690752397 822304835 413272559 446001180 693063125 91157133 473414190 681451894 698989748 573907344 793048809 194168046 21452603 876492708 359323007 29432488 193540322 581561783 115151712 249195401 122683210 483808038 7904946 401422517 941395374 491243298 321822547 110824635 72406793 231677341 369139639 990225645 749846145 230455379 767030474 647727089 25505658 433226355 765828695 493618351 832180019 419276029 250974677 695354174 115562072 709770653 466245733 432615223 926475103 502260645 177043598 169608144 704911439 525366580 734039793 898643037 669702006 353698185 274788744 373972386 401958343 855820886 813654815 913488477 1018214831 332430691 913588592 951893780 814224379 315124046 710348195 122489690 287293120 152397236 197892158 1070844230 1029933362 759672428 839423856 1054082999 88337463 152334124 789187395 175211825 834061489 1038360220 599151881 13828877 1031343250 266569146 846405398 450439550 416568552 134759031 477372548 768844971 1004865932 483531207 160234620 662976499 1072350012 14472696 257717449 1036855497 805981021 56476330 384702575 366313987 651766196 415443470 25920263 610123561 409896706 559656153 405229634 738577148 774655768 882274308 138512781 1009798688 593564123 432737681 344089847 648163830 774860338 430730237 207214737 931377212 911368665 699627004 1071279218 158291490 947202762 684617010 509908235 91211330 9721069 209142612 803374879 661778213 830842637 1011677530 19305583 65817396 881144077 732732981 144892375 566061071 1033269656 285555442 903408296 573940980 39740724 455242728 305864282 284970904 973239168 380013717 1029657582 248428553 173595432 348170176 921666902 394748457 430854231 240117205 213115415 168048802 629616791 990254719 519900725 403035322 386226726 63053953 571368415 221667758 960172866 582981454 205839901 94740516 398909284 653894961 489999461 568947433 785743926 14256659 323992192 582822951 667046980 594045591 115881353 15810894 759341900 69576340 578669338 718519211 849008714 688702816 184536294 220917206 213478722 867280004 784960045 199274360 609214802 587331806 373129282 325849983 905387718 514062581 557584827 861995706 905267914 1012137014 88670084 784094085 837445932 770062 254537604 757902367 309701852 516323303 657153294 450902298 494401491 261152812 850472416 711713289 951910901 438665743 155344923 897742306 330917749 107453166 774035890 515236990 951878410 599425480 567726791 1048513076 436804180 132139620 768775890 472239962 443799561 661615503 647304141 699061820 885622728 873960811 759706615 911502985 947415823 668687158 294715822 999258295 600483414 1071971313 967521896 774058149 1001832058 1005650131 757947706 872903786 222599664 640714539 767854950 230295653 470466483 1041907423 31883289 471124012 979147766 926025399 194298933 772525007 167671343 91867773 785734250 260639657 469320559 296105288 650195225 1038644165 77290230 119626908 395571261 237138486 91446032 70272898 597393273 677548751 766709804 990302035 996171410 776092230 802245153 427682630 88487766 1053522955 302053844 983772604 294923118 211576595 1034802528 774827346 53483801 780836613 823895332 277834364 31649158 250552320 682209425 488605701 571006299 154592029 740436578 1023204777 39789325 210982929 496397761 29871891 308031134 171775298 809157844 139523292 582151223 561356221 434112986 911055459 630988155 347245912 112094066 596228215 36202079 488052123 304234520 371788309 1060360228 182421297 804136550 181879593 310621162 979190405 546378888 599243595 587000440 1010723925 729775774 302394054 934903733 717444184 613000054 877518061 958451154 22661105 594082366 908443161 118561397 219186969 662208224 390241439 742664104 944265666 1049729178 423068531 853217264 911459112 125151536 242344474 27174679 169854696 1021821284 285205413 239975370 155312464 229261742 341090112 870960307 1014647762 772880792 464215099 831369700 523943573 640284313 947190285 206205659 1057920920 213988281 588065547 384150893 1019300769 422727534 655814315 715098122 1023412052 454540487 14077593 14590175 644689338 466862213 645590596 263505848 626564190 175306651 773122502 888203961 513588249 608009780 385932833 366814419 921993899 597501518 523067156 1028681973 845562761 651791537 903519442 374399722 862856759 21507344 983275143 1048484266 656392532 1063751053 943735894 276659897 892194430 95806164 963513525 230388956 52791099 265258712 560408292 240572778 821617114 996570490 345026843 837345014 587634977 674884981 424439885 271476021 976623497 343409196 321762300 955606544 983014212 334925128 79647931 964142737 1050859834 589305652 767303172 523126406 272771929 227642044 595612049 876287777 260562876 263769367 864504741 907006429 242235255 872316140 496500237 310836375 559736460 316602628 177739463 1056299036 31098366 859354077 833659257 139421350 519514019 418663495 141781957 196209572 678937424 763622957 702328878 354661941 173270411 1058274569 243945936 154243308 970178319 501597287 528689437 423904475 752840537 206974266 346028996 986359926 491074116 872908672 638943901 782279863 168189398 861614645 192335138 1002067559 932162801 789930886 871743508 306343671 601133017 262049953 257224802 552085119 16933796 772925778 790958206 830859295 599495588 124517072 378677613 743650904 717395988 339345356 1031043273 368826282 671901076 176960323 168540193 325940121 971274463 1072539566 432636167 505246050 699697648 110290727 1011601561 737443190 3460605 611130269 160175445 921541522 243120857 666474944 898937036 338450529 781868410 333061900 415317121 549662851 709006594 255396101 24748560 26701329 886218023 755737927 1015765106 113652768 783329827 385417074 605913515 663503841 18134863 178774224 56221355 830283316 162794795 368813773 172468337 1071329162 551627964 471867782 917016495 170549607 837962419 650584847 518096113 601650854 905881369 471855680 964127972 131533804 257534431 276192233 531767437 761511347 211787444 902499945 887821456 92203958 389716587 863080505 934762468 973924226 352895178 642965951 22075777 404421196 833727886 98060515 301781931 401888121 752283939 188335186 88297906 332169788 116471961 990877353 29084491 540776396 827134182 567455198 836436436 1057408543 273626821 785297504 240043594 553152073 80512604 969964366 385955108 519220010 518604244 582539078 509131195 674084848 148984987 996095546 923431833 1025594981 1051976462 989072828 406628841 232609687 1073497061 81970663 499475738 827632556 586658673 991627810 568786397 462854799 37830409 227602037 172547194 886847832 527781508 972159361 562242392 413555712 35476259 713041608 220900321 1067905990 1067983344 367811402 466025516 530094821 102527880 341065783 226970192 53110801 32645608 651874618 975903226 791840688 501917747 707068565 362639757 599939267 484519665 678489269 922317817 599271754 900547603 675325226 782243315 810468393 182917467 373422404 220572133 301498384 152372397 89288715 789694723 199820731 904870590 654656425 884858338 56863303 268413797 889571036 941183532 713020875 116957201 650194004 467076394 1071600506 933171477 993230919 453147253 206299635 7726619 1052887561 140752724 650716573 458692110 401539318 303517839 576011324 123632294 805442233 191989331 125918289 572331470 269290848 535782364 353782936 182075302 447717502 287609711 928868630 560533 962189022 463933554 705539215 246416140 272319459 194056532 44450339 810274350 1061292835 66830079 683475188 936640741 607431081 262697343 950806634 255355686 627416731 2711322 113911994 895775940 310274520 93384612 589251961 31406012 616134742 871016831 340565176 367790901 568937509 529728753 513974737 270116338 544175122 433832406 126716681 862557910 769816541 906870335 161852456 6892431 104211570 317613075 908007481 60316918 610353688 958541312 631131830 254676675 268835205 517665891 369163116 4649957 813786504 723856343 841882437 256930702 38757663 278753817 522548057 699754378 751887016 765714149 659850949 672951894 554388918 318822852 1038642406 876301161 322063808 195121948 1052038586 237840883 968512163 142758347 1058737279 861577609 685493371 223557477 826955518 421112174 1059286595 860561189 793190993 489467764 229965027 872685022 451272105 24009230 314890992 952023965 966724480 648356216 201519356 997148473 855626433 718813215 101205781 511823363 746169387 228026234 862485246 526792637 954772164 671573938 1030876126 312726915 463251985 65298981 602842902 624367156 1041020020 381211209 762453477 579697625 909315592 409191737 973372034 1042864493 528150111 1038127904 782773621 602371819 136793084 2556929 925700100 10491868 1067984695 571201919 627725491 60410857 869078843 98751802 629688600 1044332725 755836610 351302032 593803204 703904160 1070360128 194103785 281335467 464696606 49778310 990548333 485532932 355935158 359893676 968472 98893707 933878723 391591815 795453306 70516003 1015351306 1064102609 556948220 165834481 80320682 501485401 760182386 1051291665 190906008 742249140 1004953280 1024982897 791942254 1061567938 856707416 78212411 192217850 43423083 187166623 9056788 272169311 523400867 658833642 880451732 102836774 978056332 381127855 511065095 847695462 688929441 63631324 465635838 6052477 388266542 824883615 298089756 181051727 20645956 26904938 589592643 838064716 112963647 384511717 912799065 990505907 2445615 268229505 857061350 435521699 895064954 12523596 357328220 865811426 607047735 693507579 707522456 24215691 1022301379 712326723 1018089020 534205075 644820343 991428131 892281607 369138143 379160885 99612639 747994635 576935592 948722649 428272052 286921139 924467969 858924223 204644825 653522531 572223445 334550668 636763171 901690469 492486048 573412269 184160307 902835839 760681174 579476477 294027215 90913648 680219047 803252451 311149262 740558469 845374501 1021107347 620749102 513625286 812326085 818453588 424580443 291794863 340587509 94684945 722601601 808127890 278154625 568232704 153787921 82940772 782775690 978618823 661140626 1038769763 999813256 222061120 780362480 474655237 494993183 948449884 34552279 716690230 830632315 1017988630 927082506 811567663 500855766 80382806 520345146 391856576 765154190 226118226 122190416 299500368 1064245642 256011466 456055950 322021209 1013836431 341739113 218522099 363409112 13787008 120216775 46438510 1051345851 189848261 19671865 114229343 891373479 149141143 991792314 834207753 795158343 414540795 176549181 468800676 679065768 250045913 150244783 434930744 727536346 796898431 278159801 1608547 630110908 239076501 811692595 441024189 363531610 594817548 50938207 1014386443 623264954 883502165 605894723 961534255 644905129 906073373 983544460 738973708 312168442 632710960 859557033 521328014 773894573 630851742 887338285 501356818 563581730 353704437 22846390 735815258 448174391 504308943 1028221946 370975953 648256515 683360719 17078009 1056513003 798967435 485286064 996816990 847264981 673157597 634085756 968682171 823618465 115553866 299722673 283587737 213912865 951224131 150901379 240678348 626021077 705388516 466874820 422561163 1062101520 859997497 537284915 469005392 1020684814 352269710 883148880 959234198 550586134 440604261 989591618 609032471 21938492 377022984 1019478479 522145289 373206384 420262520 495687577 127806017 25337547 1021335685 483615504 601555231 813937782 16634491 118382175 63451758 933154723 377535325 662576397 276169407 740299969 68314951 899060079 7971031 424750333 782338105 522509183 209244628 606854823 519183391 219132662 486283832 395634049 857739980 972627481 93465263 922290849 606507821 342412383 743579003 951690958 694004910 285026675 468001852 16010940 235051119 288731632 66934701 844230129 810558954 119911127 72246641 586916815 117922273 918164113 492876860 368589176 933962613 203499152 153340511 868934025 609844415 650361222 373731865 963960990 279115330 383284519 656726151 961825957 629078237 902429257 168319340 600566111 592205848 137130897 919806813 438086793 43550788 50280104 173984159 531041182 535288694 117066116 904666388 225848574 1034806492 628873241 201435980 867801397 913510449 196986527 555159635 394832318 421457966 955938064 657564581 141768571 1005031219 770601741 364372782 729697519 415002889 1049595361 524753171 1027658485 141709243 205053466 633030630 708431013 861576671 481537953 874841245 470127683 170538509 511533044 473959383 846152184 1018720669 100721375 263529310 57729674 675691442 898309937 85588012 239297729 30310683 682680739 1051967236 819418054 187655945 932310131 490789230 436085843 793454504 522281693 63961782 504436875 741744793 588116983 509499453 10006995 1027126875 1025420440 767988974 392005678 1072585257 157520545 1036320071 123595913 261791987 234922798 826897943 1053324649 846265579 992871637 574276651 297548370 562704706 1024770990 730017147 670597337 554498610 158187589 662992464 675664877 403757579 850614055 911513603 242633322 452971655 907738343 691452270 744266074 698928523 420626940 504901359 400333176 673085904 183935191 927284995 1073533612 758571119 190309374 434869700 903222556 208159421 308409104 818060154 519842049 254561988 61964500 1051844916 420919057 207250664 1012530051 249691998 661738136 1029289611 981164333 28433439 560985182 286499083 981421273 685298178 452922969 601937928 29043409 252958600 749098426 1029424829 744618666 660163040 463023360 374888779 707973432 160038360 960070306 597940114 784641358 656729011 574906830 38727983 1020859532 702246443 508963812 593649169 288736381 522530638 800269670 308968977 313678504 224427891 564368880 693933229 1059300018 726956932 186276673 1003050247 78242515 16038848 799227864 471801222 415404536 779697384 395627454 883561488 244470577 738822039 441109402 686191665 641992503 121577982 218945952 563666312 642903372 941750257 789692148 121269921 858978829 405380576 191991401 174721279 446921182 812367810 387564572 473357770 724168514 416953025 478915062 126260485 367220643 34440152 971729393 306261903 265620434 578114188 194488699 547557546 991979002 592640799 509284873 199176108 534105132 632559475 675083330 430449142 455066650 678305414 198146232 477292258 151301373 841221776 238176002 535960960 304104721 446013226 335693156 441634176 39118131 581434325 783867353 876161104 562816291 254753503 326485655 207248003 675709573 332433314 837418819 928253287 900745226 132523366 712217629 421536922 790960459 107584926 831315146 99085875 98058868 422903733 378863977 78107614 55197275 757452835 261127913 413737331 1022855366 127580044 27213171 704848761 721801136 434759317 975394995 772235892 235587687 714151819 1022922094 728431540 764144990 230911341 762081452 912957841 828815507 501171711 128877833 243091973 453930283 952975899 918990980 730612092 488473556 647178516 520795844 841400475 773473934 140145685 870519675 817651627 200416528 170424458 865266849 87665152 194447626 828468753 690355322 956588975 924904462 366081645 872663217 1001491444 1000507011 645464868 333473543 134696471 948578964 387261615 985742715 9776677 452791379 59941275 1017124898 669135725 1008222092 772845870 739435816 602831999 397642973 73082348 369092917 204479748 407931374 402721180 203975250 923722495 388701595 421651191 589777847 791399685 779043322 699360966 398373779 481285105 1034716319 405927151 776433726 608410041 836703902 402127216 285991018 779101124 241187987 391054163 774692407 476327691 204016341 433515014 335353125 423978492 685534194 905539739 862843112 865910019 156844768 1040340273 483348251 191377198 287456904 702809268 602194544 570279047 284340095 1015498865 404689392 836613282 806728115 548397349 404849602 520442011 695541386 783134256 369474047 992707857 915978810 407741388 938302596 931443100 457013881 299950560 986903747 476544218 269848262 15051063 301435453 1038516632 272739793 816463537 759267471 988198064 597229300 586671991 87479138 279672618 744375979 831848986 40694166 833034675 503974212 650230154 386611180 959709966 375141035 262522893 581876326 313221430 1056360379 542241368 674716322 864011976 375000602 704486185 517748782 84246827 1013803295 81277298 487231657 247596671 850034562 306302271 775713834 1024700189 837871271 265027997 689010776 932050778 91539638 136580845 325249938 815238734 929752872 254378318 606896218 351299433 241070957 910142101 423784510 913160077 814842904 1047611369 604190640 946007694 798417302 342258398 862090427 161563930 1020396837 67601125 407134081 603558962 792518084 606883338 332968337 715521348 984463538 522129168 1033354160 871611906 92949379 66035644 883540412 309715796 531359825 1019448641 1013690900 752888166 374401828 503115593 380670516 824731988 729196539 461174522 323921236 902855603 30181913 576522061 46956182 111013246 325744798 837498778 434075017 943528886 218045340 83040290 16203088 1031722820 669810477 728277772 416044087 332527157 489320338 84060220 286977467 670960434 962000116 881238634 454064193 931123534 431428768 340916031 601084197 11584138 160508411 73066307 890407730 344886917 947911492 7030282 796775442 97426236 143506393 80926789 680188627 267071944 931718753 181943553 475110781 762846724 778910877 930324514 695719156 183599505 758796601 313251969 188166135 383361191 212689504 650412394 141238669 450640379 629697698 585648551 798342472 767495962 782283394 64357636 102838399 154882012 823262548 760017369 192447432 963034169 708037110 374239356 718575095 913091587 484760005 400648205 27118167 38307462 492875994 243944827 6435342 718439369 248540713 511276839 261999265 858858416 923018201 341096566 1039022766 652665122 167601247 580717439 910918855 509716035 1028926828 718592724 134786874 698783164 837983362 948972442 292966675 366353107 16215855 465420961 911641977 507830051 127404885 492153922 408635144 134730942 791238524 786522918 849341650 634433054 728415910 255483159 278770607 1060538527 1073181290 167881978 1057394244 9603152 892911941 834320534 1059758334 24470622 73601491 772713887 691202626 166928478 768896065 949160907 117159452 813161302 557068950 857601912 865674823 283425655 112486417 132343273 661446405 622408779 872980210 693543239 36419413 852240266 1010577681 965051949 31100995 891958478 297897194 977123208 492019485 674221138 164365502 52396367 71595607 881067216 822050717 161048204 926599489 48589750 213902245 997166367 604672848 897264879 726974660 174451329 254065432 383898223 101845924 250872043 44089553 304706808 333139042 65192721 1013450247 95135860 675803769 816561605 323890351 986115697 287757998 723828713 952907483 511330623 248026695 654463569 34999651 410064220 1036218476 597009036 519094110 663020425 973290109 415405171 146323899 562161956 538257601 184316287 751454763 100509073 796567905 434521760 162347844 345537302 111369566 267901282 377004279 394131459 981936480 638794682 528357344 435024129 753169505 159866065 920753982 1036249699 51357376 833027488 531805560 107454355 894257280 938238651 817792425 457321849 638551131 546058520 611533074 832628044 1042216006 577659459 371948985 823862117 946187465 170103403 1072971551 285185699 122763256 503243388 277626330 498708719 493220626 929869678 153572816 341507731 414294442 222630242 672476575 771384120 40637769 1002828941 708359475 1058553339 182293567 36421215 428506996 409171241 30582997 867988172 892180228 875838291 75711049 677504812 1044815165 754976879 719099193 46824309 201609360 338780697 297408302 598606541 960331506 318374118 60956952 291922472 410836127 533469180 267137171 857349502 515890242 30544566 890751653 238264153 299585423 172337680 480041538 149236199 146835311 1051518126 42928390 734078332 50925191 463926898 333229572 476545740 449562092 994387297 492568070 497501533 509073328 462596421 969246873 150383586 795545410 677464853 999903267 660566425 396459425 444955238 213998536 272573806 219077418 841576946 832752974 929566113 510932555 199140442 1026517067 545776871 79637804 236450658 409510295 322882237 731653456 784381912 1062918561 423436078 829219890 95357763 214451286 701754908 1040016089 756314855 331321026 709100508 177428622 309310545 185057491 492096762 50314832 70050613 644349431 720096106 738045117 349611899 470740645 361596761 95171900 566506686 840236870 684912474 901435213 779325736 995969620 715681395 791645780 386945761 907975746 651947227 689024044 654538688 194532092 18223673 696745426 368992111 884924721 697266427 721595155 925149207 903157259 639968353 162773992 492429590 787527150 327597443 370058761 458352834 608450465 458993597 560279178 159481726 122559399 327561390 268927087 81996056 708966384 41072406 97061863 683650031 473321538 1046258201 781132395 683932562 880561482 406565343 1071425563 729021647 733464217 90773093 993268490 338029628 331916743 893804664 746821157 255471250 39992224 163488423 478980671 990131433 894267734 377181070 680164173 615524881 677646285 752837548 304346690 78234244 21393359 535718449 359102964 357609685 547168088 109927053 945617686 89811415 805395620 231140715 911672198 213454437 601418763 325789247 541695133 809116547 1063799101 590547300 1041010774 453905814 746667837 510569847 6578049 927002190 466349426 765871583 824618973 1008598915 10132123 164661145 875869888 926296573 782785318 845471477 526196128 973563998 232506434 60073588 607273731 975773538 6348917 153273484 679137151 503362326 1068395957 901168186 106382131 926209270 1012020562 173486600 968983219 374503687 23385043 493141205 1068991502 480342371 259253331 943388250 482044596 178139743 838222606 342262811 525070490 500634095 773766422 595804346 639728566 872119429 852646806 527308353 416827182 309336305 301161566 304178720 665190618 720781510 919109735 414136404 458977770 264225568 680711961 82975262 190675993 98743416 174620219 785225272 352496127 913075946 499382256 406029991 677714737 845041191 800437868 601877562 762750690 905881753 228595470 167958900 532377073 514252247 138271236 681191876 366427441 745895669 403249018 964428814 246690720 887629956 345718751 784081989 954575062 250334059 858706392 522693434 696921854 1021527292 353675948 292039443 79372187 1065997242 510718400 852086372 154331232 600848123 642290030 653487951 118724313 616348307 506938950 816061420 920755440 486031072 65671333 259769148 322771732 755154139 266443561 863083457 537021060 711318924 761625717 870219556 836392383 777193343 84532628 184712196 318020400 983370725 403714523 174313632 95244208 282181260 710119841 336044163 338766142 944653496 29746494 1015740473 621018065 618739980 225053716 134533333 552697007 602888259 590010659 67736661 738215181 1046591488 76500097 1018235251 913170146 739011941 155194388 731147822 353752956 450186178 1059428290 409324427 740987213 796840425 111708658 255094723 105132711 132901807 5657255 1009930775 396544840 506080326 701594148 88580280 260911282 635835263 210903448 460481017 836961756 561040545 581935737 231855206 727832677 670871032 519450186 397533672 741290564 226746852 797405216 369275855 120971455 905780798 672599287 940696977 991383532 81956623 909337941 800700452 735911509 757467394 635819884 488084205 634065191 431021074 612754328 271439222 735575466 788081670 492753184 230303608 176624393 615130870 547362133 83984045 539943632 634602509 652252305 518438754 721977154 1059188897 783531710 700854059 526400290 357385555 274205163 603020695 476888769 1009483330 1039154732 1045844234 295364456 449475196 279218444 301089952 196015592 117769648 792235143 496137398 961477649 705194068 478860232 1050333588 1000649761 7647860 434554424 914667023 320279518 127394865 552847683 105731002 160051602 460801399 601329833 821888213 288024423 468544895 347751212 733870256 308616338 226669513 915843549 387929733 812636934 692901061 718754451 284300181 5326119 74003780 917048546 177470213 391786192 1018217603 321621686 639763315 1021188387 886186681 686471635 391723074 1044623524 113010093 772927632 999218737 922261342 1032552492 79867562 154248849 869585940 242820214 389162572 352370313 1013628020 1018421688 344581943 376102208 84877640 162447299 977239725 1069026542 554061615 887860115 16502456 620644367 657815450 780404300 842394638 716637076 199527924 868412205 846503540 554394623 678655034 997459937 786787367 805704605 424772045 658293394 202691914 1053967502 13710475 797014769 609813001 810355807 277153911 171578544 209676289 844397865 171478525 123311553 1046621179 387781231 275640535 522069091 584588233 150933966 549523585 107543563 267472747 526674172 421832759 700871829 816870264 478936412 770241178 266062783 623115804 755414537 905516847 38314402 823709292 1072194633 140028884 296186994 659432178 528322351 428550995 365132014 276526484 921266013 1067203646 147960043 1027323039 350519532 331420257 132723637 412751888 186019097 880896358 798097583 1030386630 528747292 512469684 214088813 848525746 968002009 261796958 298989397 323645469 114708587 904683041 818187343 113836201 416705663 539525464 10823169 457569099 1040693360 854368334 490859371 72705383 139329176 624368172 755361908 912583417 545776880 382773643 355144145 881690485 437992848 584859591 842910253 775571722 921270676 751012329 128615146 18397561 63025253 1017871678 233263032 423427033 936837890 1015812979 264428686 691584152 766935731 393492717 181622011 421599112 740866093 608146094 233220107 829050035 1059408875 238934617 272441742 480760192 409408202 921452958 869845701 691492950 68899807 695416512 430488020 600684790 393570940 958031934 612208011 692087615 700780052 581695271 569505450 298850695 13988448 851141339 599317667 1022970013 596788431 238122111 576675031 933025788 892656258 81448217 28740390 867346989 219645355 1068938322 613943795 20494946 1064039470 679015768 790422016 144257931 561186881 552472662 812224443 996512371 370416263 521851701 740270363 17684621 351632401 671686954 190165332 130929669 206805729 14643683 830798540 442654318 119089145 400358063 996847206 932190680 352863583 267496247 896977526 819893408 441883971 874947704 259045982 1070690444 93227630 669335791 974852052 651684033 982987448 1759134 516130200 739551441 307675607 291429785 52743579 156777759 829891629 360874561 356570906 478450074 890456777 495128070 791361036 560349160 202029809 134402367 380293060 949246449 387649452 306147139 696478441 946183234 997104625 935924016 246438699 886489273 435591589 946112352 21591606 255502954 1017158145 14707924 423581842 667685670 664700661 463992123 932378914 338753789 759380510 447995444 721612234 59824422 189386461 625692009 517065131 470315305 479583391 70943289 875311477 831267701 467028647 809801666 124197716 727163727 742344285 531703490 80785781 330372668 50988362 1029714503 541087052 919611712 772209636 511140342 199161445 615489086 969031281 182411620 272073619 743516336 34436392 782694916 501290518 704675339 691356118 539460781 25074259 103352551 12831590 922433678 1071391613 1047510477 439084914 379928608 559078290 397201644 361148084 530939892 175371022 778802103 924844949 564623549 806309096 993669766 354042980 380205901 132057611 119872241 891676365 732165471 598350472 952415706 812970149 310521065 527994250 546021535 856215741 566881693 63610549 95922862 775210720 401469298 415515319 592100159 931103945 352636091 885433412 280586282 566979349 945856051 496683606 815920380 636462129 737069145 489671957 999577412 1022416710 174965414 389313960 734837553 1041782542 157213005 1052086375 681200956 906154983 814124220 284179857 255779907 642099071 571651383 37587541 337768235 576218914 122667157 191471434 218069239 872769658 1016935767 744979539 616288355 1041534721 126733591 746285201 37994208 574417801 675442938 686649997 433526621 898523397 482010080 755094872 602639645 545284095 868860245 158248169 532594360 757692563 930474012 444749672 844272777 678055274 179108385 260182200 900186879 564397960 529915621 103490627 457308406 566342878 883080981 340429290 863250621 522380635 655742936 845214474 775048020 415235449 123211532 58567001 365839258 1014182294 718775591 643490983 455570967 288279811 128375016 862327569 686253276 1061762892 678383103 614585572 660801443 591680543 788783211 1029484915 817970387 429953889 43826681 888098510 460443673 482904613 763517379 556710434 147309517 777201261 488400056 683143508 68794074 499384372 314943740 372886680 912522770 123748569 361542681 171231504 941928509 157629933 889474809 217982287 12454073 675112105 278147451 765319200 853956754 871005693 372575136 405550748 312072544 329055277 884151142 482883412 128489417 1050019390 9423250 917767478 671807513 318191356 924517808 333647531 292789688 646954291 303204283 743705453 981826800 463206667 55400384 815488745 156879983 174973649 435667473 251275430 277212207 272076514 709666105 462753436 661187157 797750304 287902805 197753591 755339217 811629883 795236556 817424050 912663161 963348022 673473881 932635925 653646340 993035307 567065152 1057620153 303554778 294449139 265361798 440567378 893361552 518383784 981751108 787783980 472246471 391378924 385737796 794545903 965149527 80546585 988782943 1005879312 231085607 480830645 379217788 990978837 675626572 928659944 187556246 582195119 229325534 401623148 175828552 919926426 26637174 781161814 962608015 237199958 613459105 373142133 495816323 964759231 822641256 940151375 334962166 467325077 319457288 634347522 822185447 543226172 632706126 450198387 490720856 252156496 364168259 580060389 539788594 701260944 274950057 794804983 396791362 991356463 831857521 316695797 46976235 891558440 282006769 472737260 519263765 793155155 63334811 141207793 943384298 711055799 360010200 313078535 131689352 76872824 286403819 924219991 181282096 277695547 19312878 446294649 808339396 139509678 8184070 830029586 303764993 174295474 587336647 303912965 587715330 740910094 691769075 360121199 688316887 699285955 493270261 427003043 21076192 795831657 482010366 428363630 1059697346 636131702 778931114 86163796 405126927 137055585 631158316 840836652 200722113 839304538 316238568 595467492 375043101 58712537 792546512 174126306 120315149 527953926 718535028 638084491 48346439 1043097409 537534908 496807215 347605251 687311597 456403353 93527201 868792891 191013712 486775226 570887164 678646875 861825168 64648894 507232294 759276338 999152106 152681336 1028874833 766153745 493729437 165563408 446361728 984920291 249110528 174474981 83099215 903034094 526291629 850754811 996635259 93711079 1039632271 750212344 93008106 146804793 514148936 662242101 30380465 589843551 477690429 1018322761 154507644 375016481 621149080 330801157 982354611 934623283 514673580 387307458 903687942 931510065 878804161 927860153 654517491 869290141 869221892 688820291 200024961 1021358559 859208555 152645353 951596361 783548850 276050656 885716584 92722964 872061642 673106892 377590630 50223276 524136736 177302343 896110301 887315494 99966854 693465268 225267314 938557296 490210329 1056350236 335207945 75200935 1063642361 545027283 813661476 769982617 256695174 152510113 802515922 608100765 69880580 807114976 391912154 593535972 481514926 151929599 227073581 25854204 335778304 51733980 928711472 934036021 604685648 302890557 579384730 453770798 397451482 603007598 585974798 128404274 1058313747 269522260 74912982 561163729 610538469 993702491 989380033 167295557 527236632 777121042 1038526331 1069630473 132596505 818330654 837482350 422636350 48713257 973839037 497781331 164168529 294802135 961946654 820894849 226961135 712312754 599848314 1019069393 621009917 552180059 438396262 755099461 582325205 900560339 30152345 823000511 434499504 239001911 665188135 275132939 799964055 33674838 442333824 972074419 786520239 183550214 232411255 194670987 175104926 705186268 180946179 163987859 1061870615 525148259 678708974 457815549 77789638 33718504 620579684 694942101 523056136 104443258 1013974519 902575759 837192500 588147164 29229797 523597189 667504379 192768071 185750569 418652616 1057181614 492180055 159158716 582908392 1061137059 807640097 265473081 387447287 165891993 165313934 590166763 70266701 853729602 808242243 395869756 425506771 876020845 579577800 454866914 857806765 443890679 972891577 432331978 701830934 572039488 558707315 1016035150 302276241 812858159 841671172 +20 3 2 0 0 0 2 0 3 1 3 2 1 1 3 2 1 1 2 1 2 \ No newline at end of file diff --git a/Student/task3/Test_H/Hard_H/conv.out b/Student/task3/Test_H/Hard_H/conv.out new file mode 100644 index 0000000..a74818c --- /dev/null +++ b/Student/task3/Test_H/Hard_H/conv.out @@ -0,0 +1,2 @@ +1000000: 894165825 894165825 436470016 1071642601 1071642601 1070336721 754371014 1022362575 1022362575 879888395 1015682127 1034676068 1034676068 453510198 453510198 588251784 588251784 538184193 611394441 611394441 977535553 985661655 1004702407 1004702407 961279143 961279143 837061511 819672771 913416900 913416900 877401744 877401744 608231952 357832238 101323800 54015634 895070371 895070371 809568466 809568466 612669182 95011420 320440190 559935560 791600445 962384233 962384233 869319411 739361329 739361329 691851045 14161061 526473210 526473210 874511883 874511883 906104859 906104859 790213190 915900649 915900649 719552815 839355041 1048142198 1048142198 1007731210 906630171 679612485 679612485 152621156 152621156 303527956 411621894 411621894 747770445 813918725 872728587 872728587 735332395 718539477 227575337 39636624 1016909391 1016909391 110890584 369107798 445120516 445120516 413477190 202122570 560388513 560388513 261544572 261544572 249190069 618582429 618582429 538086749 330351474 889508146 899078763 1030875541 1030875541 578998353 578998353 965883463 965883463 621133293 165933540 615223529 821159496 887694795 887694795 608182473 446726367 269009922 398337900 398337900 139146372 139146372 139146372 237242652 237242652 233186748 349640164 592515170 592515170 591734961 827031392 836763363 867854401 867854401 964773105 964773105 950658375 84238343 12067944 531593824 531593824 505940092 7426364 136317844 136317844 34552848 326507442 702481358 702481358 954827657 985710807 1011488148 1011488148 544529164 547541313 616614684 675455061 675455061 181674240 181674240 325951745 325951745 943202154 1017902415 1033369423 1033369423 939595784 939595784 872645639 705042453 838994967 838994967 557257586 623828265 1040895923 1040895923 676906629 416733894 416733894 372842604 547430721 547430721 8833793 137566789 548805441 548805441 732592494 732592494 600679536 348391626 373892250 373892250 14098010 40318050 334237170 993113251 993113251 429316710 698658402 698658402 927466683 1005074939 1005074939 994523319 797890758 782883153 782883153 740945101 72739464 72739464 143131716 950710892 1035068271 1035068271 987930635 46880131 70253280 70253280 67892232 310687872 315098322 315098322 269009168 174773712 312628544 312628544 727818513 727818513 441185060 988805689 988805689 204278184 252521532 252521532 499721252 499721252 466431222 711073507 711073507 232470252 232470252 225959332 732958948 732958948 732955509 599398257 599398257 981473076 981473076 306368658 734924922 768329136 768329136 776284317 776284317 746938496 746938496 1069026065 1069026065 832907619 395651955 138269550 873321472 873321472 961993383 961993383 759080515 549189441 549189441 400679418 519300983 853540759 853540759 1051891976 1051891976 943668999 943668999 628625872 661076409 661076409 646058073 646058073 390141753 852442378 852442378 885723716 965948007 965948007 902967855 767108973 767108973 678429573 678429573 134352129 606245536 623828265 738778669 738778669 607700745 403180125 815794929 815794929 272746810 112585560 208100104 208100104 694750610 694750610 493790639 1006679200 1006679200 900905827 900905827 671223813 1015704106 1015704106 1007155215 1007155215 802530341 802530341 332473074 928117252 939732999 939732999 725689058 117985423 970581735 1071246935 1071246935 1016983119 1016983119 753172802 735525621 735525621 394998906 614806906 614806906 612706377 822421539 822421539 704839688 704839688 719636949 954003125 962980263 962980263 497058491 328542834 211028556 211028556 217765836 449508664 871801162 910953627 910953627 657272121 657272121 912305155 912305155 781648734 434365338 434365338 810714229 810714229 766747474 236471613 204998412 548450185 548450185 120690860 593545440 593545440 539367681 371721498 596564312 855638067 855638067 627098010 838926474 869868741 869868741 641802393 641802393 218637505 901794357 901794357 864532974 614391369 924584781 1060559679 1060559679 728383679 723258933 713080578 713080578 573097233 1021881601 1021881601 681700558 243269724 478970957 1048889439 1048889439 806620755 498084870 162530148 676628772 683720901 683720901 600621601 246274725 383750068 383750068 272894082 402991110 402991110 608512137 608512137 398846202 398846202 193121342 708837525 708837525 635710858 635710858 570302433 697808402 882037323 914407515 914407515 882037323 329653273 329653273 319164536 344197194 377557018 377557018 336017418 887367920 933620091 933620091 918767835 872410760 892888480 892888480 877781643 627040395 627040395 377494721 291323922 18174610 17222401 540416769 540416769 278921538 278921538 1022734685 1022734685 964898919 437149809 28083488 8913984 692098144 692098144 441924246 441924246 47586000 733445959 733445959 299818722 387923514 387923514 377671770 813866316 813866316 716053845 713331780 713331780 1068884842 1068884842 920777190 605906944 873014283 873014283 763727178 361604324 508349598 508349598 172842638 602445686 1012450959 1012450959 921229279 877319307 957578799 1067400831 1067400831 1008655887 1008655887 540885519 689442823 690544710 690544710 864084772 864084772 361708650 361708650 516184940 516184940 552823860 907724422 994877623 994877623 1020680840 1020680840 892063018 892063018 1035344751 1035344751 674110725 730609329 730609329 553199553 903400106 903400106 621518447 941221383 941221383 663909503 678538291 678538291 540279332 507912343 507912343 806627332 844104339 844104339 827591324 881141835 1065945303 1065945303 996878534 996878534 487041298 491047086 491047086 325532082 325532082 889360637 1048760415 1048760415 973479147 31119072 553176823 1006162086 1006162086 944031879 816001347 816001347 545426275 334952006 702633321 702633321 362930538 102416762 246985844 675407556 964891958 964891958 750146768 975538866 975538866 888807363 888807363 1049088 872558113 966228720 966228720 620644800 977322135 977322135 619985300 164487498 757693779 757693779 372844314 405451679 811647363 811647363 811647363 811647363 811647363 275985282 275985282 206570124 917055447 1040187423 1040187423 1063262254 1063262254 822157347 830810211 830810211 503585509 893897219 893897219 341043090 467191542 584359694 624038697 624038697 545473030 545473030 789817409 789817409 66335149 71566784 686237864 686237864 441896425 715202901 715202901 117575736 960569515 960569515 512812580 478884942 927015375 927015375 628659106 628659106 371770650 371770650 670701561 670701561 808645380 808645380 450097878 517875200 517875200 979514215 979514215 397151610 516157662 516157662 281225827 320740914 961678565 961678565 260105702 367601130 652931401 652931401 583694570 583694570 552332161 554207488 554207488 900893732 1034019183 1034019183 498522726 707743090 707743090 983998377 983998377 1024193583 1024193583 1024193583 719661525 719661525 974050314 974050314 865669797 865669797 975040023 975040023 975040023 237329891 696173901 1057103876 1057103876 508033182 735935566 735935566 689252901 1028743898 1028743898 123114112 709243104 785781261 785781261 741792965 286002210 747274636 890166243 890166243 823134762 679931962 685317081 685317081 548455233 548455233 677180384 677180384 875967473 875967473 932587955 932587955 981181914 981181914 143131716 143131716 524472510 524472510 910151223 910151223 764210505 489943854 1052761721 1052761721 68342280 35598248 1008177687 1008177687 45799248 949424211 949424211 849770832 951726637 951726637 756073005 488273453 487662126 879434992 879434992 933570939 933570939 264350095 506461598 506461598 545005624 545005624 67317768 272019224 839385618 839385618 705586393 340907011 681365061 1018481579 1018481579 965266371 965266371 621301669 609487497 536872604 143297834 251971644 251971644 120163841 593494449 998008127 998008127 585314769 585314769 184590726 314573010 323221938 323221938 541117824 541117824 830942832 830942832 319318849 312558256 820203155 820203155 48288658 552562450 552562450 814779144 1016533530 1016533530 849343597 553783329 435169377 427244454 905518706 905518706 812195777 176234580 176234580 117506434 74584968 293475424 739531332 805619715 805619715 805619715 281566237 247599324 876734588 1070460159 1070460159 85749703 119309242 306233490 306233490 81789384 81789384 923533570 923533570 639895833 639895833 138412164 338184024 529566675 628374443 628374443 419764384 419764384 403051775 403051775 76893 449311 583267278 583267278 705169162 1017251444 1017251444 667884656 667884656 384378330 781004044 781004044 1026660278 1026660278 927463611 969985759 969985759 810284163 270282014 270282014 137821184 940222726 940222726 554094611 571134993 990087698 990087698 1049633414 1049633414 617065358 1022386876 1022386876 358662570 268699650 268699650 811164262 811164262 687865893 687865893 420228165 644766022 644766022 105286985 678230728 678230728 672663045 829498275 829498275 324427811 237526094 413663341 883426635 883426635 371011098 371011098 1033569044 1033569044 10608960 1001113732 1001113732 285870529 44089680 869286914 869286914 839198739 839198739 850709331 850709331 850709331 624936730 287761248 287623458 815012625 815012625 310562898 885082689 885082689 387312186 387312186 775108992 775108992 705165333 713440753 722277380 722277380 543983045 149761476 1007438255 1007438255 632314887 339425034 674057977 674057977 651537701 651537701 715147932 715147932 437256726 974252546 1015288320 1015288320 209850444 173538012 134352900 760482477 760482477 755346021 83048749 103376664 103376664 152733900 152733900 939524264 939524264 939573255 1043393031 1043393031 536971540 786720804 786720804 1065792660 1065792660 902367780 280155836 203478702 478713672 478713672 99378386 39845520 39845520 34076688 348231744 373293210 476451814 476451814 359306194 359306194 417859528 484519782 484519782 428083302 327549366 291639714 638317065 638317065 326768562 916592603 916592603 17876016 879346504 879346504 891888939 891888939 891888939 812854017 542774913 815072963 918634282 918634282 410991794 742552277 742552277 341651082 1053329733 1053329733 987492628 987492628 952263301 952263301 576329361 468455957 396114278 514665822 729430790 769655277 769655277 157335972 367095919 894165825 894165825 436470016 1071642601 1071642601 1070336721 754371014 1022362575 1022362575 879888395 1015682127 1034676068 1034676068 453510198 453510198 588251784 588251784 538184193 611394441 611394441 977535553 985661655 1004702407 1004702407 961279143 961279143 837061511 819672771 913416900 913416900 877401744 877401744 608231952 357832238 101323800 54015634 895070371 895070371 809568466 809568466 612669182 95011420 320440190 559935560 791600445 962384233 962384233 869319411 739361329 739361329 691851045 14161061 526473210 526473210 874511883 874511883 906104859 906104859 790213190 915900649 915900649 719552815 839355041 1048142198 1048142198 1007731210 906630171 679612485 679612485 152621156 152621156 303527956 411621894 411621894 747770445 813918725 872728587 872728587 735332395 718539477 227575337 39636624 1016909391 1016909391 110890584 369107798 445120516 445120516 413477190 202122570 560388513 560388513 261544572 261544572 249190069 618582429 618582429 538086749 330351474 889508146 899078763 1030875541 1030875541 578998353 578998353 965883463 965883463 621133293 165933540 615223529 821159496 887694795 887694795 608182473 446726367 269009922 398337900 398337900 139146372 139146372 139146372 237242652 237242652 233186748 349640164 592515170 592515170 591734961 827031392 836763363 867854401 867854401 964773105 964773105 950658375 84238343 12067944 531593824 531593824 505940092 7426364 136317844 136317844 34552848 326507442 702481358 702481358 954827657 985710807 1011488148 1011488148 544529164 547541313 616614684 675455061 675455061 181674240 181674240 325951745 325951745 943202154 1017902415 1033369423 1033369423 939595784 939595784 872645639 705042453 838994967 838994967 557257586 623828265 1040895923 1040895923 676906629 416733894 416733894 372842604 547430721 547430721 8833793 137566789 548805441 548805441 732592494 732592494 600679536 348391626 373892250 373892250 14098010 40318050 334237170 993113251 993113251 429316710 698658402 698658402 927466683 1005074939 1005074939 994523319 797890758 782883153 782883153 740945101 72739464 72739464 143131716 950710892 1035068271 1035068271 987930635 46880131 70253280 70253280 67892232 310687872 315098322 315098322 269009168 174773712 312628544 312628544 727818513 727818513 441185060 988805689 988805689 204278184 252521532 252521532 499721252 499721252 466431222 711073507 711073507 232470252 232470252 225959332 732958948 732958948 732955509 599398257 599398257 981473076 981473076 306368658 734924922 768329136 768329136 776284317 776284317 746938496 746938496 1069026065 1069026065 832907619 395651955 138269550 873321472 873321472 961993383 961993383 759080515 549189441 549189441 400679418 519300983 853540759 853540759 1051891976 1051891976 943668999 943668999 628625872 661076409 661076409 646058073 646058073 390141753 852442378 852442378 885723716 965948007 965948007 902967855 767108973 767108973 678429573 678429573 134352129 606245536 623828265 738778669 738778669 607700745 403180125 815794929 815794929 272746810 112585560 208100104 208100104 694750610 694750610 493790639 1006679200 1006679200 900905827 900905827 671223813 1015704106 1015704106 1007155215 1007155215 802530341 802530341 332473074 928117252 939732999 939732999 725689058 117985423 970581735 1071246935 1071246935 1016983119 1016983119 753172802 735525621 735525621 394998906 614806906 614806906 612706377 822421539 822421539 704839688 704839688 719636949 954003125 962980263 962980263 497058491 328542834 211028556 211028556 217765836 449508664 871801162 910953627 910953627 657272121 657272121 912305155 912305155 781648734 434365338 434365338 810714229 810714229 766747474 236471613 204998412 548450185 548450185 120690860 593545440 593545440 539367681 371721498 596564312 855638067 855638067 627098010 838926474 869868741 869868741 641802393 641802393 218637505 901794357 901794357 864532974 614391369 924584781 1060559679 1060559679 728383679 723258933 713080578 713080578 573097233 1021881601 1021881601 681700558 243269724 478970957 1048889439 1048889439 806620755 498084870 162530148 676628772 683720901 683720901 600621601 246274725 383750068 383750068 272894082 402991110 402991110 608512137 608512137 398846202 398846202 193121342 708837525 708837525 635710858 635710858 570302433 697808402 882037323 914407515 914407515 882037323 783161360 783161360 319164536 344197194 377557018 377557018 336017418 887367920 933620091 933620091 918767835 872410760 892888480 892888480 877781643 627040395 627040395 377494721 291323922 18174610 546308032 546308032 540991233 278921538 278921538 1022734685 1022734685 964898919 437149809 28083488 8913984 692098144 692098144 441924246 441924246 274201218 733445959 733445959 299818722 387923514 387923514 377671770 813866316 813866316 716053845 713331780 713331780 1068884842 1068884842 920777190 605906944 873014283 873014283 763727178 361604324 508349598 508349598 172842638 602445686 1012450959 1012450959 921229279 877319307 957578799 1067400831 1067400831 1008655887 1008655887 540885519 689442823 690544710 690544710 864084772 864084772 361708650 361708650 516184940 516184940 552823860 907724422 994877623 994877623 1020680840 1020680840 892063018 892063018 1035344751 1035344751 674110725 730609329 730609329 553199553 903400106 903400106 621518447 941221383 941221383 663909503 678538291 678538291 540279332 507912343 507912343 806627332 844104339 844104339 827591324 881141835 1065945303 1065945303 996878534 996878534 487041298 491047086 491047086 325532082 325532082 889360637 1048760415 1048760415 973479147 445515892 553176823 1006162086 1006162086 944031879 816001347 816001347 545426275 334952006 702633321 702633321 362930538 102416762 246985844 675407556 964891958 964891958 750146768 975538866 975538866 888807363 888807363 1049088 872558113 966228720 966228720 620644800 977322135 977322135 619985300 790674679 790674679 757693779 372844314 405451679 811647363 811647363 811647363 811647363 811647363 275985282 275985282 206570124 917055447 1040187423 1040187423 1063262254 1063262254 822157347 830810211 830810211 503585509 893897219 893897219 341043090 467191542 584359694 624038697 624038697 545473030 545473030 789817409 789817409 66335149 71566784 686237864 686237864 441896425 715202901 715202901 117575736 960569515 960569515 512812580 478884942 927015375 927015375 628659106 628659106 371770650 371770650 670701561 670701561 808645380 808645380 450097878 517875200 517875200 979514215 979514215 397151610 516157662 516157662 281225827 320740914 961678565 961678565 260105702 367601130 652931401 652931401 583694570 583694570 552332161 554207488 554207488 900893732 1034019183 1034019183 498522726 707743090 707743090 983998377 983998377 1024193583 1024193583 1024193583 719661525 719661525 974050314 974050314 865669797 865669797 975040023 975040023 975040023 237329891 696173901 1057103876 1057103876 508033182 735935566 735935566 689252901 1028743898 1028743898 123114112 709243104 802823725 802823725 741792965 286002210 747274636 890166243 890166243 823134762 679931962 685317081 685317081 548455233 548455233 677180384 677180384 875967473 875967473 932587955 932587955 981181914 981181914 143131716 143131716 524472510 524472510 910151223 910151223 764210505 489943854 1052761721 1052761721 68342280 35598248 1008177687 1008177687 45799248 949424211 949424211 849770832 951726637 951726637 756073005 488273453 487662126 879434992 879434992 933570939 933570939 264350095 610115592 610115592 545005624 545005624 67317768 272019224 839385618 839385618 705586393 340907011 681365061 1018481579 1018481579 965266371 965266371 621301669 609487497 536872604 143297834 251971644 251971644 120163841 593494449 998008127 998008127 585314769 585314769 184590726 314573010 323221938 323221938 541117824 541117824 830942832 830942832 536870912 536870913 820203155 820203155 48288658 552562450 552562450 814779144 1016533530 1016533530 849343597 553783329 435169377 427244454 905518706 905518706 812195777 176234580 176234580 117506434 74584968 293475424 739531332 805619715 805619715 805619715 281566237 247599324 876734588 1070460159 1070460159 294513762 294513762 306233490 306233490 81789384 81789384 923533570 923533570 639895833 639895833 138412164 338184024 529566675 628374443 628374443 419764384 419764384 403051775 403051775 76893 449311 583267278 583267278 705169162 1017251444 1017251444 667884656 667884656 384378330 781004044 781004044 1026660278 1026660278 927463611 969985759 969985759 810284163 270282014 270282014 805338368 940222726 940222726 554094611 571134993 990087698 990087698 1049633414 1049633414 617065358 1022386876 1022386876 402784288 402784288 268699650 811164262 811164262 687865893 687865893 420228165 644766022 644766022 105286985 678230728 678230728 672663045 829498275 829498275 324427811 237526094 413663341 883426635 883426635 371011098 371011098 1033569044 1033569044 10608960 1001113732 1001113732 536870913 536870913 869286914 869286914 839198739 839198739 850709331 850709331 850709331 624936730 287761248 287623458 815012625 815012625 310562898 885082689 885082689 387312186 387312186 775108992 775108992 705165333 713440753 722277380 722277380 543983045 149761476 1007438255 1007438255 632314887 339425034 674057977 674057977 651537701 651537701 715147932 715147932 437256726 974252546 1015288320 1015288320 209850444 173538012 134352900 760482477 760482477 755346021 83048749 103376664 103376664 152733900 152733900 939524264 939524264 939573255 1043393031 1043393031 536971540 786720804 786720804 1065792660 1065792660 902367780 280155836 203478702 478713672 478713672 99378386 39845520 39845520 34076688 348231744 373293210 476451814 476451814 359306194 359306194 417859528 484519782 484519782 428083302 327549366 291639714 638317065 638317065 326768562 916592603 916592603 17876016 879346504 879346504 891888939 891888939 891888939 812854017 542774913 815072963 918634282 918634282 410991794 742552277 742552277 341651082 1053329733 1053329733 987492628 987492628 952263301 952263301 576329361 468455957 396114278 514665822 729430790 769655277 769655277 157335972 367095919 178524320 178524320 264640764 264640764 178524320 146936004 214044868 214044876 214044876 78905356 78905356 67108872 33554432 33554448 33554448 33554432 33554432 264192 33818640 33818640 441712704 441712704 58884688 160473856 160473856 137573124 59242608 59242608 556144 0 0 0 0 0 0 0 0 0 0 67309656 67309656 13205816 139019952 907028964 907028964 830871651 818778851 637796944 637796944 42993689 8388672 8388672 0 821081280 821081280 809236227 100663320 127614996 176207392 176207392 8389120 8389120 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1024 525312 525312 525312 525312 270600192 270870786 270870786 67371016 67371016 67108864 67108872 168692224 236590620 236590620 12113408 12113408 6291840 6291840 4194688 4194432 4194304 0 0 65536 73732 134291460 134291460 134225920 8192 0 0 705692240 1024355413 1024355413 949228097 949228097 411362495 390804666 369683602 21106848 75628672 75628672 92278784 92278784 104 570429952 570429952 1179665 0 0 65536 73728 336306176 336306176 29706 0 33804544 223917072 223917072 563116 0 128 4194432 4194432 4194432 4489376 21285024 24127876 139584132 140879876 140879876 137693184 137693184 8388608 8388672 8388672 8388672 285767696 294590002 295360098 310793330 310793330 67586626 201430016 201430016 770060 538715648 538715648 612418576 612418576 612368457 609223305 609223305 13970112 80151048 80151048 2101248 2097920 3146496 3146496 1049344 1049088 536926208 536926208 33554448 33554448 33554448 33554448 16 262176 17041440 157289728 157289728 138937476 151519620 553648484 562036833 562036833 125894705 176959608 612769092 612769092 2627593 8519040 14944704 14944704 5628736 19964000 19964000 24363008 24363008 22262208 7476096 2101888 2097408 2097152 151552 4359296 4359296 268567680 268567680 427869184 427869184 311426032 311426032 66583618 33554432 170459568 170459568 847251592 847251592 787298929 787298929 658247445 604060952 50332160 52428912 60817776 60817776 2097520 2097408 2097408 2097408 2097408 256 0 226512097 797562144 797562144 212502684 73728 73728 436285488 436285488 220078692 220078692 0 0 0 0 0 0 0 0 0 0 0 0 0 570966016 570999825 570999825 581954966 581954966 107090328 107090328 102896024 545263640 547356993 547356993 609235042 609235042 541200513 827527305 827527305 71316003 0 0 0 0 0 0 536870912 536870913 536870913 1 0 52437056 60891504 128049424 128049424 119587128 539021432 539021432 367594796 367594796 346612078 419495488 419495488 471863616 536870912 536870913 536870913 536870913 269147753 94360578 73728 73728 73728 73728 8192 16384 49152 134266880 134266884 134266884 134266884 638063684 646058073 646058073 402788358 705499142 705506325 705506325 134229009 67108864 67108864 8 0 268435456 268435458 268435458 268435458 268435458 178122324 180738132 182378196 182378196 2097152 2097408 2097408 256 0 107522048 537216410 805306371 805306371 268435458 361234434 361234434 83889258 75759656 72 961145344 961145344 353369130 353369130 352451626 352444458 67140642 924672 7168 148899040 148899040 92800536 102237288 102237288 0 0 0 0 0 524288 525312 525312 525312 525312 1024 0 8192 65536 65536 302014464 444984323 575245399 575245399 546835092 546835092 176160852 101236764 101236764 0 40960 122880 762116752 762116752 46401744 46401744 18351856 264192 2048 2050 268699650 268699650 365242602 365242602 115697770 111536472 470996232 801832504 801832504 853139529 1028703387 1028703387 876658827 656036571 629671017 783161360 783161360 33955165 135168 268288 268288 525312 621462528 621462528 620909737 620909737 4739113 0 0 0 0 0 0 67379240 88772832 546308032 546308032 809574848 815792451 815792451 274817591 189841526 184598580 136315936 25726000 2932800 33554432 272845440 272845440 272845312 274201218 274201218 4194432 4194432 4194304 0 0 0 0 0 0 32768 49152 23374336 24241056 24241056 23407136 18090368 18090368 151003136 151003136 134217732 134217732 235032584 235032584 134217732 4 0 0 0 69305600 69305600 405430280 405430280 404885766 2101254 0 721990752 721990752 562582581 536944641 536944641 159745 49152 604569604 604569604 134276105 0 0 0 262144 264192 264192 264192 264192 2048 0 0 0 92770862 718383634 1065476287 1065476287 411616326 411616326 140509504 140509504 134217732 134217732 16777248 16777248 713099316 713099316 729876516 729876516 579151953 405415381 891792770 891792770 890039595 892202283 892202283 23231627 0 41943088 445515892 445515892 939573248 939573248 419827575 33689648 33689648 0 65536 4202496 4202496 4194304 4194304 4194432 4194432 4194304 8421376 8437824 67371008 1013062535 1013062535 947259670 947259670 219202092 479870536 746602736 746602736 415597261 268484610 268484610 302055525 790674679 790674679 853181205 853181205 671272965 675332229 675332229 273435653 410252166 947496194 947496194 738197517 135422211 74465548 128 0 0 0 33556544 42207312 42207312 41949264 42336336 42336336 26513424 50380848 50380848 16810000 445134352 545679878 545679878 267499904 267499904 13832572 0 0 10485760 10485760 320 0 0 496517120 496518144 1066976878 1066976878 570949632 570950673 570950673 470483205 879441291 879441291 589508913 589508913 559579456 559579456 553832481 479007888 479007888 44174410 8388608 0 0 872441856 872441856 1049088 538444800 538444800 536870913 18948384 86184064 86184064 611861256 611861256 555276169 543802657 435457 1034432516 1034432516 900676971 738197517 738197517 640158733 67377177 2103304 0 0 773980224 773980224 8392989 822308080 852417747 852417747 63811619 66973680 66973680 625827344 764811721 764811721 157680877 4720420 92816448 92816448 8946792 0 0 0 0 683547000 802823725 802823725 679215464 268435458 268435458 268435456 67174432 83959848 218243080 218243080 143175180 33603600 33603600 565433872 565433872 564733281 93984360 204129384 204998412 204998412 50331696 50331696 33554464 50331696 50331696 33588256 574464 574464 540672 581066585 650023249 650023249 311453698 311453698 268796498 0 0 0 0 0 0 0 0 0 0 0 0 67208192 67757064 610115592 610115592 17826436 155189284 155189412 155189412 20054176 3281152 3281152 0 0 0 0 0 542117504 542117504 542671904 542671904 242012914 242012914 50638492 1045006995 1045006995 0 0 0 0 0 0 0 0 0 0 536870912 536870912 536870912 536870913 536870913 1 0 375362 546122816 546122816 336086026 336086026 49162 618696704 618795465 618795465 525312 525312 630599540 698559133 698559133 612550575 659430585 659430585 1060921206 1060921206 34758497 8388672 525376 71353364 537494536 537494536 537396225 294513762 294513762 25527298 32 16777248 16777248 83886080 83886088 83886088 67108872 8 16384 32768 32768 322961472 558106626 578814033 578814033 54790369 0 905990665 905990665 249635523 278041088 278041088 42074178 891359888 891359888 506700395 900285828 900285828 152043524 152043524 16777248 16777248 32 0 1126720 11670336 805338368 805338368 562172016 839388193 839388193 318934048 318934048 36296962 2550032 201438080 342938540 359711658 402784288 402784288 16912422 16912416 16781312 0 0 0 0 0 0 36815616 36815616 33628176 3203856 0 0 0 537165960 608487561 629249977 650067801 650067801 664344273 664344273 104421601 277051560 536870912 536870913 536870913 587500690 587500690 306989105 0 0 0 623803401 890215720 890215720 822083619 805322787 536903682 327477776 327477776 327477776 67108872 1012976402 1012976402 369098778 369098778 0 142722382 480829508 480829508 0 0 0 0 0 65536 65536 2099200 2361600 2361600 134217728 134217728 264192 67112960 67244040 68292616 68293128 629342296 655434297 655434297 599900897 599900897 567329505 1065185 0 0 0 0 0 0 302063616 302063616 73746 0 0 838956653 838956653 968557127 968557127 890262438 421691936 111069400 111069400 201427588 201427588 33554448 46272720 180363653 543371649 543371649 218637677 218637677 10552361 0 0 0 0 0 0 4194304 268469378 268976130 268976130 134234112 134234112 13896384 13896384 553718152 553718152 356130819 278019778 278019778 25629536 550251393 550251393 545548825 114591744 33595392 33603600 676462596 676462596 542249601 134222469 3281664 268570880 387461414 387461414 726541012 926156097 926156097 473524039 311206446 894165825 894165825 436470016 809103133 809103133 344461992 538236930 913071617 913071617 653836697 653838297 653838297 482609836 482609836 414977858 229187914 878807366 878807366 862309282 862309282 858907443 858907443 58884688 160473856 160473856 137573124 59242608 1016921346 1016921346 909945053 989775308 989775308 648542553 740627540 740627540 676642693 485098807 282733894 25239648 67309656 67309656 13205816 268997632 907028964 907028964 830871651 818778851 637796944 1020277817 1020277817 958139943 499408044 499408044 821081280 821081280 809236227 4932483 826400 688935968 865384641 865384641 672322053 944833108 944833108 835295917 836238051 836238051 9824832 9824832 1392704 6162432 6162432 4985536 681783201 681783201 465669916 156238500 610408033 610408033 212337996 211947852 211947852 166725288 29365408 29365408 268501312 270600192 270870786 270870786 67371016 67371016 67108864 67108872 168692224 236590620 671322368 671322368 284840432 320390706 826017394 834457443 834457443 829607057 579787857 579787857 832246339 832246339 553760239 501477870 606737697 606737697 69731592 69731592 705692240 1024355413 1024355413 949228097 949228097 411362495 390804666 369683602 251776276 75628672 75628672 92278784 536870912 536870913 570429952 570429952 8523840 362458812 440789142 474409174 482793678 1071478322 1071478322 537445377 574804993 811847827 811847827 591540609 591540609 296128627 309595570 309595570 282857442 282857442 55052816 55052816 24127876 139584132 140879876 140879876 137693184 137693184 33554448 41943104 41943104 294420480 302031970 302031970 295360098 310793330 966236234 966236234 1041759830 1041759830 738924575 672322077 538715648 612418576 612418576 612368457 609223305 609223305 13970112 543524992 543524992 604512777 604512777 11926017 145824325 580661249 580661249 536926208 536926208 136499200 136315140 134991872 451505665 451505665 325508192 838049142 838049142 583482292 138937476 151519620 553648484 562036833 562036833 125894705 176959608 612769092 612769092 2627593 11635136 73264768 73264768 15492936 19964000 19964000 24363008 24363008 51413504 142879504 142879504 134291460 432128 432128 4359296 4359296 268567680 268567680 427869184 842141888 842141888 734577909 734577909 4735093 170459568 200337232 847251592 847251592 787298929 787298929 658247445 604060952 50332160 94372352 95421288 95421288 58720368 58720368 62527344 62527344 206049656 206049656 39327252 226512097 797562144 797562144 575050124 107953500 179271065 436285488 436285488 220078692 653452568 653452568 686204177 686204177 1061191878 1061191878 961993383 759080515 553383873 966052961 966052961 954462663 858912522 530444090 570966016 570999825 570999825 581954966 581954966 107090328 612504384 612504384 612503625 547356993 547356993 609235042 609235042 541200513 827527305 827527305 71316003 206817312 206817312 205471500 622193193 622193193 137242409 537018373 537018373 536870913 150994980 159391780 159391780 60891504 128049424 128049424 119587128 539021432 539021432 904164710 948181131 948181131 546171969 419495488 268509248 536870912 536870913 970435170 970435170 1040220704 1058062911 1058062911 1057243711 652739702 963838353 963838353 962802087 1035482460 1035482460 264977488 134266884 667690168 667690168 646058073 646058073 402788358 705499142 705506325 839543824 839543824 805828611 721539104 721539104 601983025 600338069 618220233 618220233 268435458 268435458 178122324 180738132 182378196 274215040 852910442 877432715 877432715 640495161 649078883 649078883 537216410 805306371 805306371 268435458 361234434 361234434 83889258 75759656 75497544 961145344 961145344 353369130 593544352 593544352 543611265 319161353 575046424 1071662203 1071662203 728811153 728811153 733496880 733496880 589373745 589373745 733331570 733331570 491927664 322402991 302008678 270532866 19188000 91505320 91505320 806789168 806789168 176258819 83697484 1051355456 1051355456 575245399 575245399 546835092 546835092 442811419 496822278 828469363 997454775 997454775 787250288 787250288 762116752 46401744 407142400 407160966 940628630 973262871 973262871 268699650 268699650 365242602 365242602 299313904 111536472 111536472 801832504 801832504 853139529 1028703387 1028703387 876658827 656036571 629671017 629671017 924133385 924133385 335618058 377567322 377567322 352918570 621462528 621462528 620909737 892640002 892640002 620941353 269537321 269533698 77997912 19086464 37663136 372769576 372769576 545814665 545814665 810968458 815792451 815792451 466936564 522980670 522980670 403228968 33554448 2932800 2883584 272845440 272845440 270006786 310851666 883111948 883111948 706949397 105059597 375411083 977307793 977307793 474759553 713201681 713201681 914692708 914692708 529998187 335886774 272703618 225758124 346573036 346573036 213205954 436555288 436555288 134217732 235032584 235032584 167821332 33738768 570429440 578831705 606602505 606602505 143245577 405430280 405430280 404885766 452038740 452038740 721990752 721990752 562582581 536944641 536944641 430389606 430389606 604569604 793193798 935594235 935594235 935594235 808176898 808176898 306970627 304351506 40368528 46649408 46649408 713439060 769977799 947912845 947912845 718383634 1065476287 1065476287 411616326 411616326 140509504 140509504 134217732 555901200 587411505 587411505 570683488 570683488 959443425 959443425 953154759 405415381 891792770 891792770 890039595 892202283 892202283 441609788 621526506 621526506 1064623550 1064623550 939573248 939573248 956747636 956747636 857528833 565183329 991324164 991324164 414205189 535024554 535024554 962627000 962627000 576816937 373380284 373380284 588792050 1013062535 1013062535 947259670 947259670 219202092 429063776 746602736 746602736 536871040 857545364 857545364 714773365 714773365 704520064 853181205 853181205 671272965 675332229 805853123 821724163 821724163 947496194 947496194 738197517 222306816 222306816 118513732 269516896 349319874 841864434 841864434 302574725 566399748 566399748 557895971 1021821871 1021821871 863526850 863526850 142135915 445134352 545679878 545679878 267499904 602218960 602218960 68027840 68027840 243784344 243784344 933241915 933241915 468175003 692168391 692168391 1066976878 1066976878 1029941738 1029941738 755097645 470483205 879441291 879441291 589508913 589508913 559579456 559579456 856690848 856690848 844239507 480425336 497547630 942258286 942258286 940123143 872441856 1049088 538444800 538444800 536870913 335593472 335544330 86184064 611861256 611861256 555276169 543802657 247521532 1034432516 1034432516 900676971 738197517 738197517 640158733 243305136 243305136 156287652 755235896 773980224 773980224 549663636 822308080 852417747 923516024 923516024 126841915 66973680 625827344 764811721 764811721 157680877 100156736 92816448 100699264 105696408 105696408 73139736 674234928 674234928 592970513 592970513 679215464 679215464 364170831 368058392 368058392 553656321 553656321 218243080 680173060 680173060 672953409 671297541 565433872 565433872 564733281 93984360 204129384 204998412 545391809 545391809 550188225 911812633 911812633 705735417 705735417 296007688 352695150 352695150 714966244 714966244 650023249 447380259 447380259 268796498 245243484 176641032 213747540 850047508 850047508 219226668 1025185324 1025185324 1024459311 554047536 558241969 570425361 570425361 17961504 710286484 710286484 256607237 155189284 155189412 155189412 20054176 406631882 617729092 617729092 605818377 881902255 881902255 704414401 542117504 542117504 542671904 542671904 242012914 341052042 383250512 1045006995 1045006995 701302900 701302900 706413220 706413220 22379025 323033426 858108178 858108178 847563091 59244546 536870912 536870912 1608224 49152 288358912 288358912 275825538 275825538 538575938 538575938 336086026 336086026 49162 618696704 618795465 618795465 98966560 560400872 630599540 698559133 698559133 612550575 659430585 659430585 1060921206 1060921206 605984264 537184257 176297160 176297160 537494536 537494536 537396225 12183360 12183360 23333280 165551524 165551524 30673632 659951968 710029727 856760883 856760883 288432930 288432930 37761298 314769616 322961472 558106626 578814033 948046009 948046009 277079046 1041229853 1041229853 983209226 983209226 338318935 311677744 891359888 891359888 506700395 900285828 900285828 624794000 1071866813 1071866813 970595071 970595071 911810691 63972907 11670336 11670336 10691072 562172016 839388193 839388193 318934048 318934048 47978304 47978304 201438080 483823596 483823596 359711658 540479430 608957577 608957577 338579912 1021377994 1021377994 204075335 579346432 580691409 582534993 582534993 36815616 706822665 706822665 739549468 739549468 625248389 553961505 608487561 629249977 650067801 650067801 664344273 664344273 104421601 277051560 381967826 381967826 41943120 587500690 587500690 842378065 842378065 841326929 841326929 623803401 890215720 890215720 822083619 805322787 554770977 554770977 622164480 622164480 621156393 1012976402 1012976402 369098778 973487389 973487389 1073084100 1073084100 876110415 9437760 9437188 750105635 750105635 616345603 616345603 538078048 539019265 539281665 545308992 545308992 8407104 570474512 570474512 451072470 1042469846 1043518239 1043518239 655434297 655434297 700836416 700836416 693109413 143728805 142606404 67143712 71315464 71438472 71512200 71512200 302063616 874872844 874872844 508586251 541328278 838956653 838956653 968557127 968557127 890262438 421691936 969462375 969462375 956559399 822575162 520357950 117626886 180363653 543371649 543371649 218637677 940048416 940048416 486539310 728629518 728629518 709762197 709762197 258891061 235854876 268469378 406896642 406896642 268484742 268484742 296747174 365168874 553718152 553718152 542967425 644037609 881467578 881467578 550251393 550251393 545548825 114591744 33595392 33603600 36864000 36885264 36885264 3281664 3281664 268570880 387461414 387461414 726541012 926156097 926156097 473524039 311206446 894165825 912002963 966399599 966399599 966399591 813700652 538236930 913071617 913071617 653836697 722767057 722767057 482609836 482609836 414977858 692024374 878807366 878807366 862309282 862309282 858907443 858907443 465808022 465808022 427554726 427554726 481770318 1016921346 1016921346 996107235 989775308 989775308 648542553 740627540 740627540 676642693 485098807 282733894 25239648 816493061 816493061 361820510 459297484 807251039 1005053236 1005053236 967113507 587192434 1020277817 1020277817 958139943 499408044 859494195 859494195 681312372 270981378 80367050 826400 763993128 865384641 865384641 672322053 944833108 944833108 835295917 836238051 836238051 9824832 160024580 556380772 556380772 6162432 4985536 681783201 681783201 547439184 396643990 610408033 610408033 212337996 211947852 211947852 166725288 29365408 29365408 268501312 268501312 2105346 755961088 755961088 696233476 633587852 767193468 767193468 585705369 671322368 671322368 547635456 320390706 826017394 834457443 834457443 829607057 579787857 579787857 965258951 965258951 621375981 501477870 889926731 889926731 69731592 69731592 705691736 958295645 958295645 481921919 406789910 289705716 418052120 418052120 469266238 469266238 212666244 268578628 536870912 538325665 556797088 556797088 308145810 576630787 576630787 474409174 482793678 1071478322 1071478322 537445377 574804993 811847827 811847827 591540609 591540609 296128627 309595570 309595570 317324002 317324002 55052816 55052816 19323168 19040256 64 8388672 8388672 26487632 33554448 41943104 41943104 808321026 808321026 1001995608 1018735909 1018735909 1031878761 1031878761 1041759830 1041759830 757806381 672322077 318966278 833392714 892231465 892231465 415810758 642838734 642838734 576452241 543524992 604512777 604512777 11926017 682675076 682675076 643939473 643939473 552044653 136499200 136315140 134991872 451505665 451505665 325508192 838049142 838049142 583482292 17090592 594913636 594913636 859832499 1038138867 1038138867 1028652207 621312134 612942144 612942144 70348233 82578880 82578880 134217732 215605668 1050184300 1050184300 160617316 162714212 162714212 142879504 134291460 379782832 379782832 329842762 284690370 284690370 183558482 178823184 842141888 842141888 734577909 734577909 38799882 386166362 386166362 705521632 737463285 737463285 597952881 597952881 92274752 92274752 94372352 95421288 95421288 58720368 58720368 62527344 62527344 206049656 206049656 39327252 114299096 114299096 608698648 608698648 237956124 179271065 812482664 904711659 904711659 731925771 653452568 686204177 1050098271 1061191878 1061191878 961993383 902336608 902336608 966052961 966052961 954462663 858912522 530444090 54617114 42991616 944834960 944834960 587033239 33859137 612504384 612504384 612503625 10490121 322967104 899223666 899223666 899219563 897654891 21021952 23594400 206817312 206817312 205471500 622193193 625095936 625095936 537018373 537018373 150994944 150994980 159391780 178257984 313598332 313598332 286254962 728205812 728205812 658535614 904164710 948181131 948181131 546171969 96009514 268509248 411455628 411455628 970435170 970435170 1040220704 1058062911 1058062911 1057243711 652739702 963838353 963838353 962802087 1035482460 1035482460 780765200 780765200 747498573 667690168 601556997 1068480368 1068480368 936113403 652757482 910486632 910486632 805828611 721539104 721539104 669408556 652918717 645613529 618220233 236724421 210143692 210143692 199250280 329841766 329841766 852910442 877432715 877432715 640495161 947869212 947869212 518934805 775872285 952035871 952035871 818316917 818316917 579093264 579093264 648054757 648054757 374435512 852153555 857771234 857771234 543611265 319161353 893632290 1071662203 1071662203 830387820 728811153 733496880 733496880 589373745 596777887 733331570 733331570 866613679 866613679 302008678 270532866 19188000 91505320 91505320 910336664 910336664 839509459 83697484 1051355456 1051355456 614898318 785783517 785783517 302252432 442811419 936652692 936652692 997454775 997454775 787250288 787250288 193339801 182621184 407142400 407160966 940628630 973262871 973262871 910563483 910563483 302383241 299313904 299313904 1033188040 1033188040 461785887 619931530 619931530 683839941 683839941 631980840 900413224 900413224 856170778 924133385 924133385 394528890 394528890 377567322 352918570 283157504 283157504 916689744 916689744 892640002 620941353 269537321 594549930 597630595 597630595 401535784 401535784 394822944 901635923 901635923 810968458 811688503 811688503 1036362333 1036362333 947986503 505686361 33554448 16 2883584 180617240 214173900 268711248 310851666 883111948 883111948 706949397 105059597 793994537 977307793 977307793 474759553 713201681 713201681 914692708 1023632191 1023632191 335886774 272703618 225758124 346573036 346573036 213205954 436555288 436555288 421346022 201494552 201494552 167821332 33738768 570429440 578831705 606602505 606602505 824392455 824392455 152310308 285941828 540025859 540025859 461988822 983735934 983735934 210673203 153550914 430389606 430389606 268454036 793193798 935594235 935594235 935594235 808176898 808176898 306970627 304351506 40368528 46649408 651091376 713439060 769977799 947912845 947912845 546049089 415779989 577935169 808496305 808496305 538796962 289440951 49152 555901200 587411505 587411505 570683488 570683488 959443425 959443425 953154759 35717464 673186960 673186960 625651052 625651052 623063337 560128136 621526506 621526506 1064623550 1064623550 686126417 326147168 956747636 973799075 973799075 948646983 991324164 991324164 430675302 962777842 962777842 962627000 962627000 705377301 705377301 373380284 588792050 588792050 574750720 723584096 723584096 765770020 940695085 940695085 536871040 536871040 1023410816 1023410816 917263828 917263828 811489679 672452640 598446853 535085031 535085031 805853123 821724163 821724163 268435458 4194432 275776386 275776386 575816296 608288897 608288897 349319874 841864434 841864434 302574725 941785380 941785380 964834187 1021821871 1021821871 1053053102 1053053102 770497607 614762261 271587371 0 0 602218960 602218960 68027840 781310536 781310536 262873155 1065497919 1065736215 1065736215 786204831 876116278 876116278 808413755 1029941738 1029941738 872488971 726315422 891938091 891938091 495143861 536938496 810168181 989274838 989274838 856690848 844239507 480425336 497547630 942258286 942258286 940123143 872606208 1429515 805831712 822083619 822083619 335593472 335544330 1011557365 1011557365 539832082 839527155 839527155 1067400831 1067400831 738731040 738197517 499969288 312713410 679893308 971686141 971686141 807548004 807548004 755235896 778120094 778120094 242438269 43676306 923516024 923516024 820478553 820478553 569133089 594331377 602932624 914842320 914842320 50352104 100699264 105696408 105696408 83936784 674234928 674234928 592970513 592970513 559416993 530356525 722518581 722518581 368058392 554968609 622236294 622236294 680173060 680173060 672953409 977393088 977393088 63309972 537133168 1006666965 1006666965 600049723 672329474 850760261 850760261 911812633 911812633 705735417 705735417 296007688 352695150 352695150 714966244 714966244 445534814 447380259 447380259 245243484 245243484 176641032 213747540 850047508 850047508 219226668 1025185324 1025185324 1024459311 554047536 558241969 570425361 570425361 17961504 710286484 710286484 552354992 552354992 67317768 119258888 119258888 406631882 617729092 617729092 749522253 960531777 960531777 828411015 746376010 6029953 37978248 100921368 100921368 341052042 383250512 1025566810 1025566810 701302900 701302900 706413220 706413220 583039440 583039440 858108178 858108178 847563091 837084337 286037552 286037552 10058866 49152 288358912 288358912 275825538 818769602 818769602 537969153 940937874 940937874 882037323 882037323 629231619 953034797 953034797 560400872 886055414 1023623807 1029824943 1029824943 611658633 611658633 117575736 605984264 605984264 537184257 182208080 176297160 344573992 368411678 368411678 167848586 20998600 83935272 306428652 835186838 835186838 659951968 710029727 856760883 856760883 288432930 288432930 37761298 314769616 314769616 8388674 0 948046009 948046009 277079046 1041229853 1041229853 983209226 983209226 338318935 311677744 311677744 53670482 287999232 287999232 287887362 624794000 1071866813 1071866813 970595071 970595071 911810691 63972907 10486080 10486080 10485760 813829138 813829138 588024929 772426304 772426304 763774927 47978304 202767232 1013980140 1013980140 344285252 540479430 608957577 608957577 338579912 1021669740 1021669740 228829647 579346432 580691409 582534993 582534993 2379345 706822665 706822665 739549468 772691558 772691558 1017679020 1017679020 1008992650 374803162 379461210 492492564 492492564 96209584 1033268644 1033268644 1030232841 733164405 733164405 542999952 842378065 842378065 841326929 841326929 612916571 612916571 49152 553697568 554762240 554770977 554770977 622164480 622164480 621156393 1051558162 1051558162 1068962163 1068962163 973487389 1073084100 1073084100 876110415 342312518 269007242 750105635 750105635 616345603 616345603 756854317 756854317 539281665 653576669 653576669 134217732 570474512 570474512 451072470 1042469846 1043518239 1043518239 880845560 768912028 798343401 798343401 693109413 143728805 142606404 120465172 806865452 806865452 171629847 71512200 380194132 874872844 874872844 508586251 541328278 541328278 620714272 620714272 19553859 115078810 384427452 996023990 1062917823 1062917823 1057148991 1057148991 899043487 875303778 1000083063 1000083063 339234214 1030295150 1030295150 486539310 728629518 728629518 709762197 709762197 258891061 235854876 98751848 406896642 406896642 663293986 663293986 337591758 426472581 426472581 293208355 623495048 644037609 881467578 881467578 811341302 9511616 13705792 13705792 5378688 5373952 36864000 36885264 539760912 567543829 567543829 333728578 333728578 288675906 691353950 794409323 1053819615 1053819615 851774285 117184703 912002963 966399599 966399599 966399591 813700652 67108872 67108872 37933200 584745105 722767057 722767057 404491782 404491782 346630988 692024374 692024374 619437609 444950788 304136466 924893530 924893530 465808022 722506636 722506636 579650837 481770318 797937528 996107235 996107235 284675083 272095700 977189480 977189480 791274813 791274813 42503920 42503920 25301088 816493061 816493061 361820510 459297484 807251039 1005053236 1005053236 967113507 913506291 913506291 704396494 704396494 606242151 859494195 859494195 681312372 410685367 1013439361 1013439361 1008617731 763993128 94357033 682524436 942781121 1033503040 1033503040 597792815 1015444402 1015444402 160024580 556380772 673819972 673819972 648492045 574097169 547439184 547439184 396643990 442272122 442272122 129970040 129970040 983674978 1020682237 1020682237 348981759 388825366 464331044 805773414 805773414 755961088 696233476 633587852 767193468 809035541 809035541 347867403 607550466 614127177 614127177 215928708 792779404 792779404 550507059 550507059 294781074 965258951 965258951 621375981 171823760 889926731 892673187 892673187 610328712 807421607 1015596111 1015596111 481921919 406789910 289705716 418052120 418052120 631124480 631124480 212666244 559364808 559364808 538325665 556797088 556797088 308145810 576630787 576630787 445903392 445903392 679660072 854631529 854631529 547098177 1042820476 1042820476 840111756 840111756 287383842 287383842 39372432 840708248 889155433 1018779273 1022270423 1029487792 1029487792 682924552 741788541 795291724 795291724 718346365 226965612 284050322 851524867 851524867 1001995608 1018735909 1018735909 1031878761 1031878761 790688789 790688789 757806381 590357520 590357520 833392714 892231465 892231465 415810758 642838734 642838734 576452241 273350308 131523072 547547176 547547176 682675076 682675076 643939473 643939473 778530872 839834643 839834643 469897230 469897230 331926277 306133479 576370692 877282624 988844363 988844363 984613719 594913636 859832499 1038138867 1038138867 1028652207 621312134 612942144 612942144 673825096 673825096 82578880 813245600 968577347 1050184300 1050184300 716801798 716801798 562862136 562862136 153761025 379782832 379782832 329842762 341313162 341313162 183558482 178823184 703681313 703681313 718216469 718216469 146091102 386166362 831581611 831581611 737463285 737463285 885225640 885225640 752034187 788215773 788215773 777510549 1041240806 1041240806 1040187479 839389713 839389713 914494156 914494156 503939294 734412322 734412322 608698648 608698648 237956124 203423766 843317598 985925847 985925847 773409807 541691648 541691648 1050098271 1050098271 344914347 549812623 902336608 902336608 546456364 508332339 833230323 952172264 952172264 554408919 519211273 944834960 944834960 587033239 378874458 849356890 849356890 664091498 664091498 322967104 899223666 899223666 899219563 897654891 206643273 809070405 826795751 1013970887 1013970887 542639745 625095936 625095936 621215104 758513546 758513546 672010875 542433651 542433651 472000816 472000816 460335642 728205812 1017131386 1017131386 658535614 489227772 489227772 637069252 902907491 902907491 411455628 411455628 604277344 604277344 348804207 557891781 557891781 524343808 1024856162 1024856162 943130704 943130704 947529602 947529602 780765200 780765200 747498573 601556997 601556997 1068480368 1068480368 936113403 652757482 910486632 910486632 738509883 706242816 706242816 669408556 652918717 645613529 586779601 336145432 302254098 494690098 494690098 329841766 329841766 144594812 145858628 602875298 1030134758 1030134758 947869212 518934805 775872285 952035871 952035871 818316917 818316917 700049253 700049253 648054757 648054757 374435512 852153555 857771234 857771234 287252002 287252002 893632290 950381763 950381763 830387820 639841444 620381376 559124602 559124602 596777887 596777887 500347630 866613679 866613679 816191811 825640023 991479351 1028152511 1028152511 958275111 910336664 839509459 985450897 985450897 745853063 614898318 785783517 785783517 543722624 374885648 936652692 936652692 433420208 433420208 164125744 183377364 460334096 460334096 228546388 289564372 676462802 722678325 722678325 910563483 910563483 908423239 813839814 813839814 1033188040 1033188040 557950159 811747745 1007078031 1007078031 769336620 769336620 900413224 900413224 1007224077 1007224077 723714832 394528890 394528890 344599626 344599626 283157504 370016754 916689744 916689744 583100195 398509410 813255250 877111184 877111184 597630595 401535784 401535784 394822944 901635923 901635923 845287827 351577160 466936565 1036362333 1036362333 947986503 638081288 34536721 95143264 793006440 793006440 214173900 268597388 276947010 396390408 396390408 358711674 358711674 793994537 793994537 309500820 372640466 372640466 227240765 873415972 1023632191 1023632191 890717097 627816162 627816162 756151872 756151872 165527616 407743684 421346022 421346022 541379124 846878659 919342811 1045185755 1045185755 327941490 420478754 564422934 824392455 824392455 698951013 136844870 540025859 540025859 437593042 983735934 983735934 1060620431 1060620431 257649094 628520192 628520192 320751358 711730475 711730475 770047291 770047291 618929052 618929052 712543998 712543998 702987953 702987953 651091376 587921589 297132960 297132960 172230040 280745366 577935169 808496305 808496305 538796962 289440951 46785744 46785744 45799248 572560961 572560961 310550544 1001377890 1001377890 984538455 849837127 478200969 492831150 625651052 625651052 1028693768 1028693768 1002268340 1002268340 278057538 278057538 326147168 326147168 835360194 973799075 973799075 948646983 286661154 430169634 430675302 962777842 962777842 997946128 997946128 705377301 705377301 586680273 941228973 941228973 936510325 804356465 763457121 765770020 940695085 940695085 706140673 368713482 1060739712 1060739712 917263828 917263828 811489679 598446853 598446853 535085031 699813940 699813940 966323821 966323821 917627739 1037251311 1037251311 351843219 575816296 608288897 608288897 310624936 539817184 539817184 187904820 941785380 941785380 964834187 964834187 492115083 1053053102 1053053102 770497607 822155360 822155360 720336550 720336550 677916933 567981568 100712472 781310536 781310536 262873155 1065497919 1065736215 1065736215 786204831 876116278 876116278 808413755 614480164 872488971 872488971 726315422 891938091 891938091 604055856 69669160 810168181 989274838 989274838 832046231 721563702 246717564 246717564 579583228 717435093 872606208 872606208 57410036 805831712 822083619 822083619 885397707 1054148874 1054148874 1011557365 539832082 839527155 839527155 1067400831 1067400831 430689049 584923836 584923836 623170976 679893308 971686141 971686141 807548004 807548004 693512650 778120094 778120094 237403133 521888410 1033529918 1033529918 915929691 939091198 939091198 594331377 602932624 914842320 914842320 437734706 764395574 764395574 780539989 953324194 953324194 250418428 134228168 134228168 254292877 530356525 722518581 722518581 293529607 554968609 622236294 622236294 641862932 853910473 981111575 981111575 977393088 701830016 537133168 1006666965 1006666965 1047605970 1047605970 850760261 850760261 528765494 528765494 488048780 641049236 742586696 742586696 367147558 689281515 689281515 59953776 17870928 168568904 244194396 304155218 412811610 412811610 649605424 649605424 202950156 1024620044 1024620044 1024533039 913113704 913113704 588251681 368582975 169220676 971264902 971264902 552354992 552354992 67317768 386859792 642981794 642981794 535777632 535777632 749522253 960531777 960531777 828411015 1031063311 1031063311 588282133 588282133 827365006 827365006 587724849 1025566810 1025566810 586468369 623497200 623497200 602810688 583039440 583039440 861387392 861387392 837084337 837084337 286037552 288753506 866439088 866439088 810720899 586208017 842480403 842480403 818769602 884164995 940937874 940937874 882037323 959692011 1025253291 1025253291 953034797 301275936 886055414 1023623807 1029824943 1029824943 611658633 807419907 917692160 1049368919 1049368919 818024527 470211273 546354249 546354249 368411678 368411678 167848586 20998600 83935272 306428652 835186838 835186838 377235712 588253568 594807729 594807729 150021060 880872433 880872433 583217233 583217233 497375920 599916610 599916610 176604253 142830601 1049296130 1049296130 774322461 684291799 781540422 781540422 136210966 140773764 358916628 775823405 775823405 486398668 486398668 815587913 1008122886 1008122886 974076431 278834268 278834268 940348928 940348928 939997191 864063554 864063554 805306371 772426304 980557571 980557571 751747218 1013980140 1013980140 872802914 872802914 411231660 818513388 818513388 1021669740 1021669740 407234694 407234694 641863104 641863104 614723913 543699657 1045652650 1045652650 356577450 772691558 772691558 1017679020 1017679020 1008992650 374803162 379461210 492492564 492492564 96209584 1033268644 1033268644 1030232841 733164405 733164405 724430133 724430133 572877093 321921027 84657418 904709961 904709961 892180170 630140329 630140329 547740464 823811680 823811680 305876003 303951378 1051558162 1051558162 1068962163 1068962163 386735840 893251371 1009208876 1009208876 342312518 478552098 478552098 557158912 624439296 624439296 756854317 756854317 247852329 653576669 653576669 303303186 844491266 844491266 830777269 1002192133 1002192133 960157479 936484936 936484936 798343401 798343401 726515844 689259556 689259556 151423625 806865452 806865452 347846478 1009961644 1009961644 640002062 882180377 882180377 351611506 531928650 620714272 1042828924 1047658794 1047658794 384427452 996023990 1062917823 1062917823 1057148991 1057148991 899043487 875303778 1000083063 1000083063 339234214 1030295150 1030295150 1038124518 1038124518 813975599 875410034 875410034 567987072 236287064 591938097 591938097 229266904 663293986 663293986 337591758 426472581 426472581 290641954 623495048 643883625 726639792 811341302 811341302 767557869 890134765 890240043 890240043 495946084 281807488 281807488 539760912 567543829 567543829 436472424 578208146 578208146 626839209 794409323 1053819615 1053819615 851774285 525312 525312 0 0 525312 611474689 673632512 673632512 1016238598 1016238598 872960847 611724617 823470627 957620773 957620773 554697249 545603232 676473220 676473220 304136466 924893530 924893530 783351896 722506636 722506636 864917668 1066071143 1066071143 762464472 762464472 172072456 466143145 977189480 977189480 791274813 791274813 963183243 963183243 808804978 808804978 554075810 271094784 271094784 403427424 403427424 571660458 829831425 913506291 913506291 704396494 704396494 943141904 977014551 977014551 846367639 842716947 1013439361 1013439361 1008617731 554572298 739430925 739430925 821642805 1033503040 1033503040 750836682 1015444402 1015444402 540017920 262752010 673819972 673819972 648492045 1018504802 1018504802 918553062 918553062 717274635 820903363 820903363 967660948 983674978 1020682237 1020682237 825294848 546308963 1031940192 1031940192 899746049 899746049 473106698 473106698 948109684 1033904253 1033904253 874662033 874662033 614127177 614127177 109316184 538498584 538498584 575459360 587540529 587540529 16968337 5674112 5674112 292582688 619830506 892673187 892673187 610328712 807421607 1015596111 1015596111 682795729 672137733 524887230 747363490 747363490 868751569 868751569 629293072 629293072 559364808 269799424 302438418 302504018 310900818 1038030492 1038030492 587437249 835771583 835771583 854631529 854631529 589906992 1042820476 1042820476 857231360 840111756 144970996 57548080 57548208 840708248 889155433 1018779273 1022270423 1029487792 1029487792 903928650 903928650 795291724 795291724 718346365 226965612 328002048 851524867 851524867 312340050 329188866 329188866 537920260 673186053 673186053 362291717 772803868 772803868 639899163 570605592 615563539 615563539 72401544 243894858 530928054 530928054 1072114102 1072114102 682948648 682948648 14686273 10535296 610846976 610846976 778530872 1022366607 1022366607 469897230 827582343 827582343 419439650 419439650 877282624 988844363 988844363 984613719 587481588 599834865 599834865 121235256 121235256 637633584 637633584 50941977 673825096 673825096 77080173 836899520 968577347 968577347 450709236 716801798 716801798 562862136 562862136 277922370 537303619 537303619 20392528 341313162 341313162 482460998 482460998 703681313 842344672 1001724566 1001724566 303877650 100930178 831581611 831581611 972555557 972555557 885225640 885225640 752034187 788215773 788215773 777510549 1041240806 1041240806 1040187479 839389713 839389713 914494156 914494156 503939294 734412322 772139037 772139037 151321661 135191556 268698760 843317598 985925847 985925847 773409807 598300180 781223789 781223789 167496324 535486441 773547859 773547859 762538036 524424 339511815 940855050 952172264 952172264 1047312670 1047312670 422460686 462217050 589337634 621027889 849356890 849356890 666186329 889200970 922820667 922820667 760218282 760218282 751833729 206643273 809070405 826795751 1013970887 1013970887 542639745 542639745 621215104 621215104 772544698 1023679507 1023679507 542433651 542433651 472000816 472000816 460335642 721106156 1017131386 1017131386 568845480 558840993 990264937 1012505183 1012505183 902907491 341853487 297002252 432934410 432934410 348804207 799015193 799015193 524343808 1024856162 1024856162 943130704 943130704 462437159 163578084 721652792 721652792 705019924 644953688 644953688 941266781 941266781 814793283 36568080 1007501324 1007501324 673522976 706242816 706242816 2459157 187443008 194325108 336145432 336145432 302254098 494690098 494690098 181639254 900261542 999324723 999324723 893203611 1030134758 1030134758 939659271 939659271 4103 536938496 536938496 875332642 875332642 700049253 700049253 604260584 179880304 302546945 839435283 839435283 805848082 268960770 104992920 122294488 130684152 735774296 735774296 639841444 525467828 625685552 987077333 987077333 894224043 894749355 894749355 814137600 816191811 825640023 991479351 1028152511 1028152511 958275111 411900608 411900608 985450897 1009652436 1009652436 873595264 875696907 875696907 880019720 880019720 711199258 830480768 836837859 836837859 235734560 235734560 460334096 460334096 228546388 949003776 949003776 839260179 839260179 806429187 908423239 908423239 998954356 998954356 481545737 557950159 940837383 940837383 1007078031 1007078031 769336620 769336620 815923968 815923968 1007224077 1007224077 490158368 35787024 40376320 40770960 306184320 306184320 912837776 912837776 583100195 583100195 398509410 813255250 877111184 886536362 886536362 818288835 333181856 333181856 854594112 854594112 845287827 572522769 572522769 537002257 3150593 638081288 638081288 833332427 833332427 793006440 921961355 921961355 109332744 789600388 789600388 1050024543 1050024543 921840665 758147709 758147709 941237898 941237898 681260613 717226197 943786405 971352567 971352567 890717097 627816162 627816162 756151872 756151872 472386468 486862434 486862434 420775448 541379124 846878659 919342811 1045185755 1045185755 580388433 781205841 781205841 564422934 698951013 822280192 822292515 1006214736 1006214736 543476612 544525185 864905202 1060620431 1060620431 292151366 673572923 673572923 320751358 1053042788 1053042788 868669683 820440081 820776387 820776387 712543998 712543998 702987953 905463090 905463090 865852151 615512749 678217991 678217991 541591833 719937811 850936192 850936192 617645779 611599105 562225496 864524769 864524769 572560961 660887567 660887567 1001377890 1001377890 984538455 849837127 443032792 492831150 493093166 493093166 1028693768 1028693768 1050408796 1050408796 870006343 897809965 897809965 882901569 882901569 681913088 824771943 824771943 990930193 990930193 817422551 817422551 595162929 997946128 997946128 856855234 856855234 690114994 969430343 969430343 936510325 804356465 763457121 763457121 698658636 706140673 706140673 557697988 1060739712 1060739712 448894343 515099000 713306445 713306445 634127465 634127465 699813940 699813940 966323821 966323821 917627739 1037251311 1037251311 926578623 968041967 968041967 458728432 984816276 984816276 1018828733 1018828733 736133872 1014227546 1014227546 390166952 272900905 894250155 894250155 71948323 822155360 822155360 720336550 755115032 755115032 641949717 634347945 570136001 111995016 475392240 475392240 0 0 895090864 895090864 589825035 623021824 623021824 1059009744 1059009744 1031771454 909667727 909667727 604055856 539142144 539142144 537014304 553648161 553648161 686578176 686578176 413155299 1020068038 1020068038 717435093 563501257 852757203 906285577 906285577 905971898 905971898 1054148874 1054148874 656984522 727307689 728360373 728360373 579116176 201574692 233493996 653034669 653034669 623170976 623170976 17193001 606217766 606217766 421073161 693512650 693512650 344326209 940432918 940432918 1033529918 1033529918 915929691 939091198 939091198 223319352 223319352 173089428 36152946 437734706 764395574 764395574 780539989 953324194 953324194 763410040 137037357 762855428 762855428 578389058 1064422912 1064422912 1057319339 169091631 8457228 671488005 671488005 853910473 981111575 981111575 701830016 750989806 750989806 365245133 1007082984 1047605970 1047605970 807258626 807258626 528765494 528765494 488048780 1019302115 1019302115 742586696 396558666 689281515 985584487 985584487 359828747 771859718 771859718 310865238 674177605 674177605 848979012 848979012 817180515 1024620044 1024620044 1024533039 913113704 913113704 835984098 368582975 553790146 971264902 971264902 42603044 57278580 57807792 386859792 642981794 642981794 435832199 833116215 833116215 57164288 57164288 53218608 1031063311 1031063311 671911552 588282133 827365006 827365006 587724849 768558797 768558797 586468369 623497200 623497200 598137201 189018931 273023107 861387392 861387392 813938803 271377490 871697 288753506 866439088 866439088 810720899 586208017 842480403 842480403 733156148 884164995 884164995 814802186 835241187 959692011 1025253291 1025253291 560075169 593697647 900991851 900991851 313709394 313709394 112061784 807419907 917692160 1049368919 1049368919 818024527 470211273 546354249 546354249 11624768 102769740 796511664 854599099 993263761 993263761 925629823 878129619 269630018 698166375 698166375 594807729 280044354 880872433 880872433 583217233 583217233 1036320806 1036320806 599916610 21250295 8523840 1049296130 1049296130 774322461 949832963 949832963 781540422 513864028 404428742 691077443 775823405 775823405 486398668 486398668 815587913 1008122886 1008122886 974076431 538185600 813094849 940348928 940348928 939997191 864063554 864063554 911954578 911954578 980557571 980557571 756561765 756561765 886143688 886143688 876084992 876084992 818513388 818513388 948388610 948388610 407234694 578840068 784657365 784657365 715409373 571557205 1045652650 1045652650 673612321 673612321 40221333 658978841 877084833 877084833 67158024 608182280 608182280 619436560 619436560 595409609 51277312 704937984 704956437 723840021 724430133 724430133 572877093 321921027 152044869 904709961 904709961 892180170 885344489 902293647 902293647 827762851 823811680 640084160 415621346 415621346 345419304 345419304 322877712 344080396 402837582 1009208876 1009208876 881378379 881378379 478552098 816397583 816397583 624439296 542323329 542323329 4313601 540016641 540016641 303303186 844491266 844491266 830777269 1002192133 1002192133 1048200742 1048200742 936484936 48419092 726515844 726515844 689259556 689259556 876714785 877916811 1012043912 1012043912 1009961644 1009961644 832618851 906880113 906880113 351611506 531928650 747643022 1042828924 1047658794 1047658794 296273184 842076677 956375079 956375079 687980546 580518464 580518464 139789377 158560653 698388581 698388581 1010582155 1010582155 1038124518 1038124518 813975599 875410034 875410034 567987072 832603412 832603412 591938097 229266904 167904000 389153560 456131382 758301106 758301106 620892201 620892201 19464457 140779776 679557252 679557252 767557869 890134765 890240043 890240043 808072193 281807488 281807488 281743042 279722368 436472424 436472424 578208146 578208146 626839209 654871525 698613883 698613883 665428705 369301074 369301074 77542984 77542984 311699994 611474689 673632512 673632512 1016238598 1016238598 872960847 611724617 823470627 978450609 978450609 554697249 948003905 948003905 676473220 709957764 709957764 783351896 783351896 406076211 318504598 864917668 1066071143 1066071143 762464472 762464472 172072456 466143145 466143145 908158816 908158816 660089910 963183243 963183243 808804978 808804978 554075810 609067786 609067786 570474513 403427424 539976720 539976720 69477728 129833848 946764964 946764964 943141904 977014551 977014551 846367639 842716947 476561385 949539178 949539178 1001270092 1001270092 739430925 821642805 874992909 874992909 750836682 347538944 540017920 901494024 901494024 466665590 466665590 162794340 1018504802 1018504802 918553062 918553062 954068683 954068683 820903363 1071486476 1071486476 853197876 825294848 825294848 546308963 1031940192 1031940192 899746049 899746049 473106698 473106698 948109684 1033904253 1033904253 874662033 874662033 537697792 537697792 109316184 538498584 538498584 717117443 717117443 587540529 880428291 880428291 604651971 353552898 566348418 566348418 336370881 92049192 551933944 578024337 794856156 794856156 701831857 524887230 747363490 747363490 868751569 868751569 629293072 629293072 33738873 269799424 302438418 302504018 310900818 1038030492 1038030492 587437249 835771583 835771583 337229967 277398594 589906992 589906992 999970886 999970886 144970996 170794794 510431230 510431230 197790020 387070770 387070770 331614920 348391626 348391626 903928650 903928650 748858332 748858332 93608849 84021288 328002048 328002048 278836242 312340050 329188866 329188866 806404614 806404614 673186053 648848133 963794068 963794068 979193772 979193772 615563539 615563539 369147928 195307658 530928054 530928054 1072114102 1072114102 682948648 682948648 180914437 180914437 610846976 610846976 608834697 1022366607 1022366607 404903247 952454471 952454471 419439650 419439650 235143728 242238748 242238748 206359692 587481588 599834865 599834865 121235256 121235256 637633584 637633584 201479192 540787008 540787008 12247296 836899520 836899520 26383201 158564544 158564544 253755488 253755488 277917760 277922370 537303619 537303619 285617258 6952320 335758592 482460998 482460998 716693896 842344672 1001724566 1001724566 827026082 822924320 537732609 853561029 972555557 972555557 826033984 826033984 386011730 386011730 51041328 251745319 394387983 813877360 830472291 830472291 502667534 502667534 208309178 667353848 688491576 772139037 772139037 704775180 704775180 537542724 384980228 381731418 407550592 675866505 675866505 938448321 938448321 741752264 535486441 773547859 773547859 762538036 574866361 339511815 940855050 1008565058 1008565058 1047312670 1047312670 412730990 462217050 589337634 621027889 621027889 666186329 666186329 889200970 922820667 922820667 529139739 512703582 441391214 348728356 561224972 561224972 628455909 628455909 471298700 343748490 201584652 201584652 772544698 1023679507 1023679507 403122274 481374660 481374660 281264902 234801480 721106156 721106156 604099632 927501544 927501544 990264937 1012505183 1012505183 336956640 92459112 297002252 404276742 404276742 86154016 799015193 799015193 286261794 300680713 500269376 1028842406 1028842406 573080387 573080387 721652792 721652792 705019924 644953688 644953688 941266781 941266781 814793283 36568080 1007501324 1007501324 688733989 724725765 724725765 534654438 534654438 1073348810 1073348810 137889227 169124352 956342808 956342808 181639254 900261542 999324723 999324723 893203611 637346216 939655168 939659271 939659271 444859326 428082804 438307252 875332642 875332642 338756106 604260584 604260584 341863240 361072816 659417178 659417178 896498616 896498616 358573090 897743266 902565099 907051594 907051594 600099754 704401249 704401249 987077333 987077333 894224043 894749355 894749355 714465535 449177814 615827978 615827978 307649160 307649160 286724016 411900608 865565594 865565594 1009652436 1009652436 873595264 875696907 875696907 880019720 880019720 575668890 830480768 836837859 836837859 235734560 235734560 382352384 382352384 10028162 949003776 949003776 839260179 839260179 605180719 676139591 676139591 998954356 998954356 480921411 216876917 1035144324 1035144324 292766595 549028012 953738535 953738535 530138457 364455274 235423082 749578284 749578284 94853189 854958128 859906227 859906227 306184320 912837776 912837776 669144593 653924313 273728130 370203194 370203194 886536362 886536362 818288835 569443016 821824417 821824417 609078538 575956872 575956872 572596497 557257232 606927880 606927880 548008994 833332427 833332427 576980449 921961355 921961355 548125709 789600388 789600388 1050024543 1050024543 1060670778 1060670778 758147709 941237898 941237898 797483560 797483560 943786405 971352567 971352567 885861579 885861579 1037911435 1037911435 918603198 803996354 723627221 486862434 403184326 402837510 262197612 262197612 132463100 579338752 580388433 781205841 781205841 857988322 857988322 822280192 822292515 1006214736 1006214736 574898084 576141969 864941799 864941799 572944708 572944708 673572923 673572923 243718220 1053042788 1053042788 868669683 820440081 820776387 820776387 543762195 306628832 289717666 905463090 905463090 865852151 864426099 864426099 678217991 620891360 719937811 850936192 850936192 674309651 674308869 606167557 864524769 864524769 323670179 660887567 660887567 944766278 944766278 1013790985 1013790985 985723484 1019216079 1019216079 910312645 575329425 522211387 1050408796 1050408796 870006343 897809965 897809965 882901569 882901569 406863879 824771943 824771943 990930193 990930193 817422551 817422551 595162929 595162929 513520657 1018828756 1018828756 904946537 969430343 969430343 1024459408 1024459408 746708992 746708992 698658636 698658636 696377445 557697988 683555941 699104621 699104621 664737645 713306445 713306445 634127465 634127465 806216864 806216864 766827059 891347943 1064334226 1064334226 922392444 926578623 968041967 968041967 458728432 984816276 984816276 1018828733 1018828733 906267422 1014227546 1014227546 676385527 626044711 894250155 894250155 71948323 537533506 546178050 742640702 755115032 755115032 641949717 634347945 570136001 642081644 672462996 939620672 942004591 942004591 895090864 895090864 589825035 805540864 805540864 1059009744 1059009744 1031771454 909667727 909667727 661744392 661744392 539142144 537014304 553648161 553648161 686578176 686578176 483867342 1020068038 1020068038 616962249 616962249 852757203 906285577 919781402 919781402 905971898 786257323 656984522 656984522 727307689 728360373 728360373 579116176 682108236 682108236 723769800 740302081 740302081 246160948 246160948 232049388 491835622 491835622 664656460 664656460 654127065 940432918 940432918 519936310 519936310 464520054 736083440 736083440 223319352 223319352 242713764 414333908 414333908 151306570 587679272 623922736 747163513 763410040 763410040 766002021 766002021 762855428 578389058 1064422912 1064422912 1057319339 688128104 688128104 671488005 671488005 268855372 269647045 617189903 617189903 750989806 750989806 365245133 1007082984 1007082984 76055201 601412841 601412841 545649885 323059833 323059833 1019302115 1019302115 396558666 396558666 504880767 985584487 985584487 359828747 771859718 771859718 544466048 709799765 785419713 848979012 848979012 817180515 817180515 540487776 827855004 961357959 961357959 835984098 458888886 591983766 591983766 576267921 1048159116 1048159116 916305468 916305468 889844269 686867397 733530885 833116215 833116215 903677957 1031350191 1031350191 975155059 984700405 984700405 585443793 977531504 977531504 969933543 768558797 768558797 552952344 552952344 598137201 598137201 189018931 273023107 600276210 600276210 605292032 605292032 386681865 26213984 26213984 1870848 287314560 410174224 410174224 733156148 733156148 264315265 814802186 814802186 86692928 86692928 561256960 561256960 560075169 593697647 900991851 900991851 313709394 313709394 134416388 405493854 405493854 78433608 78433608 239260062 507695262 988849052 988849052 196347008 196347008 796511664 854599099 993263761 993263761 1005730365 1005730365 936692475 698166375 698166375 425787526 280044354 546114977 546114977 349250442 507848862 1036320806 1036320806 579127375 579127375 270532880 270532880 170250566 271187984 949832963 949832963 513864028 513864028 673856532 691077443 691077443 210114636 897813660 927589563 952937631 952937631 365978851 927620618 927620618 885858441 885858441 873668297 873668297 575198323 575198323 911954578 911954578 646672467 710518273 756561765 756561765 886143688 886143688 876084992 876084992 549246916 549246916 948388610 948388610 278402765 578840068 784657365 784657365 715409373 573633444 574751632 590435072 673612321 673612321 40221333 658978841 877084833 877084833 785702675 703594337 703594337 660065857 660065857 903633944 903633944 464186569 562979700 830312545 830312545 599279030 599279030 440413171 152044869 537133088 553912353 759372010 885344489 902293647 902293647 827762851 810887811 640084160 415621346 1046721832 1046721832 558255234 558255234 831656897 831656897 825365355 564659371 881378379 881378379 539546405 816397583 816397583 352912939 542323329 542323329 336699396 540016641 540016641 10521408 914407424 914407424 598860657 968480148 968480148 1048200742 1048200742 776323699 557916321 598139633 598139633 557194017 556056576 876714785 877916811 1012043912 1012043912 681725986 832618851 832618851 906880113 906880113 156028188 342919050 747643022 747643022 1029268166 1029268166 296273184 842076677 956375079 956375079 822399523 580518464 580518464 139789377 158560653 698388581 698388581 1010582155 1010582155 1028130192 1028130192 761938239 661820682 322928898 322928898 832603412 832603412 823825890 167805828 404930710 725762184 792757045 792757045 758301106 620892201 620892201 19464457 679696192 740032583 740032583 609916545 609916545 546002633 808072193 943981190 943981190 538184193 271457538 829041060 829041060 312677380 569640818 569640818 567806205 751049040 751049040 572525263 665428705 369301074 369301074 77542984 77542984 311699994 604377088 604377088 202553345 546798088 580454913 580454913 461943890 328525430 978450609 978450609 450384902 948003905 948003905 671500421 796250740 796250740 638691354 638691354 406076211 318504598 509159416 979076030 979076030 226027327 842966292 1057689017 1057689017 218657809 908158816 908158816 1031819026 1050722655 1050722655 307854696 307854696 310120338 609067786 609067786 570474513 556393761 556393761 556393761 34726225 26863200 946764964 946764964 907138307 644750745 644750745 854346985 854346985 562144744 564782433 771755360 1001270092 1001270092 939660081 939660081 874992909 874992909 512645242 417957924 561450466 901494024 901494024 498430638 268484610 39507600 573496116 624245977 640361609 710965671 954068683 954068683 497906167 1071486476 1071486476 617289157 693203172 693203172 236988249 143138816 143138816 449191312 1024408934 1024408934 732183615 638944305 638944305 614888307 621744321 621744321 566630625 537697792 169005588 185784852 186047028 717117443 717117443 553929344 880428291 880428291 604651971 353552898 548614441 548614441 537615904 537615904 273001217 447791958 794856156 794856156 742668505 302545495 340403332 415945926 613176518 613176518 18744352 28868864 565757792 565757792 539920224 583219940 952572081 952572081 600957070 394558658 394558658 391806996 273204354 446075974 962350436 962350436 999970886 999970886 954463731 945526024 945526024 510431230 120424862 723256840 1065946262 1065946262 772528210 1008038031 1008038031 882075720 748858332 748858332 119013888 124959160 124959160 285421602 588327538 588327538 35068129 104871938 806404614 806404614 671137797 648848133 963794068 963794068 979193772 979193772 239394860 369147928 369147928 356169490 443851104 443851104 536871936 537396225 537396225 139468800 709923008 709923008 574994704 574994704 516237534 930362068 930362068 593629617 952454471 952454471 405038122 681743104 684381253 684381253 250141020 682004828 682004828 637583385 637583385 623903529 654362129 654362129 241174376 586172636 586172636 727205328 727205328 569505536 569505536 36071921 158564544 158564544 341313558 341313558 718083614 860269796 860269796 445025954 285617258 631278329 631278329 348422472 875191619 875191619 716693896 856252976 856252976 827026082 822924320 537732609 1051041856 1051041856 1042598175 75516255 573120520 573120520 606651665 606651665 606602505 470504747 813877360 830472291 830472291 884475723 884475723 480380227 667353848 667353848 608510100 608510100 704775180 704775180 537542724 384980228 1016215692 1016215692 675866505 675866505 938448321 938448321 741752264 493134655 184442528 1039752440 1039752440 715866255 680575557 280858116 1008565058 1008565058 910724241 906018843 638082075 637933593 377487689 338041098 272055042 272055042 580129610 580129610 216142284 216142284 543339637 543339637 348728356 348728356 826821940 826821940 820679943 728270930 673186053 673186053 138810757 135007236 558051489 989855880 989855880 945938823 952360991 1050931551 1050931551 720754714 143257876 604099632 604099632 927501544 927501544 197152889 117585012 336956640 893836322 893836322 832598497 832598497 86154016 818151952 865124979 865124979 69241851 341919882 500269376 1028842406 1028842406 847628324 847628324 980209046 980209046 686372119 677517665 671661600 825617063 825617063 692126445 692126445 356597790 671306512 688733989 724725765 724725765 534654438 534654438 1073348810 1073348810 437040646 455078422 956342808 956342808 101793831 653550260 799804797 799804797 788005551 1054999728 1054999728 485041614 694637928 768470605 768470605 438307252 438307252 338756106 338756106 279290496 341863240 843063641 843063641 659417178 705111553 944468628 944468628 919543837 987608539 987608539 907051594 907051594 600099754 704401249 704401249 688938656 688938656 677250049 677250049 411068560 948132521 948132521 819206355 551678626 464713950 336773552 336773552 457969072 865565594 865565594 710314794 1037905897 1051796319 1051796319 458625297 508037927 990921022 990921022 701271719 995759069 995759069 274760748 274760748 442382564 442382564 81998280 81998280 466784944 793821412 793821412 605180719 676139591 726487280 726487280 445508694 445508694 630390038 1035144324 1035144324 336786147 549028012 953738535 953738535 530138457 364455274 463570437 749578284 749578284 897604536 897604536 859906227 859906227 298500336 599916562 669144593 669144593 653924313 580027840 549503169 275825538 275825538 316854738 849941200 849941200 821824417 821824417 609078538 677195268 677195268 643447197 856237744 856237744 606927880 102377272 538264600 538264600 537184257 33576976 548125709 548125709 514466068 768707596 874063484 874063484 1060670778 1060670778 862172580 862172580 739377757 797483560 797483560 645970056 736738841 736738841 885861579 885861579 1037911435 1037911435 918603198 803996354 731526860 840439413 840439413 230815068 889335966 889335966 662895025 615384542 1000741239 1000741239 554351028 857988322 857988322 816526659 554770977 971107410 971107410 688203827 576141969 864941799 864941799 572944708 576783300 576783300 396362106 396362106 881188942 881190987 881190987 673511615 994608386 994608386 312340819 908650624 913124763 913124763 900326763 900326763 864426099 864426099 620891360 620891360 279759178 844931074 844931074 1007216138 1007216138 606167557 823658019 823658019 427926562 697909282 697909282 944766278 944766278 1013790985 1013790985 985723484 1019216079 1019216079 910312645 575329425 522211387 854293852 854293852 823938603 823938603 605867906 605867906 281125635 359744334 359744334 423210056 423210056 897688814 897688814 300492258 300492258 80807722 281780308 1018828756 1018828756 904946537 904946537 877823938 1024459408 1024459408 739606809 739606809 917537935 917537935 328845360 328845360 683555941 699104621 699104621 664737645 623342095 627051008 627051008 563200609 806216864 806216864 766827059 891347943 1064334226 1064334226 737768361 354603789 692659365 692659365 395752492 395752492 713295376 713295376 906267422 906267422 903004990 903004990 796165728 796165728 779929492 203164948 100927512 103581968 503330328 742640702 742640702 143786505 143653956 53254144 195069280 642081644 672462996 939620672 942004591 942004591 830582795 830582795 656428402 805540864 805540864 574908636 795070593 795070593 772082621 554770448 661744392 661744392 945097585 963916423 963916423 722657702 706986017 483867342 483867342 807173070 807173070 616962249 772069868 772069868 817035993 919781402 919781402 890295259 878873043 337689260 337689260 6291488 23069088 153094444 262144140 682108236 715227592 723769800 740302081 740302081 246160948 274302272 405890822 491835622 491835622 664656460 933938266 933938266 754976043 754976043 519936310 519936310 464520054 673470976 673470976 241627140 307423512 375006346 414333908 414333908 168831168 50595888 623922736 747163513 747163513 691733516 766002021 766002021 328864384 383814166 994945256 994945256 844654243 844654243 969603713 969603713 606002697 511889502 1044904470 1044904470 1044428377 866588273 773198611 654608575 626149915 740070285 740070285 635962857 601412841 545649885 323059833 323059833 476453871 476453871 290456226 290456226 504434480 836123835 836123835 97522428 381945648 381945648 896801962 896801962 785419713 878273549 941172231 941172231 489254222 861989994 861989994 961357959 961357959 600994388 676455045 676455045 591983766 705843494 1048159116 1048159116 916305468 916305468 889844269 686867397 733530885 755388824 755388824 903677957 1031350191 1031350191 975155059 984700405 984700405 486618547 977531504 1011227017 1011227017 652098782 285360234 947045257 947045257 542298759 805442237 805442237 971031015 971031015 583353767 605292032 605292032 386681865 124822680 554035080 554035080 542968961 708915361 721420341 721420341 580919464 264315265 724682708 724682708 591414208 602985041 602985041 693373605 693373605 638978192 673585413 681695253 713105493 713105493 537118720 537118720 403411204 136353798 830612226 830612226 950080374 988849052 988849052 867180850 867180850 620335424 620335424 906550891 906550891 1005730365 1005730365 936692475 599048473 1015359567 1015359567 209066892 416551724 416551724 349250442 77923010 292896912 465616978 579127375 579127375 296702296 313001298 313001298 334730554 840103507 840103507 468763638 402054138 673856532 673856532 168760581 210114636 897813660 927589563 952937631 952937631 365978851 927620618 927620618 885858441 885858441 873668297 873668297 98435819 81008832 546427654 950219079 954384519 954384519 554759017 554759017 201327104 404034048 549606794 549606794 616695808 616695808 609617929 609617929 216848718 194265220 194265220 152076928 155238564 573633444 574751632 574751632 881692860 919477467 919477467 877009035 877009035 809527308 785702675 703594337 703594337 708068500 761488149 903633944 903633944 464186569 891655742 1052508946 1052508946 681878098 599279030 590433796 170995457 537133088 553912353 553912353 537133088 537133088 404767152 829441745 854214066 854214066 853018323 1046721832 1046721832 558255234 558255234 831656897 831656897 825365355 709625009 709625009 554746881 966100488 1032711279 1032711279 890053231 872843427 810758787 547651648 547651648 882164545 882164545 914407424 914407424 1000289121 1000289121 968480148 1005242487 1005242487 776323699 557916321 598139633 598139633 600082136 600082136 752635533 752635533 583913181 772016157 772016157 705555473 637798425 855822648 874512651 874512651 795366747 563279013 236639772 411584388 411584388 319074712 575945606 823517613 823517613 822399523 558363067 123419537 33934336 151510912 157218980 157218980 690177060 694495653 1028130192 1028130192 761938239 220726572 220726572 157937996 149033412 823825890 823825890 327675188 404930710 725762184 1044419202 1044419202 773014036 470860302 873512966 873512966 939556868 1033969732 1033969732 891289899 479641670 479641670 694653607 943981190 943981190 538184193 811078425 829041060 829041060 312677380 569640818 569640818 567806205 854851858 854851858 572525263 805340290 0 0 537020416 537319425 537319425 604377088 604377088 202553345 546798088 580454913 580454913 461943890 974473286 974473286 720136460 720136460 680462035 680462035 406082889 796250740 796250740 342549177 71340554 1436160 1098240 6309694 979076030 1037033001 1037033001 1045757167 1057689017 1057689017 343188644 16780802 270270496 1031819026 1050722655 1050722655 176177247 748260628 764750445 764750445 33826429 555770880 556393761 556393761 556393761 34726225 563633442 816981528 816981528 303242089 644750745 644750745 854346985 854346985 562144744 564782433 908199960 908199960 773855292 939660081 939660081 330957068 330957068 350360010 417957924 561450466 561450466 498430638 498430638 268484610 39507600 39507600 1019556224 1019556224 67109000 603566056 603566056 254124384 785584276 785584276 570425360 570425360 570668129 570668129 550308970 755697739 755697739 1024408934 1024408934 732183615 638944305 638944305 614888307 621744321 621744321 566630625 67521052 169005588 185784852 186047028 201546248 201546248 553929344 553929344 204493472 274353024 274353024 92297920 92297920 537615904 537615904 419007090 466007516 784398462 784398462 742668505 643342669 551233049 651765465 651765465 613176518 17859552 28868864 565757792 686462902 686462902 592092790 952572081 952572081 600957070 1036117032 1036117032 864045776 864045776 446075974 962350436 962350436 558657252 954463731 954463731 945526024 945526024 232708020 189842100 723256840 1065946262 1065946262 856237107 1008038031 1008038031 952941192 118101048 119013888 119013888 124959160 124959160 285421602 588327538 588327538 552604400 551551169 551551169 141899844 391224094 504513470 1008374076 1008374076 724064195 551191973 386942152 386942152 322259232 356169490 356169490 862884352 862884352 537396225 537396225 140250756 709923008 709923008 369485850 512002202 516237534 930362068 930362068 593629617 489155737 405038122 405038122 681743104 684381253 684381253 250141020 682004828 682004828 637583385 637583385 623903529 654362129 654362129 604936728 586172636 678858226 1000003191 1000003191 670170208 699824833 699824833 847170222 847170222 341313558 341313558 718083614 893556739 973475883 973475883 199496024 631278329 631278329 348422472 875191619 875191619 403832864 422222343 561787559 561787559 557870464 557870464 1051041856 1051041856 1042598175 125905002 573120520 573120520 606651665 606651665 606602505 470504747 537014284 638767641 638767641 884475723 884475723 480380227 414323526 184688244 184688244 260182140 260182140 185884800 299453832 299453832 1016215692 1016215692 929341866 929341866 161818980 557607276 557607276 338948874 184442528 1039752440 1039752440 715866255 680575557 541477396 541327504 910724241 910724241 906018843 638082075 637933593 377487689 338041098 272055042 272055042 580129610 580129610 216142284 216142284 543339637 543339637 38412324 136320020 826821940 826821940 820679943 728270930 673186053 673186053 404786454 135007236 558051489 558051489 423695360 945938823 952360991 1050931551 1050931551 720754714 376439706 232785384 232785384 143032596 136731396 135715332 76970564 278448128 893836322 893836322 889418819 832598497 998652311 998652311 865124979 865124979 69241851 341919882 558386768 558386768 570163328 847628324 847628324 980209046 980209046 686372119 902189222 902189222 825617063 825617063 692126445 692126445 356597790 356597790 202725920 650301918 650301918 70946603 44614992 380111552 403571726 437040646 455078422 455078422 34818086 34202640 653550260 799804797 799804797 788005551 1054999728 1054999728 996213504 984089943 768470605 768470605 244441788 244441788 68550912 70654728 84152840 112541827 864037352 864037352 538567394 705111553 944468628 944468628 1011680642 1011680642 987608539 819597955 38473923 974159920 991089207 991089207 688938656 688938656 677250049 677250049 231847936 948132521 1036852853 1036852853 664993020 840028645 941097093 941097093 457969072 756107540 756107540 647045721 1037905897 1051796319 1051796319 458625297 940384316 990921022 990921022 701271719 995759069 995759069 502578565 300231136 442382564 442382564 81998280 81998280 771784864 771784864 235030581 352325656 424675734 726487280 726487280 445508694 445508694 630390038 630390038 274534763 336786147 336786147 818782374 818782374 462786129 945826304 958662951 958662951 908429868 908429868 897604536 665722016 665722016 352321536 436384080 436384080 167784818 580027840 580027840 549503169 275825538 275825538 316854738 849941200 849941200 580494929 580462161 137699409 677195268 677195268 643447197 856237744 856237744 352916779 102377272 538264600 656689584 656689584 178656336 178656336 21903700 723461424 723461424 982196273 982196273 1016755315 1016755315 862172580 862172580 739377757 739377757 147694845 566489313 736738841 736738841 690377216 690377216 831834723 831834723 530829427 731526860 731526860 840439413 840439413 679516089 889335966 889335966 807653458 615384542 1011622169 1011622169 518390792 451812822 814817347 883433739 883433739 554770977 688203827 688203827 573320209 836783793 836783793 541599028 576783300 576783300 396362106 396362106 881188942 881190987 881190987 673511615 994608386 994608386 805586016 908650624 913124763 913124763 900326763 900326763 344006730 344006730 84735032 176365688 176369748 176369748 337208838 1007216138 1007216138 945832192 945832192 823658019 449331264 697909282 697909282 691377761 691377761 678246659 818807910 818807910 805583363 359942568 359942568 1047560994 1047560994 989872517 661946933 823938603 823938603 703595361 703595361 551617409 151095434 80011364 423210056 423210056 897688814 897688814 430548838 430548838 415946630 415946630 276987944 277008450 277008450 774411592 1056593757 1056593757 1012160742 709645709 554738732 1052338220 1052338220 328845360 347683616 493481866 916551166 916551166 905444331 899016705 899016705 627051008 563200609 563200609 710009580 763437165 763437165 525460117 512786630 354603789 354603789 692659365 692659365 767820320 767820320 734003445 713295376 35129429 690244368 758415374 758415374 796165728 796165728 779929492 203164948 100927512 103581968 103581968 604081152 604081152 143786505 639149072 639149072 605151753 609237352 609237352 549589185 815248407 815248407 378015866 656428402 656428402 546225448 546225448 574908636 795070593 795070593 772082621 546308673 273887546 564275944 945097585 963916423 963916423 722657702 736830230 736830230 736699893 719025869 719025869 419593310 772069868 772069868 876614280 1020527259 1020527259 885264656 878873043 337689260 653056801 653056801 449313254 449313254 812254449 891913681 891913681 715227592 543285633 557622113 557622113 289410913 405890822 418118978 418118978 385875334 933938266 933938266 545289348 583847121 697568721 697568721 573927441 573927441 241627140 241627140 307423512 375006346 375006346 214373010 168831168 508409084 508409084 223846062 571616768 571616768 194893888 194893888 328864384 910689939 994945256 994945256 937765371 844654243 969603713 969603713 606002697 511889502 1044904470 1044904470 1044428377 866588273 863014940 863014940 626149915 740070285 740070285 658428353 629719388 616563249 155527332 421070948 421070948 298844224 290456226 290456226 160432128 160432128 612 0 97722760 279325312 896801962 896801962 544820771 878273549 941172231 941172231 489254222 861989994 861989994 989409032 989409032 817779266 817779266 676455045 336906762 705843494 742034196 742034196 890512190 890512190 841956627 851110429 851110429 755388824 755388824 664322562 836689635 836689635 409222594 418390924 418390924 486618547 749064972 1011227017 1011227017 722633234 234390637 947045257 947045257 866259104 805442237 805442237 971031015 971031015 583353767 587303968 587303968 571337745 124822680 554035080 554035080 587740848 708915361 721420341 721420341 538580432 170410836 724682708 724682708 591414208 602985041 602985041 1002968340 1002968340 638978192 673585413 681695253 713105493 713105493 791347284 791347284 556048665 322574130 830612226 830612226 950080374 950080374 847452753 867180850 867180850 221003532 221003532 292150912 491572398 491572398 416773738 551565610 561394509 1015359567 1015359567 209066892 283380234 283380234 41158276 268503696 402991110 402991110 276848774 212289656 402957358 402957358 413056596 420996704 420996704 468763638 468763638 402054138 402054138 891823164 1043276050 1043276050 585609252 585609252 952555712 952555712 415684806 286622366 815421600 836554467 836554467 365367424 341059306 336069642 25266240 546427654 950219079 954384519 954384519 482443727 472924680 679481856 805708357 805708357 805644291 861196922 861196922 854753520 854753520 181438340 627329152 794870205 794870205 702377125 702377125 173379189 205628524 881692860 919477467 919477467 877009035 877009035 654641184 554246696 671138320 671138320 708068500 1008254982 1008254982 721799182 992518565 1046269599 1064586293 1064586293 682410244 682410244 590433796 211888128 759693513 759693513 762842144 762842144 702027269 702027269 829441745 854214066 1004688022 1004688022 990904887 594299266 88342656 742654753 900338829 900338829 554177707 709625009 709625009 461447286 966100488 1032711279 1032711279 890053231 872843427 810758787 747758152 547651648 882164545 882164545 872464395 866528075 1000289121 1000289121 734725303 227725350 232310318 232310318 30667488 72446992 126428280 600082136 660910866 752635533 752635533 583913181 772016157 772016157 705555473 637798425 855822648 874512651 874512651 795366747 563279013 236639772 304092854 304092854 319074712 319074712 302462994 321263922 321263922 424068008 424068008 561158926 561158926 403055652 403055652 690177060 694495653 694495653 638161204 209925472 220726572 220726572 157937996 149033412 142741572 181212868 445984260 940588931 940588931 1044419202 1044419202 773014036 805380099 873512966 873512966 939556868 1033969732 1033969732 891289899 228921835 224868780 694653607 841008902 955569497 955569497 811078425 811078425 657081856 465037154 465037154 572785184 663494977 854851858 854851858 589630520 805340290 240130633 717625557 717625557 537319425 537319425 206300169 738944004 738944004 550925 436771904 723315846 723315846 974473286 974473286 720136460 720136460 818055495 818055495 543295897 952544276 952544276 887947740 740526938 806498701 806498701 541378689 773887046 1037033001 1037033001 1045757167 1045757167 343188644 623767426 623767426 1009653760 1009653760 878328971 392197180 420970652 748260628 976959255 976959255 590881335 571606545 151866928 857009940 857009940 706857553 706857553 563633442 294236160 840507392 840507392 983040533 983040533 940663366 437305878 421119042 981557445 981557445 621054243 359530614 330342034 330957068 330957068 350360010 350360010 153393282 570175558 722281345 722281345 295159856 865210962 865210962 1050985488 1050985488 942615949 942615949 696397996 696397996 785584276 785584276 626668365 643437020 650976989 650976989 550308970 890384936 890384936 340342855 0 0 226543669 587518019 889327659 889327659 790763551 640028929 571874137 571874137 94634304 94634304 138463748 138463748 95832000 609486856 609486856 487116493 64656120 92297920 92297920 67336384 361107850 419007090 466007516 784398462 784398462 719507925 643342669 551233049 651765465 1015022252 1015022252 1032770288 1032770288 734021851 686462902 686462902 592092790 809879797 809879797 549546158 1036117032 1036117032 864045776 864045776 323916450 437657444 452359716 452359716 334360050 330901362 441179560 441179560 232708020 189842100 723256840 723256840 856237107 856237107 205665332 952941192 952941192 680531620 680531620 390070458 873804554 873804554 124045752 386114520 552604400 660965440 660965440 551551169 618681480 959988241 959988241 1008374076 1008374076 724064195 551191973 389105820 450256420 490607442 850100652 850100652 862884352 927907475 977763578 977763578 176947264 176947264 316493325 647818970 930059329 930059329 862267827 825514876 825514876 515793713 433628004 817171534 817171534 486556267 875746059 875746059 359450753 819267702 819267702 349814547 349814547 777078405 777078405 604936728 671748112 678858226 1000003191 1000003191 670170208 699824833 699824833 847170222 847170222 810195971 810195971 650741983 893556739 973475883 973475883 285508864 979765930 979765930 575757471 235664412 705206272 705616917 705616917 882982980 882982980 557870464 557870464 619021472 849422472 919339378 919339378 833126867 833126867 689442387 689442387 792204032 969968806 969968806 883951979 859609172 859609172 1016926029 1067314815 1067314815 621943864 621943864 86552152 86552152 185884800 869549350 869549350 770501617 530874616 929341866 929341866 161818980 412573736 412573736 338948874 547575555 547575555 782948421 782948421 654083933 774019440 788928573 1059164217 1059164217 925231419 453945627 437132310 274009992 443810304 443810304 704854820 740296973 740296973 278986799 77594952 28000320 28000320 46176 136320020 713053184 713053184 806360368 806360368 326026656 958537116 958537116 889328777 507909131 423695360 423695360 225567660 225567660 207741492 505438864 505438864 376439706 232785384 232785384 907183466 907183466 926849915 926849915 861860683 856190578 889418819 889418819 564501193 998652311 998652311 827577158 427083873 916720415 916720415 623149504 558386768 570163328 570163328 551560256 543761793 16262593 350783592 902189222 902189222 723403754 723403754 691270437 684853293 118687037 100712472 145200416 606486820 613102665 823069545 823069545 808452867 380111552 93619450 114327808 114327808 538091530 805565771 837443395 837443395 286533088 350553476 661925118 996213504 996213504 984089943 967343255 967343255 48380464 570843744 570843744 70654728 84152840 85983528 864037352 864037352 780191901 146973405 684314688 684314688 1015219588 1015219588 819597955 819597955 209337446 974159920 991089207 991089207 1040644673 1040644673 999426135 549453849 549453849 1042162306 1042162306 1036852853 980614674 980614674 941097093 941097093 503345586 756107540 756107540 666004195 514974558 481686348 816007711 816007711 940384316 940384316 683960827 656983353 688800676 693434628 693434628 300231136 626590858 626590858 624428969 208801581 771784864 771784864 235030581 352325656 424675734 424675734 393231186 115540552 411583554 411583554 352551680 352551680 657603338 657603338 818782374 818782374 482666580 945826304 958662951 958662951 908429868 908429868 731518525 731518525 768693913 768693913 475661044 224469420 224469420 190603888 234719016 249226988 268960770 790304352 790304352 628170881 628170881 543690049 136642837 36177168 213985144 213985144 190511162 655513754 742391949 761401749 1002574261 1002574261 866140666 866140666 686299793 686299793 661076304 723461424 723461424 982196273 982196273 1016755315 1016755315 708936389 708936389 546357329 43237440 209723580 209723580 62988528 70728456 690377216 690377216 831834723 831834723 530829427 498461550 491171932 509819782 509819782 679516089 679516089 807653458 807653458 510462422 1011622169 1011622169 518390792 471478538 1035612788 1035612788 966473319 814444573 302587904 168362000 153094400 692322740 857802789 857802789 807732228 807732228 822083619 822083619 532695351 467732874 610324951 652443880 652443880 537233200 805586016 906641841 906641841 623175192 873645434 873645434 1069686998 1069686998 673837258 673837258 547625293 807335042 812770179 812770179 45476688 945832192 945832192 449331264 449331264 452616338 452616338 440137494 134414976 136974342 818807910 818807910 213718089 359942568 908124173 1047560994 1047560994 989872517 661946933 684042306 684042306 703595361 1006740120 1006740120 938560207 539583350 564675939 621881167 621881167 159965729 430548838 430548838 563684641 565275713 673589575 828627270 828627270 774411592 1056593757 1056593757 709645709 709645709 547001084 1052338220 1052338220 554804088 572557856 572557856 916551166 916551166 905444331 943841933 1010876559 1010876559 135357067 440443122 710009580 881216038 881216038 525460117 512786630 223347372 223347372 252186408 252186408 767820320 767820320 734003445 1042831528 1042831528 826671173 826671173 306446497 75762152 75762152 536904721 536904721 34095120 111181832 603996489 603996489 640328048 640328048 639149072 639149072 605151753 116564800 712098884 1009584269 1009584269 815248407 235458633 613040224 613040224 552024068 546225448 268902828 230109382 561285480 614854817 614854817 573247488 573247488 573121809 33554448 994370294 994370294 736830230 736830230 736699893 719025869 719025869 987836542 987836542 580127313 876614280 1020527259 1020527259 992951607 746093086 155238564 653056801 653056801 612649953 612649953 812254449 920748210 920748210 653386443 543285633 557622113 772806658 772806658 654819643 418118978 418118978 385875334 290293654 290293654 545289348 583847121 697568721 697568721 573927441 573927441 409267720 1045347534 1052767447 1052767447 796922935 990549233 990549233 700007988 700007988 223846062 810584096 810584096 806633603 53772304 287044241 910689939 910689939 937765371 937765371 797390973 797390973 570898449 570898449 982980682 1015161055 1015161055 963511804 508956914 863014940 863014940 462314932 434426242 658428353 658428353 629719388 696963078 830997603 830997603 966788930 966788930 228233576 14208672 359514848 885124143 885124143 90169358 229159558 290456226 290456226 285769740 285769740 546975712 639486505 639486505 638864921 621365776 96323336 989409032 989409032 817779266 817779266 600977412 600977412 591655089 169760281 403313670 890512190 890512190 841956627 851110429 851110429 555259430 755534138 755534138 293086241 269693442 409222594 418390924 418390924 632264732 730666353 730666353 722633234 1016220578 1039208651 1039208651 892737727 866259104 481432398 481432398 1031983215 1031983215 176555291 587303968 587303968 571337745 959711526 959711526 822268348 822268348 711008661 440756533 538580432 685867072 706757461 706757461 537411584 624071696 624071696 565183329 1002968340 1002968340 368053400 920035214 920035214 134469619 178785572 791347284 791347284 942047791 942047791 924335664 924335664 605516329 621594729 621594729 814025218 814025218 499067046 499067046 292150912 491572398 491572398 416773738 551565610 561394509 671223813 671223813 186125272 186125272 145628266 303236614 303236614 402991110 402991110 276848774 350085430 402957358 604479023 604479023 505418090 798713489 798713489 492152364 492152364 689869959 891823164 1043276050 1043276050 585609252 585609252 952555712 952555712 813817923 647967795 659980297 659980297 641937561 365367424 341059306 830922923 830922923 93722339 273364098 810152450 810152450 806429187 268501505 679481856 805708357 805708357 805644291 861196922 861196922 854753520 854753520 786448585 786448585 794870205 794870205 702377125 702377125 173379189 136238800 998354985 998354985 445120526 986245270 986245270 688152722 554246696 622339641 622339641 504382985 1008254982 1008254982 922796204 994871368 1070122239 1070122239 1064586293 682410244 682410244 648872528 648872528 759693513 759693513 1059061947 1059061947 726931492 702027269 541598245 446742870 1004688022 1004688022 990904887 634967138 634967138 742654753 900338829 900338829 554177707 954373256 954373256 991040055 991040055 445195363 746817248 769210927 769210927 757517928 747758152 25453640 136064777 739320333 739320333 606407428 362021272 768609524 768609524 252184301 253879252 253879252 169918740 750805716 750805716 741417741 864327402 864327402 813571971 791832597 964689926 964689926 682729565 805356370 805356370 873464331 873464331 505528354 505528354 202950412 202950412 90251688 90251688 13408040 349719416 349719416 335230962 424068008 574632224 574632224 561158926 403055652 1023723567 1023723567 471679793 681804357 681804357 55590146 327106482 870285842 870285842 850445139 289424369 181212868 445984260 940588931 940588931 974719106 974719106 973941783 961882791 961882791 818752707 818752707 692186308 411041862 411041862 411041862 411041862 281019524 841008902 955569497 955569497 750521344 657081856 657081856 465037154 465037154 572785184 856688432 856688432 837028883 589630520 909904979 336266509 941830407 943531783 943531783 942094599 875075592 738944004 738944004 169653250 169653250 975040144 975040144 709107847 709107847 290030677 616654189 818055495 1059947707 1059947707 952544276 952544276 887947740 740526938 806498701 806498701 541378689 1014499301 1014499301 503995347 503995347 688879692 688879692 623767426 623767426 1009653760 1009653760 878328971 443795246 444101044 455381301 976959255 976959255 590881335 571606545 151866928 857009940 857009940 769714857 769714857 524634423 522570911 840507392 840507392 983040533 983040533 940663366 437305878 421119042 981557445 981557445 489685806 500194876 500194876 919388861 963181704 1013972367 1013972367 822742492 570175558 722281345 722281345 295159856 865210962 865210962 1050985488 1050985488 942615949 942615949 825439011 825439011 704193473 704193473 626668365 1060369530 1060369530 1022483885 1022483885 890384936 890384936 645390293 1059970844 1059970844 832692539 587518019 889327659 889327659 790763551 640028929 614596680 614596680 607131721 75813643 746637828 746637828 493389696 609486856 609486856 487116493 363394560 780004000 789890349 999167453 999167453 333720997 459203652 898424490 898424490 747490453 882706565 882706565 76090578 1015022252 1015022252 1032770288 1032770288 918783484 918783484 429183522 1004056502 1036018279 1036018279 526984638 650685918 659344569 659344569 671656653 671656653 681405968 681405968 504188073 752650424 855002289 855002289 793302549 793302549 19465254 994259557 994259557 805693443 805693443 432595853 185274508 770273594 770273594 739386849 708380719 873804554 873804554 893985963 893985963 570427258 660965440 660965440 576216178 909825114 959988241 959988241 892884771 495227507 246040490 389105820 389105820 450256420 490607442 850100652 1027774565 1027774565 927907475 977763578 977763578 176947264 176947264 316493325 647818970 930059329 930059329 900277559 825514876 825514876 515793713 450710040 818730698 818730698 609391868 875746059 875746059 359450753 819267702 819267702 349814547 709651472 777078405 777078405 596057260 671748112 671748112 596689521 596689521 367959168 367959168 623647904 623647904 648413764 810195971 810195971 788711492 650741983 486301022 486301022 285508864 979765930 979765930 820960707 172279956 705206272 705616917 753053846 882982980 882982980 477406028 447580997 550347811 849422472 919339378 919339378 833126867 833126867 689442387 689442387 792204032 969968806 969968806 883951979 859609172 859609172 1016926029 1067314815 1067314815 834874863 937644955 937644955 921089832 495282282 1049152401 1049152401 770501617 530874616 530874616 272093967 470995470 806871648 856941475 856941475 980241141 980241141 782948421 782948421 679266121 774019440 788928573 1059164217 1059164217 925231419 848499164 848499164 518467985 443810304 443810304 704854820 740296973 740296973 805779581 805779581 697014307 613105705 689224983 689224983 766034184 815008323 815008323 811621428 916461897 958537116 958537116 889328777 574619656 792756313 792756313 895513371 895513371 701501743 227574319 333709873 333709873 241437422 911213644 911213644 907183466 926849915 926849915 861860683 789850164 789850164 605102601 728121904 728121904 874934574 874934574 427083873 916720415 916720415 852429199 798023890 772278892 876397418 1020338895 1020338895 1020474063 1020474063 682300058 379599936 1066676972 1066676972 691270437 684853293 556912873 556912873 428406030 606486820 613102665 823069545 823069545 808452867 145047040 18556260 114327808 545372952 649517913 805565771 842685961 893034250 893034250 610941123 661925118 1027748311 1027748311 910509245 967343255 967343255 48380464 570843744 817944582 817944582 680894661 384951258 739559440 835053795 835053795 433136358 684314688 708862160 1015219588 1015219588 837813219 837813219 209337446 339090671 742133517 742133517 1040644673 1040644673 999426135 758830498 549453849 1042162306 1042162306 571285131 980614674 980614674 610294451 1023950890 1023950890 909132319 666004195 666004195 808021044 908979483 908979483 816007711 627106224 556900640 295979104 295979104 353406053 693434628 693434628 636789600 636789600 626590858 624428969 394448228 753943408 753943408 537055233 537973409 621576896 621576896 574820897 574820897 578998353 578998353 521701182 824709946 824709946 657603338 918602108 1055561039 1055561039 606258246 440453336 1044728144 1044728144 1015285839 731518525 958439722 958439722 1040188029 1040188029 976747287 976747287 449528326 449528326 249226988 257500860 790304352 790304352 628170881 628170881 543690049 136642837 36177168 213985144 213985144 190511162 655513754 1011576473 1011576473 1002574261 1002574261 990959041 990959041 686299793 1059205458 1059205458 198385972 345089931 547364894 788602941 788602941 681124426 672663045 580726853 538187793 471140937 704891406 739453223 1042362707 1042362707 592118099 592118099 466236792 349891330 349891330 491171932 491171932 509819782 509819782 420553254 420553254 595708362 836577569 1016933967 1016933967 753152259 753152259 471478538 1035612788 1035612788 966473319 814444573 767714901 443067187 443067187 692322740 953946336 953946336 807732228 912428050 912428050 850709331 589564209 589564209 994371893 994371893 727955569 860326802 860326802 906641841 906641841 623175192 873645434 873645434 1069686998 1069686998 963718428 1005221676 1005221676 807335042 812770179 812770179 45476688 719661904 719661904 473972864 473972864 469811214 452616338 1014644684 1014644684 852895646 278870848 869350644 869350644 491074547 908124173 950100179 1003586117 1003586117 699409226 834666613 994099383 994099383 1006740120 1006740120 938560207 889197343 974262807 974262807 950170461 590008342 590008342 446760483 563684641 565275713 673589575 828627270 900337019 900337019 572136328 531942474 883049795 883049795 547001084 547001084 554804088 554804088 572557856 572557856 833232486 833232486 1006821549 1006821549 1010876559 1010876559 841291172 545726523 545726523 981797372 981797372 393940099 990568994 990568994 772295031 789086276 789086276 622854441 713821269 713821269 1042831528 1042831528 826671173 826671173 306446497 1014021194 1014021194 941582447 941582447 34095120 111181832 603996489 603996489 640328048 640328048 589773105 848323440 848323440 627976105 712098884 1009584269 1009584269 605340682 570987609 407630982 552024068 552024068 547618816 301122339 685904065 685904065 955334723 955334723 711473870 711473870 573121809 474205861 994370294 994370294 888184917 591661233 591661233 468293632 620830761 987836542 987836542 580127313 781586984 781586984 992951607 992951607 877068349 619187447 619187447 617218609 612649953 612649953 553701522 920748210 1052493430 1052493430 604102665 604094585 772806658 772806658 654819643 579671561 535510702 535510702 723199468 723199468 584131281 604612609 692174676 692174676 207133708 383505668 409267720 1045347534 1052767447 1052767447 796922935 990549233 990549233 700007988 832570416 862465139 862465139 810584096 806633603 805306537 805306537 323035314 402254006 467873582 922884121 922884121 797390973 838992069 838992069 982980682 1015161055 1015161055 963511804 684722240 676596357 805061646 805061646 378428687 632706936 1057129161 1057129161 1052819679 890409703 838860819 966788930 966788930 515092785 815604783 815604783 885124143 885124143 1050214501 1050214501 601924113 601924113 892406056 892406056 655747730 639486505 639486505 638864921 621365776 902582804 902582804 806673123 621754891 143839812 759218862 806355459 806355459 978330904 978330904 585719769 506285459 608002985 660027525 848353664 878392595 878392595 814618371 995338707 995338707 276325663 976535188 976535188 676866314 1014158223 1014158223 673985553 1017965367 1039208651 1039208651 892737727 1036570678 1036570678 481432398 1031983215 1031983215 1055237601 1055237601 910753816 910753816 959711526 959711526 822268348 910502043 910502043 488451630 488451630 928112824 928112824 927023757 927023757 624071696 624071696 642843468 642843468 368053400 932977482 932977482 998885938 998885938 763786240 763786240 557132577 942047791 942047791 924335664 924335664 605516329 621594729 991269407 991269407 814025218 591568290 499067046 252262827 528616495 1032076337 1032076337 790414461 579328828 881064771 881064771 792832208 501885940 520171754 565777217 1003427015 1003427015 944320935 230714121 350085430 350085430 604479023 604479023 505418090 798713489 1007603207 1007603207 809727684 809727684 689869959 487456808 369892950 454305826 454305826 830496850 830496850 813817923 870318579 870318579 705370083 641937561 836962339 836962339 830922923 830922923 562816675 903472875 903472875 810152450 806429187 849953081 849953081 466252592 466252592 993658758 993658758 407711253 372509466 639127002 786448585 786448585 204237344 231411236 231411236 89346540 136238800 474706148 998354985 998354985 1019728968 1019728968 986245270 722760364 726188056 726188056 285828668 674875009 674875009 222347323 922796204 994871368 1070122239 1070122239 575687871 530612920 839207585 839207585 648872528 539755808 556535073 1059061947 1059061947 726931492 660217372 444485137 307265921 918968570 918968570 759583518 759583518 634967138 395355694 823810026 830134179 830134179 954373256 954373256 991040055 991040055 881979951 831742982 823174728 807008961 757517928 352837698 352837698 481044623 812197251 1019282583 1019282583 594804803 768609524 768609524 596115058 596115058 296882864 296882864 750805716 750805716 741417741 864327402 864327402 1031923837 1031923837 964689926 964689926 982670352 1023542904 1023542904 779104332 779104332 505528354 558899363 742622735 742622735 688944388 107987211 872753163 894970657 995450532 995450532 674257069 574632224 574632224 761530797 761530797 1023723567 1023723567 471679793 681804357 681804357 811503377 811503377 870285842 870285842 850445139 602836981 323184342 898214008 898214008 541081746 974719106 974719106 973941783 961882791 961882791 291245730 765750026 959644771 959644771 646906399 838787043 838787043 807452931 807452931 952256211 952256211 847908482 424288439 589504512 867246963 867246963 640018106 856688432 856688432 837028883 277611121 909904979 336266509 941830407 943531783 943531783 942094599 875075592 997888 134352388 466459360 466459360 975040144 975040144 709107847 709107847 290030677 616654189 1029085422 1059947707 1059947707 702628192 702628192 713431125 713431125 745824527 745824527 226911481 1014499301 1014499301 538718286 1017069135 1017069135 688879692 218830896 229823664 229823664 339904930 339904930 443795246 666668320 1025275005 1025275005 766383876 766383876 738452493 649858317 649858317 205589605 769714857 769714857 524634423 906332312 906332312 143939587 973154320 973154320 549456519 428150997 921120957 921120957 1015089896 1015089896 770177517 500194876 919388861 963181704 1013972367 1013972367 900611536 900611536 946916598 946916598 944816775 944816775 786913747 849555795 922041027 922041027 585655450 825439011 825439011 627507363 484385920 484385920 1060369530 1060369530 1022483885 1022483885 475752562 645390293 1060849798 1060849798 1059970844 1039618697 527038057 379720026 379720026 346030080 806359361 806359361 614596680 607131721 540148322 746637828 827198028 835851469 835851469 940573855 940573855 865101603 1012588306 1012588306 999167453 999167453 333720997 459203652 898424490 898424490 747490453 882706565 882706565 407253184 407253184 121233256 527229368 527229368 918783484 918783484 429183522 1004056502 1036018279 1036018279 467594197 333524012 333524012 622339204 671656653 671656653 681405968 1008637961 1008637961 799421341 855002289 1073049804 1073049804 793302549 19465254 994259557 994259557 805693443 805693443 432595853 944252426 944252426 770273594 739386849 708380719 702747372 702747372 893985963 893985963 570427258 54681856 576216178 576216178 909825114 909825114 891344646 798507126 495227507 539492480 539492480 533463209 337432074 337432074 704716672 1027774565 1027774565 662264163 662264163 441057539 168561684 169082984 169082984 345254601 491295848 900277559 900277559 421663014 866519125 866519125 450710040 818730698 818730698 609391868 815934655 815934655 751522693 405001569 279098146 539266128 709651472 709651472 675405957 674818001 32081221 63078899 852803923 852803923 830528721 999835889 999835889 735878775 967661248 967661248 940972551 940972551 278785602 486301022 486301022 116965664 680974270 820960707 820960707 546049089 571399252 583321809 753053846 753053846 477406028 477406028 818528720 818528720 417620357 6849536 551554344 631540201 631540201 505451421 505451421 240814527 560205217 971211784 971211784 499827158 664137410 664137410 529695779 533281723 834874863 937644955 937644955 921089832 894755352 1049152401 1049152401 19188396 939553758 939553758 533076110 533076110 806871648 856941475 856941475 980241141 980241141 612551252 616303945 679266121 679266121 516762846 634230626 1031089251 1031089251 848499164 848499164 893657256 893657256 879044653 671424557 595970288 48292208 805779581 805779581 697014307 613105705 689224983 689224983 766034184 815008323 815008323 811621428 916461897 916461897 623546834 415389312 574619656 792756313 792756313 895513371 910214079 910214079 1015546039 1015546039 851461179 241437422 911213644 911213644 568903939 307807890 307807890 788813344 788813344 110240862 462981818 728121904 728121904 874934574 874934574 818415168 818415168 852429199 852429199 798023890 772278892 876397418 1020338895 1020338895 1020474063 1020474063 682300058 379599936 1066676972 1066676972 641863833 436202643 556912873 556912873 428406030 428406030 373715417 456474222 456474222 447318982 295024596 69520128 192016936 694342432 694342432 649517913 842685961 893034250 893034250 610941123 554117576 1027748311 1027748311 663474211 663474211 344367898 335475954 335475954 955801828 955801828 1037985507 1037985507 628950003 835053795 835053795 433136358 458236112 708862160 814478403 818062464 837813219 837813219 497033615 339090671 742133517 742133517 585114511 585114511 758830498 758830498 490350478 490350478 354924087 354924087 944893114 944893114 610294451 1023950890 1023950890 909132319 556010773 556010773 808021044 908979483 908979483 640876475 627106224 556900640 447047764 480608280 480608280 353406053 233570305 636789600 636789600 165900842 165900842 394448228 394448228 283429314 537055233 537973409 621576896 621576896 574820897 574820897 578998353 578998353 521701182 824709946 824709946 535270550 918602108 1055561039 1055561039 606258246 175161476 1044728144 1044728144 1015285839 335544386 958439722 958439722 1040188029 1040188029 976747287 1055635780 1055635780 951574429 691722021 508204309 492443310 470827174 716721686 716721686 682499397 607719881 566052336 718823921 718823921 655298297 442490536 1011576473 1011576473 575383296 611440005 990959041 990959041 278413997 1059205458 1059205458 567018496 683952558 1017679045 1017679045 681124426 681124426 672663045 580726853 538187793 471140937 704891406 943510573 1042362707 1042362707 1009158282 1009158282 466236792 349891330 349891330 440119238 440119238 348708094 416423940 420553254 420553254 595708362 836577569 1016933967 1016933967 844389488 802874097 802874097 555145761 520185038 563320365 767714901 767714901 690627884 862752174 862752174 953946336 953946336 649739927 912428050 912428050 850709331 796265560 796265560 994371893 994371893 727955569 860326802 860326802 884851819 884851819 868256784 868256784 862510131 946604007 946604007 963718428 1005221676 1005221676 694659558 694659558 783403403 888677057 888677057 270532608 473972864 473972864 469811214 295733226 1014644684 1014644684 852895646 331485140 869350644 869350644 706808910 201328631 950100179 1003586117 1003586117 1003622400 1003622400 994099383 994099383 850445136 850445136 613482643 889197343 974262807 974262807 950170461 590008342 590008342 446760483 446760483 562826732 610733141 610733141 900337019 900337019 531942474 531942474 883049795 883049795 405818213 703932278 741110136 741110136 420014596 287490152 833232486 833232486 1006821549 1006821549 753976237 841291172 841291172 545726523 545726523 981797372 981797372 826707113 990568994 990568994 776714743 789086276 789086276 622854441 713821269 713821269 648846225 648846225 772285164 772285164 121635208 1014021194 1014021194 941582447 941582447 168317332 239767956 239767956 180929748 399960022 515649570 515649570 848323440 848323440 627976105 627976105 941326983 941326983 605340682 570987609 407630982 944310352 944310352 547618816 301122339 685904065 685904065 955334723 955334723 711473870 711473870 899754368 899754368 648080269 888184917 888184917 591661233 591661233 239255742 620830761 620830761 356901265 351476434 427823108 427823108 159383652 877068349 877068349 619187447 619187447 617218609 281633872 553701522 553701522 54661281 1052493430 1052493430 710419349 604094585 591671670 588912786 579671561 579671561 535510702 535510702 723199468 723199468 584131281 604612609 638331586 638331586 203691921 383505668 578181932 1062941795 1062941795 603841943 939837447 990696999 990696999 978621460 978621460 862465139 862465139 976998018 976998018 805306537 805306537 404393184 425612942 425612942 922884121 922884121 450287894 838992069 838992069 781332500 781332500 311953090 684722240 684722240 676596357 805061646 805061646 378428687 632706936 1057129161 1057129161 1052819679 890409703 1019808804 1019808804 911738452 515092785 815604783 815604783 609304936 609304936 1050214501 1050214501 601924113 601924113 892406056 892406056 655747730 614768690 629194857 1057064262 1057064262 902582804 968041226 968041226 621754891 165679628 759218862 806355459 806355459 978330904 978330904 585719769 604931472 644274585 841388928 848353664 878392595 878392595 814618371 995338707 995338707 940992522 976535188 976535188 676866314 1014158223 1014158223 863711262 1017965367 1017965367 968446280 762632247 1036570678 1036570678 314344661 267536678 508794131 1055237601 1055237601 910753816 910753816 789943313 789943313 757984262 910502043 910502043 961021095 961021095 928112824 928112824 927023757 927023757 553847393 36053090 642843468 642843468 330118337 932977482 932977482 998885938 998885938 763786240 833063751 1001108839 1010317943 1010317943 857772423 345039524 345039524 268822545 991269407 991269407 595855931 591568290 252262827 252262827 528616495 1032076337 1032076337 790414461 579328828 881064771 881064771 792832208 501885940 520171754 565777217 1003427015 1003427015 944320935 399685720 399685720 397156892 252570684 260074296 260074296 798821948 1007603207 1007603207 809727684 809727684 471081521 471081521 369892950 454305826 454305826 429206118 774243432 774243432 870318579 870318579 705370083 583218183 836962339 836962339 815994795 278269833 562816675 903472875 903472875 477296011 964106692 964106692 849953081 466252592 466252592 993658758 993658758 949010644 989864226 989864226 318819159 981490262 981490262 740946526 811462275 821545664 821545664 511720644 511720644 248198364 1019728968 1019728968 451562555 722760364 726188056 726188056 285828668 674875009 674875009 973727746 973727746 790490685 380683098 395314926 530612920 530612920 839207585 839207585 639116053 312291008 312291008 270803032 201326849 174712212 1015967410 1045860651 1045860651 918968570 918968570 759583518 759583518 739080052 646591865 823810026 830134179 830134179 306200731 642295362 747700775 881979951 881979951 949295027 949295027 807008961 352720938 352837698 352837698 645404058 812197251 1019282583 1019282583 594804803 537133608 968892860 968892860 596115058 296882864 296882864 331931856 331931856 667273383 667273383 634136795 1031923837 1031923837 926550967 926550967 982670352 1023542904 1023542904 859967667 504153233 491257865 681779131 802264447 858294116 858294116 107987211 872753163 894970657 995450532 995450532 674257069 772096704 772096704 761530797 761530797 702550121 554047521 232853912 252903604 409537682 876714700 876714700 407369862 485570395 602836981 602836981 323184342 898214008 898214008 541081746 100976664 86057256 727720230 929038779 929038779 325158059 765750026 959644771 959644771 646906399 838787043 838787043 807452931 807452931 1005158420 1005158420 847908482 811607027 589504512 867246963 867246963 640018106 640018106 1041442984 1041442984 995498679 755307031 0 0 0 0 165001959 805490691 806076419 806076419 970280676 970280676 827851778 861417121 861417121 589039205 814726473 814726473 1029085422 1029085422 485076304 702628192 702628192 176498772 176498772 667523180 667523180 361696622 361696622 269298690 538718286 1017069135 1017069135 528824877 218830896 33816960 40110480 132285112 747800096 747800096 666668320 1025275005 1025275005 766383876 766383876 738452493 720926817 720926817 676457291 109682647 843303104 843303104 906332312 906332312 403968128 973154320 973154320 600113716 600113716 921120957 921120957 1015089896 1015089896 770177517 615887984 674225506 674225506 632624584 896749417 900611536 900611536 946916598 946916598 944816775 944816775 786913747 348104522 853235272 907809297 907809297 551275107 551275107 334570482 1054620268 1054620268 549066561 549066561 697781642 697781642 494903634 494903634 1060849798 1060849798 1039618697 1039618697 1035644928 320998570 107879832 295829602 806359361 806359361 168825410 540148322 540148322 294650689 827198028 835851469 835851469 940573855 940573855 865101603 1012588306 1012588306 867946636 279163776 279163776 110678850 363495690 363495690 349686678 349686678 46186704 407253184 407253184 269350120 103803048 103803048 394417244 394417244 55048343 517015762 517015762 924453266 924453266 333524012 333524012 328206016 328206016 319070786 445829718 1008637961 1008637961 1044655631 1044655631 1073049804 1073049804 830736483 830736483 866670124 866670124 834666723 834666723 538452577 944252426 944252426 772462497 772462497 611911010 611911010 606157564 737549301 786374405 786374405 756496941 755307536 325800064 325800064 566793075 566793075 274776450 170393876 539492480 539492480 533463209 522455138 911135608 911135608 943770778 943770778 476453627 271714488 271714488 238028862 756023680 836388859 836388859 669176313 338216427 301933047 421663014 866519125 866519125 109054224 818151740 818151740 381214223 561953786 751522693 751522693 405001569 279098146 539266128 539266128 705773634 705773634 1015987434 1015987434 193009691 1002312951 1002312951 830528721 999835889 999835889 735878775 967661248 967661248 940972551 940972551 278785602 303906896 358274730 358274730 323077202 302139160 545657856 546049089 646223040 646223040 686479441 740479245 809320709 809320709 818528720 818528720 445695628 302017714 102189232 119463480 119463480 237148292 593894030 961858215 961858215 971211784 971211784 480325405 679162196 679162196 235744284 1062419712 1062419712 460115382 460115382 894755352 894755352 331434966 331434966 876874684 939553758 939553758 533076110 533076110 562694335 562694335 808192936 808192936 637686868 637686868 612406109 579737866 579737866 516762846 516762846 1031089251 1031089251 877463550 1073692671 1073692671 893657256 879044653 671424557 595970288 138430524 227065968 227065968 197209172 197209172 142832900 167957760 281630016 441185430 441185430 252629040 537844804 537844804 466016120 466016120 476712072 476712072 413881345 846898467 910214079 910214079 1015546039 1015546039 851461179 334497746 915669329 915669329 292555465 133310896 387169224 788813344 788813344 713198160 785456240 785456240 809771138 809771138 239284380 818415168 847891664 1065744387 1065744387 129636216 129636216 83058472 10171968 277034496 277034496 302154794 302154794 252842556 796068864 796068864 544025985 222180013 61259776 243434076 243434076 504814688 504814688 456474222 456474222 447318982 295024596 69520128 192016936 694342432 694342432 575068305 255021104 744658949 744658949 349190276 332199522 505244178 505244178 928574124 928574124 810148995 400056953 776925136 955801828 955801828 1037985507 1037985507 628950003 628950003 142950512 990877744 990877744 940475479 814478403 818062464 822149580 822149580 497033615 305140488 555880858 555880858 945428103 945428103 689310565 689310565 643041945 979501753 979501753 437831190 486574096 520407102 520407102 675283077 839650487 839650487 807668112 1007322293 1007322293 927124497 810339459 686051552 686051552 371206478 447047764 480608280 480608280 313973586 655421985 849055800 849055800 134308178 543651120 543651120 823621242 913354742 913354742 358876084 385882738 385882738 328597562 613417484 613417484 173265555 281405634 297650248 297650248 100454376 840119220 840119220 496475145 432919858 432919858 175161476 171999488 545260340 697303653 697303653 479265866 479265866 473432418 421018714 1055635780 1055635780 951574429 691722021 508204309 492443310 470827174 716721686 716721686 682499397 607719881 701017716 718823921 718823921 655298297 442490536 612725343 794843866 794843866 300810493 645581316 722230005 722230005 690752805 676331520 618672670 896267691 1017679045 1017679045 689987384 689987384 974390135 974390135 646445145 310688843 268455689 943510573 943510573 671138216 1009158282 1009158282 833235462 833235462 149884480 141767556 21444768 482031068 482031068 324873906 324873906 38540400 44566752 299505378 844389488 844389488 802874097 802874097 555145761 520185038 520185038 184799344 690627884 690627884 862752174 862752174 861929491 445161024 184834582 816026626 850783059 936397129 936397129 796265560 542056844 626346826 626346826 52515865 959372816 959372816 520880899 868256784 868256784 862510131 475927338 1048652630 1048652630 328927711 319378336 375915930 682222030 783403403 888677057 888677057 69798148 99388946 99388946 295733226 619283820 619283820 617035977 208545093 331485140 354104114 706808910 706808910 359475060 359475060 470811142 696262702 1003622400 1003622400 802382416 802382416 850445136 850445136 1007200280 1007200280 1053633759 1053633759 481237451 404485638 404485638 159471202 75240764 562826732 1047872600 1047872600 972877575 510319547 842929494 842929494 719750102 719750102 224695623 703932278 880699248 935852283 935852283 287490152 78693192 10634056 27788894 447323036 447323036 469313354 469313354 216242540 216242540 65177332 65177332 826707113 974057517 974057517 776714743 263478848 263478848 703923072 721494069 742417317 742417317 378593421 772285164 772285164 107255049 231014664 231014664 174228500 174228500 168317332 239767956 239767956 180929748 399960022 399960022 400033530 559704440 681679881 681679881 651166425 743473961 743473961 509215903 509215903 373819339 944310352 944310352 271605760 271605760 492904878 492904878 249606752 525554380 525554380 133376086 899754368 899754368 300155371 297795810 483485896 483485896 176674914 239255742 975095977 975095977 419471018 821428729 821428729 864229170 864229170 813377363 729809522 729809522 277874741 76548144 1000420788 1000420788 946169950 946169950 274991235 710419349 710419349 591671670 591671670 1050813840 1050813840 953587350 953587350 742431966 742431966 304925071 523197668 711629213 951931157 951931157 516775190 355846388 578181932 1062941795 1062941795 603841943 939837447 990696999 990696999 978621460 978621460 860152179 860152179 976998018 976998018 134550075 453052420 453052420 425612942 425612942 231741996 231741996 512104542 512104542 700525768 700525768 379068623 311953090 336593944 336593944 1023936464 1023936464 879281882 879281882 710934933 640698321 638446782 638446782 555560481 1019808804 1042088578 1042088578 841822045 437791941 494988708 609304936 609304936 418390676 418390676 312549714 173081542 346096482 346096482 337642378 413568270 413568270 1057064262 1057064262 665445753 968041226 968041226 1037224456 1037224456 969148647 890519789 554746401 549734400 549734400 268883970 604931472 644274585 841388928 841388928 647027080 609234328 609234328 778511557 815011853 940992522 940992522 537966683 953385176 953385176 863711262 863711262 437771441 887709888 944366731 944366731 884996308 884996308 476843406 476843406 274156682 503859232 503859232 667552932 667552932 789943313 789943313 492145190 775995549 775995549 961021095 961021095 730908370 730873856 671586867 671586867 553847393 36053090 554701360 554701360 137602417 757250568 790761789 790761789 842099198 842099198 833063751 1001108839 1010317943 1010317943 857772423 835971809 650178235 268822545 159449841 159449841 966307233 966307233 907317453 983354967 983379474 983379474 429414416 383007976 143033066 1011853960 1011853960 954160358 483269838 184291284 467404110 948189220 948189220 830681187 740593941 399685720 397156892 990920712 1040552751 1040552751 798821948 798821948 761670537 680727040 1019614366 1019614366 231603788 487065632 487065632 353554986 366732136 817501056 817501056 508423326 508423326 583218183 583218183 763377810 763377810 739193949 739193949 738934093 901655274 982856366 982856366 964106692 964106692 633546412 589541728 589541728 946718117 949010644 949010644 989864226 989864226 805307392 981490262 981490262 740946526 811462275 821545664 821545664 511720644 511720644 248198364 952627242 952627242 451562555 702745524 702745524 488072611 336157964 302963730 85008896 973727746 973727746 790490685 380683098 950669064 950669064 426696102 480334368 480334368 284757514 312291008 312291008 270803032 166266308 174712212 1015967410 1045860651 1045860651 383405474 805423336 805423336 739080052 739080052 646591865 646591865 907071624 907071624 810083816 855204953 855204953 455444111 863644231 949295027 949295027 466437632 466437632 290190498 270009858 645404058 645404058 537531393 672939638 672939638 417341203 968892860 968892860 111673459 143143040 604569796 814100809 814100809 552025281 432871573 764178144 807144963 807144963 926550967 926550967 840432147 650170474 859967667 859967667 504153233 362806653 681779131 802264447 858294116 858294116 337937904 228013260 536726944 575221824 575221824 348167495 772096704 772096704 1031950786 1031950786 1050677848 1050677848 344985877 252903604 252903604 876714700 876714700 753442604 234540493 229560576 229560576 19032872 35226148 135282736 135282736 903414044 1006184439 1006184439 929038779 929038779 380118090 678504588 923411696 923411696 105396496 105396496 171509016 171509016 711532624 1005158420 1005158420 811607027 811607027 675024645 243586169 86430484 176433216 176433216 1041442984 1041442984 995498679 894705792 67831051 807612675 807612675 807608579 875181064 875181064 806076419 806076419 970280676 970280676 861163526 861417121 978330113 978330113 814726473 814726473 523727941 960701387 960701387 498272110 857221327 857221327 176498772 321325104 321325104 361696622 361696622 269298690 583820384 780163200 780163200 312546064 312546064 662308516 662308516 1067113981 1067113981 862903731 775560088 823203754 823203754 615523850 615523850 692290289 720926817 720926817 676457291 767219565 906399315 941934626 941934626 882985069 882985069 815124503 332406806 600113716 600113716 307448258 307448258 280044354 239284380 615887984 615887984 674225506 674225506 632624584 632624584 95293833 815254016 815254016 462216252 462216252 613097698 613097698 883538243 883538243 907809297 907809297 848481009 863885057 863885057 1054620268 1054620268 549066561 549066561 363040902 454801078 494903634 494903634 395862518 327350078 44267980 1035644928 1035644928 77598964 31906272 201347076 201347076 134251268 134251268 9437760 285217290 285217290 235017754 420296314 764018708 764018708 522633154 857207956 932783739 932783739 366870985 111622488 583982536 639949129 743307667 743307667 719399899 416829655 46186704 407515840 407515840 269350120 103803048 103803048 440402768 539565590 583481553 583481553 308549179 924453266 937501179 1068304389 1068304389 541590657 328206016 319070786 445829718 958134306 958134306 1044655631 1044655631 776733064 776733064 830736483 830736483 866670124 866670124 834666723 834666723 538452577 470864139 808552110 808552110 772462497 611911010 611911010 606157564 737549301 959187201 959187201 756496941 755307536 303043090 303043090 566793075 566793075 321654066 153017892 774116391 814356798 948047943 948047943 931546067 931546067 943770778 943770778 883085643 883085643 709777365 247730903 756023680 836388859 836388859 669176313 338216427 683055032 683055032 253715005 168821324 109054224 818151740 933007707 933007707 733910316 951768903 951768903 984270673 984270673 706328336 677709332 705773634 705773634 1015987434 1015987434 472524127 1002312951 1002312951 702946438 702946438 166498786 75985316 605182464 605182464 420029478 663442478 663442478 541648482 358274730 468402526 870380217 870380217 979530781 979530781 973099406 973099406 953060952 953060952 809320709 809320709 234904399 445695628 1011265550 1011265550 206990859 119463480 638300249 805872705 805872705 961858215 961858215 771758897 184598580 578665600 679162196 679162196 235744284 1062419712 1062419712 623411761 651200105 651200105 546883137 203948032 203948032 876874684 876874684 562109792 512041004 512041004 327420018 332973644 808192936 950018032 950018032 637686868 612406109 579737866 579737866 223610216 491916360 491916360 340399242 877463550 1073692671 1073692671 854961849 592894743 404752898 153292916 425215186 425215186 227065968 197209172 584718033 1051429171 1051429171 521522609 522105796 612389187 612389187 537844804 724207452 823186025 823186025 297850012 297850012 1044398112 1061208255 1061208255 640680729 640680729 643842400 643842400 334497746 915669329 915669329 656459798 249000462 387169224 387169224 713198160 713198160 785456240 785456240 809771138 888330901 888330901 309642193 847891664 1065744387 1065744387 129636216 129636216 83058472 10171968 277034496 277034496 302154794 774713612 774713612 673846533 266937852 266937852 88754516 61259776 663083798 834225722 834225722 504814688 201438272 403638924 403638924 311387216 72395794 138750336 138750336 37957776 54986784 438634644 985989250 985989250 349190276 332199522 505244178 505244178 928574124 928574124 1064324064 1064324064 1048889439 776925136 654975064 654975064 562771041 391200800 391200800 142950512 990877744 990877744 940475479 272749797 619348274 619348274 541656392 979969441 979969441 996147468 996147468 945428103 945428103 689310565 689310565 643041945 979501753 979501753 437831190 437831190 72369310 329056402 329056402 306196082 356392746 807668112 1007322293 1007322293 927124497 1022621290 1022621290 686051552 241357212 948299847 1041086985 1041086985 313973586 655421985 849055800 849055800 134308178 543651120 543651120 823621242 913354742 913354742 358876084 358876084 25299474 314695706 613417484 613417484 173265555 281405634 297650248 297650248 100454376 840119220 840119220 496475145 489168512 432919858 701518769 701518769 697378162 697378162 1064449505 1064449505 933766439 933766439 495979007 495979007 607394540 738461709 738461709 494078350 494078350 171445012 171445012 168954772 191894656 330537270 701017716 701017716 394609109 466916144 715283256 715283256 794843866 794843866 300810493 645581316 722230005 722230005 690752805 246449440 618672670 896267691 896267691 421377193 689987384 689987384 974390135 974390135 646445145 310688843 272631816 340002954 340002954 415835334 520691266 520691266 833235462 833235462 550816449 550816449 469217799 1067058573 1067058573 970206325 1002446423 1002446423 860762043 965551435 965551435 737501624 673864986 673864986 863009907 863009907 655569465 938979401 938979401 671426565 859925266 859925266 445161024 445161024 673969023 816026626 850783059 936397129 936397129 542056844 542056844 626346826 626346826 52515865 959372816 959372816 520880899 838992581 838992581 449794209 475927338 1048652630 1048652630 914444352 914444352 396361338 544795734 544795734 406871085 853543232 853543232 554789875 91144768 91144768 619283820 619283820 617035977 571018323 834091253 834091253 756089165 756089165 631581628 359475060 470811142 696262702 696262702 546308100 802382416 802382416 514986846 653366542 1007200280 1007200280 1053633759 1053633759 880418755 921316643 921316643 226437290 845226387 845226387 1047872600 1047872600 972877575 510319547 842929494 842929494 660993873 660993873 116424025 219554526 880699248 935852283 935852283 866309395 1032396189 1032396189 881386991 881386991 683495823 627968751 999742071 999742071 479947833 65177332 65177332 30533108 136479752 204133644 215066576 263478848 263478848 703923072 721494069 742417317 742417317 378593421 670608064 962020554 962020554 324047726 324047726 710198161 710198161 503654592 485776010 278972934 350351726 350351726 242529184 246483368 559704440 681679881 681679881 651166425 546873374 546873374 519682036 980342056 980342056 783024856 1064381789 1064381789 488909473 1063264861 1063264861 861979231 941714049 941714049 187869834 527461304 993448766 993448766 852906725 852906725 696406023 772033035 772033035 1026874769 1026874769 419471018 821428729 821428729 864229170 864229170 813377363 784339669 729809522 864162027 903950355 1000420788 1059809436 1059809436 946169950 929593553 475562998 475562998 1071207380 1071207380 1050813840 1050813840 953587350 953587350 742431966 742431966 304925071 523197668 711629213 951931157 951931157 674000956 718064853 718064853 456658477 370547226 822311927 822311927 510839246 510839246 354553091 234395739 57284016 169943572 694231084 694231084 120660113 453052420 453052420 202576408 219546348 537923607 537923607 512104542 661328139 661328139 714605578 949038678 949038678 763226752 973456878 1028161827 1028161827 1063798204 1063798204 1018693583 655540358 655540358 1023411846 1023411846 378537102 1042088578 1042088578 1054015719 1054015719 968897247 807452931 807452931 628654689 628654689 326181810 287470240 316760426 471859590 471859590 413568270 413568270 946076694 946076694 620680594 939181530 939181530 1037224456 1037224456 1027899428 1027899428 738246669 669194660 669194660 305210130 591416886 591416886 837688421 837688421 577424642 609234328 609234328 1046710374 1046710374 581331804 581331804 236812388 953385176 953385176 205022212 205022212 383845402 887709888 944366731 944366731 884996308 884996308 476843406 476843406 312954896 312954896 365431876 667552932 667552932 72686322 127105634 492145190 492145190 679772766 823255587 823255587 226964051 269750832 319166514 319166514 536879828 614916109 624081533 707251573 707251573 757250568 790761789 790761789 906597782 906597782 625088307 554511393 37660449 571805768 835971809 835971809 650178235 178276880 146090820 111748542 966307233 966307233 907317453 983354967 983379474 983379474 454083126 454083126 143033066 1011853960 1011853960 954160358 483269838 184291284 184291284 948189220 948189220 830681187 817115377 863138648 863138648 993506126 1040552751 1040552751 628402957 1060473706 1060473706 680727040 1019614366 1019614366 231603788 487065632 487065632 353554986 353554986 817501056 817501056 508423326 508423326 479429700 345675374 741575562 743793628 743793628 739193949 738934093 562831809 982856366 982856366 695798313 695798313 528553227 589541728 589541728 678398452 678398452 809782985 971074779 971074779 805307392 805307392 182018580 182018580 70738648 212956684 479852608 479852608 983282712 999502455 999502455 890893647 193911924 272957496 272957496 336157964 336157964 640764210 640764210 653617611 909503434 938288440 938288440 950669064 950669064 426696102 1002508573 1002508573 723858293 723858293 283717170 226837376 392542229 640470297 640470297 443717666 507699268 743921920 908528150 908528150 416309364 154801956 252920576 252920576 907071624 907071624 810083816 855204953 855204953 455444111 819477394 819477394 615582105 1026973286 1026973286 354993340 256427306 15468192 28576608 58659094 672939638 672939638 631084020 1046005684 1058269365 1058269365 212812273 604569796 866133312 866133312 552025281 432871573 764178144 802548477 802548477 693482483 840432147 840432147 723288600 755813421 755813421 204262668 285544488 343933404 442499478 442499478 337937904 455683349 957012615 957012615 605920339 579051855 579051855 545461142 955355406 1031950786 1031950786 1050677848 1050677848 682754375 681575173 814877530 814877530 753442604 753442604 373829784 287585558 327877674 327877674 35226148 281036840 365218026 903414044 1006184439 1006184439 729409461 729409461 380118090 380118090 868623784 868623784 744413740 1028672043 1028672043 171509016 439607363 439607363 974259238 974259238 757733928 675024645 243586169 86430484 176433216 176433216 1007945284 1007945284 894705792 894705792 738793520 807612675 807612675 807608579 875181064 875181064 673321221 438966037 940015650 940015650 861163526 806421140 978330113 978330113 948994145 759403404 545271868 960701387 960701387 884541229 884541229 857221327 433062630 1067593789 1067593789 979763316 560465313 560465313 869958038 869958038 448216095 486818500 486818500 662308516 662308516 1067113981 1067113981 862903731 775560088 775560088 138418304 63489264 425520616 481370958 481370958 265147066 179867705 767219565 906399315 941934626 941934626 882985069 887360361 887360361 424741412 424741412 660144231 660144231 512837334 873632450 984871767 984871767 887313164 186908095 806145027 806145027 334487400 334487400 458362064 917310809 917310809 462216252 613097698 613097698 911555483 911555483 364636346 651416256 848481009 863885057 863885057 538307073 170684296 292552098 1011236780 1011236780 542562945 361350251 1022823523 1022823523 934392122 1006449881 1006449881 597950508 916717903 916717903 161906707 941885703 941885703 981483573 981483573 824181027 455346486 455346486 413611380 671557496 671557496 371596365 895414508 895414508 704196599 704196599 845801652 845801652 891854159 891854159 884120390 884120390 416829655 604791685 604791685 407515840 21353562 277063936 333972978 440402768 539565590 583481553 914746832 914746832 879232395 937501179 1068323319 1068323319 1028339265 265524766 549868657 680999493 973277778 973277778 776735901 776735901 915161078 915161078 879704986 431105286 431105286 511189185 683579722 683579722 846423698 846423698 808552110 808552110 745097788 423175974 553935621 606423489 630129876 959187201 959187201 539233575 539233575 268666762 667615870 667615870 511733232 464522754 144966774 1007962112 1007962112 948047943 948047943 931546067 931546067 770594261 608079426 883085643 1063784592 1063784592 247730903 547357136 547357136 713836649 911085009 911085009 841956737 934335865 934335865 548757782 267258340 823129972 933007707 933007707 733910316 951768903 951768903 984270673 984270673 706328336 677709332 552851673 552851673 655430291 655430291 472524127 379853868 619319578 619319578 246602045 243011484 1050101750 1050101750 992202389 420029478 663442478 663442478 541648482 341349986 468402526 870380217 870380217 979530781 979530781 973099406 973099406 953060952 953060952 914791663 609537101 881914061 881914061 1011265550 1011265550 239608473 239608473 638300249 805872705 805872705 708437781 735447875 909926762 956301255 1048020056 1048020056 851532607 851532607 660620368 660620368 623411761 651200105 651200105 546883137 917604005 917604005 784413142 784413142 848499434 848499434 633348249 616562889 671402171 671402171 950018032 950018032 878182536 289440113 520192538 520192538 348653574 348653574 834282016 834282016 1028201922 1028201922 353185067 965733906 990932257 990932257 547423744 425215186 1049148457 1049148457 1057642924 1057642924 1051429171 1051429171 521522609 522105796 819167555 819167555 924720766 924720766 823186025 823186025 621282656 41943184 1044398112 1061208255 1061208255 386998874 488113793 643842400 898647730 898647730 639421001 656459798 656459798 604138396 270110792 659898512 777815809 795481533 795481533 168302780 753959240 888330901 888330901 309642193 445181394 445181394 658899621 658899621 558083878 809481983 891950419 891950419 619521721 625526808 774713612 774713612 739651906 739651906 611981193 423107557 752427817 752427817 834225722 834225722 319016496 371065874 371065874 311387216 345975128 379789658 631842082 1064252847 1064252847 986453462 986453462 985989250 985989250 657116040 951251713 951251713 105694558 34552848 673259781 1064324064 1064324064 1048889439 981392305 373607729 145812463 227132994 391200800 759507117 759507117 566296613 373325990 956905044 956905044 619423312 619423312 541656392 979969441 979969441 996147468 996147468 782576064 304681346 733742668 733742668 1042549023 1042549023 571605311 422347186 553779200 553783329 594023154 594023154 406119170 356392746 618376481 618376481 816387432 876687563 1022621290 1022621290 552486495 509500369 948299847 1041086985 1041086985 312143431 312143431 68162650 6500736 106115736 250343700 250343700 931094752 931094752 250154639 110150232 83908816 296668824 600057985 600057985 538635590 538635590 441072796 635196774 839621081 839621081 527603558 773687418 1064470204 1064470204 273936786 701518769 701518769 697378162 697378162 1064449505 1064449505 933766439 933766439 528605310 495979007 639635512 738461709 738461709 494078350 494078350 275200386 171445012 168954772 191894656 556094496 556094496 540015873 135067913 466916144 715283256 876827171 876827171 589472101 842007315 842007315 836111022 836111022 721175865 709366020 709366020 897458091 897458091 513356908 849212992 849212992 665523803 749606187 749606187 738711876 738711876 539848323 440585400 420391095 711138631 711138631 879061896 879061896 554797130 591725722 882119370 1067058573 1067058573 970206325 1002446423 1002446423 1036653571 1036653571 965551435 737501624 769781889 769781889 863009907 863009907 655569465 938979401 938979401 630260701 859925266 859925266 321703218 321703218 673969023 673969023 646207282 857745413 857745413 611157121 611157121 809802704 809802704 539318580 841222449 841222449 642470897 838992581 838992581 449794209 449794209 135456233 64467841 914444352 914444352 396361338 810271940 810271940 406871085 853543232 853543232 554789875 91144768 381161933 980907255 980907255 838064487 757260510 834091253 834091253 756089165 756089165 631581628 1049715803 1049715803 968024827 1006798163 1006798163 738375616 738375616 678568349 678568349 674944341 648205320 820412869 903879347 903879347 1031524183 1031524183 622349931 845226387 1017523896 1017523896 713636797 0 0 448103025 929139687 929139687 890501921 906104859 906104859 780795193 780795193 683320264 866309395 1032396189 1032396189 881386991 926182202 926182202 928878622 999742071 999742071 647698003 525945844 994586940 994586940 897241523 798318659 730931829 734003445 738214053 738214053 776013917 1071980661 1071980661 882903948 670608064 962020554 962020554 432079760 376677210 710198161 710198161 503654592 485776010 278972934 350351726 350351726 316703232 316703232 246483368 970135485 970135485 955946212 1051452943 1051452943 519682036 980342056 980342056 783024856 1064381789 1064381789 504376614 1063264861 1063264861 861979231 941714049 941714049 187869834 527461304 993448766 993448766 852906725 852906725 876777568 876777568 826413219 1026874769 1026874769 369793822 210898550 704708611 704708611 683675669 784339669 876773608 876773608 864162027 903950355 903950355 1059809436 1059809436 1038373918 1038373918 475562998 475562998 1071207380 1071207380 582426692 582426692 279882072 234077600 945310366 945310366 287757091 151674170 269224962 269224962 137148036 674035352 718064853 1043086592 1046884767 1046884767 822311927 822311927 510839246 510839246 354553091 856903410 856903410 169943572 704643221 704643221 880840736 897765483 897765483 202576408 798149182 798149182 537923607 422253334 661328139 661328139 714605578 949038678 949038678 945809028 973456878 1028161827 1028161827 1063798204 1063798204 1018693583 655540358 655540358 1023411846 1023411846 614466380 534583263 622700851 1054015719 1054015719 968897247 807452931 807452931 628654689 628654689 475534156 475534156 316760426 471859590 471859590 496142888 496142888 946076694 946076694 577506705 960114566 960114566 810817539 810817539 1027899428 1027899428 738246669 1055340554 1055340554 600133875 600133875 618365515 867178496 880332283 880332283 631691625 723223497 1046710374 1046710374 581331804 581331804 236812388 885428076 885428076 205022212 205022212 264798664 264798664 241486236 239586244 782942044 1053414622 1053414622 345023365 1022035281 1022035281 279308610 853460622 853460622 991814591 991814591 850946509 682361626 500171534 500171534 302515965 696713809 696713809 1013345271 1013345271 536879828 614916109 624081533 707251573 864318812 943332959 943332959 454482486 906597782 906597782 625088307 554511393 37660449 662725408 662725408 626106872 464028289 464028289 625604876 768030957 768030957 672072936 94448702 990145894 990145894 873455647 454083126 454083126 723433652 723433652 632887677 632887677 202744602 202744602 653450227 653450227 707667237 831907305 831907305 863138648 863138648 993506126 993506126 805515267 473025684 1060473706 1060473706 490807470 490807470 392167866 392167866 423564868 459017986 459017986 310590038 310590038 233334749 442257820 985813343 985813343 897454300 980129576 980129576 743793628 673593606 673593606 1020197732 1020197732 740692010 564398433 169455684 251867196 626231208 626231208 678398452 678398452 809782985 971074779 971074779 603753792 603753792 182018580 182018580 70738648 212956684 479852608 479852608 983282712 999502455 999502455 890893647 302673766 485188280 508148873 589512329 762837933 793597712 793597712 653617611 909503434 938288440 938288440 1035475662 1035475662 560864673 1002508573 1002508573 723858293 723858293 283717170 360849688 392542229 640470297 640470297 443717666 507699268 743921920 908528150 908528150 416309364 154801956 154801956 102240516 554218609 940233898 940233898 413872710 683132014 691437021 733103541 1061594378 1061594378 1026973286 1026973286 354993340 799673680 799673680 283912243 627575062 627575062 789848400 841031537 1046005684 1058269365 1058269365 1072177185 1072177185 866133312 866133312 1049218164 1049218164 576743289 618010633 1001478383 1001478383 75718937 8462400 723288600 755813421 765191540 765191540 621356073 960029123 970191591 970191591 622312112 477800682 957012615 957012615 605920339 579051855 579051855 625593268 955355406 955355406 445814666 941625856 941625856 802903614 688600101 814877530 814877530 649668441 757825601 859013210 859013210 723706913 723706913 813957156 813957156 507789360 759026380 934280571 937426703 1032010741 1032010741 615124944 615124944 868623784 868623784 744413740 1028672043 1028672043 152323019 676895873 676895873 974259238 974259238 905080523 905080523 882809155 882809155 753987026 753987026 1007945284 1007945284 881593419 309403922 738793520 738793520 629486622 379793482 404816217 673321221 673321221 438966037 811795234 811795234 589176369 589176369 185154053 948994145 948994145 570516043 639738168 639738168 829949859 1061238446 1061238446 805380099 805380099 1067593789 1067593789 979763316 560465313 560465313 869958038 869958038 252468984 486818500 486818500 202774622 202762996 156238500 89252376 216342620 216342620 205791424 138418304 241747608 425520616 481370958 481370958 265147066 730171633 730171633 533250092 911214748 1014012760 1014012760 887360361 887360361 424741412 424741412 660144231 660144231 512837334 873632450 984871767 984871767 887313164 478900248 806145027 806145027 339230896 334487400 458362064 917310809 917310809 250575580 250575580 179248480 911555483 911555483 539508624 651416256 651416256 848729488 853327427 853327427 577408595 292552098 1011236780 1011236780 542562945 361350251 1022823523 1022823523 934392122 1006449881 1006449881 597950508 916717903 952144010 952144010 941885703 941885703 981483573 981483573 824181027 455346486 496245828 496245828 671557496 671557496 371596365 895414508 895414508 704196599 704196599 845801652 845801652 891854159 891854159 884120390 884120390 316724173 604791685 676610056 676610056 612594248 810784593 913188787 913188787 664051322 863079312 914746832 914746832 879232395 661719100 1068323319 1068323319 1028339265 265524766 549868657 680999493 973277778 973277778 776735901 776735901 915161078 915161078 879704986 421771715 288871325 511189185 1018906080 1018906080 900871481 846423698 744031785 745097788 745097788 863504307 863504307 742391964 742391964 630129876 265633419 419900618 419900618 823659555 823659555 822871587 464522754 1041238127 1041238127 1007962112 1007962112 780411373 780411373 430246371 770594261 770594261 807700952 871110576 1063784592 1063784592 724045376 690225781 547357136 788829228 952901025 952901025 841956737 934335865 934335865 548757782 267258340 823129972 823129972 410269756 410269756 237688092 867617204 867617204 1042364791 1042364791 336803382 552851673 552851673 655430291 655430291 515263041 504810303 619319578 619319578 495945117 371060250 1050101750 1050101750 992202389 171822046 142655556 478183470 478183470 911426011 911426011 773181520 773181520 681956504 400577857 400577857 348969810 348969810 914791663 914791663 709286611 881914061 881914061 436807786 436807786 239608473 740319232 740319232 637662064 504561672 1020541462 1020541462 909926762 956301255 1048020056 1048020056 851532607 851532607 553393864 730861920 730861920 141336816 159777856 479368168 917604005 917604005 784413142 784413142 848499434 848499434 633348249 964584009 964584009 671402171 749585155 878182536 878182536 289440113 520192538 520192538 402662406 402662406 834282016 834282016 1028201922 1028201922 353185067 965733906 990932257 990932257 547423744 107204808 1049148457 1049148457 1057642924 1057642924 516991926 218290124 218290124 534790180 819167555 819167555 924720766 924720766 614473250 621282656 621282656 447874072 738271253 738271253 332431984 386998874 488113793 720635897 898647730 898647730 639421001 635738220 821185478 821185478 771921104 1025512960 1025512960 795481533 795481533 22420128 427327780 427327780 186395266 265330832 445181394 445181394 658899621 658899621 558083878 809481983 891950419 891950419 619521721 625526808 625526808 486049576 739651906 739651906 611981193 432759072 752427817 752427817 722468469 774814482 774814482 412291391 371065874 93564976 345975128 807871352 807871352 1064252847 1064252847 986453462 986453462 619056098 228395745 657116040 951251713 951251713 473666134 408999396 673259781 790688519 790688519 981392305 981392305 373607729 785393898 897396651 897396651 759507117 759507117 893947952 893947952 956905044 956905044 880697731 932007899 932007899 506735941 992224198 992224198 782576064 948965956 948965956 805441539 733742668 1042549023 1042549023 914542683 800506786 800506786 553783329 815810529 815810529 416555714 322165268 618376481 618376481 816387432 876687563 1017255375 1017255375 552486495 509500369 354240038 295419922 603993088 637728543 637728543 440132633 6500736 106115736 250343700 250343700 931094752 931094752 544615003 649400603 649400603 620945536 600057985 600057985 538635590 538635590 441072796 635196774 839621081 839621081 527603558 773687418 1064470204 1064470204 510970782 517165844 517165844 497580014 497580014 515097674 529720532 529720532 528605310 809079468 809079468 639635512 673066643 673066643 371596057 275200386 275200386 676465300 676465300 577896593 556094496 556094496 540015873 135067913 419555363 635085261 876827171 876827171 589472101 842007315 842007315 836111022 836111022 721175865 709366020 709366020 897458091 897458091 769165900 849212992 849212992 665523803 749606187 749606187 738711876 738711876 539848323 440585400 420391095 711138631 711138631 879061896 879061896 554797130 591725722 882119370 882119370 362220448 545858304 546766947 546766947 1036653571 1036653571 961751944 656491309 769781889 769781889 600955086 106111168 79696528 474309628 769688256 769688256 632292077 643338168 643338168 208504512 223214409 320353641 1016234584 1016234584 306399169 611157121 611157121 809802704 809802704 539318580 841222449 841222449 642470897 772369044 772369044 159601372 209442120 209442120 246114264 606307353 606307353 341311610 810271940 810271940 117572768 385078272 385078272 412563494 489230882 489230882 980907255 980907255 838064487 757260510 323885606 323885606 107348998 233093992 288704021 1049715803 1049715803 968024827 1006798163 1006798163 738375616 738375616 678568349 678568349 674944341 648205320 820412869 903879347 903879347 1031524183 1031524183 622349931 829631461 1017523896 1017523896 445188134 109329941 1008550030 1008550030 1008244800 929139687 890501921 906104859 906104859 806101296 1041816684 1041816684 621838859 405404948 405404948 278987384 926182202 926182202 928878622 928878622 647698003 647698003 525945844 994586940 994586940 897241523 798318659 730931829 734003445 738214053 738214053 776013917 1071980661 1071980661 882903948 518269658 443957832 443957832 432079760 376677210 120709898 268747904 268747904 182346754 281316436 281316436 178785490 316703232 316703232 220832778 970135485 970135485 955946212 1051452943 1051452943 275829413 275829413 693970352 693970352 43068965 504376614 504376614 266404382 342896892 877168680 932213222 932213222 475097910 115733136 1059445032 1059445032 940782087 906166812 876777568 876777568 826413219 74322352 726887072 744127920 744127920 513351236 513351236 655893552 709002798 876773608 876773608 734089434 734089434 352576352 406369406 406369406 1038373918 1038373918 470422015 344900862 906003534 906003534 582426692 582426692 466215102 466215102 945310366 1050285663 1050285663 854422412 825017475 825017475 691162674 674035352 674035352 1043086592 1046884767 1046884767 545233679 304874770 304874770 304622866 421365798 856903410 856903410 293634480 868294762 880877643 977395813 977395813 897765483 970447438 970447438 798149182 416248053 576465967 1061186494 1061186494 915923230 915923230 945809028 945809028 851145032 851145032 1029499178 1029499178 887263705 436240386 664813963 730861728 730861728 614466380 614466380 534583263 622700851 1008821676 1008821676 430187044 430187044 140534820 140534820 21681312 858795123 858795123 544760624 678595267 950457061 1060854128 1060854128 766832678 789713469 789713469 960114566 960114566 309331842 354976424 1017299366 1017299366 922820667 1055340554 1055340554 600133875 600133875 618365515 867178496 880332283 880332283 631691625 723223497 723223497 420808693 287651942 587333732 587333732 390409996 392167866 392167866 308808412 308808412 273714316 239586244 540513496 540513496 1053414622 1053414622 973616214 1022035281 1022035281 288457818 853460622 853460622 991814591 991814591 850946509 682361626 500171534 500171534 610221156 1003717325 1003717325 1013345271 1013345271 488907550 412099296 156657874 392173596 864318812 943332959 943332959 251922492 251922492 1006639114 1006639114 822307853 429404523 662725408 662725408 555769929 614481954 614481954 625604876 768030957 768030957 672072936 956904802 990145894 990145894 873455647 436776965 487103534 723433652 979948209 979948209 858737828 202744602 202744602 653450227 653450227 707667237 831907305 831907305 808024692 572707089 873217032 873217032 805515267 722391462 991304247 991304247 607439625 829685900 829685900 780791553 789702701 789702701 459017986 877402900 877402900 442206298 442257820 985813343 985813343 897454300 980129576 1036087469 1036087469 812856195 306632850 1020197732 1020197732 74844556 704682372 704682372 269484546 626231208 716912469 716912469 448475048 448475048 586000672 586000672 603753792 603753792 341098568 415171264 415171264 344259918 510650516 510650516 510329502 510329502 508565424 508565424 302673766 485188280 508148873 589512329 762837933 793597712 793597712 13697664 55657088 62939824 131609464 1035475662 1035475662 727262901 504632768 504632768 73534408 854338432 854338432 360849688 378552352 378552352 373592274 394198336 394198336 818464322 840958227 918731881 918731881 78726208 78726208 67740424 554218609 940233898 940233898 413872710 683132014 691437021 733103541 1061594378 1061594378 908670920 908670920 273104310 799673680 799673680 283912243 627575062 627575062 789848400 841031537 841031537 332076162 542179400 1072177185 1072177185 673777150 595945539 1049218164 1049218164 913115045 618010633 1001478383 1001478383 642183810 642183810 590661715 590661715 881485900 881485900 736691426 960029123 970191591 970191591 622312112 477800682 391921172 508788932 508788932 427395046 427395046 625593268 752546697 945472333 945472333 678552127 802903614 802903614 688600101 335059571 649668441 649668441 757825601 859013210 859013210 723706913 723706913 1057332270 1057332270 956508166 759026380 934280571 937426703 1032010741 1032010741 615124944 615124944 430236250 430236250 355587460 308945430 410146060 472064014 676895873 676895873 565724032 754664591 905080523 905080523 882809155 882809155 753987026 753987026 672474653 577427196 309403922 309403922 413336082 413336082 303051078 0 444731396 539105617 842374418 842374418 844615184 844615184 542590663 969994960 969994960 773391328 773391328 514255080 639738168 639738168 505915427 1061238446 1061238446 805380099 805380099 578822226 388173908 481439078 481439078 121176952 455618126 455618126 439919858 400908192 184130854 345009988 345009988 360776288 360776288 212125952 175383552 175383552 160694384 241747608 376219268 435514370 435514370 349759412 730171633 730171633 419437622 708057476 1014012760 1014012760 677574072 800785351 800785351 333483483 311049716 655938902 723141055 723141055 544979798 419586252 478900248 478900248 387690580 339230896 339230896 308842458 241209890 257945524 257945524 250575580 250575580 145050584 84935208 880068032 880068032 898513883 898513883 848729488 853327427 853327427 577408595 907290752 907290752 552182928 552182928 46161921 137160084 137160084 94801444 183994828 189071712 189071712 293912694 952144010 952144010 596693114 596693114 372265824 372265824 352456746 446957910 496245828 496245828 264118140 252013128 252013128 201901068 201901068 438703218 826802566 826802566 683677828 987649476 987649476 842320659 142270359 394623194 823629231 823629231 839240196 839240196 810784593 913188787 913188787 664051322 863079312 863079312 874342923 874342923 661719100 501596654 434518064 100938336 51441776 54915776 60168816 965351960 965351960 418789698 418789698 213374953 213374953 900539948 900539948 509975908 902059492 1018906080 1018906080 900871481 424286082 528102297 906221469 906221469 863504307 863504307 742391964 742391964 577505565 577505565 559291752 660999402 823659555 827404403 827404403 1011488743 1041238127 1041238127 699605750 707266076 707266076 322961586 430246371 686113264 705028483 807700952 807700952 681196152 724045376 724045376 690225781 326243042 788829228 952901025 952901025 241866987 678946576 678946576 260592553 126376008 126376008 111687036 437900716 437900716 237688092 237688092 811040564 1042364791 1042364791 997585762 997585762 176017331 370674199 616254040 773319484 773319484 671138113 795102544 795102544 371060250 551605811 551605811 171822046 671401989 671401989 910231227 910231227 911426011 911426011 773181520 773181520 681956504 400577857 400577857 345280346 345280346 825423495 825423495 709286611 709286611 579205269 718074768 718074768 410758978 740319232 740319232 585472349 765669741 1020541462 1020541462 813312253 637375902 619572681 233226549 588072844 588072844 662827672 730861920 730861920 728711492 610404072 479368168 510907598 510907598 390298650 380107098 380107098 286013388 197581300 964584009 964584009 506310218 749585155 749585155 231302762 479199822 538214540 538214540 402662406 402662406 784535704 784535704 162739520 801902076 801902076 673873968 673873968 180120369 107204808 242828352 242828352 322233566 322233566 516991926 516991926 218290124 218290124 534790180 534790180 495232192 495232192 256972500 256972500 329930264 447874072 447874072 44573840 122684592 122684592 114894584 107029344 720635897 720635897 608963853 635738220 635738220 821185478 821185478 771921104 1025512960 1025512960 558767746 822482848 863507499 863507499 604506674 186395266 265330832 265330832 73986652 135510032 202897932 468074834 468074834 89203368 326117674 326117674 239486088 239486088 486049576 486049576 414852636 432759072 432759072 731533360 731533360 297660258 774814482 774814482 412291391 244262484 84217384 377553152 807871352 807871352 808136019 816590092 816590092 593703308 331556065 292559562 292559562 217449960 473666134 476629270 476629270 467815926 468092182 468092182 430464976 268910896 402991110 785393898 897396651 897396651 180101879 856031828 893947952 918502507 1023908118 1023908118 880697731 1025770290 1025770290 692661072 992224198 992224198 349505746 948965956 948965956 805441539 599919768 667831458 914542683 914542683 800506786 800506786 537045105 815810529 815810529 416555714 296224098 742952968 742952968 1019368449 1019368449 1017255375 1017255375 966826147 435551199 797463647 947968631 947968631 806921494 1061799680 1061799680 666189128 666189128 882334465 884398923 1018135133 1018135133 973409358 649400603 649400603 620945536 354502920 100080152 322190096 322190096 271788906 384227152 384227152 90920914 301528746 301528746 330924146 330924146 510970782 510970782 235403804 289545606 289545606 535264410 535264410 449489094 449489094 809079468 809079468 600469761 673066643 673066643 309648146 593316787 593316787 676465300 819860689 819860689 734791874 445961203 106972234 271698468 704270091 704270091 743840397 743840397 475865218 475865218 770857416 770857416 650157020 650157020 765593080 765593080 586769205 769165900 769165900 292794674 292794674 487273518 580994192 580994192 513114881 147704080 272764336 908245084 908245084 563010657 601172721 601172721 561488890 333312546 871059624 871059624 40233360 44343488 545858304 545858304 542523073 538055169 961751944 961751944 419696744 470046748 470046748 436295860 368428274 678060329 678060329 769688256 769688256 632292077 643338168 643338168 309747624 223214409 320353641 1016234584 1016234584 784745684 217988181 208616844 99779416 99779416 120307076 120307076 207469700 262298176 267666432 267666432 160918796 209442120 209442120 246114264 246114264 341311610 341311610 407957984 407957984 117572768 44245056 210373934 412563494 489230882 489230882 443423052 236306584 236306584 181547460 181547460 166993468 256378044 256378044 135266944 218628404 218628404 186769936 186769936 114524920 114524920 165835752 233894340 233894340 154288324 74477408 253068004 253068004 187175968 187175968 64 8388672 646054272 646054272 236192847 236192847 285265936 1008550030 1008550030 1008244800 357875946 383893865 851566803 851566803 806101296 1041816684 1041816684 464495121 405404948 405404948 109682688 109682688 8646720 101867764 224403644 260105636 264369136 264369136 166894132 199090336 199090336 171067652 162808660 218184016 218184016 137464800 151109952 151109952 90449960 90449960 90245504 410452612 410452612 159783012 412539570 412539570 307550342 268747904 182346754 398155230 468289096 468289096 284813250 390746376 496669004 496669004 167248032 132120768 132120768 54117376 53551920 195638884 195638884 219288028 409089124 409089124 314901246 225632152 185150770 877168680 932213222 932213222 475097910 486920744 1059445032 1059445032 940782087 906166812 759370429 172089492 172089492 162632548 726887072 744127920 744127920 225521708 195302632 605719936 709002798 709002798 154633824 218650388 467611576 467611576 406369406 406369406 954823718 954823718 885662614 885662614 906003534 906003534 747815952 747815952 466215102 466215102 839390724 1050285663 1050285663 945556866 945556866 825017475 691162674 671600769 671600769 262618493 790835517 790835517 1028258752 1028258752 519365598 519365598 528789290 884810731 884810731 928532123 928532123 880877643 977395813 977395813 658579641 970447438 970447438 282216542 478623822 576465967 1061186494 1061186494 915923230 915923230 648009754 648009754 851145032 851145032 1029499178 1029499178 414689351 106595323 664813963 730861728 730861728 555880737 563875425 853445032 853445032 86530400 86530400 94538272 94538272 127567472 127567472 106136064 858795123 858795123 544760624 678595267 950457061 1060854128 1060854128 766832678 789713469 789713469 871657954 871657954 112512840 162160320 1017299366 1017299366 922820667 922820667 466430747 452536278 46422272 28231792 21005408 94372640 123998594 347085770 498795726 498795726 607215405 607215405 587333732 587333732 584820196 584820196 584938708 584938708 613485505 613485505 201375756 584905941 584905941 170468628 170468628 973616214 973616214 614924489 288457818 288457818 279649958 756662719 756662719 613445633 613445633 953003247 953003247 865118849 1003717325 1003717325 781906668 622143060 488907550 630296617 630296617 744907326 763525158 763525158 747321875 251922492 251922492 1006639114 1006639114 822307853 429404523 343410790 343410790 417656059 614481954 920858887 920858887 1013258246 1013258246 968579008 968579008 956904802 541947617 525324431 432662736 487103534 691053988 979948209 979948209 858737828 16778272 27309312 27309312 25949280 18870592 18316064 25198688 572686336 572707089 572707089 222254604 722391462 722391462 991304247 991304247 607439625 829685900 829685900 780791553 789702701 789702701 817918018 951812563 951812563 442206298 442206298 313001298 313001298 290339402 700111516 1036087469 1036087469 812856195 306632850 426789168 426789168 415668508 704682372 1005141847 1005141847 673635696 722131505 722131505 772810131 809754817 919425273 919425273 828168337 916528217 916528217 875442368 875442368 872028147 631062288 510650516 510329502 510329502 508565424 508565424 256573468 256573468 222484416 45274192 5977728 38430848 377742785 912922011 912922011 951493806 951493806 578545364 759838222 759838222 777182905 1020544000 1020544000 919377289 854338432 420078630 427985456 427985456 373592274 394198336 985190375 985190375 840958227 918731881 918731881 660223033 89751632 81314536 80864968 163894420 163894420 59645040 48915456 136120996 544377329 732682421 794129904 794129904 661000505 83333333 696715272 1067988719 1067988719 991093598 991093598 381032062 697389646 697389646 346231630 762982716 772342945 772342945 276833387 273531085 915194924 915194924 913115045 466101285 466101285 810159616 810159616 847694994 847694994 590661715 881485900 881485900 736691426 297809088 29556768 268242198 439630786 455610526 515910760 515910760 419949120 419949120 344039872 975779352 975779352 1018185019 1018185019 931345671 807929091 398680329 371331354 335059571 361583033 361583033 346555573 513877089 513877089 579567713 579567713 1057332270 1057332270 956508166 529844244 328853106 328853106 192980486 449482958 449482958 293668968 430236250 430236250 355587460 308945430 410146060 503522872 509768080 509768080 268174392 216851976 296436928 494614446 494614446 499279306 499279306 424536090 396213064 185279984 200488820 200488820 413336082 413336082 303051078 45353280 444731396 681383504 842374418 842374418 1012509701 1013271294 1013271294 969994960 969994960 717919012 717919012 877351296 877351296 753452493 648053908 528751558 528751558 60368496 60368496 211362850 305801038 481439078 481439078 121176952 488648212 488648212 503343652 503343652 207461896 345009988 345009988 360776288 360776288 212125952 115722564 16804088 160694384 192203004 245631324 245631324 349759412 349759412 820779424 831132771 831132771 197780724 680189335 680189335 677574072 800785351 800785351 333483483 311049716 655938902 723141055 723141055 544979798 416619764 416619764 218322434 19399968 56769280 56769280 51185968 141927056 141927056 82515052 83328664 402584848 402584848 376180122 880068032 880068032 898513883 898513883 369033787 303301552 336284440 369100042 907290752 907290752 552182928 552182928 46161921 44159424 43525248 94801444 183994828 222482656 222482656 98582688 216716428 923452997 923452997 761175358 703256037 312883226 312883226 510056862 510056862 205146516 796659360 796659360 714153952 220529256 201901068 438703218 826802566 826802566 734009476 1045229801 1045229801 842320659 623766825 623766825 823629231 838910720 839240196 839240196 437346327 512512598 705101154 705101154 719992934 719992934 588144001 17776773 293863616 398871156 398871156 362501112 895368791 895368791 426035622 426035622 517861086 990401092 1032860390 1032860390 404959494 900539948 900539948 509975908 902059492 902059492 679513514 660897814 687915045 687915045 906221469 906221469 831049619 973428066 973428066 388729885 577505565 577505565 559291752 808005712 808005712 827404403 827404403 1011488743 1011488743 699605750 699605750 761807240 761807240 643843478 643843478 686113264 686113264 33554448 33554448 681196152 681196152 341514018 851713828 969673659 969673659 315888218 321180616 321180616 678946576 678946576 260592553 446189102 446189102 921925370 921925370 914093979 826039866 826039866 559413921 792601845 814339429 1015279695 1015279695 176017331 214793320 616254040 773319484 773319484 671138113 795102544 795102544 167895060 167895060 198995792 198995792 671401989 898695320 910231227 910231227 334570482 297196386 325341904 325341904 48406384 48406384 60703264 60703264 151295072 838976364 838976364 278144064 278144064 935365136 935365136 718074768 410758978 689185680 689185680 541338101 765669741 864172295 864172295 813312253 637375902 619572681 92348520 108664728 561113052 662827672 662827672 728711492 728711492 610404072 215783016 606114857 606114857 122065640 891836223 891836223 419205510 424677540 424677540 97648748 806866336 806866336 742963587 689277613 479199822 538214540 814593256 893835435 893835435 968976420 968976420 162739520 801902076 801902076 61583920 61583920 173450964 173450964 242828352 242828352 241458780 241458780 173103612 210805672 526977564 526977564 124003736 124003736 95161704 129370480 129370480 76615960 25867008 174653780 174653780 77594768 122684592 122684592 114894584 107029344 728330224 728330224 100712472 100712472 69206280 651559896 651559896 116398809 815666688 815666688 577639840 822482848 992220074 992220074 604506674 549775784 552616640 552616640 84435168 84435168 32730816 34396624 34396624 20330944 72867936 72867936 85119120 119741952 119741952 109947424 128264568 128264568 576735026 576735026 321869683 289165600 564666368 689215841 689215841 689164405 404146958 404146958 934928510 934928510 808136019 824199975 824199975 593703308 331556065 972766532 972766532 262408572 472515400 476629270 476629270 440703952 468092182 468092182 468064448 503447862 503447862 512823414 512823414 952232014 952232014 856031828 881647763 918502507 1023908118 1023908118 337200131 1025770290 1025770290 692661072 692661072 671289365 672699686 672699686 827591331 827591331 599919768 949766733 949766733 756684349 692751394 692751394 587310613 812286980 812286980 626998282 694471077 742952968 742952968 1019368449 1019368449 880939083 966826147 966826147 612579682 797463647 947968631 947968631 806921494 1061799680 1061799680 666189128 666189128 882334465 884398923 1018135133 1018135133 973409358 312699080 292891554 354502920 354502920 302217664 371729816 371729816 96994536 96994536 95496064 92275208 391664320 391664320 330924146 353374728 353374728 285347874 235403804 289545606 289545606 535264410 535264410 449489094 449489094 148998608 174553252 556117488 556117488 832776200 832776200 593316787 593316787 580190720 819860689 819860689 734791874 445961203 339947658 893125966 893125966 704270091 743840397 813042756 813042756 475865218 784076904 784076904 650157020 650157020 765593080 765593080 693108832 586769205 562607840 292794674 292794674 487273518 794391444 794391444 610353721 610353721 272764336 908245084 908245084 563010657 516383935 113320152 230652996 230652996 871059624 946061577 946061577 839432690 839432690 59507074 280828348 433909998 433909998 1032609409 1032609409 890326642 1006868594 1006868594 368428274 678060329 678060329 392292837 1000407280 1000407280 796018829 796018829 309747624 190453428 124555292 202513152 784745684 784745684 217988181 208616844 177885552 177885552 51533712 52613424 236858420 236858420 267666432 267666432 160918796 46991168 46991168 117117848 117117848 108148696 105780684 148249284 148249284 168368452 168368452 44040528 44040528 110166048 241657216 241657216 41096064 141372180 181547460 181547460 166993468 256378044 256378044 119048120 218628404 218628404 168468960 143303220 143303220 195597372 195597372 100712488 178381056 178381056 74477408 253068004 253068004 1056422341 1056422341 831935073 916568463 916568463 669514309 669514309 856232574 941106737 941106737 274388194 274388194 27108416 383893865 851566803 851566803 730007803 680800570 680800570 339090186 339090186 286275944 109682688 612913232 781419145 781419145 776012440 85534224 264369136 264369136 166894132 199090336 199090336 171067652 162808660 77669180 144765728 144765728 94677184 94677184 90449960 137560258 416420550 416420550 416420550 494928878 494928878 412539570 307550342 252806312 301651938 534428352 534428352 468289096 284813250 525006156 525006156 496669004 107008136 273171601 273171601 323035314 323035314 665678459 665678459 653601753 653601753 409089124 873340539 873340539 109849690 721056584 721056584 1036597520 1036597520 955914183 486920744 103944984 227746125 748761708 748761708 172089492 172089492 182660472 222960268 682820070 1045899822 1045899822 434117754 605719936 605719936 593654567 593654567 218650388 467611576 467611576 271587208 364645960 550111430 1033421509 1033421509 885662614 479774286 483017677 747815952 747815952 713154645 713154645 542319054 951113541 951113541 945556866 945556866 423018643 428105825 671600769 671600769 300491642 790835517 790835517 1028258752 1028258752 650481458 875160155 875160155 884810731 884810731 928532123 928532123 845399602 701620388 501473964 920468701 920468701 688858204 880485573 880485573 698939689 698939689 274041130 21113472 21113472 84144332 599037763 599037763 887027593 948271942 984009691 984009691 600968063 841089249 841089249 696256164 861932454 861932454 853445032 853445032 366306274 364590704 94538272 94538272 127567472 127567472 106136064 52894240 275929824 291586656 291586656 284287938 466437988 466437988 215008708 479278868 479278868 245567988 407507136 411567174 411570374 411570374 235409441 235409441 168184125 404522758 826016039 826016039 28231792 89718920 126886248 126886248 76546632 171456476 264514008 607215405 607215405 181015764 181015764 584820196 584820196 584938708 584938708 613485505 613485505 243542680 584905941 609200005 684719301 684719301 713070789 713070789 671162373 165005301 1005887752 1005887752 756662719 756662719 613445633 696555584 953003247 953003247 865118849 788833961 781906668 781906668 622143060 490912280 630296617 630296617 744907326 744907326 747321875 747321875 739578614 810821987 866575261 866575261 863028147 392335881 134505673 228928380 417656059 417656059 920858887 920858887 1013258246 1015884879 1015884879 968579008 835254519 1043100168 1043100168 89008374 465902760 465902760 504052688 504052688 146673046 419761456 419761456 223222956 523475048 523475048 237594748 237594748 29566012 76219432 293945088 339053898 557104936 557104936 368169122 368169122 225899276 225899276 352929356 449312982 449312982 991617610 991617610 951812563 951812563 778188758 941723738 941723738 563904138 909847199 909847199 1042442122 1042442122 388498746 257500038 742085888 742085888 450084747 456503330 1005141847 1005141847 673635696 722131505 722131505 772810131 809754817 919425273 919425273 828168337 916528217 916528217 875442368 875442368 872028147 631062288 375919808 41419808 41419808 132551400 394541458 394541458 48826752 375575250 375575250 128993032 52265496 377742785 912922011 912922011 951493806 951493806 877889088 897671383 897671383 777182905 1020544000 1020544000 919377289 254664692 420078630 427985456 427985456 295259944 404165704 985190375 985190375 659312192 667992825 667992825 660223033 89751632 81314536 80864968 130733072 130733072 127572088 127572088 82661096 148275380 732682421 732682421 775975424 775975424 131381381 696715272 1067988719 1067988719 991093598 991093598 554976832 307270603 593908401 593908401 762982716 772342945 772342945 276833387 654362794 915194924 915194924 910723150 831730275 466101285 810159616 810159616 847694994 847694994 42063953 992892162 992892162 545928614 828711367 828711367 268242198 541001837 541001837 515910760 575749041 575749041 419949120 720421845 975779352 975779352 1018185019 1018185019 931345671 807929091 238752020 771817669 771817669 419110207 246773555 31642080 312560498 598592816 598592816 295783427 41964624 277266432 277266432 20993600 466871780 466871780 330084896 330084896 265473708 477143132 477143132 93358756 650459687 650459687 141182068 882705568 882705568 1011254447 1011254447 802119373 898085088 898085088 856470724 856470724 499279306 424536090 396213064 252715904 252715904 200488820 849943040 849943040 8652864 45353280 45353280 681383504 681383504 235505680 1012509701 1013271294 1013271294 309785392 539551718 702559360 702559360 877351296 984298839 984298839 648053908 581766470 986655098 986655098 845677971 547946592 188221236 188221236 187839300 59445872 488648212 488648212 503343652 503343652 207461896 207461896 237767964 237767964 118621688 79700176 275075156 335985754 403656186 403656186 262773130 44265728 44265728 23220448 820779424 831132771 831132771 835308527 874531808 874531808 226891884 143709248 135927300 111885862 531893118 531893118 495198840 94445928 57304040 282451184 282451184 111272728 90565032 100706736 100706736 51185968 141927056 209312512 209312512 96534944 402584848 402584848 376180122 844374336 844374336 659595728 659595728 65388841 36177168 36177168 56573616 577511200 857816379 857816379 117711680 117711680 334715864 355659834 355659834 296065104 222482656 222482656 417874314 469763082 923452997 923452997 761175358 703256037 334639634 409420464 510056862 510056862 277160096 796659360 796659360 810301191 810301191 795163618 795163618 996940034 996940034 734009476 1045229801 1045229801 570839308 623766825 623766825 880878032 880878032 838910720 311546056 958176592 958176592 940458511 751799490 751799490 704956437 542186020 542186020 282198721 398871156 398871156 362501112 895368791 895368791 897619440 897619440 517861086 990401092 1032860390 1032860390 845613970 845613970 1043379696 1043379696 933603985 961123510 961123510 738900334 974391831 974391831 185626641 154536866 308545938 973428066 973428066 906267922 336142424 336142424 923606477 923606477 808005712 425601809 423683690 155588758 454507062 561012992 561012992 761807240 761807240 643843478 643843478 866233944 866233944 751371646 523054398 523054398 589825329 589825329 851713828 969673659 969673659 315888218 981784878 981784878 664932729 518185752 518185752 446189102 446189102 921925370 921925370 914093979 889931224 826039866 559413921 792601845 814339429 1015279695 1015279695 777076852 852026042 852026042 321048882 321048882 315814680 522200303 522200303 352235183 270201787 560564627 560564627 175089131 898695320 898695320 334570482 687147141 687147141 690011720 690011720 689160580 136359271 851762439 851762439 594468273 838976364 864404122 1007732977 1007732977 935365136 935365136 292570195 284706133 689185680 689185680 541338101 671235780 864172295 864172295 916875533 916875533 255194897 606558032 606558032 606209856 606209856 132985904 125838800 115393840 132736360 132736360 606114857 606114857 122065640 891836223 891836223 419205510 424677540 1026074209 1026074209 806866336 806866336 742963587 689277613 545858089 882986976 882986976 966399591 966399591 968976420 968976420 53419636 135142404 135142404 231347436 569026160 571370068 571370068 188952912 188952912 126117496 90313128 173103612 210805672 526977564 526977564 99918406 55436560 63962352 100619152 181584604 181584604 40003280 134775316 134775316 77594768 100677264 100677264 182452352 184549660 728330224 728330224 606339203 606339203 436228118 604000261 604144900 912410833 912410833 782113043 577639840 426122119 992220074 992220074 559181216 559181216 552616640 552616640 96045416 96045416 90054312 77551112 79757864 79757864 72867936 125884936 125884936 92324560 67460648 66702800 66702800 54577312 576735026 576735026 344345698 1066931026 1066931026 909396533 689215841 689164405 404146958 404146958 934928510 934928510 482996704 824199975 824199975 496241235 745603970 972766532 972766532 262408572 262408572 213492232 214012614 416440524 416440524 468064448 468064448 503447862 503447862 251686998 507572336 952232014 952232014 658915428 658915428 281149442 677937408 677937408 559187365 472024748 472024748 424883092 671289365 671289365 898105890 898105890 945031815 945031815 908629874 949766733 949766733 980076891 980076891 933289366 587310613 812286980 812286980 626998282 694471077 694471077 364904682 476455982 476455982 348561451 612625633 612625633 612579682 612579682 422118978 481695546 481695546 440097036 69456176 69456176 69866864 443699862 443699862 466552132 466552132 373666770 316284176 292891554 292891554 302217664 302217664 377979536 377979536 96994536 96994536 95496064 378345240 391664320 391664320 293351298 353374728 353374728 446467878 446467878 266215164 258418496 288555920 288555920 140973188 164676324 164676324 561529664 561529664 539148296 832776200 832776200 708364053 999852058 999852058 852970174 852970174 190583857 275578120 339947658 893125966 893125966 478169092 478169092 813042756 813042756 408750337 784076904 784076904 147375469 60346884 152571908 693108832 693108832 562607840 562607840 777953841 777953841 697404993 794391444 794391444 610353721 610353721 231260561 776029255 902374635 902374635 873447977 802080986 802080986 457779800 228818072 946061577 946061577 839432690 839432690 537550592 537550592 433909998 687937602 1032609409 1032609409 890326642 1006868594 1006868594 390070458 390070458 841043081 841043081 1000407280 1000407280 816092224 796018829 104598309 51256368 670249977 971609159 971609159 555960392 153094452 153094452 455489316 455489316 336217112 336217112 236858420 236858420 416475096 454098932 454098932 386096724 350348540 350348540 177132880 42084928 120465240 148249284 148249284 257847396 257847396 110123544 74655645 197568385 241657216 241657216 741870541 741870541 802102801 802102801 680279337 45823824 783318461 783318461 779881784 779881784 577014560 143303220 143303220 195597372 195597372 92406568 216142344 216142344 76915208 245207556 245207556 1056422341 1056422341 831935073 916568463 916568463 669514309 669514309 856232574 941106737 941106737 274388194 274388194 67404480 351086920 512002442 730007803 730007803 680800570 680800570 339090186 339090186 286275944 99623928 612913232 781419145 781419145 776012440 766896981 677648277 697173512 697173512 668149420 668149420 169902544 155484308 224678244 247974840 247974840 243279880 243279880 131369656 137560258 416420550 416420550 416420550 494928878 494928878 361943724 252806312 252806312 301651938 534428352 534428352 201670866 256681272 525006156 525006156 410556184 146168256 308970274 308970274 323035314 323035314 665678459 665678459 653601753 653601753 458358950 873340539 873340539 109849690 597367339 1015186643 1041531918 1041531918 955914183 618660297 805703785 805703785 748761708 748761708 721068636 721068636 1007030339 1007030339 1066081257 1066081257 1045899822 434117754 398991562 436513340 593654567 593654567 697466086 697466086 409511204 271587208 364645960 550111430 1033421509 1033421509 888852739 885015114 549985473 682135884 807436488 807436488 713154645 711163920 951113541 951113541 577241820 413010946 413010946 155713848 194036688 194036688 300491642 300491642 353050264 399711738 399711738 650481458 875160155 875160155 604366857 822126896 822126896 569762579 678483605 678483605 310040466 920468701 920468701 1002580032 1002580032 880485573 698939689 698939689 426477707 739204388 739204388 470210574 599037763 599037763 887027593 887027593 984009691 1057671331 1057671331 959710210 959710210 696256164 861932454 861932454 492966794 471372060 366306274 364590704 75027848 57738112 305742098 305742098 112086160 112086160 292553634 292553634 291586656 429077508 890985061 890985061 980749954 980749954 1013788047 1013788047 900305592 910237851 985731087 985731087 545390616 889473319 889473319 671383813 826016039 826016039 872621610 872621610 819212520 352258944 52954416 36312336 52302040 133569528 148410172 181015764 181015764 122425244 198200468 198200468 81662856 62955488 110350352 243542680 243542680 609200005 684719301 684719301 713070789 713070789 671162373 440475904 1005887752 1005887752 413139270 136314946 869243440 939612331 939612331 1049348195 1049348195 759956037 1009988367 1009988367 919218388 919218388 443287940 617781580 617781580 547172481 672061709 1035053673 1035053673 810821987 866575261 866575261 863028147 757156649 757156649 690537765 690537765 321589248 321589248 321463602 648031510 1015884879 1015884879 724241176 724241176 1043100168 1043100168 27106591 449461294 449461294 504052688 504052688 146673046 419761456 419761456 223222956 523475048 979414369 979414369 555246644 811451840 817791682 817791682 809415361 809415361 827414818 827414818 897886696 897886696 626619784 336227548 449312982 449312982 991617610 991617610 716362581 516092892 778188758 941723738 941723738 878939509 909847199 909847199 1042442122 1042442122 200958896 459939314 742085888 766266002 766266002 638313474 638313474 335286258 448708182 448708182 314234706 330340898 330340898 289145120 289145120 37527920 44368688 52625536 52625536 40371600 65807792 65807792 49098192 41419808 41419808 132551400 394541458 394541458 48826752 375575250 375575250 128993032 52265496 285219084 463353102 1025710198 1025710198 214761891 877889088 897671383 897671383 243373287 205643916 546114782 546114782 487540746 487540746 139464064 143396164 143396164 404165704 404165704 105042072 659312192 667992825 667992825 550416601 19530048 19530048 46683136 156799100 156799100 127572088 236332156 236332156 100786200 100786200 76587600 775975424 775975424 297007262 610239944 777569949 991342294 991342294 554976832 554976832 75812577 593908401 593908401 560615928 132257184 142655648 142919748 654362794 654362794 654925562 831730275 831730275 649859771 920389496 920389496 609303810 554086658 554086658 992892162 992892162 545928614 828711367 828711367 168373962 541001837 541001837 415635654 575749041 575749041 410385539 720421845 804914425 804914425 812738039 812738039 160044132 238752020 238752020 771817669 771817669 419110207 867270693 867270693 315720369 598592816 830529538 830529538 831898259 831898259 620782082 307245558 466871780 466871780 330084896 330084896 265473708 477143132 477143132 400754862 650459687 650459687 141182068 882705568 882705568 1011254447 1011254447 802119373 898085088 898085088 856470724 856470724 134217808 193206812 241633864 252715904 252715904 220251564 849943040 1053026543 1053026543 360445098 360445098 512300063 512300063 412034061 202238988 477764464 1003957292 1003957292 597339604 597339604 617048273 805892483 984298839 984298839 1044895880 1044895880 986655098 986655098 845677971 547946592 521878418 429528678 375900266 386467018 386467018 69348786 31968272 28149152 28149152 174790968 174790968 113538368 113538368 79700176 275075156 335985754 763735155 1066223778 1066223778 1063368871 1063368871 706957611 685781471 822107510 822107510 835308527 874531808 874531808 350672554 678162322 678162322 428169307 531893118 968826746 968826746 672503585 672503585 297768618 1073383963 1073383963 110534483 100706736 655438883 655438883 142609772 631335853 631335853 96534944 344714496 344714496 339457762 844374336 881878025 881878025 824984634 903988704 903988704 360801826 314646738 577511200 857816379 857816379 664027146 922812786 922812786 355659834 355659834 296065104 267059460 205553902 417874314 469763082 469763082 287310088 117707400 117707400 334639634 409420464 448579390 448579390 277160096 163276528 608052576 891868390 891868390 795163618 844366498 996940034 996940034 503842347 917842672 917842672 789916318 1035215742 1035215742 880878032 880878032 609333896 531657082 958176592 958176592 940458511 751799490 751799490 861269350 861269350 542186020 282198721 272016066 291838064 306370706 306370706 321516296 897619440 897619440 374990490 374990490 419835538 419835538 845613970 845613970 1043379696 1043379696 933603985 961123510 961123510 738900334 974391831 974391831 153524626 327160599 693244921 1064501704 1064501704 906267922 547409997 547409997 923606477 923606477 425601809 425601809 743649933 743649933 309586649 561012992 561012992 559014561 120636216 575939088 575939088 866233944 866233944 751371646 523054398 523054398 589825329 589825329 423808802 806602228 995937975 995937975 981784878 981784878 664932729 686333809 686333809 194789216 63671512 921351291 921351291 889931224 889931224 614469702 444129372 442050198 693232840 756688413 777076852 777076852 852026042 852026042 321048882 321048882 315814680 522200303 522200303 352235183 884771732 1046479263 1048787231 1048787231 916515259 446990358 839174418 839174418 687147141 690011720 690011720 689595460 689595460 851762439 851762439 594468273 401395194 864404122 1007732977 1007732977 838934615 327223431 292570195 543110752 567127331 567127331 424248128 671235780 680002629 680002629 916875533 916875533 546886600 606558032 606558032 606209856 606209856 226546208 218552424 218552424 208014216 201326604 98901436 98901436 87944896 293720576 293720576 7389312 12829440 1026074209 1026074209 822364320 822364320 223371328 949256423 949256423 882986976 882986976 966399591 966399591 456405973 456405973 53419636 135142404 549899370 894047403 894047403 571370068 623826729 623826729 555578632 622373209 622373209 582059048 90184160 76719784 356293136 356293136 36409018 72215688 100619152 181584604 284989224 284989224 134775316 134775316 72491416 100677264 100677264 781387545 781387545 184549660 674642745 674642745 839266963 839266963 604000261 604144900 912410833 912410833 782113043 307496467 40895506 859833090 859833090 559181216 559181216 89203040 89203040 96045416 96045416 90054312 77551112 79757864 157550978 421601574 424815046 424815046 783632651 783632651 95274376 475365534 475365534 489062524 582665224 582665224 1066931026 1066931026 909396533 151323263 344883235 681762405 1018584653 1018584653 831459399 757348184 369624090 371721498 400761279 745603970 745603970 487870062 488377902 488377902 213492232 213492232 203493508 216125440 216125440 202646666 202646666 235053174 515186836 515186836 420158218 478817254 847206232 847206232 470760462 677937408 684114184 684114184 472024748 505597996 505597996 178686426 25577612 898105890 898105890 945031815 945031815 908629874 1049272564 1049272564 980076891 980076891 933289366 541337988 541337988 432351462 743494574 764051821 764051821 704288739 688391205 673625764 673625764 561901473 343061000 274850178 225060190 432919986 436951058 436951058 332051008 357578096 357578096 270094976 273413250 273413250 305176576 362791520 362791520 344364106 121348448 121348448 72665736 120881584 377979536 377979536 64043130 71335968 81865752 378345240 378345240 291173082 293351298 293351298 374113804 446467878 446467878 433929568 433929568 288555920 288555920 140973188 164676324 164676324 561529664 561529664 186728644 682696748 708364053 806486019 999852058 999852058 978409598 978409598 190583857 368613634 368613634 683924288 888149121 888149121 834411205 834411205 763891014 644163993 644163993 167512288 167512288 56362164 152571908 604799588 604799588 791416125 791416125 793065057 793065057 697404993 252057660 55524528 541821344 541821344 123846929 776029255 902374635 902374635 873447977 802080986 802080986 457779800 407928838 850105666 905018179 905018179 594010089 537550592 537550592 1024527296 1024527296 1028758135 1028758135 757026963 355511994 355511994 390070458 390070458 841043081 841043081 538861874 816092224 816092224 425771430 358909964 174356044 670249977 971609159 971609159 555960392 153094452 153094452 455489316 455489316 336217112 336217112 391598976 391598976 416475096 454098932 454098932 386096724 350348540 350348540 327466560 327466560 150885556 193791360 193791360 346610460 346610460 303492100 212857448 763594116 763594116 198386433 893470784 893470784 802102801 813733068 996546689 996546689 783318461 783318461 779881784 779881784 577014560 264389120 264389120 84594840 556830228 711742292 711742292 644720840 755350125 755350125 752838861 752838861 749845933 755902400 755902400 702823289 612807024 76785712 76785712 1118208 33628176 75670144 275005528 275005528 351086920 351086920 208773660 208773660 483005568 483005568 748605700 748605700 413829071 854987354 854987354 1062115341 1062115341 766896981 766896981 677648277 697173512 697173512 668149420 668149420 115158532 105450368 224678244 247974840 247974840 243279880 243279880 131369656 131369656 256213824 256213824 182508116 504432824 504432824 285286434 189335568 280081924 419092422 419092422 197615090 367867840 367867840 337575242 81843584 146168256 146168256 308970274 308970274 288493698 840991459 840991459 213942982 813699512 813699512 458358950 626522169 933039642 933039642 424206077 1015186643 1041531918 1041531918 546708033 618660297 805703785 805703785 799150461 799150461 730101924 735303733 1007030339 1007030339 1066081257 1066081257 134291712 3203072 9605184 9605184 546409185 546409185 697466086 697466086 409511204 142448773 158388772 158388772 299902284 888852739 888852739 885015114 755577956 549985473 807436488 807436488 711163920 711163920 681248336 709308757 709308757 413010946 413010946 284514864 196405192 196405192 152431140 120400988 53756440 53756440 300295906 300295906 605390856 605390856 604366857 667952415 1025598851 1025598851 790315693 702657961 971781142 971781142 960543451 1002580032 1011879424 1011879424 606887976 606887976 426477707 739204388 739204388 470210574 494558878 515804780 515804780 339721474 443077389 1057671331 1057671331 959710210 959710210 287835426 36701202 33751552 33751552 1122816 110899552 110899552 105722400 57738112 305742098 305742098 112086160 112086160 292553634 292553634 202987016 429077508 890985061 890985061 980749954 980749954 1013788047 1013788047 900305592 910237851 985731087 985731087 545390616 889473319 889473319 855638067 855638067 873992488 873992488 872621610 819212520 352258944 78126152 36312336 52302040 133569528 133569528 103887616 103887616 55388400 49555344 51759152 51759152 62955488 62955488 39507600 63375296 63375296 135535696 135535696 177304208 177304208 126110866 440475904 440475904 421611442 88508032 106091160 869243440 939612331 939612331 1049348195 1049348195 759956037 1009988367 1009988367 919218388 919218388 136702212 617781580 617781580 547172481 672061709 1035053673 1035053673 904436783 683823597 635836905 622601256 757156649 757156649 690537765 845234342 845234342 627306921 627306921 640628278 640628278 692631342 724241176 975375038 975375038 629101025 503915550 534592808 534592808 93594624 93594624 62521472 66721776 66721776 170492242 706750464 979414369 979414369 555246644 811451840 817791682 817791682 809415361 809415361 827414818 828749568 897886696 897886696 626619784 244644747 373352181 817130884 817130884 809791551 814883991 814883991 713282115 882446936 975931881 975931881 856452794 856452794 879035932 879035932 141558660 459939314 459939314 766266002 766266002 638313474 638313474 335286258 448708182 448708182 413922630 421581378 421581378 289145120 289145120 18090528 24382368 52625536 57355344 57355344 65807792 65807792 49098192 19660832 56623104 56623104 61997072 61997072 21369056 69340224 101602400 101602400 36276536 285219084 463353102 1025710198 1025710198 214761891 898134280 898134280 747291743 587396245 918734452 918734452 546114782 487540746 487540746 139464064 413743432 413743432 259176798 981201873 981201873 978308668 978308668 762976173 261621076 173594869 588791860 588791860 176473145 176473145 549814364 587508113 587508113 582458137 557162905 194966113 665054073 665054073 660344505 660344505 777569949 991342294 991342294 629382149 101188832 374392438 592616952 592616952 1048839150 1048839150 49384036 460105876 994642988 994642988 922764689 946455087 946455087 947439440 947439440 946129287 328319568 554086658 554086658 7292034 12991872 702815300 702815300 537396225 344458314 344458314 242642180 415635654 415635654 52186304 58908426 268570626 392305626 818454592 818454592 810148995 160044132 349773856 349773856 93397130 110675544 197755718 867270693 867270693 315720369 557932576 830529538 830529538 831898259 831898259 620782082 307245558 332791264 332791264 269606378 249474576 249474576 202643724 671422905 671422905 671402649 671402649 202195716 478675626 478675626 185380982 425672358 425672358 366737934 421127718 421127718 474091662 474091662 452035432 452035432 239174208 220251564 220251564 90988598 1053026543 1053026543 360445098 438242368 512300063 512300063 415082352 415082352 477764464 1003957292 1003957292 597339604 597339604 569751297 279044418 75426304 888362120 1044895880 1044895880 255020227 464704374 467908938 521878418 521878418 429528678 375900266 386467018 386467018 69348786 31968272 28149152 28149152 174790968 174790968 146935824 146935824 146800852 138684608 139282544 763735155 1066223778 1066223778 1063368871 1063368871 935436328 935436328 851493075 822107510 740498945 740498945 653863097 653863097 678162322 678162322 473433158 1018245998 1061107776 1061107776 672503585 672503585 297768618 1073383963 1073383963 807954813 807954813 655438883 655438883 196938044 631335853 631335853 137317312 175156272 322043184 339457762 571074040 881878025 881878025 824984634 903988704 903988704 360801826 314646738 321406306 658595897 664027146 664027146 922812786 922812786 17115168 130991136 267059460 267059460 189130932 139376020 69465356 100864044 105171216 117707400 117707400 131121248 131121248 84857888 92407912 92407912 158389516 608052576 891868390 891868390 470336526 844366498 844366498 503842347 503842347 917842672 917842672 789916318 1035215742 1035215742 356862401 689107777 689107777 652435921 778610100 778610100 594157780 821043392 821043392 861269350 861269350 724953909 724953909 272016066 291838064 873244874 997820419 997820419 669615352 669615352 374990490 374990490 373939722 172317696 450215061 450215061 287450256 397534074 523224907 1009178895 1009178895 321232513 202848780 492255380 492255380 452336436 693244921 1064501704 1064501704 296567924 547409997 547409997 783296699 783296699 273164672 273164672 743649933 743649933 398119908 951611764 985832371 985832371 120636216 575939088 575939088 618677584 941146841 941146841 795516123 560729505 149371332 149371332 11008320 806602228 995937975 995937975 281610534 544594608 544594608 686333809 686333809 453438070 453438070 462361764 462361764 569407922 569407922 325210112 325210112 325108146 785040664 785040664 103339229 134217732 201326600 201326600 8726592 33274208 33274208 297801554 297801554 308305010 884771732 1046479263 1048787231 1048787231 1044119344 1044119344 839174418 839174418 464962259 457683924 457683924 689595460 689595460 563343969 243844188 352582028 401395194 401395194 535915684 553903198 553903198 171728288 995707472 995707472 543110752 958167808 958167808 704847874 738332935 738332935 615459076 615459076 546886600 546886600 99880096 219448352 226546208 226546208 218552424 218552424 208014216 201326604 595460761 595460761 87944896 605559231 605559231 500096238 500096238 483199820 740560960 822364320 856265668 856265668 949256423 949256423 485001440 699665869 699665869 485777997 554885760 558051489 558051489 424641093 549899370 894047403 1041263659 1041263659 890077727 623826729 555578632 873777675 873777675 715731814 715731814 435844324 435844324 356293136 128691924 139541444 139541444 166132036 284989224 363163906 363163906 269584744 36901328 76625472 76625472 781387545 781387545 238236444 674642745 674642745 839266963 839266963 471009426 541200541 541200541 177752064 177752064 710014469 710014469 234163900 234623710 411307176 561169544 823231016 823231016 289985312 289985312 280554336 298657282 301674528 301674528 421601574 424815046 424815046 783632651 783632651 95274376 475365534 475365534 489062524 582665224 582665224 498774110 498774110 731201624 731201624 631105149 681762405 1018584653 1018584653 831459399 757348184 461772918 467016438 467016438 401617794 425493704 487870062 488377902 488377902 478941006 478941006 380759130 1016070607 1016070607 1010543369 470070297 470070297 515186836 515186836 845727983 845727983 847206232 992769722 992769722 616884598 684114184 684114184 365157780 505597996 505597996 178686426 25577612 268984832 969984518 969984518 836628195 339577130 1049272564 1049272564 436982933 184684596 184684596 138780896 432351462 759919235 810792109 810792109 764051821 704288739 688391205 673625764 1009519887 1009519887 836278949 934447642 934447642 432919986 436951058 436951058 332051008 357578096 357578096 270094976 273413250 340930216 340930216 362791520 362791520 344364106 121348448 362003674 362003674 328315000 78530464 78555976 78555976 41498066 301910978 352895426 352895426 71378656 71378656 59844176 374113804 374113804 196027988 433929568 433929568 237416991 681728899 681728899 547430801 910221727 910221727 836821158 878208891 878208891 669753516 806486019 806486019 701811429 978409598 978409598 400547368 400547368 368613634 361823560 888149121 888149121 834411205 834411205 903191920 903191920 644163993 167512288 792629312 792629312 143836833 214089925 582358636 791416125 791416125 793065057 793065057 276090538 935181262 935181262 872043159 848167441 679749649 614658888 615126345 615126345 96687464 317804758 317804758 407928838 407928838 850105666 905095433 937039611 937039611 120508107 887409224 1024527296 1024527296 434547759 420404262 227442222 588267579 588267579 559956962 559956962 426321318 639936914 912648393 912648393 595696514 875614251 875614251 580960802 482921244 474107660 474107660 102706520 61423104 33557024 315097312 319292466 390220448 390220448 489890618 489890618 213821138 113366624 424685160 433326822 433326822 284280624 327466560 327466560 150885556 193791360 193791360 346610460 346610460 303492100 212857448 763594116 763594116 27864192 893470784 893470784 74304972 813733068 996546689 996546689 646578417 137161045 100884484 188672292 188672292 264389120 304612626 313147426 556830228 711742292 711742292 644720840 755350125 755350125 752838861 752838861 749845933 755902400 755902400 1052627321 1052627321 990264921 733972760 932068459 932068459 916347419 873576616 304398344 295024416 295024416 341025344 341025344 483005568 483005568 748605700 748605700 413829071 854987354 854987354 1062115341 1062115341 552602624 551837377 163617289 158429312 158429312 154325796 540243092 676273280 776767932 776767932 644119945 546659104 238942068 238942068 225140492 225140492 202300428 287613604 287613604 504432824 504432824 354990850 189335568 280081924 419092422 419092422 402940338 369535680 369535680 365235114 271618882 270932480 32543648 567022176 567022176 123331656 840991459 840991459 54093736 813699512 813699512 323749435 626522169 933039642 933039642 742861857 542650029 528088552 528088552 493063389 650852473 958474573 958474573 799150461 799150461 730101924 735303733 1062049894 1062049894 867492117 1023103802 1023103802 345455178 688686975 688686975 291740672 292367778 292367778 298328488 298328488 349516808 434793192 434793192 299902284 299902284 484671647 755577956 755577956 602233080 684261453 1047005082 1047005082 915936129 681248336 709308757 709308757 448584464 284514864 284514864 196405192 196405192 178538868 144083300 88744824 210177855 988284375 988284375 990068790 990068790 840435219 696465014 1025598851 1025598851 790315693 702657961 971781142 971781142 960543451 714114774 1011879424 1011879424 940392742 940392742 288096268 288096268 416286966 416286966 494558878 515804780 515804780 339721474 1045070226 1045070226 691196213 344491854 344491854 235931172 211338828 933385023 933385023 388254994 908309553 908309553 446275923 699721381 975793095 975793095 601892324 67412120 68890896 81838536 361251946 493347404 493347404 358405248 301846480 205610382 388286778 552582724 928613498 928613498 706130865 310514146 367137258 482349386 699008210 855638067 891293954 891293954 873992488 354423080 354423080 78126152 78126152 37349136 43339072 105256320 105256320 103887616 103887616 47973392 72104880 72104880 70245408 133070288 133070288 95673808 63375296 63375296 167755408 168636416 168636416 139357264 205903936 257018994 421611442 421611442 88508032 106091160 268443749 989876259 989876259 587727921 744226917 744226917 501091929 958844933 958844933 790602816 737546469 944643525 1003785143 1003785143 843749571 816631316 904436783 904436783 683823597 635836905 805373190 872760616 872760616 973718809 973718809 845234342 627306921 627306921 640628278 930683803 930683803 692631342 975375038 975375038 629101025 503915550 534592808 534592808 570495200 583577696 583577696 66721776 66721776 14881360 706750464 706750464 29401120 33111392 33111392 20005888 559154688 822420385 822420385 23279139 828749568 828749568 3534208 229851818 229851818 155647691 817130884 817130884 412527754 814883991 814883991 713282115 1019215876 1019215876 975931881 856452794 856452794 879035932 879035932 210189542 210189542 418203504 418203504 438083840 438083840 305711620 289539488 289539488 413916486 413922630 421581378 421581378 285844994 277990496 18090528 24382368 24382368 57355344 57355344 47127696 47127696 36572352 19660832 56623104 74216488 342215010 342215010 30197472 299142530 299142530 64640128 280024386 340771022 340771022 264746212 241582064 241582064 898134280 1015025752 1015025752 1040322583 1040322591 1040322591 67634184 67634184 135007236 136318208 413743432 602006001 889543555 981201873 981201873 978308668 978308668 762976173 601199185 173594869 588791860 596640257 596640257 176473145 881777774 881777774 587508113 582458137 557162905 232000236 860882302 860882302 660344505 660344505 652091097 652091097 629382149 629382149 71833824 374392438 374392438 206046348 1048839150 1048839150 49384036 460105876 994642988 994642988 922764689 946455087 946455087 947439440 947439440 946129287 319914947 311230994 420285523 420285523 834540161 834540161 702815300 537396225 344458314 760486387 941134631 941134631 1028298681 1028298681 780704365 860755559 860755559 1002812689 1002812689 1030540080 1030540080 979420050 903888262 903888262 823763975 315392220 867444917 867444917 273465974 114614936 114614936 553951904 553951904 67207744 279173960 279173960 95437034 151698692 151698692 249474576 249474576 202643724 671422905 671422905 671402649 671402649 202195716 478675626 899021407 899021407 700440327 654490301 1072233348 1072233348 1009446907 988462496 474091662 452035432 452035432 239174208 176367256 44841132 408165636 408165636 433328802 433328802 438242368 438242368 322254710 415082352 415082352 914696283 961285566 961285566 857734707 569751297 967013027 967013027 563257606 888362120 888362120 886231755 814960640 60952944 380448892 438111250 470099486 470099486 445165648 191253828 430494050 430494050 306599126 355096988 355096988 300719526 321805606 353240344 353240344 146800852 38420624 784578104 784578104 272838723 246816992 652737416 653736921 935436328 935436328 851493075 484190934 484190934 285566614 653863097 653863097 561068479 423766102 547884664 1018245998 1061107776 1061107776 922222718 922222718 345282505 428734502 722388076 807954813 807954813 455485992 455485992 196938044 201606128 201606128 147427840 175156272 175156272 123157176 571074040 571074040 346588817 105988480 103932696 18282760 98441448 113673440 276865600 276865600 68427778 68427778 293677090 300777736 308594010 365089824 365089824 115856888 90616208 90616208 4854912 36321056 51906096 107729032 107729032 223218880 223218880 73192480 73270920 88784812 158389516 806873934 806873934 474854377 470336526 425199270 425199270 338240428 836044408 855975987 1066191979 1066191979 1027927197 1027927197 524888235 689107777 689107777 652435921 778610100 778610100 888219806 888219806 821043392 272461908 687852454 724953909 724953909 155815825 35786784 873244874 997820419 1022183648 1022183648 990059585 990059585 717771878 717771878 637610167 580183627 580183627 77594952 397534074 809054797 1009178895 1009178895 807867502 807867502 492255380 492255380 452336436 506862146 506862146 618956911 1071981817 1071981817 808358481 808358481 863187891 863187891 699294912 699294912 398119908 398119908 951611764 985832371 991465695 991465695 626603064 373589278 906004899 941146841 941146841 795516123 610320777 377591065 765277362 765277362 581746210 686743857 686743857 36564240 50858164 139201668 172000352 172000352 453438070 453438070 998794215 998794215 851777224 851777224 769837082 505979212 484017438 785040664 785040664 725741692 725741692 805634610 805634610 453454166 453454166 302092112 297801554 297801554 369508396 707300734 894881046 894881046 802693053 1044119344 1044119344 883269706 883269706 57013200 91478952 231359752 231359752 459481918 459481918 823341078 926073153 926073153 565708641 535915684 914754604 914754604 628624527 995707472 995707472 962162048 962162048 958167808 940651648 940651648 738332935 615459076 615459076 304485851 82222016 13796160 219448352 219448352 186910552 204611144 204611144 94019308 42222992 595460761 595460761 121247544 605559231 605559231 500096238 500096238 619365040 740560960 771290764 856265668 856265668 828262210 806619928 277908912 277908912 903907945 903907945 732301340 814996101 814996101 503340685 419428674 649127137 1041263659 1041263659 890077727 896353026 896353026 873777675 873777675 715731814 715731814 435844324 435844324 391513714 391513714 369231770 369231770 305535762 283339048 363163906 363163906 269584744 3350528 76625472 76625472 178913600 238236444 238236444 402669826 402669826 239226886 137973144 137973144 407552128 741102736 741102736 598303026 710014469 710014469 234163900 234623710 411307176 561169544 823231016 823231016 489907136 489907136 280554336 298657282 301674528 301674528 25691232 25691232 13445280 5244096 5244032 101449912 123210984 123210984 107217424 107217424 34625944 109234184 813703711 830946850 830946850 631105149 1000964415 1000964415 700414567 778181545 778181545 461772918 467016438 467016438 401617794 1039935279 1039935279 815996288 865978177 865978177 590163249 753001228 1016070607 1016070607 1010543369 470070297 470070297 134278365 275639682 845727983 845727983 491750164 992769722 992769722 616884598 730438153 730438153 839726751 970215283 970215283 847770126 399046684 268984832 969984518 969984518 836628195 335776324 496711278 496711278 471447203 537344001 661334241 661334241 762450861 762450861 810792109 810792109 565891242 565891242 757846020 757846020 1009519887 1009519887 836278949 934447642 934447642 317475440 312477362 284772274 132995968 132995968 67818624 132846888 132846888 340930216 340930216 126780474 116620768 116620768 311804610 362003674 370820112 370820112 117587496 399192072 399192072 307177498 307177498 500959238 500959238 432132174 432132174 290049138 59844176 162264420 162264420 190791348 406717096 406717096 681728899 681728899 550721150 910221727 910221727 836821158 878208891 878208891 1015697690 1015697690 889744553 701811429 928407706 928407706 464995449 400547368 361289832 156540584 156540584 429952682 477628716 698761829 903191920 903191920 544678780 88354192 792629312 792629312 768246460 768246460 692590241 785518784 785518784 1063556678 1063556678 620269271 935181262 935181262 872043159 848167441 679749649 202039812 202039812 96687464 96687464 317804758 317804758 139645572 23196516 830792762 905095433 937039611 937039611 120508107 887409224 887409224 689572652 607120295 474290221 831785571 957224516 957224516 559956962 559956962 283165122 639936914 912648393 912648393 595696514 875614251 875614251 580960802 482921244 474107660 474107660 479953104 479953104 456532246 159393860 426312883 625813651 818883019 818883019 842881281 842881281 843217081 928464529 1059900735 1059900735 474867771 547602610 715879458 715879458 28325748 8458304 474587929 1020296409 1020296409 1035836615 1035836615 537621792 537621792 230900928 563594920 672001029 1011844229 1011844229 957486758 561783680 561783680 751373484 751373484 565583836 190478964 304612626 313147426 335581288 335581288 6476160 6476160 6328320 0 0 0 246940460 596785424 685496788 1052627321 1052627321 990264921 733972760 932068459 932068459 916347419 873576616 304398344 295024416 295024416 341025344 341025344 337066506 277480064 686693829 686693829 276452096 546320393 546382401 546382401 552602624 552602624 551837377 163617289 142825580 68495880 100821504 540243092 676273280 776767932 776767932 644119945 546659104 238942068 238942068 225140492 225140492 459839810 459839810 434559270 434559270 354990850 354990850 243737928 243737928 187729138 402940338 422454196 422454196 369535680 365235114 351051018 336221640 82174080 567022176 670452264 670452264 587472650 587472650 472833294 902208834 960895143 960895143 568271360 568271360 742861857 742861857 542650029 528088552 528088552 493063389 650852473 958474573 958474573 405472529 140765693 563160889 563160889 1062049894 1062049894 1023080352 1023103802 1023103802 345455178 688686975 688686975 183495040 280699776 280699776 298328488 298328488 349516808 434793192 434793192 224302828 364982690 872457176 911471259 911471259 602233080 684261453 1047005082 1047005082 915936129 592656250 983472656 983472656 550276323 329768052 411943030 411943030 329116992 178538868 144083300 88744824 210177855 988284375 988284375 990068790 990068790 840435219 696465014 973433385 973433385 789678106 367176509 586088084 597439168 714114774 714114774 973234304 973234304 940392742 960823698 960823698 604321806 416286966 416286966 409806740 350621696 350621696 740430848 1045070226 1045070226 691196213 344491854 344491854 235931172 211338828 933385023 933385023 388254994 908309553 908309553 728682213 699721381 975793095 975793095 601892324 470412366 470412366 81838536 361251946 493347404 558568580 940684771 997324733 997324733 533952485 401402170 928613498 928613498 708922649 843056373 935330043 935330043 393872924 913868145 913868145 891293954 908776731 908776731 557471000 351147752 113253592 37349136 43339072 92280608 124257720 124257720 92671264 19667048 72104880 72104880 70245408 133070288 133070288 95673808 94548456 74492128 167755408 168636416 168636416 139357264 205903936 205903936 67231752 67373064 680542232 714394197 934576477 989876259 989876259 868930803 744226917 744226917 501091929 958844933 958844933 790602816 737546469 944643525 1003785143 1003785143 843749571 816631316 107774740 132276164 132276164 331614352 805373190 872760616 872760616 973718809 973718809 675810954 402779544 395364108 414501702 930683803 930683803 67406024 570743600 570743600 554216041 25695817 21961824 21961824 570495200 583577696 583577696 54808688 39180496 167821634 831018934 989455522 989455522 565397236 810562720 837852322 837852322 822420385 822420385 811676290 811048194 807689472 806580355 594526848 302858544 42851456 116391040 116391040 412527754 412527754 811647242 811647242 1019215876 1019215876 806668520 806668520 337017355 492245156 492245156 210189542 210189542 60276290 34641920 438083840 438083840 305711620 331489716 331489716 168374336 344375492 516006634 516006634 202058256 202058256 440545746 440545746 248513244 294707258 294707258 85609440 130598000 295192112 295192112 316855904 316855904 342215010 342215010 30197472 299142530 299142530 332769410 332769410 340771022 340771022 264746212 924820836 1052170591 1052170591 1015025752 1015025752 1040322583 1040322591 1040322591 697404116 625818303 495361867 288930240 346513211 602006001 889543555 889543555 333264786 567753441 762840136 762840136 601199185 77693672 725362128 725362128 832269624 832269624 881777774 881777774 427955817 511842340 511842340 232000236 860882302 860882302 901981684 901981684 652091097 652091097 432107044 432107044 71833824 3153152 3153152 3015424 14490502 366356050 377526766 377526766 394935392 394935392 183360596 379548688 379548688 329591154 314910930 441249558 465169444 465169444 827337248 827337248 834540161 834540161 433206756 190852608 460229922 760486387 941134631 941134631 1028298681 1028298681 780704365 860755559 860755559 1002812689 1002812689 1030540080 1030540080 979420050 903888262 903888262 823763975 315392220 867444917 867444917 539011296 569764833 582146689 582146689 553951904 18211752 279173960 279173960 95437034 351768714 351768714 304281922 908290759 908290759 548537169 548537169 11669760 11669760 169978240 402975241 1043538731 1043538731 932516535 836926311 1072233348 1072233348 1009446907 988462496 120884784 259418212 259418212 176367256 231440488 231440488 408165636 510520734 510520734 433328802 453086636 453086636 399360 90116112 717232656 914696283 914696283 857734707 857734707 445476754 967013027 967013027 879500039 348247258 258154572 858759485 858759485 466739958 467181720 467181720 470099486 470099486 445165648 191253828 430494050 430494050 306599126 491077872 491077872 300719526 321805606 353240344 353240344 525312 38420624 784578104 1036415095 1036415095 418824260 652737416 653736921 653736921 381803267 1034282867 1034282867 484190934 285566614 285566614 272631826 272631826 40709520 547884664 547884664 319827020 319827020 1003173119 1003173119 522231963 1015035495 1015035495 845674899 773648544 901778067 901778067 420880196 944707029 944707029 147427840 147427840 143783080 123157176 574640496 591398176 591398176 572644377 572644377 564086624 349225386 109125720 120677730 870362289 870362289 666717952 898926642 898926642 308594010 365089824 365089824 197448052 197448052 138548356 201342988 201342988 51906096 51906096 191494128 223218880 223218880 13521644 16202688 16202688 15020288 806873934 899679211 899679211 351854826 153626500 683213949 683213949 836044408 855975987 1066191979 1066191979 1027927197 1027927197 902423787 1049757285 1049757285 583266513 134574356 308463704 888219806 888219806 170414164 246604120 246604120 234881052 234881052 212017568 212017568 220796220 470027287 1022183648 1039051084 1039051084 990059585 717771878 717771878 637610167 580183627 580183627 1041239573 1041239573 873014283 902452288 902452288 807867502 807867502 114376832 330558028 330558028 414400980 453109967 941935021 1071981817 1071981817 808358481 808358481 863187891 863187891 699294912 699294912 115753071 215187512 215187512 804418104 991465695 991465695 626603064 515235949 906004899 906004899 679403068 679403068 610320777 377591065 765277362 765277362 581746210 961433856 961433856 426121710 716038128 716038128 705845336 705845336 319686548 319686548 998794215 998794215 851777224 851777224 769837082 505979212 484017438 484017438 605684781 725741692 725741692 805634610 805634610 453454166 453454166 302092112 404824326 448801794 448801794 707300734 707300734 316793298 751969992 751969992 671822853 883269706 883269706 364774666 501145338 501145338 822786064 822786064 685247025 823341078 926073153 926073153 565708641 394464256 914754604 914754604 822845988 835841347 1021344139 1021344139 979706252 979706252 940651648 940651648 412290379 608249414 608249414 750651840 750651840 163450153 228333608 228333608 186910552 264118952 264118952 94019308 267727076 267727076 128584384 121247544 350261472 350261472 284301440 280234818 619365040 619365040 603771408 564445440 106891707 806619928 806619928 504046973 704643115 903907945 1012127830 1012127830 814996101 814996101 503340685 501367546 649127137 737710319 889663265 889663265 896353026 896353026 833669919 833669919 408177955 57003552 57003552 306223128 391513714 391513714 369231770 369231770 374271880 374271880 329777602 112126714 53441040 73082248 73082248 103286040 740828489 740828489 399560882 840319859 840319859 540305927 540305927 141888914 788699303 788699303 741102736 598303026 598303026 864883764 864883764 584399415 290727569 400787784 400787784 105970126 489907136 489907136 134230338 2359552 13565952 164763938 406532934 406532934 402985254 774379371 774379371 101449912 419059742 419059742 1016174534 1016174534 897677467 847350302 847350302 830946850 830946850 604882509 1000964415 1000964415 739122189 778181545 778181545 134399077 105652112 259509096 259509096 1039935279 1039935279 815996288 865978177 865978177 590163249 753001228 770949184 770949184 338328320 338328320 201344002 271668416 271668416 332307298 332307298 525501222 971133160 971133160 559362273 730438153 730438153 839726751 970215283 970215283 847770126 646102287 464984574 943925374 943925374 880209285 335776324 576316688 793908431 793908431 827197406 827197406 661334241 762450861 762450861 141271816 220969260 220969260 136041992 757846020 757846020 758910765 758910765 740950532 372371928 372371928 115330470 479756770 479756770 430168636 430168636 178442716 188776684 338171012 338171012 296257794 363139330 363139330 347291632 311804610 311804610 370820112 370820112 117587496 399192072 399192072 307177498 311188488 500959238 500959238 432132174 432132174 290049138 20642778 162264420 241284904 241284904 406717096 473400116 520663714 520663714 550721150 897749119 897749119 646070894 168870420 355643628 1015697690 1015697690 889744553 198494964 928407706 928407706 464995449 458461828 458461828 415114690 402693636 159178372 540017216 698761829 698761829 544678780 544678780 16278805 217584948 243433816 768246460 768246460 692590241 785518784 785518784 1063556678 1063556678 620269271 1037355533 1037355533 875429677 916777231 916777231 248153268 248153268 208217484 24815016 95593700 228725100 228725100 998229136 998229136 685922761 814879299 929865282 929865282 300756450 935420952 935420952 930461987 930461987 831785571 980899570 980899570 731116149 704787037 251805697 0 0 0 67108872 67108872 199262448 199262448 67108872 449853422 449853422 479953104 479953104 456532246 159393860 426312883 625813651 818883019 818883019 842881281 842881281 843217081 928464529 1059900735 1059900735 474867771 547602610 715879458 715879458 686723521 181588692 666256165 1020296409 1020296409 1035836615 1035836615 537621792 537621792 1039799496 1039799496 672001029 1011844229 1011844229 552075977 561783680 561783680 751373484 751373484 565583836 190478964 39323280 42224408 662573968 852995834 852995834 9869376 1017192218 1017192218 714637397 713557037 713557037 570560529 685496788 685496788 736487888 736487888 107365877 100895136 59211360 260546260 260546260 376645656 376645656 261629638 261629638 76287834 371199120 392829504 686693829 686693829 301336274 546320393 546382401 635765492 635765492 553769352 553769352 547756353 191016976 191016976 68495880 82473600 235337176 235337176 82705340 83235080 138614194 387930390 506702646 524294796 524294796 459839810 459839810 434559270 434559270 19853828 134546204 243737928 243737928 187729138 187729138 422454196 422454196 336069642 351051018 351051018 336221640 82174080 73791944 670452264 670452264 587472650 587472650 472833294 902208834 960895143 960895143 747391422 831384675 1058107100 1058107100 226359560 218436832 210573320 210573320 230832192 230832192 262578393 610550208 610550208 588511673 563160889 210312720 1023080352 1023080352 785117487 95500072 95098520 124109808 124109808 122769032 281025792 281025792 277090312 282868224 282868224 89418978 355265514 355265514 364982690 872457176 911471259 911471259 433129462 469246694 1019284360 1019284360 699670695 675283077 983472656 983472656 550276323 329768052 411943030 411943030 329116992 52528980 105005264 105005264 79806960 79876296 396469434 693288028 693288028 657795897 579692173 973433385 973433385 789678106 367176509 586088084 886089880 886089880 848685651 973234304 973234304 908099774 960823698 960823698 604321806 213959420 413319408 413319408 326015856 177566252 984093064 984093064 534262805 36249712 36249712 25764096 25764096 16777248 17049648 33628176 549805088 694498144 728682213 728682213 113264832 100976664 434752118 434752118 470412366 470412366 439456607 1009316315 1048527967 1048527967 940684771 997324733 997324733 683760856 262566916 262566916 552379600 708922649 843056373 935330043 935330043 469837097 913868145 913868145 649647768 908776731 908776731 557471000 452266888 452266888 447953172 530588136 530588136 303138992 124257720 62310800 10502304 153129268 153129268 33738768 218141492 218141492 190589320 216754661 700189893 700189893 717490389 717490389 600050900 571550494 571550494 427428015 423336431 680542232 974443055 974443055 934576477 868930803 868930803 17826336 50405904 50405904 174479588 174479588 191396996 191396996 176160660 176160660 139125300 317380050 408868502 408868502 272649856 272649856 364904604 364904604 292950988 421680320 421680320 165448320 159958116 528805542 528805542 414501702 430496770 430496770 589701232 589701232 58792241 25494048 26737248 26737248 25424384 522240 332567574 332567574 165201636 143518788 297842928 831018934 989455522 989455522 565397236 810562720 837852322 837852322 18484736 811676290 811676290 811048194 807689472 806580355 594526848 302858544 42851456 116391040 116391040 377825672 377825672 823197696 968926627 968926627 650287346 932632699 932632699 395602643 374800968 374800968 31166176 9049152 144573444 144573444 17949316 155721728 537336833 570763521 570763521 320619504 569975749 569975749 516006634 384510292 384510292 440545746 643048230 643048230 541458688 294707258 85609440 130598000 295192112 295192112 316855904 316855904 297586592 297586592 54266400 24138112 64401842 332769410 332769410 287904274 564171619 747791171 1065554557 1065554557 1052170591 840437778 840437778 546903256 274346627 697404116 784568588 784568588 495361867 368050664 368050664 270352168 2096640 721775360 721775360 136963332 785461886 785461886 496581589 235268124 725362128 725362128 832269624 832269624 574335259 792108461 792108461 718937268 580930662 599785713 599785713 1051924100 1051924100 901981684 840205790 687031023 432107044 684555297 684555297 277093678 277093678 755532704 943458186 943458186 377526766 377526766 394935392 394935392 183360596 379548688 379548688 329591154 314910930 441249558 465169444 1002073268 1002073268 827337248 408646599 433206756 433206756 190852608 460229922 460229922 144076450 33836688 142655556 174069760 721556532 721556532 555926468 774523944 774523944 219991693 141594372 140263428 141040548 141040548 139731072 139731072 31491000 1049088 539011296 569764833 582146689 582146689 553681521 22022944 20185760 82151874 82151874 351768714 351768714 304281922 908290759 908290759 548537169 548537169 178270998 956502035 956502035 934804192 1043538731 1043538731 932516535 836926311 588732994 261624200 69338732 117839832 120884784 259418212 259418212 134942116 231440488 231440488 940592900 940592900 808242435 447266804 453086636 453086636 358821374 340472970 717232656 717232656 433457861 141429746 326540688 326540688 572707397 879500039 879500039 1014873964 1014873964 930705173 976498515 976498515 939862532 939862532 105383064 81105796 81105796 5420928 64697936 176882336 176882336 491077872 491077872 268806306 264364284 264364284 204508824 204508824 219028524 219028524 1036415095 1036415095 773630105 773630105 523289482 494138286 311957648 1034282867 1034282867 812340723 1025612113 1025612113 1017119055 470355284 470355284 683288592 683288592 763701592 763701592 1003173119 1003173119 522231963 1015035495 1015035495 845674899 308281608 901778067 901778067 420880196 944707029 944707029 133293048 133293048 67327664 58333104 574640496 591398176 591398176 572644377 572644377 564086624 349225386 109125720 279789632 870362289 870362289 666717952 898926642 898926642 69992896 69992896 137104644 197448052 197448052 138548356 201889832 201889832 151952932 159210880 191494128 191494128 50062628 75467816 79311368 79311368 76359776 25182912 899679211 899679211 351854826 153626500 683213949 683213949 548350017 548350017 299182810 603856996 824239778 824239778 902423787 1049757285 1049757285 583266513 88340697 311594678 736436272 738755481 738755481 345105519 246604120 234881052 234881052 212017568 212017568 990129314 990129314 470027287 1039051084 1039051084 900343528 814484547 277662786 286402818 545404992 545404992 1041239573 1041239573 873014283 178141791 77725768 67240208 289504957 705401190 705401190 370805305 370805305 326263072 941935021 941935021 713182551 688526373 472585764 284552130 815891938 815891938 274902756 506268398 506268398 218112152 127174792 594698915 594698915 541360562 515235949 834425060 834425060 671562226 406805328 403301382 387662376 387662376 1031510692 1031510692 961433856 961433856 944296230 716038128 978093886 978093886 705845336 319686548 319686548 239070818 362338168 362338168 65325552 270535024 270535024 152692294 152692294 277349472 520704534 520704534 440402010 285298880 49171568 49171568 189864212 430320543 448801794 510731166 510731166 504103962 1043407374 1043407374 1016894041 538116432 572922183 662712408 662712408 643912798 643912798 822786064 931281259 998691025 998691025 933640547 596579402 596579402 394464256 394464256 813862778 859521849 859521849 1021344139 1021344139 979706252 979706252 549524058 549524058 412290379 608249414 608249414 750651840 750651840 673354005 640828081 590365372 154410112 264118952 264118952 60107376 267727076 538060128 538060128 546481216 546481216 298343650 298343650 286169186 60856818 603771408 603771408 570892896 570892896 662320515 662320515 504046973 704643115 835799265 1012127830 1012127830 495407919 438982772 438982772 910867554 910867554 640158097 652965771 652965771 385033859 643862080 833669919 833669919 804706964 757846222 294535970 262695884 366405156 366405156 516161054 516161054 374271880 374271880 329777602 315585392 315585392 149496792 422979878 467937870 740828489 740828489 399560882 840319859 840319859 610673679 708696089 1007921285 1007921285 788699303 487342138 655905286 655905286 864883764 864883764 584399415 319883778 487850044 487850044 406098352 406098352 319930390 51727746 279583712 292033856 292033856 406532934 406532934 402985254 774379371 774379371 119610128 419059742 419059742 1016174534 1016174534 897677467 847350302 847350302 235940377 75642880 8437824 745965504 745965504 739122189 748609101 748609101 592630057 794821053 794821053 629404116 1005691706 1005691706 306152759 413166278 413166278 205262604 181003476 770949184 770949184 133286637 201344002 520754531 520754531 271668416 956711809 956711809 596918450 971133160 971133160 559362273 395572354 395572354 396435834 396435834 115780848 646102287 646102287 464984574 943925374 943925374 880209285 86032680 576316688 793908431 793908431 827197406 827197406 817242476 898968171 1032938219 1032938219 877349711 807834883 541480203 739569444 739569444 758910765 758910765 618970957 372371928 372371928 293671008 479756770 479756770 430168636 430168636 178442716 188776684 338171012 338171012 296257794 405342440 405342440 360063298 307429696 386622618 386622618 270988066 354472280 354472280 281543714 281543714 311188488 311188488 102422040 302702104 302963730 302963730 387215398 387215398 513592844 513592844 410837060 473400116 628863579 792399533 792399533 617799480 646070894 646070894 840094227 840094227 369115161 817370675 817370675 694327989 827128706 827128706 292569234 458461828 458461828 415114690 402693636 143283296 574363856 574363856 208344996 639273184 639273184 116246609 217584948 217584948 587223448 587223448 688655397 688655397 652513682 652513682 475504463 552675056 1037355533 1037355533 934930299 916777231 916777231 915600704 830149660 830149660 987930388 987930388 738159234 486789042 998229136 998229136 678925650 814879299 929865282 929865282 300756450 935420952 935420952 930461987 1000079848 1000079848 980899570 980899570 731116149 704787037 585711825 585711825 870917224 870917224 607167714 900850539 900850539 700932826 457187560 370766370 370766370 427334144 443157250 443157250 306435474 46933120 46933120 274808832 274808832 33583104 100921400 100921400 84115480 218629164 962359580 962359580 931135419 258696087 686723521 686723521 181588692 666256165 666256165 72616584 47253656 12912640 264192 75891488 1039799496 1039799496 551688334 755377163 755377163 635667841 287851555 14337252 150616383 937242363 937242363 686784911 686784911 897936984 897936984 852995834 852995834 9869376 1017192218 1017192218 901937704 902782464 902782464 663400929 663400929 375622086 375622086 971455855 971455855 943168517 943168517 940046855 706742562 376645656 376645656 261629638 261629638 295380168 371199120 447482340 933632108 933632108 585373347 288367914 104931480 635765492 635765492 553769352 553769352 547756353 252080525 221593745 366520169 978627079 978627079 1047254279 1047254279 977408151 561062244 387930390 506702646 524294796 524294796 476056454 42992192 400918066 400918066 112478098 112478098 113121352 166930240 166930240 155849892 143005764 156763968 156763968 56623632 102155672 102155672 130024633 548984195 930660483 930660483 1017198430 1017198430 648096075 648096075 607391889 607391889 747391422 831384675 1058107100 1058107100 418632818 218436832 235458027 1055752407 1055752407 831404143 883045701 883045701 610550208 588511673 556567761 142254776 903881092 903881092 785117487 27456217 15737024 15737024 336134154 336134154 343145098 378592210 378592210 344246346 349321296 349321296 355265514 355265514 350455112 350455112 432421045 966204645 966204645 705901589 1019284360 1019284360 699670695 675283077 92281581 1448448 1448448 152502336 159457380 159457380 153274480 166078864 166078864 105005264 266189869 714360421 714360421 693288028 693288028 657795897 527356223 305735442 506815288 506815288 740540804 740540804 886089880 886089880 851593732 851593732 610094095 312592656 1052907120 1052907120 927096694 927096694 413319408 413319408 326015856 177566252 984093064 984093064 534262805 660174756 685261088 685261088 265920804 224667340 553410433 553410433 549805088 549805088 739373029 739373029 776063901 776063901 1020265682 1020265682 328756736 328077354 439456607 1009316315 1048527967 1048527967 938956850 923809409 683760856 886121163 886121163 891554154 891554154 622889074 805306464 830472291 830472291 1020466977 1020466977 856503164 404231680 325848498 284887242 284887242 452266888 452266888 447953172 530588136 530588136 303138992 62310800 88247424 88247424 153129268 153129268 33738768 218141492 218141492 190589320 216754661 700189893 700189893 717490389 717490389 600050900 571550494 571550494 427428015 423336431 550141704 974443055 974443055 681109654 60684902 52354608 27437936 37299984 37299984 36769040 38942656 38942656 44478816 62071840 62071840 51483090 317380050 467670388 467670388 307631746 406461334 406461334 520303062 520303062 421680320 421680320 374972956 374972956 528805542 528805542 257969180 568673089 568673089 1012311930 1012311930 861256081 861256081 520448183 466684470 198445122 1028856832 1028856832 868869220 165201636 143518788 297842928 438878166 438878166 433974934 432304704 28286720 36345092 36345092 47579888 47579888 43471092 43471092 86204904 224594088 249770200 520143991 659127569 659127569 191049957 383220175 741943053 898156104 968926627 968926627 650287346 932632699 932632699 395602643 374800968 374800968 170252820 274335362 293475712 293475712 273282592 307848848 537336833 570763521 570763521 427106710 569975749 569975749 193214194 384510292 384510292 188809264 643048230 643048230 541458688 71383074 442368 1573376 1573376 12324816 50073408 50073408 23331056 54266400 54266400 24138112 24138112 42603600 42603600 287520321 564171619 747791171 1065554557 1065554557 830612493 840437778 840437778 45614928 111155024 111284568 784568588 784568588 358773903 368050664 368050664 913268601 913268601 721775360 883144958 883144958 866074924 834731604 726143714 726143714 396596379 823927604 873239841 873239841 560070921 792108461 792108461 742914189 1040412171 1040412171 643376793 1051924100 1051924100 840205790 840205790 687031023 264517147 1018956512 1018956512 277093678 277093678 755532704 943458186 943458186 0 0 735642376 735642376 999109668 999109668 857027393 572571921 989522373 989522373 995841953 1002073268 1002073268 809316099 577119924 332399632 299370210 155714758 134252756 464003377 464003377 185984869 185984869 544201152 721556532 780589149 780589149 780589149 761227209 761227209 773841876 773841876 769922373 588603954 836762881 836762881 570212833 907067931 907067931 827361505 646187097 686082501 981897427 981897427 836986922 235312002 240632072 240632072 482576644 482576644 437422104 437422104 404750598 262 178270998 956502035 956502035 934804192 585624124 177640328 249874908 249874908 242252772 128653544 128653544 152957616 152957616 121393384 135071332 135071332 167261572 167261572 940592900 940592900 808242435 447266804 447266804 358821374 358821374 340472970 132653378 101192749 413171777 487772204 952235348 952235348 572707397 572707397 368909306 1014873964 1014873964 930705173 976498515 976498515 939862532 939862532 152634976 280611564 280611564 282187222 322170736 395853474 395853474 189455928 169008980 521279768 521279768 403365456 403365456 204508824 219028524 219028524 112347200 608237776 773630105 773630105 350682854 350682854 287637826 249205725 812340723 812340723 1025612113 1025612113 1017119055 470355284 470355284 683288592 683288592 763701592 763701592 171776112 338996314 371936530 371936530 228331116 303501634 308281608 310749506 310749506 410815350 410815350 406586676 264315132 264315132 402593722 402593722 374370320 374370320 309015954 286292536 302914578 302914578 117646888 96419688 279789632 279789632 76546632 76546632 76056840 109893920 109893920 42897760 19322528 160510784 162156836 162156836 688622625 688622625 681376896 681376896 206731657 612434344 612434344 558100641 673951364 674573061 674573061 551255368 228713740 228713740 81789568 126993984 126993984 274141976 548350017 548350017 299182810 737164384 824239778 824239778 381775047 507516852 507516852 522413469 522413469 311594678 736436272 738755481 738755481 345105519 2163200 2163200 18350080 18350080 188817440 990129314 990129314 415968780 163576228 900343528 900343528 814484547 277662786 286402818 286402818 429341286 429341286 735385289 735385289 1065763477 1065763477 783556254 783556254 705401190 705401190 370805305 370805305 184550260 134480022 21209248 21229728 138440740 168598597 570950673 815891938 815891938 274902756 506268398 767988291 767988291 492096174 921170015 921170015 541360562 424673958 834425060 834425060 406805328 823270969 823270969 705901590 705901590 1031510692 1031510692 816856221 944296230 944296230 891950379 978093886 978093886 402673325 106684286 464338104 487451694 487451694 254127116 234940674 270535024 270535024 95072720 121296696 121296696 128760320 128760320 113694736 113694736 156220516 156220516 189864212 430320543 430320543 510731166 510731166 510068748 1043407374 1043407374 1016894041 538116432 572922183 662712408 851619220 851619220 643912798 801505462 931281259 998691025 998691025 933640547 596579402 596579402 477620321 891239979 891239979 859521849 859521849 604506189 638323737 740275312 740275312 697978960 723043893 723043893 505547416 604018692 604018692 673354005 673354005 640828081 590365372 57808820 149325984 164627172 164627172 27263328 538060128 538060128 546481216 546481216 298343650 298343650 286169186 633739936 662739547 839735379 839735379 658581641 383720672 383720672 624497512 624497512 835799265 835799265 584352739 280478760 280478760 107707882 910867554 910867554 640158097 652965771 652965771 550369688 369401842 369401842 804706964 804706964 757846222 294535970 262695884 366405156 366405156 516161054 516161054 360398970 421453350 421453350 315585392 315585392 149496792 422979878 467937870 467937870 268574836 340958102 405460230 407767948 610673679 708696089 1007921285 1007921285 421151282 454205958 655905286 655905286 219659406 520094109 1011161376 1011161376 487850044 487850044 406098352 406098352 393110082 393110082 281587168 292033856 292033856 21631200 21631200 19694912 44120896 119610128 119610128 616636632 616636632 591856714 642627817 642627817 630237938 348514506 931507344 931507344 807243505 731181680 731181680 669276084 748609101 779771796 779771796 794821053 794821053 629404116 1005691706 1005691706 306152759 413166278 413166278 205262604 181003476 261124687 455195137 797381497 797381497 520754531 520754531 269676704 956711809 956711809 596918450 592250483 1050282224 1050282224 641018031 641018031 874635555 874635555 611965240 611965240 333783242 400237198 400237198 143469636 143469636 86032680 157832670 275399000 275399000 436790354 436790354 817242476 898968171 1032938219 1032938219 877349711 807834883 541480203 767706593 767706593 487328814 487328814 747372485 747372485 293671008 293671008 345005280 345005280 276057072 490886440 490886440 409519494 248420526 161090444 214185696 405342440 405342440 360063298 307429696 386622618 386622618 328216864 354472280 354472280 281543714 281543714 59247696 222303662 271193346 472530310 472530310 342834570 387215398 387215398 513592844 513592844 410837060 410837060 628863579 792399533 792399533 617799480 298217606 637571594 840094227 840094227 404415488 817370675 817370675 694327989 827128706 827128706 64506608 186960388 186960388 39846288 41306512 41306512 574363856 683671765 683671765 639273184 639273184 116246609 179314884 179314884 587223448 587223448 688655397 688655397 560274856 650278168 650278168 288839035 917529632 934930299 934930299 848266056 915600704 915600704 830149660 830149660 987930388 987930388 738159234 486789042 239014578 239014578 318374076 498734958 498734958 255858642 0 876732568 876732568 441719108 1000079848 1000079848 217126109 404126217 1011862532 1011862532 881946944 881946944 870917224 870917224 607167714 900850539 900850539 700932826 457187560 370766370 370766370 427334144 443157250 443157250 306435474 268771655 754100357 1011134605 1011134605 872890889 872890889 789392693 957677601 991691315 991691315 962359580 931135419 811710885 694641027 168297492 157471140 157471140 126020884 187686521 866606406 866606406 94975780 562506593 562506593 568665579 953100419 953100419 755377163 635667841 287851555 47236608 150616383 937242363 1042432040 1042432040 781359059 897936984 897936984 626974080 141872685 676994308 818506475 818506475 901937704 902782464 902782464 663400929 926016091 926016091 912859537 971455855 971455855 943168517 943168517 940046855 977294081 977294081 390470370 855769833 855769833 295380168 295380168 447482340 933632108 933632108 585373347 170071500 631508736 634524393 634524393 779903284 800644605 800644605 626870781 622281833 793955163 978627079 1015605198 1047254279 1047254279 977408151 561062244 63645346 470296384 470296384 476056454 476056454 321982370 400918066 400918066 112478098 112478098 113121352 174142766 408422274 408422274 107616826 382601536 382601536 374413362 374413362 332665264 130024633 548984195 930660483 930660483 1017198430 1017198430 648096075 648096075 382124866 382124866 313326474 181730742 467717962 467717962 418632818 102715392 235458027 1055752407 1055752407 831404143 883045701 883045701 577953520 573909777 76874073 59642376 96069480 523338528 523338528 98244312 98244312 44543928 336134154 336134154 396532419 836038891 836038891 593752497 653533507 756350981 756350981 509149873 842531080 842531080 530022436 966204645 966204645 952984250 891139106 675638441 326707122 326707122 180926402 157686532 190441140 439148532 445379670 445379670 291486932 166078864 166078864 97481060 266189869 714360421 714360421 639476449 656673081 656673081 641350913 305735442 488202772 609111841 740540804 740540804 154436137 144054852 851593732 851593732 47351106 519647056 1052907120 1052907120 927096694 927096694 339923098 339923098 419954706 419954706 286277666 210110368 210110368 660174756 685261088 685261088 265920804 224667340 553410433 562047136 562047136 704768240 739373029 739373029 776063901 776063901 1020265682 1020265682 328756736 328077354 307126400 307126400 310177858 938956850 938956850 923809409 541716136 886121163 886121163 891554154 891554154 622889074 351305809 367404722 656092050 1020466977 1020466977 856503164 325848498 325848498 21234962 17437728 17437728 8691808 17164320 25249856 100729392 100729392 102689000 102689000 105533464 105533464 105964064 487600694 487600694 324219524 269711038 419911738 419911738 72663632 109316184 600609938 966265719 966265719 587666176 595016625 595016625 863815985 863815985 428236880 428236880 60684902 52354608 27437936 37225744 37562752 38274192 38274192 110835480 110835480 309790114 309790114 391063776 391063776 467670388 467670388 307631746 406461334 406461334 520303062 520303062 266961564 266961564 374972956 374972956 134530740 353686688 353686688 568673089 568673089 1012311930 1012311930 861256081 861256081 520448183 466684470 198445122 1028856832 1028856832 868869220 42542160 42542160 42542160 61467648 61467648 32349248 32349248 28286720 36345092 36345092 47579888 47579888 167975136 167975136 167323936 224594088 249770200 520143991 895723523 895723523 252342315 383220175 1031315632 1031315632 943996684 354951214 781714296 781714296 646528768 724899400 776151272 776151272 201722212 274335362 444598900 444598900 273282592 934816024 934816024 170596404 448372418 845071204 845071204 239813207 991895946 991895946 707530005 89132333 456267914 456267914 406135338 124630456 84303328 84303328 301576928 301576928 315960336 315960336 312503314 270567952 6735872 1114112 14385808 268773378 277828610 277828610 490402850 490402850 286873388 135168 0 344000520 923018332 923018332 1013017473 1013983631 1013983631 449142545 282111240 282111240 9554496 913268601 913268601 507471693 883144958 1037873584 1037873584 834731604 726143714 726143714 792648992 823927604 873239841 873239841 560070921 488946705 488946705 742914189 1040412171 1040412171 643376793 518140933 651101918 651101918 630460592 312660306 725101293 1039903428 1039903428 770712253 1047092810 1047092810 223700386 422366750 422366750 309124262 735642376 735642376 999109668 999109668 857027393 572571921 989522373 989522373 995841953 995841953 809316099 809316099 577119924 313506260 455750306 455750306 324935346 464003377 464003377 185984869 185984869 544201152 544201152 780589149 780589149 780589149 761227209 761227209 773841876 773841876 769922373 588603954 836762881 836762881 570212833 907067931 907067931 827361505 646187097 686082501 981897427 981897427 836986922 235312002 436517638 436517638 482576644 482576644 673491073 673491073 404750598 448088894 1042410064 1042410064 974390624 1067123054 1067123054 731066674 199180020 331294719 764950143 764950143 189369062 329306262 329306262 316789714 306762784 135071332 195897748 195897748 0 54809089 307614225 307614225 5683378 17306656 17306656 90833152 90833152 101192749 413171777 487772204 952235348 952235348 838934562 692081201 590822193 590822193 361220721 354683178 278270824 55624368 494649330 494649330 152634976 280611564 280611564 282187222 322170736 395853474 395853474 189455928 169008980 521279768 521279768 403365456 403365456 109074312 121635000 121635000 160009320 161431140 161431140 35237428 181717424 208160824 208160824 107842004 213484568 1049372485 1049372485 461425224 620874534 849470063 890473027 1007762979 1007762979 404620881 781263374 781263374 766251602 371936530 371936530 228331116 303501634 303501634 310749506 310749506 410815350 410815350 406586676 325261922 325261922 822944827 823697926 823697926 704754695 309015954 571254916 571254916 537396225 856564270 856564270 927075382 927075382 76546632 76546632 76056840 109893920 109893920 90723340 166204512 166204512 162156836 162156836 688622625 688622625 681376896 681376896 206731657 612434344 612434344 558100641 673951364 674573061 674573061 551255368 204571784 336154923 875645873 913186203 913186203 638253955 538128897 908410055 908410055 737164384 978076448 978076448 381775047 507516852 507516852 522413469 522413469 536891802 912445851 912445851 318949291 858817052 858817052 723026590 723026590 468214487 302063854 248087784 778251871 778251871 458782404 458782404 387075412 663100536 856669717 856669717 757083726 757083726 984014624 984014624 735385289 1065763477 1065763477 783556254 783556254 38296207 67122440 162726176 184550260 705235124 705235124 659104953 588786089 675156865 675156865 570950673 570950673 473002372 437070870 313949816 1041633354 1041633354 989904951 921170015 921170015 402650697 77594184 772414792 772414792 918359912 918359912 823270969 705901590 705901590 705836572 196911256 558903080 723440571 733009725 891950379 891950379 749510186 390990992 390990992 464338104 487451694 487451694 254127116 234940674 422947952 422947952 95072720 178467156 442835536 442835536 335250482 335250482 325830784 156220516 240913160 240913160 505160784 505160784 410067846 410462336 510068748 515627400 545395022 545395022 436588544 184565760 218391810 851619220 851619220 245774768 480597848 480597848 221898540 149456472 110642628 116141488 134801856 477620321 891239979 891239979 220004719 604410902 1041004575 1041004575 1040660511 740275312 697978960 948825159 948825159 505547416 541367070 541367070 104222861 68422152 68422152 264712 23333376 160440608 164627172 164627172 10824000 47600993 567923281 567923281 566306147 566306147 283189698 284220530 682757748 682757748 839735379 839735379 808261915 757843517 753923796 990022228 990022228 518596062 518596062 243859842 262855748 262855748 691660992 691660992 620589273 93854601 78782400 550369688 550369688 141158800 169684500 265358504 265358504 689037861 697402469 697402469 580221089 672261120 672261120 151924900 182889508 421453350 421453350 411391152 810822098 952893469 952893469 937438898 67379216 406077952 475955206 477027726 477027726 407767948 339351306 141825034 155451432 405455882 405455882 609279390 907808283 907808283 520094109 1011161376 1011161376 151068708 151068708 55595776 108004248 393110082 393110082 295049826 55789794 41586144 16173440 53233664 53341488 53341488 17961504 109125760 814879587 814879587 638600288 642627817 809549994 809549994 348514506 931507344 931507344 807243505 731181680 731181680 602594852 655863827 779771796 779771796 157939428 388989681 535160979 883797382 883797382 617548609 911386491 1026597601 1026597601 910976435 356658705 940784245 940784245 797381497 221534474 167821332 281561088 281857218 281857218 272679490 592250483 1050282224 1050282224 641018031 641018031 874635555 874635555 611965240 611965240 570233229 228540012 885325946 885325946 648297423 469254130 633325392 633325392 681052047 1007280708 1007280708 113455944 113455944 68495880 155544200 155544200 151382052 135662752 767706593 767706593 363643980 292860168 747372485 747372485 327074580 327074580 345005280 345005280 230197248 493682622 493682622 409519494 267014610 267014610 110673454 280223754 280223754 337772568 369717272 369717272 334078714 328216864 328216864 293736976 293736976 374769472 374769472 470289458 470289458 472530310 472530310 354683848 354683848 284429250 381207182 381207182 72896346 45106516 2831616 331680580 459202230 459202230 298217606 444637860 444637860 404415488 404415488 338825242 338825242 269619714 41944128 34079760 15468736 168856592 168856592 15714004 148244932 148244932 139727492 683671765 683671765 551809028 551809028 33685504 179314884 179314884 173793741 173793741 104857752 439780937 831084911 831084911 770717118 939660921 939660921 498522990 498522990 999242871 999242871 999242871 239599648 256378044 256378044 154554576 201343512 201343512 860514938 875994582 875994582 811635955 811635955 573371841 830823541 830823541 807688216 615170384 715003970 885919581 885919581 815793152 1011862532 1011862532 881946944 881946944 652214745 342921283 342181392 35170698 15254976 134979712 313598400 313598400 18751008 18751008 488644652 488644652 270606594 300860655 754100357 1011134605 1011134605 989704671 989704671 1032057191 1032057191 991691315 991691315 891773086 811710885 811710885 725322853 725322853 170673225 539670728 593875988 593875988 866606406 866606406 94975780 562506593 562506593 568665579 953100419 953100419 260398100 260398100 235279116 162665152 437257330 456132324 1042432040 1042432040 781359059 592183903 626974080 626974080 141872685 676994308 676994308 3409409 0 8175652 143132576 143132576 926016091 926016091 912859537 912859537 836498426 836498426 790406929 790406929 977294081 977294081 390470370 855769833 943911497 943911497 683758296 683758296 1007365596 1007365596 679296277 525992332 631508736 634524393 634524393 779903284 800644605 800644605 626870781 622281833 1042229256 1042229256 1015605198 1015605198 266477780 238616984 238616984 223549390 470296384 470296384 470099982 1005652985 1005652985 259295174 243525856 243525856 235502648 170468648 660157945 660157945 573694668 794752888 794752888 382601536 374413362 374413362 332665264 102029104 102029104 641486000 641486000 583002432 583002432 537232400 34188545 39617360 42397320 100752128 102160920 281260448 281260448 201117684 201117684 102715392 610320320 612893769 612893769 122409672 577953520 577953520 615514372 741553453 741553453 807067969 807067969 772318074 772318074 357107584 847319697 847319697 120867848 396532419 836038891 836038891 593752497 653533507 756350981 756350981 509149873 842531080 842531080 530022436 530022436 952984250 952984250 891139106 675638441 326707122 326707122 259106528 240080156 190441140 439148532 445379670 445379670 291486932 57068944 57068944 103437712 104994704 104994704 639476449 639476449 656673081 656673081 641350913 253003577 152956452 609111841 609111841 606819584 942153093 942153093 847032673 847032673 976483095 976483095 519647056 74449800 650913136 676560377 676560377 603424555 516033233 419954706 966037289 966037289 822291996 688260608 297371730 297371730 18874656 295445346 411583622 562047136 562047136 704768240 704768240 700498149 748242626 748242626 106722189 121632648 379199872 383988122 383988122 549189441 822049747 822049747 642155658 642155658 549718209 547356993 547375104 547375104 377798968 388024704 388024704 383778818 665848386 665848386 447948919 476180874 476702094 476702094 291289258 81567086 456859976 487268212 487268212 510857112 510857112 387162336 278844098 278844098 105533464 388156548 472332558 487600694 487600694 324219524 269711038 419911738 780819669 780819669 1036044477 1036044477 977814776 966265719 801316701 801316701 741344013 863815985 863815985 141638438 141638438 352156128 628050403 688001061 996284818 996284818 260971644 260971644 151915216 110835480 309790114 309790114 391063776 391063776 304231728 404751438 404751438 411042006 411042006 302252232 144228358 144228358 249154792 326166288 330404046 330404046 353686688 353686688 422296478 422296478 401675758 465582958 496286524 496286524 410228854 410228854 231999674 408326528 408326528 178467156 178467156 151520292 305810432 412802870 422957126 422957126 402703392 12533568 29187168 29187168 17949216 17949216 167975136 167975136 167323936 167323936 187404636 245527860 895723523 895723523 319547424 248441234 1031315632 1031315632 943996684 644556170 781714296 781714296 646528768 724899400 776151272 776151272 201722212 201722212 444598900 545259521 977419941 977419941 944832773 963456423 963456423 845071204 845071204 239813207 991895946 991895946 707530005 189221619 702925798 993128720 993128720 124630456 84303328 305433104 318544514 318544514 316181250 315960336 312503314 270567952 33736192 9362624 11659840 268773378 277828610 300344145 864156339 864156339 286873388 238801694 361632116 882754561 923018332 923018332 1013017473 1013983631 1013983631 728012552 475449907 430541484 429747014 424555208 424555208 271429280 602653829 1037873584 1037873584 582676270 514425949 10913632 792648992 792648992 758415488 758415488 56346416 56346416 197259712 197259712 186782004 176417264 38013072 1071001684 1071001684 630460592 630460592 312660306 725101293 1039903428 1039903428 770712253 1047092810 1047092810 588792613 637535009 637535009 604062892 319765680 319765680 57410560 53292336 53292336 34146592 272589344 272589344 1002457652 1002457652 187736311 185630740 311118322 818975904 818975904 827975331 827975331 1002232422 1002232422 696254565 960306484 960306484 220726600 220726600 254247300 265100500 265100500 22681860 101124888 120264464 120264464 37369144 29747168 18198752 15390144 9792832 71100928 71100928 9456328 138153732 138153732 135907328 187095348 187095348 436517638 436517638 272767496 272767496 673491073 673491073 392481210 566240128 1042410064 1042410064 974390624 1067123054 1067123054 781585804 917640027 917640027 764950143 764950143 735054084 735054084 329306262 316789714 306762784 69011128 195897748 195897748 577004064 577004064 17926545 50432176 936725064 936725064 806095891 353903363 112076898 100669496 100669496 474022028 544343638 838934562 838934562 692081201 590822193 590822193 545689633 637524293 1022040785 1022040785 869984755 854635112 207144588 207144588 114664444 85476616 102384440 260323880 260323880 203657712 155753148 58083928 194253020 194253020 109074312 109074312 121635000 121635000 160009320 161431140 161431140 35237428 181717424 181717424 72902916 651980793 651980793 1049372485 1049372485 461425224 620874534 849470063 890473027 1007762979 1007762979 404620881 781263374 781263374 766251602 142741572 210665996 210665996 204496204 142741572 105112536 74761496 185704896 185704896 31471808 325261922 325261922 822944827 823697926 823697926 704754695 304966065 571254916 571254916 537396225 1026693144 1026693144 927075382 927075382 205213056 10245376 320767818 320767818 324045056 324045056 274356864 166204512 143749920 161149828 161149828 18615840 688480768 688480768 138937476 153216160 153216160 2228480 552027904 552027904 72060750 414213314 414213314 336154923 875645873 913186203 913186203 638253955 576180768 908410055 908410055 505216718 978076448 991091597 991091597 306746951 284214210 363065706 585774210 585774210 912445851 912445851 318949291 858817052 858817052 723026590 723026590 468214487 302063854 248087784 778251871 778251871 458782404 458782404 448245362 663100536 856669717 856669717 757083726 757083726 984014624 984014624 183655428 183655428 597690545 597690545 497070324 629700194 981698671 981698671 422070282 705235124 721502380 721502380 674555033 675156865 675156865 241172124 473002372 473002372 437070870 329665556 1041633354 1041633354 989904951 917349850 917349850 910164123 1047270302 1047270302 531372378 918359912 918359912 622792740 622792740 253525037 211093548 196911256 558903080 723440571 733009725 733009725 849663290 849663290 390990992 390990992 374217882 86644008 320651544 388762922 396299834 422947952 422947952 388229970 276901890 442835536 442835536 335250482 335250482 325830784 7629584 240913160 240913160 505160784 505160784 272445186 368383683 368383683 762011496 762011496 545395022 1043467348 1043467348 1012359462 1012359462 950202397 1067463696 1067463696 981848411 1007012077 1007012077 877849495 627184041 228735279 782356748 782356748 899854671 899854671 690221349 1041004575 1041004575 1040660511 436279305 689918050 948825159 948825159 701836533 647050197 213363521 787982281 787982281 676499712 676499712 23333376 160440608 163651812 163651812 10824000 47600993 567923281 567923281 566306147 566306147 283189698 290719472 682757748 682757748 580310933 808261915 808261915 757843517 753923796 990022228 990022228 518596062 518596062 243859842 398593064 398593064 691660992 691660992 948124306 948124306 780189789 176609364 176609364 141158800 804645885 804645885 265358504 689037861 697402469 697402469 580221089 672261120 672261120 135087172 182889508 182889508 411391152 411391152 810822098 952893469 952893469 937438898 263506812 406077952 475955206 477027726 477027726 606627217 879559945 879559945 710560795 789857579 789857579 651193476 907808283 907808283 252283444 412223920 412223920 312612038 81277114 440478608 440478608 346921746 346921746 295049826 60444290 59723104 16173440 53233664 53341488 53341488 17961504 17961504 814879587 814879587 638600288 390879434 809549994 809549994 319029418 390193488 390193488 364929048 610278111 653782478 653782478 172003336 239259804 582492976 582492976 388989681 535160979 883797382 883797382 617548609 911386491 1026597601 1026597601 910976435 623038720 940784245 940784245 717774128 221534474 203546940 281561088 281857218 281857218 272679490 83150506 673088812 673088812 304632233 35785026 231249364 231249364 42603584 570233229 570233229 228540012 885325946 885325946 648297423 469254130 633325392 633325392 681052047 1007280708 1007280708 334936678 334936678 128410672 128410672 23528520 387600058 387600058 596171258 896009643 896009643 1007158287 1007158287 381436500 327074580 327074580 237666636 237666636 230197248 493682622 493682622 714611939 767971665 767971665 943909731 943909731 280223754 337772568 540755267 667064305 773273094 773273094 111462696 293736976 304218688 374769472 580166195 580166195 470289458 578990225 578990225 354683848 642042688 642042688 604293129 536102977 587892943 644749709 1000628182 1000628182 469025742 469025742 278192052 44433604 44433604 421056528 465229686 465229686 269006772 269006772 411258212 426539734 426539734 8900934 16067520 16067520 148244932 148244932 139727492 146806848 146806848 39026816 8417872 33685504 44188240 44188240 74658128 541986560 541986560 953816775 953816775 831084911 770717118 939660921 939660921 498522990 906349968 999242871 999242871 999242871 1063329464 1063329464 589335072 617818238 617818238 280955444 860514938 875994582 875994582 811635955 811635955 573371841 830823541 830823541 615170384 615170384 715003970 885919581 885919581 1006755856 1006755856 302988306 302988306 43256400 315991104 342181392 342181392 75573568 75573568 134979712 134979712 324701306 324701306 297419408 488644652 488644652 371727820 371727820 703641773 703641773 621077381 989704671 989704671 1032057191 1032057191 524458062 891773086 891773086 760000961 760000961 725322853 776881057 776881057 539670728 832120419 832120419 574629618 942418592 942418592 702747427 758973117 778516893 778516893 1073331756 1073331756 912312971 912312971 462427270 998252219 998252219 948181087 948181087 866390492 817811006 817811006 648768515 448806935 3968772 685262725 685262725 943745604 968913504 968913504 143132576 167249892 167249892 331750572 444996830 836498426 836498426 790406929 790406929 521429282 521429282 805374626 805374626 943911497 943911497 683758296 683758296 1007365596 1007365596 679296277 778167195 778167195 831999266 831999266 671554017 792540605 792540605 757728204 212705664 1042229256 1042229256 987459424 1026106823 1026106823 238616984 238616984 344135304 344135304 373645713 470099982 1014312990 1014312990 1044455583 1044455583 822256349 556276560 699416441 699416441 660157945 573694668 794752888 794752888 150807296 124059920 124059920 97794280 400197745 861236251 861236251 809409230 809409230 537232400 886583945 886583945 849609755 849609755 136206390 168472096 168472096 389662172 389662172 201117684 225197117 610320320 664481048 1051405258 1051405258 731000068 782765365 782765365 741553453 741553453 807067969 807067969 772318074 772318074 357107584 847319697 847319697 73234186 351721764 380802046 380802046 296449936 296449936 303681058 303681058 234670122 205898008 205898008 321524288 330827634 330827634 120064064 120064064 113923048 102435632 259106528 259106528 240080156 65611248 65611248 71930072 71930072 69730816 69730816 57068944 103437712 104994704 104994704 62241216 88921944 110432312 110432312 168143920 267234760 312053884 368524266 490175306 1014455174 1014455174 942153093 847032673 847032673 976483095 976483095 1034225619 1034225619 827597939 827597939 676560377 603424555 649912238 649912238 966037289 966037289 825103552 985732160 985732160 818685972 18874656 567355396 567355396 556000740 820646374 820646374 711532977 566630695 1027441856 1027441856 383837636 383837636 379199872 383988122 383988122 549189441 822049747 822049747 661488912 661488912 652382730 652382730 547356993 377798968 377798968 388024704 388024704 549848088 665848386 665848386 314581248 476180874 476702094 476702094 503733048 503733048 456859976 487268212 487268212 510857112 510857112 387162336 278844098 278844098 96796184 388156548 472332558 472332558 436279576 209736462 509001740 509001740 780819669 780819669 1036044477 1036044477 977814776 547763692 801316701 801316701 741344013 272172489 363361248 363361248 341571210 705277938 705277938 688001061 996284818 996284818 260971644 260971644 151915216 23141912 50594848 50594848 53359616 218828284 218828284 404751438 404751438 414604056 414604056 302252232 144228358 144228358 520884066 520884066 480030314 408022612 386610530 386610530 379618018 379618018 273741474 502473622 502473622 496286524 410228854 410228854 231999674 408326528 408326528 178467156 178467156 151520292 305810432 412802870 422957126 422957126 402703392 4735360 37333188 37333188 49284048 49284048 165014388 165014388 210187148 225653676 225653676 245527860 1048114612 1048114612 319547424 270543118 421530888 486548778 486548778 644556170 778569117 778569117 575260128 649528868 692206120 692206120 377261204 268485520 275825216 545259521 977419941 977419941 944832773 963456423 963456423 494524575 815163537 815163537 777360312 777360312 727853557 189221619 702925798 993128720 993128720 59350706 21968034 305433104 552656307 552656307 318800754 587213233 587213233 323207218 48809296 334256320 334256320 554080707 554080707 827907520 864156339 864156339 238801694 238801694 361632116 882754561 882754561 275109386 907187208 907187208 858016808 858016808 475449907 456214996 429747014 433251524 975696852 975696852 982594325 982594325 824254755 767550396 782502237 782502237 376642391 40184208 44310720 52551984 66199664 66199664 197259712 197259712 186782004 176417264 38013072 1071001684 1071001684 628397280 759421605 759421605 876314113 881802315 881802315 807667971 807667971 537936801 588792613 637535009 637535009 604062892 852055438 852055438 676634192 676634192 551355489 801711721 801711721 563691569 1002457652 1002457652 505155102 505155102 461901912 818975904 818975904 827975331 827975331 1002232422 1002232422 696254565 974137571 974137571 1059209298 1059209298 283807933 265100500 265100500 22681860 3146496 120264464 120264464 93160522 815831265 815831265 623774753 901360995 901360995 376250769 859018291 859018291 876262966 1006297118 1006297118 222697616 442800514 506072248 506072248 422057350 460473480 460473480 579167756 579167756 566240128 963914582 963914582 909446949 781585804 781585804 917640027 917640027 717620903 540027150 735054084 735054084 144179424 30149632 30149632 69011128 69011128 56048240 577004064 577004064 563085921 845646211 936725064 936725064 806095891 353903363 112076898 100669496 100669496 474022028 544343638 810891568 863114163 863114163 369412122 505544767 545689633 637524293 1022040785 1022040785 869984755 854635112 369772544 389480538 389480538 365515448 321703218 275096752 260323880 203657712 13630656 36834064 46160576 46160576 40556680 68196360 78118920 78118920 845555795 845555795 72825480 66192184 331113042 331113042 72902916 651980793 651980793 630030705 671647059 1050673503 1050673503 398020137 201713676 152144384 83886120 9301056 11378944 50355328 108888424 142741572 210665996 210665996 204496204 142741572 90181752 62005724 185704896 185704896 211507184 333561392 359187882 359187882 544041398 544041398 441343139 388047162 388047162 336866322 370745656 1026693144 1026693144 343158338 343158338 205213056 346009720 346009720 320767818 324045056 324045056 274356864 34129280 136017088 161149828 161149828 155192353 688480768 688480768 138937476 637162312 637162312 547582657 552027904 671626436 671626436 543195652 414213314 76889760 350964912 350964912 307826120 576180768 576180768 211554489 242420546 505216718 848870034 991091597 1045123822 1045123822 824915235 363065706 585774210 663241256 663241256 580437585 221423129 572540056 695780745 695780745 105415485 52969680 68272136 125030744 125030744 30483168 370275048 370275048 448245362 448245362 305271570 201474368 383115792 383115792 315436242 101298644 183655428 213914992 597690545 597690545 497070324 629700194 981698671 981698671 422070282 422070282 721502380 721502380 686343621 626582981 137817184 26073860 322569728 322569728 421351968 421351968 403700742 412929606 1044022576 1044022576 611560740 910164123 1047270302 1047270302 380388100 671702553 671702553 440101703 440101703 210838092 268924326 471927200 879013452 970827468 970827468 750133348 849663290 849663290 385910997 270009858 272368546 290720418 320651544 388762922 396299834 396299834 388229970 388229970 276901890 276901890 49690720 53321456 57801520 57801520 41037600 60611616 60611616 458035009 458035009 272445186 368383683 368383683 762011496 762011496 469034280 1043467348 1043467348 1012359462 1012359462 950202397 1067463696 1067463696 981848411 1007012077 1007012077 877849495 758790733 245559628 782356748 782356748 899854671 899854671 690221349 725141301 725260085 725260085 587873140 634269728 683620041 701836533 701836533 647050197 266513732 787982281 787982281 676499712 676499712 8425424 145804308 246551388 246551388 251062740 251062740 131739200 13978480 13705920 282717792 282717792 405274680 615570578 615570578 613473952 613473952 56086201 581897045 581897045 485337031 485337031 429539979 400345662 1049938637 1049938637 521409066 769094891 927939768 963595907 1056890847 1056890847 176609364 453273098 453273098 804645885 804645885 185699281 291029696 291029696 277922432 277922370 277922370 269534276 134792196 138585250 325276690 325276690 275387654 192942454 293601378 294685858 294685858 681887653 681887653 418433792 906379923 906379923 712381198 879559945 879559945 710560795 789857579 789857579 654520377 651193476 783487016 828646491 828646491 773660290 352321838 352321838 533325110 533325110 391891984 391891984 281787090 181393332 181393332 305662466 324582210 324582210 646846223 646846223 328676314 977936751 977936751 146800708 146800836 490735858 593502736 844171675 844171675 125084235 307274456 523361666 653782478 653782478 755361166 755361166 721238285 582492976 430527616 430527616 499258512 499258512 175737094 175989396 371831684 405225374 623038720 623038720 372301486 717774128 717774128 219160117 203546940 253878540 343723914 1055148314 1055148314 478414147 452460820 452460820 405274758 59278592 207509254 207509254 42603584 850079974 850079974 1003071396 1003071396 680137797 270846209 483704974 483704974 431141132 708190481 708190481 741626569 772833616 772833616 128410672 128410672 389055774 389055774 486722828 596171258 896009643 896009643 1007158287 1007158287 930356493 277929682 203444760 237666636 254128064 254128064 581697675 810040337 810040337 767971665 767971665 943909731 943909731 607688432 611034683 645530123 667064305 773273094 773273094 401653970 401653970 941857053 941857053 780329013 780329013 12705984 801203176 801203176 53539837 642042688 642042688 604293129 866386299 925893435 925893435 1000628182 1000628182 469025742 469025742 278192052 427946390 427946390 421056528 465229686 465229686 269006772 269006772 436175556 436175556 426539734 278172822 438939280 438939280 411913168 16128704 5247104 12847680 39323280 39323280 7026320 6817152 44188240 44188240 103437897 651199768 651199768 953816775 953816775 692663396 549589185 139010245 111317480 111317480 906349968 906349968 879306123 879306123 1063329464 1063329464 589335072 617818238 617818238 280955444 462623872 462623872 318374076 302919012 277757956 401377562 401377562 249702496 130058376 339740800 339740800 335941658 509681740 1006755856 1006755856 302988306 302988306 43256400 315991104 315991104 205203084 75573568 75573568 135384640 135384640 324701306 324701306 297419408 297419408 261819818 371727820 394841846 394841846 158472968 288756282 288756282 452515436 527698878 723780542 723780542 472458510 472458510 760000961 812370787 1037994438 1072457399 1072457399 715662602 832120419 832120419 591590412 942418592 942418592 702747427 758973117 778516893 778516893 1073331756 1073331756 912312971 912312971 462427270 998252219 998252219 948181087 1063270235 1063270235 817811006 817811006 648768515 448806935 35803412 685262725 685262725 943745604 968913504 968913504 597747731 597747731 1051266117 1051266117 628832253 710590120 790385351 799015293 799015293 397452217 390144186 805374626 805374626 424088381 6365568 385931846 385931846 893379989 893379989 538124433 778167195 778167195 831999266 831999266 671554017 792540605 792540605 757728204 212705664 770062830 987459424 987459424 1026106823 1026106823 387738520 439807678 439807678 442522174 442522174 67317768 1014312990 1014312990 1044455583 1044455583 822256349 680533044 699416441 699416441 656257349 52742448 100906832 131837056 131837056 124059920 124059920 97794280 400197745 861236251 861236251 809409230 809409230 477316573 886583945 886583945 849609755 849609755 750594589 750594589 730032133 667274992 594523345 460998850 706011141 706011141 664481048 1051405258 1051405258 954922972 806074180 929864340 929864340 630642700 630642700 291116514 691679396 691679396 495129487 97715072 97715072 81389256 81389256 660309369 660309369 632026473 296449936 303681058 303681058 234670122 356532656 511745110 695378191 695378191 679768898 679768898 1070024587 1070024587 184817956 222421664 654871961 654871961 694342068 731804533 731804533 770213357 770213357 689536285 611728445 569850849 252448420 563877453 775363076 775363076 610346369 550779480 248481961 719922645 763984849 763984849 490175306 1014455174 1014455174 682957633 454288950 454288950 614678540 614678540 1034225619 1034225619 870989461 848959059 450831815 481396100 781535726 781535726 539820061 806225312 825103552 985732160 985732160 818685972 388515354 708524674 708524674 413188422 820646374 820646374 711532977 566630695 1027441856 1027441856 383837636 383837636 236819934 232403932 232258284 883900107 883900107 341785411 661488912 822690841 822690841 652382730 325286024 811667715 811667715 941248770 941248770 549848088 549848088 101193921 314581248 497167428 497167428 260640844 503733048 503733048 146770002 60891504 23214816 118821184 205594660 205594660 151490692 151490692 88352840 781189157 781189157 1017256258 1043730794 1043730794 1032847495 1032847495 822252228 840323074 840323074 969017838 969017838 832704867 527962325 109577304 371217496 371217496 363361248 363361248 1051258544 1051258544 705277938 32877095 320652306 320652306 39895440 101165472 122163432 122163432 335204770 335204770 371599392 394529024 394529024 400574896 400574896 414604056 414604056 398364914 398364914 361555498 520884066 520884066 480030314 408022612 386610530 386610530 379618018 379618018 392407720 502473622 502473622 336236752 336236752 115258664 126596816 126596816 70706392 70706392 64203440 21923464 16704640 19530816 19530816 13733952 10530272 15519168 37333188 37333188 49284048 49284048 165014388 165014388 210187148 225653676 225653676 204403180 1048114612 1048114612 922213968 717939342 421530888 486548778 486548778 421527846 422262054 422262054 575260128 575260128 372542931 377261204 377261204 268485520 459541478 459541478 553462722 553462722 402199439 710523539 710523539 846275475 846275475 815163537 777360312 777360312 803275545 983585157 983585157 104571751 54521600 54521600 26652560 38542912 552656307 552656307 318800754 839227552 860090547 860090547 48809296 334256320 334256320 554080707 554080707 827907520 827907520 927936916 927936916 679512517 900624513 900624513 444952949 275109386 907187208 907187208 858016808 858016808 456214996 456214996 342632584 433251524 975696852 975696852 982594325 982594325 824254755 767550396 782502237 782502237 376642391 170394900 170394900 141252128 111990976 111990976 102025752 810161283 810161283 848807288 848807288 317311106 919900353 919900353 759421605 759421605 876314113 881802315 881802315 807667971 807667971 711009676 279610482 279610482 302207312 461542514 866197346 968412131 968412131 676634192 675293733 805677215 844368531 844368531 843454168 344856722 505155102 505155102 461901912 799408906 799408906 681677189 648989509 187795600 423674022 423674022 974137571 974137571 1059209298 1059209298 451053900 451053900 900155882 900155882 610396512 990126302 990126302 590636050 815831265 815831265 655299346 901360995 901360995 376250769 859018291 859018291 876262966 1006297118 1006297118 222697616 442800514 506072248 506072248 422057350 348914078 348914078 579167756 724624485 724624485 963914582 963914582 909446949 496507432 980550632 1028004015 1028004015 218759513 263267196 263267196 412560134 412560134 291778880 291778880 57936816 57936816 63704304 412282880 563085921 563085921 845646211 845646211 64275315 33812496 50557968 51065904 285624364 486787246 486787246 236036774 810891568 863114163 863114163 715465312 824510593 824510593 460360662 919901979 919901979 392229536 537764652 537764652 389480538 389480538 365515448 845231035 845231035 574702610 574702610 537500330 36834064 46160576 46160576 40556680 68196360 78118920 924437754 924437754 849909456 899468203 899468203 828169378 828169378 806279443 597320305 1042841919 1042841919 976225074 1050673503 1050673503 877674571 201713676 562373538 562373538 371283113 594252770 594684210 594684210 108888424 76383304 243319376 243319376 235454996 194053324 781211376 781211376 542255382 898195114 898195114 585228753 719951679 879923219 879923219 990036251 990036251 801236338 801236338 583652645 370745656 302582090 583675664 583675664 566875296 857159697 889211689 889211689 854872738 573588483 306239888 192806964 691377696 691377696 556528929 673234465 673234465 542114433 87792424 637162312 637162312 547582657 144720964 671626436 671626436 543195652 345002176 345002176 539306241 539306241 361501377 660007328 660007328 973164113 973164113 421982128 848870034 848870034 1045123822 1045123822 824915235 349239273 95403372 663241256 663241256 691014020 1010439647 1010439647 426268163 231790154 522121854 522121854 466615542 144444396 354160170 366227042 366227042 333750034 484056196 484056196 201474368 291801614 461425282 461425282 421380868 421380868 299168292 213914992 213914992 212992272 220073284 220073284 1048578064 1048578064 287598708 380470308 615107058 686343621 686343621 626582981 542246336 223187240 473704084 473704084 437643798 421351968 403700742 412929606 1044022576 1044022576 639835072 639835072 553021788 553021788 47834832 671702553 671702553 440101703 440101703 210838092 268924326 471927200 879013452 970827468 970827468 750133348 750133348 742480298 201647500 270009858 272368546 290720418 334104576 334104576 329264736 329264736 281282754 61026672 322019906 322019906 51656848 51656848 50595888 61758288 61758288 236060952 236060952 79491160 112758536 113108248 217751304 217751304 184193988 184193988 210929132 210929132 62076180 415536464 415536464 350853408 256793840 256793840 565208101 565208101 154474044 758790733 763705616 799436349 799436349 570609681 570609681 179713889 152042532 725141301 725260085 725260085 691802148 247075176 788544300 788544300 589895772 266513732 266513732 166538724 218568136 218568136 138304528 167649252 167649252 246551388 246551388 263873576 608598757 616871192 616871192 568094866 568094866 282717792 512246246 512246246 621899790 621899790 613473952 500693742 581897045 581897045 638694967 693781064 693781064 400345662 1049938637 1049938637 521409066 769094891 927939768 963595907 1056890847 1056890847 173402772 453273098 453273098 175786872 144463360 144463360 375267544 497574689 497574689 684245093 736343924 736343924 152044884 155747840 325276690 325276690 275387654 541603030 818948695 818948695 816063488 681887653 681887653 418433792 906379923 906379923 712381198 618821456 644446868 983784263 983784263 841404099 878340368 914579659 914579659 1021516855 1021516855 885731180 393360748 454285862 533325110 533325110 462603984 462603984 317730118 405104080 405104080 305662466 324582210 324582210 646846223 646846223 328676314 977936751 977936751 877331784 877331784 813957130 813957130 844171675 844171675 564840706 98110626 1055742017 1055742017 913647836 913647836 755361166 721238285 613999696 613999696 974247654 981201841 981201841 512565280 783568712 783568712 405225374 530529104 530529104 834421533 834421533 167521854 806628133 806628133 410393478 343723914 1055148314 1055148314 819121741 819121741 1012925455 1016346178 1016346178 208738824 207509254 329361728 850079974 850079974 1003071396 1003071396 680137797 270846209 483704974 483704974 596706224 708190481 708190481 741626569 772833616 772833616 442869592 442869592 403565574 389055774 486722828 486722828 705184152 980435093 1012401807 1012401807 930356493 277929682 175431552 175431552 254128064 254128064 581697675 856436728 856436728 513017995 442634646 400609934 155386644 607688432 611034683 645530123 645530123 342003776 308580994 401653970 539379742 941857053 941857053 780329013 780329013 701731269 801203176 801203176 307302592 116796170 44304720 565184594 866386299 925893435 925893435 370147617 201770848 201770848 164287540 182573318 427946390 427946390 302376978 280806160 59899904 59899904 152088768 436175556 436175556 278172822 278172822 438939280 438939280 411913168 15729344 1313280 11536704 39323280 39323280 35786752 8570112 11026432 38274192 103437897 651199768 651199768 640031833 692663396 692663396 549589185 139010245 111317480 111317480 142164098 406447878 443148038 504407324 504407324 231474716 273434136 273434136 226592336 201943074 462623872 462623872 303303186 522884308 522884308 401377562 401377562 273863298 395595850 395595850 339740800 678832517 754400205 818088718 818088718 482748491 482748491 271846219 216345920 275675008 485658244 808277646 808277646 605200384 344204864 222423060 222423060 104079696 104079696 64228224 67902772 394841846 394841846 158472968 288756282 288756282 452515436 527698878 723780542 1011528768 1011528768 476323374 384378330 812370787 1037994438 1072457399 1072457399 715662602 791315928 791315928 591590412 509760453 442634663 280778146 833504080 833504080 697959188 697959188 281666960 281666960 275639682 15205824 146886928 146886928 391227123 1063270235 1063270235 909437723 916155459 916155459 169323411 38455684 580587229 781254337 781254337 709219884 709219884 597747731 597747731 1051266117 1051266117 975905618 975905618 819801795 799015293 799015293 568462195 568462195 872550986 872550986 650309917 753452493 753452493 740463808 153633096 271581954 329982952 329982952 268514236 726693364 726693364 718089429 718089429 744570828 744570828 639557145 770062830 786133733 967406012 967406012 701972713 683162514 683162514 439807678 442522174 442522174 182981734 182981734 536883253 759208229 759208229 546352048 680533044 680533044 570966024 189000809 659464120 659464120 618658160 352998897 285213314 285213314 637412427 637412427 21769243 294321480 354418986 354418986 352879874 808728643 808728643 445671499 738668308 750594589 750594589 730032133 667274992 594523345 460998850 706011141 706011141 538004000 539508842 954922972 1071653016 1071653016 982442914 929864340 630642700 893694471 893694471 691679396 888320968 888320968 919869585 919869585 341639368 304549704 660309369 660309369 1011682669 1011682669 837819759 759830191 616509438 616509438 511745110 695378191 695378191 679768898 679768898 1070024587 1070024587 184817956 222421664 654871961 654871961 694342068 731804533 731804533 770213357 770213357 689536285 611728445 569850849 252448420 563877453 775363076 775363076 610346369 550779480 248481961 719922645 763984849 763984849 93796973 818479815 818479815 1039148270 1039148270 555955820 555955820 406460166 707015712 870989461 870989461 848959059 450831815 832801908 832801908 781535726 994317440 1040659293 1040659293 938552734 532812152 532812152 388515354 805437440 805437440 391546937 386292410 325376835 984926865 984926865 834673636 600836985 953417932 953417932 804544516 804544516 376488948 883900107 883900107 341785411 385998906 822690841 822690841 620756992 620756992 811667715 811667715 941248770 941248770 575901268 575901268 773138973 773138973 637805060 497167428 461469922 469869094 469869094 62274048 60891504 62232844 218809772 218809772 205594660 210205222 210205222 947178311 947178311 781189157 1017256258 1043730794 1043730794 1032847495 1032847495 923930744 923930744 847301237 969017838 969017838 832704867 527962325 109577304 371217496 862587577 862587577 484340206 1051258544 1051258544 1039215975 678276610 1012193920 1012193920 232764524 257800120 257800120 122163432 335204770 335204770 371599392 394529024 394529024 400574896 400574896 737284191 737284191 398364914 973873787 973873787 240360154 13184960 390095068 655686832 913726416 913726416 885844027 885844027 691227446 392407720 251601668 176109768 151657472 110851664 126596816 126596816 70706392 70706392 64203440 31253312 16704640 19530816 29622752 29622752 10530272 15519168 28436064 28436064 24479264 29420096 29624544 144967872 144967872 8651044 89846654 140001801 152988847 922213968 938660360 938660360 1024966264 1024966264 881444897 745120837 745278861 745278861 503273345 688164834 946332420 946332420 136842768 175852550 849777498 849777498 553462722 553462722 629849440 710523539 710523539 846275475 846275475 499188091 612833328 666247993 803275545 983585157 983585157 413815364 413683794 305358928 48984848 38542912 38542912 7414656 270689168 839227552 860090547 860090547 838916528 828774819 57065491 33953808 33560576 279496832 553929155 927936916 927936916 679512517 900624513 1006961010 1006961010 192938295 304611433 779672868 970999032 970999032 629148070 389834200 318063118 318063118 130366420 941540710 941540710 725829093 587325489 428236934 100666054 213124572 213124572 170394900 348359518 348359518 406635168 406635168 319079952 810161283 810161283 848807288 848807288 823298258 919900353 919900353 308240376 90967464 233582952 995107508 995107508 801120455 711009676 711009676 279610482 279610482 302207312 461542514 866197346 968412131 968412131 675293733 675293733 805677215 844368531 844368531 843454168 344856722 101234963 873728581 873728581 433413931 433413931 648989509 841418004 841418004 556378564 962964513 962964513 724306291 673188934 673188934 596509968 451053900 900155882 900155882 844491411 990126302 990126302 590636050 590636050 638749242 655299346 655299346 642799361 595168512 595168512 212523568 260560384 260560384 487591944 487591944 349751432 521148440 521148440 419565710 237574664 759617709 759617709 738851121 724624485 631874925 549454017 777060352 777069213 980550632 1028004015 1028004015 705954196 705954196 749472356 749472356 412560134 291778880 291778880 57936816 199885872 199885872 430967878 430967878 278073348 445829718 604867098 825044259 825044259 738083654 738083654 285624364 604820519 604820519 1062190473 1062190473 879635865 813713475 715465312 824510593 824510593 532032011 919901979 919901979 702022769 702022769 537764652 228345377 105915792 647888792 845231035 845231035 574702610 574702610 537500330 127524176 124194480 45285888 45285888 34906352 34906352 924437754 924437754 849909456 899468203 899468203 828169378 828169378 806279443 772032001 1042841919 1042841919 976225074 545572929 877674571 877674571 1054818015 1054818015 637758417 371283113 919447928 919447928 594684210 210274636 210274636 243319376 243319376 235454996 194053324 781211376 781211376 542255382 898195114 898195114 890709072 719951679 879923219 879923219 990036251 990036251 801236338 801236338 583652645 288501398 144706768 583675664 583675664 566875296 857159697 889211689 889211689 854872738 573588483 306239888 192806964 691377696 691377696 556528929 673234465 673234465 895141386 895141386 891025035 657015859 564145025 353923008 356515114 356515114 288618338 348523338 833666505 1036643392 1036643392 616334566 660007328 660007328 973164113 973164113 229172300 663889048 663889048 569737217 569737217 254050412 254050412 193781892 460064226 914882819 914882819 1010439647 1010439647 426268163 231790154 522121854 522121854 466615542 144444396 354160170 366227042 366227042 333750034 484056196 484056196 253889208 291801614 461425282 461425282 421380868 421380868 299168292 95453192 95453192 146947693 146947693 229115244 1048578064 1048578064 287598708 793291196 809502769 809502769 1007518855 1007518855 630895721 642242584 642242584 823847218 823847218 205643916 743666063 1045606942 1045606942 102794775 639835072 639835072 606435516 553021788 47834832 538266628 672785925 672785925 162545728 142509921 671505408 671505408 547986945 561865889 561865889 104994001 108584136 613682776 892912441 892912441 892635426 300955904 334104576 334104576 313820546 313820546 334174624 334174624 322019906 322019906 51656848 51656848 50595888 61758288 202377732 236060952 236060952 179967828 176452948 153928900 217751304 217751304 184193988 184193988 210929132 210929132 62076180 415536464 470388000 470388000 318784356 318784356 228222800 228222800 154474044 154474044 763705616 799436349 799436349 772818189 772818189 555156584 555156584 622352384 622352384 691802148 691802148 201535500 788544300 788544300 614401292 583655172 583655172 100494960 117793480 117793480 138304528 167649252 220759408 220759408 203866456 263873576 608598757 616871192 616871192 568094866 568094866 547032145 512246246 512246246 621899790 621899790 493412190 500693742 572223590 999868023 999868023 693781064 693781064 147717199 1012645116 1012645116 970322643 819018440 819018440 718143634 598509965 313034064 302090804 1062739978 1062739978 618433680 389790586 389790586 709683920 713020954 713020954 684245093 736343924 736343924 430576070 271100164 319932198 413961798 413961798 541603030 818948695 818948695 816063488 275517056 92323944 233360168 233360168 421266089 421266089 394789499 485301964 983784263 983784263 841404099 878340368 914579659 914579659 1021516855 1021516855 885731180 496968732 454285862 454285862 199360600 462603984 462603984 317730118 405104080 405104080 48682176 48682176 33575104 33575104 0 33562640 782316752 782316752 877331784 877331784 813957130 813957130 612632649 564840706 564840706 98110626 1055742017 1055742017 913647836 913647836 257215793 63049968 613999696 613999696 974247654 981201841 981201841 512565280 783568712 783568712 213469787 530529104 530529104 834421533 834421533 483781326 806628133 806628133 410393478 146591556 273729860 548937420 819121741 819121741 1012925455 1016346178 1016346178 290638632 290638632 329361728 329361728 8548658 6291968 7340928 19153536 88098984 88098984 88375464 596706224 596706224 214321288 214431948 658811481 658811481 486745000 760510631 760510631 204126474 16512 172802233 1027902499 1027902499 1012401807 1012401807 307281951 25055378 175431552 175431552 173064852 616109437 616109437 1013973903 1013973903 513017995 442634646 400609934 155386644 847516938 847516938 841180232 987381956 987381956 960491920 469866594 539379742 539379742 470063937 546566752 701731269 701731269 581034321 307302592 307302592 915423760 915423760 880853067 663912539 1020603087 1020603087 357904213 656958752 656958752 164287540 252578204 252578204 222759008 222759008 510870196 510870196 263411042 519045736 519045736 284739522 175643972 175643972 171092560 343153422 343153422 139596420 371327246 413536600 413536600 371245338 371245338 350390490 103320002 103320002 5305984 546112577 546112577 640031833 1032744308 1032744308 615114089 409112918 491438230 491438230 906609664 906609664 843968003 843968003 809544720 231474716 273434136 273434136 226592336 216557460 290721300 303303186 303303186 522884308 522884308 357171980 357171980 273863298 395595850 395595850 201609409 678832517 754400205 844183170 844183170 482748491 482748491 337454602 337454602 275675008 485658244 808277646 808277646 605200384 631350113 1072130751 1072130751 484905213 484905213 11931892 293739080 566646816 1009828623 1009828623 964772248 964772248 759187636 759187636 589748529 1011528768 1011528768 979622947 270546654 270546654 553961505 793247944 793247944 237511857 201393620 201393620 469894823 962072590 962072590 292839876 989866480 989866480 697959188 697959188 504866248 504866248 548509449 548509449 876630643 876630643 501219822 579210352 871412225 909437723 916155459 916155459 169323411 38455684 580587229 781254337 781254337 650778073 215130901 536912390 536912390 713829394 713829394 975905618 975905618 912977208 912977208 655079338 568462195 568462195 872550986 872550986 650309917 753452493 828580196 828580196 774075637 1065562239 1065562239 536917601 538084261 538084261 696097496 718089429 718089429 744570828 744570828 639557145 639557145 693125078 967406012 967406012 643101634 683162514 683162514 251789936 293115743 293115743 182981734 241455360 536883253 759208229 759208229 581864932 725799093 725799093 686300501 675629189 659464120 659464120 618658160 352998897 285213314 285213314 637412427 637412427 600415337 542867107 542867107 354418986 352879874 912847818 912847818 644507476 654591840 654591840 649908057 54350208 58983328 175120114 458888886 458888886 607126281 876706636 985721302 985721302 1071653016 1071653016 982442914 873408769 373893690 893694471 893694471 610472000 888320968 888320968 919869585 919869585 341639368 304549704 304549704 586625496 1011682669 1011682669 837819759 759830191 616509438 887381200 887381200 654283195 109305832 109305832 42067312 25374816 113336688 113336688 107483552 107483552 65536808 594740368 594740368 659057457 674486313 678687621 678687621 15153600 15153600 15543744 15543744 168099920 168099920 187258512 571337745 684634324 684634324 269155342 738584584 738584584 818479815 818479815 1039148270 1039148270 555955820 638784816 957232691 957232691 723912369 721957517 827133569 827133569 832801908 832801908 589111363 994317440 1040659293 1040659293 938552734 852366402 852366402 69341184 940055304 940055304 823950476 386292410 340341000 984926865 984926865 834673636 600836985 953417932 953417932 804544516 804544516 376488948 396961530 610859032 610859032 577715601 1044879623 1044879623 751211749 751211749 569770113 552864577 279973379 682252032 682252032 575901268 773138973 773138973 637805060 290335824 461469922 469869094 469869094 129574776 129574776 111158816 218809772 218809772 517377920 517377920 490866860 947178311 974525108 974525108 890640939 724570657 304353593 416436800 416436800 923930744 923930744 847301237 847301237 820150612 63049936 107498450 127403640 288368306 862587577 862587577 484340206 908185787 1039215975 1039215975 678276610 1012193920 1012193920 355778978 257800120 257800120 81141360 59969584 75571272 93134920 285293834 285293834 398417976 398417976 737284191 737284191 390992096 973873787 973873787 823382091 823382091 904364787 904364787 913726416 913726416 885844027 885844027 691227446 246159646 1043079838 1043079838 964232104 730536365 730536365 633495448 213294424 84982576 84982576 31253312 13586944 42760000 56133200 56133200 49611616 7990144 28436064 28436064 18351360 18351360 8931296 4458624 4458624 17612800 25200160 25200160 197324160 872795520 938660360 938660360 1024966264 1024966264 881444897 745120837 745278861 745278861 503273345 688164834 946332420 946332420 276319756 178303056 849777498 849777498 381418122 492046638 629849440 629849440 769031372 769031372 415629351 280170736 655426072 655426072 889489045 889489045 632508463 413815364 413683794 305358928 48984848 326294784 806869379 806869379 321727794 321045907 570868227 838916528 838916528 828774819 295731264 557616579 557616579 297721378 553929155 553929155 269009024 558277782 724402399 1006961010 1006961010 192938295 304611433 304611433 970999032 970999032 629148070 330321340 330321340 318063118 130366420 941540710 941540710 725829093 665230649 665230649 706740501 734069217 734069217 971258344 971258344 799410410 406635168 406635168 319079952 37425648 651523360 651523360 497169968 823298258 847116212 951507783 951507783 118934199 109053072 995107508 995107508 801120455 496513569 140666034 140526604 73975176 202376580 202376580 1098240 1098240 4210752 13632192 13632192 12616392 411042008 411042008 274077272 101234963 101234963 873728581 873728581 504448914 504448914 904593698 904593698 841418004 556378564 962964513 962964513 724306291 673188934 673188934 596509968 422792305 848873394 848873394 844491411 844491411 56967971 164904172 164904172 93598290 525419044 642799361 642799361 595168512 595168512 332448498 298148904 234935620 487591944 487591944 295175782 521148440 521148440 305348608 809679376 847132425 891632907 891632907 589416033 577815441 658855073 777060352 777069213 777069213 651293077 644723164 705954196 705954196 749472356 749472356 179051536 191637844 191637844 48827684 199885872 199885872 430967878 430967878 268484610 268484610 604867098 825044259 825044259 738083654 738083654 152569903 604820519 604820519 1062190473 1062190473 879635865 543427222 643902124 811864648 811864648 532032011 528519998 556942922 702022769 702022769 221806737 105915792 105915792 647888792 647888792 25488529 574464 121955528 127524176 127524176 124194480 45285888 75645496 75645496 211300058 211300058 654496439 654496439 78290061 309100949 778313022 778313022 1054788528 1054788528 1007162114 1007162114 813732932 813732932 545572929 789583994 1054818015 1054818015 637758417 41605008 919447928 919447928 568416786 210274636 210274636 168272212 124164256 242556572 242556572 677396052 677396052 796361076 796361076 890709072 890709072 412994726 412994726 387279266 204335250 310477778 310477778 167821332 288501398 288501398 144706768 144706768 131003576 550443760 597429873 597429873 584244226 584244226 269406929 576960480 576960480 126597176 126597176 301163266 560265600 560265600 895141386 895141386 891025035 657015859 564145025 353923008 356515114 356515114 331493924 348523338 833666505 1036643392 1036643392 616334566 616334566 575019153 779286164 779286164 790861333 790861333 663889048 569737217 569737217 254050412 254050412 193781892 460064226 914882819 914882819 976450822 976450822 760476552 760476552 705558044 203678096 264819096 264819096 133243896 133243896 17311704 109987392 173197668 253889208 253889208 242402104 242402104 138691508 138691508 253761404 253761404 144426768 144426768 189996444 189996444 229115244 280571421 335822976 335822976 793291196 809502769 809502769 1007518855 1007518855 979390490 979390490 928223300 928223300 823847218 205643916 743666063 1045606942 1045606942 541467036 273942592 606435516 606435516 525871323 373428378 538266628 672785925 794095916 794095916 673064357 739709740 739709740 547986945 561865889 877615306 877615306 537869313 613682776 892912441 892912441 950044544 950044544 544967186 285515474 40240272 40240272 334174624 334174624 312684882 286622098 306448530 306448530 39728402 48180480 270730752 518795394 518795394 240729802 176452948 439118364 439118364 385877258 385877258 321913650 414503980 414503980 297580328 297580328 470388000 515627524 515627524 318784356 624061739 624061739 144663904 680967749 699784480 699784480 613695576 772818189 772818189 555156584 555156584 622352384 690656041 690656041 688265253 94765349 671051180 671051180 614401292 583655172 583655172 124916664 124916664 117793480 218797560 250246604 250246604 220759408 168591648 110091556 589011048 589011048 556164712 110009112 731587776 731587776 726799029 247068533 578903900 578903900 175535001 251473884 572223590 999868023 999868023 989855799 989855799 722147876 1012645116 1012645116 970322643 819018440 819018440 598509965 598509965 313034064 302090804 1062739978 1062739978 618433680 1072960845 1072960845 967731494 967731494 952802055 758382794 452013014 443400384 430576070 271100164 750658152 750658152 582974545 277349394 186191520 465307714 465307714 674792773 674792773 435798560 724328849 724328849 735616721 735616721 898978832 933232251 933232251 894074924 944428167 944428167 851770794 851770794 423215449 496968732 496968732 487532740 487532740 261826512 261826512 224211280 29151072 63407360 185919650 328204914 330565218 330565218 615881951 615881951 311940090 311940090 744938947 793059595 793059595 247478272 247478272 721707161 721707161 72009128 72009128 80796432 115743192 115743192 3195648 3195648 36767416 84620832 84620832 222822960 222822960 565232776 565232776 547882305 1033232444 1033232444 572479512 572479512 441619062 483781326 483781326 375037946 351671112 477106370 485891022 485891022 548937420 548937420 215877441 134266884 403985154 403985154 290638632 290638632 319062016 892864546 892864546 659702682 929698443 929698443 352489737 352489737 311213828 757529196 757529196 690371168 722044989 722044989 673124400 486745000 760510631 760510631 172409648 140644740 172802233 1027902499 1027902499 352754059 352754059 241750691 88679464 501777454 501777454 137396236 616109437 616109437 1013973903 1013973903 289674062 217471845 947661861 947661861 941970945 847516938 841180232 987381956 987381956 960491920 469866594 578864700 889975644 925070690 925070690 262754865 377696346 377696346 286571277 936707737 936707737 915423760 880853067 663912539 1020603087 1020603087 357904213 656958752 656958752 224674080 252578204 287574290 388307330 388307330 510870196 510870196 392346080 519045736 519045736 370179106 370179106 308076816 37699344 343153422 343153422 273289228 371327246 413536600 413536600 371245338 371245338 350390490 103320002 103320002 40030608 72319448 72319448 586419089 1032744308 1032744308 615114089 409112918 491438230 491438230 906609664 906609664 843968003 843968003 809544720 220316312 220316312 163661780 163661780 216557460 245958200 245958200 268962240 283905474 283905474 142477960 256116924 256116924 81010048 114203752 158109600 250616158 515776350 844183170 844183170 479473231 215683458 475076294 475076294 416948878 416948878 76360776 28847104 44196161 631350113 1072130751 1072130751 484905213 484905213 126880132 293739080 566646816 1009828623 1009828623 1032123610 1032123610 759187636 759187636 589748529 96210792 979622947 979622947 350210326 350210326 823668095 884803671 884803671 782317045 859972744 859972744 469894823 962072590 962072590 854754225 989866480 989866480 1031377145 1031377145 504866248 504866248 548509449 548509449 876630643 876630643 501219822 579210352 871412225 871412225 541789603 538125063 538125063 697309136 697309136 672700108 672700108 650778073 215130901 536912390 1002604866 1002604866 713829394 837257015 837257015 912977208 912977208 983571060 983571060 626075202 626075202 340333731 582098587 805457962 828580196 828580196 854750421 1065562239 1065562239 794460815 1031979121 1031979121 355625017 704709733 704709733 253199848 99121724 81985536 0 134260228 134260228 170393732 202116108 221031300 352593998 352593998 254086930 403216222 403216222 316064608 241455360 617239632 650117337 650117337 725799093 725799093 686300501 675629189 602078809 104824705 60552416 60552416 55076560 55779376 59781584 600415337 600415337 606767873 606767873 771490460 774976449 912847818 912847818 644507476 662814825 662814825 756640836 792946692 792946692 302514053 424938150 536922791 607126281 876706636 985721302 985721302 843780379 275497284 287648034 287648034 277707584 76895808 165798568 538104321 538104321 537018880 287480050 386924794 386924794 366872738 366872738 845102224 845102224 846086822 846086822 454330825 957127704 957127704 887381200 654283195 890047077 890047077 193450300 1000155263 1000155263 130862328 142529392 555804025 555804025 594740368 594740368 675426693 675426693 678687621 678687621 777163349 777163349 172627092 545789789 577739220 749368017 749368017 571337745 684634324 684634324 653374468 738584584 738584584 746971272 746971272 683935941 147112265 423511308 638784816 957232691 957232691 723912369 721957517 827133569 827133569 823658019 589111363 589111363 707016609 795292415 795292415 704983240 852366402 852366402 201478692 940055304 940055304 823950476 340341000 340341000 640630041 640630041 537298176 82333697 349505740 483732174 483732174 321913104 311428658 857858227 857858227 930087867 930087867 1044879623 1044879623 751211749 832236706 836361475 836361475 412386505 682252032 682252032 251421384 251421384 277250676 507326282 507326282 385623810 170501974 312593218 373092418 373092418 262899456 272553652 467263336 517377920 517377920 490866860 490866860 974525108 974525108 890640939 724570657 816333840 816333840 416436800 415404928 396378628 396378628 190841020 190841020 705810480 770339637 770339637 533462291 606488641 606488641 360300968 586768867 586768867 350585600 350585600 357698176 357698176 355778978 115984456 115261168 81141360 63063840 75571272 93134920 93134920 75765080 341313632 394295472 394295472 313524376 104858450 305710074 649138322 823382091 823382091 904364787 904364787 118822418 386527586 386527586 223537528 346343580 346343580 1043079838 1043079838 964232104 730536365 730536365 633495448 373610016 115293912 89198768 16606360 13586944 53258048 56133200 56133200 49611616 1574400 18656512 25419936 25419936 22230176 22754976 22754976 22754976 18419840 25215072 163636320 197324160 197324160 394526962 394526962 439492992 439492992 294353486 292165026 391506618 474842810 474842810 473956494 436880690 343155108 276319756 178303056 178303056 137612032 75727088 712366240 712366240 245043928 769031372 769031372 411177030 192196218 655426072 655426072 889489045 1030171457 1030171457 814533076 814533076 282570816 172732548 326294784 806869379 806869379 423624870 321045907 570868227 862099712 862099712 843222707 295731264 557616579 557616579 297721378 24963553 24963553 18162688 20980000 20980000 759234856 759234856 134742384 134742384 146819104 163891428 476595194 476595194 330321340 330321340 733354869 733354869 916849530 916849530 684330901 665230649 665230649 706740501 734069217 734069217 971258344 971258344 799410410 104727864 576359010 576359010 889315371 889315371 156572228 497169968 497169968 847116212 951507783 951507783 118934199 819540550 819540550 613298382 643706386 643706386 608438409 302581254 302581254 302563829 987759063 987759063 412440606 412440606 145359204 638988947 952324238 952324238 658429394 658429394 513547346 513547346 531497392 531497392 619907353 619907353 904593698 942710786 942710786 808002062 869057707 869057707 585425138 350538034 350538034 92557346 92557346 9836064 116709403 1056133667 1056133667 920857521 394436929 394436929 93598290 525419044 525419044 287760160 287760160 332448498 332448498 298148904 234935620 234935620 287835168 287835168 505544832 505544832 348085360 809679376 847132425 891632907 891632907 690581128 690581128 658855073 658855073 785772896 785772896 651293077 644723164 684142720 684142720 73608472 43858960 43990608 43990608 43130448 9646656 21135456 21135456 0 0 268484610 268484610 731420502 824365347 824365347 490024100 490024100 135839904 220463232 220463232 824492064 826542243 826542243 637829667 102883608 256951189 256951189 254865993 749536333 749536333 756727007 841269265 841269265 361867926 371263056 898921394 898921394 537260746 625320450 658063306 658063306 60923856 26514192 8971168 75645496 75645496 211300058 211300058 654496439 654496439 534922406 309100949 778313022 778313022 1054788528 1054788528 1007331169 321913650 1010040851 1010040851 387339793 1049529388 1049529388 654458930 654458930 181539540 181539540 59022624 59022624 35168288 168272212 168272212 124164256 242556572 242556572 677396052 677396052 875253698 875253698 591439651 591439651 759568527 1065162046 1065162046 706480828 706480828 167821332 167821332 37765252 0 538007097 654520848 654520848 550443760 629408464 668517105 668517105 567529360 567529360 576960480 576960480 548725028 679004037 679004037 596206092 543289344 543289344 540026368 555292192 555292192 537079809 1050892469 1050892469 541066405 541066405 545658945 545658945 1003745816 1003745816 570483048 570483048 8572992 779286164 779286164 790861333 1054165742 1054165742 986529809 810061478 810061478 268537349 172270416 47000784 360711202 537011308 976450822 976450822 760476552 760476552 933693520 933693520 723918088 723918088 219768219 775012720 775012720 675645413 803861133 803861133 608512137 549464136 242402104 138691508 138691508 135561392 20497472 144426768 144426768 189996444 189996444 95817740 241377740 335822976 335822976 290055200 272916512 55378050 836084754 836084754 979390490 979390490 928223300 928223300 312607393 78329160 235069471 304128403 541467036 541467036 305519507 741913256 1024334895 1024334895 553915406 458171352 458171352 794095916 794095916 673064357 739709740 739709740 477352323 402675782 877615306 877615306 537869313 906666600 906666600 830474222 950044544 950044544 544967186 285515474 315351266 315351266 309909906 10670400 317767824 317767824 306448530 306448530 39728402 48180480 310130176 518795394 518795394 240729802 109101448 439118364 439118364 385877258 385877258 321913650 414503980 414503980 297580328 297580328 397191226 515627524 515627524 134614592 624061739 624061739 29008712 680967749 699784480 699784480 557393697 757377608 757377608 754497708 754497708 622089216 738627849 738627849 756156941 756156941 88145344 88145344 84770816 175199524 175199524 124916664 124916664 109748688 218797560 250246604 250246604 195802268 168591648 110091556 663933216 663933216 110009112 153002336 731587776 731587776 726799029 247068533 639744136 639744136 175535001 251473884 251473884 732785685 977346720 989855799 989855799 792841900 879933752 879933752 301989906 281018562 547097634 547097634 293213392 299370210 299370210 872154112 872154112 852233427 1072960845 1072960845 967731494 967731494 952802055 758382794 580072017 188156653 180893816 155139876 750658152 750658152 961022928 961022928 184027092 184027092 182729444 674792773 674792773 435798560 724328849 724328849 735616721 735616721 898978832 933232251 1062103752 1062103752 944428167 944428167 851770794 851770794 423215449 284037304 261559404 487532740 487532740 261826512 261826512 281062018 281062018 328045760 328045760 328204914 330565218 330565218 615881951 615881951 311940090 311940090 744938947 793059595 793059595 247478272 247478272 721707161 876349345 876349345 222917956 222917956 190250992 619825724 619825724 708679297 792257173 792257173 692806032 880002314 880002314 808351407 691428621 674634501 1033232444 1033232444 598069048 598069048 537734145 537734145 454586039 384828172 447686998 477106370 485891022 485891022 825759334 834175264 834175264 754581580 692109477 593663040 285609250 285609250 107283456 892864546 892864546 659702682 929698443 929698443 540148384 540148384 556271104 757529196 757529196 690371168 722044989 722044989 673124400 33292 422072834 422072834 339400998 140644740 168035476 168035476 134481924 102796336 203948160 203948160 88679464 501777454 501777454 137396236 137396236 376976912 376976912 304284184 289674062 217471845 947661861 947661861 941970945 408418620 408418620 401871168 456561812 456561812 533025722 578864700 889975644 925070690 925070690 262754865 580719632 580719632 316561187 936707737 936707737 615343363 516498654 516498654 607126281 607126281 221020204 218123564 218123564 224674080 224674080 287574290 388307330 388307330 239075624 392346080 392346080 298641992 358477482 370179106 370179106 308076816 105024000 335825426 404901916 404901916 273289228 201462914 81920 39856128 39856128 33939472 72637720 103713416 103713416 15729360 316745874 317803794 317803794 316281168 293675106 319538018 319538018 315790994 407081474 439988070 528687422 528687422 389284104 220316312 220316312 468837754 468837754 170943440 229130280 264925164 268962240 283905474 283905474 299800744 299800744 285476932 285476932 59905896 27182448 548348353 548348353 547430721 537605121 548075712 548075712 475076294 475076294 416948878 416948878 891002310 891002310 623419168 270904680 140773892 7605120 135528836 135528836 126880132 168561380 479775852 861831346 861831346 1032123610 1032123610 297952783 463644651 715400992 715400992 714029650 714029650 350210326 350210326 823668095 884803671 884803671 782317045 859972744 859972744 361382040 361382040 991314166 991314166 854754225 662174454 1031377145 1031377145 11902297 0 354906906 354906906 247318333 987833399 987833399 518494631 929525811 929525811 811937975 783844668 783844668 697309136 804752549 804752549 767306037 768557660 768557660 295747938 1002604866 1002604866 551198656 551198656 170188576 128900472 194315541 983571060 983571060 626075202 626075202 789189194 789189194 805457962 805457962 581485905 854750421 982590039 982590039 794460815 1031979121 1031979121 672137733 704709733 786522960 786522960 543164129 570270935 570270935 1003668472 1003668472 940097416 660170228 845487096 845487096 369855578 369855578 403216222 403216222 438720832 481183750 638223454 650117337 650117337 571133097 629426176 641738689 641738689 602078809 109852176 109852176 389554537 389554537 305337026 570180459 621057811 622728977 622728977 606767873 771490460 774976449 774976449 909921426 909921426 662814825 662814825 756640836 792946692 792946692 572181158 424938150 536922791 536922791 827470903 827470903 506123550 1045886002 1045886002 370016042 370016042 788916285 788916285 165798568 578814976 578814976 290838818 287480050 386924794 386924794 366872738 366872738 845102224 845102224 846086822 846086822 768613560 957127704 957127704 777920157 282072448 890047077 890047077 193450300 1000155263 1000155263 130862328 142529392 555804025 555804025 173932276 578436404 675426693 675426693 88365060 651327628 777163349 777163349 172627092 545789789 577739220 749368017 749368017 539368784 638803012 650131608 667484284 667484284 605186016 746971272 746971272 683935941 606076942 943526187 943526187 723200003 640554512 898528836 898528836 888757827 219466943 712065316 712065316 222820524 222820524 70765240 1040455572 1040455572 302533622 302533622 201478692 420980802 420980802 110109328 541131032 541131032 690957179 690957179 890341405 890341405 939833942 939833942 933562630 933562630 385950772 857858227 857858227 930087867 930087867 976819734 976819734 333275592 832236706 836361475 836361475 1013469962 1013469962 616749897 763069057 763069057 705730524 705730524 507326282 385623810 260209378 312593218 373092418 373092418 262899456 272553652 467263336 467263336 284667408 284667408 1058178153 1058178153 691991927 440078942 440078942 841548065 852493330 852493330 455657168 264798577 474005688 474005688 318767136 705810480 770339637 770339637 533462291 606488641 606488641 369287688 586768867 586768867 293675106 106481184 106481184 17189656 82940384 82940384 63625408 63625408 63063840 63063840 44441856 184826100 338886896 389362234 394295472 656690259 656690259 334368346 539152837 541332996 615600384 615600384 859264845 859264845 715057715 386527586 386527586 223537528 346343580 346343580 128568508 481496366 586008520 598348550 598348550 587532856 587532856 115293912 551293889 605095561 605095561 623472009 623472009 583295937 583295937 545270976 59049060 59049060 66635760 66635760 62914708 62914708 139781760 139781760 39913652 163636320 192479908 192479908 394526962 394526962 439492992 439492992 294353486 292165026 391506618 474842810 474842810 473956494 436880690 343155108 226203904 183295824 137612032 137612032 75727088 712366240 712366240 495553134 512885272 512885272 411177030 192196218 754997152 754997152 762416547 1030171457 1030171457 814533076 814533076 172732548 172732548 171669012 455076512 455076512 423624870 285881776 285881776 862099712 862099712 843222707 53923475 16924704 434380562 710290421 710290421 296718598 296718598 543862934 543862934 447177635 447177635 438184481 438184481 694361140 805877873 805877873 730098886 269012562 188877301 733354869 733354869 916849530 916849530 463901012 496786991 496786991 123652250 487525178 487525178 908508580 908508580 622909106 502453752 576359010 576359010 889315371 893863018 893863018 550501569 751503496 751503496 719622999 844811741 844811741 819540550 819540550 613298382 643706386 643706386 608438409 750321697 750321697 748947789 987759063 987759063 605111992 826413219 826413219 811611427 952324238 952324238 658429394 658429394 513547346 513547346 531497392 531497392 619907353 619907353 815923474 942710786 1017219525 1017219525 869057707 869057707 585425138 350538034 840958227 840958227 219152940 219152940 527005207 1056133667 1056133667 920857521 956444701 956444701 778457656 778457656 754285681 910621123 913072510 913072510 236928540 176993884 176993884 291820600 291820600 277758470 505544832 505544832 348085360 535317934 535317934 493651454 235145244 690581128 690581128 647832408 218302252 785772896 785772896 166199424 166199424 191963904 609952736 617487561 617487561 747375693 747375693 659631124 659631124 190880576 190880576 822301874 973894880 973894880 323516321 731420502 824365347 843116594 843116594 490024100 135839904 220463232 220463232 824492064 826542243 826542243 637829667 102883608 256951189 256951189 254865993 749536333 749536333 756727007 841269265 841269265 802556812 371263056 898921394 898921394 537260746 625320450 658063306 658063306 60923856 38148240 68275080 68275080 59066936 59066936 32772536 420355272 534922406 1028833801 1028833801 423760038 357985030 338026890 1007331169 1007331169 555803216 1010040851 1010040851 390209646 1049529388 1049529388 654458930 654458930 593659124 181539540 59022624 136592028 233871052 262743420 262743420 151545308 208913412 239333440 239333440 579212819 875253698 875253698 591439651 591439651 759568527 1065162046 1065162046 706480828 706480828 302203738 78902088 67164248 93009000 538007097 654520848 654520848 108611097 629408464 668517105 668517105 567529360 567529360 545786928 545786928 548725028 679004037 960845731 960845731 1068485684 1068485684 880321419 555292192 588431445 588431445 1050892469 1050892469 541066405 541066405 545658945 545658945 1003745816 1003745816 609233645 609233645 744673677 744673677 543316226 543316226 1054165742 1054165742 986529809 810061478 835980003 835980003 425009221 47000784 54791856 619717128 619717128 472593678 472593678 687870084 933693520 933693520 723918088 723918088 605046920 775012720 775012720 675645413 803861133 803861133 608512137 549464136 134630024 34376196 64266744 106456904 106456904 131804424 131804424 115608024 93848992 93848992 79343504 286647344 290055200 296510631 955592005 955592005 939565954 939565954 558193241 658954425 658954425 445126692 151389270 791359548 791359548 279310658 683464908 683464908 305519507 741913256 1024334895 1024334895 553915406 92800104 164232228 164232228 422399264 422399264 617130598 617130598 477352323 346708456 113407248 113407248 497094824 906666600 906666600 854755316 854755316 159422051 278312848 278312848 315351266 315351266 309909906 316246178 317767824 419859004 419859004 370332186 448611852 448611852 310130176 310130176 452505872 452505872 417068742 294574544 506290554 506290554 258583738 258816156 524917114 524917114 336435202 336435202 41976832 9181760 134614592 463755264 463755264 1056768 1066496 1066496 19805300 179170644 667432760 670075909 670075909 754497708 754497708 625215657 738627849 738627849 756156941 756156941 100423905 610589833 610589833 93094720 542092416 542092416 61223744 76177856 82449864 101348360 101348360 101332024 84125008 19324928 663933216 663933216 555749393 153002336 153002336 599970025 599970025 37810641 639744136 639744136 604334216 778832769 778832769 732785685 732785685 64022720 248250812 792841900 879933752 879933752 806812530 903285424 903285424 677518784 677518784 518132190 518132190 872154112 872154112 852233427 852233427 314873987 273603714 269409282 755378812 1046792607 1046792607 848704657 848704657 596190321 986961110 986961110 961022928 961022928 602935172 170134645 291582496 425145056 425145056 285357540 405285925 405285925 706253430 706253430 671350852 680137797 1062103752 1062103752 696853605 696853605 810584302 908140827 908140827 981788999 981788999 242970176 967675557 967675557 394262602 340833152 281062018 328045760 328045760 31644000 44103744 44103744 34408576 46695792 46695792 135214368 144777540 197576808 239210652 239210652 54869116 171655360 876349345 876349345 281764752 222917956 190250992 619825724 619825724 708679297 792257173 792257173 692806032 1071297125 1071297125 808351407 979648407 979648407 965812839 965812839 598069048 598069048 537734145 593443404 593443404 384828172 447686998 447686998 166200804 363466924 825759334 834175264 834175264 754581580 692109477 593663040 260451616 224661836 224661836 96862664 229509292 229509292 37749264 152569380 540148384 692764928 692764928 556794657 556794657 138429701 80111496 552175619 552175619 805355523 805355523 946873350 946873350 438587414 436486463 1023674415 1023674415 488771631 488771631 537540513 611008677 693411750 693411750 505250975 875302155 875302155 960502437 1013324175 1013324175 594676286 186100368 286954116 286954116 408418620 524049152 524049152 456561812 456561812 533025722 533025722 340086802 838371002 838371002 831837737 831837737 580719632 561302210 607244139 607244139 183568138 516498654 516498654 922037211 1072753505 1072753505 699929836 699929836 54060028 45116028 203806852 220358932 239075624 239075624 127013496 121969968 121969968 95387840 100199728 100199728 59065344 105024000 146932566 404901916 404901916 337927814 408041608 408041608 273872258 375125658 375125658 72637720 103713416 103713416 13635008 316745874 317803794 317803794 289855650 289855650 319538018 319538018 65936880 271061120 274371682 402004026 402004026 389284104 118597544 118597544 468837754 468837754 170943440 229130280 264925164 264925164 259862460 189853392 299800744 299800744 285476932 285476932 259354652 259354652 548348353 548348353 547430721 537605121 548075712 548075712 524025922 282467010 512196128 512196128 891002310 891002310 623419168 615673723 832781827 832781827 135528836 283249362 283249362 132438256 479775852 861831346 861831346 265851615 660303232 660303232 463644651 715400992 715400992 714029650 714029650 242747292 242747292 203959888 302516564 302516564 470553585 887259776 887259776 636507019 623903529 991314166 991314166 823581219 733137205 738767667 931337592 931337592 951136775 951136775 354906906 670307160 987833399 987833399 829029409 1000103937 1000103937 838193910 883288751 985634365 995119569 995119569 1070171456 1070171456 1065555495 1011888964 133040849 879923401 879923401 640856650 640856650 571900358 569899488 1011161349 1011161349 371176127 927997120 970793171 970793171 789189194 704971803 626595487 626595487 998413590 998413590 941852537 1042407711 1042407711 672137733 672137733 549626585 786522960 786522960 543164129 570270935 570270935 1003668472 1003668472 940097416 660170228 845487096 845487096 369855578 369855578 322704976 413044594 438720832 481183750 638223454 638458905 638458905 571133097 539573448 641738689 641738689 555424137 109852176 109852176 389554537 389554537 613176090 828279315 828279315 925273123 925273123 112423795 456568782 456568782 981202327 981202327 909921426 785051014 785051014 6892320 21020832 572181158 572181158 287648769 221590436 469906694 827470903 827470903 506123550 1045886002 1045886002 370016042 642942473 788916285 788916285 218128480 578814976 578814976 21603520 29966528 29966528 25886720 355077177 858073395 858073395 546963522 546963522 770461717 770461717 790503157 790503157 777920157 659994920 252192300 599458656 655368192 655368192 12324672 26227584 35859408 35859408 29569216 23411136 578436404 578436404 157112965 88365060 155981864 155981864 148665288 148665288 14001344 83974192 83974192 79954096 546642245 546642245 650131608 679699365 679699365 605186016 716178352 716178352 765773376 765773376 943526187 943526187 723200003 930064804 930064804 898528836 888757827 543474176 712065316 712065316 222820524 222820524 70765240 1040455572 1040455572 639130947 748794909 748794909 314539016 314539016 1018241871 1018241871 541131032 690957179 690957179 890341405 890341405 939833942 939833942 933562630 933562630 385950772 307307314 916740204 1058198079 1058198079 118230072 728507564 1065622903 1065622903 809642451 809642451 1013469962 1013469962 616749897 763069057 763069057 705730524 705730524 39039160 260209378 260209378 304136466 304136466 243540352 17041440 17829416 98307784 241606612 284667408 284667408 1058178153 1058178153 691991927 440078942 483965963 841548065 852493330 852493330 896011077 896011077 474005688 474005688 318767136 508795028 508795028 60875680 111358296 111358296 303247890 380741216 380741216 293675106 293675106 369624226 369624226 55668018 82940384 82940384 63625408 63625408 398042298 398042298 278141720 278141720 343283720 389362234 389362234 656690259 656690259 368235498 539152837 539152837 615600384 615600384 859264845 859264845 842532417 842532417 318000696 791445673 791445673 335626538 564485140 564485140 481496366 598348550 655692320 655692320 587532856 99787457 551293889 605095561 605095561 623472009 623472009 583295937 583295937 545270976 59049060 59049060 66635760 66635760 168297472 168297472 167772180 139781760 39913652 33849600 192479908 192479908 192135296 192135296 153189168 104648328 13182144 187352492 187352492 265338200 265338200 255717180 122630060 226203904 226203904 183295824 990364042 990364042 885922763 360566718 761083018 761083018 500166223 446279172 412874310 21013574 754997152 754997152 259570657 315998322 315998322 440962708 440962708 135523734 135401988 191699892 319297046 319297046 186812416 323787826 323787826 320479248 319012864 21236128 22562208 22562208 434380562 710290421 710290421 296718598 296718598 543862934 543862934 447177635 447177635 438184481 576252356 694361140 805877873 805877873 730098886 165004308 180635840 180635840 12583104 211977036 211977036 68456520 68456520 125108968 125108968 70855464 70855464 56982784 378935038 378935038 502453752 589334896 824500993 824500993 893863018 893863018 565559840 751503496 751503496 719622999 844811741 844811741 653468243 996619839 996619839 142607400 142607400 558902400 750321697 750321697 748947789 89913000 377437472 605111992 826413219 826413219 811611427 805905411 289787145 90177960 95890720 134285632 296878336 296878336 294785634 847448448 910244297 910244297 547627084 1017219525 1017219525 864676907 864676907 470320255 318260984 840958227 840958227 236195896 219152940 560211344 1055706299 1055706299 782030486 956444701 956444701 778457656 778457656 754285681 910621123 913072510 913072510 516828860 516828860 227068436 291820600 453254174 453254174 224532900 425763578 425763578 535317934 535317934 493651454 928851797 928851797 647832408 647832408 128789880 693087056 693087056 151586476 549520605 644163784 644163784 617487561 617487561 747375693 747375693 659631124 659631124 190880576 190880576 822301874 973894880 973894880 848842562 848842562 572836113 843116594 843116594 553416244 553416244 545954882 545954882 483267649 483267649 874528520 874528520 715178325 1053835294 1053835294 173574228 103140924 50623088 151126036 238290964 802556812 802556812 113787784 113787784 62970712 70226808 70226808 633172160 633172160 854183633 854183633 586261761 639289729 639289729 604754266 585076232 676073157 743208132 1028833801 1028833801 423760038 1034103209 1034103209 710504260 555803216 555803216 834351994 834351994 390209646 914921054 914921054 445138821 597856586 597856586 1060649222 1060649222 803674752 233871052 262743420 262743420 151545308 208913412 239333440 637477248 637477248 26875488 26875488 11875872 168043264 171256596 773163284 773163284 772065309 925893395 925893395 521863978 521863978 156464432 542537868 558275216 558275216 201364120 590103960 590103960 536872000 536872000 101519600 101519600 147892288 147892288 246768604 960845731 960845731 1068485684 1068485684 880321419 378835531 588431445 588431445 734183914 734183914 388759916 388759916 318816482 147346448 286661154 370873448 609233645 652313116 744673677 744673677 543316226 543316226 686008770 686008770 672815560 698751009 835980003 835980003 768148123 517793002 926466091 926466091 619717128 576323861 744097288 744097288 687870084 170078484 687878416 687878416 605046920 542427777 542427777 542427777 71598601 43959440 274163218 274163218 337137226 337137226 179521472 278435314 297905600 300214370 300214370 356238952 356238952 381717336 381717336 392168984 392168984 358383800 955592005 955592005 939565954 939565954 142771232 403253818 445126692 940183863 940183863 791359548 791359548 374383566 683464908 683464908 175172935 87512706 335931402 335931402 285336706 407554092 407554092 164232228 1009705891 1009705891 678955904 698216037 698216037 558992580 113407248 113407248 557338685 557338685 455622888 854755316 854755316 590468792 590468792 278312848 19952466 384006346 384006346 316246178 316246178 419859004 419859004 370332186 448611852 448611852 305803010 351799242 477234438 512365122 512365122 350422864 506290554 506290554 258583738 271963394 524917114 524917114 336435202 336435202 78488638 297621846 398425642 511856484 511856484 186691332 244615944 244615944 253493360 253493360 667432760 667432760 618997953 618997953 615662400 625215657 625215657 559156140 559419045 616876736 616876736 610589833 610589833 68700800 542092416 542092416 50300064 50300064 61478240 66450672 66450672 53709328 186728724 186728724 625548568 625548568 555749393 642201352 642201352 599970025 782381124 782381124 788361089 788361089 604334216 786569153 786569153 617680148 58843248 58843248 248250812 333800424 333800424 815289433 815289433 903285424 903285424 677518784 677518784 518132190 518132190 914935372 914935372 980683774 980683774 877036760 877036760 547827913 547827913 1046792607 1046792607 848704657 848704657 719458773 986961110 986961110 592201283 602935172 1004135318 1004135318 856724324 291582496 154993604 154993604 422021233 691982647 706253430 706253430 559210212 681181331 811446214 811446214 1032056943 1032056943 708322830 908140827 908140827 981788999 981788999 242970176 967675557 967675557 783026861 752645328 66917268 167260404 167260404 147138756 38276544 38276544 139303844 737189831 737189831 452699094 560723001 759718027 759718027 520269238 520269238 846365683 846365683 606304635 294154386 637887145 637887145 480786820 480786820 3943696 35515920 243311536 258872253 1071297125 1071297125 679259725 979648407 979648407 153733571 313395536 371644698 539513904 1032465011 1032465011 593443404 544156368 544156368 232262284 232262284 212403504 212403504 187434760 126877916 147854308 181814052 193381224 193381224 224661836 224661836 96862664 229509292 229509292 190848408 152569380 152569380 692764928 692764928 554572833 554572833 26164320 26674688 552175619 552175619 805355523 805355523 946873350 946873350 543271173 1057310051 1057310051 1023674415 1001353629 1001353629 537540513 611008677 693411750 693411750 505250975 875302155 875302155 960502437 1013324175 1013324175 594676286 97845344 206992632 206992632 121843896 1012118720 1012118720 414077834 414077834 115425348 527323072 527323072 838371002 838371002 831837737 831837737 85983528 561302210 607244139 607244139 411657096 415835334 946913352 946913352 1072753505 1072753505 699929836 699929836 121872528 251707700 251707700 91372424 168931584 169159188 169159188 152918852 161548432 161548432 100199728 100199728 183624660 474776140 474776140 466235878 455511318 420404262 408041608 408041608 273872258 375125658 375125658 113430940 136616080 136616080 208694344 208694344 12676928 288883144 363463138 363463138 45928272 53256080 65936880 65936880 61866864 61866864 112215000 112215000 118597544 118597544 158427428 172985596 172985596 94455816 236076448 265294820 265294820 223890094 223890094 881268849 881268849 654446649 488714348 263759667 463234846 868309555 868309555 870133491 870133491 680273582 524025922 282467010 512196128 512196128 582926353 582926353 327907171 615673723 832781827 832781827 806742531 806742531 691261738 751977057 751977057 575310480 575310480 351444306 660303232 772557397 772557397 370673178 579547776 579547776 72353384 92873832 146869352 290194564 405538868 460066784 460066784 887259776 887259776 636507019 623903529 378941878 378941878 545542996 733137205 738767667 931337592 931337592 951136775 951136775 281581424 670307160 960945479 960945479 933552160 1000103937 1000103937 838193910 883288751 985634365 995119569 995119569 1070171456 1070171456 1065555495 1011888964 327421200 879923401 879923401 640856650 640856650 571900358 569899488 1011161349 1011161349 371176127 927997120 1053794862 1053794862 873326648 941213856 941213856 662783476 998413590 998413590 941852537 1042407711 1042407711 753075071 981592112 981592112 244116860 122849888 52855088 189225408 189225408 186769716 384306216 517546316 517546316 207192734 39405120 46712336 397860575 974786421 974786421 869152473 869152473 302171136 302171136 9230418 886804800 886804800 677455507 677455507 546962072 909537944 909537944 48276752 48276752 613176090 828279315 828279315 925273123 925273123 112423795 456568782 456568782 981202327 981202327 678376640 785051014 785051014 189414768 189414768 188180996 188180996 72037776 102760728 373305864 644297986 746262161 746262161 639071285 639071285 101966120 642942473 642942473 218128480 218128480 621341706 621341706 279768299 275017130 385876026 385876026 355077177 858073395 858073395 546963522 546963522 770461717 770461717 627493541 691159921 691159921 659994920 163120140 599458656 655368192 655368192 263856640 263856640 104906904 104972440 122124064 541667456 544545569 544545569 88111744 88111744 3629728 4698624 5556864 141399808 141399808 31212416 86912864 86912864 984775718 984775718 974139691 679699365 704152384 839983635 839983635 727110588 954520409 954520409 721877828 459239574 415920720 930064804 930064804 216500431 202653984 543474176 591729169 670782448 670782448 681144509 772545001 772545001 676188515 689960263 748794909 748794909 314539016 314539016 1018241871 1018241871 369284194 312205324 312205324 713367074 831585348 831585348 412825158 412825158 310719742 239936058 228607236 916740204 1058198079 1058198079 688710494 728507564 1065622903 1065622903 809642451 809642451 649642114 922224603 922224603 370214667 424931696 424931696 237052188 144945976 89430132 89430132 138750084 243540352 271852718 271852718 431364416 431364416 283127944 78187032 403101702 403101702 347918154 950058332 950058332 483965963 483965963 807405184 813172611 896011077 896011077 642653359 658943430 658943430 547397948 983617677 983617677 157444425 604260657 604260657 380741216 887677625 887677625 284189714 369624226 369624226 55668018 55668018 49046832 49865648 56871680 398042298 398042298 278141720 278141720 343283720 376515082 376515082 374477466 368235498 368235498 156025152 432592100 432592100 187960466 22810272 852688928 852688928 853560616 853560616 791445673 791445673 335626538 564485140 564485140 184679273 85847592 655692320 655692320 546991193 21528577 26264160 26264160 14944416 6047744 23906560 23906560 32008832 64277760 64277760 31303328 30949504 26789472 185401488 185401488 197736580 197736580 35136036 147369040 147369040 88798352 88798352 119882360 119882360 166526448 166526448 159084920 162843492 254204336 254204336 235054220 119264392 105229008 105229008 62833378 990364042 990364042 885922763 582671956 761083018 809494312 809494312 787161927 694206885 404927968 569876328 569876328 678406209 731140477 1072380087 1072380087 715224984 473648654 203028228 191699892 319297046 319297046 186812416 323787826 323787826 320479248 319012864 23628832 22562208 22562208 19138176 48357840 143869968 143869968 57807552 61416816 61416816 166204896 166204896 165675492 576252356 576252356 446697568 446697568 298126658 298126658 439384785 949015235 949015235 865210403 679498567 976409108 976409108 733466962 733466962 974600375 974600375 734345285 705116181 703084880 90195256 589334896 824500993 824500993 640351186 738574668 738574668 1010844099 1010844099 820002886 820002886 694292901 374342391 996619839 996619839 543944617 604466304 604466304 551100652 669394489 669394489 611788289 892168704 892168704 563343969 564393697 569112033 569112033 99061025 88080776 288358660 288358660 389557910 389557910 462134134 847448448 910244297 910244297 426957754 288259804 75706440 75706440 75706440 318260984 330039872 330039872 236195896 236195896 728440704 728440704 560211344 310533652 782030486 782030486 719393120 719393120 426380245 318810416 423337490 423337490 513889816 516828860 516828860 227068436 249039076 453254174 453254174 249895728 425763578 425763578 244584452 244584452 269034498 928851797 928851797 616684953 232833516 266392044 574595780 801193157 801193157 549520605 644163784 644163784 38221968 59222704 59222704 172446404 172446404 64187344 47267888 47321808 138740736 138740736 4194432 848842562 848842562 692656263 823463074 956609061 956609061 553416244 545954882 969239238 970271463 970271463 874528520 874528520 772874781 1053835294 1053835294 213404044 199017080 50623088 151126036 151126036 543162368 543162368 132735656 132735656 108089432 96143096 121819384 624108946 624108946 854183633 854183633 586261761 639289729 639289729 604754266 585076232 676073157 743208132 743208132 496612485 345781578 1034103209 1034103209 710504260 161582399 270704248 271242498 302351424 302351424 974921735 974921735 445138821 597856586 597856586 1060649222 1060649222 803674752 166298952 185412660 224136692 224136692 43005168 43005168 637477248 637477248 26875488 26875488 11875872 708216480 729470901 773163284 922885512 922885512 925893395 925893395 521863978 521863978 166649316 542537868 558275216 558275216 201364120 0 34930976 536872000 536872000 101519600 101519600 63611620 108584544 207509004 207509004 34226732 33603600 296541248 296541248 35310610 522227272 522227272 734183914 734183914 508563861 508563861 318816482 244209235 286661154 777789048 777789048 652313116 686941125 686941125 949240573 949240573 702810597 407644768 407644768 137177862 270009858 768148123 768148123 517793002 926466091 926466091 576323861 576323861 744097288 744097288 987766797 987766797 687878416 687878416 370283034 370283034 353132572 1012919298 1020853897 1020853897 1029246570 1029246570 337137226 337137226 179521472 278435314 297905600 300214370 300214370 356238952 356238952 381717336 381717336 392168984 392168984 358383800 371469384 371469384 318275730 318275730 139626208 403253818 403253818 940183863 940183863 699848409 699848409 374383566 374383566 859862054 859862054 606390537 487987758 487987758 285336706 407554092 407554092 167756838 1009705891 1009705891 678955904 698216037 698216037 697027650 885167307 885167307 557338685 614631876 885047835 885047835 778262317 960755524 960755524 452093840 78600416 384006346 384006346 312600850 337402700 415276986 415276986 239618732 239618732 68748304 289936512 358090410 477234438 512365122 512365122 471860822 148971972 71311808 159855042 271963394 271963394 21301296 59738160 59738160 166819392 297621846 398425642 511856484 511856484 186691332 244615944 244615944 253493360 253493360 210449756 732112588 732112588 732518661 732518661 2097408 16913664 17302560 98322120 616876736 616876736 84485160 84485160 68700800 24675200 24675200 50300064 60632160 61478240 66450672 66450672 53709328 186728724 186728724 689279140 689279140 56548373 642201352 642201352 726344704 782381124 782381124 788361089 788361089 578729617 786569153 786569153 262270129 104432704 61937360 63963888 77739064 109786912 815289433 913051035 913051035 799943355 614281117 913576065 1018176219 1018176219 914935372 937951890 980683774 980683774 877036760 877036760 547827913 547827913 1067732290 1067732290 997473575 719458773 719458773 437297057 582798468 592201283 592201283 1004135318 1004135318 856724324 456725892 281216802 154993604 422021233 691982647 691982647 420453968 420453968 681181331 811446214 811446214 1032056943 1032056943 1044270094 1044270094 573756177 487262888 693088172 711613977 711613977 783026861 783026861 752645328 85812464 167260404 167260404 147138756 38276544 38276544 166197732 737189831 737189831 452699094 560723001 759718027 759718027 520269238 520269238 846365683 846365683 606304635 294154386 637887145 637887145 480786820 480786820 146945156 147643668 147643668 163857072 173709060 173709060 292945986 292945986 287377858 287377858 313395536 371644698 675944580 1032465011 1032465011 677128080 677128080 544156368 232262284 232262284 212403504 212403504 238556384 238556384 147854308 181814052 193381224 193381224 104598152 54952392 38013072 117571872 190848408 744413828 744413828 674159877 557992581 156536960 20836128 181482164 181482164 26674688 258274170 258274170 249635352 172559126 705965184 705965184 543271173 1057310051 1057310051 877497537 1001353629 1001353629 354030250 268964992 485628684 485628684 517507964 517507964 440030742 420483104 419562022 402653190 135374852 204006017 206992632 701007716 701007716 1012118720 1012118720 584937810 572214272 115425348 527323072 527323072 219338540 219338540 884930182 884930182 765909357 605039695 605039695 411657096 411657096 415835334 946913352 946913352 607725321 488939968 252331248 161793184 220576136 251707700 251707700 91372424 168931584 169159188 169159188 152918852 161548432 161548432 30094560 45950000 183624660 474776140 474776140 466235878 455511318 420404262 876673305 876673305 847727111 911137947 911137947 667993021 981393427 981393427 553737001 348600522 880877606 914506204 914506204 363463138 288187618 288187618 60496112 310001616 310001616 275492530 281877552 281877552 52354608 37430560 23052160 172985596 172985596 105456792 94455816 265294820 265294820 223890094 223890094 881268849 881268849 654446649 488714348 263759667 768258780 868309555 868309555 870133491 870133491 680273582 101185560 101185560 100961280 385937461 582926353 582926353 311603298 311603298 487173678 487173678 806742531 806742531 691261738 751977057 751977057 626698840 626698840 597456609 570068593 772557397 772557397 370673178 579547776 579547776 72353384 92873832 146869352 290194564 425201362 460066784 460066784 442499478 442499478 151003554 1004806915 1004806915 476851502 755511189 755511189 311560210 263492130 647607813 647607813 838964507 838964507 377317382 868941128 868941128 933552160 933552160 447423510 268897684 273419394 748903086 748903086 349750437 407548764 407548764 278472258 124953918 327421200 327421200 537135616 537920001 602149223 686082766 686082766 527587437 608983133 819464727 819464727 1053794862 1053794862 873326648 941213856 941213856 662783476 814260834 814260834 59253248 59253248 809196291 809196291 981592112 981592112 244116860 47062224 47062224 189225408 302196738 302196738 384306216 385557112 385557112 344175248 129685368 390563778 397860575 974786421 974786421 869152473 1020023955 1020023955 474091711 365353194 886804800 886804800 677455507 677455507 546962072 909537944 909537944 331823346 314644512 593784832 594016689 609338129 621205545 621205545 584112297 549455360 551028417 551028417 8787649 34964164 34964164 170486548 189414768 189414768 188180996 188180996 113958352 382083288 382083288 644297986 746262161 746262161 545523777 545523777 8390657 240152760 240152760 570558680 575252633 621341706 621341706 279768299 275017130 385876026 860618993 860618993 539233778 975969280 975969280 975311127 975311127 616438810 250226688 656487725 656487725 176234580 33825540 95618064 95618064 185388084 263856640 263856640 121848320 104972440 122124064 541667456 544545569 570296960 570296960 22229252 621855620 621855620 621796521 609297033 142413069 31212416 156886692 156886692 984775718 984775718 974139691 408651750 704152384 839983635 839983635 727110588 954520409 954520409 494624626 459239574 415920720 52477440 7179408 34347696 35835520 554893872 813867871 813867871 770876644 770876644 772545001 772545001 676188515 689960263 698351205 698351205 286553631 101845304 59430000 369284194 369284194 337494844 62791536 52824576 529271992 893682831 893682831 764889838 764889838 750486177 665412977 497476357 688262998 688262998 688710494 688710494 604537865 657753130 806112177 806112177 1033673831 1033673831 922224603 370214667 1060219903 1060219903 259502136 239338112 176544320 176544320 138750084 142934208 326795184 326795184 431364416 431364416 495376140 495376140 403101702 963098813 963098813 950058332 950058332 497583457 819986883 819986883 813172611 813172611 604823171 642653359 658943430 658943430 547397948 983617677 983617677 503383370 604260657 604260657 531671536 887677625 887677625 403467560 450226902 450226902 170509250 9965152 18619712 18619712 3539520 1083392 1083392 271895328 271895328 19658016 19658016 18040576 174461952 174853524 174853524 156025152 432592100 552620032 552784833 552784833 852688928 852688928 853560616 853560616 668765947 474876928 474876928 373607500 932469497 932469497 382122130 428128333 501164553 501164553 81450209 562232417 618982441 618982441 626353753 626353753 597811569 600974160 600974160 64277760 53576068 53576068 58393316 185401488 185401488 197736580 197736580 54822112 147369040 147369040 233298196 233298196 244400384 244400384 166526448 214664912 214664912 162843492 309468434 309468434 351462580 413729960 413729960 205636992 187893456 270720790 289932194 582671956 582671956 847830310 847830310 977933604 977933604 861929907 404927968 404927968 383445977 678406209 731140477 1072380087 1072380087 715224984 473648654 203028228 358787112 974133653 974133653 339118872 814528001 814528001 865010072 865010072 621332865 866404705 866404705 852237568 887617995 1025845384 1025845384 206736140 125948068 136888432 166204896 166204896 165675492 60866576 176746928 446697568 446697568 298126658 491576016 491576016 949015235 949015235 865210403 679498567 976409108 976409108 733466962 733466962 974600375 974600375 734345285 705116181 703084880 66061296 581540914 581540914 640351186 640351186 738574668 738574668 1010844099 1010844099 820002886 820002886 843752360 843752360 646058073 557715624 612063952 612063952 685400016 714096705 714096705 611788289 655174701 892168704 892168704 836371875 836371875 826503715 826503715 336135689 85840000 288358660 288358660 389557910 520235372 520235372 789177405 789177405 779872293 678951813 812902659 951400459 951400459 881190987 407701625 330039872 330039872 274241462 354071594 1056887754 1056887754 552554933 278613904 540447878 540447878 987240694 987240694 426380245 318810416 423337490 425837088 425837088 328356960 328356960 198875922 188669748 55840824 249895728 249895728 211837284 68157960 587204657 587204657 57448500 571900860 571900860 559245172 232833516 266392044 574595780 801193157 801193157 267036749 191193572 579209088 579209088 153594553 773114397 773114397 721920188 721920188 221405508 193344624 1012702668 1012702668 595199792 724057911 878972426 878972426 823463074 956609061 956609061 537110288 298963073 969239238 970271463 970271463 543173385 667230437 772874781 1009354078 1009354078 213404044 199017080 254374702 498627420 498627420 77994976 94769192 132735656 132735656 108089432 96143096 121819384 121819384 116649264 116649264 42815696 82165688 663301672 663301672 86075113 106501704 106501704 22681248 19257154 690744068 690744068 409688097 406535682 384956994 128267008 270704248 271242498 830953680 830953680 974921735 974921735 440408588 440408588 423922404 594840240 772573620 772573620 172829532 185412660 224136692 242204872 242204872 222442688 222442688 577504784 577504784 664120976 664120976 708216480 729470901 729470901 922885512 922885512 509346479 173150998 478372946 478372946 166649316 521367514 521367514 81647152 61398336 634727560 634727560 539195408 539195408 602282120 602282120 575019153 167886228 167886228 555068465 555068465 754964164 754964164 626958985 276089304 1021053191 1021053191 707795758 707795758 508563861 508563861 545571012 675547269 675547269 777789048 777789048 263107004 553672480 644891334 949240573 949240573 702810597 407644768 633830258 633830258 614794291 861482922 861482922 268461264 121634840 116097780 163738662 481432398 481432398 481428170 987766797 987766797 841011306 841011306 822132771 843162133 843162133 1012919298 1020853897 1020853897 1029246570 1029246570 69519624 69519624 133566528 133566528 10065200 5692032 289833088 289833088 21301376 21301376 35659848 331130072 331130072 378122000 378122000 309979026 309979026 207218316 349332260 392437100 392437100 200934272 428884526 470844006 1021522383 1021522383 656372215 859862054 859862054 606390537 487987758 951343072 951343072 209330316 209330316 167756838 167756838 432947242 607179722 607179722 697027650 697027650 885167307 885167307 283147457 614631876 885047835 885047835 778262317 960755524 960755524 452093840 78600416 97471592 97471592 117555472 337402700 396256204 396256204 239618732 247397108 247397108 289936512 358090410 358090410 215797452 471860822 471860822 257420934 453521318 463604832 463604832 345320010 366506434 366506434 283541408 166819392 166819392 34144704 263458648 263458648 61202448 133204624 133204624 104933616 210449756 210449756 732112588 732112588 732518661 732518661 571084817 571084817 119051536 119051536 536870913 536870913 538918401 538918401 538269185 537969153 537348736 26139744 60632160 60632160 64855136 64855136 50725168 211843098 211843098 689279140 689279140 400519586 972599322 987371223 987371223 726344704 474026579 721606768 721606768 486986359 587125696 587125696 104432704 104432704 543335064 543335064 287044325 203202918 506291160 913051035 913051035 799943355 771582592 913576065 1067659405 1067659405 1051797591 937951890 937951890 319556658 771902962 810158327 1002706051 1002706051 1067732290 1067732290 997473575 784860664 689963301 446693713 203949354 90701832 183002256 183002256 170754064 456725892 456725892 281216802 27203398 308758624 308758624 457766468 848155760 848155760 697303109 194008821 165336804 153141540 775130267 1044270094 1044270094 963342530 963342530 693088172 711613977 711613977 69470472 69470472 85812464 85812464 42185024 156217648 156217648 154139104 154139104 166197732 166197732 144734368 44216800 222626180 222626180 227940972 227940972 143655492 210108896 210108896 70733696 99405288 99405288 95102080 95102080 138799236 146945156 147643668 147643668 178442753 702044437 727588533 727588533 701372901 730863792 730863792 137102740 137102740 675944580 675944580 618869193 677128080 677128080 83835864 111951504 111951504 4194560 114560656 238556384 241697452 241697452 48111312 243799640 243799640 257037260 257037260 251793880 791677657 791677657 744413828 744413828 674159877 557992581 151438112 664070760 664070760 654711192 649829720 645126041 572586060 993070153 993070153 639444393 415769753 415769753 973677684 973677684 231599340 521751216 521751216 825438465 825438465 607336810 607336810 517507964 681371981 763701357 763701357 419562022 402653190 170680976 204006017 204006017 701007716 701007716 292562864 584937810 584937810 572214272 210968216 238728828 811951061 811951061 714914877 884930182 884930182 765909357 605039695 605039695 407115916 299191555 71377960 615245260 749564385 749564385 488939968 264833660 213945924 220576136 220576136 82960524 81126088 80865992 19237864 18874656 25374816 25374816 12656832 21244000 45950000 183452996 183452996 45871184 160776548 160776548 123882324 876673305 876673305 847727111 911137947 911137947 667993021 981393427 981393427 553737001 348600522 880877606 914506204 914506204 287499424 288187618 288187618 60496112 310001616 310001616 275492530 281877552 324551554 324551554 441838230 441838230 146511156 281681556 382418242 382418242 251609052 465149428 465149428 382622084 246458972 246458972 260958576 320105704 383379162 768258780 768258780 476786774 457410806 275393840 1040716963 1040716963 154017076 191268913 287342888 335593482 335593482 92924968 245234256 255260672 307942530 307942530 1007730962 1007730962 957367310 957367310 805455404 626698840 597456609 665315107 665315107 305449746 319679924 541250184 541250184 386966043 49625834 655622184 655622184 425201362 425201362 409079954 440733591 440733591 850395987 1004806915 1004806915 476851502 755511189 755511189 649012265 136425305 647607813 647607813 838964507 838964507 928385826 928385826 619866020 488769975 624344496 624344496 546089014 810758787 810758787 528951933 244319416 632886502 973801259 973801259 948970640 384434945 384434945 615635467 888267723 987826513 987826513 686082766 527587437 608983133 819464727 819464727 512662640 512662640 197816540 684860562 684860562 597689174 684214033 684214033 59253248 59253248 809196291 809196291 157266484 157266484 151418372 140791540 60331024 48307154 302196738 302196738 312484880 385557112 385557112 344175248 129685368 390563778 390563778 41569664 60361552 549906254 1020023955 1020023955 474091711 365353194 487635984 487635984 269619714 336991090 397810554 397810554 331823346 331823346 314644512 593784832 594016689 609338129 621205545 621205545 635204808 635204808 551028417 551028417 8787649 9478720 15583872 29098784 153917124 566983056 578692276 578692276 1036134309 1036134309 923153003 923153003 520491038 570693777 570693777 310642770 61083442 902069783 902069783 760158596 575252633 575252633 212404480 90324193 88096800 665304096 860618993 860618993 635057650 975969280 975969280 975311127 975311127 616438810 250226688 656487725 656487725 610837272 610837272 540275457 677594016 677594016 129434640 129434640 121848320 1127096 3069409 857136227 857136227 911451460 911451460 927835435 927835435 621855620 764100174 816973275 1073088752 1073088752 1034479872 1034479872 752716412 182114004 182114004 825096204 825096204 61009027 178309328 178309328 416600084 494624626 494624626 485107188 952328526 952328526 35235605 56726408 79290512 554893872 813867871 813867871 770876644 770876644 602232829 833312073 837387413 958424992 958424992 445462572 277349442 336756298 336756298 268822530 1035252835 1035252835 959970336 940111173 940111173 893682831 893682831 898211052 898211052 750486177 665412977 497476357 580108900 721629237 721629237 867503975 867503975 657753130 856652081 861139635 1033673831 1033673831 626399913 161469774 1060219903 1060219903 259502136 239338112 316840390 316840390 173539920 417914818 417914818 326795184 208851852 234878156 495376140 495376140 243612318 963098813 963098813 657527081 657527081 626241621 819986883 819986883 1058688806 1058688806 1045764016 427177082 168232292 524944600 524944600 360788264 428575874 503383370 503383370 249635292 531671536 531671536 223545904 403467560 450226902 450226902 170509250 9473600 119474080 119474080 117778488 398629754 398629754 101303480 70565968 5095488 35217488 35217488 24553120 24553120 442669312 469685732 469685732 552620032 552784833 552784833 742539288 742539288 279308610 279308610 80378880 474876928 579731528 579731528 932469497 932469497 382122130 428128333 501164553 538043402 568093258 568093258 653299926 1016185039 1016185039 910873755 910873755 600974160 600974160 989668529 989668529 239407340 237271344 58393316 5741184 5741184 25986240 54822112 54822112 10973220 233298196 233298196 244400384 244400384 145261444 242401424 242401424 268960770 337117704 337117704 351462580 413729960 413729960 205636992 409601280 409601280 161474052 25565280 61340198 847830310 847830310 977933604 977933604 861929907 331473138 331473138 198238450 223613964 223613964 201775116 180660544 180660544 202795664 202795664 358787112 974133653 974133653 453267128 814528001 814528001 865010072 865010072 621332865 866404705 866404705 852237568 887617995 1025845384 1025845384 206736140 125948068 136888432 726574832 726574832 60866576 60866576 234893520 518721644 518721644 71312680 491576016 491576016 372665422 199623094 297822592 1011393229 1011393229 421269280 667232436 667232436 683780657 683780657 588515889 598804784 598804784 581232961 580960544 641956256 641956256 694483936 694483936 673370373 673333256 69750804 331513942 670257472 843752360 843752360 646058073 407507085 612063952 612063952 795499688 795499688 714096705 676791433 676791433 859782329 859782329 836371875 950685729 950685729 826503715 1028203695 1028203695 720383098 218441772 508962616 520235372 520235372 789177405 789177405 779872293 678951813 812902659 951400459 951400459 1069615730 1069615730 876970509 1002284694 1002284694 916253735 1056887754 1056887754 790029924 790029924 778545687 778545687 987240694 987240694 316172023 328145216 328145216 425837088 425837088 328356960 328356960 198875922 188669748 55530900 776145291 776145291 465952150 1051502341 1051502341 612256901 41865152 565898549 565898549 1067533577 1067533577 950554624 572835081 572835081 558697253 584319645 623636768 623636768 761121400 761121400 773114397 773114397 721920188 721920188 221405508 193344624 1012702668 1012702668 595199792 724057911 878972426 878972426 269494320 40444032 556157058 958693248 958693248 561776390 447791958 861568805 861568805 100057280 100057280 561826735 561826735 986724145 986724145 254374702 498627420 939524103 939524103 862433433 667365777 667365777 278312129 271190192 317116114 317116114 575661624 877145649 877145649 628023281 663301672 663301672 573731819 897613922 1036539983 1036539983 612140869 690744068 690744068 628908558 566266184 539112824 901329197 901329197 316482971 830953680 830953680 85265024 311427666 311427666 272629890 688931264 688931264 195039514 195039514 172829532 49096044 55896856 242204872 242204872 222442688 222442688 577504784 577504784 897588930 897588930 630317578 886484138 886484138 608313012 561261442 784430175 1042915806 1042915806 964834232 225444208 130097264 130097264 699024417 699024417 648785041 634727560 602055680 602341417 614600792 614600792 639635960 639635960 627201489 563577008 563577008 754964164 754964164 626958985 383129728 1021053191 1021053191 707795758 707795758 587992112 587992113 587992113 675547269 675547269 513163352 513163352 263107004 553672480 553672480 469880475 418002383 399297202 464588308 633830258 633830258 614794291 861482922 861482922 444105140 346669890 343459722 318324888 50397360 265454012 265454012 589459573 589459573 841011306 841011306 822132771 843162133 843162133 587334167 968361600 968361600 908602799 868230150 296328530 296328530 170925392 320915170 320915170 328468498 328468498 376256906 376256906 377918648 377918648 353043552 119675224 386617674 386617674 35202576 35202576 207218316 381752378 392437100 392437100 336252682 423402532 487562988 1021522383 1021522383 826228418 826228418 210994467 269500704 269500704 951343072 951343072 428085348 285635242 202619618 361014720 540081230 550554977 550554977 557963713 560623616 839136272 839136272 749595981 749595981 1037058920 1037058920 535312103 570456320 695684384 695684384 72044064 553951368 576267921 576267921 670797440 670797440 147114916 73318320 247397108 247397108 50306240 80426184 135630848 215797452 215797452 257420934 257420934 453521318 463604832 463604832 345320010 366506434 366506434 283541408 66110720 44622400 44622400 263458648 263458648 61202448 133204624 133204624 104933616 104933616 73666832 715505352 715505352 707547973 707547973 614415945 571084817 663750112 663750112 536870913 536870913 538918401 612240548 612240548 537969153 537348736 40562016 50046688 50046688 64855136 64855136 27123124 211843098 211843098 175542048 400519586 400519586 972599322 987371223 987371223 666904303 474026579 721606768 775532776 775532776 657645352 657645352 187987756 755067724 755067724 543335064 604049370 955274927 1053909016 1053909016 754805664 771582592 771582592 172089492 1067659405 1067659405 1051797591 358942810 356589738 130097226 100737048 810158327 1002706051 1002706051 938433794 938433794 893960481 893960481 689963301 471336329 203949354 363341128 837363538 855122899 871699874 871699874 11744512 27203398 411698496 411698496 404489297 945538581 945538581 848155760 697303109 194008821 738339566 738339566 775130267 775130267 778647389 963342530 963342530 659116201 690251573 690251573 629071785 629071785 576476752 227548512 164451728 157759856 157759856 154139104 160055424 160220256 730755271 730755271 359383794 690020665 755393487 755393487 443427998 443427998 834049795 834049795 811131187 52826680 646254689 646254689 337981700 337981700 49098192 170670868 173015700 178442753 702044437 727588533 727588533 701372901 730863792 730863792 144590964 137102740 165292740 538444104 618869193 618869193 564996840 83835864 238028804 238028804 256902032 256902032 205523640 241697452 241697452 168565216 243799640 243799640 257037260 257037260 251793880 791677657 791677657 227017836 790172232 790172232 194748520 194748520 664070760 664070760 654711192 649829720 645126041 572586060 993070153 993070153 639444393 681377796 681377796 973677684 973677684 478678027 521751216 959849640 959849640 825438465 607336810 607336810 319914842 681371981 763701357 995967801 995967801 657501879 170680976 554977920 554977920 406324998 406324998 673194046 673194046 343165381 555764142 986024730 986024730 811951061 811951061 714914877 714914877 816430466 816430466 528509035 407115916 767895687 767895687 635699688 889309538 889309538 749564385 264833660 264833660 229797976 138478780 182002840 214639564 214639564 153104856 18874656 33559120 144126576 144126576 29702804 14909588 175751216 183452996 183452996 40565776 160776548 160776548 146260768 496026228 496026228 243356780 243356780 227980484 227980484 240821256 240821256 173273748 172805268 241781248 287262235 908705322 908705322 49052080 19177536 4142720 39833424 59147072 59147072 50937120 324551554 324551554 441838230 441838230 146511156 281681556 382418242 382418242 251609052 465149428 465149428 382622084 1007833893 1007833893 757237549 401175748 490471130 764817076 764817076 476786774 749566225 749566225 1040716963 1040716963 154017076 191268913 321018076 501533166 719699006 719699006 897684515 897684515 646644809 646644809 1033799186 1033799186 957367310 957367310 805455404 288010314 161673538 665315107 928915131 928915131 1058487225 1058487225 911217448 911217448 817432507 655622184 655622184 877407399 877407399 757470217 757470217 440733591 889766955 889766955 378671369 66062962 1054162366 1054162366 649012265 662732628 662732628 545517633 825605888 826987683 928385826 928385826 619866020 488769975 624344496 624344496 578422800 810758787 810758787 528951933 297844962 632886502 973801259 973801259 948970640 384434945 405627204 615635467 888267723 987826513 987826513 213928833 210689100 210689100 85810748 281348656 327994482 327994482 378221658 378221658 303179336 195643224 149063584 150326400 547712132 547712132 723289268 723289268 705741333 24692661 140791540 140791540 60331024 44433472 44433472 16386960 173592256 173592256 138955504 23077024 70304288 70390536 72745181 705828949 705828949 151163001 753535633 753535633 470224944 470224944 487635984 756036678 756036678 630871739 1054642717 1054642717 771889706 168201360 571674688 590897363 590897363 539521985 539521985 608936416 873149451 873149451 72544675 590221744 590221744 573312497 378747787 33426656 153917124 694609312 694609312 578692276 1036134309 1036134309 923153003 923153003 520491038 570693777 570693777 310642770 61083442 902069783 902069783 760158596 214279364 214279364 212404480 70948480 82532745 665304096 677659912 1009109389 1009109389 676203075 676203075 441191685 824199170 824199170 956817478 965294085 965294085 610837272 610837272 540275457 677594016 677594016 133165888 133165888 121799528 122234616 122234616 857136227 857136227 911451460 911451460 927835435 927835435 880927298 880927298 816973275 1073088752 1073088752 1034479872 1034479872 816400248 632940393 906644188 906644188 825096204 61009027 178309328 178309328 526811440 526811440 485107188 485107188 952328526 952328526 334129136 334129136 233968702 457303750 457303750 403857814 698376036 698376036 602232829 833312073 837387413 958424992 958424992 445462572 975214080 1019747615 1019747615 1015285839 1035252835 1035252835 959970336 940111173 940111173 208183513 950658375 950658375 898211052 126403704 305489234 438106582 662357052 721629237 721629237 867503975 867503975 603110576 856652081 861139635 861139635 617410063 68874360 161469774 273478928 273478928 249430192 63519836 316840390 316840390 214832096 417914818 417914818 217556344 217556344 135739908 407044112 407044112 243612318 236194332 177283668 43057156 1179648 626241621 626241621 802015612 1058688806 1058688806 1045764016 580979233 698557824 698557824 524944600 352960912 392766906 392766906 212181034 53613360 147441392 147441392 188952296 188952296 44312768 303971088 303971088 302000130 119474080 166272276 166272276 398629754 398629754 101303480 103401304 103401304 201451004 201451004 702971005 702971005 442669312 469685732 839310475 839310475 749063244 653554267 806232824 814289344 814289344 106567320 100936264 631903889 631903889 579731528 545261582 1033252422 1033252422 487391584 487391584 538043402 568093258 568093258 653299926 1016185039 1016185039 910873755 910873755 395621238 395621238 989668529 989668529 239407340 237271344 182370144 174638484 161739232 100353248 100353248 83018112 60765888 60765888 77045944 229850776 229850776 246874376 246874376 242401424 268960770 337117704 368181952 368181952 312219158 87100614 61315172 409601280 438133588 438133588 990403412 990403412 732334139 765482312 765482312 938734587 938734587 116570059 355202600 355202600 319382552 381854216 381854216 292094378 474555534 474555534 474120192 474120192 488669612 488669612 453267128 453267128 221546738 149163264 165679508 186782004 186782004 184680704 156361536 165675492 783725757 783725757 650351349 650351349 221151476 726574832 726574832 550165780 183579113 562143341 616636481 622997988 622997988 566494285 693518942 836542338 836542338 297822592 1011393229 1011393229 421269280 667232436 667232436 683780657 683780657 588515889 598804784 598804784 581232961 580960544 641956256 641956256 694483936 745673484 745673484 288408453 743609637 743609637 690082163 748717051 748717051 608239625 407507085 136469760 120426240 795499688 795499688 309346495 676791433 676791433 674097442 811005312 811005312 950685729 950685729 768087783 1028203695 1028203695 720383098 218441772 508962616 508962616 342496650 314802490 745752048 745752048 731906950 942233380 959178535 960230695 1069615730 1069615730 876970509 1002284694 1002284694 916253735 269345567 268748802 790029924 973152548 973152548 778545687 657799494 701967767 975636804 975636804 812770179 812770179 546168514 316216448 316216448 172630482 171443988 65667328 776145291 776145291 465952150 1051502341 1051502341 612256901 169481748 382399302 382399302 1067533577 1067533577 950554624 572835081 572835081 558697253 584319645 623636768 623636768 761121400 761121400 546845028 606249372 606249372 586606172 29241280 48234960 84416580 227417196 227417196 227417196 732209413 732209413 305914258 985396662 985396662 968944357 968944357 882240075 447791958 861568805 943245063 943245063 750004611 619308489 561826735 1040451636 1040451636 693288677 693288677 939524103 975610904 975610904 667365777 667365777 278312129 271190192 317116114 317116114 575661624 877145649 877145649 628023281 128923969 573731819 573731819 897613922 1036539983 1036539983 612140869 612140869 628908558 628908558 566266184 539112824 901329197 901329197 817501254 817501254 678568641 910712323 910712323 1055657702 1055657702 910838512 910838512 760482477 588513436 126124736 122997432 66751576 35787024 108105744 108105744 67714176 67714176 297439939 897588930 897588930 630317578 886484138 886484138 563869281 561261442 784430175 1042915806 1042915806 964834232 225444208 447938962 447938962 699024417 699024417 648785041 602055680 602055680 602341417 614600792 614600792 639635960 639635960 627201489 563577008 563577008 380167960 394896906 418226542 500633492 500633492 495922846 253115932 362030216 587992112 587992113 587992113 496948248 118502080 683147273 683147273 722055996 722055996 433639000 433639000 828131466 828131466 814269507 537168962 386817464 386817464 98093826 444105140 444105140 346669890 343459722 318324888 61341944 124743608 124743608 320 279101504 952287618 963773095 963773095 939659271 611917959 620838057 620838057 36319528 466772474 466772474 296328530 296328530 170925392 320915170 320915170 328468498 328468498 376256906 376256906 377918648 377918648 396117370 396117370 398398506 398398506 110889280 35202576 5366400 381752378 381752378 357953632 336252682 423402532 487562988 487562988 301940706 826228418 826228418 674782094 810687119 810687119 829575456 829575456 428085348 285635242 202619618 361014720 540081230 550554977 550554977 301855914 274278018 839136272 839136272 749595981 1050854744 1050854744 1037058920 535312103 570456320 695684384 695684384 72044064 553951368 576267921 576267921 670797440 670797440 659028153 794920461 794920461 534529543 534529543 345881600 127926648 507118485 845812377 955061277 1017982287 1017982287 577341944 577341944 871043568 871043568 7265664 66110720 66110720 44622400 200388032 200388032 191381984 191381984 163245204 32219944 91889540 171261916 692069928 715505352 715505352 707547973 707547973 614415945 242790096 880899322 1057456507 1057456507 986048727 963484143 789270951 612240548 96570578 111988056 111988056 107722944 50046688 34128912 86258528 86258528 25717808 42330192 257340948 958018493 958018493 560485594 910348304 910348304 838864960 847384659 856877134 856877134 775532776 657645352 1023557808 1044566175 1044566175 797102205 1053243381 1053243381 955274927 1053909016 1053909016 754805664 754805664 172089492 172089492 276832604 379584858 379584858 358942810 356589738 130097226 100737048 490834012 1059974463 1059974463 938433794 949410375 949410375 922394173 583008465 886575386 886575386 363341128 837363538 855122899 871699874 871699874 163188390 30492640 411698496 411698496 704833168 945538581 945538581 949791890 949791890 39436947 738339566 967114785 967114785 547435459 638199704 638199704 964565612 964565612 690251573 690251573 629071785 629071785 576476752 227548512 164451728 157759856 157759856 200574112 200574112 196229972 730755271 730755271 359383794 690020665 755393487 755393487 443427998 443427998 834049795 834049795 811131187 86314848 646254689 646254689 337981700 337981700 49098192 170670868 173015700 173015700 157986640 157986640 141482260 141482260 59843184 144590964 144590964 61784176 22643744 61412104 126428280 126428280 120663352 102834456 238028804 238028804 256902032 256902032 205523640 112197660 138415104 168565216 168565216 116787504 116787504 146806632 678171364 678171364 243978288 227017836 790172232 790172232 631639232 631639232 614143576 614143576 550529216 550529216 79843529 140133508 182199172 182199172 181410244 681377796 681377796 761561542 1031094607 1031094607 298593897 959849640 959849640 134339553 281078570 281078570 355844290 355844290 353441088 1059205556 1064266787 1064266787 772306391 554977920 554977920 406324998 406324998 673194046 673194046 343165381 921012488 986024730 986024730 352592206 508578557 508578557 510214576 816430466 816430466 208273408 208273408 767895687 767895687 701236452 889309538 889309538 609671552 79568712 229797976 229797976 138478780 182002840 214639564 214639564 153104856 119781928 139079936 144126576 144126576 95820616 90921320 192791780 192791780 272144300 470447116 470447116 290244112 398997961 610529673 856859079 856859079 663173241 663173241 227980484 223899440 223899440 715466564 715466564 708652821 512330479 908705322 908705322 270437760 27956352 5857728 47663952 47663952 32256000 309454960 309454960 311078416 311078416 269298690 47229970 33925840 33925840 73933320 73933320 7939968 96813918 153781141 1007833893 1007833893 757237549 401175748 490471130 764817076 764817076 404930586 749566225 749566225 263586676 892414446 892414446 827065349 321018076 501533166 719699006 719699006 897684515 897684515 646644809 737168914 1033799186 1033799186 820518209 625643474 858919731 858919731 379589225 349439553 928915131 928915131 1058487225 1058487225 911217448 911217448 826097424 826097424 558170346 877407399 877407399 757470217 757470217 674008582 889766955 889766955 449909572 145892054 1054162366 1054162366 975404648 975404648 662732628 545517633 825605888 826987683 826987683 539148433 539148433 556274832 556274832 46149712 578422800 578422800 542188161 289439818 297844962 482346182 482346182 198901728 198901728 183687892 405627204 405627204 305237330 318671616 318671616 91057520 210689100 210689100 85810748 281348656 327994482 1058833985 1058833985 618168468 618168468 597247692 719958321 719958321 671327620 671327620 723289268 723289268 717357587 717357587 464705042 464705042 307838466 307838466 315768000 315768000 305171842 308760258 308760258 288821080 194775668 752931429 752931429 705828949 705828949 151163001 753535633 753535633 939625860 939625860 732514338 756036678 756036678 630871739 1054642717 1054642717 771889706 96993337 571674688 590897363 590897363 539521985 539521985 608936416 873149451 873149451 838422920 898212202 898212202 574785472 651974530 651974530 42416128 694609312 694609312 316957430 316957430 315231392 327555186 496539895 496539895 539721409 539721409 441228932 941056116 941056116 365105551 89252520 33241056 94198568 99713832 126116880 126116880 42764408 677659912 1009109389 1009109389 1044123515 1044123515 1067255244 1067255244 824199170 956817478 965294085 965294085 481093963 671687685 1068306348 1068306348 217802092 327831856 368636040 368636040 264357412 218736264 218736264 9486912 68317184 357249664 357249664 356631714 880927298 880927298 541406224 541406224 522586170 790261604 852284908 852284908 632940393 906644188 906644188 219733802 648660986 817244604 817244604 526811440 526811440 522067518 1032886839 1032886839 814838542 334129136 391605076 391605076 646916610 646916610 541538433 698376036 698376036 381949272 363666152 408366714 1008267019 1008267019 735823109 975214080 1019747615 1019747615 1015285839 983698444 983698444 646372871 542282368 159433112 208183513 950658375 950658375 1040316438 1040316438 547356993 783168320 807926019 807926019 974676760 974676760 931398808 931398808 858906554 918103899 918103899 861714239 272822999 415412012 415412012 249430192 249430192 155848956 161853220 168678376 356011602 501876668 501876668 326768562 388008670 388008670 298214014 441380226 441380226 965809005 965809005 521086711 798046820 798046820 590972509 802015612 802015612 323486898 850068978 850068978 698557824 698557824 197081760 352960912 392766906 413587782 413587782 22104202 191710886 255793980 255793980 155589198 434900454 434900454 354035138 302000130 238800924 238800924 227250800 44638200 90964916 90964916 103401304 223073480 223073480 201451004 702971005 702971005 780174904 780174904 839310475 839310475 749063244 653554267 806232824 814289344 814289344 106567320 100936264 891473611 891473611 814633498 814633498 1033252422 1033252422 646497098 646497098 546801784 546801784 43284491 37565440 37565440 53109876 144961860 153670964 170176836 170176836 136714500 118462572 137296164 182370144 182370144 174638484 161739232 100353248 112991313 544856625 662368553 665099480 665099480 229850776 229850776 723612073 723612073 592486950 666112984 666112984 368181952 368181952 312219158 266785392 266785392 170544224 438133588 438133588 990403412 990403412 999385122 999385122 857025075 938734587 938734587 172621841 355202600 355202600 319382552 381854216 381854216 518891998 518891998 474555534 474120192 474120192 786450847 786450847 112990660 675286569 675286569 593559616 629148433 724831105 854644549 943604528 1027879010 1027879010 783725757 783725757 650351349 650351349 221151476 184734356 550165780 673318752 673318752 562143341 616636481 622997988 622997988 566494285 693518942 836542338 836542338 279377476 438322122 472982286 472982286 270533248 181453524 181453524 55839408 55839408 31926576 19076928 57604800 57604800 285220897 825566483 825566483 745673484 745673484 288408453 743609637 743609637 690082163 366190856 985669719 985669719 583082193 118731881 73602560 1059620334 1059620334 518021695 392816058 425110018 810564360 879180171 894929411 894929411 562386339 290075618 290075618 435378122 435378122 352768056 522176802 522176802 489980553 489980553 476404953 731906950 731906950 942233380 959178535 960230695 960230695 612633456 376024072 521175110 521175110 772182066 772182066 643852478 680795891 973152548 973152548 489427235 657799494 701967767 975636804 975636804 812770179 812770179 546168514 405613830 317006272 156772756 65667328 75632992 75632992 251947032 251947032 411044688 411044688 177242134 169481748 169481748 167777792 34189312 37856404 134291460 710525272 710525272 514339334 728698242 728698242 632910700 671798277 671798277 1009255031 1009255031 462781696 462781696 71044196 56877472 998652920 998652920 652355850 473117454 1030095994 1030095994 975301365 985396662 985396662 968944357 968944357 882240075 169404935 770968242 943245063 943245063 750004611 619308489 336489601 1040451636 1040451636 693288677 693288677 646795512 975610904 975610904 135072015 201382016 205672628 205672628 54526128 52429104 306435768 331759032 331759032 118101600 114805224 115335984 168092686 738804934 738804934 843524228 843524228 443148758 501976754 501976754 661333607 661333607 379981596 379981596 1014050318 1014050318 849421258 910712323 910712323 1055657702 1055657702 910838512 910838512 760482477 588513436 126124736 122997432 66751576 35787024 36774672 51446048 578455536 578455536 20699265 537178496 537178496 139467276 417480364 417480364 628819986 893786289 893786289 885133515 360727904 346660864 148058820 447938962 447938962 46698448 10535232 10486080 14680128 14729344 14729344 33554448 83886240 83886240 71303192 67108872 368730098 380167960 380167960 394896906 418226542 777834766 777834766 495922846 253115932 362030216 386925114 386925114 496948248 741626560 753326541 836377189 883610955 883610955 722055996 433639000 433639000 828131466 828131466 814269507 537168962 304546842 304546842 67656712 113417650 566083409 566083409 538964329 809789635 809789635 675862443 615563785 232525950 975228949 975228949 963773095 963773095 939659271 611917959 620838057 620838057 36319528 168380068 168380068 45639024 19451824 139814384 185874580 185874580 176961792 300861200 332798706 332798706 87975360 269529914 396117370 396117370 398398506 398398506 110889280 69504792 69504792 317846968 394449018 394449018 63359178 76042304 76042304 690633998 743752171 743752171 233292419 674782094 810687119 810687119 829575456 829575456 421533926 421533926 152882724 353420676 950229038 950229038 415130542 415130542 775562344 775562344 529097492 734127212 1050854744 1072136795 1072136795 894467100 559944107 465289496 380167725 30926848 30926848 93783776 93783776 272348262 329077956 659028153 794920461 794920461 621760408 621760408 345881600 247661672 507118485 845812377 955061277 1017982287 1017982287 577341944 577341944 871043568 871043568 23018144 51597888 137996180 137996180 200388032 200388032 192277492 192277492 163245204 203385028 203385028 174345560 692069928 692069928 158436112 393350450 393350450 309072634 242790096 880899322 1057456507 1057456507 986048727 963484143 789270951 23254021 96570578 111988056 111988056 107722944 60983136 57713328 116038668 392861966 392861966 466279774 466279774 958018493 958018493 814809632 910348304 910348304 838864960 847384659 998377589 998377589 683146861 512017986 1023557808 1044566175 1044566175 797102205 1053243381 1053243381 407003138 966151278 966151278 618286017 427619398 343619112 963761383 963761383 488777184 78192960 78192960 10559808 2105408 249038432 434735321 1059974463 1059974463 549371934 949410375 949410375 922394173 561124257 886575386 886575386 344732536 344732536 23736736 33232262 163188390 163188390 164809696 164809696 37277638 704833168 943837378 943837378 949791890 949791890 1057182286 1057182286 999330742 999330742 589545783 811312410 811312410 964565612 964565612 758461104 72136980 84724776 105676976 187246464 187246464 46827796 140312836 140312836 200574112 200574112 196229972 196229972 158671216 206459268 254816272 254816272 146874564 155648268 155648268 276934274 276934274 86314848 271802178 271802178 95820552 95820552 407912790 407912790 147316420 285087634 285087634 3333248 18169888 34669584 203372438 203372438 223398076 223398076 374341018 374341018 339968778 126428280 271587090 271587090 102834456 345511794 345511794 114037504 114037504 41420232 38802960 138415104 138415104 72040176 116787504 116787504 146806632 678171364 678171364 581359376 655314216 655314216 243428360 631639232 631639232 102167728 537610249 537610249 580431888 580431888 579370560 182199172 182199172 181410244 171311696 9702160 761561542 1031094607 1031094607 1033711215 1033711215 419415553 419415553 281078570 559026849 559026849 627266726 627266726 1059205556 1064266787 1064266787 772306391 768642005 768642005 199494132 668994529 668994529 233833452 165675492 921012488 921012488 696557576 696557576 141857493 287663471 1061785813 1061785813 524427383 412100547 417602146 480452814 480452814 701236452 701236452 684006537 415497391 130684500 398987220 460855650 511445628 511445628 260442704 260442704 119781928 119781928 139079936 139079936 95820616 95820616 90921320 192791780 192791780 272144300 470447116 470447116 290244112 493572572 610529673 856859079 856859079 663173241 663173241 105171096 223899440 223899440 715466564 715466564 708652821 512330479 324568854 270437760 270437760 27956352 15692608 47663952 47663952 17858976 309454960 319898738 319898738 463487604 463487604 156605172 156605172 33925840 140025016 267701244 514655764 514655764 283138272 158709080 96069480 95857184 99540456 99540456 121815112 121815112 2380032 140121192 199234780 224602092 892414446 892414446 980551062 980551062 198856372 150968097 741705313 982344196 982344196 115543019 737168914 737168914 820518209 820518209 872677971 1065881372 1065881372 783286648 891289714 891289714 513647730 513647730 428598902 579458236 579458236 826097424 856162600 856162600 823729267 212994059 403459332 674008582 674008582 645415900 645415900 742255409 742255409 780248899 780248899 975404648 975404648 693632277 189227057 722475264 789571601 789571601 539148433 539148433 556274832 556274832 542322688 543447937 543447937 541249665 269804290 327949584 482346182 482346182 401372594 198901728 183687892 537921297 537921297 305846802 570831367 570831367 310836232 507729222 507729222 642330121 642330121 504976030 1058833985 1058833985 719327965 719327965 597247692 719958321 719958321 671327620 671327620 197165157 671746577 717357587 836729861 836729861 464705042 307838466 307838466 315768000 315768000 305171842 308760258 308760258 288821080 194775668 752931429 752931429 103867920 70593288 106903000 663682784 663682784 939625860 939625860 732514338 749243936 765758317 765758317 782224932 805830285 805830285 546801714 864246355 864246355 563343969 278147776 278147776 583383576 617796297 838422920 838422920 898212202 898212202 574785472 651974530 651974530 135670980 135670980 684528293 822479904 1016923840 1016923840 420743718 747471490 747471490 539721409 882931024 882931024 941056116 941056116 365105551 88776380 676148712 676148712 343557194 343557194 315960666 564183393 564183393 593849479 847355956 1044123515 1044123515 1067255244 1067255244 677850151 906022685 906022685 658767387 957296806 957296806 1068306348 1068306348 735361264 801206367 801206367 573056929 554812201 558708097 558708097 310383107 238100132 839471206 839471206 880037508 880037508 698165326 541406224 678038815 1043076485 1043076485 852284908 852284908 666393728 846466100 846466100 219733802 648660986 817244604 817244604 434634806 522067518 522067518 1032886839 1032886839 814838542 148157404 391605076 407570756 646916610 646916610 613488224 613488224 448512283 705496565 705496565 683204080 1008267019 1008267019 735823109 776042378 776042378 384043482 606080256 900766631 900766631 553960643 562864304 562864304 329715154 329715154 791593765 1040316438 1040316438 707973909 783168320 807926019 807926019 974676760 974676760 931398808 931398808 858906554 918103899 918103899 861714239 272822999 415412012 415412012 122949130 155848956 155848956 161853220 168678376 356011602 501876668 501876668 326768562 388008670 388008670 298214014 441380226 575164119 965809005 965809005 606208973 798046820 798046820 328932407 292824360 323486898 323486898 850068978 850068978 304555905 197081760 197081760 296793668 296793668 413587782 413587782 22104202 366033488 399184122 399184122 383256618 434900454 434900454 354035138 279324020 238800924 255398464 255398464 238358964 183638740 86582428 30069984 223073480 223073480 163820084 163820084 100676764 780174904 780174904 726189237 992808154 992808154 563660385 563660385 283309993 90692168 90692168 24384672 891473611 891473611 814633498 814633498 344985611 556271112 646497098 646497098 546801784 546801784 539833457 613381206 783133007 783133007 739170619 739170619 374318182 478162138 948523225 948523225 182723632 182723632 27527076 34120816 34120816 23762504 112991313 544856625 662368553 665099480 665099480 630403689 617906176 723612073 723612073 592486950 666112984 666112984 295043048 295043048 337004274 337004274 266785392 296262672 296262672 322488337 673787495 673787495 999385122 999385122 857025075 852511793 801228385 589377832 589377832 665094404 665094404 566495457 323240432 931370261 931370261 680004895 635579612 357303332 786450847 786450847 151522474 675286569 675286569 593559616 629148433 724831105 854644549 943604528 1027879010 1027879010 533138390 317014049 197247290 388030708 388030708 30672960 30672960 673318752 673318752 144184933 144180804 1038951754 1038951754 359402922 359402922 77627440 77627440 128839032 154420562 472982286 472982286 270533248 604013185 675293733 675293733 543500337 548927328 581619809 587415664 587415664 540287058 825566483 825566483 674835123 554820144 303678016 1004325312 1004325312 673443172 202876079 985669719 985669719 583082193 118731881 73602560 1059620334 1059620334 836675305 392816058 942451724 942451724 879180171 894929411 894929411 562386339 959705889 1015247651 1015247651 539204262 400818664 522176802 522176802 489980553 625982405 625982405 476404953 746906543 1016119876 1016119876 806668803 630458541 854435704 874818660 874818660 890618735 890618735 815273689 815273689 680795891 680795891 756681144 756681144 669508427 838596765 838596765 299178112 403516422 403516422 405613830 405613830 554121249 554121249 222632429 959396621 959396621 633025803 663561265 663561265 648357967 648357967 205500416 317862990 317862990 911827964 911827964 745747364 745747364 710525272 484648519 728698242 728698242 632910700 671798277 671798277 1009255031 1009255031 462781696 462781696 71044196 65128928 998652920 998652920 982917764 982917764 1030095994 1030095994 975301365 826394010 718849293 767839445 767839445 896623200 896623200 804840045 578422360 607195629 607195629 180048352 223138189 223138189 616089417 645414345 931529356 1003887351 1003887351 561992620 604763145 604763145 275431960 557052971 557052971 319605810 911644329 911644329 331759032 114805224 114805224 115335984 168092686 738804934 738804934 843524228 843524228 570843344 549618366 549618366 661333607 661333607 293089000 320866840 1014050318 1014050318 901748177 901748177 431842400 431842400 304660528 216289796 216289796 245631056 245631056 128501112 241357152 241357152 103142692 99195784 72943096 578455536 578455536 547316643 302397074 600250923 600250923 549722314 822536707 822536707 893786289 893786289 885133515 692411812 692411812 77167584 547301513 619546768 677978665 677978665 685001541 689251125 729941756 735716121 735716121 568463624 576848009 643961241 643961241 560339257 536877184 2099328 79011048 272200419 933951291 933951291 412570229 433687783 433687783 319121426 176424100 671139904 741626560 753326541 836377189 883610955 883610955 500179452 305210130 319553742 319553742 245647606 182716580 412615062 412615062 247733540 500169185 771950508 771950508 566083409 732240644 809789635 809789635 683287345 672663045 232525950 975228949 975228949 47166207 750642799 750642799 485854349 990381466 990381466 760817325 962593594 962593594 355439382 445894408 445894408 428490770 185874580 298101312 300861200 332798706 332798706 87975360 127013496 127013496 79043400 396436336 396436336 373383950 475046408 475046408 317846968 394449018 394449018 356780266 417598092 417598092 690633998 743752171 791208509 791208509 292132580 292132580 677219205 814744482 814744482 421533926 421533926 80220698 353420676 950229038 950229038 415130542 749280032 775562344 775562344 529097492 734127212 963342540 1072136795 1072136795 1018767183 1018767183 898646613 898646613 520142910 263213886 415638606 654185786 952157730 952157730 329077956 131501296 1037180806 1037180806 730406717 292268227 247661672 348423252 348423252 281593026 86508840 86508840 25739592 21923008 275253376 275253376 61141568 61141568 137996180 137996180 168108064 196024960 196024960 192277492 143844692 203385028 203385028 174345560 559220380 676004709 676004709 669175673 669175673 584896953 130765892 130765892 661185384 661185384 657658185 657658185 596259568 542713473 322470689 70079680 92700744 92700744 60983136 57713328 116038668 392861966 392861966 466279774 466279774 305176284 51381968 814809632 814809632 492857542 124645168 730075255 998377589 998377589 512017986 512017986 581223503 695753794 695753794 472553734 868401454 868401454 636990513 978271383 978271383 618286017 427619398 343619112 963761383 963761383 757663029 812247237 911708227 911708227 1042090748 1042090748 660909237 966020004 966020004 645172406 1027131183 1027131183 449847768 449847768 117448828 320938500 459550998 459550998 25830562 18621536 18621536 29910784 164809696 164809696 37277638 334514578 441574070 441574070 274557972 269694096 1057182286 1057182286 999330742 999330742 620954688 811312410 811312410 702545637 758461104 758461104 623621093 84724776 167219652 167219652 161788944 163206048 163206048 44437760 44437760 21389824 13715200 65989472 65989472 45273936 9209664 27788640 27788640 25957248 10736002 309094240 309094240 60424304 271802178 271802178 44466464 27266292 407912790 407912790 147316420 285087634 285087634 186832304 186832304 167774748 235079428 235079428 223398076 223398076 374341018 374341018 339968778 326682546 326682546 271587090 46798352 345511794 345511794 257819808 85117212 36706840 173541136 173541136 103550232 103550232 101974904 101974904 67374320 622408424 622408424 581359376 655314216 655314216 243428360 89351200 89351200 102167728 537610249 537610249 580431888 580431888 579370560 47207312 47207312 586730112 586730112 9702160 543800644 550840864 957678664 1033711215 1033711215 419415553 419415553 84335881 559026849 559026849 627266726 627266726 395423772 395423772 874879164 874879164 768642005 768642005 199494132 826542659 826542659 641001876 652337625 652337625 609604247 696557576 924845272 924845272 747170822 1061785813 1061785813 524427383 412100547 417602146 422180044 958476391 958476391 207827368 352920166 352920166 885133368 911872648 911872648 511445628 511445628 260442704 260442704 43260028 42940192 20786976 9194592 16777248 23745920 23745920 44673056 126724464 139573372 139573372 135471236 5243520 493572572 493572572 741592310 741592310 121054465 652878481 652878481 859477939 859477939 594170297 579081129 822218787 822218787 654378584 654378584 21073920 21073920 15692608 15692608 16115584 598672929 598672929 319898738 597473649 974035456 974035456 700139349 998654261 998654261 933938602 267701244 514655764 514655764 283138272 268179184 96069480 95857184 99540456 99540456 121815112 121815112 2380032 144183305 597890429 597890429 591009461 529149554 980551062 980551062 675882019 150968097 741705313 982344196 982344196 130146552 910428026 910428026 671088645 425239849 872677971 1065881372 1065881372 815764844 891289714 891289714 852929032 852929032 813836969 813836969 833976718 857421363 857421363 904157541 904157541 679575981 679575981 621891212 804463974 832677158 832677158 742255409 742255409 780248899 780248899 576750500 693632277 693632277 189227057 539886592 539886592 50332721 37946768 37946768 539627792 542322688 681585808 720398723 805429251 805429251 273195907 434934414 434934414 401372594 401372594 195887292 195887292 537921297 537921297 305846802 570831367 570831367 310836232 507729222 507729222 642330121 642330121 504976030 610944525 610944525 719327965 719327965 193462272 714217169 714217169 182852912 182852912 170268948 555663413 555663413 836729861 836729861 26001440 26001440 26355200 26355200 26024016 26024016 26419200 278762112 278762112 113890704 113890704 101459728 101459728 70593288 52953144 57740432 378841250 378841250 271058178 271058178 749243936 765758317 765758317 782224932 805830285 805830285 546801714 864246355 864246355 563343969 278147776 278147776 583383576 617796297 617796297 578633856 64491984 56698736 31592928 48501472 48501472 135670980 135670980 684528293 822479904 1016923840 1016923840 420743718 747471490 747471490 499968193 882931024 882931024 857791759 553786112 553786112 550714517 676148712 788796717 788796717 343557194 315960666 564183393 1050681546 1050681546 847355956 847355956 152840660 1009058456 1009058456 677850151 906022685 906022685 658767387 957296806 957296806 341312714 345285120 735361264 801206367 801206367 573056929 554812201 558708097 558708097 310383107 239578456 839471206 839471206 880037508 880037508 698165326 940125502 958735789 1043076485 1043076485 639503194 733777714 733777714 412141180 358792571 931584014 931584014 477042827 449404692 539918806 543088257 543088257 909632586 909632586 366893739 314523464 314523464 982642936 982642936 887955752 1024207247 1024207247 448512283 705496565 705496565 683204080 647103872 647103872 293164023 109125720 916599336 916599336 769655407 900766631 900766631 553960643 562864304 562864304 716070930 951057735 951057735 791593765 707973909 922900423 955945019 955945019 951423574 951423574 832986113 832986113 591065168 591065168 348210121 248256016 981534970 981534970 684723879 547913970 547913970 651711898 651711898 546226170 127733472 174694816 426621264 426621264 100487134 64079016 105066648 139497024 139497024 575164119 575164119 606208973 606208973 877732491 877732491 869546939 821171139 321727072 298530739 87033720 601335289 644533192 644533192 94392432 296793668 296793668 217269090 290496976 290496976 366033488 399184122 399184122 383256618 259579826 21043280 34418752 34418752 20136672 255398464 255398464 238358964 221389776 221389776 49353516 190654052 190654052 210973320 678440985 678440985 565875342 1027668203 1027668203 992808154 992808154 481535509 118146176 367474147 618773800 618773800 24384672 90703272 90703272 281479746 281479746 636504340 802474749 802474749 342983683 651012345 651012345 833939674 833939674 783133007 783133007 739170619 739170619 374318182 478162138 948523225 948523225 182723632 182723632 147606848 168330896 168330896 71435920 107381072 115203288 115203288 544295848 630403689 630403689 617906176 617906176 84095016 84095016 282952290 282952290 295043048 295043048 337004274 337004274 168297492 296262672 296262672 328221492 673787495 673787495 580930377 709596912 709596912 801228385 801228385 589377832 609093656 665094404 665094404 566495457 323240432 931370261 931370261 680004895 635579612 357303332 474220686 510747970 510747970 396657762 396657762 275780246 275780246 170004756 453118292 483050746 483050746 562094419 562094419 330824632 965143501 965143501 570865792 680790597 684184229 693860017 693860017 666105101 692167225 1038951754 1038951754 553858351 879371010 988180688 988180688 145509076 948603795 948603795 410633924 853918596 853918596 828664217 852806499 852806499 548927328 581619809 587415664 587415664 831624131 831624131 830474720 830474720 31719523 303678016 1004325312 1004325312 280697717 306676994 306676994 57666960 128870832 128870832 78125176 697368599 836675305 836675305 206069492 942451724 942451724 745806720 134913161 411374914 447321719 959705889 1015247651 1015247651 539204262 400818664 400818664 288504022 273590864 625982405 625982405 379635930 746906543 1016119876 1016119876 806668803 630458541 854435704 874818660 874818660 890618735 890618735 815273689 815273689 735984232 735984232 756681144 756681144 669508427 838596765 838596765 579241617 705117203 839583744 839583744 220439570 554121249 554121249 222632429 959396621 959396621 875070522 663561265 663561265 648357967 660252084 660252084 583348104 799883908 911827964 911827964 745747364 951618518 951618518 776606553 776606553 717408533 997486686 997486686 941670935 840165579 886049611 914459296 914459296 195150304 134258992 981938894 981938894 982917764 982917764 1009947743 1009947743 715610535 715610535 530325919 955009030 955009030 896623200 896623200 804840045 1046938966 1046938966 710670019 180048352 223138189 611132464 611132464 707738903 931529356 1003887351 1003887351 561992620 604763145 604763145 275431960 557052971 557052971 319605810 911644329 911644329 46232976 80751248 84737800 84737800 205212322 495766638 587540548 587540548 1041310239 1041310239 549618366 549618366 491454718 491454718 189424912 202510860 941236770 941236770 901748177 901748177 843537744 688841216 688841216 547208124 275867076 245631056 245631056 224288424 241357152 241357152 103142692 138445440 182231812 182231812 547316643 547316643 302397074 600250923 600250923 549722314 822536707 822536707 339040745 553975833 553975833 692411812 692411812 77167584 547301513 619546768 677978665 677978665 685001541 689251125 729941756 735716121 735716121 568463624 576848009 643961241 643961241 560339257 536877184 372829384 323869026 331581192 933951291 933951291 265192564 433687783 433687783 319121426 176424100 671139904 671139904 223355556 629508844 629508844 896196841 900461931 900461931 625955635 319553742 245647606 741833690 741833690 412615062 392324580 500169185 771950508 771950508 837938315 837938315 732240644 683287345 683287345 672663045 1051603146 1051603146 849820999 719656703 898917428 898917428 485854349 990381466 990381466 916141651 990783700 990783700 355439382 445894408 445894408 487561842 518064480 518064480 512617678 512617678 43775568 77703282 149740674 149740674 304552848 474134740 474134740 373383950 475046408 475046408 4228192 29934816 433084142 433084142 417598092 508050291 626205597 861744819 861744819 791208509 756811884 1033117609 1033117609 677219205 4793472 738459707 738459707 1061159182 1061159182 979444111 363184266 846495179 846495179 749280032 363254561 807328315 807328315 548144303 465905910 1010924888 1018767183 1018767183 898646613 898646613 520142910 263213886 415638606 654185786 952157730 952157730 658614143 773570077 1037180806 1037180806 730406717 292268227 381945024 421300355 702339757 1024892615 1041635871 1041635871 871029866 871029866 838955296 838955296 304591378 285681680 53212464 44310384 36823824 196024960 196024960 143814912 143814912 90436008 113185440 113185440 559220380 676004709 676004709 669175673 669175673 584896953 569906967 391780026 1048781298 1048781298 976750359 848492033 856798456 856798456 757149210 757149210 223175944 165241848 165241848 143409252 214794536 466438576 466438576 417647046 449294286 783496091 783496091 136086276 707284949 707284949 444685926 444685926 322877395 322877395 316985286 395246021 581223503 695753794 695753794 472553734 868401454 868401454 636990513 978271383 1002809381 1002809381 658770105 771695023 937039611 937039611 757663029 812247237 911708227 911708227 1042090748 1042090748 660909237 966020004 1031848047 1031848047 1027131183 1027131183 984932363 1067632715 1067632715 942740324 526386634 526386634 327497988 369567428 369567428 128524004 18031524 139213312 139213312 136055844 164601956 186145876 186464304 186464304 130332217 567698080 567698080 587761457 620954688 620954688 702545637 702545637 220586144 623621093 623621093 235819800 265294308 265294308 161788944 163206048 163206048 42365840 21389824 25002304 66093488 66093488 47628752 14110112 61632912 61632912 5556800 11833408 15883072 309094240 309094240 295896080 288303378 59128114 44466464 27266292 162272820 162272820 4326400 138842768 138842768 186832304 186832304 167774748 235079428 235079428 68557320 103161680 103161680 61086464 283679536 326682546 326682546 131910944 116392920 95716056 257819808 257819808 104858368 108004248 173541136 173541136 103550232 103550232 11086144 208345420 208345420 153748672 248055736 248055736 193862772 138276612 195464676 256152424 256152424 110662304 117563448 117563448 60586640 86400292 86400292 598059889 598059889 773230104 773230104 780930141 780930141 1062765583 1062765583 525411514 525411514 118753848 395313720 395313720 615911648 615911648 275837602 275837602 345628860 345628860 874879164 874879164 624502090 624502090 331440225 826542659 889225631 968333709 968333709 652337625 609604247 660045168 1071945037 1071945037 747170822 747170822 762358730 809101452 895845990 899413155 899413155 958476391 958476391 207827368 18350656 29885664 885133368 911872648 911872648 261783620 261783620 211667592 113637064 42940192 42940192 75495728 75495728 74744744 74744744 209764428 209764428 226183484 414646704 414646704 283855872 413861776 454891328 454891328 327661910 726605020 726605020 652878481 811928828 859477939 993791441 993791441 579081129 822218787 822218787 654378584 654378584 88380864 88380864 74464000 74464000 550230912 598672929 840605696 855427283 969645491 974035456 974035456 700139349 998654261 998654261 933938602 744159680 744159680 636365769 566709800 268179184 228202092 165282028 84427068 196026520 196026520 694452278 995547831 995547831 597890429 999793446 999793446 529149554 529149554 675882019 675882019 488251938 756142848 756142848 405316114 405316114 910428026 910428026 641593113 348194946 348194946 948461772 948461772 815764844 401206355 662685598 852929032 852929032 813836969 813836969 833976718 857421363 910257994 910257994 904157541 679575981 679575981 621891212 804463974 832677158 832677158 547865505 627603198 627603198 552085256 552085256 171609288 203835152 207097600 722394760 722394760 691948440 37946768 571115521 571115521 554316848 698022832 720398723 805429251 847090063 970801123 970801123 809846301 738103026 164357360 195887292 195887292 322639398 322639398 270628616 370784768 370784768 68433424 107453504 107453504 87417016 87417016 117452336 117452336 102547664 140575748 140575748 193462272 193462272 65936880 182852912 182852912 539132160 539132160 191419492 162710704 311611986 311611986 274345122 320544530 320544530 303180530 276565890 320478690 320478690 183963910 183963910 779007565 779007565 112995928 112995928 95275208 632121296 632121296 554960352 391990487 1033135224 1033135224 848875396 672662087 628068160 628068160 609119147 856427899 856427899 351146440 351146440 654378137 654378137 391170626 391170626 578633856 578633856 857412258 857412258 610611648 643441770 643441770 61086240 29234240 99130560 302975602 328086624 572161485 572161485 688762021 688762021 603795225 665818230 857791759 857791759 553786112 553786112 550714517 550714517 788796717 788796717 2306304 112020016 805907840 1050681546 1050681546 910190459 874776843 822348099 617351467 225182168 424200900 424200900 198493682 344460808 348653194 348653194 443159780 443159780 719931284 858907443 964571701 964571701 151318473 226510888 226510888 124293900 239578456 974431236 974431236 241258899 251731976 251731976 940125502 958735789 958735789 375656729 639503194 733777714 733777714 412141180 358792571 931584014 931584014 505630500 577145216 577145216 543088257 543088257 805549184 805549184 282459019 314523464 314523464 982642936 982642936 887955752 1024207247 1024207247 793913328 749417805 224059196 475533938 647103872 647103872 374990224 374990224 916599336 916599336 769655407 413143808 413143808 556024225 685780466 685780466 1041658918 1041658918 951057735 919944316 824316195 922900423 955945019 955945019 951423574 951423574 832986113 832986113 596770898 448603222 116635860 248256016 981534970 981534970 684723879 547913970 547913970 651711898 651711898 546226170 127733472 453034530 453034530 426621264 524376754 524376754 520509758 520509758 417316098 439622722 439622722 248750294 450040138 877732491 877732491 869546939 821171139 383003682 374941146 250392035 601335289 673841548 673841548 583505248 140232736 420106526 420106526 466674196 466674196 347810646 445594710 445594710 327075772 259579826 53900084 53900084 310758102 441497690 441497690 394529890 308958784 319734726 362852524 362852524 190654052 190654052 210973320 678440985 678440985 565875342 1027668203 1027668203 983908768 957641592 556344543 555067937 555067937 932564704 932564704 385614514 385614514 952601016 952601016 576983413 636504340 802474749 802474749 579964186 651012345 651012345 833939674 833939674 303166820 303166820 279259458 235777308 207664256 207664256 206095500 156034352 156034352 153276708 153276708 168330896 168330896 71634408 107381072 602014969 642462873 642462873 592655073 592655073 604374088 616583273 616583273 660784056 660784056 655360312 122733240 37340192 5858056 34086912 380637192 403317794 403317794 328221492 328221492 179585568 179585568 709596912 709596912 42689813 555882784 555882784 609093656 609093656 139362360 86428844 117725464 352879736 352879736 310427730 413681014 413681014 410161700 510747970 510747970 396657762 410776604 410776604 184702516 67655696 71734800 71734800 0 562094419 562094419 330824632 965143501 965143501 570865792 680790597 684184229 693860017 693860017 666105101 692167225 692167225 673792515 673792515 879371010 988180688 988180688 816116365 948603795 948603795 946416336 946416336 853918596 828664217 852806499 852806499 277928249 542627722 542627722 306723539 831624131 831624131 830474720 830474720 539655889 807831156 807831156 574797238 540066561 595446996 595446996 254277948 254277948 562179592 655384737 655384737 646936225 646936225 300492258 384091374 745806720 745806720 740329856 731735662 445304002 445304002 147009732 288141762 288141762 207408780 207408780 269358982 269358982 78220924 396308910 396308910 264878896 449617254 449617254 355018026 328010294 328010294 302362116 439381064 439381064 777524592 777524592 625032616 735984232 735984232 154232056 503342022 503342022 447586476 579241617 579241617 705117203 839583744 839583744 440926212 522900798 522900798 73713482 900214816 900214816 875070522 329809937 378028100 378028100 660252084 660252084 583348104 799883908 799883908 682423205 682423205 951618518 951618518 776606553 776606553 717408533 997486686 997486686 941670935 923404699 923404699 914459296 914459296 195150304 134258992 0 134555652 134555652 0 983139656 1043456799 1043456799 1054839623 1054839623 955009030 1006724445 1006724445 939524103 587490596 1046938966 1046938966 710670019 203608720 73811984 611132464 611132464 707738903 840966175 872891466 883675221 883675221 103867915 271222160 271222160 748472791 949003090 949003090 515442755 621055441 900253035 900253035 632352841 632352841 990110629 990110629 495766638 734196883 1041310239 1041310239 440742073 437587716 491454718 491454718 290682034 290682034 539153458 539153458 326677491 843537744 843537744 688841216 688841216 547208124 275867076 184010740 117719432 224288424 224288424 1232028 266428712 266428712 182231812 182231812 169172980 135070340 135070340 139881728 139881728 273901194 285163458 358478242 358478242 349282506 277129864 10854496 93907872 93907872 21329160 9511488 30483264 32580576 32580576 25202688 25350240 34677744 70406152 111282944 111282944 102896024 73713480 374359378 374359378 372829384 323869026 339043136 560201992 560201992 361505128 361505128 306187776 306187776 147587312 147587312 215222376 223355556 898138368 900253035 900253035 900461931 900461931 864159358 864159358 373936458 741833690 741833690 449970566 506539840 506539840 493851920 736753238 837938315 837938315 530847157 510081438 260520060 484442392 1051603146 1051603146 849820999 719656703 898917428 898917428 358651903 841626858 841626858 916141651 990783700 990783700 533648084 550583995 550583995 487561842 900727085 900727085 512617678 512617678 318243760 922223419 922223419 302516754 590709075 590709075 474134740 148063168 438388358 438388358 70821140 95522900 433084142 433084142 333087440 508050291 626205597 861744819 861744819 716769766 756811884 1033117609 1033117609 458177938 1042880790 1042880790 738459707 1061159182 1061159182 979444111 291202680 1060537404 1060537404 577188264 577188264 807328315 883612344 883612344 364168467 222364620 444707052 444707052 756302592 756302592 420746000 788932670 906750483 906750483 172846903 481718613 658614143 773570077 773570077 726626600 234888620 234888620 381945024 421300355 702339757 1024892615 1041635871 1041635871 895145336 895145336 838955296 838955296 304591378 285681680 162698080 59257376 165017568 165017568 161641796 161641796 156136948 90436008 113185440 113185440 101667024 254746633 254746633 452017494 452017494 569906967 569906967 391780026 1048781298 1048781298 976750359 848492033 856798456 856798456 757149210 757149210 223175944 165241848 165241848 143409252 214794536 466438576 466438576 452943496 452943496 783496091 783496091 280036160 707284949 707284949 444685926 444685926 160496684 160496684 316985286 612094518 874652272 891775633 891775633 1019992418 1019992418 830336931 830336931 314622162 1002809381 1002809381 658770105 771695023 937039611 937039611 1041519199 1067632781 1067632781 80152108 726553340 726553340 911168516 911168516 1038747514 1038747514 1053219150 1053219150 984932363 1067632715 1067632715 942740324 587213988 626550072 626550072 369567428 369567428 189337264 177941184 184695348 184695348 136055844 164601956 186145876 186464304 186464304 616861368 616861368 567698080 587761457 587761457 575383240 67172552 1040519262 1040519262 545732673 942934791 951648831 951648831 706292892 460137894 52943232 329071312 329071312 321627074 329234802 329234802 322754944 47628752 14110112 61632912 61632912 33200256 33200256 15883072 304620384 304620384 295896080 288303378 59318368 27809840 27736416 579152163 579152163 436606998 811311412 811311412 579549057 579549057 814208634 814208634 612069714 612069714 663072857 663072857 633153049 633153049 898392539 898392539 554603824 628754744 628754744 478545734 252450968 218291340 218291340 108004248 230764996 253106748 253106748 142611360 208345420 208345420 182654080 201730344 201730344 127746428 138276612 195464676 256152424 256152424 128927568 385544994 385544994 101027880 360870722 360870722 598059889 598059889 773230104 773230104 780930141 805377446 1062765583 1062765583 723083905 552339245 552339245 395313720 395313720 615911648 615911648 275837602 595774949 595774949 345628860 151200834 1015321408 1015321408 624502090 331440225 564158704 889225631 968333709 968333709 465664617 246489948 246489948 1071945037 1071945037 687090247 416208494 762358730 809101452 895845990 899413155 899413155 499213857 404820162 211956032 276392009 817534664 817534664 433442127 792908150 792908150 473187492 172918792 222983260 254834956 254834956 217454336 263316348 263316348 110815556 209764428 209764428 226183484 414646704 414646704 283855872 413861776 413861776 339936596 135846484 726605020 726605020 567843749 811928828 811928828 993791441 993791441 334533522 394613978 394613978 325636320 325636320 340798274 347221130 347221130 601490195 628691688 660216272 840605696 855427283 969645491 969645491 402827536 402827536 195299700 579835140 579835140 744159680 744159680 636365769 566709800 952119517 952119517 720442005 996147639 996147639 279046213 794084151 995547831 995547831 822943908 999793446 999793446 511766132 511766132 448839894 695379181 695379181 958534984 958534984 893101160 585550704 559026849 62183889 671977476 705097553 705097553 948461772 948461772 272936192 272936192 67469824 822989984 822989984 128969967 651504284 831501453 831501453 910257994 910257994 844172322 593309361 524886361 680784454 683779925 915141723 915141723 845016723 845016723 446503891 304627890 354013724 591548472 608223369 608223369 722394760 722394760 691948440 21359776 571115521 571115521 554316848 698022832 698022832 593620037 847090063 970801123 970801123 809846301 738103026 273498652 65189110 335773456 335773456 3510298 2097152 168307716 168307716 36515088 110223784 110223784 326099818 335056880 335056880 377686142 446484054 1004846699 1004846699 472200078 502990334 502990334 501428718 398536992 539132160 671741076 671741076 686458948 686458948 311611986 277743424 320544530 320544530 303180530 276565890 320478690 320478690 183963910 183963910 779007565 779007565 559362560 559164321 95275208 632121296 632121296 554960352 391990487 1033135224 1033135224 848875396 10486336 413068814 413068814 521519732 856427899 856427899 351146440 351146440 654378137 654378137 130423032 310562898 310562898 572422128 857412258 857412258 610611648 643441770 643441770 61086240 24211760 99130560 118836776 147590233 572161485 1021950199 1021950199 939968385 603795225 256416904 587915696 587915696 818400823 818400823 394728267 255732036 305674414 305674414 358615426 358615426 805907840 903737067 910190459 910190459 874776843 822348099 617351467 785138174 785138174 711198711 735091846 867021648 867021648 361410280 443159780 443159780 719931284 879699204 964571701 964571701 767293293 767293293 749073736 28355304 477523589 974431236 974431236 272783109 588898855 588898855 539493384 928752956 928752956 604202138 342021688 788529295 788529295 393225008 546382618 546382618 397595868 883837579 883837579 877960523 538185112 538185112 805549184 805549184 338937304 338937304 500934492 1017098726 1017098726 1067784619 1067784619 889791531 793913328 749417805 715729980 608490532 608490532 688067177 688067177 388065628 1022770992 1022770992 947700517 805869057 960496039 967050660 967050660 685780466 1041658918 1041658918 919944316 919944316 953218005 953218005 570565124 888378294 888378294 480866591 277430300 596770898 596770898 67110505 0 16809984 746946752 746946752 130175048 130175048 100795032 131252248 131252248 126919368 114665680 453034530 453034530 401590444 524376754 524376754 520509758 520509758 417316098 439622722 844552851 844552851 810099715 810099715 113645784 90769518 492052494 492052494 374941146 250392035 450455373 673841548 673841548 583505248 140232736 420106526 420106526 466674196 466674196 347810646 445594710 445594710 332277470 155579636 75052426 693626787 693626787 441497690 441497690 394529890 835351596 835351596 628759905 628759905 624477993 657695440 657695440 128326008 187697352 187697352 172853605 804486105 957641592 957641592 556344543 555067937 934282107 934282107 932564704 970416783 970416783 952601016 952601016 679822535 576983413 636926366 955618146 955618146 683902423 248569988 530864002 663563824 663563824 303166820 279259458 235777308 207664256 207664256 236815680 246803292 246803292 153276708 306580370 351018496 351018496 352526896 352526896 602014969 642462873 642462873 592655073 592655073 355540922 616583273 616583273 660784056 660784056 655360312 122733240 414749732 414749732 364106602 380637192 403317794 403317794 443378873 546687555 595943685 595943685 746401487 746401487 709999329 709999329 636697576 584387337 785057869 785057869 594149429 809426210 843750088 843750088 984400078 984400078 413681014 410161700 410161700 300996336 201863220 410776604 410776604 319910450 319910450 410910680 511754334 511754334 352903850 352903850 372787152 372787152 327530160 327530160 194325108 194325108 178754452 161675168 187306816 267478268 404960302 673792515 673792515 437825040 335663756 335663756 816116365 816116365 347291082 946416336 946416336 349250250 375399248 375399248 46260432 36750096 39142528 39142528 6933664 537795057 537795057 284945088 437992789 539655889 807831156 807831156 574797238 540066561 595446996 595446996 254277948 254277948 562179592 655384737 655384737 646936225 646936225 379061850 384091374 384091374 740329856 740329856 731735662 445304002 445304002 85853278 208344780 218382368 218382368 201639948 269358982 269358982 84322976 396308910 396308910 163550964 449617254 449617254 482377736 482377736 469811214 302362116 439381064 439381064 290855586 437004304 437004304 347472480 347472480 75630912 503342022 503342022 447586476 447586476 323030672 407186560 407186560 406915220 535652405 682905537 682905537 378128713 900214816 1027617249 1027617249 1026122286 765060399 568558828 41608192 41608192 41104272 86630276 108534076 216747800 228482332 240383460 240383460 554443784 621094953 621094953 572446488 572446488 555824424 923404699 923404699 644135419 616669960 71567680 39966976 995964376 995964376 134555652 995964376 995964376 1043456799 1043456799 1054839623 1054839623 854903763 1006724445 1006724445 939524103 587490596 303866994 247161722 203608720 203608720 493859095 493859095 858541970 858541970 976592068 976717654 976717654 883675221 772784664 772784664 440295903 748472791 949003090 949003090 515442755 621055441 900253035 900253035 632352841 632352841 990110629 990110629 453453156 734196883 734196883 43123286 437587716 988870160 988870160 323552418 290682034 290682034 539153458 539153458 326677491 274268627 550237408 550237408 445100736 88645792 86679736 117719432 117719432 137109568 170659092 170659092 266428712 266428712 88080512 98791664 98791664 48410944 35965200 139881728 139881728 273901194 285163458 358478242 358478242 349282506 279570976 491982700 491982700 364394440 527762920 527762920 259911212 259911212 214467396 178088432 197324624 197324624 188565552 244341224 244341224 194155016 73713480 6573968 111461648 117507248 117507248 339043136 594482345 594482345 361505128 872624139 872624139 364125104 526784890 579885092 581449151 581449151 898138368 900253035 900253035 467030142 467030142 864159358 1037292194 1037292194 873513224 79251128 449970566 506539840 506539840 364257368 677306288 677306288 588130043 946728327 946728327 437206038 437206038 1045311488 1045311488 577270040 405133810 339913736 339913736 163610720 444596250 444596250 111222852 503462300 503462300 533648084 550583995 550583995 82577798 900727085 900727085 299749056 285288704 318243760 922223419 922223419 302516754 590709075 590709075 3220224 114303692 438388358 438388358 70821140 95522900 348808206 348808206 87296808 80220128 88212744 88212744 243940192 243940192 190130868 15736820 458177938 458177938 1042880790 1042880790 220335149 201725964 134621200 770179852 770179852 1060537404 1060537404 577188264 577188264 157359917 883612344 883612344 364168467 222364620 444707052 538612340 756302592 756302592 35264015 788932670 906750483 906750483 172846903 439574170 439574170 120891408 120891408 111623064 338235818 338235818 184865280 369262592 369262592 599394304 599394304 547670337 931847442 931847442 371498041 137763588 305168658 305168658 421736742 458404272 458404272 165017568 161641796 161641796 156136948 66110448 66110448 88673888 94113384 94113384 48308736 49284048 49284048 53158800 53158800 44175696 65574080 65574080 25215072 46161104 46161104 43391568 43391568 36069440 44562768 86321224 86321224 75835688 212861184 303308344 357489834 452943496 452943496 322975476 19976256 280036160 317793890 327155826 528686493 837627363 951921799 951921799 937500408 937500408 874652272 891775633 891775633 1019992418 1019992418 830336931 830336931 165539556 854224023 854224023 647552914 647552914 637010355 933251570 1041519199 1067632781 1067632781 446325792 726553340 944438664 944438664 911168516 1038747514 1038747514 1053219150 1053219150 980615385 239415720 260320152 260320152 587213988 626550072 626550072 34090448 189337264 189337264 177941184 184695348 184695348 47979572 54866512 54866512 51374672 51374672 616861368 616861368 606349960 606349960 575383240 575383240 239075484 1040519262 1040519262 545732673 942934791 951648831 951648831 706292892 460137894 49558790 399646216 399646216 321627074 329234802 329234802 322754944 10088512 11063616 20090688 22529888 33200256 33200256 12323346 304620384 304620384 287445024 287445024 279516448 44591104 54999216 579152163 579152163 436606998 811311412 811311412 579549057 579549057 814208634 814208634 612069714 612069714 663072857 663072857 633153049 828736512 898392539 898392539 554603824 628754744 628754744 478545734 252450968 218291340 236134936 236134936 230764996 253106748 253106748 142611360 115608024 42154376 182654080 182654080 50468996 36737296 36737296 54544064 54544064 90208138 282088146 385544994 385544994 101027880 360870722 360870722 95618368 228710376 228710376 420041958 420041958 805377446 805377446 723083905 723083905 552339245 552339245 234622184 112508993 112508993 120193788 281014242 595774949 595774949 433052598 979316986 1015321408 1015321408 322964072 677718146 677718469 919796209 919796209 702952159 184934833 34916880 38831120 38831120 89202688 96488104 96782568 96782568 75573992 135039680 139201668 139201668 404820162 404820162 211956032 700989665 817534664 817534664 433442127 792908150 792908150 734624877 734624877 726130077 756880509 756880509 543002154 543002154 1048193951 1048193951 825629475 291032457 291032457 113024592 86644008 62521944 203015200 455697205 832963599 832963599 413364546 413364546 139049408 34467204 164192320 718153992 718153992 909342559 909342559 210850068 97995056 276029888 340798274 347221130 347221130 601490195 628691688 660216272 838382064 838382064 317547159 253041182 402827536 402827536 195299700 579835140 579835140 611162440 611162440 135305736 219501965 952119517 952119517 720442005 996147639 996147639 788658032 794084151 993274812 993274812 822943908 973191494 973191494 140251652 247464276 247464276 695379181 695379181 958534984 958534984 893101160 585550704 863418112 863418112 996325540 996325540 705097553 682937157 494328750 494328750 24657810 346688101 822989984 822989984 325172465 651504284 680536773 680536773 675633536 844172322 844172322 593309361 524886361 680784454 683779925 915141723 915141723 845016723 845016723 850596470 850596470 893388500 893388500 689563173 689563173 611116216 611116216 661761544 661761544 657580857 557753528 620830625 620830625 544554627 808661763 808661763 507848862 507848862 141448474 476307984 476307984 106293912 375857688 375857688 305241096 271614216 341683968 341683968 36515088 110223784 152775844 326099818 335056880 335056880 377686142 446484054 1004846699 1004846699 474502252 502990334 502990334 501428718 398536992 135819392 671741076 671741076 971724099 971724099 283681398 560562279 560562279 811178242 811178242 809556001 688758337 952804514 952804514 958064903 958064903 559362560 559362560 561918336 561918336 77803444 1054593034 1054593034 685485781 479330537 353895978 420958564 420958564 416292704 860567772 860567772 648195715 438087393 399689322 399689322 361415002 130423032 130423032 98294896 86820464 82539672 96426040 117110736 117110736 68158560 24907680 72164192 75497544 75497544 42598488 170268948 170268948 1021950199 1021950199 939968385 817214454 817214454 587915696 587915696 911557077 911557077 821692554 546907713 808519490 808519490 358615426 358615426 807143088 843319537 843319537 168110352 168110352 935602674 935602674 785138174 785138174 711198711 762100458 1060949823 1060949823 361410280 290733082 418970444 427039714 879699204 885782229 885782229 767293293 767293293 749073736 155954524 477523589 876819723 876819723 272783109 588898855 588898855 189792948 928752956 928752956 604202138 342021688 788529295 788529295 393225008 546382618 546382618 520407102 883837579 883837579 877960523 538185112 538185112 244131916 244131916 338937304 338937304 500934492 1017098726 1017098726 1067784619 1067784619 889791531 634335457 715729980 715729980 634857028 677416877 688067177 688067177 388065628 1022770992 1022770992 947700517 805869057 960496039 967050660 967050660 433917056 835818945 835818945 559296112 559296112 953218005 953218005 595410484 799320320 1038536116 1038536116 875252082 871631859 871631859 589511248 848576863 848576863 746946752 1070043234 1070043234 554194154 554194154 647630930 647630930 592482946 131125920 67108872 258989396 258989396 174738756 174738756 113602644 142459868 142459868 275291921 844552851 844552851 810099715 810099715 518140252 388768906 573254960 573254960 319103323 285212706 269223976 67649800 75628576 75628576 83340244 228521716 228521716 143704644 202824204 247092036 267985222 332277470 332277470 457631792 457631792 693626787 693626787 485540814 416601322 347223648 835351596 835351596 628759905 628759905 624477993 657695440 657695440 66374640 159400548 555979984 555979984 1063297822 1063297822 506546621 303038994 506727031 934282107 934282107 805306753 970416783 970416783 940250186 940250186 679822535 227932577 636926366 955618146 955618146 683902423 181905566 202669060 663563824 663563824 146378204 146378204 256447868 256447868 239387156 239387156 246803292 246803292 193512564 306580370 489893988 489893988 352526896 352526896 223681800 370443052 370443052 348147928 355540922 355540922 357484448 357484448 30542400 396737226 396737226 352794666 414749732 414749732 364106602 364106602 505487658 505487658 443378873 546687555 595943685 595943685 746401487 995509048 995509048 709999329 636697576 584387337 785057869 785057869 594149429 809426210 843750088 843750088 984400078 984400078 377639018 303207344 303207344 405561244 526573990 526573990 408548362 408548362 357578000 410910680 511754334 511754334 521415870 521415870 372787152 372787152 327530160 327530160 194325108 194325108 178754452 155447968 155447968 168696852 404960302 476087302 476087302 587863328 1001366061 1001366061 934458405 280370262 346341632 604089680 604089680 647045721 835846169 835846169 814190947 290945753 824509466 824509466 280343184 819374625 819374625 284945088 302778624 302778624 46936064 302162562 302162562 369829976 369829976 369715464 66162976 123891880 123891880 118637696 123393720 123393720 72974904 379061850 379061850 251529090 71963784 492266464 492266464 185895600 185895600 200043024 200043024 323036504 323036504 267939706 243130720 140297984 84322976 200951052 200951052 163550964 163550964 79691976 482377736 482377736 469811214 281467074 426138062 426138062 290855586 369233946 369233946 247858842 192817976 205570248 256501136 256501136 237880356 237880356 170410012 170410012 152079520 152079520 535652405 682905537 682905537 378128713 539315744 1027617249 1027617249 1026122286 951591136 568558828 866982372 866982372 752542976 752542976 681039460 681039460 228482332 240383460 240383460 209347804 209347804 124576288 619834048 619834048 601174233 33554448 33554448 10536064 35137920 35137920 39945216 995964376 995964376 184559889 995964376 995964376 106961655 812123265 812123265 811335682 606477644 270797058 136964362 136964362 624584780 624584780 950013766 1008215883 1008215883 493859095 493859095 858541970 858541970 976592068 976717654 976717654 613480965 772784664 772784664 853068800 853068800 840935503 613552713 511991681 326081600 326081600 271288400 271288400 48245960 103623960 317208792 338640138 338640138 239150528 43123286 900347986 988870160 988870160 559442070 237552924 269083650 414901318 539903808 816581955 816581955 543720770 197937600 481167508 518393910 518393910 470551566 470551566 449647878 275085316 262487912 202929216 38363672 41612740 172029236 172029236 150810564 150810564 188277984 188277984 209826884 209826884 419206600 419206600 271300354 279570976 491982700 491982700 364394440 1028491129 1028491129 640157073 432025522 380523077 551674305 764524749 764524749 540221465 872554978 889457223 889457223 708085824 344082768 112789760 112789760 64277504 243424581 594482345 594482345 138419247 872624139 872624139 431165752 526784890 579885092 581449151 581449151 544734081 787743287 787743287 467030142 940195341 940195341 1037292194 1037292194 873513224 997893067 997893067 123250504 850391003 854202260 854202260 998507253 998507253 946728327 946728327 437206038 437206038 644166835 973077155 973077155 405133810 899785130 899785130 473460642 948462974 948462974 997924685 997924685 591413156 504814058 203546838 380249744 380249744 409210312 409210312 403643334 403643334 31008480 395870584 395870584 390512828 390512828 310448406 204207630 177874256 177874256 71584404 109498136 109498136 481463746 481463746 293064096 426527081 426527081 388147370 388147370 673722637 708383405 724450661 724450661 308821292 675615884 1040529550 1040529550 1036229128 1036229128 770179852 770179852 525651791 806156457 1045879455 1045879455 1055152399 1055152399 664928667 908722491 908722491 680579208 680579208 605601812 605601812 201332768 772680288 772680288 748675141 252929200 352550450 543162753 843917107 843917107 554961441 338235818 338235818 892253331 892253331 847360634 847360634 833738793 833738793 931847442 931847442 371498041 203853842 305168658 305168658 421736742 458404272 458404272 17302560 17302560 17302560 17301504 2097408 79606648 79606648 31771104 163346753 163346753 148335228 274604205 848878175 848878175 306096341 996919266 996919266 675963183 1019792592 1019792592 809915608 736948400 736948400 522202576 481225592 481225592 230388708 167507940 303308344 388231482 433321070 433321070 326891442 293773728 407471540 407471540 350015178 528686493 837627363 951921799 951921799 937500408 937500408 74457216 74457216 619990344 619990344 172807433 80562496 41943120 62180208 269766242 269766242 647552914 647552914 637010355 814287124 886473450 886473450 847824068 446325792 102785084 944438664 944438664 646905092 845205553 1050673619 1050673619 1038371407 724483972 18164256 68216872 68216872 20261664 74722216 74722216 77596336 251661440 251661440 142606404 10358336 10358336 9966144 9966144 57090560 57090560 51374672 48368224 593834385 606349960 606349960 537557705 43868756 239075484 239075484 213384012 473957128 503876496 503876496 338806294 254395748 254395748 123734984 399646216 399646216 69600002 14979040 7127824 65162368 65162368 33340640 7537536 5888704 15024320 15024320 12323346 12323346 35259664 302056448 302056448 301989906 268443666 54999216 306984192 306984192 287310114 287310114 40159632 40159632 20237088 20237088 3720960 88106920 88106920 68013064 822517760 822605859 828736512 828736512 33296352 37555424 89392184 117967528 117967528 0 54839328 236134936 236134936 67976724 62992832 52572576 42511696 193905924 193905924 30030960 140803268 140803268 36737296 167902660 167902660 203870848 203870848 282088146 282088146 377971712 378461274 378461274 338775002 672401925 672401925 507388869 211768572 365743595 365743595 845280304 845280304 688823943 232392020 257476024 257476024 74104584 133968080 133968080 281014242 281014242 402952704 433052598 979316986 979316986 824488704 322964072 677718146 677718469 919796209 919796209 702952159 184934833 172003292 116392920 1011165327 1011165327 953199845 202434092 941910976 941910976 1023486980 1023486980 939911555 761858245 761858245 147072364 700989665 700989665 289672493 289672493 19799328 899704768 899704768 734624877 726130077 756880509 756880509 543002154 543002154 1048193951 1048193951 825629475 291032457 291032457 113024592 86644008 70478912 204031012 455697205 832963599 832963599 413364546 413364546 139049408 34467204 164192320 718153992 718153992 909342559 909342559 378752818 322740810 276029888 276029888 105442832 105442832 100947072 579867140 579867140 838382064 838382064 317547159 337066506 722416705 914974316 914974316 612995628 612995628 611162440 1008934338 1008934338 884517672 7017600 7017600 84189088 84189088 75159432 788658032 788658032 923019440 923019440 160888708 545075073 704584416 704584416 978455184 978455184 177738967 211571760 471594510 471594510 734967558 734967558 863418112 1027682823 1027682823 996325540 807125388 688490789 494328750 494328750 848954483 848954483 592064192 821507344 821507344 430178725 430178725 403302343 675633536 675633536 369283098 727889338 727889338 549000020 898397195 898397195 307805408 307805408 813904473 850596470 850596470 893388500 893388500 689563173 689563173 611116216 611116216 661761544 661761544 657580857 557753528 620830625 620830625 656687008 808661763 808661763 574241793 542387329 542387329 541482880 476307984 106293912 375857688 375857688 305241096 271614216 341683968 341683968 17688680 27892524 152775844 152775844 209313860 211886412 211886412 92283172 326788776 326788776 474502252 520122472 520122472 170008592 170008592 135819392 58902336 58902336 971724099 971724099 283681398 560562279 584840226 811178242 811178242 809556001 688758337 952804514 952804514 958064903 958064903 557715072 557715072 561918336 561918336 51525153 1054593034 1054593034 685485781 479330537 353895978 420958564 420958564 416292704 860567772 860567772 778279871 459545531 399689322 399689322 361415002 128808104 261130600 261130600 222217620 222217620 154955784 84553040 84553040 68158560 43721424 72164192 75497544 75497544 86016840 170268948 170268948 699268465 699268465 774955640 817214454 817214454 909326989 909326989 911557077 911557077 821692554 546907713 808519490 808519490 289501858 379914819 807143088 843319537 843319537 428081591 428081591 935602674 935602674 822376475 659555001 1030153959 1030153959 1060949823 1060949823 957437338 309144978 271523858 59625906 999433664 999433664 885782229 451754888 503546190 503546190 270568542 408445834 408445834 488637122 488637122 222274288 42678480 135331072 137008772 807434500 807434500 184925699 39271056 104936328 375505168 925942284 939698363 939698363 879229323 172491088 903152827 903152827 349929642 349929642 691674884 946676551 946676551 804134119 256691388 515635038 783013777 783013777 842546160 842546160 636360629 798629500 798629500 677416877 823534598 823534598 556219137 24333696 24977536 24977536 20398880 2435072 19085696 19085696 289357602 835818945 870543670 1000328021 1000328021 807009025 807009025 595410484 799320320 1038536116 1038536116 875252082 871631859 871631859 851131442 851131442 848576863 285737106 1070043234 1070043234 554194154 554194154 647630930 647630930 592482946 131125920 156160064 224561176 224561176 138731592 80168972 46251312 80067848 181563332 579632336 751310748 751310748 341639835 518140252 518140252 933271078 933271078 573254960 319103323 496025970 496025970 763412580 763412580 633831600 281022464 325881098 350273648 350273648 202824204 247092036 247092036 267206008 267206008 457631792 457631792 393481586 485540814 485540814 404107528 344141898 344141898 528408510 528408510 503973444 240479112 260333980 260333980 114811508 159400548 555979984 555979984 1063297822 1063297822 506546621 296222744 279840210 319341618 319341618 394264698 394264698 335934559 940250186 940250186 56623536 56623536 42017360 42017360 38797824 38797968 43065536 202669060 822886920 822886920 808668861 485246340 485246340 405130346 939741906 939741906 318155053 202389980 193512564 218134316 489893988 489893988 193467344 223681800 223681800 370443052 370443052 204603816 204603816 141170052 218947560 218947560 30542400 396737226 396737226 352794666 34718000 34718000 372321536 372583194 505487658 505487658 374877876 466674420 466674420 127931704 433214984 995509048 995509048 130684152 130684152 118034648 125960424 125960424 98724040 580355744 580355744 74134920 74134920 67703168 67682440 67682440 209055272 405561244 526573990 526573990 487188110 408675362 475145524 475145524 403705874 255961992 521415870 521415870 306633232 214196656 86057696 86057696 29558784 148164736 148164736 144445028 144445028 168696852 241767316 423224592 423224592 587863328 1001366061 1001366061 934458405 405593550 405593550 604089680 604089680 647045721 993690668 993690668 814190947 806660689 824509466 824509466 280343184 819374625 819374625 329566310 302778624 302778624 46936064 46936064 12896448 158206912 158206912 150958368 66162976 123891880 123891880 50516016 38409360 38409360 11598208 11598208 18022976 503767936 511130526 511130526 492266464 275200092 275200092 303304072 338167050 338167050 323036504 389344024 389344024 140297984 53427504 54481888 54481888 241354860 241354860 147326148 227806888 227806888 16384256 16384256 14292672 6952896 4854912 4461696 4458624 92472416 92472416 205570248 256501136 256501136 237880356 237880356 223356568 223356568 152079520 152079520 50331668 525230097 525230097 352753953 539315744 539315744 565801796 951591136 951591136 409332102 866982372 866982372 752542976 752542976 952363635 952363635 721868853 250792196 412410108 587811294 587811294 540017409 619834048 619834048 601174233 610744713 637772001 650278928 650278928 90629504 40844688 995985586 995985586 672785925 980478642 980478642 764180998 812123265 949374068 949374068 948676686 940411928 940411928 136964362 624584780 633266025 950013766 1008215883 1008215883 899373994 608345232 608345232 390300734 691101604 691101604 814517322 814517322 639061516 639061516 853068800 853068800 912523458 912523458 705446031 652861983 885537499 885537499 814153729 814153729 839644179 839644179 509799624 873921730 873921730 731877137 900347986 900347986 654761515 559442070 237552924 269083650 414901318 539903808 816581955 816581955 543720770 197937600 481167508 518393910 518393910 470551566 470551566 449647878 275085316 262487912 202929216 126028544 133411012 215217044 215217044 162550228 162550228 188277984 188277984 387300058 387300058 419206600 419206600 271300354 12309250 8499200 273096896 273096896 1028491129 1028491129 640157073 432025522 380523077 551674305 764524749 764524749 540221465 872554978 889457223 889457223 708085824 344082768 112789760 112789760 65103248 230881188 230881188 117903648 67844136 67844136 431165752 431165752 238162716 289608388 289608388 112337442 86911912 116703794 273310882 360165666 940195341 940195341 363268396 681114075 855974736 997893067 997893067 731662128 850391003 854202260 854202260 998507253 998507253 574384316 628815293 723855669 723855669 241968297 973077155 973077155 179553978 899785130 899785130 473460642 948462974 948462974 997924685 997924685 591413156 504814058 742506343 742506343 380249744 592072907 592072907 403643334 403643334 154265800 945275787 945275787 390512828 736979603 736979603 496531008 496531008 439479154 439479154 167563236 174377364 481463746 482732376 523532790 523532790 426527081 705040664 705040664 673722637 708383405 724450661 768619489 768619489 1067615137 1067615137 1040529550 1036229128 1036229128 761094353 604051097 525651791 806156457 1045879455 1045879455 1055152399 1055152399 688105700 908722491 908722491 731385908 731385908 688427073 688427073 1056112784 1056112784 772680288 748675141 625672296 625672296 543162753 843917107 843917107 554961441 108268416 132269829 892253331 892253331 847360634 847360634 833738793 833738793 67258960 302268684 302268684 203853842 136714500 164304480 164304480 151993380 63114452 155538704 155538704 173095700 185091456 185091456 169733140 164863552 41636048 163346753 163346753 148335228 274604205 848878175 938122508 938122508 996919266 996919266 723203357 1019792592 1019792592 809915608 817137702 986167925 986167925 602265782 481225592 230388708 167507940 131811086 388231482 433321070 433321070 403701766 437256452 437256452 407471540 428351564 428351564 246279124 246279124 364246778 364246778 102304512 74457216 74457216 656703392 656703392 80562496 478535198 478535198 1013918662 1013918662 951563287 922441715 561476480 520403346 1056018934 1056018934 996446615 969692533 577276549 105515785 462144578 646905092 646905092 845205553 1050673619 1050673619 1038371407 469503233 141771197 18917152 20261664 563416964 606878812 606878812 155178020 251661440 251661440 147137056 147137056 64033444 64037616 64037616 57090560 57090560 31168960 98246649 615650409 615650409 578165649 608834697 608834697 735637797 735637797 361896383 740074010 981238687 981238687 638864399 541065624 254395748 123734984 123734984 290082386 320766146 320766146 292951554 291819904 65162368 33340640 11627040 5888704 15024320 15952704 18890738 18890738 65293792 302056448 310976658 310976658 283657632 197206260 709420421 709420421 165675492 719405124 719405124 681828693 671347045 671314289 243577131 790955100 790955100 636482827 822517760 822605859 822605859 614499392 547244568 579158704 579158704 572580720 151404596 46308352 135008420 157002128 157002128 142207828 166916980 178430496 178430496 193905924 193905924 40285536 140803268 140803268 181336084 181336084 167902660 203870848 203870848 145503364 8388608 377971712 378461274 378461274 356795520 672401925 672401925 507388869 211768572 365743595 365743595 845280304 845280304 688823943 232392020 257476024 257476024 74104584 133968080 133968080 36438016 36441360 425988087 548670273 548670273 824488704 824488704 270606594 587235478 587235478 903229889 903229889 773154895 737171711 684847943 845105732 1011165327 1011165327 953199845 605787882 941910976 941910976 1023486980 1023486980 939911555 761858245 761858245 147072364 549453825 657596378 657596378 170736900 235357962 899704768 899704768 159861200 159861200 104967292 128691808 128691808 77612560 90310676 165075684 200577296 200577296 104023472 104023472 76495944 79725512 204031012 204031012 86524676 137364228 137364228 135303936 1233408 33706080 58855536 58884208 58884208 152224919 772374581 772374581 860399656 860399656 278533698 348259714 348259714 592971539 933237288 933237288 362415377 849351168 849351168 536944641 722416705 914974316 914974316 940257794 940257794 622117519 1008934338 1008934338 884517672 698881151 967573573 967573573 1069861119 1069861119 673239624 767313058 767313058 1023037651 1023037651 545075073 704584416 704584416 978455184 978455184 177738967 623906308 623906308 438734189 734967558 734967558 426906534 1027682823 1027682823 807125388 807125388 688490789 942147626 942147626 848954483 848954483 592064192 821507344 821507344 575924624 630846347 630846347 427994550 427994550 369283098 727889338 727889338 549000020 977284692 977284692 307805408 307805408 813904473 813904473 159567972 257288948 257288948 218288172 218288172 202398224 50595888 22374400 5612576 123946912 123946912 592063385 592063385 656687008 656687008 574241793 574241793 542387329 542387329 541482880 2985984 2688896 3616000 3616000 1448448 3613440 3613440 7758336 7758336 38178088 124753848 487419790 487419790 514238196 514238196 328763598 326788776 326788776 314234706 520122472 520122472 480448240 480448240 6427008 6427008 16116660 457998464 457998464 272681126 272681126 584840226 584840226 545259393 54927810 29634752 22022720 942680960 942680960 17440032 557715072 557715072 539759649 537041409 115432836 251276636 265914560 537465000 711963041 711963041 139574992 343163680 425743778 605186598 778279871 778279871 459545531 427219766 274243068 422971366 422971366 487194940 487194940 222217620 231155168 231155168 84553040 117646040 117646040 114638040 13341792 17560608 40064712 120487168 120487168 102945048 464518518 464518518 774955640 774955640 898957969 909326989 909326989 429820326 429820326 946383791 1013269796 1013269796 836090083 836090083 481823247 481823247 361205287 337931009 428081591 640757619 649143287 822376475 822376475 853646696 1030153959 1030153959 1024907823 1024907823 957437338 610953396 610953396 189109641 999433664 999433664 810958089 810958089 503546190 503546190 400122602 474187200 474187200 488637122 890835681 890835681 56502184 135331072 137008772 807434500 807434500 404214036 404214036 710935444 710935444 925942284 939698363 939698363 879229323 168762747 903152827 903152827 349929642 562799684 691674884 946676551 946676551 804134119 402719106 515635038 783013777 783013777 842546160 842546160 523903834 798629500 798629500 635250020 823534598 823534598 556219137 91802785 103515416 103515416 363269216 363269216 313009490 313009490 57739266 551242307 870543670 1000328021 1000328021 184560806 461696038 461696038 531177677 531177677 424088326 424088326 751558094 751558094 851131442 851131442 587195539 168828324 168828324 213916076 213916076 226494452 226494452 156292816 156292816 81827608 156160064 224561176 224561176 186189500 74788800 74788800 290617888 290617888 579632336 579632336 776735882 776735882 647236677 732302898 933271078 933271078 121294616 71091061 496025970 496025970 763412580 763412580 633831600 281022464 325881098 350273648 350273648 1509376 67594312 149420932 454292022 454292022 321329458 191004420 941154381 941154381 458486454 404107528 245416784 752968740 752968740 633581822 712112773 734965457 734965457 675424296 255306300 255306300 552024513 552024513 1008869683 1008869683 780213272 296222744 1052921029 1052921029 425305276 612841497 612841497 643487744 643567257 693405451 991993638 991993638 987565683 987565683 719837701 818104561 818104561 470325145 822886920 822886920 808668861 485246340 485246340 405130346 939741906 939741906 318155053 82634328 300341988 300341988 286147768 299180908 535892744 535892744 125680968 505239392 505239392 381702614 367137258 367527402 367527402 281068456 114591616 114591616 55048368 322441152 380204426 380204426 372321536 372583194 372583194 256681616 404655756 425147046 425147046 51443862 27736416 566580288 566580288 908202354 908202354 118034648 374742240 374742240 341246986 580355744 580355744 460453534 340923018 211507458 238735942 238735942 102688800 365268816 402839146 487188110 487188110 408675362 475145524 475145524 254481026 121898000 121898000 121898000 121898000 58862000 56954992 29558784 166661028 166661028 156710016 144445028 167937320 167937320 241956752 305383333 811107851 811107851 918075838 1011028303 1011028303 553916454 583307278 984297623 1055109171 1055109171 993690668 993690668 546757185 806660689 806660689 311500240 306812448 320978324 329566310 329566310 147082544 147082544 17596820 17198304 12896448 158206912 158206912 150958368 13108416 13108416 42078288 54744144 54744144 101279904 101279904 215412858 497126534 503767936 511130526 511130526 219626354 275200092 275200092 303304072 462624532 462624532 286362276 389344024 389344024 203220034 211830946 211830946 166481390 487553148 487553148 408422022 408422022 443597078 443597078 222611954 79741128 48809424 487362404 487362404 374867610 960334216 960334216 923341380 968958183 968958183 689579086 1002975276 1002975276 675707446 819960532 819960532 390602752 813106088 813106088 500861837 161051394 286294548 985810162 985810162 860357811 860357811 511470771 511470771 186226740 186281605 952363635 952363635 721868853 403211430 412410108 587811294 587811294 540017409 391641656 391641656 302005042 610744713 637772001 650278928 650278928 164890724 159952000 995985586 995985586 672785925 980478642 980478642 945620184 764180998 949374068 949374068 948676686 940411928 940411928 437347348 437347348 1040286338 1040286338 622390889 899373994 899373994 608345232 608345232 146447304 1908040 366962112 814517322 814517322 655601450 340048761 385617815 385617815 912523458 912523458 705446031 652861983 885537499 885537499 814153729 814153729 839644179 839644179 509799624 873921730 873921730 731877137 733553780 733553780 481292340 481292340 472784142 405855752 3269376 390534344 390534344 328019058 381468720 381468720 362333802 123766738 197134724 197134724 53026960 258674076 258674076 169928932 126028544 126028544 133411012 215217044 215217044 162550228 162550228 88289448 130422890 387300058 398047738 398047738 138739584 329901874 395930360 399786008 399786008 299437120 299437120 92065704 88902016 88902016 78808896 153955620 153955620 147114180 147114180 139610192 139610192 127142520 112203440 126485768 126485768 121517608 65103248 230881188 230881188 302911232 308942226 308942226 211894348 211894348 197401420 209987640 209987640 74125184 86911912 86911912 80572968 271016773 1059581234 1059581234 993533551 537427487 832097536 832097536 662599157 731662128 731662128 544213596 544213596 130637268 574384316 574384316 628815293 723855669 790827456 790827456 35264016 53153808 53687088 53687088 222090040 222090040 330737648 330737648 274773488 274773488 270606594 445817432 742506343 742506343 524452038 592072907 592072907 268493092 154265800 154265800 945275787 945275787 533255036 736979603 736979603 496531008 496531008 439479154 439479154 167563236 174377364 174377364 482732376 523532790 523532790 420826424 705040664 705040664 670857288 669762360 565108065 768619489 768619489 1067615137 1067615137 859110307 801039954 558717024 558717024 537495572 124824760 239939452 618345688 707064225 707064225 688105700 688105700 667025956 667025956 731385908 731385908 688427073 688427073 1056112784 1056112784 584266449 604780537 625672296 625672296 22746688 7736576 7736576 108268416 108268416 106693912 111374682 371245338 509665860 509665860 858982521 1066852348 1066852348 903798715 899994790 899994790 332513894 414784708 428276582 428276582 419249364 226752704 246375776 246375776 185091456 185091456 169733140 164863552 98913960 105355856 105355856 158536931 761130669 985057895 985057895 938122508 589456012 723203357 723203357 796505869 796505869 698401125 817137702 986167925 989451920 989451920 490237790 843834626 843834626 549160084 326165536 137162736 137162736 403701766 437256452 437256452 350555200 428351564 428351564 246279124 246279124 364246778 364246778 285616570 922970298 922970298 910551195 738478592 738478592 738749913 738749913 1013918662 1013918662 951563287 922441715 709885357 691249185 1056018934 1056018934 996446615 969692533 577276549 377281418 115216216 115216216 719881256 797970545 798151293 798151293 784457949 784457949 214249601 709282981 709282981 563416964 606878812 606878812 155178020 155178020 57583140 147137056 169148992 169148992 200110496 200110496 175451028 175451028 163650112 98246649 615650409 615650409 578165649 608834697 608834697 735637797 735637797 370219904 740074010 981238687 981238687 638864399 744961893 744961893 204492194 864032547 864032547 845023434 938862171 938862171 622939497 547881656 294945858 311431696 311431696 26050960 65924592 65924592 41282272 65293792 65293792 310976658 310976658 283657632 197206260 709420421 709420421 165675492 719405124 719405124 681828693 671347045 671314289 549771360 790955100 893457537 896144811 896144811 607779267 614499392 614499392 547244568 579158704 579158704 572580720 151404596 54856784 135008420 135008420 43330128 142207828 166916980 178430496 178430496 79086736 85798440 85798440 40285536 85738848 181336084 181336084 184985664 184985664 145503364 455548194 455548194 303674682 303674682 448825996 448825996 356795520 902602177 902602177 661177785 727714980 727714980 589564072 538708001 5581440 81897472 81897472 78766920 42152016 42152016 32360464 938006618 938006618 659408304 671223813 805441603 805441603 739149836 361791880 587235478 587235478 903229889 903229889 773154895 737171711 684847943 845105732 845105732 561583920 605787882 605787882 280283236 280283236 496661420 496661420 427560482 151117860 275268836 278995266 455829345 657596378 657596378 170736900 235357962 337211700 735061217 800062845 800062845 611377665 611377665 553554138 553554138 901981231 941492083 941492083 704089777 290106161 672662817 672662817 79725512 227043692 469778957 472949767 472949767 789895997 952523551 952523551 300812860 300812860 369173272 452462550 452462550 772374581 772374581 860399656 860399656 284781472 348259714 348259714 592971539 933237288 1054036202 1054036202 886440281 943616487 951719751 951719751 671767075 403529778 940257794 940257794 622117519 430524197 329036468 355996839 698881151 967573573 967573573 1069861119 1069861119 673239624 767313058 767313058 1023037651 1023037651 347918866 4904064 2119040 854098803 854098803 647546004 623906308 923435072 923435072 620762963 375259572 375259572 593036540 593036540 339013802 356764426 356764426 942147626 942147626 339870986 339870986 340121608 340617920 340617920 657005204 657005204 630846347 301675555 513109486 616096536 616096536 559205025 415531623 977284692 977284692 779895981 625418238 906025562 1031988782 1031988782 417290464 634200105 634200105 258111264 258111264 206058164 679084176 728311221 772138400 772138400 87386120 87386120 259901700 259901700 173326480 169722384 169722384 140373636 136290436 134426628 36276484 169820688 169820688 135374848 37649152 7841664 7841664 22088224 38178088 158583588 487419790 487419790 514238196 514238196 429062220 429062220 249629158 527990928 527990928 485639006 480448240 480448240 143054916 177901072 177901072 852862629 852862629 429721318 862008359 862008359 545259393 592009760 944181665 944181665 964113954 964113954 963459072 963459072 405157120 405157120 21238144 574569856 576593553 590931248 705587221 705587221 711963041 711963041 527373133 1021446584 1021446584 840349476 840349476 940886820 940886820 792324013 561426076 422971366 422971366 487194940 487194940 87945000 231155168 231155168 118892152 118892152 117646040 114638040 131969008 131969008 97928440 120487168 120487168 67482944 940838919 945692551 945692551 943008519 943008519 898957969 877972107 317982235 972709222 972709222 1013269796 1013269796 836090083 836090083 481823247 521356850 521356850 337931009 337931009 640757619 649143287 649143287 482047494 853646696 853646696 875209309 875209309 803332605 284766746 610953396 655695032 655695032 542848641 341711081 810958089 810958089 381626202 381626202 400122602 474187200 474187200 305271570 890835681 890835681 135340548 235616264 506366236 506366236 217137286 404214036 404214036 710935444 710935444 671350840 748987515 748987515 313712659 445394240 445394240 411895384 252711428 562799684 688050213 688050213 417944679 757641230 892396659 892396659 458097056 458097056 673982423 1037110589 1037110589 117441848 547882856 589301505 628991922 628991922 541569721 91802785 103515416 103515416 363269216 363269216 313009490 469692678 469692678 405184502 851427222 851427222 824343056 35098915 49548240 310641504 407904644 407904644 696707590 696707590 427864490 688785562 909710392 909710392 70126156 168828324 168828324 213916076 213916076 190972876 193026376 193026376 92793980 103359768 298347998 419751460 453099710 453099710 186141350 376299664 407142916 416305686 416305686 314590208 776735882 980156741 980156741 732302898 1021043606 1021043606 781268759 929792416 929792416 390103122 390103122 189318340 180912160 98652168 229823340 229823340 140940028 243578908 243578908 143320820 454292022 454292022 321329458 280619846 941154381 941154381 791853705 791853705 705617433 752968740 752968740 633581822 712112773 734965457 794802128 794802128 255306300 255306300 552024513 552024513 1008869683 1008869683 780213272 389172554 1052921029 1052921029 739487767 1028545711 1028545711 647816373 966577767 966577767 991993638 991993638 987565683 987565683 719837701 818104561 818104561 470325145 464778102 239251266 836540424 873339915 918687027 918687027 690538787 243214204 243214204 128970040 381060272 381060272 286147768 299180908 535892744 535892744 1024236591 1028129967 1028129967 845346087 845346087 367527402 608342665 636161984 636161984 924114130 924114130 322441152 380204426 380204426 306258066 138975892 256681616 416697462 416697462 425147046 425147046 208235996 269716652 410627068 410627068 908202354 908202354 630327200 374742240 374742240 341246986 341246986 460453534 460453534 340923018 211507458 238735942 238735942 102688800 365268816 402839146 457852176 469762090 476619396 476619396 409593222 268694158 235938816 274204290 459185880 459185880 150751528 77671568 77671568 166661028 173539732 173539732 18213408 167937320 167937320 241956752 305383333 811107851 811107851 918075838 1011028303 1011028303 939837447 901415689 984297623 1055109171 1055109171 944616990 338187673 51121200 51121200 311500240 311500240 312527956 452082834 452082834 29353830 150453808 170280596 170732820 170732820 23914516 21235872 17111808 17111808 250090828 250090828 214057232 211861836 54744144 169478592 169478592 297998388 497126534 497126534 512754400 512754400 112051704 174597208 174597208 437896604 462624532 462624532 219862818 247005248 247005248 203220034 212210572 212210572 166481390 487553148 487553148 408422022 408422022 443597078 443597078 240665348 240665348 229655644 487362404 487362404 806358571 960334216 960334216 923341380 968958183 968958183 689579086 1002975276 1002975276 675707446 823681588 823681588 557247635 813106088 813106088 500861837 161051394 286294548 985810162 985810162 860357811 860357811 509346963 135856176 241381788 241381788 219157576 219157576 243405328 403211430 403211430 496914106 496914106 240519834 391641656 391641656 302005042 168336848 460536684 460536684 332358760 164890724 159952000 114011298 394713210 394713210 394713210 945620184 945620184 525576832 730312262 730312262 537067593 537067593 1015030804 1015030804 838934622 1040286338 1040286338 340407371 312528936 370787524 681194608 681194608 974459229 974459229 518522258 518522258 655601450 655601450 980157188 980157188 577785233 672535388 672535388 620544671 604225604 604225604 272760832 272765058 274731730 509838460 509838460 281558522 412140102 453417584 453417584 437043920 278150664 481292340 481292340 472784142 405855752 278406210 390534344 390534344 328019058 381468720 381468720 362333802 207359628 438880132 485295390 485295390 482944206 242459502 242459502 217123400 217123400 518050988 518050988 434353048 16777280 4458624 4458624 0 96472448 398047738 398047738 138739584 329901874 395930360 399786008 399786008 299437120 622094649 622094649 588271013 519592769 531105889 820030549 1013658987 1059925687 1059925687 310575323 310575323 761478822 768118065 768118065 678591192 545425560 604397636 604397636 108469888 302911232 308942226 308942226 151205136 337838254 337838254 147923652 147923652 113963528 75544332 318043478 318043478 271801346 1059581234 1059581234 993533551 537427487 378487105 142610432 142610432 134352900 485228683 1037623179 1037623179 612435393 70163113 70163113 689638320 689638320 790827456 790827456 237601692 851485550 851485550 321395575 269269590 444909654 444909654 94673054 73830816 67672192 35616490 445817432 476053902 524452038 524452038 219400996 219400996 201701160 280768992 290591394 290591394 533255036 533255036 326639826 326639826 290407216 191538586 159907944 39636624 64851728 64851728 62730096 35685872 35685872 191459376 191459376 412911357 438519463 837563476 996620727 996620727 774456707 415573152 419698888 419698888 419430438 17246246 37904384 143521684 143521684 124824760 239939452 618345688 618345688 134352900 136460420 138871040 138871040 967607902 967607902 640956924 575251259 575251259 232073964 676104298 1036567791 1036567791 424564801 490547201 830158755 830158755 1014446991 1014446991 827816335 503691147 389592086 378159906 509665860 509665860 858982521 1066852348 1066852348 903798715 899994790 899994790 332513894 414784708 428276582 428276582 419249364 226752704 246375776 246375776 100844704 100844704 64375976 73261736 98913960 112411904 112411904 158536931 761130669 985057895 985057895 576610572 390178234 390178234 24686128 350378314 350378314 348615016 722118820 785058748 989451920 989451920 865812742 865812742 843834626 549160084 336560758 336560758 43656260 43656260 126880048 177218532 215033920 215033920 496052637 956639271 956639271 1055748507 1055748507 810128650 922970298 922970298 910551195 738478592 738478592 738749913 738749913 114430680 674897040 941855699 941855699 940006581 1006891023 1006891023 742771241 562708603 574248074 574248074 377281418 282073714 282073714 719881256 719881256 684939888 684939888 784457949 784457949 214249601 709282981 709282981 40318576 57179392 57179392 37556992 140709536 187695924 196158084 196158084 169148992 200110496 200110496 175451028 175451028 163650112 139904304 174447492 174447492 218400912 239723676 240999944 276440584 276440584 370219904 370219904 212313498 205575337 658637881 744961893 744961893 204492194 864032547 864032547 845023434 938862171 938862171 622939497 547881656 294945858 311431696 311431696 112794088 130686192 130686192 449970864 453549778 453549778 428297922 428297922 142881890 4268160 268981906 268981906 575292048 575292048 293085443 27736416 27736416 549771360 549771360 566354134 893457537 896144811 899416481 926875907 926875907 909940345 346869066 344772642 287494434 270960672 17088544 54856784 54856784 42994912 43330128 130235592 130235592 120094832 120094832 79086736 85798440 85798440 29237088 139070464 139070464 30199008 184985664 184985664 141519190 455548194 455548194 303674682 303674682 448825996 448825996 344755816 902602177 902602177 661177785 727714980 727714980 589564072 646013000 646013000 584131281 777912200 777912200 637872153 637872153 821633496 938006618 938006618 659408304 671223813 805441603 805441603 679612485 843599187 843599187 706005525 655991497 392711273 244410312 455632660 455632660 275784016 44701008 44701008 37754304 13108416 13108416 16777248 29360160 29360160 54624404 563668480 826836129 826836129 446087810 446087810 974527135 1046532495 1072250649 1072250649 735061217 800062845 800062845 611377665 611377665 553554138 553554138 901981231 941492083 941492083 704089777 290106161 672662817 672662817 671916344 227043692 469778957 472949767 472949767 789895997 952523551 952523551 300812860 300812860 369173272 452462550 452462550 232268090 122679840 119580800 284781472 284781472 64001632 64001632 153555904 426905760 1054036202 1054036202 886440281 943616487 951719751 1007681439 1007681439 341835402 185872948 328526864 328526864 329036468 329036468 42522224 45664080 251568064 251568064 232130700 87563564 162389344 162389344 214434440 214434440 938202405 938202405 650739857 806929923 854098803 854098803 647546004 528501006 923435072 923435072 892753234 807852291 375259572 871641044 871641044 809603260 829297291 829297291 859604431 859604431 897232523 897232523 628087822 628087822 605469764 657005204 657005204 173417785 12910976 513109486 616096536 616096536 1058893160 1058893160 407203950 779895981 779895981 625418238 906025562 1031988782 1031988782 722929740 634200105 634200105 258111264 258111264 206058164 679084176 728311221 772138400 772138400 87386120 87386120 259901700 259901700 173326480 169722384 169722384 140373636 136290436 134426628 36276484 169820688 169820688 135374848 37649152 38333200 38333200 37361424 35304192 158583588 158583588 350324672 350324672 234403910 429062220 429062220 249629158 527990928 527990928 485639006 163750020 163750020 143054916 177901072 237254294 852862629 852862629 429721318 862008359 862008359 334088356 592009760 944181665 944181665 964113954 964113954 963459072 963459072 405157120 405157120 21238144 574569856 576593553 590931248 705587221 705587221 709620885 813234688 813234688 1021446584 1021446584 840349476 840349476 940886820 940886820 792324013 561426076 523498302 238369340 253176604 253176604 445451786 445451786 270019402 458434686 458434686 361295484 361295484 414244686 451525574 451525574 184389762 184389762 83384288 940838919 945692551 945692551 943008519 943008519 20971680 160574058 204189862 972709222 972709222 740846981 752919172 752919172 615637833 213468033 521356850 521356850 607715272 674883663 812181553 812181553 449110643 482047494 482047494 814817724 814817724 536286031 457543660 457543660 841222277 841222277 655695032 938883157 938883157 173230246 276963332 411250758 411250758 517738206 517738206 433870610 946670996 946670996 756686480 756686480 736683297 736683297 506366236 386274855 992613687 992613687 708514998 1000161257 1000161257 805468434 748987515 892036610 892036610 456799776 1045091643 1045091643 869743297 869743297 734083822 734083822 757641230 892396659 892396659 724112145 724112145 673982423 1037110589 1037110589 448987220 253705788 870322246 870322246 660681392 660681392 329398986 1019097149 1019097149 1019483588 1019483588 583240128 583240128 469692678 960096021 960096021 824343056 824343056 942419717 942419717 543698931 483329957 407904644 696707590 696707590 439352598 732028398 909710392 909710392 104598648 104598648 68947032 95164944 95164944 192960588 210141300 210141300 100738140 276834884 298347998 419751460 453099710 453099710 186141350 376299664 407142916 416305686 416305686 916718812 916718812 980156741 980156741 638453120 1021043606 1021043606 781268759 929792416 929792416 508024929 189318340 302006402 302006402 276922512 276922512 272679040 272679040 645165273 645165273 143320820 1060696895 1060696895 528129474 528129474 746812673 966483086 966483086 791853705 705617433 705617433 557976841 564595818 564595818 602775509 794802128 794802128 31057632 136842128 173805204 402956090 402956090 463129392 463129392 897001634 897001634 827339232 827339232 1028545711 1028545711 647816373 966577767 966577767 995039528 995039528 843890325 843890325 608772886 608772886 789133194 789133194 712495559 841395429 841395429 1034994463 1034994463 918687027 944866502 944866502 484719485 128970040 381060272 381060272 100405224 171459368 183815124 359718097 1024236591 1028129967 1028129967 845346087 845346087 119595307 608342665 636161984 636161984 924114130 924114130 321027856 321027856 213656972 75859072 138975892 138975892 416697462 416697462 38656946 76935444 208235996 269716652 410627068 762780109 977428894 977428894 672015000 1050553909 1050553909 1039674447 1039674447 1022308103 1022308103 904134924 904134924 281038730 281038730 296217224 404779268 404779268 123790518 469762090 476619396 476619396 409593222 268694158 456672152 457827510 459185880 459185880 358872656 358872656 292365264 57683680 173539732 276756642 323732898 323732898 286149136 537929984 537929984 294496482 294496482 804024417 804024417 939837447 939837447 901415689 901415689 985395114 985395114 944616990 224472964 68471304 894560728 894560728 184631552 312527956 452082834 452082834 52124192 150453808 170280596 170732820 170732820 65686772 230307736 230307736 206120496 250090828 250090828 247463936 211861836 27840780 169478592 169478592 297998388 297998388 222437942 512754400 512754400 109138934 174597208 174597208 437896604 437896604 317829278 241193434 350979532 350979532 106542224 481448032 481448032 295526524 295526524 407824564 407824564 318816306 38571170 37120 240665348 240665348 229655644 178308388 332416699 806358571 806358571 655633930 922426688 922426688 220426914 336377418 541132978 744040077 744040077 823681588 823681588 716993301 1001704311 1001704311 547590729 747353921 747353921 324227506 324227506 860340881 860340881 202391097 255712769 255712769 241381788 921505474 921505474 591527744 604356704 604356704 28525216 28525216 26350176 26350176 15864544 11670336 168336848 168336848 57787940 24571440 19012608 57465888 0 0 0 0 426813648 426813648 525576832 525576832 493275902 708911296 708911296 1015030804 1015030804 838934622 675861147 68203550 669154648 891104811 891104811 849203859 681194608 974459229 974459229 933199438 933199438 557267745 997863212 997863212 980157188 923550900 923550900 672535388 620544671 481346581 375685232 289819338 45224784 274731730 509838460 509838460 420708912 420708912 320356390 437043920 437043920 278150664 278150664 196710766 136400776 274415304 278406210 398662216 398662216 323035314 322568664 322568664 420267888 420267888 438880132 485295390 485295390 482944206 337903624 337903624 270797058 320991584 518050988 518050988 434353048 161398116 161398116 95199192 95199192 152271532 152271532 77543740 194803508 194803508 121655376 236685892 236685892 205719805 622094649 622094649 588271013 840018200 906365712 906365712 1013658987 1059925687 1059925687 569587641 786306274 786306274 768118065 768118065 678591192 545425560 604397636 604397636 19071008 272708008 272708008 123937170 151205136 337838254 337838254 208943376 144326796 137415876 75544332 318043478 318043478 319568135 696915045 696915045 806619651 806619651 347260193 347260193 770778536 770778536 539583468 1037623179 1037623179 612435393 220920649 538442241 689638320 689638320 806508316 1004590567 1004590567 851485550 851485550 899416996 899416996 444909654 444909654 169982236 472647056 527249300 527249300 490001182 490001182 154066212 18120716 219400996 239093792 239093792 280768992 290591394 290591394 1043861661 1043861661 1023461637 1023461637 587155838 257931608 159907944 177507332 235611544 235611544 236600736 395940332 461432972 461432972 370488088 588718160 588718160 837563476 996620727 996620727 774456707 740497960 702620133 474660663 1060818781 1060818781 760693024 760693024 547689840 43076368 149527316 793446148 793446148 622554868 537303124 537303124 344855565 967607902 967607902 640956924 575251259 575251259 718498778 718498778 1036567791 1036567791 424564801 540805569 830158755 830158755 1014446991 1014446991 827816335 503691147 724472378 724472378 326251170 326251170 55650192 93414024 117474808 117474808 113559840 80792704 209653528 209653528 414197458 414197458 470718888 470718888 379574924 57428096 51079472 51079472 297988898 297988898 374442936 384771522 384771522 1023737810 1023737810 955597058 955597058 408103407 390178234 390178234 24686128 350378314 350378314 696295721 722118820 722118820 155538485 52041264 865812742 865812742 316770102 427652200 531268790 531268790 270082378 194846756 194846756 177218532 215033920 215033920 496052637 956639271 956639271 1055748507 1055748507 810128650 810128650 336015562 608963721 751085581 751085581 646896448 646896448 906988822 951856134 951856134 941855699 940006581 1006891023 1006891023 915954930 915954930 924054699 924054699 302289464 302289464 282073714 253022764 346180390 678429284 678429284 402911238 402911238 279185730 450963604 450963604 40318576 40318576 39797120 157335972 208176168 208176168 196158084 229462080 229462080 203913780 169819668 133311356 214293768 214293768 151768004 174447492 174447492 218400912 239723676 240999944 403702876 454663710 454663710 184482412 184482412 873036896 873036896 698611008 698611008 415470664 415470664 110281824 43709456 43775568 43775568 104344091 924910904 924910904 80384840 80384840 112794088 130686192 130686192 449970864 453549778 453549778 428297922 428297922 189378580 689162816 689162816 571001104 575292048 575292048 293085443 164431940 146474800 542746416 542746416 542688897 457484225 826881090 899416481 926875907 926875907 909940345 531370646 531370646 361159124 361159124 357600128 358125220 358125220 151412356 238227968 238227968 130235592 120094832 120094832 95443408 105461592 130166568 240175268 240175268 255597024 255597024 226897984 226897984 141177296 253969784 253969784 122394068 102726808 241030500 241030500 126403704 664918786 997915001 997915001 837220529 837220529 176202388 646013000 646013000 584131281 777912200 777912200 637872153 637872153 821633496 821633496 539231553 378815257 989080922 989080922 1035315705 1035315705 1022362297 1022362297 706005525 655991497 392711273 818938096 818938096 588565888 315196608 309929810 551028304 607696554 607696554 500620584 500620584 364958122 1067016882 1067016882 730358899 826836129 826836129 1066017078 1066017078 974527135 1046532495 1072250649 1072250649 585534278 212473164 524827002 524827002 349206666 173869384 352452722 352452722 314053898 334172432 334172432 264118140 264118140 671916344 671916344 179088453 713114180 713114180 731646376 731646376 656771368 656771368 575181641 575181641 540591873 99243753 576890872 639815961 639815961 543688473 536982400 61155696 61155696 42016848 185666000 402972788 686842694 942721109 973391895 973391895 379916693 1007681439 1007681439 443548566 503742626 503742626 314745042 90884346 438319572 438319572 288933666 392986760 392986760 34867728 33948176 68080216 68080216 209371974 210772681 938202405 938202405 650739857 806929923 806929923 436822549 29095776 60817441 864731736 892753234 892753234 807852291 734775403 871641044 871641044 809603260 829297291 829297291 859604431 859604431 897232523 897232523 628087822 628087822 605469764 479327936 597369050 902313515 902313515 674432185 497529210 497529210 1058893160 1058893160 807699606 807699606 711773589 541029776 645584793 796491620 796491620 775542116 723074353 545717884 207092364 189535920 71426184 74597896 74597896 119285504 119285504 71370624 55649200 38347920 151306784 151308324 151308324 33555472 34079760 34079760 525312 524288 1605632 6080640 558269617 591419520 591419520 560205824 560205824 35304192 609012873 745334925 745334925 676718988 5708424 100942504 100942504 84052920 43453080 93877688 93877688 57371744 57371744 6006912 83954848 237254294 311244370 425978992 425978992 299162496 430706022 557717878 590613297 590613297 973275412 991048708 991048708 438924038 689549223 689549223 5509888 660480 132096 0 17387648 17387648 22746272 22746272 813234688 813234688 671905796 671905796 567032270 567032270 866524958 866524958 535924928 535924928 523498302 352247746 114499554 197320860 445451786 445451786 270019402 458434686 458434686 361295484 361295484 414244686 451525574 451525574 428581422 428581422 126091066 126091066 67362906 421010696 421010696 87822120 71114784 160574058 204189862 835416392 835416392 740846981 740846981 894010435 894010435 863577237 863577237 547783544 607715272 674883663 878257803 878257803 628109192 379662346 379662346 814817724 814817724 536286031 981725216 998244471 998244471 841222277 1050874035 1050874035 938883157 737987139 282349556 411250758 411250758 517738206 934775626 934775626 946670996 946670996 928667188 928667188 736683297 736683297 180429012 386274855 992613687 992613687 470424328 1000161257 1000161257 805468434 300293425 892036610 892036610 456799776 1045091643 1045091643 869743297 869743297 734083822 734083822 829814537 835327203 835327203 724112145 724112145 235217964 325322508 448987220 448987220 253705788 870322246 870322246 660681392 864764212 864764212 1019097149 1019097149 1019483588 1019483588 583240128 583240128 471471630 960096021 960096021 426109350 329175587 942419717 942419717 683748088 683748088 252971580 252971580 414112064 439352598 732028398 826698253 905162798 905162798 499912134 792455384 889590371 889590371 192960588 755101702 755101702 620875098 276834884 276834884 268970496 268970496 67805704 307623776 307623776 315097856 315097856 70807896 916718812 916718812 746589535 638453120 638453120 617667744 206833296 131049664 662731974 662731974 508024929 532153558 532153558 401080734 298353184 356042538 356042538 328762472 645165273 645165273 103858968 1060696895 1060696895 528129474 528129474 418172358 966483086 966483086 647110406 647110406 540091137 166059589 138419212 138419212 85859880 85859880 214462180 214462180 211559424 211559424 173805204 151013412 151013412 419627116 897001634 897001634 827339232 827339232 405547779 283509926 821272896 821272896 274617056 995039528 995039528 347203181 132693848 608772886 608772886 789133194 789133194 712495559 841395429 1028816384 1034994463 1034994463 747897140 944866502 944866502 484719485 92674152 313672984 313672984 193540894 32241120 94771560 470461944 470461944 507719838 507719838 440450194 374131866 108175504 70513416 54009440 60767856 95691032 95691032 102828904 102828904 88324184 75859072 75859072 72768576 115639744 115639744 67373208 44344088 75218904 75218904 72340868 762780109 977428894 977428894 672015000 1050553909 1050553909 1039674447 1039674447 1022308103 1022308103 904134924 904134924 466882726 466882726 296217224 443762316 443762316 436892938 320341566 320341566 69854472 271631296 281018562 456672152 457827510 457827510 213145474 358872656 358872656 292365264 62697568 62697568 276756642 323732898 323732898 319814706 537929984 537929984 300701888 294496482 541930566 541930566 151422051 538526152 861020715 861020715 817467659 666968313 520732576 520732576 403012058 894560728 978731382 978731382 326758300 715075147 715075147 519650690 519571422 512879536 170162196 170162196 65686772 230307736 230307736 222499792 222499792 247463936 247463936 18874720 18874720 70385992 70385992 93454368 322175014 322175014 497432984 497432984 520612666 520612666 158648596 158648596 495226384 495226384 439380816 439380816 350979532 179751106 481448032 481448032 393855514 453013666 453013666 424658996 403227654 374222216 245454820 236503532 236503532 152094020 178308388 178308388 89129264 191644588 469929974 922426688 922426688 220426914 336377418 541132978 744040077 744040077 1005851826 1005851826 716993301 1001704311 1001704311 702755017 747353921 747353921 324227506 324227506 860340881 860340881 624599464 624599464 1042593956 1042593956 921505474 921505474 591527744 604356704 604356704 499447944 499447944 242625434 350934120 350934120 329847034 344243778 507717202 507717202 313095376 151729188 143249504 483344630 483344630 343484298 343484298 426813648 1037046271 1037046271 1011081464 1011081464 708911296 708911296 550572224 550572224 675861147 675861147 68203550 669154648 891104811 891104811 849203859 64540123 178079764 178079764 933199438 933199438 823332896 1014523557 1014523557 924321722 923550900 923550900 916884174 1060375297 1060375297 589482962 289819338 39771792 39771792 287368992 287368992 420708912 420708912 320356390 270218754 50796566 194775044 505354582 505354582 343933552 327155752 68295760 398662216 398662216 323035314 322568664 414991368 420267888 420267888 151667528 259072668 259072668 444408316 444408316 337903624 270797058 320991584 320991584 26329362 125904320 161398116 181047696 181047696 181436500 181436500 152271532 77543740 194803508 194803508 121655376 236685892 236685892 81525976 101104392 136337428 136337428 840018200 906365712 906365712 438406272 388182706 569587641 569587641 786306274 786306274 67633416 69338368 69341448 69341448 187049252 187049252 237385764 272708008 272708008 123937170 134283264 238748044 238748044 208943376 137415876 174462096 174462096 137104644 44114256 319568135 696915045 696915045 806619651 806619651 539885568 539892993 770778536 770778536 539583468 811928362 811928362 228396004 220920649 538442241 538442241 289915164 806508316 1004590567 1004590567 807276064 678563264 899416996 899416996 127664652 95044964 272654502 472647056 527249300 527249300 490001182 490001182 219939976 219939976 205884220 239093792 239093792 203478342 472393934 472393934 1043861661 1043861661 1023461637 1023461637 664671764 265162517 351020478 351020478 448331304 510766912 510766912 395940332 461432972 461432972 370488088 588718160 629984042 629984042 596024433 1006770302 1006770302 740497960 702620133 998086512 1060818781 1060818781 760693024 760693024 547689840 242486904 242486904 1028375815 1028375815 991480495 991480495 541995151 1011031169 1011031169 395577978 473142624 496625262 881848458 1029040815 1029040815 708825129 271023249 281545888 681974850 681974850 813503911 1055923103 1055923103 753144130 387079477 724472378 724472378 831603042 831603042 496226644 496226644 383649722 564992221 738642576 738642576 209653528 209653528 414197458 414197458 470718888 470718888 379574924 57428096 259954180 469646660 469646660 319420496 374442936 384771522 384771522 1023737810 1023737810 955597058 955597058 805330265 548799330 549778477 711457173 863136997 958082365 958082365 779000284 688847499 536235582 460010716 1071515602 1071515602 718421796 718421796 531268790 531268790 393119016 426549642 426549642 371460488 371460488 369362448 437274752 437274752 1027670648 1027670648 915604383 842142483 403704342 403704342 608963721 751085581 751085581 690566576 646896448 906988822 951856134 951856134 170896064 205657762 868185598 868185598 915954930 915954930 924054699 924054699 917157745 917157745 184862762 251924488 251924488 678429284 678429284 402911238 402911238 279185730 450963604 450963604 90777000 90777000 34329016 157335972 208176168 208176168 77127488 229462080 229462080 203913780 169819668 133311356 218903260 218903260 151768004 238573056 238573056 146564984 146564984 112072236 403702876 454663710 454663710 340857504 184482412 873036896 873036896 579554520 411776070 415470664 415470664 383654928 383654928 373502106 373502106 104344091 924910904 924910904 309137456 309137456 122891184 122891184 43262584 290063252 290063252 55087684 109332888 111414620 189378580 708951680 708951680 571001104 571001104 52895956 164431940 164431940 146474800 567984704 567984704 567854817 893499529 893499529 622575755 621166617 621166617 590484273 531370646 531370646 361159124 361159124 357600128 358125220 358125220 151412356 238227968 238227968 64888560 64888560 57098496 95443408 105461592 130166568 240175268 240175268 255597024 255597024 226897984 226897984 230858814 478183458 490856494 490856494 355484742 423706868 423706868 262262400 790661948 997915001 997915001 837220529 837220529 98293603 549730832 584266449 584266449 578263872 578263872 137435993 39085080 537133312 539231553 539231553 378815257 989080922 989080922 1035315705 1035315705 1022362297 1022362297 481635022 287958758 1016629198 1016629198 818938096 588565888 315196608 680528901 680528901 676596357 607696554 812084360 952375687 952375687 1067016882 1067016882 845886867 978358409 978358409 1066017078 1066017078 932353403 1071842764 1071842764 528011845 94651934 212473164 518542040 518542040 349206666 24973626 352452722 352452722 314053898 725619629 725619629 264118140 550027537 677137076 677137076 205262604 713114180 713114180 731646376 731646376 661002792 661002792 575181641 575181641 540591873 352403832 576890872 639815961 639815961 543688473 536982400 85197002 61155696 366412122 366412122 402972788 686842694 942721109 973391895 973391895 173015700 603363701 993018706 1000362097 1000362097 836008163 836008163 850190722 850190722 736182694 449187060 392986760 392986760 268676437 412213830 424166139 734215413 734215413 659695803 571290753 386542281 646214841 646214841 1021675859 1021675859 952632465 263048223 648128112 648128112 662756055 963889658 963889658 702960108 702960108 448835817 362201423 362201423 337144386 337144386 189797300 276834664 407710854 407710854 302974676 203719716 597369050 902313515 958968203 958968203 834781382 834781382 671671428 734322912 807699606 807699606 766146024 766146024 697512549 796491620 796491620 775542116 723074353 545717884 171135256 171135256 213074148 213074148 187935268 237771552 237771552 71370624 38347920 676365493 676365493 587541633 977546787 977546787 957456581 998244471 998244471 593519794 939557792 939557792 600483491 851531106 851531106 560205824 560205824 540810880 609012873 745334925 745334925 676718988 361914622 361914622 407189612 419752014 419752014 377807416 377807416 139322992 345082372 349971208 349971208 136905352 311244370 311244370 272439892 151717366 430706022 557717878 590613297 640878152 973275412 991048708 991048708 438924038 689549223 829468192 829468192 538808064 544690688 545818929 601569616 727363527 727363527 291801506 602552029 602552029 376947426 376947426 567032270 744686277 866524958 866524958 814226952 614615970 366927594 352247746 114499554 197320860 571074373 571074373 179307348 791954133 791954133 770713466 990868383 990868383 857803301 311517972 428581422 428581422 126091066 301345956 477920480 477920480 421010696 87822120 71114784 212882625 743181453 1029965445 1029965445 206046215 942697126 942697126 894010435 863577237 863577237 547783544 597708810 597708810 878257803 878257803 628109192 379662346 382302426 382302426 371146266 371146266 981725216 998244471 998244471 762185020 1050874035 1050874035 949623060 737987139 1015773976 1015773976 877846561 978441876 978441876 934775626 669272816 109500504 928667188 967159549 1007757706 1007757706 827825261 982100369 982100369 470424328 470424328 469836104 369624090 627166996 864164583 864164583 855711795 482357703 726384826 726384826 930012051 930012051 655813788 655813788 829814537 835327203 835327203 755678032 755678032 279841769 881595601 881595601 343677825 809158193 809158193 908246171 908246171 864764212 864764212 186437191 220775724 225222048 225222048 472799586 472799586 471471630 471471630 426404366 426109350 322320384 770058493 770058493 1028929646 1028929646 323890050 699932324 699932324 922761047 922761047 826698253 905162798 905162798 499912134 792455384 889590371 889590371 170356760 755101702 755101702 620875098 277552708 521868632 521868632 458700256 458700256 307623776 307623776 283197634 277184896 276890834 449374225 449374225 847597637 847597637 617667744 617667744 92667170 903891632 903891632 905971067 905971067 578497592 872754460 872754460 545836851 545836851 371234176 609795488 609795488 9020864 82262408 82262408 379397136 379397136 244660824 717221879 717221879 429041026 684178819 684178819 540091137 166059589 138419212 138419212 85859880 85859880 214462180 214462180 211559424 211559424 79785984 151013412 151013412 419627116 606276032 901054824 914643461 914643461 729065808 729065808 821272896 821272896 758194989 758194989 358877610 568328346 708449873 708449873 338428672 171985694 189094912 470224910 470224910 1028816384 1028816384 1024508511 747897140 747897140 237141368 237141368 215081676 313672984 521433092 521433092 419869242 174583982 470461944 806069251 806069251 642069523 886958980 886958980 472381710 978146498 978146498 891294809 307368059 812332179 812332179 199438903 199438903 42046960 782291405 782291405 115639744 115639744 67373208 39339032 38955536 38955536 17266016 301810856 337192458 337192458 231231142 151681124 0 0 0 77073024 80481480 388131132 388131132 466882726 466882726 95569218 443762316 443762316 436892938 240702106 27336736 29434080 271631296 281018562 281544322 281544322 273678978 125600064 435214144 435214144 413661510 413661510 286309062 286309062 144328192 413262416 413262416 319814706 541119697 543419392 543500673 543500673 537333185 805570563 812423171 861020715 861020715 817467659 666968313 520732576 520732576 403012058 587934144 978731382 978731382 326758300 715075147 715075147 519650690 519571422 512879536 39667360 5849216 35794144 53419280 53419280 222499792 222499792 168852284 145281216 145281216 4767828 226542264 226542264 217351884 322175014 322175014 497432984 497432984 520612666 520612666 158648596 158648596 495226384 495226384 439380816 439380816 170198396 209040072 439538454 439538454 393855514 453013666 453013666 424658996 403227654 374222216 245454820 277591594 431243280 431243280 423050022 316244683 1061868735 1061868735 960305963 957559655 858499619 210696913 927130281 927130281 902700762 902700762 1005851826 1005851826 533411169 533411169 297537378 702755017 702755017 1012969472 1012969472 877768847 759288331 558367784 624599464 1009196416 1042593956 1042593956 889856040 141075524 251670608 477329454 477329454 499447944 499447944 242625434 350934120 350934120 329847034 376144786 507717202 507717202 322062416 336353322 336353322 505237872 505237872 343484298 343484298 303515004 1037046271 1037046271 1011081464 1011081464 348250329 542115474 550572224 550572224 8524352 9572928 271220864 400216936 400216936 37917200 353536176 353536176 345937472 345937472 17961504 823332896 823332896 1014523557 1014523557 624551721 112785785 848954899 916884174 1060375297 1060375297 865344260 389976328 70915848 351424586 351424586 424309928 424309928 457912882 457912882 428385378 434877014 434877014 505354582 505354582 343933552 327155752 124589402 104356674 104356674 79724634 138024777 414991368 414991368 707432529 1042825832 1042825832 259072668 789620552 789620552 597447277 588700209 828766705 828766705 575908272 575908272 86487968 181047696 181047696 181436500 181436500 142606404 133979512 97942200 107701616 112380992 127396336 202352808 202352808 77521988 36531744 168677376 168677376 878780546 878780546 893586825 893586825 890190891 564207969 564207969 532350947 1064058337 1064058337 718147482 962234430 973232194 973232194 273689216 237385764 273162514 273162514 134283264 389466768 503426094 503426094 340271242 483139294 483139294 137104644 134352938 36346474 204133644 885527872 885527872 674283559 539885568 539892993 633864384 633864384 694175560 943719019 943719019 673711365 959680602 959680602 800187261 728668276 839701993 839701993 861949039 861949039 161616228 264901938 357134486 405736882 405736882 401275236 423723138 423723138 302779410 289619162 1055951895 1055951895 451023318 904302780 904302780 541513857 548851777 548851777 472393934 407929354 539366144 815008323 815008323 664671764 265162517 977183107 977183107 730706452 983584070 983584070 168638748 237448212 237448212 369404360 369404360 629984042 629984042 646029798 1006770302 1006770302 758385453 944610539 998086512 998086512 272238608 272238608 253750336 12239076 242486904 445285028 1028375815 1028375815 991480495 991480495 541995151 1011031169 1011031169 909669830 662185552 662185552 881848458 1029040815 1029040815 708825129 682191297 556564866 681974850 902563943 902563943 1055923103 1055923103 753144130 352717381 541287954 541287954 831603042 831603042 496226644 496226644 413286692 564992221 738642576 738642576 235865610 305345298 305345298 302246980 272894464 430459648 430459648 168914286 259954180 469646660 469646660 319420496 319420496 119061536 119061536 144445286 429671044 429671044 805330265 805330265 882855274 882855274 1002682096 1002682096 958082365 958082365 779000284 790490685 797210388 797210388 1071515602 1071515602 718421796 885303783 885303783 393119016 889487395 939004042 939004042 843368794 843368794 809519251 689219885 689219885 1027670648 1027670648 915604383 842142483 403704342 403704342 244705884 261713008 690566576 843981022 843981022 649567505 310420354 310420354 697696488 822086818 868185598 868185598 595517361 404268427 975810209 975810209 917157745 917157745 286710306 319822602 330810112 354851336 563182051 702792337 1046659262 1046659262 927343021 927343021 622405161 626075544 626075544 34286856 202391340 202391340 77127488 210362980 210362980 53341488 192650868 192650868 218903260 218903260 211677364 238573056 238573056 159697780 173071792 173071792 166394280 281623290 340857504 340857504 387387450 387387450 579554520 579554520 280230275 807590179 807590179 554599682 383654928 373502106 373502106 86180536 122233752 278922754 309137456 309137456 167979332 167979332 245043296 414193618 414193618 264376572 496246090 496246090 179339428 708951680 826302482 826302482 705792516 975069842 975069842 562159713 542197985 948186222 948186222 1024362924 1024362924 893499529 622575755 855888176 855888176 831705699 697731111 697731111 968135462 968135462 22020896 35072512 63924800 63924800 106827168 106827168 99031440 168957796 168957796 114295512 147505740 153006112 236175964 236175964 187104036 187104036 105864200 189785156 247628988 478183458 490856494 490856494 355484742 423706868 423706868 262262400 790661948 790661948 185816698 707727447 707727447 575029564 575029564 584266449 584266449 578263872 578263872 744777477 744777477 572304449 273360092 914727507 914727507 521372020 521372020 173053074 342546189 974800522 974800522 569935634 595100126 1016629198 1016629198 600591104 600591104 314313984 680528901 680528901 676596357 543737672 812084360 952375687 952375687 1043997194 1043997194 845886867 978358409 978358409 885283756 885283756 766345203 1071842764 1071842764 300105471 335108824 443608500 443608500 363923850 363923850 15139572 167907348 171970688 173150868 725619629 725619629 133434360 550027537 677137076 677137076 205262604 655953208 655953208 648601685 580706040 661002792 661002792 557005040 107302546 352403832 352403832 349498258 341358360 341358360 376517122 376517122 85197002 41953378 366412122 1044715651 1044715651 826475662 839983418 839983418 886428730 886428730 603363701 993018706 1000362097 1006657576 1006657576 836008163 850190722 850190722 736182694 449187060 248069532 268676437 268676437 412213830 424166139 734215413 734215413 659695803 571290753 386542281 646214841 646214841 1021675859 1021675859 952632465 780141397 724878880 648128112 662756055 963889658 963889658 64 8388672 768700664 768700664 143083628 206887244 206887244 200033732 199329804 223883644 223883644 227817216 227817216 207591369 604751561 958968203 958968203 834781382 966307152 966307152 956717247 956717247 967157218 967157218 766146024 697512549 756163148 756163148 155236516 157700624 158353956 222734496 222734496 213338716 213074148 188303604 237771552 237771552 237081680 214391336 676365493 676365493 587541633 977546787 977546787 957456581 998244471 998244471 593519794 939557792 939557792 600483491 851531106 851531106 325593185 540810880 540810880 24977536 2622720 365816018 365816018 361914622 361914622 407189612 419752014 419752014 377807416 377807416 139322992 345082372 349971208 349971208 136905352 107164056 105647256 371481728 371481728 344714314 438100232 438100232 640878152 640878152 358683424 404845844 404845844 321438114 829468192 829468192 538808064 544690688 545818929 601569616 727363527 727363527 291801506 602552029 602552029 376947426 376947426 447575778 744686277 744686277 814226952 814226952 614615970 262983036 262983036 247271883 520672480 918557109 918557109 179307348 791954133 791954133 770713466 990868383 990868383 1068519671 1068519671 988100478 988100478 25288800 301345956 477920480 477920480 280293130 356117796 356117796 296028430 743181453 1029965445 1029965445 206046215 942697126 942697126 750522189 750522189 612706052 553853348 325667848 1013795844 1013795844 407374976 407374976 226623804 382302426 382302426 691395373 756861349 756861349 626575017 626575017 534470004 492943245 949623060 949623060 635981280 1015773976 1015773976 877846561 978441876 978441876 810319906 538234142 357040436 693766503 967159549 1007757706 1007757706 827825261 982100369 982100369 347509112 469836104 469836104 369624090 627166996 864164583 959569812 959569812 902806753 726384826 726384826 930012051 930012051 801511677 655813788 555563222 576448849 689430501 755678032 755678032 424805529 881595601 881595601 581485905 809158193 809158193 908246171 908246171 339835681 914524394 1034245148 1034245148 674131208 917364299 917364299 656321222 294029614 269906100 323299506 323299506 322320384 770058493 770058493 1028929646 1028929646 323890050 699932324 699932324 922761047 922761047 562187578 96384736 96384736 74898312 245449128 263666556 263666556 263600756 194386548 169945108 327692392 336082452 521868632 521868632 458700256 458700256 296487232 296487232 283197634 277184896 276890834 449374225 449374225 847597637 847597637 551938272 620046785 623903529 903891632 903891632 905971067 905971067 578497592 872754460 872754460 545836851 545836851 856323104 856323104 609795488 547195712 608988936 783124447 783124447 270846210 510677938 717221879 717221879 546611724 747743752 747743752 84873248 626202152 626202152 607505545 607915785 607915785 538360936 19593152 70391872 70556608 70556608 17092744 346198056 346198056 606276032 901054824 914643461 914643461 729065808 729065808 939884608 939884608 758194989 758194989 358877610 568328346 708449873 708449873 1041514948 1041514948 552862347 336102091 63176800 132204688 132243960 684124552 684124552 224445388 224445388 215081676 215081676 202816264 521433092 521433092 500001694 500001694 478627876 806069251 806069251 642069523 886958980 886958980 472381710 978146498 978146498 891294809 307368059 812332179 812332179 199438903 199438903 42046960 782291405 782291405 96972192 96972192 21546144 23160064 23160064 152330284 152330284 958490637 958490637 593822370 643957329 747542929 747542929 956498381 956498381 858789223 615773001 615773001 601006520 320641834 320641834 95569218 414324452 414324452 477711804 477711804 408396574 215797452 215797452 150832386 302540416 302540416 355506240 355506240 435214144 435214144 413661510 413661510 286309062 286309062 144328192 413262416 413262416 318049046 541119697 543419392 543500673 543500673 537333185 805570563 812423171 812423171 581758217 284792354 973565758 973565758 580402701 600234225 865257705 865257705 447685888 462298230 462298230 345768992 52693296 74869266 437646224 437646224 118031508 58304720 133328712 133328712 97041320 168852284 168852284 145281216 145281216 4767828 226542264 226542264 217351884 264923604 264923604 203202132 140069512 139584132 71174668 8789632 21180576 125894920 252198400 252198400 173346340 173346340 209040072 217510784 217510784 70469640 5243520 2129984 7340928 84821556 285499224 285499224 277591594 431243280 431243280 423050022 316244683 1061868735 1061868735 960305963 957559655 858499619 285384728 927130281 927130281 902700762 902700762 685246622 544547128 1049103844 1049103844 297537378 297537378 287325218 1012969472 1012969472 922746939 789762233 503950349 52258588 1009196416 1009196416 7617536 28080264 30119200 72006952 72006952 76634560 101885480 101885480 75409160 77493208 77493208 115129498 376144786 376144786 411228036 411228036 336353322 336353322 505237872 505237872 67637252 303515004 303515004 262285846 67293192 705708040 705708040 273678976 37234258 276312530 276312530 271193368 135865860 466636902 466636902 417387660 409493198 949084429 1066627053 1066627053 700391109 700391109 537773143 675873412 822092288 822092288 608821803 536994827 289447815 456957091 753421192 865344260 865344260 389976328 70915848 351424586 351424586 424309928 424309928 457912882 457912882 428385378 434877014 434877014 60826066 196554094 226966330 226966330 124589402 104356674 346163776 346163776 138024777 210781721 210781721 707432529 1042825832 1042825832 112321368 789620552 789620552 597447277 588700209 828766705 828766705 575908272 575908272 86487968 59549936 62914800 164273396 164273396 141073440 144838980 144838980 143185152 112380992 162107076 202352808 202352808 159001600 24432420 168677376 168677376 941830163 941830163 893586825 893586825 890190891 865075827 865075827 662443171 1064058337 1064058337 878116932 962234430 973232194 973232194 273689216 54791168 273162514 273162514 134365188 389466768 503426094 503426094 341333664 483139294 483139294 134352938 134352938 146136624 204133644 885527872 885527872 674283559 491308681 671584084 671584084 661138312 694175560 943719019 943719019 814743669 959680602 959680602 800187261 728668276 839701993 839701993 861949039 861949039 618791217 637571552 637571552 405736882 405736882 401275236 141298108 302779410 302779410 289619162 1055951895 1055951895 768325740 904302780 904302780 541513857 548851777 548851777 873903173 873903173 539366144 815008323 815008323 345267456 347789130 977183107 1007440932 1007440932 983584070 983584070 141421812 84173692 102185496 369404360 369404360 350786068 406583046 966680536 966680536 671561422 758385453 944610539 944610539 543072215 543072215 404095094 671369463 671369463 281842768 445285028 923066156 923066156 247937024 247937024 621357240 621357240 909669830 909669830 662185552 662185552 941185142 941185142 920407203 682191297 682191297 556564866 556532992 902563943 902563943 690291181 598540400 163264356 532195169 532195169 539575364 539575364 839005504 889805833 889805833 856681572 856681572 414994806 413475414 235865610 305345298 305345298 302246980 272894464 430459648 430459648 168914286 67496212 289340640 313365876 463907280 463907280 343970978 343970978 83309825 273659144 374187274 374187274 843989165 882855274 882855274 1002682096 1002682096 555246919 751693005 766822813 790490685 797210388 797210388 382018534 424311150 1054535921 1054535921 885303783 318916768 889487395 939004042 939004042 843368794 843368794 809519251 689219885 689219885 973078618 973078618 813879766 813879766 673233043 505766030 642327705 642327705 95519025 843981022 843981022 649567505 1024753590 1049748063 1049748063 822086818 1033130834 1033130834 595517361 1042488766 1042488766 975810209 658543448 658543448 708678628 708678628 595778537 354851336 738534068 738534068 1046659262 1046659262 927343021 927343021 622405161 626075544 626075544 102959112 102959112 68184368 128262672 210362980 210362980 53341488 192650868 192650868 198706932 211677364 211677364 201725964 159697780 159697780 173071792 173071792 166394280 281623290 401552984 401552984 387387450 885923019 885923019 376470809 613478473 807590179 807590179 554599682 549956120 538055699 839385617 839385617 593179443 590422704 112132424 112132424 167979332 167979332 245043296 414193618 414193618 264376572 496246090 496246090 179339428 591618176 826302482 826302482 705792516 975069842 975069842 562159713 542197985 948186222 948186222 1024362924 1024362924 606388259 308136435 855888176 855888176 831705699 697731111 697731111 968135462 968135462 476978548 488951840 488951840 177646144 185980944 185980944 176326356 176326356 168957796 114295512 147505740 153006112 236175964 236175964 187104036 187104036 231366660 231366660 767624499 767624499 329794966 781821113 781821113 323576754 133514472 546614017 680892991 680892991 404912475 707727447 707727447 752419469 752419469 884998347 884998347 975528064 975528064 744777477 744777477 572304449 286536512 914727507 914727507 521372020 521372020 310851666 342546189 974800522 974800522 811918936 595100126 833449056 833449056 600591104 820003202 820003202 807438528 10621248 10621248 359231520 564286496 564286496 902205760 902205760 619060427 454395056 141617512 225279632 885283756 885283756 847938160 847938160 283836913 510658143 919286291 919286291 586272909 767957037 767957037 818948240 818948240 790635967 790635967 1056441646 1056441646 254575992 254575992 230428524 230428524 82787876 541134336 541134336 537993729 33780241 35084672 39981568 39981568 107302546 347589192 349498258 349498258 343177752 343177752 376517122 376517122 319819776 322961586 322961586 1044715651 1044715651 826475662 839983418 839983418 886428730 886428730 582359889 202920200 186258996 1006657576 1006657576 359794049 342361482 151257328 517826524 517826524 248069532 248069532 246162496 246162496 295911544 562914030 889839145 889839145 276932288 276932288 151744748 919246418 1058454983 1058454983 780141397 780141397 724878880 845714240 845714240 671650055 575770132 558698052 529188659 768700664 940757575 940757575 499610041 200033732 200033732 199329804 223883644 223883644 227817216 227817216 72087554 353246250 556777122 556777122 538010376 966307152 966307152 956717247 956717247 967157218 967157218 749670751 692398245 692398245 585246964 155236516 155236516 48415272 222734496 222734496 213338716 188303604 188303604 176533828 237081680 237081680 214391336 214391336 55536800 55536800 26697408 26697408 26889248 26889248 547597568 547597568 54876672 55833264 820776018 850455218 850455218 35678848 587729281 587729281 779912861 779912861 427404679 485306582 485306582 456055186 36552967 68209435 939903545 939903545 176463962 504440350 504440350 833728248 833728248 703427385 678373269 759987149 877370459 877370459 788804230 767903310 816472522 903982267 903982267 779618921 570838152 1059965287 1059965287 1064702960 1064702960 582661441 582661441 556857697 556857697 442739860 951757178 951757178 768747286 407556744 407556744 340975600 340975600 231627346 299554530 299554530 354475042 354475042 369006336 420642956 420642956 520672480 918557109 918557109 297846852 164009996 57057610 475387924 934716024 934716024 1068519671 1068519671 988100478 988100478 237718610 707249153 707249153 576141357 326901939 356117796 765316650 765316650 926361911 926361911 967128756 967128756 115609758 260127948 260748684 260748684 641802501 641802501 438642568 1013795844 1013795844 944891904 944891904 487359936 92968224 83647688 691395373 756861349 756861349 626575017 626575017 534470004 492943245 746527545 965772114 965772114 633618927 562085985 202639884 808840332 810319906 810319906 538234142 357040436 357040436 361062736 908225560 908225560 520924574 520924574 705451602 705451602 866382722 866382722 839017408 417010086 417010086 959569812 959569812 902806753 616538681 413147279 626970272 801511677 801511677 667152633 667152633 82577841 45881472 45212496 476653600 476653600 631020807 631020807 581485905 111707201 608503248 608503248 541977688 115139593 914524394 1034245148 1034245148 674131208 917364299 1032074605 1032074605 946059814 946059814 503703582 760414978 760414978 593942961 499853600 810851334 832513352 832513352 442804652 381031372 263353320 851983785 851983785 913719518 913719518 300859607 589334804 949170759 949170759 413433693 758975862 758975862 688420162 336082452 437409800 437409800 401572528 401572528 72655872 13378736 34472960 34472960 50617456 50617456 34261072 705811712 705811712 768378943 947684721 947684721 813966293 876247690 876247690 1066363328 1066363328 484571599 168387640 102924572 386874426 856323104 856323104 67404833 547195712 608988936 783124447 783124447 457371000 510677938 510677938 559431163 559431163 747743752 747743752 601340512 626202152 626202152 607505545 607915785 614550152 614550152 19593152 70391872 113953176 313317170 313317170 346198056 390340536 390340536 113464018 113464018 697828965 697828965 485270687 939884608 939884608 787783254 514188870 886832798 886832798 548274562 782899412 1041514948 1041514948 891700619 451561585 361665912 1002619344 1067585919 1067585919 684124552 224445388 224445388 33853884 133694788 133694788 245736506 339559702 500001694 500001694 478627876 444978328 347005962 347492454 347492454 346042598 346042598 222482604 545399552 545399552 3343616 102438680 102438680 101266200 17242144 17242144 44447776 44447776 54942160 178262508 178262508 161818980 53341488 152330284 152330284 958490637 958490637 593822370 643957329 747542929 747542929 956498381 956498381 858789223 615773001 615773001 601006520 82176456 403153602 479802728 479802728 134743208 477711804 477711804 408396574 215797452 215797452 272130216 302540416 302540416 355506240 355506240 195014298 52781620 19640336 54728832 54728832 52442160 55118208 411584048 411584048 10576896 275565952 278981696 278981696 273424642 273424642 4491648 12669312 37496577 284792354 284792354 973565758 973565758 580402701 600234225 865257705 865257705 831040501 464918344 1001729397 1001729397 395912826 395912826 437646224 437646224 118031508 58304720 133328712 133328712 99629200 99629200 32034560 87350704 99342600 132670336 132670336 58735264 109751360 109751360 203202132 203202132 140069512 139584132 71174668 23992784 23992784 121351184 252198400 252198400 173346340 173346340 138123456 138123456 1729028 8963136 8963136 17825920 18351648 18351648 285499224 285499224 77409864 77409864 36750096 80757344 80757344 390604968 390604968 373692570 373692570 329400864 613093056 667377322 667377322 622687341 579724094 633939177 633939177 1049103844 1049103844 423663078 423663078 429632613 925028608 1072744447 1072744447 789762233 552087505 1040405438 1040405438 1023415855 1023415855 805307264 206046208 72006952 72006952 76634560 101885480 101885480 75409160 77493208 77493208 69484808 69484808 38324224 411228036 411228036 313789266 171055174 792908092 1042469022 1042469022 725799212 643826073 522244230 549589185 549589185 321045302 920650738 920650738 944776130 944776130 271193368 743293504 743293504 707603223 750231557 750231557 949084429 1066627053 1066627053 700391109 700391109 957747350 957747350 675873412 693635758 693635758 536994827 300457168 321313074 321313074 311581232 283283810 63050544 278321504 317851936 317851936 59294880 62489920 62489920 61792560 59632752 59034576 167830900 381246768 397881178 515204846 515204846 213932676 446875214 446875214 346163776 404566022 404566022 1049088 937951814 937951814 440750475 256650132 720557468 720557468 295123554 295123554 60092434 26552928 554098817 554098817 729999989 729999989 583205408 679283729 728834997 728834997 200013041 200013041 194692756 189347376 162107076 162107076 159001600 561447701 591396657 591396657 459014287 1070349771 1070349771 455157124 455157124 819861782 865075827 865075827 662443171 628525787 746811786 878116932 878116932 776547541 642849472 134423040 54791168 54791168 71832768 232588872 383592880 406137606 406137606 341333664 195745140 195745140 350717516 350717516 185074194 195769716 885165316 885165316 285115008 279895362 671584084 671584084 997691563 997691563 977634385 977634385 814743669 1020971034 1020971034 45476747 414818838 414818838 975367582 1052786704 1052786704 618791217 637571552 637571552 97618360 189645388 189645388 341672456 341672456 209726700 334434670 446996560 446996560 768325740 768325740 281930946 554763792 588776497 588776497 873903173 873903173 337643846 337643846 210390082 411623410 469027830 469027830 1007440932 1007440932 421637954 421637954 99215264 86431746 316188226 316188226 285497322 665189326 665189326 966680536 966680536 139367427 15340992 40010752 41992272 543072215 543072215 405964880 671369463 671369463 411076108 25740962 923066156 923066156 605273894 1007630983 1007630983 621357240 575409297 869401437 869401437 823689258 941185142 941185142 997843534 997843534 553927810 553927810 564136105 597954041 830803177 830803177 598540400 452861554 532195169 532195169 964480935 964480935 948920372 948920372 950274375 960764178 960764178 414994806 413475414 253770016 504371292 504371292 208666888 235356808 235356808 138561664 138561664 29382512 289340640 313365876 463907280 463907280 343970978 347601738 347601738 287001960 374187274 374187274 843989165 843989165 184589707 139788384 575210816 575210816 374291610 381180378 381180378 371141504 371141504 384992288 424311150 1054535921 1054535921 544706777 472907022 504210718 717136904 717136904 836241906 1032103979 1032103979 1009811615 1009811615 973078618 973078618 813879766 813879766 673233043 508558494 642327705 642327705 95519025 788446477 788446477 543246281 1024753590 1049748063 1049748063 719960310 1033130834 1033130834 793232608 1042488766 1042488766 587835072 658543448 658543448 708678628 708678628 595778537 85160202 738534068 738534068 725753937 707127573 419801269 575023388 575023388 235221493 117906564 102959112 102959112 126845272 128262672 128262672 113193504 126927480 126927480 116703904 180979704 210513236 224444680 224444680 81315836 73435856 78398984 117080384 117080384 59387960 401552984 401552984 124918762 885923019 885923019 376470809 613478473 613478473 899125868 1008319239 1008319239 808789875 839385617 839385617 593179443 590422704 253888768 253888768 109408560 69554552 196084544 196084544 185209908 262408232 262408232 231257964 231257964 174670368 174670368 29959392 29959392 13682208 4793472 5309952 5309952 285213952 287835426 826425766 826425766 647114873 647114873 302515520 311476818 311476818 42620418 11146560 363080850 488346112 488346112 488951840 488951840 450838230 210314316 337237570 337237570 176326356 483526594 483526594 142083468 83384000 83384000 2352128 2130944 206283904 231366660 246594140 767624499 767624499 329794966 781821113 781821113 323576754 67117242 546614017 664326976 664326976 656499992 656499992 623262072 752419469 752419469 884998347 884998347 975528064 975528064 366237232 366237232 218339428 286536512 295962978 295962978 307177812 310851666 709570942 709570942 530789525 811918936 811918936 893799348 893799348 833449056 299911649 820003202 820003202 807438528 679609989 671613637 551296512 359231520 143147396 143147396 384456002 454395056 454395056 311719040 311719040 630550697 862881012 914144337 914144337 1033309762 1033309762 949877046 919286291 586272909 767957037 767957037 818948240 818948240 810171016 790635967 1056441646 1056441646 254575992 764649921 764649921 7984400 36700944 55845680 55845680 39135888 88602792 88602792 88459304 24159032 31218832 347589192 347589192 106061464 343177752 343177752 335809032 68421642 319819776 326633026 345456568 345456568 4854912 224040064 445131880 520431678 520431678 386984776 329591154 202920200 186258996 743052434 743052434 677752175 1002974628 1002974628 802947661 802947661 771295085 841779844 841779844 696853853 675608735 675608735 889839145 889839145 276932288 530683768 530683768 919246418 1058454983 1058454983 509853381 413763104 431088486 845714240 845714240 671650055 967020910 967020910 745756802 456066676 940757575 940757575 772049684 772049684 191524896 191524896 168007336 181085672 181085672 177419044 543382913 543382913 7241387 538010376 841169444 841169444 304223744 305661714 814388514 865650291 865650291 554287939 159609169 151068708 83919112 83919112 57930368 62002032 62002032 55575216 55575216 49840960 49840960 186270776 186270776 117186452 139071129 639245381 639245381 52250643 869396995 869396995 587629123 323962577 312605264 312605264 843687617 843687617 820776018 850455218 850455218 554534912 587729281 587729281 779912861 779912861 755084556 485306582 485306582 456055186 269505026 361375794 939903545 939903545 335971426 504440350 504440350 833728248 833728248 703427385 678373269 759987149 877370459 877370459 788804230 767903310 816472522 903982267 903982267 1033667194 1033667194 1059965287 1059965287 1064702960 1064702960 582661441 582661441 556857697 556857697 442739860 951757178 951757178 768747286 407556744 407556744 392856082 340975600 436794394 445170774 445170774 354475042 354475042 482905124 482905124 1033752904 1033752904 367198558 367198558 297846852 426116108 426116108 475387924 934716024 934716024 833163901 304862997 205495846 509874682 509874682 707249153 707249153 591107153 591107153 326901939 765316650 765316650 926361911 926361911 967128756 967128756 115609758 260127948 260127948 139143236 641802501 755218407 832606736 832606736 891110954 944891904 944891904 487359936 83647688 83647688 78308672 217902920 217902920 109786200 109786200 93924288 1063196448 1063196448 965772114 965772114 633618927 562085985 202639884 808840332 808840332 396361077 755634479 802718563 802718563 1047260329 1047260329 908225560 520924574 976009857 976009857 705451602 866382722 866382722 839017408 864849232 864849232 945099607 945099607 447014199 447014199 272293815 416206247 986710563 986710563 667152633 667152633 564919154 689440293 1018741622 1018741622 955908744 955908744 589206981 699958900 836521591 836521591 608503248 346619160 346619160 258389684 258389684 187280780 149931865 860924573 1032074605 1032074605 946059814 946059814 503703582 760414978 760414978 593942961 427883997 810851334 832513352 832513352 442804652 381031372 339172688 851983785 851983785 913719518 913719518 526288806 589334804 949170759 949170759 413433693 758975862 758975862 688420162 134746144 134874244 134874244 138941444 138941444 121644200 90251440 90251440 22544840 147915331 939599423 1065353343 1065353343 974131668 768378943 947684721 947684721 813966293 809239170 809239170 1066363328 1066363328 852132886 852132886 813897033 813897033 924095296 924095296 547624385 547624385 742083264 742083264 917413075 917413075 457371000 522398032 559431163 559431163 247414620 337185606 601340512 601340512 294154946 630970856 630970856 614550152 614550152 70212104 70212104 238272020 313317170 313317170 295716864 390340536 390340536 113464018 142958701 1058277951 1058277951 485270687 966924662 966924662 822425603 851628243 886832798 886832798 343939316 782899412 782899412 891700619 891700619 451561585 411490331 1002619344 1067585919 1067585919 1006780445 716445716 999035806 999035806 193860676 193860676 112477758 332974958 332974958 197133336 268122008 268122008 70015820 174965796 365486081 365486081 313855271 368384035 595339769 595490953 880668555 880668555 828936627 326688307 326688307 69489475 539312457 539312457 125837424 178262508 178262508 161818980 53341488 224658176 224658176 275007150 275007150 88393896 78552364 193257768 193257768 508446900 508446900 470075406 133544296 93199170 93199170 82176456 403153602 479802728 479802728 478676046 478676046 272172122 286484904 485356829 748261167 755835201 889292672 889292672 351520264 543339640 696455434 939753576 939753576 975806478 975806478 403233926 449272996 449272996 168652960 10576896 26027456 26027456 21881056 19203520 272944896 273957762 273957762 98574600 98574600 202778116 544672393 544672393 325169956 202449420 441716736 831040501 831040501 464918344 1001729397 1001729397 395912826 395912826 247995388 247995388 156763304 154827824 154827824 144438852 134384896 99629200 190995264 190995264 253788460 253788460 132670336 58735264 58735264 53988416 10046976 10046976 70255360 70255360 44191920 76974784 76974784 121351184 121351184 83952776 83952776 30808264 138123456 138123456 1729028 8963136 8963136 17825920 18351648 390747932 390747932 317461596 317461596 154206664 164991908 240965472 240965472 973147141 973147141 532602750 532602750 792293433 792293433 613093056 379624222 579724094 579724094 633939177 633939177 386998883 309009890 423663078 788624750 788624750 783594269 1072744447 1072744447 565441074 552087505 1040405438 1040405438 1023415855 1023415855 805307264 206046208 96097888 96097888 82147776 82147776 81338880 34867728 34867728 15567696 360992966 360992966 222746796 357435144 482394318 482394318 325194092 792908092 1042469022 1042469022 793428264 743086003 830472339 830472339 817889475 574619730 920650738 920650738 944776130 944776130 105257112 743293504 743293504 707603223 750231557 750231557 639864916 400738866 357081425 938075643 938075643 957747350 957747350 806422722 693635758 893544187 893544187 807001647 719505135 801261899 892096898 892096898 37929104 278321504 317851936 317851936 60909472 58345424 64889472 64889472 59632752 149156292 167830900 381246768 397881178 515204846 515204846 213932676 446875214 446875214 139635652 404566022 404566022 218320389 937951814 937951814 440750475 256650132 720557468 720557468 295123554 595673649 595673649 432824748 554098817 554098817 729999989 729999989 583205408 679283729 728834997 728834997 200013041 200013041 194692756 189347376 53069520 50480576 134445120 561447701 591396657 591396657 459014287 1070349771 1070349771 290531078 290531078 705172626 705172626 590611632 603201424 830213209 830213209 409613012 409613012 421955258 421955258 257308680 270611632 307637370 368393122 385292930 385292930 481691310 481691310 204617738 195745140 195745140 370738152 370738152 228074078 797891709 797891709 543791923 1051346274 1051346274 925660845 654468968 997691563 997691563 977634385 977634385 473251866 1020971034 1020971034 45476747 414818838 414818838 975367582 1052786704 1052786704 149329324 301105746 379669010 379669010 211322144 175235570 341672456 422623450 422623450 457311244 659030835 659030835 982191188 982191188 738535437 696523740 696523740 588776497 747635712 747635712 612761664 895813120 895813120 569601004 469027830 538508289 806728232 825060899 825060899 825044232 99215264 86431746 316188226 397544861 1064996847 1064996847 679386543 647477208 647477208 1037737268 1037737268 680400293 487984376 1049366239 1049366239 405964880 465698940 465698940 435212534 155206162 303071396 303071396 605273894 1007630983 1012006948 1012006948 707003068 869401437 869401437 823689258 823689258 522737023 997843534 997843534 223609615 95388384 564136105 597954041 830803177 830803177 519569658 519569658 452861554 415086501 964480935 964480935 948920372 948920372 950274375 960764178 960764178 235354140 341969000 341969000 504371292 504371292 484125132 517751530 520978236 520978236 128767836 29382512 34840672 318783936 318783936 211046906 319270648 347601738 673710740 673710740 911886673 911886673 465967575 116151458 141988288 978349392 978349392 575210816 983996691 983996691 640440005 640440005 618018388 384992288 410821198 410821198 117888722 86203558 472907022 504210718 717136904 717136904 836241906 1032103979 1032103979 1009811615 1009811615 748683597 411111430 411398150 516150272 516150272 508558494 708863525 708863525 115912161 987416116 987416116 683148258 683148258 902355497 902355497 719960310 667541117 793232608 793232608 639347457 45294617 587835072 587835072 839104514 839104514 303528595 181422450 83919448 217235884 744608645 744608645 92348520 167119112 205656204 681978812 681978812 618806372 110476408 94972928 126845272 126845272 113193504 113193504 126927480 126927480 110911504 167290056 167290056 224444680 224444680 96203456 105108904 105108904 117080384 126390480 352863314 352863314 347866346 122039088 352065760 809656082 918601947 918601947 612757508 899125868 1008319239 1008319239 808789875 440277396 440277396 136722692 136722692 253888768 253888768 145937220 254730356 254730356 188741872 240766972 262408232 262408232 231257964 231257964 678122132 678122132 536948816 704038724 704038724 589699377 589699377 585527809 941835790 941835790 419957888 618856896 647114873 647114873 609244064 600703683 600703683 553697313 553697313 658550968 658550968 489610542 489610542 450838230 450838230 210314316 337237570 337237570 134878212 483526594 483526594 474705704 289911982 280645256 152879436 230164332 230164332 285551426 285551426 449405414 449405414 420418101 687441646 687441646 363857321 471909634 471909634 641282592 641282592 656499992 656499992 734585860 869867769 869867769 182035085 454158016 454158016 344015436 249960924 96867056 439170244 439170244 66068050 183181680 837182006 837182006 777148328 777148328 530789525 339321590 436342806 893799348 893799348 872695296 872678275 337143171 135453889 679609989 679609989 671613637 884891488 903552291 903552291 412807188 212045854 212045854 210769174 474272798 474272798 630550697 862881012 914144337 914144337 1033309762 1033309762 949877046 306356236 516092046 516092046 503574622 408885398 810171016 810171016 510793493 270009858 217870345 226861096 764649921 764649921 226627692 113563828 55845680 55845680 39135888 88602792 88602792 88459304 60294768 79709298 102387826 102387826 37115664 37115664 335809032 373860746 373860746 357729952 375915626 375915626 1043237131 1043237131 822637090 822637090 808624875 569500641 473956845 406341574 297952111 297952111 738513226 738513226 677752175 1002974628 1002974628 802947661 802947661 771295085 841779844 841779844 756449842 675608735 868339824 868339824 314687571 117457320 530683768 571352941 571352941 121201168 134481924 134481924 673759365 673759365 596149268 1036882161 1036882161 967020910 967020910 745756802 462637946 526795290 648108376 772049684 772049684 239210652 239210652 173874832 181085672 181085672 177419044 543382913 543382913 878198953 878198953 841169444 841169444 559261472 559261472 298924036 406708448 406708448 553008436 553073601 553073601 537166768 224262668 224262668 62002032 90302464 90302464 232425956 232425956 170841028 186270776 186270776 117186452 167856332 639245381 722867476 722867476 869396995 869396995 673572676 699941957 730970885 730970885 843687617 843687617 808523249 808523249 304596897 554534912 554534912 38955908 182341716 755084556 755084556 457780450 457780450 750929048 750929048 361375794 361375794 335971426 335971426 302914578 37855440 37855440 10502288 27529392 48634320 542929068 757071405 757071405 570430464 290608141 260818658 88344744 103023232 1033667194 1033667194 769181229 661990329 661990329 580387216 377223066 377223066 373342362 564134840 651166425 651166425 391776321 826542432 826542432 392856082 392856082 472980728 472980728 507560094 507560094 197809258 142680368 482905124 482905124 1033752904 1033752904 463318365 360970444 360970444 649263073 758531038 922790464 922790464 1026426906 1026426906 763111904 822599604 822599604 509874682 224518572 224518572 900195736 900195736 294384738 577735155 939433298 995882741 995882741 733094837 621889423 696389733 696389733 690727197 690727197 258271285 755218407 832606736 832606736 77644104 77644104 18466112 4793472 11644288 22630080 22630080 174423797 758825425 758825425 178316777 664341468 1063196448 1063196448 1032345527 1032345527 570064734 90461640 90461640 239028413 239028413 396361077 755634479 802718563 802718563 1047260329 1047260329 676010317 676010317 976009857 976009857 375922176 485500882 880810114 880810114 864849232 864849232 945099607 945099607 447014199 447014199 311685172 416206247 986710563 986710563 452232518 564919154 564919154 689440293 1018741622 1018741622 955908744 1023695857 1023695857 699958900 836521591 836521591 350359145 589427216 641296641 641296641 606142217 153289728 304552370 929744768 929744768 913596174 913596174 322962720 322962720 2097408 256 19400704 19664160 19664160 145371779 819794686 819794686 402004986 367418200 339172688 90565032 366764450 526288806 526288806 456807900 456807900 236403228 234964792 254295828 254295828 463951404 477008052 477008052 454763556 423100950 322424180 130117952 90251440 90251440 22544840 147915331 939599423 1065353343 1065353343 974131668 415268896 415268896 35963904 35963904 809239170 809239170 720763202 778704285 852132886 852132886 813897033 813897033 924095296 924095296 547624385 547624385 742083264 742083264 917413075 917413075 375471579 522398032 522398032 360763882 86694056 281974218 281974218 278351946 294154946 630970856 630970856 213972452 213972452 70212104 70212104 238272020 238272020 152062624 295716864 423641648 441500310 441500310 303125126 1058277951 1058277951 315087560 966924662 966924662 822425603 851628243 851628243 343939316 343939316 159567972 98701800 300303370 442811032 442811032 411490331 705450125 705450125 1006780445 1006780445 716445716 999035806 999035806 285738018 193860676 112477758 332974958 506907214 511818528 511818528 268122008 70015820 372788854 372788854 365486081 370806294 678657608 678657608 595490953 880668555 880668555 828936627 326688307 326688307 69489475 539312457 539312457 128835680 31930848 45212496 107679936 107679936 224658176 224658176 224675972 224675972 88393896 33849776 128821608 128821608 34128912 38982288 394324768 394324768 385703130 77882394 100153032 211289088 220564268 429408288 478676046 478676046 445055424 445055424 485356829 748261167 755835201 889292672 889292672 351520264 756392304 756392304 939753576 939753576 975806478 975806478 1023020879 1023020879 763174886 155459664 77891784 167338252 167338252 29139936 209493792 478640396 478640396 273957762 210089740 210089740 202778116 202778116 325169956 325169956 202449420 362730576 362730576 359933984 342958986 357638826 357638826 252848782 496966720 496966720 440796880 156763304 154827824 154827824 144438852 158356656 191728160 191728160 190995264 253788460 253788460 239192896 122749160 122749160 79427176 79427176 109236312 109236312 70255360 44191920 76974784 119495128 119495128 140120424 140120424 159659048 221723436 221723436 202267718 202267718 470673438 470673438 174336080 174336080 390747932 390747932 353260952 341977222 440873088 440873088 315532690 284463444 973147141 973147141 532602750 532602750 792293433 792293433 647954446 983514711 983514711 697908998 840435219 840435219 271464370 773956288 773956288 788624750 788624750 783594269 34176339 308290594 308290594 302722944 321351088 321351088 320207488 86194824 17827328 58065392 96097888 96097888 82147776 82147776 81338880 8804544 14282176 306710426 360992966 360992966 222746796 348225858 482394318 482394318 325194092 302645280 318767154 793428264 793428264 743086003 830472339 830472339 817889475 574619730 299958946 412953040 412953040 38873910 0 341193800 341193800 410129796 410129796 354554720 354554720 116991960 357081425 938075643 938075643 921289961 813712522 806422722 474418282 893544187 893544187 877536423 991873569 991873569 892096898 892096898 344212404 974800196 974800196 946527909 193502320 193502320 64889472 684119120 735824113 954381104 954381104 449668300 449668300 504065520 504065520 157286952 51998508 9933568 1522176 207490085 218320389 218320389 777424009 777424009 616610500 739768845 739768845 264563097 11631144 595673649 595673649 432824748 380705785 596675248 596675248 812393024 812393024 444665733 66325488 66325488 8782512 7479808 6500736 12792000 18041472 18041472 134445120 134445120 26495072 868858711 868858711 1022362255 1022362255 380163412 307322894 705172626 705172626 306840597 603201424 830213209 830213209 953440094 953440094 880968483 869271364 257308680 270611632 307637370 368393122 385292930 385292930 481691310 481691310 275647532 469762158 469762158 370738152 370738152 461424456 797891709 797891709 543791923 1051346274 1051346274 925660845 588407398 588407398 676120330 716703573 716703573 646062860 884158797 884158797 408948823 272703618 712325148 712325148 236720136 67243548 264951768 301105746 958918567 963569870 963569870 999508707 999508707 771874845 529448909 457311244 659030835 692524474 1063392706 1063392706 738535437 696523740 696523740 396107914 747635712 747635712 646238288 984088749 984088749 569601004 442645249 550434607 806728232 825060899 825060899 825044232 23953576 151332900 174076732 397544861 1064996847 1064996847 679386543 647477208 647477208 1037737268 1037737268 680400293 490734322 1049366239 1049366239 510320203 1007588681 1007588681 435212534 341184402 322638643 322638643 102892819 539829523 1012006948 1012006948 931143988 647180889 133170168 456276261 522737023 522737023 550578048 550578048 483413759 95388384 612241616 612241616 609223305 542245888 542245888 519569658 173015700 383260358 805976394 805976394 738145891 561469589 456970038 456970038 469424702 469424702 386241268 341969000 150842688 372668252 484125132 517751530 520978236 520978236 128767836 108213144 108213144 318783936 318783936 82342450 68892168 71438472 673710740 673710740 911886673 911886673 757122252 727843879 727843879 978349392 978349392 881517786 983996691 1021628699 1021628699 982944388 982944388 859573162 915006555 915006555 376180122 376180122 348411376 610741537 610741537 265357952 630556764 630556764 755277885 755277885 100653041 411111430 783880982 995698146 995698146 168372296 248775929 708863525 708863525 176889880 987416116 987416116 683148258 683148258 902355497 902355497 667541117 667541117 641912985 629194992 629194992 547487785 540465816 645323673 839104514 839104514 639766809 181422450 838148592 838148592 744608645 744608645 92348520 167119112 205656204 681978812 681978812 618806372 110476408 73341832 62167120 68428520 68428520 67231752 707325485 707325485 127684392 167290056 167290056 90266143 957945496 997405623 997405623 514441849 1020953104 1020953104 592052843 601360115 601360115 537921242 352065760 809656082 918601947 918601947 587202609 587202609 587202609 926942264 926942264 458495107 299570642 510148702 510148702 530271786 530271786 276756098 319291458 319291458 188741872 337719590 337719590 293684520 293684520 245076550 678122132 678122132 536948816 704038724 704038724 589699377 589699377 585527809 941835790 941835790 419957888 419957888 292939976 609244064 609244064 600703683 600703683 553697313 553697313 658550968 658550968 489610542 489610542 34812432 316419080 316419080 219291184 219291184 223946292 346763590 474705704 474705704 289911982 280645256 152879436 230164332 230164332 285551426 285551426 449405414 946069344 965749095 965749095 687441646 363857321 471909634 537423905 641282592 641282592 478485110 1032915366 1032915366 869867769 869867769 621888115 621888115 1013506764 1013506764 466679536 466679536 439170244 439170244 270803008 270803008 837182006 837182006 777148328 777148328 762929847 792008223 792008223 438263063 872695296 872695296 872678275 337143171 70204482 16190720 7735808 565625856 884891488 903552291 903552291 412807188 212045854 212045854 210769174 474272798 474272798 206260200 858496080 858496080 881326600 908136742 1019346023 1019346023 878913957 528625842 563786221 563786221 806617664 806617664 742865865 742865865 481635150 138558150 71495940 189188312 226627692 226627692 696250112 696250112 570499328 589291201 589291201 598963184 598963184 579924896 79709298 102387826 102387826 67294216 67293192 108675338 373860746 373860746 387559984 387559984 375915626 1043237131 1043237131 822637090 822637090 808624875 569500641 473956845 406341574 316159608 297952111 876905130 876905130 512232626 512232626 110676656 110676656 409741600 409741600 225739052 756449842 756449842 414224677 868339824 868339824 314687571 177540300 177540300 571352941 571352941 155453472 134481924 381808867 704850448 839824550 839824550 1036882161 1036882161 449104258 449104258 85984042 730099080 730099080 74287221 221754032 221754032 239210652 239210652 173874832 173874832 159092016 233900364 233900364 292247968 878198953 878198953 538968321 554135715 559261472 559261472 405116036 406708448 406708448 553008436 553073601 553073601 537166768 224262668 224262668 139463508 139463508 90302464 232425956 232425956 170841028 175747048 210363752 210363752 167856332 209444120 722867476 722867476 162047040 138184228 673572676 699941957 730970885 730970885 571525909 736918516 736918516 704620785 161277621 53341488 34900256 152611076 182341716 345550856 679594435 679594435 457780450 1017553165 1017553165 343003706 620263377 951389095 951389095 528496764 528496764 614123136 630855273 707399893 707399893 948495831 948495831 655569465 570430464 415043749 260818658 88344744 103023232 140094392 203214348 591465983 661990329 661990329 555652721 555652721 35651088 3144960 564134840 651166425 651166425 391776321 826542432 826542432 370557720 341328464 472980728 472980728 507560094 507560094 197809258 484508122 484508122 97070532 773923101 773923101 463318365 360970444 360970444 649263073 806494348 922790464 922790464 1026426906 1026426906 839910063 822599604 822599604 105599434 826767457 1056868639 1056868639 900195736 299155614 736210294 939433298 995882741 995882741 733094837 621889423 696389733 696389733 690727197 690727197 244502116 244502116 135798556 135798556 77644104 77644104 43266020 191440308 191440308 159984020 66460832 174423797 758825425 758825425 243864784 664341468 664341468 879122530 1032345527 1032345527 716702781 716702781 781173060 781173060 624349655 713166933 713166933 686481446 647622418 647622418 618803566 676010317 676010317 581021638 581021638 470185753 575072814 880810114 880810114 604901642 432418071 439150966 439150966 272555778 422636964 422636964 237952530 483993146 483993146 407642730 272765058 272765058 131047464 952574395 952574395 518263220 1023695857 1023695857 235818396 909396879 909396879 873905434 590179640 641296641 739169809 739169809 690013606 690013606 929744768 929744768 913596174 913596174 322962720 322962720 352919808 352919808 958793058 987967959 987967959 145371779 819794686 819794686 402004986 367418200 364514168 364514168 366764450 366764450 64293270 456807900 456807900 230287212 230180618 96495552 230822124 463951404 482306230 482306230 454763556 423100950 322424180 130117952 103740416 103740416 36261896 146916034 146916034 38546106 50661686 97605810 97605810 23071680 40163920 40163920 84456070 492303662 492303662 421187680 421187680 543015044 543015044 388304129 386110304 386110304 87165280 80009568 711592240 711592240 751038669 751038669 449312982 461412478 461412478 843208117 843208117 281974218 356517946 392203328 392203328 898805858 901198625 901198625 539559552 14341824 257104552 257104552 357724894 357724894 149168192 423641648 441500310 441500310 436903096 367346570 342927850 342927850 58984560 256946836 256946836 729838200 729838200 228638860 228638860 380666198 380666198 263210826 442811032 442811032 204023052 204023052 77709832 68215112 68215112 355074560 355074560 286790954 285738018 420632132 420632132 98211442 506907214 511818528 511818528 178783572 122184780 372788854 372788854 196454888 370806294 678657608 678657608 570633376 570633376 310332306 331432002 331432002 52428864 60817744 148911504 148911504 134889688 205902720 205902720 249786184 249786184 102540376 386773608 420178308 420178308 66061296 49840304 106033296 106616472 106616472 380891994 394324768 394324768 385703130 377502802 378531152 378531152 361574496 220564268 310483440 310483440 445055424 485887428 516691078 520423244 576876066 607151680 627269736 627269736 756392304 756392304 671232040 967213543 967213543 893932397 1023020879 1023020879 922877983 922877983 201461772 201461772 201461772 511761662 511761662 478640396 940510410 940510410 962528515 962528515 161576584 557973749 557973749 466763872 435553174 516372210 832034935 832034935 328389234 739344953 739344953 252848782 496966720 496966720 440796880 193146296 193146296 179755860 179755860 158356656 193110852 193110852 163883764 242335992 242335992 239192896 122749160 190171928 249409052 249409052 189208800 189208800 105171096 63986232 42078288 119495128 119495128 202898912 202898912 208873900 225917868 225917868 532733180 532733180 470673438 470673438 359338486 195622178 157386112 353260952 353260952 341977222 440873088 440873088 315532690 284463444 172439700 227848500 227848500 713116812 713116812 432673057 946969094 983514711 983514711 697908998 931226684 931226684 292961191 903321951 903321951 1065217964 1065217964 590542195 704940423 833750946 833750946 665868923 617048248 321351088 320207488 35393040 355737352 355737352 335841610 343149456 343149456 43531648 43531648 37052672 170934714 306710426 306710426 281287900 216719442 348225858 348225858 289343780 536369340 725795120 725795120 654442536 654442536 606245431 572555956 408210054 443826448 443826448 299958946 299958946 88343760 407171904 407171904 663352220 663352220 410129796 878887836 994468004 994468004 342556826 296015314 296015314 820536354 820536354 745121076 529079145 474418282 474418282 877536423 877536423 991873569 991873569 845546896 489736215 437684272 974800196 974800196 946527909 193502320 193502320 53530976 684119120 735824113 954381104 958678104 958678104 518073072 266937502 391381424 391381424 244268124 244268124 171130716 167981076 59185700 81426528 606081750 964415503 964415503 803024637 803024637 773642444 930591541 930591541 748963103 748963103 633584163 633584163 824373653 824373653 812393024 992018929 992018929 716853653 140500737 205577476 205577476 189682296 46195792 65028208 103303489 647710825 647710825 868858711 868858711 1022362255 1022362255 380163412 307322894 540412720 556664995 828638259 828638259 392302036 578816791 953440094 953440094 880968483 869271364 41619926 0 1050624 1313280 70720080 112536408 112536408 396697944 396697944 469762158 469762158 270860400 270860400 461424456 461424456 623016170 740584859 740584859 809811280 809811280 588407398 588407398 676120330 716703573 716703573 646062860 884158797 884158797 408948823 272703618 712325148 712325148 644252545 559158268 264951768 264951768 958918567 963569870 963569870 999508707 999508707 771874845 529448909 396506128 519449598 692524474 1063392706 1063392706 989211131 827523863 815269443 969122065 969122065 633692324 646238288 984088749 984088749 600325208 442645249 550434607 550434607 273943170 694233921 694233921 23953576 151332900 245742436 245742436 236136592 7789440 21678340 134651424 176025492 176025492 163746048 163746048 490734322 490734322 463679862 510320203 1007588681 1027739823 1027739823 962599958 962599958 779687861 779687861 539829523 587530292 931143988 931143988 647180889 133170168 595665457 677431053 677431053 550578048 550578048 483413759 75175624 612241616 906632572 906632572 599004692 599004692 218104897 211161740 383260358 805976394 805976394 738145891 561469589 456970038 456970038 469424702 469424702 386241268 296887460 150842688 372668252 372668252 148244132 316805600 485495026 485495026 108213144 108213144 344646150 449029840 449029840 391182682 383645240 383645240 303305624 337382922 874126410 874126410 925637993 925637993 236983516 881517786 881517786 942294787 1021628699 1021628699 982944388 982944388 933010712 933010712 915006555 376180122 562789496 637847577 663724617 663724617 847905801 847905801 630556764 755277885 755277885 130828949 100653041 783880982 995698146 995698146 168372296 75834388 9514184 5243520 176889880 176889880 100742228 9502724 108078598 385427418 385427418 310651356 99881944 91227048 629194992 629194992 547487785 894697937 894697937 645323673 643280921 672260636 672260636 838148592 838148592 552413404 917182681 917182681 851659856 851659856 171442320 171442320 6581248 73341832 73341832 28170176 68428520 241271429 556330369 707325485 707325485 127684392 220246528 220246528 92200872 957945496 997405623 997405623 514441849 1020953104 1020953104 592052843 601360115 601360115 537921242 765460845 765460845 834352995 834352995 587202609 587202609 587202609 926942264 926942264 458495107 299570642 510148702 510148702 530271786 530271786 276756098 319291458 319291458 276697216 337719590 337719590 293684520 293684520 245076550 245076550 163092064 190441140 190441140 140009520 58003184 58003184 55612112 55612112 380819378 380819378 96559304 292939976 344271402 344271402 308676512 308676512 60743280 362189936 365312232 365312232 256221448 245559772 343959578 407071766 407071766 219291184 219291184 223946292 248640192 248640192 220514604 220514604 135826984 86957352 78215264 76207176 73887176 12946240 1814912 946069344 965749095 965749095 839254584 378280467 2754176 537423905 537423905 357161672 614976330 1032915366 1032915366 808370212 397859706 621888115 621888115 1013506764 1013506764 889988709 488377902 704645843 704645843 1000343985 1000343985 497837120 606986726 606986726 1046101400 1046101400 1037784165 808616960 808616960 874103555 874103555 840627731 395018019 110236434 61530224 61530224 10823888 11570816 11570816 81776296 100002792 133156888 133156888 109947472 51853376 329413372 329413372 858496080 858496080 547817759 908136742 1019346023 1019346023 878913957 528625842 844958738 844958738 806617664 872815773 872815773 742865865 581112144 647377752 647377752 675423181 675423181 153677188 696250112 696250112 570499328 589291201 589291201 598963184 598963184 579924896 31503488 67145728 67294216 67294216 126811152 126811152 119712776 119712776 387559984 387559984 67190800 119309832 219254912 223605420 448938532 511778910 511778910 438928002 438928002 869474851 926577417 926577417 876905130 512232626 512232626 110676656 110676656 455418331 637601655 637601655 954538081 954538081 127733712 127733712 89870430 1062457442 1062457442 529321086 529321086 331401304 398717636 398717636 381808867 704850448 839824550 839824550 819369363 848832093 848832093 1060123776 1060123776 730099080 730099080 310811424 310811424 231850178 260298868 260298868 102900048 140552748 146008844 233900364 233900364 292247968 292247968 272001314 286327296 286327296 275305472 299131488 405116036 405116036 281296896 281296896 166008416 156549668 156549668 160243072 160243072 181935440 185123892 185123892 85661676 162800912 163750768 175747048 210363752 210363752 111165804 209444120 209444120 162047040 162047040 8542564 8388672 8388672 64 38273536 38273536 728764736 728764736 704620785 161277621 135653920 135653920 152611076 563135073 563135073 679594435 690485541 1030723597 1030723597 1017553165 711383445 711383445 951389095 951389095 528496764 528496764 614123136 630855273 707399893 707399893 948495831 948495831 737798133 1043206896 1056857537 1056857537 481954639 481297230 758045700 1071380191 1071380191 869423555 869423555 639574905 555652721 35651088 3144960 67699808 92348520 92348520 76096584 92802256 318834128 318834128 86246480 124706232 206445880 206445880 190841268 197508162 484508122 484508122 97070532 85657164 223525800 295803240 336066570 336066570 954087524 954087524 910363221 910363221 1007148896 1007148896 839910063 508626131 490918521 490918521 982598308 1056868639 1056868639 576444642 518461100 736210294 736210294 734749425 568529328 1032755366 1032755366 111452432 111452432 567272649 810642120 810642120 691382991 672832637 672832637 512906782 467665968 467665968 191440308 191440308 159984020 93862016 265903252 559853816 559853816 951662238 951662238 696265072 696265072 936642496 936642496 716702781 767958034 781173060 781173060 633889210 713166933 713166933 690689425 749966916 749966916 674773849 674773849 688715540 688715540 581021638 470185753 575072814 575072814 604901642 1065219038 1065219038 723945542 723945542 269710656 422636964 422636964 23430928 10633216 76845888 459202228 459202228 450812742 131047464 427916538 427916538 919869244 919869244 911624515 911624515 909396879 909396879 873905434 590179640 590179640 773726737 773726737 690013606 690013606 1037621569 1037621569 942244134 1014496143 1014496143 888994542 358403754 352919808 958793058 987967959 987967959 20132640 25228344 109786200 351844968 351844968 364514168 364514168 356548692 483965166 500643550 500643550 675590287 675590287 289143662 823586543 823586543 1048824269 1048824269 744869154 791091408 791091408 205676676 182484368 182484368 145490972 235761364 235761364 232295656 38546106 50661686 111423800 111423800 23071680 61020272 61020272 336667936 336667936 221004714 421187680 421187680 541092096 541092096 82628040 82628040 3850752 2757888 16439232 711592240 711592240 975489291 975489291 614648273 614648273 559418551 843208117 843208117 748523349 748523349 392203328 392203328 898805858 901198625 901198625 539559552 54212400 257104552 257104552 357724894 357724894 159790212 340069168 340069168 436903096 436903096 1003261623 1003261623 382138481 1049024607 1049024607 982891231 729838200 729838200 346559742 343312360 399019872 399019872 409790234 912156170 912156170 724751157 724751157 536123582 989223089 989223089 923795552 923795552 585895472 381158674 420632132 420632132 335747584 331223592 210273696 210273696 178783572 122184780 51310432 64673520 64673520 162576756 162576756 545395680 570633376 570633376 310332306 331432002 331432002 55796976 58233472 148911504 148911504 134889688 205902720 205902720 249786184 249786184 80436128 386773608 420178308 420178308 66061296 49840304 106033296 106616472 106616472 380891994 380891994 339923082 377502802 377502802 378531152 378531152 361574496 100798488 144657136 340050348 371199816 485887428 516691078 516691078 722438106 722438106 627269736 627269736 805495560 805495560 671232040 967213543 967213543 287336653 889246390 1041406612 1062633641 1062633641 201461772 201461772 201461772 511761662 511761662 4848684 940510410 940510410 962528515 962528515 941316742 1059117106 1059117106 740694285 858804245 858804245 832034935 832034935 328389234 739344953 739344953 781915769 797713448 797713448 130622712 513606926 513606926 328465404 505844266 505844266 524625946 524625946 367075818 528875752 528875752 335618058 268501000 190171928 249409052 249409052 189208800 189208800 105171096 69784256 69784256 57922928 57922928 202898912 202898912 208873900 225917868 225917868 532733180 532733180 337880608 506348768 506348768 398274426 398274426 345460574 460450566 460450566 119816858 19923712 7676160 137774993 137774993 914227737 977517187 977517187 713116812 943143510 946969094 1045253150 1045253150 852263286 931226684 931226684 292961191 903321951 903321951 1065217964 1065217964 590542195 704940423 833750946 833750946 665868923 617048248 286267170 286267170 35393040 355737352 355737352 335841610 343149456 343149456 132417960 132184368 197298326 197298326 630260307 805356041 866247714 866247714 829263563 829263563 289343780 536369340 840125496 840125496 923740202 923740202 572555956 659292570 659292570 1005127995 1005127995 235249670 367126926 1014554826 1014554826 407171904 663352220 998996916 998996916 878887836 994468004 994468004 448664604 345903117 904319259 904319259 573364642 388311354 488567026 507970124 507970124 404227590 404227590 478319298 845546896 845546896 695341989 437684272 548552624 603580401 603580401 582542817 548705093 537775780 537775780 143802021 25804998 958678104 958678104 518073072 500545358 391381424 391381424 244268124 244268124 171130716 240733752 240733752 81426528 606081750 964415503 964415503 803024637 803024637 773642444 930591541 930591541 748963103 748963103 633584163 633584163 824373653 824373653 309331396 992018929 992018929 716853653 311104788 410000910 504238862 504238862 441909254 509661720 509661720 647710825 647710825 611806897 537015344 437700964 437700964 908017179 1027159208 1027159208 994578818 994578818 828638259 683546200 683546200 537730817 778057061 894311770 894311770 285476910 273064196 302895354 302895354 489475374 489475374 386107386 396697944 396697944 504535152 504535152 175768386 100671488 373006739 878794522 878794522 740584859 740584859 809811280 809811280 402570210 701689922 701689922 335633127 551860249 847761472 847761472 282385352 282385352 115493250 612666008 644252545 644252545 559158268 175219532 356739846 356739846 410596990 410596990 533051612 533051612 377005374 377005374 396506128 396506128 312546384 466321870 989211131 989211131 827523863 815269443 969122065 969122065 714443365 633692324 659632784 659632784 655939769 655939769 14059065 272892416 273943170 273943170 84246784 75159840 94700044 245742436 363855949 1058439279 1058439279 739414627 269504778 144864629 512997402 512997402 262389914 881195226 1000415607 1000415607 579685261 223483842 1027739823 1027739823 962599958 962599958 779687861 779687861 146422976 587530292 742404135 742404135 520159403 975507994 975507994 923930683 923930683 386400865 936154624 936154624 850921299 853546794 906632572 906632572 599004692 599004692 365566308 285347874 948851847 948851847 631173920 420369698 828771566 828771566 691923912 691923912 291385196 94737318 106176540 339685080 339685080 176528662 311827026 316805600 485495026 485495026 514048078 514048078 344646150 449029840 449029840 391182682 384372114 652849111 861718259 861718259 874126410 874126410 925637993 925637993 210426713 161101112 847418390 942294787 984838620 984838620 204207372 354469674 933010712 933010712 319445906 319445906 582746600 637847577 663724617 663724617 847905801 847905801 580701255 604810821 604810821 555171424 747899469 747899469 319813247 362732610 463206954 463206954 736209317 744318989 799490628 799490628 764458816 566280417 108078598 812143888 812143888 310651356 277822530 816937986 816937986 612384768 753275588 894697937 894697937 397675386 598811315 672260636 672260636 576725775 552413404 552413404 917182681 917182681 851659856 851659856 73136000 73136000 42074184 24014464 76190600 76190600 10868640 241271429 556330369 556330369 652238936 831619897 831619897 220246528 92200872 203587240 203587240 409621606 974803728 974803728 304742850 307249544 307249544 1009799299 1009799299 944935431 765460845 834352995 834352995 637546754 908275995 908275995 1027625272 1027625272 356516355 355467656 97517696 106584112 106584112 85199400 133208256 363823976 363823976 276697216 272371458 72032130 67707912 83984480 83984480 2097408 56656176 56656176 50348464 52271968 58003184 58003184 27685952 53012872 73723032 79732864 96559304 96559304 342625418 342625418 284803458 353738802 353738802 362189936 365312232 365312232 314752030 314752030 343959578 407071766 407071766 491430982 491430982 105419932 248640192 402766068 423760038 428024000 428024000 79809952 77743104 76207176 500382606 500382606 864026739 1066238217 1066238217 839254584 839254584 378280467 116546768 116546768 357161672 357161672 614976330 614976330 537680265 330749240 397859706 397859706 312613656 380321802 889988709 889988709 488377902 704645843 704645843 1000343985 1000343985 497837120 497837120 427132683 1046101400 1046101400 1037784165 808616960 808616960 874103555 874103555 840627731 556051362 556051362 547053952 61530224 10823888 7374336 562497505 562497505 100002792 559887825 559887825 109947472 275634082 329413372 676660053 676660053 328167944 973104285 973104285 839943326 850300993 850300993 866745796 866745796 855716086 855716086 927729709 927729709 489817917 581112144 783733340 783733340 688144389 688144389 629935585 629935585 151594884 577931936 589673393 589673393 33738768 39465952 124380600 124380600 67212786 67212786 51950528 126811152 283640026 283640026 110942040 110942040 294764992 294764992 369136314 369136314 400969148 462209238 501055092 501055092 438928002 438928002 869474851 926577417 926577417 856302776 702639307 702639307 664281608 911488131 911488131 637601655 795351960 954538081 954538081 879311406 879311406 877396777 1062457442 1062457442 529321086 529321086 549773768 1072561769 1072561769 827420336 827420336 805885568 819369363 819369363 848832093 848832093 1060123776 1060123776 664980872 664980872 310811424 310811424 231850178 260298868 260298868 256248920 256248920 117833832 117833832 86278504 86278504 272001314 272001314 286327296 286327296 275305472 299131488 299368544 299368544 281296896 281296896 134224000 134224000 11966528 13382000 62689472 181935440 185123892 185123892 34619456 42062272 163750768 163750768 160442692 27652496 125330853 763954341 763954341 766202953 792548884 792548884 157616484 157616484 150961316 148233812 182167316 681628592 681628592 208938401 532077438 783626438 783626438 818268294 818268294 563135073 619029098 821558211 1045192257 1045192257 954460480 711383445 711383445 605363812 650454112 650454112 229429052 668946272 668946272 151431344 85025344 628122716 737798133 815846489 1043206896 1056857537 1056857537 940911111 481297230 758045700 1071380191 1071380191 869423555 869423555 639574905 361109610 361109610 268834818 906090179 906090179 905307354 881970179 881970179 570374954 318834128 275824944 124706232 194950192 194950192 144042564 471546998 471546998 447351140 338264358 338264358 295781164 721336860 896656299 896656299 954087524 990838954 990838954 105714759 965024350 965024350 495067191 260735167 1060143296 1072743423 1072743423 982598308 876720725 518461100 518461100 254435804 734749425 734749425 577550336 1032755366 1032755366 758273527 758273527 714480213 810642120 810642120 1033307692 1033307692 1020006705 869449763 998263840 998263840 461377128 77156064 93862016 93862016 265903252 559853816 770512540 951662238 951662238 696265072 696265072 1069428724 1069428724 553127755 767958034 767958034 471965958 633889210 633889210 690689425 995208121 995208121 749966916 929246528 956407735 956407735 702913697 702913697 250650843 113455320 219220856 219220856 1065219038 1065219038 1005395910 1005395910 447797285 269710656 173954740 213009954 490733742 490733742 459202228 459202228 450812742 131984240 830769703 830769703 919869244 919869244 911624515 911624515 874961282 874961282 388193594 388193594 353849641 773726737 773726737 604045450 339746825 1037621569 1037621569 942244134 1014496143 1014496143 888994542 558417057 749246054 935990523 935990523 932886635 902416107 902416107 699754638 291545602 316730536 397225338 397225338 455060572 483965166 500643550 562594667 765629246 765629246 289143662 823586543 823586543 1048824269 1048824269 744869154 791091408 791091408 205676676 182484368 772186296 772186296 777297925 777297925 609045564 115648712 46526312 111423800 111423800 17054400 235996284 497582944 497582944 336667936 221004714 495526818 495526818 541092096 872454960 927559483 927559483 370311081 2757888 16439232 247497404 633754672 975489291 975489291 614648273 614648273 571771232 559418551 603029186 748523349 840503829 840503829 572928432 954394118 954394118 943842245 541974352 197937376 223526672 223526672 241520804 241520804 219452800 251989712 251989712 188798112 206512797 1003261623 1003261623 382138481 1049024607 1049024607 982891231 970879975 811138943 804525956 578457593 636749412 745278861 745278861 912156170 912156170 724751157 724751157 536123582 989223089 989223089 923795552 923795552 585895472 1015829761 1015829761 389271922 735215501 735215501 109823772 102422264 264646508 714807341 714807341 195889348 799681929 799681929 224278252 545395680 545395680 848683856 848683856 336455195 542106634 542106634 86657315 58233472 146960440 309473382 309473382 470683840 470683840 113313264 113313264 122720392 122720392 382242584 382242584 311217010 128203376 128203376 46308928 46308928 337662336 339923082 384946290 384946290 327345114 327345114 33620264 100798488 144657136 340050348 340050348 215296008 286338307 349527591 722438106 722438106 544810728 642909272 904139819 904139819 625318336 625318336 205558917 428799543 889246390 1041406612 1062633641 1062633641 188797980 516731474 516731474 313367708 313367708 469260106 469260106 263666556 263666556 941316742 941316742 1059117106 1059117106 740694285 858804245 858804245 345165314 345165314 269121578 269121578 680671797 781915769 797713448 797713448 697507976 520296688 513606926 328465404 505844266 505844266 524625946 524625946 367075818 528875752 528875752 335618058 268501000 0 22392960 22392960 111153416 111153416 47054912 128110224 128110224 123654104 100146672 131199448 131199448 121021168 135366152 135366152 315221202 315221202 15353594 506348768 506348768 398274426 398274426 345460574 460450566 460450566 426643518 509400742 509400742 273933844 137774993 914227737 977517187 977517187 506074398 943143510 943143510 1045253150 1045253150 852263286 852263286 414372678 414372678 112776798 10439168 2848096 887173160 887173160 813295491 647627402 388109515 359941002 359941002 57870976 53480080 53480080 39060272 39060272 0 95308288 132417960 132417960 132184368 254347328 254347328 630260307 805356041 866247714 968933607 968933607 829263563 248210350 347727690 840125496 840125496 923740202 923740202 933497211 933497211 906503539 1005127995 1005127995 760742016 760742016 1049657728 1049657728 372536578 372536578 998996916 998996916 640837614 646134935 960369471 960369471 911291096 911291096 982567007 982567007 260081326 1040512731 1040512731 507970124 529605246 529605246 520424000 788922998 788922998 963023273 963023273 627202471 700882997 700882997 582542817 548705093 537775780 537775780 159488288 159488288 32068352 288390272 500545358 500545358 483152832 297668582 263014818 193267488 120171124 244386852 244386852 265409684 666821336 666821336 213261132 430163266 460443822 460443822 872648324 872648324 517281951 836474058 1029388027 1029388027 969804310 969804310 571277578 806954499 1028195021 1028195021 1010827502 410000910 504238862 907076057 907076057 651434192 883212816 883212816 37897640 166071825 736761333 1042962005 1046490358 1046490358 1027159208 1042370458 1042370458 994578818 690361525 683546200 683546200 537730817 778057061 894311770 894311770 285476910 273064196 302895354 302895354 489475374 489475374 386107386 386107386 300712208 504535152 504535152 402784450 402784450 373006739 878794522 878794522 877134987 877134987 900665564 944767623 944767623 965806178 995433143 995433143 1033337351 1033337351 847761472 510478926 343094154 513678942 513678942 443206798 419192790 238102800 238102800 356739846 620081241 620081241 1060280232 1060280232 533051612 599239506 690147621 690147621 394168069 671551630 973222150 973222150 385925178 239165606 727750032 727750032 714443365 714443365 356516064 659632784 659632784 655939769 655939769 509377096 417730116 742764492 742764492 620164160 620164160 114433366 477892494 477892494 1058439279 1058439279 739414627 394845050 394845050 512997402 512997402 262389914 881195226 1000415607 1000415607 579685261 205387159 85274152 85274152 5318664 435824392 435824392 412299846 546910146 546910146 779569602 779569602 520159403 975507994 975507994 923930683 923930683 718560068 936154624 936154624 850921299 853546794 853546794 631539168 171706658 516824544 516824544 293085985 948851847 948851847 631173920 420369698 828771566 828771566 691923912 691923912 671265812 683960793 683960793 339685080 339685080 851575429 851575429 707927638 545005329 542900484 514048078 514048078 283515330 340792538 340792538 384372114 384372114 652849111 861718259 861718259 740987664 740987664 718291213 702681573 555745569 555745569 207093892 207093892 545559070 845253150 985405384 985405384 365694313 850486386 850486386 574841378 585685794 870194931 870194931 362766801 449317584 449317584 47449302 183822278 311479390 555171424 747899469 747899469 319813247 491443846 491443846 463206954 736209317 744318989 799490628 799490628 764458816 566280417 47306661 812143888 812143888 428090416 910953470 910953470 816937986 546615879 753275588 980650864 980650864 636618898 636618898 432218690 141558144 141558144 706805836 706805836 340266073 380110170 380110170 310462224 68198992 42074184 42074184 9605248 76190600 76190600 17187752 26237160 87093440 87093440 652238936 831619897 831619897 417653250 643939890 643939890 435560210 845115192 974803728 974803728 304742850 775053732 824390585 1009799299 1009799299 944935431 271581244 102969624 102969624 637546754 908275995 908275995 1027625272 1027625272 356516355 355467656 348919312 348919312 356100618 356100618 327628914 363823976 363823976 270771784 357818604 357818604 326883000 326883000 247567814 247567814 147011284 200395412 200395412 169936080 28052832 62263632 62263632 53012872 73723032 73723032 79917288 79917288 342625418 342625418 284803458 353738802 385436512 385802202 385802202 371115466 441342080 441342080 96710174 56461024 219016236 491430982 491430982 344432654 293615008 503864434 503864434 428024000 428024000 79809952 67602624 224844204 500382606 500382606 864026739 1066238217 1066238217 829155404 829155404 811124355 811124355 116546768 159907940 256208308 256208308 345992344 363614386 363614386 278449666 85492554 309161376 309161376 113314088 86253784 172232072 220563972 562307950 601886931 818938563 1013191621 1059262396 1059262396 626834999 210435708 158784420 443373688 730211207 873805824 873805824 544343489 556051362 556051362 547053952 15340608 15340608 7374336 562497505 562497505 64641744 559887825 559887825 57741234 304627506 313203250 676660053 676660053 460311056 973104285 973104285 839943326 850300993 850300993 866745796 866745796 855716086 855716086 927729709 927729709 880677647 913456412 913456412 783733340 688144389 688144389 629935585 629935585 151594884 577931936 589673393 610367689 616900809 617679360 617679360 124380600 303703448 303703448 51950528 45249232 283640026 283640026 590405721 590405721 385975112 879605275 879605275 369654914 400969148 631903252 631903252 817889564 1046488003 1046488003 806965802 50886506 863422081 863422081 702639307 702639307 664281608 911488131 911488131 633494730 795351960 937782393 937782393 879311406 879311406 1043473468 1043473468 999169143 1048702866 1048702866 549773768 1072561769 1072561769 827420336 827420336 806127746 806127746 452141766 452141766 589860550 814599767 860691416 1013970026 1013970026 402017076 144966912 144966912 128789880 59245680 256248920 256248920 189533248 117833832 149740960 149740960 81791752 138216208 142443824 142443824 155543728 190849460 190849460 196321972 199112660 199112660 158829540 158829540 142909648 135829856 135829856 193089240 242036124 242036124 134241780 199250056 199250056 61123744 61123744 223498352 223498352 763954341 763954341 766202953 792548884 792548884 443338134 513279582 583653064 986357845 1020274382 1020274382 992113624 992113624 532077438 783626438 783626438 818268294 818268294 689050149 582712726 821558211 1045192257 1045192257 628881331 526114745 811327800 811327800 650454112 650454112 603534016 668946272 668946272 29146873 80290816 641413488 646107225 815846489 815846489 751421315 940911111 940911111 306194311 425416778 486372748 486372748 358562222 291510754 539887905 539887905 621532225 621532225 906090179 906090179 905307354 881970179 881970179 570374954 275824944 345842472 345842472 296488290 194950192 337117624 471546998 471546998 447351140 338264358 511926884 511926884 721336860 896656299 896656299 747755635 990838954 990838954 105714759 965024350 965024350 517547188 517547188 1060143296 1072743423 1072743423 20108064 20108064 62329858 62329858 6929664 21705888 830103968 1001456385 1008207702 1008207702 758273527 758273527 714480213 714480213 452753210 1033307692 1033307692 1020006705 869449763 998263840 998263840 461377128 221326740 189336364 255359396 255359396 215582869 770512540 770512540 269683822 629410073 1034159472 1069428724 1069428724 935797472 486872406 279134048 297800328 933468668 933468668 825046874 995208121 1041810975 1041810975 929246528 956407735 956407735 702913697 702913697 471376014 236082710 599851168 599851168 1024984623 1024984623 1005395910 1005395910 997764210 997764210 173954740 213009954 490733742 490733742 408662946 294261024 171491972 131984240 830769703 830769703 415048364 415048364 342101056 158338692 538476736 551077569 551077569 53135920 53135920 640832012 640832012 270002690 459784110 459784110 659833753 659833753 1008391695 1021575807 1064904639 1064904639 749246054 935990523 935990523 932886635 902416107 902416107 699754638 291545602 316730536 397225338 397225338 455060572 455060572 354018858 562594667 765629246 881452107 881452107 363471211 285446144 285446144 342737296 938190234 938190234 690333901 279786784 455791926 772186296 772186296 777297925 777297925 609045564 226509380 226509380 396607986 509776568 509776568 536084976 536084976 497582944 347233412 347233412 527053232 527053232 701578528 872454960 927559483 927559483 605099585 623007169 623007169 739951760 756188789 756188789 848450475 848450475 571771232 571771232 447951702 447951702 419504166 840503829 840503829 572928432 954394118 954394118 943842245 541974352 197937376 388833456 388833456 338297954 345744774 345744774 470431812 470431812 1032711279 1032711279 1032711279 1030711383 1030711383 896009643 896009643 1064670631 1064670631 811138943 804525956 578457593 636749412 745278861 745278861 1017528960 1017528960 485440976 485440976 526798644 526798644 348837066 349267784 381497178 381497178 1015829761 1015829761 389271922 735215501 735215501 109823772 102422264 264646508 714807341 714807341 335943210 890249369 890249369 1056978603 1056978603 128614104 848683856 932479842 932479842 806478563 806478563 603038288 822157827 822157827 309473382 309473382 470683840 470683840 236192268 236192268 236003868 381437652 382242584 382242584 311217010 210535340 532703932 532703932 252261494 512428776 512428776 384946290 384946290 327345114 327345114 281936364 281936364 371795980 371795980 220287078 474715772 474715772 331949610 295964466 295964466 365441912 642909272 904139819 904139819 658942416 658942416 390719617 428799543 980119822 980119822 883160031 850654029 381330463 516731474 516731474 313367708 470995470 593141951 982209642 1033761435 1033761435 935652481 593353347 154573347 845552979 845552979 843484735 324814704 345165314 345165314 269121578 558119564 558119564 541470832 265556000 697507976 697507976 520296688 235090002 0 0 0 134217732 134217732 151267896 526467660 526467660 103015322 115444000 135666552 207560356 207560356 222153504 222153504 88153952 128110224 128110224 123654104 100146672 131199448 252912348 252912348 238317328 238317328 315221202 315221202 182036012 182036012 156005278 184150944 184150944 180751604 45236232 426643518 426643518 509400742 509400742 273933844 373419920 472983178 504883844 506074398 506074398 360149676 360149676 918090954 918090954 820036035 603114819 414372678 414372678 344723104 22809674 2848096 887173160 887173160 813295491 345146474 345146474 318376816 359546168 359546168 113449848 113449848 373237400 373237400 310765650 310765650 282879632 80166368 80166368 254347328 254347328 470884376 470884376 646013056 968933607 968933607 289513575 180603420 180603420 575753296 575753296 549554896 914360608 933497211 933497211 906503539 906503539 824180780 824180780 760742016 1049657728 1049657728 490117804 490117804 487987758 640837614 640837614 646134935 960369471 960369471 911291096 911291096 982567007 982567007 772124561 1040512731 1045303355 1045303355 692849829 692849829 956900391 956900391 458827446 963023273 963023273 673467184 700882997 700882997 546305332 719029780 719029780 146483236 166481926 952479970 952479970 822853970 288390272 483152832 483152832 297668582 518622658 518622658 210610724 335921155 697688617 697688617 666821336 666821336 213261132 646975632 646975632 1023608047 1023608047 674889015 674889015 836474058 1029388027 1029388027 969804310 969804310 571277578 806954499 1028195021 1028195021 1010827502 265091709 907255840 907255840 907076057 651434192 883212816 883212816 26235040 166071825 736761333 1042962005 1046490358 1046490358 716703573 1042370458 1042370458 419430438 604110876 604110876 314574308 314574308 41943120 226829412 362492704 362492704 604078509 671088645 671088645 545292928 447795986 447795986 807015092 807015092 757028881 342609056 840223251 840223251 997510710 997510710 846301710 877134987 877134987 900665564 944767623 944767623 965806178 995433143 995433143 1033337351 1033337351 819584163 510478926 343094154 513678942 513678942 443206798 439878066 238102800 238102800 473507598 620081241 986886730 1060280232 1060280232 482341221 599239506 690147621 863705616 863705616 829238691 973222150 973222150 660953349 582495607 258299649 342869295 753716685 890990941 890990941 742705915 718935765 718935765 509377096 509377096 417730116 742764492 742764492 620164160 620164160 114433366 477892494 477892494 190631604 223255672 223255672 394845050 394845050 336318976 336318976 318796402 318796402 84359208 446841154 446841154 494966874 494966874 85274152 5318664 435824392 435824392 412299846 546910146 1042105104 1042105104 779569602 203864512 586477788 705823360 705823360 718560068 718560068 554206028 614991177 614991177 604817625 851986892 851986892 113773816 516824544 516824544 970075744 1009329423 1009329423 544843553 231017703 469762062 469762062 353246250 648880423 671265812 683960793 683960793 713171457 847943185 851575429 851575429 707927638 545005329 542900484 378671504 476254922 478359630 510239118 512488542 512488542 357104790 12862626 0 396320 740987664 740987664 718291213 702681573 555745569 555745569 207093892 207093892 545559070 845253150 985405384 985405384 365694313 850486386 850486386 574841378 585685794 870194931 923479506 923479506 635836905 454884524 454884524 323291352 268773378 273213586 479158876 479158876 437739026 491443846 491443846 413503808 413503808 121128352 120710128 432029920 432029920 704700566 809574531 809574531 440729621 428090416 910953470 910953470 609225809 535271698 535271698 980650864 980650864 636618898 636618898 222603732 499188820 499188820 706805836 706805836 1049324629 1049324629 833817152 833817152 308451242 308451242 19449120 337976896 347231370 407316042 434218248 434218248 1014229625 1014229625 922203071 840198985 840198985 872423568 872423568 643939890 436669966 879638302 1040724237 1046817183 1046817183 775053732 824390585 824390585 779194881 391168059 491833007 491833007 514699767 914552273 914552273 371954717 162136244 598349784 598349784 535515012 535515012 442643914 371731584 356100618 327628914 236063316 324978048 324978048 422712204 422712204 389430442 334184242 436265994 436265994 275639186 226864914 226864914 379699472 379699472 367602928 325954752 328107312 328107312 96075048 96075048 69931272 92674152 92674152 75840040 365306204 385436512 385802202 385802202 499929168 499929168 441342080 366662160 366662160 94146578 268535808 344432654 344432654 293615008 503864434 503864434 239900718 112665548 112665548 67602624 226714252 226714252 146825292 93922920 248002232 248002232 78718516 810115584 811124355 811124355 835496299 835496299 256208308 256208308 1063790892 1063790892 568443086 278449666 654461472 654461472 320176281 310496484 868264863 868264863 1022298396 1022298396 601886931 818938563 1013191621 1059262396 1059262396 626834999 210435708 158784420 443373688 730211207 873805824 873805824 285283938 372089264 372089264 277768896 20324208 18488800 18488800 6031360 64641744 64641744 54854864 31875296 66373328 304627506 313203250 313203250 156631942 460311056 460311056 961753767 961753767 990564960 990564960 752899204 51780144 51780144 147854072 251793468 880677647 880677647 913456412 913456412 298950660 720442328 720442328 673973125 678954885 678954885 568670401 568670401 610367689 616900809 617679360 617679360 153295842 500294382 500294382 475612166 511231902 511231902 420516445 590405721 974358129 974358129 879605275 879605275 564730972 564730972 631903252 631903252 817889564 1046488003 1046488003 806965802 57345024 863422081 863422081 810344545 810344545 802686717 802686717 91342901 38399052 736048736 736048736 823510699 868152019 868152019 1043473468 1043473468 825964323 1048702866 1048702866 436151038 930363666 1035944836 1035944836 169030164 806127746 806127746 676670085 676670085 200310068 814599767 923880149 1057040858 1057040858 840344960 840344960 580390866 147065028 15207684 40111184 189533248 189533248 34078756 149740960 149740960 28117760 138216208 142443824 142443824 155543728 190849460 190849460 196321972 199112660 199112660 158829540 158829540 142909648 135829856 135829856 193089240 242036124 242036124 174317912 199250056 199250056 61123744 257400880 257400880 247730684 740394588 740394588 725683789 725683789 443338134 443338134 513279582 583653064 986357845 1020274382 1020274382 992113624 992113624 958351459 557916321 26748609 676585632 689050149 689050149 579737940 960704679 960704679 449650063 872618375 877082763 877082763 811327800 796160850 715615053 646744392 783076701 783076701 138726477 39687488 641413488 641413488 438903506 784368321 1070616190 1070616190 683985093 181962005 425416778 758204464 758204464 639755805 313091497 539887905 539887905 621532225 661588913 661588913 648906344 648906344 300534698 306546546 306546546 339477432 345842472 345842472 296488290 283938002 337117624 337117624 389025048 389025048 154776932 511926884 511926884 797020123 797020123 502494756 504540456 504540456 86856222 0 436591442 674652300 674652300 601221275 829062560 989121495 989121495 582285094 716203644 716203644 127013496 623563017 623563017 830103968 1001456385 1001456385 718398165 411042498 411042498 409341844 409341844 1048665164 1048665164 336151141 210596882 210596882 111013464 1066264177 1066264177 919564994 991930283 991930283 792789148 331376084 654332472 913578966 913578966 367930092 1034159472 1034159472 935797472 935797472 680200888 680200888 988224780 988224780 1019494944 1019494944 630208136 1041810975 1041810975 857817812 857817812 707906835 853037328 853037328 844235335 844235335 1058616508 1071657655 1071657655 1024984623 822270884 822270884 997764210 997764210 322008992 64252048 64252048 92541624 92541624 35402336 64277808 64277808 57058800 57058800 74473656 74473656 95578688 609522752 609522752 551077569 607545352 607545352 572554000 775477256 775477256 712287345 733163668 733163668 659833753 659833753 522093863 1021575807 1064904639 1064904639 984167336 1024408623 1024408623 1023883311 1023883311 152138984 152138984 132910584 132910584 26104408 20640984 175686022 354018858 354018858 353969706 764057100 881452107 881452107 363471211 813695182 813695182 482345027 938190234 938190234 424459441 279786784 455791926 503428392 503428392 239597724 239597724 174390368 226509380 226509380 396607986 509776568 509776568 536084976 536084976 407281288 347233412 347233412 527053232 527053232 701578528 701578528 565534945 613469216 613469216 623007169 623007169 739951760 756188789 756188789 927089142 927089142 953157703 953157703 641999232 641999232 974788583 974788583 972690967 21496992 297610594 297610594 13681344 270868804 411306054 411306054 388833456 338297954 345744774 345744774 470431812 470431812 1032711279 1032711279 1032711279 1030711383 1030711383 896009643 896009643 1064670631 1064670631 1057625040 1003001127 1003001127 997170661 951856806 951856806 1017528960 1017528960 485440976 485440976 412243714 198080536 272368128 559094891 559094891 350039754 1056254571 1056254571 270482946 148780258 98182640 131145784 131145784 47908616 22883936 223415834 335943210 890249369 890249369 1056978603 1056978603 113775810 308595090 932479842 932479842 806478563 806478563 603038288 822157827 822157827 33589392 1313280 214241580 214241580 236192268 236192268 236003868 381437652 381437652 213960974 282339136 312553090 532703932 532703932 394985624 512428776 512428776 269748738 103091050 306063008 424022080 518797346 518797346 402726012 371795980 319811584 474715772 474715772 331949610 327474834 327474834 302112786 547619914 547619914 342117603 658942416 658942416 914460828 914460828 980119822 980119822 883160031 850654029 783880771 928588511 928588511 556481540 1049049183 1049049183 982209642 1033761435 1033761435 935652481 593353347 256253468 845552979 845552979 843484735 324814704 836854321 836854321 591616626 840323824 840323824 265556000 265556000 77409864 388378856 437194816 437194816 288106892 384377626 384377626 364382058 378880314 378880314 526467660 526467660 386832112 386832112 135666552 207560356 207560356 222153504 222153504 114233480 114233480 90357960 98884256 98884256 64134432 252912348 252912348 238317328 238317328 197258516 197258516 182036012 182036012 76619984 94136024 94136024 85164104 85164104 66882072 66882072 159844932 193687584 194377332 882926049 882926049 912036885 912036885 212782559 740516109 740516109 993157940 993157940 950194503 363894895 179735134 344723104 344723104 344360466 34691144 596969480 923869755 937176011 937176011 113771736 318376816 359546168 359546168 290001632 300171074 373237400 373237400 310765650 310765650 282879632 61441920 63027816 212025602 212025602 689506001 887891791 887891791 630458203 630458203 213134061 180603420 180603420 575753296 575753296 549554896 876881360 932213252 932213252 846407591 843703443 824180780 824180780 742425600 742425600 260099164 490117804 490117804 701940032 939855025 939855025 843005715 442610656 1044373710 1044373710 355198072 283326276 745851789 772124561 772124561 1045303355 1045303355 780608653 1028439263 1028439263 956900391 775987269 807767168 807767168 673467184 673467184 599085985 546305332 719029780 719029780 146483236 166481926 952479970 952479970 822853970 283787688 175433232 175433232 138860676 518622658 518622658 210610724 335921155 697688617 697688617 539242956 539242956 820189222 820189222 1068721108 1068721108 1023608047 674889015 674889015 624112425 624112425 67508232 239559680 476696348 476696348 450366936 497697620 867095662 867095662 265091709 907255840 907255840 716194692 716194692 237125851 86021024 86021024 396362218 396362218 381723732 474562704 695821316 716703573 1012053001 1012053001 604590732 419430438 679661637 679661637 882587211 882587211 808003263 563749782 362492704 604078509 671088645 671088645 545292928 447795986 447795986 807015092 807015092 757028881 696631952 840223251 840223251 997510710 997510710 614066684 729550773 729550773 451078240 548582404 548582404 921228584 921228584 828878307 828878307 819584163 819584163 210659101 280413384 343809930 478944252 478944252 439878066 451053938 451053938 473507598 473507598 986886730 986886730 704981013 371985690 371985690 356128554 863705616 863705616 829238691 438806617 660953349 660953349 746491904 746491904 342869295 753716685 890990941 890990941 742705915 718935765 718935765 575201512 555476665 559228544 610430601 610430601 24708672 50729984 50729984 42517584 42517584 2789456 345262144 387498026 387498026 363497984 336318976 336318976 401493115 868795601 868795601 1057372320 1057372320 973634612 939781180 1057824171 1057824171 755508370 755508370 728313763 811084071 1042105104 1042105104 617750605 679547393 679547393 705823360 705823360 340545352 340545352 621618870 621618870 287077624 306363746 851986892 914186410 914186410 251410852 434507678 970075744 1009329423 1009329423 884684619 884684619 813141417 667783465 667783465 592395441 655069224 655069224 537462340 713171457 847943185 847943185 268436416 268436416 275124740 275124740 378671504 476254922 478359630 510239118 512488542 512488542 370237981 652586791 818728131 818728131 311344157 997286821 997286821 938574446 938574446 903923015 903923015 785878161 785878161 746225360 549482240 351965834 399036136 399036136 651439649 651439649 829404384 890443537 923479506 923479506 809931761 883498961 883498961 370407018 897926170 897926170 933568825 933568825 815453763 591356266 103223320 122148608 122148608 133247896 133247896 355082235 404559506 704700566 809574531 809574531 440729621 497412462 497412462 577866240 577866240 350292825 197233398 792838874 792838874 379973735 375525786 380938954 499188820 499188820 356657944 356657944 1049324629 1049324629 833817152 833817152 308451242 526745832 526745832 426567942 347231370 407316042 434218248 434218248 1014229625 1014229625 922203071 840198985 840198985 872423568 872423568 931040170 931040170 879638302 1040724237 1046817183 1046817183 136674002 751093965 751093965 240308892 1034963177 1034963177 491833007 1065702550 1065702550 973969749 973969749 617762286 671352837 671352837 535515012 535515012 442643914 371731584 35691264 236063316 236063316 324978048 324978048 422712204 422712204 389430442 538001749 538001749 436265994 544784465 583649156 583649156 596712097 680470928 680470928 570718453 686368785 686368785 164338353 624701100 624701100 578809630 344809762 344809762 365306204 365306204 328762840 328762840 499929168 499929168 449092658 366662160 366662160 327190648 177769088 177769088 285579632 286360896 453263938 453263938 274894702 274894702 269912384 270846210 270846210 419825702 419825702 738796557 738796557 953145531 953145531 753525934 753525934 678031823 835496299 835496299 240435726 240435726 1063790892 1063790892 909429531 909429531 917573290 917573290 353911322 353911322 868264863 868264863 1022298396 1022298396 182715814 295082406 1024333813 1024333813 854429421 854429421 341966113 78588232 132230600 132230600 906885522 906885522 886959819 849176280 598481920 598481920 56242176 41817536 41817536 12717392 19583520 34406512 34406512 31875296 66373328 66373328 23542176 19014400 296077664 296077664 282195429 961753767 961753767 990564960 990564960 807144100 362023979 869008048 869008048 504831705 535835082 823464334 823464334 492294080 572838964 770524037 770524037 673973125 678954885 678954885 157969636 144577185 211190540 211190540 537717165 537717165 153295842 500294382 500294382 537002379 537002379 511231902 730878475 730878475 974358129 974358129 920649866 339739099 845828384 845828384 923794094 923794094 690199752 690199752 33773200 38962592 57345024 57345024 293675667 810344545 810344545 802686717 1044910362 1044910362 540058619 540058619 526078799 38831744 38831744 609198400 609198400 521926206 668844190 668844190 606267463 606267463 768469740 1035944836 1035944836 946490799 896396715 812283554 676670085 676670085 231909008 596724980 923880149 1057040858 1057040858 840344960 840344960 580390866 176163280 180619476 180619476 36700944 196086720 198183248 198183248 18874656 7243040 4982912 17114144 17114144 21307552 21307552 0 0 0 4211200 5292672 5292672 16884224 55201216 55201216 14880560 36051216 86844660 174317912 234418152 234418152 202639884 257400880 257400880 265274893 740394588 740394588 725683789 725683789 19688617 73728 8192 0 21073168 388896888 537145334 736202983 958351459 958351459 1029926163 1029926163 537074660 701667938 701667938 880269929 960704679 960704679 449650063 952242375 952242375 958075672 958075672 796160850 715615053 754630077 783076701 783076701 963284818 963284818 765569280 678478725 438903506 784368321 1070616190 1070616190 683985093 181962005 960176533 1047223938 1047223938 639755805 613220448 613220448 612574248 612574248 661588913 661588913 566256865 566256865 389547834 389547834 306546546 339477432 339477432 435978590 435978590 489142020 489142020 412101846 525612676 525612676 109615588 109615588 171367188 797020123 797020123 502494756 225105324 288715292 306973842 306973842 436591442 674652300 674652300 968084588 968084588 989121495 989121495 641189742 716203644 716203644 276671463 623563017 623563017 896273027 896273027 309407786 404312364 672646367 672646367 1069802794 1069802794 1048665164 1048665164 383864835 704979761 704979761 503621654 1066264177 1066264177 919564994 991930283 991930283 792789148 331376084 261145212 913578966 913578966 929430475 929430475 911811770 680732728 798366333 798366333 680200888 988224780 988224780 1019494944 1019494944 609910398 609910398 530552457 857817812 857817812 805521088 853037328 853037328 844235335 844235335 1058616508 1071657655 1071657655 161616935 822270884 822270884 807664944 807664944 361007324 213551336 213551336 92541624 92541624 51396160 71641496 71641496 57058800 113187000 113187000 74473656 27336880 609522752 609522752 541604832 607545352 607545352 572576004 775477256 775477256 712287345 733163668 733163668 227568280 227568280 241466044 692800148 692800148 589299249 984167336 1024408623 1024408623 1023883311 1023883311 152138984 152138984 65576704 104096504 104096504 71359104 175126276 175126276 138085268 556868385 875640097 875640097 875246859 873128227 873128227 840073984 690735638 958853413 958853413 354982245 676163064 705481749 705481749 374661827 675375104 692323400 692323400 399819482 399819482 364980276 93661792 86192424 115421624 115421624 103811104 103809816 79880832 79880832 29425904 549137024 549137024 68191328 613469216 649596432 649596432 614730057 537658697 138461885 223347600 927089142 927089142 953157703 953157703 641999232 641999232 1011894596 1011894596 972690967 597033313 629632256 696915045 947293728 947293728 411306054 411306054 145041732 145041732 159770916 159770916 314777920 314777920 196659060 196659060 763205432 763205432 605078096 605078096 448923340 645058634 1057625040 1057625040 1003001127 1003001127 997170661 951856806 951856806 803923765 740112139 740112139 1025071132 1025071132 383390746 383390746 559094891 559094891 350039754 1056254571 1056254571 270482946 784406608 784406608 131145784 131145784 139729148 722482861 722482861 324605443 416357411 416357411 335688728 335688728 75631616 75631616 362697224 362697224 805617698 873482763 873482763 429118728 429118728 465170458 512502102 512502102 287058756 33953808 1571328 387898552 387898552 303280146 303280146 530995886 530995886 312553090 314781706 394985624 394985624 361252034 76058352 101975048 299892866 424022080 518797346 518797346 487203192 319811584 319811584 27571314 4622656 808964608 808964608 327474834 302112786 297854354 291820738 268883970 50331696 50331696 914460828 953010415 953010415 513142001 508682250 783880771 783880771 928588511 928588511 556481540 1049049183 1049049183 750704940 750704940 445371263 439827222 362001074 362001074 271752642 1006386736 1006386736 304210274 836854321 836854321 591616626 840323824 921934527 921934527 594279606 800456616 800456616 437194816 437194816 288106892 384377626 384377626 364382058 378880314 378880314 90054312 361970928 386832112 386832112 127170720 127170720 110549592 114164352 114164352 114233480 114233480 247093956 247093956 175414420 175414420 142039892 194691952 194691952 155075572 254558236 254558236 237431276 67317768 168106688 168106688 254417496 254417496 201906952 201906952 265915996 265915996 193687584 194377332 882926049 882926049 912036885 912036885 970398010 970398010 806429187 993157940 993157940 950194503 421692572 819338264 819338264 344360466 344360466 337927133 1052913747 1052913747 937176011 937176011 830010027 830010027 662885064 297064960 297064960 300171074 300171074 201560268 71393600 407007694 407007694 206154592 186151564 212025602 212025602 923913142 923913142 887891791 636039097 630458203 213134061 0 0 609355008 609355008 573751296 557258268 932213252 932213252 846407591 843703443 673450504 675301529 675301529 604293129 260099164 564160449 564160449 701940032 939855025 939855025 843005715 653922936 1044373710 1044373710 1047317362 1047317362 33554448 58997808 58997808 416098339 717434909 780608653 1028439263 1028439263 785308893 775987269 672087045 588285056 576243345 20971680 21761024 21761024 546557056 546557056 26496704 731257461 731257461 672695713 595232049 576447364 175433232 175433232 138860676 179327400 179327400 68816908 265471000 265471000 231645396 539242956 539242956 984623152 984623152 1068721108 1068721108 637547528 637547528 508588508 491454711 957681014 957681014 877694619 707135862 558746222 436741126 516997854 592596985 648813214 648813214 882082326 882082326 716194692 716194692 678482314 644133008 86021024 396362218 952208908 952208908 886959819 550027343 492695141 1012053001 1040636044 1040636044 341852493 877942935 877942935 882587211 882587211 886199706 886199706 521798410 521798410 136405254 218128724 218128724 260356220 260356220 220299632 687115636 696631952 1054542674 1054542674 745487757 560430541 305443571 242992002 1062473159 1062473159 550011803 681150568 681150568 921228584 921228584 568377825 1047266043 1047266043 813722286 717853493 567405281 280630302 958843581 958843581 862427645 862427645 451053938 488654128 488654128 680062032 704981013 704981013 371985690 622660768 777907869 777907869 599339622 344923180 345353738 345353738 265376320 746491904 746491904 927238932 927238932 506214064 506214064 769350269 769350269 575201512 1033242703 1033242703 671881444 610430601 610430601 549140352 549140352 205203523 359752155 433515174 985057705 985057705 387498026 851315148 1062213279 1062213279 216271731 564708395 908727322 908727322 1057372320 1057372320 973634612 939781180 1057824171 1057824171 755508370 755508370 821116946 821116946 811084071 684072960 684144837 684144837 684071109 684071109 643501017 780929061 780929061 772811524 725171616 725171616 655880705 576149345 914186410 914186410 251410852 434507678 761798057 761798057 543963850 884684619 884684619 813141417 667783465 667783465 592395441 386465906 107063124 484065442 1006012588 1006012588 804355219 646307682 646307682 867832688 867832688 249893008 235203002 175118596 175118596 209457036 281575770 370237981 652586791 818728131 818728131 402927188 997286821 997286821 938574446 938574446 903923015 903923015 785878161 785878161 746225360 234247424 293365698 399036136 399036136 651439649 651439649 829404384 890443537 890443537 564740824 809931761 883498961 883498961 370407018 897926170 897926170 933568825 933568825 815453763 591356266 384818186 384513498 279827488 133247896 133247896 355082235 960286131 960286131 310030482 574910709 574910709 497412462 882434120 882434120 577866240 350292825 323274948 792838874 792838874 756312851 977396488 977396488 380938954 322029184 356657944 356657944 239170974 205001936 205001936 177265212 214059448 526745832 526745832 426567942 347065334 347065334 328488398 178853398 473088 327680 283458552 387398202 387398202 133368258 42628842 931040170 931040170 693948093 674323717 674323717 306745776 306745776 751093965 914508595 914508595 1034963177 1034963177 800989053 1065702550 1065702550 973969749 994365506 994365506 1012302978 1012302978 705566720 705168405 49484864 245504024 245504024 102924624 9437760 9437760 159667032 159667032 110286180 3070976 538001749 538001749 214755536 544784465 583649156 583649156 596712097 680470928 680470928 570718453 686368785 686368785 164338353 676751600 676751600 637995164 654615560 654615560 42142488 292221370 759170702 759170702 724436424 562663424 1028078758 1028078758 471869952 471869952 317475660 317475660 285579632 454386148 454386148 453263938 274894702 274894702 269912384 270846210 270846210 419825702 419825702 738796557 738796557 953145531 953145531 325707186 945953808 945953808 683944179 573533361 537918465 1037025335 1037025335 650166489 909429531 909429531 917573290 917573290 353911322 397011800 530844480 530844480 539493184 539493184 166875580 295082406 1024333813 1024333813 854429421 854429421 341966113 262263140 234693168 539183873 906885522 906885522 886959819 849176280 598481920 598481920 56242176 279976530 311820610 311820610 327963810 327963810 274733512 274733512 269849544 269849544 75407238 151109532 296077664 296077664 58837648 58837648 839964772 839964772 807144100 807144100 362023979 869008048 869008048 504831705 646916296 823464334 823464334 687504096 687504096 770524037 770524037 223945252 556879104 565209056 565209056 550030945 211190540 211190540 537717165 701038752 881411265 1019790543 1019790543 537002379 537002379 434274718 730878475 730878475 284214708 920649866 920649866 906868208 845828384 845828384 923794094 923794094 690199752 690199752 626679425 626679425 593679505 53125152 17302560 634194323 634194323 673871668 1044910362 1044910362 671105033 540058619 740857943 922867036 922867036 450899890 450899890 180043698 900865974 900865974 606267463 606267463 480721230 588704484 946490799 946490799 896396715 812283554 175666454 663808644 801450237 801450237 478832968 478832968 432013158 244881988 244881988 66882912 176163280 180619476 180619476 120448824 196086720 198183248 198183248 15067584 18907776 152094480 153377840 153377840 159782544 181654228 181654228 200511188 200511188 194847732 189344308 189344308 146318032 165705396 198395392 198395392 181445512 77820240 261686000 261686000 234418152 202639884 120023692 77893872 265274893 738753788 738753788 280622468 977522849 977522849 298837608 298837608 883475394 1054947879 1054947879 749361736 877378335 1043545832 1043545832 1029926163 1029926163 537074660 701667938 701667938 880269929 880269929 823456643 208498465 952242375 952242375 958075672 958075672 619920168 619920168 754630077 754630077 621484585 963284818 963284818 765569280 678478725 379151839 477211982 477211982 686393040 686393040 237019537 960176533 1047223938 1047223938 536873745 916799562 916799562 650535249 612574248 128002505 23707856 59769456 313074280 389547834 389547834 95684680 272951880 294601378 435978590 435978590 489142020 489142020 412101846 525612676 525612676 202381092 109615588 171367188 171367188 43386344 162244884 225105324 288715292 306973842 306973842 197758160 197758160 107089024 968084588 968084588 160182835 528269460 641189742 641189742 971337090 971337090 293547138 475479948 896273027 896273027 309407786 735365496 735365496 784897114 1069802794 1069802794 499306734 499306734 383864835 704979761 704979761 503621654 503621654 105015312 584734920 584734920 328178881 222433856 565892961 699938497 699938497 713191156 929430475 929430475 868329626 868329626 905969691 1059859107 1059859107 825206583 707073222 915766241 915766241 240682720 258529064 603502048 603502048 338691652 805521088 805521088 295579811 823136770 823136770 553783329 285212706 285212706 150994980 422576898 422576898 403966470 361007324 361007324 214195932 214195932 186090820 186090820 51396160 161308772 185721396 796202009 796202009 598914320 598914320 558508945 597625264 597625264 584128705 597511345 597511345 592586912 572576004 544465248 542102498 286051362 367133242 807676119 1055074621 1055074621 241466044 230045757 141756816 213024462 315356370 489608525 1000677061 1000677061 160730887 49795008 49795008 104096504 104096504 71359104 107127408 352363690 352363690 556868385 875640097 875640097 1003620098 1003620098 873128227 840073984 690735638 958853413 958853413 958565779 912232384 912232384 874180282 874180282 675375104 692323400 692323400 399819482 399819482 433136534 433136534 411374410 260454610 398533972 398533972 396898548 131072128 126878328 12583672 19432032 621364777 621364777 81423360 649596432 649596432 614730057 586540968 138461885 598115962 939164496 939164496 204397978 315146322 315146322 640790809 1039734648 1039734648 597033313 597033313 629632256 696915045 947293728 947293728 59219408 512151708 512151708 502237450 502237450 159770916 153753604 151585024 923102541 1007471697 1007471697 875079962 677472114 677472114 434169841 766829186 1014209490 1014209490 365540806 181702300 215558296 865716114 865716114 864267815 864267815 740112139 1025071132 1031927021 1031927021 825766657 825766657 659575769 659575769 900355019 900355019 641728665 784406608 784406608 42344669 106052684 139729148 722482861 722482861 324605443 416357411 416357411 335688728 630178913 630178913 834710787 834710787 626485131 810760107 873482763 873482763 860975283 860975283 465170458 512502102 512502102 287058756 145338180 145338180 387898552 387898552 303280146 385933456 530995886 530995886 270756330 270756330 361449864 398596666 398596666 387322106 58065824 479251132 479251132 340268032 487203192 487203192 465153104 397820434 348804308 124160417 808964608 808964608 876744843 876744843 831071338 831071338 864617505 864617505 843394083 562569415 953010415 953010415 513142001 508682250 474079374 809472854 1020784330 1020784330 126739570 304210194 902589945 902589945 132323436 164671226 342973832 362001074 362001074 434060432 1006386736 1006386736 554766336 562248481 562248481 545923169 831030511 921934527 921934527 774330606 800456616 800456616 193227000 174589952 35533616 50902016 50902016 25351488 25351488 20973184 20973184 72876704 84549800 130877608 130877608 110266368 110549592 110549592 48923468 227557688 227557688 247093956 247093956 175414420 175414420 156359568 194691952 194691952 155075572 254558236 254558236 237431276 237381568 182937436 168106688 254417496 254417496 253159212 201906952 265915996 265915996 214269024 165478404 163687604 675599328 675599328 540806403 970398010 970398010 806429187 806429187 505594958 581840493 581840493 819338264 819338264 303602760 15759768 337927133 1052913747 1052913747 880539531 578003859 830010027 830010027 662885064 328880512 359259152 359259152 344447362 201560268 476125337 686063793 1023922627 1023922627 674154756 936270294 936270294 1055322194 1055322194 751373897 657179586 736944385 736944385 200321456 530705404 609355008 609355008 573751296 557258268 762392369 762392369 538502960 72616336 673450504 872464669 872464669 604293129 505414452 601180485 601180485 424780420 862080928 862080928 700237208 982441047 982441047 819291447 1047317362 1047317362 757959597 757959597 218561889 44446752 587985969 587985969 546209009 583022880 625426793 625426793 728144177 728144177 689476401 689476401 660477420 660477420 613715685 546557056 353621007 731257461 731257461 672695713 595232049 646513556 646513556 410060938 410060938 344606130 388142320 388142320 265471000 732191121 732191121 1045451287 1045451287 984623152 984623152 614089345 938619314 938619314 674867022 674867022 491454711 957681014 957681014 877694619 707135862 558746222 668542526 668542526 592596985 1065201853 1065201853 882082326 882082326 411308870 678482314 678482314 644133008 107195328 101896728 952208908 952208908 886959819 550027343 492695141 475392654 1040636044 1040636044 470079516 877942935 877942935 743011358 752084269 886199706 886199706 521798410 556307215 749363565 749363565 612410248 455485712 610131136 610131136 687115636 687115636 1054542674 1054542674 745487757 560430541 537658322 568592865 1062473159 1062473159 550011803 866490411 866490411 864161907 328332832 563153408 1047266043 1047266043 813722286 717853493 567405281 231653708 958843581 958843581 862427645 862427645 724959841 542296960 542296960 462947958 1000866564 1000866564 318854176 622660768 777907869 777907869 971052966 971052966 314988316 314988316 343666256 343666256 678796364 927238932 927238932 364953834 240000156 987643496 987643496 919837574 1033242703 1033242703 944113622 944113622 932207386 549140352 549140352 205203523 359752155 433515174 985057705 1010973771 1010973771 851315148 1062213279 1062213279 799027556 799027556 908727322 908727322 839908439 172110312 822460560 822460560 578668625 578668625 407610822 927769353 927769353 821116946 578988044 684072960 1009347556 1009347556 930202974 684071109 643501017 780929061 780929061 772811524 725171616 725171616 655880705 576149345 635879977 635879977 358107418 458006744 761798057 761798057 144088004 278613854 587237069 896607147 896607147 892346597 704643184 704643184 107063124 484065442 1006012588 1006012588 951900130 980010665 980010665 867832688 867832688 377499780 377499780 268575116 274936146 274936146 281575770 281575770 417280512 426035622 426035622 402927188 402927188 322750902 303415328 201982184 162044324 174228228 193926712 376072238 376072238 234247424 293365698 293365698 75685512 73322568 73322568 355982154 355982154 647918154 647918154 134191169 64037616 271067776 330042738 555955536 809344579 809344579 280844033 67892738 384818186 384818186 384513498 279827488 113584344 113584344 54645632 960286131 960286131 310030482 574910709 574910709 180423972 882434120 882434120 310222848 323274948 323274948 455379360 756312851 756312851 977396488 977396488 404803590 136315140 507527184 507527184 337905930 337905930 125978736 125978736 436341322 436341322 344173864 310031824 347065334 347065334 454297904 454297904 999369601 999369601 717613269 717613269 581265647 336161065 373610104 625673178 625673178 673636352 674323717 686205916 686205916 453326976 736383207 914508595 914508595 892523307 800989053 800989053 971368935 971368935 111726877 994365506 994365506 1012302978 1012302978 705566720 705168405 529273252 456163620 245504024 102924624 177345108 177345108 178048596 436529824 436529824 370470090 370470090 506495774 506495774 408420554 537436672 537436672 857767792 857767792 455065849 331374012 399425848 399425848 17164320 676751600 676751600 637995164 654615560 654615560 231315184 234505286 759170702 759170702 724436424 562663424 1028078758 1028078758 471869952 471869952 738246669 738246669 342493377 454386148 454386148 943760272 943760272 842088837 763953357 763953357 359220876 624097001 624097001 226566252 226566252 1059783240 1059783240 221849388 945953808 945953808 826637669 573533361 537918465 1037025335 1037025335 650166489 503107566 503107566 354418828 239077976 148114116 765061199 765061199 570798859 584323809 584323809 177478144 711332673 711332673 193988272 688884997 688884997 262263140 262263140 234693168 539183873 539183873 84935208 610586265 610586265 86149672 86149672 279106560 279976530 311820610 311820610 327963810 327963810 274733512 274733512 269849544 269849544 75407238 151109532 151109532 149743986 182997680 971704836 971704836 586154961 586154961 176950356 176950356 723704292 723704292 251793468 646916296 646916296 622386564 687504096 687504096 685401312 559489664 140354592 556879104 565209056 565209056 550030945 29671520 19284832 19284832 701038752 881411265 1019790543 1019790543 490766346 289935900 319476786 319476786 932894331 932894331 675182935 906868208 906868208 363177186 824755126 824755126 460375331 510447006 510447006 879943354 1030411292 1030411292 1042582286 1042582286 856816249 856816249 824577280 673871668 990940040 990940040 517997022 863898310 922867036 922867036 867200216 799806602 799806602 900865974 900865974 777543787 777543787 419573208 143630092 122700372 218942092 1032388338 1032388338 727293953 985944405 985944405 943982727 369407250 369407250 383722402 383722402 378861024 66882912 108792880 108792880 120448824 120448824 92865664 102400144 102400144 69583360 94515008 152094480 153377840 153377840 159782544 181654228 181654228 200511188 200511188 194847732 189344308 189344308 146318032 165705396 198395392 198395392 181445512 77820240 261686000 261686000 230278004 186769760 245376856 245376856 200220680 708608049 708608049 457370760 977522849 977522849 298837608 298837608 883475394 1054947879 1054947879 749361736 877378335 1043545832 1043545832 172155072 172756116 172756116 168560788 626100820 832035488 832035488 561793001 608972193 610535817 610535817 303049017 290529954 55583250 2171136 270530532 320577492 320577492 449872854 740070065 740070065 411771575 411771575 477211982 477211982 686393040 686393040 455816502 455816502 303052460 73400712 633765258 916799562 916799562 650535249 117757273 107821728 858985912 858985912 598646618 901775595 901775595 630031040 272951880 294601378 487342896 487342896 375238174 498028560 498028560 186134126 202381092 319487173 319487173 304261458 304261458 558149715 684480407 684480407 583372437 462341347 186512944 839353651 839353651 637932200 593678769 1068234111 1068234111 843889071 493554331 16777472 971337090 971337090 293547138 475479948 824391307 824391307 138760170 735365496 735365496 784897114 898420652 898420652 586603473 586603473 867431283 867431283 538393089 574872177 574872177 558007521 319274450 653886530 653886530 908555789 908555789 699938497 699938497 692642900 870577857 870577857 986393803 986393803 905969691 1059859107 1059859107 825206583 607252343 1003406155 1003406155 1009051015 1009051015 737000917 737000917 616651594 973322135 973322135 839463446 879879961 879879961 557977761 487588398 767559018 767559018 1058029955 1058029955 978093105 696027702 252971820 214195932 214195932 186090820 186090820 153133376 161308772 185721396 796202009 796202009 598914320 598914320 558508945 544545856 584128705 584128705 56966816 592586912 592586912 544465248 544465248 542102498 286051362 367133242 807676119 1055074621 1055074621 300160098 230045757 141756816 213024462 315356370 823730199 1000677061 1000677061 557347840 557347840 49795008 55768496 65795568 65795568 101257730 352363690 352363690 322982440 525357248 525357248 1003620098 1003620098 707986885 235041845 174145720 514733404 958565779 958565779 912232384 912232384 874180282 874180282 819149429 753095360 432549456 747925000 1050741619 1050741619 989004283 885133515 902902300 1016137697 1016137697 540778520 381711784 126878328 72942752 107588224 621364777 621364777 85354272 127385272 127385272 586540968 586540968 107237360 598115962 939164496 939164496 23939784 279323528 539193154 641026833 1039734648 1039734648 304742371 420806124 420806124 311194132 311194132 428287256 428287256 512151708 512151708 502237450 711231661 711231661 1054870686 1054870686 923102541 1007471697 1007471697 875079962 677472114 677472114 573178432 823924500 1014209490 1014209490 977149751 975575319 170002435 157812132 568428176 864267815 864267815 330960500 484062016 1031927021 1031927021 825766657 825766657 659575769 659575769 900355019 900355019 883684674 296659097 296659097 103623960 103623960 143917856 150946312 170364020 170364020 46389043 146148356 252247211 630178913 630178913 834710787 834710787 626485131 810760107 810760107 396562906 860975283 860975283 386382714 279385698 153255756 153255756 145338180 145338180 496124064 496124064 218316902 385933456 385933456 344115674 386610290 386610290 281092290 398596666 398596666 387322106 146560163 868506873 984088957 984088957 463916324 465153104 465153104 397820434 768787841 768787841 777003397 777003397 876744843 876744843 831071338 831071338 864617505 864617505 843394083 849748443 849748443 659096976 1025911039 1025911039 938946237 938946237 1020784330 1020784330 623754322 881012811 1034085891 1034085891 809125383 361259827 342973832 342973832 311496812 434060432 555819776 623060993 623060993 656550777 656550777 545923169 831030511 831030511 385998906 774330606 774330606 749113832 174589952 174589952 266599096 266599096 243654356 243654356 349619920 349619920 71731448 118222888 118222888 130877608 130877608 90562816 90562816 98840008 98840008 227557688 239338326 409864078 409864078 292624754 171797712 156359568 156359568 256280954 293634306 338444350 513982980 513982980 237381568 182937436 151701076 154907144 253159212 253159212 156133956 77375208 214269024 214269024 184184976 184184976 675599328 675599328 540806403 826508168 826508168 620908659 505594958 505594958 581840493 959714216 1046874526 1046874526 446630563 446630563 829072110 1068621843 1068621843 981545788 981545788 11535168 338170594 338170594 328880512 359259152 359259152 344447362 151910488 476125337 686063793 1023922627 1023922627 674154756 936270294 936270294 1055322194 1055322194 658641939 679597843 737623029 856888229 856888229 903233546 50507646 532172848 532172848 50885632 50885632 50780208 51829296 134743616 270026540 872464669 872464669 797287356 1041261207 1041261207 708690321 827852451 862080928 862080928 967141332 982441047 982441047 843408727 454836674 241495029 757959597 757959597 218561889 600179824 600179824 587985969 287608034 583470376 625426793 625426793 728144177 728144177 689476401 689476401 660477420 660477420 613715685 353621007 353621007 101786136 302052150 302052150 253890876 646513556 646513556 410060938 410060938 344606130 388142320 505548894 505548894 732191121 732191121 1045451287 1045451287 496900336 569021104 614089345 938619314 938619314 942096472 942096472 665835650 908231179 908231179 310596628 383625328 383625328 668542526 1016595552 1016595552 1065201853 1065201853 451952960 910430684 910430684 302019528 302019528 280306384 107195328 151017119 207329831 537361932 1045083151 1045083151 1006784048 757406092 757406092 252114988 522432828 522432828 911213211 911213211 132468523 360953682 360953682 316770172 556307215 749363565 749363565 612410248 455485712 610131136 610131136 646221040 646221040 618960885 618960885 121499448 388461256 977675098 977675098 981224275 981224275 870958186 866490411 866490411 864161907 816261386 563153408 684794401 684794401 675620997 60039748 691077517 911327883 911327883 861323360 805669776 805669776 724959841 814776390 814776390 462947958 1000866564 1000866564 310497344 302198802 377561178 939825233 971052966 981588544 1051851726 1051851726 343666256 343666256 321313074 241815096 241815096 214772940 240000156 987643496 987643496 919837574 694557880 694557880 944113622 944113622 932207386 55668129 42397728 42397728 50463748 168297492 664673010 1010973771 1010973771 421533224 421533224 439753298 799027556 799027556 618524616 618524616 102284673 826614560 826614560 319094913 578668625 578668625 376813224 927769353 927769353 1014374592 1014374592 363072979 1009347556 1009347556 930202974 821504275 377252186 389816824 520823530 724028578 1051432996 1051432996 889859272 889859272 759466024 868072771 868072771 458006744 685397109 958925608 958925608 705901749 580410908 896607147 896607147 892346597 782140541 704643184 618140932 696531453 696531453 228774624 951900130 980010665 980010665 506094227 458412726 377499780 377499780 268575116 274936146 306323844 306323844 140578962 417280512 417280512 415371462 416025798 416025798 135285958 54627216 148863812 148863812 174228228 193926712 226017136 226017136 93528704 358263298 358263298 394313850 586831587 586831587 286022778 604453211 647918154 647918154 134191169 64037616 271067776 330042738 555955536 809344579 809344579 280844033 785111692 785111692 216632592 179521536 174430948 64275452 66061296 412821158 412821158 52872032 152772468 152772468 24562592 93637224 345578514 345578514 310222848 272091240 299174594 455379360 455379360 403065088 404934918 404934918 404803590 341131648 507527184 507527184 337905930 337905930 239559992 184698940 436341322 436341322 344173864 269409282 448467456 448467456 454297904 454297904 999369601 999369601 717613269 992086096 992086096 1073107230 1073107230 625673178 884047954 1049780759 1049780759 686205916 686205916 453326976 453326976 416962560 416962560 230531018 222233548 317281690 317281690 709008404 709008404 952472307 952472307 723203637 624259040 689315936 689315936 529273252 456163620 808900218 808900218 752358036 765231940 892487600 892487600 873609003 584324576 920530783 920530783 506495774 537425029 537425029 303564306 857767792 915054538 915054538 843577491 943647369 943647369 660264633 660264633 624403949 662530392 662530392 220373344 231315184 231315184 738873732 738873732 244318812 323068044 324778276 369379340 369379340 303241479 738246669 738246669 342493377 670044760 745676975 943760272 943760272 842088837 763953357 763953357 359220876 624097001 624097001 839595027 839595027 1059783240 1059783240 221849388 863595190 863595190 826637669 278788225 262221198 319495534 603856321 811206145 872075587 885183284 885183284 374653062 148114116 765061199 765061199 570798859 584323809 584323809 177478144 711332673 711332673 193988272 688884997 688884997 36114768 43065920 49284048 49284048 45154576 34603024 36733696 62262024 86149672 86149672 279106560 279106560 68683272 68683272 26755680 26755680 21996528 21996528 108113680 108113680 145291952 210303250 312324966 404175366 404175366 971704836 979741317 979741317 682531489 682531489 520829671 860590308 860590308 549614853 33290208 695628800 695628800 153861504 153861504 22092480 22092480 143393964 222825540 222825540 162399584 541090916 743260364 743260364 538496869 681078599 681078599 742441101 742441101 965266637 965266637 483692684 774250061 932894331 932894331 675182935 906610275 906610275 363177186 323542106 311733296 218576940 510447006 510447006 879943354 1030411292 1030411292 1042582286 1042582286 856816249 856816249 826426072 290413811 990940040 990940040 517997022 863898310 863898310 867200216 867200216 799806602 799806602 1072170444 1072170444 777543787 777543787 593663504 593663504 212261196 234839118 1032388338 1032388338 768484906 985944405 985944405 943982727 369407250 369407250 787616733 1011585031 1011585031 983218003 983218003 811523443 811523443 670064577 670064577 586837432 110866776 69583360 94515008 95778432 95778432 216130636 216130636 168642584 168642584 29189344 221316072 221316072 248023448 248023448 21285024 17056672 43517520 176238848 176238848 33554448 169351056 230278004 230278004 217187292 245376856 245376856 200220680 268287864 268287864 457370760 457370760 377852154 387763512 387763512 63736938 300172576 300172576 19422146 134946308 169077264 169077264 189778960 189778960 172756116 168560788 626100820 633463017 881181632 881181632 608972193 883036491 933433667 933433667 822218874 822218874 644843705 876749629 995506353 995506353 638372889 740070065 827341827 1015245370 1015245370 806988741 650759710 671327436 671327436 455816502 860600980 958189095 958189095 772785587 821672603 821672603 570503899 117757273 107821728 858985912 858985912 633042106 901775595 901775595 630031040 281186696 281186696 487342896 487342896 478204522 498028560 498028560 186134126 167517792 319487173 319487173 304261458 304261458 558149715 684480407 684480407 583372437 462341347 186512944 839353651 839353651 637932200 1016373596 1068234111 1070770115 1070770115 987731519 592120551 671621149 671621149 808233249 808233249 136580492 137888256 137888256 136840452 136840452 172507336 172507336 353918459 586603473 586603473 867431283 867431283 538393089 574872177 814374547 814374547 538184193 653886530 653886530 908555789 908555789 597379687 948961863 948961863 870577857 870577857 986393803 986393803 262457724 844795926 844795926 178300108 178300108 1003406155 1003406155 1009051015 1009051015 737000917 737000917 616651594 973322135 973322135 839463446 879879961 879879961 822156321 969882855 969882855 767559018 1058029955 1058029955 978093105 696027702 445404080 130394764 40949152 162751792 162751792 199813808 199813808 123994796 117348376 117348376 539902592 539902592 554737664 571732497 606114329 606114329 624223769 624223769 55336881 57386896 57386896 34230272 304101472 304101472 295699488 295699488 694865094 832969059 1002735013 1002735013 587912241 187861553 823730199 973775106 973775106 557347840 557347840 37125536 55768496 65795568 65795568 17381280 20979840 20979840 43775568 581881828 726799029 726799029 584575054 584575054 991421798 991421798 405589254 405589254 489346350 1040604428 1040604428 788664381 819149429 819149429 753095360 432549456 747925000 1050741619 1050741619 989004283 885133515 902902300 1016137697 1016137697 540778520 381711784 354796162 106491032 107588224 107588224 85354272 85354272 127385272 127385272 117424960 117424960 107237360 95734768 99879912 99879912 23939784 279323528 539193154 641026833 641026833 527975566 527975566 394071504 394071504 311194132 311194132 428287256 428287256 472564046 472564046 470584418 711231661 711231661 1054870686 1054870686 394433804 861148308 897125530 897125530 391197526 573178432 573178432 823924500 992352567 992352567 977149751 975575319 1028719287 1028719287 687939621 568428176 39346657 352457752 352457752 328080474 378412146 378412146 371461784 371461784 34603536 570719603 883684674 883684674 296659097 296659097 103623960 103623960 143917856 147387508 170364020 170364020 53232384 53232384 10559808 10559808 11220288 11220288 8982784 96922692 157992620 157992620 151118148 279122000 386382714 1066400877 1066400877 776292192 776292192 580397072 584365505 584365505 496124064 580455584 722596024 722596024 733763784 733763784 704777000 281092290 50464832 50464832 102501912 271918146 868506873 1054344927 1054344927 120536632 336719880 336719880 270668034 768787841 768787841 716041557 716041557 528661803 923386418 923386418 366006280 366006280 231805532 231805532 849748443 849748443 659096976 1025911039 1025911039 938946237 1040515294 1040515294 751169165 751169165 881012811 1034085891 1034085891 1015235935 1048808229 1048808229 995433529 527215751 353988188 555819776 623060993 623060993 656550777 656550777 563097161 806646276 806646276 270711911 827282519 827282519 620758502 788208592 909189830 1009726286 1009726286 814414918 814414918 349619920 349619920 71731448 118222888 118222888 34419408 25882728 90562816 113980632 113980632 98840008 161006476 239338326 409864078 409864078 292624754 464013776 464013776 312224452 312224452 293634306 338444350 513982980 513982980 226510956 226891884 226891884 77539872 18169416 0 138471460 138471460 157862176 157862176 184184976 184184976 565455024 674173798 996672354 996672354 826508168 471268181 559209283 640819546 1065814971 1065814971 1046874526 1046874526 446630563 894604761 894604761 1068621843 1068621843 981545788 981545788 932316084 932316084 664408968 357674698 103292976 103292976 927021278 927021278 556402718 474014084 358828134 354476106 354476106 344377398 650967184 650967184 613102665 588062866 679597843 737623029 856888229 856888229 903233546 1002629292 1002629292 532172848 50885632 50885632 575587668 575587668 180374292 544227648 803521582 803521582 797287356 1041261207 1041261207 708690321 827852451 827852451 193987188 1000434324 1000434324 1047847671 1047847671 332757207 73853778 218675876 218675876 553860192 600179824 600179824 25210193 25302736 606754322 606754322 540598514 146581060 539283632 739496452 739496452 425621182 88837252 184936500 592830980 670845988 670845988 911368399 911368399 747986385 210449989 687019212 687019212 277744008 415500486 415500486 505548894 505548894 377886808 469899994 469899994 496900336 496900336 499335908 499335908 293851896 1004720631 1004720631 942096472 943743162 943743162 908231179 713566254 713566254 486868053 440691932 1016595552 1016595552 801798663 73343189 451952960 910430684 910430684 684745692 542515549 542515549 236143620 203171848 1060756912 1060756912 1045083151 1045083151 1006784048 757406092 757406092 252114988 522432828 705042544 911213211 911213211 160758820 913900370 913900370 89651880 89651880 95758184 95758184 87631656 295439904 556393154 556393154 565171344 602221041 618960885 618960885 121499448 388461256 977675098 977675098 981224275 981224275 870958186 303940699 880884104 880884104 816261386 268757011 323014450 919093226 919093226 385243066 691077517 911327883 911327883 444645506 350445146 840118407 840118407 814776390 814776390 480026427 558800848 1041683865 1041683865 327529473 377561178 939825233 939825233 981588544 1051851726 1051851726 556530765 556530765 627464496 627464496 668281593 668281593 588222044 776470528 776470528 672730214 674274516 674274516 587128785 860515890 860515890 324454608 324454608 307593808 60595761 165453444 735717577 735717577 537401464 221209524 755483036 755483036 792010752 792010752 546729572 686589832 686589832 826614560 826614560 319094913 187566226 178983056 178983056 246001664 246001664 1014374592 1014374592 8407683 790659032 882785022 882785022 1018290386 1018290386 370014351 713345304 724028578 1051432996 1051432996 889859272 889859272 759466024 868072771 868072771 333981088 685397109 958925608 958925608 705901749 580410908 580410908 853797136 853797136 782140541 265145369 618140932 696531453 696531453 162530148 406229600 406229600 269797890 322980160 322980160 56840408 216052168 216052168 270865010 509608406 509608406 373011398 225713416 225713416 282667524 416025798 416025798 350920076 339934216 148863812 148863812 145654528 145654528 349545386 349545386 28701608 358263298 358263298 394313850 586831587 586831587 369979928 912530649 912530649 875458840 639491875 591046065 542200977 41407744 41407744 571171776 613707461 682601864 785111692 785111692 216632592 179521536 204563168 204563168 66061296 412821158 412821158 52872032 152772468 152772468 35443888 60151696 345578514 345578514 109174872 272091240 299174594 299174594 277194760 277194760 144163220 378854032 450120334 450120334 341131648 235542940 235542940 239559992 239559992 184698940 127393908 71492796 412986780 412986780 448467456 448467456 495259420 495259420 232525548 232525548 1005191242 1005191242 992086096 1073107230 1073107230 337769116 884047954 1049780759 1049780759 638651168 418803740 442552608 574982328 574982328 416962560 230531018 115479000 317281690 317281690 709008404 709008404 952472307 952472307 723203637 624259040 689315936 689315936 221284220 617271140 808900218 808900218 752358036 765231940 892487600 892487600 873609003 584324576 920530783 920530783 444037518 537425029 537425029 488759562 755053732 915054538 915054538 843577491 943647369 943647369 660264633 660264633 624403949 662530392 662530392 195898432 215272140 215272140 439538454 828377889 828377889 728493020 728493020 695561304 423936160 236243152 236243152 169134612 406869008 724881924 841281081 908017179 908017179 682851615 173783652 324976020 608466418 608466418 366617222 839595027 839595027 861749760 861749760 572099019 714096480 714096480 750949935 750949935 473435020 678220723 678220723 811206145 872075587 885183284 885183284 374653062 401679146 401679146 363176974 362815684 157947300 134305792 23522052 24480160 24480160 19188000 176493056 176493056 9511488 43065920 43065936 45154576 45154576 34603024 34603536 34603536 335614042 335614042 364810890 364810890 68683272 68683272 59918896 33603600 294257592 294257592 523504294 523504294 447602508 447602508 312324966 404175366 404175366 735994759 979741317 979741317 682531489 682531489 520829671 860590308 860590308 684267620 684267620 695628800 695628800 549589185 679283716 679283716 138161536 223643872 539004224 674007424 674007424 696796261 766028076 766028076 538496869 681078599 681078599 742441101 742441101 965266637 965266637 483692684 774250061 774250061 351153058 658391400 658391400 537576025 79281520 203767112 218576940 218576940 152357376 939945480 939945480 723091256 1067653725 1067653725 701639468 259166969 826426072 826426072 709655754 709655754 604016648 738332685 961544208 961544208 39326250 853151312 853151312 738917451 1072170444 1072170444 495901806 1059655072 1059655072 593663504 847714050 847714050 384303607 768484906 768484906 671330709 1012796424 1012796424 516660392 855747823 855747823 1011585031 1011585031 983218003 983218003 811523443 811523443 670064577 670064577 586837432 677638533 677638533 730003189 730003189 556399209 556399209 773979344 773979344 168642584 29189344 221316072 221316072 267981240 267981240 180068564 95080428 149044676 149044676 41944576 136780240 229497028 229497028 202646144 217187292 235606604 235606604 145472332 204737292 204737292 48521308 276272064 276272064 387763512 387763512 63736938 178555392 355519772 355519772 345115234 230294018 169077264 411889301 849310455 849310455 988217285 988217285 814654496 881181632 1024022870 1024022870 883036491 933433667 933433667 853854278 822218874 644843705 876749629 995506353 995506353 638372889 637553664 827341827 1015245370 1015245370 806988741 650759710 96076656 54640800 54640800 860600980 958189095 958189095 772785587 915536072 915536072 619231883 30804480 29495520 865076144 865076144 633042106 633042106 342360328 342360328 281186696 281186696 271134840 478204522 478204522 380633946 288358520 39392084 156923156 156923156 152066624 152066624 160958052 160958052 144682820 144682820 54951972 50039920 164216800 174760069 174760069 164625636 1016373596 1016373596 1070770115 1070770115 987731519 1043452013 1043452013 671621149 808233249 808233249 458214035 400258734 598073492 598073492 658209881 658209881 1068931059 1068931059 986864654 996334560 996334560 721949169 637454472 637454472 814374547 814374547 538184193 111748720 302452907 302452907 558163536 597379687 948961863 948961863 433198897 37224576 5841792 146399640 249038556 685965904 712192917 712192917 84840564 127934148 127934148 191142016 191142016 82330368 560760848 594068913 594068913 689782272 689782272 827462214 827462214 822156321 969882855 969882855 755023917 755023917 406094752 452349714 452349714 445404080 228553596 228553596 162751792 176924980 199813808 199813808 148236996 584537201 664008221 664008221 539902592 554737664 571732497 606114329 606114329 624223769 624223769 55336881 57386896 821214480 821214480 304101472 834740643 834740643 598714401 694865094 832969059 1002735013 1002735013 587912241 187861553 187436340 703598912 703598912 286953732 286953732 62002032 62002032 54184480 31442976 139278516 139278516 162877204 162877204 581881828 726799029 945590488 945590488 679596598 991421798 991421798 405589254 405589254 624951465 1040604428 1040604428 812419847 812419847 774361936 275106584 275106584 376742030 376742030 371335694 403911174 437400090 511771680 529081470 529081470 358197494 354796162 354796162 106491032 72483096 72483096 33823360 36700464 36700464 95954496 95954496 203045189 798338123 1023928045 1023928045 375609280 947530460 947530460 225106106 33718580 458827544 527975566 527975566 394071504 470989800 470989800 421953570 421953570 438704406 438704406 189320502 232911108 232911108 153479460 702605668 702605668 176177649 861148308 1018437537 1018437537 443366343 546845479 1062208086 1062208086 975778204 975778204 938619870 938619870 1028719287 1028719287 729850414 842043954 842043954 371200802 371200802 908202001 908202001 934876699 934876699 881866637 954388935 954388935 410654607 444098470 460354592 460354592 95224312 95224312 91750888 29950512 25476352 25476352 79440976 79440976 75862136 119688288 119688288 65399976 69858880 96922692 157992620 157992620 162978660 162978660 237286769 1066400877 1066400877 776292192 776292192 580397072 584365505 584365505 539791892 580455584 722596024 722596024 733763784 733763784 704777000 314720592 321868450 321868450 281917792 271918146 778254338 1054344927 1054344927 385645010 385645010 336719880 404331910 404331910 810038528 810038528 480732560 920880747 923386418 923386418 366006280 366006280 231805532 231805532 490223582 565388120 565388120 724829491 1057889910 1057889910 1040515294 1040515294 751169165 751169165 973896762 1024371771 1024371771 1015235935 1048808229 1048808229 1044530820 527215751 491263052 898237687 898237687 645922855 537081888 563097161 563097161 806646276 806646276 270711911 827282519 827282519 780675156 788208592 909189830 1009726286 1009726286 814414918 814414918 460426163 1006529279 1006529279 672375845 1016078863 1016078863 469868771 512643542 602781968 602781968 854404563 911550275 911550275 156894496 156894496 467318436 467318436 464013776 528353824 528353824 270140062 136320490 217197132 217197132 226510956 226891884 226891884 95412752 136148856 136148856 138471460 138471460 157862176 157862176 153748356 163678020 565455024 674173798 996672354 996672354 551277391 471268181 559209283 640819546 1065814971 1065814971 452407056 452407056 421205914 894604761 894604761 885039152 885039152 914807220 914807220 932316084 932316084 664408968 357674698 86718488 86718488 927021278 927021278 604138368 660525397 750645069 750645069 419106165 587289856 587289856 615779145 615779145 889246171 889246171 674725901 269608322 269608322 148399265 1002629292 1049464923 1049464923 578663940 578663940 575587668 575587668 715941408 715941408 544227648 413180033 502827040 502827040 228978156 499172154 499172154 153093488 193987188 1000434324 1000434324 1047847671 1047847671 332757207 75888448 627461505 627461505 553860192 589461569 589461569 25210193 790604586 1059451108 1059451108 540598514 146581060 237129752 739496452 739496452 425621182 195264759 637613427 1067153535 1067153535 670845988 911368399 911368399 747986385 210449989 687019212 687019212 277744008 415500486 415500486 203426250 123896784 123896784 488346400 488346400 477157522 353147970 550869177 626258601 626258601 1004720631 1004720631 788652093 943743162 943743162 945815624 1009117615 1009117615 486868053 440691932 480124582 823412368 823412368 131496069 215165800 653744261 684745692 684745692 542515549 542515549 236143620 420541300 1060756912 1060756912 738722816 738722816 738197517 705790249 621154830 981753890 1065666687 1065666687 1064658137 406613627 173305072 913900370 913900370 286282670 203158656 203158656 95758184 277287624 277287624 274078338 158540328 565171344 602221041 602221041 220738600 220738600 84610348 537080640 939790350 939790350 820195779 558301635 816917474 880884104 880884104 127844449 255146024 255146024 919093226 919093226 385243066 385243066 537279896 604230669 639306633 642591897 840118407 840118407 269782340 480026427 753554716 835629249 1041683865 1041683865 327529473 327529473 394383410 901190490 901190490 238043456 238043456 556530765 724576236 724576236 627464496 668281593 668281593 995107328 995107328 939708423 672730214 1020970951 1020970951 954979910 954979910 860515890 324454608 324454608 307593808 154953780 194034716 735717577 735717577 571508801 690282376 755483036 755483036 792010752 792010752 625580569 752917713 752917713 552263840 583849463 583849463 741552536 741552536 517137274 750934771 750934771 323443216 647040661 791471931 791471931 512035982 308625412 1018290386 1018290386 370014351 1006709158 1006709158 426057743 6629760 124098608 124098608 201821318 407664652 407664652 333981088 333981088 328069874 328069874 384305170 814704328 814704328 853797136 853797136 770030863 265145369 799958216 799958216 558366724 162530148 406229600 406229600 269797890 322980160 322980160 161548772 461674592 461674592 440924310 509608406 509608406 423245778 423245778 225713416 80455500 276564610 350920076 350920076 339934216 272893954 81062600 81062600 72837832 349545386 349545386 28046688 357281442 357281442 94683464 94683464 360022706 369979928 912530649 912530649 875458840 639491875 591046065 542200977 41407744 41407744 571171776 613707461 682601864 682601864 85022640 85022640 36176968 204563168 204563168 30515980 34276656 34276656 5507712 275329088 283776450 283776450 272313138 305713850 305713850 359024512 359024512 303664338 356524098 356524098 282141416 274726978 378854032 450120334 450120334 340386954 340402368 340402368 92430552 58798280 164659328 187988780 252891708 416642620 417074886 417074886 99237574 495259420 495259420 625086633 625086633 1005191242 1005191242 343938551 161794404 276826424 612893988 691537452 1056048905 1056048905 638651168 591332548 483082061 1072093460 1072093460 416172076 416172076 115479000 115479000 115470336 8987712 273472 86048 17035296 625828032 625828032 160124884 221284220 221284220 617271140 617271140 257464996 848563050 848563050 450742781 228854124 534712320 534712320 287252098 272261248 188270776 173815980 90504748 488759562 958506499 958506499 779150801 815451487 815451487 587668843 383770459 750359656 750359656 158516697 694707793 694707793 656162293 656162293 439538454 828377889 828377889 728493020 892040038 892040038 423936160 336593043 577515147 577515147 456130991 724881924 841281081 908017179 908017179 682851615 975775996 975775996 925769019 608466418 156430361 559519247 559519247 846618967 846618967 572099019 634348883 999202276 999202276 942549371 745430828 745430828 678220723 71567496 71567496 369547404 369547404 370011162 401679146 401679146 363176974 362815684 150848020 150848020 137691924 168077844 168077844 19188000 21268480 34219216 34219216 15678912 3619584 11621056 15501440 15501440 12250304 328847426 335614042 335614042 364810890 364810890 8837184 373703800 373703800 324819098 294257592 372571996 523504294 523504294 447602508 447602508 131238384 131238384 100993460 148974360 148974360 107028888 33892368 33892368 33824768 148676608 148676608 684267620 684267620 671383076 671383076 549589185 679283716 679283716 171966512 223643872 539004224 674007424 674007424 696796261 766028076 766028076 232787052 604639232 604639232 67707912 420413668 420413668 496244458 496244458 118169199 968756575 1036275295 1059630399 1061629496 1061629496 101258336 204982532 204982532 222622502 222622502 939945480 939945480 630146467 1067653725 1067653725 918585400 834715875 818946945 818946945 709655754 709655754 604016648 738332685 961544208 961544208 424675328 853151312 1057299274 1057299274 867843455 613322804 495901806 1059655072 1059655072 634179640 847714050 1002463704 1008815181 1008815181 689992860 671330709 1012796424 1012796424 993627969 993627969 855747823 616069570 616069570 835249643 835249643 538758657 218503212 240693762 570859620 570859620 677638533 677638533 730003189 730003189 556399209 556399209 773979344 773979344 142952448 134816768 134217732 84003884 267981240 267981240 180068564 155485864 155485864 204531968 204531968 177735296 229497028 229497028 202646144 38274192 38274192 15729600 15729600 15729600 234492302 295175778 365462786 428230348 428230348 261233260 68436864 464804812 464804812 355519772 345115234 386868286 386868286 411889301 849310455 849310455 988217285 988217285 814654496 916726907 1024022870 1024022870 641788180 773859549 853854278 853854278 530653454 350758568 350758568 475548492 475548492 411049302 459065466 459065466 440075710 440075710 382052702 382052702 260681208 121619276 221699192 221699192 592933904 592933904 111868048 915536072 915536072 619231883 648229209 648229209 865076144 865076144 543331649 824414306 836822114 836822114 11097536 40375472 54735024 163676676 163676676 147878576 147878576 39392084 156923156 170318100 170318100 168781056 160958052 160958052 22884000 22884000 22883840 18377248 54785024 174760069 174760069 164625636 164625636 915610480 915610480 367322498 367322498 1043452013 1043452013 361037930 633608885 633608885 458214035 400258734 598073492 598073492 658209881 658209881 1068931059 1068931059 986864654 996334560 996334560 486613038 637454472 637454472 298453618 636633768 636633768 349195563 99757104 170355312 692970677 692970677 281894102 671335665 830587158 830587158 822206499 702177292 702177292 685965904 712192917 712192917 243347780 243478620 243478620 541624541 786597472 786597472 739080388 739080388 599990272 719488241 719898069 719898069 570707396 211510300 211510300 617410764 1034333724 1034333724 1026256203 915558510 531372846 531372846 516590704 427501290 93592156 294835776 355187738 411377106 502884284 584537201 664008221 664008221 553037600 553037600 624877321 624877321 78548265 29933696 566777824 566777824 565409248 821214480 821214480 286193520 834740643 834740643 839549251 839549251 289374354 13643296 42638338 587226226 864190513 864190513 703598912 703598912 568463808 568463808 62002032 75631016 104060512 104060512 139278516 139278516 162877204 550378689 550378689 187645236 945590488 945590488 679596598 679596598 454221893 195557748 574543918 811877320 1066379818 1066379818 812419847 812419847 774361936 996901904 996901904 706077782 706077782 898703915 999358767 999358767 645993560 814294083 814294083 537403458 88367754 1707520 1973760 72483096 72483096 63863472 19038464 34511824 95954496 95954496 203045189 798338123 1023928045 1023928045 375609280 947530460 947530460 225106106 875947017 898287982 898287982 656253305 656253305 470989800 706466680 706466680 421953570 973509702 1025918015 1057459519 1057459519 599554833 599554833 973115204 973115204 715461978 715461978 1018437537 1018437537 729663170 729663170 1062208086 1062208086 975778204 975778204 938619870 938619870 631613844 809642941 809642941 842043954 842043954 371200802 371200802 908202001 908202001 934876699 934876699 881866637 954388935 954388935 939708676 997433656 1014055476 1014055476 897442056 897442056 165556240 769565357 769565357 113089080 705665241 705665241 250503068 173202584 119688288 65399976 69858880 347589830 347589830 232783596 535846970 535846970 219322908 219322908 50645040 765599384 765599384 547622789 135865664 822097310 822097310 625392060 625392060 382392663 22204544 316702770 316702770 377749528 377749528 321868450 281917792 412805649 412805649 52951344 549348977 969493586 969493586 257500860 516696674 516696674 810038528 810038528 480732560 920880747 920880747 898324587 656805625 883214667 978617119 978617119 885003659 580911441 580911441 724829491 1057889910 1057889910 429078148 429078148 30020832 654744820 973896762 973896762 746899533 420443243 0 1044530820 1044530820 342034088 944112616 944112616 898237687 993913353 993913353 227213850 190133593 773359765 773359765 571220052 605636703 780675156 780675156 181404372 383959878 981945682 981945682 641647257 642692559 952423426 1006529279 1006529279 672375845 1016078863 1016078863 469868771 512643542 602781968 602781968 854404563 911550275 911550275 145269702 392284094 489770812 489770812 312635090 528353824 528353824 413798202 439489738 502274808 502274808 222251008 222251008 211515144 95412752 136148856 136148856 100727424 100727424 151802096 152749776 152749776 18276000 18276000 17552704 17552704 2097408 324786024 469771466 469771466 918557720 918557720 920124122 920124122 452407056 421205914 280960596 903615091 903615091 885039152 914807220 914807220 606288554 662051769 751595776 753925581 1047152735 1047152735 846672927 851689197 903879963 903879963 750645069 750645069 419106165 587289856 587289856 615779145 615779145 889246171 889246171 674725901 269608322 269608322 148399265 648054386 1049464923 1049464923 841532691 841532691 348327647 5878917 715941408 715941408 844393472 844393472 602524359 304450901 961110342 961110342 805693443 811719515 1043782070 1043782070 741004557 741004557 814441213 814441213 747312566 747312566 627461505 175772544 545850197 545850197 592689432 790604586 1059451108 1059451108 555500824 566002456 566002456 723258886 723258886 470342052 195264759 637613427 1067153535 1067153535 816033308 816033308 811089094 134217732 245941596 245941596 351291038 351291038 421141950 486835544 486835544 438366616 438366616 488346400 488346400 477157522 421044220 550869177 626258601 626258601 559552161 559552161 465970347 566521475 809549955 1034174564 1034174564 1009117615 695346508 695346508 870175946 870175946 823412368 351672209 351672209 945298951 945298951 141454210 38306448 38306448 41894144 420541300 420541300 521677625 738722816 738722816 738197517 705790249 355298833 981753890 1065666687 1065666687 1064658137 394553607 436631606 436631606 286282670 286282670 203158656 203158656 99397576 277287624 277287624 274078338 158540328 494336998 494336998 208998380 220738600 220738600 285804846 537080640 856953354 856953354 820195779 558301635 816917474 816917474 569512290 668575400 668575400 255146024 517807234 517807234 750433519 750433519 573884655 604230669 887996363 887996363 754691535 273971718 273971718 145888068 753554716 835629249 835629249 810094724 438747575 438747575 151239091 824259958 824259958 1067772736 1067772736 446964182 724576236 724576236 235962596 239124636 992535737 995107328 995107328 939708423 793510917 1020970951 1020970951 954979910 954979910 663941137 896839698 896839698 154953780 180368916 194034716 638902864 638902864 606079232 690282376 690282376 87698688 592801960 625580569 625580569 752917713 752917713 552263840 583849463 583849463 741552536 741552536 687988773 750934771 750934771 202765928 647040661 894080755 894080755 445344232 556015795 882190806 882190806 295842112 1006709158 1006709158 552376450 325296312 547781034 572533472 572533472 586103471 660833849 660833849 984280755 984280755 849165932 734053373 814704328 814704328 722774207 656801947 648024974 103841816 799958216 799958216 549832137 549832137 912558550 912558550 610885824 940118128 940118128 416006594 461674592 963167655 963167655 566400419 951125893 951125893 572624594 553965856 553965856 543454377 623518761 624693033 624693033 539037312 85205512 85205512 72837832 15618504 6026880 5842560 5865472 5865472 26646528 26646528 26468736 31844832 41970256 41970256 64262752 64262752 17981648 30094080 30094080 28785504 35496272 106393924 239806108 259743348 259743348 258706152 36176968 22654416 171499384 481108044 481108044 332804658 53730750 275329088 283776450 283776450 272313138 305713850 305713850 359024512 359024512 303664338 356524098 356524098 282141416 274726978 341835840 341835840 339764490 340386954 340402368 340402368 92430552 36088296 209866784 209866784 252891708 416642620 417074886 417074886 378083212 407897224 407897224 625086633 807966733 807966733 1008127307 1008127307 345295434 45631556 612893988 731331452 1056048905 1056048905 632563790 950930759 950930759 1072093460 1072093460 698488162 828505125 828505125 1056255563 1056255563 716251989 484762267 449418470 449418470 625828032 625828032 488950062 488950062 254189430 254189430 85724712 785782005 848563050 848563050 680389102 680389102 599650161 566138838 463412950 430444602 450375918 494857816 494857816 201860864 958506499 958506499 779150801 815451487 815451487 587668843 383770459 750359656 750359656 541658520 694707793 694707793 656162293 656162293 16777248 100963478 491707566 600133586 892040038 892040038 403735256 403735256 577515147 577515147 456130991 456130991 107350788 302389266 302389266 247642782 975775996 975775996 925769019 285738018 285738018 75499170 172032144 172032144 265291726 447985526 447985526 999202276 999202276 942549371 745430828 745430828 236419088 71567496 71567496 236719668 236719668 265045004 265045004 555617009 596234449 596234449 700158401 700158401 546996944 168077844 708987264 722989189 722989189 673867984 673867984 675334500 675334500 867756835 867756835 33753168 813709907 813709907 328847426 76608568 67293722 117621912 117621912 373703800 373703800 324819098 84857960 372571996 401029218 401029218 247599324 247599324 131238384 131238384 141912141 148974360 211813256 545399113 545399113 680200876 680200876 702020325 702020325 596387173 565263189 538602889 671668229 688339812 688339812 208717896 171966512 171966512 167773216 178260992 231507260 231507260 59509872 536936448 536936448 604639232 604639232 67707912 67707912 282067976 496244458 496244458 118169199 968756575 1036275295 1059630399 1061629496 1061629496 838798568 838798568 828326083 656233425 614886101 497204633 723670104 723670104 238650448 918585400 918585400 1039836682 1039836682 647120365 670970264 670970264 531418396 671821971 671821971 424675328 474531466 474531466 1057299274 1057299274 867843455 701311397 830023587 859553377 859553377 968710613 968710613 1002463704 1008815181 1008815181 416447718 307376656 448884340 815332646 993627969 1001398527 1003941944 1003941944 923940718 923940718 835249643 838883263 838883263 240693762 240693762 47531618 33763344 33763344 35692816 35733520 35733520 209838536 236232796 237062872 237062872 160711492 232292524 232292524 224528588 224528588 205050628 205050628 155485864 204531968 204531968 212927308 212927308 99208524 73720000 222298300 222298300 219218732 205074324 267066444 267066444 305941176 365462786 428230348 428230348 261233260 717642824 717642824 646187176 547937598 556163413 674370309 709632605 1020673252 1020673252 840708433 840708433 704784720 766561796 916726907 916726907 397936663 780480788 780480788 279306502 530653454 530653454 459784208 350758568 428128034 428128034 411049302 459065466 459065466 383041642 282119882 382052702 382052702 260681208 121619276 221699192 221699192 7214929 67346056 67346056 273251529 337798480 610993360 648229209 648229209 59458104 543331649 543331649 824414306 836822114 836822114 268513600 40375472 54735024 54735024 63090704 63090704 39026832 39026832 16320256 170318100 170318100 168781056 28745568 28745568 22884000 39609408 46678608 46678608 177596272 194527280 194527280 27472224 27472224 915610480 915610480 60864067 106745496 520423968 520423968 361037930 470065286 470065286 245440860 497033446 497033446 190130868 211709528 211709528 379756422 451564870 451564870 440675184 466809560 486613038 840995054 840995054 499269907 636633768 636633768 848128377 848128377 911551131 911551131 773731462 281894102 671335665 830587158 830587158 822206499 820044181 820044181 802329953 802329953 767213568 641911490 618775636 1021694102 1021694102 786597472 786597472 739080388 739080388 599990272 719488241 719898069 719898069 570707396 211510300 405063942 405063942 1034333724 1034333724 1026256203 915558510 531372846 531372846 516590704 427501290 79576008 294835776 355187738 411377106 502884284 502884284 562201537 562201537 553037600 553037600 624877321 624877321 78548265 84362760 566777824 566777824 565409248 565409248 286218064 21733376 27987424 66302002 839549251 839549251 289374354 304875618 304875618 587226226 864190513 864190513 285486144 548429376 568463808 568463808 48739936 75631016 104060512 104060512 89468488 89468488 117861467 550378689 550378689 187645236 546173509 656108118 656108118 977674392 977674392 619210895 574543918 811877320 1066379818 1066379818 590951283 256437970 332721485 996901904 1059866367 1059866367 946581564 898703915 999358767 999358767 645993560 814294083 814294083 537403458 375247552 375247552 109378136 109317208 63863472 63863472 56473008 56473008 27746240 35701008 35701008 194807874 421053990 637965908 980008999 980008999 484633749 270831282 875947017 898287982 898287982 656253305 656253305 228326452 706466680 706466680 642515102 973509702 1025918015 1057459519 1057459519 599554833 599554833 973115204 973115204 715461978 715461978 514851678 509294016 729663170 729663170 1060639636 1060639636 937033955 937033955 633602275 392511698 631613844 809642941 809642941 549044799 549044799 219549456 537910588 691179895 691179895 477759118 745599485 745599485 715862207 715862207 939708676 997433656 1014055476 1014055476 897442056 897442056 795557246 795557246 826541699 826541699 705665241 705665241 319046776 847337682 914354947 914354947 630435808 350506176 347589830 232783596 535846970 535846970 421643040 799589743 1034470781 1034470781 655917133 663749481 739771721 822097310 822097310 625392060 998921461 998921461 794759704 947939432 947939432 377749528 377749528 96469128 96469128 412805649 412805649 52951344 979845924 979845924 969493586 341448096 516696674 883431595 883431595 607525231 497577675 544031752 891316298 891316298 656805625 883214667 978617119 978617119 885003659 580911441 580911441 628039062 1023748143 1023748143 333975433 182985476 193696868 193696868 898350118 898350118 746899533 420443243 755692929 755692929 370836001 342034088 944112616 944112616 806169603 993913353 1053057717 1053057717 932571774 912332761 912332761 1015845059 1015845059 882145516 882145516 631046772 631046772 981945682 981945682 641647257 642692559 952423426 952423426 33951760 33556496 33556496 33751168 293642864 421556352 421556352 168173584 168173584 49284688 49284688 152899360 392284094 489770812 489770812 519428852 519428852 371514486 413798202 439489738 502274808 502274808 222251008 222251008 211515144 84485192 213289480 213289480 144888132 68442956 151802096 152749776 152749776 26310912 681745812 681837696 715790208 715790208 324786024 469771466 469771466 918557720 918557720 920124122 920124122 356696880 352577813 133293048 904256580 904256580 563274057 552762880 1008058336 1021249483 1021249483 751595776 823941091 1047152735 1047152735 846672927 851689197 903879963 903879963 750398486 806601324 806601324 402911238 491152328 491152328 400315514 850414762 850414762 268718657 583457666 840094227 840094227 648054386 892913451 892913451 841532691 841532691 834649105 90477427 537423732 565757281 844393472 844393472 602524359 456207184 961110342 961110342 805693443 1000363350 1043782070 1043782070 741004557 741004557 814441213 814441213 1068001750 1068001750 491159761 107664260 140841729 673587713 673587713 740839205 755942430 755942430 555500824 566002456 827809756 827809756 723258886 470342052 142157700 142157700 117998848 119587128 816033308 816033308 970369367 970369367 738426534 840894592 840894592 351291038 421141950 486835544 486835544 438366616 438366616 415326484 381691922 421044220 421044220 377717282 377717282 365880365 1024083162 1024083162 925713303 980462907 980462907 1034174564 1034174564 879045003 695346508 695346508 870175946 1054225503 1054225503 608270383 520587287 945298951 945298951 305178117 672402457 672402457 170206548 173020869 213115664 521677625 812332197 812332197 727328164 1063381261 1063381261 954515496 954515496 728705191 677723451 970538419 970538419 879502336 554808225 292183585 292183585 99397576 99397576 78971072 731399280 731399280 1054264151 1054264151 828790954 386057170 817894027 817894027 732965484 732965484 856953354 856953354 654710841 269632057 555229936 583607505 583607505 668575400 668575400 271682330 912306483 912306483 750433519 750433519 705762967 705762967 887996363 887996363 754691535 273971718 273971718 369494278 465193286 465193286 810094724 810094724 438747575 520405048 520405048 824259958 824259958 1067772736 1067772736 1066420891 1066420891 902866499 926770175 926770175 992535737 992535737 927389883 927389883 793510917 377506922 377506922 766633780 766633780 663941137 896839698 896839698 275931584 180368916 180368916 242196736 606079232 606079232 774482304 774482304 84686336 84686336 1772584 16908320 546185408 546185408 600689793 600689793 600575217 335608130 567761320 687988773 687988773 392430115 202765928 261033018 894080755 894080755 445344232 556015795 556015795 423034912 423034912 451861782 552376450 552376450 325296312 547781034 572533472 572533472 586103471 660833849 660833849 984280755 984280755 849165932 734053373 734053373 722774207 722774207 656801947 648024974 637896860 210120776 210120776 549832137 549832137 912558550 912558550 610885824 940118128 940118128 416006594 174159012 963167655 963167655 566400419 951125893 951125893 696518757 696518757 553965856 543454377 623518761 624693033 624693033 539037312 85205512 85205512 68225544 15529736 71202248 71202248 5865472 5865472 29626880 29626880 26224896 28650336 41970256 41970256 43352144 43352144 5471232 11186304 41772896 66935984 66935984 106393924 239806108 259743348 259743348 258706152 201590796 201590796 171499384 481108044 481108044 332804658 215854256 329620540 329620540 324132994 324132994 25674706 135732660 135732660 23875472 45622624 147476224 151117860 151117860 137186592 104859888 109610056 109610056 524552 4251840 8462400 524292318 524292318 209866784 507311138 507311138 216402792 216402792 378083212 378083212 407897224 407897224 468329796 807966733 807966733 1008127307 1008127307 568197424 565320213 582099040 731331452 994120307 994120307 701498085 950930759 950930759 927073345 829370450 698488162 828505125 828505125 1056255563 1056255563 716251989 484762267 449418470 449418470 663503906 663503906 488950062 808459040 1034587936 1034587936 85724712 823006211 823006211 658530539 884976256 884976256 867880992 867880992 475194290 475194290 450375918 494857816 494857816 201860864 369770496 632131746 632131746 394270536 394270536 57168040 146911288 146911288 119876832 541658520 625556961 625556961 123905784 671293280 671293280 801671483 967235943 967235943 346572353 269756416 403735256 403735256 349178456 456171524 456171524 369373960 134300470 302389266 302389266 247642782 346692421 947795395 947795395 829674634 829674634 811246821 811246821 420160746 844694147 844694147 139072656 184672308 558722605 558722605 548434844 284797502 419512362 702925394 702925394 594282809 353994813 1052150010 1052150010 579099766 596234449 596234449 700158401 700158401 546996944 141626180 708987264 722989189 722989189 673867984 673867984 675334500 675334500 867756835 867756835 33753168 813709907 813709907 100803192 100803192 67240216 117621912 117621912 314201674 318771264 318771264 295749922 321179914 360974442 360974442 247599324 247599324 201476288 201639948 205572108 240199884 240199884 545399113 545399113 680200876 680200876 702020325 702020325 596387173 565263189 538602889 671668229 688339812 688339812 208717896 75877068 214436872 214436872 201624644 240388364 240388364 151014928 757907860 757907860 613119780 613119780 1056768 21561408 492122702 513746624 513746624 486867518 486867518 906249168 920955225 920955225 390619674 838798568 838798568 828326083 656233425 614886101 497204633 723670104 723670104 238650448 313333510 313333510 1039836682 1039836682 647120365 670970264 670970264 22681248 671821971 671821971 512005264 474531466 474531466 893208510 893208510 822421539 701311397 830023587 859553377 859553377 968710613 968710613 679497749 285557792 553919717 553919717 697041184 697041184 972171394 1002562535 1002562535 1003941944 1003941944 923940718 923940718 739390171 838883263 838883263 915678797 915678797 832733298 547050564 772212757 799054929 799054929 743574729 773394845 773394845 552171276 237062872 160711492 232292524 232292524 224528588 224528588 205050628 205050628 119066104 23643552 160966536 215641260 215641260 99208524 152173360 222298300 236006076 236006076 219754164 267066444 267066444 305941176 305941176 50596922 290226304 348411634 717642824 717642824 646187176 547937598 556163413 674370309 709632605 1020673252 1020673252 840708433 1021913616 1021913616 704784720 170321686 170321686 78068040 780480788 952229891 952229891 805429447 459784208 459784208 291977634 428128034 428128034 419746624 203243660 203243660 101088768 239897740 445568580 447757654 447757654 272852182 3740418 8651584 8651584 347082008 377537162 377537162 273711194 111194496 111194496 59458104 59458104 281735816 337253898 337253898 37212480 268513600 268513600 783360 254976 2224128 23323008 23323008 16356800 37431920 37431920 38214272 160123716 160123716 28745568 28745568 20203456 47982928 47982928 47496736 177596272 194527280 194527280 146874564 146874564 874415712 874415712 392205754 398987706 644350965 644350965 412484808 471484674 471484674 245440860 497033446 587854560 587854560 781951424 781951424 436238383 956792979 956792979 677429637 491061251 491061251 927505472 927505472 843454611 920036427 920036427 848128377 848128377 911551131 911551131 773731462 547750656 547750656 546708033 200436357 1032042028 1032042028 820044181 802329953 802329953 767213568 641911490 618775636 1021694102 1021694102 771861608 537137428 250162676 562372713 738956380 738956380 102411112 166123904 166123904 161775714 405063942 405063942 293620068 102294074 441418374 441418374 348337834 348337834 271392706 81776202 203169792 203169792 237126728 237126728 209344044 216309228 216309228 85757692 83937792 83937792 93634920 93634920 28447520 84362760 84362760 31903072 21906528 31106514 31106514 57575696 57575696 269158162 294447922 294447922 281537650 304875618 304875618 285421602 285421602 60033648 285486144 295702624 295702624 49543760 49897488 63842784 71885296 71885296 19925032 34094600 69141520 69141520 17176608 17176608 433834404 951154622 951154622 977674392 977674392 619210895 100902225 276050560 276050560 280369986 280900096 708761472 708761472 129187075 1059866367 1059866367 946581564 471908622 471908622 436392714 576754468 576754468 407896201 307233794 375247552 375247552 109378136 109317208 107738520 107738520 106877576 74779264 108332112 108332112 243010013 796428187 796428187 893881622 980008999 980008999 484633749 270831282 907043872 924444219 924444219 789433395 723043893 537270302 537270302 642515102 813997106 813997106 329698896 455481654 617480304 917048603 917048603 886187448 886187448 553069906 514851678 624304548 746292829 746292829 286007668 286007668 885003824 937033955 937033955 633602275 683993152 683993152 874643968 874643968 281055832 226497304 226497304 537910588 539863056 624823705 624823705 745599485 745599485 829470083 829470083 676074422 728963365 728963365 5366400 89251216 699904929 795557246 795557246 826541699 993346452 993346452 624741137 319046776 847337682 914354947 914354947 630435808 350506176 93058152 93058152 186287216 421643040 421643040 799589743 1034470781 1034470781 655917133 663749481 739771721 739771721 262668609 35128320 998921461 998921461 794759704 947939432 947939432 88344776 88344776 96469128 282692242 306539090 306539090 292150372 979845924 979845924 861403827 356004768 356004768 883431595 883431595 607525231 825910458 825910458 632403809 579353576 322964218 29495520 110725808 110725808 373566464 896679611 896679611 896152394 1023748143 1023748143 333975433 182985476 193696868 193696868 172614804 39414468 15752232 111148153 755692929 755692929 370836001 813997392 813997392 623257070 598422897 310713635 1053057717 1053057717 932571774 912332761 912332761 1015845059 1015845059 882145516 882145516 631046772 631046772 411142400 431956710 431956710 533280814 939065239 939065239 847022968 547805505 987097751 987097751 454127824 454127824 553857462 553857462 745162009 988358759 988358759 877790476 359711436 427552186 427552186 519428852 519428852 407633166 407633166 241771072 241771072 267479800 267479800 55487388 691280455 691280455 461635890 588650601 588650601 292690262 149604114 958073058 971244545 971244545 831255651 681837696 715790208 715790208 695573984 42001556 183119953 639239443 880431512 880431512 794309273 794309273 779847092 612501347 904256580 904256580 563274057 740706796 1008058336 1021249483 1021249483 563744778 823941091 823941091 553878528 968319778 968319778 455675432 933929851 982579205 1017460288 1017460288 267707005 491152328 491152328 400315514 850414762 850414762 268718657 583457666 840094227 1049889359 543408720 586363857 721369041 721369041 897984420 897984420 536936573 537423732 565757281 565757281 950020360 950020360 1008747748 1008747748 904447467 237809292 1000363350 1000363350 993661696 627579290 627579290 318841152 318841152 1068001750 1068001750 537920641 537198980 672662656 673587713 673587713 760373034 924743436 924743436 503897133 373205866 827809756 827809756 178345771 178345771 142157700 142157700 18417544 491457552 491457552 550075964 970369367 970369367 910046225 840894592 840894592 82576216 383042498 383042498 205783260 215583252 506789080 506789080 940843039 1028610560 1028610560 816896775 816896775 579133452 1024083162 1024083162 925713303 980462907 980462907 812387715 879045003 1050031644 1050031644 514255795 553853494 1054225503 1054225503 608270383 520587287 440494800 412404294 305178117 672402457 672402457 215532504 260195152 260195152 303093776 812332197 1000725094 1000725094 1063381261 1063381261 954515496 954515496 728705191 677723451 970538419 970538419 879502336 554808225 292183585 292183585 36700944 50146981 50334096 731399280 731399280 1054264151 1054264151 828790954 386057170 817894027 817894027 732965484 732965484 351304608 829659956 829659956 776008759 776008759 621331497 621331497 319740978 948057306 948057306 912306483 912306483 708143547 874227457 874227457 705762967 218095807 281389056 281389056 403490252 403490252 472736774 472736774 465193286 880062932 1042217807 1042217807 520405048 520405048 286316640 420528678 420528678 219539492 1066420891 1066420891 902866499 926770175 926770175 871989232 877019184 980119701 980119701 253049371 118819336 118819336 726790060 726790060 394346706 394346706 286850000 275931584 34132032 42603600 42603600 611617864 611617864 774482304 774482304 139117837 139117837 56656041 556015776 673914260 673914260 600689793 600689793 600575217 541249856 567761320 567761320 552715089 392430115 109132860 261033018 261033018 128302294 349915534 349915534 959986272 959986272 696332133 545259585 545259585 776383986 920934609 920934609 167940388 167940388 190404276 190404276 466757184 466757184 168821248 839951364 839951364 806478867 72561288 72561288 648467696 656021049 656021049 659755680 771956289 771956289 234357864 343976710 343976710 134193568 297964786 297964786 243523594 243523594 287862946 287862946 406880432 701374272 701374272 696518757 696518757 154017060 817629286 817629286 538314881 13370561 11944640 340033986 340033986 67168264 24337440 71202248 71202248 19869792 19869792 29626880 29626880 26224896 28650336 28650336 27312480 27312480 19171392 5471232 11186304 41772896 66935984 66935984 25771024 15993792 227877280 227877280 201328652 201590796 201590796 209789004 209789004 140718254 392175018 528914466 528914466 329620540 324132994 324132994 255613988 255613988 370890268 465655984 465655984 147476224 151117860 151117860 137186592 92587104 91080552 91080552 26831968 224469412 224469412 524292318 524292318 176877824 507311138 507311138 216402792 216402792 300534392 300534392 239075484 365039944 468329796 468329796 161616228 822481485 822481485 747771939 565320213 582099040 582099040 994120307 994120307 701498085 929170230 929170230 911609441 621157422 621157422 497499435 396679698 413887576 413887576 151149828 151149828 60882372 306794672 835572870 969882869 969882869 948170439 1034587936 1034587936 963048110 828510627 827398681 615821335 884976256 884976256 867880992 867880992 475194290 475194290 137732610 423461396 942091314 942091314 823396612 705153063 632131746 317702304 675283077 956625264 956625264 776895617 776895617 631445552 757427497 757427497 123905784 671293280 671293280 801671483 967235943 967235943 346572353 290598060 269756416 313001008 313001008 456171524 456171524 322036530 203425688 726929420 726929420 153913632 346692421 947795395 947795395 829674634 829674634 811246821 811246821 505078796 844694147 844694147 127502624 200786596 558722605 594297348 762579885 762579885 419512362 702925394 702925394 594282809 353994813 1052150010 1052150010 579099766 12841152 575329504 588142737 588142737 143688384 135596100 148146192 148146192 51421700 49283824 198181620 198181620 432614690 432614690 328542834 328542834 269883954 269883954 100803192 105563154 339873930 339873930 382185520 382185520 373766298 318771264 295749922 321179914 516898014 516898014 247721158 146874564 201476288 201639948 205572108 240199884 240199884 142699160 43848880 43848880 51993344 57924400 57924400 51904864 20601408 13364320 92282944 92282944 81838536 70304520 185467328 214436872 214436872 201624644 240388364 566265377 566265377 757907860 757907860 613119780 672202800 672202800 554239521 973055847 973055847 513746624 747997166 747997166 906249168 920955225 920955225 550102209 918766922 918766922 892250561 892250561 880712762 880712762 831870832 608355970 419430438 506598200 506598200 204872460 180682264 199828980 199828980 108356732 108356732 224693188 512005264 512005264 214247460 289415624 822411264 822421539 822421539 425427128 167299044 701674420 701674420 192940480 679497749 679497749 184725604 553919717 553919717 697041184 697041184 972171394 1002562535 1002562535 995177984 638463308 559424500 739390171 739390171 362605363 817729123 915678797 915678797 832733298 582277833 772212757 799054929 799054929 743574729 773394845 773394845 552171276 141872216 37809436 36284176 73547840 227387640 246027612 246027612 117514672 117514672 88203432 176899232 215641260 215641260 63946432 152173360 218441788 236006076 236006076 219754164 106052392 184755084 192426898 192426898 125339154 290226304 348411634 367287122 367287122 104519448 370197040 370197040 352395306 352395306 270606594 436535556 436535556 1021913616 1021913616 490960389 170321686 170321686 542781971 713093265 952229891 952229891 805429447 293939298 270540354 53620514 57822384 419746624 419746624 165546502 100766612 388123777 642964667 879154073 879154073 543986698 272852182 3740418 8651584 278400066 347082008 816892931 816892931 847025026 847025026 585831312 78800528 92119728 132213800 132213800 37212480 69793536 69793536 80285704 80285704 88286336 88286336 31469600 30409664 26875488 37431920 37431920 38214272 42279648 42279648 15084768 21632160 21632160 47982928 62656368 62656368 63463712 162734081 162734081 146874564 146874564 164810981 164810981 392205754 398987706 644350965 644350965 412484808 471484674 471484674 99802988 132260312 587854560 587854560 781951424 781951424 436238383 956792979 956792979 677429637 491061251 491061251 927505472 927505472 909588857 920036427 920036427 807003651 765335885 765335885 492111559 160563200 859145058 859145058 850486129 200436357 1032042028 1032042028 77142883 46532760 143001624 143001624 164277309 164277309 417994011 530750731 537137428 537137428 245689576 562372713 738956380 738956380 546405604 685816237 685816237 637830541 637830541 392039514 679779092 907850029 907850029 883065950 142665162 90516460 273796888 273796888 203169792 293309580 293309580 282275946 282275946 269958128 122471120 122471120 104091544 82881920 31838400 31838400 55446368 55446368 54138672 41567392 21906528 31106514 31106514 57575696 57575696 269158162 269158162 23285120 272819488 272819488 36216096 36216096 34296384 60033648 66137920 66137920 33333856 49543760 49897488 121321832 121321832 130793632 130793632 89338952 379664171 573658625 1066266801 1066266801 1020436782 1020436782 951154622 594634923 113584344 777474640 777474640 276050560 276050560 280369986 280900096 708761472 880005643 880005643 539002635 858980356 858980356 154149435 85070376 84017704 117440552 117440552 5900816 38148240 105907392 105907392 81214152 81214152 107738520 107738520 106877576 74779264 108332112 108332112 243010013 796428187 796428187 893881622 893881622 743901711 664062585 966567317 1036229702 1036229702 924444219 789433395 723043893 982254725 982254725 949610055 949610055 813997106 329698896 455481654 617480304 917048603 917048603 886187448 886187448 738132717 894311595 894311595 1003965223 1003965223 957831375 957831375 231382214 1013060380 1013060380 348194828 1061496320 1061496320 876160779 874643968 845476651 335544473 226497304 706291985 706291985 624823705 624823705 215606988 676540662 829470083 829470083 676074422 728963365 728963365 68495880 201654788 201654788 410718492 793848892 793848892 993346452 993346452 718800597 718800597 558979616 558979616 122856185 433157962 433157962 432748428 432748428 186287216 348964772 348964772 298766434 282247810 344560132 344560132 247055552 421914922 421914922 355481936 840948992 840948992 413325728 507973146 507973146 407637512 335872040 335872040 71370378 282692242 306539090 306539090 292150372 419122320 419122320 477050598 495913934 495913934 110436913 125571000 389101498 825910458 825910458 632403809 579353576 322964218 29495520 110725808 110725808 298592281 896679611 896679611 896152394 896152394 24118176 1011288866 1011288866 738406413 651642995 651642995 51767856 793274050 1007304208 1007304208 295049826 295356673 951829601 951829601 943765313 427066090 427066090 238948216 205287460 205287460 595870768 595870768 754984032 754984032 822268098 822268098 197788705 992093315 992093315 469835790 610758682 610758682 939065239 939065239 847022968 547805505 987097751 987097751 454127824 454127824 553857462 553857462 745162009 988358759 988358759 877790476 262655418 427552186 531492892 531492892 526734242 407633166 407633166 241771072 241771072 267479800 267479800 300354708 691280455 691280455 495552844 588650601 588650601 552258448 552258448 958073058 971244545 971244545 831255651 986265847 986265847 695573984 695573984 32850080 183119953 624223110 833680895 833680895 794309273 794309273 779847092 612501347 699556417 699556417 635962865 824270574 824270574 832522850 836159523 836159523 413262150 711484474 711484474 968319778 968319778 876531524 933929851 982579205 1017460288 1017460288 169374300 26955794 49618026 894006746 894006746 574498537 811891073 811891073 428253521 1049889359 909683808 909683808 316760445 205073883 897984420 897984420 536936573 536936573 269095938 148443202 950020360 950020360 1008747748 1008747748 904447467 503605612 524298398 709721066 756948525 756948525 627579290 562372625 673775832 673775832 537920641 537920641 537198980 672662656 672662656 8253312 760373034 924743436 924743436 656983353 373205866 102153100 102153100 226410753 226410753 479314495 479314495 284134160 491457552 491457552 662459716 934428344 934428344 910046225 98277841 98277841 58223581 507020398 635175401 635175401 217680692 652523460 652523460 940843039 1028610560 1028610560 816896775 816896775 579133452 872477008 872477008 564595838 818749760 818749760 812387715 692837735 1050031644 1050031644 514255795 553853494 689311824 689311824 751935167 751935167 440494800 601694640 601694640 403972736 407185542 407185542 438358848 898974166 898974166 303093776 1000725094 1000725094 422489441 461555034 461555034 462161262 462161262 227420760 227420760 187528804 159951152 134754816 4194304 4194304 36700944 36700944 157683712 157683712 137636 135398016 1007014034 1007014034 849791383 864461371 864461371 366078327 276922758 351304608 829659956 829659956 776008759 776008759 621331497 621331497 294034656 948057306 948057306 648278361 648278361 237101340 874227457 874227457 390131679 224868780 281389056 959188263 959188263 671104070 671104070 999409367 999409367 880062932 1042217807 1042217807 739495458 614520584 806035456 806035456 420528678 219539492 180961610 196133748 196133748 917757169 917757169 871989232 871989232 980119701 980119701 499124966 542474868 542474868 913330661 913330661 394346706 394346706 286850000 146670028 194861381 194861381 56235696 611617864 634597244 762579885 762579885 544479405 149291333 56656041 556015776 679518292 679518292 754004748 754004748 159367949 686862784 686862784 552661257 85247592 139587828 174638484 174638484 110302404 110302404 349915534 349915534 959986272 959986272 696332133 545259585 673533058 776383986 920934609 920934609 780771340 892041217 892041217 909841178 909841178 454459172 451188574 839951364 839951364 806478867 72561288 72561288 648467696 656021049 656021049 659755680 771956289 771956289 640559425 173548784 728540984 728540984 763001000 763001000 248058120 411713923 979615987 979615987 558490785 701374272 701374272 299241057 959322434 959322434 817629286 817629286 567700960 823170786 823170786 340033986 340033986 67168264 291508738 291508738 80892512 280062530 280062530 85528928 68548104 346876026 346876026 384728376 384728376 377294200 74485440 45581088 45581088 38417344 18560544 21570720 39961904 39961904 228589728 228589728 205783180 205783180 201327884 209789004 209789004 140718254 1017367937 1017367937 528914466 839390399 839390399 350883136 545424451 545424451 476770344 497459496 497459496 360484258 698965140 698965140 671443376 109189616 91080552 91080552 26831968 224469412 224469412 252038336 252038336 210639948 211660092 211660092 218593888 260311164 420401436 420401436 239075484 247864564 247864564 126546132 126546132 822481485 822481485 789842493 880950581 884674568 884674568 595067428 711460245 722535893 722535893 429131913 720700455 720700455 649015092 823545936 823545936 251781982 252729940 252729940 542263002 915067995 915067995 835572870 969882869 969882869 948170439 948170439 963048110 963048110 828510627 827398681 615821335 457336375 400420602 634605071 634605071 355078416 386401338 462200168 462200168 1052082054 1052082054 823396612 705153063 436576562 848685648 848685648 956625264 956625264 789000464 789000464 631445552 757427497 757427497 609155405 697652416 697652416 562221153 950584647 950584647 865601973 689891546 507505176 313001008 424809126 424809126 431518850 431518850 205717932 726929420 726929420 441326720 441326720 226695710 268748802 268748802 239124636 508723354 508723354 505078796 505078796 151171204 184550532 228372052 228372052 594297348 762579885 762579885 185936436 185936436 151833636 188743684 188743684 169453600 169453600 861454353 861454353 575329504 588142737 680914624 680914624 169715781 148146192 148146192 51421700 49283824 198181620 198181620 169945216 847260227 847260227 328542834 823790593 823790593 295328946 378337402 378337402 339873930 382185520 382185520 373766298 346435792 386213946 386213946 516898014 516898014 247721158 146874564 138494016 52429104 52429104 34484528 42536240 42536240 43848880 43848880 16128960 43577040 51904864 51904864 42445024 39232736 201594108 201594108 35002080 60343920 239228652 239228652 65674548 165857376 194167844 592207412 592207412 168035429 588353045 588353045 672202800 672202800 554239521 973055847 973055847 41435194 747997166 747997166 583539609 904160412 904160412 550102209 918766922 918766922 892250561 892250561 880712762 880712762 831870832 608355970 613016649 613016649 506598200 244585420 779389212 779389212 707871225 668664097 635651293 224693188 418666248 823911043 823911043 649349956 649349956 162007439 425427128 867201944 867201944 758893188 923452902 923452902 599794750 1032927786 1032927786 888175112 888175112 584102104 163840872 184685348 267464764 995177984 995177984 921958201 921958201 838596579 560218472 224709036 224709036 260434044 650357328 650357328 582277833 171280657 159432704 16814080 206308416 210293708 217759756 217759756 3164556 2139984 42542160 73547840 227387640 246027612 246027612 234946832 172516620 193011724 193011724 176899232 174574924 35679104 35679104 7750800 24419840 24419840 23778720 157710368 157710368 192426898 192426898 125339154 125339154 185731172 672554512 672554512 553245444 799195552 799195552 587081196 732966619 813246339 813246339 436535556 566982140 926372064 926372064 430755174 440483862 542781971 713093265 952223810 952223810 293939298 293939298 270540354 440875158 440875158 333843958 447847654 495775620 495775620 388123777 642964667 879154073 879154073 543986698 578636356 607186113 612648905 612648905 384609090 816892931 816892931 847025026 847025026 585831312 78800528 92119728 299018866 299018866 361218112 361218112 295333376 101442624 80285704 88286336 88286336 49361616 49361616 49024464 49024464 47002916 167651572 167651572 167262852 15084768 221057256 221057256 143334276 251520612 251520612 181962704 181962704 31057632 30483520 71525600 88061760 88061760 110223960 110223960 114190616 210410972 210410972 163862848 163862848 97129704 111284272 111284272 118102200 202509632 228990752 495342612 506776010 506776010 551701468 886311627 886311627 585578961 909588857 909588857 886575208 645552834 544211841 80424712 408108164 408108164 55789200 859145058 859145058 850486129 386316202 576767532 960326202 960326202 775479125 775479125 730616744 164277309 920940901 920940901 952515223 952515223 692396552 692396552 245689576 617598200 617598200 546405604 685816237 685816237 637830541 637830541 457774066 679779092 907850029 907850029 883065950 156853178 103317608 273796888 273796888 325059980 325059980 293309580 282275946 282275946 269958128 122471120 122471120 104091544 54289992 31838400 31838400 55446368 55446368 54138672 41567392 29508224 29508224 60187344 60187344 49068784 6369024 5057280 23285120 23285120 273336448 331600002 331600002 4876498 264192 3145728 26300384 33333856 33333856 9664448 121321832 121321832 130793632 130793632 89338952 379664171 573658625 1066266801 1066266801 1020436782 1020436782 879891339 947519543 947519543 923272251 777474640 138744328 138744328 79396169 834747167 834747167 880005643 880005643 716244807 716244807 686949059 182497884 235070040 235070040 591659430 591659430 405739695 2243586 4328704 80231936 81214152 93077120 93077120 42473888 49545232 49545232 41252736 44513616 44513616 159625282 159625282 219623763 743901711 743901711 664062585 966567317 1036229702 1036229702 470812532 470812532 424176766 982254725 982254725 949610055 949610055 509004970 509004970 497716120 566886716 993265119 993265119 892217384 738132717 738132717 894311595 894311595 1003965223 1024019627 1040246417 1040246417 1027703355 1013060380 1013060380 481325388 1061496320 1061496320 876160779 869001683 845476651 615781641 615781641 706291985 706291985 572859925 527432102 751183245 918656215 918656215 465777285 220614656 308386052 308386052 68495880 487609880 487609880 410718492 793848892 793848892 927990131 927990131 718800597 718800597 322310073 937349418 937349418 830525168 433157962 432748428 432748428 163440004 348964772 348964772 298766434 160445546 344560132 358951338 424519744 424519744 469847124 469847124 840948992 888414604 888414604 270009518 407637512 407637512 335872040 335872040 39580896 51454512 437622912 744040602 993065713 993065713 805298008 805298008 495913934 945626912 945626912 492835879 406658058 661437984 661437984 358896712 358896712 88529064 88529064 88529064 685648 43115088 271161920 271161920 740101645 740101645 24118176 1011288866 1011288866 738406413 651642995 651642995 51767856 793274050 1007304208 1007304208 43065936 29959392 951829601 951829601 943765313 507240018 975159585 975159585 1005495007 1021374823 1021374823 881329227 881329227 873129191 822268098 822268098 197788705 992093315 992093315 469835790 610758682 610758682 727351203 727351203 56087201 30912000 30912000 22113392 197194772 197194772 182475408 265080060 265080060 130842628 768026376 768026376 103748432 45235480 531492892 531492892 526734242 17826336 68200752 120974136 120974136 64172784 64172784 331278770 477047120 495552844 495552844 288222498 1044794960 1044794960 552258448 597853472 967579649 967579649 830612626 986265847 986265847 547147223 547147223 463109430 772675883 772675883 833680895 833680895 685801570 962642343 962642343 824341469 649143129 635962865 635962865 824270574 824270574 832522850 836159523 836159523 413294368 711484474 711484474 662734817 908826192 908826192 924612667 924612667 568093905 540845540 717490389 745570921 895795214 1005155462 1005155462 574498537 811891073 811891073 538321492 692212099 909683808 909683808 1042034017 1042034017 1035258735 404916480 404916480 269095938 269095938 148443202 741361172 741361172 502841740 942179438 942179438 503605612 524298398 709721066 756948525 756948525 612251972 612251972 673775832 673775832 528156544 528156544 248225428 248225428 687074465 693428097 726119216 726119216 656983353 656983353 599729784 142053001 253951552 253951552 226410753 479314495 609747886 613520273 1067651865 1067651865 662459716 934428344 934428344 34980122 98277841 98277841 58223581 507020398 635175401 635175401 217680692 652523460 652523460 601794493 520998358 578729144 712851073 712851073 574891412 591854096 591854096 564595838 564595838 588951900 692837735 692837735 353444394 345049727 767634059 767634059 689311824 689311824 751935167 751935167 370158422 988394388 988394388 907467291 407185542 407185542 438358848 898974166 898974166 600374071 600374071 272860510 956440855 956440855 455137570 462161262 462161262 547900261 547900261 445106178 729079593 729079593 338272297 338272297 113255360 113255360 162793553 736514644 736514644 891734443 1007014034 1007014034 849791383 864461371 864461371 366078327 147664068 204063908 882984112 1003235701 1018557015 1018557015 560144186 560144186 324559795 760374346 807818265 807818265 721061182 721061182 469981180 469981180 202121216 224868780 939524096 959188263 959188263 671104070 671104070 999409367 999409367 827376359 923366638 923366638 740484130 614520584 806035456 806035456 504654886 529795162 529795162 279473146 167314212 217027108 441940842 460001859 729524179 729524179 499124966 499124966 542474868 542474868 913330661 913330661 5251584 15835968 15835968 139063045 194861381 194861381 101621104 358245744 634597244 762579885 762579885 750883013 750883013 946505174 946505174 786494916 786494916 754004748 754004748 159367949 686862784 686862784 538638736 663664712 663664712 174638484 382756482 382756482 517334350 517334350 329384130 848058708 848058708 820599377 820599377 674106747 674106747 601283313 601283313 843687424 892041217 892041217 909841178 909841178 451188574 797324834 857454203 992093621 992093621 213978293 113633496 194343764 194343764 257390680 260576380 260576380 640559425 640559425 373797298 728540984 728540984 763001000 763001000 248058120 411713923 979615987 979615987 558490785 54662723 62391315 545654604 959322434 959322434 713102167 675285637 567700960 823170786 823170786 79147712 79737672 79737672 291508738 291508738 80892512 280062530 280062530 89665792 89665792 346876026 400045602 400045602 384728376 377294200 74485440 45581088 57766320 57766320 44212880 48308688 65062176 65062176 228589728 228589728 235936972 240570252 240570252 197656972 409191425 912265265 1017367937 1017367937 483343566 839390399 839390399 350883136 545424451 545424451 476770344 497459496 497459496 625268696 698965140 698965140 671443376 109189616 97644480 97644480 95420448 97100448 97100448 314979354 314979354 236752336 411526938 411526938 218593888 260311164 420401436 420401436 231611628 231611628 353080574 353080574 264290540 534136332 534136332 789842493 880950581 884674568 884674568 595067428 711460245 722535893 722535893 429131913 720700455 720700455 649015092 823545936 823545936 378103640 394433818 394433818 542263002 915067995 915067995 375043075 290978482 402732448 621922464 621922464 609561225 635966885 703075656 703075656 621804641 621804641 615024248 375400308 339136768 355078416 386401338 462200168 462200168 1052082054 1052082054 390621499 310715418 789070016 848685648 848685648 805306371 581224785 789000464 789000464 228615468 223716212 138296804 609155405 697652416 697652416 562221153 950584647 950584647 1065915044 1065915044 507505176 256314385 663225465 663225465 972629811 972629811 374527819 374527819 700887646 852875466 852875466 226695710 72887532 0 0 20550696 84567840 185196688 185196688 151171204 184550532 228372052 602772513 732479702 1047053727 1047053727 331998450 665323658 665323658 539355393 425173570 824551682 824551682 861454353 861454353 540666273 159225472 680914624 680914624 169715781 548433296 685055105 727425748 727425748 712245893 712245893 566502050 847260227 847260227 293222802 823790593 823790593 295328946 378337402 378337402 338251304 353939754 353939754 339417762 346435792 386213946 390595018 390595018 272205688 272205688 149472588 93378114 53758976 53758976 42930768 42930768 9065552 9323776 11195712 13544128 13544128 49407088 59368400 59368400 57353336 201594108 201594108 225319000 225319000 239228652 239228652 56541968 157569184 194167844 592207412 592207412 706251856 706251856 555238469 1009542426 1009542426 873728523 280625964 221255490 45900900 69239336 583539609 583539609 904160412 904160412 641911640 653807960 653807960 543430041 380113632 103421208 540335496 540335496 334069872 613016649 613016649 235467828 244585420 779389212 779389212 707871225 669665790 669665790 748560926 748560926 823911043 823911043 649349956 649349956 162007439 34759397 867201944 867201944 758893188 923452902 923452902 599794750 1032927786 1032927786 888175112 888175112 584102104 163840872 926028587 1028851387 1028851387 732631319 921958201 921958201 838596579 250183134 914540930 914540930 488935731 319284608 319284608 86085688 209301436 209301436 244967004 244967004 235446848 217759756 217759756 3164556 2139984 111272280 114496584 203546780 203546780 234946832 234946832 172516620 193011724 193011724 201486800 201486800 164258868 164258868 190233668 190233668 188216388 135201540 204896904 205959692 205959692 135408192 91652480 104077312 185731172 672554512 672554512 1036603604 1036603604 799195552 666411987 732966619 1038489046 1038489046 505377566 566982140 926372064 926372064 430755174 440483862 440483862 316879314 444707270 444707270 167870802 170455296 268679424 440875158 440875158 441082180 447847654 495775620 495775620 357467284 357467284 455270154 455270154 180116224 578636356 812213974 812213974 806167691 384609090 384609090 632368328 632368328 144729372 144729372 56730712 151618660 299018866 299018866 361218112 361218112 295333376 101442624 40500424 8716736 46342304 49361616 49361616 49024464 63776000 63776000 167651572 167651572 167262852 134743040 467507734 467507734 341789976 341789976 517738206 517738206 181962704 31057632 365053456 365053456 305959418 301992192 63854592 76696136 76696136 14000096 21568128 24266368 24266368 21496992 21496992 88244640 88244640 90834772 196874100 495342612 1045732111 1045732111 551701468 886311627 886311627 115546883 378143176 886575208 886575208 560080611 848824234 848824234 584398523 340134321 87436857 590088512 590088512 576987648 547948480 628566528 960326202 960326202 775479125 797822128 797822128 155263140 920940901 920940901 952515223 952515223 726667864 726667864 151742120 100738484 113906904 113906904 116841432 586567948 586567948 980885522 980885522 458156790 279088738 378817526 1040575108 1040575108 701836005 517210611 867467368 867467368 738199640 337641736 255132444 255132444 156312228 153792256 82847104 82847104 24404736 21358752 12708384 17831712 17831712 8181504 8181504 29508224 29508224 60187344 60187344 49068784 321094432 321094432 50080130 21382560 273336448 331600002 331600002 52104240 52491024 52491024 50930656 16494912 47260368 47260368 37819728 38336016 47448064 47448064 11424576 11424576 94766865 664673913 664673913 193301495 642921471 879891339 947519543 969458919 969458919 703876866 30393441 337763488 895464618 895464618 834747167 726389133 726389133 716244807 716244807 686949059 740335736 977395863 977395863 914211263 914211263 740550291 876000514 1008343565 1008343565 684787045 684787045 658852481 658852481 620506097 620506097 559023808 559023808 31458272 43517440 46150448 55775488 55775488 19281664 380840044 380840044 100530010 447780864 470812532 470812532 312510992 848740622 1040371743 1040371743 952636580 952636580 759743661 682641375 566886716 993265119 993265119 1019642607 1019642607 244122628 244122628 587754710 990645303 1024019627 1040246417 1040246417 1027703355 1070093916 1070093916 700410092 700410092 510213720 816382120 816382120 772707448 738646029 738646029 672129627 672129627 664596856 527432102 751183245 918656215 918656215 915776336 915776336 482377760 482377760 192074676 487609880 605983429 615514953 615514953 312551145 927990131 927990131 661392681 661392681 322310073 937349418 937349418 830525168 340920426 217968588 4211712 5133440 89316552 89316552 423019168 423019168 275128746 358951338 424519744 424519744 469847124 469847124 422366502 888414604 888414604 124257720 438209410 438209410 88002432 281550378 281550378 396177018 509165195 744040602 993065713 993065713 805298008 805298008 607055720 1022623481 1022623481 718735298 895266505 895266505 553199553 358896712 358896712 341350680 341350680 305975058 347354056 352882800 352882800 116371338 251739846 251739846 19537600 258945184 374551194 529756750 529756750 482915940 346564182 407901320 411746818 411746818 268960770 13653122 46174784 556441811 556441811 507240018 975159585 975159585 1005495007 1021374823 1021374823 881329227 881329227 873129191 638081248 638081248 101079304 101079304 100804776 100804776 69542864 562520840 570763281 570763281 234217972 181604128 181604128 55521952 197194772 197194772 151450964 151450964 369964106 369964106 768026376 768026376 369961170 109782522 280618818 448651106 448651106 152812628 152812628 264966568 264966568 216158216 186954688 331278770 958933253 958933253 197866740 784479725 1044794960 1044794960 682101121 682101121 967579649 967579649 547239637 547239637 539174310 956970224 956970224 463109430 772675883 772675883 969799172 969799172 1064981951 1064981951 962642343 824341469 649143129 590158848 590158848 137827368 169884776 247912668 648341130 648341130 783354641 783354641 430441830 430441830 908826192 908826192 686503365 686503365 568093905 540845540 717490389 745570921 895795214 1005155462 1005155462 963345520 418241254 538321492 538321492 465068101 931053277 931053277 1042034017 1042034017 1035258735 404916480 942016580 942016580 480123651 208741020 741361172 741361172 170444165 942179438 942179438 403193860 128797880 614244784 676658049 676658049 653222732 612251972 256907690 431391496 528156544 528156544 227687732 227687732 687074465 693428097 726119216 726119216 464833350 599729784 599729784 420254926 253951552 253951552 616941772 616941772 609747886 989010578 1067651865 1067651865 638008695 616869201 288494370 288494370 329546626 329546626 276891490 270533826 286265546 286265546 117449216 117449216 58720368 516293462 516293462 927103256 927103256 871310244 1072809072 1072809072 591854096 822488380 822488380 588951900 588951900 429094689 353444394 345049727 767634059 767634059 575867976 314092304 126511706 169396812 169396812 988394388 988394388 907467291 331488358 331488358 415383920 830947554 830947554 827659706 827659706 858848184 956440855 990790945 990790945 204306504 413664582 1073486926 1073486926 599075697 729079593 729079593 338272297 338272297 113255360 309492672 309492672 736514644 736514644 891734443 891734443 984066261 984066261 599776739 586211962 586211962 515115870 515115870 882984112 1003235701 1018557015 1018557015 866241839 678779200 748827945 990481551 990481551 932444700 721061182 721061182 855846963 855846963 286123159 188287800 939524096 939524096 596132853 596132853 470065866 688202210 688202210 677644677 923366638 923366638 797164612 797164612 194815012 415624912 504654886 529795162 529795162 279473146 429526595 979081511 979081511 736309749 569116576 569116576 330437138 330437138 344458314 913134828 965771272 965771272 939082449 939082449 928232720 134708360 598446408 598446408 217204081 843420624 843420624 486020073 540221613 750883013 750883013 946505174 946505174 879529415 805888147 805888147 623886720 932567859 932567859 544270921 538638736 663664712 663664712 457437366 495889624 749217947 749217947 517334350 672394053 848058708 848058708 820599377 820599377 674106747 763547757 763547757 648069465 843687424 843687424 779617951 779617951 388572474 991567671 991567671 857454203 992093621 992093621 213978293 747889161 747889161 194343764 42372656 260576380 260576380 98376732 81790248 373797298 373797298 90642408 357593514 357593514 75011302 533202174 533202174 430703198 358221828 120463148 107087780 545654604 545654604 620105312 675285637 675285637 556007840 65090340 65090340 294912642 294912642 79737672 17932520 75497544 86040896 93331528 93331528 89665792 97595840 337780752 400045602 400045602 351985872 351985872 72078626 39487248 57766320 57766320 50451088 48308688 115658900 210028748 216429004 216429004 239521356 240570252 240570252 177734816 409191425 912265265 941692298 941692298 648413979 604555345 390335781 290199992 139067648 134873154 472384838 472384838 76021824 625268696 625268696 101347328 101347328 100610624 100610624 97644480 95420448 135272324 212890816 314979354 314979354 236752336 411526938 411526938 160997200 160997200 482288540 482288540 231611628 231611628 353080574 353080574 264290540 534136332 534136332 475074452 271131400 266802358 218839796 218839796 339873930 339873930 428874668 428874668 292625026 292625026 69329160 297668162 630694449 630694449 394433818 817518451 817518451 506281277 279508955 747820312 1059746900 1059746900 695412249 751829709 1021462028 1021462028 703075656 703075656 621804641 621804641 814183457 814183457 384928588 384928588 221588268 377315814 377315814 314367646 955426651 955426651 135573556 789070016 789070016 802260133 802260133 752007425 774371332 774371332 223716212 223716212 103091492 33661616 551615616 553260993 553260993 615649903 932845475 1065915044 1065915044 192950432 256314385 663225465 663225465 972629811 972629811 489734973 374527819 700887646 852875466 852875466 444157324 444157324 393243140 69804556 487257378 488372256 488372256 55299724 222689308 222689308 227490224 602772513 732479702 1047053727 1047053727 331998450 665323658 665323658 539355393 425173570 824551682 824551682 541359744 540666273 540666273 159225472 159225472 135583749 135583749 548433296 685055105 727425748 727425748 712245893 712245893 566502050 453059826 346892234 293222802 314318610 314318610 96470642 344068170 344068170 338251304 353939754 353939754 339417762 275395978 119543104 390595018 390595018 272205688 272205688 159649800 159649800 168200964 168200964 243794008 243794008 101835288 244702376 244702376 214228216 88479808 50512496 59368400 59368400 57353336 123885736 129293720 225319000 225319000 119502324 124781496 124781496 118147952 118147952 102478941 144229956 706251856 706251856 555238469 1009542426 1009542426 873728523 674674017 674674017 45900900 588777561 588777561 605030985 643975168 643975168 641911640 653807960 653807960 563348229 563348229 241436756 671875613 671875613 266523484 266523484 235467828 253417020 253417020 264966940 264966940 174195650 669665790 669665790 748560926 748560926 582385015 289933350 205464708 205464708 154341664 337187586 337187586 392037308 405675270 405675270 515919032 515919032 122454238 67244040 67244040 71434752 153695232 153695232 926028587 1028851387 1028851387 732631319 567276779 567276779 559539873 554221604 914540930 919994614 919994614 319284608 319284608 91229008 209301436 209301436 244967004 244967004 235446848 234626412 210046792 195298148 195298148 136954628 114496584 186275380 186275380 179307348 97108032 80545000 72092808 119937336 201486800 201486800 164258868 164258868 190233668 190233668 188216388 135201540 204896904 205959692 205959692 135408192 77922624 14003136 24480512 24480512 368414184 1036603604 1036603604 666411987 666411987 338763044 1038489046 1038489046 505377566 505377566 997733687 997733687 972617024 972617024 971918144 971918144 562366400 588161316 588161316 178814084 438479820 438479820 298451972 441082180 475445190 475445190 342053094 175409809 773405689 1017944931 1037468138 1037468138 372862712 812213974 812213974 806167691 275489833 548554793 632368328 652011072 652011072 569112384 37818608 151618660 151618660 68858240 69300672 108640320 108640320 73595016 78117192 93164992 93164992 25165952 20971680 14098432 63776000 63776000 56572864 46086800 51264128 134743040 467507734 467507734 341789976 341789976 517738206 517738206 33632206 2097408 365053456 365053456 305959418 301992192 91841368 91841368 76696136 13513952 21568128 21568128 21152512 21152512 19832064 69226496 69226496 90834772 196874100 407134081 1045732111 1045732111 816850051 306262592 247584220 247584220 378143176 462053577 476251945 876290626 876290626 848824234 683756096 683756096 654885945 537501752 576987648 576987648 547948480 628566528 628566528 558554361 625344737 797822128 797822128 759952557 155263140 174063252 219722401 219722401 726667864 726667864 541763172 680001921 680001921 113906904 116841432 586567948 854918052 980885522 980885522 458156790 272491488 378817526 1040575108 1040575108 701836005 517210611 867467368 867467368 738199640 337641736 55610776 55610776 153792256 153792256 78034308 31042048 31042048 118850296 118850296 18768608 130494824 130494824 41243328 21433664 279431650 300627426 300627426 290457570 321094432 321094432 50080130 279448834 279448834 283246818 283246818 52104240 52491024 52491024 50930656 17854656 47260368 47260368 37819728 38336016 47448064 47448064 11424576 337049866 357954826 886773194 886773194 85113066 85113066 12640561 817679332 969458919 969458919 1020328778 1020328778 612893769 895464618 895464618 373818522 373818522 256647456 242036124 549920817 549920817 740335736 977395863 987118274 987118274 914211263 740550291 876000514 1008343565 1008343565 684787045 684787045 658852481 658852481 620506097 620506097 559023808 559023808 22020768 22020768 24851360 67851794 67851794 108985272 108985272 386017242 386017242 365640570 91067442 27664440 312510992 848740622 1040371743 1040371743 952636580 952636580 759743661 682641375 785648349 785648349 481635150 1019642607 1019642607 137194976 136702011 587754710 990645303 990645303 897164392 897164392 134218240 1070093916 1070093916 700410092 700410092 510213720 719054117 772707448 772707448 738646029 738646029 672129627 672129627 664596856 306110226 397052520 397052520 103599384 915776336 915776336 482377760 482377760 378556426 268619778 605983429 615514953 829620938 829620938 541716184 541716184 110751321 72747672 72747672 93587456 396347064 396347064 217968588 365236748 365236748 269512384 89316552 432864267 901243629 967965291 1035146088 1035146088 721975314 721975314 572999207 92065704 446705984 773804837 947073942 992108449 992108449 832980322 88002432 281550378 286031904 396177018 509165195 509165195 90115319 559482610 559482610 832843973 943892753 1022623481 1022623481 718735298 895266505 895266505 553199553 377791018 340801344 341350680 341350680 362553384 362553384 352882800 352882800 116371338 251739846 251739846 44691120 258945184 258945184 203632908 179906388 346564182 346564182 407901320 411746818 411746818 268960770 13653122 46174784 291119248 296946266 361681840 361681840 411980645 521889419 521889419 751945642 888719307 888719307 780144927 780144927 977415175 977415175 539091201 539091201 201523333 140563320 224170884 251609052 251609052 234217972 181604128 181604128 55521952 59450048 114873904 114873904 83031360 369964106 369964106 308682112 369961170 432588572 432588572 519181278 519181278 506479334 475480230 411410998 264966568 534705300 534705300 534324754 117318064 958933253 958933253 197866740 784479725 833750500 833750500 682101121 682101121 617294872 650256479 650256479 547239637 539174310 956970224 956970224 166154720 420190729 725952693 969799172 969799172 1064981951 1064981951 1002898070 1002898070 201851916 386193659 386193659 137827368 169884776 247912668 648341130 648341130 783354641 783354641 752095064 784094661 784094661 681560960 686503365 782562650 940522503 940522503 507232699 513133340 513133340 826755714 963345520 963345520 831527013 831527013 564785189 732380961 931053277 931053277 837424852 993002295 993002295 1040725336 1040725336 942016580 480123651 208741020 208741020 705091716 705091716 262592892 262592892 224978285 128797880 614244784 676658049 676658049 653222732 172804352 174589332 174589332 147411924 139719300 59845104 59845104 8399008 200036472 200036472 464833350 464833350 187830442 492171612 492171612 308807058 176463872 682345240 682345240 247989468 989010578 989010578 803947675 638008695 814295563 814295563 326476016 549654803 549654803 392217722 392217722 877364267 877364267 339961018 886213566 886213566 769396461 795661757 927103256 927103256 871310244 1072809072 1072809072 851950391 822488380 822488380 577377115 577377115 855442209 855442209 1042989975 1042989975 741139425 855983185 964989590 964989590 831556768 864862320 864862320 892340988 892340988 392501403 843319443 1070477797 1070477797 1043924098 992494771 992494771 858848184 891328019 990790945 990790945 204306504 204306504 1073486926 1073486926 701771658 701771658 678101897 611394441 90775849 70854408 585908512 585908512 582409041 537562960 192376932 192376932 984066261 984066261 599776739 586211962 586211962 515115870 515115870 490744991 690552999 828656724 866241839 1051619327 1051619327 748827945 990481551 990481551 932444700 625436837 126626896 855846963 855846963 848371444 961494183 961494183 403701781 596132853 596132853 204737292 490071782 490071782 500490280 500490280 383431746 797164612 797164612 348262432 558137409 558137409 335857674 562840715 562840715 429526595 979081511 1035361679 1035361679 482591404 320802308 330437138 947232820 947232820 913134828 965771272 965771272 939082449 939082449 928232720 454453816 598446408 598446408 217204081 843420624 843420624 799925590 799925590 551556443 551556443 983978243 983978243 879529415 950426127 950426127 676208007 932567859 932567859 218751816 540221120 548839620 635750386 850659800 850659800 749217947 749217947 374621530 672394053 780318999 780318999 291659866 576215495 576215495 763547757 763547757 648069465 648069465 798494662 798494662 779617951 388572474 991567671 991567671 69873776 658111321 658111321 35705600 747889161 747889161 104858816 109577304 219548920 696779992 696779992 680544704 555272880 667731828 667731828 131373592 131373592 195179497 743966349 743966349 448072535 791356239 791356239 909431046 909431046 923046790 923046790 539077517 556007840 556007840 204848404 182886958 294912642 294912642 340790314 364932136 364932136 86040896 349933738 367512098 367512098 97595840 97595840 131569760 131569760 285531610 285531610 56349088 48215264 48215264 50451088 50451088 6340608 115658900 210028748 216429004 216429004 239521356 239521356 177734816 177734816 160465084 160465084 861029318 861029318 648413979 604555345 390335781 723550468 723550468 212373528 472384838 472384838 392176034 697463864 697463864 817106318 817106318 299817876 299817876 210528326 210528326 351177218 351177218 442551360 443021718 443021718 182243746 333995136 333995136 332843728 482288540 482288540 209401740 209401740 7419012 65221104 65221104 35536880 36377232 36377232 38221968 38666320 88743658 88743658 339873930 339873930 428874668 428874668 355779432 76124680 76124680 97689579 757215332 757215332 488833127 817518451 817518451 506281277 279884708 850093092 1059746900 1059746900 1007505046 751829709 1021462028 1021462028 796588395 956163089 956163089 504579547 814183457 814183457 384928588 384928588 221588268 529324072 529324072 528981626 955426651 955426651 369875474 255610156 255610156 802260133 802260133 752007425 774371332 774371332 739671516 491501997 246878210 33661616 551615616 690607360 690607360 48911285 14341824 204009556 204009556 203649484 248254532 248254532 243533916 707792412 707792412 489734973 268487612 676261372 676261372 745950502 913445787 997986863 997986863 807144963 672793761 672793761 488372256 809866677 809866677 222689308 55051440 37880864 33685520 33685520 33558544 33558544 154305156 229302496 229302496 161974656 161974656 4378752 12599296 29464512 29464512 16388800 16388800 13651264 5555264 5826176 13712768 25274624 25274624 24454080 24454080 6625152 6625152 348526976 348526976 48792000 51036896 96470642 344068170 344068170 112679088 337810050 337810050 328745384 328745384 325598618 687678565 687678565 531561838 921784365 921784365 159649800 168200964 168200964 915323921 915323921 478928244 615690321 615690321 349963312 102419136 56620512 56620512 43701840 43701840 50731056 60636240 60636240 219877848 219877848 124781496 124781496 118147952 118147952 102478941 149954796 580667413 580667413 77136348 33050048 33050048 81942112 674674017 674674017 217100384 588777561 588777561 605030985 643975168 643975168 574172952 574172952 539569425 971582138 971582138 911749347 890110483 671875613 472122114 487248754 487248754 438882404 253417020 264966940 264966940 282428191 550543823 852757203 852757203 665889225 665889225 611895044 361172922 361172922 218578308 345705608 405799686 672171082 672171082 405675270 1071382605 1071382605 749758820 651926138 812303392 812303392 579684048 153695232 118198228 217914328 477880912 850214354 850214354 817857619 1032236136 1032236136 924781631 919994614 932522619 932522619 181676319 181676319 735455244 735455244 610769955 719242987 1067980799 1067980799 652791502 427607548 437814020 437814020 61416548 186275380 186275380 97108032 97108032 257110716 257110716 245808332 245808332 204970484 204970484 147851120 147851120 73475272 55641792 18550816 16826528 68519552 72886216 82575360 82575360 14689536 24480512 75850240 75850240 68768768 86644008 86644008 20074528 20074528 1038168024 1038168024 318583233 23852448 997733687 997733687 972617024 972617024 971918144 971918144 562366400 588161316 588161316 178814084 438479820 438479820 302493781 550519043 550519043 475445190 342053094 819935355 819935355 1017944931 1051275678 1051275678 927620441 804522123 218535713 82281737 695948525 695948525 548554793 652011072 652011072 569112384 130207992 130207992 128005248 128005248 69300672 79876296 127021648 127021648 78117192 93164992 93164992 51249648 14098432 14098432 40961728 56572864 190977092 190977092 138547332 138547332 204184972 204184972 148587492 148587492 149236164 164629984 164629984 55125184 381378976 381378976 105421392 105421392 91841368 91841368 74153984 74184072 74184072 6485256 2281728 6866304 84414848 84414848 84070440 18498048 18498048 13768384 14291648 816850051 816850051 306262592 270668034 247584220 1023865184 1023865184 520193921 876290626 876290626 467796157 683756096 683756096 654885945 537501752 99397112 399734762 399734762 140140544 140140544 155571776 161093220 172753072 759952557 759952557 629029888 174063252 737127208 791023981 791023981 742656289 737552593 680001921 1011435816 1011435816 892413697 742705293 854918052 854918052 280027979 492142728 492142728 295643970 291977634 85066136 339846708 525911742 525911742 373828668 373828668 208175250 265580268 265580268 243296840 243296840 32072960 31042048 44237760 118850296 118850296 18768608 130494824 130494824 41243328 20749952 279431650 300627426 300627426 290457570 295699968 295699968 290717890 287326242 287326242 300813536 300813536 26638082 25899680 25444896 8388672 17854656 22278816 22278816 17736576 10588480 10588480 7325696 67683336 337049866 357954826 886773194 886773194 651442937 651442937 663159385 885926089 931925115 931925115 1020328778 1020328778 612893769 220105856 882584117 882584117 872469916 872469916 641101881 549920817 549920817 613503913 817963203 987118274 987118274 247664582 218054604 268573072 268573072 338040576 338040576 264192 264192 17301776 20284448 52470048 52470048 44167584 22020768 36710144 41498512 67851794 67851794 108985272 108985272 386017242 386017242 365640570 128154594 319598714 323751090 323751090 288959376 240392334 839288850 839288850 470309917 613944468 785648349 785648349 481635150 481635150 388276992 137194976 39846288 170394756 831308052 831308052 457214055 250027038 157885860 196234084 196234084 480055238 708314780 708314780 691221285 975897510 975897510 353501969 50405424 77600000 77600000 841505883 841505883 583045216 734313593 870419255 870419255 670041081 977339026 977339026 916529499 916529499 992348446 992348446 1035669803 1035669803 541716184 587201364 587201364 545528705 221482776 253257516 396347064 396347064 361814080 365236748 365236748 354065962 354065962 432864267 901243629 967965291 1035146088 1035146088 978044842 721975314 572999207 92065704 446705984 773804837 947073942 992108449 992108449 832980322 349579168 349579168 286031904 286031904 337920 297825820 517566678 517566678 348156094 832843973 943892753 983877975 983877975 183580130 319791950 835417049 893860011 893860011 559904698 65949946 345239744 365163114 365163114 337539786 101526552 101526552 96846568 70609040 44691120 190250048 190250048 172353684 66721776 137429040 147535044 147535044 61883300 46179824 46773968 46773968 18425376 5309600 22745984 118422568 118422568 411980645 521889419 521889419 751945642 888719307 888719307 780144927 1007160020 1007160020 1043720911 1043720911 539091201 201523333 140563320 224170884 224170884 580342297 742975509 742975509 973527063 973527063 437845191 96008526 96008526 23985572 1017957767 1055785223 1055785223 965346608 432588572 432588572 519181278 519181278 506479334 475480230 411410998 227635794 534705300 534705300 534324754 440197900 494823996 494823996 410848402 271198338 271198338 444203280 444203280 275326338 617294872 1017656462 1017656462 1052840199 1052840199 508823810 508823810 450237382 450237382 725952693 725952693 636083530 826699811 826699811 1002898070 1002898070 201851916 727207401 727207401 855951411 855951411 974878702 974878702 865065129 877102952 877102952 809103074 872671242 872671242 604893217 297717847 782562650 940522503 940522503 758474989 758474989 1038442986 1038442986 826755714 806841287 967996743 967996743 564785189 732380961 0 0 837424852 993002295 993002295 1040725336 1040725336 740899854 576988166 576988166 73599625 705091716 705091716 262592892 262592892 84169044 261241636 261241636 223882660 192451200 188737572 180933140 180933140 159955876 38935956 147412384 161451332 161451332 159721940 176506972 204580944 204580944 162061092 162061092 492171612 492171612 651308282 651308282 682345240 682345240 689319153 689319153 166081590 266304596 938658817 938658817 814295563 844946385 844946385 549654803 392217722 392217722 877364267 877364267 339961018 886213566 886213566 769396461 795661757 795661757 378158103 238100772 956758264 956758264 851950391 801665613 801665613 577763724 577763724 855442209 855442209 1042989975 1042989975 741139425 855983185 964989590 964989590 831556768 864862320 864862320 1072056596 1072056596 392501403 843319443 1070477797 1070477797 1043924098 992494771 992494771 775296554 775296554 692245421 761979964 761979964 184956016 122826013 268581829 701771658 701771658 678101897 611394441 90775849 70854408 585908512 585908512 582409041 537562960 535857198 535857198 262357152 262357152 98367996 27615816 138512438 138512438 738655280 738655280 495391071 567296832 809536231 1051619327 1051619327 841671465 805404742 805404742 268916897 268916897 176293904 176293904 176227364 848371444 961494183 961494183 429918132 142984488 204737292 204737292 490071782 527950783 527950783 500490280 485523660 789172228 789172228 547277898 621040128 621040128 335857674 562840715 562840715 382095542 962992639 1035361679 1035361679 482591404 234592841 942162096 947232820 947232820 33148915 204227680 308660996 328098456 509494430 509494430 454453816 260434492 260434492 159903608 662076652 664634512 799925590 799925590 543426945 348921183 983978243 983978243 678090125 950426127 950426127 763937336 1052149037 1052149037 956749863 698561031 1014730944 1014730944 850659800 850659800 373459144 277939736 277939736 277349442 517354358 517354358 532799868 532799868 463209638 463209638 446045844 467142390 725635252 798494662 798494662 435951261 349349314 164653144 1028594610 1028594610 448684665 282730562 282730562 342808904 342808904 104858816 109577304 247474376 696779992 696779992 680544704 555272880 667731828 667731828 207436264 199110536 195179497 743966349 743966349 448072535 791356239 791356239 909431046 909431046 923046790 923046790 539077517 635734872 635734872 247556405 182886958 84859944 84859944 340790314 364932136 364932136 272765058 349933738 367512098 367512098 2220288 103459672 131569760 131569760 285531610 285531610 114008160 48215264 48215264 47000784 42189696 65399776 65399776 4520304 16416 54282640 54282640 50725008 174426176 174426176 527926215 773009949 773009949 610669211 610669211 721554712 721554712 723550468 723550468 212373528 348745902 348745902 800366585 800366585 697463864 817106318 817106318 299817876 299817876 285921922 285921922 351177218 351177218 442551360 443021718 443021718 323598608 333995136 333995136 332843728 271923132 272248684 272248684 272303740 272303740 39134464 149431348 149431348 204392468 382945872 382945872 378646784 378646784 68370624 13251648 10171968 11550760 355779432 355779432 474257440 490918062 490918062 757215332 757215332 488833127 363213162 570591874 570591874 279884708 850093092 850093092 1007505046 1007505046 442280975 1017663490 1017663490 796588395 956163089 956163089 504579547 218164078 416236596 416236596 331872498 326929874 1049962561 1049962561 1054900584 1054900584 574089240 721838736 869646455 869646455 897868091 923463478 984791973 984791973 739671516 739671516 491501997 676017409 676017409 824483106 824483106 1037782682 1044379997 1044379997 910365432 910365432 203649484 203649484 630194793 630194793 260316381 444369457 522080722 522080722 676261372 676261372 745950502 913445787 997986863 997986863 807144963 672793761 672793761 456129846 809866677 809866677 206041104 183915472 246528728 246528728 138596956 209736908 249040300 249040300 229302496 229302496 22824192 22824192 17178368 7793664 52186448 66964416 66964416 50046000 19664160 24249264 40836960 40836960 64764304 64764304 24454080 31983072 33293632 33293632 348526976 348526976 399127688 399127688 297707120 386800698 386800698 112679088 99738600 297321928 328745384 328745384 325598618 687678565 687678565 531561838 921784365 921784365 350229584 378277888 378277888 915323921 915323921 478928244 615690321 615690321 349963312 102419136 211369340 211369340 77339980 102565892 102565892 160958308 213976972 219877848 219877848 115488300 86160192 174209324 174209324 173176144 149954796 226841064 226841064 77136348 105131312 105131312 81942112 89178792 217100384 217100384 139998528 44689120 44689120 41543568 371264530 574172952 574172952 539569425 971582138 971582138 911749347 890110483 793791532 472122114 487248754 487248754 438882404 425330630 436908830 436908830 1017644367 1017644367 1017693519 1017693519 671384684 665889225 611895044 361172922 641468972 641468972 345705608 439911118 672171082 672171082 357242290 1071382605 1071382605 749758820 651926138 812303392 812303392 579684048 435077991 435077991 870013587 870013587 850214354 850214354 817857619 1032236136 1032236136 924781631 481559884 932522619 932522619 194523216 181676319 735455244 735455244 610769955 719242987 1067980799 1067980799 652791502 427607548 437814020 437814020 120321336 120321336 47564016 90094208 90094208 257110716 257110716 245808332 245808332 204970484 204970484 147851120 147851120 73475272 55641792 18550816 16826528 68519552 72886216 82575360 537397586 686058770 686058770 689538098 689538098 969934036 969934036 792203697 384434511 354492938 553335036 553335036 612340365 629010345 878477580 947703687 947703687 203443851 76093832 542841120 542841120 204624896 166213444 166213444 172989201 302493781 302493781 919360664 975856983 975856983 805644291 819935355 819935355 260381500 1051275678 1051275678 927620441 804522123 218535713 484509892 695948525 695948525 536877728 549773345 562102496 562102496 130207992 184591428 184591428 128005248 67757640 67757640 127021648 127021648 51638824 13737664 51249648 51249648 10486080 6691200 35395536 45094500 190977092 190977092 138547332 138547332 536413146 536413146 415047692 513551534 513551534 425986470 164629984 289932466 381378976 381378976 310077986 310077986 377676088 377676088 376404576 74184072 74184072 6485256 2281728 6866304 84414848 119837464 119837464 87053224 223347132 260706812 260706812 337823638 337823638 273684032 270668034 245153724 1023865184 1023865184 921768412 921768412 718935881 306906889 75956296 75956296 314471114 314471114 99397112 399734762 399734762 758503816 758503816 679548665 744103997 803316164 803316164 629029888 629029888 157622245 737127208 791023981 791023981 742656289 737552593 102896109 1011435816 1011435816 892413697 742705293 625059976 956943131 956943131 864118474 864118474 642625145 857129099 857129099 618322537 525911742 706514582 1058613146 1058613146 297069482 337988890 337988890 286023832 243296840 32072960 124261288 124261288 92419304 92419304 7598976 16113376 68110408 68110408 95709312 95709312 22022400 23600832 23600832 295699968 295699968 290717890 287326242 287326242 300813536 300813536 26638082 25899680 22821152 4268160 4268160 6291840 6291840 5891712 6785024 12613632 14889344 67683336 67683336 81303553 276824320 917707010 917707010 651442937 663159385 885926089 931925115 931925115 831413293 831413293 538832385 606596975 882584117 882584117 872469916 872469916 822179215 733050766 733050766 918585422 918585422 708886677 608370413 861744819 861744819 858477446 677645189 677645189 690909732 690909732 603087072 603087072 564414515 857422867 857422867 807576466 585880801 824198130 824198130 597991762 272889282 56295936 282254082 561817249 594392704 860415841 860415841 591834786 323751090 866067393 866067393 493762460 493762460 991044389 991044389 244974726 509743518 613689288 613689288 1047929631 1047929631 436545558 673298196 673298196 831308052 831308052 513852670 669170196 669170196 196234084 196234084 480055238 708314780 708314780 691221285 975897510 975897510 782113369 782113369 781589085 391644858 841505883 841505883 932283576 932283576 870419255 870419255 670041081 977339026 977339026 916529499 916529499 992348446 992348446 1035669803 1035669803 570824721 587201364 587201364 545528705 221482776 253257516 261789792 361550456 361814080 361814080 345669642 354065962 354065962 365969096 365969096 29434080 135314118 978044842 978044842 698091930 625230327 152692493 521775542 521775542 474041766 242763102 526452784 526452784 349579168 349579168 31252002 335743866 396795545 669965817 669965817 636408859 847384659 847384659 841445444 983877975 983877975 863126499 573570321 835417049 893860011 893860011 639237464 353293616 387597040 387597040 365163114 337539786 30645802 26413088 30605376 30605376 223490720 223490720 15861228 6423168 8001408 16258688 16258688 14157504 46179824 46179824 46773968 568465922 576739746 576739746 646296130 646296130 126666665 126666665 179286849 243527943 243527943 143781637 171256732 937822380 1007160020 1007160020 1043720911 1043720911 1025053113 355221678 882950182 1015934031 1015934031 725918970 742975509 742975509 973527063 973527063 437845191 146605588 96008526 32596288 1017957767 1055785223 1055785223 965346608 56767771 80851588 209899596 209899596 25069036 18689568 145556324 145556324 390108708 390127156 390127156 440197900 440197900 410848402 410848402 402723904 411776070 411776070 9122880 135865936 786249304 1017656462 1017656462 1052840199 1052840199 529929652 529929652 450237382 450237382 632817066 818938563 818938563 826699811 826699811 940337328 945073236 945073236 727207401 727207401 855951411 855951411 974878702 974878702 959816525 959816525 877102952 839109424 872671242 872671242 604893217 725614785 725614785 966279782 966279782 758474989 758474989 1038442986 1038442986 596165745 806841287 967996743 967996743 701608494 701608494 588193489 601305824 601305824 570425361 618345907 618345907 136514448 570491776 576988166 976623750 976623750 742660113 742660113 945928927 1058973295 1058973295 1025197871 833708236 223882660 192451200 188737572 180933140 180933140 159955876 550053761 550053761 161451332 720897028 720897028 698950869 788065343 944893526 944893526 657723899 225925017 305085714 651308282 651308282 243472964 436087570 689319153 689319153 344457536 338167050 938658817 938658817 264118140 844946385 844946385 578427386 606261513 644945083 644945083 323544739 249611690 422085730 422085730 289281650 289281650 198323088 220333420 238100772 238100772 617884488 633653481 633653481 260896385 577763724 577763724 774180882 774180882 762265005 757263540 184549428 815039920 815039920 657348865 657348865 604379145 570720384 1072056596 1072056596 694700176 295962978 334274948 461654048 461654048 343546016 356257578 775296554 775296554 349049088 761979964 929057274 929057274 888211482 888211482 470090697 534457082 534457082 399581946 80217288 80217288 298742352 319289394 319289394 411238656 535857198 535857198 262357152 277030832 277030832 234377505 736282635 785716847 785716847 888076639 888076639 516608880 722824205 722824205 898282626 898282626 885133515 805404742 268916897 268916897 176293904 176293904 176227364 176227364 316147410 429918132 820300227 820300227 711774177 711774177 945865345 945865345 570674064 350671303 507232888 789172228 789172228 547277898 940870852 940870852 890951211 621730343 371197984 131108736 131108736 127667832 67395632 141331468 141331468 942162096 942162096 352444458 352444458 352444458 204227680 328098456 328098456 178650688 178650688 539042049 539042049 174170441 912721141 912721141 664634512 356647099 210595908 294311010 294311010 218942514 428736904 632326308 763937336 763937336 1052149037 1052149037 956749863 698561031 1014730944 1014730944 285484450 285484450 810145297 810145297 294309936 600036083 600036083 283453890 532799868 532799868 1005253044 1005253044 971308179 974176791 974176791 836733651 856740412 856740412 634703949 689981141 1028594610 1028594610 448684665 282730562 282730562 342808904 342808904 313126086 486090702 486090702 247474376 80019676 2622720 171574528 443074302 443074302 226102120 300822996 319826288 319826288 33628176 14746064 26611720 77990688 613945952 613945952 623879521 623879521 606002697 635734872 635734872 247556405 2235392 2886912 2886912 4194304 272633984 272765058 272765058 79848584 79848584 9446656 9446656 103459672 103459672 128566720 128566720 122344632 114008160 41092528 52502832 66259648 66259648 65399776 119658644 258349084 258349084 218337452 255291804 255291804 160798752 160798752 527926215 773009949 773009949 610669211 610669211 721554712 721554712 590118926 469781809 84578633 677303244 677303244 800366585 800366585 286261794 296086336 331013424 331013424 311833026 285921922 285921922 97684042 68317656 407558224 407558224 63555904 323598608 323598608 66608770 51855072 271923132 272248684 272248684 272303740 272303740 44901056 149431348 149431348 204392468 382945872 382945872 378646784 378646784 377184458 377184458 361895754 425332708 425332708 297275168 474257440 490918062 490918062 487872055 202095636 202095636 724388905 724388905 992151169 992151169 965574362 965574362 806644434 806644434 346079562 1017663490 1017663490 471339191 472779448 472779448 460986294 122952974 416236596 416236596 331872498 326929874 1049962561 1049962561 1054900584 1054900584 574089240 721838736 869646455 869646455 897868091 923463478 984791973 984791973 677141625 58794096 336467867 676017409 676017409 824483106 824483106 1037782682 1044379997 1044379997 910365432 910365432 512463890 402702552 630194793 630194793 268903078 444369457 522080722 522080722 504629790 445950602 445950602 393554352 336593418 56961978 270702240 300418978 300418978 280638088 176289856 206041104 206041104 183915472 246528728 246528728 138596956 209736908 249040300 249040300 188221576 145323648 22824192 22824192 17178368 14061056 52186448 66964416 66964416 61866864 19664160 166593028 174657824 179645268 179645268 147597200 183510208 183510208 473175616 473175616 142740106 89129024 399127688 399127688 297707120 386800698 386800698 336072330 337810050 337810050 40053760 105978128 105978128 91171368 91700136 107682728 200803744 350229584 350229584 378277888 378277888 226657392 470664796 470664796 148296912 148296912 75672224 134071036 211369340 211369340 618877049 618877049 207664552 698433205 698433205 761561644 761561644 726369156 642406081 595711928 244344216 244344216 211197976 246233368 246233368 174180184 105131312 105131312 97193504 97193504 93898432 93898432 21009184 21009184 4205121 921206976 921206976 806427409 850866770 850866770 173486850 173224596 172263972 793791532 793791532 521362928 521362928 342358410 425330630 425330630 436908830 436908830 1017644367 1017644367 1017693519 1024213120 1024213120 485247960 646455512 646455512 641468972 641468972 252968028 439911118 439911118 357242290 823460356 956639271 956639271 353884199 284741480 284741480 339520284 339520284 435077991 435077991 870013587 911949946 911949946 836111295 836111295 806769668 806769668 271428898 481559884 481559884 194523216 616577556 616577556 258215597 413959632 413959632 283154064 314234706 314234706 182114004 182114004 136397184 136397184 232747276 232747276 131300600 252041736 252041736 187056616 120832408 120832408 54619152 128280784 128280784 126381824 119350872 58791968 27736416 199008 8914944 8914944 8913920 276041520 537397586 686058770 686058770 689538098 689538098 969934036 969934036 792203697 527701780 354492938 553335036 553335036 612340365 629010345 629010345 611554229 971636006 971636006 945767759 833063936 745509124 745509124 625568360 158784420 290187924 405049040 405049040 1022173288 1022173288 975856983 935793195 486725888 486725888 196613152 554135696 591710385 599211271 953994951 1037059501 1037059501 759465833 546883137 565468040 565468040 165676260 165676260 33628176 184591428 324357810 324357810 377431712 377431712 381642170 381642170 84557170 86754738 325838946 367623658 367623658 386209418 386209418 328343666 319035442 275710532 180350196 177024084 536413146 536413146 415047692 513551534 513551534 425986470 122684088 289932466 289932466 89129640 310077986 310077986 377676088 377676088 376404576 96179880 96179880 90175520 69633064 67896360 39983288 119837464 119837464 87053224 223347132 260706812 260706812 337823638 337823638 66246112 245153724 245153724 527697218 668528065 921768412 921768412 718935881 306906889 786268760 786268760 806687651 806687651 650340809 850137682 850137682 758503816 758503816 679548665 744103997 803316164 803316164 214708700 783560132 783560132 685243077 645083525 604099520 612696137 612696137 839772484 839772484 738773288 679526469 679526469 151289856 956943131 956943131 864118474 864118474 642625145 857129099 857129099 618322537 236054408 706514582 1058613146 1058613146 387001442 337988890 337988890 286023832 119434040 37362432 169446916 216436944 216436944 211887868 39193596 151665856 154589988 154589988 161792142 497289582 502405410 502405410 296619042 296619042 294141568 294141568 287908160 289796464 319434224 319434224 33586224 47582640 47582640 23803296 28314704 39271056 39271056 35982320 31608848 31608848 14889344 86311210 328665778 328665778 365300314 917707010 917707010 389522410 818911232 846993648 921568619 921568619 852206739 852206739 771738657 606596975 606596975 444778450 444778450 822179215 822179215 733050766 733050766 918585422 918585422 864301300 864301300 861744819 861744819 858477446 677645189 677645189 690909732 690909732 603087072 603087072 564414515 857422867 857422867 807576466 585880801 824198130 824198130 846042945 846042945 54677523 282254082 561817249 594392704 860415841 860415841 591834786 305170688 866067393 866067393 493762460 493762460 991044389 991044389 706019540 706019540 613689288 613689288 1047929631 1047929631 436545558 673298196 673298196 454210179 513852670 513852670 785826000 822725685 822725685 732859866 857794212 857794212 660738489 660738489 927196295 927196295 782113369 782113369 781589085 899103339 966775276 966775276 932283576 932283576 804283173 804283173 594667573 980688020 980688020 313945443 958102675 958102675 496694209 481185999 845706515 845706515 808258946 808258946 537055233 405672247 959222726 959222726 616273218 361550456 454169142 454169142 143952480 159696996 531778561 909776667 909776667 645715079 755253280 755253280 698091930 625230327 152692493 579171740 579171740 1046561473 1046561473 770149474 770149474 414819512 414819512 319679538 335743866 396795545 669965817 913854803 913854803 847386155 847384659 807835099 807835099 863126499 863126499 573570321 828498339 828498339 639237464 639237464 353293616 387597040 387597040 337286794 278741512 291149442 291149442 269095938 30605376 223490720 223490720 15861228 6423168 8001408 16258688 16258688 14157504 8393792 6852754 281679042 823566272 823566272 576739746 646296130 646296130 126666665 946080917 946080917 709626247 709626247 143781637 171256732 937822380 937822380 166462271 104014616 1025053113 1025053113 355221678 902123688 1015934031 1015934031 725918970 167514084 167514084 163570848 59647524 146605588 146605588 26837252 32596288 32596288 30483168 921174432 921174432 56767771 173240380 393205592 530185618 530185618 193041374 436344492 436344492 505939806 505939806 443549574 372770586 309970202 475711448 475711448 402723904 411776070 411776070 9122880 333264028 826278542 831073863 831073863 901777113 901777113 529929652 529929652 184423700 300949769 897124075 1032894043 1032894043 484939150 837424120 837424120 945073236 945073236 401728506 754323090 754323090 693892773 722120496 722120496 959816525 959816525 950658375 988735322 988735322 235362836 235362836 725614785 725614785 966279782 966279782 562611297 24241056 701351873 701351873 691508736 688153105 688153105 572762693 701608494 701608494 1058572881 1058572881 601305824 567616241 618345907 618345907 606608413 739125001 739125001 976623750 976623750 742660113 742660113 945928927 1058973295 1058973295 1025197871 833708236 6619524 3280896 7383552 7383552 6680448 5533952 550053761 550053761 116392408 720897028 785647444 785647444 788065343 944893526 944893526 918886222 760585436 915933038 915933038 610698506 759726485 925769019 925769019 744410887 558629905 537396225 372277272 372277272 1027612082 1027612082 853152727 578427386 606261513 872484880 872484880 323544739 490478488 490478488 422085730 484711670 484711670 461115270 461115270 517167454 517167454 617884488 712680745 712680745 583057408 583057408 8391313 25329664 25350240 113024420 240124572 1055609880 1055609880 848820952 657348865 657348865 620944113 570720384 570720384 694700176 694700176 897824178 897824178 837293227 824715344 279906436 325362118 325362118 349049088 963971306 963971306 929057274 929057274 978858312 978858312 949134625 949134625 867764179 867764179 97423560 273271360 805861986 813817923 839427152 839427152 74707848 76723158 168825618 277030832 277030832 234377505 736282635 785716847 785716847 888076639 888076639 574737080 722824205 722824205 898282626 898282626 1015259286 1015259286 613102665 252553427 780140652 780140652 919244957 919244957 763952408 837151602 837151602 820300227 850528516 850528516 945865345 945865345 846469618 353614467 507232888 507232888 486577678 71565322 940870852 940870852 890951211 621730343 436783110 436783110 924918075 924918075 924910515 478623495 478623495 943927890 943927890 352444458 352444458 352444458 463231831 935932109 983828823 983828823 638020996 638020996 539042049 742501101 912721141 912721141 952371393 952371393 1015315622 1015315622 621070377 285360690 588829805 1037320482 1037320482 772850205 838158180 838158180 854068958 854068958 707750438 719397333 719397333 584410384 810145297 810145297 294309936 600036083 600036083 374217882 374217882 174922124 1005253044 1005253044 971308179 974176791 974176791 836733651 856740412 856740412 634703949 689981141 689981141 85367336 543091281 543091281 135704102 971259937 971259937 313126086 486090702 486090702 710224684 710224684 698204146 834050474 883286816 883286816 506806024 506806024 322242421 679741509 758128641 758128641 705433615 705433615 938478019 938478019 926113998 926113998 606002697 155527121 86057849 188053946 188053946 117688168 117688168 339990762 339990762 273510050 273510050 79908520 341446882 341446882 76019784 324598914 324598914 64768448 64768448 50899824 49005936 41092528 52502832 66259648 66259648 40246144 119658644 258349084 258349084 218337452 255291804 255291804 102832676 333217584 333217584 310082706 310082706 511907692 635569450 747111501 765493583 765493583 138596680 216007116 677303244 677303244 615255369 222387048 393991132 393991132 331013424 331013424 311833026 285195328 285195328 128689754 465154664 465154664 340861578 143745556 287555664 288494370 315725600 315725600 47585744 46858816 46858816 52036800 56135136 56135136 60281808 60281808 53659824 49548240 48322960 42179216 38900930 377184458 377184458 361895754 425332708 425332708 297275168 190115946 436256790 487872055 487872055 253755708 202095636 724388905 724388905 992151169 992151169 1046999330 1046999330 709273903 818561863 818561863 478075407 286934212 286934212 399770466 399770466 524187568 533593952 533593952 358736160 358736160 458390686 458390686 335876668 810422272 810422272 282987649 344768704 344768704 340370392 340370392 639877175 989917465 989917465 650950256 529540765 529540765 279588865 1024594204 1024594204 493190213 303268771 307134708 615750699 615750699 512463890 512463890 402702552 276926516 268903078 268903078 324341594 369102627 1069548765 1069548765 445950602 695301519 749248031 913764805 913764805 874438155 931140795 931140795 342468728 920207417 920207417 254761968 187099480 187099480 112437980 42205824 97847560 97847560 78946648 145323648 145323648 85203914 294142786 294142786 283905474 283905474 52170048 303917370 303917370 76650600 396036978 396036978 179645268 179645268 440667334 440667334 932986351 932986351 843265565 826937081 826937081 867173235 867173235 626078099 366544578 901841123 901841123 909710097 909710097 887027138 359766786 359766786 731528487 731528487 508109982 590151893 590151893 280925240 67207168 226657392 696356911 696356911 470664796 915556369 915556369 479120492 134071036 134071036 572116701 618877049 618877049 207664552 698433205 698433205 761561644 761561644 726369156 651334752 651334752 244344216 244344216 211197976 246233368 246233368 174180184 120398368 120398368 97193504 97193504 93898432 111690696 111690696 65673008 118875824 921206976 921206976 897985561 957101339 957101339 436700259 931669598 931669598 464607847 463128692 521362928 521362928 342358410 46970202 27284288 16908384 2097156 136315140 372017928 439928598 1024213120 1024213120 813746884 853304728 977360391 977360391 951768903 778980691 611846025 71828225 545832960 823460356 956639271 956639271 353884199 135526446 403771688 403771688 102725396 0 965356917 965356917 911949946 930607027 930607027 836111295 805899538 805899538 516464894 848918152 848918152 831750913 632402795 632402795 762381500 932458375 932458375 1050945867 1050945867 907447437 661149354 453986812 453986812 448309956 232747276 232747276 131300600 395342090 395342090 187056616 104913176 270768160 360276002 396526256 396526256 386282234 386282234 313145992 339744674 352008138 352008138 363278176 363278176 276041520 276041520 276564784 323486898 538448448 538448448 774818170 774818170 527701780 681235252 681235252 738722829 973739889 973739889 398145402 940289900 965003367 971636006 971636006 945767759 833063936 745509124 745509124 625568360 158784420 406847505 406847505 405049040 1022173288 1022173288 935793195 935793195 579814643 579814643 758309476 758309476 591710385 599211271 953994951 1037059501 1037059501 759465833 546883137 565468040 565468040 50351328 50351328 51752080 53750032 324357810 324357810 377431712 377431712 381642170 381642170 84557170 86754738 325838946 367623658 367623658 386209418 386209418 328343666 319035442 275710532 180350196 177024084 160017776 69897344 69897344 339431736 387923514 387923514 119549960 87414056 379668440 379668440 61341770 4260736 8448 11521000 14536488 96179880 96179880 90175520 69633064 67896360 38043952 86026920 117980160 117980160 117679616 52817664 118268328 118268328 55911024 143756592 189591092 189591092 527697218 668528065 668528065 445192134 445192134 213191280 786268760 786268760 806687651 806687651 650340809 850137682 850137682 133324296 133324296 109855136 134219264 242746513 706753625 706753625 783560132 783560132 685243077 645083525 604099520 645931545 645931545 839772484 839772484 917214276 917214276 916267039 916267039 916196456 916196456 653167824 653167824 621857960 543083081 71521033 49671120 85798416 359997224 359997224 387001442 387001442 268445090 104596360 119434040 119434040 85460520 169446916 216436944 216436944 211887868 39193596 151665856 154589988 154589988 161792142 497289582 502405410 502405410 296619042 296619042 294141568 294141568 287908160 289796464 319434224 319434224 33586224 47582640 47582640 23803296 28314704 39271056 39271056 35982320 31608848 31608848 25742368 86311210 328665778 328665778 365300314 898044466 1012140212 1012140212 818911232 818911232 543413251 815553126 852206739 852206739 771738657 582899487 428094741 317850450 317850450 1006799164 1006799164 481088208 504503090 504503090 820191677 864301300 864301300 789031600 94529552 94529552 61680278 553800896 553800896 541351360 541351360 52230145 55001040 59892336 59892336 16974112 16974112 595735552 595735552 846042945 846042945 54677523 297822464 297822464 50915266 16826400 16826400 305170688 305170688 41039760 41039760 69207056 69207056 125968392 125968392 706019540 706019540 676024884 684071109 711612109 711612109 419444286 723822908 842974455 842974455 503444391 413213926 785826000 822725685 822725685 732859866 857794212 857794212 660738489 696337286 837936099 837936099 365540645 629748252 629748252 899103339 966775276 966775276 568770777 665184753 804283173 804283173 824948070 980688020 980688020 414229877 958102675 958102675 602202116 859881651 859881651 845706515 808258946 808258946 537055233 405672247 959222726 959222726 616273218 346711698 454169142 454169142 166099828 166099828 531778561 909776667 909776667 645715079 755253280 755253280 99783621 78053824 88289448 579171740 579171740 1046561473 1046561473 770149474 770149474 520216866 520216866 419506178 318802736 281707186 269901536 913854803 913854803 847386155 537010624 537010624 78117192 78117192 69605640 77991944 77991944 75632712 8519936 272701480 335882760 362589218 362589218 337286794 278741512 364479944 364479944 350955304 267595868 27447648 91481576 91481576 121681312 121681312 118698552 126038136 204525480 210440048 210440048 281679042 823566272 823566272 308545938 308545938 575473788 756311997 946080917 946080917 800208686 996621572 996621572 604863207 604863207 419892262 419892262 206255244 1011397296 1011397296 301995314 902123688 902123688 390249945 693212489 693212489 674210869 990505095 990505095 322370035 221678768 307022382 307022382 1023827587 1023827587 705626117 422393372 408870534 408870534 393205592 530185618 530185618 193041374 436344492 436344492 505939806 505939806 483919566 483919566 788570113 788570113 475711448 970927699 970927699 349191400 297935424 922376932 922376932 826278542 992027773 992027773 943208966 781139037 564462848 172768596 300949769 897124075 1032894043 1032894043 484939150 837424120 837424120 551646371 551646371 417385826 754323090 754323090 693892773 722120496 722120496 674760453 950658375 950658375 988735322 988735322 253725732 557081600 727389181 727389181 630508137 978624002 978624002 692863221 459630262 691508736 717997700 717997700 450462647 1046217347 1046217347 891119004 1058572881 1058572881 468710886 704811028 704811028 536920065 606608413 739125001 957220370 957220370 303569959 776866824 776866824 336462991 302921090 302921090 138484608 138484608 98898464 141684128 141684128 23931296 23931296 14629504 21602784 102352744 116392408 116392408 785647444 785647444 593193184 593193184 918886222 918886222 760585436 915933038 915933038 800996690 759726485 925769019 925769019 857247228 558629905 537396225 915561311 915561311 1027612082 1027612082 853152727 835764795 835764795 872484880 872484880 346688242 490478488 490478488 829164963 885820401 885820401 461115270 652597566 652597566 990768771 990768771 716989100 787213496 787213496 583057408 989282777 989282777 755232813 928238159 928238159 1055609880 1055609880 848820952 606393640 969400520 969400520 921119411 133908763 308568118 690333956 897824178 967676334 967676334 824715344 469517556 404758318 325362118 240407998 963971306 963971306 835953389 696616996 978858312 978858312 949134625 949134625 867764179 867764179 322826034 903229362 903229362 813817923 839427152 839427152 469905926 469905926 337776906 146350904 119088204 67118592 412158726 412158726 15474098 777603778 777603778 766170477 622144041 622144041 616432921 73512289 1015259286 1015259286 809900163 252553427 780140652 780140652 919244957 919244957 879496587 879496587 837151602 158118756 850528516 850528516 890579499 890579499 846469618 353614467 310444546 310444546 448976335 665329145 665329145 486182255 795380262 795380262 990778931 990778931 924918075 924918075 924910515 557891745 557891745 943927890 943927890 970460540 970460540 945889671 856777233 935932109 983828823 983828823 638020996 638020996 273093124 742501101 742501101 113286192 952371393 952371393 1015315622 1015315622 897613900 897613900 588829805 1037320482 1037320482 772850205 838158180 838158180 854068958 854068958 828801879 740856328 898658208 898658208 517374488 379448648 75268226 278324224 278324224 374217882 374217882 174922124 174922124 157673892 157673892 65276400 65276400 29101920 29101920 16044448 30020324 139758148 139758148 54830448 543091281 543091281 135704102 971259937 971259937 424158324 424158324 307807890 710224684 710224684 698204146 834050474 883286816 883286816 506806024 506806024 322242421 679741509 1016136256 1016136256 705433615 705433615 938478019 938478019 926113998 926113998 594945841 594945841 546310273 465023303 188053946 288836882 288836882 339990762 339990762 273510050 273510050 79908520 341446882 341446882 76019784 324598914 324598914 29992600 34982976 34982976 28175712 28175712 17566752 44431392 44431392 32281712 21284928 29495520 35998096 35998096 17793152 45015440 45015440 333217584 333217584 476733070 476733070 511907692 635569450 747111501 765493583 765493583 690522355 1032706506 1032706506 77779076 1041252333 1041252333 393991132 393991132 379461210 246706980 428697590 428697590 285195328 503611904 503611904 465154664 438863208 438863208 287555664 288494370 315725600 315725600 46137552 46137552 26091088 52036800 56135136 56135136 32613216 18203520 13243584 13243584 15225216 15225216 17656032 29976864 29976864 149346756 149346756 69326924 911833953 911833953 404454136 862697741 862697741 495136878 588122386 984150023 984150023 663222393 430663916 1072641416 1072641416 709273903 818561863 818561863 1023675028 1023675028 720047925 790761687 954937771 1057961050 1057961050 774085293 358736160 671853325 671853325 819184335 819184335 472277088 696389935 696389935 929300444 956903789 956903789 586154960 639877175 989917465 989917465 650950256 529540765 529540765 279588865 1024594204 1024594204 780564116 780564116 319578520 615750699 615750699 478175248 478175248 520268876 520268876 450475684 450475684 165231272 467960556 1069548765 1069548765 397944189 695301519 749248031 913764805 913764805 874438155 931140795 931140795 342468728 920207417 920207417 254761968 206766816 206766816 112437980 159391848 261104028 261104028 156323396 156323396 217704396 217704396 294142786 294142786 283905474 283905474 116766216 303917370 303917370 264815868 396036978 396036978 241618012 238737180 440667334 440667334 932986351 932986351 843265565 826937081 826937081 867173235 867173235 626078099 93565249 901841123 901841123 909710097 909710097 887027138 359766786 359766786 731528487 731528487 508109982 590151893 590151893 280925240 59400394 118113312 696356911 696356911 356964426 915556369 915556369 479120492 229181484 229181484 572116701 572116701 671811840 690437381 690437381 673419228 673419228 247765113 168543492 651334752 651334752 194671684 171887200 26533652 200043792 200043792 72198316 120398368 120398368 74850160 54544416 317220856 388634072 388634072 343933952 557845545 892922544 894014281 897985561 957101339 957101339 799811140 931669598 931669598 691360308 462605558 417469760 417469760 363078772 488203630 488203630 370865526 478150913 789054765 789054765 638321933 606866697 813746884 813746884 853304728 977360391 977360391 951768903 884024139 923887587 923887587 844752531 545832960 1023914530 1023914530 402653190 437594378 437594378 421302818 421302818 509054772 965356917 965356917 225493932 930607027 930607027 159045540 676570047 676570047 516464894 848918152 848918152 831750913 632402795 632402795 762381500 932458375 932458375 1050945867 1050945867 907447437 661149354 453986812 453986812 448309956 216688524 216688524 60418368 395342090 395342090 606743553 606743553 827097248 827097248 933962097 933962097 814387873 645107153 884998347 884998347 834408451 618269026 363278176 363278176 90448864 607545146 1041674682 1041674682 323486898 707344151 1004981648 1004981648 147378537 1069976205 1069976205 784467566 973739889 973739889 399673856 940289900 965003367 965003367 98813968 98813968 86158584 238749440 238749440 255326008 255326008 406847505 406847505 436449420 541348369 541348369 407760006 310513746 579814643 579814643 799568928 799568928 604966364 1030827338 1030827338 1028555788 1028555788 231708397 232370892 232370892 147493905 597479544 597479544 157581684 628359657 727761333 727761333 1060947759 1060947759 1026688555 750092353 891999531 891999531 888835889 841395698 319534352 302462994 292296256 16912416 16912416 21090432 21090432 16986144 6816768 69897344 69897344 339431736 387923514 387923514 271329592 369889978 379668440 379668440 329603146 70462346 293022912 293022912 287903776 31719528 26069224 14158864 35128848 35128848 63753456 361272488 361272488 321875728 276439312 276439312 118268328 118268328 55911024 163597376 283642060 361548922 395067648 395067648 183845952 183845952 42591428 8404928 8404928 283265864 283265864 314289730 314289730 15089664 369498130 371589898 467892902 467892902 465578048 465578048 706753625 706753625 713632000 753716685 753716685 201254637 183186900 645931545 645931545 392301532 419639334 917214276 917214276 916267039 1006070262 1006070262 647053378 653167824 653167824 67947528 32703168 32703168 35466792 357721710 357721710 261456856 57935776 60952944 281497952 301946848 301946848 43105872 85460520 85460520 145133656 178260052 218253512 218253512 164026596 160173156 160173156 79971424 74603144 74603144 73947176 84318432 84318432 88289448 88289448 89003144 89003144 84091264 6605184 24839392 26740320 26740320 65741248 65741248 14397440 14397440 9468928 11370656 25742368 25742368 85274656 254940952 446693848 446693848 242363220 1012140212 1012140212 686173575 686173575 809906596 883898621 896218539 896218539 437782038 732304750 732304750 313660242 313660242 1006799164 1006799164 50610459 504503090 616841812 616841812 134352900 789031600 789031600 448006998 448006998 49732560 553800896 553800896 27319808 50520064 50520064 58119378 270981218 323050386 588740641 588740641 843494146 843494146 546487635 546487635 292889520 297822464 862117475 862117475 594064768 924420488 924420488 314245616 343539349 747108429 747108429 719746237 719746237 609349320 773069996 773069996 676024884 684071109 684071109 680841856 303417138 723822908 842974455 842974455 503444391 413213926 889941462 889941462 689505795 390854538 399503038 998462483 998462483 887757670 1034295663 1034295663 704126602 681772884 681772884 371454234 842517184 894879785 894879785 882037323 701103275 672451077 824948070 824948070 595249393 538917920 404817332 404817332 602202116 859881651 859881651 145843191 0 0 75513928 75513928 75530312 75530312 222858164 222858164 344445146 344445146 272752770 166099828 168831972 197470452 269599702 269599702 264872628 264872628 101790586 259163924 259163924 443879878 443879878 422781708 422781708 239149212 239149212 520216866 520216866 419506178 291646230 359979968 359979968 215747156 955807261 955807261 1047192330 1047192330 128693856 336319578 336319578 879924592 879924592 544342289 609622408 609622408 272701480 89467050 22344424 277930178 355097920 364479944 364479944 350955304 267595868 135588360 135588360 91481576 121681312 121681312 118698552 126038136 204525480 730104725 730104725 444237730 959749670 959749670 1032206435 1032206435 672753850 756311997 874930197 874930197 800208686 996621572 1013633447 1013633447 604863207 445217036 419892262 206255244 1011397296 1011397296 471102710 517972206 839664442 839664442 693212489 693212489 674210869 990505095 990505095 322370035 221678768 307022382 307022382 1023827587 1023827587 705626117 422393372 408870534 408870534 226114894 226114894 84412020 55050240 55050240 70369870 413212998 449955166 483919566 483919566 788570113 788570113 172921532 970927699 970927699 819599043 832590467 922376932 922376932 912994116 992027773 992027773 943208966 781139037 564462848 202587696 188027420 52637748 54728608 192434916 192434916 167362384 164401028 146258464 440973152 984801267 984801267 421053990 421053990 681080352 698013285 698013285 454190688 404327068 404327068 253725732 541250260 557081600 727389181 727389181 630508137 978624002 978624002 692863221 674020117 674020117 717997700 717997700 450462647 1046217347 1046217347 891119004 0 0 0 704811028 704811028 704660480 704660480 671749173 957220370 957220370 739382856 776866824 776866824 997051687 997051687 554324224 1015767464 1015767464 147326656 141684128 146055716 146055716 98227048 95933832 635221921 635221921 20498208 571245584 571245584 201902853 593193184 718277925 718277925 679482353 34343952 34343952 800996690 800996690 306381053 3038640 857247228 897247313 897247313 296318488 915561311 915561311 717098081 717098081 938004343 938004343 835764795 617922569 666512705 666512705 380206992 1050396671 1050396671 885820401 885820401 236116361 652597566 652597566 990768771 990768771 915707580 915707580 787213496 688131500 989282777 989282777 755232813 928238159 928238159 650430681 512300012 512300012 236452380 969400520 969400520 921119411 133908763 308568118 690333956 978974597 978974597 967676334 678243409 469517556 404758318 318810182 576068272 576068272 448177364 808546114 808546114 696616996 405111130 243656796 461687586 461687586 393658400 393658400 903229362 903229362 666440633 375551776 467796338 469905926 469905926 517352636 517352636 330534262 823968423 1032170909 1032170909 947258772 947258772 777603778 942344320 946814343 946814343 877267970 881728587 910297112 910297112 809900163 344197194 545261572 679741509 679741509 777431765 879496587 879496587 808890971 896249897 896249897 825637153 890579499 890579499 890628651 890628651 319215056 380524584 448976335 665329145 816317568 816317763 816317763 795380262 990778931 990778931 404098621 544218936 544218936 997258004 997258004 502942394 502942394 970460540 970460540 945889671 909446456 856777233 529563654 266519420 266519420 136500216 273093124 491649856 491649856 217888110 881355884 881355884 872993415 416861227 897613900 897613900 623497225 768514432 768514432 725098533 725098533 623040075 814940358 828801879 828801879 740856328 898658208 898658208 517374488 373554994 373554994 95883528 596858603 596858603 402277984 643669123 676155185 676155185 434791366 448361074 554034756 861031123 861031123 592877745 592877745 139758148 139758148 32387104 24447424 25892992 31720064 364194722 390722526 424158324 424158324 531765752 531765752 520476982 520476982 474675848 345542278 425152792 425152792 106538268 427928052 427928052 1016136256 1016136256 923918907 923918907 320332429 542435464 542435464 571638448 594945841 594945841 704926037 704926037 964975315 1061481173 1061481173 1046817183 944962328 88089280 88402120 88402120 94685544 94685544 99214824 99214824 80885128 52038488 36155392 36155392 28175712 58085856 58085856 63836368 63836368 44539376 58984864 58984864 29495520 29360352 23068992 23068992 15745504 13681344 299299308 476733070 476733070 319691826 411042860 470099982 470099982 506090592 940240344 1032706506 1032706506 998652349 1041252333 1065223422 1065223422 688796517 612434024 246706980 428697590 428697590 263976828 503611904 503611904 297358594 438863208 438863208 94913814 66658304 66658304 43603344 43603344 13292736 11852928 6839296 10490496 10900416 10934592 12900608 13896384 13896384 15225216 15225216 17656032 29976864 83565384 83565384 6089736 15636461 911833953 911833953 404454136 862697741 862697741 495136878 588122386 984150023 984150023 663222393 430663916 1072641416 1072641416 635070062 103734552 8788099 1023675028 1023675028 720047925 790761687 954937771 1057961050 1057961050 774085293 345430720 671853325 671853325 819184335 819184335 472277088 696389935 696389935 929300444 956903789 956903789 586154960 586154960 359197786 188743860 572543920 572543920 157178881 134352900 36621588 529884218 780564116 780564116 448964722 448964722 243974172 243974172 406970502 520268876 520268876 450475684 450475684 364917618 467960556 467960556 214963602 160333856 160333856 40233360 34086960 71434256 71434256 67535528 37913496 108188568 108188568 7976216 23756920 206766816 206766816 63549480 159391848 261104028 261104028 156323396 156323396 217704396 217704396 217228608 3463744 4458624 106095568 116766216 116766216 124798788 264815868 264815868 241618012 241618012 238737180 259791060 259791060 209847604 157815836 238159424 238159424 150539212 237113628 241316168 241316168 9507784 275825282 819303106 819303106 281039232 281039232 279134464 277932360 217958372 301614892 345958128 345958128 444701164 444701164 1033004140 1033004140 916000347 916000347 860749331 436721856 436721856 160614500 229181484 229181484 160477092 62398720 671811840 690437381 690437381 673419228 710036105 710036105 601454936 563611233 194671684 194671684 178500128 161202512 135507776 144384000 144384000 11305536 11305536 10686496 31166464 317220856 388634072 388634072 343933952 557845545 633604329 633604329 730804501 730804501 799811140 799811140 789112228 691360308 691360308 597300408 272863686 272863686 363078772 488203630 488203630 370865526 478150913 789054765 789054765 638321933 743702836 743702836 584918987 556376900 556376900 403187339 704263342 884024139 923887587 923887587 844752531 629327859 1023914530 1023914530 1053002306 1053002306 724301109 724301109 711364740 509054772 509054772 170943218 170943218 48597332 147725508 147725508 181729040 181729040 129298296 405951056 446742870 446742870 157389674 131138460 181474996 181474996 246621196 246621196 304583360 304583360 45257796 597078433 678504168 769924845 769924845 241172892 734387520 923545979 923545979 941889283 941889283 827097248 827097248 933962097 933962097 848557681 645107153 884998347 884998347 834408451 618269026 815910473 815910473 905251601 905251601 1041674682 1041674682 605717408 707344151 1004981648 1004981648 529561254 1069976205 1069976205 784467566 862640184 862640184 399673856 902038234 902038234 50871520 50871520 641735140 797573965 797573965 238749440 255326008 255326008 236675380 236675380 436449420 436449420 407760006 407760006 310513746 337875870 337875870 799568928 799568928 605045315 1030827338 1030827338 1028555788 1028555788 624623972 232370892 620839008 620839008 597479544 597479544 157581684 628359657 727761333 727761333 1060947759 1060947759 1026688555 750092353 891999531 891999531 888835889 841395698 319534352 302462994 271118416 321439058 420452672 420452672 195700916 174988692 160029104 94923944 153911588 255613214 404626950 404626950 335751728 369889978 369889978 394222696 394222696 399347936 399347936 293022912 287903776 31719528 26069224 14158864 35128848 35128848 63753456 361272488 361272488 321875728 276439312 276439312 104654904 91777592 22408608 163597376 283642060 361548922 395067648 395067648 106145728 106145728 14280024 8404928 241421964 283265864 283265864 314289730 314289730 169923140 369498130 371589898 467892902 467892902 465578048 465578048 197144584 75571272 619301196 753716685 753716685 201254637 183186900 152426416 67436616 67381256 69341448 289909000 449481018 449481018 1006070262 1006070262 474140814 474140814 109235422 88212032 32703168 113099304 113099304 357721710 357721710 261456856 57935776 60952944 281497952 301946848 301946848 43105872 203228928 203228928 241629692 241629692 243944980 243944980 177697180 160173156 160173156 93199464 161987080 161987080 152343840 32431584 21632160 21632160 21380352 6497280 29471984 37798224 42120528 42120528 65586672 65586672 65741248 65741248 60852208 64538352 64538352 32468240 32468240 23611440 16910592 254940952 446693848 446693848 242363220 262349680 676270352 686173575 686173575 809906596 883898621 896218539 896218539 582169425 732304750 950785048 950785048 483483798 483483798 456230025 938320920 938320920 755265037 955531552 955531552 419597037 444894038 448006998 448006998 49732560 49732560 43390816 14189376 50520064 50520064 58119378 270981218 323050386 588740641 588740641 843494146 843494146 579597393 579597393 312592992 312592992 862117475 862117475 594064768 924420488 924420488 372729900 372729900 798387519 798387519 719746237 719746237 1002245664 1002245664 986424507 986424507 605259913 936249034 936249034 680032803 303417138 533282586 982292574 982292574 646260825 889941462 889941462 689505795 390854538 399503038 998462483 998462483 887757670 1034295663 1034295663 704126602 681772884 806364381 806364381 842517184 894879785 894879785 882037323 701103275 672451077 424675328 730075271 730075271 831794289 831794289 595598295 595598295 959045893 959045893 817411394 305207046 305207046 179413750 754586701 754586701 598213812 809500766 809500766 344445146 344445146 272752770 1009511039 1009511039 538566688 622656056 622656056 459725238 459725238 319810896 323870202 382628018 443879878 443879878 399847940 207827812 207827812 485234734 485234734 235408440 235408440 83886184 359979968 359979968 215747156 955807261 955807261 1047192330 1047192330 131167200 336319578 336319578 879924592 879924592 544342289 609622408 609622408 9502978 9125312 16345664 280458952 355097920 355097920 284202848 284202848 115530440 135588360 135588360 465383286 465383286 400992230 400992230 100338996 52430160 730104725 730104725 444237730 959749670 959749670 1032206435 1032206435 672753850 672753850 1072538800 1072538800 807929091 337921242 1013633447 1013633447 457575845 445217036 962973170 962973170 874611377 874611377 471102710 517972206 839664442 839664442 637871170 163775140 163775140 55099712 149688960 214350356 214350356 254281116 254281116 70836992 70836992 20498208 205932036 205932036 214308148 518062862 518062862 486411952 486411952 365650682 341312058 375965082 375965082 103827074 385934496 385934496 144285848 172526268 214278208 818992128 819599043 832590467 832590467 814223936 912994116 912994116 334048779 202572340 117649464 202587696 202587696 188027420 142660192 200739664 200739664 192434916 167362384 164401028 303736880 440973152 984801267 984801267 421053990 421053990 681080352 698013285 698013285 615233110 646736957 646736957 589223754 993816424 993816424 695757521 995315763 995315763 332302439 332302439 672472325 674020117 674020117 442155344 447053254 447053254 187356468 818574924 818574924 987891346 987891346 228733157 498673486 498673486 704660480 704660480 671749173 639963161 639963161 739382856 1015422555 1015422555 997051687 997051687 813940934 1015767464 1015767464 147326656 135315972 153063808 153063808 98227048 95933832 635221921 635221921 84534312 571245584 571245584 201902853 542303104 718345427 718345427 679482353 546145285 906044150 906044150 944823027 944823027 902587136 619132242 902566042 902566042 296318488 810885691 810885691 717098081 717098081 938004343 938004343 106242136 545327769 839615873 839615873 380206992 1050396671 1050396671 244155136 569533712 761665965 761665965 211812833 340035840 340035840 915707580 915707580 341934491 688131500 688131500 786960402 900203883 900203883 472182410 472182410 512300012 908107872 933355899 933355899 914702619 374141376 22006001 32396407 588698098 978974597 978974597 678243409 678243409 853812103 853812103 180384006 576068272 576068272 448177364 808546114 808546114 915069985 915069985 386018576 805873777 805873777 393658400 393658400 369245682 369245682 375551776 375551776 296849592 513409518 513409518 517352636 517352636 330534262 823968423 1032170909 1053410728 1053410728 1011825807 232437991 942344320 946814343 946814343 877267970 881728587 881728587 940424281 940424281 471210514 1016465938 1016465938 482624076 370457514 370457514 343693456 808890971 896249897 896249897 825637153 809832488 865554520 994236895 994236895 319263878 984959094 984959094 744599124 816317568 816317763 816317763 919865030 919865030 869270103 252232764 544218936 790753552 997258004 997258004 964692280 1050937695 1050937695 121422198 909446456 909446456 385405717 338691565 338691565 956974774 1061176746 1061176746 641820039 641820039 437205706 881355884 881355884 872993415 416861227 411825222 604677120 623497225 625296224 699631852 699631852 471148624 512043102 814940358 814940358 415248963 115439616 115439616 437447954 437447954 373554994 373554994 129118712 596858603 596858603 402277984 643669123 676155185 676155185 434791366 458459984 554034756 861031123 861031123 592877745 592877745 305367238 55025152 46717136 40118528 334163232 369597760 369597760 390722526 390722526 289196612 531765752 531765752 520476982 520476982 474675848 345542278 530883264 530883264 334523710 427928052 427928052 120156362 782233160 923918907 923918907 320332429 542435464 858825530 858825530 1025942279 1025942279 704926037 704926037 964975315 1061481173 1061481173 1046817183 944962328 264545248 198524968 88402120 94685544 94685544 99214824 99214824 80885128 52038488 36155392 36155392 8468608 58085856 58085856 63836368 63836368 44539376 58984864 58984864 21058432 21058432 23068992 23068992 22916128 29674912 151389664 1067394340 1067394340 319691826 319691826 470099982 470099982 203894810 940240344 940240344 998652349 998652349 735844832 1065223422 1065223422 688796517 612434024 431110480 245366364 362907758 363121002 363121002 295876576 297358594 297358594 63476608 63476608 59847424 59847424 30484112 162169028 162169028 22179312 164459236 164459236 51539568 51539568 12900608 199017236 199017236 161589280 154405668 147431456 17008774 138235584 162284808 162284808 20021932 928633738 928633738 988046339 988046339 98894952 635765088 635765088 312604813 363037100 402756218 674284318 800354909 800354909 688015242 688015242 410393478 410393478 472784142 472784142 336346730 485090766 485090766 355209152 355209152 126880832 51648624 42164264 30826560 30826560 407715776 420164646 420164646 505099806 505099806 390438800 390438800 592765609 757570931 1029179055 1029179055 718812868 157178881 236170578 1034606188 1034606188 972042113 548195649 816653907 816653907 580437585 572097508 406970502 406970502 321073792 132120642 326215672 364917618 364917618 114874184 114874184 106432152 55619000 40233360 34086960 71434256 71434256 67535528 37913496 108188568 210872212 210872212 138535044 113956056 113956056 64656320 64656320 141243780 141243780 147916846 147916846 138940198 27527520 291378754 291378754 282930882 282930882 110722368 196543348 196543348 206271568 444724570 444724570 469832196 474120192 474120192 455874774 986718955 986718955 788339201 553390585 553390585 915481179 915481179 598283763 107045496 1003255367 1003255367 915659352 1067680134 1067680134 204710656 160946788 217958372 301614892 301614892 277297218 444701164 444701164 1033004140 1033004140 916000347 916000347 860749331 436721856 436721856 201353312 27603844 160477092 570664097 570664097 258989500 258989500 672303688 672303688 710036105 710036105 601454936 563611233 161154884 178500128 178500128 161202512 135507776 144384000 144384000 128492536 378664200 378664200 304642344 293340384 293340384 119165096 131122840 131122840 101728424 107253272 107253272 52954416 128451896 789112228 789112228 160432164 597300408 597300408 402707472 176180456 176180456 109159992 109159992 51040648 207946156 774374414 774374414 242535320 743702836 743702836 584918987 767863872 816122727 951872128 951872128 593054220 482080463 482080463 629327859 629327859 746177220 875394864 1053002306 1053002306 724301109 724301109 711364740 393586856 393586856 170943218 180549332 180549332 48879556 31098400 135887592 135887592 124859760 405951056 472764080 472764080 175645076 175645076 181474996 181474996 246621196 246621196 133305336 37699344 46516752 597078433 678504168 769924845 769924845 241172892 734387520 923545979 923545979 941889283 941889283 673573125 658625226 865284723 865284723 848557681 580597329 770364909 770364909 636749125 607017641 815910473 815910473 905251601 905251601 844787392 605717408 605717408 631523531 631523531 529561254 529561254 524689423 524689423 148487881 861144236 861144236 314053227 109225984 205955372 258331292 258331292 641735140 797573965 797573965 155753268 155753268 191628064 191628064 227808732 340809760 340809760 211473996 211473996 12982464 12982464 9912896 895543584 895543584 605045315 892405583 892405583 741073190 624623972 624623972 219188812 620839008 620839008 571998544 682623829 682623829 144705045 37748880 37748880 33554560 0 2098176 2098176 45273936 45273936 45273936 133434360 133434360 130304264 271118416 321439058 420452672 420452672 467046758 467046758 336118968 336118968 273334422 255613214 404626950 470206478 470206478 402837510 360162440 394222696 394222696 399347936 399347936 6815360 12648832 14882184 89264344 130172680 130172680 69780744 22594048 352856880 352856880 359313440 359313440 104654904 104654904 16871200 16871200 2097408 111214600 111214600 245440528 245440528 106145728 106145728 52077848 52077848 241421964 241421964 240078424 439802268 439802268 239939860 384353754 384353754 230477676 230477676 193752356 134939192 585118865 617283721 617283721 639705945 639705945 96132216 117726816 572138513 572138513 555746000 629689841 902643769 902643769 791610891 901256046 901256046 874389025 432290466 621140712 621140712 608174217 226525729 206637266 782833702 782833702 872851092 872851092 430909696 79609400 79609400 52435648 52435648 203228928 203228928 241629692 241629692 243944980 243944980 185195888 111793380 207024160 207024160 161987080 161987080 152343840 68042944 81054408 85813448 90948232 90948232 88067944 79041440 42120528 49162336 65586672 65586672 37556736 37556736 60852208 64538352 64538352 60034880 32468240 25176064 235025422 344074662 344074662 10496276 243544212 744700227 808124754 808124754 830544158 900077931 900077931 657787195 1040647030 1040647030 582169425 950785048 950785048 510565269 957013661 957013661 938320920 938320920 928169444 955531552 955531552 750296719 805339296 805339296 797590301 1037726141 1037726141 918784725 160940965 547885472 547885472 575604177 583585073 583585073 580256336 595771664 595771664 562471968 579597393 579597393 312592992 312592992 296617074 43465296 43465296 323779208 387708474 387708474 372729900 798387519 798387519 660476216 660476216 1002245664 1002245664 986424507 986424507 805569542 936249034 936249034 680032803 168215588 105587429 982292574 982292574 646260825 696004748 696004748 311182644 311182644 194729622 647938129 647938129 581980332 599920881 599920881 680211525 680211525 806364381 806364381 575149563 980486884 980486884 767373094 767373094 677644677 303125145 730075271 730075271 831794289 831794289 595598295 595598295 959045893 959045893 817411394 305207046 305207046 179413750 754586701 754586701 598213812 809500766 809500766 716230936 775082781 775082781 1009511039 1009511039 647343546 622656056 622656056 459725238 486603536 486603536 405950876 382628018 382628018 399847940 399847940 207827812 207827812 485234734 485234734 435234730 323691660 129511856 25165920 199520594 408285326 408285326 287786154 287786154 224017320 131167200 784334413 784334413 714790485 1054786719 1054786719 141822432 493879626 493879626 703020197 724054305 920200955 920200955 623416192 859554667 859554667 705747140 53737744 135615252 465383286 465383286 400992230 464784286 464784286 440959030 398461048 429033520 429033520 666112454 666112454 490799266 490799266 153493690 216384669 1072538800 1072538800 933494832 933494832 912935946 165859642 799183156 799183156 962973170 962973170 446983447 294154296 748818732 748818732 726913280 331543224 188934892 235669204 235669204 178156276 178156276 214350356 214350356 336053310 336053310 236415296 397740722 397740722 205932036 282540738 282540738 518062862 518062862 486411952 486411952 365650682 341312058 375965082 375965082 103827074 385934496 961339509 961339509 303041142 536896729 603529416 603529416 846767825 846767825 814223936 956877802 956877802 991597600 991597600 941508242 941508242 118717988 142660192 142660192 200739664 200739664 706462609 706462609 675332229 422234662 842492787 842492787 296611328 541209893 1000486407 1000486407 65078064 547715683 699814176 699814176 646736957 589223754 993816424 993816424 695757521 995315763 995315763 761233073 881929454 881929454 822260746 458657204 442155344 968812594 968812594 806894978 595348584 595348584 987891346 987891346 228733157 747696512 747696512 505438430 505438430 272646310 639963161 639963161 675158848 1015422555 1015422555 923342107 1061294271 1061294271 346095616 346095616 135434240 135315972 153063808 153063808 19939872 23932320 48253016 84534312 84534312 132874224 132874224 55102480 542303104 718345427 718345427 546145285 546145285 906044150 906044150 944823027 944823027 902587136 619132242 902566042 917319003 917319003 964421355 964421355 626368199 817961986 817961986 847764416 847764416 543716371 839615873 839615873 351934410 351934410 704116563 719539667 1052071276 1052071276 761665965 211812833 340035840 340035840 386247576 532161220 532161220 241241496 411566143 786960402 900203883 900203883 472182410 989281597 989281597 979757463 979608351 979608351 914702619 645679360 63457572 189550064 435511300 435511300 166273666 352619524 352619524 853812103 853812103 180384006 537233393 537233393 332202724 519887046 1006579108 1006579108 915069985 1024695584 1024695584 805873777 62315376 92348520 593420352 643702425 643702425 132948608 269157524 513409518 513409518 300138944 285421602 158844451 901438447 925103559 1053410728 1053410728 1011825807 517997022 649931922 705692181 807439880 807439880 638976904 843091999 940424281 940424281 876653100 1016465938 1016465938 660655179 1057813945 1057813945 1053553887 843285580 604380708 755762733 755764269 755764269 833046658 994236895 994236895 319263878 984959094 984959094 744599124 744599124 743595109 743077453 919865030 919865030 1040278468 1040278468 654618805 790753552 790753552 934492610 964692280 1050937695 1050937695 1042866566 672975446 672975446 644442121 647432522 741153990 956974774 1061176746 1061176746 896083371 938016785 938016785 891038684 829171506 502771439 969558162 969558162 965399655 965399655 716216419 625296224 270148465 471148624 512043102 512043102 216890392 101690828 115439616 115439616 149442640 149442640 360721184 360721184 129118712 129118712 82262336 110278676 511760726 511760726 433745748 433745748 458459984 458459984 426360262 427143398 427143398 305367238 305367238 46717136 46717136 40118528 334163232 369597760 369597760 34510384 165416160 165416160 348292616 362467978 362467978 205795464 272078528 272078528 530883264 530883264 334523710 283645864 283645864 120156362 96956016 575610520 576247440 576247440 538453000 858825530 858825530 1025942279 1025942279 337807662 337807662 875927942 875927942 825748132 419906062 419906062 264545248 198524968 99992200 73876192 43922256 43922256 129898712 129898712 66985968 45653696 26789472 2813248 2813248 19353600 29446272 29446272 4775296 13278208 13278208 21058432 21058432 17958784 18398720 32057728 32057728 420763048 1067394340 1067394340 722048846 680336501 487392298 906114474 927466683 927466683 375982194 529013022 529013022 735844832 735844832 622403285 499323168 499323168 431110480 340002954 362907758 420512782 420512782 342410152 303194954 118563384 253662212 253662212 294001360 307181794 328338432 328338432 174031040 178257492 178257492 164459236 59867456 51539568 14173312 199017236 199017236 161589280 154405668 229952864 229952864 138235584 162284808 162284808 20021932 928633738 928633738 988046339 988046339 746771990 746771990 789963978 789963978 852762455 852762455 674284318 800354909 800354909 688015242 688015242 410393478 410393478 472784142 472784142 336346730 485090766 485090766 844246275 844246275 319887384 713294915 713294915 213394464 467732340 511327598 511327598 420164646 505099806 505099806 390438800 390438800 592765609 757570931 1029179055 1029179055 718812868 386391082 386391082 1034606188 1034606188 972042113 548195649 816653907 816653907 580437585 572097508 90773592 421901968 508049032 508049032 391657440 385374026 385374026 195826220 523209342 523209342 143958644 351846696 351846696 390726690 524834698 536380896 536380896 270029656 329782528 329782528 322442640 322442640 319477122 308330898 130729284 380818396 380818396 360751018 487589964 487589964 281301312 291378754 291378754 282930882 282930882 110722368 196543348 196543348 206271568 444724570 444724570 469832196 474120192 474120192 455874774 986718955 986718955 788339201 553390585 553390585 915481179 915481179 598283763 127509912 1003255367 1003255367 915659352 1067680134 1067680134 421712096 414131544 414131544 185770614 340371268 340371268 210542034 572853828 672689781 672689781 638684713 638684713 746024420 746024420 201353312 201353312 166632472 82593792 570664097 570664097 258989500 258989500 653564701 697148876 697148876 84148608 55068096 75146216 96671624 96671624 15889032 15889032 79759120 79759120 121635000 128492536 378664200 378664200 365040122 293340384 293340384 102290106 374791691 868782131 868782131 567281385 1016193615 1016193615 546663516 958687754 958687754 884739818 1050543122 1050543122 508710912 208298442 474177796 474177796 486275022 486275022 409626036 964564516 964564516 706681347 706165265 565010625 565010625 767863872 816122727 951872128 951872128 593054220 418186363 184189830 901424320 1020793795 1020793795 746177220 679531008 349194311 33603600 108573858 355676970 355676970 378828632 378828632 265048714 180549332 143499908 145400396 179731452 794500198 1035814159 1040379711 1040379711 643883559 466391741 336789696 168298368 184234612 184234612 133305336 133305336 37699344 46516752 46516752 25360448 25360448 18040928 18040928 25473568 25473568 17875488 555265828 673573125 673573125 642905757 889840683 889840683 205754642 879255645 879255645 770364909 636749125 133442204 133442204 223741504 295778456 724721386 724721386 616876233 301992146 628453130 628453130 82314696 303548176 303548176 985569557 1040835615 1040835615 762497161 762497161 277881459 962063636 962063636 925157691 879526331 682888005 682888005 756839740 756839740 191628064 427108656 427108656 392503802 510495056 510495056 427819110 502074798 502074798 475541026 895543584 895543584 891390372 891390372 272646880 272646880 159722016 140612232 140612232 221385516 571998544 571998544 682623829 682623829 642027035 989334367 1024722103 1059067079 1059067079 1003095915 1003095915 819463875 819463875 816334019 542148034 133434360 130304264 181149840 223033508 223033508 169179732 467046758 467046758 336118968 336118968 273334422 146333062 402702342 470206478 858469981 858469981 402331150 375484088 257419964 330402182 330402182 70737256 96790728 629965968 629965968 563349736 130172680 128575152 131981608 352856880 352856880 359313440 359313440 323028362 105645752 274647088 274647088 268570626 402926700 402926700 278607426 245440528 178576216 507237466 507237466 421876666 185812892 79340136 225227300 447848292 447848292 239939860 384353754 384353754 279372098 312822594 312822594 302095120 585118865 617283721 617283721 639705945 639705945 93087329 86042720 572138513 572138513 555746000 629689841 902643769 902643769 791610891 901256046 901256046 874389025 432290466 621140712 658770105 658770105 653263833 653263833 782833702 782833702 872851092 872851092 430909696 50195008 49932560 52435648 52435648 136899592 136899592 166233524 216159180 216159180 185195888 185195888 111793380 207024160 207024160 86391464 92537064 92537064 68042944 81054408 85813448 90948232 90948232 88067944 79041440 8788032 49162336 64687296 64687296 37556736 37556736 38470640 52954416 60034880 60034880 25176064 25176064 235025422 344074662 344074662 56740324 243544212 744700227 808124754 808124754 830544158 900077931 900077931 657787195 1040647030 1040647030 613157961 728003698 728003698 510565269 957013661 957013661 809685296 171708180 928169444 928169444 750296719 750296719 805339296 805339296 797590301 1037726141 1037726141 918784725 160940965 547885472 547885472 575604177 583585073 583585073 580256336 595771664 595771664 539524401 539304193 539042049 305205600 305205600 302184802 312061992 345167418 345167418 387708474 387708474 72846514 111506832 111506832 660476216 660476216 615699273 822874976 822874976 335653963 805569542 805569542 406062080 690997766 776166673 974814681 974814681 746861411 629671017 25371913 17028928 17028928 146984128 146984128 408821264 408821264 143968836 19012 286785574 286785574 210316636 531965034 531965034 370412058 980486884 980486884 767373094 767373094 677644677 303125145 219934542 344183240 400609536 486940940 486940940 203495470 507196220 507196220 305570622 152400948 174588220 302645632 302645632 238208910 494928952 640834648 640834648 716230936 775082781 775082781 582457437 647343546 647343546 394962995 834734457 854250963 854250963 486603536 784555601 784555601 311422038 369865754 369865754 353052726 390277146 551301530 939263887 939263887 908461446 317723190 273943202 273678978 408285326 408285326 287786154 287786154 224017320 68159488 784334413 784334413 714790485 1054786719 1054786719 184814192 493879626 493879626 703020197 724054305 920200955 920200955 646748912 859554667 859554667 705747140 101719360 135615252 135615252 106505880 384079224 464784286 464784286 440959030 697093413 697093413 587037640 420089425 729354038 1033447023 1033447023 888705847 1027029807 1027029807 67124007 933494832 933494832 912935946 165859642 799183156 799183156 750833913 236987721 209764560 257970196 748818732 748818732 726913280 188934892 188934892 235669204 235669204 178156276 178156276 143059664 176108488 336053310 336053310 236415296 397740722 397740722 177913172 282540738 282540738 515519886 515519886 480928838 306231896 306231896 570607737 667669233 756249278 756249278 524350050 961339509 961339509 935855554 594576351 883001237 883001237 970723047 970723047 863851586 956877802 956877802 991597600 991597600 941508242 941508242 375984176 138206464 138206464 136499460 149204049 706462609 706462609 675332229 853573858 853573858 842492787 157885860 541209893 1000486407 1000486407 65078064 411046006 699814176 699814176 554795589 539239168 88129920 88129920 64491204 43143776 761233073 761233073 881929454 881929454 822260746 458657204 431280964 968812594 968812594 806894978 595348584 595348584 4654948 167722980 233427746 747696512 747696512 671797294 683783982 683783982 607683680 607683680 69329160 703145728 902309777 923342107 1061294271 1061294271 252913575 67638632 167543652 214235788 214235788 69049480 26844416 88918240 88918240 72990432 81310720 81310720 80999112 67879624 604815368 604815368 67757064 67757064 67231752 67231752 685056 1183744 271633088 271633088 271206464 602955072 917319003 917319003 964421355 964421355 695566420 817961986 817961986 847764416 847764416 653004249 908380904 908380904 365317656 728375935 728375935 719539667 1052071276 1052071276 866672931 832761841 960881648 960881648 461433340 639444225 639444225 796270196 796270196 411566143 378689642 378689642 478861333 1007573059 1007573059 979757463 979608351 979608351 822206499 645679360 566577573 929566056 929566056 634152223 166273666 912533282 912533282 899000021 899000021 415790356 405977636 405977636 332202724 519887046 1006579108 1006579108 587480273 1024695584 1024695584 537344001 537344001 92348520 640095530 927794443 927794443 877343883 659260674 385474972 300138944 300138944 285421602 158844451 901438447 925103559 925103559 652727016 544998464 517997022 649931922 705692181 780666440 877265030 877265030 843091999 843091999 756827140 876653100 876653100 856501299 660655179 1057813945 1057813945 1053553887 998379639 998379639 755762733 755764269 755764269 251947656 423261378 423261378 281777958 281777958 215682980 233215541 743595109 743595109 743077453 781500896 1035808623 1040278468 1040278468 693477432 1028775342 1061059359 1061059359 934492610 435315394 1042866566 1042866566 672975446 672975446 644442121 833527375 833527375 921907078 944000402 944000402 896083371 938016785 938016785 900020676 829171506 797052373 969558162 969558162 965399655 965399655 874952477 599638897 377073686 491465895 491465895 956307143 956307143 1021332220 1021332220 730495059 730495059 459614646 459614646 722702535 722702535 620831437 704716821 704716821 567280211 567280211 344238410 799072535 799072535 431573150 431573150 269484546 268435456 252586388 169983260 318795936 318795936 270897216 270897216 117984144 117984144 83515668 165416160 165416160 348292616 362467978 362467978 415559372 415559372 270714576 270714576 123335376 123335376 135336089 135336089 92634701 637668489 637668489 583612099 583612099 550504081 550504081 696478296 696478296 134217732 337807662 337807662 469897498 825748132 825748132 775307271 552603862 238347050 238347050 99992200 373327034 373327034 108834256 378339666 378339666 66985968 45653696 28811552 28811552 24050976 19353600 19353600 17961056 16457056 10854784 10854784 4728064 4728064 16359424 16359424 32057728 299129220 420763048 499113902 722048846 722048846 680336501 487392298 906114474 927466683 927466683 789101774 789101774 911048875 911048875 747560013 907880564 944906762 944906762 340002954 340002954 201377418 420512782 420512782 342410152 303194954 118563384 253662212 253662212 294001360 307181794 328338432 328338432 174031040 178257492 829179041 829179041 313951200 810046401 810046401 379228700 160094880 193251440 217369188 666183031 666183031 622374210 890391242 890391242 299553385 760216749 760216749 453390532 634961553 746771990 746771990 789963978 789963978 852762455 852762455 891490777 1028361615 1028361615 437554796 923586141 923586141 715130242 907018779 911747283 911747283 879744897 879744897 844246275 844246275 319887384 713294915 713294915 213394464 467732340 511327598 511327598 311662344 277395088 277395088 389023148 389023148 505876742 505876742 506536734 715859626 715859626 666284862 666284862 459290150 459290150 455419710 163842276 163842276 96503820 139594562 480510596 480510596 421901968 508049032 508049032 391657440 385374026 385374026 346239306 523209342 523209342 143958644 351846696 351846696 390726690 524834698 536380896 536380896 270029656 329782528 329782528 322442640 322442640 319477122 308330898 200409824 380818396 380818396 360751018 487589964 487589964 281301312 348392448 348392448 78314568 50883936 50883936 37611536 910928 43759104 188416112 188416112 171053844 101733140 147391688 147391688 115546052 128203396 206241892 206241892 177472064 138760352 207407104 207407104 127509912 269788730 269788730 277272642 277272642 421712096 421712096 499521774 912753071 912753071 477237934 477237934 210542034 572853828 672689781 872940593 872940593 638684713 746024420 746024420 552426733 405060120 266946252 266946252 259633612 784896564 784896564 201927812 210314316 697148876 697148876 55068096 55068096 44143200 44143200 17375488 1257984 1257984 1257984 1249792 688640 98698202 325588024 365040122 365040122 323356880 391796338 391796338 374791691 868782131 868782131 567281385 1016193615 1016193615 546663516 958687754 958687754 884739818 1050543122 1050543122 508710912 911918233 911918233 474177796 486275022 486275022 577792093 964564516 964564516 706681347 926891832 926891832 858274344 76555906 348726474 805691807 805691807 995699288 995699288 949777027 901424320 1020793795 1020793795 679531008 1010980867 1010980867 638243865 843673738 843673738 355676970 662914141 662914141 265048714 541786397 541786397 145400396 179731452 794500198 1035814159 1040379711 1040379711 728622564 973702314 973702314 187172148 403285026 403285026 90322860 157466632 157466632 279603216 810231127 956795168 956795168 678184437 259179180 780108296 780108296 554006129 168131589 714265173 714265173 642905757 889840683 889840683 647016202 879255645 879255645 677948837 677948837 351085644 351085644 223741504 295778456 724721386 724721386 616876233 268790121 628453130 628453130 82314696 303548176 303548176 985569557 1040835615 1040835615 909110747 909110747 277881459 962063636 962063636 925157691 879526331 682888005 682888005 756839740 756839740 133006176 427108656 427108656 392503802 510495056 830793759 852693471 852693471 745208975 795918705 795918705 715257725 891390372 891390372 366012423 272646880 256674340 28188000 135866440 221385516 221385516 722732341 722732341 678464980 678464980 989334367 1024722103 1059067079 1059067079 1003095915 1003095915 819463875 819463875 816334019 542148034 52709856 43851776 181149840 181149840 84935208 236412968 236412968 195435700 130758632 240986188 240986188 428673286 443419604 443419604 858469981 858469981 402331150 375484088 263603464 330402182 330402182 70737256 96790728 629965968 629965968 563349736 340600346 128575152 131981608 131981608 286875930 340086016 374800290 374800290 105645752 274647088 274647088 268570626 402926700 402926700 278607426 178576216 178576216 507237466 507237466 421876666 185812892 89096728 316590008 447848292 447848292 271631106 214061770 136522512 279372098 312822594 312822594 302095120 60991200 60991200 42757248 36247616 44695808 44695808 42234432 43771472 105740432 277645460 293755628 293755628 326962200 326962200 219361836 512370290 512370290 142619136 579260648 658770105 658770105 653263833 653263833 653665954 653665954 273332908 273332908 543112833 543112833 37712337 24151360 595104848 595104848 609343008 609343008 118199304 42606680 38274192 88523008 88523008 2306304 219668480 219668480 22542380 21371040 6033056 84557856 87295200 87295200 12304736 77011736 77011736 86174064 109158632 109158632 54872104 35590144 108200808 110703160 110703160 100448240 58805568 24027504 88604992 175061396 175061396 168684580 97058880 214437064 214437064 175149476 135531012 62265360 62265360 60952944 25561360 713631772 713631772 613157961 102248128 390975008 578160850 578160850 103364240 142291748 142291748 355858340 771235778 771235778 557777974 557777974 412055898 412055898 337463320 338566656 338566656 12350464 33555584 33555584 30146736 17564832 46923826 46923826 25551874 841179154 841179154 570716241 539306241 305205600 329449520 329449520 312061992 345167418 345167418 337949296 290243722 296870754 929321315 929321315 881139454 1015285839 1015285839 822874976 822874976 335653963 269295626 201752576 406062080 690997766 776166673 974814681 974814681 746861411 629671017 148062564 148062564 284027652 284027652 158555360 697172731 697172731 260232330 478189696 478189696 232462388 588197844 928973487 928973487 309144978 441022467 441022467 238060288 238060288 170967828 193060980 264323597 866841841 1014616179 1014616179 741913474 203495470 0 0 0 123364712 174588220 302645632 596690467 1002439874 1002439874 578307939 578307939 1067323190 1067323190 1031708667 604953673 622555594 818801059 828725784 834734457 854250963 854250963 176933072 784555601 784555601 503497754 503497754 730221852 908775511 908775511 551301530 939263887 939263887 908461446 317723190 273943202 273678978 279588216 388180090 388180090 46214208 79177280 93061408 93061408 8652800 8652800 8652800 10485872 184814192 222953696 222953696 144389700 145364256 145364256 135340132 646748912 646748912 238776332 238776332 101719360 86065144 375390618 375390618 391184490 391184490 386702440 386702440 1009519845 1009519845 961231592 819278877 983960580 1033447023 1033447023 888705847 1027029807 1027029807 240276085 262566674 312725804 312725804 151126292 151126292 67682476 155714724 157811844 205571336 205571336 209749384 209749384 92344504 235102968 235102968 191161028 191161028 24610884 132536328 132536328 105180736 239856820 239856820 229745828 229745828 184730060 177913172 127698244 161434200 446534740 480928838 480928838 310956224 310956224 570607737 667669233 756249278 756249278 524350050 524350050 935855554 935855554 594576351 883001237 883001237 970723047 970723047 863851586 439088406 128554084 505779204 505779204 459290112 459290112 375984176 62979264 62979264 169460388 176317684 176317684 58847232 289407056 853573858 853573858 270606594 270606594 270606594 146363508 146363508 23187712 948210916 948210916 682922500 693387696 693387696 793391360 963169683 963169683 571882540 103704838 84407720 339957890 339957890 411542092 416424132 416424132 809392838 809392838 808336580 978571120 978571120 1033726371 1033726371 421665450 808251750 1021541327 1021541327 955299399 955299399 607683680 743448608 743448608 617679497 594373428 770698977 938981017 938981017 109232619 90006880 167543652 214235788 214235788 69966376 91837088 91837088 88918240 72990432 81310720 81310720 80999112 67879624 604815368 604815368 596380785 596380785 94894440 94894440 226639978 421156006 421156006 271633088 826607115 826607115 242092494 416621254 416621254 695566420 695566420 654585164 654585164 155206192 610307800 653004249 908380904 908380904 365317656 728375935 728375935 322811444 194033574 866672931 866672931 832761841 960881648 960881648 461433340 639444225 639444225 796270196 796270196 956867180 956867180 596209217 498218618 1007573059 1007573059 328604241 341082304 822206499 822206499 566577573 566577573 929566056 929566056 634152223 159088038 912533282 912533282 899000021 899000021 415790356 191017364 191017364 191668344 191668344 42281040 587480273 587480273 55450800 537272320 537344001 537344001 69541889 640095530 927794443 927794443 877343883 659260674 385474972 466689104 466689104 425672358 306932310 86582568 95859208 919478368 919478368 544998464 541013840 384182993 383648784 383648784 877265030 877265030 738907149 878198810 878198810 559466145 370294272 341651146 352126072 352126072 331101002 276955189 998379639 998379639 721424450 158898528 253933836 253933836 447463256 447463256 162739044 845547078 845547078 568303584 692086050 973686487 973686487 826911955 1035808623 1035808623 923617737 759497216 1028775342 1061059359 1061059359 773898396 543162753 551847304 551847304 526738626 526738626 626376175 833527375 833527375 680134661 680134661 438082334 438082334 376124826 900020676 900020676 810234433 797052373 687082437 559991633 641601478 874952477 874952477 556826702 759903405 1028912615 1028912615 956307143 956307143 1021332220 1021332220 858062062 858062062 459614646 459614646 722702535 722702535 620831437 704716821 704716821 567280211 567280211 280012162 799072535 799072535 884547338 980993943 980993943 911477171 911477171 909915552 909915552 628334395 616100472 545572929 632789799 739256834 739256834 949217467 949217467 474297030 474297030 360895626 671193090 875700299 875700299 607220488 210054082 151832720 135336089 135336089 92634701 637668489 637668489 978937861 978937861 672256516 672256516 696478296 696478296 1053614342 1053614342 780340228 780340228 671352837 818427382 1028660716 1028660716 238347050 238347050 32809474 373327034 373327034 113320640 378339666 378339666 26663520 22023520 28811552 28811552 24050976 21832800 21832800 17961056 16457056 31430784 31430784 32195616 32195616 16359424 16359424 32670176 299129220 462758816 1046619056 1046619056 880877643 546505288 546505288 866140512 866140512 815915377 789101774 789101774 911048875 975298839 975298839 907880564 944906762 944906762 764627602 507961418 201377418 336388642 469779200 469779200 145760890 185733684 186923552 186923552 171127572 146936004 160204832 181993204 181993204 160160128 829179041 829179041 313951200 810046401 810046401 379228700 264265308 264265308 245268732 666183031 666183031 622374210 890391242 890391242 782578691 760216749 760216749 453390532 634961553 634961553 575280273 575280273 76360776 249907956 249907956 891490777 1028361615 1028361615 413411861 923586141 923586141 715130242 907018779 911747283 911747283 879744897 879744897 612859082 76027456 87040104 473506920 473506920 182477240 342000940 342000940 311662344 311662344 144316288 156496196 156496196 73613840 55096776 67108864 67108872 67108872 189247530 975898944 975898944 949020167 711989498 711989498 648281711 932920551 932920551 898487182 898487182 480510596 209912460 29452356 323031528 379597320 379597320 348266880 346239306 186647812 186647812 136839476 136839476 194528292 194528292 135430448 150995200 150995200 344674628 344674628 184754454 141681540 103359376 140509572 251135576 251135576 170004756 100144892 76040200 202142464 213383940 213383940 348392448 348392448 524746 50883936 50883936 450846102 450846102 80530500 188416112 188416112 445854036 445854036 310477444 150994944 18664960 18664960 25479680 180511392 180511392 168505940 47327232 60690448 60690448 147072564 147072564 57930672 188750852 188750852 139330698 499521774 912753071 912753071 477237934 477237934 186720564 875069738 875069738 872940593 872940593 848408606 453206614 552426733 552426733 405060120 266946252 266946252 259633612 784896564 784896564 739382269 776130969 776130969 643982749 249078693 142700748 142700748 130199752 73400716 23094504 23668128 78324432 78324432 91763400 91763400 325588024 325588024 323356880 323356880 391796338 391796338 333108978 320363802 362398208 362398208 92625504 286519808 286519808 399952458 399952458 378964186 437726276 437726276 419038018 911918233 911918233 274732416 341702546 341702546 932582560 932582560 647103127 376574874 926891832 926891832 858274344 390907552 390907552 652578984 652578984 995699288 995699288 949777027 889450539 454109494 546530514 546530514 1010980867 1010980867 638243865 843673738 843673738 515458126 662914141 662914141 250750032 541786397 660603414 660603414 246076636 303786818 303786818 857743131 1002916951 1002916951 973702314 973702314 442663074 403285026 403285026 171056272 171056272 157466632 279603216 810231127 956795168 956795168 678184437 259179180 780108296 780108296 648836008 648836008 714265173 714265173 617303629 617303629 569302497 815464706 815464706 688427589 677948837 677948837 351085644 351085644 832760386 832760386 464527324 464527324 417468870 843069822 1032156100 1032156100 984760322 984760322 811812627 308040977 310040466 894533674 909110747 909110747 129720107 4329600 5768832 5768832 40924184 665442368 665442368 79693176 133006176 133006176 383844681 383844681 324348594 478964955 830793759 852693471 852693471 745208975 795918705 795918705 715257725 614787626 614787626 366012423 256674340 256674340 164464700 219262724 219262724 80241424 722732341 722732341 678464980 678464980 55315632 51380784 54304448 54304448 15913920 368828594 368828594 321744050 321744050 321693968 117735976 75497544 235259480 236308504 236308504 525322896 525322896 93243940 378285280 533699678 533699678 428673286 443419604 443419604 336352138 336352138 324014770 324014770 263603464 225629376 225629376 18646016 28837728 335547776 335547776 340600346 340600346 935381211 935381211 73191048 833927929 902286808 902286808 876892707 910441121 910441121 620874267 611761410 686055052 757669572 757669572 15768768 141237064 168306712 227156168 227156168 82314696 89096728 316590008 437247238 437247238 460078290 460078290 432127030 238631056 316022869 939610515 939610515 844056899 849582483 849582483 626788201 637930633 637930633 577384905 294403521 831096474 868666612 868666612 471628018 312031356 312031356 219361836 1041250309 1041250309 343982692 343982692 429298176 429298176 612452868 612452868 668956785 668956785 486990539 486990539 543112833 543112833 37712337 61080080 595104848 595104848 609343008 609343008 132202928 249177176 249177176 88523008 88523008 2224776 219668480 219668480 22542380 21371040 6033056 84557856 87295200 87295200 12304736 77011736 77011736 86174064 109158632 109158632 71696768 69404680 108200808 110703160 110703160 100448240 62407392 27650400 88604992 122240128 122240128 220866816 220866816 214437064 953774257 953774257 314497202 150548422 180630548 705899152 726014133 726014133 801138881 1031060941 1031060941 509285381 958961340 979911320 979911320 142291748 142291748 355858340 771235778 961056579 961056579 813885092 813885092 977531031 977531031 677598935 560601301 188575477 588980576 588980576 537730243 864042019 864042019 826487840 553887859 841179154 841179154 570716241 601794480 601794480 329449520 548840867 558768360 654102489 670918664 670918664 290243722 296870754 929321315 929321315 881139454 1015285839 1015285839 646576907 646576907 486953089 486953089 874643460 874643460 906820408 906820408 444513370 444513370 156366533 877664226 877664226 759033645 759033645 461135670 461135670 697172731 697172731 565971863 741116294 839785491 839785491 588197844 928973487 928973487 320025138 441022467 441022467 238060288 238060288 170967828 384842456 384842456 866841841 1014616179 1014616179 741913474 228153180 195818868 195818868 105507856 145101980 145101980 129111488 596690467 1002439874 1002439874 578307939 578307939 1067323190 1067323190 1031708667 604953673 622555594 818801059 828725784 828725784 98879976 608182572 608182572 329530622 329530622 503497754 503497754 730221852 908775511 982925366 982925366 414046997 319679538 3312752 159721488 176560212 176560212 279588216 388180090 388180090 46214208 79177280 93061408 753265117 753265117 685892037 778649917 778649917 116528120 222953696 230838640 241222044 241222044 145364256 537401233 537401233 621743248 621743248 608349232 70983792 35601936 375390618 375390618 391184490 391184490 279448952 92575848 1009519845 1009519845 961231592 819278877 983960580 983960580 564868449 739359407 739359407 620108745 296711442 262566674 975314987 975314987 282949008 282949008 91580948 188082996 331900180 422628396 422628396 646989820 737186632 737186632 235102968 235102968 191161028 191161028 168862656 257663016 257663016 255448700 118078984 118078984 95646880 126470432 126470432 117084986 377115290 377115290 357903018 357903018 269860674 310956224 310956224 46317778 46662864 46662864 1232 109092944 109092944 109092944 310485472 593608994 736174441 736174441 184764557 456710712 456710712 303319888 128554084 505779204 505779204 35251728 35972096 35972096 62979264 62979264 169460388 176317684 690746661 690746661 629202950 629202950 469774423 759979432 759979432 674498184 674498184 680285769 861194931 948210916 966004413 966004413 749883435 693387696 793391360 963169683 963169683 571882540 103704838 356661028 411303490 411303490 411542092 416424132 416424132 809392838 809392838 808336580 978571120 1059939268 1033726371 1033726371 569748450 1022918273 1022918273 1021541327 955299399 955299399 319476758 743448608 743448608 960809127 960809127 822107961 938981017 938981017 610147977 539846912 123822264 625052331 625052331 373320634 606894721 606894721 273152130 664013433 862596721 862596721 249902760 722109703 722109703 719811669 649857152 738995962 1053093474 1067135031 1067135031 620606444 421156006 122552930 826607115 826607115 242092494 416621254 416621254 828651694 828651694 936184206 936184206 380216306 395611168 599813354 629443544 629443544 108937736 80658848 439427728 439427728 176358592 181014592 181014592 407976486 440017238 440017238 102793692 516453938 836883792 860566707 860566707 956867180 956867180 596209217 498218618 580000352 580000352 328604241 134479888 134479888 35684416 382828672 382828672 59563610 58978416 138159232 138159232 22161920 25860880 254082324 254082324 128636280 191017364 191017364 161616228 125995032 125995032 272784562 272784562 923534504 923534504 348924035 281356482 75702474 268894274 268894274 268699650 268699650 285347874 507511158 507511158 527712696 527712696 306932310 738787373 755232813 919478368 919478368 541013840 673350694 786032349 1053475885 1053475885 496616042 345749066 345749066 891155545 891155545 370294272 370294272 341651146 352126072 352126072 353942530 353942530 142421892 546072193 546072193 158898528 253933836 253933836 447463256 447463256 307038854 845547078 845547078 630223913 692086050 973686487 973686487 826911955 776298732 696313969 759497216 759497216 795214624 795214624 773898396 773898396 643829037 759465188 759465188 711618156 711618156 123596436 536887424 541114497 541114497 306307218 438082334 438082334 890052160 890052160 145628484 447552868 464334198 464334198 336674670 677472560 725928117 725928117 556826702 759903405 1028912615 1028912615 703804389 943008519 943008519 625886304 858062062 858062062 276365762 283125632 377512458 377512458 428206602 428206602 311550634 369363088 369363088 523185902 608954399 608954399 884547338 980993943 980993943 911477171 911477171 909915552 909915552 628334395 616100472 545572929 632789799 739256834 739256834 949217467 949217467 875908160 884598603 884598603 671193090 875700299 875700299 607220488 390567944 390567944 282198098 282198098 25346656 591414418 617333930 978937861 978937861 672256516 672256516 541463702 839103636 1053614342 1053614342 780340228 780340228 483330395 818427382 1028660716 1028660716 56656768 56656768 38797968 38797968 113320640 113320640 62405952 62405952 46180544 46180544 21374112 21374112 11922240 21832800 43298800 43298800 50147280 50147280 47920848 56684816 56684816 54071824 25460016 48306944 276916592 462758816 1046619056 1046619056 880877643 617657050 980101031 980101031 857268242 37925507 818041008 818041008 622895639 975298839 975298839 842035747 843190851 843190851 764627602 507961418 831694887 831694887 478335054 768848489 826952262 826952262 600577409 600577409 674555078 674555078 321075188 321075188 181993204 180260096 192624020 192624020 2637312 52040896 595120808 635572713 773882701 773882701 696528305 704982645 873709709 1010962575 1010962575 1065540431 1065540431 397994796 289939785 599228704 599228704 575221760 575280273 575280273 76360776 189531184 189531184 558735108 558735108 446531648 446531648 428166188 474604686 474604686 487230570 487230570 276917410 276917410 80075714 288258856 337882948 337882948 404362758 404362758 77075808 254870688 254870688 256586940 486634828 486634828 171620042 156496196 277073020 711719362 711719362 708371414 708371414 470839768 975898944 975898944 949020167 711989498 711989498 648281711 997196727 997196727 898487182 898487182 181601492 181601492 489297330 489297330 379597320 379597320 396928682 396928682 469869298 469869298 265339644 232358956 470671412 470671412 454087286 378962046 319173608 344674628 344674628 343004738 317446752 397991222 531228030 531228030 266154710 535582824 535582824 473966818 359139502 299944008 280364608 338468482 338468482 12372618 16134992 48048592 450846102 450846102 85565684 155821740 174110992 445854036 445854036 310477444 150994944 125868312 125868312 119722296 180511392 180511392 168505940 33663648 60690448 60690448 59193456 57930672 57930672 63625984 63625984 6634720 26423904 136521124 136521124 157888772 339971076 489643470 875069738 875069738 739336501 848408606 848408606 570950196 570950196 253375264 253375264 202016140 202016140 788186957 788186957 779802525 739382269 776130969 776130969 643982749 540535809 672186885 672186885 134351361 134351361 23094504 23668128 78324432 78324432 91763400 91763400 76087920 369295528 369295528 104935674 292625298 311317570 334270992 371460906 371460906 362398208 283755980 271404428 271404428 205292110 38591104 324528728 437726276 437726276 419038018 178731906 114504196 274732416 503317898 503317898 932582560 932582560 376574874 376574874 102508442 305152424 305152424 390907552 390907552 652578984 652578984 915672354 915672354 1026007727 1026007727 778093206 454109494 434334700 459577738 459577738 406620964 408292224 408292224 515458126 515458126 513170196 250750032 209401740 660603414 660603414 246076636 871892934 871892934 688414050 1002916951 1002916951 318055299 442663074 442663074 202933128 337997568 337997568 171056272 147795220 147795220 125045688 615977344 615977344 597762417 222729308 95943528 133706080 648836008 648836008 399033594 399033594 129171256 539791584 569302497 815464706 815464706 46463232 550661379 550661379 552190340 558891681 832760386 1015024456 1015024456 464527324 590707613 843069822 1032156100 1032156100 984760322 984760322 811812627 406792976 310040466 894533674 894533674 839106003 870904273 870904273 863913755 848317123 909928880 909928880 665569344 623263120 623263120 121739784 255888192 255888192 227928684 227928684 181446840 210051072 210051072 67312076 96542952 96542952 76031136 884255976 884255976 21778528 160287356 164464700 164464700 219262724 219262724 111676872 193986668 193986668 63440096 63440096 293367594 293367594 205611400 342984206 342984206 112232112 99141096 44566424 375161170 375161170 117735976 396632400 398532794 398532794 369697122 525322896 525322896 312409458 378285280 533699678 533699678 275941510 367534070 367534070 921865219 921865219 495527562 356026802 356026802 315935442 183624660 218972552 218972552 782577588 782577588 575930888 385874003 935381211 935381211 395586474 833927929 902286808 902286808 876892707 910441121 910441121 620874267 611761410 686055052 757669572 757669572 420165706 145687808 269160710 286069102 286069102 159787272 491785942 491785942 304276476 467281232 467281232 460078290 432127030 238631056 316022869 939610515 939610515 844056899 849582483 849582483 626788201 637930633 637930633 577384905 294403521 831096474 868666612 868666612 471628018 381490308 381490308 19277784 1041250309 1041250309 343982692 373424648 429298176 429298176 378687687 306444898 668956785 847253004 920431303 920431303 762191011 548874497 548874497 547830081 61080080 75546696 256252620 256252620 132202928 249177176 249177176 155527332 122490792 122490792 32521096 146608264 219558376 219558376 94804392 94804392 83935424 20108064 20108064 11591968 10670400 84058432 84058432 83959848 71696768 69404680 17775360 6365568 30443376 62407392 62407392 29859120 107961808 107961808 44056872 220866816 220866816 167486732 953774257 953774257 314497202 150548422 193661072 705899152 726014133 726014133 801138881 1031060941 1031060941 509285381 958961340 979911320 979911320 431834770 431834770 404218516 404218516 961056579 961056579 813885092 813885092 977531031 977531031 814911731 841223442 841223442 588980576 588980576 537730243 864042019 864042019 843206707 843206707 306185218 306185218 285390771 601794480 601794480 296988017 548840867 558768360 654102489 670918664 670918664 90705280 108793752 447485032 447485032 503415825 1007281167 1007281167 336094213 574890035 855705745 855705745 874643460 874643460 906820408 906820408 881095202 881095202 545984371 877664226 877664226 999309108 999309108 461135670 461135670 391684916 565971863 565971863 741116294 839785491 839785491 537599975 540818741 540818741 320025138 323428888 323428888 601942920 1012194176 1012194176 384842456 384842456 389600290 389600290 338761512 338761512 271200768 522551582 522551582 144532012 347738854 347738854 320221706 102739760 679478384 679478384 347996938 347996938 110500440 110500440 93199464 131522224 131522224 107496440 84316712 607426681 607426681 608182572 608182572 485581671 485581671 204669704 204669704 772276294 941695239 982925366 982925366 864563744 864563744 577973824 3416832 3416832 150893216 183203304 183203304 80511176 80511176 44011072 44011072 753265117 753265117 685892037 778649917 831474944 874511883 874511883 408944704 408944704 241222044 399919842 537401233 1041490801 1041490801 874559589 671739140 35601936 85001104 87167784 87167784 51532424 306368848 306368848 273603714 352863384 352863384 806199338 806199338 352503594 352503594 403894318 403894318 120287776 679678032 704716821 704716821 975314987 975314987 282949008 282949008 91580948 188082996 331900180 422628396 422628396 646989820 737186632 737186632 197429632 197429632 71848192 71848192 168862656 257663016 257663016 255448700 70359064 90433808 90433808 126470432 126470432 117084986 377115290 377115290 357903018 357903018 913354147 913354147 367297045 453018077 453018077 1047299530 1059900735 1059900735 350298570 350298570 148906036 805316868 805316868 872828993 872828993 867218175 544240550 303319888 45386258 939861151 992674373 992674373 843992065 843992065 212660092 212660092 51646224 134921732 690746661 690746661 629202950 629202950 469774423 759979432 759979432 831002664 875443017 875443017 861194931 861194931 966004413 966004413 749883435 598527345 190977560 221910828 221910828 227445344 227445344 356661028 411303490 809669632 809669632 138297732 32629728 172781460 172781460 28570464 28570464 1059939268 897911365 897911365 765757806 1022918273 1022918273 462991730 1035137377 1035137377 442201412 980993158 980993158 960809127 960809127 899196247 899196247 610147977 610147977 539846912 123822264 625052331 625052331 373320634 606894721 606894721 273152130 664013433 862596721 862596721 249902760 722109703 722109703 719811669 649857152 738995962 1053093474 1067135031 1067135031 620606444 382052954 342631324 447809370 914500690 914500690 741687135 846856962 846856962 828651694 936184206 936184206 380216306 820758560 820758560 329640154 329640154 394245152 394245152 439427728 439427728 153100676 171221392 171221392 4401184 419934433 546602011 546602011 415028992 836883792 860566707 860566707 685953603 24315029 104190120 104190120 205652933 231002382 763756601 763756601 605094597 476258380 684728841 684728841 544560551 225954222 1025595521 1025595521 875212083 103074072 622397681 622397681 42270256 170137712 170137712 161616228 151595076 125995032 537265329 537265329 923534504 923534504 577318001 577318001 133116273 657003978 923665723 923665723 918656098 918656098 507511158 507511158 527712696 527712696 275578019 738787373 755232813 755232813 671381544 332538124 673350694 786032349 1053475885 1053475885 496616042 345749066 745341081 891155545 891155545 136722724 134878212 676665217 676665217 769611072 773323880 773323880 242146092 293818914 293818914 106900888 211507908 211507908 215371286 215371286 307038854 307038854 134354976 630223913 630223913 563339336 156360720 776298732 776298732 696313969 650166921 536981504 536981504 706042064 706042064 46574101 643829037 759465188 759465188 1058585818 1058585818 804963405 804963405 1043877374 1043877374 714099773 486909866 798108212 890052160 890052160 445777934 98980400 98980400 713099812 713099812 677472560 725928117 725928117 601980948 624643836 865082291 865082291 661544390 739430925 739430925 172995225 688285736 688285736 276365762 283125632 377512458 377512458 580042768 580042768 562294937 599787361 599787361 956439889 956439889 449829796 640234560 794635965 861556499 861556499 775681821 161144137 89113872 281017610 281017610 226592888 264022628 703989184 703989184 984295852 1004984823 1004984823 884598603 884598603 411730811 243384558 290517218 290517218 390567944 390567944 425120451 425120451 423658705 840698469 840698469 600739569 432015382 432015382 541463702 814552080 839103636 839103636 444625045 206255244 506605644 506605644 404171102 517159768 517159768 108042730 108042730 54789552 388597034 388597034 116028272 393386226 393386226 46180544 46180544 5509184 14031552 14031552 18687168 43298800 43298800 50147280 50147280 47920848 56684816 56684816 54071824 25460016 48306944 276824096 276824096 725955527 725955527 649499814 1073532927 1073532927 980101031 857268242 819073731 818041008 818041008 813929352 888267723 888267723 120709944 455205644 487656120 487656120 966158401 966158401 831694887 478335054 768848489 826952262 826952262 600577409 600577409 674555078 674555078 465641718 434448084 150810564 199392192 806463093 806463093 332513984 333498217 595120808 635572713 773882701 773882701 881074176 881074176 873709709 1010962575 1010962575 1065540431 1065540431 383608954 22595232 599228704 678816984 678816984 889636956 889636956 592985187 756295819 756295819 609004906 609004906 446531648 446531648 428166188 474604686 474604686 487230570 487230570 276917410 276917410 108367392 288258856 337882948 337882948 404362758 404362758 58266558 167351378 167351378 256586940 486634828 486634828 171620042 98805168 361170713 711719362 714645064 714645064 845187795 949368396 949368396 909514525 909514525 596012226 596012226 627995906 997196727 997196727 838596579 838596579 822776512 181601492 489297330 489297330 58664456 45582610 396928682 396928682 469869298 469869298 265339644 232358956 470671412 470671412 454087286 378962046 319173608 112580600 343004738 343004738 317446752 397991222 531228030 531228030 529142910 535582824 535582824 473966818 359139502 341870094 280364608 338468482 338468482 307007424 307007424 368320308 445518000 445518000 444614282 444614282 394297384 167968948 138630196 138630196 67391608 536910145 547524873 547524873 627681721 864896913 907544091 907544091 656315443 597085051 624290832 624290832 653057440 653057440 596176256 16363854 285330000 1021108345 1021108345 987808699 987808699 489643470 489643470 626497024 626497024 462454832 462454832 891544149 945001205 945001205 502387364 202016140 202016140 788186957 788186957 779802525 662865892 610919817 563615112 563615112 540535809 672186885 672186885 235987224 134351361 78092872 78092872 37849072 85187776 85187776 57665930 57665930 369295528 369295528 104935674 402142122 402142122 334270992 371460906 371460906 283755980 283755980 271404428 271404428 405555402 405555402 324528728 454328404 518280950 518280950 674105353 674105353 204084492 503317898 503317898 412696159 1052520394 1052520394 527966002 207891406 140247580 185711540 206304532 223970460 223970460 171385790 915672354 941765684 1026007727 1026007727 778093206 434334700 434334700 155593094 406620964 431512902 431512902 127764512 127764512 613113521 613113521 249434324 789532433 789532433 707021988 19714837 871892934 871892934 796397376 722373550 914804746 914804746 733013016 312193074 137931276 337997568 337997568 279571590 265137452 330630684 405980246 615977344 615977344 597762417 590685592 590685592 435550278 435550278 366584336 399033594 399033594 129171256 129171256 623293536 681951104 681951104 466399744 541585553 541585553 552190340 558891681 558891681 1015024456 1015024456 758108201 758108201 590707613 317930304 436703622 436703622 177292118 406792976 406792976 308897042 308016786 280955200 810646264 870904273 870904273 863913755 848317123 909928880 909928880 665569344 623263120 623263120 121635000 289407181 289407181 319922330 319922330 1014142919 1014142919 963136391 803607771 1048922436 1048922436 520892658 884255976 884255976 342765864 342765864 915876994 915876994 848705323 848705323 644747625 656490024 656490024 675816744 742207245 742207245 704399077 605644557 583532672 583532672 112232112 99141096 71303176 375161170 375161170 97847304 396632400 398532794 398532794 369697122 342699426 312409458 312409458 104840098 513390672 513390672 275941510 305798146 321295190 921865219 921865219 495527562 418917510 418917510 315935442 223431168 364388386 364388386 782577588 782577588 575930888 385874003 817685792 905150305 905150305 858781993 595713738 595713738 551352259 288570897 340228632 340228632 74399112 74399112 212407332 420165706 420165706 145687808 269160710 286069102 286069102 159787272 491785942 491785942 304276476 467281232 467281232 174186900 126307724 36702840 122979088 122979088 79741128 80757248 80757248 22301472 17039648 58852704 58852704 50994480 50994480 34255936 69206016 437541746 437541746 381490308 381490308 93201040 136913780 425787936 425787936 373424648 600836249 600836249 205557888 181551300 77325964 847253004 920431303 920431303 762191011 548874497 568265409 568265409 596848368 596848368 610023760 610023760 115849552 145187128 155527332 155527332 486159270 486159270 239333532 495844328 495844328 305455318 94804392 238561420 238561420 280111556 345272460 345272460 50595888 84058432 84058432 83959848 103752200 120989888 120989888 113816240 113816240 89512464 61418560 29859120 107961808 107961808 467693810 467693810 283979202 356048270 356048270 358143504 476921112 476921112 306134460 405672032 405672032 160506468 221135376 255778620 662068537 662068537 258349500 709673241 709673241 431834770 431834770 404218516 404218516 574998541 574998541 1006653972 1006653972 676808706 292916656 814911731 841223442 841223442 545521744 328728610 51782672 848852673 848852673 843206707 843206707 306185218 306185218 44708128 27886928 24778656 812640384 812640384 5205379 18535968 57222400 57222400 38113160 108793752 447485032 447485032 426772198 1070613162 1070613162 1032119023 574890035 855705745 855705745 536887298 812085385 812085385 638503208 881095202 881095202 545984371 389846642 543245676 999309108 999309108 362939444 514463070 514463070 193578050 95106408 189121618 432876774 820903776 820903776 681524805 273617797 275911554 275911554 741443904 741443904 1012194176 1012194176 238316218 160847696 389600290 389600290 338761512 409261076 409261076 522551582 522551582 144532012 347738854 347738854 320221706 102739760 679478384 679478384 347996938 347996938 110500440 110500440 93199464 131522224 131522224 123458992 123458992 607426681 607426681 571515088 571515088 485581671 485581671 204669704 204669704 772276294 941695239 949033222 949033222 864563744 864563744 577973824 412233792 412233792 434676518 434676518 183203304 273180706 273180706 177210464 113421456 67373064 67373064 810371264 810371264 831474944 874511883 874511883 424811586 424811586 411041862 405456438 399919842 1041490801 1041490801 874559589 671739140 67691168 85001104 85001104 42470400 10671360 306368848 306368848 273603714 352863384 352863384 806199338 806199338 352503594 352503594 540233988 897960760 897960760 679678032 704716821 958434175 958434175 198085198 946389680 946389680 793810085 793810085 678954885 470335880 470335880 87557928 87557928 3214888 9123440 110325672 110325672 161629192 188401745 681350645 748160501 748160501 233356408 636442004 636442004 556605697 97660841 218554220 1025132653 1025132653 907836550 907836550 913354147 913354147 367297045 453018077 453018077 1047299530 1059900735 1059900735 350298570 750838162 1050747231 1050747231 805316868 1030066642 1030066642 867218175 544240550 486081382 486081382 939861151 992674373 992674373 843992065 843992065 401787785 387455826 387455826 690781952 690781952 673961345 984756698 984756698 203700565 507111314 507111314 831002664 875443017 875443017 849691647 668370519 806145027 806145027 744132781 744132781 1008246958 1008246958 945278991 674369024 672075449 672075449 494278320 809669632 809669632 136943744 410329267 429577415 845591493 845591493 566033107 566033107 136374788 136374788 765757806 765783821 765783821 462991730 1035137377 1035137377 943384095 980993158 980993158 680019471 851746954 899196247 899196247 618790066 321217899 283787904 523814710 523814710 365478524 29673696 355155884 408156230 408156230 364147616 364147616 42129152 95081544 286499600 286499600 120746802 69743168 125839936 125839936 121972920 209951430 343182222 379012700 379012700 447809370 914500690 914500690 741687135 846856962 846856962 644220194 760032429 1043412645 1043412645 820758560 820758560 95764416 95764416 394245152 394245152 357798314 280961162 153100676 31064832 31064832 423889062 423889062 546602011 925538118 925538118 1029384445 1029384445 892809487 456487755 1046976846 1050090127 1050090127 803664879 533113619 763756601 763756601 605094597 476258380 684728841 684728841 544560551 225954222 1025595521 1025595521 875212083 103074072 622397681 622397681 255666848 232988332 232988332 151595076 243270556 243270556 537265329 537265329 188295444 575550640 577318001 577318001 133116273 657003978 923665723 923665723 918656098 918656098 323085490 138535044 273788036 274542210 295176708 295176708 136056324 260843576 260843576 110178032 160117860 160117860 147903252 205541992 205541992 50434057 745341081 745341081 159137540 136722724 134878212 676665217 719926036 769611072 773323880 773323880 242146092 242146092 233616460 122267832 211507908 211507908 199254108 190490388 190490388 134354976 134354976 95802792 557957121 557957121 218247177 789970949 789970949 772868157 202392085 536981504 760426649 777142972 777142972 643900120 238060965 735319689 735319689 1058585818 1058585818 804963405 804963405 1043877374 1043877374 1012378862 486909866 798108212 798108212 545260225 545260225 775155852 775155852 917524971 917524971 885618566 44586108 601980948 601980948 624643836 865082291 865082291 661544390 739430925 739430925 800251206 800251206 688285736 255330108 255330108 801254480 801254480 651557016 651557016 641986713 617613528 599787361 956439889 1021194051 1021194051 300988036 154264932 969648914 969648914 796128189 909825048 909825048 596290368 596290368 882854691 1057776663 1057776663 703989184 984295852 1004984823 1004984823 766306713 547482037 956383418 956383418 851478570 851478570 147163200 147163200 425120451 425120451 423658705 840698469 840698469 600739569 688968214 855773235 855773235 814552080 814552080 671641861 206255244 206255244 506605644 506605644 404171102 517159768 517159768 108042730 108042730 54789552 388597034 388597034 116028272 393386226 393386226 16828704 17324032 17465888 21761952 21761952 49667456 49667456 10071936 16328640 22721728 23643552 32237344 32237344 29022048 25740384 25740384 276824096 276824096 369493734 996423690 996423690 1073532927 1073532927 1032852118 941134494 819073731 607527817 607527817 956469569 956469569 948160662 975560945 1054990645 1054990645 1008754880 966158401 966158401 843774868 943533831 943533831 752546444 738406434 524393427 415440902 415371462 465641718 465641718 434448084 150810564 199392192 806463093 806463093 332513984 622199320 667179773 706120433 706120433 610699985 881074176 881074176 297120111 297120111 1015528193 1015528193 383608954 944200913 944200913 627419440 678816984 678816984 889636956 889636956 592985187 756295819 1066736118 1066736118 758120504 912523526 912523526 159856740 92439680 251801889 742475837 770425189 770425189 692938893 781866208 781866208 679611676 679611676 762243925 762243925 654584481 654584481 607914008 45298512 81984384 81984384 115347416 115347416 361170713 361170713 714645064 714645064 845187795 949368396 949368396 909514525 909514525 1029789978 1029789978 299215783 570111969 570111969 838596579 838596579 822776512 18944032 0 24854624 99375424 99375424 37871680 137799556 137799556 75982208 151882532 151882532 167805188 167805188 219055624 259575304 259575304 58059056 30149856 48047152 48047152 303519848 395436666 521579578 529142910 529142910 135079680 80740424 341870094 341870094 77747016 143706882 143706882 307007424 307007424 368320308 445518000 445518000 444614282 444614282 394297384 37748880 69283904 252068156 379668928 536910145 547524873 547524873 627681721 864896913 907544091 907544091 656315443 597085051 624290832 624290832 653057440 653057440 596176256 16363854 285330000 1021108345 1021108345 1015581245 1015581245 466245716 830289187 830289187 657700115 1041945392 1041945392 891544149 945001205 945001205 502387364 46875856 113295904 139645572 167886212 559514408 610919817 610919817 623018766 623018766 429036675 160335236 235987224 344176652 495693134 495693134 521204518 521204518 260697960 349383834 349383834 262841192 308875264 308875264 92406658 402142122 402142122 315630218 313525906 313525906 282591680 268960042 24367752 212922270 405555402 405555402 312099038 454328404 518280950 518280950 674105353 674105353 204084492 88418534 247142110 825913546 1052520394 1052520394 527966002 514335762 304291096 185711540 206304532 326584832 326584832 434596146 579002490 941765684 941765684 486674478 486674478 479292418 479292418 478778048 403069952 431512902 431512902 228142856 203232808 613113521 613113521 249434324 789532433 789532433 707021988 82189368 172105702 796397376 796397376 722373550 914804746 914804746 733013016 312193074 430456870 521252410 521252410 286597476 265137452 330630684 405980246 616509488 616509488 163710244 590685592 590685592 435550278 435550278 742903768 884332724 884332724 204104729 202490754 623293536 623293536 571460625 540107158 540107158 425997607 310656256 38323344 622877696 622877696 689440293 758108201 758108201 772702639 772702639 436703622 1057292340 1057292340 931473531 808863552 862977459 880480498 880480498 349625034 86776864 86776864 40115232 65795568 65795568 55732568 73640856 132194808 132194808 121635000 289407181 289407181 319922330 319922330 1014142919 1014142919 963136391 803607771 1048922436 1048922436 813788619 813788619 295814329 342765864 342765864 915876994 915876994 848705323 848705323 644747625 656490024 656490024 675816744 742207245 742207245 704399077 605644557 583532672 583532672 135284572 844399155 902832875 902832875 813720232 8470592 8495168 8495168 8658984 92612712 397150304 397150304 338438834 21564874 26681472 265706992 265706992 320223984 626801026 626801026 415396890 282037500 419159146 489227374 489227374 682543536 682543536 495459267 427888536 427888536 289950260 285353488 817685792 905150305 905150305 858781993 842577802 641986713 846292609 846292609 877015579 877015579 811944578 889301802 889301802 827334664 105100992 113388032 113388032 98681600 78646112 21366832 37884048 153532576 170127636 170187156 424697856 461502772 461502772 306262088 306262088 649390083 875961099 875961099 889463147 889463147 554173281 623509753 623509753 608174825 322470057 833621706 833621706 704400396 523390418 523390418 208208148 208208148 238100874 425787936 425787936 306185216 600836249 600836249 775560526 784734429 1041696933 1041696933 426235225 634384579 965557284 965557284 568265409 718255572 718255572 596848368 610023760 610023760 244423624 244423624 205544340 433449764 486159270 486159270 239333532 495844328 495844328 305455318 90735976 238561420 238561420 280111556 345272460 345272460 50595888 69519632 69519632 86368544 103752200 120989888 120989888 113816240 113816240 89512464 41691168 18874752 37314592 96879898 467693810 467693810 283979202 356048270 356048270 358143504 476921112 476921112 306134460 405672032 405672032 160006196 221135376 255778620 662068537 662068537 258349500 709673241 709673241 262621124 777099840 797262349 797262349 676695965 574998541 1006653972 1006653972 676808706 447215876 307697814 679757330 679757330 545521744 672402965 672402965 306577493 320031458 540704802 864419626 864419626 577044776 837295954 837295954 555954465 905178768 905178768 762286204 762286204 933476132 933476132 520136718 425283290 408432274 385138878 262145216 1070613162 1070613162 1032119023 839569553 839569553 536887298 536887298 83311560 83311560 362699616 588313624 882443873 882443873 260285460 543245676 543245676 366223930 362939444 514463070 514463070 229776669 353994146 638202323 638202323 820903776 820903776 681524805 184166801 122948280 122948280 741443904 741443904 246582074 335827538 335827538 219552302 219552302 268435712 268435712 412160128 412160128 404388534 457910976 457910976 423951472 423951472 310476850 177123396 198951780 632865920 747376941 747376941 79060841 83266984 86822184 86822184 817889475 897667107 897667107 876867723 815415785 593848112 647426781 647426781 85346312 203806984 261440368 261440368 472376368 949033222 949033222 244777319 520100900 520100900 1004875633 1004875633 434676518 968909665 968909665 273180706 356530370 356530370 639811097 639811097 116078040 810371264 810371264 885612096 885612096 609745571 424811586 932237019 932237019 915439680 405819432 405819432 50628360 126266728 126266728 86072680 77388864 42470400 67767640 67767640 42078288 269296128 269296128 857110657 857110657 292571938 292571938 808025126 808025126 755327809 897960760 897960760 1007014694 1007014694 958434175 990102573 990102573 946389680 946389680 793810085 793810085 683861456 683861456 678153376 87557928 87557928 11442528 187980580 187980580 250034220 250034220 220680660 681350645 748160501 748160501 233356408 636442004 636442004 556605697 97660841 610552838 1025132653 1025132653 907836550 907836550 626108598 130292394 260681994 339780896 1007293696 1007293696 451577173 1047279040 1047279040 750838162 1050747231 1050747231 507570655 1030066642 1030066642 440632733 140558724 486081382 486081382 330182272 319951410 350127642 826346134 826346134 401787785 387455826 591268528 690781952 690781952 742961421 984756698 984756698 203700565 507111314 507111314 736626878 736626878 806644431 806644431 603547581 806145027 806145027 744132781 744132781 1008246958 1008246958 945278991 674369024 672075449 672075449 494278320 489346350 241694501 137310868 410329267 429577415 845591493 845591493 566033107 596656472 68422315 1027868680 1027868680 469770340 495001710 924569614 924569614 372872704 943384095 943384095 940572950 680019471 470602807 470602807 1024338259 1024338259 890611170 890611170 523814710 730417193 730417193 464603416 866487559 866487559 502793838 792274201 792274201 1020871931 1020871931 715728213 1010248039 1010248039 631321200 705830482 965030458 994185399 994185399 604338720 510861722 379012700 146359696 416490562 436877006 436877006 309797682 454951728 644220194 760032429 1043412645 1043412645 866511250 380374362 401817304 401817304 281042010 357331904 357331904 353766922 293601474 283115970 276037952 423889062 423889062 6327846 925538118 925538118 1029384445 1029384445 892809487 456487755 1046976846 1050090127 1050090127 803664879 717478292 994518128 994518128 397741774 152692260 296452420 369506720 369506720 222293560 222293560 153635340 88215720 95329884 95329884 255666848 255666848 232988332 232988332 35632584 243270556 243270556 195310460 188295444 188295444 155330304 38797968 80395608 80395608 40233360 23421888 348187866 348187866 75273520 174349208 174349208 249883092 249883092 295176708 428558632 428558632 291304944 291304944 119676304 160117860 160117860 147903252 205541992 205541992 20971552 20971552 16777376 7604992 3410688 2099968 14681408 719926036 719926036 193074192 193074192 159908964 60555520 122267832 122267832 105347464 73806224 89442984 89442984 79136464 126325376 126325376 95802792 86241576 87188880 218247177 789970949 789970949 772868157 1057181849 1057181849 760426649 777142972 975816008 975816008 663234333 386225338 386225338 370817450 370817450 155448898 591474936 591474936 1012378862 1012378862 646023191 958230553 958230553 545260225 545260225 775155852 775155852 917524971 917524971 885618566 675288934 675288934 662402635 760841354 957473319 957473319 409345145 409345145 548957554 800251206 800251206 354124807 90103984 688972320 801254480 801254480 651557016 764598908 764598908 617613528 229077988 880619821 1021194051 1021194051 377559302 278995266 977563136 1043958845 1043958845 909825048 909825048 596290368 596290368 882854691 1057776663 1057776663 548433742 435160928 782794997 782794997 766306713 547482037 956383418 956383418 851478570 851478570 377981604 377981604 55466592 434032304 434032304 429567522 981644967 981644967 688968214 855773235 982332453 982332453 671641861 671641861 650455257 650455257 143603853 614814024 772725789 776113280 776113280 22225454 12970176 26501792 26501792 8788032 1322560 46004272 46004272 28823120 28823120 34905904 58203280 58203280 55183008 181690401 721742325 724880181 724880181 714594517 714594517 134831505 48683472 36487488 45296768 575368400 714243729 714243729 996423690 996423690 909162058 1032852118 1032852118 941134494 667367673 607527817 607527817 956469569 956469569 948160662 975560945 1054990645 1054990645 1008754880 423624756 281716452 843774868 943533831 943533831 738406434 738406434 524393427 853633298 853633298 841124096 199486288 199486288 152389540 195874640 195874640 15121408 44078016 622199320 667179773 982925520 982925520 945216135 610699985 348525909 297120111 297120111 1015528193 1015528193 236719644 944200913 944200913 666444088 666444088 606242585 675763416 675763416 59636829 606081840 1066736118 1066736118 758120504 912523526 912523526 47862416 92439680 251801889 742475837 770425189 770425189 692938893 781866208 781866208 679611676 679611676 762243925 762243925 654584481 654584481 707004677 707004677 625526489 650693800 650693800 591956289 908625097 908625097 351602094 412164678 953397688 953397688 763286387 746985549 973734732 1029789978 1029789978 656091546 830349219 830349219 394035113 58585008 57919088 77320800 77320800 46671104 99375424 99375424 37871680 90734880 250105292 250105292 75982208 61432608 69519624 69519624 59694192 96981512 151598816 151598816 141821760 141821760 48047152 110783508 227590764 530423936 530423936 306973842 232040854 80740424 80740424 5243520 304349264 304349264 111287186 304075088 304075088 130175106 39471384 18389440 21235872 21235872 75499596 84411432 205571236 252068156 379668928 379668928 276897858 1027670979 1027670979 817037579 817037579 187035280 853888184 853888184 208226115 45799248 698388352 698388352 566544577 676136516 676136516 507172638 507172638 1015581245 1015581245 466245716 830289187 830289187 657700115 1041945392 1041945392 674284293 604070668 518775288 162529536 144757300 136450308 712349189 738798133 738798133 703680037 703680037 623018766 623018766 537797627 977964407 1027747763 1027747763 646236748 646236748 607299640 521204518 260697960 349383834 592133409 592133409 599137137 629659480 629659480 112203240 291512816 291512816 274012096 275790722 275790722 268960042 136653060 100190184 194717608 312099038 312099038 242285788 444886276 444886276 302523718 302523718 45872976 34846016 52207122 825913546 825913546 500114530 514335762 514335762 304291096 104480064 135792896 326584832 326584832 453251748 453251748 429990246 356636546 486674478 486674478 479292418 479292418 478778048 430814318 406451556 406451556 287186466 287186466 260864568 260864568 90491192 107268504 107268504 320864562 320864562 502928802 502928802 495075602 495075602 467284186 481899864 481899864 144949622 430456870 521252410 521252410 286597476 258581144 604132104 663788208 663788208 703946904 703946904 679747148 903036569 1028991663 1028991663 742903768 949041756 949041756 906369051 244785735 564433248 571460625 571460625 540107158 710468180 718356245 718356245 598166881 625091584 625091584 77859144 117855064 174352985 855359570 855359570 395432019 1057292340 1057292340 931473531 808863552 862977459 880480498 880480498 376180122 375266458 86776864 279970362 279970362 127142520 68267128 58698232 61675856 61675856 121844376 121844376 104888552 87710048 87710048 92540008 92540008 27685888 7155072 545531136 627403963 813788619 813788619 606415496 592781688 592781688 592446129 333851539 276772178 276772178 103953432 543500544 543500544 140847365 22094496 353460234 353460234 628663212 628663212 668321974 668321974 844399155 902832875 902832875 813720232 353655368 353655368 278718624 247504874 247504874 397150304 397150304 341323682 492384036 492384036 265706992 265706992 320223984 626801026 626801026 338568480 338568480 419159146 489227374 489227374 682543536 682543536 495459267 330629848 407634524 407634524 281229329 851757267 851757267 778566045 847856748 1071253386 1071253386 1031214519 846292609 877015579 877015579 811944578 889301802 889301802 827334664 8462400 8912896 8912896 16016560 55430928 55430928 28625904 301796496 303783862 303783862 424697856 461502772 461502772 306262088 306262088 649390083 875961099 875961099 889463147 889463147 554173281 623509753 623509753 608174825 322470057 833621706 833621706 704400396 523390418 523390418 208208148 380264070 380264070 355805840 475015454 475015454 373298192 399512660 775560526 784734429 1041696933 1041696933 426235225 320012964 965557284 965557284 422895104 718255572 718255572 85644840 157767716 157767716 244423624 244423624 205544340 897552685 1055182744 1055182744 790870377 995393973 995393973 280434895 104864136 796400996 796400996 947536766 947536766 25693440 27527520 36457696 36457696 86368544 86368544 90361936 113662392 113662392 53183320 26896064 26896064 27402256 52626464 52626464 26240336 63827184 242824192 242824192 158127536 158127536 176426792 263718780 263718780 250029448 250029448 160006196 207573152 239597724 239597724 191501748 191501748 59785288 262621124 262621124 777099840 797262349 797262349 676695965 258526905 51170352 711272743 711272743 447215876 945096085 945096085 679757330 538708036 672402965 672402965 974954561 974954561 1028095188 1028095188 864419626 577044776 837295954 837295954 555954465 905178768 905178768 762286204 762286204 933476132 933476132 520136718 552595922 784593117 996378977 996378977 1014800222 1014800222 608704907 839569553 839569553 359104520 359104520 346554632 343933002 362699616 588313624 882443873 882443873 485442327 637401282 637401282 440176850 265254964 265254964 1008070345 1008070345 909125424 638202323 716166260 716166260 706102436 706102436 428085814 428085814 562568051 951095652 951095652 806537217 805720386 371220744 302112786 219552302 399675498 399675498 431693078 431693078 404388534 457910976 457910976 432341522 453652518 453652518 697921623 697921623 632865920 747376941 747376941 549140289 833296226 833296226 564139041 817889475 897667107 897667107 876867723 815415785 593848112 647426781 647426781 705781808 705781808 261440368 261440368 86410320 119986488 1050933792 1050933792 294718186 373369056 1004875633 1004875633 410116998 968909665 968909665 497475484 356530370 356530370 639811097 639811097 116078040 666187881 666187881 889578731 889578731 824180233 246080315 932237019 932237019 915439680 478314816 505659994 505659994 280002908 126266728 103351704 103351704 398230018 398230018 297402914 118108704 269296128 269296128 857110657 857110657 292571938 292571938 808025126 808025126 755327809 839133355 839133355 1007014694 1007014694 756791332 990102573 990102573 440865422 117910540 37014288 45562704 683861456 683861456 678153376 98573224 98573224 29925024 187980580 187980580 250034220 250034220 220680660 71663872 71663872 25427968 25427968 6459648 6459648 6992896 6992896 610552838 610552838 403474825 88215720 359973080 669618185 669618185 219028524 1010975998 1010975998 1007293696 939927889 1047279040 1047279040 570835328 916793691 916793691 113369304 553681052 553681052 161142313 130166856 139994872 473573977 933969823 933969823 611097107 123011841 217318064 217318064 143131716 591268528 705042453 705042453 742961421 742961421 779879235 779879235 608317252 608317252 736626878 736626878 806644431 806644431 603547581 216300971 75975712 75975712 22300584 200962532 200962532 183828828 159809544 192808272 192808272 175059476 181410900 181410900 137310868 33589296 35128848 38016256 292273040 292273040 596656472 68422315 1027868680 1027868680 469770340 495001710 1008795712 1008795712 69940488 170983812 170983812 136478852 301856386 301856386 417074886 1024338259 1024338259 890611170 890611170 515483486 730417193 730417193 464603416 866487559 866487559 502793838 792274201 792274201 1020871931 1020871931 715728213 1010248039 1010248039 631321200 705830482 965030458 994185399 994185399 604338720 510861722 122769442 123277952 123277952 326174288 773854886 773854886 308807058 308807058 220360772 235396396 866511250 866511250 380374362 401817304 401817304 281042010 272112488 353766922 353766922 293601474 283115970 276037952 19083296 422777409 422777409 1018166351 1018166351 1017825359 162239756 162239756 406893502 649229192 649229192 548574177 456323198 717478292 994518128 994518128 195782724 152692260 296452420 296452420 216443052 116775528 202391880 202391880 88215720 88215720 150407568 150407568 183208976 183208976 196078124 196078124 143674900 191312901 574172849 596717777 596717777 726692421 726692421 570557732 570557732 770381733 770381733 708314901 348187866 268305265 174349208 176811036 249883092 249883092 235664444 428558632 428558632 291304944 291304944 119676304 117048792 74975112 22151640 570433749 570433749 167845908 663496509 663496509 200245348 200245348 170103732 719505009 719505009 674235141 674235141 537006852 168763488 193862772 193862772 51565104 51565104 25742064 25742064 164364576 164364576 139231396 259208732 259208732 169943688 87188880 206700556 206700556 454163374 608399504 1057181849 1057181849 704806969 618139904 975816008 975816008 663234333 386225338 386225338 471385102 471385102 470337038 591474936 591474936 585581280 646023191 646023191 958230553 958230553 815809026 815809026 548455233 369808410 669166644 700882745 935182851 935182851 675288934 662402635 760841354 957473319 957473319 409345145 409345145 548957554 617406130 617406130 103019800 103019800 688972320 688972320 742671208 742671208 764598908 764598908 168841385 69280008 67117320 407054488 618924186 850509913 850509913 977563136 1043958845 1043958845 316157274 472460814 521500420 521500420 461203218 461203218 988954630 1007177823 1007177823 1046997517 1046997517 742252831 693632219 263048366 67389441 507706758 507706758 377981604 377981604 55466592 434032304 434032304 429567522 981644967 981644967 330658448 330658448 982332453 982332453 231927324 285854780 862278077 862278077 260914352 614814024 889424080 893455064 893455064 517079632 478556352 83954080 83954080 131884912 131884912 46004272 53628416 53628416 28823120 34905904 58203280 58203280 55183008 181690401 721742325 724880181 724880181 714594517 714594517 134831505 105505944 71385224 71385224 575368400 714243729 714243729 624959061 909162058 909162058 874039098 874039098 789003901 667367673 294626304 901660076 901660076 650665815 300043040 282516162 54526128 266668196 385372414 974837271 974837271 555546033 308792325 954963239 954963239 138603063 537024704 853633298 853633298 841124096 199486288 199486288 601012833 601012833 328410178 589071744 589071744 703858020 703858020 982925520 982925520 945216135 864170192 826351779 87178784 27479872 229950832 236719644 236719644 479832704 1013141746 1013141746 666444088 606242585 587321969 618007224 626473641 626473641 593758900 234258573 254038360 254038360 100747368 80941960 80941960 74592968 302006658 302039058 342077848 342077848 290472744 112758512 516833226 516833226 340768618 340768618 259064240 62936304 707004677 707004677 625526489 650693800 650693800 591956289 908625097 908625097 364347057 412164678 953397688 953397688 763286387 675874816 973734732 973734732 410145190 836253999 836253999 830349219 590524681 613573080 613573080 77320800 77320800 70335136 46671104 76213673 894812385 894812385 630194793 814952451 814952451 639308850 639308850 611271054 735731442 735731442 672445474 151598816 141821760 141821760 35129632 319077448 319077448 530423936 530423936 353969706 394832036 394832036 348537686 348537686 527831858 527831858 112380688 304075088 304075088 130175106 177889236 371743052 371743052 446718014 446718014 428602470 472003656 472003656 356520874 915324427 915324427 1027670979 1027670979 817037579 817037579 604930966 1005779203 1005779203 766673312 766673312 739290789 739290789 697709408 676136516 676136516 507172638 507172638 414979922 410622618 410622618 310723732 98076448 62495952 244511096 244511096 532797128 532797128 518775288 162529536 144757300 136450308 712349189 738798133 738798133 703680037 703680037 163374857 423642083 537797627 977964407 1027747763 1027747763 805751376 646236748 607299640 179816564 177394260 177394260 592133409 592133409 599137137 629659480 629659480 269339010 378274368 378274368 131858658 273818752 273818752 136653060 136653060 77071872 194717608 194717608 167434212 167434212 385278368 385278368 251019816 251019816 45872976 34846016 18851904 28605568 697373220 697373220 136391236 136391236 103842008 103842008 228521700 276691968 276691968 453251748 453251748 521329168 521329168 176177570 531105136 531105136 518261214 430814318 430814318 406451556 406451556 529719408 529719408 260864568 260864568 219697812 259524540 259524540 320864562 320864562 502928802 502928802 495075602 495075602 433120458 481899864 481899864 356660598 303189986 303189986 266465340 266465340 159308360 604132104 663788208 663788208 703946904 703946904 679747148 903036569 1028991663 1028991663 550385262 949041756 949041756 906369051 870563651 870563651 978722945 978722945 1005170551 1005170551 977931024 977931024 679384791 625091584 625091584 77859144 834816700 834816700 855359570 855359570 395432019 307811040 380762168 380762168 364319582 280093506 328492202 376180122 376180122 375266458 61374930 279970362 279970362 127142520 68267128 58698232 61675856 61675856 121844376 121844376 104888552 13124192 13124192 161631600 161631600 118831888 126582768 806981433 851706930 851706930 822083619 606415496 592781688 592781688 592446129 333851539 276772178 276772178 103953432 90445192 90445192 688931976 760792749 760792749 353460234 628663212 628663212 668321974 668321974 172866267 285221888 395176560 395176560 353655368 353655368 278718624 361566402 365694186 365694186 289480866 341323682 492384036 492384036 201590796 225740516 225740516 879710592 879710592 338568480 350293854 408355840 408355840 257047484 239284380 171307332 359148544 359148544 407634524 407634524 281229329 851757267 851757267 778566045 852237808 1071253386 1071253386 1031214519 525927035 337994530 337994530 285526050 85322280 101820528 101820528 85942800 39593088 89228416 341802754 341802754 174579220 443566102 443566102 303783862 324089024 324089024 433291140 445434966 445434966 138596484 215187912 215187912 38301824 101921304 101921304 123806504 129504768 129504768 96081768 97221306 275612058 813799075 813799075 292079010 299391556 299391556 719871580 719871580 984820247 984820247 475015454 634920097 634920097 617088749 968002157 968002157 410277645 410277645 68416008 67195392 16872320 16847488 592580977 592580977 569378624 600767841 600767841 574901504 164918528 146813220 897552685 1055182744 1055182744 790870377 995393973 995393973 280434895 189440384 796400996 796400996 947536766 947536766 358658220 118514176 81052176 124705992 124705992 107241384 16783368 37897216 38458512 38458512 26896064 26896064 27402256 52626464 52626464 443577442 443577442 335409138 439097314 439097314 369757236 369757236 361433864 456415428 456415428 330225072 172075496 238852152 240198300 549758605 549758605 104156648 556059505 556059505 109142120 637649744 649117952 649117952 656149424 656149424 638404608 711272743 711272743 421053090 945096085 945096085 538055168 723923734 859097907 859097907 974954561 974954561 1028095188 1028095188 743542382 255724220 131732160 207852980 207852980 43024960 17035296 153703684 153703684 693248049 693248049 760337124 760337124 784593117 996378977 996378977 872679435 824582584 608704907 973209611 973209611 559092759 359104520 346554632 697571626 697571626 549324871 766567209 766567209 974160134 974160134 637401282 440176850 349386464 191746900 1008070345 1008070345 909125424 313843299 716166260 716166260 706102436 706102436 428085814 428085814 563822086 951095652 951095652 806537217 805720386 371220744 369647626 369647626 399675498 399675498 431693078 431693078 123995912 407012064 407012064 432341522 453652518 453652518 697921623 697921623 457892134 336642626 154175012 549140289 833296226 833296226 873910784 873910784 822482979 610006665 610006665 646070897 646070897 647064572 648450592 705781808 705781808 977423216 977423216 513020545 505672240 1050933792 1050933792 270532832 270532832 158671298 16777472 309717906 435938124 497475484 497475484 346976554 160467024 71307464 80089168 113645784 520663183 611533160 1014833929 1014833929 824180233 246080315 976506944 976506944 478314816 478314816 505659994 505659994 280002908 33706000 103351704 103351704 398230018 398230018 297402914 118108704 110368040 110368040 602791249 602791249 54634672 12661704 29395904 348359058 348359058 839133355 958382854 958382854 797986052 797986052 756791332 403622455 185209908 176161028 44040528 42991936 34129104 159335828 159335828 98573224 98573224 29925024 29925024 85099552 85099552 122300964 128944521 627452817 627452817 597624797 236979104 628934956 628934956 538494465 99540456 701351872 701351872 568776332 626415620 884383046 884383046 669618185 523215906 1010975998 1010975998 551685338 939927889 939927889 906702939 448931021 475499394 475499394 405205522 553681052 553681052 449016956 164592752 285281410 473573977 933969823 933969823 611097107 470687618 470687618 428001364 428001364 574489408 705042453 705042453 145235281 143402966 779879235 779879235 873896144 895898409 895898409 826013058 826013058 767024589 767024589 1011906179 1011906179 2686976 2696448 27600424 76884552 122638544 159809544 791954313 791954313 189112612 968660567 968660567 78206404 121465405 949093199 949093199 403916035 436740611 436740611 153936436 286465330 286465330 33735168 34738704 1008795712 1008795712 69940488 145338440 178542564 178542564 386401338 386401338 339090186 339090186 126096242 120259872 487876216 515483486 515483486 414787398 392172330 204898756 360299850 360299850 963266672 963266672 867965833 616443961 84406585 355271218 355271218 126290040 120722232 120722232 93467152 129390688 129390688 298258258 457552112 457552112 173200020 331518562 773854886 773854886 684267014 889283913 889283913 809619663 525518653 260154876 130031896 121843896 112930408 362593376 362593376 353246250 296428128 26816802 8913920 19083296 404750342 423237152 423237152 1018166351 1018166351 1017825359 162239756 162239756 136001028 90472800 80005320 69503008 69503008 61196288 371292438 371292438 195782724 341448330 341448330 216443052 216443052 116775528 202391880 202391880 121946968 98566632 150407568 150407568 183208976 183208976 196078124 196078124 265106528 265106528 574172849 596717777 596717777 726692421 726692421 570557732 570557732 770381733 770381733 708314901 268305265 268305265 133919804 176811036 176811036 235664444 235664444 246568352 246568352 78929072 60743280 121148948 247205724 247205724 176226520 570433749 570433749 224007852 663496509 663496509 200245348 200245348 170103732 719505009 719505009 674235141 674235141 537006852 487138350 379925608 321001748 460924854 460924854 408543014 268643860 164364576 164364576 139231396 259208732 259208732 169943688 210982328 210982328 118599884 7525248 68317336 509825336 527605908 618139904 1073047464 1073047464 1033915781 1033915781 94916221 755803108 898827564 898827564 470337038 537999104 543823233 585581280 670066962 670066962 504179737 894773843 894773843 815809026 692779468 692779468 669166644 700882745 935182851 935182851 692313280 692313280 583679113 667332241 667332241 651231832 92750952 539446024 662662080 662662080 125629312 656277784 656277784 626488453 742671208 742671208 580295584 571947401 571947401 289841762 331836386 935592297 935592297 850509913 850509913 393274017 347152986 353443850 353443850 472460814 521500420 521500420 790069576 790069576 988954630 1007177823 1007177823 1046997517 1046997517 742252831 693632219 263048366 431640396 431640396 419722546 335726762 315181056 80220680 86302080 167313632 167313632 274092288 276089730 326520018 326520018 298720482 727745710 727745710 694083237 862278077 862278077 260914352 431973346 889424080 893455064 893455064 517079632 478556352 83954080 83954080 131884912 131884912 121953048 53628416 53628416 18797872 16781568 19267840 19267840 34443296 34443296 30146736 30146736 59631760 59631760 10155200 105505944 105505944 101538256 101538256 73999752 68413128 67395720 21004288 602771745 602771745 338750506 338750506 601359178 601359178 875363424 901660076 901660076 650665815 634444124 444634050 444634050 514536770 514536770 974837271 974837271 555546033 308792325 954963239 954963239 852052582 537024704 537024704 456547472 456547472 419463412 691594784 691594784 601012833 328410178 589071744 589071744 703858020 931156104 931156104 734267637 864170192 864170192 826351779 46338163 27479872 404491646 404491646 389980259 554695713 1013141746 1013141746 952562441 952562441 906898555 618007224 626473641 994256960 994256960 799249172 748159048 888475394 888475394 264660060 264660060 192350845 713109829 717299925 717299925 978271383 978271383 146349011 691024268 691024268 690130685 690130685 259064240 743043052 743043052 227539541 94766544 375688147 375688147 589709338 933286259 933286259 619301050 619301050 399044073 407185542 675874816 675874816 72103045 410145190 410145190 836253999 836253999 608140972 590524681 613573080 613573080 268470274 268470274 215562860 469831202 469831202 894812385 894812385 630194793 814952451 814952451 639308850 639308850 671388208 735731442 735731442 672445474 418915900 276564914 276564914 311915896 332084466 548418313 548418313 516771876 890638312 890638312 1032341513 1032341513 850892676 618586085 618586085 143710728 98750952 94716864 828852804 828852804 671650962 371743052 446718014 446718014 428602470 472003656 472003656 356520874 915324427 915324427 718147094 434933984 438392378 677759868 677759868 1005779203 1005779203 766673312 766673312 739290789 739290789 697709408 134685728 147971684 147971684 138485892 27117284 264192 2048 78843360 78843360 71407488 244511096 244511096 238285344 208340868 171168084 236602992 236602992 52561672 83837528 83837528 97560000 98927776 98927776 80327842 80327842 295207042 299757282 403459136 805751376 805751376 673376880 917603371 917603371 231736044 280239634 280239634 248958304 97519914 392479312 392479312 269339010 378274368 378274368 366927594 278593824 278593824 8399208 277167426 277167426 320205714 375872490 375872490 308439624 122962752 122962752 48533122 302539218 390875378 864061058 894709099 968480979 968480979 834828899 536078771 489964448 489964448 103842008 228521700 427703532 427703532 443426768 504211806 521329168 521329168 522375486 531105136 531105136 518261214 474349636 84017184 84017184 306645088 529719408 529719408 223283754 220793632 219697812 259524540 259524540 234232912 36797840 36797840 14107776 25826400 92803104 92803104 474993100 474993100 356660598 488636718 488636718 412169094 418073128 418073128 625831848 625831848 68708513 253123600 253123600 201510924 201510924 201409556 161457510 435043126 435043126 413145228 680112182 870563651 984326310 984326310 1001508433 1005170551 1005170551 977931024 977931024 679384791 43391568 555678288 555678288 834816700 911575032 987365657 987365657 1072390544 1072390544 407625916 380762168 364319582 134464338 2146560 2129920 0 0 4755456 4904064 4904064 4904064 4349056 4986912 4986912 4656288 26282092 135740268 162868068 162868068 165472132 167576580 167576580 137209156 213785924 806981433 851706930 851706930 822083619 904259515 904259515 282075184 97517801 540214216 543111873 611858185 622712609 622712609 153166117 688931976 760792749 760792749 543212964 809051907 892404135 892404135 745308301 621595689 889506857 889506857 554619946 16826368 355205376 355205376 361566402 365694186 365694186 210969284 339941568 339941568 336662088 475821142 530242618 530242618 879710592 879710592 549650609 839654528 839654528 951184135 962513589 962513589 396054643 359148544 600691712 944269514 944269514 492613184 492613184 955815890 955815890 852237808 852237808 821901062 821901062 628440968 628440968 555817371 386253963 322987154 322987154 302237864 105875608 39593088 89228416 341802754 341802754 174579220 443566102 443566102 404912290 404912290 324089024 433291140 445434966 445434966 323075156 452760720 452760720 379405588 379405588 47158784 123806504 129504768 129504768 96081768 97221306 950219073 950219073 813799075 350253645 299391556 299391556 719871580 719871580 984820247 984820247 62271592 634920097 634920097 617088749 968002157 968002157 410277645 410277645 276375426 809813506 809813506 424260867 592580977 592580977 569378624 600767841 600767841 574901504 899870955 899870955 872469843 494859848 421103858 421103858 86370600 86370600 83929344 189440384 189440384 7081344 173220778 358658220 358658220 118514176 81052176 124705992 124705992 107241384 27139680 37897216 49059936 49059936 25855744 17170944 13916848 41775392 41775392 443577442 443577442 335409138 439097314 439097314 369757236 369757236 361433864 456415428 456415428 330225072 231157248 238852152 240198300 549758605 549758605 104156648 556059505 556059505 109142120 109142120 649117952 649117952 656149424 656149424 638404608 638404608 564775124 290546340 580163942 997347991 997347991 819228695 859097907 859097907 859097907 306732568 491029542 491029542 102861464 131732160 131732160 116628576 68751520 401696610 401696610 484873788 988142914 988142914 781735562 781735562 760337124 425098815 418731536 418731536 405088518 859380024 859380024 973209611 973209611 559092759 222460554 70780680 697571626 697571626 549324871 766567209 779480803 974160134 974160134 748338789 748338789 760766287 760766287 202540449 325031028 985213610 985213610 859518771 844161361 600446193 404559878 954220292 954220292 819936963 563822086 416229060 416229060 152068648 213226100 369647626 369647626 354977424 354977424 288624008 473546740 527490028 527490028 228496380 51489420 405813892 405813892 497050282 497050282 336642626 336642626 159506532 151068708 151068708 142671968 873910784 873910784 822482979 615739947 610006665 646070897 646070897 647064572 648450592 648450592 643751577 977423216 977423216 672810013 672810013 505672240 979483954 979483954 597920758 691467717 691467717 465641718 690759479 690759479 412614834 298127842 282934176 625180676 784646213 784646213 751093965 938693266 1014833929 1014833929 972337792 972337792 976506944 976506944 545382465 648192265 679670529 679670529 747443444 747443444 126424112 126424112 130286680 130286680 301139168 334506946 334506946 27657202 206578076 206578076 62485096 62485096 40580496 717872464 717872464 705432597 958382854 958382854 797986052 797986052 655171649 655171649 422129276 422129276 319816994 319816994 718947856 783384852 783384852 253732860 183007784 58078400 58078400 85099552 85099552 122300964 128944521 627452817 627452817 597624797 236979104 628934956 628934956 538494465 99540456 701351872 701351872 568776332 626415620 884383046 884383046 88324264 523215906 523215906 551685338 551685338 572682332 906702939 906702939 751999771 751999771 574925376 574925376 734618740 734618740 730366997 545801236 285281410 445784590 445784590 525545756 525545756 470687618 470687618 428001364 428001364 223660716 420773956 420773956 203819524 203819524 436390784 436390784 873896144 895898409 895898409 826013058 826013058 767024589 767024589 1011906179 1011906179 754108612 698477645 205182697 114716928 122638544 140626524 791954313 791954313 295644034 968660567 968660567 518281484 513876056 949093199 949093199 829548336 829548336 840126520 967942398 1020261206 1020261206 480037888 261655672 983207966 983207966 10064473 251739372 251739372 231167960 597168292 597168292 528666750 528666750 562337297 817153646 817153646 461261084 22421470 407552358 407552358 411166776 524589342 525741694 979705150 979705150 867965833 616443961 269699264 355271218 355271218 65017328 39969168 39969168 85449264 85449264 53906088 298258258 457552112 457552112 173200020 331518562 331518562 684267014 684267014 889283913 889283913 809619663 573317132 573317132 201664524 459090418 459090418 362593376 362593376 393021000 393021000 323691218 43234850 285335682 404750342 423237152 1028305513 1028305513 423571494 999883637 999883637 130353496 203718598 301588258 301588258 971180629 971180629 906317320 906317320 1015068705 1015068705 341448330 568926469 568926469 498414314 419813958 403882784 801259773 801259773 115791488 793805053 793805053 199361928 130825204 34002960 110697748 265106528 265106528 118632936 153491748 193042528 193042528 71841120 71841120 45142088 75535392 75535392 84459752 111281072 111281072 87085584 76116832 75879112 78718880 78718880 67182600 78929072 78929072 71434376 122034488 247205724 247205724 176226520 176226520 163651812 224007852 224007852 161371444 129612420 14566432 7269360 26682240 269521172 449934980 545461384 600376434 600376434 900269712 900269712 578893122 713114827 713114827 662002648 785516644 785516644 132274416 132274416 384983682 384983682 348526890 446904351 911286939 911286939 802509503 857086515 1047963949 1047963949 1073047464 1073047464 1033915781 1033915781 525750699 755803108 898827564 898827564 352933764 537999104 543823233 793053188 793053188 773622912 773622912 894773843 894773843 479264910 692779468 692779468 665798129 607658773 607658773 431366946 692313280 692313280 583679113 667332241 667332241 651231832 311806784 539446024 662662080 662662080 125629312 791731228 791731228 1023600806 1023600806 608647305 580295584 571947401 1008586629 1008586629 467542831 935592297 935592297 850444562 850444562 393274017 347152986 355636476 355636476 264454958 207406476 194006020 790069576 790069576 733477749 100798488 491107600 491107600 458022158 504290334 824299526 824299526 431640396 431640396 419722546 335726762 315181056 86057256 86302080 265949436 265949436 576861409 576861409 191099316 303881490 960201525 960201525 727745710 743364262 743364262 804048574 804048574 987965597 987965597 415371696 415371696 76939314 294414450 369470544 369470544 302751466 327042834 327042834 380448090 380448090 277194512 126924824 399360 107378864 107378864 526704809 964806837 964806837 749234357 714529365 714529365 177244673 106877504 101538256 101538256 611967296 687006676 687006676 682037844 743161140 790833572 798777357 798777357 798829510 798829510 875363424 1015842558 1015842558 634444124 634444124 444634050 444634050 514536770 514536770 345871532 345871532 222981706 197671200 163836132 989115046 989115046 420590069 169442912 456547472 456547472 455239762 691594784 691594784 170573952 174724500 174724500 36051216 415241151 931156104 992215385 992215385 842463373 842463373 366312427 214339494 214339494 404703344 404703344 389980259 554695713 554695713 287427776 952562441 952562441 906898555 520284222 411443206 994256960 994256960 799249172 748159048 888475394 888475394 264660060 264660060 207630350 713109829 717299925 717299925 978271383 978271383 236658362 691024268 691024268 690130685 690130685 606880372 743043052 743043052 649323177 667784409 667784409 575574456 589709338 933286259 933286259 910289017 634964146 857541776 857541776 811074574 978921111 978921111 720595624 720595624 585445424 585445424 57745536 68781104 68781104 60909016 268470274 268470274 215562860 524428952 524428952 530050282 530050282 854937872 854937872 589948209 210358580 210358580 671388208 671388208 345295278 432277996 509673610 509673610 276564914 311915896 332084466 548418313 548418313 516771876 890638312 890638312 1032341513 1032341513 850892676 618586085 618586085 143710728 48826672 543141216 828852804 828852804 671650962 16802816 79860840 297796804 432538854 432538854 199815410 128675560 51694128 41130779 759988367 759988367 655491731 677759868 677759868 822175024 822175024 491155231 181442638 1028468515 1028468515 879774958 879774958 822108548 231738880 228789344 239815040 239815040 120207376 120207376 78843360 120926896 120926896 238285344 238285344 171168084 171168084 236602992 236602992 75941024 83837528 84995104 84995104 98927776 98927776 98676352 98676352 295207042 295207042 588880193 696402544 696402544 673376880 917603371 917603371 614659408 614659408 680549024 837574232 912311259 912311259 655151090 275089426 354339610 366927594 392071954 392071954 549717443 549717443 608282792 608282792 626318984 626555434 865303672 865303672 638839396 638839396 822313985 822313985 469196342 864061058 894709099 968480979 968480979 842242451 536078771 571041556 630829536 630829536 257026228 427703532 427703532 443426768 504211806 504211806 226693322 522375486 522375486 518310366 518310366 477136918 412090950 151973440 306645088 306645088 244404964 244404964 220793632 80883776 45476688 45672336 45672336 36797840 36797840 164632198 412685794 419141510 419141510 474993100 474993100 141376938 488636718 488636718 412169094 418073128 418073128 625831848 639085697 639085697 218607708 218607708 223324920 705505960 705505960 580861521 122225256 778117270 890385332 890385332 493133334 1041908718 1041908718 1001508433 1001508433 558697792 558697792 464391015 312875346 270798928 555678288 555678288 597045085 911575032 987365657 987365657 1072390544 1072390544 407625916 162728420 92494248 154383216 154383216 113687024 98808680 120468296 120468296 336389906 336389906 147166388 98766952 98766952 144777540 144777540 201703936 201703936 162868068 162868068 165472132 167576580 167576580 137209156 213785924 213785924 178528076 820899498 820899498 904259515 904259515 904244921 97517801 540214216 543111873 611858185 622712609 622712609 153166117 153166117 18967296 543212964 543212964 809051907 892404135 892404135 745308301 621595689 889506857 889506857 554619946 285376576 355205376 457506994 470614144 470614144 352724682 412359310 412359310 504104972 504104972 475821142 530242618 530242618 362797158 549650609 679183616 839654528 983307700 983307700 1002834789 1002834789 970382055 228202092 600691712 944269514 944269514 492613184 506721050 955815890 981111705 981111705 477103064 1064782714 1064782714 628440968 628440968 563223193 563223193 396152442 388024858 310437994 537002049 537002049 21027330 6283904 6283904 221184 422848672 422848672 404912290 404912290 159085744 420546326 420546326 410129958 410129958 452760720 452760720 379405588 379405588 346369801 866164019 900937139 900937139 838996259 358740523 966456929 966456929 874661576 874661576 821745603 863636144 863636144 399508330 399508330 846662162 1021387215 1021387215 828844264 828844264 361147762 361147762 884878237 884878237 794033383 809813506 809813506 832540802 832540802 434564519 138987841 13105344 126892864 401806217 899870955 899870955 883816467 494859848 421103858 421103858 527434686 977346290 977346290 921648603 764700040 718410700 718410700 718354196 100333240 100333240 33576384 16986144 16843904 16843904 119407032 119407032 86653200 126947520 126947520 17170944 6664096 73116392 73116392 88556896 99816000 99816000 80469024 82096648 82096648 91045800 123319024 123319024 116935768 231157248 231157248 37469348 38323344 38323344 50876432 50876432 50867120 55086256 55086256 80226224 129536336 129536336 23728936 310506706 310506706 60875488 421703792 421703792 580163942 997347991 997347991 819228695 675555539 545646592 545646592 306732568 368716898 368716898 207651596 207651596 88705176 236201132 236201132 401696610 401696610 484873788 988142914 988142914 1053332488 1053332488 963345741 1028467887 1028467887 717397123 635648367 859380024 880162076 880162076 671814274 395980018 472701474 497814836 497814836 75776256 205803668 530040931 779480803 779480803 593091449 748338789 748338789 760766287 760766287 690583848 1041102381 1041102381 985213610 859518771 968130860 968130860 975746879 975746879 954220292 819936963 212536909 172044956 172044956 154247228 154247228 127109952 178780500 178780500 159816660 85646732 473546740 527490028 527490028 228496380 51489420 405813892 405813892 618139939 618139939 294127210 336069642 336069642 613626441 815470154 815470154 350787330 350787330 891959331 891959331 360915081 541420096 541420096 788730012 788730012 802619385 802619385 743440948 743440948 672810013 672810013 274566286 979483954 979483954 597920758 691467717 691467717 465641718 690759479 690759479 298127842 298127842 282934176 625180676 784646213 784646213 751093965 938693266 938693266 629629684 972337792 972337792 958656807 829966379 767791304 767791304 679670529 679670529 747443444 747443444 126424112 126424112 327214106 364382058 364382058 346031648 334506946 74527304 653642241 653642241 62485096 128999864 132369592 717872464 717872464 705432597 923730218 923730218 639150674 639150674 655171649 655171649 460201398 422129276 319816994 355093269 884288331 1051010209 1051010209 253732860 183007784 652607760 652607760 575415309 575415309 807216154 807216154 474885836 395054202 155135628 492335184 492335184 395627258 18257952 299024528 331793024 331793024 89254624 63099120 325081280 325081280 293689538 88324264 277626972 705469454 705469454 537533485 312088146 349245514 751999771 751999771 584395473 584395473 734618740 734618740 730366997 545801236 239201988 268485296 268485296 202648218 201705612 173805204 408584720 408584720 269933058 223660716 223660716 220387416 203819524 452646870 452646870 477367182 477367182 744641458 744641458 692062387 701159622 836195461 836195461 446409459 754108612 754108612 698477645 350896260 726868582 788773544 788773544 369579672 202801928 295644034 295644034 518281484 518281484 513876056 281552869 191591587 829548336 829548336 840126520 967942398 1020261206 1020261206 480037888 261655672 780144653 780144653 243844868 251739372 251739372 231167960 688021652 688021652 528666750 528666750 562337297 817153646 817153646 472417024 22421470 407552358 407552358 411166776 524589342 525741694 979705150 979705150 377724942 62527344 269699264 269699264 65017328 65017328 39969168 39969168 85449264 85449264 68750024 73511364 469274348 469274348 514327902 514327902 216307457 688381605 1044203061 1044203061 893386923 721996086 573317132 573317132 201664524 459090418 459090418 342428738 284166472 393021000 393021000 323691218 294867136 285335682 349708360 430758758 1028305513 1028305513 772467003 999883637 1028142639 1028142639 961438559 961438559 805905160 971180629 971180629 906317320 906317320 1015068705 1015068705 360900652 568926469 568926469 498414314 419813958 420586212 801259773 801259773 115791488 793805053 793805053 199361928 175937472 175937472 142912148 136644416 138324917 600603253 721758261 721758261 693150613 693150613 580924172 580924172 736414197 736414197 714003957 180413561 180413561 87085584 75879112 110119056 110119056 78917184 78917184 78385184 88473664 88473664 122034488 122034488 192285240 548541221 548541221 253115848 574620181 574620181 58215952 58215952 145326592 552399669 552399669 107146954 833859495 833859495 600376434 600376434 900269712 900269712 578893122 713114827 713114827 662002648 785516644 785516644 782422493 782422493 673239053 384983682 348526890 446904351 911286939 911286939 802509503 857086515 1047963949 1047963949 541452417 574957713 937770485 937770485 525750699 556176300 615237646 615237646 81908632 81908632 49478209 793053188 793053188 773622912 773622912 613419300 343944908 479264910 718275171 718275171 525653494 397112728 859119590 859119590 835966942 835966942 343774338 296250912 296250912 311806784 311806784 612014656 612014656 117807360 69206528 791731228 791731228 1023600806 1023600806 671211525 422802390 433290337 1008586629 1008586629 467542831 534851711 534851711 283513283 168432660 168432660 159494956 355636476 847487192 940696071 940696071 807216206 277013020 277013020 284811272 284811272 491107600 640938777 890318089 923377691 923377691 824299526 642218521 642218521 1029456928 1029456928 910246333 611578761 606726025 620056705 805800133 944888487 944888487 954093220 954093220 960201525 960201525 776015768 743364262 743364262 804048574 804048574 987965597 987965597 934711882 934711882 222655218 294414450 369470544 369470544 302751466 327042834 327042834 380448090 380448090 277194512 126924824 27267360 107378864 107378864 526704809 964806837 964806837 749234357 714529365 714529365 177244673 106877504 109349464 109349464 611967296 687006676 687006676 682037844 743161140 790833572 798777357 798777357 798829510 798829510 481967208 1015842558 1015842558 535780897 1049842109 1049842109 949531168 949531168 607195430 345871532 345871532 743175170 820592193 820592193 989115046 989115046 586179061 586179061 330375797 729882741 729882741 721936469 721936469 721672210 721672210 680790597 311943991 415241151 415241151 992215385 992215385 1041550146 1041550146 970086942 894734512 214339494 404703344 404703344 641394451 641394451 379595614 336942957 344306458 404150310 520284222 520284222 298318014 285283136 285283136 433198340 433198340 163103524 163103524 31713376 86452256 208015408 306262402 409681300 409681300 419504166 419504166 723566757 805349515 805349515 489032079 606880372 699553036 699553036 614162377 649323177 667784409 667784409 575574456 398731536 398731536 910289017 937814523 937814523 857541776 857541776 811074574 978921111 978921111 720595624 720595624 646131801 646131801 537592705 104980632 104980632 89204848 77398048 129278528 129278528 524428952 524428952 1037250649 1037250649 854937872 854937872 589948209 577876390 577876390 906831947 906831947 369852947 432277996 509673610 509673610 214764146 1123488 16777248 94921736 279774056 354233898 354233898 397225522 397225522 199138652 224755808 224755808 173995248 94507368 97980992 543141216 543141216 444808310 444808310 58866950 79860840 297796804 432538854 432538854 491145646 491145646 247862456 247862456 759988367 759988367 852493011 852493011 445244502 445244502 908069137 908069137 166074876 1028468515 1034903340 1034903340 1016328783 822108548 250206416 250206416 239815040 239815040 121450296 120207376 53739856 120926896 120926896 71446704 5251200 83935232 83935232 83886120 75941024 88097056 103384232 103384232 84995104 89417576 89417576 98676352 98676352 89082032 89082032 588880193 696402544 696402544 455389041 658072213 658072213 801385700 881644855 881644855 837574232 912311259 912311259 655151090 338240778 275089426 356252136 392071954 540803424 549717443 549717443 608282792 608282792 626318984 626555434 865303672 865303672 638839396 638839396 822313985 822313985 469196342 812857898 904920555 904920555 1065230271 1065230271 322492557 571041556 630829536 630829536 257026228 152215776 209875198 251693582 251693582 214405752 214405752 167823892 355222904 518310366 518310366 477136918 420029478 336266270 277763174 277763174 302131208 395744332 395744332 247239348 247239348 192195860 147610586 98506946 93400040 164632198 412685794 419141510 419141510 416837028 416837028 215349452 27400554 2637824 2637824 70129792 90133624 112536408 639085697 639085697 218607708 218607708 223324920 705505960 705505960 580861521 236194332 778117270 890385332 890385332 493133334 1041908718 1041908718 807412478 807412478 558697792 558697792 464391015 312875346 270798928 134531140 1046794480 1046794480 391718586 438051524 438051524 382960402 382960402 236085692 174358788 174358788 168245268 154383216 113687024 98808680 120468296 120468296 336389906 336389906 147166388 98766952 98766952 144777540 144777540 201703936 201703936 25206784 214961128 214961128 139502436 100147692 124398024 124398024 58720368 66214264 131648504 133170168 654583272 904244921 904244921 314837202 381935746 381935746 340138122 128432586 55980448 55980448 16852992 18967296 22143520 22143520 20228480 1613824 420276524 876403753 876403753 93858368 966677602 966677602 671272965 340066880 457506994 470614144 861147320 861147320 734870236 412359310 504104972 504104972 454567098 454567098 385495010 385495010 320401712 679183616 679183616 983307700 983307700 1002834789 1002834789 970382055 228202092 228202092 407634684 407634684 304350531 744230541 744230541 1052219228 1052219228 1032773171 1064782714 1064782714 810191968 810191968 563223193 563223193 396152442 388024858 310437994 537002049 537002049 21027330 275915650 275915650 174092708 174092708 168563330 140767620 159085744 159085744 186810676 268989328 410129958 410129958 884918753 884918753 365259764 365259764 346369801 866164019 900937139 900937139 838996259 358740523 966456929 966456929 874661576 874661576 944772675 944772675 863636144 981741587 981741587 919607881 1021387215 1021387215 828844264 1057106335 1057106335 505809180 884878237 884878237 794033383 365047951 298430592 832540802 832540802 434564519 567276609 567276609 540266273 538058024 556787882 883816467 883816467 562038034 363629633 339798534 527434686 977346290 977346290 921648603 882169884 882169884 718410700 718354196 588485365 100333240 667698128 667698128 602668792 106722304 119407032 119407032 86653200 126947520 126947520 29329296 29329296 287986082 287986082 296408544 352541154 352541154 345234058 82096648 86582880 361076904 361076904 466068684 466068684 199355216 183624688 183624688 218103852 218103852 168432896 208306332 236310848 236310848 97641000 97641000 129536336 129536336 23728936 310506706 310506706 60875488 421703792 421703792 719812928 719812928 708886677 549791937 549791937 408152576 509532342 509532342 199155444 113402592 424302580 424302580 440147724 440147724 236201132 211503136 211503136 82730440 968176544 968176544 1053332488 1053332488 963345741 1028467887 1028467887 761214507 761214507 436680726 880162076 880162076 671814274 395980018 472701474 497814836 497814836 292030892 292030892 499196150 499196150 441581740 317260294 467736294 694366140 794102471 1045723557 1045723557 1041102381 1041102381 194521676 312035164 968130860 968130860 975746879 975746879 473092810 278272578 212536909 172044956 507527694 507527694 154247228 184996980 194693756 465670952 465670952 373677992 181929684 338069140 390794526 390794526 19552778 31727040 31727040 618139939 618139939 294127210 336069642 336069642 613626441 815470154 815470154 350787330 350787330 891959331 891959331 637460457 637460457 555317704 788730012 788730012 802619385 802619385 646490461 73291728 84534312 84534312 76422216 76422216 76192800 13012192 32818720 32818720 12447552 12447552 27025984 27025984 7463808 295431744 295431744 691267847 691267847 643438116 540299560 125127377 357772068 821898300 821898300 829966379 829966379 767791304 767791304 637673872 608434880 588710293 584610864 75788520 68799810 327214106 364382058 364382058 346031648 133330792 133330792 653642241 653642241 118557312 128999864 132369592 386748058 386748058 327461952 923730218 923730218 639150674 639150674 172808482 460201398 460201398 225156542 233042236 355093269 884288331 1051010209 1051010209 620432340 620432340 652607760 652607760 891364643 891364643 807216154 877695071 880853067 880853067 923487478 923487478 492335184 561004700 791724861 791724861 331793024 331793024 193972616 63099120 325081280 325081280 297916660 297916660 483842162 705469454 705469454 537533485 312088146 548537224 638599369 638599369 584395473 584395473 180707472 180707472 113249980 215515848 215515848 268485296 268485296 202648218 201705612 173805204 408584720 408584720 269933058 341346952 427610880 427610880 161357412 452646870 452646870 477367182 792513794 1057803317 1057803317 894719513 957087748 957087748 997064994 997064994 944515363 956639271 956639271 429856795 726868582 788773544 788773544 369579672 205397772 202801928 170158660 402718720 402718720 281552869 281552869 191591587 720091827 720091827 832516689 362841700 429909082 429909082 363720484 126741866 77170480 243844868 243844868 243844188 172150932 172150932 688021652 688021652 412299846 842017318 842017318 54472494 472417024 472417024 646234873 646234873 413044590 564710643 564710643 243269724 176345172 882432456 907013595 920462850 920462850 581451272 581451272 557419008 54759666 309621330 309621330 275126658 68750024 284030194 469274348 469274348 965205002 965205002 216307457 688381605 1044203061 1044203061 893386923 799568656 329579627 530357871 530357871 647039005 647039005 906497575 906497575 542846002 812261798 812261798 294867136 626706158 1020497944 1020497944 589493926 772467003 772467003 68867592 1028142639 1028142639 961438559 961438559 805905160 805905160 630756474 369509736 295607474 225809952 225809952 360900652 360900652 232846186 12663040 6301696 420586212 420586212 169196180 12921024 49239168 49239168 147246084 175937472 175937472 144358978 144358978 195084660 600603253 721758261 721758261 693150613 693150613 580924172 580924172 736414197 736414197 714003957 180413561 180413561 7803008 74401608 110119056 110119056 78917184 78917184 85132160 88473664 88473664 10487936 4457280 192285240 548541221 548541221 253115848 574620181 574620181 199232464 199232464 145326592 552399669 552399669 107146954 833859495 833859495 612434448 164692010 329843712 329843712 321561616 361300328 361300328 17437728 148902020 201507021 782422493 880151171 880151171 600313509 170656975 34740734 59900942 144855912 416057616 451462614 451462614 500402084 500402084 122209464 740615416 740615416 135004168 202116108 202116108 69174016 81908632 81908632 608725504 650374536 650374536 766100097 833169675 833169675 300755279 793535022 843942483 843942483 470812212 212984652 859119590 859119590 835966942 835966942 825443017 825443017 869680746 925797844 925797844 612014656 612014656 69206528 69206528 7464072 606903084 626334857 671211525 671211525 418551808 418551808 137444722 106963176 106963176 534851711 534851711 128139453 91943388 159494956 263142780 308585568 847487192 940696071 940696071 807216206 369191054 243361823 284811272 375136920 375136920 640938777 890318089 923377691 923377691 822485048 642218521 642218521 1029456928 1029456928 910246333 611578761 606726025 620056705 805800133 944888487 944888487 970447525 970447525 952764359 941980594 941980594 264115387 1002885134 1002885134 134792249 544410506 628497321 934711882 934711882 222655218 222655218 126915088 126915088 103550976 64229064 81529584 285517496 285517496 132401506 82053576 27267360 10534240 26078304 44026208 44026208 37235552 53880528 53880528 80312008 97071648 97071648 109349464 109349464 47504384 47504384 45476688 90684104 106231328 110723560 620783197 709362756 709362756 109445547 825196688 825196688 420165364 176178916 1049842109 1049842109 949531168 949531168 607195430 563581471 634401409 743175170 820592193 820592193 697352291 837116407 837116407 806422628 444867094 729882741 729882741 799762869 799762869 721672210 721672210 680790597 311943991 986218632 1015731279 1015731279 945967111 1041550146 1041550146 1041653319 1041653319 1001135119 617274579 136513325 641394451 641394451 336942957 336942957 277444738 405308706 433225284 433225284 274591362 285283136 409943972 433198340 433198340 163103524 209971660 209971660 165763680 208015408 208015408 409681300 409681300 270797058 353419793 723566757 805349515 805349515 489032079 622213632 699553036 699553036 614162377 218021708 144365441 278710611 386688275 398731536 398731536 308856210 937814523 937814523 630040843 879512552 879512552 315950403 572527176 649204569 649204569 646131801 646131801 537592705 104980632 104980632 89204848 315573122 315573122 129278528 161645492 289740827 1037250649 1037250649 940771831 940771831 936783539 577876390 577876390 906831947 906831947 743410308 676338700 170435648 908592771 908592771 27036234 560842691 572352329 572352329 375745888 660701344 660701344 917045825 917045825 883107048 621027817 621027817 94507368 97980992 545262016 552809409 552809409 548745984 58866950 273297696 294126690 294126690 285872192 491145646 491145646 247862456 247862456 209373036 635475158 852493011 852493011 1038695835 1038695835 1036655913 908069137 166074876 136315140 1034903340 1034903340 1016328783 817637632 250206416 250206416 237998336 245546236 252101944 252101944 50608424 50608424 73597904 242393328 242393328 141879764 245681548 245681548 214843752 226245089 685144949 698003021 698003021 741947044 741947044 672333965 758720301 758720301 421326156 421326156 705815061 806970997 806970997 572531570 67121872 801385700 881644855 881644855 675075921 675075921 338240778 338240778 338240778 115466712 128172032 128172032 540803424 540803424 363597162 363597162 359213248 818692258 818692258 625651264 352461032 285236775 444165062 444165062 469052406 469052406 812857898 904920555 904920555 1065230271 1065230271 957095044 957095044 335567558 335567558 280253352 152215776 347898132 387641362 455555382 455555382 95946600 237771624 355222904 355222904 323180748 420029478 420029478 336266270 277763174 277763174 302131208 395744332 395744332 247239348 247239348 192195860 147610586 98506946 93400040 273123242 273123242 426406912 426406912 338977666 338977666 361881858 361881858 268597000 485496902 485496902 478565248 219049760 266224500 266224500 263574897 143728828 164213624 604705057 604705057 723780753 723780753 1010903492 1010903492 788867752 322503886 322503886 419171830 823003240 823003240 1023925893 1023925893 414733862 538106311 538106311 404159344 1046794480 1046794480 167727710 438051524 1050747459 1050747459 659788977 181098068 419599052 430965606 430965606 258065268 258065268 193290396 184609568 25430112 35888384 35888384 47218544 191508752 191508752 187486916 153115492 152966694 228169228 228169228 214961128 293153992 502081210 524292158 524292158 499684596 499684596 1007076178 1007076178 314971835 307906624 897944264 897944264 314837202 381935746 381935746 542581952 542581952 80003201 55980448 17540608 4467328 4467328 5572736 287835426 409503470 495469092 876403753 876403753 93858368 966677602 966677602 717299925 718015701 718015701 558432256 861147320 861147320 734870236 366154440 492838188 492838188 454567098 454567098 385495010 385495010 564956193 977626240 977626240 972215271 458486454 458486454 414300598 510212390 510212390 996000842 996000842 718021982 304350531 744230541 744230541 1052219228 1052219228 1032773171 1052766666 1052766666 810191968 819726144 819726144 129191635 84669480 105074840 105074840 477588256 477588256 207034118 275915650 275915650 174092708 174092708 457286914 457286914 320501924 320501924 155386162 273367556 324441506 324441506 884918753 884918753 365259764 365259764 90825442 822083523 822083523 307600080 830609090 830609090 642370993 652009338 1013735318 1017912268 1017912268 944772675 538166146 981741587 981741587 919607881 880612056 867708640 711275699 1057106335 1057106335 948778790 948778790 664747641 876840181 876840181 843468054 843468054 297936005 297936005 567276609 567276609 540266273 538058024 545418867 858383667 858383667 824829505 909994058 909994058 965908585 965908585 696683909 719059971 882169884 882169884 621418557 621418557 588485365 299235458 878816930 878816930 602668792 106722304 103890104 59719768 21420192 27883536 27883536 422208417 422208417 408115718 429182049 429182049 352541154 352541154 363873572 479774286 745399401 745399401 885523659 885523659 613248616 374976208 183624688 183624688 218103852 218103852 168432896 208306332 236310848 236310848 97641000 97641000 21008608 85513736 85513736 85059112 71398016 1040240387 1040240387 120685428 900770875 900770875 708886677 549791937 549791937 247912668 814102549 814102549 916531370 916531370 633542990 424302580 440147724 440147724 204735004 41205916 8442688 8987712 950562176 950562176 14993856 31802560 31802560 92376224 549870500 761214507 761214507 605161472 605161472 266761 0 0 0 218105158 218105158 292030892 292030892 520262711 756232749 781067867 1057758782 1057758782 694366140 794102471 1045723557 1045723557 612241775 612241775 557105127 495016526 495016526 967018789 1015885211 1015885211 473092810 556473164 1023410223 1023410223 827000770 810099843 986265093 986265093 647170512 465670952 465670952 373677992 181929684 360289672 390794526 390794526 68498098 87241984 87241984 85460520 25110784 74187560 77137984 605038600 605038600 605028361 93389312 93389312 92348520 73449864 98549729 637460457 637460457 705857576 800603189 800603189 631134313 668885961 668885961 549487192 788615725 788615725 105584888 768335432 768335432 755470064 60041456 120199240 120199240 12447552 27025984 27025984 3533568 295431744 295431744 691267847 691267847 643438116 540665788 125127377 509508938 951300236 951300236 469430894 968357998 968357998 572443667 674310476 674310476 171036700 171036700 75788520 220843268 220843268 201449488 201449488 246129156 246129156 133330792 109890648 247269136 247269136 203428796 191302552 121610872 115343832 115343832 120813568 121277248 121277248 993792 153825444 153825444 160007304 229238124 229238124 218812924 61416816 61416816 185608984 620432340 620432340 243735584 580919634 891364643 1036260386 1036260386 877695071 880853067 880853067 923487478 923487478 763251129 561004700 791724861 791724861 71365097 193972616 193972616 90340952 90340952 619166603 619166603 297916660 983966177 983966177 675495954 520108600 586471822 715528533 873724633 962671559 972030951 1048833708 1048833708 977932408 1003225106 1003225106 378644688 378644688 824106531 824106531 789557417 458944548 403995162 403995162 293083310 341346952 566511684 721705300 721705300 574113352 724716032 724716032 792513794 1057803317 1057803317 894719513 957087748 957087748 997064994 997064994 944515363 956639271 956639271 429856795 379326042 248620316 248620316 243261584 205397772 354952238 354952238 402718720 402718720 308830976 408259988 408259988 6549888 2355840 269116160 362841700 825462289 825462289 551005344 551005344 420639314 557197383 557197383 88338600 172150932 172150932 646109893 646109893 847458387 847458387 842017318 923712616 923712616 33296200 646234873 646234873 413044590 564710643 564710643 591539962 591539962 882432456 907013595 920462850 920462850 581451272 581451272 557419008 54759666 309621330 309621330 275126658 36640208 284030194 284030194 354812960 965205002 965205002 671294080 676467333 676467333 23604261 799568656 799568656 329579627 530357871 671879168 671879168 647039005 906497575 906497575 542846002 812261798 812261798 670943515 884018736 1020497944 1020497944 589493926 675873024 675873024 5243520 564086592 564086592 819453171 819453171 583039313 300147041 364806680 364806680 360187818 690673743 690673743 523383944 612529069 612529069 528493470 528493470 311705674 802329259 802329259 242309796 539085313 539085313 39895440 34259152 43561184 144358978 144358978 195084660 456712432 456712432 417344226 417344226 368091586 300499362 280038146 55624368 334528834 334528834 12244800 17662832 19404304 19404304 33596032 33611792 84920224 84920224 85132160 88236160 88236160 54840112 91597536 139887381 139887381 678545424 678545424 674573061 44224848 199232464 199232464 198409456 165477952 155103780 52053248 95982592 612434448 806363671 975267468 975267468 810110349 810110349 957890081 957890081 556508320 675296548 675296548 573577666 880151171 880151171 600313509 170656975 256542163 743097075 1016746334 1016746334 738855194 738855194 500402084 635021896 635021896 740615416 740615416 973793560 1009728783 1009728783 540241200 540241200 30866464 608725504 621031024 647571033 744293581 833169675 833169675 300755279 793535022 843942483 843942483 1054084166 1054084166 1016072271 96469224 687063684 687063684 825443017 825443017 869680746 925797844 925797844 335821592 118800496 21252632 38187276 241559964 241559964 875682590 875682590 203546892 336907010 336907010 882154919 882154919 1013784267 1013784267 407832768 105523544 260885628 260885628 263142780 308585568 308585568 268591268 223167504 369191054 369191054 444721358 444721358 375136920 375136920 249138906 324182680 328054866 470411003 597657715 597657715 847554758 847554758 547048513 390993071 173151900 173151900 730124350 730124350 542084167 705931570 970447525 970447525 699923301 941980594 941980594 418790455 1002885134 1002885134 346015617 903944523 903944523 553812586 301260962 344277824 344277824 343982154 337238184 394682034 394682034 337565690 285517496 308289666 443360651 769730861 769730861 746635725 781003869 781003869 487080381 487080381 193653108 172025765 172025765 151612568 105517056 56301664 100666240 100666240 47504384 152111652 152111652 41824544 41824544 142607428 709362756 709362756 545787972 825196688 825196688 36404595 48834000 48834000 8398224 0 152265772 152265772 563581471 634401409 634401409 409867946 307629064 697352291 837116407 837116407 806422628 444867094 808531574 808531574 799762869 799762869 75763788 134617092 214307032 340561125 986218632 1015731279 1015731279 805345357 968933460 968933460 1041653319 1041653319 1001135119 617274579 456655166 967504498 967504498 79380775 288136258 288136258 405308706 405308706 296372326 271107330 271107330 409943972 409943972 270323488 155978916 209971660 209971660 165763680 165763680 22060236 268437760 270797058 270797058 922014728 922014728 656070201 656070201 134668812 622213632 622213632 225782244 225782244 67707912 44402008 44402008 84427080 84427080 61098024 631037040 834281337 834281337 613111395 879512552 879512552 315950403 635491961 635491961 98701800 33735160 563216897 578949984 578949984 573707089 572658192 315573122 315573122 90442220 161645492 207929508 472385464 1063522176 1063522176 940771831 936783539 530386125 483747053 805677448 878756235 878756235 676338700 204473601 908592771 908592771 27036234 560842691 572352329 572352329 375745888 660701344 660701344 917045825 917045825 883107048 621027817 623008652 740307789 740307789 593797120 593797120 552809409 548745984 16779872 273297696 294126690 294126690 69337192 69337192 38458772 141742980 168318864 309379986 389906826 389906826 746730568 1038695835 1038695835 1036655913 474757433 14279178 25088324 144891808 144891808 84092672 84092672 75313032 208228732 237998336 245546236 252101944 252101944 111337536 111337536 73597904 242393328 242393328 141879764 245681548 245681548 214843752 226245089 685144949 698003021 698003021 741947044 741947044 672333965 758720301 758720301 635099013 421326156 705815061 806970997 806970997 572531570 101398712 101398712 170196460 604783112 675075921 675075921 381173766 394693134 401901666 401901666 392431930 384304602 889718226 889718226 540433570 427705894 427705894 818692258 818692258 352461032 352461032 151130148 185285420 395327152 469052406 469052406 508605200 508605200 478854684 589002284 745363856 957095044 957095044 335567558 335567558 837276001 837276001 347898132 800822910 800822910 678613893 682100037 682100037 848609198 848609198 745588615 743300800 38380816 38380816 1056 17302560 17302560 17301504 105305472 105305472 73484072 73484072 72662794 72662794 75428224 420463872 422000934 426406912 426406912 220961828 220961828 361881858 472474432 472474432 546719492 569983468 569983468 456672508 456672508 420050344 795269459 1019876559 1019876559 738333893 692322340 723780753 723780753 1010903492 1010903492 788867752 848038472 848038472 419171830 823003240 823003240 1023925893 1023925893 414733862 538106311 538106311 514535872 890481656 890481656 458117871 167727710 1050747459 1050747459 659788977 414270978 531187396 531187396 430965606 428601572 428601572 193290396 184609568 26737248 36850240 134221476 134221476 191508752 191508752 187486916 153115492 152966694 228169228 228169228 300977152 300977152 502081210 524292158 524292158 499684596 884638721 1007076178 1007076178 314971835 316198176 897944264 897944264 276823938 640398088 845625747 845625747 650041104 661601952 661601952 17540608 4752512 15501632 74188672 523240928 523240928 495469092 495469092 8652864 8652864 679485584 717299925 717299925 718015701 718015701 558432256 558432256 369363554 369363554 102829384 492838188 492838188 449188406 295901872 295901872 66920434 564956193 977626240 977626240 972215271 458486454 458486454 414300598 510212390 510212390 996000842 996000842 718021982 477365922 424677280 400950120 400950120 347604360 1036551884 1036551884 640691520 896812392 896812392 819726144 590782451 277613634 310846802 310846802 909482301 909482301 207034118 153617700 156021376 174824036 449076272 457286914 457286914 427238710 320501924 155386162 273367556 324441506 324441506 286394768 1183744 1184256 1184256 337826313 337826313 640065739 640065739 830609090 830609090 924692337 924692337 1013735318 1017912268 1017912268 541360134 1053499840 1053499840 779236287 779236287 867708640 867708640 741686852 886716233 886716233 948778790 948778790 664747641 876840181 876840181 843468054 843468054 297936005 894742664 894742664 52412944 61841888 283985507 592991280 858383667 858383667 824829505 909994058 909994058 965908585 965908585 696683909 504869023 852294693 852294693 621418557 621418557 395791032 395791032 878816930 878816930 343969186 342781514 88294696 76189344 86790272 87894080 541329184 541329184 422208417 537667712 537667712 429182049 232223914 45224552 363873572 479774286 745399401 745399401 885523659 885523659 613248616 374976208 13895200 9437760 34079760 34079888 34079888 20971648 45163348 171123564 235016380 235016380 227153004 227153004 85513736 268490054 268490054 1040240387 1040240387 120685428 900770875 900770875 500066288 427505574 427505574 443548566 814102549 814102549 916531370 916531370 633542990 255860610 169481748 203165196 203165196 7603596 8442688 8987712 950562176 950562176 14993856 31802560 31802560 122290294 461378744 461378744 28837728 605161472 605161472 134222098 436522610 488409716 488409716 213796478 319235196 395176290 395176290 520262711 756232749 781067867 1057758782 1057758782 353770026 1006715072 1006715072 551397563 612241775 1028588290 1028588290 858784563 534937867 418567110 1015885211 1015885211 347776370 556473164 1023410223 1023410223 827000770 810099843 986265093 986265093 647170512 470682826 470682826 320869028 135020200 360289672 389106730 389106730 274341896 274341896 87241984 86057256 87929576 87929576 17106472 605038600 605038600 642270216 642270216 596489216 596489216 538553441 263009032 263009032 868629506 868629506 800603189 800603189 786845656 668885961 668885961 549487192 788615725 788615725 318429490 768335432 768335432 755470064 346343754 346343754 366756914 398339408 398339408 14762176 2220288 287270400 287270400 270401090 259647233 1024473597 1024473597 290198280 1057017031 1057017031 951300236 471352904 968357998 968357998 879265127 879265127 920001468 920001468 651671800 83929120 220843268 220843268 201449488 201449488 246129156 246129156 109890648 109890648 247269136 247269136 203428796 191302552 74793432 74793432 86281280 86281280 298695394 298695394 30736808 153825444 153825444 360319040 360319040 365028090 399771715 906092571 906092571 805947521 642295185 642295185 763766624 763766624 739369485 1036260386 1036260386 341729866 503500830 504541844 654579628 763251129 763251129 543476097 304187783 886239704 886239704 871403256 715682049 1059344607 1059344607 887026126 619166603 256252380 983966177 1016193792 1016193792 520108600 807329532 807329532 873724633 962671559 972030951 1048833708 1048833708 977932408 1003225106 1003225106 378644688 378644688 824106531 824106531 789557417 458944548 403995162 403995162 293083310 293083310 566511684 721705300 721705300 574113352 724716032 724716032 493535358 493535358 184981316 184981316 240124572 779879132 779879132 662865961 662865961 445407255 117913650 319105074 828442738 828442738 633636248 447468716 154200828 354952238 354952238 514596882 514596882 478769475 478769475 408259988 444369841 870582771 871370787 609290640 825462289 825462289 676334464 551005344 420639314 557197383 557197383 550726148 798431757 798431757 646109893 646109893 847458387 847458387 822232320 923712616 923712616 505275486 412802582 412802582 296769664 345804864 345804864 591539962 591539962 553910304 935680827 935680827 372418779 270532866 21446784 29684112 48482464 48482464 13139104 8963072 16905216 16905216 216420852 551561468 551561468 477119722 671294080 676467333 676467333 23604261 296690800 647570254 647570254 219548193 671879168 671879168 188680197 188033844 2621440 1103136 28649113 617401001 670943515 884018736 884018736 384223844 98078048 98078048 28312032 5243520 951486690 951486690 819453171 819453171 583039313 840875947 840875947 960416296 960416296 932208332 690673743 523383944 612529069 612529069 528493470 528493470 311705674 802329259 802329259 242309796 539085313 539085313 14729600 33805840 33805840 34371600 41974816 51906096 462479888 462479888 33669686 70263040 70263040 68231688 17048776 20971680 81863016 81863016 76315136 76315136 29088608 82764072 90713168 90713168 90573728 84920224 248853068 248853068 89154216 266564680 266564680 177102108 153645200 678545424 678545424 674573061 135022296 135022296 198409456 198409456 549316709 549316709 454441898 880144899 880144899 806363671 975267468 975267468 810110349 810110349 957890081 957890081 556508320 675296548 675296548 559032525 701836005 701836005 619918281 619918281 386405702 1014385998 1016746334 1016746334 984593162 984593162 784663753 739320528 635021896 861844141 861844141 973793560 1009728783 1009728783 540241200 540241200 373549763 866205379 903867560 903867560 744293581 744293581 691012389 691012389 277022726 402927682 857451015 1054084166 1054084166 1016072271 96469224 587119756 587119756 206528465 118039760 49408 3983392 46432288 825019018 825019018 269020954 541575552 860246152 860246152 875682590 875682590 403837476 403837476 738383882 882154919 901437291 1013784267 1013784267 1002994688 573905764 260885628 260885628 235385952 312939176 682120482 1026064781 1026064781 824452514 746706039 746706039 680156375 780494050 780494050 447402816 447402816 352497800 8610210 440403090 440403090 847554758 847554758 547048513 390993071 173151900 173151900 730124350 730124350 542084167 271827765 731988613 731988613 591520356 939540226 939540226 418790455 671945994 913981427 913981427 903944523 903944523 553812586 301260962 344277824 344277824 343982154 337238184 394682034 394682034 361731362 361731362 311108698 443360651 769730861 769730861 746635725 781003869 781003869 487080381 487080381 193653108 172025765 172025765 151612568 105517056 118109472 118109472 100666240 108167960 152111652 152111652 100721296 100721296 575153477 575153477 545787972 545787972 468814401 468814401 287693158 782501632 850431004 850431004 849190912 849190912 552101676 302842436 185985588 213178912 307629064 307629064 67902098 45179076 813762656 813762656 547762246 808531574 808531574 682821736 682821736 948834537 948834537 826803392 971989184 971989184 478599246 805345357 942983943 942983943 727718663 687133382 806373728 840225009 840225009 456655166 967504498 967504498 295182913 295182913 288136258 301518212 301518212 296372326 271107330 271107330 148406884 21546144 21945504 21945504 17250336 221132552 221132552 215561416 947574663 1009799183 1009799183 1007585843 928174779 922014728 740151963 656070201 491597986 944477952 944477952 758070573 780700740 780700740 228977137 44402008 105126144 105126144 61098024 631037040 834281337 834281337 613111395 807241355 807241355 127403640 635491961 635491961 98701800 33735160 563216897 578949984 578949984 573707089 572658192 34768896 34768896 220316336 494144316 494144316 207929508 1063522176 1063522176 692147373 692147373 839227880 839227880 805677448 878756235 878756235 609053455 470499245 834961600 834961600 345295434 635918922 635918922 338167050 347994506 351409098 351409098 310919866 310919866 291758666 274204290 623008652 740307789 740307789 593797120 593797120 199617477 186644854 274726114 275735650 458112534 458112534 365631042 285214208 152046444 152178784 159593852 309379986 650523644 650523644 1016991317 1016991317 1011290398 1011290398 257025632 257025632 161888604 557764005 558630688 560704904 560704904 208007024 75313032 42467360 20266032 50595888 62916800 111337536 111337536 44167512 19107888 126947840 126947840 37624768 40424928 40424928 63952608 63952608 49007680 49007680 558501920 603984110 748850475 748850475 635099013 940366912 940366912 160958052 926876672 926876672 99877544 247529124 374030034 374030034 565912944 772615197 772615197 381173766 394693134 401901666 401901666 392431930 384304602 889718226 889718226 540433570 427705894 427705894 18258017 298320548 298320548 502516046 502516046 593657034 929438139 929438139 1006464469 1006464469 954253767 673713428 673713428 745363856 745363856 437181462 722445990 722445990 837276001 837276001 232570114 800822910 800822910 678613893 682100037 682100037 848609198 848609198 745588615 743300800 455681334 168318374 478872602 478872602 321175792 327174400 327174400 105305472 17689632 17689632 22116264 360314120 360314120 420463872 422000934 422000934 54546868 54546868 383897934 383897934 472474432 472474432 546719492 742683905 742683905 456672508 456672508 420050344 795269459 1019876559 1019876559 738333893 692322340 692322340 427894949 281544806 574950538 935330043 935330043 848038472 81333843 559163392 833464937 833464937 536879104 10715201 144855888 171053844 514535872 969149328 969149328 458117871 248070150 142722048 471425100 471425100 414270978 531187396 531187396 430981312 428601572 428601572 452438538 452438538 326527616 102193216 134221476 144053568 144053568 171098212 171098212 144199264 144199264 17597476 278399692 387279506 387279506 428771876 428771876 318951474 289453578 884638721 884638721 470304844 470304844 316198176 544016496 544016496 276823938 640398088 845625747 845625747 650041104 661601952 661601952 17334528 21285024 21285024 74188672 523240928 523240928 839005184 839005184 323696850 122032195 698766688 698766688 698790293 698790293 680135253 855849106 858992659 858992659 590231208 369498138 170474822 259330886 259330886 295901872 429620768 456361232 456361232 432374080 448836244 448836244 416859846 416859846 316504724 400371450 400371450 314818576 436410368 477365922 477365922 828122195 828122195 696880234 1008256527 1036551884 1036551884 535117907 896812392 896812392 590782451 590782451 277613634 310846802 310846802 909482301 909482301 12136000 12136000 2728960 174824036 449076272 449076272 439827222 427238710 172703490 18736160 18736160 16090560 350497225 907881257 907881257 107028305 106086930 337826313 354689763 640065739 640065739 607056473 656473865 924692337 924692337 861286624 861286624 799691599 408011140 1053499840 1053499840 402661648 402661648 354492714 148179148 741686852 886716233 886716233 820709059 237045835 474376438 546244019 546244019 587830444 587830444 268438056 894742664 894742664 43984320 43984320 95439530 887209738 887209738 814500931 792353367 792353367 453526306 453526306 340787656 810831854 964603944 964603944 658905273 658905273 281276610 557955201 557955201 293981472 561424035 561424035 342781514 88294696 76189344 86790272 576073281 689211780 689211780 836684512 836684512 537667712 134925408 740331536 774033693 774033693 199410093 272754178 822635552 822635552 274730100 274730100 252710196 252710196 163578388 83116248 83116248 149932176 213943612 213943612 206508224 235016380 235016380 227153004 227153004 175637136 268490054 268490054 526566314 526566314 170258614 288196670 500066288 500066288 427505574 427505574 443548566 443548566 344378446 134878212 440272108 440272108 398526974 313789008 313789008 203165196 146704966 336661506 336661506 336327178 336327178 71229192 498672710 498672710 122290294 987721244 987721244 744100459 781585156 781585156 482088207 436522610 488409716 488409716 213796478 319235196 395176290 395176290 409012452 409012452 451163030 647671876 749681797 749681797 1006715072 1006715072 551397563 508509342 1028588290 1028588290 858784563 534937867 418567110 18372070 67634184 67634184 328737822 328737822 520824294 520824294 378217208 394990588 480323066 480323066 470682826 470682826 320869028 184889780 527689730 527689730 224800920 336760964 336760964 269616898 221292326 209302348 341905672 341905672 541122688 549503169 671236114 981467223 981467223 596489216 538553441 363889694 363889694 868629506 868629506 753973389 786845656 786845656 507351598 507351598 216336506 345095346 345095346 318429490 318429490 375828850 375828850 541799553 644177051 850674059 850674059 831116066 831116066 823390755 287270400 542694657 590864769 590864769 1024473597 1024473597 940977705 1059200934 1059200934 474005646 474005646 471352904 411091014 879265127 879265127 920001468 920001468 651671800 96755176 90751016 224469040 224469040 121708708 72065152 67818504 80999112 113613328 205010760 205010760 76258504 76258504 47957536 27053664 42124800 67714368 298695394 298695394 30736808 25982976 76158048 360319040 360319040 365028090 399771715 906092571 906092571 805947521 642295185 642295185 763766624 763766624 739369485 922214749 922214749 341729866 700915877 1058745599 1058745599 853742425 853742425 816915267 345647232 886239704 886239704 871403256 715682049 1059344607 1059344607 887026126 117449224 100349928 100349928 1016193792 1016193792 737924494 807329532 807329532 553667588 135036961 0 454082964 454082964 447343004 447343004 208521546 101523480 218366488 218366488 256454280 674504748 674504748 472924300 489610542 489610542 242094754 475301968 475301968 432279570 982273294 982273294 485511680 493535358 493535358 510838172 510838172 293769680 779879132 779879132 662865961 662865961 479198286 526169322 526169322 828442738 828442738 633636248 447468716 154200828 154200828 268960888 514596882 514596882 478769475 478769475 225774518 444369841 870582771 871370787 737626080 737626080 676334464 676334464 450004389 20470102 346221926 346221926 550726148 798431757 798431757 555074340 205953094 313996106 313996106 469869062 469869062 505275486 505275486 976671815 976671815 296769664 553726465 553726465 790586558 1011747977 1011747977 935680827 935680827 887122139 911386826 911386826 546948736 52976642 304652082 304652082 303613458 25621840 305268274 305268274 551561468 551561468 548178752 548178752 959002828 959002828 540034369 539017473 647570254 1018261254 1018261254 965945348 965945348 897976922 547331423 547331423 956980374 956980374 684540638 81250504 551213108 551213108 384223844 98078048 553791553 553791553 553727584 951486690 951486690 953883107 954468807 954468807 840875947 840875947 960416296 960416296 932208332 151704612 151704612 202088256 202088256 107094656 239364624 239364624 206693004 146948880 146948880 35125504 35125504 9528192 33805840 33805840 187514674 187514674 50973702 462479888 462479888 372018282 422315266 422315266 384901954 384901954 99934570 287588706 287588706 76315136 76315136 84934880 91849608 91849608 90713168 90573728 59062000 248853068 248853068 89154216 266564680 266564680 177102108 592919217 592919217 786765717 786765717 709394776 135022296 30532832 63698640 549316709 549316709 454441898 880144899 880144899 303057178 675484292 692269221 692269221 269600900 269600900 165224326 296626244 296626244 815136267 1053112177 1053112177 701836005 726931951 726931951 393419122 1014385998 1014385998 659295390 984593162 984593162 784663753 739320528 34113712 861844141 861844141 789326989 789326989 3838976 30048744 65859154 373549763 866205379 903867560 903867560 418350222 555745796 691012389 691165025 691165025 995363511 995363511 857451015 864301139 864301139 761663629 757886321 674644394 206528465 155999518 549494104 549494104 541639595 854101242 854101242 667471651 541575552 860246152 860246152 828420139 202810134 403837476 403837476 738383882 812696805 901437291 901437291 1002994688 1002994688 573905764 239076949 213926476 245006592 312939176 682120482 1026064781 1026064781 824452514 746706039 746706039 680156375 780494050 780494050 508220574 447402816 352497800 409348371 948126273 1027013251 1027013251 886761028 886761028 721571980 721571980 730753595 730753595 443311494 955221972 955221972 731988613 731988613 591520356 418565622 811306114 985433044 985433044 913981427 913981427 743361920 740430093 301380264 300797504 686320646 742904896 742904896 570741137 889602386 889602386 361731362 361731362 311108698 297583290 325058994 325058994 78505410 596343358 596343358 540839472 540839472 9068333 34675049 597165341 597165341 239062800 239062800 181852884 539147396 659314760 738520740 739768845 739768845 563988696 575153477 575153477 182452692 302685331 468814401 468814401 287693158 782501632 850431004 850431004 849190912 849190912 552101676 540961057 541346953 541346953 213178912 172247457 617427292 932060876 932060876 813762656 688537423 135926381 219288108 687939593 687939593 948834537 948834537 940055588 971989184 971989184 275381510 698801280 942983943 942983943 727718663 687133382 806373728 840225009 840225009 437643799 437643799 222347436 295182913 295182913 190574081 148117792 148117792 145937220 681115041 681115041 561200866 561200866 693671653 697200961 703988416 703988416 668731929 215561416 947574663 1009799183 1009799183 1007585843 928174779 740151963 740151963 491597986 491597986 944477952 944477952 758070573 780700740 780700740 753403713 618977416 931128426 931128426 654301793 611417825 929436065 929436065 338366491 334375000 306459224 72521858 76798080 76798080 550039616 563120193 563120193 117469305 10171904 17322600 59211784 130420832 130420832 220316336 494144316 494144316 470890097 470890097 169530502 63194688 63194688 839227880 839227880 755653473 880024207 880024207 539885582 470499245 272630003 461422677 740198945 740198945 635918922 338167050 356738594 1035342127 1035342127 310919866 310919866 291758666 274204290 857737394 857737394 621282345 854331382 854331382 330141635 322763618 274726114 275735650 458112534 458112534 435749754 434640334 633802871 633802871 159593852 229847248 650523644 650523644 1016991317 1016991317 721572024 721572024 642122924 706582541 706582541 568608193 697370464 697370464 560704904 212077128 119945992 119945992 119409976 119409976 112012632 80112776 75946520 120216696 120216696 47340544 127028208 127028208 41732800 43435136 152068641 676980357 692175557 692175557 558420128 603984110 748850475 748850475 541904001 940366912 940366912 431386170 926876672 926876672 771101357 771101357 674630085 767077944 767077944 772615197 772615197 648299856 648299856 168870168 168870168 110117480 110117480 96524456 421205588 421205588 327229554 194552870 687510016 687510016 298320548 502516046 502516046 593657034 929438139 929438139 1006464469 1006464469 954253767 673713428 673713428 404525574 412484690 437181462 722445990 722445990 551174977 547159048 157795394 459605354 459605354 149619512 149619512 235425856 235425856 8553500 354485276 455681334 455681334 231131340 478872602 478872602 321175792 327174400 327174400 72088480 72088480 45269298 45269298 360314120 360314120 358856494 358856494 270164116 112337278 417031750 417031750 383897934 470876160 470876160 546741388 903685295 903685295 808713733 1021702637 1021702637 901640043 306978105 1068243026 1068243026 145359260 154740645 230821289 412037346 574950538 1023943073 1023943073 864617739 996551164 996551164 833464937 1037592047 1037592047 833728262 1007792840 1007792840 281541434 969149328 969149328 990901591 990901591 611748615 420743229 420743229 412429824 412429824 430981312 437317616 437317616 413972618 452438538 452438538 326527616 102193216 102193216 145176128 145176128 21704420 11177728 211339298 211339298 139369156 500961322 500961322 387279506 428771876 428771876 318951474 289453578 402672798 508329990 508329990 470304844 838173384 838173384 851504195 851504195 807527491 807527491 609955544 85669416 85669416 17334528 17334528 21285024 21285024 16779456 12845280 193594580 839005184 839005184 323696850 122032195 967614962 975783903 975783903 698790293 680135253 855849106 858992659 858992659 590231208 369498138 170474822 259330886 411410752 411410752 429620768 456361232 456361232 432374080 448836244 448836244 190576308 316504724 316504724 56799888 314818576 314818576 436410368 436410368 241511675 828122195 828122195 696880234 1008256527 1008256527 470109857 535117907 535117907 96917736 275977560 275977560 713458797 713458797 874868608 874868608 1032170593 1032170593 895525923 752169952 754617933 754617933 733532232 495338804 430539360 33105888 18736160 18736160 16090560 350497225 907881257 907881257 107028305 106086930 106086930 354689763 354689763 559864345 607056473 656473865 656473865 622044688 946378800 999849573 999849573 408011140 408011140 251658300 956498601 956498601 1028667410 1028667410 583993611 770647623 770647623 962863047 962863047 654647410 1049244886 1049244886 1015026829 794263562 794263562 449724050 162180652 177577820 203737356 450795482 887209738 887209738 814500931 512822450 512822450 270549732 270568204 340787656 810831854 964603944 964603944 969409767 969409767 477504449 573771705 573771705 293981472 561424035 561424035 47200080 59771296 59771296 57267600 576073281 689211780 1034082918 1034082918 836684512 363870600 743674112 743674112 774033693 774033693 199410093 690250897 822635552 965296530 965296530 870883932 322029120 252710196 163578388 273290257 273290257 296949426 296949426 588493539 836051715 836051715 155189388 721420388 721420388 1065500876 1065500876 898814711 898814711 390775826 390775826 912505233 912505233 533997760 533997760 521216574 466449294 982716435 982716435 834774242 907500570 907500570 398526974 313789008 313789008 107393040 146704966 336661506 336661506 336327178 1012756747 1012756747 900841936 705368823 664945593 987721244 987721244 744100459 867177059 867177059 974652486 974652486 330827634 92275248 1064984 62465592 62465592 87298312 87298312 31797216 290814202 647671876 749681797 749681797 732325001 288394067 772846940 772846940 907542943 907542943 704819458 704819458 557442127 163446087 589199912 589199912 345194107 448080726 873346909 873346909 1053361747 1053361747 818492609 765858820 201326604 218956192 218956192 184889780 527689730 527689730 139006088 336760964 336760964 269616898 221292326 209302348 367335784 367335784 141443726 8572992 671236114 981467223 981467223 294916215 278272578 363889694 363889694 503858026 503858026 78458184 78458184 93033600 93033600 21285024 17716896 277611936 277611936 100676504 106115736 106115736 44501960 541799553 644177051 850674059 850674059 831116066 831116066 823390755 269939233 542694657 590864769 590864769 75147656 588768667 940977705 1059200934 1059200934 474005646 474005646 232668092 139239060 232000384 526438620 526438620 332032884 96755176 96755176 201630116 224469040 224469040 167772180 105432216 113631512 254594136 254594136 205010760 240468624 240468624 181414408 71778392 71778392 114575808 115201416 115201416 114817032 6629760 25982976 107621744 107621744 96604392 100721528 100721528 65121296 118555336 118555336 18164256 10559808 16065344 73773571 899740433 899740433 930529785 1067346642 1067346642 1058745599 1058745599 853742425 853742425 816915267 345647232 378935898 710104640 710104640 85611032 102422040 102422040 117449224 117449224 173878932 460842613 699520703 737924494 996886524 996886524 553667588 750727197 750727197 564269409 809907499 809907499 1031614655 1031614655 875703902 643740692 638259339 482383170 892371887 892371887 759233925 893905921 893905921 773712647 846897294 1030653536 1030653536 339516634 982273294 1002580507 1002580507 1007367183 1007367183 510838172 510838172 430503051 423760038 562305169 675978256 675978256 596266004 526169322 526169322 370673178 144760728 177230736 177230736 29894488 35963976 377487392 377751642 377751642 59574464 59574464 286835840 286835840 35138560 35138560 737626080 1050001505 1050001505 931725660 931725660 255132760 966646371 966646371 338480202 44624492 555074340 555074340 1253637 35664384 77269264 469869062 469869062 76499976 269027330 976671815 976671815 482666598 553726465 553726465 790586558 1011747977 1011747977 373495953 887122139 887122139 911386826 911386826 546948736 52976642 304652082 304652082 303613458 66077696 305268274 305268274 280545090 403755378 548178752 856987212 959002828 959002828 540034369 648508940 648508940 1018261254 1018261254 965945348 965945348 897976922 547331423 547331423 956980374 956980374 734482667 784861943 784861943 949554963 949554963 645922940 553791553 553791553 553727584 293299621 836314851 953883107 954468807 954468807 275124225 67182600 289663616 409391306 409391306 448597216 448597216 427926744 202088256 94505400 239364624 239364624 236317600 236317600 217426032 28395872 28395872 27431104 24456096 5470816 187514674 187514674 144345013 988673441 988673441 946129287 422315266 422315266 384901954 384901954 559364481 915538181 915538181 145820481 145820481 84934880 91849608 91849608 69755808 58757952 100053712 100053712 71393600 71393600 94474336 94474336 79741128 592919217 592919217 786765717 786765717 709394776 171242896 171748356 171748356 172810420 184852590 499528802 499528802 265349372 535234258 675484292 692269221 692269221 304161186 304161186 146658740 233183076 233183076 815136267 1053112177 1053112177 623063337 733350132 733350132 393419122 393419122 264586368 264586368 485172168 485172168 681603377 681603377 22632968 755311205 755311205 940609692 940609692 556826642 565591056 565591056 31009280 31009280 805731073 805731073 418350222 418350222 357565098 691165025 806481828 995363511 995363511 839002112 839002112 761663629 761663629 757886321 674644394 375161254 155999518 549494104 549494104 541639595 854101242 854101242 667471651 537338904 553670688 855773235 855773235 824970531 1008463669 1008463669 638194713 504141057 487901380 303652480 988741241 988741241 220338152 789484445 789484445 245006592 245006592 231347564 738783252 939770364 939770364 822529113 822529113 632179931 1031957833 1031957833 705165333 828640260 1015302567 1015302567 948126273 1027013251 1027013251 914623058 914622555 721571980 721571980 730753595 807695492 807695492 955221972 955221972 720185232 411781953 411781953 418565622 811306114 985433044 985433044 535961974 743361920 743361920 949519488 953205447 953205447 686320646 742904896 742904896 570741137 889602386 889602386 96046624 96046624 293896274 489463931 941959429 941959429 797445495 596343358 596343358 780526637 780526637 646303316 51955248 597165341 597165341 239062800 239062800 181852884 539147396 659314760 738520740 739768845 739768845 563988696 222368852 58753908 714924721 714924721 135930964 847666723 847666723 484185618 484185618 637586598 835729068 835729068 1030660456 1030660456 541346953 541346953 172247457 176620056 617427292 932060876 932060876 789128253 688537423 121255323 92344608 687939593 687939593 660996536 660996536 940055588 940055588 453119136 737154325 737154325 722485989 861032692 871465954 871465954 459604604 459604604 204872460 204872460 222347436 222347436 164086060 157978980 230003896 330001620 330001620 249870478 681115041 681115041 561200866 561200866 693671653 697200961 703988416 703988416 668731929 120805917 675073797 675073797 466223268 997707034 997707034 288067648 736397650 736397650 686368197 800617764 800617764 608033121 772835844 772835844 753403713 618977416 931128426 931128426 654301793 611417825 929436065 929436065 891035240 891035240 836635205 819169867 819169867 219318316 550039616 563120193 563120193 785191573 785191573 73933201 605366552 605366552 130420832 130054344 475714432 475714432 470890097 470890097 169530502 40665652 625237073 625237073 605051307 826454027 880024207 880024207 891552838 891552838 744934427 882379393 882379393 851053616 453024570 257495557 356738594 1035342127 1053666709 1053666709 542378625 911891099 911891099 873464968 873464968 621282345 854331382 854331382 330141635 322763618 325132722 325132722 142093428 435749754 435749754 434640334 633802871 633802871 111423572 229847248 250160604 592719725 592719725 349910730 721572024 721572024 674783668 706582541 706582541 568608193 697370464 697370464 543200136 212077128 119945992 119945992 119409976 119409976 126054752 126054752 75946520 120216696 120216696 93969960 127028208 127028208 41732800 43435136 152068641 676980357 692175557 692175557 558420128 215832928 700527808 700527808 688526373 496760430 496760430 431386170 481342274 545548498 771101357 771101357 674630085 767077944 767077944 644837008 617454108 648299856 648299856 620258065 620258065 669197131 917690922 917690922 607468422 438101707 327229554 194552870 687510016 687510016 589349547 941146243 995132211 995132211 810680584 911325031 911325031 530628990 690110748 690110748 311035648 311035648 327290252 385753050 385753050 745097108 745097108 547159048 157795394 472619919 927523125 927523125 699190629 941771041 941771041 775038602 775038602 616563294 386142384 423794828 457326676 457326676 220390440 220390440 68426304 72088480 72088480 45269298 302456848 330046778 330046778 302055440 436462114 436462114 112337278 417031750 417031750 218243328 470876160 470876160 546741388 903685295 903685295 808713733 1021702637 1021702637 901640043 308614024 1068243026 1068243026 145359260 154740645 632160300 632160300 676791912 1023943073 1023943073 864617739 996551164 996551164 832516791 1037592047 1037592047 877993501 1007792840 1007792840 411185294 411185294 381089810 990901591 990901591 611748615 420743229 420743229 412429824 412429824 386747802 437317616 437317616 131533288 131533288 59064440 59064440 52310672 53902912 145176128 145176128 44076352 143731008 211339298 211339298 139369156 500961322 500961322 433135630 238856464 455476190 455476190 397281050 550903659 784892013 784892013 268992514 838173384 838173384 851504195 851504195 807527491 807527491 92306816 95467049 630399616 630399616 29361856 29361856 25215072 25198752 456131880 456131880 857986336 857986336 988895657 988895657 967614962 975783903 975783903 342992735 322449378 322449378 208750458 470948144 610585899 704857929 704857929 1011739791 1011739791 1072305663 1072305663 638229117 638229117 389172193 971027216 971027216 695615184 59319408 293687202 293687202 39014832 112010296 436670464 436670464 268451222 276839894 349217532 349217532 84724454 101130280 176600084 176600084 628402992 628402992 275977560 275977560 713458797 713458797 874868608 874868608 1032170593 1032170593 895525923 752169952 754617933 754617933 733532232 495338804 430539360 165437990 61908736 44305232 44305232 43059968 43059968 14889408 23269744 47643280 47643280 10560192 21371040 552192768 555529953 555529953 346479075 346479075 946378800 999849573 999849573 595863122 515051838 1017139397 1055130607 1055130607 1028667410 1028667410 683692387 770647623 770647623 962863047 962863047 785847512 1049244886 1049244886 1015026829 970746389 794263562 826298399 925492539 925492539 808594708 808594708 526669952 298605170 788218876 788218876 1045386421 1045386421 1026556719 1026556719 698621761 1025773577 1025773577 969409767 969409767 617487561 617487561 573771705 657780347 657780347 277574146 277574146 54526736 54526736 42048324 179599380 725874912 1034082918 1034082918 296731458 363870600 743674112 743674112 575145296 851450900 851450900 690250897 926027316 965296530 965296530 870883932 322029120 78695392 29210112 273290257 273290257 296949426 296949426 588493539 836051715 836051715 155189388 721420388 721420388 1065500876 1065500876 898814711 898814711 390775826 390775826 912505233 912505233 533997760 533997760 521216574 466449294 982716435 982716435 834774242 907500570 907500570 237737616 208790412 139403800 139403800 76832256 76832256 146365188 271697288 1012756747 1012756747 900841936 705368823 664945593 664945593 266213914 696653436 867177059 867177059 974652486 974652486 322838322 93739080 93739080 361908482 361908482 25766656 70635784 272099144 338793930 338793930 314777880 577569776 934104081 934104081 772846940 772846940 1024030108 1024030108 704819458 704819458 1049274830 1049274830 854772127 785369983 345194107 448080726 873346909 873346909 1053361747 1053361747 818492609 765858820 528691326 528691326 490360908 454222376 454222376 138639012 139006088 139006088 99181000 94675008 94675008 86370600 367335784 367335784 93010242 4329600 464694775 833989345 1005416339 1005416339 975504625 504141341 210640186 666502484 666502484 713575008 726362032 726362032 525043840 525043840 256112002 60369352 60369352 314577362 316801234 379617674 379617674 376777626 376777626 371534106 371534106 554763040 554763040 553721889 536944673 108145704 308245424 308245424 709049620 709049620 594204081 253436094 253436094 226180712 232668092 232668092 139239060 232000384 526438620 526438620 332032884 69854472 96891136 201630116 201630116 167772180 167772180 224618852 224618852 254594136 254594136 120408348 240468624 240468624 181414408 71778392 71778392 114575808 115201416 115201416 114817032 31589152 46866848 107621744 107621744 96604392 92737952 81939544 127324440 127324440 111188512 18164256 10559808 16065344 73773571 899740433 899740433 930529785 1067346642 1067346642 72665736 315735040 315735040 41942928 541069513 696652444 696652444 710104640 710104640 391133733 440402070 440402070 99047770 537006208 541065345 541065345 699520703 699520703 996886524 996886524 628162760 750727197 750727197 564269409 809907499 809907499 1031614655 1031614655 875703902 643740692 638259339 482383170 892371887 892371887 759233925 893905921 893905921 773712647 846897294 1030653536 1030653536 868113991 1013449852 1013449852 1002580507 1007367183 1007367183 401155613 430503051 977933700 977933700 562305169 675978256 675978256 596266004 314781906 317380050 341087704 363428954 363428954 355108048 372245282 372245282 377487392 377751642 377751642 377413530 377413530 286835840 286835840 42738880 47719808 0 1050001505 1050001505 931725660 931725660 255132760 966646371 966646371 1016083318 1016083318 422260993 646299992 646299992 237518356 237518356 129955914 395471978 484851790 484851790 257053556 330607352 482666598 482666598 435370474 435370474 414412806 145661250 296834658 346406720 346406720 346692096 346692096 12085248 9083392 13505280 15729600 54543168 66077696 66077696 23642656 280545090 403755378 453694518 1039532796 1039532796 765410929 212199756 648508940 1043333919 1043333919 1001329183 999107703 572786184 339457546 339457546 446297654 446367446 521860702 734482667 784861943 784861943 949554963 949554963 645922940 178470672 704986644 704986644 704839522 704839522 680315973 554605472 568509328 568509328 306645031 799565826 1016873120 1016873120 519277964 448597216 462764772 525810366 525810366 362554756 23138832 236317600 236317600 217426032 50805024 50805024 27431104 24456096 5470816 28695648 43387936 144345013 988673441 988673441 946129287 370502004 162530148 1005587380 1005587380 559364481 915538181 915538181 145820481 145820481 63703184 63703184 69503136 69503136 83960632 100053712 174459228 341563530 341563530 229919512 293124046 357902246 357902246 374639796 511705182 1050688782 1050688782 430907603 350610386 287378048 172810420 184852590 499528802 499528802 490674440 535234258 535234258 144794534 409506200 409506200 404276628 477989414 477989414 409798440 207218316 339943440 373428378 373428378 733350132 733350132 254295733 239489584 247549968 636969932 636969932 568306689 681603377 681603377 87049744 755311205 755311205 940609692 940609692 556826642 565591056 565591056 326431170 424408354 424408354 314622166 314622166 280567898 280567898 834889634 834889634 951583815 951583815 362077762 362077762 173171420 139201668 223117664 375161254 375161254 344577392 616532184 871435683 871435683 594823376 594823376 103040186 910164114 910164114 855773235 855773235 824970531 1008463669 1008463669 638194713 504141057 891125611 891125611 988741241 988741241 302682336 789484445 789484445 481952512 481952512 378541436 948610300 948610300 939770364 822529113 822529113 632179931 1031957833 1031957833 715907010 828640260 1015302567 1015302567 311691858 558548216 984802545 984802545 914622555 713421938 214777356 214777356 807695492 853613632 853613632 813075776 813075776 411781953 411781953 304122994 595749488 595749488 671537157 671537157 816602976 816602976 949519488 1031084416 1031084416 541571200 541571200 567882040 656934201 656934201 571049547 916013337 916013337 855747104 489463931 941959429 941959429 797445495 202203715 202203715 780526637 780526637 646303316 76088416 76088416 26021440 142739776 142739776 82236620 101353608 135170280 135170280 102575640 240602168 240602168 222368852 144770880 714924721 714924721 64302196 847666723 847666723 484185618 484185618 637586598 835729068 835729068 1030660456 1030660456 828510605 828510605 649849289 649849289 752358912 752358912 681387157 301210398 522234738 687805184 687805184 683024321 341189577 237373974 275097684 809885968 809885968 824987682 824987682 737154325 193364033 861032692 871465954 871465954 1041542052 1041542052 583424194 583424194 706204362 706204362 588309010 549268352 708178871 708178871 631691625 614811634 199180128 199180128 155246656 163651812 163651812 9437760 21004672 163661184 163661184 61119862 453924790 466223268 466223268 997707034 997707034 288067648 736397650 736397650 686368197 800617764 800617764 708150232 593880049 179097560 179097560 312836441 312836441 293988450 293988450 557653267 851394387 851394387 891035240 891035240 836635205 819169867 819169867 219318316 17875488 222774276 222774276 785191573 785191573 637857552 605366552 605366552 441191954 246157140 475714432 509759952 1002566792 1002566792 906150015 792883422 792883422 673993049 384032113 826454027 826454027 458005794 891552838 891552838 744934427 882379393 882379393 851053616 579380644 579380644 362284936 920155144 1053666709 1053666709 542378625 911891099 911891099 873464968 873464968 567544545 221418493 693290528 702206849 945836642 945836642 325132722 65077314 879362314 879362314 828921222 836841585 836841585 344459568 244262028 172635516 494851918 991580272 991580272 948661783 948661783 841747731 674783668 199865300 183723508 21252736 83921952 94125928 94125928 92077608 25507904 31560480 31560480 126054752 126054752 104049744 120583280 120583280 105955992 93969960 83168232 20347296 69459968 78638144 78638144 22611136 24260384 24260384 99745922 700527808 700527808 688526373 1015301135 1015301135 364716552 296488290 278234978 274466434 1066042706 1066042706 433160803 433160803 207392078 207392078 334534335 782373213 782373213 620258065 669197131 917690922 917690922 893206436 438101707 570873104 587241489 688129347 688129347 589349547 941146243 995132211 995132211 810680584 911325031 911325031 527168958 945829246 945829246 839554379 839554379 327290252 385753050 471679297 745097108 745097108 641213581 641213581 546798853 927523125 927523125 699190629 941771041 941771041 775038602 775038602 616563294 386142384 423794828 457326676 457326676 41951312 41951312 68426304 68426304 11804232 11275584 302456848 302456848 302055440 302055440 436462114 457312648 522590526 522590526 367405920 367405920 371511366 484093961 484093961 614331458 882628045 1010753295 1010753295 943080456 809501760 818414787 836642962 836642962 546979850 897938432 897938432 880926795 676791912 889468328 903941547 903941547 978259164 978259164 832516791 429003619 877993501 877993501 542443221 417921331 411185294 411185294 381089810 149820926 259019570 395445816 471861008 488391484 496283368 496283368 438054610 438054610 522980670 522980670 479536418 479536418 385112984 101608560 101608560 47113424 135292176 135292176 179907664 179907664 68044804 226645132 371186336 433135630 433135630 421906200 455476190 455476190 397281050 550903659 784892013 784892013 485546688 485546688 558671233 577051856 577051856 537396225 76431944 553555584 553555584 630399616 630399616 545276609 551686592 551686592 25198752 456131880 456131880 857986336 857986336 988895657 988895657 275693893 276876496 311427666 311427666 131072760 131072760 91308416 337128841 610585899 704857929 704857929 1011739791 1011739791 1072305663 1072305663 638229117 638229117 389172193 971027216 971027216 695615184 562261024 293687202 293687202 53613360 258862836 436670464 436670464 268451222 276839894 276839894 260146318 92796968 92796968 151804620 537982112 628402992 628402992 90819377 111597912 354827688 354827688 82677704 82677704 83652040 83652040 72418368 81822216 81822216 386991403 386991403 420581092 809585729 809585729 262958719 729987174 729987174 860340707 860340707 662744048 943881215 943881215 838548260 96760704 96760704 557040328 557040328 552616305 346479075 346479075 300353867 822379837 822379837 791169059 515051838 1021601869 1055130607 1055130607 326539318 390791520 683692387 683692387 294662592 294662592 922096263 922096263 1045301252 1045301252 970746389 970746389 757692559 826298399 925492539 925492539 808594708 808594708 526669952 764638434 788218876 788218876 1045386421 1045386421 1026556719 1061684443 1061684443 1025773577 1025773577 827328367 560597679 617487561 617487561 553194497 729232058 729232058 277574146 277574146 54526736 54526736 43518384 595015681 725874912 725874912 671537157 973209620 973209620 551816278 575145296 575145296 851450900 851450900 462837926 926027316 926027316 865213838 865213838 333701174 338756640 423220230 423220230 269116516 180281172 180281172 181406352 827392760 827392760 730882128 730882128 145920000 145920000 208706360 208706360 177259092 193682884 193682884 122504944 429612884 429612884 510654456 510654456 368252406 137195272 336697192 336697192 391787112 391787112 237737616 208790412 168813960 139403800 76832256 278920770 479476750 481931084 481931084 898428624 898428624 471446577 49548240 403098496 444995670 444995670 277349442 277349442 511873028 531550742 531550742 347396408 361109610 361908482 361908482 10535232 141574849 681623877 681623877 681623877 708652060 776938949 934104081 934104081 889745587 882635047 1024030108 1024030108 641863687 152705357 1049274830 1049274830 854772127 785369983 624508624 624508624 622405161 412341834 717235028 717235028 355619424 513880306 528691326 528691326 490360908 454222376 454222376 288022820 93337540 411612964 411612964 407508102 212984002 204346632 165345696 165345696 143791212 138100706 464694775 833989345 1005416339 1005416339 975504625 504141341 377875748 666502484 666502484 713575008 726362032 726362032 525043840 525043840 256112002 27492352 35981136 314577362 316801234 379617674 379617674 600754393 600754393 866200595 866200595 808626466 825629475 825629475 808491809 658215992 388185752 606144811 824939929 824939929 830563360 830563360 623436048 226180712 226180712 162931516 110863176 136001384 196281104 196281104 4581504 30144512 96891136 96891136 87650280 220761696 226412876 226412876 224618852 136687968 136687968 120408348 115028568 102954944 102954944 46662800 46662800 14680512 44138752 44240912 44240912 31589152 46866848 46866848 10828184 70203464 72105352 81939544 127324440 127324440 161868480 161868480 26215008 636887520 711451263 826417881 826417881 414913256 495852654 495852654 84153414 72665736 4719744 4719744 541069513 696652444 696652444 592845489 391133733 391133733 440402070 840208672 859233075 859233075 541065345 831734282 831734282 629403753 604188681 908390411 908390411 628162760 548536609 253201616 232519404 118753848 673202368 673202368 814047810 839909907 839909907 645519160 645519160 609407625 606002697 606002697 473410825 69744398 523027388 523027388 868113991 868113991 1013449852 1013449852 967709648 552211905 552211905 269490075 465601250 977933700 977933700 875071498 875071498 424217658 510037000 510037000 317380050 341087704 387069820 387069820 355108048 372245282 372245282 270582018 274776522 336204482 377413530 473357468 473357468 472816008 291985290 286530560 376932145 894434475 894434475 883234983 791785082 227877384 227877384 823479887 1016083318 1016083318 668514378 982524102 982524102 968361266 968361266 209715276 395471978 484851790 905708339 905708339 916478888 916478888 442976678 435370474 435370474 414412806 145661250 296834658 346406720 346406720 346692096 346692096 76020968 81836992 99927520 99927520 78793536 78793536 71882144 1042860300 1042860300 206213560 253419274 1039532796 1039532796 940817890 940817890 589373998 1043333919 1043333919 1001329183 1043791978 1043791978 400291578 400291578 446297654 446367446 521860702 521860702 223422092 482149966 482149966 92801896 178470672 178470672 704986644 704986644 704839522 821610435 821610435 554605472 568509328 568509328 349985682 799565826 1016873120 1016873120 519277964 263786364 462764772 525810366 525810366 407577862 479285250 491905702 491905702 424708706 349514378 287733154 300488800 300488800 44615824 104158776 104158776 87820872 431566672 431566672 168053856 168053856 162530148 1005587380 1005587380 100925520 75761736 130811048 130811048 25201424 264274308 264274308 126435424 236591980 236591980 339482907 782304605 807149571 807149571 763641660 293124046 946809619 946809619 881113313 1057835176 1057835176 1050688782 430907603 350610386 287378048 279587810 287583666 287583666 111208536 490674440 905781557 905781557 237184038 692135973 692135973 797805752 797805752 662790156 677480847 833168739 833168739 516160072 962603059 1025507828 1025507828 486150602 542934862 542934862 636969932 636969932 723236992 723236992 38012321 87049744 87049744 39523000 37346048 4194048 16909440 52438072 114440266 326431170 424408354 424408354 314622166 314622166 280567898 280567898 834889634 834889634 290456226 269484194 268435458 8413186 122944 122880 98304 0 601107281 601107281 616532184 871435683 871435683 670815384 670815384 292587963 910164114 910164114 642158603 873608091 873608091 809634203 809634203 637008081 680341844 891125611 891125611 599756459 575377976 302682336 302682336 125548524 481952512 481952512 409997920 948610300 948610300 438748732 438748732 1042046820 1042046820 453513039 525789680 715907010 715907010 262675621 151268488 225264812 558548216 984802545 984802545 713421938 713421938 515904030 825776544 825776544 853613632 853613632 841370499 813075776 276519111 268834816 326461618 326461618 954521410 954521410 946789767 816602976 816602976 1019747718 1031084416 1031084416 970346187 970346187 567882040 656934201 656934201 571049547 916013337 916013337 855747104 352659912 352659912 125515706 133354488 133354488 105070944 105070944 694757285 694757285 105253461 167794056 611823257 611823257 550175000 222545328 738498700 738498700 638238804 638238804 110140508 110140508 55102240 538501396 538501396 575424192 595914357 595914357 223723712 223723712 164367588 164367588 136643396 142919748 228360712 228360712 828510605 828510605 751915120 751915120 752358912 752358912 681387157 672567433 522234738 687805184 687805184 683024321 341189577 237373974 275097684 809885968 809885968 824987682 824987682 673321221 52564272 820286848 820286848 548421655 1041542052 1041542052 583424194 583424194 706204362 706204362 588309010 549268352 708178871 708178871 884998190 884998190 756841565 756841565 559033606 616638669 616638669 699997025 699997025 546710880 163661184 144567364 600771812 600771812 428246455 250171365 432407986 442519876 442519876 270790914 936638238 936638238 708150232 708150232 593880049 179097560 179097560 619285800 619285800 317760 65091840 65091840 26091544 126753928 432446336 432446336 98580622 93713000 93713000 76909160 76909160 18130796 230551404 230551404 637857552 637857552 137720905 441191954 441191954 246157140 418291420 509759952 1002566792 1002566792 906150015 792883422 792883422 673993049 559957280 559957280 480272738 818217164 818217164 274745761 151003680 151003680 395017020 395017020 579380644 673918933 831267728 920155144 1053884686 1053884686 745612045 547899713 547899713 371494587 567544545 567544545 479560012 693290528 702206849 945836642 945836642 483987096 483987096 879362314 879362314 828921222 836841585 942670137 942670137 394797004 175525292 768395027 991580272 991580272 948661783 948661783 909437147 909437147 657655164 759438661 900259977 900259977 824462976 217621984 8857696 44171280 44171280 27589408 113304424 113304424 104049744 120583280 120583280 105955992 88109320 86557992 85193256 85193256 78638144 78638144 73694880 24260384 24260384 537335776 537335776 67946220 566608450 1015301135 1015301135 621544057 616903800 783431369 783431369 1066042706 1066042706 806385307 433160803 952259333 952259333 718324575 782373213 782373213 643327896 116247385 133445512 893206436 893206436 578686388 676103699 855937043 855937043 688129347 757240853 757240853 1027129345 1027129345 1010304783 755090562 755090562 527168958 981618774 981618774 973213719 973213719 302120965 379793754 471679297 471679297 73474888 641213581 641213581 546798853 546798853 507679278 507679278 378557812 975446302 975446302 243740128 243740128 201775116 201775116 50518200 146954244 146954244 139445448 71428288 5335688 68691544 114633432 130359320 308088834 461250096 461250096 527224790 527224790 522590526 522590526 367405920 367405920 371511366 484093961 484093961 614331458 882628045 1010753295 1010753295 943080456 815533635 818414787 818414787 546979850 550226114 897938432 897938432 886309160 891358115 1038364139 1038364139 1030496751 520431678 520431678 499458110 499196142 508569940 508569940 82116766 81938696 308370400 308370400 100311730 87822120 34079760 276856832 471861008 534880498 534880498 519780274 519780274 479725194 522980670 522980670 479536418 479536418 385112984 326206258 410568582 410568582 406882048 135292176 411383140 411383140 516016292 516016292 496669326 457965684 457965684 421906200 421906200 104392998 0 4194304 627089511 627089511 485546688 485546688 558671233 577051856 577051856 537396225 72751625 553555584 553555584 548231168 541662720 545276609 551686592 551686592 134402436 98799872 283408680 283408680 413325574 945320962 945320962 275693893 315156994 315156994 311427666 295699226 163657392 218764332 230787290 893444658 893444658 565896611 370306697 109030628 228847980 301996112 489023790 773932534 773932534 553530052 553530052 562261024 562261024 270121808 53712304 53613360 365116478 365116478 344184896 344184896 281686488 180948452 438682279 626342801 626342801 482536775 537982112 537982112 554648241 603085592 928389209 928389209 847122945 569561354 676336781 1030142443 1030142443 961528359 562203040 562203040 543493952 386991403 328016613 809585729 809585729 262958719 729987174 729987174 860340707 860340707 662744048 943881215 943881215 838548260 346150441 858133072 858133072 806361491 655828812 655828812 957588519 957588519 822379837 992000008 992000008 696839481 1021601869 1021601869 746949071 308464400 91784290 143184326 306578472 336670920 425146010 922096263 922096263 1045301252 1045301252 717885661 782438660 782438660 708972693 473965700 473965700 187570842 374742324 374742324 764638434 764638434 547969586 387648630 474489630 474489630 1061684443 1061684443 923176536 1001441037 1001441037 1012936217 1012936217 251352791 220614128 729232058 729232058 270631786 270631786 64219504 57997952 43518384 595015681 650467529 650467529 671537157 973209620 973209620 551816278 606129480 696795217 696795217 927239621 1009304847 1009304847 981813413 981813413 827391480 476826144 338756640 423220230 582361168 582361168 578992209 621039737 621039737 181406352 247076700 730882128 731309896 731309896 840041128 840041128 843789459 843789459 571188360 130258210 48234960 352113272 352113272 510654456 510654456 368252406 94749714 277545504 310428200 391787112 391787112 125757832 168813960 168813960 167874584 11969794 278920770 479476750 536945550 537474446 537474446 717974890 871532583 948946717 948946717 444995670 592512250 668127993 668127993 864059930 864059930 531550742 347396408 420213798 582943283 582943283 948438087 948438087 714727954 681623877 681623877 708652060 776938949 776938949 889745587 889745587 882635047 556503662 5767238 1064960 210095138 1067258350 1067258350 939073531 902278118 902278118 624508624 622405161 486716834 807587854 807587854 355619424 489816912 489816912 37474736 134747036 326317996 326317996 288022820 93337540 411612964 411612964 407508102 270931266 270931266 269236352 274798912 274798912 138100706 246563657 723146679 899340927 899340927 966906658 966906658 377875748 67446792 763778224 763778224 63979717 517526848 517526848 24553374 26907008 33081312 35981136 35981136 150481860 150481860 79503680 600754393 600754393 866200595 866200595 808626466 825629475 825629475 808491809 658215992 388185752 660799488 824939929 824939929 830563360 830563360 623436048 117597016 133286672 133286672 62241088 62241088 50425312 100140224 100140224 76176840 88544672 88544672 201382792 220761696 226412876 226412876 233502792 233502792 139236740 37941392 37941392 20300722 306448530 306448530 46662800 275569539 807478083 851472979 851472979 289518130 60491904 583870098 583870098 900277611 900277611 815994123 655360569 655360569 553652505 265421561 265421561 676495584 711451263 826417881 826417881 906527396 906527396 495852654 432631726 432631726 289670222 4719744 306701639 944655293 944655293 926099749 926099749 1003317820 1003317820 840208672 859233075 859233075 696868950 855647408 855647408 629403753 604188681 924861409 924861409 31580640 555443921 555443921 232519404 174241105 377448006 1010905291 1010905291 839909907 839909907 645519160 645519160 609407625 606002697 749920356 983889005 983889005 875451735 676759214 82763208 289542306 973122608 973122608 578920597 578920597 552211905 406867720 573596032 746635353 1055424663 1055424663 875071498 721732000 721732000 510037000 330120688 457646826 823984691 823984691 329469426 625001017 625001017 93865962 238076756 336204482 702039221 702039221 473357468 694761057 694761057 952520416 376932145 894434475 894434475 1017184622 1017184622 558449307 205343527 666700376 931491384 931491384 668514378 982524102 982524102 968361266 968361266 209715276 209715276 60333746 905708339 905708339 916478888 916478888 270824050 550914560 550914560 548584000 548584000 537504792 539349400 539349400 548352248 866157610 887885176 887885176 891457603 891457603 656023568 656023568 305271296 1042860300 1042860300 206213560 838893600 838893600 454302908 940817890 940817890 287049089 293942432 293942432 158409636 1043791978 1043791978 400291578 400291578 77304818 56885696 133442456 133442456 223422092 482149966 482149966 692027397 692027397 537060422 537060422 941054738 941054738 862586976 862586976 825235571 825235571 325736192 349985682 349985682 294207350 410598136 420293228 482092878 482092878 68224536 207761540 407577862 479285250 491905702 491905702 424708706 349514378 287733154 300488800 300488800 44615824 104158776 104158776 219171981 653839305 963995009 963995009 471182436 245971500 697515734 697515734 212996978 876743061 876743061 575702530 152062473 264274308 557433697 557433697 865154027 865154027 873595010 873595010 807149571 807149571 763641660 568034925 946809619 946809619 881113313 1057835176 1057835176 601709489 501680263 596066112 596066112 557714849 557714849 365760763 1014058673 1014058673 905781557 905781557 237184038 692135973 692135973 797805752 797805752 662790156 677480847 833168739 1000176722 1000176722 962603059 1025507828 1037435928 1037435928 806842859 806842859 620807181 620807181 723236992 723236992 369289255 369289255 305559064 305559064 34968858 36220688 36220688 52438072 90251688 103234856 270626824 270626824 173224850 39581332 18470064 75023520 606213699 606213699 347604810 343805386 836436937 836436937 700264293 791686017 800417457 800417457 653804833 749673977 749673977 171227717 635172280 670815384 670815384 292587963 574669106 642158603 642158603 873608091 873608091 809634203 809634203 637008081 680341844 680341844 355968954 606414873 606414873 306264400 646056075 646056075 162009856 80888844 409997920 411047270 653181849 653181849 880154863 1042046820 1051331920 1051331920 1007032335 722394165 835268921 835268921 682164465 1063872585 1063872585 1019678934 1019678934 534131869 463742776 837879255 837879255 825776544 746924109 841370499 974801075 974801075 858183987 846499254 839011333 839011333 954521410 954521410 946789767 811388547 811388547 1019747718 1019747718 685887246 970346187 970346187 154048507 51644976 128270898 338788680 338788680 319057776 197839908 525346992 525346992 517157598 143642266 50643056 58738752 58738752 694757285 694757285 726706448 726706448 611823257 611823257 550175000 222545328 738498700 738498700 638238804 672188036 672188036 760135717 760135717 538501396 742418041 742418041 731735076 954057955 954057955 365446274 365446274 756908134 945404968 945404968 831472292 831472292 763947622 51646464 751915120 751915120 617779856 617779856 672567433 672567433 167847644 686306152 686306152 888487072 997733957 997733957 795577267 755187894 359662506 883001489 883001489 673321221 174589444 771784957 771784957 52947456 460607755 546358081 602399488 602399488 920824106 920824106 292540431 251676092 251676092 477107764 884998190 884998190 756841565 756841565 559033606 616638669 616638669 699997025 699997025 546710880 57425909 144567364 600771812 600771812 612522928 612522928 432407986 639173769 639173769 642918761 936638238 936638238 658124977 619389776 619389776 588462369 656421960 656421960 619285800 275973858 275973858 633704283 938220643 938220643 630725691 474020207 543632001 1029016103 1029016103 679760553 76909160 546423212 546423212 540330753 892523307 925982835 925982835 398532681 793265381 793265381 540520942 574768036 960797569 960797569 715038865 908376398 908376398 742779021 742779021 559957280 829106570 885196288 885196288 540664521 889466664 889466664 822881029 984981778 984981778 673918933 831267728 831267728 1053884686 1053884686 745612045 385966696 699466055 699466055 25239648 479560012 479560012 403996996 403996996 280283970 454901522 483987096 483987096 215066018 215066018 621805916 732955509 942670137 942670137 681579563 681579563 768395027 815325518 816964419 816964419 212436495 909437147 909437147 963596297 963596297 1037586345 1037586345 824462976 219501056 87235232 87235232 44171280 27589408 102120272 102120272 18428480 85832000 85832000 120639640 120639640 86557992 91025184 91025184 6076808 73694880 73694880 29335456 29335456 537335776 537335776 29366304 696455204 696499237 696499237 640739613 640739613 783431369 783431369 733689717 806385307 806385307 206969484 952259333 952259333 718324575 718324575 643327896 848920457 848920457 654156544 654156544 554904449 578686388 676103699 855937043 855937043 269097023 757240853 757240853 1027129345 1027129345 1010304783 755090562 755090562 513950034 981618774 981618774 973213719 974750093 974750093 36386566 136324116 423022940 1030376854 1030376854 483032850 483032850 436861494 507679278 507679278 378557812 975446302 975446302 274737512 335882336 335882336 279058848 339870120 339870120 146954244 139445448 71428288 5335688 72369296 114633432 131762696 308088834 461250096 461250096 527224790 527224790 440557320 202375728 202375728 210837936 210837936 16520396 14234432 20040032 92943616 92943616 834893520 834893520 815533635 353974280 885971155 885971155 550226114 550226114 80064705 886309160 891358115 1038364139 1038364139 1030496751 732761287 732761287 721944625 604690076 707631824 707631824 291737910 470672746 470672746 347103512 488743546 488743546 362824316 276856832 276856832 534880498 534880498 519780274 519780274 479725194 501818862 501818862 89323304 89323304 105329378 326206258 410568582 410568582 406882048 313314642 411383140 411383140 516016292 516016292 496669326 457965684 457965684 97624148 22994592 322721826 322721826 26532962 286287616 294357026 294357026 273233248 24021472 539980224 539980224 539628801 13200193 9343936 9343936 2757888 2232576 15652288 15652288 134402436 134402436 96469224 339874040 373293210 696829151 696829151 940161616 940161616 785011799 785011799 362609600 362609600 180780876 703009354 895200185 895200185 893444658 565896611 512005207 512005207 228847980 301996112 489023790 773932534 773932534 982157461 982157461 138636499 5674112 181309240 181309240 165941224 365116478 365116478 344184896 344184896 524320876 524320876 438682279 626342801 626342801 482536775 575231192 575231192 554648241 603085592 928389209 928389209 847122945 569561354 676336781 1030142443 1030142443 961528359 562203040 562203040 810626272 810626272 181505564 239092244 407127680 407127680 855726368 855726368 690675975 253794617 826862982 826862982 717712527 591825197 346150441 858133072 858133072 971075592 971075592 655828812 957588519 957588519 353069128 992000008 992000008 936167364 818806617 818806617 308464400 818205602 896171460 943351433 943351433 336670920 436491264 436491264 469577718 469577718 265171722 172667912 953377820 1044959682 1044959682 942719750 812181125 807182350 807182350 374742324 374582066 538875314 598358369 981911645 981911645 860360883 647010317 647010317 923176536 1001441037 1001441037 1012936217 1015606039 1015606039 587229208 582480478 831036790 831036790 64219504 73423360 73423360 107144424 199020276 679018656 679018656 342309258 342309258 230943182 419702926 606129480 696795217 696795217 927239621 1009304847 1009304847 981813413 981813413 827391480 822182372 222023728 222023728 582361168 582361168 578992209 621039737 621039737 785125443 785125443 713980672 731309896 933564759 1037224570 1069733182 1069733182 844682046 844682046 399900248 399900248 109940026 109940026 477414798 477414798 103814530 376051130 376051130 360370730 310428200 187245876 454600964 470777868 470777868 167874584 5025936 137100800 203432200 536945550 537474446 537474446 717974890 871532583 948946717 948946717 296087569 592512250 668127993 668127993 864059930 864059930 120128240 860309905 860309905 630016643 630016643 948438087 948438087 891045482 805622857 601381602 1046890500 1046890500 1028494066 1028494066 689489445 689489445 29991939 9036864 420967652 450219822 1067258350 1067258350 939073531 902278118 902278118 102699776 341540936 486716834 807587854 807587854 92279339 489816912 489816912 37474736 37474736 74523528 74523528 69399168 18884384 8422400 8422400 8388672 270931266 270931266 269236352 274798912 274798912 407974144 407974144 723146679 899340927 899340927 966906658 966906658 9486912 67446792 763778224 763778224 63979717 19440672 284932130 284932130 26907008 33081312 278550146 278550146 153186016 150481860 79503680 95238464 95238464 93915912 95296872 622990200 756123185 756123185 236847384 236847384 537914624 660799488 660799488 85131416 85131416 111691728 117597016 117597016 81925936 69746944 69746944 62018368 109101144 109101144 100140224 76176840 31900712 27972960 201382792 201382792 161087620 161087620 233502792 233502792 206086624 74985224 92903848 92903848 306448530 306448530 43052034 275569539 807478083 851472979 851472979 289518130 60491904 583870098 583870098 900277611 900277611 815994123 655360569 655360569 553652505 265421561 265421561 676495584 676495584 705741333 1023656026 1023656026 906527396 832831862 780146799 747962436 747962436 740582145 740582145 944655293 944655293 926099749 926099749 1003317820 1003317820 763229349 934354121 956770845 956770845 855647408 855647408 918165338 1064359501 1064359501 924861409 156406726 555443921 618254394 618254394 764493344 764493344 1010905291 1010905291 951259594 484667593 352563990 574755507 574755507 467853474 749920356 983889005 983889005 875451735 676759214 48668496 48668496 47062224 442102859 578920597 578920597 406867720 406867720 573596032 746635353 1055424663 1055424663 912938458 912938458 767661338 530728168 330120688 457646826 823984691 823984691 329469426 625001017 625001017 93865962 93865962 38438560 702039221 702039221 25301088 694761057 694761057 952520416 13061456 40629648 40629648 1017184622 1017184622 984703100 984703100 729957212 759978381 759978381 422650662 422650662 317719506 502017990 659558856 659558856 470783971 291185996 128967000 128967000 895634355 895634355 270824050 550914560 550914560 548584000 548584000 537504792 649039969 649039969 548352248 866157610 887885176 887885176 891457603 891457603 656023568 656023568 305271296 308330898 325490720 325490720 838893600 838893600 424178176 424178176 0 0 310917891 310917891 302254098 844236731 844236731 388898106 666051639 666051639 539763986 886049288 886049288 220269448 99943656 99943656 759343980 759343980 550163649 537060422 985665808 985665808 954339783 862586976 825235571 825235571 62917810 71303304 71303304 98178792 98178792 420293228 482092878 482092878 342504450 342504450 339738762 276963392 268644354 20979872 6361472 23477248 23477248 160731872 160731872 62283328 150112338 254153218 254153218 653839305 963995009 963995009 471182436 309592722 697515734 780533760 780533760 876743061 876743061 606603400 152062473 95978529 557433697 557433697 865154027 865154027 873595010 873595010 156120228 660802660 660802660 568034925 568034925 798565588 798565588 771860592 601709489 601709489 501680263 596066112 596066112 816317440 816317440 365760763 1014058673 1014058673 346193366 248302812 459912012 468928534 637592070 637592070 38673552 50286976 53236082 277797954 1000176722 1000176722 743122761 743122761 1037435928 1037435928 806842859 806842859 620807181 715747856 715747856 991135045 991135045 369289255 305559064 305559064 34968858 38396048 38396048 51053328 51053328 67249248 406361280 406361280 452100189 716214423 842711597 842711597 853034409 867173235 867173235 343805386 836436937 836436937 700264293 791686017 800417457 800417457 1010216374 1010216374 874311359 418013581 68606472 110516808 110516808 105470218 306893970 306893970 64538352 64538352 123218458 123218458 85549506 505938318 505938318 402251920 402251920 606414873 606414873 571081712 656070201 704922667 704922667 627481379 226418604 411047270 653181849 653181849 880154863 880154863 1051331920 1051331920 1007032335 722394165 835268921 835268921 682164465 1063872585 1063872585 1019678934 1019678934 534131869 463742776 837879255 837879255 819472564 746924109 553405760 974801075 986995063 986995063 846499254 839011333 868372662 1041891735 1041891735 929564091 755109933 952764137 952764137 692650662 676425381 496692288 781767239 781767239 663017552 663017552 773184037 773184037 704827413 553685044 525346992 525346992 517157598 269253182 249286700 512467026 512467026 244746240 244746240 726706448 726706448 599350197 548260985 140637641 59503716 141265940 145296640 145296640 672188036 672188036 760135717 760135717 692169760 742418041 742418041 731735076 954057955 954057955 365446274 365446274 756908134 945404968 945404968 831472292 831472292 763947622 597942693 210949857 579779274 617779856 779553410 894542104 1012400480 1012400480 681378177 681378177 888487072 997733957 997733957 795577267 755187894 637872257 883001489 883001489 369388656 174589444 771784957 771784957 738452033 741359884 741359884 602399488 602399488 920824106 920824106 942408964 942408964 1005009147 1005009147 555972039 511759170 515386626 515386626 176057730 139329156 83494796 135784004 135784004 547445312 547445312 146332481 541464912 585105873 612522928 612522928 226462440 639173769 639173769 642918761 642918761 658124977 658124977 619389776 619389776 588462369 656421960 656421960 286256585 275973858 275973858 633704283 938220643 938220643 782306785 782306785 543632001 1029016103 1029016103 679760553 89471532 860031660 910428315 910428315 892523307 925982835 925982835 883561008 883561008 793265381 1035771138 1035771138 881105790 715038865 715038865 908376398 908376398 742779021 742779021 371862785 829106570 885196288 885196288 542639438 889466664 889466664 822881029 984981778 984981778 574013522 574013522 545327218 446437204 479300268 479300268 411095044 699466055 772863837 772863837 555671073 467321905 952288354 952288354 865882599 678510721 912396573 912396573 889372984 956301570 994197916 994197916 891474219 794857622 681579563 681579563 420219180 420219180 413705228 211965276 211965276 562692501 562692501 963596297 963596297 1037586345 1037586345 819378080 219501056 87235232 87235232 84485248 33131944 31954296 107028888 107028888 130881048 130881048 120639640 120639640 55268872 91025184 91025184 153922593 764187009 764187009 552592641 686818245 686818245 675547269 675547269 696455204 696499237 739445202 806674439 806674439 706740745 706740745 253680740 244893276 206969484 401790904 724174003 1053055172 1053055172 895096491 895096491 848920457 848920457 654156544 654156544 509210290 805457930 805457930 1025536039 1025536039 404773121 914178488 914178488 809236227 870679810 870679810 620506609 606144592 379923201 811791489 811791489 274731421 974750093 974750093 89653433 885822576 885822576 1030376854 1030376854 483032850 483032850 355018026 355008512 268730378 67422216 67117312 69280776 338238466 338238466 335882336 279058848 339870120 339870120 75590976 107291088 107291088 113895440 113895440 73191048 131762696 131762696 84068928 254283852 254283852 303708066 303708066 219656728 292877166 292877166 332767918 493719648 493719648 477603174 419238724 222201668 574864833 574864833 382130808 382130808 885971155 885971155 604589249 807718029 942000455 942000455 671428008 688201765 692134053 692134053 732761287 732761287 721944625 604690076 707631824 707631824 291737910 470672746 470672746 524893254 524893254 488743546 388904616 252367684 530231900 530231900 309008158 375002870 375002870 527557566 527557566 280114326 113774042 71709008 34079504 170517008 170517008 313092096 313314642 313314642 135828050 9257504 362522828 415445190 415445190 370759842 256688254 361700082 409194336 409194336 325344930 277560834 287862144 300908962 301199360 301199360 553410817 553410817 539980224 596618888 663749241 663749241 661496697 1004890511 1004890511 550243521 757255250 757255250 501468590 501468590 450906376 450906376 696829151 696829151 940161616 940161616 785011799 785011799 362609600 362609600 228767868 703009354 895200185 895200185 867837873 867837873 614586437 567526633 567526633 397250744 681820633 681820633 570898564 982157461 982157461 567283360 567283360 328591408 181309240 165941224 234620332 445840540 445840540 171985920 524320876 524320876 184634582 171256596 172038280 172038280 575231192 575231192 97713841 95425824 95425824 345768048 345768048 37361424 303336544 303336544 145123996 242744220 242744220 310675769 810626272 810626272 405953957 683892365 683892365 407127680 855726368 855726368 739005448 739005448 826862982 826862982 717712527 614644048 637921305 637921305 50405424 971075592 971075592 417382854 1044398367 1044398367 640624221 640624221 936167364 936167364 430391992 745835366 745835366 818205602 896171460 943351433 943351433 4268544 436491264 436491264 469577718 647290924 647290924 571867780 953377820 1044959682 1044959682 942719750 812181125 807182350 807182350 876732555 876732555 897271809 897271809 981911645 981911645 860360883 647010317 647010317 433605174 940052486 940052486 402785287 1015606039 1015606039 587229208 582480478 831036790 831036790 118571968 118571968 80758112 107144424 107144424 679018656 706786852 706786852 965869824 965869824 403252230 556533610 859672595 859672595 218419367 218419367 457459731 616594739 771734626 1027735712 1027735712 222023728 222023728 338611584 738466180 738466180 610406793 503976281 785125443 785125443 713980672 1041055268 1041055268 1037224570 1069733182 1069733182 844682046 844682046 399900248 399900248 81709202 37931176 80745920 82578888 279054728 376051130 376051130 360370730 301989906 270844416 454600964 470777868 470777868 106754560 5025936 137100800 137100800 135704576 10849792 19844624 56515248 56515248 163838932 163838932 25949280 138437924 414896140 414896140 76750994 120128240 431035193 860309905 860309905 630016643 634161802 634161802 891045482 891045482 805622857 1018303311 1046890500 1046890500 1029722130 1029722130 253802389 386601262 1014509640 1014509640 420967652 450219822 450219822 398200698 296883042 531169973 662511913 662511913 992019515 992019515 942752016 942752016 873082885 155768322 634418950 752070817 752070817 635658305 620965929 113479953 561698504 614069604 614069604 87867776 225729192 251287199 1000226371 1000226371 914963249 466292672 407974144 606982 343982106 343982106 210290757 1006896214 1006896214 104405112 100033664 100033664 23290120 10832832 284932130 284932130 286237064 359587242 359587242 278550146 153186016 134951936 212470020 212470020 93269068 93207656 95296872 95296872 2887784 789504 789504 2960640 537914624 537914624 2896129 50398272 50398272 82846272 82846272 81925936 81925936 73800072 96394352 96394352 109101144 109101144 55969856 55969856 31330992 167123660 231867224 231867224 108270748 103058512 103058512 219068736 219068736 180464912 180720916 218296176 218296176 19997472 19988480 16786208 25479264 25479264 27558144 27558144 32241120 34852464 34852464 82400368 82400368 57807440 57807440 43127728 637739264 637739264 79892856 573595776 573595776 212865445 1023656026 1023656026 832831862 832831862 780146799 747962436 747962436 740582145 957417508 957417508 542614067 726765870 788998716 788998716 103155721 134349332 934354121 956770845 956770845 1034682792 1034682792 918165338 1064359501 1064359501 767953570 156406726 333196960 618254394 618254394 764493344 764493344 338825994 951259594 951259594 484667593 283301318 292553088 467853474 467853474 460984324 460984324 272125184 272125184 124513464 124513464 298769634 784411210 784411210 565182525 565182525 360263777 117994720 168282558 281331926 334402946 334402946 912938458 912938458 767661338 530728168 320567428 496154282 496154282 84024558 84024558 483528716 483528716 344982090 54526714 80217382 476983406 476983406 472371080 472371080 433930170 673395668 13061456 214898205 911931320 911931320 705385007 984703100 984703100 729957212 729957212 386228280 422650662 422650662 317719506 708601644 1028170597 1028170597 470783971 321298712 321298712 539146401 554991921 554991921 19751696 46531168 46531168 38611872 43656160 537662488 649039969 649039969 646553856 646553856 132267289 71172008 95605608 95605608 93607424 93607424 76717920 1051755007 1051755007 1009624559 1009624559 963035703 963035703 748083218 748083218 102536503 313263642 313263642 302254098 844236731 844236731 388898106 666051639 666051639 539763986 886049288 886049288 637739049 572597683 841821203 841821203 759343980 550163649 441094544 985665808 985665808 954339783 35782871 322962656 322962656 924108152 924108152 355897722 406470406 406470406 319687410 319687410 418656640 450954010 450954010 349311954 71828482 37814564 427958612 495858734 495858734 413986630 413986630 282938308 198199236 198199236 254153218 254153218 107744664 340787850 405412478 405412478 309592722 478360780 780533760 780533760 437257611 606603400 606603400 71566601 189825492 637624560 868820305 868820305 617286248 559890081 156120228 156120228 840040526 840040526 898638447 962661914 962661914 771860592 771860592 562118961 26233120 26233120 524352 8389632 816317440 816317440 129876819 436045186 436045186 823806157 823806157 459912012 754182083 754182083 763162657 763162657 546028140 715565322 715565322 842727804 1033582191 1033582191 262158099 673974464 676833285 683333445 683333445 37410576 715747856 715747856 991135045 991135045 398569936 595981777 877036674 893943224 893943224 638749744 577030545 541437704 522518538 522518538 468923482 468923482 716214423 842711597 842711597 853034409 867173235 867173235 549754880 549638337 228760673 392098904 392098904 333656412 516434826 1010216374 1010216374 874311359 418013581 44314368 43591248 2435328 105470218 306893970 306893970 64538352 64538352 86062906 357726016 357726016 31046890 125513380 402251920 402251920 364382058 310605536 571081712 656070201 704922667 704922667 627481379 226418604 226418604 257219874 507155534 517887534 525212862 525212862 319733900 716213888 716213888 705219733 705219733 717292672 910696581 944180447 944180447 196361560 1071448760 1071448760 650838779 481692136 481692136 472384782 295977140 973213733 986995063 986995063 697870147 755284072 868372662 1041891735 1041891735 929564091 755109933 952764137 952764137 760167597 496692288 980973072 980973072 781767239 663017552 663017552 773184037 773184037 704827413 553685044 485597185 1069160319 1069160319 861468657 772477472 512467026 672728132 749210516 749210516 200161496 726270124 726270124 585175501 585175501 203522440 707061776 707061776 152341044 152341044 38028436 152441376 152441376 692169760 692169760 207853865 671808560 671808560 1030134024 1030134024 10545472 337734560 366528234 366528234 92301922 224089677 597942693 597942693 210949857 587280040 964244265 964244265 894542104 1012400480 1012400480 681378177 681378177 681315909 808656479 843288718 843288718 637872257 637872257 634789899 634789899 80743592 25955424 700466305 700466305 738452033 741359884 741359884 301424896 495188642 495188642 170860562 942408964 942408964 1005009147 1005009147 555972039 445465232 445465232 405427458 1022398662 1022398662 409672841 8413184 8511552 547445312 547445312 146332481 135297604 78518596 137053508 144892288 144892288 175799464 175799464 198442240 238236444 238236444 136504880 100888696 100888696 80753536 80753536 77859144 123734096 123734096 97005960 71407056 112418712 119081568 782306785 782306785 615151648 615151648 180689588 100927570 343933002 860031660 910428315 1011359719 1011359719 754268079 754268079 883561008 883561008 397022074 1035771138 1035771138 881105790 658937676 637190312 456589420 222571296 222571296 216083272 216083272 296767599 761347945 761347945 542639438 748196226 748196226 733111141 733111141 403743893 499117764 499117764 618469466 618469466 446437204 593599048 593599048 327318257 772863837 772863837 555671073 836144180 952288354 952288354 949503335 678510721 912396573 912396573 889372984 956301570 994197916 994197916 945857414 945857414 405422120 405422120 808216650 808216650 858381313 858381313 394976379 352634234 275676584 344630496 542076384 542076384 26064289 72420264 72420264 92799040 92799040 84485248 33131944 31954296 107028888 107028888 130881048 130881048 73843456 101860664 101860664 71828616 69626912 153922593 764187009 764187009 552592641 686818245 686818245 675547269 675547269 550029317 9910848 739445202 806674439 806674439 639699867 343825047 253680740 450956829 693436831 693436831 724174003 1053055172 1053055172 895096491 895096491 638131211 638131211 281223899 201098732 865242711 983323251 983323251 1025536039 1025536039 404773121 914178488 914178488 809236227 599961467 12845129 1022258840 1022258840 379923201 68428042 682754306 973213719 973213719 742562228 742562228 885822576 885822576 622130259 523294817 805476495 805476495 738459661 738459661 890690091 956415263 956415263 811937314 811937314 539569330 78317832 78317832 82542848 82542848 75590976 107291088 107291088 113895440 113895440 61681248 61681248 49332224 29557120 549190817 625473377 625473377 303708066 728820492 742500921 742500921 739369485 546408736 763474178 827238959 827238959 526628172 526628172 878327263 878327263 908105264 908105264 893047673 782838016 986235225 986235225 942000455 851835264 547772432 548068609 1042287616 1042287616 8718545 75648864 88006440 788451976 788451976 628791645 628791645 559411615 559411615 524893254 395080588 395080588 456300279 530231900 530231900 823846691 823846691 420155522 527557566 527557566 417047980 376484944 376484944 39351442 459356722 459356722 271506690 283892820 283892820 406190688 406190688 517822466 517822466 374714880 260625928 152095820 361700082 409194336 409194336 325344930 342094474 342094474 300908962 301199360 301199360 553410817 553410817 15982208 596618888 1052058746 1052058746 661496697 1004890511 1004890511 550243521 757255250 757255250 501468590 501468590 450906376 450906376 142606342 142606342 94372200 57708544 57856944 64094880 64094880 228767868 228767868 529269110 529269110 741096749 867837873 867837873 614586437 567526633 567526633 397250744 681820633 681820633 170868678 307533392 549769328 567283360 567283360 328591408 61528880 39262336 343894234 445840540 445840540 476100112 476100112 337338972 443056139 536986269 536986269 344486987 343761859 602171344 609007728 900173376 900173376 860930739 440163147 530056830 530056830 304910456 149843344 149843344 77437568 310675769 310675769 391900960 405953957 683892365 683892365 883475787 883475787 713773579 739005448 739005448 550171280 155287790 308539794 958771940 958771940 677897401 882510413 882510413 474014252 726739589 1044398367 1044398367 640624221 875961099 875961099 755626155 948867727 948867727 745835366 618435853 1033856226 1033856226 750903501 407193603 134437960 369562632 369562632 647290924 647290924 571867780 705790556 705790556 638068244 244392152 244392152 238077832 332837473 876732555 876732555 897271809 897271809 464232590 535708680 535708680 318806630 433605174 433605174 303356274 278659139 813695312 813695312 478495313 204860172 244307282 388801538 388801538 314769754 118571968 80758112 102422149 102422149 88295280 706786852 706786852 965869824 965869824 623205966 669496229 859672595 859672595 568451553 545825685 939024502 939221917 939221917 1027735712 1027735712 520934424 520934424 791336359 791336359 738466180 944126055 944126055 592076816 556921828 556921828 1041055268 1041055268 997655573 980435480 436896651 523526680 523526680 458999578 274075168 89654432 37931176 80745920 82578888 279054728 279054728 305268226 305268226 301989906 270844416 270844416 35623048 106754560 106754560 2270976 2524160 3071232 9492160 9492160 19844624 56515248 56515248 126572290 397534074 397534074 138437924 414896140 414896140 316075418 138720444 431035193 657597286 1013566340 1013566340 634161802 634161802 393234007 674284293 674284293 1018303311 1018303311 404097028 1029722130 1029722130 253802389 755384872 1014509640 1014509640 349711975 349653514 430404368 824652294 824652294 671297541 662511913 662511913 992019515 992019515 942752016 942752016 873082885 155768322 786149764 786149764 752070817 635658305 620965929 113479953 561698504 614069604 614069604 230676104 471926954 471926954 1000226371 1000226371 914963249 466292672 515919868 515919868 449070550 449070550 417597894 1006896214 1006896214 174791685 807734359 916986309 916986309 891552006 510003422 251752412 286237064 359587242 359587242 286504074 343135150 343135150 279404140 738927657 738927657 757781805 757781805 84137257 708133641 708395293 725504817 725504817 570598417 124540936 124540936 120037036 137277540 420042898 420042898 248328068 445156302 445156302 96394352 142132868 234915360 276840910 276840910 121918304 357352994 357352994 231867224 231867224 108270748 103058512 103058512 219068736 219068736 180464912 180720916 218296176 379619010 379619010 309058674 309058674 813768771 813768771 811626595 271692210 17365107 588224882 588224882 888698483 936048379 936048379 668570851 578814073 637739264 637739264 211956620 784523528 784523528 972240929 972240929 707049580 1052819908 1052819908 695239402 695239402 222309137 723594016 957417508 957417508 740704703 371528201 788998716 788998716 640758280 605233433 585578961 585578961 46412033 1034682792 1034682792 503359684 503359684 449120348 444629040 251676734 352354334 560179320 560179320 218593441 178657620 335544330 813777222 813777222 587509511 587509511 957295414 1002104355 1002104355 674238582 495038594 264675452 125094324 180578616 447671748 447671748 784411210 784411210 556401618 556401618 607881545 607881545 552913857 655624761 655624761 625214013 491831982 491831982 469013540 469013540 323283656 496154282 830477945 830477945 375019162 1041371229 1041371229 437957692 437957692 504947764 545273457 545273457 472371080 711053761 711053761 673395668 586164172 586164172 911931320 911931320 705385007 705385007 556348707 556348707 518254845 377652305 241406621 543562724 736604528 736604528 1028170597 1028170597 671935545 671935545 1070826561 1070826561 554991921 864161907 913583017 913583017 821538177 821414306 821414306 537662488 537662488 118154296 646553856 646553856 886839928 886839928 900551499 900551499 664843776 664843776 303748626 1051755007 1051755007 1009624559 1009624559 963035703 963035703 748083218 748083218 830998123 830998123 922357988 922357988 804993021 468318025 224659884 1019532710 1019532710 684332229 411174019 637739049 637739049 572597683 841821203 841821203 318441825 441094544 441094544 405325062 187594720 291898226 291898226 309599728 309599728 924108152 924108152 732007424 748452136 748452136 319687410 319687410 418656640 450954010 450954010 349311954 289657344 289657344 427958612 495858734 495858734 413986630 413986630 282938308 198199236 198199236 178258016 178258016 181928980 181928980 203951532 225182988 225182988 5374144 397312 268440391 435850243 544525472 544525472 100274513 189825492 637624560 868820305 868820305 278221200 557052304 938486609 938486609 1046225554 1046225554 898638447 962661914 962661914 686818245 756499424 756499424 764550116 764550116 544291632 588776979 588776979 290535299 401748554 644757601 644757601 823806157 823806157 420269094 754182083 754182083 763162657 763162657 546028140 715565322 715565322 842727804 1033582191 1033582191 850985584 673974464 676833285 683333445 683333445 876023109 876023109 7525248 694847013 694847013 398569936 595981777 877036674 893943224 893943224 638749744 577030545 541437704 522518538 522518538 468923482 468923482 493880238 493880238 819940880 819940880 644143874 549754880 549754880 549638337 533274980 533274980 392098904 799254320 799254320 608822409 472597301 452245490 452245490 335544306 335544306 314013762 330238160 330238160 320690266 371588328 371588328 368565474 357726016 357726016 491387230 491387230 516491486 516491486 848255072 848255072 427566759 9695808 145258244 145258244 78329160 32314120 544212360 568877321 568877321 207057176 408856008 408856008 91524818 716213888 716213888 705219733 705219733 717292672 910696581 944180447 944180447 196361560 1071448760 1071448760 993601907 670369742 481692136 472384782 276178028 330649654 404350470 404350470 289972480 801650399 801650399 878445399 878445399 392683929 979944855 979944855 760167597 760167597 281527008 980973072 980973072 623850660 623850660 498597901 750915789 750915789 438858325 597517825 597517825 1069160319 1069160319 861468657 782972253 782972253 672728132 749210516 749210516 200161496 726270124 726270124 585175501 585175501 203522440 707061776 774168840 774168840 577785749 577785749 170792085 680499664 680499664 180488913 736835061 1049861185 1049861185 1030134024 1030134024 6208076 337734560 366528234 366528234 118774136 118774136 226103084 266079996 266079996 587280040 964244265 964244265 812980247 808588731 521742105 687868104 918173765 918173765 662055931 843288718 843288718 577144955 549642754 888400195 888400195 338850241 1257984 72745608 143675396 143675396 217864449 217864449 475404942 475404942 415458026 822218881 822218881 197646518 197646518 368914410 368914410 445465232 445465232 405427458 1022398662 1022398662 409672841 142624000 142624000 142915652 143241280 143241280 75621700 78518596 78518596 76259780 76259780 175799464 175799464 198442240 238236444 238236444 136504880 100888696 100888696 80753536 80753536 82176456 123734096 123734096 97005960 90227112 112418712 545460338 545460338 557419588 615151648 615151648 17274185 100927570 343933002 774373466 774373466 1011359719 1011359719 992088375 922371617 922371617 397022074 397022074 285902314 836782406 836782406 270569207 436232270 487053372 487053372 720376425 1062238895 1062238895 612504129 571869772 136714500 2230276 590361156 732115317 733111141 733111141 403743893 499117764 499117764 618469466 637591864 637591864 623968673 593599048 327318257 61274740 176370564 199575716 836144180 836144180 949503335 949503335 589739904 448509473 547196912 936161164 943554043 943554043 881959082 945857414 945857414 797115002 1023459375 1023459375 808216650 858776667 858776667 394976379 352634234 624953405 624953405 602549264 740458500 740458500 558048480 153165952 92799040 92799040 84451328 84534312 84534312 54711448 27917792 73109496 73109496 84972544 101860664 101860664 71828616 57556280 90544552 90544552 1346304 18104480 18104480 676221696 676221696 150476293 12729924 547226176 565588132 565588132 335931648 955349160 955349160 310702081 955429623 955429623 693436831 613025999 500413518 568984848 599920881 599920881 52429104 52429104 280013028 280013028 865242711 983323251 1017223992 1017223992 965768047 219447617 159529191 11873088 282279936 282279936 107725506 1057818496 1057818496 714552970 714552970 682754306 973213719 973213719 742562228 742562228 680993509 649072837 156770649 550671731 805476495 805476495 878424587 878424587 890690091 956415263 956415263 811937314 811937314 539569330 323173810 323173810 322389130 350174922 350174922 323751090 323751090 93465594 270203048 300153058 372382090 372382090 371462400 549190817 625473377 899163898 899163898 728820492 742500921 781788765 872090593 1016470095 1016470095 827238959 827238959 805992474 805992474 878327263 878327263 908105264 908105264 893047673 782838016 986235225 986235225 851835264 851835264 740670720 708974805 1042287616 1042287616 241049244 241049244 558667812 788451976 788451976 628791645 628791645 559411615 1043431948 1043431948 1020357683 395080588 456300279 456300279 306915121 823846691 823846691 440451222 440451222 809079741 809079741 376484944 773156616 773156616 589052193 722919988 722919988 377298712 377298712 406190688 665314963 665314963 623739978 1028854328 1028854328 879167136 669768337 830320993 830320993 613860586 342094474 342094474 286813824 7963776 7963776 7085056 15982208 15982208 51058698 1052058746 1052058746 149455585 523864446 523864446 12767424 12767424 1081600 3671808 428736692 428736692 345578830 807667931 807667931 871159250 917426353 917426353 692209587 390216245 215405636 215405636 863645972 863645972 751374344 333656562 205273238 747312080 747312080 736174581 320679829 855914788 855914788 681709893 163891428 163891428 161898656 6382080 144448008 144448008 135662120 343894234 343894234 348176586 476100112 476100112 337338972 443056139 536986269 536986269 344486987 343761859 602171344 609007728 900173376 900173376 860930739 440163147 530056830 530056830 304910456 149843344 149843344 77437568 368953600 394224722 394224722 188192396 188192396 25227547 883475787 883475787 713773579 707863317 550171280 851298082 997658535 997658535 958771940 958771940 677897401 882510413 882510413 474014252 726739589 969263980 969263980 572501020 977062711 977062711 764201453 948867727 948867727 406688835 406688835 1033856226 1033856226 815404611 407193603 359017480 359017480 337461296 490134318 490134318 310044142 310044142 310612538 443960124 443960124 238077832 238077832 498139264 524361918 524361918 287311930 121756252 464232590 535708680 535708680 278398530 278398530 726569680 726569680 463260725 891651842 891651842 478495313 204860172 925796739 925796739 575474105 349677714 131743048 119918680 119918680 67209288 34006064 724742834 945938823 945938823 896969279 623205966 669496229 669496229 568451553 721660005 839394466 939024502 939221917 939221917 784597646 784597646 680795729 520934424 791336359 791336359 641879074 944126055 944126055 592076816 556921828 556921828 188063992 629791030 980435480 980435480 436896651 523526680 523526680 458999578 119671992 386679314 386679314 344507466 317341146 317341146 304162648 115584008 115584008 107382808 346998632 373582842 373582842 268638872 17513760 20984448 20984448 3915264 2199296 1387008 1719296 1719296 34227408 126572290 397534074 397534074 128484376 200937662 316075418 316075418 138720444 255191552 816862956 1013566340 1013566340 1011931468 950552064 950552064 918329640 918329640 751787214 899325056 991614519 991614519 461612609 188998308 755384872 755384872 541459841 372785280 627446021 627446021 824652294 987126829 987126829 403968670 105257112 490868910 490868910 593069752 593094321 953737679 953737679 786149764 786149764 649643865 147005612 249639992 648675408 648675408 203423845 230676104 230676104 471926954 471926954 401394646 821592870 821592870 529737095 834130443 834130443 449070550 449070550 1052893400 1052893400 406940865 406940865 807734359 916986309 916986309 891552006 510003422 251752412 244737218 33296352 77386122 286504074 343135150 343135150 279404140 738927657 738927657 757781805 757781805 84137257 708133641 708395293 725504817 725504817 593915313 124540936 596152608 596152608 539017313 537445377 420042898 249159728 608241673 608241673 46155664 142132868 234915360 730341507 730341507 466167030 1069337187 1069337187 417499462 361763276 93922592 93922592 93323880 78226280 100393992 100393992 10507392 63572234 379619010 379619010 309058674 309058674 813768771 813768771 819025472 849524099 849524099 807140499 588224882 888698483 936048379 936048379 668570851 578814073 578814073 545264136 211956620 784523528 875571472 972240929 972240929 781263453 1052819908 1052819908 695239402 695239402 222309137 723594016 778242744 857133457 857133457 809699390 809699390 755323552 738801437 738801437 585578961 585578961 427734382 418172358 432903583 503359684 503359684 449120348 444629040 251676734 352354334 560179320 560179320 218593441 268502434 335544330 813777222 960142910 960142910 587509511 957295414 1002104355 1002104355 674238582 495038594 264675452 121936124 180578616 447671748 447671748 579841728 579841728 556401618 556401618 607881545 607881545 552913857 655624761 655624761 625214013 491831982 491831982 469013540 469013540 323283656 176718928 830477945 830477945 443468970 1041371229 1041371229 437957692 437957692 504947764 545273457 545273457 268041052 711053761 711053761 42217568 586164172 586164172 299158988 900849556 1070546175 1070546175 359007815 449972416 449972416 241406621 940902646 940902646 736604528 736604528 707479828 707479828 671935545 827429913 1070826561 1070826561 1026600467 864161907 913583017 913583017 872748426 877013120 877013120 297029376 275048603 123929016 123929016 597110793 886839928 886839928 900551499 900551499 664843776 664843776 387188344 369099944 325837840 325837840 212413876 379005048 379005048 361069162 634990730 830998123 830998123 922357988 922357988 804993021 468318025 224659884 1019532710 1019532710 815675527 815675527 460525426 460525426 279000976 144847172 136807376 181926612 181926612 180613332 187594720 187594720 291898226 291898226 309599728 747013952 747640925 747640925 732007424 748452136 748452136 150848736 216655308 442066316 485032602 485032602 306184200 289657344 289657344 252791956 252791956 151372340 67141632 6897924 313344 72205384 92040650 178258016 178258016 181928980 492318751 1059430323 1059430323 1015435978 1015435978 881853086 881853086 435850243 963281414 963281414 863816371 863816371 789859997 560764817 1026448284 1026448284 557052304 938486609 938486609 1046225554 1046225554 778865449 778865449 674883461 686818245 780632132 780632132 764550116 764550116 692522692 588776979 588776979 290535299 401748554 644757601 644757601 435890150 384425040 384425040 289711012 289711012 93849938 37553972 456254792 456254792 494961934 494961934 1008809043 1008809043 879693268 879693268 443826063 137300992 714094115 876023109 1045459562 1045459562 1004626658 694847013 97752008 97752008 86169344 86169344 551452896 551452896 43255872 43255872 189244352 465712864 465712864 116409451 764447569 872447557 872447557 819940880 644143874 611110082 611110082 342380491 533274980 533274980 641478193 799254320 799254320 1007602859 1007602859 969594087 476434675 335544306 541543857 843190419 858801256 858801256 335544306 371588328 371588328 368565474 317315904 278405160 491387230 491387230 516491486 516491486 848255072 848255072 427566759 1047737992 1047737992 93975935 78329160 32314120 544212360 568877321 568877321 74658696 408856008 408856008 70169768 561842024 631292265 943093513 943093513 609731503 42503729 614516101 614516101 298417192 849089863 993601907 993601907 670369742 347279202 276178028 276178028 330649654 404350470 404350470 559328786 801650399 906278923 906278923 878445399 555170337 979944855 979944855 495453294 495453294 277534712 184027092 180170580 240592104 240592104 954216826 954216826 778043805 438858325 597517825 597517825 526202956 135080964 648355332 782972253 782972253 160115065 40371224 34343952 37224584 37224584 33557400 0 0 81638752 671273100 774168840 774168840 577785749 577785749 543277056 680499664 680499664 180488913 736835061 1049861185 1049861185 881436740 881436740 30121611 729843292 797477746 797477746 402776070 118774136 767099436 767099436 725099348 725099348 634659254 459344617 170937648 787488768 787488768 687868104 918173765 918173765 662055931 340399242 889398352 920723872 920723872 888400195 888400195 338850241 1257984 4251040 143675396 143675396 224735528 224735528 475404942 475404942 415458026 822218881 822218881 197646518 197646518 368914410 368914410 295738120 546358859 546358859 819086018 819086018 818418633 540085505 545801216 545801216 537385281 143241280 614555588 614555588 738381837 738381837 615138628 8628352 30335072 30335072 31457760 31457760 50807200 50807200 30542464 79183592 79183592 82176456 113074952 113074952 90227112 90227112 75007520 545460338 972076899 972076899 561556676 130158256 357829290 357829290 636854400 636854400 883560993 883560993 992088375 992088375 970012869 970012869 428787845 331269631 464916214 836782406 836782406 588251697 557102496 487053372 487053372 720376425 1062238895 1062238895 612504129 571869772 248234205 235964356 584766827 584766827 1012475824 1012475824 728630790 622988089 865650291 865650291 782857467 782857467 854937705 854937705 239407484 389437562 389437562 574788515 700482244 700482244 695206821 826984930 826984930 574895904 461372929 936161164 943554043 943554043 564187336 880828608 880828608 797115002 1023459375 1023459375 878216851 858776667 858776667 304780618 166392189 624953405 663990610 663990610 740458500 740458500 627312937 627312937 344260681 344260681 336701666 364170090 372539192 372539192 106267304 107110992 107110992 84972544 84972544 37246504 50964912 50964912 192000659 548044731 713369685 713369685 551670623 676221696 676221696 709617748 709617748 579013137 565588132 565588132 335931648 955349160 955349160 310702081 955429623 955429623 363556442 844519216 844519216 578215315 526047226 1041668522 1041668522 887230923 335354731 437284578 437284578 565582421 1017223992 1017223992 965768047 402741298 278984704 310550912 311509272 311509272 107725506 1057818496 1057818496 714552970 714552970 601523008 739614013 739614013 709028799 709028799 680993509 649072837 642810902 550671731 763365580 763365580 878424587 878424587 605286921 697341805 697341805 540616449 54605824 121836986 323173810 323173810 322389130 350174922 350174922 323751090 323751090 93465594 270203048 300153058 372382090 372382090 371462400 71386632 0 899163898 899163898 690759068 690759068 781788765 872090593 1016470095 1016470095 949622343 1026413639 1026413639 805992474 709815494 709815494 743164038 743164038 304137536 943916308 943916308 715387221 706875669 740670720 740670720 743258453 743258453 854442995 854442995 675960237 675960237 770846664 770846664 740759140 725489916 1069954105 1069954105 1043431948 1036614230 1036614230 515361708 876394634 876394634 460203129 203490344 440451222 440451222 809079741 809079741 320817868 773156616 773156616 589052193 722919988 722919988 845230592 845230592 844552851 665314963 665314963 623739978 1028854328 1028854328 879167136 824311876 830320993 830320993 613860586 465460598 465460598 430999696 435822096 435822096 1049088 1126912 5976576 546360960 546360960 559938820 881222037 881222037 187441615 12767424 38426152 312577794 312577794 428736692 428736692 345578830 807667931 807667931 871159250 917426353 917426353 692209587 390216245 291751730 215405636 863645972 863645972 751374344 333656562 205273238 747312080 747312080 736174581 320679829 855914788 855914788 681709893 163891428 163891428 161898656 6382080 144448008 144448008 135662120 59544320 101857288 101857288 239312584 239312584 217473932 40178704 134680192 256222376 256222376 104942048 129888120 129888120 608400769 608400769 594160985 491766093 491766093 822904363 822904363 889455799 889455799 459593731 642305982 818053636 818053636 434934314 294358404 401618300 401618300 431661354 431661354 403436550 286519830 851298082 997658535 997658535 837347264 837347264 464804959 462691924 462691924 407635988 407635988 766022088 766022088 646731053 977062711 977062711 764201453 461844210 689938657 763393032 763393032 701244932 815404611 815404611 349975144 359017480 912469861 912469861 459427978 963158789 963158789 310044142 310612538 443960124 443960124 185495592 88159348 498139264 524361918 524361918 61868238 351919460 480699360 480699360 283134080 758536797 758536797 726569680 726569680 463260725 891651842 891651842 840979590 840979590 925796739 925796739 575474105 610964465 610964465 119918680 119918680 145979756 206693937 724742834 945938823 945938823 324227893 539300476 548355393 548355393 541550599 721660005 839394466 839394466 319499520 646041118 784597646 784597646 680795729 339679567 136526102 229186824 564461968 574631281 574631281 810210435 915196675 1047955524 1047955524 629791030 629791030 997744595 997744595 829167611 638097442 119671992 119671992 386679314 386679314 344507466 317341146 317341146 304162648 115584008 164454244 164454244 346998632 373582842 373582842 268638872 174163104 53383952 53383952 36507408 35299968 15543744 15543744 275142338 279481474 279481474 276579136 67492648 98647824 131997432 131997432 43262000 59140640 281900169 816862956 816862956 1011931468 1011931468 950552064 950552064 918329640 918329640 889217902 899325056 991614519 991614519 764785443 672938686 694447381 694447381 541459841 861730254 861730254 627446021 427314640 987126829 987126829 772146609 772146609 1010831785 1010831785 941752856 593094321 953737679 953737679 660656927 853067475 853067475 764593383 646107225 1054348246 1054348246 837817215 720535626 447031638 447031638 405897264 402544200 821592870 821592870 529737095 834130443 1064304241 1064304241 938955824 1052893400 1052893400 910500668 406940865 533737960 533737960 32180926 8651784 4284544 61754480 289950664 375952346 375952346 281157122 88870056 196583000 196583000 71641224 562572388 742391949 760218729 760218729 163454820 163454820 28068752 593915313 593915313 118314417 596152608 596152608 539017313 537445377 249159728 249159728 608241673 608241673 101991648 421312 2335936 730341507 730341507 466167030 1069337187 1069337187 417499462 361763276 257430964 146412036 152699728 152699728 175934912 175934912 57562884 192345872 192345872 77859712 17299488 295355697 302353169 302723632 871536642 871536642 849524099 823508800 30451968 30451968 20323104 13683104 37319664 37319664 57750368 57750368 63045952 63045952 875571472 875571472 781263453 904251598 904251598 658596744 658596744 122776049 173248724 173248724 778242744 857133457 857133457 809699390 809699390 707404444 790713199 790713199 686432916 471125523 427734382 832792822 832792822 886030442 886030442 949224773 949224773 351189994 858571101 858571101 602160204 528432317 528432317 995698563 995698563 990534958 990534958 419861643 17176608 16783360 854591783 862464336 1030198647 1030198647 862327674 862327674 308281408 308281408 8581248 841150593 841150593 581005874 960626785 970056423 970056423 851481332 851481332 683803977 591434672 855655768 855655768 351305794 264165228 519757688 519757688 302010452 443468970 443468970 96782742 62131056 50073552 67310908 67310908 51589680 224342284 224342284 28521312 143716644 403228416 405799686 946344766 946344766 1070546175 1070546175 874042766 858784563 740820542 169869588 940902646 940902646 678731875 678731875 850651288 850651288 923191586 923191586 827429913 1026600467 1026600467 806336689 342174090 872748426 872748426 877013120 877013120 275048603 275048603 123929016 196407612 597110793 633542944 633542944 650851545 822263311 1061198410 1061198410 1027440755 1027440755 477940542 567618868 567618868 898106723 898106723 361069162 898995803 898995803 828709225 944080859 944080859 869657331 546016267 933800071 933800071 869012487 869012487 828454032 856046723 856046723 849609043 862989331 862989331 848670464 445181778 445181778 549208896 673992256 673992256 587079633 587079633 747013952 747013952 218208768 218208768 219755076 241412892 241412892 415310022 442066316 519094480 519094480 395921056 395921056 100946928 328562152 328562152 151372340 226721504 226721504 134987008 134987008 207590528 207590528 149497056 149497056 492318751 1059430323 1059430323 1015435978 1015435978 881853086 881853086 224140040 963281414 963281414 863816371 863816371 789859997 515218830 1026448284 1026448284 374798905 589232795 589232795 577969106 577969106 166696835 149979605 145802052 72461252 780632132 780632132 666320818 873322217 873322217 186225425 286303856 286303856 278447682 259904098 314222604 342309258 404318334 404318334 311005012 311005012 114877762 337048592 386238572 386238572 156476425 321533894 1019413394 1019413394 977213785 879693268 443826063 445983318 714094115 714094115 1045459562 1045459562 1004626658 873988534 353093264 790721513 1008037934 1008037934 849006276 665367312 665367312 543129584 324302962 465712864 465712864 473471135 764447569 872447557 872447557 814188674 558236961 611110082 611110082 342380491 632517853 795681258 795681258 641478193 236568379 1007602859 1007602859 969594087 672143876 721944721 721944721 843190419 858801256 858801256 335544306 335544306 58383186 44534336 278405160 278405160 70727234 278660520 278660520 255092532 375405608 375405608 312542272 1061160379 1061160379 968419101 968419101 494798127 488756128 605700937 605700937 616728773 616728773 204962615 762453910 762453910 654455177 943093513 943093513 609731503 238069020 1026081498 1026081498 345114250 849089863 849089863 386538384 236928540 135703812 135003296 155247172 155247172 268826946 303913633 559328786 843253216 906278923 906278923 555170337 555170337 961118654 961118654 495453294 495453294 277534712 184027092 180170580 240592104 240592104 954216826 954216826 778043805 524415520 508695198 804275052 804275052 368955502 368955502 601635936 781910486 781910486 1056506625 1056506625 339216138 289023370 524335528 524335528 166144108 144758284 213651276 213651276 227952896 227952896 4018432 543277056 543277056 708913840 708913840 190868373 606316576 836106983 881436740 881436740 1031807343 1031807343 797477746 797477746 402776070 111732830 767099436 767099436 725099348 725099348 634659254 459344617 309544670 787488768 787488768 685778152 685778152 454169142 454169142 340399242 901841368 920723872 920723872 540226048 544215425 544215425 540152577 53477652 53477652 228915332 228915332 235860444 249814044 249814044 220880172 220880172 155713928 339882184 434557620 434557620 283115664 283115664 546358859 546358859 819086018 819086018 818418633 540085505 545801216 545801216 537385281 12861504 614555588 614555588 738381837 738381837 615138628 176976952 176976952 145141204 305476726 305476726 37749740 361210204 465836078 512100518 512100518 499259406 273988916 309677986 431759896 431759896 246568544 246568544 972076899 972076899 833626976 833626976 357829290 357829290 636854400 636854400 883560993 883560993 595723498 751906858 970012869 970012869 596238912 596238912 823478741 823478741 588251697 588251697 557102496 824750692 824750692 350906836 961282276 961282276 672146457 705363988 705363988 571359757 584766827 584766827 1012475824 1012475824 728630790 622988089 865650291 865650291 782857467 782857467 854937705 884169415 885188907 897931784 897931784 574788515 574788515 317722722 683988948 826984930 826984930 574895904 461372929 601992842 601992842 919536966 919536966 834789603 834789603 614450329 875070900 878216851 878216851 524862908 424805038 304780618 117636264 545781610 663990610 663990610 559744992 604315905 627312937 627312937 344260681 344260681 336701666 364170090 372539192 372539192 106267304 107110992 107110992 68574272 33818640 33818640 20571008 40498712 192000659 548044731 713369685 713369685 683813528 683813528 452831763 978930183 978930183 579013137 479653599 505155102 505155102 519095859 519095859 307337092 388143656 388143656 269656586 844519216 983246517 983246517 526047226 1041668522 1041668522 887230923 922589028 922589028 437284578 33898528 916895818 916895818 581175633 402741298 278984704 310550912 360908880 360908880 361968234 361968234 217485930 232123116 232123116 601523008 739614013 739614013 850432378 850432378 429641818 642810902 642810902 409867970 433271526 579687990 738458755 1024345089 1024345089 732235328 977680817 977680817 930529464 930529464 387247162 52233144 122762160 122762160 51775488 51775488 20013600 20013600 107205248 107205248 7413784 68722824 128860377 128860377 122044673 663672929 663672929 621079064 588325425 758904621 758904621 404690153 889848428 949622343 1026413639 1026413639 352482056 694460116 694460116 1030609399 1030609399 597737719 943916308 943916308 715387221 706875669 706875669 668090153 743258453 743258453 854442995 854442995 675960237 675960237 770846664 770846664 740759140 918426043 1069954105 1069954105 1048866482 1048866482 1036614230 515361708 876394634 876394634 828966328 828966328 298464045 170792088 170792088 532747602 532747602 232993260 553190812 662909817 662909817 538399905 845230592 845230592 844552851 662088382 407570054 353963122 353963122 402917376 824311876 824311876 706869634 343151195 447775062 465460598 465460598 430999696 435822096 435822096 3708160 14413632 14413632 546360960 546360960 559938820 881222037 881222037 187441615 34357766 529113854 529113854 312577794 346869066 346869066 159678474 352590000 373428378 373428378 59309354 391363620 391363620 321944194 291751730 453720488 453720488 322887474 749657421 749657421 677678819 574310971 470020275 631271454 651425091 768605542 768605542 918820865 918820865 674218323 408639475 24402432 24402432 25242656 33013120 85492904 85492904 79662160 109971816 109971816 104181128 104181128 18545152 58040384 80519864 104942048 129888120 129888120 608400769 608400769 594160985 491766093 491766093 822904363 822904363 889455799 889455799 459593731 642305982 818053636 818053636 434934314 294358404 401618300 401618300 431661354 431661354 889226296 889226296 584853152 755940781 755940781 828682944 828682944 289887715 462691924 462691924 285873186 249956910 766022088 766022088 646731053 606492704 119780617 832271418 832271418 689938657 763393032 763393032 701244932 701244932 349975144 408040524 444142298 912469861 912469861 459427978 963158789 963158789 284114300 456526484 528931838 528931838 286396962 566704353 566704353 277219485 277219485 924407344 924407344 758143507 758143507 206702653 758536797 758536797 537270273 549989890 986521109 986521109 910172431 910172431 929649938 1057408132 1057408132 308677783 610964465 610964465 87780640 87780640 499500408 499500408 465226352 485077426 485077426 253232700 539300476 548355393 615056334 679175939 831696977 856380537 856380537 554357793 917435259 917435259 383520474 978133466 978133466 239216904 579277064 579277064 1017518415 1017518415 810210435 915196675 1047955524 1047955524 802200330 519478025 997744595 997744595 829167611 685881596 147795624 29075056 34046864 38221968 38221968 76051520 151741884 151741884 36589648 164454244 164454244 187569380 187569380 186510900 186510900 174163104 53383952 53383952 36507408 35299968 15543744 15543744 275142338 279481474 279481474 276579136 123467448 123467448 131997432 131997432 37691880 25239648 281900169 597458289 737355994 737355994 423386853 693049897 693049897 975795180 975795180 889217902 837337524 304435414 764785443 815622274 815622274 694447381 694447381 288765388 861730254 861730254 300537619 160801504 723397250 723397250 772146609 772146609 1010831785 1010831785 941752856 465044264 566985962 926102331 926102331 853067475 853067475 764593383 646107225 1054348246 1054348246 837817215 720535626 447031638 447031638 405897264 402544200 909156470 909156470 690917661 684214111 1064304241 1064304241 938955824 885944898 1020779206 1020779206 955114442 955114442 897660649 897660649 604635436 417591550 417591550 289950664 375952346 375952346 281157122 421471126 421471126 331102516 975543669 975543669 742391949 760218729 760218729 678456440 678456440 590683613 111036233 553648128 553648161 553648161 89655108 238814932 454888074 454888074 138684136 454773214 454773214 110802576 214120012 214120012 435250686 435250686 174420256 299798470 299798470 157551012 257430964 257430964 160960768 160960768 157358692 175934912 175934912 57562884 192345872 325970754 325970754 333754624 333754624 320256112 302723632 871536642 871536642 833500659 870131248 870131248 16011123 32505984 32505984 298387010 298387010 25763952 302522818 330750352 330750352 62268536 331750258 331750258 904251598 904251598 658596744 892379202 894793983 968925863 968925863 473409847 443671446 378693880 843178000 843178000 809500803 917045280 917045280 858334515 471125523 205898702 832792822 832792822 886030442 886030442 949224773 949224773 358848424 858571101 1057334525 1057334525 528432317 528432317 995698563 995698563 990534958 990534958 419861643 86693160 204811020 854591783 862464336 1030198647 1030198647 862327674 862327674 248590966 248590966 170996502 841150593 841150593 954403984 960626785 970056423 970056423 968247616 968247616 683803977 674169872 855655768 855655768 351305794 264165228 519757688 519757688 395974688 203827202 287251798 287251798 196158324 263007612 414261276 414261276 520511504 520511504 170180868 28521312 143716644 977202316 977202316 946344766 946344766 740549162 874042766 874042766 858784563 740820542 560189824 796240414 796240414 705577513 678731875 850651288 850651288 923191586 923191586 208143756 208143756 202507204 323360946 323360946 243663596 147194946 140385924 516639422 516639422 531305084 531305084 196407612 196407612 633542944 633542944 650851545 822263311 1061198410 1061198410 1027440755 1027440755 477940542 567618868 567618868 898106723 898106723 341008993 898995803 898995803 828709225 944080859 944080859 869657331 546016267 933800071 933800071 869012487 869012487 828454032 856046723 856046723 849609043 862989331 862989331 848670464 445181778 445181778 549208896 673992256 673992256 594678705 594678705 736307988 736307988 732476481 732476481 612616016 612616016 241412892 415310022 415310022 519094480 519094480 395921056 395921056 281387456 436990998 436990998 172459028 226721504 226721504 155717760 147535360 207590528 207590528 77297996 93040300 203773924 203773924 31369504 24381696 26285060 35863080 35863080 163700964 624792168 806575640 840563739 840563739 206041100 85010952 85010952 83919624 374798905 589232795 589232795 576999137 300621217 166696835 149979605 145802052 72461252 675445248 835850414 835850414 873322217 873322217 186741010 286303856 286303856 278447682 414968328 414968328 405305994 404318334 404318334 311005012 311005012 126110744 337048592 386238572 386238572 26775404 4593792 1019413394 1019413394 977213785 743646749 201597530 445983318 445983318 377500104 252062180 908759586 908759586 873988534 353093264 790721513 1008037934 1008037934 849006276 665367312 665367312 543129584 324302962 423633986 456180928 473471135 661558405 661558405 308071427 403728002 403728002 584558486 584558486 425994484 632517853 795681258 795681258 550962357 981216730 981216730 120845112 545836544 672143876 721944721 721944721 314050386 512106252 512106252 265952700 240253836 240253836 205907810 291311976 346500770 346500770 307954922 307954922 543285946 543285946 867706112 867706112 1061160379 1061160379 968419101 968419101 494798127 488756128 605700937 605700937 616728773 616728773 204962615 762453910 762453910 654455177 654758421 654758421 422027539 238069020 1026081498 1026081498 345114250 528561502 528561502 386538384 135703812 135703812 50052420 321954769 862009697 862009697 587693833 603055089 843253216 843253216 669149613 669149613 1021646397 1021646397 961118654 692864156 692864156 598737777 598737777 413089350 659107652 907621627 907621627 764123399 901347174 901347174 594018394 903430753 903430753 368955502 368955502 516701775 781910486 781910486 1056506625 1056506625 822326838 839348762 839348762 654734480 644486553 592329120 213651276 678171856 716079512 716079512 640074512 134569984 706271957 708913840 708913840 728298069 728298069 984292117 984292117 657073202 1031807343 1031807343 694267091 617432528 453633326 453633326 50455736 151520292 585902392 585902392 752101935 752101935 765339488 765339488 658641536 210383716 417531096 805570308 926955523 926955523 901841368 901841368 553649568 540226048 544215425 562180116 562180116 550515473 582111920 592497201 709902177 709902177 636069217 636069217 465943797 465943797 699104230 699104230 792740629 957481599 957481599 458654510 379770907 335561368 73549696 73549696 15800264 3745536 550826496 550826496 12861504 12861504 10576384 1155392 8913984 147522568 147522568 176976952 176976952 145141204 305476726 305476726 360872416 799488225 799488225 512100518 848128315 848128315 273988916 785457885 785457885 632039433 575933740 246568544 822120832 822120832 833626976 833626976 763811949 763811949 553648192 553648192 883561803 883561803 738198657 738198657 375391495 303303186 596238912 957990650 957990650 823478741 216129996 859473872 859473872 824750692 824750692 724472866 961282276 961282276 680594458 705363988 705363988 571359757 743093380 743093380 887077061 887077061 608634386 608634386 810075268 810075268 713459953 713459953 473139217 884169415 885188907 897931784 897931784 80747080 268960770 681860486 818599107 1014175565 1014175565 568205025 718510185 718510185 601992842 919536966 919536966 834789603 834789603 739574052 493635816 493635816 478151366 424805038 424805038 22240256 928800 90725928 90725928 80664784 275065250 275065250 88344744 860096626 860096626 352592001 33884370 18926112 125157512 125157512 591009305 592024240 592024240 664705073 664705073 629459049 563458840 563458840 563051090 711010851 747035741 948758535 948758535 914637533 542361690 978930183 978930183 471539358 612895820 671878149 671878149 519095859 519095859 732977408 732977408 520929886 520929886 611935576 983246517 983246517 863844065 863844065 853274794 853274794 922589028 922589028 285418004 183439952 916895818 916895818 839918808 839918808 376267419 912321738 912321738 360908880 361968234 361968234 386304497 386304497 933679336 933679336 332157318 512103580 850432378 850432378 491030762 491030762 282331842 474116243 474116243 997171026 997171026 1024345089 1024345089 732235328 977680817 977680817 930529464 930529464 387247162 56329328 273427064 400107258 400107258 296672610 296672610 87881450 357605256 357605256 352846890 388986128 388986128 593456360 835725521 835725521 696821885 696821885 681351769 1005279831 1005279831 404690153 748256268 748256268 940560801 951380640 951380640 725589550 725589550 1030609399 1030609399 597737719 940295490 940295490 648655957 326891616 627607926 668090153 668090153 30436413 75886912 75886912 9437760 470941736 531763736 531763736 476391365 918426043 918426043 510634416 1048866482 1048866482 855352485 256977553 987119575 987119575 828966328 828966328 298464045 170792088 170792088 532747602 532747602 232993260 553190812 662909817 756302032 802474749 802474749 237890844 787392980 787392980 407570054 353963122 353963122 1033834458 1033834458 706869634 754225981 754225981 447775062 447775062 340996490 412404498 412404498 412125712 541573249 541573249 551652288 551652288 502104624 502104624 463143850 674277172 674277172 574656135 883951012 883951012 529829166 515657310 466927918 165449540 165449540 199629300 199629300 172508144 391363620 391363620 168717354 245477648 453720488 453720488 322887474 816317763 816317763 677678819 629973165 629973165 631271454 651425091 768605542 768605542 918820865 918820865 961946896 961946896 541145856 289368096 699424 17891328 85492904 85492904 85998976 123677576 123677576 104181128 104181128 18545152 18545152 30222624 42553024 85462512 85462512 7104776 72392968 72444800 957944384 957944384 70642440 70642440 7865344 67372808 67372808 71054208 538020399 538020399 426791078 553713791 553713791 368672800 368672800 295281248 889226296 889226296 50348083 305201952 305201952 828682944 828682944 289887715 286922274 255275337 1001400358 1001400358 1015940218 1015940218 606492704 606492704 591710385 837100775 837100775 1029626927 1029626927 233403946 28837728 345027606 511863900 511863900 444142298 444142298 362514540 362514540 525878444 525878444 296871736 456526484 528931838 528931838 286396962 566704353 566704353 277219485 629681336 924407344 924407344 758143507 872569216 872569216 816616685 525784004 537270273 608773196 986521109 986521109 910172431 910172431 929649938 1057408132 1057408132 369956122 105456954 91759618 87780640 87780640 499500408 499500408 465226352 583124101 583124101 365503090 496144536 512406762 749351898 779106153 923820041 923820041 856380537 554357793 917435259 917435259 383520474 978133466 978133466 240198300 1018830226 1018830226 1017518415 1017518415 816550277 808715761 808715761 802200330 949935713 949935713 804370941 804370941 752222357 685881596 147795624 121794392 96498072 89985856 131980032 131980032 75643048 58833256 9012288 27027680 29919808 29919808 10755104 20323104 20323104 17773824 17773824 2171136 2236416 2662400 5622208 15370752 15370752 6951104 304581096 304581096 123467448 123467448 98070608 326439112 326439112 25239648 20971808 54555568 507552304 507552304 442198844 339622252 339622252 975795180 975795180 837337524 837337524 307562443 657848437 815622274 815622274 502957056 738857030 738857030 795406797 911128244 911128244 712306486 712306486 569960624 528386702 149946436 322965908 685376649 906266984 906266984 799138531 926102331 1052368994 1052368994 739901754 739901754 641802393 585116300 479267308 406925338 140516104 107397772 106955160 346438272 346438272 909156470 909156470 690917661 684214111 359962606 339582858 746145666 885944898 1020779206 1020779206 955114442 955114442 934946424 897660649 946024839 946024839 903612500 903612500 332630160 332630160 247855964 421471126 572440085 572440085 975543669 1005517189 1005517189 818354950 893321428 893321428 693268505 590683613 646236249 646236249 630142185 630142185 606075689 585774033 548544169 454888074 348018566 727585751 727585751 315003746 510186300 510186300 834690995 834690995 202506402 588667425 588667425 367694848 367694848 218908608 160960768 160960768 157358692 29625824 32245216 80381224 80381224 325970754 395334440 395334440 333754624 320256112 34738704 812609552 845991315 845991315 870131248 870131248 117794264 117794264 57148848 298387010 298387010 111932760 317607128 330750352 330750352 473262401 1016119887 1016119887 974371119 884442098 1073216511 1073216511 894793983 968925863 968925863 556668203 584854104 621547392 843178000 845398491 845398491 917045280 917045280 858334515 117449995 0 59289264 59289264 563035694 563035694 512040981 358848424 358848424 555281033 1057334525 1057334525 1022387360 218228459 545898504 635552473 635552473 343767714 709365296 709365296 204811020 487915810 487915810 44172480 44172480 304690106 304690106 248590966 248590966 170996502 717935491 717935491 954403984 954403984 408945030 408945030 968247616 968247616 56887728 674169872 721972228 721972228 7265664 270673956 422000934 422000934 395974688 323966230 287251798 287251798 196158324 269094680 414261276 414261276 520511504 520511504 195338276 154646816 539093318 989144080 989144080 956043207 686575561 740549162 740549162 101400534 990159013 990159013 857016850 796240414 796240414 705577513 222082085 177683028 177683028 907415056 907415056 208143756 821740674 821740674 323360946 323360946 243663596 147194946 238324760 516639422 516639422 531305084 531305084 134236932 102892304 296278452 491961082 491961082 295124958 907297720 907297720 659063323 56920336 56920336 107240096 107240096 313028904 313028904 335577344 409233578 419504166 419504166 874811748 939644074 939644074 923144583 923144583 704259753 684531878 419445959 304954706 317603088 317603088 9447744 30712640 30712640 22113952 136499204 136499204 538709504 547373572 547373572 594678705 594678705 588251296 122220953 732476481 732476481 612616016 612616016 62527344 308281746 315621826 315621826 298434784 298434784 281387456 341082060 436990998 436990998 425510582 384815198 403142020 403142020 147535360 147535360 10314948 145423168 145423168 163758688 664772821 664772821 620062664 620062664 331423986 752984529 752984529 1014433386 1014433386 840563739 840563739 557125906 997590038 1041895053 1041895053 645953241 900304136 992617551 992617551 922796091 815580734 815580734 710978837 710978837 678816645 835850414 835850414 760267437 494437890 588194502 588194502 440220273 302271488 414968328 414968328 405305994 284522290 284522290 117458084 126110744 126110744 112905424 159912828 159912828 70344089 73127784 150870229 787552320 787552320 743646749 135872013 34087876 665927305 665927305 208610128 620757541 620757541 83923148 99953640 99953640 26399328 61784436 61784436 160122408 241713060 241713060 159128148 423633986 423633986 461383744 461383744 316515058 316515058 182521798 275598484 953720706 953720706 551745939 197462438 318972516 554121463 554121463 981216730 1009877177 1009877177 817416003 578709554 958222112 958222112 1066344235 1066344235 1029255404 279834104 390070458 390070458 385493394 325270162 346500770 346500770 307954922 307954922 755295340 755295340 867706112 867706112 303563409 247921112 362851044 362851044 474221890 762227336 762227336 78802121 103957380 270536840 341971338 912955826 912955826 509789062 559842304 559842304 846247582 846247582 874717393 874717393 70582568 89203368 89203368 71633440 54068768 44901280 44901280 321954769 862009697 862009697 587693833 861855411 861855411 385657899 823185043 823185043 1021646397 1021646397 1040261151 1040261151 692864156 598737777 598737777 413089350 659107652 907621627 907621627 827329528 901347174 901347174 870540688 903430753 903430753 696661231 743249929 743249929 679028613 678503301 678503301 220984620 822326838 839348762 839348762 654734480 644486553 626899917 633987197 678171856 746351361 746351361 640074512 37684225 706271957 706271957 552938433 728298069 728298069 984292117 984292117 887973100 887973100 197802367 147162447 218309670 637989970 665062475 665062475 598619373 566502561 167840379 752101935 752101935 765339488 765339488 976515657 976515657 220595140 805570308 926955523 926955523 554820129 584165305 584165305 538481360 538481360 698759440 698759440 550515473 582111920 592497201 709902177 709902177 636069217 636069217 465943797 465943797 699104230 699104230 792740629 957481599 957481599 458654510 606903105 606903105 342410634 819055200 819055200 636300777 633694049 564159232 539458049 55338288 550287248 625996005 801370381 801370381 715542808 33558592 231822848 383755052 383755052 72942827 919937659 919937659 868757040 440924310 848128315 919683894 919683894 785457885 785457885 632039433 579403976 69738705 394790010 560251016 623118633 730058156 763811949 763811949 195353105 821739904 883561803 943330958 943330958 738198657 642389145 833886582 833886582 957990650 957990650 315784293 185856564 859473872 859473872 292598663 724472866 724472866 551251478 680594458 680594458 371335749 67918080 67918080 743093380 743093380 887077061 887077061 608634386 608634386 169673012 222215720 689354100 689354100 190937124 190937124 141853508 456841442 456841442 299747127 545858625 681860486 818599107 1014175565 1014175565 568205025 893103529 893103529 554296353 746769224 746769224 740633097 974424321 974424321 493635816 613491150 613491150 342800846 500745922 500745922 42652752 639505442 639505442 571008489 571008489 604250113 635437545 860096626 860096626 352592001 337735434 369147930 369147930 339845264 591009305 592024240 592024240 664705073 664705073 629459049 563458840 563458840 617368408 711010851 747035741 948758535 948758535 914637533 542361690 307589826 307589826 307078290 612895820 671878149 671878149 320099112 320099112 732977408 732977408 520929886 520929886 935371351 935371351 866468513 863844065 863844065 853274794 853274794 312174305 49812752 76622856 183439952 183439952 179368922 839918808 839918808 470361102 912321738 912321738 1002680409 1002680409 995181134 995181134 386304497 933679336 933679336 166467201 166467201 793809020 793809020 491030762 491030762 282331842 474116243 474116243 997171026 997171026 942481539 876813240 475527822 278565440 47928864 343020352 343020352 402199296 402199296 273427064 400107258 400107258 296672610 296672610 87881450 357605256 357605256 352846890 388986128 388986128 593456360 835725521 835725521 696821885 696821885 681351769 1005279831 1005279831 942444100 942444100 824016459 940560801 951380640 951380640 725589550 725589550 947510718 947510718 837402791 977364337 977364337 746841429 279475231 547489224 604778027 838872150 838872150 667409905 667409905 688658029 785528573 785528573 682046085 767899496 767899496 510634416 510634416 460622014 597380824 597380824 217358312 987119575 987119575 337052613 297210241 297210241 120200992 23407008 176624116 176624116 794821993 794821993 973990935 979793280 979793280 802474749 237890844 961169124 961169124 988291072 988291072 419636613 1033834458 1033834458 602331633 951068484 951068484 300598176 187205175 9098304 12508992 12508992 149856324 541573249 541573249 551652288 673460680 751253709 1019398361 1019398361 918626523 674277172 574656135 883951012 883951012 529829166 515657310 466927918 165449540 165449540 199629300 199629300 172508144 150264516 93197798 531102586 531102586 416546546 416546546 519993932 816317763 816317763 290616027 629973165 629973165 602550287 238855947 744562840 744562840 769655649 769655649 961946896 961946896 541145856 289368096 20768000 20768000 18416672 18416672 85998976 123677576 123677576 25215072 25215072 10576160 124014528 124014528 42553024 85462512 85462512 619939145 619939145 558216137 957944384 957944384 1037594031 1037594031 966247023 965139303 492590667 733754983 733754983 538020399 426791078 553713791 553713791 368672800 368672800 847489034 847489034 742539318 194185707 338933416 338933416 244572578 902486217 902486217 985469444 985469444 1001400358 1001400358 1015940218 1015940218 997459296 687213971 591710385 837100775 837100775 1029626927 1029626927 549192486 610148296 610148296 511863900 511863900 175192292 175451028 362514540 362514540 525878444 525878444 296871736 332663994 462294800 462294800 273554562 178533878 98654682 508470508 629681336 629681336 449362984 360608506 872569216 872569216 816616685 1070203431 1070203431 823922211 683671749 847971360 864235635 864235635 694202691 591532209 591532209 369956122 105456954 105184000 124180920 274023752 585697907 837818968 837818968 641736833 641736833 365503090 496144536 512406762 749351898 828969303 1065353279 1065353279 805340264 631466353 541171938 541171938 271474202 591210760 1029838097 1029838097 1018830226 1018830226 726088676 816550277 816550277 990692470 992002359 992002359 949935713 949935713 50641456 70514432 70514432 129534352 129534352 121794392 96498072 89985856 131980032 131980032 185764404 185764404 17079344 63794804 189040148 189040148 171459968 171459968 188643232 188643232 36832784 36832784 35651856 33927296 13498240 15370752 277884482 280020482 313231240 342757650 342757650 311297032 329452832 329452832 326439112 88900736 88900736 69995520 507552304 507552304 442198844 339622252 339622252 836805610 1071920883 1071920883 968653765 968653765 962931111 657848437 512646222 502957056 738857030 888521420 888521420 911128244 911128244 712306486 712306486 569960624 140259696 173015316 173015316 172296956 906266984 906266984 860528798 860528798 1052368994 1052368994 806429187 308355474 506533904 506533904 372445828 504482586 504482586 1018329679 1018329679 237504526 524485297 524485297 331256769 883969883 883969883 608497698 628399872 813246339 875392907 875392907 684878479 760250104 934946424 934946424 484513283 946024839 946024839 965608122 965608122 311764160 311764160 247855964 247855964 572440085 572440085 408953026 1005517189 1005517189 818354950 893321428 893321428 693268505 208113608 646236249 646236249 630142185 630142185 606075689 585774033 548544169 348018566 348018566 727585751 727585751 315003746 510186300 510186300 834690995 834690995 202506402 588667425 588667425 367694848 367694848 218908608 152253540 152253540 217061132 217061132 165150848 237312968 237312968 324098624 395334440 395334440 312660306 575718033 670271410 812609552 845991315 845991315 549567641 938631640 938631640 371966555 322818744 343715897 343715897 850542443 850542443 345931730 596481361 596481361 1016119887 1016119887 974371119 884442098 1073216511 1073216511 842148372 469860920 556668203 556668203 584854104 722254184 722254184 845398491 845398491 802055274 802055274 752593587 752593587 459948558 815445638 815445638 646483770 646483770 576471489 576471489 535563199 489180223 441747904 1022387360 1022387360 668160024 668160024 655070564 635552473 220894308 709365296 709365296 422696589 422696589 939913036 939913036 758305581 758305581 675954984 42581456 42581456 7670928 7670928 7238400 279126096 279126096 11087954 0 0 4216836 273043460 307842182 307842182 40506550 140540340 270673956 422000934 729908357 729908357 352201240 730458647 730458647 90443144 269094680 269094680 658783907 658783907 353088036 736229685 736229685 539093318 989144080 989144080 956043207 686575561 620666308 419172294 101400534 990159013 990159013 858328117 858328117 973749688 973749688 890166315 302510139 445272092 907415056 907415056 141565599 821740674 821740674 709348378 581401588 581401588 608822409 608822409 238324760 827378983 827378983 846108309 846108309 1010750213 1010750213 1066362210 1066362210 531149093 856727153 878625562 979701208 979701208 657811952 605920628 605920628 538682227 538682227 470928660 469805271 469805271 1051450981 1051450981 939644074 939644074 923144583 923144583 704259753 202360017 46662864 524496 30544096 30544096 9361728 30712640 30712640 22113952 14714976 18326048 76938307 872905291 881019595 881019595 788316675 788316675 1033235055 1033235055 1009502583 933078455 1029841700 1029841700 634246176 707357516 707357516 563422465 851474962 851474962 813493719 813493719 705397956 719016449 719016449 757602880 757602880 656279981 593436217 777561256 777561256 145423168 11567620 664772821 664772821 620062664 620062664 419245892 752984529 752984529 1014433386 1014433386 874784315 874784315 690621552 997590038 1041895053 1041895053 683701348 957004868 992617551 992617551 922796091 815580734 815580734 710978837 710978837 678816645 607355270 760267437 760267437 230281282 739734748 804913329 804913329 600317872 305515394 305515394 187007620 284522290 504241366 504241366 494421816 494421816 208822752 208822752 187343952 187343952 113439016 150870229 181679949 181679949 130682944 252381244 252381244 665927305 665927305 235566948 620757541 620757541 33920464 39661200 202570384 202901004 202901004 94065256 205207308 247627684 247627684 53791536 138328580 146329554 461383744 461383744 316515058 316515058 182521798 275598484 953720706 953720706 551745939 50546949 29759712 554121463 554121463 231285901 1009877177 1009877177 817416003 578709554 958222112 958222112 1066344235 1066344235 1029255404 302370864 390070458 390070458 385493394 325270162 84803816 245925332 245925332 80866896 755295340 755295340 850120936 850120936 1034096624 1034096624 479075406 362851044 135667656 762227336 762227336 667252609 1055172425 1055172425 341971338 1057054765 1057054765 779143081 779143081 643243299 846247582 846247582 874717393 874717393 364093802 372776538 392458064 392458064 63414592 25368848 19083264 19083264 3933650 298098330 298098330 861855411 861855411 269245953 823185043 823185043 945589663 945589663 1040261151 1040261151 366773352 366773352 174594324 263101684 405281026 405281026 827329528 827329528 340577418 340577418 870540688 880754571 880754571 696661231 743249929 743249929 679028613 743123328 743123328 528273342 661192637 661192637 392951226 352499776 82628632 626899917 633987197 633987197 746351361 746351361 675354324 675354324 549074308 203162328 203162328 114298380 487907494 550330941 550330941 887973100 1059838132 1059838132 982004031 906442074 906442074 665062475 665062475 598619373 566502561 134354496 134354496 9572352 479858896 644355674 976515657 976515657 961815050 961815050 165753540 537937640 554820129 630239940 756205421 756205421 682251081 698759440 698759440 152312677 135680556 162579300 162579300 242600296 242600296 241730580 241730580 134245384 67371812 201326728 492044484 500435694 888314748 888314748 606903105 606903105 342410634 819055200 819055200 636300777 633694049 564159232 539458049 277607490 550287248 625996005 801370381 801370381 715542808 42280960 231822848 383755052 407182352 407182352 919937659 919937659 868757040 749585797 749585797 919683894 919683894 401869818 523315488 721767364 721767364 560234640 589613361 589613361 623118633 623118633 285212706 334506599 334506599 821739904 821739904 943330958 943330958 755824648 708021765 833886582 833886582 757854272 634790949 681099852 747633741 747633741 563208801 673350979 692985637 692985637 551251478 595737906 595737906 581752850 646279704 694021797 694021797 442170395 294382300 441899670 965701098 965701098 360499598 993033016 993033016 689354100 389032813 887353803 887999387 918566328 918566328 956495588 956495588 1021036207 1071869789 1071869789 1009666655 156875623 893103529 893103529 554296353 746769224 746769224 649990520 974424321 974424321 320976367 613491150 613491150 342800846 573579298 822186563 822186563 639505442 639505442 717315546 717315546 707595625 635437545 835004682 835004682 361508411 337735434 369147930 379139548 379139548 375939552 375939552 87338016 70903560 69242376 27003144 34604392 119278976 617368408 617368408 244596884 244596884 1045588678 1045588678 772572292 852869331 852869331 558284898 738778283 738778283 706401813 361562218 714350268 714350268 194383896 460640583 460640583 935371351 935371351 701596235 654378696 601433841 226570653 685603092 685603092 584142672 584142672 165649332 614488712 983968217 983968217 671156610 835342408 835342408 239277202 1002680409 1002680409 995181134 995181134 939611432 937066339 865400725 171926269 171926269 80244326 1028181136 1066180799 1066180799 618059955 132145168 417206624 1066486822 1066486822 941878178 941878178 475527822 430498372 511241664 511241664 343020352 402199296 402199296 343020264 343020264 16912416 47896272 47896272 47433616 90452672 90452672 84420040 104927320 109191320 109191320 608917224 608917224 103168145 700342928 723068469 723068469 545618757 942444100 942444100 824016459 758092960 767235722 767235722 873367082 873367082 947510718 947510718 837402791 977364337 977364337 746841429 279475231 547489224 604778027 838872150 838872150 667409905 667409905 688658029 785528573 785528573 682046085 767899496 767899496 271085762 909117714 909117714 85468971 217358312 217358312 213598020 228918532 228918532 100706340 30747360 110430625 748711833 748711833 69866760 794821993 794821993 973990935 979793280 979793280 799283842 874253835 961169124 1070534095 1070534095 988291072 419636613 990523591 990523591 149497284 951068484 951068484 157958371 272629890 282756130 282756130 430825988 430825988 149856324 144268672 150251904 673460680 751253709 1019398361 1019398361 918626523 315411666 315411666 315361490 57789602 140767620 152881028 152881028 136281988 13723840 139138756 139138756 150264516 150264516 93197798 531102586 531102586 416546546 416546546 519993932 519993932 211530468 752248520 752248520 651831197 1053196564 1053196564 864460869 864460869 136577280 136577280 11082016 28714240 28714240 3408640 20768000 20768000 90499464 93638152 93638152 92618256 49749696 49749696 69652608 69652608 124014528 124014528 110081416 108301568 108301568 619939145 619939145 558216137 545674753 545674753 1037594031 1037594031 966247023 965139303 492590667 733754983 733754983 282265810 6605184 775538448 775538448 310734167 307609680 847489034 847489034 722094458 414880010 414880010 338933416 244572578 902486217 902486217 985469444 985469444 834157393 574096195 196820592 997459296 997459296 687213971 139075077 814897698 814897698 764549225 764549225 549192486 610148296 610148296 231252064 231252064 175192292 175451028 175451028 154176904 154176904 211422312 234885912 332663994 462294800 462294800 273554562 694717745 694717745 508470508 713038401 713038401 708845745 569622641 572661608 572661608 593363082 1070203431 1070203431 823922211 588261520 847971360 864235635 864235635 694202691 591532209 591532209 304087472 809502744 809502744 124180920 915539344 915539344 930157498 930157498 641736833 641736833 286519842 491394074 491394074 507155833 828969303 1065353279 1065353279 631466353 631466353 406891570 693244581 974732877 1054735900 1054735900 1045935138 489541761 382510358 726088676 726088676 463784310 990692470 992002359 992002359 88995543 87283977 555035169 555035169 606888232 606888232 129534352 63621504 28980816 22836064 105500320 105500320 185764404 344163329 344163329 510182298 510182298 313711671 626576514 626576514 592442017 592442017 592060849 811640704 811640704 842323712 842323712 540117440 311699776 280020482 313231240 342757650 342757650 311297032 329452832 329452832 80786048 88900736 272913298 272913298 89418243 723372853 723372853 936818914 936818914 836805610 1071920883 1071920883 968653765 968653765 962931111 512646222 512646222 493540782 485230792 888521420 888521420 750562893 750562893 623293005 276304999 208233868 207824008 207824008 173015316 79311764 43788760 2146560 860528798 860528798 1045451953 1045451953 806429187 962666919 962666919 841161250 520311462 907577719 907577719 1018329679 1018329679 237504526 524485297 524485297 1023738926 1023738926 892682889 892682889 628399872 813246339 875392907 875392907 305271570 273812234 274334400 318715542 442514312 505813278 505813278 965608122 965608122 185468568 73013348 92747348 177944680 422777348 422777348 408953026 427819110 427819110 297457506 429651360 429651360 150656964 208113608 208113608 82652416 82652416 54072448 54072448 16475344 6178624 80301184 80301184 213081874 480876480 480876480 404238516 404238516 369617822 369617822 362609992 362609992 324069068 266467122 241401938 353714686 353714686 221877256 362295610 362295610 165150848 237312968 237312968 324098624 365955576 365955576 270932098 875954440 875954440 876348680 876348680 805828611 549567641 938631640 938631640 371966555 811265856 811265856 641080089 850542443 850542443 345931730 596481361 596481361 35983912 85074010 550861376 550861376 288459138 842148372 842148372 320313705 570150996 753586373 753586373 722254184 722254184 770296915 770296915 802055274 802055274 752593587 752593587 989036503 989036503 815445638 843132192 843132192 576471489 576471489 626392951 652304861 953251936 953251936 780297010 780297010 953247463 953247463 544420740 878778217 878778217 829286150 877889126 877889126 939913036 939913036 758305581 758305581 675954984 150328198 150328198 145182098 1002385507 1002385507 720739760 720739760 286971426 555671206 555671206 978377349 978377349 543562113 673765636 673765636 455270418 455270418 238454264 729908357 729908357 352201240 730458647 730458647 322165542 339609984 488902150 658783907 658783907 353088036 736229685 736229685 298746848 524590848 528144318 624406416 624406416 255975612 255975612 24613820 21450784 822870144 858328117 858328117 973749688 973749688 890166315 302510139 445272092 680266013 680266013 596284934 723129909 723129909 949156483 949156483 910295065 637538459 608822409 157548824 827378983 827378983 846108309 846108309 1010750213 1010750213 1066362210 1066362210 531149093 856727153 878625562 979701208 979701208 657811952 605920628 605920628 538682227 538682227 470928660 796563035 796563035 1051450981 1051450981 921225600 491874190 971191918 971191918 619834321 202360017 305923586 321596162 321596162 329391552 329391552 57724064 57724064 51654672 61584992 61584992 76938307 872905291 881019595 881019595 788316675 788316675 1033235055 1033235055 1009502583 933078455 1029841700 1029841700 634246176 707357516 707357516 563422465 851474962 851474962 813493719 813493719 705397956 719016449 719016449 757602880 757602880 656279981 593436217 777561256 777561256 88608392 90007208 201363104 201363104 344006858 344006858 419245892 491594926 491594926 223883494 120665852 874784315 874784315 690621552 690621552 632365929 683701348 683701348 957004868 957004868 717488258 92383266 332261444 332261444 244090908 260120700 557850629 607355270 623956483 623956483 504365598 739734748 804913329 804913329 600317872 301249860 301249860 187007620 279052080 504241366 504241366 494421816 494421816 208822752 208822752 187343952 277168386 300197984 300197984 281282754 145699092 130682944 294654722 294654722 271581954 283141128 427779810 427779810 520366626 520366626 504441648 202570384 202901004 202901004 94065256 205207308 247627684 247627684 53791536 138328580 172507584 530883865 997001015 997001015 349274471 281888410 281888410 277712129 41218962 529514922 723519573 723519573 576903472 1066944809 1066944809 851519012 207030784 84467896 256039308 256039308 511443678 511443678 176752384 302370864 487376052 487376052 467874832 467874832 351518872 92684320 92684320 14289928 7866240 88805202 601543067 850120936 850120936 1034096624 1034096624 479075406 899042889 899042889 890513632 890513632 667252609 1055172425 1055172425 455862075 1057054765 1057054765 779143081 779143081 643243299 643243299 526960062 906209162 906209162 843199105 552050824 669976744 669976744 624965472 104483728 54700016 49507120 63754448 63754448 58622856 562172001 562172001 105566273 553780481 553780481 50103808 50103808 42287488 50694208 75614400 146160348 146160348 263101684 263101684 140528552 234622956 966197921 966197921 890769636 810878090 357504075 232471075 22884000 635766601 635766601 604935980 758437408 758437408 528273342 745554297 745554297 619328953 352499776 82628632 110236248 152583736 152583736 622530540 622530540 675354324 676083028 676083028 603795749 603795749 568721201 552987585 551596981 551596981 1059514336 1059838132 1059838132 982004031 906442074 906442074 562085985 587760839 587760839 289415471 342605079 431473027 431473027 217646630 488683395 970720646 970720646 961815050 961815050 958281835 408428385 203031460 692074093 756205421 756205421 682251081 571670564 537079861 598213709 635243888 804891353 804891353 618272457 618272457 583927453 492577666 479011253 585698226 585698226 581329825 814744131 888314748 888314748 371963480 371963480 15987648 274760970 274760970 338182530 338182530 295346816 277247170 277607490 277607490 269172800 4977792 947392 42280960 42280960 8856288 379859752 407182352 407182352 36313774 775474572 775474572 749585797 749585797 675553420 755354574 755354574 523315488 721767364 721767364 640036882 640036882 606664914 566924892 433571637 970099587 970099587 334506599 461497438 461497438 220203824 755824648 755824648 708021765 708021765 757854272 757854272 634790949 681099852 747633741 747633741 563208801 673350979 692985637 692985637 464420900 595737906 595737906 581752850 646279704 694021797 694021797 442170395 294382300 441899670 965701098 965701098 360499598 993033016 993033016 414197636 389032813 887353803 887999387 918566328 918566328 956495588 956495588 1021036207 1071869789 1071869789 847336018 817531217 419463196 419463196 385925178 353419818 353419818 235946038 36750096 134465592 252131388 252131388 243982612 53292336 573579298 822186563 822186563 49318176 49318176 717315546 717315546 707595625 230809836 818679184 818679184 361508411 133557848 133557848 379139548 613151817 613151817 375939552 83935272 83935272 631521537 631521537 546573136 597961665 597961665 549931888 578853184 578853184 1045588678 1045588678 772572292 852869331 852869331 824136769 738778283 738778283 706401813 361562218 775131220 966023190 966023190 460640583 460640583 765097153 765097153 893746280 893746280 818599107 686052143 686052143 685603092 584142672 584142672 165649332 614488712 983968217 983968217 871654614 835342408 835342408 187180340 437871336 437871336 352464902 939611432 939611432 937066339 865400725 233207792 233207792 80244326 1028181136 1066180799 1066180799 860881097 207135861 132145168 1066486822 1066486822 941878178 941878178 430498372 430498372 511241664 511241664 299373386 299373386 285263048 343020264 343020264 181486004 181486004 61559264 61559264 90452672 90452672 84420040 52106112 85823016 612813345 612813345 827106880 836239474 836239474 723068469 723068469 822365356 822365356 815217219 604913664 93930568 93930568 353917963 873367082 873367082 86118696 86118696 481501520 481501520 277472322 235840844 235840844 212425756 100944416 235280412 240427464 240427464 102395676 143472140 407127440 493901024 493901024 493510560 493510560 271085762 909117714 909117714 657965488 657965488 96837257 125528672 125528672 36965136 36965136 30747360 110430625 748711833 748711833 90507692 82363848 92148529 92148529 885392703 885392703 799283842 874253835 874253835 1070534095 1070534095 461730032 466228470 564199473 673214662 673214662 562685157 545826465 538519041 337674626 341946728 345457934 430825988 430825988 112615192 928318033 928318033 971931230 971931230 781733019 781733019 766774575 1038352871 1038352871 899786752 899786752 495552638 495552638 730370880 743474278 743474278 13419008 13419008 4491264 24089000 209314920 216670184 216670184 98689512 98607372 361789221 891657483 891657483 752248520 752248520 986446902 1053196564 1053196564 864460869 864460869 820249396 820249396 955522064 955522064 550504448 270798624 19180960 22110208 90499464 93638152 93638152 92618256 49749696 56746416 69652608 69652608 48683472 110081416 110081416 108301568 108301568 107833792 72681960 130414448 130414448 105790168 86505736 95556456 95556456 107826008 107826008 159045577 159045577 228774252 228774252 775538448 775538448 310734167 307609680 975871456 975871456 722094458 414880010 414880010 53892964 217474464 217474464 137702148 35130705 834157393 834157393 574096195 508463386 840849572 840849572 591402602 591402602 814897698 814897698 562350177 549258756 549258756 418508705 404142016 231252064 253398456 253398456 236294396 184323964 113302020 239599728 239599728 234885912 234885912 214699756 214699756 140401804 732278144 732278144 92620968 713038401 713038401 708845745 685040804 561796265 104335128 269484032 772961485 772961485 798031928 798031928 571293361 571293361 662839446 1038426156 1038426156 304087472 329302107 809502744 809502744 902733593 915539344 915539344 930157498 930157498 327402144 327402144 286519842 470022152 470022152 361988366 639784050 866698547 917013861 917013861 640428337 550443317 693244581 974732877 1054735900 1054735900 1045935138 688390176 699268964 972973188 972973188 241245423 678489319 678489319 149346756 109987974 174274692 555035169 555035169 606888232 606888232 359962584 43222144 35664560 22836064 105500320 105500320 126354746 371810376 371810376 510182298 510182298 313711671 626576514 626576514 592442017 592442017 592060849 811640704 811640704 842323712 842323712 540117440 311699776 47457920 47457920 45891968 15987648 15987648 78860570 78860570 71465546 56041744 272913298 824389923 1062152515 1062152515 979288099 979288099 936818914 806869564 1056446096 1056446096 843266284 866723187 866723187 715276688 328635701 296891082 337395378 337395378 69854472 69854472 2719752 2484480 208233868 208233868 228261020 228261020 206649712 206649712 907035688 907035688 451884613 602672625 602672625 397246201 484685118 962666919 962666919 841161250 794637908 907577719 907577719 601253569 601253569 753335236 753335236 502407649 1023738926 1023738926 892682889 961817764 961817764 784748607 656836305 305271570 305271570 48830976 274334400 351220884 351220884 780091293 780091293 574697235 244450396 185468568 176694872 417610754 417610754 1014547577 1014547577 308609940 440619076 440619076 297457506 679993604 735309588 735309588 53441656 79504136 82652416 82652416 52507648 103251896 103251896 103180312 103180312 80301184 69854472 480876480 480876480 404238516 404238516 369617822 369617822 589763804 644396228 644396228 1010978840 1010978840 429447474 977765990 977765990 768680685 575288721 577451409 588845984 588845984 301077136 365955576 365955576 270932098 875954440 875954440 876348680 876348680 805828611 69836043 22675488 17439392 94854616 811265856 811265856 641080089 641080089 97933112 97933112 77730120 136121673 1054082005 1054082005 805896798 918686020 1046878623 1046878623 991392651 487025431 570150996 753586373 753586373 804689888 804689888 707833410 989855799 989855799 541261939 179216550 679947782 989036503 989036503 594587745 843132192 843132192 291048866 291048866 626392951 679047856 953251936 953251936 780297010 780297010 953247463 953247463 232965836 878778217 878778217 829286150 877889126 877889126 356451016 356451016 209855234 69766148 166962176 406019044 406019044 145182098 1002385507 1002385507 720739760 720739760 433399894 555671206 555671206 978377349 978377349 543562113 673765636 673765636 455270418 455270418 238454264 386730814 386730814 225782784 225782784 322165542 322165542 339609984 488902150 488902150 437651516 54861856 54861856 298746848 550938636 976232464 976232464 624406416 624406416 255975612 255975612 24613820 21450784 440524848 440524848 426492034 292214178 170649006 849543248 849543248 337952000 680266013 680266013 596284934 723129909 723129909 949156483 949156483 910295065 637538459 525599238 257034758 256116924 256116924 102762916 22160096 13697696 16826400 537234944 537234944 440475798 947143026 947143026 656463888 656463888 67155984 183206764 183206764 235242848 235242848 444876437 975514876 975514876 932890739 921225600 921225600 491874190 971191918 971191918 619834321 860002929 860002929 591531649 807615696 807615696 329391552 104781992 104781992 55578800 101408328 101408328 50554112 50554112 20445984 20445984 15958528 9732384 12583104 12583104 49344 4194432 34095168 34095168 246427930 980148934 980148934 384314154 612234274 612234274 100850226 361370730 472060650 472060650 375599514 744204560 744204560 75455133 135007236 135007236 73215624 147678340 148598656 201363104 263898186 263898186 375415666 375415666 106955034 78868752 88605864 88605864 402752004 402752004 886604352 886604352 877184139 619209891 568927713 93390729 717488258 717488258 890046547 890046547 427925066 293752352 260120700 260120700 21595356 436224520 504365598 504365598 323886258 323886258 300300656 300300656 61282786 31642528 31642528 34898064 140904528 140904528 187877880 187877880 90493732 65570224 23750072 277168386 300197984 300197984 281282754 19311202 28970690 294654722 294654722 271581954 311717784 427779810 427779810 520366626 520366626 504441648 107756176 107756176 70989576 42416128 45298512 49733040 179477136 179477136 144886324 172507584 530883865 997001015 997001015 618114259 618114259 645348300 645348300 942806961 942806961 723519573 723519573 690037041 1066944809 1066944809 851519012 89678400 28748972 196922380 196922380 511443678 511443678 176752384 183241084 487376052 487376052 467874832 467874832 351518872 92684320 254839060 254839060 85248552 238295068 385973792 387611352 387611352 305474272 305474272 356745216 899042889 899042889 897606460 897606460 667208380 848199253 848199253 455862075 900016491 900016491 605027337 638053793 638053793 339077898 347422794 906209162 906209162 843199105 552050824 669976744 669976744 624965472 104483728 60162720 49507120 63754448 63754448 84073632 562172001 562172001 105566273 553780481 553780481 546440768 542658497 39846288 39846288 34514560 68292232 236979840 236979840 417501522 417501522 247252952 1018220206 1018220206 890769636 810878090 802965054 461257108 461257108 635766601 635766601 604935980 758437408 758437408 224559117 745554297 745554297 619328953 57151408 43543432 110236248 152583736 152583736 622530540 622530540 23666209 676083028 676083028 603795749 603795749 568721201 552987585 551596981 551596981 1059514336 1059514336 961694157 471063109 479380005 562037284 562085985 587760839 587760839 289415471 569428383 569428383 739398518 968999012 968999012 970720646 970720646 886908206 958281835 958281835 691151368 203031460 692074093 692074093 69427968 571670564 571670564 537079861 598213709 635243888 804891353 804891353 618272457 618272457 583927453 492577666 479011253 585698226 585698226 581329825 814744131 814744131 572918290 371963480 371963480 15987648 346349024 346349024 290361450 295346816 295346816 26393232 64486896 116254820 250871084 250871084 226893340 226893340 139760840 139760840 209589724 257116780 257116780 663857713 663857713 441475458 822824567 822824567 675553420 755354574 755354574 416795976 543981965 543981965 640036882 640036882 606664914 566924892 433571637 970099587 970099587 595143186 595143186 520820308 520820308 342496650 342496650 448923800 448923800 293474670 876663970 876663970 406987531 150056194 141208610 405799686 547881026 547881026 545074177 441567506 441567506 426943730 437108128 437108128 98492136 98492136 156784308 257449092 257449092 411148508 411148508 239190170 222111080 414197636 414197636 259359408 73708396 165480628 207883452 243665368 243665368 324557744 324557744 317479264 847336018 847336018 817531217 1058181675 1058181675 822264323 822264323 790104596 790104596 369905162 330503904 342174090 458129764 458129764 256137600 256137600 208580296 51457696 568870496 568870496 135263312 135263312 952451360 952451360 126608424 126608424 67111040 71567496 71567496 67676288 613151817 613151817 111625304 623909632 623909632 631521537 631521537 546573136 597961665 597961665 881282131 881282131 578853184 714900614 911213211 911213211 526058657 824136769 824136769 604397848 604397848 573045009 135300043 775131220 975208768 975208768 742916442 526064595 526064595 996738890 996738890 893746280 818599107 797265879 686052143 409495813 115352064 115352064 213027736 213027736 235089948 871654614 871654614 403002897 709193624 961415957 961415957 437871336 324236878 394758251 461852274 461852274 459695209 233207792 233207792 660058314 1029303835 1029303835 860881097 906052728 906052728 126394395 85169960 85169960 73973920 343375906 476631312 476631312 242898432 242898432 208217792 181112948 83624316 31810528 31810528 272499376 272499376 61559264 274270128 274270128 132198130 76361496 63171192 60731824 612813345 612813345 827106880 836239474 836239474 656008761 656008761 822365356 1019122989 1019122989 758991693 879664358 1010154663 1010154663 717776907 473863027 614082614 614082614 536872458 481501520 343653842 149316806 140923072 85080112 94496784 235280412 240427464 240427464 102395676 143472140 407127440 407127440 131401783 1020338895 1062338679 1062338679 639261526 639261526 1055969980 1055969980 856633116 548406081 557539521 780592535 780592535 585649333 564398433 137404824 137404824 90507692 82363848 563746442 563746442 390631397 865611322 865611322 512765802 555920416 1002474631 1002474631 461730032 466228470 564199473 673214662 673214662 562685157 545826465 538519041 337674626 341946728 345457934 345457934 276492704 112615192 928318033 928318033 971931230 971931230 781733019 781733019 766774575 1038352871 1038352871 899786752 899786752 495552638 495552638 730370880 743474278 743474278 152618532 136872864 137004164 137004164 209314920 216670184 216670184 98689512 98607372 361789221 891657483 891657483 546275393 546275393 986446902 986446902 814168449 814168449 727713906 820249396 820249396 955522064 955522064 550504448 270798624 17835552 38472224 39077376 39077376 50622464 50622464 35701440 56746416 56746416 39173712 23653632 19601216 19601216 15094912 15094912 12650560 17713696 34002960 35363168 63086592 63086592 39521312 31011456 77137864 103842576 159045577 159045577 228774252 228774252 155962789 155962789 587868833 587868833 975871456 975871456 485363404 271717122 367007976 367007976 205955109 625473705 1052301513 1052301513 891648782 384989522 897489794 897489794 840849572 840849572 591402602 591402602 551598729 367152075 353693099 819224614 819224614 800187749 759624900 55142592 253398456 253398456 236294396 184323964 145266500 239599728 239599728 225738856 174328088 214699756 214699756 140401804 732278144 732278144 92620968 197255412 197255412 689067920 689067920 104335128 345767956 513543774 772961485 772961485 798031928 1015945712 1015945712 681848203 662839446 1038426156 1038426156 235112792 329302107 571921233 629425281 902733593 902733593 824754409 810730097 467497751 862391231 862391231 699353683 694298790 694298790 671409158 639784050 866698547 917013861 917013861 640428337 550443317 654520377 654520377 390169704 537603104 554047521 688390176 699268964 972973188 972973188 241245423 678489319 678489319 149346756 109987974 319761920 388853266 388853266 401360232 401360232 359962584 130073488 130073488 103002976 87576896 125871336 126354746 371810376 915575674 915575674 335695880 335695880 18794624 21133344 21133344 4581504 29675872 29675872 6586880 11600192 27107360 45195576 71886408 91760552 125846864 125846864 33079904 15987648 15745920 281134192 293848946 296809442 296809442 824389923 1062152515 1062152515 979288099 979288099 501136413 790055876 1056446096 1056446096 1027502336 779975519 715276688 715276688 328635701 296891082 337395378 349463822 754908996 754908996 731046621 731046621 413260451 151250464 228261020 228261020 206649712 593296453 907035688 970785680 970785680 1027217199 1042209423 1064440767 1064440767 1063700992 233698768 233698768 794637908 794637908 841906275 1034863423 1034863423 753335236 753335236 860510835 937150942 937150942 342714888 961817764 961817764 784748607 656836305 323159680 394404018 394404018 282598642 499200236 525870534 780091293 780091293 665322873 665322873 570754409 875311121 875311121 417610754 1014547577 1014547577 308609940 440619076 440619076 180703490 679993604 735309588 735309588 143462464 143462464 79504136 18787848 18787848 103251896 138170708 437431712 437431712 375332778 309280146 70062234 353519528 353519528 286837424 326244146 326244146 589763804 1034762381 1034762381 1010978840 1010978840 429447474 977765990 977765990 768680685 575288721 577451409 588845984 588845984 271999618 271999618 124846208 371412794 371412794 869766331 869766331 303981474 625993842 625993842 891676955 891676955 893480576 893480576 904704410 904704410 814812771 594535872 572945921 270846210 604581001 1054082005 1054082005 890640939 918686020 1046878623 1046878623 991392651 487025431 503386676 624177921 624177921 804689888 804689888 707833410 989855799 989855799 580912848 544737153 148638021 168036372 168036372 34401280 34393104 289432848 289432848 17109248 51976512 679047856 724227381 724227381 697314304 599869600 599869600 591740928 595320977 682996795 877337610 877337610 153300718 697066118 697066118 689463621 86351908 86351908 166962176 812715968 814303298 814303298 327263408 327730290 404782582 433399894 433399894 253094460 253094460 159045540 258276622 439477014 439477014 410581458 336821924 84065124 135912344 784880241 784880241 262450644 629031049 629031049 409660816 309021856 503553206 704704519 704704519 298949232 1066902261 1066902261 550938636 976232464 976232464 1062273822 1062273822 728785342 544218282 544218282 537156737 457390212 424411299 86255672 145016188 370683228 849543248 849543248 67810078 402653190 402653190 402653190 402653190 346869066 544506692 544506692 543285633 927285505 927285505 860555272 1009544379 1009544379 776727847 303256947 825787041 825787041 888096991 888096991 440475798 947143026 947143026 656463888 910652227 910652227 380060377 47219648 24327072 363218186 363218186 975514876 975514876 932890739 627781194 772463800 772463800 1030324740 1030324740 470792323 860002929 860002929 591531649 807615696 807615696 46476640 127405856 127405856 55578800 101408328 101408328 86901600 831924259 831924259 822532131 758729511 758729511 976100631 976100631 992613203 992613203 969902652 969902652 1062621216 1062621216 980148934 384314154 612234274 612234274 593030017 593030017 723848128 723848128 681418753 375599514 722967856 722967856 799353213 799353213 717373836 151517220 148598656 148598656 263898186 263898186 375415666 375415666 106955034 354729826 499348290 499348290 1031261853 1031261853 886604352 886604352 881017261 881017261 794837857 569731177 1070181355 1070181355 890046547 890046547 725392971 725392971 548273575 548273575 326819266 915583981 915583981 835035682 553976227 862324832 862324832 61999554 817272581 817272581 765258564 765258564 376696102 376696102 394888656 394888656 238554380 193294016 249931128 249931128 297354992 297354992 306913296 306913296 104615122 67424008 356304688 356304688 311717784 311717784 260073588 260073588 209850444 369485850 369485850 311069834 275271632 42416128 371193408 371193408 268520344 270875160 270875160 150031958 265628815 378540155 378540155 786969476 786969476 645348300 645348300 942806961 942806961 645939264 690037041 690037041 779822020 779822020 634467492 432881936 370178722 299887336 196922380 227543972 227543972 193257716 355547618 355547618 303284752 294590624 526523414 526523414 348127434 254839060 254839060 94097760 349804618 385973792 385973792 373663994 80169112 231977002 356745216 356745216 302247954 897606460 897606460 259393657 129401664 129258432 398414752 398414752 604288000 605027337 856348163 856348163 90786841 112469064 112469064 690028888 690028888 67108872 67108872 125199416 125199416 60162720 60162720 21314464 21314464 88737824 88737824 84073632 16961568 23729568 631472369 631472369 546440768 542658497 83532616 611639584 611639584 594905092 594905092 236979840 953934528 953934528 808806544 1018220206 1018220206 715768331 802965054 802965054 461257108 461257108 49098192 92285592 536923008 544476033 544476033 7651329 83966144 570546313 642248680 642248680 624776809 638722841 638722841 573119093 652437704 652437704 747234381 747234381 705242133 970687743 970687743 754710477 754710477 197489576 197489576 906035200 906035200 109389912 873832512 873832512 705166911 285740644 567243974 567243974 1011256450 1011256450 569428383 739398518 968999012 968999012 447963926 709960341 980525210 980525210 691151368 691151368 323741430 327369622 327369622 418653760 418653760 298129696 135081216 134481920 134481920 155152896 155152896 125116964 182707680 228903276 228903276 104889140 92536968 92536968 386017360 386017360 298677986 280838816 280838816 73926024 73926024 346349024 346349024 290361450 288330338 286917634 286917634 402532564 463285208 463285208 250871084 226893340 226893340 139760840 139760840 209589724 257116780 257116780 663857713 663857713 441475458 822824567 822824567 551523971 551523971 282016449 416795976 543981965 543981965 109527576 88081624 44120392 377872730 377872730 849609622 849609622 595143186 595143186 520820308 520820308 342496650 487260332 487260332 218197506 615843460 876663970 876663970 757273060 757273060 630955877 555929345 806742529 824230179 824230179 153698563 174401940 174401940 201277428 215324092 215324092 403147098 403147098 437554208 437554208 229451246 406908912 406908912 372490530 372490530 436531344 436531344 405066076 158859404 169482376 236584734 277553939 899729563 899729563 829949859 934355835 934355835 1035555179 1058181675 1058181675 822264323 965788263 965788263 917383451 917383451 746387336 914696283 914696283 657627768 490068344 806456866 806456866 51457696 568870496 568870496 135263312 207669660 952451360 952451360 930478704 930478704 96724984 506463006 506463006 730056795 730056795 699450213 133000861 623909632 623909632 563399265 563399265 194166960 128181576 553925410 881282131 881282131 681459143 714900614 911213211 982915152 982915152 915738696 525718061 604397848 918356313 918356313 873851403 873851403 975208768 975208768 742916442 526064595 947421999 996738890 999958230 999958230 893297195 903564641 903564641 680169760 687954984 687954984 213027736 558587300 692805913 736104896 736104896 662801412 709193624 961415957 961415957 706217896 725873689 725873689 680612432 461852274 764040820 764040820 714866777 660058314 1029303835 1054871258 1054871258 906052728 906052728 305643905 545743644 945741447 945741447 945007616 476631312 476631312 242898432 273477396 273477396 215958190 268606262 268606262 362141974 362141974 272499376 275320968 275320968 313662760 313662760 283515538 363086688 363086688 592141456 608575537 641388729 641388729 587623990 656008761 656008761 624269004 1019122989 1019122989 960374765 960374765 1010154663 1010154663 717776907 597036061 614082614 614082614 536872458 436802380 541999232 541999232 282002569 83984408 94496784 120660792 558781312 558781312 476126080 476126080 330287444 268280554 386105918 1020338895 1062338679 1062338679 940569451 1035593583 1055969980 1055969980 856633116 548406081 662498023 780592535 780592535 585649333 564398433 552239129 703517093 810179919 810179919 809915849 563746442 549209118 865611322 865611322 832354856 832354856 621789539 312475986 1000154866 1000154866 988023255 520759540 520759540 476055116 476055116 357736512 283759938 283759938 25368352 25368352 157739652 157739652 153166116 139774628 150999568 386925092 386925092 353505834 82870308 156549848 275252124 404750598 404750598 404750598 404750598 404750598 145126724 152618532 159095040 159095040 147194592 137004164 248002590 379335978 379335978 326633394 444796766 470134168 470134168 228676940 162831084 261761836 261761836 372556048 372556048 274326784 151603456 151603456 151226884 143922272 17470496 18720256 18720256 19243048 107373960 123759528 123759528 289885594 357283877 1008239567 1008239567 781948925 1021295583 1021295583 923837189 868310515 868310515 858624721 581656901 701972100 701972100 681051717 549939024 193370576 39521312 31011456 77137864 77137864 50179968 101746320 112538520 112538520 75940368 45960499 587868833 587868833 940656306 940656306 485363404 403727892 367007976 367007976 209880104 625473705 1052301513 1052301513 891648782 609123049 897489794 897489794 478418855 609261960 609261960 611588073 819429799 1016245990 1016245990 819224614 819224614 800187749 759624900 55142592 187268784 204916840 204916840 146429136 145266500 85511436 25691232 8391840 119960128 122415008 122415008 30644904 13632192 13245568 38027264 572262400 572262400 689067920 689067920 92176773 814814142 814814142 720581589 613681032 613681032 1015945712 1015945712 681848203 776155293 776155293 757121325 757121325 153108489 39229720 806787584 806787584 847286400 847286400 384693907 384693907 862391231 862391231 699353683 694298790 694298790 671409158 828523043 828523043 462253128 852828799 852828799 541468856 654520377 654520377 848429099 981553894 981553894 554047521 474119224 688390176 688390176 211345932 146370560 36026112 61203752 321498392 321498392 319761920 469510235 950385585 950385585 851480457 463564843 463564843 330376050 1005150221 1005150221 847319278 911140229 915575674 915575674 368251057 335695880 605719170 605719170 592805505 600389697 600389697 818424128 818424128 987234500 987234500 727753252 323526708 91760552 125846864 354567600 354567600 361405834 361405834 282134472 338240778 338240778 346509460 346509460 46759122 574639154 574639154 436609849 746805579 790055876 790055876 1027502336 1027502336 779975519 486822414 849420370 849420370 875042049 875042049 817464466 817464466 754908996 769661253 769661253 732029301 592929188 18783072 42376464 56369488 593296453 593296453 970785680 970785680 1027217199 1042209423 1064440767 1064440767 1063700992 622961557 622961557 222299156 748358188 841906275 1034863423 1034863423 840127569 583012422 860510835 937150942 937150942 627887529 627887529 851858810 851858810 836838416 836838416 564868034 935405928 935405928 825635552 525870534 525870534 560479998 665322873 665322873 570754409 875311121 875311121 317922023 111263049 560126433 560126433 540015873 416479796 180703490 151506788 147750628 143337348 143462464 143462464 4071168 4071168 3661824 30562468 138170708 826351685 826351685 510731166 838141189 838141189 266736626 316221138 373373776 574985183 731924259 1005240808 1034762381 1034762381 747773807 747773807 160519399 358648682 358648682 524508190 524508190 663807716 663807716 603677465 536870913 592446369 643825696 643825696 371412794 869766331 869766331 303981474 625993842 625993842 891676955 891676955 893480576 893480576 904704410 979552100 979552100 869930739 572945921 270846210 604581001 816124897 890640939 890640939 696727653 992004399 1028657258 1028657258 873519582 873519582 775641463 768356813 654063030 654063030 692274180 692274180 580912848 727974769 727974769 588501521 600115441 600115441 563423281 578936912 578936912 151170084 25766996 51976512 543357668 699738981 699738981 697314304 557202260 557202260 591740928 596737058 682996795 877337610 877337610 153300718 697066118 697066118 689463621 86351908 86351908 145722728 812715968 814303298 814303298 577283460 327730290 403442214 403442214 309977894 253094460 253094460 220514604 253774224 253774224 74824516 200567480 200567480 84065124 84065124 784880241 784880241 262450644 629031049 629031049 409660816 309021856 503553206 704704519 704704519 298949232 1066902261 1066902261 503336858 486939392 651215448 1062273822 1062273822 728785342 849569090 849569090 815871299 545867906 545867906 136848404 212941255 485426945 507278934 507278934 676380747 1034963551 1060375359 1060375359 346869066 767721849 767721849 536962538 821430675 927285505 927285505 956379266 1009544379 1009544379 776727847 642339456 825787041 825787041 888096991 888096991 737779881 658152945 595591458 638908994 910652227 910652227 380060377 341305865 1073109313 1073109313 692070917 1047558166 1047558166 627781194 627781194 772463800 772463800 1030324740 1030324740 817682668 817682668 272400362 82996106 239994998 394795176 394795176 185076748 127405856 96081768 144641868 144641868 86901600 831924259 831924259 822532131 758729511 758729511 976100631 976100631 992613203 992613203 969902652 969902652 1062621216 1062621216 741114968 544746885 119347776 581299408 593030017 593030017 723848128 723848128 681418753 177533928 722967856 722967856 799353213 799353213 717373836 155255944 203433489 580010101 765699163 1061368988 1061368988 88679592 693116660 693116660 499348290 680248648 1031261853 1031261853 1045066751 1045066751 881017261 881017261 794837857 569731177 1070181355 1070181355 831810582 214570188 725392971 725392971 548273575 548273575 326819266 915583981 915583981 835035682 553976227 862324832 862324832 542055553 817272581 817272581 765258564 765258564 376696102 376696102 394888656 394888656 238554380 193294016 249931128 316492098 316492098 297354992 306913296 306913296 104615122 67424008 356304688 356304688 121279290 398269810 450578662 450578662 495894276 495894276 369485850 384662032 384662032 37053786 371193408 371193408 268520344 270875160 270875160 71927810 288212892 288212892 439827222 919593436 919593436 650668175 851963340 851963340 806355459 645939264 379662648 379662648 344523432 344523432 432881936 432881936 370178722 299887336 130304448 130304448 168886752 193257716 355547618 355547618 258085308 294590624 526523414 526523414 348127434 72351968 142819588 142819588 441155188 441155188 373663994 373663994 163700964 328328304 507300135 579536429 920864567 920864567 1037443141 1037443141 597088881 597088881 519287719 398414752 805726723 805726723 856348163 865661994 872570379 907412555 907412555 883951419 690028888 545259561 662782472 662782472 613458000 17121856 26602080 26602080 36995072 88737824 561910344 561910344 81845824 82363848 653415424 653415424 604012945 611369865 611369865 611639584 611639584 594905092 594905092 245067996 953934528 953934528 808806544 810949251 810949251 623974546 991075060 991075060 421731878 421731878 755110282 755110282 555015456 555015456 540677889 153263501 206079628 570546313 642248680 642248680 624776809 638722841 638722841 573119093 652437704 652437704 747234381 747234381 705242133 970687743 970687743 754710477 754710477 574709997 574709997 390185062 854626546 998339351 998339351 873832512 1020787407 1020787407 675723919 567243974 1011256450 1011256450 1059885344 1059885344 474221608 474221608 305148436 305148436 980525210 980525210 242865077 323741430 323796096 327369622 327369622 418653760 418653760 298129696 176167364 176167364 145227988 145227988 191443360 191443360 182707680 228903276 228903276 104889140 176365884 176365884 101845104 101845104 51411248 280838816 280838816 159720566 466376916 466376916 349738730 458806916 458806916 322744368 286917634 402532564 463285208 463285208 2361472 4458752 7342592 7342592 3965440 5817984 5817984 3171904 7494464 276322624 276322624 26642336 26642336 271717122 293641538 519591310 525994936 525994936 136314992 547492258 563034130 563034130 643896650 809959872 809959872 749054768 1032091877 1032091877 874828082 874828082 605542718 605542718 553798932 21706370 615843460 615843460 160373544 757273060 757273060 630955877 555929345 806742529 824230179 824230179 434115270 453671538 462660032 462660032 215324092 215324092 403147098 403147098 437554208 437554208 229451246 406908912 406908912 372490530 372490530 436531344 436531344 405066076 222874024 158859404 236584734 277553939 899729563 899729563 829949859 934355835 934355835 1035555179 1035555179 169445172 777582286 965788263 965788263 917383451 917383451 746387336 914696283 914696283 657627768 490068344 806456866 806456866 108401371 42345923 126405089 430226955 730858517 870324256 870324256 930478704 930478704 291123970 506463006 506463006 730056795 730056795 699450213 608438688 648286489 803473816 803473816 194166960 229683848 242832504 242832504 194516568 681459143 922186456 922186456 900119493 982915152 982915152 915738696 972512470 972512470 918356313 918356313 873851403 873851403 478429464 478429464 135080402 466875126 947421999 947421999 999958230 999958230 893297195 903564641 903564641 680169760 687954984 687954984 132795692 558587300 692805913 736104896 736104896 662801412 662801412 742023172 742023172 706217896 725873689 725873689 693175607 693175607 764040820 764040820 714866777 621839978 452993027 1054871258 1054871258 476055569 338058410 930183314 930183314 945741447 945741447 945007616 404175746 387839962 31857120 273477396 273477396 215958190 268606262 268606262 362141974 362141974 164948848 275320968 275320968 313662760 313662760 283515538 363086688 363086688 790041312 790041312 641388729 641388729 383877520 383877520 420687370 962864649 962864649 843009616 960374765 960374765 669891153 669891153 668035761 597036061 597036061 938520013 938520013 940957862 940957862 541999232 282002569 167954524 253784130 999190345 999190345 716947746 716947746 604033356 512279646 512279646 386105918 515521688 515521688 472355372 940569451 1035593583 1035593583 762678466 642803414 524576990 662498023 662498023 450562844 516034782 516034782 552239129 703517093 810179919 810179919 809915849 575933073 575933073 948574982 1044135178 1044135178 832354856 750014045 312475986 1000154866 1000154866 988023255 520759540 961889836 961889836 610796937 541931400 283759938 283759938 84897450 424730240 424730240 640680473 1049695153 1049695153 338842635 547515931 547515931 465180534 1014874631 1014874631 1004996229 1004996229 404750598 404750598 404750598 595813954 755221638 755221638 159095040 159095040 147996292 147996292 248002590 379335978 379335978 326633394 444796766 470134168 470134168 162831084 162831084 261761836 261761836 372556048 372556048 274326784 84545536 69617794 86331808 270925866 270925866 286101256 339215872 339215872 107373960 123759528 123759528 289885594 357283877 1008239567 1008239567 781948925 1021295583 1021295583 923837189 868310515 868310515 858624721 581656901 701972100 701972100 681051717 549939024 193370576 42607632 9375936 9375936 41992272 41992272 34128912 109081808 109081808 47483904 47456912 47456912 355900770 355900770 141526274 403727892 454771469 908142311 908142311 680881892 680881892 415820804 353045210 609123049 609123049 836055106 836055106 576267921 609261960 624112304 624112304 819429799 1016245990 1016245990 238609544 238609544 208143252 119842372 23332672 27004512 137888320 137888320 9438980 5013648 35178000 96210040 140808520 172887452 172887452 122415008 61099136 23070529 565544980 697117797 697117797 692415220 185945873 41869200 85069824 814814142 814814142 720581589 613681032 613681032 593900738 606482836 606482836 776155293 776155293 757121325 757121325 311729744 639162842 806787584 806787584 847286400 847286400 1040147862 1040147862 813959235 702354278 431107813 448994644 448994644 365191400 828523043 828523043 462253128 852828799 852828799 451473546 542774913 542774913 848429099 981553894 981553894 538709505 474119224 474119224 363081800 512240282 512240282 433894742 433894742 321498392 321498392 393931470 471180794 950385585 950385585 851480457 463564843 463564843 330376050 1005150221 1005150221 847319278 911140229 911140229 586752115 368251057 627141344 627141344 605719170 592805505 600389697 600389697 818424128 818424128 987234500 987234500 727753252 376439706 376439706 296749712 354567600 389055066 389055066 361405834 282134472 338240778 338240778 413278443 557971735 839346187 939836482 939836482 436609849 746805579 746805579 203681834 663261530 824890659 824890659 486822414 849420370 849420370 875042049 875042049 817464466 817464466 375023492 769661253 769661253 732029301 592929188 30868096 30868096 8523840 3738432 8726592 10488320 279190208 279190208 533137642 533137642 394542522 578896064 622961557 971066035 971066035 657761632 557950416 927675579 927675579 840127569 492400976 565570401 819455745 819455745 627887529 627887529 851858810 858249962 858249962 928657801 928657801 935405928 935405928 825635552 369494000 369494000 812318914 812318914 549990705 894047794 894047794 570560529 317922023 111263049 560126433 560126433 540015873 50549248 12049520 5155392 25354592 27589344 31614720 31614720 12859840 12859840 71137544 72555904 72555904 826351685 826351685 532674020 838141189 838141189 266736626 316221138 373373776 574985183 731924259 1005240808 1005240808 619224790 747773807 747773807 160519399 358648682 358648682 524508190 628229772 663807716 792870916 792870916 536870913 592446369 643825696 643825696 88080552 35948712 35701008 1973248 34096674 328914546 328914546 161554788 161554788 719471616 720033237 979552100 979552100 869930739 853664211 853664211 640192947 308806754 308806754 452477376 696727653 992004399 1028657258 1028657258 873519582 873519582 775641463 768356813 654063030 654063030 692274180 692274180 164597573 727974769 727974769 588501521 600115441 600115441 563423281 578936912 578936912 151170084 63461137 63461137 543357668 699738981 706861361 729434772 730145969 730145969 319236994 596737058 596737058 361379112 361379112 133149112 92090280 137628420 212524836 228589932 576477248 796579773 796579773 202953505 577283460 577283460 277662306 55812640 328556754 429758676 429758676 382660426 382660426 392170516 392170516 359316916 505224640 505224640 253455900 253455900 177467988 67818504 69582080 88363264 88363264 35832882 302301208 335808522 335808522 364978410 448852732 500301870 500301870 503336858 368817442 651215448 890299241 890299241 356664296 849569090 849569090 896106602 896106602 549538179 136848404 212941255 485426945 485426945 221288257 676380747 1034963551 1060375359 1060375359 229596983 767721849 767721849 547356712 821430675 821430675 843063847 956379266 956379266 342011910 642339456 642339456 721605671 721605671 615142224 755868385 755868385 658152945 595591458 639395905 639395905 740641524 740641524 885487761 1073109313 1073109313 789649792 1047558166 1047558166 422709895 570755211 570755211 671808001 671808001 733542870 817682668 817682668 898269130 1035866421 1035866421 782388972 394795176 185076748 101454656 96081768 144641868 144641868 67190336 263484244 263484244 44451192 76231752 77396480 77396480 65523088 147630912 147630912 15882500 212401480 212401480 672040832 672040832 544746885 105775540 71837008 34670404 238105788 638946076 673308933 673308933 238316057 249725868 613326188 613326188 81407912 81407912 221879500 221879500 580010101 765699163 1061368988 1061368988 844528320 844528320 693116660 399043439 680248648 680248648 967505171 1045066751 1045066751 802316382 277987996 137564168 91540392 201431092 242681868 242681868 214570188 89077316 41999928 119425752 119425752 281426448 281426448 944112588 1007032335 1007032335 62204415 540868624 542055553 542055553 541420673 68551680 69646880 92133632 92133632 74763144 1494920 105948880 116246744 116246744 316492098 316492098 336388880 336388880 276577106 33367778 268883970 268883970 306535106 335591944 483462212 520248562 520248562 495894276 495894276 2279552 384662032 384662032 187222094 382824992 382824992 251728534 73419152 327713036 327713036 288212892 288429625 445887060 947023555 947023555 742672412 851963340 851963340 806355459 739617484 912450368 912450368 877148990 926346890 926346890 92398178 178114496 178114496 130304448 246195680 246195680 224723380 224723380 222421384 140803136 140803136 137288964 73945216 1044607327 1044607327 142819588 809466063 809466063 441155188 365409154 164047050 1058062539 1058062539 507300135 665763125 920864567 920864567 1037443141 1037443141 597088881 597088881 519287719 396537888 805726723 805726723 535436734 865661994 872570379 907412555 907412555 883951419 545259561 545259561 662782472 662782472 613458000 75253408 26602080 26602080 36995072 36995072 561910344 561910344 81845824 82363848 653415424 653415424 604012945 611369865 611369865 102880137 42271504 226435352 226435352 253236272 253236272 379666920 379666920 236243484 236243484 201595704 991075060 991075060 421731878 699215205 755110282 821659024 821659024 555015456 540677889 325348018 906049674 906049674 605759776 275574936 21192720 59835392 59835392 47203952 144886112 144886112 197206260 197206260 178848144 107479464 802113096 802113096 539246832 574709997 574709997 390185062 854626546 998339351 998339351 807246336 1020787407 1020787407 1035197826 1035197826 659646185 707467700 1059885344 1059885344 604237833 571052807 571052807 858725249 975810968 975810968 604533933 590492056 323796096 323796096 5243520 5243520 17110020 135149604 176167364 201492608 247987144 247987144 191443360 191443360 177560244 130296276 130296276 88574440 176365884 176365884 119802168 119613440 51411248 18139680 102556914 159720566 466376916 466376916 349738730 458806916 458806916 322744368 294760576 294760576 217925068 247537836 247537836 250881740 250881740 253450016 253450016 162714468 456284022 456284022 483411860 570598264 714129783 714129783 186740801 271717122 293641538 519591310 525994936 525994936 202526832 547492258 563034130 563034130 643896650 809959872 809959872 749054768 1032091877 1032091877 874828082 874828082 605542718 605542718 954927744 954927744 148289191 93871872 160373544 160373544 153091620 299227242 630608000 630608000 554593060 434115270 683547588 683547588 676811969 540073232 49585748 38346752 38346752 33759232 1116672 1116672 65536 0 0 524560 8389696 35651856 228893008 228893008 223347900 223347900 216769972 216769972 92464384 27078240 27855616 27855616 279556416 403363082 403363082 268451886 365761672 365761672 641466384 657984569 657984569 170025504 53526788 472913976 472913976 117834510 570671296 570671296 375854475 376043866 565422649 565422649 730858517 804200620 804200620 905658118 905658118 658280712 22020209 675896512 675896512 510722930 608438688 767822112 767822112 803473816 814094403 814094403 421570763 242832504 323028370 476583467 697440101 922186456 922186456 474396768 949041582 949041582 537793537 972512470 972512470 842433088 842433088 842170453 178307412 813695235 813695235 539005127 466875126 722619109 722619109 572848560 720773856 720773856 673172352 673172352 574361361 150022965 200356137 200356137 713101177 713101177 212088132 701107156 701107156 748291369 748291369 762989133 781211581 781211581 1029211373 1029211373 928222615 885754481 885754481 621839978 621839978 452993027 394594099 476055569 787217506 1063520703 1063520703 930183314 471128474 520619534 520619534 404175746 322190452 329458454 329458454 86193670 2562316 1049088 512 0 0 0 16777248 16777248 50331680 50331680 250448539 1031316613 1031316613 797443197 790041312 738388356 698200144 554230319 517071446 521746694 962864649 962864649 862019746 661389746 481451892 481451892 152049924 556824807 556824807 460804988 938520013 938520013 1047863518 1047863518 215464441 194640188 194640188 579811160 999190345 999190345 716947746 716947746 604033356 512279646 512279646 104973840 914686877 914686877 614761348 708050520 1008853263 1008853263 642803414 642803414 524576990 524576990 344845386 344845386 474616974 474616974 390674448 188747776 188747776 172101812 843056930 843056930 863900435 948574982 1044135178 1044135178 963973811 750014045 730988833 730988833 150868580 697032085 697032085 961889836 961889836 610796937 541931400 68769792 73170088 84897450 424730240 424730240 640680473 1049695153 1049695153 338842635 547515931 766324077 766324077 1014874631 1014874631 1004996229 1004996229 993863607 771046732 270991762 595813954 755221638 755221638 167590400 144573664 147996292 147996292 147466752 147466752 104777152 532730616 532730616 461422710 68342280 68342280 67539488 17176608 17092640 33711248 50462130 90195012 499652932 499652932 528493948 528493948 270925866 286101256 339215872 339215872 260579722 23398816 23398816 55664272 55664272 1313328 6589584 314494352 318429138 329388114 329388114 56795154 45801312 44327728 31715584 31715584 5891712 5891712 1824384 42607632 42607632 12970176 77170696 77170696 94191208 94191208 109081808 109081808 68407016 116959360 116959360 303262676 303262676 141526274 71575296 454771469 908142311 908142311 680881892 680881892 559042760 559042760 350025962 525733252 626723584 626723584 576267921 605494529 624112304 624112304 386933274 386933274 101716768 372252970 372252970 208143252 169984048 54124848 50595888 88181452 88181452 252232764 252232764 263639468 263639468 227727444 236384808 236384808 118112980 241620764 241620764 565544980 697117797 697117797 755649545 755649545 255121940 517663277 881718013 881718013 763750509 612831656 1016414569 1016414569 593900738 647496410 953156295 953156295 851739423 750055627 853428945 853428945 639162842 848560274 848560274 658552131 1040147862 1040147862 864796446 1038148969 1038148969 681109442 827900928 827900928 475628236 463542346 463542346 386134074 228471386 877227277 877227277 959270757 959270757 687550948 164334946 429151760 429151760 363081800 363081800 512240282 512240282 433894742 433894742 330516372 2807040 393931470 471180794 471180794 10005056 646620878 646620878 484004953 79757656 39920016 622676160 622676160 476137422 476137422 404047976 241587564 627141344 627141344 22575507 143490144 143490144 255988994 392241594 392241594 180970788 176701584 348751722 376439706 376439706 329564376 329564376 427054169 749942941 754127863 754127863 686242245 754328168 754328168 557971735 839346187 939836482 939836482 814645766 982562083 982562083 589637937 663261530 824890659 824890659 325349995 582293634 582293634 543023784 628237584 654910521 860063073 860063073 196547444 196547444 139461012 139461012 30868096 49098192 49098192 576698053 576698053 418781572 279190208 279190208 985504594 985504594 780610397 922289994 922289994 1070892626 1070892626 657761632 557950416 927675579 927675579 369783105 597970480 982930529 982930529 371833568 385349626 385349626 548719193 858249962 858249962 928657801 928657801 893589408 305143096 333534744 369494000 369494000 812318914 812318914 549990705 894047794 894047794 570560529 317069778 613567378 613567378 628220841 628220841 357740803 12049520 6588032 6588032 8339328 8339328 8725248 12859840 88394912 88394912 72555904 146920084 276143634 532674020 532674020 454519852 454519852 356251144 356251144 422712102 422712102 709362104 709362104 794854263 1037081072 1037081072 671091209 671091209 53552048 53552048 5251712 628229772 628229772 792870916 792870916 586691313 586154961 100664241 130031824 130031824 7414656 40028656 55775520 55775520 34025664 21106848 21106848 606344720 824017291 983589841 983589841 317183255 807620816 1032374898 1032374898 640611792 775469461 775469461 599787440 599787440 437831190 306593888 331798770 331798770 276929170 16850976 269485184 269485184 8930432 12632256 12632256 12467968 53877104 60566064 60566064 22546496 16156960 32529728 32529728 26919616 30736544 63461137 63461137 599562592 599562592 706861361 729434772 730145969 730145969 181541585 873924196 873924196 504631008 964912523 964912523 595872984 595872984 212524836 228589932 576477248 796579773 796579773 202953505 320467536 320467536 294261858 55812640 328556754 429758676 429758676 382660426 461557878 463610710 463610710 389239148 505224640 505224640 253455900 253455900 214455336 585576465 585576465 467810310 998722871 998722871 485434772 998367351 998367351 958767407 448852732 500301870 500301870 257476134 269562312 351409098 351409098 89387688 356664296 367075818 367075818 896106602 896106602 941189222 941189222 950915433 950915433 1000876182 1000876182 448287207 886181911 886181911 92658032 193346428 193346428 547356712 547356712 83886401 877658120 877658120 402911238 474022020 474030222 474030222 469827712 877225946 1065927807 1065927807 844671312 844671312 584418535 580250370 639395905 639395905 740641524 803169926 885487761 885487761 525460158 789649792 789649792 511795918 422709895 942216488 942216488 635843020 688203813 688203813 285728932 614274051 898269130 1035866421 1035866421 782388972 215878428 101451332 43125600 64363248 64363248 42075200 50614272 50614272 165936 2114560 2671872 13150336 65523088 65523088 147630912 147630912 135534084 212401480 212401480 145413444 156567056 156567056 105775540 71837008 577401920 577401920 638946076 673308933 673308933 238316057 249725868 613326188 613326188 81407912 81407912 221879500 221879500 134844064 158134564 512362734 512362734 844528320 844528320 514727262 86131784 76058920 76058920 332631698 332631698 349977552 490199188 490199188 337032094 371534106 371534106 304460628 304460628 287227480 251898938 478246453 478246453 402670592 281426448 577237020 944112588 1007032335 1007032335 262795298 315404562 559110769 597553552 597553552 591046401 540152832 92133632 92133632 74763144 8222544 105948880 175619152 178731348 178731348 129614200 336388880 336388880 276577106 380341736 380736170 380736170 306535106 335591944 483462212 520248562 520248562 418280768 418280768 326507442 389729416 389729416 187222094 382824992 508572270 508572270 489695336 489695336 432477008 223609585 372511160 445887060 947023555 947023555 742672412 742672412 256691388 739617484 739617484 912450368 912450368 877148990 926346890 926346890 419774982 419774982 416287476 86246816 246195680 246195680 224723380 509676002 509676002 176874776 176874776 397212452 433839186 1044607327 1044607327 101474076 809466063 809466063 334570482 334570482 155238564 1058062539 1058062539 170205036 665763125 665763125 134792196 134792196 796938438 927125691 927125691 367008602 396537888 401294126 535436734 535436734 251451276 337266332 527162986 527162986 485304766 471114208 262666620 262666620 260558392 132212736 132212736 63179728 57936464 57720912 63750176 63750176 2934240 84148416 84148416 538329201 538329201 31756368 588634224 588634224 652243032 652243032 588320929 538980560 253236272 328728896 379635250 379635250 236243484 620006185 930988138 930988138 899247241 831730613 831730613 699215205 821659024 821659024 108342168 254554038 325348018 906049674 906049674 664616305 664616305 595090560 595090560 583188593 581224785 719545125 719545125 653787752 489308674 323517242 358151738 802113096 802113096 801376136 564521265 564521265 435209190 502061054 502061054 807246336 807246336 205974239 512133312 1035197826 1035197826 659646185 968889808 968889808 673615192 639231513 885010368 885010368 858725249 975810968 975810968 604533933 590492056 326636960 469113504 469113504 271389184 272710464 272710464 142126852 201492608 247987144 247987144 189849788 177560244 177560244 222642230 398575766 507947486 507947486 488710446 488710446 453986312 288056376 354908442 354908442 270894218 423825164 505739196 505739196 18090528 287194368 287194368 294760576 294760576 217925068 247537836 247537836 287065794 287065794 253450016 338879714 338879714 456284022 456284022 483411860 570598264 714129783 714129783 516021515 666820428 1037852189 1056953149 1056953149 610560117 610560117 202526832 129111904 305606106 305606106 116403280 369551882 369551882 347588952 35418178 274375488 351367688 351367688 560615304 954927744 954927744 211815744 67770212 20485992 7326816 1030135561 1030135561 751211044 940966594 940966594 432558594 683547588 683547588 676811969 540073232 281451840 241145120 404130522 404130522 269049524 269049524 98281678 405319376 405319376 325466278 311172436 405222870 405222870 310587392 223347900 223347900 119879016 119879016 575332001 607845489 607845489 909073707 909073707 539657323 539657323 268451886 1057896252 1057896252 994316178 994316178 974872577 974872577 941095431 941095431 894675212 274153594 570671296 570671296 375854475 376043866 565422649 626682070 626682070 531959559 443022612 438827286 658280712 658280712 515968188 675896512 675896512 510722930 510722930 767822112 767822112 587671741 814094403 814094403 421570763 144324576 829428742 939656098 939656098 805307459 805307459 474396768 539239343 578945030 578945030 537793537 615142032 907186783 907186783 842170453 178307412 813695235 813695235 539005127 339208842 722619109 722619109 39246480 720773856 720773856 30481365 7078912 6556032 13318041 200356137 200356137 772217888 772217888 212088132 701107156 701107156 748291369 748291369 762989133 781211581 781211581 1029211373 1029211373 928222615 885754481 885754481 694826118 824392099 824392099 854111363 854111363 787217506 1063520703 1063520703 478701916 471128474 471128474 370673042 157812132 322190452 329458454 329458454 229226754 229226754 322926086 322926086 371351654 447688534 447688534 276693928 389389898 389389898 391207142 515319976 1031316613 1031316613 797443197 738388356 738388356 698200144 554230319 517071446 521746694 521746694 862019746 862019746 785301363 481451892 852311932 852311932 626468089 391447971 460804988 866366100 870327397 1047863518 1047863518 130435112 194640188 194640188 657405488 922755653 922755653 112406847 411227240 411227240 226445500 226445500 288597528 914686877 914686877 614761348 739137507 1035519855 1035519855 339474186 558342536 630707274 630707274 344845386 344845386 474616974 738751700 738751700 704763189 923537527 1040711777 1040711777 843056930 863900435 863900435 808073746 963973811 963973811 419609892 730988833 730988833 175584820 940620684 940620684 889975851 355517226 355517226 88303808 283119554 283119554 277107074 271399552 72489889 567280329 626203305 626203305 79514152 421274443 766324077 766324077 823248783 823248783 616235214 993863607 993863607 771046732 527149838 190590468 190590468 180957488 180957488 137106688 137106688 61809832 174882738 447786310 447786310 532730616 532730616 461422710 269266754 183377364 78116968 192041796 244808090 244808090 211755718 196431348 499652932 499652932 528493948 528493948 478488654 478488654 338176348 338176348 260579722 23398816 120038432 386754826 386754826 957823527 957823527 788989077 765202029 765202029 818677955 818677955 866389489 866389489 881802574 881802574 559602976 605294630 605294630 358730690 358730690 364009480 364009480 77975810 345047808 345047808 337675426 337675426 271590216 116959360 116959360 110685704 296777690 296777690 375595936 375595936 76587138 76587138 75694080 366273064 903043820 962033793 962033793 1066002028 1066002028 626723584 438636079 7669760 36046904 117709072 386933274 386933274 244617988 372252970 372252970 169984048 169984048 54124848 50595888 88181452 88181452 252232764 252232764 263639468 263639468 227727444 236384808 236384808 118112980 241620764 241620764 537275428 688600101 688600101 755649545 755649545 255121940 517663277 881718013 881718013 763750509 549333144 1016414569 1016414569 791092333 647496410 953156295 953156295 851739423 936262714 936262714 853428945 110961736 848560274 848560274 658552131 723264229 805063293 864796446 1038148969 1038148969 681109442 827900928 827900928 475628236 463542346 463542346 386134074 228471386 877227277 877227277 959270757 959270757 687550948 1001076087 1001076087 721733685 721733685 765086562 862472851 862472851 774243213 774243213 405414173 529397361 529397361 340872894 576482354 576482354 715059284 715059284 484004953 79757656 719709893 860194180 951413767 999637106 999637106 404047976 92580358 17041440 17039360 574464 574464 574464 574464 540672 8421376 176701584 176701584 176701584 37782612 0 329564376 329564376 427054169 749942941 754127863 754127863 686242245 754328168 754328168 348821448 364020594 579520299 579520299 814645766 982562083 982562083 589637937 589553729 149107140 1035663204 1035663204 1013124999 543023784 543023784 628237584 654910521 860063073 860063073 539376897 691474433 691474433 536945444 25571424 49098192 49098192 576698053 576698053 418781572 278617296 145352408 985504594 985504594 780610397 922289994 922289994 1070892626 1070892626 954702286 954702286 524472510 859869213 859869213 597970480 982930529 982930529 371833568 385349626 385349626 385012698 389087290 389087290 605376699 908307600 908307600 985335864 985335864 533473456 632661955 900146463 900146463 538975868 538975868 379584858 799330712 799330712 613567378 805594161 805594161 628220841 357740803 539355776 543272577 543272577 542782208 8339328 13573824 84824704 88394912 88394912 27366028 146920084 584389729 584389729 444021654 762773563 762773563 356251144 356251144 422712102 556230193 556230193 419725834 794854263 1037081072 1037081072 1007681579 1007681579 645006380 645006380 577377681 632021316 750989517 750989517 652354228 586691313 648028376 648028376 613425304 130031824 95161704 69411680 69411680 71739018 378745434 577184630 798354493 798354493 936486755 983589841 983589841 877171786 877171786 1032374898 1032374898 640611792 775469461 775469461 599787440 844104339 844104339 306593888 806490659 1024651789 1024651789 789721128 789721128 547760388 584982656 584982656 673977700 673977700 589904720 181541456 60566064 22546496 16156960 32529728 32529728 26919616 26919616 1094688 731049044 731049044 671857780 671857780 718020672 718020672 576130689 553667218 873924196 1045568000 1045568000 964912523 964912523 595872984 686417349 686417349 97043688 659572584 790648889 872751201 981651543 981651543 603979526 294261858 53824546 23942000 191865224 223535004 223535004 461557878 463610710 463610710 431060322 431060322 114791364 149806760 149806760 214455336 585576465 585576465 467810310 998722871 998722871 485434772 998367351 998367351 958767407 119044594 310264816 340398600 340398600 516523256 516523256 427941990 427941990 419553318 67373064 80088136 80088136 584064264 941189222 941189222 950915433 950915433 1000876182 1000876182 636962245 934430009 934430009 92658032 193346428 224831813 224831813 210029516 148161416 877658120 877658120 725807269 725807269 474030222 474030222 469827712 877225946 1065927807 1065927807 844671312 901779498 901779498 381561041 891601696 891601696 101187616 803169926 803169926 509570631 960833703 960833703 690098469 690098469 228102498 942216488 975194629 975194629 1043091236 1043091236 809356805 962159964 962159964 783392863 236105800 215878428 568863456 568863456 616512585 617297097 795280436 795280436 34214928 196597772 196597772 129969976 129969976 79631656 77339456 21249216 21188736 16138884 135534084 143885060 143885060 141885312 141885312 658110848 658110848 611526185 577401920 577401920 544941552 583481489 595674201 659289273 659289273 606853113 115525305 88511360 88511360 78006688 230915889 720506997 720506997 686559607 640175282 690578484 866853215 866853215 492831150 1011028838 1011028838 892597035 892597035 867542315 581648112 490199188 337032094 371534106 430291286 430291286 304460628 287227480 251898938 478246453 478246453 402670592 169075217 577237020 881886165 881886165 331810149 262795298 315404562 559110769 597553552 597553552 591046401 540152832 19635200 155084960 155084960 21257732 141829312 175619152 472237848 472237848 283976726 396985504 396985504 365187600 380341736 380736170 380736170 300134984 300134984 403126070 403126070 307062418 253951244 322218914 326507442 389729416 389729416 9646656 51433520 508572270 508572270 489695336 489695336 432477008 156503180 372511160 372511160 411887718 485787386 485787386 365538540 256691388 256691388 164630416 305925906 305925906 42246402 286050922 322028144 419774982 419774982 416287476 33818640 33818640 262160 6816904 509676002 509676002 176874776 176874776 397212452 433839186 433839186 321581180 516055428 516055428 435003484 435003484 366381480 366381480 265726202 126241392 126241392 255831296 255831296 75515400 21320704 889028851 927125691 927125691 480260526 683719053 683719053 492575236 450401190 450401190 403052550 246255864 246255864 236632848 236632848 122083512 122083512 84546600 132212736 132212736 75725120 75725120 57720912 243930229 646450401 646450401 562961505 713070761 713070761 747118573 747118573 624173037 588634224 652243032 652243032 588320929 538980560 343942152 1066406776 1066406776 594856090 711221203 711221203 930988138 930988138 899247241 831730613 831730613 471884556 471884556 275850114 124595640 124595640 636765200 636765200 105480929 664616305 664616305 595090560 595090560 583188593 581224785 719545125 719545125 653787752 489308674 323517242 358151738 358151738 801376136 801376136 370808346 370808346 435209190 502061054 502061054 167811554 205623361 751038669 814182573 887337383 1015543887 1015543887 968889808 968889808 672325703 639231513 885010368 885010368 83507187 77802096 15507204 308289562 507185030 507185030 469113504 472457866 472457866 450632210 382548638 247662594 142126852 234963488 234963488 189849788 222899240 222899240 222642230 398575766 507947486 507947486 488710446 488710446 453986312 288056376 354908442 354908442 270894218 423825164 505739196 505739196 236355620 303839280 323954594 323954594 59953520 59953520 59272816 45300736 287065794 287065794 67944712 338879714 338879714 188744300 315369123 976502273 1043398987 1043398987 599735379 599735379 666820428 1037852189 1056953149 1056953149 737523161 737523161 129111904 129111904 123378264 40119944 40119944 369551882 369551882 347588952 274328002 282200650 548693666 637220841 637220841 1012086439 1012086439 211815744 166795756 32500192 31849952 1030135561 1030135561 751211044 940966594 940966594 676066437 676066437 270926338 418803776 418803776 281451840 241145120 404130522 404130522 269049524 269049524 98281678 405319376 405319376 596190321 596190321 596190321 405222870 310587392 772399540 772399540 695289272 579668600 601130472 607845489 607845489 909073707 909073707 539657323 539657323 509273118 1057896252 1057896252 994316178 994316178 974872577 974872577 941095431 941095431 894675212 274153594 596032480 596032480 563240832 341274160 341274160 626682070 850959575 850959575 380362070 1072583071 1072583071 310437876 515968188 653050672 653050672 564987968 564987968 290405538 390990232 390990232 164940644 259164312 259164312 224532352 829428742 939656098 939656098 805307459 904700614 904700614 335544322 578945030 578945030 345642570 615142032 907186783 907186783 541229122 918720644 1048580125 1048580125 1048576095 339208842 339208842 314849672 39246480 717188064 717188064 692864885 682225809 594807089 722162764 722162764 147492865 772217888 772217888 195923981 646078980 646078980 643690137 39405577 59874000 103770360 103770360 112691018 272724432 336327690 336327690 338692882 694826118 824392099 824392099 854111363 854111363 589484337 578482586 578482586 544548730 287385630 370673042 397809862 397809862 363906162 519359042 519359042 408197176 229226754 322926086 322926086 435357936 447688534 447688534 276693928 389389898 389389898 391207142 515319976 515319976 153227556 640871056 640871056 354041914 354041914 238904842 406724358 406724358 461581394 586051149 1034558458 1034558458 585766060 852311932 983708579 983708579 1009440015 1009440015 866366100 866366100 550638273 205730053 86325328 86325328 69175552 657405488 657405488 799606613 872423797 872423797 584840354 226445500 226445500 324504866 504785694 504785694 416482635 881472931 1035519855 1035519855 872415243 872415243 630707274 630707274 734029211 734029211 688655397 738751700 738751700 704763189 1072334201 1072334201 1040711777 420219945 134535604 134535604 805573910 805573910 189007273 390706224 390706224 122365682 175584820 940620684 940620684 889975851 355517226 679747456 679747456 283119554 885309675 885309675 884130370 884130370 753145316 16384 605145089 685097608 685097608 541139652 660401024 660867513 660867513 554749984 53882625 399793402 527149838 527149838 190590468 283327750 283327750 180957488 436207746 436207746 194511364 445780050 447786310 447786310 399328082 398837872 291123156 343809930 343809930 271344584 192041796 672073474 957875874 957875874 950356416 950356416 528951560 528951560 427829288 478488654 478488654 716998824 733022090 733022090 70779648 120038432 386754826 386754826 957823527 957823527 788989077 765202029 765202029 818677955 818677955 866389489 952445127 952445127 881802574 559602976 605294630 605294630 358730690 358730690 364009480 364009480 77975810 345047808 345047808 337675426 337675426 271590216 43330128 42739200 9824832 296777690 296777690 375595936 375595936 739397701 740169413 740169413 651330128 903043820 962033793 962033793 1066002028 1066002028 627912105 539441409 560342001 586492032 586492032 46202952 244617988 244617988 237500700 104143172 30670848 171739808 171739808 21373056 135866368 145761620 168110100 168110100 181145040 181145040 63898144 195618128 195618128 33816576 141841585 207280412 537275428 688600101 688600101 1061452614 1061452614 108881305 223418868 223418868 579296894 579296894 908504868 908504868 824076599 791092333 228080152 198390516 464498864 464498864 936262714 936262714 931409544 563872449 830538795 830538795 899162370 899162370 632891241 463818940 463818940 193591500 126277752 205819008 444863708 444863708 278954292 117753912 124174376 137658632 158735268 480034154 480034154 360861860 388773965 1001076087 1001076087 721733685 721733685 765086562 862472851 862472851 774243213 774243213 405414173 529397361 529397361 340872894 576482354 576482354 715059284 715059284 324210896 58727330 719709893 860194180 951413767 999637106 999637106 454100688 454100688 569580576 569580576 25568083 56394800 56394800 67445254 501096174 501096174 175608608 176701584 524403366 524403366 384303574 298584026 29134680 375040330 375040330 322718242 373817706 373817706 383782568 383782568 607786128 907282971 907282971 724584979 554026252 556906563 556906563 361692200 361692200 893786283 1035663204 1035663204 1013124999 626430186 626430186 814994562 822293763 822293763 545312836 539376897 691474433 691474433 536945444 29465728 29465728 142850624 144878480 318242112 318242112 281682390 173764880 312705344 312705344 309996434 309996434 306010674 326377554 536753369 954702286 954702286 524472510 859869213 859869213 218172422 925332036 925332036 716416191 716416191 124253592 258186062 738943702 851179347 851179347 908307600 908307600 985335864 985335864 533473456 632661955 900146463 900146463 538975868 538975868 1031798895 1031798895 914979011 580436891 805594161 805594161 343283722 306860050 829896738 829896738 543272577 542782208 1391360 13573824 86263680 86263680 13107272 85334144 85334144 584389729 584389729 444021654 762773563 762773563 373293210 364508798 418612718 556230193 556230193 504027946 629879887 629879887 492754990 1007681579 1007681579 645006380 645006380 577377681 632021316 750989517 750989517 652354228 128983585 648028376 648028376 613425304 95161704 95161704 69411680 101701826 278751745 641851545 656079237 798354493 798354493 936486755 936486755 644640543 877171786 877171786 979549349 979549349 723554720 37920789 173541012 500744937 844104339 844104339 187238081 806490659 1024651789 1024651789 789721128 789721128 777259677 777259677 584982656 673977700 673977700 589904720 181541456 34470704 51437600 51503664 51503664 146836612 190166580 190166580 189727973 732188544 732188544 671857780 671857780 599128324 599128324 672193268 672193268 454066407 1045568000 1045568000 628220841 628220841 621165304 686417349 686417349 977447072 977447072 832709832 872751201 981651543 981651543 603979526 394528890 377872386 289591424 66257132 238236444 238236444 186071604 186071604 411089556 432062694 432062694 186689576 472424804 472424804 307044456 307044456 25543706 15803328 54528608 100987144 100987144 287335280 287335280 95593346 119044594 310264816 340398600 340398600 516523256 516523256 677938356 708837525 812466609 812466609 80088136 80088136 584064264 584064264 335618114 479257833 650921417 991749078 991749078 683888361 934430009 934430009 677289982 677289982 224831813 1066042904 1066042904 199480124 1035122971 1035122971 910627224 861352239 980757399 1051373166 1051373166 366495131 151883948 189603575 343581475 901779498 901779498 381561041 891601696 916800670 977955684 977955684 1067244148 1067244148 960833703 960833703 727857581 727857581 875173131 941752368 975194629 975194629 1043091236 1043091236 809356805 962159964 962159964 783392863 743442521 743442521 568863456 568863456 616512585 617297097 795280436 795280436 263128444 941767527 941767527 856905511 713282795 764077963 900388203 961128943 961128943 822481123 941932288 941932288 1027938152 1027938152 722077441 722077441 658110848 611526185 558612768 568853985 568853985 583481489 595674201 659289273 659289273 606853113 587603808 587603808 570563104 78006688 230915889 720506997 720506997 686559607 640175282 690578484 866853215 866853215 492831150 1011028838 1011028838 892597035 892597035 867542315 581648112 337604824 302485774 302485774 430291286 430291286 387090752 397859706 481710706 481710706 312711772 303174162 9441362 244199616 244199616 986060096 986060096 295986731 266312738 43538832 544934528 544934528 176531412 175408116 168619188 176129028 176129028 436500400 568439048 948168824 948168824 1013324175 1013324175 618123096 396985504 503616228 503616228 146147846 637544451 832581882 832581882 834873696 834873696 307062418 253951244 253951244 116990664 102834488 167046268 295615232 295615232 84359208 84359208 191932544 198123184 238290248 238290248 60107376 159386374 411887718 485787386 485787386 365538540 16777624 363071520 363071520 305925906 305925906 93891880 286050922 286050922 126830384 170708244 170708244 19753256 151579316 151579316 108793752 134048248 222874768 222874768 186845236 139336836 420161952 686441793 686441793 516055428 809733255 809733255 435003484 366381480 517894320 998703275 998703275 655955088 576136445 610120547 671352837 671352837 889028851 916793691 916793691 480260526 683719053 683719053 492575236 450401190 450401190 412113398 488936852 488936852 482982788 482982788 231366628 247866416 247866416 84546600 69654792 75725120 75725120 51003840 243930229 646450401 646450401 562961505 713070761 713070761 747118573 747118573 624173037 551107848 624302889 624302889 140956644 140956644 343942152 1066406776 1066406776 594856090 711221203 711221203 394790010 400345088 400345088 709023766 709023766 471884556 471884556 390854401 390854401 124595640 838327042 838327042 809291523 297474777 297474777 552242928 552242928 37308032 37308032 565183380 565183380 504386838 504386838 215337752 615070328 847905431 847905431 640795233 676645589 676645589 685429956 894936165 894936165 537729563 339943764 751038669 814182573 887337383 1015543887 1015543887 508178994 46121653 499574896 499574896 364222272 501683550 501683550 231016972 231016972 308289562 507185030 507185030 335877316 472457866 472457866 450632210 382548638 247662594 242976356 242976356 50980400 50980400 222899240 222899240 135007236 106969240 117913656 178340256 178340256 120006656 120006656 0 0 0 0 0 186141500 186141500 271916288 303839280 323954594 323954594 292715010 295882848 295882848 66096512 66096512 28361568 34112848 49976448 49976448 312087034 315369123 976502273 1043398987 1043398987 599735379 724182550 724182550 563631191 563631191 326472960 737523161 737523161 257473569 25305408 67189632 106235008 106235008 105941184 116410840 116410840 547221697 547221697 608305344 637220841 637220841 1012086439 1012086439 166795756 166795756 32500192 939526348 939526348 960573984 960573984 690436389 538822848 676066437 676066437 681186885 681186885 547245248 145138688 11072960 222885440 222885440 134340612 79172072 73885664 205952296 205952296 596190321 596190321 596190321 773628884 773628884 772399540 772399540 695289272 858333882 858333882 857805984 100723552 570462560 620757025 620757025 109581328 643082304 643082304 579963576 380448090 380448090 705760953 709789213 738719757 738719757 168245268 611334188 611334188 596032480 563240832 295912129 502386632 502386632 850959575 850959575 380362070 1072583071 1072583071 734224373 390605016 956089215 956089215 572787776 572787776 254291208 390990232 809503147 809503147 296355174 296355174 680002209 680002209 273468546 427785636 897371880 904700614 979968029 979968029 889718195 244023661 279446850 1029375747 1029375747 981467337 981467337 918720644 1048580125 1048580125 1048576095 912648603 912648603 816087881 545597505 720249621 720249621 720916177 720916177 613382625 722162764 772242704 786669656 786669656 627366100 195923981 646078980 646078980 643690137 554180136 736414197 736414197 738904321 738904321 671039505 671039505 657167345 618532199 618532199 99489284 809641351 809641351 538981390 1041372699 1041372699 976426268 908660506 570438656 674437380 674437380 397809862 418532512 519359042 519359042 408197176 171182128 171182128 203147976 435357936 435357936 34636438 28204384 42764032 54725424 129775468 129775468 681624037 725092149 725092149 896586009 896586009 574619793 574619793 990283818 990283818 704825428 738199778 1034558458 1034558458 743304333 985689178 985689178 983708579 1009440015 1009440015 867807257 1070595148 1070595148 932278010 69994264 73918856 173620500 269549862 381215491 799606613 872423797 872423797 584840354 110626392 66135024 324504866 324504866 49365778 334886651 881472931 881472931 824538379 872415243 872415243 565742275 565742275 734029211 852526157 852526157 688655397 608328756 612535803 1072334201 1072334201 902725963 256147927 134535604 134535604 805573910 805573910 426489400 525587246 525587246 122365682 103088576 573520012 1042083220 1042083220 352106965 679747456 679747456 143412292 885309675 885309675 884130370 884130370 753145316 556862217 605145089 685097608 685097608 541139652 465209344 465209344 579411185 579411185 573441409 599277920 599277920 43904592 313292032 313292032 283327750 158147792 436207746 436207746 194511364 445780050 445780050 163687616 163687616 231214892 291123156 343809930 343809930 271344584 291627426 816929666 957875874 957875874 950356416 950356416 528951560 528951560 391194426 433857270 433857270 716998824 733022090 733022090 125322936 75098880 75098880 323220480 323609778 323609778 311329792 328914546 852775850 891820331 891820331 627315464 952445127 952445127 899619246 486154342 486154342 561521345 561521345 17367266 548864 901120 901120 90286504 90286504 18923808 40152480 43330128 107793040 107793040 67323912 8071592 8071592 110397832 238849153 739397701 740169413 740169413 651330128 206969028 756206208 756206208 657140232 657140232 627912105 539441409 560342001 586492032 586492032 18874368 8388672 8388672 599040 1912320 30670848 171739808 171739808 61215072 135866368 145761620 171391764 171391764 181145040 181145040 134846964 195618128 195618128 165810660 248337820 778429965 778429965 124848348 660973033 1061452614 1061452614 108881305 223418868 223418868 599064236 599064236 908504868 908504868 824076599 238236444 238236444 179376200 157679700 303890464 320679474 931409544 931409544 926285992 926285992 619830864 899162370 899162370 632891241 502328622 502328622 327278706 316719570 357073668 357073668 310693422 278954292 264244008 264244008 72647468 752613857 817548547 817548547 685978053 445028485 445028485 510316638 510316638 390859962 600085852 1072193443 1072193443 423626338 423626338 311308452 45925504 49548240 49548240 6139664 271675648 273728032 273728032 19096096 274074500 409344976 409344976 310621970 427143392 696377909 836769889 836769889 961005301 997759011 997759011 843356259 843356259 466669766 922780199 922780199 672252054 962880340 962880340 524403366 384303574 298584026 53742752 375040330 679490133 948442445 948442445 959520807 959520807 902993140 778618034 907282971 965740067 1043899463 1043899463 916529492 916529492 526996706 526996706 893786283 893786283 364214692 359213290 626430186 626430186 814994562 822293763 822293763 545312836 420944864 155123712 155123712 76948552 83516480 83516480 149683080 149683080 134734164 281682390 281682390 173764880 312705344 312705344 309996434 309996434 306010674 326377554 746713096 746713096 212094292 705042460 998246808 998246808 908071418 650126427 897195045 991999973 991999973 802210557 954722622 954722622 851179347 851179347 846526474 507477918 339276456 757794527 757794527 927254715 927254715 831259404 833095011 833095011 1031798895 1031798895 914979011 575218833 885560665 915794395 915794395 276263832 829896738 829896738 288373505 6761856 6330368 6330368 86263680 93886944 93886944 86793864 85334144 109845282 393352666 393352666 371331354 373293210 373293210 364508798 418612718 509321616 509321616 504027946 504027946 419743782 492754990 492754990 943870127 990156823 990156823 692217559 366565919 262669692 262669692 69900184 119013680 119013680 99615168 99615168 95161704 95161704 70789704 101701826 278751745 641851545 656079237 703335333 703335333 698747804 619133385 648349508 648349508 688179237 688179237 788574722 788574722 122684572 152569380 239600312 239600312 539066628 671211525 671211525 536993793 571998604 1012405415 1012405415 777259677 877884758 877884758 376697754 678457380 910870707 910870707 268603409 268603409 51503664 51503664 146836612 190166580 190166580 189727973 732188544 732188544 571767780 571767780 599128324 599128324 672193268 672193268 201654496 1011494581 1011494581 782008495 930414916 930414916 595742985 81991712 1069721800 1069721800 832709832 832709832 580534331 251020672 394528890 394528890 377872386 311579840 311579840 238236444 244687830 299579106 337345098 411089556 432062694 432062694 208888184 472424804 472424804 328069202 579288619 579288619 408232324 677878349 677878349 260372758 803762479 803762479 759359455 531301491 531301491 394863738 269223072 56655892 157335972 677938356 708837525 812466609 812466609 595619222 102924393 277414912 335618114 335618114 891290178 891290178 650921417 882950475 882950475 737740658 737740658 677289982 677289982 215442093 1066042904 1066042904 199480124 1035122971 1035122971 910627224 861352239 980757399 1051373166 1051373166 366495131 340926544 629111787 629111787 364711160 909889131 909889131 335822898 916800670 977955684 977955684 1067244148 1067244148 828688803 828688803 727857581 727857581 875173131 875300105 875300105 589568012 957106748 957106748 319973748 704868992 710005405 710005405 743442521 743442521 538452713 190907977 34015232 33763344 218634560 263128444 263128444 941767527 941767527 856905511 713282795 764077963 900388203 961128943 961128943 822481123 941932288 941932288 1027938152 1027938152 722077441 722077441 4985400 21894176 551756832 568853985 568853985 581018833 581018833 550542208 57689504 23626672 587603808 587603808 570563104 17961120 17961120 26280288 26280288 54530072 521737364 521737364 522716738 522716738 141219204 161520280 313745248 513537630 513537630 512916998 512916998 135958618 302485774 302485774 296927494 431211096 431211096 397859706 481710706 481710706 818450643 818450643 844261076 944833092 944833092 986060096 986060096 319101210 371599410 371599410 58025380 176531412 176531412 175408116 168619188 176129028 228213346 436500400 568439048 948168824 948168824 1013324175 1013324175 618123096 387540982 503616228 503616228 614490920 637544451 832581882 832581882 834873696 834873696 358025664 358025664 323953520 84651456 84651456 167046268 374051320 374051320 84359208 84359208 85534248 348412400 348412400 238290248 26339956 45878528 161071124 444649032 444649032 457253340 457253340 443089310 363071520 121129272 121129272 93891880 51716368 51716368 67717932 170708244 170708244 134256640 151579316 151579316 108793752 134048248 222874768 222874768 186845236 250032618 420161952 686441793 686441793 271058178 809733255 809733255 269391034 357090984 517894320 998703275 998703275 655955088 576136445 675823371 689658956 689658956 781172006 916793691 916793691 921175515 921175515 865100104 995074517 995074517 941453404 412113398 488936852 488936852 482982788 482982788 231366628 247866416 247866416 48384360 48384360 38148240 37959696 65061360 65061360 57053376 198101280 198101280 25167936 553699360 943982727 943982727 29360352 684193988 684193988 624302889 383252123 381939930 424826606 424826606 616575935 616575935 219816920 1006815464 1006815464 930325949 930325949 809187075 586842064 1042352117 1042352117 861633312 390854401 112388784 838327042 838327042 809291523 646409329 646409329 593174192 593174192 587287073 590349105 590349105 584131040 848298699 848298699 568136385 675540916 847905431 847905431 640795233 676645589 740319892 740319892 894936165 894936165 596688640 539760091 539760091 809769948 809769948 653933846 508178994 508178994 127087224 290644540 300761258 554019000 554019000 501683550 298105030 496368782 496368782 488630830 354763560 392628016 443876034 447948690 534788906 534788906 213595932 242976356 266570844 266570844 245631836 189563740 170765704 170765704 268853518 402653222 402653222 477126722 477126722 473664000 272596792 352888618 352888618 291711064 49159632 393316192 393316192 271916288 271916288 270218754 292715010 292715010 295882848 295882848 66096512 283001090 283001090 78169416 355730250 355730250 312087034 312087034 258474608 258484200 409471510 409471510 724182550 724182550 719352881 607400685 552723393 573262508 573262508 257473569 108916632 108916632 106235008 106235008 46085824 116410840 116410840 547221697 547221697 608305344 608305344 80364736 568479776 568479776 153145793 287904006 287904006 939526348 939526348 960573984 960573984 690436389 876619392 876619392 879261898 879261898 681186885 547245248 353329064 211452740 211452740 156711588 156711588 209487200 209487200 166650372 264021880 264021880 27337056 722617280 773628884 773628884 859580448 859580448 318835715 858333882 858333882 913100187 913100187 570462560 620757025 620757025 100814881 643082304 643082304 579963576 100970052 211634193 705760953 709789213 738719757 738719757 298967664 611334188 611334188 583424402 35184738 292293787 502386632 502386632 506363677 506363677 913913868 913913868 734224373 734224373 117014528 956089215 956089215 572787776 572787776 369147930 369147930 809503147 809503147 369464436 296355174 739430405 739430405 273468546 427785636 897371880 897371880 979968029 979968029 1026126173 1026126173 648742014 1029375747 1029375747 981467337 981467337 852746307 1007694559 1007694559 413212998 912648603 912648603 816087881 545597505 720249621 720249621 720916177 720916177 613382625 671646873 772242704 786669656 786669656 723330757 203169652 203169652 253301944 554180136 554180136 736414197 736414197 738904321 738904321 671039505 671039505 1018987358 1018987358 759353991 289538413 809641351 809641351 538981390 1041372699 1041372699 976426268 908660506 570438656 674437380 674437380 488258044 488258044 418532512 153273272 204603520 208802700 454053688 454053688 296287860 296287860 196043410 153480288 28204384 54725424 129775468 129775468 681624037 725092149 725092149 896586009 896586009 618795081 806002968 990283818 990283818 704825428 738199778 738199778 378372311 743304333 985689178 985689178 123657912 92471328 867807257 867807257 1070595148 1070595148 932278010 69994264 185501084 185501084 221360676 221360676 90252080 225002300 352847552 352847552 244124912 226690712 226690712 47781232 47781232 134163472 134163472 78329160 78329160 79243080 299082946 565742275 890266712 890266712 852526157 852526157 332722232 332722232 570868749 570868749 579358904 579358904 541072645 544087425 544087425 544087425 544087425 772314384 812209678 812209678 785069776 808034702 808034702 1042083220 1042083220 177318987 310017924 310017924 114952066 270009480 270009480 8912960 338731043 338731043 556862217 825509944 825509944 823397123 685932808 685932808 609660136 609660136 621107233 621107233 599277920 599277920 537707650 540748163 540748163 537745938 457228470 457228470 199314100 199314100 143726336 195035508 195035508 74975112 115156248 209134032 209134032 187145052 187145052 291627426 816929666 816929666 292238754 296164416 296164416 4593792 266499200 267386364 267386364 245392784 214557900 103647128 125322936 125322936 375374720 375374720 323220480 323609778 323609778 311329792 328914546 852775850 891820331 891820331 627315464 627315464 899619246 989806551 989806551 486154342 561521345 561521345 301825250 301825250 68816136 279479368 346150222 346150222 1019244747 1019244747 912784137 447455305 447455305 361160578 449978284 449978284 724354486 896960954 896960954 547800936 633209290 633209290 20645120 17629376 117513024 117513024 62365536 62365536 63107296 63107296 51876000 49490520 126361912 126361912 98107688 97518312 97354688 160795584 160795584 32989920 61215072 61215072 194348592 194348592 176950356 134886676 134846964 134846964 189546896 189546896 178668468 248337820 778429965 778429965 124848348 660973033 660973033 208481676 324077352 324077352 836026708 836026708 599064236 591845553 574886448 559291041 522191166 522191166 231074028 231074028 822952378 822952378 644738457 826113299 926285992 926285992 619830864 619830864 682623860 682623860 502328622 502328622 327278706 316719570 357073668 357073668 310693422 209738056 264244008 264244008 257467648 752613857 817548547 817548547 685978053 445028485 445028485 510316638 510316638 768137107 768137107 1072193443 1072193443 780850687 780850687 616564553 677396042 677396042 996700250 996700250 271675648 273728032 273728032 19096096 274074500 409344976 409344976 66198384 49287296 696377909 836769889 836769889 961005301 997759011 997759011 843356259 843356259 682937157 922780199 922780199 672252054 962880340 962880340 181668564 63973540 44639504 53742752 182724883 679490133 948442445 948442445 959520807 959520807 902993140 778618034 872641973 965740067 1043899463 1043899463 916529492 916529492 526996706 526996706 363028492 364214692 364214692 23414784 28972896 32123360 32123360 26720448 26720448 143659012 143659012 212343808 222823328 222823328 92536936 83516480 149683080 149683080 134734164 207169180 207169180 201377160 201377160 109983632 109983632 50138192 50138192 46977521 746713096 1009518697 1009518697 705042460 998246808 998246808 908071418 650126427 897195045 991999973 991999973 802210557 954722622 990154968 990154968 846526474 846526474 175210768 175210768 757794527 757794527 927254715 927254715 831259404 833095011 833095011 673669212 859948066 859948066 629687312 885560665 915794395 915794395 594708521 87200944 8180736 8180736 6761856 541527297 552894657 571168144 571168144 93886944 120468512 120468512 113918632 123608760 123608760 96868520 92400128 92400128 96325346 295745354 389975552 422912179 467076001 467076001 413940370 181455902 408225901 943870127 990156823 990156823 692217559 799752278 799752278 553648128 553648128 375131123 613158032 884475723 884475723 607126594 95161704 86256488 86256488 84096544 126952056 126952056 110101080 572981464 619133385 791536976 791536976 648349508 141108612 272629768 942956810 942956810 246531009 225501338 239600312 239600312 539066628 998533602 998533602 998367319 571998604 1012405415 1012405415 760878765 877884758 877884758 376697754 678457380 910870707 910870707 295766296 268603409 43313040 43115088 34410064 33603600 25288800 25288800 549570581 549570581 26724737 51515904 51515904 1191936 570840672 570840672 186556081 1011494581 1011494581 782008495 930414916 930414916 152189892 212818304 1069721800 1069721800 570711308 861268659 861268659 727215110 583608031 181047978 289981602 550806880 815909440 815909440 244687830 428161728 507546846 507546846 199332454 208888184 208888184 120845112 285231072 328069202 579288619 579288619 408232324 677878349 797562429 797562429 803762479 803762479 759359455 531301491 531301491 394863738 403567748 100797447 780698871 780698871 694876644 850277451 910661741 910661741 533466699 751052936 823214619 831627267 891290178 891290178 627051524 882950475 882950475 46423840 55985792 55985792 40130528 26765232 30268352 62654592 62656368 62656368 786440192 786440192 35719581 78068040 280048200 446343082 446343082 340926544 629111787 629111787 364711160 909889131 909889131 806358626 75896904 76952984 553812232 855023522 855023522 326108082 326108082 824253612 824253612 675756333 399166667 310531304 706777105 957106748 957106748 899131971 899131971 710005405 710005405 742860945 742860945 673710521 621356073 575147429 640486785 640486785 638134576 67963960 67963960 0 8392960 672209344 672209344 15081989 14815680 14811264 4194432 87035392 95161704 95161704 230689456 230689456 615783744 670176249 670176249 98121025 59119728 63386816 63386816 584433056 584433056 57689504 23626672 20030272 17970432 20648608 20648608 67108872 67108872 72483530 218313848 521737364 521737364 522716738 522716738 141219204 141219204 515904114 515904114 223482540 290728098 290728098 34542592 268636160 268636160 262302724 478554480 478554480 429294166 352553472 345317958 818450643 818450643 844261076 944833092 944833092 684834222 702730725 702730725 371599410 371599410 197880860 169687988 40014672 164425316 182772996 182772996 228213346 228213346 566327624 566327624 339842052 223507410 512943408 512943408 488710984 488710984 428868198 900014414 900014414 361319533 27574336 293820578 293820578 359998122 359998122 342826786 293849250 285421602 390830218 390830218 374051320 340057528 360105354 360619962 360619962 348412400 220290106 26339956 322981008 322981008 444649032 444649032 457253340 457253340 443089310 371302882 351205178 351205178 338163978 312695210 82202866 176057448 176234516 196682356 196682356 151716364 151716364 42468432 35924064 158861220 158861220 133673560 278164448 278164448 382347274 382347274 317073628 317073628 237187356 269765688 269765688 277294712 277294712 138816045 830572042 830572042 675823371 689658956 689658956 1012288519 1012288519 890116592 921175515 921175515 865100104 995074517 995074517 941453404 356238008 356238008 198680484 198680484 125761120 226675420 226675420 90444008 90444008 79016064 97669760 97669760 172939264 172939264 193906068 198101280 293736532 452986898 543287654 943982727 943982727 19624224 844177315 844177315 659752929 659752929 551674305 676979077 676979077 619369929 619369929 587977250 1006815464 1006815464 930325949 930325949 809187075 586842064 1042352117 1042352117 861633312 112388784 112388784 62670224 130231720 654306400 654306400 646409329 593174192 593174192 587287073 590349105 590349105 584131040 848298699 848298699 568136385 675540916 675540916 321082763 302133312 310452306 740319892 740319892 598736241 598736241 596688640 603980163 603980163 809769948 809769948 659457543 659457543 965143178 965143178 349158963 290644540 806473939 806473939 572787009 572787009 630984734 1009125160 1009125160 354763560 392628016 443876034 447948690 534788906 534788906 145961216 145961216 266570844 266570844 245631836 189563740 170765704 170765704 268853518 402653222 402653222 477126722 477126722 473664000 272596792 352888618 352888618 291711064 49159632 393316192 393316192 324580384 324580384 30741088 30741088 53527344 53527344 54663680 54667792 283001090 283001090 96421600 355730250 355730250 156179940 411513007 706227849 761665965 761665965 766385229 1057955091 1057955091 733111953 607400685 648381153 648381153 597400728 108403608 108916632 108916632 72183120 67691136 46085824 46085824 47846658 276829314 276829314 268435458 386998842 660763242 660763242 568479776 153145793 287904006 287904006 561864780 561864780 363952134 405934854 559220803 876619392 876619392 879261898 879261898 275299272 353329064 353329064 211452740 211452740 156711588 156711588 209487200 209487200 166650372 264021880 679779277 1028545315 1038987822 1038987822 736285173 859580448 859580448 340861362 907096843 907096843 913100187 913100187 555909152 555909152 67125296 100712472 726030368 726030368 93112422 480069650 480069650 402663968 134816772 278057538 298967664 298967664 47370960 121908704 121908704 105815048 629007664 629007664 217912649 172878996 173805204 913913868 913913868 480183545 296814146 235242548 757338146 876556299 876556299 473374247 472056360 369147930 402791470 402791470 369464436 58729488 739430405 739430405 152476800 152476800 883475464 883475464 848392112 848392112 1026126173 1026126173 648742014 550043841 713641984 713641984 852746307 852746307 1007694559 1007694559 185899221 683671749 683671749 659832856 659832856 626311841 100960945 39411824 64315120 229377904 235194396 722136164 722136164 723330757 723330757 203169652 203169652 253301944 253301944 252292988 252292988 133019136 41049644 254906436 254906436 369233452 1018987358 1018987358 759353991 289538413 282251694 656945206 656945206 254609198 742127373 774603280 774603280 57548208 526114140 526114140 488258044 488258044 308370762 170156468 204603520 208802700 454053688 454053688 296287860 296287860 196043410 153480288 15435456 15435456 99300840 99300840 110150232 110150232 133220552 384613658 618795081 618795081 806002968 806002968 453284081 718198951 759943346 759943346 370074796 370074796 234930204 123657912 292032568 376051098 607264603 607264603 1027217308 1027217308 577930784 40881152 185501084 185501084 469840142 469840142 254345408 339858942 339858942 244124912 244124912 226690712 475258874 475258874 147157128 481160026 481160026 78329160 78329160 79243080 299082946 342489312 890266712 890266712 596904561 769396461 769396461 248593141 570868749 570868749 579358904 805327019 805327019 623862818 623862818 544087425 544087425 772314384 812209678 812209678 785069776 808034702 808034702 773453519 653317593 916437974 916437974 310017924 114952066 809261161 809261161 632187202 1051809150 1051809150 839129696 825509944 825509944 823397123 685932808 685932808 609660136 609660136 621107233 621107233 243987324 247577152 537707650 540748163 540748163 537745938 457228470 457228470 199314100 199314100 194524502 195035508 195035508 74975112 115156248 343015424 481238554 481238554 406658008 87416264 71352456 977805633 977805633 581242082 581242082 146619137 25137988 142520420 245392784 510936374 772032360 835733208 835733208 352982576 375374720 375374720 297112610 353852984 353852984 327683216 327683216 97915378 335421426 335421426 916266052 1041445407 1041445407 989806551 989806551 312085258 112074072 370461210 370461210 780893982 780893982 574252424 717582746 717582746 1019244747 1019244747 912784137 447455305 447455305 361160578 449978284 449978284 724354486 896960954 896960954 547800936 633209290 633209290 96929920 92276832 320348386 320348386 58010544 309077554 309077554 115344768 115344768 49490520 355076054 355076054 217529292 341638346 341638346 207882636 160795584 151022128 161531648 161531648 194348592 194348592 178029248 178029248 137136224 157680644 189546896 189546896 188177700 188177700 185908480 117982568 117982568 92332088 476588294 476588294 370527664 370527664 836026708 836026708 75566048 574886448 574886448 559291041 522191166 884919152 884919152 366930480 822952378 822952378 644738457 826113299 839045139 839045139 591759394 596436417 682623860 682623860 318767168 825660025 825660025 547853800 1005337784 1005337784 516576676 209738056 204114188 257467648 257467648 139763720 211617000 211617000 83076384 83076384 74243992 633301548 682284357 768137107 768137107 512678430 453509859 780850687 780850687 1018557900 1018557900 856092991 996700250 996700250 512995708 512995708 12583296 13895808 13895808 19793104 19793104 38799552 159648932 450707248 450707248 180036210 687654272 687654272 561913761 561913761 678724448 682937157 682937157 595591281 595591281 180617728 181668564 181668564 96996952 96996952 77408776 380587336 380587336 132376314 268572936 354818306 624811907 624811907 969627766 969627766 659980991 302274576 857752882 857752882 604640265 1068106814 1068106814 19431936 23987232 23987232 23414784 19440544 32123360 32123360 26720448 26720448 143659012 143659012 212343808 222823328 222823328 92536936 17916288 59360160 59368560 59368560 207169180 207169180 201377160 201377160 40810000 46830800 50138192 50138192 46977521 749162680 1009518697 1009518697 546781768 546781768 413211463 314641042 314641042 251996830 340987120 340987120 383523018 383523018 990154968 990154968 240402836 240402836 172054808 167776284 150690560 150690560 14470848 602689169 602689169 549527745 673669212 673669212 648468825 329107953 629687312 629687312 621576688 594708521 594708521 272580354 272580354 268974848 540549248 541527297 552894657 571168144 571168144 53549200 120468512 120468512 131632296 131632296 123608760 133692408 133692408 92400128 10324072 58671024 389975552 389975552 994681658 994681658 334212583 977012060 992217975 992217975 885017162 885017162 486464715 799752278 799752278 596129070 596129070 375131123 613158032 884475723 884475723 607126594 77278048 86256488 102837570 102837570 647445081 647445081 487853862 942720079 942720079 791536976 791536976 124521568 141108612 606094345 942956810 942956810 593637852 943894625 943894625 849474036 182551474 998533602 998533602 998367319 654641196 690031016 742729869 742729869 742729869 52445738 372294426 372294426 353403184 340414474 295766296 66430048 48654064 43115088 186961028 186961028 186939428 25288800 51264704 51264704 597564053 679671889 679671889 168243764 57961536 57961536 185107684 185107684 675588269 675588269 572541209 714121452 742547200 742547200 559689389 570711308 570711308 861268659 861268659 793188536 793188536 579812433 289981602 550806880 815909440 815909440 174643988 428161728 507546846 507546846 480264224 81396432 101323800 101323800 277102832 277102832 2981580 196552780 299093992 601454118 881918744 881918744 820750099 796997373 356116266 497046450 497046450 478302852 478302852 100797447 780698871 780698871 694876644 850277451 910661741 910661741 839910672 751052936 823214619 831627267 854680215 854680215 958426057 958426057 818261332 701820272 871484036 871484036 717352631 174327237 958328208 958328208 261879004 261879004 708837695 708837695 662114452 687026093 957353988 957353988 446343082 368872938 368872938 342149912 294225480 328755232 915425906 915425906 395614578 1051001716 1051001716 855023522 855023522 326108082 772016897 981427722 981427722 806161847 596854392 596854392 706777105 732293152 732293152 899131971 899131971 202809380 682418784 742860945 742860945 673710521 621356073 575147429 640486785 640486785 638134576 236462631 1015882843 1015882843 914959439 672209344 756167534 805380099 1022563023 1022563023 807403779 807284128 807284128 923765676 923765676 673215376 615783744 670176249 670176249 562764021 155714724 711138721 711138721 584433056 584433056 54974624 60957745 599783793 599783793 598779904 26228736 67108872 67108872 117977128 487247914 487247914 106570414 306774554 306774554 100550912 98227944 515904114 515904114 223482540 290728098 307571206 307571206 268636160 268636160 371085384 478554480 478554480 429294166 345317958 345317958 999871041 999871041 959135331 576931286 502812298 684834222 702730725 702730725 674978757 674978757 601591717 702050357 702050357 697524548 182772996 182772996 145101184 448151860 566327624 959399705 959399705 889907181 1017643818 1017643818 533848926 533848926 428868198 900014414 900014414 637846701 866772339 882682680 882682680 359998122 359998122 342826786 293849250 285421602 390830218 390830218 355895096 340057528 360105354 360619962 360619962 321658130 193342516 193342516 322981008 322981008 318844066 318844066 34434210 298133952 371302882 371302882 351205178 351205178 338163978 312695210 273192066 176057448 285137066 285137066 196682356 151716364 151716364 129180120 120603576 517813566 517813566 478304498 478304498 278164448 369439832 369439832 409866372 409866372 493768952 493768952 269765688 82786754 156065604 564030126 830572042 830572042 337141859 138015296 428313804 1012288519 1012288519 852807558 852807558 415849655 415849655 281574858 769645205 769645205 127272544 173157060 186823780 186823780 92800104 138020540 625002448 654325561 654325561 559505960 97976320 97976320 194910944 199282293 736106517 736106517 543189013 452986898 541735057 541735057 820125473 820125473 952122871 977251154 977251154 659752929 551674305 676979077 676979077 619369929 619369929 587977250 364571530 519979890 519979890 310378626 361433728 366952170 366952170 433594660 433594660 181536388 62448976 104910808 180132672 654306400 654306400 50278096 553322176 553322176 15991680 15991680 30352960 102360600 580577356 671537157 671537157 215315145 118488120 70148400 302133312 310452306 499479800 572966326 572966326 158001489 274726921 854595020 854595020 617093014 617093014 948180321 948180321 965143178 965143178 349158963 47395536 806473939 806473939 1036534261 1036534261 630984734 1009125160 1009125160 473306252 439358234 506604508 506604508 467480310 192349892 159525824 159525824 129424248 84312912 38699456 252183712 252183712 167810080 167810080 163976356 163976356 143531076 12134208 12134208 3498816 3155712 2819458 272838786 297956674 297956674 40637408 324580384 324580384 277088000 268468610 295922434 295922434 280002784 54667792 54667792 96421600 96421600 41337432 133533296 133533296 411513007 706227849 761665965 761665965 766385229 1057955091 1057955091 733111953 541843929 648381153 648381153 597400728 108025752 108025752 106745496 71236424 69794200 40575888 40575888 47846658 584582625 855056931 855056931 847977394 759263392 759263392 757299341 216056268 216056268 220270628 561864780 912393851 912393851 756409088 691160968 691160968 517653532 56477852 182549824 182549824 176043856 106952728 37977224 7996688 4055040 415744 415744 104219408 104219408 245097873 679779277 1028545315 1038987822 1038987822 331721474 420013724 588275713 588275713 907096843 907096843 545259585 545259585 555909152 630199144 630199144 581469785 764056649 764056649 655557460 480069650 480069650 691367535 967509559 1002198253 1002198253 444969142 576929854 828654056 828654056 105815048 629007664 629007664 217912649 172878996 173805204 791479248 791479248 697847227 697847227 235242548 1068975183 1068975183 876556299 660868242 1024175292 1024175292 206043276 560246924 560246924 20971680 20971680 12847296 75900704 75900704 302095760 302095760 203611586 144343576 637550600 637550600 605603337 236577921 172541076 139060356 139060356 480321870 820159145 820159145 383863018 683671749 683671749 659832856 794293237 794293237 1003871108 1003871108 958847747 872854691 296367612 296367612 121660949 796561849 796561849 80013840 80013840 16834592 16834592 215251280 215251280 171487056 248245782 354031146 889320170 889320170 272646464 283165122 283165122 10518658 83952656 656945206 656945206 825823036 1010704143 1059458948 1059458948 701801136 701801136 624191496 407422332 407422332 260579196 260579196 478010250 478010250 462064808 462064808 422655078 425175718 426281984 426281984 28479808 31174400 73134080 74109016 110150232 110150232 157028004 492797148 498585624 498585624 26206946 287832354 453284081 718198951 759943346 759943346 370074796 370074796 674338850 959970087 959970087 376051098 376051098 149063890 227331964 227331964 221433172 152195632 152195632 69243192 469840142 469840142 254345408 339858942 411545796 411545796 357724870 150371880 475258874 475258874 467939964 481160026 999310633 999310633 811616933 888280011 888280011 318653665 131183096 106563104 915461229 915461229 769396461 464306468 444878968 444878968 50583632 807567424 807567424 623862818 623862818 201960483 674529360 680628485 680628485 541193296 541193296 314049818 773453519 773453519 653317593 916437974 916437974 234885132 143560220 809261161 956527736 956527736 1051809150 1051809150 1003553308 428225004 269900057 824220426 940884331 951323239 951323239 900450340 262582280 262582280 243987324 247577152 247577152 177848384 4243584 141813188 450907440 450907440 187119686 176409604 328263220 328263220 32527346 35055824 179309406 343015424 481238554 481238554 449415514 376751364 376751364 977805633 977805633 581242082 581242082 490827924 490827924 469619116 469619116 510936374 772032360 835733208 835733208 485563400 485563400 341909898 308010881 652171979 652171979 347392842 916231478 916231478 702742384 702742384 916266052 1041445407 1041445407 956116935 956116935 440266518 1041523977 1041523977 370461210 780893982 780893982 574252424 717582746 717582746 685116240 645768808 623693097 323822081 271227280 271227280 57152736 62656368 62656368 51859360 29624544 29624544 543326852 674049285 696590757 696590757 320348386 320348386 58010544 309077554 309077554 115344768 115344768 16176384 355076054 355076054 217529292 341638346 341638346 207882636 151022128 151022128 161531648 161531648 190089984 190089984 178029248 178029248 137136224 157680644 184716948 184716948 188177700 188177700 232467368 241036920 241036920 235169584 476588294 476588294 370527664 370527664 450937708 717226197 717226197 697668589 870895627 870895627 1073041119 1073041119 884919152 841713947 919241648 919241648 544387088 544387088 839045139 839045139 579592689 885006568 885006568 632859339 938817409 938817409 1047242848 1047242848 1005337784 1005337784 516576676 114967404 42992208 28736424 174717252 174717252 152331620 225436960 225436960 620307616 637196265 637196265 682284357 682284357 235321125 257701376 257701376 206384796 226381324 1018557900 1018557900 856092991 814595875 814595875 758003789 758003789 323330289 382471770 714599724 714599724 806504752 806504752 1027348655 1027348655 979189617 786015977 687654272 687654272 413933520 963255154 963255154 852760065 852760065 1030820759 1030820759 1055326276 1055326276 74197460 96996952 96996952 77408776 380587336 380587336 132376314 268572936 354818306 624811907 624811907 969627766 969627766 659980991 217488069 857752882 857752882 604640265 1068106814 1068106814 342361482 290166756 290166756 4101632 18281728 18281728 29695200 30880736 30880736 10885440 21422720 21422720 25807680 25807680 23668128 17916288 59360160 59368560 59368560 60033648 110715560 124118832 124118832 121596832 121596832 55961360 48026256 48996576 749162680 749162680 806363906 829498275 829498275 146867047 314641042 314641042 251996830 340987120 340987120 846791734 973921278 973921278 828228755 828228755 712485634 208253786 167776284 907907073 907907073 351230306 602689169 602689169 549527745 606568074 647512882 647512882 911255371 925995627 925995627 822191792 822191792 559669680 591093025 591093025 540105857 540549248 540549248 37863825 34392080 42442104 128442706 335963690 335963690 308970794 364218056 364218056 374867610 374867610 366009154 365429960 103421208 103421208 334759843 994681658 994681658 790393704 1055056145 1055056145 992217975 847419396 847419396 439689030 834002935 834002935 596129070 596129070 57160049 49284496 49284496 49873168 49873168 43591248 36977488 102837570 102837570 647445081 805885441 805885441 942720079 1009963791 1009963791 930014562 991625266 991625266 918615619 875771650 875771650 593637852 943894625 943894625 1067499903 1067499903 1044382949 593799204 729133025 729133025 654641196 655330761 655330761 805626947 805626947 372454170 942886964 942886964 809645177 809645177 369164810 369164810 323529008 186961028 186961028 186939428 7845936 185806864 185806864 597564053 679671889 679671889 168243764 565647074 811469927 962334375 962334375 759957543 759957543 572541209 714121452 742547200 742547200 559689389 609374921 609374921 412143744 157812132 793188536 793188536 873124354 873124354 621835835 103957291 174643988 174643988 277224056 307109010 480264224 494170464 494170464 437782038 527968054 527968054 376468192 376468192 196552780 293830984 1017671786 1017671786 881918744 820750099 555958592 392217434 497046450 497046450 478302852 478302852 1049330152 1049330152 1018145013 1018145013 998367351 998367351 977304335 839910672 804791805 154208441 755499045 755499045 667175588 958426057 958426057 818261332 905428110 905428110 871484036 988616781 988616781 958328208 958328208 367926986 261879004 708837695 708837695 662114452 687026093 957353988 957353988 367236632 368872938 368872938 849848121 849848121 834473219 915425906 915425906 395614578 1051001716 1051001716 1023679718 1023679718 303847504 772016897 981427722 981427722 806161847 602670656 602670656 601361633 732293152 866786112 866786112 289033998 72862336 747143760 747143760 617956373 191957201 228917560 228917560 218956032 218956032 697651810 697651810 1015882843 1015882843 914959439 107363002 834922882 834922882 1022563023 1022563023 807403779 893972704 893972704 923765676 923765676 673215376 131662880 117176280 721297608 721297608 155714724 711138721 711138721 562725153 546908992 546908992 78645568 599783793 599783793 598779904 26228736 89442816 89442816 117977128 487247914 487247914 235061276 306774554 306774554 135841284 135841284 94674528 338312426 338312426 338829960 338829960 307571206 167845908 85788004 371085384 371085384 201442432 201442432 240181568 240181568 999871041 999871041 959135331 224828734 182895025 617519148 634000617 634000617 674978757 674978757 601591717 702050357 702050357 697524548 136661424 136661424 641877115 641877115 448151860 959399705 959399705 1057141072 1057141072 1017643818 994672760 639016969 639016969 588815931 637846701 637846701 866772339 882682680 882682680 81844392 80081384 80081384 271311984 351118418 352764162 352764162 306580392 319458304 319458304 67216448 395757912 395757912 193342516 270073904 285216304 285216304 357418040 357418040 389095994 389095994 37047066 520448566 520448566 280308546 509871104 509871104 273192066 39112704 285137066 285137066 143482244 143482244 129180120 129180120 120603576 517813566 517813566 478304498 478304498 433737088 433737088 212279362 409866372 510154954 510154954 493768952 364613936 82786754 156065604 564030126 564030126 287770058 287770058 763671141 763671141 424071044 621973348 621973348 1007430145 1007430145 1046362622 1046362622 904795331 789763824 579076480 579076480 186823780 186823780 92800104 138020540 625002448 654325561 654325561 559505960 97976320 97976320 194910944 199282293 736106517 736106517 543189013 436867521 541735057 541735057 820125473 820125473 952122871 977251154 977251154 292275424 292275424 108529560 376777602 379087048 403215610 403215610 233493132 359025066 359025066 310378626 144315972 143531076 436208646 436208646 433594660 456028658 462413398 462413398 420711024 180132672 155980960 22405504 10420480 6291840 15991680 15991680 14944704 102360600 580577356 671537157 671537157 215315145 591422393 591422393 580781986 870059763 870059763 823344336 572966326 1052849304 1052849304 854595020 854595020 617093014 866756249 948180321 948180321 860395608 743184932 945721507 945741447 945741447 757783499 1036534261 1036534261 725883304 495717418 473306252 473306252 439358234 506604508 506604508 487624064 487624064 159525824 159525824 59002632 118015032 253235400 253235400 252183712 191810728 191810728 171049820 171049820 70054232 111191064 243533140 243533140 319765554 319765554 325731834 455308732 455308732 312525138 414167508 414167508 311847298 311847298 295922434 338741538 338741538 21395456 23366272 81238464 93257760 93257760 20736640 20736640 257633216 257633216 35651856 50337024 50337024 30115600 97338240 97338240 83145096 52584704 131797680 131797680 127087224 108025752 106745496 71236424 91334752 91334752 74560256 54207088 584582625 855056931 855056931 847977394 759263392 759263392 757299341 216056268 216056268 220270628 220270628 912393851 912393851 756409088 691160968 691160968 517653532 475795086 524160744 524160744 193347784 193347784 233255284 233255284 226219360 221976204 221976204 210713676 169514712 169514712 107040984 332364670 332364670 138534408 331721474 620831264 620831264 588275713 582247986 889806176 889806176 825253906 825253906 630199144 630199144 624477224 1016653720 1016653720 655557460 151176490 219997187 691367535 967509559 1002198253 1002198253 444969142 576929854 828654056 828654056 255919870 255919870 252176678 439096626 570554890 624559625 908592619 908592619 984694830 984694830 647546457 1068975183 1068975183 839170505 660868242 1024175292 1024175292 409863322 560246924 560246924 30285024 415423462 415423462 142069320 437933140 437933140 326141856 492831584 492831584 637550600 672186885 672186885 236577921 633781668 633781668 139060356 979694418 993100218 993100218 758448908 383863018 463702022 463702022 794293237 794293237 1003871108 1003871108 958847747 872854691 738277780 738277780 576895897 796561849 796561849 102179368 760269492 760269492 222566949 219548192 184573076 207185160 248245782 354031146 889320170 889320170 434039392 190582206 740532480 740532480 919894853 919894853 948574312 948574312 1010704143 1059458948 1059458948 701801136 701801136 624191496 416757648 416757648 292968116 260579196 478010250 478010250 462064808 462064808 422655078 425175718 426281984 426281984 28479808 31174400 73134080 73134080 72426120 72426120 157028004 492797148 498585624 498585624 887880579 887880579 287832354 211338828 455119911 685231813 685231813 197492480 674338850 959970087 959970087 285631237 653045016 721994805 721994805 637840424 637840424 220564360 245010012 245010012 69329160 152687276 214026436 214026436 427888652 486539310 486539310 71984166 360992526 467939964 467939964 445721251 1055429905 1055429905 811616933 888280011 888280011 679339992 962174918 962174918 915461229 915461229 551730356 593705861 675436002 919078107 919078107 807567424 807567424 178152004 814225612 814225612 674529360 680628485 680628485 541193296 614195924 906527258 906527258 473031438 473031438 182703384 314761616 314761616 683298818 1015546959 1015546959 956527736 889274902 1003553308 1003553308 834556119 269900057 1040994802 1040994802 951323239 951323239 900450340 567467229 641389888 714098136 714098136 549180438 984827395 984827395 807558146 690819075 690819075 312312630 570508337 570508337 328263220 294855412 669395895 669395895 335808522 540082709 540082709 449415514 376751364 376751364 460599724 509547050 509547050 241569586 490827924 490827924 469619116 469619116 534880288 534880288 182542206 203165760 485563400 485563400 341909898 308010881 652171979 652171979 347392842 916231478 916231478 702742384 702742384 847583320 847583320 583215707 956116935 956116935 448268118 1041523977 1041523977 324104514 324104514 26843218 10240000 8437824 2363352 645768808 645768808 623693097 834194214 834194214 312828464 556363304 615893995 615893995 471980703 1040455737 1040455737 921656217 674049285 696590757 696590757 562097333 562097333 20284960 251040509 671411553 679563717 707317104 707317104 124876296 124876296 27788640 198214848 198214848 193250484 193250484 13389760 172263200 172263200 20465812 13471296 10001920 10001920 21275172 139320004 187887028 187887028 263979984 263979984 232467368 241036920 241036920 235169584 292028432 520225958 520225958 171969952 293650615 717226197 717226197 697668589 870895627 870895627 1073041119 1073041119 209751419 841713947 919241648 919241648 111797592 285389200 285389200 869437552 869437552 885006568 885006568 829238067 938817409 938817409 1047242848 1047242848 167824287 162645016 194349580 194349580 217216248 217216248 174717252 678249157 678249157 225436960 225436960 620307616 637196265 637196265 90961320 566869281 566869281 93138024 83635872 50865344 22092416 22092416 19838240 19838240 253780252 715563329 758003789 758003789 323330289 382471770 714599724 714599724 806504752 806504752 1027348655 1027348655 979189617 786015977 432402256 270433269 413933520 963255154 963255154 852760065 852760065 1030820759 1030820759 1055326276 1055326276 302384484 302384484 30673632 100664448 100664448 80352456 111597672 394671608 394671608 221612710 221612710 431604166 431604166 134217732 135266820 461541426 461541426 272646280 272646280 342361482 342361482 290166756 290166756 29710336 29710336 21071488 29695200 30880736 30880736 5729120 21422720 70436064 70436064 70570216 70570216 16900128 123989152 123989152 51218264 53774584 110715560 124118832 124118832 121596832 121596832 55961360 48026256 48996576 54452016 616579817 806363906 894002955 894002955 904210923 904210923 846749921 913588491 987474369 1042183699 1042183699 973921278 973921278 828228755 828228755 712485634 387567760 120168482 907907073 907907073 435334884 450516870 456279958 456279958 606568074 639589905 639589905 911255371 925995627 925995627 822191792 822191792 559669680 591093025 591093025 541327361 541327361 805848321 809814147 810389760 810389760 274865408 372639618 372639618 369233946 364218056 364218056 374867610 374867610 366009154 365429960 103421208 103421208 361090066 836513747 836513747 790393704 1055056145 1055056145 913100187 802591101 802591101 439689030 834002935 834002935 621489560 920001562 920001562 850536176 537234258 599672432 599672432 43591248 36977488 45352976 45352976 37494544 805885441 805885441 632329057 1009963791 1009963791 930014562 991625266 991625266 918615619 875771650 875771650 311604640 333496818 333496818 1067499903 1067499903 1044382949 689415826 729133025 793258932 793258932 792076269 792076269 805626947 805626947 426336390 942886964 942886964 809645177 809645177 369164810 369164810 323529008 115148016 144718208 144718208 30349668 185806864 185806864 156627520 163977444 163977444 56770932 565647074 811469927 962334375 962334375 759957543 759957543 400172734 696557676 956400258 956400258 693232293 676549157 683794957 683794957 580008463 580008463 911136923 1053668959 1053668959 923877408 929351384 929351384 156421132 278956866 320525682 320525682 494170464 494170464 437782038 527968054 527968054 376468192 376468192 92504602 293830984 1017671786 1017671786 277971208 555958592 555958592 392217434 392217434 127976514 383832328 383832328 1049330152 1049330152 1018145013 1018145013 998367351 998367351 977304335 804791805 804791805 154208441 755499045 755499045 667175588 762700230 762700230 518038299 905428110 905428110 682618819 988616781 988616781 417915845 367926986 367926986 224452102 333054726 337676216 458162694 473017562 473017562 414454656 414454656 381300278 302515218 849848121 849848121 834473219 328518674 328518674 320063802 1043454542 1043454542 1023679718 1023679718 303847504 530918966 530918966 255482678 608477692 815352197 873863691 899042786 1015733286 1042968705 1042968705 661295211 661295211 747143760 747143760 604374893 654385288 654385288 429140530 814236377 814236377 934265354 982695468 982695468 231364702 681968268 681968268 834922882 834922882 636535785 561516578 689643777 893972704 893972704 478811214 311957000 265979588 117176280 117176280 746926220 746926220 236978460 612437064 612437064 537734145 546908992 546908992 78645568 78645568 94388224 94388224 26153568 89442816 89442816 32107168 684123113 684123113 235061276 796783009 796783009 135841284 135841284 197476816 694255817 694255817 416293356 842272691 842272691 418774054 392195508 392195508 269169666 269169666 201442432 310107856 310107856 436863542 436863542 407630982 556011844 673223713 949015557 949146183 949146183 403273281 152569380 168325120 168325120 14253152 184668804 184668804 139816608 641877115 641877115 150021060 498229384 498229384 1057141072 1057141072 994672760 994672760 639016969 639016969 588815931 302014540 332786194 332786194 62963952 300395000 362622570 362622570 344907682 304624962 351118418 352764162 352764162 342072608 342072608 51430960 67216448 395757912 395757912 127965272 270073904 285216304 285216304 357418040 357418040 389095994 389095994 169819668 520448566 520448566 224136876 509871104 509871104 49715296 25820912 147760324 147760324 143482244 143482244 123736048 123736048 71404264 212867468 212867468 276431592 276431592 433737088 1012946061 1012946061 204429578 622085157 622085157 373589406 492378030 492378030 805307339 805307339 347374410 344246344 287770058 763671141 763671141 298429888 621973348 621973348 1007430145 1007430145 1046362622 1046362622 904795331 789763824 579076480 579076480 571085841 571085841 528401 67141640 67141640 59892336 96510264 96510264 24118176 17932800 17932800 3833984 5057664 172559744 172559744 868480 868480 4268160 4268160 541798402 810026115 810026115 285713888 297981760 841568707 841568707 576719875 576719875 574433665 538750224 599040 315627534 315627534 268773378 268773378 268580064 436208646 436208646 334509392 457983652 462413398 462413398 420711024 10133252 22405504 22405504 12716160 14157504 14157504 6340992 6340992 222556332 990738718 990738718 307286255 715264341 878706791 878706791 658641081 870059763 870059763 823344336 137628256 1052849304 1052849304 626860136 626860136 175124454 866756249 866756249 860395608 860395608 743184932 945721507 945741447 945741447 757783499 642128209 725883304 725883304 707005232 707005232 215486156 215486156 201474176 136499460 487624064 487624064 234226264 117577676 186648980 186648980 253235400 253235400 108053852 191810728 191810728 216521672 216521672 100681036 111191064 243533140 243533140 319765554 319765554 354588576 455308732 455308732 312525138 414167508 414167508 311847298 311847298 99838344 338741538 338741538 19972896 24449312 24449312 93257760 93257760 88344256 50933432 106568736 106568736 86904728 117312944 117312944 265517156 265517156 97338240 95914568 420025938 420025938 452856392 452856392 324609832 101994626 374790810 374790810 309570458 281223490 304284370 331425474 331425474 394005936 394005936 321653378 537977277 537977277 137886468 595034293 595034293 805322752 805322752 406186758 406186758 432573607 836536535 986219549 986219549 776751290 524160744 193347784 193347784 233255284 233255284 226219360 221976204 221976204 210713676 361804026 361804026 209523140 418252108 418252108 475128462 475128462 889242638 889242638 942371904 958971988 958971988 889806176 825253906 825253906 554820129 624477224 624477224 1016653720 1016653720 305334089 289518472 74498828 336876006 363868264 428298764 557465957 946116472 946116472 927205563 556008080 731516770 731516770 962736953 993604597 993604597 995426482 1051853760 1051853760 984694830 984694830 647546457 1064879505 1064879505 891415201 771789598 439562251 904651980 904651980 843607134 843607134 981549378 981549378 702595173 152042532 437933140 444109460 444109460 863912790 1026301043 1026301043 672186885 672186885 501050032 633781668 633781668 478478536 1007092426 1007092426 993100218 758448908 339769774 463702022 463702022 170342676 231347436 231347436 227218600 197201324 197201324 1007274037 1007274037 789367869 572818748 573847300 739129245 760269492 760269492 683976836 219548192 768040573 768040573 730477397 688500679 831574018 831574018 899143655 899143655 740532480 740532480 919894853 946648440 1057754228 1069073428 1069073428 1038308384 1038308384 460100800 460100800 324872018 416757648 416757648 292968116 87477248 77124482 155994082 155994082 25239648 22163968 25244192 25244192 13113056 4727872 17889344 76174476 76174476 803000057 803000057 662020012 1042898223 1042898223 745252164 933577205 1072996647 1072996647 1032148171 1032148171 790811796 685231813 197492480 222763272 222763272 40679840 197731572 653045016 721994805 721994805 637840424 637840424 220564360 245010012 245010012 59269200 152687276 152687276 156058624 427888652 486539310 486539310 90800160 111444260 398986628 398986628 265727386 1055429905 1055429905 600138711 656673081 679339992 679339992 962174918 962174918 674573061 551730356 551730356 593705861 675436002 919078107 919078107 679510221 134353262 178152004 814225612 814225612 394182656 394182656 1020906534 1020906534 645404605 906527258 906527258 293622178 331415720 348139856 348139856 314761616 683298818 1015546959 1015546959 889274902 889274902 715691616 834556119 834556119 221024052 1040994802 1040994802 102026664 667770020 667770020 567467229 641389888 714098136 714098136 549180438 984827395 984827395 807558146 690819075 690819075 312312630 570508337 570508337 190350004 294855412 669395895 669395895 184155288 540082709 540082709 384311384 472909696 472909696 460599724 509547050 509547050 241569586 0 0 0 276824064 534880288 534880288 130727296 145494390 324116270 492954030 492954030 361919428 83886120 116168440 116168440 472029792 472029792 482463064 482463064 393611292 177933632 177933632 125699276 417990516 448268118 448268118 404759954 364729738 583537394 851789056 851789056 623190444 716466481 716466481 159658385 1021763601 1059070989 1059070989 838648111 838648111 615893995 615893995 826283345 1040455737 1040455737 950179932 660012580 585627073 194997344 562097333 562097333 700619596 700619596 671411553 679563717 707317104 707317104 308373662 308373662 243005340 377891658 377891658 249595412 249595412 42992208 172263200 172263200 180471680 180471680 185629504 958076707 958076707 139320004 819551875 819551875 263979984 263979984 251476404 893746338 893746338 676768912 783046202 783046202 740983134 24381598 90473008 105042072 105042072 118414392 118414392 289567061 726373091 726373091 569509281 555873745 555873745 283664515 598794850 841031955 845687123 869437552 869437552 590907891 293603698 829238067 829238067 875867594 875867594 805444488 805444488 614459432 355494984 194349580 217216248 217216248 159421920 678249157 759606956 759606956 162437449 139946148 212602188 212602188 166943276 566869281 566869281 219951968 219951968 228144236 228144236 1031945724 1031945724 949839220 949839220 253780252 239558972 731996670 731996670 469811214 469811214 403268616 136912896 136912896 531104062 531104062 530821450 530821450 422093786 417344166 417344166 475329512 475329512 458809350 490259270 490259270 359813324 311599996 271074572 302384484 302384484 125178032 113909416 169181345 728185269 728185269 717164177 669581681 607086739 437716770 437716770 431604166 608354304 608354304 608309385 815284681 815284681 875201666 875201666 79745354 69248384 29610432 29710336 29710336 28541408 23927200 23927200 22390432 9646656 9646656 70436064 95996416 95996416 77231304 77231304 123989152 123989152 100937760 84967904 84967904 83214472 110926856 110926856 74107536 45133520 37566336 37566336 93720576 616579817 616579817 894002955 894002955 904210923 904210923 846749921 913588491 987474369 1042183699 1042183699 753480102 321549112 321549112 240727134 387567760 387567760 120168482 144503936 150346692 435334884 450516870 456279958 456279958 323932480 296112624 367576554 395341738 831694721 831694721 543786336 376116233 369157785 369157785 539230208 541327361 543688064 805848321 809814147 810389760 810389760 274865408 372639618 372639618 369233946 304104896 322311464 322311464 118363858 126930496 126930496 67947128 52768232 361090066 458764508 724917825 724917825 687065408 687065408 767871182 767871182 693211698 549454017 44542032 46536912 621489560 920001562 920001562 850536176 537234258 599672432 599672432 9946496 16728000 75825432 308291154 383582920 383582920 282732096 412312772 547551650 547551650 217343213 557813888 815497370 815497370 376472603 128669168 945485368 945485368 939708423 761715117 761715117 689415826 689415826 389610413 793258932 793258932 792076269 792076269 680285740 680285740 426336390 512468512 632349616 632349616 345505888 294813994 52570688 52570688 32251904 144718208 144718208 30349668 139332352 139332352 156627520 163977444 163977444 10207908 863232 2097152 2097408 2097408 51191384 834876050 834876050 185136225 956400258 956400258 693232293 676549157 683794957 683794957 580008463 580008463 911136923 1053668959 1053668959 959570499 929351384 929351384 188474168 371199392 378800410 378800410 375411832 375411832 0 0 54526316 417366396 720535851 720535851 645043220 645043220 776487436 776487436 583032928 361550580 687786326 891587093 891587093 737029251 737029251 585633573 585633573 422614684 1014692638 1014692638 775636162 798494544 880027961 880027961 313001305 459350068 822419494 822419494 609485026 609485026 494993979 383914458 383914458 45402960 579224656 579224656 73189740 192599988 243270420 264951036 438980912 438980912 59392640 298352696 298352696 414454656 414454656 381300278 302515218 339874968 339874968 555233584 555233584 579141665 911497355 911497355 907467291 714163822 533335944 183177346 1008476696 1047860233 1047860233 608477692 815352197 873863691 899042786 1015733286 1042968705 1042968705 661295211 661295211 418932876 540108644 928000569 928000569 654385288 773128593 814236377 814236377 934265354 982695468 1033962490 1033962490 760649247 681968268 620108745 72366497 163643396 163643396 99690176 156945388 156945388 144497088 219400544 679682725 679682725 241000200 746926220 746926220 236978460 236978460 236529408 609303737 609303737 625705512 625705512 553931784 94388224 94388224 118444848 118444848 89614616 89614616 684123113 684123113 95608324 796783009 796783009 132726136 132726136 200491536 694255817 694255817 416293356 842272691 842272691 418774054 392195508 392195508 269169666 269169666 71316618 310107856 310107856 763572333 763572333 763572333 556011844 673223713 949015557 949146183 949146183 621494313 558507441 738284605 738284605 709753904 709753904 184668804 139816608 9441408 12587136 12587136 8523840 135232 728760960 728760960 43225397 33604176 58753032 125829240 209780738 302014540 332786194 332786194 65142880 300395000 362622570 362622570 344907682 335595538 335595538 104686112 333249938 342072608 342072608 320447826 320447826 388166440 388166440 141549444 323401808 323401808 199298102 34417680 169688080 169819668 169819668 169819668 135993876 8462592 10486080 294199696 315577584 315577584 171024836 404723470 404723470 68732424 74634120 123736048 123736048 71404264 394053722 394053722 67390368 288883522 464527346 1012946061 1012946061 204429578 622085157 622085157 443559456 492378030 492378030 805307339 805307339 347374410 344246344 590529616 732806209 732806209 682235205 348472205 92426376 92426376 97015338 269607426 739222394 739222394 291893409 655986240 655986240 603136497 603136497 46872448 68387352 587776128 587776128 617128360 617128360 24118176 7575680 168577792 168577792 542442241 708578177 708578177 1249091 671503557 671503557 718417013 718417013 810026115 983912496 983912496 332969584 841568707 841568707 576719875 576719875 574433665 538750224 60371632 324018242 446763864 446763864 268773378 268580064 268580064 281088132 281088132 457983652 457983652 153862918 152253220 152253220 541899649 541899649 24516992 547542016 564303329 564303329 559961185 553816064 990738718 990738718 983467115 824657950 878706791 878706791 658641081 165879565 578362049 578362049 137628256 182064304 485545971 720673030 720673030 312702734 706742289 822230362 822230362 621446234 621446234 504331378 504331378 994300482 994300482 845411584 845411584 688914981 707005232 707005232 380914882 380914882 474125968 508695198 508695198 265358898 234226264 117577676 529924238 529924238 483918762 483918762 445780566 445780566 475869392 555884545 694233392 694233392 667924909 659965048 601038372 172962401 108213984 655861457 655861457 654245176 606076425 603846192 522020140 180956364 180956364 10885440 10885440 86000776 86000776 274222090 274222090 89443848 277990530 277990530 167872356 167872356 113254680 319823938 319823938 136180772 362883370 362883370 263727552 247599324 420025938 420025938 452856392 452856392 324609832 117440472 374790810 374790810 465601924 465601924 329827698 331425474 331425474 394005936 394005936 321653378 537977277 537977277 194255181 709380380 894293037 894293037 805322752 772326429 776473741 776473741 836536535 986219549 986219549 776751290 253231540 118140216 118140216 101368128 91881664 101721816 101721816 126428280 126428280 361804026 361804026 209523140 418252108 418252108 475128462 475128462 889242638 889242638 942371904 958971988 958971988 667992825 684832640 684832640 418965515 549589618 549589618 594084966 954237512 954237512 758214663 74498828 338182240 363868264 898418026 898418026 946116472 946116472 927205563 556008080 731516770 731516770 962736953 993604597 993604597 995426482 1051853760 1051853760 999821156 1022367335 1022367335 1064879505 1064879505 891415201 771789598 439562251 904651980 904651980 843607134 843607134 981549378 981549378 1024376928 1024376928 724222306 724222306 842175319 863912790 1026301043 1026301043 555845800 555845800 501050032 555486090 555486090 478478536 1007092426 1007092426 1006896906 1006896906 538233345 885136491 885136491 593637441 638061789 638061789 492307877 968738418 968738418 1007274037 1007274037 789367869 791496229 791496229 739129245 739129245 683976836 683976836 572281057 768040573 768040573 730477397 688500679 831574018 831574018 899143655 1060374477 1060374477 505493638 1015206438 1015206438 1057754228 1069073428 1069073428 960940940 960940940 460100800 460100800 313471856 313471856 38803088 87477248 328837888 328837888 328129650 299525682 429880900 429880900 294258722 290039970 277775520 15296640 5116264 93015168 93015168 803000057 803000057 948983564 1042898223 1042898223 745252164 933577205 1072996647 1072996647 1032148171 1032148171 790811796 789475332 789475332 778245252 185213308 226072368 226072368 178751556 178751556 153149552 123102128 244820552 244820552 40294800 59269200 59269200 42042480 265094412 265094412 164537356 224625804 224625804 90800160 497386794 497386794 439427024 439427024 524829948 524829948 163627236 130057244 525312 525312 525312 1024 1646944 45721968 45721968 128093270 128093270 411776070 497160196 679549002 679549002 605038486 605038486 676149898 676149898 689099300 1020906534 1020906534 645654461 669339404 772558161 772558161 606194061 654909768 654909768 85987496 539000912 539000912 674796373 681859141 715691616 715691616 705827349 249264940 101992448 101992448 35651088 84255520 103494936 103494936 73787784 73787784 193525720 193525720 174578132 293459490 314296770 314296770 809009906 809009906 537518128 537518128 273603862 273603862 465751108 465751108 434687172 344197194 344197194 192151702 448529180 472909696 472909696 389844406 389844406 53267760 553671714 553671714 508873374 508873374 705472896 705472896 509731230 509731230 145494390 409996190 492954030 492954030 458425888 551102145 551102145 346740042 651056572 651056572 471648193 471648193 393611292 474157328 474157328 941962067 941962067 369591226 981783301 981783301 820192555 1012936864 1012936864 954803655 785990150 716466481 810675394 843359041 1021763601 1059070989 1059070989 838648111 1059113252 1059113252 451878394 826283345 826283345 950179932 950179932 753286492 753286492 581367877 489826838 489826838 700619596 700619596 616753161 616753161 477388373 928783755 928783755 885311691 243005340 914662144 914662144 815532232 249595412 42992208 42992208 146303120 180471680 180471680 185629504 958076707 958076707 35569824 819551875 819551875 595904592 216217096 251476404 893746338 893746338 676768912 783046202 941568158 941568158 606261180 635474772 818264146 818264146 34417680 34417680 289567061 726373091 858477842 858477842 825972531 808956690 283664515 598794850 841031955 845687123 845687123 577858339 315378099 69501258 805444226 805444226 875867594 875867594 805444488 805444488 614459432 367401450 359041322 346346698 346346698 276061990 270736480 759606956 759606956 226933152 226933152 85408296 166943276 166943276 499412130 499412130 634086024 825270307 1035482315 1035482315 1031945724 1031945724 949839220 1014853359 1014853359 748955897 761916920 761916920 469811214 775963828 843711170 843711170 843167458 913402720 913402720 227815742 422093786 508494946 508494946 417344166 475329512 475329512 379918054 223167004 359813324 359813324 67113966 9724864 34118944 125178032 125178032 113909416 169181345 728185269 728185269 717164177 669581681 607086739 437716770 817897332 817897332 793042964 608354304 1052786880 1052786880 883085571 883085571 875201666 327188560 327188560 38986896 49147344 49147344 40462816 24258144 27976000 27976000 10051584 9646656 84984560 111808216 111808216 77231304 120350848 120350848 100937760 100937760 84967904 84967904 20388976 20388976 35174752 45133520 45133520 37566336 37566336 93720576 93720576 73245536 32509312 18238048 50793632 306095176 306095176 250859858 231086728 231086728 467206356 506281948 506281948 110163104 370348710 370348710 334573630 226567364 361672910 361672910 207657192 207657192 321647922 323932480 935624256 935624256 367576554 395341738 395341738 386213946 370116386 588005504 588005504 50482688 50482688 557878400 842295633 842295633 588375811 386668466 386668466 125965858 89129224 98599360 335598216 335598216 87716514 323545560 323545560 351451992 351451992 300941914 336382986 336382986 458764508 458764508 90837794 703090501 703090501 741281821 741281821 722750419 842803840 842803840 603721713 603721713 269690355 561842656 841594545 841594545 60683616 62719344 62719344 38423888 75825432 308291154 383582920 819195971 819195971 814867011 547551650 547551650 902199306 902199306 561901473 561901473 299145571 128669168 945485368 945485368 939708423 761715117 761715117 793279212 793279212 559860412 752498041 752498041 736190142 736190142 680285740 680285740 247690748 421696274 421696274 846982848 846982848 341405928 341405928 305791680 144976468 144976468 177020948 177020948 139332352 161275812 161275812 146005376 146417728 146417728 5976994 290597126 408560774 408560774 182535190 834876050 834876050 767607021 767607021 327792155 206709252 638845061 638845061 20060457 413805600 503715870 656171810 998831439 998831439 959570499 465143149 629301552 629301552 873218848 873218848 559416993 326420162 607158280 607158280 541074304 356581464 570687904 720535851 996199296 996199296 645043220 776487436 776487436 583032928 761784094 960856375 960856375 891587093 737029251 737029251 585633573 585633573 422614684 1014692638 1014692638 945380638 945380638 973391446 973391446 346859749 854403161 854403161 822419494 609485026 957363657 957363657 483343566 483343566 150050306 944039244 944039244 416400581 212160396 243270420 264951036 438980912 438980912 102781872 403374464 403374464 314151728 487659968 487659968 639182361 639182361 544746218 555233584 555233584 579141665 911497355 911497355 907467291 714163822 587131068 746440111 1008476696 1047860233 1047860233 688406441 555229336 382209060 1022404610 1022404610 230711336 279105624 279105624 245491466 418932876 540108644 928000569 928000569 541132063 773128593 773128593 576981901 535748094 357451110 1033962490 1033962490 760649247 818124938 889381507 889381507 554187297 740501122 1030700399 1030700399 969540544 482525516 482525516 679682725 679682725 241000200 680798237 680798237 234895360 174276048 647185756 647185756 609303737 625705512 625705512 553931784 336251912 336251912 287215616 118444848 89614616 326058190 326058190 943849630 943849630 759350928 759350928 31992253 30483168 200491536 504969198 504969198 338825994 246008510 282072354 282072354 347966034 347966034 360373778 360373778 91465640 140481032 230111629 763572333 763572333 763572333 207841508 31900037 606045772 606045772 621494313 621494313 558507441 738284605 738284605 709753904 709753904 70203844 31226248 666429427 666429427 201326604 201326604 243318876 379732618 547377293 547377293 33604176 58753032 125829240 491840512 803455874 803455874 252861337 196009332 158512036 158512036 157020580 140860576 335595538 335595538 104686112 333249938 333249938 129224256 320447826 320447826 388166440 388166440 211035120 323401808 437526982 437526982 113289792 77644104 494717946 494717946 346153322 357485748 521231766 521231766 294199696 315577584 315577584 297643058 404723470 404723470 199843972 199843972 74634120 13812872 51432792 394053722 394053722 67390368 288883522 464527346 464527346 316539158 69331624 505417864 510289182 510289182 443559456 190579126 824849024 824849024 655471387 1060949311 1060949311 840032787 732806209 682235205 910201530 910201530 92426376 844158233 844158233 739222394 830301583 830301583 655986240 655986240 603136497 603136497 121635296 68387352 587776128 587776128 617128360 617128360 92723304 75947744 168577792 168577792 542442241 708578177 708578177 450983362 671503557 671503557 718417013 718417013 716235075 983912496 983912496 582635776 332969584 60507890 843498048 843498048 273388608 273388608 60371632 324018242 446763864 446763864 270534784 206966916 134816992 281088132 281088132 518872412 518872412 423004340 314808896 628817840 628817840 541899649 24516992 547542016 564303329 564303329 559961185 553816064 750597961 983467115 983467115 824657950 189559880 189559880 617467520 635695593 635695593 80998505 116647528 205579936 485545971 814522000 814522000 312702734 706742289 822230362 822230362 621446234 621446234 504331378 504331378 994300482 994300482 845411584 845411584 299048978 129474536 194156382 380914882 380914882 474125968 508695198 508695198 265358898 383699272 383699272 529924238 529924238 483918762 483918762 445780566 445780566 475869392 555884545 694233392 694233392 667924909 659965048 601038372 408234630 694291954 694291954 655861457 654245176 606076425 603846192 522020140 340000940 404787590 409751842 409751842 298798536 298798536 274222090 274222090 89443848 277990530 277990530 167872356 167872356 118038592 319823938 319823938 136180772 362883370 362883370 263727552 283901992 283901992 96484512 92079816 92079816 117440472 117440472 122034360 961960148 961960148 639162488 1041311082 1041311082 360390666 360390666 242563188 689049813 956568144 956568144 1008337214 1008337214 894293037 894293037 738738192 772326429 776473741 776473741 453017800 453017800 387203260 421316156 421316156 214958796 153016712 33199840 33199840 123815512 126366184 126428280 126428280 120159544 169085460 213684336 213684336 84411616 1002964028 1002964028 822610946 822610946 705392676 829558976 829558976 884660043 914396944 914396944 418965515 483684422 483684422 130973970 954237512 954237512 758214663 156451366 338182240 363382122 898418026 898418026 498125931 205914388 432675472 502929390 1067081722 1067081722 1052761537 1052761537 966001679 966001679 873739300 580071171 999821156 1022367335 1022367335 789322364 789322364 966837029 1040187423 1040187423 556410208 556410208 895859042 918890715 918890715 413686022 1024376928 1024376928 724222306 724222306 842175319 842175319 45356983 466397434 505683936 505683936 451070318 451070318 352585402 404245212 404245212 345031242 1006896906 1006896906 538233345 885136491 885136491 593637441 638061789 638061789 492307877 968738418 968738418 538026070 19669016 755073536 791496229 791496229 70856509 2097408 570444616 572281057 572281057 248174173 86192424 188423976 683285652 683285652 700463632 700463632 1060374477 1060374477 576107408 1015206438 1015206438 94676299 673088608 673088608 110495232 130552920 366740056 393270960 393270960 356365346 356365346 312907200 380119546 380119546 478491873 960998597 960998597 697711717 671092293 683542085 683542085 680575557 680575557 537470017 769074368 769074368 104790840 948983564 948983564 519686048 519686048 873366808 1066840231 1066840231 862145815 862145815 392815785 789475332 789475332 778245252 185213308 226072368 226072368 178751556 178751556 153149552 123102128 244820552 244820552 40294800 40294800 295935114 295935114 265094412 523880316 523880316 276301698 530080072 530080072 497386794 497386794 490830446 491355962 491355962 969184682 969184682 2361600 917032643 917032643 900873977 900873977 764200770 582670180 601417169 601417169 550949553 597288561 597288561 679549002 679549002 605038486 918743568 960024627 960024627 689099300 689099300 645654461 645654461 669339404 772558161 772558161 606194061 855886118 855886118 677904669 214061199 273062368 674796373 681859141 681859141 604508552 575487157 575315153 584506065 584506065 550501569 657215089 657215089 582100441 212199756 774081756 774081756 616588352 135747648 293459490 314296770 314296770 809009906 809009906 547407216 761567406 963037349 963037349 536920065 1025507651 1025507651 411428934 835029189 835029189 448529180 448529180 433849961 711759125 711759125 686355657 686355657 553671714 567694044 844143795 844143795 904076635 908801307 911746400 911746400 409996190 409996190 458425888 458425888 551102145 551102145 346740042 651056572 651056572 471648193 471648193 180165406 474157328 474157328 941962067 941962067 369591226 981783301 981783301 820192555 1012936864 1012936864 954803655 785990150 704709492 810675394 843359041 1014861157 1014861157 193530267 35701008 1059113252 1059113252 778422705 870537391 870537391 834986255 834986255 876782682 876782682 581367877 816444419 816444419 805873449 624509955 616753161 616753161 477388373 928783755 928783755 885311691 111606723 914662144 914662144 815532232 677397888 12784320 12784320 12169984 14231232 22568864 22568864 285873696 285873696 134288934 403379232 784695760 784695760 82669005 69544200 221926020 973656606 973656606 620250284 941568158 941568158 606261180 635474772 818264146 818264146 434342198 321372580 443947926 443947926 858477842 858477842 825972531 808956690 38236337 38236337 537207856 537207856 306823185 269590608 578669328 578669328 611456648 611456648 351170186 351170186 346106184 539493957 539493957 367401450 559627687 559627687 346346698 276061990 335997989 335997989 88111113 226933152 771117865 771117865 625037769 29728706 499412130 499412130 634086024 825270307 1035482315 1035482315 901124704 905395179 905395179 1014853359 1014853359 748955897 761916920 761916920 71877768 775963828 843711170 843711170 843167458 913402720 913402720 483717660 204145150 508494946 508494946 335864492 335864492 335272372 218942024 347002674 347002674 494046306 494046306 510562964 510562964 278402564 103423848 106100482 106100482 97325290 762055834 807477507 807477507 817450514 817450514 927038739 927038739 793042964 642250905 1052786880 1052786880 883085571 883085571 646091000 327188560 327188560 38986896 49147344 49147344 40462816 24258144 27976000 27976000 10051584 33050880 84984560 111808216 330434784 330434784 328507360 391662000 391662000 270535416 63979728 290222098 290222098 21395048 89511488 89511488 30687648 280899328 280899328 268456000 85308768 73245536 32509312 18238048 50793632 50793632 211036354 211036354 333546948 466093302 466093302 506281948 506281948 216130982 370348710 370348710 372726340 372726340 361672910 361672910 487091244 671672830 726733029 746688009 935624256 935624256 611292250 611292250 292783025 892489456 892489456 642567321 831300706 831300706 537257985 557878400 842295633 842295633 588375811 305480000 272377936 351273280 351273280 340787850 335598216 335598216 87716514 323545560 323545560 351451992 351451992 300941914 336382986 336382986 361604554 361604554 89790818 703090501 703090501 741281821 741281821 722750419 842803840 842803840 603721713 603721713 269690355 561842656 841594545 857190496 857190496 570948115 62719344 44518544 39419728 35185216 341547209 819195971 819195971 814867011 217927616 214609420 902199306 902199306 641275673 641275673 641126169 236483856 386654292 386654292 382940798 300713436 743623106 793279212 793279212 559860412 752498041 752498041 736190142 736190142 415481144 415481144 908297010 908297010 554759785 846982848 846982848 381200440 349588200 349588200 144976468 144976468 177020948 177020948 40445328 161275812 690241893 726468389 726468389 680660325 680660325 290597126 408560774 408560774 682644316 872069118 872069118 767607021 1007862300 1007862300 508294302 638845061 638845061 19401104 413805600 414063942 596144196 998831439 1023583857 1060710207 1060710207 629301552 629301552 873218848 873218848 559416993 326420162 607158280 607158280 825295107 825295107 675291912 675291912 996199296 996199296 443663123 420784948 742228981 769806592 769806592 960856375 960856375 590948145 176627557 259265616 962639564 962639564 901511019 901511019 901511019 945380638 945380638 973391446 973391446 346859749 854403161 854403161 272629896 324010674 957363657 1040416047 1040416047 950464065 950464065 944039244 944039244 1040581398 1040581398 1007076941 1007076941 954471108 483575384 316388038 403374464 403374464 183603056 510326960 510326960 639182361 910988770 910988770 544746218 352720434 289148706 289148706 110500440 691342852 691342852 587131068 746440111 746440111 639976972 688406441 774767143 774767143 389947194 1022404610 1037046084 1037046084 463479573 178814878 686469261 686469261 648094149 648094149 510207390 541132063 541132063 518265618 535748094 535748094 939150669 939150669 668572396 1004526879 1004526879 889381507 889381507 639504594 740501122 1030700399 1030700399 969540544 482525516 482525516 244936196 236464116 90204184 74633872 782400464 782400464 637872413 647185756 647185756 584924841 564010593 353134602 481214784 481214784 336251912 412427048 412427048 457667886 457667886 326058190 943849630 943849630 695153225 694208260 692804481 571065221 140491693 727416757 727416757 338825994 721457293 721457293 134481924 237714456 396722464 396722464 360373778 138563712 138563712 36341896 122282392 122282392 118182912 260108024 260108024 81049844 76202816 76202816 74987352 117053400 117053400 150565008 150565008 140718468 98100176 98100176 666429427 666429427 201326604 201326604 243318876 841138963 841138963 547377293 81912061 795962721 863842227 863842227 803455874 803455874 689363493 689363493 604279340 158512036 157020580 140860576 110486232 110486232 89919368 31907712 81808008 84955744 84955744 117440568 117440568 211035120 211035120 66128460 437526982 437526982 113289792 77644104 494717946 494717946 346153322 357485748 521231766 521231766 267340226 298875970 298875970 297643058 275563312 61465968 199843972 199843972 41518000 41518000 21020832 216548204 216548204 50349712 250923772 250923772 555564631 555564631 949597655 949597655 697737421 697737421 320337200 654948104 825754144 825754144 655471387 1060949311 1060949311 1043922963 455275463 297844962 910201530 910201530 186179304 844158233 844158233 576507537 830301583 830301583 97461739 134217860 134217860 121635296 121635296 165151860 165151860 40944672 104963496 134098352 134098352 100958448 49343440 141212676 149236048 149236048 305569044 450983362 450983362 405777494 405724422 173531542 135841284 134989120 582635776 582635776 44127488 44127488 843498048 843498048 52041568 52041568 20876576 329918170 329918170 270534784 385365122 385365122 446693744 446693744 343937836 518872412 518872412 423004340 314808896 628817840 628817840 33488641 11799168 13142976 14852032 14852032 539899684 539899684 154868993 684410964 705013801 705013801 189559880 189559880 617467520 635695593 900790094 926211715 926211715 1007663245 1007663245 814522000 814522000 526781520 108139416 108139416 106829168 59119728 85644840 88750288 88750288 43514448 101826864 101826864 686895753 686895753 207304668 592203585 875709874 943494307 943494307 155863205 151704612 869248593 869248593 741253958 741253958 553291796 414584262 351409098 79267272 79267272 213328472 213328472 560015668 593967537 593967537 115293912 146740674 408234630 694291954 694291954 458425447 24692640 24692640 23745024 96796936 340000940 939598031 939598031 409751842 764285033 764285033 202124584 202124584 31857888 31857888 17172800 2359296 118038592 118038592 117515320 118174776 118174776 180813892 201730272 201730272 298362032 408763632 408763632 177418836 135667824 29150080 75121168 122034360 961960148 961960148 639162488 1041311082 1041311082 360390666 704643640 756023853 756023853 956568144 956568144 1008337214 1008337214 827212216 948293668 948293668 839590089 969438744 969438744 557003781 561723297 706361752 706361752 421316156 214958796 256393268 256393268 202645216 123815512 126366184 126366184 43077952 281068162 281068162 939311124 939311124 688704789 1002964028 1002964028 885522470 885522470 26256417 829558976 876716263 884660043 914396944 914396944 205627420 989889399 989889399 932651740 901790464 364938157 762331424 794853953 794853953 675418245 1071799444 1071799444 931977436 931977436 654377095 654377095 1067081722 1067081722 1052761537 1052761537 673377207 873739300 873739300 232396524 260790164 610099243 610099243 974633139 974633139 966837029 1040187423 1040187423 975331384 995142485 995142485 1038238075 1038238075 957140007 957140007 757907563 901399618 930922721 930922721 622515753 622515753 576233039 1009191564 1009191564 462822006 1064232436 1064232436 847469917 1040236575 1040236575 855885062 855885062 867747096 867747096 203500708 203500708 198008020 175889320 250830476 334992202 334992202 504175011 504175011 387381250 674435856 960152322 960152322 869404851 869404851 819653492 819653492 676836685 771487725 771487725 626356581 554511393 700463632 700463632 767041420 767041420 632140873 692827265 692827265 696013184 696013184 754880065 754880065 723482665 723482665 393270960 545672081 545672081 356365346 312907200 380119546 380119546 699215201 960998597 960998597 697711717 671092293 683542085 683542085 680575557 680575557 619092972 769074368 769074368 153313260 906353796 906353796 519686048 519686048 873366808 873366808 598161777 17447249 63580064 63580064 190932608 190932608 70649568 136584484 136584484 96410424 102447820 102447820 175573780 175573780 138754256 229925000 229925000 90356624 295935114 295935114 265364220 794027652 813381248 813381248 988882146 988882146 917178107 917178107 770907567 491355962 491355962 969184682 969184682 46407712 917032643 917032643 900873977 900873977 764200770 642318848 642318848 780666420 780666420 597288561 597288561 733342264 733342264 612422421 918743568 960024627 960024627 340150213 135398016 629021096 629021096 91763240 91763240 154485862 302327826 855886118 855886118 782798904 214061199 273062368 273062368 359566506 359566506 575487157 575487157 575315153 584506065 584506065 550501569 657215089 657215089 582100441 212199756 774081756 774081756 616588352 135747648 48627808 38608016 396920777 860930739 860930739 813446676 813446676 963037349 963037349 885031168 1025507651 1025507651 578840823 835029189 835029189 729841789 419971424 433849961 711759125 943737858 943737858 686355657 421163560 567694044 844143795 844143795 904076635 908801307 911746400 911746400 116692040 162203200 162203200 131090072 131090072 154517069 696525345 696525345 90233196 825431645 825431645 313704487 923838521 923838521 1024526419 1024526419 493524802 471864118 471864118 357077080 413300214 413300214 502890542 502890542 704709492 1042598175 1042598175 1014861157 1014861157 562875573 757244016 889280629 889280629 778422705 870537391 870537391 834986255 834986255 876782682 876782682 594204081 816444419 816444419 805873449 624509955 222531434 222531434 199361642 12303360 12303360 738810504 738810504 745163462 745163462 677397888 677397888 7405952 7405952 7017856 7021312 22568864 22568864 809046881 809046881 294265408 818335975 818335975 784695760 82669005 90885804 1013602246 1013602246 973656606 620250284 620250284 274898547 997295000 997295000 152338788 434342198 434342198 321372580 443947926 443947926 674152962 674152962 541065345 331909281 331909281 311266384 537207856 537207856 273552416 273162018 578669328 578669328 611456648 611456648 309724160 309724160 280044672 539493957 539493957 301710434 559627687 559627687 137153796 137153796 612506624 612506624 88111113 146456680 771117865 771117865 625037769 89659684 92821312 92821312 85980712 85980712 26086592 26086592 901124704 905395179 905395179 258736192 267128316 267128316 288850114 408444912 441524886 452310870 452310870 270270070 186118498 371231274 483717660 483717660 346108130 349910730 374014544 374014544 335864492 265356372 218942024 347002674 347002674 494046306 494046306 510562964 510562964 278402564 103423848 106100482 180705521 688073729 762055834 807477507 807477507 1005923057 1005923057 927038739 927038739 805619842 642250905 642250905 69581825 73681946 84676040 84676040 61718944 61718944 23129456 16060672 15778240 15778240 11560192 26592320 28003648 28003648 33050880 36209440 83366794 330434784 330434784 328507360 391662000 391662000 270535416 63979728 290222098 290222098 38221968 89511488 89511488 62447408 280899328 280899328 268456000 585228465 585228465 537503107 335017649 335017649 563464882 701524499 701524499 408131184 466093302 865800859 865800859 1032930366 1032930366 166314468 179985108 372726340 372726340 871441753 871441753 487091244 671672830 726733029 746688009 746688009 922250986 922250986 867483369 867483369 892489456 892489456 877949616 831300706 831300706 811417376 811417376 570108225 565712705 565712705 330695536 381684544 381684544 351273280 340787850 51544218 16961568 103823514 103823514 12656832 400101058 400101058 124242264 126319944 126319944 97620690 97620690 2803968 136826884 136826884 190839088 190839088 420712064 420712064 411372438 435473382 435473382 311572944 334830434 334830434 857190496 857190496 570948115 178539908 183045968 183045968 93327912 104993944 104993944 180880488 180880488 214358220 214358220 202597616 606465288 641275673 641275673 641126169 236483856 386654292 386654292 382940798 300713436 743623106 743623106 548205136 376593672 556710411 597612920 597612920 849120824 849120824 642435785 908297010 908297010 624104560 828514442 828514442 381200440 349588200 349588200 87318912 5977728 17855040 176032344 176032344 150220609 690241893 726468389 726468389 680660325 680660325 208750513 156377252 587635214 682644316 872069118 951473299 951473299 1007862300 1007862300 1047109926 1047109926 403005500 18909602 345909292 345909292 596144196 939717971 1023583857 1060710207 1060710207 705421401 705421401 570425361 387977771 36836130 858935738 858935738 391156251 825295107 825295107 675291912 1010568733 1010568733 723640629 723640629 157822925 1006764172 1006764172 769806592 1010894619 1010894619 973299917 973299917 276870924 962639564 962639564 901511019 901511019 901511019 887644583 554281032 677905797 677905797 204024376 252781116 759251888 759251888 304400658 770743126 1040416047 1040416047 950464065 950464065 746392461 675465734 1040581398 1040581398 1007076941 1007076941 954471108 483575384 316388038 362344782 362344782 275347536 510326960 510326960 826015401 910988770 910988770 55014970 629426240 629426240 372923362 372923362 920652504 920652504 488198999 416294524 416294524 335561752 335561752 774767143 774767143 389947194 957357341 1037046084 1037046084 463479573 178814878 686469261 686469261 648094149 807815488 813879363 813879363 686164313 686164313 189028444 333796787 939150669 1058708503 1058708503 1004526879 1004526879 641690448 641690448 639504594 639504594 349874570 374407344 374407344 232970016 222591792 168297492 72401544 74633872 74633872 782400464 782400464 637872413 639600924 639600924 751700289 751700289 289649581 481214784 481214784 213393230 412427048 412427048 457667886 457667886 769654509 879524875 879524875 694208260 694208260 692804481 571065221 140491693 727416757 727416757 161632622 721457293 721457293 102294016 445346452 445346452 396722464 440194810 440927382 440927382 290464256 225006772 225006772 118182912 260108024 260108024 207503016 64728920 64728920 255538940 255538940 205373800 205373800 128569912 179034456 179034456 142963352 213075036 269583932 521786218 521786218 1008795994 1008795994 841138963 538055424 81912061 795962721 1011310968 1011310968 778178620 778178620 689363493 689363493 604279340 5316608 13763712 13763712 27079872 89919368 89919368 31907712 81808008 84955744 84955744 69387008 93890400 162156384 162156384 149172768 61105088 54171696 54171696 136053332 136053332 59033712 59033712 404675858 404675858 311692544 463564226 463564226 52012384 402815684 402815684 464205174 464205174 436311334 293651136 155340384 155340384 39113776 39113776 18666496 5452416 22229472 555564631 555564631 949597655 949597655 697737421 697737421 320337200 654948104 825754144 825754144 949085194 968152657 1043922963 1043922963 196407630 420107908 420107908 289542306 695475360 1011378053 1011378053 291358347 337156462 337156462 274504320 274504320 134217860 586186960 586186960 541082241 575669537 575669537 627248577 627248577 134098352 549602369 578232788 578232788 708188949 708188949 300170624 736753589 954267682 956178375 956178375 587130288 314375862 955966610 955966610 805412915 332080259 36918608 552092672 552092672 10113280 10113280 8573376 329918170 329918170 108143544 385365122 385365122 446693744 446693744 343937836 353765416 353765416 2960640 2960640 539276544 551830784 551830784 21094560 537944128 555271457 569789921 569789921 562064401 562064401 63759472 151179648 724129092 724129092 683557968 683557968 507943342 900790094 926211715 926211715 1009613080 1009613080 981129111 981129111 526781520 108139416 108139416 106829168 59119728 176160852 176160852 189842100 189842100 154638736 101826864 686895753 686895753 207304668 592203585 875709874 943494307 943494307 541200513 541200513 869248593 869248593 741253958 741253958 553291796 473538624 355603744 381723682 381723682 304707346 608841745 772488328 772488328 593967537 545493017 118094432 271396098 663108998 941568271 941568271 611617696 611617696 509141961 276883242 358948900 939598031 939598031 361431106 764285033 764285033 352716770 352716770 83763144 284893122 284893122 162537252 162537252 126424216 332924066 332924066 223028476 382493762 382493762 235406528 298362032 408763632 408763632 177418836 135667824 361945160 361945160 459988385 459988385 454742244 825939747 979371749 979371749 754974765 754974765 756023853 756023853 704905796 704905796 580127313 832963752 832963752 948293668 948293668 839590089 969438744 969438744 557003781 561723297 706361752 706361752 153018328 175528288 256393268 256393268 202645216 60344000 60344000 53003200 22141104 281068162 281068162 939311124 939311124 688704789 688704789 311037520 885522470 885522470 588512352 588512352 876716263 909976707 909976707 235987584 205627420 989889399 989889399 932651740 901790464 364938157 762331424 794853953 794853953 675418245 1071799444 1071799444 931977436 931977436 654377095 1038132117 1038132117 765682175 758695725 758695725 783772283 783772283 153751414 153751414 61689354 1018242051 1018242051 974633139 974633139 1050264906 1050264906 975331384 975331384 995142485 995142485 1038238075 1038238075 957140007 957140007 757907563 901399618 930922721 930922721 961993383 961993383 804839313 1009191564 1009191564 476094600 1064232436 1064232436 847469917 1040236575 1040236575 855885062 855885062 867747096 867747096 203500708 203500708 71423784 175889320 880462217 880462217 727577226 727577226 504175011 697262308 897052325 960152322 960152322 889766955 889766955 819653492 819653492 676836685 771487725 771487725 626356581 554511393 569515781 569515781 767041420 767041420 632140873 692827265 692827265 696013184 696013184 754880065 754880065 723482665 723482665 638621408 638621408 747108429 747108429 267475889 87707424 44647312 723427956 730326129 730326129 159835713 8652864 17959456 28568256 31721952 31721952 619092972 619092972 234248649 153313260 906353796 907873823 907873823 501627306 501627306 310772962 697441552 979246743 979246743 440079221 713367940 713367940 598158036 136584484 136584484 65476352 102447820 102447820 175573780 175573780 138754256 229925000 229925000 101452536 109079680 109079680 320553145 794027652 813381248 813381248 988882146 988882146 917178107 917178107 819465392 819465392 596239473 600167537 600167537 46407712 137483392 537531396 537531396 405786757 164309062 642318848 642318848 780666420 780666420 578879588 721494069 733342264 995434096 995434096 716884102 716884102 775965021 775965021 589475093 629021096 763049901 763049901 668583169 668583169 569166288 569166288 782798904 782798904 625480120 573183249 421715224 798359772 798359772 549591568 116133336 109838720 65586672 65586672 30857120 51973024 114959040 114959040 109761624 109761624 105133000 79577024 48627808 291357026 291357026 396920777 860930739 860930739 813446676 813446676 742531400 885031168 885031168 878709062 878709062 578840823 377586008 729841789 729841789 419971424 176162880 176162880 943737858 943737858 269254791 730171544 845900117 889401387 889401387 340188315 200537076 492941671 492941671 116692040 90983959 995173047 995173047 755682261 755682261 696525345 696525345 1013451204 1013451204 825431645 313704487 923838521 923838521 1024526419 1024526419 552217193 552217193 541418244 961398307 1030907234 1030907234 541598097 541598097 294438886 1042598175 1042598175 706756672 673186053 562875573 757244016 889280629 889280629 755083303 621086725 1049082197 1049082197 245431515 570447264 734602485 734602485 331428999 659068177 678027565 725872821 725872821 222531434 199361642 12303360 12303360 738810504 738810504 940064775 940064775 402653189 20811424 6876288 18338336 18338336 20923296 20923296 18565314 809046881 809046881 298315490 969767302 969767302 636069357 636069357 90885804 1013602246 1013602246 900948080 900948080 484173805 600352276 997295000 997295000 995166352 995166352 3148032 319355700 423929651 423929651 674152962 674152962 541065345 331909281 331909281 311266384 268475504 960754696 960754696 936360118 936360118 226537502 339917141 339917141 309724160 309724160 842038278 842038278 981516375 992075957 992075957 941822340 941822340 957042979 957042979 891535365 759742788 759742788 764584192 764584192 212652032 228471526 485398606 485398606 546664520 875503843 1013511307 1013511307 794113241 794113241 525210350 827701693 827701693 138725508 288850114 408444912 441524886 452310870 452310870 270270070 186118498 66613314 291055266 291055266 346108130 349910730 374014544 374014544 222299368 155312548 155312548 93364224 220336516 237655028 237655028 238687488 238687488 50483608 25430112 29536928 180705521 688073729 688073729 171096112 272479124 1005923057 1005923057 286336144 805619842 805619842 372402816 308305930 308305930 73681946 84676040 84676040 46710898 42035008 61988752 61988752 42677328 37376800 32735904 84035080 84035080 28003648 25400064 96109008 103831408 341529616 374465178 374465178 304239808 304239808 57771264 69378080 69378080 38221968 38221968 33828992 62447408 62447408 48955968 48955968 16581074 585228465 585228465 537503107 335017649 335017649 563464882 701524499 701524499 408131184 408131184 865800859 865800859 1032930366 1032930366 385942562 385942562 179985108 318793264 871441753 871441753 408081728 290502638 654790263 748892493 748892493 922250986 922250986 867483369 867483369 848806080 877949616 877949616 271762976 165607819 811417376 811417376 570108225 565712705 865166049 865166049 565762754 381684544 343020426 343020426 357773848 357773848 318180128 318180128 113037144 400101058 400101058 93802010 94090072 94090072 97620690 97620690 28046688 136826884 136826884 190839088 273906835 840809105 840809105 542497795 555145603 555145603 311572944 857896993 857896993 304474386 425922967 425922967 335377396 335377396 258481232 258481232 199939564 167936476 269091864 516821134 516821134 272768084 202597616 606465288 606465288 571423761 571423761 218104648 218104648 228590216 228590216 206852264 206852264 207290504 207290504 84939292 556710411 597612920 597612920 849120824 849120824 642435785 813256778 813256778 624104560 828514442 828514442 73400712 100977040 103574804 260089612 260089612 175977052 176032344 176032344 196479348 196479348 56373088 137396260 137396260 1566720 2152448 3459840 587635214 674503290 674503290 951473299 951473299 619185609 537445377 1047109926 1047109926 908464267 908464267 794076033 906018857 1059324687 1059324687 881668107 455730486 973627681 973627681 705421401 570425361 631742496 631742496 858935738 858935738 566181729 543565536 67634224 84156944 1010568733 1010568733 723640629 723640629 326507442 1006764172 1006764172 436256790 1010894619 1010894619 973299917 973299917 613213462 687211309 687211309 933646714 933646714 633524457 207370184 470122867 470122867 1049216650 1049216650 832571475 759251888 759251888 304400658 304400658 136609814 789504 789504 789504 789504 75658240 76145736 101246912 101246912 108565704 108565704 242762632 242762632 106724756 275347536 275347536 511958328 511958328 826015401 826015401 642649497 860937784 860937784 840077843 372923362 372923362 920652504 920652504 488198999 416294524 416294524 114318016 114318016 196125364 196125364 14803392 508748846 861577107 861577107 508039701 709855819 845015043 845015043 1046937358 1046937358 813879363 813879363 686164313 686164313 549456553 613468232 613468232 1058708503 1058708503 614857931 111660538 574621696 574883985 574883985 204750332 204750332 246860688 246860688 168296448 168297492 193544960 248950428 248950428 204076936 171807768 237246876 246678080 246678080 580415064 751700289 751700289 349146316 379016784 445049426 445049426 470819176 470819176 409756482 390022946 769654509 1010598568 1043665421 1043665421 657335717 123760544 123760544 34867728 629424249 629424249 308772204 615038263 615038263 537134089 1012039856 1012039856 970873886 440194810 440927382 440927382 290464256 225006772 225006772 83886376 50372736 207503016 207503016 64728920 64728920 255538940 255538940 205373800 205373800 257682624 257682624 197184036 197184036 256921702 382915290 521786218 521786218 1008795994 1008795994 813720086 177300053 245967570 334270298 1011310968 1011310968 778178620 778178620 123864588 513619096 513619096 358116814 358116814 572522769 930393483 930393483 955914183 955914183 425857446 425857446 824061984 824061984 678561925 694495237 694495237 149172768 148791777 54171696 54171696 178747298 450873266 450873266 304406066 682457415 682457415 547249472 985977615 985977615 611362809 422061606 729812272 729812272 690672933 747819108 747819108 220644620 155340384 17582080 22283424 36963120 36963120 29632736 38880544 558322182 558322182 600410304 600410304 560277921 327371841 543393058 727217581 727217581 949085194 1035486767 1035486767 1020616764 1020616764 809845507 444108323 427868262 827612257 1011378053 1011378053 683938860 683938860 779092704 787325917 787325917 248562556 586186960 586186960 541082241 575669537 575669537 627248577 627248577 43926608 549602369 578232788 578232788 708188949 710699860 972274053 972274053 954267682 956178375 956178375 593015317 314375862 955966610 955966610 865861730 865861730 840437841 580046864 847828083 847828083 557637410 273152904 273152904 115017592 115017592 83502024 140517808 155281892 174159444 174159444 167408996 237346220 237346220 167772180 539276544 551830784 551830784 21094560 537944128 555271457 569789921 569789921 562064401 562064401 142741572 151179648 724129092 724129092 683557968 683557968 280113426 280113426 383920034 383920034 1009613080 1009613080 981129111 981129111 1050021786 1050021786 828259859 838934547 838934547 289737945 176160852 189842100 189842100 154638736 33892368 42211664 42211664 36124944 198183552 198183552 72351988 541069312 541200513 541200513 269484032 269484546 352373864 397562206 473538624 473538624 355603744 381723682 381723682 304707346 608841745 772488328 772488328 788779377 788779377 125253709 271396098 663108998 941568271 941568271 611617696 611617696 509141961 276883242 472458510 480847214 480847214 365829354 365829354 294587496 352716770 352716770 83763144 284893122 284893122 162537252 162537252 126424216 332924066 332924066 223028476 382493762 382493762 235406528 319305232 319305232 298530018 56107010 277519424 361945160 361945160 459988385 459988385 426803669 825939747 979371749 979371749 981079959 981079959 373871773 338953657 817240355 817240355 903349824 903349824 832963752 383362272 386974266 605941320 605941320 243730460 243730460 26004576 124278992 153018328 153018328 128329904 128329904 154646272 154646272 104973624 104973624 59191600 325405040 325405040 244318812 244318812 236455452 251941248 251941248 721453168 721453168 680469105 714649157 714649157 615301112 909976707 909976707 307758600 373293210 373293210 68683410 650792920 650792920 117216473 1497600 9879616 135037728 154980132 154980132 154978820 154980132 162627620 552715076 1038132117 1038132117 765682175 758695725 758695725 783772283 783772283 699960855 823071566 823071566 1019419650 1019419650 973279766 973279766 1050264906 1050264906 852048919 852048919 8929856 8913984 710168064 710168064 451597782 547806385 547806385 363240774 331877288 638078084 961993383 961993383 804839313 804839313 771884546 748868743 748868743 379296136 415422868 415422868 431206726 431206726 386084874 554600554 851592392 851592392 207476008 217590692 245220172 880462217 880462217 727577226 977814156 977814156 907593243 897052325 897052325 681062238 889766955 889766955 747639186 244466600 244466600 185986036 158979332 158979332 151569444 20205316 73728 73728 229190700 229190700 77930792 88659368 88659368 10493888 204921868 204921868 7340928 25860224 638621408 638621408 747108429 768389928 768389928 687865797 120301948 723427956 730326129 730326129 537821188 672883717 674631173 681467653 832848391 832848391 143184229 845182594 845182594 54187824 415348201 1058210527 1058210527 1024656079 952172706 456270566 697441552 979246743 979246743 440079221 713367940 713367940 598158036 43261552 43261552 4723744 42078240 42078240 59257376 59257376 50930736 75011400 127951856 132040072 340455346 340455346 365021754 365021754 841566376 929951163 999124243 999124243 440524944 444719190 955996142 955996142 596239473 600167537 902727840 902727840 635982985 537531396 537531396 405786757 289462063 664013326 664013326 848112723 848112723 600934567 721494069 721494069 995434096 995434096 981485893 981485893 948702279 775965021 589475093 672981312 763049901 763049901 668583169 847282222 847282222 604553292 1028179095 1028179095 625480120 573183249 421715224 1043135910 1043135910 704981013 709372629 730646869 730646869 709002597 690266016 21087200 48760784 49882840 108200648 108200648 105133000 79577024 44226784 291357026 346416226 346416226 621172232 625493289 896023941 896023941 742531400 685978053 209924237 136524036 92274912 218136728 251707452 251707452 294126848 294126848 365698099 365698099 589841454 683966836 683966836 730171544 845900117 889401387 889401387 531122368 200537076 492941671 865000134 865000134 491836003 995173047 995173047 755682261 755682261 536786359 692346282 1013451204 1013451204 502449406 34092089 401427543 401427543 162065976 253742713 552217193 552217193 541418244 961398307 1030907234 1030907234 541598097 714345808 714345808 578866436 706756672 706756672 673186053 143131969 81835368 373556324 373556324 239357032 572735556 1049082197 1049082197 400736298 400736298 734602485 734602485 331428999 659068177 678027565 725872821 725872821 134829233 976905982 1050673439 1050673439 514602969 536904706 940064775 940064775 841722896 773635864 20138776 20919072 20919072 53909296 73847328 91485096 293464802 298315490 298315490 969767302 969767302 636069357 636069357 564367816 556516992 566964580 900948080 900948080 484173805 600352276 795054482 795054482 995166352 995166352 322226994 319355700 319355700 289708914 281854336 281854336 281282754 579174593 579174593 843959345 843959345 960754696 960754696 936360118 936360118 226537502 339917141 900598664 900598664 836376291 881746782 881746782 981516375 992075957 992075957 1005333746 1005333746 957042979 957042979 891535365 759742788 759742788 764584192 764584192 568513056 228471526 485398606 485398606 546664520 875503843 1013511307 1013511307 794113241 794113241 525210350 827701693 827701693 220075504 138725508 228584316 240239008 267694436 267694436 186911820 186911820 63492320 63492320 161481344 161481344 201863364 201863364 350883872 494420202 494420202 224928494 213072372 220336516 237655028 237655028 238687488 238687488 117146744 117146744 29536928 127431480 127431480 135130116 157106176 272479124 320025138 320025138 286336144 286336144 372402816 372402816 308305930 308305930 71649554 290456576 290456576 42035008 42035008 61988752 61988752 42677328 37376800 32735904 84035080 84035080 3221248 11173904 96109008 103831408 341529616 374465178 374465178 304239808 304239808 101433600 69411080 268876066 268876066 59630216 341566832 341566832 315362514 315362514 286898160 286898160 48772704 22595232 563251040 563251040 323232272 290794146 273951440 408481414 408481414 319816242 460423430 507766182 507766182 240010716 385942562 385942562 136179204 388018472 388018472 250183764 250183764 361112056 620769636 748892493 748892493 699203573 220984620 497721388 497721388 782574206 803701190 803701190 170034445 336755498 353318922 637336960 637336960 537075745 865166049 865166049 565762754 324779410 343020426 343020426 357773848 357773848 318180128 318180128 113037144 113202640 113202640 42912960 42912960 37884048 20069320 79653664 79653664 32671552 32671552 64647472 273906835 840809105 840809105 542497795 555145603 555145603 590614258 857896993 857896993 304474386 425922967 425922967 420386868 420386868 258481232 258481232 225399432 167936476 269091864 516821134 516821134 414244362 414244362 413811460 101116168 51693680 168297492 218104648 218104648 228590216 228590216 776562253 776562253 207290504 801708373 801708373 2531376 87345016 87345016 25445408 116910217 347770626 648631552 648631552 611464937 393367819 39893016 73400712 100977040 103574804 260089612 260089612 175977052 103446496 59881744 196479348 771270277 771270277 733824437 694436773 694436773 222615761 148448964 243279512 606151492 606151492 1061360252 1061360252 930706658 930706658 564864033 376840753 908464267 908464267 794076033 906018857 1059324687 1059324687 936706720 667836593 973627681 973627681 594765745 73262208 631742496 631742496 637470664 637470664 566181729 579441225 579441225 579388497 447481941 522787919 522787919 662721624 838916121 883479600 883479600 598494294 898168121 898168121 688394265 688394265 613213462 687211309 687211309 933646714 933646714 830079802 838158674 838158674 571032995 1049216650 1049216650 832571475 943844195 943844195 459547062 571514897 571514897 545597505 950663115 950663115 752302797 686604686 1009992536 1009992536 1046878607 1046878607 820416912 317342810 134743108 318941190 318941190 67188776 511958328 511958328 338353396 302277794 302277794 860937784 860937784 840077843 599954275 599954275 562975346 818021440 818021440 538303107 409477589 813697106 813697106 788540486 886682587 886682587 878392971 861577107 861577107 508039701 709855819 845015043 845015043 1046937358 1046937358 910947483 910947483 872852624 629145705 549456553 915700760 915700760 885781707 349514442 349514442 579211581 579211581 574883985 574883985 416962551 432747750 441591408 441591408 86575528 549982336 778702804 778702804 753219592 753219592 613242644 237246876 545677904 545677904 76279305 651813961 717226501 717226501 550007500 445049426 445049426 470819176 470819176 522741848 522741848 390022946 1010598568 1043665421 1043665421 154251557 123760544 123760544 34867728 629424249 629424249 308772204 615038263 615038263 767314364 1012039856 1012039856 970873886 527619910 527619910 342528278 305858334 488141854 488141854 388120578 354472370 388664194 388664194 474731192 474731192 206828172 206828172 197263288 197263288 257682624 257682624 197184036 711984056 711984056 678482565 427983548 427983548 915509798 915509798 813720086 537977256 810615602 810615602 718268750 718268750 558886504 904278703 967284039 1035080476 1035080476 358116814 358116814 572522769 930393483 930393483 955914183 955914183 425857446 425857446 824061984 824061984 678561925 694495237 694495237 148791777 148791777 32247264 24505248 178747298 450873266 450873266 978984033 1000347590 1000347590 547249472 985977615 985977615 611362809 422061606 729812272 729812272 690672933 747819108 747819108 220644620 92459460 34086576 22937600 36963120 36963120 29632736 54733392 558322182 558322182 600410304 600410304 560277921 418856460 308991378 587400962 587400962 796993072 1035486767 1035486767 1020616764 1020616764 809845507 444108323 427868262 827612257 827612257 547906440 683938860 683938860 779092704 787325917 787325917 248562556 248562556 82887168 89410216 89410216 591532320 610272432 610272432 88870312 148512192 148512192 145934544 145934544 710699860 972274053 972274053 943874304 943874304 593015317 593015317 148688256 431591104 431591104 865861730 869795571 869795571 590874449 847828083 847828083 557637410 394893318 394893318 309206418 368437204 368437204 256239804 256239804 225565372 187322716 187322716 237346220 237346220 167772180 148230784 148230784 14701760 14701760 12006464 12006464 16099008 16099008 16192384 142741572 142741572 23326724 175130228 175130228 154219952 186595170 280113426 984586261 984586261 556607746 671459620 671459620 399895418 711912356 1050021786 1050021786 924955286 838934547 838934547 289737945 977434338 995749620 995749620 911351152 911351152 790374760 567060833 188173180 556994705 928120842 928120842 118698672 118698672 252388238 844310279 844310279 789720870 789720870 611733976 346756172 328864114 314581536 314581536 150472054 124446280 700500080 700500080 788779377 788779377 125253709 104282904 505083408 505083408 298981041 429294414 1016256839 1016256839 488984166 472458510 900746467 900746467 403461292 966234281 966234281 147896320 147896320 12833152 12833152 55797456 55797456 55606336 51036368 51036368 53089584 53089584 52872496 2129920 13632512 319305232 319305232 298530018 139023412 277519424 277519424 662987608 662987608 112298105 820561216 820561216 809500803 805963203 981079959 981079959 373871773 990385192 990385192 817240355 903349824 964954818 964954818 718612669 756288045 756288045 605941320 243730460 243730460 247728348 253758144 253758144 73531600 234231704 234231704 265068496 265068496 104973624 104973624 96136864 395136184 395136184 126389378 77594952 1060110876 1060110876 251941248 727728192 732170357 732170357 714649157 714649157 411580153 548892346 548892346 937586276 937586276 789965373 468244298 810729601 810729601 952242670 952242670 598919776 598919776 154980132 348656305 348656305 743267467 743267467 1030134164 1030134164 382513925 272530616 305784594 305784594 589060198 699960855 1054201292 1054201292 823071566 1019419650 1019419650 974337614 974337614 681677841 681677841 811816732 811816732 180656464 351457432 351457432 1047001274 1047526815 1047526815 1006848149 673711365 525312 541760 8437824 26218592 26218592 25313824 303267792 748868743 748868743 379296136 379296136 281239962 371368220 371368220 214172838 554600554 905913275 1014505384 1014505384 847591383 831532555 668778863 668778863 822152830 977814156 977814156 952632896 952632896 944767623 869849674 869849674 322709254 326991164 326991164 244466600 257730428 257730428 158979332 151569444 197664784 197664784 183381460 229190700 229190700 134217984 134217984 88659368 10493888 230851717 629855337 629855337 629855337 616612041 616612041 604802496 768389928 768389928 687865797 623412265 244261152 244261152 59454576 537821188 672883717 674631173 699612772 832848391 832848391 143184229 845182594 845182594 732222945 729074613 1058210527 1058210527 1024656079 952172706 691158607 739121671 940441612 940441612 408330156 408330156 191848832 25895104 197722308 197722308 46704880 178604676 178604676 184033348 267798420 267798420 123476832 237787532 237787532 340455346 340455346 365021754 365021754 841566376 929951163 999124243 999124243 776606153 812197251 955996142 955996142 560987553 560987553 902727840 902727840 635982985 293866825 2368544 289462063 321456384 664013326 664013326 848112723 848112723 764709044 1011165327 1011165327 969009505 969009505 981485893 981485893 948702279 461671601 5556864 672981312 686417349 686417349 581191168 847282222 847282222 604553292 1028179095 1028179095 440927393 157438370 560333665 1043135910 1043135910 704981013 709372629 730646869 730646869 709002597 690266016 31642080 48760784 48760784 33567040 41370304 41370304 20035840 44226784 66914304 346416226 346416226 621172232 625493289 896023941 896023941 597867248 340244864 493072682 1015093518 1015093518 835781681 425307805 813737325 813737325 294126848 365698099 365698099 589841454 894611597 894611597 856227646 814868997 677776766 769968460 769968460 611346532 580969152 865000134 865000134 491836003 427590938 371740582 253806488 167412833 786617589 786617589 1040711888 1040711888 572031148 673532149 838697102 838697102 81214152 877600027 877600027 694245880 694245880 979960155 979960155 515165022 415802325 716227664 716227664 578866436 803341432 803341432 967061607 967061607 655887639 656287507 739768845 941077005 941077005 1019338959 1019338959 400736298 400736298 183315924 537737396 570184677 570184677 156930804 156930804 693565728 693565728 976905982 1050673439 1050673439 514602969 489242646 489242646 841722896 841722896 773635864 389775874 381156186 26009914 53909296 82199008 294248264 301249952 301249952 26230980 954706048 954706048 686127687 564367816 564367816 219300352 219300352 202098280 160641636 29931940 184844486 380772114 380772114 173339540 322226994 322226994 137909554 314408768 826589414 826589414 681577671 960776551 960776551 824986997 843959345 843959345 562342000 290591394 290591394 267408398 267408398 889615352 900598664 900598664 836376291 881746782 881746782 862903731 953808343 953808343 1005333746 1005333746 421833762 422166560 621809960 632686592 632686592 561119936 568513056 568513056 31666656 31666656 87222272 90727688 90727688 73343840 25510656 40377344 136809360 169101724 205858956 220075504 220075504 106174564 228584316 228584316 202311452 202311452 236528484 236528484 186641516 508158910 508158910 290588646 298790946 298790946 511056432 511056432 494420202 487591994 486541886 369360932 182746520 182746520 109776600 119137200 119137200 124930584 124930584 217609156 217609156 606373016 606373016 575422721 170867988 436675856 939620369 939620369 542628529 728789173 728789173 588094785 843844755 843844755 575162544 323010738 307372704 4690688 4690688 6881280 6881280 5499648 14936224 28174688 97187168 97187168 88961672 101144648 101144648 75937816 67150264 67150264 101433600 360346538 360346538 268876066 268876066 59630216 341566832 341566832 315362514 315362514 286898160 286898160 563229473 588391587 603270978 603270978 312803522 852592704 852592704 599894097 408481414 319816242 575275777 666093125 680578318 680578318 501687782 435252838 512377218 512377218 1054410465 1054410465 103298048 717411789 717411789 596381776 554572833 506565884 506565884 880979281 1063152895 1063152895 473207380 473207380 39640058 336755498 353318922 637336960 637336960 42322259 327397312 327397312 326341528 326341528 300097410 382808650 382808650 281218024 339808482 339808482 282534082 400034658 400034658 376644850 292296170 292296170 104636730 79653664 98491930 98491930 14804416 344530376 344530376 270059010 270059010 5259410 28116048 58926784 590614258 590614258 335106483 312630656 312630656 47111376 420386868 442843808 456518454 456518454 225399432 453122628 453122628 43785974 213155906 414244362 414244362 878841904 878841904 50336135 424150182 424150182 369756198 290211484 290211484 776562253 776562253 404859365 801708373 801708373 122421737 841342035 841342035 554452002 640286040 640286040 116530729 644564481 878289978 878289978 539996256 354818504 354867496 354867496 88399856 98910472 98910472 86444280 57891968 173559625 771270277 771270277 733824437 694436773 694436773 222615761 148448964 650727682 650896594 650896594 1061360252 1061360252 1033520254 1033520254 1027097526 1027097526 923947270 791724861 409093776 409093776 305736994 936706720 936706720 667836593 899364388 899364388 594765745 84699552 634554496 634554496 99270720 99270720 90225032 579441225 579441225 579388497 447481941 664816244 664816244 662721624 838916121 883479600 883479600 598494294 598494294 449498125 184316102 83176392 81726096 115118536 115118536 109202728 830079802 830079802 838158674 838158674 571032995 571032995 680550515 680550515 943844195 943844195 459547062 571514897 571514897 545597505 950663115 950663115 752302797 686604686 1009992536 1009992536 1046878607 1046878607 820416912 317342810 134743108 318941190 318941190 67188776 219607076 219607076 829646081 829646081 806958985 837171873 837171873 551723144 837473763 837473763 562975346 818021440 935037584 935037584 409477589 813697106 813697106 788540486 886682587 886682587 878392971 822854312 403750918 403750918 470843910 470843910 275573139 817284314 843983391 910947483 910947483 872852624 21151872 72352392 915700760 915700760 885781707 349514442 595316767 595316767 579211581 272030466 760784354 760784354 1016328783 1016328783 1005776758 471712398 549982336 778702804 778702804 753219592 753219592 613242644 46272640 545677904 545677904 76279305 651813961 717226501 717226501 550007500 180982992 138617996 60465948 229688172 522741848 522741848 860311043 860311043 564056194 1014584177 1014584177 158339972 212224668 645192680 645192680 207816773 338216202 598689828 598689828 767314364 767314364 338446833 244373050 527619910 527619910 342528278 305858334 488141854 488141854 388120578 354472370 388664194 388664194 474731192 474731192 102640176 86069952 99873768 99873768 56135456 58904688 205176868 711984056 711984056 678482565 211407441 554576961 915509798 1031405855 1031405855 775623860 810615602 810615602 332692966 558886504 558886504 904278703 967284039 1035080476 1035080476 74617688 59168868 168171540 192944244 192944244 159432816 170560004 170560004 137305348 137305348 36143104 36143104 42855504 42855504 148023408 153215632 159872280 260781180 260781180 252467956 252467956 978984033 1000347590 1000347590 840597670 840597670 294923057 299332256 299332256 282454722 402991110 402991110 402991110 294074880 136129124 135934464 34086576 22937600 34078736 34078736 41288000 54733392 588655024 588655024 512597361 835719492 835719492 507514362 740831564 740831564 587400962 526707124 990208346 990208346 654377364 403675014 412049680 412049680 258944444 67550420 25949280 63672592 652363776 652363776 577904796 196084448 182526452 182526452 182526068 32549024 89410216 89410216 591532320 610272432 610272432 88870312 697904353 706372544 706372544 678721233 675128213 709680433 946000134 946000134 943874304 822172134 822172134 56953456 27759170 295883106 579338914 869795571 869795571 590874449 272405905 290868864 290868864 394893318 394893318 309206418 368437204 368437204 256239804 256239804 225565372 187322716 187322716 142864452 147781636 147781636 148230784 148230784 23018016 23018016 24909952 33218976 33218976 18951232 16192384 16192384 167657728 167657728 144834880 144834880 134424208 143342448 143342448 984586261 984586261 556607746 671459620 671459620 538128897 284373954 284373954 924955286 924955286 399119610 399119610 352456844 977434338 995749620 995749620 911351152 911351152 790374760 567060833 277027736 556994705 928120842 928120842 1003889905 1003889905 1005989088 1005989088 844310279 789720870 789720870 611733976 346756172 328864114 313066860 313066860 150472054 120072032 265364220 629290208 700707849 700707849 698299653 923024812 923024812 872440069 872440069 744493334 1016256839 1016256839 488984166 486426918 900746467 900746467 403718756 966234281 966234281 426942278 435160038 435160038 434190496 434190496 17035296 17035296 15351040 185749920 185749920 178393124 196609908 196609908 40673524 134553268 288957664 288957664 139023412 139023412 206550697 662987608 765548763 1048588578 1048588578 820561216 809500803 889361001 889361001 75497544 33555576 990385192 990385192 610931153 151912740 964954818 964954818 718612669 756288045 756288045 403523212 292427000 292427000 247728348 259070052 380910298 380910298 262026896 234231704 265068496 265068496 64132848 99635968 99635968 395136184 395136184 172627092 1007082496 1060110876 1060110876 899699026 899699026 732170357 732170357 178303973 143864388 61916016 571575216 571575216 937586276 937586276 847376792 468244298 810729601 810729601 952242670 952242670 598919776 598919776 88134201 348656305 1023672986 1023672986 930041277 1030134164 1030134164 382513925 272530616 305784594 356439328 356439328 716912469 1054201292 1054201292 1017791365 1017791365 1041359391 1041359391 974337614 939573762 939573762 811816732 811816732 180656464 576852369 576852369 1047001274 1047526815 1047526815 1006848149 673711365 474237714 622887914 897976827 956089579 966658919 966658919 701284920 303267792 231376410 681365592 753049245 753049245 780770319 1055307887 1055307887 504006482 905913275 1014505384 1014505384 847591383 831532555 668778863 668778863 822152830 843756065 843756065 952632896 952632896 944767623 869849674 869849674 1027214112 1027214112 332589516 250762160 257730428 556851649 556851649 538110112 701898852 701898852 636487341 636487341 630929001 738502432 738502432 433067910 433067910 230851717 629855337 629855337 629855337 616612041 863280659 863280659 671150904 671150904 623412265 623412265 34091104 168430612 713368656 713368656 696875616 278677058 699612772 807445588 807445588 176605459 543851168 732222945 732222945 729074613 662609308 662609308 931435808 931435808 691158607 739121671 940441612 940441612 178021504 195733744 195733744 63264116 197722308 197722308 46704880 178604676 178604676 184033348 267798420 267798420 123476832 237787532 237787532 172624132 180732024 180732024 1053744351 1053744351 944757025 665319801 701343073 776606153 812197251 812197251 489456975 560987553 560987553 426912332 553910600 666896827 666896827 570566547 570566547 539567361 321456384 571541782 571541782 428942899 764709044 1011165327 1011165327 831016034 831016034 911483842 920127195 920127195 559553569 559553569 537531393 202897932 600162292 600162292 581191168 496108292 496108292 754185165 754185165 353529957 157438370 560333665 560333665 30509281 163305940 236609440 236609440 211338828 139389264 259248308 259248308 254827244 254827244 185844384 118813336 103843872 20035840 12830912 6595520 4524800 3619584 95327049 95327049 917771696 917771696 597867248 361634922 558723298 1015093518 1015093518 881570914 425307805 813737325 813737325 261384946 358937482 358937482 333088038 894611597 894611597 856227646 814868997 697682804 769968460 769968460 877822288 877822288 580969152 297139119 427590938 895795468 895795468 253806488 737821224 786617589 786617589 1040711888 1040711888 891570539 733566924 838697102 838697102 81214152 877600027 877600027 694245880 694245880 979960155 979960155 515165022 415802325 716227664 716227664 195658809 803341432 803341432 967061607 967061607 655887639 656287507 739768845 941077005 941077005 1019338959 1019338959 364953698 364953698 724514133 724514133 832611367 832611367 575712523 641777817 693565728 693565728 848889294 874511883 874511883 337424385 58571296 58571296 295046144 295439970 389775874 476189070 476189070 252261810 19288672 82199008 294248264 460371572 460371572 295669090 954706048 954706048 686127687 604713864 135754373 627984384 696447017 696447017 688623685 142693417 1904640 1904640 20031968 28575088 29188768 46775040 62001460 314408768 826589414 826589414 681577671 960776551 960776551 824986997 729809013 595637476 777140300 777140300 298790081 281953473 516710570 901834845 901834845 745670926 692738629 474102808 675710262 862903731 953808343 953808343 814043857 671687568 711724437 711724437 694757397 25086240 25086240 19434272 29089760 29089760 31666656 31666656 23110400 11719488 4375680 5372288 139133520 177449044 177449044 169101724 205858956 205858956 122557540 202549296 202549296 204595980 204595980 202311452 236528484 236528484 186641516 508158910 508158910 376734130 376734130 513995296 513995296 511056432 487591994 487591994 486541886 369360932 217750968 217750968 166097572 553713797 553713797 544540772 609364736 609364736 224668576 606373016 606373016 575422721 170867988 436675856 939620369 939620369 542628529 728789173 864300203 864300203 843844755 843844755 575162544 323010738 541680545 594112640 594112640 574198289 537572112 14470848 14936224 73574792 97187168 97187168 88961672 117000136 117000136 111303512 113559768 119965944 344947552 360346538 360346538 96947480 53186992 119566144 300190592 316279024 316279024 301989906 60100274 64350960 563229473 588391587 603270978 603270978 312803522 852592704 852592704 599894097 570552354 644196977 644196977 666093125 680578318 680578318 501687782 435252838 512377218 512377218 1054410465 1054410465 176227488 717411789 717411789 596381776 554572833 506565884 506565884 880979281 1063152895 1063152895 356430352 674698543 674698543 425592888 345285194 605063394 605063394 829751425 829751425 847643218 847643218 326341528 119611658 382808650 382808650 284164944 339808482 339808482 308560336 400034658 400034658 376644850 292296170 292296170 117694536 117694536 98491930 98491930 14804416 344530376 344530376 853940691 853940691 584413203 807148705 807148705 570565664 805999649 805999649 860596242 1044921548 1044921548 512648224 512648224 456518454 456518454 130070208 453122628 453122628 43785974 113939200 251822108 251822108 878841904 878841904 890628297 890628297 922779723 973598751 973598751 865110113 594633008 713080950 822083619 822083619 602704352 122421737 841342035 841342035 554452002 640286040 640286040 371550610 644564481 878289978 878289978 539996256 354818504 354867496 354867496 88399856 98910472 98910472 86444280 57891968 130824512 130824512 128132512 23678816 48732800 48732800 3770816 59375104 650727682 650896594 650896594 596339632 538977730 1033520254 1033520254 1027097526 1070971301 1070971301 837376558 837376558 798449485 798449485 833996414 833996414 553914368 596870145 596870145 636654256 653859033 653859033 649587769 110201433 99270720 90225032 90076384 17855488 447304296 523765566 664816244 664816244 170796341 268512320 1000426074 1027204911 1027204911 907906155 706273350 706273350 462738287 328911733 905905586 905905586 325599211 351227378 351227378 570551712 570551712 540615680 540615680 420528802 169091108 185985584 655150902 923364907 923364907 513218975 710516288 710516288 272695368 272695368 407450504 407450504 387904826 387904826 57568872 344394514 344394514 77730120 298062658 397414808 397414808 62834512 106012769 829646081 829646081 806958985 837171873 837171873 551723144 837473763 837473763 789397196 789397196 935037584 935037584 111722756 136365400 545309824 545309824 157664084 33554400 249964884 249964884 362078240 362078240 354233898 481944851 638195405 820025933 1040636417 1040636417 887351321 942137570 942137570 562520775 555084321 671198894 671198894 504080650 739586843 739586843 338118054 272030466 760784354 760784354 1016328783 1016328783 1005776758 471712398 674572628 674572628 581979672 581979672 146672649 136450388 237377876 237377876 203692048 109116096 109116096 14139480 49906120 102360600 109604824 674575449 674575449 69280008 1032414045 1032414045 860311043 860311043 398194554 1014584177 1014584177 580523537 580523537 645192680 645192680 562298905 634129641 634129641 608747130 814139016 814222401 814222401 661949632 483921566 483921566 350242134 170586182 56698764 221324076 221324076 152437004 260704848 260704848 239480832 239480832 107224216 107224216 83508352 25377760 217844832 217844832 205176868 708499256 708499256 211984928 211407441 554576961 783553824 1031405855 1031405855 775623860 790819038 790819038 332692966 497864046 497864046 293880012 473435242 473435242 260834478 366512330 366512330 728120545 1028098351 1028098351 538368513 538368513 485490761 475553194 875368236 875368236 709572533 712121749 712121749 153705089 153705089 159872280 260781180 260781180 252467956 252467956 537151488 991582096 991582096 840597670 840597670 468713636 313525074 299332256 296202849 945240711 945240711 765928399 635672908 136129124 135934464 78296344 78296344 66717760 81503624 81503624 58019840 588655024 588655024 512597361 835719492 835719492 507514362 740831564 740831564 386540297 526707124 858046750 858046750 781444807 281635930 675249411 675249411 526848482 526848482 825614813 825614813 925317614 925317614 901908816 648085680 568328669 192864180 192864180 187619252 187356468 158032016 38027776 587661409 587661409 48708928 697904353 706372544 706372544 680382784 675128213 709680433 946000134 946000134 702832896 822172134 822172134 58853744 575604944 579274577 579274577 274890976 581282626 849685265 849685265 843899520 843899520 268977154 268977154 12616898 13176960 13176960 4507776 4507776 4194432 474002938 474002938 200258628 438843730 438843730 57256336 57256336 23018016 304257074 304257074 292939552 292939552 268706176 32407456 21282688 167657728 167657728 144834880 144834880 240133752 240133752 306342850 306342850 777517776 777517776 590625072 590625072 591380508 675837231 821262344 953645981 953645981 1070334123 1070334123 916524044 673259939 308281846 537730624 537730624 440141504 340613120 340613120 277027736 48653208 390734026 597177584 1003889905 1003889905 1005989088 1005989088 350792108 355603242 355603242 367523880 484891086 484891086 226980942 172621964 196151216 196151216 155784580 629290208 700707849 700707849 698299653 923024812 923024812 872440069 872440069 744493334 744493334 511756269 486426918 486426918 476728612 672814503 672814503 403718756 995552942 995552942 848059443 435160038 588389122 588389122 560853680 360474752 33722868 224550754 525895406 525895406 375558362 877322289 877322289 422106116 491799368 491799368 398070136 398070136 615536053 615536053 765548763 1048588578 1048588578 665531633 665531633 889361001 889361001 1036702412 1036702412 636886068 818814147 818814147 958139687 1051540321 1051540321 690955324 33892368 403523212 403523212 550306195 550306195 597566818 1072174320 1072174320 380910298 262026896 173941376 74856144 74856144 7211648 99635968 99635968 15279552 339733386 339733386 1007082496 1007082496 559206539 899699026 945832211 945832211 723781685 543198229 197951909 165707908 571575216 889272416 889272416 847376792 847376792 365714528 524327228 885802886 885802886 407929643 411598946 411598946 268486154 12632256 1023672986 1023672986 930041277 928509811 341040586 701041772 701041772 869844727 915530388 915530388 716912469 1052718405 1052718405 1043542815 1017791365 1041359391 1041359391 981508867 939573762 939573762 647275473 841135186 841135186 576852369 576852369 85291993 763656533 922865033 922865033 348652746 980604947 980604947 897976827 956089579 1013108783 1013108783 961712674 952511552 725319910 681365592 753049245 894037177 894037177 1055307887 1055307887 852291743 504006482 205624452 249084124 249084124 68422152 608631833 643371649 660028089 843756065 843756065 876875926 876875926 470628363 269607426 607491622 1027214112 1027214112 332589516 258282596 58894336 556851649 556851649 671428644 701898852 701898852 636487341 636487341 630929001 738502432 738502432 433067910 433067910 29361856 430184870 430184870 406620806 189453572 863280659 863280659 671150904 671150904 824465555 824465555 840305665 840305665 717051794 713368656 696875616 186640992 186640992 807445588 807445588 176605459 148782261 575742853 575742853 670634685 670634685 662609308 706054196 706054196 294261864 353319978 411053192 411053192 361243690 332164248 195733744 63264116 15018432 15018432 13964608 13964608 61077184 169923044 236078080 260736308 260736308 179307348 304136466 525511494 525511494 164049068 1053744351 1053744351 1023930540 1023930540 701343073 769799678 1030173073 1030173073 830681100 1034105199 1034105199 426912332 553910600 857735256 857735256 576197675 570566547 539567361 271122435 571541782 847619072 848088147 848088147 74898312 74898312 831016034 831016034 188076256 85341148 542771200 559553569 559553569 537531393 202897932 600162292 600162292 384831440 496108292 496108292 470884878 541114376 608174217 608174217 541626656 541626656 185097648 185097648 236609440 236609440 211338828 139389264 259248308 259248308 254827244 254827244 185844384 118813336 103843872 98642184 77594952 75895104 102507088 102507088 536883328 541274241 917771696 917771696 386565730 361634922 558723298 620806185 881570914 881570914 265814844 484805760 484805760 427942436 645957428 645957428 394135081 896189814 896189814 758045997 758045997 697682804 697682804 670965753 877822288 877822288 704429426 297139119 298363784 895795468 895795468 876223746 737821224 988156359 988156359 907876656 891570539 916664667 916664667 855234184 497615518 243007084 716062470 973153295 973153295 923281167 521174142 521174142 1012458628 1012458628 715918677 715918677 715394641 881627565 1023846664 1023846664 860250152 232907763 247634192 463845696 578101708 851717061 851717061 847265792 364953698 612959300 724514133 724514133 832611367 832611367 575712523 641777817 999621527 999621527 848889294 874511883 874511883 851857465 856699547 864016931 864016931 295046144 325788732 476189070 476189070 252261810 527314004 527314004 302142750 782823313 782823313 404785186 404785186 350407302 604713864 604713864 475827979 627984384 696447017 696447017 808780235 808780235 613231689 89551009 91056800 91056800 29188768 29188768 18911776 36158016 552558802 552558802 432559655 583696640 583696640 326579985 595637476 595637476 777140300 777140300 298790081 281953473 516710570 901834845 901834845 891817133 1010178831 1010178831 555478644 840619539 969336820 969336820 814043857 671687568 711724437 711724437 694757397 42892256 61035120 61035120 60761568 49714064 49714064 22757088 37935232 54720336 54720336 68228232 139133520 177449044 177449044 195056228 195056228 141570380 203035976 203035976 202549296 204595980 204595980 158529440 158529440 107866268 109248656 336835160 336835160 376734130 389947304 513995296 513995296 449104086 314988550 23729568 235283536 235283536 217750968 217750968 166097572 553713797 553713797 544540772 609364736 630488136 630488136 611369865 692969484 692969484 71360681 252797468 675645557 675645557 638591584 1049959047 1049959047 864300203 390663218 840322144 840322144 583910336 596966721 596966721 594112640 574198289 537572112 35310912 79662048 82012456 82012456 70840712 80867208 117000136 366985186 366985186 113559768 119965944 344947552 344947552 287909440 356866168 356866168 386039362 386039362 318316546 318316546 301989906 438843108 438843108 323695794 291221030 325525808 325525808 301989936 299117392 323841808 323841808 570552354 644196977 644196977 634999753 133094904 133094904 493965584 525595326 525595326 188759896 188759896 245933128 245933128 169992468 218214700 218214700 189175828 189175828 217290460 220917996 732390637 732390637 304207696 674698543 674698543 425592888 345285194 605063394 605063394 829751425 829751425 847643218 847643218 308280978 308280978 117436314 121899560 284164944 284164944 93323800 308560336 308560336 397972656 397972656 303204536 303204536 117694536 117694536 75612712 34799616 7525248 7525248 4194304 853940691 853940691 584413203 807148705 807148705 310576257 805999649 805999649 860596242 1044921548 1044921548 512648224 512648224 398945302 398945302 244074536 486836226 486836226 474143788 374134158 525939334 525939334 471345068 864485472 890628297 890628297 922779723 973598751 973598751 964983516 964983516 865865331 822083619 822083619 461422677 51319904 144920838 271111170 821135112 821135112 551544643 551544643 607930914 607930914 370491338 370491338 347221130 347221130 340036552 50081376 119308736 119308736 34480760 107481312 107481312 21235512 1574400 33137600 62559392 72324016 81653448 398277800 398277800 363720474 596339632 596339632 33338193 824869506 824869506 538104321 1070971301 1070971301 837376558 837376558 798449485 798449485 833996414 840011390 874330807 1012593673 1012593673 762494945 653859033 653859033 649587769 132121512 132121512 94445928 91235008 17855488 447304296 523765566 523765566 723592303 934087803 992296319 1000426074 1027204911 1027204911 907906155 868227586 868227586 462738287 337191986 1037370690 1037370690 543491936 543491936 544500832 570551712 570551712 292413489 554288161 554288161 286614052 553738274 655150902 923364907 923364907 513218975 710516288 710516288 212135104 73256260 2496768 295648866 387904826 387904826 881055019 881055019 818373760 818373760 311998163 614465209 630649371 805754883 805754883 574982794 930867225 930867225 623700274 289881144 289881144 308840626 666915360 789397196 789397196 972036676 972036676 873739043 415461666 545309824 545309824 187028740 206236149 564698696 564698696 337136128 337136128 336382986 481944851 638195405 820025933 1040636417 1040636417 887351321 942137570 942137570 562520775 555084321 671198894 671198894 504080650 739586843 1014440251 1014440251 842348612 842348612 209846516 209846516 152968740 26949216 201143936 674572628 674572628 724549800 724549800 621301840 621301840 237377876 237377876 643951768 643951768 552717137 605551113 605551113 548313236 610508039 674575449 674575449 478159115 1032414045 1032414045 161580894 795144466 863103831 863103831 617735416 580523537 580523537 634613800 634613800 620986953 865896651 865896651 608747130 1055048348 1055048348 814222401 701056400 483921566 522402358 522402358 437465622 457375762 457375762 325133874 285598610 287051298 287051298 287051298 269493592 120982568 120982568 88816680 88816680 217844832 217844832 201396484 189177384 180015416 67241544 109068096 109068096 783553824 783553824 207282301 114148900 77987968 108401080 118763840 118763840 184616414 277349442 473435242 473435242 260834478 366512330 366512330 728120545 1028098351 1028098351 1010325419 1010325419 485490761 475553194 875368236 875368236 779490749 779490749 712121749 153705089 153705089 21262624 93059744 180989456 180989456 201740020 537151488 671878149 1029493402 1029493402 789569692 789569692 313525074 152199410 296202849 945240711 945240711 765928399 635672908 47203488 47203488 78296344 78296344 66717760 81503624 81503624 74480912 539530366 539530366 485687553 128574840 689333864 689333864 709960397 777069213 777069213 315695144 315695144 781444807 781444807 281635930 675249411 675249411 526848482 526848482 825614813 825614813 925317614 925317614 901908816 648085680 568328669 408596340 621619088 698558357 698558357 726057505 726057505 588911008 588911008 40404608 179308160 179308160 680382784 680382784 713031680 713031680 155715636 31198816 31198816 542845169 542845169 58853744 575604944 579274577 579274577 273810562 581282626 849685265 849685265 843899520 843899520 401603972 401603972 390767762 390767762 362002236 267130364 267130364 232592060 474002938 474002938 200258628 438843730 438843730 180491588 160239680 19347744 304257074 304257074 292939552 292939552 268706176 32407456 182481396 182481396 165741092 65709044 224442084 240133752 241708412 306342850 822347617 908276054 1003819447 1003819447 605028393 605028393 675837231 821262344 953645981 953645981 1070334123 1070334123 916524044 673259939 308281846 537730624 818818709 818818709 686866116 241345480 241345480 235564628 154476828 81401068 0 268443648 769734050 769734050 295833954 297899428 297899428 367523880 484891086 484891086 293816484 285620262 370550784 705956397 717695604 717695604 558241953 722203701 722203701 136517000 206120076 543967235 627083705 992613422 992613422 434894310 434894310 250299218 246233623 672814503 672814503 341605860 995552942 995552942 848059443 441789078 588389122 588389122 560853680 360474752 92546952 224550754 525895406 525895406 375558362 877322289 877322289 422106116 491799368 491799368 398070136 398070136 1065550352 1065550352 259605944 585167020 585167020 251732168 373330092 771815816 771815816 1036702412 1036702412 954282569 818814147 818814147 958139687 1051540321 1051540321 963645231 963645231 843647823 1043669760 1043669760 1073351976 1073351976 1072174320 1072174320 473702070 303334044 324846462 535120678 535120678 283115954 203752602 444865612 444865612 339733386 339733386 710278209 710278209 486938670 846294549 1045810837 1045810837 688195653 676087840 830225137 862052787 862052787 889272416 889272416 842217876 842217876 394927226 524327228 885802886 885802886 407929643 457254333 777627860 777627860 807668096 807668096 973078551 973078551 571212817 77590004 701041772 701041772 869844727 915530388 915530388 507488612 1051398988 1051398988 1043542815 707380998 883102676 981508867 981508867 711147671 512235092 541983380 841135186 841135186 1054917087 1054917087 1042475465 606599433 346326224 346326224 84052265 980604947 980604947 861149459 861149459 1013108783 1013108783 961712674 952511552 940171264 940171264 940049415 894037177 902904362 902904362 852291743 852291743 671691052 671691052 668085629 668085629 626399913 563151016 575875809 660028089 660028089 672165505 694107813 694107813 168698545 60817776 420729749 838663203 991490161 991490161 996066967 996066967 405299761 306853650 691799300 691799300 326893751 128714504 168566424 199890420 199890420 148788544 200823680 200823680 406323456 406323456 154897934 137893764 6291840 581181836 782575965 782575965 215481036 824465555 824465555 840305665 840305665 717051794 191836085 311609972 403417170 1019064882 1019064882 244132734 244132734 471390030 609409764 609409764 670634685 670634685 488161311 706054196 706054196 498895017 885894778 885894778 550012318 361243690 332164248 132152764 132152764 114218256 28508160 37335840 45737808 61077184 61077184 236078080 260736308 260736308 179307348 304136466 525511494 525511494 164049068 369498138 369498138 1023930540 1023930540 409022460 723785780 1030173073 1030173073 830681100 1034105199 1034105199 754974765 1059587897 1059587897 857735256 576197675 789334814 789334814 953190413 953190413 940696071 848088147 853697144 896791467 896791467 606238481 188076256 188076256 936379131 936379131 889471069 538108449 538108449 147058884 604460425 604460425 384831440 384831440 1019481413 1019481413 541114376 608174217 1008372804 1008372804 581648682 590136368 590136368 657508100 720443284 720443284 6461120 29502368 69408976 106042008 106042008 105935496 72475272 98642184 98642184 77594952 75895104 102507088 102507088 598852624 598852624 570433680 570433680 541139073 37814289 0 0 658106546 658106546 643640493 285499991 427942436 427942436 645957428 645957428 394135081 896189814 896189814 216978363 446104088 446104088 631119324 670965753 670965753 704429426 704429426 638191885 638191885 578557826 876223746 876223746 390615349 988156359 988156359 907876656 644716624 916664667 916664667 947489713 947489713 243007084 983586825 983586825 973153295 923281167 833877731 833877731 1012458628 1012458628 766799213 715918677 715394641 881627565 1023846664 1023846664 906097127 906097127 548455286 548455286 776077360 776077360 286396461 337794392 337794392 612959300 612959300 877435208 877435208 696317057 284376022 284376022 1048699664 1048699664 611167953 611167953 789101804 851857465 856699547 864016931 864016931 381283072 381283072 379707738 379707738 265295666 527314004 527314004 411219206 782823313 782823313 404785186 404785186 350407302 350407302 349039818 475827979 475827979 549708576 618160809 808780235 808780235 769849921 769849921 672187296 672187296 541104672 156467232 49291520 38021300 552558802 684109860 684109860 583696640 999572051 999572051 314022258 310804162 312273090 872886786 889975851 889975851 353184810 714004568 891817133 891817133 1010178831 1010178831 776181793 825627703 969336820 969336820 457000305 332737220 315469490 157657234 152585008 42892256 61035120 61035120 60761568 49714064 49714064 25690560 56376576 57881520 57881520 68228232 194698156 194698156 56676768 195056228 195056228 141570380 203035976 203035976 184819820 87803936 73149960 158529440 239285656 256647300 256647300 227694970 255985990 255985990 389947304 389947304 449104086 449104086 314988550 23729568 42729484 42729484 134881844 134881844 115555144 115555144 90112288 80616648 67840040 630488136 630488136 611369865 692969484 692969484 1061972175 1061972175 936469119 496314990 638591584 1049959047 1049959047 294915138 294915138 840322144 840322144 865092184 865092184 596966721 55903088 55903088 83311560 83311560 79662048 82012456 82012456 4243216 41942928 41942928 366985186 366985186 35910202 11220288 329887824 329887824 287909440 356866168 356866168 386039362 386039362 318316546 369147930 369147930 438843108 443741832 443741832 526970808 526970808 175195920 175195920 168821268 270868992 270868992 840830496 853249619 853249619 575794267 264691398 333434978 493965584 525595326 525595326 480249392 480249392 415307128 491418822 491418822 277062796 25756672 67944480 67944480 35987752 20287024 120119376 120119376 68749984 366504264 366504264 305934010 297061218 291419618 30142304 317881122 317881122 313668992 313668992 308280978 308280978 338289930 387214610 387214610 394313850 394313850 382338714 382338714 397972656 397972656 303204536 303204536 131250778 103932696 97339914 97339914 35096064 344171080 344171080 276903744 43708162 331234320 331234320 327900322 289688722 300156306 334662864 334662864 319420026 391477880 391477880 390374444 136300568 193512564 512436304 512436304 486836226 474143788 374134158 525939334 532885564 532885564 864485472 864485472 839333907 250028884 212828548 212828548 964983516 964983516 865865331 304618754 805718016 805718016 51319904 144920838 671290368 821135112 821135112 551544643 551544643 607930914 607930914 345135936 345135936 337955082 78942794 110410736 110410736 119308736 119308736 34480760 107481312 107481312 63741584 63741584 41636464 62559392 72324016 81653448 398277800 398277800 381543466 617935352 617935352 23594400 137093636 137093636 236995976 236995976 445927394 445927394 798049805 798049805 594801585 692602861 840011390 874330807 1012593673 1012593673 762494945 645868425 598357000 590558001 581584233 581584233 627912880 627912880 107455392 107455392 155588772 455810071 723592303 934087803 992296319 1055550768 1055550768 970806792 798132405 868227586 868227586 614151753 614151753 1037370690 1037370690 870892702 543491936 758672926 758672926 536986225 877674562 877674562 679526953 671137797 553738274 553738274 52502832 465971100 465971100 471782494 471782494 291548460 361256738 407757056 407757056 246323548 447274376 881055019 881055019 818373760 843068619 843068619 614465209 630649371 805754883 805754883 574982794 930867225 930867225 623700274 492979737 973331139 973331139 906279928 906279928 923796096 972036676 972036676 952480055 497158645 615352129 800963852 800963852 686483644 686483644 564698696 174236636 93179212 277931008 277931008 142133124 537301506 908380933 908380933 805362112 617011396 536926621 281029214 228723001 302279712 351137226 351137226 519181278 1014440251 1014440251 842348612 1040060437 1040060437 787881007 787881007 628237228 374866488 374866488 666694429 724549800 724549800 621301840 621301840 117889080 97573624 643951768 643951768 552717137 605551113 605551113 548313236 610508039 610508039 605062852 751355085 751355085 475186167 475186167 795144466 863103831 863103831 593520512 593520512 571548241 634613800 727339653 727339653 865896651 865896651 258299494 1055048348 1055048348 701056400 701056400 370713826 522402358 522402358 437465622 457375762 457375762 325133874 285598610 287051298 287051298 287051298 269493592 120982568 120982568 88816680 108866144 108866144 83937960 65652128 172499200 543764665 543764665 151065740 615647289 671814976 671814976 629588209 647107161 741102172 741102172 135791960 135791960 219942220 219942220 45679344 127978616 127978616 31049856 167512100 167512100 566645776 637688093 1010325419 1010325419 259168046 175136000 642576029 692790812 779490749 779490749 152178345 137186320 138923792 163977400 218987248 218987248 165051504 154067486 366123037 1045166704 1045166704 1029493402 789569692 789569692 523373836 523373836 609620646 609620646 348557289 94503456 94503456 30983904 18213408 50603072 50603072 9963072 9963072 26552960 74480912 74480912 106067936 128574840 128574840 689333864 689333864 709960397 777069213 777069213 315695144 315695144 481296898 481296898 84458144 87233832 381107032 381107032 270083586 359602154 359602154 331939946 746701055 746701055 469868686 408596340 408596340 621619088 698558357 698558357 726057505 726057505 588911008 588911008 40404608 39323536 48402624 48402624 2249024 713031680 713031680 680004864 30949120 30949120 63906944 63906944 58800496 34607984 7814672 273810562 273810562 458752 270565376 273748226 273748226 21690498 401603972 401603972 390767762 390767762 362002236 267130364 267130364 308170812 308170812 216401202 61015072 48443856 180491588 180491588 176100512 176100512 153205908 286662272 286662272 23101696 23101696 20082836 182481396 182481396 165741092 140141224 224442084 224442084 241708412 361764498 822347617 908276054 1003819447 1003819447 605028393 973013560 973013560 911242069 626839209 1057553990 1057553990 749545165 741344013 741344013 174774672 402795974 818818709 818818709 686866116 317273936 317273936 235564628 416941290 416941290 425128170 425128170 470327330 484442574 484442574 337853334 297899428 580703091 580703091 427209101 895736353 1023723567 1023723567 1054998711 1054998711 717695604 985158217 985158217 722203701 245030967 419607589 543967235 627083705 992613422 992613422 434894310 434894310 250299218 356911248 508969206 508969206 285347874 434116738 434116738 413403462 441789078 535828360 535828360 109342796 160101204 708964101 708964101 405693842 968277997 968277997 521313630 521313630 378880 155542016 156576420 156576420 156551844 1065550352 1065550352 259605944 682684677 682684677 951633467 951633467 771815816 771815816 1072048169 1072048169 1006768143 427696038 1008605166 1008605166 813176096 870522986 996412613 996412613 843647823 1043669760 1043669760 1073351976 1073351976 645337281 645337281 696725016 696725016 543828132 1006698675 1006698675 550243521 678219141 678219141 614502637 279672000 185276768 67567928 336076802 336076802 846294549 1045810837 1045810837 750800261 750800261 918009827 918009827 862052787 823425250 730199329 842217876 842217876 810649889 810649889 1004997632 1004997632 782466231 854848467 854848467 777627860 807668096 807668096 973078551 973078551 529930878 529930878 336679394 336679394 499188068 499188068 1006961173 1006961173 770235887 282339784 411145178 411145178 883102676 883102676 306758870 816498505 816498505 852361359 852361359 616599938 1054917087 1054917087 1042475465 606599433 1051833182 1051833182 723907382 723907382 454363654 455737516 455737516 341052928 341052928 1049796684 1049796684 940171264 1020319434 1020319434 664134251 902904362 902904362 876908234 751126650 671691052 671691052 668085629 668085629 626399913 693048352 693048352 399651451 399651451 672165505 694107813 694107813 168698545 192076356 420729749 838663203 991490161 991490161 996066967 996066967 405299761 306853650 691799300 691799300 326893751 674406149 674406149 627927661 765388896 765388896 149068384 411235270 417126382 417126382 360741636 402604010 402604010 581181836 782575965 782575965 779104896 215481036 116621652 155494941 1066691729 1066691729 1048056285 311609972 403417170 1019064882 1019064882 774060477 774060477 598719764 1063420944 1063420944 442050054 488161311 488161311 671724607 671724607 498895017 885894778 885894778 550012318 343410570 143986572 278965208 334164728 334164728 127873160 127873160 58641952 45737808 229281924 229281924 213026628 47190592 196231724 196231724 70304520 67126080 95979624 95979624 76287048 231482634 606153482 606153482 829373859 841621584 841621584 277033026 546571872 648020340 754974765 1059587897 1059587897 626132795 808485920 858314514 858314514 953190413 953190413 940696071 591734961 914730513 937291515 937291515 606238481 566258304 176285799 936379131 936379131 889471069 552550792 538108449 147058884 604460425 604460425 285965330 285965330 1019481413 1019481413 508318802 508318802 1008372804 1008372804 581648682 590136368 590136368 657508100 720443284 720443284 158385060 158385060 204886032 221949316 221949316 206637208 72475272 21564072 4902016 46795344 46795344 93338144 131855928 909592317 909592317 872623136 904871403 904871403 958262823 958262823 834756175 658106546 980770595 980770595 322886196 439898934 439898934 178548126 273058358 521542206 721613402 721613402 788593489 930372173 930372173 534153645 578269696 1011782663 1011782663 740278727 638191885 638191885 800932842 800932842 658111021 654906641 654906641 408946638 822229760 822229760 192489396 203005236 947489713 947489713 227093608 983586825 983586825 606273861 606273861 833877731 833877731 668483239 766799213 766799213 145277482 386963000 553892019 553892019 409111494 906097127 906097127 548455286 767834598 878944659 878944659 687931583 687931583 616585220 616585220 641896464 877435208 877435208 324274866 683474552 1014446991 1048699664 1048699664 710290715 611167953 1021632261 1021632261 215032524 864468666 864468666 708509717 707817824 435136950 435136950 265295666 361405888 510395564 510395564 341219700 25215040 465691092 576841974 576841974 205783105 675586180 675586180 616949897 539320704 543236481 543236481 137363616 769849921 769849921 675672212 705069748 705069748 599078496 49291520 149113361 590854245 736424917 736424917 704175793 999572051 999572051 429084742 736786995 736786995 872886786 889975851 889975851 353184810 562927072 628897665 741043561 741043561 554451560 776181793 825627703 825627703 971162931 997342000 997342000 829633443 708778835 857575441 857575441 732471424 723551168 723551168 543261888 30409840 65145760 65145760 57881520 57881520 3083952 194698156 194698156 114747136 161498292 161498292 51938216 75497808 184819820 184819820 97091240 97091240 104996744 239285656 256647300 256647300 227694970 479743610 479743610 345246282 502340846 502340846 417047870 369157750 369157750 524705204 524705204 134881844 134881844 115555144 556607813 556607813 548018404 633549096 677849524 795481533 795481533 253198013 676890178 1061972175 1061972175 936469119 272993457 205729932 253659552 626839209 626839209 559793721 571409000 571409000 865092184 865092184 571519761 590359281 623090680 623090680 83311560 72753792 25248896 25248896 21684576 41942928 311388288 311388288 287843688 287843688 81801538 329887824 396702738 396702738 295284194 321145138 321145138 270860786 12216370 369147930 369147930 363102746 443741832 443741832 526970808 526970808 241696914 275353230 327511814 327511814 270868992 840830496 853249619 853249619 575794267 264691398 333434978 333434978 287729612 115743192 480249392 480249392 415307128 491418822 491418822 277062796 257344104 257344104 36528432 35987752 20287024 120119376 120119376 440665488 440665488 403998086 317508340 285028290 276281666 30142304 317881122 331486448 331486448 307015704 307015704 121893048 338289930 387214610 387214610 394313850 394313850 388779320 382338714 121378434 121378434 40262178 131250778 131250778 103932696 97339914 97339914 35096064 344171080 344171080 276903744 279474752 331234320 331234320 279040320 330734594 330734594 285114624 35734960 210610256 391477880 391477880 139379512 318806612 524450974 524450974 512436304 422111140 416810694 416810694 317404626 532885564 913444955 913444955 370278672 824502542 824502542 687939621 709988093 709988093 322436371 571936018 571936018 805718016 805718016 672809728 3117829 809253382 809253382 404012801 270801410 76423624 286257408 286257408 345135936 345135936 337955082 288134146 275291584 110410736 16550544 42518688 42518688 37304592 37304592 63741584 63741584 41636464 50446512 92636992 92636992 369749432 381543466 381543466 617935352 617935352 124257720 124257720 29463352 139088520 139088520 158953696 253587129 798049805 798049805 594801585 692602861 721261765 721261765 552053733 79186193 79186193 598357000 598357000 590558001 581584233 581584233 627912880 627912880 640281889 640281889 155588772 172099632 906008872 906008872 570618129 1055550768 1055550768 422102310 383377478 597028918 613667916 614151753 614151753 822083910 870892702 870892702 413138979 758672926 758672926 604061904 877674562 877674562 679526953 671137797 201359365 724284545 724284545 849126078 923585595 923585595 637298132 410402176 410402176 407757056 407757056 418196934 514646168 514646168 102834456 807979096 843068619 843068619 226697287 172228772 205920396 205920396 103813268 94897512 94897512 77072616 492979737 973331139 973331139 906279928 906279928 923796096 923796096 952480055 952480055 497158645 615352129 800963852 800963852 686483644 686483644 177760372 174236636 291125126 291125126 166241919 573023475 573023475 604293129 873628619 873628619 971250122 971250122 925907941 659949900 659949900 319415346 319415346 519181278 980423160 980423160 593494449 1040060437 1040060437 787881007 787881007 628237228 374866488 374866488 223081692 434386450 434386450 363057672 314626242 380673490 380673490 371171864 401619130 401619130 245702544 476700626 476700626 343769358 469836032 605062852 751355085 751355085 475186167 1005707295 1005707295 450939186 976975553 976975553 593520512 43442017 647745768 727339653 727339653 176301237 1312482 140182096 278409372 352321578 387714576 387714576 179233024 304628688 304628688 59286576 59286576 319835264 330129714 330129714 270796736 270796736 327770180 496789926 505988382 505988382 481084558 477204062 187442938 335122372 457802220 457802220 543764665 543764665 151065740 615647289 671814976 671814976 629588209 647107161 741102172 741102172 135791960 135791960 219942220 219942220 180490452 1049088 1049088 15517412 167512100 167512100 566645776 637688093 637688093 100794637 70256168 70256168 6556424 67111712 67111712 67639336 67639336 137186320 138923792 163977400 218987248 684945461 684945461 671687685 281126816 1045166704 1045166704 570590355 629670745 629670745 982132984 982132984 921113747 905354626 348557289 24168512 30983904 59476384 59476384 102429784 102429784 40687312 76401800 76401800 60950944 28171344 479393929 1020750535 1020750535 705512576 790576701 790576701 255855621 693718708 693718708 698148453 698148453 434807380 434807380 658238739 658238739 484582274 1021489536 1021489536 533251309 533251309 763420673 763420673 511231902 511231902 261901324 262479456 262479456 171651760 171651760 143729220 48604052 42376000 42376000 37273296 48402624 549580992 549580992 592474160 688128097 688128097 138940037 24852384 24852384 31930848 37424608 37424608 20937472 20937472 13691072 4220224 4220224 7665664 7665664 14510096 72404624 83339976 94999256 158793993 158793993 175005140 175005140 308170812 308170812 335873162 335873162 405076322 405076322 157573444 694550689 694550689 839127218 839127218 323375488 322978982 284442752 283536244 467665398 578802163 578802163 156823332 840394517 840394517 374851608 608667424 645538589 645538589 365690284 386634868 386634868 973013560 973013560 911242069 626839209 1057553990 1057553990 749545165 741344013 741344013 444963664 402795974 402795974 417670420 688983685 688983685 317273936 635177637 635177637 608058440 608058440 805306368 805306368 614335331 699542634 747867225 1049509998 1049509998 830716830 526873441 895736353 1023723567 1023723567 1054998711 1054998711 416285382 985158217 985158217 798134833 798134833 419607589 419607589 155410848 872485052 872485052 253772175 906767594 906767594 730274982 508969206 560785569 560785569 630996524 672927237 672927237 933355899 933355899 875507752 371528984 689732232 708964101 708964101 405693842 968277997 968277997 521313630 521313630 473956494 155542016 565500849 935517177 935517177 868270323 568014544 601569009 976828394 976828394 951633467 951633467 585355674 652288473 1072048169 1072048169 1006768143 865387171 1008605166 1008605166 177610416 705829525 996412613 996412613 441254730 606157508 617162000 617162000 338625134 645337281 645337281 696725016 696725016 543828132 1006698675 1006698675 550243521 678219141 678219141 614502637 939422231 939422231 848824064 848824064 336076802 288097730 858335259 858335259 750800261 750800261 918009827 918009827 823425250 823425250 730199329 496348453 884524875 884524875 810649889 1004997632 1004997632 782466231 854848467 854848467 139873280 471090840 1012500602 1012500602 924806619 924806619 604551122 604551122 418478767 422061348 988742023 1006961173 1006961173 770235887 415549638 587576096 587576096 829560115 829560115 544136577 816498505 816498505 852361359 852361359 438634780 953373317 953373317 936045917 942778996 1051833182 1051833182 723907382 723907382 454363654 455737516 628625283 812518825 817585672 1049796684 1049796684 504629978 1020319434 1020319434 409370843 373998219 876908234 876908234 327203568 327203568 407147556 462789238 462789238 270805409 950077890 950077890 830553607 980885045 980885045 539892993 539892993 167776768 192076356 194521700 194521700 55071268 159667316 159667316 46712016 186387988 186387988 671950372 671950372 257367108 674406149 674406149 627927661 765388896 765388896 440084176 440084176 427963366 835530471 835530471 823394499 665652292 665652292 842743583 842743583 779104896 919407978 919407978 783101277 1066691729 1066691729 1048056285 1001516640 1001516640 784969065 649312344 774060477 774060477 598719764 1063420944 1063420944 442050054 442050054 183279850 520667930 520667930 679385154 679385154 403096669 343410570 343410570 208717632 278965208 334164728 334164728 127873160 127873160 58641952 43478312 229281924 229281924 213026628 47190592 196231724 493928758 493928758 347113594 170950932 505413918 505413918 565224292 606153482 606153482 829373859 829373859 501691407 277033026 696995876 696995876 673846533 673846533 660215431 632947555 808485920 858314514 858314514 404931922 382256346 382256346 591734961 914730513 937291515 937291515 998631543 998631543 177046563 449104086 449104086 776298348 776298348 251228985 180619476 248265772 248265772 285965330 285965330 455285860 455285860 423555442 423555442 999416146 999416146 883445322 883445322 337195568 17115168 254832940 254832940 158385060 158385060 204886032 221949316 221949316 206637208 85964496 106505880 214166044 214166044 105715216 197736644 197736644 909592317 1028067391 1028067391 904871403 904871403 958262823 959252169 959252169 390708225 980770595 1036609257 1036609257 757707718 684340286 684340286 1025642799 1025642799 721613402 930086352 930086352 930372173 930372173 935524407 1041746032 1041746032 1011782663 740278727 447390121 354554154 800932842 800932842 658111021 654906641 654906641 373531021 822229760 822229760 192489396 203005236 203005236 227093608 227093608 202511976 203632908 237699076 237699076 226324572 81514908 403079280 828352544 858095027 858095027 806355459 386963000 336743424 409111494 409111494 474157950 474157950 767834598 878944659 878944659 687931583 687931583 616585220 616585220 641896464 641896464 322963968 324274866 832207282 1014446991 1014446991 1020510416 1020510416 595080082 1021632261 1021632261 215032524 864468666 864468666 708509717 707817824 435136950 435136950 225078276 225078276 510395564 510395564 944018865 944018865 465691092 713288305 713288305 205783105 675586180 675586180 1018186048 1018186048 338710061 807510826 807510826 624367617 78862893 675672212 705069748 705069748 684749672 684749672 149113361 590854245 736424917 736424917 704175793 467016694 467016694 429084742 736786995 736786995 348610372 419684430 419684430 214044878 562927072 628897665 741043561 741043561 714369832 660981885 84968081 314064704 971162931 997342000 997342000 829633443 708778835 857575441 857575441 732471424 723551168 723551168 543261888 318084386 65145760 317934882 317934882 43034312 385739000 399895242 399895242 279663314 387529507 935047907 935047907 655568937 766585892 766585892 568245609 687671941 687671941 537990216 743860876 743860876 865840132 865840132 671253556 671253556 789577896 789577896 671396322 671396322 666854883 854657989 854657989 539892100 839649326 839649326 706616832 556607813 548018404 633549096 677849524 795481533 795481533 253198013 677399064 677399064 174957580 139571849 205729932 205729932 253659552 626839209 626839209 559793721 537092624 537092624 151728652 203641737 571519761 590359281 623090680 623090680 50086936 41373696 25248896 25248896 21684576 8501632 311388288 311388288 287843688 287843688 81801538 25896096 396702738 396702738 295284194 346294602 346294602 94634210 370742170 370742170 125465976 191988484 341836437 876138245 876138245 539766275 738535683 738535683 651552668 986047171 986047171 547169985 882141410 882141410 956875946 956875946 839124132 239075704 157811800 115743192 112193112 152076400 209724356 209724356 204902788 221290636 257344104 257344104 169198152 243343452 243343452 349695828 384004562 440665488 440665488 510824080 510824080 357034026 361684136 361684136 361684074 331486448 331486448 289157520 289157520 69861576 69861576 85142472 117458992 117458992 388779320 388779320 361342306 361342306 289448698 124879146 291520938 374416026 374416026 304832648 3929856 3228032 5300096 5300096 11462400 279474752 279474752 53606192 279040320 330734594 330734594 61494082 443935638 443935638 442985134 442985134 139379512 369255636 524450974 524450974 474855982 422111140 416810694 416810694 317404626 317404626 913444955 913444955 370278672 824502542 824502542 687939621 709988093 709988093 322436371 571936018 571936018 539938322 672809728 672809728 3117829 809253382 809253382 549550465 549550465 15886849 286257408 286257408 275175810 273468546 288134146 288134146 275291584 97257832 97257832 42518688 116656424 116656424 98141168 120117552 120117552 69153736 87934656 92636992 92636992 55698096 664465762 825352258 825352258 558038826 558038826 124257720 361757962 361757962 444258214 444258214 755439669 755439669 263636548 724032132 724032132 733558980 733558980 181156908 237284672 237284672 94500632 94500632 609874728 609874728 99435689 117261259 570378587 640281889 640281889 538310842 842019139 906008872 906008872 570618129 313422206 1009178895 1019269567 1065666687 1065666687 775382024 775382024 672712197 822083910 822083910 698351973 413138979 900433291 900433291 604061904 604061904 614007845 614007845 739744044 739744044 827461925 827461925 849126078 923585595 923585595 637298132 410402176 410402176 69637088 370732638 418196934 514646168 1055216473 1055216473 577766289 638982865 638982865 373719563 394540750 394540750 677937123 677937123 619047369 818080778 818080778 2807040 13001280 13001280 21115936 21115936 31130208 31130208 135748316 135748316 87370704 139884180 169644358 278132546 300673986 300673986 274408672 274408672 291125126 322609284 461109174 573023475 573023475 604293129 873628619 873628619 971250122 971250122 925907941 659949900 659949900 923779211 923779211 658518787 658518787 637011945 858263851 858263851 588518858 299442448 299442448 132453896 55683092 190243156 223081692 434386450 434386450 363057672 314626242 380673490 380673490 371171864 401619130 401619130 276938832 383476382 383476382 982581573 982581573 889007813 685246149 884999006 884999006 1005707295 1005707295 450939186 976975553 976975553 665625024 665625024 647745768 647745768 635097673 568195282 382684769 140182096 278409372 352321578 387714576 387714576 347495936 339142728 431014246 431014246 3688960 319835264 330129714 330129714 44836918 39331430 327770180 496789926 505988382 505988382 481084558 477204062 187442938 335122372 457802220 457802220 77096780 41477360 77271104 109982024 109982024 248123728 248123728 165301104 187646592 187646592 129081696 129081696 172760128 180490452 197433028 197433028 38984240 151452452 151452452 22527168 30640640 272107296 272107296 24906786 70256168 70256168 6556424 67111712 67111712 67639336 67639336 28496768 28496768 52313744 127173805 684945461 684945461 671687685 281126816 286519394 570590355 570590355 629670745 668474349 982132984 982132984 921113747 905354626 483617607 490033348 490033348 228770500 228770500 102429784 102429784 40687312 76401800 76401800 60950944 76548036 479393929 1020750535 1020750535 765264868 790576701 790576701 509620913 710878236 824970531 824970531 760316449 725823040 434807380 658238739 658238739 484582274 1021489536 1021489536 926990504 926990504 989888745 989888745 511231902 511231902 374061010 262479456 262479456 197335088 150734624 143729220 539417681 539417681 42376000 710636481 710636481 672794133 718963733 718963733 688128097 688128097 536875140 688916064 688916064 549061392 198294608 37424608 44915856 44915856 42847376 42847376 39954496 34861056 34861056 5465216 5465216 1210880 399360 158793993 158793993 175005140 175005140 692114536 751441101 1034733709 1034733709 405076322 1059841160 1059841160 694550689 694550689 839127218 839127218 564976676 620872756 620872756 283536244 467665398 578802163 578802163 156823332 840394517 840394517 374851608 608667424 645538589 1028224016 1028224016 792920599 192516773 139577248 1039664803 1039664803 961151847 961151847 944595528 422874790 1032099466 1032099466 956118949 956118949 700069894 224944810 688983685 688983685 358662570 635177637 957487784 957487784 969018088 969018088 805306368 765896973 699542634 747867225 1049509998 1049509998 830716830 526873441 402985100 587915442 657171719 746816946 746816946 679877172 638658653 756073005 798134833 798134833 377857282 377857282 151724320 136385792 136385792 135858080 906767594 906767594 730274982 437264011 560785569 560785569 630996524 882510144 882510144 933355899 933355899 875507752 639943872 896058559 896058559 712488640 712488640 400287727 250859728 250859728 473956494 473956494 304223272 565500849 935517177 935517177 868270323 568014544 601569009 976828394 976828394 832913294 392790022 396040118 446379606 446379606 344007918 695208390 865387171 865387171 951452194 951452194 705829525 705829525 520431678 520431678 340016384 407571720 654646978 937113339 937113339 168692583 529539300 529539300 466668394 453102792 285212706 285212706 253618264 376287848 600406488 939422231 939422231 848824064 909239563 909239563 193079991 193079991 1004888556 1004888556 818749545 818749545 680530640 680530640 208584920 587961974 587961974 884524875 884524875 342705360 810271092 810271092 982001224 1041310239 1041310239 399787154 680370840 1012500602 1012500602 924806619 924806619 604551122 604551122 418478767 334108146 988742023 988742023 702252200 476125957 415549638 587576096 587576096 829560115 829560115 806095875 304896131 33818640 377674248 438634780 438634780 953373317 953373317 936045917 942778996 942778996 476552079 516107127 516107127 499565840 612548707 823147272 824518947 939186704 939186704 504629978 504629978 580050268 580050268 679319519 679319519 218116283 218116283 327203568 327203568 283132232 283132232 270805409 566104800 950077890 950077890 830553607 980885045 980885045 726730940 726730940 231049590 491466254 755722491 755722491 770969985 770969985 995673783 995673783 728688659 728688659 854795221 854795221 257367108 257367108 224508412 255834360 265087492 265087492 440084176 440084176 427963366 835530471 835530471 823394499 940750025 940750025 842743583 842743583 544219975 919407978 919407978 813612424 606759691 362881288 867033137 1001516640 1001516640 784969065 692725921 692725921 553918480 553918480 257985544 838953352 906495003 906495003 762881187 708437781 460787948 679385154 679385154 403096669 147326656 208717632 327403840 327403840 106401794 74824592 46524624 20285424 33817600 34343952 36046368 36046368 20585264 20058912 41955912 493928758 493928758 347113594 170950932 788597001 817160293 931168539 965814091 965814091 574720116 390932058 381807778 353187962 696995876 696995876 126911521 110236248 1007288706 1007288706 745149766 778572808 778572808 491282748 491282748 402718732 529271934 529271934 268959744 931496276 998631543 1059160428 1059160428 589621475 543211905 776298348 776298348 147729544 180619476 248265772 554695713 554695713 109500504 455285860 455285860 423555442 423555442 999416146 999416146 883445322 883445322 799482419 644284556 645268496 645268496 139136296 139136296 320823242 320823242 132590608 274094282 274094282 109488864 277471890 281067714 281067714 197736644 197736644 899167876 1028067391 1028067391 211565720 730858232 730858232 959252169 959252169 282925522 756853956 1036609257 1036609257 757707718 684340286 684340286 1040569094 1040569094 633405067 930086352 930086352 633204585 676876485 935524407 1041746032 1041746032 233099641 672569060 673460007 805380099 963978163 963978163 844312455 556274461 556274461 268841254 104282373 951261377 951261377 826413219 729556873 729556873 191575476 709074381 709074381 741805909 741805909 515575142 612100227 612100227 828352544 858095027 858095027 806355459 36606739 336743424 893310466 893310466 577363379 607501739 828436937 972058645 972058645 787538758 618811552 552866016 168090282 94556520 94556520 648546857 880056388 880056388 832207282 865682864 1020510416 1020510416 188094108 208592268 787535240 787535240 620748629 225422640 19294496 314191648 314191648 34827808 216871968 216871968 160581440 160581440 944018865 944018865 460787666 713288305 713288305 437391894 437391894 998059335 1057019951 1057019951 882148673 807510826 807510826 624367617 537257985 659863621 802560765 802560765 785756921 719112173 719112173 69187201 18341920 12656832 9552512 272633856 272765058 289538434 289538434 446769858 903614382 903614382 861748955 500617257 773593448 773593448 386580505 714369832 714369832 823184908 823184908 306301062 407167122 407167122 55998498 403054900 403054900 186718214 3179264 2355456 2355456 50135168 318084386 318084386 47261632 317934882 416416020 416416020 385739000 399895242 399895242 279663314 387529507 935047907 935047907 655568937 766585892 766585892 568245609 687671941 687671941 537990216 743860876 743860876 865840132 865840132 1035534884 1035534884 789577896 789577896 671396322 671396322 666854883 854657989 854657989 539892100 839649326 839649326 706616832 335806552 253188700 253188700 231024696 231024696 635637792 635637792 677399064 677399064 132712084 132170232 132170232 132170232 3465984 3465984 16779264 76851816 101952000 101952000 67581960 653324296 653757145 653757145 615776648 615776648 101791753 87576624 87576624 62702464 85933904 89091024 89091024 3794688 89813072 89813072 58986848 36051216 77207552 77207552 287311976 346294602 346294602 285278554 370742170 370742170 296222818 296222818 341836437 876138245 876138245 539766275 738535683 738535683 651552668 986047171 986047171 547169985 882141410 882141410 956875946 956875946 839124132 239075704 157811800 70518528 112193112 112193112 124847648 124847648 95572984 191357588 191357588 117827608 247960030 477358982 477358982 349695828 384004562 384004562 151016356 510824080 510824080 357034026 361684136 361684136 361684074 273809984 42996226 39823344 39823344 42255008 56361456 107252752 117458992 117458992 109103282 357049784 361342306 361342306 340886368 366281514 366281514 374416026 374416026 304832648 58827584 58827584 10166848 16061184 16061184 26279298 277904000 286661154 286661154 286160386 286160386 55481312 443935638 443935638 442985134 442985134 277105600 369255636 438016566 438016566 525882564 525882564 178522452 451970844 451970844 201362834 169356416 169356416 345630282 345630282 408820292 408820292 159140996 208030237 550721985 550721985 684161985 684161985 541897668 537994244 135152640 671880196 671880196 549550465 549550465 15886849 17304224 33282912 33282912 29138944 91354792 120714776 120714776 97257832 97257832 40898400 116656424 116656424 98141168 120117552 120117552 91045889 87934656 544034272 544034272 648197105 664465762 825352258 825352258 657619026 657619026 610720137 610720137 361757962 444258214 444258214 755439669 755439669 540547641 724032132 724032132 733558980 733558980 181156908 237284672 538042881 538042881 42125424 609874728 617047392 617047392 590124305 586078320 290298392 323448624 538310842 842019139 842019139 370601338 370601338 313422206 1009178895 1019269567 1065666687 1065666687 832907461 775382024 672712197 55066639 1061733567 1061733567 811631081 900433291 900433291 495666626 610853892 614007845 614007845 739744044 739744044 827461925 827461925 183178464 328086880 328086880 188745874 394005560 394005560 118230970 294992990 448142166 448142166 1073158517 1073158517 613693553 819333138 819333138 373719563 553720046 952506567 952506567 677937123 619047369 818080778 818080778 264124376 245963664 203854808 41473680 41473680 56496688 70268608 79115208 99897856 99897856 23536000 27791136 27791136 32773568 32773568 299444224 299444224 281930946 322609284 461109174 461109174 591676933 591676933 150947352 785573821 785573821 759181453 759181453 567753493 655786480 923779211 923779211 658518787 658518787 1060911134 1060911134 858263851 589053203 674381577 910491784 910491784 476916364 139222828 245696876 245696876 285993576 373684842 373684842 127682592 127682592 381032288 381032288 75952144 276938832 276938832 183520773 982581573 982581573 889007813 685246149 884999006 884999006 456162640 456162640 285476898 317630544 317630544 665625024 665625024 643535497 605151753 568195282 568195282 382684769 224068216 667431268 667431268 1023459432 1023459432 347495936 339142728 431014246 431014246 8252192 307766304 312018450 312018450 291884498 16843266 13190464 13190464 11281344 6106752 5562880 187590768 187590768 508022960 508022960 481211184 223558112 233796344 233796344 407048608 407048608 403207412 96129816 165301104 187646592 187646592 144550992 144550992 186990194 418851430 435495906 435495906 317719506 450244932 450244932 546200097 546200097 677940632 1010918076 1063897526 1063897526 997739157 997739157 173064232 660603805 744278469 744278469 721297365 178034049 591932722 591932722 328737521 48866560 39895440 279520578 279520578 1016706564 1016706564 898839147 842967653 813459452 935961868 935961868 972638370 972638370 560745696 560745696 228770500 228770500 183978096 183978096 136632580 137674756 137674756 244355088 244355088 276856898 882398787 882398787 765264868 765264868 676805253 509620913 710878236 824970531 824970531 760316449 725823040 380891994 335683880 335683880 236999030 377733186 478284000 926990504 926990504 989888745 989888745 417384872 409241894 374061010 254285008 254285008 197335088 92934240 50872560 539417681 539417681 37803216 710636481 710636481 672794133 820623122 863593347 863593347 672324192 536875140 688916064 688916064 549061392 198294608 8945936 44915856 44915856 42847376 44718144 44718144 34861056 34861056 18968640 74998672 99880776 99880776 61167408 61167408 56256624 645482802 991833975 991833975 1034733709 1034733709 494004258 1059841160 1059841160 934978010 119952515 655000753 655000753 564976676 620872756 620872756 492892323 1007036685 1007036685 742362016 290190498 204576686 63366432 122157240 656384272 656384272 1028224016 1028224016 792920599 219791904 219791904 1039664803 1039664803 961151847 961151847 944595528 879832844 1032099466 1032099466 956118949 956118949 700069894 224944810 224944810 358662570 358662570 349839810 957487784 957487784 969018088 969018088 765896973 765896973 240378336 240378336 318798375 318798375 281909419 496710967 586615215 587915442 657171719 943726096 943726096 967926194 967926194 862094832 700481972 700481972 671338496 151724320 151724320 136385792 136385792 135858080 858794852 858794852 137430532 1018441828 1018441828 394265427 532826706 882510144 882510144 319881638 425730610 639943872 639943872 896058559 896058559 712488640 712488640 793773819 793773819 1016434703 1016434703 934683874 934683874 923308032 366819304 566519562 763713289 763713289 159334308 230497316 832913294 832913294 392790022 1063796376 1063796376 996096143 1043283231 1043283231 796449006 796449006 951452194 951452194 828837078 1069228176 1069228176 520431678 286525680 77411236 654646978 937113339 937113339 168692583 895639612 895639612 774078762 719446485 719446485 717815187 717815187 900679172 900679172 710719674 710719674 419621891 909239563 909239563 847523534 484247635 1004888556 1004888556 818749545 818749545 680530640 680530640 208584920 587961974 587961974 581750097 581750097 927115486 927115486 440870836 982001224 1041310239 1041310239 399787154 680370840 680370840 323562053 410297280 410297280 376881366 243778112 255242465 732934453 779691933 779691933 893461666 893461666 1023087187 1023087187 753055625 1042922899 1042922899 806095875 772319108 1044988418 1044988418 705482010 768854728 961968869 961968869 422317964 138951970 419097820 544857730 897595013 897595013 499565840 612548707 823147272 824518947 939186704 939186704 1048408283 1048408283 247414108 247414108 679319519 679319519 482590214 482590214 462998926 673456516 689999232 689999232 77629802 566104800 566104800 944874232 1073293049 1073293049 742982225 726730940 726730940 231049590 850969094 850969094 755722491 770969985 770969985 995673783 995673783 728688659 728688659 854795221 854795221 89162816 98092776 171530512 214440636 214440636 175292180 149589896 660447529 697522648 697522648 291446658 770264615 940750025 940750025 416789478 739329798 739329798 619394505 813612424 813612424 606759691 573386001 867033137 867033137 692890694 692890694 692725921 825078905 825078905 663448867 793028380 838953352 906495003 906495003 762881187 708437781 460787948 460787948 422331344 150514748 312157184 312157184 434346124 443839314 443839314 402414840 103233816 100474392 120586680 120586680 223791236 262200644 262200644 260572364 260572364 60306536 26412228 14803392 14803392 788597001 817160293 931168539 965814091 965814091 701368033 882187968 882187968 933832059 933832059 411635978 411635978 1049198882 1049198882 1007288706 132121080 132121080 113415352 491282748 491282748 402718732 1024197748 1024197748 743253062 743253062 1015933063 1059160428 1059160428 589621475 543211905 272662532 339787914 439258398 439258398 427930082 554695713 554695713 406407582 500258744 500258744 189606978 387557240 856777017 856777017 92323906 799482419 799482419 644284556 645268496 645268496 139136296 405144774 405144774 403440704 132590608 274094282 313239040 313239040 277471890 281067714 281067714 39060082 120266056 899167876 899167876 215555619 181343424 148376100 267913212 267913212 91106884 282925522 641199984 641199984 328817296 447304288 675340414 675340414 1040569094 1040569094 521869832 521869832 311827026 328470560 328470560 54907618 916849470 916849470 233099641 672569060 673460007 815340992 996661559 996661559 844312455 556274461 556274461 268841254 167972925 951261377 990064695 990064695 729556873 729556873 191575476 709074381 709074381 741805909 741805909 515575142 628041390 628041390 563163765 387585075 280870266 275698644 275698644 640692760 893310466 893310466 577363379 607501739 828436937 972058645 972058645 947637116 862329267 582371243 749229460 749229460 321405248 648546857 880056388 1010319832 1010319832 865682864 865682864 174319075 188094108 208592268 787535240 787535240 620748629 413143911 1045979114 1045979114 314191648 44898128 216871968 216871968 160581440 160581440 420299282 460787666 460787666 177690516 302363137 437391894 437391894 998059335 1057019951 1057019951 882148673 697566572 612903148 612903148 541106848 659863621 802560765 802560765 785756921 719112173 719112173 592856324 592856324 683899733 683899733 862458993 862458993 593459091 838762370 838762370 903614382 903614382 861748955 944716935 944716935 925908373 439431508 681007105 681007105 840116514 840116514 720640849 720640849 552927476 696281847 696281847 941998101 997532869 997532869 680665344 727142592 727142592 553252928 294049988 432331366 432331366 416416020 416416020 288433152 288433152 6906784 134317364 134317364 60344144 60970768 60970768 74690848 74690848 70737672 562975816 770669177 770669177 102361509 18560544 319239202 319239202 1035534884 1040021887 1040021887 213560901 33554694 93323368 93323368 1049088 139848 9960000 92390464 92390464 25713160 202374156 253188700 253188700 231024696 268378720 635637792 635637792 614465865 242845708 242845708 604310973 757155877 757155877 195636744 615366009 615366009 546462273 160854592 227621940 227621940 653324296 653757145 653757145 643172873 643172873 101791753 87576624 87576624 62702464 85933904 89091024 308619882 325181874 367190730 367190730 346532784 396429920 662303395 662303395 825266714 825266714 895083817 895083817 653862617 605102609 553199553 539493633 539493633 537531658 352405600 606261826 641592855 641592855 563642852 738722829 738722829 747973197 747973197 424264234 408529416 477195436 477195436 108921224 108921224 91410856 94970944 94970944 124847648 124847648 341089530 341089530 191357588 403101742 403101742 477358982 477358982 297943680 220615548 372287344 531800284 531800284 473596450 473596450 9352458 12502144 376327040 376327040 359272754 374651776 374651776 82860600 79308392 107252752 107252752 272630792 272630792 312778906 337715466 337715466 340886368 366281514 366281514 20105290 33927920 77871208 77871208 202535308 202535308 16061184 201597184 201597184 277904000 286661154 286661154 286160386 488939404 488939404 177345108 177345108 404029952 404029952 335808522 239758034 411513588 411513588 525882564 525882564 178522452 451970844 451970844 387728544 343030160 343030160 345630282 345630282 408820292 408820292 159140996 208030237 550721985 550721985 684161985 684161985 541897668 537994244 135152640 671880196 671880196 539441409 564135457 564135457 548117952 548117952 33282912 29138944 25369184 25369184 106131952 108263688 108263688 41189992 46411024 56895761 56895761 44413329 105167168 629931432 629931432 544034272 544034272 648197105 648197105 109716528 363250513 657619026 657619026 610720137 610720137 123467448 123467448 107739376 95161704 120778856 540547641 583428928 583428928 555819297 555819297 123231160 113518192 538042881 538042881 109917304 109917304 617047392 617047392 590124305 618038347 652720601 652720601 663923225 855253304 855253304 303773202 606023027 606023027 116207064 441074624 975446312 1057302591 1057302591 620879913 620879913 901873775 1061733567 1061733567 811631081 717751509 699080710 814060667 814060667 873237514 873253899 873253899 714404864 714404864 473646117 445692846 445692846 388225064 188745874 394005560 524426500 524426500 294992990 448142166 448142166 1073158517 1073158517 613693553 819333138 819333138 67309568 553720046 952506567 952506567 805285900 601552853 342372052 342372052 264124376 245963664 203854808 41473680 41473680 56496688 70268608 79115208 99897856 99897856 23536000 23536000 293156546 293156546 270145026 299444224 299444224 284579618 281930946 157249744 203295800 591676933 591676933 505622814 785573821 785573821 759181453 759181453 567753493 655786480 857552867 857552867 351994992 351994992 1060911134 1060911134 809705611 589053203 674381577 910491784 910491784 476916364 139222828 245696876 417020134 417020134 373684842 453382144 453382144 441065406 381032288 381032288 383215002 383215002 128152652 388218548 388218548 477944992 477944992 401780532 278130882 381542494 456162640 456162640 285476898 317630544 317630544 554201121 554201121 30515360 17064385 83886120 542687424 628623017 628623017 801654468 801654468 1023459432 1023459432 134268164 152093220 152093220 434383264 434846882 434846882 312018450 312018450 291884498 311741010 311741010 501285062 522765630 522765630 613341407 847829210 847829210 1052238111 1052238111 708817645 224023661 322329800 823711392 846266629 846266629 690512036 277381124 35128848 171789220 171789220 144550992 144550992 186990194 418851430 435495906 435495906 317719506 450244932 450244932 546200097 546200097 677940632 1010918076 1063897526 1063897526 997739157 997739157 240649477 660603805 744278469 744278469 721297365 178034049 591932722 591932722 1018204620 1018204620 616276259 905656299 998794081 1016706564 1016706564 898839147 842967653 813459452 935961868 935961868 972638370 972638370 971801126 971801126 884232032 931261024 931261024 645664665 645664665 182329044 311745616 417611970 417611970 941801555 941801555 276873282 34799768 72561288 309313036 438563094 438563094 304400658 445896400 445896400 342309258 460465442 507252510 507252510 398335494 295439970 478284000 478284000 469817394 469817394 417384872 417384872 409241894 341870604 254285008 254285008 92934240 92934240 41782032 288378930 288378930 37803216 285393266 313730752 313730752 820623122 863593347 863593347 278986929 12587588 1049088 48759968 61041552 61041552 43364752 17333248 17333248 14878912 44718144 315668178 315668178 58979984 286170144 331614450 331614450 122680234 418479625 418479625 392689667 812759101 991833975 991833975 859169211 690972839 494004258 494004258 934978010 934978010 119952515 128462952 128462952 19500128 298399688 329066488 492892323 1007036685 1007036685 742362016 970308557 970308557 127611586 306339662 962835080 962835080 510706590 510706590 617876189 617876189 1012536975 1012536975 725620282 744344586 744344586 879832844 879832844 741671821 624222576 296488057 45673490 433790976 433790976 626735791 626735791 377372284 1029506795 1029506795 624523424 759026953 759026953 757000581 672322053 648246229 705809247 922095796 922095796 281909419 496710967 586615215 586615215 81187088 943726096 943726096 967926194 967926194 862094832 700481972 700481972 1005200295 1005200295 51582356 550357413 550357413 450743494 450743494 583050353 583050353 1018441828 1018441828 671940921 818497668 818497668 671428023 1062681279 1062681279 814973698 814973698 266996336 745177296 745177296 1028395982 1028395982 793773819 1016434703 1016434703 934683874 934683874 923308032 366819304 566519562 763713289 763713289 159334308 230497316 231476460 231476460 946183840 1063796376 1063796376 996096143 1043283231 1043283231 928148514 94951960 70310602 828837078 828837078 1069228176 1069228176 244947120 244947120 189527220 222369484 222369484 220728860 377666032 895639612 895639612 774078762 719446485 719446485 717815187 717815187 987807004 987807004 476149109 478560384 478560384 131878984 847523534 942805029 942805029 423044253 423044253 395483612 395483612 779611093 999502993 999502993 819685518 675448230 675448230 581750097 927115486 927115486 986687369 986687369 887836513 770045291 936717048 936717048 1044434536 1044434536 897891403 897891403 630050147 831526698 831526698 732934453 779691933 779691933 893461666 893461666 1023087187 1023087187 753055625 1042922899 1042922899 772319108 772319108 1044988418 1044988418 705482010 768854728 961968869 961968869 403702278 403702278 419097820 544857730 897595013 913303620 913303620 767741203 14874857 3595008 46629312 46629312 1048408283 1048408283 247414108 247414108 316161688 416325022 482590214 813017553 813017553 673456516 929381544 929381544 300039072 284341033 481614337 944874232 1073293049 1073293049 388088519 191061956 197922036 420587328 850969094 850969094 422380096 425441408 425441408 56609280 145132096 411057232 688194822 688194822 50906160 89162816 147841369 631591537 631591537 612758537 850133832 850133832 660447529 697522648 768489821 768489821 624730113 624730113 416789478 416789478 739329798 739329798 755992414 755992414 508853421 708938914 708938914 573386001 29699488 969221282 969221282 34202640 825078905 825078905 696985673 793028380 793028380 973604151 973604151 695941029 737619171 843130039 843130039 422331344 150514748 471979466 483511870 532961446 532961446 898690469 898690469 192835428 566257381 566257381 217470916 559038816 563103297 793925521 793925521 785531396 642372157 642372157 567445392 194007412 71487624 555980980 709224597 709224597 245203041 701368033 882187968 882187968 933832059 933832059 411635978 411635978 1049198882 1049198882 567941257 490475464 609889610 609889610 837661731 837661731 613026890 1024197748 1024197748 743253062 743253062 1015933063 1015933063 899939651 899939651 899942794 899942794 763920512 439258398 439258398 455659816 520860984 520860984 506524300 500258744 500258744 189606978 369731192 370197018 370197018 92323906 330970216 330970216 286855736 231247084 209766860 108598672 405144774 405144774 478940238 521356530 521356530 313239040 313239040 138963204 138963204 2965520 134974740 134974740 665323904 917244894 917244894 185139388 503332710 503332710 634097280 944292237 944292237 378988649 760043142 1055786452 1055786452 675340414 915017799 915017799 847384659 847384659 681705750 799488381 940868229 1013130201 1013130201 1039274412 1039274412 360902242 308620290 885639257 885639257 996661559 996661559 834260546 410230947 973633280 973633280 705168405 873542165 990064695 990064695 537932342 170339584 8726592 8726592 27638624 27638624 628341224 628341224 703986092 703986092 563163765 387585075 280870266 849180170 849180170 875261526 875261526 356163328 808030150 1037452456 1037452456 1025651885 947637116 947637116 862329267 582371243 749229460 749229460 404783176 404783176 836928044 1010319832 1010319832 790677550 441085352 329249125 694925421 694925421 657359661 756835641 756835641 682497451 1045979114 1045979114 285471536 285471536 139404742 533098632 533098632 472020480 472020480 402485136 166965312 162539236 155866144 50982244 48548304 46552064 29437504 29437504 164371240 217716684 217716684 231883948 541106848 655403728 655403728 204791837 204791837 800402301 800402301 592856324 592856324 683899733 683899733 862458993 862458993 809507376 838762370 838762370 751838087 770254317 770254317 944716935 944716935 925908373 439431508 439431508 343146904 840116514 840116514 720640849 720640849 552927476 696281847 696281847 941998101 997532869 997532869 680665344 727142592 727142592 553252928 294049988 432331366 432331366 412221844 412221844 185609298 293416116 293416116 290005650 206623013 678466469 678466469 881046021 881046021 139167808 88325636 743802988 770669177 770669177 742653245 742653245 625928256 785374357 993794952 1040021887 1040021887 809051683 785270650 785270650 633190531 941835229 941835229 687652992 1047536522 1047536522 611151632 288814872 164851080 164851080 144180804 644874272 773523737 773523737 784983589 784983589 242845708 604310973 757155877 757155877 668985709 615366009 615366009 546462273 236164676 227621940 266159332 768872176 768872176 641126560 643172873 643172873 78393856 78393856 46777488 46777488 57311920 57311920 308619882 325181874 367190730 367190730 346532784 914429475 914429475 662303395 825266714 825266714 895083817 895083817 653862617 605102609 553199553 539493633 539493633 537531658 352405600 1003038804 1003038804 641592855 563642852 738722829 738722829 747973197 747973197 739369101 545295426 655985308 655985308 524691474 302695752 302695752 374791178 401412498 401412498 368914410 359266834 359266834 180916876 403101742 403101742 371329298 371329298 536103082 536103082 372287344 531800284 531800284 473596450 473596450 9352458 67246464 376327040 376327040 359272754 374651776 374651776 82860600 79308392 79339248 87891272 272630792 373950186 373950186 109915344 281618706 330893264 343237080 371239720 371239720 397429354 397429354 363726954 363726954 364983274 364983274 348787650 348787650 482816300 482816300 280419138 388557464 488939404 488939404 447353232 447353232 404029952 404029952 335808522 130207992 240385196 240385196 220287064 220287064 131132740 62702160 387728544 387728544 343030160 343030160 119483402 86717736 220775572 220775572 168913612 245215200 555248276 575536805 679674373 698207345 698207345 195677616 57478196 547897088 547897088 553787489 564135457 564135457 548117952 548117952 336282144 295841896 355884392 355884392 289129064 108263688 292429650 401424210 401424210 124854994 124854994 67674272 105167168 629931432 629931432 100920457 103049360 118494656 639155810 857030507 857030507 628393242 615514754 615514754 545084993 400401923 298891066 298891066 662585904 662585904 596499528 127902272 127902272 91947160 123231160 123231160 113518192 52929888 52929888 109917304 109917304 103725056 107105296 125558216 618038347 652720601 652720601 663923225 855253304 855253304 303773202 606023027 606023027 462895734 462895734 975446312 1057302591 1057302591 620879913 949701170 901873775 901873775 503357624 526385590 526385590 459276726 814060667 814060667 873237514 873253899 981862208 981862208 580851779 530889301 445692846 521717310 521717310 152037194 365876058 524426500 524426500 441454688 441454688 1050020444 1050020444 580918227 851843283 851843283 845381844 845381844 574800216 577165713 805285900 805285900 601552853 342372052 342372052 54291184 65505424 65505424 21632160 27743264 36281456 268637976 305372840 305372840 291644312 297205146 297205146 307417874 307417874 282728130 96940104 354114024 354114024 316167428 250696500 194947764 319328044 505622814 505622814 493552816 219689072 724003229 724003229 564635689 564635689 560800833 59344016 59344016 115980688 120361872 120361872 102309808 168375352 168375352 227763136 227763136 103385384 103385384 70620200 417020134 417020134 194696820 453382144 453382144 441065406 328270118 262476652 383215002 383215002 128152652 388218548 388218548 681692192 681692192 264327472 198517632 198517632 254029176 254029176 147038628 676976912 676976912 554201121 554201121 23087209 23087209 84485160 542687424 628623017 813865249 813865249 801654468 948978236 1042402436 1042402436 418498098 66152708 434383264 434846882 434846882 304204738 304204738 37030420 311741010 311741010 501285062 522765630 522765630 613341407 847829210 847829210 1052238111 1052238111 708817645 224023661 322329800 823711392 846266629 846266629 690512036 277381124 172055696 172055696 159557744 45198048 41960576 41960576 61159632 61159632 40709488 40370256 33817936 144901316 144901316 872415770 872415770 901345078 901345078 341835803 311427376 311427376 689051784 756288045 756288045 680842957 680842957 294961970 835053928 835053928 1021220447 1021220447 616276259 905656299 998794081 998794081 671778040 617494100 652093528 652093528 747678978 916541423 916541423 500558574 971801126 971801126 884232032 931261024 931261024 645664665 645664665 182329044 311745616 417611970 417611970 973263069 973263069 579651230 941917253 1056495243 1056495243 512527428 781178072 813066909 813066909 696072848 696072848 460465442 507252510 507252510 398335494 1019301912 1019301912 985919703 620894211 766699569 766699569 224504361 142610880 142610880 208147840 208147840 201461772 109187594 283916962 598442305 598442305 359006650 554095907 554095907 714439509 720759765 720759765 1016644684 1016644684 739901646 677986000 677986000 547779648 173539024 43364752 33575168 43816592 678561138 715731682 715731682 686096626 686096626 970584133 970584133 349506119 949879008 949879008 948751431 948751431 812759101 812759101 273973408 273973408 67193736 345309376 1016112682 1016112682 569032718 699569512 699569512 602853880 646518856 646518856 575494788 682166257 682166257 541039288 659289273 970308557 970308557 259526380 306339662 962835080 962835080 510706590 510706590 617876189 617876189 1012536975 1012536975 725620282 407183910 407183910 420554886 420554886 624222576 624222576 296488057 172225076 433790976 433790976 626735791 626735791 385914782 1029506795 1029506795 411566082 411566082 28772712 491366276 648246229 648246229 705809247 922095796 922095796 375450690 460663648 460663648 113768664 758196248 758196248 794159805 794159805 225708972 242202324 242202324 187277316 1005200295 1005200295 59703536 550357413 550357413 450743494 450743494 583050353 583050353 588906270 671940921 671940921 818497668 818497668 671428023 1062681279 1062681279 814973698 814973698 376088127 912836734 912836734 1042342274 1042342274 485141822 485141822 451168984 451168984 450998020 450998020 393475002 393475002 1030049371 1030049371 769507100 712982421 710796778 677057934 946183840 946183840 1007225770 1007225770 491806266 928148514 1053263736 1053263736 858858291 425847473 620767276 620767276 110365272 244947120 244947120 189527220 117559500 88660032 203433120 377666032 402411250 402411250 113803306 72403136 71487624 714960272 741393165 987807004 987807004 414421214 639011660 639011660 617796297 196218406 942805029 942805029 662999215 838860819 838860819 918214491 918214491 1016163444 1016163444 819685518 675448230 675448230 232673581 227030484 969382252 986687369 986687369 887836513 770045291 936717048 936717048 1044434536 1044434536 897891403 897891403 630050147 831526698 831526698 362708040 220274988 567837240 847824083 847824083 319833707 264766716 220573480 153372676 153372676 38458512 291023676 403556230 403556230 1044532006 1044532006 420416582 757347122 1062898745 1062898745 958549556 958549556 690362661 913303620 913303620 767741203 539222187 639962379 639962379 584074116 265815276 243010288 82969416 82969416 82581896 273694288 315435920 813017553 813017553 580538496 929381544 929381544 300039072 637551696 974816720 974816720 486139854 847283284 1008264909 1008264909 191907789 420587328 1022997228 1022997228 727091264 727091264 151350852 151350852 145132096 200791876 732508240 1005497697 1005497697 577718672 577718672 631591537 631591537 891023426 891023426 850133832 795636326 924005137 924005137 768489821 624730113 624730113 822910053 822910053 275177422 346417482 755992414 755992414 885668911 885668911 708938914 550070422 789343626 969221282 969221282 1043591967 1043591967 696985673 696985673 672007281 672007281 973604151 973604151 700617413 737619171 851969510 851969510 708342379 727810560 727810560 483511870 532961446 532961446 898690469 898690469 241015104 566257381 566257381 217470916 559038816 563103297 793925521 793925521 785531396 642372157 642372157 567445392 532845196 757225913 757225913 709224597 709224597 388311354 601826002 601826002 544676864 548281665 548281665 159970404 523911978 523911978 567941257 567941257 490475464 609889610 609889610 837661731 837661731 613026890 613026890 542000137 542000137 172082316 39970176 142546000 899939651 899939651 899942794 899942794 763920512 403178502 405480448 455659816 520860984 520860984 506524300 484238728 88071712 88071712 52502832 57421280 57421280 65478736 152965488 193332636 231247084 231247084 209766860 168313556 108598672 294387756 478940238 521356530 521356530 354975792 354975792 287517680 284168320 319229552 319229552 134974740 665323904 917244894 917244894 185139388 503332710 503332710 634097280 944292237 944292237 378988649 760043142 1055786452 1055786452 228726140 915017799 915017799 847384659 847384659 681705750 799488381 940868229 1013130201 1013130201 1039274412 1039274412 360902242 308620290 885639257 885639257 428743782 826344580 826344580 410230947 973633280 973633280 705168405 268436503 42282560 227161392 227161392 170339584 142944324 142944324 79042914 162963442 711546692 711546692 988202752 988202752 748209741 144569416 177040896 849180170 849180170 875261526 875261526 423144864 808030150 1037452456 1037452456 1025651885 709362516 508610298 203769276 545341460 713154645 713154645 404783176 404783176 505813278 961694492 961694492 790677550 302090164 329249125 694925421 694925421 657359661 756835641 756835641 682497451 537284162 103549988 285471536 285471536 151784984 533098632 533098632 472020480 472020480 402485136 186246128 155866144 165991252 200727540 200727540 149219152 77074680 649753636 672975756 765902868 765902868 198892888 198892888 665796056 665796056 785011725 785011725 800402301 800402301 557197269 557197269 138308928 560595892 573971217 809507376 809507376 1043143169 1043143169 742179764 435409483 411326894 696332916 747512269 747512269 737619056 465903119 343146904 314188454 850899539 976236951 976236951 805706128 438578944 407186688 41159568 141370964 143852808 143852808 127670080 265414298 486803502 486803502 196641730 386172066 408292864 408292864 329326962 329326962 294873862 290005650 206623013 678466469 678466469 979141430 1024026761 1024026761 833212367 743802988 743802988 699008704 742653245 742653245 1064323422 1064323422 808443211 853417890 853417890 1021463368 1038539247 1038539247 961477991 961477991 941835229 687652992 1047536522 1047536522 611151632 762708796 762708796 834160606 834160606 644874272 773523737 773523737 784983589 784983589 303721554 303721554 179802716 668985709 668985709 907529126 907529126 670411257 607077060 675704384 675704384 1059145466 1059145466 660840824 568669521 568669521 78393856 82652568 82652568 46777488 98353760 98353760 120948824 120948824 83629416 83629416 618759009 914429475 914429475 805445955 805445955 935560345 935560345 928624955 546907713 351458250 902010678 902010678 402990604 402990604 375464256 1003038804 1003038804 412454056 239611768 239611768 210764364 206834828 739369101 739369101 545295426 655985308 655985308 524691474 302695752 302695752 374791178 401412498 401412498 368914410 359266834 478263404 478263404 445421618 184565760 156254728 356516304 536103082 536103082 204343526 203669760 201535500 206209440 206209440 77630592 77630592 109634048 109634048 23019768 54202880 54202880 53028144 64503552 64503552 87891272 131544608 373950186 373950186 153495940 281618706 330893264 343237080 371239720 371239720 397429354 397429354 363726954 363726954 364983274 364983274 348787650 348787650 482816300 482816300 521877054 521877054 388557464 104295866 447353232 447353232 144712530 36220678 134572576 152308260 508823752 508823752 346875034 346875034 531751806 531751806 167635168 476686758 476686758 343024840 348276778 348276778 503252392 503252392 168913612 245215200 678459520 678459520 679674373 698207345 698207345 707347473 708627733 708627733 543645793 553787489 553787489 14194272 98313960 346991456 346991456 295841896 355884392 355884392 289129064 21546144 292429650 401424210 401424210 124854994 124854994 69544200 69544200 546646593 670215953 670215953 541845520 646216720 646216720 857030507 857030507 665267521 615514754 615514754 545084993 400401923 298891066 298891066 662585904 662585904 596499528 55067296 54583472 42590800 44058640 65510192 65510192 63080976 52929888 42781776 46307728 46307728 35787024 125558216 320316592 371503410 371503410 332425570 308844274 43065936 43065936 9387072 344192636 462895734 982985398 982985398 361076784 622644776 867498618 949701170 8208 33628176 442507320 526385590 526385590 459276726 403149880 403149880 157733088 164238564 981862208 981862208 925663872 567760120 844677346 844677346 877105848 877105848 287580178 86299048 193202384 441454688 441454688 1050020444 1050020444 580918227 851843283 851843283 845381844 845381844 803643529 577165713 675432724 675432724 536087550 209718194 204211652 204211652 79956168 50534860 20580176 42017876 196615732 420633436 420633436 305372840 291644312 297205146 297205146 307417874 307417874 282728130 96940104 354114024 354114024 316167428 250696500 194947764 75576904 91997320 211428592 219689072 219689072 724003229 724003229 705030165 564635689 616685908 736557445 736557445 151270545 606462084 606462084 556432269 614606113 660154041 692905496 692905496 251245432 251245432 209238156 194557472 194696820 194696820 173463568 173463568 67582856 67582856 441868872 441868872 378707358 374027418 38616336 679477125 681692192 681692192 698351973 698351973 198517632 554211141 554211141 145156352 676976912 676976912 336743874 550814634 819003395 819003395 84485160 615514272 615514272 813865249 990394292 990394292 522125471 1042402436 1042402436 418498098 17826336 0 431104 838656 838656 400384 400384 448512 448512 22859776 23278752 23278752 20056032 354472710 354472710 420736010 420736010 220077612 30400044 216945816 990478592 990478592 276833424 276833424 177084420 172055696 172055696 159557744 25303200 41960576 65754354 329421986 329421986 315176146 321598770 427369716 427369716 184711573 880133143 880133143 901345078 901345078 341835803 311427376 311427376 689051784 756288045 790660740 790660740 725042823 725042823 835053928 835053928 1021220447 1021220447 760996967 760996967 336266296 336266296 562773177 617494100 652093528 743845810 747678978 916541423 941610473 941610473 934889627 934889627 707545982 594807729 558942225 618211017 618211017 140060292 168830096 168830096 527872 973263069 973263069 579651230 941917253 1056495243 1056495243 512527428 781178072 813066909 813066909 696072848 696072848 392575162 1013189031 1013189031 461427552 1019301912 1019301912 985919703 620894211 766699569 766699569 224504361 23140384 23140384 208147840 208147840 201461772 112077132 283916962 598442305 598442305 359006650 554095907 554095907 714439509 720759765 720759765 1016644684 1016644684 739901646 677986000 677986000 547779648 173539024 16020752 33575168 43816592 678561138 715731682 715731682 686096626 686096626 970584133 970584133 349506119 949879008 949879008 948751431 948751431 673830978 221089806 289165192 289165192 294730464 1019506537 1019506537 1016112682 625262642 699569512 699569512 602853880 646518856 646518856 575494788 682166257 682166257 308875428 684929703 684929703 256954936 491258117 491258117 671681742 881174735 881174735 859840683 860914251 860914251 454689500 365434090 320808662 973397033 973397033 1011736588 1011736588 644712861 408009859 408009859 257913220 441339264 520932414 520932414 385914782 385914782 435559398 435559398 411566082 411566082 272779724 491366276 491366276 470579404 136362272 429966826 429966826 375450690 460663648 460663648 113768664 758196248 758196248 33641469 17432864 17432864 55000008 83310768 83310768 62926448 187500932 187500932 331399410 331399410 124791746 641222626 997771100 997771100 761381350 761381350 374085106 986631275 986631275 952425542 1021537598 1021537598 933866695 952984955 952984955 912836734 912836734 1042342274 1042342274 376140060 237233562 451168984 451168984 450998020 659580307 659580307 562276650 1030049371 1030049371 769507100 712982421 722477168 722477168 680600133 476671990 1007225770 1007225770 491806266 491806266 1053263736 1053263736 858858291 736436689 736436689 664811532 79827177 185409056 185409056 169030164 18754612 17566752 81408632 81408632 73147440 51829296 79714432 79714432 71487624 714960272 741393165 741393165 107851413 213650640 639011660 639011660 617796297 158503240 267045504 267045504 662999215 838860819 838860819 918214491 918214491 1016163444 1016163444 296502435 688881026 946835745 946835745 673452231 969382252 969382252 229308072 229308072 16364864 16364864 10098240 11535168 11535168 8454656 269516800 269533698 269533698 362708040 588326833 729672597 729672597 643444889 684336796 721487200 721487200 476053134 476053134 1043807754 1043807754 1045883526 1045883526 272833152 1044532006 1044532006 883028483 757347122 1062898745 1062898745 1013861254 1013861254 690362661 690362661 499404039 881521123 881521123 825356072 950355654 950355654 822629063 822629063 667551981 667551981 82581896 127800064 128716152 230167852 230167852 241108072 241108072 143668616 68401696 637551696 974816720 974816720 486139854 847283284 1008264909 1008264909 200540676 355739888 1022997228 1022997228 727091264 727091264 335385024 151350852 45522240 45522240 732508240 1005497697 1005497697 577718672 577718672 248900348 630760156 891023426 891023426 805963597 795636326 924005137 924005137 436481686 684745295 684745295 948179233 948179233 275177422 346417482 346417482 195043869 885668911 885668911 667656524 667656524 789343626 789343626 774786599 1043591967 1043591967 391235222 123431867 293669376 294988386 421288386 421288386 700617413 700617413 951697944 951697944 708342379 727810560 727810560 78248096 78248096 118955123 858281124 858281124 750739404 750739404 227012293 71812840 546935072 546935072 512914574 891907350 891907350 464150554 415487440 532845196 532845196 757225913 757225913 583410287 336200654 388311354 951583114 951583114 873403170 548281665 548281665 536908800 537024513 537024513 364876590 364876590 137505728 391987232 391987232 415572228 415572228 283380162 136390854 74208512 172082316 172082316 384702466 384702466 221588268 529092276 529092276 294439078 23647266 273059842 405480448 405480448 362096444 362096444 135718656 135718656 34349568 52740896 52740896 57421280 57421280 65478736 149160016 149160016 184197076 261738312 261738312 174626066 407031942 407031942 268696726 228575864 228575864 354975792 354975792 348858248 348858248 319229552 319229552 50471168 60027504 60027504 91951904 91951904 205459064 205459064 160432228 407897888 407897888 344332520 152571924 509706264 509706264 235421978 344309848 344309848 278922254 481929536 481929536 398921998 390408378 341717920 140583300 140583300 41943120 41943120 14001424 174531616 269225424 428743782 680048802 680048802 556253465 556253465 179591461 673655638 691484939 741817087 995170758 995170758 484746170 484746170 357952170 161295972 303410212 711546692 940676504 988202752 988202752 748209741 143254596 143254596 134243392 525312 341314706 384592010 480048000 860801596 860801596 584058544 584058544 655903381 655903381 513607040 545341460 713154645 713154645 497025048 497025048 505813278 961694492 961694492 767193296 489346350 494424704 494424704 251707452 226809632 226809632 39465504 18028176 3146496 103549988 252707388 252707388 225190248 147664068 241954728 251230172 251230172 240057152 186246128 147507252 165991252 200727540 200727540 149219152 77074680 649753636 672975756 765902868 765902868 588909557 536870913 763913824 763913824 785011725 785011725 206384268 206384268 55822396 9867008 9867008 0 57943396 693020695 693020695 1043143169 1043143169 742179764 435409483 893407244 893407244 747512269 747512269 737619056 465903119 440270941 637754770 850899539 976236951 976236951 805706128 438578944 433393600 41159568 141370964 229772264 229772264 127670080 265414298 486803502 486803502 332663538 386172066 538066647 538066647 329326962 922119464 922119464 701067655 397685932 397685932 302737872 979141430 1024026761 1024026761 833212367 996042875 996042875 934525341 934525341 509918063 1064323422 1064323422 808443211 853417890 853417890 1021463368 1038539247 1038539247 961477991 961477991 114376776 114376776 183517444 246974420 598087105 762708796 762708796 834160606 834160606 596762653 596762653 578523408 578523408 386537130 303721554 303721554 18923808 288524322 288524322 907529126 907529126 670411257 769159328 769159328 675704384 1059145466 1059145466 660840824 568669521 568669521 48142864 82652568 82652568 30959984 98353760 98353760 120948824 120948824 402163016 402163016 806425824 810689283 810689283 805445955 805445955 935560345 935560345 928624955 546907713 351458250 902010678 902010678 604383262 531701944 531701944 503319804 503319804 412454056 239611768 239611768 210764364 206834828 222563884 415287960 415287960 328059376 328059376 95760242 302390608 302390608 33953808 45364784 61416816 61416816 61416816 478263404 478263404 445421618 417373466 417373466 399886974 399886974 322530878 203669760 203669760 384195794 384195794 281398180 332287068 332287068 113796184 113796184 102598344 100786048 100786048 129000024 129000024 69866760 68166144 68166144 91105536 91105536 153495940 153495940 115423616 184561780 184561780 163031388 216076848 216076848 207721944 207721944 141887124 36515088 216932996 395979840 395979840 387398202 521877054 521877054 358856564 358856564 333456724 237572852 494552370 494552370 134572576 152308260 508823752 508823752 346875034 346875034 531751806 531751806 167635168 476686758 476686758 343024840 348276778 348276778 503252392 503252392 267013392 267013392 723393013 723393013 198766736 679745813 735643252 735643252 708627733 708627733 674316544 674316544 537709569 542148001 560251520 560251520 346991456 2168426 864288 24867584 24867584 23941184 83416960 83416960 370665880 370665880 113572113 69544200 75179456 546646593 670215953 670215953 541845520 798506021 798506021 141173568 665267521 709627029 772515973 772515973 577800592 587464736 587464736 572557312 591741472 591741472 55067296 55067296 54583472 44179712 44179712 65510192 65510192 63080976 29664720 41358720 46307728 46307728 35787024 312611472 312611472 276832480 332425570 332425570 808544705 808544705 342838096 881399491 881399491 326755816 982985398 982985398 361076784 622644776 867498618 867498618 417407098 417407098 255885726 392937638 392937638 290141346 270647344 270647344 157733088 164238564 387238284 975701842 975701842 1065047524 1065047524 844677346 877105848 877105848 287580178 239094016 210646094 210646094 119812246 997668789 997668789 481442804 481442804 920653835 920653835 803643529 803643529 650123307 650123307 536152566 592073436 592073436 577379652 367740956 105163892 163647616 163647616 134349924 196615732 420633436 420633436 245252706 3426304 3426304 18351648 18351648 19522848 19522848 616736 17445888 17445888 27461376 27461376 26853632 75576904 91997320 91997320 88670816 109732900 721809500 721809500 705030165 608581760 616685908 736557445 736557445 151270545 768964156 768964156 682014697 614606113 660154041 692905496 692905496 251245432 251245432 209238156 193092960 193092960 187172148 143968836 204366812 204366812 67582856 441868872 441868872 378707358 374027418 31497920 679477125 679477125 159938785 698351973 698351973 145023617 554211141 554211141 93175233 229419777 229419777 336743874 550814634 819003395 819003395 81313929 615514272 615514272 548930497 990394292 990394292 522125471 436741686 436741686 136417280 421229062 421229062 468949122 468949122 316578882 333063392 333063392 335490578 335490578 313580864 23278752 23278752 681624027 681624027 852677909 852677909 763288301 614895745 429363495 178781718 990478592 1000599958 1000599958 814264432 434405600 57429328 43506416 36950304 36950304 52740464 65754354 329421986 329421986 315176146 321598770 427369716 427369716 671090704 880133143 880133143 674149784 680253829 680253829 768332597 768332597 721877605 639027892 790660740 790660740 725042823 725042823 287792922 772923175 1023492352 1023492352 828375459 760996967 554864384 433796838 610939498 673321221 673321221 743845810 743845810 387820605 941610473 941610473 934889627 934889627 707545982 594807729 759890947 889861292 889861292 236255792 410930376 410930376 842323154 842323154 586322952 268621640 270194178 312267918 508710998 508710998 338987536 310724876 310724876 692136453 692136453 266412540 1013189031 1013189031 461427552 323905184 960733703 960733703 299913418 627224709 627224709 521027514 521027514 464049144 151657952 196683636 196683636 112077132 42585152 52729872 319078416 319078416 331763954 331763954 302330690 340329482 340329482 336952904 786424911 786424911 271181058 706327765 706327765 307507216 979896850 979896850 807010242 807010242 965379140 965379140 307833538 307833538 302059664 342660274 392554938 392554938 291081618 299843298 363155638 510278172 510278172 615527528 615527528 353591465 1019506537 1019506537 625262642 625262642 449871995 449871995 308080671 371661000 371661000 297987360 369373976 369373976 104007706 709992945 929194499 1055068876 1055068876 491258117 671681742 881174735 881174735 859840683 860914251 860914251 404013617 491864410 950509759 973397033 973397033 1011736588 1011736588 928877247 812739861 839508117 939814938 939814938 520932414 815956025 815956025 311348942 435559398 435559398 946118638 946118638 889717795 889717795 1000867191 1000867191 883070264 204328204 147449504 220989344 220989344 219974700 582027532 693939968 693939968 289591458 498645146 498645146 488315256 488315256 194210600 257956772 257956772 187500932 141387136 4304512 4304512 641222626 997771100 997771100 761381350 761381350 374085106 1072178320 1072178320 952425542 1021537598 1021537598 933866695 952984955 952984955 48357840 130496760 445685666 445685666 376140060 317576830 494348674 588330526 905014585 905014585 809685123 809685123 846534130 846534130 11324736 157314212 722477168 722477168 680600133 27973240 219325416 267720932 267720932 564103724 564103724 236724069 752325696 752325696 736436689 664811532 43617380 55533784 801404088 801404088 264412225 17566752 470413134 509177436 509177436 409084290 409084290 888421070 888421070 207346588 207346588 952541572 952541572 959498097 959498097 713311572 713311572 475415494 475415494 117609894 436917270 436917270 800801640 800801640 763885677 669847915 669847915 386313451 688881026 946835745 946835745 673452231 673452231 477312645 434565478 593372167 593372167 81391400 805672104 805905411 874917665 889198856 889198856 874796332 972837476 972837476 588326833 729672597 729672597 643444889 766335492 766335492 953758338 953758338 643364380 1043807754 1043807754 1045883526 1045883526 175444768 345414408 883028483 883028483 278859298 286809252 286809252 1013861254 1013861254 1000741239 1000741239 499404039 881521123 881521123 825356072 950355654 950355654 822629063 822629063 696781049 696781049 231212272 898002663 898002663 693394149 693394149 640000006 659705664 659705664 353481386 352453698 284375042 318788122 318788122 412460482 440519764 440519764 200540676 54799312 54799312 138012420 838932721 838932721 602006001 815239255 815239255 441193617 308940950 144885584 310693910 554483857 677343063 677343063 630760156 1060115738 1060115738 836843317 836843317 827462569 827462569 628232866 684745295 684745295 948179233 948179233 231150224 131870396 134956056 134956056 68303596 68303596 673020848 673020848 558726442 558726442 404899331 306307218 995945396 995945396 638635692 748701512 748701512 603531681 575906885 724656405 972679365 972679365 951697944 513826895 413680966 339353670 78248096 78248096 80015288 769762268 769762268 750739404 750739404 253452428 253452428 546935072 546935072 308623852 891907350 891907350 987811317 987811317 608207170 180613332 201362410 583410287 583410287 336200654 336200654 951583114 951583114 873403170 289541288 77994752 536908800 537024513 537024513 288952426 288952426 137505728 357850752 369872730 415572228 415572228 301996224 374657554 378162062 497425716 497425716 384702466 384702466 221588268 529092276 529092276 367925550 239077406 320082108 404095750 454574254 454574254 485804872 485804872 485759180 69207424 69207424 52740896 48234752 65635072 171556916 208950128 208950128 192808968 261738312 261738312 183131620 407031942 407031942 268696726 228575864 228575864 120051882 329931104 348858248 348858248 330434632 330434632 478774718 478774718 344312706 344312706 131434568 194578544 436450154 436450154 257174316 490795462 490795462 90882968 509706264 509706264 348438882 344309848 344309848 69742354 481929536 481929536 398921998 799039901 799039901 164110580 63489264 153154864 153154864 18252528 75731768 556206732 755159085 755159085 715553728 556253465 556253465 411581546 673655638 691484939 741817087 995170758 995170758 484746170 484746170 357952170 161295972 660646981 991872406 991872406 940676504 866259315 866259315 248526979 398535628 398535628 505813278 505813278 384592010 480048000 860801596 1059957849 1059957849 909640570 887298493 887298493 513607040 787293459 957205538 957205538 497025048 497025048 427957300 864550945 864550945 767193296 607439625 671259532 671259532 222562336 226809632 226809632 342658186 342658186 486423450 486423450 463295534 313579286 225190248 456604464 456604464 290811430 412831828 412831828 166334576 147507252 147507252 457314486 463590194 463590194 304288736 269884544 299139200 737019020 884736748 968251257 968251257 763913824 763913824 802682908 802682908 136429700 660086073 660086073 541604676 541604676 797569640 797569640 201329421 741605388 893143904 893143904 658885905 90777000 893407244 893407244 420928231 335949846 169357068 342890070 440270941 637754770 637754770 308655234 418001940 418001940 433393600 433393600 49621648 147927024 229772264 229772264 237309608 237309608 129763488 337512728 337512728 540679554 540679554 538066647 201399368 922119464 922119464 701067655 397685932 397685932 302737872 441818715 441818715 255857716 616348416 996042875 996042875 934525341 934525341 509918063 864545484 864545484 830958464 777860751 777860751 965151520 965151520 951268167 75946056 75946056 114376776 114376776 20058152 4215552 30131024 590214560 590214560 30111184 598783168 598783168 563221089 570557169 974740755 974740755 887795351 887795351 881714046 953524555 953524555 538091008 538091008 118730984 769159328 769159328 67133516 226574496 226574496 50466864 107156928 107156928 125878664 125878664 87386024 83901736 42501008 42501008 29360352 116495040 402163016 402163016 806425824 810689283 810689283 609429138 621995866 621995866 813774531 813774531 662773881 591546699 591546699 1037559850 1037559850 796995688 835125396 835125396 399970698 378301108 338536454 451727158 451727158 477964686 477964686 222840374 443385930 443385930 370159106 370159106 328452858 341447714 387849786 387849786 355067178 356460658 356460658 378430490 378430490 329435712 417373466 417373466 399886974 399886974 357516288 357516288 198178560 384195794 384195794 281398180 332287068 332287068 113796184 113796184 102598344 100786048 110227560 129000024 129000024 125964408 127602168 127602168 127209224 55510392 73995648 130555936 130555936 86061656 86061656 62055096 265775850 298562526 298562526 287215018 1063465407 1063465407 651308975 395979840 395979840 851143068 851143068 639247165 639247165 657198136 657198136 799475542 799475542 750318908 143340612 244375260 244375260 234881052 234881052 109051972 26029152 26029152 146392960 146392960 87615296 87615296 99856168 99856168 205580736 205580736 267013392 267013392 723393013 723393013 198766736 679745813 735643252 735643252 600641109 579615829 674316544 674316544 537709569 542148001 560251520 560251520 278942498 278942498 85109856 85109856 99858338 99858338 280607042 319883034 370665880 370665880 83939906 42008976 75179456 107559440 108758164 235541532 785469468 798506021 798506021 141173568 204541837 709627029 772515973 772515973 697370016 587464736 587464736 572557312 591741472 591741472 42591312 25242400 6414720 44179712 44179712 64701520 64701520 59782080 51599392 40159168 40159168 12355152 8590144 312611472 312611472 279139008 282238032 282238032 808544705 808544705 342838096 881399491 881399491 326755816 88090690 88090690 623929668 674370309 674370309 35651601 417407098 417407098 255885726 537003024 571085841 704644353 704644353 608273709 499175850 499175850 489315456 975701842 975701842 1065047524 1065047524 436072422 436072422 346344982 346344982 277351428 277351428 278347460 281944782 997668789 997668789 481442804 481442804 920653835 920653835 751199848 600675525 650123307 695679909 695679909 592073436 592073436 577379652 367740956 522485224 522485224 476191220 270980496 270980496 206084510 203461900 111922582 125318530 129549306 288432930 306997234 306997234 277137474 75497544 348998664 348998664 291797280 92345344 25868384 20480384 88616104 88616104 88670816 88670816 80641121 75575369 779016272 779016272 713940169 713940169 107629696 122005656 768964156 768964156 682014697 544709129 224820185 243337444 243337444 148576568 148576568 143580228 193092960 193092960 254872184 254872184 204366812 204366812 79340896 239665516 239665516 351119816 351119816 120424466 14056608 11075584 942837762 942837762 674284293 301243238 301243238 27447648 797176634 1032618055 1032618055 463780436 675334638 893414121 1016070735 1016070735 147342019 816054400 816054400 604526858 880988171 880988171 872599563 872435712 136417280 421229062 421229062 468949122 468949122 814216881 814216881 577553329 335490578 440137494 440137494 926149947 926149947 956174095 965253786 965253786 852677909 763288301 614895745 519304158 178781718 178781718 1000599958 1000599958 814264432 434405600 97917128 91473952 36950304 39969264 52740464 65271232 65271232 23834736 44245168 64159888 64159888 165811604 671090704 671090704 652469380 674149784 680253829 680253829 768332597 768332597 721877605 639027892 758766872 758766872 17486880 287729170 287729170 303667490 1023492352 1023492352 828375459 620800032 554864384 433796838 610939498 673321221 673321221 545828601 752122114 752122114 946212325 946212325 908467194 908467194 772033787 772033787 877577773 889861292 889861292 732472422 739915012 739915012 842323154 842323154 586322952 268621640 83182592 83182592 14312976 70148176 74694848 74694848 114448408 126420356 266412540 266412540 200647676 263608700 263608700 323905184 535845476 535845476 234081742 463514842 463514842 521027514 521027514 464049144 422047818 492670150 492670150 427727928 372316728 471353534 471353534 402130938 402130938 331763954 303413528 303413528 388862504 388862504 786424911 786424911 271181058 706327765 706327765 1016337885 1016337885 979896850 807010242 807010242 965379140 965379140 583174616 708849701 989917719 989917719 994388866 994388866 824992432 984056563 984056563 725607590 579979352 615527528 615527528 353591465 169166010 487113774 487113774 457302198 457302198 731009137 731009137 151729188 563514553 644420158 644420158 576990521 275239997 709992945 929194499 1055068876 1055068876 302327852 367274034 417072940 417072940 225948516 139411648 180668628 180668628 491864410 950509759 950509759 739208325 739208325 928877247 928877247 812739861 839508117 939814938 939814938 188744192 815956025 815956025 418270432 1059380354 1059380354 1013898639 946118638 889717795 889717795 1000867191 1000867191 883070264 522791176 287435079 220989344 227559727 1008853263 1008853263 582027532 438365122 289591458 511835280 683056733 683056733 645216944 645216944 627347701 586115140 329612966 726313414 765383991 798242593 798242593 494486953 476356998 142959458 142959458 67707912 1072178320 1072178320 245502300 955819471 955819471 841598765 841598765 518878755 631339240 631339240 445685666 1017183044 1017183044 317576830 494348674 588330526 991710389 991710389 832282179 809685123 281596033 109312984 11324736 1039736576 1039736576 932311423 931227883 151828950 541105888 585199961 737313232 737313232 975896592 975896592 841532208 752325696 220393640 659163205 659163205 597688012 801404088 801404088 677084593 234512344 470413134 1000807336 1000807336 866597235 416359110 888421070 888421070 207346588 555170337 952541572 952541572 959498097 959498097 948229569 785696761 674665729 707400981 707400981 602985232 436917270 420118576 155190752 614990153 669847915 669847915 386313451 999951843 999951843 597320276 743770758 743770758 737115408 737115408 670564657 593372167 586880849 885006657 885006657 919544144 919544144 889198856 874796332 972837476 972837476 410251272 429092642 429092642 209506188 766335492 766335492 953758338 953758338 643364380 643364380 189113345 139680568 139680568 167845908 167845908 607389728 614730057 947129889 1036782831 1036782831 392744935 814211380 1000741239 1000741239 981938388 892129283 892129283 183279479 338174880 338174880 246738656 254888904 696781049 696781049 231212272 898002663 898002663 693394149 693394149 640000006 659705664 659705664 353481386 352453698 284375042 274376552 62167384 39086416 38533264 44476032 44476032 54799312 54799312 40303237 838932721 838932721 602006001 815239255 815239255 441193617 308940950 144885584 310693910 554483857 677343063 677343063 593100809 1060115738 1060115738 836843317 836843317 827462569 827462569 1030885505 1030885505 671352832 421832841 476316196 476316196 73728 73728 0 0 53350984 673020848 738824320 743807013 743807013 757275009 757275009 995945396 995945396 638635692 748701512 748701512 603531681 575906885 724656405 972679365 972679365 864718883 864718883 321988450 451058598 451058598 77652936 352575823 769762268 769762268 650835561 668652968 668652968 781062828 868270745 932357849 942670961 942670961 854034699 987811317 987811317 608207170 290640264 274788840 197468400 134481924 57687108 412690017 412690017 604639593 604639593 303563818 932653248 932653248 829085963 784532484 792932608 792932608 570965232 578836776 578836776 369872730 110251720 301996224 374657554 378162062 497425716 497425716 285262128 285262128 283069536 350355922 374217882 374217882 239077406 341838626 488898856 488898856 454574254 485804872 485804872 485759180 191198960 176784344 48234752 48234752 174664160 174664160 208950128 208950128 192808968 129929432 267063896 267063896 183131620 138986624 338888448 338888448 269218818 10082816 329931104 329931104 307158162 330434632 330434632 478774718 478774718 344312706 344312706 131434568 139534360 436450154 436450154 353765558 490795462 490795462 88212956 400597484 400597484 348438882 111225088 111225088 8388672 210043208 210043208 145041732 799039901 799039901 164110580 63489264 153154864 153154864 63362144 75731768 556206732 755159085 755159085 715553728 316715042 516556450 516556450 373829754 301990460 301990460 285749622 291701104 291701104 270557892 270557892 165224706 660646981 991872406 991872406 781973085 866259315 866259315 263267196 398535628 398535628 505813278 505813278 413369160 276346792 276346792 1059957849 1059957849 909640570 887298493 887298493 268755932 787293459 957205538 957205538 177055863 427957300 427957300 864550945 864550945 718388636 744530880 744530880 696260773 696260773 621957928 100088808 342658186 342658186 486423450 486423450 463295534 313579286 217378686 456604464 456604464 290811430 412831828 412831828 166334576 192724228 192724228 457314486 463590194 463590194 304288736 269884544 299139200 299139200 884736748 968251257 968251257 718555113 265763580 802682908 802682908 576458148 660086073 660086073 546445584 541604676 797569640 797569640 675283240 741605388 796101605 796101605 658885905 90777000 577013945 577013945 639818096 679605848 679605848 573077584 610536712 610536712 412877954 317004608 447030580 447030580 434176244 420030528 297869812 386211712 386211712 256121328 237309608 237309608 379375194 379375194 337512728 939935282 939935282 120198529 147590340 281687920 465383286 465383286 152772982 317459922 945650178 945650178 417225414 417225414 417078528 491806728 491806728 424796838 424796838 38246838 235737816 830958464 1066209892 1066209892 129574776 965151520 965151520 951268167 387346474 84334632 67411192 78464580 235628364 248412636 573561949 573561949 1046023304 1046023304 678106504 598783168 563221089 570557169 974740755 974740755 887795351 887795351 881714046 953524555 953524555 612857077 713657288 713657288 627761460 627761460 453665042 811696491 811696491 629982705 629982705 566774184 357041154 125878664 337118120 337118120 299892906 34612450 70854408 116495040 308880144 315716634 387974969 610803768 610803768 609429138 621995866 621995866 813774531 813774531 662773881 591546699 591546699 1037559850 1037559850 796995688 835125396 835125396 203998476 442739856 442739856 451727158 451727158 477964686 477964686 222840374 443385930 443385930 370159106 370159106 397164008 397164008 387849786 387849786 355067178 356460658 356460658 378430490 378430490 435864902 435864902 138770948 403271376 403271376 357516288 357516288 85928712 85153568 85153568 965852297 965852297 325662932 657610626 657610626 581621001 456426863 387787018 387787018 610038324 610038324 545921984 258245396 261219004 261219004 229986920 151068812 130555936 256991436 256991436 224700436 265775850 298562526 298562526 287215018 1063465407 1063465407 651308975 579997346 601078237 851143068 851143068 642318600 642318600 657198136 657198136 799475542 799475542 750318908 143340612 244375260 244375260 113456192 258048124 258048124 156542980 156542980 164919904 164919904 163530564 149471392 16911872 16682212 138596884 182517920 182517920 164063952 164063952 38401124 14819328 12847296 12847296 12505088 12505088 993024 16850464 19628640 20081664 32818048 88625768 88625768 278942498 278942498 342087072 364954058 364954058 99858338 280607042 319883034 319883034 307371320 77111488 42008976 59048336 105481344 108758164 235541532 785469468 785469468 139113049 26993672 92823784 92823784 118546664 697370016 697370016 132198160 615261272 615261272 109364737 58720992 42591312 31769072 4056848 33816576 33816576 17836080 59782080 59782080 53494304 36556112 36556112 116639172 239735964 241185228 279139008 279139008 282238032 282238032 277680064 308022930 308022930 321102848 324604850 324604850 103920306 88090690 623929668 674370309 1058984798 1058984798 890803637 890803637 535974622 1062803388 1062803388 704644353 713233747 713233747 499175850 499175850 489315456 580258924 882755405 882755405 750317131 117625497 662848256 662848256 452202408 430442142 277351428 278347460 490856928 810933399 810933399 479909488 509294238 509294238 751199848 751199848 508509342 508509342 695679909 695679909 437200883 105226820 147390656 147390656 522485224 522485224 476191220 270980496 270980496 206084510 203461900 111922582 125318530 129549306 288432930 306997234 306997234 277137474 75497544 348998664 348998664 291797280 92345344 25868384 29748544 88616104 88616104 71800864 80641121 183517780 183517780 779016272 779016272 713940169 713940169 53230672 51811216 51811216 46157888 631427876 631427876 193495152 145157880 145157880 224360460 224360460 237494168 440598698 440598698 254872184 419187524 462540086 462540086 382255878 402010660 402010660 373017864 351119816 120424466 698893029 698893029 942837762 942837762 674284293 301243238 301243238 914563878 1015120102 1032618055 1032618055 706545780 706545780 893414121 1016070735 1016070735 569410112 816054400 816054400 805597264 880988171 880988171 872599563 872435712 61375264 61375264 55576880 52691632 52691632 814216881 814216881 577553329 279857153 440137494 995541722 995541722 926149947 1055917023 1055917023 965253786 143919684 475575632 519304158 519304158 120112440 327816808 327816808 288933666 84935538 97917128 97917128 91473952 80765384 52709408 52709408 61099632 61099632 43330128 13643360 64159888 64159888 58855520 33796568 75755528 115798216 115798216 65221032 65221032 106140032 106140032 86255368 586087044 586087044 543537156 541080836 541080836 287729170 689847459 689847459 576886549 620800032 622252015 622252015 243073123 159978777 799224189 799224189 1065826431 1065826431 761957767 1013307635 1013307635 908467194 908467194 772033787 772033787 877577773 877577773 732472422 732472422 739915012 739915012 15108424 79012808 79012808 72575112 72575112 74511000 115126016 115126016 6880832 885120 342807938 608360713 608360713 361335380 666035593 666035593 480432462 206283326 862559761 862559761 440722984 972799045 972799045 348168874 247707412 422047818 497959780 497959780 492670150 427727928 372316728 471353534 471353534 402130938 402130938 235149574 303413528 303413528 388862504 388862504 353782074 80863298 21094560 71369416 683158104 1016337885 1016337885 102804816 132228144 132228144 498704634 583174616 583174616 725950740 989917719 989917719 994388866 1037277583 1037277583 1052213499 1052213499 725607590 950043634 950043634 981490768 981490768 298369394 487113774 487113774 457302198 457302198 838440790 838440790 969597393 969597393 644420158 644420158 576990521 293392290 494328750 761409664 962593280 962593280 305135619 203424524 234555628 343148838 424954342 424954342 1067587880 1067587880 949694982 450671882 370925879 893069715 893069715 805934597 294526050 21400962 169977940 169977940 408084358 408084358 188744192 418270432 418270432 1059380354 1059380354 1013898639 770778093 770778093 268493650 385925882 399556666 522791176 522791176 570738016 570738016 227559727 1008853263 1008853263 438365122 438365122 1061363490 1061363490 683056733 683056733 645216944 645216944 627347701 868428256 868428256 726313414 765383991 798242593 798242593 494486953 177022660 766608162 766608162 565486574 405047510 405047510 963794241 963794241 1019457475 1019457475 859582647 652659671 910852478 910852478 692265092 1017183044 1017183044 85008936 441922076 441922076 991710389 991710389 832282179 362146410 695292583 726359485 726359485 1039736576 1039736576 932311423 931227883 151828950 541105888 585199961 737313232 737313232 975896592 975896592 841532208 220393640 220393640 659163205 659163205 597688012 618439216 677084593 677084593 234512344 234512344 1000807336 1000807336 866597235 416359110 416359110 136240644 136240644 555170337 606091558 606091558 809501462 948229569 948229569 785696761 674665729 707400981 707400981 602985232 837757002 837757002 297427682 297427682 347661202 347661202 566798794 999951843 999951843 443081046 743770758 743770758 737115408 737115408 670564657 586880849 586880849 885006657 885006657 919544144 919544144 344403978 269095938 398645264 398645264 365168874 206983072 167680140 143790660 180016708 180016708 152113284 122200100 443559698 696101124 696101124 271918362 271918362 274727298 274727298 607389728 721033057 976268887 1036782831 1036782831 392744935 562315602 746985549 981938388 981938388 892129283 892129283 829546663 807759039 709199298 442254162 481362762 481362762 409470464 409470464 219483524 173496884 256746676 256746676 152505496 26346112 26346112 45081738 429418338 429418338 332084466 269294402 269294402 403776006 403776006 64222944 281645170 281645170 174604672 197150176 197150176 656934452 656934452 244499404 244499404 163059220 163059220 673733568 673733568 173413952 459442586 593100809 593100809 479725564 479725564 1069691690 1069691690 687874373 1030885505 1030885505 426779062 275079204 476316196 476316196 107225432 161624420 161689976 177542380 1013822482 1013822482 738824320 743807013 974262400 1025184261 1025184261 989988921 989988921 342313545 178042906 594290672 721019873 721019873 683707617 807470864 842736409 864718883 864718883 405233676 451895816 451895816 238231684 390210216 725729645 725729645 630436949 668652968 668652968 781062828 868270745 932357849 942670961 942670961 693249076 693249076 517784316 290640264 290640264 341056290 341056290 424609058 424609058 412690017 412690017 887174632 887174632 634980147 932653248 932653248 829085963 784532484 792932608 792932608 570965232 578836776 578836776 69498452 109740104 136878360 141973252 185221280 185221280 48370128 457771232 457771232 283069536 350355922 374217882 374217882 379326042 379326042 488898856 488898856 311119648 250083804 171623460 239783180 239783180 176784344 211316476 211316476 174664160 174664160 142606432 142606432 129929432 129929432 267063896 267063896 67158024 67158024 346212096 346212096 338842218 314186640 314186640 265322652 265322652 129334048 91344132 182243028 182243028 162352240 162665316 162665316 138932968 138932968 300208620 353765558 353765558 194660360 164762340 398328488 398328488 261744208 261744208 168799832 120306232 286495264 534713062 534713062 210114636 240069148 240069148 215748300 117315076 66784416 63362144 147290624 166109288 166109288 241297736 241297736 215380240 516556450 516556450 373829754 269095992 292910080 305072198 305072198 417997414 417997414 296261570 279983282 280176186 397494632 397494632 303426066 133219320 217853104 263267196 263267196 975398942 975398942 413369160 413369160 484577742 484577742 280654344 356128554 639641558 703086906 703086906 189408784 189408784 890297659 1057030160 1057030160 134840096 155115300 553020272 718388636 718388636 804546992 804546992 696260773 696260773 621957928 255808032 158511712 158511712 197512352 197512352 199958960 199958960 167847572 143996532 135832708 152302116 160168016 160168016 145697600 192724228 192724228 137318324 66630848 295051440 295051440 295705344 295705344 109051992 696780960 797055045 797055045 670762149 242557365 242557365 576458148 576458148 543434753 546445584 577883448 799335593 799335593 703087097 675283240 675283240 796101605 796101605 621478008 536956953 218105904 236825616 639818096 679605848 679605848 573077584 610536712 610536712 412877954 317004608 447030580 447030580 434176244 330899780 297869812 386211712 386211712 256121328 191302144 191302144 379375194 379375194 228190138 939935282 939935282 475633829 475633829 838283970 838283970 610473265 422316080 616302399 974196288 974196288 539608258 417225414 417078528 491806728 491806728 424796838 874570503 874570503 515449612 515449612 1066209892 1066209892 942204319 481584174 481584174 454807186 890784364 890784364 740216365 591967440 932012602 932012602 573561949 573561949 1046023304 1046023304 740507852 740507852 147781664 147781664 418068864 942604642 942604642 711070101 897613975 897613975 962934112 962934112 713657288 713657288 627761460 627761460 453665042 811696491 811696491 629982705 629982705 566774184 357041154 88080552 901648779 901648779 324019264 324019264 292094440 542782784 640365849 640365849 609875393 610803768 610803768 562222272 129116088 26768467 571271408 571271408 566512785 626106888 823317027 823317027 1063396436 1063396436 367531519 184508768 184508768 442739856 442739856 178658788 111616064 111616064 1152 21496992 44420600 88679592 88679592 79291152 397164008 397164008 103021754 100883112 110544960 304926320 304926320 296227938 323492916 436490964 452250582 452250582 403271376 403271376 452914824 452914824 403345448 271646754 618711978 965852297 965852297 325662932 657610626 657610626 581621001 456426863 494947136 881119822 881119822 610038324 545921984 445075544 445075544 261219004 229986920 151068812 89563696 256991436 256991436 224700436 224700436 179937384 235409040 235409040 149441348 71303624 203588224 579997346 807130894 807130894 1009110917 1009110917 917504740 917504740 433595781 392267416 392267416 374359908 64277232 29639184 113456192 113456192 258048124 258048124 156542980 156542980 164919904 164919904 163530564 149471392 16911872 6193024 6193024 191139316 191139316 192022448 192022448 130683832 193401680 215300660 236374044 236374044 161277792 229182740 238937624 238937624 104671488 104671488 26266880 26266880 29025024 29025024 342087072 364954058 364954058 23238122 22650928 22650928 55662216 128754624 128754624 81903784 55083352 105481344 115562184 612926168 612926168 801347180 801347180 161162252 92823784 717226197 717226197 702326549 597192273 536922273 615261272 615261272 592455856 592455856 58753152 46694736 30150000 33816576 33816576 17836080 19934976 53494304 53494304 44033089 567186737 662230949 662230949 417956112 269573584 379584536 665244001 1057018910 1057018910 829194514 829194514 854175953 854175953 324604850 103920306 568325539 568325539 355335560 1058984798 1058984798 890803637 1057173567 1057559743 1062803388 1062803388 640889616 713233747 777062976 777062976 748559949 548274956 580258924 580258924 620937460 620937460 117625497 932448477 932448477 602841266 430442142 205577020 520222928 520222928 490856928 115414582 479909488 509294238 509294238 379720026 379720026 508509342 601103874 868881651 868881651 327591847 710765724 710765724 321717512 199274788 199274788 104857752 104857752 36312456 4871296 205968476 245814916 245814916 70255368 68982400 22535552 22535552 30112160 30112160 21285024 2553856 11532288 29787456 29787456 29748544 29748544 32989056 32989056 35686788 615643657 615643657 610200201 175767769 176015581 786737405 786737405 189333769 672733780 672733780 631427876 631427876 154325353 109134188 241821084 241821084 224360460 237494168 440598698 440598698 220350152 419187524 462540086 462540086 486170196 486170196 402010660 373017864 99662680 99662680 698893029 698893029 939528450 939528450 206046988 206046988 193001381 914563878 1015120102 1015120102 192947280 706545780 706545780 680526405 550114497 550114497 569410112 569410112 559470723 805597264 805597264 344597248 344597248 339243530 77104450 55576880 55576880 52691632 52691632 6327296 6045952 6950144 177209940 177209940 995541722 995541722 553025826 1055917023 1055917023 455399697 143919684 143919684 138463936 84562192 120112440 327816808 327816808 288933666 84935538 72634880 83036224 83036224 80765384 63005632 52709408 61099632 61099632 43330128 3156304 13709376 58855520 58855520 37886080 35786832 33554432 33653072 35766720 35766720 14470848 6529024 47234048 586087044 586087044 543537156 541080836 578463126 981099191 981099191 807759014 830245159 830245159 622252015 666506584 666506584 411849614 799224189 799224189 1065826431 1065826431 761957767 1013307635 1013307635 888019540 888019540 700587972 700587972 143246916 143246916 10143232 10143232 139340876 139340876 15108424 79012808 79012808 72575112 72575112 74511000 115126016 115126016 76843520 76843520 342807938 608360713 608360713 361335380 666035593 666035593 480432462 206283326 862559761 862559761 440722984 972799045 972799045 516288568 516288568 356695566 497959780 497959780 246940528 246940528 255202116 255202116 384566468 384566468 334496754 316795672 361767752 361767752 516907894 516907894 734765295 734765295 340601802 777200141 777200141 749732685 1021448193 1021448193 925404210 1059412020 1059412020 587564256 664867452 979071008 980818839 980818839 692134191 1037277583 1037277583 1052213499 1052213499 433877673 950043634 950043634 981490768 981490768 928153816 167806148 169944128 178783572 673716180 838440790 838440790 969597393 969597393 545323972 664807487 664807487 751406908 751406908 494328750 962593280 962593280 305135619 543885025 543885025 343148838 702548205 702548205 1067587880 1067587880 949694982 450671882 370925879 893069715 893069715 825454413 825454413 643435259 541697091 639902522 639902522 408084358 921978577 921978577 165567648 472657610 472657610 954932232 954932232 1033958217 1033958217 802235117 772866259 755438604 185133062 570738016 570738016 77694249 34202640 35734784 35734784 289302792 1061363490 1061363490 72255779 203823372 203823372 203823372 394373358 868428256 868428256 703910247 654991392 788576441 788576441 303345197 245712262 766608162 766608162 565486574 405047510 405047510 963794241 963794241 1019457475 1019457475 957628558 957628558 910852478 910852478 692265092 344068192 360923378 360923378 496296100 496296100 440183024 440183024 362146410 481128416 695292583 726359485 726359485 695605669 614777004 391831052 391831052 390628922 384848112 384848112 369238946 372277354 372277354 121697408 121697408 184273380 184273380 217334948 593942548 593942548 206717076 206717076 118134312 118134312 403208682 403208682 353610612 798280662 798280662 640230681 530565481 470946318 304404994 606091558 606091558 147998969 224695352 224695352 134354964 273039618 273039618 171606706 311448118 837757002 837757002 297427682 297427682 347661202 621358410 621358410 905971306 905971306 35128848 36536336 37088016 37088016 19947536 571137440 571137440 32820529 27661824 344982528 344982528 235195696 297289020 297289020 502647296 502647296 1013373547 1013373547 995923935 720397061 720397061 1046626729 1046626729 868746745 868746745 756175409 725254537 271918362 271918362 274727298 274727298 341922321 721033057 976268887 1043071533 1043071533 948183123 562315602 746985549 746985549 741203260 623502633 829546663 829546663 807759039 709199298 442254162 481362762 481362762 409470464 409470464 219483524 139732200 89102632 89102632 67601640 67601640 67480168 67480168 429418338 429418338 332084466 269294402 269294402 552784395 552784395 615661220 894908266 894908266 650789786 859034145 859034145 656934452 769744910 769744910 954742219 954742219 671745397 673733568 673733568 585126228 560948621 560948621 519326300 699536128 699536128 1069691690 1069691690 575734737 175178645 676536708 745420011 745420011 922095343 922095343 891141258 891141258 692332743 177542380 1013822482 1013822482 1009298607 1066864307 1066864307 1045729293 1025184261 989988921 989988921 781822906 781822906 623717673 721019873 721019873 689709633 698951013 698951013 497283438 884166222 884166222 739822182 451895816 403972004 390210216 390210216 375058532 134250496 67178536 67672328 556286216 621331497 621331497 932831501 932831501 693249076 693249076 377498208 268570640 268570640 341056290 458500764 458500764 424609058 313858772 62988528 887174632 887174632 634980147 121115137 92405952 88215720 61344152 266914296 266914296 135007236 178162240 178162240 37933200 44456000 44456000 39920016 39920016 239520276 456165948 457771232 457771232 314526192 310915936 310915936 444472598 444472598 379326042 23333280 175771656 242747292 242747292 228589568 239783180 239783180 170986212 211316476 211316476 135666052 124018828 138699436 223969956 223969956 65200888 249667904 249667904 505339422 505339422 478544208 478544208 445893568 397834754 367662570 331022848 331022848 290456226 284184800 336857610 336857610 207237882 162665316 162665316 366566894 366566894 78940508 105696408 471309184 471309184 406274574 406274574 419481418 419481418 475612360 475612360 265031356 320106684 534713062 534713062 447358192 447358192 240069148 215748300 117315076 66784416 29666528 147290624 185774144 185774144 241297736 241297736 215380240 429471340 429471340 269095992 269095992 292910080 305072198 305072198 417997414 417997414 357104316 279983282 921501131 921501131 841406274 605487115 820831851 820831851 244344292 315690648 975398942 975398942 943655016 943655016 484577742 484577742 280654344 356128554 356128554 319736600 75497544 86573384 86573384 84485160 1057030160 1057030160 134840096 155115300 680703520 680703520 59733952 804546992 804546992 262661053 195301688 255808032 255808032 158511712 158511712 197512352 197512352 199958960 199958960 167847572 143996532 175754128 175754128 186808364 235003932 235003932 185968400 185968400 305746978 305746978 343503064 343503064 603980032 958531516 958531516 696780960 903046790 903046790 709955200 709955200 169681981 764497044 764497044 757179245 757179245 577883448 799335593 799335593 703087097 258507485 597361268 597361268 621478008 621478008 536956953 176768516 236825616 236825616 168370052 146117780 172194192 172194192 148383108 148383108 283843072 283843072 425402928 425402928 411985604 411985604 182060752 182060752 180929748 134309908 235576656 460229832 491037538 491037538 772790578 1045933869 1045933869 475633829 838283970 838283970 610473265 422316080 616302399 974196288 974196288 539608258 673553622 673553622 581091854 713031765 713031765 874570503 874570503 847343620 847343620 751956449 942204319 942204319 463197556 975400032 975400032 890784364 890784364 740216365 591967440 932012602 932012602 110118928 247306516 684447237 684447237 740507852 740507852 679226209 679226209 418068864 942604642 942604642 366170533 897613975 897613975 962934112 962934112 655262668 655262668 214012456 164885220 205447176 205447176 103470256 103470256 84675656 84675656 75401480 75401480 901648779 901648779 340137992 340137992 292094440 542782784 640365849 640365849 609875393 580462161 580462161 634511072 634511072 68817233 571271408 571271408 566512785 626106888 823317027 823317027 1063396436 1063396436 367531519 290201696 203546892 203546892 178658788 436406406 436406406 234881052 234881052 109262878 493628586 493628586 231540868 488178850 488178850 39532176 39532176 18546864 0 394269032 394269032 279581698 193124358 436490964 452250582 452250582 306067904 306067904 452914824 452914824 403345448 271646754 618711978 618711978 377229210 377229210 20728792 33867792 397677890 397677890 494947136 881119822 881119822 299457119 336761218 445075544 445075544 202848780 144482536 89563696 89563696 186207380 186207380 38864552 71576720 114075864 146048704 149441348 608249541 608249541 542188161 358227968 807130894 807130894 1009110917 1009110917 917504740 917504740 433595781 755758888 755758888 579388497 702051376 702051376 255854204 116174504 116174504 91097256 22553600 94215202 353009450 353009450 88495202 347656706 362997314 362997314 357011426 303465922 303465922 192022448 377562114 377562114 193401680 215300660 236374044 236374044 161277792 229182740 238937624 238937624 104671488 104671488 26266880 54610864 62351904 62351904 43102928 9825104 53836512 53836512 52461760 52461760 55662216 128754624 128754624 99913216 99913216 645540481 645540481 619085833 782018652 801347180 801347180 624827904 252203264 717226197 717226197 702326549 597192273 536922273 537250064 560013841 592455856 592455856 58753152 46694736 111151272 111151272 27608016 94203624 94203624 34667336 128693816 128693816 567186737 662230949 662230949 417956112 168797477 379584536 665244001 1057018910 1057018910 829194514 829194514 854175953 854175953 388036566 334181920 568325539 568325539 355335560 537072433 537072433 341647029 1057173567 1057559743 1061159103 1061159103 640889616 908082568 908082568 844045331 889327972 1017119055 1017119055 333482660 333482660 137654418 301052066 932448477 932448477 602841266 813807691 852965491 852965491 708102562 581242948 415285564 980468297 980468297 1048582821 1048582821 644209336 644209336 601103874 868881651 868881651 327591847 710765724 710765724 321717512 172802210 427984260 427984260 519213780 519213780 418441032 470799426 470799426 440539158 440539158 384404128 28834656 277563400 277563400 275552544 347050152 347050152 285913120 354736234 354736234 336591882 132688690 132688690 60298240 60298240 615643657 615643657 610200201 175767769 176015581 786737405 786737405 207310332 672733780 672733780 579812433 483652698 516949518 1032156190 1032156190 1032112239 830785635 971838195 978425312 978425312 206444420 206444420 204609024 261755296 486170196 486170196 204788938 41605000 40997632 40997632 20584224 20514304 209192620 209192620 206046988 237020469 237020469 848839138 989995632 989995632 792728254 656089956 204072204 514934354 514934354 274333184 274333184 3925890 94626848 94626848 78255432 344597248 344597248 339243530 77104450 12420672 28386752 28386752 23504321 811749617 811749617 710808949 404361077 422453062 924375148 924375148 822165565 822165565 794312569 425685116 513279582 513279582 657913138 737218187 737218187 325107794 325107794 447895454 447895454 118145040 16828576 44040520 103883680 103883680 43032832 43032832 38062224 48384912 48384912 47321808 43125952 37886080 37886080 35786832 17766848 63767776 63767776 29895920 121006648 121006648 36650240 50109976 122588064 122588064 76903760 578463126 981099191 981099191 807759014 830245159 830245159 107496922 666506584 666506584 814110056 814110056 833027831 833027831 408283782 7466758 392599044 559993472 893567776 893567776 807281147 709838901 709838901 657143097 657143097 648385641 609209344 609209344 4716672 4581504 4581504 9328704 9328704 15298560 46227600 74540048 76843520 76843520 100820752 100820752 187958076 308376866 308376866 50930736 298893970 298893970 261837000 261837000 62389104 156152320 227698720 516288568 516288568 473972912 473972912 461381676 461381676 387615656 387615656 382866008 239077528 500696762 500696762 316795672 483405906 483405906 516907894 516907894 734765295 734765295 340601802 777200141 777200141 749732685 1021448193 1029000351 1029000351 1059412020 1059412020 587564256 664867452 979071008 980818839 980818839 976495120 194647668 194647668 168830032 144254532 853734754 853734754 684332229 774137954 928153816 928153816 383256282 383256282 365969567 1040295150 1040295150 679090053 776738188 776738188 545323972 1058540198 1058540198 751406908 751406908 371204152 672432946 672432946 574359215 997723001 997723001 140773540 702548205 702548205 343457922 336250900 604126466 604126466 499954988 499954988 438532379 825454413 825454413 643435259 541697091 639902522 639902522 404936164 921978577 921978577 289955530 472657610 472657610 954932232 954932232 1033958217 1033958217 802235117 772866259 755438604 403219458 571024401 571024401 223366257 819104751 819104751 587603383 847482946 847482946 134701456 1017830095 1017830095 646996160 203823372 203823372 684769301 735365877 735365877 654991392 788576441 788576441 783565322 783565322 817932620 843385088 843385088 388885818 147628542 400573352 400573352 967591962 967591962 957628558 957628558 585973136 576448985 576448985 588513504 588513504 360923378 496296100 496296100 764769671 764769671 425869678 874817389 874817389 497950604 371218420 409132174 409132174 391831052 391831052 390628922 328246402 120803570 375480496 375480496 372277354 356107354 317056984 111487320 99961672 591451453 775559088 775559088 556406049 622891428 622891428 10764868 403208682 615977336 615977336 798280662 798280662 640230681 530565481 470946318 561338883 897867555 897867555 408571599 236154486 968945242 968945242 596253939 982254627 982254627 671777798 311448118 151308324 299327691 885111522 885111522 747380736 747449421 905971306 905971306 1058576253 1058576253 220480551 681154281 681154281 571137440 936976426 936976426 926739659 611443593 811380546 811380546 478168380 297289020 502647296 502647296 1013373547 1013373547 995923935 720397061 720397061 1046626729 1046626729 868746745 868746745 793920513 793920513 617308560 617308560 269017170 269017170 221455096 794314283 794314283 1043071533 1043071533 948183123 916377144 378598440 860038330 860038330 633575571 878707754 878707754 428346176 428346176 138937256 138937256 96469224 143655080 143655080 91283456 91283456 90300840 89102632 67601640 67601640 99919296 99919296 75610976 75610976 491265653 920001243 920001243 823288492 823288492 615661220 894908266 894908266 650789786 859034145 1019286930 1019286930 1058938908 1058938908 954742219 954742219 725620878 923146299 923146299 585126228 560948621 560948621 334509422 699536128 699536128 696254565 1055269142 1055269142 748757325 748757325 745420011 745420011 922095343 922095343 891141258 891141258 692332743 128599192 726648841 1009298607 1046548154 1066864307 1066864307 1045729293 639011383 928256693 928256693 781822906 781822906 623717673 957225651 957225651 876495505 876495505 1003797748 1003797748 884166222 884166222 765594346 403972004 403972004 274991138 1063688201 1063688201 772163245 696354300 696354300 556286216 749725060 749725060 260333801 118803000 555518690 555518690 468465980 468465980 268570640 227880864 458500764 458500764 318251073 318251073 300491443 697511762 831980690 831980690 491442341 1037853858 1037853858 898095461 576716992 680199172 680199172 558369956 558369956 110905156 103074072 171135640 171135640 168968704 239520276 456165948 456165948 314526192 314526192 343214794 528562462 528562462 444472598 211424180 211424180 233046726 280107374 280107374 228589568 51644456 205971288 205971288 255796480 255796480 241833372 79298624 26743656 223969956 223969956 65200888 249667904 249667904 505339422 505339422 478544208 478544208 445893568 397834754 367662570 331022848 331022848 323351344 323351344 336857610 343419382 343419382 201172092 196060742 366566894 366566894 382237664 382237664 471309184 471309184 406274574 406274574 419481418 419481418 475612360 519422720 519422720 516237534 533713126 533713126 447358192 447358192 39397008 39397008 21364752 62527920 62527920 55248112 187040056 240617868 240617868 95730084 211838048 412025928 444933158 444933158 386140828 519275452 519275452 484577742 292684396 357104316 357104316 360231008 921501131 921501131 841406274 605487115 820831851 820831851 244344292 315690648 442379846 846797962 943655016 943655016 138288900 138288900 136851968 151858440 809681442 809681442 286314627 86573384 86573384 558301978 593296039 593296039 601434355 730133205 730133205 680703520 765249712 765249712 644083745 617722081 642256248 642256248 41946128 53099408 58530608 58530608 55033872 52564272 52564272 5143856 38080512 175754128 175754128 186808364 235003932 235003932 85509912 85509912 305746978 305746978 343503064 343503064 603980032 958531516 958531516 681735852 903046790 903046790 728315652 709955200 605818377 764497044 764497044 757179245 757179245 252806197 252806197 255681236 745803193 745803193 711018677 711018677 766910008 766910008 596317297 596317297 572784388 572784388 146764049 240652444 240652444 236332636 318511038 318511038 202381256 340203278 425402928 483920914 483920914 411985604 474691284 474691284 26294008 15315004 311128426 460229832 491037538 491037538 772790578 1045933869 1045933869 336894179 443196340 443196340 453254940 453254940 161120090 161120090 44903760 305930818 673553622 673553622 581091854 713031765 713031765 293691315 402653190 847343620 847343620 751956449 751956449 463197556 463197556 975400032 975400032 940051008 72679975 48564912 564530728 564530728 132815801 110118928 110118928 423126272 423126272 761914031 765153709 765153709 903880840 903880840 688655397 688655397 806885686 806885686 768342792 847124674 847124674 573913600 735323268 735323268 575898148 575898148 205447176 150317233 103470256 84675656 372413498 372413498 320889256 320889256 339870594 340138808 340138808 305408904 87106344 62914800 327300160 327300160 281617602 554301016 634511072 634511072 68817233 122941160 419566340 419566340 469948746 469948746 431237862 707124478 707124478 290201696 290201696 203546892 203546892 161235012 436406406 436406406 402864404 338045190 167977552 493628586 493628586 231540868 488178850 488178850 39532176 52316944 52316944 50331696 394269032 394269032 301990662 446447684 447248640 447248640 329525908 456264982 456264982 151158784 197353680 197353680 478253972 1037093004 1037093004 612850260 377229210 540334858 807723811 807723811 397677890 312098938 640456138 640456138 880788240 880788240 210344224 211986852 219542132 219542132 102680352 51940912 0 256500848 263014008 263014008 493178286 502303158 502303158 608249541 709486544 717972697 717972697 727532692 727532692 723426153 757071405 757071405 136446192 136446192 755758888 755758888 579388497 702051376 702051376 255854204 220985856 206360168 206360168 44797936 120632168 353009450 353009450 88495202 347656706 362997314 362997314 357011426 303465922 397029442 397029442 377562114 377562114 2097408 10489952 19009824 118513664 118612536 118612536 78991360 17250336 17250336 164399568 219897464 909316098 909316098 960375618 960375618 981251383 981251383 1027711335 1027711335 673929933 610502081 610502081 443704863 99913216 583937888 645540481 841989333 841989333 782018652 782018652 624827904 624827904 812787602 812787602 710782337 815293267 815293267 180068725 21407460 33587456 44295632 53158624 53158624 29267808 111151272 111151272 34002960 94203624 94203624 93551112 128693816 128693816 119483472 44306192 379644356 379644356 183337108 183337108 138547332 354610534 479013966 479013966 478740524 508241278 508241278 388036566 359276874 359276874 317547250 436511062 438305090 438305090 5097176 110439000 446368912 507646110 507646110 345053828 908082568 908082568 844045331 889327972 1017119055 1017119055 333482660 498402192 885722018 885722018 301052066 448369048 448369048 813807691 852965491 852965491 1011292218 1011292218 415285564 980468297 980468297 1048582821 1048582821 773449245 773449245 421331208 421331208 122604232 181444336 261621372 265340948 508462496 508462496 427984260 427984260 519213780 519213780 474163718 471273108 471273108 440539158 440539158 384404128 38242304 277563400 277563400 421560516 421560516 347050152 419830124 419830124 354736234 446858540 446858540 132688690 60298240 166450500 166450500 47570512 604228608 604978185 604978185 543825442 781094378 781094378 334067046 527724970 527724970 880049418 946280584 1032156190 1032156190 1032112239 830785635 971838195 978425312 978425312 694220606 729465640 729465640 726163478 1062216724 1062216724 282285800 356794506 356794506 86186594 22155936 90513704 90513704 67149864 241177864 359268670 359268670 848839138 848839138 792728254 792728254 656089956 204072204 621666657 621666657 110442036 743101848 743101848 613552713 543034568 78255432 17428840 3794688 16794656 16794656 13149376 28386752 28386752 23504321 811749617 811749617 710808949 404361077 422453062 924375148 998411524 998440241 998440241 948420630 425685116 852698238 852698238 777070351 737218187 737218187 444781324 573793030 774037544 774037544 118145040 83022792 83022792 103883680 103883680 29307664 67514432 67514432 109649104 109649104 47321808 43125952 39191040 36704272 51249936 51249936 63767776 63767776 63663792 121006648 121006648 41654784 50109976 122588064 122588064 76903760 630883572 1071600277 1071600277 635560140 635560140 380867400 380867400 124830648 924140880 924140880 814110056 833027831 833027831 408283782 530138825 530138825 450261013 893567776 893567776 807281147 709838901 709838901 657143097 657143097 648385641 628505259 628505259 403031370 403031370 749382720 749382720 672616448 335741704 15298560 6882624 921600 921600 18747664 18747664 17739664 308376866 308376866 50930736 298893970 298893970 83951616 83959848 224057826 417234734 417234734 358855954 471155882 473972912 473972912 461381676 461381676 387615656 387615656 382866008 239077528 500696762 500696762 341109384 483405906 483405906 174248340 402982128 402982128 232185260 232185260 226197808 220446760 220446760 979380628 1029000351 1029000351 186190540 186190540 150022384 102368536 322471972 322471972 976495120 976495120 503304360 503304360 744373641 744373641 976830865 976830865 684332229 774137954 814896985 814896985 383256282 383256282 528304077 1040295150 1040295150 587837484 587837484 230900448 633074576 1058540198 1058540198 642518169 432932907 471729385 471729385 365709054 840511405 997723001 997723001 891948531 464901671 304331610 336250900 336250900 604126466 604126466 1073160511 1073160511 557202007 557202007 302073936 435480718 435480718 231866298 404936164 772502838 772502838 736880405 855266128 855266128 369853155 904934506 904934506 1029556312 1029556312 431755110 431755110 403219458 642108045 738461696 776006177 776006177 819104751 819104751 587603383 847482946 847482946 596010272 1017830095 1017830095 646996160 202570252 310210703 684769301 735365877 735365877 249961206 249961206 1038460085 1038460085 907069009 964446521 964446521 843385088 1021363311 1021363311 964215258 704644040 682360860 682360860 673710558 673710558 585973136 576448985 592321824 592321824 588513504 264616104 264616104 227615264 764769671 764769671 425869678 874817389 874817389 295984648 295984648 409132174 409132174 226470732 226470732 373754200 373754200 334623394 375480496 375480496 356107354 356107354 317056984 256645644 256645644 591451453 775559088 775559088 556406049 622891428 622891428 117474072 132442440 615977336 615977336 784774221 784774221 573197096 538741305 538741305 561338883 897867555 897867555 408571599 236154486 968945242 968945242 596253939 982254627 982254627 1071793597 1071793597 661049843 962842876 962842876 885111522 1039412929 1039412929 747449421 638586387 1058576253 1058576253 954869220 797606909 681154281 571025369 936976426 936976426 926739659 611443593 811380546 811380546 478168380 277922370 306767934 306767934 412181292 646917456 646917456 849492241 849492241 894227547 894227547 782238045 782238045 793920513 793920513 617308560 617308560 269017170 369302280 377886810 794314283 794314283 713484882 239001372 916377144 1025655188 1025655188 927125691 895918251 633575571 878707754 878707754 428346176 428346176 533805202 533805202 486605574 356623144 356623144 155805184 151521056 90300840 76628776 7340928 31836928 99919296 99919296 429094690 429094690 491265653 920001243 920001243 823288492 823288492 754974765 476647680 476647680 741769296 741769296 1019286930 1019286930 1058938908 1058938908 775948990 151044188 725620878 923146299 923146299 999875011 999875011 334509422 334509422 529673725 529673725 264583446 1055269142 1055269142 876683857 748757325 592450091 592450091 493097471 493097471 342072234 342072234 167482434 77141848 726648841 862165011 1046548154 1046548154 655618617 844288659 844288659 513414750 590633646 936772437 1033821807 1033821807 957225651 957225651 876495505 876495505 1003797748 1003797748 877061516 877061516 765594346 359795236 291508388 291508388 1063688201 1063688201 772163245 696354300 696354300 550426832 749725060 749725060 273712566 815399881 815399881 742661580 742661580 588515558 379592836 511057038 525810354 525810354 318251073 318251073 300491443 697511762 831980690 831980690 491442341 1037853858 1037853858 898095461 576716992 680199172 680199172 706687617 706687617 785130136 785130136 212471260 211441628 168968704 168968704 81926728 271848674 299785704 299785704 343214794 528562462 528562462 371136624 356529552 356529552 321856170 395054292 457056054 457056054 295027996 205971288 205971288 255796480 255796480 241833372 226574908 232932428 232932428 211907328 17850496 19399968 52169984 53478192 53478192 36505024 380249320 380249320 332935122 599075617 599075617 836671266 836671266 323351344 379765738 379765738 561928642 853167585 940344047 940344047 690752558 382237664 382237664 295419564 290714274 54527136 33867792 33867792 299893008 331350258 519422720 519422720 516237534 84238846 181693076 257949940 257949940 105906840 248648016 248648016 191173120 62527920 55248112 187040056 240617868 240617868 59892336 211838048 285934592 444933158 475478056 475478056 519275452 519275452 484577742 292684396 179945684 179945684 535143646 535143646 332534514 317963554 281895536 324136032 324136032 365225474 381731034 381731034 345156306 277297218 472654630 472654630 489100652 489100652 136851968 864852528 864852528 570741954 408125828 408125828 773939611 849533208 849533208 601434355 730133205 730133205 563833883 765249712 765249712 644083745 617722081 642256248 642256248 179473292 179473292 139883528 79920768 55033872 66134224 66134224 18292864 21219616 21219616 16925056 17829888 17829888 16961568 10487808 118507856 118507856 119548536 119548536 95319936 279549092 279549092 143142822 289068620 289068620 728315652 728315652 605818377 763167653 763167653 629419821 755239909 755239909 252806197 258744944 258744944 745803193 745803193 711018677 711018677 766910008 766910008 596317297 596317297 983251010 983251010 436281366 436281366 325507506 436264272 436264272 318511038 411974766 411974766 461910648 483920914 483920914 365901026 474691284 474691284 26294008 84578424 311128426 311128426 434452460 434452460 932909504 932909504 592805635 647731212 860745275 860745275 453254940 453254940 402671955 973111617 973111617 332683855 662027833 662027833 1035606144 1035606144 779538643 963116834 963116834 813984256 813984256 880856642 880856642 802321194 262688333 752820542 940051008 940051008 760101442 760101442 869605082 869605082 796492478 796492478 615859717 547369505 547369505 761914031 765153709 765153709 1002728569 1002728569 688655397 688655397 806885686 806885686 967174503 967174503 847124674 573913600 735323268 735323268 575898148 575898148 150317233 150317233 4953088 21767168 372413498 372413498 320889256 852831379 852831379 340138808 340138808 374473416 894574602 894574602 378085777 573694737 573694737 554301016 828846394 828846394 316611026 316611026 348474176 401814274 953234136 953234136 536739009 536739009 726205204 820793722 820793722 42637352 169147904 169147904 168506388 402864404 402864404 338045190 167977552 167977552 220869924 527746238 527746238 210849616 122514488 122514488 364829544 364829544 335692850 379240810 379240810 446447684 447248640 447248640 329525908 456264982 456264982 445511296 445511296 197353680 478253972 1037093004 1037093004 612850260 330766818 867703058 867703058 840969011 353512273 351340896 640456138 640456138 880788240 880788240 496365760 496365760 219542132 219542132 102680352 155828400 155828400 256500848 263014008 263014008 493178286 502303158 502303158 468714486 709486544 717972697 717972697 529088894 529088894 687881520 687881520 554511393 940326370 940326370 151293973 553825424 553825424 139154489 104438916 220985856 220985856 206360168 206360168 44797936 120632168 300066600 300066600 86573640 285511520 285511520 28592162 4326528 294530096 397029442 397029442 44952668 212346188 212346188 75416044 233242528 233242528 246414684 259132560 259132560 115586096 105461680 563977313 608595496 909316098 909316098 960375618 960375618 981251383 981251383 1027711335 1027711335 673929933 610502081 610502081 583567256 583567256 583937888 875804346 875804346 841989333 413332050 967938510 967938510 494562045 812787602 812787602 710782337 815293267 815293267 602964965 22675457 26511552 294070272 294070272 277459072 122418360 293916736 374205594 374205594 372055890 341050650 341050650 338722650 384862841 587663649 587663649 556532025 379644356 183337108 183337108 822083619 822658048 822658048 822345728 822345728 422311488 422311488 364438788 359276874 359276874 70801838 436511062 512871324 512871324 1622943 1047004575 1047004575 1047004575 1047004575 978841352 620237064 620237064 552077257 755761308 755761308 667684089 84487833 498402192 1047611513 1047611513 974391831 974391831 708197084 708197084 181877460 387976728 1011292218 1011292218 713168105 751023470 751023470 302691348 542155932 773449245 773449245 138790457 541452417 577633921 577633921 576439552 16805248 508462496 508462496 52996254 503521152 511520670 511520670 474163718 471273108 471273108 307223446 215678702 215678702 60578592 351016922 351016922 421560516 421560516 17766432 419830124 419830124 341884266 446858540 446858540 191501748 251844148 251844148 538988189 538988189 604228608 604978185 604978185 543825442 781094378 781094378 282561868 527724970 619238686 880049418 946280584 1055183646 1055183646 137056092 787236920 787236920 721839269 775227057 775227057 729465640 729465640 726163478 1062216724 1062216724 282285800 356794506 356794506 86186594 22155936 90513704 90513704 300974658 300974658 359268670 490918062 490918062 239206672 207753612 687875850 687875850 530583886 621666657 621666657 394330686 743101848 743101848 646179432 1048174493 1048174493 772427799 772427799 600008626 244851478 191152800 191152800 39093952 56542288 56542288 141244548 141244548 302556448 302556448 294391298 998411524 998440241 998440241 948420630 402653190 1027674312 1027674312 964898919 610006665 610006665 444781324 573793030 774037544 774037544 371290801 835789539 835789539 824222275 872538523 872538523 268476425 67514432 109649104 109649104 610571794 645542800 645542800 840045090 840045090 710448928 457916600 85856296 67947528 137264840 150810564 150810564 100547132 238609664 255853192 255853192 630883572 1071600277 1071600277 635560140 635560140 380867400 380867400 124830648 924140880 924140880 346869066 587599168 598349169 598349169 754203706 1066789061 1066789061 450261013 430546554 430546554 421650726 415255558 612922198 612922198 72352392 940603072 940603072 403031370 403031370 749382720 749382720 672616448 335741704 11149696 11121088 13367296 15778752 15778752 7249472 73728 84410376 84410376 39564816 89195176 156780232 156780232 83959848 224057826 417234734 417234734 358855954 471155882 471155882 324165404 300602402 278941952 277008450 160696932 160696932 155527332 190128664 190128664 441459348 441459348 72425502 75759976 402982128 402982128 126626214 11146560 31930848 240055536 240055536 841682372 929776951 929776951 768643582 768643582 584887402 322603784 322603784 322471972 656451936 656451936 616114921 503304360 1039747816 1039747816 983095150 976830865 810210435 105856915 105856915 650823312 901652331 901652331 528304077 914953920 914953920 730226838 728050101 728050101 633074576 633074576 621986361 621986361 543320809 471729385 471729385 365709054 840511405 840511405 891948531 891948531 464901671 304331610 853059352 853059352 605881090 605881090 1073160511 1073160511 557202007 557202007 405382990 435480718 435480718 520947054 520947054 772502838 772502838 736880405 855266128 855266128 987788927 987788927 955769217 894292973 445909572 462686838 462686838 461963314 642108045 738461696 776006177 776006177 841913298 841913298 554334613 554334613 596010272 596010272 556436661 118193536 1004812140 1004812140 928853691 743573580 743573580 743838701 743838701 249961206 1038460085 1038460085 907069009 964446521 964446521 734791498 1021363311 1021363311 964215258 704644040 682360860 682360860 568623628 568623628 222958764 222958764 592321824 592321824 63968264 207229576 207229576 79696452 215311048 475263914 475263914 429376770 428731468 295984648 420702084 489313004 489313004 83701704 150430316 373754200 373754200 334623394 334623394 208716288 208716288 199527948 199527948 256645644 256645644 237784716 237784716 108566144 137134352 168349460 171754516 171754516 263782540 263782540 164700900 72885356 573197096 573197096 538741305 538741305 122015264 122015264 87307384 98601896 175112228 175112228 441038128 441038128 405008646 404933038 1071793597 1071793597 661049843 962842876 962842876 620823676 1039412929 1039412929 950339878 950339878 571133200 954869220 954869220 797606909 448740473 352693600 398463450 398463450 333233282 15478722 346401244 444612616 444612616 277922370 336932384 336932384 950950957 950950957 788585538 849492241 849492241 120073531 740951320 782238045 782238045 243454044 250646868 250646868 252830848 252830848 369302280 377886810 446065246 713484882 713484882 171569685 136343572 1025655188 1025655188 927125691 895918251 275609834 340397924 345922874 405641256 405641256 533805202 533805202 486605574 356623144 356623144 205217794 390112186 390112186 310928514 285860898 285860898 94750948 227158850 429094690 471424422 471424422 442156684 90577320 678429608 754974765 754974765 462078314 462078314 741769296 741769296 338494994 666123192 666123192 285738235 614065005 842597679 842597679 545834049 592708194 999875011 999875011 247788743 289929378 420315662 742606582 847648851 847648851 1027807312 1027807312 655833657 484522372 568340850 568340850 493097471 609831005 774862493 774862493 698636208 923306743 923306743 766418301 782287318 782287318 860246438 860246438 780962908 780962908 936772437 1033821807 1033821807 172001019 172304532 189537924 189537924 233232604 233232604 362281126 362281126 210551576 138809760 475716784 475716784 745580728 745580728 693084837 623588533 138485892 757793444 757793444 742004493 273712566 815399881 815399881 742661580 742661580 588515558 379592836 511057038 525810354 525810354 271588064 271588064 45232272 19140800 30544608 320611330 320611330 277849618 608227328 713135903 1027548527 1027548527 502021551 706687617 706687617 785130136 785130136 212471260 211441628 123740192 46664112 46664112 364131904 364131904 299785704 345551184 370879322 373040630 457228470 457228470 492646062 492646062 395054292 457056054 457056054 295027996 127540244 171712404 171712404 123979064 175800720 226574908 232932428 232932428 211907328 83721704 83721704 67582024 425734278 524288442 524288442 483404968 483404968 332935122 599075617 599075617 1057490724 1057490724 465832182 465832182 379765738 561928642 853167585 940344047 940344047 690752558 224264152 295419564 422693606 422693606 472952358 498986982 498986982 466372520 404063658 338553704 479013966 479013966 320814642 326602386 419707700 419707700 273140674 414582720 414582720 198873920 58794880 404959392 421995418 421995418 503129848 503129848 354815972 354815972 354366592 475478056 475478056 472444568 504750500 504750500 314387130 488173278 488173278 535143646 535143646 394817472 347210992 281895536 324136032 324136032 365225474 381731034 477045952 477045952 414452550 472654630 472654630 489100652 489100652 127277688 864852528 866175873 866175873 455533462 785745614 785745614 962601937 962601937 570693426 738591238 873863691 873863691 403707917 168568409 545296104 545296104 124778800 154541284 184103824 184103824 189086512 189086512 41530656 167196868 167196868 197228916 197228916 142035648 148099540 148099540 109365336 109365336 109379640 118507856 118507856 119548536 119548536 95319936 555845640 674413978 674413978 673231174 681687300 987414612 987414612 641802393 763167653 763167653 629419821 755239909 755239909 694685020 694685020 265642848 776037412 776037412 677767557 584399112 584399112 277860635 596041770 596041770 983251010 983251010 679741509 679741509 707789589 714475134 714475134 524164926 411974766 411974766 461910648 461910648 121770168 354804000 354804000 302804098 318816306 318816306 361896448 361896448 434452460 434452460 1046076988 1046076988 949669553 949669553 886355967 982457948 997205125 1006768143 1006768143 973111617 973111617 456196145 662027833 662027833 1035606144 1035606144 779538643 963116834 963116834 813984256 813984256 880856642 880856642 802321194 262688333 752820542 752820542 406570163 760101442 760101442 869605082 869605082 796492478 796492478 615859717 547369505 547369505 383288224 1067646011 1067646011 1002728569 1002728569 465337883 503351900 503351900 937104870 967174503 967174503 826160226 477038758 152186952 139645024 491195938 491195938 94957164 333203642 333203642 84225544 118099296 120462648 389897648 852831379 960364544 960364544 834516820 834516820 894574602 894574602 378085777 573694737 573694737 697145024 828846394 828846394 629330025 629330025 530321078 530321078 953234136 953234136 536739009 536739009 726205204 820793722 820793722 77085664 169147904 169147904 168506388 34603536 201734144 201734144 235668524 235668524 220869924 527746238 527746238 210849616 122514488 122514488 364829544 364829544 335692850 486936904 486936904 462194066 462194066 438445346 310461794 173464212 114731084 445511296 498234760 498234760 314676192 404028130 404028130 546701456 599866561 867703058 867703058 840969011 353512273 351340896 351340896 223847196 255968556 371644698 496365760 496365760 176771100 224202528 224202528 155828400 155828400 251502976 251502976 58985056 58985056 347379808 388157754 388157754 778167000 778167000 759218349 759218349 372868614 454583762 454583762 393351990 940326370 940326370 523375075 553825424 573805484 793892884 793892884 238600320 238600320 39128880 39332784 39332784 75024104 300066600 300066600 30483690 285511520 360866816 360866816 340042082 189074694 271396098 271396098 516497414 516497414 212346188 122369208 233242528 233242528 246414684 259132560 259132560 574349072 1009789192 1009789192 608595496 608595496 857409315 857409315 771689352 338822381 353757738 353757738 416285382 472975428 472975428 874171511 874171511 583567256 814985507 875804346 875804346 673298531 413332050 967938510 967938510 494562045 129375096 197150452 558524336 682247152 682247152 602964965 55050240 51253424 294070272 294070272 277459072 122418360 293916736 374205594 374205594 372055890 341050650 341050650 338722650 384862841 587663649 587663649 556532025 250726364 250726364 753978060 822083619 822658048 822658048 822345728 822345728 153627618 25371424 25371424 22221440 29317312 132141852 268290072 512871324 512871324 1622943 1047004575 1047004575 1047004575 1047004575 978841352 974006981 685054999 552077257 755761308 755761308 667684089 893481437 1072058604 1072058604 1047611513 974391831 974391831 708197084 708197084 181877460 387976728 647118236 647118236 713168105 751023470 751023470 915059914 915059914 875214027 875214027 841487265 566986740 577633921 577633921 576439552 263438412 242423588 446582454 446582454 503521152 511520670 511520670 329507616 379902024 379902024 312789330 215678702 215678702 60578592 351016922 351016922 304664970 337641738 337641738 319213970 319213970 336152580 346043720 346043720 191501748 251844148 251844148 538988189 647940681 647940681 204343516 673054161 801410080 801410080 476502414 518523132 518523132 619238686 619238686 179150145 1055183646 1055183646 137056092 787236920 787236920 721839269 775227057 775227057 220462928 950393192 950393192 203638864 203638864 168401864 98109056 82596384 21045408 21045408 14747840 14747840 300974658 300974658 192465198 823842339 823842339 416810694 416810694 687875850 687875850 530583886 530583886 470186054 470186054 564022841 681365624 681365624 1048174493 1048174493 772427799 772427799 600008626 244851478 191152800 191152800 39093952 56542288 56542288 141244548 141244548 302556448 302556448 294391298 892542292 892542292 772615197 474355854 706019952 1027674312 1027674312 964898919 677066373 677066373 713706357 713706357 53778021 101815120 371290801 835789539 835789539 824222275 872538523 872538523 268476425 176893976 176893976 168706128 610571794 645542800 645542800 840045090 840045090 710448928 457916600 278666310 278666310 137264840 534609142 534609142 929122118 1033209472 1033209472 911343408 911343408 646186930 924090065 935284666 935284666 924064918 923054111 973600791 973600791 809845816 696298592 672001029 598349169 598349169 754203706 1066789061 1066789061 399940860 399940860 353207530 953223680 953223680 880891732 880891732 740372106 940603072 940603072 7943815 4009728 30283424 30283424 27554592 552955812 552955812 719047988 719047988 683285765 728704640 728704640 736830881 736830881 730836913 677991024 592539856 576317073 555414656 156189244 85410728 955851395 955851395 942171423 973465623 973465623 557946928 942560798 942560798 1003258808 1003258808 556815694 223874852 383529698 383529698 441459348 441459348 358680842 196061674 192004802 447150594 457720658 484710248 484710248 240055536 823866920 823866920 143131716 143131716 768643582 768643582 584887402 322603784 322603784 286924288 656451936 656451936 616114921 478224462 1039747816 1039747816 983095150 905619209 810210435 105856915 105856915 650823312 901652331 901652331 473831787 914953920 914953920 730226838 728050101 728050101 583511153 573156873 621986361 621986361 543320809 188495477 6099072 717885816 762788781 762788781 266810761 617737905 617737905 593355465 853059352 853059352 605881090 605881090 600884379 585240104 25442912 283181744 405382990 405382990 345090646 520947054 520947054 657059888 657059888 1046004762 1046004762 830514950 987788927 987788927 955769217 877907405 445909572 462686838 462686838 461963314 320679474 839919644 1008019983 1011534965 1011534965 841913298 957312204 957312204 901959915 508159134 508159134 118193536 1004812140 1004812140 928853691 743573580 743573580 743838701 743838701 505993668 505993668 212132758 291087526 291087526 326730802 326730802 482513880 561912284 766805487 766805487 596265530 983568798 983568798 568623628 726937449 726937449 595206069 319692754 63968264 207229576 228234860 228234860 134382336 475263914 475263914 490410220 490410220 403538820 420702084 518228630 518228630 406847622 440891616 535843302 535843302 243269724 243269724 208716288 208716288 199527948 199527948 219679756 219679756 202114604 17957520 0 137134352 168349460 171754516 171754516 263782540 263782540 164700900 156637860 262839012 262839012 254465340 90091160 122015264 122015264 87307384 98601896 98601896 55449016 441038128 441038128 405008646 404933038 404933038 354867498 157696382 134545720 103296004 174792784 174792784 463805651 1004930372 1004930372 571133200 571133200 48568400 48662912 50139648 548244592 552520929 552520929 554560547 898493475 898493475 444612616 1048653653 1048653653 1026106671 913057844 950950957 992678069 992678069 245379482 786551924 786551924 713589077 713589077 689963301 243454044 250646868 250646868 252830848 359875720 359875720 203035260 705950299 705950299 478306908 480328719 480328719 481678094 481678094 413477190 556579904 707775859 1034148970 1034148970 824535106 824535106 161417408 149622836 38474420 18384000 136037264 205217794 390112186 390112186 310928514 285860898 285860898 269549600 227158850 340663438 471424422 471424422 429975360 233968012 832758180 832758180 417398859 738762853 738762853 757470243 957618990 957618990 949427233 666123192 771766524 771766524 842597679 842597679 545834049 545834049 328899970 328899970 293379387 623995242 623995242 742606582 847648851 998707307 1027807312 1027807312 655833657 991041646 991041646 568340850 555569744 609831005 774862493 774862493 698636208 923306743 923306743 766418301 782287318 782287318 860246438 860246438 780962908 780962908 721460923 742990989 789259530 789259530 931847339 931847339 829088177 544917754 544917754 609531146 617429018 617429018 107354520 475716784 475716784 745580728 745580728 693084837 623588533 138485892 757793444 757793444 742004493 644425113 644425113 414917221 485167206 526391210 526391210 347608732 307765968 307765968 280438224 271588064 271588064 54865729 699934897 835393667 835393667 696904757 986126881 986126881 713135903 1027548527 1027548527 502021551 344429000 212734424 170540424 74388756 230498384 230498384 123740192 46664112 335844256 364131904 364131904 88112776 345551184 370879322 373040630 457228470 457228470 492646062 492646062 147326916 147326916 354405922 354405922 134554216 72092216 374017032 374017032 268435456 154190628 154190628 145294176 145294176 83721704 83721704 67582024 425734278 524288442 524288442 483404968 483404968 301051188 106637130 106637130 1057490724 1057490724 465832182 465832182 298585314 298585314 533668912 533668912 427896014 708854281 708854281 693632648 448404460 448404460 472952358 498986982 498986982 466372520 404063658 338553704 479013966 479013966 320814642 326602386 419707700 419707700 273140674 414582720 414582720 285686144 436575090 436575090 421995418 421995418 503129848 503129848 354815972 354815972 329517632 160690788 357676128 491332782 504750500 504750500 314387130 488173278 488173278 376228616 394817472 394817472 387003392 73952136 382208520 382208520 147330764 310513746 477045952 477045952 414452550 271592746 94970350 80332056 127006800 127277688 904200850 904200850 866175873 455533462 785745614 785745614 962601937 962601937 599531113 805315322 873863691 873863691 403707917 171915378 670339942 670339942 291604260 446260982 446260982 398756584 189086512 189086512 164827344 167196868 167196868 197228916 197228916 160316592 195874164 195874164 195530580 218517564 254849104 254849104 120249096 120249096 118223928 118223928 555845640 674413978 674413978 673231174 681687300 987414612 987414612 641802393 666117036 666117036 538193408 205521421 194037189 694685020 694685020 785770713 785770713 776037412 677767557 633668809 90876312 597709153 597709153 589745451 296581481 539367684 679741509 679741509 707789589 714475134 714475134 524164926 276825132 251868200 365633698 365633698 121770168 354804000 354804000 516729264 519623422 519623422 361896448 513433212 513433212 493786544 1046076988 1046076988 949669553 949669553 932917946 982457948 997205125 1006768143 1006768143 823007894 851966163 851966163 583891704 528911560 528911560 253624618 525943822 525943822 337100554 430025252 430025252 280283970 502211706 502211706 453193782 303051300 127298056 127298056 130756168 130756168 160791512 683440140 711766200 711766200 607124873 340276558 533996048 533996048 1067646011 1067646011 999391579 999391579 771785996 771785996 503351900 937104870 937104870 826160226 826160226 477038758 159282016 217518080 491195938 491195938 155053860 333203642 333203642 84225544 223404096 226944488 389897648 389897648 960364544 960364544 834516820 834516820 1026448151 1026448151 275344130 438879510 438879510 697145024 697145024 658795203 629330025 629330025 530321078 530321078 394522754 320635684 424414596 424414596 451201494 451201494 377299014 237013996 414201394 414201394 177634692 406435344 406435344 438081622 438081622 235668524 145351996 103160088 103550232 103550232 51060232 29306464 48882768 48882768 137922308 486936904 486936904 462194066 462194066 272629890 193348194 173464212 281563812 475694826 498234760 498234760 243524458 156389764 304580796 546701456 599866561 599866561 118164480 706031112 706031112 688864293 68054533 101111832 101111832 67947376 60035424 60035424 29229168 224202528 224202528 55173868 35916048 251502976 251502976 254959242 492961974 525601680 525601680 388157754 778167000 778167000 921338591 921338591 416826907 219678252 252318208 252318208 312668183 523375075 523375075 254019900 573805484 793892884 793892884 238600320 238600320 75944504 75944504 64177088 64177088 96174498 96174498 86689032 86689032 360866816 360866816 340042082 285945968 315571410 315571410 516497414 516497414 72487560 122369208 122369208 55062536 40501504 220866360 274399582 574349072 1009789192 1009789192 433678594 492196414 492196414 771689352 771689352 338822381 353757738 353757738 416285382 472975428 472975428 874171511 874171511 448094464 814985507 814985507 710356701 710356701 693374892 404622274 982750549 982750549 671739074 421995558 834778198 834778198 199771427 600987317 600987317 579339345 853619040 853619040 16813154 8572992 8572992 45038928 45038928 181402836 780573917 780573917 773864595 453594292 212980316 212980316 553657893 553657893 250726364 753978060 753978060 726980721 607140682 351077766 351077766 153627618 91913568 90566250 349725002 349725002 132141852 366748156 403442694 403442694 3146754 272107266 272107266 146014466 428085092 1057751850 1057751850 812267471 812267471 377104283 296358738 544522959 893481437 1072058604 1072058604 948168738 300774234 549980328 549980328 128713873 13108416 35653072 647118236 647118236 255135705 26479200 139275462 915059914 915059914 875214027 875214027 841487265 566986740 209863916 205717932 263438412 263438412 335593472 446582454 446582454 373115468 373115468 329507616 329507616 379902024 393931978 393931978 388120754 83286984 7390080 7390080 107087114 304664970 337641738 337641738 319213970 319213970 336152580 346043720 346043720 182485696 213875476 213875476 176721228 647940681 695548341 695548341 673054161 801410080 801410080 692720805 744787077 744787077 763682306 763682306 646632537 785173725 785173725 772401741 757984743 757984743 1037898890 1037898890 623327529 909641809 950393192 982658160 982658160 722276948 449538056 98109056 82596384 21045408 25537376 25537376 22506144 80091592 80091592 71309448 823842339 823842339 416810694 416810694 250245217 250245217 202116108 201852928 470186054 470186054 151107798 681365624 681365624 180998684 180998684 113332292 110835288 88577424 328502094 328502094 255065912 131243416 372238771 372238771 417908166 417908166 412156996 717234817 717234817 892542292 892542292 939659536 939659536 835739890 706019952 164881121 744006336 744006336 677066373 713706357 713706357 688150532 688150532 264434168 264434168 153350436 253407404 253407404 201421968 201421968 176893976 244631700 244631700 173310156 104858240 38933136 38933136 33687168 141202846 369147930 369147930 278666310 135401988 534609142 534609142 929122118 1033209472 1033209472 911343408 911343408 646186930 924090065 935284666 935284666 924064918 923054111 973600791 973600791 1051458643 1051458643 672001029 293749828 83886080 83886080 8661032 516518169 946599303 946599303 795604413 953223680 953223680 880891732 880891732 740372106 740372106 552852623 552852623 418034637 768294880 768294880 723517444 552955812 552955812 719047988 719047988 683285765 728704640 728704640 736830881 736830881 730836913 677991024 592539856 576317073 555414656 156189244 85410728 955851395 955851395 942171423 973465623 973465623 872861986 942560798 942560798 1003258808 1003258808 556815694 230896484 383529698 383529698 151918640 358680842 358680842 196061674 192004802 1026407299 1026407299 519062928 542519873 542519873 823866920 823866920 425798021 852336738 852336738 910189660 910189660 268585090 286924288 286924288 285476898 16914016 137955456 142421892 353039780 353039780 905619209 905619209 738471848 635531009 556140809 545454113 705264712 705264712 222000160 764112709 764112709 156153513 720057813 720057813 849781787 849995091 849995091 809814147 809814147 551415489 551415489 717885816 762788781 762788781 266810761 845457268 845457268 593355465 305554688 305554688 275024642 126271762 306876034 306876034 39968208 187119924 187119924 113852828 113852828 291087160 359239570 603997952 603997952 1046004762 1046004762 324617610 324617610 355264482 355264482 314314610 592591650 860098449 860098449 662637856 592426131 839919644 1008019983 1011534965 1011534965 887187634 957312204 957312204 901959915 788943129 606902313 539663660 604377180 629984361 629984361 140771712 88402369 941641317 1026330180 1026330180 817627978 212132758 291087526 291087526 326730802 326730802 150842880 209715276 766805487 766805487 596265530 983568798 983568798 70848801 726937449 726937449 595206069 96474928 43254944 43254944 228234860 228234860 134382336 228773960 228773960 490410220 490410220 403538820 403538820 518228630 949351105 1045893504 1045893504 997347763 997347763 713197147 872060471 912954651 912954651 841110785 946624034 946624034 219679756 202114604 151691140 104384184 104384184 122032664 134102200 134102200 40908672 117705240 156369568 238428220 262839012 262839012 254465340 239087344 239087344 166219108 166219108 66903644 362927856 362927856 309015954 117926234 432055404 432055404 627184041 943966679 943966679 363069717 680002821 852369478 852369478 720322005 1004930372 1004930372 969442336 1004616021 1004616021 446734560 446734560 548244592 552520929 552520929 554560547 898493475 898493475 279047854 1048653653 1048653653 1026106671 913057844 675283073 992678069 992678069 541867079 786551924 786551924 713589077 713589077 689963301 678167996 645400473 230438413 679229580 679229580 509435946 509435946 705950299 911804560 911804560 811773696 811773696 807452931 481678094 413477190 556579904 707775859 1034148970 1034148970 824535106 824535106 149622836 149622836 177014496 177014496 149297604 100664448 105383064 105383064 288903336 288903336 269549600 269549600 72130560 72215688 72215688 76140011 742542464 944898981 944898981 832758180 744689664 738762853 738762853 873215281 957618990 957618990 949427233 757146112 771766524 771766524 530265634 444593588 444593588 389805882 423885964 423885964 293379387 623995242 623995242 580127472 642134659 998707307 1037244446 1037244446 430969617 991041646 991041646 201639948 555569744 555569744 504629790 190976436 190976436 176161536 634821369 634821369 621218441 616884288 584601540 584601540 604069912 604069912 721460923 742990989 789259530 1061925518 1061925518 1011823711 829088177 544917754 544917754 609531146 617429018 617429018 130371384 107354520 141985921 687293349 687293349 27736416 202506512 570689553 570689553 642512521 642512521 644425113 644425113 414917221 485167206 485167206 234117912 426504544 426504544 265884864 265884864 265719664 265719664 54865729 699934897 835393667 835393667 696904757 986126881 986126881 303100659 1054462259 1054462259 855517777 855517777 644814557 673213392 673213392 230498384 230498384 103687696 129501208 335844256 335844256 358926594 363968906 364357696 364357696 287379540 463679862 463679862 378679714 154534468 418044812 418044812 354405922 354405922 134554216 72092216 374017032 374017032 268435456 154190628 154190628 193891280 193891280 124781496 231220920 231220920 209987268 120753484 85364408 165302788 426778800 462545526 570524631 570524631 410388780 946231766 946231766 884134731 460114002 925766107 925766107 958398490 958398490 789058941 708854281 693632648 448404460 448404460 382795882 382795882 302550864 302550864 110444616 110444616 109051992 109051992 33554504 16811038 520668222 520668222 377302938 475869074 475869074 285686144 436575090 436575090 453089968 453089968 313637164 313637164 210660974 329517632 329517632 160690788 357676128 491332782 491332782 419999886 422663498 499832046 499832046 247411352 363672092 387003392 387003392 78304584 652941549 652941549 497979772 749937623 749937623 980444838 980444838 867077703 867077703 614525333 566445616 724613192 904200850 904200850 386897697 285397026 324063250 810486976 810486976 621193826 823313211 823313211 805315322 842844336 854066643 854066643 836030256 670339942 291604260 446260982 446260982 398756584 76545096 164827344 230774600 230774600 198608996 198608996 172700052 160316592 195874164 195874164 195530580 218517564 254849104 254849104 388965130 388965130 380508026 396236634 396236634 386373412 423400080 508240432 525390638 525390638 343647396 155426960 141600724 538193408 545819348 704981013 781295893 783674205 783674205 785770713 785770713 212191908 633668809 633668809 90876312 862773498 862773498 653077977 308545938 815820802 815820802 650568259 286396962 286396962 310503898 310503898 276825132 276897864 419964356 419964356 312016992 451617670 451617670 516729264 519623422 519623422 220201220 513433212 513433212 493786544 659234918 797857320 924055672 924055672 932917946 932917946 924004923 913519515 913519515 583171472 851966163 1069555715 1069555715 706649936 808081204 808081204 525943822 525943822 342498488 430025252 529441392 529441392 509371708 521407038 521407038 353284276 245794912 245794912 130756168 130756168 158535366 683440140 837150754 837150754 410445605 86000960 533996048 697124404 697124404 599502185 820945796 820945796 832391522 832391522 839331916 839331916 89720799 218044132 230887436 342690056 342690056 217518080 217518080 155053860 155053860 21563428 76669512 349275016 860918666 860918666 632981448 632981448 1048068457 1048068457 803292825 857871704 1026448151 1026448151 919861376 919861376 598786929 555475697 620274400 620274400 48034240 65621200 79186064 98965992 98965992 829101298 948141494 948141494 855671961 855671961 616130992 237013996 516267778 516267778 453912216 487365730 495637614 495637614 438081622 474347696 474347696 254277948 302877156 302877156 246556132 140345092 501729868 501729868 494825670 488821834 488821834 295747950 122684088 333594940 462606966 462606966 414683398 475694826 475694826 243524458 243524458 156389764 304580796 808675368 808675368 118164480 118164480 706031112 706031112 688864293 68054533 101111832 101111832 67947376 53551920 51583840 83192336 161546472 180945860 198289620 198289620 185148468 189307188 254959242 492961974 525601680 525601680 799130555 849081939 922887707 922887707 1060241965 1060241965 956925486 807625490 882901811 882901811 825475859 720387005 499507597 266338812 266338812 56021740 26288832 51638832 75944504 75944504 64177088 64177088 57796512 32100320 86689032 86689032 28711552 18382048 17256576 428228804 428228804 315571410 111090832 144703812 144703812 53613360 127012324 174516284 174516284 239324568 274399582 457353352 457353352 813310224 813310224 492196414 1009992609 1009992609 801132650 992379527 992379527 819982933 965528679 965528679 471196462 280545101 471344387 741417741 741417741 676215776 877398853 877398853 693374892 404622274 982750549 982750549 671739074 421995558 834778198 834778198 716052484 716052484 600987317 579339345 853619040 853619040 319106114 302842924 518680172 518680172 511004174 475898050 780573917 780573917 773864595 453594292 150146240 150146240 553657893 1061161471 1061161471 926161810 273975624 607140682 607140682 351077766 351077766 91913568 91913568 90566250 349725002 349725002 273252864 366748156 403442694 403442694 555224660 708578596 708578596 730073205 730073205 1057751850 1057751850 883374379 812267471 377104283 296358738 544522959 659591885 724702005 724702005 570550867 519643404 549980328 1043181724 1043181724 997722039 997722039 1000158276 1000158276 1069194218 1069194218 439114756 738350468 738350468 688803904 556430561 52078592 57894672 57894672 15141424 60413248 60413248 335593472 335593472 284201064 352641332 352641332 222248748 222248748 120658964 393931978 393931978 517790332 517790332 334014016 334014016 486625662 486625662 95765894 34867728 406692696 512281822 512281822 222708816 246172232 246172232 213875476 213875476 261541568 261541568 695548341 695548341 184640868 496980753 575837518 692720805 956568608 956568608 763682306 763682306 743702585 785173725 1044914832 1044914832 1024403696 1024403696 1037898890 1037898890 631233872 909641809 909641809 982658160 982658160 722276948 449538056 14146216 12020768 5334976 25537376 25537376 22506144 80091592 269748738 269748738 242223418 320864662 320864662 554415962 554415962 400256574 400256574 205541404 230703840 230703840 83936457 29492412 750339857 750339857 358739808 1050700378 1050700378 906559072 714135572 328502094 808429684 973640815 973640815 372238771 417908166 417908166 412156996 717234817 1003101909 1003101909 689058432 939659536 939659536 835739890 574734567 164881121 744006336 744006336 607732257 607732257 592610733 688150532 688150532 476221873 1057013823 1057013823 1029902735 990768183 990768183 369159197 243892264 244631700 244631700 721184406 721184406 653905048 988395138 988395138 590571012 413664480 369147930 496016528 528930942 528930942 466512008 466512008 184162376 184162376 81133840 81133840 38965232 38965232 279268052 443671446 443870102 443870102 310794948 230491167 1051458643 1051458643 420140070 882901801 882901801 1056596215 1056596215 1002962647 946599303 946599303 795604413 795604413 382186030 382186030 993753480 993753480 833876488 833876488 552852623 418034637 768294880 768294880 723517444 571792000 571792000 684185764 684185764 139890913 169418848 169418848 673318496 673318496 555230789 550077984 550077984 193074404 193074404 63751376 151600772 151600772 40110480 386624712 386624712 872861986 872861986 576909796 803658237 803658237 39067628 39067628 382280208 433128666 433128666 260062966 248033784 248033784 157508744 391021300 1026407299 1026407299 519062928 542519873 542519873 650328272 650328272 425798021 852336738 852336738 910189660 910189660 946717580 946717580 322535742 640500992 640500992 634775171 287574306 613114219 613114219 135821312 622742152 635531009 635531009 556140809 545454113 705264712 705264712 613993095 613993095 805388954 805388954 720057813 755115092 849781787 849995091 849995091 809814147 809814147 551415489 551415489 540809988 540809988 143874853 191247829 845457268 845457268 292982912 305554688 305554688 293771776 291816576 26264160 39968208 296700226 297807346 297807346 294713970 296838554 296838554 184295158 768055126 768055126 322032758 276824130 486543488 490868910 490868910 411966534 411966534 592591650 860098449 860098449 662637856 592426131 592426131 352634922 826546371 887187634 887187634 825802083 716414477 788943129 788943129 883725866 883725866 874731552 629984361 629984361 671218402 691028993 941641317 1026330180 1026330180 1047553055 1047553055 543670223 645191581 710773564 710773564 153168656 209715276 209715276 171966228 426716470 426716470 457179318 464604176 464604176 263386832 261409404 252573552 86427696 109775720 109775720 94050408 93459048 12363904 98669440 98669440 287652802 336977410 336977410 867404306 949351105 1045893504 1045893504 997347763 997347763 713197147 872060471 912954651 912954651 841110785 946624034 946624034 203949324 151691140 151691140 104384184 219153449 739804501 739804501 723051893 768267501 768267501 804967640 804967640 732419305 732419305 689714069 241927476 239087344 278400036 521422634 521422634 518955094 362927856 309015954 117926234 432055404 432055404 627184041 943966679 943966679 363069717 680002821 852369478 852369478 720322005 690782705 541985988 969442336 1004616021 1004616021 577407265 602281841 602281841 576235424 574357361 45811680 33350529 7463808 505514014 505514014 327156272 504692758 504692758 722351416 722351416 722091246 541867079 360981509 118499354 272502514 272502514 678167996 678167996 645400473 230438413 679229580 679229580 509435946 509435946 320801306 911804560 911804560 811773696 811773696 807452931 142870596 142870596 142870596 142870596 8390660 397312 151527568 151527568 36049920 209986890 443156758 519513546 519513546 438975108 19656864 88605472 414156428 414156428 416981604 416981604 137619082 137619082 479178508 479178508 754011458 1019347437 1019347437 1036003822 1036003822 605101904 649018713 873215281 873215281 830997603 757146112 757146112 361443673 530265634 530265634 444593588 444593588 389805882 430711332 484017254 484017254 292041770 292041770 237443436 483769020 970222295 1037244446 1037244446 455353276 455353276 654348352 654348352 316838848 504629790 504629790 374117155 289439488 543211425 543211425 472590604 472590604 208465800 584601540 584601540 578406403 672262532 672262532 177426141 101193300 1061925518 1061925518 1011823711 477453889 20237312 33474208 76975840 76975840 130371384 130371384 106432152 101191216 687293349 687293349 135541216 313527956 570689553 570689553 642512521 642512521 406416899 226496228 226496228 165412972 234117912 234117912 426504544 426504544 318845760 318845760 302779410 296694128 4268160 4268160 268899426 268899426 60447376 306539522 872468020 872468020 1054462259 1054462259 855517777 855517777 750257997 715195857 673213392 236983000 753280097 753280097 129501208 581372921 581372921 358926594 363968906 364357696 364357696 287379540 463679862 463679862 421921936 421921936 418044812 435209190 435209190 499306734 499306734 77078702 68941320 125178160 125178160 131668264 227551072 227551072 212996940 124781496 231220920 231220920 209987268 120753484 85364408 340233470 434025988 462545526 570524631 570524631 1022494924 1022494924 946231766 884134731 501343242 925766107 925766107 958398490 958398490 789058941 110528086 358704264 361293602 362407530 362407530 59245680 59245680 71100480 142681348 236594392 236594392 155324580 73585032 199357740 520668222 520668222 377302938 475869074 475869074 321263922 321263922 52763554 453089968 453089968 403781438 313637164 403443828 403443828 436900390 436900390 222200884 159538444 369070934 369070934 533320306 533320306 499832046 204818068 312999130 312999130 128688176 78304584 652941549 652941549 497979772 749937623 749937623 980444838 980444838 867077703 867077703 614525333 566445616 724613192 724613192 842754600 842754600 357408434 296163890 810486976 810486976 654102489 823313211 823313211 740692021 842844336 854066643 854066643 836030256 664939021 664939021 554407896 214506386 383044314 437534924 437534924 242298072 242298072 198608996 198608996 50540592 78652136 78652136 39981456 35892528 35892528 42486640 128000530 388965130 388965130 380508026 396236634 396236634 336667904 354813754 508240432 525390638 525390638 343647396 141600724 141600724 35389888 545819348 704981013 781295893 783674205 783674205 96527912 651486680 765496624 765496624 716867029 786460112 862773498 862773498 653077977 308545938 815820802 815820802 650568259 74691291 652349738 652349738 310503898 110044384 276897864 419964356 419964356 312016992 451617670 451617670 272703618 423232564 423232564 176965078 227576524 227576524 211032684 445190152 497885794 497885794 375665728 951773320 951773320 776785053 442573206 442573206 323629540 323629540 1069555715 1069555715 706649936 808081204 808081204 448414618 320730906 342498488 342498488 529441392 529441392 509371708 521407038 521407038 353284276 245794912 245794912 118659400 77621784 158535366 296697186 837150754 837150754 785471006 697550449 771282480 967082431 1063805174 1063805174 820945796 820945796 832391522 832391522 881669414 881669414 345181297 832636708 832636708 421617058 421617058 221834188 403228482 403228482 363213538 363213538 279446850 349275016 860918666 860918666 632981448 632981448 1048068457 1048068457 803292825 857871704 872972841 872972841 919861376 919861376 598786929 555475697 416167248 352790920 399248634 399248634 366957490 435956962 435956962 829101298 948141494 948141494 855671961 855671961 616130992 152956452 516267778 516267778 453912216 487365730 495637614 495637614 389737028 474347696 474347696 254277948 302877156 302877156 246556132 140345092 501729868 501729868 494825670 488821834 488821834 295747950 249156500 333594940 462606966 462606966 414683398 403665456 205826124 74454740 270668544 304222482 743926419 808675368 808675368 608512658 342640851 420070788 420070788 719371576 946508181 1051721055 1051721055 971419152 159156928 159156928 124311976 161546472 180945860 243016328 243016328 204076192 204076192 118540832 118540832 480287638 480287638 799130555 849081939 922887707 922887707 1060241965 1060241965 956925486 807625490 882901811 882901811 825475859 720387005 499507597 266338812 266338812 241507188 194189656 147007744 7867168 7867168 12862656 29614144 32100320 32100320 15326368 28711552 28711552 18382048 17256576 428228804 541989454 970919306 970919306 610526112 610526112 171780759 1065363874 1065363874 840510239 867288329 867288329 747189333 1024794920 1024794920 924413374 924413374 1009992609 1009992609 994551840 992379527 992379527 819982933 965528679 965528679 897257734 897257734 471344387 741417741 741417741 486016974 877398853 877398853 672610821 239143946 237581790 279587094 279587094 715328516 720057813 720057813 716052484 716052484 543688065 61343088 61549632 319106114 319106114 302842924 518680172 518680172 511004174 475898050 369361348 369361348 317221648 317221648 599540480 599540480 596429937 1061161471 1061161471 926161810 136452108 619463178 619463178 501226828 501226828 73188614 13251712 17151016 348347552 348347552 273486498 286401218 288982946 402805700 555224660 708578596 708578596 730073205 730073205 268570626 883374379 883374379 505555020 505555020 422712102 156753730 211945048 211945048 570550867 570550867 519643404 86203737 1043181724 1043181724 997722039 997722039 1000158276 1000158276 1069194218 1069194218 439114756 738350468 738350468 687996960 587339797 34313328 34313328 4687360 4687360 60413248 60413248 67217792 284201064 284201064 278008386 154614552 222248748 411763504 465254262 465254262 362085242 517790332 517790332 334014016 334014016 486625662 486625662 95765894 414204160 414204160 512281822 512281822 329242396 329242396 246172232 122492136 122492136 261541568 261541568 624664928 624664928 262411037 1040849976 1040849976 934546266 956568608 956568608 554173081 743702585 743702585 667492929 1044914832 1044914832 1024403696 1024403696 1000679799 230728072 631233872 631233872 235996933 229113676 189016256 111464480 111464480 119872224 119872224 325624290 325624290 93257992 310129954 387525426 387525426 338791044 391406270 391406270 320864662 554415962 662125368 1068693627 1068693627 801784941 801784941 529307197 273340604 29492412 750339857 750339857 358739808 1050700378 1050700378 906559072 1069713132 1069713132 840381699 973640815 973640815 412872256 827360102 960308997 1031288849 1031288849 1003101909 1003101909 705176597 689058432 571548837 571548837 172057030 172057030 342183112 342183112 269352960 269352960 336513102 447213382 447213382 476221873 1057013823 1057013823 1029902735 990768183 999765607 999765607 402795101 425230448 596905232 853699971 853699971 852196003 988395138 988395138 590571012 413664480 157422880 496016528 528930942 528930942 336210032 1000342536 1000342536 994773512 834733360 834733360 578230352 686515653 695163616 695163616 134488068 310794948 310794948 169943316 169943316 134226256 361894211 882901801 882901801 1056596215 1056596215 1002962647 279744917 775529984 775529984 773898525 382186030 382186030 993753480 993753480 833876488 833876488 145884097 218313196 222954408 222954408 71843520 571792000 695662161 695662161 725706980 725706980 170746129 170746129 560497140 560497140 678129665 678129665 584193712 596256464 596256464 43389552 151600772 268435458 268435458 657728203 657728203 1023937611 1023937611 637960609 959765320 959765320 617892616 617892616 382280208 433128666 433128666 260062966 248033784 248033784 504079806 504079806 391021300 241246262 308349218 308349218 252055584 235145244 218103852 218103852 144720364 202378240 273450418 577818424 946717580 946717580 405357322 640500992 640500992 634775171 431837026 613114219 810810023 944564391 944564391 805738676 308022582 277257248 277257248 523142499 523142499 613993095 613993095 805388954 805388954 665522276 755115092 992399879 992399879 671406800 671406800 583850701 583850701 105436856 39767264 626117952 626117952 590088976 590088976 296788160 292982912 300198656 330775488 330775488 291816576 293736546 293736546 296700226 297807346 297807346 294713970 296838554 296838554 184295158 768055126 768055126 840610304 840610304 580047441 490868910 490868910 411966534 411966534 17774804 275387040 340335914 340335914 302979104 319366194 319366194 374485122 374485122 353895978 426165379 689617789 703284973 714246005 883725866 883725866 874731552 185148468 769995022 769995022 691028993 691028993 946510544 946510544 1047553055 1047553055 899811781 1015951724 1015951724 939595146 431989858 431989858 380430386 380430386 451076464 451076464 457179318 464604176 464604176 263386832 261409404 252573552 86427696 109775720 109775720 94050408 93459048 22167504 98669440 98669440 287652802 287652802 286142400 867404306 867404306 548778314 1042649552 1042649552 501533166 501533166 19058976 203461928 203461928 203949324 203949324 221277056 221277056 141896320 86640264 86640264 219153449 739804501 739804501 723051893 768267501 768267501 804967640 804967640 732419305 732419305 699552384 699552384 219768472 278400036 521422634 521422634 518955094 531629640 531629640 368966594 368966594 230737094 398511480 398511480 501294278 501294278 304193728 245410824 557891745 690782705 690782705 541985988 65711553 552476097 552476097 577407265 602281841 602281841 593235552 593235552 59510433 274779107 360744194 505514014 805306379 805306379 847577114 847577114 722351416 722351416 885654611 885654611 847774780 167772275 550114630 550114630 746459753 746459753 637147236 637147236 159781865 59245680 100796968 538994516 702730725 702730725 354941024 872633346 956823591 956823591 1050009826 1050009826 508626066 508626066 370025980 618868968 1024334548 1024334548 404228898 318410479 908382601 908382601 671272465 590777987 590777987 755025029 755025029 414156428 565527120 565527120 994748841 994748841 982861622 982861622 754011458 1019347437 1019347437 1036003822 1036003822 374671173 354336282 758547030 758547030 542179328 542179328 153355628 263853948 263853948 408464898 408464898 170492496 170492496 732084717 732084717 711412405 711412405 732209511 821035957 821035957 578884120 799148351 799148351 455353276 455353276 654348352 654348352 4718592 4719744 374117155 374117155 815907680 815907680 555849160 89970560 89970560 1048576 1049088 408699968 408699968 672262532 672262532 940106496 940106496 624668952 624668952 72040233 11829560 27397504 33474208 76975840 76975840 66591464 44129616 8171424 44602208 185756292 185756292 168955904 313527956 418123206 418123206 411049872 279055492 275911554 275911554 226496228 165412972 343485536 343485536 70130928 315755594 318845760 318845760 302779410 296694128 30270944 30270944 583880384 583880384 60428449 72925904 872468020 872468020 847774662 847774662 675077959 750257997 750257997 715195857 580136840 236983000 753280097 753280097 363463050 581372921 581372921 382316840 270192954 270192954 303092664 369186040 369186040 16784528 421921936 421921936 404750726 435209190 435209190 499306734 499306734 77078702 345378696 345378696 292794752 262552016 227551072 227551072 212996940 52959004 236306536 236306536 84333172 50518320 52613408 340233470 435233766 435233766 268478420 522590526 1022494924 1027373248 1039923183 1039923183 1023459375 1023459375 877500713 143165840 319679538 553711742 763664480 763664480 361293602 362407530 362407530 58296296 392734128 392734128 142681348 236594392 236594392 155324580 73585032 199357740 199357740 413173140 413173140 315147474 288752144 321263922 321263922 306616980 287589090 403781438 403781438 321881690 403443828 403443828 469343250 469343250 259481832 487023050 487023050 369070934 533320306 533320306 197330234 204818068 312999130 312999130 304126226 338542984 369656450 369656450 303951378 391618594 391618594 310378560 974131456 974131456 557338753 431684868 753123256 753123256 661417922 842754600 1070642934 1070642934 545372979 586417817 654102489 654102489 815425426 815425426 740692021 734689868 734689868 546578753 622168993 664939021 664939021 554407896 235668616 383044314 437534924 437534924 242298072 242298072 122032308 107959180 50540592 78652136 78652136 39981456 35892528 35892528 42486640 43294800 43294800 8918592 9176128 9176128 2228512 336667904 336667904 135299232 135299232 189268456 189268456 93374332 30865640 30865640 706216064 710411925 710411925 689463397 197159141 96527912 651486680 765496624 765496624 716867029 786460112 910465393 910465393 392468986 392468986 117261538 39991544 880016184 880016184 652349738 652349738 74580554 43253952 43253952 37752976 291049472 291049472 190518340 190518340 135931872 423232564 423232564 176965078 227576524 227576524 211032684 641809590 887304620 887304620 906712977 951773320 951773320 776785053 908067099 908067099 430459844 949267812 949267812 545798162 303098128 303098128 280185666 271766274 44325458 8388672 8388608 0 145015176 145015176 15470348 142125000 142125000 131307592 282855433 889490051 919566451 919566451 579287194 489157515 963357220 963357220 697550449 972999752 972999752 1063805174 1063805174 682325288 682325288 187828129 543691015 881669414 955189684 955189684 832636708 832636708 421617058 421617058 221834188 403228482 403228482 363213538 363213538 348149212 348149212 421231277 513713697 1002847698 1002847698 690562341 664214263 436412672 438440214 438440214 248759184 1046864287 1046864287 857984372 934166832 934166832 352790920 399248634 399248634 366957490 435956962 435956962 362404644 113204248 400504440 510336406 510336406 309212566 309212566 248270100 248270100 208017804 208017804 205917844 361497264 361497264 69206086 132194808 132194808 114574320 132304560 132304560 204716232 204716232 149420484 165041696 165041696 216182884 249156500 249156500 260047120 260047120 149392000 149392000 218897560 464132678 464132678 455756764 954245448 954245448 743926419 608512658 608512658 342640851 420070788 420070788 719371576 946508181 1051721055 1051721055 971419152 365049970 296038880 124311976 152058464 152058464 243016328 243016328 204076192 204076192 112739428 49024120 40770960 69915520 147293440 214772940 885913740 885913740 269746003 348967616 348967616 333507872 333507872 304271634 201851916 281103232 916034682 916034682 496290345 241507188 194189656 147007744 3146496 32927744 32927744 20392448 20392448 12959840 12495360 12495360 12292864 16124096 16124096 433358016 541989454 970919306 970919306 610526112 610526112 171780759 1065363874 1065363874 840510239 867288329 867288329 747189333 1024794920 1024794920 924413374 924413374 692586690 994551840 994551840 935805939 660786599 660786599 474739854 746391476 926166425 976820239 976820239 327231050 226505864 226505864 671490560 672610821 672610821 169328916 169328916 148065108 148065108 715328516 720057813 720057813 195133441 602881521 602881521 569426913 569426913 568954464 295274516 295274516 193764404 193764404 315105812 315105812 707799945 1012475535 1012475535 444728164 692455976 692455976 596429937 5881329 892344605 892344605 774247246 759564367 822134764 822134764 751721186 510436120 510436120 289482946 348347552 348347552 290884674 539031939 564766016 564766016 540606534 540606534 411051777 892531506 892531506 823264840 823264840 136651064 505555020 505555020 422712102 324459186 324459186 211945048 579217640 579217640 51899520 119273016 119273016 88635280 59769456 60285440 60285440 554098368 554098368 193369313 578978112 686033349 687996960 687996960 587339797 34313328 34313328 52762624 62046512 62046512 53527024 474321560 474321560 466779090 495293310 495293310 275590546 411763504 465254262 493618284 493618284 201795364 201795364 128646688 128646688 86664408 86664408 105078784 444203020 444203020 261959292 261959292 329242396 530711298 530711298 158910372 269634712 288906986 503999925 860877447 860877447 717613269 1040849976 1040849976 934546266 934546266 638091301 638091301 592455300 592971441 592971441 800886424 800886424 110095560 110095560 230728072 230728072 161603940 73482476 196736836 283897378 428316352 439885426 439885426 336344154 336344154 337716248 337716248 93257992 310129954 387525426 387525426 338791044 391406270 391406270 169208600 535185650 662125368 1068693627 1068693627 801784941 1063831522 1063831522 307151313 4194432 984688926 984688926 953420487 953420487 383847237 109125720 1069713132 1069713132 840381699 620357577 620357577 756259108 827360102 960308997 1031288849 1031288849 982529787 705176597 705176597 269296768 412141142 412141142 306741766 172057030 517286662 517286662 269352960 269352960 336513102 447213382 447213382 441819144 274964752 928686202 928686202 916416217 999765607 999765607 402795101 425230448 596905232 853699971 853699971 852196003 810017987 310073413 184148934 408471174 408471174 24382598 6556032 279972546 336210032 1000342536 1000342536 994773512 834733360 834733360 578230352 686515653 695163616 695163616 409018758 442632186 442632186 711538981 711538981 581382183 688457849 688457849 638398075 823929179 823929179 774980696 475344668 954216086 954216086 950018262 376638429 137702148 540346628 540346628 137761024 137761024 137364228 9458244 6476288 58374284 241372820 241372820 695662161 695662161 725706980 725706980 693414417 706794257 711891089 711891089 678129665 678129665 584193712 596256464 596256464 63644384 63644384 268435458 268435458 657728203 657728203 1023937611 1023937611 809626271 959765320 959765320 617892616 617892616 331927824 331927824 273155202 65233920 65233920 216152174 504079806 504079806 683949213 683949213 325001878 686361889 686361889 491779180 491779180 437417390 1007465862 1007465862 963445636 748792584 757662148 757662148 405357322 405357322 89650088 347922478 431837026 431837026 810810023 944564391 944564391 805738676 180215316 831722048 831722048 370221568 939598362 939598362 707487635 707487635 473622163 607135252 1015791643 1015791643 992399879 892747220 892747220 583850701 583850701 397153234 358321282 626117952 861955310 861955310 859121040 734944709 734944709 588014144 330775488 330775488 297945186 297945186 293736546 278306752 23655264 58904592 58904592 210923872 225399212 225399212 528780716 748756287 840610304 840610304 580047441 517681532 815167490 815167490 948493233 948493233 589339667 588505616 588505616 1278976 1387008 1387008 1387008 68495880 399642224 399642224 98325698 70728456 53419352 94575160 237160736 729899301 729899301 769995022 769995022 558891681 558891681 946510544 946510544 437279110 899811781 899811781 1015951724 1015951724 939595146 431989858 431989858 380430386 380430386 451076464 451076464 43909664 62992640 62992640 48403808 59762576 59762576 58333104 19762432 50793616 56503824 56503824 22167504 40130896 45357824 45357824 277559168 287221058 287221058 949539521 949539521 1042649552 1042649552 1039434219 892343051 954915367 1008601895 1008601895 805601825 1038931306 1038931306 221277056 141896320 92992712 86640264 73413232 69746952 130684152 130684152 126030952 126030952 711412128 711412128 611234669 131339305 699552384 699552384 4644352 427293586 435282918 435282918 385045044 531629640 531629640 368966594 368966594 230737094 230737094 296181068 501294278 501294278 304193728 245410824 245410824 88605864 554066184 638907745 638907745 23993760 42214848 42214848 38604128 20449728 593235552 593235552 59510433 274779107 360744194 363334090 805306379 805306379 847577114 1011431943 1011431943 373830749 961548883 961548883 847774780 295175874 550114630 550114630 746459753 746459753 654102304 684730048 684730048 575186433 172159301 538994516 702730725 702730725 576852864 872633346 956823591 956823591 1050009826 1050009826 508626066 508626066 370025980 618868968 1024334548 1024334548 404228898 318410479 908382601 908382601 671272465 590777987 590777987 755025029 1026058496 1026058496 1024322607 565527120 994748841 994748841 982861622 982861622 493905899 519200938 987882386 987882386 973127856 354336282 571140220 758547030 758547030 204702112 552682186 552682186 421364403 857805843 857805843 705692820 705692820 562546601 1027881092 1027881092 711412405 711412405 732209511 821035957 821035957 593668197 593668197 778426764 778426764 433074225 572657998 671150351 671150351 328282195 112689624 306866467 815907680 815907680 555849160 405776908 405776908 403021580 945242834 945242834 721159509 967050662 967050662 940106496 940106496 739428387 1012019502 1012019502 425259265 72855304 72855304 70002312 69118472 73912968 73912968 87470976 87470976 185756292 185756292 168955904 688173283 688173283 666511320 1023228874 1023228874 275911554 275911554 660916665 858953787 858953787 675688612 407190336 407190336 211824784 23932752 15729568 25539936 33842048 36250896 583880384 583880384 60428449 579444928 579444928 479875127 898728150 898728150 550679745 550679745 135213580 135213580 103098360 103098360 269490120 363463050 363463050 275910960 382316840 382316840 270192954 270192954 303092664 369186040 369186040 350959050 314711322 302985474 520114992 520114992 502773066 502773066 395602204 395602204 346893642 345378696 292794752 262552016 136319016 67830296 235214928 247228004 247228004 236306536 219454720 241485576 241485576 284881956 435233766 435233766 422801768 358213290 358213290 1027373248 1039923183 1039923183 1023459375 1023459375 835428356 1017396316 1017396316 553711742 763664480 763664480 447032910 311758408 338174056 372532808 392734128 392734128 107867288 72994216 52185528 59349056 59349056 107439410 373366938 413173140 413173140 315147474 439878018 439878018 306616980 306616980 287589090 373687224 373687224 321881690 212216912 212216912 469343250 469343250 259481832 487023050 487023050 266124176 155722096 197330234 197330234 178331988 186544694 304126226 304126226 338542984 906389749 906389749 303951378 958274679 958274679 871664306 974131456 974131456 557338753 979894324 979894324 981712214 981712214 661417922 1070642934 1070642934 601430048 601430048 384943066 384943066 815425426 815425426 423629316 290591394 138416132 142819736 142819736 78043464 177003100 177003100 238325264 238325264 236732544 236732544 203512940 203512940 228037952 228037952 37480208 236270168 236270168 59576148 92727072 137342496 144324360 144324360 295175266 295175266 294126690 352725514 352725514 355763456 355763456 487302660 487302660 336937194 287054232 190972612 20021344 144968004 706216064 710411925 710411925 689463397 197159141 61161656 781470504 781470504 723443253 723443253 166031520 910465393 910465393 392468986 392468986 117261538 289862336 880016184 880016184 622312314 126990488 122102360 355664032 387978010 387978010 319829136 319829136 254418980 254418980 44237296 279725296 279725296 138199588 138199588 68520832 136323500 641809590 887304620 887304620 906712977 906712977 923320819 923320819 976879959 976879959 736761333 949267812 949267812 882138369 942534614 942534614 584912334 271766274 235700520 160043102 359187882 359187882 238916536 420099152 420099152 427802536 427802536 100825768 282855433 889490051 919566451 919566451 601515100 803208957 963357220 1043435552 1043435552 972999752 972999752 543585199 367451035 277138458 187828129 187828129 543691015 543691015 955189684 955189684 670442946 262744514 338304256 338304256 335808522 209979246 158473996 158473996 47204376 348149212 348149212 367943382 908879422 1002847698 1002847698 690562341 664214263 506598150 506598150 884482615 884482615 1046864287 1046864287 857984372 934166832 934166832 116149032 117704760 205955624 230535232 232016808 232016808 152237996 152237996 51650864 510336406 510336406 309212566 499570926 499570926 323593932 457437366 457437366 223210668 486488266 492050528 492050528 366261020 393382288 393382288 389649964 230198748 230198748 224658248 150213152 150213152 15343400 136966628 136966628 80430056 101262360 101262360 71440400 5057664 218897560 464132678 464132678 455756764 954245448 954245448 317768658 317768658 67196864 355417386 355417386 299158242 299158242 213251448 464525684 464525684 365049970 365049970 296038880 117966480 152058464 152058464 134217732 156246320 160334688 160334688 112739428 49024120 40770960 202428697 712742231 988017111 988017111 885913740 632344120 619858242 881464315 881464315 597820481 613565536 816841539 816841539 916034682 916034682 496290345 170462256 88414144 88414144 3146496 32927744 32927744 85476130 85476130 85101992 85101992 282391114 360111018 360111018 295965834 500745222 742425790 742425790 193478791 740869080 740869080 701499969 596904561 205064989 26814048 26029680 26029680 33557584 800745050 800745050 204279147 1036261760 1036261760 1034031471 944220591 674822157 674822157 742125341 742125341 746391476 926166425 976820239 976820239 155849892 226505864 226505864 649932410 840248247 840248247 250853903 169328916 810193156 940362759 940362759 435808230 435808230 325174388 602881521 602881521 569426913 569426913 568954464 295274516 295274516 193764404 193764404 315105812 315105812 707799945 1012475535 1012475535 993701138 692455976 713816305 713816305 599398257 892344605 892344605 774247246 759564367 822134764 822134764 751721186 510436120 510436120 289482946 311245520 311245520 546259520 546259520 564766016 564766016 540606534 730441285 956834913 956834913 897721928 897721928 981869058 981869058 756288398 756288398 371968113 578549649 578549649 315823928 902395569 902395569 51899520 119273016 119273016 542454420 543561732 543561732 175884816 54447461 590221105 696550609 696550609 686033349 699273200 699273200 689314352 762473732 762473732 262428156 262428156 213039052 213039052 474321560 492839102 492839102 495293310 495293310 358822662 317197714 317197714 493618284 493618284 201795364 201795364 201329510 501285162 522313794 522313794 364397704 444203020 455264716 522275105 917265813 917265813 845072181 868534515 868534515 943895040 943895040 988287606 988287606 918810263 918810263 827283159 843466799 843466799 645050833 638091301 638091301 544295481 693169156 693169156 800886424 800886424 110095560 110095560 145753120 163055460 163055460 134291460 196736836 284111504 428316352 439885426 439885426 336344154 336344154 337716248 337716248 76022104 127303968 127303968 114021904 57726520 335839744 336906762 355748482 882239842 882239842 508428882 572649670 574097169 1063831522 1063831522 319825471 858244410 984688926 984688926 953420487 953420487 383847237 650480384 650480384 219275820 545519012 620357577 620357577 756259108 990335036 990335036 671533443 624885911 352431446 903294510 903294510 785098769 944945840 944945840 526754186 526754186 517286662 517286662 417098280 487345674 487345674 434771934 434771934 341960588 274964752 426266966 426266966 224825554 55729660 161531124 730595748 861683857 861683857 134266884 139741824 139741824 178366208 178366208 184148934 408471174 408471174 136447264 6556032 279972546 279972546 392428608 392428608 286966306 286966306 545674890 622438066 622438066 768775414 768775414 760134902 442632186 442632186 743521853 743521853 581382183 688457849 688457849 572073489 177776560 774980696 774980696 538968064 954216086 954216086 950018262 376638429 137702148 540346628 540346628 137761024 137761024 137364228 9458244 6476288 58374284 241372820 241372820 186677284 192203156 192203156 557689360 693414417 706794257 711891089 711891089 184857636 184857636 184676400 134659108 156711588 156711588 177221956 177221956 427958518 427958518 211547208 435778152 619208824 809626271 809626271 330775410 451462806 451462806 333643840 333643840 273366792 255744012 255744012 117789896 134745492 470680022 683949213 683949213 325001878 686361889 686361889 491779180 491779180 437417390 1007465862 1007465862 963445636 748792584 757662148 757662148 161009508 135095872 135095872 89650088 145196608 145196608 406232610 406232610 693079232 999842423 999842423 831722048 831722048 457310390 939598362 939598362 707487635 707487635 473622163 607135252 1015791643 1015791643 796600029 1053392898 1053392898 648144809 464544091 397153234 358321282 341437454 861955310 861955310 859121040 772539880 734944709 739798464 739798464 290904738 297945186 357376130 357376130 76958216 76958216 71691776 71691776 210923872 225399212 225399212 528780716 748756287 748756287 338325580 517681532 517681532 815167490 815167490 948493233 948493233 589339667 588505616 588505616 438292256 720889918 720889918 1001717095 1001717095 399642224 399642224 992352567 992352567 463593846 463593846 237160736 729899301 729899301 398526838 398526838 558891681 558891681 686853266 686853266 449319202 449319202 621546718 621546718 348996420 348996420 235488004 235488004 136359580 6676496 35651856 35651856 19132704 62992640 62992640 43066640 36250192 28968032 25960288 52495136 52495136 16973824 9502720 9511488 24576352 37952000 284690050 303970144 303970144 809570754 949539521 949539521 949732338 1039434219 1039434219 892343051 954915367 1008601895 1008601895 805601825 1038931306 1038931306 82330956 92992712 92992712 152117396 170092081 706777877 706777877 593626969 748073989 748073989 711412128 711412128 804759440 804759440 763893924 763893924 93993268 427293586 435282918 435282918 385045044 270099066 92464418 89622560 470685714 470685714 470421674 470421674 336102694 228742266 518001742 518001742 1010470345 1010470345 684568665 638907745 638907745 580346145 55059920 546137265 586154417 586154417 580125776 29622353 538291904 567134720 567134720 611895168 611895168 388835738 388835738 1011431943 1011431943 373830749 961548883 961548883 400168484 295175874 404886338 669059232 669059232 654102304 654102304 684730048 684730048 575186433 614706544 614706544 607653377 607653377 576852864 536870912 536944641 617033869 617033869 110176485 89244856 55116476 52659076 52659076 403447952 418187654 418187654 79697292 440457220 440457220 150759432 219584576 344556690 390070458 1026058496 1026058496 1024322607 50814319 277364736 277398594 277398594 33858 1023017022 1023017022 541677437 587286608 587286608 205623360 571140220 571140220 204702112 605643049 605643049 963278644 963278644 905201342 857805843 705692820 705692820 562546601 1027881092 1027881092 674308869 674308869 273784832 273728130 468070744 593668197 754049836 778426764 778426764 722813549 572657998 671150351 671150351 938525054 1027813551 1027813551 802895613 802895613 587079633 753404755 753404755 403021580 945242834 945242834 721159509 967050662 967050662 779936026 779936026 777371804 1012019502 1012019502 693784481 537908096 139274752 139394688 139394688 159510756 159510756 152170500 144150592 19522848 19522848 28894531 688173283 688173283 754950784 1023228874 1023228874 822946851 822946851 660916665 858953787 858953787 675688612 407190336 559099763 559099763 329655378 438212918 438212918 312444001 733859699 862471219 862471219 697404151 579444928 621961865 621961865 898728150 898728150 550679745 550679745 592869481 757074876 757074876 81292476 269490120 811014561 811014561 621937345 621937345 34807824 117444840 268484824 268484824 100696960 350959050 350959050 314711322 302985474 520114992 520114992 502773066 502773066 395602204 395602204 346893642 108595922 86311168 86311168 28204328 67830296 235214928 247228004 247228004 189664924 219454720 241485576 241485576 124408968 37748880 422801768 422801768 358213290 804869780 856431520 924651842 924651842 604640265 604640265 595929201 1017396316 1017396316 370339956 370339956 447032910 447032910 311758408 338174056 372532808 372532808 286335330 287383842 336992568 336992568 72346656 102969624 385978546 385978546 373366938 375081664 375081664 439878018 439878018 309330834 309330834 34393104 98105416 98105416 60256904 60256904 63440112 155325916 199414200 245944972 245944972 217240864 217240864 446706048 446706048 253890876 518783080 518783080 221850244 221850244 282400768 906389749 906389749 223660140 958274679 958274679 871664306 871664306 36474887 42512896 979894324 979894324 981712214 981712214 134268627 33770496 33770496 601430048 601430048 384943066 1012062286 1012062286 1027825441 1027825441 449094999 841071582 1071869226 1071869226 472246746 472246746 542107869 542107869 871774653 871774653 292574000 621945761 621945761 228037952 228037952 77907152 236270168 236270168 154390528 92727072 137342496 144324360 144324360 295175266 295175266 294126690 352725514 352725514 355763456 355763456 487302660 487302660 336937194 287054232 190972612 58717104 144968004 197731897 639953189 681903525 681903525 91080949 61161656 801744320 801744320 723443253 723443253 223177989 814088100 814088100 385357122 380126826 380126826 345215592 345215592 269643888 353501728 353501728 282120256 355664032 387978010 387978010 372179120 372179120 302522224 302522224 286917170 61869778 45353808 314902536 377799162 377799162 272706024 360265856 360265856 293024424 765664367 804019872 923320819 923320819 976879959 976879959 736761333 736761333 882138369 947762981 947762981 942534614 828059531 834175282 834175282 788129757 566012092 608883849 608883849 420099152 625786913 755670049 755670049 241619941 177695240 231059578 331688178 601515100 601515100 803208957 803208957 1043435552 1043435552 1032141337 462428352 864830976 864830976 277138458 97305600 97305600 344263704 381748402 516500524 516500524 431432952 73208034 338304256 338304256 335808522 209979246 158473996 158473996 47204376 115640464 115640464 625970225 975195018 975195018 557371616 926609251 926609251 664661625 506598150 884482615 884482615 603979785 603979785 36226320 643083281 643083281 604528409 75544768 205955624 230535232 564158665 564158665 152237996 704239937 704239937 51650864 201347652 201347652 499570926 499570926 323593932 457437366 457437366 257024700 486488266 492050528 492050528 409332602 409332602 393685492 393685492 365141288 240524524 224658248 272798772 272798772 406500810 415846786 415846786 403837060 101262360 196084020 196084020 93934392 216049220 238162332 249960924 249960924 760419362 760419362 317768658 550839810 550839810 834303459 834303459 755684397 755684397 123227736 473187964 473187964 1037441775 1037441775 900906229 771781996 202393600 202393600 143815508 247795936 247795936 80593524 244711512 248513244 248513244 202428697 712742231 988017111 988017111 804903396 632344120 728322786 881464315 881464315 814168131 814168131 816841539 929182040 929182040 104009915 188155776 188155776 24669568 24669568 19681824 28738688 28738688 85476130 85476130 85101992 85101992 282391114 360111018 360111018 295965834 500745222 742425790 892892277 892892277 740869080 740869080 733261750 1044717963 1044717963 854130847 854130847 566619873 802753222 802753222 715194674 967976709 1036261760 1036261760 1034031471 944220591 674822157 674822157 742125341 742125341 641341209 103104001 336798988 336798988 155849892 155849892 176498772 837429490 901918177 905969691 905969691 853895555 853895555 940362759 940362759 552736881 435808230 325174388 598737777 598737777 587204288 587204288 32641504 8466304 70903560 76151560 76151560 235209472 235209472 336662796 339873930 993701138 993701138 595613016 917237960 917237960 599398257 915724889 915724889 665118817 665118817 10620928 136993120 136993120 368635392 368635392 368151328 376631704 376631704 557639616 557639616 545793248 545793248 294731796 730441285 956834913 956834913 997639625 997639625 981869058 981869058 871684216 756288398 685774108 578549649 578549649 564940082 902395569 902395569 600344192 666943737 666943737 542454420 543561732 543561732 175884816 54447461 590221105 696550609 696550609 692593796 699273200 699273200 689314352 762473732 762473732 262428156 262428156 213039052 213039052 278138912 492839102 492839102 487631656 441635478 358822662 302063618 314301266 314301266 383270016 383270016 227512601 679661637 679661637 592471527 592471527 364397704 364397704 980908992 980908992 917265813 917265813 845072181 868534515 868534515 943895040 943895040 988287606 988287606 918810263 918810263 760363088 843466799 843466799 713098264 747185229 747185229 661643580 693169156 693169156 1059982662 1059982662 229266444 805533008 1059510563 1059510563 958476467 807672976 807672976 832314065 832314065 541884896 286527504 286527504 6363058 369623286 369623286 258430952 327805658 327805658 286058002 509625906 624173491 624173491 355748482 882239842 882239842 508428882 572649670 574097169 574097169 860683181 860683181 858244410 858244410 574011678 105058560 175264324 175264324 650480384 650480384 167780885 27263328 26263904 420655845 651291153 990335036 990335036 671533443 447885648 447885648 903294510 903294510 785098769 944945840 944945840 526754186 526754186 533997632 533997632 417098280 487345674 487345674 434771934 434771934 206185014 206185014 559559258 753074897 753074897 60558960 161531124 730595748 861683857 861683857 954468807 954468807 1059175741 1059175741 491624517 193842500 193842500 290255060 290255060 269009922 269009922 61358450 114024600 438311324 438311324 426246652 545674890 622438066 622438066 768775414 768775414 760134902 51315296 51315296 743521853 743521853 557262634 557262634 735840874 735840874 559172733 605307040 605307040 780215502 1070662695 1070662695 782682677 782682677 591871544 906632713 906632713 405591342 405591342 31458727 701571302 889721007 889721007 681183048 358963752 2327680 6426400 52341408 53865264 189519760 189519760 54289556 151093248 184857636 184857636 134659108 134659108 156711588 156711588 177221956 177221956 427958518 427958518 211547208 435778152 435778152 34252864 26790720 19664160 451462806 451462806 333643840 333643840 327971874 328097498 328097498 382349906 382349906 134745492 296292130 312387996 524473070 531383324 531383324 143090408 84287488 88430688 134513796 225569960 225569960 207406468 156369408 161009508 161009508 135095872 135095872 17640960 145196608 145196608 406232610 406232610 693079232 999842423 999842423 941785681 941785681 457310390 369233920 205628566 205628566 224081580 609886388 609886388 501986754 501986754 293142976 1053392898 1053392898 1024009933 464544091 132434424 132434424 50364448 624976972 624976972 885294735 885294735 531114841 739798464 739798464 273861282 282096226 357376130 357376130 76958216 76958216 71691776 85696424 250557992 250557992 265010636 432268716 432268716 165014366 102899724 407442560 407442560 713554005 1001722531 1001722531 541680896 462864384 707918161 991569477 991569477 978770571 720889918 1001717095 1001717095 975223280 819217585 992352567 992352567 463593846 463593846 290952034 288543522 583533777 583533777 199453258 199453258 611980182 1041946143 1041946143 993581141 799328637 687685739 647920081 1053023444 1053023444 239664586 288957520 293724258 317203622 317203622 192006102 145851188 136840452 43066640 55002176 63962352 63962352 37591200 52495136 52495136 50536448 50466864 21853680 44382672 44382672 284690050 303970144 303970144 809570754 809570754 185598516 949732338 949732338 185385620 185385620 50073552 13520656 19562496 134316416 140632452 140632452 136421764 23081092 16912416 152117396 170092081 706777877 706777877 593626969 748073989 748073989 266952524 592752873 804759440 804759440 763893924 763893924 93993268 40350208 37822608 284749376 381954712 381954712 923285834 923285834 906303212 470685714 687281778 700974309 700974309 401821734 518001742 518001742 1010470345 1010470345 798296672 625686408 580346145 580346145 55059920 546137265 586154417 586154417 580125776 597249056 597249056 567134720 567134720 611895168 611895168 55173136 91000560 91000560 148590592 190502580 190502580 99800040 102946360 102946360 681775648 681775648 669059232 760176816 760176816 243413432 550626704 550626704 630958672 847119473 851581403 851581403 912341699 912341699 472482230 692212039 692212039 8652864 8652864 368711166 368711166 144408852 499019806 499019806 418187654 327827621 645972057 645972057 507854339 1021119183 1021119183 727113815 685711144 685711144 602624369 250087169 209740433 1063082700 1063082700 730566164 1023017022 1023017022 1053376928 1053376928 587286608 205623360 205623360 167452240 808778700 808778700 605643049 963278644 963278644 905201342 223345836 994715970 994715970 285212706 943986816 943986816 492425741 273784832 273784832 604145856 1054280913 1054280913 754049836 754049836 745833181 722813549 140569185 379622256 379622256 938525054 1027813551 1027813551 802895613 802895613 587079633 753404755 753404755 360630784 749175064 749175064 519765148 519765148 440556085 555830336 555830336 777371804 813510531 813510531 693784481 537908096 323735568 423926912 423926912 423886886 423886886 287435680 183617888 148923284 19522848 22961698 293591458 617690922 754950784 754950784 806169769 822946851 822946851 539831553 539831553 210698444 210698444 205243972 559099763 559099763 329655378 438212918 438212918 312444001 733859699 862471219 862471219 697404151 562685025 621961865 621961865 541249665 93426252 210211341 771993720 785285132 785285132 757074876 606860553 594048864 858295659 858295659 893583875 893583875 91751912 117444840 268484824 381747536 381747536 406533894 500922214 500922214 58791152 369194502 407136616 501342702 501342702 386695542 386695542 325667162 129500282 124307752 78499664 204710472 204710472 144057576 63513840 142545392 189664924 189664924 100685204 201851308 256021530 457753782 867188966 1045092304 1045092304 978447545 978447545 924651842 924651842 772281608 723715174 850081107 850081107 461452661 143012404 201742380 201742380 160555972 133561920 127493752 127493752 86573096 286335330 287383842 400035468 500876870 500876870 387894432 387894432 385978546 370356738 464144072 464144072 318511184 305401922 309330834 309330834 617567351 617567351 724310106 788107739 796852805 796852805 528841630 528841630 266784300 868226706 868226706 684284160 446706048 446706048 253890876 518783080 518783080 221850244 221850244 195898628 179380620 507474878 507474878 430437798 430437798 471951402 471951402 340789914 833421410 833421410 848398739 848398739 331116467 270577987 676489348 676489348 949079510 949079510 539033857 1012062286 1012062286 1027825441 1027825441 449094999 841071582 1071869226 1071869226 472246746 472246746 542107869 542107869 871774653 871774653 292574000 621945761 621945761 161082080 77907152 77907152 153565312 154390528 154390528 153608228 153141540 525312 119878960 119878960 84151328 93077576 93569096 93569096 69742344 87631360 87631360 20039200 109460368 109460368 58717104 58717104 3420512 77932544 127454152 790635992 790635992 550856589 611584905 801744320 801744320 617168992 617168992 223177989 814088100 814088100 385357122 380126826 380126826 345215592 345215592 269643888 353501728 353501728 282120256 294552264 391004872 391004872 372179120 372179120 302522224 302522224 286917170 61869778 45353808 314902536 377799162 377799162 272706024 100747352 235487204 235487204 217845708 217845708 220758124 701080365 701080365 503553410 503553410 194110068 429894438 947762981 947762981 828059531 828059531 834175282 834175282 788129757 566012092 608883849 608883849 262297565 625786913 755670049 755670049 241619941 177695240 231059578 331688178 331688178 255635512 369419467 369419467 693582251 1032141337 1032141337 625353380 864830976 864830976 68419777 97305600 97305600 97037564 172297468 516500524 516500524 416813930 416025798 408815942 353257382 339787914 203487438 413634924 413634924 364122186 413158422 413158422 625970225 975195018 975195018 557371616 926609251 926609251 664661625 127538808 194118732 626655937 626655937 99226632 608834697 670339641 670339641 604528409 85401832 134491184 153223708 564158665 564158665 682264884 704239937 717700741 717700741 538670036 168684581 493267157 493267157 211968060 252971580 252971580 257024700 257024700 128351172 705757352 705757352 766632813 978446601 978446601 588595906 240524524 188895396 272798772 272798772 406500810 415846786 415846786 403837060 450369194 450369194 196084020 93934392 216049220 398468202 398468202 312742091 760419362 760419362 81928771 550839810 550839810 834303459 834303459 755684397 755684397 291553634 473187964 473187964 1037441775 1037441775 900906229 771781996 202393600 202393600 178395544 247795936 247795936 197579072 244711512 248513244 293996002 293996002 185613288 331295296 804903396 804903396 489153445 728322786 728322786 280995076 814168131 814168131 473357070 1019258938 1019258938 872103835 512739277 188155776 89652000 89652000 19681824 28738688 28738688 27016480 27016480 17172768 16893984 29462848 362978912 362978912 275450474 346620096 346620096 892892277 892892277 227070676 733261750 733261750 1044717963 1044717963 854130847 854130847 655950899 802753222 802753222 715194674 967976709 967976709 815846422 1069686059 1069686059 979437700 1013788047 1013788047 978320684 978320684 1022602349 1022602349 608320001 608320001 91367562 674172410 847840518 901918177 905969691 905969691 853895555 853895555 413569941 552736881 552736881 278921651 278921651 598737777 598737777 587204288 587204288 302587458 321312328 374680218 374680218 93802794 75893048 357765366 357765366 136524618 866261226 866261226 365409281 917237960 917237960 473758054 915724889 915724889 665118817 665118817 628098342 628098342 564148040 1063453264 1063453264 639834194 376631704 376631704 557639616 664822651 664822651 909476298 607344448 615757638 615757638 901042790 997639625 997639625 801953259 954241384 954241384 685774108 685774108 580731905 580731905 1058563783 1058563783 340313226 600344192 689514021 689514021 567902725 143762341 550839172 676448993 707863477 707863477 706815525 692593796 692593796 587821221 191099553 158593956 156439172 154288288 3146496 1048832 0 35948544 278138912 278138912 487631656 487631656 441635478 251679402 201639948 187960116 187960116 383270016 383270016 227512601 679661637 679661637 592471527 847376793 847376793 453645366 980908992 980908992 872927407 872927407 520519761 921096730 921096730 239388356 807874688 807874688 345572614 944901323 969938509 969938509 760363088 969910291 969910291 810428635 747185229 661643580 661643580 606341024 1059982662 1059982662 887021259 805533008 1059510563 1059510563 958476467 807672976 807672976 832314065 832314065 541884896 286527504 374547644 374547644 474229816 474229816 258430952 327805658 327805658 286058002 509625906 624173491 624173491 239429688 357902755 746595312 746595312 459034650 459034650 524015125 860683181 860683181 856627262 985108750 985108750 954327117 610685635 507795931 249819612 911785860 973391895 973391895 407294487 409953666 445925660 673349640 807527049 807527049 475538754 475538754 435306702 435306702 431340724 273706662 239935524 455894312 455894312 533997632 533997632 24718174 311107194 311107194 383780210 383780210 93872224 268518416 559559258 753074897 753074897 60558960 190844960 601229408 601229408 713294226 954468807 954468807 1059175741 1059175741 1025795075 706908464 462013704 290255060 290255060 269009922 269009922 61358450 78249172 438311324 438311324 426246652 426246652 191628402 22363728 48177696 148166692 148166692 135606804 146936480 152044068 671807124 725688501 725688501 735840874 735840874 559172733 605307040 605307040 780215502 1070662695 1070662695 782682677 782682677 606786432 906632713 906632713 405591342 405591342 31458727 701571302 889721007 889721007 681183048 358963752 186174116 165465828 152487588 152281088 189519760 189519760 138072468 138072468 167823764 167823764 56936880 56936880 36471968 1124416 13705888 22095392 29885664 127403546 273155202 301074002 301074002 77856906 77856906 19664160 53381880 97966824 97966824 77210450 556719393 557588257 557588257 554790656 382349906 818274896 839634560 839634560 812596611 821459618 821459618 298107330 283825602 280120832 93005280 225569960 225569960 69128288 156369408 156369408 138936608 22334336 19974944 18143232 2451456 2451456 2467840 135471632 169531156 708461332 716834133 976244820 976244820 964170406 327929960 744369395 744369395 55871664 746071556 746071556 501986754 1072244637 1072244637 947405832 1024009933 1024009933 480722094 480722094 214925488 214925488 624976972 624976972 885294735 885294735 271601473 165988836 156257088 22496448 30272736 30272736 4229152 13231488 91997424 91997424 85696424 250557992 250557992 343935120 432268716 432268716 165014366 288535660 354652322 354652322 713554005 1001722531 1001722531 551874304 462864384 707918161 991569477 991569477 978770571 703144244 998974565 998974565 975223280 819217585 819217585 281049280 733276290 733276290 290952034 288543522 583533777 583533777 199453258 839386512 839386512 1041946143 1041946143 993581141 799328637 687685739 647920081 1053023444 1053023444 374729370 442269854 442269854 317203622 317203622 299632500 432588006 432588006 273625092 171566180 195207904 195207904 37591200 33631056 50536448 50536448 50466864 21853680 44382672 44382672 65419776 65419776 49815744 58008512 135136240 140459652 142353152 142353152 139275396 52216288 50073552 13520656 18898208 134316416 140632452 140632452 136421764 102859240 102859240 105039472 105039472 50380848 50380848 81289976 126374528 126374528 55659744 26971184 23221248 23780480 23780480 75068968 233944898 233944898 107020438 97525826 381954712 831052485 923285834 1012467448 1012467448 342887384 687281778 700974309 700974309 401821734 401821734 421078566 663185086 798296672 798296672 373500552 69709232 47215072 47215072 60836976 60836976 47104368 64277232 597249056 597249056 559505441 20013056 610870656 626081856 626081856 24216489 726348981 726348981 800199549 800199549 689519320 187772668 632927076 681775648 739579913 739579913 760176816 760176816 243413432 572034400 572034400 630958672 847119473 851581403 851581403 912341699 912341699 472482230 692212039 692212039 259785076 43855440 795412973 795412973 144408852 614998669 614998669 666373988 666373988 973739031 1031980659 1031980659 1021119183 1021119183 735049840 735049840 685711144 602624369 250087169 209740433 1063082700 1063082700 730566164 675289006 675289006 1053376928 1053376928 925270472 925270472 877267409 302219521 808778700 808778700 610108706 431487846 431487846 1057200243 1057200243 994715970 994715970 555222561 901850826 901850826 760755200 760755200 103884434 604145856 1054280913 1054280913 284923878 697652004 697652004 683825217 683825217 169885724 236978460 555703932 940036651 940036651 787136081 787136081 592418584 533005392 474165824 474165824 471075342 471075342 166011248 188280480 188280480 555830336 555830336 547196099 813510531 813510531 462074200 462074200 373774904 423926912 423926912 423886886 423886886 287435680 183617888 148923284 9486912 22961698 578863185 617690922 992027070 992027070 142677913 177870425 1007314532 1007314532 923395131 891406399 268805421 205243972 261880624 261880624 53327728 53327728 46402128 14158000 17310720 17310720 716808228 716808228 713722337 541229056 541249665 892418063 1006819387 1006819387 771993720 785285132 785285132 606860553 606860553 594048864 858295659 858295659 893583875 893583875 102957584 120307968 120307968 381747536 381747536 406533894 500922214 500922214 51557420 369194502 407136616 501342702 501342702 386695542 386695542 325667162 129500282 124812008 124812008 204710472 204710472 162073900 162073900 127012340 133618680 133618680 150640076 201851308 328958284 472384782 867188966 1045092304 1045092304 978447545 978447545 955566535 1032221856 1032221856 723715174 999229809 999229809 990516548 143012404 196704356 196704356 4335376 10076256 10076256 60068608 169869840 169869840 194460276 400035468 500876870 500876870 387894432 387894432 302443136 302443136 495535676 495535676 484442224 484442224 502159727 669257147 669257147 617567351 724310106 788107739 796852805 796852805 528841630 528841630 266784300 868226706 868226706 684284160 367599630 367599630 238797736 300784006 300784006 143303976 195898628 195898628 239668664 507474878 507474878 430437798 430437798 471951402 471951402 340789914 833421410 833421410 848398739 848398739 331116467 591537840 676489348 676489348 949079510 949079510 539033857 975032836 975032836 307125042 195350356 553538652 553538652 572001988 572001988 38033933 207494796 809321880 809321880 164687135 148129264 113906904 134712320 134712320 817156 25528320 25528320 153565312 195083104 195083104 153608228 153141540 121370416 125543312 125543312 106955544 67109888 19515176 67575808 69742344 69742344 34384920 24263744 24263744 74029632 165604225 165604225 138750084 138750084 549335757 790635992 790635992 677391436 677391436 611584905 611010177 578121233 561913761 562372544 562372544 372888426 51751496 309793170 379273024 379273024 68941312 395076720 395076720 347132682 347132682 39559176 391004872 391004872 354689168 354689168 337905930 84487458 0 0 98304 98304 122880 46156016 63234256 63234256 107847904 107847904 120523920 120523920 106828216 33765000 5859840 139182208 139182208 138596484 135695008 176160784 278151712 293914722 378571602 378571602 342223242 462422632 462422632 579461296 579461296 262297565 155205796 11739456 1710336 2887424 2887424 2495488 0 0 232632445 369419467 369419467 693582251 826505362 826505362 625353380 588515889 759433241 759433241 775949605 787357149 787357149 606874632 248462556 219155608 416025798 416025798 408815942 353257382 339787914 203487438 413634924 413634924 379455524 413158422 497685870 497685870 775448768 775448768 592519857 573776817 118833355 211327563 211327563 62457636 626655937 876874594 876874594 608834697 670339641 670339641 164388913 147064896 46207836 210676984 210676984 26789472 682264884 682264884 717700741 717700741 538670036 475700704 493267157 493267157 61010254 48620541 64151668 96868584 96868584 48895696 705757352 705757352 766632813 978446601 978446601 588595906 50349696 50349696 0 10621184 10621184 371196232 381747716 381747716 450369194 450369194 193598152 139645572 72467984 398468202 398468202 312742091 550902465 550902465 20384480 805393410 805393410 817106112 817106112 282525504 291553634 291553634 44438848 300331250 300331250 141924224 153153164 153153164 176726336 176726336 178395544 193251616 193251616 197579072 197579072 104120692 293996002 293996002 185613288 331295296 782144761 782144761 570417791 570417791 824090186 824090186 579597393 579597393 473357070 1019258938 1019258938 872103835 1018761572 1018761572 252422576 163962496 9980736 22366464 22366464 70560258 70560258 87481128 87481128 288758282 362978912 362978912 275450474 293613862 293613862 258073020 258073020 227070676 198213936 198213936 553413696 553413696 560587920 560587920 655950899 685270641 828851889 950409543 950409543 566413444 763600106 1069686059 1069686059 979437700 1013788047 1013788047 978320684 978320684 1022602349 1022602349 712725521 608320001 361702417 674172410 956350503 956350503 932987039 819728067 12586499 12585536 12587104 21106848 50462864 62390517 737478196 737478196 583991344 32327760 720985744 720985744 683819908 683819908 581795650 808944276 808944276 357765366 357765366 353441262 866261226 866261226 691196196 691196196 692131585 692131585 570936098 570936098 521977872 417224767 628098342 628098342 564148040 1063453264 1063453264 639834194 38544384 38544384 15279552 664822651 664822651 909476298 607344448 615757638 615757638 901042790 901042790 835866253 958175296 958175296 954241384 549717312 549717312 580731905 580731905 1058563783 1058563783 596141568 596141568 689514021 689514021 687980900 687980900 550839172 676448993 707863477 707863477 706815525 675808389 512620638 725614865 725614865 557908116 582271452 582271452 509121308 509121308 509691870 509691870 360007734 357305960 348258714 253796760 343028004 523639614 535827118 535827118 496241262 344570484 524736702 524736702 422351146 387584278 585269520 847376793 847376793 453645366 806568060 806568060 872927407 872927407 520519761 921096730 921096730 826454273 475289627 412787096 811189452 944901323 1037620921 1037620921 653046028 969910291 969910291 810428635 657282190 657282190 801669140 877399179 877399179 887021259 887021259 963911488 963911488 833618787 139821124 271719424 446406756 446406756 454857296 454857296 298918626 374547644 374547644 474229816 474229816 403342144 109856872 85058088 86360856 247480644 247480644 193202424 9439552 56623616 746595312 746595312 730868852 459034650 524015125 775881230 927002682 927002682 985108750 1051198815 1051198815 610685635 507795931 444293056 911785860 973391895 973391895 407294487 541494540 541494540 673349640 807527049 807527049 475538754 475538754 435306702 435306702 431340724 356301664 356301664 455894312 455894312 340528130 309406616 211912024 201117684 160710824 427282690 427282690 219407236 268518416 445379410 445379410 1000231726 1000231726 993571591 601229408 711634500 711634500 530611461 539661615 894353597 1025795075 1025795075 706908464 462013704 439297302 313013270 279198992 151382532 151382532 170917670 170917670 385406784 385406784 586333542 795174546 795174546 612880290 623673234 623673234 135606804 146936480 607464841 811799043 811799043 725688501 1061756960 1061756960 999701576 999701576 297937658 297937658 744317956 744317956 609536649 604599424 606786432 606786432 30403881 876668608 876668608 85819619 88418408 88418408 125173868 263198986 871510518 871510518 688791728 809637159 812320802 812320802 321331748 138072468 142031748 539175569 675349204 680526405 724090928 724090928 46212240 137365328 137365328 162844112 181980128 273155202 301074002 301074002 350923275 620756417 620756417 622172928 622172928 301813896 357720352 556719393 557588257 891314624 895613363 895613363 818274896 839634560 839634560 812596611 821459618 821459618 298107330 283825602 280120832 96479240 160512384 218970152 218970152 214382796 93990564 22334336 22334336 19974944 22697472 22697472 22021664 553697313 553697313 458677174 708461332 989202903 989202903 976244820 995266948 995266948 964825191 744369395 279747442 746071556 746071556 469934411 1072244637 1072244637 947405832 947405832 423640512 480722094 480722094 404750896 404750896 798101164 854886810 854886810 399825586 606388212 925720288 925720288 22496448 352565248 352565248 350063786 350063786 91997424 333734858 345538656 345538656 294392704 449748284 449748284 135737316 135737316 288535660 356165354 356165354 38928640 3344592 551874304 551874304 221881384 221881384 212977728 212977728 720526388 720526388 296634848 1028016466 1069816023 1069816023 1029578415 668602764 733276290 733276290 528820350 528820350 138227460 138227460 18402464 839386512 839386512 607701526 571999504 571999504 358961032 358961032 469204950 469204950 449239254 374729370 442269854 442269854 312646866 421725216 421725216 432588006 432588006 273625092 171566180 195207904 195207904 41133408 53864704 53864704 58246192 58246192 17345536 17345536 23068960 24256704 24256704 20316608 51396544 51396544 267223860 267223860 142353152 153883856 735136572 735136572 161824569 759409624 759409624 400640022 400640022 216377836 268796386 268796386 303760208 317936498 317936498 438804230 438804230 330061344 435234020 435234020 183000628 68255928 590200421 590200421 133795196 233944898 769014240 769014240 758459949 749280224 831052485 831052485 1012467448 1012467448 630742606 630742606 802036989 802036989 215693004 218694154 421078566 421078566 344007788 41301416 69709232 69709232 47215072 47215072 60836976 60836976 543346208 543346208 545445537 545445537 554799201 606650376 606650376 626081856 626081856 630276936 726348981 726348981 800199549 800199549 742672256 703122973 632927076 632927076 739579913 739579913 692060325 634233961 120635889 572034400 597250304 814077801 814077801 336881891 324348594 409262952 422330306 422330306 273078595 737884477 737884477 671537157 886696332 1033139024 1033139024 652682733 614998669 922038814 973169169 973739031 1031980659 1031980659 814792776 395996812 735049840 878866878 927546441 927546441 600569607 848037120 848037120 277862242 271982432 539812369 539812369 306785616 851526977 925270472 925270472 877267409 580481160 877897243 877897243 912601567 912601567 1052413682 1057200243 1057200243 823461958 823461958 555222561 901850826 901850826 760755200 760755200 659514126 659514126 883450679 883450679 84682752 474753164 1015613709 1015613709 683825217 751011428 751011428 697391716 940036651 940036651 787136081 787136081 1020468833 1020468833 684911245 474165824 422366727 146354597 497439769 531815049 531815049 91395812 54666421 447656564 447656564 530380348 615216658 773334061 773334061 1018810560 1018810560 151253028 184651792 184651792 195069342 322676050 322676050 419504994 578863185 578863185 992027070 992027070 659603621 860881598 1007314532 1007314532 1025265170 1025265170 268805421 107176840 618280795 618280795 313660242 411113542 411113542 346870889 741084731 741084731 858442049 858442049 713722337 441481472 441481472 892418063 1006819387 1006819387 625438968 625438968 181398145 118615084 616074464 625611945 626610977 626610977 555868449 398627915 362923986 120307968 120307968 61343088 67666168 334529936 345105346 345105346 446194776 446194776 408545036 431508922 431508922 344034858 344034858 321251362 361791608 361791608 124812008 81524424 81524424 162073900 220046504 228140652 228140652 194199500 215882432 215882432 328958284 472384782 1020346664 1020346664 434635030 1051230216 1051230216 955566535 1032221856 1032221856 589575214 999229809 999229809 990516548 966396484 966396484 822074756 163056100 46346448 80752984 80752984 169869840 322081706 494064446 494064446 138171564 305316456 342797584 342797584 455313682 455313682 495535676 495535676 484442224 484442224 502159727 669257147 822748352 822748352 1065608464 1065608464 287520059 2297856 2297856 16794816 29934816 29934816 18890944 24166788 204485540 399103670 399103670 373156364 373156364 235518016 235518016 211598236 239668664 239668664 339390860 458192564 458192564 253180780 213845000 31069920 12715552 55494560 55494560 55014960 8992784 591537840 591537840 570689553 539492624 539492624 35652865 306758674 306758674 41158148 195350356 553538652 553538652 583303257 674771840 874458375 874458375 809321880 809321880 683870419 683870419 350325120 574034561 574034561 191771208 228989896 228989896 87472576 195083104 195083104 118539824 118539824 121370416 125543312 125543312 106955544 24852384 88929280 88929280 88863912 68010024 22515112 24978880 69898624 74029632 165604225 165604225 138750084 138750084 549335757 549335757 81075565 677391436 677391436 552857857 552857857 548698337 561913761 562372544 562372544 327680 0 42422864 379273024 379273024 68941312 395076720 395076720 347132682 347132682 290640128 290640128 274499106 354689168 354689168 337905930 279131952 270741554 5965330 33653376 326960680 345943978 345943978 343572168 63234256 139350812 242668108 242668108 232737084 232737084 197394680 685381317 710005917 710005917 774419816 1001071075 1001071075 278151712 809623683 809623683 378571602 835838691 835838691 716245414 461169633 940675876 940675876 688521237 722782773 722782773 220449541 326313549 940739101 940739101 936274201 814091569 814091569 196837910 314702492 826505362 907090000 1019294347 1019294347 759433241 759433241 1043913391 1043913391 923834739 830810180 830810180 572852529 540446198 163992676 163992676 161746244 161746244 69610504 8585800 268697600 379455524 379455524 497685870 497685870 775448768 775448768 592519857 573776817 118833355 211327563 211327563 62457636 270797067 876874594 876874594 974514273 974514273 147083973 573745493 573745493 224466481 210676984 210676984 26789472 709920064 720947157 720947157 139073220 475700704 475700704 228620288 0 0 98816 8585296 33763344 34763248 66245616 497559552 497559552 115664586 716255510 836998727 836998727 1052458463 1052458463 946839493 838885642 843789459 843789459 570887298 174328084 224540836 224540836 155215640 250190588 250190588 250111144 250111144 71310368 78981800 89129792 89129792 805393410 805393410 817106112 817106112 545446209 561400160 561400160 586941377 586941377 679509057 686598085 686598085 545383812 176726336 176726336 170517780 79171592 79171592 67241800 67241800 88350528 88350528 263332960 263332960 322515456 782144761 831534137 831534137 681644103 1037436624 1037436624 579597393 579597393 439753494 981575605 981575605 813953091 1018761572 1018761572 252422576 163962496 60590304 24264352 22366464 70560258 70560258 87481128 162393476 288758282 288758282 232863212 148322412 293613862 293613862 356763464 356763464 234600066 689172992 739719245 739719245 545554053 541639809 215515725 596190768 685270641 828851889 950409543 950409543 566413444 566413444 818812901 818812901 899859466 912041574 912041574 581219600 951337788 951337788 849539054 849539054 562723472 566495457 985829577 985829577 956350503 932987039 867930488 867930488 856692515 433304245 541245457 675337008 675337008 737478196 737478196 721437617 721437617 720985744 720985744 683819908 683819908 581795650 808944276 808944276 256257931 791485587 807085569 807085569 757641702 691196196 691196196 692131585 692131585 33812496 521977872 521977872 697304094 697304094 486852654 218122242 84230240 393997522 393997522 382048480 382048480 118262768 371923256 371923256 396596842 9437184 9437184 1049088 90968448 90968448 624169504 958175296 958175296 482431329 1037480896 1037480896 148917231 914870722 914870722 835462824 1065518191 1065518191 633503808 633503808 687980900 687980900 734355728 734355728 295972114 403179990 491572398 512620638 512620638 725614865 725614865 557908116 582271452 582271452 509121308 509121308 509691870 509691870 360007734 357305960 348258714 253796760 343028004 523639614 535827118 535827118 496241262 344570484 524736702 524736702 585290193 585290193 387584278 355107750 716335432 716335432 806568060 1048832121 1048832121 956506138 688150609 896843882 896843882 826454273 475289627 272810626 811189452 881141835 1037620921 1037620921 779749518 779749518 126014577 423791928 657282190 757753315 801669140 877399179 877399179 790235103 790235103 963911488 963911488 833618787 673650357 521521370 334423187 543161985 543161985 298918626 298918626 138607120 312481028 414897990 963077738 963077738 697727938 91316744 91316744 247480644 655362329 655362329 141871268 641034377 641034377 730868852 730868852 193282256 673878932 725015349 927002682 927002682 781003779 1051198815 1051198815 546126852 546126852 444293056 444293056 481770318 481770318 481770318 541494540 541494540 1026667042 1026667042 290904335 76587584 31234466 279026722 279026722 83770186 356301664 356301664 367169826 367169826 82363712 211912024 211912024 201117684 160710824 427282690 427282690 219407236 203494194 445379410 587759632 1000231726 1000231726 993571591 486937112 711634500 711634500 335706128 335706128 204133644 44354892 167862544 178993238 439297302 843841471 843841471 486936874 602865627 602865627 294437584 170917670 269009032 570428053 586333542 795174546 795174546 612880290 623673234 623673234 60573488 60573488 607464841 811799043 811799043 604436617 1061756960 1061756960 999701576 999701576 387327721 654321369 654321369 948544710 948544710 604599424 243318876 1067482668 1067482668 893235623 876668608 678790465 904931338 904931338 682888005 671351616 871510518 871510518 688791728 809637159 812320802 812320802 321331748 167780386 453058614 539175569 675349204 680526405 724090928 724090928 104934104 137365328 137365328 162844112 541369224 639705881 639705881 666894201 666894201 620756417 620756417 622172928 622172928 301813896 357720352 389885754 389885754 891314624 895613363 1046905113 1046905113 569277802 569277802 376151307 369362970 364906736 504437044 504437044 359540280 533609312 533609312 422513350 218970152 214382796 293291908 293291908 297395200 297395200 22697472 22697472 22021664 553697313 553697313 458677174 461151127 989202903 989202903 298824225 995266948 995266948 964825191 892338987 892338987 652408046 919262427 925570217 925570217 885260745 885260745 832942283 556596061 556596061 684550954 756912651 756912651 798101164 854886810 854886810 399825586 606388212 925720288 925720288 22331392 352565248 352565248 350063786 350063786 88992936 333734858 361666552 361666552 304300944 449748284 449748284 135737316 135737316 82551172 356165354 356165354 851097045 851097045 660455211 529321512 420552003 772281461 1057003589 1057003589 720526388 720526388 868631592 1028016466 1069816023 1069816023 1029578415 668602764 668602764 589384250 589384250 565421155 565421155 512579364 512579364 211865501 607701526 1018202656 1018202656 622454313 876200865 876200865 545189802 508560030 508560030 302056320 347603026 347603026 340337802 421725216 421725216 63123696 142880880 142880880 11272448 35397872 41133408 50594704 53864704 53864704 58246192 58246192 17345536 17345536 11146752 16978176 16978176 295443460 430576998 839653163 839653163 445356702 891351060 891351060 875366699 854220734 888956773 888956773 887882646 1025550564 1025550564 216377836 268796386 268796386 303760208 317936498 317936498 438804230 438804230 330061344 435234020 435234020 183000628 68255928 590200421 590200421 140958884 138678508 769014240 769014240 758459949 749280224 723257445 758488882 758488882 514207603 630742606 630742606 802036989 802036989 215693004 874519811 874519811 561320130 608313376 608313376 300793728 29491744 29491744 29484768 58249232 58249232 543346208 543346208 545445537 551326864 554799201 606650376 606650376 567920424 564216168 630276936 630276936 696536960 704169957 742672256 742672256 703122973 737491888 737491888 708809617 685430241 663232360 634233961 674239689 674239689 597250304 814077801 814077801 336881891 324348594 409262952 414097480 414097480 273078595 737884477 737884477 671537157 886696332 1033139024 1033139024 652682733 429913337 922038814 973169169 973169169 806407686 806407686 499161709 606480520 606480520 878866878 927546441 927546441 600569607 848037120 848037120 280179522 280179522 539812369 539812369 306785616 851526977 851526977 61180240 61180240 580481160 877897243 877897243 912601567 912601567 1052413682 1052413682 441660054 441660054 423697660 423697660 281674778 159948010 544243968 766349620 766349620 659514126 706838595 706838595 533326058 948494405 1015613709 1015613709 547495104 751011428 751011428 697391716 805558831 805558831 483445384 657263964 1020468833 1020468833 684911245 422366727 422366727 519701582 519701582 531815049 531815049 151183872 54666421 447656564 1013431726 1013431726 615216658 773334061 773334061 1018810560 1018810560 459774902 459774902 219426944 296223328 322676050 322676050 419504994 419504994 378562096 558940712 659603621 659603621 860881598 970025578 970025578 1025265170 1025265170 226625482 226625482 917111263 917111263 447006386 914598015 914598015 530088986 741084731 741084731 858442049 858442049 52551984 424057283 584014789 1017932110 1017932110 875676443 572263745 572263745 185412660 258378548 616074464 625611945 626610977 626610977 555868449 398627915 362923986 303613568 323489938 323489938 107091122 514250822 514250822 368298376 446194776 446194776 408545036 431508922 431508922 405292640 405292640 321251362 361791608 361791608 247596072 247596072 191529908 191529908 220046504 228140652 228140652 194199500 215882432 215882432 394856410 394856410 1020346664 1020346664 1059892428 1059892428 1051230216 868520999 805738435 998769783 998769783 490249659 423297568 640080298 966396484 966396484 822074756 163056100 87106344 80752984 80752984 156387328 322081706 494064446 494064446 358013610 305316456 521325496 521325496 455313682 455313682 323293488 323293488 275200386 253804860 253804860 209715288 822748352 822748352 1065608464 1065608464 683716613 683899072 683899072 16794816 87662888 629415264 687871616 687871616 338248072 399103670 399103670 373156364 373156364 235518016 235518016 211598236 537664001 537664001 410715680 674456577 674456577 697184588 1007225176 1007225176 632562998 632562998 598510080 55014960 2840084 722085300 722085300 710070933 539492624 539492624 38797328 306758674 306758674 39356864 246465811 772295437 772295437 583303257 674771840 874458375 961276519 982432830 982432830 683870419 683870419 350325120 574034561 574034561 191771208 259369404 259369404 115504000 195377760 195377760 64886264 244782632 251535936 251535936 71377032 59499352 24852384 90472704 90472704 88863912 83925920 83925920 90820800 92906624 92906624 88384768 85390600 69086568 28904104 19835008 18618784 18618784 76619904 76619904 14202688 14202688 10814208 10814208 10006976 350866850 350866850 17442824 34992074 45083450 126596450 333775466 333775466 13159616 86428008 86428008 290640128 291190816 437105444 437105444 51446224 279131952 279131952 270741554 28577152 58691632 326960680 345943978 345943978 343572168 155290644 139350812 242668108 704306917 704306917 658296192 615013637 685381317 1033328511 1033328511 977160073 1001071075 1001071075 180016404 809623683 809623683 1020110279 1020110279 835838691 716245414 461169633 940675876 940675876 688521237 722782773 722782773 292682852 326313549 940739101 940739101 936274201 814091569 814091569 196837910 196837910 738221716 907090000 1019294347 1019294347 240417807 290193988 1043913391 1043913391 923834739 830810180 830810180 572852529 540446198 209461230 300325506 453035030 453035030 109501790 329702224 329702224 305130760 305130760 483691204 483691204 377503868 515312251 515312251 375046998 793151809 793151809 779321664 779321664 903934599 903934599 919907523 974514273 974514273 798561337 573745493 573745493 633986988 633986988 644853937 644853937 951332099 951332099 720947157 827328474 827328474 228620288 228620288 386719788 386719788 328499509 258684656 258684656 178007860 178007860 381180584 381180584 115664586 716255510 836998727 836998727 1052458463 1052458463 946839493 838885642 843789459 843789459 570887298 195901944 478877786 478877786 166750120 250190588 250190588 320951414 320951414 455724071 680960481 680960481 295904002 295904002 555810816 809636803 809636803 545446209 561400160 561400160 586941377 586941377 679509057 686598085 686598085 545383812 41197696 38851476 175625472 186445600 186445600 189845056 189845056 180412436 292028134 424797256 424797256 355519706 448604208 831534137 831534137 1048580780 1048580780 1037436624 534385475 393216302 439753494 439753494 163993440 163993440 58121136 34507984 50860640 60590304 60590304 26520448 23985184 28972576 28972576 32764896 162393476 162393476 232863212 232863212 148322412 233534792 233534792 356763464 356763464 234600066 689172992 739719245 739719245 545554053 541639809 776069320 776069320 339772651 599789942 599789942 846309208 846309208 321488787 398986461 398986461 280179522 912041574 912041574 581219600 581219600 512779056 849539054 849539054 562723472 566495457 985829577 985829577 399038659 325529804 867930488 867930488 856692515 701608052 701608052 715149777 715149777 418529282 178393973 721437617 721437617 701666112 310077106 319858704 319858704 303063908 463974674 463974674 448375346 791485587 807085569 807085569 454638548 585126802 814928451 814928451 202840712 202840712 613953099 613953099 697304094 697304094 495408199 134740130 618018944 618018944 608927304 382048480 382048480 118262768 371923256 371923256 396596842 552092162 809670348 809670348 607650348 607650348 830083722 830083722 565609033 680274699 1037480896 1037480896 870272434 914870722 914870722 835462824 1065518191 1065518191 797229060 797229060 662964345 817987729 817987729 808020186 808020186 637804946 403179990 101196824 101196824 519443340 519443340 517124830 511906262 169498466 489735228 489735228 247055634 47252032 248524496 248524496 184686736 184686736 92397672 73800072 73800072 73422976 69654792 180552400 180552400 209879704 585290193 588648868 588648868 913619201 913619201 716335432 916744522 1048832121 1048832121 956506138 688150609 688150609 524472804 647381316 647381316 752093725 752093725 964213538 1029308838 1029308838 779749518 779749518 1043579051 1043579051 550273292 757753315 757753315 1044382201 1044382201 790235103 790235103 415690516 415690516 673650357 673650357 521521370 943493204 943493204 851369811 190672229 45177856 45177856 287937024 288044322 963077738 963077738 697727938 214207912 209850444 142874632 655362329 655362329 234103016 641034377 641034377 252191344 194457164 160567908 673878932 725015349 822375704 822375704 709101717 576719108 538760521 546126852 607804428 1054781006 1054781006 577621474 481770318 481770318 652663065 987751218 1026667042 1026667042 1018142724 1018142724 608690795 965314276 965314276 366951854 356602117 875290189 875290189 763621485 611479656 425513408 356821162 71964784 317783444 416390878 416390878 470427780 470427780 176227408 587759632 587759632 638591073 638591073 486937112 486937112 437230632 607865578 837811683 837811683 473736997 539182468 539182468 309276012 843841471 843841471 486936874 602865627 602865627 294437584 440266240 440266240 570428053 570428053 141648400 538985489 538985489 44944720 44944720 12870080 12269376 41529920 41529920 42665344 96766568 96766568 323167250 323167250 290136650 387327721 654321369 654321369 948544710 948544710 612237313 554530465 1067482668 1067482668 893235623 678790465 678790465 904931338 904931338 682888005 671351616 195348852 159519568 442270626 442270626 195059426 195059426 136724534 167780386 453058614 455157012 455157012 2687252 31459096 360235578 360235578 238618945 612492821 612492821 541369224 639705881 639705881 666894201 666894201 79741632 114344448 114344448 114764760 114764760 343721515 666402337 666402337 652477832 765549452 1046905113 1046905113 180588608 817399043 982829655 982829655 546822356 504437044 940265783 940265783 533609312 823268162 823268162 729679859 392556094 396160408 396160408 724666880 727213920 727213920 15262848 7261696 275510658 944981392 977008407 977008407 174186900 674618256 674618256 819082051 819082051 541323393 892338987 892338987 652408046 919262427 925570217 925570217 885260745 967360530 967360530 556596061 556596061 684550954 756912651 756912651 546363313 1041791284 1041791284 80250463 42806352 76281376 76281376 18609224 38273024 883501697 883501697 352063434 123996368 342061698 587790216 904601219 904601219 707314758 814377945 814377945 806116740 16251840 144524800 171885057 851097045 851097045 660455211 529321512 420552003 772281461 1057003589 1057003589 831131170 567395288 868631592 868631592 912008290 912008290 150966296 391405292 924587313 924587313 589384250 565421155 565421155 512579364 512579364 211865501 211865501 1018202656 1018202656 622454313 876200865 876200865 545189802 508560030 508560030 521246856 521246856 347603026 340337802 313074058 134480096 63123696 416003440 416003440 179119188 171967984 171967984 50594704 53551648 53551648 50399744 50606208 50606208 58858256 58858256 53089904 29372800 295443460 430576998 839653163 839653163 445356702 891351060 891351060 875366699 854220734 888956773 888956773 887882646 1025550564 1025550564 159704460 159704460 103113072 38296336 38296336 50408848 137835812 137835812 23142816 136656964 136656964 433138022 438965398 453778592 453778592 140958884 21358724 636670152 636670152 46298824 46298824 26528352 758488882 758488882 514207603 497076540 938839962 938839962 177093653 901193233 901193233 1043993119 1043993119 782507161 649802200 322256488 29491744 29491744 59559664 59559664 58249232 37158272 37158272 4684272 551326864 551326864 666566704 666566704 543248432 102761800 102761800 554174324 724311244 724311244 1020795572 1020795572 903291418 903291418 737491888 708809617 685430241 650173620 258237152 674239689 674239689 336085682 643639019 825870963 825870963 948096289 948096289 832778595 93606888 634462856 634462856 605078025 8690185 429887131 517373539 517373539 372852237 975824151 975824151 858121843 260065557 419743782 419743782 970981863 970981863 667458675 543371649 288177796 70244592 338349192 338349192 290395874 290395874 280179522 276390850 272365314 310936800 318276450 318276450 281373088 61180240 321518162 321518162 13995520 12545900 470157774 470157774 277551618 277551618 240203972 423697660 423697660 281674778 545292320 562085985 766349620 766349620 548541249 706838595 875613983 875613983 948494405 948494405 678743368 678743368 563132416 563132416 424100007 968901124 968901124 567593697 483445384 362283074 330384396 330384396 322433010 300864706 519701582 519701582 158980776 158980776 262220188 262220188 296221794 1013431726 1013431726 498397965 139727084 118216200 249313026 273205137 459774902 459774902 624825179 624825179 296223328 37315424 37315424 603226973 849626010 922747188 1056964671 1056964671 235145221 903349878 903349878 889242147 402653190 226625482 226625482 917111263 917111263 447006386 914598015 914598015 530088986 153216008 740342900 740342900 299780875 52551984 424057283 584014789 1017932110 1017932110 875676443 572263745 572263745 185412660 586613568 586613568 311950298 927983035 936580043 936580043 843089016 308390784 303613568 323489938 323489938 107091122 514250822 514250822 368298376 354294708 204648706 107034140 435738212 435738212 405292640 405292640 188534580 188534580 138248484 601457105 601457105 191529908 748300197 748300197 173332012 173332012 97730384 565976580 775951872 1044807688 1044807688 1045016186 1045016186 1059892428 1059892428 757987708 1004781111 1004781111 998769783 998769783 490249659 311954978 640080298 640080298 327212113 303868192 91303344 87106344 78486632 42013824 156387328 220485764 342772780 407031942 510925350 510925350 521325496 521325496 455389458 466731558 499889160 499889160 275200386 253804860 253804860 584082141 1009963555 1009963555 659117108 826401978 826401978 731089408 730331253 15082177 87662888 629415264 687871616 687871616 338248072 338248072 88637714 285739024 285739024 236065308 236065308 236065308 537664001 537664001 410715680 674456577 674456577 697184588 1007225176 1007225176 632562998 833925824 833925824 194647668 194647668 722085300 722085300 710070933 188891681 38797328 38797328 47194768 47194768 283215208 283215208 772295437 772295437 617497678 617497678 798745711 961276519 982432830 982432830 523327144 523327144 114575640 114575640 89330416 47834832 259369404 259369404 115504000 195377760 195377760 164894544 244782632 251535936 251535936 69798648 6045304 44711232 90472704 90472704 70770312 83925920 83925920 135458060 201505476 201505476 147431048 126496592 87676936 228280484 228280484 136106256 204820184 204820184 114341056 105088640 61602800 75837952 125564856 125564856 350866850 350866850 83513408 34992074 45083450 126596450 333775466 333775466 82337960 86428008 86428008 128454056 291190816 437105444 437105444 51446224 176686372 176686372 27265136 28577152 58691632 137434772 137434772 42855504 155290644 155290644 93791472 60563064 704306917 704306917 693947420 615013637 586673664 1033328511 1033328511 977160073 830473361 830473361 429594023 301065186 551136992 1020110279 1020110279 215090836 248567454 898168578 898168578 385582241 454089138 454089138 443907478 292682852 168725056 168334916 43114196 15250104 280313392 280313392 233961632 447032132 738221716 738221716 1000508163 1000508163 127452792 875713907 875713907 735727037 735727037 634028761 410520719 348802984 348802984 314741152 300325506 453035030 453035030 109501790 329702224 329702224 305130760 305130760 483691204 483691204 173837238 515312251 515312251 375046998 793151809 793151809 779321664 779321664 903934599 903934599 919907523 919907523 798561337 798561337 404380868 404380868 633986988 633986988 1035684970 1035684970 951332099 951332099 669532516 827328474 827328474 411121864 411121864 386719788 673972852 673972852 362824023 258684656 369362124 408686214 689538598 689538598 429140611 27053664 92855904 92855904 85383720 153978240 231602348 231602348 179121492 437127514 501366060 501366060 478877786 478877786 282100404 282100404 96059712 320951414 320951414 455724071 680960481 680960481 295904002 295904002 285984736 809636803 809636803 275927745 300974882 547373568 547373568 273852610 273852610 141756800 175526916 175526916 135920660 38851476 175625472 186445600 186445600 189845056 189845056 413812548 413812548 424797256 424797256 535112084 535112084 448604208 1061446695 1061446695 1048580780 563124465 974259217 974259217 85219763 355075376 569377980 1059898691 1059898691 877079952 213960416 139013520 26520448 26520448 69206088 78201152 98596744 210536168 210536168 154884704 154884704 151332900 69386816 233534792 774342458 791532338 791532338 178475530 178475530 776643736 776643736 479728147 949018630 949018630 776069320 617095325 410857350 410857350 846309208 846309208 35393040 398986461 1028658328 1028658328 742339406 742339406 726050127 726050127 950719815 950719815 414493744 399907174 261304956 340777714 784309984 865382727 865382727 634012265 597027441 571564052 701608052 701608052 715149777 715149777 711230736 575053733 575053733 170236944 571023780 695842385 695842385 579401824 539902720 573611696 573611696 448375346 497161546 497161546 621741828 621741828 585126802 814928451 814928451 892464475 892464475 613953099 948176967 948176967 686351757 956417027 956417027 618018944 618018944 608927304 81004616 81004616 100796032 100796032 8439360 16827664 552092162 809670348 809670348 607650348 629655770 830083722 830083722 764729869 950866995 950866995 848499569 870272434 957187304 957187304 1000962026 1000962026 949379226 797229060 797229060 662964345 817987729 817987729 808020186 808020186 637804946 336424000 42729522 270131776 368311256 368311256 391172720 391172720 349913794 489735228 489735228 517005902 517005902 71534214 109269128 281593026 281593026 375933692 375933692 177556388 177556388 96508128 260450832 260450832 243343452 839026608 839026608 588648868 913619201 913619201 426826295 916744522 983613783 983613783 805630231 692449371 692449371 524472804 647381316 647381316 1048582274 1048582274 964213538 1029308838 1029308838 269491473 438547348 1043579051 1043579051 550273292 744918214 744918214 1044382201 1044382201 701026716 316374866 415690516 415690516 289823240 289823240 488370634 943493204 943493204 851369811 216586139 213913852 213913852 347411720 972900174 972900174 363349221 335754820 335754820 209850444 142874632 134217732 235145496 235145496 234103016 252191344 252191344 194457164 160567908 176991348 176991348 822375704 822375704 709101717 576719108 538760521 538760521 607804428 1054781006 1054781006 577621474 27972960 474417256 652663065 987751218 987751218 764288109 1018142724 1018142724 608690795 965314276 965314276 366951854 356602117 875290189 875290189 763621485 611479656 897371370 897371370 885293329 885293329 915637739 915637739 619918281 584319260 245901720 879174696 1012172711 1012172711 487084646 352471562 322879244 488392200 607865578 837811683 837811683 473736997 587448497 606688338 606688338 691538190 691538190 826309461 826309461 428685298 428685298 510207112 510207112 517508088 517508088 2393088 55050624 55050624 41420080 6293008 8455424 10098240 10098240 1254464 65536 73728 4557056 25776896 25776896 9179754 89734120 91894088 91894088 875279754 875279754 612237313 554530465 361553920 873013288 873013288 345253961 350265608 350265608 272737184 272737184 272629890 1045364214 1045364214 749478428 835284135 967917904 967917904 136724534 52988772 454653988 578782349 705273690 717874389 904192642 904192642 360235578 238618945 612492821 639252011 639252011 473683216 473683216 647319377 647319377 546233409 646863937 646863937 549770392 114764760 343721515 666402337 666402337 703689444 765549452 765549452 717303878 717303878 817399043 982829655 982829655 546822356 415623762 940265783 940265783 486552288 823268162 823268162 729679859 392556094 396160408 396160408 724666880 727213920 727213920 28831328 29764801 829160834 944981392 977008407 977008407 174186900 674618256 674618256 819082051 819082051 973564294 973564294 1043114410 1043114410 120733552 432053156 983325234 983325234 967360530 967360530 142802468 276835846 404553794 467800566 467800566 255983946 1041791284 1041791284 517947598 42806352 336121920 336121920 270054531 915978401 915978401 883501697 352063434 123996368 342061698 880513904 929296827 929296827 707314758 814377945 814377945 806116740 126467556 421787702 421787702 273452228 274292740 274292740 162316812 135592452 201978980 406976588 831131170 831131170 980296748 980296748 879937218 912008290 912008290 297840738 391405292 1072021565 1072021565 888589010 1057888916 1057888916 146487108 63481200 63481200 47572160 274500464 430383640 505852238 505852238 91511726 269504564 457443510 457443510 521246856 521246856 433525348 518700636 518700636 407959570 407269670 416003440 416003440 878909227 878909227 878850347 909578939 909578939 892605408 345581418 345581418 387582090 387582090 561907056 561907056 543228160 44939168 24272992 0 0 0 0 0 537666848 556083489 743811473 743811473 77121589 524382052 524382052 357614808 390616544 390616544 289665186 51070098 50408848 137835812 280060450 297273186 482327084 482327084 433138022 438965398 613365975 613365975 438305046 849875444 881203275 881203275 952786432 952786432 837816067 668293316 741234520 741234520 793903372 938839962 938839962 775693021 901193233 901193233 1043993119 1043993119 782507161 649802200 322256488 15210048 24139280 59559664 143774980 143774980 58888432 671882805 671882805 43275812 675806837 675806837 666566704 622043937 622043937 604579592 604579592 724311244 724311244 1020795572 1020795572 903291418 903291418 693592356 711540784 711540784 534088464 534088464 574294611 574294611 335812513 643639019 825870963 825870963 948096289 1070228475 1070228475 1002479900 711153749 711153749 674685248 674685248 666602434 858109986 858109986 745406577 975824151 975824151 858121843 260065557 419743782 903533867 970981863 970981863 667458675 1068580050 1068580050 597374577 831069665 831069665 816734704 816734704 545492000 66295248 65573248 310936800 318276450 318276450 281373088 6866304 6866304 11011392 159393344 159393344 169281164 169281164 277551618 277551618 240203972 415838896 415838896 54448104 690781532 690781532 562085985 540147776 548541249 737296148 1027788975 1027788975 611394441 611394441 678743368 678743368 563132416 563132416 424100007 968901124 968901124 567593697 824392193 824392193 148014370 93796968 419092972 419092972 679506287 679506287 95474048 645320241 645320241 262220188 206094816 551849440 984344338 984344338 593229483 752524819 752524819 562284068 405170641 405170641 773787766 773787766 624501856 849397031 849397031 1071026771 1071026771 922747188 1056964671 1056964671 940082696 1007731215 1007731215 449316048 402653190 217236160 217236160 12080204 74498952 77088192 77088192 3149840 24771968 86937120 96260392 96260392 4214784 2232576 5161216 17433728 137877081 783101277 783101277 599927840 122295712 101510196 586613568 586613568 933233849 933233849 936580043 936580043 843089016 379078050 271820434 393646482 393646482 392167098 385615962 172037826 191227264 345320010 350806126 350806126 435738212 435738212 417980290 273432624 330870582 330870582 306037312 601457105 601457105 187719512 748300197 748300197 755612176 755612176 708186969 708186969 775951872 1044807688 1044807688 1045016186 1045016186 281281776 941964935 941964935 1004781111 1004781111 932552763 919551195 364885331 362741354 539412914 580437585 580437585 546892576 6365568 6365568 78345984 78345984 89557904 89557904 275399980 407031942 510925350 510925350 438354198 212185654 455389458 466731558 499889160 499889160 149928028 202451092 202451092 620863980 1009963555 1009963555 659117108 826401978 826401978 731089408 730331253 206570124 257532092 257532092 255962536 255962536 318794768 373603066 373603066 113440728 251974656 251974656 267490860 267490860 246526812 477824552 477824552 324365102 324301956 134617092 165416592 444935086 889010500 889010500 833925824 954803655 954803655 834096894 834096894 776812957 900731275 900731275 611360800 885765026 885765026 380277442 441821334 441821334 291368610 1026401436 1026401436 1019266747 523240254 523240254 309611276 37200800 37200800 50088280 171091744 171091744 47834832 252775200 252775200 237316380 34603536 34603536 164894544 164894544 108203856 108203856 69798648 30157328 73944960 73944960 40617248 6888192 7415424 74301572 135458060 201505476 201505476 157011648 126496592 87676936 228280484 228280484 136106256 204820184 204820184 114341056 105088640 61602800 75837952 125564856 125564856 71959184 83513408 91020280 124933736 124933736 129620168 129620168 105720984 82337960 82337960 35162400 128454056 128454056 51655936 35717376 19921408 19921408 8653056 8653056 7604736 38408416 38408416 28974736 529408 21488832 21488832 139823852 760349336 760349336 693947420 693947420 260571177 17825792 996215542 996215542 595625312 830473361 830473361 429594023 301065186 551136992 975928188 975928188 395743504 590897921 898168578 898168578 579543824 579543824 0 36185928 79504656 79504656 8937650 82839010 282256364 282256364 388101218 388101218 805702432 805702432 597183200 1000508163 1000508163 977275012 875713907 875713907 758042726 463913101 924326855 924326855 872694168 872694168 314741152 116940250 43256400 72617680 100959232 100959232 1750528 220734476 220734476 369726619 1063669817 1063669817 1012986014 1012986014 355434280 685204971 685204971 717947366 749213402 749213402 182464594 579076312 608438409 608438409 1016071200 1016071200 249302748 249302748 448403286 1035684970 1035684970 968946289 968946289 728897667 728897667 942934804 942934804 453154200 917197988 917197988 673972852 362824023 117737732 369362124 408686214 689538598 689538598 429140611 617219374 917280502 917280502 88529064 827061792 827061792 1049853102 1049853102 788596189 606672102 501366060 388373346 388373346 282100404 282100404 26838626 49996016 49996016 411979104 434152576 825294880 825294880 806093379 805831683 807206337 837028323 837028323 702411632 702411632 550667904 550667904 146778897 141756800 175526916 201639948 240980492 240980492 240419544 240419544 216796620 244214988 244214988 413812548 413812548 345342290 345342290 535112084 535112084 371794538 1061446695 1061446695 583189026 563124465 974259217 974259217 496337604 355075376 569377980 1059898691 1059898691 877079952 213960416 139013520 33615680 19136544 69206088 78201152 98596744 210536168 210536168 159856232 154884704 151332900 35510992 226522912 774342458 791532338 791532338 605086370 605086370 776643736 776643736 479728147 949018630 949018630 617095325 617095325 959284014 959284014 567141324 567141324 761299532 761299532 1028658328 1028658328 952761086 469502733 726050127 726050127 950719815 950719815 185623588 579560112 599994609 599994609 784309984 865382727 865382727 634012265 597027441 191118689 52527924 17826336 691028004 711230736 711230736 575053733 575053733 170236944 571023780 695842385 695842385 579401824 539902720 573611696 573611696 222659996 603984404 603984404 714306730 714306730 357282389 1060681702 1060681702 892464475 892464475 426834822 948176967 948176967 686351757 956417027 956417027 344387904 344387904 92841136 92841136 81004616 557208912 575568256 575568256 546883392 116586758 517286622 517335774 517335774 909428596 1032588399 1032588399 764729869 950866995 999823246 999823246 953889383 957187304 957187304 1000962026 1000962026 949379226 286283962 273855618 109883536 289733664 289733664 323792186 397166848 397166848 394562656 394562656 295775488 368311256 368311256 391172720 391172720 349913794 143815808 830116993 1009988367 1009988367 432162949 781872513 781872513 649371644 838166525 938371967 938371967 763410677 740567393 560341384 260450832 243343452 890986888 890986888 826814771 743569527 762317536 762317536 743756659 769933853 769933853 331448424 692449371 692449371 887324160 887324160 305735442 1048582274 1070996223 1070996223 977442287 1006806756 1006806756 903608043 780247554 780247554 667358457 847473076 847473076 497496425 388446522 160481700 339441298 339441298 178881478 289823240 756159021 756159021 643227323 835773944 950496465 950496465 213913852 671433732 1017022464 1017022464 972900174 869004531 537294856 604102665 604102665 142606400 134217732 778514841 778514841 661064081 660869520 174674496 174674496 227634560 227634560 938215562 938215562 195364117 291367904 363939272 363939272 142944324 176950356 1050839092 1050839092 713126239 164177124 561068580 561068580 95170606 679349832 764288109 1024984800 1024984800 1019216079 495656256 495656256 431439392 479343684 479343684 89313960 89313960 567823395 897371370 897371370 926564576 926564576 922408923 915637739 619918281 584319260 245901720 879174696 1012172711 1012172711 487084646 1041931562 1041931562 643983368 643983368 419933079 295384674 261630054 587448497 606688338 710095384 710095384 691538190 826309461 826309461 564217036 745817781 745817781 709175445 665852249 665852249 75928232 585253137 585253137 41420080 8178960 8455424 10757248 45332032 49159632 49159632 34722624 4557056 6998144 7223296 7223296 7220480 7220480 6438144 70217792 70217792 13084680 361553920 361553920 873013288 873013288 345253961 290267168 290267168 14733120 25242850 272629890 1045364214 1045364214 749478428 835284135 967917904 967917904 288842118 140713788 454653988 578782349 705273690 717874389 904192642 904192642 259837884 235590684 235590684 639252011 639252011 473683216 473683216 647319377 647319377 546233409 646863937 646863937 549770392 2228224 2228224 2236928 3355392 703689444 703689444 544457601 717303878 717303878 486683900 486683900 378221658 529634416 529634416 427855970 427855970 210391490 371332410 371332410 419431556 419431556 289932450 270606594 284239616 284239616 182071424 28831328 29764801 829160834 829160834 279675138 279675138 271786560 15926016 15926016 12583040 12583040 973564294 973564294 1043114410 1043114410 967536710 967536710 983325234 983325234 844734174 579365160 604859453 604859453 571040821 467800566 467800566 985743610 985743610 1020417696 1020417696 558804489 361102447 336121920 270054531 915978401 915978401 880966889 880966889 664215595 62468656 880513904 929296827 929296827 538494802 621038912 621038912 144890376 126467556 910033362 910033362 614724680 456365074 608982181 608982181 10010624 10010624 8962112 8962112 810778384 980296748 980296748 1051699566 1051699566 251185116 297840738 297840738 1072021565 1072021565 888589010 1057888916 1057888916 64937712 54124832 54124832 35128848 144714756 430383640 505852238 534662100 534662100 494422576 506252574 506252574 304530358 433525348 433525348 518700636 518700636 464527380 464527380 470965103 778233266 878909227 878909227 878850347 909578939 909578939 892605408 345581418 345581418 387582090 387582090 561907056 561907056 543228160 296976612 434636262 976810143 976810143 512206414 1005263576 1005263576 872077299 308595122 336652728 1058799752 1058799752 1023884429 736868872 485729196 390616544 390616544 289665186 53612640 45089616 321560336 321560336 297273186 482327084 482327084 94338152 73926024 844682469 844682469 462557814 941472400 941472400 881203275 952786432 952786432 981915735 981915735 900841782 900841782 823989934 793903372 775693021 775693021 275395460 318541856 330251634 330251634 262418946 255404064 512277953 990714615 990714615 940318759 870255027 870255027 594220193 671882805 671882805 818862118 818862118 675806837 937522264 937522264 622043937 604579592 604579592 160692017 65701541 243013409 784285533 784285533 721758496 179956000 711540784 711540784 534088464 534088464 526165862 526165862 374076570 326397234 326397234 782547085 888679660 1070228475 1070228475 1002479900 711153749 711153749 674685248 674685248 666602434 858109986 858109986 745406577 745406577 380689690 683235090 716109865 716109865 903533867 903533867 993711942 993711942 1068580050 1068580050 974652951 831069665 831069665 816734704 816734704 545492000 50427632 65573248 65573248 63562016 47294880 47294880 46468576 328937202 328937202 159393344 159393344 403740002 403740002 91268384 91268384 476141836 519989759 828116643 828116643 1014633887 1014633887 940894147 933077533 479198286 998256911 1027788975 1027788975 681944437 681944437 314724354 314724354 740827110 903224043 903224043 943476715 944031879 944031879 874284684 824392193 250679398 250679398 419092972 419092972 679506287 679506287 95474048 645320241 645320241 156290592 524320808 524320808 984344338 984344338 856760993 811376723 752524819 624999012 571539472 45347664 773787766 773787766 624501856 849397031 849397031 1071026771 1071026771 1058335370 1058335370 924183099 940082696 1007731215 1007731215 469816014 469816014 311055266 135955720 918683863 918683863 412103962 859013127 859013127 463521002 250626400 86937120 663922441 663922441 255476392 796025641 796025641 235842472 15425640 599927840 599927840 102117560 102117560 73665744 86247720 933233849 933233849 656040314 811824112 811824112 379078050 308008544 393646482 393646482 392167098 385615962 172037826 261294876 345320010 350806126 350806126 317916370 417980290 417980290 273432624 330870582 330870582 306037312 222894120 240541332 240541332 255364868 773702224 773702224 755612176 708186969 712777896 712777896 542580884 201962352 311891314 311891314 281281776 941964935 941964935 889288651 932552763 932552763 919551195 364885331 362741354 539412914 580437585 580437585 546892576 90949384 84024968 145620908 145620908 176433158 372727930 431253206 431253206 341494880 350528010 350528010 344535210 158010848 158010848 84212860 541270345 541270345 202451092 897329890 897329890 620863980 583131345 583078433 642876096 642876096 390072890 354340600 586553737 586553737 257532092 255962536 255962536 125133712 373603066 373603066 113440728 251974656 251974656 267490860 267490860 541742053 541742053 477824552 558915733 558915733 554719836 638829229 638829229 889010500 889010500 747046940 954803655 954803655 834096894 834096894 776812957 900731275 900731275 611360800 885765026 885765026 380277442 441821334 441821334 291368610 1026401436 1026401436 1019266747 523240254 523240254 309611276 283222738 269822080 94609368 171091744 251460828 251460828 252775200 252775200 237316380 122983412 34603536 151301424 171843348 215104920 215104920 63201880 114608856 114608856 73944960 88889880 88889880 125204408 125204408 84285480 86454304 254226272 254226272 110630908 31506056 85712792 85712792 11579200 82462232 111688328 117815384 117815384 10485312 48279680 48279680 50226256 50226256 82458272 91020280 124933736 124933736 129620168 129620168 105720984 34933896 21229728 21229728 7538048 21828736 158859940 158859940 3385600 141563668 141563668 56892976 56892976 39981456 153295492 153295492 24235712 147567268 147567268 139823852 760349336 760349336 537030788 600173732 600173732 725326860 725326860 1019856045 1019856045 925521804 925521804 1044111973 1044111973 668591865 975928188 975928188 476518542 604176427 784630090 784630090 765493621 579543824 465404830 338277632 338277632 137878144 798485809 798485809 282256364 613065497 613065497 430083740 805702432 805702432 597183200 597183200 977275012 977275012 139203870 758042726 758042726 463913101 924326855 924326855 872694168 872694168 183265398 287403722 499525822 499525822 421053228 421053228 304911918 270982962 271506690 369726619 1063669817 1063669817 1012986014 1012986014 839554577 839554577 685204971 717947366 749213402 749213402 541728419 719119472 719119472 453096039 1016071200 1016071200 249302748 249302748 448403286 448403286 763697404 968946289 968946289 728897667 728897667 942934804 942934804 453154200 917197988 917197988 166820367 8388608 8388608 542729112 640206105 640206105 640206105 640206105 617219374 917280502 917280502 812487558 1053289090 1053289090 1049853102 1049853102 788596189 606672102 335939662 268699650 2050 0 0 0 3676256 29237088 29237088 285608705 825294880 825294880 806093379 805831683 807206337 837028323 837028323 702411632 702411632 550667904 550667904 274729024 302449348 505444816 505444816 385141722 240980492 240419544 240419544 216796620 518837140 518837140 446379290 446379290 373332660 373332660 329328346 329328346 4530320 268708192 295772514 306448960 306448960 272572864 496337604 496337604 767838997 767838997 799383936 799383936 646017873 571588689 62913040 33615680 19136544 556407496 614193312 614193312 151502912 159856232 159856232 83379888 63997832 35510992 54804312 267781120 420484616 420484616 605086370 605086370 671749125 671749125 138540161 554239104 554247201 554247201 408420527 959284014 959284014 567141324 567141324 761299532 761299532 450380947 952761086 952761086 469502733 227538024 63511760 87631656 87631656 259722565 579560112 599994609 599994609 671179056 671179056 587940961 587940961 581639265 545261780 680526292 680526292 590627120 644123420 644123420 90964904 6556032 6556032 51584 1632320 217056064 217056064 86901644 114394748 222659996 240005982 603984404 603984404 714306730 714306730 970624342 1060681702 1060681702 881832426 881832426 338759301 68748288 68231688 67659264 3721088 4243584 73057032 73057032 92841136 92841136 57807208 557208912 575568256 813043600 813043600 0 850540545 850540545 381021018 909428596 1032588399 1032588399 757996845 757996845 999823246 999823246 953889383 436471496 475897618 962163770 962163770 494023849 286283962 308118210 308118210 289733664 289733664 369159328 397166848 397166848 394562656 394562656 295775488 128257728 271640512 271640512 16368386 347091468 351381450 830116993 1009988367 1009988367 432162949 781872513 781872513 649371644 838166525 938371967 938371967 763410677 740567393 560341384 153264880 89338904 890986888 890986888 1011348647 1011348647 861195795 762317536 527860634 527860634 858138974 858138974 556880547 331487010 887324160 887324160 305735442 798765968 1070996223 1070996223 977442287 1006806756 1006806756 903608043 777038461 777038461 667358457 847473076 847473076 757336365 757336365 566773216 339441298 339441298 178881478 430080080 756159021 756159021 643227323 344527313 950496465 950496465 169422596 671433732 1017022464 1017022464 927557250 872464395 537294856 604102665 604102665 537972752 537972752 778514841 778514841 661064081 660869520 785584913 785584913 642974116 640757026 938215562 938215562 536365450 457369273 363939272 1068702331 1068702331 692987041 1050839092 1050839092 713126239 164177124 561068580 561068580 559229601 676793037 676793037 1024984800 1024984800 1019216079 1009592750 1009592750 431439392 692532919 752271632 1034369391 1034369391 646742252 889767786 1033176568 1033176568 926564576 922408923 306583698 414059796 568887324 791201085 791201085 682955960 521276684 607013646 1041931562 1041931562 819479338 819479338 763661756 454769087 454769087 218570836 260450500 710095384 710095384 175066308 176683092 855272996 855272996 745817781 745817781 709175445 665852249 665852249 236327164 585253137 585253137 11609648 36218112 44094864 47436576 47436576 49159632 348223370 348223370 339727648 351189482 552429731 552429731 824454562 824454562 894193761 894193761 629341675 548279368 285456745 294599778 837748738 837748738 7678848 27821664 27821664 5351424 5351424 31207336 472967104 472967104 496919310 496919310 352586184 352586184 291165858 140713788 132047534 386998266 386998266 238553298 268492188 462836254 462836254 245793146 235590684 490055720 517135954 517135954 487422936 189215808 126915784 126915784 100696064 132738224 132738224 124094400 124094400 279212058 279212058 565221410 565221410 872661515 872661515 416359110 416359110 129741454 941975326 941975326 529634416 621494877 621494877 201945466 986199342 986199342 965358215 419431556 504889882 504889882 959185985 959185985 552294245 176077568 552729537 946605984 946605984 464180598 739406157 739406157 441337496 441337496 823911410 823911410 635208204 736752960 736752960 649146257 967536710 967536710 779300272 844734174 844734174 579365160 604859453 604859453 612408440 815687180 815687180 985743610 985743610 1053395343 1053395343 574399836 574399836 553440648 397389812 575658568 879448240 880966889 880966889 664215595 596288057 388608632 388608632 841023921 841023921 621038912 642256904 829927985 829927985 910033362 910033362 614724680 456365074 703564384 703564384 700472428 700472428 698877285 499256677 810778384 810778384 573230483 1051699566 1051699566 251185116 795029949 795029949 130241014 104148832 104148832 62601072 43528480 43248976 54124832 309657168 873073220 873073220 182193876 752324854 752324854 534662100 494422576 506252574 506252574 325125554 205908108 404867816 404867816 153260228 464527380 464527380 470965103 778233266 778233266 822085796 944767015 944767015 156238627 155849892 912202666 912202666 711143829 370812319 34603536 14423168 14423168 296976612 434636262 976810143 976810143 512206414 1005263576 1005263576 872077299 308595122 336652728 1058799752 1058799752 1023884429 736868872 485729196 63447930 40444928 306841056 323096754 323096754 321560336 321560336 250112574 250558042 323493138 450693374 450693374 844682469 844682469 462557814 941472400 941472400 676857477 277745200 906013230 981915735 981915735 900841782 900841782 823989934 649899461 672509793 672509793 275395460 318541856 330251634 330251634 262418946 255404064 512277953 990714615 990714615 940318759 870255027 870255027 594220193 594220193 457314486 818862118 818862118 541367379 937522264 937522264 385896754 276484904 160692017 160692017 147920836 397164445 972556263 1016740671 1016740671 989502295 989502295 677282848 556847913 713560179 713560179 374076570 374076570 308167984 308167984 198389472 198389472 87945000 529691118 697691172 697691172 496595715 133879800 133879800 561901488 561901488 805523457 805523457 124319122 109074192 781297154 781297154 733773371 674238568 674238568 993711942 993711942 798491957 974652951 974652951 781715166 172614804 442270594 442270594 50427632 50427632 65049696 65049696 63562016 47294880 47294880 46468576 328937202 328937202 152760928 152760928 403740002 403740002 493697172 493697172 476141836 519989759 828116643 828116643 1014633887 1014633887 940894147 933077533 329385521 998256911 998256911 919937714 919937714 681944437 145303751 328462962 740827110 903224043 903224043 943476715 944031879 944031879 874284684 287507490 287507490 274760166 292084992 292084992 438313766 438313766 141377028 141377028 672714500 672714500 944015491 944015491 894713860 856760993 856760993 811376723 706014251 624999012 571539472 437328576 674990399 674990399 875880784 875880784 924409131 924409131 1072947571 1072947571 1058335370 924183099 607508020 607508020 600311029 469816014 959104497 959104497 264802886 918683863 918683863 412103962 859013127 859013127 463521002 338916650 338916650 663922441 663922441 435929062 796025641 796025641 641703049 641703049 626264345 242977196 102117560 102117560 73665744 86247720 86247720 9110544 105591960 105591960 33567880 358185728 358185728 26602130 24907680 338249328 338249328 43607338 261294876 327204978 327204978 303055456 246489908 246489908 136336916 200487924 243597848 243597848 226750572 222894120 240541332 240541332 545937416 794118001 794118001 254030240 691468396 712777896 712777896 123276729 756880492 756880492 730865212 69012800 422552358 422552358 245821524 121635000 121635000 298852512 299029218 357716650 367971202 367971202 340264074 285367688 550227032 744694000 744694000 282224366 465824018 465824018 486822982 486822982 1025837224 1025837224 878992873 688467170 688467170 422196418 422196418 541270345 541270345 178794508 897329890 897329890 692071725 692071725 564987877 605061397 605061397 654361088 655360569 806361763 806361763 375845638 437672726 437672726 402727690 369607168 138004676 205949980 205949980 233230928 233956308 233956308 541742053 541742053 206045260 558915733 558915733 554719836 638829229 638829229 75299585 42145920 909406288 909406288 791743388 791743388 239339676 239339676 218316644 218316644 222372012 222372012 312914446 471030098 471030098 863551139 863551139 81598631 700000410 775778376 775778376 76072817 866936818 866936818 503982094 503982094 579821237 579821237 251460828 239987420 239987420 186015748 186015748 51166672 151301424 171843348 215104920 215104920 66274000 114608856 114608856 68464816 88889880 88889880 125204408 125204408 139076524 141616388 631374905 631374905 254412084 616694973 616694973 192296492 782824073 782824073 766221465 604118384 122818296 23142816 46791632 46791632 103314400 128549400 128549400 76608488 87771688 87771688 88458920 88458920 86297128 82004552 82004552 28185824 68223304 68223304 158859940 158859940 52136576 141563668 141563668 56892976 56892976 39981456 312790050 312790050 290272432 290272432 276193058 276193058 558678132 558678132 537030788 600173732 600173732 725326860 915539547 1019856045 1019856045 925521804 925521804 1044111973 1044111973 668591865 515487783 476518542 476518542 604176427 784630090 784630090 765493621 672014880 672014880 452927369 545573968 545573968 798485809 798485809 70361140 613065497 613065497 430083740 990120732 990120732 924949114 924949114 406245517 1026245168 1026245168 898295242 878975088 878975088 665374342 527175102 527175102 429689390 183265398 287403722 499525822 499525822 421053228 421053228 304911918 296968054 296968054 271506690 423760038 423760038 537940624 537940624 839554577 839554577 35309219 436282768 491653504 541728419 541728419 719119472 721718884 721718884 927205563 932204644 932204644 564118254 900539695 900539695 763697404 763697404 640421145 640421145 1379097 461441032 461441032 381759550 1007413092 1007413092 600620139 667485712 667485712 1028316348 1028316348 971079095 690488213 1055733063 1055733063 810293314 812487558 812487558 1053289090 1053289090 409488538 443030916 443030916 453655612 453655612 495914304 495914304 289794210 445541444 445541444 143279174 143279174 295054086 295054086 27872224 33325408 33325408 295492096 831397024 831397024 819628576 819628576 956664432 956664432 850351633 643237004 643237004 878187020 878187020 385141722 110412698 101761560 114682584 117295832 518837140 518837140 446379290 446379290 373332660 373332660 494811428 494811428 379067834 448820606 448820606 306448960 306448960 180755140 374796608 374796608 767838997 767838997 799383936 799383936 646017873 571588689 26195473 25949280 16413984 556407496 614193312 614193312 554298504 132214400 104915648 109052152 109052152 20971680 26615752 603066646 664928842 664928842 575820358 575820358 671749125 671749125 355250642 873863267 873863267 647114273 761119261 761119261 162978236 581372673 761620997 761620997 676702564 156402336 33727488 33727488 175756436 203358212 203358212 194060916 194060916 259722565 259722565 222385745 161823096 72220741 16853024 264192 2048 48245184 545261780 680526292 680526292 590627120 644123420 644123420 34376112 6556032 6556032 51584 1632320 217056064 639120137 639120137 123063868 738300065 738300065 327101362 872459926 872459926 772022905 970624342 970624342 980815523 980815523 638683256 1030754222 1030754222 489162030 424359078 990580755 990580755 335597704 335597704 113267504 113267504 28496736 603455376 603455376 813043600 813043600 1012531984 1012531984 850540545 769153020 769153020 690184011 765728098 1007557647 1007557647 557856781 179039137 856654145 856654145 907735372 962163770 962163770 955923978 204216850 308118210 308118210 59591696 92798008 369159328 369159328 42864746 10749248 142639204 142639204 14889408 271640512 271640512 157405416 376156513 857306330 857306330 1050334815 1050334815 478901279 336228436 105720984 1048971450 1048971450 797916285 324343375 201664524 201664524 474889902 487720580 487720580 723689494 874177435 1011348647 1011348647 861195795 490772988 527860634 527860634 858138974 858138974 556880547 408825408 986841222 986841222 537920260 687932869 902313623 902313623 581490530 622487239 670775289 670775289 777038461 777038461 595786964 595786964 564169165 757336365 757336365 566773216 218417196 101207092 85984024 430080080 430080080 405984006 231362560 205656204 140558724 140558724 169422596 169422596 418601480 751276674 872464395 872464395 458539715 415562328 218272300 537972752 537972752 251678765 104906904 140842521 578493181 785584913 785584913 642974116 640757026 302533769 536365450 536365450 560122592 560122592 1068702331 1068702331 897833274 1036117083 1036117083 596457793 489002353 378118448 378118448 559229601 713034448 713034448 375783482 375783482 805703980 1009592750 1009592750 21834912 692532919 752271632 1034369391 1034369391 950601587 1045132500 1045132500 1033176568 358489634 358489634 306583698 482911363 638174977 791201085 791201085 521276684 521276684 607013646 621303915 621303915 819479338 819479338 763661756 991954487 991954487 624152707 673269932 673269932 623037056 693293583 752014029 872843974 872843974 153830159 75233160 75233160 155736160 236327164 236327164 173215888 18031296 11609648 37914624 44094864 47436576 813421331 813421331 348223370 617167761 617167761 351189482 552429731 552429731 824454562 824454562 931762930 931762930 629341675 917533403 917533403 639197880 837748738 837748738 616571401 902890499 902890499 830474915 546310306 31542720 472967104 472967104 430197132 430197132 362807658 352586184 291165858 230928592 230928592 239959064 239959064 238553298 268492188 462836254 462836254 426849026 426849026 490055720 517135954 517135954 487422936 189215808 126915784 126915784 66475584 132738224 132738224 124094400 124094400 611797827 611797827 565221410 565221410 872661515 872661515 416359110 416359110 129741454 941975326 941975326 729088281 729088281 621494877 596249992 986199342 986199342 965358215 829819296 808263778 805311105 980768115 980768115 552294245 176077568 552729537 946605984 946605984 464180598 739406157 739406157 441337496 441337496 823911410 823911410 635208204 736752960 736752960 649146257 635388748 33558592 51644976 62668624 62668624 51716096 51716096 289936266 612408440 815687180 815687180 639360116 885792962 1053395343 1053395343 574399836 574399836 553440648 397389812 575658568 810791945 810791945 657770968 916338874 916338874 388608632 388608632 841023921 841023921 376717698 642256904 829927985 829927985 575618955 17467961 2622720 2622720 703564384 703564384 700472428 973213719 973213719 719326773 512241795 810269314 822246941 822246941 791360829 255724769 795029949 795029949 186669949 666273313 666273313 667717224 667717224 621920572 627303465 814815105 873073220 873073220 851547836 752324854 801351686 801351686 627971392 290198706 325125554 325125554 64278764 255879620 366533024 366533024 348004170 120272184 120272184 58650576 803131846 822085796 944767015 944767015 156238627 155849892 912202666 912202666 917773533 917773533 537920640 579473936 579473936 50371264 49383648 49383648 54167840 54167840 135287140 135287140 642288215 642288215 825231092 825231092 611427646 763417387 998755388 998755388 865674867 810558704 306841056 323096754 323096754 86286366 86286366 63209270 250558042 323493138 450693374 450693374 444737832 389861178 389861178 412168210 412168210 1047048818 1047048818 906013230 906013230 516270874 527195672 798426492 798426492 649899461 672509793 672509793 825643743 878338553 878338553 762521171 803913568 803913568 317363408 24268832 41370240 41370240 4324048 142808132 142808132 172233792 181279956 181279956 134252676 167956500 436707392 436707392 4815042 17616576 18139680 147920836 147920836 397164445 972556263 1016740671 1016740671 989502295 989502295 556847913 556847913 713560179 713560179 276931436 934503033 934503033 308167984 1053295101 1053295101 126038136 762352441 780937484 780937484 1027653800 1043333919 1043333919 1042318107 913468279 965466615 965466615 227810827 598002452 781297154 781297154 733773371 765739794 765739794 420223533 572522544 805834812 1057625151 1057625151 546214497 546214497 580950048 580950048 548389216 29194432 56100352 57190576 57190576 43879424 43879424 14745600 39781248 54434816 604767136 896532514 896532514 392008510 493697172 493697172 577834988 577834988 366043122 460603760 460603760 991518768 991518768 244359791 689974862 689974862 493637413 919937714 919937714 822209313 675468935 890950784 890950784 809161130 422762836 422762836 340156034 218034188 272889728 413502368 413502368 506826040 506826040 292084992 176686342 242183152 242183152 176730152 672714500 672714500 944015491 944015491 894713860 339478794 508912134 508912134 326395218 558363541 558363541 437328576 674990399 674990399 875880784 875880784 924409131 924409131 1072947571 1072947571 881754252 393108511 607508020 872888335 874453563 924586496 959104497 959104497 264802886 945556891 945556891 926257462 1014263218 1014263218 332014090 338916650 338916650 534357988 534357988 435929062 509732016 509732016 641703049 853698851 853698851 877020458 877020458 819143177 579022929 73605137 331686232 563160170 667952825 865243168 865243168 829565667 358185728 881230977 881230977 338249328 338249328 554284338 665036325 709722866 709722866 1025485143 1025485143 540934000 402747012 200487924 214016852 226750572 226750572 134791745 128671569 128671569 545937416 794118001 794118001 254030240 691468396 691468396 204062788 656679480 756880492 756880492 730865212 219439762 233455894 233455894 339903598 339903598 121635000 142626996 176547924 235167816 235167816 381898956 381898956 434826021 550227032 744694000 744694000 282224366 465824018 465824018 486822982 486822982 1025837224 1025837224 878992873 688467170 688467170 422196418 422196418 292033704 162073768 111487320 585105800 645922905 692071725 849906196 849906196 708101919 352370730 654361088 655360569 806361763 806361763 710012949 940642318 940642318 402727690 369607168 138004676 630397977 630397977 699207416 755898865 755898865 663492937 663492937 639419137 639419137 671822849 671822849 671088832 419898753 375665975 375665975 909406288 909406288 337764947 380839422 858805024 858805024 652437743 652437743 416840010 584021860 949434264 949434264 753604790 863551139 863551139 84144168 700000410 775778376 775778376 76072817 866936818 866936818 503982094 504502800 579821237 579821237 242207256 230559748 95063840 186015748 186015748 51166672 145127284 145127284 19465472 32457808 66274000 66274000 53956192 53956192 52052096 52052096 51576208 51576208 183017253 801333889 801333889 631374905 254412084 616694973 616694973 192296492 782824073 782824073 766221465 730392836 150852805 139142224 172110848 172110848 103314400 128549400 128549400 76608488 87771688 87771688 88458920 88458920 86297128 82004552 92723304 92723304 92698984 100137960 100137960 67533344 84640128 84640128 87345960 87345960 87326720 46469120 312790050 312790050 290272432 290272432 276193058 276193058 21942402 21628992 277402946 277402946 329275499 596808817 915539547 915539547 269284867 126087288 628838449 628838449 33554448 539100466 857346611 857346611 575869591 538120229 440480407 262828483 316642431 672014880 672014880 452927369 545573968 545573968 211421261 487588398 487588398 490801432 490801432 300941586 990120732 990120732 924949114 924949114 406245517 1026245168 1026245168 898295242 878975088 878975088 665374342 45668610 75828234 75828234 336421888 336421888 335857674 445431884 445431884 300795774 205465230 296968054 296968054 288959616 808902285 899023395 899023395 865786522 590923674 555271713 890816043 890816043 706905363 705322004 186524240 186524240 721718884 721718884 927205563 932204644 932204644 564118254 900539695 900539695 745540244 705827145 743583836 743583836 823531834 909257722 909257722 688344963 1007413092 1007413092 674040263 674040263 667485712 1028316348 1028316348 971079095 690488213 1055733063 1055733063 810293314 810293314 268960256 270009858 375161220 409488538 409488538 378407088 453655612 453655612 495914304 495914304 289794210 445541444 445541444 304869138 143279174 295054086 295054086 565809185 835727522 835727522 546517569 831397024 831397024 819628576 819628576 956664432 956664432 850351633 858469808 858469808 878187020 878187020 341075544 348652746 511198042 511198042 469811214 73305108 73305108 10535232 373738564 409454654 409454654 494811428 494811428 397097432 448820606 448820606 291701744 330834738 330834738 374796608 856812675 856812675 602360866 602360866 371965496 371965496 88670608 88670608 572674304 572674304 556009761 103827552 554298504 554298504 132214400 920593177 920593177 649932089 260148664 693127091 693127091 664928842 664928842 575820358 575820358 639115778 639115778 558072274 873863267 873863267 647114273 761119261 761119261 785925108 785925108 761620997 761620997 676702564 622348401 622348401 605135369 705553920 705553920 210840084 254939964 254939964 194808420 111223040 203901208 203901208 47030560 63267184 63267184 33827072 48245184 48245184 42000576 627435656 627435656 553698593 105793160 105793160 50892032 138985472 155373732 723008148 723008148 639120137 639120137 123063868 738300065 738300065 513864088 1017360994 1017360994 772022905 772022905 1051010308 1059926889 1059926889 638683256 1030754222 1030754222 489162030 805380099 990580755 990580755 615809288 615809288 608817376 113267504 39045632 603455376 603455376 855006976 855006976 1012531984 1012531984 606782744 769153020 989463546 989463546 860365953 1007557647 1007557647 731660054 731660054 856654145 856654145 907735372 907735372 955923978 955923978 353899024 386536506 386536506 60429882 84169376 282955640 282955640 10028640 28385632 142639204 142639204 14889408 16978372 151130148 268960768 376156513 857306330 857306330 1050334815 1050334815 865660945 865660945 105720984 1048971450 1048971450 797916285 563978829 579863121 1008471134 1008471134 487720580 487720580 256510624 135088136 252122164 252122164 244474648 917901929 917901929 232135404 893393096 893393096 671513103 974247169 986841222 986841222 701420001 687932869 902313623 902313623 899437531 983244352 983244352 849245560 849245560 677513660 214370904 77617312 234901864 234901864 222988464 278772450 507603026 507603026 230363658 277037664 277037664 348014606 348014606 205656204 407471706 407471706 101234440 34082048 544548995 915559044 915559044 785654425 545682136 415562328 541327652 599918837 599918837 628362153 628362153 657719440 657719440 142022376 597694112 597694112 8667776 8667776 17164320 708839972 708839972 560122592 541855294 837293091 897833274 1019232448 1019232448 596457793 489002353 904729588 904729588 544810881 713034448 713034448 96209200 96209200 387447354 792245146 792245146 437636372 938631982 938631982 179099623 37098054 950601587 1045132500 1045132500 290908980 358489634 438865432 473221902 482911363 638174977 716703573 716703573 472984401 281761576 894195840 894195840 108318424 129551120 129551120 100730562 991954487 991954487 624152707 676098564 676098564 623037056 693293583 752014029 872843974 872843974 335807308 6427008 6427008 6422528 0 0 0 0 0 37914624 38197392 40294608 813421331 813421331 886315648 886315648 617167761 143420078 186780726 621070140 789256181 789256181 931762930 931762930 499159605 917533403 917533403 639197880 639197880 616571401 616571401 902890499 902890499 830474915 546310306 304998010 409883194 432400614 451219206 451219206 362807658 210266002 189915828 230928592 230928592 239959064 239959064 205920396 343671364 343671364 291889952 426849026 426849026 154658822 104375688 104375688 112512416 112512416 105215824 105215824 53615760 54785888 59986784 70770768 70770768 611797827 611797827 543162249 510182814 510182814 177373215 445713491 975132275 991479351 991479351 565785714 729088281 769051845 769051845 596249992 596116593 79966649 829819296 829819296 819140128 832127500 980768115 980768115 221802532 62146368 62146368 26114368 33812496 59663848 73664904 93397248 93397248 91276200 91276200 79759488 87599024 87599024 179850524 179850524 511105567 926695567 926695567 680002629 127344240 633049120 633049120 289936266 300942466 300942466 90703168 76022024 76022024 4928640 4928640 89836808 178082520 178082520 272757387 344520770 631307688 815319171 815319171 916338874 916338874 821825475 339755026 590349449 590349449 376717698 354018858 810413187 885771331 885771331 854612160 854612160 862286019 862286019 235940981 569368898 973213719 973213719 719326773 512241795 810269314 822246941 822246941 791360829 255724769 533434560 533434560 620125904 666273313 666273313 667717224 667717224 621920572 627303465 814815105 814815105 851547836 914490244 1037185279 1037185279 801351686 627971392 443228326 443228326 443098518 354911288 354911288 366533024 366533024 605476298 970454910 970454910 335621043 803131846 803131846 463221037 891436303 891436303 887362542 887362542 559940001 1056900776 1056900776 580270400 851645698 851645698 50371264 49383648 136427844 136427844 38654608 584769377 614878576 723683388 723683388 825231092 825231092 611427646 763417387 998755388 998755388 865674867 810558704 309404562 152700692 152700692 31393616 46282928 46282928 176291840 176291840 168171540 444737832 444737832 389861178 453072472 453072472 908691478 1047048818 1047048818 709389629 100887142 799843672 799843672 401207891 276040718 462156918 462156918 848434356 1057635391 1057635391 878338553 1015294344 1015294344 803913568 506996353 948519895 952444999 952444999 952955207 952955207 855583460 730444884 314683575 188743860 441032852 676660246 685675536 685675536 312417744 312417744 49616064 18200104 85595688 134552176 134552176 112407384 102773312 154344368 154344368 33563520 68708096 656689105 656689105 133736058 934503033 934503033 305369208 1053295101 1053295101 126038136 762352441 780937484 780937484 1027653800 1043333919 1043333919 1042318107 913468279 965466615 965466615 1020614260 1020614260 598002452 419621226 419621226 765739794 765739794 915198475 915198475 856530132 1057625151 1057625151 546214497 764225148 764225148 580950048 548389216 54155584 656982345 656982345 566256432 548852096 548852096 5087360 3086848 4489216 604767136 896532514 896532514 392008510 491506567 491506567 577834988 968696183 968696183 366043122 663477817 991518768 991518768 718311668 689974862 689974862 601122993 753973786 822209313 822209313 675468935 890950784 890950784 857465511 484592020 484592020 249860822 619847900 730670021 730670021 964672301 964672301 581651920 581651920 175178464 242183152 242183152 176730152 36368608 11600960 11600960 312551960 541704336 541704336 508912134 508912134 326395218 596743192 630978153 630978153 185077262 907948834 907948834 822608931 822608931 820256594 820256594 881754252 881754252 663958777 705056806 872888335 874453563 924586496 924586496 169218392 169218392 945556891 945556891 926257462 1014263218 1014263218 12649632 22307848 66222756 534357988 534357988 515816956 515816956 342142896 342142896 853698851 853698851 877020458 877020458 819143177 670099072 670099072 331686232 563160170 667952825 865243168 865243168 829565667 281288714 881230977 881230977 807539712 841106691 841106691 665036325 709722866 709722866 1025485143 1025485143 540934000 402747012 137041552 152251244 152251244 251990540 251990540 606995464 606995464 539367681 592052656 592052656 586204113 586204113 94422696 208972768 656679480 656679480 206871188 253848312 253848312 233455894 233455894 339903598 339903598 214998204 239359556 239359556 235167816 235167816 381898956 381898956 434826021 481603871 567363184 966264655 966264655 1063911445 1063911445 839118867 352846890 520635692 520635692 76207176 76207176 145362980 145362980 151131460 682361157 682361157 549521610 677457357 677457357 409832711 849906196 849906196 708101919 630760979 394387578 357761578 440615043 710012949 710012949 940642318 940642318 236456716 236456716 97332456 630397977 630397977 699207416 755898865 755898865 663492937 663492937 639419137 639419137 671822849 671822849 671088832 419898753 375665975 375665975 486230103 486230103 337764947 380839422 858805024 858805024 814430664 814430664 416840010 884155066 949434264 949434264 753604790 487835703 427668003 84144168 552450961 552450961 507956877 68498454 303307110 303307110 204281882 504502800 504502800 286900434 296882180 296882180 270807200 943225159 943225159 271439680 961045509 961045509 19465472 64767040 589074080 596775472 596775472 582351713 582351713 579203584 55827224 126701320 183017253 801333889 801333889 758833404 758833404 697541345 216765081 164807476 164807476 28570464 775228816 775228816 211297368 211297368 172110848 172110848 103795064 106576856 113559768 127317664 127317664 2228224 2228224 43193872 43193872 61841792 92723304 92723304 92698984 100137960 100137960 67533344 84640128 84640128 87345960 87345960 87326720 46469120 46469120 5842112 0 19138560 86247424 361294856 421085190 421085190 294928898 336354632 336354632 202788872 202788872 75698730 294261858 294729216 898109814 898109814 241698204 539100466 857346611 857346611 575869591 684435589 684435589 921752863 921752863 1010846558 1010846558 556761847 539919760 539919760 166894865 487588398 487588398 490801432 490801432 78981560 316331632 316331632 578973872 578973872 632537443 632537443 892883144 892883144 342891562 342891562 4537984 16779608 479463372 479463372 400371450 336421888 335857674 445431884 445431884 300795774 205465230 154810156 288959616 288959616 808902285 899023395 899023395 865786522 590923674 826402086 890816043 940659850 940659850 859992253 877452867 909229687 915955239 915955239 400346874 1061262666 1061262666 165229423 173066960 745540244 745540244 749418132 1061097001 1061097001 1040135907 909257722 909257722 688344963 688344963 671231111 674040263 674040263 577496592 735137764 735137764 587438295 458226870 867233777 867233777 656724824 375540255 834416082 834416082 600380005 946086951 946086951 814191013 814191013 788788715 437408074 437408074 299767176 1007908196 1035563540 1035563540 154533952 19027041 19027041 565809185 835727522 835727522 546517569 268436514 278989984 278989984 870922082 870922082 332704400 325346032 858469808 858469808 446900740 446900740 375147482 395997822 511198042 511198042 498006222 517058056 517058056 374138262 373738564 409454654 409454654 348790810 397097432 397097432 33827538 291701744 291701744 330834738 330834738 304883330 856812675 943464589 943464589 602360866 371965496 371965496 88670608 88670608 572674304 572674304 556009761 54528401 74711936 74711936 67206193 920593177 920593177 649932089 260148664 693127091 693127091 456972614 210109734 362873554 362873554 639115778 639115778 558072274 359952960 596183568 1016781553 1016781553 203614609 785925108 785925108 607496353 607496353 128822584 622348401 622348401 676203008 705553920 705553920 562440237 562440237 785198796 785198796 781398621 704184817 617464073 617464073 577960520 63267184 33827072 33827072 42000576 42000576 627435656 627435656 553698593 171772548 570845989 570845989 158225152 692159152 723008148 723008148 699235640 727869202 812669911 812669911 414253114 513864088 1017360994 1065628504 1065628504 654325294 1051010308 1059926889 1059926889 510133662 510133662 92873214 884254810 884254810 805380099 375574857 615809288 615809288 608817376 58779368 69473280 126890784 541225537 855006976 855006976 641924867 809488537 809488537 828249014 989463546 989463546 860365953 860365953 722863830 773864196 773864196 757336365 659305461 1007736450 1007736450 787480029 337513736 353899024 386536506 386536506 60429882 84169376 282955640 282955640 203855390 439611670 655028489 763921518 763921518 688600101 377536602 377536602 564684265 564684265 210633852 764033148 1000579221 1000579221 865660945 166615855 308838866 308838866 1000002163 1000002163 579863121 1008471134 1008471134 31726660 256510624 739240226 979692215 979692215 959247931 805857199 917901929 917901929 475060874 893393096 893393096 690444323 974247169 974247169 701420001 701420001 969212696 969212696 668752208 899437531 983244352 983244352 849245560 849245560 677513660 256969776 217704396 217704396 117235624 117235624 278772450 507603026 507603026 230363658 230363658 514158096 514158096 348014606 484461188 484461188 407471706 35529876 955540570 955540570 915559044 915559044 785654425 545682136 416548956 712452448 712452448 599918837 628362153 628362153 657719440 657719440 644359421 618791501 736541987 736541987 715911184 465854892 988872957 988872957 394005494 541855294 837293091 837293091 1019232448 1019232448 554287153 483894827 904729588 904729588 602666388 581483849 139461252 139461252 259356912 387447354 792245146 792245146 437636372 938631982 938631982 934770402 518132190 871023322 871023322 606158912 879288633 879288633 438865432 473221902 473221902 245375312 245375312 241012496 211570636 474982528 894195840 894195840 641911254 480153379 425982346 60721746 725825461 725825461 545199489 676098564 676098564 671612964 563423947 563423947 557259457 490085249 335807308 21357032 78944520 171329488 171329488 144323648 144323648 34289728 40312464 40312464 8197520 14027632 68158056 68158056 886315648 886315648 292158951 143420078 186780726 621070140 789256181 789256181 647131283 382297617 938611707 938611707 816894483 816894483 358778216 358778216 355509984 355509984 30416992 32990768 269672432 304998010 409883194 432400614 451219206 451219206 536400088 536400088 448815730 134545408 495488900 495488900 24724590 176359400 474513108 474513108 10768384 10934592 116525664 116525664 104375688 104375688 112512416 112512416 105215824 105215824 44281488 33636464 59986784 62124544 62124544 341790272 341790272 537934592 820122051 820122051 578815636 578815636 975132275 991479351 991479351 565785714 565785714 769051845 769051845 109187160 109187160 69411152 268959744 877121258 1067371659 1067371659 832127500 604004369 604004369 187808797 569360305 772265385 772265385 717410517 613606889 613606889 792574272 792574272 566566712 613984164 613984164 89712752 179850524 179850524 511105567 926695567 926695567 680002629 127344240 633049120 633049120 928331040 928331040 394556991 1025916975 1025916975 1062114186 1062114186 1046354799 600387038 988514482 988514482 125918838 344520770 849889344 849889344 815319171 616209522 821825475 821825475 97013507 590349449 659408691 659408691 634759721 854401931 885771331 885771331 854612160 854612160 862286019 862286019 72829666 68030464 1025849872 1025849872 768550725 768550725 1054953030 1054953030 90999567 686483456 686483456 585890288 585890288 620125904 661047188 661047188 201871616 201871616 59019584 59019584 53103760 901907686 901907686 914490244 1037185279 1037185279 330131554 330131554 443228326 443228326 443098518 354911288 366530848 369227786 369227786 605476298 970454910 970454910 335621043 605588626 605588626 220697868 891436303 891436303 887362542 887362542 559940001 1056900776 1056900776 580270400 851645698 851645698 10452544 31499920 136427844 314961163 626710185 626710185 614878576 723683388 723683388 157457136 157457136 239337760 378347680 378347680 340528266 397156962 397156962 309404562 311505126 311505126 111808046 253421864 253421864 176291840 425680408 527318228 992907702 992907702 479748569 453072472 453072472 908691478 908691478 205779084 876813058 876813058 824995591 799843672 401207891 276040718 462156918 462156918 848434356 1057635391 1057635391 192244220 1015294344 1015294344 649815768 579582545 948519895 952444999 952444999 952955207 952955207 855583460 730444884 314683575 188743860 441032852 676660246 685675536 685675536 312417744 312417744 152047068 124101688 261752572 261752572 134552176 260508252 260508252 173218384 173218384 135463568 8463360 312300288 314050386 314050386 123337056 45273936 45273936 44212800 9523536 102077408 102077408 578497789 578497789 926318856 926318856 881892371 881892371 667998066 498991840 830505481 1020614260 1020614260 972411318 972411318 1040980652 1040980652 902462044 1028338863 1028338863 981802232 198126754 307574040 521614878 764225148 764225148 745691938 665842297 389270139 656982345 656982345 566256432 548852096 548852096 9599808 42385664 412770968 517701838 517701838 391446356 268705586 706225228 706225228 236116588 968696183 968696183 430629184 663477817 663477817 718311668 718311668 544085911 486545677 601122993 753973786 753973786 453196727 546866921 546866921 857465511 857465511 484592020 484592020 249860822 619847900 730670021 730670021 964672301 964672301 581651920 581651920 1001914997 1001914997 753974498 753974498 585374153 704400368 704400368 861185490 861185490 891823187 891823187 677970903 940312086 940312086 630978153 630978153 219521636 907948834 907948834 311592529 268980832 638030336 638030336 635433169 663958777 731915665 768495032 768495032 134073288 889215496 889215496 694079393 591665060 552211905 985139031 985139031 523438567 292663226 339076928 339076928 395508516 517071582 517071582 515816956 515816956 355805994 286075938 617164417 617164417 392242610 813982385 813982385 670099072 771295852 771295852 316917922 385832091 552145241 552145241 821581538 821581538 546956865 351809667 807539712 841106691 841106691 533462420 533462420 195826560 199106292 199106292 174609632 174495252 137041552 152251244 152251244 251990540 719463649 775066757 775066757 663234841 663234841 592052656 586204113 586204113 59892336 208972768 208972768 205857700 124035992 253848312 253848312 127992372 4224 59527304 214998204 214998204 239359556 239359556 67799512 58720368 71352688 71352688 70882312 73449864 567363184 966264655 966264655 1063911445 1063911445 839118867 436409543 977893074 977893074 941442101 941442101 831040652 474481676 469763076 682361157 682361157 549521610 677457357 677457357 600234225 744613189 1058603036 1058603036 630760979 525292348 525292348 369768160 344872960 383256282 383256282 442539410 442539410 410290716 126972596 172953724 180619476 197404756 197404756 184549428 184549428 33554468 655360 8522768 42207312 101527660 182839764 255657886 255657886 206931752 68631048 419942924 419942924 219727404 219727404 85550636 814430664 814430664 1045977748 1045977748 884155066 373953688 949956864 949956864 276040578 276040578 745481650 745481650 503715999 695092109 695092109 620220127 620220127 827347411 827347411 416439126 416439126 864027459 864027459 943225159 943225159 271439680 961045509 961045509 30094848 64767040 589074080 596775472 596775472 582351713 582351713 579203584 55827224 126701320 130758624 130758624 8699904 758833404 758833404 697541345 216765081 100740121 629929065 780635825 780635825 775228816 229187856 211297368 98809376 236549196 236549196 106576856 229614980 229614980 127317664 124068768 148161680 148161680 43193872 148288028 243137660 254082336 254082336 339345586 339345586 112614768 112614768 69751056 69912328 75142800 104344744 288708560 288708560 54462192 54462192 322463234 322463234 424985953 554197633 679815237 679815237 748519183 748519183 979927445 979927445 648319313 294261858 527667704 898109814 898109814 241698204 471860370 471860370 156647584 156647584 684435589 684435589 921752863 921752863 1010846558 1010846558 556761847 226037248 226037248 758612661 758612661 173820336 782800905 782800905 76141440 76141440 76802592 398430930 400125954 632537443 632537443 892883144 892883144 342891562 357813794 357813794 348390447 483182286 491232355 583211473 583211473 321913650 426672416 832446704 841889591 841889591 763239980 1024727326 1026168718 1026168718 427086510 291641747 522339108 522339108 826402086 826402086 940659850 940659850 859992253 877452867 909229687 915955239 915955239 803017377 1061262666 1061262666 269817390 271581200 742204948 742204948 749418132 1061097001 1061097001 1040135907 442449295 497896714 497896714 222299196 612221112 612221112 121696137 187206400 735137764 735137764 47328693 9313344 201362304 201362304 268960256 270009858 834416082 834416082 600380005 946086951 946086951 814191013 814191013 788788715 437408074 437408074 299767176 1007908196 1035563540 1035563540 650526832 207021488 207021488 834733825 834733825 55060082 278005825 278005825 294421123 594920881 870922082 870922082 321479840 321479840 288906448 547443152 547443152 547082512 375147482 395997822 469914270 498006222 498006222 517058056 517058056 374138262 207111122 316532176 316532176 348790810 348790810 268648736 28483650 318771776 318771776 21454832 5427840 6329088 681610368 943464589 943464589 589960497 589960497 545168928 38458512 560392672 560392672 48234817 30631600 563188416 563188416 550955712 46371328 0 0 0 11010304 11010304 8913984 26739296 26739296 129515736 129515736 33081312 347077778 359952960 359952960 596183568 1016781553 1016781553 184076244 184076244 269665314 269665314 443564726 443564726 553669764 693769893 801377925 801377925 721289480 721289480 562440237 946406274 946406274 975172679 975172679 738944021 617464073 577960520 355621066 355621066 289612680 15963264 32133280 536975008 536975008 158211877 171772548 570845989 589345152 591655089 692159152 692159152 973151830 973151830 860191911 812669911 812669911 414253114 414253114 1030841033 1065628504 1065628504 319169064 906177658 906177658 482877723 510133662 510133662 92873214 884254810 884254810 640803609 375574857 346081922 306358856 58779368 58779368 69473280 126890784 126890784 35818048 39056016 641924867 809488537 809488537 828249014 828249014 810550072 810550072 519636322 519636322 909525032 1007606799 1007606799 80266440 1007736450 1007736450 483934469 337513736 337513736 336600320 109761624 90447480 74768256 102386074 362446984 362446984 439611670 655028489 763921518 763921518 688600101 377536602 377536602 640356712 730608753 730608753 764033148 1000579221 1000579221 890031140 890031140 713595949 713595949 1000002163 1000002163 991167543 205586665 304551680 501088764 501088764 739240226 979692215 979692215 959247931 805857199 590543494 679551045 679551045 475060874 690444323 690444323 412128320 681535170 681535170 562274994 969212696 969212696 829770976 829770976 568390987 462371958 462371958 285490840 256969776 256969776 217704396 217704396 117235624 117235624 93638696 215945184 215945184 170819024 293604833 1016821057 1016821057 621941289 593513211 593513211 712558469 777754252 955540570 955540570 585417230 649079581 649079581 559413266 503839881 712452448 712452448 149418961 141806036 250083804 250083804 644359421 644359421 618791501 736541987 736541987 715911184 465854892 988872957 988872957 6424576 19273984 19274016 151654758 971329004 971329004 216377345 16986144 96862234 602666388 602666388 581483849 520323680 437465622 357634236 259356912 619722744 619722744 101237784 888435828 934770402 934770402 518132190 871023322 871023322 175871671 879288633 879288633 120113080 102270248 138684417 675620997 675620997 241012496 611132356 648806929 648806929 641911254 641911254 480153379 425982346 60721746 60721746 3178784 17875488 135351300 671612964 671612964 163865092 625004556 625004556 566440161 569637545 569637545 553881089 597310785 597310785 144323648 591998977 591998977 40312464 40312464 37797904 850193168 852107456 852107456 911767368 911767368 816295582 404700678 720583605 720583605 876658827 1050937610 1050937610 795431290 938611707 938611707 816894483 852677331 852677331 813948993 813948993 675618895 885268619 885268619 815430170 296012130 296012130 218560764 216279976 354349838 536400088 536400088 448815730 308788904 495488900 495488900 323209556 195156024 474513108 474513108 279740544 280306498 280306498 116525664 102842456 24167328 24167328 3007136 41403904 41403904 10147392 10147392 9935696 101905744 101905744 572313105 572313105 537934592 820122051 936005876 936005876 806907407 214999080 214999080 109300256 249946300 249946300 255977948 680852028 974617036 974617036 357172700 606141528 886623146 1067371659 1067371659 666970539 642048896 642048896 187808797 569360305 772265385 772265385 717410517 613606889 613606889 792574272 792574272 566566712 613984164 613984164 125848272 125848272 80895706 369412122 930043962 1020218651 1020218651 379531901 76517416 68107272 928331040 928331040 394556991 1025916975 1025916975 1062114186 1062114186 1046354799 600387038 988514482 988514482 36340864 36340864 849889344 849889344 894470208 897889251 897889251 817523075 34621568 559157122 659408691 659408691 634759721 854401931 854401931 874232272 874232272 841797121 270150913 646393902 708972693 708972693 1025849872 1025849872 768550725 768550725 1054953030 1054953030 537048213 1038156198 1038156198 883463515 883463515 578345153 661047188 661047188 201871616 201871616 647513324 647513324 618927193 901907686 901907686 575804593 554438497 662966292 662966292 660867124 319614240 319614240 373491808 373491808 394457520 394457520 377013802 871731072 871731072 643187602 643187602 87032616 87032616 68756768 67642624 155916452 1044785548 1044785548 787291023 592904592 592904592 566311713 60961377 54469936 54469936 131265746 131265746 392234770 626710185 626710185 469927016 392889048 114308538 157457136 157457136 239337760 500263484 659925386 888181747 888181747 1007934495 1007934495 941127996 311505126 118899216 478883844 478883844 429014016 449054934 527318228 992907702 992907702 608457158 323212668 299936804 872541440 872541440 612632649 876813058 876813058 824995591 403538979 336197508 201375756 71336068 157224112 987110448 987110448 445331699 173872834 38537680 45937280 579582545 579582545 546047760 575978240 575978240 42930512 544265808 544265808 417444208 558907830 558907830 329511489 283115970 74597496 74597496 104911264 152047068 152047068 124101688 261752572 261752572 97397992 260508252 260508252 173218384 173218384 135463568 77613568 312300288 314050386 314050386 118939920 118939920 61527408 53527192 27824568 102077408 102077408 578497789 578497789 561900657 825433722 825433722 734052597 667998066 498991840 830505481 830505481 490850830 972411318 972411318 1040980652 1040980652 902462044 1028338863 1028338863 981802232 525262014 508353790 391374124 655119184 745691938 745691938 665842297 819089936 819089936 570683538 313042563 311674066 418085440 418085440 405416960 460310744 517701838 517701838 487600455 487600455 1032062471 1032062471 833320218 833320218 690218261 690218261 939682456 939682456 482661900 543236104 543236104 401549016 401549016 397410968 105907066 281018376 411210796 762880086 762880086 587421204 654446649 654446649 297321115 56415544 77336136 140908902 358354602 358354602 363057860 363057860 1001914997 1001914997 753974498 753974498 585374153 772225389 772225389 861185490 861185490 891823187 891823187 850250176 940312086 1068851279 1068851279 1024557646 1024557646 582298449 876209931 876209931 839896387 839896387 638030336 635433169 635433169 731915665 768495032 804008669 993099875 993099875 694079393 694079393 604775465 635118285 985139031 985139031 550767297 292663226 339076928 345369162 395508516 909380609 909380609 373819802 725640423 725640423 416375748 416375748 395337912 392242610 508078272 598525416 598525416 771295852 771295852 858261800 858261800 69469499 889823619 889823619 821581538 546956865 351809667 603985178 907543056 1011500945 1011500945 671137797 1020490454 1020490454 921440267 576884884 321045400 240317296 240317296 141958020 141958020 719463649 775066757 775066757 773955280 663234841 157175332 200727540 681240508 739633677 739633677 168768288 106961564 101452824 37887112 36244705 891120209 891120209 210183401 629614371 629614371 103561148 67799512 67799512 587651121 587651121 374734229 529970124 1018217295 1018217295 643454488 788142045 803915748 803915748 721589252 436409543 977893074 977893074 941442101 941442101 831040652 474481676 469763076 469763076 228108434 706334238 706334238 599951360 600234225 600234225 1058603036 1058603036 389590113 835856912 835856912 1008342543 1008342543 952484951 986827674 986827674 442539410 410290716 311883008 590340309 590340309 791788952 791788952 690216065 646132241 130699361 969582082 969582082 715505941 946254850 946254850 571490324 946885262 946885262 539218830 1040406575 1040406575 872623113 872623113 503784985 1021519202 1021519202 1045977748 1045977748 255790654 483365362 949956864 949956864 276040578 276040578 785353739 785353739 730162076 1012311934 1012311934 620220127 620220127 990270040 990270040 416439126 416439126 864027459 864027459 318507808 437395124 458888886 458888886 39195190 289186274 289186274 567695952 567695952 539371872 539371872 53737808 49951440 53833904 57133888 228910637 776790721 776790721 753927117 793122865 793122865 741482608 213358684 629929065 780635825 780635825 573706644 254083964 254083964 153429008 236549196 236549196 98310000 229614980 229614980 124068768 124068768 148161680 169749840 169749840 148288028 243137660 254082336 254082336 339345586 339345586 112614768 112614768 69751056 69912328 75142800 104344744 288708560 288708560 54462192 54462192 322463234 322463234 424985953 554197633 679815237 679815237 748519183 748519183 979927445 979927445 648319313 671822636 671822636 527667704 492459782 87167784 87167784 19416616 156647584 156647584 810588370 810588370 594079314 715814377 918631312 918631312 669652359 601070300 643374768 758612661 758612661 173820336 782800905 782800905 76141440 76141440 43534720 398430930 400125954 400125954 295507040 295507040 17460770 89251850 357813794 357813794 348390447 483182286 491232355 583211473 583211473 341052042 880019594 880019594 841889591 841889591 763239980 1024727326 1026168718 1026168718 409128580 321537298 321537298 56804280 322635280 322635280 840715940 840715940 356082960 369792568 1029670520 1029670520 1002606305 950782235 950782235 528403681 374186908 374186908 884813643 884813643 271457538 597215971 597215971 383295552 383295552 203244065 676596245 679266341 679266341 612221112 778667149 778667149 587992865 587992865 137662693 311297220 311297220 202637838 217317894 217317894 568919575 568919575 808256836 948250695 948250695 411307459 202069382 76336200 252180540 1011766400 1011766400 210937428 504643268 650526832 650526832 207021488 207021488 834733825 834733825 353895602 278005825 278005825 294421123 594920881 594920881 312270019 325165088 325165088 299226930 547443152 547443152 547082512 299663168 299663168 154528548 169636260 169636260 88344744 88344744 88081064 88081064 322438144 322438144 384253872 384253872 268648736 271582080 318771776 355501850 355501850 415371462 415371462 819602217 819602217 700144456 1009897547 1009897547 609144585 609144585 560392672 560392672 48234817 30631600 563188416 563188416 550955712 205541697 885838089 885838089 584511369 253248137 253248137 872679435 872679435 631508227 562826337 406962311 868271322 868271322 575380506 537418785 537418785 1024176276 1024176276 713254230 184076244 269665314 269665314 443564726 443564726 553669764 788322588 801377925 1048054786 1048054786 779357085 327943879 946406274 946406274 975172679 975172679 738944021 346485965 343163024 355621066 355621066 289612680 15963264 32133280 536975008 536975008 22700033 571474480 571474480 589345152 591655089 591655089 141776354 973151830 973151830 860191911 567488517 608487669 608487669 131074201 1030841033 1030841033 635476989 517454646 868956358 868956358 899684964 899684964 783425271 642646326 733479779 733479779 875581706 875581706 608303498 836922024 836922024 112103936 112103936 13238416 66298208 66298208 316612786 0 209715466 857232650 857232650 1053464054 1053464054 810550072 567444953 519636322 909525032 1007606799 1007606799 696657857 549379804 549379804 440045789 139875356 257087968 257087968 109761624 90447480 74768256 102386074 362446984 362446984 663388276 663388276 192959609 16778336 25690144 25690144 0 640356712 730608753 730608753 587990237 784862257 784862257 890031140 890031140 713595949 713595949 981733225 991167543 991167543 283782776 304551680 501088764 501088764 620570720 620570720 113656665 640768349 640768349 590543494 679551045 679551045 402726981 772810854 772810854 773394124 773394124 681535170 562274994 562274994 324298811 829770976 829770976 701038597 701038597 778184508 778184508 752143053 804307109 804307109 740385829 740385829 717286978 717286978 904325319 904325319 878560911 471898605 1016821057 1016821057 687900776 967729155 967729155 712558469 777754252 777754252 742837384 439689368 436244689 559413266 605041520 665006457 665006457 454779408 84984360 84984360 49320624 84041936 564714648 564714648 126769633 41625120 807403784 807403784 79038738 79038738 880679751 880679751 360973337 1011231714 1038170574 1038170574 971329004 419747146 419747146 96862234 96862234 1015236740 1015236740 591772358 437465622 357634236 728585569 728585569 754974765 754974765 969231637 969231637 361598042 361598042 282325698 568931816 568931816 568927713 371737059 619983580 1045915805 1045915805 1044561149 696902757 562814037 611132356 648806929 648806929 764105761 764105761 71420056 272743864 272743864 569285089 569285089 549783745 543805952 556314880 556314880 553800135 812001478 812001478 566440161 569637545 569637545 553881089 597310785 597310785 53019808 591998977 591998977 37816208 37816208 37797904 850193168 852107456 852107456 911767368 911767368 816295582 404700678 720583605 720583605 876658827 1050937610 1050937610 795431290 795431290 706789653 813715697 852677331 852677331 813948993 813948993 675618895 885268619 885268619 815430170 358992274 358992274 184558160 198676850 239132708 329368528 329368528 271120424 308788904 308788904 323209556 492906756 492906756 219627924 219627924 279740544 280306498 280306498 228589932 484042292 484042292 302317492 133479168 81315528 67384528 138304768 138304768 202287380 202287380 248485004 572313105 753676303 753676303 377329370 936005876 936005876 806907407 915493729 991037407 991037407 837196487 837196487 634862835 917498326 974617036 974617036 928313579 928313579 886623146 886623146 678424336 678424336 743801380 743801380 174083936 174083936 199208484 199208484 188669748 180195964 120614132 233783080 233783080 92444364 52175344 88624208 130598136 130598136 182080660 369412122 930043962 1020218651 1020218651 379531901 369851506 286171200 302582208 302582208 299956344 299956344 271193346 392397946 413968726 413968726 355027368 370481514 370481514 378533035 912316667 929519769 929519769 894470208 897889251 897889251 825858531 324997019 576876890 874850571 874850571 619202520 619202520 549605065 874232272 874232272 841797121 605627992 646393902 708972693 708972693 587867141 587867141 495730688 714542386 874644379 874644379 537048213 1038156198 1038156198 883463515 883463515 260230665 168594476 168594476 90217800 90217800 647513324 647513324 618927193 557194017 44712352 554438497 554438497 662966292 662966292 660867124 147394673 394861793 495324206 495324206 545524063 732899455 732899455 871731072 871731072 643187602 1073561772 1073561772 219008440 1057074199 1057074199 235678755 1044785548 1044785548 787291023 713957217 713957217 181803345 315885458 315885458 54469936 131265746 131265746 392234770 392234770 352370730 392889048 392889048 831520813 831520813 743983938 747939038 876416013 876416013 888181747 888181747 1007934495 1007934495 941127996 118899216 118899216 478883844 478883844 429014016 449054934 449054934 822879282 997110001 997110001 784436334 784436334 872541440 996222313 996222313 694501805 694501805 537626046 337939203 337939203 500260144 1040913894 1040913894 987110448 987110448 542320421 542320421 983736768 983736768 575553760 351120952 43371008 43371008 109500504 109500504 109500504 104521184 417444208 558907830 558907830 329511489 283115970 74597496 74597496 104911264 121144320 121144320 23890336 71303176 489703105 815321183 846639783 846639783 901959867 901959867 690233864 690233864 600626189 1019864143 1019864143 650765790 290120856 291688482 291688482 270569520 50447312 52428816 52428816 27353440 33603888 50365184 51380512 725678512 725678512 85492776 339746888 971048599 971048599 289039738 315867592 734857111 734857111 37748880 4329488 513474807 626734761 895035037 895035037 818030172 655119184 655119184 554173473 538480896 819089936 819089936 855565011 855565011 889121630 889121630 418085440 405416960 460310744 460310744 451751382 487600455 1004196300 1032062471 1032062471 833320218 833320218 690218261 865675344 939682456 939682456 722343446 722343446 543236104 401549016 401549016 432014946 832045685 832045685 557977768 762880086 762880086 587421204 654446649 654446649 297321115 757560486 895871139 952428583 952428583 890031147 890031147 611039650 313097400 152467744 619554176 785077500 785077500 772225389 772225389 613248960 667232737 667232737 329287211 850250176 869549480 1068851279 1068851279 1024557646 1024557646 582298449 876209931 876209931 839896387 839896387 681666397 681666397 247130829 886576566 998501726 998501726 993099875 993099875 83945424 600902824 604775465 635118285 635118285 550771405 550767297 35406336 144302606 345369162 345369162 909380609 909380609 373819802 725640423 725640423 416375748 691054061 794883224 799199613 799199613 662749434 574865617 650166489 650166489 913573424 913573424 574905137 889823619 889823619 811689003 99093737 71385480 540457488 907543056 1011500945 1011500945 671137797 1020490454 1020490454 921440267 576884884 321045400 240317296 240317296 98289540 93325456 128345257 254762568 773955280 773955280 188927905 157175332 565364792 681240508 739633677 739633677 575746761 607200009 607200009 539238920 131537040 891120209 891120209 403459008 629614371 629614371 558840993 558840993 152508416 587651121 587651121 374734229 529970124 1018217295 1018217295 643454488 788142045 803915748 803915748 370393390 370393390 534091818 534091818 383028968 349863160 321280044 321280044 228756736 228756736 228108434 706334238 706334238 466270712 606467324 606467324 422006816 422006816 287432994 835856912 835856912 1008342543 1008342543 952484951 986827674 986827674 620793889 591787548 591787548 591551364 590340309 791788952 791788952 690216065 646132241 218640024 969582082 969582082 715505941 946254850 946254850 571490324 996828496 996828496 959857300 1040406575 1040406575 995640209 872623113 823744657 1021519202 1021519202 532998324 532998324 255790654 483365362 483365362 114352585 178064580 250710933 785353739 785353739 730162076 1041519638 1041519638 707339541 707339541 990270040 990270040 283080530 283080530 276382854 502269432 800592035 800592035 458888886 603499093 603499093 289186274 289186274 567695952 567695952 555747649 597109168 597109168 588208880 53833904 185812020 228910637 776790721 776790721 753927117 793122865 793122865 741482608 213358684 213358684 168817496 174727320 174727320 254083964 254083964 153429008 153429008 87391232 86058008 97988056 97988056 63136832 123692560 123692560 169749840 169749840 63550944 63550944 21350496 95934752 95934752 21124376 924672 34477056 34477056 34214928 35393040 35393040 35662720 39135888 268599312 302765330 302765330 268502016 2470016 134619654 134619654 269170946 752942400 752942400 212888965 149005708 173098344 671822636 671822636 783421588 859882601 859882601 657982211 270718511 440926964 440926964 810588370 810588370 594079314 715814377 715814377 811035955 811035955 601070300 643374768 643374768 142939144 28615120 60082800 60082800 59430000 133669416 133669416 94141216 90013896 5898888 26576480 26576480 21835264 21835264 84790400 84790400 84166816 124990392 124990392 390797616 390797616 341052042 880019594 880019594 1061224456 1061224456 67117247 275753144 275753144 407518732 407518732 458655795 458655795 892683555 892683555 322635280 840715940 840715940 474172473 369792568 1029670520 1029670520 1002606305 950782235 950782235 528403681 374186908 374186908 884813643 884813643 271457538 935775137 935775137 533469270 658014204 658014204 676596245 679266341 991586800 1005889057 1005889057 778667149 646288304 587992865 302170266 311297220 311297220 202637838 217317894 217317894 443810754 443810754 808256836 948250695 948250695 814108738 814108738 76336200 252180540 1011766400 1011766400 902704560 504643268 504643268 364036198 424968844 424968844 424888800 353895602 353895602 60453360 60453360 56825680 235313236 235313236 125464560 325165088 325165088 299226930 276720096 165889088 144254532 285781764 285781764 154528548 169636260 169636260 88344744 89653680 89653680 88081064 322438144 502601776 502601776 422261172 422261172 356264460 310908416 355501850 355501850 415371462 415371462 819602217 819602217 700144456 1009897547 1009897547 609144585 609144585 72330113 40240000 39065808 623292808 623292808 54913441 204269600 205541697 885838089 885838089 584511369 253248137 253248137 872679435 872679435 631508227 562826337 406962311 868271322 868271322 575380506 537418785 537418785 1024176276 1024176276 928263838 583478772 583478772 324299031 407772646 407772646 229792173 788322588 788322588 1048054786 1048054786 779357085 327943879 134514740 134514740 686086621 686086621 740547722 740547722 681605320 1183810 1098240 6521088 10556896 17375488 65012464 562344645 562344645 690326052 690326052 688935616 688935616 680176357 751719568 900174400 900174400 689266095 567488517 608487669 608487669 99967684 417424494 488231278 488231278 517454646 868956358 876883417 899684964 899684964 816187891 816187891 733479779 733479779 875581706 875581706 608303498 836922024 836922024 112103936 112103936 356206610 356206610 319857440 395459224 431543317 867308403 867308403 857232650 1053464054 1053464054 567444953 636564480 637147113 1028000489 1028000489 696657857 696657857 507904709 507904709 514727199 593394632 743614628 987635415 987635415 845586134 111013464 111013464 34097548 193122420 773849192 899830600 899830600 632496906 564163361 327860758 916612712 916612712 795068765 795068765 638452993 575144964 537460840 613566977 613566977 608488545 92849256 409486436 409486436 299942370 283782776 283782776 127735234 137966208 620570720 620570720 616891744 812072297 812072297 810258542 810258542 610499267 154938247 772810854 772810854 773394124 773394124 1057683132 1057683132 508357834 354486824 264235320 150309296 701038597 701038597 778184508 778184508 752143053 804307109 804307109 740385829 740385829 717286978 717286978 904325319 904325319 878560911 471898605 471898605 687900776 687900776 967729155 967729155 654885945 676884992 742837384 742837384 583080450 583080450 538104321 605041520 665006457 665006457 85000513 104018712 173607848 177606172 177606172 738391064 738391064 236320036 236320036 807403784 807403784 79038738 79038738 880679751 880679751 360973337 1011231714 1038170574 1038170574 701241597 701241597 419747146 344708252 76137520 1015236740 1015236740 591772358 257239740 231522197 728585569 728585569 754974765 754974765 985889014 985889014 772237480 361598042 535537743 622891265 622891265 606077193 585408946 658815992 1045915805 1045915805 1044561149 768236732 801262724 801262724 134481924 574621892 764105761 764105761 251741667 900260127 900260127 902266091 902266091 622190953 622190953 556314880 556314880 618088520 943846017 943846017 489892684 489892684 567773248 567773248 114708417 91789840 25169920 66016640 66016640 11059984 35984768 36836112 813831168 813831168 281209873 114493072 110611400 338055562 338055562 186102680 171761328 171761328 84739120 84739120 34234684 258053180 258053180 379230136 379230136 285072114 285072114 225883682 337645678 337645678 285808778 383781294 493093338 493093338 184558160 272998550 272998550 432212290 432212290 271120424 271120424 68265088 49624884 492906756 492906756 219627924 219627924 170140728 146802884 146802884 228589932 484042292 484042292 302317492 133479168 148689536 148689536 146849988 138304768 202287380 202287380 248485004 248485004 753676303 753676303 377329370 766973939 766973939 461571426 915493729 991037407 991037407 837196487 837196487 634862835 917498326 917498326 1011696099 1011696099 928313579 84528504 381281718 678424336 678424336 743801380 743801380 231461732 147603612 144835488 164762340 216602816 216602816 120614132 181671424 181671424 9575488 9575488 88624208 130598136 172017672 182080660 243712094 312598678 312598678 281737630 369851506 587619497 587619497 302582208 302582208 604170475 604170475 271193346 86163458 84411432 84095016 99212954 370481514 370481514 378533035 912316667 929519769 929519769 548239456 389330753 825858531 825858531 394061792 576876890 874850571 874850571 619202520 619202520 549605065 550033480 550033480 605627992 605627992 625109672 625109672 177090170 177090170 495730688 495730688 714542386 874644379 874644379 173749908 458948642 458948642 769262244 769262244 697604112 697604112 595594809 794036896 794036896 152833664 33823248 50350256 50350256 62031744 62031744 37289712 57421232 57421232 35003444 168233472 394861793 495324206 495324206 545524063 732899455 870519074 870519074 856471595 617272521 1073561772 1073561772 543722579 1057074199 1057074199 570834221 572163346 572163346 707161744 788787261 822809423 822809423 582670161 562469078 587862129 587862129 501747541 422976877 823922211 823922211 356320515 332424038 831520813 831520813 743983938 747939038 876416013 876416013 470451254 470451254 187694388 187694388 1043164317 1043164317 609745545 1032300263 1032300263 537469953 316793298 316793298 270586882 997110001 997110001 784436334 784436334 235611286 996222313 996222313 694501805 694501805 570429856 337939203 748754003 990417264 1040913894 1040913894 847677700 581595509 576139909 576139909 983736768 983736768 578247377 578247377 651613072 651613072 537243656 109500504 580890448 580890448 174110933 958647664 958647664 711017991 687146741 189386261 178251456 83107664 192687252 281340297 281340297 459794870 935620929 935620929 915429455 915429455 901959867 901959867 690233864 1059911625 1059911625 1019864143 1019864143 650765790 341471113 291688482 291688482 304732425 304732425 90587925 624056597 624056597 590766721 854284218 854284218 788617150 788617150 374416026 789053639 971048599 971048599 289039738 297085794 734857111 734857111 903932411 933919227 933919227 821839848 895035037 895035037 818030172 83812296 107549696 538480896 538480896 930285365 971207841 971207841 882301515 906534480 906534480 75118096 115123968 278612435 278612435 451751382 451751382 1004196300 1004196300 973383696 973383696 209788933 243607644 865675344 865675344 520457248 722343446 722343446 658899458 658899458 622318129 622318129 879505968 879505968 813580423 813580423 696524232 696524232 134894877 109187160 16912440 757560486 895871139 952428583 952428583 890031147 890031147 611039650 881140939 881140939 640541963 785077500 785077500 564471432 637276137 637276137 562635873 562635873 568329192 568329192 126373248 833939536 833939536 890077514 890077514 549292577 369967300 349725858 141676214 375060549 681666397 681666397 667363357 945602378 998501726 998501726 326784498 326784498 111687056 49482192 536952304 571477504 571477504 34343952 35406336 35406336 121913524 944089751 944089751 842082866 471338531 471338531 388718598 927151653 1058615441 1058615441 794883224 799199613 799199613 842027908 977457303 977457303 977457303 917553961 913573424 574905137 884359450 884359450 365331216 120739840 654574360 654574360 555010593 555010593 413902144 510301714 510301714 241488972 241488972 12317340 45703680 45703680 98289540 98289540 90271505 128345257 188396608 747146472 747146472 578554916 578554916 565364792 565364792 549361988 639629121 639629121 607200009 607200009 539238920 159391984 404411910 404411910 568159104 1012868589 1012868589 559300643 775613572 775613572 152508416 33738768 553366080 553366080 60039712 9804624 151118088 153207660 682157764 682157764 543154356 543154356 130088065 383028968 383028968 337303050 80749698 346171304 346171304 122832978 111424768 76323288 1041057760 1041057760 669235457 669235457 606405417 422006816 287432994 537206992 537206992 885520587 885520587 797117676 797117676 738381837 620793889 591787548 591787548 591551364 540104448 662001060 671802628 689489445 689489445 606940425 933372227 933372227 590224689 399623457 185001562 679580288 996828496 996828496 959857300 959857300 995640209 995640209 823744657 823744657 565640819 264255532 730981561 730981561 422435876 646664634 672440448 672440448 5820416 107077512 107077512 70136728 16336000 1041519638 1041519638 707339541 707339541 609777543 852266693 852266693 384624950 940595457 940595457 800592035 800592035 235802368 603499093 603499093 151347060 151347060 33818640 555747649 555747649 597109168 597109168 588208880 60177056 185812020 185812020 178295152 170785876 170785876 3572228 136397828 136397828 208896 336793870 336793870 174727320 306251910 377567352 377567352 92412194 481299206 517936462 517936462 446576102 446576102 387630618 473951412 473951412 191290000 135455060 145571888 145571888 151097152 151097152 380765202 380765202 42741016 42741016 34477056 34214928 69825736 79951304 273842816 283189698 283189698 302765330 302765330 284399488 273105410 679481927 679481927 545259585 752942400 752942400 348176512 348176512 156762697 953680109 953680109 934888121 859882601 859882601 657982211 639113776 639113776 440926964 939675698 939675698 319500880 444470416 705500436 811035955 811035955 8646720 224638341 597854265 597854265 576750273 714681205 714681205 684176784 707523092 707523092 785534125 785534125 575982985 614780832 614780832 93314144 93314144 84790400 84790400 89543851 495401070 495401070 646514771 646514771 252971580 800327740 800327740 1061224456 1061224456 704740123 942260230 942260230 912238002 320673317 458655795 458655795 892683555 892683555 1044407486 1044407486 474172473 474172473 236615927 422627248 422627248 242128508 423810168 423810168 627971065 627971065 603072061 603072061 310378578 46272720 935775137 935775137 533469270 658014204 658014204 565163725 290636402 991586800 1005889057 1005889057 667191529 646288304 621771923 621771923 126190960 983654601 983654601 181444952 220201260 654837365 654837365 766903686 940313408 940313408 814108738 954146705 954146705 763328419 763328419 902704560 902704560 1039324143 1039324143 866235036 424968844 424968844 424888800 106237200 58794096 62993088 62993088 13770880 312935770 312935770 67976264 67972176 57082976 179267968 179267968 165889088 33707280 271060994 271060994 155762320 145757976 145757976 327360760 327360760 220260914 225708972 225708972 502601776 502601776 422261172 422261172 356264460 310908416 328745592 328745592 383118042 383118042 72686082 72686082 13690944 606740608 606740608 541216640 542265088 542265088 40240000 39065808 623292808 623292808 54913441 204269600 204269600 154907448 154907448 178782536 230180724 739246420 739246420 697303557 663148665 663148665 178968757 358355938 389812026 389812026 380137736 380137736 855649724 928263838 928263838 583478772 583478772 324299031 407772646 407772646 229792173 633345363 633345363 432541239 827329996 827329996 216793763 134514740 134514740 959431151 959431151 740547722 744699438 744699438 64221872 64221872 787485385 787485385 63968688 759698537 759698537 562344645 690326052 690326052 688935616 688935616 680176357 751719568 900174400 900174400 942020871 942020871 757371326 338480394 338480394 158650218 217760556 275960706 275960706 709044484 876883417 876883417 189016326 816187891 816187891 344719430 344719430 456803168 456803168 421655138 308788928 308788928 86914344 81475272 356206610 356206610 319857440 395459224 629904256 867308403 867308403 634512105 715248439 715248439 610271488 636564480 637147113 1028000489 1028000489 444138316 444138316 507904709 507904709 514727199 593394632 743614628 987635415 987635415 845586134 111013464 119836042 330573472 330573472 773849192 899830600 899830600 632496906 564163361 327860758 916612712 984639264 984639264 1052126776 1052126776 1024334895 751378873 820056438 820056438 730614044 730614044 665110782 495242222 1067819084 1067819084 666314786 363203400 363203400 547621185 547621185 616891744 812072297 812072297 810258542 810258542 610499267 154938247 757342325 1025507640 1025507640 872743259 1057683132 1057683132 508357834 354486824 264235320 111832528 357423340 357423340 526525780 526525780 176423152 136315140 134523300 134523300 144032016 691037920 691037920 434959616 434959616 837113124 837113124 674967809 674967809 673235205 948060352 948060352 478829809 760177867 760177867 278210181 583080450 583080450 538104321 538104321 447828348 330007314 303657800 738584589 738584589 672983593 579132441 738391064 738391064 236320036 236320036 143899264 143899264 40364208 24253344 24253344 150084548 150084548 137235396 429990246 429990246 810721986 826327203 826327203 344708252 76137520 999077052 999077052 1006682500 1006682500 962765121 838490085 397447785 237688092 237688092 985889014 985889014 772237480 201802824 659320884 659320884 872736961 872736961 872538123 872538123 658815992 246091068 567070060 768236732 801262724 801262724 659387556 659387556 555245161 798129708 798129708 900260127 900260127 902266091 902266091 622190953 622190953 927538966 1012714498 1012714498 943846017 943846017 674443907 674443907 769095745 769095745 671494172 671494172 112144576 135718373 537660417 537660417 678630293 678630293 577488001 577488001 575792656 38803840 38803840 70759936 70759936 38817416 171761328 171761328 105267872 136134160 136134160 258053180 258053180 379230136 379230136 285072114 285072114 232758336 232758336 141695810 202638180 383781294 493093338 493093338 217264326 349389256 349389256 432212290 432212290 289047748 210420256 210420256 2048 264192 144712256 144712256 146091844 146091844 8390720 1859648 10085952 11636736 21636480 21636480 14222048 148689536 148689536 168822272 168822272 209334996 211886412 510968030 510968030 276576406 211860656 313400940 313400940 283115202 461571426 461571426 272273424 272273424 236181258 220274988 122788552 81158840 603987976 1011696099 1011696099 299936903 0 18038848 44343296 53877552 157267168 254204220 254204220 214996388 214996388 166433964 216602816 216602816 105383064 181671424 181671424 111358656 111358656 93257792 121904192 172017672 206197770 206197770 652523839 952319059 952319059 550048794 587619497 587619497 97213512 298676232 998789135 998789135 457868600 1021609411 1021609411 470306534 448008818 442305900 201022088 109333672 380813776 380813776 379660416 377014170 377014170 305217898 308162824 868120704 874865915 874865915 913426120 913426120 336622608 336622608 550033480 867277371 1053987465 1053987465 659738830 736208188 789534424 789534424 806111400 806111400 771922714 514313785 651629902 898513077 898513077 118230688 105906840 76022856 784935432 784935432 702288936 794036896 794036896 152833664 17456768 17456768 37755952 62031744 62031744 37289712 57421232 57421232 35003444 168233472 168233472 139461252 881236654 881236654 469778543 870519074 870519074 856471595 617272521 529104183 543722579 543722579 755837997 755837997 570834221 774062634 774062634 876865063 904529394 904529394 822809423 582670161 562469078 587862129 587862129 501747541 422976877 823922211 823922211 356320515 240189797 684196803 684196803 183888234 695812288 695812288 105939581 241947868 948471208 948471208 862903731 1043164317 1043164317 609745545 1032300263 1032300263 1024199727 671751211 537396225 48324822 553848869 553848869 268452256 302329872 302329872 397390221 459316448 852682192 852682192 570429856 81998280 748754003 990417264 990417264 575812516 725714065 725714065 576139909 576139909 538104321 668128216 668128216 578247377 985154191 985154191 984943375 1009710215 1009710215 580890448 677024962 994267127 994267127 721955077 721955077 826014283 826014283 837289443 966788228 966788228 281340297 459794870 935620929 935620929 915429455 915429455 779092908 779092908 550580831 1059911625 1059911625 950995264 612320832 612320832 341471113 4362442 111166883 304732425 304732425 90587925 624056597 624056597 590766721 854284218 854284218 788617150 788617150 374416026 789053639 789053639 691061541 807574285 891554091 891554091 699898239 903932411 933919227 933919227 927938299 899493483 1017361942 1017361942 83812296 107549696 120227368 325617547 930285365 971207841 971207841 882301515 906534480 906534480 405945160 519232006 519232006 484357070 926834292 926834292 295804089 54109240 973383696 973383696 864034908 520554674 789648998 789648998 358481963 1013975425 1013975425 1014104636 1058277892 1058277892 792315941 879505968 879505968 813580423 813580423 696524232 696524232 125338461 109187160 16912440 688394340 688394340 826278275 834667211 834667211 543253536 543253536 881140939 881140939 640541963 640541963 449158144 566943516 690291833 690291833 562635873 562635873 744128896 938913771 938913771 565512104 555798281 890077514 890077514 549292577 337243659 150546372 232818354 283232646 564479382 667363357 667363357 945602378 945602378 767191420 326784498 326784498 111687056 1574400 1574400 571477504 641865925 641865925 601852585 601852585 151269440 944089751 944089751 842082866 506627847 724652057 942679090 942679090 1058615441 1058615441 136842499 2361600 539755521 842027908 977457303 977457303 977457303 917553961 719722597 1063092498 1063092498 563263370 563263370 366815211 654574360 654574360 596097858 558840993 126668808 190960765 1015393499 1050301519 1050301519 811412319 780979516 494362824 247852060 247852060 235541532 111688292 93817408 747146472 747146472 578554916 578554916 246491908 246491908 549361988 639629121 639629121 72507560 138557440 236101728 236101728 827061411 827061411 810024999 1012868589 1012868589 559300643 775613572 775613572 587948673 587948673 632502817 632502817 101771561 115869144 575713096 575713096 682157764 682157764 810254586 810254586 411279598 417168390 417168390 420963494 420963494 352985288 352985288 762036603 762036603 248432782 1041057760 1041057760 669235457 669235457 606405417 759111046 759111046 966314801 966314801 637663426 713692228 743874197 743874197 738381837 867866450 867866450 338999925 738796569 758801196 758801196 671802628 689489445 689489445 606940425 933372227 933372227 590224689 399623457 341173712 679580288 679580288 771871970 786118365 824418865 1014917443 1014917443 808588035 542323329 542323329 264278220 730981561 730981561 422435876 646664634 672440448 672440448 73414040 114439160 615518242 615518242 580392642 178396900 178396900 413089172 811503443 811503443 852266693 883413791 1060609973 1060609973 940595457 273809666 273809666 142246816 287463046 547621184 816189891 816189891 541329537 541329537 272927107 59576624 31698048 60177056 60177056 135072024 215785192 219715132 265869244 265869244 243931076 193647732 161711636 608250386 720638605 720638605 137499396 306251910 377567352 377567352 92412194 481299206 517936462 517936462 446576102 446576102 387630618 473951412 473951412 191290000 135711760 145571888 145571888 151097152 151097152 380765202 380765202 46084146 42741016 19206496 19206496 69825736 79951304 273842816 283189698 292040768 292040768 285550626 284399488 406528386 679481927 679481927 545259585 473213186 473213186 348176512 348176512 202915872 953680109 953680109 934888121 313075026 287434008 337290004 639113776 639113776 201326604 939675698 948573255 948573255 944977920 944977920 763320839 763320839 653242976 787031924 787031924 597854265 576750273 714681205 714681205 684176784 707523092 707523092 785534125 785534125 575982985 614780832 614780832 352470376 352470376 287944808 352847432 352847432 495401070 495401070 646514771 646514771 286638642 800327740 800327740 487213070 704740123 704740123 942260230 942260230 912238002 272932352 319748160 319748160 570977300 571737194 1044407486 1044407486 584329856 584329856 1007118854 1007118854 727343304 740368653 740368653 515236063 627971065 627971065 1037751314 1037751314 777073294 1045639839 1045639839 986829977 861529779 861529779 328258210 290636402 290636402 0 0 0 278956232 278956232 621771923 621771923 126190960 983654601 983654601 181444952 220201260 654837365 654837365 766903686 940313408 940313408 558026913 954146705 954146705 763328419 763328419 712822677 566188316 1039324143 1039324143 866235036 36258480 59860744 106237200 106237200 101001240 101001240 62993088 55833264 312935770 312935770 67976264 67972176 51325216 16955680 16955680 33707280 33707280 429987266 429987266 155762320 145757976 151407136 421796268 421796268 321126722 225708972 488260658 488260658 379291244 401113634 401113634 101712010 109610632 328745592 328745592 81633480 181603000 181603000 699135333 766238925 766238925 606740608 647308388 789941309 789941309 721846893 697179237 260672733 260672733 204302844 208082976 208082976 159594600 193146968 238026816 238026816 739246420 739246420 697303557 663148665 663148665 178968757 85718896 95068736 95068736 380137736 380137736 281624904 281624904 281549250 73101634 68683272 9475136 67764320 67764320 658763961 658763961 1027332538 1027332538 827329996 831263987 831263987 403180858 543218858 959431151 959431151 732727468 744699438 744699438 67182600 67182600 787485385 787485385 63968688 759698537 759698537 154035464 154035464 67174400 74651136 85410952 99837504 604600307 645878962 883298077 942020871 942020871 844305484 338480394 618659848 618659848 551551425 292735970 370527914 824953520 824953520 189016326 189016326 70002866 144706626 790703484 790703484 822740580 822740580 594730406 308788928 308788928 40710336 37490448 55578016 66924528 384784128 384784128 629904256 637134825 637134825 634512105 634512105 610271488 610271488 608174217 67769352 832110688 832110688 444138316 444138316 138678472 138678472 697977010 697977010 1015575986 1015575986 322421321 100091456 276660272 375060312 375060312 330573472 337082440 354579280 354579280 84938784 84938784 68293128 540132192 984639264 984639264 1052126776 1052126776 1024334895 751378873 820056438 820056438 730614044 730614044 665110782 495242222 1067819084 1067819084 666314786 420087458 363203400 547621185 547621185 612442689 612442689 363739840 354703658 479484014 479484014 166279786 757342325 1025507640 1025507640 872743259 602213502 181076064 181076064 64106224 70228816 86944536 86944536 92541212 155453604 176423152 581960529 739511045 739511045 792013629 792013629 691037920 691037920 716803953 716803953 837113124 837113124 674967809 674967809 966728259 1037329929 1037329929 478829809 760177867 760177867 229061216 622336689 622336689 816762243 876537153 876537153 360273513 360273513 738584589 738584589 672983593 579132441 565521249 565521249 75534912 75534912 588255616 726794401 726794401 544346801 600309781 600309781 850604883 881147728 881147728 1011881545 1011881545 826327203 826327203 914358363 914358363 395481723 260113648 1006682500 1006682500 962765121 838490085 622011196 732779081 732779081 581486429 581486429 479787760 408387852 659320884 659320884 872736961 872736961 872538123 872538123 100745235 21180576 21180576 541548672 541675737 575674004 659387556 659387556 555245161 798129708 798129708 556098055 398665178 398665178 792891710 792891710 167904403 927538966 1012714498 1012714498 900566954 900566954 674443907 674443907 769095745 769095745 722735136 722735136 668111493 614913233 541725825 605232897 678630293 678630293 577488001 577488001 575792656 38803840 38803840 70759936 136729488 173541780 174245780 174245780 105267872 854249851 854249851 122410168 90281000 628380424 898191761 898191761 861751360 232758336 406711726 406711726 342625674 450991130 513868624 513868624 277545332 349389256 400506322 485131098 485131098 289047748 392728342 392728342 326549956 303703938 303703938 177314370 147200132 178794140 178794140 144528644 136758336 329747008 329747008 302018784 46921168 166630896 167211476 168822272 168822272 209334996 211886412 510968030 519507146 519507146 372852288 372852288 348391626 348391626 290213194 214032588 471355014 487409897 1040165965 1065838393 1065838393 230348652 230348652 991347490 991347490 906401339 58914368 228426316 1049947508 1049947508 995017588 702203145 254204220 720370437 720370437 708838409 708838409 792338477 792338477 772920260 772920260 650064520 650064520 556870252 121904192 121904192 206197770 206197770 652523839 952319059 952319059 792741104 516072653 398725324 273639464 282066114 998789135 998789135 713431542 1021609411 1021609411 470306534 448008818 442305900 201022088 109333672 895165473 895165473 659711515 831656547 831656547 891864363 891864363 868120704 874865915 919722242 919722242 913426120 600450602 600450602 570066785 867277371 1053987465 1053987465 752668128 881733807 881733807 789534424 806111400 806111400 771922714 370812178 651629902 898513077 898513077 106555032 106555032 76022856 784935432 784935432 702288936 81266304 43988560 35258432 0 1009440 6915488 6915488 19436448 19436448 29768992 29768992 17260576 419527811 419527811 155637924 956976259 1023579408 1059636543 1059636543 875604238 917640027 917640027 1044323119 1044323119 873025289 67902485 202914104 202914104 774062634 774062634 876865063 904529394 904529394 429616004 909380096 909380096 53878555 84023356 153881892 203686952 203686952 182715600 271591116 271591116 342975360 680042740 680042740 1049236575 1049236575 483996947 376013135 948471208 948471208 862903731 527923400 932567104 932567104 889455620 1024199727 1024199727 671751211 537396225 913393176 913393176 796444605 1008061720 1008061720 302329872 889260041 889260041 852682192 1061096058 1061096058 1046252970 1046252970 438147933 59245680 724770646 990137541 990137541 866717173 475007816 475007816 668128216 668128216 522653809 985154191 985154191 984943375 1009710215 1009710215 507770576 677024962 994267127 994267127 721955077 721955077 826014283 826014283 837289443 1049688072 1049688072 618225729 618225729 545308737 623960961 810863235 810863235 557861410 188975772 1054242844 1054242844 950995264 950995264 886890420 886890420 301235090 301235090 291636130 279777728 279777728 123273152 123273152 80105680 64262880 104992920 242421760 242421760 187912860 175726644 755009180 755009180 691061541 807574285 891554091 891554091 699898239 874571170 919556187 927938299 927938299 899493483 1017361942 1017361942 74836872 118629280 118629280 442057736 494133934 494133934 504366216 504366216 441976470 438406144 405945160 519232006 519232006 650980569 926834292 992984856 992984856 862729391 862729391 864034908 864034908 520554674 789648998 789648998 722671265 1028653743 1028653743 1014104636 1058277892 1058277892 1059251251 1059251251 372250673 292604544 257950140 257950140 255857140 131093356 27312480 25826400 625904770 881378379 881378379 832620099 832620099 299387211 469659324 469659324 377917400 537248387 537248387 449158144 566943516 690291833 690291833 460357682 460357682 744128896 938913771 938913771 565512104 555798281 543745793 67415432 98578214 98578214 150546372 232818354 283232646 564479382 564479382 45626173 165465828 165465828 42182836 39055488 39055488 41238864 41238864 6556032 127546952 641865925 641865925 601852585 601852585 629538874 629538874 1047273982 1047273982 762793645 724652057 942679090 942679090 1025616240 1025616240 529269089 64587940 202412360 670750496 717411101 717411101 713216085 710485653 710485653 1063092498 1063092498 889752442 889752442 877257867 329841399 905771712 1068669403 1068669403 962202119 259001564 1015393499 1050301519 1050301519 811412319 780979516 494362824 442653600 247852060 235541532 121137097 121137097 70703880 666985133 666985133 189023681 664780712 674184453 674184453 655629097 655629097 540953632 593901696 593901696 236101728 827061411 861743666 861743666 810024999 140138076 808866512 829873059 829873059 642830499 642830499 632502817 632502817 101771561 115869144 575713096 575713096 798556785 798556785 902977207 902977207 587727921 417168390 761485724 827493112 827493112 455008770 361144344 762036603 762036603 248432782 266690584 417859014 417859014 577466576 577466576 759111046 759111046 966314801 966314801 723117613 723117613 956200581 1021700559 1021700559 867866450 867866450 741479181 738796569 758801196 758801196 692719073 692719073 576227220 576227220 550652835 824181027 833408050 833408050 789972481 552998037 552998037 771871970 786118365 824418865 1014917443 1014917443 808588035 542323329 542323329 398475337 868239594 868239594 981762543 981762543 180371567 38405440 73414040 114439160 615518242 615518242 580392642 328309780 952062257 952062257 811503443 834718166 922055348 922055348 1060609973 1060609973 469791004 469791004 273809666 226349628 703651076 703651076 816189891 816189891 541329537 541329537 272927107 49791008 49791008 30008640 51532688 135072024 215785192 544326265 662386617 662386617 625215657 625215657 730657866 991588188 991588188 960312892 960312892 271912630 369956096 369956096 25828650 19530848 530712668 530712668 328487714 328487714 100835602 218169716 218169716 135711760 268625026 268625026 86846760 86846760 353371730 353371730 311049792 362132000 362132000 335809584 69206280 69206280 19323168 24254848 273600450 298550592 298550592 285550626 285218178 406528386 406528386 402993158 402993158 473213186 473213186 405439374 202915872 202915872 512754804 512754804 313075026 313075026 775622938 775622938 557505288 557505288 680528709 680528709 948573255 948573255 944977920 944977920 763320839 763320839 653242976 787031924 787031924 59710472 53292336 35166816 35166816 52305456 52305456 51910656 284089642 284089642 668731120 668731120 925868441 940263757 940263757 380033367 352847432 352847432 204084492 275158536 974278293 974278293 286638642 204282256 487213070 487213070 219028736 505160342 505160342 505110198 272932352 272932352 454210464 454210464 305676544 571737194 629459049 629459049 584329856 584329856 1007118854 1007118854 923144780 992393535 992393535 845931458 845931458 475586524 1037751314 1037751314 777073294 1045639839 1045639839 986829977 861529779 993792449 993792449 778569238 991868740 991868740 827335489 827335489 887091500 887091500 482688710 338143622 337851246 478880342 478880342 345126672 252137612 252137612 223742596 604772298 604772298 767828206 767828206 558026913 998619219 998619219 712822677 712822677 654520532 654520532 436244575 258480328 374350036 374350036 272933456 83420872 110939736 110939736 60593368 271319904 271319904 233279566 17771616 26018912 26018912 151678016 151678016 226630188 404658232 429987266 429987266 99369168 99408308 151407136 507589720 507589720 321126722 213260002 488260658 488260658 413156194 411188596 411188596 307649412 51904512 264769624 298298528 432062694 432062694 410068352 699135333 766238925 766238925 205623617 647308388 789941309 789941309 721846893 697179237 648184402 525490691 563535628 563535628 496107555 898630251 898630251 418095719 418095719 130860892 130860892 84462696 18662456 19169520 38492368 38492368 25153152 57419472 57419472 10670400 72920128 73192704 121825200 121825200 119866808 119866808 67764320 67764320 658763961 658763961 1027332538 1027332538 912153627 912153627 1003637866 1003637866 951144072 951144072 569771178 290537058 403689130 403689130 67182600 67182600 67174400 0 0 67174400 67182600 67182600 67174400 67174400 84243264 84243264 32125032 567655504 593155761 777732849 785457885 844305484 844305484 826802646 966513578 1008513751 1008513751 299649597 537326592 824953520 824953520 204442196 269034498 815338241 815338241 790703484 790703484 822740580 822740580 594730406 187562016 85743216 115177536 115177536 295225490 295225490 384784128 384784128 659917164 720495573 735699701 735699701 783152153 783152153 624903965 945295820 945295820 622732392 622732392 953701936 953701936 860482677 873198603 873198603 1011192258 1015575986 1015575986 877398926 877398926 276660272 375060312 375060312 387337786 387337786 385036958 468978678 468978678 463547008 143316108 540132192 540132192 256188609 256188609 176490669 589703456 589703456 560273457 543162753 307046730 822906100 1051585887 1051585887 447561737 488500636 488500636 420087458 386475018 69944866 336014882 336017418 363739840 363739840 343378216 479484014 479484014 274535604 361106372 361106372 281348256 326697156 400366342 400366342 206387224 206387224 203636900 203636900 212663564 212663564 171396928 166988149 881117273 1048625223 1048625223 792013629 792013629 334523039 464101635 716803953 716803953 564413221 564413221 480249420 480249420 966728259 1037329929 1037329929 402794052 486957472 486957472 429516390 622336689 622336689 816762243 876537153 876537153 637600832 637600832 560480305 114771784 114771784 16873504 565521249 565521249 56410305 583082672 588255616 726794401 726794401 601129008 600309781 600309781 850604883 881147728 881147728 1011881545 1011881545 864625779 864625779 914358363 914358363 402791642 402791642 877257984 1014620831 1014620831 622011196 622011196 732779081 732779081 581486429 581486429 479787760 408387852 638417083 697005220 697005220 895205003 895205003 752502345 729482911 948170823 948170823 807550516 807550516 575674004 596034152 654456841 870646525 870646525 556098055 556098055 408109195 409647524 1063732469 1063732469 632357339 488505344 488505344 409534848 409534848 408069638 470401222 470401222 90213184 90213184 735676664 735676664 668111493 614913233 541725825 605232897 610479753 610479753 6952320 100271746 100271746 141437936 141437936 484753158 484753158 248312276 236489096 885249924 885249924 873911042 854249851 302262054 188559156 628380424 898191761 898191761 861751360 136102182 406711726 406711726 342625674 450991130 513868624 513868624 277545332 277545332 400506322 485131098 485131098 102336374 392728342 392728342 326549956 303703938 303703938 177314370 147200132 183241104 183241104 265863528 265863528 329747008 329747008 302018784 181015764 166630896 167211476 167211476 136192768 176166736 176166736 239433572 519507146 519507146 491783254 491783254 451465644 493592140 493592140 183915254 471355014 487409897 1040165965 1065838393 1065838393 230348652 230348652 28369209 906401339 906401339 58914368 890802251 1049947508 1050070552 1050070552 702203145 233642445 720370437 720370437 708838409 708838409 792338477 792338477 772920260 772920260 650064520 650064520 556870252 55341536 262202668 262202668 214699256 214699256 167772180 792741104 792741104 516072653 398725324 273639464 282066114 282066114 302438418 713431542 713431542 208027709 97587520 97587520 419971082 419971082 378984018 895165473 895165473 659711515 831656547 831656547 891864363 891864363 545326691 851362546 919722242 919722242 620054728 600450602 600450602 783325152 783325152 987079195 987079195 752668128 881733807 881733807 668142026 75528128 75528128 299000378 299000378 306253930 475802192 475802192 160655380 299528898 299528898 186134752 186134752 164217456 81266304 25614432 26307616 26307616 21283392 27389536 27389536 21391104 25165920 25165920 17760256 27072612 419527811 419527811 155637924 956976259 1023579408 1059636543 1059636543 935774096 917640027 917640027 1044323119 1044323119 1007549443 202346511 202914104 202914104 187831092 645628672 645628672 113496326 706782174 706782174 909380096 909380096 674138948 674138948 484838475 203686952 601148145 601148145 271591116 573321043 573321043 680042740 1004066056 1072829439 1072829439 930395063 871754739 376013135 231920364 702050412 702050412 932567104 932567104 840045075 808588035 867963945 867963945 541169867 913393176 913393176 815866179 1008061720 1008061720 42346838 889260041 992401719 992401719 1061096058 1061096058 1046252970 1046252970 438147933 955122412 955122412 990137541 990137541 866717173 930732844 930732844 740608269 740608269 268697600 187194120 49152 8437760 8437760 15318528 16178112 16178112 16251840 16251840 10372544 8462400 8462400 15434944 15434944 1049688072 1049688072 618225729 618225729 545308737 623960961 810863235 822235675 822235675 427932187 1054242844 1054242844 682943727 581374881 886890420 886890420 301235090 301235090 291636130 279777728 279777728 123273152 123273152 109236392 141621604 141621604 104992920 52633784 761925801 761925801 543830277 471863485 471863485 214583711 8911950 172811205 579897352 579897352 0 167886882 492381204 492381204 285270036 476105886 476105886 275683628 118629280 442057736 494133934 494133934 440660118 238669072 438406144 438406144 418465878 418465878 516317380 650980569 650980569 992984856 992984856 862729391 900293106 900293106 543165810 83935640 773089322 939721220 939721220 1028653743 1028653743 490354944 490354944 624544014 1059251251 1059251251 633058381 1015584331 1015584331 1050050804 1050050804 131093356 27312480 25826400 625904770 881378379 881378379 832620099 832620099 299387211 92801186 377917400 377917400 271353858 114426570 34620624 68269128 76243464 76243464 68064464 113559768 113559768 75631008 75631008 99824616 556805537 556805537 69477480 542916609 542916609 346251746 346251746 9122978 543930436 543930436 680749569 680749569 693309633 693309633 565617189 545024769 41238864 41238864 6556032 127546952 638664753 706127917 706127917 612503584 629538874 629538874 1047273982 1047273982 1036730863 963302435 963302435 424158052 1025616240 1025616240 538447105 538447105 1005487641 1005487641 777273574 711334421 983236895 983236895 782052957 977395784 977395784 889752442 889752442 877257867 345576000 905771712 1068669403 1068669403 962202119 465079472 259001564 77566970 315744978 587354861 587354861 442653600 698793268 801637629 801637629 780215456 121137097 63522437 666985133 666985133 189023681 664780712 674184453 674184453 655629097 655629097 540953632 593901696 593901696 151010276 835715811 861743666 997507356 997507356 627721624 808866512 829873059 829873059 642830499 642830499 488884348 454017862 543564248 543564248 863422382 863422382 954079287 954079287 902977207 902977207 587727921 262246753 761485724 827493112 827493112 455008770 361144344 22338144 221279992 221279992 266690584 266690584 688361992 688361992 577466576 547931457 262706529 660546428 660546428 847251648 847251648 956200581 1021700559 1021700559 672802960 741479181 741479181 159749372 77213328 608910356 692719073 692719073 576227220 576227220 550652835 824181027 833408050 833408050 789972481 552998037 552998037 651690848 668878492 668878492 216436740 960507908 960507908 358871083 478411255 1068467652 1068467652 868239594 981762543 981762543 503654430 470089744 15007744 10750272 48770688 48770688 56731008 328309780 952062257 952062257 423760756 834718166 922055348 922055348 388444970 354492714 469791004 469791004 172353684 226349628 703651076 703651076 566556913 566556913 551282865 550102209 37219009 49791008 49791008 4243456 51532688 51532688 97836201 544326265 662386617 662386617 625215657 625215657 730657866 991588188 991588188 960312892 960312892 271912630 369956096 403378212 468724032 468724032 530712668 530712668 328487714 394436976 394436976 520023252 520023252 391119546 391119546 268625026 86846760 336593924 353371730 353371730 252854876 362132000 362132000 335809584 201327680 359361088 359361088 24254848 273600450 298550592 298550592 281405634 285218178 285218178 284457088 402993158 402993158 225587500 405439374 405439374 207635488 136373760 137963268 848138534 848138534 761168140 775622938 775622938 420874790 663768160 680528709 942703184 942703184 830879841 830879841 562559013 205776945 100720664 38103048 109883017 731417433 731417433 600948969 736583797 736583797 681629968 704913444 704913444 577030545 1064213263 1064213263 668731120 925868441 940263757 940263757 380033367 413209222 413209222 204084492 419809314 974278293 974278293 570631312 579474513 1040729601 1040729601 8427023 6292864 6292864 137503304 232273380 326545188 454210464 454210464 25936946 41257792 41257792 339815936 911328352 911328352 903499483 89600001 923144780 992393535 992393535 845931458 1036071143 1036071143 402817794 1016456158 1016456158 279259718 545579584 545579584 537006081 993792449 993792449 778569238 991868740 991868740 827335489 827335489 887091500 887091500 482688710 338143622 337851246 478880342 478880342 345126672 521884682 521884682 328238452 604772298 604772298 767828206 767828206 548623410 998619219 998619219 278218166 239388828 654520532 654520532 436244575 258480328 374350036 374350036 272933456 67831328 110939736 110939736 60762264 271319904 478413342 478413342 169101384 310676052 336857610 412371042 486852654 486852654 453019672 404658232 372034042 398858212 507252510 507252510 507589720 507589720 222824950 154740516 154740516 413156194 413156194 411188596 411188596 307649412 315233296 315233296 298298528 432062694 432062694 410068352 410068352 223875852 223875852 146879424 106753820 106753820 6866304 4403328 648184402 648184402 525490691 563535628 563535628 496107555 907149448 907149448 478216739 478216739 551413346 1050226303 1050226303 630785631 629703177 1054840368 1054840368 851566803 700247906 438709234 338308354 338308354 89145528 121825200 121825200 119866808 119866808 119088696 123108456 123108456 1049088 143266884 610832738 912153627 912153627 1003637866 1003637866 951144072 951144072 724723985 229828260 851165841 851165841 702269578 541639873 792858857 792858857 48370176 692064329 692064329 204555020 138707072 67176744 84243264 90101952 100364256 613533473 613533473 777732849 785457885 785457885 826802646 826802646 966513578 1008513751 1008513751 763682520 1003289308 1003289308 245334487 453585378 453585378 815338241 815338241 739974744 781067592 781067592 304271634 304271634 26299648 85743216 115177536 115177536 295225490 295225490 370309312 370309312 659917164 720495573 735699701 735699701 783152153 783152153 969338542 969338542 945295820 486028783 221917346 953701936 953701936 860482677 873198603 983987562 1011192258 1011192258 724841038 877398926 877398926 110903352 70009930 303858714 387337786 387337786 385036958 468978678 468978678 463547008 233854660 143316108 388640832 973736128 973736128 485098837 589703456 589703456 560273457 543162753 307046730 822906100 1051585887 1051585887 627076126 889841356 889841356 386475018 386475018 69944866 336014882 336017418 336017418 336992778 336992778 326633394 326633394 274535604 274535604 189410946 274729232 326697156 400366342 400366342 206387224 206387224 203636900 203636900 212663564 212663564 171396928 103160088 881117273 1048625223 1048625223 899428268 519379707 432742058 464101635 570543441 570543441 753599538 753599538 480249420 480249420 487064622 487064622 402794052 402794052 362963234 429516390 429516390 58755926 178529300 409453584 409453584 782601360 782601360 637600832 560480305 114771784 257580297 545379876 545379876 9511488 572983632 583082672 583082672 167133312 601129008 601129008 161486485 18944128 165884388 279126342 279126342 253890876 908071321 908071321 864625779 729605703 656597899 656597899 626720505 877257984 1014620831 1014620831 873164074 777257344 372246676 27148896 559181186 660625360 660625360 326059576 638417083 697005220 697005220 895205003 895205003 752502345 729482911 948170823 948170823 807550516 807550516 421557280 631031868 654456841 870646525 870646525 595742039 526874768 526874768 488685870 1063732469 1063732469 632357339 368713676 403443200 830210348 1023150984 1023150984 485524198 466301400 642029409 1070236031 1070236031 735676664 617202304 18433201 52551984 589136928 790757201 790757201 685950157 243341637 242254174 783435984 783435984 484753158 484753158 248312276 236489096 885249924 885249924 873911042 540231943 302262054 188559156 326813472 326813472 332798320 332798320 154405668 154405668 147184000 147184000 32930496 46475472 336695360 336695360 334199820 334199820 327790706 410340422 410340422 308942226 250340434 235406364 190393400 96628896 68606536 94643872 183241104 183241104 265863528 265863528 183005652 170733124 181015764 181015764 86771108 73319936 136192768 136192768 149405312 149405312 239433572 239433572 235479682 491783254 491783254 509085270 509085270 493592140 350005064 276808842 276808842 298584752 739171606 818428507 1045916247 1045916247 328737835 125303736 125303736 629021984 890802251 890802251 1050070552 1050070552 257999292 265887560 265887560 273859323 642316441 642316441 424224669 838344027 838344027 460564085 114672272 114672272 375984290 375984290 340485624 262202668 214699256 961195333 961195333 803332509 428503212 750923777 750923777 83964956 370332186 370332186 110285400 773026718 905943786 905943786 295414826 524871182 524871182 419971082 378984018 378984018 351514752 351514752 83886120 339923970 339923970 357347600 357347600 851362546 851362546 620054728 620054728 608881816 608881816 976487009 976487009 325066949 51660656 62425648 62425648 276666170 276666170 75528128 75528128 299000378 299000378 386126480 386126480 160655380 160655380 299528898 299528898 186134752 186134752 164217456 59848320 25614432 26307616 26307616 21283392 27389536 27389536 21391104 25165920 25165920 26342944 27072612 270614882 365107808 493986090 493986090 235760646 544844408 935774096 935774096 860682384 601164978 1006664704 1007549443 1007549443 1040334865 1040334865 906019615 839024919 742053657 742053657 170034701 706782174 706782174 674284301 624802416 719831158 719831158 484838475 1015155191 1015155191 601148145 184815107 573321043 799360805 799360805 1004066056 1072829439 1072829439 930395063 871754739 843588224 231920364 702050412 702050412 910344272 910344272 759611680 808588035 867963945 867963945 541169867 639631496 815866179 815866179 795345176 501956712 239735648 419668247 992401719 992401719 941543721 733234852 538815268 637798425 637798425 999036947 999036947 884122572 860078208 860078208 930732844 930732844 740608269 740608269 187194120 887775567 887775567 853737499 824570095 1005410704 1005410704 710757586 963309447 963309447 672885445 735694997 923181699 923181699 814833075 1042410492 1042410492 864674449 822608931 897597602 897597602 809853347 822235675 822235675 686023190 653018073 648175123 344611928 581374881 581374881 364636496 284765288 200491284 200491284 153940640 98168744 98168744 109236392 109236392 141621604 141621604 69280008 88295584 761925801 761925801 550911557 471863485 471863485 214583711 8911950 172811205 579897352 629212352 652553673 652553673 492381204 492381204 354634456 476105886 476105886 655452835 655452835 762419554 986642777 986642777 856118474 899638403 1013858697 1013858697 418465878 418465878 516317380 978037430 978037430 1047811593 1047811593 610345389 900293106 900293106 548281585 548281585 773089322 939721220 939721220 926964118 721979413 473502084 372844568 723620374 823654947 823654947 633058381 1015584331 1015584331 1050050804 1050050804 795002896 666998093 92348520 92348520 53298856 69660672 73501128 608994080 608994080 537390564 521574794 521574794 108808856 489180586 489180586 198737972 139862488 144520208 484810714 484810714 238737180 388055114 388055114 17774624 556805537 556805537 69477480 542916609 542916609 346251746 346251746 338786088 543930436 543930436 680749569 680749569 693309633 693309633 565617189 545024769 22389217 587727280 587727280 65745360 638664753 706127917 706127917 612503584 210968586 210968586 829762441 1036730863 1036730863 963302435 963302435 637538333 803233266 873253899 918423922 1052761726 1052761726 1005487641 914542611 914542611 983236895 983236895 782052957 984155585 984155585 606919424 549979329 549979329 345576000 275548033 877382176 895434411 895434411 740145521 394544428 550298467 550298467 587354861 587354861 227440736 698793268 801637629 801637629 780215456 149947200 149947200 146802376 50163200 50163200 158022340 158022340 44402400 134246196 134246196 32293952 32293952 151010276 151010276 835715811 838861440 997507356 997507356 627721624 191370430 675807332 675807332 385962028 488884348 488884348 483271743 785004489 943010018 943010018 863422382 954079287 954079287 688526373 151044132 151044132 98947244 207580000 207580000 70266756 264335504 264335504 770643601 770643601 221279992 258924044 258924044 688361992 688361992 489693486 569320788 834354585 834354585 813959235 847251648 847251648 971252898 971252898 794089661 794089661 199053376 558545277 558545277 135633536 608910356 608910356 564030180 549404481 25129537 14840800 12587072 346072144 346072144 271669128 282784218 309466002 309466002 637154332 637154332 675422592 960507908 960507908 358871083 769888346 1068467652 1068467652 860111288 331442506 503654430 503654430 470089744 73135752 111603736 111603736 91257440 47517008 65276016 65276016 56662176 503806416 516298974 716148838 716148838 760142861 760142861 435007889 121942016 194199560 194199560 558538240 566231265 599797889 599797889 562635873 585834576 585834576 544148672 561251616 561251616 88146476 88146476 54996140 34049448 122559672 220732564 220732564 75728152 125858376 558891866 558891866 389547169 954474886 954474886 422512975 403378212 468724032 468724032 361438584 361438584 293907040 394436976 394436976 520023252 520023252 391119546 391119546 138946344 231212268 336593924 336593924 243822168 252854876 344045080 344045080 391062616 391062616 359361088 359361088 55834560 55834560 55227328 276444064 276444064 274467072 404213889 945201671 945201671 808684037 689388225 962634730 962634730 207635488 224432448 691246152 848138534 848138534 761168140 761168140 396351613 211440176 663768160 663768160 942703184 942703184 809762944 153491748 153491748 115343832 115343832 120094984 120094984 731417433 731417433 600948969 736583797 736583797 681629968 704913444 704913444 756878397 1064213263 1064213263 296116026 296116026 251258844 251258844 97252584 413209222 413209222 156682592 773944254 773944254 745935661 570631312 579474513 1040729601 1040895058 1040895058 684050596 527253420 523965206 483381078 943988930 943988930 698459479 63530339 825135997 825135997 904535243 911328352 911328352 903499483 508067926 431434498 431434498 219841312 495497984 1036071143 1036071143 251743110 1016456158 1016456158 359919790 545579584 545579584 537006081 537006081 35424281 110810712 612376576 612376576 120178705 121738816 121738816 183144360 183144360 129257644 227541568 227541568 87320672 78304584 521884682 521884682 328238452 420216866 1000669408 1000669408 480768332 480768332 414006210 389576264 278218166 12112916 83959848 84256160 158171140 158171140 17618176 17618176 6589440 67831328 90128040 90128040 60762264 256401578 478413342 509149370 509149370 310676052 516719120 516719120 486852654 486852654 453019672 428376664 397447634 511591360 511591360 507252510 390541766 390541766 323247558 274054038 274054038 213687196 213687196 343934600 343934600 123208394 315233296 315233296 127403520 58753600 78046488 592165009 657225360 657225360 607167664 90781356 106753820 106753820 6866304 4403328 13113620 13113620 63624432 83902756 222509112 974205098 974205098 907149448 478216739 478216739 551413346 1050226303 1050226303 630785631 629703177 1054840368 1054840368 851566803 700247906 438709234 412747356 412747356 373763184 145753768 68207112 281863914 294357544 335582346 335582346 575791761 575791761 249973169 545221317 772197161 772197161 714260749 203982393 411146802 724723985 724723985 229828260 851165841 851165841 702269578 541639873 792858857 792858857 48370176 692064329 692064329 204555020 138707072 67176744 24604424 90101952 100364256 613533473 900901523 900901523 700413941 700413941 858540327 858540327 517150690 203043550 634153506 763682520 1003289308 1003289308 741253766 978870711 978870711 423143961 421004478 337797658 477763470 477763470 506911518 506911518 168130474 129159250 353209010 353209010 337303050 308077312 289355200 289355200 585458452 685034181 685034181 57345593 630553841 809848468 969338542 969338542 1038506718 1038506718 28444687 169869696 171966612 171966612 37879828 983987562 983987562 352950605 336998660 177683028 148918012 254299472 254299472 136908204 136908204 225191172 678278283 678278283 949817740 949817740 276135791 476238782 476238782 973736128 973736128 965424231 965424231 799091984 799091984 709108957 126952056 790137615 790137615 627076126 627076126 889841356 889841356 32910848 67248128 68498968 68498968 306457744 306457744 336992778 336992778 286403122 325195040 325195040 290744456 290744456 275565602 288883634 288883634 285546242 287254624 287254624 17969248 136067040 165531012 178258304 180355284 180355284 137632720 146936004 1049957148 1049957148 519379707 432742058 432742058 375702938 375702938 753599538 753599538 474034766 474034766 1033818439 1033818439 984869243 545646657 1042564698 1042564698 977872183 790716695 975439926 975439926 835332469 782894369 782601360 743719616 629285200 728813109 728813109 642795820 594933809 594933809 685711381 685711381 580972880 580047569 538085969 13854785 706665509 706665509 198214288 560073301 560073301 69341448 908071321 908071321 962633740 962633740 895607211 742754279 664594151 412885010 412885010 873164074 873164074 777257344 745689133 657830148 657830148 660625360 693615051 693615051 640002071 878932290 878932290 811856259 598049170 222726616 300492166 329010030 329010030 219290724 421557280 421557280 631031868 637561344 637561344 595742039 595742039 526874768 526874768 488685870 390702500 176759892 831334004 831334004 750533664 830210348 1023150984 1023150984 485524198 466301400 642029409 1070236031 1070236031 617202304 957124766 957124766 471863632 589136928 790757201 790757201 685950157 243341637 242254174 783435984 783435984 396936435 311255190 248895556 333830528 606218854 606218854 485794051 1047661710 1047661710 973936278 908237096 908237096 610550947 545023168 154405668 154405668 147184000 147184000 32930496 46475472 336695360 336695360 396319024 396319024 327790706 410340422 410340422 459831798 461557878 461557878 190393400 227625324 227625324 524616890 524616890 221253252 323898322 323898322 257726060 257726060 63968980 298946390 298946390 105804464 453885218 453885218 1114244 1774080 1774080 2097152 2097152 256 143687940 509085270 509085270 380750160 350005064 276808842 464555491 1004814047 1025180604 1025180604 1045916247 1045916247 328737835 125303736 125303736 629021984 662307720 662307720 149446616 211458032 257999292 265887560 265887560 273859323 642316441 642316441 424224669 838344027 838344027 847064979 847064979 444073351 375984290 375984290 340485624 323847268 179072321 961195333 961195333 803332509 520876090 750923777 750923777 474711228 370332186 370332186 110285400 773026718 905943786 905943786 295414826 524871182 524871182 381890778 335666490 326764944 291514656 291514656 374534952 374534952 339923970 314903216 306295874 877501115 877501115 385151232 916194841 916194841 608881816 976487009 976487009 608548819 836878024 836878024 811013531 834558256 834558256 44114304 44114304 122901184 133219320 386126480 386126480 60484624 60484624 8807552 10011136 10011136 1602560 43879968 43879968 6019696 4796544 18326592 18326592 23140992 23140992 5705728 4596352 17105024 26342944 26342944 270614882 365107808 493986090 493986090 235760646 544844408 544844408 1041603610 1049024607 1049024607 915800099 1006711326 1006711326 1040334865 1040334865 906019615 839024919 976656926 976656926 170034701 1065666080 1065666080 847601417 998430077 998430077 719831158 320899360 1015155191 1015155191 484246747 484246747 353444394 799360805 799360805 849635199 849635199 806111580 806111580 843588224 843588224 199161424 164024964 165191748 910344272 910344272 832176610 832176610 139366888 139366888 370204760 461391432 461391432 387499578 295190616 239735648 239735648 100663490 128089941 941543721 941543721 652337625 314876880 637798425 637798425 999036947 999036947 923425646 923425646 860078208 522794660 474219522 307498662 571136545 679741977 887775567 887775567 853737499 824570095 1005410704 1005410704 710757586 963309447 963309447 672885445 735694997 923181699 923181699 814833075 1042410492 1042410492 864674449 822608931 897597602 897597602 444673114 430420038 686023190 756843416 756843416 733369633 733369633 944374371 944374371 610043565 785642205 785642205 563257532 153940640 27795048 104605496 104605496 57746352 98033496 98033496 53402384 88295584 700746272 700746272 550911557 887300456 887300456 849892673 652263897 71409025 314848258 629212352 652553673 652553673 330262411 354634456 354634456 355612289 355612289 655452835 655452835 762419554 986642777 986642777 856118474 899638403 1013858697 1013858697 467603240 467603240 890400798 978037430 978037430 1047811593 1047811593 780038320 797424868 797424868 548281585 548281585 101240124 558238873 926964118 926964118 721979413 438899712 891749552 891749552 823654947 823654947 170106888 817149907 928915131 928915131 795002896 795002896 666998093 663095417 254137060 254137060 230949188 545328448 608994080 608994080 541696336 521574794 521574794 195962280 489180586 489180586 241192348 139862488 144520208 484810714 484810714 238737180 388055114 388055114 9002248 72889792 91759240 91759240 353895978 353895978 343122722 343122722 406142540 406142540 403941376 143790636 278040934 431117034 431117034 162173476 569117184 569117184 587727280 587727280 606279688 606279688 77877505 77853000 17037672 563194112 771834513 956614669 956614669 763515606 1007260753 1007260753 841490879 803233266 873253899 918423922 1052761726 1052761726 662449889 914542611 914542611 302174251 218683114 200150704 984155585 984155585 426061234 165519890 583273188 583273188 568377825 877382176 895434411 955992878 955992878 602427470 970508007 970508007 542705194 542705194 357514410 568485136 568485136 254325961 170462700 234661412 234661412 146802376 43729312 43729312 58131840 58131840 54269072 27061632 53992096 53992096 33677328 33677328 4231312 208896 838861440 844104339 844104339 453641908 190321718 675807332 675807332 872854141 906937455 906937455 483271743 785004489 943010018 943010018 268693506 268693506 234861516 693416720 1053345013 1053345013 170450149 1014330968 1014330968 546833110 489393536 353593208 770643601 770643601 980395486 983190613 983190613 216408572 489693486 489693486 569320788 834354585 834354585 813959235 813959235 364380579 971252898 971252898 794089661 794089661 78385476 558545277 558545277 135633536 150260676 564030180 564030180 549404481 147033441 147033441 23944103 415533254 415533254 565242945 943196066 943196066 575588356 908932570 908932570 675422592 675422592 606195725 254424171 769888346 769888346 1019872280 1019872280 815911174 943759879 969008480 969008480 73135752 111603736 111603736 91257440 47517008 271887300 985036049 985036049 503806416 516298974 716148838 716148838 760142861 760142861 471471630 591689263 591689263 194199560 705058837 705058837 599797889 599797889 562635873 585834576 585834576 544148672 561251616 561251616 88146476 88146476 178079913 793958125 793958125 561685165 577975185 577975185 691049490 1042498324 1042498324 971965262 954474886 954474886 422512975 367564840 367564840 273885440 404232324 404232324 369229968 369229968 61975280 78891568 78891568 66443560 30739232 55247228 231212268 270025736 270025736 386425370 386425370 185648656 185648656 403640488 403640488 327446626 398999560 398999560 304307810 304307810 331437560 338649386 363133224 404213889 945201671 945201671 808684037 689388225 962634730 962634730 150520524 224432448 764121856 764121856 653982677 277642135 267774972 522512121 1069027579 1069027579 1064489919 990155170 990155170 809762944 153491748 153491748 115343832 115343832 120094984 176735316 178275348 178275348 171443712 171443712 539566737 539566737 252889916 252889916 756878397 756878397 718784860 718784860 296116026 251258844 251258844 97252584 598513033 598513033 426695929 840599257 840599257 745935661 630816317 629277220 157438446 1040895058 1040895058 684050596 569453886 569453886 483381078 943988930 953079507 953079507 454124453 825135997 825135997 904535243 972894183 972894183 742563550 508067926 380253496 295900184 411046222 411046222 926894938 926894938 626378115 441053033 346096112 359919790 483046438 483046438 788744372 788744372 109486309 16029712 612376576 612376576 120178705 602669091 602669091 595315534 907179666 907179666 136504332 136504332 159979124 159979124 1007222680 1007222680 944692359 1033089315 1033089315 1070709005 1070709005 604290253 581249361 250981397 143231708 977285291 977285291 1036250414 1036250414 791504172 98659404 44224008 44224008 15281880 15392088 180374466 441330774 441330774 492772918 509149370 509149370 474170534 516719120 516719120 316229368 289638872 428376664 428376664 397447634 511591360 511591360 355572362 390541766 390541766 323247558 274054038 274054038 66052362 54168144 385875976 395314320 395314320 352846992 352846992 274204210 106091160 378728624 592165009 657225360 728928476 728928476 636960448 636960448 105749948 105749948 51246264 55617679 293787135 376100250 755618308 755618308 974205098 1033056833 1033056833 532840526 360858203 213909708 17302560 17302560 17302560 201773120 479087936 479087936 498045962 498045962 244679282 412747356 412747356 373763184 145753768 340633664 340633664 328553528 335582346 335582346 575791761 612805302 873756751 911262363 911262363 875553403 478038124 915704168 915704168 807026905 473604674 382768800 382768800 990782040 990782040 979258983 344796233 760550597 1023545391 1023545391 1028690056 1028690056 755353613 671213573 611269000 615359552 615359552 567595874 900901523 900901523 700413941 700413941 858540327 858540327 406021601 194167110 204272176 204272176 460009372 460009372 741253766 978870711 978870711 961604263 698456565 332006268 477763470 477763470 506911518 506911518 344018976 129159250 353209010 353209010 337303050 336527360 7527320 3582080 585458452 685034181 685034181 46943061 19492581 809848468 809848468 672442642 1038506718 1038506718 274862466 274862466 171966612 171966612 37879828 33689616 720339807 720339807 986524887 986524887 784975882 583041280 585155025 717679481 717679481 664302334 955288909 955288909 949817740 949817740 276135791 476238782 476238782 373685703 871498629 965424231 965424231 883636230 819868944 1016595715 1016595715 815403352 790137615 429759916 561175537 690860389 690860389 657270824 603904161 558455904 284251290 284251290 353985368 353985368 304489298 286403122 325195040 325195040 290744456 290744456 275565602 275565602 279187298 285546242 287254624 287254624 436155302 436155302 278016290 462172128 462172128 180355284 172110144 146936004 1049957148 1049957148 538186288 534343538 534343538 375702938 375702938 727351388 727351388 420768384 420768384 1033818439 1033818439 984869243 545646657 1042564698 1042564698 977872183 790716695 975439926 975439926 835332469 782894369 743719616 743719616 629285200 728813109 728813109 642795820 594933809 594933809 685711381 685711381 580972880 580047569 538085969 162418548 706665509 706665509 198214288 560073301 560073301 524936382 524936382 92588136 962633740 962633740 895607211 742754279 664594151 412885010 412885010 360111018 92486450 745689133 745689133 657830148 657830148 567403233 693615051 693615051 640002071 878932290 878932290 811856259 598049170 222726616 300492166 608004629 707038215 707038215 571306501 707910669 707910669 580051064 370934621 402150270 835466138 835466138 912513329 977626211 977626211 889791531 939601354 939601354 828778757 828778757 403376397 247281664 587486376 730543221 730543221 583075872 404511848 404511848 957124766 957124766 471863632 471863632 503780435 503780435 566040184 947125186 947125186 880194532 880194532 311255190 311255190 248895556 333830528 606218854 957216459 957216459 1047661710 1047661710 973936278 908237096 908237096 610550947 545023168 194478228 209881284 209881284 183371136 207740952 243607644 246478196 246478196 396319024 396319024 52870778 308928944 308928944 459831798 461557878 461557878 189443032 227625324 227625324 524616890 524616890 221253252 323898322 323898322 257726060 257726060 165567256 298946390 298946390 105804464 453885218 453885218 41565072 150347904 206347636 206347636 181550818 456552054 456552054 303321002 182209886 171197334 493373326 493373326 464555491 1004814047 1025180604 1025180604 156143108 550835393 550835393 79823360 79823360 596775504 662307720 662307720 149446616 149446616 242534781 1012966166 1012966166 929613298 929613298 587801649 754027537 771017709 806626704 847064979 847064979 444073351 142352902 130135064 323847268 323847268 217470262 259169142 259169142 383832892 520876090 520876090 474711228 474711228 272814210 272814210 89709568 89529000 207484800 360058028 406887018 406887018 392820536 392820536 326764944 326764944 287186466 61354568 374534952 374534952 110883538 1184256 1179648 877501115 877501115 385151232 916194841 916194841 356978186 294322792 540758240 608548819 836878024 836878024 811013531 834558256 834558256 44114304 44114304 122901184 133219320 133219320 47218984 20380576 38066400 43844208 48380368 65874992 65874992 65882240 65882240 50524416 50524416 18391264 25585952 25585952 23140992 29495296 29495296 22028160 22028160 5972576 19083520 19083520 152752640 152752640 556533312 568006161 578104209 1041603610 1049024607 1049024607 915800099 1006711326 1006711326 875598597 875598597 270643209 530977632 976656926 976656926 151308324 1065666080 1065666080 847601417 998430077 998430077 870356994 320899360 32859363 248063629 885860667 885860667 353444394 637567952 637567952 703662791 703662791 1064847534 1064847534 792906859 792906859 1016319568 1016319568 932824068 727121509 727121509 832176610 832176610 202250380 139366888 370204760 461391432 461391432 387499578 295190616 231911668 26352372 154534404 154534404 230015724 230015724 133021824 133021824 76394104 609283260 609283260 431608900 923425646 923425646 522794660 522794660 474219522 307498662 571136545 679741977 679741977 629827256 629827256 151842852 148986656 51061744 51061744 56956864 56956864 45297216 25189536 13165664 15222016 134775936 189801796 195568372 580955472 722332725 722332725 602267669 547956033 673322057 1033963573 1033963573 756843416 733369633 733369633 944374371 944374371 610043565 785642205 785642205 563257532 85853696 88396832 104605496 104605496 57746352 98033496 98033496 53402384 256932793 601206333 625937216 625937216 887300456 887300456 849892673 652263897 71409025 853371394 853371394 584060897 584060897 288949794 309504096 309504096 59328672 16793632 85200896 85334568 203772457 723984497 723984497 841419636 841419636 600128057 600128057 467603240 467603240 1046066621 1046066621 502292026 692532819 692532819 780038320 780038320 542217881 542217881 966072978 966072978 977944706 977944706 302023829 998400 5084704 891749552 891749552 50704139 190836660 740055576 740055576 656289961 552777157 197599496 589347048 663095417 663095417 254137060 254137060 230949188 545350912 550243521 550243521 541696336 163584036 163584036 195962280 195962280 241192348 241192348 74151512 113439248 140343000 212212044 212212044 172272656 82836936 30235808 3019168 91759240 91759240 410068800 433070566 433070566 408949390 408949390 406142540 336111054 152654924 278040934 431117034 748477705 961941059 961941059 624295968 559889184 559889184 606279688 606279688 553866016 539281665 537166080 640100422 771834513 956614669 956614669 763515606 1007260753 1007260753 841490879 583213059 548574604 548574604 358365902 662449889 884998902 884998902 213393512 213393512 723659520 723659520 420323920 426061234 426061234 600381779 600381779 583273188 568377825 568377825 234010250 955992878 955992878 602427470 970508007 1021408300 1021408300 690680911 357514410 568485136 617640764 654803508 654803508 380697688 433596934 433596934 311476882 231893222 390091880 390091880 314425280 105330848 53992096 53992096 33677328 33677328 33993027 33993027 330301809 330301809 453641908 453641908 272651264 1036320795 1036320795 872854141 906937455 906937455 132154724 259335560 1064539139 1064539139 353794794 567052409 567052409 693416720 1053345013 1053345013 170450149 1014330968 1014330968 546833110 489393536 353593208 513167900 513167900 989090718 989090718 983190613 513528386 513528386 254972908 309330576 342991704 713125074 953945799 953945799 748160589 748160589 617542344 451948813 440461588 440461588 312893532 686530949 686530949 51957444 49062400 677621024 677621024 147033441 566881089 566881089 415533254 415533254 565242945 943196066 943196066 780610624 908932570 908932570 681590791 681590791 658755788 658755788 891400328 891400328 1019872280 1019872280 815911174 943759879 969008480 969008480 3335296 58357280 566615138 566615138 541236050 588476354 985036049 985036049 790700469 790700469 636355215 855712006 939524103 1057027584 1057027584 591689263 591689263 130788020 705058837 705058837 567989985 849092166 849092166 549238769 292334051 61416816 38954752 83485088 86264932 86264932 196167408 793958125 793958125 561685165 577975185 577975185 691049490 1042498324 1042498324 971965262 876165554 876165554 792297522 946030695 946030695 392704413 404232324 959061535 959061535 369229968 618998603 618998603 116476424 477751182 477751182 338281982 202861574 270025736 311748758 386425370 386425370 231334088 231334088 403640488 403640488 319427634 398999560 398999560 304307810 387630112 387630112 338649386 363133224 363133224 271423496 271423496 681727110 898662601 898662601 207754989 12645480 126559512 764121856 764121856 653982677 666950000 666950000 522512121 1069027579 1069027579 1064489919 990155170 990155170 407249229 480608319 1025771886 1025771886 499729516 752094760 752094760 749806084 178275348 171443712 171443712 100993280 100993280 10747904 10747904 934054583 934054583 718784860 718784860 472287614 253484952 1000733262 1000733262 1042750775 1042750775 426695929 840599257 840599257 630816317 630816317 629277220 269517312 755994667 755994667 487083672 569453886 569453886 405537041 942445012 953079507 953079507 814255968 814255968 375949460 553325038 972894183 972894183 1006702872 1006702872 975384855 227151944 411046222 875791495 926894938 926894938 883898036 883898036 778066260 916264562 916264562 467068061 788744372 788744372 397155112 397155112 312485202 293407008 663332696 663332696 873006608 873006608 907179666 907179666 136504332 201462544 238027548 238027548 1007222680 1007222680 944692359 1033089315 1033089315 1070709005 1070709005 604290253 581249361 250981397 540248064 977285291 977285291 1036250414 1036250414 791504172 177151040 120292384 120292384 108787608 83916720 180374466 441330774 441330774 492772918 492772918 474170534 474170534 424152070 295019046 295019046 417788680 417788680 112499184 112499184 167175264 256241076 256241076 141048964 141048964 134978932 192553060 374404648 374404648 357027570 385875976 395314320 395314320 352846992 352846992 302128538 302128538 378728624 378728624 604787748 728928476 728928476 636960448 636960448 191048720 191048720 135788036 55617679 293787135 376100250 755618308 755618308 867836718 1033056833 1033056833 532840526 437306727 635249170 1048889439 1048889439 621079647 600426569 1061439664 1061439664 973242827 682004750 421695770 328209000 328209000 43277968 43277968 340633664 340633664 328553528 328553528 140689648 225479284 612805302 873756751 911262363 911262363 875553403 478038124 915704168 915704168 807026905 1071841161 1071841161 382768800 990782040 990782040 979258983 344796233 760550597 1023545391 1023545391 1028690056 1028690056 755353613 671213573 611269000 615359552 615359552 542975040 539606435 632853927 909724503 909724503 632196179 632196179 554816643 554816643 765665406 765665406 1045380255 1045380255 930668426 930668426 961604263 961604263 698456565 310048984 310048984 67403840 59107440 344018976 344018976 8822858 17750048 17750048 336527360 336527360 18875136 18875136 112529441 551905484 566721508 566721508 676003008 676003008 789866794 789866794 411112512 270799234 287312130 973367058 973367058 964554663 767680749 1057079483 1057079483 720339807 986524887 986524887 1020002698 1020002698 585155025 717679481 717679481 664302334 955288909 955288909 588583366 12582912 12583104 70255816 70255816 3941120 75704896 75704896 883636230 883636230 819868944 1016595715 1016595715 815403352 377423216 359452074 359452074 690860389 789726204 789726204 603904161 558455904 284251290 284251290 353985368 461968912 461968912 348490112 348490112 75339648 75339648 68108384 25692160 25692160 289968256 289968256 275800320 3014912 436155302 436155302 278016290 462172128 462172128 172110144 914358413 987366471 987366471 1029386311 1029386311 534343538 534343538 1009213311 1009213311 727351388 727351388 489171200 489171200 154642976 135012878 135012878 638345242 671214860 671214860 602141162 602141162 339096524 951287406 1057355935 1057355935 798018292 324135052 238837072 235198700 235198700 153149708 149039132 201537664 201537664 141135424 50122704 45928272 162418548 162418548 194959616 285510657 822156323 831335523 831335523 524936382 524936382 379877171 651038069 833356014 833356014 237923690 346893642 732092981 732092981 1049772068 1049772068 737633588 303432332 251867196 87309076 70854408 80155408 80155408 302531808 331399410 331399410 331399410 288960154 351814362 351814362 608004629 707038215 707038215 571306501 707910669 707910669 356651178 755372426 755372426 917777548 917777548 912513329 977626211 977626211 889791531 939601354 939601354 828778757 828778757 552022416 238817052 587486376 730543221 730543221 67483745 404511848 404511848 126051616 49380240 680582108 680582108 644225433 672602416 688926005 947125186 947125186 880194532 880194532 461870970 290248058 244841284 506054032 506054032 957216459 957216459 688682892 688682892 593119482 275960706 374544800 374544800 331539152 276086304 313821870 452130798 452130798 207740952 243607644 424728554 424728554 387898938 387898938 349737744 308928944 308928944 224659368 452399200 452399200 352120258 352120258 298149290 298149290 493359008 493359008 431227438 7865542 140922240 140922240 165567256 190722852 190722852 1313280 34200084 144684612 144684612 150347904 206347636 206347636 181550818 456552054 456552054 312739856 312739856 171197334 493373326 493373326 219145216 219145216 688312133 688312133 156143108 550835393 550835393 176528476 176528476 596775504 596775504 690143849 782348485 782348485 107188252 1012966166 1012966166 929613298 929613298 587801649 754027537 771017709 771017709 288933666 308814464 891720011 891720011 883054891 285574534 285574534 217470262 259169142 431943891 875442143 1027993751 1027993751 1026429142 315559146 277557858 352674216 352674216 498742120 498742120 360058028 406887018 406887018 392820536 392820536 557631809 557631809 273679306 819463086 1026671261 1026671261 989917021 713295957 182925780 819497860 819497860 792533442 344993728 356978186 356978186 430192416 430192416 493430190 493430190 263287426 150285956 443889664 473955998 535247336 535247336 9626272 32691168 281303472 289551072 289551072 124131720 124131720 516397556 516397556 509971800 408389910 332801516 199259288 199259288 156546212 225306880 225306880 225708608 225708608 29495296 22028160 22028160 34709616 162206805 558085729 558085729 168522385 556533312 568006161 613561036 841024124 841024124 535954298 254286668 973736215 973736215 67503111 1049088 271062634 271062634 880838958 880838958 531156493 360714300 690791784 690791784 17717344 870356994 870356994 819685386 623677995 627327243 1046324589 1046324589 947932418 637567952 774120184 774120184 654862331 1064847534 1064847534 354885011 261569148 1016319568 1016319568 932824068 727121509 727121509 252207220 537002376 537002376 229774145 174691032 151643172 119665768 134234828 231911668 231911668 26352372 154534404 154534404 908975897 908975897 573306129 377380184 654695745 654695745 639101049 625004889 1014576865 1014576865 943718535 856491023 856491023 387977488 387977488 319427634 287965456 130829592 151842852 151842852 148986656 68704160 51061744 56956864 56956864 58986528 60425392 60425392 55186608 54573200 54573200 50413856 713031760 721420341 857931893 868300133 948650161 948650161 1033963573 1033963573 491487531 396627718 612947466 612947466 759316516 759316516 575066285 761344669 761344669 241508792 88396832 187458881 187458881 636687316 702678621 702678621 254435869 256932793 608932493 625937216 625937216 682524993 682524993 176293660 547743752 547743752 853371394 853371394 670425817 670425817 642598081 670775289 670775289 611472465 273967786 805534353 805534353 203772457 681914369 722018624 841419636 841419636 600128057 600128057 229835199 1028752540 1046066621 1046066621 502292026 692532819 891016941 1023899709 1023899709 243866140 243866140 966072978 966072978 977944706 977944706 906979381 774269245 722798485 738279480 738279480 33594885 556521248 740055576 740055576 656289961 552777157 214149252 589347048 589347048 51516353 32906208 25625344 17376672 545350912 545350912 21207137 67656928 266734848 266734848 189717684 18164256 220213032 220213032 55051440 55051440 74307200 94033512 94033512 32325216 32325216 30235808 3019168 3019168 22358432 410068800 433070566 433070566 408949390 408949390 214958796 214958796 165201636 165201636 342367587 748477705 961941059 961941059 624295968 559889184 559889184 570165984 570165984 553866016 539281665 537166080 640100422 753815326 850007315 850007315 536499568 392741106 827027554 827027554 814453001 814453001 548574604 358365902 358365902 884998902 884998902 213393512 213393512 723659520 723659520 253759757 29306261 681284336 681284336 600381779 323968563 323968563 309730194 546021216 593229489 593229489 331485426 911306923 1021408300 1021408300 694706354 694706354 459485486 617640764 654803508 654803508 380697688 433596934 433596934 311476882 348181072 390091880 390091880 314425280 105330848 97567464 83181664 83181664 28320032 33993027 33993027 330301809 330301809 375447536 375447536 338041098 1036320795 1036320795 432747750 799537260 799537260 536877170 403508142 1064539139 1064539139 353794794 567052409 945342751 945342751 137643965 44859585 180338843 248247516 908415153 908415153 852022862 860439542 860439542 513167900 989090718 989090718 176245635 513528386 887597952 887597952 886569675 382169931 713125074 953945799 953945799 946654031 1041549020 1041549020 67109396 440461588 440461588 312893532 686530949 686530949 51957444 142348704 677621024 677621024 33560320 566881089 566881089 250745820 385422820 385422820 327750046 780610624 780610624 772412445 541328640 681590791 681590791 658755788 658755788 891400328 891400328 675546885 675546885 681900288 681900288 162861472 162861472 33090912 32105952 566615138 566615138 541236050 588476354 672505623 672505623 790700469 790700469 547956075 855712006 939524103 1057027584 1057027584 378449976 144320092 144320092 683709988 683709988 567989985 849092166 849092166 707408961 707408961 597236256 597236256 553042688 86264932 177032000 196167408 196167408 154720548 238956644 238956644 187960644 567136473 567136473 569170660 569170660 275909505 792297522 792297522 946030695 946030695 392704413 302724114 959061535 959061535 309357266 618998603 618998603 116476424 477751182 477751182 338281982 496112164 496112164 311748758 311748758 265689802 231334088 277717980 312401490 312401490 319427634 319427634 42055792 45224784 387630112 387630112 25744922 25165920 478810251 1008409711 1008409711 681727110 898662601 898662601 207754989 13256356 245962608 245962608 219361836 117973884 666950000 666950000 141399145 732915229 877933107 877933107 768870837 689986010 407249229 480608319 1025771886 1025771886 797520714 752094760 752094760 749806084 54273568 77604096 77604096 537143561 537143561 69280008 185469172 1032605479 1032605479 731397848 887784691 887784691 964678427 1000733262 1000733262 1042750775 1042750775 960034076 960034076 924004923 587515866 604081688 701158629 701158629 589759510 1030784416 1030784416 549907456 956347270 956347270 302917704 1001154833 1001154833 814255968 814255968 859685217 859685217 862528947 862528947 1006702872 1006702872 975384855 276828160 1021452994 1021452994 875791495 628592536 883898036 883898036 778066260 916264562 916264562 679817240 654438432 509636002 509636002 768259156 768259156 680210924 680210924 663332696 873006608 873006608 102826512 102826512 43305488 201462544 238027548 238027548 95290016 95290016 83763144 86419568 270846210 870861436 870861436 451301842 406248198 78941252 694734658 694734658 159707393 151259172 151259172 177151040 177151040 120292384 120292384 108787608 88474656 17863712 17863712 37814948 507529872 507529872 521194506 521194506 142936650 131638334 444934230 444934230 417788680 182950488 267454740 267454740 256241076 256241076 141048964 141048964 134978932 332440630 374404648 374404648 357027570 118031040 376116354 376116354 125575464 259524540 421152216 421152216 277533762 171504654 146903616 209801036 235531588 235531588 135580164 236096536 236096536 135788036 134948868 137039872 137438980 137438980 123221944 867836718 867836718 699536229 450924902 437306727 635249170 1048889439 1048889439 621079647 600426569 1061439664 1061439664 973242827 1061552495 1061552495 451937238 830542413 858258858 858258858 583812001 924497130 927568924 927568924 789144955 789144955 747259944 490606952 7414308 1032123912 1032123912 967712103 541625736 541625736 569598984 1071841161 1071841161 698216037 25814112 142639324 247480388 247480388 353423360 353423360 416304000 817287940 817287940 479220704 479220704 541250688 541250688 201876032 213909708 213909708 632853927 909724503 909724503 632196179 632196179 554816643 554816643 765665406 765665406 1045380255 1045380255 930668426 930668426 840278963 544041150 343524746 336397890 335565340 501875364 501875364 473466732 452084826 40172896 382320706 382320706 372170010 340536458 270278224 278016112 877949238 877949238 566721508 566721508 676003008 840721426 840721426 789866794 407306240 407320710 407320710 973367058 973367058 964554663 791154760 1057079483 1057079483 1073705388 1073705388 424249366 1020002698 1020002698 808044659 277948804 277948804 48111312 949466708 949466708 762046501 762046501 397918519 502830878 502830878 412344942 873609024 873609024 764158693 745282638 1045566724 1045566724 360579199 377423216 421660142 501748006 506584726 506584726 789726204 789726204 179830277 215190144 216233108 216233108 97765132 461968912 461968912 348490112 348490112 75339648 75339648 20972736 25692160 25692160 289968256 289968256 296725378 296725378 273485120 273485120 33165792 33165792 40498960 108827169 914358413 1054422095 1054422095 1029386311 1029386311 399234473 287101137 1009213311 1009213311 741541522 741541522 489171200 489171200 607700745 607700745 490433881 638345242 671214860 671214860 602141162 602141162 339096524 951287406 1057355935 1057355935 798018292 324135052 238837072 246597000 246597000 149039132 149039132 259050288 259050288 241245332 106764964 45928272 45928272 45533440 8837120 285510657 822156323 831335523 831335523 437966358 437966358 405855766 651038069 833356014 833356014 430051686 346893642 732092981 732092981 1049772068 1049772068 737633588 727026233 592849602 592849602 341453711 541039244 1049024607 1049024607 730303167 1065440493 1065440493 1023983704 365597178 365597178 331339074 302589458 809541761 809541761 857470480 857470480 541700786 755372426 755372426 917777548 917777548 896803259 896803259 84739808 789520992 789520992 654976505 654976505 579078225 593121082 593121082 902829250 902829250 561036876 561036876 416023147 321195920 462863390 464857814 894550140 894550140 840618419 840618419 801882208 801882208 945176424 945176424 461870970 461870970 290248058 244841284 506054032 506054032 80381730 303756052 405349638 405349638 275960706 275960706 374544800 374544800 288526306 276086304 313821870 452130798 452130798 383400000 383400000 424728554 424728554 387898938 387898938 349737744 155599504 224659368 224659368 452399200 452399200 407256326 407256326 298149290 298149290 493359008 493359008 431227438 138432448 140922240 140922240 157263796 281580678 281580678 193627764 458277106 458277106 144684612 139611136 139611136 65395632 146006368 162064384 162064384 312739856 404785162 404785162 430984488 430984488 151895822 93266188 97823112 97823112 94424000 106321840 106321840 176528476 176528476 186028672 186028672 690143849 782348485 782348485 255853336 844301168 931270779 931270779 1040854079 1040854079 869599913 869599913 742780337 742780337 753001287 891720011 891720011 883054891 397422945 285574534 92164434 943971836 943971836 875442143 1027993751 1027993751 1026429142 280066496 352331266 352674216 352674216 498742120 498742120 431516600 431516600 290538368 319610544 416964758 557631809 557631809 1010829710 1010829710 1026671261 1026671261 989917021 713295957 182925780 819497860 819497860 792533442 181219628 334301818 334301818 430192416 430192416 493430190 493430190 263287426 150285956 443889664 473955998 535247336 535247336 95816648 377712722 377712722 361179210 356516010 356516010 124131720 516397556 516397556 509971800 408389910 332801516 199259288 199259288 156546212 225306880 225306880 225708608 225708608 20848416 20848416 49416352 49416352 162206805 558085729 558085729 168522385 168522385 685611434 685611434 841024124 841024124 535954298 443255460 973736215 973736215 964412675 964412675 430478703 271062634 880838958 880838958 866678333 414380781 690791784 690791784 604552741 604552741 942531142 942531142 623677995 627327243 1046324589 1046324589 947932418 974670252 974670252 774120184 324534703 237767964 135006536 42207312 42603600 235471880 235471880 781278201 781278201 252207220 252207220 537002376 537002376 229774145 705975200 734267637 734267637 651319304 739945161 739945161 618106140 618106140 1006764874 1006764874 908975897 647251984 583582720 698450758 698450758 891450240 891450240 1014576865 1014576865 943718535 856491023 856491023 613879756 781527645 781527645 287965456 673099192 673099192 101618432 101618432 68704160 4194432 17843840 17843840 102372488 102372488 169220628 263326580 263326580 117722988 686648692 713031760 726188180 990511349 1002632279 1002632279 981730152 981730152 962792238 926218844 644960199 435720094 628299726 759316516 759316516 674695184 761344669 761344669 537264640 538319361 538319361 747459024 747459024 702678621 724407320 724407320 855942960 855942960 608932493 521042046 682524993 682524993 176293660 547743752 547743752 554975809 633398049 670425817 670425817 642598081 670775289 670775289 611472465 273967786 805534353 805534353 46666968 85008936 722018624 783886173 783886173 279387024 731262036 731262036 1028752540 1028752540 584799164 766109037 992609779 992609779 1023899709 1023899709 793895613 793895613 858383667 858383667 806051862 906979381 906979381 774269245 722798485 647691797 573605600 197473836 556521248 556521248 553862177 553862177 155299297 214149252 543109868 543109868 538905313 135541828 135541828 232591076 232591076 576428280 576428280 575198880 266734848 266734848 189717684 18164256 220213032 220213032 55051440 55051440 74307200 94033512 94033512 22919368 12885248 17828992 26782272 26782272 9185344 418120262 418120262 71959628 76027008 349178820 349178820 404226180 404226180 495001764 495001764 480359754 480359754 147718242 83016512 31494688 31494688 22897792 22897792 16649344 294058498 294058498 81400576 753815326 850007315 850007315 392741106 621741057 827027554 845993089 870691308 870691308 583999492 970265748 970265748 706740776 976825366 976825366 757081898 707070997 595681512 728318075 984431542 984431542 681284336 301255650 313007232 313007232 309730194 546021216 593229489 593229489 331485426 331485426 474169618 497148270 694706354 694706354 400156297 166766056 136340244 615663221 615663221 254465340 320472682 320472682 412767820 412767820 319706320 540974888 642653337 642653337 586812232 83181664 35932576 27819264 25688160 15075440 16548594 428738352 448142166 448142166 270145112 378547997 378547997 134250612 536877170 536877170 403508142 906646844 906646844 439692054 439692054 945342751 945342751 137643965 44859585 180338843 248247516 908415153 908415153 852022862 860439542 860439542 378622596 378622596 202506632 202506632 104870528 887597952 887597952 886569675 504764958 504764958 949751367 949751367 946654031 1041549020 1041549020 283881736 283881736 217682646 207429328 207429328 28757712 28757712 142348704 161478432 161478432 33560320 34603536 327422791 724966197 724966197 385422820 572796045 572796045 1049733270 1049733270 541328640 602169345 602169345 602006001 304876818 373881240 591553636 675546885 675546885 680797089 680797089 560449892 556849664 33090912 52360592 61866032 61866032 50918176 23858336 55582400 55582400 87139904 94946664 446555190 607964956 813818624 813818624 378449976 584903321 584903321 491344964 831978593 831978593 715093056 715093056 197901780 707408961 707408961 597236256 597236256 553042688 45951296 177032000 186005608 186005608 227617296 227617296 187960644 187960644 133622768 234042348 338294660 552374710 552374710 459427265 352931336 352931336 338499674 338499674 302724114 225220020 521684356 521684356 115884202 313178332 313178332 165151500 209843552 209843552 496112164 496112164 227214624 424071052 424071052 225786464 277717980 312401490 312401490 374212994 374212994 38344832 65196528 356692450 356692450 343545738 347342378 478810251 1008409711 1010372525 1010372525 344491752 664810141 664810141 22709920 245962608 245962608 648974948 648974948 631525320 744710244 744710244 670139130 535686654 466090230 466090230 259389774 341836424 341836424 222391658 797520714 797520714 580882937 262545725 639380041 639380041 623117777 692795472 692795472 537143561 130886904 841832615 1032605479 1032605479 731397848 887784691 887784691 964678427 964678427 960656685 516764965 262621070 960034076 960034076 924004923 587515866 675779092 701158629 701158629 589759510 1030784416 1030784416 549907456 956347270 956347270 302917704 1001154833 1001154833 839773284 585145766 859685217 859685217 862528947 862528947 1052807653 1052807653 999367284 311437639 1021452994 1021452994 628592536 628592536 558719121 422090326 422090326 587530622 679817240 679817240 654438432 509636002 509636002 768259156 768259156 680210924 680210924 574694586 574694586 110108696 310575202 310575202 43305488 129859880 129859880 37667072 579584046 1007999055 1007999055 622527549 1004787611 1004787611 870861436 384439770 384439770 357943280 694734658 694734658 889555643 889555643 752133097 564150834 130619088 130619088 358091906 358091906 88474656 402957962 504728144 504728144 507529872 507529872 521194506 521194506 222367836 983135473 983135473 608573577 634512105 634512105 1050116156 1050116156 744085233 744085233 625858581 219651668 22561920 332440630 332440630 229662920 291849282 363097568 755687213 755687213 526848704 1028664251 1028664251 421152216 277533762 171504654 697001280 697001280 690090848 691665512 740270112 740270112 236096536 135077888 134948868 137039872 137438980 137438980 75806156 115229384 216790676 216790676 146915236 35925864 355470344 355470344 143452870 89516032 151554240 289680608 289680608 636442968 1061552495 1061552495 927515835 927515835 858258858 858258858 589264928 924497130 927568924 927568924 789144955 789144955 747259944 490606952 482258382 1032123912 1032123912 967712103 733498150 733498150 761765694 761765694 717806064 698216037 514357590 243157400 298627658 779372089 779372089 623034110 635666720 817287940 817287940 767312684 767312684 220249345 623460777 739160192 739160192 625612032 625612032 11010048 535832432 535832432 375395510 311107746 330313706 716051490 932335088 932335088 840748706 860595509 860595509 365870082 365870082 451091358 451091358 471732742 501875364 501875364 473466732 452084826 40172896 382320706 382320706 372170010 340536458 270278224 278016112 877949238 877949238 1070578766 1070578766 911470282 911470282 843159080 839155856 673530129 742983297 742983297 670565789 384378618 839125378 839125378 791154760 858229620 1073705388 1073705388 719856752 866395364 866395364 1046340932 1046340932 944847362 944847362 949466708 949466708 762046501 762046501 397918519 502830878 502830878 412344942 873609024 873609024 966334496 966334496 1045566724 1045566724 1015353548 762936878 421660142 628347328 628347328 506584726 733428597 926882125 1030109090 1030109090 490068526 470811150 426382394 426382394 319554580 334058640 334058640 94455264 94455264 80011370 269080714 277542498 277542498 31394306 493817512 493817512 408262058 408262058 523168504 523168504 232921506 149467154 805315029 1054422095 1054422095 960706127 960706127 628330724 628330724 580603937 711406019 741541522 741541522 518073548 503911642 607700745 607700745 490433881 490433881 244392784 246489948 246489948 75509844 11670336 630679040 630679040 286551081 844733628 844733628 215276764 246597000 572059817 576126524 604066597 604066597 577679248 241245332 156448256 156448256 23751584 23751584 6147104 22553312 22553312 30998624 408457360 437966358 437966358 408455276 408455276 404881504 430051686 1006991392 1023594543 1023594543 883441762 883441762 497927512 727026233 727026233 592849602 592849602 341453711 541039244 1049024607 1049024607 730303167 1065440493 1065440493 1023983704 365597178 365597178 331339074 302589458 809541761 809541761 857470480 923476928 939137019 939137019 542189159 889989023 1051531922 1051531922 824498447 824498447 821555201 821555201 486879296 486879296 737426609 839002512 839002512 902829250 902829250 734639676 734639676 713886812 1047152635 1063205301 1063205301 894550140 894550140 840618419 840618419 801882208 801882208 945176424 945176424 523788354 523788354 192623388 486996872 486996872 403898880 74374536 170320180 170320180 186767636 186767636 149018944 165904772 165904772 163891428 105099424 130454564 231202060 231202060 383400000 383400000 358900658 273204354 270711384 339771882 339771882 152209424 105120548 96604392 308484644 352143936 407256326 407256326 139390688 139390688 268807938 270083586 406448004 406448004 138432448 72139532 16850976 281580678 281580678 193627764 458277106 458277106 42567264 51503664 55665328 55665328 51454512 30439424 30439424 274733120 404785164 404785164 201605382 125879024 92922984 73747176 97823112 97823112 94424000 94424000 42178096 22116832 22116832 186028672 186028672 187736896 193060980 255853336 255853336 844301168 931270779 931270779 1040854079 1040854079 869599913 869599913 1026242472 1026242472 753001287 753001287 692829474 636027445 623105122 623105122 973077354 973077354 943971836 285043724 260360316 317507554 317507554 368032658 368032658 352331266 343193384 1018953935 1018953935 529167136 555850175 555850175 560140481 560140481 416964758 481845575 1010829710 1010829710 978850118 586815441 443276487 46996352 987016176 987016176 36312560 65672464 198521540 198521540 146868596 5424256 16798336 21020832 21020832 21020832 159750988 494023192 508744350 508744350 261523682 95816648 377712722 377712722 361179210 356516010 356516010 40960912 49317968 49317968 45107472 35774736 44114256 44114256 35725376 5571840 205261728 205261728 80166688 80166688 10489800 20218768 49416352 49416352 55632528 55632528 88560792 88560792 69134120 685611434 685611434 388112837 253889278 452989326 452989326 705186736 963081382 964412675 964412675 430478703 189847189 579260477 866678333 866678333 414380781 327601919 545115142 604552741 604552741 942531142 942531142 693979370 365464736 608259105 767395363 1001924486 1059102758 1059102758 276594726 276594726 703873464 707184379 707184379 505955160 866294716 866294716 824581096 781278201 243816552 244863640 244863640 214044876 28480236 705975200 734267637 734267637 651319304 739945161 739945161 618106140 618106140 1006764874 1006764874 647251984 647251984 583582720 698450758 698450758 891450240 891450240 571703530 372966225 891918853 891918853 591009585 613879756 1023932463 1023932463 980412549 735028609 673099192 122076992 755167685 755167685 592056448 597591840 597591840 103849024 102372488 209850567 826413479 1012924815 1012924815 686648692 686648692 726188180 990511349 1002632279 1002632279 981730152 981730152 926218844 926218844 680923960 680923960 628299726 746589110 746589110 674695184 674695184 639056409 639056409 538319361 736904746 1056230367 1056230367 519693671 724407320 724407320 855942960 855942960 436928529 521042046 571343952 571343952 147574664 179152024 179152024 69142016 81587456 81587456 41518344 108867480 108867480 83149144 81131328 43582512 43582512 64489200 708059369 708059369 212940910 117842258 1011289207 1011289207 731262036 731262036 696332289 256406934 584799164 766109037 1056221872 1056221872 363476111 570615411 793895613 793895613 858383667 858383667 547855474 377888616 377888616 201357772 212489452 620012024 620012024 588270049 548290048 548290048 553862177 553862177 564966432 564966432 88691681 538905313 538905313 135541828 135541828 232591076 232591076 576428280 576428280 575198880 521050818 521050818 75765928 374565538 374565538 257060876 257060876 191440432 459793170 459793170 255918776 307365450 307365450 98126640 46220800 39168608 131662916 418120262 418120262 217844876 217059272 349178820 349178820 474562572 474562572 495001764 495001764 480359754 480359754 147718242 83016512 31494688 31494688 22897792 22897792 278472258 278472258 274268352 875058562 875058562 570126346 905496555 905496555 621741057 621741057 845993089 870691308 870691308 583999492 970265748 970265748 706740776 976825366 976825366 757081898 707070997 595681512 728318075 984431542 984431542 378276954 1066151468 1066151468 647979617 503506705 742646373 985496373 985496373 489421540 489421540 690644633 690644633 1006723728 1006723728 907027084 292675774 60842848 615663221 615663221 254465340 320472682 320472682 412767820 412767820 319706320 540974888 642653337 642653337 586812232 65011792 35932576 28067088 832882865 832882865 43551330 538708865 538708865 448142166 233639108 906380224 906380224 677939256 677939256 588366417 55312420 906646844 906646844 439692054 439692054 51644976 51644976 17827856 982008390 982008390 241690385 235313306 306184338 306184338 184889784 321789192 513396750 513396750 212139034 1042026512 1042026512 949084743 402862086 402862086 504764958 504764958 472575822 473618190 473618190 680707984 680707984 806016281 1011517167 1011517167 925258621 618066928 618066928 621004512 705322416 705322416 590714064 207213088 207213088 685328288 790626621 790626621 330177906 1015742946 1015742946 1049733270 1049733270 544245762 268773635 192289716 724779329 724779329 264537224 264537224 637307036 637307036 682637600 682637600 560449892 556849664 66736208 52360592 556997874 573083714 573083714 538038818 696615175 696615175 763937927 763937927 604300142 604300142 813818624 813818624 322691378 584903321 584903321 491344964 831978593 831978593 715093056 715093056 273656566 329674562 329674562 64040704 58595552 92680464 92680464 60477404 186005608 186005608 227617296 227617296 174073408 174073408 581513559 581513559 950334914 950334914 552374710 916013628 916013628 866181643 808052011 515916231 101262360 812868883 812868883 623660833 416341009 644078024 672899090 995776411 995776411 849425995 147428865 680270883 889529351 889529351 822480649 214186958 627955108 822774133 822774133 411562307 895723758 895723758 604574998 356692450 356692450 508346446 508346446 351948106 337005786 1010372525 1010372525 344491752 664810141 664810141 33690128 78365512 78365512 648974948 648974948 631525320 744710244 744710244 670139130 535686654 466090230 466090230 759198022 759198022 917571564 975726551 975726551 674012173 674012173 700121860 700121860 639380041 623117777 692795472 692795472 249038556 249038556 841832615 841832615 692340641 167144917 375934982 375934982 127976000 127976000 637966536 647761497 647761497 754102688 888763116 888763116 995388101 995388101 675779092 576055953 168982661 151011376 365122814 365122814 262204202 262204202 8572992 407410804 839773284 839773284 426352437 32573552 866175570 866175570 439083941 1052807653 1052807653 999367284 311437639 541089984 541089984 342958859 631866565 1063849158 1063849158 650748582 432881024 432881024 425958560 208022688 184636712 237761820 237761820 1014211670 1014211670 601960832 574694586 574694586 260123860 478380636 478380636 298545830 202659996 202659996 96521672 579584046 1007999055 1007999055 622527549 1004787611 1004787611 431112936 431112936 368767086 357943280 357943280 162826983 889555643 889555643 752133097 564150834 162592448 130619088 358091906 358091906 88943784 402957962 504728144 504728144 361508446 289939664 316753074 316753074 222367836 983135473 983135473 608573577 634512105 634512105 1050116156 1050116156 744085233 744085233 625858581 226368156 248290072 248290072 245471300 343146816 343146816 363097568 755687213 755687213 526848704 1028664251 1028664251 680836617 680836617 550651141 697001280 697001280 690090848 691665512 740270112 740270112 138072324 154358316 154358316 74999436 88838692 88838692 83285960 217944008 217944008 216790676 213920280 414267424 431364966 431364966 283501092 308340482 308340482 54001664 54001664 636442968 636442968 843582262 927515835 927515835 208035127 20192272 589264928 589264928 134744192 134744192 6363800 169491369 169491369 942747661 942747661 750467946 943725441 943725441 945751974 945751974 761765694 761765694 701225587 514357590 514357590 243157400 603284468 779372089 779372089 623034110 635666720 900065868 900065868 767312684 767312684 566052196 623460777 739160192 739160192 625612032 625612032 553721889 535832432 535832432 375395510 311107746 330313706 716051490 932335088 932335088 574754961 458903290 334219495 365870082 365870082 451091358 451091358 471732742 471732742 335677008 335677008 103380784 103380784 8496072 9622080 9622080 26814048 26814048 114032912 528487968 765211869 1070578766 1070578766 1070394591 911470282 843159080 839155856 673530129 742983297 742983297 670565789 384378618 839125378 874779687 874779687 688013575 304878720 885394957 885394957 719856752 412140102 1046340932 1046340932 944847362 944847362 576922900 576922900 540199568 38925960 69280008 77867072 77867072 75645952 67764224 289542218 966334496 966334496 902834740 1015353548 1015353548 762936878 64490816 628347328 628347328 483535291 1072032255 1072032255 1030109090 1030109090 490068526 582076826 582076826 888144843 1011352518 1011352518 334058640 363858914 363858914 282976104 282976104 277542498 418890694 418890694 493817512 493817512 408262058 935380562 935380562 638677720 351815270 973768441 973768441 316710916 309281344 529684540 529684540 803387352 887021437 887021437 755381051 676121733 518073548 518073548 503911642 503911642 545292927 638800402 1067481679 1067481679 1039539183 1039539183 251010012 440303612 630679040 630679040 286551081 844733628 844733628 790890813 209783144 572059817 576126524 604066597 604066597 577679248 156276644 156448256 156448256 87762592 591207556 642827692 642827692 394092103 400576382 400576382 273678978 395496119 629979784 629979784 548107577 548107577 1006991392 1023594543 1023594543 948172098 948172098 497927512 497927512 230821016 230821016 105648364 404301216 404301216 377611368 377611368 399648320 399648320 92307560 352879232 381922842 381922842 316085450 588251792 588251792 822608896 822608896 923476928 939137019 939137019 687029927 889989023 1051531922 1051531922 847752865 833237871 833237871 821555201 807089667 1016151294 1016151294 839002512 839002512 587206673 367328742 734639676 882315280 882315280 1047152635 1063205301 1063205301 303987341 303987341 258607360 966806600 966806600 268187767 928550092 928550092 523788354 523788354 192623388 486996872 486996872 333852646 255068988 489308696 489308696 337424434 422748434 422748434 285386164 457182370 457182370 423625764 407765542 416023326 416023326 447079604 447079604 303758802 270711384 460567508 460567508 445651658 277533762 230864462 526820188 526820188 352143936 352143936 298606670 418523108 418523108 408277644 270083586 430992224 430992224 288892262 287383842 164110626 164103396 181557844 189552788 189552788 180359908 147725508 300228 126143168 126143168 47678098 402666058 524555918 524555918 502532716 465043704 465043704 167264838 337708014 337764618 520208700 520208700 109372432 109372432 42178096 30949908 183100884 183100884 174190036 193037148 212025876 212025876 168825600 279448270 279448270 246297796 246297796 227159116 452265978 452265978 1026242472 1026242472 729281845 692829474 831357436 831357436 623105122 623105122 973077354 973077354 948837447 969279895 969279895 645926232 645926232 368032658 368032658 336601768 286867236 1018953935 1018953935 529167136 555850175 555850175 560140481 560140481 405378831 619708673 619708673 978850118 978850118 1010179398 1010179398 604904471 987016176 1026250045 1062112314 1062112314 487575734 353297716 308071042 390182144 390182144 331553510 331553510 107387152 350619890 494023192 508744350 508744350 261523682 87353888 87353888 18205480 348384394 348384394 100696568 100696568 504580244 510064248 510064248 430125414 273905580 167884056 167884056 231747624 231747624 218240032 218240032 168823856 143986696 137703492 135866560 18529688 226732973 552405097 552405097 190692017 600418149 751558973 751558973 631511321 253889278 452989326 452989326 236698558 324006110 324006110 491282656 491282656 450897094 450897094 631661314 634522011 1017192783 1017192783 470608303 470608303 450911356 818858089 818858089 693979370 554984449 608259105 838480123 1001924486 1059102758 1059102758 497234392 460915220 703873464 707184379 707184379 505955160 866294716 866294716 824581096 243816552 243816552 239350844 239350844 8392704 8392704 8388672 17875488 17875488 17875488 219422856 219422856 138485892 81646364 36362064 41992272 41992272 33851392 38013072 38013072 8675456 75770496 75770496 72352392 95429396 949061800 949061800 906283035 504567927 1023932463 1023932463 980412549 735028609 592328025 122076992 755167685 755167685 592056448 597591840 597591840 103849024 30942248 209850567 826413479 1012924815 1012924815 255436202 142159537 142159537 107488222 193996500 717824532 811939749 811939749 688042129 688042129 713294120 713294120 781443713 781443713 575328376 575328376 705059250 881252427 881252427 628183491 736904746 1056230367 1056230367 972294500 1027099015 1066779743 1066779743 638884383 713754133 713754133 679612485 588255860 376771078 376771078 336680976 336680976 311731722 310716498 310242586 310242586 316271130 316271130 340569746 340569746 43582512 64489200 708059369 708059369 347552586 533278506 1011289207 1011289207 622577132 696332289 696332289 205702945 704940058 704940058 1056221872 1056221872 938977936 420830090 310587474 503390256 902898133 902898133 111678754 602370609 602370609 710289652 729817988 729817988 620012024 588270049 320612370 320612370 271371522 918031314 918031314 924145875 924145875 66231979 21133344 79104682 397688082 397688082 362283456 362283456 102651044 134634044 521050818 521050818 75765928 374565538 374565538 257060876 257060876 191440432 459793170 459793170 256456836 307365450 307365450 98126640 64403072 39168608 168561792 213134992 217844876 217844876 217059272 337183552 346629450 474562572 474562572 347123842 273049728 15463872 15463872 16241984 16241984 16451136 16451136 14823424 14823424 278472258 278472258 274896512 875058562 875058562 570126346 905496555 905496555 95023681 92916866 1040308464 1040308464 1036380399 774187293 774187293 476840152 476840152 382471642 285787396 404866344 404866344 402850628 462508384 462508384 320943299 378276954 1066151468 1066151468 647979617 992926073 992926073 985496373 985496373 489421540 882492424 973152279 973152279 1006723728 1006723728 907027084 429925418 195634548 447760290 447760290 2622720 524544 135168 102240584 102240584 133694144 133694144 110105040 56235696 65011792 65011792 55188640 55188640 832882865 832882865 323263602 538708865 538708865 286575138 490524462 906380224 906380224 677939256 677939256 588366417 882033106 882033106 291727621 291727621 729124218 729124218 666396459 304398354 982008390 982008390 482777160 1024201683 1024201683 904409818 1051731690 1051731690 513396750 513396750 845574823 1042026512 1042026512 949084743 1027399919 1027399919 230903919 533087225 948117319 951707463 951707463 785740629 785740629 806016281 1011517167 1011517167 925258621 618066928 618066928 621004512 705322416 705322416 725979616 780674273 780674273 685328288 790626621 790626621 740382165 1015742946 1015742946 1015546959 671120271 544245762 609845984 609845984 724779329 873210890 873210890 583362995 637307036 637307036 682637600 682637600 194996324 138530720 66736208 31428608 556997874 573083714 573083714 538038818 696615175 696615175 763937927 763937927 604300142 604300142 202113358 268789764 329615504 329615504 355254434 355254434 345303984 170504496 170504496 273656566 273656566 329674562 329674562 41785408 58595552 113037008 113037008 215045400 222834304 222834304 243704096 260429896 260429896 209116044 581513559 581513559 950334914 950334914 671694947 916013628 916013628 976322942 976322942 865810035 865810035 812868883 812868883 623660833 416341009 644078024 672899090 995776411 995776411 849425995 177807436 680270883 889529351 889529351 822480649 394485843 627955108 822774133 822774133 860766270 895723758 895723758 604574998 381691056 381691056 508346446 508346446 351948106 301110546 169969280 195496884 195496884 65798944 281616965 945292935 950676531 950676531 848856163 848856163 823796032 809100115 809100115 600476482 1013113954 1063710910 1063710910 986030781 759198022 917571564 975726551 975726551 1044966664 1044966664 700121860 700121860 82838472 239862557 774900892 774900892 249038556 537894472 537894472 240000577 172089492 13648192 169902672 169902672 127976000 127976000 637966536 647761497 647761497 632914293 888763116 888763116 995388101 995388101 860837939 860837939 588951717 585952978 365122814 365122814 944924487 944924487 822527934 963492806 963492806 832013207 832013207 706778883 866175570 866175570 1049488479 1049488479 616074208 472443938 279561032 1044676878 1044676878 860622003 631866565 1063849158 1063849158 650748582 488710446 641996199 759313816 896143715 896143715 514732228 689641008 1014211670 1014211670 470565311 550444145 550444145 965138535 965138535 755699777 755699777 202659996 202659996 96521672 260298896 260298896 194504756 252656700 252656700 294523034 431112936 431112936 426378208 319903712 319903712 419824162 421857638 421857638 419438880 173045830 162592448 658306080 874606386 874606386 88943784 827340171 827340171 84419586 67634184 289939664 316753074 693373303 723779584 723779584 132170232 132170232 100208432 187823360 205211672 205211672 238840104 238840104 186246708 226368156 248290072 248290072 245471300 343146816 343146816 86017954 134218400 156238500 156238500 139758086 604525082 680836617 680836617 550651141 686041700 686041700 400449635 632898668 739861096 751370628 751370628 745598788 196386131 858646967 881845195 881845195 1063569855 1063569855 935807837 639056409 539967293 597566319 923865148 923865148 337497718 337497718 308340482 54001664 54001664 16853000 446022521 446022521 386089373 647823613 1064533162 1064533162 570634513 560756519 967185576 967185576 1002582572 1002582572 169491369 942747661 942747661 750467946 943725441 943725441 945751974 945751974 613800288 701225587 701225587 270153224 270153224 239084176 603284468 603284468 503899538 802589156 802589156 900065868 900065868 1025535874 1025535874 566052196 623386536 623386536 235042372 552429569 553721889 690525794 690525794 381228123 120063288 69415984 106430472 241698456 543293712 574754961 574754961 610096024 610096024 274256900 274877830 274877830 478342360 478342360 236520748 246470172 246470172 221439048 103380784 8496072 98963618 107417008 371927378 371927378 365630896 780547378 780547378 1049607406 1070394591 1070394591 855650307 855650307 101278720 70877208 942744376 993601335 993601335 360975380 528482430 874779687 1048873217 1048873217 304878720 885394957 885394957 454559286 412140102 544776933 544776933 409642386 475188766 475188766 303624840 303624840 239861860 128351760 179465044 179465044 76554528 110549592 110549592 92800104 188950444 188950444 717972560 851628690 851628690 490340988 659220928 659220928 443867770 1072032255 1072032255 340125834 340125834 340601994 582076826 582076826 888144843 1011352518 1011352518 273155202 363858914 363858914 282976104 282976104 29812744 418890694 418890694 367414248 367414248 238093060 935380562 935380562 638677720 396588112 973768441 973768441 501201367 548162449 548162449 529684540 803387352 887021437 887021437 755381051 676121733 1043671839 1043671839 948825624 453280512 545292927 638800402 1067481679 1067481679 1039539183 1039539183 251010012 440303612 440303612 142387381 133830648 703587104 790890813 790890813 155459116 191835580 470735916 487199790 487199790 290375820 219151404 89403396 87762592 87762592 591207556 642827692 642827692 394092103 400576382 400576382 273678978 395496119 629979784 629979784 548107577 548107577 858251410 925292843 925292843 948172098 948172098 405555460 405555460 195565188 195565188 269489942 510690842 510690842 415952962 377611368 349683896 109182568 290965218 352879232 381922842 381922842 316085450 588251792 823224355 823224355 822608896 834512917 834512917 692652676 890765548 890765548 574434842 847752865 847752865 833237871 833237871 807089667 807089667 1016151294 1016151294 665280530 665280530 624967736 1067954433 1067954433 1036257519 882315280 200449919 171647440 171647440 208269700 208269700 258607360 966806600 966806600 271922201 776730419 776730419 754358188 754358188 509798028 503703582 333852646 336251982 341700234 489308696 489308696 337424434 422748434 422748434 285386164 457182370 457182370 423625764 407765542 416023326 416023326 447079604 447079604 303758802 285735816 460567508 460567508 445651658 277533762 346247456 526820188 526820188 276491592 298606670 298606670 418523108 418523108 408277644 31743968 430992224 430992224 289456290 289456290 164110626 164103396 181557844 189552788 189552788 180359908 147725508 1049088 126143168 126143168 77464232 402666058 524555918 524555918 502532716 465043704 465043704 269596356 337708014 337764618 520208700 520208700 160957444 160957444 30949908 178188552 247279452 247279452 174190036 193037148 253445544 253445544 204353440 204353440 188022156 173415060 236268060 236268060 236268060 26863200 420621497 1046429343 1046429343 1052438911 1052438911 831357436 78750048 285959534 547936518 948837447 948837447 969279895 969279895 645926232 645926232 343738624 343738624 148546848 148546848 182426948 184862772 965925492 965925492 197842164 197842164 821944258 821944258 619708673 653332218 742654094 742654094 1010179398 1010179398 604904471 539524102 1026250045 1062112314 1062112314 487575734 353297716 308071042 390182144 390182144 331553510 331553510 107387152 350619890 350619890 103550256 311673674 311673674 87577480 313692050 393313866 393313866 348384394 335753226 100696568 504580244 510064248 510064248 430125414 273905580 242405532 235182380 231747624 231747624 218240032 218240032 168823856 143986696 137703492 135866560 37127040 226732973 552405097 552405097 190692017 600418149 751558973 751558973 637583409 637583409 158503840 153301284 632690281 632690281 324006110 491282656 491282656 450897094 1059832939 1059832939 839943036 1017192783 1017192783 276825380 947641356 947641356 613285064 613285064 454960214 554984449 554984449 838480123 838480123 345174523 497234392 497234392 460915220 460915220 470055848 470055848 480054824 480054824 210352360 780072073 780072073 215674288 215674288 181566072 181566072 20177092 782157128 782157128 717839425 573158537 591411156 678476228 678476228 78152977 1044940954 1044940954 572953480 610153752 610153752 701528030 716219049 917316566 953953692 953953692 744230541 949061800 949061800 906283035 714460439 714460439 140042710 594064337 594064337 52263600 52263600 30747360 539773184 539773184 50911592 50911592 26811496 30942248 227556384 227556384 218967084 218967084 153363720 33818640 542639104 551546433 551546433 538055169 12974785 587201632 688042129 939847556 993576759 993576759 787638183 781443713 575328376 575328376 705059250 881252427 881252427 628183491 640270490 640270490 972294500 972294500 1027099015 1066779743 1066779743 756681262 756681262 713754133 1022558400 1022558400 672904449 376771078 540634196 540634196 311731722 923471622 923471622 858821742 316271130 329884201 619023313 636715691 636715691 665307811 848066082 848066082 347552586 533278506 533278506 568801364 624237434 624237434 437404161 306233490 704940058 704940058 471892489 938977936 1021321672 1021321672 310587474 310587474 902898133 902898133 783526569 783526569 602370609 710289652 729817988 729817988 224568205 719612848 719612848 320612370 271371522 918031314 918031314 924145875 924145875 364936480 44152882 130823224 397688082 397688082 362283456 362283456 55331328 84544648 151143444 151143444 101241904 185188508 185188508 54649008 121770168 122213376 229967664 229967664 256456836 256456836 114548200 75978868 64403072 12813488 168561792 213134992 213134992 83626120 68947464 337183552 346629450 346640202 349318728 351940288 351940288 281067714 285065856 285065856 16241984 16451136 16451136 14162752 14684480 14684480 9572928 274896512 274896512 817975361 817975361 299952256 816272931 816272931 339106468 1072436381 1072436381 1036380399 1021660298 774187293 887629249 887629249 850919507 744489538 372705592 252707388 252707388 85140020 284173648 284173648 272967810 318771724 521344318 521344318 992926073 992926073 888984420 928964350 928964350 882492424 973152279 973152279 243343391 176234580 808756518 965310501 965310501 1061733559 1061733559 826282654 826282654 642826905 642826905 126652441 133694144 721694084 721694084 697639180 697639180 191717536 191717536 139001604 184750692 323263602 323263602 343233260 421718118 421718118 1065617535 1065617535 223538691 719133189 719133189 254827330 882033106 882033106 587059140 291727621 729124218 820146577 820146577 443769811 708577173 708577173 482777160 1024201683 1024201683 904409818 1051731690 1051731690 344658476 109064384 845574823 845574823 627433083 639819757 1027399919 1027399919 230903919 533087225 948117319 951707463 976104008 976104008 785740629 777333405 687242972 687242972 713671145 713671145 219585161 49944528 51500372 178971184 725979616 780674273 780674273 203778496 34449948 710935872 740382165 806002753 1015546959 1015546959 1064463482 1064463482 609845984 609845984 899737147 899737147 873210890 831008763 332464785 133934792 56675744 42749280 58721216 58721216 31428608 38481936 54086928 54086928 35145248 18637632 27770336 27770336 89229120 95201550 1033366531 1033366531 430276934 714109289 714109289 481172814 481172814 390867350 867205011 867205011 236987672 759372953 759372953 189729632 189729632 71499400 74428992 113037008 113037008 215045400 222834304 222834304 243704096 260429896 260429896 209116044 209116044 405724422 405724422 671694947 671694947 447342604 447342604 976322942 976322942 865810035 865810035 411753898 411753898 1024633050 1024633050 384976701 304757504 7263104 244909644 244909644 218271780 218271780 847360122 847360122 620941353 394485843 0 0 11273120 860766270 860766270 264805817 107545800 381691056 381691056 285245648 58720368 58720368 58720368 169969280 195496884 195496884 184501444 464239812 945292935 950676531 950676531 848856163 848856163 823796032 809100115 809100115 600476482 1013113954 1063710910 1063710910 986030781 265362700 326960559 326960559 852848566 1044966664 1044966664 253379368 253379368 176824120 239862557 774900892 774900892 504892954 537894472 761795892 761795892 641863833 364904682 364904682 572102278 868479219 868479219 923415229 998634221 998634221 543089063 1053295998 1053295998 741574926 741574926 860837939 860837939 588951717 585952978 390216020 501557742 944924487 944924487 822527934 963492806 963492806 872488971 832013207 866559291 866559291 551189150 1049488479 1049488479 525023495 472443938 279561032 1044676878 1044676878 860622003 337001038 429990246 490940486 490940486 488710446 641996199 759313816 896143715 896143715 514732228 689641008 892388418 892388418 126538872 125829240 125829240 965138535 965138535 755699777 755699777 124162720 189960616 189960616 167821332 43566672 168755240 252656700 252656700 294523034 294523034 426378208 426378208 319903712 319903712 419824162 421857638 421857638 419438880 130329186 62732080 658306080 874606386 874606386 336794656 827340171 897671183 897671183 689718799 1034209324 1034209324 693373303 723779584 723779584 671088645 671088645 629354601 629354601 816420900 816420900 556706645 722830337 722830337 135582728 352441428 352441428 52229434 268468992 341937514 341937514 927220925 927220925 157631486 993265891 993265891 545923136 673909584 673909584 266151689 259733436 143795704 632898668 739861096 751370628 751370628 745598788 196386131 858646967 881845195 881845195 1063569855 1063569855 935807837 639056409 539967293 597566319 923865148 923865148 346186060 337497718 352327138 352327138 428032448 811868442 811868442 632662081 869100264 869100264 1064533162 1064533162 570634513 560756519 967185576 967185576 1002582572 1002582572 167747064 229823616 957840844 957840844 946494983 946494983 268606743 319920536 613800288 644292786 644292786 558416928 558416928 22358688 334982130 334982130 443549860 802589156 802589156 681235810 681235810 1025535874 1025535874 740250697 539091201 211110733 235042372 356250120 531228030 690525794 690525794 381228123 580257134 934223439 934223439 671616630 974128388 974128388 859641062 859641062 610096024 410005508 410005508 406665990 478342360 478342360 418549700 270009858 246470172 221439048 246917396 246917396 114670224 107417008 371927378 371927378 365630896 780547378 780547378 589895758 538968064 538968321 855650307 855650307 271464996 70877208 942744376 993601335 993601335 875233342 480517430 539248735 1048873217 1048873217 111198464 67407130 8388672 0 0 436487428 436487428 136874006 35720960 35720960 103250312 239861860 239861860 128351760 179465044 179465044 174402628 214772940 214772940 86072128 50405424 48778736 819310160 851628690 851628690 490340988 659220928 659220928 467190944 467190944 353339784 877933568 877933568 763105197 763105197 352322614 352322614 453509162 453509162 373476770 373476770 285262122 289948352 289948352 270637090 270637090 16933122 11983680 201464344 238093060 238093060 345645488 346104608 396588112 396588112 501201367 501201367 548162449 548162449 318243328 530245752 785591860 785591860 973603863 973603863 1043671839 1043671839 948825624 511125774 505799180 251891736 231179244 231179244 154563384 154563384 215358156 247765616 247765616 799495305 799495305 685529829 686163152 686163152 123219600 537010177 538118692 688130085 706157236 706157236 219151404 188566864 188566864 71741536 71741536 37966848 67508232 67508232 100931616 236720040 236720040 743456932 960005794 960005794 728311788 728311788 841048947 906283019 906283019 27429232 572532848 823142932 823142932 412090880 195565188 269489942 510690842 510690842 415952962 349683896 373095736 373251994 373251994 334062072 334062072 324050034 314067586 269037074 823224355 823224355 591446193 834512917 834512917 692652676 890765548 890765548 1072773000 1072773000 687716663 362712696 530579755 730095973 906070366 906070366 839020597 966013700 966013700 713175051 1067954433 1067954433 1036257519 1073063345 1073063345 918340305 918340305 719532609 719532609 683731629 683731629 679764061 289412562 776730419 776730419 754358188 754358188 509798028 503703582 333834724 336251982 341700234 341700234 334583556 334583556 323202770 171371044 55387156 140846480 140846480 174850880 174850880 62792640 86983328 86983328 90727936 91349928 285735816 285735816 268558338 247427710 247427710 411314424 411314424 268912712 429276216 429276216 280281608 356408874 356408874 292202242 353389610 353389610 290720418 289456290 289456290 4261026 25707200 25707200 12599520 29360256 29360256 1048576 1049088 22021632 77464232 77464232 201723492 201723492 530374108 530374108 150102240 269596356 269596356 93896776 93896776 160956484 160956484 160957444 160957444 189810240 189810240 247279452 247279452 154276073 719065921 719065921 597300925 541333012 952658665 952658665 490604094 603243915 603243915 809639568 809639568 438120387 1046429343 1046429343 1052438911 1052438911 917055000 690327110 690327110 415177978 415177978 317617100 335426998 335426998 517424006 517424006 343738624 343738624 295723044 958075922 958075922 949025076 965925492 965925492 806711805 966845533 966845533 830542379 890250274 890250274 653332218 376513215 264219044 193586292 103951176 51434000 51434000 392414520 392414520 261086426 202646328 168229656 172447856 172447856 161714736 183644400 183644400 337786266 337786266 103550256 311673674 311673674 87577480 313692050 393313866 393313866 335753226 335753226 9507402 5552272 38148144 57766544 57766544 242405532 242405532 235182380 218153132 218103936 194123336 161093220 135465024 274411126 274411126 60978004 711870425 711870425 223703692 658776249 658776249 1044964902 1052902055 1052902055 697352805 926453270 926453270 788437044 788437044 750177216 132130440 44688720 252872316 252872316 1059832939 1059832939 952331074 952331074 411378379 411378379 947641356 992698564 992698564 454960214 454960214 365470454 898299395 898299395 16859203 16832 0 0 23891944 100421024 130124976 130124976 131146168 131146168 186495204 780072073 780072073 247923772 260520748 260520748 181566072 218695616 782157128 782157128 717839425 573158537 591411156 678476228 678476228 78152977 1044940954 1044940954 841278032 841278032 651192393 820899267 820899267 917316566 953953692 1024613060 1024613060 884513294 973376231 973376231 714460439 823512433 823512433 672880260 672880260 53899904 53899904 680026117 680026117 537810112 538630400 538630400 14993856 17760876 229246467 961943655 1008737327 1008737327 721162104 364185587 542639104 815214762 815214762 689829541 642833527 541329537 286496906 939847556 993576759 993576759 787638183 749941581 544348008 544348008 620925391 716714689 716714689 999589649 999589649 574114423 103183040 360785922 360785922 1024624640 1024624640 756681262 756681262 542280480 1022558400 1022558400 672904449 206693004 540634196 540634196 162111709 923471622 923471622 858821742 93138024 329884201 619023313 636715691 636715691 665307811 848066082 848066082 338765112 356792514 356792514 445118550 624237434 624237434 537128961 306233490 563274450 563274450 325125620 539095264 1021321672 1021321672 134218960 222314496 222314496 606159212 783526569 783526569 40108768 67202176 647049500 647049500 224568205 719612848 719612848 44616224 98962624 569249136 581057600 663577921 663577921 364936480 114693056 130823224 130823224 40109184 40109184 51907464 69125268 239902236 403065894 403065894 218941452 487098410 487098410 54649008 121770168 122213376 529503642 529503642 173878212 994110072 994110072 767650070 575177430 899770091 1030873923 1030873923 982270235 808717899 342960008 551373256 619547466 619547466 349318728 351940288 351940288 281067714 285065856 285065856 7357952 13920384 13920384 16403712 16403712 280141186 280141186 15835648 15835648 817975361 817975361 299952256 816272931 816272931 339106468 1072436381 1072436381 1021660298 1021660298 713106527 887629249 887629249 850919507 744489538 470881086 470881086 403966244 491782676 491782676 459081685 377751882 904997985 904997985 521344318 444615424 448056150 448056150 928964350 928964350 689053627 684204117 909190357 1038648771 1038648771 808756518 965310501 965310501 1061733559 1061733559 826282654 826282654 642826905 642826905 317628274 301629888 721694084 721694084 697639180 697639180 193551712 193551712 139001604 184750692 199669392 199669392 343233260 421718118 421718118 1065617535 1065617535 315307218 719133189 719133189 88080480 181453824 587059140 587059140 206383685 576745880 820146577 820146577 443769811 314622162 314622162 37933266 162812060 533540784 533540784 109080374 184246040 184246040 159253530 173415662 243447836 522254060 522254060 307847534 307847534 407253504 407253504 795218291 879952207 1011682188 1011682188 340227225 864165636 864165636 687242972 713671145 713671145 674819805 604154256 707062881 707062881 556879781 188144436 593210757 593210757 34449948 630194624 630194624 555765865 345850816 930378119 1064463482 1064463482 587481289 587481289 899737147 899737147 831139610 831139610 364321545 56675744 331993600 331993600 318509010 314615554 314615554 303747984 303747984 54086928 51150368 23276960 34090240 64884880 64884880 95201550 1033366531 1033366531 430276934 714109289 714109289 481172814 481172814 455521714 867205011 867205011 254282894 759372953 759372953 341712522 291377194 268570626 74603584 380287624 380287624 302462994 104583776 362577424 362577424 359144458 373999736 373999736 119703960 405724422 508397950 814253122 814253122 984241345 984241345 708972693 316159046 316159046 272663058 272663058 251842620 1024633050 1024633050 686573752 686573752 964224631 1051424219 1051424219 669601837 218271780 168057108 168057108 591812917 591812917 543878540 669238293 669238293 545154404 709021845 709021845 572543364 268488704 283247724 344887530 369908046 437049702 437049702 170181492 170181492 184501444 184501444 464239812 464239812 317782210 356963816 356963816 117667328 50906160 648600681 648600681 390400507 618708065 618708065 616775865 616775865 611849449 611846025 127246832 648103588 678870173 678870173 218192672 218192672 176824120 754719576 754719576 370542110 504892954 504892954 761795892 761795892 641863833 364904682 861438983 990102774 990102774 868479219 923415229 998634221 998634221 550941856 1053295998 1053295998 974611656 974611656 63087491 837289794 837289794 623489757 713737351 713737351 956111767 979969431 979969431 1009042210 1009042210 872488971 801367393 866559291 866559291 709128272 510692195 817927633 817927633 168566732 72477824 814507521 814507521 344581194 693326693 693326693 162140412 423236324 423236324 356868096 356868096 356829354 350985138 350985138 601234161 741212552 741212552 1013252462 1013252462 851652678 799258943 673239900 826429891 826429891 124162720 189960616 189960616 167821332 43566672 76396628 120666328 215417004 268435452 268435452 279263372 279263372 168614628 168614628 152049696 425173568 480587866 480587866 130329186 104210208 303344912 303344912 84485160 336794656 551395976 897671183 897671183 689718799 1034209324 1034209324 449585171 237581734 237581734 671088645 671088645 629354601 629354601 816420900 816420900 556706645 722830337 722830337 688906772 372942148 383228064 383228064 39803296 341937514 360982898 927220925 927220925 311827026 993265891 993265891 722368818 673909584 673909584 266151689 259733436 143795704 143471292 651879072 651879072 137369232 137369232 74582364 255001032 255001032 1001167200 1001167200 856086579 967955189 967955189 151153168 402966534 402966534 346186060 346186060 229736448 352327138 488685620 488685620 811868442 811868442 713565898 869100264 869100264 191764794 112666224 37087760 112568696 126003712 461471146 461471146 541281609 541281609 650021797 957840844 957840844 946494983 946494983 486540343 856551609 856551609 927312003 927312003 671681704 558416928 22358688 334982130 334982130 459376970 516948702 585656598 639495705 639495705 671987520 740250697 740250697 674500933 674500933 214488641 214488641 545308737 934904099 934904099 1018970958 1018970958 1018227288 934223439 671616630 974128388 974128388 859641062 859641062 550314338 410005508 470580170 470580170 271259932 418549700 418549700 309585290 505542470 530161502 530161502 463780670 463780670 299356604 60426808 491062812 491062812 1002605416 1002605416 95703287 538968064 538968321 538968321 840383250 840383250 855966474 855966474 1008330255 1008330255 875233342 480517430 480517430 849496157 849496157 782256601 782256601 642327705 642327705 69298446 894708517 894708517 315362514 447256918 447256918 314757330 146249226 141270120 59430000 161186676 166528248 174402628 289849944 437958702 437958702 436602020 436602020 819310160 819310160 545749651 97178856 97178856 29685928 662889281 662889281 515594234 877933568 951462471 951462471 763105197 755289871 721420321 778313396 778313396 373476770 373476770 285262122 313655728 313655728 270637090 298062498 298062498 341707886 341707886 338331725 613178823 685149240 685149240 229903212 229903212 967126622 967126622 1012894879 1012894879 842800191 530245752 785591860 785591860 973603863 973603863 239784075 150204226 511125774 511125774 505799180 487596124 340050584 340050584 173155216 201644636 201644636 247765616 374634790 799495305 799495305 728276788 728276788 686163152 683015777 588254337 538118692 839611142 1019677560 1019677560 268164816 268164816 191717296 90862240 643501988 643501988 595236532 548840076 578378549 578378549 707038470 758235604 960005794 960005794 728311788 728311788 841048947 906283019 906283019 174620852 572532848 823142932 823142932 412090880 237257518 294947330 441588502 441588502 303182642 303182642 373095736 373251994 373251994 334062072 334062072 324050034 314067586 657580826 657580826 791284492 858899217 858899217 874327563 948259255 948259255 939315195 1072773000 1072773000 848114539 848114539 765346088 799088217 906070366 973550168 973550168 966013700 966013700 713175051 713175051 250100478 297872373 1073063345 1073063345 918340305 918340305 730083840 730083840 1033640154 1033640154 867569325 355739435 431684608 431684608 421896386 421896386 312294786 333834724 333834724 432013442 432013442 152613888 334583556 334583556 323202770 40309920 40309920 24612624 11806004 146615136 146615136 62792640 118000596 118000596 142942546 142942546 486938424 512687710 512687710 481300114 481300114 411314424 411314424 268912712 429276216 429276216 27296352 356408874 356408874 292202242 353389610 353389610 336661002 100164672 12584064 4751360 315412114 315412114 147803268 281354914 281354914 134546164 21843312 85603616 99237124 689842759 689842759 457517238 870318505 870318505 690720138 857306969 857306969 295698786 892899595 959420164 959420164 675461124 675461124 259312572 259312572 95470292 204888576 204888576 719065921 719065921 767689072 767689072 952658665 952658665 490604094 627616692 627616692 914207073 914207073 574742852 377644062 640319496 640319496 917055000 917055000 690327110 690327110 679870569 8458309 49414192 184557664 184557664 435506100 435506100 71354972 299164024 299164024 983320420 1060608354 1060608354 949025076 806711805 806711805 966845533 966845533 830542379 890250274 890250274 731383348 581080898 581080898 134990632 134990632 52881664 523743516 523743516 404600594 261086426 92752336 168229656 172447856 172447856 161714736 183644400 183644400 97782544 125964312 125964312 116123856 116123856 86017160 78068040 88114272 88114272 35410608 35410608 18629120 34458800 34458800 4719744 1115160 101712408 101712408 101711896 100663320 194123336 194123336 172574148 135465024 274411126 274411126 60978004 711870425 711870425 223703692 658776249 658776249 1044964902 1052902055 1052902055 697352805 926453270 926453270 788437044 788437044 750177216 160466024 160466024 252872316 587022991 587022991 806604809 981503509 981503509 638779663 489943828 878397683 992698564 1057321384 1057321384 516059208 231599205 898299395 898299395 681095455 506630558 916841454 916841454 99277931 302392784 302392784 92792552 92792552 55568472 186495204 186495204 247923772 420352318 420352318 260520748 115248728 218695616 503213436 503213436 383294882 878296226 970380519 970380519 740498752 740498752 647351133 705982021 841278032 954779079 954779079 820899267 820899267 672320651 487772454 1024613060 1024613060 884513294 973376231 973376231 327398314 823512433 823512433 672880260 672880260 563325040 579092736 680026117 680026117 564183393 538630400 538630400 86072488 86072488 229246467 961943655 1008737327 1008737327 721162104 364185587 999817224 999817224 885515307 689829541 642833527 541329537 286496906 948117587 948117587 705829652 576194193 845755246 845755246 226627692 679013308 944625939 944625939 999589649 999589649 1046061293 1046061293 1021912527 486394369 284297512 337770624 351555780 351555780 542280480 542280480 161025540 282212306 709998144 709998144 310515989 839810098 839810098 526789238 526789238 397652438 397652438 344724736 344724736 629454304 876412113 876412113 392034987 278321730 33505248 33505248 10067744 562208864 562208864 1014415536 1014415536 470821775 157516392 325125620 411640902 459301252 459301252 194242756 222314496 784538137 784538137 764827993 691015332 691015332 233629701 605575681 605575681 603980440 603980440 401884946 858818906 858818906 558907417 664306291 829969464 937466971 937466971 881086794 350276066 281282754 281282754 892823529 892823529 93318344 688086085 688086085 403065894 665007449 665007449 487098410 248980236 538393836 590811125 639372837 639372837 599819400 994110072 994110072 767650070 575177430 899770091 1030873923 1030873923 982270235 808717899 342960008 551373256 619547466 619547466 15142784 15142784 7681984 6823296 2099840 2400000 7357952 12838592 12838592 16403712 16403712 280141186 280141186 15835648 15835648 12896448 276212288 276212288 30291328 290056416 290056416 278839938 278839938 228642844 167790082 268959750 371261706 371261706 504629790 504629790 470881086 470881086 403966244 491782676 491782676 459081685 377751882 904997985 1045958455 1045958455 951862655 806766912 894850026 894850026 409576990 695693776 1023732927 1023732927 1038648771 1038648771 451188725 451188725 149221920 149221920 20072256 159912608 159912608 314837202 317628274 317628274 301629888 301629888 236195144 189335552 189335552 327864394 433441998 433441998 317013826 317013826 71422346 71422346 255079036 255079036 637813288 668338505 668338505 543611265 374684840 88080480 89465512 89465512 85273128 18812040 4593792 542208592 542208592 281051268 314622162 314622162 37933266 162812060 533540784 533540784 109080374 184246040 184246040 159253530 173415662 243447836 522254060 522254060 307847534 307847534 407253504 407253504 795218291 879952207 1011682188 1011682188 205476074 864165636 864165636 388899704 388899704 674819805 674819805 604154256 707062881 707062881 733117780 733117780 663091741 663091741 658657585 658657585 778848597 907579617 1016637197 1019033953 1019033953 834217827 647548890 647824377 822682659 822682659 831139610 831139610 364321545 27778856 364904792 364904792 366289386 366289386 324274866 303747984 303747984 105454240 77675512 75570688 52430400 64884880 64884880 110250616 329752676 496026222 496026222 453161022 428941926 411729958 457487778 457487778 407581830 407581830 254282894 454234504 454234504 405411078 291377194 268570626 74603584 380287624 380287624 302462994 104583776 362577424 362577424 359144458 373999736 373999736 119703960 163773606 508397950 814253122 814253122 984241345 984241345 708972693 316159046 316159046 272663058 272663058 251842620 623349800 623349800 686573752 686573752 964224631 1051424219 1051424219 669601837 464532814 126077904 126077904 678479271 678479271 718069174 718069174 669238293 545154404 709021845 709021845 572543364 316332600 317326466 344887530 369908046 437049702 437049702 264241560 521601676 521601676 407226428 518399739 669659439 871767027 871767027 920050395 920050395 818502856 828588283 828588283 390400507 618708065 688582101 688582101 616775865 611849449 611846025 142090796 648103588 678870173 678870173 218192672 218192672 100663320 754719576 754719576 1002908708 1002908708 546322169 546322169 152411484 675610980 675610980 861438983 990102774 990102774 872392632 597225747 562215166 562215166 550941856 323031350 784376681 974611656 974611656 63087491 837289794 837289794 623489757 713737351 713737351 956111767 979969431 979969431 1009042210 1009042210 801367393 801367393 665036829 709128272 709128272 173376990 817927633 817927633 284791382 402781478 814507521 814507521 344581194 693326693 693326693 223810438 354756906 368520488 368520488 356868096 356829354 350985138 350985138 601234161 741212552 741212552 1013252462 1013252462 851652678 799258943 788703668 900135228 900135228 887345658 1007666252 1007666252 903074522 903074522 701445228 1005222734 1005222734 806300904 268435452 214892712 325850426 325850426 168614628 198744664 536678236 536678236 480587866 104210208 104210208 638583656 831608898 831608898 616730280 1037396626 1037396626 273941230 555855062 970728881 970728881 449585171 871412136 871412136 554860838 483797528 483797528 370262044 404228636 841815864 841815864 286087226 1059703066 1059703066 406802950 406802950 383228064 39803296 537878537 537878537 373276428 373276428 311827026 664332849 722368818 722368818 578856800 578856800 68680200 744620845 744620845 700469692 655164092 739821069 739821069 709924617 709924617 919015083 919015083 1001167200 1001167200 856086579 967955189 967955189 630470674 630470674 805542668 805542668 671096880 705699892 705699892 488685620 488685620 398641658 379409994 713565898 713565898 530997093 191764794 39101952 49152 32768 86442352 461471146 461471146 541281609 541281609 650021797 650021797 490756326 490756326 455518476 486540343 856551609 856551609 927312003 927312003 671681704 554742049 154140708 273010400 286648866 459376970 516948702 816197899 816197899 639495705 473868736 416046273 946715459 946715459 677115269 643376777 643376777 848356510 934904099 1006706703 1018970958 1018970958 1018227288 370801182 76472040 217843176 217843176 124661204 183304980 236031184 236031184 470580170 470580170 271259932 271259932 309585290 309585290 505542470 530161502 530161502 463780670 463780670 332467584 395912826 491062812 491062812 1002605416 1002605416 621929000 621929000 220267028 274799248 840383250 840383250 855966474 855966474 1008330255 1008330255 470843422 503333388 503333388 849496157 849496157 782256601 782256601 1028727471 1028727471 717294675 894708517 894708517 815190144 948329028 948329028 814008387 751382458 1041379873 1041379873 343132762 682776373 682776373 652705061 584965676 605892105 605892105 436602020 187107956 354697426 354697426 906623325 906623325 668695873 668695873 662889281 1010917127 1010917127 951462471 951462471 755289871 755289871 721420321 778313396 778313396 101057218 73547984 73547984 313655728 313655728 188620596 298062498 298062498 341707886 341707886 338331725 1020009920 1020009920 685149240 746721357 746721357 967126622 967126622 1012894879 1012894879 842800191 733576963 733576963 197014016 197014016 140583300 781733200 909444420 909444420 283894362 487596124 487596124 340050584 340050584 173155216 201644636 201644636 131449408 374634790 374634790 503390238 728276788 1048237983 1048237983 683015777 588254337 370938544 839611142 1019677560 1019677560 268164816 268164816 321321426 321321426 643501988 643501988 595236532 548840076 578378549 578378549 707038470 758235604 758235604 584150450 178331988 178331988 243539840 243539840 174620852 174620852 140799024 149786064 149786064 17319712 237257518 294947330 441588502 441588502 201462666 277842576 311352402 316436050 316436050 294126368 294126368 280495938 44725136 657580826 657580826 791284492 858899217 858899217 874327563 948259255 948259255 939315195 760768851 254895681 848114539 848114539 765346088 799088217 865092104 973550168 973550168 872497468 872497468 312469662 177029434 192341142 233329012 992374233 992374233 413565506 1035106835 1035106835 730083840 1033640154 1033640154 867569325 416304753 739566363 1068724955 1068724955 855323222 312294786 457025920 457025920 456691510 432013442 254416188 254416188 328039072 328039072 455405440 455405440 292416930 54662576 66551712 66551712 60034024 118000596 209009360 263200220 263200220 486938424 512687710 512687710 481300114 481300114 519400286 519400286 495264088 26483168 277924352 277924352 78325480 325860568 325860568 283770306 336661002 336661002 286353728 286353728 14721570 315412114 315412114 147803268 281354914 281354914 158990976 21843312 85603616 99237124 689842759 689842759 457517238 870318505 870318505 690720138 857306969 857306969 366060611 892899595 959420164 959420164 675461124 675461124 259312572 259312572 95470292 204888576 204888576 137929640 115081240 767689072 767689072 864522642 864522642 714087397 714087397 627616692 914207073 914207073 574742852 573432863 640319496 640319496 823748927 823748927 621878313 679870569 679870569 311827026 676336471 676336471 54860640 822083744 822083744 741344013 741344013 471336462 983320420 1060608354 1060608354 103017014 536895505 717373594 908657531 908657531 615712066 615712066 731383348 731383348 581080898 581080898 740208376 740208376 942063616 942063616 523743516 404600594 114752126 56852656 189552768 189552768 102050328 102050328 97005296 65147376 97782544 125964312 125964312 116123856 116123856 58038960 58038960 39708160 121635872 121635872 35410608 18629120 34458800 36884880 38168880 56189244 255514428 255514428 254184716 220202864 220202864 197157284 197157284 66028212 152649380 152649380 411708999 941364806 941364806 46399936 705439176 705439176 772556632 772556632 112757789 66770496 45758752 60632688 703571776 703571776 251712324 160466024 160466024 202982224 587022991 587022991 480059218 981503509 981503509 638779663 489943828 878397683 878397683 1057321384 1057321384 516059208 201400453 177751746 681095455 836950308 836950308 916841454 1063608683 1063608683 505063059 400173640 857892745 857892745 691826693 691826693 155149184 721496080 721496080 565815856 632109976 632109976 603000588 503213436 503213436 383294882 878296226 970380519 970380519 740498752 740498752 647351133 705982021 705982021 954779079 954779079 718349013 718349013 698359809 444070806 462000672 462000672 152106184 332431402 332431402 327398314 327398314 2097408 115573368 563325040 563325040 579092736 581059041 581059041 564183393 38482104 73938344 86072488 86072488 84277256 55519368 126482776 126482776 98615784 105399731 999817224 999817224 953155800 1071116315 1071116315 722604597 206044901 948117587 948117587 705829652 576194193 845755246 845755246 226627692 679013308 944625939 944625939 772916248 826059934 1046061293 1046061293 1021912527 486394369 545208777 649154596 649154596 351555780 718742036 718742036 187590033 874126410 874126410 709998144 553148375 1042594498 1042594498 639511160 639511160 397652438 450865133 881596655 890479241 890479241 876412113 876412113 864027841 396641458 312345026 340743686 409469998 409469998 966815873 1014415536 1014415536 470821775 157516392 211421046 943401983 943401983 531966727 239869729 194242756 784538137 784538137 764827993 701841445 701841445 606725385 606725385 728547792 737231153 737231153 725984349 858818906 898975229 898975229 664306291 829969464 937466971 937466971 881086794 350276066 512245804 512245804 892823529 892823529 93318344 688086085 688086085 184730676 665007449 665007449 216606156 248980236 538393836 590811125 639372837 639372837 599819400 152850380 205863368 205863368 144838980 82258060 1662976 1623552 1623552 68698112 68732424 79145288 79145288 15646280 15142784 15142784 10393600 10393600 10012224 1238784 3772672 12838592 12838592 12001728 12001728 279706818 282110658 283586754 283586754 281781632 281781632 278691712 13365954 290056416 290056416 262326652 262326652 228642844 94683928 218678812 218678812 154144992 139725444 139725444 68364296 105099776 105306264 105306264 67131536 48099024 18361904 456834273 1045958455 1045958455 951862655 862389876 894850026 894850026 664471401 695693776 1023732927 1023732927 823554688 978349207 978349207 374741658 374741658 352594548 496161390 857211518 857211518 18536548 4774912 4774912 56623232 56623232 68099304 68099304 98699396 834688001 834688001 548686586 966782893 966782893 786865171 590139707 574653127 282336015 673501220 696680652 696680652 543611265 664147384 667029753 763911045 763911045 574410513 181060885 240330716 240330716 106171032 509774430 509774430 511836672 511836672 411185488 378348156 268791678 226594562 322594552 322594552 90702944 90702944 118583064 118583064 269696320 280760130 280760130 420278896 449002198 449002198 454177468 695672921 713699554 713699554 833168883 833168883 788713533 705762397 1006252133 1006252133 685016677 685016677 675978948 733117780 733117780 663091741 663091741 658657585 658657585 778848597 907579617 1016637197 1019033953 1019033953 834217827 647548890 647824377 822682659 884490458 884490458 868352402 127013496 63320760 364904792 364904792 366289386 366289386 677410599 677410599 587284628 614574636 614574636 75570688 73999752 102025752 119702152 119702152 1042394403 1042394403 496026222 825762351 825762351 411729958 457487778 457487778 137178372 137178372 101523484 338305292 405411078 405411078 338112520 270797058 335679498 350409002 365039850 365039850 69916138 67244040 128238008 128238008 141332812 141332812 587374397 587374397 1065214747 1065214747 582003682 461924528 461924528 981411995 981411995 610565901 540295963 996849142 996849142 858968086 754135349 754135349 675951877 675951877 674365801 632817513 615106040 464532814 126077904 270396930 840458805 840458805 718069174 718069174 665518229 452848348 433911419 126257272 316332600 316332600 317326466 317326466 76111184 210054428 264241560 264241560 521601676 521601676 407226428 518399739 669659439 871767027 871767027 920050395 920050395 818502856 828588283 828588283 566366624 566366624 688582101 688582101 773924748 773924748 645229328 645229328 573361425 577268736 577268736 71887009 574864425 574864425 881593859 881593859 1002908708 1002908708 546322169 811070090 811070090 905999435 905999435 853018323 514218346 872392632 872392632 369327795 815940814 815940814 514259854 514259854 371692240 592040096 592040096 547570226 557842538 937168635 937168635 60105867 795092514 808221200 874808522 874808522 569758688 569758688 341194082 341194082 82881056 125855272 132906238 353719558 418527526 418527526 284791382 434604964 434604964 186498220 106770072 190383772 190383772 225493518 475273370 475273370 368520488 180428546 438300826 438300826 520683782 520683782 21240248 216334232 609348480 913426946 913426946 796700428 788703668 900135228 900135228 887345658 1007666252 1007666252 903074522 903074522 701445228 1005222734 1005222734 806300904 231476460 214892712 325850426 325850426 119079512 198744664 536678236 536678236 177960202 36154416 42950912 638583656 831608898 831608898 616730280 1037396626 1037396626 201535500 612632896 612632896 348458135 798591800 871412136 871412136 554860838 514882924 369386010 370262044 404228636 841815864 841815864 286087226 1059703066 1059703066 406802950 406802950 68832698 525312 537878537 537878537 68082696 118783608 118783608 664332849 664332849 604258368 604258368 581215506 340328712 744620845 1031954621 1031954621 788549988 739821069 739821069 709924617 709924617 919015083 919015083 359648484 359648484 287320514 845197700 845197700 630470674 630470674 805542668 805542668 671096880 705699892 705699892 85225264 131724760 527295706 527295706 304976462 924232472 924232472 649016688 649016688 630477602 630477602 52960860 238630752 356323280 523404608 523404608 508933796 508933796 490756326 490756326 455518476 455518476 805522467 805522467 208396702 224117260 554742049 696518245 696518245 75409556 237500700 269348216 485096653 816197899 816197899 473868736 473868736 416046273 946715459 946715459 677115269 807412746 807412746 848356510 848356510 1006706703 1006706703 36740670 0 0 148769838 362165994 387527698 450177556 450177556 180652040 113781448 270907823 805360801 958600057 958600057 750448800 375063628 375063628 248186620 202709012 202709012 999260283 999260283 885365722 1032781828 1032781828 821045829 821045829 621929000 621929000 283193680 283193680 167895060 694168352 694168352 957891120 957891120 885870135 470843422 503333388 503333388 440635822 268435456 1066273818 1066273818 1028727471 1028727471 717294675 717294675 717410390 815190144 948329028 948329028 814008387 751382458 1041379873 1041379873 343132762 682776373 943968416 956375079 956375079 842796819 842796819 324800433 292318312 354697426 354697426 906623325 906623325 717809056 668695873 356881348 1010917127 1010917127 985397021 985397021 735786301 831005756 831005756 995374688 995374688 931777659 931777659 646401738 353501378 353501378 188620596 188620596 305734004 305734004 314778640 314778640 1020009920 1020009920 739187466 746721357 746721357 746599373 745344617 653911823 653911823 564917668 904474314 904474314 554173473 679552587 1024459311 1024459311 933847904 933847904 103753104 103753104 79691976 79691976 8394760 4460544 8405120 38154944 43330128 60117505 374571173 503390238 503390238 1048237983 1048237983 141415770 77089954 344068170 344068170 54790634 438062610 438062610 388263734 321321426 321321426 297059808 281560712 281560712 113271688 113271688 37069904 543363840 659959010 699030102 699030102 990077222 1040415085 1040415085 685256225 685256225 304972869 810831458 810831458 562080928 285230912 44173232 44173232 234881064 234881064 123089432 277842576 311352402 316436050 316436050 38689986 2145664 44725136 52452688 587226432 598662513 615506489 615506489 537970241 546883137 763364492 763364492 566756577 206045293 1071706954 1071706954 399738691 614371344 723035184 723035184 563115850 481605967 228606056 379604308 379604308 448763930 518396382 518396382 992374233 992374233 504669004 1035106835 1035106835 564467720 564467720 161655900 161655900 416304753 739566363 1068724955 1068724955 855323222 448261414 457025920 457025920 456691510 419137928 491646126 491646126 464610372 464610372 455405440 455405440 333840592 406204660 406204660 66551712 59773600 59773600 209009360 451070454 468122102 468122102 508637596 508637596 447096574 468756542 519400286 519400286 495264088 277750144 433050956 433050956 143432032 325860568 325860568 24453792 290008960 294989312 294989312 286353728 14721570 13639680 138086976 145700132 172144452 172144452 158990976 54971840 22094336 23343696 63048608 331678486 331678486 422617696 480512354 962898374 962898374 617193482 366060611 360759840 360759840 85171208 87276352 93762076 253155900 254053148 254053148 187062324 187062324 799148073 799148073 664930809 100667096 864522642 864522642 714087397 816088792 816088792 445776410 445776410 344022348 573432863 573432863 510453934 823748927 823748927 441202146 441202146 431166182 431166182 676336471 676336471 175248276 822083744 822083744 741344013 741344013 941111392 941111392 755105812 865276462 865276462 403561494 717373594 717373594 962777511 962777511 943854983 968950496 968950496 579753043 567753441 803561066 803561066 991291696 991291696 660133088 660133088 425214200 377013984 189552768 189552768 102050328 102050328 124706232 124706232 93373048 75530944 75530944 102287408 103553848 104988946 305010058 392172682 392172682 372509466 372509466 275290536 505641124 505641124 505232968 444596310 303772292 255514428 254184716 220202864 220202864 260120868 260120868 71903748 298287030 298287030 469745410 941364806 941364806 783082677 780349533 705439176 772556632 1019979594 1019979594 713622945 599137137 472175231 703571776 703571776 237998580 237998580 178512588 580905742 580905742 522853974 522853974 403484934 948438087 948438087 708975779 592567056 658958384 695243851 695243851 593053223 964888744 964888744 297930785 958134882 958134882 830809462 1063608683 1063608683 906882075 906882075 857892745 857892745 691826693 691826693 551824430 721496080 721496080 565815856 632109976 632109976 603000588 110489656 110489656 7939968 113172312 645188272 645188272 553393377 607505990 607505990 479809436 671375492 671375492 645972057 718349013 718349013 698359809 444070806 462000672 462000672 152106184 242836448 242836448 161557396 161557396 55782120 48427456 37916992 50935456 566775216 600516032 600516032 593988081 54543096 54543096 17322624 23451008 56680736 56680736 33901016 33901016 309625088 309625088 774949906 774949906 953155800 1071116315 1071116315 722604597 732699996 732699996 513227365 816844874 816844874 536870913 369560611 186328101 186328101 36399664 722524940 772916248 772916248 640231601 690537765 698950880 698950880 680207648 680207648 649154596 486084238 718742036 1073647260 1073647260 874126410 874126410 678465631 898446162 1042594498 1042594498 639511160 639511160 278026848 450865133 881596655 890479241 890479241 625761634 864027841 864027841 396641458 312345026 340743686 409469998 409469998 966815873 966815873 604299656 604299656 523689629 421362514 943401983 943401983 531966727 239869729 47708880 47708880 8880784 64593968 701841445 701841445 606725385 606725385 728547792 737231153 737231153 725984349 725984349 898975229 898975229 339339018 277650176 280680258 449023010 449023010 239880318 512245804 512245804 478217204 478217204 41417616 537150240 537150240 598279408 598279408 547410201 648278361 648278361 228639856 244598028 244598028 244614112 244614112 557457153 1026168588 1026168588 1020713452 1020713452 913645979 914450907 915660811 915660811 347600833 537692738 538357514 538357514 7996288 7996288 10393600 10824000 11222592 11222592 12783104 12783104 3248384 10114816 10114816 279706818 282110658 283586754 283586754 281781632 362807658 362807658 70355298 367280808 367280808 362049474 357363178 353993344 32268128 32268128 154144992 154144992 200542016 200542016 144667408 218505884 218505884 184862772 97442924 227540040 227540040 101319808 240437804 824989082 824989082 862389876 862389876 610378324 664471401 707126005 707126005 823554688 823554688 978349207 978349207 374741658 374741658 352594548 496161390 857211518 857211518 835642932 815478339 96963163 356781880 356781880 128194744 128194744 554526304 834688001 834688001 821084368 966782893 966782893 786865171 590139707 574653127 282336015 673501220 721613311 721613311 212395909 1008806470 1008806470 763911045 1004400864 1004400864 867552979 1052484170 1052484170 847535728 825340019 825340019 645923357 645923357 411185488 513796197 772222302 772222302 1038148957 1038148957 793548728 90702944 43078424 5449424 269696320 280760130 280760130 420278896 449002198 994738833 994738833 961644795 961644795 713699554 833168883 833168883 788713533 705762397 1006252133 1006252133 685016677 685016677 675978948 614184393 892456693 966762981 1054549009 1054549009 360321521 13234721 86369345 86369345 33625801 645922905 645922905 611451137 641892617 641892617 884490458 884490458 868352402 378544984 123784418 88234280 268828992 272892034 601950358 677410599 677410599 587284628 614574636 614574636 73999752 73999752 102025752 119702152 119702152 1042394403 1042394403 239023924 825762351 825762351 286478348 100678046 473318412 473318412 136878478 237095948 408790548 408790548 371644698 509607582 509607582 335679498 350409002 365039850 365039850 177039568 103154528 128238008 378802256 378802256 332013288 587374397 587374397 1065214747 1065214747 582003682 461924528 461924528 981411995 981411995 610565901 540295963 996849142 996849142 858968086 754135349 754135349 9646884 10616832 10616832 652382696 652382696 566248184 566248184 270396930 840458805 840458805 152308260 27186244 36257920 36257920 54431456 54431456 124005464 124005464 111430524 169918740 169918740 244182108 244182108 68107272 77574660 164799136 221353810 496334574 496334574 377948118 351614424 351614424 105955992 66109496 80274600 94442856 566366624 656429168 656429168 1007225868 1007225868 982910744 982910744 925885409 925885409 577268736 577268736 368182987 574864425 574864425 881593859 881593859 920201920 920201920 683413317 811070090 811070090 905999435 905999435 853018323 676573873 676573873 431175235 335033569 815940814 815940814 514259854 782198084 782198084 592040096 592040096 547570226 557842538 937168635 937168635 383518965 795092514 1047907987 1047907987 874808522 888436153 888436153 912291212 912291212 859967667 1018353540 1018353540 353719558 353719558 45228722 283342786 434604964 434604964 233550058 233550058 190383772 190383772 225493518 475273370 475273370 210570376 210570376 438300826 438300826 520683782 653578965 653578965 216334232 609348480 913426946 913426946 863637416 863637416 595693988 811825512 811825512 674833927 671626430 1032110176 1032110176 575672442 575672442 438911976 438911976 427844760 254366982 294935426 294935426 429507406 429507406 31407840 31407840 75497544 94816288 94816288 320750448 320750448 629998600 629998600 697901410 697901410 162792009 612632896 612632896 430763894 798591800 798591800 791715897 1051816953 1051816953 1045639839 1045639839 763874010 184820480 184820480 103704832 604791808 604791808 392467976 392467976 273855522 119072928 505656196 505656196 389494868 389494868 305524790 403289418 1035877144 1035877144 604258368 581215506 340328712 575268786 1031954621 1031954621 788549988 87097352 595707808 595707808 87167928 218893472 218893472 258475280 258475280 36177340 25199008 25215072 42000480 42066000 44122202 974168170 974168170 514803346 514803346 513781528 345682114 527295706 1018638429 1018638429 924232472 924232472 806827280 806827280 875435074 875435074 645998155 645998155 1045252834 1045252834 928352980 502857744 208877738 156707320 354433568 354433568 271028362 306738216 306738216 208396702 183575508 539620609 696518245 696518245 75409556 237500700 269348216 1005495618 1005495618 810378710 212731948 227417864 227417864 336349772 336349772 952445772 952445772 807412746 949478208 949478208 522076944 522076944 486860060 287752714 352896042 352896042 362165994 387527698 450177556 450177556 206518032 178208340 270907823 805360801 958600057 958600057 750448800 648114332 375063628 248186620 986633018 986633018 999260283 999260283 885365722 1032781828 1032781828 465832556 465832556 374342298 390584600 390584600 812159112 812159112 808113419 69231784 957891120 957891120 885870135 674357374 1024273014 1024273014 878995635 285339949 1066273818 1066273818 432634085 587842336 587842336 558148992 329894501 143935650 71632472 71632472 315939744 475711635 843372174 861879987 861879987 995941939 995941939 956375079 956375079 842796819 842796819 324800433 292318312 292318312 176345172 176345172 717809056 717809056 254805616 212337996 273403897 976950199 1010967736 1010967736 990590007 831005756 831005756 995374688 995374688 931777659 931777659 813898896 353501378 825466454 1029630729 1029630729 982965297 982965297 922328020 314778640 671951877 752892675 752892675 813181986 1031222444 1031222444 745344617 616038509 580437585 580437585 904474314 904474314 554173473 679552587 1024459311 1024459311 933847904 933847904 338780242 394376908 490997842 490997842 347357264 240298536 245377544 245377544 94571808 104832704 104832704 10431488 9115712 9572928 33140480 33140480 77089954 344068170 344068170 54790634 438062610 438062610 388263734 368546928 42630122 32 9441632 60185168 60185168 289166369 819814787 865616977 865616977 942367279 942367279 990077222 1040415085 1040415085 685256225 685256225 304972869 810831458 810831458 562080928 285230912 205816204 302789782 510616158 510616158 613930651 613930651 352042954 618849225 887954690 887954690 292395195 334291184 853721482 853721482 596302866 184251076 184251076 344231021 1021887951 1021887951 1032637551 1032637551 423124621 1071706954 1071706954 498307691 202333184 723035184 723035184 571478593 1051790087 1051790087 825502480 379604308 448763930 645191033 645191033 908924762 908924762 971602837 971602837 422914854 253012544 236025180 300968708 823494682 823494682 321202299 475472534 704921683 704921683 448261414 378552848 605766469 605766469 419137928 840022073 840022073 464610372 464610372 324702388 324702388 333840592 406204660 406204660 197357696 80838784 67330568 113836704 451070454 468122102 468122102 472911952 472911952 447096574 214436176 241962396 448302326 448302326 277750144 433050956 433050956 302039058 346572154 415244294 692156994 812107852 874310272 874310272 549318465 543426849 543426849 603329521 603329521 867438818 867438818 54971840 55647904 55647904 59712352 714418417 714418417 35652212 553986529 553986529 962898374 962898374 204546603 25691232 28362305 548208993 568180481 568180481 546258048 253155900 254053148 254053148 187062324 187062324 799148073 799148073 664930809 77994112 531894621 823532067 847736463 1038446334 1038446334 445776410 1023268739 1023268739 1008346508 1008346508 510453934 439650838 439650838 571096507 571096507 431166182 431166182 591137589 591137589 581249026 581249026 276040006 485491662 485491662 941111392 941111392 177941618 865276462 865276462 403561494 403561494 689967582 962777511 962777511 943854983 968950496 968950496 579753043 567753441 803561066 803561066 991291696 991291696 864723531 864723531 715488483 977130368 977130368 900089263 773864089 940521000 940521000 850099792 850099792 599015584 289467168 102287408 103553848 104988946 305010058 392172682 392172682 372509466 372509466 275290536 505641124 505641124 505232968 444596310 303772292 48894672 92217204 136382076 187180596 260120868 260120868 71903748 298287030 298287030 469745410 869460358 869460358 783082677 780349533 521826106 521826106 1019979594 1019979594 713622945 733911965 733911965 241989140 631745837 631745837 244695908 299829814 580905742 580905742 522853974 522853974 226657555 948438087 948438087 708975779 592567056 658958384 873906243 873906243 813750795 964888744 964888744 297930785 958134882 958134882 286383890 48900656 872635408 906882075 906882075 760375296 760375296 87742248 87742248 743968352 767483757 956305681 956305681 916246107 297174976 120503418 110489656 110489656 283220194 283220194 928097757 994990588 994990588 607505990 676839364 676839364 718537362 718537362 645972057 680125509 680125509 185313486 185313486 592372236 964062616 964062616 456114028 195364912 195364912 117704760 55782120 58601360 58601360 34941456 22017120 600516032 600516032 593988081 54543096 84183824 120636216 120636216 56680736 56680736 42541920 625652768 625652768 668485320 668485320 1067005525 1067005525 1063337149 1063337149 611061129 732699996 732699996 956569683 956569683 816844874 536870913 369560611 186328101 186328101 621420592 722524940 722524940 607177617 894738292 894738292 801501043 698950880 680207648 680207648 450757807 495793176 495793176 1073647260 1073647260 307620498 765036384 765036384 912151348 912151348 633278450 1026504854 1026504854 372429195 372429195 216645472 153165390 364855146 543134918 896161987 896161987 878758921 878758921 786710548 671866334 675032494 684741217 684741217 604299656 604299656 523689629 421362514 776463461 776463461 516076544 51067568 29698272 562471136 562471136 622387764 622387764 135308297 62989488 551354577 551354577 114822688 84672673 88154280 604056704 604056704 473172736 982291079 982291079 608591438 630253160 630253160 377054232 268815114 184568340 949529559 949529559 888761512 974154596 974154596 598279408 598279408 547410201 648278361 648278361 228639856 622482692 631119465 631119465 536878696 557457153 1026168588 1026168588 1020713452 1020713452 913645979 914450907 915660811 915660811 611448330 817581387 817581387 543781250 274801314 294708170 294708170 300425576 339824232 339824232 87335720 69208616 22403752 78913536 78913536 27218088 269968584 345771594 345771594 339062538 362807658 362807658 70355298 367280808 367280808 362049474 357363178 353993344 20987936 20987936 17466432 49321280 200542016 200542016 144667408 218505884 218505884 184862772 97442924 227540040 227540040 136197760 240437804 240437804 163465760 163465760 260928392 862334820 862334820 707126005 707126005 591218176 591218176 35393040 681060372 747718797 747718797 753591489 753591489 839232824 839232824 835642932 815478339 393281548 356781880 597960948 757211149 757211149 671551536 554526304 344460426 821084368 821084368 639108633 639108633 373342362 373342362 856351218 856351218 721613311 721613311 493893008 1008806470 1008806470 753216591 1004400864 1004400864 867552979 1052484170 1052484170 847535728 825340019 825340019 645923357 805439248 805439248 513796197 772222302 772222302 1038148957 1038148957 793548728 333031152 5998048 5449424 269200000 273677442 273677442 310832672 437951492 994738833 994738833 961644795 1002275346 1002275346 721575658 721575658 1024680555 1024680555 722678325 34149925 68199432 432888305 897671466 897671466 892456693 966762981 1054549009 1054549009 360321521 158147852 630423168 630423168 621144105 106893473 35178000 93360728 326632754 396435834 396435834 336192082 378544984 378544984 348291314 88234280 323168752 323168752 601950358 601950358 346311571 253045308 99224952 99224952 35919744 52430400 62392176 62392176 355991970 355991970 308880864 355071292 987240762 987240762 286478348 100678046 473318412 563586795 563586795 237095948 780225445 780225445 371644698 509607582 509607582 309793566 307344142 211476326 177039568 177039568 103154528 501369900 501369900 378802256 361382842 306482690 540957216 540957216 691706340 691706340 867747699 867747699 324475820 371213352 371213352 486543144 486543144 388038973 380633215 547422485 547422485 146800836 146800836 130072824 652382696 652382696 566248184 566248184 498372407 498372407 349461635 537546502 537546502 109518854 170207969 170207969 98905970 124005464 288931464 288931464 258186274 408735362 408735362 485187424 485187424 84540658 65459342 237967494 237967494 212037392 271815304 339030402 346552650 346552650 309528600 832197792 832197792 583930277 744946949 744946949 1007225868 1007225868 982910744 982910744 925885409 925885409 534041419 504105560 368182987 351720624 544871506 888544203 888544203 847383433 847383433 683413317 421527942 421527942 501327308 501327308 273204354 676573873 676573873 431175235 348231488 292061459 311887920 385876026 782198084 782198084 379009626 378823760 42652752 16781344 284166995 383518965 383518965 538732494 1047907987 1047907987 821547460 888436153 888436153 912291212 912291212 859967667 1018353540 1018353540 243063780 297062496 297062496 290492834 283342786 19935296 233550058 233550058 158040384 213819244 435993252 435993252 140976782 210570376 210570376 67265996 56861592 85064854 653578965 826852794 826852794 844531741 844531741 772541469 863637416 863637416 819738289 819738289 811825512 824459591 824459591 1032110176 1032110176 772866144 873476731 873476731 840127090 427844760 285873764 348470208 348470208 429507406 429507406 204755108 151606592 151606592 94816288 94816288 56247936 65710528 629998600 629998600 697901410 697901410 162792009 271919056 430763894 430763894 251691408 380371037 791715897 1051816953 1051816953 1045639839 1045639839 763874010 551559824 314446691 628827484 724832200 724832200 436053730 273855522 273855522 213175116 746220557 746220557 389494868 501475538 501475538 969445667 1035877144 1035877144 101236779 69593096 69593096 90499864 90499864 558961457 558961457 215045156 595707808 595707808 586111152 560867376 757662004 757662004 590361896 255465076 540017476 637588253 637588253 672207360 672207360 974168170 974168170 755097645 604061732 513781528 345682114 282589254 1018638429 1018638429 311026770 683255633 806827280 806827280 875435074 875435074 645998155 645998155 1045252834 1045252834 928352980 470817396 260063920 260063920 354433568 354433568 271028362 722035841 745136408 745136408 183575508 47776192 148948240 177570820 753223190 787581979 820110551 1005495618 1005495618 310510908 212731948 506469886 506469886 785987167 785987167 952445772 952445772 407609930 949478208 1006768128 1006768128 486860060 486860060 453235252 453235252 352896042 152325646 30195872 224435736 224435736 206518032 178208340 165609648 83892488 83892488 109651224 648114332 648114332 205750665 213107196 986633018 986633018 612968005 369386567 302112786 272500288 528687176 685944271 685944271 611306514 825820801 841715073 841715073 812159112 808113419 155418808 155418808 51638288 674357374 674357374 1024273014 1024273014 878995635 285339949 121684152 814973011 814973011 603520928 603520928 315081200 580343826 848736848 848736848 847567059 847567059 542399104 674822582 861879987 861879987 995941939 995941939 301415394 301415394 390859962 715754855 715754855 71951496 220645444 226874890 932778281 932778281 930898756 930898756 777517466 777517466 982127703 1010967736 1010967736 990590007 691020020 691020020 586228689 410076013 902701264 902701264 813898896 270660010 825466454 1029630729 1029630729 982965297 982965297 922328020 271718944 671951877 752892675 846999192 846999192 1031222444 1031222444 818619392 818619392 580437585 580437585 46785905 42558368 672286336 679959013 692458956 692458956 235541532 338780242 338780242 394376908 490997842 490997842 347357264 240298536 245377544 245377544 157716288 200092625 291094533 453107766 990227062 1066475583 1066475583 750809331 537579529 849300250 849300250 748487178 748487178 471346698 411371590 368546928 861281265 861281265 891421614 891421614 912517558 1044756634 1044756634 865616977 865616977 942367279 942367279 717923103 350754763 422760032 422760032 44711588 151140049 151140049 39632160 146849988 205816204 205816204 302789782 510616158 510616158 715366224 715366224 352042954 618849225 887954690 887954690 610435328 334291184 853721482 853721482 596302866 852761362 852761362 551686593 1021887951 1021887951 1032637551 1032637551 423124621 869409044 869409044 498307691 403081304 236802910 328020518 571478593 1051790087 1051790087 825502480 359662506 359662506 645191033 645191033 908924762 908924762 971602837 971602837 422914854 202786384 202786384 300968708 823494682 823494682 321202299 180160066 704921683 704921683 302303250 201870172 605766469 605766469 222016352 840022073 840022073 422512416 423415590 423415590 286388768 58962610 62996996 197357696 197357696 80838784 85485568 203736656 203736656 132640140 336121096 472911952 472911952 44172110 335565584 335565584 505939350 505939350 225363008 225363008 152338432 302039058 346572154 415244294 692156994 812107852 874310272 874310272 549318465 543426849 543426849 603329521 603329521 867438818 867438818 198211888 198211888 134544660 59712352 714418417 714418417 181144788 553986529 553986529 674041250 674041250 546924485 423407235 808588896 808588896 568180481 568180481 546258048 25340928 21372928 21372928 21309568 17518720 17518720 17205248 17205248 194186096 531894621 823532067 847736463 1038446334 1038446334 907378690 1023268739 1023268739 1008346508 1008346508 470526212 477068430 850273290 850273290 571096507 203557820 203557820 662045509 662045509 581249026 709899210 876618639 876618639 610341639 341444138 844928010 844928010 290636474 805887088 805887088 588797152 773927231 773927231 600517726 459514290 348390956 348390956 207743278 362167370 362167370 396873614 396873614 98190352 864723531 864723531 715488483 977130368 977130368 900089263 773864089 940521000 940521000 850099792 850099792 599015584 289467168 49932080 40966248 93267440 93267440 101262360 121644192 121644192 53493792 53493792 24675216 24675216 34603536 55190832 55190832 34079760 137964288 137964288 33378292 168157216 168157216 30197536 30197536 136345680 136345680 545732673 580673113 621203801 621203801 319319963 319319963 19261728 142903680 148947396 733911965 733911965 241989140 631745837 631745837 244695908 299829814 627838160 627838160 446384218 446384218 313917984 329652594 329652594 285878786 260149468 260149468 873906243 978007191 978007191 813750795 600010916 946298848 946298848 1055244047 1055244047 790703377 790703377 504679016 589235338 589235338 439619465 183539260 87742248 743968352 767483757 956305681 956305681 916246107 834627740 834627740 390242168 90509432 289718298 289718298 928097757 994990588 994990588 718361042 942928647 942928647 720754434 981983959 981983959 917802511 680125509 873604708 873604708 592372236 964062616 964062616 740979501 740979501 387986429 872597525 872597525 375904605 799948004 799948004 590006385 578814033 582572289 582572289 568702528 568702528 120636216 120636216 67424544 67424544 50499992 625652768 625652768 668485320 668485320 1067005525 1067005525 1063337149 1063337149 742135084 798627453 798627453 956569683 956569683 302385189 44379024 126091440 126091440 52509640 621420592 621420592 947648391 981184747 981184747 894738292 844289309 380361809 639533006 1019379751 1019379751 711980054 711980054 594355384 952703311 952703311 820733255 765036384 912151348 912151348 992816587 1026504854 1026504854 372429195 749011012 749011012 606415113 364855146 543134918 896161987 896161987 878758921 878758921 786710548 671866334 675032494 675032494 137856978 347795050 347795050 530869981 851363763 1053342351 1053342351 1030269785 923880826 29698272 562471136 562471136 622387764 622387764 726753445 747692749 747692749 558162028 603229208 724828396 724828396 744524436 762364008 762364008 982291079 982291079 608591438 630253160 630253160 377054232 268815114 207627534 949529559 949529559 888761512 974154596 974154596 566272625 566272625 52550832 670192528 670192528 738833976 738833976 631119465 631119465 536878696 239075720 83102860 616383336 616383336 540591873 595642674 595642674 642772681 642772681 611448330 817581387 817581387 543781250 274801314 294708170 294708170 300425576 339824232 339824232 87335720 69208616 22403752 78913536 90114226 316289874 399409000 399409000 345771594 339062538 335632744 296221026 94619722 27600992 362399568 362399568 62402458 57693136 57693136 53480304 37276832 114295872 114295872 32247264 32247264 33554432 33554432 16 33554432 82542288 136197760 136197760 60065088 16122773 180467177 180467177 719896178 862334820 862334820 846720384 840570387 978015860 978015860 259647962 681060372 747718797 747718797 753591489 753591489 839232824 839232824 331678929 393281548 393281548 272073520 597960948 757211149 757211149 671551536 344460426 659170969 909358641 909358641 639108633 924149808 924149808 843463323 933365007 933365007 717932239 724973968 724973968 498139961 284295344 296432994 296432994 35528208 135147036 135147036 104013584 104013584 69420288 67683336 37258008 805439248 805439248 572758854 629748010 730078273 730078273 517210208 333031152 402216090 402216090 101392898 304473274 304473274 293176634 310832672 340053016 410102598 802685718 904398315 1002275346 1002275346 721575658 721575658 1024680555 1024680555 722678325 403757165 1027993454 1027993454 897671466 897671466 547406145 1035951232 1035951232 690908164 158147852 158147852 630423168 630423168 621144105 604379145 911481617 911481617 855841608 396435834 396435834 380233256 313144400 348291314 348291314 64144048 323168752 323168752 591202532 739095404 739095404 694432164 694432164 630432172 461684038 461684038 109150464 975290390 975290390 547356993 671162373 671162373 987240762 987240762 868535463 731859978 291085387 1033127136 1033127136 230045308 780225445 780225445 407097476 407097476 272679042 309049364 485473030 485473030 478623822 188482634 286572816 501369900 501369900 361382842 361382842 709398667 709398667 1064217022 1064217022 1009025336 867747699 867747699 324475820 371213352 371213352 375423172 375423172 230809836 230809836 144784149 545661188 545661188 146800836 130072824 159416476 194544800 741508148 741508148 498372407 498372407 827086162 827086162 745047073 745047073 705176852 715734596 715734596 397485470 806331472 806331472 345931333 690062371 690062371 485187424 888789778 972077381 972077381 693367537 237967494 212037392 281178440 549568835 549568835 346552650 309528600 832197792 832197792 621559920 744946949 744946949 436987283 597991870 941373840 981153687 981153687 239210652 504105560 504105560 243864834 238726169 544871506 888544203 888544203 847383433 847383433 780665147 835715240 881853003 881853003 501327308 273204354 275825538 354616610 354616610 348231488 275300786 311887920 850403667 850403667 379009626 608515273 608515273 586251866 59727272 59727272 272838786 272838786 376703898 622184720 622184720 821547460 821547460 498268611 166986392 166986392 105909220 72401544 33591808 33591808 297062496 300124354 300124354 28705026 12109568 476659404 476659404 223307950 213819244 435993252 435993252 140976782 402924032 437717678 525736638 525736638 134291748 302957854 826852794 826852794 844531741 844531741 772541469 590458765 218398740 819738289 819738289 383440856 824459591 824459591 475054734 738255095 772866144 873476731 873476731 840127090 285873764 285873764 353673808 353673808 446056992 446056992 534222400 534222400 342646820 62903792 137811460 137811460 65710528 562764800 562764800 609490304 609490304 83836553 335939616 335939616 386482248 386482248 421340228 421340228 481665988 748970570 1010166535 1010166535 551559824 551559824 314446691 628827484 724832200 724832200 436053730 219774132 213175116 215091848 746220557 746220557 152273812 501475538 501475538 969445667 969445667 812872648 413665094 413665094 621858844 621858844 436343341 1021323777 1021323777 485829582 758384941 758384941 586111152 560867376 757662004 757662004 985207582 1027424039 1027424039 637588253 637588253 672207360 784655741 789094424 789094424 755097645 604061732 149925240 256037052 256037052 62620644 84798504 84798504 67437568 17916416 606249280 606249280 280648968 280648968 911584592 911584592 423723008 423723008 456530742 456530742 305363874 276033798 274404994 343611298 722035841 842270693 842270693 217909464 217909464 965282211 965282211 753223190 787581979 820110551 820110551 743075907 816111085 816111085 602822991 877373531 877373531 785987167 717465229 613833664 407609930 379924490 1006768128 1006768128 887145096 1042894198 1042894198 474080916 291513298 300724774 494774406 494774406 306810412 108185556 104074008 400339171 828986041 828986041 892439968 892439968 984756406 984756406 430542978 555965860 980867335 980867335 673202978 970993412 970993412 692653318 685944271 685944271 611306514 825820801 841715073 841715073 733684692 306233490 306233490 155418808 138844596 143805168 143805168 96469024 113664159 994301061 994301061 193118257 814973011 814973011 603520928 603520928 582958465 580343826 848736848 848736848 847567059 847567059 542399104 946289031 946289031 686264583 886196416 886196416 301415394 301415394 390859962 715754855 715754855 849368178 954504373 954504373 932778281 932778281 930898756 930898756 777517466 777517466 1021809103 1034800453 1034800453 1027640502 1027640502 691020020 897648071 897648071 574540586 574540586 274851395 522240 28385536 28385536 25304832 147980836 147980836 271718944 271718944 684397691 938417811 938417811 1022551243 1022551243 979294816 889918032 864280595 707982290 707982290 831091410 831091410 672286336 679959013 679959013 235541532 235541532 71968192 204615080 204615080 144507156 144507156 127741768 20471648 77730712 157716288 157716288 274908818 891190596 891190596 990227062 1066475583 1066475583 927260676 537579529 849300250 849300250 748487178 748487178 471346698 456417666 456417666 861281265 861281265 891421614 891421614 1021788412 1044756634 1044756634 773700759 598552121 337678888 337678888 36250896 55424768 57339056 57339056 22754976 22754976 21376512 39632160 43966032 67427304 67427304 124669960 124669960 48689669 715366224 715366224 651930937 571954769 620264993 620264993 610435328 48099024 48099024 920951872 920951872 912971163 852761362 551686593 347478025 337809978 337809978 393761008 393761008 279453308 500438452 500438452 465704082 236802910 328020518 462690854 462690854 528810204 528810204 236764532 401100762 401100762 113508408 659397520 659397520 590797617 154306581 113808840 113808840 94413512 246538312 545834420 545834420 337684480 127928628 421301880 421301880 302303250 384249418 384249418 335593984 135440644 137435170 177973840 422512416 423415590 423415590 442953122 442953122 451782324 451782324 176345648 115350248 115350248 203736656 435688338 435688338 336121096 336121096 422854282 422854282 335565584 335565584 505939350 505939350 272538310 152338432 294660656 304185502 339167760 339167760 559282948 559282948 550526976 550526976 539549952 696337409 696337409 728374709 728374709 413027659 779618205 1027773831 1027773831 574900772 294530722 953333301 953333301 457986742 854014179 854014179 810140708 960569511 960569511 423407235 808588896 808588896 148058820 166802084 166802084 175870192 175870192 157555012 157555012 150005108 146358436 54970608 54970608 194186096 194186096 324194994 333704698 393061120 393061120 907378690 907378690 883214667 883214667 472809795 507781432 827747378 929336121 929336121 239545909 288360510 288360510 662045509 662045509 729090779 844441728 876618639 876642317 876642317 698036466 903824923 903824923 839835136 940595861 940595861 818036876 818036876 773927231 600517726 711378854 711378854 438852786 417164806 183839270 55897104 146687079 498256017 695938280 695938280 278472258 470361884 650196440 650196440 940573445 940573445 98767579 50589744 51535904 62649680 62649680 49932080 49932080 66657024 93267440 378941946 394790010 394790010 397730362 397730362 290594328 520919060 527306952 527306952 449337030 322049064 246596428 244367964 137964288 99708136 239225824 241582576 241582576 154078468 154078468 177549568 545732673 580673113 621203801 621203801 319319963 319319963 7075200 142903680 148947396 204571760 263841660 263841660 572563097 572563097 207391704 1041475177 1041475177 627838160 367019410 577669426 577669426 573064473 597216323 607971432 830701703 830701703 551910578 978007191 978007191 737028434 669319606 946298848 946298848 1055244047 1055244047 790703377 790703377 504679016 495982784 542033901 542033901 183539260 617551948 617551948 872550411 872550411 831785065 832618914 834627740 834627740 390242168 286470690 314450464 352654698 352654698 324937440 814103344 814103344 942928647 942928647 815267909 981983959 981983959 917802511 588984923 873604708 873604708 476263522 476263522 557788972 740979501 740979501 387986429 872597525 872597525 375904605 799948004 799948004 590006385 578814033 582572289 582572289 568702528 568702528 101702528 101702528 67424544 67424544 50499992 550605792 550605792 88134225 64107000 709116144 709116144 696567909 629146144 742135084 798627453 798627453 763761197 754769199 833757947 874190795 874190795 369150322 369150322 632620550 632620550 947648391 981184747 981184747 844289309 844289309 380361809 794664671 1054764733 1054764733 711980054 711980054 1005395240 1005395240 952703311 876995670 876995670 857984940 857984940 992816587 992816587 675875095 375205530 815294094 864149619 864149619 425224447 354160170 807405824 807405824 604504106 369108006 891865206 891865206 533472397 367281324 367281324 259570716 259570716 530869981 1069584236 1069584236 1053342351 1030269785 923880826 746172392 746172392 504640949 504640949 571261464 726753445 747692749 747692749 558162028 603229208 724828396 724828396 744524436 762364008 762364008 412046694 412046694 606831181 606831181 768975534 879275411 879275411 825230115 411150876 411150876 545001410 935158607 935158607 141877796 709920624 709920624 670192528 670192528 738833976 738833976 209764404 26138712 239075720 239075720 995910614 995910614 475645487 831306799 831306799 185608325 154444440 98870064 270609994 270609994 372787266 372787266 127964888 127964888 43907144 11658048 9552704 31243200 31243200 17940912 33953808 69308672 159359772 316289874 513950726 513950726 259088092 340784068 340784068 296221026 154787840 154787840 362399568 479840476 530180276 530180276 57693136 53480304 68166136 114295872 233513184 233513184 201682420 201682420 258397584 258397584 233688396 233688396 82542288 140276428 174165136 174165136 579665920 596631705 719896178 841754420 846720384 970878977 970878977 978015860 978015860 541774167 541774167 407311028 1001326728 1001326728 604975474 440402070 298394740 136975620 185518384 185518384 50760744 132793792 132793792 117624888 21037312 105513723 659170969 909358641 909358641 475842094 924149808 924149808 843463323 933365007 933365007 339163914 724973968 724973968 498139961 481298828 481298828 641339182 984232759 984232759 663621236 1013923633 1013923633 967373283 967373283 708449493 708449493 572758854 572758854 414609681 387398202 693313622 1033797230 1033797230 402216090 402216090 255583628 304473274 304473274 293176634 275929634 496862774 496862774 802685718 904398315 904398315 557850340 689651208 689651208 22155936 366792426 549520035 549520035 1027993454 1027993454 630791830 721849015 842348809 1035951232 1035951232 926366523 350103025 85534825 620439659 832713187 832713187 645740840 911481617 911481617 855841608 68366856 380233256 380233256 313144400 313144400 100847640 375659816 375659816 397943946 591202532 739095404 739095404 694432164 694432164 630432172 461684038 461684038 109150464 975290390 975290390 547356993 943827904 943827904 576836206 1009418926 1009418926 731859978 203417632 1033127136 1033127136 676491845 522476272 522476272 407097476 407097476 272679042 309049364 485473030 485473030 478623822 188482634 431677064 431677064 418172358 418172358 294160804 709398667 709398667 1064217022 1064217022 1009025336 478029230 621986275 621986275 519153036 436243638 306872616 838869159 863077271 863077271 451961444 570795552 590923569 590923569 156373668 251843088 251843088 741508148 741508148 667571520 667571520 827086162 827086162 745047073 745047073 705176852 715734596 715734596 648095344 806331472 806331472 345931333 690062371 690062371 144380624 888789778 972077381 972077381 693367537 97685861 74492808 281178440 807978491 807978491 515899626 538970555 820268219 820268219 642516045 654617689 654617689 885022945 885022945 941373840 981153687 1008871646 1008871646 827078637 827078637 667484976 667484976 138388320 201987084 985262314 985262314 780665147 780665147 871113826 881853003 881853003 501683116 277162050 648143193 648143193 58916880 30847968 275300786 310480913 850403667 850403667 352456746 768548356 768548356 586251866 342793674 126830337 630581865 673152125 673152125 622184720 622184720 331816127 248513244 565141159 577400578 754032016 830733651 940372596 940372596 357603458 357603458 300124354 300124354 272989991 1031578405 1031578405 678017985 464109742 186250711 341418398 341418398 224395692 402924032 437717678 783352141 907585924 907585924 879673877 816338770 18874656 641410701 641410701 188465953 218398740 218398740 308807196 308807196 476611470 874530711 874530711 475054734 475054734 376570696 882971872 882971872 863756490 273719920 280129840 353673808 353673808 446056992 446056992 534222400 534222400 342646820 62903792 137811460 137811460 909954779 909954779 858748082 858748082 769288172 769288172 739967977 475267118 805317003 1064481116 1064481116 1036011752 513019513 748970570 1010166535 1010166535 671092744 837037993 1016804943 1016804943 978852122 978852122 330840151 177145834 172627092 215091848 215091848 204282880 184369544 224465164 994224856 994224856 812872648 812872648 413665094 413665094 621858844 621858844 559964416 1021323777 1021323777 485829582 758384941 758384941 455149145 486878578 503654430 503654430 985207582 1027424039 1027424039 679491712 26479200 605096580 784655741 784655741 722209389 254412656 233502476 112413832 273542274 371112882 537424903 759018796 759018796 690155776 690155776 536974080 536974080 274223361 544780545 911584592 911584592 961923182 961923182 456530742 456530742 305363874 276033798 466499246 466499246 343611298 842270693 842270693 598351952 590033473 965282211 965282211 356532640 465653552 465653552 484492789 743075907 816111085 816111085 602822991 877373531 877373531 504587334 504587334 337690890 379924490 379924490 345682640 887145096 887145096 1042894198 1042894198 474080916 158499318 300724774 494774406 494774406 306810412 264452696 264452696 400339171 828986041 828986041 892439968 892439968 984756406 984756406 910357627 910357627 980867335 980867335 673202978 970993412 970993412 740841323 471131596 471131596 318582738 318582738 994692798 994692798 274793472 306233490 352590400 352590400 138844596 143805168 452800470 508373910 508373910 994301061 994301061 193118257 635150337 635150337 569715681 582958465 582958465 543172896 122706680 84224128 339966580 391801022 415497749 946289031 946289031 686264583 886196416 886196416 419878950 796064884 1039923183 1039923183 447431353 849368178 954504373 954504373 869432564 869432564 680761924 741068840 741068840 323511889 1021809103 1034800453 1034800453 1027640502 1027640502 814621008 897648071 897648071 379282786 585229538 585229538 866515224 866515224 627386926 627386926 548964129 672446464 672446464 216807129 684397691 938417811 938417811 1022551243 1022551243 979294816 889918032 864280595 848906170 707982290 1025128047 1025128047 180381319 340663434 340663434 218459248 168313944 122221868 204615080 204615080 185860352 187960116 187960116 53479972 33687344 33687344 4793472 274908818 891190596 891190596 661075022 865444228 927260676 927260676 877068570 102807699 668761016 716281484 716281484 412205638 456417666 456417666 195087120 195087120 422576592 422576592 1021788412 1021788412 773700759 773700759 598552121 642304081 642304081 481200509 504272303 504272303 279053928 191666201 226434137 226434137 174005220 174005220 139461252 122700308 192524976 235239484 235239484 657792264 657792264 651930937 571954769 650487265 650487265 608996617 66844336 541195992 920951872 920951872 912971163 902873824 626135713 596804169 546357825 899684601 937199779 937199779 667174707 671239200 671239200 465704082 462387672 462387672 219030634 387534916 528810204 528810204 236764532 476746821 887144907 887144907 677459467 674809605 674809605 647140412 479789934 654956100 809575578 809575578 246538312 337684480 898141808 898141808 1069451867 1069451867 271010688 384249418 758368913 758368913 135440644 750051941 750051941 177973840 305210130 334986742 442953122 442953122 451782324 451782324 98218624 115350248 115350248 152413210 435688338 435688338 294390786 227879532 422854282 422854282 308929938 308929938 306614594 306614594 321514362 342809994 364739266 364739266 304185502 936148021 936148021 647259689 647259689 550526976 539549952 696337409 696337409 728374709 982798678 982798678 779618205 1027773831 1027773831 989915136 294530722 953333301 953333301 831008050 854014179 854014179 810140708 960569511 960569511 832849953 143689063 564290469 564290469 166802084 166802084 679625828 686636417 686636417 546235076 150005108 146358436 54970608 54970608 165194144 174219488 245106244 245106244 231017148 201925644 683072980 683072980 883214667 883214667 990234285 990234285 827747378 929336121 929336121 402788358 402788358 288360510 590148748 590148748 729090779 844441728 844441728 876642317 876642317 698036466 903824923 903824923 839835136 940595861 940595861 818036876 818036876 472273152 302664129 711378854 711378854 602408433 602408433 708772273 708772273 467568039 498256017 695938280 695938280 278472258 470361884 650196440 650196440 940573445 940573445 894071967 894071967 807588099 849578114 849578114 599818512 584449729 598280960 598280960 563294433 556076000 394790010 397730362 397730362 290594328 520919060 527306952 527306952 449337030 322049064 246596428 244367964 172303760 99708136 239225824 241582576 241582576 154078468 154078468 177549568 177549568 218818588 218818588 565533024 567270017 567270017 539616513 539616513 141394065 388214126 388214126 263841660 572563097 572563097 128249406 1041475177 1041475177 241478430 398725280 588028050 937297073 937297073 597216323 607971432 830701703 830701703 583407825 138535044 680312004 680312004 669319606 142017358 202906174 327007924 509668392 509668392 357905423 357905423 495982784 738408642 738408642 849968384 849968384 959357487 959357487 883875147 831785065 831785065 379689610 379689610 286470690 286470690 380676104 380676104 541240357 541240357 814103344 814103344 678628154 678628154 815267909 815267909 408428103 269429444 193070091 1006768180 1006768180 755500077 141075268 145835396 145835396 146227456 146227456 88410184 71370792 71370792 54735024 10686944 36174096 54786928 54786928 40059712 52424000 98020800 113679152 113679152 109523728 109523728 108120176 659129697 659129697 622608468 798805629 798805629 709116144 696567909 613679128 613679128 228854393 763761197 763761197 754769199 833757947 874190795 874190795 369150322 908132028 908132028 794485499 375495874 480503893 675906118 675906118 5243520 5187200 949452804 1054764733 1054764733 545456328 981740822 1005395240 1005395240 556344609 876995670 876995670 857984940 868790623 868790623 857999667 375205530 810336384 815294094 864149619 864149619 425224447 960841314 960841314 962857160 962857160 977595848 1055665354 1055665354 764183644 764183644 367281324 682738813 682738813 925419245 1069584236 1069584236 878356699 577062685 577062685 1017719144 1017719144 867833715 701620965 701620965 571261464 689440293 689440293 135004757 213461148 213461148 338351370 511848896 511848896 239075364 412046694 826905189 826905189 606831181 768975534 879275411 879275411 825230115 518590216 518590216 381747594 935158607 935158607 141877796 709920624 709920624 666896768 666896768 545561209 209764404 209764404 76335216 162339409 162339409 995910614 995910614 475645487 831306799 831306799 185608325 154444440 98870064 270609994 270609994 372787266 372787266 285508434 270937778 270937778 390019760 390019760 311952768 79786688 77385288 42502680 55403152 159359772 159359772 513950726 513950726 259088092 340784068 340784068 269668866 154787840 154787840 177486644 479840476 530180276 530180276 109641840 41030544 68166136 92409956 233513184 233513184 201682420 201682420 258397584 258397584 233688396 233688396 154675744 154675744 174165136 174165136 579665920 596631705 633155891 633155891 327329796 998532753 998532753 591233639 418905030 541774167 541774167 407311028 1001326728 1001326728 604975474 230170624 578413769 578413769 185518384 185518384 166016764 705100256 733781961 799839440 799839440 252045372 568420156 681509696 681509696 475842094 497289582 497289582 651635523 651635523 486843214 1046659424 1046659424 900647279 967069894 967069894 481298828 641339182 984232759 984232759 1023493130 1023493130 1013923633 967373283 967373283 708449493 708449493 676979222 676979222 1007158287 1036474021 1036474021 1033797230 1033797230 375002676 375002676 388105480 388105480 278796992 508091394 508091394 496862774 993785655 993785655 1062203189 1062203189 1012969764 689651208 689651208 612183945 948911175 948911175 549520035 818269988 818269988 598130242 721849015 842348809 842348809 926366523 926366523 350103025 140057792 620439659 832713187 832713187 645740840 343016394 372493602 372493602 539328275 539328275 102455040 912824370 912824370 823772081 843326505 843326505 766287932 898180203 960034844 960034844 45488976 305335298 305335298 269234962 269234962 70854408 746765722 746765722 192987393 943827904 943827904 417685404 1009418926 1009418926 811403780 139903076 1016826914 1016826914 676491845 922922309 922922309 384077178 242936836 242936836 136433424 451625410 451625410 181034256 181034256 431677064 431677064 418172358 418172358 294160804 520126592 520126592 394360302 677456339 677456339 478029230 621986275 621986275 519153036 507940760 152603802 838869159 863077271 863077271 687874916 570795552 590923569 590923569 156373668 723239428 723239428 71438472 60619572 667571520 839118867 839118867 663735561 672379173 672379173 347907922 101050392 833094424 833094424 787690461 787690461 786636225 333489652 333489652 144380624 700500160 700500160 407160966 407160966 257672844 257672844 344666192 807978491 807978491 515899626 538970555 826056556 826056556 642516045 642516045 633939032 885022945 885022945 629515469 409344390 1008871646 1008871646 827078637 827078637 667484976 819912045 819912045 986048727 986048727 985262314 109071604 578104209 871113826 871113826 501683116 501683116 545394725 648143193 706239760 706239760 561020208 33123568 31321824 7047040 23623584 23623584 768548356 768548356 554773264 554773264 312751920 630581865 673152125 673152125 577048233 537724889 248513244 248513244 565141159 577400578 754032016 830733651 940372596 940372596 357603458 357603458 96846536 378266954 378266954 1031578405 1031578405 678017985 464109742 186250711 416286754 416286754 224395692 385878584 385878584 783352141 907585924 907585924 879673877 816338770 725707219 933580685 933580685 603859940 814269658 814269658 1044916647 1044916647 476611470 874530711 874530711 146462532 159966124 281227276 882971872 882971872 863756490 279089632 479230726 479230726 402008458 73878426 386774016 386774016 187406730 181279808 9637888 42957056 42957056 909954779 909954779 858748082 898612056 898612056 906824826 906824826 475267118 805317003 1064481116 1064481116 1036011752 925239049 925239049 487395170 775713255 775713255 837037993 1016804943 1016804943 978852122 978852122 330840151 177145834 172627092 178651876 204282880 209865542 408961872 408961872 994224856 994224856 538236887 217969576 403204711 403204711 1023455584 1023455584 815984652 559964416 2195873 256 2097408 2097408 2097408 201329664 202116108 202116108 202116108 786444 679491712 679491712 662708888 209828576 714640413 714640413 537953797 254412656 185371664 251995192 273542274 371112882 537424903 759018796 759018796 690155776 690155776 536974080 536974080 274223361 544780545 744516806 744516806 961923182 961923182 420741356 149297604 202689036 202689036 466499246 466499246 362568764 710943816 710943816 598351952 590033473 165727218 356532640 356532640 53477642 8050560 128110968 496951400 532541310 532541310 873200072 873200072 370590616 344460672 208453774 337690890 337690890 145017156 145017156 31820752 77545032 143307140 143307140 199043896 205920396 253397512 253397512 239509428 103479316 264452696 264452696 306687796 355033234 355033234 881245320 881245320 471398614 641794968 910357627 910357627 856642683 823531699 628697561 685575684 685575684 740841323 680698326 846459795 846459795 810791861 994692798 1072784926 1072784926 121685186 352590400 352590400 715424437 715424437 466618911 508373910 508373910 448856072 339743955 54808704 46330896 30744704 117639368 117639368 47942160 122706680 297804778 297804778 389241604 391801022 472908194 472908194 443663098 443663098 415302144 415302144 941695239 941695239 1039923183 1039923183 835061913 331359282 331359282 325334048 460108560 951989977 951989977 680761924 810990691 810990691 616878220 231135468 616960256 616960256 409245859 814621008 883438738 883438738 881118459 881118459 585229538 866515224 866515224 627386926 627386926 548964129 672446464 672446464 246564588 210886922 465094518 839671564 839671564 629806185 202242149 128501112 848906170 848906170 439883460 1025128047 1025128047 823658019 823658019 822850215 705032102 168313944 945747734 945747734 420508484 1058669375 1058669375 949754975 822682695 609397888 745309353 883286784 883286784 166830912 151840742 17369184 8388672 337772824 877068570 877068570 102807699 0 1048576 1048576 297796240 297796240 186780746 847123931 847123931 858395160 858395160 682004995 682004995 495104590 495104590 545759272 642304081 642304081 481200509 769656770 769656770 667939607 214927243 556764392 556764392 174005220 174005220 139461252 122700308 192524976 235239484 235239484 227558752 85393192 540850032 554265792 650487265 650487265 608996617 66844336 541195992 898264952 898264952 902873824 902873824 626135713 596804169 546357825 899684601 937199779 937199779 667174707 671239200 671239200 235967032 462387672 462387672 219030634 204516906 525396408 525396408 169941250 476746821 887144907 887144907 677459467 674809605 674809605 647140412 750912988 750912988 889832830 889832830 308856291 340795658 1046545142 1046545142 1069451867 1069451867 391404792 241721370 758368913 758368913 121092128 750051941 750051941 302023774 177795074 167084708 167084708 163906788 163906788 161168580 151597760 84945920 84492320 84492320 789504 14487840 14487840 31192800 85938432 273602104 308929938 506783152 506783152 306614594 321514362 342809994 364739266 364739266 287011474 936148021 1035389642 1035389642 647259689 202560012 111703880 111703880 20229956 245625180 982798678 982798678 625064072 439694464 989915136 989915136 567559572 593933761 831008050 831008050 581249361 335349475 406612992 556043782 832849953 832849953 550639616 564290469 700971237 700971237 693584289 679625828 686636417 686636417 697773092 697773092 561585152 156114336 12195648 165194144 165194144 245106244 245106244 231017148 214213224 683072980 683072980 617742029 906829975 1010641062 1010641062 775899177 474123562 1013469867 1013469867 839537442 839537442 590148748 590148748 511502610 2140218 552923267 809749441 809749441 876034827 876034827 637534858 340787225 201851916 369099798 369099798 943879602 943879602 4768896 409436288 603308624 603308624 602408433 708772273 708772273 467568039 378855139 484915662 484915662 745986957 1072190626 1072190626 314837184 370149592 778708138 894071967 894071967 812287362 849578114 849578114 599818512 584449729 598280960 598280960 563294433 556076000 35599440 57151520 57151520 37765632 43680848 54137904 58787408 58787408 55748416 6261376 172303760 172303760 23880756 21801008 5013632 151090464 281937798 281937798 438181719 589118977 700337441 700337441 565533024 567270017 868963616 868963616 964358435 964358435 958476727 704524066 567616470 567616470 791564767 791564767 705473389 373361536 241478430 398725280 588028050 937297073 937297073 775031530 600447953 600447953 583407825 583407825 969363648 969363648 14713280 35717392 35717392 42726480 127937296 509668392 509668392 823402952 930425851 930425851 818272899 738408642 849968384 849968384 959357487 959357487 883875147 153491748 412244212 443732886 443732886 409194386 357887562 380676104 380676104 541240357 541240357 688738433 963046886 963046886 874893748 852667329 443547651 408228823 616912002 679552435 1006768180 1006768180 755500077 246168403 924428992 972814311 972814311 374098933 857679405 857679405 374952989 700454148 700454148 598751089 539628801 553334977 553334977 537869969 537314832 113679152 113679152 109523728 109523728 120742192 659129697 659129697 622608468 798805629 798805629 681889953 732992497 732992497 765729656 765729656 50405424 125837408 125837408 63005016 56746416 56746416 97782504 908132028 908132028 794485499 375495874 383461340 604671121 604671121 986391248 986391248 949452804 949452804 839732248 646111240 981740822 981740822 556344609 556344609 405610663 324397746 309455394 868790623 1046034974 1046034974 812784641 810336384 810336384 567870242 473066094 473066094 960841314 960841314 962857160 962857160 977595848 1055665354 1055665354 764183644 764183644 624163689 755182009 755182009 925419245 925419245 872383600 872383600 577062685 787516432 1017719144 1017719144 867833715 701620965 701620965 219234320 639075384 639075384 182260372 182260372 8388608 8388672 511848896 511848896 239075364 239075364 826905189 826905189 823705600 823705600 748258883 225203968 640236948 640236948 518590216 135012628 199263712 199263712 61730160 61730160 38397072 666896768 666896768 652285952 103028960 76335216 76335216 210373637 539367489 539367489 370832643 437304409 437304409 510919132 999836770 999836770 924446506 811927944 863028147 1059274886 1059274886 335677110 335677110 300427338 390019760 394603018 394603018 79786688 349147376 349147376 306354008 94994800 143688288 143688288 265552360 265552360 148236996 28566468 26737248 154065408 154065408 113024672 113024672 111149400 111149400 208282684 208282684 102831528 102831528 92340320 86556680 151015800 151015800 160106828 160106828 115792344 55450784 154675744 154675744 151522388 75573329 631251248 631251248 306283652 436855830 1022255276 1022255276 998532753 773936141 944547107 944547107 581962135 430515558 723518758 844652997 870417123 870417123 578413769 578413769 570516752 74724616 166016764 705100256 733781961 799839440 799839440 252045372 568420156 568420156 185329683 972806487 1049877231 1049877231 660051834 660051834 486843214 1046659424 1046659424 900647279 967069894 967069894 948907789 948907789 942023215 906233880 1023493130 1023493130 954520869 215957967 473880996 473880996 612503622 676979222 676979222 1007158287 1036474021 1036474021 696630919 575506244 296387088 90177960 388105480 435721792 435721792 508091394 508091394 295435880 993785655 993785655 1062203189 1062203189 1012969764 847376154 847376154 612183945 948911175 948911175 374607402 374607402 530150896 530150896 187879998 159647844 168114328 168114328 131084752 141783464 141783464 232005032 486702434 486702434 395232306 395232306 372493602 537134402 539328275 539328275 910194080 912824370 912824370 823772081 843326505 843326505 766287932 898180203 960034844 960034844 447133924 161593428 45215360 68565008 70854408 70854408 746765722 746765722 192987393 173607856 869452807 869452807 458103990 811403780 811403780 429695043 735328945 735328945 783928164 922922309 922922309 384077178 282385936 605654545 637724547 706855446 706855446 2900096 7130496 741608067 1018847146 1018847146 962632132 962632132 520126592 520126592 394360302 394360302 100767502 85709964 341370504 437143186 507940760 507940760 130548996 709903008 709903008 687874916 728237493 728237493 537445377 537445377 864210968 864210968 954799349 954799349 629192330 629192330 839118867 839118867 817735987 672379173 679497773 679497773 470900741 833094424 833094424 787690461 787690461 786636225 417869841 592910450 592910450 700500160 700500160 672886785 672886785 509398622 509398622 650899651 650899651 399569514 766727396 766727396 826056556 826056556 973101180 973101180 604947711 222958764 1066154150 1066154150 414721585 270532866 296817804 296817804 232470252 226319187 819912045 819912045 986048727 986048727 341038068 302848040 423962790 423962790 66399216 460733298 460733298 545394725 545394725 706239760 706239760 561020208 33123568 55653616 55653616 16819232 18433280 807337496 807337496 598532155 554773264 312751920 312751920 63444728 95819264 190843308 190843308 210645640 210645640 171493888 145661828 201884160 201884160 151044128 151044132 160086608 160086608 43455552 378266954 386917796 386917796 456272926 477961274 477961274 436413276 436413276 416286754 156238500 420479008 420479008 403702278 897102368 897102368 429295100 570025720 725707219 933580685 933580685 603859940 814269658 814269658 1044916647 1044916647 37257488 716784146 806467415 808710915 808710915 271214081 329416902 525050040 525050040 530669868 530669868 479230726 402008458 73878426 386774016 386774016 187417468 187417468 99849600 157992356 157992356 415256774 415256774 294049856 898612056 898612056 906824826 906824826 960107532 960107532 354163216 354163216 237115396 925239049 925239049 508040836 775713255 775713255 252051749 640031001 676529377 785265568 785265568 31756256 166523264 166523264 160382052 79810944 211204836 435460232 435460232 710070396 918824171 926827121 926827121 403204711 403204711 1023455584 1023455584 856310141 856310141 237774342 276873313 757597485 757597485 451970361 316688338 202116108 202116108 948275716 965212263 1041521405 1041521405 675620997 256969273 559277152 559277152 537953797 185371664 185371664 251995192 251995192 1205760 537949696 537949696 1288192 2490368 2490368 1969408 2753536 4732290 270741762 340267688 340267688 428149350 428149350 420741356 186097903 851830995 851830995 806558420 806558420 362568764 710943816 710943816 560120759 600232370 850720578 1029891924 1029891924 802364552 802364552 449177814 449177814 376316284 258436492 873200072 873200072 607654201 161744808 297908492 297908492 271638546 338850442 632501134 1007661559 1007661559 795397724 795397724 235907420 235907420 213559400 201375756 201375756 151314584 251668864 258288060 258288060 814158150 1009200815 1009200815 213958860 312769870 312769870 663586004 721447037 721447037 709693629 639768605 639631641 560662292 560662292 680698326 846459795 846459795 810791861 693318309 1072784926 1072784926 865600064 865600064 329401610 715424437 785646452 785646452 270455486 134794724 563479117 675694652 675694652 605876785 605876785 573638993 605237769 632455464 632455464 297804778 297804778 389241604 389241604 472908194 640768212 770909023 770909023 785435418 785435418 941695239 941695239 478150734 835061913 835061913 1026753551 1026753551 724766245 856436422 951989977 951989977 546936360 810990691 810990691 685197508 685197508 616960256 654060618 664568225 664568225 595593048 598791401 881118459 881118459 548569289 636263216 636263216 579262545 333500851 175730484 22403744 246564588 246564588 564278935 935311975 935311975 839671564 629806185 232862392 232862392 430902498 433664860 819792573 819792573 502239782 823658019 851789471 1045997779 1045997779 149119261 945747734 945747734 420508484 1058669375 1058669375 949754975 822682695 609397888 745309353 883286784 883286784 575410678 575410678 571675558 870463452 904815900 913028632 913028632 556457729 556457729 680039172 680039172 303304016 314706064 314706064 847123931 847123931 858395160 858395160 682004995 983613783 983613783 730282101 994431170 994431170 42256563 480542876 769656770 769656770 667939607 214927243 589826368 589826368 103136281 101065288 128505488 128505488 110632032 124470184 124470184 582793760 582793760 543727121 540850032 132823736 572806232 572806232 59217200 53239904 33554448 274731106 274731106 218954352 513331688 513331688 380802642 380802642 285850722 474377978 503629656 503629656 268850674 268850674 308315196 308315196 143688840 102550328 525396408 525396408 169941250 160454174 498999148 653824506 852530099 852530099 657642297 635442841 750912988 750912988 889832830 889832830 308856291 481411612 1046545142 1046545142 907018644 391404792 391404792 216389138 389220818 389220818 174196784 157686180 302023774 413365792 413365792 167084708 167084708 163906788 163906788 161168580 151597760 67637760 125359908 169510652 173150868 173150868 43600704 208119812 208119812 128718960 138504732 506783152 506783152 453270524 395782870 148078594 335626280 335626280 441500310 441500310 1035389642 1035389642 585549524 585549524 245428653 757320556 757320556 162346009 453013810 625064072 625064072 935821827 935821827 413057120 567559572 990457013 990457013 562826337 831492416 831492416 542737378 542737378 687964679 687964679 673339904 550639616 700971237 700971237 693584289 591078673 591078673 674510913 697773092 697773092 561585152 177734932 177734932 178652752 178652752 240125936 256378044 256378044 214213224 207795891 909849367 909849367 928059808 1010641062 1010641062 775899177 654839836 1013469867 1013469867 839537442 839537442 393858572 511502610 511502610 790937915 790937915 612937912 867211802 876034827 876034827 805717862 672677914 201851916 476582660 476582660 1059672958 1059672958 978993427 978993427 685842885 603308624 43052017 53089584 53089584 55698096 731492358 818623683 818623683 823166501 1072190626 1072190626 1003491812 1003491812 870954275 684163090 684163090 812287362 812287362 642581770 335555737 8787712 8787712 10621248 58791456 58791456 40703120 40703120 40774016 44042432 44042432 54137904 58787408 58787408 143337988 143337988 134223364 53276320 34213124 36359168 169813764 169813764 281937798 281937798 438181719 589118977 700337441 700337441 271986534 30855744 868963616 868963616 964358435 964358435 958476727 704524066 567616470 567616470 791564767 791564767 705473389 273947039 925271537 925271537 755157192 755157192 775031530 775031530 731646892 1028169018 1028169018 696903864 969363648 969363648 927236214 927236214 723456538 876658827 876658827 642083075 969116129 969116129 930425851 930425851 818272899 579078622 787108149 879123761 879123761 842406007 933381126 933381126 412244212 884610833 884610833 522208044 473547130 423224422 904664921 904664921 430576998 618585194 963046886 963046886 874893748 852667329 415499269 105306264 616912002 679552435 679552435 539626851 539626851 457178934 924428992 972814311 972814311 374098933 857679405 857679405 374952989 700454148 700454148 598751089 539628801 553334977 553334977 537869969 537314832 63418080 63418080 63363152 63363152 120742192 120742192 120063288 555500576 600575217 600575217 681889953 732992497 732992497 804463253 804463253 67253204 245766565 800118191 841492075 927878947 927878947 341172618 894442568 894442568 702818022 470586632 1027507851 1027507851 944000514 986391248 986391248 806955600 806955600 646111240 646111240 122046720 122046720 21236608 157630518 324397746 324397746 309455394 570466575 1046034974 1046034974 812784641 638591663 857968874 857968874 506347822 506347822 463410622 500570862 917046650 925370656 925370656 278145553 385784320 403947635 801558750 801558750 755182009 755182009 901865482 901865482 681965684 863592635 863592635 787516432 787516432 1005542847 1005542847 541681537 541681537 579942985 639075384 639075384 576007312 576007312 805589008 939708423 939708423 209764428 209764428 136327584 299004248 299004248 823705600 823705600 748258883 178418165 640236948 640236948 586488202 227828313 988056037 988056037 688220679 720835712 720835712 592704177 652285952 652285952 709304597 709304597 573080936 573080936 539367489 622084112 806355459 806355459 590377131 633850060 1064354751 1064354751 924446506 811927944 993821048 1059274886 1059274886 335677110 335677110 417405302 875307487 875307487 845620202 598007139 581571856 349147376 306354008 190980468 190980468 148612880 265552360 265552360 148236996 28566468 252451100 252451100 233178552 233178552 192740910 427084710 427084710 370721210 208282684 102831528 102831528 516637150 516637150 385991236 309899272 309899272 160106828 115792344 46182224 192280304 192280304 183422020 106572156 654676943 654676943 306283652 436855830 1022255276 1022255276 872812572 1040452415 1040452415 1014118575 581962135 487588398 723518758 844652997 870417123 870417123 447161158 570516752 570516752 446070080 446070080 252792416 244182108 126362156 591731414 1007120047 1007120047 487827887 497071136 972806487 1049877231 1049877231 660051834 660051834 149322036 149322036 990335668 990335668 234767213 626984835 948907789 948907789 942023215 906233880 575428446 698653571 698653571 447888350 751539910 751539910 160085504 991449152 991449152 479875587 387060282 235139100 235139100 553648388 556101976 556101976 746825992 746825992 686964757 747523305 747523305 618154647 558276080 931534971 931534971 790759750 454169142 847376154 847376154 781516928 848629258 848629258 374607402 374607402 847320467 847320467 275588576 929570219 929570219 902699258 919802485 919802485 141783464 616683937 616683937 550027136 563677444 563677444 127702298 879233224 879233224 122108088 910194080 910194080 235615260 235615260 141243780 186786992 270648672 270648672 149899502 447133924 447133924 329599036 288967296 161171420 161171420 109325688 407953582 943735094 1046551585 1046551585 869452807 869452807 458103990 458103990 478706246 478706246 735328945 735328945 783928164 783928164 471934368 471934368 282385936 605654545 637724547 917771710 917771710 358240869 129124516 741608067 1018847146 1018847146 962632132 962632132 722146623 182690234 459411894 459411894 32967924 77385288 241008776 241008776 102360064 102360064 96297952 543262772 583346352 677159652 728237493 728237493 537445377 537445377 864210968 864210968 954799349 954799349 629192330 629192330 863450594 863450594 817735987 523307041 679497773 679497773 572032016 634736756 634736756 285347874 771298664 771298664 417869841 592910450 592910450 463744549 565324128 672886785 846862160 933815352 933815352 655380552 655380552 812312209 812312209 766727396 633700213 633700213 973101180 973101180 801785004 1044621521 1066154150 1066154150 555745569 688199621 688199621 296817804 962533956 962533956 752115476 752115476 424150182 471784104 471784104 1048903784 1048903784 990193719 92285023 460733298 460733298 311898470 311898470 269999384 50922768 50922768 46873152 303564417 542638291 568877537 568877537 807337496 807337496 796983567 1026557486 1026557486 488772171 209719396 209719396 190843308 190843308 210645640 210645640 137443664 101985240 201884160 201884160 151044128 151044132 160086608 160086608 131137568 47428280 386917796 878864059 878864059 537323305 477961274 436413276 498209646 498209646 201405250 420479008 420479008 789614781 789614781 876111954 876111954 634106884 435902704 588659236 588659236 807383089 839509011 839509011 807945017 807945017 338167050 780699418 921747533 921747533 808710915 383420329 1011832976 1011832976 779669474 530669868 530669868 506548580 381784776 381784776 361998928 361998928 533087266 533087266 433195744 414240492 414240492 756363913 756363913 32706792 542062869 542062869 976930258 976930258 960107532 1010043172 1010043172 874018833 974315086 974315086 240707024 508040836 508040836 281149440 336991436 336991436 103451664 369664082 377722518 398217836 398217836 456315332 456315332 109173708 211204836 435460232 435460232 710070396 918824171 926827121 926827121 234930204 674620762 841339216 841339216 856310141 856310141 729056121 737508832 757597485 917503323 917503323 826244216 65023218 840172557 948275716 965212263 1041521405 1041521405 705168537 746586189 746586189 604536845 604536845 545149976 545149976 226087816 158616492 223173488 748382340 771702765 771702765 631064864 298861122 298861122 338169600 338169600 273062080 340267688 340267688 347995498 347995498 437386968 437386968 851830995 851830995 885097112 885097112 605937747 723265090 723265090 560120759 600232370 850720578 1029891924 1029891924 902765678 802364552 449177814 916315245 916315245 802366677 623097902 607654201 607654201 258171206 297908492 415925768 415925768 338850442 632501134 1007661559 1007661559 795397724 795397724 235907420 237768992 254412828 254412828 254296476 151314584 119398428 110430528 28516482 814158150 1009200815 1009200815 351025280 346764618 312769870 663586004 721447037 721822892 721822892 660683960 639631641 268568316 367002090 481822304 488636718 488636718 410116998 613001186 755048493 755048493 865600064 865600064 325604353 159383652 785646452 785646452 994352339 994352339 563479117 675694652 675694652 605876785 605876785 573638993 605237769 632455464 632455464 97884432 133610488 133610488 128334800 464419465 640768212 770909023 780563000 952129856 952129856 372507591 168870516 168870516 706811073 706811073 1026753551 1026753551 905510437 856436422 856436422 542283776 542283776 13881856 14024900 685197508 685197508 610720064 654060618 664568225 664568225 457122941 61909216 28363136 0 0 596679200 596679200 579262545 60082225 21106848 28342592 28342592 117389257 564278935 935311975 935311975 815539092 249196264 958285400 958285400 939923463 733164405 819792573 819792573 502239782 596918288 851789471 1045997779 1045997779 451224045 913018818 913018818 372010761 340861578 349251608 349251608 109389912 9914960 35178000 391225912 391225912 575410678 575410678 571675558 870463452 904815900 913028632 913028632 556457729 556457729 680039172 680039172 331487458 331487458 314706064 250681578 61081968 61081968 64673520 252314523 983613783 983613783 730282101 994431170 994431170 1016979864 1016979864 852880083 546654815 102236773 95284584 589826368 589826368 103136281 101065288 128505488 128505488 110632032 124470184 124470184 582793760 582793760 543727121 557164640 557164640 127281953 578921032 578921032 908365096 908365096 866031482 899083311 899083311 830885418 685462723 685462723 423882918 1019870049 1019870049 474377978 246341262 321522756 321522756 427083106 457836460 495858340 495858340 419642254 419642254 128184696 160454174 394974330 653824506 852530099 852530099 657642297 642463889 603979785 607126281 638723856 638723856 253619804 481411612 481411612 332188994 332188994 288408354 91422896 178631120 178631120 174196784 174196784 447293214 447293214 413365792 426577454 426577454 49164336 49164336 25584640 35506704 79776352 79776352 125359908 169510652 173150868 173150868 56986576 231959052 231959052 221352736 138504732 242559900 453270524 453270524 395782870 245391994 270062770 324064196 441500310 850086229 850086229 828819462 585549524 604959657 628713472 757320556 757320556 637069641 637069641 763701249 763701249 935821827 935821827 413057120 721682832 990457013 990457013 562826337 831492416 831492416 542737378 542737378 687964679 687964679 811862084 811862084 558417057 558417057 550620165 591078673 591078673 582272656 582272656 171772416 34740736 177734932 177734932 178652752 178652752 240125936 256378044 256378044 106119696 207795891 909849367 909849367 928059808 928059808 490420014 307573162 654839836 654839836 738362522 977982615 977982615 877572920 877572920 484577742 790937915 790937915 836079016 894436139 922763304 922763304 906511660 1043863310 1043863310 1040188811 577373340 1059672958 1059672958 978993427 978993427 685842885 582833200 760851753 760851753 649937336 698951013 856949303 856949303 818623683 823166501 963339942 963339942 1011954076 1011954076 870954275 854735555 684163090 505790990 642581770 870433857 870433857 597135969 563014064 564521313 564521313 543246560 40703120 40703120 42991936 44042432 44042432 5507392 3929856 3929856 143337988 143337988 134223364 34450432 34213124 36359168 169813764 169813764 135875332 138318144 138318144 183784080 183784080 14193796 3671040 3289280 54121728 54138672 54138672 42521440 287383882 287383882 532624334 532624334 308922384 351137226 862758207 862758207 925271537 925271537 755157192 755157192 604789852 731646892 731646892 1028169018 1028169018 696903864 805484580 805484580 927236214 927236214 723456538 876658827 876658827 642083075 969116129 969116129 402653190 591659033 690226345 690226345 787108149 879123761 879123761 941248008 941248008 933381126 369628248 884610833 884610833 522208044 473547130 423224422 904664921 904664921 430576998 618585194 618585194 744962445 744962445 451096520 451096520 305658642 370147656 370147656 137888258 420162868 420162868 457178934 457178934 534317526 534317526 227228034 130582328 130582328 60867016 59245680 61217136 61217136 54508912 54508912 47920848 47920848 46770064 41532048 37580672 16463808 7450560 78848505 78848505 180561756 652292628 652292628 538216581 996463193 996463193 485933911 804463253 804463253 100763786 245766565 800118191 841492075 927878947 927878947 341172618 341172618 702818022 857761396 857761396 1027507851 1027507851 944000514 424273024 806380194 806380194 666894585 354033186 130287864 130287864 610996409 631509907 755250429 825890595 825890595 578629521 578629521 539177240 305607433 656016440 1028727141 1028727141 857968874 506347822 506347822 33431520 404965864 917046650 1054180378 1054180378 630702665 1016519295 1016519295 801558750 801558750 394743178 394743178 63652144 311819763 409029428 863592635 863592635 896734754 896734754 1005542847 1005542847 569370585 541681537 579942985 681326092 681326092 819009666 819009666 805589008 939708423 939708423 947951706 947951706 128014248 694211793 694211793 680121089 566805729 754169129 754169129 677505344 586488202 586488202 813196576 988056037 988056037 688220679 720835712 720835712 592704177 555341225 610989840 709304597 709304597 573080936 573080936 319080818 872743472 872743472 806355459 683973620 683973620 1064354751 1064354751 948462236 240223303 993821048 993821048 693659126 191327808 191327808 417405302 875307487 875307487 845620202 598007139 581571856 145674580 145674580 190980468 219923088 238463804 238463804 138555472 84023092 110645280 252451100 252451100 233178552 233178552 192740910 427084710 427084710 370721210 75130028 50928402 369627904 516637150 516637150 385991236 309899272 309899272 249684068 236025700 71766836 192280304 233560316 233560316 106572156 654676943 654676943 902026316 902026316 649634684 934306575 934306575 1040452415 1040452415 1014118575 400692358 487588398 557916815 757071990 757071990 501965016 501965016 447161158 596137009 799915508 799915508 348355296 532123030 533909930 591731414 1007120047 1007120047 779739934 787295898 787295898 908587931 908587931 465049189 699401061 720732919 720732919 990335668 990335668 730234475 730234475 436997142 436997142 436997142 328604274 328604274 439424020 439424020 447888350 751539910 751539910 684885701 991449152 991449152 479875587 726142512 726142512 676596357 589824912 716586645 716586645 746825992 746825992 686964757 747523305 747523305 618154647 558276080 931534971 931534971 790759750 862204305 862204305 781516928 781516928 553918496 16844833 33554432 306653470 1006842770 1006842770 275588576 929570219 929570219 902699258 919802485 919802485 760859013 760859013 616683937 550027136 563677444 563677444 97033128 879233224 879233224 864337427 884778986 1019532353 1019532353 895392995 892221729 554612109 740598022 1010939919 1010939919 346147268 931011236 931011236 563483866 262945029 556938753 579988457 756241720 943735094 1046551585 1046551585 470592067 370031342 449687024 449687024 478706246 478706246 478337638 472373654 472373654 426200468 471934368 471934368 219222678 108462980 272119568 917771710 917771710 358240869 129124516 307660898 307660898 806193216 806193216 757562456 722146623 446842420 459411894 459411894 185345348 185345348 241008776 578246917 775654549 775654549 582454501 769917453 769917453 542528597 593497873 593497873 573637472 19923744 16777248 660480 25874752 25874752 602030064 602030064 863450594 863450594 910683313 910683313 885255337 1421857 572032016 572032016 905654068 905654068 705765039 145888068 719263400 719263400 463744549 463744549 243517510 304780054 846862160 933815352 1025376786 1025376786 816355122 930226345 930226345 945482089 945482089 780045744 723952649 849618048 851517651 1044621521 1044621521 851517651 811480827 811480827 688199621 631031870 962533956 962533956 916732248 323606696 424150182 1013161606 1013161606 1048903784 1048903784 990193719 581774531 808721263 808721263 344141898 932585865 932585865 640716018 609903248 316901778 316901778 542638291 568877537 568877537 532792529 245958678 796983567 1026557486 1026557486 633550805 444146990 444146990 270833298 270833298 776694364 776694364 750794832 101985240 107090008 138486216 147882180 147882180 98201504 131137568 131137568 401069010 401069010 878864059 878864059 537323305 272990467 442531986 498209646 528025020 693403686 856181396 856181396 789614781 789614781 972729110 975250628 975250628 435902704 588659236 588659236 807383089 839509011 989912464 989912464 807945017 581571921 780699418 921747533 921747533 647579601 383420329 1011832976 1011832976 779669474 204717234 506548580 506548580 381784776 381784776 361998928 361998928 533087266 533087266 500638440 414240492 414240492 756363913 756363913 488806472 542062869 542062869 976930258 976930258 957350156 1010043172 1010043172 874018833 974315086 974315086 488900910 521472034 521472034 440829976 440829976 336991436 167778906 369664082 377722518 398217836 398217836 456315332 456315332 622330508 747308651 747308651 769654509 769654509 394387578 431241794 431241794 234930204 674620762 841339216 841339216 680200791 729056121 729056121 737508832 737508832 917503323 917503323 826244216 504703518 840172557 840172557 777519774 773065245 746848913 705168537 746586189 746586189 604536845 604536845 545149976 545149976 226087816 158616492 223173488 748382340 771702765 771702765 631064864 298861122 298861122 338169600 338169600 290517122 290517122 293308610 347995498 347995498 437386968 437386968 511748340 511748340 885097112 885097112 777739280 777739280 723265090 247479993 33554448 497075221 497075221 902765678 902765678 156238233 156238233 916315245 916315245 802366677 623097902 515462320 505596218 505596218 305511616 415925768 415925768 503840926 510207390 510207390 415277528 8406208 8406208 68228512 237768992 254412828 254412828 254296476 187063616 403776006 403776006 158936710 247490324 247490324 351025280 351025280 609387538 609387538 654582840 674183221 721822892 721822892 660683960 675361707 675361707 650191065 4227648 13681344 368600172 410116998 613001186 755048493 755048493 622335272 622335272 325604353 159383652 374889368 687916336 1042695470 1042695470 492472246 575479198 575479198 383987146 80490898 56493568 56493568 21928064 376703810 376703810 133610488 133610488 309583570 464419465 464419465 166929828 780563000 952129856 952129856 327290994 1044964586 1044964586 939732999 706811073 550064900 905510437 905510437 737565536 737565536 652929985 542283776 198046856 648203088 756928303 1019006799 1066904883 1066904883 924769851 924769851 872207768 86822352 344874098 887671896 887671896 846071571 583160026 583160026 296616899 51698720 30808800 37657480 121720824 131085798 280020316 280020316 216268416 249196264 958285400 958285400 939923463 733164405 733164405 886089328 927589563 962095833 962095833 562063774 562063774 451224045 551164184 551164184 392369901 806564355 903230003 903230003 109389912 608887304 843426827 843426827 684271644 283427912 311797530 398690376 398690376 382461272 382461272 116617426 293816314 340998314 340998314 333712210 333712210 331487458 250681578 250681578 61081968 61081968 30461488 34128304 92274792 92274792 56100528 790711320 790711320 1016979864 1016979864 852880083 680761894 364755625 205511626 300569474 300569474 119983392 119983392 315687498 315687498 95452144 302320434 304087314 538447696 568978464 568978464 557164640 557164640 127281953 578921032 578921032 908365096 908365096 866031482 899083311 899083311 830885418 685462723 685462723 423882918 1019870049 1019870049 449415364 449415364 436595858 449060916 449060916 457836460 495858340 495858340 419642254 419642254 428140868 428140868 691163685 969636845 969636845 683046247 674493189 642463889 603979785 607126281 607126281 359171923 275436607 113248090 372558618 372558618 389414952 389414952 462224752 462224752 441586326 441586326 116909038 447293214 447293214 129545800 426577454 426577454 161186162 67508232 96482552 131268320 131268320 97175464 97175464 48423344 118061240 354552266 354552266 231959052 272456554 364505640 364505640 69834306 151395466 272883758 522474560 522474560 457493248 457493248 477870792 850086229 1040781614 1040781614 801064693 801064693 864850407 864850407 684527302 684527302 1000415836 1000415836 990978326 990978326 421920824 201394726 721682832 721682832 719587797 442894371 25434112 231213166 482919426 482919426 562581280 562581280 811862084 811862084 692062789 685775013 550620165 692127748 692127748 660814168 759962029 759962029 704920720 106433568 106433568 3150224 55053284 147062816 147062816 257405956 257405956 250771808 250771808 56961456 504706176 504706176 490420014 422649873 422649873 399366046 738362522 977982615 977982615 877572920 991843316 991843316 731912714 731912714 836079016 894436139 922763304 922763304 906511660 1043863310 1043863310 1040188811 577373340 556164033 698292257 698292257 259682409 582833200 586755225 760851753 760851753 649937336 698951013 856949303 1027702920 1027702920 799161692 963339942 963339942 1011954076 1011954076 854735555 854735555 427819110 934539886 934539886 870433857 870433857 597135969 563014064 564521313 564521313 543246560 39387136 39397008 42991936 42991936 5840208 37094928 46790352 46790352 37912576 9313792 2375680 2779136 3144960 137150465 137150465 154828324 296531491 547403137 972718626 972718626 557094016 537970561 323671351 686300516 686300516 434536968 922696476 1052505951 1052505951 701736010 1038870954 1038870954 945079077 945079077 944240775 862758207 864179550 864179550 688237601 934544868 934544868 806501944 725311080 1058753531 1058753531 719657405 789157896 789157896 578822160 578822160 193474641 134816772 206119940 436352156 444216230 444216230 402653190 371198176 690226345 690226345 656858580 656858580 596647219 941248008 941248008 748038366 844313235 844313235 343590429 302055584 323035314 323035314 68227184 93922920 312157896 312157896 42580210 27344944 72823621 451096520 451096520 305658642 445187856 445187856 468716980 468716980 158021062 58266806 50599584 286538848 382124128 382124128 130582328 130582328 87425120 81125744 81125744 37831552 9320896 277119297 844826755 854785555 854785555 908483467 908483467 538529546 538529546 1033901903 1033901903 904005547 652292628 652292628 538216581 996463193 996463193 485933911 1000743123 1000743123 100763786 58770624 361713008 361713008 336345800 336345800 83572680 211505324 211505324 857761396 857761396 860899552 860899552 848611923 32820192 655094976 666894585 666894585 574685184 130287864 130287864 610996409 631509907 755250429 825890595 825890595 578629521 578629521 874330760 874330760 656016440 1028727141 1028727141 597796219 38197725 33431520 33431520 404965864 496022604 1054180378 1054180378 630702665 1016519295 1016519295 564667986 691276581 796969519 1000341879 1000341879 534693907 238418498 505721738 505721738 896734754 944964772 944964772 855724081 604629194 604629194 420926986 805896194 805896194 819009666 819009666 644141400 644141400 719618132 947951706 947951706 417432316 694211793 694211793 680121089 566805729 754169129 754169129 677505344 741368200 741368200 813196576 813196576 426871520 139135488 139135488 18035232 618221568 618221568 98882408 98882408 94685544 50671648 109217289 856796024 872743472 1006731534 1006731534 683973620 683973620 552700774 948462236 948462236 894334723 894334723 405908809 375251590 375251590 191327808 813985034 981524421 981524421 442713076 466616530 472284164 472284164 333421020 132808840 219923088 238463804 238463804 115346872 84023092 150901404 239622848 239622848 228758120 228758120 106720160 106720160 101174856 76299280 67682816 2301952 369627904 369627904 107496600 107496600 266507360 266507360 249684068 241890608 241890608 164541392 233560316 233560316 213002472 437988896 437988896 902026316 902026316 649634684 934306575 934306575 843330451 562085888 405809729 400692358 25301088 864031176 975409356 1061314783 1061314783 918147108 890467671 883115197 799915508 799915508 348355296 532123030 533909930 575212452 642426035 642426035 779739934 787295898 787295898 908587931 908587931 864818244 864818244 720732919 720732919 1050664277 1050664277 998007332 998007332 1010572359 1010572359 861405344 861405344 1040600331 1040600331 439424020 425515575 425515575 787094752 787094752 684885701 183575953 494590319 726142512 726142512 676596357 589824912 979390050 979390050 318957809 22040728 72401544 72401544 102311448 102311448 557373736 605953545 854483030 854483030 862204305 1002740101 1002740101 553918496 952505503 952505503 642910282 306653470 1006842770 1006842770 411241152 135340672 677183622 677183622 173225605 688802848 760859013 760859013 95808360 95808360 83914688 97033128 97033128 40932592 864337427 864337427 884778986 1019532353 1019532353 895392995 892221729 863267076 915804170 1010939919 1010939919 500478725 931011236 931011236 563483866 696652376 789842493 789842493 756241720 1010304284 1048322508 1048322508 750070605 492710488 739313280 739313280 702294090 318819546 223103578 472373654 472373654 456548984 528088318 528088318 432859278 626525865 626525865 895030526 901347320 901347320 637050444 637050444 645306952 645306952 313346513 313075026 135500122 469460792 469460792 297457506 185345348 185345348 211040010 914197775 914197775 775654549 722535376 769917453 769917453 542528597 593497873 706417748 706417748 546382401 407441516 609478073 816435537 920830939 920830939 602030064 58527889 637776496 910683313 910683313 885255337 1421857 336592904 377750786 905654068 905654068 705765039 145888068 719263400 719263400 202254133 150994992 324207909 324207909 576866790 897972696 1025376786 1025376786 816355122 930226345 930226345 945482089 945482089 780045744 518521130 849618048 851517651 851517651 860000914 860000914 811480827 811480827 528498590 631031870 638323737 916732248 916732248 323606696 69082632 1013161606 1013161606 912288978 912288978 581774531 581774531 808721263 808721263 344141898 932585865 932585865 640716018 609903248 316901778 316901778 302515936 325059264 850932114 850932114 324609714 382272098 382272098 633550805 633550805 444146990 444146990 270833298 540509256 776694364 776694364 750794832 512295517 512295517 418472066 418472066 337735835 177361433 328384634 363406602 401069010 555688451 555688451 390995376 671924169 671924169 442531986 454633014 691016125 693403686 856181396 856181396 428880726 428880726 972729110 975250628 975250628 156669572 156669572 63159348 459180214 538974240 989912464 989912464 571085841 581571921 581571921 551584512 809566602 875044929 875044929 298668995 512982878 531817756 531817756 205538020 470823084 470823084 478372590 478372590 387255850 215759562 500638440 500638440 80816198 29248232 510202690 510202690 488806472 488806472 484610294 120603518 519178066 519178066 305398566 305398566 472488724 472488724 470096160 488900910 521472034 521472034 440829976 440829976 413307392 471099730 471099730 168237070 75802240 18374760 4579424 25202796 622330508 747308651 747308651 769654509 769654509 394387578 394387578 252620246 26980384 0 134479936 142870596 142870596 44040208 36250896 36250896 311506512 311506512 310587474 403713560 504703518 504703518 101196934 71567496 315942488 315942488 383369944 427141592 427141592 110634360 128517720 313011446 634663710 634663710 315742082 315742082 285392128 11855904 12746368 12746368 299008 399360 2287872 2287872 290517122 290517122 273081248 79741128 495763564 495763564 117657646 948074733 948074733 818273739 875712071 1011821577 1011821577 760546981 1057506856 1057506856 907666971 438167207 438167207 408479282 270288896 789504 310559760 310559760 277484610 34132048 34132048 505596218 505596218 305511616 415338776 415338776 503840926 510207390 510207390 415277528 577447693 577447693 603943356 776981545 776981545 684510405 187063616 187063616 751894552 1025576333 1025576333 654581782 472336838 472336838 834968224 834968224 655364110 978454295 978454295 674183221 1044448042 1044448042 675361707 675361707 650191065 1023579681 1023579681 1024104060 1024104060 780665949 661219229 753661419 753661419 653008528 653008528 365351316 365351316 330695039 1042695470 1042695470 160355473 575479198 575479198 546636034 330306816 323632498 376736154 376736154 376703810 376703810 363991872 363991872 309583570 309583570 377610330 377610330 364962234 436400531 545382595 545382595 1044964586 1044964586 939732999 407706753 170558428 504191152 504191152 311859524 652929985 652929985 241938189 198046856 648203088 756928303 1019006799 1066904883 1066904883 924769851 924769851 872207768 658129185 658129185 887671896 887671896 848740563 583160026 662852633 662852633 584006865 585530000 585530000 121720824 121720824 485242410 485242410 300905858 983850501 983850501 521741886 698712625 698712625 86398264 886089328 927589563 962095833 962095833 839610979 727722822 972907305 1005252908 1005252908 414589920 806564355 903230003 903230003 816992472 608887304 843426827 843426827 684271644 361881970 311797530 398690376 398690376 382461272 382461272 116617426 388573048 388573048 343919346 343919346 416548052 416548052 325458706 317724966 186128326 469522372 511756380 976226496 976226496 586429441 586815347 586815347 439097219 430706022 676749440 978508997 978508997 918819447 561976859 548980545 300569474 119983392 119983392 315687498 315687498 95452144 302320434 304087314 304345088 568978464 568978464 547666433 644369304 644369304 59583176 59583176 805470298 805470298 396660993 203165196 203165196 165298724 165365420 175042576 186568632 186568632 265238184 449415364 449415364 436595858 449060916 449060916 320782464 75497544 75497544 201590796 226789380 428140868 428140868 691163685 969636845 969636845 683046247 674493189 325587922 254452580 254452580 699945932 978453591 978453591 547362333 547362333 372558618 563740961 563740961 462224752 462224752 839513443 839513443 126072600 915771659 915771659 18164256 271288420 271288420 161186162 67508232 96482552 131318832 131318832 97175464 97175464 44747408 118061240 354552266 354552266 15935528 272456554 364505640 532291612 532291612 472985856 472985856 522474560 522474560 457493248 457493248 477870792 477870792 1040781614 1040781614 897155863 897155863 864850407 864850407 684527302 684527302 1000415836 1000415836 990978326 990978326 421920824 398596136 583139451 583139451 680043589 680043589 8462400 136029824 636580836 962143815 962143815 905512898 741736512 750132045 750132045 685775013 165943456 692127748 692127748 660814168 759962029 759962029 704920720 235215136 193014548 456590116 456590116 343623920 369193106 369193106 348461430 969471739 969471739 408105606 441463320 499588232 870646006 891163488 891163488 399366046 501794266 659445936 718278438 718278438 991843316 991843316 889604273 875987025 875987025 365089130 371392744 371392744 341877008 208711044 208711044 137921192 234438917 556164033 698292257 698292257 259682409 561197885 586755225 684199004 684199004 105636392 105636392 576716433 1027702920 1027702920 1020282781 615596362 528581020 528581020 757664974 757664974 817680130 817680130 953723010 953723010 826721475 338421768 8075136 40505984 41583808 43991952 43991952 39387136 49678096 49678096 11014352 43648080 43648080 46790352 46790352 37912576 9313792 5905024 2676736 5616512 137150465 137150465 154828324 296531491 547403137 972718626 972718626 718799280 694730789 323671351 686300516 686300516 434536968 922696476 1052505951 1052505951 701736010 1038870954 1038870954 945079077 945079077 944240775 671320194 387475458 198822936 446050308 998446554 998446554 806501944 801186045 1058753531 1058753531 719657405 789157896 789157896 663164945 734214393 734214393 679479917 873532109 873532109 823540577 823540577 425984046 631245197 631245197 216271212 469883152 505887006 505887006 604178714 841431315 841431315 844313235 844313235 343590429 433922240 461588470 461588470 992799763 992799763 359166584 551809440 551809440 443447284 909286859 993450627 993450627 483968718 754206973 754206973 535299582 812384520 812384520 890117419 890117419 822122905 453609929 382124128 308168016 87425120 87425120 81125744 81125744 37831552 144835723 751722270 844826755 854785555 854785555 908483467 908483467 538529546 538529546 1033901903 1033901903 904005547 1022863462 1022863462 268828946 974526493 974526493 428907125 1000743123 1000743123 161685956 144777540 286539424 286539424 64103736 83572680 83572680 111763664 111763664 834177824 988852502 988852502 860899552 848611923 407209025 408204286 408204286 574685184 734301808 734301808 669903033 606707312 264187368 1053304662 1053304662 721362641 271331360 271331360 874330760 874330760 863115443 863115443 851566803 851566803 474194334 1037417214 1037417214 836404249 836404249 573984015 573984015 508337729 2238466 271005954 271005954 691276581 796969519 1000341879 1000341879 534693907 238418498 1063542024 1063542024 542294779 944964772 944964772 855724081 604629194 604629194 420926986 805896194 805896194 243860678 717758592 717758592 270717190 136483072 499700350 499700350 417432316 417432316 218544196 218544196 201544192 202498572 202498572 118889016 741368200 741368200 699215209 699215209 698392997 810099203 810099203 289745058 618221568 618221568 589758608 589758608 633771281 862234176 862234176 856796024 856796024 1006731534 1006731534 702436444 702436444 552700774 496314857 550010900 894334723 894334723 706843442 697848004 375251590 766649394 813985034 981524421 981524421 826278051 826278051 824185984 472284164 333421020 215740736 26272492 5192832 5192832 73140992 73140992 150901404 200458692 200458692 136102368 136102368 92232810 395416490 395416490 307892562 209663882 209663882 279168128 304744220 304744220 443075454 462966976 462966976 174735596 241890608 241890608 125959896 182794620 241968168 241968168 437988896 437988896 582169425 582169425 334717649 328327794 428348481 943800335 943800335 239191872 239191872 141722988 956314412 975409356 1061314783 1061314783 918147108 890467671 883115197 525377992 525377992 325458354 105856152 105856152 941099059 941099059 539018512 539018512 385270622 802950520 802950520 1048317128 1048317128 864818244 571738464 568067891 1050664277 1050664277 998007332 1025837719 1025837719 1010572359 861405344 861405344 1040600331 1040600331 522191167 425515575 1053787790 1053787790 787094752 878276769 878276769 494590319 494590319 485206783 285279124 505088494 979390050 979390050 856950882 407902290 407902290 97932544 102311448 1024499529 1024499529 635990951 854483030 854483030 836766271 1002740101 1002740101 582485130 952505503 952505503 642910282 856032186 856032186 411241152 411241152 273907718 944360068 944360068 1058893065 1058893065 622296725 748156142 748156142 1011580770 1011580770 537326368 277569282 277569282 331949730 331949730 124369200 944513448 944513448 556537696 863267076 863267076 915804170 949400483 949400483 500478725 92942768 232268616 320784084 696652376 789842493 789842493 741344496 1010304284 1048322508 1048322508 750070605 492710488 739313280 739313280 702294090 454608438 387502294 381866202 445234806 456548984 528088318 528088318 432859278 626525865 626525865 688452785 901347320 901347320 637050444 637050444 707026181 707026181 419758389 558022385 558022385 469460792 503499114 503499114 172672036 288625976 872287072 914197775 914197775 722535376 722535376 702620133 434448487 302713122 302713122 706417748 706417748 546382401 407441516 609478073 816435537 920830939 920830939 293286592 395979307 567318745 814404675 814404675 71663259 102686232 336592904 377750786 923142722 923142722 669325643 688600291 688600291 196351710 740371093 740371093 886126406 1013322429 1013322429 828595744 506449069 438965526 612914636 843629715 843629715 1011012632 1011012632 539189277 518521130 687440372 687440372 303151708 860000914 860000914 1006533522 1006533522 330957989 377995328 508245150 508245150 463551184 175293252 170522432 477449714 593239882 719135763 744960119 744960119 296399640 754574647 754574647 430490666 668949569 668949569 99105466 70265248 42202896 323030145 845948723 846202737 850932114 850932114 324609714 382272098 382272098 335544330 35651866 2162688 2171136 11640832 540509256 540509256 209225168 209225168 512295517 512295517 418472066 418472066 337735835 177361433 328384634 363406602 386974266 555688451 555688451 390995376 671924169 671924169 240049308 227260540 857808928 857808928 840958227 185457172 52119687 561654948 561654948 719687779 719687779 512543838 534724350 534724350 936872177 936872177 569284048 107011385 0 0 551748480 551748480 809612042 985670409 985670409 655427331 512982878 531817756 531817756 475131956 470823084 470823084 478372590 478372590 387255850 318638682 253173718 286469280 514158052 514158052 29772104 77741816 116967384 475010446 475010446 113430744 519178066 519178066 471017216 471017216 447254616 447254616 421650810 421650810 329591154 276220220 268636160 268636160 413307392 471099730 473424508 473424508 362279690 403313670 403313670 273157256 689742272 689742272 677195649 677195649 546408357 150986368 150986368 29890356 62097844 965497114 984273234 984273234 915860039 953359963 953359963 699270184 904563043 904563043 625791083 554189994 3826818 671704069 677021824 677021824 672586245 252078432 252078432 1072457124 1072457124 530875551 392766906 617219288 634663710 634663710 315742082 315742082 285392128 11855904 12746368 296752000 296752000 292138658 292138658 288103426 288103426 341187722 341187722 79741128 495763564 554556545 554556545 948074733 948074733 931289465 931289465 1011821577 1011821577 910942634 1057506856 1057506856 907666971 929612842 1057489983 1057489983 789252158 520424852 868828209 868828209 828980354 828980354 380230478 380230478 278159656 244081984 170337872 262808640 262808640 21680224 253993276 253993276 577447693 577447693 603943356 776981545 776981545 684510405 141666288 141666288 751894552 1025576333 1025576333 654581782 472336838 472336838 883693120 1047927051 1047927051 978454295 978454295 252707388 1044448042 1044448042 610345353 409568548 303317980 1023579681 1023579681 1024104060 1024104060 905057259 661219229 753661419 753661419 653008528 653008528 365351316 1037848904 1037848904 876530411 645585681 243855866 243855866 546636034 546636034 330306816 323632498 376736154 376736154 333582304 379097554 379097554 363991872 144046450 329771588 377610330 377610330 364962234 436400531 545382595 545382595 218358053 516210910 819259539 819259539 742202958 714266727 704756513 714473796 714473796 476135372 476135372 32531008 83979008 88570312 88570312 342562472 342562472 277997250 393806240 557893121 658129185 658129185 875747026 875747026 848740563 547463498 662852633 662852633 584006865 585530000 585530000 5159840 208837324 485242410 485242410 300905858 983850501 983850501 521741886 698712625 717989219 952632519 952632519 805905411 849201296 849201296 839610979 727722822 972907305 1005252908 1005252908 414589920 439612182 874923280 906943515 906943515 480387934 480387934 282878958 361881970 361881970 209693208 209693208 186700760 393901302 393901302 120474172 388573048 388573048 343919346 343919346 522204460 522204460 530581056 530581056 314179986 469522372 511756380 976226496 976226496 586429441 586815347 586815347 455140912 454207787 676749440 978508997 978508997 918819447 647243394 906840329 906840329 371196186 285613114 271058178 57316720 57316720 25566592 301690720 552763522 552763522 537668672 547666433 644369304 644369304 59583176 59583176 805470298 876808483 876808483 926553915 926553915 595398224 776424683 776424683 361684074 652992105 652992105 469745036 202775052 362256622 362256622 358822408 393513906 393513906 324403660 417501970 420780814 420780814 382617414 382617414 359187882 706107460 706107460 579912273 377590304 377590304 254452580 699945932 978453591 978453591 653040008 601787112 255465248 563740961 563740961 321703216 419431716 839513443 839513443 168548800 915771659 915771659 459321658 363455850 278050600 59698384 60673232 60673232 131318832 131318832 84552704 81080520 33149824 108524824 108524824 46174680 227226732 227226732 218569740 532291612 600332925 600332925 785236354 834789473 834789473 943951897 943951897 880877643 744186315 743502997 351840965 897155863 897155863 248047086 677644334 677644334 569117478 521746446 521746446 513937758 464525331 306975162 398596136 583139451 583139451 680043589 680043589 78954760 285870598 900240076 962143815 1035001667 1035001667 741736512 750132045 750132045 220726819 815797091 815797091 674497217 776788149 776788149 723959821 257227649 740572998 754693062 754693062 456590116 343623920 369193106 369193106 348461430 969471739 969471739 408105606 441463320 499588232 870646006 891163488 891163488 17826336 152443428 839294832 839294832 772934149 772934149 889604273 889604273 875987025 875987025 100798488 371392744 371392744 341877008 235455516 134320012 201988788 201988788 165700620 223887604 235964172 235964172 561197885 561197885 632107273 632107273 619118209 619118209 543162753 779649743 1020282781 1020282781 446767446 506645016 506645016 1017483530 1017483530 817680130 817680130 953723010 953723010 826721475 562680096 548623041 577885616 577885616 16991089 11276160 11276160 49678096 49678096 37789696 43648080 43648080 21239840 275090306 354474240 357568170 357568170 353423530 353423530 358960288 358960288 2097408 3286016 674179752 759375021 759375021 718799280 694730789 64537621 37880448 37880448 357688752 357688752 256252092 256252092 184947244 174396710 987576982 987576982 710961495 301173574 387475458 387475458 198822936 446050308 998446554 998446554 801186045 801186045 151676000 25793572 25740384 115879304 663164945 663164945 946285182 946285182 817575747 873532109 873532109 823540577 823540577 577032180 631245197 631245197 1017645210 1017645210 745352589 745352589 604178714 841431315 841431315 536870913 671240268 671240268 433922240 461588470 461588470 992799763 992799763 359166584 551809440 551809440 443447284 909286859 993450627 993450627 542682681 754206973 754206973 846488643 846488643 918809945 1015934287 1015934287 822122905 453609929 308168016 334890336 334890336 296650848 90671944 14898048 14898048 144835723 751722270 751722270 888109748 967451951 967451951 163425747 310380840 333185722 1027673158 1027673158 759244820 1022863462 1022863462 268828946 268828946 716319120 716319120 426025555 997548853 997548853 624028415 809175298 809175298 397172274 869587464 874464587 874464587 344780609 834177824 988852502 1023305038 1023305038 812461443 407209025 408204286 408204286 416074822 734301808 734301808 669903033 606707312 149548176 1053304662 1053304662 908083339 815606056 815606056 1016193551 1016193551 863115443 863115443 851566803 851566803 489949998 1037417214 1037417214 1049433096 1049433096 981940311 573984015 667876835 832628737 832628737 671663109 766575887 857752143 857752143 595640433 214734277 143447364 1063542024 1063542024 553652275 690675856 690675856 692111413 1015796226 1015796226 345233566 496578270 578814033 578814033 776283159 776283159 959570727 959570727 961332342 961332342 362491558 467173632 532045130 532045130 494272514 494272514 474851872 118889016 200403548 200403548 699215209 699215209 698392997 810099203 810099203 289745058 289745058 107397258 589758608 589758608 633771281 862234176 862234176 436175079 633738265 999719103 999719103 702436444 901156677 903060502 989166349 989166349 506506577 706843442 706843442 697848004 235543578 766649394 766649394 876684225 876684225 826278051 826278051 824185984 256266772 215740736 215740736 205234944 202911088 201895244 143267536 143267536 112371172 105660520 105660520 112151544 112151544 99690860 395416490 395416490 738772429 738772429 209663882 552170176 552170176 600951489 666033553 666033553 733612853 733612853 707292280 707292280 106004872 106004872 241968168 241968168 108809948 402793653 582169425 582169425 449839830 535437736 535437736 1019854950 1019854950 414770799 261923236 261923236 956314412 956314412 736112652 532320358 427972478 428608160 884297098 884297098 835734876 325458354 362371886 362371886 941099059 941099059 345310463 539789417 1064324065 1064324065 802950520 1048317128 1048317128 499194671 154547494 24786145 287508771 900268362 900268362 1025837719 1025837719 523504444 295207104 236720696 653789126 653789126 522191167 408583583 1053787790 1053787790 604408238 878276769 878276769 792604758 421006287 779160626 779160626 598293530 726872148 856950882 856950882 407902290 407902290 97932544 100454376 1024499529 1024499529 635990951 637671124 637671124 604955997 713450474 713450474 582485130 340535112 727525900 727525900 856032186 856032186 704788512 402725019 807739398 944360068 944360068 1058893065 1058893065 622296725 748156142 748156142 1011580770 1011580770 537326368 277569282 582584872 664661625 664661625 86846568 944513448 944513448 556537696 556537696 344983889 784739272 784739272 784666724 784666724 917768656 917768656 614042034 926027683 926027683 647278678 647278678 664282697 664282697 550772865 546646593 999746694 999746694 269782068 454608438 454608438 398674158 403664596 403664596 202872632 266345148 266345148 198525676 189121540 965141732 965141732 815433296 815433296 562220516 957781283 957781283 707026181 436032785 558022385 558022385 423422196 503499114 503499114 369755152 288625976 872287072 872287072 610797702 987040320 987040320 256184703 180977824 244408188 244408188 118514384 177259092 507139100 507139100 266530954 71487996 118101584 118101584 871707352 871707352 567318745 843314915 843314915 609562249 928910363 928910363 554411065 923142722 923142722 817119691 817119691 688600291 1002453468 1002453468 740371093 886126406 1013322429 1013322429 879234745 879234745 659314362 892372869 892372869 843629715 1011012632 1011012632 834791251 696226043 306921744 241320584 174843292 607467520 607467520 1006533522 1006533522 330957989 377995328 508245150 508245150 463551184 773128296 773128296 477449714 940314727 940314727 744960119 744960119 865286379 865286379 754574647 430490666 668949569 668949569 99105466 70265248 295257186 323030145 845948723 846202737 846202737 927994043 927994043 786567645 989856823 989856823 704328630 500233830 500233830 276391570 580634892 612233097 612233097 606644352 280038680 280038680 3220544 8991232 8991232 536998240 562562145 562562145 55201857 37798032 160181284 160246884 614991555 614991555 412616155 943718423 943718423 857808928 840958227 862183605 862183605 561654948 561654948 719687779 719687779 512543838 534724350 617390802 936872177 1006632951 1006632951 335571779 335571779 928206866 928206866 551748480 809612042 985670409 985670409 655427331 528482908 244318334 475131956 475131956 284381210 170987854 447294108 447294108 318638682 318638682 253173718 286469280 514158052 514158052 178760504 178760504 135451140 135451140 176523328 212093780 225593164 225593164 471017216 471017216 447254616 447254616 421650810 421650810 433324492 433324492 348522956 417730636 417730636 377664262 473424508 473424508 362279690 403313670 403313670 273157256 689742272 689742272 677195649 677195649 546408357 3176481 208896 88670072 196448688 965497114 984273234 984273234 915860039 953359963 953359963 699270184 904563043 904563043 625791083 554189994 366514792 671704069 677021824 677021824 672586245 483245536 483245536 1072457124 1072457124 530875551 392766906 617219288 828576128 828576128 89182891 86314280 86314280 12008256 12008256 296752000 296752000 292138658 292138658 288103426 288103426 341187722 341187722 190854548 425643908 554556545 554556545 276913610 276913610 931289465 931289465 259668680 172700820 910942634 910942634 828510627 828510627 929612842 1057489983 1057489983 789252158 520424852 868828209 868828209 828980354 828980354 380230478 380230478 278159656 170337872 170337872 126892060 197133564 197133564 188761268 650204610 650204610 333271157 698272720 698272720 682314497 556018673 576006801 576006801 412131382 427941990 590565844 590565844 430180106 479586894 883693120 1047927051 1047927051 671745028 466096336 85983364 220299664 625149106 625149106 409568548 370787930 304515832 368235498 894716586 905057259 905057259 598104385 598104385 587202609 360894570 930369760 930369760 1037848904 1037848904 889305393 1024807242 1024807242 380678806 380678806 341131592 78766920 78766920 271545344 271545344 953289941 1016598983 1016598983 749732055 749732055 329771588 472442536 472442536 1002697075 1002697075 904059117 327290994 135266820 1067368718 1067368718 819259539 742202958 737845855 975009059 975009059 714473796 603876081 603876081 188772609 724514940 724514940 485041614 900210853 900210853 277997250 393806240 569790488 654726049 654726049 560122112 560122112 885986081 885986081 612624171 549532289 85580577 29101920 43951784 88645336 208837324 483197240 483197240 64531094 425781328 425781328 369366288 466009035 717989219 952632519 952632519 805905411 849201296 849201296 823168256 823168256 20221699 100141032 100141032 285918056 285918056 874923280 906943515 906943515 204471564 281272000 564328301 564328301 425906812 780979305 780979305 741433954 741433954 393901302 1042399586 1042399586 837702686 841973016 841973016 544003272 522204460 530581056 530581056 314179986 449185078 449185078 863502733 863502733 303687570 303687570 455140912 455140912 454207787 454207787 672432782 843225681 843225681 647243394 906840329 906840329 391064762 391064762 355212426 343833104 348457410 348457410 348920002 552763522 552763522 38872817 538980160 587268880 587268880 556868385 129394769 369100544 876808483 876808483 926553915 926553915 823008392 822207627 822207627 361684074 652992105 753688853 753688853 662933313 591163752 602384540 795286797 795286797 674230701 789787197 1007895138 1007895138 1067157061 1067157061 888011737 674264353 706107460 706107460 579912273 726111997 726111997 160491236 160491236 666421041 666421041 653040008 868270323 868270323 398760779 321703216 321703216 447650166 447650166 290026838 168548800 263280282 459321658 459321658 363455850 278050600 59698384 113664680 113664680 92279144 84552704 84552704 81080520 118098920 118098920 289224554 289224554 227226732 428024586 428024586 353055786 600332925 600332925 785236354 834789473 834789473 943951897 943951897 880877643 746850678 746850678 536101691 495191879 707127573 707127573 321151015 361244447 1011942917 1011942917 528224933 500903985 500903985 306975162 278925498 815878442 815878442 566752361 684490981 684490981 678431173 900240076 900240076 1035001667 1035001667 802238832 802238832 599131248 599131248 815797091 815797091 553525185 776788149 776788149 723959821 257227649 740572998 754693062 754693062 146801696 457835920 457835920 71485484 146936004 146936004 29419691 951532359 951532359 743595397 696279050 696279050 726014875 805898083 805898083 839294832 839294832 772934149 772934149 507510942 685165196 685165196 209109257 100798488 73523592 73523592 235455516 235455516 134320012 201988788 201988788 165700620 223887604 223887604 205652416 205652416 99693708 595707576 618211017 619118209 868270323 868270323 612627802 612627802 778340574 815841603 815841603 984695316 1017483530 1017483530 948039175 1033291435 1033291435 818442272 562680096 562680096 548623041 577885616 577885616 16991089 11148864 15086784 44123008 44123008 116890440 116890440 178626754 432119854 432119854 354474240 357568170 357568170 353423530 436480668 493296673 493296673 419601188 419601188 674179752 759375021 759375021 676668064 570475008 671499141 671499141 206508051 269426187 506438638 506438638 523584856 523584856 256981732 987576982 987576982 1051604846 1051604846 451807143 781535498 781535498 692796941 671173826 671173826 598422897 612855113 857310099 857310099 722604597 722604597 605748833 605748833 946285182 946285182 817575747 579218257 469003254 469003254 750187408 750187408 221461325 371771900 1017645210 1017645210 745352589 745352589 191366580 405341620 405341620 536870913 671240268 671240268 119165096 114820824 146944264 146944264 207166808 256933276 338090909 338090909 115213069 585464836 585464836 542682681 542682681 529621824 529621824 846488643 846488643 918809945 1015934287 1015934287 344243423 344243423 280928122 334890336 334890336 296650848 90671944 44965200 37096256 12672288 66917360 774779502 888109748 967451951 967451951 163425747 310380840 333185722 608787050 759244820 759244820 658770105 429922900 363244154 347097153 716319120 716319120 543451700 997548853 997548853 624028415 971908070 971908070 526496072 869587464 874464587 874464587 344780609 148185616 37182400 1023305038 1023305038 583059281 578051527 472702075 865020269 897417747 897417747 816350852 245077068 218304480 251276488 419530850 1008041032 1008041032 815606056 815606056 1016193551 1016193551 860996084 860996084 829625108 829625108 808712893 523430713 546472480 1049433096 1049433096 981940311 206157945 667876835 832628737 832628737 671663109 766575887 857752143 857752143 595640433 214734277 143447364 606390416 606390416 986202344 986202344 692652434 823693834 1015796226 1015796226 784333684 456347657 578814033 889463914 889463914 776283159 959570727 959570727 961332342 961332342 427429010 855412903 855412903 822658083 808621856 830708909 830708909 534552630 534552630 506467822 953724550 953724550 813453267 646735766 241985936 0 0 0 134778884 134778884 171970592 458104628 458104628 776340544 785259741 1016891329 1016891329 346955082 901156677 903060502 989166349 989166349 506506577 267880923 267880923 245798158 235543578 1040345096 1040345096 773513753 773513753 344493717 282666690 256688670 256266772 204946560 205234944 205234944 202911088 201895244 143267536 143267536 239702524 266495132 266495132 112151544 237868160 237868160 231339460 231339460 738772429 738772429 589874868 589874868 560514465 600951489 666033553 666033553 733612853 733612853 707292280 707292280 106004872 202909572 202909572 457457508 457457508 262556476 326292402 326292402 449839830 535437736 535437736 1019854950 1019854950 414770799 404300608 261923236 472758837 796375653 862942759 862942759 842039440 842039440 884297098 884297098 835734876 285110466 492354538 492354538 471861650 471861650 212978122 539789417 1064324065 1064324065 739246088 993270884 993270884 895358920 962279079 962279079 339945261 67117320 67117320 336483392 363598362 363598362 325355996 325355996 272367721 724043061 880283057 880283057 886244063 886244063 604408238 604408238 792604758 792604758 464087916 1028392000 1028392000 758126919 758126919 726872148 699533798 902956715 902956715 295571273 797141546 899723798 899723798 636918062 637671124 637671124 604955997 713450474 713450474 424748667 1048592657 1048592657 792599824 792599824 704788512 704788512 918614611 953204946 953204946 704692245 63614997 159520504 230883596 230883596 86582568 86582568 71361952 103032800 103032800 582584872 664661625 664661625 335921666 418147814 476581210 792467384 792467384 650447761 784739272 784739272 784666724 784666724 917768656 917768656 614042034 926027683 926027683 647278678 647278678 664282697 664282697 550772865 546646593 999746694 999746694 163818194 163818194 398674158 398674158 403664596 403664596 339223930 319316384 319316384 198525676 189121540 965141732 965141732 815433296 815433296 562220516 957781283 957781283 580672065 436032785 405305168 405305168 110167130 68822612 369755152 369755152 474763281 495503775 1036048622 1036048622 987040320 987040320 1012822170 1012822170 702349009 540017409 540017409 507101220 859850227 859850227 503555402 503555402 118101584 118101584 871707352 871707352 832177184 843314915 843314915 609562249 928910363 928910363 554411065 654877039 823414304 824445219 824445219 555747337 1002453468 1002453468 517059346 517059346 879104045 879104045 879234745 879234745 1040230832 1040230832 1027917999 693695127 954904617 954904617 834791251 696226043 241320584 241320584 206987672 795204244 795204244 1000341660 1000341660 332701538 1056841275 1056841275 1033945455 480805921 773128296 773128296 273025370 940314727 940314727 715982498 715982498 865286379 865286379 92287026 72877704 299997264 299997264 58386658 51139168 295257186 295257186 28951488 310319952 484573649 927994043 927994043 786567645 989856823 989856823 704328630 500233830 500233830 276391570 580634892 612233097 612233097 606644352 370148867 370148867 314573147 280626067 391780475 536998240 562562145 562562145 55201857 566004802 935144355 935144355 614991555 614991555 412616155 943718423 943718423 909682068 909682068 862183605 862183605 821230124 821230124 794517228 152569380 205596328 454371894 617390802 617390802 1006632951 1006632951 916817720 916817720 928206866 928206866 1019141967 1019141967 500731271 709887054 964689933 964689933 768737872 185598052 185598052 142636140 189718804 189718804 151166148 47129600 159254108 159254108 81618688 218343364 219824528 219824528 178760504 135451140 515740718 515740718 264185448 337379834 337379834 273158208 273158208 318455112 318455112 299321416 277873218 433324492 480432744 480432744 417730636 417730636 178277076 46828404 266899076 266899076 215485256 205954708 205954708 159656192 162556068 162556068 148931012 30199940 25370276 25370276 88670072 196448688 196448688 237188880 237188880 179357764 272800812 277446658 277446658 85751816 74602858 74602858 366514792 366514792 363731050 363731050 337532776 628797229 628797229 819387075 819387075 784122321 494799734 673786521 673786521 950320481 950320481 511512970 511512970 709741236 728372661 728372661 544736896 290461184 290067618 272151138 19240640 19240640 23407008 23407008 190854548 425643908 425643908 2657058 152293932 152293932 257845140 257845140 190717488 190717488 778885376 778885376 828510627 828510627 356827530 476053902 476053902 341909508 371466586 371466586 315674176 137630594 134570308 154229472 154229472 215251632 215251632 232668028 232668028 197133564 197133564 188761268 650204610 931971631 931971631 698272720 698272720 682314497 712094608 878356229 878356229 720479088 925569647 925569647 679493796 223666880 479586894 841762168 841762168 671745028 671745028 761397260 761397260 1006829733 1006829733 625149106 557056680 610535817 540202817 540202817 137380864 145802052 547789120 772801801 781238877 781238877 360894570 930369760 930369760 411488730 411488730 889305393 1024807242 1024807242 672426784 572522769 341131592 948442114 948442114 369870359 886008265 953289941 1016598983 1016598983 749732055 749732055 1002936384 1002936384 472442536 1002697075 1002697075 904059117 327290994 135266820 1067368718 1067368718 770481937 643849515 737845855 975009059 975009059 571350033 603876081 603876081 188772609 724514940 724514940 485041614 900210853 900210853 781210609 385295810 569790488 654726049 654726049 560501682 560122112 885986081 885986081 612624171 549532289 85580577 663101840 663101840 88645336 107433592 456058720 456058720 320396932 437413792 437413792 369366288 369366288 410907168 410907168 327410854 305157648 282192980 177049622 823168256 823168256 301301911 139494050 100141032 285918056 937258837 937258837 67728644 567570819 567570819 281272000 564328301 564328301 425906812 780979305 780979305 741433954 741433954 360366888 1042399586 1042399586 837702686 841973016 841973016 544003272 491634724 303375701 836577865 836577865 684851973 908066950 908066950 201589622 20971680 20971680 20971680 268773378 306723592 306723592 841356036 841356036 626139704 626139704 36218290 343324210 391064762 391064762 355212426 343833104 358945888 358945888 348920002 348920002 560638848 560638848 558105665 587268880 618717417 618717417 129394769 369100544 369100544 869708001 869708001 843289785 823008392 822207627 822207627 214483030 620842456 753688853 753688853 698600496 713686053 713686053 795286797 795286797 674230701 789787197 1007895138 1007895138 1067157061 1067157061 888011737 674264353 677703900 677703900 612900872 726111997 726111997 531774672 531774672 416297722 416297722 590769298 868270323 868270323 796923681 700088445 134414372 447650166 543702037 543702037 202083200 544287005 544287005 367168738 367168738 30911920 39131096 113664680 113664680 92279144 33065728 33065728 48027800 118098920 118098920 289224554 289224554 70728456 428024586 428024586 353055786 454628310 454628310 387189744 387189744 410381190 410381190 205779084 443314186 746850678 746850678 536101691 547946752 707127573 707127573 321151015 361244447 1011942917 1011942917 528224933 500903985 500903985 287506778 765655154 839012408 839012408 600306958 684490981 684490981 678431173 562058980 87060608 185561080 613091752 802238832 802238832 599131248 599131248 325662079 553525185 754979896 754979896 187565068 218236200 218236200 21129216 255863060 303119160 431296052 457835920 457835920 282074976 320215602 374156064 426428462 951532359 951532359 743595397 696279050 696279050 726014875 805898083 805898083 763151815 770258388 891310637 891310637 975735698 975735698 867339204 721459411 721764409 721764409 658106631 658106631 929390642 1061216915 1061216915 705732536 335667872 57807792 185848320 205652416 939737351 939737351 230955268 995697000 995697000 868270323 919087729 919087729 812782467 812782467 833841536 833841536 984695316 984695316 872497516 948039175 1033291435 1033291435 832643490 832643490 292716961 599476208 599476208 556800992 573965056 573965056 15086784 44123008 44123008 116890440 239565168 239565168 432119854 432119854 224807760 461671004 465848394 465848394 436480668 493296673 493296673 419601188 419601188 354879781 201735973 676668064 676668064 190702245 671499141 671499141 206508051 269426187 506438638 506438638 523584856 523584856 442183942 442183942 821501804 1051604846 1051604846 451807143 781535498 781535498 692796941 753407025 753407025 598422897 612855113 857310099 857310099 722604597 722604597 605748833 1058400256 1058400256 229164396 585182094 585182094 477438417 47643152 750187408 750187408 710185642 1057413183 1057413183 908529673 908529673 724303277 724303277 640153881 154417638 283503042 373253862 511815870 516022494 516022494 58819804 469871656 469871656 368133952 368948660 368948660 153094312 681951362 681951362 356248513 139474856 43543080 13633552 335569234 335569234 274727562 274727562 7524352 7524352 39064832 39064832 41555856 41555856 46130704 46130704 44965200 37096256 141241995 1013061423 1013061423 1064830911 1064830911 499743771 499743771 849954082 849954082 934926571 1011005069 1011005069 684851236 684851236 363244154 347097153 648296451 648296451 543451700 543451700 247491485 890556084 1044907167 1044907167 526496072 489386438 478359630 478359630 379699220 471498014 516356188 752121804 752121804 583059281 719381696 719381696 865020269 897417747 897417747 816350852 463940728 503585954 503585954 488766910 1008041032 1008041032 807353859 507802801 174709120 205697692 205697692 489953824 829625108 829625108 808712893 845269540 845269540 728895874 463697394 463697394 447292806 447292758 415970508 237708620 332414160 332414160 687674598 817839939 914752323 914752323 1025892721 1025892721 606390416 986202344 986202344 715182644 823693834 823693834 797907207 784333684 456347657 80817155 889463914 889463914 680860888 503712816 426907620 340112220 427429010 470539358 855412903 855412903 835658928 835658928 830708909 830708909 534552630 534552630 506467822 953724550 953724550 813453267 646735766 456410046 412387464 125298696 266861468 273320796 420293670 420293670 216397934 414835175 776340544 1053280826 1053280826 1016891329 767012625 767012625 480121790 644744352 656808249 656808249 518452051 588868542 789963323 789963323 1040345096 1040345096 773513753 773513753 344493717 343439310 343439310 331722546 331722546 152740128 195305876 381518848 466568374 466568374 359078372 239702524 266495132 266495132 244146572 244146572 237868160 71567496 71567496 163056080 189842100 589874868 589874868 560514465 560514465 189328561 190918052 190918052 60845024 94930408 94930408 35384336 202909572 202909572 457457508 457457508 262556476 154372318 73535880 111198552 400588962 625944650 738632201 747758157 747758157 574801268 703206885 944423301 968884455 968884455 862942759 842039440 842039440 330640176 330640176 405959226 405959226 492354538 492354538 407920836 880675015 880675015 538422681 383852870 573097233 902127851 993270884 993270884 895358920 962279079 962279079 719710677 719710677 320939399 1015124587 1015124587 363598362 325355996 325355996 272367721 818938771 880283057 880283057 983319570 983319570 881887136 218227008 228589932 464087916 627494126 1028392000 1028392000 905711338 903613976 903613976 699533798 902956715 902956715 295571273 797141546 899723798 899723798 1054884632 1054884632 943647060 943647060 880531287 1055840985 1055840985 1048592657 1048592657 792599824 792599824 521875746 220142624 918614611 953204946 953204946 814867846 678163845 678163845 409554947 232938126 483093058 492140290 492140290 196151682 373630210 667707896 667707896 366306371 582314752 582314752 654389496 792467384 792467384 650447761 320356195 592524108 689316108 689316108 88244256 498739456 498739456 418232198 96552134 72614432 581452800 814746624 814746624 651215577 651215577 893645952 893645952 84054152 140054656 140054656 17516298 272151378 339223930 339223930 319316384 319316384 134228178 970008597 970008597 847596209 847596209 673417440 545703332 564666432 564666432 757563657 757563657 674159877 311559180 430775610 430775610 489438058 489438058 474763281 510662774 1036048622 1036048622 471915887 1029714938 1029714938 1012822170 702349009 540017409 540017409 507101220 859850227 859850227 503555402 503555402 302702914 444731412 444731412 658709746 832177184 847719040 847719040 39271056 101287936 101575704 873014552 873014552 823414304 824445219 824445219 982722958 982722958 839010552 883202567 883202567 930462607 930462607 688074789 503726632 1040230832 1040230832 1027917999 324009138 940867626 940867626 926732445 1000908727 1000908727 938599259 306980557 795204244 795204244 1000341660 1000341660 342190339 1056841275 1056841275 1033945455 480805921 773929000 822333721 822333721 1040898633 1040898633 614601033 432420372 333262578 293610584 92287026 374099346 374099346 299997264 273331864 52624304 324361778 324361778 326067744 326067744 320978578 318642642 318642642 274597520 274597520 22152736 245470664 245470664 180930268 180930268 144704016 145106320 145106320 34482944 370148867 370148867 314573147 300045568 391780475 391780475 269009922 366795282 366795282 566004802 935144355 935144355 824706918 833356553 833356553 586187794 1025582598 1042310032 1042310032 1008997664 1008997664 821230124 872623430 1034957827 1034957827 797978219 797978219 454371894 387460108 907667748 907667748 916817720 916817720 647371353 351869110 1019141967 1019141967 500731271 709887054 964689933 964689933 768737872 444620894 444620894 28913808 189718804 189718804 151166148 47129600 159254108 159254108 81618688 218343364 219824528 243007936 243007936 28046272 515740718 515740718 264185448 337379834 337379834 273158208 273158208 121341240 299321416 299321416 277873218 350263470 480432744 480432744 155238564 190206144 194300532 194300532 265162400 265162400 93078164 205954708 205954708 268775213 268775213 493462958 493462958 794493639 939075707 939075707 220472951 9570944 688390934 688390934 1060648746 1060648746 987556800 987556800 351157242 81565632 69654792 286637760 286637760 14366400 219422308 257469817 564743823 628797229 951394362 974127639 974127639 784122321 647578736 721990932 721990932 950320481 950320481 511512970 511512970 709741236 728372661 728372661 544736896 269714368 269714368 331266034 331266034 34637240 87431976 87431976 69733536 69733536 540298147 540298147 408307338 476843406 476843406 454099997 759924360 773853365 778885376 778885376 310105746 420542370 504480262 504480262 504414750 409365080 371466586 371466586 248976070 134570308 134570308 154229472 154229472 215251632 215251632 232668028 232668028 173871920 13699336 45614928 162178084 931971631 931971631 706712734 706712734 699071089 712094608 903522149 903522149 720479088 925569647 925569647 723652917 880981471 880981471 841762168 841762168 570762258 570762258 761397260 761397260 1006829733 1006829733 543426945 557056680 610535817 540202817 572313105 716492369 716492369 708102933 772801801 781238877 781238877 131379348 337169506 337169506 411488730 411488730 657985483 929370631 929370631 895709356 940769720 940769720 948442114 948442114 369870359 886008265 886008265 781259848 781259848 118043181 631003570 1002936384 1063482030 1063482030 1057425474 1057425474 638157256 618866550 628887465 1004396868 1004396868 369628246 369628246 445252634 445252634 429990246 398404354 471657244 471657244 79947860 680489537 680489537 217216908 419186614 781210609 781210609 491418710 717288430 717288430 918210403 918210403 527363775 527363775 905157717 905157717 838669386 876149954 876149954 663101840 46306432 50753488 456058720 456058720 320396932 437413792 437413792 286216340 276957730 410907168 410907168 459367024 459367024 282192980 177049622 1045198968 1045198968 301301911 260621332 260621332 207670361 937258837 937258837 41804427 1012224009 1012224009 1034846022 1034846022 558626854 94417952 27386208 1045918200 1045918200 66560663 360366888 360366888 210587720 210587720 67402056 153261440 491634724 491634724 530318904 836577865 836577865 684851973 908066950 908066950 569216418 337922378 423962214 423962214 322011504 723521773 723521773 841356036 841356036 694227905 645462265 645462265 587570200 255107640 255107640 243062288 243062288 358945888 487433702 487433702 212479174 560638848 560638848 558105665 558105665 618717417 618717417 595610081 322122546 322122546 285352720 130654448 130654448 353368104 353368104 268521474 116429434 127026136 127026136 62189904 698600496 713686053 713686053 70479360 70180104 223425530 256305782 710347386 710347386 296050519 294318426 294318426 85313801 637807689 637807689 612900872 663108832 663108832 633475305 602304092 727991529 727991529 233761572 233761572 804651032 804651032 700088445 161508716 161508716 543702037 543702037 514554776 544287005 544287005 449722378 367168738 275042786 275042786 4642944 8442304 19726624 33065728 33065728 23992064 84221336 84221336 56897312 65607024 65607024 31671584 63813240 92090280 562375233 562375233 301041216 811376929 811376929 410381190 205779084 443314186 847497824 847497824 326547685 547946752 547946752 545858625 108717845 289543425 756684515 756684515 371138769 396438547 396438547 134617092 765655154 839012408 839012408 600306958 470556040 204262668 204262668 156628304 262218108 262218108 565318497 664120244 731266586 758976447 758976447 735884977 739821069 754979896 754979896 791465277 791465277 171309364 556101606 714421330 714421330 431296052 431296052 282074976 282074976 320215602 374156064 426428462 426428462 416640206 474582628 625770840 625770840 626698032 644084121 644084121 361183338 361183338 891310637 891310637 975735698 975735698 867339204 721459411 721764409 721764409 957631160 957631160 929390642 1061216915 1061216915 705732536 538918401 764356833 764356833 721750229 939737351 939737351 1030761256 1030761256 995697000 789916413 919087729 919087729 812782467 812782467 833841536 833841536 966910311 966910311 894134174 924704587 924704587 547406145 832643490 832643490 292716961 599476208 599476208 556800992 573965056 573965056 138833044 141882276 153141540 153141540 631378673 631378673 878723598 878723598 224807760 461671004 465848394 818491296 818491296 910953627 988707532 988707532 364062048 364062048 128528808 113874944 113874944 44632064 44632064 7114248 67945472 67945472 140078992 279126928 416092352 416092352 442183942 442183942 821501804 1036134150 1036134150 340394181 152570960 231735328 231735328 753407025 753407025 267059304 545436769 545436769 176804608 118501928 759362896 759362896 1058400256 1058400256 1018549931 585182094 585182094 477438417 462226806 1008483666 1008483666 903460617 1057413183 1057413183 908529673 908529673 724303277 724303277 640153881 154417638 283503042 373253862 511815870 516022494 516022494 58819804 469871656 469871656 368133952 368948660 368948660 857557019 857557019 681951362 356248513 506062110 506062110 445242686 383029546 383029546 274727562 844765163 1064326535 1064326535 338557130 338557130 96017082 384394072 384394072 317143506 317143506 38048322 141241995 1041495214 1041495214 1064830911 1064830911 499743771 499743771 849954082 849954082 934926571 1011005069 1011005069 684851236 684851236 372312352 1007738880 1007738880 418674986 907021532 907021532 971126626 971126626 1044907167 1044907167 489386438 489386438 478359630 478359630 379699220 471946254 516356188 752121804 752121804 407560721 719381696 719381696 458497960 458497960 89810606 80296936 463940728 503585954 503585954 488766910 335577909 657991543 657991543 580560761 547456257 547456257 622004102 622004102 969263184 1045784845 1045784845 980853296 845269540 728895874 1021086283 1021086283 530502903 457363638 415970508 237708620 673727157 680137797 975044822 975044822 914752323 914752323 1025892721 1025892721 598097810 1042362842 1042362842 715182644 583041600 583041600 320602654 441189402 553915604 553915604 165416676 165416676 161880760 426907620 426907620 279970626 173094556 470539358 470539358 209995676 882616242 882616242 471122728 471122728 424027058 486803502 486803502 926331770 926331770 513897265 456410046 456410046 412387464 445346858 445346858 444255616 444255616 420293670 240781040 414835175 414835175 1053280826 1053280826 944075003 916167797 767012625 582912435 691506814 691506814 862867579 862867579 588868542 789963323 789963323 1039752652 1039752652 674745426 674745426 473981768 473981768 454649430 454649430 331722546 169871856 195305876 381518848 466568374 466568374 359078372 114311632 176828768 207006556 244146572 244146572 36231316 407557254 407557254 697910097 697910097 1003134130 1003134130 813768720 813768720 581167125 684144965 684144965 682961733 684723968 684723968 73244232 73244232 34991328 310515092 310515092 57208304 194435700 194435700 156625696 910652288 910652288 738632201 749717316 749717316 981905874 981905874 944423301 968884455 968884455 436371665 861840300 960275471 960275471 121845899 405959226 405959226 338686646 0 413476864 880675015 880675015 538422681 350886962 573097233 902127851 902127851 845449132 845449132 758276398 758276398 744169496 719710677 664008384 1015124587 1032833307 1032833307 926150311 745419578 418978702 818938771 818938771 1044906716 1044906716 983319570 902639402 813008617 354698634 675520742 675520742 627494126 976173087 976173087 903613976 903613976 829212842 829212842 673582629 83760089 539515520 575194257 575194257 1054884632 1054884632 943647060 987897048 1047171996 1055840985 1055840985 753540624 382387520 377578607 521875746 521875746 128685362 546640704 773031812 814867846 814867846 678163845 678163845 409554947 232938126 483093058 492140290 492140290 196151682 373630210 667707896 667707896 366306371 652322944 794894445 794894445 654389496 616629121 616629121 142818296 592524108 689316108 689316108 434277000 508695080 508695080 301634482 301634482 121701642 872627632 872627632 850032738 663782913 663782913 893645952 1007280870 1007280870 911357076 176272084 202461288 202461288 512 1049088 255337452 255337452 175122628 970008597 970008597 847596209 847596209 734021969 159598752 564666432 564666432 757563657 757563657 674159877 284900592 430775610 430775610 489438058 489438058 153620278 510662774 510662774 324797794 333447666 1029714938 1029714938 714289749 499224600 465826038 431486834 257508372 257508372 488253932 488253932 449365206 302702914 444731412 444731412 658709746 658709746 851902115 851902115 96902129 880793770 880793770 873014552 873014552 874971163 874971163 1059326482 1059326482 982722958 839010552 883202567 883202567 930462607 930462607 565864308 565864308 229204656 891428576 891428576 688864293 940867626 940867626 926732445 1000908727 1000908727 938599259 541206885 752093768 752093768 621021225 371458489 342190339 940071484 1041138996 1041138996 503341703 773929000 822333721 822333721 1048772852 1048772852 966893603 763442209 690276725 690276725 363137569 548179017 885611763 885611763 906383131 908495234 908495234 607392704 908543529 908543529 650968283 1010402063 1010402063 775186118 274597520 12190160 248018008 248018008 147371072 147371072 9127108 49829184 49829184 75556674 385705290 385705290 331368378 353927416 381209554 662312168 662312168 599542457 366795282 301122756 644761923 824706918 824706918 833356553 833356553 586187794 1025582598 1042310032 1042310032 1008997664 1008997664 810273963 872623430 1034957827 1034957827 797978219 1037000286 1037000286 754848422 264560258 260968524 69473336 69473336 107228107 134285780 810949251 810949251 898634960 898634960 797443197 631050257 765067982 765067982 633352850 198390852 198390852 148451936 29435472 35751296 56710480 56710480 206578664 206578664 66593256 243007936 243007936 122583940 176123028 244004952 244004952 237222484 237222484 193924708 144447328 121341240 165065676 165065676 97475008 236484636 236484636 166600164 162830160 190206144 194300532 194300532 193856752 193856752 112771712 112771712 145451080 268775213 268775213 493462958 493462958 794493639 939075707 939075707 737325860 628347577 688390934 688390934 1060648746 1060648746 987556800 987556800 918574359 1021992380 1021992380 625327154 580011089 580011089 1012810452 1012810452 961489596 564743823 951394362 974127639 974127639 647578736 647578736 721990932 721990932 376613832 346144304 713667008 823215457 823215457 484651303 481345998 351202708 269714368 269714368 331266034 331266034 34637240 87431976 87431976 117316592 285775384 540298147 593692836 593692836 666507429 791959860 791959860 759924360 773853365 773853365 642065048 310105746 420542370 572852489 931137833 931137833 553648226 80943752 112466064 112466064 2888016 23120864 52461728 54921952 64098432 64098432 38745488 38745488 5017728 39862416 39862416 162178084 734413743 734413743 706712734 706712734 699071089 699071089 903522149 903522149 563811652 904405695 904405695 723652917 880981471 880981471 840682368 822347691 811710649 570762258 603984936 738596877 738596877 609551134 979708311 979708311 849407522 50221505 572313105 716492369 716492369 954305024 954305024 450226902 455285056 455285056 272656690 272814210 314782970 314782970 329326962 929370631 929370631 895709356 940769720 940769720 675661957 675661957 190750261 486748173 486748173 781259848 781259848 136524046 631003570 631003570 1063482030 1063482030 1057425474 1057425474 638157256 740651529 740651529 1004396868 1004396868 759855078 919437935 919437935 952355677 952355677 687425971 763694142 763694142 403404492 739694740 739694740 642777753 637934209 712189967 712189967 563102513 717288430 717288430 918210403 918210403 527363775 998508643 998508643 992224663 992224663 876149954 876149954 277897248 30020256 30020256 17566848 143562772 143562772 63183568 152356612 152356612 158339236 581175633 581175633 551458961 459367024 375497751 767742189 1045198968 1045198968 1008129613 486738060 448248006 168346748 173064852 572026496 688246245 1012224009 1012224009 1034846022 1034846022 890370913 295656706 825652951 1045918200 1059128127 1059128127 503525512 1015495168 1015495168 943928322 943202180 943202180 547723484 370163724 530318904 530318904 524103486 503908898 811624454 811624454 569216418 337922378 569950597 569950597 322011504 723521773 723521773 717562732 717562732 694227905 772942869 772942869 736111165 255107640 255107640 243062288 880896329 880896329 487433702 792488869 792488869 318916098 318916098 554966144 554966144 546628385 595610081 595610081 328604258 328604258 320282752 130654448 130654448 353368104 353368104 268521474 116429434 216534121 761400201 761400201 765089121 784996980 784996980 720573137 578239377 223425530 932197028 932197028 868559172 1040137357 1040137357 901624676 226607228 15814784 10627536 377625818 914499824 914499824 633475305 602304092 727991529 727991529 233761572 233761572 804651032 804651032 242229444 242229444 161508716 76145736 76145736 514554776 514554776 449722378 449722378 91626408 275042786 275042786 129066704 133759360 133759360 19726624 23992064 23992064 84221336 84221336 56897312 65607024 65607024 31671584 270296106 270296106 612476442 932047995 932047995 890225747 811376929 318379986 342410634 667641234 847497824 847497824 753927117 753927117 753926144 4325376 107091584 108664728 108664728 5902744 4329600 373764160 830480435 842170397 842170397 743772778 833543372 833543372 747071749 77973925 639541112 639541112 649564064 649564064 565318497 565318497 731266586 758976447 758976447 735884977 842191635 842191635 672451854 791465277 877974291 877974291 572915612 714421330 714421330 201198020 302912512 304087314 470684966 470684966 397292434 397292434 1031668349 1031668349 566258277 474582628 994990490 1008145673 1008145673 644084121 575927073 780167656 780167656 510673238 969181444 969181444 996317696 996317696 680936099 179704145 957631160 957631160 234413435 229038444 229038444 96815812 538918401 764356833 764356833 721750229 721750229 663037996 1030761256 1030761256 274905275 789916413 789916413 590081440 71664520 292597568 693743236 693743236 540880835 894134174 894134174 924704587 924704587 547406145 248336701 105066984 105066984 157751472 157751472 42603600 145361920 145361920 138833044 141882276 153141540 153141540 631378673 631378673 878723598 878723598 153405732 538248216 639446553 818491296 818491296 910953627 988707532 988707532 889393313 618014882 128528808 173811040 200616948 200616948 27126788 36718864 108494722 108494722 140078992 419056640 419056640 416092352 79834246 403647690 403647690 1036134150 1036134150 340394181 152570960 152570960 101192372 80876232 201617612 201617612 83073876 176804608 176804608 118501928 759362896 836924797 889473179 1018549931 1018549931 734072913 680571999 534537306 736506369 1008483666 1008483666 903460617 752165610 1037966094 1037966094 550712001 944210336 944210336 462559398 990952786 990952786 831569923 831569923 453001320 243499120 243499120 787023495 787023495 475107770 977851595 977851595 857557019 857557019 313292864 650600985 650600985 506062110 445242686 598822969 598822969 242241046 844765163 1064326535 1064326535 338557130 338557130 96017082 384394072 384394072 317143506 317143506 279760000 13122192 1041495214 1041495214 226887230 794558558 794558558 555139171 577975185 577975185 599324897 875672946 875672946 570690308 570690308 372312352 1007738880 1007738880 326173394 907021532 907021532 971126626 971126626 1052634975 1052634975 968235879 968235879 816790851 816790851 719946780 719946780 539871176 470458638 406033410 284828996 672957508 672957508 542242057 1048021913 1048021913 1011495052 636590991 636590991 356903082 1019022673 1019022673 833529764 727645947 709885077 709885077 695432277 695432277 1062464987 1062464987 1045784845 1045784845 980853296 439362432 586756058 1045302816 1045302816 530502903 457363638 365051996 264689916 673727157 680137797 975044822 975044822 819539051 819539051 809774622 784606440 598097810 1042362842 1060377197 1060377197 749998023 320602654 320602654 441189402 553915604 553915604 165416676 165416676 435233766 454555604 454555604 279970626 376013864 376013864 844270615 844270615 882616242 882616242 634748565 634748565 424027058 486803502 486803502 438497320 855478086 855478086 667104034 110964312 357283632 445346858 445346858 444255616 444255616 131487768 240781040 240781040 227070024 151655460 105566284 916167797 1024524904 1024524904 582912435 691506814 691506814 862867579 862867579 273885640 450312918 450312918 1039752652 1039752652 674745426 674745426 851320897 976486212 976486212 554620944 816959601 816959601 184525072 1066399920 1066399920 908499712 143628732 143628732 132388288 132388288 64542208 64542208 43965408 407557254 407557254 697910097 697910097 1003134130 1003134130 956387398 956387398 881246598 881246598 684144965 682961733 684723968 684723968 73244232 73244232 27467872 310515092 310515092 57208304 194435700 194435700 156625696 910652288 910652288 612466731 749717316 749717316 981905874 981905874 901661159 901661159 284162630 284162630 978753669 978753669 960275471 388990256 388990256 336066570 337955082 415096332 415096332 413476864 355085130 355085130 420230432 420230432 201868684 201868684 845449132 845449132 812758544 812758544 744169496 664008384 664008384 636814666 1032833307 1032833307 926150311 745419578 418978702 224994790 655495737 1044906716 1044906716 909126970 944359619 944359619 354698634 675520742 675520742 555880737 976173087 976173087 851818809 665643479 829212842 829212842 142887375 0 570949632 570950673 570950673 681365061 1013003605 1013003605 987897048 1047171996 1047171996 949361223 753540624 405079972 195609972 195434868 195434868 1041399827 1041399827 773031812 773031812 638750949 627114752 1048703299 1048703299 1024135424 1024135424 705725920 705725920 537140144 188121728 61343088 117696888 117696888 652322944 794894445 794894445 606200073 186951741 138750084 740502132 740502132 233200088 233200088 434277000 508695080 508695080 301634482 855802135 855802135 872627632 872627632 850032738 912823548 912823548 859906658 1007280870 1017374736 1017374736 524714382 202461288 497583074 497583074 471575854 472401484 472401484 175122628 478359630 637790240 956704887 956704887 734021969 159598752 989406310 989406310 213560489 213560489 752434701 752434701 390144186 390144186 273427512 131336952 201013360 286000640 286525986 324797794 333447666 333447666 283115970 499224600 499224600 465826038 127881974 518583608 518583608 488253932 488253932 449365206 97424430 500498466 500498466 922772507 922772507 851902115 851902115 695621820 880793770 880793770 803798553 588800380 874971163 874971163 1059326482 1059326482 606245678 768688558 1004626671 1004626671 582156923 554519376 565864308 565864308 672001029 672001029 676923540 723068065 723068065 164226276 164488356 687107936 687107936 541206885 660775112 752093768 752093768 621021225 371458489 174211094 940071484 1041138996 1041138996 503341703 503341703 77717832 384030472 1048772852 1048772852 966893603 763442209 721589774 690276725 574540549 548179017 885611763 885611763 906383131 908495234 908495234 607392704 908543529 908543529 650968283 1010402063 1010402063 775186118 549116628 577280068 577280068 248018008 138621060 181251264 181251264 179955540 168684112 298647904 805636880 805636880 823747009 825340691 825340691 662312168 662312168 599542457 312792256 323138850 644761923 644761923 554340664 287125026 928456248 928456248 64362187 33570832 5328912 39006864 39006864 135541388 135541388 203086352 311217766 552171872 1037000286 1037000286 754848422 853736131 853736131 979975561 979975561 1053505480 1053505480 810949251 810949251 898634960 898634960 797443197 631050257 765067982 765067982 633352850 198390852 315363912 315363912 239996620 370967824 423487568 423487568 451154774 451154774 427009488 224092936 224092936 122583940 176123028 244004952 244004952 237222484 237222484 91752360 92561664 92561664 28487008 24710752 24710752 475293186 475293186 352371780 295716198 262161014 211845388 202915976 202915976 529930428 529930428 513986964 513986964 235552896 83495552 83495552 149369732 993999136 993999136 737325860 737325860 628347577 238382392 238382392 707597840 707597840 418272020 951613104 951613104 1021992380 1021992380 625327154 580011089 580011089 1012810452 1012810452 961489596 188796404 188796404 92934776 200317252 200317252 135315972 201817428 376613832 376613832 346144304 713667008 823215457 823215457 484651303 481345998 351202708 181274976 293208866 293208866 320872754 320872754 0 198302346 304226578 953419054 953419054 593692836 888986118 888986118 791959860 791959860 632576605 73630505 642065048 642065048 124984203 119875954 572852489 931137833 931137833 553648226 27527520 27527520 329515320 388055128 388055128 304390736 304390736 272972496 64098432 38745488 52244016 118500360 118500360 41669056 701213044 701213044 828507432 828507432 144020160 144020160 35725584 16368848 141242368 694740608 694740608 424698000 706215984 1025515029 1025515029 840682368 1042286592 1042286592 491520287 603984936 603984936 239280140 609551134 979708311 979708311 849407522 1048184888 1048184888 964566951 827726499 954305024 954305024 771895321 771895321 656871449 16857373 885024938 885024938 314782970 435295206 435295206 640875290 640875290 827937852 827937852 675661957 675661957 246770493 653098479 1020445375 1020445375 486601149 571634197 631341277 800142033 800142033 731330960 755102180 755102180 1021232515 1021232515 740651529 347789130 275401364 759855078 919437935 919437935 952355677 952355677 687425971 763694142 763694142 403404492 1004286601 1004286601 867628329 867628329 712189967 879305735 879305735 256456298 551755792 663884409 663884409 978063843 998508643 998508643 992224663 992224663 564136224 564136224 133336224 30020256 30020256 55317120 55317120 27057216 27057216 15342768 45631232 45631232 581175633 581175633 551458961 375497751 375497751 767742189 767742189 1008129613 1008129613 512086347 448248006 938215401 938215401 572026496 688246245 688246245 411041862 411041862 890370913 890370913 527481404 825652951 1020299688 1059128127 1059128127 627123629 1015495168 1015495168 943928322 943202180 943202180 547723484 419113580 448001111 1015016707 1015016707 485313155 946973635 946973635 277137766 67633290 569950597 569950597 152762308 591479533 591479533 717562732 717562732 678429573 772942869 772942869 736111165 793881477 793881477 560549021 880896329 880896329 100104970 792488869 792488869 327562886 327562886 555481440 562451008 562451008 590033025 590033025 328604258 822558928 851830995 851830995 870001632 870001632 918948371 918948371 297816152 877676529 877676529 761400201 765089121 784996980 784996980 720573137 578239377 98024328 932197028 932197028 868559172 1040137357 1040137357 901624676 551778068 610745577 610745577 590273841 914499824 914499824 651038944 676472288 676472288 693170368 693170368 681945477 576015380 247343008 286248390 499460602 504571946 504571946 273829778 378513472 378513472 135234318 84546600 91626408 91626408 197206260 197206260 149335472 133759360 36836112 60441392 60441392 131931888 131931888 123280488 29658120 29569248 5340736 270296106 270296106 612476442 932047995 932047995 890225747 701505584 823757318 823757318 688778277 667641234 714134905 753927117 753927117 753926144 579262545 620239109 623218865 749538833 749538833 295963416 548280562 839648280 842170397 842170397 743772778 833543372 833543372 747071749 682758432 682758432 639541112 649564064 700920780 700920780 624167721 246145452 63575280 22545008 686992535 842191635 842191635 672451854 169179152 877974291 877974291 572915612 625429792 625429792 439104306 439104306 304087314 503451190 503451190 397292434 397292434 1031668349 1031668349 566258277 231853605 994990490 1008145673 1008145673 592519857 575927073 780167656 780167656 774248526 774248526 575396426 996317696 996317696 681605937 179704145 95734632 653749719 653749719 1008680463 1008680463 917112209 917112209 125831512 125831512 616101156 616101156 606948394 606948394 873459362 873459362 426134945 590081440 590081440 821035971 821035971 821035971 274964833 512405626 774316906 774316906 666694268 447150448 447150448 199231568 571351200 579701217 725664145 725664145 713443713 570560529 541477008 146465376 146465376 17827588 660173164 660173164 788699996 788699996 268697856 270797058 538248216 639446553 639446553 900862499 900862499 825399073 889393313 889393313 618014882 38871424 173811040 200616948 200616948 27126788 40611456 108494722 325194930 325194930 419056640 419056640 251833362 255659404 940518603 940518603 279056706 981899725 981899725 496484968 491808670 448315252 732504641 732504641 130948344 625910801 625910801 102025752 102025752 158917242 836924797 836924797 462299506 734072913 734072913 680571999 534537306 736506369 736506369 669385904 808128772 808128772 1037966094 1037966094 550712001 1011352521 1011352521 462559398 990952786 990952786 831569923 831569923 453001320 285854032 285854032 787023495 787023495 475107770 977851595 977851595 607083297 607083297 86600104 650600985 650600985 84474640 76502016 598822969 598822969 117224904 563534617 563534617 10523648 10523648 10221120 281127120 302303250 302303250 112723800 279760000 279760000 277574192 277574192 270059010 286801952 794558558 794558558 572706962 811598211 811598211 280606897 774115908 1045838528 1045838528 570690308 178283444 178283444 597877204 918786769 918786769 752878029 752878029 973884764 1052634975 1052634975 968235879 968235879 816790851 816790851 719946780 719946780 539871176 406033410 406033410 611197068 672957508 672957508 689169837 1048021913 1048021913 1011495052 864437306 864437306 356903082 1019022673 1019022673 833529764 727645947 709885077 709885077 695432277 695432277 1062464987 1062464987 907621334 739623642 1062265385 1062265385 302105476 1045302816 1045302816 639803664 604237833 303615015 529954447 529954447 336135885 679413495 679413495 819539051 819539051 809774622 792145723 868291614 868291614 1060377197 1060377197 749998023 385876644 265545801 873943480 873943480 783629256 783629256 707203354 707203354 646441033 909234364 962798215 962798215 908915231 908915231 844270615 887753538 887753538 767570349 1038306300 1038306300 303197590 386524734 438497320 855478086 855478086 667104034 187371876 312139824 435880896 435880896 15742950 82185216 82185216 76574304 227070024 227070024 965411414 965411414 1023943313 1024524904 1024524904 639127081 285779504 400446234 936275960 936275960 808710915 450312918 450312918 741743373 741743373 384084551 981773273 981773273 976486212 976486212 554620944 816959601 816959601 570069206 1066399920 1066399920 908499712 378261716 378261716 132388288 132388288 64542208 80094592 80094592 50645040 132143280 132143280 81795896 74713992 27283648 956387398 956387398 881246598 881246598 442552783 489272048 489272048 423562790 513698702 513698702 454946358 385131240 385131240 89142052 822605859 822605859 589422897 889798720 889798720 612466731 604505097 578323587 583395537 583395537 901661159 901661159 729100974 754400205 978753669 978753669 1000945246 1000945246 870909724 336066570 337955082 415096332 415096332 202590796 138658336 153540900 420230432 420230432 296576966 552806436 552806436 539660461 812758544 885444651 885444651 649650560 649650560 750782465 750782465 696717921 466833020 466833020 236562022 131741745 655495737 655495737 909126970 909126970 944359619 944359619 217345999 830787040 887374071 887374071 169962683 499881218 499881218 180884638 1036470372 1036470372 990177403 752934135 748955077 1045235050 1045235050 743625357 1013003605 1013003605 951328000 951328000 211010306 676697365 676697365 405079972 195609972 195434868 848465990 1041399827 1041399827 508174750 638750949 638750949 627114752 1048703299 1048703299 1024135424 1024135424 705725920 705725920 537140144 358757200 350902224 914206225 914206225 351500576 351500576 308545912 605206788 733154101 733154101 740502132 740502132 739522692 739522692 151001320 260241704 260241704 237314373 855802135 855802135 715338069 764097645 764097645 912823548 912823548 859906658 998921749 1017374736 1017374736 524714382 458391732 497583074 497583074 471575854 472401484 472401484 159453226 478359630 637790240 956704887 956704887 142921827 59005168 989406310 989406310 562425937 213560489 752434701 752434701 390144186 390144186 273427512 210708912 201013360 706982090 860096691 860096691 339090186 1015444402 1015444402 1002696951 357856714 357856714 195614126 518583608 518583608 508967586 508967586 524454582 524454582 520420444 500498466 922772507 922772507 370140340 598323056 695621820 787905417 787905417 248535615 548727418 614730062 614730062 254072592 78568776 538969873 768688558 1004626671 1004626671 582156923 554519376 554519376 543002260 672001029 672001029 676923540 723068065 723068065 290791947 903349370 903349370 882649050 360525738 660775112 660775112 557996593 354442192 354442192 41202200 973209606 973209606 948378278 731362628 731362628 647135833 683492953 875448342 875448342 673455452 721589774 721589774 574540549 574540549 926848826 926848826 389701435 339723186 325194162 145912804 165087552 165087552 517261006 517261006 883156500 883156500 583942355 549116628 577280068 577280068 59793496 128022776 181251264 181251264 179955540 168684112 301801952 805636880 805636880 823747009 825340691 936429392 936429392 636082016 636082016 616562889 323138850 378220674 378220674 859365667 859365667 928456248 928456248 64362187 902301379 902301379 37203024 840819968 844297879 1041389127 1041389127 983302152 552171872 943833142 943833142 707781050 1030706314 1030706314 979975561 979975561 1053505480 1053505480 445323782 634540124 634540124 243438313 237469814 737552780 737552780 317133846 326578688 449514354 449514354 315363912 239996620 370967824 423487568 423487568 451154774 451154774 427009488 52429104 17244384 29440032 135190224 156687012 156687012 31031168 31031168 30544608 30544608 64071696 179304808 251278300 503988300 503988300 475293186 352371780 295716198 262161014 211845388 202915976 202915976 529930428 529930428 513986964 513986964 327685725 327685725 270087434 270087434 993999136 993999136 858388168 722374752 585895381 538925062 538925062 537188356 672763911 747799184 951613104 951613104 1030128641 1030128641 101205367 281449508 415635654 415635654 134224066 889327659 889327659 1019688146 1019688146 200317252 972107758 972107758 947912775 670701718 651441715 651441715 611393544 916370321 916370321 551076419 592074050 592074050 321389714 293208866 293208866 320872754 320872754 81477368 198302346 304226578 953419054 953419054 884077665 888986118 888986118 787930077 787930077 85960181 34916880 41959472 41959472 339514626 589316386 589316386 337936496 125845824 125845824 27527520 73665088 329515320 388055128 388055128 304390736 304390736 272972496 145521464 265621840 265621840 118500360 131450328 131450328 701213044 701213044 828507432 828507432 144020160 144020160 35725584 16368848 141242368 694740608 694740608 860381344 860381344 1025515029 1025515029 262431 1042286592 1042286592 491520287 419954696 419954696 239280140 239280140 189338932 883154544 883154544 1048184888 1048184888 964566951 827726499 827726499 762810620 771895321 771895321 1038354725 1038354725 1012976039 885024938 27382774 435295206 659362511 892492982 904131051 932122317 932122317 783336285 747753988 747753988 653098479 1020445375 1020445375 1004560559 782491772 631341277 800142033 800142033 740316352 635877464 635877464 1021232515 1021232515 611720073 611720073 82183488 72227976 68044160 6855688 2281728 147676640 373174049 373174049 68422152 379506141 1004286601 1004286601 867628329 867628329 689505741 879305735 879305735 256456298 551755792 663884409 663884409 978063843 978063843 197316852 197316852 267288010 267288010 344350896 344350896 66225440 47373968 55317120 55317120 27057216 27057216 11060544 11060544 11273024 11273024 12093696 70549512 70549512 67686216 2671872 246448856 883091550 1053410955 1053410955 1019803725 1019803725 938215401 972869607 972869607 284756581 836139523 836139523 767241698 767241698 527481404 533022242 533022242 729917152 729917152 627123629 201405837 60491416 139859328 145888068 326013358 419113580 419113580 448001111 1015016707 1015016707 686657025 946973635 946973635 289497282 836930304 836930304 299708449 142751616 415245830 415245830 432223526 432223526 0 905199970 905199970 809001203 793881477 793881477 996248576 996248576 653101479 497547630 497547630 641583158 641583158 538592769 555481440 562451008 562451008 590033025 590033025 38930192 822558928 851830995 851830995 870001632 870001632 918948371 918948371 388108584 877676529 877676529 557418368 607860489 607860489 88195228 605070928 605070928 265827469 575668356 600065061 899926176 899926176 824588331 551778068 551778068 610745577 610745577 590273841 602807728 845563955 845563955 676472288 894743137 894743137 693170368 681945477 576015380 247343008 286248390 499460602 504571946 504571946 273829778 257544542 214082198 378794586 378794586 466150304 466150304 438853648 197206260 149335472 94906896 94906896 107340144 107340144 131931888 131931888 132203888 132203888 95210544 28414784 10647296 10647296 814358608 847513683 847513683 701505584 701505584 941600333 1024643631 1024643631 403990051 656483152 656483152 632295457 632295457 579262545 620239109 623218865 749538833 1071736353 1071736353 581539674 839648280 839648280 723697715 579928394 580841249 622027617 622027617 682758432 682758432 603344853 579348048 700920780 761977464 761977464 576541085 17592133 29441709 209581186 537364770 537364770 269362211 135376896 135376896 234931608 234931608 220726572 303185664 439104306 439104306 309595026 510258634 510258634 456145918 456145918 513478686 513478686 14601088 14601088 85385152 85385152 666460472 666460472 736823812 736823812 824234073 824234073 774248526 625693682 699644114 699644114 681605937 617153440 95734632 653749719 653749719 1008680463 1008680463 917112209 917112209 552855937 537839429 616101156 616101156 881481292 881481292 873459362 873459362 994016533 994016533 844764819 821035971 821035971 1011792583 1011792583 868872244 774316906 781777752 781777752 463744098 447150448 199231568 571351200 579701217 725664145 725664145 713443713 570560529 541477008 146465376 146465376 27497744 660173164 660173164 788699996 788699996 268697856 270797058 849921322 849921322 857760001 900862499 900862499 825399073 849347636 849347636 1052449029 1052449029 736057637 55225541 157837525 564767985 564767985 744203001 744203001 325194930 220733524 251833362 251833362 255659404 940518603 940518603 279056706 981899725 981899725 496484968 491808670 448315252 732504641 732504641 159602880 625910801 625910801 142934996 116182360 650257176 650257176 395429796 84153344 101924096 387131392 387324474 387324474 71643144 153100576 153100576 808128772 808128772 293638918 365158818 737395634 1011352521 1011352521 450810886 430236813 430236813 195347556 195347556 162286964 285854032 285854032 42496546 89279120 118015032 202950878 399109168 399109168 372446264 311469376 311469376 66792328 76502016 76502016 56010136 99742072 99742072 119199288 127058176 360833322 360833322 313252936 386082920 386082920 375129424 112723800 270352576 270352576 277574192 277574192 270059010 286801952 1054468156 1059489535 1059489535 811598211 811598211 280606897 60743280 1045838528 1045838528 478684782 24692640 194003697 597877204 918786769 918786769 663846704 220738481 973884764 973884764 964839227 130878768 78169416 32506848 32506848 574975320 687898689 687898689 152334676 144839044 681431863 681431863 583446256 689169837 689169837 242896077 386439283 864437306 1061608801 1061608801 1048636127 480944545 399168762 399168762 307798780 856299172 856299172 642237378 642237378 732995627 732995627 997245134 1062265385 1062265385 440682533 214518663 639803664 639803664 604237833 303615015 529954447 647529596 647529596 679413495 679413495 730909184 785824830 792145723 792145723 868291614 868291614 315228253 571474456 571474456 385876644 757467808 873943480 873943480 783629256 783629256 707203354 707203354 646441033 909234364 962798215 962798215 908915231 908915231 482088733 887753538 887753538 767570349 1038306300 1038306300 286048412 286048412 304449552 401596200 401596200 310805066 541796761 541796761 312139824 147506564 147506564 471859858 471859858 406163170 424359078 424359078 1011695323 1011695323 1023943313 1023943313 949544448 671916552 671916552 698376674 936275960 936275960 876777690 876777690 578863185 621285549 665883693 665883693 981773273 981773273 806478352 715546676 439303446 142939986 137105156 570069206 570069206 447113671 392653728 378261716 378261716 219576648 219576648 268128116 268128116 180023848 392828346 392828346 269649562 392067084 392067084 321428360 12747104 0 650256800 650256800 401699232 489272048 489272048 423562790 513698702 513698702 454946358 385131240 385131240 306981368 943260388 1055415775 1055415775 589422897 562280251 14259371 563239968 578323587 578323587 471978277 521607400 521607400 729100974 754400205 754400205 510211300 1000945246 1000945246 870909724 400576774 400576774 230295276 340904520 495252234 495252234 274731116 153540900 153540900 296576966 552806436 552806436 539660461 761450925 885444651 885444651 804917452 804917452 750782465 750782465 696717921 566274080 566274080 298144898 311042496 311042496 857811018 905363209 905363209 947931910 947931910 747899713 830787040 887374071 887374071 169962683 198025292 696491382 803274124 1036470372 1036470372 1047478488 1047478488 748955077 1045235050 1045235050 743625357 876800768 876800768 811415748 811415748 718939009 1012021928 1012021928 1000409383 1000409383 833960028 848465990 848465990 667076513 799540605 799540605 624965396 624965396 748821833 940372515 940372515 932116851 236758858 236758858 358757200 358757200 350902224 914206225 914206225 351500576 351500576 308545912 605206788 733154101 733154101 242430733 658905668 739522692 739522692 263377788 128057666 361393388 361393388 372249962 372249962 363463450 1017724036 1017724036 594988718 594988718 459352884 459352884 493881838 493881838 853969360 853969360 721178451 672564568 146178148 146178148 96062856 174189188 663763665 663763665 553991057 553991057 66070992 59005168 570446304 570446304 562425937 31721952 148705104 234292332 261228928 261228928 210708912 210708912 494292359 706982090 860096691 860096691 532939699 1015444402 1015444402 1002696951 472454190 766619181 766619181 228765256 829037707 829037707 508967586 524454582 524454582 520420444 651824666 651824666 186212605 71352456 598323056 598323056 646488832 646488832 832906550 859623219 1055924553 1055924553 294650466 740038912 740038912 758679717 758679717 157564988 157564988 271714448 409143320 409143320 239284380 406857870 406857870 369469576 1016619160 1016619160 973718165 903349370 882649050 360525738 351871712 557996593 557996593 354442192 803354684 803354684 973209606 973209606 948378278 731362628 731362628 647135833 683492953 683492953 673455452 675841167 675841167 411436314 402654224 402654224 926848826 926848826 389701435 657947253 657947253 465635747 165087552 165087552 517261006 517261006 883156500 883156500 483424151 6086144 33703616 33703616 59793496 128022776 128183976 128183976 87966504 95583872 301801952 301801952 847298643 847298643 648070483 936429392 936429392 926005000 926005000 859740738 859740738 336167186 336167186 890890761 890890761 884939560 884939560 60463696 902301379 902301379 64973232 840819968 844297879 1041389127 1041389127 983302152 145230160 487796782 487796782 394954424 1030706314 1030706314 982248120 982248120 641869853 1053132700 1053132700 608741903 923409545 923409545 789332021 737552780 881464395 881464395 609005602 449514354 492442722 492442722 263323866 271713792 271713792 45351120 46401744 70803976 70803976 159090632 159090632 136456704 136456704 156687012 157157668 157419648 157419648 23386112 97705888 97705888 179304808 251278300 503988300 503988300 352862776 352862776 128746792 128746792 193726244 193726244 89656480 303038672 303038672 237241238 44830288 327685725 327685725 270087434 270087434 373241647 858388168 858388168 246786787 165724644 538925062 538925062 537188356 672763911 747799184 747799184 609242773 1030128641 1030128641 101205367 658597941 658597941 762585144 762585144 889327659 889327659 1019688146 1019688146 954278343 972107758 972107758 947912775 878281391 878281391 826542243 826542243 916370321 916370321 551076419 592074050 592074050 321389714 34084096 25825378 172134288 172134288 140299908 463242368 465617142 465617142 659932276 884077665 884077665 814478403 787930077 787930077 698212009 700469349 700469349 56623536 522588637 589564274 897583416 897583416 813695043 780685870 119702184 216008276 216008276 58988640 58988640 52428336 35981664 130291840 145521464 265621840 265621840 130023488 131450328 131450328 598516056 805578268 805578268 600184970 711955609 711955609 723583285 723583285 556798129 191415732 1023589524 1023589524 860381344 491037472 140772636 112395224 812948789 812948789 615151642 1055466975 1055466975 910763316 910763316 875705739 918675790 918675790 592203182 1042333983 1042333983 922927415 1028628469 1028628469 698759457 755301069 1038354725 1038354725 1012976039 406847622 406847622 484054734 835856094 892492982 904131051 932122317 932122317 783336285 747753988 747753988 255175517 215216968 1004560559 1004560559 782491772 872546560 872546560 740316352 740316352 635877464 635877464 804124337 804124337 914722078 914722078 934416986 1011548733 1011548733 380670762 269554584 292880896 373174049 373174049 68422152 990119172 1010762789 1010762789 832484303 600663155 559674353 697352805 697352805 563970594 563970594 362230369 362230369 793356542 988246313 988246313 822716579 568585603 805369163 805369163 644275216 583015568 583015568 36850096 34132992 559317409 591309520 591309520 573470145 573470145 595636336 595636336 565010737 904458575 904458575 772122776 681119140 681119140 1053410955 1053410955 1019803725 1019803725 910460796 972869607 972869607 331534578 836139523 836139523 767241698 767241698 482418894 533022242 533022242 779904908 779904908 68521133 10095104 10095104 139859328 145888068 326013358 326013358 143474704 281568326 281568326 675548576 686657025 809084744 809084744 289497282 836930304 836930304 553127205 435597762 823738915 823738915 550757700 698569261 698569261 905199970 905199970 809001203 731490164 731490164 996248576 1040234545 1040234545 587677727 497547630 641583158 641583158 538592769 538592769 538580481 12459840 54921936 54921936 322178786 322178786 386613664 386613664 50935136 337343720 564793507 564793507 388108584 655507873 655507873 570002032 570002032 566230881 753222676 753222676 605070928 265827469 575668356 575668356 899926176 899926176 824588331 204061926 268509186 902529514 902529514 808113411 1036159136 1036159136 845563955 356724906 894743137 894743137 833337533 499628078 347102332 69525648 14788608 14944704 14944704 14944704 177210440 277906204 277906204 378794586 378794586 466150304 466150304 438853648 98613800 98613800 94906896 94906896 107340144 107340144 96733416 79876296 132203888 132203888 95210544 28414784 10647296 10647296 847326226 847513683 847513683 50466864 814445812 941600333 1024643631 1024643631 142342699 620982784 621855273 823373833 823373833 805306371 557843305 988952922 988952922 1071736353 1071736353 581539674 260256396 260256396 420760466 824009496 824009496 672355980 151643172 715416313 715416313 603344853 579348048 592965880 761977464 761977464 581184263 1027155759 1027155759 510665905 537364770 537364770 269362211 84214058 303090226 303090226 234931608 220726572 296934648 333857986 333857986 309595026 510258634 510258634 456145918 456145918 303509982 356465446 356465446 147625420 411472010 411472010 666460472 666460472 736823812 736823812 824234073 824234073 480176961 625693682 625693682 579530600 617153440 617153440 235960304 235960304 236095944 236095944 153617700 214346713 552855937 552855937 537839429 158593596 211457099 881481292 881481292 554028640 605728938 994016533 994016533 844764819 649852761 649852761 1011792583 1011792583 868872244 700571877 781777752 781777752 538625603 538625603 310546466 563757441 563757441 274094786 27449888 824449152 829244321 997852690 997852690 975352036 975352036 737276500 282607876 230184905 289406754 754980265 754980265 963158946 963158946 857760001 857760001 622862375 622862375 849347636 849347636 1052449029 1052449029 736057637 738013173 738013173 564767985 564767985 744203001 744203001 37881728 163714660 471993440 471993440 179706922 163448628 34865152 34867728 199863380 199863380 144270836 32955360 104745144 212290528 212290528 159602880 214073516 214073516 142934996 116182360 650257176 882128122 882128122 416480586 942347923 942347923 709109749 275264154 988418387 988418387 272179542 151543824 293638918 831553922 831553922 737395634 737395634 96510929 202787152 617258253 617258253 839503221 839503221 445238380 319719644 45594276 1066527571 1066527571 118015032 881126015 881126015 524308112 372446264 388797884 388797884 243117978 73618944 73618944 56010136 99742072 99742072 119199288 383014616 383014616 360833322 360804450 386082920 386082920 375129424 302345546 302345546 270352576 488933521 488933521 329042962 329042962 1054468156 1059489535 1059489535 859685377 859685377 208863377 208863377 252216329 478684782 522298594 522298594 194003697 194003697 76735213 663846704 663846704 315808384 822875312 822875312 537353555 130878768 78169416 32506848 32506848 179055416 687898689 1069388815 1069388815 992960803 992960803 681431863 486469968 591751464 591751464 85434745 253946904 602019480 1061608801 1061608801 1048636127 947123608 947123608 839045139 679429944 856299172 856299172 704170004 767934769 767934769 542655076 997245134 997245134 859881651 834266979 834266979 369526080 380558682 380558682 11032602 4194432 647529596 647529596 326243481 202914073 730909184 785824830 785824830 555560481 889461285 889461285 1033502891 1033502891 856891397 856891397 765493648 944951943 958620576 958620576 709106059 478530426 922005488 922005488 306444168 637591952 637591952 404735384 351901840 381681498 381681498 45224262 480396034 480396034 463958088 463958088 378496512 378496512 401596200 401596200 369331794 541796761 541796761 292992586 310382978 310382978 471859858 471859858 406163170 424359078 424359078 1054712403 1054712403 684558868 470098581 647588883 671916552 1067782311 1067782311 703544786 703544786 876777690 876777690 578863185 621285549 665883693 665883693 748292460 748292460 715546676 715546676 439303446 819321946 819321946 537453076 571597329 571597329 536912400 186454172 186454172 219576648 219576648 268128116 268128116 180023848 392828346 392828346 362894860 392067084 392067084 321428360 198714966 282592962 332084218 332084218 225064004 100141032 100141032 74060384 82977472 82977472 87828152 87828152 306981368 306981368 943260388 1055415775 1055415775 694909616 252571589 84460584 293655592 293785698 771957022 771957022 564183393 480063054 480063054 345504330 510211300 510211300 422501670 422501670 119521638 400576774 400576774 230295276 340904520 495252234 563338120 847636563 847636563 601056843 649659841 649659841 364658603 337518090 14289098 18874756 691177116 804917452 804917452 219337260 211469316 541550720 566274080 566274080 298144898 311042496 311042496 857811018 905363209 905363209 947931910 947931910 747899713 844661804 844661804 1038164235 1038164235 206416343 696491382 803274124 803274124 871205940 1047478488 1047478488 180411468 969266240 969266240 631864531 876800768 876800768 811415748 811415748 718939009 1012021928 1012021928 1000409383 1000409383 833960028 833960028 447146565 667076513 799540605 799540605 624965396 624965396 748821833 748821833 932116851 932116851 236758858 935217808 935217808 508845338 118015488 118015488 17475128 45113888 139559796 139559796 170341312 170341312 145262628 220778132 264689444 264689444 263377788 263377788 128057666 361393388 361393388 413281304 589899057 589899057 1017724036 1017724036 594988718 594988718 906106952 906106952 444072974 444072974 853969360 853969360 769565441 769565441 565592876 560539041 550122592 174189188 663763665 663763665 570430369 570430369 55638960 734390469 734390469 580378816 737294929 737294929 707929029 680666064 261228928 261228928 61083676 103994106 494292359 698653445 698653445 467012543 546308096 546308096 519046110 519046110 472454190 766619181 766619181 228765256 829037707 829037707 239949904 411208356 411208356 424015396 986192916 986192916 929676816 163180396 591400378 597807349 646488832 646488832 832906550 859623219 1055924553 1055924553 931116666 912701651 797187236 797187236 545718658 697663814 932319867 1016253291 1016253291 828844771 239284380 269488128 273023490 810568722 1016619160 1016619160 973718165 348677322 348677322 143247040 143247040 650171272 650171272 646974281 803354684 856203144 963633063 963633063 735624511 839505234 839505234 285003714 786912879 786912879 938103794 938103794 675841167 369545800 555359249 555359249 387188496 606899227 606899227 657947253 699849481 699849481 561573068 561573068 557816961 839699475 917160269 917160269 17241125 542450180 568124516 568124516 19099680 19177184 19177184 74396016 89051448 309168344 309168344 285860898 847298643 847298643 648070483 834748570 834748570 926005000 926005000 859740738 859740738 335604546 335604546 890890761 890890761 110297616 76225544 60463696 45007768 49561608 64973232 64973232 69829848 119120480 244550184 244550184 77699912 134295552 134352900 155852288 155852288 136258724 982248120 982248120 641869853 1053132700 1053132700 608741903 923409545 925732156 925732156 562041866 881464395 881464395 609005602 378192628 492442722 492442722 263323866 271713792 313099590 328701376 427560870 427560870 306446132 159090632 159090632 136456704 136456704 152476644 157157668 157419648 157419648 26248000 97705888 97705888 101716760 206176448 378061840 529694782 529694782 352862776 269485576 217632224 217632224 131893204 23858592 3149728 383789320 383789320 306523088 79631056 76682560 156489380 227616464 227616464 220287004 214591824 165724644 165724644 65221104 155779264 174724500 174724500 139593541 776001348 776001348 738198025 594227453 594227453 1057473104 1057473104 983336479 762585144 917912187 917912187 895535371 904642865 954278343 954278343 900584870 672472353 878281391 878281391 826542243 826542243 508768635 508768635 320419248 319889970 301211328 301211328 280895174 280895174 431227938 431227938 140299908 463242368 465617142 465617142 172368056 232707105 265170492 832987022 832987022 795686025 698212009 700469349 700469349 606341385 912398676 912398676 897583416 897583416 813695043 780685870 428873686 428873686 302789136 302789136 130220154 291828240 291828240 274319088 495796802 495796802 166540908 457729942 457729942 29019496 627049758 923099702 981708070 1009850051 1009850051 856904231 1058486291 1058486291 1006764959 239272211 1023589524 1023589524 586654856 491037472 140772636 112395224 812948789 1020695882 1020695882 1055466975 1055466975 910763316 910763316 875705739 918675790 918675790 757230896 1042333983 1042333983 922927415 1028628469 1028628469 698759457 224373312 939802764 939802764 402727040 406847622 444459480 484054734 1070665988 1070665988 903051835 441550765 244392540 244392540 25198688 27972960 152576704 164177124 164177124 603446198 1008062989 1008062989 872546560 782881872 168526021 212786508 430726308 474745998 474745998 914722078 914722078 934416986 1011548733 1011548733 380670762 269554584 292880896 292880896 407096402 407096402 990119172 1010762789 1010762789 929169860 450502495 664587127 697352805 968178632 968178632 826864101 826864101 789004290 793356542 988246313 988246313 822716579 616876233 805369163 805369163 644275216 583015568 583015568 34132992 581440228 581440228 591309520 591309520 573470145 573470145 595636336 595636336 565010737 904458575 904458575 772122776 696071120 681119140 556409824 532711886 74239368 229688098 309626452 309626452 260736142 331534578 425883042 529142974 529142974 507531720 272363664 533644458 533644458 779904908 779904908 744866200 744866200 294963345 148121280 189699504 262750908 468076843 784519389 818041563 818041563 945741259 945741259 809084744 892582754 892582754 828671234 828671234 758301098 758301098 1014973059 1014973059 550757700 877241673 877241673 921758855 921758855 839741278 981729390 981729390 840548407 1040234545 1040234545 848658526 848658526 771889252 771889252 538269729 554770977 554770977 585443393 585443393 54921936 322178786 322178786 386613664 386613664 387349146 387349146 333252608 279212056 378585690 378585690 310527132 722639796 775815913 775815913 753222676 753222676 114360368 621027448 659819193 659819193 25706505 618684642 618684642 204061926 268509186 902529514 902529514 808113411 1036159136 1036159136 275120291 348446766 863313849 863313849 833337533 200151844 200151844 258204718 392559834 392559834 56306062 407970872 407970872 307888806 307888806 261625080 348254944 348254944 457687212 457687212 254644298 228863440 89227808 89227808 93336104 93336104 79876296 126883216 126883216 127926616 127926616 12097280 35402592 86496560 900919112 900919112 571146272 571146272 814445812 814445812 433624673 798635312 798635312 807147292 807147292 823373833 823373833 805306371 370721525 988952922 988952922 663434361 598116220 598116220 498225465 400367194 200586848 824009496 824009496 672355980 151643172 715416313 715416313 548814289 837230730 837230730 123746481 565875820 581184263 1027155759 1027155759 621730857 621730857 642290530 642290530 128560398 571285143 664747856 709413827 709413827 676616842 333857986 333857986 104824780 315748186 315748186 142157700 142157700 239734992 356465446 356465446 883596552 883596552 617464130 617464130 573516928 573516928 172564629 33730580 37798032 939557574 939557574 451304903 47711952 45836128 171818100 257193040 257193040 680135885 680135885 153617700 585721025 585721025 237185032 134527892 610661268 1042729237 1042729237 629354601 629354601 957213763 957213763 571876646 458126069 287611780 287611780 678226412 678226412 700571877 700571877 146274516 271468609 545429250 545429250 310546466 563757441 824498920 824498920 100401451 824449152 829244321 997852690 997852690 975352036 975352036 757731852 757731852 592486817 289406754 754980265 754980265 963158946 963158946 444651125 555389475 731021396 731021396 0 16778240 738202792 801308965 801308965 738013173 738013173 19203797 1310848 582100336 582100336 387633348 387633348 471993440 471993440 229387614 471149070 503578940 503578940 357225568 357225568 435048438 435048438 457549552 457549552 406890464 406890464 137456004 137953472 137953472 73087680 633464416 882128122 882128122 416480586 942347923 942347923 709109749 291912876 988418387 988468695 988468695 805306368 805306368 831553922 923901971 923901971 243425907 126014380 590207040 841949410 841949410 839503221 839503221 445238380 319719644 45594276 1066527571 1066527571 243044244 881126015 881126015 524308112 254006814 388797884 388797884 243117978 89255432 89255432 72590848 72590848 17386560 17386560 383014616 383014616 382573696 382573696 377745498 310729608 310729608 302345546 302345546 115450346 488933521 488933521 329042962 329042962 227799660 227799660 326812929 859685377 859685377 519684128 519684128 252216329 252216329 740563456 740563456 135667792 135667792 60530736 60530736 621879358 621879358 822875312 822875312 705189670 705189670 561138451 851790850 955786149 955786149 322776385 1069388815 1069388815 992960803 992960803 350025505 350025505 855116289 855116289 946605592 946605592 948511815 948511815 268589452 572637540 947123608 947123608 839045139 774358928 774358928 704170004 704170004 767934769 767934769 542655076 969477961 969477961 960760017 834266979 834266979 700517904 700517904 696555573 736549792 736549792 465592340 979580568 979580568 946146390 946146390 712277493 725288144 725288144 889461285 889461285 1033502891 1033502891 856891397 948050902 948050902 944951943 958620576 958620576 650123560 438309858 922005488 922005488 641465104 306444168 443259153 944630919 944630919 381681498 908350788 908350788 680790099 565391680 565391680 463958088 378496512 378496512 69538384 272503120 369331794 369331794 562577920 563660385 563660385 310382978 301994130 301994130 272771730 272771730 119277600 1054712403 1054712403 499681518 470098581 726140623 890629650 1067782311 1067782311 642274573 642274573 226723124 226723124 190791348 98157405 698128981 698128981 748292460 748292460 609487497 351940224 385238682 819321946 819321946 766257630 571597329 571597329 580437249 580437249 235943101 251964496 742735177 742735177 424773482 949620949 949620949 419128394 641390437 641390437 821525638 821525638 355339879 353258682 332084218 332084218 828946780 988358103 988358103 957428406 486224326 460018534 501623976 501623976 430485766 430485766 263207341 714881579 714881579 694909616 252571589 84460584 293655592 293785698 771957022 771957022 672303692 1054175754 1054175754 352079818 565653328 565653328 566020453 794094912 794094912 149856244 149856244 271719860 281043819 281043819 563338120 847636563 847636563 601056843 649659841 649659841 364658603 452989660 452989660 298952414 680129684 680129684 93847616 93847616 92276224 29868392 30271584 71846052 262277606 470289712 573021451 573021451 280915272 720898001 720898001 679243493 679243493 844661804 844661804 1038164235 1038164235 932258498 932258498 583066118 395283768 395283768 386800698 327739776 881704008 969266240 969266240 987573975 987573975 827238824 827238824 686769536 667468003 667468003 1015321896 1015321896 500435694 738457664 738457664 20765248 119486532 798605573 1016227147 1016227147 616501745 616501745 731096247 731096247 326904506 1070876017 1070876017 935217808 508845338 318785216 365732648 365732648 277821568 277821568 276892488 66261888 46211184 57329312 91505760 112528144 112528144 398666260 445016616 445016616 519368241 671916005 671916005 930614233 990250139 990250139 548314379 125097101 516292892 906106952 906106952 544810881 767784067 770798575 770913261 770913261 769565441 565592876 560539041 550122592 102003120 130733304 130733304 570430369 570430369 55638960 734390469 734390469 580378816 737294929 737294929 707929029 680666064 188875536 188875536 68697088 103994106 343327492 1037206682 1037206682 408306646 766001826 766001826 519046110 519046110 455856588 455856588 295600902 151420416 417056174 417056174 404026628 13140288 428930050 470467692 986192916 986192916 929676816 709130425 591400378 772026625 772026625 595862121 595862121 688965724 789194556 931116666 931116666 912701651 797187236 797187236 545718658 697663814 932319867 1016253291 1016253291 828844771 780803725 742078221 273023490 810568722 810568722 214443016 443990170 917789322 1022497359 1022497359 817258616 817258616 650171272 887103947 887103947 856203144 963633063 963633063 735624511 839505234 839505234 416369984 809267234 1028394159 1028394159 966725300 970733800 970733800 890509936 555359249 387188496 606899227 606899227 342940200 699849481 699849481 561573068 561573068 842829587 979279411 979279411 917160269 753470483 542450180 568124516 568124516 25322600 93770792 93770792 118364576 118364576 388533464 388533464 340271498 340271498 339756064 357090474 834748570 834748570 606852893 817559088 882901323 882901323 320405875 129628514 119812392 119812392 198976044 198976044 224240048 224240048 230576308 230576308 219025528 219025528 92473628 92473628 77699912 77699912 474518666 806367748 806367748 719852319 282009193 359930210 359930210 225125306 191631360 448864906 448864906 388310954 925732156 925732156 248337891 70781178 67069840 190017488 190017488 185997876 185997876 60426608 60426608 313099590 328701376 427560870 427560870 306446132 226701420 94581228 25178248 16095424 9482496 13243584 15763200 15763200 26248000 86807904 86807904 206440880 206440880 206176448 529694782 529694782 269606966 269606966 260908192 347679834 347679834 219940090 492831150 522201482 522201482 460390812 89270704 93220352 156489380 156489380 101376064 229185044 229185044 199111184 140786564 32696464 32696464 100983824 211489736 211489736 776001348 776001348 738198025 594227453 594227453 1057473104 1057473104 983336479 1007815968 1007815968 984489270 984489270 904642865 904642865 79691976 135012352 135080964 965509120 965509120 270698855 833139026 833139026 320419248 320419248 319889970 312661250 301211328 411179584 411179584 431227938 431227938 1216064 298976786 298976786 748767712 748767712 232707105 265170492 832987022 832987022 795686025 180188093 704811016 704811016 606341385 912398676 912398676 413407640 472534698 517210384 517210384 969634503 969634503 306563363 302789136 597738624 597738624 596881616 596881616 495796802 495796802 166540908 457729942 457729942 143189092 627049758 923099702 981708070 1009850051 1009850051 856904231 1058486291 1058486291 1006764959 846556270 846556270 587819976 586654856 278521506 634756038 761524653 761524653 1020695882 1020695882 961882791 961882791 625869359 470417833 107680798 5814274 5904000 757230896 772799517 795470269 795470269 772010013 695671520 224373312 224373312 939802764 939802764 339781765 281340034 444459480 444459480 1070665988 1070665988 903051835 135660564 135660564 279570294 683129969 683129969 232372318 492735546 804359875 804359875 1008062989 1008062989 782881872 782881872 143614216 212786508 430726308 474745998 474745998 86906243 0 821760666 821760666 138084620 138084620 135324292 135324292 46285956 407096402 407096402 674497828 674497828 929169860 929169860 543532502 664587127 664587127 968178632 1027555119 1027555119 826864101 789004290 781362240 781362240 777285280 777285280 616876233 415453390 650747960 650747960 581854300 581854300 365621603 581440228 581440228 616232030 616232030 566916580 566916580 539628801 136870917 134636548 134636548 252992200 873417653 873417653 682973621 1073384429 1073384429 829290078 595928447 634488976 634488976 281748918 434498022 1032134779 1032134779 753756211 753756211 272363664 639959041 639959041 285491472 121479964 744866200 984580926 984580926 884354590 981805144 981805144 806247238 784519389 818041563 818041563 945741259 945741259 542008553 892582754 892582754 828671234 828671234 758301098 758301098 1014973059 1014973059 501850219 877241673 877241673 921758855 921758855 839741278 981729390 981729390 840548407 699262253 699262253 1068704024 1068704024 772952583 771889252 538269729 554770977 554770977 585443393 585443393 545681537 47177856 549763457 549763457 373933120 387349146 387349146 660680305 660680305 378585690 601774332 663298449 722639796 775815913 775815913 635230249 188169817 697747573 697747573 681713448 966002268 966002268 861728497 847512547 847512547 455888221 402915563 472123662 719881266 754977088 754977088 275120291 424448976 465493878 465493878 442852176 442852176 306665316 258204718 392559834 392559834 204522252 463103428 463103428 443169630 320734916 261625080 227153004 215616332 457687212 457687212 254644298 228863440 52598896 81900280 81900280 104665920 104665920 126883216 126883216 127926616 127926616 274728224 325454336 325454336 900919112 910877728 910877728 712144688 712144688 584164066 322438962 824138769 1049919749 1049919749 857492316 772874781 614775563 562748006 555437842 423365485 910618379 910618379 598116220 598116220 498225465 400367194 202376408 616581376 770540993 770540993 222511489 482158310 482158310 184036892 837230730 837230730 911422107 911422107 943159860 943159860 325732763 621730857 621730857 642290530 1030023135 1030023135 1002457968 959471559 767479867 767479867 676616842 436092390 370955036 207594252 192264200 192264200 69995784 182769557 590686581 878054435 878054435 883596552 1015945100 1015945100 742397126 573516928 583533777 583533777 261325121 261325121 939557574 939557574 596715155 976032296 976032296 628517616 257193040 257193040 680135885 680135885 141123680 585721025 585721025 237185032 134527892 610661268 1042729237 1042729237 761620290 761620290 957213763 957213763 740413154 740413154 478669128 478669128 167747046 393522604 393522604 304747794 50734848 271468609 545429250 545429250 817514306 817514306 824498920 824498920 100401451 70130952 84527888 104367024 120321336 120321336 171593832 757731852 757731852 592486817 206262461 621806080 621806080 620757033 575267513 538445313 555389475 731021396 731021396 645724739 500451679 738202792 801308965 801308965 628886389 551616513 565012449 565012449 157286433 138225153 387633348 387633348 273564224 127143684 229387614 471149070 503578940 503578940 357225568 357225568 435048438 435048438 457549552 457549552 406890464 406890464 137456004 137953472 137953472 20015072 17720096 17720096 45230352 45230352 19347744 99690276 291912876 291912876 620662984 988468695 988468695 805306368 805306368 302104581 923901971 923901971 286904430 294200338 590207040 841949410 841949410 389916780 260571136 260571136 325833906 325833906 237998754 453721832 453721832 408198330 398630606 526126782 526126782 431558450 431558450 84460584 89255432 89255432 83471872 83471872 50887696 50887696 6758544 33677328 382573696 382573696 377745498 310729608 310729608 44304408 55658080 55658080 20185360 53742384 268570882 268570882 51644976 47235954 313838418 313838418 374082714 519684128 519684128 162868068 953252196 953252196 740563456 174709317 188648693 188648693 608907534 918082810 918082810 574556724 574556724 705189670 705189670 836887011 851790850 955786149 955786149 43519953 687899038 870173491 897181611 1058783434 1058783434 678061929 855116289 855116289 946605592 946605592 948511815 948511815 260129663 572637540 572637540 822985762 822985762 774358928 774358928 898111705 898111705 323886258 110492362 906062702 906062702 960760017 960760017 583272615 481344214 700517904 700517904 696555573 736549792 736549792 675674950 979580568 979580568 946146390 969454215 969454215 931344747 725288144 705168405 705168405 330957099 1018377152 1018377152 948050902 948050902 493000811 473977802 650123560 650123560 587872619 587872619 641465104 641465104 538134427 443259153 944630919 944630919 382444106 908350788 908350788 680790099 565391680 565391680 202586220 303041042 303041042 305350704 305350704 86032648 832604459 832604459 668330713 668330713 130017473 301994130 437256726 437256726 399011134 286427599 790430816 882747519 882747519 630058089 726140623 890629650 890629650 648666145 642274573 642274573 588335250 588335250 1036303360 1036303360 698128981 698128981 823052292 823052292 1028014601 1028014601 224003714 622856824 899128747 899128747 638577673 516014863 580437249 580437249 572590440 251964496 742735177 742735177 424773482 949620949 949620949 640323656 641390437 641390437 821525638 821525638 388470882 353258682 294007162 284151330 828946780 988358103 988358103 957428406 513926998 460018534 501623976 501623976 430485766 430485766 369368632 714881579 714881579 638391976 638391976 227288132 428635180 428635180 486797347 918549091 918549091 1054175754 1054175754 352079818 565653328 997466127 997466127 807150610 844136946 844136946 484610262 444782334 444782334 927219722 927219722 395830338 395830338 779423568 779423568 905085540 905085540 975427433 975427433 725276469 680129684 680129684 802775581 802775581 270051039 72376576 17473696 71846052 262277606 470289712 573021451 573021451 325986270 720898001 720898001 679243493 679243493 169641105 619455368 619455368 333564273 932258498 932258498 615543905 560619112 560619112 562554191 562554191 881704008 881704008 950513208 987573975 987573975 827238824 827238824 686769536 971274727 971274727 1015321896 1015321896 813912403 500435694 852570336 852570336 1043859231 1043859231 1016227147 1016227147 53990792 184411508 731096247 731096247 326904506 1070876017 1070876017 2129920 104989776 318785216 365732648 365732648 318972418 277821568 276892488 108003776 70271488 70271488 91505760 112528144 112528144 398666260 445016616 445016616 519368241 671916005 671916005 930614233 990250139 990250139 822835882 393927996 393927996 384188538 544806856 544810881 767784067 770798575 770913261 770913261 113647616 92413608 31399792 45952848 102003120 130733304 130733304 80926400 57690288 57690288 43909952 43909952 21506784 5378560 26288416 58721024 58721024 109781432 109781432 68697088 101581568 526802383 1037206682 1037206682 444221671 766001826 766001826 203696370 432044536 432044536 1068289417 1068289417 91558020 760026763 760026763 404026628 7398534 428930050 470467692 470467692 401546334 709130425 709130425 68044828 772026625 772026625 394358382 574432784 574432784 659261292 720630741 927598186 927598186 584192721 395854011 272242944 912735745 912735745 316217305 707596488 882981510 1022237215 1022237215 511945292 642080839 642080839 985350721 985350721 917789322 1022497359 1022497359 817258616 817258616 641805177 887103947 887103947 671895962 729665014 903316590 903316590 370862680 370862680 416369984 809267234 1028394159 1028394159 966725300 970733800 970733800 890509936 298340810 298340810 293865570 293755136 55919256 214382796 214382796 27183784 376587337 842829587 979279411 979279411 753470483 753470483 34275600 34275600 22742816 59588416 93770792 93770792 118364576 118364576 388533464 388533464 433922133 895010475 895010475 205588696 797272113 797272113 606852893 817559088 882901323 882901323 483163076 514463070 933761569 933761569 198976044 198976044 224240048 224240048 230576308 230576308 219025528 262777232 262777232 243271708 478152706 478152706 806559815 806559815 806367748 1053505494 1053505494 609487497 609487497 541276680 8396092 0 252740828 252740828 264799004 264799004 223482768 223482768 175600576 190017488 190017488 123635252 159515840 267519656 267519656 106726480 61580324 135610464 207815136 226701420 226701420 94581228 70799552 70799552 15443712 4507776 15763200 15763200 13157568 86807904 86807904 206440880 206440880 236425936 243287112 243287112 269606966 269606966 266339488 347679834 347679834 323224584 492831150 522201482 522201482 460390812 129469472 94824592 94824592 101376064 101376064 229185044 229185044 224423212 224423212 197998144 227986980 227986980 258588088 258588088 216296196 216296196 312643104 312643104 369135904 890851923 890851923 901627162 1007815968 1007815968 984489270 1067983176 1067983176 895737924 895737924 490537050 882777629 965509120 965509120 1051751222 1051751222 1063538122 1063538122 837547491 324080034 324080034 311028354 411179584 411179584 159518948 159783012 159783012 58806276 73852932 748767712 748767712 174078216 71508896 71508896 192274472 595147020 595147020 704811016 704811016 262293613 233735632 445390246 445390246 149297718 709446484 709446484 969634503 969634503 306563363 97936968 597738624 597738624 596881616 596881616 196965324 196965324 109219428 235688596 235688596 173181980 170442816 352858624 824594594 824594594 410565421 404101638 404101638 294194592 283453890 846556270 846556270 427826183 1057917015 1057917015 755286061 761524653 761524653 538099996 523859645 978322071 978322071 795742889 138681484 1009609247 1009609247 716618820 438845706 510533892 510533892 235194396 1043990166 1043990166 114768837 101253664 218898440 672140292 738461709 738461709 2061 307241430 625787296 734567441 770364909 770364909 604897429 598002033 683129969 683129969 232372318 845825799 845825799 804359875 780225508 780225508 617144323 617144323 818476105 818476105 307235147 941493667 946783008 946783008 943618652 943618652 462233519 473630154 473630154 351934410 282042186 307063010 307063010 305394560 674497828 674497828 710463431 710463431 717342044 717342044 534512997 763801404 1027555119 1027555119 613531714 714175723 714175723 777253588 777285280 777285280 355018487 710096937 710096937 650747960 581854300 581854300 365621603 353624634 962761476 962761476 616232030 438417203 474123433 474123433 555866240 555866240 660132748 759794324 936207281 936207281 682973621 1073384429 1073384429 987826573 654799552 860060242 953412187 953412187 534774270 1032134779 1032134779 753756211 753756211 103098648 639959041 639959041 602015792 758387133 758387133 984580926 984580926 884354590 981805144 981805144 806247238 108188568 557190736 557190736 84968520 26789472 77256264 77256264 72751752 1034305824 1034305824 281031460 49152 49152 581888 2696448 780666156 780666156 179047764 918357404 918357404 421004838 856212006 856212006 346726508 716633416 1068704024 1068704024 772952583 226744428 239190268 239190268 88860744 88860744 545681537 545681537 175499600 549763457 549763457 60156528 126038024 126038024 660680305 660680305 100558496 601774332 663298449 702743833 702743833 682115228 573099348 214316072 697747573 697747573 681713448 966002268 966002268 861728497 847512547 847512547 574685776 574685776 833494371 833494371 719881266 713835708 979370966 979370966 997460919 997460919 685832900 457388214 425818660 167856928 263924966 263924966 204522252 463103428 463103428 443169630 320734916 191047712 169196340 320463724 320463724 262000406 34881552 52107416 64410576 81900280 81900280 104665920 104665920 21480024 96824224 96824224 6129896 274728224 325454336 325454336 814943603 910877728 910877728 712144688 712144688 716801124 716801124 824138769 1049919749 1049919749 857492316 939921439 939921439 940515368 940515368 1000672213 1000672213 921179645 943331877 1000083063 1000083063 999043709 999043709 847125124 847125124 770540993 768234508 737394552 780217148 780217148 237940936 694339665 911422107 911422107 943159860 943159860 274142083 461373366 816948272 851216243 1030023135 1030023135 1004210754 959471559 767479867 767479867 642897512 436092390 370955036 207594252 282690618 282690618 69995784 182769557 590686581 878054435 878054435 874197422 1015945100 1015945100 943201408 943201408 583533777 583533777 494231288 494231288 641744909 641744909 596715155 976032296 976032296 628517616 195144688 143265632 95810660 53267760 141123680 141123680 188274192 599974348 599974348 212906190 276034434 515296022 761620290 761620290 799824128 799824128 749177152 749177152 533454810 533454810 167747046 393522604 393522604 304747794 136808736 5624708 805359682 805359682 817514306 817514306 538625226 538625226 536401532 634147978 1064617995 1064617995 964988950 975489332 975489332 613565588 408604472 671280610 837809631 837809631 621806080 1011896977 1011896977 538445313 281302144 536338211 964676221 964676221 500451679 905685740 905685740 664344481 604957328 549760529 565012449 565012449 157286433 539354706 818238352 818238352 463081716 274204290 361488942 451040326 451040326 77817006 3595008 50667776 277311280 277311280 460596979 460596979 426585510 412158821 46212181 673458116 673458116 859971719 859971719 676312781 1027589487 1027589487 858797886 858797886 292315882 441545672 1044508688 1044508688 656035917 349361953 146178880 146178880 445760090 445760090 378593878 294200338 302532210 395839098 395839098 389916780 353234490 520127040 520127040 325833906 237998754 453721832 504170564 504170564 462947958 526126782 526126782 485756766 445121622 238816074 86348320 86348320 83471872 83471872 50887696 50887696 268740168 339857514 339857514 97518824 294363680 294590154 294590154 308205992 308205992 307354258 521662595 521662595 213648437 1011959790 1011959790 1005094199 705234163 860176969 860176969 725232005 725232005 1046157614 1046157614 953252196 757435520 174709317 542374432 764809578 968991776 968991776 918082810 854240410 933627094 933627094 778640319 836887011 1027679645 1027679645 1011875983 1072566484 1072566484 870173491 897181611 1058783434 1058783434 678061929 678061929 31457760 403219622 411083014 1024493838 1024493838 69534569 495639578 543539488 822985762 822985762 692017008 692017008 898111705 898111705 593807793 177488869 906062702 906062702 942287902 942287902 416685814 481344214 481344214 396345688 485626830 485626830 675674950 675674950 279310863 157089962 897622853 969454215 1060685359 1060685359 839390245 839390245 705168405 330957099 1018377152 1018377152 819073731 749157321 838900174 838900174 473977802 1045213402 1057168680 1057168680 579239034 538134427 538134427 100975124 487621732 487621732 382444106 345076954 26740320 112476224 345742704 345742704 345733474 303041042 395474944 395474944 305350704 86032648 832604459 832604459 668330713 668330713 340429082 215778584 437256726 437256726 399011134 560960585 790430816 882747519 882747519 630058089 403246603 405175462 436953690 436953690 471873060 471873060 588335250 878838858 1036303360 1036303360 542096441 542096441 823052292 823052292 1028014601 1028014601 273918600 622856824 899128747 899128747 638577673 730051174 730051174 583007233 572590440 235162921 186654720 63231456 63231456 193594688 193594688 640323656 640323656 509008542 509008542 388470882 388470882 294007162 401078778 401078778 546310958 546310958 452067963 513926998 513926998 384810686 347458176 347458176 184948788 369368632 369368632 693764797 693764797 638391976 638391976 227288132 428635180 428635180 486797347 918549091 918549091 746526620 746526620 221226680 281658210 997466127 997466127 807150610 844136946 844136946 787109716 787109716 544361980 927219722 927219722 671821866 739326527 779423568 779423568 905085540 905085540 975427433 975427433 725276469 609313321 743522516 872489995 872489995 760308873 760308873 88769536 72372712 110122888 400170254 400170254 412228122 412228122 244354508 476071510 476071510 18948384 164187192 619455368 797756541 797756541 657772401 615543905 615543905 560619112 560619112 906074452 1017641295 1017641295 839009342 839009342 840005010 840005010 454596220 680812563 680812563 971274727 971274727 938838245 938838245 813912403 424063072 852570336 852570336 1043859231 1043859231 598873058 179496297 88605864 97042824 97042824 249610716 265142728 265142728 109297192 343541528 343541528 123438184 273545760 318972418 318972418 131105104 131105104 108003776 70271488 88270720 88270720 71516176 69779736 47505538 84067102 377649244 377649244 558977988 559466145 559466145 281480768 822835882 880613104 880613104 658073935 658073935 789048104 789048104 778043037 622673645 576145961 195846780 630427452 630427452 561852321 542784576 59099344 59099344 40039504 52180496 57690288 57690288 43909952 43909952 21506784 9449472 26288416 58721024 58721024 50331696 43679744 59748448 171761342 526802383 526802383 433463226 444221671 444221671 435699959 465791450 465791450 400775300 1068289417 1068289417 230575140 760026763 760026763 340587148 497046404 497046404 234536160 260719716 794850785 794850785 757472293 757472293 650642649 548829524 548829524 574432784 574432784 571736153 571736153 927598186 927598186 609317336 609317336 815876545 912735745 912735745 316217305 316217305 882981510 1022237215 1022237215 511945292 642080839 642080839 985350721 985350721 101503877 4642944 324037248 324037248 57969824 57969824 39323280 218646697 368356502 373621603 903316590 903316590 352669218 352669218 68157960 336758656 336758656 276486018 966197580 966197580 217195971 109595386 324853650 380030714 380030714 312050336 312050336 214382796 386564794 386564794 338036438 338036438 80352456 5248584 41522724 191099316 191099316 154801940 138641664 59588416 59588416 33628176 143869956 143869956 147188288 147188288 433922133 895010475 895010475 205588696 797272113 797272113 490436469 490436469 394978145 615074816 615074816 514463070 933761569 933761569 135266820 34867728 126126384 126126384 112511832 103858968 103858968 262777232 262777232 243271708 478152706 478152706 806559815 806559815 438767174 1053505494 1053505494 609487497 609487497 541276680 230832140 131748388 252740828 252740828 607208384 607208384 223482768 223482768 175600576 175600576 142083972 142083972 159515840 267519656 267519656 166310580 61580324 135610464 162300068 162300068 19997472 157085060 157085060 70799552 15443712 10855360 11774240 27139680 27139680 554174564 554174564 544508548 33296352 674775380 732483041 732483041 525545610 525545610 598478198 743125493 876877960 876877960 183762964 86059972 86059972 129469472 129469472 94824592 135403020 145900044 145900044 450924030 461179646 461179646 900751623 900751623 468634046 974641054 974641054 963754915 310499137 573588083 573588083 547972131 369135904 671316584 764725869 764725869 943526977 943526977 866519878 1067983176 1067983176 895737924 940107260 940107260 882777629 882777629 739121633 1051751222 1051751222 1063538122 1063538122 856642688 856642688 839646384 311028354 177456132 177456132 159518948 159783012 159783012 58806276 73852932 241621404 588767417 588767417 168204660 798325596 798325596 602982712 595147020 556406049 122865561 46100084 763760996 763760996 445390246 149297718 709446484 709446484 404357461 324150082 324150082 280040114 540981120 540981120 109723152 116471216 476070418 476070418 192987260 473989434 473989434 236982664 683975822 822336206 824594594 824594594 877839727 902601231 1010113255 1010113255 890191815 827211082 827211082 605102601 1057917015 1057917015 755286061 755286061 604028937 538099996 523859645 978322071 978322071 795742889 138681484 1009609247 1009609247 716618820 438845706 510533892 510533892 438711428 1043990166 1043990166 593776953 101253664 218898440 672140292 738461709 917319582 917319582 1038435713 1038435713 788977945 866388339 971118740 971118740 598002033 436946462 241372424 302616990 845825799 845825799 530649112 530649112 570785860 617144323 617144323 818476105 818476105 539017473 941493667 946783008 946783008 943618652 943618652 578355984 854770547 854770547 842142483 554222386 307063010 309742440 397744336 397744336 359784106 359784106 555035178 717342044 717342044 1026783032 1026783032 822470691 822470691 541992616 714175723 714175723 731774218 731774218 708694783 708694783 981739863 981739863 3889152 11007808 11007808 9224640 175905840 962761476 962761476 738980877 738980877 708986172 708986172 744722724 744722724 660132748 759794324 936207281 936207281 1030254284 1030254284 987826573 987826573 654799552 860060242 953412187 953412187 534774270 534774270 461249100 494141598 494141598 361944746 361944746 889492457 889492457 758387133 758387133 680107063 984889360 984889360 965063980 629492711 838046757 838046757 557190736 611319810 611319810 413629255 403837446 824220390 824220390 1034305824 1034305824 1014815176 1014815176 779059345 779059345 911970958 911970958 780666156 179047764 918357404 918357404 421004838 856212006 856212006 8462400 716633416 1035685637 1035685637 177418836 177418836 239190268 239190268 88860744 88860744 178602704 178602704 175499600 48357840 73612232 73612232 72235144 126878328 126878328 98247472 101544660 228681728 245927940 245927940 224488480 224488480 84749352 214316072 214316072 104335128 212137984 807142416 807142416 392167866 392167866 178783572 574685776 574685776 833494371 833494371 672062469 672062469 979370966 979370966 997460919 997460919 846355595 1008276291 1008276291 1026088835 1026088835 887249420 481432398 481432398 349701834 349701834 191047712 323356948 323356948 323225778 499122936 499122936 80104328 100766304 100766304 64410576 49377504 127909664 127909664 102038704 53881808 43591488 43591488 27067072 19890720 272574944 272574944 541399104 549662913 549662913 195208260 716801124 805773346 805773346 554047521 178360915 815668269 939921439 939921439 940515368 940515368 1000672213 1000672213 921179645 943331877 1000083063 1000083063 999043709 999043709 847125124 847125124 768234508 768234508 968937691 968937691 780217148 805355880 805355880 694339665 488845614 355079466 355079466 321688200 949634464 949634464 851216243 851216243 1004210754 1004210754 626792168 626792168 234511323 173298226 349929166 349929166 156733136 282690618 282690618 8126344 47822576 47822576 22546080 336729774 679032834 679032834 143465856 943201408 943201408 135794176 135794176 494231288 494231288 576998124 767331072 767331072 526825268 526825268 458233903 187683984 187683984 884197825 884197825 339090186 578475427 578475427 599974348 599974348 690152112 712192917 712192917 140867588 140867588 799824128 799824128 992879575 992879575 1068239723 1068239723 981673943 474014255 422603598 586968310 586968310 548480164 805359682 805359682 537022529 819651978 819651978 818640075 882391171 882391171 1064617995 1064617995 1000980684 975489332 1035586702 1035586702 781735053 781735053 837809631 837809631 377103966 1011896977 1011896977 818959970 981903439 981903439 964676221 964676221 292543436 905685740 905685740 664344481 604957328 592966400 602270385 602270385 36179408 539354706 818238352 818238352 463081716 274204290 361488942 451040326 451040326 282145062 447877460 447877460 394043162 373200062 460596979 460596979 426585510 734625844 734625844 673458116 673458116 859971719 859971719 676312781 1027589487 1027589487 858797886 858797886 292315882 441545672 1044508688 1044508688 656035917 349361953 269516880 311476818 445760090 488623220 488623220 100762112 389303312 389303312 356042538 353234490 353234490 520127040 520127040 495076678 228643694 202089472 504170564 504170564 462947958 415236294 485756766 485756766 445121622 238816074 16519240 54569572 179399068 234954780 234954780 255667068 268740168 408068614 408068614 440926870 466351812 466351812 429843088 308205992 308205992 307354258 521662595 542532098 827585187 1011959790 1011959790 1005094199 705234163 860176969 860176969 757902838 725232005 1046157614 1046157614 757435520 757435520 134273156 635676701 764809578 968991776 968991776 565757793 854240410 933627094 933627094 915938076 915938076 1027679645 1027679645 1011875983 1072566484 1072566484 437552132 130866778 765417046 765417046 1022011779 1060263256 1060263256 1053898960 1053898960 1024493838 1024493838 756058383 537943820 543539488 664480040 664480040 906002978 906002978 994050545 994050545 794624941 177488869 727126032 870657365 870657365 706871360 624432009 256642748 256642748 212109504 212109504 765771924 765771924 777847389 777847389 724165941 741109476 838000035 1060685359 1060685359 839390245 839390245 689575461 537297504 675458704 752563917 752563917 749157321 838900174 838900174 427895405 1045213402 1057168680 1057168680 0 0 0 123319659 603348411 603348411 936665523 936665523 488934236 488934236 388024930 731117856 749994288 749994288 395474944 481403514 481403514 406432842 294174722 294174722 27923776 340429082 340429082 215778584 215778584 320656546 320656546 560960585 661462972 661462972 353685450 353685450 287892164 977875381 1057038031 1057038031 662183495 976753486 976753486 878838858 878838858 300028386 300028386 352855096 354167958 605028488 605028488 542114433 794944038 794944038 901917049 901917049 305335296 881282009 881282009 583007233 565185280 186654720 734405013 734405013 451353874 717882081 717882081 660678196 660678196 624501278 855669406 855669406 357087671 333397402 531490362 531490362 350725144 890995980 890995980 539531106 137530400 155115300 340872386 506244416 506244416 438046230 506860080 506860080 428479328 446432264 446432264 109187160 201943144 201943144 296188938 296188938 92864552 638743656 638743656 313337920 313337920 81294528 81294528 43106832 587468329 587468329 787109716 787109716 544361980 858952048 858952048 671821866 739326527 739326527 574690916 277880832 277946946 277946946 50331696 72351772 609313321 743522516 872489995 872489995 760308873 760308873 102963888 72372712 110122888 126489720 189930568 412228122 412228122 244354508 476071510 476071510 149785740 164187192 567602752 797756541 797756541 710183813 710183813 403581570 711461040 711461040 906074452 1017641295 1017641295 820929731 820929731 716698064 533406124 346285338 343986574 415371462 611828175 795167440 938838245 938838245 469895328 491133102 491133102 588634898 589484337 598873058 598873058 99636962 88605864 97042824 97042824 249610716 265142728 278792328 278792328 343541528 343541528 12558080 12558080 25165920 27869642 360277458 360277458 294860378 285319194 285319194 88270720 71516176 277288720 328017612 499306734 499306734 377649244 558977988 689921718 689921718 159691813 72169796 880613104 880613104 658073935 658073935 789048104 789048104 778043037 644398036 576145961 551493084 630427452 630427452 561852321 542784576 177428068 177428068 105383064 99771776 10531760 7010944 11511808 11511808 11257408 11410752 11670096 11670096 8393488 45693952 45693952 59748448 171761342 486409150 486409150 377100186 382340770 382340770 122084224 465791450 465791450 400775300 400775300 388325024 230575140 209059076 340587148 340587148 497046404 497046404 235750148 235750148 794850785 794850785 757472293 757472293 650642649 645532220 645532220 201513229 201794568 571736153 571736153 267193717 483987266 609317336 609317336 815876545 815876545 542013712 313001298 313001298 39446160 44226176 44226176 7719808 10021632 346086209 884447307 885660875 885660875 932935547 932935547 815096586 815096586 657034617 657034617 680165658 1058335829 1058335829 373621603 721589107 721589107 440826896 440826896 336758656 336758656 549462591 966197580 966197580 817293335 623991276 375083008 609946875 818938563 818938563 1017254223 1017254223 945215736 657871160 877793593 877793593 480734498 695816114 1071433734 1071433734 191099316 154801940 138641664 49378688 49378688 47235792 143869956 143869956 147188288 147188288 990913604 990913604 865674867 172026048 172026048 151552532 110658568 110658568 115466712 764273432 764273432 184643133 152251572 263854044 263854044 254943152 219259504 223658668 223658668 241824148 241824148 183993124 183993124 101526552 204415252 204415252 67777548 67777548 43127376 43127376 231282808 231282808 888499716 888499716 999383306 999383306 671736837 415574214 943770469 943770469 170076776 315824086 315824086 151913648 151913648 142083972 183437312 184470144 682609889 682609889 196904612 688618661 688618661 162300068 19997472 157085060 699126625 699126625 135300804 694231777 694231777 161751040 161751040 554174564 554174564 544508548 33296352 674775380 732483041 732483041 525545610 525545610 598478198 743125493 876877960 876877960 498217802 498217802 477107052 477107052 97167144 99697288 135403020 145900044 342177821 979505559 1029058979 1029058979 900751623 900751623 468634046 974641054 974641054 963754915 536270527 749207757 749207757 809428528 809428528 671316584 764725869 882170854 943526977 943526977 873599248 873599248 690566921 807412774 940107260 940107260 705532929 705532929 739121633 739121633 298646752 588417728 588417728 856642688 856642688 839646384 68331240 131565184 131565184 51910280 91676272 111136392 111136392 42994960 42994960 588767417 588767417 168204660 798325596 798325596 602982712 44147460 121643320 121643320 285247522 763760996 763760996 327542852 242230024 752227968 752227968 641728281 641728281 606335744 606335744 574298161 553764896 823827234 823827234 476070418 476070418 192987260 473989434 473989434 236982664 683975822 822336206 822336206 766801862 877839727 902601231 1010113255 1010113255 890191815 827211082 827211082 605102601 567550824 519973728 937963540 937963540 823793187 402266106 796787152 979634583 979634583 460205987 342084364 342084364 503946167 695537627 106194838 206243862 438711428 438711428 1008274352 1008274352 593776953 576135816 674378497 674378497 741865992 917319582 917319582 1038435713 1038435713 788977945 866388339 971118740 971118740 948568141 436946462 241372424 722321920 722321920 709293652 878172382 878172382 570785860 570785860 142632977 805660930 805660930 539017473 477209344 348222866 275244486 375278905 375278905 578355984 854770547 854770547 842142483 554222386 50378592 309742440 397744336 397744336 943612952 943612952 805306371 555035178 995646091 1026783032 1026783032 822470691 822470691 813140663 996366391 996366391 271746940 348966090 708694783 708694783 981739863 981739863 816307969 816307969 370943507 370943507 337156106 1058703401 1058703401 894266787 1059508386 1059508386 1023669268 744722724 744722724 125788305 108279188 25772160 25772160 1030254284 1030254284 279090008 479785086 479785086 253842710 243791952 269517116 523289406 523289406 461249100 541067715 541067715 375151858 375151858 889492457 889492457 664176802 575369392 680107063 984889360 984889360 965063980 901871083 838046757 838046757 233558069 611319810 611319810 604116228 943857673 943857673 824220390 689046376 751880911 1014815176 1014815176 1044518226 1044518226 911970958 911970958 309903817 845457652 853639538 853639538 639231513 639231513 555335971 555335971 536929280 537469953 537469953 177418836 177418836 230764568 230764568 29495520 176197264 176197264 34920452 47094016 47094016 73612232 73612232 72235144 126878328 126878328 98247472 101544660 228681728 663181037 742391949 742391949 711772300 633209276 705584105 705584105 546122817 546122817 562490649 562490649 392167866 392167866 178783572 178783572 406866180 406866180 275040642 142739650 305960976 305960976 476895045 483134670 846355595 846355595 1008276291 1008276291 1026088835 1026088835 887249420 481432398 481432398 349701834 415371486 415371486 323356948 323356948 323225778 504838152 504838152 106806744 106806744 100766304 16163504 59632192 127909664 127909664 102038704 53881808 43591488 43591488 282415712 330644160 330644160 854423441 854423441 546013536 677391862 677391862 321202962 973083476 973083476 554047521 906022482 906022482 414262086 414262086 889779240 889779240 825308160 207047480 207047480 170205908 170205908 257374924 257374924 159647844 659554524 659554524 588322897 643842460 968937691 968937691 965173702 839821812 839821812 552720564 488845614 441247012 938552467 938552467 949634464 949634464 547538019 976261014 976261014 847742688 677916359 758188826 758188826 600163008 402872406 346065708 156733136 29234000 29234000 44329376 194744337 708387221 726926741 726926741 679032834 679032834 552147077 569777505 569777505 555091428 135794176 3672324 920576 576998124 767331072 767331072 526825268 526825268 458233903 187683984 977788536 977788536 884197825 428514856 578475427 578475427 557495556 557495556 690152112 975272614 975272614 269574403 159508012 898259637 898259637 992879575 992879575 1068239723 1068239723 981673943 474014255 422603598 586968310 586968310 548480164 284777217 284777217 343459722 819651978 819651978 818640075 882391171 882391171 721381406 1000980684 1000980684 905142822 1035586702 1035586702 1023017304 781735053 241297824 241297824 377103966 726795889 818959970 818959970 981903439 981903439 780224594 701109477 159419040 159419040 29526756 12718272 20021280 592966400 602270385 602270385 16939473 2220288 15915202 1003393463 1003393463 880805578 635455406 635455406 406938630 282145062 830053678 830053678 841326840 841326840 706822192 312193214 47235792 734625844 734625844 62221680 62221680 63247360 63247360 56235696 130545912 130545912 271814576 670496731 670496731 369639876 744563395 744563395 0 136370272 269516880 951535913 1050713620 1050713620 851166750 851166750 389303312 389303312 356042538 296870000 319939122 397011290 495076678 495076678 228643694 202089472 202089472 106091160 106091160 75385488 108711960 108711960 76014272 76014272 72660712 225851264 704790772 704790772 635461896 713715828 713715828 589542676 408068614 440926870 805310720 805310720 789613669 789613669 278921474 69491768 69491768 542688864 827585187 827585187 693314919 522994372 522994372 493218222 757902838 757902838 733578417 367124970 538160176 588866321 588866321 578880081 722612340 722612340 877025739 877025739 597263708 763416241 763416241 600345911 915938076 915938076 873446954 873446954 500566302 505682670 505682670 437552132 130866778 765417046 816561351 1022011779 1060263256 1060263256 1053898960 1053898960 971090630 971090630 756058383 537943820 543277344 543277344 75223512 906002978 906002978 994050545 994050545 794624941 129540340 337794448 337794448 706871360 706871360 624432009 256642748 256642748 221514528 212109504 765771924 765771924 777847389 777847389 724165941 93349777 43124360 109712472 484056176 554567902 638847513 638847513 707002805 707002805 752563917 1014192468 1014192468 1045978369 1045978369 915006555 915006555 914728019 916590939 916590939 573446088 276715670 341493008 603348411 603348411 936665523 936665523 699974672 488934236 388024930 731117856 749994288 749994288 394426880 481403514 481403514 406432842 294174722 294174722 69206280 67898376 72100624 142031748 200244388 756728488 756728488 120466208 608970353 608970353 473728408 473728408 444645462 977875381 1057038031 1057038031 662183495 976753486 976753486 1066145953 1066145953 160101547 607990785 607990785 354167958 758563251 810645429 810645429 794944038 794944038 901917049 901917049 477152142 881282009 881282009 565185280 565185280 195388000 734405013 734405013 451353874 717882081 717882081 660678196 660678196 624501278 855669406 855669406 357087671 333397402 531490362 531490362 516892624 890995980 890995980 539531106 447326867 1057087551 1057087551 828474961 506244416 438046230 506860080 506860080 428479328 901574734 901574734 1056393103 1056393103 837984135 523086680 926204483 990628967 990628967 965977664 313337920 313337920 55311944 34627600 43106832 43106832 16876096 25201040 218808326 344380674 858952048 858952048 528751110 528751110 126536778 922118304 922118304 471573187 682349864 682349864 616175085 616175085 261309941 353395430 353395430 29905312 102963888 102963888 50727892 50727892 126489720 189930568 189930568 240700672 240700672 130648896 75833596 149785740 149785740 102825256 745092865 745092865 710183813 710183813 168835588 711461040 711461040 744037684 744037684 705042453 820929731 820929731 716698064 470363546 963739890 963739890 647639476 647639476 87101625 50459472 514975888 514975888 491133102 491133102 420821504 438440214 438440214 334553456 334553456 322158994 351142402 351142402 513346260 513346260 335930128 370616858 389707322 389707322 88277800 277546336 290456226 290456226 360277458 360277458 294860378 285319194 292816128 292816128 273190562 277288720 328017612 518932028 518932028 408016512 461240012 893374460 893374460 695734889 695734889 550249511 550249511 336684224 303570774 966334258 966334258 966702123 966702123 706814229 706814229 93725477 259178980 259178980 88203432 177428068 177428068 105383064 99771776 60389008 51941216 11511808 11511808 11257408 11410752 43015952 43015952 36899200 45693952 46400976 46400976 9751104 262048512 262048512 263853948 263853948 154190628 154190628 221033728 221033728 220206280 220206280 85182336 85182336 202037644 206308224 428872320 428872320 209632484 235750148 235750148 143828108 190530248 205656632 205656632 591905488 645532220 645532220 201513229 201794568 262202397 267193717 267193717 311150050 311150050 79884360 277303488 277303488 308491456 313001298 313001298 273949312 273540930 284781056 284781056 10021632 346086209 884447307 885660875 885660875 932935547 932935547 815096586 815096586 657034617 657034617 680165658 1058335829 1058335829 476777146 721589107 721589107 440826896 440826896 341389954 223238656 549462591 553030708 817293335 817293335 623991276 375083008 609946875 818938563 818938563 1017254223 1017254223 945215736 657871160 877793593 877793593 480734498 1054910920 1071433734 1071433734 712472997 712472997 558057732 49378688 49378688 47235792 43128912 43128912 35052048 482640026 1037624392 1037624392 919628360 895153700 895153700 597205194 858977636 952639760 952639760 764273432 764273432 442075905 152251572 263854044 263854044 254943152 219259504 223658668 223658668 241824148 241824148 183993124 183993124 100737960 268504834 341116864 1007493645 1007493645 618730698 617495947 374610107 604770944 888499716 888499716 999383306 999383306 671736837 512877150 943770469 943770469 156443636 315824086 315824086 154560112 154560112 145568208 183437312 183437312 682609889 682609889 196904612 688618661 688618661 31143200 145442592 145442592 699126625 699126625 135300804 694231777 694231777 161751040 161751040 81604296 81815632 81815632 23880064 566259568 585419217 585419217 98965992 792073352 792073352 467482713 468194956 468194956 498217802 498217802 477107052 477107052 97167144 99697288 101559620 169469952 342177821 979505559 1029058979 1029058979 112339330 299564624 299564624 789572026 789572026 781879692 763398572 952911909 952911909 809428528 809428528 284299586 754383308 882170854 882170854 654443023 873599248 873599248 690566921 807412774 807412774 773959985 536993793 430100838 430100838 402735458 298646752 298646752 50696416 34153488 377876528 377876528 68331240 131565184 131565184 51910280 91676272 111136392 111136392 42994960 43778752 85533312 85533312 136873624 162271166 523562212 542713231 543761793 543761793 395617193 907821641 907821641 381681900 381681900 437519088 752227968 1070702774 1070702774 672260613 872815106 872815106 574298161 553764896 823827234 823827234 87040576 256378044 256378044 264241404 264241404 210387036 210387036 503972596 503972596 309392384 389340656 389340656 456129362 476714594 476714594 322614454 244028554 303072020 519973728 519973728 937963540 937963540 823793187 427137454 796787152 979634583 979634583 460205987 342084364 342084364 894173446 894173446 321355907 594016689 594016689 577239473 809531666 809531666 576135816 576135816 674378497 674378497 741865992 741865992 333774953 458549696 849615892 849615892 552344785 711213266 948568141 948568141 184993036 191040800 722321920 735286352 735286352 878172382 878172382 748197638 907508443 907508443 730226702 730226702 673278308 673278308 969311940 969311940 148396263 659555738 659555738 375915193 285795842 26468354 9511488 9511488 84108178 217162804 360095732 943612952 943612952 805306371 956333800 995646091 995646091 982473462 407494413 813140663 813140663 996366391 996366391 271746940 348966090 690609026 962543271 962543271 1062616200 1062616200 816307969 370943507 370943507 439635976 1058703401 1058703401 894266787 1059508386 1059508386 1023669268 723585184 723585184 151062688 160206873 160206873 255307836 579190313 579190313 993003057 993003057 810108243 810108243 532553598 532553598 261618300 300151734 300151734 541067715 541067715 375151858 614259488 614259488 89313633 83935272 57645072 57645072 538721664 865899320 901871083 901871083 108475347 68188680 539824896 539824896 617813657 617813657 943857673 943857673 689046376 689046376 751880911 751880911 1066659184 1066659184 1044518226 509732172 406215810 193128916 1036774624 1057038399 1057038399 639231513 659072403 1002497677 1002497677 536929280 540655824 783360869 783360869 255562349 727189492 727189492 560601888 176197264 176197264 173297808 173297808 12976640 11870464 11870464 9529664 9529664 14938944 52921344 55260336 123402017 663181037 742391949 742391949 711772300 633209276 705584105 705584105 790416957 790416957 562490649 1027058531 1027058531 915944667 383462656 924960425 924960425 406866180 275040642 142739650 305960976 1020450760 1020450760 307022994 307022994 707691164 707691164 503550595 146678848 748980843 748980843 227313476 1011636173 1011636173 918689222 918689222 877953859 877953859 753191373 620029646 1035597134 1035597134 617214688 281100288 16163504 166323156 166323156 53166928 186445252 186445252 198968464 198968464 282415712 330644160 330644160 854423441 854423441 546013536 677391862 677391862 321202962 973083476 973083476 681378164 906022482 906022482 414262086 414262086 804277112 825308160 825308160 626749217 639446553 639446553 907354741 907354741 705888355 705888355 432089290 425159414 839049378 947962998 947962998 965173702 965173702 839821812 839821812 552720564 434110710 500180446 938552467 938552467 666396745 642356522 946525443 976261014 976261014 677916359 677916359 758188826 758188826 600163008 419926134 362218060 26688096 29234000 35791648 44329376 194744337 708387221 726926741 726926741 594871936 550256132 552147077 569777505 569777505 555091428 525312 761528520 761528520 164514088 164514088 109885780 71387312 302363504 638491162 638491162 977788536 977788536 428514856 945820974 945820974 698014125 951108837 951108837 692720965 975272614 975272614 675534897 464310053 898259637 898259637 910566053 1004794381 1004794381 602327731 899031238 916411677 916411677 62390697 42740434 27134112 24566688 14960160 2151744 551191616 551191616 567861889 567861889 562059824 403535713 387274408 888780294 888780294 984680764 1023017304 1023017304 698356802 624980152 624980152 572741843 726795889 751867500 751867500 103728469 730749160 730749160 701109477 607046101 607046101 576852369 576852369 573066369 573066369 11148288 42392656 42392656 552584723 552584723 1003393463 1003393463 880805578 635455406 949576448 949576448 1062435705 1062435705 830053678 841326840 841326840 706822192 559703189 168388852 642334741 778142489 778142489 644116313 307894870 664276964 906924265 906924265 895533483 650574923 670496731 670496731 369639876 744563395 744563395 267387900 494485650 494485650 951535913 1050713620 1050713620 851166750 851166750 336663848 118440208 293772624 296870000 319939122 397011290 397011290 303951378 103122698 52613424 105277056 105277056 102759960 100892424 102240272 102240272 68818440 69743368 72660712 225851264 704790772 704790772 789208672 789208672 713715828 647309932 539599220 623428905 805310720 805310720 899414700 899414700 313265490 379620706 379620706 542688864 542688864 693314919 693314919 522994372 522994372 320602120 320602120 733578417 733578417 573999872 573999872 588866321 588866321 578880081 725707184 725707184 877025739 877025739 724118684 763416241 979016690 979016690 422019411 734846567 873446954 873446954 568816705 873349651 873349651 314770640 480282438 911792402 911792402 829078767 829078767 102042320 707339696 707339696 149963105 284463328 288807714 293001506 543277344 543277344 744758696 744758696 680357190 817720951 844653339 844653339 749733009 686839705 686839705 433657832 433657832 135267716 135267716 221514528 1060471090 1060471090 607310601 1020459414 1020459414 666854768 666854768 983420322 983420322 977804815 933973860 933973860 664144953 544900345 707002805 707002805 483394254 1014192468 1014192468 1045978369 1045978369 915006555 915006555 914728019 916590939 916590939 573446088 537618193 341493008 341493008 1072955636 1072955636 935341259 935341259 70271503 789685824 789685824 216017526 317719450 459018594 459018594 415369344 300098786 300098786 277242802 69206280 67898376 72100624 85008936 86887872 756728488 756728488 120466208 120466208 13896384 473728408 473728408 444645462 638566007 638566007 509160568 755666639 755666639 759481412 1066145953 1066145953 848262601 816840003 607990785 183882716 758563251 810645429 810645429 743420928 1046360966 1046360966 477152142 477152142 559989153 559989153 134439393 195388000 195388000 26288736 174566400 377389220 475320170 475320170 330557282 425435894 425435894 532060528 532060528 408211398 408211398 403426446 516892624 516892624 501154968 501154968 519250422 519250422 1057087551 1057087551 828474961 359419720 868460432 868460432 867572595 382416090 924069146 924069146 1056393103 1056393103 883478713 883478713 926204483 990628967 990628967 965977664 862793139 297900339 807566747 807566747 608384256 608384256 370409219 539788440 576356864 576356864 570976272 570976272 419076579 439927664 439927664 922118304 922118304 991972183 991972183 723831093 616175085 616175085 410608570 353395430 353395430 540213377 540213377 17842688 440664822 440664822 242271132 448824138 448824138 276974678 447256896 447256896 463560832 463560832 11324736 11324736 9145408 36094976 36094976 34528272 194036340 540150018 616827532 783286785 783286785 964692044 964692044 225988048 384626688 470363546 963739890 963739890 920232442 920232442 824246482 1037042415 1037042415 514975888 322333522 719206995 890195478 907931163 907931163 334553456 334553456 322158994 351142402 662971599 662971599 513346260 969179481 969179481 392601656 394578042 394578042 345238344 345238344 344270922 290629848 89834032 83919072 83919072 292816128 292816128 326644136 326644136 272229856 518932028 518932028 408016512 819147459 893374460 893374460 695734889 865413152 865413152 336684224 336684224 303570774 966334258 966334258 966702123 1060113019 1060113019 867173235 841834878 841834878 379954257 63624432 63624432 41712864 48841344 60389008 60389008 54395664 54395664 52409136 50874640 17566752 43015952 43015952 36899200 36899200 46400976 46400976 216142284 216142284 166762636 261931512 261931512 154190628 154190628 221033728 346567722 346567722 205620320 276853898 276853898 202037644 202037644 428872320 428872320 295811936 289665410 345190595 811738017 811738017 621400585 617820873 617820873 617623552 724697376 724697376 602014753 677715265 677715265 170131480 311150050 311150050 106044928 277303488 277303488 268901378 34730504 273949312 273949312 273540930 284781056 284781056 6287872 8920576 8920576 4981888 4981888 40505136 40505136 21309600 7003296 293622432 293622432 108449862 344287580 443559648 476777146 476777146 471532042 302055564 341389954 341389954 223238656 405092232 405092232 377908356 330413276 386095194 386095194 336396760 336396760 480588356 480588356 403327824 848301248 848301248 483591515 483591515 236919833 1054910920 1054910920 545094784 712472997 712472997 558057732 54665364 122083512 122083512 156447748 156447748 234932808 482640026 1037624392 1037624392 919628360 895153700 895153700 597205194 858977636 952639760 952639760 583008465 442075905 442075905 52504720 27731856 49208768 49208768 44830032 44830032 35528208 172693408 172693408 50660724 25301088 17112192 268504834 507576772 1007493645 1007493645 618730698 617495947 374610107 604770944 773595004 773595004 831080288 831080288 439716168 512877150 512877150 110832536 112406808 112406808 144394564 154560112 154560112 145568208 31656724 144723808 144723808 142963396 142963396 29836292 9776128 862784 145442592 145442592 22772260 75159432 75159432 74299904 73926024 73926024 112051120 542139660 556033820 556033820 121195288 566259568 585419217 585419217 348593264 792073352 792073352 894905664 1013983884 1013983884 382025040 382025040 103293082 64401728 64401728 61175984 20018144 169469952 241702782 360396714 474616246 969040044 969040044 299564624 299564624 990548259 990548259 311303250 780931087 952911909 952911909 1032327776 1032327776 284299586 405938272 787687174 787687174 704820925 573194550 573194550 672342272 721429277 773959985 773959985 849955917 849955917 614601033 516199801 283813442 283813442 858907666 858907666 657575168 657575168 277839400 369491976 369491976 55450800 58624000 58624000 13635152 38538384 43778752 201673216 213232396 243624520 243624520 258804531 542713231 591134148 591134148 450607085 907821641 907821641 503390238 503390238 437519088 454306458 1070702774 1070702774 672260613 872815106 872815106 613685960 7026048 77999304 77999304 69207476 256378044 256378044 404624222 404624222 205834380 307859078 307859078 101196880 198101624 198101624 75794504 232181824 232181824 223660716 433271526 433271526 321486038 353071798 353071798 240699036 119619956 427137454 575026640 575026640 846459795 846459795 309388163 338034732 338034732 894173446 894173446 321355907 594016689 594016689 577239473 809531666 809531666 178323812 1062868600 1062868600 897717951 661450297 675808129 675808129 190249406 849615892 910563483 910563483 1068107079 1068107079 472288330 508250382 508250382 809711007 823416231 823416231 693757605 748197638 748197638 907508443 907508443 732281950 732281950 673278308 673278308 1010923972 1010923972 423759083 778108994 778108994 623118441 928646297 928646297 538691130 357090632 35570472 154831264 360095732 728407210 728407210 687002565 956333800 956333800 982473462 982473462 958135368 958135368 576890426 806406752 830736483 832803179 832803179 690609026 962543271 962543271 1062616200 1062616200 648049536 648049536 24475040 439635976 439635976 235073578 72926856 5409032 251938952 251938952 610370820 610370820 151062688 289502057 289502057 255307836 1038973680 1038973680 993003057 993003057 981565581 981565581 647425369 647425369 908116251 908116251 771543021 964167248 964167248 302360072 614259488 614259488 132141105 132141105 57645072 57645072 538721664 555406881 555406881 640153881 640153881 539665825 604083969 604083969 617813657 617813657 982708224 982708224 45478231 572673666 572673666 523797027 1066659184 1066659184 26048493 33555456 105781528 193128916 1036774624 1057038399 1057038399 459867197 659072403 1057169618 1057169618 250786459 540655824 783360869 783360869 698388160 727189492 727189492 560601888 138448448 139774532 173297808 173297808 38816128 13640576 69481736 69481736 9529664 67421768 129501408 129501408 120129360 239466788 239466788 92401872 191238336 207788236 240278448 240278448 790416957 790416957 423025206 1027058531 1027058531 915944667 856892087 924960425 924960425 699138195 628560525 760207149 1015832098 1020450760 1020450760 713689605 681463377 808504344 942789184 942789184 830461982 830461982 748980843 227313476 1011636173 1011636173 918689222 918689222 877953859 877953859 753191373 620029646 1035597134 1035597134 848700360 635568833 155435396 185960976 185960976 53166928 186445252 186445252 198968464 198968464 182575792 191615808 191615808 53889680 52149104 66943152 103281888 103281888 82947592 574687872 574687872 681378164 681378164 573121809 456967173 864569923 877547304 929646569 929646569 812905347 639446553 639446553 907354741 907354741 705888355 705888355 432089290 425159414 839049378 947962998 947962998 560664830 800035172 800035172 633571412 585369793 585369793 500180446 500180446 666396745 666396745 642356522 946525443 947439495 947439495 673805206 157304244 157304244 474040620 474040620 419926134 362218060 33621024 60545600 101886248 101886248 66770928 91320184 91320184 20323104 18092288 679556167 679556167 427999650 574619921 574619921 561187046 761528520 761528520 862666097 862666097 651387824 926291563 926291563 638491162 644528720 644528720 297894841 942054600 945820974 945820974 698014125 951108837 951108837 692720965 691696592 675534897 675534897 464310053 813267159 813267159 887473008 1004794381 1004794381 602327731 899031238 916411677 916411677 91435277 751342216 751342216 310506760 79708530 2151744 551191616 551191616 567861889 567861889 513217453 387274408 387274408 888780294 888780294 984680764 996574238 996574238 780311720 734842101 694165614 694165614 678535132 928637620 928637620 191067059 730749160 730749160 206964712 607046101 607046101 576852369 576852369 573066369 705262640 777069073 777069073 209315308 552584723 552584723 320321266 995633402 995633402 802291903 949576448 949576448 1062435705 1062435705 321439808 321439808 37798032 559703189 559703189 168388852 642334741 778142489 778142489 644116313 640482496 664276964 906924265 906924265 895533483 650574923 650574923 733520469 733520469 369189922 369189922 267387900 494485650 494485650 407120392 223462464 42636288 179495044 183871584 186357024 186357024 293772624 293772624 176160852 319030434 319030434 237043980 487850004 487850004 105277056 105277056 103994136 100892424 70356160 81723536 81723536 106320128 106320128 21341848 761829516 761829516 789208672 789208672 647309932 647309932 539599220 623428905 623428905 295317843 899414700 899414700 313265490 902261638 902261638 934588096 934588096 325864417 106819224 210775834 305474686 320602120 320602120 3179520 3720960 573999872 573999872 197415793 180691856 159457460 725707184 725707184 783285597 783285597 781316636 781316636 979016690 979016690 850752344 850752344 957227845 957227845 809575817 873349651 873349651 369343698 887483905 911792402 911792402 903463906 727843584 727843584 722727741 722727741 329969960 329969960 288807714 339984704 368059240 368059240 744758696 744758696 680357190 817720951 844653339 844653339 749733009 686839705 907048834 907048834 900243579 695218463 375076546 375076546 1060471090 1060471090 989890660 1020459414 1020459414 1005676796 37200153 983420322 983420322 977804815 933973860 933973860 779234270 779234270 712395448 712395448 661069346 443494400 443494400 171114496 171114496 71303304 562138336 562138336 564326752 571285632 571285632 570548241 1067094103 1067094103 1072955636 1072955636 974990871 935341259 570610189 789685824 1029230890 1029230890 570929294 459018594 459018594 415369344 300098786 548673385 548673385 616892858 616892858 1022656207 1022656207 285250125 167955040 557498212 769210245 769210245 758828872 228331116 446742870 446742870 638566007 638566007 509160568 862380486 866511219 866511219 793490433 848262601 848262601 816840003 549677505 803461417 803461417 490949665 305159866 319714588 1046360966 1046360966 940032904 441482399 105529374 2232576 661946584 661946584 181783537 179421476 174566400 377389220 473148722 473148722 330557282 425435894 425435894 532060528 532060528 408211398 408211398 403426446 214776526 208352804 175712148 461322840 519250422 519250422 411041862 411041862 940591168 940591168 868460432 868460432 867572595 368955928 924069146 924069146 900635947 900635947 883478713 1014675334 1014675334 233842044 392002713 862793139 862793139 297900339 807566747 807566747 688872294 608384256 370409219 539788440 576356864 576356864 570976272 570976272 419076579 1023101060 1023101060 473884495 749732574 991972183 991972183 723831093 254668092 410608570 410608570 242430864 242430864 540213377 540213377 52988976 440664822 440664822 242271132 448824138 448824138 276974678 447256896 447256896 463560832 463560832 258073020 258073020 775043249 775043249 1048498143 1048498143 194561652 237147486 616827532 783286785 783286785 964692044 964692044 927203351 462686838 715131683 773073124 773073124 920232442 920232442 824246482 1037042415 1037042415 324148005 322333522 719206995 890195478 907931163 907931163 201522875 156959748 156959748 427821082 662971599 662971599 411428934 969179481 969179481 392601656 394578042 394578042 345238344 345238344 344270922 290629848 341535394 341535394 360086458 360086458 339944370 339944370 530948016 530948016 499740156 499740156 281158145 819147459 823543011 823543011 555035169 865413152 865413152 595990195 85688050 81632904 909374235 909374235 768873367 1060113019 1060113019 867173235 841834878 841834878 379954257 113110872 201807700 201807700 29438528 29438528 35457280 54395664 54395664 52409136 50874640 17566752 52436736 52436736 52305456 44467936 44467936 43636304 216142284 216142284 166762636 261931512 261931512 218954432 153819360 153819360 346567722 346567722 99802240 276853898 276853898 74448264 73449864 73507080 295811936 295811936 289665410 345190595 811738017 811738017 621400585 617820873 617820873 617623552 724697376 724697376 602014753 677715265 677715265 221913964 121313068 374473416 374473416 278861530 107879832 107879832 71505232 34730504 14949376 79699648 79699648 77071944 68866112 8920576 8920576 1905728 11800704 40505136 40505136 21309600 18999424 272701440 273102978 318397130 376173978 443559648 443559648 180434934 43454036 206591520 206591520 151044132 151044132 204526336 204662212 256435160 461550644 461550644 386095194 857318041 857318041 806399673 286600130 403327824 848301248 848301248 366350934 366350934 80962952 80962952 10535232 2712640 855040 160314432 160314432 54665364 122083512 122083512 156447748 156447748 234932808 234932808 137364548 137364548 12060416 209327552 209327552 654385500 654385500 174662681 143395908 219237572 219237572 171025928 64950888 48234960 114351728 114351728 55306744 50331696 39920016 51392784 51392784 131760 12855472 176261632 207734884 507576772 507576772 434715684 434715684 839193356 839193356 715991607 957749848 957749848 913186203 913186203 913186203 333324018 830167395 830167395 339518544 327289178 327289178 123884360 145362320 145362320 191397776 191397776 583484677 583484677 147540000 566890725 566890725 9708160 136506976 136506976 691755941 691755941 140508804 694253665 694253665 146894064 146894064 542139660 556033820 556033820 133218576 775946494 833638523 926585179 926585179 555947419 430528455 894905664 1013983884 1013983884 382025040 382025040 103293082 29561672 23566592 20018144 232055772 232055772 311757491 631630185 723443877 969040044 969040044 570497273 275380128 990548259 990548259 363727850 780931087 780931087 829488426 1032327776 1032327776 693290308 814224004 814224004 812806148 759747467 690169217 573194550 607318660 628250968 765806920 765806920 849955917 849955917 781650465 781650465 594184100 705876501 858907666 858907666 851905793 921525346 921525346 625938524 625938524 143300724 107194596 111462744 111462744 210320724 210320724 201673216 213232396 243624520 243624520 475403266 475403266 591134148 591134148 450607085 579513938 579513938 503390238 503390238 281126938 454306458 454306458 390119610 390119610 290501122 613685960 613685960 7026048 77999304 78193992 109328632 252055568 252055568 404624222 404624222 251533218 307859078 307859078 160714900 198101624 203153536 220846484 408289324 487723566 487723566 433271526 433271526 321486038 276982192 176915027 888204107 888204107 848369613 848369613 685119510 48961681 538361860 673585413 673585413 338034732 226756920 651509964 286625524 449438934 449438934 197837942 413129378 413129378 178323812 1062868600 1062868600 916870807 661450297 675808129 675808129 239643473 635849932 910563483 910563483 1068107079 1068107079 472288330 508250382 508250382 809711007 823416231 823416231 60684864 166045216 711982485 711982485 703303552 732281950 732281950 536920065 165753125 1010923972 1010923972 423759083 778108994 778108994 623118441 928646297 928646297 538691130 357090632 351340880 351340880 134865924 134865924 479689844 570864214 570864214 993931089 993931089 737290214 958135368 958135368 547430721 806406752 830736483 832803179 832803179 558133005 558133005 226092972 689110661 689110661 648049536 648049536 619102976 942309904 942309904 677203673 677203673 781447773 781447773 767458809 767458809 744329109 744329109 635539037 585399656 217542860 1038973680 1038973680 551608463 256660632 981565581 981565581 647425369 647425369 908116251 908116251 771543021 964167248 964167248 302360072 101712408 599441800 630625449 630625449 644147985 644147985 557181729 68641289 778158652 778158652 640153881 657098556 657098556 639939285 639939285 350466239 982708224 982708224 394923389 286169406 830655868 853606867 853606867 1034040105 1034040105 676481030 676481030 16968133 560673032 740633897 740633897 404783136 321463602 1057169618 1057169618 797102205 797102205 150483044 146211268 698388160 698388160 276171044 431429510 431429510 378157226 378157226 58624040 351435026 351435026 93195512 72362464 4879424 67421768 129501408 129501408 120129360 239466788 239466788 12589856 191238336 207788236 207788236 172128732 172128732 665454652 665454652 886653289 886653289 856892087 856892087 633414150 699138195 699138195 630336861 760207149 1015832098 1015832098 713689605 713689605 681463377 808504344 942789184 959670536 959670536 830461982 580805004 273878098 456917528 490546478 490546478 262531452 262531452 196245616 171059752 304094510 1008599352 1008599352 848700360 635568833 155435396 185960976 185960976 149655844 147326148 22351460 9971200 149236384 645615949 645615949 587648696 587648696 573441729 573441729 645401185 645401185 578655073 578655073 574687872 658807985 714381559 714381559 697568038 864569923 877547304 929646569 929646569 812905347 245707559 132323644 465985758 465985758 373438624 289587778 183639032 624309213 630272483 630272483 579078392 579078392 560664830 633571412 633571412 585369793 637821400 637821400 539232513 537952384 537952384 5537856 271630848 271631106 426199568 426199568 305926912 302914578 244469690 172756116 227031048 227031048 63114496 60545600 101886248 101886248 66770928 91320184 91320184 53742384 53297280 679556167 679556167 427999650 574619921 999524128 999524128 592840248 592840248 862666097 862666097 651387824 926291563 926291563 643851774 644528720 644528720 297894841 942054600 942054600 215503436 88655016 18403336 30462572 30462572 30048484 67447040 539110530 812596611 812596611 748951772 887473008 887473008 993004633 993004633 402597878 402597878 928783850 928783850 783227258 751342216 659491162 956794151 956794151 927134394 927134394 116614088 344367363 344367363 896090296 910499004 910499004 631991709 631991709 887515162 887515162 780899829 862029492 862029492 1056092625 1056092625 928637620 995365010 995365010 928145060 928145060 703520229 703520229 253515928 219586320 141165804 141165804 705262640 777069073 777069073 621775041 621775041 549747753 216478976 995633402 995633402 802291903 802291903 547221376 948966400 948966400 942229820 942229820 922746843 922746843 856953048 109308224 109308224 673334788 673334788 640482496 640482496 613016649 253254324 667166728 667166728 122035272 558612348 733520469 733520469 803049585 803049585 206384268 206384268 159529728 598158269 679206240 689673357 692521780 692521780 186357024 186357024 58070096 134218260 176160852 176160852 69214552 237043980 487850004 487850004 235042968 486000512 486000512 526794174 526794174 509485254 509485254 266133162 106320128 50852000 761829516 761829516 575731813 575731813 204725773 413174538 560368296 715526493 797845629 797845629 783363189 1065148421 1065148421 902261638 902261638 934588096 934588096 791539005 791539005 326919689 119064120 119064120 140896644 703630033 703630033 592480000 592480000 572623377 572623377 592188401 724268617 724268617 783285597 783285597 781316636 781316636 286350032 286350032 850752344 850752344 957227845 957227845 809575817 873075723 873075723 369343698 887483905 887483905 903463906 903463906 727843584 727843584 722727741 722727741 508236496 919652275 919652275 414900774 368059240 368059240 901596716 901596716 288099618 288099618 674125213 1038496174 1038496174 820195407 907048834 907048834 900243579 1004110452 1004110452 548726954 600328976 985947476 989890660 989890660 1005676796 1005676796 180144508 223350154 423366438 711377645 711377645 772801375 779234270 779234270 712395448 755212805 755212805 443494400 443494400 171114496 821762843 914831451 914831451 906244160 544009601 571285632 571285632 570548241 1067094103 1067094103 725286672 974990871 974990871 129184632 570610189 570610189 1029230890 1029230890 570929294 390008056 260641240 265786538 265786538 548673385 548673385 616892858 616892858 1022656207 1022656207 285250125 167955040 557498212 769210245 769210245 758828872 228331116 446742870 446742870 272710754 436256790 438358022 862380486 866511219 866511219 830838816 793490433 673379369 575068305 549677505 803461417 803461417 573583537 573583537 657622296 657622296 940032904 940032904 878918810 878918810 983525842 983525842 661946584 181783537 179421476 86370836 40684944 102341164 221398288 253417020 360371052 399692538 399692538 182049194 80848244 295635700 295635700 187001232 187001232 51503664 121684540 188866740 203786680 686907661 749767471 940591168 940591168 813712192 851792344 851792344 858827306 858827306 820386243 903485163 903485163 607444450 1014675334 1014675334 233842044 599379778 754460229 1020977889 1020977889 431628421 688872294 688872294 418608991 392379722 392379722 155508740 522269766 522269766 302241064 302241064 1023101060 1023101060 473884495 339265290 138543552 138543552 136843520 136843520 134878212 277575176 347466570 347466570 170990224 115546896 128096784 143819496 143819496 154980132 263867016 263867016 237316624 436680976 436680976 195591232 195591232 258073020 258073020 775043249 775043249 1048498143 1048498143 194561652 328876064 911660751 911660751 683671594 1071645151 1071645151 927203351 805441539 805441539 773073124 773073124 516389389 18125286 46611264 415651902 415651902 251732028 251732028 184586802 357718146 487637550 487637550 252871224 358229002 358229002 427821082 427821082 369369446 2162688 310395200 310395200 327194688 344382562 344382562 76078362 115269336 115269336 41546570 341535394 341535394 360086458 360086458 339944370 339944370 530948016 530948016 499740156 499740156 175115318 215884806 597234756 896147057 905582571 905582571 595990195 595990195 85688050 81632904 909374235 909374235 439040478 411315022 411175436 201326604 135408641 599773856 655752976 655752976 201807700 201807700 66451360 12501376 12501376 36134416 36134416 34957072 4874368 4854912 65737264 65737264 52305456 578956849 578956849 553456321 746635341 746635341 252720856 786791345 786791345 709224597 709224597 416678630 416678630 345067529 100182149 69054088 73141896 77082146 813239427 813239427 98495746 613172555 613172555 48435411 839913721 839913721 742641665 742641665 694862525 585241836 585241836 721626648 721626648 260279381 221913964 221913964 126230592 374473416 374473416 278861530 107879832 107879832 80613440 80613440 72092808 79699648 79699648 77071944 68866112 6853312 6853312 3295488 11800704 31132864 31132864 18999424 18999424 272701440 273102978 318397130 376173978 376173978 363186380 363186380 155588788 716201192 716201192 662187592 253823768 152093196 204662212 804064220 804064220 767693037 885288684 885288684 857318041 846517432 918487106 918487106 937704230 937704230 1072286723 1072286723 712454609 712454609 579716289 674980868 674980868 680490340 680490340 190261424 190261424 55054464 248057856 248057856 30090304 340173386 1046498324 1046498324 905807672 828569212 828569212 678090502 985838941 985838941 975394632 594871789 422840488 413993633 96738368 48234960 114351728 114351728 55306744 50331696 39920016 252066208 252066208 34348316 173030288 259364204 259364204 207734884 204398804 202522798 202522798 839193356 839193356 715991607 957749848 957749848 913186203 913186203 913186203 517738206 830167395 830167395 339518544 327289178 327289178 224083656 224083656 211973456 211973456 191397776 583484677 583484677 228539464 566890725 566890725 140767620 140767620 160230560 691755941 691755941 236493676 694253665 694253665 146894064 147933572 147933572 111174752 97518312 453057044 907542707 907542707 926585179 926585179 1062476398 1062476398 575818311 521392789 1029114452 1029114452 970272949 899298968 224069316 123801868 229449764 232055772 260048196 311757491 631630185 723443877 895343024 895343024 580652553 580652553 630267801 630267801 363727850 494858174 494858174 829488426 829488426 479887414 693290308 814224004 814224004 812806148 759747467 690169217 488776704 218763524 572670212 572670212 572649905 401070529 401070529 781650465 781650465 594184100 705876501 705876501 838784229 851905793 921525346 921525346 625938524 625938524 143300724 107194596 111462744 111462744 210320724 210320724 112074344 205039876 217952204 217952204 475403266 475403266 1032649810 1032649810 571570292 732302137 732302137 228854124 228854124 487711740 511246896 742563164 943574601 943574601 290501122 337381090 337381090 50516016 357728394 357728394 337119982 337119982 503451702 503451702 319684716 512629854 512629854 769693303 769693303 600957681 581258144 790297137 790297137 487723566 487723566 407084290 407084290 1014917512 1014917512 740779148 1007769692 1007769692 848369613 848369613 685119510 535264068 538361860 673585413 673585413 607437324 226756920 859326474 286625524 449438934 449438934 197837942 413129378 413129378 54710448 962192992 962192992 916870807 636737017 661834252 661834252 889562204 889562204 635849932 786700566 1007175036 1007175036 83942472 290150506 290150506 14583744 426042662 426042662 59165760 281992968 352063434 352063434 358428330 706062238 706062238 874520877 942719751 942719751 301445194 301445194 377753786 377753786 369229912 369229912 337041930 242748280 300205958 351340880 351340880 134865924 1007977736 1007977736 570864214 570864214 993931089 993931089 737290214 790998082 957408515 957408515 547430721 908207620 908207620 579016729 757394691 757394691 245961676 811255119 811255119 648392976 619102976 619102976 942309904 942309904 923418688 923418688 848301165 781447773 767458809 767458809 744329109 744329109 635539037 585399656 152370744 152370744 117655456 591495686 996270519 996270519 404791473 33715592 208375828 208375828 1044398488 1044398488 86106855 96559544 112550168 112550168 599441800 630625449 630625449 644147985 644147985 557181729 68641289 778158652 778158652 541200513 657098556 657098556 639939285 641288325 902993062 902993062 698058477 394923389 286169406 898272361 898272361 883302376 1034040105 1034040105 676481030 676481030 543654280 560673032 768161224 768161224 491632683 671278531 671278531 1021999378 1021999378 1058181683 1058181683 754504195 810308926 943195911 943195911 746852170 431429510 378157226 378157226 58624040 351435026 351435026 93195512 74844448 21903432 40791088 52701200 76548544 148980081 725472809 725472809 629308001 587560556 111012940 188461672 188461672 162010208 665454652 665454652 886653289 886653289 825756708 825756708 255870903 609166233 609166233 630336861 630336861 692865221 950009922 950009922 142643476 142643476 12928192 160449536 959670536 959670536 927692183 927692183 471503486 728050617 728050617 682002456 782422365 782422365 631654427 513937777 530978246 530978246 344468472 344468472 268550272 4374528 141458848 149655844 149655844 147326148 139645792 139645792 564268968 645615949 645615949 587648696 587648696 573441729 573441729 645401185 645401185 578655073 653889108 721053180 1016711821 1016711821 714381559 866707296 866707296 1008277773 1008277773 555950880 538055169 360908920 327234374 358934686 440807590 440807590 289587778 205523084 624309213 630272483 630272483 579078392 579078392 159533345 159533345 649517583 993458345 993458345 942057984 539232513 537952384 537952384 5537856 271630848 271631106 323125520 323125520 376233626 487622538 487622538 172756116 227031048 227031048 161040384 52332128 52332128 35853088 51454512 51454512 53742384 53742384 53297280 5292672 5292672 146817664 146817664 999524128 999524128 598351520 598351520 594756312 594756312 628894072 628894072 584656593 643851774 643851774 713172032 864026731 1036856390 1036856390 898145490 962902211 962902211 734126325 666437549 80250124 558163989 558163989 812596611 812596611 748951772 748951772 907300891 993004633 993004633 402597878 402597878 928783850 928783850 783227258 434161702 882702961 956794151 956794151 927134394 927134394 1027131140 1027131140 724166507 896090296 910499004 1016028044 1016028044 631991709 887515162 887515162 780899829 862029492 862029492 1056092625 1056092625 678953996 995365010 995365010 928145060 928145060 703520229 703520229 511120064 219586320 266506313 727761333 727761333 682759113 682759113 621775041 621775041 549747753 355062902 910084933 910084933 913107271 913107271 887171722 547221376 695913034 942229820 942229820 922746843 922746843 856953048 396431616 396431616 79691976 20484912 1049088 1049088 78807808 701918705 701918705 795835812 795835812 629481496 629481496 641748352 803049585 803049585 14180864 7989120 33790208 598158269 679206240 689673357 692521780 692521780 141923604 141923604 69313986 377229198 476917134 476917134 245632230 245632230 17201152 235042968 235042968 486000512 486000512 526794174 526794174 509485254 509485254 266133162 50852000 50852000 576782976 576782976 575731813 596349792 596349792 204725773 560368296 715526493 797845629 797845629 783363189 1065148421 1065148421 532456515 303904042 401591144 401591144 791539005 791539005 326919689 273982826 320602120 320602120 703630033 703630033 592480000 592480000 572623377 572623377 592188401 592188401 138840448 564656481 691302500 691302500 630417708 458927269 654911849 654911849 827141283 827141283 573249970 178257944 77865228 109119824 109289496 273155218 273155218 944321991 954934407 954934407 162006252 923952056 923952056 715662107 919652275 919652275 414900774 104444036 365518883 901596716 901596716 673710394 1059456063 1059456063 1038496174 1038496174 820195407 960615554 1038689775 1038828301 1038828301 1004110452 548726954 600328976 917363642 917363642 724659800 921782935 921782935 233046373 769927398 769927398 677749643 429212003 16842784 709890176 709890176 705827349 755212805 755212805 614729819 1015811151 1015811151 978288192 914831451 914831451 906244160 292308802 14470930 545354304 545354304 926736533 926736533 976430373 976430373 949360399 986186967 986186967 873596226 482950816 482950816 390008056 390008056 312285104 127807080 127807080 31214832 34652688 63229920 63229920 57165056 57148848 55091216 33637552 34153488 34153488 77627608 77627608 113262920 113262920 109051992 885578065 885578065 342885258 335841666 1073052561 1073052561 830838816 488457323 169521492 169521492 728243465 728243465 873099802 873099802 573583537 657622296 657622296 1029033365 1029033365 878918810 878918810 983525842 983525842 750824557 750824557 616040265 572671241 572671241 889381793 1009992118 1009992118 360371052 399692538 399692538 297289054 297289054 294159326 244336198 150260016 235727772 235727772 189114636 360833130 360833130 686907661 798231253 798231253 813712192 813712192 676470273 1064997798 1064997798 858827306 820386243 903485163 946798512 946798512 313288217 402727426 402727426 764972345 764972345 1020977889 1020977889 981525954 981525954 641335684 418608991 392379722 392379722 35159504 207092848 264450300 1000371403 1000371403 1007720230 1007720230 146968773 654479522 654479522 866975527 866975527 482168583 706403301 706403301 347466570 347466570 115546896 115546896 128096784 458543958 458543958 193741928 358227022 358227022 98092432 511840350 511840350 454215924 454215924 227656140 227656140 178205940 178205940 238034032 238034032 414584964 414584964 911660751 911660751 610683568 1071645151 1071645151 815404611 805441539 805441539 245239075 19664476 44312832 44312832 49333200 781230592 781230592 792093492 792093492 558568101 558568101 487637550 710174137 710174137 358229002 358229002 336143370 618922321 618922321 419447222 994052267 994052267 355764482 103876152 103876152 367426824 373348970 373348970 274373312 321017136 321017136 312484928 312484928 23235752 70180104 159139586 493491630 493491630 369361498 175115318 580190281 597234756 896147057 905582571 905582571 468065922 468065922 202116108 170923948 214897760 439040478 439040478 411435072 411435072 201326604 135408641 599773856 655752976 655752976 93710752 94685544 94685544 78318944 53488432 53488432 56415392 56415392 52204304 6667040 65737264 65737264 35786672 578956849 578956849 553456321 746635341 746635341 252720856 786791345 786791345 709224597 709224597 416678630 416678630 761195722 903724359 903724359 875684619 875684619 813239427 813239427 98495746 613172555 613172555 348127594 839913721 839913721 742641665 742641665 694862525 225485444 778120601 778120601 721626648 753479036 753479036 155202672 208677832 208677832 105257112 105257112 109275928 109275928 80613440 80613440 72092808 67826496 67826496 60327440 60327440 25747984 43465296 43465296 64486960 64486960 46179312 306581650 306581650 65823328 102070976 355240688 375975616 375975616 363186380 693159341 693159341 716201192 752927009 752927009 253823768 443629698 443629698 804064220 804064220 767693037 885288684 885288684 846517432 881123703 918487106 918487106 937704230 1054132959 1072286723 1072286723 712454609 712454609 579716289 703360708 703360708 680490340 680490340 190261424 205522492 222826700 248057856 248057856 13057116 340173386 1046498324 1046498324 905807672 828569212 828569212 678090502 985838941 985838941 975394632 594871789 422840488 413993633 175980996 132141924 214041292 214041292 213657800 265488412 265488412 252066208 252066208 118032036 173030288 259364204 259364204 211755936 211755936 202522798 202522798 155755544 339044392 339044392 286593376 628766784 637349865 637349865 443946312 984036158 984036158 477408144 751931152 751931152 260480340 224083656 232048912 232048912 243754504 243754504 219804428 228539464 228539464 162947904 162947904 140767620 140767620 160230560 160230560 140896644 236493676 267522140 267522140 174646332 174646332 147933572 111174752 89925872 981997212 981997212 907542707 357176490 311427666 1062476398 1062476398 575818311 521392789 1029114452 1029114452 970272949 899298968 401212784 123801868 229449764 229449764 260048196 260048196 227805804 227805804 290259616 290259616 580652553 580652553 630267801 630267801 338440736 356466474 356466474 335614272 479887414 479887414 423780490 608231625 887636003 887636003 555811844 942354726 942354726 419464706 572670212 572670212 572649905 455871798 455871798 672079264 685713961 685713961 184375749 675577680 838784229 838784229 272999562 272999562 272967810 268580992 167885168 167885168 118434096 89252520 238068148 249561608 249561608 213467280 237610268 237610268 346190051 1000805773 1032649810 1032649810 981427698 1071744884 1071744884 797492349 797492349 487711740 661980736 1019265231 1019265231 943574601 634867435 634867435 572721409 572721409 576126992 576126992 337119982 337119982 503451702 503451702 319684716 512629854 512629854 769693303 769693303 1047236208 1047236208 790297137 790297137 438624116 436004330 407084290 537964424 1014917512 1014917512 740779148 1007769692 1007769692 314511616 314511616 535264068 535264068 231086316 221250348 607437324 607437324 478431942 859326474 808852849 808852849 387105464 387105464 259355921 671878149 671878149 197396724 595862164 610474593 610474593 337120320 337120320 889562204 889562204 893946218 893946218 363087081 378571216 378571216 83247424 122426560 122426560 217891761 689328693 689328693 673095349 720113109 729292752 729292752 706062238 706062238 874520877 942719751 942719751 821484096 821484096 159385696 342758632 342758632 337041930 337041930 288099033 741116987 970753515 970753515 974868062 1007977736 1007977736 439358018 850730850 850730850 1040676073 1040676073 790998082 957408515 957408515 928160240 908207620 908207620 579016729 757394691 757394691 245961676 811255119 811255119 801280072 468138486 925119478 926024507 926024507 923418688 923418688 848301165 680974917 445786257 218752044 492677524 492677524 406175400 777863471 777863471 456905350 997348650 997348650 996270519 996270519 587337777 587337777 1030918770 1030918770 1044398488 1044398488 925799136 925799136 332507800 112550168 87606024 87606024 7784448 7476096 5768832 5768832 4464896 1026646915 1026646915 811614341 788638268 788638268 538233345 641288325 1051144966 1051144966 647236185 271940959 566905790 898272361 898272361 883302376 883302376 485946702 485946702 447793348 543654280 543654280 768161224 768161224 491632683 671278531 671278531 1021999378 1021999378 1058181683 1058181683 754504195 810308926 943195911 943195911 746852170 45295568 45295568 34616768 1448448 104208128 104208128 74844448 74844448 21903432 19277856 98708416 99868816 148980081 725472809 725472809 629308001 618939516 468973975 188461672 751709414 751709414 622662300 707411030 707411030 177399226 825756708 825756708 255870903 761416276 761416276 1065691263 1065691263 673186053 950009922 950009922 8525088 8525088 12928192 159755776 159755776 164335666 927692183 927692183 471503486 728050617 728050617 682002456 782422365 782422365 973093644 1051005356 1051005356 530978246 480396354 930219177 930219177 52330256 52330256 174226468 174226468 152502864 139645792 182749652 564268968 564268968 657420824 657420824 144589312 144589312 143580228 142445904 41361284 41361284 653889108 721053180 1016711821 1016711821 204521530 866707296 981690885 1008277773 1008277773 824349283 824349283 360908920 327234374 358934686 440807590 446886900 446886900 205523084 205523084 154010280 883958320 927543675 927543675 460527229 314703990 649517583 993458345 993458345 993348865 993348865 38982021 714102932 714102932 997350275 997350275 981057696 981057696 455621940 487622538 487622538 319680388 320424068 320424068 161040384 57387728 81029576 81029576 61396544 100757992 100757992 7880960 7880960 537006663 537006663 412635718 587759861 587759861 826958964 826958964 598351520 1067850111 1067850111 628894072 628894072 584656593 255765706 16448 713172032 864026731 1036856390 1036856390 898145490 962902211 962902211 734126325 666437549 560611520 744874117 744874117 749890532 749890532 795222428 795222428 907300891 985317336 985317336 303711292 340544684 348060760 348060760 226805868 324346345 882702961 896406608 896406608 753802423 753802423 1027131140 1027131140 724166507 859487536 859487536 1016028044 1016028044 571994822 981655823 981655823 757137678 712892092 712892092 828529155 828529155 859966010 859966010 433104677 584085586 697438478 697438478 511120064 697704829 697704829 771411268 771411268 727761333 682759113 682759113 608718861 608718861 355062902 355062902 910084933 910084933 913107271 913107271 887171722 338240778 338240778 213415242 330090356 333446450 333446450 328898610 396431616 396431616 211943684 211943684 143131816 381857818 381857818 701918705 701918705 795835812 830989378 830989378 989458823 989458823 751667369 751667369 698216037 834008165 1060069968 1060069968 203383564 146110664 91351112 248540280 248540280 141923604 69313986 377229198 476917134 476917134 245632230 245632230 17201152 17201152 290478208 358297688 358297688 462761126 462761126 436398158 436398158 100911616 100911616 152497012 683471428 717218869 717218869 596349792 596349792 196205397 78735370 277949002 324387266 324387266 556058132 676590213 676590213 546139950 546139950 401591144 401591144 56637338 326447714 326447714 273982826 320602120 320602120 21309600 26741248 41993984 177218064 179430416 179430416 587850801 587850801 126551109 34375692 705521165 705521165 630417708 458927269 854430842 854430842 827141283 827141283 981599630 981599630 381282138 967404640 967404640 184290902 537531393 944321991 954934407 954934407 457840116 923952056 923952056 715662107 642061000 633800137 1058376809 1058376809 419830105 195802436 909124096 909124096 1059456063 1059456063 850530499 812596611 337064498 960615554 1038689775 1038828301 1038828301 430473930 890890842 890890842 917363642 917363642 724659800 921782935 921782935 751950495 940696071 940696071 816892701 816892701 887284576 887284576 738535935 738535935 728237493 869927182 869927182 1015811151 1015811151 978288192 28259584 538838611 538838611 302056768 14470930 568328320 568328320 926736533 926736533 976430373 976430373 949360399 986186967 986186967 873596226 659632464 199834770 360196366 360196366 352002360 352002360 127807080 578035417 578035417 624444554 624444554 1025119343 1025119343 333587085 550585600 557457457 560141777 722864768 722864768 214176426 214176426 109051992 885578065 885578065 342885258 335841666 1073052561 1073052561 386064968 98554052 169521492 169521492 728243465 728243465 873099802 873099802 389732154 389732154 121350790 1029033365 1029033365 758742669 620942861 636776704 636873705 750824557 750824557 616040265 572671241 572671241 889381793 1009992118 1009992118 473999564 473999564 274254696 297289054 297289054 294159326 244656732 244656732 235727772 235727772 189114636 360833130 360833130 684739537 798231253 798231253 721718265 597214869 676470273 1064997798 1064997798 736811843 736811843 888983499 946798512 946798512 313288217 402727426 402727426 764972345 764972345 251773364 279494788 981525954 981525954 126224504 16977928 84095016 308396504 308396504 300606982 300606982 1000371403 1000371403 1007720230 1007720230 680588881 654479522 906570910 906570910 881138207 482168583 706403301 977801502 977801502 1059811490 1059811490 0 59823408 458543958 458543958 193741928 358227022 447821900 447821900 511840350 511840350 454215924 454215924 198300632 198300632 22505216 229450472 422839434 422839434 479307652 479307652 429050380 465590448 610683568 984650851 984650851 815404611 313016376 438622501 851571507 851571507 181770356 181770356 132350248 891117070 891117070 792093492 792093492 558568101 558568101 239811728 710174137 710174137 209064836 209064836 216007168 618922321 618922321 419447222 994052267 994052267 355764482 103876152 103876152 367426824 373348970 373348970 274373312 402392376 402392376 375470082 312484928 9011538 843938313 843938313 401605626 401605626 119545856 94636866 580190281 645991497 645991497 935558530 935558530 468065922 468065922 202116108 954208820 954208820 222636204 222636204 411435072 411435072 278661504 81004034 100000032 100000032 94464296 93710752 94685544 94685544 78318944 53488432 53488432 56415392 56415392 52204304 38935328 38935328 52634128 52634128 34410928 9576960 44072960 44089680 172156400 185332788 745438120 745438120 221199660 221199660 88938892 67373064 761195722 903724359 903724359 875684619 875684619 7653763 6427008 71906304 71906304 348127594 348127594 346034592 923126314 923126314 1068630069 1068630069 284627861 778120601 778120601 540026488 753479036 753479036 155202672 379236274 379236274 271441392 342765136 348029962 370379850 380169242 380169242 348065098 305376026 355725504 355725504 105963648 64823808 64823808 63704304 64486960 64486960 46179312 306581650 306581650 65823328 102070976 355240688 395061688 395061688 724478639 727384109 727384109 653923688 752927009 752927009 513836736 443629698 443629698 505866892 505866892 407031942 814301796 814301796 258549988 881123703 881123703 679735365 838982281 1054132959 1054132959 118936039 140542660 140542660 570985952 703360708 703360708 22810272 41954928 152118296 205522492 222826700 222826700 157725668 88919208 105569456 122176164 122176164 252215968 252215968 99354952 117449272 169877792 220202540 220202540 264427740 264427740 175980996 175980996 157991536 214041292 214041292 213657800 265488412 265488412 208802748 168965796 118032036 118032036 148507648 171256596 267106940 267106940 155827044 420358864 467351286 562246757 562246757 912860571 912860571 789578301 797705165 797705165 984036158 984036158 749170837 751931152 751931152 677613152 677613152 232048912 232048912 243754504 243754504 219804428 219804428 150994980 162947904 162947904 10162660 8314752 5806080 4025344 4025344 155030712 250323804 788748593 788748593 239546948 965134023 965134023 792904879 1015057650 1015057650 784384028 340279424 340279424 332398752 332398752 22094496 33563330 276824112 276824112 98707320 401212784 401212784 93526080 93526080 52371312 80372600 204539528 227805804 227805804 290259616 290259616 371393770 371393770 330827634 92410906 467965855 936978611 936978611 335614272 364093599 364093599 126366115 608231625 887636003 887636003 555811844 942354726 942354726 419464706 405949150 405949150 554379509 554379509 507602172 719034971 719034971 685713961 340512394 178961542 178961542 237570199 315198809 579654740 714120860 714120860 241690828 241690828 123024080 89252520 238068148 249561608 249561608 213911644 237610268 237610268 346190051 1000805773 1000805773 827721594 981427698 1071744884 1071744884 797492349 797492349 458566500 661980736 1019265231 1019265231 678562711 678562711 634867435 572721409 572721409 576126992 576126992 16908288 16908288 316673344 316673344 280625758 330960482 463077380 533639492 533639492 1047236208 1047236208 319169426 319169426 0 0 209463948 537964424 537964424 201773317 205115264 205115264 477102990 477102990 1008960399 1008960399 499638080 701423322 701423322 829051581 829051581 793940021 793940021 808852849 808852849 387105464 387105464 318450890 1059343856 1059343856 863135780 595862164 811009128 811009128 771091437 1036707717 1036707717 675941634 893946218 893946218 628232137 560353352 378571216 83247424 122426560 122426560 217891761 689328693 689328693 673095349 720113109 729292752 729292752 699944868 699944868 673235749 673235749 553984097 821484096 821484096 23579202 342758632 342758632 74144162 305695188 305695188 741116987 970753515 970753515 974868062 981871622 981871622 439358018 850730850 988098004 1040676073 1040676073 625831174 625831174 928160240 928160240 69093451 67371008 4719744 853105104 883316895 883316895 1045052760 1045052760 801280072 468138486 925119478 926024507 926024507 920248800 646549100 646549100 272609297 764169469 764169469 776036997 777118365 777118365 777863471 777863471 456905350 997348650 997348650 806761088 704828756 704828756 613045089 1030918770 1030918770 610423704 585108206 925799136 925799136 332507800 4633472 5366400 7784448 7784448 604252688 621020721 621020721 608911369 1026646915 1026646915 811614341 788638268 788638268 538233345 548017473 1051144966 1051144966 647236185 271940959 566905790 826616596 826616596 534723663 964727455 964727455 606908078 840780998 840780998 312740178 830812530 830812530 151520292 470421664 491259054 491259054 460927292 460927292 446899352 446899352 340401680 445520982 478349406 478349406 411640902 504300990 504300990 134712360 392350202 392350202 49030344 38532240 12842000 65112656 98708416 110802912 110802912 104231240 100845648 618939516 618939516 468973975 183500244 751709414 855755712 855755712 707411030 707411030 177399226 636538413 636538413 102828288 778084773 778084773 1065691263 1065691263 419694630 419694630 153879650 59392660 155082692 155082692 138888388 165581220 165581220 333614768 333614768 278911104 320733216 320733216 489466898 826413219 958529923 1007681543 1051005356 1051005356 480396354 480396354 930219177 930219177 52330256 52330256 174226468 174226468 152502864 136350528 182749652 725240536 725240536 657420824 657420824 639966432 639966432 143580228 142445904 41361284 705779208 705779208 102473237 34479120 11543872 11543872 671662148 981690885 981690885 816649747 939804004 939804004 319319392 948548468 948548468 813803842 446886900 446886900 300756737 571597329 571597329 883958320 927543675 927543675 460527229 314703990 723901698 723901698 502490668 993348865 993348865 38982021 714102932 848168629 997350275 997350275 981057696 981057696 455621940 450288356 450288356 319680388 460631136 460631136 42735552 57387728 332539362 332539362 278733664 321411072 321411072 273184898 273184898 537006663 537006663 412635718 587759861 587759861 826958964 826958964 275794912 1067850111 1067850111 586062321 586062321 418932318 255765706 146581316 258896412 258896412 81205416 206747756 227064288 227064288 178320704 187488344 187488344 560611520 744874117 744874117 543162368 543162368 795222428 795222428 241000820 241000820 218497412 218621972 218621972 203489792 255236272 255236272 290862008 527507548 896406608 896406608 346562976 608736552 608736552 560124321 86656137 859487536 859487536 882475400 882475400 384996559 981655823 981655823 536971026 712892092 712892092 828529155 828529155 859966010 859966010 622148141 584085586 584085586 1017456085 1017456085 855345221 697704829 771411268 771411268 215343392 215343392 264521680 776277460 776277460 621091189 621091189 860988770 860988770 694605913 694605913 685768965 9437773 0 0 0 147891443 327013683 458153142 458153142 300936541 660158313 660158313 778056120 778056120 381857818 587903236 587903236 696779816 830989378 830989378 989458823 989458823 751667369 751667369 698216037 834008165 1060069968 1060069968 310839384 430285078 430285078 409727532 409727532 87572612 13670560 19989792 19989792 11535232 21038688 423231620 423231620 184714656 290478208 290478208 190320944 190320944 145237908 305992724 305992724 178532626 100911616 152497012 683471428 717218869 717218869 189830913 34249536 27727430 435289574 435289574 422670854 324387266 556058132 676590213 676590213 546139950 546139950 471208174 471208174 73112030 36625680 36625680 62652584 87147600 97178112 97178112 40349696 16850976 25228064 168429316 168429316 587850801 606427704 606427704 51882241 705521165 705521165 205883788 237008028 854430842 854430842 765787557 776029574 981599630 981599630 381282138 967404640 967404640 184290902 537531393 537531393 901809210 901809210 858469881 858469881 990381111 990381111 642061000 633800137 1058376809 1058376809 419830105 319855712 909124096 909124096 808328451 839584144 839584144 812596611 293639204 293639204 218752044 890921348 890921348 971379809 971379809 890890842 925983594 925983594 920766195 885128669 885128669 857774122 940696071 940696071 816892701 816892701 887284576 887284576 738535935 963715239 963715239 869927182 869927182 552322184 873783562 873783562 54822928 327340146 327340146 302056768 13115666 568328320 568328320 844814131 844814131 826351779 607194275 583801688 583801688 216273448 659632464 659632464 175586196 360196366 360196366 352002360 352002360 118427474 578035417 578035417 624444554 624444554 1025119343 1025119343 333587085 550585600 557457457 560141777 722864768 722864768 214176426 386803152 386803152 359611818 342199340 168174070 308992370 308992370 386064968 386064968 411095246 434474662 434474662 406521612 239131664 106481304 106481304 104335112 72926856 68637448 513018462 513018462 473163092 384232774 384232774 365039850 365039850 525497016 525497016 135389700 948503140 948503140 193276608 246559562 1008567885 1008567885 546357825 546357825 683969768 683969768 244656732 244656732 232328564 177784404 177784404 141404912 422841252 422841252 134294214 815534066 815534066 665865879 986098507 986098507 528049063 322176416 322176416 43916880 43916880 316878096 342475266 342475266 289498278 659072250 659072250 880887666 880887666 677946496 1015199849 1015199849 1018321803 1018321803 835127681 835127681 807803104 300606982 164267428 164246212 164246212 680588881 680588881 484565454 906570910 906570910 881138207 296117046 296117046 977801502 977801502 1059811490 1059811490 121296696 128228928 159966492 159966492 152796728 152796728 447821900 447821900 91305270 89728680 64499336 84767096 156818232 179726292 190453428 229450472 422839434 422839434 479307652 479307652 390052176 390052176 1048839680 1048839680 984650851 549983156 313016376 776364197 851571507 851571507 696328885 696328885 189280500 891117070 891117070 725958844 725958844 235968569 576986248 745986957 745986957 539394700 209064836 209064836 216007168 216007168 127942912 127942912 103821672 103821672 385911072 385911072 310493530 60385282 64766672 639226947 920250075 920250075 782725837 859895407 859895407 663138113 843938313 843938313 401605626 401605626 36438416 337249800 337249800 645991497 645991497 935558530 935558530 401688275 918676160 918676160 954208820 954208820 816449355 821694755 821694755 605864929 605864929 872753163 872753163 827427361 621037728 20285728 3521280 3631872 15631904 16824032 16824032 13373568 13373568 3486240 38935328 38935328 52634128 52634128 552072577 568383937 568383937 565381596 246864732 257704108 750000145 750000145 221199660 798373034 798373034 470501775 671603491 811261095 811261095 604670371 604294153 736578301 736578301 97697248 584186617 584186617 63050129 549527745 923126314 923126314 1068630069 1068630069 284627861 202832864 32382432 238562016 238562016 171876576 550915237 701092576 701092576 562159713 351171203 348029962 370379850 541578392 915951435 915951435 612501216 612501216 355725504 105963648 64823808 64823808 63704304 33818640 34736688 34800768 34800768 53028144 53028144 17309968 9122880 395061688 395061688 724478639 727384109 883823560 883823560 368713219 513836736 513836736 520328484 520328484 371844378 235089948 1004896288 1004896288 887544267 258549988 873308416 943783104 943783104 411793071 85674118 5378688 5288576 38371968 38371968 38437056 145398292 145398292 187138260 187138260 149283108 144961860 192601216 200574624 200574624 179441508 136972864 122176164 122176164 252215968 252215968 99354952 99354952 169877792 220202540 220202540 264427740 264427740 81883184 81883184 157991536 157991536 42338372 93332520 93332520 29966944 74481984 74481984 73401216 73401216 148507648 171256596 267106940 267106940 306975150 420358864 467351286 562246757 562246757 912860571 912860571 789578301 797705165 797705165 159652128 743647560 749170837 749170837 623487020 677613152 677613152 161929880 161929880 76903948 76903948 5712032 135534592 150994980 153783936 154946048 154946048 159299584 159299584 157761664 4025344 155030712 238329244 788748593 788748593 239546948 965134023 965134023 792904879 1015057650 1015057650 958580198 833475873 832696163 852623606 852623606 701706981 759210090 1043518726 1043518726 814596611 569441298 202909580 118554036 221749948 221749948 246714780 254150666 365517126 365517126 310630754 303822354 669192577 669192577 429577830 394109946 467965855 936978611 936978611 664834949 705344428 705344428 10608960 394449798 410227002 410227002 638665088 638665088 134283776 136315012 136315012 671088861 671088861 693635021 986862692 986862692 719034971 743835213 743835213 164732486 49419216 237570199 315198809 579654740 714120860 714120860 241690828 241690828 159429764 192363444 192363444 176565284 99356136 213911644 213911644 142606544 505687088 505687088 827721594 827721594 267510791 232310508 729915392 1039772213 1039772213 636147177 636147177 999592398 999592398 678562711 678562711 325584306 123544744 123544744 51713440 60632688 328082714 328082714 316673344 316673344 281085086 330960482 511656381 903995883 903995883 788184468 816320000 816320000 434844791 478686786 478686786 353820040 541308936 618353957 618353957 548586792 201944449 477102990 477102990 1008960399 1008960399 499638080 701423322 701423322 829051581 829051581 793940021 793940021 583493721 583493721 340414656 281679042 318450890 1059343856 1059343856 863135780 560261792 811009128 811009128 811373237 1036707717 1036707717 675941634 642549241 628232137 628232137 560353352 73621504 73621504 85974952 85974952 73585032 66431680 91791128 91791128 71866496 76951680 76951680 56275504 56275504 42664480 33097376 33097376 279037570 283148706 286838120 357305514 357305514 98706794 336621666 955537422 955537422 619844553 493768911 656561636 981871622 981871622 951368868 855464387 988098004 988098004 719590786 589049277 589049277 550935000 550935000 912927372 912927372 641016217 853105104 883316895 883316895 1045052760 1045052760 645566202 645566202 1026553033 1026553033 920248800 920248800 646549100 646549100 272609297 764169469 764169469 776036997 777118365 777118365 657389840 657389840 350365536 318035386 380364618 381282138 704828756 704828756 613045089 596693161 576848689 185630757 7640256 71347456 82316552 82316552 538405000 610429576 610429576 611320713 611320713 621020721 621020721 608911369 553648416 553814571 553814571 339792014 339792014 311925454 548017473 548017473 93446760 690196859 690196859 286661170 826616596 826616596 916712760 964727455 964727455 1044768880 1044768880 840780998 312740178 830812530 830812530 453247260 453247260 380579712 380579712 339738762 488883054 488883054 421631360 421631360 445520982 478349406 478349406 411640902 504300990 504300990 134712360 392350202 392350202 49030344 122249560 122249560 112290552 112290552 110802912 110802912 558031649 599075697 599075697 128056120 115743192 115743192 333812201 869405427 869405427 633641601 622084144 273943170 636538413 636538413 309625292 778084773 778084773 830474354 830474354 835121334 835121334 241356911 440569880 440569880 857740604 944618116 944618116 1047273196 1047273196 809096080 382199380 421694768 421694768 659054962 826413219 958529923 1007681543 1007681543 537135630 294521356 278830760 207278282 70244516 45952848 48629648 48629648 5409280 1331840 0 0 725240536 725240536 639385912 639385912 792915200 792915200 698714865 698714865 579149976 705779208 705779208 219918764 468875965 626834605 838200291 838200291 602949328 602949328 596269315 939804004 939804004 319319392 948548468 948548468 813803842 60564530 276650368 300756737 571597329 571597329 558782081 955122856 955122856 1067992465 1067992465 723901698 723901698 676351712 502490668 278361540 278361540 287309346 848168629 848168629 945889671 962774854 962774854 978217797 978217797 817575747 817575747 595097874 460631136 159386132 412222338 412222338 332539362 278733664 321411072 321411072 273946660 408036992 408036992 407550340 410787200 410787200 306513538 304783760 304783760 275794912 275794912 293765632 548853843 548853843 907644722 907644722 883153163 883153163 832939937 821171896 821171896 817890979 817890979 626280870 205528192 772719344 772719344 93154721 767672772 767672772 543162368 7525248 96129704 223382852 223382852 218497412 172146860 203489792 203489792 255236272 255236272 290862008 547756982 547756982 1003370623 1003370623 670016697 896068360 896068360 581774673 581774673 181852545 814013006 814013006 838897617 984261387 984261387 672031002 645155224 688096440 688096440 576361616 687947908 687947908 622148141 642009683 642009683 1017456085 1017456085 855345221 347341056 347341056 786634613 786634613 387691752 219754053 776277460 776277460 627873141 899812031 899812031 1040814640 1040814640 685768965 685768965 407278662 409783680 526936410 526936410 287383842 327013683 458153142 458153142 300936541 660158313 660158313 778056120 778056120 130270276 705776904 733818741 733818741 112063485 73588824 7625816 305826754 305826754 382881344 382881344 310040466 337810968 337810968 310839384 430285078 430285078 409727532 409727532 468284886 468284886 351523402 514981044 514981044 340586214 423231620 423231620 330278384 330278384 277472322 349832922 349832922 43990608 320912432 320912432 178532626 27835760 61437248 61437248 37331264 44175696 44175696 142725476 161669188 435289574 435289574 422670854 303104834 339456488 343932810 343932810 431240896 431240896 471208174 471208174 451671510 451671510 275960706 321937576 321937576 97178112 97178112 40349696 16850976 25228064 25886720 25886720 13408 729558656 729558656 101986340 543398953 543398953 587460773 587460773 719845756 719845756 597825809 803805625 803805625 80094485 77824264 142608912 177474132 542114579 542114579 395362945 395362945 573780753 858469881 858469881 990381111 990381111 381728579 982174813 982174813 280643695 312401490 319855712 391024186 655173274 808328451 808328451 313595584 621810174 621810174 677570336 770303469 890921348 1010727050 1010727050 971379809 639142600 925983594 925983594 920766195 885128669 885128669 857774122 857774122 607126281 414573116 570542630 570542630 960676084 960676084 963715239 963715239 672211461 807113306 807113306 318075139 353571768 353571768 340822602 327340146 607179369 607179369 615366185 615366185 844814131 844814131 731269888 731269888 583801688 583801688 216273448 103373712 594031620 594031620 581315376 186437172 186437172 513827162 513827162 80877568 327257266 327257266 347884194 347884194 311436290 382292992 382292992 130454344 111316320 78956088 131632864 131632864 386803152 386803152 359611818 300167168 300167168 303174162 303174162 284617136 315345494 411095246 434474662 434474662 406521612 239131664 106481304 106481304 104335112 96454024 96454024 513018462 513018462 473163092 384232774 384232774 873398624 1067845279 1067845279 855814197 545903494 948503140 948503140 160633941 246559562 1008567885 1008567885 546357825 546357825 683969768 683969768 88891968 13421760 45370628 177784404 493111562 493111562 422841252 422841252 134294214 815534066 815534066 665865879 986098507 986098507 528049063 322176416 322176416 43916880 43916880 316878096 342475266 342475266 289498278 659072250 659072250 880887666 880887666 677946496 1015199849 1015199849 1018321803 1018321803 835127681 835127681 807803104 547018305 671475717 671475717 224818981 424772456 484565454 726392888 726392888 117568693 824575692 824575692 247351215 101582464 68702864 188024948 188024948 162771488 128228928 136398980 136398980 66061296 62586944 62586944 304152816 304152816 299966946 95692042 67155872 177778824 179726292 190453428 199472084 223689860 223689860 404493056 404493056 464961148 503947146 1048839680 1048839680 1067189850 1067189850 344346687 776364197 776364197 182790540 696328885 696328885 189280500 607529745 607529745 153238952 157497760 157497760 576986248 745986957 745986957 539394700 434768358 495348166 495348166 134579496 101897104 283564482 301125650 387369834 388272674 394399866 394399866 362840074 337026824 639226947 920250075 920250075 782725837 859895407 859895407 663138113 663138113 216578093 1017082140 1017082140 757207341 757207341 487856899 268570626 244711532 652645936 899733153 899733153 918676160 918676160 609878665 609878665 816449355 821694755 821694755 605864929 605864929 872753163 872753163 827427361 621037728 74649920 132255784 132255784 120832560 63658368 9837120 13373568 13373568 57875680 57875680 50688816 46395600 34190416 552072577 568383937 568383937 726014133 726014133 594896289 790801421 790801421 593444529 798373034 798373034 470501775 671603491 811261095 811261095 604670371 604294153 736578301 736578301 97697248 584186617 584186617 63050129 549527745 712759124 712759124 158544256 611504549 611504549 745024661 745024661 633818608 633818608 692213013 706501200 706501200 701092576 562159713 351171203 125094696 78166808 541578392 915951435 915951435 612501216 612501216 55715416 5316736 8886784 22094528 59886192 59886192 26273360 34800768 276143122 276143122 278421714 278421714 9122880 44306448 44306448 34146576 317262672 883823560 883823560 285737800 1016679413 1016679413 1006387685 1006387685 371844378 235089948 1004896288 1004896288 887544267 168690692 698689865 943783104 943783104 827010577 1024936191 1024936191 129331975 179683140 179683140 582308064 582308064 569164736 187138260 187138260 151001556 151001556 192601216 200574624 200574624 179441508 148016824 148016824 54542512 155222664 155222664 57198000 264282584 264282584 172565652 142561792 45236040 45236040 142074428 142074428 241605844 241605844 216271320 164092832 215655436 256896284 256896284 227015052 237080848 237080848 210779644 210779644 130748656 202512738 306975150 378044930 378044930 272680770 405276880 448790742 448790742 275516802 306712018 306712018 681189440 681189440 180505520 180505520 162978660 162978660 93739200 161929880 161929880 130263096 195509524 663562265 663562265 170207508 556379701 556379701 172657796 159299584 159299584 709713049 709713049 224352432 553904785 553904785 17816612 4583936 141782148 141782148 271320320 290038080 958580198 958580198 833475873 832696163 852623606 852623606 796005309 796005309 1043518726 1043518726 814596611 569441298 466343780 254228072 478390750 478390750 246714780 254150666 625854611 634328201 634328201 691986213 691986213 684865786 439088406 394109946 943718511 943718511 602490160 664834949 705344428 705344428 624148805 947064891 947064891 410227002 638665088 638665088 823190306 823190306 421561093 671088861 769791740 769791740 986862692 986862692 701026848 743835213 743835213 90384509 589056180 676906629 676906629 190980876 190980876 229688172 229688172 136131104 159429764 192363444 192363444 176565284 99356136 211625232 211625232 120924974 505687088 1054990815 1054990815 792200013 792200013 765509997 231555924 1039772213 1039772213 636147177 636147177 723727578 804956963 804956963 437674791 325584306 123544744 559364769 559364769 558382704 328082714 328082714 116786504 331103682 331103682 486734626 511656381 903995883 903995883 598033643 816320000 816320000 471933198 478686786 478686786 395837912 541308936 618353957 618353957 548586792 223994060 445821426 445821426 530033618 530033618 413526342 286884236 207618358 414350720 414350720 92422952 738214568 106264920 106264920 15913920 49472320 49472320 1005224696 1005224696 560261792 560261792 99901601 762404514 878888114 878888114 434816271 521917026 521917026 495717486 449842872 113771736 73621504 73621504 85974952 85974952 73585032 55075496 91791128 91791128 71866496 76951680 76951680 29969408 10756864 11326912 11326912 6472000 11863232 283148706 286838120 357305514 357305514 98706794 336621666 955537422 1044301858 1044301858 551682456 656561636 656561636 951368868 951368868 855464387 283217920 585183556 585183556 100853905 839387716 839387716 550935000 912927372 912927372 641016217 460856864 660827855 660827855 406884864 406884864 645566202 645566202 1026553033 1026553033 915168000 807193923 807193923 880558612 907187312 907187312 491381934 497115542 497115542 324206326 324206326 350365536 350365536 318035386 380364618 381282138 381282138 274244056 117601400 117601400 116937080 125078200 125078200 103155944 85558088 81488328 538405000 610429576 610429576 611320713 611320713 540686848 540686848 747308728 747308728 667062973 591655089 570999825 570999825 173345308 530628990 530628990 93446760 690196859 690360375 690360375 460038581 424901761 916712760 916712760 344006668 1044768880 1044768880 847632474 377940051 944008411 944008411 1022248073 1022248073 744543063 744543063 735992754 525598830 488883054 516591980 763759893 763759893 554965112 683973428 683973428 42749136 85929536 98551544 126087288 126087288 44701008 122249560 122249560 112290552 112290552 625179657 625179657 609033241 599075697 724579661 724579661 307039290 358802604 421609813 869405427 869405427 1056997439 1056997439 598999614 316703002 311525730 309625292 352338659 657736229 830474354 830474354 835121334 835121334 321651976 440569880 440569880 857740604 944618116 996979200 1047273196 1047273196 809096080 382199380 421694768 421694768 659054962 669591033 669591033 654505161 606077193 137543969 278830760 278830760 207278282 190510260 190510260 187301600 179165652 58929796 58929796 168026176 168026176 150700820 585633937 585633937 594148560 792915200 792915200 698714865 698714865 579149976 544252348 253065953 822807395 822807395 626834605 838200291 838200291 603497200 603497200 810425475 810425475 138283255 586464992 586464992 171082773 59264672 59264672 33532544 205830828 205830828 558782081 558782081 955122856 955122856 1067992465 1067992465 646063865 676351712 676351712 299359939 434364622 730889283 730889283 576522944 576522944 571980304 536920065 864601203 978217797 978217797 817575747 817575747 713467463 690321813 716707476 716707476 570106901 839460564 969631479 969631479 826821140 980444049 980444049 839636866 407550340 410787200 410787200 409275014 409275014 304783760 269170304 270535696 304876818 548853843 548853843 907644722 907644722 883153163 883153163 832939937 821171896 821171896 817890979 817890979 626280870 205528192 772719344 772719344 552674241 767672772 767672772 277413071 176259692 205054724 205054724 167794712 167819840 201133276 201133276 28166728 28166728 125829440 466056668 547756982 547756982 1003370623 1003370623 670016697 896068360 896068360 581774673 581774673 181852545 814013006 814013006 838897617 984261387 984261387 796004634 645155224 105153433 721403348 721403348 687947908 687947908 617853101 642009683 642009683 900898972 900898972 1026029871 1026029871 347341056 1066012691 1066012691 387691752 219754053 71100233 67768588 724202852 899812031 899812031 1040814640 1040814640 591508124 407278662 407278662 409783680 602330753 602330753 703342984 703342984 117624888 717693072 717693072 126323165 132379128 163661152 844793026 864640771 864640771 733818741 733818741 378524075 378524075 906402195 907017243 907017243 382881344 382881344 560725248 891292042 891292042 4194304 4194304 0 184591788 348662034 468284886 468284886 351523402 514981044 514981044 340586214 396568306 396568306 330278384 330278384 277472322 349832922 349832922 87384756 320912432 320912432 146109260 146109260 259757788 259757788 804947285 804947285 686514885 686514885 162599173 162599173 273445952 276615042 670155739 670155739 799402365 799402365 798258785 757409289 361895986 903068302 1049748063 1049748063 784648413 784648413 654527588 62461800 31535904 31535904 21687552 46392528 191553956 191553956 44746497 729558656 729558656 545261568 543398953 543398953 587460773 587460773 575013344 597825809 597825809 803805625 803805625 80094485 77824264 532947114 532947114 542114579 542114579 395362945 482480462 482480462 1017787844 1017787844 277972167 243615248 601491790 982174813 982174813 280643695 280643695 313410560 391024186 391024186 360595128 489037565 489037565 708055059 708055059 677570336 770303469 770303469 1010727050 1033547128 1033547128 805693443 805693443 620537802 505376260 505376260 555761696 829423786 829423786 607126281 918874618 918874618 604062463 960676084 960676084 318902322 288210241 312481992 807113306 807113306 818883075 818883075 353571768 340822602 291813504 613520168 613520168 615366185 622838305 622838305 73107457 731269888 731269888 544604724 544604724 60501396 33502321 594031620 594031620 581315376 186437172 714699795 714699795 612643106 612643106 783462210 783462210 347884194 680526849 680526849 859578160 859578160 733874962 111316320 52183648 131632864 132047954 132047954 20969834 89997112 300167168 300167168 90060506 20396832 19972896 101584904 101584904 38542360 4981000 59904624 127980296 127980296 67409928 67302784 235129984 320016723 583531355 952238995 1064514495 1064514495 507042902 873398624 1067845279 1067845279 855814197 545903494 513802590 983108648 983108648 557132577 488442944 814288488 814288488 93930360 129017448 222097360 222097360 213700428 75098624 193060980 493111562 493111562 489750633 715440477 766660211 766660211 152706604 840866827 953452617 953452617 419325420 677195425 866074835 866074835 760969243 760969243 979499265 979499265 809808080 452161684 452161684 280019778 268484752 151683712 440051216 440051216 421203730 307571890 284638146 284638146 547018305 547018305 671475717 671475717 342496650 990467819 990467819 726392888 726392888 276326153 824575692 892791399 892791399 284060843 465690870 979538544 979538544 729915937 45873776 136398980 558118945 562113697 759765960 759765960 418534244 304152816 299966946 155911972 207262404 229669536 229669536 151569444 199472084 223689860 223689860 404493056 882088352 882088352 767184712 580836945 580836945 1067189850 1067189850 859445043 859445043 827405712 666118384 666118384 115435728 88187248 50516288 109712472 125908000 141108612 141108612 145921760 145921760 159728192 159728192 434768358 495348166 495348166 134579496 78090298 283564482 301125650 387369834 388272674 394399866 394399866 362840074 337026824 125126160 125126160 119747216 119747216 130288352 130288352 76287048 156277586 177597678 1017082140 1017082140 810190291 757207341 487856899 717230829 717230829 652645936 899733153 899733153 469915275 372377472 46685722 331352162 331352162 51121210 368838400 368838400 356946706 118130842 46280832 46280832 76565138 339996874 392351850 392351850 395659018 395659018 389931328 104360584 104360584 89003592 89003592 277533600 303072272 303072272 9224192 134270032 553814144 726014133 726014133 594896289 790801421 790801421 786485757 593444529 555248817 97032520 97032520 118706464 273563008 313438466 313438466 333712570 369251442 369251442 340023352 88736768 88215720 37839000 674261581 674261581 328670096 611504549 611504549 745024661 745024661 633818608 633818608 692213013 706501200 706501200 495870806 217804840 533983998 533983998 432784314 355552384 355552384 374093858 839398531 843584513 843584513 13351088 43312176 43312176 59886192 59886192 26273360 47877712 276143122 276143122 318808066 318808066 119821408 352495346 352495346 321469801 811856259 811856259 467600438 621145275 1016679413 1016679413 1006387685 1006387685 908380443 103192659 42207312 838849932 838849932 940570746 989881388 989881388 736596500 827010577 1024936191 1024936191 301228130 286442260 568917444 582308064 582308064 569164736 157788964 23805248 151001556 151001556 158197392 158197392 23142816 23142816 148016824 154119972 154119972 155222664 155222664 57198000 264282584 264282584 172565652 147018196 146807172 226965712 226965712 142074428 241605844 241605844 216271320 164092832 215655436 256896284 256896284 227015052 237080848 237080848 210779644 210779644 160172036 160172036 245826456 378044930 378044930 717489991 968369818 968369818 1006581011 1016407579 1020078655 1020078655 681189440 967036066 967036066 805351993 703591253 703591253 570545412 256524320 226369452 130263096 195509524 663562265 663562265 170207508 556379701 556379701 172657796 142483332 153421220 709713049 709713049 224352432 553904785 553904785 548758089 51697920 885414251 885414251 365715151 554303875 554303875 312354834 312354834 604176868 794894781 794894781 796005309 796005309 318244818 528830398 528830398 466343780 466343780 254228072 478390750 478390750 184292350 202109964 625854611 634328201 634328201 691986213 691986213 684865786 439088406 96469224 943718511 943718511 608924680 608924680 42639577 624148805 624148805 947064891 947064891 240160900 138560156 138560156 823190306 823190306 421561093 402726918 769791740 769791740 277350166 448267874 778195344 778195344 283186434 283186434 981001528 981001528 953081031 340106093 190980876 229688172 229688172 123912436 123912436 166861616 220596636 220596636 179605484 211625232 231221896 231221896 392249445 1054990815 1054990815 792200013 792200013 765509997 151610697 360563473 573632426 956350503 956350503 771073299 819751874 819751874 1064835699 1064835699 834344913 647768312 559364769 558382704 64954128 86456832 97723026 331103682 331103682 486734626 486734626 339171148 182842724 562407620 562407620 471933198 954066628 954066628 472982676 395837912 293142968 482166784 482166784 223994060 223994060 222317044 272897042 272897042 403710550 403710550 286884236 224529564 414350720 450761147 450761147 738214568 106264920 106264920 15913920 49472320 49472320 1005224696 1005224696 646197504 543568328 543568328 608651305 878888114 878888114 434816271 136053524 136053524 126375304 126375304 113771736 49283856 23390976 109380064 131645912 131645912 58358576 58358576 51675184 47193920 61506272 61506272 10595648 4058880 7219072 7219072 22504768 27687104 27687104 6345728 88080168 88080168 70409640 348551918 746163922 1044301858 1044301858 1025904414 971041308 971041308 797255805 644178285 608297097 283217920 585183556 585183556 100853905 881195298 881195298 829844377 278979055 87557928 460856864 460856864 660827855 660827855 760664469 1032825709 1032825709 546436710 161365100 915168000 915168000 807193923 807193923 880558612 907187312 907187312 503679116 281651858 205048076 361919688 361919688 109450440 118172240 118172240 109643600 70329096 76248448 76248448 117601400 117601400 116937080 125078200 125078200 103155944 85558088 81488328 557575424 557575424 546619744 546619744 540066561 614407504 614407504 747308728 747308728 667062973 591655089 570999825 1012017408 1012017408 26214480 19664160 19663872 241973387 690360375 690360375 460038581 423809190 423809190 439192301 573315507 627918247 847632474 847632474 1015947464 1015947464 944008411 1022248073 1022248073 744543063 744543063 735992754 525598830 292198186 516591980 763759893 763759893 554965112 683973428 784859225 784859225 739679373 709443096 129559864 129559864 108844008 100803440 102769528 109034656 109034656 625179657 625179657 609033241 543151433 724579661 724579661 660969488 660969488 421609813 713105493 713105493 1056997439 1056997439 598999614 377978760 377978760 297894564 297894564 613691684 613691684 629736454 629736454 471869787 321651976 33554448 172020640 199237940 199237940 996979200 996979200 977609419 977609419 482593972 421213734 405637174 796810496 894047403 894047403 441242875 833753861 833753861 143005764 143660608 161096756 190510260 190510260 187301600 179165652 58929796 58929796 168026176 168026176 725243872 725243872 555810864 555810864 64225376 64225376 79900872 111283152 111283152 142626848 142626848 822807395 822807395 321946560 321946560 595947121 603497200 603497200 810425475 810425475 459938455 987598452 987598452 701118197 572561936 58770066 293596386 320524578 320524578 273862724 273862724 493766560 496745718 513867864 559493383 841286027 841286027 851207026 851207026 837035842 730889283 730889283 381852353 709045433 709045433 536920065 315046098 390529128 390529128 599773156 713467463 713467463 690321813 716707476 716707476 690692480 839460564 969631479 969631479 826821140 980444049 980444049 839636866 281713666 277634368 403032324 409275014 409275014 336731154 370379546 370379546 304876818 304876818 304876802 271322370 57544754 69341472 121634832 121634832 69223200 22442160 34652688 949498089 949498089 429860062 627253577 627253577 552674241 355231386 568529088 871967397 871967397 779594640 778043805 778043805 608174356 201133276 201133276 28166728 62954800 104749008 466056668 466056668 474850888 474850888 467535954 249292986 12191552 550530112 550530112 542427777 243795036 277480588 682764121 682764121 815464696 815464696 796004634 680577136 680577136 721403348 721403348 147254360 243912704 260215320 302293504 302293504 900898972 900898972 1026029871 1026029871 984847524 1066012691 1066012691 446989636 203297356 546064900 546233409 724202852 724202852 714793284 714793284 591508124 591508124 234341608 693662780 751406477 751406477 602330753 703342984 703342984 583015605 717693072 717693072 654394625 654394625 539103489 844793026 934382850 934382850 733780429 780635828 780635828 606464458 906402195 907017243 907017243 764726439 954314773 954314773 891292042 891292042 273332488 46081024 13951192 180879900 348662034 407979968 407979968 282523526 282523526 142201792 147213904 147213904 38146256 46274704 46274704 361128288 361128288 123770888 117692928 147420724 147420724 146109260 146109260 481220146 481220146 804947285 804947285 686514885 686514885 595737622 595737622 560444543 329517897 670155739 670155739 799402365 841295440 841295440 817631043 361895986 903068302 1049748063 1049748063 784648413 784648413 654527588 378670264 84136064 60600384 29551808 46392528 191553956 191553956 579528256 712528581 712528581 647247908 647247908 251691869 237236508 136607768 595722576 595722576 554569889 134391813 134391813 663904264 663904264 672137792 672137792 338883116 338883116 282333320 956981428 956981428 1017787844 1017787844 358757824 243615248 601491790 601491790 681070235 681070235 388286778 640081521 825940850 825940850 307232768 489037565 489037565 708055059 708055059 557330436 287310114 336750608 890614032 1033547128 1033547128 805693443 805693443 620537802 991171357 1029720510 1029720510 1040523283 1040523283 707053845 918874618 918874618 604062463 645939260 927242734 927242734 288210241 302551515 314708178 576530563 818883075 818883075 290562434 290562434 291813504 613520168 613520168 690301221 690301221 622838305 539049984 724454464 724454464 722739744 722739744 704981013 17893941 25888256 25888256 176387345 176387345 714699795 714699795 612643106 925165090 925165090 783462210 960225992 960225992 680526849 859578160 859578160 733874962 74679488 62162480 62162480 132047954 287777088 354489856 369100992 369100992 319951410 115816920 388500712 388500712 354096994 354096994 374408082 374408082 313684672 127980296 127980296 67302784 67302784 235129984 492344074 583531355 952238995 1064514495 1064514495 507042902 811010024 811010024 149562380 855049710 855049710 513802590 983108648 983108648 557132577 805424704 814288488 814288488 546735115 797172007 797172007 222097360 269060834 269060834 193060980 228634528 228634528 489750633 1068796685 1068796685 766660211 965790319 965790319 953452617 953452617 941274825 941274825 866074835 866074835 760969243 760969243 979499265 979499265 975601043 975601043 1055016091 1055016091 172209110 90627972 476595756 476595756 879963291 879963291 551553922 545595650 278266560 680788610 682036611 682036611 417211717 990467819 990467819 448390998 96841249 276326153 372558618 892791399 892791399 711017221 711017221 979538544 979538544 729915937 728019024 703068645 558118945 562113697 759765960 759765960 856101608 856101608 903245160 903245160 360201768 229669536 229669536 142755304 144196396 205303332 205303332 273463328 1007628424 1007628424 1038957540 1038957540 682822072 687291333 829388976 859445043 859445043 827405712 666118384 666118384 187194388 168723764 661184657 661184657 86582568 141108612 141108612 575950848 611455881 611455881 565061760 29230184 71845856 358188224 358188224 57339728 57339728 34168880 34168880 4120320 269517824 269517824 33953538 95473136 606784595 878842251 878842251 729805397 835005031 835005031 719281321 719281321 773065245 773065245 810190291 810190291 494243000 494243000 717230829 717230829 310779134 290999080 936396720 936396720 878578714 328730298 331352162 331352162 51121210 85460290 293996736 293996736 40104352 46280832 46280832 76565138 339996874 392351850 392351850 395659018 395659018 389931328 104360584 104360584 89003592 89003592 277533600 303072272 303072272 53500320 153716000 556993940 588700209 588700209 53585057 715933864 786485757 786485757 260211549 83102664 97032520 175235988 239441588 239441588 191273276 187620660 333712570 369251442 369251442 340023352 88736768 417808770 417808770 431258182 431258182 499206168 499206168 492151344 25477216 46419376 46419376 15240416 571254052 571254052 495870806 495870806 217804840 533983998 533983998 517262664 444073878 294126690 805580024 839398531 843584513 843584513 26933248 43312176 63424704 63424704 52429104 52429104 47877712 47877712 36389968 318808066 318808066 119821408 352495346 352495346 321469801 811856259 811856259 577046592 621145275 621145275 867994482 867994482 908380443 908380443 849627965 849627965 838849932 838849932 940570746 989881388 989881388 377864628 822307802 822307802 321345635 301228130 286442260 598386516 598386516 179598705 167433652 162209728 23805248 681704856 681704856 577593812 741535116 741535116 692921024 237081888 774063936 774063936 794035180 794035180 790043072 751932109 585299024 202215760 147018196 248585620 248585620 226965712 126013560 125515704 125515704 104997584 148774596 148774596 174768848 174768848 141695360 175489088 175489088 162931232 162931232 160172036 160172036 151784484 143131716 143131716 717489991 968369818 968369818 1006581011 1016407579 1020078655 1020078655 408844902 967036066 967036066 805351993 703591253 703591253 570545412 256524320 226369452 48274348 92951856 92951856 25606664 4058880 20533280 137219712 142483332 142483332 138949120 47612928 171653088 233572252 233572252 548758089 548758089 354768902 885414251 885414251 437257730 859537505 859537505 446753862 312788816 941826194 941826194 610345353 688413106 688413106 543297544 146799088 208437592 208437592 121915532 117912208 471489544 471489544 151151656 202109964 355427516 355427516 260083970 9122880 38819224 70965000 433920590 433920590 625429644 625429644 608924680 608924680 247472980 553984668 553984668 869915087 869915087 791724045 611450928 611450928 724771193 724771193 674444080 564204324 891324324 891324324 854066262 854066262 778195344 778195344 950065001 950065001 981001528 981001528 969809127 482661417 137865984 161667136 173726212 173726212 123912436 166861616 220596636 220596636 179605484 146835776 231221896 231221896 331932026 331932026 751370313 970206887 970206887 919543546 919543546 835529955 671447077 956350503 956350503 771073299 819751874 819751874 1064835699 1064835699 834344913 647768312 232384236 235364380 235364380 218546920 218546920 71118600 186674720 186674720 171831060 124698600 124698600 205924352 277352064 282331842 954066628 954066628 408019015 263168 526336 152123980 152123980 68821696 44835888 152159760 272897042 272897042 403710550 425576416 425576416 290196642 277610720 450761147 576231320 576231320 105183377 604188681 604188681 604188681 608296994 629277609 646197504 646197504 543568328 543568328 742534188 742534188 141502341 22619808 74077200 106959344 407787936 407787936 49283856 49283856 23390976 109380064 131645912 131645912 58358576 88100872 88100872 71352456 71352456 48399744 27381272 10181888 10181888 11542848 22504768 27687104 27687104 15786048 88080168 88080168 70409640 348551918 746163922 746163922 1025904414 1025904414 1000749912 1000749912 797255805 728990958 1007350157 1007350157 957139747 284364373 1013337687 1013337687 881195298 829844377 278979055 30973222 581454592 1054613201 1054613201 861806591 760664469 1032825709 1032825709 546436710 161365100 248966808 249462552 249462552 218892696 218892696 34079760 503679116 503679116 339543296 339543296 361919688 361919688 104817234 888099329 888099329 637596681 821447811 821447811 574735065 583732745 604310209 604310209 346343754 817565898 817565898 539784008 270610824 557575424 624704297 626024872 626024872 563874209 614407504 614407504 684215906 684215906 553405374 590643594 590643594 1012017408 1012017408 428079952 947318037 947318037 809382658 809382658 476131760 476131760 490659630 490659630 439192301 573315507 627918247 627918247 550482308 1015947464 1015947464 126224445 528384 4358148 138986628 138986628 172491924 172491924 168345728 109838868 168823896 388633914 388633914 337983584 784859225 784859225 739679373 709443096 129559864 129559864 108844008 108290360 108290360 109034656 109034656 66060056 573451776 573780753 579328833 579328833 43570769 660969488 660969488 338969184 363121002 363121002 92588136 92588136 256021280 377978760 377978760 276677770 70867272 613691684 613691684 957361728 957361728 621094953 537406504 33554448 154320912 858464572 961239568 961239568 915147867 977609419 977609419 482593972 421213734 405637174 929961339 929961339 894047403 659631641 837151144 885533923 885533923 344383516 974927889 974927889 207017924 54808400 54808400 138495120 138495120 59824292 17727440 725243872 725243872 555810864 555810864 64225376 64225376 79900872 111283152 111283152 9775680 4243456 5013636 135056388 180666400 180666400 163880224 175954960 175954960 135191556 135191556 459938455 987598452 987598452 701118197 572561936 58770066 293596386 320524578 320524578 177206818 177206818 493766560 496745718 496745718 281309772 841286027 841286027 851207026 1004890073 1004890073 917627771 917627771 957942816 957942816 709045433 795929676 864587507 864587507 557918310 948156772 948156772 445985955 324303522 723979042 949355335 991432871 991432871 143133925 445418498 445418498 137886468 279140866 414212996 414212996 418218694 418218694 285027718 311927698 336731154 370379546 370379546 369474505 558789041 558789041 600335004 600335004 589983149 652789949 748433115 891196184 891196184 806095395 984578548 984578548 429860062 627253577 1043428020 1043428020 355231386 568529088 871967397 871967397 779594640 778043805 778043805 608174356 190163508 99717292 132306636 390875316 390875316 335479592 335479592 138735469 174463380 563157073 563157073 543267492 550530112 550530112 542427777 243795036 301324360 856389549 856389549 239499647 594931601 594931601 680577136 680577136 659589132 480388406 442443924 358986072 358986072 331798770 480693058 614530638 614530638 371753043 984847524 984847524 586285611 446989636 446989636 203297356 546064900 546233409 546233409 67263497 20747592 85248552 85248552 564979720 564979720 693662780 751406477 751406477 595203488 595203488 583015605 583015605 633553225 633553225 654394625 654394625 539103489 575668384 934382850 934382850 764576460 780635828 780635828 606464458 606464458 573361425 696053793 764726439 954314773 954314773 516129476 516129476 273332488 46081024 43582464 180879900 180879900 322213488 322213488 282523526 454960732 495913002 495913002 190386834 454505078 454505078 52767142 361128288 361128288 290141794 287100450 117692928 39284280 171213696 171213696 481220146 481220146 304316330 304316330 36038928 37527552 681006296 881498517 881498517 448006998 501222780 850444456 850444456 841295440 841295440 817631043 101050392 360769778 360769778 16884864 17302560 301990088 378670264 378670264 84136064 60600384 29886528 29886528 32556000 32556000 579528256 579528256 592696696 647247908 647247908 251691869 639767796 746696165 746696165 684510405 684248388 697156073 697156073 663904264 663904264 672137792 672137792 185938576 185938576 305383237 956981428 956981428 821192131 915477240 915477240 483201815 317262166 624166918 681070235 681070235 388286778 640081521 825940850 825940850 68289184 856037816 859183923 859183923 452067584 268537858 906557958 906557958 336750608 308281490 305138842 305138842 466160478 466160478 991171357 1029720510 1029720510 1040523283 1040523283 1000156791 888152810 888152810 365003292 645939260 927242734 927242734 336496844 336496844 143056152 273435848 346163666 613812928 621957385 621957385 1028947780 1028947780 753993129 753993129 690301221 675343040 539049984 602537025 602537025 722739744 722739744 704981013 18289728 540150848 564310532 673395808 673395808 171454720 171454720 514255408 925165090 925165090 346428992 960225992 960225992 715961686 715961686 489560327 218118984 177515924 194346144 194346144 138120484 287777088 354489856 369100992 369100992 447472530 447472530 388500712 388500712 382345354 354096994 374408082 374408082 313684672 351863986 351863986 336863976 336863976 269517704 492344074 492344074 470971504 512439390 512439390 668336130 873935659 873935659 640691131 855049710 855049710 661858717 740868361 942134567 999797094 999797094 805424704 764062210 546735115 797172007 797172007 134066040 512781416 512781416 93160030 228634528 228634528 201638441 1068796685 1068796685 722896683 965790319 965790319 651265736 651265736 941274825 941274825 782898307 444425456 444425456 213651276 240922440 240922440 975601043 975601043 1055016091 1055016091 453804054 453804054 476595756 476595756 879963291 879963291 551553922 578110913 578110913 680788610 682036611 682036611 417211717 305930114 316612356 316612356 749533965 1060528056 1060528056 964987277 964987277 711017221 925408666 1037122995 1037122995 728019024 728019024 703068645 448407108 260836414 260836414 567558657 856101608 856101608 903245160 903245160 360201768 33153512 144577184 144577184 144196396 421732738 421732738 490411272 1007628424 1007628424 1038957540 1038957540 682822072 687291333 687291333 125678165 157903940 653348640 653348640 259352717 187194388 168723764 661184657 661184657 96477224 52822912 52822912 575950848 611455881 611455881 565061760 415095302 415095302 406243264 406243264 57339728 423390018 423390018 413249606 271298566 404395072 421415746 421415746 294657312 606784595 878842251 878842251 729805397 835005031 835005031 719281321 719281321 773065245 773065245 908389770 908389770 575218833 494243000 85741228 956302475 956302475 876874884 936396720 936396720 878578714 328730298 373362992 373362992 52568218 3611626 372145042 372145042 302564386 302564386 289836176 72479728 72479728 107028888 127331664 127331664 64014240 41494416 62456032 62456032 51398512 304764048 304764048 55235410 52528272 53500320 153716000 727370292 727370292 672972977 697963029 697963029 138167857 172132848 172132848 78860500 69766472 175235988 239441588 239441588 191273276 399038776 399038776 416341762 416341762 402653190 343288658 417808770 417808770 431258182 431258182 499206168 499206168 492151344 68607336 84595752 84595752 192956801 548167751 548167751 1000156374 1000156374 141828411 691924773 691924773 517262664 444073878 294126690 881465732 881465732 619450635 589910240 589910240 138413296 63424704 63424704 63113632 52429104 43032912 43032912 35709504 54917424 63566512 63566512 61298272 14308352 19960288 19960288 15543744 706562476 706562476 651781881 326108082 326108082 268443544 344590434 849627965 849627965 723569688 723569688 709311720 734042192 734042192 227091564 227091564 101652500 29624544 29624544 4795488 598386516 598386516 179598705 162209728 162209728 99664872 681704856 681704856 577593812 741535116 741535116 692921024 782286689 782286689 774063936 794035180 794035180 790043072 751932109 585299024 202215760 107801500 248585620 248585620 164176892 117182684 117182684 232918208 232918208 148774596 148774596 174768848 174768848 141695360 175489088 175489088 174326820 174326820 57477520 57477520 189333808 189333808 460711986 460711986 158789424 331261568 443163734 443163734 293751906 293751906 332171606 332171606 460595328 460595328 237843276 237843276 67213568 100555988 100555988 79017840 100951600 789763125 789763125 37088016 672040853 672040853 171843348 171843348 157566384 575510545 575510545 256547924 235458793 235458793 389719598 438074448 703387464 703387464 437257730 945823875 945823875 997724788 997724788 941826194 941826194 610345353 1023821240 1023821240 865960688 200095920 200095920 163019600 163019600 155592800 471489544 471489544 258762138 328237049 610687241 898254101 898254101 934744443 934744443 553705804 482901698 433920590 516324222 834740394 834740394 789921805 789921805 580692064 553984668 869915087 869915087 791724045 611450928 611450928 724771193 724771193 674444080 564204324 891324324 891324324 854066262 875090689 875090689 1016068630 1016068630 950065001 948619691 969809127 969809127 840336429 840336429 823695968 173726212 223186340 231550924 231550924 132492632 132492632 146835776 146835776 148130432 174594168 331932026 331932026 273690298 970206887 970206887 919543546 919543546 835529955 712606336 671447077 1257984 1051797256 1051797256 101529031 102969488 112080900 227569100 232384236 232384236 235364380 235364380 218546920 218546920 426505638 426505638 186674720 171831060 799471679 799471679 696518757 476711962 573521175 573521175 606002002 1055371265 1055371265 886540467 1032882989 1032882989 763523369 763523369 713503973 256002513 676637420 717033124 717033124 425576416 290196642 277610720 264685820 576231320 576231320 105183377 604188681 604188681 604188681 608296994 629277609 831468736 831468736 759607459 1026120780 1026120780 761284663 141502341 22619808 19617408 81567342 407787936 407787936 27337736 92816744 92816744 27004512 27004512 34981976 34981976 132449346 336205370 336205370 84588322 84588322 27381272 19522848 33241056 362086506 362086506 32382432 413867470 413867470 92225448 99491816 99491816 94854056 230777176 235805724 235805724 177209940 1000749912 1000749912 728990958 728990958 1007350157 1007818141 1007818141 808193588 1013337687 1013337687 147404234 270199808 270199808 7112194 581454592 1054613201 1054613201 861806591 290899251 16826400 464349460 464349460 183136468 243979356 260883104 260883104 68309760 68309760 34079760 101873168 101873168 339543296 339543296 336080658 121664016 104817234 888099329 888099329 637596681 821447811 821447811 574735065 583732745 604310209 604310209 346343754 817565898 817565898 539784008 676800165 693278117 693278117 767734733 767734733 607522684 607522684 569564385 684215906 684215906 553405374 590643594 590643594 1004160375 1004160375 879806976 947318037 947318037 809382658 809382658 940639273 940639273 521142641 490659630 427854885 427854885 499222752 574924824 813703817 1007104080 1007104080 944643207 944643207 653789354 997197381 997197381 953680784 180371678 180371678 210765236 210765236 388633914 388633914 337983584 84619384 1600000 303829178 303829178 385997978 385997978 74866624 108290360 108290360 102023440 102023440 566608033 662874801 662874801 654971961 579328833 274322417 1055739022 1055739022 735519447 735519447 436409075 348391454 619060102 619060102 413172521 934914026 934914026 1038624530 1038624530 1010046538 1010046538 957361728 621094953 537406504 353663372 459107080 858464572 961239568 961239568 915147867 915147867 835637432 18161920 410619124 461971830 929961339 929961339 545698954 659631641 837151144 885533923 885533923 440950876 974927889 974927889 207017924 24348388 30189600 138495120 138495120 59824292 43966032 572379336 580948221 725631256 725631256 650121217 536939017 236044661 120440441 664917465 664917465 180767117 805833155 805833155 493725112 493725112 715730941 715730941 724541285 724541285 876167572 876167572 523062854 325806148 181568640 42573776 145137220 145137220 47313664 44565376 34678288 160466724 160466724 154928612 154928612 112948041 18131105 537135105 549061581 1004890073 1004890073 917627771 917627771 957942816 957942816 699154498 795929676 864587507 864587507 557918310 948156772 948156772 197523732 540880405 723979042 949355335 991432871 991432871 709924880 542496416 863025396 960212295 960212295 954047954 414212996 418218694 418218694 136914180 136914180 136847360 104737688 369474505 369474505 558789041 558789041 600335004 600335004 589983149 652789949 748433115 891196184 891196184 806095395 984578548 984578548 237015108 237015108 1043428020 1043428020 961796689 1028004015 1028004015 205832243 33689616 16781360 379667094 490210991 747758157 756198725 801502680 801502680 652415850 689415971 1072631382 1072631382 950320636 563157073 563157073 543267492 404572196 591532209 619873441 653838297 854082058 856389549 856389549 239499647 594931601 594931601 173674519 439630591 480388406 480388406 442443924 358986072 370534938 370534938 480693058 614530638 614530638 371753043 154297192 154297192 635666812 730682353 765364232 765364232 134401296 145413444 240301885 240301885 719446469 719446469 241246620 564979720 564979720 599074880 604066168 604066168 553914368 554616136 554616136 554478984 266951956 266951956 202265040 4333016 84096096 575668384 575668384 170923549 764576460 764576460 614776904 539232513 573361425 573361425 33664001 14366400 46861636 180096852 180096852 183451092 183451092 282668032 282668032 181735186 447285138 447285138 154166450 354107300 454960732 495913002 495913002 291647654 454505078 454505078 476440974 512932816 512932816 290141794 287100450 136319756 136319756 171213696 171213696 103010648 103010648 985431511 985431511 943537042 786283077 681006296 881498517 881498517 448006998 448006998 850444456 850444456 832692579 234920250 161196824 1001919070 1001919070 732581393 825338389 999947367 999947367 559289910 22088736 22088736 9251904 29886528 63586992 63586992 52147008 52147008 573288657 592696696 592696696 125904592 125904592 639767796 746696165 746696165 684510405 684248388 697156073 697156073 564689064 614670601 614670601 548773960 84083560 46158320 305383237 640362423 653477337 703672549 915477240 915477240 483201815 317262166 624166918 624166918 584919256 543782244 543782244 765982012 765982012 1009779577 1009779577 859183923 859183923 808453971 808453971 906557958 906557958 830463642 830463642 972442130 972442130 1002277542 1002277542 528803342 752181980 752181980 701886146 1000156791 1000156791 809469047 808113411 136975620 207756584 207756584 306238598 453851639 459354359 459354359 305973267 948324867 948324867 621957385 621957385 1028947780 1028947780 753993129 753993129 679507360 679507360 590424500 602537025 602537025 145225253 44384448 85454008 85454008 540150848 564310532 801401469 801401469 631413339 631413339 942599938 943529895 943529895 627626359 682504396 939584783 939584783 1065617535 1065617535 572733806 177515924 206766648 206766648 138120484 254763280 254763280 252488144 252488144 447472530 447472530 108074176 950416277 950416277 844328918 874489799 874489799 930865131 930865131 570267329 336863976 684852600 724585948 724585948 778450554 1058068771 1058068771 885564459 871378634 873935659 873935659 891371406 992354878 992354878 661858717 740868361 942134567 999797094 999797094 764062210 764062210 537297152 537297152 3410688 144736644 512781416 512781416 154928228 202393608 459823186 459823186 332399750 192961252 80508122 302512146 575781066 885146625 885146625 291075217 344485908 344485908 439379440 439379440 610778793 610778793 1025369611 1025369611 197786360 385158906 385158906 726871581 756316801 756316801 617347340 445176166 404487554 310690065 578110913 578110913 551163585 542892096 273028224 269224962 455009492 455009492 711058712 749533965 1060528056 1060528056 964987277 964987277 701368539 925408666 1037122995 1037122995 414189136 414189136 448407108 448407108 260836414 260836414 185336290 9617920 7728000 9570432 65499600 65499600 23294944 144577184 144577184 135512964 421732738 421732738 490411272 490411272 818781623 818781623 1055449496 1055449496 377925530 588102842 588102842 584074323 780371140 780371140 731930684 731930684 164451540 27646224 96477224 96477224 52822912 52822912 82011616 97529448 97529448 89027136 415095302 415095302 406243264 406243264 14601378 423390018 423390018 413249606 271298566 404395072 421415746 421415746 294657312 144424512 252095924 636227812 636227812 582097505 199317465 193510492 218343944 243868764 243868764 908389770 908389770 821579744 822396963 822396963 956302475 956302475 876874884 214560002 76810630 350355968 350355968 373362992 373362992 75831656 123740728 372145042 372145042 302564386 302564386 289836176 67598458 329372554 341045898 341045898 354342362 400236320 400236320 115706328 115706328 130118328 304764048 320010930 320010930 276396032 557303457 557303457 727370292 727370292 672972977 697963029 697963029 588251697 588251697 538184373 499682478 499682478 483856491 924775766 924775766 762260817 762260817 796277095 796277095 416341762 990891847 990891847 246923554 238675856 254069052 254069052 518146468 518146468 330091890 330091890 316719570 316719570 192956801 824456422 824456422 1000156374 1071730072 1071730072 717284720 717284720 434153641 1009697252 1009697252 881465732 881465732 619450635 589910240 589910240 138413296 59152384 63113632 63113632 19396896 43032912 43032912 35709504 54917424 63566512 63566512 61298272 14308352 19960288 19960288 15543744 729106496 733326165 733326165 566553945 572564196 572564196 575988283 575988283 724883277 724883277 506920028 411299974 798078800 798078800 494672797 830603234 830603234 853810226 853810226 320870113 63313264 63313264 50537252 50537252 26905612 99664872 200497112 200497112 117093364 112214864 112214864 562508160 782286689 782286689 264350544 264350544 752205952 752205952 50761920 12864816 71490376 78692744 78692744 560055341 560055341 48381780 622409088 721209529 721209529 680886369 564521313 675956836 675956836 653588976 653588976 145618316 174326820 174326820 65012208 57477520 189333808 189333808 460711986 460711986 333586784 331261568 443163734 443163734 293751906 293751906 332171606 332171606 460595328 460595328 147532324 67213568 67213568 178553016 178553016 153930092 153930092 789763125 789763125 225504044 672040853 672040853 171843348 171843348 157566384 575510545 575510545 256547924 744894216 744894216 389719598 438074448 703387464 1028197912 1028197912 945823875 945823875 997724788 997724788 684691339 492130919 260810296 1023821240 1023821240 865960688 827889019 895534984 895534984 163019600 155592800 117176768 186563836 258762138 328237049 610687241 898254101 898254101 934744443 934744443 553705804 482901698 291336970 247624340 834740394 834740394 789921805 789921805 726599752 773455937 773455937 348883675 830317654 830317654 774155049 716226664 716226664 596694901 447764152 447764152 392860469 337675853 875090689 875090689 1016068630 1016068630 916099944 918180400 918180400 826022504 840336429 840336429 823695968 182341140 223186340 231550924 231550924 132492632 132492632 95199456 95199456 148130432 174594168 174594168 444220334 444220334 93058104 123608760 242536294 278272578 712606336 712606336 190024469 1257984 1051797256 1051797256 101529031 102969488 102969488 56504080 56504080 52170288 21254304 53740160 134586656 134586656 426505638 426505638 207716740 505727034 799471679 799471679 696518757 476711962 573521175 573521175 606002002 1055371265 1055371265 1000363157 1032882989 1032882989 763523369 763523369 713503973 256002513 676637420 717033124 731963644 731963644 375981112 264685820 264685820 653312937 653312937 67244160 71303304 774389760 774389760 616654204 616654204 831468736 831468736 759607459 1026120780 1026120780 761284663 823368660 823368660 932134011 932134011 765650580 463862672 154091044 154091044 137347360 87601024 75255176 75255176 39902856 132449346 336205370 336205370 123778304 123778304 134878212 151015460 151015460 362086506 362086506 32382432 413867470 418876232 418876232 99491816 99491816 197542398 673206336 1015285839 1015285839 189055227 553791488 553791488 553721889 537399328 1009516585 1009516585 1007818141 808193588 569540857 569540857 910549931 910549931 850979125 108088134 413968862 711756170 924401843 964193696 964193696 959972464 951584583 900203052 183136468 243979356 260883104 260883104 355657154 355657154 39319568 387046200 387046200 318107402 318107402 347078738 347078738 276532472 85300336 98307816 98307816 112972384 112972384 32296416 85231560 85231560 25350240 30544608 30544608 72233640 228260841 676800165 693278117 693278117 767734733 767734733 607522684 607522684 789108197 789108197 659104953 947430721 947430721 473820942 840174214 840174214 879806976 879806976 174589332 374605903 548931393 940639273 940639273 696288352 696288352 427854885 427854885 295289376 574924824 813703817 813703817 550956569 944643207 944643207 653789354 997197381 997197381 953680784 180371678 180371678 210765236 849872297 849872297 893258760 893258760 623055873 828822330 880903274 880903274 385997978 385997978 95078432 95078432 38848376 102023440 102023440 566608033 662874801 662874801 654971961 781589085 781589085 1055739022 1070932946 1070932946 735519447 436409075 348391454 619060102 849381806 849381806 934914026 934914026 1038624530 1038624530 1010046538 1010046538 523054398 922811499 922811499 623450936 614642353 570007744 171062228 197448340 197448340 820600979 820600979 809112359 809112359 461971830 461971830 285254354 274468482 70118664 70118664 274040010 440950876 440950876 517253332 517253332 205875392 40675456 40675456 180454416 180454416 142622784 171995268 171995268 651317325 726778760 726778760 657585121 610296496 770009933 770009933 664917465 664917465 583544368 805833155 805833155 682427476 682427476 715730941 715730941 724541285 724541285 876167572 876167572 523062854 421931068 456753678 456753678 272027888 272027888 381682512 381682512 108651400 329793754 329793754 154928612 879620882 879620882 558627800 657247545 657247545 356934148 658423804 846991283 846991283 562917062 562917062 474660079 85493288 7900416 564249424 564249424 730173891 730173891 197523732 540880405 540880405 145361988 155713760 709924880 709924880 542496416 863025396 960212295 960212295 954047954 412141892 407463748 407463748 140381636 315571090 315571090 41264768 67585994 281172674 281172674 42932904 293615672 311366178 311366178 303638034 294980720 483084872 499342638 499342638 784558255 784558255 500950848 923052247 923052247 961796689 961796689 1028004015 1028004015 750783152 814743776 931201193 944775286 944775286 747758157 756198725 801502680 1042580813 1042580813 689415971 1072631382 1072631382 950320636 601449008 601449008 404572196 404572196 591532209 862004232 923345979 923345979 854082058 568551384 568551384 687085313 687085313 745088933 760878765 760878765 221258112 230783724 540049778 931448955 931448955 796496451 586901262 586901262 378536715 526009994 1027326551 1027326551 730682353 765364232 765364232 134401296 145413444 240301885 240301885 925929083 925929083 957337335 957337335 812481802 520571166 604066168 604066168 553914368 554616136 554616136 554478984 220725520 604455017 604455017 29964144 588849497 588849497 77594704 77594704 569041737 670082680 670082680 580452569 931489915 931489915 219014000 416664262 416664262 202998862 149761476 183451092 183451092 282668032 282668032 329123364 447285138 462974032 462974032 381033422 354107300 359044164 359044164 291647654 285683810 358904390 476440974 512932816 512932816 514035028 514035028 480908622 480908622 251320284 251320284 318802130 318802130 985431511 985431511 943537042 786283077 249916248 383440602 490499106 530353838 591271486 990560885 990560885 260281621 234920250 161196824 1001919070 1001919070 732581393 825338389 999947367 999947367 559289910 354328656 50622160 63314080 63314080 63586992 63586992 52147008 52147008 50979888 38920592 96682096 125904592 125904592 109061408 109061408 51218992 589899824 589899824 55322784 55322784 70422784 70422784 78061672 92354888 92354888 124969152 394842936 394842936 129042424 133702520 133702520 53850482 278321730 278321730 154666788 347807394 511680402 543782244 543782244 765982012 765982012 1009779577 1009779577 426039756 294914658 808453971 808453971 572446772 572446772 830463642 830463642 972442130 972442130 1002277542 1002277542 550060945 550060945 742498448 742498448 687417285 687417285 23069088 291504516 291504516 966904016 966904016 547733958 453851639 995400547 995400547 513668566 948324867 948324867 795285749 795285749 898875489 898875489 605731400 605731400 679507360 679507360 590424500 122498816 8974944 26844536 86038328 86038328 85454008 101797468 198946468 801401469 801401469 631413339 631413339 942599938 943529895 943529895 627626359 397460018 939584783 939584783 1065617535 1065617535 572733806 163709272 374275994 374275994 477186396 477186396 254763280 158532040 178596180 414851210 414851210 843464653 950416277 950416277 844328918 874489799 874489799 930865131 930865131 570267329 223347377 684852600 724585948 724585948 778450554 1058068771 1058068771 885564459 941621376 945815943 945815943 891371406 992354878 992354878 511655838 223543988 1006906508 1006906508 231080500 231080500 143677476 143677476 302738530 302738530 230537584 236106762 236106762 154928228 385951602 459823186 459823186 1001711057 1001711057 546978609 734977269 828322261 885146625 885146625 291075217 344485908 344485908 439379440 439379440 610778793 704191512 1025369611 1025369611 621812644 582879993 582879993 726871581 756316801 756316801 617347340 450881258 450881258 337198458 302436304 105631424 410034632 410034632 486958158 486958158 455009492 455009492 711058712 711058712 213025112 213025112 262147172 640252368 640252368 305925906 619841518 619841518 831992753 835139811 835139811 562245729 562245729 554253328 600630417 871277424 871277424 829917408 829917408 271864480 3146240 148026116 187932888 187932888 222466176 222466176 156237832 156237832 818781623 818781623 1055449496 1055449496 377925530 588102842 588102842 584074323 780371140 780371140 731930684 731930684 72681056 63800496 63800496 51305520 51305520 46548448 26820992 21203296 26536224 26536224 27595168 27595168 134744192 134744192 101101680 92661864 795192345 795192345 202498572 564701037 564701037 264147316 621550617 621550617 252095924 773847357 773847357 582097505 199317465 193510492 1042366806 1042366806 616915777 685793608 739602952 845357786 845357786 822396963 155730084 155223204 155223204 156422820 163613504 350355968 350355968 82837962 75831656 75831656 123740728 123740728 55705600 5378688 35588880 40254992 72227976 329372554 341045898 341045898 354342362 400236320 400236320 115706328 115706328 130118328 276790784 320010930 320010930 276396032 557303457 557303457 542707873 548172304 548172304 615822376 615822376 588251697 588251697 538184373 499682478 499682478 911525972 924775766 924775766 762260817 762260817 796277095 796277095 293084188 990891847 990891847 246923554 238675856 254069052 254069052 518146468 518146468 370050586 370050586 316719570 316719570 231086268 824456422 824456422 197471328 1071730072 1071730072 736365937 717284720 434153641 1009697252 1009697252 805854218 409862154 13243584 13243584 41984000 42066000 42066000 50680208 52478256 52478256 42152768 42152768 17107296 14117376 14117376 5765760 77080584 77080584 37139200 128174234 320390898 974608234 1017506127 1017506127 566553945 662960713 662960713 575988283 772618083 772618083 758852437 506920028 411299974 798078800 798078800 664425656 830603234 830603234 853810226 853810226 539324832 731500293 731500293 713080917 683255568 37486656 45879120 541904460 682212612 682212612 803329160 803329160 617646912 617646912 752181713 752181713 799260480 799260480 789653568 789653568 554078784 255239008 42144304 202320004 560055341 560055341 48381780 622409088 721209529 721209529 680886369 564521313 675956836 675956836 653588976 653588976 97830976 17040848 65012208 309667478 309667478 532176884 532176884 412264424 333586784 333586784 306393234 27333106 273487552 273487552 277033632 298844898 298844898 143868002 134763624 134763624 214189184 214747340 214747340 178553016 153930092 153930092 132498492 239075464 239075464 185604644 142094120 156052644 156052644 59402624 65920296 65920296 214493780 795888720 795888720 69464328 312261140 844188764 1028197912 1028197912 387719843 142083972 262707344 262707344 424188042 424188042 509888130 509888130 820985665 820985665 827889019 895534984 895534984 70817632 117176768 117176768 168503108 168503108 457324160 465199760 466897446 466897446 239572468 239572468 171895808 291336970 291336970 103147256 409199010 409199010 153092388 571191436 726599752 773455937 773455937 348883675 830317654 830317654 774155049 716226664 716226664 967724605 967724605 607671848 607671848 564691306 564691306 860681577 860681577 916099944 916099944 858309939 215536856 215536856 199020276 41505536 146455488 182341140 195628224 195628224 191179188 34900672 46186704 46186704 47499432 251724552 775713433 775713433 444220334 444220334 164750151 123608760 913573993 913573993 557076746 948841151 948841151 148655316 214205660 214205660 178034180 178034180 143119488 227877500 254929260 254929260 202424844 236055060 236055060 134586656 206662312 206662312 207716740 505727034 505727034 933201386 933201386 655624761 655624761 171777985 341236362 451558605 1000363157 1000363157 74162176 409518422 409518422 254378106 622552592 622552592 775883296 775883296 731963644 731963644 375981112 389827138 389827138 653312937 653312937 245880482 536686590 774389760 774389760 616654204 630389020 872940555 872940555 823057443 823057443 885855242 885855242 823368660 823368660 932134011 932134011 765650580 709258929 709258929 700301828 700301828 598743668 92407136 75255176 102636800 121522712 121560888 121560888 123778304 123778304 134878212 421731456 421731456 405615808 405615808 243218684 243218684 418876232 418876232 397534136 397534136 443562190 721602931 1015285839 1015285839 312266322 553791488 553791488 990905142 990905142 1011484673 1011484673 788726028 979612978 979612978 892270513 910549931 910549931 850979125 108088134 613714888 711756170 924401843 964193696 964193696 959972464 951584583 900203052 182970842 113504472 113504472 59675784 355657154 355657154 39319568 387046200 387046200 318107402 318107402 347078738 347078738 387996963 604073337 648514761 648514761 921966747 921966747 635123433 635123433 567968393 563792553 353200033 883647874 883647874 562582536 289427424 26731040 26731040 26948640 77764200 241729744 631948345 789108197 789108197 659104953 947430721 947430721 473820942 971842790 971842790 658844615 806619731 1007946255 1007946255 269681542 295196773 671663109 696288352 696288352 910477986 910477986 910164123 910164123 383001170 383001170 269553672 273937026 688805386 688805386 748233663 748233663 518318579 122470262 1055393247 1055393247 849872297 849872297 893258760 893258760 814425611 828822330 880903274 880903274 90446352 91362232 95078432 95078432 56640576 88955760 88955760 71823048 541070144 541070144 580411149 781589085 781589085 401943546 1070932946 1070932946 432944820 432944820 215220350 486675144 849381806 849381806 807569584 807569584 579019185 579019185 824262730 824262730 126021929 922811499 922811499 623450936 614642353 570007744 22668960 197448340 197448340 820600979 820600979 992341267 992341267 504354586 712894814 815104265 815104265 619200705 920675998 1055174043 1055174043 243930204 601304749 601304749 177016132 177016132 40675456 180454416 180454416 142622784 171995268 171995268 651317325 726778760 726778760 770562096 770562096 770009933 770009933 70047021 156529028 583544368 799606832 799606832 682427476 682427476 650256668 10659904 2619648 2696448 315473232 379603034 379603034 421931068 456753678 456753678 272027888 272027888 381682512 381682512 108651400 329793754 329793754 249774429 879620882 879620882 665663976 657247545 657247545 1023872513 1023872513 510883768 671089665 671089665 18685952 18685952 18615840 5016992 564249424 564249424 145081269 451193190 451193190 48177046 48177046 137239584 155713760 415839462 415839462 291314864 298244322 298244322 144475584 412141892 412141892 407463748 407463748 140381636 315571090 315571090 101547480 67585994 281172674 281172674 44809232 293615672 311366178 311366178 303638034 294980720 511059220 511059220 499342638 784558255 784558255 500950848 923052247 923052247 222611628 154429672 30870272 542376048 750783152 814743776 931201193 944775286 944775286 84675624 122161296 709302512 1042580813 1042580813 739246605 739246605 718984768 708837525 729826885 729826885 50122704 50122704 48471936 862004232 923345979 923345979 127852152 568551384 568551384 687085313 687085313 745088933 760878765 1029659856 1029659856 885100004 875282088 931448955 931448955 796496451 586901262 586901262 378536715 700002805 1027326551 1027326551 385915020 555651665 555651665 654839856 654839856 554173473 553817377 925929083 925929083 957337335 957337335 812481802 520571166 132311342 146804824 210011500 514347044 514347044 285514768 220725520 604455017 604455017 29964144 588849497 588849497 251667972 251667972 569041737 670082680 670082680 625664001 931489915 931489915 219014000 747412068 747412068 739249797 750594380 750594380 246277032 246277032 281882352 329123364 329123364 462974032 462974032 381033422 146298492 331504924 331504924 440278292 440278292 338690826 266092572 415589834 415589834 514035028 514035028 480908622 480908622 251320284 251320284 318802130 318802130 225493932 378680018 378680018 177609300 177609300 376125860 490499106 902778809 902778809 990560885 990560885 310989147 658069771 658069771 858075201 858075201 667290742 360400368 405198386 981826592 981826592 570564816 360933488 130948344 113382408 96547976 127685504 127685504 45253344 77078984 77078984 587339841 587339841 81792016 666050729 666050729 106197080 67946632 88952200 543729968 639977488 906076330 906076330 617964104 617964104 354751338 124969152 394842936 394842936 59822100 430147286 430147286 396088618 278321730 278321730 154666788 547105290 881402955 881402955 336924225 38274192 38274192 333447952 333447952 332589986 332589986 322388306 322388306 337425888 337425888 304245264 418349952 452257208 452257208 383044314 365447736 550060945 550060945 742498448 742498448 687417285 687417285 23069088 291504516 291504516 966904016 966904016 547733958 447266884 995400547 995400547 513668566 545700126 649406559 795285749 795285749 898875489 898875489 605731400 605731400 546098241 67597385 26461248 41954496 41954496 26844536 86038328 86038328 106715696 106715696 198946468 198946468 201431216 201431216 171966612 140050920 197408852 197408852 146544432 19779336 71044872 179711452 179711452 202374460 202374460 479329872 479329872 374275994 477186396 477186396 220935468 220935468 178596180 414851210 414851210 843464653 949946947 949946947 481503762 481503762 354680982 288432930 66331426 423929884 423929884 347466570 86002212 426869417 589394965 674760453 795006648 795006648 1011561198 1011561198 945815943 575492112 542112897 511655838 915394635 915394635 1006906508 1006906508 697379066 540372520 945028007 945028007 748534763 748534763 233917005 236106762 236106762 153919634 385951602 385951602 434807139 1001711057 1001711057 546978609 734977269 828322261 862482695 862482695 808048180 808048180 673501185 576073155 672246000 672246000 704191512 704191512 681190093 681190093 589275705 582879993 257701233 231212268 180800848 265907104 450881258 450881258 383423872 383423872 286400234 410034632 410034632 486958158 486958158 336707720 79732266 273534080 273534080 558254552 558254552 1056175071 1056175071 609870809 518522334 937566485 937566485 831992753 835139811 835139811 562245729 562245729 554253328 600630417 871277424 871277424 829917408 829917408 271864480 62534416 157972400 187932888 187932888 371852162 371852162 495003412 495003412 156874696 156874696 193671516 277901408 430630402 430630402 384037224 384037224 205874324 205874324 95589192 151830964 151830964 109772128 76065800 62331176 124525848 124525848 50857008 122421408 122421408 70264488 210502540 255066216 255066216 241461324 241461324 264873088 795192345 795192345 202498572 564701037 564701037 264147316 621550617 621550617 713691760 773847357 773847357 179847536 605134676 666319737 1042366806 1042366806 1051709783 1051709783 739602952 845357786 845357786 657737817 954486439 954486439 560260174 407710854 407710854 163613504 82548802 54987168 326250578 326250578 306316018 55705600 322750704 322750704 310562880 327303442 327303442 311211858 311211858 282339298 306130882 306130882 83696090 12767424 2496768 300155904 370526138 370526138 58397632 88852232 88852232 4936832 782323196 782323196 680453033 614959084 614959084 50469061 0 190021776 190021776 226650876 911525972 911525972 155714724 155714724 344733392 344733392 240073884 240073884 212718540 402270404 402270404 362631990 362631990 258912522 480150862 480150862 1045337757 1045337757 260478990 1010883721 1010883721 935856325 596120004 1042415966 1042415966 837297584 736365937 675546283 768084355 872859094 872859094 438851593 186199639 644488696 644488696 537771264 140789072 33937536 50680208 65243568 65243568 52691056 59115584 59115584 44740016 44740016 65719136 77080584 77080584 73389506 837234809 837234809 974608234 1017506127 1017506127 818085100 662960713 662960713 578814033 772618083 772618083 758852437 563944113 693183141 693183141 629435484 727403536 727403536 88271509 707771860 707771860 705352817 731500293 731500293 713080917 683255568 194712312 229193004 541904460 682212612 682212612 803329160 803329160 617646912 617646912 752181713 752181713 799260480 799260480 789653568 789653568 689207733 789908061 789908061 351288951 351288951 484183246 484183758 484183758 218178056 469290898 469290898 336978562 336978562 341522058 370843856 390199880 390199880 162317712 447531580 447531580 309667478 532176884 532176884 412264424 226675876 152052736 55915504 61340800 61340800 32222688 277033632 298844898 298844898 223760456 223760456 253367868 253367868 214747340 214747340 67669124 34944 157548928 157548928 256649380 256649380 185604644 142094120 156052644 168067072 168067072 55382352 57910048 214493780 795888720 795888720 1067175830 1067175830 912214611 912214611 625058207 807811507 807811507 727931328 893158906 893158906 424188042 509888130 509888130 152047892 152047892 4793472 19186760 48764032 52106544 52106544 81864904 168503108 168503108 457324160 457324160 173029362 277017920 277017920 272811226 272811226 235946516 484195968 516957902 516957902 362859108 169357433 622405161 778000025 778000025 542668505 537204340 574740652 574804113 574804113 172200081 54569504 967724605 967724605 607671848 607671848 564691306 564691306 943722532 943722532 669290208 669290208 1020566949 1020566949 886197576 1004250324 1004250324 974266368 173057028 195628224 199964148 199964148 167420756 394058478 394058478 1073092999 1073092999 775713433 775713433 350905472 558457938 558457938 311180307 913573993 913573993 464591002 948841151 948841151 394738520 706198221 706198221 681404447 572711760 886006028 886006028 553999616 254929260 202424844 236055060 236055060 89498252 206662312 206662312 166822892 188175844 915283257 933201386 933201386 655624761 655624761 622868786 849959395 849959395 827791709 399908177 645990569 645990569 475096588 254378106 622552592 622552592 775883296 775883296 355384833 231246212 231246212 389827138 389827138 201595196 387514570 245880482 622254633 622254633 98040552 768375308 768375308 872940555 872940555 823057443 823057443 885855242 885855242 734734962 746547330 1065427071 1065427071 609585331 709258929 709258929 700301828 700301828 598743668 92407136 101762624 102636800 377278010 377278010 289589688 376485792 376485792 424182948 424182948 421731456 405615808 474368384 474368384 243218684 123546184 78016660 526702652 526702652 443562190 721602931 721602931 210163788 312266322 312266322 283810972 990905142 990905142 1011484673 1011484673 353967380 979612978 979612978 931081893 931081893 723228453 494051998 471333680 613714888 613714888 359044609 174492568 99918264 99918264 533150520 533150520 182970842 113504472 237458152 237458152 59886112 59886112 5709904 16789536 16789536 63050816 63050816 117965008 117965008 387996963 604073337 648514761 648514761 921966747 921966747 635123433 635123433 567968393 563792553 353200033 883647874 883647874 562582536 799064445 799064445 656523645 790033861 790033861 241729744 631948345 631948345 560100768 721685136 721685136 579082336 61279397 971842790 1028670131 1028670131 806619731 1007946255 1007946255 742394537 626071817 626071817 278251776 366266978 910477986 1014090559 1049625183 1051232770 1051232770 817376584 437054745 1062394637 1062394637 776210861 651172836 394856868 471433046 517080974 1055393247 1055393247 488511370 567941664 567941664 814425611 814425611 599667552 285803178 124126160 299106410 299106410 104075536 134058424 134058424 102084184 88955760 109286464 110571664 117084272 117084272 97587536 1122816 1056768 599040 599040 282728291 946211939 948999877 948999877 834980067 834980067 807569584 807569584 579019185 579019185 552549825 746661160 773020237 773020237 717146009 32117633 57890160 57890160 18967216 48587680 64578256 161697152 298406626 992341267 992341267 504354586 712894814 815104265 815104265 619200705 920675998 1055174043 1055174043 369886428 601304749 601304749 177016132 177016132 142632260 142632260 167772352 167772352 44155092 150309488 186649088 186649088 13031616 770562096 770562096 62934941 59843184 51709056 188623664 188623664 176367832 206046348 206046348 145297600 145297600 162279588 200898276 200898276 315473232 315473232 209329840 254740152 254740152 170920020 176423700 176423700 44089680 47235792 59899936 147985676 147985676 249774429 249774429 665663976 665663976 654379224 127404925 1023872513 1023872513 922928882 758518441 758518441 608573577 410260239 18615840 5016992 601965168 601965168 310716432 451193190 451193190 333719732 333719732 155730774 137239584 415839462 415839462 291314864 298244322 298244322 178289414 174635136 277430598 277430598 15820288 48613328 48613328 101547480 101547480 34471296 34027536 44809232 51364120 69350408 94068868 94068868 98043132 114337720 511059220 511059220 229238124 229238124 341910446 531441020 531441020 469852798 469852798 259875974 193554740 419033614 447769384 447769384 404062912 404062912 330133231 552151865 553455501 553455501 832562816 832562816 739246605 951726691 951726691 685424272 729826885 729826885 1003109414 1003109414 55575216 574837304 609858731 609858731 376531819 533967194 852573134 983114611 983115703 983115703 387714618 1029659856 1029659856 885100004 875282088 425275961 547885154 547885154 516460802 542569164 1071970945 1071970945 717764016 717764016 491121183 239108856 239108856 766173510 766173510 758883072 758883072 771957835 816321156 816321156 876276577 876276577 879677619 879677619 603198008 603198008 358664632 100680144 105141280 105141280 77701248 77701248 74466504 74466504 108538420 251667972 251667972 175377300 173811973 639633816 639633816 625664001 594261425 185325621 747412068 747412068 739249797 750594380 750594380 246277032 246277032 64656880 200132566 200132566 461397360 461397360 396173150 530238388 530238388 347238136 440278292 456395574 456395574 422438386 324745016 324745016 222497824 181279968 46833840 47648304 47761104 123114128 141286580 207688716 225493932 225493932 232107640 232107640 212154000 433716164 433716164 902778809 902778809 313783122 222837494 310989147 658069771 658069771 858075201 858075201 667290742 252334096 405198386 981826592 981826592 765769781 765769781 738870417 738870417 528520303 143805000 857751681 857751681 851486294 851486294 994628735 994628735 665397561 666050729 666050729 106197080 102269696 88952200 543729968 639977488 906076330 906076330 617964104 617964104 356712482 356712482 275850385 871052675 871052675 1008547003 1008547003 829301298 829301298 710237047 710237047 941303334 941303334 881402955 600703584 437705238 843502612 843502612 333447952 332589986 332589986 322388306 322388306 337425888 373686402 373686402 418349952 452257208 452257208 346644922 346644922 244132652 244132652 240248304 331085558 331085558 199094004 38218896 437132308 437132308 134753426 136688084 136688084 447266884 447266884 2097408 67508232 606474248 606474248 606212361 354683697 823512034 823512034 38781120 44965200 44965200 7869792 20398208 66435904 66435904 37038864 21442288 58756096 106715696 106715696 55125040 151847560 219743404 219743404 106698776 106698776 44434640 39235600 39235600 19779336 491376472 491376472 267234378 202374460 202374460 479329872 479329872 221064492 252644652 252644652 220935468 220935468 105578932 343355584 343355584 607458052 745876365 745876365 640756741 481503762 354680982 288432930 66331426 423929884 423929884 347466570 86002212 342750302 561544546 761545180 761545180 882992856 1011561198 1011561198 760420518 760420518 542112897 538082582 915394635 915394635 856082564 945838336 945838336 770012743 945028007 945028007 841686105 841686105 457747612 194167730 141879872 88755328 33899344 289235200 294676274 302392098 330485970 330485970 308062866 539592600 726294577 726294577 808048180 808048180 673501185 576073155 672246000 672246000 561045193 671347720 681190093 681190093 589275705 557793057 257701233 231212268 180800848 265907104 265907104 130524864 383423872 383423872 286400234 69412936 94856392 94856392 336707720 336707720 189974688 150070068 150070068 662078516 662078516 1056175071 1056175071 609870809 518522334 937566485 937566485 153748516 103415832 772867340 772867340 574170897 237646613 102760728 71303376 64121376 42895968 60021616 62534416 62534416 157972400 157972400 184578848 371852162 371852162 495003412 495003412 156874696 156874696 193671516 277901408 430630402 430630402 384037224 384037224 205874324 205874324 84501904 151830964 151830964 109772128 76065800 62331176 124525848 124525848 50857008 122421408 122421408 70264488 210502540 255066216 255066216 241461324 241461324 264873088 264873088 149674880 149674880 214879276 221827692 221827692 731676388 731676388 713691760 713691760 704686880 704686880 1004135042 1004135042 831214716 831214716 1051709783 1051709783 671610885 924417586 924417586 1062157519 1062157519 954486439 885063241 681279849 605162245 888035329 888035329 834424242 866239123 866239123 562196562 38288866 322750704 322750704 310562880 327303442 327303442 311211858 311211858 282339298 306130882 306130882 83696090 9701952 4268160 300155904 370526138 370526138 65485296 88852232 606574729 687029841 782323196 782323196 680453033 614959084 614959084 584092409 621956108 621956108 432029378 432029378 584249375 584249375 890236179 904785387 904785387 777302581 777302581 240073884 684392545 684392545 402270404 362631990 362631990 406533390 480150862 480150862 1045337757 1045337757 260478990 1010883721 1010883721 935856325 596120004 1042415966 1042415966 669516156 669516156 675546283 768084355 815268481 815268481 212077658 186199639 644488696 644488696 537771264 140789072 13399184 37749968 65243568 65243568 52691056 59115584 59115584 44740016 44740016 65719136 65719136 73389506 605748112 837234809 837234809 830736483 769132269 818085100 818085100 282405570 685819676 685819676 651691737 778907037 919285736 919285736 693183141 693183141 684204620 727403536 727403536 39645861 537542736 579523665 705352817 705352817 147449028 303707062 303707062 194712312 229193004 321463700 450900708 450900708 773862112 773862112 579604144 579604144 260046780 260046780 86063616 86063616 122923560 198667233 689207733 789908061 789908061 351288951 412158576 484183246 484183758 484183758 156837540 469290898 469290898 724577205 724577205 680524869 997052848 997052848 390199880 162317712 447531580 447531580 365857072 365857072 45954924 226675876 226675876 152052736 55915504 321197312 321197312 318088514 318088514 468503246 527883198 527883198 353146772 253367868 253367868 194396252 450651190 450651190 412424392 499425524 499425524 256649380 256649380 200629964 200629964 11530280 168067072 168067072 138565028 164109680 193871920 723078416 723078416 1067175830 1067175830 912214611 912214611 625058207 807811507 807811507 738869492 893158906 893158906 576498441 642777097 974917143 974917143 739509976 860882155 872943600 872943600 52106544 52106544 90180416 338711827 564909161 868977921 868977921 840309267 840309267 349638331 313022490 313022490 953200656 953200656 643422871 916895237 916895237 711301505 683712852 778000025 778000025 542668505 537204340 152166948 152166948 620938064 620938064 99694773 264571272 379979389 379979389 170394900 545292405 545292405 943722532 943722532 669290208 669290208 1020566949 1020566949 886197576 1004250324 1004250324 974266368 157809060 44741348 199964148 199964148 167420756 394058478 523260672 1073092999 1073092999 841272836 841272836 437330454 558457938 558457938 311180307 190052400 252027522 460702402 778319875 778319875 647038530 706198221 706198221 681404447 572711760 886006028 886006028 667510488 667510488 142450734 142450734 137894444 268824396 290294720 290294720 252968024 159592548 915283257 915283257 628524658 381675386 104737298 622868786 849959395 849959395 845691665 878971275 878971275 968235879 968235879 748676367 799565547 863101875 901350177 901350177 929577608 929577608 88607648 34120896 370253880 399566354 399566354 227518021 622254633 622254633 98040552 768375308 768375308 563089000 696336393 696336393 679527493 606782501 938082714 938082714 746547330 1065427071 1065427071 978222597 978222597 681857588 681857588 138811729 89019680 89019680 101762624 101762624 377278010 377278010 370412058 376485792 376485792 424182948 424182948 140632452 134377856 474368384 474368384 449590424 508418328 508418328 526702652 526702652 478672974 474005508 177966264 319168700 356851374 356851374 282861612 231345248 231345248 147200196 353967380 353967380 287255214 1025821443 1025821443 931081893 723228453 494051998 471333680 259142144 372691118 372691118 844458880 844458880 442529989 533150520 533150520 247991640 247991640 237458152 237458152 285249738 285249738 57326760 339186176 339186176 306363266 61729106 371831016 371831016 382959186 382959186 322471384 114721520 129541696 129541696 20002872 27310560 27310560 261685250 333367026 441638462 441638462 328050368 799064445 799064445 656523645 790033861 790033861 335718064 496770015 496770015 954113637 954113637 721685136 719242818 952684187 952684187 1028670131 1028670131 321149983 427696038 1009802211 1009802211 817423725 817423725 601114456 742514693 742514693 1014090559 1049625183 1051232770 1051232770 817376584 714137764 1062394637 1062394637 776210861 651172836 107848008 471433046 517080974 645662616 645662616 81790929 567941664 567941664 541464705 349125795 285803178 285803178 124126160 299106410 299106410 104075536 134058424 134058424 102084184 98925824 570560529 575733913 644887065 654774260 654774260 435417394 435417394 889060390 889060390 688777920 946211939 948999877 948999877 834980067 834980067 874981464 949361424 949361424 539310252 1009872863 1009872863 773020237 773020237 717146009 576681649 586629360 586629360 22094368 39041600 42256464 157684208 298406626 405381774 405381774 307791318 518578910 518578910 479586894 138058312 452621656 452621656 369886428 369886428 402653708 402653708 252517798 252517798 195634548 195634548 167772352 167772352 44155092 150309488 555206817 598096576 598096576 585290097 587326769 715213093 715213093 106532189 188623664 550181012 604897308 604897308 617228356 617228356 583603476 162279588 200898276 369498304 369498304 479474316 482184000 482184000 462153618 472837188 472837188 531682650 531682650 124820410 317530096 336542552 336542552 92428016 587438592 653948209 653948209 119953929 127404925 171494836 922928882 922928882 758518441 1018168321 1018168321 741379651 741379651 648754521 724919749 855762257 925840459 925840459 672107288 333719732 333719732 155730774 275570400 275570400 187997600 310956528 310956528 178289414 302956052 302956052 277430598 277430598 137634816 137634816 14427908 9454144 34471296 36246400 36246400 36657152 51364120 69350408 84485160 84485160 69719168 243535432 506741384 506741384 341784776 604786493 604786493 531441020 643546007 643546007 560013729 560013729 326615921 419033614 785666463 785666463 1060144077 1060144077 842056467 677397142 553455501 553455501 309985137 309985137 308091264 951726691 951726691 678529040 706732288 706732288 1003109414 1003109414 726737844 726737844 609858731 609858731 376531819 559223911 852573134 983114611 983115703 983115703 1061281983 1061281983 1070756580 1070756580 691332096 425275961 547885154 547885154 348230536 542569164 1071970945 1071970945 654312484 654312484 587338267 673597369 717523197 766173510 990634288 990634288 758883072 771957835 771957835 762265005 876276577 876276577 879677619 879677619 603198008 603198008 531228030 531228030 304933288 247497176 77701248 77701248 74466504 122160848 122160848 106173488 106173488 90054312 108268440 639633816 639633816 57745433 106958736 123473592 123473592 90967832 24193800 110168256 110168256 229511276 229511276 41330688 200132566 200132566 461397360 461397360 396173150 530238388 530238388 347238136 336857480 476187450 523285100 523285100 517548404 517548404 268797954 268797954 46833840 47648304 47761104 123114128 131862264 240725424 240725424 84546600 232107640 232107640 212154000 433716164 433716164 168044580 168044580 545294336 545572929 545572929 95419720 95419720 781922380 781922380 976471393 976471393 235350608 525652026 525652026 765769781 765769781 738870417 738870417 528520303 143805000 857751681 857751681 851486294 851486294 994628735 994628735 665397561 669444449 669444449 885084640 885084640 656899240 349122696 13312040 33554832 84181760 84181760 339132480 364378378 364378378 275850385 871052675 871052675 1008547003 1008547003 829301298 829301298 710237047 859187015 941303334 941303334 600703584 858260851 858260851 843502612 843502612 730642131 194005236 54854050 305296002 305296002 334817136 373686402 373686402 341204808 356308984 375473938 375473938 344629520 284315970 377108122 377108122 331085558 331085558 199094004 62350872 437132308 437132308 386308906 502325270 502325270 486697964 36831400 2097408 67508232 606474248 606474248 606212361 354683697 823512034 823512034 38781120 44965200 44965200 34337808 54963360 102270088 102270088 109623288 109623288 58756096 72190248 86493432 134218777 771751949 771751949 755013677 739284376 739284376 115548068 305012536 813309186 851510195 851510195 491376472 267234378 139709188 105087728 378474076 378474076 303914006 335714564 335714564 9905408 156906464 156906464 351482570 351482570 607458052 745876365 745876365 640756741 541141129 736162053 931270905 931270905 533075826 470030024 841743954 1043899712 1043899712 896262241 761545180 761545180 882992856 882992856 846776211 772975518 772975518 538082582 841657020 841657020 772865215 809586747 945838336 945838336 770012743 770012743 113647114 841686105 841686105 457747612 194167730 141879872 549760419 549760419 272917442 833399507 833399507 301992576 308062866 478159296 539592600 671269014 671269014 271585304 381297378 381297378 285811746 25220162 10608960 44200256 44200256 716422496 716422496 131060645 88938624 88938624 108064800 108064800 42259064 337810378 356925994 356925994 828148683 828148683 890283114 890283114 487293294 339947658 251714088 386465356 440576232 715950901 715950901 662078516 669307364 669307364 174081292 105383064 105383064 12584024 70729224 608053808 772867340 772867340 723228967 723228967 928941762 928941762 191345888 234194275 875118506 875118506 394781018 798501622 798501622 700502332 700502332 591794321 591794321 678939372 678939372 618780704 251733268 264898028 264898028 226893816 129805032 32199360 32199360 31055872 11053312 10551296 19232000 19584288 27693408 27693408 19799328 12455264 339069842 339069842 82584168 86231360 86231360 487362504 487362504 452875518 258758474 375426104 849501585 849501585 108846376 569445157 569445157 203867656 731676388 731676388 576458385 546669409 704686880 704686880 1004135042 1004135042 831214716 831214716 176795669 345663062 345663062 924417586 924417586 1062157519 1062157519 885063241 885063241 681279849 605162245 888035329 888035329 834424242 866239123 866239123 562196562 281037088 277798002 38810640 38810640 311092304 311092304 193084675 757667061 778966703 778966703 981324693 981324693 753144761 753144761 677515653 535547659 535547659 436664561 436664561 606574729 687029841 687029841 654070732 72277128 30486576 584092409 584092409 621956108 621956108 432029378 432029378 584249375 584249375 890236179 904785387 904785387 777302581 777302581 252230720 684392545 684392545 302462994 302462994 309041268 406533390 406533390 411203590 507875406 507875406 104990828 449207332 449207332 256676026 543098640 711408017 711408017 587864506 672535392 672535392 887163841 887163841 584329732 584329732 272892805 809579681 809579681 285873186 276174466 276174466 288841042 288841042 64356352 583574608 584167633 584167633 549107056 20333888 23596448 78231816 78231816 605748112 632340059 830736483 830736483 306444529 148448964 138461316 138461316 685819676 685819676 879955348 1042234911 1042234911 1041578926 1041578926 684204620 684204620 290409606 290409606 54705828 594103072 594103072 593235633 584189760 715654485 808453718 808453718 189404324 189404324 321463700 702906668 702906668 758680056 758680056 537247632 537247632 260046780 260046780 86063616 86063616 122923560 122923560 32844504 35065456 294794104 294794104 412158576 453322806 453322806 453322806 218178056 152044068 68231212 724577205 724577205 737623029 997052848 997052848 391162481 50582592 321967384 882933952 932222881 932222881 915447578 335595266 335595266 57531568 308566400 321197312 321197312 318088514 329263634 468503246 527883198 527883198 432277640 348131422 475533546 475533546 450651190 450651190 412424392 499425524 499425524 240461328 240461328 200629964 200629964 54161632 56773136 198267056 198267056 164109680 238020564 239013464 239013464 727665452 1054604333 1054604333 76379307 527622416 675418160 738869492 738869492 651709448 651709448 576498441 642777097 974917143 974917143 739509976 860882155 872943600 872943600 190686784 190686784 277473194 374890776 564909161 868977921 868977921 840309267 840309267 349638331 475927698 475927698 953200656 953200656 643422871 916895237 916895237 711301505 744673677 744673677 737215953 737215953 724848592 153295000 186782004 620938064 620938064 99694773 264571272 264571272 196397940 310384128 404362576 404362576 141170176 170837906 473698062 473698062 91000686 82628040 97023008 97023008 150325312 157809060 157809060 170604640 347521762 347521762 251456612 479733802 523260672 523260672 477416334 841272836 841272836 437330454 437330454 671788164 671788164 879688299 879688299 812984474 812984474 317012952 647038530 647038530 921382984 921382984 1008855105 1008855105 308877699 667510488 667510488 142450734 286053152 286053152 268824396 290294720 290294720 252968024 159592548 115005370 542184075 542184075 381675386 104737298 316534482 435292422 435292422 845691665 878971275 878971275 968235879 968235879 748676367 799565547 863101875 901350177 901350177 929577608 929577608 332474256 80335176 370253880 399566354 399566354 295458 286575138 286575138 309280146 820562206 820562206 362972432 696336393 696336393 679527493 606782501 938082714 938082714 668021122 377819739 587238719 978222597 978222597 726624028 746536845 746536845 630820916 81266712 81266712 87759360 87759360 370412058 370412058 89264658 155635718 155635718 274858146 344228004 344228004 273093058 273093058 449590424 508418328 509014448 509014448 478672974 478672974 684571235 877369353 877369353 356851374 356851374 282861612 231345248 231345248 369248302 369248302 992317480 992317480 1025821443 1025821443 923134248 134582308 330516574 330516574 259142144 372691118 372691118 844458880 844458880 442529989 466041584 466041584 247991640 247991640 236078544 77191744 285249738 285249738 57326760 339186176 339186176 306363266 61729106 371831016 371831016 382959186 382959186 322471384 114721520 85773952 15472360 13026112 31650048 31650048 261685250 333367026 441638462 441638462 328050368 315997372 315997372 473614122 473614122 148236996 335718064 496770015 496770015 954113637 954113637 581280432 761667777 952684187 952684187 641894912 641894912 730467944 730467944 1009802211 1009802211 817423725 817423725 741466896 742514693 742514693 648061445 67373064 100999184 410593158 410593158 714137764 714137764 60868177 813686739 813686739 585491626 1057500533 1057500533 738724876 738724876 961417397 961417397 601364561 835191090 835191090 50467040 39062304 117735552 124158224 124158224 113661488 113661488 34476744 98925824 98925824 570560529 582361168 644887065 654774260 654774260 435417394 435417394 889060390 889060390 688777920 688777920 554572833 949615206 949615206 153419780 874981464 949361424 949361424 788793405 1009872863 1009872863 707246441 644018760 576681649 576681649 586629360 586629360 46295060 139509796 173271572 173271572 159734388 162327952 162327952 237847626 518578910 518578910 479586894 35884354 35884354 269649664 269649664 366783670 1023162999 1023162999 462699726 688787008 688787008 599219361 599219361 595382193 716513696 716513696 559722261 598096576 598096576 585290097 587326769 715213093 715213093 106532189 8151428 550181012 604897308 604897308 617228356 617228356 583603476 282526156 429730382 429730382 369498304 479474316 604930278 961144486 961144486 472837188 964698534 1030280075 1030280075 871168409 647019465 647418577 647418577 629754912 629754912 653948209 653948209 592839168 592839168 909778199 909778199 793907901 427300123 1018168321 1018168321 741379651 741379651 648754521 724919749 855762257 925840459 925840459 672107288 820847639 820847639 403562770 275570400 275570400 31378818 684158737 684158737 955428803 955428803 810636358 268989312 268989312 137634816 140523776 140523776 140205440 7441856 43657680 43657680 36657152 63326128 63326128 94688208 94688208 69719168 243535432 280307580 341784776 341784776 604786493 604786493 404750676 643546007 643546007 560013729 560013729 326615921 309612962 785666463 785666463 1060144077 1060144077 842056467 677397142 117297432 117297432 177595636 180322148 542933632 542933632 678529040 678529040 706732288 706732288 708566980 721551456 726737844 726737844 301098578 334342640 334342640 559223911 559223911 430315026 430315026 702311562 1061281983 1061281983 1070756580 1070756580 569217470 869435539 869435539 348230536 348230536 581452496 581452496 596336033 596336033 587338267 587338267 673597369 717523197 717523197 990634288 990634288 352917512 749874912 762265005 762265005 695370475 425884997 205181708 2115208 440995242 506046812 531228030 531228030 304933288 247497176 88790184 88790184 69104776 122160848 122160848 214010260 214010260 635527825 635527825 233841564 584269944 627306921 627306921 191484821 678475548 678475548 624492929 654379264 654379264 229511276 229511276 41330688 166469348 324364192 324364192 304925970 206282776 355723868 355723868 174512532 336857480 476187450 523285100 523285100 517548404 517548404 485225934 426965458 347970066 347970066 238840384 238840384 136195112 240725424 240725424 84546600 578556613 578556613 89786740 805640194 805640194 864306427 864306427 872364022 872364022 545572929 295146026 226761223 781922380 806397698 976471393 976471393 487833938 696788067 696788067 344469512 344469512 243800200 243800200 105650188 68158976 56787184 56787184 576482004 679600197 920980961 998293543 1023984687 1023984687 669444449 885084640 885084640 656899240 349122696 394528890 394528890 350503650 350503650 339132480 364378378 364378378 288481922 577799362 577799362 457228128 989611092 989611092 674329989 674329989 859187015 859187015 572360359 957941223 957941223 858260851 195770721 730642131 730642131 328279110 308290544 305296002 305296002 334817136 334817136 302993024 375836058 375836058 375473938 375473938 344629520 284315970 377108122 377108122 110539528 118850824 118850824 62350872 45955920 386308906 504377908 504377908 502325270 486697964 436800431 986954116 986954116 911237331 311529537 290462101 231936447 428919781 882966565 882966565 6625664 540160196 581122692 581122692 285112776 285112776 278799346 130023672 321012928 321012928 289687634 470032712 771751949 771751949 755013677 739284376 739284376 308728392 362597994 813309186 851510195 851510195 828680195 634361788 649787574 649787574 403949076 404436486 404436486 335714564 335714564 71436680 156906464 156906464 351482570 351482570 587760727 587760727 500220654 477446325 541141129 736162053 931270905 931270905 974841661 974841661 841743954 1043899712 1043899712 896262241 595240150 595240150 793984350 793984350 434269396 772975518 772975518 728225179 841657020 841657020 772865215 809586747 809586747 866408726 997965433 997965433 656544057 619647202 619647202 344709273 17679520 22407184 549760419 549760419 272917442 833399507 833399507 293415410 293415410 478159296 478159296 671269014 671269014 426848271 575656593 676256901 676256901 549770100 549770100 555676489 555676489 716422496 716422496 131060645 88938624 88938624 81579720 117575824 117575824 337810378 356925994 356925994 828148683 828148683 890283114 890283114 882557513 483422415 251714088 386465356 440576232 715950901 715950901 563516752 669307364 669307364 348288040 348288040 977442301 977442301 120213528 773134640 773134640 758330157 723228967 723228967 928941762 928941762 298979648 298979648 875118506 875118506 394781018 798501622 798501622 700502332 700502332 591794321 591794321 678939372 678939372 618780704 267452180 264898028 264898028 226893816 129805032 52679584 69379456 105634304 105634304 41705872 115008672 115008672 97212008 54740072 396241662 396241662 508025478 508025478 135460520 86231360 86231360 487362504 487362504 452875518 509492232 509492232 849501585 849501585 108846376 569445157 569445157 203867656 733734512 733734512 768087233 775632669 775632669 645831444 704973493 704973493 185848040 185848040 646113904 646113904 609037673 609037673 387900040 387900040 280497764 73141896 761866368 761866368 560467464 327256232 327256232 871362338 871362338 306608672 306608672 281037088 277798002 43967040 43967040 38475408 341753770 341753770 757667061 778966703 778966703 981324693 981324693 753144761 753144761 677515653 535547659 535547659 436664561 436664561 205928617 150924624 150924624 141633304 55503152 213329744 223050560 254197532 254197532 114304816 207435848 207435848 169661124 349275778 349275778 134033400 528685002 528685002 370605164 379393064 379393064 209769776 228725100 228725100 228725100 83904576 83904576 411203590 958408725 958408725 378798172 730107939 924495951 924495951 262537386 429661793 429661793 538058634 672535392 672535392 887163841 887163841 881042390 881042390 357638826 809579681 809579681 285873186 276174466 276174466 288841042 288841042 62285360 583574608 584167633 584167633 549107056 20333888 23596448 78231816 78231816 85324257 543230089 543230089 541111457 148448964 148448964 138461316 138461316 138461316 258524604 879955348 1042234911 1042234911 1041578926 1041578926 672547461 672547461 299508256 299508256 54705828 594103072 594103072 593235633 584189760 715654485 808453718 808453718 593620969 593620969 480297866 923640404 923640404 758680056 790615344 790615344 56431728 63834336 63834336 20614416 29104960 109422592 153506585 764453733 957378141 957378141 311109133 760471097 760471097 273029250 627499522 627499522 679954548 1048711263 1048711263 858009733 889530411 966800091 966800091 391162481 50582592 321967384 882933952 932222881 932222881 915447578 335595266 335595266 57531568 308566400 308566400 43008512 314706384 329263634 329263634 35393040 915999437 915999437 496445534 580401895 580401895 479763097 935855355 935855355 549492765 445270078 429167209 26497568 35122705 717722961 717722961 703908773 746692872 746692872 134570240 238020564 239013464 609082569 727665452 1054604333 1054604333 309079514 835193538 835193538 575156112 632667385 632667385 575667345 202909960 188789552 473600916 473600916 465568160 465568160 219442814 138995944 190686784 190686784 277473194 374890776 374890776 271215002 92797032 71651552 65276400 61214848 475927698 511754324 591534122 591534122 1067371608 1067371608 262263840 262263840 744673677 744673677 737215953 737215953 724848592 153295000 186782004 255984008 255984008 92316740 138125632 233209418 233209418 490695364 490695364 404362576 291054886 285946126 473698062 473698062 323067024 323067024 291680428 97023008 137366532 137366532 78695188 184859632 347521762 347521762 251456612 479733802 479733802 992037497 992037497 322696198 841135388 841135388 572119936 671788164 894283960 894283960 879688299 812984474 812984474 317012952 805900288 806040579 921382984 921382984 1008855105 1008855105 281299200 474904108 474904108 256955344 286053152 286053152 353285440 353285440 28003338 16908320 23730176 26078304 26078304 78852936 78852936 70764608 202538176 202538176 198219732 176766804 253312852 598937924 604640265 763495688 763495688 690173733 486662190 486662190 416326376 380317098 380317098 332474256 276921706 276921706 286051362 286051362 235561836 286575138 286575138 309280146 820562206 820562206 861219841 861219841 589824360 537564195 679514122 679516171 679516171 454987887 377819739 587238719 587238719 704949297 726624028 746536845 746536845 630820916 147341444 76287048 112559440 251818020 251818020 206704876 206704876 20977824 20977824 274858146 344228004 344228004 232833228 128280950 340450354 340450354 509014448 509014448 15647618 403986560 684571235 877369353 877369353 526253222 526253222 504837196 504837196 374329352 375315122 375315122 992317480 992317480 631670733 695211533 695211533 225725130 418925542 418925542 822597906 889315371 889315371 893831812 893831812 584163568 805855298 805855298 144870784 71020288 76628744 94438376 94438376 104573232 104573232 50998616 48290688 107145104 107145104 71710976 71710976 102707888 102707888 132531120 132531120 118412400 119242328 119242328 113956056 80445648 55193616 145615084 145615084 80349356 222433452 315997372 315997372 67373064 67373064 67108864 264192 722469972 722469972 544810708 544810708 581280432 823140972 823140972 538841837 773492036 796415849 988548029 988548029 488638981 153115813 239100056 615530504 741466896 741466896 648061445 648061445 403059273 402862086 483518848 611377360 611377360 542639988 542639988 813686739 813686739 585491626 1057500533 1057500533 738724876 738724876 961417397 961417397 601364561 835191090 855204904 855204904 844112232 844112232 280382744 124158224 113661488 113661488 124392888 124392888 32134936 579265208 582361168 656671736 656671736 557730224 699450213 763497421 1041266691 1041266691 651240153 553816973 554572833 949615206 949615206 55291008 55291008 559902380 788793405 788793405 613883404 707246441 707246441 182156629 169083088 68185976 68185976 110123776 110123776 139509796 173271572 173271572 159734388 213538264 213538264 189152832 189152832 234745836 296846980 296846980 93446760 280602216 280602216 202165260 1023162999 1023162999 462699726 688787008 688787008 683137537 690350373 690350373 716513696 716513696 559722261 559702304 30690096 54926928 54926928 13335600 50836816 50836816 41964546 276615196 478081106 478081106 306311364 314829444 314829444 282526156 429730382 429730382 312853628 365112130 604930278 961144486 961144486 472055876 964698534 1030280075 1030280075 871168409 647019465 647418577 647418577 629754912 629754912 340125834 245108316 592839168 592839168 909778199 909778199 793907901 427300123 84495658 16777248 104860688 104860688 59511976 50987104 527699196 808350794 808350794 553522343 820847639 820847639 969819522 969819522 701373879 701373879 684158737 684158737 955428803 955428803 810636358 411780612 411780612 212133792 212133792 140523776 140205440 86262160 86262160 61465968 61465968 63326128 127113288 127815552 127815552 63838904 99364588 108478012 188353140 188353140 143270316 404750676 404750676 786956482 786956482 286310946 814793574 942719751 942719751 951376132 951376132 314868692 406113030 406113030 109041812 940021440 940021440 686113797 417197766 695613508 695613508 42082368 60932866 329145954 329145954 66488880 721551456 721551456 920797640 1007191390 1007191390 450124488 738226250 738226250 537270273 13914113 702311562 702311562 920997748 920997748 760761547 569217470 869435539 869435539 366285834 340301952 581452496 581452496 611859496 611859496 561462177 305112842 521807711 521807711 511782966 453034022 352917512 352917512 404211831 596849265 596849265 271322370 876097018 1072644001 1072644001 810473538 810473538 21988960 16965632 16965632 88641536 88790184 88790184 69104776 72301704 99559596 214010260 214010260 635527825 635527825 233841564 584269944 627306921 627306921 479728230 678475548 678475548 624492929 654379264 654379264 354191658 280247250 280247250 310464114 324364192 324364192 512312672 512312672 522828248 522828248 260209080 456266064 456266064 434448462 506536734 509384782 509384782 485225934 426965458 347970066 347970066 293798208 238840384 432672014 432672014 217200356 309932798 578556613 578556613 206115320 805640194 805640194 864306427 864306427 872364022 872364022 565940805 629178920 753280181 753280181 806397698 874505002 874505002 874218801 704712209 696788067 965228797 965228797 719756613 719756613 406899983 168187988 56787184 56787184 576482004 679600197 920980961 998293543 1023984687 1023984687 93064296 93064296 74187160 81792056 81792056 394528890 394528890 350503650 350503650 301211946 101171610 83253424 351554437 577799362 577799362 824908625 989611092 989611092 674329989 674329989 424879271 561513744 561513744 957941223 957941223 548931393 548931393 548931393 328279110 328279110 308290544 275851606 273424896 110117448 344199170 379847296 379847296 375836058 276699090 274471370 350349384 350349384 307020672 307020672 305431766 468985302 525607814 525607814 392971386 467495512 504377908 504377908 252048474 362045011 436800431 986954116 986954116 911237331 311529537 290462101 231936447 428919781 882966565 882966565 705273884 541652097 581122692 581122692 285112776 285112776 278799346 130023672 321012928 816191811 816191811 882909256 882909256 655005744 655005744 872546933 872546933 703340593 762389421 814826393 814826393 828680195 828680195 634361788 649787574 649787574 403949076 404436486 404436486 334360278 288044322 239367450 95951148 124520432 124520432 113510616 299895584 299895584 290720610 341082498 341082498 340142520 124065930 723730237 974841661 974841661 403278546 403278546 690081544 740559117 765824265 909733181 909733181 793984350 373883092 925994802 925994802 986067964 986067964 918160501 918160501 384036898 808025251 866408726 997965433 997965433 670028738 1035200920 1035200920 505532820 505532820 180429012 181739168 181739168 33595952 44046496 44046496 11934528 271687392 271687392 31351554 335585574 335585574 426848271 944396348 944396348 785589838 664819092 664819092 562968229 555676489 713080452 713080452 728994240 728994240 74433176 39793360 117575824 117575824 121279992 121279992 98095880 93870048 93870048 557991556 882557513 882557513 483422415 426476614 426476614 161611872 136450308 16781572 436440434 826430080 844178067 844178067 348288040 977442301 977442301 223903108 773134640 773134640 928385701 928385701 69337352 71303360 71303360 298979648 298979648 625893634 625893634 355004202 646498054 1049674335 1049674335 51383168 427088010 427088010 449981096 519203656 519203656 267452180 240772764 217835228 135819656 52679584 52679584 69379456 105634304 105634304 73507720 115008672 115008672 97212008 54740072 396241662 396241662 508025478 508025478 229512514 227615340 209789004 267386792 267386792 132727488 509492232 509492232 184567086 95194368 92323944 118149248 185177376 185177376 733734512 733734512 768087233 775632669 775632669 645831444 958320291 958320291 1067676489 1067676489 646113904 646113904 609037673 785125060 785125060 671055687 900276553 900276553 826674887 764593740 1006432392 1006432392 817417824 871362338 871981328 871981328 571456448 273476704 36363456 54579216 63620240 63620240 341753770 341753770 95893120 69805320 69805320 37490448 37490448 36965904 601616 0 1650176 1650176 71567360 85199400 85199400 150924624 150924624 141633304 55503152 213329744 213329744 175452216 179407220 200041172 207435848 207435848 169661124 118517760 94792064 94792064 389640556 389640556 428389732 448452438 448452438 209769776 228725100 228725100 503992178 503992178 328338240 178291018 958408725 958408725 378798172 730107939 924495951 924495951 912137883 912137883 786320287 640326531 640326531 537024854 537024854 312647505 881042390 881042390 1067460823 1067460823 143272579 65281936 65281936 39846288 39846288 54525744 54525744 560811296 560811296 51703713 7122608 4374656 5805952 16349504 81476416 85324257 543230089 551288864 551288864 80352456 131635889 832211051 832211051 495019306 495019306 723583354 975241270 975241270 751739722 751739722 567584776 567584776 299508256 299508256 321429938 321429938 177366436 197808708 197808708 177258948 316410180 317509074 593620969 593620969 480297866 923640404 923640404 541514224 790615344 790615344 109548001 63834336 109190277 790567200 790567200 736539448 729002989 764453733 957378141 957378141 639108633 760471097 760471097 853356250 853356250 821398369 821398369 1048711263 1048711263 858009733 889530411 889530411 550463554 558490785 593167233 593167233 41699152 38458512 38458512 37012992 66243872 66243872 308359616 308359616 41992272 270242976 314706384 314706384 143808722 725823669 915999437 915999437 496445534 580401895 721423542 721423542 935855355 935855355 549492765 445270078 429167209 216788200 216788200 717722961 717722961 703908773 746692872 1052401524 1052401524 1050177435 1050177435 1039309913 609082569 898084016 898084016 467669014 835193538 835193538 575156112 632667385 632667385 575667345 214057224 188789552 473600916 473600916 465568160 465568160 256381768 256381768 101523800 101523800 118039608 307170587 854421571 897878283 897878283 850709331 850709331 268866385 259168586 511754324 591534122 591534122 1067371608 1067371608 240672793 151634912 213230884 213230884 161014488 180430837 701245524 701245524 600759537 699768421 729758101 729758101 967999149 967999149 818050176 818050176 490695364 363716622 291054886 522700442 522700442 159334308 525813404 525813404 440316054 423680130 299693088 299693088 98081416 441040468 441040468 204418094 79960104 163636628 166404165 992037497 992037497 322696198 841135388 841135388 982008896 982008896 894283960 894283960 1017947338 1017947338 986238830 352215050 885580239 885580239 987238995 987238995 818509071 906642759 987914715 987914715 921440338 495060032 495060032 273160222 353285440 353285440 224213124 496029432 496029432 30558794 374394218 374394218 400720568 400720568 387444408 619383204 751052057 751052057 234614404 234614404 49727452 763495688 763495688 690173733 123344568 250098816 250098816 119918288 125706168 125706168 276921706 276921706 286051362 286051362 235561836 235561836 682394954 682394954 489270559 537155216 861219841 861219841 973231157 973262871 973262871 789190700 789190700 454987887 229024356 568516992 568516992 150219393 602469105 602469105 549179301 579188961 579188961 575746753 579119409 975587367 975587367 726944230 867646323 986108806 986108806 474292386 474292386 470235150 88219688 653017515 653017515 394449018 970622369 970622369 146850766 536959536 783969549 811255471 1057928469 1057928469 999648058 999648058 504837196 374329352 375315122 375315122 740052392 740052392 631670733 695211533 695211533 225725130 418925542 418925542 822597906 889315371 889315371 893831812 893831812 584163568 805855298 977848118 977848118 856913629 856913629 1038346158 1071705775 1071705775 851631121 974569714 974569714 948487239 781922992 400241432 71710976 119031808 123492888 132531120 132531120 118412400 119242328 119242328 113956056 80445648 164004218 535129162 535129162 495152152 495152152 373353856 373353856 493669806 493669806 136860042 408443300 990429398 990429398 544810708 544810708 533031831 823140972 823140972 160524323 773492036 796415849 988548029 988548029 575931695 492572606 591507641 591507641 515022886 708262200 708262200 646390288 403059273 402862086 483518848 611377360 611377360 542639988 542639988 964089004 964089004 239338314 334110092 334110092 269933058 269933058 864027771 864027771 198656328 437843470 855204904 855204904 844112232 844112232 280382744 77595592 108302728 108302728 124392888 124392888 120198160 608263600 608263600 656671736 656671736 557730224 699450213 763497421 1041266691 1041266691 651240153 338592399 64962288 140014228 140014228 38021216 62988528 63250480 63250480 50669616 13214896 25264192 25430112 25430112 35843232 68185976 68185976 186305436 186305436 96542952 122825424 172101760 172101760 263260616 263260616 212951514 357091166 471393590 471393590 296846980 93446760 280602216 280602216 442293974 442293974 419183254 419183254 540956512 562350177 683137537 690350373 690350373 563971424 563971424 54544432 54544432 18518464 54926928 54926928 13335600 50836816 50836816 41964546 376904580 478081106 478081106 470492240 470492240 369519824 984227841 984227841 535795420 942139751 942139751 658964568 658964568 425391336 495711342 495711342 8545326 13764744 77019720 475495326 475495326 436288460 436288460 570824721 591796241 591796401 591796401 457443050 425771430 891495016 891495016 765133920 1010658376 1010658376 1030840905 1030840905 875374681 875374681 793839227 808350794 808350794 176526383 445704916 445704916 969819522 969819522 701373879 727399445 727399445 671725840 671725840 277873554 406236292 411780612 442483074 442483074 234924272 412259778 412259778 386899986 464702614 464702614 690319447 690319447 127113288 815222187 815222187 60758288 121263696 121263696 439886438 708644198 708644198 810354094 818679255 818679255 786956482 286310946 814793574 942719751 942719751 951376132 951376132 841405113 841405113 590502112 590502112 940021440 940021440 686113797 417197766 695613508 695613508 28992818 60932866 329145954 329145954 66488880 678954417 678954417 920797640 1007191390 1007191390 450124488 738226250 738226250 550830352 584395473 584395473 598229624 598229624 570728937 246340974 353106306 353106306 366285834 558681290 558681290 547043785 368152513 897007041 897007041 816283208 816283208 492342123 285392916 453034022 453034022 827093175 827093175 542076882 713606229 861799611 861799611 876097018 1072644001 1072644001 810473538 810473538 357096802 82188744 113260280 123466248 123466248 79398880 79398880 27213408 340245312 342084480 342084480 232444960 209785552 240333468 240333468 458499786 479728230 479728230 208017190 473440938 473440938 338505496 354191658 354191658 280247250 280247250 310464114 310464114 65914178 512312672 512312672 522828248 522828248 260209080 456266064 456266064 235283282 240321422 313739628 313739628 288746274 288672546 288672546 490429802 490429802 96875316 432672014 432672014 217200356 309932798 344733510 344733510 206115320 491656580 491656580 409671852 523920686 523920686 488085086 565940805 629178920 753280181 753280181 716009301 874505002 874505002 874218801 704712209 552680786 965228797 965228797 719756613 719756613 406899983 168187988 828169889 828169889 203865356 567123794 616442811 616442811 365185106 365185106 114035928 874530152 874530152 654590392 318767368 77668632 102834504 102834504 1174016 139460628 139460628 134234660 351554437 351554437 329068146 824908625 833913056 833913056 823530289 823530289 334181570 842020545 842020545 398943793 398943793 548480000 792973506 953531334 953531334 215314426 440739888 440739888 379922778 379922778 448181204 448181204 379847296 335785992 278264512 346097816 350349384 350349384 307020672 307020672 305431766 468985302 525607814 525607814 392971386 467495512 467495512 369172530 252048474 252048474 181025645 553552662 652086598 652086598 343485312 493743534 493743534 285347874 547426350 705273884 705273884 541652097 172123293 355606736 355606736 282592192 282592192 13029890 268828993 816191811 816191811 882909256 882909256 655005744 655005744 872546933 872546933 727998766 762389421 814826393 969672461 969672461 99915205 28496736 27582296 168384584 497551104 497551104 439232338 275487752 275487752 239367450 95951148 124520432 295834122 295834122 299895584 299895584 290720610 341082498 939811856 939811856 67422216 704971144 704971144 261347096 261347096 191075268 690081544 1015408719 1015408719 909733181 909733181 798515291 667542320 925994802 925994802 986067964 986067964 918160501 918160501 384036898 808025251 808025251 891725987 891725987 739991699 1035200920 1035200920 638604326 1058723391 1058723391 420736230 420736230 20983840 199857222 199857222 309737856 309737856 351799204 351799204 826877485 826877485 794177309 944396348 944396348 785589838 664819092 664819092 562968229 258822429 713080452 713080452 728994240 728994240 118073913 99880224 287082210 287082210 74029864 98095880 320869235 643859985 643859985 608400811 555299055 555299055 490908329 427233408 426476614 249490324 896712003 896712003 1027655071 1027655071 844178067 844178067 126750920 809501859 809501859 740706563 740706563 908510116 928385701 957651716 957651716 912587051 745986012 284028354 422154889 625893634 625893634 355004202 646498054 1049674335 1049674335 340986076 776213007 776213007 536877648 588515416 588515416 0 0 90442232 90442232 73405536 401166370 401166370 61877152 271616896 271616896 268699650 82736898 79288064 269157352 363992576 363992576 281536576 281536576 229512514 227615340 209789004 267386792 267386792 327636426 519975312 519975312 468763638 300173844 160070592 160070592 118149248 79957304 61002096 61002096 698646709 698646709 50484096 50484096 958320291 958320291 1067676489 1067676489 617847091 229132420 229132420 785125060 785125060 671055687 900276553 900276553 826674887 764593740 1006432392 1006432392 817417824 573912538 871981328 871981328 571456448 273476704 36363456 54579216 63620240 63630136 87546696 524230561 1022702879 1022702879 971055591 1066436287 1066436287 764797721 764797721 692183205 419500097 869526082 1057237200 1057237200 258327352 122192776 122192776 120247608 28838912 121308992 147926180 260120696 260120696 200041172 239619584 239619584 118517760 118517760 313549498 313549498 389640556 389640556 428389732 448452438 448452438 401021538 401021538 253229628 503992178 503992178 506159378 506159378 370786570 370786570 266702988 534952398 534952398 352586208 912137883 912137883 786320287 675955216 675955216 537024854 705744916 959450625 959450625 850944630 1067460823 1067460823 828182256 828182256 823913266 823913266 321254818 321254818 57788576 560811296 565773040 582166960 582166960 40494480 52980896 52980896 81476416 81476416 88480930 885762218 885762218 807016546 807016546 832211051 832211051 495019306 687939810 998326335 998326335 975241270 570723480 274620677 567584776 567584776 309674864 309674864 321429938 321429938 315099762 530978084 530978084 530852222 420540774 488654684 488654684 270741774 270741774 659616900 756443981 756443981 623618641 152502769 109548001 43833920 109190277 790567200 790567200 736539448 729002989 602441196 878872977 878872977 639108633 639108633 445238357 853356250 853356250 821398369 821398369 1032847983 1032847983 500820138 393759537 393759537 562076720 579787857 593167233 593167233 576904576 578961425 578961425 552753040 268567586 268567586 308359616 308359616 331423986 331423986 310726098 310726098 419586886 725823669 725823669 913100808 913100808 846077331 721423542 721423542 444934230 483077796 483077796 335544328 335544328 216788200 216788200 183051732 183051732 662619298 925350555 1052401524 1052401524 1050177435 1050177435 1039309913 323038371 126692472 299942594 467669014 467669014 322098944 532683433 949393559 949393559 755389669 755389669 561821497 1043840901 1043840901 563652574 152539584 257694024 258611172 258611172 194518096 350347722 377906665 854421571 897878283 897878283 890248498 850709331 627184424 840091948 840091948 448205272 831529502 831529502 686417216 303153376 303153376 1025878662 1025878662 314646738 303690992 701245524 701245524 600759537 699768421 729758101 729758101 967999149 967999149 818050176 818050176 425070600 425070600 501034734 522700442 522700442 410652844 525813404 525813404 440316054 423680130 299693088 299693088 98081416 441040468 441040468 420911078 457295020 457295020 323012804 502784814 502784814 184579770 281126652 440524950 982008896 982008896 155398308 268493824 1017947338 1017947338 986238830 352215050 885580239 885580239 987238995 987238995 515385371 906642759 987914715 987914715 921440338 495060032 495060032 273160222 173652482 315405876 315405876 496029432 496029432 59388264 374394218 374394218 400720568 400720568 387444408 619383204 751052057 874018774 874018774 655529756 655529756 991632915 991632915 672613408 119736584 250098816 250098816 119918288 126554956 220007996 233084932 233084932 162100136 130386000 14967729 597027441 682394954 1013620158 1013620158 1046446298 1046446298 722075648 973231157 973262871 998277304 998277304 789190700 229024356 229024356 764649486 764649486 322073121 602469105 602469105 549179301 579188961 579188961 575746753 579119409 975587367 975587367 726944230 867646323 986108806 986108806 474292386 474292386 470235150 352589304 653017515 653017515 394449018 970622369 970622369 146850766 536959536 783969549 783969549 1057928469 1057928469 999648058 999648058 404555062 172883484 172883484 166538724 229395204 229395204 138186092 218109316 218109316 141298092 343538048 343538048 7057034 2919424 985169979 985169979 873482199 413180646 448872902 977848118 977848118 856913629 856913629 1038346158 1071705775 1071705775 851631121 974569714 974569714 948487239 781922992 400241432 84952184 126386728 126386728 123492888 50776160 93662224 93662224 45360392 42467584 42467584 164004218 535129162 535129162 495152152 495152152 714655317 733445029 733445029 493669806 136860042 408443300 990429398 990429398 673194769 673194769 347095368 633596362 633863920 633863920 123236344 123236344 52041264 607261449 607261449 1023547931 1023547931 799295777 799295777 708262200 708262200 588388964 642781753 672132248 672132248 474926730 444908848 765723995 902301155 964089004 964089004 239338314 334110092 902499442 902499442 756178798 756178798 678796895 198656328 437843470 437843470 1098240 573915667 806414592 806414592 570474512 164224 34210192 34210192 120198160 120198160 643977809 643977809 82887624 552045169 561274896 561274896 620190241 694710272 694710272 680453159 680453159 299769570 558065410 558065410 553405762 62988528 717304853 717304853 50669616 13214896 25264192 25430112 40332200 120775720 120775720 126538872 186305436 186305436 204148000 204148000 172101760 172101760 263260616 263260616 212951514 357091166 471393590 471393590 290997280 290997280 68239484 310976658 442293974 994055241 994055241 419183254 307996214 307996214 21289376 20279668 572640384 572640384 724786708 724786708 718289440 56794608 56794608 7363504 10870496 58173504 58173504 52704544 376904580 376904580 243844316 470492240 470492240 369519824 984227841 984227841 535795420 942139751 942139751 658964568 658964568 425391336 495711342 495711342 998802679 998802679 970750157 781235085 781235085 649591641 637896880 637896880 591796241 591796401 591796401 425771430 425771430 891495016 891495016 765133920 1010658376 1069073360 1069073360 1030840905 875374681 875374681 793839227 956714261 956714261 330822788 814944599 814944599 719906672 719906672 545921045 727399445 807130405 807130405 554093216 675679504 675679504 182683712 442483074 442483074 234924272 412259778 412259778 386899986 464702614 464702614 690319447 690319447 84479664 815222187 815222187 363958562 532057446 532057446 439886438 708644198 708644198 810354094 818679255 818679255 541583845 541583845 442549696 11062290 314362059 934545991 934545991 908183829 908183829 590502112 1022578851 1022578851 415200339 825629124 825629124 948946182 948946182 134748390 43061248 269246032 269246032 43944962 42636432 42636432 37883904 201617876 201617876 115866072 705766165 705766165 550830352 584395473 584395473 598229624 598229624 570728937 246340974 353106306 353106306 366155306 558681290 558681290 547043785 368152513 929104762 929104762 1038393901 1038393901 699273966 692324551 692324551 482511016 915432013 915432013 542076882 713606229 861799611 861799611 782163549 571774028 223821220 223821220 357096802 357096802 258344978 113260280 123466248 214180484 214180484 349113044 457053418 457053418 342084480 342084480 232444960 209785552 240333468 240333468 252452928 252452928 79044220 67641344 67641344 40641800 38538384 19664160 19664160 25239616 25239616 33947664 33947664 33568848 294426928 294426928 292424730 285737240 285737240 118538744 118538744 235283282 240321422 342111004 342111004 512635268 512635268 212643980 490429802 490429802 129303672 406466618 406466618 237638940 237638940 598086945 598086945 585762224 585762224 183244229 794654135 809368299 809368299 832605089 832605089 161892864 155332752 184623156 895684972 895684972 602016243 308445553 302303250 92445114 539543616 543872385 694326193 706387740 706387740 323915268 828169889 828169889 693244581 693244581 616442811 616442811 520744362 520744362 266864124 874530152 874530152 654590392 318767368 209822273 1026827159 1026827159 186650069 201916495 201916495 134234660 161531968 161531968 153913680 177226055 807405527 979911111 979911111 823530289 334181570 842020545 842020545 398943793 398943793 570468356 792973506 953531334 953531334 387739568 440739888 440739888 379922778 379922778 448181204 448181204 335785992 335785992 278264512 346097816 346097816 303121408 303121408 11100168 37224960 37224960 44040528 433957012 458509026 458509026 151833612 185461812 185461812 244299520 244299520 548045206 548045206 343485312 343485312 493743534 493743534 285347874 547426350 547426350 561632836 561632836 805366036 805366036 355606736 282592192 322210434 322210434 542403440 542403440 415236416 772408384 772408384 304102425 310412823 656147010 656147010 727998766 727998766 693183141 969672461 969672461 664723913 714078304 714078304 599020246 497551104 497551104 439232338 274843832 253575938 239149212 88580284 91055152 325101794 325101794 870691658 870691658 882486417 882486417 939811856 939811856 606634181 704971144 1028267648 1028267648 991242807 991242807 595894334 1015408719 1042787342 1042787342 798515291 798515291 774245656 782339412 782339412 70042693 11665472 11665472 11534400 545792 689152 409553121 409553121 509269662 739991699 913429538 913429538 893595819 1058723391 1058723391 987652801 420736230 17041440 322411698 322411698 309737856 309737856 351799204 492659668 826877485 826877485 794177309 794177309 124027458 84150312 84150312 262184 92348936 92348936 92480008 92480008 589416752 589416752 118073913 99880224 287082210 287082210 71336272 71336272 320869235 643859985 643859985 608400811 555299055 555299055 490908329 427233408 391427868 723679113 896712003 896712003 1027655071 1027655071 749450427 313709009 313709009 742913412 742913412 740706563 740706563 908510116 908510116 957651716 957651716 912587051 745986012 284028354 422154889 422154889 341452139 165013860 471985182 471985182 537198625 537198625 776213007 776213007 536877648 588515416 588515416 157913620 54623876 90442232 90442232 83105536 401166370 401166370 61877152 271616896 271616896 268699650 82736898 7902536 269157352 363992576 498143428 498143428 407577612 160661612 222418180 222418180 217716684 32658592 327636426 519975312 519975312 468763638 300173844 160070592 160070592 250486584 250486584 171583240 150040128 150040128 137527856 137527856 54571024 174058140 235947028 235947028 198310642 481463210 491731270 491731270 501961964 501961964 396484986 396484986 366171024 693234350 693234350 763025920 763025920 454917515 48834000 291275234 291275234 279101570 271381570 293621586 293621586 25813120 63630136 87546696 524230561 1022702879 1022702879 971055591 1066436287 1066436287 764797721 764797721 692183205 419500097 869526082 1057237200 1057237200 258327352 122192776 122192776 124047128 124047128 121308992 147926180 260120696 260120696 92742764 239619584 239619584 124013104 81945584 313549498 313549498 327450724 327450724 69228372 245777900 245777900 401021538 401021538 253229628 480351422 480351422 506159378 506159378 370786570 370786570 266702988 534952398 534952398 352586208 566007300 895782265 1010884415 1010884415 778492317 778492317 705744916 959450625 959450625 645360433 645360433 208704709 828182256 828182256 823913266 823913266 582885824 321254818 57788576 57788576 565773040 582166960 582166960 40494480 52980896 52980896 71385600 77487874 281510976 885762218 885762218 807016546 901383307 901383307 901775595 901775595 817902792 998326335 998326335 585999848 600963225 600963225 541500016 118761392 309674864 309674864 310936466 321915040 857588033 857588033 631405320 631405320 420540774 488654684 641494129 641494129 270741774 659616900 756443981 756443981 623618641 152502769 37945472 39062160 85297808 85297808 74531072 74531072 72475272 54903056 54903056 50858160 50858160 271583248 305400594 319031730 940059748 940059748 763423947 1032847983 1032847983 500820138 784467922 784467922 562076720 579787857 850450393 850450393 821333273 578961425 578961425 552753040 268567586 268567586 279533584 292308002 331423986 331423986 310726098 310726098 419586886 419586886 431010438 913100808 913100808 846077331 1033315060 1033315060 617247429 730885323 730885323 342929685 342929685 67108874 43778497 582433617 582953751 946280080 946280080 925350555 913309585 256166076 541203132 559989253 559989253 826909511 826909511 592732208 556173696 973226019 973226019 949393559 949393559 755389669 755389669 561821497 1043840901 1043840901 849581283 522980670 411663850 349082944 258611172 194518096 350347722 377906665 663624825 663624825 890248498 890248498 812701969 627184424 1027054560 1027054560 635636153 831529502 831529502 509629656 509629656 303153376 1025878662 1025878662 314646738 303690992 654420480 654420480 194961012 194961012 59525172 171123792 171123792 382863640 382863640 316486608 425070600 425070600 501034734 501034734 222629834 410652844 410652844 416843844 416843844 139314368 139314368 135122016 99780288 21233664 420911078 420911078 457295020 457295020 323012804 820002848 820002848 507527581 281126652 440524950 541689344 541689344 118585113 862643552 867698547 867698547 347156219 248439314 575407104 575407104 16778401 690181888 690181888 67353536 476171152 476171152 434482408 434482408 361499042 249037960 144567876 315405876 315405876 109087962 33592736 59388264 71505008 85009120 89252520 89252520 168810913 168810913 262849934 874018774 874018774 655529756 655529756 991632915 1007158287 1007158287 508683921 631960001 631960001 613074209 588142024 568814841 233084932 731313177 892376326 892376326 17844304 597027441 646129390 1013620158 1013620158 1046446298 1046446298 740783069 286814191 136714500 998277304 998277304 478080222 478080222 477595646 764649486 764649486 322073121 63437040 78914432 925013234 925013234 619234761 332026171 103932696 69296656 59912816 167813584 167813584 438661230 438661230 821044454 961359106 961359106 526910910 526910910 935904507 935904507 289457269 192669056 253964068 465629492 465629492 374224054 401908432 401908432 340674610 375817674 375817674 75156704 28315360 28315360 229395204 243687629 548675265 786060125 786060125 246449802 229839647 126618434 861046136 918103899 985169979 985169979 873482199 810140613 679642324 679642324 138017411 89022392 89022392 124635240 124635240 14280384 65319896 749258232 749258232 117103965 6872072 104612496 104612496 126386728 126386728 118786288 118786288 121645584 121645584 45360392 65284592 65284592 23316768 81421616 111229132 174463380 235815901 714655317 733445029 733445029 135266820 135266820 135266820 462761623 462761623 673194769 673194769 943752768 943752768 805380099 649890123 572122641 123236344 933515273 933515273 607261449 1023547931 1023547931 799295777 799295777 230951617 230951617 588388964 642781753 672132248 672132248 474926730 444908848 765723995 902301155 902301155 689098882 809243074 809243074 902499442 902499442 756178798 756178798 678796895 603278533 735882663 735882663 395096053 573915667 806414592 806414592 570474512 384091162 80290360 128000376 128000376 376567578 643977809 643977809 348222130 552045169 561274896 561274896 620190241 620190241 554316320 680453159 680453159 493222562 558065410 558065410 553405762 44508754 717304853 717304853 949268920 949268920 790085629 790085629 732953973 558890145 610647185 610647185 589678888 63479880 204148000 204148000 226955848 226955848 144838656 6318272 155266192 166553020 469794856 469794856 344458314 290997280 68239484 310976658 310976658 994055241 994055241 300486834 579398884 579398884 541668737 48482405 572640384 572640384 724786708 724786708 718289440 56794608 56794608 7363504 10870496 58173504 58173504 52704544 52704544 336790528 451413334 451413334 404069586 424420084 424420084 453036952 453036952 215916726 301866978 325326660 325326660 368475296 368475296 409435286 998802679 998802679 970750157 781235085 781235085 649591641 637896880 637896880 650172586 663099513 663099513 355590954 355590954 712826070 712826070 639125176 705482257 1069073360 1069073360 995747511 720920930 302378304 46689538 956714261 956714261 330822788 814944599 814944599 440748850 324385506 455090434 455156022 807130405 807130405 554093216 675679504 675679504 178881892 178881892 147255680 67683336 67958208 67958208 57231440 52445232 61601136 275408242 275408242 131357200 296930682 296930682 363958562 532057446 532057446 394516818 1036612770 1036612770 290170095 55710384 63363312 843057292 843057292 771753035 647802473 629951609 934545991 934545991 908183829 908183829 132489727 1022578851 1022578851 415200339 825629124 825629124 948946182 948946182 134748390 563718018 684028898 684028898 439411026 559326752 696013865 696013865 949248358 949248358 377686058 377686058 389387088 389387088 369331034 302070048 302070048 616876233 893438104 893438104 864059976 550503105 76792521 41957928 117704760 465719872 465719872 929104762 1025472566 1038393901 1038393901 699273966 692324551 692324551 482511016 915432013 1046337071 1046337071 1003275337 654836793 416624383 236915510 790831514 790831514 238886509 235144460 279714060 496016158 496016158 443050826 301016034 214180484 349113044 457053418 457053418 277873218 197473572 197473572 308425206 452466450 452466450 421527846 461898790 461898790 196876534 484442274 484442274 309329968 309329968 353711650 353711650 336857682 303368818 329433088 329433088 291461442 507947110 507947110 445200258 445200258 303643248 223096240 391981520 391981520 470849556 470849556 512635268 512635268 212643980 212643980 324613824 324613824 407035592 407035592 237638940 447238238 598086945 598086945 585762224 1002603684 1002603684 794654135 809368299 809368299 832605089 832605089 820243737 350777754 612422346 895684972 895684972 602016243 308445553 908070488 908070488 539543616 641994797 694326193 706387740 706387740 323915268 323915268 291116706 693244581 693244581 170918676 527746148 527746148 520744362 266864124 424204564 478550094 478550094 283318476 258349500 1026827159 1026827159 186650069 715210744 760946477 760946477 780241009 780241009 672400097 672400097 807405527 979911111 979911111 576784388 587936784 587936784 576926849 327364722 621112386 621112386 570468356 134561809 387296986 387739568 387739568 314413408 75835464 75835464 307793552 307793552 103841920 103841920 119661896 119661896 319365450 344990274 344990274 336374826 336374826 474588366 474588366 433957012 458509026 458509026 151833612 185461812 306380946 474557719 609822343 914307479 914307479 735116175 735116175 680035862 143541932 99638430 268436418 269615426 766648968 766648968 805366036 805366036 384852472 102819496 341134098 341134098 546606009 546606009 539001872 1021318423 1021318423 470430279 772875817 941433383 973544057 973544057 487335980 739061054 739061054 664723913 664723913 714078304 714078304 599020246 180452216 470287370 470287370 388071724 427204390 503468046 503468046 235517200 337668377 337668377 922753616 922753616 882486417 882486417 997843697 997843697 731327158 806520378 1028267648 1028267648 991242807 991242807 345342978 455338302 1042787342 1042787342 724313117 774245656 774245656 671481417 819118854 819118854 763170633 241334577 259791796 259791796 278050464 278050464 377684128 377684128 486621388 1046594016 1046594016 893595819 692786315 987652801 987652801 158891204 183493424 322411698 322411698 289395824 304529346 304529346 492659668 492659668 259048380 35652044 124027458 124027458 143060065 639204060 639204060 612397613 266215796 707365828 707365828 690131296 690131296 128414024 128414024 116652600 79691976 102809752 102809752 77594952 102533922 102533922 122472058 122472058 4904064 90973390 391427868 391427868 723679113 723679113 240512992 953717960 953717960 749450427 652330759 677905681 742913412 742913412 608254345 472485120 472485120 788602630 788602630 509354943 498433622 498433622 417941572 417941572 85281538 395651834 501868142 501868142 471985182 537198625 537198625 429927354 484706564 484706564 108353712 223874848 223874848 54623876 27396544 83105536 83105536 19529928 19923744 19923744 70056448 70130952 75825416 76231752 76231752 13813320 295248172 498143428 498143428 407577612 277471616 277471616 222418180 323373120 528990014 528990014 511260302 229418306 549588169 549588169 262767784 793014573 793014573 250486584 186469428 158893500 691821605 691821605 174133892 675747975 675747975 411027478 188095488 308284290 481463210 491731270 491731270 149085966 174987020 396484986 396484986 366171024 90749424 85013640 72488608 356065952 356065952 272242434 291275234 291275234 313548928 313548928 293621586 372806488 391861202 391861202 344052592 102777144 61684784 61684784 114593640 273965264 336931338 336931338 269579072 538186528 538186528 558550032 561563904 561563904 23971745 22204416 19399968 124047128 124047128 113642432 120592576 235805720 235805720 67639308 59789352 124013104 124013104 345926146 345926146 436476992 436476992 130030160 59901240 133071176 136727812 136727812 422768404 422768404 394445252 103685400 516564486 516564486 377691978 377691978 472835694 472835694 319595056 848565521 848565521 895782265 1010884415 1010884415 778492317 778492317 296183570 296183570 278538864 305295696 305295696 65350128 14427472 28181248 28181248 582885824 582885824 18061201 28336128 28336128 25979168 18351648 37666304 37666304 75811424 91589088 91589088 25288800 281510976 281970400 658540699 658540699 901383307 901383307 901775595 901775595 817902792 817902792 585999848 585999848 600963225 600963225 541500016 12599424 268969890 277671122 310936466 561748496 857588033 857588033 631405320 631405320 94636392 94636392 641494129 641494129 212705896 778425181 778425181 779467796 779467796 84359328 84359328 39062160 85297808 734158936 739551896 771867485 771867485 617635708 958750665 958750665 572267383 540091137 286470032 761659394 940059748 940059748 763423947 430187046 473920814 473920814 784467922 784467922 543872385 938103242 938103242 850450393 821333273 115402449 399193554 399193554 313739760 120169584 27951456 46228544 46228544 33063136 49534448 184911556 184911556 815533635 815533635 815668801 815668801 688037494 1033315060 1033315060 617247429 730885323 730885323 342929685 342929685 105056976 105056976 582433617 582953751 946280080 946280080 301989906 793473182 793473182 659116223 559989253 1061914022 1061914022 826909511 592732208 556173696 973226019 973226019 537119304 537119304 651592903 651592903 545333313 474343566 849581283 849581283 522980670 411663850 349082944 109396640 315271122 322774642 322774642 303061456 52906352 27576674 395581760 395581760 605550728 1027054560 1027054560 635636153 635636153 456491603 747740843 747740843 684365811 576525284 597215217 799038221 799038221 716264673 654420480 207894084 753458072 753458072 734110549 703779813 737609617 781442972 781442972 421940230 421940230 135605124 56823308 214315156 226696688 226696688 416843844 416843844 415884486 418744832 418744832 99780288 466703452 466703452 526719448 526719448 479163682 189006018 820002848 931753261 989855799 989855799 604059327 542774913 541689344 118585113 862643552 875096374 875096374 489455631 428126212 575407104 575407104 16778401 690181888 779049005 779049005 476171152 657916682 657916682 743422385 777681137 777681137 210860777 621222936 702871636 702871636 133226760 53601120 46261104 85009120 89252520 89252520 89138808 37933200 115376570 830493938 830493938 311099541 706017164 706017164 1007158287 1007158287 508683921 631960001 631960001 613074209 630271232 630271232 100570856 731313177 892376326 892376326 1011918530 1011918530 747234381 646129390 919054884 940923545 940923545 740783069 286814191 136714500 807567595 807567595 478080222 784805659 784805659 886496201 886496201 761438794 761438794 502226543 925013234 925013234 619234761 993211191 1021577257 1021577257 652341873 1059129706 1059129706 637668016 637668016 821044454 961359106 961359106 526910910 526910910 935904507 935904507 289457269 192669056 253964068 465629492 839699010 839699010 712321751 1071990661 1071990661 1000751176 375817674 75156704 28315360 139782080 139782080 243687629 548675265 786060125 786060125 246449802 229839647 126618434 861046136 918103899 918103899 715662902 810140613 810140613 679642324 1009467534 1009467534 543946113 409088351 1035502166 1035502166 1015731279 908631401 749258232 1028660282 1028660282 680663864 601900185 601900185 109746256 558059561 558059561 118786288 121645584 121645584 639514377 639514377 67413352 571451145 571451145 87370920 87370920 135168 135168 8519744 8519744 135266820 135266820 369764352 370097178 370097178 616112521 616112521 943752768 943752768 805380099 649890123 572122641 71073105 933515273 933515273 771242880 749996877 270535476 0 0 0 2365440 2365440 2240768 2306304 80134156 413933018 413933018 304663882 761142947 761142947 689098882 809243074 809243074 672138252 672138252 605554185 538730186 923382663 923382663 956252103 956252103 855298253 548906729 548906729 107258468 384091162 384091162 80799344 128000376 128000376 376567578 376567578 128061816 348222130 348222130 265693684 265693684 227586696 206133796 362419818 362419818 493222562 493222562 877794316 877794316 139072667 386401338 505549222 958665096 958665096 949268920 790085629 790085629 732953973 558890145 610647185 610647185 589678888 254542044 85078720 85078720 226955848 226955848 95421288 126619308 257950140 257950140 469794856 469794856 344458314 273191024 50561730 10018880 18374736 365487444 365487444 555762048 579398884 948702279 948702279 199964147 277082336 277082336 969952241 969952241 463237458 813898133 813898133 237134092 237134092 742995224 742995224 986383299 986383299 968361831 564344326 451413334 404069586 424420084 443597770 936452217 1016373369 1016373369 301866978 325326660 815109839 815109839 42865220 809904247 809904247 443011550 305447048 342737880 342737880 428132364 469870846 469870846 650172586 663099513 663099513 355590954 355590954 341386890 977371216 977371216 617392640 617392640 164201528 121695468 302378304 302378304 63448710 303902226 430976372 430976372 329852274 440748850 440748850 324385506 324385506 57084146 52454180 168944148 188307744 188307744 36117504 178881892 316194562 316194562 103686192 271258626 271258626 347134970 347134970 172928894 774276869 774276869 131357200 932126331 932126331 70329096 218169928 228589932 228589932 1036612770 1036612770 382050821 580389913 580389913 843057292 843057292 771753035 647802473 629951609 227090481 4530228 55574688 55574688 37823104 38278848 43127376 538384384 538384384 38677697 541137088 541137088 333088384 563718018 684028898 684028898 439411026 559326752 696013865 696013865 949248358 949248358 377686058 377686058 318998800 318998800 288807714 302070048 302070048 616876233 893438104 893438104 864059976 589607569 958746890 958746890 774162543 1034041759 1034041759 903973506 1025472566 1025472566 209532323 209532323 282349790 293615630 891310352 891310352 1046337071 1046337071 1003275337 654836793 739497602 739497602 790831514 790831514 238886509 521454228 521454228 496016158 496016158 482006862 482006862 495241326 495241326 356536372 277873218 277873218 419832320 419832320 679090053 679090053 452466450 582539045 755812681 755812681 725198509 712508085 727781180 780443800 780443800 772336168 772336168 669446960 303368818 329433088 329433088 291461442 507947110 507947110 445200258 445200258 303643248 223096240 391981520 391981520 470849556 470849556 589546945 589546945 876882104 879588426 879588426 324613824 407035592 774051929 774051929 669915604 669915604 520760331 214772940 1002603684 1002603684 982962325 977984087 862791035 1069821168 1069821168 820243737 350777754 613753174 709368974 709368974 707467084 707467084 908070488 908070488 458377461 807584798 807584798 1007471616 1007471616 856326277 856326277 843191573 843191573 705215269 726786741 726786741 527746148 891339020 891339020 300220459 227142094 172359976 258349500 291246712 291246712 106880664 10018456 715210744 760946477 760946477 865243959 865243959 672400097 672400097 310379074 310379074 278398530 572522833 587936784 587936784 849351728 849351728 621112386 621112386 126389266 126389266 176161856 176161856 498763376 498763376 395326098 395326098 307793552 470734740 470734740 303653120 206082584 95422290 319365450 344990274 344990274 336374826 336374826 474588366 474588366 346597102 165167502 797204 414662452 429731430 429731430 474557719 609822343 914307479 914307479 735116175 735116175 680035862 143541932 99638430 268436418 269615426 766648968 766648968 691085488 384852472 384852472 339739264 341134098 341134098 546606009 546606009 551782488 1021318423 1021318423 848044369 881927807 941433383 973544057 981900033 981900033 739061054 739061054 614534228 237236508 320236564 320236564 292638634 369624090 518132172 518132172 388071724 427204390 503468046 503468046 235517200 337668377 873008504 922753616 922753616 926964966 926964966 997843697 997843697 731327158 806520378 806520378 222305356 210867229 553902108 553902108 486796193 908275744 908275744 589900043 539757825 671481417 671481417 819118854 819118854 763170633 241334577 259791796 259791796 278050464 477776527 477776527 436715705 740780041 1046594016 1046594016 595721394 996881847 996881847 942563937 942563937 183493424 553935975 553935975 23078400 24717216 334040472 334040472 177251855 177251855 579007068 1033238623 1033238623 756146733 639204060 639204060 764456524 764456524 749482693 707365828 690131296 690131296 128414024 128414024 362156658 362156658 102809752 273891914 311816848 311816848 269924930 269883906 453677664 453677664 437439602 256271642 352375872 352375872 520373914 520373914 282597540 421536450 652330759 747685124 1052823636 1052823636 644203876 421937199 874129186 1040865696 1040865696 908938173 509354943 498433622 498433622 417941572 417941572 85281538 395651834 501868142 501868142 129805410 388159520 388159520 175935080 316331544 316331544 223111428 223874848 223874848 75931352 130855696 130855696 92252640 351304962 351304962 25479264 269202432 269202432 337545000 337545000 338999328 338999328 361573632 361573632 336660480 4793472 277471616 279126280 279126280 323373120 528990014 528990014 511260302 223491266 549588169 549588169 262767784 793014573 793014573 186469428 186469428 199878320 691821605 691821605 174133892 675747975 675747975 411027478 34867728 337739834 337739834 185596980 236309334 236309334 164097262 110877508 287910006 287910006 682250612 682250612 631452009 487271458 487271458 272242434 21500834 319173944 319173944 375378368 375378368 372806488 391861202 391861202 344052592 102777144 55058696 53028056 114593640 273965264 336931338 336931338 269579072 538186528 538186528 203951916 561563904 561563904 259660076 115232988 224321196 224321196 186523188 222483380 222483380 235805720 235805720 202306712 202306712 194534198 283900610 504690492 504690492 436476992 436476992 51387224 51829576 133071176 136727812 136727812 422768404 422768404 394445252 135666180 516564486 516564486 844508297 844508297 472835694 672489089 672489089 848565521 848565521 573232401 776474764 776474764 553817781 688128397 688128397 727266277 727266277 592087833 592087833 955602980 955602980 139946657 583081232 583081232 51775168 51775168 34926048 28336128 25979168 42500178 269009922 304788482 304788482 91589088 91589088 287612488 354681122 354681122 894697664 894697664 297296682 297296682 6291584 627572736 627572736 27607048 83187368 162070760 207869472 232265800 614840653 614840653 163278208 855273301 864145362 864145362 711614373 732428661 732428661 570204400 659868345 659868345 642175409 326174680 284524672 778425181 778425181 779467796 779467796 277635152 302508050 303479570 303479570 734158936 739551896 771867485 771867485 683260389 958750665 958750665 572267383 988408805 988408805 761659394 761659394 710263333 541140238 1034333168 1034333168 320904512 626149677 626149677 201753778 938103242 938103242 830249977 830249977 81391435 99436034 313739760 313739760 120169584 52429040 52429040 16269408 33063136 50168448 184911556 184911556 815533635 815533635 815668801 815668801 688037494 688037494 554832562 437482072 437482072 286384712 223779468 223779468 105056976 177630944 177630944 563960234 563960234 845613874 845613874 793473182 793473182 659116223 320928990 1061914022 1061914022 242373056 242373056 311296 311296 691050571 740658024 753008975 753008975 618125458 545333313 12986433 75770632 75770632 87782536 283899346 283899346 38148240 315271122 322774642 322774642 303061456 52906352 27576674 395581760 395581760 620441739 719744709 719744709 504019230 504019230 534076122 747740843 747740843 916199311 916199311 597215217 799038221 799038221 716264673 646402508 207894084 753458072 753458072 734110549 703779813 737609617 781442972 781442972 417278978 417278978 135605124 122295480 214315156 226696688 226696688 121440388 415793828 415884486 418744832 418744832 87460672 466703452 466703452 526719448 526719448 479163682 176545923 694184148 931753261 989855799 989855799 1043031575 1043031575 840002581 680281155 427984405 875096374 875096374 489455631 428126212 428126212 343149450 444082582 650517834 779049005 779049005 355559706 657916682 657916682 743422385 777681137 777681137 210860777 784393452 784393452 702871636 626026520 126927400 81887904 67898560 67898560 37785600 37785600 106396432 645348249 830493938 830493938 808792576 808792576 706017164 179434417 436728396 436728396 211326576 123941080 276828232 892231790 892231790 1016701100 1016701100 539824672 139935008 1011918530 1011918530 747234381 740236445 819690113 956213710 956213710 920804107 973334371 974250519 974250519 807567595 190411328 994183025 994183025 886496201 886496201 761438794 761438794 502226543 387238458 348082088 224639752 993211191 1021577257 1021577257 652341873 1059129706 1059129706 637668016 637668016 404093306 411208000 411208000 408453824 131732704 131732704 588416252 588416252 439084036 740498902 740498902 839699010 892064184 892064184 1071990661 1071990661 1000751176 105547200 74239368 27521376 139782080 139782080 92435360 12900864 203096064 203109900 203109900 2110988 283902144 460358882 460358882 464801541 689704485 833422241 1067622955 1067622955 1009467534 1009467534 646438233 539573659 1035502166 1035502166 1015731279 908631401 358748586 1028660282 1028660282 680663864 601900185 601900185 109746256 558059561 558059561 101390376 101390376 117771912 639514377 639514377 67413352 571451145 571451145 124199316 124199316 11045525 571254033 590507501 590507501 246880367 246880367 477413302 477413302 370097178 347867196 465045366 465045366 298505442 298505442 15505698 62078976 62078976 27920224 771242880 771242880 956962282 956962282 770315757 63287616 63287616 88217896 88217896 52580400 39907632 339937680 397966456 397966456 302368052 411962688 411962688 299767590 347211950 347211950 672138252 672138252 605554185 538730186 923382663 923382663 956252103 956252103 855298253 661904696 661904696 730944392 730944392 230713192 80799344 86508840 107480248 134366912 134366912 83910752 94454104 218128464 218128464 139897440 206133796 206133796 88080552 391286257 549245617 978867313 978867313 877794316 139072667 386401338 589825152 958665096 958665096 215414932 240533348 240533348 45929040 67557384 67557384 40180744 254542044 254542044 73086600 73086600 67373064 210177024 210449484 210449484 257950140 257950140 345263860 345263860 302538584 273191024 78828360 269125058 830513243 830513243 693716894 693716894 985489848 985489848 948702279 199964147 809438595 809438595 969952241 969952241 463237458 813898133 813898133 237134092 815310582 815310582 742995224 986383299 986383299 968361831 564344326 43422870 978848945 978848945 575407639 936452217 1016373369 1016373369 86092135 174083744 815109839 815109839 67158024 809904247 1038675376 1038675376 518548783 16360462 75835392 75835392 243272709 592612529 592612529 138747173 675894290 975965463 975965463 952981859 977371216 977371216 616901271 419433683 1041869352 1041869352 1067529421 1067529421 618581408 882930210 882930210 430976372 26602080 416548354 416548354 33558786 304218370 304218370 318967408 318967408 188307744 188307744 36117504 52049744 316194562 316194562 103686192 271258626 360694712 360694712 347134970 172928894 774276869 774276869 291906352 932126331 932126331 224733612 238426268 238426268 378162706 535745956 848296042 1037393891 1037393891 580389913 583144064 583144064 579863121 36909840 512838536 571906712 1012193839 1012193839 793782665 774217752 774217752 709158963 850349457 850349457 443649427 328367506 328367506 333088384 450227218 450227218 328115904 328115904 275069350 274269312 6817152 6817152 2156160 73728 131104 1257984 16986144 17838080 50349568 50349568 1605680 576724992 615441723 615441723 913302933 958746890 958746890 774162543 1034041759 1034041759 87294724 809764992 809764992 805306371 609223305 609223305 167920396 891310352 891310352 836112871 622183209 637657113 637657113 739497602 739497602 611455881 611455881 1029448796 1029448796 521454228 261360252 432216634 482006862 482006862 495241326 495241326 356536372 346164198 346164198 419832320 419832320 679090053 679090053 302531630 582539045 755812681 755812681 725198509 712508085 727781180 780443800 780443800 772336168 772336168 669446960 56292304 280372992 280372992 119775920 123912480 123912480 270943744 275079338 275079338 83922914 296749064 364120938 364120938 67371874 589546945 589546945 876882104 879588426 879588426 368654528 368654528 774051929 774051929 669915604 669915604 520760331 214772940 982065216 982962325 982962325 977984087 862791035 1069821168 1069821168 779694344 774570656 613753174 709368974 709368974 707467084 707467084 447734458 300419433 2097184 807584798 863192712 1007471616 1007471616 856326277 856326277 843191573 843191573 705215269 726786741 726786741 446792448 891339020 891339020 703398956 227142094 207622644 207622644 482498469 662902653 662902653 367198767 931491979 931491979 545427858 865243959 865243959 464569313 49843008 806057491 806057491 597423729 587448320 572522833 268960002 849351728 849351728 848112723 848112723 649643865 834608533 955927359 955927359 914502035 826938820 395326098 395326098 238238620 470734740 470734740 303653120 206082584 76810824 76810824 120725024 286310400 286310400 353218568 353218568 158309888 158309888 505523740 505523740 414662452 429731430 429731430 421899714 337571442 236208156 453594118 453594118 319333144 304400658 289672048 25374816 25453504 288495776 288495776 277008450 282430434 282430434 87326848 339739264 339739264 897502610 897502610 876779147 831011935 883300427 883300427 848044369 881927807 881927807 254531410 981900033 981900033 739003286 468239557 265226502 237236508 320236564 320236564 292638634 369624090 518132172 528192416 528192416 470313110 220759060 169885736 169885736 136840458 873008504 873008504 583129510 926964966 926964966 901997051 901997051 438610992 438610992 105720984 469883532 469883532 695558182 695558182 486796193 202572786 581464580 759614993 759614993 218950307 199876608 879348780 879348780 849642771 840991027 406328615 213007202 34726416 477776527 477776527 436715705 740780041 740780041 595721394 595721394 996881847 996881847 950575223 950575223 698277477 947439495 947439495 404504611 431556010 431556010 370023684 404226580 404226580 579007068 1033238623 1033238623 756146733 298109154 298109154 764456524 764456524 749482693 628225960 342412776 366255474 366255474 336514810 462835730 462835730 486703368 486703368 311816848 311816848 269924930 269883906 453677664 453677664 437439602 241634328 216105348 646145449 646145449 520373914 498115660 755771637 813771845 813771845 1052823636 1052823636 920981630 888633185 972215271 1040865696 1040865696 908938173 84829488 130384112 130384112 130184552 73974080 28952619 809772843 877257867 877257867 874794593 874794593 548933136 175935080 316331544 316331544 223111428 223111428 202689036 249488068 249488068 221600056 92252640 351304962 351304962 85600544 269202432 335957376 337545000 337545000 338999328 338999328 361573632 361573632 336660480 82980544 335663168 479211782 479211782 144950022 177614360 242363656 242363656 80117648 142607652 142607652 91225512 85216296 119164640 119164640 115220184 199878320 199878320 177214384 186747588 186747588 169040784 169040784 404423428 404423428 337739834 390543546 390543546 1010186131 1010186131 196229968 832935701 832935701 721539130 682250612 631452009 647095181 893166058 893166058 595116562 827694242 827694242 375378368 396497274 396497274 317136896 317136896 57548208 57548208 57413040 57413040 115158744 116403456 116403456 160566910 337514514 337514514 402005467 1055755722 1055755722 688812134 780403144 827065352 937237186 937237186 1062056876 1062056876 439172374 324428932 84985740 202306712 202306712 194534198 283900610 504690492 504690492 529597034 529597034 518800058 415140710 415140710 345381450 240915670 106488944 172362696 172362696 405333006 470402310 470402310 844508297 844508297 273808898 672489089 672489089 240014767 240014767 573232401 776474764 776474764 553817781 688128397 688128397 727266277 727266277 592087833 592087833 955602980 955602980 558318080 583081232 583081232 562585856 51775168 560529728 560529728 32382432 42500178 269009922 304788482 304788482 47273792 5427840 287612488 354681122 354681122 894697664 894697664 297296682 297296682 6291584 566346112 566346112 27607048 83187368 162070760 207869472 232265800 614840653 614840653 163278208 855273301 864145362 864145362 711614373 732428661 732428661 570204400 659868345 659868345 642175409 284524672 397247080 915260001 915260001 600313384 600313384 277635152 303703312 303703312 303479570 283312338 288697248 288697248 181481137 683260389 683260389 391997713 274011879 988408805 988408805 729216823 710263333 811403680 811403680 1034333168 1034333168 409062830 409062830 960255896 960255896 587784384 587784384 830249977 830249977 348323392 345071242 67957888 7101744 15633584 52429040 52429040 44830032 62219474 62219474 64924000 120479890 394065914 394065914 382392808 365179080 328643066 575926928 575926928 391868627 373982458 366663402 327394968 21818592 30264480 177630944 177630944 563960234 563960234 845613874 845613874 320926622 450539884 450539884 67683336 594149963 594149963 256906902 256906902 915087758 1025829268 1025829268 740658024 753008975 753008975 604180864 875078878 875078878 844630298 844630298 503023546 503023546 353467480 21180576 290367104 290367104 343945355 806060195 806060195 872743882 896600065 896600065 620441739 719744709 719744709 554689895 504019230 534076122 534076122 616743028 916199311 916199311 263592700 263592700 201771736 264539616 264539616 190224044 185388148 110987316 94902012 144703812 260517908 260517908 220465452 203688204 203688204 122295480 234348976 234348976 146850408 222372012 222372012 257231168 257231168 147639492 142640768 120742512 78795816 249729608 414780632 414780632 147513474 272630212 545587411 673474901 704692245 704692245 1043031575 1058000114 1058000114 680281155 427984405 159828528 925540697 925540697 471953762 438771456 485954762 485954762 650517834 650517834 449341003 647094348 1006662249 1006662249 864284787 584192721 701571593 701571593 784393452 784393452 626026520 626026520 214151434 279216322 352769024 357420386 365058112 365058112 604523401 645348249 645348249 880837769 880837769 812678216 818663353 830472291 830472291 436728396 928138237 928138237 1028392904 1028392904 892231790 1016701100 1016701100 808111717 808111717 881331251 881331251 966723125 966723125 999570013 999570013 956213710 920804107 973334371 974250519 974250519 890540200 172091779 994183025 994183025 624966169 329962858 329962858 393249466 393249466 387238458 301050298 937523840 1029986723 1029986723 1002819693 285640786 761604332 761604332 354521739 404093306 1015110240 1028118212 1028118212 448471812 952519028 1019005895 1019005895 970742085 678481416 1053477188 1053477188 620981745 892064184 892064184 635437227 521110953 357197170 9009280 92375400 92375400 209664440 455883080 455883080 364945834 364945834 321991294 298468068 328803954 341141480 460358882 460358882 464801541 689704485 833422241 1067622955 1067622955 62749451 646438233 646438233 539573659 366487091 394399866 394399866 274858488 10727560 71477568 79584136 540680481 632359937 632359937 73086600 100733968 100733968 84848648 73653568 117771912 117771912 86057008 28387944 28051168 432361002 432361002 421527846 365503948 571254033 590507501 590507501 246880367 246880367 875993747 875993747 309400454 347867196 489015602 1044811726 1044811726 967056323 902280610 554260226 554260226 904745284 974270311 1043465905 1043465905 956962282 770315757 677041373 677041373 1010964934 1010964934 948193294 511979176 457566518 397966456 397966456 392436112 168108948 69415432 31864296 489428645 491783243 495668718 792216382 872649048 872649048 136610618 42364992 42364992 163840 557484221 661904696 661904696 730944392 730944392 536423966 238866204 102760728 102760728 316244150 316244150 32727096 390443974 390443974 216083544 32669032 95190784 95190784 302906650 391286257 549245617 978867313 978867313 614187353 614187353 383854424 589825152 823177513 825230115 825230115 661177785 662679681 662679681 558367905 594199713 610760016 610760016 112015696 73086600 76685320 138880680 210177024 210449484 210449484 150725142 291086242 414052278 414052278 376977434 364873750 364873750 370783002 830513243 830513243 693716894 693716894 985489848 985489848 948702279 581154182 809438595 809438595 273619144 344532042 344532042 79838338 303539700 303539700 815310582 815310582 175997953 414642468 414642468 424590141 424590141 560401642 978848945 978848945 949568269 867721676 867721676 850944392 491358069 419431718 419431718 223873424 67158024 27823112 1038675376 1038675376 518548783 290235522 79765632 79765632 138455124 592612529 592612529 160811012 675894290 975965463 975965463 952981859 827884597 827884597 80250549 419433683 1041869352 1041869352 1067529421 1067529421 618581408 882930210 882930210 423406524 66439056 416548354 416548354 164700900 304218370 304218370 318967408 318967408 44630016 10833232 26330688 52049744 52049744 3211848 69173120 91605928 360694712 377479312 377479312 52954416 375840922 375840922 291906352 358427200 358427200 224733612 238426268 238426268 378162706 535745956 848296042 1037393891 1037393891 580257850 580257850 757149177 917201962 917201962 819999254 819999254 1012193839 1012193839 847079968 1011451120 1011451120 709158963 850349457 850349457 443649427 328367506 328367506 315797588 419974388 419974388 444159510 444159510 685656769 685656769 137641760 986724719 986724719 898511848 874907835 824317993 608437512 608437512 825080065 932668528 932668528 856725145 856725145 542113824 913302933 941201847 941201847 531062815 633417905 633417905 378144066 809764992 809764992 805306371 739584525 739584525 206579841 689361056 836112871 836112871 688440357 888939407 888939407 879051242 594160350 611455881 611455881 1029448796 1029448796 280203210 261360252 432216634 432216634 36907952 36907952 330307682 330307682 346164198 346164198 429583182 429583182 304161042 305865490 305865490 302531630 234914832 50857008 19399968 418260144 583543408 583543408 163423921 275314112 311613264 311613264 56292304 280372992 364403488 364403488 53757344 53757344 270943744 275079338 480002436 480002436 296749064 364120938 364120938 136318246 429261110 570294488 570294488 303454672 314721872 368654528 368654528 558368784 592186545 592186545 903874592 903874592 904141227 982065216 982065216 973603863 726478005 726478005 972294302 972294302 779694344 774570656 403972962 364788538 589313614 704431156 704431156 1035796201 1035796201 661595527 661595527 964411431 964411431 408368404 308251389 614391369 952514124 952514124 550359053 255741440 311428144 805374644 805374644 703398956 934024466 934024466 766133578 518258804 518258804 662902653 662902653 367198767 931491979 931491979 843678752 193202292 193202292 187958804 50606208 806057491 806057491 597423729 587448320 3703808 847381008 867307603 867307603 848112723 848112723 649643865 834608533 955927359 955927359 914502035 826938820 212218028 158624432 264512100 264512100 131801584 146482424 217314252 217314252 198105944 120725024 272396072 272396072 353218568 353218568 158309888 158309888 505523740 505523740 264127898 265166076 271190526 271190526 428562580 428562580 453594118 453594118 319333144 323441528 361982520 361982520 70458184 295154186 295154186 338012586 338012586 341702024 341702024 87326848 320096896 897502610 897502610 876779147 843333968 882687860 882687860 847553141 847553141 121425720 67598096 1033134460 1033134460 581273503 518522093 340853322 268444302 136256134 175520660 182268992 182268992 355794478 528192416 528192416 470313110 305920556 349019086 349019086 340052201 918866139 918866139 583129510 505855045 890505441 901997051 901997051 842569096 842569096 277994817 815135372 1022107371 1022107371 943919808 943919808 636596399 583213181 759614993 759614993 958452841 958452841 929039439 927231003 927231003 840991027 406328615 213007202 34726416 55241760 55241760 39895168 39895168 23201920 102839424 117907752 117907752 573122664 950575223 950575223 698277477 947439495 947439495 565163163 471218370 471218370 370023684 948986382 948986382 479273550 412205064 40905040 112560506 298109154 298109154 129362568 63898274 331390592 331390592 342412776 374554128 374554128 336514810 608186577 608186577 486703368 782569537 782569537 601589353 1007238380 1007238380 566316063 843762423 894983691 894983691 844687511 874377740 874377740 498115660 538379052 759617709 813771845 813771845 261001510 920981630 920981630 888633185 972215271 1012580693 1012580693 930106522 930106522 390638741 390638741 740305280 754024901 754024901 809772843 877257867 877257867 874794593 874794593 936303386 936303386 547300494 947390552 947390552 933696228 254699896 249488068 249488068 221600056 84658464 134684224 205585068 226057380 226057380 354848192 354848192 8823082 67316288 82523592 99160520 344722506 349702346 349702346 418636896 479211782 479211782 368576490 368576490 269719972 348009798 381181954 925481717 925481717 189667500 707546645 707546645 246615728 109559600 184675016 707842705 707842705 186747588 557692947 557692947 170096416 404423428 404423428 292304152 390543546 390543546 1010186131 1010186131 254545696 832935701 832935701 721539130 144653892 545674488 647095181 893166058 893166058 595116562 827694242 827694242 276569848 396497274 396497274 317136896 317136896 69120770 414336521 414336521 195420964 195420964 915409784 915409784 909258538 993722372 993722372 672140800 1055755722 1055755722 688812134 780403144 827065352 937237186 937237186 1062056876 1062056876 439172374 324428932 1047552 14002176 142043256 142043256 37786444 478932796 478932796 529597034 529597034 518800058 415140710 415140710 347461024 365043112 365043112 172362696 181038772 423337684 519308126 519308126 514069140 514069140 34629762 325293744 325293744 40635792 190891168 190891168 184655120 184655120 154139940 54543024 334647482 334647482 90309880 88714816 356798562 824608483 824608483 558318080 539393186 562585856 562585856 287908994 560529728 560529728 547356225 547356225 537237056 13603712 354309824 354309824 139760484 159826372 335584192 336857610 1034405988 1034405988 961607782 961607782 98306977 15256520 76727112 76727112 556040384 556040384 15768065 9454080 13631680 147258560 147258560 160609166 641712826 641712826 458834536 458834536 66973680 72380739 72380739 892046168 892046168 370011635 397247080 915260001 915260001 635687105 635687105 554820129 303703312 303703312 303174162 51380784 127164888 127164888 123817368 159915952 159915952 87833924 40046592 40046592 39920016 291060864 291060864 811403680 811403680 507835624 507835624 409062830 409062830 960255896 960255896 881845626 889456683 889456683 904321515 904321515 915916954 915916954 313207152 119542976 61810960 30179392 44830032 62219474 62219474 64924000 64924000 94674592 382392808 382392808 125023128 125023128 575926928 575926928 391868627 373982458 366663402 327394968 29833440 30264480 30264480 762093545 762093545 570732920 570732920 125438480 239388828 265554628 306448676 306448676 594149963 594149963 395444946 289467416 915087758 1025829268 1025829268 329496688 78068040 208341188 208341188 875078878 875078878 844630298 844630298 503023546 503023546 353467480 599040 291835298 291835298 343945355 830786691 902074409 902074409 896600065 896600065 629795720 629795720 830563659 830563659 495383658 675288480 690623781 943195277 943195277 705137081 339254971 779182628 847848531 847848531 369132225 230848072 218103852 148124332 143079492 132789610 485021166 485021166 417908166 345843096 442632826 442632826 234348976 242401452 242401452 222372012 222372012 354001984 354001984 330138176 330138176 120742512 89282536 332723874 414780632 414780632 340546624 340546624 273596544 69673044 214118604 214118604 115556846 1058000114 1058000114 614767688 807769389 971785347 971785347 925540697 471953762 438771456 485954762 485954762 272703301 486548283 486548283 647094348 1006662249 1006662249 864284787 584192721 701571593 701571593 759518306 759518306 76361076 170141850 315106400 315106400 373691568 373691568 365058112 365058112 604523401 604523401 81289336 880837769 880837769 812678216 818663353 830472291 830472291 433224029 928138237 928138237 1028392904 1028392904 826819136 826819136 819099626 819099626 808111717 881331251 881331251 966723125 966723125 999570013 999570013 547481673 680388320 980461781 980461781 943792263 974598912 1064860073 1064860073 868770037 868770037 787967929 637754053 858057650 858057650 836977151 540029060 937523840 1029986723 1029986723 1002819693 285640786 761604332 761604332 520559464 520559464 1015110240 1028118212 1028118212 448471812 952519028 1019005895 1019005895 970742085 678481416 1053477188 1053477188 984163671 984163671 231285996 386565972 386565972 357197170 96998576 94372128 92375400 209664440 455883080 455883080 364945834 364945834 495784142 495784142 482487406 341141480 490792288 490792288 459425120 459425120 348313208 589437152 589437152 661840818 661840818 132134416 132134416 126419096 126419096 104866936 104866936 10727560 71477568 79584136 540680481 632359937 632359937 78766920 106004944 106004944 22501040 65158592 65158592 537993217 537993217 60328176 586772257 586772257 432361002 421527846 365503948 314528396 305535762 305535762 101426292 101426292 875993747 875993747 309400454 309400454 489015602 1044811726 1044811726 967056323 902280610 554260226 554260226 904745284 1040030624 1043465905 1043465905 902397743 902397743 677041373 677041373 1010964934 1010964934 948193294 837163491 837163491 556138690 547488107 1025582671 1025582671 863634995 863634995 1035417775 1035417775 963317127 963317127 872649048 872649048 826338374 701312229 621545425 372516613 363587584 320248478 320248478 261207244 536423966 536423966 238866204 104199436 102760728 316244150 316244150 32727096 390443974 390443974 74494112 80369568 95190784 95190784 302906650 382130394 382130394 92314540 345691722 614187353 614187353 383854424 405274894 823177513 825230115 825230115 661177785 662679681 662679681 558367905 594199713 610760016 610760016 86984856 73309456 76685320 138880680 138880680 30087308 725819741 725819741 291086242 543869121 543869121 376977434 364873750 946472976 946472976 1031673753 1031673753 182109722 404411910 404411910 442573206 581154182 581154182 548005185 910349017 910349017 1017287784 1017287784 943146723 943146723 303539700 746771172 746771172 626934181 489467514 1070670591 1070670591 424590141 560401642 560401642 949568269 949568269 780781375 850944392 1028129060 1028129060 419431718 419431718 145017156 363661660 363661660 893911288 893911288 831340760 831340760 746687517 822247497 822247497 553783338 260669768 260669768 508182460 877116622 877116622 529181876 529181876 429919238 16811328 65536 98304 98304 75596818 872947816 872947816 110626130 423406524 423406524 66439056 51455024 164700900 164700900 177286756 177286756 188097120 188097120 44630016 36250896 36250896 9454336 9454336 3179072 700800 7081344 324705712 377479312 377479312 52954416 321006880 321006880 287783202 268454960 268454960 56100528 79790080 79814856 80021504 220755264 226750572 226750572 279970626 403096662 403096662 757149177 917201962 917201962 819999254 819999254 755243253 874310280 874310280 1011451120 1011451120 193003730 967075863 967075863 567651713 285003714 550275201 550275201 419974388 419974388 444159510 444159510 685656769 685656769 137641760 986724719 986724719 898511848 874907835 824317993 608437512 608437512 825080065 932668528 932668528 856725145 887355584 887355584 874776843 696129592 696129592 304875582 722866256 722866256 378144066 886083616 886083616 994816651 994816651 789685387 723831561 723831561 856316977 856316977 688440357 888939407 888939407 879051242 805307046 432079361 68788800 423741428 423741428 280203210 176607190 122819256 48357840 462775216 462775216 436545558 406123262 134349584 17044108 429583182 429583182 716952433 716952433 613118577 613118577 1027943668 1027943668 725614879 692134053 463944054 582976501 582976501 737929136 737929136 566653952 11608656 145295876 364403488 502403366 502453094 502453094 495558966 495558966 480002436 480002436 220727592 285738018 285738018 426536320 587572289 679788554 679788554 651013256 651013256 111501656 147897152 412817042 412817042 590924548 903874592 903874592 904141227 904141227 726138977 988731604 988731604 726478005 972294302 972294302 707789846 533007781 403972962 364788538 131996122 704431156 704431156 1035796201 1035796201 942908486 942908486 964411431 964411431 408368404 373830226 614391369 952514124 952514124 894575544 710687962 836050951 836050951 805374644 636841216 934024466 934024466 766133578 518258804 518258804 201692172 186265178 360135594 360135594 843678752 843678752 987021914 987021914 342934389 57198000 286533720 395387514 395387514 926442667 926442667 847381008 867307603 867307603 272109921 389678884 507123486 507123486 247340892 430048894 430048894 212218028 212218028 158624432 264512100 264512100 88616392 246961464 246961464 217314252 198105944 68653056 68653056 268856832 285791778 285791778 76270816 85793976 215786704 215786704 176550108 25875552 240789072 295183924 428562580 428562580 393554874 393554874 166489544 323441528 361982520 361982520 271512898 295154186 295154186 338012586 338012586 341702024 341702024 73012354 336638376 336638376 104000120 843333968 843333968 738751552 782446941 782446941 121425720 957072693 957072693 1033134460 1033134460 581273503 518522093 340853322 459458494 459458494 277612620 182268992 182268992 355794478 355794478 445295204 445295204 305920556 349019086 349019086 340052201 918866139 918866139 541098600 600081113 890505441 890505441 659564552 842569096 842569096 979666166 979666166 1022107371 1022107371 970741835 970741835 858985057 858985057 518169561 597966380 958452841 958452841 929039439 927231003 927231003 352669147 208153040 259516996 259516996 218614908 218614908 39895168 39895168 23201920 102839424 117907752 117907752 573122664 573122664 298380003 453608304 453608304 565163163 565163163 471218370 523840064 523840064 948986382 948986382 479273550 412205064 48243089 83216472 83216472 415269546 1053558950 1053558950 856182336 856182336 492692664 492692664 374554128 292325770 608186577 608186577 747733666 906453709 906453709 601589353 1007238380 1007238380 566316063 843762423 894983691 894983691 844687511 874377740 874377740 499122414 538379052 759617709 759617709 751734956 751734956 436389982 831014539 831014539 768868441 1012580693 1012580693 930106522 930106522 390638741 390638741 740305280 754024901 754024901 675031924 998508757 998508757 587050609 587050609 936303386 936303386 547300494 947390552 947390552 933696228 254699896 234934720 234934720 162645672 216173056 216173056 205585068 226057380 356977888 356977888 354848192 343419808 343419808 362231074 411508514 411508514 378026206 363016234 418636896 418636896 348285740 368576490 368576490 343047828 520745582 520745582 925481717 925481717 377912672 707546645 707546645 492684198 492684198 369102512 707842705 707842705 156585792 557692947 855931411 855931411 826887712 869902627 986326395 1007162095 1007162095 894960788 254545696 254545696 877793987 877793987 578453290 1069946850 1069946850 75510368 77415936 77415936 75884616 296601800 345419576 345419576 119014968 394799346 394799346 294173440 294173440 414336521 414336521 295821666 295821666 915409784 915409784 909258538 993722372 993722372 672140800 672140800 860885676 1054083611 1054083611 264919184 130330544 182243028 182243028 178827216 154785544 154785544 188461084 188461084 61325580 191889398 271074602 271074602 279707072 279707072 400248952 400248952 379620858 379620858 347461024 365043112 365043112 72106162 181038772 423337684 519308126 519308126 943886021 943886021 406233094 812320195 812320195 592200332 602673364 608963952 608963952 951458631 951458631 941822789 673659141 629297924 97536000 559153769 559153769 824608483 824608483 550045696 550045696 285275331 287908994 287908994 10887488 538669376 547356225 547356225 537237056 301037474 354309824 354309824 349683968 410949188 410949188 928004506 1034405988 1034405988 961607782 1033329443 1033329443 1031932976 886237635 824828873 614991233 702836993 702836993 685258817 679186144 543404933 311550546 976722245 976722245 641712826 458834536 980209047 980209047 773886003 116369731 892046168 892046168 886121163 572000336 554454824 607175433 635687105 635687105 554820129 543108928 815143491 815143491 642132088 351535432 351535432 177216033 555090516 678693036 678693036 623118185 310318831 471830670 471830670 441435684 441435684 367962054 507835624 507835624 372954906 402862086 831154276 831154276 881845626 889456683 889456683 904321515 904321515 915916954 915916954 313207152 119542976 61810960 31771744 33679808 59247680 268872960 268872960 95889731 852340465 896847545 896847545 574614833 574614833 552224640 552224640 867700857 867700857 541754427 269749068 234284705 29833440 21261384 762093545 762093545 570732920 570732920 598921383 598921383 265554628 679806489 679806489 832758387 865578068 865578068 289467416 390933690 912953711 912953711 365962758 78068040 906547344 906547344 95631678 743233650 743233650 335413817 639252725 639252725 562096684 925019052 925019052 291876226 275569954 830786691 902074409 902074409 336719872 626184323 629795720 629795720 837012373 837012373 834072919 834072919 690623781 943195277 943195277 705137081 513508130 779182628 847848531 847848531 453927546 453927546 436606998 445099614 445099614 381725720 485021166 485021166 818266157 818266157 493661376 805842327 805842327 242401452 242401452 143737976 693371184 713362336 713362336 686894112 686894112 686564544 89282536 332723874 332723874 80266440 340546624 340546624 945085859 945085859 827550391 826926243 889943797 889943797 216737031 614767688 807769389 1016584506 1016584506 840130577 805515267 1047138761 1047138761 1013453147 1013453147 797182077 797182077 662997097 697319525 697319525 15819072 549578656 760198281 760198281 689946732 619265669 619265669 541335876 315106400 315106400 373691568 373691568 123085880 123085880 68968512 130487952 130487952 104020920 116889160 117391320 117391320 54701080 428878340 428878340 411377762 505022412 505022412 473357540 473357540 621520684 819099626 819099626 694922692 754993704 754993704 739369861 745851789 749555150 845915096 845915096 680388320 980461781 980461781 943792263 974598912 1064860073 1064860073 925199547 868770037 787967929 637754053 858057650 858057650 836977151 540029060 572471908 572471908 563559009 211077173 549335000 549335000 486553674 520559464 520559464 496346342 496346342 445253830 445456452 445456452 926944800 926944800 226447560 226447560 681605320 730583330 984163671 984163671 231285996 386565972 471155826 471155826 96998576 94372128 349176336 381681882 381681882 264323558 470304608 491856558 495784142 495784142 501428718 501428718 490792288 490792288 459425120 819672771 819672771 819672771 866986402 866986402 661840818 132134416 282851010 311075546 343933002 343933002 313000976 130702432 117542368 554672120 554672120 118236960 118236960 78766920 111357152 111357152 63780328 63063184 63063184 537993217 537993217 60328176 586772257 586772257 0 244337692 478708764 478708764 305535762 305535762 240177180 240177180 4252448 4252448 22546080 22546080 404776614 404776614 167046944 272212034 272212034 35676176 283903322 901793972 1040030624 1040030624 546833985 902397743 902397743 355260266 154256037 822291332 822291332 606474223 837163491 837163491 773576004 773576004 1025582671 1025582671 863634995 863634995 1035417775 1035417775 963317127 963317127 854697936 826338374 826338374 701312229 859222591 859222591 487709991 491190790 491190790 294616696 197435572 197435572 166988772 181807736 181807736 70428192 17437704 48833248 168255632 168255632 74494112 80369568 84550760 84550760 25076608 25076608 77083912 359933512 359933512 288547458 288547458 270057512 405274894 504786954 504786954 428608340 487041070 518055936 518055936 134590688 201437564 220488952 233376116 233376116 235709000 235709000 142870436 80023784 85144104 725819741 725819741 215258580 543869121 543869121 286568848 541591632 946472976 946472976 1031673753 1031673753 1000347624 1000347624 206195734 206195734 847755796 847755796 315748483 910349017 910349017 1017287784 1017287784 943146723 943146723 203461536 746771172 746771172 626934181 489467514 1070670591 1070670591 437407830 537535602 537535602 999708663 999708663 761868535 950075405 1028129060 1028129060 360718402 360718402 342114306 363661660 363661660 742509853 742509853 831340760 831340760 746687517 822247497 822247497 553783338 675283890 753667533 897764735 897764735 877116622 529181876 584581160 584581160 403513425 993528320 993528320 319357771 1024199005 1024199005 872947816 855966771 617416874 77341784 77341784 81848216 81848216 10536120 130673760 130673760 106187520 45401856 45273936 45273936 36250896 43193200 43193200 12218432 68772096 69390600 324705712 336857650 336857650 360451850 360451850 326839866 141467944 305142204 305142204 440475798 482765606 482765606 468966014 220755264 226750572 226750572 204277504 852250600 852250600 727220259 479758222 479758222 418981527 724307205 801236386 874310280 874310280 745402705 745402705 997095518 1065887142 1065887142 567651713 285003714 550275201 645022344 645022344 618672864 557750848 557750848 539030625 539030625 10551616 7939584 7939584 6426752 6426752 560355552 594415265 594415265 17055744 3721984 9689065 543239561 887355584 887355584 900000356 900000356 1034239486 1034239486 722866256 722866256 222499428 886083616 886083616 994816651 994816651 789685387 844103343 1063238179 1063238179 940324368 611294637 606277656 577196929 805307046 805307046 659434382 619968396 809103974 809103974 78603504 122819256 302617294 302617294 462775216 462775216 436545558 406123262 59165086 149298912 149298912 219332909 716952433 716952433 613118577 613118577 1027943668 1027943668 1011592672 1011592672 973653015 973653015 582976501 737929136 737929136 566653952 52110768 268599296 268599296 502403366 502453094 502453094 495558966 495558966 436782102 505463808 505463808 18923808 16826400 426536320 587572289 679788554 679788554 651013256 651013256 111501656 127229642 412817042 412817042 590924548 827328161 827328161 590594512 726138977 726138977 988731604 988731604 810922272 555560328 899490857 899490857 533007781 363072952 279254278 749944118 797128228 797128228 943417626 943417626 1032342288 1032342288 936188231 802284285 373830226 927065906 927065906 740115913 957703727 957703727 710687962 953230023 1029120135 1029120135 367075811 245367044 532791695 614678025 614678025 1013883469 1013883469 849147680 360135594 360135594 107772912 113804608 987021914 987021914 854330835 854330835 354206691 395387514 395387514 926442667 926442667 833758731 382940930 288035976 77599506 666501924 775558941 799016173 799016173 743576205 569777737 563483236 69551184 141771128 141771128 125935452 128572736 246961464 246961464 68839802 313707338 361968922 373065512 373065512 356410728 356410728 343975018 285985930 284981224 215786704 272680962 331841536 331841536 331774706 341448330 349452282 393554874 393554874 127937218 10934592 277830528 277830528 272786272 272786272 93373032 337683176 337683176 288457608 270803496 355926304 355926304 336638376 104000120 820266612 820266612 738751552 799927677 799927677 790774785 957072693 957072693 507111198 752979212 1056722903 1056722903 539050876 459458494 459458494 286321416 179002486 34414592 36083220 141723136 141723136 188534580 249315572 249315572 268484786 321143666 321143666 311462546 541098600 600081113 600081113 659564552 659564552 117688112 71013640 979666166 979666166 183898589 883590726 970741835 970741835 949638098 949638098 518169561 448882507 436773833 868287629 868287629 465703158 465703158 208153040 395040456 395040456 259516996 520116330 520116330 520125944 520125944 99091944 73464088 919458040 919458040 665501171 959254643 959254643 579360276 942727271 942727271 453612819 70662416 523840064 523840064 9774910 0 100721097 100721097 128271224 128271224 282692322 415269546 1053558950 1053558950 856182336 856182336 540541377 540541377 538680936 740726641 740726641 939565129 939565129 906453709 936980986 936980986 923929304 923929304 424359096 424359096 167845908 513327124 513327124 662718257 724272950 976298775 976298775 1037226735 1037226735 858351664 858351664 436389982 436389982 299797152 688654988 688654988 136315140 626000784 626000784 134217984 2171136 429916660 429916660 675031924 675031924 998508757 998508757 587050609 587050609 598831476 598831476 476126216 388504836 388504836 342361144 134984196 234934720 234934720 149516824 216173056 226634120 226634120 67403980 356977888 356977888 343319426 343419808 343419808 362231074 411508514 411508514 378026206 363016234 105054706 348285740 348285740 252576256 513434704 513434704 520745582 520745582 501229784 501229784 377912672 448032564 448032564 492684198 492684198 369102512 369102512 134555652 157967872 157967872 855931411 855931411 826887712 869902627 986326395 1007162095 1007162095 894960788 431490426 948972386 948972386 877793987 578453290 1069946850 1069946850 667297832 999567474 999567474 1050156688 1050156688 664452496 345419576 119014968 394799346 394799346 294173440 322083712 322083712 292837906 295821666 295821666 96866504 96866504 560332864 560332864 707993621 984190050 984190050 860885676 1054083611 1054083611 422496309 824980673 824980673 895368428 895368428 527329312 527329312 188461084 188461084 61325580 191889398 271074602 271074602 279707072 279707072 400248952 400248952 379620858 379620858 386177058 386177058 377935962 377935962 330452080 180018438 276611082 276611082 943886021 943886021 406233094 812320195 812320195 592200332 602673364 608963952 608963952 951458631 951458631 941822789 757567526 629297924 229656968 559153769 559153769 289648746 289648746 550045696 550045696 25760832 23737344 23737344 564658560 564658560 561928609 29888704 277133378 301037474 301037474 296717152 349683968 410949188 410949188 928004506 928004506 613895094 229897068 1033329443 1033329443 1031932976 886237635 824828873 614991233 702836993 702836993 685258817 679186144 543404933 311550546 976722245 976722245 181978836 55464231 980209047 980209047 773886003 116369731 819254592 886121163 886121163 572000336 398912272 338693056 338693056 323402170 300408514 543108928 815143491 815143491 642132088 351535432 351535432 177216033 555090516 678693036 678693036 623118185 310318831 471830670 471830670 441435684 553693984 553693984 540275457 202498572 202498572 402862086 831154276 831154276 555832576 555832576 554431521 191535921 173307316 173307316 190833840 190833840 49680592 49680592 44897024 44897024 59247680 301197026 301197026 95889731 852340465 896847545 896847545 574614833 574614833 552224640 552224640 867700857 867700857 541754427 269749068 234284705 415636848 459122712 554042212 990577219 990577219 587801649 598921383 598921383 237240344 679806489 679806489 832758387 865578068 865578068 155691924 155691924 912953711 912953711 388046875 473507598 906547344 906547344 495508147 743233650 743233650 335413817 639252725 639252725 562096684 925019052 925019052 291876226 275569954 90574090 71352584 336719872 336719872 336614400 885151696 885151696 837012373 837012373 834072919 834072919 768729837 768729837 718467305 365071462 513508130 854835228 854835228 823780899 453927546 453927546 436606998 445099614 445099614 381725720 381725720 895483563 895483563 818266157 493661376 805842327 805842327 102311448 52954252 76653612 693371184 713362336 728597232 728597232 686894112 686564544 273488128 273488128 62393474 12653848 67240456 67240456 945085859 945085859 827550391 826926243 889943797 889943797 709499436 671107131 541825340 1016584506 1016584506 840130577 805515267 1047138761 1047138761 1013453147 1013453147 797182077 797182077 662997097 654682169 992356706 992356706 560980329 760198281 1071547024 1071547024 619265669 619265669 541335876 449715414 396779682 396779682 350662904 350662904 316607864 51321648 130487952 130487952 104020920 116889160 312574016 312574016 304095810 428878340 428878340 411377762 513777160 513777160 473357540 473357540 874887694 874887694 479696458 694922692 754993704 754993704 739369861 745851789 745851789 845915096 845915096 360828496 26836962 13632192 817105024 901997064 901997064 925199547 925199547 572832266 42855504 359534336 662744073 742270351 742270351 627571113 967114154 967114154 647123768 740183413 740183413 549335000 708575608 771836744 771836744 210912128 163713252 194644644 194644644 161219152 926944800 926944800 377460836 377460836 681605320 780237249 805693443 948771073 948771073 691103338 882220056 882220056 79991040 58855472 349176336 381681882 381681882 264323558 470304608 491856558 491856558 485077028 501428718 501428718 266741154 30857952 299547329 819672771 819672771 819672771 866986402 866986402 595916330 564115845 564115845 311075546 1009456388 1009875719 1009875719 339133429 710930210 710930210 810243312 810243312 606901000 595980889 111357152 111357152 63780328 63063184 63063184 37717488 56522480 56522480 60515600 328396818 437937956 437937956 478708764 478708764 458682138 458682138 253602944 253602944 340163382 340163382 474753546 474753546 404776614 404776614 167046944 312020059 605501961 605501961 816417243 901793972 901793972 910699042 910699042 701058053 490768519 474535362 644280701 917443127 917443127 914517780 425982082 425982082 773576004 773576004 187289960 221458596 221458596 68686600 427371532 427371532 830229420 830229420 623704080 623704080 351241331 698812296 859222591 859222591 524827256 524827256 491190790 294616696 197435572 197435572 177870356 181807736 181807736 356083082 356083082 256037052 325447942 462247994 462247994 205931624 91148488 125593168 342624704 346819914 493619200 493619200 502479752 502479752 218837408 0 203104548 203104548 416950432 416950432 151459546 103767684 134590688 134590688 201437564 220488952 233376116 249577840 249577840 235709000 233834220 233834220 85144104 144401188 144401188 401569642 927416904 927416904 839098817 639640123 541591632 1023153294 1023153294 973078551 1000347624 1000347624 986317911 806490664 847755796 847755796 157152495 807011476 807011476 705114180 705114180 579078225 447485249 415373382 815646182 815646182 744015501 744015501 554407524 722039070 722039070 537535602 944484070 999708663 999708663 401150914 950075405 950075405 276889706 808980578 950228929 950228929 290753814 260408960 138703080 222697644 235448440 302888968 615138317 615138317 1031952727 1031952727 675283890 753667533 897764735 897764735 478175288 652188992 652188992 584581160 403513425 993528320 993528320 808193283 1024199005 1024199005 855966771 855966771 617416874 378087896 276429498 276429498 81848216 312571842 312571842 130673760 106187520 64045216 64045216 45273936 35725584 43193200 326326890 326326890 127180840 342917546 342917546 291686274 505059110 505059110 1044980819 1044980819 607950082 768562047 768562047 504543556 482765606 482765606 468966014 176189236 107497040 553879418 553879418 852250600 852250600 727220259 705074411 852307155 852307155 724307205 801236386 801236386 285286434 688474335 688474335 997095518 1065887142 1065887142 222873880 222873880 52313704 645022344 645022344 618672864 557750848 557750848 539030625 562296528 562296528 551872273 551872273 50704928 565525328 565525328 598885696 598885696 565498160 564449088 539001568 543239561 543239561 620889280 900000356 900000356 1034239486 1034239486 767347715 638547365 638547365 100913856 85983528 85983528 725912432 725912432 844103343 1063238179 1063238179 955411200 947208001 947208001 812294707 812294707 659434382 659434382 619968396 809103974 809103974 345020818 345020818 302617294 302617294 382219562 382219562 176816528 39851092 42652752 149298912 149298912 23357844 45822544 45822544 546919472 587777073 587777073 350536857 1011592672 1011592672 973653015 973653015 198971124 227950256 227950256 102093248 69299968 268599296 268599296 104417240 214490200 214490200 269295624 372108310 470305024 523029786 523029786 136348946 153634948 419980288 422145350 434979840 434979840 8970736 9141312 67139712 79713234 576262642 834352995 834352995 333588113 590594512 590594512 588850737 608481928 742092140 810922272 810922272 555560328 899490857 899490857 363072952 363072952 279254278 749944118 797128228 797128228 943417626 943417626 1032342288 1032342288 1037429487 1056213199 1056213199 995451045 927065906 812655578 988613633 988613633 751173712 953230023 1029120135 1029120135 899678626 899678626 532791695 614678025 614678025 1013883469 1013883469 849147680 186917670 148451728 148451728 113804608 564956280 624706091 854330835 854330835 354206691 345886880 64962288 277500754 833758731 833758731 382940930 302064474 302064474 666501924 775558941 799016173 799016173 743576205 569777737 563483236 305598588 296824622 279936696 425703742 425703742 302848492 180322336 180322336 313707338 361968922 373065512 373065512 356410728 356410728 343975018 285985930 284981224 14565952 272680962 331841536 331841536 331774706 406896774 418930934 460924854 460924854 197142338 281413264 281413264 106332208 305096584 305096584 93373032 337683176 352657536 352657536 270803496 355926304 355926304 285481218 281909825 820266612 820266612 780582091 799927677 799927677 790774785 624262805 612448732 507111198 752979212 1056722903 1056722903 539050876 426716590 426716590 286321416 278845282 271717120 333746144 333746144 326628136 334522384 334522384 272680448 274204290 321143666 333834738 333834738 331664930 928468946 928468946 378018955 117688112 117688112 87895848 222863944 1030522896 1030522896 864816243 965615370 965615370 949638098 949638098 448882507 448882507 463537200 868287629 868287629 465703158 465703158 79761461 395040456 395040456 118563152 520116330 520116330 520125944 876819597 876819597 894758563 919458040 919458040 665501171 959254643 959254643 579360276 948138336 948138336 453612819 416942250 416942250 740033709 740033709 424748210 812704657 812704657 128271224 128271224 282692322 360800482 361309696 361309696 317348082 843874771 843874771 541108038 538680936 740726641 740726641 939565129 939565129 598762054 936980986 936980986 923929304 923929304 424359096 424359096 167845908 513327124 513327124 662718257 724272950 976298775 976298775 1037226735 1037226735 858351664 858351664 902859479 902859479 619120586 844103898 844103898 877270155 877270155 810527651 931718520 1057852795 1057852795 444638569 907296834 960759975 960759975 1064322958 1064322958 682729813 682729813 599661297 599661297 751454952 751454952 541890208 185352716 228334396 228334396 781589129 781589129 226634120 982757630 982757630 774033693 447248521 343319426 343319426 606110348 740884224 740884224 218566852 211338828 211338828 140509992 140509992 201862496 252576256 513434704 513434704 295965728 340637684 369560148 369560148 137640030 448032564 448032564 109314942 65537680 173608432 173608432 209358408 218193328 218193328 101026352 101026352 61820928 61820928 162539668 162539668 196084792 196084792 431490426 948972386 948972386 284629153 9642304 437791234 667297832 667297832 999567474 999567474 1050156688 1050156688 664452496 340582552 50193632 102776832 102809880 102821912 322083712 432028065 432028065 456012924 456012924 588776784 588776784 560332864 723071093 723071093 984190050 984190050 836309504 831934999 831934999 422496309 824980673 824980673 895368428 895368428 527329312 527329312 40550528 57413040 57413040 50896272 34264080 271962128 271962128 270684192 270684192 49152 557056 557056 386177058 386177058 377935962 377935962 330452080 180018438 276611082 276611082 472908172 472908172 382949080 329818944 329818944 332570944 332570944 326366130 1033903588 1033903588 883165515 757567526 889475842 889475842 268581163 300340078 300340078 823002381 823002381 491672994 273475714 273475714 333792658 333792658 564658560 564658560 561928609 583680592 583680592 46840592 272784512 272784512 272435476 153101184 153101184 412357464 412357464 338351370 454656044 454656044 37336112 573315376 702334436 702334436 676390465 155518817 146416512 145937220 20009760 673606690 959182119 959182119 181978836 181978836 613212499 613212499 269346632 269346632 112999402 570959008 570959008 576144640 576144640 91739872 338693056 864754128 864754128 829238691 577312659 32586817 71967625 544962305 545247617 545247617 660594105 660594105 187159309 114383176 648390857 775964024 775964024 499311215 386854375 553693984 553693984 540275457 202498572 296455784 345373514 750217537 750217537 558139760 677767297 677767297 707477749 707477749 585704913 572531904 39473728 49680592 55420448 55420448 44897024 23421634 301197026 301197026 295411936 295411936 359611818 359611818 289395304 205391960 205391960 100713200 84952072 268981312 268981312 137669998 137669998 415636848 459122712 749716140 990577219 990577219 587801649 487010971 169083024 237240344 405799172 405799172 1065616732 1065616732 513298512 513298512 35292956 826287728 826287728 388046875 473507598 473507598 495508147 495508147 571130778 571130778 85847592 100388232 100388232 76207176 19265344 19265344 9299232 279481635 636789227 877756393 877756393 349494433 886794347 886794347 885151696 322767276 322767276 726539285 726539285 794961128 794961128 718467305 498614312 472357452 854835228 854835228 823780899 511875694 511875694 135227998 126477336 126477336 235941102 337608761 895483563 895483563 677012588 840400443 840400443 286119481 102311448 52954252 76653612 270336384 270336384 728597232 728597232 293088912 293088912 279584960 501965384 501965384 190453648 277816392 379132814 379132814 587318878 970111802 970111802 1025114687 1025114687 1057015838 1057015838 543175514 619234761 675460437 675460437 852356307 852356307 360185498 360185498 128031187 268957698 710982046 710982046 478599239 992356706 992356706 560980329 534698399 1071547024 1071547024 508461942 533211132 533211132 527031408 527031408 396779682 350662904 350662904 316607864 50585136 120676000 120676000 72124880 313216576 313216576 312574016 304095810 188490048 244789880 411279938 513777160 513777160 425296421 471988108 874887694 874887694 479696458 426869344 610851641 610851641 235516560 235516560 808025909 808025909 360828496 360828496 171065872 939677952 939677952 962310536 967051623 967051623 254432615 251268288 82546224 270037789 662744073 742270351 742270351 627571113 967114154 967114154 715134080 740183413 740183413 83147964 708575608 771836744 771836744 210912128 163713252 194644644 290595858 290595858 51121200 325538726 477213808 477213808 631523328 780237249 805693443 948771073 948771073 789533284 882220056 882220056 285607120 369405018 369405018 100405000 100405000 274531530 359219374 471969164 485077028 485077028 405573666 272730314 272730314 217521628 491174738 491174738 608306840 856678531 856678531 595916330 1036027150 1036027150 564115845 138094340 1009456388 1009875719 1009875719 339133429 710930210 710930210 810243312 810243312 606901000 595980889 67510025 67510025 69739440 88522896 93286992 93286992 117973472 117973472 39965938 328396818 437937956 437937956 310537064 124469906 510322232 510322232 427554726 253602944 340163382 340163382 474753546 474753546 307119326 307119326 17486880 312020059 605501961 605501961 816417243 816417243 61899648 910699042 910699042 794549215 569512865 542372481 675789033 917443127 917443127 914517780 425982082 425982082 280072228 344653846 508244115 508244115 866177395 866177395 542530347 677330565 677330565 737440715 737440715 754063168 878319243 878319243 410177827 891060602 891060602 524827256 889538632 889538632 688335080 177345108 257691504 257691504 170797684 356083082 356083082 256037052 325447942 462247994 462247994 205931624 91148488 125593168 342624704 346819914 493619200 493619200 502479752 502479752 220748066 17530114 203104548 203104548 416950432 416950432 458888718 458888718 336725124 47824296 85994120 157911152 157911152 249577840 249577840 232366248 233834220 233834220 29792416 695226613 695226613 683353648 927416904 927416904 839098817 639640123 519652705 1023153294 1023153294 450449165 891815807 986317911 986317911 806490664 806490664 105300041 332806876 332806876 264478394 832377751 1051035539 1051035539 999155894 999155894 825339031 815646182 803260780 765509997 437834658 722039070 722039070 454770771 1057686152 1057686152 985948192 81823384 399030000 607264856 1069753133 1069753133 950228929 950228929 247894906 682622277 682622277 974858339 974858339 302888968 672531545 672531545 1031952727 1031952727 117440520 117440520 117538894 461496438 478175288 652188992 652188992 277752064 277752064 133439480 574493202 808193283 808193283 925431740 925431740 534391854 534391854 378087896 276429498 276429498 76661120 312571842 312571842 198711848 189800968 189800968 64045216 185030724 185030724 167196704 326326890 326326890 135463012 342917546 378964232 378964232 505059110 505059110 1044980819 1044980819 607950082 768562047 768562047 504543556 204998412 204998412 169945772 121711628 719999328 719999328 553879418 724966197 724966197 275780397 705074411 852307155 852307155 620214142 697043266 697043266 285286434 403048476 403048476 117649464 139294772 139294772 701034628 701034628 547406145 155279845 11600192 550828800 550828800 14201152 23056464 562296528 562296528 551872273 563255088 563255088 565525328 565525328 598885696 598885696 565498160 564449088 539001568 850403400 850403400 549448616 809897545 809897545 616595469 767347715 767347715 638547365 941622980 941622980 85983528 85983528 725912432 725912432 256531268 473729938 955411200 955411200 947208001 947208001 952791986 952791986 592648708 584826499 565591414 192089072 86003744 345020818 345020818 279911832 279911832 489752260 503823378 503823378 294851536 294851536 291239586 214872616 214872616 18689568 44175696 86520400 86520400 126631792 126631792 36438028 310890552 570094226 1014526701 1014526701 463112439 264444434 85409504 130047236 130047236 486081966 486081966 357213306 526781004 526781004 372108310 470305024 523029786 523029786 136348946 153634948 419980288 422145350 434979840 434979840 127179400 74463128 99547336 99547336 963458723 963458723 834352995 333588113 733801445 733801445 588850737 588850737 742092140 1028767275 1028767275 969484110 969484110 752364745 680529444 58853696 58853696 10752112 29395680 64047408 178659328 178659328 194036340 728015706 1037429487 1056213199 1056213199 995451045 812655578 812655578 988613633 988613633 751173712 513866311 155615296 513882566 899678626 899678626 515940556 515940556 478478798 480543844 480543844 461979332 190581981 786450101 786450101 629460204 629460204 790676709 790676709 696829197 611680904 650716377 789309956 789309956 312137298 312137298 255161868 302064474 302064474 389295732 389295732 144638778 195895660 676605417 676605417 402299606 534183923 534183923 558578713 558578713 623377848 682268409 682268409 639042121 903153107 903153107 936389384 936389384 83886120 19530496 660480 14346332 75876892 82589576 280390452 317033406 317033406 306258066 406896774 418930934 460924854 460924854 378499026 281413264 281413264 106332208 305096584 305096584 356694018 356694018 352657536 352657536 67371178 353575304 354627882 354627882 281909825 618821825 618821825 780582091 780582091 778894077 799853949 799853949 799519839 803259615 803259615 262884843 340240392 340240392 67467402 18147584 278845282 278845282 275648544 333746144 333746144 326628136 334522384 334522384 272680448 274204290 274506226 333834738 333834738 294204594 928468946 928468946 378018955 18252288 85786880 87895848 827037282 1030522896 1030522896 864816243 965615370 965615370 927994937 352602139 1072693968 1072693968 840445264 840445264 644358866 530768324 718534362 718534362 158929681 43701840 35337744 291402771 302774995 302774995 876819597 876819597 894758563 894758563 321225144 603292068 603292068 558273061 951107956 951107956 948138336 211826010 416942250 416942250 740033709 740033709 424748210 812704657 812704657 31574272 31574272 30624800 39558624 293511040 317348082 317348082 843874771 843874771 566495457 910289937 910289937 484475240 484475240 914424388 914424388 598762054 466093174 345572670 345572670 778840376 778840376 774187293 187634729 0 0 890577520 890577520 962725580 962725580 607786343 940233735 940233735 902859479 902859479 729220274 917844049 917844049 877270155 877270155 810527651 931718520 1057852795 1057852795 444638569 907296834 960759975 960759975 1064322958 1064322958 682729813 904560388 1059835304 1059835304 751454952 751454952 541890208 240028672 228334396 662193530 781589129 781589129 542139998 982757630 982757630 774033693 447248521 295724448 338610176 606110348 740884224 740884224 439005714 439005714 421090856 523244596 523244596 92802054 294464098 295446126 520687120 520687120 340637684 509637080 509637080 612361117 612361117 549878947 782599245 782599245 109690305 93343012 703769133 796182965 796182965 169411172 169411172 569710864 713042709 713042709 593234225 639116640 639116640 622778681 725915372 725915372 676471384 710144661 710144661 609181888 256708440 256708440 188305048 172614804 163619952 108153032 39944432 130725152 130725152 102809880 102821912 323371216 432028065 822421539 822421539 874647650 874647650 588776784 933953905 933953905 922931259 922931259 836309504 836309504 614935720 805412914 805412914 68518320 73714056 74736568 123806136 192459776 192459776 39903488 57413040 57413040 50896272 57680640 271962128 271962128 362741472 362741472 67158146 67158146 84760608 291949834 291949834 71782400 51583616 51644976 51644976 271148106 271790914 271790914 382949080 382949080 281923080 405130123 405130123 332570944 952599861 1033903588 1033903588 883165515 604110860 889475842 889475842 362005037 272873985 272873985 823002381 823002381 491672994 273475714 273475714 333792658 333792658 12921024 8730048 547264768 583680592 583680592 303657426 302122946 272435476 272435476 270805826 938874687 938874687 575462326 674534859 674534859 687677869 866740876 866740876 702334436 702334436 676390465 537377440 563457797 699271012 699271012 673606690 959182119 959182119 196219857 168871828 613212499 613212499 919150904 919150904 112999402 570959008 570959008 576144640 576144640 311027306 350192521 864754128 864754128 829238691 577312659 816130371 817618432 817618432 545247617 545247617 660594105 660594105 187159309 114383176 648390857 775964024 775964024 499311215 386854375 386854375 167672552 363368196 419639334 461578562 461578562 750217537 750217537 558139760 677767297 677767297 707477749 707477749 585704913 572531904 159891344 43268848 55420448 61805504 61805504 51644976 12182016 29455970 370382529 918443715 918443715 811997571 879496587 879496587 655525270 655525270 900900139 900900139 807425507 438862481 438862481 14953184 209835533 749716140 749716140 66985968 558106497 1061723527 1061723527 139725444 933666361 933666361 1065616732 1065616732 857031485 513298512 727854392 727854392 319840661 995889046 995889046 953616859 733320820 509134494 671664653 671664653 530071784 717188997 717188997 629734020 629734020 581326924 9299232 279481635 636789227 877756393 877756393 349494433 886794347 886794347 805429291 840677013 840677013 582129553 463548786 794961128 794961128 498614312 726461140 726461140 412571946 412179054 362769988 511875694 511875694 272202760 269040474 376124826 376124826 361367640 290210328 411305116 677012588 840400443 840400443 323048086 152229416 171966612 490963964 909992360 909992360 983377648 983377648 708516080 708516080 279584960 501965384 501965384 194667024 277816392 379132814 379132814 371184043 970111802 970111802 1025114687 1025114687 1057015838 1057015838 878583435 619234761 675460437 675460437 852356307 852356307 540174464 556110721 600351165 600351165 710982046 901786062 901786062 446744614 446744614 379959260 623402278 623402278 508461942 508461942 533211132 533211132 527031408 527031408 118712280 118712280 127572064 127572064 119958496 130054272 130054272 71702664 316233088 316233088 400026338 400026338 369691962 369691962 135723600 312434180 312434180 951736586 951736586 752533583 681348489 681348489 940122759 610851641 610851641 235516560 235516560 808025909 841664726 841664726 545702043 451567197 939677952 939677952 962310536 967051623 996935788 996935788 1070077695 1070077695 988942815 772937098 79302920 974225408 1008062991 1008062991 210205715 715134080 719984085 719984085 564717480 91866465 197998380 197998380 83518376 738770793 738770793 290595858 290595858 128128227 325538726 477213808 564708640 631523328 631523328 335882250 335882250 789533284 789533284 160603193 475793538 475793538 369405018 369405018 100405000 100405000 274531530 359219374 471969164 471969164 405573666 405573666 272730314 272730314 217521628 491174738 587251761 608306840 856678531 856678531 537866177 1036027150 1036027150 731979872 731979872 987833216 987833216 982516311 1027637866 1027637866 281597301 545507408 545507408 572074576 638018529 638018529 69284265 69739440 88522896 93286992 93286992 117973472 117973472 77371856 123818840 123818840 310537064 310537064 118709536 510322232 510322232 427554726 484507904 484507904 170534030 256434744 256434744 384092482 384092482 67020512 280772272 292384210 292384210 57189234 35750160 321290320 321290320 794549215 794549215 569512865 542372481 675789033 770651107 770651107 749732685 749732685 566495373 942839527 942839527 742917701 675807368 866177395 866177395 542530347 677330565 908695432 908695432 737440715 754063168 878319243 878319243 410177827 891060602 891060602 998409986 998409986 889538632 688335080 427847362 471942474 529031270 529031270 212407074 261792552 261792552 261194424 261194424 231321692 109236312 90300840 90300840 6320552 8462400 14745984 14745984 4927114 356393762 406717728 406717728 413403462 413403462 465877800 465877800 458888718 458888718 336725124 157731168 221243284 221243284 210570572 210570572 243313032 243313032 26083488 29792416 29792416 695226613 731518838 731518838 715210736 848157011 848157011 587193459 508575760 863028324 863028324 648594777 1000867191 1000867191 125963151 987541208 987541208 759337139 332806876 332806876 264478394 832377751 1051035539 1051035539 999155894 999155894 825339031 803260780 803260780 765509997 558940833 558940833 312088146 444634294 1057686152 1057686152 218438800 256586940 448423964 607264856 1069753133 1069753133 759646212 625209513 228811993 682622277 682622277 974858339 974858339 117882376 672531545 672531545 914647085 914647085 660341498 660341498 984025300 984025300 422448688 422448688 956979543 956979543 537142987 542843762 542843762 542017728 542017728 925431740 925431740 534391854 534391854 57174576 57857488 71972672 71972672 185295548 198711848 198711848 189800968 189800968 148917236 185030724 185030724 167196704 167196704 54557092 159388352 204619788 378964232 378964232 389302352 389302352 363905898 354732330 358926610 358926610 675589530 675589530 527702437 256351232 256351232 481031502 938210638 938210638 635688313 151130148 151130148 513089654 513089654 934086984 934086984 620214142 457712208 433661670 415359174 763840733 763840733 847865300 847865300 636174648 701034628 701034628 843129478 843129478 790997659 790997659 808588035 808588035 826491650 826491650 78088489 845415041 850577939 850577939 563221089 560734049 572264288 598081905 598081905 34249568 621230121 850403400 850403400 549448616 549448616 341725771 456689895 520374182 612368457 612368457 941622980 941622980 97907280 260709590 269107200 338007172 779577478 945154695 1040912940 1040912940 839609668 839609668 952791986 952791986 379977952 379977952 192089072 192089072 17580736 20851904 371471644 461389014 461389014 489752260 503823378 503823378 294851536 294851536 291239586 214872616 456528114 456528114 312151092 415117488 415117488 126631792 126631792 36438028 310890552 570094226 1014526701 1014526701 463112439 264444434 281560496 281560496 130047236 486081966 486081966 357213306 526781004 526781004 185894412 505973034 505973034 513543718 513543718 235930450 207929384 207929384 331407362 331407362 127179400 78651560 357634370 782400362 963458723 963458723 820042452 636526843 733801445 733801445 500703748 500703748 1021479970 1028767275 1028767275 969484110 969484110 752364745 680529444 324872032 78971008 23668800 48442784 544658513 544658513 172030144 574671905 590989924 724657249 724657249 697377537 577456752 573613314 699867660 781391481 781391481 649584986 574240337 607774464 607774464 630584056 932626769 932626769 547664147 542294128 841271824 841271824 369986827 190581981 786450101 786450101 629460204 629460204 790676709 790676709 753350821 611680904 650716377 789309956 789309956 218569224 218569224 255161868 255161868 218629164 389295732 389295732 32844768 77597824 676605417 676605417 507315312 534183923 534183923 558578713 558578713 623377848 682268409 682268409 639042121 903153107 903153107 936389384 936389384 858985073 890773538 890773538 889456683 605030946 909027887 909027887 1053332578 1053332578 825339486 219734262 341583384 341583384 378499026 378499026 279969090 279079936 388543464 388543464 301062082 356694018 356694018 93518506 824124929 824124929 353575304 829896355 829896355 88357250 73776008 8245888 83035100 170132060 736271496 799853949 799853949 799519839 803259615 803259615 975638973 975638973 809835350 68207112 68207112 270422016 270422016 275648544 292135330 292135330 288384370 322782416 322782416 302146656 328666128 328666128 588201009 949171985 949171985 990580036 990580036 990415493 530076334 253402407 859462147 885694028 885694028 878107275 615604937 546314763 1022620611 1022620611 114139370 1072693968 1072693968 840445264 1012274423 1012274423 610947459 815793376 815793376 348213474 348213474 126630024 274074282 274074282 350885322 359643584 359643584 131538162 105227988 218967084 531414016 531414016 184737952 951107956 951107956 170046291 168005728 4892800 4892800 838656 4682880 107616640 107616640 96551008 96551008 80846888 26322848 26322848 20633120 37633056 37633056 17098752 547933600 566495457 910289937 910289937 484475240 484475240 914424388 914424388 466093174 466093174 688537491 688537491 778840376 778840376 774187293 805326677 805326677 576866356 890577520 890577520 483592523 283644253 881989688 940233735 940233735 798304362 798304362 729220274 917844049 917844049 846016661 846016661 608601197 599834865 599834865 772279569 790626393 803923728 803923728 141033661 423117591 423117591 482055774 904560388 1059835304 1059835304 399137220 508461088 508461088 240028672 142639380 748708948 748708948 197267700 542139998 542139998 106481304 610808816 664483449 664483449 295724448 281666754 353523556 353523556 439005714 705168821 705168821 523244596 641218865 641218865 294464098 295446126 661228945 661228945 305564140 628231861 628231861 612361117 612361117 549878947 782599245 782599245 109690305 125094720 703769133 796182965 796182965 722010800 722010800 569710864 713042709 726933997 726933997 639116640 639116640 667473360 783974449 783974449 679138716 710144661 710144661 609181888 709705521 709705521 699428584 259171672 259171672 39944432 95398930 130725152 130725152 370808746 374475290 374475290 323371216 822421539 822421539 874647650 874647650 547541313 933953905 933953905 922931259 922931259 46419968 614935720 614935720 805412914 805412914 68518320 73714056 74736568 123806136 190095904 190095904 39903488 38747280 321649682 321649682 369781248 369781248 359975850 362741472 362741472 273732800 77629130 84760608 291949834 291949834 51525680 51583616 51644976 201547988 201547988 113430744 14470848 512321172 512321172 303484432 405130123 405130123 288148770 952599861 952599861 886362826 884281987 604110860 750303788 963587757 963587757 557846828 557846828 342567241 275320864 139218304 67546496 38372608 38372608 16105856 4245312 2668800 485760 46910610 303657426 303657426 302122946 9511488 270805826 312914516 938874687 938874687 575462326 674534859 674534859 687677869 866740876 866740876 516803940 583483104 583483104 537377440 563457797 699271012 699271012 540973712 598881041 598881041 196219857 541506752 625798305 625798305 919150904 919150904 44377232 44377232 314837202 314837202 276899984 311027306 545103968 558626720 558626720 13885920 13885920 816130371 817618432 817618432 1512448 3614464 3614464 0 0 75106824 75106824 19401608 551070624 551070624 299336934 299336934 251029112 363368196 419639334 461578562 461578562 310583634 302194722 294466820 195084660 195484020 198487776 198487776 174407940 174407940 159891344 43268848 57659920 61805504 61805504 51644976 12182016 52832640 370382529 918443715 918443715 811997571 879496587 879496587 655525270 655525270 900900139 900900139 807425507 522248394 522248394 441569152 441569152 541600513 541600513 406546434 558106497 1061723527 1061723527 475677974 933666361 933666361 445281798 857031485 857031485 438848672 1008256642 1008256642 965501573 995889046 995889046 953616859 738608356 700498149 671664653 671664653 530071784 717188997 717188997 629734020 629734020 581326924 365065016 365065016 102910602 400189146 400189146 319824130 319824130 329043543 543245649 840677013 840677013 582129553 694023169 973331160 973331160 880063111 873579520 873579520 412179054 412179054 277560446 285863968 285863968 272202760 269040474 376124826 376124826 361367640 681843265 709223953 709223953 1026741745 1026741745 730257428 330438526 942834486 942834486 924914701 909992360 983377648 983377648 708516080 708516080 668529817 380235034 498276132 498276132 194667024 193627252 608881965 608881965 973455888 973455888 762544708 916711361 916711361 878583435 878583435 273152130 390108176 390108176 71877768 541212672 541212672 556110721 600351165 694656993 694656993 901786062 901786062 696477782 889264263 889264263 623402278 860041259 860041259 415490180 521834716 521834716 105909904 105909904 118712280 118712280 127572064 127572064 119958496 130054272 130054272 44238048 316233088 316233088 881071171 881071171 447560830 808134722 808134722 1020991175 1026189612 1026189612 951736586 752533583 681348489 681348489 940122759 11670572 230164332 253077576 253077576 436372448 841664726 841664726 545702043 451567197 414335046 480281443 966935326 966935326 996935788 996935788 1070077695 1070077695 988942815 772937098 741588045 974225408 1008062991 1008062991 710000679 592247833 592247833 564717480 906075939 906075939 742387776 742387776 205596588 738770793 738770793 881729538 881729538 864159897 591671395 123624841 564708640 564708640 915057968 1051321669 1051321669 113454729 429856475 429856475 897923623 897923623 491419783 1015205967 1015205967 692248653 641430448 439385330 439385330 271636898 31592610 12847296 30406912 34360320 34360320 19407633 587251761 589390080 589390080 106635922 232887741 929693771 929693771 738797528 841163209 841163209 74584266 133169554 1027637866 1027637866 724867320 724867320 270854488 603841808 638018529 638018529 593963521 74331817 72881872 559605208 559605208 93607664 93607664 608852921 608852921 227834230 339077898 339077898 470136510 486884508 486884508 497099822 497099822 484507904 521749238 521749238 256434744 384092482 384092482 67020512 280772272 292384210 292384210 57189234 17139968 321290320 321290320 351088074 351088074 478937930 478937930 143158476 143158476 331354155 749732685 935332275 935332275 942839527 942839527 784808157 784808157 623513948 373742610 373742610 337304586 908695432 908695432 121157644 592552696 612417609 612417609 740344832 740820237 740820237 998409986 998409986 252448789 427847362 427847362 471942474 529031270 529031270 212407074 261792552 261792552 423690322 529007750 529007750 117450184 117450184 113832986 159515906 224395692 493565632 493565632 298853058 356393762 406717728 406717728 413403462 413403462 465877800 465877800 179516396 233847236 233847236 157731168 221243284 221243284 210570572 210570572 243313032 243313032 205658596 205658596 568801440 568801440 731518838 731518838 714618592 848157011 848157011 979771744 979771744 863028324 1060107527 1060107527 1024654535 1000867191 999981851 987541208 987541208 759337139 492574378 378072746 65261222 308114846 1036873536 1036873536 58541291 0 734594208 734594208 266956252 537023136 558940833 558940833 415236294 415236294 898294492 898294492 356085282 356085282 448423964 1003757724 1003757724 759646212 759646212 625209513 378552594 378552594 303915386 369830510 413407783 780858373 799935869 799935869 799328637 738741616 660341498 660341498 984025300 984025300 422448688 422448688 956979543 956979543 537142987 542843762 542843762 348883938 381509246 819904744 819904744 246597992 274899360 274899360 274829602 274829602 37830728 350302642 350302642 1069424 36717456 109092928 159402080 176193744 176193744 143038496 307245790 307245790 159388352 432331274 432331274 303300754 389302352 514867906 784460353 784460353 663833312 674308869 675589530 940675084 940675084 725632569 725632569 481031502 938210638 938210638 635688313 660998697 660998697 513089654 513089654 934086984 934086984 457712208 706479306 757155117 757155117 763840733 763840733 847865300 999242109 999242109 520987902 231499865 843129478 843129478 790997659 790997659 808588035 808588035 826491650 826491650 78088489 845415041 850577939 850577939 299143345 545820736 572264288 598081905 598081905 549342817 621230121 808374529 808374529 636162314 765074415 765074415 548752622 548752622 612368457 612368457 173614273 103499524 97907280 260709590 572718756 572718756 779577478 945154695 1040912940 1040912940 839609668 839609668 721577932 361660834 379977952 379977952 130492072 273588434 356630722 356630722 371471644 461389014 461389014 536911389 536911389 461404728 688212035 688212035 225830666 111825580 613813066 949361223 949361223 547881344 675415233 718733525 718733525 574040909 427797461 894376408 894376408 840889915 895319289 895319289 823786706 281560496 155281616 248777436 265310456 268484610 268484610 248404624 185894412 505973034 505973034 513543718 513543718 235930450 141616272 575595989 575595989 609037449 635030112 635030112 361122048 782400362 883539269 883539269 820042452 952514085 952514085 418459968 418459968 632300424 1021479970 1021479970 765258893 672615181 152381764 357371640 357371640 324872032 78971008 148054612 148054612 544658513 544658513 194636496 574671905 574671905 547144849 173131344 577456752 577456752 722653749 722653749 781391481 781391481 574240337 916327738 916327738 927977859 927977859 932626769 932626769 686638729 686638729 841271824 841271824 315622098 576055404 609433265 649220465 649220465 609882881 747386280 753350821 753350821 205085792 205085792 160008480 160008480 145616196 25740384 27803904 111413592 111413592 124855224 496674482 496674482 219370404 163906260 259296120 507315312 507315312 146059362 414059264 904084602 904084602 522403305 43535920 52922480 52922480 192888756 409681286 409681286 858985073 890773538 890773538 889456683 605030946 909027887 909027887 1053332578 1053332578 825339486 287454336 478204940 478204940 18609328 56174256 56174256 134094722 388543464 388543464 301062082 282235010 71312136 274543657 824124929 824124929 291840008 829896355 829896355 540208002 73776008 591330482 591330482 573468793 721888584 721888584 611531712 920819659 920819659 900378571 975638973 975638973 809835350 69035648 69567520 270422016 270422016 19448832 19448832 0 288384370 288384370 302146656 302146656 328666128 328666128 588201009 949171985 949171985 990580036 990580036 990415493 530076334 253402407 859462147 885694028 885694028 878107275 615604937 546314763 1022620611 1022620611 330646170 655896289 655896289 509345944 1012274423 1012274423 610947459 815793376 815793376 348213474 348213474 339817496 339817496 274074282 350885322 789080811 789080811 877249163 877249163 535602045 708706836 806571525 806571525 713045286 689963798 867278074 867278074 353866456 353866456 171209524 173342848 173342848 58983544 96551008 111199592 111199592 79282832 26854568 332442240 332442240 429069543 865882723 865882723 261409404 407820009 407820009 810846275 810846275 835605650 835605650 281356482 834891834 931845539 931845539 887218635 662158683 584749822 805326677 805326677 576866356 576866356 470814846 681255644 681255644 881989688 881989688 733576258 951952757 1061712863 1061712863 508268277 491071662 846016661 846016661 687457788 727559241 727559241 772279569 790626393 803923728 803923728 141033661 62522845 12767424 12767424 42387520 134237300 134384768 178963796 204396812 204396812 134349888 142639380 748708948 748708948 584618149 961074214 961074214 825294155 825294155 713892743 664483449 287740256 834820456 904546538 904546538 434768473 705168821 705168821 118096920 641218865 641218865 179843400 179843400 661228945 661228945 106742808 812909073 850625033 850625033 436108160 365188802 855687180 855687180 744751295 616634719 516087877 578476032 578476032 722010800 722010800 178130432 592466615 726933997 726933997 243210176 196867956 667473360 783974449 783974449 679138716 679138716 549461765 571675337 709705521 709705521 699428584 259171672 259171672 57022896 95398930 95398930 68356138 370808746 374475290 374475290 363467154 652742832 652742832 835191851 835191851 90932361 13497426 574660616 641794233 942153909 942153909 675354980 675354980 686343621 686343621 548195317 296863185 239389914 659740857 659740857 607249304 694390816 694390816 706326712 706326712 1029832378 1029832378 894036898 311146248 273732800 273732800 77629130 61139360 31457760 314612824 314612824 110034154 21847096 393638306 393638306 113430744 115015664 512321172 512321172 303484432 303484432 282540738 273208320 273208320 886362826 886362826 884281987 485683434 750303788 963587757 963587757 557846828 557846828 744628320 744628320 547971648 67546496 6655056 46196416 46196416 9768576 10540304 16142864 39891200 39891200 38006928 8786260 8786260 520170534 520170534 508440074 508440074 214908108 210569292 12716044 138446988 138446988 205799556 268097532 268097532 241857620 46167668 53661568 141243780 545335169 580924336 679727141 679727141 915331131 1012345125 1012345125 625798305 394264698 394264698 120072194 612530187 612530187 336863296 336863296 401832128 884247531 884247531 833851937 833851937 569822179 537981344 274605121 823591459 868861169 868861169 555035169 555035169 550566529 550566529 590892337 590892337 551070624 671277220 671277220 571433424 251029112 155934656 101550744 503578686 503578686 151394384 495077694 495077694 257350980 257350980 240963228 294549270 294549270 51132096 395235394 395235394 81230088 70600000 65085936 65085936 10494832 52832640 52832640 23962744 208365816 208365816 130397580 232648240 232648240 187419524 51677048 51677048 160439864 522248394 522248394 441569152 441569152 284732332 406546434 406546434 274936504 281195680 281195680 475677974 475677974 437302840 337323082 337323082 78378312 110203672 1008256642 1008256642 965501573 316198311 515286592 738608356 738608356 700498149 598513093 579213393 49026433 48622032 401868074 401868074 387634920 387634920 365065016 365065016 102910602 290104450 290104450 319824130 319824130 327821044 543245649 543245649 289266084 289266084 694023169 973331160 973331160 880063111 873579520 873579520 232228979 169465424 34718288 320395264 320395264 52098562 84183100 84183100 123102384 304443395 681843265 709223953 709223953 1026741745 1026741745 730257428 352694644 942834486 942834486 924914701 646345393 388407696 388407696 391595370 668529817 668529817 380235034 498276132 498276132 565346882 824365347 1057641235 1057641235 973455888 1002344895 1002344895 828717309 990649682 990649682 906910968 906910968 873140417 841125352 340651178 541212672 541212672 24652960 33176960 694656993 694656993 555418788 555418788 696477782 889264263 889264263 507646110 903257771 903257771 894620331 894620331 587892378 161882132 161882132 238971740 251273152 251273152 145860476 177985316 177985316 166887728 82314632 80480320 537138560 881071171 881071171 447560830 808134722 808134722 1020991175 1026189612 1026189612 1014499324 969418651 805836807 537342225 405414685 1062678541 1062678541 403069938 413452614 684743939 684743939 69068680 168427840 168427840 414335046 480281443 966935326 966935326 379694122 498157836 498157836 123144448 598181682 741588045 741588045 559941038 559941038 710000679 710000679 756924984 756924984 257018501 906075939 906075939 742387776 742387776 205596588 220508872 220508872 881729538 881729538 864159897 591671395 123624841 256331826 318945468 915057968 1051321669 1051321669 113454729 429856475 429856475 897923623 897923623 822746120 1015205967 1015205967 692248653 641430448 439385330 439385330 375853432 375853432 274773394 71719386 51576176 53613360 53613360 27383472 560526257 560526257 106635922 335599306 929693771 929693771 738797528 841163209 841163209 95424874 282233354 681991040 712020399 724867320 724867320 334356818 653857066 653857066 873149451 873149451 107557139 301990050 912949632 912949632 889975851 285222953 608852921 608852921 227834230 339077898 669539633 673693849 673693849 577500561 605615569 613992009 613992009 709362837 709362837 734921604 734921604 300167114 45831632 45831632 24677952 19295456 39896192 61408096 61408096 299909776 351088074 351088074 478937930 478937930 143158476 143158476 96865588 440409087 935332275 935332275 836840910 325652328 784808157 784808157 623513948 130689248 34214928 5485184 206857656 206857656 656894387 1042062651 1042062651 995438391 978484266 978484266 740820237 776391728 776391728 714529365 612916764 176595296 110835288 110835288 93558384 83886920 210314498 210314498 423690322 529007750 529007750 117450184 117450184 182535430 413143426 486540694 493565632 493565632 298853058 275199874 420978984 474410190 478464078 478464078 92892198 38800936 122424504 122424504 85721744 62963952 111309008 111309008 214009196 214009196 159486376 159486376 205658596 205658596 697617188 697617188 233132576 233132576 845044241 845044241 307942274 979771744 979771744 838933525 1060107527 1060107527 1024654535 1066304100 1066304100 336689318 404100794 1036746379 1036746379 995306558 995306558 950519313 1036873536 1038874095 1038874095 1070468555 1070468555 734594208 1031815626 1031815626 502432365 419565606 415236294 437321906 898294492 898294492 356085282 356085282 138227460 1003757724 1003757724 613342276 613342276 472563847 434159878 378552594 339536403 369830510 540014592 780858373 799935869 799935869 799328637 738741616 632167616 632167616 231611628 231611628 114418392 187302132 653312840 653312840 174246524 632304233 632304233 626866176 381509246 919336155 950602771 985428910 985428910 274899360 274829602 274829602 180463248 350302642 350302642 248214456 108088156 143517416 159402080 159402080 38013072 143038496 307245790 307245790 224477816 432331274 432331274 303300754 267665836 514867906 784460353 784460353 663833312 674308869 674308869 940675084 940675084 725632569 725632569 117176280 117176280 179901068 179901068 660998697 660998697 520600141 520600141 678488036 708251016 708251016 706479306 757155117 757155117 1012449316 1012449316 704692939 999242109 999242109 558311111 601699950 781846035 781846035 555047883 555047883 553835050 553835050 542220616 542220616 82317560 555379296 555379296 546307137 599676304 599676304 545820736 579260672 579260672 549342817 38918113 808374529 808374529 636162314 765074415 765074415 548752622 548752622 490054394 230737640 381503004 381503004 336192522 269058056 572718756 572718756 23726741 12530944 79638552 176163948 176163948 196568796 227723328 227723328 227706992 227706992 80811744 273588434 356630722 356630722 92677954 164237620 193463412 536911389 536911389 461404728 688212035 688212035 225830666 464261620 613813066 949361223 949361223 547881344 675415233 718733525 718733525 574040909 427797461 894376408 894376408 840889915 895319289 895319289 823786706 116975408 155281616 248777436 265310456 357440682 357440682 248404624 173940372 510167314 510167314 120078760 50332968 70804120 141616272 575595989 575595989 609037449 635030112 635030112 361122048 361122048 883539269 883539269 731325584 952514085 952514085 714945952 561188164 632300424 632300424 622330889 622330889 543238052 274737682 315711858 315711858 756686462 858603480 858603480 1054128030 1054128030 707546276 432328142 988062199 988062199 950398161 173131344 248538224 545410265 722653749 722653749 1011526240 1011526240 327299147 916327738 916327738 927977859 927977859 558183792 612981787 686638729 686638729 260771637 749893557 749893557 727882773 727882773 649220465 649220465 609882881 545383212 143551680 613769741 671682568 671682568 622183716 622183716 145616196 218288172 218288172 207756716 207756716 124855224 496674482 496674482 219370404 687354349 687354349 566797864 562294881 762808285 805253380 904084602 904084602 681741381 673841305 646501633 578913600 578913600 569067552 569067552 41496388 296331360 297396066 419398308 629811404 629811404 489469399 486984316 486984316 288788942 287454336 478204940 491970318 491970318 461052420 407596946 234778674 234778674 4406266 282235010 282235010 4412096 274543657 621424258 621424258 558366978 541198337 540208002 540208002 57363072 591330482 591330482 619288520 619288520 611531712 611531712 920819659 920819659 900378571 623807682 282198632 268509186 69035648 336883200 336883200 20244776 19448832 274487936 274487936 21389058 3984672 11103456 33284160 308012928 308012928 452250582 805959312 805959312 942146823 942146823 674477116 674477116 504026142 504026142 698499746 698499746 138035685 135284608 2097408 475189504 475189504 406848128 309439416 512758722 512758722 303312502 533149188 533149188 289449006 389635072 389635072 336451376 339817496 339817496 136010753 236178252 789080811 789080811 877249163 877249163 535602045 708706836 806571525 806571525 713045286 689963798 867278074 867278074 353866456 353866456 258534436 258534436 173342848 58983544 58983544 128063184 128063184 290920554 290920554 332442240 332442240 464130288 865882723 865882723 822513910 407820009 407820009 810846275 810846275 835605650 835605650 364909066 834891834 931845539 931845539 887218635 662158683 548455728 548455728 45427393 687015269 687015269 657828860 681255644 681255644 268439578 471009312 733576258 951952757 1061712863 1061712863 508268277 491071662 491071662 687457788 687457788 727559241 727559241 718200949 664751449 664751449 76560408 542341697 651254073 651254073 72796801 608848776 738857224 738857224 486973482 486973482 476441998 233764350 233764350 1054950544 1054950544 720606835 961074214 961074214 825294155 825294155 713892743 646272529 298583456 834820456 904546538 904546538 434768473 795082920 795082920 580912192 580912192 162637888 840009298 840009298 615486797 478194699 409283348 812909073 850625033 960316977 960316977 365188802 855687180 855687180 744751295 616634719 516087877 578476032 578476032 518520951 518520951 178130432 592466615 592466615 142083616 142083616 151003264 610849792 610849792 571134593 70909969 9438400 1313804 110430848 110430848 208733696 208733696 40969104 57022896 57022896 38146496 9312448 348568896 356056090 389464890 389464890 363467154 363467154 359607355 598189923 598189923 613447544 829968721 829968721 1021518254 1021518254 942153909 786984042 675354980 686343621 694013605 694013605 667018431 845999897 845999897 659740857 607249304 694390816 694390816 706326712 706326712 1029832378 1029832378 894036898 369499568 38797968 354685152 354685152 61139360 337979658 367469890 367469890 329189344 324551344 393638306 393638306 293126256 293126256 291113562 291113562 373604560 373604560 341772490 273208320 365138016 365138016 362279114 872731402 891547947 891547947 890594540 890594540 547169288 613681737 744628320 744628320 547971648 22020192 20972160 46196416 56935712 56935712 59080544 59080544 40015936 302063634 302063634 268509186 268509186 520170534 520170534 753295663 753295663 1010911558 1010911558 416314565 378526946 378526946 395184090 395184090 580527344 703803408 703803408 185553568 728375888 728375888 580924336 679727141 679727141 915331131 1012345125 1012345125 889990206 704716821 892219409 896169139 896169139 850056194 371905818 625211888 625211888 884247531 884247531 833851937 833851937 569822179 537981344 274605121 823591459 868861169 868861169 555035169 555035169 550566529 550566529 590892337 590892337 166731041 671277220 671277220 571433424 175818592 50246928 42340352 503578686 503578686 134221876 495077694 495077694 257350980 257350980 240963228 294549270 294549270 34393728 395235394 395235394 81230088 70600000 65085936 65085936 37954016 271661970 311900552 388108666 388108666 279134578 269676026 151547768 151547768 169891624 332573164 389217032 389217032 296509726 296509726 104845976 104845976 283721728 344505730 344505730 336469002 293735242 873728614 873728614 572392741 948981430 948981430 72332831 19449120 37412980 178886416 446712428 446712428 122693482 213918478 514939874 514939874 490111056 264428852 264428852 182452692 182452692 182452224 74485920 88637832 88637832 306715584 306715584 81247522 117913656 117913656 94880080 15533664 327821044 327821044 198775922 289266084 289266084 283238464 283238464 160397544 444307484 444307484 826480287 826480287 570458734 823132212 1011815087 1011815087 682597156 869797828 869797828 123102384 264684104 264684104 245440588 605836880 605836880 589956128 278397744 352694644 440077122 440077122 437917206 370807318 388407696 388407696 391595370 391595370 286785800 20600352 590349618 824316195 824316195 824365347 1057641235 1057641235 916627073 1002344895 1002344895 828717309 990649682 990649682 906910968 906910968 873140417 841125352 877771441 877771441 643938723 643938723 272117852 653442914 653442914 555418788 1041235968 1041235968 807666413 888514469 1047053727 1047053727 953235488 953235488 894620331 587892378 165616128 161882132 238971740 251273152 251273152 145860476 177985316 177985316 166887728 82314632 80480320 537138560 537138560 357042763 809005702 809005702 402991110 402991110 478359630 1014499324 1014499324 969418651 805836807 537342225 556139013 1062678541 1062678541 403069938 413452614 684743939 684743939 235280412 235280412 692266569 692266569 573258456 328051229 328051229 245399614 498157836 893526803 893526803 524630393 524630393 116988920 214873500 237096724 303067648 378552336 756924984 756924984 257018501 907433523 907433523 361288256 848098577 923384232 923384232 756019469 669759609 382456134 382456134 92932256 43335268 539908196 598606672 598606672 958419480 958419480 647234176 575615553 575615553 194061469 822746120 822746120 443237950 464780318 464780318 998740535 998740535 981863104 391119866 375853432 274773394 71719386 57039936 53613360 53613360 34136112 130589896 130589896 70440130 335599306 335599306 322445976 322445976 340003528 340003528 95424874 282233354 282233354 278186562 610368264 610368264 334356818 808530992 808530992 873149451 873149451 107557139 839483409 912949632 912949632 889975851 285222953 35807152 109992080 109992080 630025376 673392641 673693849 673693849 577500561 605615569 613992009 613992009 709362837 709362837 734921604 734921604 146275140 191755536 191755536 65716448 65044864 65044864 61408096 61408096 299909776 470835208 470884878 470884878 432087964 397708472 325063790 325063790 862271916 862271916 725878965 457705548 457705548 194850420 194850420 130689248 130689248 138129556 138129556 269021472 310442706 656894387 1042062651 1042062651 995438391 978484266 978484266 485889469 776391728 776391728 714529365 612916764 304084074 436782102 436782102 436782102 274850178 274850178 124379378 251707452 295224322 295224322 11657792 36300048 182535430 413143426 486540694 486540694 119541454 275199874 494681582 494681582 474410190 478464078 478464078 336350794 336350794 244386158 129510224 129510224 61075824 71431504 132236656 214009196 214009196 86325408 86325408 80062888 151316448 697617188 697617188 543888150 944902791 944902791 845044241 307942274 307942274 838933525 838933525 792948736 990832680 990832680 1066304100 1066304100 902236230 404100794 1036746379 1036746379 995306558 995306558 950519313 997150238 1038874095 1038874095 1070468555 1070468555 842093200 1031815626 1031815626 700200999 818293043 818293043 541200848 596165745 596165745 369727044 64436976 64436976 156028077 365711533 613342276 613342276 472563847 434159878 339536403 339536403 339193378 540014592 540014592 306094384 97614656 97381608 32032224 632167616 632167616 144077385 143469636 114418392 114418392 106596612 57501309 174246524 632304233 632304233 826877091 826877091 919336155 950602771 985428910 985428910 281174048 281174048 103944984 180463248 180463248 248214456 248214456 108088156 143517416 143517416 115179676 216590352 216590352 151003204 256443784 256443784 224477816 118202920 203718928 267665836 478751350 478751350 245386908 685619863 685619863 512593999 741332956 741332956 751952589 751952589 518262367 212460876 279121934 279121934 219813360 381968981 545927377 858908403 858908403 708251016 708251016 1018552652 1018552652 956375079 1012449316 1012449316 17526848 9221152 404788384 558311111 686182028 781846035 1009583561 1009583561 439380929 112858968 28459618 542220616 837997539 837997539 274072386 282409184 838316625 838316625 599676304 542255632 579260672 579260672 560861096 658987048 658987048 379126810 379126810 229777900 420329636 572277129 572277129 490054394 574189193 776867732 776867732 754502777 793433277 793433277 549123841 590032356 590032356 756310292 756310292 94862992 94862992 117465472 123855288 123855288 38801728 130419296 130419296 49854536 63783152 88293048 164237620 193463412 206959072 279180964 340663434 360231050 360231050 456604470 464261620 750256392 1035736295 1035736295 411570352 411570352 0 310902928 310902928 311048304 311048304 286075938 352577594 352577594 319193096 303277472 303277472 68162088 88215720 210109094 357440682 357440682 269201536 137125260 510167314 510167314 453961174 453961174 313279850 409314804 458842608 844516434 844516434 295268946 295268946 269044488 355122210 975447572 975447572 731325584 702422757 714945952 714945952 561188164 250421652 112140136 685187205 685187205 560402466 945107248 945107248 315711858 756686462 858603480 858603480 1054128030 1054128030 707546276 692134053 988062199 988062199 950398161 414188358 414188358 866839553 866839553 690256660 1011526240 1011526240 327299147 324556241 617487561 933915360 933915360 861829323 861829323 279275779 288173338 371795226 749893557 749893557 727882773 727882773 190081616 190081616 545383212 545383212 237025884 613769741 671682568 671682568 622183716 622183716 176698908 218288172 218288172 207756716 207756716 94896612 142708072 154810480 218441772 687354349 687354349 742263057 742263057 762808285 805253380 805253380 681741381 745560336 745560336 717281413 578913600 578913600 569067552 569067552 601817703 822517504 822517504 720842500 720842500 684204912 542429028 578545632 689330644 689330644 59007888 203249804 491970318 491970318 461052420 407596946 234778674 234778674 294937480 294937480 29360680 83842632 295288448 822619050 822619050 558366978 541198337 538616626 539879424 578386593 578386593 572758016 638354594 910686858 910686858 846434352 846434352 368304712 368304712 282320136 282198632 268509186 342968994 342968994 336883200 300347682 300347682 286809600 274487936 300961210 300961210 308374504 308374504 540176644 540176644 259263420 807583808 807583808 274094272 274094272 674477116 674477116 504026142 504026142 223236480 545267366 545267366 368669249 7415264 475189504 475189504 406848128 242877072 512758722 512758722 156187812 533149188 533149188 289449006 389635072 389635072 100939656 124823584 124823584 25833704 92472328 219484508 344993560 344993560 187175702 21632160 425890144 428528742 428528742 300536902 283764162 152187200 152187200 135922944 219909196 258534436 258534436 153770024 99296208 99296208 128063184 128063184 290920554 290920554 125904920 125904920 464130288 464130288 822513910 822513910 285829216 29451426 88096868 214223052 261144682 621042318 621042318 1070880806 1070880806 385092074 568991546 568991546 548455728 548455728 45427393 687015269 687015269 657828860 657828860 520510809 255528749 601843993 602315245 602315245 453117930 613450803 613450803 405275910 407011661 731921233 731921233 618474685 583854277 798231281 798231281 652581625 711164609 711164609 651254073 651254073 73875984 608848776 738857224 738857224 486973482 486973482 476441998 233764350 233764350 1054950544 1054950544 1009280428 409170575 1047570426 1047570426 446353109 275527906 275527906 298583456 352340266 473334976 473334976 363200898 795082920 795082920 612897144 580912192 549590762 840009298 840009298 615486797 478194699 409283348 420333492 809533496 960316977 960316977 499141028 138725039 138725039 32772 167824471 181983376 181983376 168299524 168952400 168952400 559415300 559415300 706864317 706864317 225649580 199907368 610849792 610849792 571134593 545518272 545518272 622750924 689440293 788072105 788072105 738471772 40969104 48906336 97307114 104637730 104637730 358945570 358945570 389464890 389464890 343277961 611455881 611455881 621436866 621436866 613447544 829968721 829968721 1021518254 1021518254 786984042 786984042 669204433 603476438 694013605 694013605 667018431 845999897 845999897 362064641 774473488 774473488 176243821 291836458 291836458 353511842 822432542 822432542 506636323 96996552 354685152 354685152 287584312 337979658 367469890 367469890 329189344 324551344 324551344 367352984 367352984 293126256 291113562 291113562 373604560 373604560 341772490 307596480 365138016 365138016 362279114 872731402 891547947 891547947 539230400 551815617 551815617 613681737 613681737 635248768 635248768 71379649 46451584 46451584 56935712 56935712 59080544 59080544 40015936 302063634 302063634 268509186 268509186 857035073 857035073 753295663 753295663 1010911558 1010911558 416314565 676880487 676880487 580718899 716251989 716251989 703803408 703803408 185553568 728375888 728375888 179508657 134222084 543949294 885525799 885525799 889990206 889990206 704716821 892219409 896169139 896169139 850056194 371905818 625211888 625211888 10873152 10873152 6416704 8710976 8710976 8962112 12600896 21681312 38491344 38491344 30094560 46987312 46987312 22928512 56143424 56143424 56565280 64617632 64617632 185014752 185014752 160906688 120120848 235139548 235139548 121770168 121770168 253368740 253368740 162529356 227052736 227052736 42603600 54264896 54264896 18800160 41424036 142744724 142744724 306361298 984836300 984836300 540740174 880006594 896366696 896366696 286806541 1024119855 1024119855 899892435 600892262 481624444 465891980 465891980 272102648 117596056 117596056 283721728 344505730 344505730 336469002 293735242 873728614 873728614 950550606 950550606 948981430 155733036 1010324242 1010324242 967334274 967334274 446712428 122693482 178882708 251707444 251707444 151161860 264428852 264428852 182452692 182452692 399543106 399543106 104579208 97434586 329592698 329592698 81247522 344320074 344320074 323081858 323081858 26773728 145122820 679915283 679915283 272616564 309089554 342852740 483732174 712595551 712595551 826480287 826480287 570458734 823132212 1011815087 1011815087 682597156 869797828 869797828 282362624 350143614 350143614 218802214 1047722548 1047722548 605102747 517942549 495982058 440077122 440077122 437917206 370807318 337165984 616746739 616746739 893609121 927786162 927786162 837323939 824316195 824316195 329934625 629411952 968491318 968491318 718035513 446873699 30148096 741794784 741794784 301172365 285922338 122220618 583060211 877771441 877771441 643938723 643938723 399780546 850437592 924132751 1059449151 1059449151 1041235968 807666413 888514469 1047053727 1047053727 953235488 953235488 271386446 271386446 165616128 420910112 420910112 355725414 155456302 100890616 198721412 441243552 441243552 322055832 76416552 252714332 252714332 609229377 809005702 879928487 879928487 402991110 478359630 478359630 421855563 421855563 843917699 843917699 556139013 0 0 71690440 71690440 550449304 550449304 235280412 704643665 723834901 723834901 573258456 328051229 328051229 528749570 528749570 893526803 1004880827 1004880827 524630393 792155213 792155213 237096724 303067648 378552336 378552336 167772180 442381313 907433523 907433523 361288256 848098577 923384232 923384232 756019469 669759609 394325418 394325418 343216016 271704064 539908196 598606672 598606672 625431279 684140675 1023556206 1023556206 575615553 572260610 572260610 443237950 1073532074 1073532074 562115767 998740535 998740535 981863104 391119866 330213650 306632850 306632850 102331272 353993224 353993224 319774768 68942496 60297872 60297872 32031504 38912000 110700120 110700120 70650240 70650240 21117192 72682184 72682184 38892424 641386528 641386528 51565104 808530992 808530992 618862147 618862147 299381241 839483409 839483409 875290146 875290146 593660347 606490369 606490369 62922752 630025376 673392641 673392641 537213197 503388292 872738970 878739531 878739531 683839695 123891880 614843492 614843492 146275140 191755536 191755536 65716448 65044864 65044864 55499744 55499744 305554907 1015572041 1059332143 1059332143 932783739 932783739 799746630 325063790 862271916 862271916 832905473 832905473 820469216 820469216 813536332 813536332 410225029 410225029 159368389 947683719 947683719 520560918 795744376 795744376 886705785 886705785 518198316 518198316 371229378 371229378 266207288 304084074 304084074 436782102 470188376 470188376 274850178 274850178 124379378 251707452 251707452 235631648 0 0 6369280 6427008 310449736 370882074 370882074 229316448 494681582 494681582 499901858 499901858 497025446 336350794 454084538 456705846 456705846 299417684 61075824 71431504 132256248 132256248 88195560 25244096 144146432 144177732 154204900 154204900 642995217 642995217 1011389398 1011389398 911283138 911283138 694818213 694818213 792948736 792948736 990832680 990832680 805499064 902236230 902236230 305449746 412237826 447093078 447093078 526493176 526493176 997150238 997150238 585400221 1066529611 1066529611 1056008585 1056008585 742141893 700200999 818293043 818293043 541200848 596165745 596165745 789542070 876923019 876923019 876923019 153491748 271191078 271191078 36100368 33867792 33867792 19473696 102853941 740681997 740681997 788665997 788665997 207553477 207553477 629710400 733543701 733543701 45077664 45077664 186257844 186257844 8458496 4218944 620760072 620760072 826877091 826877091 371245338 371245338 495998908 495998908 281174048 281174048 26503328 286705912 286705912 227758762 96605916 85586112 121725968 184934940 184934940 216590352 216590352 32547152 256443784 256443784 26280004 118202920 189604896 189604896 478751350 478751350 245386908 685619863 685619863 558534832 741332956 741332956 751952589 751952589 518262367 212460876 279121934 757732653 757732653 804007292 804007292 858908403 858908403 658118457 648060056 1018552652 1018552652 956375079 932229544 932229544 772171801 772171801 1050153758 1050153758 990306464 686182028 1009583561 1009583561 974985078 974985078 77827664 541086562 837997539 837997539 289456290 594852354 838316625 838316625 544554912 542255632 540175233 540175233 560861096 658987048 658987048 122153144 124725036 229777900 229777900 572277129 572277129 239914140 574189193 776867732 776867732 754502777 793433277 793433277 549123841 590032356 590032356 756310292 756310292 435570596 432649166 497460582 499911918 499911918 457727136 130419296 130419296 51513616 51513616 88293048 397384706 397384706 661731769 661731769 340663434 621131917 621131917 456604470 487524696 750256392 1035736295 1035736295 1065010936 1065010936 886077005 884499907 1014002617 1014002617 968896557 968896557 881403403 907018779 907018779 663621522 303277472 259527996 259527996 206966508 176161688 269201536 269201536 406633224 406633224 323727394 453961174 453961174 313279850 409314804 569690615 844516434 941648448 974512200 974512200 217047046 601803168 975447572 1012207318 1012207318 996160341 674053156 452671446 155989250 249445092 249445092 685187205 685187205 560402466 945107248 945107248 199584340 185958880 41954176 575880384 575880384 594873380 692134053 692134053 575458449 575458449 404769858 414188358 414188358 866839553 866839553 690256660 957541953 957541953 375025852 979691099 979691099 933915360 933915360 861829323 861829323 587376928 288173338 371795226 371795226 279870712 257182004 83927144 190081616 190081616 189129652 237025884 237025884 202693132 202693132 727247805 727247805 255165620 651039125 651039125 120148376 609287840 609287840 733058333 784028592 784028592 734003445 734003445 591922244 771895824 771895824 738210304 738210304 169154145 129898008 745560336 745560336 717281413 144837009 135927300 302789250 593308816 601817703 822517504 822517504 720842500 720842500 684204912 542429028 578545632 689330644 689330644 281872064 282667200 282667200 88090280 88090280 1502848 268767530 268767530 294937480 294937480 285212674 83842632 295288448 822619050 822619050 562013600 826089250 826089250 539879424 578386593 578386593 572758016 638354594 910686858 910686858 846434352 846434352 346109066 346109066 340076552 340076552 21768064 342968994 342968994 84253952 300347682 300347682 286809600 294422736 300961210 300961210 320094736 320094736 540176644 540176644 469161727 807583808 807583808 274094272 274094272 352311191 352311191 366260578 366260578 474091662 545267366 676965645 676965645 32785888 436054249 1028461249 1028461249 881242028 881242028 337641484 156187812 281968840 281968840 248302644 202643030 318151744 318151744 288720048 288720048 131674280 125896016 125896016 268908128 394437210 394437210 58150208 425890144 428528742 428528742 300536902 283764162 336503808 344928438 498011744 498011744 87692648 73939160 86615400 99296208 99296208 100226448 100226448 26550568 110434816 125904920 125904920 127345792 436215336 436215336 415236294 285829216 29451426 88096868 214223052 981487636 981487636 621042318 1070880806 1070880806 840993740 327155778 638370102 638370102 22470561 4194944 163097600 163097600 506040413 520510809 520510809 255528749 601843993 602315245 602315245 453117930 613450803 613450803 405275910 407011661 731921233 731921233 729685441 819069429 890317415 890364459 890364459 1060346155 1060346155 344357701 576029072 576029072 73875984 142219140 142219140 138731012 157374628 157374628 157047300 157047300 153617700 1009280428 1009280428 383885514 1047570426 1047570426 397460901 275527906 275527906 274776450 283544838 473334976 473334976 363200898 545732673 953101699 953101699 893502974 893502974 549590762 333852988 655959315 655959315 471658776 439216396 524921800 524921800 750281077 750281077 167821332 704647306 876793995 876793995 606867913 606867913 239747162 847290629 847290629 845253058 845253058 706864317 729413557 729413557 699101872 199907368 168171540 234316840 545518272 545518272 629745668 764152941 788072105 788072105 738471772 232777936 232777936 97307114 104637730 104637730 358945570 358945570 19138848 290458408 343277961 611455881 611455881 621436866 621436866 589612153 103818802 103818802 637707585 637707585 366402282 541266886 541266886 159347701 407267528 407267528 149557298 403859784 787477114 787477114 774473488 774473488 751984196 751984196 631232604 421679016 822432542 822432542 506636323 96996552 319766656 370880826 370880826 277221680 277221680 328340184 328340184 80740592 80740592 367352984 367352984 290814056 290814056 302223376 303249946 328851488 328851488 307596480 633608195 756179489 756179489 750897516 904059114 904059114 899189259 815840966 946396677 946396677 678385285 635248768 635248768 71379649 46451584 55616400 55616400 45476688 45476688 37046528 10750272 1434432 268438050 268438050 288990784 857035073 857035073 419654948 419654948 294139522 299611876 299611876 713146468 713146468 580718899 716251989 716251989 599962752 599962752 160705728 586417680 716769680 716769680 952119379 986718854 986718854 885525799 746943843 888332131 1018081226 1018081226 286211106 640278576 640278576 669098089 669098089 873777176 923796027 923796027 401910210 401910210 118892858 53973488 294256225 355467287 474707148 474707148 205332780 800495473 800495473 65536 25428192 25428192 56565280 56565280 55556912 185014752 185014752 185848776 185848776 419702270 419702270 168905312 482609682 482609682 264903600 256261856 256261856 487260682 487260682 265239804 382096642 382096642 105905304 142744724 142744724 306361298 984836300 984836300 813971408 880006594 985256936 985256936 820998085 1024119855 1024119855 899892435 600892262 481624444 465891980 465891980 272102648 117596056 117596056 386525328 386525328 336382986 336382986 310774602 71153418 121112376 950550606 950550606 469795391 562745865 1010324242 1010324242 967334274 967334274 1045997909 1045997909 611394993 346183319 1016756749 1016756749 738670605 218562593 135340036 538409261 538409261 604081676 604081676 551007788 329592698 329592698 110378832 344320074 344320074 323081858 323081858 308137506 308137506 679915283 679915283 477102990 345641354 345641354 483732174 712595551 712595551 210999700 503765022 503765022 333036206 76555298 68165664 16777248 314640054 314640054 467536790 467536790 350143614 218802214 1047722548 1047722548 605102747 597688492 597688492 478480764 352649792 82059365 132770780 1052770527 1052770527 767766765 893609121 927786162 927786162 837323939 756702581 756702581 522757997 587419697 968491318 968491318 718035513 664087161 856392223 856392223 741794784 763572333 763572333 818186272 818186272 349659888 398901378 398901378 399780546 841042496 850437592 924132751 1059449151 1059449151 753361760 753361760 680663967 258423228 419058108 419430342 922146834 922146834 614587330 172788240 420910112 420910112 355725414 155456302 100890616 198721412 441243552 441243552 322055832 82499016 982013182 982013182 805050165 805050165 879928487 879928487 290246178 210899532 348725559 421855563 806822148 952380033 952380033 168036100 251965699 648478004 648478004 315497682 550449304 552616526 610583685 778619321 778619321 723834901 918377606 918377606 318984290 528749570 528749570 476711032 1004880827 1004880827 511609052 792155213 792155213 94533688 95503124 115897889 172324120 235046316 523391276 523391276 151580327 7866240 648304362 648304362 572527419 572527419 341187073 394325418 394325418 355158040 355158040 30238856 669315309 669315309 625431279 850471234 1023556206 1023556206 202901724 572260610 572260610 443054576 1073532074 1073532074 562115767 354840334 392399274 392399274 330213650 330213650 306632850 306632850 386139704 386139704 353993224 319774768 68942496 60297872 67273328 110122224 110122224 32540864 32540864 70650240 70650240 26622464 67445344 67445344 77926432 641386528 641386528 274464643 286270786 286270786 618862147 618862147 337064682 643343779 643343779 875290146 875290146 593660347 606490369 606490369 751243715 751243715 954673379 1021835727 1021835727 503388292 872738970 878739531 878739531 683839695 580954016 760356963 760356963 3146642 4667776 37429760 37429760 7340928 44030464 44030464 40707346 307320784 1015572041 1059332143 1059332143 932783739 932783739 983567939 983567939 673515779 868432087 868432087 832905473 820469216 820469216 813536332 813536332 410225029 410225029 159368389 947683719 947683719 520560918 948571186 948571186 886705785 886705785 690137665 690137665 538005940 266207288 266207288 173801520 168297492 304399206 470188376 470188376 235744284 235744284 329582618 329582618 288908598 288908598 258839844 258839844 187359220 180786504 399118010 399118010 470951064 470951064 229316448 285421602 499901858 499901858 497025446 72352716 454084538 456705846 456705846 299417684 57726064 57315968 220335408 220335408 102993928 195293556 195293556 232055464 232055464 210813516 642995217 642995217 1011389398 1011389398 911283138 911283138 845600352 722840112 722840112 725878965 725878965 37789792 805499064 856066592 856066592 305449746 412237826 447093078 447093078 963143521 963143521 1039822052 1039822052 810221898 115884272 744853842 1056008585 1056008585 697681653 554049536 554121249 554121249 313745059 285250144 334529306 789542070 876923019 876923019 876923019 539319189 998073525 1044854943 1044854943 832004881 769778157 744516377 621031720 740681997 740681997 788665997 788665997 731849329 731849329 629710400 733543701 788958052 788958052 585348049 585348049 746163800 746163800 540886024 540886024 592123648 594617265 594617265 623428905 937604409 949530414 949530414 278245378 278245378 48287344 286705912 286705912 227758762 163578060 143425584 121725968 184934940 184934940 201906700 402653310 402653310 238618152 298522522 298522522 147984616 209942744 209942744 433049686 433049686 464589890 464589890 700711040 700711040 570999825 735140148 790207953 790207953 148383612 247729624 247729624 757732653 757732653 804007292 804007292 228917904 168887116 648060056 648060056 552525249 182686353 657688660 657688660 596790551 772171801 772171801 1050153758 1050153758 991124800 681703791 681703791 968223015 974985078 974985078 891404587 891404587 563278698 292960898 289456290 594852354 594852354 544554912 544554912 58276737 9648784 1380992 0 46675008 46675008 9502784 9502784 69585224 69585224 33923664 124570112 124570112 109176512 48225112 11393536 81561984 337066506 381249698 381249698 313079282 372500032 372500032 435570596 435570596 432649166 497460582 499911918 499911918 457727136 102441656 45387816 109128256 109128256 77712730 397384706 397384706 661731769 661731769 214315728 621131917 970274960 970274960 533460222 819965990 819965990 473483022 1065010936 1065010936 886077005 884499907 1014002617 1014002617 968896557 968896557 881403403 907018779 907018779 663621522 119668884 259527996 259527996 206966508 510969878 510969878 135875718 406633224 406633224 1591558 49152 49152 73547956 466935112 569690615 569690615 941648448 974512200 974512200 487920896 601803168 601803168 1012207318 1012207318 996160341 452671446 452671446 155989250 249445092 249445092 136456198 347214666 351097472 351097472 303687186 303687186 756028908 806757112 806757112 597954290 597954290 478488654 605056338 708364053 708364053 514125197 418505670 645122719 685013592 685013592 463267740 957541953 957541953 375025852 979691099 979691099 531504510 1053627588 1053627588 587376928 615192000 872551451 872551451 833104144 833104144 126945744 140307488 140307488 201435776 218153004 218153004 84207648 84207648 91727488 727247805 727247805 255165620 651039125 651039125 586468305 609287840 609287840 733058333 784028592 784028592 734003445 734003445 591922244 771895824 771895824 144122656 144122656 136970240 136970240 711888896 711888896 810667715 810667715 44422993 302789250 593308816 593308816 449926918 449926918 303910240 303910240 325379458 325379458 297217392 419742726 419742726 295821666 282667200 282667200 173093548 224309560 224309560 268767530 268767530 86456616 285212674 285212674 17151520 16796065 544466944 544466944 562013600 826089250 826089250 3516672 573401600 573401600 35693824 36752128 36752128 75471248 338663874 338663874 346109066 346109066 340076552 340076552 21768064 69053056 69053056 869376 268576768 297192866 297192866 294422736 294422736 60429936 320094736 320094736 343983107 464683392 469161727 469161727 321331617 864358579 864358579 750876438 750876438 902608739 902608739 756208173 756208173 676965645 676965645 582672272 549771265 1028461249 1028461249 881242028 881242028 482658510 482658510 281968840 281968840 248302644 202643030 318151744 318151744 288720048 288720048 608534529 608534529 125896016 571660417 571660417 394437210 176291908 176291908 687362077 687362077 216003084 607357485 607357485 344928438 498011744 498011744 87692648 84683968 96542952 96542952 41378472 35464056 63716010 279310018 279310018 364456618 387714170 387714170 897269565 897269565 713492801 390400237 1037892272 1037892272 148005828 981487636 981487636 994973152 994973152 840993740 840993740 487339230 638370102 1005309614 1005309614 960938150 960938150 549461600 612795645 612795645 450956750 399360 16777472 18874656 18874656 18874656 35700960 333083072 333083072 398400938 575096276 982736119 982736119 819069429 890317415 890364459 890364459 1060346155 1063561904 1063561904 576029072 576029072 142529664 142529664 137499396 305791234 523792678 523792678 119388342 119388342 932820126 932820126 513967447 249840068 249840068 675687170 675687170 587905331 669091923 669091923 346213849 289709158 234655440 234655440 975242160 975242160 953101699 893502974 893502974 688177632 688177632 709101022 709101022 471658776 439216396 524921800 524921800 750281077 750281077 167821332 704647306 876793995 876793995 606867913 606867913 239747162 847290629 847290629 845253058 845253058 599801990 729413557 729413557 699101872 168171540 168171540 159912672 159912672 140121732 758022712 764152941 764152941 231712944 231712944 232777936 232777936 28194144 28194144 5443552 96252776 96252776 87345184 76809064 76809064 29698272 122628664 122628664 230425900 230425900 747841228 747841228 557916321 245922796 729335733 729335733 293496461 834978771 834978771 913020868 913020868 601892865 787477114 998009984 998009984 591971505 751984196 751984196 631232604 893292056 893292056 690838035 54925496 90285864 319766656 370880826 370880826 272816282 102174760 72610440 111483938 288139384 288139384 398314248 398314248 290814056 290814056 302223376 357013656 357013656 223709225 147923652 633608195 756179489 756179489 750897516 904059114 904059114 899189259 815840966 946396677 946396677 895840148 640608744 640608744 86072992 92274792 92274792 83956512 85144104 103960064 103960064 54390576 30931216 268438050 268438050 288990784 297463588 297463588 17842464 19323168 19323168 16781344 16781344 713146468 713146468 290474544 290474544 54807090 34867728 47090244 47090244 586417680 716769680 716769680 952119379 986718854 986718854 320735859 746943843 888332131 1018081226 1018081226 382542936 640278576 640278576 669098089 669098089 873777176 923796027 923796027 401910210 401910210 395053056 277137474 294256225 355467287 474707148 474707148 335594936 800495473 800495473 557900833 536949281 34461712 44495760 44495760 38613520 37282752 42595072 185848776 254088560 419702270 419702270 168905312 482609682 482609682 264903600 256261856 256261856 487260682 487260682 265239804 382096642 382096642 105905304 89079856 15243392 15243392 12797248 272894018 813971408 813971408 985256936 985256936 820998085 446824476 328313656 328313656 239438234 434180956 434180956 282406942 282406942 248912604 245769728 386525328 386525328 348440866 344983354 355730744 632472868 690623781 784226381 874174475 874174475 562745865 562745865 932316326 932316326 590647138 1045997909 1045997909 653862873 363994560 1016756749 1016756749 923375614 923375614 135340036 538409261 567116488 604081676 604081676 551007788 113736840 113736840 110378832 110378832 88432930 88432930 77717832 308137506 308137506 518172738 518172738 477102990 345641354 345641354 4329600 478318996 753270976 753270976 622193193 848908843 889854502 889854502 761385989 1057521508 1057521508 635868238 467536790 467536790 554303439 760353453 964967274 964967274 320938400 597688492 597688492 478480764 280037479 82059365 132770780 1052770527 1052770527 963310636 963310636 591932600 591932600 573386868 1059135511 1059135511 973276281 973276281 834015304 546252101 664087161 664087161 856392223 856392223 746722517 763572333 763572333 818186272 818186272 292676514 836921808 836921808 578165649 841042496 841042496 828611936 898943595 963928622 963928622 753361760 680663967 258423228 419058108 419430342 922146834 922146834 614587330 172788240 270535936 270535936 275908928 282467010 282467010 372310656 372310656 38161832 78053768 82499016 982013182 1051069227 1051069227 890898343 543388813 563222572 693257989 693257989 540727041 340998555 806822148 952380033 952380033 592715393 251965699 648478004 648478004 315497682 302211669 581977088 610583685 778619321 778619321 215481384 918377606 918377606 425523289 486711328 486711328 205586466 159384064 83894272 240430880 240430880 68554776 93507704 93507704 93414176 172324120 235046316 523391276 844864859 844864859 70728456 648304362 648304362 572527419 572527419 660477482 660477482 574097704 355158040 355158040 79973504 669315309 669315309 170342676 850471234 1008065948 1008065948 830291138 830291138 565051864 565051864 377961231 453746944 869663698 869663698 934248472 934248472 35965200 42389568 43305552 43305552 386139704 386139704 110526976 110526976 25334008 47240752 67273328 110122224 124180920 124180920 110137192 15860224 26479176 26622464 67445344 83300672 83300672 583210184 583210184 579341648 579341648 286270786 277814216 337064682 337064682 285212720 927228130 927228130 891801707 807503354 556437875 126827640 781112360 781112360 954673379 1021835727 1021835727 669609461 642384905 878395933 878395933 1042441684 1042441684 760356963 760356963 91168777 78647216 117514296 117514296 111597944 115083576 115083576 71698800 307320784 307320784 19754352 574672576 574672576 473145183 983567939 983567939 914883592 868432087 868432087 714241468 714241468 205121292 205121292 319970194 979945600 979945600 174113172 424681296 428235875 462557814 948571186 948571186 806619651 575691315 690137665 690137665 538005940 55839408 173801520 173801520 168297492 304399206 304399206 247367178 235744284 235744284 329582618 329582618 288908598 769951813 769951813 736636885 668790076 412502729 1021114029 1021114029 1024121041 1024121041 549920774 1011165327 1027689888 1027689888 6866304 89539688 89539688 81449544 195098340 195098340 7305904 11000160 220335408 220335408 243373120 243373120 227239092 232055464 239678168 246198668 246198668 167859784 617515920 617515920 269944336 845600352 845600352 722840112 722840112 725878965 725878965 504213572 735821824 1039337191 1039337191 1036672355 872857929 809686786 961242734 963143521 963143521 1039822052 1039822052 978866536 512811990 512811990 484476503 484476503 553133456 554049536 554121249 554121249 589366206 876741385 876741385 557846832 130991336 71342816 158519357 539319189 998073525 1044854943 1044854943 832004881 769778157 744516377 621031720 621031720 107098160 714408432 714408432 731849329 731849329 611947621 234091500 788958052 788958052 604070153 739279117 746163800 746163800 540886024 540886024 617849770 617849770 262296661 623428905 937604409 949530414 949530414 278245378 278245378 350672490 350672490 339703114 256388498 256388498 143425584 89656880 89656880 84935208 501963450 501963450 418485198 238618152 298522522 298522522 147984616 209942744 209942744 433049686 433049686 464589890 834209795 834209795 700711040 604422793 735140148 790207953 790207953 75709233 247729624 554110156 554110156 536870913 71968841 144840836 168887116 168887116 105195672 68303504 776490872 776490872 766119885 766119885 545941268 545941268 280976481 949451284 991124800 991124800 681703791 681703791 968223015 968223015 875927554 891404587 891404587 563278698 360727209 806404611 806404611 592711875 579103936 579103936 541492256 848008200 848008200 559264288 602816672 602816672 133225032 286734120 296932258 296932258 321997600 358211858 358211858 272073160 14505408 79777248 81561984 95556456 95556456 423927088 423927088 314535614 35217986 203956352 208217484 429469664 476917126 476917126 65171538 321283952 321283952 162532804 226755124 226755124 149120152 214910516 248998556 248998556 240106576 214315728 214315728 970274960 970274960 533460222 819965990 819965990 145888068 145888068 76599624 205672934 205672934 11584320 58197936 535801600 535801600 75508416 75508416 41159648 41159648 17070032 2410752 206858248 206858248 510969878 510969878 478456130 273294788 356664514 474191014 487388622 487388622 294256944 466935112 466935112 464045652 187565970 14076608 487920896 487920896 394721354 394721354 1069104121 1069104121 614478763 965826598 965826598 812565761 812565761 698531148 614787843 614787843 875708416 945085218 945085218 303687186 756028908 806757112 806757112 597954290 597954290 740016460 740016460 708364053 708364053 514125197 418505670 645122719 846199955 846199955 550067473 418251873 1040745103 1040745103 835332133 835332133 611009768 1053627588 1053627588 631691625 631691625 872551451 872551451 833104144 833104144 126945744 140307488 214003284 214003284 218153004 261940304 261940304 128361916 242976524 242976524 225256120 75097992 75097992 578112064 586468305 586468305 13910289 4365584 35571784 146182420 146182420 100913156 671781888 671781888 745174656 745174656 807466247 807466247 745612173 711888896 1012642817 1014001665 1014001665 541249665 273049984 566762962 566762962 449926918 449926918 60311894 173477504 325379458 325379458 297217392 419742726 419742726 295821666 160015460 160015460 173093548 224309560 224309560 208567980 205688608 35665536 35665536 17151520 17151520 5612672 544466944 544466944 540440832 571040784 571040784 3516672 573401600 573401600 35693824 71713794 340187530 342413450 342413450 316168386 316168386 274405578 344355330 344355330 342747808 293400482 10342624 100476040 268576768 297192866 297192866 311957096 311957096 60429936 60429936 317832232 541782068 942281991 942281991 449201461 321331617 864358579 864358579 750876438 750876438 981488768 981488768 756208173 756208173 222724653 909849178 909849178 875099083 451976669 290652276 503782096 503782096 482658510 482658510 215899810 239176924 239176924 181140648 130119768 105955328 113313840 113313840 608534529 608534529 96874680 571660417 571660417 201343580 176816640 176816640 687362077 687362077 185005128 607357485 607357485 17961504 196084088 196084088 250163348 250163348 207860904 96542952 107732432 107732432 63716010 279310018 279310018 364456618 387714170 387714170 897269565 897269565 713492801 390400237 1037892272 1037892272 318590555 806933639 806933639 994973152 994973152 1057231760 1057231760 713895524 713895524 1005309614 1005309614 960938150 960938150 549461600 612795645 829110911 829110911 417798615 726272803 726272803 589369577 424739749 869507358 869507358 333083072 487224890 653135568 982736119 982736119 403970564 344099460 344099460 599135225 599135225 1063561904 1063561904 537396288 36141472 204191492 264872828 264872828 305791234 523792678 523792678 119388342 119388342 932820126 932820126 886230219 954847872 954847872 1031671196 1031671196 976312865 817025859 669091923 839459859 839459859 568599610 373175506 975242160 975242160 1027739823 1027739823 876740644 945051627 945051627 709101022 709101022 547590976 245346052 428359882 527819620 527819620 201327804 206095500 348750914 348750914 151380324 216836452 216836452 147145112 238536800 238536800 175118384 175118384 50725780 21291584 155191552 157551012 157551012 186237344 186237344 159912672 140121732 758022712 758022712 732720937 231712944 231712944 226718464 226718464 28194144 28194144 5443552 87345440 87345440 87345184 58319288 58319288 29698272 122628664 122628664 230425900 230425900 747841228 747841228 557916321 165183825 729335733 729335733 426809986 834978771 834978771 913020868 913020868 601892865 620988920 998009984 998009984 591971505 170288329 234616812 234616812 893292056 920913792 920913792 447776035 252209236 368139344 368139344 274223426 351518912 351518912 87581274 111483938 288139384 288139384 398314248 398314248 344766696 117790912 117790912 357013656 357013656 353679394 353679394 285476898 92635208 337041930 353533962 815184200 815184200 44562768 465576542 465576542 895840148 895840148 640608744 640608744 86072992 92274792 92274792 83956512 85144104 103960064 103960064 54390576 30931216 44378960 50399408 179413652 892785047 892785047 301537592 301537592 533008872 533008872 193208488 621952065 621952065 826969155 826969155 550687459 600365744 600365744 47090244 47060148 31634400 32723936 428422514 428422514 140021028 109422936 228565894 228565894 579081417 579081417 382542936 381160929 381160929 805884995 805884995 552727952 921273923 921273923 827591331 827591331 541928960 542378625 542378625 538181760 325584306 335594936 335594936 579865313 579865313 557900833 586434736 586434736 156119281 681533508 681533508 42941520 586231048 708283593 715703637 715703637 727136949 799247481 799247481 603508673 712437408 712437408 242559252 186976568 44322736 74124904 125961472 125961472 124331448 158260644 475230220 475230220 965794572 965794572 879112534 822432626 888215444 888215444 727856522 908159245 908159245 574923185 539074960 434180956 445195350 445195350 282406942 472559472 472559472 322698272 348440866 348440866 344983354 355730744 632472868 690623781 784226381 874174475 874174475 353670687 534647550 534647550 524818006 687932470 869279018 869279018 653862873 363994560 796329619 796329619 923375614 923375614 135200307 513081430 567116488 567116488 234497152 575594801 602601808 602601808 59678544 59678544 44357744 44489040 56021568 479498304 479498304 966412877 966412877 536095222 348412808 348412808 170256660 872837705 982532214 982532214 934564872 934564872 889854502 889854502 761385989 1057521508 1057521508 635868238 169988152 378359422 554303439 760353453 964967274 964967274 632040313 1039931583 1039931583 857880609 841161730 932196314 932196314 776081565 776081565 963310636 963310636 541196297 679571460 679571460 1059135511 1059135511 973276281 973276281 921961171 921961171 830489571 953534567 953534567 746722517 746722517 739187916 739187916 641976834 918735691 918735691 836921808 836921808 578165649 335708896 543695657 828611936 898943595 963928622 963928622 343212466 198318894 56619248 54636472 55648944 74080252 147187908 206360132 254633236 254633236 202560192 427169516 427169516 709598611 709598611 531704840 853112689 853112689 804919293 812122248 1051069227 1051069227 890898343 752216781 704821976 693257989 693257989 540727041 141896580 141896580 181676178 181676178 592715393 88561080 124434600 124434600 512106192 512106192 581977088 581977088 848429938 848429938 600133235 666925860 666925860 643830816 1070352502 1070352502 896008311 341836170 517211524 517211524 240430880 59048840 36700944 87535712 87535712 38271120 38271120 10700016 844864859 844864859 338899720 271658762 264103628 392728091 820187121 820187121 660477482 574097704 172150220 172150220 232017092 232017092 110180777 110180777 101847576 216067150 436264278 830291138 830291138 565051864 565051864 482118740 482118740 869663698 869663698 934248472 934248472 415279424 387363168 281298954 281298954 310398168 381730826 381730826 303071448 63439888 63489264 63489264 18236312 124180920 124180920 110137192 10095520 30606304 94835040 98381544 98381544 83300672 583210184 583210184 579341648 579341648 45355328 45355328 45224784 36704320 285212720 927228130 927228130 891801707 807503354 556437875 117239472 781112360 781112360 155901060 904398216 904398216 669609461 642384905 878395933 878395933 1042441684 1042441684 291055656 291055656 91168777 78647216 117514296 117514296 111597944 115083576 115083576 272894082 288659019 904582635 904582635 574672576 620767528 620767528 593830189 914883592 914883592 133170168 133170168 114171096 337644001 902039787 902039787 424047591 979945600 979945600 853212599 424681296 424681296 432412902 432412902 273678978 408961968 408961968 188793012 198298352 198298352 60318948 153246864 195369316 195369316 50991136 52090416 68848728 68848728 322613288 370723610 370723610 206249169 769951813 769951813 736636885 668790076 412502729 1021114029 1021114029 1024121041 1024121041 549920774 1011165327 1027689888 1027689888 450833606 106241672 520623658 520623658 439879446 283117268 60082800 60082800 147331288 147331288 243373120 243373120 227239092 227239092 239678168 246198668 670376689 670376689 108846867 294022843 294022843 473615387 708188949 708188949 587465736 473317438 670246551 670246551 735821824 1039337191 1039337191 1036672355 872982724 810079296 961242734 961242734 744214541 67182600 978866536 978866536 512811990 512811990 484476503 484476503 553133456 553133456 314510754 467065590 589366206 876741385 876741385 557846832 360862250 369362970 369362970 335560764 335560764 219234858 536953232 536953232 33735504 45142032 49292405 116927428 602942453 714408432 714408432 692455980 213816356 541039156 541039156 650177264 650177264 604070153 739279117 739279117 154790032 206596552 206596552 617849770 617849770 189867178 206332592 404110984 404110984 148369508 186623072 186623072 350672490 350672490 370154352 370154352 256388498 218366612 218366612 219456164 219456164 501963450 501963450 446124558 294785634 204472890 110833148 246810480 246810480 154819236 174069064 174069064 362792715 834209795 834209795 604422793 662790696 843247603 843247603 641087936 525563540 525563540 554110156 554110156 536870913 173817277 681906945 881365399 881365399 614515017 140721104 776490872 776490872 905159351 905159351 545941268 545941268 280976481 229640966 504445502 504445502 355371530 337585696 95420200 95420200 555909128 555909128 549552329 272812673 360727209 806404611 806404611 592711875 579103936 579103936 541492256 848008200 848008200 559264288 602816672 602816672 133225032 286734120 296932258 296932258 321997600 358211858 358211858 272073160 14505408 79777248 79777248 316833234 496727122 496727122 439061240 314535614 144085540 251945440 258023868 429469664 476917126 476917126 65171538 321283952 321283952 162532804 226755124 226755124 155792640 214910516 248998556 248998556 240106576 210578508 369627136 897606686 897606686 785205436 785205436 264275097 227357928 230724704 289431564 289431564 335741092 335741092 198829812 535801600 535801600 67129904 192554388 192554388 41159648 225336640 225336640 206858248 206858248 141896580 478456130 478456130 273294788 356664514 474191014 487388622 487388622 520537274 520537274 521131888 521131888 417430628 467237752 467237752 358616456 394721354 440996334 1069104121 1069104121 614478763 965826598 965826598 812565761 812565761 698531148 630783329 614787843 875708416 945085218 945085218 160471074 550767042 559075312 891292664 891292664 751379528 751379528 740016460 436717840 220800300 220800300 105323956 211895261 846199955 846199955 550067473 773114280 1040745103 1040745103 337921981 9437760 611009768 611009768 598016377 631691625 631691625 237971752 237971752 203688204 32811328 68190220 100770556 214003284 214003284 60361832 261940304 261940304 128361916 242976524 558164261 558164261 51520184 567609705 682044712 685381317 685381317 642686465 797627517 797627517 697358568 672415872 329478552 671781888 710972672 945919260 945919260 807466247 807466247 879469963 879469963 1012642817 1014001665 1014001665 577530640 710121796 825897063 825897063 182158084 274266948 831645665 831645665 173477504 1001649015 1001649015 739635757 739635757 557575766 224002592 259134396 259134396 173614748 119616436 103153976 119542040 119689472 119689472 16793600 16793600 16992385 554170401 554170401 573566977 573566977 36487185 36487185 35775760 35202432 7890176 577375888 577375888 575593873 342413450 316168386 316168386 274405578 344355330 344355330 342747808 293400482 350175336 350175336 100476040 289683618 289683618 311957096 311957096 62261952 303382544 317832232 541782068 942281991 942281991 483054798 1045056731 1045056731 391981472 391981472 322989630 981488768 981488768 670585989 670585989 571503456 909849178 909849178 875099083 813181273 813181273 554241157 537682464 47593502 15458112 70795072 70795072 23867360 21009568 105955328 105955328 105906840 88137777 88137777 50440225 601899840 1062226161 1062226161 68215551 176816640 176816640 134482952 167521108 167521108 159515204 471118340 471118340 196084088 196084088 250163348 250163348 260260992 260260992 113645784 111874176 51771040 51771040 35592240 308096658 308096658 135072520 415310022 415310022 578061834 578061834 553178281 484733869 318590555 214884046 592452441 699568190 699568190 1057231760 1057231760 713895524 713895524 600123633 598786816 598786816 52478881 27670240 65418872 829110911 829110911 417798615 726272803 726272803 589369577 445261532 869507358 869507358 29409552 487224890 653135568 653135568 881531998 999291209 999291209 387304008 387304008 1053573494 1053573494 537396288 986758867 986758867 805634314 933149252 933149252 457827510 457827510 444042080 444042080 413481220 413481220 886230219 886230219 954847872 954847872 1031671196 1031671196 976312865 918095944 918095944 839459859 839459859 568599610 373175506 427235585 782240284 1027739823 1027739823 876740644 945051627 945051627 190055423 742622806 742622806 295813882 428359882 757973687 940942103 1005372854 1005372854 877153301 742465709 750857356 750857356 216836452 141397452 738834215 738834215 457325216 457325216 574935720 795919293 795919293 618831272 205937376 233882604 233882604 202441076 202441076 604342568 604342568 110109672 121676952 121676952 47152912 47152912 29101920 29101920 67781632 67781632 19433984 50857008 52665088 89138017 618734025 618734025 9786198 396960370 396960370 966696206 966696206 836679957 571336420 69669744 426809986 781078641 781078641 482607704 372874910 372874910 457740752 620988920 841222419 841222419 1038598606 1038598606 743833460 882039419 882039419 920913792 920913792 447776035 252209236 414367908 414367908 346608464 370808346 370808346 87581274 92446984 92446984 17095106 283380162 344766696 344766696 349176362 349176362 274065802 470755331 470755331 353679394 285476898 92635208 952555719 952555719 815184200 815184200 44562768 497033216 497099118 596418830 596418830 769627096 769627096 10517745 0 0 0 0 140288 734208 36249600 36249600 44378960 46215408 179413652 892785047 892785047 301537592 301537592 533008872 815534616 815534616 621952065 621952065 826969155 826969155 718966903 600365744 600365744 194021936 260046888 260046888 530154686 530154686 428422514 228131536 290513092 290513092 235765326 579081417 579081417 441786910 441786910 815828313 815828313 805884995 552727952 921273923 921273923 827591331 827591331 824976128 824976128 542378625 614034902 614034902 483404252 740303368 740303368 579865313 59051568 586434736 586434736 156119281 681533508 683840512 683840512 586231048 708283593 715703637 715703637 727136949 799247481 799247481 603508673 712437408 712437408 196201380 246596194 444545934 444545934 406073386 329778546 329778546 269483010 475230220 475230220 965794572 965794572 879112534 822432626 888215444 888215444 727856522 908159245 908159245 574923185 539074960 391411352 445195350 445195350 228847980 472559472 472559472 322698272 273078402 76945992 355734856 355734856 352846890 49419216 434503232 445124108 445124108 710148787 995362487 995362487 728910999 687932470 687932470 453517349 317502122 789723159 796329619 796329619 1000628820 1000628820 995442713 995442713 350252361 350252361 677887933 677887933 602601808 638545000 638545000 59678544 106226434 106226434 122710602 479498304 479498304 966412877 966412877 536095222 348412808 348412808 170256660 872837705 982532214 982532214 934564872 934564872 464522019 413234850 413234850 531136228 531136228 246869964 169988152 378359422 378359422 288724418 643023914 643023914 632040313 1039931583 1039931583 857880609 841161730 932196314 932196314 776081565 776081565 889906220 889906220 839520282 679571460 679571460 767680820 767680820 174637553 562131765 921961171 921961171 830489571 953534567 953534567 546378752 547042881 547042881 404362758 641976834 918735691 918735691 337738161 280083178 310531762 335708896 375853368 375853368 373304618 373304618 109766290 71800696 63099120 56619248 114369688 114369688 117698880 147187908 206360132 254633236 254633236 202560192 427169516 427169516 709598611 709598611 531704840 853112689 853112689 804919293 804919293 400721529 756504787 756504787 752216781 704821976 681073001 762105261 762105261 712779806 993644448 993644448 677438354 318849172 964756538 964756538 805924222 512106192 639006242 639006242 313524224 848429938 848429938 614887584 631507305 747580601 747580601 1070352502 1070352502 896008311 619193289 587111384 587111384 75896832 75896832 109387864 109387864 75915328 178183696 605988948 605988948 110139225 338899720 338899720 271658762 264103628 264103628 820187121 820187121 176062600 176062600 172150220 172150220 232017092 232017092 110180777 713268921 713268921 232783596 798812057 798812057 249635848 300564108 546122168 546122168 482118740 988872964 988872964 456779574 415279424 415279424 387363168 281298954 281298954 310398168 381730826 381730826 303071448 120619072 100307736 117518576 117518576 82416448 49854336 49854336 33226976 86741600 94835040 98381544 98381544 63162288 537924432 637202473 637202473 595459784 595459784 19714816 27182384 29360352 80031104 625357272 646260825 808759304 808759304 71120904 73480448 82721971 82721971 137514310 817543977 817543977 565330433 52715170 274990216 274990216 393345670 511105950 511105950 343367700 135715332 218022624 218022624 92717568 93723240 93723240 39324306 272894082 297840672 904582635 904582635 558549659 620767528 663822969 663822969 705377638 705377638 644092545 961939523 961939523 646328385 902039787 902039787 424047591 903962405 903962405 853212599 179565396 40548176 40246164 287446774 287446774 174983060 144970660 708093952 723372112 723372112 60318948 176501216 195369316 238461470 270553862 271631106 271631106 112396304 386671154 386671154 370723610 84833842 0 0 738197762 738197762 506726535 475873880 136308224 144438852 210764288 210764288 214247628 214247628 535826926 535826926 413403320 520623658 520623658 439879446 283117268 60082800 60082800 147331288 147331288 245285644 245285644 68324488 67373064 4854912 4854912 670376689 670376689 371584352 371584352 294022843 383109899 640865896 726265398 726265398 519285808 670246551 670246551 551124664 276287114 821207554 872982724 872982724 810079296 810079296 549639232 206164097 139359236 639999705 639999705 620097417 661654592 661654592 16565416 331392530 331392530 314510754 467065590 467065590 436995892 920830185 920830185 911245553 841482369 879779456 879779456 538020156 791755135 791755135 775300060 775300060 258109505 49292405 671398993 709297185 709297185 692455980 692455980 220011032 543785140 543785140 650177264 794831112 794831112 69216653 88531652 632427369 632427369 258957448 258957448 126335956 93853936 159333284 225547272 225547272 148369508 186623072 310388228 310388228 296784416 370154352 370154352 168778416 218366612 218366612 219456164 219456164 236863572 446124558 446124558 294785634 204472890 213978968 246810480 246810480 180186852 458128166 458128166 222765628 409241558 750166905 750166905 852722610 852722610 843247603 442290368 525563540 525563540 851984093 851984093 875836718 945934573 945934573 932331623 932331623 614515017 996698967 996698967 670990617 905159351 905159351 736986085 736986085 822666577 918323952 918323952 375784120 108420786 365185226 365185226 498261098 536924160 618975266 618975266 272812673 652704186 808717059 808717059 301147011 277607378 296956770 299963008 299963008 100872448 102760728 102760728 2176024 5317248 7676544 7678848 100991632 100991632 69224456 67422216 103081240 103081240 103927040 103927040 316833234 496727122 496727122 439061240 390371514 144085540 524304528 524304528 486588462 158800408 4215328 22205088 320964300 320964300 215507250 32510160 155792640 155792640 58379472 58379472 189944332 189944332 135807544 369627136 897606686 897606686 785205436 785205436 264275097 227357928 230724704 289431564 421667240 421667240 335741092 507701246 507701246 266473980 266473980 336076804 348280618 456787072 456787072 225336640 115280520 268214344 268214344 231262388 155987120 73952712 143159328 143159328 12600324 613813849 1064050128 1065878655 1065878655 780666131 589825329 467237752 467237752 1039041024 1039041024 1006423757 976768440 501359766 316223438 338750146 338750146 21104674 634105576 634105576 630783329 97297857 17058336 18139680 18139680 12338528 2890752 2890752 891292664 891292664 751379528 751379528 436717840 436717840 220800300 373363456 373363456 514976012 514976012 380971866 150346692 773114280 773114280 746359069 735751691 735751691 236470340 236470340 672925192 672925192 780515501 780515501 641777817 991709410 991709410 138784336 100985084 98069528 340878384 340878384 425582886 506720466 506720466 344548790 558164261 558164261 239471028 567609705 682044712 685381317 685381317 642686465 797627517 797627517 697358568 672415872 329478552 442585352 710972672 945919260 945919260 877901338 1012438147 1012438147 879469963 608839560 812918722 812918722 577530640 710121796 825897063 825897063 139435972 274266948 959107237 959107237 581408551 1001649015 1001649015 739635757 739635757 557575766 224002592 259134396 259134396 205787276 119616436 103153976 119542040 119689472 119689472 16793600 21071872 21071872 554170401 554170401 573566977 573566977 541901184 575702529 575702529 574619793 576651545 640827648 640827648 640080408 640080408 553001232 82664968 346707200 346707200 346610178 346610178 72191112 350175336 350175336 93623362 98969832 98969832 116032176 278518706 278518706 306196480 306384898 805450886 977933463 977933463 483054798 1045056731 1045056731 386564426 108056704 146363200 146363200 468399606 670585989 858250090 858250090 571503456 36195152 215285843 813181273 813181273 554241157 537682464 407507530 215557836 215557836 134817408 116998520 98327272 83691064 108268440 108268440 111551704 111551704 577786184 601899840 1062226161 1062226161 802243220 629582497 584086117 568163973 568163973 167521108 715818021 715818021 471118340 32229768 34588728 143518992 214432172 260260992 260260992 113645784 111874176 40304768 40304768 49755944 308096658 308096658 508823879 608174297 608174297 578061834 578061834 653244320 664062585 961521739 961521739 710811285 699568190 699568190 570474513 711860332 1055721154 1055721154 846484140 886382239 970301126 970301126 594131408 829030204 829030204 820576716 405945844 307306880 305885624 305885624 445261532 445261532 217699510 125834425 990780349 990780349 988881879 903329494 1024390293 1024390293 387304008 997502144 1053573494 1053573494 1034716390 986758867 986758867 805634314 933149252 933149252 457827510 457827510 444042080 444042080 413481220 413481220 316894096 316894096 272909440 845811970 851969235 851969235 274863441 918095944 918095944 40055184 323027340 323027340 151404488 741028100 741028100 137966729 723108303 723108303 176485613 295806422 480092170 742622806 742622806 295813882 422847985 757973687 940942103 1005372854 1005372854 877153301 828426726 750857356 750857356 255921288 237790516 738834215 738834215 457325216 457325216 574935720 795919293 795919293 709440157 709440157 635167412 635167412 641737697 641737697 250102273 582303605 700399461 753993702 753993702 195634686 399841282 399841282 384178416 384178416 276350858 342529410 342529410 273094274 273094274 618734025 987832610 989225665 989225665 454753121 966696206 966696206 836679957 714945076 268034925 1025286845 1025286845 781078641 432852288 372874910 403584178 437472160 437472160 841222419 841222419 1038598606 1038598606 743833460 882039419 882039419 1039047932 1039047932 236577983 365789846 487179334 487179334 498722190 498722190 370808346 97482464 92446984 92446984 80083424 283380162 292260130 292260130 349176362 349176362 274065802 470755331 470755331 336731138 275775618 99883745 952555719 952555719 825175299 819539531 598614064 598614064 497099118 596418830 596418830 769627096 769627096 67651616 68954632 68954632 109448208 113074296 113074296 84608576 52613424 39526672 2900912 46215408 46346786 352746296 352746296 348193330 260838606 255956088 815534616 815534616 606635716 753976269 753976269 721586154 718966903 584192721 551049812 194021936 676369988 822152964 822152964 530154686 586278928 586278928 701312267 701312267 554803855 554803855 973600791 973600791 441786910 897109632 897109632 648823107 631863763 857060729 857060729 637147113 637147113 824976128 824976128 589300017 614034902 614034902 483404252 740303368 740303368 204530125 0 0 0 0 143003860 683840512 683840512 680225793 708858629 708858629 676992645 55364784 55364784 134482592 134482592 200258508 200258508 253671864 253671864 444545934 444545934 406073386 329778546 329778546 269483010 478057704 478057704 164940516 1032476836 1032476836 289522251 940981392 940981392 528680966 528680966 433327268 433327268 306195336 306195336 262171960 262171960 332854464 332854464 281167936 281167936 273078402 76945992 355734856 355734856 352846890 99072266 281428336 281428336 1015045179 1015045179 995362487 995362487 728910999 537317771 625359368 625359368 317502122 789723159 789723159 996544022 1000628820 1000628820 995442713 995442713 350252361 1032304704 1032304704 930298553 930298553 638545000 638545000 54593984 106226434 106226434 122710602 198967000 198967000 117727800 313331546 313331546 135340692 74347160 174010640 174010640 278448816 893949136 1025826175 1025826175 1015205967 413234850 413234850 241712220 246869964 246869964 74787720 336630125 968020839 968020839 981598632 981598632 944836422 944836422 988232151 988232151 414093815 348966090 466111726 466111726 412124758 889906220 889906220 1027605547 1027605547 652214745 767680820 767680820 84675624 562131765 724803681 724803681 593893809 571854931 838909971 838909971 547042881 547042881 905969691 905969691 878603931 872673291 58982513 58982513 101711872 101711872 605134928 605134928 558913872 558913872 66290352 66290352 63099120 51264808 114369688 114369688 117698880 117698880 408278369 831303535 831303535 1015596168 1015596168 402736681 540985092 540985092 490536922 490536922 700627624 967987581 967987581 763601759 406272835 866422290 866422290 739121633 681073001 762105261 778665988 778665988 993644448 993644448 1049677137 1049677137 964756538 964756538 1026419617 1032710511 1032710511 984877653 984877653 573834766 573834766 614887584 631507305 747580601 747580601 723111213 706155148 619193289 619193289 587111384 587111384 744791581 744791581 376340436 376340436 75915328 650900637 650900637 605988948 146190105 146190105 70513416 79867848 79867848 271845258 271845258 274727298 274727298 273752706 273752706 272638464 3220224 313344 313344 788063428 788063428 640754457 798812057 798812057 249635848 339902760 546122168 1009886700 1009886700 988872964 988872964 411051539 376077340 376077340 282264096 282264096 21106848 21106848 31118896 87081192 120619072 120619072 100307736 117518576 117518576 82416448 49854336 49854336 97525696 97525696 86741600 80146632 278881514 278881514 363739648 637202473 637202473 595459784 595459784 357096074 357096074 89148450 80031104 625357272 646260825 808759304 808759304 41964290 49488909 82721971 820673986 820673986 817543977 817543977 87436038 11410752 274990216 274990216 393345670 511105950 588781058 588781058 383158993 218022624 218022624 87607080 102111768 102111768 101190424 50471688 297840672 297840672 558549659 558549659 402476116 663822969 663822969 705377638 705377638 644092545 961939523 1038822473 1038822473 604767616 890927162 890927162 318775872 836033973 836033973 284194978 313582354 313582354 287446774 445128338 445128338 310249300 708093952 723372112 723372112 23637152 176501216 176501216 238461470 270553862 271631106 271631106 112396304 386671154 386671154 87742736 87742736 622913057 622913057 811397056 811397056 506726535 475873880 449454122 524887230 524887230 617159782 751305933 751305933 595665009 717697328 717697328 174401940 191050400 191050400 179978404 53608608 40196752 40196752 49601480 245285644 245285644 68324488 67373064 4854912 4854912 2410752 120307976 371584352 371584352 546735410 860078339 860078339 726265398 726265398 519285808 519285808 418627754 308338646 144580164 886374916 886374916 615629574 679612736 679612736 764462749 797578365 797578365 639999705 639999705 620097417 756148649 756148649 734022660 802687584 802687584 134253132 260349536 436995892 436995892 920830185 920830185 911245553 841482369 1007833387 1007833387 538020156 791755135 791755135 775300060 775300060 584508369 583792160 671398993 709297185 709297185 177942592 613821469 613821469 784783581 784783581 599853841 794831112 794831112 748034124 752119569 752119569 716878184 716878184 662078373 600596424 301119054 24459612 274863658 274863658 68909964 151232512 369141858 369141858 16501152 275075394 275075394 185902880 185902880 173590164 73490440 174229584 174229584 12767424 55784112 55784112 520902744 520902744 213978968 180186852 180186852 458128166 458128166 222765628 409241558 750166905 750166905 852722610 852722610 813164928 464550732 464550732 449711224 851984093 851984093 875836718 945934573 945934573 944884959 1064234507 1064234507 996698967 996698967 670990617 670990617 751311606 751311606 736986085 822666577 918323952 918323952 375784120 108420786 365185226 365185226 498261098 547361344 618975266 904080297 904080297 831908451 808717059 808717059 301147011 277607378 296956770 299963008 348958952 348958952 306890192 311219226 311219226 47054042 307707544 308779026 308779026 309396104 343009154 372828032 372828032 103081240 103927040 163715808 232216300 232216300 324197652 390371514 390371514 125907074 524304528 524304528 486588462 227356930 455112440 455112440 508847378 508847378 215507250 140314948 135191556 55826738 280702022 296611170 734914065 734914065 225488590 652821781 1016076626 1016076626 594053546 594053546 229515742 243318876 713679197 713679197 421667240 421667240 444776562 507701246 507701246 266473980 266473980 370015956 370015956 456787072 456787072 135135556 144710660 268214344 268214344 231262388 225559308 153310212 219916652 219916652 595384992 613813849 1064050128 1065878655 1065878655 780666131 589825329 442315745 411441222 1039041024 1039041024 1006423757 976768440 463261254 316223438 338750146 827785889 901476203 901476203 622421642 604326017 554746401 606914849 606914849 605603337 84865088 630245188 671524096 671524096 168307844 440739072 440739072 649175188 649175188 338602077 373363456 373363456 545282944 553049025 618421109 798756477 798756477 681164196 1024425225 1024425225 751792203 760154796 760154796 672925192 672925192 922562523 959841091 959841091 991709410 991709410 826670268 327086058 327086058 340878384 1001960560 1001960560 887843403 784404502 344548790 304765568 239471028 239471028 254368888 254368888 90227620 162338592 162338592 618272328 618272328 75684993 667443688 667443688 67928193 37901568 33813888 37961856 877901338 1012438147 1012438147 608839560 608839560 571806352 571806352 38939153 37422806 449328912 449328912 712511504 712511504 959107237 959107237 581408551 581408551 134690820 134604804 134604804 71751836 33941520 255865136 255865136 205787276 84024064 84024064 68551208 52697376 52697376 18923808 23165056 23165056 563478112 563478112 546159809 546159809 541901184 575702529 575702529 574619793 576651545 640827648 640827648 640080408 640080408 553001232 99359048 346707200 346707200 346610178 346610178 53259552 3574016 105104560 105104560 22747208 52598800 52598800 278518706 278518706 306196480 306384898 805450886 977933463 977933463 436912257 375525786 208672914 345053582 345053582 870453060 870453060 468399606 468399606 858250090 858250090 417324325 172852436 284731148 443827100 443827100 445165300 445165300 407507530 475917966 499986158 499986158 484278438 336664202 350009170 350009170 454473240 454473240 547171905 577786184 577786184 637618889 802243220 802243220 629582497 584086117 568163973 568163973 262010956 715818021 715818021 502392210 502392210 333200824 185123892 69519624 69519624 55338216 55338216 42544288 42544288 40304768 49755944 94055768 94055768 508823879 608174297 1021195093 1021195093 922453237 922453237 664062585 961521739 961521739 1003094026 1003094026 329796057 621056257 711860332 1055721154 1055721154 846484140 886382239 970301126 970301126 594131408 829030204 829030204 820576716 307306880 327836416 410319970 410319970 262941156 289080940 289080940 271066648 990780349 990780349 988881879 903329494 1024390293 1024390293 595665264 997502144 997502144 1034716390 1034716390 968689203 318890034 374366624 374366624 250256788 89771992 118612784 118612784 240061824 473369744 473369744 1014666183 1014666183 940601418 940601418 710199957 710199957 359015858 359015858 814296728 816174075 912277312 912277312 151404488 741028100 745539080 745539080 723108303 723108303 235787172 1000439680 1000439680 868170871 350914019 989924213 989924213 681912645 681912645 994084185 994084185 828426726 828426726 342114465 255921288 310198290 575697029 575697029 940780674 980230279 980230279 575689984 538571281 249115868 709440157 709440157 635167412 635167412 641737697 641737697 675487104 675487104 700399461 753993702 753993702 195833968 399841282 399841282 384178416 384178416 276350858 342529410 403134592 403134592 273094274 269039809 987832610 989225665 989225665 858537745 679796994 679796994 714945076 714945076 560549264 1025286845 1025286845 819124798 819124798 559564021 403584178 423646340 781230246 781230246 750863044 986868407 986868407 822438836 791517643 738270258 1039047932 1039047932 422697440 422697440 487179334 487179334 498722190 498722190 99873768 97482464 91681672 91681672 80083424 26183744 69310920 69310920 21973824 21973824 20415552 6349704 336731138 336731138 275775618 106330760 877608075 877608075 825175299 819539531 598614064 598614064 290533752 581296169 581296169 553439169 544379504 119834409 68954632 68954632 109448208 113074296 113074296 84608576 52613424 39526672 37826960 42410544 46346786 46346786 348193330 348193330 209983492 382001296 986678470 986678470 723816527 753976269 1054608908 1054608908 203165407 237147572 237147572 11687684 676369988 822152964 822152964 152831366 586278928 586278928 815290280 904057323 967970907 967970907 973600791 973600791 583566867 897109632 897109632 862578034 862578034 857060729 857060729 811534786 637147113 816134216 816134216 589300017 393748699 787842895 787842895 567919012 568937789 568937789 585299857 585299857 552751569 146659589 146659589 168294420 571265344 680225793 708858629 708858629 681452692 681452692 578367429 541713553 1007822934 1041543442 1041543442 1047826560 1047826560 976309302 1066400895 1066400895 364485503 401224724 401224724 478057704 538479318 822922275 1032476836 1032476836 132120932 940981392 940981392 256718751 122948280 74711092 100786200 142828656 142828656 262171960 478286394 478286394 469305796 365903566 114500000 344482080 344482080 286312258 54806778 73642192 99072266 413379608 495984462 1015045179 1015045179 370279186 462661966 462661966 307568994 625359368 625359368 124254648 641028769 641028769 996544022 996544022 713343348 513819092 513819092 1059160730 1059160730 1032304704 930298553 930298553 62255441 54642816 54593984 84357488 84357488 62958464 198967000 198967000 179597888 313331546 313331546 135340692 74347160 174010640 174010640 278448816 875240754 1025826175 1025826175 1015205967 277485005 427940750 427940750 241486236 241486236 124710044 395263192 968020839 968020839 981598632 981598632 944836422 944836422 988232151 988232151 865323041 923134011 923134011 466111726 463706126 805885322 807961612 1027605547 1027605547 596228112 596228112 84675624 144060960 144060960 722549636 722549636 593893809 675432668 1066719401 1066719401 356839851 474356749 905969691 905969691 878603931 872673291 809792432 289374211 275815968 824478026 824478026 605134928 558913872 558913872 371287408 371287408 333668800 107704720 54719920 56692480 56692480 782407963 782407963 831303535 831303535 1015596168 1015596168 402736681 540985092 540985092 490536922 490536922 700627624 967987581 967987581 943618567 943618567 866422290 866422290 790630423 790630423 889791531 889791531 778665988 453043638 369675534 1049677137 1049677137 313648106 313648106 1026419617 1032710511 1032710511 984877653 984877653 603459430 573834766 214699212 104907112 559686176 559686176 386484266 386484266 373866912 290464128 583281821 583281821 744791581 744791581 376340436 376340436 33946889 650900637 650900637 577469969 146190105 146190105 68159744 107132700 212159832 746772407 746772407 484056900 484056900 441259282 442887788 442887788 222701696 632961100 632961100 788063428 788063428 640754457 589319576 589319576 229904437 339902760 608999868 1009886700 1009886700 816898607 606328277 223792066 486605328 486605328 282264096 282264096 20972064 88605312 88605864 88605864 61473944 128976880 129513336 129513336 63517816 90193928 101182088 101182088 97525696 97525696 31069920 293274112 293274112 278881514 363739648 363739648 277153794 506211096 506211096 357096074 357096074 332828736 310401122 243470390 297889808 297889808 574313003 625338537 625338537 274908843 921007698 921007698 284136899 140527684 14993856 11410752 174754881 950037905 950037905 490024492 588781058 588781058 383158993 121953952 347019689 347019689 378536538 378536538 893519161 893519161 898229355 898229355 369223857 547620222 547620222 531106113 535823222 947382450 947382450 898095183 367168681 1038822473 1038822473 831335523 890927162 890927162 622679669 622679669 295043634 708981201 708981201 313582354 272221906 445128338 445128338 310249300 55106432 61846772 178371508 179832660 179832660 185648908 236474896 236474896 255902102 291652626 291652626 285872130 127558688 87742736 194063604 622913057 622913057 811397056 811397056 681574740 306315472 604051566 822218787 822218787 617159782 751305933 751305933 595665009 717697328 717697328 174401940 191050400 191050400 80753276 36703360 83991232 173570152 174509712 174509712 72761744 248170008 248170008 172107292 170460228 250164084 250164084 254119397 254119397 546735410 860078339 860078339 422269952 422269952 414271816 418627754 418627754 308338646 144580164 886374916 886374916 615629574 679612736 1037232269 1037232269 975366065 1040762396 1040762396 977847447 456774177 756148649 756148649 734022660 802687584 802687584 69208168 444618314 444618314 302551576 302551576 712119602 860357811 932840115 1007833387 1007833387 422658564 450154644 497494368 685550756 685550756 584508369 583792160 39507600 566493201 566493201 177942592 613821469 613821469 784783581 797403741 797403741 618996009 687921348 748034124 752119569 752119569 716878184 716878184 662078373 600596424 301119054 202051164 274863658 274863658 13814292 25841744 369141858 369141858 234954800 275075394 275075394 210667588 210667588 173590164 73490440 225552810 510129090 510129090 127033570 366232108 520902744 520902744 423962790 423962790 420733696 113758928 113758928 234075440 257450700 257450700 223243740 113040836 523470264 523470264 464550732 464550732 308092448 320508944 320508944 327681138 357047084 590730818 944884959 1064234507 1064234507 932049759 420737574 420737574 373942966 751311606 751311606 542639090 542639090 178839989 801077827 801077827 739873360 739873360 595596743 648282182 807422856 807422856 904080297 904080297 831908451 902655354 902655354 888432481 646252224 289996850 319817856 348958952 348958952 316620498 311219226 311219226 47054042 307707544 308779026 309904912 342885250 343009154 372828032 372828032 39323280 100836960 163715808 232216300 232216300 324197652 334779030 480581044 480581044 252188070 396406820 396406820 340333264 455112440 455112440 508847378 508847378 140314948 140314948 135191556 55826738 280702022 296611170 734914065 734914065 407415268 652821781 1016076626 1016076626 594053546 594053546 298469696 298469696 713679197 713679197 533815784 270870818 444776562 444776562 278935908 519622940 519622940 370015956 370015956 174406046 11546080 135135556 144710660 144710660 188808228 225559308 225559308 153310212 219916652 404700678 857141026 857141026 499346897 454083126 941146678 941147655 949576367 1037042415 1070932207 1070932207 471931569 364350202 463261254 463261254 237744866 222470592 827785889 901476203 901476203 622421642 537469992 818215105 884366147 884366147 605603337 404810054 931194136 941891980 941891980 476063224 604968850 1031337785 1031337785 883308075 946345339 946345339 745105623 745105623 553049025 618421109 798756477 798756477 681164196 1024425225 1024425225 751792203 760154796 760154796 18874656 342371185 922562523 959841091 959841091 844860456 844860456 826670268 409232662 409232662 172129352 1001960560 1001960560 887843403 784404502 221675760 221675760 190579484 136349192 136349192 67519136 756948616 756948616 211077708 211077708 79725068 50631712 667443688 809711617 809711617 336026628 472364957 472364957 370800525 606611223 606611223 2680064 911901210 911901210 841502339 945181090 945181090 947832867 947832867 712511504 712511504 488894766 772021316 772021316 253352377 923095099 1056964671 1070073024 1070073024 39920016 39920016 22161692 138576384 138576384 84024064 68551208 52697376 52697376 18923808 23165056 23165056 563478112 563478112 546159809 546159809 573088256 574220049 574220049 542720785 542114433 573055504 573055504 37509121 125179168 125179168 99359048 292308456 292308456 283951538 53259552 343074184 343074184 297496890 105104560 12889160 52598800 52598800 126799576 133881392 133881392 37142832 25300288 25300288 82446706 872486374 872486374 751903308 751903308 667205317 870453060 870453060 828241057 960615084 960615084 883999563 398058513 440714694 743744071 743744071 823403071 823403071 588301852 1051739498 1051739498 499986158 499986158 484278438 336664202 350009170 350009170 454473240 454473240 547171905 550350401 627069680 637618889 637618889 332500154 80373248 120212516 232839124 232839124 262010956 378325796 425415420 502392210 502392210 333200824 243371020 243371020 234963056 234963056 55338216 52853568 66374560 66374560 47573712 54796896 356788938 356788938 63252720 1021195093 1021195093 922453237 922453237 832973747 907696577 907696577 1003094026 1003094026 329796057 621056257 621056257 186675656 186675656 82018612 130278896 130278896 145046612 177544320 491389764 526129162 526129162 225774378 337723536 410319970 410319970 262941156 289080940 289080940 328124849 751237199 899662877 899662877 633790346 832088104 882765387 882765387 595665264 582323495 131647116 363558147 827409939 827409939 906000738 1044789133 1044789133 211441756 1053368625 1053368625 571123030 640025796 640025796 1014666183 1014666183 940601418 940601418 710199957 710199957 359015858 359015858 814296728 816174075 912277312 912277312 477904138 694751752 745539080 745539080 541164709 235787172 673538752 1000439680 1000439680 868170871 350914019 989924213 989924213 681912645 804825320 994084185 994084185 876627073 606178440 71902635 71902635 310198290 575697029 575697029 940780674 980230279 980230279 575689984 403251720 249115868 249714064 249714064 620962932 620962932 646971993 646971993 675487104 675487104 258810321 153173320 195833968 195833968 208287284 330113728 330113728 145301508 205006400 487793380 487793380 403134592 138590218 161480776 773206792 773206792 858537745 858537745 305440579 139909764 559337604 559337604 573017249 611906305 611906305 819124798 935448089 935448089 269542038 320537124 781230246 781230246 750863044 986868407 986868407 977441690 791517643 738270258 738270258 187558954 422697440 442046032 442046032 70218798 454977986 454977986 380678944 380678944 294279424 31587168 29063840 28312416 27838528 18154240 18154240 8405504 4530176 4530176 6216448 41159816 106330760 106330760 105641112 587535152 587535152 540490497 540480273 64432417 543968720 581296169 581296169 553439169 119834409 119834409 54329656 52495664 9473904 87293960 87293960 83929888 83929888 79814416 79814416 70721808 76073432 76073432 141051072 336682476 336682476 382001296 986678470 986678470 723816527 896303309 1054608908 1054608908 680576937 590347569 543393856 8068080 780207656 780207656 529607452 529607452 419464628 419464628 815290280 904057323 967970907 967970907 172175508 583566867 583566867 821890075 915749768 915749768 862578034 652354696 811534786 843976899 843976899 613352539 332081824 601655154 882688995 882688995 846819272 567919012 568937789 568937789 585299857 585299857 552751569 146659589 552938433 586227793 586227793 540021137 574761477 574761477 681452692 681452692 744523418 744523418 1007822934 1041543442 1041543442 1047826560 1047826560 976309302 1066400895 1066400895 364485503 401224724 401224724 140583300 538479318 822922275 907059938 907059938 417953403 660617628 660617628 534984883 387060282 294700708 294700708 354721536 354721536 252843536 478286394 478286394 469305796 365903566 114500000 344482080 344482080 286312258 155664737 686291397 686291397 683948037 495984462 668622155 668622155 370279186 386041450 505938240 505938240 595662426 595662426 492707502 492707502 391879200 374205594 713343348 713343348 940065160 940065160 1059160730 1059160730 571099427 623170617 623170617 637757032 637757032 111835136 52642224 132473504 132473504 49500608 49500608 179597888 179597888 135792132 704826765 704826765 205306376 776006037 776006037 589902416 589902416 626131689 626131689 658542061 658542061 674764653 674764653 598118632 509306736 395263192 395263192 378326106 520538128 520538128 874059480 874059480 698949980 649302777 865323041 923134011 923134011 530354176 530354176 805885322 807961612 807961612 205138720 596228112 596228112 186667156 147231228 202850832 1037482510 1037482510 957509847 957509847 1066719401 1066719401 356839851 275221120 302515218 302515218 302515218 809792432 809792432 289374211 275815968 824478026 824478026 377413514 377413514 290406610 371287408 371287408 333668800 107704720 54719920 56692480 56692480 782407963 782407963 1052535058 1052535058 972654413 889249802 356108193 343410464 285787170 285787170 412637280 421453350 421453350 152752678 943618567 943618567 606684521 583054395 790630423 790630423 889791531 889791531 959235504 959235504 310922551 811148936 811148936 40491584 40491584 13767360 13767360 13767360 296748964 603459430 742395653 742395653 259540524 580700968 580700968 680822964 680822964 776258488 776258488 661392825 350002689 350002689 84935208 73171088 201362816 201362816 7094284 642643328 642643328 144704776 577888537 577888537 370163968 1055198302 1055198302 916030031 746772407 484056900 484056900 441259282 442887788 442887788 222701696 632961100 632961100 773938389 773938389 758478341 758478341 589319576 585241041 631637341 647920945 724227381 724227381 893473377 893473377 775823133 724456496 486605328 54563488 20972064 20972064 88605312 88605864 88605864 61473944 128976880 129513336 129513336 63517816 90193928 101182088 101182088 85381808 84214272 31069920 293274112 293274112 206892872 318810104 388204616 388204616 506211096 506211096 287061640 332828736 332828736 310401122 243470390 172359256 172359256 609591962 839174163 839174163 374434441 921007698 921007698 557002753 557002753 424940644 1066143656 1066143656 1009462074 950037905 666318463 537733679 537733679 136658308 140998972 347019689 347019689 378536538 378536538 893519161 893519161 898229355 898229355 822903584 809291523 1031930402 1031930402 370370334 947382450 947382450 898095183 367168681 367168681 831335523 831335523 811026816 688285020 622679669 622679669 174481044 708981201 708981201 144295108 174387408 174387408 44446036 135471956 135471956 61846772 178371508 179832660 179832660 185648908 236474896 236474896 255902102 291652626 291652626 285872130 333224968 333224968 194063604 194063604 439165614 768919774 768919774 681574740 142944324 604051566 822218787 822218787 805442152 622268463 1069885604 1069885604 532363744 532363744 144647720 174798464 174798464 54150528 54150528 83991232 173570152 174509712 174509712 72761744 248170008 248170008 172107292 170460228 250164084 250164084 254119397 656834913 656834913 126315625 663847483 663847483 422269952 325257172 674565383 996018070 996018070 1026671408 1026671408 411177030 796984170 796984170 1037232269 1037232269 975366065 1040762396 1040762396 977847447 456774177 197604752 147859686 222948908 360751764 360751764 174377414 444618314 444618314 510657819 676857477 908592030 908592030 932840115 932840115 503452360 449839830 394602618 497494368 685550756 685550756 183594561 60997968 60997968 81303272 81303272 84485288 126563432 126563432 645993144 797403741 797403741 622661304 622661304 163874305 201490564 207230604 267694512 267694512 75884152 91222952 267928720 267928720 202051164 201792548 201792548 134221936 160482388 234954800 234954800 202848812 251736752 251736752 210667588 208262408 202626124 225552810 510129090 510129090 507995724 507995724 366232108 340133024 423962790 423962790 420733696 210933260 113758928 234075440 257450700 257450700 223243740 278131266 278131266 271778306 252078354 436514154 436514154 320508944 320508944 327681138 357047084 357047084 221642968 700789185 700789185 747086734 821484483 821484483 818803973 855184837 855184837 647269128 1053101118 1053101118 875337380 801077827 739873360 739873360 595596743 648282182 807422856 807422856 539292299 631892264 631892264 902655354 902655354 888432481 646252224 289996850 319817856 319817856 316620498 514057178 514057178 139596420 510817694 510817694 235039642 309904912 342885250 342885250 48924748 207171392 235744284 235744284 172970512 416723356 471208074 471208074 386140218 480581044 480581044 252188070 471409416 471409416 434205082 200474740 357936896 513752670 513752670 240974098 33652496 32781488 30831712 164700800 164700800 163700964 407415268 407415268 365299560 433731910 513031482 513031482 436209172 436209172 298469696 292478370 533815784 533815784 216105612 170918240 170918240 217154736 519622940 519622940 303051922 509280464 509280464 445187140 77070356 137111204 137111204 188808228 188808228 141600692 23134340 135281666 404700678 857141026 857141026 862396838 862396838 941146678 941147655 949576367 1037042415 1070932207 1070932207 1026029871 1026029871 986122472 831936543 831936543 520444242 112068650 357804040 874010497 874010497 624673704 823061537 884366147 884366147 896016617 896016617 931194136 941891980 941891980 1041050655 1041050655 1031337785 1031337785 883308075 946345339 946345339 745105623 745105623 506008832 0 0 33850376 604674060 680279224 726151373 726151373 202152173 189398180 56812368 352871240 352871240 172614804 239696544 844860456 844860456 522583829 409232662 409232662 61559184 61559184 271704834 271704834 431751778 431751778 403701960 243796184 243796184 136349192 223089892 756948616 756948616 211077708 638107852 638107852 174359692 174359692 809711617 809711617 336026628 472364957 472364957 370800525 606611223 606611223 336793628 911901210 911901210 841502339 945181090 945181090 947832867 947832867 439354134 721623209 721623209 772021316 772021316 990809129 990809129 1056964671 1070073024 1070073024 39920016 39920016 53744432 155453952 155453952 122948280 122948280 53739656 18874400 21057568 23735296 32028640 566994241 566994241 5716608 5253760 573088256 574220049 574220049 542720785 542114433 655565203 896168650 896168650 885781707 591703280 340459586 365175914 365175914 319501362 923189371 923189371 343074184 860011161 860011161 389811552 106481304 52492272 41361984 571510977 588513552 588513552 566693972 566693972 629145932 872486374 872486374 751903308 751903308 667205317 814894241 828241057 828241057 960615084 960615084 883999563 398058513 440714694 743744071 743744071 823403071 823403071 588301852 1051739498 1051739498 1032835265 1032835265 204009800 631832685 631832685 10537024 23107232 604486081 604486081 164312320 627069680 635613281 635613281 121930001 29360352 29360352 14173696 957851655 957851655 198334416 853847203 853847203 677766552 677766552 724141325 724141325 675391404 684821149 684821149 587684992 181334704 66374560 47573712 54796896 356788938 356788938 63252720 379881754 386014528 386014528 619447354 832973747 907696577 907696577 928530091 990920443 990920443 848198247 687875292 881532096 881532096 876947595 1061613620 1061613620 145046612 177544320 491389764 526129162 526129162 476843936 476843936 460095366 370434334 369861140 369861140 228300320 328124849 751237199 899662877 899662877 605770786 832088104 882765387 882765387 582323495 582323495 277560838 363558147 827409939 827409939 906000738 1044789133 1044789133 211441756 1053368625 1053368625 571123030 640025796 640025796 105257112 131873904 356288986 356288986 340708138 340708138 297836008 67428512 227195740 227195740 339347488 477904138 477904138 596065255 596065255 813433217 947390343 947390343 978416146 978416146 672307696 221478914 221478914 437308020 485772994 485772994 804825320 804825320 876627073 876627073 824379528 350548387 61098272 61098272 43303136 33572432 920232984 920232984 818987715 644965576 689713152 689713152 646208705 591608904 771752024 771752024 700483176 646971993 638780457 764609613 764609613 618211017 571081442 67146410 334883778 334883778 11527176 408620768 408620768 487793380 499802318 499802318 367636908 296382469 1007756034 1007756034 904747481 904747481 369305640 198447277 559337604 559337604 573017249 611906305 611906305 583059212 935448089 935448089 269542038 320537124 570488465 570488465 384893376 384893376 977441690 977441690 262144000 262144000 245418024 136692796 31960652 442046032 442046032 21732846 454977986 454977986 380678944 380678944 294279424 31587168 29063840 28312416 27838528 9486912 9486912 8405504 3475456 3475456 3738368 3738368 2171136 108020105 640873753 640873753 587535152 540490497 540480273 64432417 543968720 543968720 101262360 101262360 590872 3157248 3157248 19221248 252837994 252837994 243405179 775898455 775898455 649811569 1044593543 1044593543 997074802 803154861 803154861 727162875 727162875 652992121 608271425 617194692 945374417 1067359753 1067359753 1028278844 1028278844 852018387 579203088 331464228 780207656 780207656 674563717 529607452 1048839504 1048839504 412630722 741019786 741019786 848000670 848000670 1007331456 1007331456 877036690 915749768 915749768 670689273 670689273 652354696 843976899 843976899 642435112 346160920 601655154 882688995 882688995 846819272 357040362 357040362 330892856 43058576 58725568 58725568 48239552 552938433 586227793 586227793 540021137 942623240 942623240 414077641 344830552 744523418 744523418 516487245 453394896 434559462 703237882 703237882 720258124 720258124 304618384 304618384 302520720 302520720 275651970 138024576 139461252 907059938 907059938 989065630 989065630 660617628 627367568 825837117 825837117 817704052 817704052 375543396 409919526 409919526 345193304 153151540 71514368 89326272 89326272 69616480 69616480 155664737 686291397 686291397 683948037 383683304 668622155 668622155 306084154 386041450 650783084 650783084 595662426 595662426 492707502 928188943 928188943 675962264 675962264 878707083 940065160 940065160 887620821 321335857 571099427 623170617 623170617 637757032 637757032 111835136 620790793 620790793 132473504 538096457 538096457 619340033 619340033 579028880 719513172 719513172 205306376 776006037 776006037 724163264 589902416 562119137 559096545 658542061 658542061 674764653 674764653 598118632 509306736 389547834 378326106 378326106 520538128 520538128 89234276 698949980 698949980 621099864 649267569 766348653 766348653 530354176 530354176 476709262 476709262 469764230 469764230 87631656 186667156 186667156 147231228 202850832 1037482510 1037482510 957509847 957509847 953159697 953159697 428868448 578722435 578722435 832278018 832278018 913427874 913427874 36078595 283861768 546476704 546476704 547509016 634982720 634982720 63649008 59465728 59465728 55596544 51408896 7946416 7647872 7647872 5269888 1052535058 1052535058 972654413 1010132186 1010132186 557191082 880709771 880709771 837288595 421453350 606203760 606203760 142830144 336585506 828765224 828765224 827327139 608189417 418187904 219050018 959235504 959235504 718399922 1061274231 1061274231 368355170 824736619 824736619 13767360 545190464 545190464 538055169 742395653 742395653 549471416 580700968 580700968 680822964 680822964 776258488 776258488 745710437 745710437 369965156 698011077 698011077 511654620 511654620 38064393 642643328 642643328 134743044 577888537 577888537 370163968 1055198302 1055198302 916030031 186189893 186189893 156306213 65947824 638361808 638361808 134167756 934017724 934017724 751751480 801319161 801319161 758478341 585513156 585241041 631637341 647920945 943866643 943866643 893473377 893473377 775823133 724456496 409482186 409482186 370319602 43041530 77121256 278417416 445908852 445908852 121376480 265688824 265688824 261096060 206908044 206908044 105968172 189399712 189399712 140120608 33554448 405874030 405874030 318808356 388204616 388204616 148120640 148120640 144974340 144974340 1049088 88477928 469908056 469908056 611667328 611667328 839174163 839174163 847636563 847636563 822164430 825765519 825765519 424940644 1066143656 1066143656 1009462074 907413868 755622278 339132537 318876333 318876333 392545162 392545162 261112964 101921304 169411276 169411276 352964800 356516010 822903584 946943940 946943940 1031930402 1031930402 84749352 588001281 588001281 428095889 468174208 963582103 963582103 961528098 961528098 692117638 139630992 174481044 174481044 172365972 51701296 151983728 201066644 201066644 136315140 135471956 135471956 140492832 140492832 8462400 8462400 55714616 60891976 71340176 118510232 118510232 86644008 237430164 333224968 333224968 137751222 86508840 439165614 768919774 768919774 746390295 746390295 686280320 511327197 805442152 805442152 625109165 1069885604 1069885604 808193325 808193325 397280594 397280594 1012565221 1012565221 629183193 750041924 750041924 1058689504 1058689504 807945282 1057393184 1057393184 746999916 480247808 69690768 89004328 89004328 656834913 656834913 52082256 663847483 663847483 387731338 325257172 674565383 996018070 996018070 1026671408 1026671408 411177030 796984170 796984170 289285440 289285440 271322370 1058252184 1058252184 947464071 227686055 424690104 424690104 123765414 360751764 360751764 174377414 99783624 205547780 510657819 676857477 908592030 908592030 302514496 503452360 505416314 505416314 407245548 196088688 196088688 545818112 577262848 577262848 60997968 81303272 81303272 177361588 177361588 746625748 784734429 784734429 709512905 622661304 622661304 163874305 201490564 207230604 207230604 18430112 26949216 26949216 267928720 267928720 195226404 201792548 201792548 134221936 159386256 181611732 181611732 202848812 251736752 251736752 208262408 208262408 202626124 189204336 199175208 209396964 507995724 508420156 508420156 420554310 420554310 281282754 210933260 210933260 53203856 630435365 630435365 748815353 748815353 900676971 900676971 811865239 983619012 983619012 436514154 593498549 593498549 157095984 157095984 203529194 431490918 700789185 700789185 747086734 821484483 821484483 818803973 855184837 855184837 647269128 1053101118 1053101118 875337380 76599236 105271500 105271500 155451588 155451588 143265824 69208448 69208448 631892264 631892264 101097864 101097864 71456908 140718468 140718468 219212816 488092940 488092940 514057178 514057178 139596420 510817694 510817694 235039642 358336424 470488074 470488074 48924748 207171392 235744284 235744284 172970512 416723356 471208074 471208074 386140218 390816790 497879478 497879478 471409416 471409416 434205082 200474740 357936896 513752670 513752670 240974098 50451312 50451312 43279602 333022882 404015714 541174829 541174829 241743258 669716809 669716809 513031482 513031482 1055067871 1055067871 296220242 649983205 649983205 311093488 216105612 170918240 375268058 375268058 283258896 379587868 379587868 509280464 509280464 445187140 77070356 35529344 158964252 158964252 121562024 93328936 203669544 204560804 204560804 141958020 560213155 862396838 862396838 810496055 290339973 886773164 886773164 881402601 972970485 1026029871 1026029871 986122472 831936543 831936543 520444242 112068650 357804040 874010497 874010497 717969886 823061537 1028784936 1028784936 1025433135 896016617 851182396 851182396 723004282 1041050655 1041050655 1027298048 574011324 574011324 18893665 22454272 421536936 966796425 966796425 284723204 499663564 1008385381 1008385381 656885185 656885185 587964624 679517208 705413399 705413399 423241264 638389321 638389321 572278985 336439440 603205041 603205041 776292318 776292318 336995399 750825958 814867011 850684176 850684176 431751778 765975149 765975149 243796184 668368729 668368729 743378056 743378056 608846341 675796480 676512772 676512772 571998996 1044498824 1044498824 303986702 303909778 107311890 306216976 477180434 507584670 507584670 373433118 372380442 142237316 142237316 828629152 828629152 561026336 561026336 721623209 721623209 510995358 369547290 990809129 990809129 201722196 201722196 178264072 34868272 69276816 105594000 155453952 155453952 122948280 122948280 100698240 67391744 21057568 23735296 32028640 566994241 566994241 12821632 43363088 43363088 11799360 43517696 43517696 34867728 655565203 896168650 896168650 885781707 591703280 340459586 365175914 365175914 319501362 923189371 923189371 98470578 860011161 860011161 389811552 106481304 781139920 785648349 785648349 676360597 588513552 566693972 566693972 629145932 698485037 706202132 706202132 241381788 241381788 514085724 514085724 47245598 423625248 511256478 511256478 523313982 523313982 104009766 27527456 95453472 95453472 76595784 199297649 754839501 1032835265 1032835265 204009800 631832685 631832685 153696590 1027454688 1027454688 604486081 164312320 560064512 635613281 822734767 822734767 756678701 755635245 254581449 957851655 957851655 198334416 853847203 853847203 817099587 677766552 724141325 724141325 675391404 684821149 684821149 587684992 181334704 64228080 64228080 11610544 18890816 39437536 39437536 60386304 60386304 158371205 554486817 631864249 743646221 743646221 928530091 990920443 990920443 848198247 687875292 881532096 881532096 876947595 1061613620 1061613620 111681856 189205888 189205888 204284450 204284450 476843936 476843936 460095366 370434334 369861140 369861140 312266258 312266258 438569238 510529864 510529864 323323024 514025502 514025502 277184128 277184128 429675292 429675292 330304636 282788016 33818640 908337808 908337808 492707502 492707502 300348350 220150154 411830016 411830016 11484480 35701728 35701728 338387498 338387498 340708138 340708138 357118130 357118130 227195740 227195740 277752932 308027830 308027830 596065255 596065255 813433217 947390343 947390343 1001753090 1001753090 672307696 221478914 545090368 987605692 987605692 767531242 476653006 476653006 610896989 889669705 889669705 627118665 627118665 441720994 642253977 642253977 920232984 920232984 818987715 644965576 689713152 689713152 1006016266 1006016266 771752024 771752024 700483176 609965176 609965176 764609613 764609613 618211017 571081442 260774032 334883778 334883778 275842312 408620768 408620768 364846630 499802318 499802318 367636908 296382469 1007756034 1007756034 918087001 904747481 943576747 943576747 1023888932 1023888932 904346721 101032105 343167388 446503926 446503926 239767636 239767636 202017944 880181570 1016503234 1016503234 779475724 720710613 245418320 757720145 757720145 951421510 951421510 287612964 372204544 723701825 723701825 404775948 979741105 1049650432 1049650432 957222437 879459520 879459520 1009773504 1009773504 1018198656 1018198656 548697728 336295040 2936064 7909120 38610824 108078984 108078984 640873753 650869825 650869825 91215472 656398601 656398601 574807993 621585040 621585040 596705608 596705608 67317768 17374216 20318248 252837994 252837994 243405179 775898455 775898455 649811569 1044593543 1044593543 997074802 803154861 803154861 727162875 727162875 652992121 608271425 617194692 945374417 1067359753 1067359753 1028278844 1028278844 852018387 579203088 331464228 331464228 674563717 674563717 513876318 1048839504 1048839504 840187926 969073984 969073984 848000670 848000670 1007331456 1007331456 877036690 877036690 897770504 897770504 670689273 622814468 622814468 642435112 642435112 346160920 360790583 528009750 911706026 1007105055 1007105055 537923226 330892856 43058576 58725568 58859024 58859024 40841728 39718784 39718784 34936832 942623240 942623240 414077641 470755400 980588164 980588164 716093717 453394896 483696084 483696084 564036299 564036299 80366396 1027150514 1027150514 302520720 709893604 709893604 706283333 467423146 923268019 923268019 989065630 989065630 636515610 627367568 825837117 825837117 817704052 817704052 375543396 409919526 409919526 345193304 195478064 53522704 53522704 52568064 69616480 69616480 86607074 337469866 345927338 383683304 383683304 1034443834 1034443834 274042026 372109402 707076400 707076400 538367048 678176804 678176804 928188943 928188943 675962264 675962264 878707083 878707083 824812194 824812194 729286071 302813472 302813472 43256400 43256400 11348560 9766144 620790793 620790793 86663752 538096457 640831984 640831984 619340033 579028880 719513172 719513172 7476096 170201092 724163264 724163264 629331049 632365929 632365929 238324128 796039204 796039204 505699750 505699750 241787688 456444760 456444760 427954278 69210406 69341448 91881936 91881936 722669944 722669944 109389912 109389912 26282552 17250336 621807365 621807365 826282040 826282040 625476777 625476777 426932240 593445901 593445901 638238778 822744099 822744099 603979785 876222210 876222210 868906070 428868448 578722435 578722435 832278018 832278018 913427874 913427874 539142689 283861768 546476704 806632362 806632362 634982720 634982720 288543024 288543024 270583104 74117232 51408896 5262208 289845085 928551165 928551165 754701527 457312099 447490380 1010132186 1010132186 822888231 880709771 880709771 837288595 686563664 606203760 606203760 142830144 858340667 988721044 988721044 827327139 619056743 346634275 967240807 967240807 1034183946 1034183946 1061274231 1061274231 689977681 824736619 824736619 737266997 844956134 844956134 538055169 538055169 404883218 549471416 549471416 373692596 453388808 850467626 1023809583 1023809583 745710437 745710437 369965156 698011077 698011077 511654620 511654620 46626712 203680917 203680917 134743044 351546370 508929156 508929156 374018078 510970782 510970782 981637812 981637812 494621712 494621712 638361808 638361808 134167756 934017724 934017724 751751480 801319161 801319161 724906672 102840464 558782600 587789305 763152768 943866643 943866643 806564355 375596877 476226368 476226368 409482186 409482186 370319602 43041530 340128264 340128264 445908852 445908852 121376480 265688824 265688824 261096060 206908044 206908044 105968172 189399712 189399712 140120608 122659064 405874030 405874030 318808356 318808356 292113988 509160988 509160988 453547020 1041892611 1041892611 214831886 469908056 594807729 873857871 873857871 684106383 895012849 895012849 847636563 955127469 955127469 825765519 403513955 772747149 772747149 205521036 755622278 755622278 487103180 487103180 318876333 392545162 392545162 205783121 503580702 503580702 980164439 980164439 1011741005 1011741005 946943940 946943940 916930285 916930285 1067244917 1067244917 596430622 989716183 989716183 963582103 963582103 961528098 961528098 692117638 550698053 550698053 147969248 689166149 689166149 180941888 201066644 201066644 136315140 69896216 187686144 187686144 140492832 91227048 19014432 55714616 126837056 126837056 118510232 420293670 420293670 275290750 271727362 271727362 226564253 717226197 717226197 583229649 998502457 998502457 746390295 686280320 511327197 539946716 625109165 625109165 1025884320 1025884320 808193325 808193325 397280594 397280594 1012565221 1012565221 629183193 750041924 912201760 1058689504 1058689504 807945282 1057393184 1057393184 746999916 480247808 174117988 193759260 226712812 226712812 219928040 27935920 27935920 56258784 78809332 108090972 108090972 250387212 566738363 853080257 853080257 792327737 792327737 545869974 548161619 959896359 959896359 1058252184 1058252184 947464071 473440396 473440396 424690104 518096748 518096748 518889476 518889476 208232770 402080050 402080050 361759338 843059611 843059611 302514496 371328658 505416314 505416314 407245548 406402824 406402824 545818112 577262848 577262848 52494336 20017920 54044324 177361588 177361588 746625748 784734429 784734429 709512905 578442857 578442857 171579156 581733460 678987397 678987397 261748472 261748472 170026388 157969236 180219732 180219732 52956496 52956496 44865584 44865584 29833920 44529728 65660368 190152512 199939572 199939572 13027360 136696316 656750681 656750681 923129140 929840275 991333105 991333105 1049964165 1049964165 928819775 928819775 717267545 612428126 630435365 813958354 936250193 936250193 900676971 900676971 811865239 983619012 983619012 241122972 593498549 593498549 194840624 153756592 203529194 431490918 526983718 532676862 532676862 293534116 325936072 325936072 464552148 464552148 454218814 454218814 381048664 1048715159 1048715159 947519898 947519898 1060917613 1060917613 866808844 633965832 872940969 872940969 318373882 895936352 895936352 849494275 624728120 302405440 302405440 488092940 488092940 470663182 40801486 276624512 276624512 272055042 69284864 358336424 470488074 470488074 22439200 22439200 4466688 14889152 130497514 307307154 307307154 288726408 269403160 390816790 497879478 497879478 386426130 266009596 445086852 481415374 481415374 251433938 92642576 66400128 105711792 105711792 75565584 333022882 404015714 541174829 541174829 690425847 711656822 989402979 989402979 603983738 1055067871 1055067871 512124134 702480307 702480307 736481314 847620482 847620482 467289346 375268058 283258896 379587868 379587868 180558676 42409492 169150992 169150992 35529344 158964252 158964252 121562024 93328936 203669544 204560804 424987302 424987302 245993076 246291804 474606072 474606072 353100800 404606668 404606668 374477466 637784180 637784180 761023663 761023663 568870813 568870813 402739294 682058922 959187233 959187233 717969886 717969886 93267821 1028784936 1028784936 1025433135 292637278 464006422 547907726 547907726 812731838 1027298048 1027298048 574011324 681652422 811733379 811733379 103481419 1055401391 1055401391 484205681 732679035 1008385381 1008385381 656885185 656885185 587964624 880629640 880629640 880143243 880143243 638389321 638389321 572278985 336439440 603205041 603205041 809504672 809504672 336995399 750825958 814867011 850684176 850684176 157741640 765975149 765975149 177737052 810230923 810230923 743378056 746618888 746618888 853076514 853076514 676512772 671272965 1044498824 1044498824 816317763 570949970 352518671 690069937 791745059 791745059 507584670 841552781 841552781 474485652 222124950 557528865 557528865 561026336 1015156815 1015156815 960829704 876889284 876889284 483691289 344862464 346366986 346366986 18351648 34868272 69276816 105594000 105594000 35920016 303352338 303352338 302829186 285612034 285612034 273143808 21101600 272727298 279075618 279075618 43363088 269878528 270808066 270808066 280623168 280623168 75884096 75884096 67108872 67108872 67108864 0 54789280 54789280 33621120 101192096 101192096 23725240 53416884 139762636 139762636 847307778 847307778 785648349 785648349 676360597 220277261 806358048 874262297 874262297 648958733 706202132 706202132 241381788 241381788 514085724 514085724 900450431 900450431 937239713 937239713 523313982 523313982 550306833 550306833 825082135 825082135 847898238 847898238 754839501 754839501 681861442 875037963 875037963 495190120 153696590 1027454688 1027454688 574773456 749537609 749537609 669023500 822734767 822734767 756678701 755635245 545818544 545818544 722935828 722935828 555096609 817099587 817099587 287920673 25167200 10486080 2130240 18874656 35753024 35753024 53486048 64228080 64228080 49547712 65293536 65293536 47834832 47834832 125063024 158371205 554486817 631864249 743646221 743646221 697316954 499387402 499387402 475430074 340126372 363139426 363139426 408160902 408160902 339934740 274441194 274441194 368774086 368774086 339216138 339216138 224354192 224354192 124042412 252847160 252847160 312266258 312266258 438569238 510529864 510529864 477662022 477662022 677644871 885970784 885970784 692246608 692246608 588667634 588667634 54925841 908337808 908337808 492707502 492707502 693330109 693330109 949021330 949021330 586776898 374950986 374950986 70853560 97459152 97459152 98078466 357118130 357118130 299696752 307047570 307047570 194263786 428696816 489425456 489425456 580388136 580388136 443047956 1001753090 1001753090 831635008 831635008 672727330 987605692 987605692 767531242 476653006 476653006 610896989 889669705 889669705 627118665 627118665 441720994 642253977 642253977 699475871 699475871 39855600 465459968 465459968 372917122 1006016266 1006016266 541158715 491933777 326633394 794583026 817203440 817203440 760440460 626624680 260774032 260774032 138152644 275842312 497493540 497493540 227767940 220296172 71530632 90150052 202457632 202457632 604605960 918087001 950125803 950125803 943576747 943576747 1023888932 1023888932 904346721 542293698 673619820 673619820 576617248 576617248 264862169 98925924 880181570 1016503234 1016503234 779475724 720710613 414196054 757720145 757720145 951421510 951421510 339646660 1070680249 1070680249 950588515 430099716 979741105 1049650432 1049650432 957222437 879459520 879459520 1009773504 1009773504 1018198656 1018198656 607078144 813260803 813260803 539295616 273315072 108078984 108078984 72690312 650869825 650869825 91215472 656398601 656398601 574807993 621585040 621585040 596705608 596705608 80372832 80372832 86279200 86279200 133174120 133174120 76207136 76207136 73497888 109051800 109051800 67634184 111416576 240920192 340625860 340625860 183608144 183608144 78236564 70568712 29497096 54662404 342832184 342832184 305536372 305536372 201442916 201442916 474811000 474811000 513876318 513876318 840187926 840187926 969073984 969073984 380208213 379245722 379245722 718228528 718228528 440917012 897770504 897770504 735421997 735421997 622814468 253897581 595624088 595624088 392658033 528009750 911706026 1007105055 1007105055 769014044 769014044 646297902 323410098 320706576 320706576 40841728 39718784 39718784 22223360 7549824 5815168 809710720 809710720 980588164 980588164 716093717 239032628 483696084 483696084 580800067 580800067 463356290 1027150514 1027150514 1005505414 1005505414 709893604 706283333 528507628 923268019 923268019 474022208 474022208 834456192 834456192 280816586 130295586 294446848 294446848 142174248 233257452 233257452 195478064 195478064 53522704 53522704 49711520 20988640 20988640 234508713 769214317 769214317 696302661 277387976 1034443834 1034443834 106425248 372109402 707076400 707076400 127741560 678176804 678176804 653528025 642413129 488500237 336644878 255545350 350766440 824812194 824812194 729286071 538709505 538709505 43256400 43256400 46667881 613266673 613266673 865158176 906523515 906523515 640831984 640831984 348180896 71426184 559778081 559778081 359789448 823831425 880112634 880112634 629331049 632365929 632365929 848978531 848978531 796039204 1044098186 1044098186 402837510 456444760 456444760 427954278 153741672 69341448 243924992 750978268 750978268 722669944 109389912 109389912 966188088 993098771 993098771 621807365 826282040 826282040 625476777 625476777 792039217 792039217 593445901 638238778 822744099 822744099 478285902 478285902 868906070 868906070 120321056 622628704 622628704 548614977 116361824 824508178 824508178 539142689 283057905 95813632 806632362 806632362 101275360 101275360 288543024 288543024 270583104 74117232 1766912 1810432 289845085 928551165 928551165 754701527 457312099 316689402 570950673 807458344 1026186795 1026186795 823935267 689180483 686563664 641550380 641550380 129799000 858340667 988721044 988721044 619056743 619056743 453149748 967240807 967240807 1034183946 1034183946 679741706 426318016 689977681 712831380 737266997 737266997 844956134 844956134 296883042 597606670 713608501 713608501 162017905 379269632 417657182 850467626 1023809583 1023809583 286392868 286787106 514896032 514896032 297795426 10912370 38015040 46626712 79555528 135398481 717058565 717058565 676758340 676758340 374018078 691012389 691012389 981637812 981637812 494621712 494621712 616859232 616859232 602013896 602013896 538089441 52536033 48370128 724906672 724906672 102840464 605839936 605839936 763152768 763152768 806564355 806564355 375596877 546440170 546440170 76572240 110725768 110725768 47049936 340128264 340128264 75607168 75607168 260967784 260967784 128390252 599040 264192 264192 313344 33708032 97459216 122659064 122659064 117197544 310952504 310952504 196159750 130901126 509160988 509160988 453547020 1041892611 1041892611 931765056 926940987 594807729 873857871 873857871 684106383 895012849 895012849 464355212 955127469 955127469 675809418 402852452 570484964 570484964 205521036 205521036 299818722 487103180 487103180 407246982 407246982 225806746 205783121 503580702 503580702 980164439 980164439 1011741005 1011741005 971510984 568400566 916930285 916930285 1067244917 1067244917 596430622 989716183 989716183 353154200 837688803 837688803 833605793 627190249 550698053 550698053 185780500 689166149 689166149 180941888 179842580 179842580 170119440 170119440 187686144 187686144 131365988 120851600 120851600 105393064 173055388 173055388 220093620 420293670 420293670 275290750 271727362 271727362 630522900 717226197 717226197 583229649 998502457 998502457 557806990 372825885 357517354 358478264 422534702 422534702 763618432 763618432 509290836 509290836 126166160 31658240 35660000 35660000 53678080 58720320 912201760 912201760 389552192 26611514 93063432 93063432 310208322 310208322 310108432 310108432 338209162 375765418 375765418 311227848 80348168 80348168 98925602 344305098 502186058 502186058 318546240 318546240 785044701 792327737 792327737 545869974 646294859 959896359 959896359 688165634 202119680 4752256 824719032 824719032 786913342 677159120 677159120 669264652 518889476 208232770 402080050 402080050 361759338 500303500 500303500 78422752 78422752 178518048 316928452 318406682 406402824 406402824 263245788 225862336 26102080 60887528 84766104 84766104 83384600 73062024 105546256 638092205 638092205 570443136 698342996 698342996 991161503 991161503 678987397 687354016 687354016 600457941 576771868 414452026 414452026 180219732 321911880 321911880 421414706 531819428 531819428 249894616 130114024 65660368 96518376 213213352 665176589 665176589 656750681 656750681 923129140 929840275 991333105 991333105 1049964165 1049964165 928819775 928819775 717267545 612428126 296034432 813958354 936250193 936250193 150223209 159837296 763627780 763627780 169313540 241122972 241122972 194840624 194840624 153756592 169931936 169931936 186954784 186954784 280593512 350626702 350626702 126934838 464552148 464552148 454218814 454218814 381048664 1048715159 1048715159 947519898 947519898 1060917613 1060917613 866808844 633965832 872940969 872940969 318373882 895936352 895936352 849494275 624728120 450714884 388528058 388528058 358589960 361247936 361247936 338642712 297509616 325388982 325388982 258852156 444600454 444600454 167937856 167937856 337475852 337475852 282703772 307307154 307307154 288726408 269403160 386666810 386666810 386426130 386426130 266009596 445086852 481415374 481415374 251433938 92642576 242567812 242567812 237095204 255327036 255327036 236526302 288051750 463793828 690425847 838345524 989402979 989402979 603983738 530122954 530122954 688154884 702480307 702480307 736481314 847620482 847620482 467289346 278427584 39130384 39130384 524035453 816058579 819337923 819337923 959656743 1002574192 1002574192 326821062 326821062 367122478 539593736 623290405 673997864 673997864 245993076 246291804 474606072 474606072 353100800 251781652 454709294 709433008 990524599 990524599 1071404112 1071404112 944544008 944544008 402739294 682058922 959187233 959187233 352374145 427565090 427565090 366172353 366172353 570694365 941958162 941958162 858598707 1027608811 1027608811 812731838 1018576896 1018576896 875770635 811733379 811733379 103481419 1055401391 1055401391 484205681 732679035 732679035 833127324 833127324 945452614 945452614 880629640 880629640 880143243 880143243 572004362 339077986 339077986 284436608 379430512 379430512 809504672 876412517 876412517 613120931 490607502 490607502 222606690 161449764 161449764 158061032 71893248 810230923 810230923 553751686 746618888 746618888 853076514 853076514 671272965 671272965 647400908 816317763 816317763 609694558 352518671 690069937 791745059 791745059 436388880 841552781 841552781 474485652 222124950 557528865 557528865 360634693 1015156815 1015156815 1030960047 1030960047 1020032345 483691289 379795994 379795994 842015002 842015002 544158720 544158720 8861888 33564288 33564288 303352338 303352338 302829186 285612034 285612034 273143808 21101600 272727298 279075618 279075618 3291392 269878528 270808066 270808066 280623168 280623168 85264130 345240586 362493546 362493546 366043338 366043338 372245642 372245642 319816242 832618699 832618699 348717256 949554305 949554305 555776168 847307778 847307778 535422462 535422462 275275900 56223408 806358048 874262297 874262297 846214192 804439632 804439632 879940019 879940019 271342887 285118704 900450431 900450431 937239713 937239713 717630164 317557927 550306833 550306833 825082135 825082135 847898238 847898238 733503842 681861442 681861442 875037963 875037963 421077014 405548816 638853904 638853904 595960880 749537609 749537609 669023500 596232513 168495616 168495616 58213441 545818544 633868852 722935828 722935828 555096609 253964604 253964604 553675808 765782349 765782349 690070444 749847437 749847437 643867296 197352128 21360288 26989744 60082272 65293536 65293536 47834832 47834832 643059497 643059497 251240420 108998024 784172573 784172573 34078736 34078736 34078736 33555472 33555472 0 254150964 254150964 269615234 269615234 274441194 274441194 368774086 879500645 879500645 339216138 544857387 544857387 356531718 374277256 374277256 571189527 571189527 193103132 941957139 941957139 477662022 1070392629 1070392629 885970784 885970784 692246608 692246608 588667634 588667634 54925841 320897120 320897120 279009426 436721622 960030926 960030926 949021330 949021330 899453270 374950986 374950986 70853560 70853560 6881808 557056 75313980 534616070 534616070 307047570 401344118 401344118 428696816 428696816 418721045 473303602 473303602 640803609 640803609 568922851 831635008 1066193152 1066193152 941145855 575700810 379035101 324535986 440672118 440672118 380573966 405484806 421721030 421721030 417387628 417387628 11736464 778645653 778645653 246693850 540289479 941146118 941146118 808978179 940756921 940756921 303469552 303469552 794583026 817203440 817203440 760440460 626624680 271070184 76185128 96217804 138813708 497493540 497493540 220296172 220296172 4620292 16777216 16777248 16777248 92381952 624693033 950125803 950125803 941337030 513034284 330437490 841768337 841768337 623183704 673619820 673619820 682270304 682270304 264862169 98925924 137438172 209189772 504262860 504262860 451499614 487116776 487116776 394055610 394055610 227023224 449413001 1070680249 1070680249 1021786575 1021786575 241964274 396529800 396529800 46272720 404368064 404368064 426029606 681508518 681508518 544790667 872866440 872866440 813260803 539295616 273315072 51065856 37756304 13815808 34619584 41742288 41742288 16137152 97299648 104103584 104103584 104474384 104474384 24067488 80372832 112382352 112382352 199668618 199668618 234946819 780846103 780846103 585501633 748996941 1064861928 1064861928 1021631879 1021631879 676920981 951294789 951294789 505605379 880257031 880257031 677632851 552884285 922882107 922882107 803680470 803680470 417176192 417176192 25739872 144660416 388328816 557742334 571787793 571787793 168839697 135791632 168960 574464 34214080 718228528 718228528 25880708 16850976 691802568 735421997 735421997 78384456 78384456 595624088 595624088 908194868 1026168111 1059579079 1059579079 917571060 769014044 769014044 646297902 323410098 320706576 320706576 601101265 601101265 593499089 140182753 140182753 558026913 809710720 809710720 554112562 603968960 603968960 552600513 545367552 168067144 580800067 580800067 463356290 953163770 953163770 1005505414 1005505414 316678800 528507628 528507628 923394073 923394073 584180950 818434200 834456192 834456192 604769289 873303179 873303179 763733104 729157785 815110918 815110918 380825741 790898820 790898820 706875669 170133505 548700680 610847016 610847016 769214317 769214317 696302661 127390056 601906081 601906081 256112756 256112756 179058884 179058884 38585476 33591312 33591312 437944859 437944859 487868968 487868968 704778292 704778292 585143383 706020116 706020116 687190001 538709505 289212707 59320432 46667881 613266673 613266673 865158176 906523515 906523515 629871904 357130264 348180896 576442000 588312352 588312352 359789448 823831425 880112634 880112634 397123633 628096 369795344 848978531 848978531 688259468 1044098186 1044098186 402837510 402837510 210504780 268714016 268714016 143919684 243924992 772409381 772409381 151788596 613737800 747948105 966188088 993098771 993098771 876364831 402917382 279906428 279906428 144874904 963669428 963669428 991258099 991258099 951341723 737857418 737857418 528651729 528651729 581974296 604712983 622628704 622628704 548614977 116361824 855602608 855602608 106088920 294553416 630733954 630733954 118230072 118230072 101275360 64964824 65850864 65850864 51458096 35128864 50972288 323551340 512279646 512279646 357363632 176187392 176187392 167839824 807458344 1026186795 1026186795 942949954 951323463 951323463 641550380 641550380 458675535 458675535 936677950 1026556747 1026556747 584253986 453149748 453149748 692358381 695899909 695899909 336397962 336397962 554311680 554382369 554382369 554382369 554382369 338232385 296883042 597606670 713608501 713608501 620770304 620770304 379269632 471340032 471340032 487203080 487203080 324404776 514896032 514896032 297795426 35502400 35790480 35790480 15470016 135398481 717058565 717058565 676758340 676758340 149629249 691012389 691012389 563949157 563949157 146813760 146813760 616859232 616859232 609881417 602013896 538089441 280747854 745517989 745517989 677905797 778699781 778699781 605839936 1003863026 1003863026 805751314 699847736 699847736 546440170 546440170 364165932 327935818 121166826 111580944 300956624 354941226 521439828 521439828 260967784 260967784 249112284 252844228 252844228 154405124 37999232 158221232 158221232 153485600 58944560 95004756 310952504 387394104 387394104 125109914 102099328 404768832 867792352 867792352 931765056 931765056 926940987 814900860 663842444 709175445 709175445 268519336 426706904 464355212 464355212 675809418 675809418 655894596 583346385 570616476 367527758 540688834 611339835 611339835 563910856 407246982 407246982 436437554 436437554 138707016 320016914 320016914 305867456 305867456 971510984 971510984 568400566 568400566 180815930 180815930 44706082 28872704 372662376 372662376 353154200 81987208 11873088 72105608 72105608 141743216 185780500 185780500 172538580 14623296 5887700 179842580 179842580 170119440 170119440 135789460 109381824 109381824 120851600 120851600 105393064 173055388 173055388 220093620 220093620 103297864 36316480 38458648 168307305 630522900 630522900 194375808 512629802 972119406 972119406 521594144 322839104 322839104 358320536 358320536 189008052 189008052 998958657 998958657 509290836 430802083 298089792 511977628 621320354 621320354 1066190372 1066190372 922400483 922400483 909137664 586975850 885397736 885397736 310208322 310108432 310108432 338209162 375765418 375765418 311227848 80348168 80348168 98925602 344305098 502186058 502186058 197133536 197133536 521670837 1063785659 1063785659 973671305 973671305 826222568 826222568 683817521 373692570 826479656 877658120 877658120 786913342 677159120 677159120 669264652 115681752 6629976 42277520 42277520 353966088 353966088 336142696 79999848 114148784 121337016 121337016 108258752 365919928 374503320 374503320 89717104 44427600 60887528 84766104 84766104 171053844 171053844 198312052 638092205 638092205 77104364 698342996 698342996 991161503 991161503 1036833597 1036833597 888329163 600457941 576771868 414452026 414452026 177362774 321911880 321911880 421414706 531819428 531819428 249894616 142155020 204351364 204351364 213213352 665176589 665176589 547520797 547520797 677958274 882482979 882482979 731432565 412639995 658658944 658658944 386739258 386739258 278989036 632555342 817766211 1033555157 1033555157 920514267 920514267 718433365 407863033 407863033 223605420 1031142705 1031142705 315280146 276720828 276720828 169931936 140924524 435516886 435516886 350626702 350626702 126934838 276774764 759711787 759711787 949292832 949292832 825621455 825621455 288661797 331204272 609990273 609990273 927975824 927975824 861406298 370839090 370839090 344458514 283788752 283788752 450714884 450714884 388528058 388528058 358589960 361247936 361247936 338642712 297509616 325388982 372418592 372418592 444600454 444600454 193779860 193779860 337475852 337475852 282703772 282703772 244831752 277398594 336199746 363041146 363066664 363066664 1055205913 1055205913 418382790 814647499 1016534416 1016534416 953971720 610094784 600489256 600489256 255327036 255327036 188603692 221093024 463793828 463793828 838345524 838345524 745866628 712780173 466365011 461422710 941943124 941943124 136677413 49043504 49043504 41428160 41428160 35542592 39130384 154147886 524035453 816058579 819337923 819337923 959656743 1002574192 1002574192 326821062 326821062 367122478 539593736 623290405 673997864 673997864 398468092 295714890 286961722 373953690 373953690 373953690 454709294 709433008 990524599 990524599 1071404112 1071404112 944544008 944544008 484773391 606384291 1013783979 1013783979 352505217 427565090 521186172 521186172 366172353 570694365 941958162 941958162 858598707 1027608811 1027608811 810280675 1018576896 1018576896 943727247 943727247 99684484 99684484 83886120 83886120 4456576 289938966 945772053 945772053 993742932 993742932 945452614 583008465 337634072 268957698 281735698 336449536 339077986 339077986 284436608 379430512 379430512 775850470 876412517 876412517 811897024 490607502 490607502 222606690 161449764 546038657 546038657 556871946 872488992 872488992 675840008 675840008 169390108 169390108 536999429 536999429 647400908 647400908 475527822 609694558 609694558 316055439 343311900 343311900 503497608 503497608 34214918 34131968 33686032 152385540 152385540 154141472 171256624 300069644 485980331 1030960047 1030960047 1020032345 145439458 379795994 379795994 842015002 842015002 544158720 544158720 122365328 122365328 35206528 36177168 101745280 341133056 341133056 268773378 8106752 8106752 7476096 1708032 136704 0 590848 2693120 3022080 3022080 2954496 85264130 345240586 362493546 362493546 366043338 366043338 372245642 372245642 319816242 832618699 832618699 348717256 949554305 949554305 555776168 557389732 872550473 872550473 881744726 881744726 663274617 386044995 320243052 846214192 846214192 804439632 804439632 879940019 879940019 637892769 820456130 820456130 590718417 342188354 717630164 717630164 317557927 259541692 96209816 865624635 865624635 189334116 433586829 945292931 945292931 660144781 548005185 548005185 635185629 635185629 785180116 785180116 595960880 595960880 584494144 140575360 140575360 168495616 168495616 46536792 85331500 633868852 633868852 579470865 550444560 646759545 790239813 790239813 765782349 765782349 690070444 749847437 749847437 643867296 197352128 25222736 26989744 60082272 60082272 42127392 42127392 34985056 643059497 643059497 251240420 108998024 784172573 784172573 511725814 511725814 496686666 428792392 428792392 201791598 199632732 384736212 384736212 371299408 55877552 356812688 358613418 879500645 879500645 233562786 544857387 544857387 356531718 374277256 374277256 571189527 571189527 170133780 941957139 941957139 191396047 1070392629 1070392629 977404434 977404434 676467333 484577843 330596386 330596386 10934592 320897120 320897120 279009426 436721622 960030926 960030926 927015099 899453270 899453270 270565993 339888920 339888920 58628994 22808096 24196736 82137944 534616070 534616070 208931724 401344118 401344118 299609204 391082086 418721045 418721045 535443922 640803609 722900556 722900556 220879659 1066193152 1066193152 941145855 141649159 137437956 1298692 525312 135168 77860428 138024708 175245060 175245060 175113108 149607388 104093848 778645653 778645653 250873668 540289479 941146118 941146118 824247842 940756921 940756921 303469552 303469552 50354362 274793696 288628818 288628818 271070184 271070184 68357632 70188288 73062024 79745216 79745216 134240384 151036036 151036036 152392288 212340452 212340452 151205568 95470440 95470440 941337030 941337030 330437490 330437490 462731632 623183704 623183704 673065457 673065457 682270304 682270304 509151048 592722144 592722144 584953805 453563135 830235262 830235262 579018996 487116776 394055610 394055610 363293636 508500252 508500252 916620225 1021786575 1021786575 305530130 792088962 792088962 608737085 1038659298 1038659298 426029606 681508518 681508518 478764417 872866440 872866440 77629955 17733248 51065856 60110704 60110704 48275728 48275728 41742288 61727264 61727264 97299648 97299648 67690816 69470472 69470472 17642856 56885872 113560080 113560080 199668618 199668618 234946819 780846103 780846103 585501633 748996941 1064861928 1064861928 1021631879 1021631879 676920981 951294789 951294789 505605379 880257031 880257031 677632851 552884285 922882107 922882107 803680470 803680470 417176192 660323176 994776129 994776129 399726377 765979194 1053060471 1053060471 223463424 223463424 404384274 407206022 407206022 411240024 998740805 998740805 319234096 830675316 977885358 977885358 281775570 1042830616 1042830616 885125467 908194868 1026168111 1059579079 1059579079 208997667 166400312 341447753 818938563 907677321 913870816 913870816 601101265 601101265 593499089 971189232 971189232 559552161 559552161 554112562 554112562 603968960 603968960 552600513 545367552 282158337 940270613 940270613 551052453 440174260 442499478 787539332 787539332 489530839 879774862 879774862 1064022156 1064022156 950219958 818434200 818434200 459557322 604769289 873303179 873303179 763733104 729157785 815110918 815110918 380825741 790898820 790898820 706875669 543740064 548700680 610847016 610847016 89178792 86535528 717430085 717430085 708903557 707533217 707533217 672465328 179058884 823731973 823731973 561830444 1031182639 1031182639 940891488 487868968 487868968 704778292 704778292 585143383 706020116 706020116 906256481 906256481 631783978 631783978 587589448 101786648 596721664 932853520 932853520 629871904 629871904 352346472 537609616 576442000 588312352 588312352 33707520 175687060 175687060 174033040 174033040 133144796 369795344 374416382 374416382 323028156 479006860 479006860 415289350 415289350 201905250 503469064 511840784 511840784 143919684 772409381 772409381 151788596 613737800 747948105 747948105 452061577 876364831 996698438 996698438 279906428 805429428 962207753 963669428 963669428 1004935671 1004935671 951341723 995807749 995807749 528651729 847692860 847692860 604712983 604712983 421599603 328536930 395007088 934174000 934174000 340129401 294553416 630733954 630733954 118230072 118230072 63227080 50912144 45762672 51458096 51458096 35128864 50972288 323551340 512279646 512279646 357363632 731132934 998972467 998972467 575848912 690489045 690489045 942949954 951323463 951323463 420598318 386800698 458675535 458675535 791880689 1026556747 1026556747 584253986 403065872 147618773 692358381 695899909 695899909 336397962 809763279 960745499 960745499 554382369 554382369 656601807 656601807 93885218 537580552 537580552 101089033 620770304 738228237 1042792992 1042792992 757263663 588356372 487203080 411245336 324404776 123855856 825914376 825914376 593656561 593656561 590057969 558476416 49213776 15508480 674411972 674411972 149629249 23931648 558028960 563949157 563949157 146813760 146813760 614940000 614940000 609881417 562746465 562746465 541151861 745517989 830368909 830368909 1010565401 1010565401 877793931 1063691923 1063691923 1000846178 1000846178 930267899 915497578 520953858 364165932 327935818 121166826 111580944 300956624 354941226 521439828 521439828 250034440 244265944 249112284 252844228 252844228 154405124 151328384 158221232 158221232 153485600 7344512 84979632 372593448 387394104 387394104 371771028 437536646 520138030 1008816432 1042473040 1042473040 839969884 1016304247 1016304247 663842444 709175445 910427219 1023494306 1023494306 1033509316 1034031471 1034031471 655894596 655894596 583346385 570616476 520407132 540688834 611339835 611339835 563910856 252297534 230895830 436437554 450103508 450103508 320016914 320016914 185083148 5378688 5378688 4590080 1573440 9178176 9178176 9702912 9702912 0 0 8922112 81987208 81987208 54733840 72105608 72105608 40918704 134242368 142189700 198804624 198804624 136315332 146940708 146940708 55603840 68645516 137634324 137634324 134617092 201800324 235481552 235481552 51485968 51485968 87970736 191119332 191119332 166394752 166394752 189744144 189744144 194375808 521926206 521926206 972119406 972119406 763511997 1037046295 1037046295 666590425 453943881 189008052 189008052 998958657 998958657 430989698 430802083 298089792 511977628 621320354 621320354 1066190372 1066190372 922400483 922400483 909137664 586975850 885397736 885397736 308069336 15342016 67524232 67524232 39385216 27449344 27449344 10736768 14195008 68933644 242708396 242708396 134849796 197133536 197133536 521670837 1063785659 1063785659 973671305 973671305 826222568 826222568 671218822 671218822 826479656 877658120 914622797 914622797 841483539 483920237 396362106 427107158 427107158 342100362 350210946 353966088 353966088 336142696 88371400 114148784 121337016 121337016 108258752 365919928 374503320 374503320 89717104 60859936 55332144 111938904 111938904 171053844 171053844 198312052 198312052 655360032 655360032 638583321 23284633 654330912 654330912 1036833597 1036833597 888329163 232833135 227021344 127406064 121638600 133695480 133695480 25631544 21628048 38216944 62532752 62532752 142155020 204351364 204351364 99982272 132416456 132416456 44318856 369436698 677958274 882482979 882482979 731432565 412639995 437334606 437334606 386739258 742790266 742790266 632555342 817766211 1033555157 1033555157 920514267 920514267 718433365 566248608 566248608 223605420 1031142705 1031142705 315280146 289964064 289964064 273204354 140924524 435516886 435516886 342306376 273420032 352870128 396887418 759711787 759711787 949292832 997215896 1026346287 1026346287 380372656 380372656 609990273 609990273 927975824 927975824 861406298 370839090 370839090 344458514 48357778 112865488 291571600 320415282 320415282 299612584 299612584 132974064 132974064 107213208 107213208 120198456 372418592 372418592 45082928 47156976 193779860 193779860 349954760 349954760 224574348 224574348 127339520 277398594 370191676 497784190 497784190 635812026 1055205913 1055205913 746586564 814647499 1016534416 1016534416 953971720 610094784 600489256 600489256 102760728 102760728 188603692 530919402 530919402 904735727 904735727 855254924 855254924 712780173 517228200 517523166 941943124 941943124 543960229 552462752 552462752 543687424 158114704 37509904 36310784 154147886 494604008 494604008 436471830 484255448 484255448 180572240 180572240 145152324 28310880 84475912 103358800 103358800 246485008 398468092 851008805 851008805 817634874 817634874 782682653 613706829 374794758 750079772 750079772 664551187 663553200 842650423 842650423 484773391 484773391 558147784 1013783979 1021570199 1021570199 332661104 521186172 521186172 235962848 235962848 68389348 60632688 315569507 691591009 691591009 810280675 810280675 474423444 943727247 943727247 876630173 831491241 536948090 783178932 783178932 544867077 945772053 945772053 993742932 993742932 728777525 337634072 337634072 587055440 835503160 835503160 421921920 435030246 435030246 135644551 806754819 806754819 72616584 811897024 811897024 546508865 568402401 890327392 890327392 546038657 546038657 565195714 872488992 872488992 675840008 675840008 302290455 433852134 617395370 677115525 1001821130 1001821130 475527822 969280089 969280089 151022624 587651121 838894131 838894131 503497608 790352515 790352515 474101406 272724386 272724386 174137748 605748945 605748945 166848324 365479146 679716028 838995987 839061523 839061523 42542099 42152016 34674240 128597476 264087132 264087132 186830256 186830256 441550482 441550482 341133056 341133056 269763074 276300802 276300802 276221698 276221698 283446016 283446016 14242624 271334722 271334722 11922240 39519424 61060624 317285504 317285504 316719570 300994704 325675522 351609896 351609896 100441216 52569232 63739808 86638824 206120076 209873084 209873084 889660306 889660306 872550473 881744726 881744726 663274617 386044995 806390862 1071578685 1071578685 551284233 658331400 658331400 337047670 637892769 820456130 820456130 597622640 342188354 702592897 702592897 479069812 479069812 67108872 865624635 865624635 189334116 433586829 945292931 945292931 711992684 711992684 647207145 635185629 635185629 785180116 785180116 678155201 713205444 713205444 537196193 537196193 246892740 246892740 215616484 590494797 590494797 579470865 579470865 550444560 646759545 790239813 790239813 79609616 128765304 128765304 102100672 102100672 59253808 39108704 25222736 37748864 37748864 27946608 28328816 34985056 34985056 104464896 107293080 107293080 27711840 99322608 147598922 511725814 511725814 1058745607 1058745607 784699340 784699340 341125770 679204114 679204114 649819396 454835006 454835006 358613418 358613418 348647300 348647300 301222278 338710512 474030604 474030604 339948220 449295888 449295888 14815680 150415556 269538072 387083402 765024000 940448775 977404434 977404434 676467333 484577843 972120391 972120391 867177410 866435939 838916448 6348928 16941396 180400288 180400288 702689032 702689032 71111141 67207432 387089208 387089208 58628994 80138504 80138504 118810276 242451532 242451532 185770992 197260020 197260020 180636304 180636304 319105870 319105870 670371677 981361124 981361124 722900556 707461143 477763088 796161030 875202432 875202432 856809166 937710984 937710984 207003644 83756744 138024708 375510670 452676114 452676114 271128524 271128524 108004248 250873668 250873668 419497732 419497732 824247842 824247842 1025542082 1025542082 1030917024 1030917024 424940942 274793696 834487878 878870210 878870210 567489249 567489249 490587847 823641583 823641583 79745216 826840136 826840136 1006968705 1006968705 878709283 1029353633 1029353633 976959255 995153223 995153223 527964145 527964145 198705962 938615587 1070141726 1070141726 784335069 738723024 402065300 509151048 509151048 592722144 592722144 584953805 453563135 830235262 830235262 579018996 437879312 512868888 512868888 363293636 508500252 508500252 177768862 277272642 846369475 1041292045 1041292045 918717370 918717370 1038659298 1038659298 505483345 565259885 649204569 649204569 95877889 844423456 844423456 567483392 270515776 60110704 60110704 48275728 48275728 62595440 65306816 65306816 60622800 130502904 130502904 123025128 123025128 54812208 122459816 122459816 113560080 97584248 119722296 119722296 85248552 85248552 15542402 15542402 280945664 302815938 1044992076 1044992076 610800257 610800257 79502857 249858004 249858004 116674688 44040528 81810448 81810448 18800544 18800544 12653184 170235060 660323176 994776129 994776129 399726377 910621050 1053060471 1053060471 456375517 223463424 404384274 878752646 1016674454 1016674454 998740805 998740805 864573569 830675316 977885358 977885358 472255115 1042830616 1042830616 885125467 885125467 1021718980 1021718980 853520275 853520275 728897574 728897574 818938563 907677321 913870816 913870816 325869464 302195314 302195314 971189232 971189232 559552161 559552161 542848641 542848641 9122048 9122048 279352902 407971264 546833856 954827715 954827715 551052453 755247970 1030039983 1030039983 787539332 687900892 983288775 983288775 1064022156 1064022156 950219958 802056486 555436816 142567530 433723110 433723110 562377404 562377404 179144573 235319304 236446492 236446492 170127636 3623444 21239936 543740064 543740064 22419448 88489128 88489128 134295680 717430085 717430085 708903557 707533217 707533217 732140433 732140433 823731973 823731973 756079905 1031182639 1031182639 940891488 837625031 297061218 511740842 511740842 67158024 90194842 386925114 906256481 906256481 631783978 631783978 587589448 546308673 562082403 932853520 932853520 926052650 891884080 559334152 559334152 537609616 101575704 270794040 318775808 357827200 358662570 358662570 357597952 133144796 119021424 374416382 374416382 323028156 479006860 479006860 437158992 437158992 411490374 503469064 511840784 511840784 154699400 154699400 141821320 19138848 538183424 539757825 539757825 539757825 539757825 996698438 996698438 421267316 926715248 962207753 962207753 660919813 1004935671 1004935671 729516372 995807749 995807749 967346747 847692860 847692860 665319177 539480320 556560480 556560480 395007088 934174000 934174000 587710808 381120976 381120976 873392570 873392570 897480474 897480474 57169720 17842848 50611264 50611264 34652688 4227072 54554016 54554016 52989600 171295312 731132934 998972467 998972467 602674176 690489045 690489045 422708773 76755528 211485700 211485700 98459304 363994272 485627630 485627630 100349836 194687700 403065872 403065872 61980624 61980624 1015384628 1015384628 932995267 818678979 960745499 960745499 925891899 925760827 925756731 656601807 93885218 537580552 537580552 207108814 151883972 738228237 1043531808 1043531808 757263663 621009922 539017473 411245336 299630784 340138690 825914376 825914376 593656561 593656561 590057969 558476416 686343621 686343621 677405505 674411972 540067073 540067073 675938977 675938977 135865860 135865860 134750720 554566144 555621921 555621921 562746465 564187692 564187692 541151861 830368909 830368909 1010565401 1010565401 908005702 1063691923 1063691923 1000846178 1000846178 930267899 915497578 428676848 235354140 191047488 106594944 51992656 71060112 71060112 114466096 243801000 243801000 170004756 128059500 22756992 22756992 151328384 151328384 19471744 19913472 19913472 18299424 413338882 413338882 372593448 274608944 371771028 437536646 520138030 1008816432 1042473040 1042473040 839969884 1016304247 1016304247 890069368 1040525343 1040525343 1023494306 1033817612 1033817612 1034031471 1034031471 645625538 645625538 585055953 944165632 944165632 376838335 289671330 252761692 252297534 252297534 230895830 230895830 535871996 535871996 315911150 235354140 234307008 650445548 1021914201 1021914201 428816938 528561902 528561902 418987816 85460520 85460520 331746968 369664144 369664144 105995472 54733840 39135888 40918704 40918704 31902128 20046624 198804624 198804624 136315332 146940708 146940708 103421208 112866584 137634324 137634324 134617092 201800324 235481552 235481552 51485968 51485968 39212116 191119332 191119332 166394752 166394752 189744144 542513729 626219887 953414343 953414343 1037851772 1037851772 929039725 1037046295 1037046295 755372367 1043017776 1043017776 980394212 980394212 34034708 172670048 300961922 304169794 304169794 302080000 132350128 876713320 876713320 618401241 608720794 633976617 633976617 335072993 399457832 399457832 296562880 348621914 348621914 301228226 301228226 270740384 104916344 104916344 18221328 116080376 116080376 40387984 40387984 147380561 904037430 904037430 939009891 939009891 843827145 843827145 565355141 671218822 671218822 134719629 738721800 914622797 914622797 841483539 901330078 901330078 427107158 427107158 342100362 350210946 350210946 93397608 93397608 88371400 92703200 327349977 893986627 893986627 294683553 557156001 557156001 60859936 574352400 574352400 111938904 605341129 627609112 789628133 789628133 722747701 722747701 677681996 739531599 739531599 591708803 491053631 382403562 382403562 585217654 589832504 589832504 412929138 412929138 240147248 509467796 509467796 281988338 367568068 367568068 259851548 259851548 109547908 109547908 106012928 709167473 709167473 252016848 151308324 260313856 260313856 271655682 649323872 649323872 495515933 478549615 873166942 873166942 742790266 394926221 14157504 245394332 540225012 722203701 722203701 623120640 621156393 566248608 160117860 160117860 84530924 72925224 289964064 289964064 273204354 100701418 155058540 342306376 342306376 417671622 417671622 396887418 396887418 260096124 260096124 997215896 1026346287 1026346287 380372656 380372656 368315370 821745618 821745618 102761032 102761032 311083520 322564152 322564152 318382914 397137266 397137266 188850810 721417621 1005474493 1005474493 628509097 628509097 680524869 680524869 480957774 935849144 935849144 1009419823 1009419823 922580338 415656496 403195398 366766281 876478265 876478265 848413712 848413712 548938802 548938802 497784190 635812026 635812026 372296497 994967890 994967890 169582989 131866264 131099320 201535500 259084772 259084772 146849988 146849988 191071796 530919402 530919402 904735727 904735727 855254924 855254924 674628780 517228200 517523166 517523166 543960229 543960229 552462752 552462752 543687424 158114704 169608640 212241228 261080744 415551055 680820303 815927619 815927619 846888199 847439120 847439120 476499678 709670144 893984879 893984879 724904496 724904496 580296792 851008805 851008805 817634874 817634874 782682653 675779590 810413187 871787437 871787437 664551187 663553200 839586423 949487175 949487175 587472904 831130858 831130858 1021570199 1021570199 305458484 319450912 319450912 235962848 235962848 453995536 453995536 321776946 167323620 167323620 144198404 474423444 474423444 134927364 876630173 876630173 831491241 536948090 783178932 783178932 739313831 739313831 466278734 466278734 728777525 728777525 722283573 172444326 766627308 982853207 982853207 697086903 492231342 1038683597 1038683597 806754819 806754819 595365852 771096868 771096868 546508865 626806368 893835208 893835208 843089178 562068232 565195714 604843554 604843554 557946502 557946502 302290455 433852134 617395370 677115525 1001821130 1001821130 387601440 969280089 969280089 475450772 587651121 838894131 838894131 503318424 790352515 790352515 474101406 272724386 272724386 177271424 605748945 605748945 510695228 932498043 932498043 838995987 839061523 839061523 441119943 429937161 368981945 348750930 713844728 713844728 574923137 186830256 441550482 554147074 554147074 540176898 540176898 280691712 280691712 276221698 276221698 283446016 283446016 14242624 271334722 271334722 11922240 39519424 39519424 317285504 317285504 316719570 300994704 325675522 351609896 351609896 729469481 729469481 237154600 237154600 599210593 599210593 916877893 1039662063 1039662063 955563119 856000661 856000661 772458864 841140349 841140349 1071578685 1071578685 1038822695 141417645 147514074 491991726 491991726 299869222 597622640 597622640 309775440 309775440 291236648 479069812 479069812 42748548 167775232 167775232 107354520 90577288 242097560 242097560 711992684 711992684 743776768 743776768 742656141 13182144 13182144 678155201 713205444 713205444 537196193 537196193 246892740 246892740 215616484 590494797 590494797 157551473 157551473 82643897 58855720 25239648 17242112 26152992 26152992 25955424 25177184 4719744 4719744 18612736 68231432 68231432 37748864 36337280 39422208 41438208 41438208 106956553 574668945 574668945 101188057 655165345 655165345 367902018 367902018 1058745607 1058745607 784699340 784699340 341125770 679204114 679204114 649819396 454835006 454835006 291430050 879533413 879533413 499306734 995572385 995572385 474030604 474030604 339948220 596120667 596120667 348259994 931258753 931258753 387083402 765024000 940448775 940448775 424616097 726144649 726144649 972120391 972120391 867177410 866435939 838916448 868472918 868472918 671166152 752717529 784133957 784133957 363995256 363995256 387089208 387089208 7748338 80138504 80138504 118810276 242451532 242451532 150541412 100658664 100658664 90688580 68604580 39924506 410204258 670371677 989953086 989953086 707461143 707461143 477763088 796161030 875202432 875202432 856809166 937710984 1042917215 1042917215 116541898 116541898 770012546 770012546 880068716 880068716 271128524 35002896 35002896 178534418 316217798 316217798 8861760 8861760 1025542082 1025542082 1030917024 1030917024 818793536 818793536 834487878 878870210 878870210 567489249 567489249 553797440 823641583 823641583 26623215 826840136 826840136 1006968705 1006968705 878709283 1029353633 1029353633 976959255 995153223 995153223 527964145 527964145 320678892 938615587 1070141726 1070141726 784335069 738723024 195301600 195301600 25503840 25503840 25311232 200311446 963832288 963832288 460404046 366675944 336716220 1070920431 1070920431 339376018 339376018 795868605 1027392047 1027392047 939236880 1041292045 1041292045 918717370 918717370 393236699 474490920 505483345 565259885 649204569 649204569 612745880 844423456 844423456 567483392 270515776 46871760 46871760 13074688 20296128 62595440 65306816 65306816 56591008 130502904 130502904 123025128 123025128 54812208 122459816 122459816 82363848 111915800 112263728 112263728 959874476 959874476 1014042012 1014042012 840773139 771733326 1044992076 1044992076 828375459 962189286 962189286 640722339 883443550 883443550 44040528 35651648 8969728 18800544 18800544 12653184 201934336 201934336 62553185 166008241 166008241 910621050 910621050 856603035 553984032 537135105 387736113 878752646 1016674454 1016674454 808054961 864573569 864573569 570475281 545654019 545654019 950307664 950307664 613610760 642594329 699275744 1021718980 1021718980 853520275 853520275 728897574 728897574 10128608 51992096 64661104 64661104 944967813 944967813 677895745 588942720 588942720 553990421 541136384 542848641 542848641 816856432 816856432 940673426 940673426 546833856 954827715 954827715 438465394 755247970 1030039983 1030039983 687900892 687900892 983288775 983288775 949504064 568609152 568609152 555436816 555436816 545803240 389386704 233415032 562377404 562377404 179144573 706754640 706754640 236446492 755171732 755171732 674737669 621892196 621892196 755153996 755153996 240522848 240522848 138547332 684787488 684787488 684200229 260768216 732140433 732140433 681383441 681383441 756079905 756079905 174842620 837625031 837625031 297061218 511740842 511740842 67158024 90194842 386925114 386925114 287377416 37038864 130559168 130559168 546308673 622040864 622040864 926052650 926052650 891884080 559334152 559334152 125655561 101575704 270794040 318775808 357827200 358662570 358662570 357597952 52765812 423341488 423341488 205834380 462012604 462012604 249173724 437158992 437158992 411490374 265342110 482498092 482498092 154699400 745406593 745406593 225185196 538183424 539757825 539757825 539757825 539757825 866951554 866951554 854673413 926715248 926715248 555870354 382347184 262600780 581630229 967186791 967186791 967346747 967346747 698245430 698245430 665319177 539480320 556560480 556560480 295591520 295591520 587710808 587710808 381120976 381120976 873392570 873392570 897480474 897480474 388932448 388932448 316179088 104211888 54259216 51475216 40466304 558629025 558729249 558729249 554475776 872464395 872464395 680587294 680587294 671537157 917012182 917012182 1044304090 1044304090 1006841992 1063364193 1063364193 636343563 947184857 947184857 730388066 456578088 264112958 884643203 1015384628 1015384628 932995267 818678979 874036016 925891899 925891899 925760827 925756731 937431850 937431850 930087867 336593329 207108814 788937280 788937280 1043531808 1043531808 950407212 950407212 891570507 411340071 299630784 340138690 340138690 67768426 30670888 13632192 13632192 136541377 686343621 686343621 677405505 542684544 540067073 540067073 675938977 675938977 161137217 281160322 419696196 419696196 355212834 293543720 402035485 564187692 564187692 156404549 152077480 84411432 236266004 236266004 908005702 908005702 722777369 420420214 420420214 383520768 420435884 420435884 3330816 45196096 45196096 11575360 9593408 9593408 9491008 17618784 17618784 21163296 21163296 3883776 5340880 194694864 194694864 38385764 19913472 62462960 62462960 413338882 413338882 203180908 274608944 326060298 354454714 440525724 440525724 1017823633 1017823633 465158220 866796360 890069368 890069368 1040525343 1040525343 704766021 1033817612 1033817612 985575989 953799262 645625538 645625538 585055953 944165632 944165632 531777820 531777820 456544886 370593896 370593896 206705292 274911815 614601033 614601033 319985107 588242029 588242029 911667437 1021914201 1021914201 622462890 916205896 916205896 880618008 880618008 637010712 331746968 369664144 369664144 926426311 926426311 733102905 582079313 857392936 857392936 385930344 982155557 982155557 439359308 223871416 223871416 255443260 255443260 195766472 227353792 227353792 100270408 220374572 220374572 216659924 172115280 45035268 138024708 138024708 153432064 153432064 147023664 542513729 626219887 953414343 953414343 1037851772 1037851772 929039725 929039725 776349905 755372367 1043017776 1043017776 980394212 980394212 973737079 973737079 304942080 583282995 896029776 896029776 132350128 876713320 876713320 274014248 608720794 633976617 633976617 335072993 399457832 399457832 318832640 348621914 348621914 301228226 301228226 270740384 104916344 104916344 18221328 116080376 116080376 136327208 195584632 329352528 904037430 904037430 939009891 939009891 843827145 843827145 565355141 565355141 355776064 653288310 833619168 833619168 968887491 968887491 901330078 901330078 166859748 110299608 293285514 342688768 342688768 93397608 375188264 375188264 325658034 327349977 893986627 893986627 404898068 583027714 716906321 716906321 716251989 574352400 669398137 669398137 627609112 789628133 789628133 722747701 722747701 677681996 739531599 739531599 591708803 491053631 382403562 382403562 585217654 589832504 589832504 412929138 412929138 240147248 509467796 509467796 281988338 367568068 367568068 259851548 259851548 109547908 109547908 106012928 709167473 709167473 252016848 463606134 463606134 260313856 307211408 649323872 649323872 813925409 813925409 873166942 873166942 839794506 799263599 799263599 580948365 223599312 780033556 780033556 623120640 621156393 547567016 279807088 279807088 219528222 219528222 168813240 437017730 486631020 486631020 87077026 274040258 368941888 417671622 417671622 695578988 695578988 879903997 879903997 822123915 822123915 352716466 352716466 58197936 615695715 821745618 821745618 935206482 935206482 304281272 322564152 322564152 318382914 397137266 1015403547 1015403547 721417621 1005474493 1005474493 628509097 628509097 680524869 680524869 480957774 935849144 935849144 1009419823 1009419823 922580338 508004968 431113790 366766281 876478265 876478265 848413712 848413712 548938802 548938802 380335242 608843002 608843002 372296497 994967890 994967890 805419746 948355688 948355688 609745545 643402800 643402800 146849988 146849988 191071796 191071796 588182024 588182024 259392057 192156708 192156708 235538492 235538492 85724712 85724712 30019872 123289992 123289992 35692864 28324672 28448064 169608640 212241228 261080744 415551055 680820303 815927619 815927619 846888199 847439120 847439120 476499678 709670144 893984879 893984879 724904496 724904496 580296792 474621056 500570862 500570862 213257510 180392116 675779590 810413187 871787437 871787437 512624515 389611853 839586423 949487175 949487175 587472904 831130858 831130858 692583427 692583427 402907140 168903440 394420294 394420294 285450244 453995536 453995536 321776946 679600197 679600197 681125445 681125445 137659972 511683482 747288467 747288467 474021920 531134520 531134520 624854840 739313831 739313831 466278734 684638332 684638332 722283573 722283573 321004320 766627308 982853207 982853207 697086903 492231342 1038683597 1071885352 1071885352 498032703 595365852 601834592 601834592 824406744 824406744 893835208 893835208 843089178 562068232 351178832 41674640 247709312 247709312 202507408 240327836 247869596 247869596 39327308 38982288 38006928 576861717 576861717 171628308 738520244 738520244 608481569 587863089 760792609 760792609 604523229 571974760 631468521 631468521 177271424 274255600 510695228 510695228 932498043 932498043 236752630 563868176 563868176 441119943 429937161 368981945 348750930 713844728 713844728 574923137 36957952 537316552 554147074 554147074 540176898 540176898 280691712 280691712 12665984 74924360 272269568 342608384 343153026 343153026 8388672 8785408 8785408 300057168 300057168 271607554 271607554 323527488 323527488 66971378 74211040 729469481 729469481 237154600 237154600 599210593 696304182 916877893 1039662063 1039662063 955563119 856000661 856000661 772458864 841140349 1060009306 1060009306 1038822695 1038822695 581331872 581331872 491991726 491991726 373859480 640135209 640135209 374037395 374037395 152228388 152228388 240173068 240173068 608640265 608640265 81863112 215301268 256325820 256325820 625546533 625546533 743776768 743776768 742656141 591834941 591834941 719722712 719722712 559679117 168729313 159664868 167121024 167121024 191762924 191762924 34215440 706950216 706950216 591884100 591884100 218566772 218566772 100976664 445203498 445203498 232834816 232834816 144826692 54290020 68231432 419564800 419564800 388849048 388849048 183116500 637578684 637578684 635524664 635524664 253363444 655165345 655165345 194349692 31196832 46926352 46926352 69795904 81848704 622628312 622628312 95849920 95849920 29932096 346808228 480203854 879533413 879533413 499306734 995572385 995572385 168499802 127477368 127477368 596120667 596120667 348259994 931258753 931258753 318976112 322433085 322433085 235273740 235273740 726144649 726144649 1023542945 1023542945 893563414 893563414 541724820 868472918 868472918 835382359 879459120 879459120 784133957 363995256 535981776 535981776 529799564 529799564 326444066 241492100 241492100 313226144 313226144 295783488 93979752 93979752 75522176 106537808 175666872 410204258 497424750 989953086 989953086 554452224 556058913 556058913 168567044 637602830 973941783 973941783 447694913 1042917215 1042917215 156805858 473220368 770012546 770012546 880068716 880068716 91558464 48472088 54068704 60434992 592775310 1009728783 1009728783 507339791 805366785 842453330 842453330 817126915 818793536 818793536 309633170 11534914 8608960 13896384 552470080 553797440 553797440 31741056 31741056 16826400 365485952 365485952 286786978 425927008 425927008 291197100 446244438 446244438 411193608 472058424 472058424 320678892 433332260 529798944 529798944 739115013 739115013 445457624 493816408 493816408 612444200 713502869 713502869 963832288 963832288 886776528 886776528 445988973 1070920431 1070920431 504647348 339376018 795868605 1027392047 1027392047 978057244 978057244 911585778 603210813 484626894 540721234 540721234 474490920 317605958 317605958 612745880 612745880 538519041 270065667 55577120 55577120 46871760 63130560 63130560 49884096 49884096 12054208 591296 55996448 55996448 17912368 38066880 50463248 50463248 61637344 82363848 82363848 117638776 117638776 112263728 959874476 959874476 1014042012 1014042012 840773139 771733326 843362176 843362176 828375459 962189286 962189286 640722339 883443550 883443550 108869716 336906068 336906068 216665038 209981504 313417796 313417796 718754892 718754892 155096646 366737130 366737130 298109154 553984032 553984032 537135105 387736113 336192522 303203850 504266984 504266984 545524736 545524736 609485064 609485064 544476033 1011142736 1011142736 613610760 642594329 642594329 299158242 408109340 1046614665 1046614665 222958764 872025710 872025710 665407097 668404660 668404660 944967813 944967813 677895745 457968822 553990421 553990421 419834276 289568786 437673394 816856432 816856432 940673426 940673426 862455219 997818675 1005874689 1005874689 878865249 878865249 631346397 609988002 609988002 947916864 947916864 548798948 334404455 281384340 413891923 545803240 545803240 389386704 77339328 541172032 541172032 76503112 717040128 717040128 675208256 755171732 755171732 674737669 621892196 621892196 755153996 755153996 240522848 240522848 575145161 700457252 700457252 684200229 32703461 2097664 579339206 995403235 995403235 457918833 403124138 67373056 67108872 1046182994 1046182994 1016770189 554092729 871115417 871115417 384877530 384877530 373016800 903792696 903792696 604342272 567127745 622040864 622040864 664932729 664932729 623808299 623808299 675545740 675545740 877400193 877400193 758951062 642516905 173799060 173799060 118088760 223589036 423341488 563067224 636869080 636869080 462012604 302777552 281282754 113775108 112403648 112403648 19940992 19940992 84154504 745406593 745406593 225185196 225058188 468397326 468397326 273377796 395459094 866951554 866951554 854673413 748946424 736488067 555870354 382347184 262600780 574992698 967186791 967186791 183500244 704771836 755361581 788635929 788635929 540832851 381075539 302059712 344076354 651479154 651479154 372583194 372583194 271712448 365642880 365642880 298729338 298729338 388932448 388932448 316179088 104211888 54259216 51475216 40466304 558629025 558729249 706760800 706760800 872464395 872464395 680587294 680587294 671537157 917012182 917012182 1044304090 1044304090 1006841992 1063364193 1063364193 636343563 947184857 947184857 730388066 456578088 382441202 884643203 1005486319 1005486319 351998242 565306214 0 0 0 0 287383586 937431850 937431850 930087867 553812496 553812496 788937280 788937280 546903073 632054636 950407212 950407212 891570507 471076424 495328998 495328998 902636736 902636736 700969189 700969189 700276544 700276544 27325412 141274180 143714854 289081762 410060162 412549504 651379223 651379223 412234752 651751571 651751571 613231616 612368457 653838108 933004956 952163164 1035117610 1035117610 667892003 404816160 1060510501 1060510501 875875083 522625644 687898715 948957800 1005983329 1005983329 798337466 268043548 268043548 252211616 45196096 11575360 17310080 24519200 24519200 24443648 24443648 197370080 197370080 173875220 169530900 194694864 194694864 38385764 7913392 62462960 62462960 169275364 169275364 167895060 106476384 293683832 370270746 440525724 440525724 338690826 454156854 536293302 536293302 693885372 913484799 913484799 874520835 716577317 716577317 597039729 739716890 739716890 540677889 138885252 276959232 615792670 615792670 531777820 531777820 523555598 370593896 466363132 466363132 433574052 614601033 614601033 319985107 588242029 588242029 911667437 911667437 407882705 622462890 916205896 916205896 880618008 880618008 637010712 289789801 289789801 276319576 926426311 926426311 733102905 582079313 857392936 857392936 385930344 982155557 982155557 439359308 223871416 223871416 255443260 255443260 195766472 227353792 227353792 100270408 220374572 220374572 216659924 172115280 45035268 138024708 138024708 153432064 153432064 403720704 403720704 425835154 469688310 469688310 616034630 669701625 669701625 776349905 776349905 695156133 497124380 344582522 178652214 296623458 973737079 973737079 304942080 583282995 896029776 896029776 580228865 580228865 117678616 554858168 554858168 393339834 393339834 54585874 37477944 307426688 318832640 318832640 50332432 50332432 42997280 51438064 55174320 63858704 63858704 44834048 337920 136327208 195584632 329352528 428036786 428036786 489685806 857343092 857343092 1060132045 1060132045 794231779 355776064 653288310 833619168 833619168 968887491 968887491 708577344 287783202 287783202 110299608 385876378 385876378 49088016 49088016 377849794 377849794 338281680 425037458 436207638 436207638 404898068 583027714 716906321 716906321 716251989 644757944 669398137 669398137 551296584 106842137 126095616 126095616 111675264 80194568 80194568 73742848 33766016 135792708 277123232 303600864 332583666 333005844 333005844 425003666 425003666 125708728 404010510 404010510 144413584 48248768 99702240 99702240 68585600 56909824 56909824 121989560 121989560 195625972 195625972 463606134 463606134 251694218 307211408 453980672 453980672 813925409 813925409 839015494 923420178 923420178 799263599 799263599 580948365 259049988 780033556 780033556 755356178 776239241 776239241 1023538848 1029516975 1029516975 495357678 495357678 437017730 486631020 486631020 501548224 501548224 486152142 406229504 406229504 695578988 695578988 962729736 1029179055 1029179055 959504176 959504176 352716466 35934352 615695715 615695715 624742185 935206482 935206482 304281272 304281272 77329936 207841788 207841788 1015403547 1015403547 393815994 343662703 428010136 857547076 857547076 481481550 825027756 825027756 550761153 433687087 134231072 353837062 508004968 508004968 431113790 212881096 212881096 13681344 13681344 8388672 34127940 406422100 413262150 546309890 546309890 148917825 570925056 570925056 805419746 948355688 948355688 609745545 643402800 643402800 116002688 116002688 115871714 316928466 588182024 948116434 948116434 515717727 334639156 605864084 605864084 121671337 85724712 22285448 29217156 142667764 154453892 197727476 197727476 159171696 236232972 237521040 310765650 405063690 480587854 480587854 278918016 209667648 209667648 560752564 560752564 581003520 581003520 579127377 372170010 437264344 911133887 911133887 628033702 681742949 687424293 687424293 1042073245 1042073245 962220970 962220970 874522409 931218466 931218466 1045483372 1045483372 755361492 755361492 734126325 717430785 436219937 151236658 394420294 394420294 285450244 825879760 825879760 751424101 751424101 679600197 755423277 912700447 912700447 627783081 747288467 777550101 777550101 451126998 451126998 316620498 427230277 427230277 290141346 684638332 1024054188 1024054188 813381507 525601470 525601470 302011656 302011656 31671328 31671328 430313920 1071885352 1071885352 947913799 331236990 601834592 601834592 824406744 824406744 317735707 356069376 356069376 15882696 15541696 7622400 7622400 11272960 11272960 1348992 2097408 35540096 38982288 38982288 38006928 576861717 576861717 171628308 738520244 738520244 608481569 587863089 760792609 760792609 604523229 575819000 631468521 631468521 43709540 274255600 906155646 906155646 775036013 775036013 236752630 961441656 961441656 576021986 585631185 585631185 287575283 241172892 165718264 768819872 768819872 768482541 537316552 350697930 350697930 821831619 821831619 810555841 545652481 806243840 812645763 812645763 605913344 343153026 284764098 284764098 274179522 311160914 311160914 337855898 337855898 323527488 381949528 381949528 342919458 283036672 283036672 218670008 218670008 397509266 696304182 696304182 247535692 642167948 642167948 457292606 457292606 32118240 434171996 1060009306 1060009306 1067353488 1067353488 601098993 581331872 265208754 373859480 373859480 640135209 640135209 374037395 374037395 352318794 469544868 469544868 240173068 608640265 608640265 81863112 215301268 256325820 541798785 625546533 625546533 256606017 78287285 709705456 709705456 706302361 804531380 804531380 608247945 739385792 739385792 439390534 192951988 444807099 639770729 639770729 706950216 706950216 591884100 923497884 923497884 941097577 941097577 978404394 978404394 712021102 956491446 956491446 76939528 69212744 419564800 419564800 492335704 492335704 325027382 637578684 637578684 858569442 858569442 374515200 374515200 194349692 345295434 345295434 1029623919 1029623919 680022156 680022156 622628312 674024709 822946566 822946566 158607652 346808228 480203854 481873254 481873254 428553318 192921840 399074034 399074034 331998450 331998450 395576506 395576506 71902248 83895624 318976112 377497208 377497208 357744328 99845784 96856424 63698160 18412292 1023542945 1023542945 893563414 893563414 904970912 904970912 801292360 835382359 879459120 879459120 747246669 565244092 565244092 535981776 711345110 711345110 451975573 852675153 852675153 740430093 706441796 295783488 168696852 168696852 258031952 258031952 175666872 370766096 389715594 389715594 755916295 755916295 556058913 556058913 751305933 751305933 973941783 973941783 406416435 411954246 411954246 209641356 473220368 473220368 44673310 65221774 534522324 534522324 264928320 585948514 881602571 979841079 1009728783 1047353272 1047353272 1043580215 1043580215 876405112 689479469 76287048 273965704 273965704 148003276 209843849 538184193 552470080 552470080 955284491 955284491 758490844 758490844 503528089 464645170 1059967105 1059967105 769812260 769812260 740832680 81552672 411193608 411193608 394376232 178195252 433332260 433332260 353117220 739115013 739115013 445457624 493816408 493816408 612444200 713502869 713502869 562369062 692065471 886776528 886776528 513278396 916201512 916201512 1061504462 1061504462 369172506 369172506 507625604 978057244 978057244 342252862 484626894 484626894 836508080 836508080 564268339 600377488 600377488 578814033 46768417 23643552 30934752 66875360 66875360 33394672 63130560 63130560 49884096 54401776 59850336 59850336 37431072 57543696 57543696 65802112 65802112 50463248 61637344 61637344 53150496 117638776 288369932 288369932 856256760 856256760 988808948 988808948 136455461 789804546 789804546 294261858 297285290 359212458 359212458 183042174 377578960 377578960 108869716 336906068 336906068 243767812 209981504 313417796 313417796 718754892 718754892 579474113 366737130 573104504 573104504 649472441 649472441 567873709 151073105 712088712 793985152 793985152 832961072 848727040 848727040 609485064 609485064 544476033 1011142736 1011142736 192995412 330728224 330728224 552599700 1055917389 1055917389 1046614665 856817809 885788860 885788860 665407097 668404660 668404660 517285496 327077618 408051088 457968822 457968822 439331104 439331104 289568786 289568786 423612166 423612166 165842472 525343036 862455219 997818675 1005874689 1005874689 878865249 878865249 631346397 753886824 753886824 947916864 960594469 960594469 537795585 537795585 201329708 33992196 177695304 177695304 174808452 682929424 706482181 706482181 717040128 717040128 675208256 675208256 9359109 79044356 79044356 70944836 228160628 228160628 193242512 218637749 575145161 700457252 700457252 973735170 973735170 896676277 896676277 995403235 995403235 457918833 403124138 23333288 604249230 1046182994 1046182994 1016770189 673634565 1068935256 1068935256 384877530 384877530 382383752 903792696 903792696 604342272 567127745 567127745 598349138 664932729 664932729 873556006 962961666 962961666 743751686 877400193 877400193 758951062 642516905 58221584 55213224 118088760 223589036 223589036 563067224 636869080 636869080 302777552 449365206 521560806 521560806 470760462 383453908 19940992 19940992 84154504 258115772 258115772 78374860 78374860 276310422 276310422 499273320 499273320 398832290 351722442 374289092 374289092 309599438 751444873 751444873 256301244 996626588 996626588 842664731 183500244 704771836 755361581 788635929 788635929 579550672 579550672 552433152 344076354 651479154 901868907 901868907 277972474 545818216 909999393 909999393 663511240 663511240 2490688 18891008 18891008 2392320 3499298 286125570 286125570 269740032 2632960 778490902 778490902 361459990 1035929928 1035929928 948304197 738670605 254416188 764287356 764287356 760929321 403704964 403704964 385800004 385800004 181392266 181392266 146503028 222449960 382441202 382441202 1005486319 1005486319 351998242 565306214 347847038 347847038 236973620 236973620 287383586 287383586 18923808 302170402 553812496 553812496 370538560 1041363550 1041363550 882188891 757635400 757635400 345507394 471076424 495328998 495328998 902636736 902636736 700969189 700969189 700276544 700276544 27325412 141274180 141274180 164334052 164334052 412549504 651379223 651379223 412234752 893911616 893911616 613231616 612368457 653838108 933004956 952163164 1035117610 1035117610 667892003 525540386 1060510501 1060510501 875875083 405429773 687898715 948957800 1005983329 1005983329 798337466 405148928 268043548 252211616 17303072 3670016 17310080 141362192 141362192 134744208 174391696 197370080 197370080 173875220 169530900 36202452 48254224 167960336 167960336 150639872 269939712 449937280 449937280 147233748 109997768 388247448 388247448 386229672 386229672 169895170 454156854 536293302 536293302 693885372 913484799 913484799 874520835 716577317 716577317 658478041 1004839004 1004839004 540677889 202347446 928515311 985632258 985632258 658942960 658942960 523555598 71322418 466363132 466363132 433574052 170004756 170004756 249831628 249831628 136716544 80276600 599715584 599715584 315162824 151196354 115392984 115392984 77900912 77900912 109586576 109586576 276319576 276319576 103572242 34095104 34128912 34128912 34128912 16811440 6291840 37752080 37752080 35914896 174721568 174721568 50331680 33554448 16778800 50073552 50073552 40446016 1049088 230297272 230297272 134126036 130962080 25039264 33534592 149497284 403720704 403720704 425835154 469688310 536496100 616034630 669701625 674107909 674107909 124130744 841259499 947970246 947970246 820519107 820519107 846139665 846139665 537403680 830030981 830030981 430818823 810942464 810942464 838793920 838793920 554858168 438920967 574710018 963407398 963407398 446683986 446683986 49516448 50332432 50332432 42997280 51438064 55174320 63858704 63858704 44834048 40419120 47755760 47755760 185996705 185996705 579534998 787481565 1018216594 1018216594 1060132045 1060132045 794231779 458971200 206936604 733890414 733890414 628171969 363866038 363866038 287783202 287783202 131425144 385876378 385876378 49088016 388315640 388315640 377849794 338281680 452591909 693761997 693761997 890678887 1016635534 1016635534 68115813 644757944 644757944 63186288 551296584 579224913 580437585 580437585 574663488 111675264 80194568 80194568 73742848 430080592 430080592 278713990 303600864 332583666 332583666 167483138 425003666 425003666 283589058 404010510 422170762 422170762 318913106 369313298 369313298 286963736 56909824 56909824 121989560 222105400 222105400 146817248 159432804 159432804 61055556 313635664 453980672 453980672 152278042 520608776 520932414 923420178 923420178 779357085 779357085 166861673 259049988 357617828 1008011523 1008011523 815997084 776239241 1069979633 1073229390 1073229390 495357678 495357678 266036840 455279102 455279102 501548224 501548224 486152142 418891370 418891370 531399794 531399794 962729736 1029179055 1029179055 959504176 959504176 384958728 33603600 346309776 346309776 114054602 110415096 50114656 58720176 383385968 383385968 369485850 207841788 345680256 393815994 393815994 190241460 688214924 857547076 857547076 481481550 825027756 825027756 550761153 433687087 734862148 734862148 552858377 1000859999 1000859999 690144242 937994415 937994415 709627029 861742627 861742627 552166553 413262150 546309890 546309890 148917825 570925056 570925056 290580369 290580369 290456226 44987490 60281680 60281680 116002688 116002688 115871714 316928466 317371858 948116434 948116434 1017914924 1017914924 708960342 708960342 122261715 88741032 106421818 106421818 142667764 154453892 197727476 197727476 150663728 236232972 237521040 371156106 371156106 349125834 441364664 441364664 184836644 168618448 560752564 560752564 175424641 137095572 197521776 461893228 461893228 911133887 911133887 628033702 681742949 687424293 687424293 1042073245 1042073245 962220970 962220970 874522409 931218466 931218466 1045483372 1045483372 923011146 755361492 734126325 990101504 990101504 454103077 580043857 729972819 729972819 825879760 1047416012 1047416012 751424101 244039801 755423277 912700447 912700447 627783081 394779529 777550101 777550101 1041994106 1041994106 804781731 427230277 427230277 290141346 405157128 1024054188 1024054188 813381507 525601470 525601470 303284994 791987509 791987509 376229549 826523203 948437063 948437063 947913799 801239996 801239996 541513857 533148238 389207530 389207530 867275130 867275130 543875944 344475920 43296464 251183872 251183872 250432128 250432128 504817612 504817612 203475266 559242392 631977321 674865429 674865429 661717177 97252273 25182816 25182816 10436160 69735576 725634888 725634888 575819000 575819000 49449737 568426992 568426992 906155646 906155646 775036013 775036013 724828616 961441656 961441656 576021986 585631185 585631185 287575283 229157173 719855952 768819872 875182529 875182529 547970371 816314691 816314691 821831619 821831619 810555841 545652481 806243840 812645763 812645763 605913344 268831368 284764098 284764098 274179522 311160914 311160914 337855898 337855898 44704258 381949528 381949528 342919458 694208039 694208039 218670008 432860070 722553501 722553501 436486186 204139932 491779256 491779256 569354732 569354732 226112573 372016256 876949954 876949954 1067353488 1067353488 601098993 265208754 265208754 290195196 312611154 312611154 67317768 152256566 352318794 352318794 469544868 469544868 76620360 76549896 146290188 146290188 49349696 216481093 541798785 541798785 256606017 256606017 205832476 709705456 709705456 706302361 804531380 804531380 608247945 739385792 739385792 439390534 192951988 444807099 639770729 639770729 667824240 667824240 584556272 923497884 923497884 941097577 941097577 978404394 1019742148 1019742148 956491446 956491446 76939528 244906840 244906840 137313540 492335704 492335704 325027382 814263368 814263368 858569442 858569442 656164184 656164184 563431345 596978289 596978289 1029623919 1029623919 680022156 680022156 620075980 674024709 822946566 822946566 158607652 344016960 344016960 167166668 167166668 138417536 138417536 399074034 399074034 331998450 331998450 395576506 395576506 71902248 118105384 118105384 377497208 377497208 357744328 215032012 250710540 778421193 778421193 135427616 135427616 73141896 72951808 904970912 904970912 621572480 621572480 794864116 794864116 345121380 565244092 775117652 855365525 855365525 764738994 764738994 852675153 852675153 740430093 706441796 135031652 168696852 168696852 258031952 258031952 131622276 370766096 389715594 452462550 755916295 755916295 319832228 255852732 751305933 751305933 604504159 1043076154 1043076154 1011605221 546228793 209641356 209641356 703084828 703084828 598551921 558420512 534522324 264928320 585948514 881602571 979841079 979841079 1047353272 1047353272 1043580215 1043580215 906131280 689479469 916073798 916073798 515186266 148003276 209843849 538184193 546099136 546099136 955284491 955284491 758490844 758490844 503528089 642444804 1059967105 1059967105 769812260 769812260 740832680 123962552 293726402 394376232 394376232 289587216 521591378 521591378 484755015 788439745 788439745 867577789 867577789 1008066831 1008066831 885112291 589814963 780325333 820430302 820430302 788054079 1011163390 1016417470 1016417470 1061504462 1061504462 756411887 768190053 768190053 892728785 892728785 894191046 894191046 763921509 836508080 836508080 564268339 600377488 600377488 578814033 46768417 23643552 20980068 142096128 142096128 66613216 170398432 170398432 166533392 166533392 59850336 59850336 38228880 57543696 57543696 65802112 65802112 39372432 18519776 20576416 54462752 218585088 288369932 288369932 674359621 674359621 988808948 988808948 540542534 827585486 827585486 772941314 977467714 977467714 581745999 746973261 915244054 915244054 48243802 136191068 369407040 369407040 438521364 438521364 169652502 142997908 579474113 579474113 142685952 573104504 573104504 649472441 649472441 567873709 151073105 712088712 793985152 793985152 832961072 848727040 848727040 698187437 698187437 551308137 666896856 719327504 719327504 1037272996 1037272996 552599700 1055917389 1055917389 856817809 856817809 885788860 885788860 665056939 665056939 651795052 517285496 16067520 45334976 188665168 188665168 439331104 439331104 196022352 187119924 423612166 423612166 165842472 525343036 525343036 291571654 153315018 294695736 401180746 478211204 478211204 753886824 753886824 518222248 960594469 960594469 609202961 537795585 388286778 400379642 840747520 840747520 606151968 682929424 772845297 772845297 710412544 710412544 686401984 686401984 43326853 263594760 263594760 159516708 228160628 228160628 193242512 193242512 111674432 679022901 679022901 973735170 977900533 977900533 896676277 855791568 206358028 522048950 828552355 828552355 604249230 728496200 879360236 879360236 673634565 1068935256 1068935256 383936720 337703024 382383752 382383752 349572330 349572330 43662410 881926362 881926362 546956865 546956865 873556006 962961666 962961666 743751686 743751686 677398916 85418124 58221584 58221584 24241056 6500896 40588688 40588688 38175648 368105680 368105680 337241088 449365206 521560806 521560806 470760462 383453908 307282578 225859894 84154504 104992920 254939440 254939440 111387260 276310422 276310422 499273320 499273320 398832290 351722442 374289092 374289092 309599438 751444873 751444873 256301244 996626588 996626588 842664731 371218016 658256553 658256553 111723864 85126152 579550672 579550672 552433152 315224114 584085841 901868907 901868907 339797496 545818216 909999393 909999393 663511240 663511240 350742656 350742656 297010432 70568192 20778752 286125570 286125570 538321833 1028492939 1028492939 778490902 361459990 1035929928 1035929928 948304197 738670605 254416188 764287356 764287356 760929321 403704964 403704964 278538971 730239973 730239973 245576028 3410688 222449960 359981540 359981540 366117408 567051809 567051809 21271744 356065439 729286581 729286581 530589677 211812684 211812684 512961239 947183705 1052896207 1052896207 643163178 1041363550 1041363550 882188891 314259282 478183460 478183460 243405336 455136868 741370276 741370276 678232133 678232133 78660641 14435328 14435328 13685632 7789440 139631586 301685602 418856518 418856518 554123618 554123618 155324580 893911616 893911616 210510468 260090544 714098624 714098624 407617866 407617866 248911956 248911956 525540386 525540386 300082568 300082568 310383378 310383378 481407148 481407148 449408000 419829798 405148928 96260352 39797024 39797024 4391680 5320320 141362192 141362192 134744208 174391696 183808404 183808404 149125444 149125444 36202452 48254224 167960336 167960336 150639872 269939712 449937280 449937280 182543044 128321924 388247448 388247448 505217462 678172042 950718362 950718362 116918232 58234744 123673329 123673329 100040089 670439400 670439400 658478041 658478041 1004839004 1004839004 612941928 612941928 928515311 985632258 985632258 658942960 658942960 319477406 429265654 429265654 155636050 261945805 624742185 624742185 500468319 977755785 977755785 790115969 599715584 599715584 555360806 1004880268 1004880268 856609800 856609800 636216448 291725873 291725873 322938389 841186373 841186373 698947377 580791873 855710760 855710760 496658728 860434657 860434657 290135336 203688228 172755472 255177844 255177844 261613440 261613440 218119704 218349500 255792456 261226596 261226596 230297272 134126036 135322244 138287620 138287620 46490848 446921040 446921040 173378374 200988660 536496100 536496100 447987626 674107909 674107909 124130744 841259499 947970246 947970246 820519107 820519107 846139665 846139665 537403680 832571906 832571906 815024293 815024293 810942464 838793920 838793920 828933504 439371265 574710018 963407398 963407398 446683986 446683986 310096416 51854402 22848720 13190640 46205024 54864048 54864048 45517472 49381440 49381440 153394280 153394280 185996705 185996705 579534998 787481565 1018216594 1018216594 481448009 414653104 862337767 862337767 52877616 733890414 733890414 628171969 363340214 514860302 514860302 414786760 516490840 516490840 304391834 95421288 388315640 388315640 289548544 390481158 452591909 693761997 693761997 890678887 1016635534 1016635534 705520688 705520688 126425248 130232568 130232568 579224913 580437585 580437585 574663488 57280820 144741604 150872004 150872004 430080592 430080592 409473794 273286214 458512064 458512064 425239270 451226070 623867225 623867225 1007123694 1007123694 422170762 644489446 790761789 790761789 738987021 738987021 610083120 610083120 222355640 222355640 218138896 159432804 159432804 61055556 313635664 313635664 781222194 1065609449 1065609449 130287864 671371264 919550852 919550852 779357085 426293430 426293430 285310476 1008011523 1008011523 815997084 730046965 1069979633 1073229390 1073229390 404613228 271657552 336857610 455279102 522882618 522882618 266954728 236225822 418891370 418891370 753929568 923931671 956440031 984613719 984613719 746457147 384958728 384958728 349752416 68193800 68193800 575575601 575575601 571160577 571160577 383385968 383385968 369485850 195434868 612146242 825798707 825798707 382861425 852048230 852048230 213909516 213909516 949231618 949231618 680864325 279446850 734862148 734862148 552858377 1000859999 1000859999 690144242 1038256569 1038256569 709627029 861742627 861742627 574097169 815696977 815696977 665984586 108407337 558091144 558091144 538413073 290580369 290456226 44987490 60281680 60281680 127207864 127207864 124004984 124004984 606806200 606806200 486286340 1017914924 1017914924 708960342 708960342 323548256 243500278 704845087 704845087 844797010 855708000 855708000 150697012 150697012 53736240 77283904 371156106 371156106 349125834 441364664 441364664 184836644 30155716 705785344 705785344 701010965 197788833 197521776 461893228 461893228 209430786 360391018 360391018 471141550 490369998 490369998 229804802 91437866 133269818 133269818 556393761 889515122 910287003 910287003 923011146 923011146 687867904 1009250633 1009250633 990101504 454103077 580043857 729972819 729972819 558797902 1047416012 1047416012 234973467 214570188 371982724 371982724 164376058 338576856 338576856 315571410 378719680 1041994106 1041994106 804781731 429450810 429450810 362072682 663802450 663802450 776131329 807477563 807477563 322212275 303284994 791987509 791987509 376229549 826523203 826523203 153405364 153405364 801239996 801239996 541513857 545382465 572278224 572278224 867275130 867275130 543875944 921378232 921378232 573246242 833293794 833293794 869799779 993107807 993107807 616970443 559242392 631977321 674865429 674865429 661717177 764008436 764008436 739902689 570495505 548425373 725634888 725634888 606132293 756072716 756072716 568426992 650285469 707545432 707545432 106818480 106818480 724828616 724828616 617493928 596127925 704120805 704120805 725405493 725405493 719855952 719855952 875182529 875182529 547970371 816314691 816314691 277437697 10934592 8451136 337265088 337265088 81846274 41763088 335681802 342942728 342942728 326043440 326043440 92395904 92395904 391715680 391715680 42722344 85190056 85190056 64667628 694208039 694208039 254445356 432860070 1003523316 1003523316 130484068 204139932 491779256 491779256 660003884 660003884 747904937 747904937 481958371 212160628 260210798 998376764 998376764 350579688 351278226 351278226 312611154 312611154 67317768 545587552 545587552 92604705 92538984 76620360 229902088 229902088 621760292 621760292 553262913 205770537 149161348 35787024 36444712 84445828 205832476 220807816 220807816 104931480 72683656 80751168 80751168 206527170 282508428 304873984 305925906 305925906 1576210 1024 656721324 680037413 680037413 1015752476 1015752476 850531155 788738109 788738109 1019742148 1019742148 432013702 432013702 359994348 455347716 455347716 137313540 236196120 236196120 137763588 814263368 814263368 776767548 558417057 656164184 656164184 563431345 596978289 596978289 607898920 607898920 204954629 302779410 398516430 398516430 356330656 353665234 353665234 344016960 377591828 480203474 483016962 483016962 403780288 403780288 123815016 123815016 95112824 160548500 160548500 33532872 118105384 150776228 261455304 261455304 215032012 215032012 250710540 778421193 778421193 1015781437 1015781437 966077031 428479059 856352162 856352162 621572480 621572480 813796484 1005751184 1005751184 495226016 775117652 855365525 855365525 764738994 764738994 383797448 350291152 369370968 379358480 379358480 151213064 151213064 79208896 118243544 118243544 350482890 350482890 452462550 452462550 305248206 139616430 18948384 65824 604504159 604504159 1043076154 1043076154 1011605221 554337301 123026365 103002184 703084828 703084828 598551921 558420512 650192764 650192764 588957394 588957394 533740030 533740030 498022493 498022493 338568475 906131280 906131280 924321209 924321209 916073798 515186266 281276610 281276610 11535168 546099136 739809753 739809753 542903937 542903937 224450240 235803036 642444804 923221035 923221035 657845049 158309876 158309876 123962552 293726402 465642656 465642656 319390870 521591378 521591378 484755015 788439745 788439745 918181152 918181152 1008066831 1008066831 885112291 589814963 780325333 820430302 820430302 788054079 1011163390 1033479095 1033479095 1006215783 978650963 978650963 768190053 768190053 892728785 892728785 894191046 894191046 763921509 277634117 1007555611 1007555611 302743683 276919384 237650204 397001628 774172000 774172000 699470368 432405664 66613216 170398432 170398432 166533392 166533392 45396848 38228880 38228880 22979744 23762464 49714304 49714304 78521752 78521752 43904768 54462752 218585088 218585088 203981420 203981420 86852128 86852128 540542534 540542534 827585486 827585486 772941314 977467714 977467714 581745999 746973261 915244054 915244054 616638667 575493760 369407040 413867008 438521364 438521364 431720548 59281476 2886912 142685952 142685952 24981408 24981408 18010656 18010656 25360224 25360224 107227664 107227664 70780680 143043936 143043936 108447733 698187437 698187437 551308137 666896856 719327504 719327504 1037272996 1037272996 766870999 848991604 848991604 1008260982 1008260982 877007930 877007930 855906849 303234064 303234064 140256580 24565312 22190144 462977568 462977568 33923120 196022352 196022352 155004708 33759028 26856460 254934252 265773276 265773276 201343400 90210316 294695736 401180746 666911760 666911760 708941017 708941017 692269221 519213484 609202961 609202961 292682915 411250758 411250758 882342564 882342564 606151968 738512574 943250094 943250094 805979454 710412544 686401984 686401984 43326853 422848772 422848772 369715518 522581018 522581018 299841824 44175696 67176480 67898376 67898376 214589473 977900533 977900533 780850269 780850269 206358028 522048950 828552355 828552355 422186022 728496200 728496200 107260989 130598136 130598136 26872456 120709944 120709944 368309226 368309226 366814280 349572330 537891603 881926362 881926362 546956865 546956865 664329854 664329854 527920919 272629760 709809957 928189348 928189348 692315265 1013703562 1013703562 359905325 140197668 140197668 995238834 995238834 578675460 337241088 318825274 220235520 138394524 284807768 429130630 429130630 225859894 298977266 298977266 254939440 254939440 111387260 167970120 167970120 254889164 254889164 457430380 457430380 180714862 224860412 224860412 535033296 535033296 170128664 170128664 158590928 309200472 371218016 371218016 133113968 111723864 34739712 70646144 70646144 315224114 315224114 53051490 63529026 63529026 339797496 363646314 363646314 276752720 359470864 359470864 350742656 350742656 297010432 70568192 22151680 22151680 3217411 538321833 1028492939 1028492939 608988166 560122459 481945422 979236312 979236312 918895321 356113680 698453420 715181009 782149537 932795094 932795094 278538971 810068566 810068566 724373769 809533907 809533907 415615713 357415481 366117408 567051809 567051809 543387343 356065439 729286581 729286581 530589677 211812684 211812684 512961239 947183705 1052896207 1052896207 643163178 643163178 738296844 738296844 429393510 478183460 478183460 151011406 5394944 741370276 741370276 678232133 693028236 693028236 150017152 150017152 538844673 550556225 550556225 697060357 697060357 682935457 554123618 558105732 749996877 749996877 610281645 610281645 603979785 714098624 714098624 878009362 878009362 577594512 881915456 936950892 936950892 130157632 130157632 86640232 86640232 80452000 80452000 107586856 109260584 109260584 96260352 39797024 39797024 5443616 17334304 17334304 17327104 5953152 5953152 1706112 4977792 4977792 767104 734208 49152 4227200 14587472 80796360 80796360 143837636 182543044 182543044 128321924 128321924 312501114 505217462 678172042 950718362 950718362 549522512 872940675 897751611 918354953 918354953 880188570 670439400 582788289 446495746 866876758 866876758 612941928 612941928 554173473 860671178 991479351 991479351 375708178 827619726 913801235 913801235 537342455 289094884 624742185 765228070 810290307 977755785 977755785 790115969 418445104 418445104 555360806 1004880268 1004880268 856609800 856609800 636216448 291725873 291725873 322938389 841186373 841186373 698947377 580791873 855710760 855710760 496658728 860434657 860434657 290135336 203688228 172755472 255177844 255177844 261613440 261613440 218119704 218349500 255792456 261226596 261226596 38421976 13074564 135322244 138287620 138287620 145596548 446921040 816886593 816886593 554992483 667179235 667179235 656672860 954462672 954462672 823119832 916312084 916312084 199244916 201251540 702206994 734262069 1030875479 1030875479 832571906 832571906 815024293 815024293 1024493544 1035612036 1035612036 828933504 439371265 146804253 286607510 461055382 461055382 310096416 310096416 392303034 392303034 388797554 333655024 54864048 54864048 45517472 49381440 49381440 153394280 153394280 145216040 143465929 285122340 285122340 851358064 851358064 481448009 414653104 862337767 862337767 676163060 615139176 946865185 946865185 456689447 514860302 514860302 414786760 516490840 516490840 46419008 95421288 297011336 368051178 368051178 390481158 421669942 421669942 507515594 906792974 906792974 594392584 705520688 705520688 126425248 130232568 130232568 119016728 119016728 58121136 56529184 57280820 144741604 163580358 163580358 395592248 409473794 409473794 429540000 458512064 458512064 856821043 856821043 623867225 623867225 1007123694 1007123694 277423170 644489446 790761789 790761789 738987021 738987021 610083120 610083120 765472457 765472457 218138896 890006639 890006639 789462164 927234775 927234775 783709065 1065609449 1065609449 130287864 299426024 1070609328 1070609328 167322828 426293430 426293430 810564496 810564496 806619651 806619651 540280967 992287108 992287108 444679940 444679940 271657552 336857610 374247552 522882618 522882618 266954728 236225822 355159466 355159466 753929568 923931671 956440031 956440031 987891505 1024594479 1024594479 376842663 349752416 117441648 391152744 575575601 575575601 571160577 571160577 684292212 684292212 505453816 697986962 791994341 825798707 825798707 836236422 852048230 852048230 155387428 612632649 949231618 949231618 803586624 607964937 607964937 293752878 520093942 520093942 424853840 675405957 1038256569 1038256569 576985238 100665856 538968072 574097169 815696977 815696977 665984586 50780208 48705536 538413073 538413073 339646762 339646762 123747074 78108336 106970576 127207864 127207864 124004984 326446002 1045036976 1045036976 486286340 761418478 761418478 568590592 323548256 323548256 243500278 704845087 704845087 844797010 855708000 855708000 457388214 223420442 442430600 442430600 227794855 964093701 964093701 631378281 925553979 1063879536 1063879536 705785344 705785344 701010965 589225264 589225264 602194032 602194032 80931778 360391018 360391018 355864074 355864074 338566410 91437866 665068920 665068920 1016512921 1016512921 889515122 910287003 910287003 545260800 687867904 687867904 1009250633 1009250633 856889739 273056517 195035508 23725597 702232341 702232341 105448160 185546204 185546204 238126353 238126353 346172642 346172642 732235344 732235344 442598778 442598778 378719680 881824709 881824709 709280333 790453046 790453046 663802450 663802450 776131329 807477563 807477563 802245002 802245002 635488372 485632880 114559964 306441476 345906762 649027710 766559085 766559085 210924305 574668976 574668976 572278224 572278224 362590432 365928368 365928368 921378232 921378232 573246242 833293794 833293794 869799779 993107807 993107807 616970443 542116737 595277745 595277745 193986856 179432164 764008436 764008436 739902689 570495505 548425373 548425373 606132293 606132293 756072716 756072716 237633816 673466909 673466909 754025672 772351005 772351005 231021292 617493928 785384157 785384157 704120805 704120805 725405493 725405493 182552669 237250632 344198544 578960601 578960601 346895432 650906770 650906770 812065027 812065027 545993793 610540288 906495771 907461912 907461912 342942728 342942728 326043440 326043440 71833760 351216384 391715680 391715680 321586106 110307016 110307016 80713202 236590620 413337264 501484014 501484014 1003523316 1003523316 847963597 997906359 997906359 980977386 660003884 879757999 879757999 747904937 598137125 781014216 986157475 998376764 998376764 350579688 351278226 351278226 620344808 620344808 589711632 877199313 877199313 478867762 478867762 346624092 346624092 229902088 621760292 621760292 553262913 205770537 885837003 885837003 560082163 560082163 316474434 251806884 387849352 387849352 1010072887 1010072887 965997159 965997159 664123460 304873984 305925906 305925906 671351461 671351461 707068976 707068976 941925508 1015752476 1015752476 850531155 788738109 788738109 685359126 793993757 1020261450 1020261450 359994348 455347716 503711032 503711032 341448330 507127646 507127646 268603116 1058141237 1058141237 558417057 897883737 897883737 33825872 33825872 114688 584474769 750153948 750153948 1055921668 1055921668 398516430 356330656 353665234 353665234 369980508 377591828 990083307 990083307 483016962 677398337 677398337 141763472 141763472 260791440 627127049 627127049 224868780 686505537 686505537 261455304 648317100 648317100 252446332 721738592 721738592 644126220 1015781437 1015781437 966077031 967784858 967784858 856352162 68583087 984404316 1064328662 1064328662 1005751184 913598780 913598780 838617508 692686245 560748423 543660941 966864119 973599895 1005390510 1005390510 446219636 15743768 53478192 151769808 172057948 172057948 106745496 417431138 417431138 285301908 285301908 237235604 311628560 311628560 390800894 390800894 343962315 480775460 554337301 622532813 622532813 757594169 757594169 708645201 149487497 608044414 650192764 650192764 588957394 588957394 533740030 533740030 498022493 658568986 845911051 846381834 846381834 924321209 924321209 403582748 339275780 336726656 281276610 12635520 12635520 739809753 739809753 408457560 408457560 620888104 620888104 685960024 685960024 606627200 23183369 132154676 273169804 273169804 146841636 465642656 465642656 319390870 415237184 415237184 168852260 168852260 52951344 918181152 918181152 413526342 447430420 447430420 199442264 191604144 143280876 218759592 218759592 32642016 1033479095 1033479095 1006215783 978650963 978650963 327434944 169216620 602145816 602145816 413714921 975287155 975287155 944361478 1007555611 1007555611 302743683 276919384 579601144 881394349 881394349 774172000 699470368 432405664 61099872 61099872 411379782 422404674 422404674 295199040 275974240 25441154 43930578 290478690 290478690 310431856 310431856 78521752 43904768 43904768 211927392 277924872 277924872 540806913 540806913 356253865 411043584 411043584 475432476 475432476 454298166 327816306 369361245 387737892 941180618 941180618 847815837 616638667 575493760 177128256 413867008 413867008 431720548 431720548 27966982 22764324 28171108 141831532 208140684 225236076 225236076 226654576 226654576 44298576 174398740 174398740 49620032 49620032 18241728 216384148 216384148 213411932 721470384 721470384 561174053 788213828 788213828 703656119 766870999 766870999 599269218 1008260982 1008260982 877007930 877007930 855906849 303234064 303234064 288618900 293039010 301663458 462977568 462977568 318770208 462583396 462583396 444807254 162150966 173451392 254934252 265773276 265773276 273321292 323802534 323802534 238567594 666911760 666911760 708941017 708941017 692269221 13749281 59138276 145749252 270703616 411250758 411250758 882342564 882342564 291025933 738512574 943250094 943250094 805979454 942090689 942090689 614565336 676992645 807610246 807610246 369715518 522581018 522581018 369418370 293026080 374674082 462453232 462453232 471712648 751447312 751447312 130293776 96807144 373481748 476262798 587797950 587797950 691257444 691257444 724595149 857774922 857774922 639371141 793514515 793514515 153309584 153309584 933368064 933368064 564724808 930084473 930084473 615558282 377561178 814335385 814335385 664329854 995293759 995293759 1003056332 1003056332 928189348 692315265 1013703562 1013703562 649429448 140197668 140197668 995238834 995238834 578675460 318825274 318825274 257425472 25703964 15433472 429130630 429130630 193860400 298977266 298977266 220337076 202506764 39603020 167970120 167970120 254889164 254889164 457430380 457430380 180714862 49618640 49618640 130207992 130207992 71731312 105566784 105566784 113515008 113515008 105793544 85334568 85671976 85671976 68597280 15221120 15221120 9155840 8648960 31535104 38928848 38928848 32572128 22096800 59811648 59811648 64548096 64548096 27871136 21759712 22151680 288430976 305324160 305324160 302517266 449219964 449219964 560122459 560122459 481945422 979236312 979236312 918895321 449087562 698453420 715181009 782149537 932795094 932795094 202473616 810068566 999306087 999306087 809533907 809533907 506056409 1072411654 1072411654 543789665 543789665 543387343 155255388 155255388 1049494968 1049494968 767953057 690432533 280103899 440403970 440403970 115647954 75276760 568600776 914621472 914621472 429393510 429393510 350157958 6033482 873498640 873498640 589048459 689785505 693028236 693028236 150017152 150017152 538844673 550556225 550556225 697060357 697060357 682935457 543213569 558105732 749996877 749996877 610281645 610281645 809009772 809009772 878833664 878833664 878009362 577594512 881915456 936950892 936950892 820381805 825490902 918552411 918552411 413367680 577410064 738559388 738559388 587039616 587039616 545424892 11085120 7930048 17334304 137326896 137326896 137110032 171434320 171434320 45736528 52784240 52784240 53037584 53037584 171496128 171496128 143917072 110135808 110135808 80012096 87275528 87275528 75733728 90752424 90752424 285213064 572850481 572850481 1011093504 1011093504 897751611 918354953 918354953 891940476 736430518 982156876 982156876 866876758 866876758 439275530 439275530 496291890 860671178 991479351 991479351 375708178 827619726 913801235 913801235 537342455 289094884 289094884 765228070 810290307 810290307 671091846 320407168 179571540 192155716 192155716 491740334 491740334 153067680 340546274 365983944 365983944 349078592 346045456 346045456 303724864 61344016 62601072 62601072 60045056 39767200 52751504 52751504 98716960 98716960 138985784 138985784 84516476 33818640 29968544 29968544 339380242 339380242 476453262 476453262 172541076 282258068 282258068 269802498 513458400 521975918 521975918 816886593 816886593 554992483 667179235 667179235 656672860 954462672 954462672 823119832 916312084 916312084 199244916 201251540 702206994 993840414 1030875479 1030875479 621466683 267572220 267572220 210943213 1024493544 1035612036 1035612036 923011131 923011131 532203993 894832397 894832397 609757778 816252578 816252578 392303034 392303034 388797554 333655024 13826224 9020736 9020736 8942720 54374464 54374464 53751808 169932288 171913814 626642462 695333795 851358064 851358064 497025390 755821372 755821372 676163060 676163060 615139176 946865185 946865185 679179443 675403520 270751454 341910020 371339282 371339282 56767882 35668656 297011336 368051178 368051178 321770468 407695766 407695766 507515594 906792974 906792974 594392584 594392584 235437733 662940096 662940096 654495801 119016728 119016728 58121136 56529184 36161160 52429104 163580358 412617300 412617300 395592248 384043482 429540000 429540000 329310050 856821043 856821043 581057587 581057587 440947716 440947716 277033026 277033026 235480092 426254778 426254778 16912416 247489392 247489392 765472457 765472457 201936172 890006639 890006639 789462164 927234775 927234775 783709065 676571042 676571042 778326586 1010053489 1070609328 1070609328 447878350 644012498 881037085 993372635 993372635 806619651 806619651 540280967 992287108 992287108 808506000 444679940 354498578 308213888 374247552 374247552 270934330 193466188 193466188 131293020 131293020 94373432 821298575 960040660 960040660 987891505 1024594479 1024594479 376842663 819274906 819274906 885386993 885386993 366267114 331559642 873988650 873988650 684292212 505453816 817413812 817413812 791994341 247464156 836236422 836236422 803229868 803229868 612632649 612632649 1040421696 1053090504 1053090504 871382412 871382412 840536356 520093942 656441406 941670663 941670663 715222084 715222084 470657485 101451784 281807040 339739904 339739904 607558498 607558498 556015938 556015938 537790288 339646762 538095913 556487305 604583848 604583848 106970576 106601112 79925568 326446002 1045036976 1045036976 225210699 721718114 721718114 568590592 363646314 363646314 207224934 207224934 67109314 8519680 323687492 457388214 457388214 223420442 442430600 442430600 227794855 964093701 964093701 631378281 925553979 1063879536 1063879536 334039538 334039538 277756674 589225264 589225264 602194032 602194032 63233136 158860544 158860544 196479200 196479200 183501780 32580576 665068920 665068920 1016512921 1016512921 545314976 566630625 642252123 642252123 372187193 698449920 698474853 698474853 4472832 4472832 49152 2203904 702232341 702232341 642721653 642721653 231859884 613985485 613985485 609008659 874590475 874590475 732235344 536012063 442598778 372729715 881824709 881824709 815391233 790453046 943984661 1011214479 1011214479 780952509 564392866 812855408 826553335 914566034 914566034 485632880 114559964 306441476 345906762 649027710 858558051 858558051 815750414 574668976 574668976 571548177 54959864 96954792 373009744 373009744 71357856 71357856 542720 2131104 28455104 28455104 805188168 805188168 101469173 77153552 86032680 115975408 115975408 172884112 172884112 177281664 177281664 144713936 71696972 34002960 170303640 241246620 241246620 160506468 713197072 713197072 673466909 754025672 772351005 772351005 569310689 569310689 785384157 785384157 705757653 705757653 43369925 42544128 42544128 77596760 109314376 578960601 578960601 346895432 650906770 650906770 812065027 812065027 545993793 610540288 906495771 907461912 907461912 41030096 9122880 41432016 48041216 48041216 351216384 351216384 321586106 331357936 331357936 323657920 323657920 102710808 413337264 501484014 501484014 200355206 646006384 847963597 997906359 997906359 980977386 535036142 879757999 879757999 683921790 736129170 781014216 986157475 986157475 940338337 940338337 348275722 348275722 620344808 620344808 1037604558 1037604558 1017126961 1017126961 478867762 817775171 817775171 748209830 748209830 357962298 970863850 970863850 885837003 904103977 904103977 608256586 316474434 251806884 387849352 387849352 1010072887 1010072887 965997159 965997159 873409873 349106512 948441927 948441927 671351461 671351461 707068976 707068976 941925508 941925508 584326632 503849758 521921118 542237207 685359126 793993757 1020261450 1020261450 294440034 432105256 503711032 503711032 341448330 507127646 507127646 345284864 1058141237 1058141237 353567272 897883737 897883737 767245410 228391949 46931520 584474769 750153948 750153948 1055921668 1055921668 289669252 409562434 409562434 176234580 369980508 369980508 990083307 990083307 283349350 677398337 677398337 183992672 183992672 260791440 627127049 627127049 248265448 686505537 686505537 67044801 648317100 738263281 738263281 721738592 721738592 174771453 68440064 17302560 134283264 967784858 967784858 122393701 7731078 984404316 1064328662 1064328662 577512220 913598780 913598780 838617508 936839040 936839040 543660941 966864119 973599895 1005390510 1005390510 447415110 447415110 383779290 383779290 446674778 446674778 470149134 470149134 417431138 524897776 524897776 498527384 311628560 311628560 390800894 390800894 321389596 36758800 544891496 622532813 698082048 757594169 757594169 708645201 495091732 608044414 608044414 385086797 294129120 294129120 881802978 881802978 360475776 658568986 892169382 892169382 816841539 816841539 407242754 407242754 415240450 473045324 473045324 12635520 12635520 10226050 384209926 408457560 472958226 706745478 706745478 1031985260 1031985260 281428357 13317312 266478908 273169804 273169804 436838480 436838480 411616326 50979888 487744696 487744696 168852260 937696251 937696251 429922993 1060974505 1060974505 622083757 609277109 636959289 799179981 885951018 947002172 947002172 886725499 695508308 486166980 287342898 287342898 435997458 435997458 169216620 514331502 514331502 680011042 975287155 975287155 944361478 944361478 449524950 442111638 607011468 607011468 881394349 881394349 221326135 169191744 156502692 156502692 135989716 411379782 422404674 422404674 295199040 275974240 289283600 289283600 290478690 290478690 310431856 310431856 34035728 34484240 35959744 211927392 277924872 277924872 540806913 540806913 549742592 808365445 808365445 475432476 475432476 454298166 327816306 327816306 387737892 941180618 941180618 236504604 236504604 177128256 220612616 220612616 204737292 69619812 30574240 30574240 29544736 29544736 141831532 289884074 289884074 225236076 226654576 226654576 352593984 352593984 436484614 436484614 143055200 143055200 327978657 808734539 1055706713 1055706713 751865744 606123433 788213828 788213828 606294016 579999488 599269218 599269218 581436753 559022251 75682008 306992272 614009426 879780600 879780600 519580720 519580720 445231958 445231958 440976534 318770208 462583396 462583396 444807254 162150966 284201928 393457904 393457904 285048513 273321292 610796272 869404793 869404793 690351924 690351924 477119744 659354454 659354454 353823761 1029109612 1029109612 783238458 860103089 860103089 601316918 176139360 240388764 240388764 271846146 271846146 371428218 942090689 942090689 614565336 691672869 1015231270 1015231270 210375756 894299121 894299121 585054989 585054989 431490532 462453232 462453232 800170579 1067851938 1067851938 758170413 847692745 847692745 731945410 587797950 587797950 957383030 957383030 724595149 857774922 857774922 639371141 793514515 793514515 274245472 811189882 933368064 933368064 564724808 930084473 930084473 397692235 377561178 814335385 814335385 81297355 995293759 995293759 1003056332 1003056332 50731056 20957200 36551184 649429448 649429448 784081292 784081292 134009905 442860064 442860064 336143370 257425472 257425472 230822124 209768608 49253344 53516848 53516848 194545472 194545472 218590536 262573344 262573344 251772992 251772992 42825600 8105040 279446056 279446056 278004386 200487956 330303008 330303008 306059014 208013582 206346916 206346916 518726336 518726336 330560176 118468968 103024920 85671976 68597280 15221120 15221120 29955232 29955232 24719072 33415456 33415456 23193600 23193600 20047936 21260992 21260992 27434816 28200224 28200224 5030306 288430976 322193824 322193824 307282578 162732978 111988912 230087532 476342592 479848014 479848014 437380752 393624465 633251279 668644825 668644825 426622657 426622657 327761792 613363896 945595785 999306087 999306087 574938758 574938758 506056409 1072411654 1072411654 693582501 693582501 303117840 328335673 884085579 1049494968 1049494968 767953057 690432533 280103899 440403970 440403970 833355928 927580515 927580515 914621472 914621472 582893571 515841878 381681498 319292466 873498640 873498640 885186728 885186728 753839692 689179173 148163268 537633221 537633221 147068868 15802628 18123328 30469092 155263140 155263140 275064256 275064256 414721830 414721830 364904682 809009772 809009772 878833664 878833664 236768351 159600818 538867949 538867949 392427350 820381805 825490902 918552411 918552411 743777296 743777296 738559388 738559388 587039616 587039616 545424892 94618816 92592424 82305568 137326896 137326896 137110032 171434320 187187812 187187812 60294000 196921604 196921604 53037584 171496128 247832256 247832256 241719952 169029120 247796760 247796760 59998448 61502560 272943234 319053490 320733232 320733232 738203666 1011093504 1011093504 388047162 388047162 891940476 891940476 736430518 982156876 982156876 345060673 976721474 976721474 1008091475 1008091475 496291890 693113620 693113620 856058532 856058532 270398736 474343566 474343566 50645040 59775960 1002244502 1002244502 444864600 444864600 365557206 204387922 192155716 192155716 491740334 491740334 153067680 340546274 365983944 365983944 349078592 346045456 346045456 303724864 61344016 62601072 62601072 60045056 39767200 63531920 63531920 98716960 98716960 142609152 142609152 84516476 210627328 210627328 29968544 339380242 339380242 476453262 476453262 301989906 301989906 282276546 282276546 513458400 521975918 521975918 400490000 181774400 163803360 163803360 331493456 331493456 358571036 358571036 282396024 418161366 418161366 364728916 59033712 406384184 993840414 993840414 990734863 768704726 768704726 963302330 963302330 938759392 938759392 830523480 923011131 923011131 532203993 894832397 894832397 890950776 816252578 816252578 36472344 56291088 116544360 116544360 75453776 75453776 27352040 54597216 54597216 67103664 67103664 169932288 171913814 626642462 695333795 695333795 291065538 497025390 755821372 755821372 844780432 844780432 583668593 929717694 929717694 679179443 675403520 237094756 378809052 504172050 504172050 72360646 478224462 511791830 511791830 244360060 244360060 345622373 851487299 851487299 671320353 671320353 238281245 238281245 126139236 662940096 662940096 654495801 125379552 103879552 125436088 125436088 61225580 239876260 239876260 412617300 412617300 193725668 168039964 269256164 327729782 329310050 329310050 562843571 970498651 970498651 440947716 440947716 277033026 277033026 235480092 426254778 676010157 676010157 672539136 672539136 135793792 72191436 240661592 240661592 684116692 684116692 376615830 449048790 449048790 676571042 676571042 778326586 1010053489 1010053489 405492273 617766944 644012498 881037085 993372635 993372635 561602211 233516094 748355784 801186045 808506000 808506000 354498578 354498578 119937336 86906936 270934330 344312920 393824892 411568450 411568450 255854572 255854572 821298575 960040660 960040660 805907107 683470080 555296289 276060992 819274906 819274906 885386993 885386993 651027633 651027633 873988650 873988650 807077376 471423522 817413812 1016189887 1016189887 288058832 846120733 846120733 803229868 1045568716 1045568716 607217842 1040421696 1053090504 1053090504 871382412 905671117 905671117 507089822 995104260 995104260 941670663 929227835 929227835 470657485 639995009 639995009 281807040 277087360 607558498 607558498 556015938 556015938 911611314 911611314 538095913 556487305 604583848 604583848 104134505 66184176 79925568 126878328 702775858 702775858 658327689 721718114 721718114 699223205 363646314 363646314 207224934 694415815 694415815 987079730 987079730 834736464 453510198 155399314 407187072 407187072 143040130 139732036 272178882 282994434 282994434 49357776 47186640 47186640 45349696 37672400 37672400 11468864 26804832 26804832 23531008 158860544 158860544 167780352 167780352 135799316 160690285 160690285 802672805 802672805 308145810 818802354 835579107 835579107 642252123 372187193 704651331 704651331 834159934 916448797 916448797 698277477 627049820 627049820 250814608 642721653 642721653 231859884 613985485 613985485 609008659 874590475 874590475 721779155 1064778687 1064778687 453425081 596970032 815391233 815391233 484585691 943984661 1011214479 1011214479 780952509 1010434124 1010434124 826553335 914566034 914566034 961094823 961094823 946605243 1040293979 1040293979 858558051 1066773038 1066773038 974506575 307791103 617786049 617786049 124548576 373009744 373009744 826461544 830845728 830845728 568920554 568920554 588891441 805188168 805188168 811131731 811131731 895918417 996761065 996761065 227593445 227593445 496961474 496961474 350760030 311876572 176160852 748704093 748704093 142790724 77779272 713197072 713197072 644213145 644213145 571024401 571024401 569310689 569310689 683150029 683671749 705757653 706529088 778577308 778577308 545319185 192938020 178332944 81401512 64425584 64425584 60428016 545708097 546135041 610208257 749678031 749678031 921154065 921154065 986970329 1053290522 1053290522 667003234 667003234 556153812 320027226 329456330 385170312 385170312 331357936 323657920 362442346 362442346 294240454 345080522 416090308 809856356 971556327 971556327 727511617 727511617 918764970 918764970 574623689 574623689 683921790 736129170 736129170 354492714 591468687 940338337 940338337 348275722 348275722 287839412 157472077 1037604558 1037604558 1017126961 1017126961 389352568 817775171 817775171 748209830 748209830 357962298 970863850 970863850 853492246 904103977 904103977 856431923 637603720 567447370 389145402 398666225 823730203 848455050 848455050 873409873 873409873 349106512 948441927 948441927 348661006 414391958 414391958 546164060 854380300 854380300 584326632 503849758 521921118 521921118 514978160 21045304 10098240 277020896 299443938 322383586 322383586 322122546 59176562 65571248 345284864 345284864 515922948 515922948 201730062 348828064 767245410 767245410 590879953 47930057 618051280 618051280 67631112 240363796 876917379 962653961 962653961 880569878 880569878 136579328 68168452 255656476 255656476 319065372 331531124 331531124 183992672 183992672 161060380 138604672 90651048 248265448 248265448 99854420 72851168 609550956 738263281 738263281 648153732 648153732 638075932 543155228 781055197 797960277 797960277 257426017 257426017 272224802 272224802 270865794 285616112 285616112 277423170 219751300 211283620 936839040 936839040 441632449 170208962 170208962 121992080 201340234 447415110 447415110 383779290 383779290 446674778 446674778 470149134 470149134 221586650 524897776 524897776 498527384 254194180 239101436 147915972 225334277 225334277 148153156 148153156 564264117 698082048 698082048 580581189 495091732 495091732 972156397 972156397 786886055 462366396 941556171 941556171 1010863786 1010863786 1061455277 1061455277 892169382 684106042 447144124 612403353 612403353 1038257890 1038257890 885675080 923802960 923802960 671448658 671448658 193265236 472958226 706745478 706745478 1031985260 1031985260 797639835 1049698911 1049698911 820929404 417409152 436838480 436838480 411616326 286261830 487744696 495978530 495978530 937696251 937696251 429922993 1060974505 1060974505 622083757 609277109 636959289 799179981 885951018 947002172 947002172 886725499 695508308 486166980 607159024 607159024 441502183 435997458 269558274 553788418 553788418 680011042 693855425 693855425 411635856 449524950 449524950 442111638 607011468 607011468 586260660 586260660 596946836 596946836 295792084 156502692 143918848 135989716 65032256 269163216 269163216 48628096 289283600 289283600 279993314 50333008 115458376 115458376 30195896 100763968 100763968 83430016 83430016 173265628 173265628 407749697 940655302 940655302 941755333 1030154987 1030154987 553090031 332411089 928261008 928261008 434416096 634211642 766583081 766583081 539632236 220612616 220612616 204737292 200407840 196828784 196828784 184828548 136930308 152842020 289884074 289884074 91059368 91059368 84933672 352593984 352593984 436484614 436484614 143055200 143055200 327978657 808734539 1055706713 1055706713 775034521 775034521 628744240 833249384 833249384 839917200 839917200 50857489 559022251 559022251 920502499 920502499 911541779 911541779 879780600 519580720 519580720 445231958 445231958 440976534 318098386 325583794 325583794 309666706 127765162 284201928 393457904 393457904 285048513 94556520 610796272 869404793 869404793 690351924 690351924 549979329 659354454 659354454 353823761 1029109612 1029109612 783238458 860103089 860103089 601316918 757910817 757910817 212862602 472321657 977255147 977255147 1001022903 1001022903 685580721 691672869 1015231270 1015231270 389714002 894299121 894299121 786569132 585054989 431490532 290930980 290930980 800170579 1067851938 1067851938 758170413 847692745 847692745 731945410 722203701 185123892 957383030 957383030 463487527 8962244 33603600 33644544 959717824 959717824 274245472 811189882 811189882 914859152 914859152 133110993 343515562 343515562 130068682 299741152 315362514 315362514 395894608 395894608 363207018 488248878 488248878 1048583506 1048583506 471997312 471997312 784081292 784081292 429990550 442860064 442860064 386705174 386705174 230822124 230822124 218415348 431917110 431917110 156763812 309989550 309989550 218590536 262573344 262573344 251772992 251772992 29963568 12682560 188334516 278004386 278004386 200487956 330303008 330303008 306059014 208013582 206346916 206346916 518726336 518726336 330560176 118468968 103024920 62965408 132186456 132186456 73535232 81654144 81654144 31704768 33745296 33745296 125935928 125935928 78784680 87350080 87350080 27434816 28200224 28200224 21006336 10537376 322193824 322193824 468485520 468485520 172017878 162582294 476342592 479848014 479848014 305497538 393624465 633251279 668644825 668644825 514696134 426622657 405465452 934492834 945595785 945595785 853710247 588278160 578088609 576507537 946341255 946341255 751374041 748751566 748751566 328335673 884085579 884085579 803541742 239085764 239085764 180096260 451414224 451414224 833355928 927580515 927580515 474171404 582893571 582893571 515841878 381681498 319292466 319292466 193198495 885186728 885186728 753839692 137302016 148163268 537633221 537633221 688591621 688591621 547147237 547147237 546479365 509194106 723791199 981731825 981731825 739058431 623641513 621805601 621805601 852470100 852470100 236768351 951211072 951211072 323656263 30408800 25166560 27525248 27525248 33817856 743777296 743777296 37853077 60952944 60952944 98467712 98467712 95896224 97780512 97780512 72078120 32734208 32734208 186999888 187187812 187187812 60294000 196921604 196921604 37787072 37787072 247832256 247832256 241719952 169029120 247796760 247796760 2639104 65703000 272943234 319053490 774250394 789843466 989104802 989104802 900090641 682756986 388047162 177318780 750924172 783422301 783422301 673801749 948575278 976721474 976721474 1008091475 1008091475 724959501 724959501 693113620 856058532 856058532 537133184 541329537 541329537 50645040 564226361 1002244502 1002244502 749539572 749539572 365557206 204387922 109852256 109852256 87433896 119728944 119728944 53945136 336593920 336593920 41992272 109100304 321218896 321218896 61507842 59846160 52249168 52249168 36211072 63531920 63531920 67174400 67174400 142609152 210001824 210001824 210627328 210627328 38021888 38021888 38015808 49683408 275855424 301989906 301989906 282276546 282276546 200431568 200431568 198445812 736927409 775527599 775527599 969120493 969120493 989491380 989491380 960226148 898888299 898888299 811043048 422775300 422775300 575713641 575713641 916492922 916492922 885840808 885840808 963302330 963302330 938759392 938759392 945875492 945875492 539872722 858048819 858048819 890950776 890950776 473416872 473416872 85193256 85193256 284706216 284706216 75453776 75453776 27352040 54597216 54597216 67103664 67103664 405756657 970775435 970775435 377899461 561171251 561171251 882171727 882171727 512764747 844780432 844780432 276722322 306200528 311611986 314692096 346145184 346145184 417366329 556810699 785383947 785383947 621466665 621466665 605738080 484059428 484059428 1031087823 1031087823 851487299 671320353 674430980 674430980 683946053 751804937 751804937 683361861 681126757 637110668 657210785 657210785 606465976 61225580 239876260 239876260 218314698 472708736 472708736 242013630 305711026 461002128 461002128 247356478 562843571 970498651 970498651 691561575 880874190 880874190 818414787 13378435 207620365 676010157 676010157 672539136 672539136 655116933 655116933 439667776 547670405 684116692 684116692 726060773 1071646055 1071646055 831703247 831703247 879783825 1003610871 1003610871 950508097 950508097 617766944 167250299 221560196 561602211 1057651759 1057651759 748355784 801186045 927732660 927732660 304349314 436158438 436158438 202074048 202074048 344312920 393824892 411568450 411568450 255854572 255854572 241971456 175519168 145592304 683470080 683470080 141127457 276060992 281538314 281538314 274949248 75546696 651027633 651027633 600329425 842547698 842547698 475285422 475285422 1016189887 1016189887 670422809 951514515 951514515 483354051 1045568716 1045568716 607217842 689209991 689209991 665945601 583775689 905671117 905671117 507089822 995104260 995104260 239108509 929227835 929227835 908892390 820290632 820290632 604080323 555778336 548739370 548739370 344076867 335737058 911611314 911611314 626223913 130057880 599444168 599444168 105042281 122845336 122845336 110870040 110870040 658327689 658327689 124340552 699223205 699223205 107244736 149705152 153476260 694415815 694415815 987079730 987079730 834736464 138545376 138545376 407187072 473750068 473750068 646846891 762053411 762053411 863838843 863838843 810892544 462463122 462463122 536462874 570366800 583087633 583087633 574559360 63843728 63843728 52700800 167780352 167780352 135799316 160690285 160690285 802672805 802672805 771803736 818802354 835579107 835579107 677795414 873599019 873599019 704651331 834159934 916448797 916448797 698277477 1044828970 1044828970 583996452 583996452 245461765 245461765 141817796 577096726 1063676197 1063676197 774740281 721779155 1064778687 1064778687 453425081 453425081 273253248 431444128 592083630 592083630 1038490095 1038490095 701823628 1010434124 1010434124 696438885 278398048 271629954 961094823 961094823 946605243 1040293979 1040293979 552800500 1066773038 1066773038 983886095 307791103 617786049 617786049 646578280 906705922 906705922 826461544 830845728 830845728 568920554 568920554 588891441 588891441 645322990 811131731 811131731 895918417 996761065 996761065 402760416 393421794 496961474 496961474 350760030 311876572 176160852 748704093 748704093 142790724 77779272 77779272 556817409 794294985 794294985 720075741 196178697 200327901 772494644 772494644 683671749 683671749 706529088 778577308 778577308 650936761 545149605 178332944 81401512 595341521 595341521 1088065 545708097 546135041 610208257 749678031 749678031 921154065 921154065 986970329 1053290522 1053290522 667003234 667003234 556153812 320027226 329456330 385170312 385170312 51385432 344867336 362442346 549509351 688464581 768124013 768124013 809856356 971556327 971556327 727511617 727511617 918764970 918764970 725222352 723268999 389426633 564562296 564562296 457902102 457902102 248137632 482384256 482384256 411076228 902862038 902862038 939708423 1002105252 1002105252 389352568 704712786 704712786 824790728 905309163 905309163 280140299 177927716 351598990 1005248684 1009617353 1009617353 856431923 637603720 567447370 389145402 398666225 823730203 859313120 1046824037 1046824037 623376681 852368008 852368008 88213171 85065768 85065768 83890728 546164060 546164060 516023437 134669210 77207112 119140952 131121896 131121896 21045304 10098240 277020896 299443938 322383586 322383586 322122546 59176562 65571248 286328864 286328864 844970697 844970697 827613395 827613395 93739793 590879953 590879953 110724680 618051280 640121480 640121480 547236561 876917379 962653961 962653961 880569878 880569878 195070020 220580916 789152221 789152221 319065372 556303409 556303409 164168512 158934948 143162172 786371065 786371065 267413608 738345013 738345013 163084924 609550956 670139020 670139020 648153732 648153732 638075932 543155228 781055197 797960277 797960277 257426017 257426017 272224802 272224802 270865794 285616112 285616112 277423170 61656432 354486528 935316578 935316578 576813084 836238645 836238645 122552560 122552560 35464832 401082360 401082360 270009858 125190050 101786136 85724712 85724712 333706432 333706432 106013368 106013368 239101436 239101436 147915972 225334277 225334277 148153156 148153156 564264117 564264117 556674848 556674848 413914914 342033865 972156397 972156397 786886055 462366396 941556171 941556171 1010863786 1010863786 1061455277 1061455277 1049938527 684106042 827536035 827536035 612403353 1038257890 1038257890 885675080 923802960 923802960 671448658 672336948 672336948 588101265 603992069 603992069 201535500 641002240 797639835 1049698911 1049698911 820929404 486982802 486982802 370203740 370203740 286261830 286261830 495978530 495978530 499640818 499640818 397002614 533828444 533828444 246571774 114490056 178542720 178542720 169872292 169872292 188798230 356813187 401607699 401607699 819106857 819106857 441502183 269492224 269558274 747703192 1046987347 1046987347 797045361 676397141 446915203 664279591 939527701 939527701 544050339 362111947 740884784 796133200 796133200 596946836 295792084 145493316 143918848 332620610 332620610 325983666 278004322 278004322 293899360 293899360 306763120 306763120 390365314 390365314 30195896 100763968 107311680 109231936 117318728 117318728 185082992 922077388 940655302 940655302 941755333 1030154987 1044353343 1044353343 427266674 928261008 928261008 434416096 634211642 766583081 766583081 539632236 25442340 317378674 317378674 200407840 268851590 268851590 184828548 136930308 287909154 287909154 173394832 354702368 354702368 308412248 308412248 135624212 204475220 204475220 180168004 180168004 42600960 45823824 291067748 533841294 775034521 775034521 598902692 833249384 833249384 839917200 839917200 50857489 832094256 832094256 920502499 920502499 911541779 911541779 615606304 391160184 261380884 198744128 16294848 10086016 8635520 2113792 2113792 8406080 8406080 1120768 5388864 11046976 827005424 827005424 335347667 245892444 750915840 752878029 752878029 549979329 605707152 824321465 824321465 57887411 358613418 358613418 406441476 899678631 899678631 757910817 757910817 859289351 859289351 977255147 977255147 1001022903 1001022903 992151847 992151847 794636140 794636140 389714002 837576128 837576128 845998526 845998526 951705423 951705423 688790565 248647417 133618680 752635808 752635808 734036728 734036728 722203701 722203701 446280016 446280016 569525579 569525579 760282305 760282305 318303801 959717824 959717824 442580290 450956264 450956264 914859152 914859152 335778266 920926795 920926795 289200256 299741152 315362514 315362514 395894608 395894608 363207018 488248878 488248878 1048583506 1048583506 471997312 671505104 671505104 586828981 429990550 429990550 205368868 386705174 386705174 94946664 261263672 261263672 431917110 431917110 156763812 309989550 309989550 193281776 197531892 197531892 161604080 65134948 30998752 30998752 6940032 214303332 225886092 225886092 110101080 110101080 33689616 33689616 126667896 184130808 228484368 228484368 87700276 87700276 62965408 62965408 132186456 132186456 73535232 81654144 81654144 31704768 33745296 33745296 125935928 125935928 78784680 87350080 87350080 278868714 278868714 610831657 900504577 900504577 616515113 616515113 858521242 858521242 598145368 939706492 939706492 728023518 305497538 306258066 306258066 506252574 506252574 514696134 514696134 416599242 405465452 934492834 934492834 930643076 930643076 1053063402 1053063402 681697605 946341255 946341255 751374041 748751566 748751566 289184838 289184838 430604597 993527607 993527607 948573255 948573255 672547382 451414224 343926877 343926877 100613576 884046760 884046760 609159042 571284576 633945337 633945337 562245729 545517633 545517633 420233376 420233376 137302016 137302016 135130116 135802881 688591621 688591621 547147237 547147237 1047370049 1047370049 723791199 981731825 981731825 739058431 623641513 621805601 1061220196 1061220196 373934400 373934400 951211072 951211072 843581459 461780170 679681101 679681101 590981489 590981489 724001920 724001920 745320496 745320496 607586520 607586520 537130332 95896224 97780512 97780512 72078120 46575824 48370128 186999888 186999888 2220288 135283200 135283200 66113840 66113840 37787072 222777008 222777008 57232076 33914896 44221264 44221264 7290240 65703000 92259112 209475876 774250394 789843466 989104802 989104802 1001414687 1001414687 388203346 614545153 750924172 783422301 783422301 724713820 948575278 948575278 632437250 632437250 978267644 978267644 917719697 917719697 638837801 390718650 927506433 927506433 604442832 650455257 650455257 564226361 660986122 749539572 749539572 78299456 34941456 109852256 109852256 352679970 352679970 100672432 286153826 336593920 364604514 364604514 352638040 352638040 321218896 61507842 286334178 325200408 351623576 351623576 268626352 281372776 281372776 69994712 69994712 210001824 210001824 91496448 172044268 172044268 339554110 379810280 379810280 529826464 529826464 519781374 104456470 79942968 453400566 453400566 428139308 736927409 775527599 775527599 969120493 969120493 989491380 989491380 960226148 898888299 898888299 811043048 422775300 450171676 575713641 575713641 916492922 916492922 885840808 885840808 593833769 876652853 876652853 332007756 945875492 945875492 592322896 858048819 858048819 675818610 852042963 852042963 579539074 85193256 121921792 284706216 284706216 51423760 51423760 17645616 17615904 60866928 62423408 154411892 405756657 970775435 970775435 377899461 688269619 688269619 882171727 1050436456 1050436456 942721382 942721382 504705629 306200528 311611986 714154616 714154616 346145184 417366329 556810699 785383947 785383947 621466665 621466665 605738080 484059428 484059428 1031087823 1031087823 508855260 429515078 674430980 674430980 683946053 751804937 751804937 683361861 681126757 637110668 657210785 657210785 606465976 62933832 78821840 78821840 218314698 472708736 472708736 242013630 305711026 461002128 461002128 247356478 291348624 320654898 691561575 809967265 880874190 910014345 910014345 773265809 773265809 559102269 124784145 96298636 96298636 655116933 655116933 439667776 547670405 547670405 682573125 726060773 1071646055 1071646055 831703247 831703247 879783825 1003610871 1003610871 950508097 950508097 407945862 407945862 289684610 362593321 1057651759 1057651759 526958513 620814438 927732660 927732660 396435834 436158438 461848292 461848292 426378792 492206180 492206180 303661104 145365508 79823036 32 635242717 998321904 998321904 843393171 837341794 837341794 448537492 548633840 809161416 809161416 736083910 837965882 837965882 383925962 842547698 842547698 475285422 475285422 425646578 999209957 999209957 951514515 951514515 483354051 731740228 731740228 84307541 34787920 76554832 76554832 414437776 414437776 465306192 465306192 289283874 256480946 473031438 473031438 908892390 924372120 924372120 820290632 604080323 559440304 548739370 548739370 633595904 633595904 805344442 854244482 854244482 632821184 611977193 552768512 105042281 122845336 122845336 110870040 110870040 92469368 102009832 158859840 160204164 160204164 159175136 159175136 157461508 36190992 49813760 49813760 189269172 189269172 185546880 253655040 253655040 473750068 473750068 646846891 762053411 762053411 863838843 863838843 810892544 462463122 462463122 536462874 570366800 583087633 583087633 574559360 63843728 63843728 15018432 15018432 57381152 57381152 156365572 156365572 102531224 771803736 771803736 354754608 826726563 826726563 677795414 873599019 873599019 312549390 371269914 815964431 815964431 665114951 1044828970 1044828970 687720240 687720240 245461765 245461765 281033274 577096726 1063676197 1063676197 774740281 533288472 116584680 116584680 650563861 650563861 650143921 625857384 625857384 592083630 1038490095 1038490095 406043048 679641120 696438885 696438885 1002750200 1002750200 413928774 514346330 550937616 550937616 75571272 551289068 551289068 983886095 983886095 230476593 353246552 579864384 646578280 906705922 906705922 296103474 61915202 270811810 270811810 299541504 325809712 325809712 273887874 149891990 4776272 301343064 973393939 973393939 402760416 578913565 578913565 44565840 44714320 44714320 662834241 662834241 254549624 202000456 161701997 210047584 228725100 794294985 794294985 720075741 196178697 200327901 772494644 772494644 585961449 677845632 677845632 741020940 741020940 650936761 545149605 60817792 60817792 595341521 595341521 51808416 51808416 60780576 143128644 165102240 165102240 140060292 26283552 21495936 21495936 13742464 100885152 100885152 43106448 47834832 396835728 396835728 310706224 310706224 344867336 344867336 549509351 688464581 768124013 768124013 672346272 311741010 311741010 838907490 838907490 939329235 939329235 725222352 723268999 487770667 596321598 596321598 457902102 457902102 696310649 696310649 482384256 411076228 902862038 902862038 939708423 939708423 523422181 523422181 959619909 959619909 824790728 905309163 905309163 627051049 627051049 624951465 1005248684 1009617353 1009617353 807414411 278012235 72877706 72877706 78125056 78125056 859313120 1046824037 1046824037 623376681 852368008 852368008 581966673 159780976 252907536 289010656 847572366 941621511 941621511 547356742 458565254 458565254 408234630 533192126 533192126 434130192 475534628 475534628 377191502 377191502 456586548 462560180 462560180 286328864 286328864 844970697 844970697 827613395 827613395 470551566 235668690 102981936 110724680 110724680 640121480 640121480 547236561 156853184 156853184 150841060 264781832 264781832 195070020 220580916 789152221 789152221 153671744 556303409 556303409 164168512 158934948 207373232 786371065 786371065 267413608 738345013 738345013 163084924 163084924 145115568 145115568 101499060 135943556 225023652 225023652 181793364 181793364 447892222 447892222 265602840 265602840 254031796 333250112 333250112 322482990 322482990 130545912 354486528 935316578 935316578 576910448 836238645 836238645 315571410 370410954 370410954 412354628 412354628 270009858 200365538 200365538 348194736 348194736 333706432 333706432 499058316 499058316 202195780 132107488 177267732 177267732 155012404 164638784 164638784 32177920 32177920 556674848 556674848 413914914 342033865 743850447 743850447 270116487 407369862 810764805 810764805 134555652 23373952 108799207 1049938527 1049938527 292829786 827536035 827536035 668017401 668017401 367433912 819005120 819005120 877810834 877810834 877758619 672336948 706102484 706102484 698554954 698554954 405406928 416645120 416672454 416672454 391905290 486982802 486982802 370203740 370203740 358182988 403576932 403576932 378830948 499640818 499640818 275817468 533828444 533828444 246571774 20407552 20407552 18800160 169872292 169872292 156260404 356813187 401607699 401607699 889209408 889209408 232178132 426892196 426892196 770742560 1046987347 1046987347 997212476 815858579 446915203 664279591 939527701 939527701 544050339 466986946 740884784 796133200 796133200 142268292 141729156 140908932 51279076 332620610 332620610 325983666 278004322 278004322 293899360 293899360 306763120 320950704 390365314 390365314 106539840 236457500 236457500 253182710 320914666 320914666 331877840 922077388 922077388 888414567 888414567 966855627 1044353343 1044353343 427266674 840206715 840206715 412453440 412453440 336939404 180356572 192148772 192148772 317378674 317378674 136093072 268851590 268851590 40633424 20689536 287909154 287909154 386142256 386142256 354702368 355386336 355386336 273552322 373833426 373833426 211756804 211756804 147418720 147418720 484747662 533841294 533841294 530321022 530321022 466455582 566933802 566933802 37884048 38797336 832094256 832094256 105956971 67109544 37748880 71457360 71457360 261380884 332793382 332793382 142740576 289144560 316862418 323028658 323028658 318244818 86981928 360357792 368595592 368595592 952330945 952330945 724673840 724673840 944938578 944938578 752878029 467718520 605707152 824321465 824321465 458866964 453039538 420688422 326140968 899678631 899678631 339272030 339272030 859289351 859289351 499235517 305665841 824543252 951397191 992151847 992151847 913914001 913914001 329515290 837576128 837576128 845998526 845998526 1010161589 1010161589 940639125 788663063 447222782 752635808 752635808 475997211 810457214 810457214 715840801 446280016 446280016 569525579 577036766 760282305 760282305 479267655 970074842 970074842 567489089 450956264 833765706 833765706 618844523 554946987 920926795 920926795 512693396 513970862 517272540 517272540 162311788 136303300 724584497 724584497 722282592 722282592 743040141 743040141 699926373 720161949 756549165 756549165 788942100 788942100 212744704 212744704 206921152 261263672 261263672 98847164 36700944 32116848 60432000 60558960 193281776 197531892 197531892 56688848 56688848 30998752 30998752 276840880 307135264 307135264 255195588 255195588 245899008 437461568 437461568 347083282 470978720 470978720 384877530 351289360 87700276 46269600 40164792 107449528 107449528 84482400 84482400 26748968 29791136 29791136 24271072 16941280 71375328 71375328 290765792 297132256 297132256 895796010 895796010 900504577 900504577 616515113 616515113 858521242 858521242 598145368 939706492 939706492 728023518 291569986 440666262 440666262 979370391 979370391 809839020 906289206 906289206 993977248 993977248 576116353 930643076 930643076 1053063402 1053063402 681697605 421862728 787657188 787657188 246457100 500463470 289184838 289184838 545575265 993527607 993527607 948573255 948573255 672547382 558941912 343926877 343926877 100613576 884046760 884046760 877000833 1041997553 1041997553 696385728 696385728 566838279 566838279 675269860 675269860 144327008 27604992 556934337 556934337 570034021 570034021 428480450 428480450 1047370049 1047370049 728419083 461822070 688557146 882198611 882198611 647643489 1061220196 1061220196 553916453 553916453 726345892 843581459 843581459 839124150 679681101 679681101 590981489 590981489 724001920 724001920 745320496 745320496 607586520 607586520 537130332 53676112 53676112 38035456 42299664 46575824 48370128 48370128 32558052 152044068 152044068 135283200 66113840 66113840 168035392 222777008 222777008 243358912 244170316 244170316 139867224 7290240 33601936 33601936 43469968 43469968 243801926 471728158 489849172 1001414687 1001414687 479372550 614545153 633022261 633022261 724713820 724713820 546943088 23089392 44224848 289704674 978267644 978267644 917719697 917719697 824125702 1008972807 1008972807 927506433 604442832 650455257 650455257 568247640 493536316 300746186 203854016 203854016 106137608 63435072 85540656 352679970 352679970 88473864 286153826 286153826 364604514 364604514 352638040 352638040 288864378 55902016 286334178 325200408 351623576 351623576 268626352 281372776 281372776 69994712 205135824 205135824 130400260 91496448 172044268 172044268 339554110 379810280 379810280 529826464 529826464 519781374 104456470 79942968 453400566 453400566 484704424 484704424 465317190 513802188 513802188 138575960 302525068 302525068 520654138 520654138 206055060 408689488 408689488 450171676 879493958 881869253 881869253 876105501 811155466 811155466 593833769 876652853 876652853 851460624 851460624 936400136 936400136 639278179 373032467 675818610 852042963 852042963 579539074 343766128 283238850 279019648 116485016 130066752 130066752 24456096 47476016 60866928 177012232 177012232 840970432 840970432 336204810 336204810 688269619 688269619 505286042 1050436456 1050436456 942721382 942721382 825745956 825745956 183110496 714154616 714154616 402655382 440664070 440664070 307560844 307560844 692659938 692659938 421262886 549691712 964241319 966912201 981559573 981559573 746587824 746587824 659567449 659567449 639373417 679925829 679925829 678410553 211114373 211114373 116068033 602370777 705335809 705335809 540708384 358681756 358681756 330065976 170200056 385244176 856094481 856094481 611387921 792481085 792481085 609444184 809967265 809967265 910014345 910014345 773265809 773265809 559102269 256950692 518358302 518358302 276647636 276647636 352201548 400656416 451821916 682573125 726019525 726019525 755835008 761390167 847848531 847848531 725299475 270779250 270779250 407537952 407945862 407945862 289684610 874213240 874213240 1049712720 1049712720 740650053 367067280 396435834 396435834 199703028 461848292 461848292 426378792 492206180 492206180 303661104 209437204 209437204 138114844 635242717 998321904 998321904 843393171 837341794 837341794 448537492 548633840 809161416 809161416 736083910 837965882 837965882 12603904 72536272 72536272 79263846 425646578 425646578 999209957 999209957 820283218 820283218 520493118 853819408 853819408 384188810 384188810 338217242 438027090 601322626 601322626 465306192 465306192 289283874 903566855 903566855 901772004 351023416 924372120 924372120 100155544 559440304 559440304 665862713 665862713 633595904 633595904 805344442 854244482 854244482 632821184 611977193 537539464 70403488 22155104 32592256 32592256 12838048 30857952 30857952 158859840 160204164 160204164 159175136 159175136 157461508 136979920 182064852 182064852 437060740 445452538 445452538 394307838 257425470 253355580 154666788 284738920 534695954 534695954 326315406 386862072 386862072 516819382 516819382 336023378 336023378 312745874 318778144 318778144 65350400 139200784 187659380 187659380 24869680 31634272 195260541 655609405 767813181 767813181 621156393 812460429 812460429 807548966 807548966 311685234 311685234 276930634 276930634 348172480 348172480 17035296 31932688 41197748 687720240 802719604 1057792037 1073523635 1073523635 536873237 536873237 191658112 541557921 541557921 116584680 290318856 892940010 892940010 650143921 872480768 872488971 872488971 685584069 685584069 599589300 491521560 491521560 458492598 1002750200 1002750200 705765909 713837141 713837141 78588292 75571272 551289068 551289068 263506812 263506812 54267696 54267696 579864384 579864384 10882417 44182304 44182304 37226256 411131968 411131968 299541504 299541504 274008738 273887874 405799686 413945222 413945222 973393939 973393939 311462482 578913565 578913565 470422366 458672556 458672556 662834241 662834241 254549624 221286437 221286437 611058240 638587777 638587777 610061961 627238168 627238168 596769548 615522672 615522672 585961449 65613041 1387008 1387008 706911496 706911496 63604861 94816760 94816760 588284962 588284962 318293040 559490721 559490721 60780576 666927616 1033422447 1033422447 373665283 1024989697 1024989697 764516522 825251170 825251170 580932572 89313960 396835728 396835728 311019712 311019712 133297362 331417160 331417160 127467568 127467568 68874834 315881128 895500452 1035122607 1035122607 838907490 939329235 939329235 650084306 604428297 984256536 984256536 786536589 725803468 422502770 696310649 696310649 402922592 402922592 269391634 823677657 823677657 571408161 815063705 815063705 959619909 959619909 884353175 354062403 614728288 627051049 627051049 624951465 954462663 954462663 807414411 807414411 818633258 818633258 351935400 343407498 564811595 564811595 532728148 532728148 328238803 576593553 903359290 903359290 218313068 252907536 602455009 847572366 941621511 941621511 547356742 458565254 458565254 408234630 533192126 533192126 434130192 475534628 475534628 377191502 377191502 456586548 462560180 503316510 503316510 291555084 495770884 512566526 990938223 990938223 470551566 235668690 604743345 604743345 439763730 439763730 843178010 843178010 512211840 512211840 291580066 840008696 943466098 943466098 973704247 973704247 625565832 323748888 255873048 200153444 84410408 83886120 207373232 207373232 103260240 103260240 198406232 198406232 16777216 16777248 68485872 350446050 350446050 363455850 365211008 365211008 181793364 181793364 447892222 447892222 265602840 265602840 254031796 794024865 794024865 747982912 789140564 789140564 595793292 623197295 1006970895 1006970895 963783224 917195032 845556123 749183204 370410954 412354628 1031476335 1031476335 592082118 592082118 587822468 958128979 958128979 710088753 900672892 900672892 520364498 182811446 311136404 311136404 316411602 329065856 329065856 702029168 712383381 712383381 677396680 677396680 347867396 347867396 347538626 177448990 277033026 277033026 796562749 796562749 991978491 991978491 560913156 141869056 292829786 292829786 613912792 668017401 821150720 821635011 821635011 919733536 919733536 878806267 877758619 311237568 706102484 706102484 698554954 698554954 405406928 631461830 814256611 814256611 690314526 324616552 324616552 317380050 358182988 358182988 403576932 403576932 217318136 529581594 529581594 452457854 452457854 207774086 72798284 265546708 265546708 22286768 50467328 50467328 20034050 288157952 288157952 3745536 889209408 889209408 347081824 426892196 426892196 770742560 770742560 997212476 997212476 815858579 271163715 139527168 141297604 436248884 466986946 466986946 436275360 436275360 188250580 146168320 146168320 686485108 686485108 568154436 580635940 707895685 728050101 728050101 733032549 733032549 413081585 540803166 920478028 920478028 209899596 236457500 236457500 253182710 320914666 320914666 535866285 560523225 660773668 888414567 888414567 966855627 966855627 189413513 114761240 347179376 347179376 412215338 412215338 231095822 79033508 192148772 192148772 171626096 115061432 180753892 180753892 44597332 167351264 167351264 136471232 253359128 386142256 889612905 889612905 395264162 891739008 891739008 685588439 638332697 618796689 618796689 811015209 811015209 770183054 484747662 190317549 878558205 878558205 294244447 624254817 767011431 767011431 658897843 635486505 270810384 858155089 870408384 870408384 822283395 593572564 450243600 332793382 332793382 142740576 289144560 316862418 323028658 323028658 318244818 207404708 360357792 368595592 368595592 952330945 952330945 724673840 724673840 1037628088 1037628088 467718520 467718520 338875146 16941866 458866964 458866964 453039538 420688422 389093464 389093464 289104914 2622720 2622720 84421656 499235517 522958392 972784822 981075651 981075651 951397191 363595596 913914001 913914001 1057610799 1057610799 756151829 656881977 611292353 1010161589 1010161589 940639125 788663063 867238792 867238792 738866888 475997211 810457214 810457214 715840801 643121371 592648711 499314348 946458066 946458066 653704467 479267655 970074842 970074842 693379680 693379680 833765706 833765706 618844523 554946987 539226369 432029428 512693396 513970862 517272540 517272540 307926726 307926726 724584497 724584497 722282592 722282592 743040141 743040141 699926373 720161949 756549165 756549165 788942100 788942100 212744704 212744704 206921152 206921152 157821544 37767616 14950864 6217344 22072704 447254565 447254565 318902322 318902322 599841207 857248117 857248117 550233841 550233841 1044595349 1044595349 336851466 608325849 608325849 437461568 437461568 347083282 470978720 470978720 384877530 351289360 253497608 253497608 245387396 178458260 178458260 84482400 122673400 158973472 204308108 238325360 238325360 108508088 108508088 97562818 290765792 297132256 297132256 895796010 895796010 972556458 972556458 622873632 622873632 678168782 678168782 264508705 815794216 815794216 276824096 276824096 520095744 520095744 979370391 979370391 809839020 906289206 906289206 993977248 993977248 979308692 979308692 822029059 819411651 308206000 421862728 421862728 787657188 787657188 675355520 173088656 9732384 28625760 545575265 545575265 669146752 669146752 647681625 637698617 626270928 4262912 4262912 579233792 579233792 877000833 877000833 1041997553 1041997553 982128724 982128724 662977772 662977772 675269860 675269860 144327008 99833472 556934337 556934337 560198049 569732755 852178131 852178131 652481300 728419083 728419083 621582613 1068707197 1068707197 882198611 647643489 647643489 286316299 553916453 553916453 726345892 726345892 839124150 839124150 455808278 413340752 59074096 199505152 199505152 134886720 198163712 198163712 68754488 68754488 86167848 86167848 25614432 130554440 130554440 39485072 41607056 41607056 32558052 152044068 152044068 25428756 42205268 42205268 168035392 182193876 182193876 243358912 244170316 244170316 139867224 36750096 33601936 33601936 134905876 134905876 243801926 495621140 495621140 302605944 479372550 479372550 276841032 407391844 421391910 688441966 688441966 629506217 629506217 373756114 373756114 633869728 633869728 833472512 839306627 839306627 1008972807 1008972807 889718921 593622214 610896809 610896809 568247640 493536316 300746186 203854016 203854016 106137608 63435072 85540656 100788024 100788024 85408296 69353600 56777577 642876041 642876041 617685705 83916913 83916913 55902016 77128105 832679017 832679017 881602610 881602610 55582784 71180056 77388096 205135824 205135824 24205184 231252736 231252736 20791372 20098944 13031616 270584576 277217424 277217424 60744338 33892368 33658832 124519424 454967756 484704424 484704424 465317190 513802188 532832286 532832286 352395618 352395618 329326962 278352076 206055060 408689488 408689488 10614081 879493958 881869253 881869253 876105501 462148177 248692800 248692800 474256018 643259068 851460624 851460624 936400136 936400136 639278179 536880848 584656593 584656593 489962657 380928778 380928778 283238850 279019648 116485016 130066752 130066752 61749344 73259424 73259424 177012232 616376606 840970432 840970432 585379136 575218833 560532501 402134941 505286042 731299590 731299590 705804848 705804848 825745956 825745956 183110496 183110496 37749264 402655382 509640975 577815441 577818633 577818633 692659938 692659938 421262886 549691712 964241319 964241319 981559573 981559573 746587824 746587824 124920408 608047592 608047592 572133632 678410553 678410553 240346429 251639225 691542753 691542753 705335809 738857486 738857486 470946829 358681756 153348558 544783230 1070595327 1070595327 856094481 611387921 792481085 792481085 681946196 816211605 816211605 1053012683 1053012683 220345616 455622818 455622818 256950692 518358302 518358302 439629136 439629136 504761372 504761372 451821916 451821916 470092356 470092356 713040380 761390167 847848531 847848531 757666998 546080001 270779250 224776424 224776424 676409120 676409120 874213240 874213240 1049712720 1049712720 740650053 302253120 341197406 341197406 104133182 359960692 359960692 277052328 247874636 243533676 243533676 209437204 209437204 257205504 257205504 232103228 384923606 384923606 369494986 351796170 351796170 299012546 299012546 177994972 177994972 349817920 376566920 554070928 780585677 780585677 194549937 244577544 244577544 228254104 228254104 243734422 520493118 520493118 853819408 853819408 543199264 543199264 404000016 438027090 601322626 807164006 807164006 782721835 605476399 903566855 903566855 901772004 733920561 535974497 304498880 181931228 300943776 300943776 725647706 725647706 598060554 621929064 637904922 637904922 70523520 91814728 91814728 88766120 70403488 29345696 29345696 25372672 25372672 10227264 10970592 161668992 161668992 27305732 138667648 149257668 149257668 139060356 182064852 182064852 437060740 445452538 488806796 488806796 257425470 249714732 154666788 284738920 476579214 476579214 90376444 90376444 369566380 516819382 516819382 242967662 273226784 273226784 50364528 50364528 65350400 139200784 187659380 187659380 25276480 25276480 195260541 655609405 767813181 767813181 621156393 939594048 939594048 807548966 807548966 542818834 542818834 364311662 364311662 857998543 857998543 642197711 671224938 671224938 142735523 802719604 1057792037 1073523635 1073523635 536873237 536873237 191658112 876968455 876968455 707976924 677369201 892940010 892940010 780374512 872480768 872488971 872488971 685584069 685584069 599589300 740090486 777053847 997017450 997017450 193725488 705765909 713837141 713837141 1017964041 1017964041 292358626 662809720 662809720 562421105 96088600 302221480 838397170 838397170 836780291 577351984 272004560 282229840 411131968 411131968 18351232 18351232 4264480 4194432 405799686 413945222 413945222 409902656 0 0 45144850 470422366 470422366 458672556 458672556 172397720 172397720 134266884 221286437 221286437 729492824 729492824 638587777 610061961 759301936 759301936 596769548 204529957 245709088 245709088 586308529 586308529 100491172 706911496 741610148 741610148 829567123 863187891 863187891 588284962 318293040 559490721 576114100 974671985 974671985 1033422447 1033422447 974594080 1024989697 1024989697 764516522 825251170 825251170 580932572 89313960 306091600 306091600 311019712 311019712 133297362 331417160 643776707 788930769 788930769 759743661 776562703 895500452 1035122607 1035122607 536823485 536823485 261756943 604428297 604428297 984256536 984256536 786536589 725803468 25371716 407262370 407262370 402922592 402922592 269391634 823677657 823677657 571408161 815063705 815063705 779565981 884353175 884353175 885169890 885169890 546443841 546443841 980363016 980363016 606344459 882193112 882193112 818633258 818633258 351935400 359401704 564811595 564811595 532728148 532728148 809819947 809819947 903359290 903359290 218313068 222636204 602455009 602455009 505471124 505471124 449692954 426849590 449123994 449123994 425408564 360777938 360777938 130819576 130819576 483492584 483492584 164199780 307832460 503316510 503316510 291555084 291555084 461947494 990938223 990938223 172302898 683763394 941147655 941147655 819716240 713068545 843178010 843178010 512211840 512211840 291580066 840008696 943466098 1005379696 1005379696 973704247 625565832 323748888 255873048 237023244 179307348 199523216 199523216 136591708 89638760 100712472 199278936 199278936 245586204 246794684 246794684 350446050 350446050 363455850 365211008 365211008 511752688 511752688 276454654 231145818 193011828 173614740 187685792 794024865 794024865 747982912 789140564 789140564 595793292 623197295 1006970895 1006970895 963783224 917195032 845556123 749183204 347751716 671638892 1031476335 1031476335 592082118 592082118 587822468 958128979 958128979 710088753 900672892 900672892 520364498 182811446 311136404 311136404 316411602 329065856 329065856 702029168 712383381 712383381 677396680 677396680 347867396 876698703 876698703 378340447 907529110 907529110 912107739 912107739 991978491 991978491 560913156 141869056 141869056 118503976 118503976 614938953 821150720 821635011 833677017 919733536 919733536 878806267 257094696 571753680 986491457 986491457 915897927 554601421 291482929 631461830 814256611 814256611 690314526 324616552 324616552 317380050 496955484 496955484 316083760 500361664 500361664 529581594 529581594 452457854 1056230511 1056230511 1011404363 1011404363 764811885 764811885 957708350 957708350 980458416 980458416 644798993 521050017 301929538 948490305 948490305 1017019223 1017019223 959688203 104936451 885081065 885081065 548930306 556795488 556795488 45123152 45123152 174049008 174049008 172779140 192596068 192596068 146168320 146168320 686485108 686485108 568154436 580635940 707895685 728050101 728050101 733032549 733032549 413081585 540803166 920478028 920478028 683163019 211192320 668056404 668056404 559012091 1024700210 1024700210 676487210 676487210 660773668 541378689 541378689 203337840 189413513 114761240 244647004 244647004 296738366 296738366 294158470 166630108 166630108 75288456 272960770 272960770 180753892 300669186 300669186 193029024 167351264 294534434 383567091 879631755 889612905 889612905 395264162 891739008 891739008 685588439 638332697 618796689 618796689 811015209 811015209 770183054 472563232 490072878 878558205 878558205 294244447 624254817 767011431 767011431 658897843 635486505 270810384 858155089 870408384 870408384 822283395 593572564 450243600 8726592 10817792 13509952 50393136 50393136 143199616 143199616 207404708 207404708 138496160 138496160 82817760 29938912 436241988 436241988 379667984 1037628088 1037628088 684182544 443008085 939595954 939595954 671775111 774192499 774192499 812445448 1023617323 1023617323 289104914 645402108 645402108 627843512 627843512 522958392 972784822 981075651 981075651 856427571 405802293 75793568 668246648 1057610799 1057610799 656881977 656881977 611292353 595775601 874512651 928783751 928783751 867238792 867238792 335544338 100663320 613583496 613583496 643121371 643121371 592648711 350360010 946458066 946458066 55088896 62988528 369492212 369492212 693379680 693379680 601704981 379601608 379601608 373342362 373342362 402895424 409674120 470422542 470422542 281018578 307926726 307926726 303848576 303848576 17304672 25954528 25954528 609831528 633994369 633994369 70625313 72037248 201746056 548445100 548445100 233383404 569901612 569901612 642590333 642590333 579187460 579187460 173989524 447254565 447254565 318902322 318902322 599841207 857248117 857248117 550233841 550233841 1044595349 1044595349 336851466 608325849 608325849 179319104 235016220 235016220 507725704 507725704 268071282 232837236 253497608 253497608 245387396 178458260 178458260 81536788 208148112 208148112 371269914 371269914 338598738 338598738 306336076 306336076 185836450 375181232 375181232 224444844 702840992 972556458 972556458 622873632 622873632 678168782 883435281 883435281 472976742 573320715 573320715 503327148 520095744 520095744 747234381 747234381 579448132 682108745 925919604 925919604 310130182 979308692 979308692 914390731 914390731 1050320216 1050320216 942983943 438801693 675355520 675355520 456591674 112405712 628762009 661148153 661148153 132643320 42603600 42603600 626270928 626270928 739142145 879983628 879983628 611128715 610271625 537709960 805689384 805689384 982128724 982128724 662977772 662977772 537270273 98516712 195068048 195068048 140533024 553820544 560198049 569732755 852178131 852178131 324471329 417591750 681625429 681625429 1068707197 1068707197 178367082 811256754 811256754 747624455 747624455 369624759 444861090 444861090 333261104 455808278 455808278 413340752 181683892 199505152 199505152 189542464 134886720 64907264 64907264 49306360 86167848 123408056 123408056 130554440 130554440 39485072 41607056 576917041 590383840 602482161 602482161 594576849 577889169 197780724 197780724 24422004 736759040 736759040 576198468 45128464 45128464 36750096 8307344 7926016 134905876 134905876 45403408 495621140 495621140 395559970 469434900 473434062 481822542 682127335 682127335 688441966 688441966 629506217 797141661 797141661 417797006 609137350 610293641 833472512 839306627 839306627 824629539 889718921 889718921 562826401 543452746 901333091 901333091 546049089 299673034 354848000 354848000 297869538 279898112 23935360 23935360 8836192 27552864 27552864 56777577 642876041 642876041 617685705 869180234 869180234 652651761 575933073 832679017 832679017 881602610 881602610 388192400 388192400 77911544 77911544 184196308 184196308 231252736 231252736 185018316 184675628 184675628 483614768 535964290 535964290 60744338 37036336 33658832 202769734 454967756 454967756 226286114 546052993 546052993 532832286 675398835 675398835 665982421 665982421 715387221 715387221 612533516 314132160 10614081 880346183 880346183 227820542 980928849 980928849 403075272 403075272 891332629 960594050 960594050 873816199 826288680 660385986 123732408 536880848 584656593 584656593 489962657 380928778 380928778 78643264 78643264 103247872 118376728 118376728 61749344 73259424 73259424 138071321 772853584 1042189639 1042189639 710596123 1036411427 1036411427 806280195 807850847 1050334815 1050334815 276375426 945190754 945190754 696389733 696389733 589863184 179610108 185165108 509640975 577815441 577818633 577818633 490972194 545297587 545297587 839040770 839040770 838286307 579317396 615441301 768815853 768815853 676046593 631365993 614364512 572133632 550247704 550247704 240346429 251639225 691542753 768724718 886587615 886587615 738857486 497069088 346104138 284899266 544783230 1070595327 1070595327 532105089 207755606 307368594 505467788 681946196 816211605 954427846 1053012683 1053012683 567399535 572219547 920683019 920683019 868499716 868499716 439629136 439629136 504761372 504761372 235674142 729234357 911686369 1022835663 1022835663 563544494 522342632 757666998 837784224 837784224 209899596 756822924 770567661 770567661 729124186 1045742617 1045742617 406372743 850544795 850544795 691529268 691529268 341197406 104133182 359960692 359960692 277052328 247874636 260359168 260359168 130697208 55952820 257205504 257205504 410211068 448668712 448668712 369494986 351796170 528488272 528488272 520098066 193614015 895668651 927125675 927125675 861570824 780585677 780585677 592675184 1037251311 1037251311 835938411 1034107434 1034107434 499165671 676465248 698026130 698026130 619185353 619185353 950528337 950528337 546749326 849325315 849325315 782721835 879191409 879191409 1047908972 1047908972 733920561 535974497 280921139 181931228 300943776 300943776 725647706 725647706 598060554 605841762 637904922 637904922 153699956 671865384 701698536 701698536 539184200 954188366 954188366 182889654 272908898 842225648 888911874 894109472 950202631 950202631 625202560 469841764 149257668 198920786 198920786 260886076 421824592 432076034 488806796 488806796 413847662 292009676 471533294 471533294 358428330 358428330 287377162 287377162 309252690 309252690 285525464 396924386 396924386 277128096 324627936 324627936 43918496 43918496 20806608 136584576 136584576 25276480 54413629 618147037 739296077 739296077 738297930 939594048 939594048 637673559 447167356 542818834 638074880 638074880 364311662 857998543 857998543 642197711 671224938 671224938 142735523 779619605 779619605 584107897 826100512 826100512 131603864 26350176 876968455 876968455 707976924 677369201 281976578 780374512 1021571535 1021571535 506727198 599660987 1069367147 1069367147 638748196 740090486 1002448125 1002448125 997017450 374342280 406652726 475606858 486048328 1017964041 1017964041 336675402 662809720 662809720 562421105 339738378 302221480 838397170 838397170 836780291 577351984 272004560 282229840 354082710 354082710 416021572 416021572 145526594 145526594 161879748 720252693 720252693 196600657 834054720 834054720 540703714 540703714 248513244 248513244 87822120 218901769 795292893 795292893 616790409 143190549 729492824 729492824 576734432 598263153 759301936 765727033 765727033 783109393 783109393 254612512 723527733 723527733 100491172 543993548 741610148 823219136 924105379 924918075 924918075 71096960 71096960 60866928 576114100 974671985 974671985 63489219 974594080 974594080 541546708 541546708 264279672 96112760 117360920 117360920 80250224 22492192 58474416 58474416 21713344 21713344 131330275 643776707 788930769 788930769 759743661 1071274229 1071274229 887156057 1041538383 1041538383 245028911 1002527858 1002527858 887327404 887327404 747819597 347118753 863178183 863178183 676796324 676796324 436142804 436142804 49054064 137872928 137872928 58807604 169287688 439626391 779565981 779565981 100236053 885169890 885169890 546443841 944083934 980363016 980363016 442767425 882193112 882193112 127586330 269672034 287229984 359401704 359401704 297582408 479922030 479922030 809819947 809819947 745933383 745933383 204921612 222636204 416688228 416688228 303613458 449692954 449692954 426849590 449123994 449123994 520566846 520566846 319173800 283128970 246289428 483492584 483492584 164199780 164199780 125307652 107824272 107824272 108124928 108124928 665198928 665198928 72052384 683763394 941147655 941147655 819716240 713068545 572993928 572993928 511990149 184237172 184237172 168819732 765060 1005379696 1005379696 201870608 201870608 139146372 237023244 247672484 247672484 228515436 199523216 136591708 89638760 100712472 199278936 199278936 245586204 246794684 282204290 282204290 67027798 220126764 499743852 499743852 511752688 511752688 276454654 231145818 193011828 276054144 276054144 197135558 319556658 416022772 637946938 637946938 494650335 940262660 940262660 446935364 232047200 232047200 223890080 223890080 214483020 671638892 671638892 229213189 50988064 50988064 50988064 121233984 618320908 618320908 88784541 29698272 312506256 312506256 450797286 450797286 950010183 950010183 447772805 584704208 732798661 940869400 940869400 541790731 92563492 876698703 876698703 470878794 907529110 907529110 912107739 912107739 881141835 210250759 101019440 20955136 541894210 819325635 819325635 614938953 832637514 832637514 833677017 833677017 205343356 610078854 610078854 571753680 986491457 986491457 915897927 169837271 125541652 120815506 503873962 503873962 159918360 67317768 80741064 198765808 496955484 496955484 316083760 500361664 500361664 128479093 433185510 433185510 1056230511 1056230511 1011404363 1011404363 764811885 764811885 957708350 957708350 980458416 980458416 644798993 521050017 182190656 948490305 948490305 1017019223 1017019223 959688203 268435456 885081065 885081065 548930306 556795488 556795488 196650500 196650500 174049008 174049008 172779140 192596068 192596068 176083844 176083844 673663296 673663296 687948580 687948580 187968001 27344960 18923808 21229728 198811744 425983508 674877842 839453708 839453708 683163019 193964976 668056404 754460006 754460006 1024700210 1024700210 676487210 676487210 854072937 854072937 608834697 712579022 712579022 113455320 425923961 447048485 964526761 964526761 336746382 743035425 743035425 723789336 1040485256 1040485256 963904310 940327335 858023220 193029024 423962790 423962790 383567091 879631755 879631755 822790568 916279939 916279939 537006081 537006081 143360 13119488 116269568 116269568 390046092 390046092 472563232 490072878 490072878 102446088 102446088 67769352 67769352 366831024 366831024 109890648 109890648 15769216 9534656 16754624 193727316 193727316 54788340 2359524 273664 11536512 14495424 14495424 22031936 22031936 18274848 85411360 117879336 117879336 75827208 203533642 256377883 256377883 444289244 493085437 684182544 684182544 443008085 939595954 939595954 671775111 774192499 774192499 812445448 1023617323 1023617323 660677049 843432749 940837383 940837383 627843512 612015620 674606468 850995184 850995184 694431191 893395378 893395378 668246648 668246648 650453624 650453624 558180513 289407138 568328264 874512651 928783751 928783751 631775501 653312689 653312689 910689811 910689811 471361050 370438352 1038282794 1038282794 782828374 782828374 740552973 443878124 443878124 971509716 971509716 760161909 581835917 503220536 379601608 379601608 373342362 382816784 382816784 217387484 407186780 407186780 237935372 237935372 168841744 554179445 554179445 715655488 715655488 135545245 773739957 773739957 633994369 694019589 694019589 731691449 731691449 548445100 233383404 569901612 569901612 642590333 642590333 579187460 579187460 173989524 276303572 945184594 945184594 442686416 442686416 282116304 303038994 328253970 328253970 268768790 268768790 43614240 167842928 168435876 315634932 417047062 417047062 507725704 507725704 461444232 461444232 248000616 245028444 245028444 196505372 263791348 263791348 259598268 208148112 371269914 371269914 387220004 387220004 306336076 307241640 385949754 385949754 375181232 576717201 702840992 702840992 858557711 858557711 440705024 829047756 883435281 982720869 982720869 573320715 573320715 503327148 503327148 447221094 747234381 747234381 579448132 682108745 925919604 925919604 310130182 422396978 614143008 914390731 914390731 1050320216 1050320216 942983943 839349375 671663109 1026651692 1026651692 547891360 628762009 661148153 661148153 543476097 730307412 730307412 724190981 796772464 796772464 879983628 879983628 886182603 983885891 983885891 275276094 895559091 895559091 885535898 885535898 570559499 545394753 167840620 195068048 195068048 185820912 167626021 167626021 708333092 708333092 557528865 289811315 417591750 681625429 681625429 452720598 366416800 139566232 811256754 811256754 747624455 747624455 809187075 945230277 978722305 978722305 726796898 208211008 208211008 181683892 114070060 189542464 189542464 197043208 197043208 89112784 89112784 84199464 123408056 123408056 90456608 90456608 28917600 7062816 576917041 590383840 602482161 602482161 594576849 577889169 197780724 197780724 61527408 736759040 736759040 576198468 536692809 536692809 559682993 561650201 639933721 639933721 370578873 891144898 914678448 914678448 395559970 343540508 473434062 481822542 682127335 682127335 366183402 616655042 616655042 1015343755 1015343755 417797006 873236632 873236632 843629715 819458049 819458049 806095136 824706339 824706339 562826401 543452746 901333091 901333091 608491177 626460552 626460552 354848000 297869538 279898112 30976384 24651392 24651392 27552864 27552864 17688192 6415104 10608960 35070704 869180234 869180234 652651761 575933073 269213331 590848 365112962 365112962 388192400 388192400 77911544 77911544 184196308 184196308 73798144 185018316 185018316 184675628 184675628 483614768 535964290 535964290 52519346 37036336 57839104 202769734 202769734 205133440 205133440 546052993 546052993 784729232 784729232 1035662582 1035662582 665982421 715387221 715387221 612533516 48049872 413965852 880346183 880346183 531639006 980928849 980928849 403075272 403075272 891332629 960594050 960594050 873816199 826288680 126892522 126892522 563116544 807061377 807061377 272622723 317044776 317044776 96954802 78643264 104950144 118376728 118376728 4194688 15762176 15762176 7881600 919682444 1042189639 1042189639 710596123 1036411427 1036411427 806280195 807850847 1050334815 1050334815 1000636451 945190754 945190754 696389733 696389733 589863184 179610108 185165108 434135216 533014782 533014782 145562606 193460340 545297587 545297587 839040770 839040770 838286307 579317396 615441301 768815853 768815853 676046593 631365993 614364512 592278945 655802248 714510953 714510953 761216144 761216144 768724718 886587615 886587615 497069088 497069088 753753280 753753280 740552973 441321065 334883826 158679126 316711296 878158673 890491566 890491566 740694285 954427846 954427846 939840129 691317509 691317509 920683019 920683019 868499716 868499716 148932928 247174356 302100880 302100880 287254472 729234357 928790667 1022835663 1022835663 769069190 922853869 922853869 876766387 837784224 209899596 756822924 770567661 770567661 729124186 1045742617 1045742617 946551519 946551519 868429977 868429977 843120690 319394608 61218992 43778368 43778368 50380848 50380848 260359168 260359168 230084096 176555508 177329512 177329512 410211068 448668712 448668712 354492714 295995238 528488272 528488272 520098066 353912746 895668651 927125675 927125675 861570824 439145144 471900046 592675184 1037251311 1037251311 835938411 1034107434 1034107434 499165671 676465248 676465248 77595907 619185353 619185353 950528337 950528337 546749326 849325315 849325315 640610906 879191409 879191409 1047908972 1047908972 639738654 64227056 789504 64490224 64490224 34636320 34636320 34636288 1065488 4867792 4867792 185580032 185580032 671865384 701698536 701698536 539184200 954188366 954188366 182889654 272908898 842225648 888911874 894109472 950202631 950202631 625202560 469841764 158385476 198920786 198920786 260886076 421824592 432076034 432076034 970982335 970982335 292009676 471533294 692103267 969256656 969256656 907375482 861085619 309252690 309252690 105501994 396924386 396924386 277128096 324627936 324627936 50733104 136475920 150404112 177417344 177417344 50637844 62618740 618147037 739296077 739296077 738297930 738297930 536899630 506401935 646131771 646131771 638074880 638074880 62002032 62002032 38391760 61813040 312719472 312719472 52771058 653449665 653449665 584107897 826100512 826100512 131603864 907953152 907953152 681791816 418643471 313846664 595445786 595445786 1021571535 1021571535 506727198 599660987 1069367147 1069367147 638748196 638748196 1002448125 1002448125 874976198 374342280 302657546 302657546 486048328 486048328 411361098 336675402 272433168 379705178 379705178 339738378 112100768 112100768 106492368 130132040 130132040 67147282 119146424 354082710 354082710 416021572 416021572 258022832 258022832 161879748 720252693 720252693 576926128 834054720 925069449 925069449 918053107 725100374 725100374 549360629 218901769 795292893 795292893 762321411 762321411 420948912 659415332 661225560 661225560 669040956 765727033 765727033 783109393 783109393 293675106 723527733 723527733 142749764 142680132 16978020 823219136 924105379 924918075 924918075 596641218 599883872 599883872 575334976 817218130 817218130 114640440 956394178 956394178 802390728 802390728 264279672 96112760 117360920 117360920 313114474 313114474 273752706 298894050 298894050 79771898 79771898 394687962 394687962 1028473944 1028473944 1071274229 1071274229 887156057 1041538383 1041538383 363748525 1027855271 1027855271 887327404 887327404 747819597 994930265 994930265 863178183 758178317 758178317 436142804 436142804 49054064 137872928 448101666 448101666 918189983 918189983 371878529 95092748 148056772 558842752 558842752 555370496 944083934 944083934 650223767 442767425 651506250 651506250 355891704 355891704 287229984 287229984 367807970 367807970 291616800 394225476 394225476 98566632 225995204 225995204 717198517 717198517 477371944 461574182 457704630 457704630 313590042 827836674 827836674 607468486 520566846 520566846 386766866 308470808 246289428 421875934 474924110 527494510 527494510 480751454 480751454 290143612 290143612 987707350 1060575591 1060575591 784408958 784408958 158605697 33554448 275120320 275120320 572993928 572993928 883694401 883694401 826170723 816452931 932079118 932079118 939909124 939909124 758754088 292889908 257374908 247672484 247672484 228515436 115175136 60436000 60436000 45157184 45157184 84708584 84708584 81037320 282204290 282204290 303730908 483968718 499743852 499743852 453507126 453507126 479725284 479725284 519002322 519002322 438319988 605765153 605765153 682497992 682497992 590032378 554486817 940262660 940262660 581497920 577789172 1071768063 1071768063 556371156 509710100 538798081 538798081 578814033 663225387 663225387 277439522 931393815 931393815 618320908 728690148 728690148 422027332 312506256 450797286 450797286 950010183 950010183 447772805 584704208 732798661 940869400 940869400 500558574 1070337279 1070337279 576202839 576202839 470878794 442173652 997859132 1021103823 1021103823 199759089 199759089 481128750 541894210 819325635 819325635 595549635 832637514 832637514 550837053 236265616 236265616 610078854 610078854 819751298 819751298 796828129 804588989 804588989 517603905 517058164 82727008 73016960 73016960 67317768 80741064 198765808 198765808 35532928 239256264 239256264 97313468 135033444 135033444 159588228 159588228 151002048 516258220 516258220 245009118 190909376 190909376 55708612 154277952 154277952 174981264 182190656 182190656 172756116 308372630 308372630 493019136 493019136 323023240 299925968 306201010 329517154 406062960 406062960 196650500 196650500 172364800 134613136 138676356 191183460 191183460 179706708 176083844 673663296 730333639 829990050 832397495 977342279 997722039 1005139639 1005139639 719590565 558053670 674877842 674877842 190527156 652686004 652686004 586591052 754460006 754460006 679591256 679591256 190548070 190548070 883573305 883573305 685892037 947908607 947908607 838984635 838984635 1035108509 1035108509 964526761 336746382 743035425 743035425 723789336 1040485256 1040485256 963904310 940327335 858023220 159770724 423962790 423962790 315419954 564430314 564430314 562653696 916279939 916279939 575885457 575885457 105647256 640554888 640554888 574424073 571153681 545038984 134464212 115792840 229449524 229449524 134032872 65717896 203237204 366831024 366831024 305227848 358867896 358867896 92735842 66441824 161225424 161225424 170658128 185074740 185074740 163580032 34409120 20720320 267127192 267127192 234789764 234789764 229392748 185191240 75827208 203533642 256377883 256377883 444289244 493085437 493085437 848150206 918177579 918177579 824755491 86106408 461672646 461672646 520415548 520415548 542772896 926941371 926941371 940837383 940837383 450446084 612015620 974347415 974347415 490444744 762191433 893395378 893395378 851837017 778784612 778784612 778674759 621356073 806218755 948559177 948559177 741760648 741760648 294708098 653312689 653312689 910689811 910689811 740483699 956900391 1038282794 1038282794 782828374 782828374 740552973 443878124 1046490657 1046490657 971509716 760161909 624764568 624970841 624970841 367969992 366527538 629456465 629456465 371218560 531633542 531633542 317195730 281617602 418134466 554179445 554179445 715655488 715655488 135545245 773739957 773739957 97553928 694019589 694019589 731691449 731691449 15374084 15018432 29565568 61796688 61796688 34544672 34544672 25862896 155096808 380113327 945184594 945184594 442686416 583817699 684347393 985974999 985974999 945084631 760153813 760153813 286166104 786681733 786681733 315634932 417047062 417047062 135329414 281702988 461444232 461444232 248000616 245028444 245028444 196505372 263791348 263791348 259598268 191823700 499940740 499940740 387220004 387220004 588286552 977799598 977799598 591405228 591405228 645517136 867746363 867746363 858557711 858557711 363332938 829047756 877966661 982720869 982720869 525355445 235995398 390137128 390137128 447221094 447221094 193462628 193462628 443556660 443556660 319037596 516149966 516149966 523053552 871535880 871535880 1005015158 1005015158 839349375 839349375 714408757 1026651692 1026651692 547891360 547891360 565461728 565461728 543476097 730307412 730307412 785181549 796772464 796772464 638880013 638880013 886182603 983885891 983885891 275276094 895559091 895559091 885535898 885535898 570559499 546191520 546191520 167840620 570789408 570789408 181780676 181780676 708333092 708333092 557528865 612632260 770180589 770180589 459351169 381681882 478466004 478466004 300192582 188675642 436994066 436994066 809187075 945230277 978722305 978722305 726796898 850137901 850137901 125636240 125636240 668604128 668604128 776413732 776413732 639081096 639081096 618263564 76810824 10300992 10300992 23494272 23494272 7062816 5147392 143003968 143003968 136579332 3095808 168646688 185332788 185332788 989989014 989989014 245807129 326853762 536692809 536692809 559682993 561650201 639933721 639933721 370578873 891144898 914678448 914678448 270162178 315999504 336642762 345096714 481549038 481549038 412224128 616655042 616655042 1015343755 1015343755 147871817 873236632 873236632 843629715 810986169 822267939 822267939 824706339 824706339 609553280 609553280 541172482 540091137 608491177 626460552 626460552 5454336 29790400 30976384 30976384 278990114 278990114 159752292 292357250 292357250 610387081 610387081 630460809 630460809 597506928 597506928 560405537 582092689 607526281 607526281 544739720 128107648 128107648 104408856 76215120 27383360 26789472 9528864 39125280 56961456 292684082 387205684 516180110 516180110 505581980 505581980 111153494 94376080 132646392 484983988 698927773 698927773 987896361 987896361 784729232 784729232 1035662582 1035662582 1015662868 1015662868 242474854 242474854 147105970 413965852 476802442 531639006 531639006 509872542 400935348 271966632 271966632 681538711 839726166 910710803 910710803 789995029 769704810 769704810 655612321 841630979 841630979 805340162 805340162 317044776 121762816 126809232 126809232 104950144 109212744 109212744 67825688 90202510 207124509 919682444 1017719248 1017719248 522604751 522604751 122194595 952421095 952421095 722469429 1000636451 1000636451 837127474 837127474 717012465 717012465 596134400 51423360 66175800 434135216 533014782 533014782 145562606 193460340 308679120 453242934 667454800 667454800 627362217 591719673 172777937 86693272 86693272 92409960 585453392 592278945 592278945 655802248 740297908 740297908 761216144 761216144 453582500 332797045 483607793 483607793 394076494 753753280 753753280 740552973 441321065 334883826 420956357 581603344 878158673 890491566 890491566 853376075 853376075 806930179 806930179 691317509 691317509 321126928 92459112 260571396 260571396 128451960 247174356 247174356 672277509 672277509 692720876 928790667 928790667 878786185 878786185 922853869 922853869 876766387 166397063 156714880 154139940 537184257 609518216 897763674 897763674 512831953 946551519 946551519 868429977 868429977 843120690 163581952 46732304 43778368 43778368 50380848 50380848 224304752 230084096 230084096 176555508 177329512 177329512 62437380 482565736 482565736 228265704 295553986 295553986 277480776 445648920 445648920 353912746 323141800 323141800 274911618 274911618 33554564 173064208 173064208 141725696 169905032 239473416 239473416 239075484 160832100 160832100 66453780 29885664 29885664 27805856 144982368 187312128 571707392 1058319386 1060670244 1061985052 1061985052 470695924 470695924 210233031 937027323 937027323 897644643 921429331 921429331 703139674 703139674 641286754 601237146 601237146 576952866 216449072 647522672 647522672 11127313 7146880 21902720 120140896 327203064 332188914 337635072 337635072 28325184 28325184 17425440 17417056 158385476 158385476 184091604 184091604 25900128 225456384 373493316 373493316 970982335 970982335 99689448 209290311 692103267 969256656 969256656 907375482 861085619 249784457 249784457 58509296 57450160 50794752 15083904 15083904 16785408 50733104 136475920 150404112 177417344 177417344 50637844 62618740 62618740 539361672 539361672 543650244 543650244 434266598 506401935 646131771 646131771 306909497 291571345 108409896 313874976 313874976 320880680 358498824 358498824 348970248 279430482 364209728 364209728 619347848 619347848 334447672 907953152 907953152 335974939 956879914 956879914 915133569 750858272 750858272 858977664 858977664 534372471 713233962 713233962 51958394 51958394 25639008 156700800 218108520 218108520 209720108 78908020 10750272 274172880 274172880 272433168 272433168 125841186 58794096 58794096 59058288 59058288 38053984 22839968 17324192 17324192 4378752 120652200 120652200 38871696 104992920 258022832 258022832 70239604 130569904 130569904 576926128 656629921 925069449 925069449 918053107 725100374 725100374 549360629 138907136 39462272 33348304 762321411 762321411 420948912 659415332 661225560 661225560 477659424 477659424 239551782 146514638 293675106 293675106 731988257 731988257 237802608 793357449 793357449 724157705 724157705 117857792 596641218 596641218 599883872 599883872 538551809 817218130 817218130 130217992 956394178 956394178 802390728 802390728 92359909 76325552 54970488 62840688 313114474 313114474 273752706 298894050 298894050 79771898 79771898 958321890 958321890 1028473944 1028473944 1002825975 540687952 762899435 762899435 686081476 363748525 1027855271 1027855271 740310030 800491221 800491221 994930265 994930265 442615846 758178317 758178317 74565485 74565485 558632144 558632144 448101666 448101666 918189983 918189983 371878529 95092748 148056772 544294841 555370496 555370496 873781980 873781980 840312403 840312403 651506250 651506250 390013410 390013410 916861010 916861010 567199520 367807970 388605712 870165872 870165872 398238109 237769872 237769872 717198517 717198517 916857336 916857336 715599931 457704630 194052156 827836674 827836674 607468486 417331328 386766866 386766866 308470808 67143152 177855394 474924110 527494510 527494510 480751454 480751454 290143612 290143612 987707350 1060575591 1060575591 784408958 784408958 368059330 368059330 338829657 282814400 303874124 1011007581 1011007581 883694401 826170723 816452931 959684651 959684651 939909124 939909124 758754088 430282156 257374908 245890720 245890720 484459394 484459394 326592486 245385190 245385190 329278796 329278796 438862934 478707856 478707856 93062312 303730908 483968718 483968718 362400280 453507126 453507126 479725284 479725284 519002322 519002322 458371074 605765153 605765153 682497992 682497992 552579552 554486817 554486817 581497920 581497920 577789172 1071768063 1071768063 556371156 509710100 538798081 538798081 578814033 663225387 663225387 471091262 931393815 931393815 606719244 728690148 728690148 422027332 310843970 168854164 311716002 311716002 41557248 538325620 730146933 730146933 59908644 113845464 432023745 1070337279 1070337279 981500034 981500034 878205766 913100187 997859132 1021103823 1021103823 199759089 199759089 481128750 481128750 739133694 739133694 595549635 806630251 806630251 550837053 236265616 882442374 882442374 782967465 819751298 819751298 796828129 804588989 804588989 517603905 517058164 82727008 225461000 225461000 237842072 237842072 152274564 259483060 259483060 221588268 163770936 288627241 288627241 501477870 501477870 866901799 957079487 957079487 773400125 773400125 693253513 979503206 979503206 959941560 959941560 773276024 363877060 187033908 230675324 308372630 308372630 493019136 605230241 605230241 291092392 300964064 329517154 538582112 545784897 570954817 721946757 721946757 679489620 679489620 191183460 191183460 179706708 142765908 142765908 730333639 829990050 832397495 977342279 997722039 1005139639 1005139639 719590565 578732629 444099604 444099604 745673769 745673769 741939117 586591052 586591052 174414785 679591256 743874793 743874793 643846084 883573305 883573305 685892037 947908607 947908607 891568216 925108539 1035108509 1035108509 268976680 2764840 84612352 600894208 600894208 641763522 641763522 221569988 221569988 171544572 602234381 602234381 272254474 668147676 668147676 345981221 59789056 807398979 807398979 651964505 575885457 538184193 640554888 810549785 810549785 850442832 850442832 269474306 115792840 229449524 229449524 134032872 65334304 347756234 806304395 806304395 305227848 681827013 681827013 420125376 420125376 161225424 682689089 682689089 185074740 678233153 678233153 77103688 77103688 267127192 267127192 234789764 234789764 229392748 185191240 117514296 59843008 152314744 542256524 742342413 742342413 607393993 848150206 918177579 918177579 824755491 86106408 461672646 461672646 520415548 520415548 542772896 926941371 1068741524 1068741524 901824747 842070094 842070094 974347415 974347415 490444744 828507331 828507331 996737158 996737158 950023444 778784612 778674759 621356073 806218755 948559177 948559177 741760648 741760648 120188980 511828054 511828054 882378331 882378331 740483699 956900391 956900391 777773756 777773756 257229463 773304812 773304812 1046490657 1046490657 662252694 662252694 624764568 624970841 624970841 367969992 353802240 629456465 629456465 493479342 531633542 531633542 521352108 281617602 418134466 418134466 412036224 304219954 304219954 105955560 105955560 1068240255 1068240255 646810889 939798535 939798535 369761309 142153152 142153152 609133384 609133384 697100609 697100609 1024007030 1024007030 378443732 380113327 748311109 748311109 275174513 583817699 684347393 985974999 985974999 945084631 760153813 760153813 287181906 786681733 786681733 163832960 163832960 88728744 88728744 63010408 173184992 182157556 185621188 185621188 244672568 244672568 206868800 247332688 247332688 257143090 499940740 499940740 55888560 103039472 588286552 977799598 977799598 591405228 591405228 645517136 867746363 867746363 465578357 465578357 322386738 322386738 152517156 993191960 993191960 611421075 579340793 192490400 192490400 168561684 1012691835 1012691835 650979468 489240420 442185155 442185155 516149966 516149966 523053552 871535880 871535880 1005015158 1005015158 735150597 735150597 714408757 708053781 275214778 965252760 1048494158 1048494158 1070781183 1070781183 718988526 700812228 785181549 785181549 578923853 503742928 503742928 140583300 174858268 174858268 136915212 988294931 988294931 297739333 482691951 482691951 1007062116 1007062116 174502545 570789408 574104036 574931776 574931776 55697536 71616648 116498480 612632260 770180589 770180589 459351169 563113304 563113304 478466004 300192582 188675642 201557052 606483636 606483636 517276549 778641303 778641303 360710250 850137901 850137901 635442057 635442057 668604128 668604128 776413732 776413732 742625897 742625897 618263564 672563344 672563344 570891272 266372728 14619104 4854912 687509281 692237124 692237124 557583749 31075969 681821536 681821536 157575329 989989014 989989014 245807129 786964288 786964288 450147361 189485006 139435800 206568588 206568588 147345984 582010052 582010052 138957344 1068142011 1068142011 221997622 760409831 1003590637 1003590637 736310171 736310171 675350744 512862289 465593124 465593124 548627213 548627213 641806362 839361227 839361227 822267939 614821954 904145058 904145058 609553280 827852586 827852586 605342217 336677760 355320450 355320450 297260704 297260704 12736736 278990114 278990114 159752292 292357250 292357250 610387081 610387081 630460809 630460809 415363718 78003400 439952543 582092689 607526281 607526281 544739720 128107648 128107648 104408856 76215120 25748992 25748992 3086368 19079424 19079424 292684082 387205684 516180110 516180110 505581980 505581980 111153494 94376080 132646392 484983988 698927773 698927773 987896361 987896361 402916368 764980258 804864849 804864849 1015662868 1015662868 892663815 684194302 147105970 177359790 355654810 355654810 509872542 509872542 400935348 177291672 235003932 681538711 839726166 910710803 910710803 789995029 769704810 769704810 655612321 841630979 841630979 805340162 805340162 401217018 401217018 350582832 126809232 86672816 290082994 290082994 71935192 90202510 207124509 944543198 1017719248 1017719248 1055990751 1055990751 805355523 952421095 952421095 722469429 722469429 500034798 500034798 552580210 717012465 717012465 596134400 142268292 420289038 476703674 476703674 391070552 520693116 522790206 522790206 325705740 667987220 848070505 1032380433 1032380433 670161017 474051890 474051890 437831190 967291129 967291129 666413472 692965036 740297908 780708824 780708824 776726750 1008614539 1008614539 483607793 696491144 696491144 964303714 964303714 1004930833 1004930833 975669525 975669525 581603344 581603344 849216863 849216863 853376075 853376075 605554185 307234958 307234958 356854808 356854808 212600782 594657802 709960341 709960341 545283501 221220545 672277509 672277509 692720876 692720876 819030534 878786185 878786185 275114370 226123334 88357504 553044676 555881301 555881301 682713908 682713908 897763674 897763674 512831953 212147100 807612932 807612932 403841431 280567904 280567904 45163344 28640832 187972096 187972096 164191460 224304752 253566720 253566720 136519956 220504136 220504136 408986566 499527066 499527066 502056430 502056430 514068784 514068784 503581976 503975427 783168837 825179427 825179427 807116432 153277728 246856928 806746646 806746646 771656265 802472998 940852070 940852070 730618942 730618942 277874330 505946198 505946198 29885664 27805856 144982368 941131008 941131008 1058319386 1060670244 1061985052 1061985052 654893448 654893448 627425824 937027323 937027323 897644643 921429331 921429331 703139674 703139674 641286754 601237146 601237146 576952866 216449072 647522672 657984357 657984357 560030856 946643726 946643726 327203064 332188914 615451730 887216760 898957920 898957920 835529955 611864928 352533152 177496176 194054626 194054626 170692746 476314166 476314166 373493316 327945330 191774446 87895848 1023960830 1023960830 574742769 525970471 347962480 305658642 76974048 124380592 124380592 118076856 55577064 33720416 60819376 66685072 66685072 147401168 147401168 36309440 36309440 33994752 10526797 211853633 539361672 539361672 543650244 543650244 164055268 223099972 223099972 111620400 111620400 108409896 108409896 313874976 313874976 320880680 358498824 358498824 348970248 279430482 364209728 364209728 619347848 619347848 334447672 334447672 330827778 344068170 956879914 956879914 915133569 750858272 750858272 858977664 953365093 953365093 713233962 713233962 51958394 51958394 25639008 403054470 403054470 218108520 310459666 310459666 476277056 476277056 274172880 73587336 335552586 335552586 397484922 397484922 90466624 90466624 108140536 108140536 60217968 97842938 97842938 363711686 363711686 964433057 964433057 1037369573 1037369573 911842315 911842315 886868647 934595451 1041350983 1041350983 499237103 698679779 698679779 421857605 175383344 182540396 264290556 542120690 828598572 828598572 418797656 510706590 692505777 692505777 477659424 589301543 589301543 598227205 598227205 335733472 731988257 731988257 237802608 793357449 793357449 724157705 724157705 117857792 555800945 555800945 116819072 562597076 725928117 725928117 149180037 135203968 726730832 726730832 708915332 769045148 769045148 620764720 620764720 613521660 122846248 64030272 64030272 91124192 91124192 84724776 271722406 958321890 958321890 684985029 487513134 487513134 540687952 762899435 762899435 966052455 966052455 566919047 566919047 740310030 800491221 830863914 830863914 821597792 897892458 897892458 615281113 321463602 319488288 558632144 558632144 42896545 4378752 4214784 11802759 955388871 955388871 951395079 946940871 544294841 346167965 873781980 955453840 955453840 840312403 544611201 544611201 390013410 390013410 916861010 916861010 567199520 832061057 832061057 870165872 870165872 638470890 567285478 237769872 569641250 569641250 916857336 916857336 715599931 355272996 643881470 643881470 250071069 417331328 417331328 306483200 69369864 69369864 11275584 44696448 44696448 37644352 181939412 181939412 73084056 183505856 209310748 209310748 649617925 649617925 670099088 670099088 861987685 861987685 507609106 282814400 303874124 1011007581 1011007581 418123206 418123206 551612113 959684651 959684651 744175245 662434136 662434136 430282156 124882436 557860505 908017792 908017792 826751139 805485698 672203013 973627676 973627676 679477395 632301172 478707856 478707856 483517134 483517134 206141258 82837994 279970282 472187618 472187618 264323144 264323144 456362592 456362592 458371074 458371074 298201442 286603586 224083080 359117026 359117026 287432994 211464874 335679856 522338712 522338712 119065728 308619666 373563656 846014898 902834009 902834009 538184193 201392449 471091262 471091262 243875984 243875984 307376396 307376396 178561078 268767284 268767284 148898645 582298449 582298449 698881649 730146933 730146933 990821564 1036155101 1036155101 353233962 353233962 981500034 981500034 878205766 913100187 1031839163 1031839163 926813276 960867712 960867712 32027040 23283168 31985824 31985824 158484448 570184548 570184548 672320004 672320004 882442374 882442374 782967465 189974116 189974116 440926774 440926774 197722228 197722228 33584928 156591552 225461000 225461000 237842072 237842072 152274564 259483060 259483060 221588268 163770936 288627241 288627241 501477870 501477870 866901799 957079487 957079487 773400125 773400125 693253513 979503206 979503206 959941560 959941560 773276024 363877060 247849696 247849696 230675324 163747264 0 605230241 605230241 890910762 890910762 286797504 538582112 545784897 570954817 721946757 721946757 679489620 679489620 135011332 57568804 50258128 142765908 167336960 167336960 285491330 285491330 294287808 294287808 56239216 330313632 578732629 578732629 849609748 950537685 950537685 745673769 741939117 802114072 802114072 575973727 656544057 743874793 743874793 924727360 924727360 12269376 878845603 878845603 827135179 891568216 925108539 925108539 692630084 569637076 709935776 766648548 766648548 600894208 641763522 641763522 775948320 983337005 983337005 602234381 602234381 272254474 668147676 668147676 345981221 540653056 807398979 807398979 651964505 313743889 538184193 638980739 810549785 810549785 850442832 850442832 269474306 297321752 363504506 363504506 92419626 77853520 347756234 806304395 806304395 284373954 681827013 681827013 420125376 420125376 153802020 682689089 682689089 151528320 678233153 678233153 77103688 77103688 129835752 129835752 132154768 132154768 125938744 118030648 117514296 59843008 59843008 642804073 742342413 742342413 607393993 629536940 745634633 745634633 695528429 211812684 604262477 604262477 802956162 802956162 701569513 504243572 1068741524 1068741524 901824747 972375307 972375307 478659347 746498844 746498844 1024066219 1024066219 996737158 996737158 950023444 123536704 123536704 285586467 537844737 873404456 873404456 420169792 420169792 141370944 145885376 211289628 211289628 203197956 652090956 652090956 585952968 728671643 728671643 525235051 773304812 773304812 697567845 503328356 396177018 463808060 523463506 523463506 850624784 850624784 291788066 23071136 299616204 493479342 493479342 521352108 521352108 225640724 175374996 137629440 35656704 304219954 304219954 105955560 105955560 1068240255 1068240255 646810889 939798535 939798535 751953256 751953256 684072847 684072847 609133384 697100609 697100609 1024007030 1024007030 1011258113 457838306 457838306 269655058 982909811 982909811 327157256 471545358 471545358 471545358 90668180 287181906 408741888 408741888 192960772 159491072 26052772 88728744 88728744 63010408 104994412 182157556 185621188 185621188 244672568 244672568 206868800 206868800 73828808 257143090 335915486 335915486 177242310 107088070 808714530 808714530 696889184 696889184 258797008 258797008 152569380 162644000 971301248 971301248 322386738 322386738 152517156 993191960 993191960 611421075 591415888 192490400 192490400 168561684 1012691835 1012691835 650979468 536616372 442185155 442185155 324215358 457770500 457770500 779376000 779376000 1051284268 1051284268 541395310 749141032 749141032 730932280 730932280 965252760 1048494158 1048494158 1070781183 1070781183 718988526 700812228 169912348 730710421 730710421 164201896 281178528 810488071 810488071 710958863 335544337 988294931 988294931 506921653 596686270 596686270 1007062116 1007062116 720846949 318420439 574104036 574931776 574931776 197338580 55697536 123518248 204393090 531578238 798836178 909899736 909899736 674663210 796423442 796423442 203238924 243280448 606483636 966854716 1015351797 1015351797 656154868 215092360 678563037 678563037 635442057 635442057 87166116 252875400 634433588 634433588 742625897 742625897 575705268 672563344 672563344 570891272 266372728 46582032 599279984 687509281 692237124 712106289 712106289 546690144 681821536 681821536 165175841 696518849 696518849 592852321 786964288 786964288 450147361 189485006 139435800 206568588 355664939 355664939 229211913 673475517 673475517 1068142011 1068142011 631328984 760409831 1003590637 1003590637 736310171 736310171 675350744 512862289 887524352 887524352 876400395 106070480 106070480 839361227 839361227 651777289 883448896 904145058 904145058 819378888 827852586 827852586 822125699 610992809 604462208 355320450 297260704 297260704 8641920 11603776 16253184 16253184 18467456 25708544 25708544 5244960 29885664 584267324 584267324 219287705 122684088 185867952 185867952 126436880 76149976 6075080 50466864 50466864 34368512 44097616 44097616 46340096 51244160 51244160 34876592 56230688 56230688 93741240 93741240 68917576 68917576 119538704 119538704 222315893 510184426 889344654 889344654 487624719 402916368 764980258 804864849 870875486 974336535 1031850564 1031850564 684194302 342018168 145524034 269649334 331667264 331667264 456917024 456917024 380898002 380898002 235003932 206589954 324935346 727981660 916719963 916719963 728945589 728945589 447963974 447963974 370117582 400581872 401217018 401217018 350582832 289036482 289036482 349948658 349948658 71935192 71935192 67637256 944543198 944543198 247862725 1055990751 1055990751 805355523 809763744 809763744 672186885 672186885 171967254 402917774 402917774 47292432 13681344 55603288 142268292 420289038 476703674 670779419 926777625 926777625 663362402 702453067 702453067 667987220 848070505 1032380433 1032380433 670161017 474051890 474051890 437831190 967291129 967291129 666413472 738247169 739559949 780708824 780708824 776726750 1008614539 1008614539 445689892 696491144 696491144 964303714 964303714 1004930833 1004930833 975669525 975669525 414200769 177457856 721871633 721871633 373250306 397335054 1000486026 1000486026 961551357 1073554372 1073554372 212600782 594657802 709960341 709960341 545283501 221220545 521807402 521807402 205527226 592580332 644900416 644900416 429347812 575346316 743097712 743097712 553044676 746809863 746809863 682713908 682713908 1023632353 1023632353 1013233821 1013233821 807612932 807612932 591406096 591406096 280567904 245043324 189403268 187972096 187972096 181687508 164191460 253566720 253566720 136519956 220504136 220504136 408986566 499527066 499527066 502056430 502056430 514068784 514068784 503581976 589612833 783168837 825179427 825179427 840468915 840468915 627848928 806746646 977519647 977519647 802472998 952443309 952443309 730618942 730618942 694772169 916521989 916521989 884400985 884400985 872872299 941131008 941131008 436933888 386138128 553911833 553911833 654893448 654893448 627425824 73417344 101506200 204751234 471122574 471122574 448050536 448050536 303384602 303384602 399526344 399526344 428612982 500691946 657984357 657984357 560030856 946643726 946643726 832907880 276823191 615451730 887216760 898957920 898957920 835529955 611864928 352533152 177496176 194054626 194054626 170692746 476314166 476314166 344532042 704378301 704378301 307423830 1023960830 1023960830 750825029 750825029 617161929 617161929 147948744 134262441 124380592 118076856 55577064 33720416 60819376 66685072 66685072 147401168 178618884 178618884 34324048 159823348 159823348 649230872 702302740 781885016 781885016 712137462 712137462 304749743 987903835 987903835 913122768 913122768 398833704 398833704 314757330 275125456 298786914 298786914 377801977 564533667 564533667 874514921 874514921 611455881 870489601 870489601 345774706 345774706 344068170 286411360 391250068 391250068 924485183 924485183 960557075 960557075 679638149 1033028806 1033028806 1037021231 1037021231 968933607 586853786 233246980 310459666 310459666 476277056 476277056 215375954 168333648 335552586 360718456 397484922 397484922 222457924 222457924 191848704 191848704 97107944 362694104 362694104 363711686 708898326 964433057 964433057 1037369573 1037369573 911842315 911842315 886868647 934595451 1041350983 1041350983 832110980 698679779 698679779 543695686 175383344 182540396 264290556 542120690 828598572 828598572 443105552 443105552 692505777 692505777 405836212 589301543 589301543 598227205 598227205 420890650 542501873 542501873 233716996 252970280 252970280 257696012 257696012 170200760 108198016 108198016 129214704 562597076 725928117 725928117 149180037 135203968 135203968 708915332 708915332 769045148 769045148 620764720 620764720 613521660 122846248 64030272 64030272 91124192 91124192 84724776 271722406 809144513 809144513 805331046 805331046 487513134 331926342 722196595 722196595 1060601247 1060601247 872992844 872643661 842850569 849819987 849819987 830863914 821597792 897892458 897892458 615281113 681738960 681738960 691536148 691536148 418470004 331350258 270709203 694596652 1017202569 1017202569 951395079 946940871 671481883 740559117 740559117 955453840 955453840 671356933 571349824 783687453 783687453 204472349 105067160 268701857 549275587 832061057 832061057 492099674 638470890 1045465240 1046479476 1046479476 910477812 868255856 406964569 428270119 428270119 355272996 915988028 915988028 1026423638 1026423638 269783696 269783696 69369864 69369864 34168208 44696448 44696448 7345488 190417680 190417680 52618400 224985600 226043820 559683372 649617925 649617925 670099088 670099088 861987685 861987685 507609106 116942147 114631824 114631824 1009070528 1019615439 1019615439 798386547 644727322 923980347 923980347 394657291 351755852 351755852 475015222 557860505 908017792 908017792 826751139 805485698 672203013 973627676 973627676 679477395 632301172 155305440 155305440 483517134 483517134 206141258 82837994 279970282 472187618 472187618 363065706 363065706 456362592 456362592 32586144 32586144 25574368 158478592 158478592 183744628 183744628 157600164 81789384 262193332 262193332 124667608 119065728 127526520 369476675 846014898 902834009 925260468 925260468 556558347 556558347 160446820 243875984 243875984 307376396 307376396 178561078 310380596 310380596 184811602 582298449 582298449 698881649 698881649 575049493 990821564 1036155101 1036155101 353233962 820083632 820083632 207907160 207907160 1025997768 1031839163 1031839163 926813276 960867712 960867712 438690255 604713993 604713993 957375379 1025474593 1025474593 570184548 672320004 672320004 672272901 863047362 863047362 189974116 189974116 955359749 955359749 316028962 323335266 323335266 156591552 277612032 277612032 298913824 298913824 54979632 37611936 1571328 10600960 10600960 8657024 201841164 201841164 57780688 238956796 238956796 24588448 234110372 234110372 245591512 263678432 263678432 145016384 242524688 242524688 163621984 247849696 247849696 407745834 407745834 292112672 350228584 369233946 890910762 890910762 327945330 327945330 296374880 62180208 45402416 4329600 33895444 135011332 135011332 57568804 50258128 38135936 167336960 167336960 285491330 285491330 294287808 294287808 284307680 332066688 332066688 316826290 849609748 950537685 950537685 626460114 626460114 802114072 802114072 575973727 362158698 362158698 470534588 924727360 993668306 993668306 878845603 878845603 827135179 890636619 890636619 692630084 692630084 569637076 709935776 766648548 766648548 271151142 144760848 144760848 775948320 983337005 983337005 54806135 2232576 52843776 52843776 2787376 2232320 540653056 540653056 10059968 281232000 346555776 346555776 103490570 271058376 271058376 317204562 317204562 275030656 297321752 363504506 363504506 92419626 77853520 44701008 44701008 38416960 7549824 168759376 168759376 60693328 60693328 149330144 149330144 17177476 9544640 9544640 3219456 58721840 58721840 56141920 42270848 29224288 129877832 129877832 119074416 103310376 103310376 56627776 642804073 642804073 627257769 569500452 629536940 745634633 745634633 695528429 211812684 604262477 604262477 802956162 802956162 701569513 504243572 847544862 847544862 661583875 972375307 972375307 673776261 746498844 746498844 1024066219 1024066219 474319044 474319044 344055882 296806874 245973902 84157448 73400864 633602244 755238957 755238957 681648453 681648453 161593680 161593680 238946344 238946344 652090956 652090956 940536091 940536091 728671643 525235051 822836402 822836402 503328356 503328356 396177018 361046046 319816556 34418434 850624784 850624784 1044759164 1065779239 1065779239 105799762 138545536 168989444 180355984 180355984 312425282 312425282 440276996 440276996 456395574 456395574 186125570 29138368 596810968 606341385 606341385 606275849 751953256 751953256 684072847 684072847 514360800 573869471 573869471 601671873 1011258113 1011258113 457838306 457838306 269655058 982909811 982909811 730454136 730454136 201784405 176560212 965493389 965493389 958139940 958139940 950668904 950668904 680663374 57409714 527219166 527219166 436514822 436514822 350477064 278024390 76056576 485718852 485718852 340481090 481933070 481933070 470811976 335915486 378000192 378000192 808714530 808714530 1048685402 1051796325 1051796325 294963275 294963275 932498227 971301248 971301248 764555608 428040297 714154581 714154581 529163011 591415888 591415888 88349928 88349928 58985824 94131848 103875352 536616372 536616372 618798664 618798664 324215358 457770500 457770500 779376000 779376000 1051284268 1051284268 541395310 749141032 749141032 730932280 730932280 1 536870913 672475653 672475653 672475652 672475652 738765980 738765980 730710421 730710421 679575817 900290797 924961983 924961983 710958863 693441808 770565685 770565685 506921653 596686270 596686270 995264514 995264514 756473252 318420439 136880128 100714264 684959725 684959725 632292201 632292201 779637661 1053933975 1053933975 909899736 909899736 674663210 796423442 796423442 203238924 329376634 583542509 966854716 1015351797 1015351797 656154868 443870980 391345425 153434761 742267584 762713293 762713293 750844804 750844804 742688837 742688837 722641037 675354864 33555472 44662800 46193984 46582032 46582032 599279984 599279984 571058276 712106289 712106289 546690144 555679265 555679265 165175841 405013957 568192737 592852321 592852321 539583536 428567647 537920001 537920001 715129050 715129050 393236752 229211913 673475517 673475517 635487946 108053400 631328984 631328984 108554400 369117464 369117464 541174418 658964898 658964898 887524352 887524352 876400395 361049080 327222376 281203851 651777289 651777289 883448896 883448896 806289994 819378888 819378888 822125699 822125699 610992809 604462208 23208192 23208192 21180576 25457888 281136418 281136418 167202756 415349922 415349922 197561056 63052016 29885664 974200926 974200926 630198861 856810162 856810162 571523669 209738245 184715288 121962656 50454616 42342096 34250880 44097616 44097616 46340096 51244160 54785168 292144146 354587396 527210126 527210126 481896270 481896270 72973582 121216728 121216728 269631724 493540782 889344654 906140078 1043759128 1043759128 857903905 857903905 870875486 870875486 1031850564 1031850564 484833409 342018168 289540492 487217982 487217982 242523554 529877538 529877538 403018902 403018902 1050192395 1050192395 969307163 969307163 916719963 916719963 728945589 926585882 926585882 671401989 941133314 941133314 14753888 90321256 378810754 378810754 289036482 349948658 349948658 39823432 121726228 136364292 546213080 546213080 441827712 441827712 623143198 623143198 675286177 675286177 672186885 672186885 640961315 402917774 764535598 764535598 578814033 540091216 125981816 125981816 401457385 670779419 926777625 926777625 663362402 702453067 702453067 565729255 565729255 62315376 362977287 362977287 889242916 889242916 738037563 722353623 853165585 853165585 738247169 739559949 772317701 772317701 605618709 496425582 496425582 172919504 495439936 495439936 12582720 280541440 280541440 470038056 893059598 893059598 177457856 177457856 721871633 721871633 373250306 397335054 1000486026 1000486026 961551357 1073554372 1073554372 537598411 868967647 868967647 603655262 606482005 606482005 705226389 705226389 420688422 981433251 981433251 644900416 406695318 575346316 743097712 834534440 834534440 746809863 746809863 489108364 450276056 1023632353 1023632353 1013233821 1013233821 190571140 556888356 591406096 591406096 245043324 245043324 189403268 153032880 181687508 181687508 183550932 183550932 118735304 118735304 98619584 114369240 114369240 55619208 97332192 97332192 28617704 27601248 258114134 491772511 589612833 640885295 1072063528 1072063528 840468915 840468915 795645468 795645468 977519647 977519647 746711273 952443309 952443309 722669087 445479365 694772169 916521989 916521989 884400985 884400985 872872299 872872299 436933888 438054656 568123460 568123460 543362402 211144620 211144620 226871652 226871652 199728432 233262396 471122574 471122574 454727824 454727824 391644858 303384602 399526344 399526344 428612982 500691946 500691946 496107822 469791204 269508616 832907880 832907880 276823191 26421472 49854112 57688288 57688288 13474560 16703424 16703424 3859840 3097088 9587488 194168576 289641522 339249104 344532042 704378301 704378301 307423830 542953555 897614872 897614872 750825029 617161929 617161929 373557608 299182786 51515504 51515504 360845418 360845418 133693984 133693984 541888 12632256 178618884 178618884 66136000 159823348 159823348 649230872 702302740 781885016 781885016 712137462 712137462 304749743 987903835 987903835 913122768 913122768 398833704 398833704 314757330 30004096 268676232 268676232 377801977 564533667 564533667 883192640 883192640 611455881 870489601 870489601 345774706 345774706 352551004 352551004 511914698 511914698 924485183 924485183 960557075 960557075 881012811 1033028806 1033028806 1037021231 1037021231 968933607 877274488 401215688 104534796 174341524 183325440 183325440 482451612 482451612 314831446 360718456 360718456 161083984 222457924 222457924 191848704 191848704 97107944 362694104 362694104 334495218 708898326 708898326 564899688 806138900 806138900 171652884 698428260 698428260 100476929 479725066 832110980 832110980 413467072 543695686 946875584 946875584 786976184 786976184 696567909 488150386 488150386 443105552 443105552 121131052 241222044 241222044 286397446 286397446 235833348 420890650 420890650 176735284 205000324 205000324 252970280 252970280 257696012 257696012 170200760 119710336 119710336 129214704 129214704 58280593 160170656 160170656 32260160 25552992 58238560 58238560 57983984 22284752 8702656 8702656 33726080 33726080 33628176 24883200 24883200 30249536 30249536 14484096 813141002 813141002 805331046 805331046 532467582 331926342 722196595 722196595 1060601247 1060601247 1042744636 872643661 842850569 849819987 1052844630 1052844630 671273389 671273389 632677224 590923569 681738960 681738960 691536148 820976217 878842251 878842251 270709203 694596652 1017202569 1017202569 754985030 754985030 671481883 820635075 820635075 952420551 952420551 671356933 571349824 783687453 897696739 897696739 636160226 812589440 812589440 269052832 778695092 778695092 139782509 1045465240 1046479476 1046479476 910477812 868255856 406964569 581251160 581251160 356072710 915988028 915988028 1026423638 1026423638 303473152 303473152 37019904 37019904 39940480 39940480 34316304 20747008 190417680 190417680 121144636 445038312 445038312 559683372 559683372 275808672 189759176 160694720 268437504 406847654 406847654 289591458 806539450 940757787 1009070528 1019615439 1019615439 798386547 644727322 923980347 923980347 530458642 530458642 351755852 475015222 503687208 860334130 860334130 390430097 828673298 828673298 1017186072 1017186072 436216151 371045726 430997626 495560032 495560032 76809760 92538984 366742728 366742728 205927264 352361132 363065706 363065706 271242644 427954260 427954260 275516630 151719780 158478592 287648228 421993894 445451580 445451580 123741368 262193332 262193332 187204764 187204764 459615178 459615178 646786137 646786137 925260468 925260468 883675482 556558347 400804202 256537444 256537444 240817364 19892482 19892482 455607620 455607620 184811602 141698880 180427012 180427012 559155873 897080837 968935541 968935541 238239847 238239847 820083632 820083632 1053399770 1053399770 1025997768 1025997768 132597303 103162112 334582293 334582293 438690255 604713993 604713993 957375379 1025474593 1025474593 984019022 984019022 537182216 610043941 863047362 863047362 733183172 733183172 955359749 955359749 316028962 323335266 323335266 47111376 277612032 277612032 298913824 298913824 120137016 120137016 116530136 130326104 130326104 126635832 133511128 133511128 55484144 66793712 80762464 80762464 86118880 86118880 245591512 245591512 163685892 145016384 145016384 43517872 163621984 163621984 100788772 407745834 407745834 292112672 554832897 554832897 18351648 25168914 327945330 732355312 732355312 711295285 711295285 704643093 704643093 549322948 50467504 176436832 176436832 18366980 18399776 22644608 27649440 27649440 269838562 284307680 284307680 332066688 332066688 316826290 307498690 305261824 279445504 279445504 122852640 775508472 775508472 252944432 252944432 159518820 470534588 470534588 993668306 993668306 567679653 309081651 639004435 890636619 890636619 666531890 666531890 338428971 752353992 752353992 283173768 800751926 800751926 465939653 465939653 851560484 851560484 542985359 542985359 321427746 546748409 546748409 356912710 101209864 341837010 341837010 281232000 346555776 346555776 103490570 271058376 271058376 317204562 317204562 310539216 310539216 321946418 321946418 52478802 63856658 294140770 861617123 861617123 278017458 573016629 573016629 423761808 423761808 149330144 673643429 673643429 30332608 555803365 555803365 67987976 67987976 60064560 129804624 129804624 129877832 129877832 119074416 103310376 128282692 177435052 177435052 146158532 258658876 258658876 70406432 239676700 239676700 188747080 235345864 235345864 532606776 532606776 435357704 258617008 367159872 367159872 355948494 167313840 71332649 673776261 673776261 598574841 314711480 314711480 287310114 474319044 474319044 386275450 702810589 702810589 1072074874 1072074874 940233735 755238957 755238957 681648453 681648453 161593680 161593680 238946344 238946344 648546167 648546167 940536091 940536091 529480830 579890327 822836402 910868836 910868836 519898916 606286418 915867210 915867210 655100731 655100731 941356551 1044759164 1065779239 1065779239 174771268 298469440 435627936 435627936 191366580 657531293 657531293 720642000 720642000 998557815 998557815 537586687 887670219 887670219 869199931 869199931 892735756 892735756 644455284 602043033 284815974 514360800 556567471 556567471 734140592 734140592 679741509 179573278 372380442 511836996 511836996 773030154 773030154 882232850 882232850 412689465 965493389 965493389 1024200256 1024200256 950668904 950668904 680663374 347866830 527219166 527219166 436514822 436514822 350477064 452202944 452202944 485718852 485718852 340481090 481933070 481933070 470811976 274938320 378000192 378000192 112744730 571761227 1048685402 1051796325 1051796325 294963275 294963275 932498227 932498227 769114792 915067995 915067995 714154581 714154581 885385419 885385419 306528345 376830886 376830886 260360316 446902330 670969781 670969781 419250112 931483763 938474992 938474992 655978653 515560825 406997694 443997078 1035878686 1035878686 776862250 749047824 749047824 457374290 457374290 405909032 489475374 489475374 489475374 489475374 203261980 738765980 738765980 542903937 679575817 679575817 900290797 924961983 924961983 876938528 876938528 732134468 732134468 618501295 618501295 462740022 880563518 887524582 887524582 840453353 840453353 626541312 684959725 684959725 632292201 632292201 779637661 1053933975 1053933975 709427611 709427611 494669742 494669742 575121285 575121285 374929852 757096735 767591736 767591736 601445953 601445953 658141396 658141396 710640176 742267584 762713293 762713293 750844804 750844804 742688837 742688837 722641037 679864416 767921240 767921240 545268832 235423064 29401888 29401888 543357744 543357744 154916817 136904704 563953088 563953088 138676356 176260128 317974292 598685457 598685457 723944111 764463342 764463342 537920001 537920001 803344498 830526623 852007319 852007319 535267931 842826262 842826262 441095296 888971512 888971512 373372352 369117464 873492744 873492744 806538131 658964898 935771872 935771872 885505739 361049080 346256394 852587730 852587730 582559569 105031049 537941576 816596235 816596235 73393792 356105346 356105346 91964416 89761568 89761568 25239744 20971680 28642816 281136418 281136418 167202756 415349922 415349922 235828241 696333980 696333980 974200926 974200926 735302784 856810162 856810162 571523669 209738245 184715288 121962656 50454616 42342096 38979088 38979088 3671808 3934208 18631680 54785168 292144146 354587396 527210126 527210126 481896270 481896270 90290208 121216728 121216728 269631724 791201085 791201085 906140078 1043759128 1043759128 873648651 873648651 88244267 339745488 339745488 792858812 792858812 207362599 289540492 487217982 487217982 386927192 529877538 529877538 403018902 403018902 1050192395 1050192395 969307163 969307163 914335955 871833479 498616815 926585882 926585882 671401989 941133314 941133314 355602738 352323360 378810754 378810754 358314996 107615640 146928988 146928988 510302390 510302390 893785326 893785326 734272743 441827712 623143198 623143198 675286177 675286177 992775188 992775188 640961315 403472430 764535598 764535598 578814033 540091216 8700992 307450962 327826352 327826352 270846210 699329586 699329586 446596249 638079052 638079052 506498883 757518884 757518884 470237191 889242916 889242916 738037563 722353623 853165585 853165585 684253380 144303684 209822157 694726670 846202820 846202820 614291164 840289912 840289912 495439936 147242444 443383768 443383768 470038056 893059598 893059598 692051886 35848670 33549348 144365324 210407464 319285594 956895402 956895402 483930252 483930252 565392321 565392321 868967647 947912583 1020836359 1020836359 606482005 705226389 705226389 420688422 981433251 981433251 304995874 795213608 795213608 455625430 834534440 834534440 1016238638 1016238638 487739983 490807470 490807470 527676162 527676162 437346352 34750720 61518080 156787784 156787784 69412748 67634184 67634184 67633152 170525712 174096960 183550932 183550932 65653908 67613488 163995816 163995816 163062132 163062132 229951616 229951616 98165352 276375876 276375876 445665724 445665724 484145970 1072063528 1072063528 785636607 377183887 795645468 795645468 1027735636 1027735636 935465211 459526249 453193782 516063326 516063326 911432648 911432648 67539200 883037008 883037008 898635875 898635875 873513483 438054656 568123460 568123460 543362402 211144620 211144620 226871652 226871652 256523664 256523664 233262396 239397064 473453760 485675982 485675982 82055026 59664032 59664032 380293040 380293040 302657882 216379866 269508616 269508616 0 338723616 352370730 352370730 352370730 560325423 560325423 164723428 626789001 626789001 232269788 232269788 79337484 672814133 672814133 197207660 704748129 704748129 277613634 277613634 377487450 897614872 897614872 325061494 325061494 373557608 373557608 299182786 51515504 51515504 360845418 360845418 133693984 133693984 26910784 26910784 65102384 65102384 66136000 66136000 55834528 171770960 171770960 44774736 77079552 77079552 347989306 347989306 102869480 276759074 276759074 122548432 338462378 338462378 336726792 341571210 341571210 365621128 365621128 336370944 14786624 883192640 883192640 334222833 278041680 303613458 303613458 127553538 352551004 352551004 511914698 511914698 425247910 425247910 613556738 881012811 881012811 749996877 940770698 940770698 813847766 877274488 877274488 401215688 69632 8470656 147042432 147042432 482451612 482451612 314831446 311827586 311827586 177103112 246414684 246414684 21724572 116268504 388783736 388783736 157117514 169872708 186581172 518407153 518407153 883234400 883234400 758519121 982393926 982393926 964431371 964431371 820513676 383340203 383340203 737422642 946875584 946875584 786976184 786976184 696567909 254428768 439984484 439984484 794825059 794825059 454140844 454140844 269560608 528650506 528650506 496271968 496271968 85509704 244368080 244368080 134742056 134742056 67109008 70861792 76779848 119710336 119710336 663305969 663305969 177835540 672155681 672155681 168741200 168741200 717907220 717907220 693605029 685787888 697703124 697703124 677256704 163778688 14154432 138249572 154146848 156322052 156322052 134250880 813141002 813141002 612104073 532467582 532467582 192529610 119251040 277004354 531163485 1042744636 1042744636 203001348 674529872 715252053 1052844630 1052844630 609223305 445718751 17573152 17573152 9623251 274995795 595206560 945621174 945621174 878842251 711533662 698167656 572413958 669051175 960987903 960987903 870780883 820635075 820635075 952420551 952420551 545259585 549520577 549520577 897696739 897696739 636160226 812589440 812589440 952745315 952745315 877986027 877986027 491264588 843711749 843711749 1021709376 1021709376 271897536 581251160 808953409 808953409 531514684 531514684 414754166 414754166 396796264 396796264 353717082 344915008 39940480 39940480 34316304 20747008 140542768 140542768 151290882 445038312 445038312 414367848 600584475 600584475 160694720 160694720 445735256 445735256 406847654 493876506 806539450 940757787 940757787 623575232 854527059 854527059 646525472 404997145 847902276 847902276 831542378 319692302 58733600 274992523 860334130 860334130 876775561 876775561 828673298 1017186072 1017186072 436216151 371045726 430997626 495560032 495560032 452029314 229639432 366742728 366742728 96610442 300069672 300069672 297980130 271242644 427954260 427954260 275516630 162538372 162538372 287648228 421993894 445451580 445451580 123741368 214434148 214434148 187204764 187204764 459615178 459615178 583346385 712841753 712841753 883675482 883675482 400804202 1072239499 1072239499 853693576 958608462 958608462 304223554 455607620 455607620 328741186 427694514 427694514 417536560 172077189 897080837 968935541 968935541 1053561745 1053561745 976633148 969129107 1053399770 1053399770 847848780 919734597 919734597 563586936 612160652 612160652 207505852 578342576 578342576 458042550 458042550 805400580 984019022 984019022 711092637 711092637 957385816 957385816 733183172 733183172 546695745 420259431 276344704 315724944 315724944 381404586 381404586 24781192 24781192 84055952 120137016 120137016 345475402 345475402 130326104 400351178 400351178 133511128 99389320 66793712 80762464 84015744 94474080 94474080 72107008 72107008 16369824 21292992 23407008 224710056 224710056 153455748 234739492 251982316 251982316 40562972 554832897 554832897 645538968 650515505 650515505 732355312 732355312 711295285 711295285 704643093 704643093 549322948 50467504 176436832 176436832 18366980 539023248 737102484 737102484 585130084 688503621 700583973 700583973 694042085 179479409 307498690 466472865 961579479 961579479 543359268 543359268 775508472 775508472 648696480 936489753 936489753 160822092 1039283843 1039283843 633539104 831884457 911762475 911762475 931841977 931841977 668637089 668637089 137279404 752353992 752353992 445163742 800751926 800751926 717789262 717789262 828403497 828403497 542985359 542985359 321427746 546748409 546748409 356912710 101209864 341837010 547039497 606079960 608178265 608178265 71377096 579019584 579019584 645348312 645348312 310539216 310539216 321946418 321946418 52478802 63856658 817116241 861617123 861617123 980871319 980871319 573016629 423761808 423761808 352918666 673643429 673643429 491237422 555803365 555803365 67987976 67987976 60064560 129804624 129804624 102760728 69995536 69249328 88099232 128282692 177435052 177435052 293078274 293078274 271334488 271334488 239676700 239676700 188747080 235345864 235345864 359389960 421860636 421860636 106955160 181843556 181843556 173133120 172015824 172015824 163627204 598574841 598574841 348658176 669656664 946939663 946939663 352981432 547930130 702810589 702810589 1072074874 1072074874 940233735 559313101 227928684 220402145 72647240 72647240 72610440 155358616 155358616 205834914 256508984 351174370 529480830 529480830 579890327 579890327 910868836 910868836 1060314596 1060314596 920465115 975447116 975447116 857484759 941356551 941356551 562637998 562637998 174771268 298469440 435627936 435627936 191366580 657531293 657531293 720642000 720642000 998557815 998557815 537586687 887670219 887670219 869199931 869199931 892735756 892735756 116650968 220940142 284815974 347644076 1061365748 1061365748 734140592 734140592 679741509 198568292 397798266 991361908 991361908 773030154 773030154 882232850 882232850 537532030 354032161 633489548 1024200256 1024200256 485229580 485229580 355008770 366623072 366623072 338438912 217355782 443549460 443549460 452202944 452202944 445901854 243468480 243468480 33567260 80302528 274938320 274938320 336348096 336348096 335962112 100720976 312585752 312585752 117810264 117810264 772610984 772610984 702804453 533403714 915067995 915067995 687903870 645965970 885385419 885385419 1045627974 1045627974 766173133 672390480 614017472 670969781 670969781 419250112 931483763 938474992 938474992 655978653 515560825 433534092 433534092 892684301 892684301 776862250 749047824 749047824 95656736 349560136 405909032 776603715 814527709 1053695199 1053695199 642917519 677110749 786716305 786716305 742441101 742441101 543872045 184682672 184682672 876938528 1057333934 1057333934 732134468 618501295 618501295 462740022 515035998 887524582 887524582 840453353 840453353 626541312 60817776 41943328 880809472 880809472 101847576 101847576 211812684 211812684 211812352 494669742 494669742 575121285 575121285 374929852 911251325 1006350882 1013997627 1013997627 999383158 658141396 658141396 710640176 710640176 740824545 740824545 576544433 458717768 458717768 558228052 679864416 679864416 767921240 858413174 858413174 684082213 684082213 572014673 543357744 543357744 564764913 564764913 563953088 563953088 57616225 176260128 318815360 598685457 598685457 723944111 764463342 764463342 801951784 801951784 803344498 830526623 852007319 852007319 812034598 842826262 842826262 540804352 888971512 888971512 373372352 359299371 873492744 873492744 806538131 599196266 935771872 935771872 885505739 537187393 346256394 852587730 852587730 582559569 105031049 537941576 816596235 816596235 543839872 543839872 356105346 91964416 89761568 89761568 25239744 20971680 28642816 28642816 38017680 38017680 134492864 134492864 235828241 696333980 696333980 660470429 735302784 735302784 747704397 747704397 753206600 769305288 769305288 58906744 102170240 102170240 83562880 54000192 55846560 58175808 58175808 31000224 17826336 12060480 16106528 129456904 129456904 90290208 90290208 101778608 126247616 189978633 791201085 791201085 710934933 811746972 811746972 873648651 873648651 721601451 339745488 339745488 792858812 792858812 705891669 705891669 740385645 939649125 939649125 847626622 847626622 245612654 229728624 229728624 180318982 441070414 441070414 393063640 454346532 454346532 423415046 423415046 407637126 407637126 355602738 355602738 352323360 315239248 358314996 358314996 107615640 276840530 276840530 510302390 510302390 893785326 893785326 734272743 323124369 828903456 828903456 637534481 554035233 992775188 992775188 219152940 403472430 403472430 205049148 184830976 65834720 123097784 307450962 327826352 666030969 666030969 699329586 699329586 446596249 638079052 638079052 506498883 757518884 757518884 489951979 307888384 309991314 740777618 740777618 307757056 576233500 739370125 739370125 810092105 810092105 846202820 846202820 614291164 840289912 840289912 778010784 213651276 443383768 443383768 414922566 945807502 945807502 692051886 35848670 134623488 144365324 210407464 319285594 956895402 956895402 483930252 542314770 565392321 565392321 823114596 947912583 1020836359 1020836359 815027712 405314830 405314830 403082244 424605720 424605720 243607644 795213608 795213608 292010928 292010928 1070483476 1070483476 1062696958 1062427202 1062427202 1063559232 1063559232 527676162 437346352 146345732 146345732 185620592 191280660 249358588 249358588 187391892 119351344 170525712 175512352 175512352 157286820 152569728 121799048 163995816 163995816 163062132 163062132 229951616 229951616 98165352 276375876 323754084 323754084 781905021 781905021 764307647 596190321 596190321 202325004 697194636 700971237 1027735636 1027735636 1009320691 1009320691 603563577 589289527 516063326 1020016709 1020016709 488061486 883037008 883037008 898635875 898635875 873513483 70254595 2146560 1098496 16924680 169374560 195818868 211596100 211596100 256523664 256523664 327571818 518445506 518445506 485675982 485675982 96542952 491706280 502606830 502606830 380293040 302657882 149996484 149996484 203178628 809650400 809650400 362174967 389248306 389248306 560325423 560325423 164723428 626789001 626789001 232269788 232269788 79337484 672814133 672814133 197207660 704748129 704748129 277613634 277613634 377487450 540297792 540297792 202655254 434643296 1024024829 1024024829 9437184 9437184 1049088 512 24974445 781517189 781517189 704659221 689974832 65102384 65102384 40350208 177108180 177108180 136551572 115693840 79855492 148055248 148055248 347989306 347989306 262071136 276759074 276759074 129318848 338462378 338462378 336726792 341571210 341571210 365621128 365621128 635736745 635736745 341941443 367362603 367362603 278041680 303613458 303613458 294311498 765294931 957473612 957473612 714790485 556571508 425247910 201042480 464444790 464444790 135142404 146979532 146979532 102422740 277533780 277533780 268487760 273561794 273561794 139439680 177944148 394949328 394949328 282528256 311827586 311827586 177103112 246414684 246414684 275558771 600833265 871350257 871350257 157117514 223609646 809232128 809232128 624565017 883234400 883234400 825743585 982393926 982393926 964431371 964431371 820513676 383340203 383340203 737422642 737422642 721494069 721494069 694485328 981534887 981534887 327758494 327758494 794825059 794825059 454140844 454140844 269560608 528650506 934619915 934619915 496271968 780033705 780033705 244368080 183781832 183781832 684986433 684986433 135666180 672439121 672439121 663305969 663305969 177835540 672155681 672155681 168741200 194251296 717907220 717907220 693605029 685787888 697703124 697703124 677256704 163778688 54649008 138249572 154146848 156322052 156322052 149178438 817620865 817620865 538104321 977301123 977301123 302211126 302211126 801654902 801654902 461669629 187770644 203001348 674529872 715252053 715252053 619523529 619523529 905370603 925055977 925055977 997608078 997608078 313276898 945621174 945621174 711533662 711533662 772198620 772198620 840172658 960987903 960987903 870780883 1011405961 1011405961 545555866 613024840 613024840 549520577 552476097 746859532 746859532 568732129 283786609 806028179 952745315 952745315 877986027 877986027 491264588 843711749 895229132 1021709376 1021709376 271897536 546751242 808953409 808953409 268448832 285044418 318767474 324349554 396796264 396796264 353717082 344915008 462848 8442944 8442944 155458692 155458692 407350442 470377474 470377474 202994446 215452870 600584475 959844100 959844100 824445219 466649187 445735256 392190496 493876506 773584050 773584050 485801109 484031948 854527059 854527059 646525472 987771938 987771938 901775595 831542378 478335072 478335072 583024874 878871025 878871025 876775561 876775561 747815169 747815169 338770950 338770950 280237131 342434738 396175742 452029314 452029314 229639432 14421696 283133248 283133248 164505102 164505102 160280294 160280294 285558964 440524950 440524950 162538372 162538372 148971620 148971620 147933492 147933492 172240276 172240276 69240096 19415304 8413184 8413184 5352017 583346385 712841753 712841753 613665608 541763649 256375532 1072239499 1072239499 859902144 958608462 958608462 304223554 304223554 412616224 427819110 427819110 427694514 417536560 171190324 222999052 222999052 202593452 1053561745 1053561745 976633148 969129107 969129107 260058444 260058444 919734597 919734597 563586936 612160652 612160652 254848553 542149964 1021103808 1021103808 943916039 301998084 711221512 711221512 1046974494 1046974494 957385816 957385816 831426610 831426610 593164871 593164871 705702118 849638128 849638128 381404586 381404586 88814760 34588856 74517000 74517000 112667400 345475402 345475402 130027896 400351178 400351178 111239216 99389320 92027712 92027712 84015744 94474080 94474080 197142784 197142784 155527664 24128768 207365952 224710056 234946856 255122044 255122044 251982316 251982316 672998144 672998144 98072352 645538968 650515505 650515505 655845619 689346657 911172243 911172243 621677629 472385295 728108213 728108213 704778261 694265217 694265217 953275478 953275478 737102484 585130084 688503621 700583973 700583973 694042085 179479409 45672272 466472865 961579479 961579479 543359268 543359268 637991002 637991002 1041850790 1041850790 946073991 946073991 1039283843 1039283843 978418951 831884457 911762475 920092715 931841977 931841977 675486941 675486941 343413959 130687504 783065884 783065884 652740057 645922905 717789262 717789262 143493726 61368544 189022592 189022592 176351188 200725172 580984913 580984913 577021065 575172048 573085721 606079960 608178265 608178265 544810945 618678232 619234761 645348312 645348312 49494144 42281040 275882881 854696211 854696211 850487955 817116241 817116241 621193020 980871319 980871319 406808235 406808235 369995306 352918666 471333550 491237422 491237422 343249668 139349668 49327008 49327008 57192144 101567056 101567056 67652696 47276576 51119960 56926840 56926840 133449728 133449728 293078274 293078274 271334488 271334488 155212388 155212388 166859748 166859748 36750324 359389960 421860636 421860636 106955160 181843556 181843556 173133120 172015824 172015824 163627204 319050754 319050754 348658176 669656664 946939663 946939663 300865648 547930130 604944394 805954563 805954563 388495674 559313101 559313101 438513942 652530290 652530290 201355649 72610440 185803776 185803776 205834914 256508984 351174370 351174370 400002742 436787658 436787658 350667798 489579324 1060314596 1060314596 920465115 975447116 975447116 857484759 335298374 329977840 329977840 182990832 176001308 176001308 168957224 113193360 966826304 966826304 345414657 467877204 634560874 634560874 393842434 475320364 607361950 607361950 729879688 729879688 581466489 581466489 257166012 791501519 791501519 761130719 1063255184 1063255184 572190959 638982681 638982681 512754384 512754384 991361908 991361908 688364876 1043598111 1043598111 537532030 613205186 820911712 820911712 673111104 242338984 991986166 1038877850 1038877850 366623072 366623072 339738626 339738626 443549460 443549460 408080896 282466390 189436656 464277222 464277222 814808388 973783860 973783860 789701181 789701181 588513942 885392296 885392296 879007166 878681214 878681214 856761323 856761323 829973528 845071118 845071118 1040712735 1040712735 268571677 873620646 873620646 656257682 1045627974 1045627974 766173133 672390480 614017472 614017472 567412540 66660640 216770472 216770472 148823748 976321832 976321832 433534092 433534092 819265654 819265654 28576096 326299766 326299766 504460634 504460634 403017881 776603715 814527709 1053695199 1053695199 642917519 677110749 786716305 786716305 742441101 742441101 927926628 927926628 923708603 878741143 1057333934 1057333934 378276791 539786560 810192704 810192704 332156610 560254897 560254897 441976272 441976272 710036385 710036385 541623433 880809472 880809472 774145427 1010897043 1010897043 795290033 841025806 841025806 656804716 519385334 693089820 963868867 963868867 1006350882 1013997627 1013997627 999383158 582611078 19972896 121112200 121112200 309404562 309404562 117471232 458717768 489744512 489744512 658524960 658524960 657247545 858413174 858413174 684082213 684082213 684984148 684984148 539526705 701515637 701515637 734003445 734003445 821146435 821146435 457756357 461486359 461486359 385086426 385086426 12921024 801951784 801951784 539066624 539066624 536993793 812034598 812034598 302537553 570040224 570950673 598831856 598831856 590676128 590676128 548534608 548534608 79115328 549415705 549415705 44498768 537187393 537187393 37165840 537607169 537607169 48548672 46800256 15102656 15598144 537071552 543839872 543839872 25528160 42704976 42704976 26458240 40938112 47299120 47299120 32691168 43012528 43012528 4214912 42525840 697191128 697191128 228425237 576704120 633377957 633377957 747704397 747704397 753206600 769305288 769305288 93199248 102170240 102170240 83562880 64103072 64103072 58175808 58175808 31731504 40488128 40488128 16106528 39325472 39325472 45361440 45361440 60883088 126247616 126247616 66099432 67309762 339812490 570787984 625193098 625193098 721601451 721601451 404481618 96526417 493968000 584977018 705891669 705891669 740385645 939649125 939649125 847626622 847626622 973420866 973420866 412582172 412582172 441070414 445643862 445643862 454346532 454346532 445780566 423415046 271355648 189927392 338433906 338433906 315303282 315239248 285546858 96580470 96580470 387117430 387117430 411885894 411885894 154071396 58904688 655203384 655203384 828903456 828903456 805306635 554035233 554035233 389409723 108391224 268535810 268535810 64332192 65834720 65834720 148889284 235153628 256704360 666030969 666030969 573249209 567977520 780018177 780018177 776005057 776005057 635835104 635835104 974201367 974201367 309991314 915594642 915594642 525649523 576233500 739370125 739370125 936126224 936126224 410208736 457119774 899016284 899016284 778010784 778010784 422317350 422317350 173264016 250499900 945807502 945807502 741469958 741469958 307548121 136653060 147853828 147853828 827392486 827392486 311952390 542314770 542314770 445530052 735739826 1028162866 1028162866 815027712 815027712 338362435 146362112 10171968 12304640 25898474 359078948 693888520 693888520 422261673 452448294 1070483476 1070483476 1062696958 1062427202 1062427202 1063559232 1063559232 372965648 192879344 146345732 146345732 185620592 191280660 249358588 249358588 187391892 119351344 119351344 175512352 175512352 157286820 152569728 121799048 116094737 752549147 1000661279 1000661279 394629546 1055170895 1055170895 908373028 1029386669 1029386669 781905021 945628909 945628909 596190321 596190321 433535718 1036707342 1036707342 939788295 855068957 1009320691 1009320691 603563577 589289527 1002514342 1020016709 1020016709 661536549 1008873864 1008873864 807540875 351535297 342885258 185513988 499954468 499954468 226989694 169374560 195818868 211596100 211596100 235412032 235412032 327571818 518445506 518445506 377987332 146425204 138206984 491706280 502606830 502606830 653406366 863197404 863197404 460324278 295514136 952655791 952655791 434914233 792423098 1041317932 1041317932 567361773 150485320 143729220 67439180 150849152 150849152 136061516 152801308 152801308 151667756 201363584 201363584 167984752 343165326 772734220 772734220 911789486 911789486 434643296 1024024829 1024024829 970981815 973152279 986777039 1010304783 1010304783 781517189 781517189 704659221 689974832 37036432 37036432 40701328 177108180 177108180 136551572 115693840 79855492 148055248 148055248 203569628 203569628 262071136 262071136 54018048 129318848 129318848 95999264 93733984 93733984 72942464 97543936 346007787 635736745 635736745 341941443 367362603 367362603 290245794 294852450 335420912 335420912 765294931 957473612 957473612 714790485 1024984111 1024984111 926434889 210134611 195557748 464947272 759222701 759222701 102422740 277533780 342934410 342934410 277449642 495617640 495617640 177944148 521732736 521732736 360936186 360936186 435570540 435570540 388231968 523455322 523455322 600833265 871350257 871350257 315632096 223609646 809232128 809232128 624565017 624565017 825743585 825743585 461794826 411691340 411691340 851460767 907641431 907641431 819028638 161530212 374696008 460325814 460325814 694485328 981534887 981534887 180450211 159400548 232227520 232227520 424425652 424425652 171391764 514614020 934619915 934619915 255050642 780033705 780033705 94495080 183781832 183781832 684986433 684986433 135666180 672439121 672439121 48611472 48682432 48682432 40486288 40486288 134662288 194251296 194251296 176160852 18090612 8699968 8702016 8702016 37006240 54649008 56929200 56929200 136782080 136782080 149178438 149178438 817620865 817620865 538104321 977301123 977301123 302211126 302211126 967458147 991878309 991878309 973241237 713685408 1054862156 1054862156 903081790 792865850 619523529 905370603 925055977 925055977 997608078 997608078 986710743 986710743 746891327 864625779 931732483 931732483 772198620 880337204 880337204 868182821 593106609 1011405961 1011405961 870089512 870089512 613024840 548018368 552476097 552476097 568732129 568732129 21368928 35924288 196547984 287185014 287185014 697553329 697553329 750307149 895229132 895229132 816449193 679477317 740438595 875635467 875635467 352006657 285044418 292593874 324349554 324349554 118530888 118530888 37178120 36079888 44951888 44951888 155458692 182193876 407350442 470377474 470377474 202639884 202639884 137894404 968422006 968422006 824445219 466649187 392190496 392190496 376888218 290902760 952109124 952109124 809764995 545326192 587801649 587801649 987771938 987771938 901775595 734565612 513076766 478335072 583024874 878871025 878871025 842044075 381682320 381682320 387539520 387539520 106164888 106164888 83835088 148665256 148665256 101902112 461377204 461377204 522339196 522339196 70035658 2339072 261020394 461331280 461331280 440524950 440524950 142672036 415826052 415826052 283115970 402653636 402653636 172240276 172240276 241207328 241207328 230164332 148634936 150557480 150557480 181147928 712983992 712983992 161491521 256375532 256375532 859902144 859902144 63533792 63533792 331038736 331038736 412616224 427819110 427819110 168956416 180640586 180640586 832220965 832220965 681051717 911905607 911905607 658741706 658741706 573861009 608117691 608117691 206700248 206700248 72419552 46339280 99376688 254848553 725910553 1021103808 1021103808 943916039 847563271 847563271 269568066 1046974494 1046974494 405112842 335833350 831426610 831426610 593164871 616302786 705702118 849638128 849638128 408084417 1042078329 1042078329 696840108 696840108 590739897 574668945 938647671 938647671 195422580 1060466923 1060466923 261228436 259986096 92027712 92027712 81753320 66903152 66903152 201984432 201984432 155527664 24128768 207365952 207365952 234946856 255122044 255122044 246530308 229833500 672998144 672998144 36714081 20484416 545047840 633508434 655845619 689346657 911172243 911172243 621677629 472385295 728108213 728108213 704778261 694265217 694265217 953275478 953275478 793872196 669640185 110256381 9436224 10354496 545309796 545309796 431039334 1058841386 1058841386 821079987 806429187 492373165 637991002 637991002 1041850790 1041850790 946073991 946073991 611948045 978418951 978418951 774888089 691713429 920092715 920092715 782837085 675486941 675486941 992254574 992254574 783065884 913574811 913574811 946908252 946908252 426117740 426117740 227809702 123163532 201800248 201800248 194169352 580984913 580984913 619481304 619481304 573371713 573085721 639375360 639375360 639243801 618678232 619234761 619234761 539525320 45091328 45091328 275882881 854696211 854696211 850487955 843055520 275022225 543312228 543312228 411132980 580958544 580958544 503435486 503435486 471255214 2306304 336845098 336845098 139349668 370748000 370748000 341610922 341610922 329288194 329288194 302809138 322004528 322004528 97884932 228466284 530764668 530764668 494065564 494065564 156845608 156886692 156886692 208790412 208790412 154952968 23333280 22022912 26750832 83447776 83447776 79303864 104478296 104478296 101253136 50496594 319050754 319050754 319294560 319294560 216154348 887916896 887916896 683857302 683857302 805954563 921308006 921308006 388495674 438513942 536055845 652530290 652530290 242293352 694495520 694495520 642791564 175893172 190183316 244832220 244832220 511495880 952322641 952322641 350667798 625524859 984718228 984718228 828454081 828454081 939968169 939968169 1068098943 1068098943 1035627625 266246717 218812492 655147993 655147993 113193360 966826304 966826304 442581439 509325834 634560874 875574866 875574866 790282676 895844668 895844668 832832862 832832862 616696426 616696426 400900553 791501519 791501519 761130719 1063255184 1063255184 76279331 638982681 638982681 512754384 512754384 842171146 842171146 428961581 1043598111 1043598111 686230420 613205186 820911712 820911712 673111104 242338984 991986166 1038877850 1038877850 218103912 92274732 404396746 404396746 269517906 427151504 427151504 322025270 47499458 464277222 464277222 814808388 973783860 973783860 789701181 789701181 588513942 885392296 885392296 879007166 878681214 878681214 856761323 856761323 933647495 933647495 966023657 1040712735 1040712735 813628965 873620646 873620646 943912061 943912061 604668048 558552153 779625360 779625360 216083552 52153472 52153472 216770472 716171928 726030468 976321832 976321832 548936041 367785450 367785450 751828173 751828173 910998594 910998594 504460634 504460634 402952348 776603654 776603654 277197021 206007368 583745616 638060553 638060553 740503952 740503952 243812577 927926628 927926628 923708603 878741143 680600133 153438976 277861218 539786560 810192704 810192704 332156610 560254897 560254897 61755138 172872797 710036385 710036385 541623433 888102689 888102689 774145427 1010897043 1010897043 795290033 841025806 841025806 656804716 519385334 693089820 963868867 963868867 903042534 903042534 993114527 993114527 419182631 306414203 537848372 826809062 826809062 88870056 117471232 117471232 489744512 489744512 658524960 658524960 645188505 551219840 557768481 683187509 683187509 684984148 684984148 539526705 701515637 701515637 734003445 734003445 821146435 821146435 457756357 461486359 558436387 558436387 30484641 546308673 604817448 604817448 539066624 594727857 594727857 591058705 807585012 807585012 570040224 570950673 570950673 570651392 590676128 590676128 74650496 74650496 78967872 78967872 78894408 78894408 42352912 37165840 37165840 36995584 48548672 48548672 46800256 5054080 15347776 15347776 12007744 10099456 25528160 42704976 42704976 26458240 40938112 47299120 47299120 32691168 46395552 58720368 58720368 117812321 697191128 697191128 608448653 576704120 633377957 633377957 587279136 188879477 56715104 56715104 51033904 93199248 93199248 43107744 43107744 64103072 64103072 54003408 45402960 31731504 40488128 52579600 56758304 56758304 95192000 117239208 117239208 77906784 78725708 122683408 793822588 793822588 637643800 637643800 570787984 456762272 456762272 404481618 457932872 457932872 71309376 80091336 809701514 809701514 604053513 889528364 889528364 755048457 715268199 973420866 973420866 412582172 412582172 417134794 445643862 445643862 452719500 452719500 445780566 214115922 32104968 51384688 89260416 312349304 312349304 96612728 112406856 112406856 96580470 387117430 1049244867 1049244867 154071396 338428266 338428266 655203384 655203384 645996611 805306635 805306635 353378347 288924164 319578820 319578820 247532464 247532464 172803104 172803104 44125264 148889284 235153628 256704360 256704360 203332312 203332312 545504709 780018177 780018177 776005057 776005057 256413877 190113955 974201367 974201367 171999648 915594642 915594642 525649523 551128081 551128081 79023168 936126224 936126224 566592362 457119774 899016284 899016284 735512955 346912964 422452518 422452518 203764778 70522156 500570118 500570118 741469958 741469958 992630161 992630161 185156550 147853828 296888864 296888864 179834982 753017595 753017595 445530052 735739826 1028162866 1028162866 741415852 506166170 506166170 460746520 805319643 850674461 850674461 495415324 693888520 1037888608 1037888608 938228535 938228535 788620697 609616424 437360894 41376592 41376592 146172800 146172800 6427008 66148288 66148288 47742176 75859944 75859944 78754144 78754144 18138184 110675544 110675544 6863480 21444768 36203840 36203840 116094737 752549147 1000661279 1000661279 394629546 1055170895 1055170895 908373028 1029386669 1029386669 743213769 945628909 945628909 537976400 777563697 777563697 1036707342 1036707342 939788295 905202039 748514489 565028154 565028154 514173906 1002514342 1002514342 762589967 661536549 1008873864 1008873864 807540875 975069114 975069114 258659645 499954468 499954468 264792814 265492188 265492188 230427140 230427140 235412032 235412032 172310216 101001240 101991500 146425204 292989482 292989482 93093536 303132320 338839184 653406366 863197404 863197404 460324278 295514136 952655791 952655791 434914233 792423098 1041317932 1041317932 940494155 940494155 827886413 827886413 150849152 150849152 136411208 713236745 713236745 218153004 572856993 660892245 660892245 343165326 772734220 772734220 911789486 911789486 761611939 979378640 979378640 970981815 973152279 986777039 1010304783 1010304783 132719351 264192 53608448 53608448 51656752 37036432 40701328 40701328 37029904 39765504 42213456 42213456 13656576 13656576 36875648 42426000 42426000 38481792 40055184 40055184 37825280 6122888 338214922 339796362 339796362 335667210 352580872 352580872 97454120 97454120 92248104 96397410 290245794 290245794 335420912 335420912 401212426 401212426 76546632 454998272 1024984111 1024984111 926434889 530264182 329827698 464947272 759222701 759222701 51330096 271749256 342934410 342934410 277449642 495617640 495617640 383154962 521732736 521732736 360936186 360936186 435570540 435570540 388231968 523455322 523455322 452067464 353505834 353505834 315632096 31785682 5378688 277004296 578866496 917380443 917380443 544976430 544976430 411691340 411691340 851460767 907641431 907641431 819028638 492889075 492889075 713480946 713480946 366728151 1023561982 1023561982 199389525 249594834 935809323 935809323 424425652 424425652 520636958 520636958 514614020 470288202 102777392 87081768 68182880 94495080 94495080 15778752 15778752 11746912 11746912 548080485 548080485 154690868 581928225 581928225 564183393 40486288 134662288 172133477 180619476 859840999 859840999 166802416 166802416 174139862 174139862 136689012 136689012 186838594 186838594 179260630 148907778 148907778 36833270 26979456 139038080 139038080 176701696 176701696 153511872 967458147 991878309 991878309 973241237 713685408 1054862156 1054862156 903081790 792865850 609223305 891141232 891141232 286736507 854641492 967835735 986710743 986710743 746891327 864625779 931732483 931732483 689086061 880337204 880337204 868182821 593106609 652206164 652206164 870089512 870089512 461373558 971770998 971770998 970981863 726735587 593967537 329330741 417885248 417885248 407947460 163887368 697553329 697553329 750307149 750307149 660750440 671617286 679477317 740438595 875635467 875635467 958550850 958550850 693525413 559324064 355641376 356989098 384101352 384101352 209028628 209028628 146754229 602994053 706530837 706530837 587465944 420290572 202639884 428083302 428083302 968422006 968422006 755286456 755286456 541329537 429947831 106166938 311949906 952109124 952109124 809764995 668991664 587801649 587801649 383779120 383779120 286177020 513076766 513076766 652314070 652314070 136867913 88211906 52580744 381682320 381682320 387539520 387539520 106164888 106164888 83835088 142757926 293650530 293650530 461377204 461377204 522339196 522339196 157198850 408646688 413479776 461331280 461331280 153070932 407840900 407840900 415826052 421527200 421527200 402653636 402653636 189063600 155238564 241207328 241207328 230164332 588069905 588069905 566328208 181147928 712983992 712983992 568526116 703853541 703853541 441700790 328362037 432363814 432363814 331038736 331038736 297531234 48805488 268572148 450236852 450236852 225476656 832220965 832220965 681051717 911905607 911905607 658741706 658741706 573861009 608117691 608117691 203283992 98410576 95284136 98711400 98711400 4076548 725910553 931882138 931882138 831050843 864195189 864195189 525439441 239094148 405112842 405112842 336467969 482346196 516298959 516298959 616302786 616302786 268439105 408084417 408084417 1042078329 1042078329 899107509 696840108 590739897 574668945 938647671 938647671 195422580 1060466923 1060466923 261228436 259986096 99421640 84881160 76096584 126731280 126731280 201984432 201984432 60817804 16843024 90579136 94845288 201763144 201763144 246530308 246530308 229833500 104284692 58731024 10103296 20484416 545047840 545047840 17305632 30409440 881267216 1007486180 1007486180 458304527 168313370 73516296 4793472 88203432 88203432 84988176 793872196 793872196 669640185 153071449 560656057 690424677 804841816 804841816 431039334 1058841386 1058841386 821079987 806429187 492373165 572182788 708314901 708314901 411313692 411313692 12718272 12718144 46736840 103285400 131733040 131733040 35264016 83886120 83886120 497246009 497246009 992254574 992254574 671088644 913574811 913574811 946908252 946908252 426117740 743518912 743518912 123163532 201800248 201800248 194169352 190961892 190961892 619481304 619481304 573371713 120924457 639375360 639375360 639243801 646208777 646208777 109185088 109185088 45091328 45091328 274808976 274808976 283189698 843055520 843055520 119577042 543312228 543312228 411132980 904920555 904920555 503435486 503435486 471255214 486983074 486983074 336845098 34951736 370748000 370748000 341610922 341610922 329288194 329288194 302809138 322004528 322004528 97884932 228466284 530764668 530764668 494065564 494065564 451224824 451224824 173539332 242882460 242882460 154952968 457850756 457850756 316553392 196223920 196223920 258343452 258343452 227119204 227119204 178442308 134365520 279707688 279707688 327288091 327288091 887916896 887916896 999218271 999218271 764892535 921308006 921308006 151704612 242480028 536055845 536055845 212201479 242293352 694495520 694495520 642791564 175893172 374324506 374324506 244832220 511495880 952322641 952322641 479496666 625524859 625524859 458476638 537269242 632216937 939968169 939968169 1068098943 1068098943 1035627625 266246717 218812492 655147993 655147993 105518232 793418244 793418244 442581439 509325834 509325834 875574866 875574866 790282676 895844668 895844668 832832862 832832862 616696426 616696426 400900553 758192904 758192904 688338981 973477911 979770151 979770151 856561797 831099609 893773995 893773995 483801302 483801302 374716794 452820198 686230420 686230420 586412277 550378689 10129002 142934860 142934860 115878648 225517768 225517768 252451568 386396904 404396746 516413116 516413116 469574254 427151504 322025270 439689988 439689988 437011237 437011237 797905334 797905334 718351220 718351220 534424928 590119264 590119264 476880121 201923082 285286592 944775935 944775935 933647495 933647495 966023657 966023657 821484483 994289531 994289531 789376096 943912061 943912061 604562001 785277737 785277737 779625360 674798048 674798048 181218516 185922609 716171928 726030468 726030468 608485208 548936041 253367868 290412115 751828173 751828173 910998594 910998594 104924312 608769008 0 671162432 671162432 566243488 566243488 583745616 638060553 638060553 740503952 740503952 134492160 648152444 648152444 732257065 732257065 680600133 283281682 283281682 39133280 14800896 14800896 142246528 147461572 147461572 617781001 617781001 249249968 550219257 550219257 888102689 888102689 372430963 686294469 721553712 721553712 711669201 520328016 520328016 309574878 940441649 940441649 813817375 903042534 903042534 993114527 993114527 811281662 811281662 994396272 994396272 826809062 891095042 891095042 826870283 84018347 208773436 468790303 648858969 648858969 551219840 557768481 683187509 683187509 601624305 580289221 580289221 152344688 29759712 9831072 4329600 1583744 5716896 19873056 285672608 558436387 848611923 848611923 1008576048 1008576048 754706173 754706173 594727857 839016774 839016774 807585012 807585012 832141222 832141222 842090368 842090368 588158112 588158112 52091921 45008072 78967872 105027864 105027864 78894408 75245144 104231640 104231640 75557456 36995584 12713984 12713984 11995648 15347776 15347776 12007744 10099456 9645312 8454144 1512000 0 19138592 151441908 151441908 29640912 46395552 58720368 58720368 117812321 555843916 690047320 690047320 562282632 705079468 705079468 587279136 734030069 734030069 648176701 619941128 68083472 87370536 102576448 102576448 55888560 55888560 54003408 45402960 29810640 8803360 52579600 56758304 56758304 95192000 117239208 117239208 77906784 78725708 152193461 793822588 793822588 675942586 637643800 906811069 906811069 509180320 931892341 931892341 457932872 485949690 485949690 1053164166 1053164166 1045432919 889528364 889528364 755048457 478150734 478150734 444926274 444926274 349686534 283486594 283503042 413634966 413634966 14803392 67265120 67265120 67109938 119149882 124650930 124650930 120327730 272372026 382730442 382730442 620757321 765509997 1049244867 1049244867 151267338 338428266 338428266 100880417 645996611 645996611 522191166 941794121 941794121 512980286 599799197 599799197 503694297 715173353 715173353 597264880 597264880 44125264 42770768 207332120 207332120 203332312 203332312 138731840 236062144 236062144 212915020 212915020 112450248 151412864 186695988 321627028 321627028 186537856 186537856 37408404 551128081 551128081 173877772 538797401 566592362 566592362 753013197 753013197 525806939 525806939 346912964 422452518 422452518 203764778 259731632 629198056 842852158 842852158 942411146 992630161 992630161 185156550 168161046 296888864 296888864 445715042 753017595 753017595 313000256 313000256 346116314 346116314 298320266 506166170 579675777 579675777 805319643 850674461 850674461 495415324 252309326 1037888608 1037888608 1062200376 1062200376 788620697 609616424 495787172 329769584 194639222 434061716 434061716 187903968 66148288 66148288 47742176 31383264 31383264 78754144 78754144 50602080 50405424 50405424 18235440 22493984 36203840 36203840 5033232 2890240 3806976 3806976 9784384 604340232 604340232 537257985 546622017 546622017 76564489 0 13086434 303608882 777563697 777563697 963161080 963161080 905202039 905202039 371644698 565028154 565028154 399844707 1000077838 1000077838 704937859 704937859 745807873 745807873 740430093 975069114 975069114 690187649 895364416 895364416 669850258 273781866 265492188 347476530 347476530 403386628 403386628 526401702 526401702 455246610 455246610 559862881 559862881 153226912 303132320 338839184 823193702 823193702 585609292 877391300 898023328 898023328 891557679 316405458 316405458 310552208 905528416 940494155 940494155 827886413 827886413 161608288 212007500 212007500 713236745 713236745 245344032 572856993 660892245 660892245 110337424 622320179 674826757 674826757 761611939 761611939 688974765 675552289 881992205 881992205 880877643 747709005 747709005 800990789 800990789 680008704 680008704 51656752 25801776 36259264 36259264 88949800 88949800 104194640 108875096 108875096 107744664 106770504 71022472 73926024 73926024 75380480 75380480 37825280 737792 338214922 339796362 339796362 335667210 352580872 352580872 342697256 342697256 83066377 83066377 289152193 837462707 837462707 308108961 827761000 887434231 1029228207 1029228207 627872722 1041185823 1041185823 530264182 1040119752 1040119752 823970095 603780170 1015601820 1015601820 873339862 271017388 72305110 271938272 383154962 500913466 500913466 346692428 50595888 2359600 101188016 101188016 326970792 326970792 494251575 748108365 748108365 738455877 311480440 279982707 902525344 902525344 849006145 917380443 917380443 841474896 555852288 381706992 381706992 520120432 529531518 559721776 559721776 492889075 492889075 713480946 713480946 904144144 1023561982 1023561982 852628179 512817441 936722777 936722777 357689986 203829616 520636958 520636958 775091467 775091467 355516788 665507173 665507173 69788964 248296640 256301244 667589637 667589637 185740052 548080485 548080485 165988968 581928225 581928225 564183393 37823857 59392081 787650648 787650648 859840999 859840999 742253947 182206166 737714134 737714134 728432933 722554725 679759344 679759344 580139793 580139793 538439399 692672084 692672084 139038080 166872032 176701696 176701696 460626512 460626512 441185796 441185796 155524902 11934528 68615872 789344616 789344616 557043057 196634140 891141232 891141232 890277936 936851170 936851170 54575280 977553408 977553408 245108316 773376065 773376065 689086061 689086061 219177636 219177636 207301292 652206164 675746404 675746404 563628640 461373558 971770998 971770998 970981863 726735587 832445463 865082886 865082886 461425190 515148852 515148852 277643640 543179256 662749305 662749305 660750440 660750440 611877816 611877816 577899280 719928832 958550850 958550850 693525413 559324064 355641376 356989098 384101352 384101352 209028628 209028628 146754229 602994053 706530837 920277078 920277078 990400069 990400069 857033755 857033755 398311529 174097284 755286456 755286456 563360350 844104339 844104339 736890357 747508185 747508185 668991664 668991664 891356375 1059792007 1059792007 1062081315 1062081315 1008286086 472465924 652314070 652314070 338166406 321439026 121940098 71447434 601937452 601937452 828625364 966279111 966279111 408469523 414230292 414230292 293650530 457999714 457999714 25217888 157198850 157198850 408646688 413479776 413479776 406132454 28041728 412828192 412828192 287119008 421527200 421527200 28030784 189063600 189063600 155238564 134299776 55108752 18274976 588069905 588069905 566328208 550835392 61884544 61884544 568526116 703853541 703853541 441700790 328362037 432363814 432363814 305074802 167050288 167050288 173876992 268572148 450236852 450236852 225476656 225476656 704528 45843008 45843008 12791952 104562972 136050180 137843588 140385924 203283992 203283992 98410576 95284136 98711400 98711400 682624025 682624025 931882138 931882138 914742367 914742367 960667849 960667849 711305354 711305354 705481494 469059465 482346196 829498155 829498155 1022766156 1022766156 983058647 926588414 84934698 977928278 977928278 899107509 318826845 41159568 246982800 246982800 68944020 23469312 72356736 72356736 53029560 99421640 99421640 84881160 76096584 126731280 126731280 109988960 239632772 239632772 103335192 251992232 251992232 176696636 29722844 65202976 65202976 136733200 708874320 708874320 546833376 584684864 584684864 657981187 657981187 626449065 626449065 1007486180 1007486180 902111373 626346775 626346775 607457037 761142957 761142957 455992325 383423278 766718249 766718249 705863781 679514944 690424677 804841816 804841816 524761278 524761278 598230179 656458041 656458041 506037039 572182788 708314901 841104001 841104001 769171775 769171775 574757441 1044072855 1044072855 191468217 746272653 920019083 920019083 803769785 697830520 306971414 4593792 131072 671088644 671088644 536870913 536870913 899174590 899174590 885972171 743518912 661310429 661310429 277497932 853938700 853938700 811553873 811553873 556215584 822268707 822268707 67241496 305316930 546570248 646208777 646208777 833782592 833782592 316029826 316029826 304343043 551641427 851443923 851443923 602060833 602060833 361025744 513720396 513720396 904920555 1046482731 1046482731 525405882 779825827 779825827 503397778 544502457 544502457 287965744 305796882 305796882 321913650 396957226 396957226 966197271 966197271 281609640 941959624 1004536311 1004536311 727323973 727323973 846618272 846618272 874506354 874506354 242882460 242882460 122305848 457850756 457850756 316553392 203447432 208143756 258343452 258343452 227119204 227119204 178442308 212785258 396674064 396674064 377634832 327288091 279105858 485252260 999218271 999218271 1019773332 1019773332 262701436 151704612 302112786 306346016 306346016 98567072 231025284 231025284 236193452 236193452 126778776 374324506 374324506 115974552 119982142 346626100 479496666 479496666 337150472 337150472 319951410 319951410 117624888 117624888 1010485700 1010485700 138729475 143034544 143034544 192303168 192303168 71232048 114943704 975034276 975034276 59464347 482836662 482836662 449099926 352386798 475343502 776764966 788320581 788320581 431229798 36897360 604751028 752265805 752265805 981504615 981504615 973477911 979770151 979770151 856561797 831099609 893773995 893773995 483801302 483801302 374716794 362795160 362795160 893929538 893929538 872464395 265959794 493095342 493095342 338431242 338431242 317456600 252451568 386396904 386396904 516413116 516413116 469574254 190851794 326147104 439689988 439689988 322020630 306597904 797905334 797905334 718351220 718351220 534424928 590119264 713425961 713425961 874454929 874454929 944775935 944775935 965776582 965776582 808374479 1016451410 1016451410 994289531 994289531 789376096 789376096 671711252 758962056 785277737 785277737 724092213 674798048 674798048 181218516 181218516 167778432 17695924 16779552 269231318 476066488 476066488 302203880 387584574 522073130 522073130 495484990 495484990 608769008 559272430 1018641231 1018641231 891687727 605974788 545468481 413064774 552036231 552036231 205049484 205049484 223842836 223842836 193581364 269906804 269906804 844684320 844684320 598964193 598964193 156863220 163022560 163022560 147461572 617781001 617781001 193416868 550219257 839062284 839062284 543690472 543690472 258085308 721553712 721553712 658770105 520328016 520328016 309574878 964574570 964574570 813817375 813817375 811714716 398840432 398840432 811281662 864783398 994396272 994396272 957372500 891095042 891095042 826870283 1005902332 1005902332 545243279 648858969 648858969 271506622 887956811 887956811 970581735 970581735 884964204 580289221 700941477 700941477 201308068 603059958 819229619 819229619 187228579 1057650293 1057650293 848611923 848611923 1008576048 1008576048 754706173 754706173 396550513 839016774 839016774 482423209 410518099 856855270 972649042 972649042 842090368 588158112 588158112 544138240 644864273 644864273 541878337 646131801 646131801 579274760 104231640 104231640 75557456 49059136 37884048 34525568 12324288 12925632 12925632 7425920 7797248 8454144 44590864 44590864 9560640 19138592 185244368 185244368 29640912 25288992 25288992 25178176 59232516 555843916 690047320 690047320 562282632 705079468 705079468 216361433 734030069 734030069 648176701 619941128 68083472 87370536 102576448 102576448 15156496 46077344 66478000 66478000 66209008 50455888 49961600 49961600 96390048 96390048 103053160 103053160 95576576 95576576 152193461 152193461 675942586 675942586 425073318 906811069 906811069 509180320 963717095 963717095 949356712 949356712 616958153 1053164166 1053164166 1045432919 634394750 303303186 849547782 950348103 950348103 537930566 444926274 417647104 283207938 283207938 413634966 704510319 801451575 801451575 407565461 538972704 822744865 822744865 990907941 991040055 991040055 974265650 382730442 620757321 765509997 765509997 748773408 711391757 907467455 907467455 621855273 606154520 606154520 649253721 941794121 941794121 512980286 599799197 731647316 731647316 715173353 715173353 597264880 597264880 182390676 182390676 42045440 144743124 169707520 180550416 180550416 236062144 236062144 145950232 336632578 336632578 441165532 441165532 321627028 321627028 227130602 170787984 201595928 201595928 139730180 179904524 179904524 494489490 494489490 753013197 753013197 525806939 525806939 331424375 220726572 391610132 391610132 272679042 629198056 842852158 842852158 942411146 955569152 955569152 467194965 467194965 588690489 588690489 445715042 445715042 340399086 947531783 947531783 701737351 961021062 961021062 939788295 710482218 579675777 740171664 740171664 149299397 213427390 252309326 378111540 378111540 1062200376 1062200376 184811656 495787172 495787172 329769584 194639222 434061716 434061716 187903968 41210048 42550432 42550432 31383264 31383264 90319552 90319552 50602080 50405424 622870697 622870697 545655040 545655040 543049297 543049297 147537426 405287702 908614296 908614296 604340232 604340232 537257985 546622017 546622017 286446114 571781666 906554890 906554890 316077680 316077680 393531080 395350276 471994638 471994638 381607770 690178846 690178846 399844707 1000077838 1000077838 704937859 704937859 745807873 745807873 740430093 689324424 690187649 690187649 895364416 895364416 669850258 323170452 402862582 430047698 430047698 403386628 403386628 526401702 526401702 455246610 617717889 617717889 559862881 284408619 231195300 231195300 840959464 935855355 935855355 877391300 898023328 898023328 891557679 316405458 743499682 1013573148 1049997104 1049997104 854713299 778840128 360292992 161608288 212007500 212007500 118493301 562186525 701353953 701353953 735935724 735935724 2154752 2154752 138158344 138158344 69275396 688974765 688974765 675809836 881992205 881992205 880877643 782869456 1059997737 1059997737 800990789 680008704 857799459 857799459 817393187 864183539 864183539 857302067 826363627 811679890 604529200 604529200 541396122 106770504 71022472 73926024 73926024 75380480 75380480 6851088 6851088 4008448 4008448 4009736 4009736 270381344 271540010 342697256 342697256 83066377 83066377 289152193 837462707 837462707 537582160 827761000 887434231 1029228207 1029228207 627872722 1041185823 1041185823 376206740 1040119752 1040119752 987953770 987953770 1015601820 1015601820 873339862 960945857 1042728656 1042728656 1032239630 574705680 574705680 346692428 458361426 458361426 373182588 373182588 226598560 333752324 494251575 748108365 1039313362 1039313362 896995573 636486633 902525344 902525344 898139170 849006145 841474896 841474896 754975305 754975305 437256726 962532517 962532517 529531518 805483175 1019330800 1019330800 366234199 274009284 904144144 904144144 852628179 852628179 512817441 936722777 936722777 282223106 291173868 457365380 457365380 775091467 775091467 500831970 665507173 665507173 277115804 248296640 256301244 667589637 667589637 185740052 694587796 694587796 189367344 192612996 257900220 257900220 113910848 21647808 787650648 787650648 266233548 742253947 742253947 310386768 737714134 737714134 728432933 722554725 679759344 679759344 580139793 580139793 538439399 692672084 692672084 42542160 166872032 166872032 44114336 978209649 978209649 441185796 588304197 588304197 11934528 68615872 68615872 60242544 60242544 34228832 11382032 890277936 890277936 936851170 936851170 54575280 977553408 977553408 245108316 773376065 773376065 21235872 21235872 14495424 25690112 25691232 664536696 675746404 675746404 551396032 14186720 831392928 831392928 805570563 547100739 832445463 865082886 865082886 461425190 515148852 515148852 306022748 543179256 662749305 662749305 25741605 135191556 227433988 227433988 93456044 89391976 24119464 12977568 23199744 90333536 90333536 217393844 217393844 108365992 138729716 138729716 103541176 103541176 58071984 920277078 920277078 990400069 990400069 857033755 857033755 564079944 162408049 423746103 1007940394 1007940394 940865848 844104339 736890357 747508185 974790577 974790577 470548626 891356375 1059792007 1059792007 1062081315 1062081315 1008286086 472465924 646267714 814391520 814391520 659942694 659942694 555459200 726191125 847839968 847839968 966279111 966279111 439564566 414230292 414230292 159439540 159439540 221926764 223796524 223796524 140509572 294178180 294178180 134498598 10588480 28041728 412828192 412828192 37490704 37490704 53798420 53798420 1835008 1835008 148178580 148178580 59862736 146258228 146258228 0 550835392 550835392 50599936 50599936 52475824 56223408 56223408 167902800 167902800 138849584 523648778 523648778 470366430 177474132 379330736 470361232 470361232 45183808 239475036 239475036 202647100 202647100 202047488 146945036 13108480 68157960 96471816 98830824 98830824 69468384 25303272 70510016 82833384 82833384 682624025 682624025 672401925 721392732 914742367 914742367 960667849 960667849 1046511624 1046511624 941883678 471925134 494535284 905526371 905526371 1022766156 1022766156 983058647 926588414 100191305 493804809 558110784 558110784 139510404 757744568 757744568 823799866 823799866 692145700 692145700 375905950 442638874 442638874 837189664 846223760 846223760 51516128 29370432 63375440 239632772 239632772 107545016 251992232 251992232 176696636 29722844 101833800 101833800 136733200 708874320 708874320 570630656 584684864 584684864 657981187 657981187 626449065 626449065 646236251 902111373 902111373 626346775 626346775 607457037 761142957 761142957 455992325 383423278 766718249 766718249 705863781 679514944 73778244 191603309 208429803 524761278 524761278 598230179 656458041 656458041 506037039 402603960 496778988 841104001 841104001 769171775 769171775 596057281 1044072855 1044072855 334371956 746272653 920019083 920019083 803769785 958298305 958298305 803720894 803720894 465799549 465799549 433661670 433661670 899174590 899174590 885972171 541338981 661310429 661310429 469877164 853938700 853938700 811553873 811553873 277610816 822268707 822268707 444596224 444596224 305316930 237689720 556302880 833782592 833782592 316029826 316029826 377300882 551641427 851443923 851443923 602060833 602060833 361025744 513720396 513720396 501096174 1046482731 1046482731 969020956 969020956 779825827 503397778 544502457 544502457 320129642 433612163 705274405 778912173 778912173 605307700 966197271 966197271 281609640 941959624 1004536311 1004536311 727323973 727323973 846618272 846618272 874506354 874506354 54316848 38736696 69928328 96503824 109103352 109103352 203447432 208143756 208143756 69915912 69915912 42749702 448403286 513154682 513154682 396674064 377634832 767952166 767952166 973738344 973738344 950799711 1019773332 1019773332 842153259 506123550 326182608 306346016 306346016 98567072 231025284 579418436 778176188 778176188 57548208 57548208 53219456 48337920 48337920 407342858 407342858 339205268 337150472 337150472 526311102 526311102 254183298 117624888 1010485700 1010485700 138729475 556403013 556403013 255934580 671257505 671257505 141611124 975034276 975034276 640387073 721263696 792242836 792242836 319620796 475343502 776764966 776764966 703993045 553274000 644439728 644439728 752265805 752265805 981504615 981504615 805880835 805880835 1004837415 1004837415 607164880 773982491 773982491 416790946 493973582 985625293 985625293 362795160 893929538 893929538 872464395 361232168 493095342 493095342 338431242 338431242 317456600 318820466 318820466 300550624 285298976 285298976 55051440 58597296 326147104 331796626 331796626 306597904 820188099 867470115 867470115 837832977 881073209 881073209 896717739 896717739 713425961 874454929 874454929 464570080 464570080 965776582 1033374627 1033374627 1016451410 1016451410 980693795 583331520 595854520 654782537 654782537 758962056 758962056 724092213 724092213 196724541 168965632 169159188 169159188 167778432 27864381 87616952 985056035 985056035 476066488 302203880 387584574 522073130 522073130 497121084 495484990 955864020 559272430 1018641231 1018641231 893569952 893569952 413064774 413064774 552036231 690520356 690520356 205049484 713714036 739389445 741869325 805830069 918696667 918696667 844684320 598964193 598964193 324371696 441263062 441263062 285089474 449134932 449134932 56406848 169528996 839062284 839062284 543690472 965550370 965550370 592257313 885892293 892166491 892166491 973650642 973650642 964574570 964574570 646548001 811714716 811714716 728980213 728980213 819906534 864783398 864783398 957372500 957372500 604395584 604395584 1034160672 1034160672 1005902332 545243279 575651884 575651884 145246883 887956811 887956811 970581735 970581735 884964204 580102853 700941477 700941477 281739456 603059958 819229619 819229619 187228579 1057650293 1057650293 1005955687 1005955687 1036326640 1036326640 532360615 639640336 639640336 268435458 268435458 1041240134 1041240134 856855270 972649042 972649042 590359361 590359361 32541329 544138240 644864273 644864273 541878337 646131801 646131801 579274760 7904704 40077840 49059136 49059136 37884048 34525568 12324288 12925632 12925632 7425920 7797248 11441408 44590864 44590864 24782592 47838112 185244368 185244368 189005952 189005952 4196532 0 278784 144902400 144961860 144961860 59111492 59111492 188762240 188762240 148998592 148998592 23306304 33652608 54886416 54886416 49169568 49169568 47917216 46077344 66478000 66478000 66209008 59530608 50380848 50380848 96390048 96390048 63731440 63731440 95576576 95576576 223398160 223398160 136388868 628968888 707838741 707838741 509907201 461904910 963717095 963717095 949356712 949356712 616958153 333854920 333854920 393679784 393679784 303303186 849547782 950348103 950348103 537930566 503359488 503359488 283207938 283207938 279044418 917320344 920647697 920647697 715336359 538972704 822744865 822744865 990907941 991040055 991040055 974265650 738334921 144837982 226756716 663060736 706863381 711391757 907467455 907467455 621855273 606154520 606154520 963744252 963744252 850608396 1018780895 1018780895 731647316 731647316 570442080 44106832 42475856 48311108 182390676 182505488 182505488 144743124 169707520 180550416 201375756 201375756 184044188 184044188 336632578 336632578 441165532 441165532 310765010 270059016 347375510 376888218 376888218 328111096 209934288 205590924 217369548 243345388 243345388 113273880 113273880 288416944 288416944 198899644 220726572 391610132 391610132 272679042 103792026 69255432 69255432 378660764 482459550 482459550 597869522 597869522 588690489 588690489 213443934 213443934 340399086 947531783 947531783 701737351 961021062 961021062 939788295 710482218 106435736 740171664 740171664 201460244 201460244 162270513 16777472 961512481 961512481 956619868 956619868 889636918 412619364 168820784 170440372 170440372 50766128 34646640 29233184 31616320 31616320 93792808 93792808 90319552 100675856 131254345 650494713 650494713 622870697 545655040 545655040 553069936 553069936 147537426 405287702 908614296 908614296 443542805 680839308 680839308 185885316 504236573 810235011 848004315 906554890 906554890 524338593 871395943 871395943 807541861 471994638 471994638 381607770 690178846 690178846 203443712 212126028 212126028 180916702 780852428 780852428 988829086 988829086 790758693 689324424 944302090 944302090 408807568 273316354 323170452 402862582 430047698 430047698 290059688 290059688 197495126 469762524 469762524 617717889 617717889 1014123330 1014123330 704552333 939259899 939259899 935855355 935855355 403571799 165927616 618271372 618271372 206706377 743499682 1013573148 1049997104 1049997104 854713299 778840128 360292992 62914560 42992304 34605568 118493301 562186525 701353953 701353953 735935724 745903578 745903578 256311626 746336014 759025548 759025548 695094821 689255812 675809836 650448920 250733524 782869456 782869456 1059997737 1059997737 315041698 458505440 857799459 857799459 817393187 864183539 864183539 857302067 826363627 811679890 604529200 604529200 541396122 212992844 212992844 145693444 138156608 46571728 7828288 16413760 16703178 340472970 378779858 378779858 337639946 369187344 369187344 18560544 17511968 131072 135168 266496 2361600 537582160 610149312 610149312 346725924 361808490 478581536 478581536 386212600 386212600 345182402 897622210 897622210 987953770 987953770 390575344 514904411 671917071 960945857 1042728656 1042728656 1032239630 574705680 574705680 39846288 458361426 458361426 373182588 373182588 226598560 333752324 384280898 384280898 1039313362 1039313362 896995573 636486633 578814033 898139170 898139170 833248377 648976456 655395352 754975305 754975305 437256726 962532517 962532517 499163281 805483175 1019330800 1019330800 57795504 17875488 393396224 393396224 359023442 336933360 336933360 310720714 310720714 282223106 291173868 467764916 467764916 265479352 265479352 500831970 500831970 434569710 277115804 112977864 78912872 110861000 110861000 149679413 694587796 694587796 189367344 786103069 786103069 745840573 154403041 145137073 578949201 578949201 415139442 879231878 879231878 310386768 403053568 403053568 704708948 704708948 683442626 833834551 833834551 43000385 34685456 50514560 579156580 722604597 861482193 867456196 867456196 978209649 978209649 672521894 588304197 734910484 734910484 648333828 648333828 701439269 701439269 853710869 853710869 1001778039 1011652684 1011652684 458879472 458879472 331688178 88113216 214021804 492112908 492112908 571198609 571198609 239407336 239407336 260637740 664536696 664536696 531732604 315779952 315779952 434248886 434248886 264896764 264896764 63050774 483504280 483504280 323534880 135341574 61392240 661143657 661143657 251986777 741012057 741012057 683899432 591845553 181242557 607733328 607733328 749786672 749786672 675467397 570458792 185144736 87741456 693668433 693668433 179020860 716662657 716662657 588424904 253257157 121710912 596908828 649978977 899104416 899104416 885523659 564079944 392301092 423746103 1007940394 1007940394 940865848 953292125 953292125 830119943 974790577 974790577 543687350 499722136 499722136 262742184 256845660 221723436 347076174 347076174 646267714 814391520 814391520 910446080 910446080 555459200 726191125 847839968 847839968 759406650 759406650 439564566 321402198 321143856 159439540 159439540 221926764 223796524 223796524 151506020 294178180 432613984 432613984 31394048 31394048 420151840 420151840 37490704 37490704 199294176 199294176 152694740 147066884 148178580 148178580 59862736 146258228 597944849 597944849 565191489 544017809 567219680 567219680 409056310 409056310 664203414 938728641 938728641 959332392 959332392 523648778 470366430 177474132 379330736 470361232 470361232 144051184 457445836 457445836 202647100 202647100 202047488 193074208 143200372 68157960 96471816 767820704 767820704 658975053 223426713 18031360 18031360 11612704 242756548 242756548 150812568 320660078 320660078 488269878 488269878 738500736 1046511624 1046511624 941883678 471925134 494535284 905526371 905526371 376053080 376053080 345771594 345771594 955908846 955908846 493804809 587354552 615126345 757744568 757744568 823799866 823799866 729964092 729964092 711308901 442638874 442638874 837189664 846223760 846223760 309349184 309349184 63375440 63375440 99357040 107545016 107545016 107354520 9180608 68112456 293817552 328229520 328229520 824247074 824247074 570630656 570630656 8462592 8462592 338877416 338877416 298060002 279231084 462608912 462608912 22221862 460985216 460985216 405675270 405675270 369958856 107664792 235065864 235065864 209375884 194754792 194754792 160314672 257063680 257063680 44654744 282715432 368051178 425928990 425928990 402603960 496778988 496778988 200801268 386445034 427934558 596057281 596057281 413188422 334371956 380245846 483787902 710676440 746850381 958298305 958298305 803720894 803720894 465799549 465799549 433661670 433661670 427681998 166323684 191175684 309455932 309455932 469877164 469877164 170279248 170279248 135142404 44185920 180164356 180164356 169621536 444596224 444596224 237689720 237689720 380946800 380946800 142165516 142165516 6817152 377300882 377300882 109650112 334640000 334640000 271668082 592072876 592072876 406881377 147399876 560988737 598873926 969020956 969020956 438047378 142219438 329387018 329387018 320129642 433612163 705274405 778912173 778912173 629942548 178270065 113050880 56626976 368360946 368360946 270682250 270682250 274741136 274741136 41615746 37109008 101547056 118918696 118918696 114171080 171677780 171677780 109103352 97785488 94147304 208032424 214326348 214326348 176690256 448403286 513154682 513154682 336724193 635704331 767952166 767952166 973738344 973738344 571024401 571024401 842153259 842153259 559405056 943772880 943772880 705956529 144722216 590839044 590839044 778176188 778176188 131162776 203410984 203410984 25498628 178908420 407342858 455190184 475653774 475653774 443303684 526311102 526311102 858188938 858188938 865736348 865736348 650297438 615567737 556403013 255934580 671257505 671257505 141611124 503779968 640387073 640387073 721263696 792242836 792242836 53782308 510348926 510348926 703993045 703993045 553274000 644439728 644439728 313980744 85006848 189868984 998010803 998010803 400216062 1004837415 1004837415 757541350 773982491 895750560 895750560 493973582 985625293 985625293 419533124 614699776 614699776 604196873 1059271398 1059271398 981541300 939669112 939669112 646620352 318820466 318820466 311551872 285298976 294200418 294200418 292533586 323450224 323450224 299973202 299973202 820188099 867470115 867470115 837832977 881073209 881073209 896717739 896717739 88318723 197298773 626074281 626074281 617619552 548193562 1033374627 1033374627 1053103166 1053103166 864750843 864750843 583331520 572073489 139994772 572568208 639877521 942364190 942364190 820645517 820645517 755967096 572660993 544485525 853726275 853726275 985056035 985056035 254989116 74687094 181143760 373557426 497121084 497121084 442218502 955864020 124405849 569302497 670057747 896263464 896263464 933677272 933677272 690130337 992407719 1002399732 1002399732 713714036 975180789 975180789 960318099 960318099 918696667 836197201 836197201 856498561 856498561 441263062 558598435 558598435 604577925 604577925 267396996 628761705 635137764 635137764 495274630 965550370 965550370 760598090 885892293 892166491 892166491 973650642 973650642 839699475 643450966 282133632 936992976 936992976 728980213 728980213 819906534 819906534 626041688 626041688 474429582 604395584 823184418 1034160672 1034160672 606490649 238964173 67260548 74634120 410054664 410054664 402776070 402776070 402776070 395838672 395838672 370925248 357271786 281739456 122152048 48493008 5403600 303397632 345301139 857746244 1005955687 1005955687 1036326640 1036326640 532360615 639640336 639640336 826497350 826497350 1041240134 1041240134 277877619 812332419 812332419 674360612 674360612 32541329 223122840 709514244 709514244 539796608 39446160 76194440 76194440 75239304 81208064 81208064 16128960 16128960 15080384 4460864 4144896 4142848 2399232 78864904 78864904 11441408 131976264 131976264 47838112 139677792 177784260 189005952 189005952 127930812 124137980 137591492 144902400 168159252 168159252 161485136 161485136 188762240 188762240 148998592 186925360 190868912 190868912 33652608 23350912 548146497 572733697 572733697 170436848 143466673 149106976 552889105 723812628 723812628 703469989 582764344 202087088 202087088 128973064 53863248 90507656 223398160 657772689 657772689 628968888 707838741 993595572 1006904727 1006904727 461904910 54801884 675559556 675559556 152512661 135663616 135663616 973440022 973440022 489220101 302144316 75810888 278251592 437643798 503359488 503359488 272884950 272884950 1021765058 1021765058 920647697 920647697 794506941 794506941 277882346 347525378 347525378 1043875672 1043875672 738334921 738334921 895668619 895668619 373565638 599830768 599830768 637978627 806089731 985214408 985214408 883448397 963744252 963744252 695360810 1018780895 1018780895 764413252 764413252 804569292 804569292 635166773 562468896 147465604 182505488 182505488 177766660 177766660 170035540 201375756 201375756 190669600 184288084 307504218 307504218 173392072 310765010 310765010 270059016 347375510 376888218 376888218 328111096 209934288 205590924 217369548 329549942 459491546 459491546 96170546 366086608 366086608 355009090 355009090 344553864 344553864 270353034 300333064 392839922 392839922 289261000 482459550 482459550 597869522 597869522 181454763 34083864 33649664 34264080 314681632 370582083 569805250 572606656 572606656 507719838 507719838 538903393 538903393 176895060 672044957 672044957 478989470 478989470 350539076 961512481 961512481 956619868 956619868 889636918 461652598 461652598 297074982 284596784 186944000 186944000 63020544 55364880 44929184 93792808 93792808 88309024 100675856 131254345 650494713 650494713 605075624 575398992 575398992 553069936 553069936 67182600 67182600 548173320 548173320 305694618 680839308 680839308 72936960 504236573 810235011 848004315 848004315 502146460 524338593 909746443 963651456 963651456 408492036 279711176 751769606 751769606 712772801 275644608 178799444 178799444 681595905 780852428 780852428 988829086 988829086 790758693 638024756 944302090 944302090 776858781 693737504 265466742 185688772 398652038 398652038 504694792 504694792 325100006 469762524 469762524 135039926 173368492 1014123330 1014123330 704552333 939259899 939259899 862978944 862978944 891372330 957497383 957497383 818956674 420752118 37871760 323042594 437081938 452319988 452319988 259262020 159080716 66097172 59974160 34605568 95506464 168907304 168907304 515850078 560246146 745903578 745903578 256311626 746336014 759025548 759025548 706819610 706819610 650448920 650448920 306709627 320939018 390095418 390095418 389120186 141051264 458505440 798962060 798962060 757765537 770729513 770729513 655638577 168666896 144442432 236725568 236725568 75373832 212992844 212992844 145693444 138156608 109684872 76272976 35188736 35188736 340472970 378779858 378779858 337639946 369187344 369187344 289015690 70780042 70662529 71561352 554796323 554796323 362886880 610149312 989667657 989667657 529212656 611351273 611351273 453323508 826490086 826490086 885030988 885030988 305144330 305144330 221937958 190051118 770707778 770707778 834385024 834385024 403798466 283159256 517742848 575018369 575018369 126538872 157209736 165598360 199802792 199802792 547767925 705829653 705829653 1065357405 1065357405 656807968 834801891 834801891 907802139 907802139 549718041 467414046 467414046 459940368 427505574 392902074 395450048 395450048 513950622 513950622 480506208 57795504 17875488 393396224 393396224 359023442 336933360 336933360 310720714 310720714 88943784 306016672 467764916 467764916 265479352 265479352 211676748 211676748 100724752 202375692 202375692 181937368 98116744 98116744 184076244 559044337 559044337 170140065 786103069 786103069 745840573 154403041 145137073 633915528 633915528 415139442 982830870 982830870 707650579 966577723 1016983119 1016983119 43719506 766540204 833834551 833834551 144770208 166274532 560102276 579156580 722604597 861482193 867456196 867456196 954196806 954196806 672521894 545963250 734910484 734910484 648333828 648333828 701439269 701439269 853710869 853710869 1001778039 1011652684 1011652684 458879472 458879472 331688178 608185894 827060467 827060467 578902756 1018203915 1018203915 869411463 869411463 853819715 677741263 865786024 865786024 457622898 315779952 1002967412 1002967412 951585221 546832451 553649175 810549386 810549386 233865902 114320720 466714796 661143657 661143657 86081792 741012057 741012057 683899432 591845553 181242557 607733328 607733328 749786672 749786672 675467397 570458792 382923273 881971835 881971835 693668433 179020860 716662657 716662657 588424904 253257157 841027634 841027634 596908828 899104416 899104416 885523659 767676250 767676250 598609053 740569056 740569056 653279343 953292125 953292125 830119943 553730846 543687350 543687350 754647249 754647249 256845660 616601155 616601155 415638472 425991952 425991952 354188048 387109434 910446080 910446080 835323682 346744704 304722922 282591296 46957840 46957840 42470480 151001088 151394340 151394340 156549796 156549796 147492992 184887824 184887824 152044068 432613984 432613984 49971216 49971216 420151840 420151840 22804128 22804128 199294176 199294176 167821332 147066884 9800384 9800384 5243520 6888849 597944849 597944849 565191489 544017809 567219680 707124355 949337479 980818839 980818839 944138639 944138639 959332392 959332392 149160011 680274767 680274767 877726734 877726734 304886210 144051184 457445836 626408151 1019351045 1019351045 335943906 222630001 688325794 688325794 682890537 767820704 767820704 671164679 223426713 109236592 109236592 68178600 620167577 620167577 295612192 320660078 863209987 1008044041 1008044041 738500736 738500736 713048461 713048461 273621186 273621186 351339632 368321170 394082274 394082274 368715506 345771594 955908846 955908846 118000336 822640640 822658083 822658083 356667555 628827664 660738489 729964092 729964092 711308901 425214890 425214890 373340072 373340072 307251778 309349184 309349184 12849360 12718272 71578736 73809136 73809136 9453568 14731072 590123697 590123697 328229520 594973605 824247074 824247074 826922674 839021779 839021779 969223081 969223081 814064627 814064627 728834588 750113069 750113069 730247712 460985216 460985216 36700944 201486336 201486336 102895896 235065864 235065864 209375884 194754792 194754792 160314672 257063680 273261698 273261698 282715432 368051178 368051178 138953268 105972892 445294732 479075406 511869678 511869678 427934558 427934558 413188422 413188422 525312 787712 2361600 710676440 746850381 746850381 553278680 553278680 292422688 292422688 1025729729 1025729729 546366319 564161011 568976865 568976865 331200482 798897811 798897811 347869002 819364617 819364617 458641492 464001300 464001300 151179264 167954510 411046164 411046164 405852236 35295296 385876496 385876496 310429258 273029122 312621522 312621522 306653264 38086800 334640000 334640000 271668082 592072876 592072876 406881377 147399876 626531222 626531222 355409273 1007949469 1007949469 412625492 1004077555 1004077555 128851320 53485074 389335866 389335866 629942548 629942548 178270065 113050880 56626976 368360946 722068533 722068533 962903144 962903144 324942951 831202280 831202280 563365562 391193274 391193274 387197056 249895284 249895284 183786024 247599324 247599324 208032424 214326348 247078796 247078796 176690256 1049088 26350176 336724193 635704331 635704331 814033964 814033964 775776321 571024401 948763059 948763059 559405056 559405056 943772880 943772880 705956529 144722216 590839044 590839044 122103688 131162776 131162776 203410984 203410984 176518228 235226232 1057454081 1057454081 475653774 840977691 840977691 486557152 339498984 858188938 956751187 956751187 865736348 650297438 615567737 240160826 290608838 544859545 544859545 255522084 503779968 503779968 874639275 874639275 454385714 335611195 335611195 758820045 758820045 739659536 739659536 304991634 340783618 340783618 274623108 209112988 189868984 998010803 998010803 400216062 400216062 82241472 757541350 757541350 895750560 895750560 617946281 582694737 201490444 579182832 614699776 614699776 604196873 1059271398 1059271398 981541300 939669112 939669112 646620352 207115216 311551872 311551872 271767376 294200418 328864082 329998370 329998370 323450224 317269346 317269346 296042610 320864562 850560360 850560360 665372811 575192857 79709843 19257580 67229708 197298773 626074281 626074281 979048405 979048405 510337051 1053999774 1053999774 1053103166 864750843 864750843 526560052 223483084 643858448 643858448 538488991 942364190 942364190 820645517 820645517 755967096 572660993 544485525 853726275 853726275 829104669 829104669 15925444 452987400 452987400 373557426 373557426 222329004 287551966 287551966 151716720 180041556 192240202 896263464 896263464 933677272 933677272 970622723 992407719 1002399732 1002399732 975195234 975180789 1002848194 1002848194 960318099 436664854 836197201 836197201 856498561 856498561 272687618 558598435 558598435 604577925 604577925 267396996 628761705 635137764 635137764 495274630 504414519 760598090 760598090 712309480 308787125 289542306 606716258 876683371 876683371 359437691 302115034 962150976 962150976 662823033 834794722 834794722 714285624 626041688 626041688 474429582 492877058 823184418 823184418 739297383 928018482 981116083 981116083 347077962 410054664 623693097 623693097 506799167 813128485 813128485 370925248 370925248 46211200 48178272 52205170 307415730 307415730 304143042 345301139 853928275 853928275 614033819 738800415 983040658 983040658 438738963 438738963 826497350 826497350 464045170 464045170 825633795 952040034 952040034 715769653 715769653 23932577 223122840 709514244 709514244 710104196 712119189 712119189 709339856 75239304 81208064 81208064 16128960 16128960 15080384 9975872 4912192 9582272 9582272 78864904 78864904 606269449 606269449 590027184 590027184 139677792 746783665 761467060 761467060 608309289 145170700 137591492 137591492 168159252 168159252 161485136 161485136 149068272 168036384 168036384 186925360 190868912 190868912 23675040 21306272 548146497 572733697 572733697 170436848 143466673 149106976 552889105 723812628 723812628 703469989 582764344 202087088 202087088 128973064 32335784 90507656 193439821 657772689 657772689 638070325 136191492 993595572 1006904727 1006904727 812198071 596052110 675555332 675555332 815607363 815607363 874333719 975004164 975004164 489220101 302144316 437705238 437705238 437643798 437643798 278120464 278120464 369937408 1021765058 1021765058 906947436 768152144 794506941 794506941 112371693 347525378 884023736 1043875672 1043875672 480436804 904397503 911773788 911773788 577316241 599830768 661033328 817976993 817976993 985214408 985214408 883448397 883448397 770234558 576532113 838944115 838944115 764413252 764413252 804569292 804569292 635166773 562468896 273851140 274261680 420398262 420398262 308337060 170035540 160477828 190669600 190669600 687225505 1062415295 1062415295 922818590 639052656 833792521 833792521 73565336 73565336 801515053 801515053 575461584 764469292 764469292 329549942 459491546 459491546 90788432 366086608 366086608 355009090 355009090 344553864 344553864 270353034 300333064 392839922 392839922 289261000 111807048 484036409 929613243 929613243 707106581 707106581 278870034 278870034 774390448 774390448 828408080 828408080 812044454 669770809 675503484 675503484 538903393 207260176 672044957 672044957 478989470 478989470 350539076 350539076 144772232 529304584 529304584 525262014 461652598 461652598 297074982 284596784 186944000 186944000 63020544 55364880 44929184 44906864 23333184 62225744 62225744 57880528 56370320 605075624 605075624 575398992 575398992 564397776 564397776 540880641 576104409 576104409 305694618 305694618 340000776 340000776 130548866 273155320 273155320 240591360 584258774 584258774 502146460 909746443 963651456 963651456 489144797 686840667 751769606 944375939 944375939 275644608 178799444 178799444 681595905 681595905 115387016 654145936 654145936 638024756 638024756 772089236 776858781 776858781 693737504 504414750 185688772 398652038 471750162 504694792 504694792 325100006 325100006 130032764 615109933 734676153 747378253 874392297 874392297 549715987 369181208 862978944 862978944 891372330 957497383 957497383 818956674 427029414 422834982 323042594 692025987 692025987 452319988 259262020 793911593 793911593 89212668 91397868 119685785 690260092 690260092 181648786 82666592 516154649 792709443 792709443 747833408 806404611 806404611 706819610 706819610 566255800 566255800 306709627 964698418 964698418 606792163 606792163 279940616 600542785 798962060 798962060 757765537 770729513 770729513 655638577 877495762 877495762 585967352 613156290 613156290 0 0 13545736 109684872 109684872 76272976 35188736 36975104 36975104 40226752 67446792 71641608 351811808 351811808 289015690 70780042 70662529 71561352 554796323 554796323 362886880 362886880 989667657 989667657 951500070 951500070 829227653 453323508 826490086 826490086 885030988 885030988 666288175 666288175 497125706 190051118 770707778 770707778 574814009 592429833 624411685 624411685 570468372 575018369 575018369 15859984 14815361 592462272 592462272 177783265 547767925 705829653 705829653 1065357405 1065357405 656807968 834801891 834801891 907802139 907802139 874521405 948623128 948623128 834023039 338358644 334821522 742682667 742682667 653294157 973273984 973273984 73837400 268699650 268699650 861543970 861543970 541722528 458702080 867644643 867644643 88943784 310645032 373219098 373219098 298713756 288651040 466564818 466564818 456384292 456384292 202375692 181937368 98116744 98116744 184076244 184076244 141698484 40111292 220593180 220593180 198031556 177865264 51385940 633915528 633915528 600049905 982830870 982830870 707650579 966577723 1016983119 1016983119 12566351 766540204 1020742953 1020742953 144770208 166274532 674943508 674943508 169006853 856286420 856286420 181003315 456597014 457513362 457513362 175149120 175822740 189692004 189692004 461386898 461386898 191281588 417472678 417472678 299444706 324026354 451889910 986990530 987832791 987832791 692388017 827060467 827060467 578902756 1018203915 1018203915 869411463 869411463 853819715 677741263 865786024 865786024 457622898 312498886 1002967412 1002967412 951585221 546832451 553649175 810549386 810549386 477472604 477472604 466714796 479265232 479265232 235302928 209819760 134840640 252105812 252105812 181080124 260654288 260654288 139179172 124494896 124494896 578823051 578823051 881971835 881971835 483096634 223600676 406798230 406798230 960270784 970907367 970907367 841027634 842857317 842857317 603465643 595204017 767676250 767676250 598609053 942040934 942040934 899258894 416736604 425901150 425901150 379192796 379192796 480248222 754647249 754647249 153112756 616601155 616601155 521306182 512365662 425991952 982144527 982144527 460342516 835323682 835323682 834258891 576767763 576767763 771760362 771760362 464596902 430228516 430228516 190110756 190110756 143341140 152584800 486651402 486651402 443084118 443084118 61302998 59694192 49971216 66687748 442126356 442126356 456308516 456308516 167821332 167886928 167886928 168216596 168216596 20132640 153158276 153158276 31838368 107039104 870236272 870236272 707124355 949337479 980818839 980818839 944138639 944138639 631178688 711198912 711198912 680274767 680274767 877726734 877726734 841835587 357081530 394330512 626408151 1019351045 1019351045 684662874 684662874 688325794 688325794 682890537 682890537 671164679 671164679 100663544 109236592 109236592 95426640 620167577 620167577 295612192 855638462 863209987 1008044041 1008044041 741393165 741393165 979415128 979415128 746762697 901488649 901488649 761919992 394082274 394082274 385155671 716709973 716709973 687080587 618938824 822640640 822658083 822658083 509191427 674886679 795250459 795250459 510111150 510111150 551534595 551534595 849624962 849624962 815843664 54552928 54552928 40417632 40417632 65284992 65284992 36040928 36040928 30662128 590123697 590123697 171068198 594973605 594973605 582865703 826922674 839021779 839021779 969223081 969223081 814064627 814064627 728834588 750113069 750113069 730247712 302450436 505901458 505901458 503468446 406966684 637568188 637568188 690566369 703206885 703206885 38829680 46211280 46211280 273261698 362668138 388303696 388303696 331099378 292153928 105972892 445294732 479075406 511869678 511869678 357099410 549031229 549031229 384110084 438871044 438871044 446294858 775333842 775333842 717625349 1008470481 1008470481 421168912 421168912 1025729729 1025729729 546366319 564161011 568976865 568976865 515349668 798897811 798897811 347869002 819364617 819364617 458641492 464001300 464001300 436766308 436766308 411046164 411046164 405852236 233100436 385876496 385876496 310429258 273029122 312621522 350554379 607915785 901656417 901656417 320094880 492467153 492467153 532218273 532218273 238894856 967182924 967182924 1052640822 1052640822 1007949469 412625492 1004077555 1004077555 375539586 412615009 755573805 1011651725 1011651725 339910832 742130639 742130639 281808066 487712614 722068533 808781630 962903144 962903144 642421850 831202280 831202280 563365562 402654976 494733164 494733164 249895284 249895284 422860352 422860352 247599324 452202582 452202582 283122432 377918362 377918362 270717186 59168880 312758530 312758530 562298913 814033964 814033964 775776321 462275700 948763059 948763059 417473288 165827098 651597912 651597912 630382097 630382097 577774704 577774704 59310993 52370408 126236184 142778464 142778464 176518228 235226232 1057454081 1057454081 357449146 840977691 840977691 700249426 487801264 487801264 956751187 956751187 606916070 486050836 486050836 273396384 290608838 377552954 377552954 255522084 224006658 125081376 874639275 874639275 454385714 335611195 447832896 758820045 758820045 739659536 739659536 304991634 340783618 340783618 274623108 248217564 248217564 182155044 182155044 12450464 19277828 153301284 203425828 203425828 556144656 946005156 946005156 824915235 282177641 794047358 794047358 605303371 588724785 588724785 78514008 78514008 35002896 38477768 445661656 445661656 336703640 271767376 271767376 285613632 328864082 329998370 329998370 304796690 317269346 317269346 296042610 320864562 850560360 850560360 879784194 879784194 640976777 294525962 294525962 131623040 260602568 492135488 979048405 979048405 858587480 1053999774 1053999774 855662736 855662736 792046447 635923203 644418969 644418969 643858448 738836825 738836825 1887744 822190080 822190080 34693155 33554448 37257280 37257280 41963024 41963024 10826048 15925444 452987400 452987400 312028370 134773136 175111572 175111572 145368328 151716720 737499498 737499498 452639052 232806573 781097406 802840474 970622723 970622723 805886323 975195234 975195234 869994321 1002848194 1002848194 812465781 191567410 862856288 862856288 274418144 274418144 45930434 278244290 278244290 346194816 346194816 107115672 14177296 101238016 101238016 125903880 125903880 265292504 265292504 754822044 754822044 374130372 606716258 876683371 876683371 508213028 302115034 962150976 983138402 983138402 834794722 834794722 559579462 559579462 399675159 487947130 487947130 415670968 487940208 513067614 928018482 981116083 981116083 729809013 729809013 898945030 898945030 506799167 813128485 1028162740 1028162740 923951156 923951156 326838448 88945520 307415730 307415730 304143042 8542560 389231386 389231386 468454704 468454704 983040658 983040658 945187282 967887303 967887303 442827028 464045170 464045170 825633795 952040034 952040034 715769653 715769653 35965200 35965200 2410752 573091989 710104196 712119189 712119189 709339856 41373696 11836928 12336640 12336640 3697408 9975872 10956800 10956800 9582272 68941320 68941320 641042248 641042248 606269449 590027184 590027184 686960448 746783665 761467060 761467060 608309289 602267664 172042601 169246736 169246736 200411684 200411684 191139940 186910724 168036384 168036384 39862580 35932160 59189216 59189216 21306272 53030000 54302928 603737008 603737008 52564272 557216144 724924929 724924929 21180576 184879248 184879248 101453344 118489656 118489656 48908544 48908544 102707840 105647256 638070325 638070325 186785792 587337269 587337269 812198071 812198071 672340045 672340045 588515889 815607363 815607363 874333719 975004164 975004164 470059024 310684160 511778910 511778910 235145244 358058554 358058554 422841510 422841510 788733409 906947436 906947436 592845489 779626220 779626220 1050952467 1050952467 884023736 884023736 480436804 480436804 904397503 911773788 911773788 577316241 641913293 661033328 817976993 817976993 944618501 944618501 842845971 770234558 770234558 576532113 838944115 838944115 603046162 430712938 430712938 276060066 276060066 270624112 273851140 274261680 420398262 420398262 403213346 403213346 160477828 164893376 166922884 687225505 1062415295 1062415295 1035743490 639052656 833792521 833792521 737929242 309836927 801515053 801515053 575461584 764469292 764469292 228966780 313059606 313059606 90788432 487651030 487651030 262427748 69551424 155457676 155457676 124238720 124238720 839055187 839055187 136349788 979009623 979009623 929613243 929613243 758153827 707106581 940424482 998766711 998766711 774390448 828408080 828408080 812044454 669770809 675503484 675503484 207260176 207260176 149790856 205295956 205295956 204998412 204998412 142746696 144772232 144772232 138863688 138863688 134727048 11910912 29936800 29936800 12856256 5057664 29579072 29579072 25001376 69070344 69332808 69332808 27935008 59326561 571073553 571073553 592971121 592971121 554913328 640757696 640757696 540880641 638626305 638626305 101640729 816950275 816950275 742392262 518645772 923871301 923871301 755439354 584258774 584258774 361304168 277167744 451793770 451793770 841482392 1014012811 1014012811 944375939 944375939 182488464 143445060 37149780 240393088 240393088 237113628 206575004 202901004 11535168 257246304 257246304 239166464 470900752 504414750 504414750 248641412 269716480 471750162 471750162 306061074 171983012 294445166 294445166 615109933 734676153 747378253 874392297 874392297 210430213 210430213 529608958 529608958 329388402 123814224 141380882 427029414 427029414 422834982 236803204 692025987 692025987 410531492 129197520 793911593 793911593 134742100 149318952 251848840 690260092 723652917 812654159 812654159 936358451 936358451 792709443 747833408 806404611 806404611 539018459 1010228889 1010228889 757989432 139324548 964698418 964698418 696811523 606792163 428792934 975866225 975866225 1058147887 1058147887 807474127 34130968 552420922 877495762 877495762 585967352 613156290 613156290 139334660 211812684 212472832 212472832 15254976 15254976 49644352 49644352 303973906 303973906 278662802 287368514 287368514 280792672 312380466 312380466 93250928 132984312 855450738 855450738 648140361 648140361 639457801 693706024 951500070 951500070 829227653 407638169 862346017 862346017 618793097 904384908 904384908 666288175 906273620 906273620 735990423 735990423 361309290 592429833 624411685 624411685 743751825 743751825 723963353 723963353 702471109 803363185 803363185 177783265 186796464 186796464 430051504 549454296 549454296 432144496 671220449 721622551 812720663 812720663 874521405 948623128 948623128 834023039 353969706 361768000 742682667 742682667 653294157 973273984 973273984 73837400 268699650 268699650 861543970 861543970 541722528 458702080 867644643 867644643 66479506 310645032 310645032 298713756 298713756 288651040 466564818 466564818 456384292 456384292 211506556 211506556 12583104 153174520 158409156 158409156 143197344 147849924 182321156 182321156 177865264 177865264 51385940 578817184 746589445 746589445 896574788 896574788 574669076 892614428 892614428 222297900 204463648 796548816 1020742953 1020742953 418941362 586289862 674943508 705209952 730980981 856286420 950178963 950178963 842865636 842865636 679551170 175149120 175822740 175822740 181394496 181394496 176433300 176433300 325653735 415375777 415375777 324026354 734087431 986990530 987832791 987832791 692388017 161536495 202396224 209899596 355367219 997183274 997183274 81266376 137597056 141681540 141681540 37490304 44565840 51123572 168696852 272385106 272385106 167806226 139726422 330075034 343206218 477472604 477472604 302629792 249340962 235302928 235302928 219472432 202318780 73913000 142112596 192235732 260654288 260654288 139179172 124494896 124494896 578823051 578823051 745026797 745026797 537536884 223600676 223600676 302365843 960270784 970907367 970907367 843077635 842857317 842857317 603465643 932254550 932254550 298169265 1025511712 1025511712 942040934 899258894 239938716 425901150 521964600 521964600 188351666 511445544 511445544 272114930 272114930 494420360 521306182 521306182 512365662 412845680 982144527 982144527 460342516 376748992 834258891 834258891 576767763 576767763 771760362 771760362 464596902 430228516 430228516 190110756 190110756 143341140 152584800 486651402 486651402 443084118 443084118 61302998 59694192 25900128 66687748 442126356 442126356 456308516 456308516 44866112 167886928 167886928 168216596 168216596 167854740 190042932 190042932 187000096 187000096 870236272 870236272 303814347 276823938 254019900 287376116 287376116 72468578 231507776 711198912 711198912 503581328 654313528 685838286 841835587 931430591 1008095600 1008095600 402663462 423624870 423624870 684662874 684662874 235151517 610535088 658247481 658247481 571736166 571736166 449874883 330868226 330868226 387507986 387507986 317548936 252738824 855638462 1050022686 1050022686 640815897 741393165 741393165 979415128 979415128 746762697 901488649 901488649 761919992 392260091 569181360 569181360 716709973 716709973 687080587 618938824 541716190 779142045 779142045 885687468 885687468 795250459 795250459 510111150 510111150 700955139 868230114 924967467 924967467 822430018 280524352 280524352 66041856 66041856 54999712 54999712 36040928 252391684 252391684 149329276 274743968 288408354 335581632 335581632 367527542 367527542 266425840 283248112 424415208 424415208 536700088 536700088 227903692 204497416 359766286 825633027 825633027 822083619 505901458 503468446 407969922 637568188 637568188 690566369 703206885 703206885 199826740 717497776 717497776 601694281 777074028 777074028 771887133 573694240 469862658 777858717 777858717 805849206 805849206 726089920 711601394 549031229 549031229 397536386 606945830 757336365 757336365 775333842 993791975 993791975 1008470481 1008470481 487349528 731944975 731944975 459754604 395577942 395577942 1034552798 1034552798 561152454 553779748 553779748 540171972 155206704 161481060 161481060 145526900 135401988 436766308 436766308 154814692 154814692 233100436 829630243 967446799 967446799 884278627 884278627 652234194 652234194 607915785 901656417 901656417 272120864 557868064 881043673 881043673 839859219 646790147 967182924 967182924 1052640822 1052640822 138019544 138019544 346323040 346323040 375539586 412615009 755573805 1011651725 1011651725 336320512 742130639 742130639 415970502 487712614 487712614 808781630 808781630 558311775 642421850 642421850 306316368 306316368 402654976 494733164 494733164 354439656 354439656 422860352 422860352 246548700 452202582 452202582 283122432 377918362 377918362 270717186 59168880 312758530 312758530 291901832 277363970 354462236 456518454 456518454 415740488 415740488 407349006 165827098 651597912 651597912 630382097 630382097 232064113 35811524 49287272 52370408 126236184 135162912 135162912 95230988 220545336 321328204 321328204 254594364 234924552 700249426 700249426 487801264 977569210 977569210 973262153 976143814 976143814 868914396 868914396 642925043 786153632 786153632 134225968 323837440 323837440 190350368 916489984 916489984 423398219 447832896 447832896 330164529 319045640 309768592 309768592 279659128 106108960 106108960 538764313 654476345 654476345 221153158 511068318 511068318 464902267 464902267 203425828 258019726 946005156 946005156 824915235 747952141 794047358 794047358 605303371 776673111 975729667 975729667 915763780 1041029832 1041029832 877849422 445661656 336703640 327678368 327678368 310742050 311691858 311691858 48572880 279124176 279124176 289919025 578898705 578898705 590364832 590364832 879784194 879784194 761231589 761231589 629147162 646661984 1039307158 1039307158 851158844 851158844 858587480 858587480 805984296 855662736 855662736 792046447 635923203 644418969 644418969 184033408 738836825 965479527 1066189134 1066189134 995698625 738797608 1046202317 1046202317 641355965 641355965 634590209 1012318768 1012318768 911682459 305793933 123997672 134773136 175111572 340341866 340341866 717659862 819759296 819759296 452639052 1036564821 1036564821 322667308 322667308 327829698 901579754 901579754 144710085 345450626 440801188 440801188 970786570 970786570 862856288 862856288 920335458 920335458 307967634 575092691 575092691 346194816 346194816 26253236 14177296 101238016 101238016 125903880 125903880 265292504 394355296 754822044 754822044 661136226 660154041 452546960 1009340512 1009340512 457714844 457714844 983138402 983138402 681125445 954581132 954581132 661610580 661610580 487947130 487947130 415670968 487940208 513067614 513067614 190841268 704643540 729809013 729809013 898945030 898945030 428211398 420213798 1028162740 1028162740 923951156 923951156 326838448 110761344 110761344 269711616 314418178 314418178 275999474 29362690 136872882 419233796 692669652 692669652 945187282 967887303 967887303 442827028 442827028 48924772 191815092 572011252 572011252 170746128 170746128 185523252 185523252 26381396 33911040 33949696 168122448 168122448 137735504 16893216 10435904 19573856 19965952 19965952 19449120 19779360 26037056 26037056 68941320 68941320 641042248 641042248 10621248 56823808 56823808 686960448 686960448 596125032 596125032 602267664 602267664 172255424 172255424 169246736 200411684 200411684 191139940 186910724 172114752 172114752 159210788 159210788 158215552 59189216 9841456 538892097 568546145 709822784 709822784 175236000 671433808 724924929 724924929 694082449 575169797 554797804 224166540 210685288 118489656 88348128 48908544 128957284 206446524 206446524 140588444 186785792 210028860 264554748 264554748 666968280 907280421 940972551 940972551 831326297 831326297 750521887 35995933 254935688 574640157 646603269 713765973 713765973 706343936 358058554 358058554 422841510 422841510 272972864 260401592 260401592 800080597 800080597 779626220 1050952467 1050952467 650183490 650183490 392312808 392312808 402788358 493033468 566201778 566201778 641913293 641913293 445793396 675116234 944618501 944618501 842845971 513800716 513800716 372483072 372483072 136365376 347306180 352112586 957323571 957323571 345016566 9141296 43503254 449952628 449952628 289687558 403213346 556280038 556280038 555642830 166922884 166922884 21303556 1035743490 1035743490 587147029 394596051 737929242 737929242 309836927 343184264 343184264 42027984 82134128 101280588 228966780 313059606 313059606 19815608 487651030 487651030 185217044 53218792 155457676 155457676 124238720 124238720 839055187 839055187 110632984 979009623 979009623 887359947 887359947 758153827 553766134 940424482 998766711 998766711 366667841 146692504 155728060 172600416 221244652 221244652 183035000 90437976 116960536 116960536 10462288 9227328 9207808 33622032 38337552 38337552 15254976 15254976 13012224 11194816 40139328 40139328 141809744 150285252 150285252 73005256 73005256 48877872 281221290 361578568 372723610 372723610 92278912 571073553 571073553 592971121 592971121 554913328 640757696 640757696 374416139 638626305 638626305 103294216 816950275 816950275 742392262 518645772 923871301 923871301 1041379067 1041379067 646065344 646065344 277167744 280378654 845722912 845722912 1014012811 1014012811 720665602 720665602 438040325 148760708 148465536 240393088 240393088 237113628 206575004 213800320 213800320 234217004 234217004 239166464 239166464 400597196 400597196 248641412 248641412 423264000 423264000 306061074 304691200 294445166 294445166 222360056 520290342 520290342 432785884 873559738 873559738 236111413 312528928 329388402 329388402 56758386 93988158 380057986 380057986 343087620 379471398 1006803000 1006803000 634759681 634759681 567593697 166200778 166200778 149318952 489042748 489042748 723652917 812654159 812654159 936358451 936358451 552897169 357661219 344068170 358518018 556033696 1010228889 1057628195 1057628195 139324548 239363096 696811523 696811523 419467086 428792934 975866225 975866225 1058147887 1058147887 807474127 34130968 114132490 276688334 276688334 189339046 182788424 182788424 139334660 211812684 212472832 212472832 77019720 77019720 143006228 146970824 303973906 303973906 278662802 287368514 287368514 280792672 312380466 321281970 321281970 320872448 855450738 855450738 648140361 648140361 639457801 693706024 693706024 757786954 757786954 680308945 945286278 945286278 895153803 904384908 904384908 539082821 906273620 906273620 142145413 65126448 361309290 411164278 411164278 527262437 743751825 743751825 723963353 723963353 702471109 803363185 803363185 768610320 626131289 626131289 591436072 818937931 818937931 432144496 671220449 1044519598 1044519598 926169403 926169403 674638085 991355436 991355436 473482256 361768000 361768000 583041306 583041306 1009799640 1056409871 1056409871 827725925 550576833 524390611 319258937 336569355 336569355 819337179 819337179 277263552 307938944 307938944 396150836 396150836 344522788 507771578 507771578 164783734 75976884 211506556 211506556 18907264 153174520 158409156 158409156 143197344 147849924 182321156 182321156 168696852 136223488 47485120 47485120 746589445 746589445 896574788 896574788 603302138 892614428 892614428 222297900 825137718 825137718 997999821 997999821 418941362 586289862 588432128 705209952 730980981 730980981 950178963 950178963 842865636 842865636 679551170 293288646 192044224 184214384 184214384 413955270 413955270 176433300 325653735 415375777 447219030 447219030 734087431 734087431 589917488 599107953 599107953 227683877 255115324 255115324 355367219 997183274 997183274 887380579 814199259 766587245 766587245 577429900 518167694 51123572 168696852 286806136 382894114 382894114 157288128 309912884 309912884 38388050 33587984 204488704 204488704 67904384 219472432 219472432 202318780 73913000 142112596 192235732 192235732 154737524 138950444 138950444 33698844 50905104 50905104 612042602 698433009 698433009 525903047 886273631 886273631 638190419 636670969 843077635 843077635 833284036 833284036 248147969 932254550 932254550 916459600 1025511712 1025511712 470946494 470946494 230987868 250237138 795269745 795269745 303485836 826541139 826541139 541992347 415864690 839087191 839087191 92274792 209330560 246129714 279643952 279643952 58820530 376748992 376748992 362109984 362109984 355010080 511588564 511588564 437420500 327160080 63980032 63980032 143637136 151655972 151655972 184887824 318779648 318779648 406666400 408160902 420485766 420614694 420614694 38670006 16030048 10153232 44866112 53236288 53236288 34381904 34079760 33743140 188037654 288832290 288832290 329571622 355224708 869985330 869985330 650166489 998682837 998682837 931473531 990792299 1058421993 1058421993 400294531 503581328 503581328 630196840 630196840 426922313 931430591 1008095600 1008095600 541986843 856297529 856297529 608242864 608242864 897585160 897585160 572919850 849226608 849226608 806159922 449874883 330868226 330868226 387507986 387507986 317548936 252738824 188743476 1050022686 1050022686 640815897 455086639 608322140 608322140 782430405 782430405 636695529 549697348 134320920 121771976 569181360 569181360 76814240 812646404 945818503 946080135 961283459 961283459 826278051 885687468 885687468 407688026 454823693 454823693 392565934 700955139 868230114 924967467 924967467 822430018 280524352 280524352 342249465 836162275 899530579 899530579 929112507 929112507 871279553 855908103 1057061113 1057061113 931534971 335581632 367527542 367527542 358213290 545990857 545990857 522702402 768453595 768453595 227903692 145514438 269553665 825633027 825633027 822083619 407978405 407978405 407969922 407969922 610919817 610919817 77594952 96608468 199826740 717497776 717497776 601694281 777074028 777074028 771887133 573694240 469862658 777858717 777858717 805849206 805849206 726089920 711601394 489113546 397536386 397536386 606945830 757336365 757336365 665898608 993791975 993791975 295720212 295720212 487349528 731944975 731944975 96044096 191037718 207156376 1034552798 1034552798 561152454 553779748 553779748 540171972 59394512 447792346 447792346 137376544 229279508 418812754 418812754 94556520 476496406 476496406 829630243 967446799 967446799 884278627 884278627 820471280 820471280 635473225 575483025 566882705 864284787 865154577 881043673 881043673 839859219 646790147 772052998 772052998 915369038 915369038 466297434 135279840 134218832 134218832 349106906 367038384 383568442 383568442 326420106 279970626 419598764 419598764 558530850 691863051 1023459375 1023459375 463524050 542249846 542249846 385651410 385651410 306316368 428100640 428100640 411616326 445535170 445535170 374790772 374790772 180404744 213191260 213191260 210976220 210976220 279124386 370554266 370554266 341364370 341364370 339870272 339870272 519656803 594236499 594236499 405691849 405691849 409225372 478150734 478150734 399114484 51649232 235668301 612183777 658052249 665858496 665858496 112368696 115545904 164288636 164288636 220545336 830786871 830786871 521003050 1015130719 1015130719 735478790 327053350 977569210 977569210 973262153 976143814 976143814 868914396 868914396 642925043 786153632 786153632 425722630 476728468 476728468 336983202 916489984 916489984 423398219 167806576 330164529 336040192 1023664954 1023664954 830291472 918030171 918030171 890914777 538764313 654476345 654476345 221153158 511068318 511068318 464902267 464902267 170078484 258019726 359124096 359124096 405377280 747952141 747952141 546642260 546642260 776673111 975729667 975729667 915763780 1041029832 1041029832 877849422 878469121 878469121 331817488 331817488 328678002 311691858 311691858 56443664 319616176 319616176 310632498 578898705 578898705 590364832 590364832 648212844 694572341 761231589 761231589 629147162 683818628 1039307158 1039307158 851158844 851158844 1061405018 1061405018 805984296 805984296 545305691 109123689 61404320 61404320 19188000 19398944 668519070 965479527 1066189134 1066189134 995698625 743627724 1046202317 1046202317 641355965 641355965 634590209 1012318768 1012318768 911682459 666646633 388966215 388966215 172172788 490138622 663376190 717659862 819759296 819759296 740028493 1036564821 1036564821 736537577 684461253 684461253 982090256 982090256 273638980 395831945 505893610 505893610 970786570 970786570 616276633 381482216 920335458 920335458 536834590 575092691 575092691 529967820 529967820 130907424 357725594 395875859 395875859 329312025 318341450 1025956033 1025956033 394355296 661136226 661136226 944776648 976750359 1009340512 1009340512 782085791 738536320 738536320 622863883 622863883 954581132 954581132 914464248 661610580 254045457 333745414 333745414 255846114 255846114 236568434 377683636 388572664 388572664 1021445184 1021445184 428211398 428211398 420213798 781350988 781350988 428300857 84180226 100847640 110761344 346168138 346168138 336461200 314418178 303926752 303926752 441132128 441132128 24434354 324717472 324717472 300280290 14805474 50431328 302567024 302567024 63227924 572011252 572011252 170746128 170746128 185523252 185523252 46104336 46104336 170271504 170271504 168122448 137735504 40976768 11986848 19573856 24035008 89322144 89322144 82858272 76275904 79869120 83588096 112592984 651864776 651864776 610851472 112633688 551827729 551827729 57620528 239640689 673809444 673809444 587203876 172255424 180740884 180740884 137439312 137439312 62915408 159420436 172114752 172114752 159210788 159210788 158215552 183508464 183508464 538892097 568546145 709822784 709822784 175236000 671433808 671433808 694082449 694082449 575169797 554797804 224166540 210685288 146827508 147820344 244379672 244379672 206446524 206446524 202802712 82921920 67553344 264292360 264292360 640031117 907280421 940972551 941623351 941623351 831326297 750521887 35995933 35701008 574640157 646603269 713765973 713765973 706343936 10036800 310227696 310227696 272972864 990635832 990635832 381403878 800080597 800080597 623175768 211831552 540330249 781509377 781509377 392312808 917745768 1010918075 1010918075 961561890 961561890 380294255 402784256 402784256 569962092 569962092 591261489 591261489 833642793 833642793 780552971 637796420 136365376 366168147 930229787 957323571 957323571 345016566 9141296 43503254 449952628 449952628 195158388 332899282 556280038 556280038 555642830 202448933 791675709 791675709 779633233 167256253 167256253 184168956 634524124 634524124 72529529 758189817 758189817 780933396 780933396 669294744 155248752 137365520 109348636 26004576 101845816 101845816 1709568 1709568 52899120 52899120 1942064 1942064 311353418 311353418 638310872 638310872 1012151042 1012151042 782502237 462030947 19143784 69340960 85859880 85859880 86118688 86118688 151838456 151838456 113656068 97816720 97816720 65826168 116960536 175170268 175170268 138153732 215138716 215138716 168614936 168614936 142780616 134858056 136333320 176441408 176441408 155222388 141809744 150994884 150994884 564349633 564349633 823632291 831722339 831722339 557883971 542348166 542348166 157429922 5755042 587276946 967702120 967702120 681315724 681315724 259575368 259575368 545652800 545652800 537270273 260124834 508506671 508506671 398668026 856035354 1041379067 1041379067 646065344 646065344 507898014 1007495579 1007495579 900892946 900892946 539056512 720665602 720665602 438040325 148760708 148465536 81338076 176126356 183994260 248656924 248656924 225654584 234217004 234217004 232572328 232572328 400597196 404855030 501632070 501632070 346409310 313423104 313423104 531106980 531106980 258997692 222360056 461955134 594747972 714417037 873559738 873559738 236111413 974160126 974160126 208058720 418855688 418855688 380057986 380057986 343087620 379471398 1006803000 1006803000 976311961 976311961 916035720 916035720 166200778 80233648 489042748 489042748 387172874 353605632 107419393 107419393 316290816 587855027 587855027 192542579 358518018 556033696 621755433 1057628195 1057628195 822085586 145764195 414515338 414515338 49152 49152 280434850 289848130 289848130 119137848 281120296 281120296 276842706 180355284 180355284 144703812 182788424 182788424 112271696 69078540 43743580 43743580 77019720 77019720 143006228 146970824 202414604 302711216 302711216 325060946 325060946 282492304 282492304 321281970 321281970 320872448 320872448 317211328 63172848 33603008 47260368 428755988 510433158 705130946 705130946 680308945 945286278 986727556 986727556 470628909 162974018 162974018 850560466 850560466 160164359 1014795148 1014795148 106316025 72490656 89264040 107481472 107481472 85531952 85531952 505157346 505157346 977036600 977036600 911329355 873513483 591436072 818937931 818937931 673715461 819468000 1044519598 1044519598 926169403 926169403 674638085 991355436 991355436 473482256 410221104 410221104 851573181 851573181 1009799640 1056409871 1056409871 827725925 550576833 524390611 223531692 149736900 684124928 684124928 276586592 277263552 277263552 168204304 396150836 396150836 344522788 507771578 507771578 164783734 77141816 119949140 119949140 33628176 190849536 190849536 592578725 592578725 171216669 241850621 241850621 636595145 636595145 586542136 749595981 749595981 892474155 1035081297 1035081297 730861626 822407215 822407215 138319140 843020294 843020294 572540936 324135700 575825508 575825508 161317956 161317956 25538080 18983968 200893204 408193058 408193058 144180804 293288646 293288646 192044224 184214384 184214384 413955270 413955270 159903990 428492400 428492400 447219030 447219030 406848976 195429552 589917488 951681088 1007638315 1007638315 363896931 255115324 210028620 278702696 887380579 887380579 814199259 766587245 766587245 577429900 518167694 285350924 285350924 486671894 486671894 382894114 428051424 428051424 333847026 467580036 467580036 239397428 239397428 67904384 253330560 253330560 236187292 34484768 29300144 254877784 254877784 154737524 242426636 242426636 68236672 577963035 577963035 1042298360 1042298360 722994229 898690581 898690581 886273631 638190419 636670969 636670969 635064843 635064843 615515136 67773776 114503812 950674816 950674816 985843249 985843249 531766039 136763652 136763652 614561431 795269745 795269745 303485836 900130595 900130595 541992347 484560240 839087191 839087191 186348726 488780128 488780128 246129714 226623780 154681936 34900736 131121440 392184056 392184056 316083788 511588564 511588564 437420500 327160080 198250896 161005584 161005584 151655972 151655972 510205346 510205346 358495928 406666400 423372700 423372700 420614694 420614694 218137484 288888196 288888196 168945156 277461508 277639440 277639440 314092290 406274050 406648592 406648592 819728099 995954423 995954423 953166960 869985330 650166489 998682837 998682837 931473531 990792299 1058421993 1058421993 400294531 898893425 1033109601 1033109601 643190802 643190802 412486285 370197018 127308370 541986843 856297529 856297529 67100656 67100656 897585160 897585160 572919850 849226608 849226608 806159922 56934144 195806516 195806516 106965639 395316121 395316121 240134924 595409560 595409560 637929016 676741241 676741241 608322140 608322140 782430405 782430405 636695529 549697348 298136634 298136634 1024522526 1024522526 1018280526 812646404 945818503 946080135 961283459 961283459 826278051 683280184 775030338 924505659 924505659 711124287 575791761 328678002 328678002 290006178 299698752 299698752 39637504 114947282 342249465 836162275 899530579 899530579 929112507 929112507 871279553 855908103 1057061113 1057061113 931534971 295938591 68851610 358213290 358213290 545990857 545990857 522702402 768453595 768453595 407307188 155910182 74617096 137653538 421865766 421865766 288197380 125144640 10750208 10750208 4458624 4458624 6291840 6291840 4194560 0 0 0 86311056 124070328 124070328 38873352 18186400 4793472 290989220 890259442 1056146303 1056146303 489113546 489113546 470817844 470817844 927074848 927074848 84152499 79169044 235407168 235407168 348652746 348652746 88080552 366797840 373886664 373886664 526034200 526034200 838485530 838485530 438354198 438354198 428914962 428914962 180887796 447792346 447792346 226790972 229279508 418812754 418812754 271728916 476496406 476496406 242138428 242138428 309591552 337303050 337303050 820471280 820471280 635473225 575483025 566882705 864284787 865154577 865154577 1040612618 1040612618 378458178 772052998 772052998 243614036 466297434 466297434 148570624 148570624 134218832 366610274 366610274 315115552 127678784 305420984 305420984 298911010 325707186 558530850 691863051 1023459375 1023459375 462829861 246465372 303172752 450600920 450600920 442111638 428100640 428100640 421527846 445535170 445535170 374790772 374790772 265661552 213191260 213191260 444149064 491709711 1036967151 1036967151 1002898043 809152864 341364370 339870272 339870272 519656803 594236499 1018674762 1018674762 1011145032 679868416 676224608 478150734 399114484 630233228 630233228 612183777 658052249 665858496 665858496 18213408 50384384 164288636 164288636 103350668 830786871 830786871 521003050 1015130719 1015130719 735478790 598398321 760177755 760177755 999882770 999882770 849905889 849905889 293621536 293621536 359432650 359432650 425722630 476728468 476728468 360049062 360049062 847418430 847418430 472849739 246349914 336040192 1023664954 1023664954 865281208 918030171 918030171 890914777 67841352 68550720 81005340 101076972 101076972 206232200 206329320 206329320 218239020 679749668 679749668 271027207 405377280 405377280 122183932 332786900 332786900 289696332 322111802 322111802 281478984 815327633 815327633 343982080 878469121 878469121 581543816 331817488 328678002 33305522 301034720 301034720 319616176 319616176 310632498 285321282 8718400 15173496 123657912 123657912 121402752 599040 208496704 208496704 683818628 683818628 507633822 507633822 613987431 1061405018 1061405018 1060791790 1060791790 619004266 860647221 860647221 801647049 801647049 260826860 575991712 781015140 781015140 737971056 246015324 743627724 743627724 698145317 698145317 665679009 665679009 157418296 795134397 795134397 666646633 388966215 388966215 258159036 490138622 663376190 343936199 650975301 739473425 740028493 740028493 736537577 738329624 771751965 771751965 982090256 982090256 273638980 395831945 538366104 538366104 118897461 109444328 118101048 541987312 541987312 483277732 536834590 536834590 507655386 913201599 913201599 203403220 1035998849 1035998849 395875859 329312025 318341450 1025956033 1025956033 852558503 852558503 147669235 944776648 976750359 976750359 782085791 782085791 738536320 738536320 622863883 622863883 894341514 914464248 914464248 689440293 591533813 562036833 291421960 255846114 255846114 236568434 377683636 756450024 790026813 1021445184 1021445184 810967307 299219682 167719928 167719928 948504868 948504868 661661334 80950784 80217288 346168138 346168138 336461200 67446176 304552418 304552418 441132128 441132128 320444308 549629201 549629201 276113664 543504801 828793876 995708496 995708496 967068386 857023986 857023986 318087828 143463444 143463444 28834304 46104336 134349312 170271504 170271504 64937712 64937712 40976768 32247200 32247200 24035008 89322144 89322144 82858272 76275904 79869120 83588096 112592984 651864776 651864776 610851472 112633688 580462212 580462212 235350172 239640689 673809444 673809444 587203876 121708728 180740884 180740884 137439312 137439312 141348208 163955756 163955756 133196104 133196104 93332400 185154272 185154272 183508464 125862016 125862016 121635000 250694024 250694024 143130180 183414176 189489204 194603052 206580572 206580572 166236904 131257080 146827508 147820344 244379672 244379672 191366788 202802712 202802712 132180856 195049700 215226768 794829696 794829696 684982609 682623813 948703694 1013523669 1013523669 852368595 353184810 525267024 525267024 339878042 339878042 235126920 235126920 260178796 344617036 344617036 278995380 990635832 990635832 462513526 989890228 989890228 811820609 811820609 547018305 781509377 781509377 254145998 917745768 1010918075 1010918075 961561890 961561890 753440293 402784256 701826188 701826188 768295061 768295061 591261489 833642793 833642793 826279104 826279104 310616082 366168147 930229787 930229787 899208992 899208992 820418449 866698611 996722163 996722163 992527671 190631604 190631604 135302324 169869588 202448933 791675709 791675709 779633233 167256253 167256253 184168956 634524124 634524124 72529529 758189817 758189817 780933396 780933396 669294744 208373804 235965220 235965220 26004576 101845816 101845816 1709568 1709568 52538368 53267760 53267760 1151792 810798731 810798731 638310872 876609667 1012151042 1012151042 1033668049 1033668049 542971614 985481050 985481050 931530104 931530104 689775409 27108588 181457916 181457916 247256336 247256336 61000424 39612060 175170268 175170268 138153732 215138716 215138716 168614936 168614936 142780616 134858056 136333320 176441408 176441408 177632068 199148372 715732169 715732169 564349633 564349633 823632291 831722339 831722339 557883971 542348166 692355264 823527493 823527493 806803971 967702120 967702120 681315724 681315724 259575368 592260273 592260273 548744001 589835888 589835888 340199658 398668026 398668026 856035354 856035354 194315274 587143641 587143641 507898014 1007495579 1007495579 900892946 900892946 539056512 548490816 548490816 178670932 178670932 141540692 81338076 168279572 173839488 248656924 248656924 225654584 197998076 189106516 231820160 231820160 428017838 428017838 501632070 501632070 437572504 316993560 313423104 531106980 531106980 293156834 980559422 980559422 594747972 714417037 990960823 990960823 336378272 974160126 974160126 379898012 850676358 1049893708 1049893708 178936338 204527448 313770508 314809797 775297821 976311961 976311961 916035720 916035720 955781057 955781057 388485928 509885328 626460183 626460183 741385020 741385020 378044726 587855027 587855027 366137216 366137216 363732330 971246055 971246055 844703379 844703379 593701380 414515338 673834245 769250053 769250053 767742189 767662287 771703261 786431709 786431709 281120296 401123640 401123640 346400226 144703812 144703812 143007936 143007936 71776392 195365680 195365680 133249332 34142976 58378096 184488010 394538022 394538022 334633008 325060946 325060946 294590688 294590688 290587715 327687313 327687313 317211328 317211328 587114066 619446305 619446305 663348033 663348033 819252048 819252048 982868742 982868742 986727556 986727556 553912385 420560896 689247045 850560466 850560466 160164359 1014795148 1014795148 699939416 699939416 89264040 862751521 862751521 645273107 639574855 957252998 957252998 977036600 977036600 911329355 873513483 223349356 671090208 673715461 673715461 819468000 819468000 40184208 40184208 43440720 43440720 397825562 397825562 320378048 410221104 410221104 994292232 994292232 860197788 506594078 774036504 874253835 874253835 257201618 257201618 189928116 795928074 877345600 877345600 276208026 276208026 222796440 360713244 360713244 298254514 269166614 269166614 101689992 361044250 361044250 169903422 310649298 369475806 369475806 685791968 685791968 327121079 281086032 281086032 636595145 636595145 586542136 749595981 749595981 892474155 1035081297 1035081297 730861626 337673766 337673766 67464248 843020294 843020294 557956333 324135700 575825508 575825508 161317956 161317956 39661200 18983968 165208708 165208708 14706560 28910656 28910656 26264640 16257920 24167328 24167328 171573088 171573088 56603188 428492400 428492400 292290870 292290870 561962167 995935671 995935671 951681088 1007638315 1007638315 612358442 612358442 890301578 890301578 873764514 337584706 116108618 335829516 335829516 214097816 270145026 285350924 285350924 486671894 486671894 534606338 534606338 428051424 333847026 467580036 467580036 520515902 520515902 305405208 253330560 253330560 236187292 249815492 249815492 254877784 254877784 150540580 242426636 242426636 68236672 757789338 957953319 1042298360 1042298360 722994229 898690581 898690581 169775184 523103550 1001211774 1001211774 891950379 891950379 436241451 204473100 295349438 950674816 977795245 985843249 985843249 531766039 518827472 518827472 614561431 614561431 304371992 70782274 900130595 900130595 484560240 484560240 294879702 293749584 293749584 488780128 488780128 226623780 336229216 364504938 753632763 753632763 392184056 909379689 909379689 336204810 336204810 90198016 198250896 798511457 798511457 797366397 797366397 685260340 510205346 510205346 358495928 358495928 423372700 423372700 171589420 218137484 218137484 288888196 288888196 168945156 277461508 277639440 277639440 314092290 406274050 406648592 406648592 819728099 995954423 995954423 953166960 823780451 379366978 831049251 831049251 582347168 582347168 445686690 168362000 168362000 898893425 1033109601 1033109601 999365144 760683200 436578358 436578358 919628530 919628530 390217872 390217872 67100656 67100656 303071610 303071610 399289712 399289712 376743904 333584866 303033346 303033346 281536946 485849820 485849820 395316121 208925580 595409560 772430913 797758044 797758044 676741241 235703424 694527170 758215014 758215014 415433642 230232287 298136634 577167728 1024522526 1024522526 1018280526 676676928 876821202 876821202 504830067 523240254 683280184 683280184 775030338 924505659 924505659 711124287 575791761 328678002 328678002 290006178 299698752 299698752 11602752 114947282 315549400 315549400 308260234 348813200 348813200 716400988 716400988 636782561 428053852 487328814 487328814 465393158 465393158 382330074 382330074 346869066 396223212 396223212 395238522 407307188 407307188 155910182 271583561 1023773187 1023773187 965077095 394028678 243673762 525471994 1062147257 1062147257 761277736 761277736 741867813 78717736 741416448 741416448 562536025 680185412 737988597 737988597 553232608 226497768 967852407 967852407 890259442 1056146303 1056146303 367133129 445666952 470817844 470817844 927074848 1028596788 1029960064 1029960064 865863215 865863215 757598317 348652746 88080552 397967440 397967440 373886664 526034200 526034200 838485530 838485530 685430469 696276497 951633910 951633910 180887796 180887796 226790972 226790972 179833480 179833480 74374536 271728916 271728916 485099221 605259305 678689157 678689157 784007159 784007159 167249892 190916176 545858625 545858625 889756866 889756866 602776617 539988323 1040612618 1040612618 1001339985 1001339985 1032745254 1032745254 545290254 377880086 148570624 400361040 400361040 366610274 366610274 60842042 127678784 305420984 305420984 294311010 325707186 573016928 573016928 1006755855 1006755855 738508942 965316729 965316729 1009720669 1009720669 950010766 950010766 421527846 515117562 515117562 488784080 363866660 508565156 508565156 240190472 240190472 444149064 491709711 1036967151 1036967151 1002898043 916476226 813875545 316968963 295971202 40576370 108002712 1018674762 1018674762 1011145032 679868416 676224608 394925732 394925732 630233228 630233228 218389829 110368856 131301936 131301936 120107768 79427432 115690128 115690128 106810568 98430696 81618360 31262432 220344680 358760568 469771753 598398321 598398321 310469803 999882770 999882770 849905889 849905889 551669929 79824257 88119888 88119888 1039140688 1039140688 875038629 696256197 789590862 847418430 847418430 472849739 293484958 293484958 552742977 865281208 865281208 669625635 108104465 100828321 124769625 596180280 625888624 625888624 364664298 364664298 220905156 1017667843 1017667843 755378504 956826726 956826726 549453857 549453857 403178663 332786900 332786900 507841860 507841860 509822412 509822412 663705608 663705608 1044761183 1044761183 581543816 581543816 323482130 323482130 311035580 311035580 301034720 483885536 483885536 353684010 837894913 837894913 832833891 809865824 605874596 710150805 710150805 248479829 588712550 588712550 638730835 705938648 705938648 613987431 613987431 629198958 1060791790 1060791790 619004266 860647221 860647221 801647049 801647049 260826860 174869456 781015140 781015140 737971056 207597716 723711856 1061734325 1061734325 698145317 665679009 665679009 627097890 469803625 397534074 539386976 539386976 258159036 258159036 197161192 197161192 277938438 277938438 674837332 708523797 708523797 438445571 738329624 771751965 771751965 562233380 814299044 814299044 159065155 538366104 936382099 936382099 567656000 578291601 907017098 907017098 117423040 117423040 101237784 127335736 913201599 913201599 203403220 1035998849 1035998849 658190512 587690777 558681249 331415571 559218821 852558503 852558503 743586112 845272296 845272296 837747121 739776540 306121659 289680586 481339289 481339289 198765502 487409732 579603060 689440293 689440293 591533813 684077568 974685942 974685942 424095846 663262357 663262357 756450024 790026813 790026813 810967307 810967307 299219682 571326485 571326485 948504868 948504868 661661334 57148848 143861652 143861652 303471450 303471450 247616932 304552418 304552418 194612848 194612848 320444308 549629201 549629201 276113664 543504801 828793876 995708496 995708496 967068386 857023986 857023986 318087828 143463444 143463444 62650224 28834304 159962452 159962452 199819568 199819568 139383888 62266224 62266224 162276228 162276228 78677056 145900236 145900236 100303200 34557184 34557184 45163344 49422656 105291720 105291720 543167688 580462212 580462212 235350172 235350172 204271840 180789324 180789324 121708728 148129412 148129412 51972832 46702736 141348208 163955756 163955756 133196104 133196104 96207976 185154272 185154272 115948384 125862016 125862016 121635000 250694024 250694024 179967828 179967828 189489204 194603052 206580572 206580572 71691060 246559496 246559496 69610324 245404168 245404168 44114256 77651992 132180856 132180856 195049700 215226768 794829696 794829696 684982609 682623813 948703694 1013523669 1013523669 852368595 353184810 568297488 718723797 718723797 339878042 726434016 726434016 260178796 344617036 344617036 342399866 352289239 958997799 958997799 989890228 989890228 811820609 811820609 682686292 806691110 806691110 768672172 768672172 431552292 565790343 565790343 753440293 753440293 574202392 701826188 701826188 768295061 942682648 942682648 824843315 824843315 826279104 826279104 310616082 261170754 213979984 364953834 899208992 899208992 820418449 866698611 996722163 996722163 992527671 463600483 700497536 700497536 558179118 79691976 259174424 259174424 87640644 61681008 106892380 106892380 53219252 71748048 82016296 181926300 181926300 127247000 251074500 251074500 208373804 235965220 235965220 35946804 252570132 252570132 118938168 118938168 85055000 53267760 53267760 1151792 810798731 810798731 607913096 876609667 876609667 821696451 1033668049 1033668049 722209198 985481050 985481050 1058841393 1058841393 689775409 617092626 548909482 635169066 635169066 588269538 71311400 21045408 70964496 83151496 87687824 87687824 26118144 26118144 134877796 134877796 66509360 52355872 57112996 142606368 177632068 199148372 715732169 715732169 549110465 630309634 630309634 363028843 352698754 347368360 603955285 692355264 823527493 823527493 806803971 522007770 522007770 162530148 544802045 544802045 592260273 592260273 548744001 883164040 883164040 907150931 907150931 658127792 296498688 657021098 657021098 562925200 302733088 331845304 360952634 360952634 289880226 100315338 70277144 77464336 145107984 178670932 178670932 141540692 103709136 103709136 192414432 192414432 178783572 240339040 240339040 189106516 231820160 231820160 428017838 428017838 444604740 444604740 437572504 316993560 51481186 98251212 293156834 293156834 980559422 980559422 793958540 793958540 990960823 990960823 336378272 355855146 355855146 695637684 850676358 1049893708 1049893708 132664474 92875600 202260948 337532394 582070545 582070545 610314112 610314112 961032112 961032112 955781057 147229880 509885328 626460183 626460183 741385020 741385020 378044726 378044726 406889622 406889622 366137216 363732330 971246055 971246055 844703379 1001129568 1001129568 1035084030 1072170495 1072170495 769250053 767742189 1001681749 1001681749 874014233 874014233 832341096 898370741 898370741 671368224 707314740 707314740 703109369 542513821 542513821 479230175 766547553 766547553 646752465 828057336 828057336 422063370 394538022 353044678 26025120 54798048 347084410 347084410 303569792 327687313 327687313 338563288 338563288 587114066 619446305 619446305 918999136 918999136 819252048 819252048 982868742 982868742 452547474 817654199 817654199 420560896 807777191 807777191 436449872 459629378 459629378 302956085 699939416 818819596 849086146 862751521 862751521 645273107 639574855 957252998 957252998 717751509 516164120 569059330 569059330 899744587 899744587 696254499 427823212 411177030 320214476 868183817 868183817 735948597 171681236 397825562 592445761 871367217 871367217 810026115 994292232 994292232 860197788 506594078 774036504 874253835 874253835 336102048 257201618 189928116 795928074 877345600 877345600 276208026 281061440 369700366 412040192 412040192 453620240 453620240 269166614 72012936 361044250 361044250 169903422 310649298 369475806 369475806 685791968 685791968 327121079 281086032 281086032 763102416 763102416 755500040 773458277 773458277 168956436 906104350 976244296 976244296 235953920 622730793 622730793 989625221 989625221 150078412 150078412 595986725 595986725 60213872 58288928 58288928 28352752 32011552 32011552 31106656 28910656 28910656 26264640 17494400 24167328 24167328 197138560 197138560 56603188 281019477 281019477 292290870 292290870 561962167 995935671 995935671 808621156 808621156 605859072 612358442 612358442 890301578 890301578 873764514 461824044 461824044 303816218 228070974 486936996 486936996 253105230 313338380 313338380 507094928 534606338 534606338 291548856 291548856 459930422 459930422 520515902 520515902 305405208 172504112 172504112 122724948 249815492 249815492 261892036 261892036 226689292 226689292 173187764 175297428 757789338 957953319 957953319 330099827 295207550 605899816 605899816 211913304 523103550 1001211774 1001211774 891950379 891950379 859968244 859968244 295349438 633858060 977795245 977795245 407754562 423114438 518827472 961830157 961830157 413738310 413738310 101828446 36823824 294275840 294275840 262531452 262531452 305286778 529662512 529662512 495852632 495852632 336229216 364504938 753632763 753632763 360159646 909379689 909379689 495527022 495527022 344482884 344482884 798511457 798511457 797366397 797366397 685260340 558713392 402727586 676476324 961297674 961297674 272964608 932864 88254684 467064948 467064948 95676268 430824292 430824292 137707264 137707264 4139780 0 307399076 307399076 182850070 276106178 949417348 949417348 270321154 379366978 728835634 728835634 582347168 582347168 32629728 32629728 24215616 198701600 579313717 999365144 999365144 760683200 436578358 436578358 919628530 919628530 311108032 311108032 25639008 274216992 303071610 303071610 115688456 376743904 376743904 333584866 322093858 322093858 281536946 485849820 655172000 655172000 220569109 794397304 794397304 797758044 797758044 599831161 202944900 694527170 758215014 884147434 961839719 961839719 538184193 577167728 577167728 527624761 1018613708 1018613708 876821202 876821202 504830067 349578688 479351104 479351104 806492165 806492165 805320082 945889671 945889671 279760194 906710080 906710080 853538320 853538320 47305536 103627392 383170939 622945331 928589499 928589499 1051307603 1051307603 716400988 636782561 671314945 671872005 671872005 597387524 465393158 382330074 382330074 346869066 346869066 16365898 337646592 337646592 107580042 474771864 474771864 1023773187 1023773187 965077095 524399746 445434966 525471994 1062147257 1062147257 761277736 761277736 741867813 78717736 741416448 741416448 562536025 680185412 737988597 737988597 553232608 315393160 967852407 967852407 786437723 559209985 559209985 526649790 445666952 445666952 181506728 225217758 1028596788 1029960064 1029960064 960020757 865863215 757598317 678040965 529159662 585303419 585303419 337690890 404935442 445777720 628696662 797909908 797909908 1000098310 1047394154 1047394154 845680987 987173511 987173511 916359803 946867803 951976733 951976733 581571916 167776788 485099221 605259305 678689157 678689157 784007159 784007159 441262488 851452886 851452886 545858625 889756866 889756866 602776617 539988323 539988323 436595972 1001339985 1001339985 1032745254 1032745254 545290254 450904650 450904650 400361040 400361040 356853930 515926953 716838741 996737731 996737731 855080247 1048107981 1048107981 573016928 573016928 820240735 820240735 738508942 965316729 965316729 1009720669 1009720669 1000362517 1000362517 560071018 656430004 656430004 488784080 244322968 508565156 508565156 240190472 240190472 76579960 76579960 327816306 327816306 916476226 916476226 813875545 316968963 295971202 424945303 530372211 876732608 876732608 687845069 551158424 646583385 646583385 651747921 651747921 256001753 811802843 811802843 599243104 599243104 305271602 311851954 344152754 344152754 177870420 383059040 499595502 499595502 389536574 389536574 68311386 113510616 204211952 204211952 154141476 408530120 563143842 758431370 758431370 881538123 881538123 836014635 1039140688 1039140688 975816028 696256197 789590862 789590862 537990707 212403465 293484958 293484958 552742977 552742977 573858712 573858712 637922768 637922768 587264400 596180280 625888624 625888624 364664298 364664298 220905156 1017667843 1017667843 755378504 956826726 956826726 549453857 617976875 617976875 802068872 802068872 774248828 526797292 509822412 544157696 663705608 663705608 1044761183 1044761183 90389528 90389528 323482130 323482130 311035580 349654792 349654792 483885536 483885536 353684010 837894913 837894913 832833891 809865824 605874596 710150805 710150805 248479829 588712550 588712550 638730835 705938648 705938648 760756754 760756754 525236295 551305330 608963120 878570465 878570465 96068795 44934405 252002404 252002404 161642384 224519708 224519708 160059672 262718844 723711856 1061734325 1061734325 917570100 917570100 627097890 627097890 724751157 724751157 689709696 689709696 274930598 255803184 285684154 614283266 281217235 570898449 739473425 739504653 899820731 899820731 669700024 669700024 636012009 810259692 814299044 967887430 967887430 693173671 936382099 936382099 567656000 578291601 907017098 907017098 412177822 432796902 432796902 404763930 279446938 279446938 84972928 281167794 658190512 866546736 866546736 772518145 353632576 353632576 529081470 743586112 743586112 149370573 726143072 739776540 739776540 306121659 984427520 984427520 762056109 762056109 487409732 487409732 172150932 172150932 172019844 684077568 974685942 974685942 424095846 663262357 663262357 357369570 493125222 493125222 553722055 553722055 414397254 571326485 571326485 336774240 324745144 360429200 360429200 143861652 143861652 79299344 247616932 247616932 47717552 47717552 304140576 380425384 380425384 369169416 369169416 97202272 134811668 575202324 575202324 372831768 372831768 513444624 513444624 303829524 135216132 62650224 173277184 173277184 159962452 159962452 199819568 199819568 139383888 62266224 62266224 162276228 162276228 78677056 145900236 145900236 108618952 173489480 177293248 211063232 242113748 242113748 147097296 671439172 671439172 538081944 538081944 225240496 225240496 140632452 134768912 134768912 37306368 37306368 136587344 136587344 13419072 47464992 63228144 63228144 84503552 96207976 152417000 152417000 115948384 115948384 33514952 35916048 44871444 172495808 179967828 188338993 723781941 724956461 758781741 758781741 553944700 246559496 246559496 216416444 245404168 245404168 177024084 177024084 127576100 121066008 104860584 96498176 576207065 779064845 779064845 666465488 251667872 67110948 218103852 218103852 151858212 568297488 718723797 718723797 185063473 726434016 726434016 220916456 153594528 299429716 342399866 352289239 958997799 958997799 946623589 708227056 820225152 820225152 682686292 806691110 806691110 1045627282 1045627282 323105451 543839324 543839324 413143058 413143058 574202392 574202392 106518017 51905300 942682648 942682648 102760728 102760728 102760704 102760704 252325916 252325916 981394409 981394409 839556369 846144322 846144322 850003972 850003972 989947989 989947989 463600483 700497536 700497536 580360738 79691976 259174424 792381092 792381092 684534981 592106697 723552200 723552200 602769120 602769120 181926300 181926300 127247000 166787104 166787104 204798512 406265294 406265294 51780144 302514722 302514722 118938168 118938168 85055000 34992560 50665760 50665760 21546144 607913096 607913096 107480272 107480272 101239632 767465346 767465346 722209198 722209198 582520500 1058841393 1058841393 617092626 617092626 548909482 635169066 635169066 588269538 71311400 21045408 70964496 83151496 87687824 87687824 26118144 26118144 4884608 5292672 5292672 5292672 5292672 142606368 142606368 17041440 17041440 16779264 12388960 630309634 630309634 363028843 271610472 643425176 643425176 603955285 590151648 589839733 553833889 522007770 522007770 162530148 544802045 544802045 557916321 557916321 348456683 883164040 883164040 907150931 907150931 658127792 317608176 657021098 657021098 562925200 80712320 284337544 337809984 347128650 347128650 11555082 11534336 34413060 145107984 145107984 34340928 171278416 208433112 208433112 192414432 192414432 178783572 240339040 240339040 121972920 121972920 104961908 243347968 244453980 244453980 11216960 38809920 48049872 48049872 98251212 201401540 324622177 324622177 796496923 796496923 793958540 755093681 402825251 282116802 27447648 269886264 695637684 695637684 500962022 500962022 132664474 92875600 322610864 372462050 582070545 600540992 610314112 610314112 961032112 961032112 812910004 773349645 773349645 574220049 490128681 924930239 924930239 457278516 807408809 807408809 406889622 276873282 276873282 587936817 605171347 910634154 1001129568 1001129568 1035084030 1072170495 1072170495 391230122 391230122 1001681749 1001681749 874014233 874014233 832341096 898370741 898370741 696254508 707314740 707314740 703109369 542513821 542513821 600624364 766547553 766547553 646752465 828057336 828057336 605624869 605624869 945166928 945166928 704120805 704120805 930504507 930504507 629981456 317459922 338563288 400794296 560477650 644424113 644424113 918999136 918999136 316016720 316016720 39185040 39185040 45090564 817654199 817654199 411289860 807777191 807777191 436449872 459629378 459629378 302956085 477189907 818819596 849086146 849086146 571104272 571104272 419614758 669101520 717751509 717751509 516164120 569059330 569059330 899744587 899744587 696254499 427823212 411177030 320214476 868183817 868183817 735948597 171681236 171681236 592445761 871367217 871367217 810026115 810026115 805904512 303564306 188404006 309213795 603531249 867766033 965413284 965413284 248900316 248900316 280614210 280614210 81912264 307368544 369700366 412040192 412040192 453620240 453620240 72012936 72012936 35788800 34367760 4362240 4276352 25534532 392519691 399563567 399563567 151448301 231823437 231823437 763102416 763102416 755500040 773458277 773458277 537108588 698967579 976244296 976244296 587916572 622730793 622730793 989625221 989625221 150078412 954008854 954008854 595986725 544512624 577937153 577937153 576053537 576907424 576907424 576010912 579944416 579944416 17351168 17494400 17494400 17984960 197138560 197138560 185312992 185312992 32247264 200130656 200130656 30170048 30170048 20856672 18326272 90705922 357172650 357172650 340468874 340792458 340792458 84419376 461824044 461824044 384452680 401475316 489838002 489838002 57251694 313338380 313338380 507094928 507094928 469838622 142105216 34128912 52337184 70323200 70323200 107228560 107228560 75058568 71374080 73999752 158382960 158382960 261892036 261892036 226689292 226689292 173187764 175297428 175297428 152618532 730140256 730140256 68471304 436538386 436538386 625560921 625560921 371991736 386394726 775387172 1006637368 1006637368 859968244 642826594 60870777 90346659 311092469 478256636 478256636 423114438 961830157 961830157 539913813 413738310 481194844 547497745 547497745 260609448 260609448 504530460 504530460 529662512 529662512 495852632 495852632 314486384 520282743 999411774 999411774 796922640 796922640 513567602 495527022 495527022 581471424 581471424 651341040 651341040 641912985 641912985 558713392 558713392 630207872 676476324 961297674 961297674 285671578 16777248 88254684 467064948 467064948 313135106 430824292 513159478 513159478 398208620 359402922 527173566 527173566 209591600 834608061 945708089 945708089 557019977 557019977 99565032 728835634 1013686731 1013686731 318098352 32629728 586195012 586195012 142672069 203728896 614763008 758235836 758235836 576790929 224750997 90826152 71953154 311108032 311108032 305955506 285860898 282592962 282592962 103932696 103932696 66626792 269585536 322093858 322093858 194636710 136858260 655172000 655172000 220569109 794397304 794397304 704643093 776482901 785069277 785069277 202944900 86718400 884147434 961839719 1071958213 1071958213 715795893 715795893 702162374 1018613708 1018613708 851869846 851869846 440424659 567278565 791099709 791099709 806492165 806492165 805320082 945889671 945889671 564246059 906710080 906710080 853538320 853538320 305280002 280069952 383170939 622945331 928589499 928589499 1051307603 1051307603 523978825 428008715 671314945 671872005 671872005 597387524 508073630 85983528 389075282 389075282 193600332 193600332 337646592 337646592 493559484 493559484 474771864 26026602 335941226 524399746 524399746 736089136 736089136 550257104 422124554 422124554 138676356 633865449 633865449 19533952 422230284 471682215 551906177 581863369 582984275 637196488 637196488 312121274 912819666 912819666 361237972 526649790 526649790 264136382 260305020 519399548 519399548 769639468 769639468 960020757 960020757 689575461 678040965 919703418 919703418 766526205 850829425 1049090821 1049090821 445777720 628696662 797909908 797909908 1000098310 1047394154 1047394154 845680987 987173511 987173511 916359803 946867803 951976733 993133547 993133547 1027604655 1027604655 738205324 488115246 496774894 518262146 518262146 586810988 851452886 851452886 424747203 286240906 286240906 386189696 386189696 329673994 436595972 436595972 302525522 300143856 301211698 438953238 450904650 450904650 341386890 328710386 328710386 515926953 716838741 996737731 996737731 855080247 1048107981 1048107981 427921696 427921696 749029824 749029824 589635612 589635612 204414317 607533662 882301515 1000362517 1000362517 560071018 656430004 814668883 919508489 919508489 638470633 873859602 873859602 704449218 704449218 692529609 672242058 363020578 144807162 144807162 834948058 834948058 559416361 424945303 948694090 948694090 874569296 874569296 551158424 646583385 646583385 651747921 651747921 256001753 811802843 811802843 599243104 599243104 305271602 311851954 344152754 344152754 177870420 383059040 499595502 499595502 514212672 514212672 346748885 854799315 1073480149 1073480149 961285287 961285287 710486578 758431370 758431370 881538123 881538123 836014635 836014635 975816028 975816028 692260936 692260936 446181988 446181988 474162118 743506810 743506810 627062953 627062953 293477930 293477930 637922768 637922768 587264400 692715737 692715737 736203553 963846955 963846955 888787054 234014692 616833420 616833420 547430721 831130115 831130115 617976875 617976875 900210961 900210961 923304112 923304112 982466637 982466637 635506021 868737577 868737577 828877097 828877097 587705456 12968000 12968000 92568680 349654792 349654792 291454626 16900128 61512368 61512368 46450896 46450896 130912712 130912712 112472056 105390272 96081712 96081712 276914434 416361154 416361154 810339459 815547072 815547072 525236295 482522184 608963120 878570465 894517400 894517400 522718979 112585560 161642384 161642384 184615712 542560205 997645890 997645890 602795505 595382193 913885154 917570100 917570100 332637087 323068430 724751157 724751157 689709696 689709696 274930598 255803184 285684154 614283266 414780686 570898449 739473425 739504653 995156427 995156427 669700024 669700024 902203032 902203032 810259692 967887430 967887430 693173671 807717123 807717123 317453778 310503954 369672706 412177822 412177822 432796902 432796902 404763930 873615791 873615791 158385060 837998089 885050886 885050886 866546736 772518145 571771161 402653713 529081470 529081470 264755082 897051603 897051603 726143072 430611494 136203369 984427520 984427520 762056109 855629884 855629884 714473935 714473935 233740992 233740992 946770482 946770482 279004761 103167058 358242408 358242408 357369570 493125222 493125222 414464000 414464000 414397254 344790096 344790096 336774240 324745144 420479586 420479586 456681028 456681028 366007720 433115416 433115416 365765612 190223744 411265654 411265654 380425384 994258081 994258081 331884986 1040385159 1040385159 714653711 943945216 1066525149 1066525149 715280938 262521992 341955310 492081594 492081594 522998426 522998426 233195154 84215894 501751978 501751978 354174314 98986914 98986914 48533536 18425376 100177544 100177544 108618952 173489480 177293248 211063232 242113748 242113748 215345868 671439172 671439172 538081944 538081944 225240496 225240496 140632452 134768912 134768912 145563796 145563796 136587344 169430608 169430608 158142428 158142428 124259548 90234296 80861568 143805064 143805064 115217636 657150593 657150593 234471809 770318753 770318753 545847148 772125052 772125052 724956461 758781741 758781741 553944700 243528072 243528072 216416444 221579144 221579144 177024084 177024084 206046288 206046288 146800836 99091756 576207065 779064845 779064845 703063553 703063553 631852108 218103852 218103852 88479912 701105697 701105697 702443717 702443717 571739668 164813120 185776804 185776804 299429716 319252162 319252162 302564370 302564370 426804240 989414071 989414071 950919874 950919874 469762088 469762088 1045627282 1045627282 507511537 507511537 425980326 425980326 945008829 945008829 369792217 46797824 136465560 242146716 242146716 862891395 862891395 639616824 639616824 324063904 252325916 981394409 981394409 839556369 846144322 846144322 850003972 850003972 809587761 441345686 441345686 557235024 580360738 580360738 46289616 193500589 792381092 792381092 684534981 592106697 723552200 723552200 602769120 602769120 11922240 87294080 87294080 158548064 158548064 204798512 406265294 406265294 51780144 302514722 302514722 13231296 13231296 35668864 35668864 57884928 57884928 101389768 101389768 48308688 42078224 101239632 101239632 121163672 121163672 58475632 58475632 36982176 620429960 620429960 561653069 215099305 73535880 83307072 83307072 79925312 79925312 37739632 32572288 58720656 58720656 39917168 39917168 41804688 146098804 146098804 51388064 51388064 157135588 157135588 161098292 180204148 690265209 690265209 82363848 109313496 889092968 889092968 898679906 898679906 643425176 400660339 419952678 419952678 143962722 22469280 7514112 7514112 85756944 318810250 318810250 291097634 291097634 56285834 335679498 335679498 119148080 119148080 322835544 328709402 328709402 277533762 277533762 69206280 337809984 347128650 347128650 11555082 9755712 10633216 143788036 143788036 34900496 171278416 208433112 208433112 182473744 140509572 175161872 175161872 133557640 121972920 121972920 104961908 498153702 498153702 317377736 476956948 476956948 473956494 482410846 482410846 406529068 406529068 324622177 857901439 857901439 374735368 409017118 409017118 282116802 27447648 269886264 269886264 150346692 498246534 498246534 490839816 366614250 366614250 372462050 372462050 600540992 600540992 538985088 538985088 693546496 695655333 773349645 773349645 574220049 490128681 924930239 924930239 457278516 807408809 807408809 1051644181 1051644181 379842906 832169571 832169571 910634154 910634154 757082549 378541629 378541629 243731551 311712322 814125595 814125595 765815320 765815320 102082925 0 969933120 969933120 696254508 612368457 495001710 511770672 511770672 285597878 600624364 600624364 132381808 63161592 424338672 424338672 605624869 605624869 945166928 945166928 704120805 704120805 930504507 930504507 650123698 900077931 900077931 762991812 762991812 644424113 662929952 662929952 537393153 900818704 900818704 896268154 956616212 956616212 271684100 271684100 153067140 153624000 153624000 146745424 674969554 674969554 579218038 579218038 315821184 315821184 848891649 848891649 571104272 435469267 709484982 709484982 181095509 293865570 293865570 285476898 288626691 712120131 712120131 594150295 709889338 709889338 455892300 455892300 674932088 674932088 601569009 486225599 122230440 270642664 396675450 421713716 421713716 464823682 1014158492 1014158492 603531249 867766033 965413284 965413284 522639678 522639678 450013184 88146752 72401544 307368544 307368544 402935060 402935060 170690566 251691534 319865394 507355312 507355312 239365532 161547598 295715202 367491466 392519691 399613962 399613962 328329778 302602304 302602304 243797793 243797793 184800304 614668132 614668132 835220734 835220734 698967579 613454152 912787458 912787458 683753879 683753879 497658061 247623960 954008854 954008854 438841031 544512624 577937153 577937153 576053537 576907424 576907424 576010912 579944416 579944416 4194432 2265344 25183552 49294192 49294192 159928964 185312992 185312992 32247264 200130656 200130656 30170048 65254896 65254896 550939617 550939617 357172650 357172650 731448949 731448949 340792458 177013382 846342165 846342165 1049625289 1049625289 711070170 489838002 472384782 472474884 472474884 343656598 343656598 403300496 403300496 409340638 481231454 481231454 317793042 374224784 374224784 105063704 102446616 73999752 153367912 153367912 227228736 229244956 229244956 155918640 195411800 318763764 318763764 192825678 730140256 730140256 68471304 436538386 481562198 625560921 625560921 371991736 386394726 775387172 1006637368 1006637368 698368955 642826594 60870777 90346659 142648386 478256636 526852106 526852106 490156864 818466881 818466881 467747782 481194844 748483579 748483579 694175939 379246170 894075633 894075633 213795364 303510612 303510612 246645024 253526638 520282743 1054044646 1054044646 796922640 796922640 539173256 539173256 264933628 581471424 581471424 577030545 597559313 597559313 575565312 127484432 127484432 630207872 630207872 287775962 287775962 331022416 331022416 313647954 53478192 53478192 313135106 313135106 892476145 892476145 902736612 1021789722 1021789722 609989338 847823955 1060646856 1060646856 945708089 868850164 868850164 99565032 444783543 1013686731 1013686731 577116710 577116710 586195012 671396416 700141061 700141061 655369077 758235836 758235836 640540953 640540953 828911034 828911034 302344608 305955506 305955506 285860898 289176226 289176226 65537666 39931152 321504544 321504544 357284666 357284666 275461536 275461536 562965736 562965736 605836704 629215961 671878160 704643093 776482901 785069277 785069277 759748794 1013449319 1013449319 991450010 1071958213 1071958213 715795893 715795893 702162374 415348492 415348492 616052318 616052318 300530821 567278565 791099709 791099709 924319760 924319760 573765179 540091137 290963392 564246059 564246059 132289634 838939769 838939769 305280002 280069952 311329794 312086354 330888194 330888194 294621472 209847328 96722984 918934135 918934135 388319292 846530963 846530963 508073630 286330018 389075282 1009266693 1009266693 409667762 795608451 795608451 493559484 493559484 320250722 117440568 117440568 119296032 148544740 736089136 736089136 550257104 415238440 501484014 501484014 633865449 633865449 55976224 422230284 471682215 743693962 743693962 582984275 637196488 637196488 411340511 912819666 1022453607 1022453607 345506368 364633834 364633834 340076682 519399548 519399548 162694050 27317028 42516528 42516528 76285856 639471418 919703418 919703418 766526205 850829425 1049090821 1049090821 693634070 693634070 1027543156 1027543156 805396901 938021916 938021916 278008386 888350252 888350252 756622421 921306573 921306573 993133547 993133547 1027604655 1027604655 738205324 298894050 298894050 518262146 945325705 945325705 675939728 708910640 708910640 290467869 279269538 386189696 386189696 329673994 390285712 390285712 302525522 300143856 301211698 301211698 314575168 314575168 291304146 328710386 328710386 297348656 297348656 176324320 176324320 705020928 705020928 412584500 427921696 427921696 156674741 695417829 695417829 847990340 984290310 984290310 882301515 882301515 921862660 921862660 181814789 814668883 919508489 919508489 638470633 873859602 873859602 704449218 704449218 692529609 672242058 363020578 433646310 433646310 834948058 834948058 559416361 473582876 948694090 948694090 874569296 874569296 644109769 352984099 363475620 363475620 251724212 219288096 219288096 25165920 58720256 58720256 54710448 54710448 38847120 119195264 119195264 182812991 819411651 819411651 710236934 710236934 766914499 1038824656 1073480149 1073480149 961285287 961285287 842794342 842794342 715122636 715122636 254074361 407424180 424069316 424069316 436207638 692260936 692260936 446181988 446181988 474162118 743506810 743506810 627062953 644559378 644559378 627838377 270671019 218154313 564207969 692715737 692715737 736203553 963846955 963846955 888787054 504882103 967694784 967694784 876816455 876816455 831130115 236177936 236177936 900210961 900210961 923304112 923304112 982466637 982466637 635506021 966802237 966802237 909116187 828877097 599141096 326227442 326227442 327875068 327875068 538262985 609037776 801450237 945306765 981270583 981270583 335425479 330157936 782170552 782170552 747135424 747135424 111363848 276914434 416361154 416361154 810339459 936208405 936208405 499696878 876653709 876653709 499771320 894517400 1025788743 1025788743 335135314 335135314 320813212 231022041 542560205 997645890 997645890 672785925 776759537 913885154 913885154 18126207 0 581071224 590569808 590569808 97617161 13120704 196132396 196132396 192814988 184560180 414780686 414780686 655962728 655962728 995156427 995156427 252346396 256513212 902203032 902203032 808792872 949097031 949097031 143698627 408190804 408190804 317453778 310503954 310378386 281075430 140906968 140906968 118164676 86126888 873615791 873615791 158385060 837998089 885050886 885050886 809814147 715705545 571771161 652680452 652680452 206316200 264755082 897051603 897051603 430611494 430611494 230428524 596690059 596690059 647775919 855629884 855629884 714473935 986938804 986938804 531544715 946770482 946770482 516488884 111360778 916936803 916936803 244969520 458280484 497327850 1042914659 1042914659 521613618 931976711 931976711 1024508935 1024508935 461447286 420479586 456681028 456681028 497651796 497651796 583297530 719587797 719587797 677505104 411265654 139474132 994258081 994258081 331884986 1040385159 1040385159 714653711 943945216 1066525149 1066525149 715280938 700510241 700510241 492081594 570920197 570920197 729270324 729270324 405881705 621580680 871230722 871230722 830703664 830703664 673191124 309064992 150994948 150994948 37136688 142101060 142101060 100697488 48552468 576787393 576787393 215345868 590647841 602106036 622144492 622144492 711184837 741229724 741229724 109532492 188828612 448286289 448286289 453559782 453559782 552414447 552414447 579044753 667587937 863993305 888595441 984335910 984335910 657150593 657150593 234471809 770318753 770318753 545847148 772125052 772125052 656808249 246844273 203393736 238433116 243528072 243528072 139986564 139986564 102789800 130281720 130281720 206046288 206046288 146800836 144118728 459016050 547501097 549168360 703063553 703063553 631852108 409808262 464251262 470020238 701105697 701105697 702443717 702443717 571739668 164813120 185776804 185776804 285769760 296644644 833377285 969065843 969065843 447514722 989414071 989414071 950919874 950919874 469762088 469762088 676061522 688275403 773065245 773065245 642922642 442577166 945008829 945008829 369792217 504090808 504090808 364995740 242146716 862891395 862891395 639616824 639616824 324063904 323060200 323060200 814318738 814318738 305898786 305898786 168725536 179945488 179945488 146351940 161406564 161406564 32690400 138440836 163828672 163828672 615192680 615192680 569239409 548072181 238947865 651481288 651481288 796018148 796018148 649618032 697313460 697313460 673481252 202466088 230884076 230884076 64881360 282401498 282401498 331688128 331688128 405280644 405280644 271945346 357146913 825031507 842139539 842139539 584168409 640271564 684388773 910140625 910140625 221208526 769317304 896041047 896041047 630720105 630720105 615213922 615213922 625415018 628230466 628230466 79925312 37739632 32572288 58720656 58720656 39917168 71142024 71142024 146098804 332075322 332075322 360819336 360819336 157135588 161098292 180204148 690265209 690265209 292370800 326123952 889092968 889092968 898679906 898679906 214435020 214435020 419952678 848013827 848013827 322180096 780755012 780755012 770326620 770326620 558367905 558367905 391119035 808503170 890834731 890834731 895593730 895593730 322835544 322835544 271022920 290491040 290491040 289595818 289595818 359203298 359203298 347753602 337713472 14025344 41981264 41981264 34900496 42263296 42263296 145594752 145594752 140509572 175161872 175161872 22440096 1114112 1049152 8397376 498153702 498153702 317377736 476956948 476956948 473956494 482410846 482410846 406529068 406529068 133388213 857901439 857901439 749528387 749528387 409017118 605907328 605907328 558730317 558730317 281542671 498246534 498246534 490839816 366614250 366614250 337370754 1028512513 1028512513 743958670 538985088 538985088 693546496 695655333 695655333 206883468 611558956 1031003689 1031003689 190534198 838865952 838865952 168383504 1051644181 1051644181 740454145 832169571 832169571 762774055 757082549 757082549 666920884 378541629 346288458 311712322 814125595 814125595 765815320 765815320 457509758 894435376 969933120 969933120 652215035 652215035 711583125 717309248 717309248 285597878 665633916 665633916 706742352 706742352 732103016 732103016 472666184 748164152 748164152 917049414 950934855 950934855 143580228 143580228 650123698 900077931 900077931 762991812 762991812 595298145 662929952 662929952 537393153 900818704 900818704 896268154 956616212 956616212 869534291 869534291 427928580 830841585 830841585 289211970 674969554 692003172 692003172 671613280 554632353 567223456 848891649 848891649 281351363 435469267 709484982 709484982 274998658 293865570 293865570 275065218 288626691 712120131 712120131 594150295 709889338 709889338 558502671 455892300 1030890137 1030890137 601569009 486225599 122230440 270642664 396675450 421547828 421547828 464823682 1014158492 1014158492 201590796 269795356 353569440 437545392 522639678 522639678 450013184 279525658 114035928 44402952 51135888 402935060 402935060 308739044 427334548 427334548 507355312 507355312 298894050 161547598 295715202 367491466 367491466 399613962 399613962 328329778 302602304 302602304 245631068 245631068 769852072 769852072 614668132 835220734 835220734 658521512 642201753 912787458 912787458 683753879 683753879 650218713 247623960 344588434 344588434 193647732 163762292 139084000 11850112 13809920 13809920 8702016 8833856 13783872 13783872 4346752 21058304 25183552 49294192 49294192 159928964 159928964 9143904 9471040 9471040 27350272 27350272 65254896 65254896 550939617 550939617 176691872 176691872 731448949 731448949 313197825 177013382 846342165 846342165 1049625289 1049625289 711070170 473747086 472384782 472474884 472474884 343656598 343656598 403300496 403300496 409340638 481231454 481231454 335560024 374636752 374636752 336196488 339836288 339836288 268896000 179832576 179832576 229244956 229244956 134743200 195411800 318763764 688776263 688776263 293865570 787058160 1064880618 1064880618 481562198 481562198 340399242 742157132 742157132 605305157 705584810 705584810 360105045 161669096 337756524 633361582 633361582 158024069 526852106 526852106 490156864 818466881 818466881 479198946 479198946 748483579 748483579 986487018 986487018 898630251 903861435 903861435 810751345 810751345 267408900 886023864 1072340758 1072340758 1054044646 680682045 783812640 783812640 659370109 264933628 766493020 766493020 549802920 597559313 597559313 620941593 620941593 127484432 693314544 800586621 800586621 785858148 446589844 446589844 358662860 358662860 510263460 510263460 539566680 892476145 892476145 902736612 1021789722 1021789722 911276437 847823955 1060646856 1060646856 693146040 868850164 868850164 690855690 891380106 891380106 1017690850 1049506773 1049506773 437692435 671396416 700141061 700141061 655369077 460540347 878257795 878257795 640540953 828911034 828911034 274268304 271655682 90964522 271526552 289176226 289176226 65537666 39931152 321504544 358470322 358470322 357284666 275461536 275461536 562965736 562965736 605836704 629215961 629215961 122940449 151800420 151800420 66985136 759748794 1013449319 1013449319 991450010 904008696 904008696 652370320 612626505 69222656 437311852 437311852 162680854 1063703107 1063703107 447412391 447412391 97043688 924319760 924319760 573765179 863325632 863325632 279912225 373342362 373342362 38571018 33575424 33575424 8430674 277580818 277580818 294021650 294021650 277320048 209847328 96722984 918934135 918934135 533813612 846530963 846530963 422422662 286330018 423698440 1009266693 1009266693 409667762 795608451 795608451 354486840 354486840 320250722 299237656 308884192 308884192 293602336 549597888 549597888 537993729 415238440 509870712 509870712 500172936 500172936 71566062 1040922624 1040922624 772381719 743693962 359021481 199847209 411340511 411340511 90227112 1022453607 1022453607 941284771 941284771 364633834 340076682 303713870 350327276 444153754 444153754 1060050528 1060050528 619243433 639471418 639471418 389836313 366267114 358082570 875747402 875747402 693634070 693634070 1027543156 1027543156 805396901 785166396 785166396 278008386 888350252 888350252 756622421 921306573 921306573 753407451 783303412 783303412 420552711 420552711 298894050 298894050 407420942 945325705 945325705 690950425 761735221 761735221 331890736 331890736 281593026 130086330 126302328 289858768 289858768 33851522 30724544 20585824 20585824 15320768 15067584 17310240 30441568 82862440 137429697 732133477 732133477 565799731 941114388 964841572 964841572 487588613 1026606123 1026606123 695417829 695417829 847990340 984290310 984290310 314479444 314479444 921862660 921862660 922556874 922556874 272629890 4194306 0 340070528 340070528 352788642 352788642 134696140 134696140 1990208 433646310 433646310 290380962 155947042 151468068 473582876 473582876 374562864 577675680 644109769 644109769 570425576 86525057 70259784 70259784 69801280 271724618 271724618 50466896 398764696 398764696 373586778 373586778 339124586 124444080 370586898 819411651 819411651 710236934 710236934 766914499 1038824656 1038824656 862403141 618212171 618212171 856763982 856763982 537136320 537136320 856737574 856737574 424069316 424069316 436207638 596783120 596783120 689180680 689180680 141699695 371269698 625345424 625345424 644559378 644559378 627838377 270671019 77620520 48284112 132326432 132326432 78148416 158540610 158540610 504882103 504882103 967694784 967694784 876816455 876816455 277684427 944269002 944269002 546695745 269844547 226783824 340166870 730046568 730046568 547830081 966802237 966802237 909116187 637800539 599141096 326227442 326227442 327875068 327875068 538262985 609037776 801450237 945306765 981270583 981270583 969409767 969409767 792007791 782170552 747135424 747135424 394274390 394274390 506773540 506773540 317069778 936208405 936208405 499696878 876653709 876653709 474547758 458277422 1025788743 1025788743 430313776 335135314 320813212 231022041 231022041 549512756 672785925 672785925 862552412 954761475 954761475 967447582 967447582 822744607 599329895 209978957 185733684 104196888 104196888 51794728 109694552 109694552 463997192 463997192 203688204 204246284 204246284 203737356 88740864 88740864 746635778 746635778 808792872 949097031 949097031 906382685 807717123 807717123 107349400 107349400 825254048 825254048 243586692 243586692 109148568 132772776 132772776 123920936 73949056 119257048 119257048 115831528 101095064 101095064 118098976 652680452 652680452 206316200 206316200 705549368 705549368 247599324 247599324 230428524 445422766 734177946 1014704191 1014704191 904920555 303615525 986938804 1003277559 1003277559 897532320 897532320 814094403 689623980 916936803 916936803 244969520 458280484 497327850 1042914659 1042914659 521613618 931976711 931976711 1024508935 1024508935 461447286 81945494 268526752 672244320 696303717 696303717 583297530 719587797 719587797 677505104 139474132 139474132 451816640 451816640 287979546 287979546 107286816 105469056 70353584 533725532 533725532 460550238 700510241 700510241 141767556 570920197 570920197 729270324 729270324 604293129 621580680 871230722 871230722 830703664 830703664 673191124 309064992 150994948 150994948 16282204 172491224 172491224 50212752 49174488 576787393 578482992 578482992 767198832 767198832 622144492 622144492 711184837 741229724 741229724 109074496 188828612 448286289 448286289 453559782 453559782 552414447 552414447 579044753 667587937 863993305 888595441 984335910 984335910 474448336 474448336 225092104 159119268 780149984 780149984 648022017 648022017 800503820 800503820 697006897 638922520 105046816 135287904 139986564 228671508 253788888 253788888 679494649 679494649 630008932 630008932 176938456 685983808 685983808 839590019 914444369 914444369 855916626 855916626 464251262 470020238 470020238 296060996 296060996 164667588 164667588 138710500 145540848 177226756 285769760 285769760 833377285 969065843 969065843 447514722 407915526 406111110 540068432 582799185 582799185 463870326 463870326 688275403 773065245 773065245 642922642 442577166 404889742 325658042 325658042 504090808 504090808 364995740 267539260 267539260 292226608 380780840 380780840 342466794 342466794 331876240 814318738 814318738 554180832 29426721 269020544 269020544 179945488 146351940 161406564 161406564 32690400 138440836 163828672 591203297 615192680 615192680 569239409 548072181 238947865 651481288 651481288 796018148 796018148 649618032 697313460 697313460 673481252 202466088 273728306 273728306 359809752 359809752 302291960 331688128 331688128 405280644 405280644 271945346 726003008 825031507 851286611 851286611 734261493 1018233165 1018233165 910140625 910140625 770622608 769317304 896041047 896041047 630720105 630720105 615213922 615213922 625415018 628230466 628230466 298395490 298395490 296257169 296257169 23614304 21720960 71142024 883834450 886654266 886654266 824494371 824494371 580158322 131609144 131609144 76153024 44414064 331350016 331350016 326123952 331596880 331596880 298554088 97678562 90793896 73965864 73965864 848013827 848013827 322180096 780755012 780755012 770326620 770326620 558367905 558367905 391119035 808503170 890834731 890834731 895593730 895593730 357360642 357360642 271238658 290491040 290491040 289595818 289595818 359203298 359203298 347753602 337713472 14025344 12845440 72926856 76732360 116061708 247587036 247587036 171168284 174098324 174098324 143120160 163603536 163603536 47309008 128246920 128246920 10750272 248983560 248983560 181668564 73756320 95883240 155139664 244718172 244718172 177289224 599483808 599483808 749528387 749528387 407451140 605907328 605907328 606313080 845010129 845010129 360976432 871505594 871505594 336205768 284165058 184777404 1028512513 1028512513 743958670 723009541 784703669 784703669 768630905 627660233 878578177 878578177 1031003689 1031003689 612204908 838865952 838865952 580912348 235696384 812022165 812022165 740454145 762774055 762774055 672099755 666920884 666920884 346288458 346288458 287310114 662711046 662711046 396699994 457509758 457509758 894435376 894435376 597242584 891889161 891889161 901898475 901898475 923321403 923321403 847691417 665633916 706742352 706742352 732103016 732103016 1060945547 1060945547 748164152 917049414 950934855 973345863 973345863 643335283 566253190 721371093 721371093 546024704 573017148 573017148 377522626 368274416 368419496 368419496 318615306 318615306 423839236 423839236 869534291 869534291 427928580 830841585 830841585 289211970 292561700 692003172 692003172 671613280 554632353 567223456 567223456 8702016 567313634 567313634 296903523 819271296 819271296 283150177 269166592 275065218 275065218 275058818 41734032 449840416 868755082 868755082 558502671 304552454 1030890137 1030890137 622870828 678495145 706838581 706838581 581750097 741131728 741131728 303877650 607894796 607894796 674235141 674235141 674235141 555749380 156680672 95425040 279525658 279525658 119682888 119682888 115479000 346591354 346591354 452527520 466660582 466660582 428657766 327453328 298894050 61917346 52742448 38105536 25301088 32089120 32089120 879616 31642228 551674305 551674305 245631068 769852072 769852072 221508281 181003476 675464324 717484245 717484245 627448341 576766268 549041353 650218713 654479649 667078905 667078905 589960625 589960625 541639680 570999825 570999825 582048097 582048097 581407072 576027040 588851840 588851840 287462690 287462690 21185280 41613072 41613072 416622244 416622244 295273538 295273538 293675618 440062484 440062484 193496768 603829444 603829444 185856564 538633268 570667157 675283077 675283077 15990848 15990848 10496064 879039232 879039232 286093996 473747086 473747086 251249998 224511292 183763020 319456870 319456870 107134600 303410450 340459984 340459984 335560024 335560024 374636752 374636752 336196488 339836288 339836288 268896000 179832576 235670408 235670408 90178596 134743200 138937476 353142840 688776263 688776263 896108561 896108561 1064880618 1064880618 296433209 296433209 269484164 742157132 742157132 605305157 447350047 84984360 770966881 770966881 520116295 826557779 826557779 610288992 560048417 373818406 366899744 415519428 415519428 479198946 479198946 612265497 709477203 986487018 986487018 898630251 903861435 903861435 810751345 810751345 439957088 886023864 1072340758 1072340758 326817714 661701561 783812640 783812640 659370109 110697401 766493020 766493020 564584524 779102349 779102349 772874781 734994152 31047000 693314544 800586621 800586621 785858148 446589844 446589844 358662860 358662860 510263460 510263460 947073326 947073326 958468860 958468860 838963072 911276437 911276437 984163671 984163671 445126208 903965686 903965686 690855690 690855690 970326569 970326569 1017690850 1049506773 1049506773 437692435 535114190 596066451 596066451 542188161 320064138 878257795 878257795 374204034 373631130 338693128 41814546 123343386 299851490 299851490 84268192 84268192 125357640 356173720 356173720 358470322 358470322 325742736 325742736 362240728 362240728 361569720 44802752 44802752 68042776 68042776 54316848 54316848 50352432 67861392 67861392 28386144 105103456 570475320 652370320 652370320 612626505 539116160 539116160 588112466 754286472 1063703107 1063703107 1019383459 1019383459 823388243 650560011 936435769 936435769 863325632 863325632 670541881 670541881 395762426 841857145 841857145 277950800 277950800 277580818 277580818 294021650 294021650 277320048 31408920 30359376 431341830 533813612 533813612 445301410 445301410 64021744 487170288 487170288 423698440 406922496 272838786 101238792 107269554 275040416 306602434 306602434 299237656 335751480 335751480 293602336 549597888 549597888 537993729 136515697 509870712 548803342 548803342 525740643 654808331 1040922624 1040922624 772381719 641780096 641780096 640680600 640680600 477679452 345031242 952365380 952365380 941284771 941284771 345900740 606019917 606019917 591645373 609362432 609362432 1060050528 1060050528 619243433 874126681 874126681 366267114 366267114 358082570 875747402 875747402 439362861 924395067 1027158323 1027158323 755199347 785166396 785166396 278046140 882902988 1040810831 1040810831 799297899 799297899 447968646 783303412 783303412 710583244 641828612 246416220 246416220 71877768 71877768 623135632 690950425 761735221 761735221 331890736 331890736 344120560 344120560 331943434 307419680 380321538 380321538 320264754 320264754 274312328 314278728 314278728 285558306 297063168 297063168 293831432 732133477 732133477 565799731 941114388 964841572 964841572 487588613 1026606123 1026606123 319890180 852494390 852494390 733427142 689228325 689228325 888963281 888963281 652635609 922556874 972700975 972700975 695788871 877885801 877885801 542523048 690238278 690238278 635959785 691209005 691209005 550572455 550572455 290380962 155947042 345401856 345401856 374562864 884953306 884953306 597454107 594937745 570425576 123373361 70259784 70259784 69801280 271724618 271724618 294772160 398764696 398764696 373586778 373586778 339124586 124444080 370586898 370586898 81189576 642630144 642630144 637759577 135190464 85199400 93325376 291841828 291841828 856763982 856763982 537136320 813034656 991121772 991121772 793355968 781303909 386121779 596783120 596783120 689180680 689180680 402653190 402653190 335809060 442896419 880161163 880161163 709982985 553665636 553665636 551675044 151004480 151004480 969122340 969122340 223069738 176305624 176305624 171992272 575519892 675682304 675682304 201590796 944269002 944269002 546695745 270176820 591433920 931450915 931450915 742551680 1019338959 1019338959 226566252 226566252 151281760 108429080 111603000 161662208 161662208 111022416 128849472 680795184 680795184 51661429 114158808 779007394 969409767 969409767 792007791 361816772 361816772 212595106 394274390 394274390 506773540 506773540 317069778 317069778 135340548 135340548 17834020 235045912 235045912 403850972 495063150 495063150 430313776 304436256 304436256 161500453 556254641 879473065 879473065 960926414 960926414 954761475 1030256791 1030256791 967447582 822744607 898979074 898979074 772985373 454446651 454446651 235013432 18225256 10800528 463997192 876137033 1061964971 1061964971 994450623 671658074 156910080 209866948 877940808 877940808 702057472 624529862 906382685 906382685 822975625 927686379 927686379 905095570 1055430830 1055430830 603300384 746377101 746377101 937083051 937083051 912317025 568214761 401155578 584594040 909905872 909905872 322890026 322890026 156771153 220208189 220208189 644886125 705549368 705549368 247599324 247599324 214223052 445422766 734177946 1014704191 1014704191 904920555 175186836 729303874 1003277559 1003277559 897532320 897532320 814094403 689623980 689623980 607516708 314961412 314961412 314373672 294505608 120363300 370281752 370281752 508036254 508036254 218312748 218312748 174101360 174101360 672244320 696303717 882156328 882156328 344205413 463227808 463227808 152948972 478519492 478519492 465840312 193411120 107286816 107286816 120234832 120234832 152517156 152517156 122328064 163112930 500220654 506627998 506627998 514665822 514665822 604258304 604293129 604293129 394395768 613032058 613032058 100775089 51397296 58720800 58720800 54138672 60112192 172491224 172491224 50212752 49174488 49174488 578482992 578482992 767198832 767198832 80593037 80282752 75571272 42718296 109074496 109074496 106444096 7044048 137167232 145493316 313065472 323494208 323494208 42941520 42941520 31531008 24056288 85995776 85995776 474448336 541176807 541176807 687535781 780149984 780149984 648022017 648022017 800503820 800503820 697006897 638922520 160505272 201492256 201492256 228671508 253788888 253788888 679494649 679494649 630008932 630008932 652263897 685983808 685983808 839590019 914444369 914444369 855916626 855916626 268558338 203938244 203938244 138263400 138263400 164667588 164667588 138710500 145540848 177226756 185615104 185615104 379355920 979541185 979541185 818546167 818546167 406111110 540068432 582799185 582799185 463870326 463870326 458181926 424081634 409718948 437157316 437157316 274798520 325658042 325658042 197719918 196698716 97105536 267539260 267539260 270041744 270041744 268445274 342466794 342466794 383890872 842211872 879899721 879899721 813695043 848331442 848331442 575701632 575701632 35692803 553740578 559227170 559227170 189518564 601170456 601170456 572387312 15004656 25231904 25231904 627865360 627865360 126093432 126093432 117704792 100927512 100927512 67109376 26329704 273728306 283405352 373705832 373705832 306356808 34214960 325128400 325128400 71574144 105076220 726003008 736626165 851286611 851286611 734261493 1018233165 1018233165 120205400 770622608 770622608 515967180 784931836 784931836 432612582 491927112 491927112 76945728 68428424 277098809 277098809 298395490 298395490 296763792 564392994 564392994 41902544 915242624 915242624 886654266 886654266 824494371 824494371 580158322 15759914 69218888 69218888 25387328 331350016 331350016 609744090 849088083 849088083 392647435 120787977 138227460 396863780 396863780 980477299 980477299 289718434 289718434 93600960 93600960 107278472 107278472 89633040 102773760 102773760 2220288 497920 290365480 290494986 357360642 357360642 340661376 75246858 86788136 86788136 98909160 98909160 73965256 73058112 108019864 111674712 111674712 81314704 76732360 116061708 247587036 247587036 171168284 174098324 174098324 143120160 163603536 163603536 256484776 256484776 128246920 10750272 34392272 34392272 19229952 73756320 95883240 155139664 244718172 244718172 272079961 359012778 359012778 292891554 606347947 606347947 964344328 1030614447 1030614447 845010129 845010129 375539508 875823793 875823793 621752072 934590740 934590740 424069764 507695262 723009541 723009541 784703669 784703669 768630905 627660233 878578177 878578177 695996325 695996325 612204908 667443252 805319664 805319664 736190935 812022165 812022165 443146498 388372794 672099755 672099755 623453481 533897494 175285757 1009044288 1009044288 965923687 832974966 832974966 649159398 649159398 339992840 339992840 776573664 891889161 891889161 901898475 901898475 923321403 923321403 847691417 600908529 257218176 257218176 244992072 244992072 1060945547 1060945547 739191737 891165959 1029702071 1029702071 973345863 643335283 566253190 969963762 1062180440 1066053744 1066053744 836959567 296022530 623272832 782758028 782758028 404956784 318615306 334898884 334898884 185077846 2694197 723990837 723990837 303576803 682893841 978467701 978467701 708326055 704515505 646743209 646743209 579334257 579334257 662736708 662736708 296903523 819271296 819271296 678513943 678513943 268897442 835793600 954245825 962904999 962904999 930633827 868755082 790306379 798893533 798893533 792011423 622870828 678495145 706838581 706838581 581750097 741131728 741131728 1009997829 1009997829 607894796 842410386 842410386 841222419 743578526 156680672 95425040 95425040 91961256 119682888 119682888 164000368 164000368 162779582 452527520 466660582 466660582 428657766 327994482 327994482 21514450 31496192 31496192 279027840 279027840 296359266 296359266 82435488 551674305 551674305 225309117 181727632 181727632 179041473 181003476 675464324 717484245 717484245 550139368 562291040 562291040 56756033 654479649 667078905 667078905 589960625 589960625 541639680 570999825 570999825 582048097 582048097 619522243 887470539 887470539 634307395 634307395 287462690 559943823 1027817964 1027817964 1031873568 1031873568 295273538 295273538 293675618 440062484 440062484 193496768 603829444 675776101 675776101 538633268 698429233 698429233 675283077 269563476 167845908 708838145 879039232 879039232 594815296 547383808 201484704 34491136 76038976 76038976 49071688 37787792 37787792 340542464 340542464 340459984 310906010 44701008 282496784 282496784 37361424 37361424 249846896 249846896 162242852 235670408 235670408 226790790 526960090 526960090 501268974 564447424 650144003 896108561 896108561 522187832 522187832 960238496 960238496 1012085391 1012085391 565714933 51053408 84984360 84984360 770966881 770966881 520116295 826557779 826557779 782202589 782202589 116466752 800445189 800445189 773550397 433454682 433454682 712034211 749313944 749313944 162775272 432555814 432555814 57874912 245592928 245592928 439957088 439957088 391274776 391274776 375575218 733350780 733350780 822199046 918954691 918954691 1015670017 1015670017 564584524 779102349 779102349 780717725 780717725 562221153 140653496 180702580 180702580 363349600 363349600 271172192 271172192 26342658 208896 59885412 947073326 947073326 958468860 958468860 759837639 752882016 697898619 984163671 984163671 804253061 903965686 903965686 651856567 612216642 970326569 970326569 931667711 362856721 209266604 427592794 545877648 545877648 542188161 542188161 5308417 872416026 872416026 372506645 405848836 405848836 237377820 237377820 299851490 299851490 86058064 86058064 125357640 356173720 356173720 348128410 348128410 325742736 325742736 362240728 362240728 474921102 474921102 436920758 436920758 484459538 493405614 493405614 396049210 396049210 344772272 344772272 323449186 570475320 603185336 661726137 661726137 553898393 539116160 588112466 754286472 754286472 881329227 1019383459 1019383459 823388243 650560011 936435769 936435769 571597057 571597057 670541881 670541881 395762426 841857145 841857145 277950800 277950800 314139747 588359537 597329713 597329713 1001001515 1001001515 897598469 902412503 902412503 827035441 650032895 386823691 117965880 487170288 487170288 541622441 541622441 158951044 772636817 772636817 375704216 375704216 363121002 343105642 335751480 335751480 132387906 438428515 438428515 65145228 65145228 1057358223 1057358223 548803342 525740643 654808331 654808331 540513589 654483734 1045615878 1045615878 1030007991 640680600 477679452 452728991 952365380 952365380 943736006 440959829 345900740 606019917 606019917 591645373 828903962 861090491 861090491 628187520 628187520 874126681 874126681 33818640 184554357 582359889 949377287 949377287 570873873 924395067 1027158323 1027158323 286900487 272242434 693164756 916771931 916771931 1040810831 1040810831 935259515 799297899 499064653 623701929 753007819 853213550 853213550 707507990 707507990 710992570 710992570 225972879 1070415231 1070415231 792791186 792791186 755662932 465617012 344120560 349311624 349311624 495743167 642935937 642935937 612219971 587850801 587850801 314278728 285558306 297063168 297063168 638190620 638190620 697558023 697558023 707436800 872493868 872493868 1024271890 1024271890 727358163 727358163 918367949 918367949 733427142 689228325 709920612 888963281 888963281 348810222 348810222 972700975 972700975 695788871 877885801 877885801 542523048 690238278 690238278 635959785 691209005 925174128 925174128 930137019 930137019 750764909 750764909 496828527 344191050 884953306 884953306 597454107 594937745 559452825 123373361 85855752 85855752 27461856 93140232 93140232 363008904 363008904 367163552 367163552 360945698 364912984 364912984 332472818 540226305 608123433 642630144 642630144 637759577 597299372 97530970 910755167 910755167 653053905 653053905 251658300 251658300 972193481 991121772 1015359567 1015359567 781303909 386121779 386121779 418719868 828770367 828770367 402653190 402653190 1056971047 1056971047 880161163 880161163 709982985 553665636 553665636 551675044 151004480 151004480 969122340 969122340 744690669 638300563 212212044 1068755955 1068755955 708581521 756363341 756363341 757021741 757021741 562230825 546931824 591433920 931450915 931450915 742551680 1019338959 1019338959 226566252 226566252 151281760 136972972 212782984 212782984 182897984 182897984 642915113 680795184 680795184 784451933 1030484207 1030484207 342932071 81672392 81672392 994383178 994383178 955257210 83040136 26215008 528032254 528032254 144715524 460784132 460784132 391125494 155222528 268510886 268510886 403850972 495063150 495063150 220237936 514866026 514866026 524031096 556254641 879473065 879473065 960926414 960926414 928829835 1030256791 1030256791 479408718 590229573 898979074 898979074 772985373 454446651 454446651 440149550 28904280 405398662 168709629 876137033 1061964971 1061964971 994450623 671658074 156910080 209866948 877940808 877940808 265604854 706429510 831869457 831869457 822975625 927686379 1059093951 1059093951 1055430830 1055430830 603300384 746377101 746377101 937083051 937083051 912317025 568214761 401155578 584594040 909905872 909905872 322890026 322890026 160894520 220208189 220208189 644886125 644886125 595922201 595922201 538518288 538518288 315591373 718207512 718207512 378577499 495591990 495591990 675301200 1004536311 1004536311 580911270 362097258 362097258 93331978 341051120 341051120 314961412 320132896 438095382 485134050 485134050 370281752 370281752 508036254 1024636127 1024636127 561042540 619683473 802895613 869076265 869076265 967307552 967307552 665102463 672522836 672522836 152948972 478519492 478519492 465840312 66702240 66702240 39920016 120234832 120234832 152517156 244856952 244856952 232811621 576634649 576634649 679125767 679125767 540795288 776012181 845218199 845218199 643948953 639705370 904434753 904434753 596771936 268516912 68100200 68100200 67751496 67751496 15886208 15886208 34652868 572261073 681624404 681624404 679526469 780508509 780508509 610698689 783227213 783227213 772446228 78255432 198146884 413233345 413233345 300028386 962790835 962790835 822157496 822157496 629938800 819418089 918128833 1029038325 1029038325 539786394 541176807 679150243 687535781 687535781 509617316 545333696 973858222 1058772131 1058772131 494826817 245170004 265220256 265220256 201492256 164214796 53072740 30625916 13108416 13108416 34079744 610886736 652263897 841838930 841838930 546233409 371593488 111642632 61012314 268558338 361292066 361292066 340118848 272629890 92807584 67439938 20108064 20108064 108037168 108037168 105940168 73777356 379355920 979541185 979541185 820662289 820662289 579061124 579061124 728156341 728156341 1043074335 1043074335 721684533 721684533 954423196 954423196 437157316 401306318 401221060 333679352 159909744 253350414 355115992 522191254 522191254 402334168 402334168 115421376 13108416 361968969 630171659 842211872 879899721 879899721 813695043 848331442 848331442 578929233 575701632 270622882 591514274 591514274 560291986 189518564 601170456 658312345 658312345 199964148 199964148 78374117 627865360 627865360 620290368 764538912 764538912 799635516 799635516 656271000 225774216 268552656 283405352 373705832 373705832 306356808 33892368 325128400 325128400 74475392 105076220 572752293 572752293 727408584 727408584 721685877 721685877 338764555 338764555 458355248 458355248 376059569 352882875 633737228 633737228 607457128 607457128 73603072 5486664 276041600 276041600 32122112 19473696 296763792 565145154 565145154 41902544 915242624 915242624 269852032 906470298 906470298 352617280 352617280 274327818 36919848 62637136 62637136 314961632 371559234 609744090 849088083 849088083 392647435 120787977 386617120 486532202 555946167 980477299 980477299 289718434 289718434 619538828 619538828 616773176 203629952 83630240 98183522 98183522 67279880 67373064 271934594 342402824 342402824 341172864 341172864 355684904 355684904 88309026 98909160 98909160 270891464 278562304 278562304 377712730 436771848 512018526 512018526 251402786 436985544 463317630 463317630 287274132 458996742 458996742 419566112 76739840 256484776 256484776 99658152 121456672 121456672 112165656 109708664 109708664 44089944 51844096 66531936 77203448 272079961 359012778 359012778 292891554 606347947 633914601 964344328 1030614447 1030614447 777170182 884588669 954580841 954580841 875823793 621752072 934590740 965121672 965121672 963704945 627415846 214877620 503399340 503399340 366330280 366330280 280308546 936258034 936258034 800349876 800349876 505487148 805319664 805319664 736190935 403247544 403247544 388372794 440586372 538435368 623453481 623453481 533897494 517908916 1009044288 1009044288 965923687 832974966 832974966 649159398 649159398 33685520 33685520 776573664 798615165 1024038046 1024038046 764616724 764616724 558370857 604267748 604267748 497909056 497909056 478566986 478566986 404173834 313688982 277088322 585237676 1029702071 1029702071 494928222 1066506858 1066506858 969963762 1062180440 1066053744 1066053744 960309039 824125385 623272832 782758028 782758028 404956784 141675168 334898884 334898884 428344422 428344422 723990837 723990837 303576803 682893841 978467701 978467701 708326055 704515505 646743209 646743209 579334257 579334257 662736708 662736708 179315392 183609110 183609110 678513943 678513943 268897442 835793600 954245825 962904999 962904999 930633827 610670985 790306379 798893533 798893533 402787126 402787126 185999874 158800024 158800024 397476168 986752457 986752457 1009997829 1009997829 506723214 842410386 842410386 841222419 743578526 224660248 74467972 71615392 58280112 256217612 256217612 164000368 240960652 370197520 403751430 504677526 504677526 474795022 436521116 436521116 407685290 55364794 54545408 279027840 279027840 296359266 296359266 82435488 179381076 181725568 181725568 181727632 181727632 119316432 119316432 144788424 144788424 1036353835 1036353835 943767855 943767855 971372580 971372580 307554322 273678978 321167938 321167938 297760194 285165088 151178881 145231040 141372804 619522243 887470539 887470539 634307395 634307395 606313920 606313920 1027817964 1027817964 1031873568 1031873568 285860898 269001762 268960770 180011092 180011092 142842164 598623812 675776101 771015718 771015718 698429233 698429233 587729232 332020827 365496656 708838145 708838145 594815296 594815296 547383808 268882476 290719872 290719872 76560590 198387940 198735734 198735734 340542464 340542464 303840272 373906714 373906714 282496784 292576682 292576682 274392456 463269432 463269432 97974400 71512876 195825188 226790790 526960090 526960090 501268974 200016180 969507210 969507210 858614800 522187832 522187832 960238496 960238496 1012085391 1012085391 1049105492 1049105492 927685758 751172736 751172736 583395537 252096749 423672866 451496078 782202589 782202589 116466752 800445189 800445189 773550397 493079835 560388513 712034211 749313944 749313944 181483853 565490297 764073069 800194404 830002197 830002197 528813802 979430064 979430064 925578771 925578771 1046659478 1046659478 822199046 918954691 918954691 1015670017 1015670017 539843617 539280060 559340193 780717725 780717725 562221153 509204020 509204020 522673498 522673498 42916944 271172192 271172192 110319650 58736992 59885412 170530068 588957497 817378456 817378456 759837639 752882016 486458122 486458122 678297085 804253061 804253061 0 543513410 543513410 280406401 179123610 1069176762 1069176762 209266604 427592794 545877648 839452231 915514196 915514196 1013981983 1013981983 872416026 372506645 405848836 405848836 237377820 237377820 201593104 63019296 86058064 86058064 369381760 369381760 105285642 69470472 36905744 185635028 185635028 79291680 228667722 1032192943 1032192943 436920758 899811841 899811841 522982594 493405614 396049210 807917937 807917937 344772272 323449186 323449186 924519491 924519491 661726137 721868976 721868976 674726221 336857044 570062932 1037038799 1037038799 362186401 538586144 538586144 136256896 57610112 57610112 51647504 51647504 35393040 37673984 37673984 55879552 55879552 29650418 334274624 588359537 597329713 597329713 1001001515 1001001515 897598469 902412503 902412503 827035441 650032895 386823691 117965880 249038312 249038312 541622441 541622441 286359680 772636817 772636817 375704216 375704216 363121002 366158978 366158978 276445792 285419936 438428515 438428515 65145228 65145228 1057358223 1057358223 265153788 662871348 662871348 639794384 639794384 654483734 1045615878 1045615878 1030007991 1008342469 1008342469 452728991 452728991 943736006 943736006 440959829 747321346 747321346 422784468 422784468 828903962 861090491 861090491 661332416 628187520 362320611 362320611 80756848 948183077 948183077 949377287 949377287 570873873 860041395 860041395 858508418 858508418 434615648 693164756 916771931 916771931 781643989 935259515 935259515 620486137 499064653 623701929 753007819 853213550 853213550 707507990 707507990 710992570 710992570 351070516 1070415231 1070415231 792791186 792791186 755662932 465617012 100745744 428428606 428428606 495743167 642935937 642935937 612219971 587850801 587850801 184948788 411058176 411058176 203430254 638190620 799606275 799606275 697558023 707436800 872493868 872493868 1024271890 1024271890 727358163 727358163 918367949 918367949 687155867 300363943 709920612 709920612 287572772 348810222 348810222 276234698 410939298 410939298 409730088 73369252 145601696 345117482 345117482 399575364 962799910 962799910 925174128 930137019 930137019 750764909 750764909 496828527 884351748 884351748 326158747 275979392 575704217 575704217 83167272 85855752 85855752 27461856 285396160 342626658 363008904 363008904 367163552 367163552 360945698 364912984 364912984 332472818 540226305 778146092 778146092 597373233 597373233 693314644 693314644 987896180 987896180 653053905 653053905 941862215 941862215 972193481 972193481 1015359567 1015359567 46475919 805568788 805568788 335544836 828770367 828770367 69245364 671505164 1056971047 1056971047 212258635 720292680 720292680 67672744 67672744 48020032 48020032 97971856 337687465 744690669 744690669 638300563 350224842 1068755955 1068755955 708581521 756363341 1050324008 1050324008 757021741 562230825 685781248 822347811 911755416 911755416 671089184 975698199 975698199 730781961 979175961 979175961 663557312 212782984 212782984 182897984 182897984 642915113 642915113 606617664 784451933 1030484207 1030484207 342932071 465621056 465621056 994383178 994383178 955257210 367142324 367142324 528032254 528032254 236529180 460784132 460784132 391125494 155731456 268510886 504477114 504477114 299419494 947946351 1018840135 1018840135 1006768143 1006768143 560616065 560616065 458177488 618843214 928829835 928829835 725536472 725536472 268896368 268896368 229731876 229731876 152937324 213656184 440149550 440149550 28904280 405398662 355506688 355506688 495343914 495343914 495327342 160711662 136974624 148526468 196089666 265604854 265604854 706429510 831869457 831869457 688363384 688363384 1059093951 1059093951 991129280 991129280 249504836 154778660 131089248 131089248 93504544 93504544 54974640 247414620 254739040 254739040 27263140 107160196 160894520 160894520 41625368 59380848 658286560 658286560 650504409 601217881 538518288 538518288 315591373 953997511 953997511 432719544 495591990 608183948 675301200 1004536311 1004536311 580911270 443622294 976820097 976820097 819470170 819470170 171525653 708390661 708390661 575039776 575039776 296486218 160367316 160367316 1024636127 1024636127 561042540 619683473 802895613 869076265 869076265 967307552 967307552 665102463 672522836 672522836 176214166 176214166 147703902 239644056 239644056 74229128 632073568 632073568 653558120 653558120 244856952 244856952 232811621 576634649 576634649 679125767 679125767 540795288 776012181 845218199 845218199 643948953 639705370 904434753 904434753 596771936 268516912 68100200 68100200 73488548 233356492 233356492 245943692 245943692 572261073 681624404 681624404 679526469 780508509 780508509 610698689 783227213 783227213 772446228 125488968 198146884 413233345 413233345 300028386 962790835 962790835 822157496 822157496 629938800 819418089 918128833 1029038325 1029038325 539786394 769282236 769282236 761927085 672748066 612368457 509617316 973858222 1058772131 1058772131 647639469 647639469 680841056 680841056 164871816 164214796 249705472 249705472 224542824 224542824 725663912 725663912 556565616 841838930 841838930 810383506 810383506 838016896 863848400 863848400 361292066 361292066 340118848 484720712 484720712 204128264 212923216 212923216 205088092 266381276 266381276 127216248 494920868 494920868 361816908 820662289 820662289 579061124 579061124 728156341 728156341 1043074335 1043074335 721684533 721684533 954423196 954423196 417416214 401306318 401221060 333679352 358100716 358100716 355115992 522191254 522191254 402334168 402334168 294736512 280545090 361968969 630171659 827329185 827329185 539219587 539219587 571531409 578929233 578929233 273711763 270622882 591514274 591514274 560291986 36963200 64753392 658312345 658312345 199964148 199964148 78374117 78421864 620290368 620290368 764538912 764538912 799635516 799635516 656271000 225774216 418431328 418431328 101323800 104474168 319886112 319886112 117965834 35916304 116933264 116933264 572752293 572752293 727408584 727408584 721685877 721685877 338764555 338764555 815292380 815292380 766389330 1008272199 1008272199 1038089967 1038089967 962826248 73603072 90725952 359409243 359409243 358689955 42016848 321947841 565145154 565145154 16645072 884992456 884992456 806781825 906470298 906470298 883727434 836241344 374697194 358576160 365619146 913534251 913534251 786802812 786802812 400482042 978545005 978545005 25704288 386617120 678974559 941497330 941497330 213142992 230345440 230345440 619538828 619538828 616773176 203629952 83630240 98183522 98183522 338374922 338374922 271934594 342402824 342402824 341172864 341172864 355684904 355684904 88309026 28516704 93337376 270891464 278562304 278562304 377712730 436771848 512018526 512018526 251402786 436985544 463317630 463317630 287274132 458996742 458996742 438246482 216985732 503914782 527965592 527965592 385855000 314965256 482773844 482773844 203617352 203617352 196198928 87774016 138416528 817580766 817580766 783598217 783598217 897156678 897156678 633914601 626505026 1020342830 1020342830 884588669 954580841 954580841 424721147 87147842 684854283 965121672 965121672 963704945 627415846 394264698 394264698 267422022 366330280 366330280 280308546 1003271032 1003271032 949219911 800349876 505487148 554371026 554371026 541136956 541136956 711735339 961494183 961494183 1007522598 1007522598 1070222720 1070222720 517908916 269959268 488772806 488772806 420164646 420164646 287416834 287416834 309506192 309506192 928105554 928105554 1024038046 1024038046 211481635 945308752 945308752 848596583 604267748 497909056 497909056 478566986 763283215 763283215 325358450 525468760 628202666 651597963 980278483 980278483 1066506858 1066506858 688724001 128622303 921189684 960309039 960309039 824125385 551431877 243270152 258082012 413975302 413975302 195434868 290460148 428344422 428344422 316744146 316744146 46203138 4194448 115747844 515979644 529345662 529345662 459416774 180929748 180929748 222842972 442619008 442619008 290158000 90841258 31600534 31600534 24832466 22927012 449884896 449884896 62991088 68756276 600586420 610670985 610670985 517867351 871856872 871856872 409346480 409346480 158800024 158800024 397476168 986752457 986752457 816655683 815271975 171966612 570739256 570739256 313787094 313787094 324397746 325159680 325159680 236791992 256217612 256217612 173244040 240960652 370197520 403751430 504677526 504677526 474795022 436521116 436521116 407685290 357163146 357163146 336118184 336118184 301567434 296265832 359793097 359793097 801913020 801913020 737988597 549157044 119316432 791695795 887337838 887337838 1036353835 1036353835 943767855 943767855 971372580 971372580 307554322 273678978 321167938 321167938 297760194 285165088 682852736 682852736 201737536 201737536 137963268 221276552 904532808 904532808 606313920 606313920 830506594 830506594 286507652 286519842 491860718 491860718 366018738 872104771 872104771 180740948 809383327 934922333 934922333 771015718 662848007 662848007 587729232 332020827 365496656 365496656 394943554 397417216 397417216 343596640 268882476 290719872 290719872 76560590 198387940 198735734 198735734 182901976 481775192 481775192 373906714 373906714 82293914 292576682 292576682 274392456 463269432 463269432 131608864 93508200 78692488 139613020 262414104 262414104 133319936 604276906 969507210 969507210 958662960 955519280 955519280 619690014 619690014 583989491 847773697 1049105492 1049105492 927685758 751172736 751172736 600787941 711177760 711177760 451496078 451496078 236251628 533325342 533325342 388301840 285873778 493079835 560388513 560388513 409318698 182610689 181483853 841213593 1046737311 1046737311 830002197 830002197 528813802 1005711698 1005711698 925578771 977517231 1046659478 1046659478 472023445 685504749 775831075 775831075 476116881 1004992934 1004992934 856144403 952436456 952436456 397534314 509204020 509204020 522673498 522673498 429096720 429096720 454431598 454431598 439548496 101927048 358278480 1017957514 1017957514 364547688 100682672 354017930 486458122 488917308 488917308 784931919 784931919 357167072 950800355 950800355 583920849 583920849 1069176762 1069176762 543459745 857735475 857735475 839452231 917594708 917594708 1019359327 1019359327 841483832 956565543 956565543 939526434 255814686 287700128 287700128 77865456 316989778 316989778 369381760 369381760 296672610 296672610 127436386 42769432 331006312 389169604 389169604 1032192943 1032192943 407919150 899811841 899811841 522982594 100304438 9437760 807917937 807917937 296533208 247999244 252657421 924519491 924519491 118757416 721868976 721868976 674726221 677387952 735451893 1037038799 1037038799 875958128 875958128 538586144 136256896 57610112 57610112 51647504 51647504 35393040 2466688 24650112 55879552 55879552 29650418 334274624 334274624 14959488 9486912 10502912 202637836 202637836 201337352 68231688 139739656 687655651 687655651 830336422 830336422 829271461 615091685 740869389 740869389 357591560 637984220 665236964 665236964 72352392 366158978 366158978 276445792 285419936 312014451 312014451 775410468 775410468 813998706 813998706 265153788 662871348 662871348 639794384 639794384 588451872 67108872 610339200 610339200 1008342469 1008342469 1017648880 1017648880 990720642 990720642 380219564 747321346 902401117 902401117 870852999 270722256 666968313 666968313 661332416 642909160 642909160 923165584 923165584 948183077 948183077 1025597509 1025597509 747634948 860041395 860041395 858508418 858508418 434615648 434615648 797579280 797579280 332821529 424556472 424556472 413777932 413777932 375299048 134955176 223081644 223081644 293438724 293438724 286922274 1034972600 1034972600 1005456792 1005456792 183686100 363876652 363876652 46616720 74399104 428428606 428428606 320330794 320330794 295578488 397157520 397157520 293038904 310900818 411058176 411058176 203430254 591314014 799606275 799606275 587466801 553648161 553648161 805308204 805308204 541327624 315883853 788213615 1059796137 1059796137 655364291 691196709 691196709 827800204 827800204 496075330 148265998 495729740 495729740 410939298 409730088 17875488 145601696 145601696 21901124 399575364 962799910 962799910 797159711 1003225192 1003225192 689572937 547882305 411092326 884351748 884351748 326158747 275979392 843187904 843187904 338112264 338112264 345849384 345849384 289473888 358230050 358230050 355795648 355795648 337873762 337873762 17896064 20132640 20132640 172878996 778146092 778146092 363460986 363460986 693314644 763531872 987896180 987896180 772167159 892057964 941862215 941862215 824400206 810596434 936651231 936651231 951780023 951780023 805568788 417596536 86370600 163717400 266547708 671505164 1018223369 1018223369 212258635 720292680 720292680 262930481 801785709 801785709 626569145 626569145 551059352 212664580 526627892 526627892 350224842 794747344 794747344 767508333 68545032 1050324008 1050324008 365097021 282143362 1035658662 1035658662 822347811 321913650 541096612 975698199 975698199 898632495 979175961 979175961 663557312 202457376 97776360 101716096 106042008 106042008 54921848 600398448 600398448 7145696 138603552 138603552 465621056 465621056 453120054 135941950 220812666 367142324 367142324 445988640 445988640 236529180 239152444 239152444 206572936 238404132 238404132 504477114 504477114 299419494 947946351 1018840135 1018840135 1006768143 1006768143 672304709 560616065 877396218 877396218 537869313 548662471 960591655 960591655 438119958 438119958 1017410307 1017410307 628657665 481598239 481598239 124842320 124842320 100786200 355506688 355506688 495343914 495343914 495327342 560382208 587619233 587619233 192938004 192938004 180427360 491235352 693484048 693484048 949200395 949200395 667682889 572808313 1070219482 1070219482 842056077 842056077 189978251 905497967 915952489 915952489 794168141 395721402 687812532 882247820 882247820 516429818 516429818 122554296 729344340 729344340 762314668 762314668 722103732 722103732 228857261 712804992 712804992 953997511 953997511 432719544 248257662 936722504 936722504 415235910 415235910 426445119 443622294 976820097 976820097 819470170 819470170 580992601 708390661 708390661 575039776 575039776 17043584 4401184 54931520 131516704 131516704 900727528 944167007 944167007 852493011 604784444 604784444 254401561 226701420 565387867 565387867 497189192 782391926 782391926 758436361 758436361 621806121 646185968 646185968 653558120 653558120 212458804 212458804 179987976 218775588 218775588 185118748 185118748 56178192 374341952 450922758 450922758 404767558 396757386 333859666 70668738 194451876 194451876 149228900 149228900 73488548 233356492 233356492 245943692 245943692 169363608 163712556 206095500 206095500 72904196 118365456 118365456 104955088 117986088 117986088 125488968 125488968 63576368 45272864 13767360 657600824 657600824 545259585 547948810 587812352 587812352 121158513 253408776 253408776 267572220 769282236 769282236 761927085 612897197 657548704 657548704 769596904 769596904 744488969 647639469 772783852 772783852 680841056 265383748 265383748 249705472 572636080 572636080 695390496 725663912 725663912 896027817 896027817 300767630 810383506 810383506 838016896 863848400 863848400 27919624 69890206 203609104 555753493 555753493 243582980 639500104 706082309 706082309 266381276 266381276 595374624 595374624 586421316 586421316 413700432 413700432 268570966 159519008 176839760 464293014 479075406 479075406 164760578 207284830 379319898 379319898 401740794 498317098 498317098 182830708 358100716 358100716 232588714 70304520 70304520 275383200 294736512 294736512 280545090 344475912 344475912 70255368 920951760 920951760 887670219 43797403 31983072 31507456 7939968 6824448 34619392 34619392 33595600 200717636 200717636 176311024 176311024 29163876 192913440 192913440 182132004 140951544 190683820 203534264 203534264 158686260 185460764 185460764 109408320 418431328 461378406 461378406 229122912 507056936 507056936 352593514 294718728 271614464 273680804 431009380 431009380 218693420 218693420 420313696 420313696 688941924 688941924 815292380 815292380 766389330 1008272199 1008272199 1038089967 1038089967 962826248 72479040 90725952 359409243 359409243 358689955 48335456 321947841 321947841 45867424 34027536 884992456 884992456 806781825 606207482 883727434 906060609 906060609 1014006281 1014006281 685879119 913534251 913534251 786802812 786802812 548269377 978545005 978545005 546439230 546439230 678974559 1054297858 1054297858 143843520 373156822 669709928 669709928 140714105 98054656 81528808 13766024 8104448 17039360 338374922 338374922 70592394 68342280 286298154 343143306 343143306 70130952 271842826 277672704 277672704 270059008 270059008 114934796 248005724 248005724 373926164 373926164 45840652 203423244 245271936 245271936 486344336 486344336 89625862 438246482 438246482 216985732 503914782 527965592 527965592 385855000 314965256 482773844 482773844 203617352 203617352 196198928 216465928 428805520 817580766 891554091 891554091 877920683 897156678 897156678 626505026 626505026 1020342830 1020342830 822456052 742434806 742434806 683121920 87147842 87147842 823017710 823017710 81960037 597477241 1017470761 1017470761 881691947 1017633251 1017633251 536386130 1003271032 1003271032 949219911 235758743 75498568 75632712 201503744 541136956 880642306 880642306 961494183 961494183 1007522598 1007522598 1070222720 1070222720 384755214 384755214 393199912 393199912 288758562 288758562 287416834 288523904 309506192 309506192 928105554 928105554 377010899 679412826 789700794 945308752 991655657 991655657 898134039 670700540 380691532 380691532 763283215 763283215 339947658 525468760 628202666 651597963 980278483 980278483 615330223 590545088 42468432 34964544 189046784 189795004 189795004 131300284 132769272 250930552 347392348 413975302 413975302 195434868 152197440 160922224 160922224 813307779 813307779 64626449 688675459 939954197 961482935 961482935 822950927 935331051 935331051 168461328 894050459 894050459 442619008 290158000 190071668 180096852 135660088 96081768 91041192 91041192 482685160 482685160 522006280 522006280 713537649 713537649 639553160 871856872 995559883 995559883 661710634 661710634 878452409 958317075 958317075 816655683 927028739 927028739 807051451 570739256 570739256 313787094 313787094 324397746 325159680 325159680 236791992 236791992 258969920 258969920 224880634 506675942 506675942 305177286 376439578 376439578 422841260 422841260 298582072 357163146 357163146 336118184 336118184 301567434 296265832 359793097 359793097 801913020 801913020 737988597 552572676 552572676 791695795 887337838 887337838 1023545721 1023545721 521445527 521445527 358003304 301210146 71604522 121655832 121655832 31666656 135864416 153298177 683218125 683218125 201737536 607379971 876160779 876160779 904532808 904532808 610502914 610502914 830506594 877269058 877269058 950535495 950535495 1022887887 1022887887 1052444614 1052444614 201331530 809383327 934922333 934922333 529715838 823263232 823263232 1011947560 1011947560 278563008 278563008 394943554 394943554 213962892 213962892 171999232 188743828 188743828 217095040 217095040 411113988 412428870 412428870 481775192 481775192 39147778 57798752 57798752 46749536 46749536 58197936 58197936 131608864 131608864 168041136 168041136 210767894 310675678 477551122 477551122 604276906 862839044 958662960 958662960 955519280 955519280 619690014 619690014 675710094 1045895355 1045895355 823826993 121635168 121635168 558051489 600787941 711177760 711177760 369642530 369642530 236251628 533325342 533325342 155324580 285873778 302068768 302068768 672137356 672137356 202408728 724129824 841213593 1046737311 1046737311 435716959 422262054 288571988 1005711698 1005711698 969458919 977517231 977517231 755241147 520503821 685504749 775831075 775831075 582307649 1004992934 1004992934 856144403 952436456 990774752 990774752 430961832 859720314 859720314 649915158 429096720 507836560 507836560 454431598 439548496 324813248 358278480 1017957514 1017957514 789792768 789792768 231274965 475702256 488917308 539099584 784931919 784931919 357167072 950800355 950800355 583920849 978676460 978676460 981034628 981034628 857735475 857735475 662799334 917594708 917594708 1019359327 1019359327 537942532 956565543 956565543 939526434 499534812 366381512 287700128 77865456 316989778 316989778 281974888 281974888 296672610 296672610 127436386 151017540 331006312 389169604 389169604 463758520 463758520 536485342 536485342 277135936 277135936 470991458 470991458 376203978 112582168 47449056 52693296 52693296 967454992 967454992 117309696 738591624 738591624 23601232 677387952 735451893 735451893 393894501 875958128 875958128 56881792 56881792 38108960 20058912 36941568 36941568 34528272 46370128 66086288 66086288 60801952 60801952 303384945 869805795 869805795 861480627 844278307 852661633 852661633 640151889 647315744 647315744 687655651 687655651 830336422 830336422 829271461 615091685 740869389 740869389 159976121 637984220 665236964 665236964 72352392 33554448 129312848 129312848 120095568 312014451 312014451 775410468 775410468 813998706 831009153 866382195 866382195 593790914 593790914 588451872 588451872 67108872 606356224 606356224 7549824 167941888 1017648880 1017648880 990720642 990720642 382226702 567931424 902401117 902401117 870852999 930677186 930677186 867246963 593536617 642909160 642909160 923165584 923165584 915612227 915612227 1025597509 1025597509 936538226 936538226 936501930 936501930 305512688 448655190 448655190 797579280 797579280 332821529 424556472 424556472 413777932 413777932 880877643 880877643 994305205 994305205 751055008 751055008 948611374 1034972600 1034972600 781783935 811315584 881587275 881587275 798031614 80005320 524761278 524761278 371249978 320330794 546825457 619666201 619666201 596380785 596380785 310900818 319396960 319396960 285343782 319051818 783471523 783471523 553648128 553648161 843686467 843686467 805308204 627313065 627313065 788213615 1059796137 1059796137 971826772 691196709 691196709 827800204 827800204 569040352 946766284 946766284 495729740 214620898 77063240 222579840 231366660 231366660 96783976 340853652 340853652 521774940 521774940 1003225192 1003225192 626663287 943917100 943917100 893860011 218378375 236649368 236649368 843187904 843187904 338112264 338112264 345849384 345849384 289473888 402119066 402119066 355795648 355795648 70829832 20543616 94450168 94450168 270998484 1029468368 1029468368 118171904 3095608 775611976 775611976 763531872 763531872 417464324 772167159 892057964 892057964 638926864 65234503 810596434 936651231 936651231 951780023 951780023 584850911 593791260 593791260 230965645 266547708 977814170 977814170 906807938 906807938 964615571 964615571 578719953 801785709 801785709 626569145 626569145 551059352 358921698 358921698 380539986 380539986 794747344 794747344 767508333 751359195 751359195 338228884 626750506 728525404 1035658662 1035658662 961010923 961010923 898229355 305400594 898632495 898632495 609257478 609257478 571905580 221799248 250187540 250187540 632443428 632443428 152213033 724026232 724026232 134628400 847457552 847457552 535311420 693015594 693015594 440487944 440487944 220008300 67772736 226761060 226761060 98568192 86065204 169604628 169604628 238404132 259697476 259697476 207360800 111169856 480416006 480416006 889622920 889622920 761604355 672304709 60560240 877396218 877396218 537869313 548662471 960591655 960591655 438119958 438119958 1017410307 1017410307 628657665 481598239 481598239 425248758 124842320 478527630 160830036 160830036 153491760 153491760 577649440 577649440 587619233 587619233 672153616 672153616 584177765 491235352 792128094 792128094 949200395 949200395 667682889 827739089 1070219482 1070219482 842056077 842056077 922933580 922933580 915952489 915952489 898892442 898892442 687812532 882247820 882247820 516429818 516429818 214182072 729344340 729344340 762314668 762314668 722103732 722103732 677454213 712804992 712804992 707314965 416306972 469897230 1040435890 1040435890 936722504 299143763 547765504 547765504 36096321 37133392 615877440 615877440 612712281 580992601 186720564 186720564 256247940 256247940 62988400 201664724 201664724 131516704 131516704 900727528 944167007 944167007 852493011 696455690 696455690 797391485 797391485 471354429 1038617805 1038617805 782391926 782391926 758436361 758436361 621806121 646185968 646185968 95447681 153405732 212458804 212458804 181312259 482512974 533396670 843809837 843809837 56178192 67239944 436242824 436242824 404767558 269484488 130072818 40950000 159477764 159477764 149228900 149228900 58644432 5949536 39879504 104472520 160485472 160485472 231919776 231919776 206095500 232016332 232016332 262035284 262035284 196761172 186668532 186668532 191618048 191618048 91911056 208868420 657600824 657600824 545259585 547948810 859131940 859131940 219401063 436519951 436519951 503170398 503170398 362824064 731979789 919109728 919109728 942499050 942499050 476247316 1013151585 1013151585 772783852 772783852 146625949 265383748 265383748 66533072 572636080 572636080 695390496 695390496 676332165 896027817 896027817 889291049 1013574795 1016624523 1016624523 215829280 215829280 470868516 470868516 185073960 555753493 555753493 243582980 639500104 706082309 706082309 152234005 357952818 624792248 624792248 586421316 586421316 275275392 304255682 304255682 199936262 302781748 302781748 479075406 479075406 285738594 285738594 379319898 379319898 401740794 498317098 498317098 236455452 430587592 430587592 384143730 384143730 128755704 128755704 272894656 322251570 322251570 109847738 109847738 77415264 920951760 920951760 1065325926 1065325926 389608642 841646694 867779221 867779221 556900960 185635686 553178720 553178720 200717636 176311024 176311024 56982464 192913440 192913440 182132004 140951544 190683820 203534264 203534264 40494480 123814952 123814952 210879080 210879080 461378406 461378406 237117496 507056936 507056936 352593514 301467618 332707256 332707256 431009380 729090485 729090485 841351570 841351570 639680522 688941924 688941924 873669104 873669104 465774510 881233572 881233572 759654087 206887432 206887432 77386816 28331360 279105858 308314178 308314178 317895456 317895456 45867424 45867424 34027536 35686688 35686688 109123673 109123673 380633682 906060609 906060609 1014006281 1014006281 924657086 924657086 896532796 743454391 547701760 548269377 878279515 878279515 694238725 546439230 478634499 1054297858 1054297858 728834361 656483253 669709928 669709928 789067648 789067648 243729408 99424992 81799232 270707712 271580418 271580418 6990592 6990592 273781000 343143306 343143306 70130952 271842826 277672704 277672704 270059008 270059008 3769856 4719616 407494982 407494982 434401700 434401700 370196922 427135652 427135652 486344336 486344336 260686456 457422524 457422524 404848910 265991042 404345520 404345520 522840996 522840996 404075838 354272416 279690334 42660116 53631800 216465928 428805520 587207808 891554091 891554091 877920683 623903241 494479205 428003430 617916710 693106176 821759631 821759631 742434806 742434806 900411688 955167077 955167077 823017710 823017710 818229519 597477241 1017470761 1017470761 881691947 1017633251 1017633251 536386130 536386130 900137549 900137549 559950431 114638531 75632712 287670456 759847897 1053336150 1053336150 309766915 602474113 602474113 216789786 216789786 238329018 384755214 384755214 393199912 393199912 98572010 276370338 276370338 288523904 288523904 59768912 863618352 863618352 728947723 679412826 953213559 953213559 991655657 991655657 1017957405 1017957405 1041321418 1041321418 675311106 535321966 541674504 608561289 608561289 205121292 557978912 557978912 975772387 975772387 42468432 34964544 189046784 189795004 189795004 131300284 132769272 250930552 347392348 347392348 254155030 27576672 19171392 38797824 288372640 813307779 813307779 815665638 815665638 939954197 961482935 961482935 822950927 935331051 935331051 445215826 894050459 894050459 173590164 435614384 535244838 535244838 135660088 96081768 91041192 91041192 482685160 482685160 522006280 522006280 713537649 713537649 639553160 626969473 995559883 995559883 671760488 671760488 878452409 958317075 1010831928 1010831928 1006833696 1006833696 807051451 435873614 806882830 986777216 986777216 224406184 235143176 235143176 134816416 220769516 258969920 258969920 224880634 506675942 506675942 305177286 376439578 376877968 422841260 422841260 235997184 235997184 238823976 238823976 54003504 63324168 79092552 79092552 704100736 704100736 746401677 746401677 722802221 760483232 760483232 503976990 1042887778 1042887778 719464532 719464532 521445527 738836492 738836492 376122904 273880450 419190500 449238819 449238819 413228007 683218125 683218125 373547487 607379971 876160779 876160779 545402435 472301575 610502914 610502914 339738640 877269058 877269058 950535495 950535495 1022887887 1022887887 1052444614 1052444614 247362192 216919500 557158600 557158600 625210402 823263232 1031801603 1031801603 1011947560 210970823 134915900 209525140 209525140 472659718 472659718 525803560 525803560 422383032 217095040 499626134 499626134 421913006 519604298 519604298 366237656 72824938 57798752 57798752 25412496 81926664 88349696 88349696 181322596 212125724 212125724 168041136 210767894 310675678 477551122 477551122 165905018 165905018 422584612 422584612 141010688 437519664 437519664 951059271 951059271 1045895355 1045895355 823826993 69279952 147004360 147004360 130234812 128199472 250753448 250753448 232326708 216408080 244004356 244004356 155324580 248516788 248516788 558672897 693636269 693636269 251185116 724129824 991648938 1041202741 1041202741 899998295 85574249 355640344 942688224 969458919 969458919 834218791 828482358 828482358 520503821 474030222 954680224 954680224 582307649 582307649 682725605 807999421 807999421 990774752 990774752 397685278 859720314 859720314 649915158 280409850 507836560 507836560 133310320 324813248 391108570 1058224462 1058224462 670028926 789792768 789792768 307774008 475702256 851443590 851443590 840086557 470226107 672733114 672733114 394284264 378554594 978676460 978676460 981034628 981034628 369470163 494242024 1065880216 1065880216 706840924 681618053 681618053 288526683 46302130 453150930 499534812 499534812 366381512 199639296 75591960 75591960 109573232 109573232 103685400 69470472 82653320 82653320 151017540 151017540 36239934 275639714 537205017 537205017 536485342 640989889 640989889 350777778 470991458 470991458 863902689 863902689 303546148 414092756 414092756 967454992 967454992 277481770 738591624 808325244 1005340783 1005340783 927173952 562841822 929336570 929336570 39357600 56881792 56881792 60719264 60719264 36941568 36941568 44484608 46370128 66086288 66086288 60801952 61469168 303384945 869805795 869805795 861480627 844278307 852661633 852661633 640151889 647315744 647315744 547426980 256452268 697877728 697877728 146378349 4009728 3484928 2435328 3936000 22155712 40327200 48586896 48586896 31777424 29360352 64107008 64107008 850877202 850877202 629399920 889591851 889591851 1063975287 1063975287 1045904031 1019505600 593790914 631581536 655889936 655889936 616873233 616873233 695916453 695916453 188819229 578179886 578179886 689173029 875774254 875774254 291682986 341909898 341909898 971049000 1021651407 1021651407 483413528 547686480 638921241 805458393 1007819335 1007819335 915612227 838873131 536925844 936538226 936538226 936501930 936501930 305512688 448655190 1053048411 1053048411 1041459777 1041459777 1015692625 1015692625 40834277 351022465 880877643 887670060 994305205 994305205 751055008 751055008 948611374 948611374 781783935 781783935 811315584 881587275 881587275 798031614 163709408 524761278 524761278 327883870 306319506 546825457 619666201 619666201 596380785 726791734 824572167 824572167 990263329 990263329 344096850 783471523 783471523 476536388 314381956 843686467 843686467 557844778 627313065 627313065 647361259 647361259 971826772 971826772 592561745 68237646 266686518 876479660 876479660 946766284 946766284 942480133 942480133 875494667 875494667 875918818 875918818 684318316 684318316 352832236 521774940 521774940 404500218 673185984 685769157 943917100 943917100 893860011 592971425 592971425 1006414319 1006414319 918625570 438181076 438181076 247901764 176274910 284145736 402119066 402119066 100829248 100829248 70829832 20543616 94450168 94450168 270998484 1029468368 1029468368 549713056 811937034 811937034 775611976 584832773 633379356 633379356 346037050 346037050 715419480 715419480 113084757 645019840 645019840 808264652 808264652 681643093 1057102665 1057102665 593791260 230965645 172230908 977814170 977814170 906807938 906807938 964615571 964615571 858445776 721063088 25741568 734791749 734791749 946442561 946442561 836949990 836949990 401438166 646842143 646842143 684047840 751359195 887675410 887675410 821186880 821186880 728525404 817380810 961010923 961010923 898229355 169869588 169869588 248986332 248986332 146153880 246400096 246400096 250187540 250187540 723907988 723907988 152213033 724026232 724026232 425023154 847457552 847457552 841279800 693015594 693015594 440487944 440487944 13186066 0 122624984 122624984 98568192 86065204 169604628 169604628 165601436 259697476 341066538 489211582 489211582 1058148943 1058148943 889622920 889622920 761604355 86750741 60560240 60560240 155730720 155730720 142133124 148322672 337231632 473435736 473435736 277114956 401654528 401654528 188073224 425248758 425248758 343821586 478527630 160830036 636621801 744117225 744150669 744150669 653807956 138461696 676774532 676774532 672153616 584177765 538229266 792128094 792128094 903835299 903835299 162269285 827739089 827739089 709361926 709361926 806247104 922933580 922933580 626432310 626432310 898892442 898892442 490145442 213595316 257375892 257375892 214182072 261308509 554955297 715810309 715810309 597688689 676273408 677454213 677454213 1005147052 1005147052 526006747 416306972 469897230 1040435890 1040435890 802512971 399098595 547765504 547765504 124367368 782030865 782030865 737167916 672451077 672451077 909755905 909755905 637781544 637781544 409075872 343937122 357221514 520536208 520536208 411845960 211883520 211883520 83959816 696455690 696455690 864503808 864503808 471354429 1038617805 1038617805 1007543071 1007543071 202918012 704692308 704692308 430515571 738222800 738222800 656957948 97901008 194828084 764964764 764964764 1032674309 1032674309 843809837 806893571 810952915 810952915 438575958 438575958 269484488 229378780 40950000 48650304 48650304 97961144 97961144 65472180 179549164 179549164 69066684 228153448 243478620 243478620 231919776 155226700 232016332 232016332 262035284 262035284 196761172 186668532 186668532 191618048 191618048 91911056 208868420 208868420 108146712 46475472 785647904 859131940 859131940 219401063 436519951 493085322 508569646 508569646 362824064 731979789 919109728 919109728 942499050 942499050 476247316 1013151585 1013151585 162973056 789495173 789495173 722605401 722605401 713166933 707869525 684796857 639828800 860145843 860145843 811061402 561328580 889291049 1013574795 1016624523 1016624523 215829280 215829280 470868516 470868516 336922672 118530706 176418828 243493888 243493888 76159240 165700452 165700452 357952818 624792248 624792248 383124785 122860698 275275392 304255682 304255682 199936262 302781748 302781748 252454992 128279420 285738594 285738594 165159168 185733484 264241404 264241404 236455452 236455452 430587592 430587592 384143730 384143730 128755704 128755704 286262290 322251570 322251570 308021762 109847738 77415264 548441696 647795428 1065325926 1065325926 389608642 841646694 867779221 867779221 556900960 185635686 553178720 553178720 490154798 490154798 510508398 510508398 165492602 382950148 391708452 391708452 83931568 83931568 68489872 148633284 155014916 155014916 210879080 210879080 167852644 237117496 405472436 444471986 444471986 301467618 301467618 332707256 332707256 349970764 729090485 729090485 841351570 841351570 639680522 1040946487 1040946487 916504923 873669104 831310947 881233572 881233572 759654087 807375588 807375588 738911585 604707586 767380732 767380732 841811139 841811139 568088401 568088401 51719824 51719824 81480272 81480272 92471656 92471656 9098304 842924664 842924664 495191016 495191016 924657086 924657086 875431925 875431925 612448000 1015995471 1015995471 698223072 694238725 682737773 816052781 816052781 980587658 980587658 947474707 805104748 805104748 795268212 789067648 243729408 99424992 81799232 270707712 295488578 295488578 10617024 6990592 274802304 274802304 272107266 5841282 4507776 8552448 8572992 9602048 49431824 49431824 136364420 407494982 407494982 434401700 434401700 370196922 427135652 427135652 349309370 313853348 260686456 457422524 457422524 404848910 265991042 238134856 69338624 522840996 522840996 404075838 354272416 279690334 222596432 229101932 229101932 493625372 587207808 599994609 599994609 537665604 464854273 372382518 428003430 428003430 693106176 729090661 729090661 583058265 925698360 925698360 955167077 955167077 682321326 818229519 889912676 889912676 676121733 226043756 12583104 94820712 749210528 769396461 769396461 787480785 787480785 559950431 263399944 702754981 702754981 759847897 1053336150 1053336150 553986081 941688884 941688884 731191972 753241469 917916799 917916799 173265821 375479080 554228296 890199273 890199273 562357856 32597056 60944736 60944736 704853648 728947723 728947723 529930878 953213559 953213559 560989089 455156022 1017957405 1017957405 1041321418 1041321418 675311106 644924313 993554793 993554793 608561289 1006497403 1006497403 589061624 1065997375 1065997375 953603893 913922290 826351779 560826465 792470832 792470832 782602269 458458089 366996384 293838102 293838102 148744724 5903554 424821104 424821104 808343714 808343714 815665638 815665638 688407139 515058548 515058548 488900910 488900910 468889226 445215826 476800002 476800002 303128256 435614384 535244838 535244838 413361690 72560716 75274040 529763944 529763944 208738192 107483948 290165822 290165822 539151754 888986339 888986339 951717790 954993583 954993583 748971947 835372241 835372241 1010831928 1010831928 1006833696 1006833696 739184961 435873614 806882830 986777216 986777216 496766744 319375994 270884992 59254960 220769516 220769516 168782260 21238952 222504512 318212126 318212126 247498240 376877968 376877968 335931402 168889112 380683098 380683098 107796786 102914360 299835760 299835760 382083040 704100736 704100736 746401677 746401677 781935792 781935792 760483232 503976990 1042887778 1042887778 719464532 719464532 272994499 738836492 738836492 376122904 430320100 430320100 449238819 729295026 729295026 396625631 212226138 373547487 373547487 268693506 268693506 168341642 411616522 411616522 339738640 339738640 310509632 411046018 411046018 268570626 268960770 268960770 536944923 536944923 506585178 717785101 814759995 814759995 1024008356 1024008356 1031801603 1031801603 992219370 992219370 647371353 996026070 996026070 729097268 729097268 525803560 525803560 422383032 172101780 499626134 499626134 491015620 519604298 527968146 527968146 130085560 130085560 125515704 55269328 81926664 88349696 88349696 181322596 655754025 655754025 136392976 649734955 649734955 203872960 502534016 502534016 801910905 801910905 295698800 687872451 687872451 437519664 951059271 951059271 682481725 705437840 705437840 555810897 555810897 708780417 708780417 800275648 800275648 254947688 141695176 216408080 244004356 244004356 100663296 100663320 100663320 558672897 693636269 693636269 251185116 760285765 991648938 1041202741 1041202741 899998295 822215075 355640344 363504540 774914158 774914158 735729770 828482358 837053300 837053300 474030222 954680224 954680224 796015796 972102479 972102479 341268919 756302092 756302092 206715683 174194742 271584512 477451808 477451808 204158098 199667960 414773312 442272528 442272528 391108570 1058224462 1058224462 670028926 670028926 548414503 548414503 307774008 851443590 851443590 840086557 833168739 833168739 672733114 387296233 378554594 541327360 542132352 542132352 538233345 369470163 901367756 1065880216 1065880216 535373310 600467375 600467375 839983720 897608065 897608065 834929488 263987828 91176360 157236388 157236388 75591960 182664164 266787324 266787324 207139872 122120000 99322984 90449352 78057544 119735112 119735112 537205017 537205017 369285152 640989889 640989889 350777778 54282000 65411834 863902689 863902689 426059740 414092756 414092756 198499499 331487810 331487810 277481770 808325244 1005340783 1005340783 927173952 562841822 929336570 929336570 50610304 50610304 40144528 60719264 83003656 83003656 12899360 44484608 50122704 50122704 22874960 55284176 61469168 101977904 112527952 112527952 38534800 58211584 114518920 114518920 91396592 117835792 547426980 547426980 256452268 697877728 697877728 215223009 224919692 745181996 745181996 153160657 664720412 664720412 636504292 55221744 25183344 35684408 64107008 368153155 850877202 930024329 930024329 889591851 889591851 1063975287 1063975287 1045904031 1019505600 593781953 631581536 655889936 815318595 815318595 616873233 695916453 695916453 1027678234 1027678234 578179886 689173029 875774254 875774254 679625237 634338537 634338537 971049000 1021651407 1021651407 483413528 483413528 281910036 777400536 1007819335 1007819335 872554563 788598789 536925844 787215837 787215837 426456486 936262366 936262366 709142049 1053048411 1053048411 1041459777 1041459777 1015692625 1015692625 818915877 938273953 938273953 887670060 887670060 514414416 514414416 293335848 312164918 509275504 509275504 318054128 198898620 503001112 503001112 380540516 280291622 259218254 299504698 299504698 68160936 457790184 457790184 483188882 483188882 726791734 824572167 824572167 1067992086 1067992086 487070815 344096850 119120640 296834596 296834596 141405276 141405276 907881752 907881752 2958619 17376288 19208434 339945258 339945258 278858018 12656832 429986144 876479660 876479660 486584651 876573059 942480133 942480133 875494667 875494667 875918818 875918818 684318316 684318316 352832236 140872980 1059639584 1059639584 1040847903 685769157 685769157 951719751 951719751 592971425 592971425 1006414319 1006414319 918625570 438181076 438181076 349563594 349563594 47832209 546517569 805610451 821059282 821059282 13743632 42127440 43403712 43403712 668216212 765534573 765534573 771874845 811937034 811937034 713046424 713046424 1058060189 1058060189 346037050 388182330 715419480 971819388 1004849655 1004849655 645019840 183504155 183504155 652284928 1057102665 1057102665 583742673 53451185 644088179 644088179 526647848 530909650 927803725 927803725 858445776 858445776 721063088 570561201 734791749 734791749 946442561 946442561 836949990 836949990 663937939 663937939 538132560 583351650 887795563 887795563 1070757213 1070757213 893386923 393300387 119483536 119483536 441214950 624730436 895752299 895752299 382155473 573879108 725795976 725795976 246400096 175655360 178048596 723907988 897215899 897215899 793294917 793294917 794482365 794482365 841279800 841279800 641996137 365843813 741063694 741063694 823341378 823341378 134744420 134744420 99618624 47015104 45445120 218106520 218106520 205000330 341066538 489211582 489211582 1058148943 1058148943 893403727 494155394 896629312 943644423 1067209581 1067209581 705692181 180966912 566380068 671990288 671990288 473435736 473435736 277114956 401654528 401654528 120327264 120327264 343821586 343821586 174889358 679747584 679815237 744117225 744150669 744150669 653807956 794346377 1010059133 1010059133 379767679 538229266 538229266 168794305 256451204 256451204 168887340 168887340 67108896 953157008 953157008 604147703 604147703 411587846 815269443 815269443 10519360 11551040 11551040 2114112 94383152 112012632 112012632 111223320 261308509 801335348 801335348 715810309 597688689 122791397 255425032 690164789 1005147052 1005147052 783651279 834353442 852227283 852227283 626148522 626148522 399098595 399098595 124367368 124367368 782030865 782030865 737167916 672451077 672451077 909755905 909755905 637781544 637781544 409075872 343937122 357221514 642178401 642178401 801686781 801686781 794448293 704120773 149273486 149273486 864503808 864503808 159514888 216663148 216663148 1007543071 1007543071 688894549 704692308 704692308 478676046 738222800 738222800 656957948 177012444 264683057 764964764 764964764 1032674309 1032674309 738959362 806893571 810952915 810952915 753115392 810558732 810558732 829688739 934551872 934551872 285029970 414657820 414657820 312290898 497581696 497581696 374411736 374411736 376580014 376580014 221910848 230888708 230888708 204875908 112397288 174030612 174030612 513154560 513154560 418518528 531660821 531660821 474214806 474214806 388068243 388068243 785647904 785647904 288183053 606817550 708163346 708163346 641950236 772916746 772916746 252223492 873473184 873473184 948969642 948969642 877134987 732637596 732637596 190588964 789495173 789495173 722605401 722605401 713166933 707869525 684796857 639828800 860145843 860145843 811061402 611609096 543290249 967162505 967162505 472857870 472857870 495018818 495018818 496136444 496136444 704795217 704795217 69604424 706950172 707460517 707460517 237365532 237365532 162628068 597419880 603239952 603239952 61791600 38006928 38006928 31601040 29544672 252454992 252454992 156810388 56601264 252453216 252453216 229639020 205523988 244094244 244094244 235627540 235627540 235538436 235538436 367051242 531089050 531089050 406641306 286262290 308021762 308021762 304400952 268435458 834561122 834561122 371140363 400953088 742103232 742103232 12640576 12664842 147915182 147915182 680629290 680629290 735257163 735257163 510508398 510508398 383483668 382950148 564409040 594916192 594916192 85987752 85987752 148633284 155014916 155014916 152312420 152312420 167852644 176961808 423050072 444471986 444471986 297350608 297350608 289975208 289975208 349970764 404885766 404885766 808269186 808269186 605604361 1040946487 1040946487 963818383 963818383 831310947 964923447 964923447 496098688 807375588 807375588 738911585 604707586 767380732 767380732 841811139 841811139 568088401 589117552 596373713 596373713 81480272 555113002 555113002 36483681 312830258 312830258 948870063 948870063 893644971 784476391 954483157 954483157 875431925 612448000 1015995471 1015995471 672610656 682737773 682737773 816052781 816052781 980587658 980587658 947474707 805104748 805104748 795268212 172177216 57268752 57268752 51394352 39990704 295488578 307942802 307942802 39995200 274802304 274802304 272107266 5841282 3745536 269933312 271581954 271581954 271055360 49431824 136364420 245951324 245951324 213206088 76638572 230762232 230762232 235216140 235216140 344796234 418936986 506700662 506700662 377173918 274458502 274458502 69338624 25261684 221253408 221253408 204213516 248615416 248615416 229101932 229101932 493625372 493625372 874385082 963391735 963391735 464854273 372382518 526386108 526386108 146833470 347429600 347429600 583058265 925698360 925698360 684569900 684569900 836903177 836903177 889912676 889912676 676121733 959965035 959965035 959458127 959458127 965480179 965480179 787480785 787480785 179314752 263399944 702754981 702754981 771951108 771951108 672401925 553986081 941688884 941688884 731191972 753241469 917916799 917916799 755183661 755183661 554228296 890199273 890199273 686363010 960733346 960733346 497436058 704853648 704853648 529930878 529930878 611394020 611394020 560989089 455156022 455156022 560803396 560803396 463680563 497891492 644924313 1017496272 1017496272 412745723 1006497403 1006497403 589061624 1065997375 1065997375 953603893 913922290 826351779 722756038 792470832 792470832 782602269 458458089 366996384 293838102 293838102 148744724 5903554 424821104 424821104 818529888 818529888 420519040 421140006 496943238 515058548 515058548 53682510 163815648 176959098 176959098 283667686 283667686 310706906 493716620 493716620 413361690 413361690 219013252 103673112 529763944 529763944 322999430 107483948 376801590 749064549 749064549 888986339 888986339 951717790 983712332 983712332 748971947 665530464 665530464 739312695 739312695 991625256 991625256 379785886 379785886 577014940 628427040 628427040 496766744 319375994 270884992 44660648 61920736 61920736 194044908 267474556 267474556 318212126 318212126 247498240 308241478 308241478 216023488 216023488 380683098 380683098 135341216 102914360 299835760 299835760 382083040 595762433 631245065 646222952 646222952 781935792 781935792 758773661 708837744 708837744 44602944 616067914 812721027 879955976 879955976 352999464 341245322 430320100 430320100 355332284 729295026 729295026 396625631 67116296 67116296 2367616 0 53248 180224 180224 71434324 549454027 549454027 282202818 282202818 1010827791 1010827791 1020790479 1020790479 1021912518 1021912518 506585178 822665474 822665474 814759995 1024008356 1024008356 755033090 639779308 992219370 992219370 647371353 996026070 996026070 729097268 729097268 170692096 236267708 236267708 172101780 436545558 489741378 491015620 491015620 527968146 527968146 494633914 494633914 480457038 463929848 94669120 76340048 866031475 866031475 655754025 655754025 136392976 701568836 701568836 127806854 502534016 502534016 801910905 801910905 295698800 687872451 687872451 281053216 352491684 682481725 682481725 705437840 705437840 555810897 555810897 708780417 708780417 800275648 800275648 453444826 524813502 524813502 361308372 0 100663296 100663320 120062849 542721593 542721593 165128389 150852168 760285765 760285765 1008816906 1008816906 829633443 822215075 361394256 363504540 526533834 735729770 735729770 717567526 837053300 837053300 732697937 676953564 796015796 796015796 972102479 972102479 827206017 827206017 830416961 830416961 418645602 1021684750 1021684750 676455910 484558918 484558918 414773312 442272528 442272528 132186516 174072312 534839810 534839810 431564646 548414503 653720209 653720209 641153817 875358354 875358354 833168739 833168739 387296233 387296233 349291336 681783436 901926986 901926986 697290916 808176824 901367756 901367756 648331609 535373310 1011877891 1011877891 839983720 897608065 897608065 834929488 263987828 104878872 157236388 249528608 249528608 182664164 266787324 266787324 224927940 218642848 218642848 159781352 126161272 126161272 119735112 367459264 369285152 369285152 369501088 369501088 106567320 124552600 124552600 110700120 426059740 426059740 344602746 249705366 156142820 331487810 331487810 373424208 379984346 379984346 362807392 362807392 77594642 75514000 314605768 314605768 50610304 32506848 32506848 85197480 85197480 46324512 49678976 50122704 50122704 22874960 55284176 55284176 101977904 112527952 112527952 47694336 58211584 59770512 62665824 62665824 54896432 32248256 182661588 182661588 172200260 684033281 684033281 556742080 745181996 745181996 153160657 664720412 664720412 636504292 55221744 25183344 35684408 51454866 368153155 876260432 930024329 930024329 478199886 915956266 915956266 767598623 751355085 593781953 593781953 550131682 948499712 948499712 815318595 550589506 373502106 443159642 1027678234 1027678234 914921046 429654061 355071008 679625237 679625237 634338537 634338537 839410712 988547344 988547344 815040149 815040149 335818754 335818754 141604436 141604436 100708368 432103528 658546498 658546498 537963026 537963026 936262366 936262366 840582216 383218251 235529244 459473588 459473588 131330 999325720 999325720 938273953 938273953 551152876 551152876 92944097 87806392 345507320 368576490 368576490 16303168 463520130 463520130 503001112 503001112 432343682 432343682 347357924 299504698 299504698 48789272 457790184 457790184 483188882 483188882 755816448 908756253 908756253 1067992086 1067992086 487070815 276880724 109034080 109034080 411567110 411567110 844864155 907881752 907881752 831150248 845287827 934246739 948024828 948024828 658582041 82323680 429986144 573325312 727136453 727136453 722352784 27923808 134750356 134750356 138552452 138552452 16842912 273843904 668762885 668762885 267177468 1059639584 1059639584 1040847903 670222775 563790118 951719751 951719751 710696027 605553288 605553288 416950921 457389764 457389764 349478912 349563594 349563594 823301267 823301267 805610451 821059282 821059282 751004563 722237793 959822133 959822133 668216212 765534573 765534573 771874845 771874845 625730116 713046424 713046424 1058060189 1058060189 456398464 388182330 388182330 971819388 1004849655 1004849655 141344968 183304668 973939164 973939164 652284928 584007129 583742673 59179344 1004868080 1004868080 958398759 811862533 927803725 927803725 646186096 646186096 570561201 570561201 44565840 44565840 461311272 485464334 485464334 318900513 663937939 663937939 538132560 583351650 887795563 887795563 1070757213 1070757213 893386923 276947010 432111848 432111848 441214950 624730436 895752299 895752299 382155473 573879108 725795976 725795976 466778510 466778510 342153856 584050666 897215899 897215899 793294917 793294917 794482365 794482365 824580387 824580387 641996137 365843813 741063694 741063694 823341378 823341378 380635474 348029288 128452408 51862644 148545556 218106520 218106520 256016436 256016436 197657620 322996000 343466162 893403727 893403727 494155394 896629312 943644423 1067209581 1067209581 705692181 180966912 566380068 671990288 671990288 230743776 235329564 235329564 236653568 236653568 9904704 303053960 374941338 374941338 199238941 679747584 679815237 682437957 682437957 679815237 544737033 794346377 1010059133 1010059133 379767679 591425682 591425682 598178972 598178972 898621041 898621041 1042549145 1042549145 953157008 953157008 604147703 604147703 411587846 815269443 815269443 564954960 564954960 629820005 629820005 209507703 151785268 250383800 250383800 131400160 801335348 801335348 635978172 761835769 761835769 712943537 712943537 695435297 694999301 783651279 834353442 852227283 852227283 682070469 682070469 550598696 627387308 627387308 643696833 643696833 574964240 574964240 47785680 553477504 553477504 67198976 4826496 471896064 471896064 138412160 88118372 642178401 642178401 801686781 801686781 794448293 704120773 183041520 235563310 914416347 914416347 806143494 556285748 556285748 656760012 688894549 1006702092 1006702092 467709748 478676046 478676046 473992880 177012444 177012444 264683057 264683057 218288172 578865968 578865968 568615385 634919750 634919750 753115392 753115392 880028286 880028286 829688739 943138620 943138620 285029970 594780363 595065777 806180786 806180786 497581696 374411736 374411736 376580014 376580014 221910848 230888708 230888708 204875908 98089996 183256276 183256276 513154560 513154560 418518528 531660821 531660821 474214806 474214806 842712420 932319867 932319867 729887339 943800705 943800705 708163346 708163346 641950236 772916746 1009297091 1009297091 873473184 939759477 948969642 948969642 877134987 683326671 683326671 924876939 934160475 934160475 707732553 707732553 590480977 590480977 671363333 671363333 725930346 725930346 965007662 965007662 939939851 967162505 967162505 959824424 755097645 738582564 495018818 496136444 496136444 704795217 704795217 205537450 706950172 707460517 707460517 310229400 268831114 268831114 597419880 603239952 603239952 281080480 281080480 269145090 2543874 300315056 300315056 156810388 156810388 273386658 273386658 252453216 229639020 205523988 400768306 400768306 561847409 561847409 570501768 724481561 724481561 795068193 795068193 591974701 542442930 916457961 916457961 563119035 636792960 922133138 922133138 1052216831 1052216831 742103232 742103232 586679972 910779969 910779969 392750820 680629290 680629290 735257163 735257163 508113630 383483668 383483668 187696874 564409040 594916192 594916192 92281312 276832554 276832554 221577312 521412132 521412132 495606326 507227840 507227840 423050072 432412902 432412902 402983440 36177168 109642192 109642192 329034973 995808951 995808951 863970063 863970063 789527613 605604361 915425459 963818383 963818383 818717696 964923447 964923447 277737888 283387360 283387360 76195264 76195264 32056000 542131744 558417057 558417057 857253072 857253072 596373713 596373713 281241850 555113002 555113002 362123834 625104599 625104599 948870063 948870063 893644971 784476391 954483157 954483157 710639251 948735983 948735983 725795032 725795032 154360352 154360352 136702212 931187072 931187072 131146488 131146488 480770382 492017844 492017844 172177216 57268752 57268752 51394352 39990704 66327552 307942802 307942802 41663744 270619712 270619712 269034498 5369984 5276416 269933312 271581954 271581954 271055360 39355024 39355024 173024336 176210548 176210548 51488820 338046396 338046396 388433308 388433308 489499950 489499950 506700662 506700662 377173918 274458502 274458502 402281710 402281710 266375500 266375500 371720550 371720550 248615416 48390348 103810440 108014104 709372805 874385082 963391735 963391735 991506008 991506008 629404267 890447393 890447393 755083060 447926958 418505670 505939230 505939230 119819286 606261320 887751781 887751781 546192649 837746159 837746159 959965035 959965035 959458127 959458127 965480179 965480179 593232186 480719335 255852872 255852872 243273800 997012724 997012724 1071098946 1071098946 1046396091 756416784 756416784 826296996 953532463 1036116207 1036116207 755183661 755183661 907548786 917046435 917046435 686363010 960733346 960733346 497436058 589404724 995016915 995016915 476843406 37863626 213968492 631777088 951960339 951960339 877132654 877132654 856979277 849044520 944945079 1017496272 1017496272 202238988 758128792 758128792 728834997 112858968 811259160 811259160 678717958 722756038 722756038 576921166 682216983 682216983 428255545 319989728 10916920 37267280 296788672 296788672 289591458 273545202 818529888 818529888 537808130 825999617 825999617 496943238 482609358 29434080 163815648 163815648 21000260 30761024 30761024 310706906 493716620 493716620 364906802 347349128 219013252 103673112 73615536 322999430 322999430 71567496 376801590 749064549 749064549 598337734 598337734 408176538 983712332 983712332 613472055 665530464 665530464 390850385 261232846 242559452 242559452 142902472 206359692 206359692 184027904 143511194 143511194 379693234 379693234 311815706 347322010 347322010 333369634 309913098 285350706 319726722 444489016 444489016 150527312 79387648 216023488 216023488 226298452 226298452 135341216 114863040 114863040 58060528 44257664 595762433 631245065 631245065 566399081 566399081 676484993 676484993 716703093 846205443 846205443 681304498 827975331 899249096 899249096 86123048 86123048 71426184 355332284 355332284 731955573 731955573 413661510 413661510 515719583 515719583 406215052 406215052 306348164 272894082 272894082 549454027 549454027 282202818 282202818 1010827791 1010827791 1020790479 1020790479 1021912518 1021912518 856252178 856252178 840558099 840558099 635811603 633813225 201496036 639779308 639779308 146985465 36816144 36816144 42542160 42542160 42992208 170692096 791424745 791424745 571287489 757471533 757471533 489741378 574625461 574625461 377052546 532264298 532264298 480457038 463929848 847562192 847562192 866031475 866031475 857906988 857906988 863371703 863371703 701568836 83102664 285088576 347869002 470291584 470291584 204608268 426816396 426816396 281053216 352491684 352491684 442626558 442626558 337774978 206942886 206942886 273158994 691147077 691147077 934346806 934346806 842146398 781254906 781254906 833619337 941752810 941752810 698628203 698628203 542721593 322187008 150852168 150852168 79340163 1008816906 1008816906 877135603 877135603 361394256 1048233301 1048233301 974819860 571609617 542125156 231086316 732697937 732697937 676953564 715341765 719661525 734327229 765929968 827206017 827206017 830416961 830416961 418645602 1021684750 1021684750 676455910 484558918 484558918 307628186 307628186 279478016 300685672 685248716 685248716 719454252 719454252 669127161 653720209 653720209 641153817 875358354 878980812 951658311 951658311 663122032 663122032 547592769 681783436 901926986 901926986 697290916 808176824 808176824 648331609 648331609 377706096 1011877891 1011877891 389193634 389193634 60256730 155488264 155488264 189167408 189167408 249528608 249528608 131599708 814533699 1040722087 1040722087 1038172436 872691980 872691980 908801339 1021487921 1021487921 746188485 1009304847 1009304847 1009304847 767710690 106567320 124552600 124552600 110700120 392831320 392831320 340010170 204296034 156142820 256190652 256190652 373424208 379984346 379984346 362807392 396362802 396362802 75514000 344509642 344509642 43077906 20149200 15987168 659644313 659644313 69805520 604531393 641424320 656287312 656287312 670433625 670433625 656227032 43018320 47694336 47694336 35553840 21127072 62665824 62665824 54896432 21566048 182661588 182661588 172200260 684033281 684033281 556742080 542640545 23537793 27429600 27429600 26449664 25203200 26399328 26399328 60821552 60821552 127471672 876260432 876260432 540264705 478199886 915956266 915956266 767598623 751355085 315211776 570989906 570989906 948499712 948499712 550589506 550589506 1069075308 1069075308 915595789 915595789 914921046 429654061 95259954 171397918 171397918 136644884 436451905 436451905 988547344 988547344 839118867 839118867 335818754 335818754 1037092663 1037092663 883024403 883024403 658546498 1049103693 1049103693 537963026 467092610 840582216 840582216 235529244 235529244 459473588 459473588 734106514 999325720 999325720 423670818 954235244 954235244 874184873 471513309 188703698 345507320 368576490 368576490 29040876 463520130 463520130 238655184 351381760 432343682 437295814 437295814 249960536 249960536 483524638 483524638 474548224 272985230 97038336 755816448 908756253 908756253 889766955 348822758 276880724 276880724 109034080 109034080 411567110 411567110 844864155 844864155 831150248 831150248 845287827 934246739 948024828 948024828 658582041 82323680 255288824 573325312 727136453 727136453 913310619 915210899 915210899 806617163 860257000 860257000 829306850 1013745088 1013745088 668762885 267177468 313571547 569688710 670222775 670222775 103825464 444635292 710696027 710696027 605553288 605553288 416950921 457389764 457389764 155712160 155712160 189196276 927862800 927862800 894176427 842962200 842962200 776416195 722237793 959822133 959822133 400949980 551686593 551686593 173193705 681831001 681831001 747807305 747807305 714295597 481172814 481172814 983802150 983802150 495597373 477106990 477106990 990574637 990574637 973939164 973939164 671220828 193775732 183170180 491594138 1004868080 1004868080 958398759 811862533 558891681 436732950 445122357 445122357 159124949 27400704 749910957 749910957 758399940 758399940 485464334 70535640 1053006004 1053006004 502560769 516166490 516166490 328994418 63047380 301700692 301700692 276947010 432111848 432111848 209715276 143185420 142156420 265838596 265838596 336231910 512411238 512411238 466778510 466778510 342153856 584050666 908148752 908148752 536490417 415414882 415414882 411277642 411277642 203811084 80613486 23250090 822240704 822240704 369287432 380635474 380635474 348029288 128452408 129594184 148545556 265347212 265347212 256016436 348787914 424170602 424170602 344238402 344238402 409333768 501663050 501663050 418371062 487467536 487467536 176954432 176954432 172264004 16110208 392843312 478262344 478262344 371087944 437915672 437915672 78255432 303053960 374941338 374941338 383789794 772166440 772166440 724880181 708741941 708714261 85199037 27078240 840257056 848611923 848611923 591425682 591425682 598178972 598178972 898621041 898621041 1042549145 1042549145 632309212 632309212 623428905 84562177 283251778 545968576 570960908 570960908 564954960 629820005 629820005 965874308 965874308 377622618 282335896 165937329 165937329 711129565 711129565 761835769 761835769 712943537 712943537 695435297 694999301 694999301 712617553 712617553 684917121 684917121 682070469 550598696 627387308 672229376 672229376 643696833 844718664 844718664 277365981 418431116 418431116 408494472 73483648 471896064 471896064 437277076 429003366 429003366 487377976 487377976 454990258 454990258 1029854378 1029854378 278413409 914416347 914416347 806143494 724492528 556285748 793325866 793325866 1006702092 1006702092 763398228 763398228 654624825 142919789 7547664 38779392 170105988 191240850 425073318 578865968 578865968 568615385 634919750 634919750 594154929 742358115 880028286 880028286 655882809 1067338587 1067338587 779029079 594780363 595065777 1054475079 1054475079 1044907167 1044907167 961670344 1058311599 1058311599 1007073408 889550959 893436075 893436075 255875907 356123036 356123036 948438964 978891556 978891556 289644452 213571552 68216400 203014656 842712420 939700347 939700347 729887339 1048342169 1048342169 852541846 852541846 707792981 504512667 1009297091 1009297091 576225798 939759477 939759477 736176852 754265037 754265037 683326671 924876939 934160475 934160475 498016567 498016567 375732476 176369748 671363333 947728776 947728776 725930346 965007662 965007662 939939851 620892201 959824424 959824424 755097645 738582564 270835718 270835718 3146496 268436226 321463292 321463292 287368486 520564400 522025020 522025020 268831114 268831114 360325866 393622440 393622440 298606490 281080480 269145090 65923536 300315056 300315056 101714034 54784176 273386658 273386658 110174808 110174808 97968208 400768306 412411998 561847409 561847409 885517898 885517898 1071909375 1071909375 1071694335 1071694335 542442930 916457961 916457961 650366922 650366922 922133138 922133138 1052216831 1052216831 455598861 139350272 586679972 910779969 910779969 392750820 392750820 597784068 597784068 164700900 394506324 486588462 486588462 1049976862 1049976862 335944229 318716768 269301618 276832554 276832554 221577312 521412132 521412132 495606326 507227840 507227840 413861646 443478216 443478216 402983440 359714400 359714400 291799472 329034973 995808951 995808951 863970063 863970063 789527613 376631207 915425459 915425459 410291014 818717696 818717696 786680909 963766305 963766305 746848673 746848673 555133090 683709140 683709140 576621547 558417057 857253072 857253072 343972570 575393920 575393920 362283155 362283155 362123834 625104599 625104599 253367780 253367780 426705792 426705792 509672610 509672610 710639251 948735983 948735983 725795032 725795032 616831968 216290205 705943633 931187072 931187072 131146488 131146488 258923964 950242385 950242385 596116593 664857177 664857177 238802725 39718924 675610665 675610665 158076540 158076540 137962564 553788160 554832417 555768320 555768320 3860736 8388672 8572928 8572928 37361164 210813660 210813660 206643852 206643852 404940876 433230034 433230034 388433308 388433308 489499950 489499950 502883030 502883030 299086024 83911272 71337460 402281710 402281710 266375500 266375500 371720550 371720550 112271896 251381172 251381172 136446484 709372805 757218237 757218237 615327840 991506008 991506008 629404267 890447393 890447393 755083060 453750596 418505670 764812071 822755605 822755605 711304559 887751781 1015021699 1015021699 837746159 837746159 662695484 891498795 891498795 760553071 596005599 596005599 593232186 1064329889 1064329889 255852872 241176764 997012724 997012724 1071098946 1071098946 1046396091 967060276 967060276 826296996 953532463 1036116207 1036116207 1024431370 960632921 960632921 917046435 917046435 206046336 206046336 503845908 503845908 444258198 995016915 995016915 476843406 37863626 213968492 631777088 951960339 951960339 877132654 877132654 856979277 849044520 944945079 944945079 641093700 682863885 758128792 758128792 728834997 112858968 939557398 939557398 667028088 667028088 639056409 423891232 306504640 306504640 773609985 773609985 135186264 79583552 585688257 585688257 1005412400 1005412400 860674930 272729220 537808130 825999617 825999617 621043955 917786744 917786744 1016150203 1016150203 17949216 714215839 714215839 339812490 303448624 330210330 330210330 37136944 37136944 84833344 84833344 72166536 207692448 253705788 253705788 152976412 135142404 283183125 283183125 277266594 776508273 776508273 782103387 782103387 641591808 616450953 459098383 533908190 533908190 142902472 206359692 540928802 848299528 848299528 143511194 379693234 379693234 328723500 347322010 347322010 333369634 309913098 285350706 319726722 444489016 444489016 104122128 104122128 48436280 119877528 668541345 668541345 103290448 618239185 618239185 58060528 120998368 564271696 591136593 638010432 638010432 783344144 783344144 676484993 716703093 846205443 846205443 681304498 827975331 955953508 955953508 356645034 356645034 912708506 912708506 858944995 858944995 852092115 460489127 1069155784 1069155784 903750472 961616035 975311127 975311127 579994052 272894082 1045561858 1045561858 268435458 279969922 279969922 279130242 286265634 336593410 538248192 538783233 856252178 856252178 840558099 840558099 635811603 633813225 114293976 570677433 570677433 634545644 634545644 617746584 617746584 598282512 598282512 132656849 791424745 791424745 571287489 757471533 757471533 517805744 1070063834 1070063834 880877643 885996747 885996747 817106284 1024984623 1024984623 847562192 812387715 246340956 857906988 857906988 863371703 863371703 271593649 458533180 458533180 185560368 667362335 667362335 356982944 965153163 965153163 136775762 220541370 220541370 258414872 258414872 73893912 73893912 25296896 25301088 691147077 691147077 934346806 972043810 990454839 990454839 781254906 833619337 941752810 941752810 698628203 698628203 655408312 655408312 572113105 572113105 97540777 884750702 884750702 877135603 877135603 810614940 1048233301 1048233301 974819860 571609617 542125156 264241404 312476078 579072452 656666937 656666937 541110712 319422450 319422450 403303822 403303822 361930410 292905832 403045380 403045380 350138442 415572034 415572034 335803530 104906904 104906904 78734400 300685672 685248716 685248716 719454252 719454252 669127161 1021517833 1042419999 1042419999 874599433 878980812 951658311 951658311 663122032 663122032 547592769 299966946 646124152 646124152 641694553 546143233 546896384 546896384 154406446 377706096 377706096 293221016 389193634 389193634 139764302 415318776 415318776 345937532 189167408 244092520 244092520 131599708 814533699 1040722087 1065414108 1065414108 899769487 872691980 908801339 1021487921 1021487921 994055074 1009304847 1009304847 1009304847 767710690 341027370 43204130 107221426 121843896 254282526 254282526 387454604 488646590 488646590 424094902 424094902 165283712 165283712 299633378 299633378 396362802 396362802 42730704 344509642 344509642 4194432 67784473 641484577 659644313 659644313 69805520 604531393 641424320 656287312 656287312 670433625 670433625 656227032 101501992 101238080 29889536 29889536 4536448 31789056 31789056 4333920 21566048 23181856 28487840 32642016 32642016 27920000 25639008 18096224 27289024 27289024 26449664 26449664 26382752 26399328 31478848 60821552 60821552 303584906 303584906 540264705 540264705 79497416 958857519 958857519 124570760 763009196 763009196 717223905 945485893 945485893 673811525 673811525 583074011 1069075308 1069075308 920244694 920244694 1054812776 1054812776 320924551 973184710 973184710 874985739 874985739 604868105 965854488 965854488 839118867 839118867 77381723 542180032 1037092663 1037092663 883024403 883024403 189021898 1049103693 1049103693 217450354 359387183 545795410 858270832 858270832 512112896 408498714 611401996 734106514 734106514 426423723 426423723 954235244 954235244 874184873 604035416 598791074 269095512 314649874 325971434 325971434 414566666 414566666 238655184 370229872 469884942 469884942 437295814 405760006 405760006 483524638 1032772719 1032772719 840332891 772998779 772998779 387660603 489139468 489139468 386646328 589858272 808413504 808413504 1022212348 1022212348 938006616 219387928 71616648 117599408 117599408 97083464 50780328 93824544 116657112 116657112 115840600 115840600 103211584 42206560 385092993 913310619 915210899 915210899 806617163 860257000 860257000 829306850 1013745088 1013745088 958802242 696463461 802560765 984650679 984650679 773114397 718187021 684670149 307005576 369673242 369673242 537896028 646549573 646549573 850416436 951108423 951108423 484286279 927862800 927862800 894176427 842962200 842962200 776416195 166371504 698057796 698057796 627837912 787394013 787394013 259493884 681831001 681831001 747807305 747807305 714295597 481172814 814106777 983802150 983802150 495597373 477106990 477106990 990574637 990574637 726213653 726213653 902444174 902444174 726613173 726613173 646334484 646334484 551694441 551694441 982263978 982263978 568671549 568671549 569110832 569110832 749910957 749910957 758399940 874770699 875230483 875230483 1053006004 1053006004 1035471187 583311174 895932843 1049948787 1049948787 700629459 880960180 880960180 290690088 290690088 127595210 133000440 133000440 88472680 48585824 14985392 25116576 32454464 32454464 134479936 146407783 445662413 908148752 908148752 807286860 660393657 798565925 798565925 996294971 996294971 204378455 766122372 822240704 839083074 873152586 873152586 50553192 50553192 68173164 246366060 263691812 265347212 265347212 231444620 348787914 424170602 424170602 344238402 344238402 161106004 501663050 501663050 418371062 487467536 487467536 108079368 172264004 172264004 127443936 455137444 478262344 478262344 527581268 527581268 437915672 105696496 378104032 434381046 434381046 383789794 772166440 772166440 724880181 708741941 708714261 554377472 27078240 840257056 848611923 981508752 981508752 169206471 203481558 203481558 198232244 441586326 818172833 818172833 539137064 623428905 623428905 611979801 283251778 545968576 1036043012 1036043012 558893250 558893250 559073370 965874308 965874308 377622618 282335896 165937329 165937329 711129565 711129565 616772209 595291480 225499204 55568436 139072644 672776193 672776193 712617553 712617553 684917121 684917121 187331217 671178752 671178752 672229376 680620160 680620160 844718664 844718664 277365981 418431116 713294344 713294344 232867216 232867216 437277076 437277076 429003366 604275777 604275777 684246213 794448285 794448285 1029854378 1029854378 719326893 671722547 671722547 724492528 724492528 133469784 969010060 969010060 766117427 766117427 999275718 999275718 885867723 338953261 86641672 86641672 170105988 191240850 425073318 757125491 757125491 555965030 555965030 945068928 945068928 432867424 965814756 965814756 655882809 1067338587 1067338587 779029079 326274114 326421426 1054475079 1054475079 1044907167 1044907167 961670344 1058311599 1058311599 1007073408 889550959 893436075 893436075 255875907 356123036 356123036 948438964 978891556 978891556 409473037 409473037 399598230 399598230 828588216 939700347 939700347 665336736 1048342169 1048342169 852541846 852541846 780821944 780821944 690160229 949010954 949010954 273860446 273860446 736176852 754265037 754265037 153356580 153356580 78121280 604834180 604834180 140782601 212150604 212150604 182598352 947728776 947728776 216145172 216145172 2231296 2231296 271110144 288014858 288014858 146063040 492940228 492940228 219194046 256950972 707916560 1053369881 1053369881 258487791 520564400 522025020 522025020 188792846 296738148 360325866 393622440 393622440 298606490 274383056 65923536 65923536 21717408 21717408 277264674 277264674 71235280 364904754 375421288 375421288 373799280 373799280 540039304 540039304 440710736 885517898 885517898 1071909375 1071909375 1071694335 1071694335 168388075 0 367535680 650366922 650366922 72739464 78215432 81475272 154837312 672706864 687995701 687995701 343507455 682746693 902947189 902947189 1040236575 1040236575 922972192 721641504 721641504 486588462 1049976862 1049976862 851850714 851850714 513804812 513804812 218501824 218501824 164307520 164307520 474881376 474881376 109714502 346769856 443478216 443478216 105635512 359714400 359714400 291799472 291799472 237520418 924198387 924198387 627617409 627617409 415565236 367095690 367095690 711287168 711287168 293749766 811215188 963766305 963766305 746848673 746848673 555133090 683709140 683709140 576621547 75571272 818015056 842320851 842320851 575393920 575393920 46203008 117809162 913352738 913352738 544454796 544454796 138861057 285475240 291578274 291578274 223032492 223032492 208401804 684525735 684525735 616831968 616831968 216290205 705943633 705943633 646988310 534312059 327342322 329338304 950242385 950242385 596116593 664857177 664857177 238802725 39718924 675610665 675610665 158076540 158076540 137962564 553788160 554832417 555768320 555768320 3860736 3859712 3859712 110234136 110234136 210813660 473114970 473114970 522190894 522190894 433230034 470557728 488377910 488377910 289549714 289549714 249177284 249177284 545267811 545267811 877723600 877723600 666201497 614852937 246250521 226910784 226910784 664363712 788669600 788669600 232823932 136446484 87505704 615327840 615327840 124965816 1048818966 1048818966 439038747 246276929 453750596 453750596 407573583 764812071 835851164 835851164 744563085 868557214 1015021699 1015021699 828542165 626770615 791532980 791532980 845546809 845546809 234962078 573772696 573772696 1064329889 1064329889 151389232 585225721 585225721 583087125 943748328 1006682341 1006682341 998412350 967060276 925143180 925143180 214423807 1024431370 1024431370 960632921 960632921 298980066 498665314 958984556 958984556 688051106 503845908 520132352 520132352 151129294 246563184 246563184 190841268 280658128 280658128 404922532 404922532 522151880 522151880 385029760 394871114 394871114 641093700 682863885 818800787 818800787 462831784 471875738 973111621 973111621 667028088 667028088 639056409 509040780 270541180 785451407 785451407 773609985 348616581 377176232 585688257 585688257 1005412400 1005412400 860674930 352444458 408234630 408234630 621043955 898634572 939594403 939594403 1016150203 1016150203 160503936 714215839 714215839 339812490 303448624 330210330 330210330 37136944 37136944 84833344 84833344 72166536 207692448 253705788 253705788 152976412 135142404 51381456 233924746 277266594 410178438 410178438 782103387 782103387 641591808 710757469 710757469 615090053 533908190 708678844 788174704 788174704 848299528 848299528 580319788 306064754 306064754 328723500 374066322 374066322 351387472 351387472 160685668 234916072 234916072 106345368 104122128 104122128 48436280 146342148 668541345 668541345 140705980 618239185 618239185 208949572 208949572 757470192 757470192 638010432 638010432 783344144 783344144 657493470 1019791163 1019791163 556025026 556025026 815436930 955953508 955953508 376067472 376067472 912708506 912708506 858944995 858944995 852092115 460489127 1069155784 1069155784 903750472 961616035 975311127 975311127 579994052 738202256 1045561858 1045561858 268435458 268435458 2097154 256 0 0 570705058 860671155 860671155 1045489598 1045489598 956407993 951980901 471571759 143672650 570677433 570677433 634545644 634545644 617746584 617746584 598282512 598282512 54049956 229718872 229718872 229516634 453457974 453457974 517805744 1070063834 1070063834 880877643 885996747 885996747 817106284 1024984623 1024984623 539116742 415797505 246340956 285512480 285512480 879333807 879333807 915580673 915580673 458533180 185560368 667362335 667362335 356982944 965153163 965153163 136775762 448821858 470814954 470814954 82049144 23335272 226640662 226640662 978457042 978457042 766509928 766509928 972043810 990454839 990454839 794305088 138420797 35131904 3803408 401947666 401947666 655408312 655408312 572113105 572113105 653330134 759261071 759261071 826357475 826357475 810614940 810614940 248512577 248512577 473956450 473956450 264241404 312476078 312476078 206091684 182570224 182570224 173215824 134273572 403005440 403005440 402874752 270926338 269490434 269490434 210210506 210210506 210003980 210003980 104906904 104906904 70924096 16266784 149558340 569254785 569254785 387450426 384313002 1021517833 1042419999 1042419999 874599433 570689666 570689666 563092392 341870808 352457664 352457664 299966946 42013184 43201104 68854360 68854360 369644560 369644560 327279992 327279992 151426692 285357596 303148682 303148682 139764302 415318776 415318776 345937532 111811860 169086468 169086468 260604404 260604404 260572284 1065414108 1065414108 899769487 90823971 55260336 973195008 976824087 994055074 994055074 707924757 632001411 632001411 624026849 624026849 107221426 895616941 895616941 421532854 757936561 757936561 488646590 424094902 424094902 278536576 278536576 350693392 350693392 390994280 390994280 98387816 325989752 325989752 57078688 92036616 641484577 641484577 599548280 599548280 543332705 81666888 81666888 40764672 40764672 93346280 122077216 122077216 101238080 56446064 56446064 23471776 37918960 63390784 63390784 58435392 58435392 23181856 22094496 26347680 26347680 29434144 29434144 27289024 27289024 16339488 14957440 26382752 26382752 31478848 48924320 62051184 303584906 303584906 277033026 79497416 79497416 958857519 958857519 124570760 763009196 763009196 717223905 945485893 945485893 673811525 673811525 583074011 607184146 607184146 920244694 920244694 1054812776 1054812776 736103222 973184710 973184710 874985739 874985739 604868105 965854488 965854488 927741961 786655028 908628813 908628813 545333313 545333313 223739940 223739940 583341319 1040847903 1040847903 920601654 675797868 675797868 858270832 858270832 642253977 642253977 952126380 952126380 836505315 426423723 426423723 542511361 542511361 604035416 604035416 598791074 349770072 405417740 405417740 349506978 414566666 414566666 341525844 370229872 469884942 469884942 344023042 405760006 405760006 411805737 1032772719 1032772719 840332891 772998779 772998779 387660603 489139468 489139468 386646328 887804180 887804180 808413504 1022212348 1022212348 938006616 219387928 105735064 105735064 113378160 113378160 52361680 89020048 126878328 126878328 115840600 115840600 103211584 42206560 108250568 108250568 41153424 46225488 121637600 121637600 81807136 109187160 109187160 958802242 958802242 696463461 974576151 984650679 984650679 773114397 718187021 684670149 411196424 344084482 314692611 537896028 646549573 646549573 850416436 951108423 951108423 484286279 608305281 608305281 270806754 899615107 899615107 639671504 166371504 698057796 698057796 627837912 787394013 787394013 259493884 381857822 381857822 257500860 416294010 416294010 460066230 814106777 814106777 642029635 468739780 468739780 17957504 878843472 878843472 373477434 373477434 902444174 902444174 726613173 726613173 646334484 646334484 641949986 551694441 982263978 982263978 579543128 579543128 569110832 569110832 169107496 169107496 318293565 874770699 875230483 875230483 480956656 1035471187 1035471187 583311174 895932843 1049948787 1049948787 700629459 880960180 880960180 449314902 282273336 119091906 79691976 23724384 48585824 102339782 481325654 481325654 441917014 491133130 491133130 146407783 465575750 466942716 807286860 807286860 660393657 798565925 798565925 996294971 996294971 878979438 954571239 954571239 839083074 1026951503 1026951503 431786791 429067256 68173164 246366060 263691812 263691812 256853528 231444620 231444620 202478692 546167365 546167365 53655520 677857664 677857664 695464869 695464869 569376225 590195777 590195777 538252944 60376816 127443936 455137444 455137444 374131866 527581268 527581268 51843594 105696496 378104032 434381046 434381046 281329803 10744921 103462169 103462169 111715672 646620480 646620480 885466123 885466123 351223242 981508752 981508752 674237062 674237062 197181684 198232244 198232244 818172833 818172833 550903376 395216154 611979801 611979801 847547443 847547443 1036043012 1036043012 219177736 198251272 198251272 158373428 158373428 147719136 147719136 134317648 124254368 619505025 619505025 616772209 595291480 185355552 185355552 139072644 672776193 672776193 723333440 723333440 166493920 166493920 695255973 695255973 671178752 671137797 680620160 680620160 551322689 963756992 963756992 955027030 955027030 713294344 873141005 873141005 1032787884 1032787884 946476967 845812147 871532388 871532388 794448285 794448285 744624744 744624744 719326893 868197742 868197742 122131456 122131456 133469784 969010060 969010060 766117427 766117427 999275718 999275718 885867723 760229932 760229932 86641672 97989849 97989849 179249188 757125491 757125491 555965030 555965030 945068928 945068928 1012611695 1068368687 1068368687 604515342 757663577 757663577 383585930 326274114 326421426 771947576 771947576 174197520 195948593 644353637 644353637 521069848 672687754 672687754 217772269 237077644 237077644 196327216 196327216 176177220 176177220 214407256 409473037 409473037 399598230 399598230 365499695 365499695 213091212 184375640 250535388 637559054 637559054 639467537 780821944 780821944 690160229 949010954 949010954 640218200 640218200 964852935 964852935 853892196 579365892 853928415 906832923 906832923 604834180 411238872 411238872 212150604 182598352 993008952 993008952 718508199 558691016 688786496 688786496 538742921 826057792 826057792 751559430 751559430 492940228 434411526 541225016 707916560 1053369881 1053369881 975500013 975500013 71690376 557927080 557927080 335687692 335687692 108237202 46137344 46181696 48261248 48261248 27861760 21717408 350924842 350924842 277264674 106552754 364904754 375421288 375421288 373799280 373799280 540039304 540039304 948691423 948691423 765788225 799015293 799015293 508103355 18098126 879493272 924852539 924852539 875306250 365584090 72739464 78215432 81475272 554176704 677424161 687995701 687995701 343507455 682746693 902947189 902947189 1040236575 1040236575 922972192 721641504 799281838 799281838 917090074 917090074 851850714 851850714 513804812 513804812 218501824 218501824 164307520 520818842 520818842 474881376 437937758 428914500 428914500 470378202 470378202 67184640 67184640 67182600 79814856 79814856 924198387 924198387 760027507 760027507 415565236 92674152 331499952 711287168 1071347175 1071347175 981614547 981614547 201600704 201600704 129280216 129280216 50613000 546106563 546106563 360187818 858784921 858784921 842320851 610479361 610479361 910428451 910428451 913352738 913352738 544454796 544454796 492733828 492733828 291578274 381698226 381698226 47530612 163003236 426160266 615645124 685559493 685559493 387499578 387499578 646988310 646988310 748656725 791381085 791381085 696597936 256299300 50935056 50935056 50540592 36580640 24010240 4262944 4793472 24126464 24126464 19923744 559522560 559522560 41697792 41697792 36051216 11435328 11435328 110234136 110234136 104600664 473114970 473254268 522190894 522190894 407748608 470557728 488377910 488377910 505557940 505557940 249177284 249177284 545267811 545267811 877723600 877723600 666201497 614852937 438401750 533191462 533191462 664363712 788669600 788669600 526351543 653601753 653601753 352528209 590949779 905235435 1048818966 1048818966 479530386 430725684 424122438 895998666 895998666 707789407 835851164 1050673182 1050673182 868557214 868557214 807452931 380303640 161488176 791532980 791532980 845546809 845546809 540282914 453719094 453719094 875322471 875322471 151389232 585225721 585225721 583087125 943748328 1006682341 1006682341 998412350 889663519 925143180 925143180 214423807 287333250 607792024 607792024 348246704 453875790 498665314 958984556 958984556 688051106 411062500 520132352 520132352 512237142 253732920 253732920 245642740 304905496 345533512 404922532 404922532 522151880 522151880 296826763 924395067 924395067 545981561 614339707 917186634 917186634 543687632 847267150 973111621 973111621 373293210 152443428 509040780 509040780 270541180 785451407 785451407 977610820 977610820 847249619 377176232 580065220 580065220 451073491 352444458 352444458 91530530 425960236 425960236 898634572 939594403 939594403 438591538 160503936 160905828 303767532 376574874 376574874 335856456 401902226 401902226 122142368 122142368 99405288 67683336 184763932 187089560 207956364 207956364 240352284 240352284 192280752 207215360 207215360 203051268 203051268 211746372 211746372 610143885 710757469 710757469 615090053 206718392 708678844 788174704 788174704 845258810 845258810 580319788 377640096 306064754 277472322 374066322 374066322 351387472 351387472 308547702 502830590 502830590 469197452 54789304 54789304 53289004 218180912 218180912 119746872 140705980 140705980 139079872 208949572 208949572 757470192 757470192 556491169 38902904 785228828 785228828 657493470 1019791163 1019791163 556025026 556025026 883008394 940593685 940593685 888199489 415518997 335593482 286599714 286599714 286599714 424509586 424509586 277130620 562831600 562831600 725949537 725949537 706949397 818092622 818092622 738202256 1014235540 1014235540 207749388 207749388 888306241 888306241 100129376 570705058 860671155 952394347 1045489598 1045489598 956407993 951980901 471571759 143672650 1029556242 1029556242 795794877 94469728 291243266 291243266 143925404 143925404 262177445 553665201 634417145 634417145 647884377 647884377 465455976 465455976 548407621 548407621 899205095 899205095 1000384851 1000384851 948702279 1071569090 1071569090 945867408 945867408 722504328 879333807 879333807 915580673 915580673 65098832 1061828036 1061828036 346886540 346886540 505556296 505556296 535563774 535563774 470814954 470814954 124813692 124813692 226640662 226640662 978457042 978457042 766509928 766509928 537199018 1012401807 1012401807 794305088 381693990 1005923667 1005923667 945057936 945057936 918664329 918664329 786068588 786068588 753065364 759261071 759261071 320370889 419562022 795022122 977481879 977481879 273756355 622405161 920717257 922746939 922746939 693884304 693884304 712249744 712249744 291410058 291410058 236854812 402874752 402874752 514060246 514060246 407635974 407635974 210210506 210003980 281415296 310827090 349569040 349569040 67519872 48049872 48049872 387450426 387450426 384313002 338308992 109915280 358957608 658202186 661338072 661338072 587411505 587411505 847299107 847299107 308726690 612536840 612536840 606195273 606195273 847331352 847331352 327279992 343577120 343577120 117990664 117990664 77207112 59772720 147681376 168185924 168185924 42256464 169086468 169086468 260604404 1011876495 1011876495 976111876 976111876 828116096 883037311 924463163 973195008 976824087 976824087 686803510 483732174 632001411 632001411 624026849 624026849 408774168 895616941 895616941 421532854 757936561 757936561 120651936 120651936 54078224 278536576 278536576 350693392 350693392 390994280 390994280 98387816 389924848 389924848 96846584 96846584 92036616 50727168 599548280 599548280 626002016 655167913 655167913 639727296 657463449 657463449 581436264 122077216 67291312 56446064 56446064 23471776 37918960 63390784 63390784 540023105 565579265 565579265 559416993 559416993 676608517 691123845 691123845 679258885 148419825 578812596 578812596 549709540 33686064 10029824 48924320 62051184 62051184 122282152 122282152 33603600 29476496 18400800 57627968 122273104 122273104 861515736 861515736 833217891 806692179 808731140 808731140 508374363 283905474 72929258 634655600 634655600 854202276 854202276 736103222 736103222 416656756 763686987 881309730 881309730 886952090 927741961 927741961 786655028 908628813 908628813 540082807 587526972 587526972 683659100 683659100 1040847903 1040847903 920601654 1073230264 1073230264 641742150 641742150 642253977 642253977 952126380 952126380 836505315 405375525 902112512 902112512 24827808 26627520 26627520 349770072 349770072 405417740 405417740 393943512 453356710 453356710 482648572 482648572 470034458 470034458 504548950 505207322 505207322 335710440 96751626 112356024 365095296 609495002 609495002 386601270 394398088 394398088 379622546 887804180 887804180 621076810 621076810 312236897 271496528 109716504 105735064 113332032 113378160 113378160 93459048 89020048 126878328 126878328 83638960 65695304 86648200 108127128 108250568 108250568 129136864 129136864 121637600 121637600 102487752 566415585 619398357 1057337837 1057337837 220110759 974576151 974576151 810946577 806754819 680475717 680475717 411196424 436583567 805754883 805754883 688632514 990508207 990508207 932014778 932014778 496425582 731706889 731706889 912089280 912089280 899615107 639671504 47071513 547155552 547155552 58837521 40481776 65135088 65135088 33722400 42016848 160006484 195573780 306587716 460066230 460066230 421541958 939782151 939782151 980683671 980683671 899023687 878843472 453400712 453400712 318843050 72266774 130527260 272662530 272662530 641949986 641949986 532685216 285216850 243478857 579543128 579543128 265306972 265306972 169107496 169107496 80249572 241104144 241104144 333109504 385762200 385762200 178940160 248549514 342909650 407962330 407962330 366125674 529035432 529035432 449314902 278472340 114300488 79691976 54527632 106845456 106845456 481325654 481325654 441917014 491133130 491133130 102384964 465575750 465575750 451621004 451621004 439088406 111557134 79158592 207888896 878979438 878979438 954571239 954571239 803822692 1026951503 1026951503 431786791 429067256 22800088 49147344 107887088 107887088 148504713 148504713 202478692 202478692 546167365 711805536 735525397 735525397 677857664 695464869 695464869 569376225 590195777 590195777 538252944 46389328 40109776 384748800 384748800 374131866 369623296 369623296 81530880 80158408 72092808 341082112 341082112 281329803 121658780 690777380 690777380 162430308 646620480 646620480 885466123 885466123 550897600 811863104 811863104 806693379 674237062 457314486 1070256630 1070256630 1063916991 550903376 550903376 124051376 156082493 627128416 847547443 847547443 823168640 961511606 999502455 999502455 651301593 999430140 999430140 455759834 271204540 124254368 124254368 100596056 131645344 137214848 168297140 185355552 185355552 538213188 538213188 680331984 723333440 723333440 271051015 831613763 831613763 695255973 564756865 672968197 672968197 553914433 548930625 963756992 963756992 955027030 955027030 662966777 873141005 873141005 1032787884 1032787884 946476967 845812147 871532388 871532388 641341708 768627045 768627045 690631797 690631797 1025228396 1025228396 841676251 157002687 100689000 1013905791 1013905791 824535857 569404628 569404628 971747074 971747074 760229932 760229932 202138568 606375071 606375071 533776484 533776484 196136116 272929424 308327204 643642344 745731159 1040636167 1068368687 1068368687 951987778 178393428 680468550 680468550 671977310 580095052 771947576 771947576 118476829 100206876 190605624 205446924 521069848 672687754 672687754 758646573 800311117 800311117 775107357 310329234 597104868 597104868 584494352 535383864 218664996 218664996 204628240 236188188 236188188 213091212 189139200 250535388 250535388 232070065 639467537 736203796 736203796 270287440 270287440 321392768 640218200 640218200 964852935 964852935 853892196 579365892 853928415 906832923 906832923 408955822 411238872 411238872 167850820 123151640 993008952 993008952 718508199 558691016 688786496 688786496 538742921 826057792 826057792 751559430 751559430 434411526 434411526 553672856 553672856 843167163 843167163 975500013 975500013 265109532 592023042 592023042 504313735 913002264 913002264 618496704 350656840 274401920 34719120 34719120 29061760 350924842 350924842 375375152 375375152 293095850 394352776 394352776 22340314 202855240 552084054 704145253 948691423 948691423 1068568399 1068568399 1062561371 1062561371 805635565 879493272 924852539 924852539 875306250 365584090 564257362 564257362 95630184 554176704 677424161 682096965 682096965 15061061 10511616 9036864 7873920 7873920 7866240 404125864 490943022 799281838 799281838 408992966 408992966 62919522 323882220 492834960 492834960 371204488 411052912 411052912 520818842 520818842 437937758 437937758 942316629 942316629 470378202 470378202 289804772 310642770 868423699 868423699 406974084 692879799 692879799 760027507 760027507 326254084 92674152 331499952 698251923 1071347175 1071347175 981614547 981614547 376568920 376568920 116765336 13895872 100828672 546106563 546106563 360187818 858784921 858784921 539572608 610479361 610479361 910428451 910428451 661944224 815956836 946825574 946825574 823844111 1062944771 1062944771 1070409861 1070409861 982335660 608383682 758057280 758057280 685559493 754450656 754450656 554881569 340315906 340315906 748656725 791381085 791381085 696597936 698983465 698983465 536870977 536870977 151145541 44620856 672061449 672061449 195283276 549564752 561379057 561379057 589626128 590549508 590549508 135653892 135541816 254598972 254598972 218946356 58815280 196225288 473254268 473254268 407748608 407748608 407710854 407372934 407372934 505557940 505557940 83572680 430548808 430548808 232833644 818440992 818440992 164948247 438401750 438401750 533191462 533191462 106380396 263160504 263160504 526351543 653601753 653601753 352528209 590949779 905235435 905235435 751511125 749607421 430725684 424122438 895998666 895998666 628220841 628220841 1050673182 1050673182 564207969 807452931 807452931 420526388 713580655 713580655 111899864 374684209 540282914 910386211 910386211 922947872 922947872 388383024 130419296 130419296 209752076 209752076 511869992 511869992 411632780 411632780 365629604 673653260 673653260 361767521 354470186 354732330 354732330 348246704 453875790 453875790 411564102 411564102 346177682 346177682 251531168 512237142 512237142 253732920 253732920 245642740 304905496 345533512 345533512 336614656 336614656 73027672 296826763 924395067 924395067 545981561 614339707 917186634 917186634 543687632 847267150 847267150 642144274 386318888 743496376 743496376 474131757 209401740 166600164 169640576 977610820 977610820 847249619 726221044 747176444 747176444 647615114 647615114 268693506 22680482 488559395 662084282 702929020 702929020 1059537081 1059537081 537969283 537969283 548462973 548462973 651333970 917443250 917443250 438406120 438406120 580654637 580654637 81364528 873157162 873157162 794274721 1045496851 1045496851 761334817 761334817 555559340 207215360 203051268 781996612 781996612 203803008 239132780 260046972 260046972 613909096 613909096 577988273 56626384 89913000 103757440 103757440 377640096 377640096 245136924 181553224 218017792 280848532 280848532 204546828 644960868 757013472 757013472 469197452 709651597 709651597 237235340 578882877 578882877 744712452 744712452 618084241 618084241 139710996 139710996 536900641 661164345 661164345 64545520 785228828 785228828 561829729 267290813 555784512 555784512 336013796 883008394 940593685 940593685 888199489 966754225 966754225 702096672 754955237 754955237 626575017 879033444 879033444 562831600 562831600 725949537 725949537 706949397 985991303 985991303 441789646 1014235540 1014235540 612634369 490808195 888306241 888306241 165675492 567586668 740036109 981738556 981738556 826377218 755368485 755368485 599915798 351122419 1029556242 1029556242 824303907 681308371 644981924 291243266 144962936 171556176 262177445 553665201 634417145 634417145 647884377 647884377 240322980 240322980 548407621 548407621 899205095 899205095 1000384851 1000384851 948702279 1071569090 1071569090 945867408 945867408 722504328 722504328 167790140 408035336 865096220 865096220 1061828036 1061828036 457982559 346886540 505556296 505556296 535563774 535563774 380735844 380735844 124813692 124813692 97700828 64392032 164980448 164980448 160696929 568863904 568863904 1012401807 1012401807 562110561 381693990 1005923667 1005923667 945057936 945057936 1045743877 1045743877 786068588 786068588 753065364 880829961 880829961 832310883 832310883 991036350 991036350 977481879 344326155 624233801 920717257 922746939 922746939 693884304 693884304 712249744 712249744 395504928 395504928 332112402 236854812 299006090 514060246 514060246 407635974 407635974 205969548 287529608 287529608 375459464 375459464 349569040 102667616 48049872 62915064 88672696 104072520 104072520 56177168 244765220 674985560 674985560 661338072 1011755850 1011755850 926760863 847299107 847299107 308726690 612536840 612536840 797733236 797733236 847331352 847331352 826872787 343577120 703641579 703641579 336122842 336122842 168004950 408633548 423939312 423939312 42119872 42119872 119126288 119126288 1011876495 1011876495 976111876 976111876 828116096 883037311 924463163 1048544652 1048544652 1018903771 686803510 483732174 410189968 449316054 449316054 414216850 414216850 412701784 412701784 135168 185144706 459867446 459867446 442122574 376147070 291743936 291743936 325918410 325918410 282208160 326626376 335614194 389924848 389924848 96846584 103224113 587907049 587907049 667733616 667733616 631065041 655167913 655167913 639727296 657463449 657463449 581436264 54732824 53023680 3016448 3016448 19938816 19938816 21247072 23865344 540023105 565579265 565579265 559416993 559416993 676608517 691123845 691123845 679258885 148419825 578812596 578812596 549709540 102648216 121763888 121763888 52048088 104630352 104630352 101240656 33603600 5277312 93458944 93458944 122273104 122273104 861515736 861515736 833217891 806692179 808731140 808731140 508374363 283905474 72929258 289723584 290131522 299376674 299376674 276824130 187452292 187452292 763686987 895568613 895568613 833619502 833619502 555247459 1032616531 1032616531 664827168 671998233 671998233 587526972 683659100 683659100 963014140 963014140 226369452 1073230264 1073230264 115419392 115419392 11539288 806710921 806710921 930099437 930099437 821300323 902112512 902112512 612554153 808162689 1064441772 1064441772 377623266 377623266 247662358 393943512 453356710 477607388 482648572 482648572 470034458 470034458 504548950 505207322 505207322 78378024 620814693 620814693 537511109 513638629 513638629 315621978 394398088 394398088 436246598 436246598 971295193 971295193 742208125 742208125 613580872 176646168 13137344 113332032 113332032 108296232 93459048 76563568 46408976 38248512 40844688 65695304 86648200 108127128 108127128 13754584 129136864 129136864 120589624 120589624 102487752 566415585 619398357 1057337837 1057337837 537923907 574754961 810946577 810946577 806754819 680475717 898745584 898745584 583010970 805754883 805754883 688632514 990508207 990508207 932014778 932014778 496425582 731706889 731706889 912089280 912089280 622278361 593696056 593696056 547155552 547155552 110663240 110294072 110294072 60390420 404015618 404015618 173218896 490272974 490272974 373558328 335608170 335608170 939782151 939782151 980683671 980683671 899023687 384207312 453400712 453400712 673337678 867019055 1017377055 1017377055 235249832 335565473 392368561 392368561 763569456 763569456 548017421 59246616 57429008 57429008 254443928 254443928 141575088 147004604 169027392 169027392 209891528 209891528 178940160 50330196 50330196 85111008 176386568 176386568 100737028 182050880 182050880 114300488 114300488 54527632 54527632 106845456 112578336 112578336 71951640 94820712 94820712 168036372 168036372 118035684 314800356 314800356 210237516 210237516 70799360 204554504 207888896 207888896 89078952 539101248 636036585 646026712 646026712 573101261 245319565 219953932 128040392 117691468 197470464 197470464 170082448 93054176 56344960 54568592 56496640 711805536 735525397 735525397 706955296 706955296 62668309 38592448 5234688 14725136 46389328 46389328 88882336 236813764 236813764 110229592 513456260 513456260 407068611 774960949 774960949 474314051 474314051 482954371 121658780 690777380 690777380 162430308 539678016 814282241 814282241 550897600 550897600 811863104 811863104 806693379 636313305 636313305 1070256630 1070256630 1063916991 1025902962 505059080 563000111 563000111 627128416 627128416 942743040 942743040 961511606 999502455 999502455 651301593 999430140 999430140 455759834 271204540 143696560 86614272 100596056 100596056 137214848 168297140 168297140 708019909 708019909 563244276 731390000 731390000 683017493 853154643 853154643 999218295 999218295 721190823 689465381 689465381 672514561 672514561 291521856 450987748 450987748 262770875 262770875 652897935 652897935 153158912 153158912 947145920 947145920 494192856 876669920 876669920 768627045 768627045 690631797 929566699 1025228396 1025228396 871403344 871403344 636761658 1013905791 1013905791 824535857 528787140 522883080 971747074 971747074 676446925 676446925 699475078 699475078 606375071 551849408 533776484 196136116 272929424 272929424 643642344 745731159 1040636167 1040636167 951987778 951987778 299226104 680468550 942754822 942754822 580095052 912578583 912578583 1022669110 1022669110 896733643 961456139 961456139 675102101 846583349 846583349 800311117 800311117 775107357 310329234 597104868 597104868 584494352 535383864 184816048 180035344 243568756 243568756 218440156 189139200 189139200 218335380 218335380 506408024 506408024 750071625 750071625 810310090 1066458596 1066458596 857347600 576243345 991903893 991903893 539236790 208394268 118268164 251658300 251658300 211878672 211878672 203497740 178393856 177209940 345074328 345074328 89008680 89008680 96709184 96709184 286720064 294724194 294724194 28310880 28310880 16826400 207785996 553672856 553672856 843167163 843167163 698721858 698721858 265109532 592023042 592023042 1012845148 1012845148 913002264 618496704 350656840 274401920 141889088 55124128 48365632 48365632 19927776 375375152 375375152 293095850 394352776 394352776 273732928 349250250 552084054 704145253 705954709 728329895 1068568399 1068568399 1062561371 1062561371 830352149 830352149 708316686 533400761 416561350 728446865 728446865 564257362 153955620 537277237 537277237 87904708 723595472 723595472 589472064 735167072 735167072 714105652 726794920 726794920 660051093 850458114 850458114 418680943 408992966 239129938 184716176 492834960 492834960 371204488 411052912 411052912 374025770 374025770 791143692 791143692 942316629 942316629 420382098 420382098 289804772 310642770 868423699 868423699 406974084 692879799 692879799 448537462 531943892 531943892 60074536 374698968 374698968 480686720 480686720 373541186 373541186 376568920 376568920 116765336 104903640 100828672 230936252 499072110 499072110 258839724 189032884 189032884 317303936 332106754 332106754 314806576 661944224 815956836 946825574 946825574 823844111 1062944771 1062944771 1070409861 1070409861 1058998890 1058998890 779180999 779180999 675024645 754450656 754450656 554881569 296585281 226493736 226493736 183291348 189392052 222450960 698983465 698983465 536870977 536870977 151145541 78421112 782157080 790286189 790286189 551982912 561379057 561379057 589626128 590549508 590549508 135653892 255678993 255678993 555003709 555003709 545532736 540091137 506827011 424139216 1060188635 1060188635 315293898 804664773 804664773 206640452 445306220 445306220 479728714 536871683 941131020 941131020 818440992 1009915213 1009915213 179168612 67402654 774248733 774248733 225903309 225903309 344600922 344600922 850929024 850929024 849544992 44610112 751511125 751511125 1029693261 1029693261 809162499 917030235 917030235 789071574 628220841 133723455 390636359 670376987 670376987 507301662 884118023 884118023 969685460 969685460 929403889 929403889 910386211 910386211 922947872 922947872 388383024 230817972 193204968 177444928 110549592 437016592 437016592 981903458 981903458 193527879 673653260 673653260 827392105 827392105 368202634 759374151 759374151 159994788 18535968 135130116 135130116 120542028 234128528 242909240 242909240 120045864 120045864 125524752 125524752 107879832 41931560 125832416 125832416 124681384 142673492 952633930 1008731641 1038616365 1038616365 879493941 235412527 118423600 402667564 402667564 642144274 642144274 386318888 743496376 973388929 973388929 795847999 795847999 458017974 383344187 194193233 726221044 726221044 747176444 747176444 647615114 647615114 268693506 67423368 488559395 662084282 702929020 702929020 1059537081 1059537081 537969283 537969283 548462973 770586424 770586424 917443250 917443250 438406120 438406120 580654637 623508168 623508168 873157162 873157162 794274721 1045496851 1045496851 761334817 761334817 555559340 202269696 106029616 781996612 781996612 666821629 666821629 109476972 131078224 613909096 613909096 611625864 767628905 767628905 564867080 659231004 659231004 340721920 346859594 346859594 181553224 98194424 137403268 204546828 644960868 757013472 757013472 191812012 709651597 709651597 237235340 578882877 578882877 744712452 744712452 729405144 618084241 249561564 249561564 125968728 661164345 661164345 164344288 781566705 781566705 245815644 436672022 436672022 285529124 610573797 610573797 153256246 730123741 730123741 966754225 966754225 945327500 817103698 911500011 911500011 879033444 879033444 837371922 342214736 342214736 371262592 914497922 985991303 985991303 441789646 643564314 643564314 612634369 490808195 490808195 427823654 427823654 292438194 410965368 981738556 981738556 737051729 737051729 599915798 599915798 351122419 830176582 830176582 824303907 681308371 644981924 100329208 144962936 171556176 171556176 215482512 222383548 229657344 229657344 226805868 156684832 261584616 261584616 76701708 230198304 230198304 21986644 200922098 397652346 517872686 517872686 545010560 545010560 242893460 242893460 141627784 408035336 865096220 865096220 698248588 698248588 457982559 144070468 272483924 272483924 485435582 485435582 152124910 326191156 492077968 492077968 57096624 18299424 22085760 573702208 582095697 582095697 568863904 964707606 964707606 944581767 614912165 614912165 684007287 684007287 54077232 1045743877 1045743877 633242502 699550924 740281572 880829961 880829961 832310883 832310883 991036350 991036350 628890760 344326155 624233801 1025026020 1025026020 567719774 576339441 576339441 363915302 393747422 395504928 395504928 332112402 127043136 299006090 299006090 122013936 368525290 368525290 94638930 287529608 287529608 375459464 375459464 345097744 102667616 21698592 62915064 88672696 104072520 104072520 161409184 244765220 674985560 674985560 575023828 1011755850 1011755850 926760863 616134649 446931192 258458638 231760821 551230504 797733236 797733236 411159258 826872787 826872787 503907420 703641579 703641579 351801370 351801370 225844140 408633548 423939312 423939312 392692896 504889534 504889534 502062336 97815112 271480824 276022320 321631154 321631154 306475288 523780904 1048544652 1048544652 1018903771 318785290 814912953 814912953 410189968 919799681 919799681 414216850 818491225 818491225 478423046 542443317 542443317 459867446 442122574 376147070 291743936 291743936 345099912 345099912 282208160 326626376 335614194 335614194 285677906 380374362 380374362 587907049 670868672 670868672 667733616 631065041 827585026 827585026 619769281 618850649 103132752 103132752 54732824 56936880 61256000 61256000 19938816 19938816 273383746 283655426 283655426 32056800 32056800 696347584 696347584 17585152 21164064 21493920 23420928 23420928 23382432 34000936 87519160 102648216 121763888 121763888 52048088 104630352 129107616 129107616 116004312 295326248 295326248 281690874 433381452 433381452 361771098 222556556 240994988 240994988 875760928 875760928 564737800 279457154 358364042 890965001 890965001 791217933 791217933 575153680 575153680 367433856 367433856 895568613 895568613 891113227 891113227 555247459 1032616531 1032616531 664827168 671998233 671998233 205629528 205629528 575806592 942358876 942358876 503415817 489943854 562740166 562740166 76949584 11539288 806710921 806710921 930099437 930099437 821300323 821300323 367889737 612554153 808162689 1064441772 1064441772 377623266 377623266 247662358 288095680 439126422 477607388 477607388 310427738 377536594 377536594 376602768 268781718 268781718 286103672 620814693 620814693 537511109 513638629 513638629 390594850 390594850 303247566 436246598 436246598 971295193 971295193 742208125 742208125 613580872 176646168 8646720 44161152 102297488 102297488 41444976 46408976 46408976 38248512 40844688 61647840 62166336 62166336 29022048 108808288 108808288 26009208 8994880 16777216 16777248 16777248 77493816 77493816 517479968 982989078 982989078 813962532 967712103 1072569451 1072569451 898745584 898745584 838898181 838898181 642790726 642790726 528024779 410654598 920304994 1058012223 1058012223 658259295 398985232 393496208 393496208 300950842 593696056 593696056 581208136 581208136 118627081 110294072 110294072 60390420 404015618 404015618 192991056 490272974 490272974 373558328 335608170 335608170 674706197 1000513683 1000513683 916211098 706481685 706481685 403330543 403330543 673337678 867019055 1017377055 1017377055 688408037 335565473 746717616 746717616 763569456 763569456 588850737 166942745 166942745 211855673 261726329 261726329 141575088 154399524 154399524 159293120 159293120 142007172 102904452 249638480 249638480 170366040 176386568 176386568 100737028 182050880 182050880 244452944 244452944 47216336 47216336 22755072 112578336 112578336 71951640 94820712 94820712 168036372 168036372 118035684 314800356 314800356 210237516 210237516 350394896 350394896 204554504 904500642 904500642 703301645 703301645 646026712 646026712 573101261 245319565 146410184 142133760 170297428 197470464 197470464 170082448 134955009 178584404 178584404 547053477 699800421 699800421 36832144 706955296 706955296 697667329 697667329 565731712 565731712 549552704 15654336 88882336 279055296 383261128 383261128 513456260 513456260 407068611 978215732 978215732 474314051 474314051 482954371 229319955 1065488511 1065488511 528691263 984298856 984298856 814282241 541201601 541201601 39991568 139073938 139073938 636313305 636313305 629393769 629393769 1025902962 1025902962 620022729 620022729 1011874959 1011874959 745731999 942743040 942743040 942619911 157245875 39960648 176296020 231735824 231735824 260293324 260293324 279475546 279475546 365547952 365547952 302865814 302865814 413217746 708019909 708019909 563244276 731390000 731390000 683017493 853154643 853154643 999218295 999218295 721190823 689465381 689465381 672514561 672514561 704950100 704950100 839193912 1007094815 1007094815 925108539 791225596 981934512 981934512 947145920 947145920 494192856 876669920 998273772 998273772 916095156 916095156 929566699 929566699 698219579 871403344 871403344 636761658 619655593 619655593 730699326 730699326 522883080 93386086 761515880 761515880 221252261 699475078 699475078 551849408 551849408 384602992 137396996 425739268 425739268 519649246 519649246 122742114 256191592 256191592 299226104 299226104 637592080 942754822 942754822 466491612 912578583 912578583 1022669110 1022669110 896733643 961456139 961456139 675102101 864216152 889926699 889926699 590365740 590365740 218661681 10036800 20323104 184470004 184816048 184816048 153114736 243568756 243568756 218440156 232923308 232923308 218335380 218335380 506408024 506408024 750071625 750071625 810310090 1066458596 1066458596 857347600 576243345 991903893 991903893 539236790 722081053 722081053 221250348 659894653 659894653 108176328 178393856 178393856 543989633 543989633 274732866 559742601 559742601 500280934 500280934 137429544 228929868 228929868 210053408 28310880 16826400 474010048 474010048 457543732 947598862 947598862 222831524 222831524 163627236 44656052 134500168 1012845148 1012845148 370422400 370422400 185534692 185534692 260208716 260208716 58840720 270869554 270869554 8195730 87419688 87419688 271181058 272294410 273732928 349250250 349250250 271605768 143580228 152951840 152951840 142951940 189801012 189801012 830352149 830352149 708316686 533138361 414515270 728446865 728446865 53878577 153955620 537277237 537277237 25239648 723595472 723595472 589472064 735167072 735167072 714105652 726794920 726794920 660051093 850458114 985926874 985926874 1003594455 1007743749 1007743749 614470525 787611977 887096032 887096032 450892066 374025770 374025770 791143692 791143692 700487828 700487828 420382098 420382098 151668788 151668788 811544802 811544802 448898612 542426752 542426752 448537462 531943892 531943892 60074536 374698968 374698968 597726945 708744917 708744917 776045345 776045345 209993800 273029455 778307997 778307997 661258389 947057311 947057311 869352904 869352904 813813761 813813761 621794762 889263258 932317586 932317586 271642560 271642560 285313088 285313088 722018448 722018448 692585637 367818980 1058998890 1058998890 779180999 779180999 675024645 1059866080 1059866080 982305879 898189799 898189799 667685986 690202917 690202917 771906900 771906900 83894560 75703544 111681760 111681760 78421112 782157080 790286189 790286189 551982912 551982912 544057632 544057632 195254868 195254868 62069553 255678993 255678993 771768416 771768416 545532736 540091137 506827011 424139216 1060188635 1060188635 315293898 804664773 804664773 193801730 445306220 445306220 951073040 951073040 951059271 941131020 740890126 1009915213 1009915213 455837344 825922065 825922065 774248733 225903309 225903309 344600922 344600922 850929024 850929024 849544992 44610112 303707664 303707664 1029693261 1029693261 809162499 917030235 917030235 789071574 128689934 133723455 390636359 670376987 670376987 507301662 884118023 884118023 969685460 969685460 929403889 929403889 660863146 900194761 900194761 654395714 230817972 230817972 193204968 211116740 211116740 437016592 437016592 981903458 981903458 874675311 33689616 33689616 840962307 840962307 368202634 759374151 759374151 399453542 399453542 474973218 480193518 480193518 413274438 451741326 451741326 353033648 91102632 125524752 125524752 107879832 7347736 4194432 4194432 2107396 142673492 952633930 1008731641 1038616365 1038616365 879493941 235412527 118423600 402667564 839387288 839387288 520099973 529008664 529008664 973388929 973388929 914590006 914590006 488982653 383344187 194193233 355675163 618201563 618201563 390729867 284601186 284601186 67423368 67423368 75747362 285405256 285405256 268509186 1057005788 1057005788 251707431 130146552 67285088 770586424 770586424 286677586 142997510 139030084 139030084 247953476 623508168 623508168 570302433 575472696 575472696 185082889 739733248 739733248 185763616 202269696 222892840 222892840 611083461 611083461 737753133 737753133 176303217 63025888 63025888 611625864 611625864 767628905 767628905 564867080 659231004 872729385 872729385 996020756 996020756 462554711 340415768 340415768 860332536 860332536 1026271727 1026271727 191812012 191812012 221255168 221255168 138676228 138676228 664097565 729405144 729405144 210202896 249561564 249561564 234940240 149151932 164344288 164344288 191676428 191676428 160692658 436672022 436672022 463919478 610573797 629707242 629707242 730123741 730123741 669532666 945327500 945327500 817103698 911500011 911500011 93330002 837371922 837371922 356852880 342214736 371262592 914497922 914497922 874645956 440664450 947235282 947235282 583286928 583286928 420610150 988951291 988951291 311947998 410965368 410965368 567204933 737051729 737051729 352374096 352374096 539578668 909295605 909295605 402391475 275677578 341859714 341859714 188669936 188669936 55341892 64487488 64487488 229657344 239191648 239191648 154147692 261584616 750268660 750268660 594981053 546098241 13943681 3249728 8597568 11868928 11868928 201392128 201392128 750813239 750813239 450937082 986824742 986824742 745597571 912031780 912031780 455469366 535162906 1048822149 1048822149 485435582 485435582 152124910 326191156 492077968 492077968 103430400 41192032 29774304 582118688 582118688 582095697 545357003 964707606 964707606 944581767 614912165 614912165 544692962 544692962 336599042 86456616 63962472 366012408 571768314 583665865 583665865 383800265 78779208 78779208 68440936 811867272 811867272 717753536 717753536 1025026020 1025026020 567719774 576339441 576339441 175929984 175929984 390078272 390078272 107925682 81401544 381875200 381875200 370348626 41104272 41104272 287161408 287161408 34603536 35441664 35441664 38536208 38536208 52305488 56487600 62633696 62633696 43858768 161409184 161409184 195335168 195335168 59718768 59718768 24458112 2355456 330699664 330699664 659765696 659765696 568728033 251882560 251882560 121778284 58791122 503907420 503907420 470615068 276632010 351801370 351801370 225844140 376727772 376727772 362534610 392692896 504889534 504889534 502062336 104157288 271480824 271480824 40173090 81141728 835283696 835283696 432081008 512442314 512442314 908286200 908286200 814912953 695341989 1019388236 1019388236 470828098 818491225 1041827415 1058547654 1058547654 542443317 207169164 207159732 57096624 307841448 336524346 345099912 345099912 73335394 277423170 277423170 77291840 82709194 380374362 380374362 350691304 670868672 670868672 571695153 361960658 827585026 827585026 645189393 645189393 84682769 73929736 93673360 93673360 61256000 61256000 21285024 6625440 273383746 294399011 824845985 824845985 812781985 696347584 696347584 950010183 950010183 704378853 704378853 169856257 807174932 850728500 850728500 107549328 107549328 10199488 44221034 332186082 357047978 395445304 395445304 295326248 295326248 313557784 433381452 433381452 361771098 490782853 1054902463 1054902463 972897115 875760928 564737800 279457154 358364042 890965001 890965001 791217933 791217933 575153680 671817971 671817971 367433856 812229507 882281728 891113227 891113227 79531883 923472936 923472936 573150834 162545664 162545664 138986628 138986628 575806592 658118457 973083836 973083836 894047403 562740166 562740166 661466553 661466553 661466553 100204769 1050234760 1050234760 814838348 101587992 252513092 252513092 227921764 227921764 127926376 127926376 208142360 208142360 205521036 234953052 234953052 205729932 241686812 373559692 376602768 406327128 406327128 507298062 508683142 508683142 137670250 496264292 496264292 287327494 390594850 403378894 403378894 85070144 365148768 365148768 273992322 350633128 350633128 278331984 25741120 47943360 47943360 102297488 120932016 120932016 81363424 27329664 20038176 46187136 46187136 123402440 126498328 126498328 108808288 108808288 89179160 89179160 98243224 98243224 568315641 568315641 97859336 568393888 982989078 982989078 813962532 967712103 1072569451 1072569451 869145843 580128896 838898181 838898181 436254036 528024779 645923982 697914111 920304994 1058012223 1058012223 658259295 660391673 660391673 383300072 1022258097 1022258097 696799301 696799301 581208136 562078212 706029152 706029152 782563892 782563892 782145940 192991056 138906720 217787888 217787888 52781056 133764557 674706197 1000513683 1000513683 916211098 706481685 969961336 969961336 580360774 580360774 291859966 720093570 720093570 688408037 229900296 746717616 746717616 738932529 738932529 588850737 166942745 166942745 211855673 261726329 261726329 140254688 154399524 154399524 159293120 187168261 187168261 102904452 589597069 589597069 170366040 675293228 709124305 789201009 789201009 647516701 771955856 771955856 618029568 618029568 16882736 89923472 89923472 108975200 108975200 99111224 89577768 312536335 734261493 1044832805 1044832805 979322158 455287158 450317414 350394896 216144324 904500642 904500642 744665485 744665485 676443112 670663509 552243372 237185420 142133760 142133760 170297428 170297428 52954212 134955009 134955009 178584404 178584404 547053477 699800421 699800421 632911700 619385577 547763648 697667329 697667329 565731712 565731712 549552704 38889872 33930944 279055296 383261128 383261128 309864656 271655682 331357938 978215732 978215732 302294264 414974848 414974848 229319955 1065488511 1065488511 528691263 984298856 984298856 848298641 848298641 805516179 805441539 1192451 304349456 304349456 268435458 269419584 842053568 842053568 585128744 620022729 902871265 1011874959 1011874959 745731999 831505404 831505404 304747794 194643286 609329284 609329284 115499696 115499696 71500600 305136018 305136018 652137257 652137257 365547952 765589219 765589219 413217746 449607942 751252689 787030277 787030277 206046348 191119840 413749938 413749938 458356375 458356375 694826468 694826468 738665472 738665472 646036065 704950100 704950100 839193912 1007094815 1007094815 925108539 791225596 981934512 981934512 907649331 1067450844 1067746240 1067746240 998273772 998273772 916095156 916095156 211059296 740134524 740134524 614425352 614425352 543792120 543792120 704397951 730699326 765609181 765609181 343965952 761515880 761515880 555608972 555608972 342223242 356614722 356614722 209082212 137396996 425739268 473587846 519649246 519649246 492398346 492398346 256191592 439938374 471974196 637592080 637592080 605102601 699319496 1028166061 1028166061 828080446 522221219 127302904 187794192 187794192 86192424 897307826 897307826 889926699 172041734 270164098 390135426 390135426 441939100 441939100 184470004 153114736 153114736 75702312 126302492 199569716 232923308 232923308 82432564 215448772 473615276 473615276 420357326 455036412 455036412 44094656 176591664 460916560 460916560 320716880 419636230 419636230 722081053 722081053 221250348 659894653 659894653 180412692 180412692 155841744 543989633 543989633 274732866 559742601 559742601 500280934 500280934 137429544 228929868 228929868 666310325 666310325 303666580 474010048 474010048 457543732 947598862 947598862 881424286 881424286 873411724 873411724 355442672 955672794 955672794 685981922 685981922 351184204 351184204 487029640 487029640 58840720 270869554 270869554 8195730 87419688 87419688 282092992 370852768 370852768 237260112 237260112 369937238 369937238 152951840 152951840 142951940 845155458 988158423 988158423 587597488 543039105 533138361 414515270 841753603 841753603 382796329 400630266 825897877 825897877 249310100 671127761 1017538736 1017538736 738199309 582002662 582002662 873743958 873743958 524497086 738211164 985926874 985926874 1003594455 1007743749 1007743749 614470525 787611977 887096032 887096032 450892066 50466864 50466864 572571921 572571921 321041667 189607331 189607331 467242018 467242018 415831584 811544802 811544802 448898612 542426752 542426752 470229388 470229388 422822432 99751840 25691232 161136641 597726945 708744917 708744917 776045345 776045345 209993800 273029455 778307997 778307997 661258389 947057311 947057311 869352904 869352904 813813761 813813761 621794762 889263258 1011882342 1011882342 744730474 403433157 828557892 828557892 722018448 722018448 692585637 676669557 676669557 991953207 991953207 701564802 749208488 1059866080 1059866080 982305879 898189799 898189799 667685986 690202917 690202917 771906900 771906900 520857184 75703544 302546962 302546962 69935512 793902264 793902264 745285069 945050384 945050384 544057632 544057632 195254868 195254868 135340548 135340548 87216936 771768416 771768416 637592412 637592412 197403040 197403040 178596180 105045492 52568376 132780036 134354424 134354424 85933608 36124944 951073040 951073040 951059271 940572672 338846085 738383439 738383439 455837344 825922065 825922065 229712249 505577616 937685499 937685499 126952056 126952056 70389544 197021558 197021558 274568536 274568536 357159274 482633100 482633100 460098962 460098962 319780224 155894948 155894948 143866884 139338304 347753852 347753852 62703402 73145192 310661416 727374782 727374782 797171574 797171574 356757546 356757546 462651400 462651400 121675892 163813888 211116740 251023768 318151380 398492696 398492696 947992631 947992631 856082736 768737394 840962307 840962307 263440484 381131504 381131504 1032797995 1032797995 767734152 767734152 563688234 413274438 451741326 451741326 353033648 243800052 100064232 59087376 39334208 19737888 70067600 70067600 86781898 303892482 896803605 896803605 460728976 989852425 989852425 1063767462 1063767462 895859978 895859978 839387288 994050231 994050231 998247012 998247012 506296374 914590006 914590006 524673856 512139928 616571088 618709449 824168641 893251371 893251371 893201955 359975850 359975850 290815528 381343888 381343888 285405256 381731034 612520083 612520083 647021145 647021145 340222085 935651366 935651366 391112251 362787466 305713154 305713154 247953476 610604688 610604688 986313314 986313314 118657208 843117059 843117059 739733248 605410960 576215552 222892840 222892840 253696504 567572348 737753133 737753133 176303217 35862876 43201104 705447744 705447744 125574520 133742632 133742632 912237779 912237779 872729385 996020756 996020756 462554711 340415768 340415768 860332536 860332536 1026271727 1026271727 878255376 878255376 225371965 225371965 192677388 774963744 774963744 664097565 547231873 611427512 611427512 234940240 234940240 125503436 121144040 132698272 191676428 191676428 122067184 220790868 262424874 463919478 463919478 934048440 934048440 594875642 594875642 669532666 669532666 400590329 113432169 355763082 912624289 922882107 935533657 935533657 356852880 71888896 303779872 548594826 921699291 921699291 643647317 947235282 1042344405 1042344405 607429524 939554816 988951291 988951291 491094418 684205092 684205092 100712472 491700356 491700356 100696088 86077720 539578668 909295605 909295605 858699520 903698786 903698786 341859714 188669936 188669936 146425748 146425748 64487488 571501593 571501593 239191648 2680316 151556944 750268660 750268660 594981053 546098241 13943681 9585218 278959106 486057288 486057288 1022976395 1022976395 1042367115 1042367115 450937082 986824742 986824742 745597571 912031780 912031780 455469366 535162906 1048822149 1048822149 176984248 158100028 158100028 467510042 467510042 319630386 384934586 384934586 846555666 846555666 583393291 313064784 817772910 817772910 433211703 348420618 348420618 821383618 821383618 544692962 336599042 425076788 425076788 366012408 571768314 583665865 583665865 923816451 923816451 883450976 883450976 811867272 811867272 717753536 717753536 876263104 876263104 729480675 914108149 914108149 461355185 100276200 390078272 390078272 270178226 354113178 381875200 381875200 370348626 393290682 393290682 377966618 377966618 353816690 397388928 397388928 358206736 104408256 52305488 56487600 62633696 62633696 51827216 43858768 145856756 597382704 597382704 581478496 717603776 880062991 880062991 548077025 510836238 659765696 762540596 762540596 590879292 590879292 390413454 827205657 827205657 315236400 775956481 775956481 83244128 78779392 79169352 145031424 145031424 135473696 150344196 165810660 165810660 95440968 104157288 323876880 323876880 382958802 382958802 835283696 835283696 1015943785 1015943785 1054538943 1054538943 908286200 695341989 695341989 1019388236 1019388236 470828098 915681180 1041827415 1058547654 1058547654 485041488 149488064 472408242 472408242 307841448 336524346 336524346 285560440 285560440 127707170 77291840 77291840 403587428 495003754 495003754 226897922 6365568 6365568 906105328 906105328 566957107 618403768 645189393 645189393 86846760 120914176 120914176 95166160 26591504 25504672 21285024 6806400 6570272 294399011 824845985 824845985 812781985 159995140 162826464 950010183 950010183 853488867 853488867 461611728 871118855 871118855 850728500 375902968 375902968 638227003 638227003 332186082 889263193 889263193 395445304 294929944 77371968 313557784 313692160 313692160 487201310 490782853 1054902463 1054902463 972897115 229963570 471958352 530579838 530579838 798693432 798693432 768215517 768215517 236401220 671817971 671817971 258870816 812229507 812229507 807706184 354294794 354294794 86091874 1008787536 1008787536 950551819 842180385 196866357 555823957 555823957 489820974 973083836 973083836 894047403 562199583 638279721 661466553 977569924 994800823 994800823 1050234760 1050234760 814838348 203735152 252513092 252513092 227921764 227921764 127926376 127926376 208142360 208142360 205521036 94441764 14823552 6427008 37753732 373559692 373559692 814098563 814098563 507298062 945362519 945362519 101720072 67174936 67174936 605654795 879300362 1024517765 1024517765 671918892 273712112 329302386 329302386 350633128 350633128 90788672 25741120 47943360 47943360 4950288 120932016 120932016 81363424 17393456 60098496 60098496 64747248 123402440 126498328 126498328 73682544 97601904 97601904 89179160 98243224 98243224 568315641 575194057 626926488 626926488 607772000 547430721 456278305 385225803 626989466 815217219 815217219 580128896 202518583 202518583 77404694 583853541 645923982 732586678 986746102 1052796845 1052796845 777476307 660391673 660391673 383300072 1022258097 1022258097 769835508 769835508 1006665764 1006665764 706029152 706029152 782563892 782563892 782145940 126647508 126647508 217787888 220328456 220328456 137466116 51640864 51640864 952144044 952144044 302880813 969961336 969961336 580360774 580360774 291859966 720093570 720093570 608585164 608585164 381226132 381226132 213654068 34990608 51666976 51666976 31457760 783505672 783505672 189384848 41985152 210163788 210163788 215992320 215992320 187168261 100584740 589597069 775341184 775341184 675293228 709124305 789201009 789201009 647516701 771955856 771955856 618029568 618029568 27127832 27127832 303694050 367576082 367576082 253818930 513895290 513895290 734261493 1044832805 1061188706 1061188706 455287158 450317414 535171574 535171574 472060640 695568770 744665485 773984272 773984272 670663509 552243372 237185420 177864848 150906464 150906464 22113252 44011680 59900192 110604192 110604192 191151072 263812140 263812140 632911700 632911700 619385577 547763648 611200009 611200009 549526337 149360384 149360384 38889872 33930944 273072640 273072640 309864656 309864656 306883264 444881473 444881473 290658498 278470887 458761367 458761367 230270266 327221850 528605310 1039261822 1039261822 946906105 848298641 858334882 858334882 805441539 139998098 304349456 653029059 653029059 332041467 842053568 842053568 782329136 890842391 902871265 902871265 350298570 322674218 539637523 539637523 456200978 456200978 609329284 609329284 184594992 184594992 119914552 305136018 305136018 652137257 652137257 315622098 765589219 765589219 69344576 76287048 751252689 787030277 787030277 736796942 736796942 574816433 891535768 962672006 962672006 694826468 694826468 738665472 1021426679 1021426679 370279970 688201810 688201810 322771665 199571568 943738875 943738875 840167832 840167832 835047947 1067450844 1067746240 1067746240 807729706 925818171 925818171 734078503 1044412440 1044412440 740134524 436382341 934148953 934148953 662185986 997739053 997739053 765609181 765609181 343965952 278507788 270721800 555608972 555608972 628728192 628728192 564219360 339216900 473972878 473972878 473587846 473587846 246027612 492398346 492398346 209715208 606602588 606602588 471974196 388022690 723831144 723831144 1028166061 1028166061 80234791 127302904 127302904 248135996 248135996 205980944 897307826 897523944 897523944 549143827 270164098 390135426 390135426 441939100 441939100 33706048 33706048 33554448 25302144 88816704 88816704 102895896 436754494 436754494 381081168 473615276 473615276 329001334 100979320 85067744 33034792 271351984 271351984 320716880 320716880 419636230 419636230 293865570 284348418 284348418 371345288 371345288 303564306 276320960 174727476 154370740 413290636 413290636 371068690 357305514 357305514 122794512 208939176 460716862 460716862 666310325 666310325 303666580 303666580 368789608 419599859 455920831 455920831 881424286 881424286 873411724 873411724 355442672 955672794 955672794 685981922 685981922 351184204 351184204 487029640 487029640 58325104 45383552 15689984 22278816 22278816 71783076 474439564 474439564 970275239 970275239 836077999 810657888 587900455 437514774 1043197215 1043197215 845155458 988158423 988158423 913019434 1049554217 1049554217 836314851 841753603 841753603 801508668 819387075 1043747855 1043747855 858469827 671127761 1017538736 1017538736 738199309 582002662 582002662 873743958 873743958 992507977 1048784991 1048784991 534921430 534921430 597984144 597984144 240683817 79741128 219185892 219185892 180404436 484968442 484968442 572571921 572571921 321041667 189607331 189607331 849092624 849092624 415831584 788572865 788572865 163627718 274272599 274272599 470229388 470229388 422822432 99751840 31001704 214761760 214761760 27363460 88211848 88211848 80228424 67183624 67183624 12652608 8597568 157307300 157307300 291541082 534908934 539776192 831467265 831467265 815318595 474916300 1011882342 1011882342 744730474 403433157 828557892 828557892 720539355 389108514 587497604 676669557 676669557 991953207 991953207 701564802 749208488 749208488 543181036 549630072 839385209 839385209 477364578 594014614 594014614 585646499 520857184 520857184 15340992 302546962 302546962 69935512 793902264 793902264 745285069 945050384 945050384 592254609 592254609 159398960 159398960 194589221 219964945 219964945 688970576 688970576 637592412 637592412 197403040 197403040 633672957 633672957 231655868 801426481 801426481 534041822 534041822 189209784 764034110 902306507 940572672 940572672 613743810 878392971 878392971 291239586 569450712 599786436 599786436 505577616 937685499 937685499 431039334 765196242 765196242 557046712 988648500 988648500 274568536 357159274 482633100 482633100 460098962 460098962 319780224 595318377 595318377 545752313 545752313 347753852 347753852 332769716 76165584 418600348 727374782 727374782 797171574 797171574 878715283 878715283 847340448 462651400 121675892 159845984 205521668 251023768 318151380 421303874 984358004 984358004 948755780 948755780 805826375 768737394 500282184 263440484 381131504 381131504 1032797995 1032797995 767734152 767734152 563688234 165806148 165806148 160187428 243800052 243800052 199548852 205962216 205962216 92761200 130683128 130683128 86781898 303892482 896803605 896803605 460728976 989852425 989852425 1063767462 1063767462 895859978 895859978 852627686 994050231 994050231 998247012 998247012 448849211 212454066 524673856 524673856 761596593 761596593 815472443 824168641 893251371 893251371 893201955 359975850 359975850 290815528 381343888 381343888 135345460 615266128 615266128 612520083 647021145 647021145 340222085 935651366 935651366 644212652 650953436 650953436 305713154 160642573 229460932 877657227 986313314 986313314 287157410 843117059 843117059 605410960 605410960 576215552 8479232 182629280 451168562 709807508 713102620 872537319 872537319 817899979 942751179 1056256207 1056256207 781516823 378419204 378419204 912237779 912237779 365715378 550738786 550738786 278109667 23138752 25374816 73482504 73482504 994184380 994184380 878255376 1046269599 1046269599 483867955 427404996 774963744 774963744 226765185 805401806 805401806 646608516 646608516 282830803 183099452 183099452 176305216 132698272 122067184 122067184 84592736 84592736 345913491 647414785 947433941 947433941 594875642 594875642 570425361 23075512 36650256 113432169 355763082 912624289 922882107 935533657 935533657 277426240 71888896 128553664 548594826 921699291 921699291 643647317 619753584 1042344405 1042344405 607429524 939554816 939554816 491094418 823398000 823398000 866436467 866436467 838255064 838255064 862808530 862808530 823986083 823987819 823987819 858699520 903698786 903698786 213520464 213520464 128090936 146425748 146425748 42467396 571501593 571501593 629580121 629580121 643174512 643174512 662188223 950535495 950535495 691915138 819545408 819545408 486057288 486057288 1022976395 1022976395 1042367115 1042367115 156817374 317719506 317719506 1048755248 1048755248 478823060 478823060 399193338 131219524 176984248 408619706 408619706 400362258 467510042 467510042 384852778 384934586 384934586 846555666 846555666 665524241 837892090 837892090 817772910 433211703 913135743 992283398 992283398 821383618 422062316 307442322 580266225 580266225 434192662 669671954 669671954 358516698 923816451 923816451 883450976 883450976 607497600 813076160 906678885 906678885 876263104 876263104 804263786 1060832837 1060832837 806429187 555365082 100276200 85073890 270178226 354113178 354113178 339928632 210829724 393290682 393290682 377966618 377966618 353816690 397388928 397388928 358206736 104408256 15987648 26215008 51259936 328468658 328468658 169619648 319229446 597382704 597382704 581478496 717603776 880062991 880062991 548077025 510836238 560581784 794288137 794288137 590879292 590879292 390413454 827205657 827205657 399505170 775956481 775956481 334176730 295963682 178389312 528484608 528484608 478286100 478286100 442636620 434180278 381954240 838371227 838371227 995718223 995718223 953581446 953581446 704690356 1015943785 1015943785 1054538943 1054538943 199147555 145907816 189928464 189928464 101385216 135268360 915681180 1007954136 1007954136 804324218 732171045 141041902 472408242 472408242 348665454 170597512 318595010 318595010 285560440 399984178 399984178 152016876 520495174 520495174 495003754 952107207 952107207 838926514 906105328 906105328 1063559606 1063559606 593332289 668249681 668249681 595968648 120914176 95166160 37737568 36475648 6806400 21250048 285640834 285640834 287447040 287447040 268439840 140788548 162826464 329286841 759336557 853488867 853488867 461611728 871118855 871118855 327684110 375902968 375902968 638227003 638227003 330957896 889263193 889263193 310413312 75913328 93499506 263905234 263905234 261125406 487201310 487201310 346358324 263612874 229802176 229802176 471958352 530579838 530579838 791730996 791730996 781918465 735197381 872810007 872810007 444864005 258870816 743448653 807706184 807706184 614346304 643871280 657642297 1008787536 1008787536 950551819 842180385 789667371 789667371 555823957 489820974 625021375 625021375 562199583 562199583 857298078 1064563701 1064563701 994800823 994800823 622511289 404393095 341453712 203735152 132016784 132016784 140313600 140313600 283191590 391193274 464586678 464586678 458818902 403233814 403233814 438957334 438957334 529998696 529998696 814098563 814098563 1023741340 1023741340 945362519 989919278 989919278 946216223 897206443 879300362 1024517765 1024517765 671918892 318747968 474250062 474250062 190915690 229150528 229150528 100146688 100146688 44353872 67486712 67486712 39982016 83984664 83984664 60098496 60098496 80808792 80808792 64870672 100148344 100148344 97601904 97601904 543691905 543691905 557641088 557641088 615304521 626926488 626926488 607772000 568873344 778383821 778383821 626989466 815217219 815217219 635446577 635446577 552830252 667677945 685087551 685087551 732586678 986746102 1052796845 1052796845 869873547 807065105 598872634 806325041 806325041 386934226 769835508 1017151640 1017151640 1006665764 419482726 420004902 420004902 277381220 103315552 126647508 126647508 173693124 220328456 220328456 137466116 575918929 575918929 952144044 952144044 271377498 709739376 709739376 1036813435 1036813435 129127988 983228928 983228928 832711103 608585164 938700275 938700275 915322671 354851264 934250204 934250204 328882077 783505672 783505672 164661384 250978344 250978344 210163788 215992320 215992320 111363584 0 6969152 775341184 775341184 575195677 78220560 216655896 550621200 550621200 176177753 0 78269544 78269544 57868800 27127832 303694050 367576082 367576082 417710672 513895290 513895290 334108146 334108146 1061188706 1061188706 518657502 518657502 535171574 535171574 472060640 695568770 695568770 773984272 773984272 339964143 204126280 205846404 205846404 150906464 150906464 22113252 44011680 44011680 34116072 128744960 191151072 191151072 16190412 0 8585472 8585472 2109504 65664 142746496 142746496 12202112 12202112 44587264 44587264 5556864 318750290 318750290 47708880 306883264 444881473 444881473 302272784 308519440 458761367 458761367 230270266 686544877 686544877 1039261822 1039261822 946906105 825374225 858334882 858334882 842212114 842212114 537006081 653029059 653029059 332041467 656535412 656535412 782329136 890842391 890842391 350298570 350298570 332973232 277873218 302646530 456200978 456200978 444229280 251777072 184594992 184594992 119914552 119914552 386924728 386924728 315622098 315622098 303678868 303678868 495663052 495663052 241639366 241639366 498857838 736796942 736796942 863101875 891535768 962672006 962672006 683872388 1038091032 1038091032 1021426679 1021426679 250302743 612386440 612386440 322771665 739775376 943738875 943738875 840167832 840167832 835047947 899991915 899991915 497076431 190452487 925818171 925818171 734078503 1044412440 1044412440 369522526 273204354 934148953 934148953 662185986 997739053 997739053 244339596 100697360 100697360 92772392 49332368 30657793 23381985 628728192 628728192 564219360 339216900 473972878 473972878 287988838 361419882 361419882 442234518 726844990 772923933 772923933 606602588 321423400 388022690 723831144 723831144 724469815 724469815 693503876 674952165 845568999 1054364627 1054364627 984452670 980986980 897523944 897523944 549143827 252413342 744594708 744594708 1072132164 1072132164 448946244 38506512 194770004 194770004 88816704 193801668 415370484 436754494 436754494 381081168 381081168 329001334 329001334 85067744 184566580 439894720 439894720 271351984 54545666 6890880 28050690 293865570 293865570 284348418 284348418 371345288 371345288 303564306 276320960 175687360 27874544 413290636 413290636 371068690 340395936 340395936 189979424 208939176 460716862 832046691 832046691 994888887 1072186761 1072186761 786484137 727189173 591922325 576194193 303564419 1574400 68164892 68164892 107228802 205985806 533602378 533602378 339162748 115325062 52289280 498733950 498733950 310484434 354515082 354515082 339067962 337466136 71783076 474439564 474439564 970275239 970275239 836077999 810657888 587900455 437514774 1043197215 1043197215 475917188 475917188 913019434 913019434 1049554217 1049554217 836314851 493298362 493298362 801508668 819387075 1043747855 1043747855 858469827 314779121 484181864 514327134 514327134 497299328 497299328 537302304 556584225 992507977 1048784991 1048784991 713645323 907094730 907094730 843843826 936641765 936641765 779671703 681708742 203719878 484968442 484968442 565867381 982170421 982170421 810195970 810195970 849092624 849092624 33623635 68490435 286076931 1008179233 1013917637 1013917637 475478670 756884480 756884480 623124072 623124072 214761760 737922113 737922113 729035697 792980365 792980365 198051796 198051796 733477749 733477749 645233589 563270241 1034228365 1034228365 1026842892 831467265 831467265 815318595 295610273 7906176 298247554 298247554 290632768 437363472 493425702 493425702 389108514 343060608 336404752 667364716 667364716 859153712 859153712 193512564 542154072 542154072 549630072 839385209 839385209 560920946 594014614 638982681 638982681 425966869 392802809 927482267 927482267 788945147 819565670 819565670 134277188 134277188 956614336 956614336 660089996 735918325 735918325 553588752 194589221 219964945 219964945 629470309 629470309 615033176 263529597 161745252 152179236 633672957 633672957 231655868 801426481 801426481 534041822 534041822 364300034 764034110 902306507 902306507 481798823 681389579 878392971 878392971 291239586 291239586 599786436 599786436 42074248 113381592 359673876 431039334 765196242 765196242 557046712 988648500 988648500 325560784 325560784 77961272 128021592 128021592 223925780 223925780 595318377 595318377 545752313 545752313 218782410 332769716 814412250 814412250 810074496 810074496 371763409 283476040 278921538 878715283 878715283 847340448 240656592 193142808 159845984 203206464 220591760 220591760 421303874 984358004 984358004 948755780 948755780 805826375 326245042 349385418 349385418 315622352 315622352 320505636 431149926 431149926 339584840 339584840 534254722 534254722 409470516 409470516 190340460 199548852 598895080 598895080 567593872 303748626 303748626 280495938 654093024 1060988591 1060988591 358034273 704202209 704202209 2447688 501678500 501678500 876512336 876512336 852627686 856425060 856425060 578996292 578996292 466010203 330361038 436715831 761596593 761596593 815472443 815472443 895241265 895241265 894847265 123608585 591978545 591978545 570576048 570576048 600187968 615266128 615266128 599327661 440610854 693174384 693174384 432019971 644212652 851524999 946806995 946806995 768497893 768497893 206674542 877657227 912071185 912071185 287157410 340631690 356957864 356957864 39634320 8179584 8479232 266719345 914583743 1038495963 1038495963 872537319 872537319 817899979 942751179 1056256207 1056256207 781516823 427170528 378419204 325134888 429360274 429360274 550738786 550738786 854596805 854596805 276975897 772152342 973524051 973524051 994366552 994366552 1046269599 1046269599 483867955 959570727 959570727 481610574 885559173 944313859 944313859 646608516 659126059 659126059 627722169 627722169 176305216 790892741 790892741 104485248 189322116 189322116 345913491 886791888 947433941 947433941 873937419 873937419 333581283 637538576 637538576 606212361 606212361 644402392 644402392 648247675 648247675 394274544 125242720 128553664 639295913 639295913 117070560 613320129 619753584 619753584 303155928 128098480 873517192 873517192 383232720 823398000 823398000 866436467 866436467 838255064 838255064 862808530 862808530 823986083 823987819 823987819 657196064 657196064 618335376 618335376 772801540 772801540 184162240 184162240 13231296 38903936 38903936 629580121 741612096 741612096 643174512 662188223 950535495 950535495 825903880 825903880 819545408 534535760 204522240 446711448 446711448 1006388206 1006388206 369148887 317719506 317719506 1048755248 1048755248 902423641 902423641 399193338 155317290 170517780 408619706 862226835 862226835 400362258 384852778 384852778 284269746 319685024 319685024 665524241 665524241 837892090 837892090 446473565 401261178 913135743 992283398 992283398 709631474 709631474 302530442 580266225 580266225 434192662 669671954 669671954 106218440 911217827 911217827 563366248 563366248 297533931 813076160 906678885 906678885 320966694 476459992 804263786 1060832837 1060832837 806429187 555365082 117476512 117476512 172132788 241518892 255181368 255181368 210829724 210829724 49357776 62051184 62051184 178895360 242386852 242386852 208131504 64689616 64689616 21217280 8339328 328468658 328468658 169619648 319229446 556797232 556797232 552673729 287819824 951617608 951617608 324059826 327271776 629508928 794288137 794288137 420121734 138469456 272375888 272375888 399505170 399505170 376703898 376703898 334176730 330706192 286397090 528484608 528484608 478286100 478286100 442636620 434180278 381954240 838371227 838371227 995718223 995718223 953581446 953581446 512989231 358143096 423920256 423920256 644931094 791838980 791838980 716834307 716834307 485504077 582760207 582760207 1007954136 1007954136 804324218 732171045 160189484 142082724 348665454 348665454 234187464 318595010 318595010 93292808 399984178 399984178 152016876 520495174 520495174 314646549 952107207 952107207 838926514 838926514 816849602 1063559606 1063559606 593332289 668249681 668249681 595968648 111387840 111387840 70525608 36475648 90222464 342917280 342917280 285640834 287447040 287447040 268439840 73280352 20987910 329286841 759336557 759336557 1023496201 1023496201 828995333 352338816 151322836 63252720 342684168 372410386 372410386 62668800 353894490 353894490 369266722 384108840 384108840 263905234 1013034347 1013034347 781155219 471587716 931803053 931803053 922751020 922751020 664889767 953262382 953262382 791730996 791730996 781918465 735197381 872810007 872810007 580652081 184947104 743448653 743448653 614346304 614346304 643871280 657642297 657642297 630215800 630215800 565470309 859972500 959656743 959656743 680211525 985809349 985809349 984258883 984258883 1072587979 1072587979 1064563701 297416612 297416612 255984172 771896352 771896352 50837688 200869804 200869804 137444136 202253056 283191590 391193274 464586678 464586678 458818902 420342822 420342822 529081470 529081470 529998696 529998696 296958510 53033786 1023741340 1023741340 453611034 989919278 989919278 946216223 897206443 421890701 374974464 373606554 318747968 318747968 474250062 474250062 190915690 229150528 229150528 100146688 100146688 56709104 91902576 91902576 39982016 83984664 83984664 48480896 49431120 80808792 80808792 32482160 100148344 100148344 102454097 572183737 591561104 591561104 557641088 557641088 615304521 615304521 597266009 568332864 691655556 778383821 778383821 587304962 348165567 551686960 635446577 674845320 674845320 1007970068 1007970068 685087551 590881664 883500034 883500034 869873547 869873547 807065105 598872634 806325041 806325041 995919580 995919580 1017151640 1017151640 763674677 763674677 612681852 782547048 782547048 590083940 129936252 93158848 49468368 44699008 179448736 179448736 575918929 575918929 646623232 646623232 271377498 709739376 709739376 1036813435 1036813435 129127988 983228928 983228928 832711103 477253323 938700275 938700275 915322671 354851264 934250204 934250204 328882077 758291089 758291089 164661384 378930882 378930882 91435944 204335412 204335412 200355873 200355873 596643713 596643713 258611236 759176352 759176352 707555053 548927845 546661784 547051088 578814033 578814033 569508224 57868800 17826032 43343680 43855440 347433946 417710672 417710672 387981443 660677049 866960345 923355408 923355408 518657502 518657502 218239200 213909708 132264016 886542652 886542652 789608538 677545028 677545028 672845268 205846404 205846404 135097120 157812132 157812132 192481764 192481764 161416176 128744960 129233784 139985576 218629164 228066324 231416460 231416460 144442992 67838216 143601920 143601920 139008388 138611328 44587264 44587264 35016576 318750290 318750290 47708880 278220946 307821506 307821506 302272784 308519440 308519440 87517448 136521445 686544877 686544877 647180744 647180744 626070929 33554721 41943120 814878976 842212114 842212114 833360194 833360194 832446307 1015397930 1015397930 923083029 954624186 954624186 1018032539 1018032539 991266101 991266101 923361511 790653935 661337529 661337529 605042608 256901888 120980236 87429392 103072018 287424650 386924728 631292193 631292193 318863354 554362211 554362211 815404432 815404432 241639366 241639366 498857838 498857838 440475776 863101875 950601680 950601680 472393176 472393176 1038091032 1038091032 1073483775 1073483775 530579838 612386440 612386440 112760409 739775376 739775376 843670021 843670021 35238547 637637145 637637145 680542248 764461677 764461677 300731874 483915528 795350744 795350744 369522526 369522526 273204354 280766336 339065544 339065544 281615496 605816656 650906841 650906841 100697360 229952132 256379572 256379572 245137416 13157568 80614976 80614976 48160464 503316960 503316960 480248142 391466063 714991341 735439421 735439421 994354843 994354843 879757108 346368330 346368330 147648223 433509556 1060117774 1060117774 693503876 1053306251 1053306251 1054364627 1054364627 984452670 980986980 600296404 449066124 77594828 252413342 744594708 744594708 1072132164 1072132164 448946244 38506512 194770004 194770004 204477728 251879972 522897676 522897676 206051698 268772616 404976488 496026222 496026222 76620360 422372232 439894720 439894720 305259282 11374162 6890880 270927952 312611154 312611154 30796512 272679488 272679488 11572418 14206868 175687360 175687360 151683556 424857228 424857228 339154856 274123176 274123176 241291104 265628412 391778521 832046691 832046691 994888887 1072186761 1072186761 786484137 727189173 591922325 576194193 303564419 539720330 1042154904 1042154904 107228802 205985806 533602378 533602378 442658962 477199212 477199212 498733950 498733950 343975600 354515082 354515082 339067962 337466136 242009294 405348732 433666704 433666704 227656648 880848674 880848674 473882382 473882382 243325654 209640452 209640452 358667916 391448584 391448584 913694765 913694765 756466204 756466204 254925851 821481000 902485227 902485227 635646441 749220035 886047660 886047660 621679297 881201523 881201523 448268314 349440738 349440738 875461717 875461717 713645323 713645323 907094730 907094730 843843826 936641765 936641765 779671703 681708742 203719878 385426926 385426926 565867381 982170421 982170421 810195970 810195970 851969024 851969024 14454784 68490435 286076931 1008179233 1013917637 1013917637 475478670 756884480 756884480 623124072 623124072 86448192 737922113 737922113 729035697 792980365 792980365 218136640 218645504 733477749 733477749 645233589 563270241 1034228365 1034228365 1026842892 386939528 371730651 371730651 557223713 557223713 461075909 203925898 171040784 437363472 493425702 910979449 910979449 525237936 978842658 978842658 749027833 859153712 859153712 324279374 324279374 260199432 797028464 797028464 560920946 560920946 386318883 638982681 638982681 425966869 392802809 927482267 927482267 788945147 819565670 819565670 134277188 134277188 956614336 956614336 660089996 735918325 735918325 553588752 3631396 1961472 85625184 85625184 79617864 79497004 161745252 161745252 152179236 154589248 154589248 86163560 67620096 83886120 83886120 364300034 364300034 564064076 564064076 540460321 531175868 681389579 681389579 420596741 960024581 960024581 462431351 637010963 974660353 974660353 525541491 477246149 477246149 210965210 31196224 276967586 276967586 376407290 495870220 495870220 455093932 455093932 320679474 186061830 40535680 40535680 279582035 919362747 919362747 889368907 814412250 814412250 810074496 810074496 371763409 283476040 679408457 679408457 580103380 580103380 562332592 715902476 768656392 768656392 251889668 220591760 248899860 248899860 808257095 808257095 274155524 545462787 545462787 349385418 349385418 437512768 437512768 963668333 963668333 824758240 824758240 753176646 534254722 534254722 409470516 409470516 114559704 100137960 598895080 598895080 567593872 303748626 303748626 280495938 654093024 1060988591 1060988591 358034273 704202209 704202209 330586724 864645236 864645236 985448452 985448452 586323566 856425060 856425060 797053132 578996292 545401121 452061847 452061847 546527362 546527362 906498385 906498385 895241265 895241265 894847265 353068208 591978545 591978545 570576048 570576048 747055964 859308299 859308299 440610854 440610854 693174384 693174384 432019971 269523730 851524999 946806995 946806995 768497893 768497893 772280372 772280372 559490065 407005869 18612266 78999112 87918890 271706640 271706640 89340688 89340688 266719345 914583743 1038495963 1038495963 780324957 599949484 179055884 684674732 684674732 538184193 599550015 599550015 908192315 908192315 679002299 679002299 877503674 877503674 854596805 854596805 276975897 772152342 973524051 973524051 994366552 994366552 518684768 126097424 443957401 959570727 959570727 481610574 885559173 944313859 944313859 271061603 659126059 659126059 627722169 627722169 133223848 790892741 790892741 104485248 189322116 189322116 279734224 886791888 886791888 808455170 873937419 873937419 620634881 637538576 637538576 606212361 606212361 559076001 834736474 834736474 648247675 394274544 125242720 125242720 639295913 639295913 117070560 613320129 613320129 46583008 46583008 52459648 52459648 47454448 273864800 424725120 454092868 570462785 580047441 580047441 701217985 701217985 160983436 771714145 771714145 642919889 657196064 657196064 618335376 618335376 772801540 772801540 218313345 253290236 257517288 650378401 650378401 49729536 741612096 741612096 551983401 134519205 134217732 214191276 825903880 825903880 534535760 534535760 204522240 446711448 446711448 1006388206 1006388206 937738242 728681631 367005043 204165056 805704843 902423641 902423641 413773240 242573116 207230604 375345714 862226835 862226835 374671376 374671376 350489034 381954074 381954074 333777842 598292922 649143129 649143129 566477470 760267702 760267702 588549435 110846694 334367893 709631474 709631474 602249408 602249408 686550677 686550677 562036833 303656480 303656480 120895368 899327018 899327018 215494020 215494020 671132544 671132544 304992327 320966694 320966694 405299478 463476516 463476516 447742806 342792970 333952080 333952080 23556450 6326576 201363496 201363496 85998216 85998216 27080320 27080320 42666224 171344960 171344960 56605360 56605360 64689616 64689616 30628240 8339328 57678016 62266224 62266224 92213800 556797232 556797232 552673729 367120416 951617608 951617608 95702895 84149024 629508928 629508928 420121734 420121734 9036864 272375888 272375888 92086210 70486018 376703898 376703898 330706192 330706192 286397090 272435700 215525620 215525620 136364292 159455420 256254052 256254052 226509380 84984360 201375756 792875020 792875020 182080244 423783668 1063088740 1063088740 423920256 644931094 791838980 791838980 716834307 716834307 715327190 715327190 582760207 236529232 245631324 261656424 261656424 160189484 142082724 228105828 234187464 234187464 116110584 116110584 51098776 99710984 99710984 34379840 211369004 211369004 223093420 223093420 130099380 200288944 200288944 131919864 88130088 88351016 90205440 90205440 53094320 53094320 111387840 111387840 70525608 22238568 90222464 342917280 342917280 285360162 77597224 93066056 93066056 73280352 80233960 161080790 379111002 539136928 1023496201 1023496201 828995333 392119012 392119012 63252720 272899156 828507867 828507867 344738152 883425633 883425633 369266722 384108840 384108840 215755407 1013034347 1013034347 781155219 471587716 931803053 931803053 922751020 922751020 664889767 953262382 953262382 530219536 320587122 430969390 464654168 464654168 580652081 580652081 184947104 742392141 742392141 93719368 61751168 663008960 663008960 609797769 630215800 630215800 126517865 859972500 959656743 959656743 834694394 985809349 985809349 984258883 984258883 1072587979 1072587979 698401071 944052535 944052535 861025836 861025836 771896352 151895304 200869804 228871720 228871720 202253056 202253056 107219200 375395440 375395440 367662570 420342822 420342822 529081470 529081470 389011780 386141136 906247355 906247355 292627362 685558485 685558485 610025104 781588701 781588701 754337285 832897376 1062307919 1062307919 690810526 473459218 473459218 448013580 348309574 339182568 472189526 472189526 259262852 491191426 491191426 263393512 263393512 126014968 40420856 48480896 49431120 62032352 62032352 31740784 100697136 100697136 102454097 572183737 591561104 591561104 547163232 547163232 210358276 210358276 568332864 568332864 691655556 691655556 587304962 587304962 348165567 911343744 963683243 963683243 674845320 1007970068 1007970068 590881664 590881664 632389944 632389944 856384282 856384282 652423240 109708304 105419776 214974468 995919580 995919580 958401187 562562407 763674677 763674677 612681852 782547048 782547048 590083940 230597984 230597984 186917828 55348164 179448736 179448736 41025616 138862112 149880020 184500180 184500180 178368336 5187856 97148028 97148028 469816418 510342558 510342558 334647538 334647538 282189058 240146384 240146384 338947044 338947044 253871216 253871216 327046830 327046830 150859032 378930882 378930882 91435944 91435944 137671533 200355873 200355873 596643713 691447444 691447444 804374500 804374500 707555053 582599937 538678849 547051088 578814033 578814033 569508224 42259600 43521298 306645346 306645346 165506918 165506918 152374208 387981443 660677049 866960345 866960345 835775984 479212366 479212366 402938134 402938134 354545832 886542652 886542652 789608538 677545028 677545028 672845268 147639492 147639492 135097120 157812132 157812132 192481764 192481764 161416176 262165564 262165564 639141633 639141633 589825329 244582457 546444820 548220417 674249540 674249540 547700096 547700096 544617024 35829712 35774848 36049024 36049024 42216528 42216528 47069200 47069200 46639824 46677696 47787520 63957368 87517448 221292104 221292104 297379396 297379396 277423170 717275684 717275684 49333200 814878976 814878976 816914433 833360194 833360194 832446307 1015397930 1015397930 923083029 954624186 954624186 1018032539 1018032539 991266101 991266101 923361511 790653935 661337529 661337529 605042608 256901888 172755136 204653316 204653316 287424650 287424650 631292193 631292193 318863354 554362211 554362211 815404432 815404432 620102416 546833985 41533777 440475776 440475776 43517520 950601680 950601680 472393176 472393176 945556064 1006110728 1073483775 1073483775 530579838 530579838 283715776 295119538 295119538 1065845972 1065845972 1011784849 1011784849 1011039447 637637145 680542248 764461677 932458548 932458548 134218244 795350744 795350744 127332581 126237944 214424564 214424564 171275348 146090820 139471296 605816656 650906841 973390800 973390800 229952132 256379572 256379572 245137416 13157568 63835168 63835168 300045756 503316960 503316960 506560022 506560022 714991341 735439421 735439421 994354843 994354843 879757108 346368330 346368330 147648223 433509556 1060117774 1060117774 876997566 1053306251 1053306251 442837256 709450392 709450392 236240145 216009548 140509572 172676244 212357592 212357592 168314624 48342180 141059408 141059408 34685616 90012844 142760852 239539980 251879972 522897676 522897676 272109720 204346628 404976488 496026222 496026222 213339368 422372232 422372232 315458342 317196016 317196016 288359202 270927952 312611154 363933336 363933336 345451242 345451242 280481986 280481986 274911552 163531296 151683556 424857228 437581010 437581010 274123176 277635158 277635158 265628412 308607558 677208896 953514371 953514371 886507835 886507835 445719126 445719126 299721198 236578332 164158285 1072803132 1072803132 1042154904 974392628 100942336 8532032 8532032 442658962 477199212 477199212 198564260 343975600 343975600 311878032 311878032 105227530 242009294 242009294 405348732 487680135 904031657 904031657 947714412 947714412 569526823 473882382 538703361 538703361 402653190 402653190 922822705 929437852 929437852 913694765 872728602 756466204 587468296 821481000 902485227 902485227 635646441 749220035 886047660 886047660 621679297 881201523 881201523 347866896 347866896 272405824 860296337 860296337 277224256 607950664 607950664 362283080 75499114 696341344 696341344 256716336 256716336 201400332 62441328 62441328 42484512 288421942 288421942 717593504 717593504 851969024 851969024 458984608 458984608 13509238 420304320 420304320 80073410 19270400 19270400 17961504 17961504 86448192 86448192 178599268 178599268 101001240 245670260 245670260 451461170 451461170 434148682 239239636 197543100 38148240 67767448 118632994 386939528 386939528 371730651 371730651 557223713 557223713 461075909 203925898 237036326 237036326 316228474 910979449 910979449 525237936 978842658 978842658 749027833 856036698 856036698 324279374 324279374 204867457 797028464 797028464 54644837 269926864 880830152 880830152 811198083 81363019 977993934 977993934 412184344 412184344 941114480 941114480 59278855 172097540 172097540 172097540 617219292 617219292 177210416 177210416 134631540 50646048 85625184 102678796 247235944 247235944 28332616 24253344 23089184 57937008 57937008 50809056 67620096 83886120 83886120 16858184 273031328 1037249740 1037249740 435776867 531175868 531175868 424411172 424411172 960024581 960024581 462431351 637010963 974660353 974660353 678627838 477246149 477246149 433066004 545399320 631474240 631474240 376407290 495870220 495870220 455093932 455093932 320679474 186061830 172887552 257033772 279582035 919362747 919362747 889368907 646402264 646402264 88143952 111518080 203913372 203913372 679408457 679408457 639623824 580103380 562332592 715902476 768656392 768656392 251889668 216810104 518337242 518337242 808257095 808257095 430387776 545462787 545462787 522101954 467177184 506951080 506951080 963668333 963668333 824758240 824758240 753176646 499534508 205102112 209515292 209515292 213656996 213656996 204309696 204309696 71496968 71496968 12949336 102160920 119812752 119812752 307750252 307750252 160597000 330586724 330586724 864645236 864645236 985448452 985448452 868287655 868287655 797053132 797053132 818772996 818772996 452061847 1008590146 1008590146 546527362 906498385 906498385 825651642 825651642 611170219 353068208 353068208 73728 501294802 501294802 747055964 859308299 859308299 355282218 835193584 835193584 436667123 303368720 269523730 304609554 304609554 439538454 439538454 219329410 772280372 772280372 626724392 626724392 85735081 78999112 87918890 271706640 271706640 259263284 328524374 339772154 753678716 918081042 918081042 599051121 608209736 608209736 684674732 684674732 1009520270 1009520270 599550015 908192315 908192315 679002299 679002299 877503674 988029167 988029167 847632981 547852374 547852374 1058953212 1058953212 765171207 807484705 807484705 413661510 413661510 338813706 338813706 361834066 999301242 999301242 831592194 918063025 918063025 304676915 33628176 33619968 6291584 8011936 8011936 4229024 135168 96669984 313007433 313007433 891811323 891811323 574544520 838307258 838307258 538059008 538059008 274109962 543623584 563807664 938632090 938632090 39141632 39141632 20448544 18560544 18560544 42748272 42748272 35211200 36515088 59520336 59520336 52459648 822743074 822743074 707439894 707439894 424725120 570462785 580047441 580047441 57450211 200996292 200996292 293723770 293723770 606558240 606558240 17217801 57381524 154789668 539702785 539702785 218313345 253290236 257517288 650378401 650378401 798073145 798073145 338935825 303124557 584794323 584794323 691536261 905963424 905963424 900273757 900273757 869122487 337919037 447311424 573128354 937738242 1040850324 1040850324 839652626 839652626 805704843 805704843 975005417 975005417 349540376 349540376 207230604 269746210 292079104 374671376 374671376 350489034 381954074 381954074 333777842 640367968 649143129 649143129 335553363 760267702 760267702 588549435 110846694 110846694 188658292 188658292 602249408 602249408 686550677 686550677 562036833 658302048 658302048 120895368 899327018 899327018 817898891 817898891 671132544 671132544 304992327 276441236 276441236 685543460 685543460 805473331 805473331 554321410 404828550 404828550 458283472 458283472 304136754 274972704 173302032 49686532 27080320 80752360 80752360 51988000 157851792 171985872 171985872 128342224 91023608 125693464 125693464 348379874 348379874 62266224 332991106 332991106 210375756 210375756 367120416 397961314 397961314 278321666 278321666 657264240 663786073 663786073 134751312 134751312 126776380 384947120 384947120 67344170 272116784 272116784 286826304 286826304 291319458 291319458 264285904 264285904 136364292 136364292 134514964 195431027 942805767 942805767 998486183 998486183 792875020 182080244 423783668 1063088740 1063088740 740858592 740858592 1048580346 1048580346 767677659 546907713 715327190 715327190 978062487 978062487 412880454 914358293 914358293 75910112 92459816 92459816 29019424 29019424 26039528 107585456 107585456 99710984 99710984 152121912 219492428 219492428 223093420 1065462615 1065462615 842383963 845185179 845185179 721526788 721526788 570523953 576717201 585703616 585703616 95617064 95617064 7409664 6881664 0 131072 135168 428032 428032 3907584 4964876 4964876 80233960 161080790 912310683 912310683 1060547353 1060547353 742701629 961963732 961963732 797073597 907356865 907356865 828507867 670563321 883425633 883425633 42385728 52564288 301329378 346367618 352969770 352969770 352896266 352896266 146622992 103074372 1131808 153092136 153092136 436316192 455189100 455189100 320587122 430969390 464654168 464654168 223107364 167952800 180653060 180653060 167123940 53590853 163873092 663008960 663008960 609797769 983237572 983237572 970384096 765623131 765623131 834694394 834694394 726040981 858056568 875734053 875734053 843234317 843234317 431587753 944052535 944052535 861025836 861025836 340472880 151895304 103349664 228871720 228871720 243140490 394807138 394807138 375395440 375395440 367662570 204084492 998578067 998578067 29339980 1051091071 1051091071 906247355 906247355 828830006 828830006 685558485 659017785 932180674 932180674 754337285 832897376 1062307919 1062307919 974514711 739036275 739036275 448013580 348309574 835532686 835532686 477834467 880563771 880563771 602727924 628315768 628315768 126014968 114971376 20145568 55696256 62032352 62032352 107344064 107344064 100786200 100786200 73392360 572017304 572017304 547163232 547163232 210358276 210358276 543318401 543318401 541204800 608283373 608283373 653272520 653272520 911343744 963683243 963683243 638616072 638616072 981151239 981151239 391726689 632389944 632389944 856384282 856384282 932124336 932124336 605548098 965606972 965606972 174652736 174652736 318898506 318898506 461684738 461684738 529027610 529027610 207538700 230597984 230597984 186917828 55348164 161882720 161882720 41025616 138862112 149880020 184500180 184500180 178368336 42629584 97148028 268697600 469816418 510342558 510342558 334647538 334647538 215283272 240146384 240146384 203992888 61023552 8388672 8388672 349195788 349195788 59588978 326141936 326141936 231927914 146327364 133305336 164290184 164290184 201925644 691447444 691447444 804374500 804374500 782126585 712249053 201504525 147104768 63808160 64455696 64455696 42259600 43521298 306645346 311952200 385714704 385714704 392495458 392495458 340393276 343385896 412144556 476251158 479212366 479212366 402938134 402938134 354545832 354545832 300415458 224239320 321528214 321528214 267164644 267164644 189043380 189043380 34393104 51285824 62051184 134398505 134398505 262165564 262165564 639141633 639141633 589825329 244582457 546444820 548220417 674249540 674249540 547700096 547700096 544617024 37824512 37824512 36049024 40780800 42216528 42216528 47069200 47069200 46639824 46677696 47787520 47787520 18331680 367952013 967761255 967761255 297379396 277423170 824172273 824172273 381646626 889446258 889446258 824392322 824392322 562958698 622466601 953435348 953435348 853842138 853842138 222331760 365179758 438134740 438134740 390170674 390170674 475206530 475206530 408631230 366913208 186653760 186653760 204653316 204653316 171186728 94120488 118753232 118753232 93972072 838877200 838877200 805355523 620102416 620102416 646022665 814954336 814954336 732160721 415420614 863223869 1008017912 1071440317 1071440317 945556064 945556064 873292241 873292241 479065209 283715776 587580864 1034759535 1034759535 1065845972 1065845972 1011784849 1011784849 1011039447 482394318 603265308 764547837 932458548 932458548 779409376 779409376 759846653 43349344 28027472 14165632 13454912 146090820 612680288 622070313 622070313 918553435 973390800 973390800 95489048 62465888 620957960 746795119 746795119 285512195 271949418 300045756 334141558 384043482 751958536 843753083 843753083 765060717 600957469 927533076 927533076 251699572 977297411 977297411 896107672 283524243 753212724 753212724 876997566 876997566 525810493 811598211 811598211 632095459 703666752 703666752 271794114 384832536 384832536 743629010 743629010 776302216 776302216 325216016 316751328 316751328 407374528 407374528 239539980 442363542 442363542 272109720 204346628 472159312 496502382 496502382 213339368 159119268 286854144 286854144 317196016 317196016 288359202 60624658 60624658 363933336 363933336 345451242 345451242 280481986 280481986 274911552 165032004 32692580 159238788 437581010 437581010 178883140 277635158 277635158 168737104 490110305 677208896 953514371 953514371 305947176 303147574 743441037 743441037 299721198 337938522 337938522 1072803132 1072803132 974392628 974392628 100942336 227471400 227471400 289834564 457569886 457569886 124809430 124809430 44378448 311878032 311878032 42607824 42607824 14421696 431343104 487680135 904031657 904031657 947714412 947714412 863378374 809896705 538703361 538703361 407581966 475303458 922822705 929437852 929437852 872728602 1059330310 1059330310 959166088 592716036 1025630511 1025630511 958653260 537254348 632655211 632655211 344214922 344214922 128356720 351969002 391563032 391563032 326281914 294274058 614651478 614651478 497704084 497704084 329517426 1016353564 1016353564 342107822 342107822 500755390 511235900 511235900 366002210 598935075 941348769 941348769 949267184 999939318 999939318 995051079 458984608 143312515 563961825 815396595 815396595 434172742 558502304 558502304 589176384 589176384 62986704 178599268 178599268 84273192 245670260 245670260 451461170 451461170 687935624 687935624 390149051 57652912 331601042 391685664 391685664 323911856 830020682 1059825621 1059825621 992008673 186720816 186720816 237036326 237036326 316228474 352936064 352936064 210810404 346435660 346435660 153522026 283641471 795870141 998376287 998376287 794298045 794298045 793647616 759660586 759660586 880830152 880830152 811198083 432779380 1011451029 1011451029 718802084 737964645 941114480 941114480 509745054 451804352 172097540 181701268 181701268 693406264 693406264 599918388 134631540 50646048 70917632 102678796 247235944 247235944 216216012 216216012 222636204 225713760 225713760 105510152 105510152 88806976 88806976 346257474 346257474 1037249740 1037249740 435776867 1059748136 1059748136 454430208 454430208 150998182 405299744 405299744 675414016 985794603 985794603 678627838 398857089 399717114 433066004 545399320 631474240 631474240 136017540 136017540 146082840 210243208 210243208 135268384 223944240 789670501 789670501 257033772 540719617 540719617 77994312 73007808 78279752 105907912 105907912 100680072 100680072 67244040 639623824 639623824 85186185 71512872 98708656 98708656 76713240 216810104 216810104 518337242 518337242 206636544 416896326 430387776 430387776 522101954 522101954 467177184 506951080 506951080 353243884 420909390 420909390 484708866 484708866 137125514 28835136 33411948 208806272 213656996 213656996 567201024 567201024 565365064 337066506 885759136 885759136 811343132 811343132 653386713 871755161 871755161 344606821 344606821 498998860 1015315303 1015315303 865108408 868287655 868287655 335748814 320080434 818772996 818772996 379440009 1008590146 1008590146 917818203 917818203 334532680 588922418 588922418 556709904 89329209 877968939 877968939 827083810 827083810 655361319 655361319 958407251 1001654632 1001654632 835193584 893900468 1028129967 1028129967 563083470 297210643 297210643 305387188 305387188 988692729 988692729 631065245 937027312 937027312 549841089 894256350 1025795633 1025795633 576818610 328524374 339772154 1063018860 1063018860 918081042 599051121 608209736 608209736 552913857 145041732 1009520270 1009520270 475794703 92335280 108634242 341626810 399887238 834252626 988029167 988029167 847632981 547852374 547852374 1058953212 1058953212 765171207 807484705 807484705 593529009 413661510 338813706 546043209 546043209 999301242 999301242 1038139887 1038493089 1038493089 405379648 565882665 565882665 53740928 577335633 577335633 122694328 52742448 75665434 313007433 313007433 891811323 891811323 574544520 838307258 838307258 385580042 385580042 306240642 582825888 582825888 938632090 938632090 3206016 20448544 20448544 18560544 18560544 42748272 42748272 34509169 34509169 59520336 59520336 858171424 858171424 822743074 707439894 707439894 772391178 851989775 851989775 814404675 54731972 200996292 200996292 185719344 185719344 606558240 646665193 646665193 670307856 670307856 188033616 188033616 197922036 660079636 660079636 647761497 578117712 798073145 798073145 338935825 303124557 584794323 584794323 691536261 905963424 905963424 900273757 900273757 869122487 337919037 447311424 573128354 573128354 1040850324 1040850324 839652626 839652626 782728295 613514127 975005417 975005417 1023067713 1023067713 479909454 873464463 873464463 292079104 324102754 329376114 329376114 286138784 286138784 640367968 640367968 637162372 683859821 683859821 680930309 1056923604 1056923604 469888364 223345836 744698253 745222541 745223565 745223565 679564673 612417609 664561177 664561177 597992976 628526850 628526850 958187790 958187790 281552640 277317698 278719936 422872544 422872544 685543460 685543460 805473331 805473331 554321410 404828550 404828550 458283472 458283472 436404484 436404484 465704098 465704098 46924832 495585368 503324728 503324728 157851792 171985872 171985872 128342224 91023608 125693464 125693464 348379874 348379874 29759712 332991106 740228224 740228224 210375756 371505952 412535922 471124494 725404194 725404194 663537521 663786073 943335755 943335755 580392212 422196852 438489430 438489430 171339090 330063970 330063970 100860880 291048872 291319458 291319458 269553312 269553312 171208606 118919840 118919840 195431027 942805767 942805767 998486183 998486183 806490627 884711971 884711971 783974433 678082722 740858592 740858592 1048580346 1048580346 1035995728 546907713 516824286 516824286 978062487 978062487 772486173 914358293 914358293 398183906 398183906 92459816 281033066 314345064 368014690 368014690 342496256 84359208 274900800 274900800 356723242 356723242 78432003 1065462615 1065462615 842383963 845185179 845185179 721526788 721526788 570523953 576717201 585703616 585703616 96590312 96590312 25539400 6881664 75235360 341318528 341318528 285421602 92412712 92412712 93232968 150165120 201404940 201404940 912310683 912310683 1060547353 1060547353 742701629 961963732 961963732 797073597 907356865 907356865 610318848 670563321 863663392 863663392 33370080 73427584 301329378 346367618 605812233 833710509 833710509 498504530 259715655 974607348 974607348 1064440454 1064440454 877746831 844366386 210360536 239114304 239114304 45538128 45538128 55186608 142761200 165896420 165896420 61072836 53590853 163873092 624920708 763099053 763099053 983237572 983237572 970384096 765623131 765623131 529844342 876963297 876963297 841539655 875734053 875734053 843234317 843234317 431587753 828325717 828325717 801841749 792333036 256750888 103349664 103349664 740955405 783025293 783025293 394807138 394807138 640131841 640131841 197921000 197921000 998578067 998578067 110152368 1051091071 1051091071 434115396 434115396 828830006 828830006 659017785 659017785 932180674 932180674 629154848 389001728 436587163 974514711 974514711 739036275 739036275 545915077 692113505 835532686 835532686 477834467 880563771 880563771 602727924 628315768 628315768 114971376 114971376 76567168 84030016 84030016 259327844 259327844 111507784 243596728 243596728 791046037 791046037 767560773 573599000 644187024 644187024 13103360 543318401 543318401 751976648 751976648 608283373 849531219 849531219 582132424 1020895771 1020895771 998753122 998753122 981151239 981151239 757736489 757736489 369705192 600844056 812816162 932124336 932124336 605548098 965606972 965606972 174652736 297873624 318898506 318898506 201326630 333999264 333999264 242323562 139989508 235231120 235231120 188683716 34792708 161882720 161882720 39390464 43235072 48340304 149262592 149262592 46267540 42629584 2361600 268697600 268697600 2097408 270582016 270582016 270549506 5556864 304430912 460830984 463585112 463585112 433043032 433043032 349195788 349195788 177834838 326141936 600893843 600893843 420487978 763431202 763431202 164290184 927543341 927543341 415375378 564824136 782126585 782126585 712249053 403252230 147104768 273252920 303383448 303383448 68130008 68130008 54183792 311952200 385714704 385714704 392495458 392495458 390179104 390179104 412144556 412144556 302127952 113089072 113089072 305685002 305685002 197327460 224239320 358753532 358753532 281622168 321423084 403234950 403234950 437605818 493743534 493743534 235329564 525223074 525223074 50892320 1032080350 1032080350 996412145 970197735 201730687 562374964 879038021 879038021 269751309 16528960 16528960 7754752 37824512 169238036 169238036 170908052 170908052 2232576 2232576 39724433 39724433 453952550 453952550 423360262 423360262 414777517 967761255 967761255 859908306 859908306 824172273 1006954607 1006954607 889446258 889446258 824392322 824392322 553787586 29574788 953435348 953435348 416812120 222331760 251795552 251795552 191102736 265132792 265132792 141441028 136103628 217710816 217710816 51384864 186653760 186653760 22485664 44403056 44403056 51027824 51027824 55797648 76588096 838877200 838877200 805355523 370924256 858729304 875460555 875460555 814954336 732160721 415420614 863223869 1008017912 1071440317 1071440317 976833817 986260695 986260695 887911860 887911860 509461122 587580864 1034759535 1034759535 774761757 774761757 982007824 982007824 841051332 841051332 822417614 822417614 803420211 416427720 991759037 991759037 797672189 797672189 743388720 167997444 215086459 960098231 1033954531 1033954531 643596697 918553435 1032667929 1032667929 137837332 195273556 714945801 746795119 746795119 547282497 538726464 196066124 206513284 441127996 1033617546 1033617546 843753083 765060717 600957469 700092195 700092195 940098567 977297411 977297411 896107672 847077313 597000938 910748098 910748098 632382112 812222426 812222426 811598211 632095459 703666752 703666752 271794114 384832536 384832536 743629010 743629010 776302216 776302216 325216016 316751328 316751328 407374528 407374528 206384412 206384412 203300364 236268060 236268060 472159312 496502382 496502382 77145672 279005376 298866370 298866370 287884576 293617730 293617730 281045248 42992208 37865504 8908960 221472193 221472193 227937228 227937228 541982857 768849193 768849193 680732517 680732517 652944844 124858832 657952225 657952225 145590272 490110305 974966295 974966295 1008121861 1008121861 732726605 743441037 743441037 933239082 933239082 579657056 111200566 522504510 522504510 429958400 211842402 227471400 227471400 289834564 497582500 497582500 348701898 157304174 44378448 282138880 282138880 162733928 284897024 293688730 431343104 486552522 486552522 554737092 688914981 863378374 863378374 809896705 287275527 199810484 407581966 861948315 861948315 624974230 624974230 723554360 1059330310 1059330310 959166088 592716036 1025630511 1025630511 958653260 107139728 71353512 84577000 98196528 98196528 128356720 351969002 391563032 391563032 326281914 290444048 614651478 614651478 497704084 497704084 329517426 1016353564 1016353564 342107822 342107822 500755390 511235900 511235900 366002210 598935075 941348769 941348769 949267184 999939318 999939318 995051079 303901776 143312515 563961825 815396595 815396595 434172742 558502304 558502304 589176384 589176384 38873376 38873376 102861536 128000376 128000376 69812232 67151112 689092180 689092180 687935624 390149051 185439368 331601042 391685664 391685664 323911856 830020682 1059825621 1059825621 992008673 395639423 395639423 420244972 420244972 260572284 352936064 352936064 215040577 745140623 745140623 437075808 437075808 795870141 998376287 998376287 794298045 794298045 793647616 759660586 759660586 669313675 679756403 679756403 558502954 1011451029 1011451029 718802084 737964645 737964645 509745054 509745054 451804352 164086440 181701268 181701268 693406264 693406264 599918388 194398016 495407433 495407433 438563094 473928813 473928813 440006546 454278962 468003318 580518787 580518787 466424864 969105685 969105685 100885880 346257474 346257474 131852944 959122817 959122817 1059748136 1059748136 454430208 454430208 872433079 872433079 828926080 828926080 985794603 985794603 916643936 916643936 898660568 1051663953 1051663953 254793093 877003001 877003001 883950520 883950520 370810950 589039152 722219565 722219565 789670501 789670501 504245958 540719617 638519104 638519104 851717715 851717715 650745281 650745281 586026073 543447680 543447680 546906624 755850376 755850376 603996172 709445542 756216728 756216728 195911686 195911686 406728000 406728000 270492814 270492814 234054140 424379210 424379210 68230184 31383264 31383264 5015904 353243884 420909390 420909390 484708866 484708866 137125514 28835136 28835136 208806272 208806272 89468972 567201024 567201024 565365064 337066506 885759136 885759136 811343132 1064409030 1064409030 871755161 871755161 344606821 344606821 498998860 1015315303 1015315303 865108408 865108408 829092781 908641563 908641563 81021128 940595798 940595798 851125015 851125015 917818203 917818203 269208464 269208464 556709904 556709904 107907216 877968939 877968939 827083810 827083810 775242320 775242320 960556208 1001654632 1001654632 982879824 893900468 1028129967 1028129967 895482524 895482524 999621682 1006120492 1006120492 988692729 988692729 633340137 937027312 937027312 549841089 894256350 1025795633 1025795633 866724015 866724015 269590930 1063018860 1063018860 658825414 658825414 847047095 847047095 470212201 521505049 975429567 975429567 681373604 581116736 581116736 571588956 197493124 373649368 1051503894 1051503894 841246803 680186945 680186945 691031096 691031096 485594497 485594497 593529009 608539304 608539304 101198904 546043209 546043209 43726416 105993511 1038139887 1038493089 1038493089 405379648 565882665 565882665 246700456 577335633 577335633 122694328 52742448 73549032 73549032 1313280 18874720 18874720 8652864 26241120 26241120 374548042 374548042 336155290 582825888 582825888 324199810 324199810 74612096 74612096 21166528 26924576 26924576 25215072 55320192 55320192 12471472 11014400 2622720 858171424 858171424 88088832 90251688 90251688 772391178 851989775 851989775 814404675 793957728 711739696 260083464 414408355 548004465 911763347 911763347 646665193 670307856 670307856 188033616 188033616 197922036 660079636 660079636 647761497 135379392 136733505 279251732 811010566 811010566 675491973 403978883 84148736 26602080 875916716 875916716 160031099 124830648 482345996 482345996 1019802326 1019802326 919810779 912116581 691672869 620494927 620494927 503010882 503010882 251693052 1023067713 1023067713 479909454 873464463 873464463 184888498 56808144 56808144 48622224 48622224 57411728 640420128 640420128 637162372 683859821 683859821 680930309 1056923604 1056923604 647546312 611022337 744698253 745222541 753270977 1069018938 1069018938 612417609 845201583 959775004 959775004 782916450 759363392 958187790 958187790 281552640 543018529 557163464 645379913 645379913 269370660 829296776 836915907 836915907 819640920 1056014863 1056014863 688859052 270797058 436404484 436404484 465704098 465704098 441326722 495585368 503324728 503324728 4532736 5842560 5842560 6155904 18869792 19922048 19922048 33132640 33132640 8124288 172219540 740228224 740228224 148150980 371505952 412535922 471124494 725404194 725404194 663537521 574528360 943335755 943335755 580392212 422196852 438489430 438489430 338974496 338974496 330063970 275577096 291048872 291048872 353861576 353861576 337369914 337369914 393910496 393910496 310454000 121856776 182706716 182706716 780218974 806490627 884711971 884711971 783974433 304110080 304110080 294191268 923272192 1035995728 1035995728 641992857 516824286 516824286 286002210 619326966 772486173 772486173 617750544 398183906 398183906 76545160 281033066 314345064 368014690 368014690 342496256 59042298 486884392 486884392 421300285 775170653 775170653 652496727 646556042 848601404 848601404 605315857 496239198 1032874497 1032874497 126141936 588783681 588783681 96590312 96590312 25539400 8210816 75235360 341318528 341318528 285421602 92412712 270006274 270006274 150165120 406328706 406328706 275384070 268036092 64285372 372607396 738789134 768293005 768293005 748580493 672460385 111487320 196163124 196163124 241123108 241123108 100024288 100024288 91035528 221426829 605812233 833710509 833710509 498504530 259715655 974607348 974607348 1064440454 1064440454 877746831 844366386 210360536 239114304 239114304 107391824 78304584 75519232 4199424 22804128 23017120 23017120 5119104 688256 624920708 763099053 763099053 481693602 481693602 402681874 869101031 869101031 529844342 876963297 876963297 841539655 938582461 938582461 897643627 860887362 860887362 56740240 56740240 58983968 58983968 60693568 60693568 50617197 740955405 783025293 783025293 565447521 565447521 640131841 640131841 197921000 696569016 696569016 501853707 715754836 715754836 424858278 434115396 434115396 158409636 178715376 178715376 89200640 89200640 629154848 629154848 389001728 389001728 85154106 227855912 671112448 671112448 545915077 692113505 692113505 622856580 228723160 363880640 609495618 609495618 148169409 544229153 544229153 608223464 608223464 97665728 718531401 718531401 627403996 679613773 747180457 747180457 791046037 791046037 770441625 803927536 803927536 769864173 650335285 539677953 210396489 751976648 751976648 583168838 849531219 849531219 582132424 1020895771 1020895771 998753122 998753122 738930077 738930077 954799299 954799299 400627482 829789778 829789778 617861448 278011176 543243868 767169582 767169582 339424466 797127255 797127255 63242418 551620384 551620384 548104465 558774881 765069793 765069793 756538368 188683716 34792708 63351904 63351904 37496512 184815632 184815632 176685072 176685072 145314032 145314032 53393200 53891792 304980912 304980912 329338560 329338560 320913714 59769456 304430912 460830984 463585112 463585112 433043032 433043032 255960670 549005121 617718409 617718409 600893843 600893843 420487978 763431202 763431202 150252237 927543341 927543341 415375378 387877258 387877258 430632728 430632728 403252230 122083902 273252920 303383448 303383448 68130008 68130008 54183792 131159160 131159160 336406656 336406656 507630598 507630598 390179104 461813958 461813958 302127952 113089072 113089072 305685002 305685002 67169018 490809222 490809222 358753532 338170704 338170704 403234950 403234950 437605818 1039742945 1039742945 248100014 758661530 758661530 577658876 1032080350 1032080350 996412145 970197735 767558011 860631396 879038021 879038021 415179352 543595088 543595088 541022336 274407697 274407697 342595086 405025427 405025427 729415224 980982935 980982935 659432173 453952550 453952550 558129904 558129904 414777517 414777517 306520282 859908306 859908306 598288627 1006954607 1006954607 564793440 564793440 489371617 553787586 553787586 422007810 432183914 832603974 832603974 619202322 251795552 251795552 164247772 265132792 265132792 116468236 71674544 186137024 186137024 167531220 136579400 136579400 127976208 54399322 295588930 329964146 329964146 357708970 357708970 821113272 821113272 632501097 399208891 915616416 915616416 875460555 100810825 646468664 1051378193 1051378193 736366151 797296447 797296447 976833817 986260695 986260695 887911860 887911860 509461122 509461122 55006000 606993668 774761757 774761757 159968565 716006730 841051332 841051332 822417614 822417614 803420211 416427720 991759037 991759037 797672189 797672189 743388720 310329234 350322194 960098231 1033954531 1033954531 643596697 643596697 1032667929 1032667929 190598565 195273556 714945801 714945801 547282497 547282497 538726464 427912972 206513284 441127996 1033617546 1033617546 554222625 554222625 377479977 700092195 700092195 940098567 940098567 426286099 847077313 847077313 301238705 910748098 910748098 632382112 812222426 812222426 447295254 447295254 417926668 340409226 276039490 83888136 98566632 98566632 71312160 290727488 298659042 299949312 299949312 11064128 16727636 208553148 208553148 511526534 511526534 503467418 503355910 503355910 463111778 463111778 157483510 279005376 298866370 298866370 287884576 293617730 293617730 281045248 276019650 276019650 289609984 289609984 758926284 758926284 227937228 541982857 768849193 986988040 986988040 680732517 652944844 124858832 657952225 657952225 14294080 289052981 974966295 974966295 1008121861 1008121861 774033756 732726605 434227773 933239082 933239082 828278055 927538531 959128667 965826660 965826660 211842402 75632712 136840452 136840452 497582500 497582500 348701898 261676520 389579386 389579386 271326034 162733928 284897024 293688730 332927030 486552522 486552522 554737092 688914981 688914981 739563584 739563584 69542165 29587624 224763944 861948315 861948315 483551266 914815832 914815832 939995240 939995240 134235903 471599212 471599212 290769570 364832290 364832290 468416948 468416948 84577000 63324440 3679456 318364739 658670225 662177721 662177721 17962554 54973301 427933748 843276722 843276722 570588465 815883581 1038490095 1038490095 703160412 275866388 454691462 454691462 356765360 356765360 273156096 273156096 273730224 290211350 407945862 542216228 999387701 999387701 177287315 64164512 8466480 28184160 28184160 32770608 41230704 41230704 161302500 161302500 170148744 213088076 213088076 539149845 539149845 689092180 776130717 776130717 654910593 654910593 445330518 445330518 407741846 212842764 644644938 834815901 834815901 31063606 840548578 840548578 437922334 437922334 372027650 863041392 863041392 215040577 745140623 745140623 437075808 437075808 431100774 431100774 537567264 554431521 554431521 701027554 701027554 839785491 839785491 679756403 679756403 558502954 73323129 759696064 759696064 412090950 412090950 116198132 135141186 347645326 347645326 216646986 118087368 120321336 120321336 194398016 194398016 495407433 495407433 438563094 473928813 473928813 440006546 454278962 468003318 580518787 580518787 466424864 969105685 969105685 100885880 100885880 310161802 310161802 959122817 959122817 822295076 822295076 805306371 942148154 942148154 872433079 828926080 828926080 265545191 1033918660 1033918660 916643936 898660568 1051663953 1051663953 621021707 877003001 877003001 883950520 883950520 370810950 589039152 722219565 722219565 677064277 879238590 879238590 535980427 638519104 638519104 851717715 851717715 650745281 650745281 586026073 543447680 543447680 81059532 755850376 755850376 603996172 709445542 756216728 756216728 195911686 195911686 406728000 406728000 270492814 270492814 234054140 424379210 424379210 268460640 283842664 283842664 348397568 348397568 403313678 403313678 222950574 362464228 479581382 479581382 365676166 283097192 155876256 79031104 97458304 97458304 33279112 75755592 874246152 874246152 470546424 1064409030 1064409030 383025438 448597186 448597186 243805722 484051520 981991504 981991504 404800946 674858000 829092781 908641563 908641563 81021128 940595798 940595798 418618949 383123464 383123464 383381922 383381922 269208464 79835602 107907216 107907216 270766250 270766250 95531360 128508900 775242320 775242320 960556208 960556208 982879824 982879824 385623341 55125168 55125168 895482524 895482524 999621682 1006120492 1006120492 933603502 933603502 818987715 618660128 392241594 392241594 602491452 743779909 743779909 1015407773 1015407773 218649102 947555835 947555835 658825414 658825414 847047095 847047095 470212201 521505049 975429567 975429567 681373604 581116736 595103577 611967369 611967369 604030475 1051503894 1051503894 1023048411 1023048411 906703903 691031096 691031096 1066498727 1066498727 406168467 617411232 617411232 74194369 76019784 76019784 35989776 111216712 111216712 122425656 122425656 124908384 184975932 246700456 246700456 47242176 537141271 537141271 944529670 944529670 537222228 178706772 692493625 807180506 807180506 859102129 859102129 548684097 548684097 341968267 972821540 972821540 532183199 953538768 953538768 291806176 130323088 117489720 80462496 52698192 55320192 55320192 63270241 63270241 50516016 824488208 824488208 606674070 757224733 757224733 1045479441 1045479441 306214280 793957728 793957728 711739696 551703373 674944216 674944216 911763347 911763347 645972057 113777488 146549140 146549140 56692692 34423556 659353300 659353300 692814681 692814681 135379392 23539712 811010566 811010566 675491973 481428416 481428416 614040608 614040608 392988922 392988922 286051362 482345996 482345996 1019802326 1019802326 919810779 912116581 788994191 788994191 620494927 503010882 969572796 969572796 396547867 427127804 439159814 439159814 329010196 201804528 7608660 43259456 43259456 34870784 57411728 640420128 640420128 578027544 696379163 923584116 923584116 40580496 647546312 647546312 611022337 605667077 672729152 753270977 1069018938 1069018938 103809816 845201583 959775004 959775004 782916450 759363392 811945088 811945088 81592896 543018529 721951488 721951488 707189013 156014001 829296776 836915907 836915907 819640920 1056014863 1056014863 796051508 674555924 674555924 402728992 402728992 307117106 441326722 441326722 101586968 101586968 34169872 1116288 392549148 392549148 269742052 117237300 117237300 55738920 336613896 495997160 495997160 178358520 178358520 59126652 369394176 369394176 373606554 373606554 71338002 201737728 337921032 337921032 271371522 218336554 93922920 97921544 97921544 338974496 338974496 295882560 275577096 287256970 287256970 353861576 353861576 337369914 337369914 393910496 393910496 310454000 106618896 35651856 44154992 44154992 379670834 817406776 817406776 277902673 75571272 294191268 312591660 618709428 618709428 641992857 641992857 92536904 707004010 1052247903 1052247903 518587983 482944206 305933276 78046848 23852448 88769024 88769024 20601928 21632160 21632160 4273184 262144 486884392 486884392 421300285 775170653 775170653 652496727 646556042 848601404 848601404 605315857 496239198 1032874497 1032874497 58036192 588783681 588783681 73959296 73959296 8210816 8210816 8195200 8195200 269458434 269458434 33730560 270006274 270006274 189875600 406328706 439091456 439091456 407637126 33554448 575144608 575144608 671132689 730931829 730931829 375063165 111487320 196163124 196163124 241123108 241123108 100024288 100024288 276439936 442089098 442089098 275956736 253155900 505344572 505344572 412160534 218252840 202293584 178431260 40190420 237086736 308550780 334372338 334372338 107391824 494278318 494278318 364904682 235569910 488412926 488412926 526020349 956875815 969543783 969543783 848215254 848215254 481693602 402681874 869101031 869101031 481256274 826101797 826101797 675421730 938582461 938582461 897643627 860887362 860887362 56740240 56740240 59771952 59771952 60693568 60693568 54527216 54527216 141430240 542901728 565447521 565447521 95428113 73926192 73926192 696569016 696569016 162570801 715754836 715754836 703966433 225756068 225756068 191705105 1070530903 1070530903 487168048 487168048 877971486 877971486 445458455 416960745 931304491 931304491 876875109 876875109 619564876 696838605 696838605 622856580 155812997 363880640 609495618 609495618 345022478 544229153 544229153 608223464 1070768703 1070768703 1015029919 980435176 627403996 679613773 747180457 747180457 686743968 640288909 770441625 803927536 803927536 769864173 650335285 539677953 210396489 614482476 614482476 565220197 489943854 489943854 330417246 1012524687 1012524687 778077624 778077624 712644501 712644501 954799299 954799299 400627482 829789778 829789778 559385166 278011176 909909405 909909405 767169582 339424466 797127255 797127255 667757817 667757817 551620384 548104465 558774881 765069793 765069793 756538368 595510608 32663136 63351904 63351904 41091456 184815632 579698193 579698193 176685072 145314032 145314032 826474056 884337611 884337611 845450099 917977947 917977947 884457760 300728448 300728448 147089988 155331216 200878068 200878068 50344192 234278301 549005121 617718409 1005982570 1005982570 219819550 219819550 161423254 591137636 594679155 594679155 1017157199 1017157199 832753983 789312253 895190157 895190157 1024224917 1024224917 860884658 860884658 827957424 92475472 92475472 76204320 133849712 133849712 73028384 60099928 507630598 507630598 298235938 461813958 461813958 270950768 11535168 4977792 180544598 180544598 67169018 490809222 490809222 316788288 338170704 338170704 35850178 201398227 201398227 1039742945 1039742945 248100014 836937882 836937882 577658876 577658876 536609694 261104704 685840280 767558011 860631396 873270213 873270213 415179352 543595088 543595088 541022336 379812554 349217432 342595086 405025427 405025427 729415224 980982935 980982935 659432173 56623536 56623536 558129904 558129904 278464536 572901434 572901434 522297687 585722242 585722242 470083590 470083590 549613580 549613580 489371617 489371617 420688422 422007810 422007810 832603974 832603974 991709079 991709079 818600603 709162189 709162189 781767108 781767108 41707924 174687860 174687860 198332400 238557672 238557672 127976208 118493544 295588930 329964146 329964146 357708970 357708970 821113272 821113272 632501097 399208891 915616416 915616416 281048945 100701546 646468664 1051378193 1051378193 400609144 400609144 690917148 690917148 526335678 526335678 504362452 868818994 868818994 633486581 520668222 520668222 363630344 244844124 782345242 782345242 303073330 549301930 903922155 1036109061 1036109061 789032050 789032050 471430825 268792330 378241472 378241472 310329234 350322194 350322194 518334942 818678560 818678560 555524419 824788380 824788380 190598565 166221764 166221764 564988266 564988266 513834762 513834762 512374864 220910892 239875744 439135218 439135218 320923718 777096584 777096584 712822677 553604997 849367424 849367424 40092995 827084034 827084034 288124035 19406880 19406880 2424832 2435328 22351360 22351360 284957640 340409226 340409226 281215552 287926656 297795810 297795810 279496736 290727488 298659042 298659042 269070274 269083650 270313472 270313472 208553148 511526534 511526534 503467418 503355910 503355910 311493184 311493184 157483510 187019316 187019316 134622528 141037040 141037040 22052896 22052896 276019650 276019650 289609984 289609984 758926284 758926284 211393199 37592370 37592370 986988040 986988040 666916117 171071145 142791608 142791608 159868516 177861905 446996645 446996645 1039141003 1039141003 774033756 774033756 739533260 739533260 871443424 871443424 828278055 927538531 959128667 965826660 965826660 405314420 170274828 448863382 448863382 199262710 243979356 261676520 261676520 389579386 389579386 103883544 136323608 136323608 134217732 74596204 93952137 538104321 538104321 195877149 160122472 739563584 1059647735 1059647735 560502185 420299966 420299966 268763274 483551266 914815832 914815832 788597356 788597356 521970772 839449720 906491931 906491931 388752217 388752217 747180119 747180119 89652848 89652848 49797584 318364739 658670225 662177721 662177721 836276304 836276304 57284099 843276722 843276722 570588465 815883581 1038490095 1038490095 703160412 275866388 454691462 454691462 969102389 969102389 460324050 692130817 733638325 857477492 978378817 978378817 999387701 999387701 303580224 315151906 315151906 289676834 289676834 51636480 41230704 41230704 161302500 161302500 170148744 213088076 213088076 539149845 539149845 664962352 776130717 776130717 654910593 654910593 445330518 445330518 407741846 843481536 843481536 644644938 328075378 328326866 840548578 840548578 437922334 437922334 372027650 863041392 863041392 208615372 217570252 217570252 112262288 310388421 678496187 678496187 537567264 554431521 554431521 772124752 772124752 839785491 839785491 813914210 813914210 834741394 1015952035 1015952035 759696064 412090950 508168450 508168450 283125644 347645326 347645326 337884280 337884280 233778084 120321336 82438560 243718204 243718204 106957304 952440752 952440752 85598527 162929508 162929508 160746084 160746084 154189856 57135424 50950560 59579040 59579040 45273936 310161802 310161802 450547382 450547382 109460968 805306371 805306371 942148154 942148154 694191365 694191365 569725700 569725700 1033918660 1033918660 875915504 1060910711 1060910711 1049493726 1012925326 880803880 880803880 830472291 974461161 1011561615 1011561615 214118604 214118604 562248756 879238590 879238590 629043593 123442360 123442360 613970441 613970441 577580433 577580433 553499480 69728520 9370176 9370176 9280576 9280576 1616064 12928512 14206656 14206656 12845056 41294736 147083520 447728964 447728964 134282884 0 213104300 213104300 348567300 348567300 352462176 352462176 348397568 403313678 403313678 222950574 362464228 479581382 479581382 365676166 283097192 157139628 217846312 217846312 106969256 106969256 72092176 807479088 807479088 169346580 716767516 846358148 950441602 950441602 949311697 243805722 990676202 990676202 981991504 445385814 1007591607 1007591607 552531232 552531232 753526204 753526204 729488335 729488335 640235032 422907808 383381922 383381922 100473104 105014112 105014112 74572680 270766250 270766250 105843848 379309333 462000090 462000090 741347023 947453952 947453952 344582300 344582300 775034954 775034954 470816291 502436216 743684869 743684869 704879102 878949192 878949192 913318057 913318057 598736241 598736241 602491452 743779909 780152464 1015407773 1015407773 228639850 228639850 277873218 277873218 389596986 389596986 288899096 294249570 294249570 272898594 31796576 27124064 27347233 595103577 611967369 611967369 604030475 604030475 883731467 1023048411 1023048411 906703903 485196695 410129628 1066498727 1066498727 547783657 835332295 835332295 965758502 965758502 713229160 398356786 832273230 832273230 383964269 959351290 964543140 964543140 567280568 752869384 752869384 776480269 776480269 944529670 944529670 537222228 178706772 692493625 807180506 807180506 859102129 859102129 548684097 548684097 341968267 972821540 972821540 532183199 953538768 953538768 291806176 130323088 117489720 80462496 52698192 52698192 53873089 63270241 63270241 50516016 26074417 38560050 606674070 757224733 757224733 1045479441 1045479441 306214280 640210459 640210459 551703373 551703373 674944216 674944216 651691737 654633200 654633200 113777488 241965221 241965221 224789689 218368044 659353300 659353300 716997137 716997137 248629860 785697501 785697501 440693403 440693403 573971217 573971217 614040608 614040608 638482720 638482720 286051362 784074617 784074617 911484721 911484721 968927455 968927455 799077502 788994191 315231312 315231312 969572796 969572796 396547867 87054358 58802448 197946444 201804528 201804528 34329332 25818976 10084720 34870784 34870784 74450865 578027544 578027544 696379163 923584116 923584116 478914854 478914854 546029304 605667077 605667077 672729152 672729152 652681429 646583385 883514465 883514465 479297040 50767214 11608896 11608896 97496736 342932557 544581857 679545156 721951488 721951488 707189013 182469184 175162260 181742292 522833462 628695746 653101208 796051508 796051508 674555924 674555924 153422276 313681152 313681152 453604354 453604354 420185120 420185120 127614484 197255252 392549148 392549148 269742052 117237300 117237300 55738920 336613896 495997160 495997160 265613968 693755049 693755049 369394176 407553944 407553944 774709712 774709712 546393553 598366764 598366764 655127352 655127352 203107940 203107940 214770880 214770880 8388608 3195648 3195648 2410496 69499136 87521288 87521288 87503144 382894208 382894208 15798976 58761280 176414868 176414868 172023844 165715988 158376032 582511208 582511208 997246236 1029236459 1029236459 955901941 702137067 744290415 744290415 184340286 482106484 1021330177 1052247903 1052247903 518587983 482944206 450759170 450759170 291345290 291345290 279717354 313564576 376187186 376187186 303112722 303112722 319233154 319233154 156654634 84576902 0 372360896 384378330 542463526 881548817 881548817 135018561 55260336 22944768 22944768 927701570 927701570 904539954 895018272 895018272 625094784 268579976 10321472 36133136 36133136 33730560 33657616 183990852 189875600 189875600 439091456 439091456 407637126 364194494 575144608 575144608 671132689 845750594 845750594 719332805 708875408 708875408 294701012 644595901 644595901 36942342 284575514 303743384 442089098 442089098 439354134 470607190 505344572 505344572 412160534 202293584 202293584 178431260 499657818 537426140 1057294348 1057294348 459838562 459838562 494278318 494278318 364904682 695562736 764611385 764611385 562374753 956875815 969543783 969543783 848215254 848215254 746586189 746586189 113386112 113386112 474762442 818057934 818057934 138521992 381833884 894617938 894617938 917961136 917961136 732725157 732725157 698859461 551096032 51118704 18616836 177211681 598212817 757338577 757338577 614467241 614467241 749439033 749439033 186953016 547745017 727796300 727796300 542761097 703966433 703966433 155194116 191705105 548849784 1070530903 1070530903 487168048 487168048 877971486 877971486 578212417 578212417 931304491 931304491 876875109 876875109 880609280 880609280 696838605 487139022 1011912748 1011912748 474253513 356610634 345022478 1028146344 1028146344 1028129967 1070768703 1070768703 1015029919 980435176 158553516 120304300 241246620 643438416 643438416 197922036 856887446 856887446 814131719 566415585 211689036 211689036 81661444 751846952 751846952 151155856 228663660 228663660 494588072 494588072 423159590 154785702 558276876 558276876 348137878 213859890 132060890 16826400 30110912 351341772 942479430 942479430 909909405 909909405 868087120 868087120 878720923 878720923 667757817 667757817 630114129 675887840 675887840 93994593 44621745 595510608 617818049 617818049 21045408 599016101 599016101 196528868 579698193 579698193 13507776 134930528 160117860 826474056 884337611 884337611 845450099 917977947 917977947 884457760 358404972 358404972 225494286 155331216 200878068 419496248 505487646 505487646 119545894 10621504 1005982570 1005982570 219819550 219819550 161423254 591137636 594679155 1000672543 1017157199 1017157199 832753983 789312253 895190157 895190157 1024224917 1024224917 860884658 860884658 827957424 189853652 92475472 238562132 531451024 531451024 275691808 492012138 492012138 408521554 317057490 184854770 435950150 527373492 527373492 468138846 478862340 478862340 97673230 84749352 251922492 436996054 465142676 532169530 532169530 314057682 1049441752 1049441752 940573191 940573191 836937882 866860949 866860949 903484325 903484325 492507145 685840280 685840280 402967996 402967996 516284116 516284116 504243084 504243084 379812554 379812554 740649174 845862291 845862291 810062601 645275545 158131513 140324484 575818199 575818199 472945925 357875782 1023260342 485109822 572901434 572901434 636036544 636036544 585722242 631902240 631902240 262930996 667835800 667835800 151655833 128752524 918725772 918725772 430080836 430080836 991709079 991709079 818600603 709162189 709162189 781767108 781767108 156453204 174687860 174687860 198332400 238557672 238557672 228886880 228886880 62687824 62687824 557112872 557112872 569587598 908232233 908232233 357172608 590719874 805661441 928873107 928873107 658454563 610153377 288539660 670844580 1049365599 1049365599 690917148 690917148 906002970 906002970 277792471 868818994 868818994 633486581 520668222 520668222 363630344 244844124 782345242 782345242 730079726 730079726 903922155 1036109061 1036109061 789032050 789032050 584771075 683046903 716078896 716078896 34131282 33571617 566528561 568328673 818678560 818678560 555524419 578675969 578675969 185341196 84624396 674355361 674355361 693991476 780896588 780896588 512374864 220910892 274763648 439135218 439135218 320923718 777096584 777096584 712822677 615205643 541199776 541199776 854283475 854283475 292413826 292413826 21267584 289477888 291424130 291424130 274991490 22353826 282408128 282408128 281215552 297828768 297828768 297795810 297795810 279496736 283326016 285138882 285138882 269070274 269083650 270313472 270313472 2443520 122880 2531584 2531584 399360 399360 399360 8388608 8388672 25477984 25477984 28362848 28362848 21291520 22052896 22052896 18874528 268740672 268740672 221475841 762841005 762841005 299353667 559941129 559941129 705463312 705463312 757592357 757592357 649994073 649994073 239895045 728647840 728647840 566756680 1039141003 1039141003 588550021 573361425 739533260 739533260 330312419 865608427 865608427 740603291 437339216 437339216 412739142 405314420 170274828 448863382 448863382 199262710 243979356 243979356 86032680 110133352 110133352 168752144 267058252 267058252 155263140 111875580 93952137 538104321 538104321 195877149 160122472 705110161 1059647735 1059647735 560502185 545185296 992775571 992775571 652363748 897201320 897201320 891206591 521970772 521970772 839449720 906491931 906491931 388752217 388752217 896521658 896521658 309959473 89652848 83533288 99885760 272607872 272607872 544424032 836276304 836276304 57284099 21276704 21276704 17131552 17131552 135315972 135315972 273559862 273559862 409606276 409606276 969102389 969102389 460324050 692130817 733638325 857477492 978378817 978378817 952124566 282202240 303580224 315151906 315151906 289676834 289676834 51636480 35656224 35656224 34736256 14164608 139306304 139306304 137726084 108121344 1019745076 1019745076 970528479 302135251 978681432 978681432 332682324 141294612 990446835 990446835 843481536 676467200 328075378 537735168 537735168 34079760 36176128 103625088 103625088 698991064 698991064 1022853388 1022853388 760081581 206600169 310388421 678496187 678496187 642806117 388145978 885731337 885731337 986118285 986118285 732469362 813914210 1052020238 1052020238 1015952035 1015952035 311564381 395577978 508168450 508168450 283125644 42152016 268578832 383879742 383879742 249679456 362994586 362994586 447219811 447219811 506338590 952440752 952440752 517396056 517396056 453025074 468455350 547502035 547502035 456467232 1004234005 1004234005 81912208 81912208 122181984 122181984 122221784 122221784 253476924 253476924 185676836 639631652 639631652 541870113 542242564 569725700 569725700 184707268 252599428 837623564 1060910711 1060910711 1049493726 1012925326 880803880 880803880 830472291 974461161 1011561615 1011561615 214118604 588054591 893337130 949817117 990252130 990252130 987849388 983274107 613970441 613970441 577580433 1047297096 1047297096 929822139 438026889 245518456 9280576 9280576 209227470 209227470 113115432 181142334 400308986 400308986 520813418 520813418 447728964 398738690 145264020 497549382 497549382 348567300 348567300 352462176 352462176 25618378 69341448 220926148 220926148 146945324 146945324 143838240 143838240 157139628 157139628 217846312 217846312 106969256 106969256 112954376 807479088 807479088 563745762 716767516 846358148 950441602 950441602 949311697 420721721 990676202 990676202 822102060 445385814 1007591607 1007591607 552531232 859879772 859879772 795200548 965942813 965942813 851800698 422907808 119808912 100473104 100473104 105014112 105014112 74572680 73991056 313737674 313737674 379309333 379309333 231651216 741347023 947453952 947453952 455626110 174942625 1063245647 1063245647 470816291 206771986 325118900 704879102 704879102 663822969 319427634 924491223 924491223 910067720 910067720 772780476 536936569 780152464 780152464 676594881 228639850 228639850 277873218 277873218 389596986 486962501 486962501 1017513474 1017513474 951193472 221306472 281330752 299420768 299420768 8668416 305188752 305188752 273419394 150587662 249364632 249364632 306322128 306322128 278137410 899805233 899805233 547783657 835332295 835332295 965758502 965758502 713229160 398356786 832273230 832273230 814142516 959351290 964543140 964543140 567280568 786281496 786281496 776480269 776480269 606737673 439175428 439175428 137888512 204481792 204481792 67108872 67108872 68157440 68157440 1049088 1049088 18879816 78250272 78250272 6297544 95944992 95944992 85673248 22173376 31511744 49061856 49061856 12491008 45050064 45050064 7130304 8837184 30132696 30132696 185505796 185505796 199043304 199043304 102761112 102761112 88085872 100700940 146849988 612669720 612669720 623083537 654633200 654633200 103098441 241965221 241965221 224789689 218368044 543018549 570532125 716997137 716997137 248629860 785697501 785697501 440693403 440693403 573971217 573971217 604986976 604986976 638482720 638482720 631299609 784074617 784074617 911484721 911484721 968927455 968927455 799077502 258475452 722126088 757241901 757241901 100663516 53888512 83367736 236988152 236988152 453624550 453624550 317927634 317927634 365952234 365952234 344352936 75430280 97548376 97548376 189121402 822090338 822090338 615415841 730482761 730482761 1025127286 1025127286 883037277 632029524 954630798 954630798 883514465 883514465 1019645438 1054161096 1054161096 769043848 769043848 576318688 544581857 679545156 679545156 667992825 667992825 608491593 975580409 975580409 819147459 628695746 628695746 513848867 259950242 55972384 153422276 153422276 313681152 313681152 453604354 453604354 420185120 420185120 127614484 197255252 394880560 394880560 231525612 231525612 367738536 367738536 361446986 294821892 294821892 459375556 693755049 693755049 308326400 407553944 407553944 774709712 774709712 546393553 598366764 598366764 655127352 655127352 346764618 352649922 352649922 273680514 85482050 359274154 359274154 39480626 310423122 314910930 332174106 336841136 382894208 382894208 364781418 294047968 176414868 626330137 626330137 176226897 918977271 1043727125 1043727125 997246236 1029236459 1029236459 955901941 702137067 830333305 830333305 184340286 482106484 1021330177 1021330177 154189626 154189626 682866589 682866589 450759170 291345290 291345290 414498340 414498340 376187186 376187186 348652592 348652592 496774146 496774146 409766720 559704101 699734451 727321738 727321738 542463526 881548817 881548817 504837122 986842806 986842806 653472641 927701570 927701570 904539954 895018272 895018272 625094784 268579976 10321472 271107458 271107458 37908608 397123562 397123562 183990852 508366550 508366550 449848509 270368995 364194494 812910383 812910383 979982698 979982698 985723157 985723157 708875408 965904183 965904183 644595901 644595901 36942342 284575514 303743384 303743384 614465865 883956625 985824975 985824975 1039925006 1039925006 161222244 161222244 420135236 499657818 537426140 1057294348 1057294348 459838562 459838562 292138576 347587086 347587086 695562736 764611385 764611385 562374753 554018272 236238492 236238492 23382432 686198824 828907566 828907566 279211026 463537558 474762442 893818404 893818404 576041709 785832669 877965729 877965729 1016844117 1016844117 997964688 997964688 698859461 694693892 17699377 18616836 696881072 696881072 757338577 757338577 614467241 614467241 749439033 749439033 186953016 547745017 727796300 727796300 542761097 180421688 180421688 603556512 603556512 584656593 548849784 133301165 259543841 259543841 612925976 612925976 578212417 578212417 619402644 619402644 887329438 887329438 1022235308 1022235308 487139022 487139022 1011912748 1023255483 1023255483 567509194 685375721 1028146344 1028146344 1028129967 67682471 1048608 802521283 802521283 391347854 1030730722 1030730722 593145483 593145483 91522867 856887446 856887446 814131719 742920704 744101517 744101517 699226208 751846952 751846952 751204441 678598614 371930042 494588072 494588072 423159590 154785702 558276876 558276876 379319898 865697586 865697586 909899547 909899547 351341772 942479430 942479430 478097004 478097004 868087120 868087120 878720923 897581163 897581163 630114129 630114129 675887840 675887840 559886440 25816872 56755064 619660256 619660256 21045408 599016101 599016101 196528868 164100324 635560428 635560428 549707905 160117860 160117860 159721572 477080018 477080018 282245154 282245154 327434272 358404972 358404972 225494286 356650160 370023450 419496248 505487646 505487646 671137797 716734469 716734469 612369409 917115204 917115204 1058091136 1058091136 388577461 1022951990 1022951990 685381317 431704340 329252466 56925224 202178852 202178852 54610072 88451248 88451248 189853652 189853652 69418000 238562132 531451024 531451024 275691808 492012138 492012138 531317662 531317662 481318154 481318154 527373492 527373492 468138846 478862340 478862340 394912890 394912890 356565500 436996054 465142676 532169530 532169530 314057682 1049441752 1049441752 940573191 940573191 652272510 866860949 866860949 903484325 903484325 492507145 584457438 819505870 819505870 709834817 709834817 709477596 504243084 504243084 270474770 216736132 740649174 845862291 908071185 908071185 1018289546 1018289546 685719237 575818199 634869598 634869598 694011361 1023260342 485109822 485109822 528483342 636036544 636036544 330146081 631902240 631902240 262930996 667835800 1002478576 1002478576 79691976 918725772 918725772 373547759 177280052 177280052 50381936 761563972 761563972 10486080 247858444 247858444 156453204 156453204 157956112 157956112 227679044 227679044 228886880 265031694 303437074 361927554 618287269 618287269 795637858 908232233 908232233 862750186 590719874 805661441 928873107 928873107 658454563 811861739 826281697 879383843 1049365599 1049365599 601173111 432673445 906002970 906002970 638668705 277792471 437024977 912061619 912061619 1016201240 1016201240 935886457 448790742 448790742 909697386 909697386 708153892 708153892 50415792 50415792 584771075 584771075 683046903 716078896 716078896 382291844 382291844 566528561 568328673 568328673 554961856 400859276 432360904 432360904 223824668 230167980 674355361 674355361 693991476 780896588 780896588 173605140 173605140 274763648 274763648 574320768 574320768 806076034 806076034 615205643 615205643 382756057 598174993 854283475 854283475 556082354 811871536 811871536 291574784 291574784 291424130 274991490 270535648 270535648 2570496 268577026 297828768 297828768 6346306 9320704 9320704 19063040 21156000 21156000 20981792 17115168 20069120 104533032 125305120 125305120 355045128 355045128 454133790 454133790 354715698 171198186 144401304 136722412 136722412 430523392 434998642 434998642 21020834 12395296 292994850 292994850 300244450 366705858 762841005 762841005 299353667 559941129 876707984 876707984 755056855 757592357 757592357 649994073 649994073 239895045 728647840 728647840 706775216 706775216 694471077 610272385 610272385 634170955 634170955 289154739 865608427 881987616 881987616 437339216 437339216 412739142 444670038 444670038 444670038 268985930 159046052 159046052 234931210 318951474 318951474 279766032 508050594 533463534 533463534 184945862 480412020 480412020 338168324 798763548 798763548 647761497 705110161 705110161 516022494 545185296 545185296 992775571 992775571 652363748 897201320 897201320 891206591 514309020 514309020 472086802 472086802 353399882 353399882 320415282 896521658 896521658 309959473 83533288 83533288 99885760 622144041 622144041 608395809 563724129 808111137 808111137 601012112 601012112 549416209 849836161 849836161 843686195 572224194 273559862 409606276 409606276 462570294 462570294 270825504 319654934 404885766 720487057 720487057 537055233 788129757 788129757 694793544 162801396 162801396 236329740 576586720 576586720 583408528 583408528 165660324 165660324 138953344 136397440 268374601 740506917 1019745076 1019745076 970528479 593434992 978681432 978681432 332682324 141294612 990446835 990446835 676467200 693244292 693244292 556794657 537735168 392092858 392092858 312980914 327157842 698991064 698991064 1022853388 1022853388 760081581 206600169 106637312 269419666 642806117 642806117 388145978 885731337 885731337 986118285 986118285 732469362 732469362 1052020238 1052020238 968629430 709691121 700654124 395577978 637937987 783495743 998715076 998715076 500705050 832354331 832354331 249679456 910428791 910428791 819126144 942803991 1014972303 1014972303 828199135 517396056 517396056 453025074 468455350 547502035 547502035 456467232 1004234005 1004234005 81912208 81912208 102982784 105021464 110892872 110892872 508309179 754978749 754978749 658244124 639631652 153092377 629475820 629475820 547531172 480794439 548800194 548800194 895641830 895641830 875455232 625214040 910170282 910170282 877269146 877269146 537005089 604635146 805966851 822650443 1009251419 1009251419 990252130 990252130 987849388 983274107 186911028 186911028 159386668 1047297096 1047297096 929822139 438026889 245518456 182113868 143617156 209227470 209227470 113115432 181142334 400308986 400308986 520813418 520813418 398738690 398738690 145264020 497549382 497549382 65061360 394000258 394000258 361723992 336118794 487772718 487772718 267105244 401119228 414332014 436341514 436341514 289755756 8727552 9062720 9062720 654160289 654160289 776845894 776845894 646259232 563745762 477560781 376760840 376760840 95556456 420721721 872941080 872941080 839909907 985426132 985426132 908824823 908824823 870520187 870520187 859879772 795200548 965942813 965942813 851800698 274204474 270804290 132984312 133510696 133510696 87427128 382661024 382661024 373998618 373998618 167950720 149933092 152482234 347079498 347079498 455626110 455626110 1003367341 1063245647 1063245647 206771986 206771986 454782556 454782556 194165332 132733418 319427634 924491223 924491223 910067720 910067720 772780476 762982941 915416504 988493271 988493271 784343252 1055392983 1055392983 988333327 416590477 1010666051 1010666051 1017513474 1017513474 951193472 275513408 281330752 299420768 540540993 638699841 638699841 802548345 802548345 683983515 813728793 881133059 881133059 129172115 202783168 534198713 534198713 931256859 931256859 605818954 815668803 815668803 344067593 388981340 388981340 814142516 814142516 716964108 716964108 401627060 401627060 786281496 786281496 744216073 942843531 942843531 439175428 439175428 406355968 405873414 204481792 272242434 892995362 892995362 644908690 844792338 844792338 306435396 909890884 909890884 881862164 881862164 279625796 132125328 132125328 69240480 56065008 57734064 58212976 58212976 45050064 38051648 38051648 35264016 29368416 29368416 25165920 97781088 97781088 102761112 102761112 122708260 550508489 550508489 612669720 612669720 623083537 623083537 109373489 58876096 134265888 134265888 151784484 186689920 186689920 38961152 38982288 38982288 54951040 54951040 84033696 916131848 916131848 553574337 553574337 59037280 615886160 615886160 631299609 631299609 53251728 138740040 216796620 772546944 772546944 693183141 693183141 827638192 827638192 757241901 757241901 409501988 784447247 784447247 330027670 656032115 656032115 453624550 317927634 317927634 365952234 365952234 344352936 969020487 969020487 578702769 1015834227 1015834227 885717121 865198867 730482761 730482761 1025127286 1025127286 883037277 632029524 954630798 954630798 850724389 764994008 1019645438 1054161096 1054161096 769043848 769043848 576318688 63178992 641485592 641485592 667992825 667992825 759437421 975580409 975580409 819147459 554031842 456164674 396018758 666440210 666440210 589605024 26610498 313662880 433131796 433131796 59415552 38221968 169175096 189647064 189647064 394880560 525605374 525605374 231525612 367738536 367738536 362862850 352338784 352338784 459375556 491484590 491484590 308326400 308326400 373420176 373420176 273339522 271107200 370691600 370691600 354616576 354616576 363665482 363665482 353313826 353313826 286211106 359274154 359274154 285802752 310423122 314910930 332174106 336841136 338974944 364781418 364781418 294047968 139462877 794642636 794642636 214814409 918977271 1043727125 1043727125 882035168 797040681 756138601 565521249 565521249 830333305 830333305 323518482 600575048 780952765 880905282 880905282 716340068 709335365 682866589 149575796 149575796 88186240 414498340 414498340 306042018 392966538 398931968 398931968 496774146 496774146 409766720 559704101 699734451 727321738 812334238 855838485 1059655437 1059655437 1048649991 986842806 986842806 653472641 653472641 433462101 256642236 280767984 280767984 853870784 853870784 77766688 271107458 271107458 111287152 397123562 702636893 702636893 574350145 508366550 935109018 935109018 780724481 812910383 883288320 979982698 979982698 985723157 985723157 850919792 965904183 965904183 602542151 594596688 31475008 22037728 22037728 78907905 614465865 883956625 985824975 985824975 1039925006 1039925006 950925527 950925527 969432460 969432460 832084652 306315360 430459008 430459008 537925908 708188949 887955167 887955167 537208833 906605664 1025820975 1025820975 761980162 774865335 774865335 529085822 1066395016 1066395016 828907566 837402915 837402915 465872044 893818404 893818404 632679273 785832669 878747992 878747992 1016844117 1016844117 997964688 997964688 694693892 694693892 37978192 194835376 696881072 696881072 155662500 155662500 52268500 149970544 149970544 146611700 81698504 613803104 613803104 122159232 122159232 180421688 180421688 603556512 603556512 584656593 205521036 785127760 785127760 576768464 612925976 674328848 674328848 117275396 150253124 408840392 887329438 887329438 1022235308 1022235308 978039344 978039344 833099848 1023255483 1023255483 567509194 685375721 685375721 428351823 1039176024 1039176024 861016755 802521283 802521283 391347854 1030730722 1030730722 749918740 593145483 865033293 865033293 787465657 787465657 788734001 788734001 744101517 699226208 699226208 751204441 751204441 678598614 371930042 469067321 469067321 609221769 609221769 208790144 590466048 590466048 865697586 865697586 909899547 909899547 355797035 540091137 540091137 478097004 1020942794 1020942794 852200710 813744168 897581163 897581163 602006001 934815674 934815674 567570311 567570311 704293800 758126984 758126984 619660256 549868129 543236481 52908801 27736416 141654624 635560428 635560428 549707905 399034083 605144066 605144066 637248202 637248202 628378372 628378372 621321028 343808170 343808170 336906762 420176058 420176058 518848988 518848988 310716498 671137797 716734469 716734469 612369409 917115204 917115204 1058091136 1058091136 876091682 1022951990 1022951990 685381317 404756419 46416056 919520339 958698766 958698766 796479381 604554906 604554906 553716112 94462992 117489720 117489720 102359040 271079266 271079266 352985152 352985152 531317662 531317662 481318154 481318154 411907450 381982714 381982714 317246570 286996002 394912890 394912890 356565500 220849452 178430012 143266884 15414720 190981381 597688689 599793143 999169143 999169143 634654253 634654253 613614906 524498576 524498576 180431132 584457438 819505870 819505870 709834817 709834817 709477596 442419412 317644242 317644242 516437770 913838082 980027045 980027045 908071185 1018289546 1018289546 809574531 374530548 634869598 781490744 781490744 694011361 0 0 0 986166476 986166476 906808347 710492575 744031512 744031512 950168597 1002478576 1002478576 530529918 1008558934 1008558934 926639382 335654986 789092311 1044154101 1044154101 876642932 542394504 730949652 730949652 570666021 570666021 568014165 705568576 705568576 804782944 804782944 265031694 303437074 361927554 618287269 618287269 795637858 806342362 862750186 862750186 538467538 604635393 604635393 360710443 636569512 811861739 826281697 879383843 879383843 294853130 432673445 432673445 633508584 638668705 638668705 214764797 437024977 912061619 912061619 1016201240 1016201240 944795728 1070878419 1070878419 909697386 909697386 708153892 708153892 344449054 203074162 279725418 335808562 335808562 340391042 377337816 382291844 382291844 343990744 502582370 502582370 400859276 400859276 432360904 432360904 351396810 514980042 514980042 510831552 138580892 176428176 176428176 173605140 290055330 290055330 321251634 828900801 828900801 815260752 806242177 806242177 3220224 591616 598174993 598174993 589367760 560334305 811871536 811871536 291574784 291574784 13958208 28059264 270535648 270535648 794882 8716800 8716800 1664192 22164160 22164160 18210080 20153856 20153856 6393952 25078784 25078784 140405412 153702404 153702404 288905606 372677434 372677434 454133790 454133790 354715698 207051344 207051344 136722412 322990880 430523392 434998642 434998642 281307264 281307264 292994850 292994850 300244450 366705858 366705858 349364808 198756084 212769312 876707984 876707984 755056855 294216709 1002988078 1065279732 1065279732 698779121 719934918 719934918 962686209 1040525343 1040525343 873031982 610272385 959158716 959158716 642591897 687155484 881987616 881987616 393751240 374205594 374205594 444670038 444670038 444670038 268985930 269484034 269484034 234931210 335564800 335564800 285380608 508050594 533463534 533463534 184945862 480412020 480412020 940720657 940720657 798763548 647761497 647761497 516022494 990791712 990791712 799010634 799010634 542900404 518301373 518301373 97298812 666466766 666466766 1010568975 1010568975 715522432 550833330 550833330 301969490 301969490 6353899 196608 208896 25243712 30533865 622144041 622144041 608395809 541095936 808111137 808111137 601012112 601012112 549416209 849836161 849836161 843686195 572224194 823658025 823658025 554170401 107967824 667510251 667510251 375728218 124875313 886813951 886813951 651149795 898137944 898137944 694793544 341970608 341970608 296361704 576586720 576586720 583408528 583408528 165660324 179467216 179467216 234629856 268374601 740506917 949761014 949761014 593434992 593434992 756959970 756959970 679867754 679867754 948495934 948495934 798015996 798015996 1002681985 1002681985 395048058 395048058 392092858 373037760 327157842 327157842 484210797 1020702924 1020702924 885023846 52803744 106637312 269419666 378052832 378052832 333473138 302650386 302650386 365845754 365845754 339990531 663003771 1037831941 1037831941 968629430 700654124 700654124 541263032 637937987 783495743 998715076 998715076 500705050 832354331 832354331 242670492 910428791 910428791 819126144 942803991 1014972303 1014972303 640426190 383810580 106890654 43872272 44640272 44640272 34718544 11459904 11459904 7143936 4725632 42217472 48955472 48955472 44803536 41087440 508309179 754978749 789586201 789586201 637601565 637601565 629475820 629475820 547531172 480794439 548800194 549612596 895641830 895641830 834935344 844239475 910170282 910170282 877269146 877269146 537005089 645959864 805966851 1048987694 1048987694 1009251419 327371597 144180804 68158540 550575344 550575344 544802753 2702193 575018407 575018407 507896896 639799137 639799137 540017668 680068360 680068360 741451920 741451920 551842584 478209308 478209308 311543442 510874364 510874364 339752576 246993548 236176848 255927848 255927848 394000258 394000258 361723992 336118794 487772718 487772718 267105244 401119228 414332014 436341514 436341514 289755756 158984100 158984100 834212481 834212481 900822478 900822478 776845894 751078406 751078406 281922777 168321220 168321220 95556456 736299404 872941080 999671261 999671261 1073097310 1073097310 908824823 908824823 870520187 870520187 352974147 269375112 345906762 369963600 531186736 531186736 270804290 132984312 133510696 133510696 107196800 382661024 382661024 373998618 373998618 277293146 465965364 465965364 839975511 839975511 599269530 691331644 1003367341 1003367341 543432375 118039608 109849632 454782556 454782556 207216386 277264502 277264502 311368788 576508690 576508690 950218817 950218817 762982941 915416504 988493271 988493271 980584134 1055392983 1055392983 988333327 943008326 1010666051 1010666051 226627692 212363240 91419520 275513408 275513408 11012129 540540993 638699841 638699841 802548345 802548345 683983515 813728793 881133059 881133059 129172115 133446323 534198713 534198713 931256859 931256859 223250084 604803088 604803088 228639084 388981340 388981340 521480254 692382747 692382747 594658207 677998100 677998100 138751249 744216073 744216073 942843531 942843531 404792582 473308938 473308938 1021841744 1021841744 852547547 892995362 892995362 821654096 882435928 882435928 681911489 909890884 909890884 881862164 881862164 279625796 132125328 132125328 69240480 56065008 57734064 58212976 58212976 53905792 38051648 38051648 54433000 54433000 178522180 178522180 498318693 1007367183 1007367183 875656471 969417327 1035485684 1035485684 563216448 567300729 597693064 597693064 658512312 658512312 617398320 205597153 220873772 220873772 556495109 556495109 593953185 593953185 258256281 258256281 1017112737 1017112737 916131848 553574337 553574337 59037280 615886160 634283008 634283008 23743488 23517600 138740040 216796620 447259852 447259852 693183141 693183141 827638192 827638192 186960340 409501988 504496288 784447247 784447247 330027670 656032115 656032115 86730726 35651856 21041664 22229664 220006128 220006128 969020487 969020487 578702769 1015834227 1015834227 885717121 865198867 973332524 973332524 158702552 420604768 420604768 355781632 355781632 850724389 850724389 764994008 764994008 130862764 88084520 95876488 120906436 120906436 625040009 658448057 658448057 229115244 727762137 759437421 774670513 774670513 693109413 680507953 757583917 757583917 727351489 666440210 589605024 175510320 313662880 433131796 433131796 145357828 145357828 169175096 189647064 189647064 164401476 525605374 525605374 224234016 288541612 362862850 362862850 352338784 352338784 36910592 36910592 85509156 226235424 226235424 103823912 103823912 21232016 21232016 389570064 389570064 354616576 354616576 363665482 363665482 353313826 353313826 286211106 286187042 286187042 285802752 285802752 39404160 19498512 7417760 22094720 22094720 18090528 55904292 172753424 794642636 794642636 214814409 172892816 43436672 882035168 882035168 699580171 699276645 1007110640 1007110640 647298319 438995467 994951458 994951458 780952765 880905282 880905282 716340068 709335365 659817428 412951514 469835790 469835790 403251276 403251276 311502668 392966538 398931968 398931968 185501732 269147354 269147354 207676120 144261312 405223686 812334238 855838485 1059655437 1059655437 1048649991 1015560889 1015560889 143242552 1017321149 1017321149 902248683 902248683 280767984 853870784 853870784 77766688 291987562 291987562 281020018 281020018 702636893 702636893 574350145 462196427 935109018 935109018 1051813658 1051813658 883288320 883288320 818403712 818403712 850919792 850919792 994695427 994695427 962070183 425652245 158548676 430704126 430704126 250256004 275958916 384212480 1036387192 1036387192 980818839 255914380 950925527 950925527 969432460 969432460 868814908 883094894 883094894 436340530 826804853 826804853 887955167 887955167 537208833 906605664 1025820975 1025820975 761980162 774865335 774865335 529085822 1066395016 1066395016 233242725 837402915 837402915 885030772 885030772 1060685631 1060685631 464670528 1062551293 1062551293 507655769 555750102 555750102 392863963 627704493 627704493 214958796 622143391 970925878 970925878 1056405428 1056405428 583808641 89654440 146611700 146611700 57974920 613803104 613803104 796205612 796205612 208503733 65324044 797330836 797330836 681703689 681904469 785127760 785127760 576768464 576768464 707791440 707791440 674496720 612892811 597263198 471687864 729298998 980591525 980591525 978039344 998640294 998640294 833099848 328413810 551654476 551654476 487586862 428351823 1039176024 1039176024 861016755 719524515 737603294 737603294 712278987 749918740 749918740 164538962 990962985 990962985 787465657 1065841722 1065841722 788734001 626207969 626207969 672272192 677449700 677449700 565780133 20916357 1355776 103304081 609221769 609221769 540648737 590466048 929902011 929902011 893750912 550101545 620835273 620835273 607998592 540091137 356129993 1020942794 1020942794 852200710 816119938 816119938 880290634 880290634 934815674 934815674 836481793 778542331 704293800 758126984 758126984 569477312 549868129 543236481 143043220 155513476 672350497 672350497 633491874 807514593 807514593 1043932959 1043932959 637248202 637248202 932402220 932402220 666016598 343808170 343808170 336906762 420176058 420176058 518848988 518848988 310716498 447174978 447174978 403734886 295249506 842598258 842598258 842018051 876091682 876091682 221253632 221253632 24253344 2000800 46416056 919520339 958698766 958698766 796479381 604554906 604554906 553716112 136179268 117489720 143402588 512352792 512352792 369238816 480264274 483149418 483149418 83498952 943905633 943905633 1034161275 1034161275 683827239 554783305 319539612 457302678 795091814 795091814 729726696 729726696 151332900 115023612 190981381 597688689 599793143 999169143 999169143 634654253 634654253 333715396 219809572 219809572 134426628 134426628 282102274 408346246 408346246 413800148 413800148 317400526 317644242 317644242 516437770 913838082 980027045 980027045 548155279 588326338 809574531 809574531 374530548 498594512 781490744 781490744 223455573 86126979 1012998575 1012998575 986166476 986166476 906808347 710492575 744031512 744031512 950168597 950168597 444661288 530529918 1008558934 1008558934 926639382 335654986 789092311 1044154101 1044154101 876642932 542394504 730949652 730949652 570666021 570666021 568014165 705568576 705568576 804782944 804782944 94683496 139739980 184574464 207146000 207146000 51718704 597442784 597442784 558490785 538467538 604635393 604635393 391767738 391767738 130551696 889979392 891031083 891031083 110101080 110101080 109125712 109125712 37892808 75598996 169802468 207544464 207544464 1001145402 1001145402 357436037 944795728 1070878419 1070878419 310977618 351367762 351367762 541664385 546872571 577118740 577118740 480266980 335808562 336130560 377337816 377337816 249737946 273803738 502582370 502582370 272156418 272156418 171098944 179652766 351396810 514980042 514980042 510831552 327678066 326206672 176428176 147725508 290055330 290055330 321251634 828900801 828900801 815260752 806242177 806242177 3220224 2347008 537112818 589367760 589367760 560334305 38377521 286234882 293810274 293810274 286274592 286274592 315754096 315754096 13968512 13896384 13641728 24204352 24204352 22164160 18210080 20153856 20153856 6393952 87724264 87724264 140405412 153702404 153702404 288905606 372677434 372677434 238023192 210746708 210746708 207051344 207051344 26614368 322990880 322990880 296297872 285600642 281307264 281307264 16354016 13903552 1122816 371638296 371638296 530587856 530587856 451072470 426410218 390866138 179146158 294216709 1002988078 1065279732 1065279732 698779121 719934918 719934918 984170732 1040525343 1040525343 981492081 981492081 1031968945 1031968945 746343662 687155484 687155484 879075648 879075648 877285034 877285034 394529082 394529082 306972914 107366288 269484034 287559728 287559728 335564800 335564800 285380608 285380608 158458788 158458788 171102996 171102996 168853535 940720657 940720657 789718045 237769260 957162540 957162540 1025866371 1025866371 799010634 799010634 717654113 833016099 975327776 975327776 820124107 666466766 1010568975 1010568975 715522432 550833330 550833330 310291074 305978378 339614720 339614720 287799378 334670434 334670434 58940520 289689664 356518554 356518554 314841856 314841856 289407138 372634122 372634122 338515152 338515152 129847056 51948442 823658025 823658025 554170401 887247114 1032360431 1032360431 876793995 187456959 886813951 886813951 651149795 898137944 898137944 315886290 341970608 341970608 296361704 297669922 297669922 293608256 535839488 535839488 179467216 198773840 234629856 234629856 207099040 207099040 744101853 744101853 608834697 984877911 984877911 1034441120 1034441120 434210124 619218120 798015996 798015996 1002681985 1002681985 395048058 395048058 425132730 425132730 204826880 341080354 484210797 1020702924 1020702924 960843098 460333381 273653620 128100968 128100968 94606824 94606824 13128168 54543728 288351498 288351498 296702130 296702130 113292320 687453124 687453124 649966793 541263032 541263032 210844112 308611314 994589108 994589108 249571071 474257822 474257822 135269004 1068762660 1068762660 811336731 283388485 396107952 396107952 516051998 516051998 113373270 43872272 44640272 44640272 34718544 11459904 41994240 41994240 2392144 7408768 49807360 49809360 49809360 7154456 106432152 106432152 789586201 789586201 637601565 637601565 604261000 672306081 672306081 705088164 705088164 549612596 588395426 588395426 834935344 844239475 844239475 861145779 861145779 329121826 845940832 845940832 796343229 1048987694 1048987694 755176057 270616906 314123864 527738274 550575344 550575344 544802753 193587260 575018407 575018407 507896896 639799137 639799137 540999680 680068360 680068360 741451920 741451920 551842584 478209308 478209308 467002396 510874364 510874364 339752576 246993548 242223044 255927848 255927848 286475122 286475122 136960696 96512192 96512192 246686884 246686884 128802832 191430916 191430916 89467140 157893036 158984100 158984100 834212481 834212481 900822478 900822478 948408388 948408388 751078406 332274930 839424348 839424348 443610340 865296253 865296253 999671261 999671261 1073097310 1073097310 813889241 813889241 704800208 704800208 692972790 717589216 940960263 940960263 538805254 531186736 57682192 57732000 57732000 107196800 346265824 346265824 268783616 302831938 302831938 520750090 520750090 465965364 839975511 839975511 599269530 691331644 722840424 892815603 892815603 433603308 820863429 820863429 403090092 207216386 277264502 277264502 403875650 678700166 682573125 950218817 950218817 738333132 738333132 522424393 436803344 980584134 983164503 983164503 786253959 943008326 943008326 805705731 805705731 351014346 430834920 430834920 295444418 295444418 293132288 34194120 323816576 323816576 497090568 497090568 478252682 396510608 379295322 365619224 365619224 3235356 507129694 507129694 673012480 673012480 692197044 906306173 999033975 999033975 65624791 45347664 692382747 692382747 594658207 677998100 677998100 671489184 671489184 88737805 477259266 477259266 279587149 473308938 473308938 1021841744 1021841744 852547547 714102408 821654096 821654096 882435928 882435928 681911489 681911489 138899712 134623232 86088000 551374881 551374881 24297408 577696480 597737841 597737841 42484833 564285472 579099233 597706305 597706305 545529360 54433000 178522180 178522180 498318693 1007367183 1007367183 875656471 969417327 1035485684 1035485684 337772698 337772698 272777474 272777474 658512312 658512312 617398320 205597153 220873772 220873772 556495109 556495109 593953185 593953185 649253721 650589785 1017112737 1017112737 184930626 284660280 284660280 202107420 691181358 851327155 851327155 652940983 609883785 819529726 868221171 868221171 316155063 109907662 774174620 774174620 510439248 510439248 461129106 504496288 504496288 197657158 427690850 459485266 506187166 506187166 133243170 92371122 225844140 225844140 330695436 330695436 204479346 429012544 429012544 816908850 816908850 666315639 1041238064 1041238064 158702552 158702552 151068708 355781632 411582738 714637972 871697925 871697925 279194913 88084520 88084520 95876488 120906436 120906436 625040009 658448057 658448057 537713456 727762137 727762137 606737673 128577649 548609752 680507953 757583917 757583917 727351489 113364785 200670112 200670112 175510320 173035012 135259460 145357828 145357828 93587488 9701952 118859832 164401476 164401476 195821116 224234016 224234016 94515976 111487320 462164668 483663588 520231628 520231628 454698004 454698004 318943648 340918418 390602754 390602754 338093104 389570064 389570064 62607778 288755456 288755456 68732424 68732424 17883688 12157472 12157472 17302560 17302560 39404160 39404160 19498512 7417760 22094720 22094720 38012960 58720368 172753424 172753424 137192404 137192404 667960485 703859685 703859685 301992373 277946946 436273748 1007110640 1007110640 647298319 768754048 994951458 994951458 776456600 776456600 407046413 708904988 708904988 371394962 412951514 469835790 469835790 403251276 411838610 411838610 196964004 196964004 185501732 185501732 275004318 406336464 406336464 374449368 615065344 615065344 349333841 505413740 505413740 747638355 1015560889 1015560889 806393973 1017321149 1060115739 1060115739 902248683 186646536 277239810 277239810 91016616 291987562 291987562 281020018 281020018 62515056 392292706 392292706 1048511201 1048511201 996554525 1051813658 1051813658 1033117913 1033117913 901443617 545259585 1035276904 1035276904 994695427 994695427 962070183 725632532 158548676 430704126 519357560 519357560 974394641 974394641 1036387192 1036387192 980818839 90486767 455460518 870380948 870380948 461128639 868814908 883094894 883094894 544050784 826804853 826804853 573573136 573573136 540281601 540083194 592971441 612205194 826056003 826056003 299273481 119088425 698736740 948068422 948068422 537128961 332957426 885030772 885030772 1060685631 1060685631 464670528 1062551293 1062551293 507655769 555750102 693238476 1021098017 1021098017 627704493 214958796 622143391 970925878 970925878 1056405428 1056405428 583808641 89654440 214397608 214397608 197541588 572575544 776210833 796205612 796205612 911549819 911549819 797330836 797330836 681703689 681904469 681904469 753272905 753272905 847927706 847927706 707791440 674496720 612892811 597263198 621488297 729298998 980591525 980591525 980639643 998640294 998640294 433163414 328413810 503426626 503426626 487586862 1026082666 1026082666 691011616 736836194 736836194 737603294 737603294 538313952 399756248 147003584 147003584 990962985 990962985 770422509 1065841722 1065841722 533318821 558631776 558631776 555222561 677449700 677449700 565780133 288082210 11465984 341321098 548223552 548223552 622945888 622945888 929902011 929902011 927354410 927354410 658247481 658247481 607998592 198971124 306281552 306281552 444943426 839434528 839434528 816119938 880290634 880290634 621462100 836481793 836481793 778542331 651832941 159876137 545483145 632819897 632819897 562040193 557298112 155513476 672350497 754974760 754974760 1013023111 1013023111 1043932959 1043932959 207171399 536735212 932402220 932402220 666016598 500489578 500489578 367445258 201462894 201462894 138547332 169481748 169481748 278648352 430493298 430493298 8572992 336467984 336467984 604311376 604311376 585105878 1030756342 1030756342 220207620 23278496 723669103 723669103 398717178 218336156 518046094 518046094 235003932 203221520 136179268 92645376 143402588 512352792 512352792 393741376 480264274 483149418 483149418 171579156 943905633 981279358 1034161275 1034161275 683827239 554783305 319539612 457302678 795091814 795091814 729726696 729726696 151332900 297016400 297016400 274153126 110179656 110179656 163185416 227153004 227153004 219874124 219809572 219809572 134426628 134426628 1245188 47203840 47761104 47761104 312591500 317400526 317400526 306355156 505883958 1048665214 1048665214 970572127 260893763 416792760 530004606 530004606 451336662 451336662 780507488 780507488 58914045 238629703 1068111199 1068111199 671514039 671514039 472523462 546443841 546443841 195566144 1016767909 1016767909 509602506 794772510 794772510 607158541 572670801 580047441 580047441 348686176 48235672 48235672 143254592 143254592 799064112 799064112 117489720 225798168 225798168 207618828 203424012 58723024 94683496 139739980 139739980 207146000 245058917 245058917 821647489 821647489 574816512 575738241 575738241 542114433 391767738 604781600 621490217 889979392 891031083 891031083 328270362 876725889 876725889 630276245 667003565 667003565 688130085 965525524 965525524 1001145402 1001145402 357436037 562393756 947660353 947660353 310977618 351367762 351367762 541664385 546872571 577118740 577118740 480266980 338433984 338433984 175832988 993531049 993531049 417956112 965215599 965215599 801161400 679477317 171098944 789995280 807551812 807551812 857544118 857544118 601157450 326206672 128527888 261716464 261716464 293133118 293133118 287056386 539195202 546370691 546370691 275297539 2347008 2347008 537112818 570464514 841406739 841406739 554608816 554608816 293810274 293810274 435295076 435295076 315754096 427557862 427557862 158886912 158886912 296976672 296976672 293736546 283567008 270989442 301017312 301017312 279425602 369049030 425595272 425595272 19956768 67747864 67747864 100721672 100721672 70519560 89137920 89137920 82642232 63252720 284113672 284113672 285600642 285600642 25454912 13615312 115640360 115640360 81891208 371638296 371638296 530587856 530587856 451072470 426410218 390866138 179146158 145499400 145499400 78117192 75773504 907759584 907759584 661435227 984170732 984170732 929686971 981492081 981492081 1031968945 1031968945 1012101352 1012101352 614394915 879075648 879075648 877285034 877285034 644105723 644105723 642026906 642026906 335551610 287559728 287559728 319910456 319910456 301989888 511244080 511244080 363339626 202697666 315638240 341840402 436453384 789718045 789718045 237769260 957162540 957162540 1025866371 1025866371 584382848 783171494 783171494 833016099 975327776 975327776 820124107 354423521 287909378 299496592 356205154 369707674 369707674 310291074 305978378 339614720 339614720 287799378 334670434 334670434 58940520 123484144 391131552 391131552 314841856 314841856 324601296 372634122 372634122 338515152 338515152 301043272 301043272 54963152 73728 382045456 887247114 1032360431 1032360431 876793995 620946931 620946931 279509112 279509112 1066412130 1066412130 969520922 1062258888 1062258888 755609095 755609095 512892287 414059110 535839488 535839488 101107792 198773840 198773840 140518088 189793524 331559384 744101853 744101853 608834697 984877911 984877911 1034441120 1034441120 820067200 820067200 769933636 769933636 809742057 809742057 256041472 256041472 425132730 425132730 204826880 341080354 341080354 15995200 960843098 960843098 460333381 273653620 400687082 400687082 283822448 291842194 291842194 113549328 755116093 1024072824 1057579366 1057579366 480338976 306790691 661951649 1064244167 1064244167 814941443 814941443 583270855 583270855 430176177 430176177 487014595 537431183 537431183 1068762660 1068762660 852758083 852758083 579865840 710515960 710515960 516051998 348192958 9249856 10642496 10642496 3458304 3671808 41994240 41994240 2392144 4285952 49807360 49809360 53674384 53674384 106432152 236240284 236240284 202375808 138919700 569733344 789480893 789480893 672306081 705088164 705088164 844235719 844235719 588395426 549453984 549453984 700593155 700593155 806096932 806096932 845940832 845940832 796343229 796343229 755176057 755176057 270616906 773849609 773849609 527738274 409479622 409479622 442837398 442837398 380512532 201984476 72155136 540999680 540999680 72090760 71830664 92276288 92276288 457630228 457630228 467002396 784891909 784891909 483431494 583680896 583680896 544737153 98202380 133268972 417547122 565886904 631078832 631078832 96512192 113796624 128802832 128802832 111058368 127029120 127029120 20330016 18645536 16777248 543281288 543281288 696350400 696350400 948408388 948408388 784354310 332274930 839424348 965289063 965289063 865296253 865296253 827571538 832662788 832662788 357249744 357249744 122956908 333406602 687867972 692972790 717589216 940960263 940960263 538805254 394030026 313811672 62736224 911158889 911158889 346265824 862103129 862103129 130151848 450900872 520750090 826532315 826532315 811328733 811328733 129685368 111710752 766591600 892815603 892815603 433603308 820863429 820863429 169159188 169159188 442175762 442175762 410304768 678700166 682573125 823034258 823034258 738333132 738333132 1006883005 1006883005 861339808 861339808 541854849 605072398 605072398 686522562 805705731 805705731 351014346 430834920 430834920 295444418 295444418 293132288 34194120 323816576 323816576 281552576 72982576 396510608 396510608 379295322 365619224 866773331 866773331 809559945 507129694 673012480 673012480 692197044 906306173 999033975 999033975 65624791 45347664 367415498 367415498 459646512 459646512 372835092 695606181 695606181 151729612 151729612 682295809 682295809 681584906 277092421 810659928 810659928 445785041 343064848 35685274 33718272 0 0 0 138899712 138899712 134876424 134876424 551374881 551374881 24297408 577696480 597737841 597737841 288884514 564285472 579099233 597706305 597706305 545529360 294693704 294693704 218241268 218241268 94322280 201940076 1025225760 1025225760 940049415 417855942 417855942 246481392 119014816 331674728 331674728 83306176 599693889 599693889 582396033 574657984 5848256 37769216 45361232 45361232 649253721 650589785 832257394 865599584 868221171 868221171 810830051 202107420 691181358 851327155 851327155 652940983 609883785 819529726 868221171 868221171 975218896 975218896 774174620 774174620 510439248 510439248 461129106 461129106 409080472 381817050 462370034 462370034 506187166 506187166 262171232 92371122 672008305 672008305 330695436 519321488 622990811 622990811 978605315 978605315 908335381 908335381 1041238064 1041238064 797062757 404960131 517190230 857031492 857031492 848890624 871697925 871697925 563872704 32821024 32821024 18351648 35651680 60817776 127998384 601680296 601680296 537713456 773360037 773360037 641331764 641331764 582674248 582674248 84764456 578962048 578962048 20306608 200670112 200670112 142655556 105547568 34624256 220545664 220545664 125337812 211935564 218893096 218893096 231917484 231917484 87871272 26288736 94515976 94515976 462164668 483663588 520231628 520231628 454698004 454698004 318943648 340918418 390602754 390602754 338093104 308494944 341851258 341851258 295183208 295183208 28649024 79629640 79629640 269657088 269657088 277162050 305923344 305923344 65857712 65857712 6984320 51780256 51780256 65803376 65803376 159916105 159916105 137192404 137192404 667960485 703859685 703859685 301992373 277946946 849514051 907174884 1064655647 1064655647 768754048 768754048 102842632 623346132 864197032 864197032 708904988 708904988 593035942 440610962 440610962 189996006 286607332 411838610 411838610 457340322 457340322 313382036 177083586 275004318 406336464 406336464 374449368 615065344 615065344 605456714 723686979 856593437 856593437 747638355 806393973 806393973 453514046 1060115739 1060115739 457326970 738383086 738383086 706925280 91016616 183380172 270620976 270620976 68582833 549318465 560982915 560982915 1048511201 1048511201 996554525 939470853 795610557 1033117913 1033117913 901443617 839118867 1035276904 1035276904 566710277 566710277 725632532 725632532 141231904 291979492 519357560 519357560 974394641 974394641 567559931 259825129 1027722503 1027722503 723226375 870380948 1057486911 1057486911 762174534 443225384 443225384 544050784 709526897 709526897 888743578 888743578 629720264 652895539 652895539 835233506 835233506 826056003 299273481 326516106 800596724 965688185 965688185 741868823 452986499 332957426 716556756 727851449 727851449 1052226256 1052226256 202034379 912328540 912328540 908139291 1021098017 1021098017 724399760 58758373 826644219 878148355 878148355 833994528 833994528 566749408 624551565 624551565 351238062 314802910 1035036395 1035036395 776210833 540387744 911549819 911549819 138201740 281233646 566518516 593609121 593609121 753272905 753272905 847927706 847927706 534652106 534652106 156436613 165100260 621488297 621488297 481300584 481300584 980639643 980639643 975868413 863309654 1070910538 1070910538 822954192 351933828 1026082666 1026082666 561513037 824510018 824510018 510344353 538313952 546350981 553357696 553357696 552783940 134555652 12988612 12585217 545259585 545259585 679883813 679883813 558631776 555222561 691069856 691069856 566367108 537129280 562391552 562391552 548223552 548223552 636051744 636051744 594544224 826130507 927354410 927354410 658247481 658247481 563485612 198971124 403753572 403753572 998167052 998167052 956455228 956455228 883315016 883315016 261247811 193337460 732318292 732318292 425159310 425159310 545483145 632819897 632819897 562040193 557298112 333521394 920923026 920923026 979468294 1013023111 1013023111 967148838 967148838 786549123 683982887 442276376 442276376 441715494 500489578 500489578 406847622 406847622 214433986 237843612 237843612 169481748 278648352 430493298 430493298 8572992 50616432 625707616 625707616 665850920 665850920 1030756342 1030756342 287608964 387244800 954288684 985710807 985710807 307249733 518046094 518046094 438119958 404285456 32950272 49150448 74975168 109782344 268484930 393741376 393741376 391168698 499489102 536142138 536142138 981279358 981279358 835410240 181588692 181588692 236065308 236065308 137367832 136364292 471371890 471371890 309025428 530752994 530752994 816630418 948224823 948224823 925784055 880024995 453390692 453390692 255666140 447161430 447161430 176423170 173126550 311406914 311406914 279591314 276059328 276059328 37674768 306355156 505883958 1048665214 1048665214 970572127 260893763 889469442 889469442 622015017 451336662 451336662 780507488 780507488 58914045 238629703 1068111199 1068111199 707749140 671584588 671584588 646782225 546443841 195566144 1016767909 1016767909 890578966 890578966 794772510 607158541 572670801 580047441 580047441 82382848 637716332 796409677 796409677 120694684 799064112 799064112 627893573 710430001 724042396 774111549 774111549 541329816 98615784 98615784 190136464 190136464 245058917 245058917 821647489 821647489 574816512 575738241 575738241 542114433 329882480 604781600 621490217 621490217 363604952 383321986 383321986 876725889 876725889 630276245 667003565 667003565 688130085 965525524 965525524 961959078 587319940 986655453 986655453 995553515 995553515 753636267 537079809 74535193 73449864 100691208 100691208 425760416 425760416 404277062 472258176 472258176 993531049 993531049 417956112 965215599 965215599 905616898 905616898 717362555 789995280 807551812 807551812 857544118 857544118 601157450 139799112 181028108 261716464 261716464 293133118 293133118 620506697 620506697 814224515 814224515 269095938 537532418 809631793 809631793 570464514 841406739 871341408 871341408 554608816 431890278 431890278 435295076 435295076 289163810 427557862 427557862 403240928 410613538 410613538 296976672 293736546 283567008 270989442 301017312 301017312 279425602 369049030 425595272 425595272 220115972 296382222 335857674 335857674 135655688 144316260 160665636 160665636 143889408 63252720 284113672 284113672 270312450 318141136 318141136 314872544 115640360 115640360 81891208 170153009 331977883 331977883 520546565 715626719 744817133 744817133 528484801 540689958 841006661 841006661 648352337 944244009 944244009 661435227 645972057 497550979 406856992 406856992 442907498 792859162 792859162 1012101352 1012101352 359974506 287228064 287228064 338325099 575624425 644105723 644105723 642026906 642026906 335551610 102422888 303665920 303665920 301989888 301989888 511244080 511244080 363339626 235948416 315638240 341840402 436453384 436453384 254050332 255552512 255552512 773482788 773482788 873446428 873446428 908594960 908594960 542122016 445209942 678038038 678038038 765595931 1018828623 1018828623 694318162 109275408 86213264 118794416 118794416 117820952 47416448 47416448 15984768 3044160 21460144 36124944 391131552 391131552 51241552 306447488 324601296 324601296 106880920 84566074 299588634 301043272 360692617 884823465 884823465 590022003 957679729 957679729 625346731 938024355 938024355 793392555 628826624 279509112 1066412130 1066412130 969520922 1062258888 1062258888 755609095 755609095 512892287 545263824 545263824 101107792 101107792 81795136 98442272 98442272 111612878 582406177 582406177 581818993 932914339 932914339 190058789 891967816 891967816 841954522 870582540 870582540 769933636 809742057 809742057 376967862 376967862 318705794 486674478 532941930 622488993 622488993 433206424 820020107 820020107 469777600 511770796 511770796 444983382 444983382 291842194 291842194 681969776 755116093 1024072824 1057579366 1057579366 480338976 306790691 661951649 1064244167 1064244167 814941443 814941443 583270855 583270855 524394282 524394282 971996252 971996252 642026767 946605315 946605315 852758083 852758083 738263592 710515960 710515960 348192958 451577302 451577302 451032150 445691990 180268562 312965380 312965380 310030804 2769408 6891776 11488640 11488640 53674384 53674384 7213344 236240284 236240284 17179824 561318800 561318800 789480893 789480893 560897029 576790929 576790929 844235719 844235719 404750598 419561792 805364448 805364448 735826146 806096932 806096932 688328883 691191225 691191225 779590408 881187218 881187218 238076700 773849609 773849609 168236950 409479622 409479622 442837398 442837398 380512532 740068872 740068872 676674048 676674048 680269440 680269440 881618086 881618086 806964762 457630228 281727202 784891909 784891909 483431494 583680896 583680896 544737153 93581928 133268972 417547122 565886904 880821449 880821449 882513483 882513483 649203768 328283992 111058368 127029120 127029120 18645536 18645536 19049888 543281288 543281288 478677260 673854862 673854862 784354310 784354310 504052506 504052506 965289063 965289063 251802849 507494588 827571538 832662788 832662788 357249744 357249744 361056904 361056904 333406602 48769680 400861688 400861688 317785530 394030026 394030026 313811672 132498136 911158889 911158889 310717618 862103129 862103129 130151848 450900872 450900872 826532315 826532315 811328733 844253009 844253009 775455504 775455504 766591600 907055681 907055681 1035225967 1035225967 903531787 743855579 442175762 442175762 805720064 986408165 986408165 589685009 757131544 757131544 845316111 1006883005 1006883005 408986368 695322886 695322886 986283032 986283032 477415692 477415692 263473628 207702444 149066048 149066048 139860384 30853952 24823072 21126496 487615900 487615900 256967374 289964704 299591266 299591266 274339458 289781073 866773331 866773331 809559945 489408399 664408612 664408612 956435112 956435112 218848932 202307144 221620744 221620744 367415498 367415498 341940136 341940136 284829544 695606181 695606181 540098818 806478339 806478339 682295809 681584906 277092421 810659928 810659928 445785041 1019229526 1019229526 816841539 816841539 487266357 612511041 612918872 612918872 223868841 136240644 67245316 31654144 327936 22544770 288884514 288884514 288884514 288884514 42606690 298325296 298325296 284287938 294693704 294693704 218241268 311939729 908028243 908028243 1025225760 1025225760 940049415 417855942 417855942 246481392 119014816 613784488 613784488 555097632 599693889 599693889 582396033 574657984 5848256 37769216 45361232 45361232 34990608 43294784 43294784 865599584 868221171 868221171 810830051 50595888 50595888 59768864 59768864 30409216 22020768 141558050 424673958 424673958 975218896 975218896 422689507 411541468 448237908 448237908 243965560 243965560 311163544 382730970 462370034 462370034 394256724 451273296 451273296 318522380 672008305 672008305 161880935 519321488 622990811 622990811 978605315 978605315 908335381 908335381 736788133 797062757 797062757 404960131 517190230 857031492 857031492 848890624 715669908 584090117 563872704 220465452 220465452 165945760 165945760 183759753 768633805 768633805 760515085 624955260 773360037 773360037 641331764 641331764 738912188 738912188 665259905 542260153 265737276 265737276 154157920 154157920 142655556 235423656 255534232 651433121 651433121 798495748 798495748 227550180 822782304 905639299 905639299 952104547 952104547 1017312898 1017312898 92817000 92817000 76681800 69411128 69411128 64824192 105461776 116968112 116968112 119537664 119537664 27789056 341851258 341851258 295183208 295183208 28649024 79629640 79629640 269657088 269657088 277162050 305923344 305923344 65857712 65857712 6984320 51780256 51780256 65803376 65803376 57938672 64636816 102240304 128501112 386589722 386589722 111932760 281784074 281784074 849514051 907174884 1064655647 1064655647 245899804 136594459 102842632 623346132 864197032 864197032 707854852 707854852 593035942 440610962 440610962 189996006 7510144 151422694 151422694 457340322 457340322 313382036 424007712 424007712 184830630 581169489 719628247 719628247 885972171 885972171 723686979 856593437 1057261360 1057261360 622250041 622250041 553866070 980456781 980456781 468264421 738383086 954964026 954964026 417467688 417467688 126849192 88357082 68582833 691086117 886927461 886927461 1042518775 1042518775 319427247 1072303984 1072303984 540345029 777018186 839118867 839118867 509622597 509622597 418927648 418927648 151195904 151195904 137597312 291979492 291979492 226509006 439012160 567559931 567559931 407557254 1027722503 1027722503 723226375 819454806 1057486911 1057486911 762174534 443225384 443225384 428281080 709526897 709526897 888743578 888743578 629720264 652895539 652895539 835233506 912784057 912784057 644302355 326516106 800596724 965688185 965688185 1068156155 1068156155 1031763244 1031763244 727851449 1001384482 1052226256 1052226256 608390301 912328540 912328540 908139291 520418304 724399760 724399760 627039524 826644219 966039360 966039360 833994528 836351112 836351112 624551565 624551565 351238062 314802910 1035036395 1035036395 809147801 724582804 346131045 254919045 186765956 186765956 566518516 593609121 593609121 541624625 52858880 203477252 203477252 106022032 207100038 556479554 556479554 531828014 531828014 782179316 815047237 815047237 805619715 863309654 863309654 1070910538 1070910538 822954192 203189823 691011616 691011616 857527602 857527602 897813619 957447290 957447290 694551395 553357696 696433220 696433220 676102789 399291002 1046420059 1046420059 545259585 679883813 679883813 144821696 546382624 691069856 691069856 673910148 702467556 702467556 562391552 545120032 545120032 636051744 636051744 594544224 659677881 659677881 122415753 107078040 171971388 171971388 488706488 488706488 403753572 998167052 998167052 956455228 956455228 883315016 883315016 664758602 667025373 667025373 165416148 745744024 745744024 617082880 617082880 326370898 326370898 333521394 333521394 920923026 920923026 979468294 979468294 419438631 967148838 967148838 786549123 683982887 442276376 442276376 405328916 300817056 403443942 406847622 406847622 214433986 237843612 237843612 287187061 714817111 714817111 596385909 540625984 893729380 893729380 625707616 715594036 715594036 537953536 537953536 287608964 387244800 954288684 985710807 985710807 681874988 440936210 440936210 438119958 404285456 76627200 76627200 74975168 109782344 109782344 66716784 66716784 48114202 499489102 536142138 536142138 501220036 835410240 835410240 826573171 826573171 1017305560 1017305560 547178220 1008774597 1008774597 541885290 309025428 530752994 530752994 816630418 948224823 948224823 925784055 880024995 576531971 886779123 886779123 537993729 685779728 979023127 979023127 311406914 816366032 843905794 843905794 276059328 1432144 46447504 275592453 426404231 1036710054 1036710054 768014438 889469442 889469442 692337732 327767717 900858894 900858894 791733480 791733480 615936 1098240 707749140 707749140 671584588 931016473 931016473 589770960 589770960 948972625 948972625 890578966 890578966 367138048 717882754 1063925021 1063925021 915133599 699065139 637716332 796409677 796409677 34036624 90762536 627893573 627893573 710430001 724042396 774111549 774111549 541329816 258476472 258476472 241243580 190136464 222157484 222157484 214693068 79571456 319096066 319096066 279207232 329882480 389231418 389231418 399248634 399248634 393085370 383321986 383321986 762875577 762875577 626066489 713744588 713744588 540037524 705741056 961959078 974331968 1054028343 1054028343 986655453 995553515 995553515 753636267 537079809 350344330 887533674 887533674 894331392 894331392 425760416 404277062 472258176 472258176 224535658 859574058 859574058 575177305 317235846 905616898 905616898 717362555 680790597 350195810 1016409292 1016409292 403618619 369789640 369789640 190879504 190879504 209841944 209841944 136693248 620506697 620506697 814224515 814224515 269095938 537532418 809631793 809631793 539412736 826965009 871341408 871341408 270741092 431890278 431890278 274556180 433193408 433193408 405333540 405333540 403240928 410613538 410613538 154357862 80363532 224659272 224659272 22469280 81547328 81547328 10621928 90325000 220115972 220115972 296382222 335857674 335857674 135655688 144316260 160665636 160665636 143889408 270455186 270455186 270312450 270312450 318141136 318141136 314872544 211288102 268520522 268520522 170153009 922953760 922953760 520546565 715626719 744817133 744817133 528484801 540689958 841006661 841006661 648352337 944244009 944244009 753481744 753481744 497550979 576990918 576990918 994447786 994447786 866143658 866143658 625505586 625505586 907928378 907928378 276829954 276829954 277126368 290116770 290116770 308709568 308709568 296284304 322189376 322189376 328957282 328957282 307407392 141568772 235948416 235948416 220998172 220998172 155303964 254050332 254050332 255552512 269780230 269780230 738718873 873446428 873446428 908594960 908594960 542122016 425986470 955255649 955255649 765595931 1018828623 1018828623 801149262 313788002 313788002 221774150 303993394 303993394 58789136 318311346 318311346 270064458 96925920 96925920 373147648 373147648 63704448 306447488 307801250 307801250 106880920 50906160 87730400 87730400 360692617 884823465 884823465 590022003 957679729 957679729 625346731 938024355 938024355 965884605 965884605 411441750 829778433 863373822 863373822 453846617 80945280 453135490 453135490 347916212 795666542 795666542 525061201 109682960 109682960 98442272 98442272 80741064 582406177 582406177 581818993 932914339 932914339 190058789 891967816 891967816 841954522 870582540 870582540 682636585 32650980 235475074 376967862 376967862 318705794 486674478 532941930 622488993 622488993 433206424 820020107 820020107 469777600 511770796 511770796 444983382 444983382 134561874 33687712 681969776 681969776 994570480 994570480 67436584 67436584 109363384 109363384 75108624 75108624 120272184 120272184 82746712 428070136 524394282 524394282 971996252 971996252 642026767 1057491744 1057491744 308020375 738263592 827510864 827510864 403243054 403243054 451577302 451577302 451032150 445691990 180268562 312965380 312965380 310030804 45353808 6891776 11488640 11488640 57673120 57673120 106959800 106959800 106170520 106170520 561318800 561318800 558767265 258674952 543492112 576790929 576790929 594696800 594696800 747213372 921172865 928808202 928808202 735826146 735826146 617327015 433850535 691191225 691191225 779590408 881187218 881187218 764313215 281580155 3220224 3220224 9178176 9182812 245243484 245243484 244518428 740068872 740068872 676674048 676674048 680269440 680269440 881618086 881618086 806964762 281727202 462833781 730110582 730110582 277797954 201350222 36750096 1018269974 1018269974 1058218439 1058218439 651321553 880821449 880821449 882513483 882513483 649203768 328283992 91276200 68835936 68835936 17827328 5243520 19049888 362307715 362307715 478677260 673854862 810681792 810681792 505526272 505526272 862943642 862943642 866173995 866173995 95232521 115245280 117240952 117240952 319427634 354211890 361056904 361056904 276903608 63497424 319373344 389079272 389079272 374931610 346661314 306275816 132588384 893485344 893485344 570727432 570727432 373804072 373804072 310378578 125980744 68191536 255329888 255329888 844253009 844253009 775455504 775455504 608474732 907055681 907055681 1035225967 1035225967 903531787 878683730 872077299 850301813 850301813 986408165 986408165 589685009 757131544 757131544 845316111 845316111 961882791 961882791 695322886 695322886 986283032 986283032 477415692 477415692 263473628 207702444 98072512 139860384 139860384 22743008 21126496 21126496 487615900 523283134 523283134 289964704 299591266 299591266 310904496 310904496 114139530 361674192 361674192 354432368 96741544 96741544 956435112 956435112 768337098 768337098 225034405 227017740 227017740 354897952 354897952 71749632 71749632 84546600 84546600 540098818 806478339 806478339 404935425 268460097 268484610 882966542 966902951 966902951 1019229526 1019229526 816841539 816841539 698681893 698681893 619321417 612918872 746575876 746575876 541975713 541975713 7216512 580005856 587276337 587276337 572571921 572571921 9086033 808819824 808819824 600342658 52695296 52695296 79743312 311939729 908028243 908028243 866346096 866346096 91115874 277346370 346024674 564777072 937875963 937875963 613784488 555097632 555097632 55711280 318640914 318640914 45242256 61161746 274831410 274831410 874793407 1029986671 1029986671 888735960 922757535 922757535 686819499 203115389 625393106 1010701023 1010701023 772016157 772016157 296485805 109120994 1057597244 1057597244 887464498 887464498 544598913 219623921 219623921 160928044 231326010 387730184 387730184 382730970 374604992 374604992 451273296 451273296 318522380 318522380 228853554 9474116 468821648 468821648 285399444 285399444 242705720 242705720 137500712 96883120 88562920 162408736 162408736 64714868 159462000 193503508 193503508 196724004 196724004 161498116 220465452 220465452 165945760 165945760 222368800 768633805 768633805 760515085 624955260 624955260 537548245 537548245 245382408 738912188 738912188 665259905 580942489 751042061 751042061 547175616 123773096 193666204 235423656 255534232 651433121 651433121 798495748 798495748 597762417 822782304 905639299 905639299 952104547 952104547 1017312898 1017312898 470889442 395322954 233059428 473636460 473636460 376439496 156901152 105461776 105448968 119537664 119537664 85997312 27789056 26215008 70350656 70350656 20584296 3739136 3739136 2792960 27003712 27003712 27078240 28659008 28659008 9453568 4667520 2831616 6958976 33110928 105124904 122034360 122034360 102240304 128501112 386589722 386589722 111932760 281784074 281784074 331495336 381232986 381232986 326602850 105281696 33298834 67241040 67241040 102477688 294941240 353835520 353835520 68234048 6291840 6291840 432908256 432908256 406113030 322004656 444925970 444925970 170027222 424007712 424007712 184830630 581169489 719628247 719628247 885972171 885972171 351474976 286264117 1057261360 1057261360 622250041 622250041 553866070 553866070 468264421 468264421 701658736 954964026 954964026 417467688 417467688 126849192 300600670 514643426 691086117 886927461 886927461 1042518775 1042518775 319427247 1072303984 1072303984 452407366 185539638 176962597 169208912 280842544 329252466 329252466 308764850 308764850 253533378 253533378 232081052 232081052 5374464 5245440 5507712 18588326 407557254 407557254 356762668 215983036 338417912 355653602 355653602 145830784 44642580 138479488 581275700 693789601 861806365 861806365 549391907 97139592 97139592 339247688 339247688 912784057 912784057 644302355 297355522 101531553 304752032 304752032 1068156155 1068156155 1031763244 1031763244 589760813 1001384482 1001384482 604640265 608390301 647021145 896712057 896712057 851950219 603996167 627039524 627039524 474835777 966039360 966039360 816631107 836351112 836351112 10222403 61075824 318119878 318119878 872084829 872084829 809147801 724582804 346131045 254919045 186765956 186765956 182424884 57462192 541624625 622887177 622887177 1059070250 1059070250 352505882 352505882 675550341 675550341 771817745 771817745 782179316 815047237 815047237 805619715 115833363 1054551806 1054551806 1004109836 620487708 620487708 362868883 527415876 857527602 857527602 897813619 957447290 957447290 694551395 374842097 957400609 957400609 676102789 399291002 1046420059 1046420059 712093700 712093700 541683136 147294464 31492480 12918976 673910148 673910148 702467556 702467556 547476929 545762816 545120032 596526657 596526657 660186112 660186112 660136697 644893777 653807695 653807695 1007226903 1007226903 488706488 679946260 679946260 703011673 703011673 560181664 126035450 664300968 1038621699 1038621699 667025373 347922594 745744024 745744024 617082880 617082880 114044762 64817808 64817808 710157488 710157488 113845461 874530048 874530048 818529293 820939915 820939915 679583182 604000546 1043482972 1043482972 772578262 201901068 214435020 214435020 214435020 213910660 138412164 8437956 287187061 714817111 714817111 596385909 540625984 893729380 893729380 865757762 865757762 898780531 898780531 67109760 67109760 93663632 275990636 402653190 801445960 801445960 344336633 24199296 71441088 71441088 115157976 115157976 70456320 70456320 51512672 51512672 25183440 125550428 143303760 143303760 812856332 1035765167 1035765167 671142064 826573171 826573171 1017305560 1017305560 978937255 1008774597 1008774597 570238853 154190628 865745425 865745425 414323526 446484054 857624677 857624677 67567779 576531971 886779123 886779123 537993729 685779728 979023127 979023127 306120853 816366032 843905794 843905794 131017848 131017848 360359812 360359812 426404231 1036710054 1036710054 768014438 986526366 986526366 692337732 327767717 900858894 900858894 791733480 791733480 422730840 532467582 753195574 753195574 676256901 931016473 931016473 886331538 589770960 611395553 844313235 844313235 320800137 367138048 717882754 1063925021 1063925021 915133599 699065139 994707082 994707082 339873930 593103269 1060897438 1060897438 798507017 798507017 601131637 257299344 507124440 507124440 370674198 503322376 503322376 107285008 206394184 214693068 214693068 79571456 270319106 279207232 279207232 279130434 389231418 389231418 399248634 399248634 393085370 308321640 3426372 762875577 762875577 626066489 713744588 713744588 540037524 705741056 705741056 974331968 1054028343 1054028343 792778423 885141576 885141576 683835738 388812090 523127981 887533674 887533674 894331392 894331392 307109330 385149572 434701708 434701708 224535658 859574058 859574058 575177305 576787144 576787144 684648772 684648772 1017270073 1017270073 1016409292 1016409292 862125439 541140622 369789640 190879504 190879504 209841944 209841944 136693248 51218064 68311392 68311392 85236136 87481128 87481128 291621144 291621144 289450256 282657730 304441410 313117008 313117008 830671157 830671157 274556180 825475926 845788499 845788499 827657347 561301863 145811697 974738032 974738032 919242698 939655271 939655271 805602308 837443370 959583270 1009255335 1016074957 1016074957 763614604 763614604 606794984 606794984 562823788 88741256 105394224 105394224 45292816 270455186 270455186 20111808 186011878 186011878 177758578 168420372 211288102 268520522 268520522 138938888 922953760 922953760 394536968 83886098 42152016 347459072 347459072 45389570 371871040 371871040 371856666 1019221632 1019221632 753481744 753481744 211102284 576990918 576990918 1039466510 1039466510 866143658 866143658 625505586 807227523 907928378 907928378 893118067 893118067 587706978 823854243 865822546 865822546 308709568 296284304 322189376 322189376 328957282 328957282 307407392 283667712 307795408 307795408 50125696 50125696 42991760 31789072 31789072 136079430 269780230 873324194 873324194 755069255 605222906 638657049 638657049 668798660 668798660 955255649 955255649 705042453 681975705 801149262 801149262 488901968 457212694 263840032 380371498 380371498 120936216 318311346 318311346 270064458 302017544 302017544 343956026 343956026 63704448 293193426 375989738 375989738 324767888 294175842 280151458 306573642 325356520 325356520 332482342 332482342 401619074 401619074 311407326 311407326 175761928 965884605 965884605 411441750 829778433 863373822 863373822 792767616 766889773 766889773 453135490 347916212 795666542 795666542 525061201 109682960 109682960 79440600 652349913 652349913 879416715 879416715 598248955 550584146 550584146 530312687 388063712 388063712 550381948 623575877 682636585 682636585 140590704 231245652 231908284 231908284 226300728 203374512 243807628 243807628 268346928 268346928 117492540 268545216 281857218 290318386 290318386 197577824 46582854 298845824 298845824 727715968 729948416 994570480 994570480 957300832 943987313 593284785 109363384 597164848 900206637 956957047 956957047 812039872 320422884 275948660 203771288 100272264 0 0 1057491744 1057491744 738722432 738722432 827510864 827510864 403243054 403243054 208740762 51906096 51041328 52684304 52684304 36750096 177006680 245680476 245680476 202525248 81789064 81789064 110231864 110231864 171445232 171445232 106170520 106170520 4708357 239786684 594443300 594443300 243153801 761530797 761530797 721838514 721838514 747213372 921172865 928808202 928808202 356383198 617327015 617327015 307542642 269225010 705114612 705114612 767182844 767182844 878283537 878283537 576719887 134340612 97528574 277955584 277955584 1061750177 1061750177 754017224 754017224 642887168 82061704 73531840 76571328 76571328 1073184 17949216 445497880 462833781 730110582 730110582 170133204 170133204 36750096 1018269974 1018269974 1058218439 1058218439 651321553 651321553 96592625 274862466 377745488 377745488 127566936 91276200 68835936 68835936 25700640 25700640 14301152 39847874 306046530 306046530 34336384 810681792 810681792 505526272 505526272 862943642 862943642 866173995 866173995 95232521 115245280 117240952 117240952 319427634 319427634 109014930 276903608 276903608 63497424 63497424 389079272 389079272 374931610 346661314 306275816 132588384 553731368 835351649 835351649 828897840 828897840 373804072 310378578 108867480 909605275 909605275 440157896 648945668 648945668 216947408 258086848 258086848 153905016 339306980 339306980 356257578 878683730 878683730 872077299 850301813 850301813 324933744 53684260 177658452 177658452 226552372 226552372 824191876 961882791 961882791 675094819 292097793 714302904 714302904 417806790 417806790 140718468 140718468 376851504 376851504 27946624 25138592 17619968 17619968 12717056 523283134 523283134 217926876 217926876 64970256 310904496 310904496 114139530 361674192 361674192 354432368 710153120 710153120 285786134 532746484 768337098 768337098 461479983 805953544 816694859 816694859 613856067 88035968 88035968 542239365 693837829 693837829 541163712 541163712 605024589 605024589 671346693 882966542 1019417736 1019417736 1033540871 1033540871 767046381 767046381 698681893 698681893 619321417 557328132 746575876 746575876 541975713 541975713 7216512 813830562 813830562 635676648 635676648 572571921 879382528 879382528 808819824 600342658 398292466 380843768 122415768 118254832 118254832 343093722 343093722 98178392 646027755 926272282 926272282 920654811 937875963 937875963 849193040 584847345 584847345 806722803 806722803 541739568 45242256 424878948 424878948 274831410 874793407 1029986671 1029986671 888735960 922757535 922757535 686819499 203115389 625393106 1010701023 1010701023 772016157 1011781632 1011781632 969229556 1057597244 1057597244 887464498 887464498 548507624 268840244 488813110 488813110 411516176 921090395 921090395 396535994 862029887 862029887 492962850 492962850 337491196 949189225 949189225 399846138 989701033 989701033 156825220 156948132 156948132 137500712 137500712 41053696 30926240 41770560 41770560 145769216 145769216 53279776 63913200 63913200 41355104 84191296 84191296 21759136 78297312 78297312 222368800 231243860 231243860 613453824 739664457 739664457 201360448 76039436 245382408 245382408 564357632 564357632 580942489 751042061 751042061 547175616 123773096 193666204 193666204 101547896 87624456 44766096 41039184 558900176 597762417 724640561 731980149 731980149 265160183 231605650 387979972 470889442 470889442 395322954 233059428 473636460 473636460 376439496 156901152 67244040 105448968 105448968 85997312 85997312 65604160 68560128 70350656 70350656 11673664 3269376 3233536 1686080 10028544 10028544 10585408 10585408 9453568 9453568 5361701 5361701 154752901 154752901 142555045 122034360 122034360 595415009 595415009 353838650 805335307 805335307 268599808 81687338 331495336 381232986 381232986 326602850 115207896 115207896 84137544 119566792 119566792 39271056 68295112 68295112 308352642 308352642 307259282 432908256 432908256 433943136 433943136 444925970 444925970 170027222 281516034 281516034 268830722 268834818 268834818 268441600 15732176 950642978 965853254 965853254 539577157 370331657 370331657 337166858 157097673 27813399 845596480 855038931 855038931 333676851 303098112 369105808 369105808 350133314 350133314 514643426 514643426 44718908 256663088 256663088 463129708 463129708 172365972 734735984 734735984 393807738 843261328 843261328 474617561 329252466 329252466 308764850 308764850 390726240 390726240 389951498 305999492 305999492 326299496 401526102 401526102 277491878 353769520 353769520 263334464 173772606 173772606 405573190 405573190 837212622 837212622 816356585 698979169 861806365 861806365 549391907 97139592 386501360 386501360 312405762 312405762 285048448 302293232 325294162 325294162 297662576 11267744 340953016 340953016 326402469 326402469 272389674 637290872 637290872 1054868885 1054868885 647021145 896712057 896712057 851950219 471778485 494406187 494406187 223799082 462358167 615518273 615518273 661885447 661885447 587653837 587653837 423157510 318119878 1052784477 1052784477 256596616 256596616 137363712 141590528 141607812 141607812 37771264 38197392 69359873 622887177 622887177 1059070250 1059070250 352505882 678828933 678828933 678828933 771817745 771817745 308446312 988930924 988930924 582126573 797056717 1054551806 1054551806 554047521 620487708 620487708 362868883 167895154 404653924 462346518 462346518 688206336 688206336 672663045 486655492 957400609 957400609 404244486 171807124 171807124 302327826 712093700 712093700 541683136 147294464 20013728 26740640 26740640 542002017 549984192 549984192 547476929 545762816 20334784 596526657 596526657 660186112 660186112 660136697 644893777 653807695 653807695 1007226903 1007226903 394854968 791954778 791954778 694235584 694235584 560181664 510220692 664300968 1038621699 1038621699 372255928 372255928 621499324 621499324 774753904 774753904 730719302 730719302 514764899 710157488 854121927 854121927 442675457 940269638 940269638 820939915 820939915 742263405 742263405 1043482972 1043482972 772578262 406847488 406847622 406847622 406847622 407372934 407372934 76688908 402659338 402659338 147905076 724390352 724390352 277352800 287970594 865757762 865757762 898780531 898780531 34900811 34628096 93663632 684800720 684800720 801445960 801445960 498115276 498115276 287631750 287344928 170997540 115157976 134426756 134426756 248254604 248254604 265688020 265688020 298900618 926286110 926286110 1035765167 1035765167 239388828 428204382 468714490 794945834 794945834 978937255 978937255 690232218 974262807 974262807 865745425 865745425 414323526 446484054 857624677 1052788210 1052788210 328403869 360440018 360440018 458517126 1036527272 1036527272 521863931 130675458 270446464 270446464 64949284 401521124 513177488 513177488 855748650 855748650 100701184 679850143 679850143 986526366 986526366 609288822 257900220 1016333644 1016333644 847662367 211547724 422730840 532467582 753195574 753195574 676256901 190864300 886331538 886331538 286053155 542778386 844313235 844313235 320800137 604504072 604504072 402653536 891295296 891295296 475010251 994707082 994707082 339873930 593103269 1060897438 1060897438 798507017 798507017 601131637 244979536 507124440 507124440 370674198 503322376 503322376 5378704 64388176 64388176 181861284 181861284 139510276 139510276 134734340 45169680 174725444 174725444 36117584 11277632 237340672 237340672 118598464 118598464 33031920 16304064 672810944 676992645 676992645 235046452 555663928 588565041 588565041 454552165 726812818 885141576 885141576 683835738 906679323 906679323 559954944 559954944 155174328 458543776 522644950 522644950 385149572 210625603 971275303 971275303 958129431 907340479 609796610 593681352 684648772 684648772 1017270073 1017270073 925370296 925370296 862125439 541140622 34546816 143155648 143155648 141157764 29190512 51218064 51218064 20309888 16236752 7755776 160617225 160617225 155515148 155515148 147097669 282657730 303131570 716797556 716797556 830671157 830671157 139746422 825475926 845788499 845788499 827657347 561301863 145811697 974738032 974738032 919242698 939655271 939655271 805602308 837443370 959583270 1009255335 1016074957 1016074957 763614604 763614604 606794984 606794984 562823788 8399936 46938752 46938752 45292816 163217988 163217988 15860480 154573028 441325648 441325648 143205440 143205440 232261356 232261356 277875737 772608579 772608579 394536968 1013568911 1013568911 789263631 483294810 1000309457 1000309457 534307314 542376991 1019221632 1019221632 1012467658 1012467658 551030979 424805971 503122875 1039466510 1039466510 295327554 561826304 561826304 807227523 807227523 841652970 893118067 893118067 587706978 823854243 865822546 865822546 625246632 566347361 628097961 628097961 540016808 26306928 277848580 283667712 956054161 956054161 547117889 692907149 747238973 747238973 792723645 792723645 718009557 873324194 873324194 763857407 911556806 911556806 538452128 668798660 668798660 690097688 690097688 617622743 493429573 502376400 502376400 488901968 457212694 263840032 380371498 380371498 120936216 120936216 87692120 268973592 302017544 302017544 52285040 59007568 59364000 59364000 375989738 375989738 324767888 294175842 280151458 306573642 325356520 325356520 10625792 205796352 205796352 16912416 20079392 20079392 16900128 16900128 33554432 33554448 37756944 571852020 792767616 792767616 766889773 766889773 268041818 268041818 302396029 302448641 302448641 42440064 79440600 79440600 652349913 652349913 879416715 879416715 598248955 550584146 550584146 1010950384 1010950384 1048643744 1048643744 550381948 281685522 315732368 322676306 322676306 311072176 231908284 232339178 454698742 454698742 437257754 380176416 380176416 34990624 313558698 313558698 340398552 468923382 468923382 454235398 298845824 298845824 982703776 985671895 985671895 957300832 957300832 943987313 593284785 81913032 597164848 900206637 956957047 956957047 812039872 422314320 446694710 446694710 423887882 224134020 224134020 558894848 558894848 738722432 738722432 1006490730 1006490730 877500159 510142116 510142116 442452998 452984886 452984886 506910276 506910276 475818372 475818372 514113606 514113606 517115998 517115998 448790742 507643968 507643968 371072144 371072144 104976024 4708357 239786684 594443300 594443300 561973808 761530797 761530797 721838514 721838514 341303705 306307968 964191608 964191608 531837822 531837822 563095674 563095674 264314864 705114612 705114612 1015771787 1015771787 878283537 878283537 576719887 252244762 97528574 393104628 399537282 1061750177 1061750177 754017224 754017224 642887168 4196352 72089608 76571328 421358638 421358638 340356314 445497880 789676590 789676590 689457236 586018257 742665556 742665556 382290318 713303068 713303068 278450335 88803394 88803394 538693034 888934347 888934347 615901408 282514048 124329352 89527488 89527488 92151720 92151720 71837608 68433536 306046530 306046530 39281280 303059330 550526352 550526352 442611708 442611708 575403153 575403153 306824341 241295772 785425320 785425320 690651841 742391565 742391565 832230721 832230721 705834492 181345524 774333947 856814387 856814387 990946866 990946866 822313649 772947068 772947068 835351649 835351649 828897840 828897840 558555666 753495185 753495185 909605275 909605275 660392152 440157896 524486596 524486596 174064020 142776948 125939104 364908320 364908320 225854186 676385664 676385664 542163585 822347520 822347520 540564739 52783152 52783152 637558784 637558784 94113265 669263968 905257770 1018101051 1018101051 636993408 714302904 714302904 417806790 990661694 990661694 934253944 934253944 376851504 144308356 25138592 9282592 12717056 205527340 205527340 27348160 205055500 205055500 19921088 19921088 68902929 643555993 643555993 659462705 659462705 710153120 1033131492 1033131492 1024248879 755227695 755097645 461479983 805953544 816694859 816694859 613856067 415626020 415626020 542239365 693837829 693837829 615033986 887482827 887482827 872900609 872900609 814705728 1019417736 1019417736 1033540871 1033540871 415704704 557122628 557122628 546660897 145346533 32089984 139790152 139790152 683085029 683085029 883800608 883800608 895697538 895697538 839582331 269731339 879382528 879382528 287961344 398292466 550849884 550849884 543714032 118254832 227128416 227128416 226992140 203491904 646027755 926272282 926272282 920654811 920654811 849193040 849193040 598538752 598538752 806722803 806722803 541739568 425835730 425835730 424878948 327160272 189809122 48333748 183878848 192473972 192473972 173286320 173286320 171254656 255150128 255150128 537280817 537280817 1011781632 1011781632 969229556 1005369462 1005369462 848244343 848244343 759951809 759951809 488813110 488813110 411516176 921090395 921090395 396535994 862029887 862029887 492962850 492962850 337491196 949189225 949189225 399846138 989701033 989701033 156825220 156948132 156948132 461016108 461016108 106323498 152515140 152515140 208438172 208438172 145769216 155485536 178824800 178824800 167152548 199761204 226696612 226696612 195043808 195043808 207659128 541807565 541807565 613453824 739664457 739664457 155484800 143599740 220539180 573539260 573539260 564357632 9820481 798848 31094304 31094304 54542864 119842736 119842736 101547896 557519381 557519381 656933656 656933656 48238848 428878084 428878084 488385994 488385994 829399520 872968942 872968942 72751752 72751752 73664904 130038096 130038096 32581104 32181792 97971448 101327104 101327104 107173104 107173104 65604160 68560128 68560128 74658600 74658600 85166240 85166240 16986144 19611168 68619560 68619560 24534432 24534432 70836776 674864928 674864928 154752901 688793856 688793856 614981029 602679497 595415009 595415009 353838650 805335307 805335307 408902458 427745190 427745190 138012420 167730276 412335272 412335272 362072682 348688032 119566792 264451316 264451316 240657572 210973180 308352642 308352642 307259282 282303236 405266560 536405192 536405192 340473224 359538082 359538082 300422562 310309444 310309444 286991730 268834818 268441600 887255436 950642978 965853254 965853254 1010698109 1010698109 622337121 838994448 838994448 27813399 845596480 855038931 855038931 333676851 303098112 369105808 423498844 423498844 350133314 254282802 227450116 44718908 256663088 256663088 463129708 463129708 172365972 734735984 734735984 393807738 843261328 843261328 739316494 852080781 852080781 377079040 637748299 637748299 390726240 389951498 305999492 305999492 326299496 401526102 401526102 445235378 445235378 428892896 263334464 173772606 173772606 405573190 405573190 837212622 837212622 816356585 698979169 1031808586 1031808586 713627127 329672600 386501360 386501360 469411016 469411016 357250218 302293232 325294162 325294162 297662576 282249494 326967424 326967424 326402469 326402469 272389674 711739856 711739856 1054868885 1054868885 103780736 344148608 344148608 341366474 471778485 494406187 554082368 554082368 986650076 986650076 944716935 919798184 919798184 587653837 587653837 423157510 406768218 1052784477 1052784477 422874012 834686278 1066176527 1066176527 141607812 374211946 725929520 725929520 690364837 677730560 96522060 292913697 292913697 496181915 678828933 678828933 866947096 866947096 394790183 308446312 988930924 988930924 855787984 855787984 837212643 432674022 432674022 65090838 167837900 213917716 419576611 681419569 681419569 1048876837 1048876837 1066209407 1066209407 486655492 486655492 294834786 436207648 452984886 452984886 302327826 302327826 268445712 12992576 12992576 20148896 26740640 26740640 30150688 30150688 28793056 29674144 29674144 20334784 67584384 86107448 86107448 93905448 93905448 49291416 48443394 507425536 923338066 923338066 394854968 791954778 791954778 519358470 1013406044 1013406044 662901449 556218657 606599433 606599433 500266249 839676838 839676838 621499324 774753904 774753904 730719302 730719302 514764899 976038391 976038391 854121927 880877643 940269638 940269638 573067588 598741353 742263405 742263405 886307846 886307846 578859926 428078496 428078496 409993898 420581386 477318114 477318114 363952524 402659338 965817925 965817925 831785571 724390352 532289499 294311010 682944320 1064689469 1064689469 515042290 184380759 301998468 845165009 845165009 684800720 659968517 814121566 814121566 688219048 287631750 287344928 170997540 68752144 134426756 134426756 248254604 248254604 265688020 265688020 298900618 926286110 926286110 909513385 735105037 239388828 428204382 468714490 468714490 90489256 90491304 90491304 690232218 974262807 974262807 304482565 1048576 169903364 169903364 796940372 1052788210 1052788210 328403869 360440018 360440018 458517126 1036527272 1036527272 549253329 549253329 617062752 617062752 580862888 401521124 513177488 604801916 1002310216 1002310216 893357683 893357683 682543171 988017111 988017111 376562586 631228384 1016333644 1016333644 847662367 719439535 101056534 671488014 671488014 437522460 437522460 405018632 33556752 279445666 279445666 387985986 387985986 106641048 547621185 604504072 604504072 1073700836 1073700836 614437195 255013273 152044068 536946688 537135105 537135105 140314677 928353508 928353508 726947395 638194713 427435477 362358378 206117746 167905420 208609616 794023684 794023684 630317668 623987468 763624324 763624324 139510276 139510276 137398672 37945472 604123536 604123536 619186441 619186441 246165840 246165840 641206213 641206213 250405085 250405085 672810944 676992645 676992645 805315360 805315360 672478220 559758874 710411393 931813519 931813519 245466298 592037178 906679323 906679323 695241484 559954944 71948320 458543776 522644950 522644950 137091104 210625603 971275303 971275303 958129431 907340479 609796610 593681352 604518689 604518689 361647275 296558698 410910372 488172258 488172258 470800480 237443440 237249544 222942940 222942940 190062512 190062512 86869896 54653384 70406208 96703424 160617225 160617225 155515148 589656706 589656706 678823344 729550773 729550773 716797556 328337173 298894050 298894050 278420550 287697186 287697186 28650336 194631940 194631940 34214928 126927336 692736224 692736224 229164041 140644740 8918468 628410664 628410664 624741161 70781320 68469256 16377792 16377792 16692224 16692224 34767552 42991616 42991616 28772640 276695938 276695938 19942144 269647906 441325648 441325648 299551552 299551552 408735366 408735366 277875737 772608579 772608579 529026378 1013568911 1013568911 789263631 483294810 1000309457 1000309457 853417683 769901425 769901425 350622328 1012467658 1012467658 551030979 424805971 292070040 256166076 256166076 103286040 107743360 107743360 107909512 331573392 338186386 805781778 805781778 353793459 304578560 582388793 625246632 625246632 566347361 628097961 628097961 540016808 51960976 277848580 277848580 956054161 956054161 547117889 692907149 747238973 747238973 792723645 792723645 718009557 718009557 763857407 763857407 911556806 911556806 808858757 693371575 407247491 690097688 690097688 617622743 493429573 502376400 502376400 358476500 110708130 46151056 46151056 44967760 13737152 16058880 16058880 3410688 23887872 23887872 270110240 302818818 302818818 17350770 167788592 195604624 195604624 181539316 181539316 68293148 190327424 239132064 239132064 205796352 267605328 267605328 72350856 201713676 289482770 289482770 259737500 259737500 370218886 370218886 4793488 9577856 101487028 200895768 200895768 43477328 43477328 42416144 42440064 42440064 49641600 106531392 595723392 595723392 123089656 123089656 538772480 538772480 29925297 1010950384 1010950384 1048643744 1048643744 858337329 572736175 572736175 322676306 322676306 311072176 198771716 232339178 454698742 454698742 437257754 380176416 380176416 34990624 313558698 313558698 340398552 468923382 468923382 454235398 281591968 299133920 982703776 985671895 985671895 957485607 957485607 683203879 48816965 81913032 81913032 116425472 116425472 109740096 192940236 476580344 476580344 446694710 1058015609 1058015609 1008081423 1008081423 744232066 1035233953 1035233953 1048758956 1048758956 877500159 510142116 510142116 442452998 452984886 452984886 606641793 606641793 475818372 738493069 738493069 514113606 517115998 517115998 448790742 549521925 549521925 676345944 676345944 573899648 611455657 629056137 629056137 560414976 561973808 561973808 86959744 86959744 643875217 643875217 632760633 964191608 964191608 692006500 692006500 563095674 563095674 943199337 959785767 959785767 1015771787 1015771787 713598535 658580556 387017248 252244762 138636472 393104628 399537282 399537282 426077398 449191064 449191064 213986080 110897864 110897864 80252032 421358638 421358638 396463720 396463720 789676590 789676590 864291858 864291858 742665556 742665556 740385109 951970372 951970372 506488727 749542784 749542784 588560752 888934347 888934347 615901408 282514048 206474472 206474472 197219492 197219492 141607812 223179524 223179524 787336716 787336716 708215557 187062973 1015343258 1015343258 1029001639 1029001639 575403153 786760573 786760573 241295772 785425320 785425320 738202504 742391565 742391565 832230721 832230721 705834492 181345524 774333947 856814387 856814387 990946866 990946866 822313649 772947068 772947068 610851594 386460089 271500354 271500354 558555666 753495185 753495185 276114306 825683228 825683228 340002954 524486596 524486596 142776948 346857376 346857376 364908320 364908320 225854186 373287058 373287058 308300036 822347520 822347520 724706224 724706224 461901971 1064161445 1064161445 953970038 861931074 861931074 1018101051 1018101051 636993408 636993408 634077131 70211907 990661694 990661694 934253944 934253944 352007872 144308356 17769504 29886752 29886752 205527340 205527340 27348160 205055500 205055500 156589825 156949668 673137313 673137313 717786192 717786192 659462705 895527138 1033131492 1033131492 1024248879 755227695 755097645 438326338 832591108 832591108 623723360 547221057 415626020 415626020 226843048 201586696 627254852 627254852 887482827 887482827 872900609 872900609 814705728 814705728 543383686 822157383 822157383 619564489 557122628 557122628 691359557 691359557 675547269 675547269 539429153 683085029 683085029 883800608 883800608 895697538 895697538 875037963 875037963 281739520 281739520 108782706 156071468 550849884 550849884 543714032 96157480 227128416 623081529 773962269 773962269 767141184 650260728 650260728 641929361 570691008 570691008 105283777 598538752 598538752 67063569 49434704 316461440 425835730 425835730 327160272 327160272 302063650 302063650 268509186 268443648 18874656 173286320 173286320 481397042 481397042 549066561 679118524 746329726 746329726 541760707 642862730 642862730 956589074 956589074 699915317 759951809 759951809 36242688 81839632 81839632 71118720 71118720 22381536 22381536 102533768 102533768 90888832 90888832 479353740 479353740 286857016 344856880 344856880 187861400 187861400 439388978 461016108 503715968 503715968 508823552 508823552 208438172 208438172 140314752 155485536 178824800 178824800 167152548 199761204 226696612 226696612 195043808 195043808 186483752 541807565 546866405 546866405 167921221 538213441 538213441 143599740 220539180 646949744 646949744 551219697 562975305 730911593 730911593 635215144 249910780 249910780 79138580 79138580 557519381 722060620 722060620 691270437 591623157 792224121 792224121 914538951 914538951 829399520 872968942 872968942 483132714 281153570 203558988 526547084 526547084 367108696 177329776 97971448 97971448 82625712 107173104 107173104 63706528 63045696 48374816 74658600 74658600 85166240 85166240 16986144 19611168 68619560 68619560 53259184 124364560 124364560 674864928 674864928 578679824 688793856 688793856 614981029 602679497 592787313 86516264 3745536 285869578 354301464 408902458 427745190 427745190 138012420 167730276 412335272 412335272 362072682 348688032 85018204 264451316 264451316 240657572 210973180 153777520 129432588 197657844 282303236 282303236 536405192 536405192 340473224 428621858 428621858 428608614 310309444 310309444 286991730 148537298 206383260 887255436 887255436 283586887 699188070 1010698109 1010698109 622337121 838994448 838994448 285288478 828274789 828274789 966659792 1006670056 1006670056 175638420 423498844 502143330 502143330 254282802 835191451 898762755 898762755 742748229 742748229 694638097 694638097 555868449 191562965 191562965 821756752 983566470 983566470 852080781 852080781 377079040 637748299 637748299 294834786 113046996 344524908 344524908 327755370 213966354 211416800 445235378 500416788 500416788 241720470 126977252 227282028 428643648 428643648 571357281 571357281 141898864 595926981 1031808586 1031808586 713627127 663713842 663713842 732893585 732893585 469411016 805826837 805826837 222668850 472154322 472154322 282249494 282249494 217281992 72373432 972297026 988558255 988558255 711739856 680051781 103780736 567219328 567219328 344148608 1028413524 1028413524 463926294 673501558 673501558 986650076 986650076 944716935 919798184 919798184 215446059 210921576 406768218 406768218 1013467485 1013467485 422874012 834686278 1066176527 1066176527 220895048 388259330 725929520 725929520 690364837 677730560 65601968 292913697 292913697 496181915 897857976 897857976 866947096 866947096 530653212 295698786 717441756 717564117 855787984 855787984 837212643 432674022 432674022 202218460 705586248 705586248 838743270 838743270 681419569 1048876837 1048876837 1066209407 1066209407 361762924 232363715 536871660 1023198837 1023198837 452984886 843528261 843528261 541560773 688908320 688908320 27355265 542246916 693124992 693124992 703669221 703669221 548366496 161214496 17879104 102507776 115589208 115589208 115442840 104882328 48443394 48443394 507425536 923338066 923338066 697902693 697902693 373815450 519358470 1013406044 1013406044 662901449 556218657 606599433 606599433 500266249 839676838 839676838 459540918 459540918 668349954 899431285 899431285 526920963 976038391 976038391 281418843 880877643 880877643 411296835 573067588 573067588 202901004 202901004 413848902 496825670 496825670 428078496 428078496 409993898 420581386 477318114 477318114 363952524 153820717 965817925 965817925 831785571 532289499 532289499 294311010 446492825 1064689469 1064689469 515042290 422641831 894550563 894550563 845165009 786785248 263609217 814121566 814121566 688219048 118953472 118953472 100668952 100668952 68289048 645271689 645271689 238100236 543191765 543191765 203966880 203966880 122030744 52521397 803037956 803037956 547686889 547686889 431734502 431734502 967306503 967306503 399615203 1016995407 1016995407 1026328579 1026328579 832062580 832062580 796940372 796940372 237279781 601675441 601675441 714528953 714528953 134481924 684205060 684205060 614327076 617062752 617062752 580862888 438963226 438963226 604801916 1002310216 1002310216 893357683 893357683 682543171 988017111 988017111 376562586 631228384 631228384 816441598 816441598 719439535 676659901 855975992 861210931 861210931 560994731 405018632 92169757 47094289 541639809 541639809 541066628 541066628 547621185 547621185 384700601 1073700836 1073700836 614437195 785877735 789503513 789503513 785298509 785298509 591647801 928353508 928353508 781191875 781191875 1063584120 1063584120 876392774 496487010 496487010 794023684 794023684 630317668 623987468 763624324 763624324 138119168 178611136 178611136 104915284 604123536 604123536 619186441 619186441 246165840 246165840 641206213 641390361 641390361 250405085 536891537 641862557 673223440 805315360 805315360 842345366 856810027 856810027 931813519 931813519 746248077 814847135 814847135 835828507 835828507 804452321 290179856 290179856 424587396 424587396 208394610 226831940 226831940 451992588 451992588 440064790 248585048 639775556 639775556 537079809 77955200 4221256 110670672 110670672 93600268 237443440 237443440 237249544 222942940 222942940 190062512 190062512 86869896 54653384 80773760 96703424 96872864 96872864 51780144 589656706 589656706 697144320 729550773 729550773 756705274 756705274 298894050 298894050 278420550 287697186 287697186 28650336 573089205 573089205 715893232 715893232 730630192 730630192 605463256 140644740 669918397 669918397 207459212 620385896 753992585 753992585 623928516 538461728 540312324 540312324 34767552 60619488 60619488 58107952 276695938 298399872 298399872 286442976 286442976 333611700 333611700 299551552 408735366 408735366 264105852 316678880 529026378 529026378 396372090 272256680 307791238 307791238 457448132 853417683 853417683 769901425 769901425 349703060 280756683 26215008 463140067 746571224 967362427 967362427 767782351 1003887351 1003887351 404255288 72779888 331573392 331573392 805781778 810819746 810819746 304578560 304578560 281609200 634463330 823156979 823156979 541658664 541658664 171573556 436679204 473127432 473127432 168054016 237023232 237023232 217361432 570958220 690020905 690020905 125953045 597303264 614999073 659295417 826868018 826868018 808858757 729940533 729940533 852233427 852233427 686032718 696164229 696164229 677642484 103765568 118039608 118039608 389734986 389734986 41206528 65992768 65992768 289119192 333767240 333767240 270110240 302818818 302818818 318849024 318849024 195604624 195604624 181539316 181539316 68293148 190327424 965538229 1045893781 1045893781 487629921 487629921 755249703 755249703 758917911 758917911 259737500 352465184 551072827 643562048 643562048 639421977 117222454 997418568 997418568 581573969 573726545 79494672 111358296 111358296 77861656 106531392 110756577 634622578 634622578 177332820 679966341 679966341 491840930 705956264 778051587 778051587 858337329 858337329 572736175 572736175 280531968 13148480 61871312 61871312 131667064 131667064 127600312 267523968 267523968 141170628 24978592 377038304 395864338 395864338 320130048 320130048 200138322 135766400 299133920 957335106 968285031 968285031 957485607 957485607 683203879 48816965 41747728 41747728 116425472 116425472 106971224 192940236 476580344 476580344 209061454 1058015609 1058015609 1008081423 1008081423 744232066 1035233953 1035233953 1048758956 1048758956 478160406 117908281 136619432 136619432 169999504 243628128 606641793 606641793 201375756 738493069 738493069 718770884 638838809 638838809 605708825 605708825 549521925 676345944 676345944 573899648 611455657 629056137 629056137 626892288 560414976 558364833 117553168 117553168 643875217 643875217 632760633 937532528 937532528 692006500 692006500 412083319 354297443 943199337 959785767 959785767 628959584 370162214 522388396 522388396 168052616 168052616 142133124 252632124 252632124 227750180 221189680 221189680 159713416 72467144 110897864 110897864 80252032 165537828 453371428 488923198 488923198 595691803 595691803 864291858 864291858 689759251 740385109 807758100 951970372 951970372 738197517 749542784 749542784 588560752 71616648 240294532 240294532 119567440 206474472 206474472 197219492 197219492 141607812 223179524 401490567 802728969 802728969 708215557 626608009 1015343258 1015343258 1029001639 1029001639 423326649 786760573 786760573 607801896 607801896 738202504 738202504 9178176 9178176 9178176 9178176 3136 0 632791764 632791764 273854986 524288 268960258 268960258 1049088 610851594 610851594 276714115 807613200 807613200 870855488 870855488 153118976 153118976 825683228 825683228 776004594 776004594 1062235054 1062235054 590363729 590363729 433726017 359736234 359736234 373287058 373287058 308300036 1022481728 1022481728 800023898 724706224 693644866 1064161445 1064161445 953970038 1031878239 1031878239 450925815 4817028 311843892 431828838 867503860 867503860 618012193 85985352 86597920 87284960 87284960 17900928 17900928 29886752 29886752 4315680 19213312 19213312 18994176 156589825 156589825 156949668 693676032 694021797 717786192 875208078 875208078 895527138 895527138 816317760 663228870 709571733 944119238 944119238 832591108 832591108 561327009 620038817 972313668 972313668 769277957 769277957 750441005 738629056 873777921 873777921 140525696 1029857472 1029857472 675525319 880804288 880804288 619564489 619564489 543371649 543371649 691359557 691359557 675547269 675547269 539429153 539429153 30262336 610015840 610015840 276436866 816445386 875037963 875037963 813303745 813307779 813307779 380233050 380233050 533234950 533234950 349095066 618675524 623081529 773962269 773962269 767141184 650260728 650260728 641929361 631294307 570691008 342756824 613662857 613662857 366551834 366551834 455764836 455764836 456201328 456201328 319040608 418139766 418139766 268509186 268443648 27897620 47483520 84943538 481397042 481397042 549066561 679118524 746329726 746329726 541760707 559152690 559152690 956589074 956589074 699915317 108785792 342054676 377100186 499277216 499277216 209170808 71118720 22601856 22381536 102533768 102533768 90888832 90888832 479353740 479353740 437206152 344856880 344856880 187861400 187861400 439388978 439388978 503715968 503715968 508823552 508823552 4194432 140314752 140314752 8462980 33211984 57865024 62315280 62315280 55067104 34600264 105110096 227346396 227346396 110707208 546866405 546866405 194365124 538213441 538213441 94341576 137104644 646949744 646949744 551219697 562975305 730911593 730911593 635215144 249910780 259377204 259377204 170009452 184798268 722060620 722060620 691270437 591623157 792224121 792224121 914538951 914538951 559943737 401224954 483132714 483132714 281153570 203558988 526547084 526547084 367108696 177329776 20633120 8621056 8788032 57096624 63706528 63706528 35651856 34080000 7545984 72229888 72229888 2964992 3063552 3257344 17401600 42686240 94821136 147323740 147323740 543688065 543688065 655363089 655363089 57690264 99410840 99410840 556933833 556933833 178857300 604038493 604038493 239854356 239854356 172088440 214290685 214290685 165066256 227436633 752539189 752539189 202506896 202506896 102286544 102286544 34079760 554218497 596011861 732109334 732109334 436367958 404061982 361131806 362362994 428621858 428621858 428608614 311234384 438648656 438648656 37226256 346442813 757109578 757109578 278168706 278168706 273173058 1053426190 1053426190 789055716 789055716 700976345 828274789 828274789 966659792 1006670056 1006670056 256181368 323641902 502143330 502143330 423103093 873612595 899078763 899078763 742748229 742748229 694638097 1050882399 1050882399 69356507 539677953 539677953 983566470 983566470 581306753 449057239 369283098 314596118 294834786 426539332 426539332 404167136 344524908 327755370 213966354 211416800 106160280 500416788 518580048 518580048 126977252 227282028 428643648 428643648 571357281 571357281 594927617 719026949 722317825 722317825 808088129 814872386 814872386 732893585 860897326 860897326 853299813 853299813 887840150 887840150 830852886 830852886 710223832 820826578 820826578 972297026 988558255 988558255 1013837199 1013837199 562939310 863649746 863649746 878306971 1028413524 1028413524 596446356 673501558 673501558 608465161 805844460 843064571 843064571 817373379 118227032 210921576 210921576 230458156 1013467485 1013467485 363240732 794739584 992363847 992363847 220895048 388259330 388259330 564432292 576982848 576982848 65601968 109576456 109576456 392403820 897857976 897857976 983339800 983339800 530653212 295698786 717441756 717564117 717564117 437594646 437594646 302773266 344612952 344612952 705586248 705586248 838743270 838743270 449380374 178344116 488116226 689473033 689473033 478331464 427868264 536871660 1023198837 1023198837 786253468 843528261 843528261 541560773 688908320 688908320 571578832 542246916 693124992 693124992 703669221 703669221 548366496 161214496 56681840 102507776 115589208 115589208 115442840 104882328 110889528 110889528 137405029 255990736 255990736 1021182935 1021182935 295306842 813567038 813567038 256723999 256723999 430007702 430007702 870608968 870608968 805355523 706758425 706758425 470174086 716189614 1013646562 1013646562 573717008 573717008 539306241 441900305 342498958 349725248 349725248 631419204 759286089 759286089 618973641 901729091 901729091 730368022 298134176 298134176 281491650 331927074 505645426 505645426 35368960 42992208 42992208 30950096 26789472 60949824 60949824 184684596 404372128 404372128 328204528 902094930 902094930 894550563 894550563 786785248 786785248 890552708 890552708 289499467 178488646 170644816 188294692 188294692 100668952 242747292 645271689 645271689 238100236 543191765 543191765 713548180 713548180 152116720 152116720 803037956 803037956 814973641 814973641 431734502 431734502 967306503 967306503 399615203 1016995407 1016995407 1026328579 1026328579 832062580 832062580 723144116 723144116 237279781 601675441 601675441 714528953 714528953 212779268 684205060 684205060 614327076 458787934 458787934 368928996 438963226 438963226 492707502 492707502 647253798 891296036 1063404576 1063404576 422433030 604079295 604079295 350505032 441251088 549436030 992184761 992184761 676659901 855975992 861210931 861210931 560994731 95692197 92169757 47094289 541639809 541639809 541066628 541066628 536903938 536887554 807403779 807403779 576280456 1024969549 1024969549 789503513 789503513 785298509 785298509 591647801 710489729 838032960 838032960 781191875 1063584120 1063584120 876392774 571761369 496487010 407685980 179064392 179064392 167167368 208018116 208018116 178365888 178611136 178611136 104915284 102899712 102899712 50245440 818438162 818438162 544598913 537543448 641390361 941688384 941688384 536891537 641862557 641862557 203827717 287687188 842345366 856810027 856810027 525118024 673334920 746248077 814847135 814847135 835828507 835828507 804452321 757471533 468831102 980487076 980487076 833388834 302590331 631859273 919424355 919424355 848035974 848035974 639775556 639775556 537079809 352475172 211951676 151212046 184846384 184846384 446749028 446749028 11011392 33579680 55698096 55698096 46186704 82316048 90567576 90567576 80773760 186006017 186006017 412299846 865382597 865382597 697144320 697144320 663729517 899007756 899007756 548441722 244441692 669092744 669092744 220862277 299370210 573089205 847887095 847887095 715893232 730630192 730630192 605463256 32844256 669918397 669918397 224743724 620385896 761269332 761269332 623928516 538461728 540312324 540312324 112382808 99594576 99594576 58107952 153428404 298399872 298399872 286442976 286442976 333611700 333611700 152228646 64412400 64412400 52212096 65340608 84908832 84908832 70870536 80217288 80217288 235852424 457448132 772669440 772669440 766247983 538443928 604015748 604015748 478943313 621584392 746571224 967362427 967362427 767782351 1003887351 1003887351 547340912 547340912 291500898 302857552 622974384 810819746 876655232 876655232 610779691 885596848 885596848 823156979 863878769 863878769 648454114 171573556 436679204 473127432 713952577 713952577 682613073 653497048 217361432 570958220 690020905 690020905 181064916 597303264 614999073 659295417 659295417 589700109 592059553 729940533 729940533 852233427 975701265 975701265 723681570 723681570 721966116 103765568 118039608 328624496 389734986 389734986 315768658 315768658 125994930 289119192 333767240 333767240 111953322 97031226 398725152 398725152 436511834 436511834 163781776 470007994 470007994 33620044 209723408 965538229 1045893781 1045893781 487629921 487629921 755249703 755249703 758917911 758917911 186703163 352465184 557916705 643562048 643562048 639421977 553985576 997418568 997418568 581573969 640100406 640100406 456481041 111358296 77861656 77861656 110756577 634622578 634622578 399112177 679966341 679966341 491840930 705956264 705956264 770376400 792409917 792409917 340834144 291108130 299901728 299901728 271225856 23143840 28381600 28841824 57083904 188230752 188230752 179645268 26019636 377038304 395864338 395864338 316534482 93627578 305249696 305249696 272765058 276760848 276760848 704169120 704169120 706130178 706130178 39100616 105980568 105980568 69796232 105647120 105647120 90178128 60952944 60952944 52189040 50645040 68606464 68606464 338240106 730931428 730931428 730538794 730538794 404797970 404797970 125421716 170936700 170936700 169999504 243628128 302708804 391125034 391125034 408218636 749589322 749589322 1044013449 1052313027 1052313027 1019094871 806065282 806065282 373613705 34252928 84251816 84925472 626892288 626892288 85906472 85906472 117553168 117553168 55389360 55389360 39758976 34861584 36958992 39875200 129783234 129783234 22726298 373209848 373209848 506764082 506764082 443999146 522388396 522388396 440568748 172244352 518534236 518534236 328719142 371924302 371924302 416434708 416434708 69329252 47221504 115362128 115362128 165537828 453371428 488923198 488923198 252780810 252109320 344106736 818664586 835713571 835713571 807758100 807758100 740411463 738197517 738197517 272777672 189909880 205729932 205729932 135443404 45830356 124845168 124845168 119670920 119670920 68430136 68430136 401490567 802728969 802728969 606602505 626608009 949290848 959261991 959261991 326181810 369126722 935077208 935077208 829424987 607801896 147564488 648260515 986759895 986759895 894958251 963934716 963934716 459559420 711323939 711323939 334977725 1065793658 1065793658 688979616 700714213 1049622202 1049622202 73012872 807613200 807613200 870855488 870855488 552268104 283592902 536976196 655735714 776004594 776004594 1062235054 1062235054 590363729 590363729 433726017 359736234 359736234 355339304 355339304 204922542 1022481728 1022481728 855913217 971722448 971722448 944939701 944939701 768273592 1031878239 1031878239 450925815 247891049 311843892 431828838 867503860 867503860 618012193 290982945 540154112 540154112 297804960 17900928 17900928 15933952 15933952 22419872 22419872 19213312 5101824 22020096 22020096 17867264 693676032 694021797 694021797 875208078 875208078 471907328 816317760 816317760 663228870 709571733 944119238 944119238 823238400 823238400 561327009 620038817 972313668 972313668 769277957 769277957 750441005 738629056 873777921 873777921 486416396 1029857472 1029857472 950938280 880804288 880804288 816231715 500272547 543371649 547430949 704196385 704196385 549993120 549993120 157898437 145067141 542850977 899875531 899875531 84563048 1050277620 1050277620 927110033 927110033 813307779 962127054 962127054 380233050 533234950 533234950 349095066 618675524 618675524 385876026 385876026 772069457 772069457 209850444 839850347 839850347 342756824 342756824 613662857 613662857 366551834 366551834 455764836 455764836 456201328 456201328 421537156 421537156 418139766 55086946 38561600 27897620 47483520 71500080 123941304 123941304 655380884 655380884 286281812 286281812 272696976 829711530 942430258 942430258 453457974 333697058 686458725 686458725 377100186 499277216 499277216 390211122 390211122 324350600 324350600 107242712 107242712 122426792 122426792 275026440 437206152 516356882 516356882 126681888 126681888 488852172 488852172 215265582 243286216 243286216 205523116 205523116 226107176 226107176 223289248 28785088 157759236 157759236 62315280 62315280 55067104 34600264 105110096 227346396 227346396 110707208 120588080 194365124 194365124 79710824 77503520 76445832 137104644 137104644 137104644 220532652 252089644 252089644 239228192 141559300 112214864 259377204 259377204 170009452 170009452 553308112 553308112 671621360 731980149 731980149 731906421 731906421 169157405 161275900 157626944 157626944 49043520 102961816 102961816 100710544 100710544 15724032 73614656 109803680 109803680 125864968 125864968 80310320 24852384 24852384 6234656 89701160 89701160 86822184 86822184 20429088 20429088 69731848 69731848 94821136 251948024 251948024 543688065 543688065 655363089 713834560 713834560 99410840 99410840 556933833 556933833 178857300 604038493 604038493 209135848 218030028 218030028 214290685 561355240 690153613 690153613 752539189 752539189 202506896 685375720 685375720 85644840 85644840 554218497 596011861 732109334 732109334 436367958 404061982 361131806 362362994 362362994 337718594 311234384 311234384 438648656 706633299 843952977 843952977 805864832 963376551 963376551 323133025 323133025 1053426190 1053426190 789055716 1065617656 1065617656 550061797 865933446 865933446 827381934 827381934 527310270 379002118 323641902 215800048 423103093 873612595 899078763 899078763 309441283 352963314 352963314 1050882399 1050882399 808436696 975294488 975294488 458739815 931137583 931137583 871364834 369283098 751770035 751770035 426539332 426539332 404167136 207568524 236178596 236178596 184549428 446565718 446565718 518580048 518580048 466972040 466972040 394399866 356516352 100800804 570529792 594927617 719026949 722317825 722317825 808088129 814872386 814872386 678139017 860897326 860897326 853299813 853299813 887840150 887840150 830852886 830852886 710223832 820826578 820826578 746120018 746120018 715918633 1013837199 1013837199 562939310 863649746 863649746 878306971 895257305 895257305 596446356 596446356 893911124 969544871 969544871 325982628 325982628 160654632 244562904 244562904 163794536 341868928 341868928 260233662 830637104 830637104 205165191 175767810 519755742 944637772 944637772 718588437 13001088 13001088 486641902 486641902 369394269 390483624 390483624 979802626 983339800 983339800 292083329 212354884 217063819 543228739 660678671 968884455 968884455 957352579 813959235 599706824 900658322 900658322 897303867 897303867 568946881 444753014 488116226 488116226 478331464 478331464 628347244 628347244 147030340 786253468 786253468 686574942 801754480 801754480 537785232 571578832 571578832 189057873 63301888 63301888 56223408 56223408 27232896 56681840 56681840 36258464 102777880 102777880 79251272 94151544 110889528 285478656 300947808 300947808 276436866 1021182935 1021182935 483108080 813567038 1048835114 1048835114 487772718 873030148 873030148 870608968 870608968 805355523 706758425 706758425 470174086 716189614 1013646562 1013646562 573717008 683198277 683198277 539533312 539533312 499904803 954528966 954528966 759286089 759286089 618973641 901729091 901729091 730368022 300660658 529939748 529939748 331927074 505645426 505645426 274008396 409544070 409544070 534531382 843088638 843088638 1024461728 1024461728 755778589 480789110 573604111 902094930 902094930 238340892 934398037 934398037 452272927 890552708 890552708 289499467 178488646 170644816 188294692 188294692 52634416 242747292 242747292 71435160 39111312 266421012 266421012 713548180 713548180 646975849 152116720 672727040 672727040 814973641 814973641 513810628 513810628 504707694 504707694 282806980 275698400 318676866 318676866 307533750 326143828 326143828 144054852 144054852 101205900 83367816 83367816 203330976 212779268 212779268 163467728 163467728 122814492 458787934 458787934 367673736 367673736 295258639 492707502 492707502 310435580 891296036 1063404576 1063404576 422433030 888777902 980510291 980510291 931742210 931742210 992184761 992184761 806733476 806733476 759751439 677652997 675621509 877666658 877666658 816918761 13108416 315230068 315230068 536903938 536903938 536887554 807403779 807403779 928076706 1024969549 1024969549 641190744 394927336 528718026 528718026 419553318 390749184 838032960 838032960 521480766 616113584 659917193 659917193 571761369 200419328 186716820 54472440 593840020 593840020 157166468 713064476 715276309 772935945 772935945 546558861 744726668 744726668 50245440 818438162 818438162 544598913 310242583 377584924 941688384 941688384 305825666 305825666 418641426 479970182 479970182 209578444 543958586 543958586 525118024 525118024 505692844 1072034200 1072034200 258385021 912942259 912942259 757471533 468831102 980487076 980487076 833388834 303104128 631859273 919424355 919424355 848035974 848035974 726010041 738795785 738795785 874112523 874112523 682934898 865503794 989975162 989975162 446749028 29228144 33579680 110061024 110061024 56957608 82316048 90567576 90567576 53707520 186006017 186006017 412299846 965917216 965917216 428172148 821388358 977798295 977798295 900090766 900090766 769837529 786995145 786995145 834035786 834035786 795193113 847887095 847887095 427777253 15343572 132154376 132154376 614816536 614816536 224743724 252474736 252474736 761269332 761269332 198476177 111932760 111932760 112382808 112382808 99594576 99594576 47231312 47231312 270849376 270849376 57270784 57270784 422904240 425771430 425771430 94421352 94421352 90190088 82047432 84908832 84908832 70870536 80217288 119875372 481691406 481691406 1061046234 1061046234 538443928 538443928 604015748 604015748 478943313 621584392 621584392 544075137 17425440 93012840 542589454 802964498 802964498 596413538 596413538 575865929 622974384 622974384 876655232 876655232 610779691 885596848 885596848 650900697 863878769 930839776 930839776 135103291 198321908 241183373 713952577 713952577 682613073 653497048 638083473 789587872 789587872 562074304 181064916 185262553 194067118 675619880 759958701 759958701 394373333 172147718 163857596 163857596 975701265 975701265 723681570 723681570 721966116 425902338 8032384 328624496 328624496 280029906 315768658 315768658 125994930 168160740 172878996 172878996 248825924 248825924 398725152 398725152 436511834 436511834 163781776 470007994 470007994 178960056 209723408 209723408 111678704 591863280 591863280 254040344 191195588 245440604 245440604 243273984 243273984 565218944 565218944 609360512 609360512 553985576 553985576 453575807 584658917 804333245 804333245 640100406 456481041 73936128 112352592 116908648 116908648 594553432 594553432 399112177 765582624 765582624 274203430 428345252 428345252 296553312 356150690 356150690 426955124 426955124 328417810 299901728 271225856 16842752 18940736 18940736 2570496 188230752 188230752 179645268 146052208 193202298 319297038 319297038 348076346 348076346 389232026 389232026 273814146 1005113472 1005113472 707000146 722186610 722186610 706130178 195839972 105980568 552650184 917291477 983613783 983613783 811504184 309331408 356651730 356651730 700717237 990675678 990675678 818555158 858907278 1017962770 1017962770 849502039 849502039 803117992 402776220 402776220 170936700 53579184 193261584 416250390 416250390 391125034 408218636 925579442 925579442 1044013449 1052313027 1052313027 1019094871 838130504 923494545 923494545 636504664 562187305 562187305 558828608 558828608 60074528 60417648 60417648 87838593 570247201 592815681 592815681 549832177 51423441 554992416 556306016 556306016 17335296 17335296 82968832 82968832 20736640 443999146 443999146 440568748 440568748 172244352 518534236 518534236 328719142 371924302 371924302 416434708 416434708 168749584 204645444 204645444 183686100 150866368 134000546 296086908 296086908 616687471 616687471 344106736 818664586 846383874 934740367 934740367 738836763 784228053 784228053 633856865 865196344 865196344 205729932 205729932 135443404 45830356 124845168 124845168 119670920 119670920 68430136 203326220 203326220 637134108 706511381 706511381 703450613 949290848 959261991 1047866452 1047866452 888670155 935077208 935077208 829424987 628435681 628435681 648260515 986759895 986759895 894958251 963934716 963934716 637698952 711323939 914846174 914846174 1071780351 1071780351 773612429 700714213 1049622202 1049622202 847468944 847468944 585615506 872856841 872856841 552268104 813932935 956401526 991080932 991080932 147927104 422330944 422330944 34417680 34417680 927760 998400 270480176 321073458 321073458 817025870 817025870 855913217 855913217 971722448 971722448 845824160 768273592 768273592 172541076 260409253 565709904 565709904 232080637 243925832 243925832 539760684 546184257 549676996 549676996 656111856 703069732 703069732 57189780 15933952 15933952 22419872 22419872 6501536 5595904 134674817 134674817 158264612 158264612 152655245 744034551 744034551 863118011 1018236838 1018236838 826149172 168697137 168165398 156776068 156776068 18024192 23069856 23069856 2622720 29121440 29121440 227316620 227316620 156745222 273992322 273992322 345295434 486416396 486416396 950938280 950938280 546754595 816231715 816231715 500272547 24382368 547430949 704196385 704196385 558791872 549993120 676283748 676283748 675756165 899875531 899875531 191996916 1050277620 1050277620 927110033 927110033 743024622 962127054 962127054 890939484 972889934 972889934 212692804 724402488 975184161 975184161 824181027 772069457 772069457 209850444 839850347 839850347 329793616 329793616 620869837 750866850 879126795 879126795 619730338 431414118 431414118 421550656 421537156 421537156 311445894 163154372 163678288 163678288 41747540 67183186 296812598 296812598 655380884 655380884 790899554 790899554 551427881 829711530 942430258 942430258 453457974 332506396 686458725 686458725 220580580 218900872 218900872 913843571 913843571 365420752 626288737 626288737 107242712 122426792 356657364 930068651 930068651 516356882 825858647 825858647 152267092 488852172 488852172 360989304 528798714 528798714 372507396 372507396 226107176 226107176 223289248 137709952 157759236 157759236 8602144 35683584 35683584 2801680 0 263248 10324496 39338000 39338000 131180160 131180160 79996008 77503520 119899768 119899768 80283600 186491136 186491136 138535044 105992352 114423512 114423512 147005640 201461772 207810820 207810820 121783504 553308112 553308112 671621360 731980149 731980149 28377621 24695956 205337972 205337972 157626944 198728484 198728484 186816080 45960592 45758288 42364960 59107440 73614656 109803680 109803680 125864968 125864968 80310320 50933248 43786864 43063808 89701160 89701160 86822184 86822184 69654784 69654784 84893024 122324072 122324072 251948024 251948024 786695192 786695192 663629661 713834560 713834560 615408385 641728281 641728281 118557192 118557192 236932200 236932200 235529244 218030028 218030028 49099224 561355240 690153613 690153613 555647712 74713600 95421288 685375720 685375720 85644840 85644840 17230344 2134352 44187904 44187904 371702832 445479270 445479270 405015084 405015084 312740178 287648850 310687232 310687232 706633299 843952977 843952977 805864832 963376551 963376551 573846020 323133025 824445060 824445060 689182366 1065617656 1065617656 407636067 865933446 865933446 471217813 527310270 527310270 379002118 504414300 504414300 243319326 202134276 126109874 1069290872 1069290872 245502300 245502300 210110736 808436696 808436696 975294488 975294488 751754445 931137583 931137583 871364834 355161130 751770035 751770035 161005892 88576800 343217412 343217412 249243628 236178596 441201480 446565718 446565718 437266734 437266734 466972040 466972040 394399866 356516352 173192789 236471841 236928540 236928540 142259936 165688672 698573766 698573766 414710467 961355713 961355713 207930994 725928161 725928161 33816576 33818640 33818640 33818640 100925440 339871434 339871434 746120018 746120018 69747106 69747106 69206280 2097152 1049088 1097728 1097728 0 4104 67244040 67244040 893911124 969544871 1050418369 1050418369 1029148322 1029148322 680064581 644030609 644030609 470026254 470026254 260233662 830637104 830637104 205165191 175767810 519755742 944637772 944637772 718588437 6533456 8646720 486641902 486641902 369394269 390483624 390483624 979802626 979802626 940607640 977554079 977554079 217063819 543228739 660678671 968884455 968884455 957352579 813959235 599706824 900658322 900658322 897303867 897303867 569414196 671196081 724104949 724104949 682888005 682888005 628347244 628347244 722502832 722502832 686417349 51244193 801754480 801754480 537785232 583453952 583453952 546622320 681297568 695480976 695480976 676596357 547871440 155480096 16826400 16826400 101318809 888759505 888759505 647571033 907282971 907282971 387454587 362677296 642438297 642438297 875724985 875724985 627048873 1048835114 1048835114 487772718 873030148 873030148 554308641 75499706 577538706 602704560 602704560 356009513 261885564 667283977 667283977 573571600 683198277 683198277 603256209 603256209 499904803 954528966 954528966 360921581 153356580 185428268 447293798 447293798 414565544 300660658 529939748 529939748 115394840 115394840 225618316 274008396 409544070 409544070 534531382 843088638 843088638 1024461728 1024461728 830245659 502278094 573604111 814727280 814727280 775160626 934398037 934398037 452272927 886048868 935280219 935280219 710479326 22312480 55433344 55433344 60532392 113894616 623399577 623399577 129475320 622415185 622415185 611969676 646975849 646975849 547533641 614548877 614548877 538042881 208749321 513810628 689575022 689575022 134480596 427563088 427563088 167911286 138825780 50742580 50742580 30409284 26478656 9437760 29776560 54697152 54697152 65768768 65768768 102894864 102894864 122814492 122814492 156013816 156013816 367673736 367673736 295258639 369311729 482040144 482040144 847731319 874675554 874675554 452080975 1062205752 1062205752 980510291 957385834 957385834 473608064 473608064 806733476 806733476 759751439 677652997 675621509 877666658 877666658 816918761 69083564 315230068 563619648 563619648 411125332 628604105 879619467 879619467 928076706 928076706 641190744 812878374 833717818 833717818 730647633 244552914 941524529 941524529 886120358 760424329 616113584 616113584 560201728 509780920 509780920 186716820 170134088 593840020 593840020 170208020 746795436 761340333 772935945 772935945 714277104 801362493 801362493 547434566 369156152 816433408 816433408 272581952 377584924 438741780 438741780 873863691 873863691 418641426 479970182 479970182 209578444 441549722 441549722 307967634 229129811 399498957 1072034200 1072034200 258385021 912942259 912942259 270795780 270795780 168297492 9736832 316135488 316135488 294126690 594555400 660812217 660812217 572862734 726010041 738795785 738795785 874112523 874112523 682934898 865503794 989975162 989975162 79116008 79116008 52183792 110061024 110061024 110158696 282854482 282854482 364471472 364471472 344234186 280105562 41389226 965917216 965917216 608445112 821388358 977798295 977798295 900090766 900090766 769837529 806998528 806998528 834035786 834035786 795193113 795193113 723332661 155133116 773279696 773279696 689099620 689099620 614816536 130072824 252474736 252474736 191314356 107938860 122717464 122717464 61415008 61415008 44298576 18127072 57179368 90318848 98799096 126501008 412140288 412140288 407415750 422904240 425771430 425771430 94421352 94421352 90190088 82047432 79862976 79862976 58927632 45746272 119875372 481691406 481691406 1061046234 1061046234 487852590 853898583 853898583 125255132 177255083 177255083 974177800 974177800 319341730 126027240 542589454 802964498 926944306 926944306 840175281 575865929 605794209 605794209 553937026 272706952 290019506 290019506 590777370 590777370 352619387 933222496 933222496 135103291 198321908 198321908 716587089 716587089 712382229 712644501 712644501 789587872 789587872 743935133 743935133 706984773 171928657 675619880 759958701 759958701 394373333 172147718 163857596 163857596 205523396 673586674 673586674 42736743 425902338 425902338 444479684 444479684 152639378 9572928 285248 18915584 18915584 168160740 172878996 172878996 248825924 248825924 268592208 300606256 300606256 225935134 331735266 518223369 734998795 734998795 217628877 946406085 1002535257 1002535257 996565108 672741541 221515607 452864561 452864561 848047733 848047733 565218944 565218944 168821268 168821268 344194841 539375165 539375165 1034685807 1034685807 804333245 342485116 310436249 73936128 607262986 817920018 817920018 639206658 917494168 917494168 765582624 765582624 336164776 225020452 142083972 138265752 292698776 292698776 426955124 426955124 328417810 161150818 155248272 64046688 22061192 364906498 364906498 274727298 165683110 165683110 149200972 193202298 319297038 319297038 348076346 348076346 389232026 389232026 273814146 1005113472 1005113472 1001453376 1001453376 963517863 334005603 195839972 49597392 552650184 917291477 983613783 983613783 811504184 309331408 356651730 356651730 700717237 990675678 990675678 818555158 858907278 1017962770 1017962770 849502039 849502039 803117992 402776220 402776220 163716040 259392668 259392668 416250390 416250390 110361283 349473856 925579442 925579442 881292032 344194703 386950598 732619127 838130504 923494545 923494545 636504664 562187305 562187305 554075233 549927968 130414944 130414944 120587064 87838593 570247201 592815681 592815681 549832177 61002096 554992416 556306016 556306016 48422592 48422592 120261296 137364640 173318796 173318796 211507936 246414684 246414684 160291836 171636736 177376344 177376344 147736404 147736404 101372952 168749584 168749584 204645444 243533916 243533916 150866368 311953536 311953536 296086908 616687471 616687471 407011528 503775460 846383874 934740367 934740367 738836763 784228053 784228053 688886371 865196344 865196344 944791671 954356792 954356792 452722856 112877592 149089256 149089256 180404436 180404436 203326220 464314727 781196505 895517483 895517483 703450613 324110344 391506618 1047866452 1047866452 888670155 660025371 647497305 647497305 640291336 628435681 559290612 512039118 512039118 1016572902 1016572902 963932888 637698952 637698952 914846174 914846174 1071780351 1071780351 773612429 353120431 924801937 924801937 847468944 847468944 585615506 872856841 872856841 377480091 813932935 956401526 991080932 991080932 881190987 881190987 536886584 395281715 821625396 821625396 484665562 625517856 625517856 388739843 817025870 817025870 666183788 666183788 614305113 567990757 248120088 150607812 172541076 172541076 71529500 565709904 690023072 690023072 243925832 243925832 539760684 546184257 549676996 549676996 656111856 703069732 703069732 175643572 51514896 54526128 191456564 191456564 54948400 192339588 192339588 134674817 158264612 158264612 152655245 744034551 744034551 887727657 1018236838 1018236838 826149172 996304202 996304202 964812903 727992726 970900928 970900928 947674851 966996327 966996327 858024516 296151072 252805486 116452618 116452618 86431978 650236777 650236777 242622701 537104400 537104400 760832356 760832356 619120229 213644393 161784325 552601632 552601632 600572288 600572288 704514928 704514928 676283748 675756165 431372622 431372622 191996916 727844722 806979394 816526659 816526659 545797827 945816675 945816675 890939484 972889934 972889934 605992690 724402488 975184161 975184161 824181027 296050755 204122174 134774804 554570033 554570033 657102169 657102169 620869837 750866850 879126795 879126795 619730338 431414118 431414118 421550656 152043952 152043952 163154372 163154372 163678288 163678288 201622208 212959956 296812598 296812598 173037433 207827340 790899554 790899554 551427881 551427881 558712080 558712080 554697249 553784617 90442152 90442152 88084608 73660576 73660576 913843571 913843571 382471386 626288737 626288737 283829888 100269816 356657364 930068651 930068651 502004046 825858647 825858647 152267092 424997710 424997710 360989304 528798714 528798714 372507396 372507396 156502212 31457280 146877856 146877856 137709952 20721280 55378576 107574160 107574160 84673072 116753544 116753544 54602648 52275376 81389144 81389144 79996008 125854344 125854344 125945244 206327172 206327172 202189836 186491136 241051960 241051960 254939964 254939964 222234264 225204508 225204508 239276568 733485781 733485781 536904300 587225432 631656993 631656993 230892204 230892204 691615684 762319125 762319125 598938316 284607326 303280128 303280128 23237298 350483080 350483080 517015774 517015774 455293090 455293090 446842292 195393748 50933248 43786864 43063808 140388640 153982208 153982208 6319392 357555362 357555362 353517344 353517344 122324072 349835968 349835968 786695192 786695192 663629661 610251312 574638052 615408385 641728281 641728281 118557192 707303040 707303040 236932200 235529244 143266884 143266884 93389473 616636617 616636617 610187881 555647712 74713600 95421288 674939176 674939176 161345124 161345124 581944661 648874073 648874073 639157698 392869680 445479270 445479270 405015084 405015084 312740178 287648850 310838868 310838868 403938880 403938880 175721636 866342592 866342592 573846020 573846020 439892274 824445060 824445060 554699127 483793643 509423262 509423262 440801430 823955632 983319130 983319130 332171340 185209908 504414300 504414300 565744557 565744557 579884759 1069290872 1069290872 686992950 966232290 966232290 709194067 659876334 1035121284 1035121284 751754445 751754445 72110149 438620240 438620240 144754276 161005892 161005892 32578440 343217412 343217412 249243628 205068412 441201480 441201480 440132630 122948154 207908076 285740120 336857610 336857610 324528728 173192789 236471841 236928540 236928540 192550836 192550836 698573766 698573766 414710467 961355713 961355713 969148647 1002703859 1002703859 556423302 861249297 879442450 879442450 956336998 1024688588 1024688588 337757184 1060119209 1060119209 392711472 338971138 398723184 398723184 442271904 442271904 317231750 460731612 460731612 411253012 776931437 776931437 1050418369 1050418369 1029148322 1029148322 680064581 644030609 644030609 642297240 570445197 1057539184 1057539184 537144586 875246859 875246859 492525446 947690404 947690404 546973377 806039858 806039858 159224912 46157524 156948132 156948132 141219152 1005585040 1005585040 940607640 977554079 977554079 123013888 118563384 344056316 344056316 239291396 239291396 187691864 259482184 259482184 192977716 260072680 260072680 582094948 671196081 724104949 742736956 742736956 781409425 781409425 140624705 722502832 722502832 686417349 51244193 165767253 282092386 282092386 583453952 583453952 546622320 681297568 695480976 695480976 676596357 547871440 331354560 326335568 72127912 118655256 888759505 888759505 647571033 907282971 907282971 818940648 818940648 642438297 822097410 875724985 875724985 627048873 627048873 580125223 1032177710 1032177710 780207219 780207219 343967776 577538706 577538706 169610772 210766896 261885564 293860368 327681138 573571600 826046051 826046051 820480194 820480194 30458592 549458304 560046337 561718688 561718688 559076001 554734080 131926880 77184992 69943872 423561324 423561324 115394840 115394840 225618316 225618316 5507712 17610912 87522688 87522688 102503954 364301674 830245659 830245659 502278094 486053996 371286272 810715441 810715441 756075064 756075064 335762218 886048868 935280219 935280219 710479326 189755904 189755904 55433344 60532392 113894616 623399577 623399577 129475320 622415185 622415185 104960968 590402172 590402172 547533641 680723648 680723648 620966757 297862944 495588901 864314004 864314004 428977127 427563088 427563088 167911286 138825780 50742580 182501828 182501828 170940900 52544496 52544496 0 2154752 2154752 2670848 2670848 37277024 37277024 258187370 348148118 348148118 315393070 243400956 277002268 369311729 482040144 482040144 847731319 874675554 874675554 452080975 1062205752 1062205752 443522197 986441061 1057870084 1057870084 1028426927 216099730 216099730 200666612 267774460 320425934 320425934 205128064 612115872 612115872 223546889 563619648 563619648 310636626 628604105 879619467 879619467 538805130 607851609 607851609 812878374 833717818 833717818 927231721 927231721 941524529 941524529 990976519 990976519 420952614 560201728 950182736 950182736 551686280 762331149 762331149 640713620 582116156 582116156 746795436 761340333 788746376 788746376 725737653 801362493 801362493 547434566 382437376 816433408 816433408 312257040 312499220 438741780 575754504 873863691 873863691 674830353 749619023 749619023 682364229 1036732626 1036732626 307967634 679213125 679213125 302201089 942233798 942233798 599588828 866985940 866985940 417360458 703161824 823772064 823772064 316135488 265295581 594555400 660812217 660812217 526393824 526393824 410427438 410427438 934595894 934595894 922668298 922668298 495402953 503057516 503057516 79116008 52183792 130613288 130613288 110158696 282854482 282854482 364471472 364471472 344234186 380683488 405138298 711414226 711414226 608445112 608445112 612892680 612892680 306193033 18415747 274462338 806998528 806998528 806884483 806884483 467007206 375786782 375786782 333710676 773279696 775678092 775678092 689099620 247095304 259261404 259261404 120358996 647579444 846768879 846768879 623537312 86192424 78442968 477039454 853330956 853330956 629981425 990999518 990999518 959263904 959263904 459260692 407415750 42648194 75137556 242226458 511340810 511340810 510436480 510436480 148958672 18938912 19584288 25451328 219682348 255852842 761528377 761528377 487852590 853898583 853898583 125255132 177255083 329457920 974177800 974177800 960016416 960016416 924018470 924018470 926944306 926944306 840175281 319919912 319919912 293566384 272706952 272706952 91029888 285251600 319215666 319215666 276646304 933222496 933222496 56832432 60198112 149719408 716587089 716587089 712382229 742991620 791659821 791659821 747243653 743935133 743935133 706984773 580973586 605930324 605930324 615818506 615818506 935890233 935890233 855655595 548070531 568460444 996808119 996808119 671749554 290120964 444479684 444479684 334240818 297729490 270359874 269034498 133838994 133838994 71303304 71303304 500331058 500331058 324595598 268592208 105188915 105188915 331735266 518223369 734998795 734998795 217628877 946406085 1002535257 1002535257 996565108 672741541 388237060 452864561 917707976 917707976 848047733 637766314 743723144 743723144 168821268 344194841 539375165 539375165 1034685807 1034685807 537872856 697369625 697369625 642177177 642177177 817920018 883822288 883822288 917494168 1049660746 1049660746 827465679 827465679 1029443247 1067764991 1067764991 385065064 385065064 1047159255 1047159255 408486810 48768726 64046688 64046688 22061192 364906498 364906498 274727298 165683110 165683110 149200972 376642840 376642840 218246014 256130848 256130848 228589932 174272760 81924552 1004192560 1004192560 1001453376 1001453376 963517863 56018711 50142384 50142384 45562704 92538944 93323880 93323880 71434528 87429032 87429032 60084480 60084480 38823040 38823040 190645904 190645904 186437172 141340596 167082272 167082272 235277820 263634988 263634988 169656496 259392668 259392668 126484596 77627392 77644104 77644104 268542228 881292032 881292032 344194703 105383064 52767024 95816024 95816024 54755848 67971200 67971200 17108064 98510912 98510912 130414944 130414944 120587064 69229376 94971240 94971240 112386592 112386592 104300192 100680624 100680624 67839136 48422592 48422592 148834308 183186720 186332724 186332724 211507936 246414684 246414684 193214208 171636736 171636736 142926672 40931392 102463120 102463120 70854408 67124080 134219864 243533916 243533916 89661684 311953536 326714944 396487606 396487606 407011528 407011528 163835904 108621936 108621936 179699864 315427268 816121128 816121128 688886371 689728389 689728389 944791671 954356792 954356792 452722856 341507408 457418778 457418778 476513344 476513344 145858892 464314727 781196505 895517483 895517483 547406200 434246642 434246642 413139270 393616314 660025371 660025371 647497305 647497305 640291336 247083489 247083489 512039118 512039118 1016572902 1016572902 963932888 463706242 602103987 942724055 942724055 706135252 572263953 669043124 669043124 577658192 270378200 310113811 310113811 340314587 538019587 538019587 279994953 5324866 3278144 5670128 463326797 881190987 881190987 536886584 395281715 821625396 821625396 484665562 691023116 691023116 388739843 544739789 544739789 666183788 666183788 614305113 674341973 674341973 548217664 680862228 680862228 720981633 720981633 690023072 690023072 166237744 166237744 60866928 57542544 45538128 57462192 184262100 184262100 175643572 175643572 51514896 54526128 191456564 191456564 122342424 192339588 192339588 8204160 8164992 8164992 5541120 105891282 607489802 887727657 887727657 642774267 614471123 996304202 996304202 964812903 727992726 970900928 970900928 947674851 966996327 966996327 858024516 296151072 268651386 611369227 611369227 86431978 650236777 650236777 669295916 818575533 818575533 760832356 760832356 619120229 617353196 740920940 740920940 552601632 600572288 600572288 704514928 704514928 266676732 266676732 305373464 1048588898 1048588898 727844722 727844722 618321609 450511145 668282348 668282348 736872820 750813173 750813173 789441597 789441597 609252641 609252641 524152638 633056363 1009302577 1009302577 478464320 579110995 579110995 831594340 831594340 133260133 177865440 189404340 408045152 420930528 420930528 286512038 469875628 469875628 358048490 407470886 474539272 474539272 23069088 201622208 568824113 568824113 126261548 126261548 233940644 725181421 725181421 530788414 404276740 558712080 994394760 994394760 668574367 90442152 90442152 88084608 96862824 96862824 116002816 359399792 382471386 382471386 283829888 283829888 100269816 100269816 151798800 184862772 193055100 193055100 126027236 228078380 228078380 143299588 147774660 147774660 50356256 50356256 159460288 159460288 138750084 146877856 146877856 136193696 21738912 55378576 107574160 107574160 84673072 116753544 116753544 57434400 52275376 81389144 81389144 72384640 125854344 125854344 125945244 206327172 206327172 202189836 174915992 241051960 241051960 254939964 254939964 222234264 232544696 233097708 763338980 763338980 733485781 264598560 587225432 631656993 631656993 230892204 230892204 691615684 762319125 762319125 598938316 284607326 303280128 303280128 23237298 350483080 350483080 517015774 868597235 868597235 455293090 702599666 702599666 679678865 425384263 310888662 310888662 710619300 710619300 570968196 357555362 357555362 353517344 353517344 293580864 349835968 349835968 238290907 397061770 610251312 610251312 380997642 205804168 205804168 539263508 539263508 707303040 707303040 693374620 258802333 207588852 47849460 93389473 616636617 616636617 790951741 790951741 152437704 226756716 756809732 756809732 161345124 161345124 581944661 648874073 648874073 639157698 392869680 392869680 367177224 367177224 160632694 403769360 403769360 447970082 447970082 414504864 467429890 1005015062 1005015062 866342592 467807780 467807780 439892274 439892274 478348304 478348304 193341609 509423262 509423262 440801430 823955632 983319130 983319130 392009576 392009576 444876420 444876420 565744557 565744557 579884759 579884759 686992950 686992950 966232290 966232290 709194067 521725780 1035121284 1058713637 1058713637 769790445 421845313 438620240 438620240 487463404 487463404 24552256 12581732 220186976 220186976 21758928 31530640 39061376 39061376 129830576 129830576 114109656 56176104 47711440 46663376 46663376 131389460 131389460 235753488 244297328 244297328 192550836 272683299 428222752 428222752 818863585 818863585 969148647 1002703859 1002703859 556423302 1035063286 1035063286 879442450 956336998 1024688588 1024688588 541090417 1060119209 1060119209 392711472 669041165 669041165 398723184 442271904 442271904 317231750 460731612 460731612 411253012 776931437 776931437 209848320 176425044 176425044 134219856 333758576 358926762 973788436 973788436 1007301703 1057539184 1057539184 1009395310 1009395310 963716007 492525446 947690404 947690404 689570309 826405860 826405860 303403494 807945576 807945576 966810964 966810964 1005585040 1005585040 699433319 212927044 212927044 123013888 118563384 123083448 967944620 967944620 197501155 141607256 259482184 259482184 735653824 735653824 176951769 584123409 584123409 551621932 776810744 776810744 781409425 781409425 79446924 685091876 685091876 990382662 990382662 286519842 286519842 282092386 293213920 293213920 274253010 52995122 40020320 40020320 28176400 331354560 331354560 326335568 72127912 118655256 118655256 52701232 45780592 45780592 282661472 818940648 818940648 270347778 822097410 877678376 877678376 889008075 889008075 580125223 1032177710 1032177710 780207219 780207219 476318890 373656338 373656338 252726514 505392356 505392356 477357342 394416836 327681138 826046051 826046051 820480194 820480194 107554200 107554200 560046337 561718688 561718688 559076001 554734080 99941642 366679362 366679362 372997448 372997448 90359040 102393064 294425850 382628602 382628602 92931104 122947352 173048326 215207268 215207268 327565104 356780202 493281602 493281602 411250758 810715441 810715441 460781734 335762218 335762218 222162476 789771166 789771166 693543454 189755904 189755904 21464080 21259264 48304416 78688368 78688368 108734284 124903612 124903612 104960968 590402172 590402172 4719920 680723648 680723648 620966757 416827464 297862944 864314004 864314004 827872691 999215365 999215365 834980067 976338803 976338803 403418918 697551633 697551633 154536768 154536768 59091968 130851168 130851168 66060264 130714992 130714992 94498184 258187370 348148118 348148118 315393070 184918052 277002268 277002268 142606212 141837956 139670148 248518232 446443382 446443382 832627328 832627328 236044783 986441061 1057870084 1057870084 1028426927 8192 73728 68755464 68755464 379439040 379439040 205128064 612115872 612115872 537006848 369960826 369960826 313879232 313879232 72553168 421006822 421006822 347157500 295878170 532684008 532684008 290465379 927231721 927231721 810599043 798958187 990976519 990976519 420952614 429988672 950182736 950182736 562221136 762331149 762331149 640713620 582116156 582116156 656654756 776155293 788746376 788746376 802294217 802294217 565183329 382437376 382437376 277565440 312257040 312257040 46079634 49615936 575754504 645133209 674830353 675545792 1017662149 1017662149 682364229 1036732626 1036732626 146553189 679213125 679213125 302201089 942233798 942233798 599588828 866985940 866985940 417360458 703161824 823772064 823772064 265295581 1054397547 1054397547 403491829 591422647 591422647 803547645 803547645 610580549 934595894 991586139 991586139 929317817 929317817 797937600 503057516 236449452 190654092 130613288 130613288 83895544 233006380 325794064 325794064 394514904 394514904 380683488 405138298 417859014 417859014 1011757768 1011757768 894581951 469829764 469829764 911492152 911492152 906617883 604016648 604016648 618079413 618079413 965949698 965949698 754925517 606673604 775678092 795771385 795771385 774690269 746901181 746901181 1050725259 1050725259 880177802 1009490973 1009490973 86192424 78442968 477039454 853330956 853330956 629981425 990999518 990999518 959263904 959263904 459260692 285295104 64753392 468702640 468702640 511340810 511340810 510436480 510436480 148958672 18938912 19584288 25451328 25451328 68162576 231358872 231358872 71275536 100826112 100826112 11543872 69537032 329457920 799748450 799748450 960016416 960016416 924018470 924018470 516693351 334109221 319625040 589311651 810026147 810026147 826803331 826803331 129551416 378801960 378801960 586385154 586385154 1020871266 1020871266 419122690 419122690 450007744 450007744 154538544 174462228 742991620 791659821 791659821 648532404 180539437 179570516 179570516 580973586 580973586 556232002 615818506 615818506 935890233 935890233 855655595 548070531 568460444 996808119 996808119 671749554 462930048 436507092 436507092 379094106 352892010 319426594 325806528 388593084 531619214 531619214 449196052 500331058 500331058 324595598 205556892 168748272 168748272 57746352 101722796 101722796 7618948 6866304 618661248 618661248 887330408 887330408 814423940 814423940 452009201 917707976 917707976 589771588 637766314 798557823 798557823 103844428 990951401 990951401 313070400 282633090 807480723 807480723 697369625 697369625 642177177 642177177 101878401 883822288 883822288 289638788 1049660746 1049660746 827465679 827465679 1029443247 1067764991 1067764991 385065064 385065064 1047159255 1047159255 470035730 172473808 172473808 36218880 36218880 16979712 29434080 29434080 75358688 84460584 84460584 376642840 376642840 218246014 256130848 405877358 494933506 494933506 355472234 336717202 792077351 792077351 733745013 733745013 322313651 199494132 73537396 632041296 913783765 981272527 981272527 838996744 462328980 308070944 435868666 435868666 380279730 464518518 464518518 292808020 268701360 275590530 290323498 338640138 347277738 428782152 428782152 169656496 177329316 195889471 806089731 806089731 1050030776 1050030776 297194344 234930204 234930204 330042590 343213838 343213838 95816024 112227968 117172176 117172176 88478136 80343648 98510912 98510912 94905250 69888104 287968162 287968162 461736756 461736756 398970610 112386592 487187936 487187936 365641758 365641758 365027562 294619400 254119344 254119344 186332724 186332724 254466380 254466380 193214208 213195900 213195900 142926672 142926672 213975340 213975340 102463120 266615020 266615020 224333896 224333896 136712600 136712600 192205148 326714944 396487606 958485717 958485717 775976112 775976112 134971532 108621936 202646184 202646184 816121128 816121128 273520128 380815256 625636012 655390721 655390721 543432427 543432427 578579780 674209669 963057038 963057038 476513344 323499280 49539824 48833392 325408562 325408562 330348544 434246642 434246642 413139270 203889480 260711008 311465568 360802310 522461484 522461484 35203408 44377616 918693900 918693900 1052971015 1052971015 426211983 463706242 602103987 942724055 942724055 706135252 572263953 669043124 669043124 577658192 904465882 904465882 310113811 340314587 538019587 538019587 279994953 838479683 838479683 432621600 548789797 548789797 8511552 9036864 9036864 680012232 680012232 86829356 691023116 691023116 210948684 210948684 759980461 784334201 784334201 793561809 793561809 759237800 614332953 751435793 751435793 720981633 720981633 689294164 718334497 718334497 736284820 736284820 61215381 45538128 26905904 685915012 685915012 585485764 35128848 35128848 39761984 91445776 91445776 122342424 122342424 121180544 5948032 18809568 18809568 7525248 20703200 20703200 17477664 17477664 33722640 33722640 8389520 47235792 174822992 174822992 58632360 58632360 355228750 355228750 168100448 272631808 322187490 361136658 611369227 611369227 355855146 612152585 612152585 669295916 818575533 818575533 238143384 108585756 617353196 617353196 740920940 740920940 209517313 65502784 131670840 131670840 675446916 679612485 679612485 305373464 1048588898 1048588898 797836522 797836522 703598849 450511145 668282348 668282348 655525785 600280016 739797552 789441597 890013757 890013757 714343148 948994578 948994578 1009302577 1009302577 478464320 579110995 579110995 831594340 831594340 606813096 606813096 734479882 734479882 673976642 472647148 472647148 469875628 469875628 358048490 407470886 474539272 474539272 254941308 638325380 638325380 568824113 869489392 944767623 944767623 725181421 930593200 930593200 498410183 999793436 999793436 994394760 668574367 85206129 506106462 506106462 96862824 161908816 546312241 546312241 284740898 546493839 546493839 326692572 326692572 446505170 687893637 687893637 101049520 709461149 709461149 228078380 228078380 176682512 188342480 188342480 143771056 36743168 159460288 159460288 140773764 29426048 139013120 139013120 21738912 21738912 23981472 33589152 33589152 17875360 196936076 196936076 99525496 138206660 138206660 80774152 80774152 127283872 255054132 255054132 90651048 253041188 253041188 83888536 131795072 131795072 127470960 123608760 232544696 233097708 763338980 763338980 82990441 77746632 74581800 102883608 102883608 51557160 156696908 240651432 240651432 435495272 435495272 201557520 4870784 4870784 4345856 8705152 13507776 703553844 868597235 868597235 447354198 702599666 702599666 679678865 425384263 310888662 310888662 710619300 710619300 570968196 155279376 67446792 122987344 122987344 293580864 515395676 515395676 928260864 928260864 179417771 220299624 220299624 316869588 421727296 623848541 623848541 786911723 786911723 693374620 258802333 257607988 518192748 518192748 502012530 607179920 790951741 790951741 152437704 226756716 756809732 756809732 134618689 214584520 214584520 119538976 119538976 87955736 345988298 345988298 367177224 367177224 160632694 403769360 403769360 447970082 447970082 414504864 467429890 1005015062 1005015062 840731251 147939415 16671584 160242002 160242002 414324742 461189046 461189046 501513740 501513740 488899552 292480708 292480708 275797802 392009576 392009576 666371961 666371961 713143172 713143172 210837512 143655492 96608480 145774234 886902092 886902092 489235758 521725780 778521134 1058713637 1058713637 769790445 421845313 163582282 270664878 487463404 487463404 427768706 427768706 404815912 313010498 313010498 664853017 664853017 307042424 129830576 813695043 813695043 314221280 567449232 615700034 899437528 1008568419 1008568419 539344388 357199136 244297328 209882942 327865458 512225746 533065078 533065078 446732576 196219764 196219764 153955620 333525812 1035063286 1035063286 818186248 532799742 532799742 541090417 541090417 756106341 756106341 226027036 669041165 669041165 465834248 465834248 491604340 491604340 429266018 816368657 952651229 952651229 656703630 130818768 60622960 84280536 84280536 635572361 635572361 973788436 973788436 1007301703 1007301703 432210024 1009395310 1009395310 963716007 340456747 540054798 689570309 689570309 826405860 826405860 303403494 807945576 807945576 966810964 966810964 653312985 515932635 163578016 212927044 844177980 844177980 490815719 378585690 967944620 967944620 434198730 434198730 395706736 251907552 735653824 735653824 226887088 584123409 584123409 551621932 776810744 776810744 562434080 562434080 545523777 124395385 104334744 990382662 990382662 286519842 286519842 149208038 359301520 359301520 1036947604 1038299060 1038299060 361548906 497582084 927388864 927388864 891949264 117441074 117441074 917114273 917114273 586339281 826148131 826148131 592380530 592380530 570025953 570025953 879346739 879346739 889008075 889008075 675348816 675348816 226512220 434898952 476318890 1041289482 1041289482 979411487 1042883855 1042883855 1004020020 1004020020 921077968 921077968 631292468 114381008 376212728 376212728 345947792 107554200 38085960 83692176 95424112 95424112 79185288 99941642 366679362 366679362 372997448 372997448 90359040 102393064 294425850 600932928 839530016 839530016 281202882 173048326 215207268 391246436 881649537 881649537 979562977 979562977 650166489 185696288 185696288 12593216 12656832 71876800 71902344 71902344 67382400 37890064 37890064 38584352 38584352 59630720 98578720 98578720 73560736 96700232 96700232 103907328 103932696 103932696 183128872 183128872 608305293 608305293 416827464 1031153583 1031153583 388964360 388964360 827872691 999215365 999215365 834980067 976338803 976338803 455757334 697551633 697551633 154536768 154536768 59091968 130851168 130851168 66060264 130714992 130714992 95419776 205625580 205625580 184777180 184777180 105070868 105070868 142606212 142606212 141837956 139670148 248518232 576006880 576006880 832627328 832627328 236044783 205521052 218177550 325148984 685849102 607488706 887218635 887218635 885121227 379439040 379439040 546972736 554837001 631243113 884224585 884224585 864103187 313879232 313879232 97035424 265572536 503958700 503958700 433271526 532684008 532684008 509625064 328731174 328731174 424199474 424199474 819986882 819986882 571015185 537469953 716415460 716415460 562221136 604522368 604522368 193077556 193468004 193468004 656654756 776155293 786702613 786702613 802294217 802294217 796950922 796950922 630058089 815576425 815576425 814399043 806355459 806355459 811836162 811836162 14938496 675545792 1017662149 1017662149 1051136 1051136 15335936 19737344 26890048 26890048 22020260 16475040 107388040 249429660 262409046 262409046 476549634 476549634 343039758 214582662 134551136 1054397547 1054397547 515498034 591422647 591422647 803547645 803547645 610580549 587651121 991586139 991586139 929317817 929317817 797937600 256171072 236449452 190654092 109913848 109913848 62779248 233006380 416946354 416946354 397810554 394514904 376512311 376512311 721693895 721693895 1011757768 1011757768 913564377 913564377 593711914 956851254 956851254 906617883 51478897 447219206 618079413 618079413 965949698 965949698 754925517 606673604 131253705 795771385 795771385 774690269 746901181 746901181 1050725259 1050725259 880177802 1009490973 1009490973 722994741 793950392 793950392 636839609 665184633 665184633 172229140 172229140 168822932 329285796 329285796 285295104 723361169 723361169 468702640 808616451 808616451 363030510 363030510 448538944 846515873 846515873 242871688 544804741 544804741 348833946 231358872 268639506 268639506 238557504 174199836 313342290 313342290 1034626058 1034626058 890713612 890713612 1024984624 1024984624 423167799 360974442 360974442 589311651 810026147 810026147 826803331 826803331 932249906 932249906 657457977 666308656 666308656 1020871266 1020871266 419122690 419122690 450007744 450007744 565234293 565234293 970006894 970006894 648532404 911861824 911861824 654402168 654402168 651505224 654259225 654259225 573059864 239288348 401171476 434177274 434177274 195788832 330094910 330094910 151704612 462930048 462930048 328090874 379094106 379094106 352892010 319426594 325806528 388593084 531619214 531619214 449196052 77056636 157071992 205556892 205556892 534159085 534159085 391973938 391973938 590045843 590045843 203457039 758224552 758224552 622964684 888105224 888105224 906808347 906808347 706051792 365896756 315426322 511911442 798557823 798557823 245926920 990951401 990951401 705290321 382513817 807480723 821088770 821088770 811733379 551674305 551674305 851401451 851401451 930326251 930326251 656618130 798356926 798356926 319837184 303748626 303748626 474125980 474125980 272629776 442769814 470035730 470035730 283736832 283736832 36218880 62662418 381138882 381138882 284246658 219098662 219098662 136061352 343937354 414719036 446693494 446693494 405877358 494933506 494933506 355472234 336717202 792077351 792077351 733745013 733745013 322313651 235879208 235879208 632041296 913783765 981272527 981272527 838996744 462328980 308070944 435868666 435868666 380279730 464518518 464518518 292808020 268701360 275590530 290323498 338640138 347277738 428782152 428782152 56364904 177329316 195889471 806089731 806089731 1050030776 1050030776 889456959 889456959 677644443 820195439 820195439 1054532840 1054532840 779516295 706500537 117172176 117621784 117621784 109019602 331026496 331026496 330700792 419627276 419627276 461736756 461736756 398970610 79295058 487187936 487187936 365641758 365641758 365027562 294619400 254119344 254119344 134876176 185051376 254466380 254466380 160430096 213195900 213195900 162978360 136707140 213975340 213975340 35860752 266615020 266615020 224333896 261346308 261346308 248906076 248906076 482376903 770391275 958485717 958485717 775976112 775976112 1005822295 1005822295 202646184 1023558514 1023558514 228467833 167327734 380815256 625636012 655390721 655390721 543432427 543432427 578579780 674209669 963057038 963057038 323499280 323499280 49539824 76161064 275670096 289456562 289456562 268570626 375425826 375425826 292665624 203889480 201396492 186614784 143128644 143128644 195312009 195312009 918693900 918693900 1052971015 1052971015 831730275 831730275 956489760 956489760 463505104 463505104 374919486 1035995554 1035995554 367019853 904465882 904465882 308801552 5579968 20836064 20836064 39096272 838479683 838479683 432621600 548789797 548789797 54913200 31760720 9036864 8653888 8653888 11086912 34079760 134787092 671159424 671159424 759980461 784334201 784334201 793561809 793561809 759237800 614332953 751435793 751435793 184227456 573730741 689294164 718334497 718334497 736284820 736284820 61215381 176425044 176425044 685915012 685915012 585485764 60562708 48092496 52052752 154942828 154942828 85206832 239503172 239503172 70910984 18809568 18809568 7525248 105989450 105989450 24893296 264589864 421280822 421280822 429417608 429417608 349489866 189792948 189792948 342511678 342511678 268698112 269748738 272631808 328435754 361136658 361136658 355855146 355855146 324311640 324311640 269761392 461910498 461910498 238143384 131867412 233647596 233647596 561530440 631167392 631167392 792744833 792744833 641490596 675446916 679612485 679612485 1065353151 1065353151 941835948 941835948 797836522 703598849 248268032 554298912 554298912 724041372 724041372 694627209 694627209 890013757 890013757 714343148 948994578 948994578 646977056 261620393 152045268 201495116 201495116 201714500 201714500 606813096 606813096 734479882 734479882 673976642 472647148 472647148 410425636 410425636 170467644 170467644 142904340 143266104 254941308 670076988 670076988 352686607 869489392 944767623 944767623 449185910 930593200 930593200 796137642 999793436 1043350454 1043350454 1060246335 1060246335 672157984 506106462 357284880 357284880 546312241 546312241 284740898 546493839 546493839 326692572 426455186 446505170 687893637 687893637 167915734 709461149 709461149 178997216 178997216 200338480 200338480 415420614 427012546 427012546 257439466 257439466 283322552 422909372 422909372 493032112 493032112 340599040 118889016 118889016 101057056 128216664 196936076 196936076 99525496 138206660 138206660 80774152 80774152 127283872 255054132 255054132 90651048 253041188 253041188 20245344 131795072 131795072 97597344 97597344 131647112 131647112 554222080 558781681 558781681 379808074 606068552 646712409 646712409 403481644 470828484 1008501508 1008501508 831310947 750256724 287056536 279029136 279029136 17535282 337685832 337685832 703553844 703553844 447354198 447354198 441057728 197082996 197082996 167649252 167649252 64349188 35787024 33661092 155279376 477773710 477773710 458491668 458491668 313884732 515395676 515395676 928260864 928260864 785637846 523583451 798337550 798337550 681618654 907707393 907707393 786911723 786911723 785559632 770573748 770573748 711990592 711990592 502012530 316950760 24444928 8320 35914332 213125964 740557636 740557636 177474385 241698204 241698204 137097712 240469740 240469740 207479912 580713457 580713457 219202092 621773829 621773829 22338720 18434048 134481924 541557281 558364833 558364833 554043397 334520178 334520178 596006050 596006050 537338085 1040432726 1040432726 913591259 913591259 881344673 881344673 658542609 658542609 593498504 204058652 234399752 666371961 666371961 713143172 713143172 336708042 281067714 93529768 200278052 789985957 894103219 894103219 991902007 991902007 717741665 717741665 88080896 499187881 947986503 947986503 1015097413 1015097413 496321529 427768706 404815912 313010498 313010498 664853017 664853017 307042424 67643595 813695043 813695043 348663168 567449232 615700034 899437528 1008568419 1008568419 539344388 411811914 336088378 472137530 472137530 512225746 533065078 533065078 446732576 292287906 591627474 591627474 600891061 600891061 151176260 151176260 143183908 1024190530 1024190530 856748053 397209175 295176480 137478696 101204744 101204744 465834248 465834248 504902208 504902208 429266018 816368657 952651229 952651229 688193680 56696912 56696912 84280536 84280536 635572361 635572361 563808268 682961864 682961864 209125992 155453604 826527752 893460651 893460651 340456747 537121440 537121440 141189765 201851904 201851904 201326604 588432741 773364010 773364010 523125911 641487223 641487223 964692115 964692115 844177980 1037322789 1037322789 810562288 957606120 1007946255 1007946255 677661056 395706736 251907552 715765204 755135468 755135468 495716382 495716382 268151880 419979878 680800448 724516604 724516604 613156940 638912647 638912647 918946761 918946761 419189035 162138782 118247524 359301520 359301520 1036947604 1038299060 1038299060 402634208 497582084 927388864 927388864 891949264 117441074 180754620 917114273 917114273 586339281 826148131 826148131 592380530 592380530 570025953 570025953 879346739 879346739 326673152 63632833 675348816 864716800 865000563 865000563 411222354 1041289482 1041289482 979411487 1042883855 1042883855 1004020020 1004020020 921077968 921077968 631292468 114381008 376212728 376212728 345947792 10485824 10485824 19346432 32875488 32875488 79185288 79185288 68100000 69730184 86382888 86382888 67182600 67182600 54280608 600932928 839530016 839530016 281202882 557988004 671426565 671426565 881649537 881649537 979562977 979562977 650166489 236142809 112987992 313076490 313076490 282087680 282087680 796590242 796590242 774943638 236082836 236082836 57030404 141673744 207178888 207178888 171467836 195134484 195134484 251112444 251112444 250272684 250272684 741526729 741526729 608305293 224518572 1031153583 1031153583 388964360 612782616 612782616 888428677 1042684191 1042684191 270804930 455757334 455757334 411723108 433324134 482400762 482400762 96607178 23464176 33299464 289276392 348135200 348135200 95419776 83156672 172304532 172304532 63154680 71423384 408626189 873599499 873599499 505002569 245157468 927935329 927935329 981208695 981208695 851250711 204071972 204071972 201856132 325148984 339787914 607488706 887218635 887218635 885121227 945740231 1039015375 1039015375 606162403 631243113 884224585 884224585 864103187 280032851 128433904 116109408 504229424 504229424 503958700 433271526 134222848 509625064 509625064 984402049 984402049 947515270 947515270 842914599 842914599 571015185 537469953 316679635 46137552 53053744 53053744 52716848 738553969 738553969 173195668 203658540 569934737 753042433 754326476 754326476 736248765 796950922 796950922 630058089 815576425 816344643 881232515 881232515 806355459 811836162 811836162 678621316 642677974 642677974 683950922 683950922 976029701 976029701 631015486 631015486 940891139 948357287 948357287 992188723 992188723 740065360 740065360 476549634 476549634 343039758 264579324 385861172 397488910 515498034 515498034 347463128 322325474 322325474 303734546 303734546 268834818 34118162 451529248 451529248 319121540 144751616 144751616 59196740 58720368 127667832 127667832 246227608 246227608 416946354 416946354 397810554 277686082 376512311 376512311 866542834 866542834 745903139 643451205 913564377 913564377 991723793 991723793 956851254 570548241 51478897 943266048 943266048 89392280 170550560 170550560 136314372 759960392 759960392 78777517 566231968 649367048 649367048 622858169 259338024 259338024 487489930 926844074 926844074 722994741 793950392 1030500254 1030500254 665184633 665184633 958448518 958448518 713035973 576151696 522309656 492890538 723361169 723361169 404153364 808616451 808616451 363030510 363030510 448538944 846515873 846515873 242871688 544804741 544804741 348833946 175561620 268639506 268639506 238557504 174199836 621094969 621094969 1034626058 1034626058 823853357 412563041 1024984624 1024984624 656286779 873075723 873075723 807253066 537711627 638372977 638372977 331095376 932249906 932249906 657457977 666308656 666308656 818418864 1015818779 1015818779 1012177039 1020314319 1020314319 565234293 565234293 970006894 970006894 463320662 911861824 911861824 654402168 654402168 651505224 654259225 654259225 573059864 108738456 224764776 224764776 132733092 38535284 197960768 197960768 179047828 179047828 310670480 530589686 530589686 317850114 317850114 295318826 122362226 23104736 195299700 195299700 172303700 75623964 25953300 169848724 174235540 534159085 534159085 391973938 391973938 590045843 590045843 203457039 758224552 758224552 622964684 888105224 888105224 906808347 906808347 706051792 365896756 258152552 258152552 139864376 245926920 245926920 439811334 705290321 705290321 382513817 311603474 821088770 821088770 811733379 598104816 598104816 851401451 851401451 930326251 930326251 656618130 1047107426 1047107426 597183369 558409730 207232610 474125980 474125980 318292368 974162179 974162179 369498384 283736832 283736832 29295704 62662418 381138882 381138882 284246658 219098662 219098662 136061352 343937354 414719036 446693494 446693494 313005568 203108356 137442408 87054080 18514280 25629088 49232256 49232256 134622292 134622292 235879208 235879208 182395876 182395876 192949236 192949236 238263920 238263920 101204232 101204232 103584344 103584344 133664808 133664808 78234536 133607832 133607832 107164408 67373064 126887944 126887944 96830320 202036312 202036312 50233616 652682571 652682571 639702389 860016942 889456959 889456959 677644443 820195439 820195439 1054532840 1054532840 779516295 706500537 121655328 117621784 117621784 109019602 331026496 331026496 330700792 419627276 419627276 403986098 99116714 381698208 392167866 392167866 128001464 90777080 38274192 38274192 4850832 150472068 364335865 364335865 451265974 451265974 657730219 908534543 908534543 944367848 944367848 939862023 927268962 927268962 853713976 847562835 540072432 296870016 261346308 261346308 248906076 248906076 482376903 770391275 770391275 718221645 690825552 690825552 1005822295 1005822295 262281592 1023558514 1023558514 228467833 806564070 1016978425 1016978425 168346644 476161434 511828062 511828062 474802190 450500310 509740872 509740872 456918198 64439670 147886824 234931312 275670096 289456562 289456562 268570626 375425826 375425826 292665624 196318042 487711278 487711278 436390678 352359636 352359636 696394178 696394178 876609675 877724297 877724297 831730275 831730275 956489760 956489760 599998659 463505104 374919486 1035995554 1035995554 719332454 828140280 828140280 544023888 544023888 543688208 20836064 39096272 70069160 70069160 188285360 188285360 121972920 121972920 245689824 587054548 587054548 746144452 746144452 551057089 568443328 699414376 699414376 570053156 230406964 580772049 724369440 724369440 257218309 674924440 674924440 171266000 171266000 134305296 136782084 136782084 561458880 561458880 15310561 14811584 176425044 176425044 136499460 143776852 143776852 60562708 48092496 52052752 154942828 154942828 121234656 239503172 239503172 227472321 208289996 208289996 540312469 540312469 537002320 581046609 581046609 776043349 776043349 544843024 758404464 758404464 720239812 189792948 342511678 342511678 268698112 269748738 327239956 328435754 328435754 313928210 377842770 377842770 282076322 282076322 283029232 461910498 461910498 132917624 729578405 729578405 233647596 772354841 772354841 631167392 792744833 792744833 641490596 169642124 229903212 625014120 1065353151 1065353151 941835948 941835948 686960710 729436586 729436586 926658848 926658848 901714802 901714802 694627209 694627209 772412445 772412445 765073005 765073005 646977056 646977056 214577913 180355284 218677684 552674764 699427017 699427017 579059920 717879505 717879505 496469874 496469874 260560288 280904002 410425636 410425636 488672262 520741950 520741950 470109232 2451832 1024630812 1024630812 793199134 38013072 37748880 37748880 536871057 536871057 796137642 796137642 965098157 1043350454 1043350454 1060246335 1060246335 672157984 323401758 357284880 357284880 314960082 314960082 120590058 338367112 338367112 271267074 426455186 426455186 436281490 436281490 279647616 235434706 213401632 213401632 175638420 200338480 200338480 415420614 427012546 427012546 257439466 257439466 283322552 422909372 422909372 493032112 493032112 340599040 118889016 118889016 101057056 128216664 128216664 103127616 4845696 34917592 76929024 117777072 117777072 67141800 65469952 65469952 31666528 51427472 51427472 78184840 87542864 109981848 209133352 249247452 249247452 131647112 120198456 558781681 558781681 379808074 606068552 646712409 646712409 403481644 470828484 1008501508 1008501508 831310947 750256724 287056536 279029136 279029136 17535282 337685832 337685832 367497640 804197607 804197607 168308000 256377650 256377650 523449822 523449822 499319678 499319678 672433408 721451412 721451412 477773710 900209357 952841415 952841415 954779079 954779079 580115096 1006805689 1006805689 785637846 523583451 798337550 798337550 681618654 907707393 907707393 572047891 785559632 785559632 770573748 770573748 711990592 711990592 223032492 759777016 759777016 576716989 569283905 213125964 740557636 740557636 177474385 241698204 241698204 137097712 240469740 240469740 207479912 580713457 580713457 219202092 621773829 621773829 22338720 18434048 134488576 541557281 558364833 701792480 701792480 334520178 334520178 696797376 696797376 537338085 1040432726 1040432726 913591259 913591259 881344673 881344673 658542609 658542609 593498504 82056000 234399752 234399752 243477528 243477528 336708042 336708042 281067714 575491750 575491750 789985957 906543826 1019400399 1019400399 991902007 906756252 935861281 1065883225 1065883225 947986503 947986503 1015097413 1015097413 496321529 844181504 844181504 8528448 63620816 63620816 36756848 12459840 882442368 882442368 304095880 348663168 348663168 305228576 246447968 252705852 252705852 411811914 411811914 336088378 472137530 472137530 933946486 1056381875 1056381875 200219908 292287906 591627474 591627474 600891061 900268690 900268690 681392750 536864276 1024190530 1024190530 856748053 955319875 955319875 291816748 976904365 976904365 233326226 442114910 504902208 504902208 483927396 483927396 342698760 688193680 688193680 273424064 273424064 336592906 336592906 486720008 486720008 436256790 454291472 855575631 855575631 788539988 736500213 224397576 165872484 182591508 537121440 537160480 544218913 616711330 616711330 367036098 855672844 855672844 808977353 979111575 979111575 941621255 964692115 964692115 211102284 1037322789 1037322789 810562288 957606120 1007946255 1007946255 677661056 277337152 70439688 50148304 755135468 755135468 481967280 481967280 832308128 832308128 680800448 724516604 724516604 613156940 638912647 840578197 918946761 918946761 419189035 854113922 854113922 647483985 647483985 627195088 627195088 402634208 402634208 281543056 281543056 292045128 292045128 121685386 180754620 180754620 121232832 42791280 357772472 357772472 409407746 409407746 235899168 235899168 736120129 736120129 185274564 185274564 171083140 864716800 865000563 865000563 203514004 203514004 67125256 67141640 67141640 4760576 33575808 36909840 76072400 76072400 204377900 204377900 86192424 86192424 26215008 168956616 180572392 180572392 86463696 74153968 11010176 67830784 67830784 69340112 82279256 97320552 97320552 83918912 109080616 160006170 495078418 495078418 776943628 776943628 671426565 895617298 895617298 860293671 860293671 265763580 265763580 313715920 313715920 313076490 313076490 288243586 282087680 796590242 796590242 774943638 236082836 236082836 57030404 141673744 207178888 624799009 624799009 195134484 195134484 251112444 615252697 615252697 541218088 770232357 770232357 616562889 224518572 662106521 662106521 76327040 612782616 612782616 888428677 1042684191 1042684191 1066129852 1066129852 979635717 979635717 433324134 552959235 552959235 132832986 126876136 122341976 637142016 637142016 882314520 882314520 487588698 487588698 474285374 474285374 758155185 758155185 873599499 886730900 886730900 384857636 927935329 927935329 981208695 981208695 851250711 272871699 438863252 453120054 473057318 517316736 19040388 157735332 157735332 362857281 945740231 1039015375 1039015375 606162403 606162403 841164408 1000155167 1000155167 196346115 596476528 596476528 504229424 504229424 438505758 494786890 494786890 479852712 339526378 984402049 984402049 1004836690 1004836690 842914599 842914599 300155392 275326338 814383236 941805831 941805831 277227733 640861764 738553969 738553969 77223636 124957193 621891840 753042433 753042433 736248765 736248765 734138613 734138613 542282301 814925801 816344643 936672425 936672425 909841552 909841552 986882912 986882912 642677974 642677974 683950922 683950922 976029701 976029701 631015486 631015486 940891139 948357287 948357287 992188723 992188723 907452942 907452942 767986914 1058288293 1058288293 493325286 530336798 530336798 413379004 310653410 316670418 322325474 322325474 303734546 303734546 268834818 34118162 451529248 451529248 319121540 792846665 792846665 216919500 216919500 616562889 616562889 781973913 781973913 926968708 926968708 326328384 277686082 277686082 2700544 866542834 905571355 908067864 908067864 400270130 1046636288 1046636288 995684005 536986033 201793728 201793728 943266048 1022502273 1022502273 767694696 1002650825 1002650825 759960392 759960392 696727009 172135604 736364897 736364897 622858169 943582983 943582983 943582983 810746502 741902338 738332685 711525526 1030500254 1030500254 291630349 729870736 958448518 958448518 713035973 944959638 944959638 1029802478 1029802478 193944182 193944182 184035042 149681604 149681604 20449056 20449056 19399680 27264064 27264064 25691456 27824512 32118240 32118240 31343424 81014464 81014464 71901440 621094969 621094969 228790304 147448880 197132532 197132532 636225984 636225984 656286779 873075723 873075723 807253066 341577354 341577354 331095376 331095376 306512416 324348594 574959824 634588074 634588074 818418864 1015818779 1015818779 1012177039 1020314319 1020314319 174064784 145294676 170468628 170468628 39915184 751445072 751445072 822658082 822658082 399249987 10486080 55739406 202136206 251658300 251658300 508317820 508317820 378013886 325993496 357558410 357558410 306571410 310670480 530589686 530589686 317850114 317850114 385279648 385279648 390075152 390075152 349698762 282410560 260402904 231024876 227674844 190174608 190174608 205508224 205508224 268361724 268361724 207593840 189842864 189842864 168375572 168375572 165796044 198898636 217045448 217045448 109340592 222168644 258152552 258152552 139864376 165185828 167428690 439811334 447928082 447928082 401259720 339357704 339357704 60584546 239156956 598104816 598104816 923224178 923224178 878921689 878921689 833709223 1047107426 1047107426 841005492 841005492 778411055 676195333 508036254 508036254 974162179 974162179 369498384 42095248 42095248 42020864 50445904 50445904 124022464 124022464 75097992 74793344 74793344 33614128 59694192 101604944 101604944 133681688 133681688 126347784 132475424 132475424 96254048 96254048 160248912 160248912 21637424 36442168 731967745 731967745 243478620 329357715 709298593 709298593 848603972 848603972 805589632 805589632 364835658 364835658 388994338 388994338 335649064 133607832 107164408 67373064 126887944 144818972 144818972 237820496 237820496 142597632 652682571 652682571 639702389 811397022 811397022 637535032 637535032 421527846 639959178 639959178 142031748 778183648 778183648 121655328 105042072 38406848 38406848 123740192 123740192 288163776 288163776 315965378 315965378 733841789 733841789 419254222 890537601 890537601 256012476 256037052 256037052 761063077 761063077 661037097 661037097 451265974 451265974 657730219 908534543 908534543 944367848 944367848 939862023 927268962 927268962 853713976 847562835 540072432 296870016 166847460 166847460 138968934 295126500 295126500 227459424 227459424 611032140 690825552 690825552 263592828 263592828 262281592 129110904 17961504 27305388 941952457 1016978425 1016978425 591503488 856827021 957904435 957904435 981061928 981061928 560409878 560409878 456918198 399058160 423935106 423935106 393055260 393055260 325673254 457449732 457449732 415461394 400984512 379698042 487711278 487711278 443885920 443885920 352359636 696394178 696394178 403017877 338691024 338691024 341836170 341836170 6427264 761947983 761947983 326283680 751362873 751362873 719332454 719332454 828140280 828140280 544023888 544023888 543688208 21579456 87658656 87658656 70069160 36446624 145060404 145060404 121972920 604341253 604341253 749227020 749227020 746144452 551057089 853615098 853615098 699414376 570053156 230406964 580772049 1067004264 1067004264 873063435 951104521 951104521 617572741 687737477 687737477 274775010 291460768 561458880 561458880 829588274 829588274 404831522 404831522 298457410 278342880 50165056 50165056 23019136 23019136 107480384 107480384 121234656 121234656 227472321 227472321 208289996 208289996 540312469 540312469 537002320 581046609 581046609 1030377199 1030377199 942331366 758404464 1058330709 1058330709 454219036 826149475 826149475 1062209685 1062209685 857786554 1051510907 1051510907 925715683 879502715 834774251 830554240 18738720 283029232 303963666 303963666 132917624 729578405 729578405 218208800 772354841 772354841 0 16777216 16777216 25300512 29200648 84009000 625014120 625014120 382846416 641955634 641955634 307376401 729436586 729436586 926658848 926658848 901714802 901714802 641341209 655889933 772412445 772412445 765073005 765073005 792363885 846386510 846386510 342376890 792892509 792892509 699427017 699427017 777940633 777940633 717879505 496469874 496469874 234595660 280904002 280904002 87431976 488672262 520741950 520741950 470109232 223652116 1024630812 1024630812 793199134 621092884 740368653 740368653 1035323226 1035323226 1000590057 1000590057 992016175 935978841 1047972778 1047972778 472259461 374753460 139913258 55808560 140414656 140414656 367117312 367601130 367601130 338367112 295310946 136731022 404889858 404889858 279647616 279647616 235434706 213401632 213401632 148898244 46662932 4243584 4243584 4243584 1081472 86640460 295308657 920914751 1030236081 1030236081 855774910 7678208 2696192 2831616 674898304 685239305 743468736 743468736 650921096 650921096 574018124 210448460 117777072 117777072 67141800 166854684 166854684 133305336 259325316 259325316 78184840 87542864 109981848 209133352 249247452 249247452 103231620 61220256 259692632 456068636 456068636 236363930 8462400 163578528 163578528 134580872 134580872 107603352 107603352 82915016 82915016 8388992 8388992 2504768 13104512 13104512 806352328 806352328 804197607 353224182 338167050 256377650 523449822 523449822 499319678 499319678 672433408 721451412 721451412 421467335 900209357 952841415 952841415 954779079 954779079 580115096 1006805689 1006805689 954316678 954316678 582608721 196818804 853127062 889745008 889745008 277223490 407246693 834480329 834480329 482422981 416359110 414946023 414946023 759777016 759777016 580667121 580667121 573318176 573318176 556868241 141512264 584018129 584018129 708231336 725372956 725372956 111252120 573149072 573149072 574464 2457984 673235488 691012389 691012389 560253317 142041120 142041120 701792480 701792480 151013409 1048576 696797376 696797376 696516673 696516673 274683976 274683976 499896208 525635768 525635768 63624432 111248448 210702784 210702784 241502697 778641813 778641813 618015805 853180548 853180548 445256790 903457963 903457963 550017043 906543826 1019400399 1019400399 437277401 906756252 935861281 1065883225 1065883225 947984280 947984280 626657543 556088116 455496611 844181504 844181504 89207712 89207712 537909505 537909505 280236224 882442368 882442368 811151040 304095880 645988674 833357480 833357480 1027942575 1046115636 1046115636 484348322 286446114 286446114 266651567 933946486 1056381875 1056381875 930460633 1067941229 1067941229 463711017 825549035 900268690 900268690 681392750 536864276 953475097 953475097 221113644 955319875 955319875 291816748 976904365 976904365 26687484 20074912 410740226 410740226 483927396 678899585 678899585 565787077 98444422 559678241 559678241 561388192 683284133 683284133 743745469 762760077 762760077 855575631 855575631 788539988 736500213 156947876 165872484 182591508 269292194 537160480 544218913 616711330 616711330 367036098 855672844 855672844 808977353 979111575 979111575 941621255 941621255 570689747 54526128 521151152 521151152 243301604 233710172 226965612 268822539 287570984 311418960 637826065 637826065 572985016 572985016 437857716 793130446 837028709 837028709 784670309 622801492 798559584 798559584 641016413 840578197 840578197 746263007 1001695274 1001695274 854113922 647483985 647483985 276448475 356345205 1016519247 1016519247 910959622 910959622 644177005 977922217 977922217 957178151 561268664 665357689 665357689 700263287 700263287 355806343 1313296 235899168 235899168 38012364 55250960 185274564 185274564 171083140 417416341 417416341 446730689 446730689 959510514 959510514 939589971 939589971 705828743 947474564 959111608 959111608 679160299 679160299 551729756 627098025 669049761 1014082296 1014082296 335837814 306923688 86463696 74153968 11010176 10592640 2220288 69340112 82279256 97320552 97320552 98038728 109080616 160006170 495078418 538071049 776943628 986900124 986900124 914423865 914423865 872677399 860293671 919737051 919737051 662917298 313715920 320039528 320039528 288243586 270488448 82748352 33032160 170997472 170997472 34388544 50560144 50560144 103360824 624799009 624799009 85773864 29222472 57222576 615252697 615252697 579350785 770232357 770232357 616562889 86118881 662106521 662106521 257960944 604051073 604051073 310992392 314781906 314781906 1066129852 1066129852 979635717 979635717 537601040 552959235 552959235 279877012 302039058 302039058 637142016 637142016 882314520 882314520 487588698 487588698 474285374 474285374 758155185 758155185 482497011 886730900 886730900 384857636 384857636 494601250 494601250 875181382 875181382 310757981 570429715 570429715 671915689 671915689 635948637 635948637 728446900 728446900 573372652 882122824 882190923 882190923 1001624917 1001624917 1000155167 1000155167 925068650 596476528 665294226 852293730 852293730 438505758 494786890 494786890 479852712 339526378 90710628 161032176 1004836690 1004836690 546289345 272766723 14760384 581446097 814383236 941805831 941805831 277227733 640861764 640861764 88069017 10589577 629414464 629414464 624161577 635911104 635911104 623243496 587557164 406007990 406007990 319277236 80496745 936672425 936672425 909841552 909841552 986882912 986882912 436465686 436465686 166810610 51152976 51152976 269083650 303620992 303620992 46170432 476358722 855654903 855654903 564488689 907452942 907452942 767986914 1058288293 1058288293 493325286 530336798 530336798 413379004 263415456 125166920 74209072 37748496 42452240 43365104 64913440 64913440 178841760 189198752 799097677 799097677 792846665 216919500 216919500 616562889 616562889 781973913 781973913 926968708 926968708 42048304 271282432 326012791 326012791 864686257 905571355 908067864 908067864 400270130 1046636288 1046636288 995684005 673523973 673523973 992762930 1024453936 1024453936 1022502273 767694696 1002650825 1002650825 552606740 696727009 696727009 172135604 736364897 736364897 538996230 943582983 943582983 1056289790 1056289790 741902338 738332685 711525526 859890306 859890306 201400332 729870736 797147613 797147613 110172993 944959638 944959638 1029802478 1041248335 1041248335 406685956 690114951 690114951 433587942 140021378 269355616 969171269 969171269 155784256 680002689 680002689 25711040 46008624 46008624 81014464 82971272 82971272 66091320 773919000 773919000 195244045 197132532 197132532 103562264 101649688 101649688 43465296 97917008 97917008 617880577 867965849 867965849 103156050 622835472 654885945 654885945 634588074 937704792 937704792 782879767 818801845 818801845 559268769 569501144 569501144 693085570 917460131 917460131 961977911 961977911 374092289 822658082 1038779447 1038779447 947261040 849091643 818939576 251658300 251658300 508317820 508317820 378013886 325993496 357558410 357558410 306571410 64778802 97072216 126368512 129974136 129974136 385279648 385279648 390075152 390075152 349698762 282410560 260402904 231024876 227674844 214345348 253322380 253322380 150070212 87073772 60867184 60867184 27410848 264192 270336 17731808 17731808 20298832 217045448 217045448 77488300 67701376 55784112 52572304 168822160 168822160 249088474 534343406 534343406 423408418 497702812 497702812 339357704 647107024 1060790957 1060790957 518583175 923224178 923224178 878921689 878921689 833709223 833709223 98418101 841005492 841005492 778411055 676195333 508036254 508036254 134307500 293142808 293142808 326392464 326392464 59061792 50445904 50445904 124022464 124022464 75097992 38944832 71492536 94216632 94216632 118558480 118558480 133681688 133681688 126347784 132475424 132475424 96254048 96254048 185256960 565635782 588547646 588547646 731967745 731967745 243478620 656693788 709298593 709298593 848603972 984613719 984613719 950127112 547677459 364835658 388994338 388994338 335649064 151253828 151253828 73408860 99935564 178122324 253497340 253497340 237820496 142597632 436849528 436849528 271924410 446244438 446244438 637535032 983619813 1004720631 1018653511 1018653511 930167171 930167171 778183648 598024208 55461888 55461888 384172138 384172138 132384592 132384592 287967776 315965378 315965378 733841789 733841789 419254222 890537601 890537601 447270018 256037052 482412706 761063077 761063077 661037097 661037097 279131011 23142496 167842016 186855732 190886048 625107604 625107604 623903529 357042240 868321472 868321472 33581235 155414902 302007066 519363358 519363358 511996860 511996860 481814711 615100683 941695239 941695239 611032140 610793865 532676843 579864768 579864768 503503442 503503442 960281083 960281083 941952457 687370464 591503488 889985714 957904435 957904435 981061928 981061928 869149906 869149906 428094926 428094926 423935106 423935106 393055260 393055260 325673254 457449732 457449732 467739126 467739126 379698042 379698042 381995226 443885920 443885920 77900188 555034920 723858408 723858408 312998226 796786145 796786145 483658574 606299046 761947983 761947983 295740272 751362873 751362873 169918740 142100112 92483688 81769824 82716320 82716320 21579456 21579456 87658656 87658656 36774672 85528128 145060404 145060404 151130504 604341253 604341253 749227020 749227020 727270812 549553416 853615098 853615098 48333360 67125864 67125864 117440808 1067004264 1067004264 873063435 951104521 951104521 617572741 687737477 850596054 997266020 997266020 291460768 286784034 829588274 829588274 404831522 404831522 298457410 278342880 50165056 50165056 23019136 23019136 107480384 303832080 303832080 274368800 296367138 296367138 122690712 698880678 837421015 837421015 595985224 595985224 575445032 1030377199 1030377199 942331366 781453917 1058330709 1058330709 454219036 826149475 826149475 1062209685 1062209685 857786554 1051510907 1051510907 925715683 879502715 834774251 830554240 741414057 882511721 882511721 311044384 818942465 818942465 757144452 151123332 229750145 674985301 674985301 592840201 655925124 655925124 549961784 659747385 659747385 830373898 830373898 740158989 437629191 237712668 45581944 646021960 646021960 749644248 762115135 762115135 594946136 1031635325 1031635325 622331433 388646854 446715701 792363885 846386510 846386510 342376890 792892509 792892509 688637453 688637453 777940633 777940633 655103900 214397332 234595660 261153292 261153292 132079896 153141412 200950000 200950000 159397140 205979056 223652116 228774464 228774464 69273656 621092884 740368653 740368653 1035323226 1035323226 1000590057 1000590057 992016175 1032491451 1047972778 1047972778 639909138 589846198 221810190 516009120 516009120 328386226 367117312 367601130 367601130 295310946 295310946 277195488 277195488 300982150 421326628 421326628 405577254 268670724 142319520 141742980 9122880 194319362 454298166 454298166 333905986 183581636 295308657 920914751 1030236081 1030236081 855774910 425535392 425535392 106641048 674898304 685239305 743468736 743468736 650921096 650921096 574018124 210448460 110755848 72359432 17188992 166854684 166854684 133305336 259325316 259325316 24167328 18137088 66750464 134439536 140773764 140773764 74454728 166869640 166869640 456068636 456068636 406691830 464260470 510106312 510106312 519357768 519357768 499122516 460326604 460326604 82915016 7536640 2361472 2361472 13104512 13104512 806352328 806352328 535358627 353224182 570427396 752237405 752237405 260440264 260440264 103813944 93849192 93849192 260376976 260376976 231081126 385986868 768263108 1057083455 1057083455 412379732 454495014 454495014 954316678 954316678 934896280 934896280 853127062 889745008 942180622 942180622 483183817 834480329 834480329 1009261952 1055667652 1055667652 414946023 314978925 423827138 580667121 580667121 846997154 846997154 695594988 695594988 591930857 584018129 708231336 725372956 725372956 223183276 603358288 603358288 738271245 738271245 673235488 691012389 691012389 560253317 674308932 697568137 697568137 147966601 921713362 921713362 560897513 659110095 696516673 937443017 937443017 877789350 711491132 859623811 879489080 912512955 930317978 930317978 380699816 380699816 778641813 778641813 618015805 853180548 853180548 739377334 903457963 903457963 165278984 648479874 1058803263 1058803263 428993625 409183738 681776192 681776192 673785093 947984280 947984280 704773105 905195843 1046806681 1046806681 148066561 89207712 89207712 537909505 561786496 561786496 821560001 821560001 811151040 105123090 645988674 833357480 833357480 1027942575 1046115636 1046115636 491622984 348013528 348013528 286152032 418869113 418869113 327419489 930460633 1067941229 1067941229 463711017 825549035 880005196 880005196 522494095 398928121 319550018 495238688 495238688 151135666 191489460 290703284 506910400 506910400 191568028 172270144 25758144 155958688 159394661 678899585 678899585 565787077 153036640 559678241 559678241 561388192 683284133 683284133 743745469 762760077 762760077 554752676 250753880 215296516 199955332 199955332 186201424 186201424 197599732 197599732 195501012 215117058 272287238 353157410 815430403 815430403 437761666 437761666 1059658225 1059658225 922029588 922029588 739320333 739320333 800949042 1031597292 1031597292 577784989 268822539 287570984 311418960 637826065 637826065 538845441 126607992 437857716 793130446 837028709 837028709 784670309 596186145 798559584 798559584 733504228 787210309 787210309 746263007 1001695274 1001695274 695131131 628306857 587928617 867437427 867437427 1016519247 1016519247 1021314192 1021314192 644177005 977922217 977922217 957178151 561268664 665357689 665357689 700263287 700263287 355806343 169879716 169879716 138695648 188844160 188844160 55250960 63579648 63579648 417416341 417416341 446730689 446730689 959510514 959510514 939589971 939589971 705828743 947474564 959111608 959111608 679160299 679160299 551729756 627098025 669049761 1014082296 1014082296 335837814 306923688 32786592 9979136 73841672 74856744 74856744 73134632 94393680 94556520 94556520 98038728 128603144 135939830 235118107 538071049 538071049 987302525 987302525 982780929 982780929 915145759 928516704 928516704 919737051 853082154 128471954 376436872 376436872 497433634 497433634 205992354 170574144 235451052 235451052 191026208 50739200 167984400 201860388 201860388 219991596 219991596 192696084 646138704 646138704 619200932 794956221 794956221 742565020 588038693 675024645 675024645 564245732 257960944 265681720 265681720 310992392 314781906 692899849 1036207564 1036207564 551889622 551889622 537601040 270218501 180488966 279877012 302039058 302039058 560778402 560778402 428609827 464853176 464853176 248843122 207565640 453255692 453255692 387263034 201590796 201590796 223955512 223955512 168371220 107744664 767583600 875181382 875181382 504345976 570429715 570429715 671915689 1010802442 635948637 635948637 728446900 728446900 573372652 882122824 882190923 882190923 1001624917 1001624917 858726700 925068650 925068650 313802915 665294226 852293730 852293730 356450520 111210424 111210424 56640272 134294065 677644677 677644677 622632085 610765697 598566193 821345921 821345921 882964032 882964032 880803915 571459665 182602324 985338004 985338004 814558275 373438569 629414464 629414464 76728649 635911104 671133504 671133504 587557164 406007990 406007990 856048584 856048584 590662449 335585034 789762350 789762350 994051696 994051696 436465686 436465686 166810610 269066843 608681403 904472043 904472043 392554957 392554957 476358722 855654903 855654903 564488689 640193024 640193024 371234069 371234069 904088149 904088149 366055586 125025824 72014104 197840001 730893901 751914445 751914445 774082109 774082109 453108473 416785990 981825766 981825766 799097677 799097677 671442372 685010049 685010049 145616196 145616196 265593472 389534060 389534060 319549320 269716096 137776387 326012791 326012791 864686257 864686257 523677536 43571726 926339024 926339024 637106691 404817923 673523973 673523973 992762930 1024453936 1024453936 819899285 124019176 153993720 153993720 102663412 100938240 468325750 468325750 456171088 456171088 427054656 289007394 289007394 1056289790 1056289790 531068019 372079794 372079794 54689826 4727808 4727808 0 0 4346112 107090056 578026082 578026082 388473659 1041248335 1041248335 407418054 690114951 690114951 433587942 140021378 269355616 969171269 969171269 173488788 680002689 680002689 188793012 180671808 51382256 27394176 82971272 82971272 675498857 783360744 783360744 585694985 212600841 168176788 103562264 635832144 635832144 810756667 810756667 805777602 617880577 867965849 867965849 287657754 622835472 654885945 654885945 611874979 937704792 937704792 782879767 818801845 818801845 559268769 569501144 569501144 693085570 917460131 917460131 961977911 961977911 374092289 243533936 1038779447 1038779447 947261040 849091643 818939576 68293128 459810736 459810736 58262966 23769200 133251504 133251504 286051362 296501250 296501250 278921538 116006106 377933440 377933440 276272408 67296784 67296784 144180804 210972788 210972788 201351932 201351932 214345348 623184357 623184357 362468970 771092632 771092632 1036150553 1036150553 705896525 686033349 784736405 784736405 183295188 183295188 175010832 228861240 228861240 228589932 228589932 52572304 168822160 168822160 249088474 534343406 534343406 423408418 497702812 497702812 485557324 647107024 1060790957 1060790957 518583175 542229280 849611091 849611091 578690961 711235217 990609424 990609424 957084711 392268834 1042849306 1042849306 508363167 503715870 134307500 293142808 293142808 326392464 326392464 59061792 122733240 122733240 120353664 178690688 189946368 189946368 155636400 178686704 178686704 118558480 118558480 226513444 226513444 161920368 237701952 237701952 68577600 72090736 185256960 565635782 822300189 822300189 810143278 810143278 366929417 656693788 656693788 527852312 816840724 984613719 984613719 950127112 547677459 126206216 183240172 214501812 214501812 151253828 151253828 127062648 127062648 178122324 253497340 253497340 210267096 147139471 607650699 768477487 769012361 769012361 757151207 814226065 983619813 1004720631 1018653511 1018653511 930167171 930167171 598024208 598024208 605207073 605207073 542636673 384172138 384304602 384304602 236156358 419513396 419513396 806884928 1067066911 1067066911 822157347 447270018 447270018 397830390 482412706 482412706 274075778 538207106 624441379 624441379 971133871 971133871 403696992 1023444032 1023444032 625107604 623903529 1015316772 1015316772 868321472 1023423018 1023423018 302007066 519363358 519363358 511996860 511996860 481814711 615100683 941695239 941695239 604180750 478754136 692062208 692062208 706140654 706140654 503503442 960281083 960281083 934428503 687370464 575726473 889985714 889985714 634491645 883484915 883484915 869149906 869149906 428094926 428094926 118972108 88098232 337836376 337836376 272908416 272908416 434167824 467739126 467739126 430204048 378569390 381995226 419826384 419826384 288822750 555034920 723858408 723858408 312998226 796786145 796786145 483658574 926893640 926893640 217449205 203608132 203608132 184181918 285213184 335544330 487064612 487064612 30605600 30605600 11037312 15543040 68290752 110494752 110494752 110764240 114702424 114702424 151130504 151130504 572818496 572818496 727270812 727270812 250128037 688728412 688728412 615828441 615828441 834789928 834789928 773084254 996064632 996064632 678495318 678495318 578949157 578949157 850596054 997266020 997266020 720465760 178516484 448959410 591577632 591577632 960377014 974671637 974671637 713475668 180833888 16324272 15605184 17093152 303832080 303832080 274368800 517781627 517781627 471784974 963156905 963156905 837421015 595985224 595985224 547492528 175409777 582487308 781453917 781453917 492027268 492027268 122736166 329343142 521732182 521732182 262144380 446693418 446693418 118031616 870331792 870331792 639729752 741414057 741414057 882511721 882511721 537858070 818942465 818942465 757144452 688432969 229750145 674985301 674985301 592840201 655925124 655925124 549961784 659747385 659747385 830373898 830373898 740158989 437629191 470007832 470007832 348688258 348688258 1012111442 1017693519 1017693519 271024426 1031635325 1031635325 849499262 849499262 635572713 463901309 522340674 522340674 650594314 773333039 793103905 793103905 252587652 252587652 75521200 214397332 214397332 114387664 261153292 261153292 294000994 294000994 424673870 424673870 159397140 147151024 108635064 809050658 809050658 339364776 426345838 426345838 120722232 112328800 332255731 798947820 798947820 237426436 1032491451 1032491451 639909138 639909138 589846198 318912160 516009120 516009120 414507306 329867488 329867488 224951014 430031626 430031626 355652354 277195488 300982150 421326628 421326628 405577254 268670724 142319520 141742980 9122880 194319362 454298166 454298166 333905986 183581636 55585062 660480 528384 593326114 593326114 425535392 538393088 538393088 681368256 681368256 43924757 5517440 73312896 105251840 105251840 110755848 110755848 92926120 122711712 122711712 107028888 121217432 121217432 74490384 30459808 43803280 66750464 134439536 140773764 140773764 74454728 166869640 166869640 123011308 28417766 406691830 464260470 510106312 510106312 519357768 519357768 499122516 460326604 460326604 108098840 44044800 44044800 14815680 14815680 8829312 759416096 759416096 476627073 310471042 570427396 752237405 752237405 260440264 260440264 103813944 93849192 93849192 122952164 231081126 557543881 809699165 901866884 1057083455 1057083455 261243987 457310304 457310304 448925910 315880146 934896280 934896280 591083313 370614559 942180622 942180622 483183817 761593607 761593607 1009261952 1055667652 1055667652 414125286 863232 423827138 445646116 445646116 846997154 846997154 695594988 695594988 591930857 470937693 424073382 331532304 223183276 223183276 603358288 603358288 738271245 738271245 672465509 672465509 547406145 539179009 867308338 867308338 697568137 1041168446 1041168446 942170173 824722795 659110095 659110095 937443017 937443017 877789350 711491132 859623811 879489080 912512955 930317978 930317978 380699816 380699816 346893642 287581288 74842896 105290712 739377334 889456683 889456683 865458069 677539464 692651592 1058803263 1058803263 592457277 563875425 184706936 573695862 573695862 660080313 660080313 704773105 905195843 1046806681 1046806681 572924680 23091456 32096256 32096256 561786496 561786496 544482561 90998920 90998920 34425152 367339960 367339960 150871376 203165196 416319684 491622984 491622984 348013528 426117516 511718406 511718406 437255190 518229352 518229352 20971680 27542432 27542432 74486952 572471724 572471724 221293213 151009544 319550018 495238688 495238688 151135666 191489460 290703284 506910400 506910400 191568028 172270144 48842096 155958688 158797412 158797412 58800848 58800848 153036640 160261444 161269504 161269504 21384256 21384256 64476608 64476608 65414928 65414928 575546785 575546785 569259841 569259841 186201424 186201424 197599732 320805558 467216118 482550130 482550130 481881422 815430403 815430403 748573253 701445036 1059658225 1059658225 922029588 922029588 739320333 739320333 800949042 1031597292 1031597292 577784989 266652156 169190376 78767112 8788032 8788032 8524352 9177152 9177152 196348604 878971280 878971280 703994775 596186145 596186145 514724232 733504228 787210309 787210309 278272034 837692850 837692850 340330235 381272344 381272344 867437427 867437427 402002939 1016205629 1021314192 1021314192 188294964 251709744 251709744 52448272 52448272 34373936 117441797 497952031 904273478 904273478 435997690 542369872 894149267 894149267 268441345 268441345 41460272 41460272 142840356 144908416 164881540 187770432 187770432 136495508 566269976 566269976 201752821 135397504 141234688 141234688 134231300 141170052 141170052 55645548 156571984 156571984 177584780 177584780 139011204 139011204 150265488 150265488 188644756 204718012 205364264 205364264 94556520 94556520 65663448 128603144 128603144 121733848 101271704 101271704 987302525 987302525 982780929 982780929 915145759 928516704 928516704 914883675 853082154 50645040 376436872 376436872 497433634 497433634 205992354 170574144 235451052 267729468 267729468 50739200 167984400 201860388 538979477 538979477 725685693 725685693 646138704 646138704 619200932 794956221 794956221 686823825 686823825 675024645 675024645 564245732 757272548 802236776 802236776 395244328 395244328 692899849 1036207564 1036207564 719397333 551889622 980106256 980106256 640236568 371531098 371531098 284114370 145463554 830288614 830288614 818518930 493628416 493628416 436417938 371339270 712389009 712389009 418452103 587731706 655361156 655361156 168371220 107744664 767583600 767583600 504345976 504345976 937431402 937431402 371203969 1010802442 672387064 804208125 804208125 654302681 1030465859 1030465859 768809166 472326288 794925342 794925342 790773821 790773821 557667135 303148593 21496992 197215732 356450520 356450520 191415732 255477136 266884280 266884280 677644677 677644677 622632085 610765697 598566193 821345921 821345921 882964032 882964032 880803915 250588567 182602324 985338004 985338004 814558275 606363436 606363436 603491896 254802869 689986068 721705633 798222456 798222456 226869880 756123685 856048584 856048584 590662449 424958986 500693734 898171408 997795767 997795767 678930395 678930395 839373930 1031993746 1031993746 904472043 904472043 392554957 392554957 644552930 900065643 900065643 834093451 640193024 640193024 371234069 413171744 964954422 964954422 453698000 453698000 384976560 197840001 730893901 751914445 751914445 774082109 774082109 453108473 416785990 981825766 981825766 423636593 22069920 671442372 685010049 685010049 705242133 705242133 773377617 952136319 952136319 634094700 270746896 123092616 290000802 294526050 897922049 897922049 606453768 606453768 926339024 926339024 663765281 153100337 706814229 740696503 916470109 1019341027 1019341027 890816674 890816674 718923477 703620720 238581408 238581408 468325750 468325750 456171088 456171088 427054656 139641216 283640224 945946818 959059239 1042297863 1057038399 1057038399 850081107 850081107 170992404 804373128 804373128 634654273 80452801 578026082 884248906 884248906 562015104 407418054 407418054 405268608 272180994 272180994 31666656 31666656 181840452 181840452 173488788 173488788 188793012 188793012 180671808 150127120 182587860 182587860 47202560 675498857 783360744 783360744 585694985 212600841 168176788 154714456 635832144 635832144 810756667 810756667 805777602 346901378 350776138 350776138 287657754 304163202 309081602 309081602 287184272 43321888 156363552 186908980 266381896 266381896 235176588 235176588 152558372 285239792 285239792 125982168 189300812 209732788 209732788 281321094 281321094 271057696 515644180 515644180 457314430 256122038 465305614 465305614 207751092 461120032 461120032 18832690 286051362 296501250 296501250 278921538 116006106 377933440 377933440 276272408 67296784 67296784 242357148 242357148 210972788 201351932 201351932 185839656 688186766 688186766 476694565 771092632 771092632 1036150553 1036150553 705896525 686033349 784736405 954865326 954865326 194647925 814421532 814421532 571684884 453124668 228589932 101714216 56626000 67444124 178152184 435968507 436193947 436193947 260150812 631910472 631910472 553857057 576852369 578163345 578163345 542229280 849611091 849611091 285733984 420156990 1007906874 1007906874 957489167 392268834 1042849306 1042849306 508363167 503715870 121562150 69241608 3546880 20801280 20801280 17993880 122733240 122733240 107489728 178690688 189946368 189946368 155636400 178686704 203092632 240600684 240600684 226513444 226513444 161920368 237701952 237701952 59247752 109316512 109316512 689758774 822300189 822300189 810143278 810143278 366929417 462429360 527852312 527852312 272416962 263629850 244453980 884667524 884667524 767291637 438030539 891312049 891312049 721757140 721757140 637626568 259301096 259301096 22526952 98058384 98058384 173964304 607650699 768477487 769012361 769012361 757151207 814226065 814226065 809685482 926175595 926175595 622869200 593578048 593578048 591460793 605207073 605207073 542636673 270016547 384304602 384304602 141583446 419513396 562061312 806884928 1067066911 1067066911 822157347 681395026 377487450 456288966 456288966 623073789 623073789 21575968 624441379 624441379 971133871 971133871 403696992 1023444032 1023444032 873618001 873618001 1015316772 1015316772 684939878 1023423018 1023423018 224963504 242880436 242880436 205864912 243298392 243298392 270597214 270597214 246365532 478754136 478754136 692062208 692062208 706140654 706140654 171375124 176210064 339026920 339026920 168834152 128549972 77121096 33812496 293651144 391377594 391377594 475356216 475356216 199081528 308349996 527248830 527248830 225463090 507125508 507125508 370149928 441829692 441829692 430204048 430204048 307070772 98520338 460123202 460123202 439756320 294238678 344141952 344141952 65178034 325010146 325010146 277033026 926893640 926893640 499383749 203608132 203608132 352321792 352321792 335544330 487064612 487064612 93508200 76726816 24219232 16592832 68290752 110494752 110494752 110764240 144992964 144992964 83161984 547709021 787442516 787442516 739123069 787406301 787406301 688728412 688728412 615828441 615828441 899814304 899814304 773084254 1024010357 1024010357 953156295 953156295 673459136 673459136 996703872 996703872 720465760 720465760 178516484 448959410 591577632 591577632 960377014 974671637 974671637 713475668 180882176 44046384 16558376 67683336 369641016 369641016 163317979 1058538011 1058538011 590873899 963156905 963156905 936022763 174463380 1006540850 1006540850 553961073 809143624 809143624 972737969 972737969 39737029 443901448 538782367 538782367 729940701 729940701 616116560 766019563 882394795 882394795 870331792 372509466 372509466 378276954 911023604 973153313 973153313 537858070 407841856 688432969 688432969 757113828 757113828 644895781 233444844 232020884 181609590 420101366 453869958 453869958 218112144 335768070 481409334 481409334 470007832 639171724 929858696 929858696 1012111442 1017693519 1017693519 596673245 1040422717 1040422717 849499262 849499262 635572713 251717776 453318710 453318710 650594314 773333039 793103905 793103905 597284041 609428181 609428181 574293268 238592116 15778368 15778368 16832834 294000994 294000994 740798757 900985707 900985707 589508913 590603104 809050658 983917909 983917909 757870031 867666144 867666144 800349908 800349908 1060177340 1060177340 943398531 259917503 7878304 7878304 301362304 301362304 318912160 413259078 414507306 414507306 216368614 97537742 224951014 430031626 430031626 355652354 290392548 290392548 143220066 3936000 20025396 168549396 168549396 2125888 159392368 193075252 193075252 169159188 154243128 70697612 340982473 686029787 686029787 572938713 406863448 208750416 552051208 552051208 681368256 713979740 772283608 772283608 571547208 585588828 585588828 35337744 92926120 92926120 122711712 122711712 107028888 121217432 121217432 93279360 30459808 43803280 61245056 159604080 188803476 188803476 52483248 66100496 153958580 524287856 524287856 512138174 474310718 420396614 420396614 213124078 368886080 368886080 203428142 322442098 427820672 428999158 428999158 150082500 150082500 376912764 854933208 854933208 476627073 310471042 306250194 222634154 174393728 1004818380 1004818380 172655691 152704548 209242480 209242480 177803519 557543881 809699165 901866884 901866884 338316736 281843740 457310304 457310304 448925910 189533364 189533364 303171380 727777694 727777694 913338753 913338753 725797146 904054239 904054239 892079499 220997055 154089776 328079965 420888798 475057827 587898437 587898437 187745076 688163540 688163540 600883953 265589442 265589442 549490704 656166628 656166628 554330632 554330632 562257384 563324200 563324200 672465509 678537889 678537889 150317701 867308338 867308338 468102299 1041168446 1041168446 942170173 824722795 281624953 162996864 152446744 436941252 436941252 189730098 296299832 296299832 113196888 112933208 111358296 269494272 269494272 136314892 137396608 137396608 441899858 441899858 889456683 889456683 865458069 677539464 692651592 1016761807 1016761807 993840951 993840951 341413344 573695862 573695862 660080313 660080313 553248705 553248705 811740000 811740000 572924680 89156224 89156224 30959744 276832576 536880258 536880258 29729984 29747424 80225280 327683128 327683128 124690484 240834204 240834204 226369452 226369452 316942740 426117516 511718406 987834565 987834565 979769751 848046419 848046419 946802883 946802883 832757705 439063403 439063403 374790810 504814095 504814095 414699736 82361890 476194100 476194100 252189118 30883732 185532336 209427352 209427352 54669600 130164080 130164080 99222872 58800848 95429984 95429984 339832876 341675012 341675012 272781828 305957124 305957124 64476608 65414928 427522596 864821858 864821858 569259841 837494498 1000415859 1000415859 790574175 590817155 467216118 482550130 485354958 1026303622 1026303622 850198832 850198832 831335523 701445036 175080397 440014614 440014614 438437376 272695930 134792196 402948494 402948494 820585923 854425731 854425731 273467584 583529625 586863441 586863441 174603407 306973842 769528420 878971280 878971280 703994775 1006897173 1006897173 514724232 543205982 556978977 711242880 711242880 186461748 70513972 332147080 332147080 147493904 147493904 163578980 163578980 435225688 435225688 234567526 523413085 1010555171 1069882459 1069882459 756820500 756820500 191152522 497952031 904273478 904273478 435997690 542369872 894149267 894149267 268441345 268441345 41460272 41460272 142840356 142840356 164881540 187770432 187770432 136495508 566269976 566269976 201752821 144064768 699742334 1043144991 1043144991 141170052 742766996 742766996 973130301 973130301 701624930 486728304 441467624 139011204 150265488 150265488 188644756 204718012 205364264 205364264 59848284 27828640 33032160 33032160 151560768 151560768 101271704 101271704 956899952 983041623 983041623 580715022 580715022 475605591 281617542 281092290 325718500 325718500 366234530 366234530 364114794 173180410 41642904 126696880 218115216 267729468 267729468 39785756 108345648 122312040 538979477 538979477 725685693 725685693 547588680 547588680 655537917 655537917 242959957 686823825 686823825 56573616 200939492 583807600 757272548 802236776 802236776 395244328 395244328 324297336 633405756 719397333 719397333 430151711 980106256 1059212945 1059212945 494854062 371531098 710786573 710786573 830288614 830288614 818518930 493628416 493628416 436417938 457996893 1039916523 1039916523 1020941231 627589144 1010075043 1010075043 61359936 61359936 813711683 813711683 497944440 497944440 937431402 937431402 668555280 668555280 672387064 804208125 804208125 654302681 1030465859 1030465859 791442194 791442194 682756637 641094928 795455178 795455178 481812080 794173193 976170753 976170753 671560974 155976928 191415732 255477136 266884280 266884280 168034340 39848752 39848752 32590144 811476394 811476394 546707024 909823120 909823120 556315787 718484181 980012761 980012761 912660891 912660891 875698576 606363436 262751716 254802869 689986068 721705633 798222456 798222456 470882814 756123685 756123685 684535424 224019159 424958986 424958986 898171408 997795767 997795767 707493094 678930395 839373930 1031993746 1031993746 77668680 82436552 411571341 812332419 812332419 900065643 900065643 834093451 352656002 352656002 286504970 413171744 964954422 964954422 470987429 453698000 384976560 102040784 102040784 30938624 25874624 25691232 34142464 34142464 42542160 555484304 555484304 272695938 22069920 649339705 649339705 602888140 705242133 705242133 897226109 952136319 1022094104 1022094104 270746896 100864298 84817944 294526050 897922049 897922049 606453768 606453768 724099381 724099381 688238103 806969365 806969365 740696503 916470109 916470109 858103869 890816674 890816674 718923477 703620720 449425516 541282817 541282817 672851136 975311110 975311110 708064980 1070344335 1070344335 945946818 959059239 1045933795 1057038399 1057038399 850081107 850081107 817039131 804373128 804373128 634654273 1022999271 1022999271 884248906 884248906 562015104 370915220 463891072 463891072 283238850 283238850 98993866 426108576 633035573 633035573 365449380 304234845 342137316 719850657 719850657 688528580 688528580 192431056 192431056 159958116 157808768 267926528 267926528 111554200 111748440 154714456 154714456 99814180 77268464 68176056 113400112 113400112 108757432 108757432 87766144 87766144 75159432 41754144 61204496 79749856 107038816 107038816 37871760 5267984 135284992 152558372 152558372 146833476 464196628 464196628 311128562 176726178 181453524 281321094 281321094 261621372 515644180 515644180 457314430 256122038 465305614 465305614 207751092 525615352 525615352 233133704 233133704 119768728 121247544 121247544 7629240 5502112 24606880 24606880 21235872 21235872 242357148 242357148 150999348 119677480 103817528 791905204 791905204 688186766 476694565 691803980 691803980 438687002 508592326 739383764 739383764 649341657 954865326 954865326 194647925 814421532 814421532 571684884 453124668 250874104 250874104 134613868 111285812 222700254 435968507 436193947 436193947 260150812 631910472 631910472 594498816 594498816 591784113 578163345 353914048 110014728 285733984 285733984 1015232832 1015232832 1007906874 957489167 784907668 784907668 974380162 974380162 416231784 428149264 428149264 125203472 51178800 51178800 16979968 16979968 54501952 107489728 146020696 146020696 116576540 254672184 254672184 203092632 240600684 240600684 143919692 98972200 83176392 188367504 188367504 55057952 109316512 195857048 689758774 689758774 319493634 319493634 796292243 796292243 643375553 643375553 470811034 540385556 540385556 244453980 884667524 884667524 767291637 716251341 891312049 891312049 721757140 721757140 637626568 259301096 259301096 158046936 158046936 142637536 173964304 306845316 345811760 345811760 384571664 384571664 277872784 49585106 809685482 926175595 926175595 397814361 593578048 593578048 84213816 84213816 78836736 78836736 21463040 30880 84347400 279509008 385912666 562061312 562061312 419548196 419548196 681395026 681395026 509629878 509629878 501293730 623073789 623073789 46743760 537749665 537749665 686562192 705303573 705303573 705303573 685807232 873618001 873618001 304345362 304345362 370485786 370485786 362299112 362299112 242880436 242880436 205864912 205864912 262372646 422522174 422522174 246365532 472658200 472658200 277417506 277417506 196609908 68416008 263252888 263252888 339026920 339026920 168834152 128549972 77121096 33812496 293651144 391377594 391377594 475356216 475356216 262614768 308349996 527248830 527248830 225463090 507125508 507125508 370149928 441829692 441829692 438673686 438673686 438427926 98520338 460123202 460123202 439756320 443691734 443691734 187830770 180313024 450328533 563184527 904380409 904380409 686813422 668189800 234383012 710460733 710460733 352321792 360845433 420722726 655809146 655809146 567722545 555827856 16592832 33350272 33350272 30983872 24382368 144992964 144992964 83161984 547709021 787442516 787442516 739123069 787406301 867944850 867944850 751937932 1029906734 1029906734 899814304 899814304 661782627 1024010357 1024010357 953156295 953156295 1044365942 1044365942 996703872 996703872 694764226 269532341 277033026 277033026 173154518 143927808 151725072 151725072 143987952 180882176 180882176 44046384 26090656 67683336 369641016 369641016 443680402 1058538011 1058538011 590873899 469781898 936022763 936022763 174463380 1006540850 1069678653 1069678653 809143624 839146633 972737969 1055800145 1055800145 670412789 634024336 538782367 729940701 729940701 616116560 766019563 882394795 882394795 871370809 124010536 973523449 973523449 911023604 973153313 973153313 302660737 313142664 313142664 554238208 757113828 757113828 670877376 670877376 642813632 183505688 420101366 420101366 159363732 567464673 567464673 558264629 481409334 506680078 639171724 929858696 929858696 559336235 861820351 1058542393 1058542393 1040422717 1040422717 959843376 814745469 814745469 645163070 952429586 952429586 682641536 688906966 688906966 251842624 597284041 609428181 609428181 574293268 238592116 250404460 250404460 248066128 209982568 231750063 740798757 900985707 900985707 589508913 590603104 590603104 983917909 1005921316 1005921316 867666144 867666144 800349908 800349908 1060177340 1060177340 943398531 259917503 123410224 124334520 327697576 432326802 432326802 306217700 25165920 8659072 12921024 12921024 277025794 277025794 660480 268963842 290392548 291252646 301200352 406398726 406398726 279960132 179044736 181144788 181144788 193075252 193075252 180619476 201804288 201804288 340982473 686029787 686029787 572938713 999556488 1029194623 1029194623 772573341 772573341 713979740 772283608 772283608 571547208 585588828 585588828 42930256 51974960 78851592 78851592 71776392 94076712 94076712 93279360 93279360 93001824 93001824 83566592 159604080 188803476 188803476 65573600 66100496 153958580 524287856 524287856 512138174 474310718 1019587041 1019587041 423546407 546046699 546046699 203428142 747521212 844369013 844369013 590245989 590245989 691180576 895373948 1055102606 1055102606 952239052 532808154 1044383276 1044383276 881460271 1004818380 1004818380 789808232 789808232 680114173 578458004 114682584 325113216 325113216 378265464 378265464 338316736 687112888 687112888 605293144 734102916 734102916 331431759 331431759 727777694 1041710632 1041710632 913338753 1059113864 1059113864 904054239 892079499 220997055 154089776 328079965 420888798 475057827 587898437 587898437 817762154 817762154 604162483 475454094 754076934 897077967 897077967 888442793 656166628 620975656 554330632 562257384 563324200 563324200 564445440 678537889 678537889 150317701 139274240 138937476 4924544 206156220 253902988 253902988 1049120 162996864 162996864 152446744 324808600 332734142 405414178 405414178 297010802 297010802 278468178 278468178 205004116 380508496 480739332 480739332 137396608 441899858 441899858 110254594 621070552 621070552 599785713 1041531094 1041531094 1016761807 993840951 993840951 341413344 567280096 567280096 558891681 558891681 89376937 21444768 41025672 88232192 88232192 89156224 89156224 20340992 825303808 825303808 536880258 72092808 72092808 346628320 346628320 327683128 234688208 255403836 276037676 307047570 307047570 187989792 271045896 271045896 987834565 987834565 979769751 848046419 848046419 946802883 946802883 832757705 1022928399 1022928399 374790810 504814095 890308746 960823865 960823865 680435222 680435222 252189118 245542128 542732653 613634160 655483449 655483449 130164080 130164080 604319961 604319961 583084064 620761096 620761096 341675012 341675012 272781828 305957124 305957124 7064496 24868130 427522596 864821858 864821858 275190800 837494498 1000415859 1000415859 790574175 964822348 964822348 136843268 485354958 1026303622 1026303622 850198832 850198832 831335523 693189891 711595413 847186201 984953429 984953429 974530655 814246934 27959660 313329809 820585923 854425731 854425731 273467584 583529625 586863441 586863441 174603407 642448408 769528420 1015275547 1015275547 919102699 1006897173 1006897173 480848280 556152280 619124641 711242880 711242880 186461748 70513972 388562952 388562952 367691137 546049667 903898957 903898957 819326183 629993130 285658144 523413085 1010555171 1069882459 1069882459 756820500 756820500 191152522 100663699 28386144 28386144 28386144 28386144 16912416 20250960 46764976 58900528 58900528 34173088 25864832 25864832 12741216 27923936 27923936 45612240 45612240 41371888 37904461 144064768 699742334 1043144991 1043144991 78726592 742766996 742766996 973130301 973130301 701624930 486728304 441467624 256055548 142095176 256902284 256902284 56394292 173731760 173731760 59848284 27828640 33032160 33032160 702115494 814008387 999399651 999399651 956899952 983041623 983041623 906497759 580715022 475605591 281617542 345047096 345047096 325718500 366234530 366234530 364114794 173180410 54936760 215659200 215659200 203349516 203349516 21765024 125122960 240148684 245408848 245408848 617888429 617888429 547588680 547588680 655537917 655537917 666634820 791151933 791151933 635780581 589435185 583807600 583807600 121708752 121708752 85468968 478858131 478858131 548802416 987969605 987969605 736866755 724771351 1059212945 1059212945 494854062 111536472 710786573 710786573 405189952 411704560 411704560 122684088 146835468 146835468 457996893 1039916523 1039916523 1020941231 627589144 1010075043 1010075043 497126206 353732980 813711683 813711683 525859518 525859518 334485833 473961526 668555280 668555280 1046396641 1046396641 612483144 612483144 843170397 843170397 791442194 791442194 682756637 641094928 795455178 795455178 632837873 794173193 976170753 976170753 766311532 766311532 141083024 167904532 167904532 168034340 583025089 583025089 730094109 730094109 811476394 819274312 819274312 909823120 909823120 556315787 718484181 980012761 980012761 912660891 912660891 875698576 615565768 676126469 745525565 745525565 688916640 688916640 25593978 710162856 710162856 684535424 684535424 157794938 1040352292 1040352292 923456571 705435015 707493094 707493094 433042709 88553640 44231160 354970784 354970784 82436552 411571341 812332419 812332419 746833358 219527176 539337161 553713952 553713952 766812401 789588289 789588289 762463020 470987429 117999744 117999744 169706521 777689149 777689149 772986557 790416957 790416957 441063305 414971718 555484304 555484304 1008215199 1008215199 926941371 649339705 602888140 602888140 589675056 897226109 897226109 1022094104 1022094104 371802184 75608346 34220864 45353808 234881352 234881352 178258260 226839853 724099381 724099381 688238103 806969365 806969365 329660434 284429250 284429250 522504510 522504510 391568058 391568058 449425516 449425516 541282817 541282817 672851136 975311110 975311110 708064980 1070344335 1070344335 883157502 883157502 1045933795 1045933795 1022861595 371195069 817039131 817039131 631642473 631642473 164627172 1022999271 1022999271 454507062 454507062 370915220 370915220 463891072 463891072 283238850 283238850 273752640 426108576 633035573 633035573 365449380 304234845 342137316 719850657 719850657 688528580 688528580 192431056 192431056 159958116 251481472 267926528 267926528 146027592 184888440 184888440 137710240 167011280 167011280 95508944 48245056 48245056 68322856 68322856 87766144 87766144 75159432 41754144 61204496 79749856 182504192 196405892 229933584 229933584 158303760 245933100 245933100 495803808 495803808 464196628 336069642 250144236 250144236 252707904 261621372 261621372 465968320 465968320 52333316 438442832 438442832 373833096 294852464 525615352 525615352 321724586 321724586 253301872 253301872 121247544 113399776 297111192 336820888 336820888 24113280 21546144 6971808 4403328 22218016 103817528 177085524 791905204 791905204 643899801 946810837 946810837 888353739 910578501 910578501 739383764 739383764 649341657 647309913 180818573 72352392 168984584 168984584 183045340 183045340 250874104 250874104 220077612 220077612 222700254 388175592 388175592 76263732 28930080 822343426 822343426 605746217 594498816 591784113 454957846 353914048 93504344 93504344 418758966 1015232832 1015232832 571474032 459454869 784907668 784907668 974380162 974380162 416231784 428149264 428149264 125203472 53163312 53163312 31877392 95749016 105333688 105333688 254938344 254938344 135962796 254672184 254672184 159384824 197263940 226726260 226726260 176386888 218381128 218381128 188367504 98212844 105170536 195857048 195857048 319215666 354457522 354457522 808797229 808797229 643375553 643375553 470811034 741376604 741376604 580960593 247497485 5242880 710467744 716251341 716251341 114935509 23594400 52200160 113425216 225516208 225516208 158046936 185977728 185977728 173139152 159387904 185514804 196822084 196822084 37225812 28348112 544999232 566762689 566762689 554308641 554308641 55445064 39195152 244730305 775346973 775346973 982951375 982951375 739635724 405846346 405846346 385912666 867997452 867997452 799959636 134757710 1065960511 1065960511 509629878 509629878 501293730 188024682 175607888 46743760 175920388 175920388 686562192 705303573 705303573 705303573 137239812 376147400 376147400 304345362 304345362 370485786 370485786 362299112 362299112 302850704 500297302 500297302 290791800 290791800 482094354 530130558 530130558 114820824 289418544 335807926 1009630766 1009630766 174823888 263252888 1067153327 1067153327 185011784 402581044 1020995804 1020995804 617952971 617952971 487558591 1043516305 1043516305 141320490 595335229 595335229 1035257440 1035257440 987808246 987808246 630176048 856246286 856246286 438642966 438673686 438673686 438427926 96473760 138676356 429918436 429918436 443691734 443691734 187830770 420376033 717410517 717410517 904380409 904380409 668189800 668189800 889694250 889694250 875825931 939995663 939995663 420722726 655809146 655809146 567722545 555827856 62440864 57182192 48499808 24382368 24382368 20784800 51979520 51979520 35725584 35725584 39692544 55083936 809518370 867944850 902953711 956823591 1029906734 1029906734 329642346 717490308 717490308 990839395 990839395 1056902004 1056902004 1044365942 1044365942 806013843 834042884 834042884 676782197 416311895 685181810 700726833 700726833 542511172 580388433 580388433 571739200 17434736 26090656 26090656 3929856 20672512 307762070 443680402 443680402 12583104 348936202 538889420 538889420 273686066 290331810 722656420 1069678653 1069678653 941759488 942411015 942411015 1055800145 1055800145 670412789 950502607 950502607 1036420619 1036420619 630379113 476168514 476168514 871370809 871370809 398459424 973523449 973523449 350730289 350730289 387212103 519619257 519619257 313142664 554238208 648570136 648570136 670877376 670877376 642813632 183505688 103432948 52240784 80785465 567464673 567464673 558264629 456626622 506680078 506680078 470007832 559336235 559336235 861820351 1058542393 1058542393 949361796 959843376 959843376 814745469 814745469 645163070 952429586 952429586 682641536 688906966 688906966 251842624 32105952 160079360 160079360 55616592 139911168 250404460 250404460 248066128 427165066 427165066 522584114 522584114 732183672 732183672 557723433 33818640 933626058 1005921316 1005921316 860272888 860272888 104857752 625488148 690697509 690697509 237720872 54342192 123410224 124334520 327697576 432326802 432326802 430564710 444130074 444130074 213232774 296846404 296846404 277025794 229246784 427704545 951376423 958704391 958704391 940573191 989795664 989795664 179044736 181144788 194772288 993265986 993265986 706740501 694103552 215070298 231345632 231345632 42845776 486801600 999556488 1029194623 1029194623 772573341 772573341 675080000 145514497 102510096 102510096 39149768 34837840 42930256 51974960 78851592 78851592 69055680 94076712 94076712 82529736 67235968 93001824 93001824 83566592 93398976 93398976 65573600 65573600 62542064 28459664 4595328 10885120 10885120 10750272 1019587041 1019587041 423546407 546046699 546046699 144229956 747521212 844369013 844369013 590245989 590245989 691180576 895373948 1055102606 1055102606 952239052 532808154 1044383276 1044383276 977993866 977993866 981541907 981541907 789808232 680114173 578458004 493144494 493144494 115667190 240682122 240682122 209963142 687112888 687112888 605293144 734102916 734102916 331431759 331431759 287956750 1041710632 1041710632 377289123 1059113864 1059113864 775948844 775948844 292955535 395379012 395379012 341325824 315337282 342827768 416219930 817762154 817762154 355277385 4667520 754076934 897077967 897077967 888442793 666701680 666701680 603438745 663164456 663164456 558094464 558094464 694534784 694534784 862767619 862767619 722308529 56754402 283568436 401129832 401129832 381478680 381478680 264913168 229155204 324808600 332734142 405414178 405414178 297010802 297010802 278468178 278468178 205004116 380508496 646605129 673219009 684739144 684739144 1053368682 1053368682 728237493 702167525 961157638 1041531094 1041531094 875498843 849410492 1072152559 1072152559 793741379 567280096 558891681 558891681 89376937 21444768 624979312 624979312 133159593 6423080 6598400 549750785 825303808 825303808 805306432 809500803 809500803 346628320 893455488 954671362 954671362 914705792 937070608 937070608 390288242 361573482 361573482 271045896 153579528 511021028 511021028 465754380 231534656 231534656 473981086 473981086 1022928399 1022928399 236986347 537010744 890308746 960823865 960823865 680435222 680435222 160196604 245542128 542732653 613634160 655483449 655483449 111268745 860163368 860163368 604319961 583084064 620761096 620761096 0 0 18432 55285120 55285120 10750272 15720564 18415699 45026037 287835426 287835426 193008919 574105208 814225377 937579459 964822348 964822348 147591686 282992322 1026956930 1026956930 839558441 839558441 388231482 479533073 711595413 847186201 984953429 984953429 974530655 814246934 430214390 430214390 253834544 129351368 129351368 127191672 268166132 268166132 48640256 81498908 642448408 889591851 1015275547 1015275547 919102699 819529927 801760487 1023135493 1023135493 619124641 845109576 845109576 639218473 639218473 388562952 388562952 483960579 915529881 915529881 903898957 819326183 823459119 823459119 580176465 570778176 163199304 162217060 203420196 675627851 675627851 374459282 903107078 903107078 420705470 734380388 1043864611 1043864611 304380801 304380801 58900528 34173088 25829568 21406048 23593472 23593472 15239232 15239232 718740296 787882973 787882973 70254984 70254984 112377304 112377304 954208512 954208512 578478983 348913376 517764738 517764738 171578320 256055548 256055548 142095176 256902284 256902284 105779240 62417668 62417668 47290112 92488064 92488064 92914056 769333966 814008387 999399651 999399651 567932543 730741896 1071520817 1071520817 438183574 928850580 928850580 910314992 910314992 74240958 371724400 371724400 366524330 366524330 54936760 215659200 215659200 122118824 122118824 21765024 125122960 240148684 245408848 245408848 200228340 123904048 123904048 606026257 606026257 552681336 666634820 791151933 791151933 635780581 589435185 607260000 607260000 586169784 586169784 118240016 478858131 750259166 750259166 987969605 987969605 736866755 724771351 724771351 530955166 324059826 68722714 262946364 262946364 510334664 510334664 440613302 62527344 146835468 287919930 359471696 359471696 279784770 278395458 545958320 545958320 544360402 562697313 562697313 538527045 297692398 525859518 589935975 799926993 1028446231 1028446231 430532564 1046396641 1046396641 668824219 668824219 843170397 998797373 998797373 811068042 923412867 923412867 145677636 241442084 632837873 632837873 793049273 793049273 766311532 766311532 141083024 141083024 83116412 124011369 583025089 583025089 730094109 730094109 572909841 819274312 819274312 674634501 760245250 862059202 862059202 502504757 76700488 76700488 79073864 615565768 615565768 676126469 745525565 745525565 674439873 651467669 651467669 872626374 872626374 1023840994 1023840994 777778845 1040352292 1040352292 923456571 705435015 676791568 713849428 713849428 853581008 853581008 711590146 354970784 321340250 217831036 217831036 604187173 604187173 231673464 539337161 553713952 553713952 766812401 789588289 789588289 762463020 236130336 236130336 117999744 169706521 777689149 777689149 772986557 790416957 790416957 441063305 414971718 414971718 410810560 1008215199 1008215199 926941371 554206168 753150420 753150420 750522189 537930653 230026092 466216394 466216394 371802184 118269976 356720192 356720192 468884592 468884592 453559350 389876806 363654416 121424184 121424184 578982165 578982165 873802029 873802029 699666084 699666084 236308240 422120085 688254418 688254418 551760321 551760321 551137860 551137860 715563202 715563202 415325201 138676356 138676356 597868658 597868658 327209393 143026308 143026308 159410184 226879596 226879596 201725964 201725964 93122056 167032322 342234316 342234316 414938112 941681991 941681991 406712070 425196198 425196198 756593065 756593065 273752640 154638400 154638400 92412428 92307464 92307464 16779296 25171968 62445540 62445540 30722836 124306748 124306748 251481472 251481472 236403228 146027592 184888440 184888440 166993544 167011280 167011280 95508944 48245056 48245056 118073360 118073360 289679146 427123881 708879543 758915997 758915997 1033177956 1033177956 888201947 888201947 656911379 628406137 624467209 673186053 673186053 989988159 989988159 635688136 469951914 327828928 265950880 173149812 163842276 465968320 465968320 51151142 515130956 515130956 373833096 294852464 390340348 390340348 321724586 321724586 337756800 337756800 120272184 113399776 297111192 336820888 336820888 24113280 46269404 204608268 262219284 262219284 95958004 177085524 759255008 759255008 1046642947 1046642947 1030222875 888353739 1035515490 1035515490 1025130594 1025130594 886385355 886385355 688526703 256843600 923268444 923268444 545693636 340297356 151275936 209489956 220077612 220077612 70390536 247157864 247157864 76263732 28930080 822343426 822343426 770130958 837811683 837811683 752249253 850513048 889008075 889008075 583803674 456681168 571474032 571474032 169119775 543361690 543361690 453987468 453987468 398520570 247065650 145336080 59965440 59978352 59978352 59974256 95749016 105333688 105333688 254938344 254938344 144609856 151022884 151022884 159384824 197263940 226726260 226726260 218083132 218381128 218381128 112568688 98212844 105170536 141348017 141348017 319215666 354457522 354457522 808797229 808797229 9564608 299991266 299991266 741376604 741376604 580960593 247497485 939648005 939648005 567829101 747998120 747998120 592749872 605609740 605609740 225516208 225516208 123801496 185977728 185977728 173139152 143251968 143251968 159320389 680267173 680267173 569103937 554061313 566762689 566762689 554308641 619645129 623192361 623192361 547367016 775346973 775346973 982951375 982951375 739635724 738336776 405846346 352883792 867997452 867997452 799959636 966811776 1065960511 1065960511 422059484 422059484 514141604 514141604 462883658 321567714 994261085 994261085 892677937 586188148 586188148 527558080 1009116858 1009116858 376147400 169918740 169918740 176560212 370804044 370804044 411306054 411306054 500297302 500297302 459222866 290791800 752497809 962042365 962042365 321557593 321557593 604698401 1009630766 1009630766 847345186 331207078 1067153327 1067153327 605108576 877068305 1020995804 1020995804 872809481 872809481 876243099 1043516305 1043516305 141320490 595335229 595335229 1035257440 1035257440 987808246 987808246 630176048 856246286 856246286 344715752 299903426 92016552 92016552 96473760 96473760 91090344 72500864 34017360 180568256 180568256 420376033 717410517 717410517 463978340 590767127 590767127 386331914 889694250 889694250 875825931 939995663 939995663 379261770 548146434 548146434 101309185 62440864 62440864 57182192 50423936 41678736 41678736 26479200 51979520 51979520 12841152 18956096 20880320 20880320 809518370 822206499 902953711 956823591 956823591 419559845 157409700 717490308 975208712 975208712 835245661 1056902004 1056902004 265324956 613434400 806013843 834042884 834042884 676782197 416311895 685181810 700726833 700726833 542511172 580388433 580388433 571739200 191667328 33623744 33623744 93987560 635605257 841077812 841077812 742261177 742261177 628623273 538889420 558826671 558826671 290331810 941773601 941773601 708858404 941759488 942411015 942411015 727060256 139461252 548825280 950502607 950502607 1036420619 1036420619 630379113 385884416 898662946 898662946 620777865 432148798 432148798 316955458 350730289 658980532 658980532 801440976 801440976 579941485 550635460 550635460 4201992 4201992 97705656 143547352 143547352 460001990 460001990 294046386 300032160 378961932 456626622 650299425 650299425 470007832 885905737 885905737 823017498 310122708 310122708 180752274 949361796 970723047 970723047 943981916 943981916 643826430 994292989 994292989 541202053 826749667 826749667 556656826 737916330 737916330 790742182 790742182 636668014 230859372 144844692 102770778 427165066 460524535 545732673 734614809 1028714004 1028714004 557723433 438606856 933626058 933626058 560075169 903309128 903309128 604860596 604860596 504026531 306520064 306520064 599040 302579728 302579728 124784146 303112848 311994198 445645398 445645398 444130074 467995184 509422942 509422942 454928760 454928760 427704545 951376423 958704391 958704391 940573191 989795664 989795664 196018336 196018336 194772288 993265986 993265986 706740501 694103552 215070298 310551770 906718252 906718252 566500276 566500276 528366406 528366406 4458624 675080000 675080000 194575444 83311560 83311560 92035752 92035752 25116576 32375520 32375520 31901568 69055680 69055680 24788744 70282920 88189472 88189472 25256648 17041440 18091680 147064884 147064884 123488568 138201468 138201468 138025820 529042018 529042018 363485674 363485674 292586060 500314380 500314380 433111568 858465224 858465224 329979127 830793584 830793584 138073860 138073860 38439014 827612628 827612628 114950177 456272202 456272202 67769352 977993866 977993866 981541907 981541907 167895060 167895060 213429634 493144494 493144494 115667190 240682122 240682122 209963142 135524868 145922132 592925589 592925589 1033356658 1033356658 1007737637 1007737637 859833476 859833476 726142118 1030226582 1030226582 775948844 1045642414 1046946532 1046946532 517553834 437329048 20657952 342827768 342827768 807083306 807083306 656252910 772179320 772179320 694163331 694163331 619200649 666701680 666701680 603438745 663164456 663164456 558094464 607022376 694534784 694534784 862767619 862767619 722308529 1059485903 1059485903 401129832 401129832 381478680 741470379 741470379 245374976 229155204 199365108 123937140 556626065 589498768 589498768 577785616 577785616 203428172 230131340 646605129 673219009 749128834 944559435 1053368682 1053368682 728237493 702167525 961157638 961157638 875498843 875498843 849410492 1072152559 1072152559 823510810 823510810 706226778 747292421 747292421 658298898 658298898 624979312 133159593 6033024 7383104 549750785 809893888 809893888 805306432 809500803 809500803 340337920 893455488 954671362 954671362 914705792 937070608 937070608 390288242 361573482 361573482 177344868 291977440 389890762 465754380 465754380 465622304 465622304 468914204 468914204 235354038 9710912 12128000 537010744 537010744 472918508 163906170 782241828 782241828 614932943 943982727 943982727 611584203 563397512 563397512 280109228 860163368 860163368 310458393 285817248 285817248 279906764 342171084 342171084 277506436 327610724 327610724 38802720 57500528 57500528 566439028 709762197 709762197 847855931 847855931 814225377 937579459 937579459 972903395 972903395 295732869 1026956930 1026956930 995236108 995236108 573610531 479533073 479533073 335679498 136235534 68686344 399810410 466302198 466302198 430214390 93717336 129351368 129351368 127191672 70302176 160719264 160719264 44097776 606343458 889591851 889591851 720149987 819529927 819529927 613269801 1023135493 1023135493 716903676 845109576 845109576 639218473 639218473 369665132 505495656 505495656 915529881 915529881 746849864 672927237 823459119 823459119 580176465 570778176 119576936 162217060 203420196 675627851 675627851 374459282 903107078 903107078 420705470 734380388 1043864611 1043864611 304380801 304380801 49964128 49964128 25773568 230694760 230694760 180470204 180470204 234066924 718740296 787882973 787882973 72366472 72366472 37859472 37859472 954208512 954208512 578478983 43238609 43127376 9441296 4268160 13893632 179896544 179896544 168353616 168353616 105779240 146859696 146859696 66183252 92488064 92488064 92914056 769333966 769333966 739171486 306637836 386536506 730741896 1071520817 1071520817 1013403803 1013403803 928850580 910314992 910314992 339220754 371724400 371724400 366524330 366524330 169954804 123148648 124779232 124779232 151211544 151211544 142031780 142031780 34936400 215165072 235618972 235618972 42179724 606026257 606026257 552681336 552681336 119537976 228078536 252131560 252131560 607260000 607260000 586169784 586169784 118240016 328516496 750259166 750259166 519309151 340076682 340076682 270688346 904154077 904154077 454083126 235932296 774120401 774120401 510334664 510334664 440613302 62527344 81573648 287919930 359471696 359471696 279784770 278395458 545958320 645249722 645249722 562697313 562697313 728255804 900173946 972962757 972962757 799926993 1028446231 1028446231 562562100 274575979 618659579 668824219 668824219 588093044 998797373 998797373 811068042 923412867 923412867 10581051 241442084 241442084 57732612 87887412 87887412 27690080 212376576 212376576 210240588 221039916 221039916 167788564 773712993 773712993 197638396 197638396 619993315 619993315 674634501 760245250 862059202 862059202 755419273 747990582 747990582 642907896 714847425 714847425 674058852 749925868 749925868 674439873 651467669 781701432 872626374 955437562 1023840994 1023840994 777778845 777778845 726836264 171680810 132238006 676791568 713849428 713849428 853581008 853581008 711590146 321340250 321340250 217831036 217831036 262251256 262251256 231673464 101931056 101931056 479508872 479508872 350683652 212935500 212935500 236130336 236130336 84973568 63891696 63891696 85377392 94558680 99750888 101371632 149451720 149810628 149810628 232525548 232525548 152618532 554206168 554206168 753150420 753150420 750522189 537930653 230026092 466216394 466216394 362383490 118269976 356720192 356720192 480350810 480350810 453559350 463604537 724831029 724831029 656673709 628556581 578982165 873802029 873802029 699666084 699666084 236308240 422120085 688254418 688254418 685702784 685702784 551137860 698401125 765576221 765576221 705291285 634619561 634619561 587936817 894863153 894863153 437840898 437840898 383119377 820359987 820359987 213060439 604037116 676857477 831308612 831308612 392117946 775130868 941681991 941681991 406712070 425196198 425196198 756593065 1006772872 1006772872 939779175 649718852 213997666 479375669 533194928 946680067 946680067 599688880 599688880 34099520 74867736 74867736 104075520 104075520 102111768 211979704 211979704 166993544 166993544 109513776 109513776 97467392 97467392 46113160 118073360 118073360 289679146 427123881 708879543 758915997 758915997 1033177956 1033177956 888201947 888201947 656911379 628406137 624467209 673186053 673186053 989988159 989988159 635688136 469951914 381446320 381446320 503581710 503581710 419695632 419695632 266388608 515130956 515130956 473483022 473483022 178715754 168894996 472916620 472916620 417122950 364340576 364340576 83014858 74861816 107024272 107024272 30455016 91603560 204608268 262219284 262219284 130821236 570024197 759255008 759255008 1046642947 1046642947 1030222875 872488971 1035515490 1035515490 1025130594 1025130594 886385355 886385355 688526703 256843600 923268444 923268444 545693636 340297356 189605556 174663100 121211512 150365880 150365880 510685549 510685549 356757514 356757514 225071110 68208808 770130958 837811683 942411559 942411559 850513048 889008075 889008075 961244192 961244192 219245507 216294420 893617082 893617082 1006392538 1006392538 554704914 515300190 306897920 306897920 67736784 59978352 59978352 59974256 59843184 2419824 2021632 12207616 12207616 144609856 151022884 151022884 122685864 52244016 52244016 159603896 218083132 218083132 86158184 86158184 77226000 77226000 101501976 101501976 34079760 39322240 39322240 29360352 29360352 23717280 228643776 228643776 875879454 875879454 595163084 776062035 939648005 939648005 991200223 991200223 747998120 592749872 605609740 605609740 176227152 176227152 45097044 36896768 36896768 36771136 143251968 143251968 159320389 680267173 680267173 569103937 554061313 554061313 610796937 610796937 619645129 623192361 623192361 547367016 241869056 239858844 33653760 711253144 738336776 993324189 993324189 598565022 688183589 688183589 406170917 1025038048 1025038048 406722652 406722652 233520528 514141604 514141604 462883658 321567714 994261085 994261085 892677937 677646096 826021149 826021149 1009116858 1012649982 1012649982 396749736 856276772 959583015 1043729324 1043729324 411306054 411306054 183772962 459222866 459222866 230605517 752497809 962042365 962042365 321557593 688435458 959182119 1026259249 1026259249 847345186 504106014 504106014 201601026 772146022 877068305 877068305 584455584 872809481 872809481 876243099 876243099 672727067 34392735 33554560 33628160 146292768 146534704 146534704 957358956 957358956 195180053 286605408 286605408 26602720 32320992 32320992 23614754 15018432 291823714 291823714 283779586 180568256 458904882 458904882 406994960 436338694 436342806 436342806 237929100 237929100 270553760 292737954 875179280 906633221 906633221 207927308 242796444 738207616 738207616 536969232 4551200 121038016 121038016 100531312 61442080 119562608 129303064 129303064 117440568 117440568 124001136 124001136 286460852 444282774 444282774 491133102 953372964 953372964 750254925 650254737 975208712 975208712 835245661 835245661 717044244 522332011 250364668 302013026 302013026 313955168 405229588 406133250 411509062 411509062 305534378 137669956 137669956 179497248 191667328 191667328 95020552 272344202 272344202 635605257 841077812 841077812 742261177 742261177 836311174 836311174 558826671 558826671 139329665 941773601 941773601 708858404 1043093203 1043093203 900911370 727060256 884683970 884683970 547177409 547177409 884624494 884624494 816893031 938002440 938002440 898662946 620777865 432148798 432148798 233706880 233706880 658980532 754243917 801440976 801440976 706084885 706084885 550635460 633089057 736438773 736438773 676136304 84355168 460001990 460001990 315756960 315756960 300032160 287346794 650299425 650299425 321313074 1032134984 1032134984 823017498 854233437 854233437 418712709 560345422 970723047 970723047 943981916 943981916 643826430 994292989 994292989 541202053 826749667 826749667 556656826 785424080 785424080 790742182 790742182 636668014 263376308 263376308 213945860 359533060 460524535 545732673 734614809 1028714004 1028714004 538865193 538865193 963153288 963153288 615794048 903309128 903309128 815491838 815491838 1011851663 1011851663 306520064 133569336 374807056 374807056 305478016 303112848 303112848 445645398 445645398 101262360 467995184 509422942 509422942 454928760 454928760 155646660 38403956 11670592 24944096 24944096 3147328 8913984 196018336 196018336 196415204 196415204 196609908 196609908 60440064 300982976 330445025 906718252 1016783816 1016783816 572662779 776082828 776082828 577438557 573088457 194575444 194575444 83311560 83311560 92035752 92035752 25116576 32375520 32961192 100038280 100038280 88725192 26467016 70282920 88189472 92688552 92688552 86057056 86057056 147064884 147064884 123488568 138201468 138201468 528772544 529042018 529042018 363485674 874008449 874008449 549110819 606142472 606142472 858465224 858465224 580720101 830793584 830793584 662788752 765673984 828474222 828474222 827612628 750177419 456272202 673200686 948312071 948312071 948128971 671654993 539510369 565757793 599294944 599294944 178284829 738577089 738577089 693406517 596761312 801200441 801200441 745761192 592925589 592925589 1033356658 1033356658 1007737637 1007737637 859833476 868357327 868357327 1030226582 1030226582 679739634 1045642414 1046946532 1046946532 517553834 437329048 112462680 112462680 304816512 807083306 807083306 656252910 772179320 772179320 694163331 694163331 619200649 109068433 67015712 541200016 541200016 649267724 649267724 607022376 607022376 553935013 1002213788 1002213788 886939595 1059485903 1059485903 279073538 279073538 361140364 741470379 741470379 458763834 490997934 490997934 219678610 556626065 589498768 589498768 577785616 577785616 203428172 230131340 230131340 23981472 749128834 944559435 944559435 479889493 110101080 651174480 651174480 148095129 142815300 199755868 907004350 991509985 991509985 823510810 939736167 948702724 948702724 940049415 658298898 658298898 609494217 609494217 77654984 95457160 95457160 809893888 809893888 8861699 80064 282010440 343809930 343809930 206766848 207827340 207827340 163748244 120196440 352657760 478212466 478212466 177344868 343735208 389890762 410031828 410031828 943762945 943762945 451548630 215455844 888544203 888544203 434565355 719773735 719773735 474549776 534980819 782241828 782241828 614932943 943982727 943982727 611584203 510423156 510423156 487510302 744555330 744555330 629154249 608479696 659015888 659015888 342171084 342171084 277506436 327610724 327610724 38802720 57500528 57500528 566439028 709762197 709762197 847855931 847855931 690012485 690012485 570983977 972903395 972903395 295732869 154455168 91228076 995236108 995236108 573610531 493524919 493524919 665633070 665633070 849223251 865209376 865209376 466302198 337211732 151690144 39034880 39034880 34197508 185729300 187986596 187986596 124273704 297843772 353295402 353295402 353111082 778605045 778605045 444072387 875218907 875218907 716903676 488674116 683295038 683295038 570950673 369665132 505495656 505495656 279186352 746849864 746849864 672927237 699139194 699139194 478817607 854595808 927879723 927879723 908514363 907279131 631190129 631190129 615729348 615729348 385591919 166796288 800447784 800447784 687705936 687705936 60862208 60681840 25773568 230694760 230694760 180470204 180470204 234066924 659677952 729288288 729288288 773882888 1019858261 1023339855 1023339855 1022690132 1022690132 606643023 316135376 316135376 102237720 148345824 231924860 231924860 179896544 168353616 168353616 51008516 146859696 588374405 588374405 574203409 28979296 32968705 164332320 868903269 868903269 596655654 991033408 991033408 1058279999 1058279999 1013403803 1013403803 875926814 875926814 806775572 339220754 339220754 50466864 55353936 169954804 169954804 123148648 224852592 224852592 161295972 225083752 225083752 142031780 109725712 215165072 235618972 235618972 100999232 147877968 147877968 105039012 252185696 252185696 261885564 261885564 189478976 239483084 239483084 201725964 189973206 443890354 487022706 487022706 694160676 694160676 340076682 340076682 202444108 904154077 904154077 610544025 235932296 774120401 774120401 934300303 934300303 813510450 426894246 426894246 425297152 381145305 996847347 996847347 957007431 752541327 645249722 645249722 626101888 621669417 728255804 900173946 972962757 972962757 537207552 537207552 562562100 562562100 273948692 441789078 441789078 190576308 897581268 897581268 704869332 704869332 746729892 746729892 231542060 211815569 575196517 575196517 770614629 770614629 766170477 212376576 212376576 563102317 563102317 221039916 153092388 773712993 773712993 197638396 197638396 914782313 914782313 763154349 763154349 48185040 755419273 1006258972 1006258972 778252701 706615253 907678065 907678065 722077269 749925868 906625635 906625635 213909677 781701432 781701432 955437562 955437562 877810195 221438764 486736900 486736900 221286418 132238006 374027426 374027426 326495154 326495154 320924400 295733080 295733080 94946082 307867704 400036906 400036906 369945674 369945674 369882138 101931056 118421016 118421016 105737416 105737416 94205064 29778728 68531752 101089888 114633432 114633432 81857296 18874656 18874656 101371632 149451720 149810628 173722688 880546725 880546725 749443534 1050333336 1050333336 366515554 102899940 538112064 538112064 681868236 805586816 805586816 362383490 88909960 100897984 302130512 724166165 724166165 403911174 463604537 724831029 724831029 656673709 628556581 457490253 539702529 539702529 394930524 675283468 946849345 946849345 821100168 370204906 685702784 685702784 543622498 698401125 765576221 765576221 705291285 702244565 702244565 587936817 894863153 894863153 612767817 725748961 772277277 820359987 820359987 512889447 604037116 676857477 831308612 831308612 392117946 775130868 775130868 76681685 76681685 69805320 371794208 523939884 1006772872 1006772872 939779175 649718852 213997666 479375669 533194928 946680067 946680067 599688880 599688880 451564206 496145016 498599790 498599790 526910910 526910910 211979704 227695932 287595448 418401986 458769200 458769200 97467392 97467392 46113160 24817336 116260944 116260944 29557160 4228736 4210688 1574400 2113536 2113536 2097152 78023680 78023680 8965440 8965440 8913984 9110784 9110784 61022472 61022472 202403472 381446320 381446320 503581710 503581710 323752670 266388608 338184464 338184464 345943266 473483022 473483022 381244032 381244032 472916620 472916620 417122950 364340576 364340576 349927808 349927808 107024272 107024272 30455016 91603560 91603560 102644176 130821236 130821236 570024197 687461973 704941191 928348711 928348711 514153135 514153135 465252622 454112576 16982884 22020880 54526128 190396544 190396544 168302152 205863784 205863784 199573400 229232552 229232552 210289740 121211512 206022848 260993340 510685549 510685549 356757514 356757514 228899168 68208808 590391585 590391585 942411559 942411559 544745377 597296680 597296680 961244192 961244192 265069515 216294420 893617082 893617082 1006392538 1006392538 554704914 515300190 306897920 306897920 67736784 66011120 66011120 57223280 44426448 56009280 60295712 193107568 197578836 197578836 71567360 122685864 122685864 109389912 109389912 17251952 17041440 95698976 181684984 181684984 77226000 77226000 101501976 107243403 358477482 358477482 281717018 839612069 839612069 42119360 817066668 817066668 875879454 1027150914 1027150914 776062035 776062035 892502158 991200223 991200223 882065643 597029552 810648475 882950283 882950283 715129164 715129164 372279442 402987266 446846016 446846016 435963556 435963556 150999716 150999716 23435104 23435104 547751304 610796937 610796937 84546952 14944704 111274248 111274248 181820160 751261912 751261912 711253144 711253144 993324189 993324189 754801122 754801122 688183589 531035160 1025038048 1025038048 635148278 1000272735 1059725148 1059725148 678572885 678572885 384964395 384964395 136993197 525312 677646096 826021149 826021149 811171476 1012649982 1012649982 615284702 877375134 959583015 1043729324 1043729324 309592404 270538496 113512144 46540248 190006988 231510224 231510224 309428424 598764314 598764314 688435458 959182119 1026259249 1026259249 656881977 504106014 504106014 201601026 772146022 772146022 296488290 607125760 607125760 605028873 872728074 872728074 672727067 439876230 643144605 643144605 910494784 910494784 965533246 965533246 958049582 901380116 901380116 285129460 514190692 514190692 505549086 348131796 15018432 291823714 291823714 283779586 171090688 458904882 458904882 448938129 697719072 697719072 740171309 740171309 365297386 876984874 876984874 605412795 906633221 906633221 207927308 242796444 738207616 738207616 536969232 48010912 121038016 121038016 100531312 61442080 119562608 129303064 129303064 117440568 117440568 124001136 124001136 376709376 444282774 444282774 491133102 953372964 953372964 750254925 650254737 650254737 581604001 816381417 816381417 870545450 870791667 870791667 594477058 11579008 281663362 302178706 302178706 271191778 305534378 344640642 344640642 344197194 301142800 574916819 574916819 335862577 581527571 581527571 934586256 934586256 105416547 104911624 165828402 836311174 836311174 541072516 541072516 859084324 953470371 964954215 964954215 1043093203 1043093203 990830166 730780405 884683970 884683970 772015056 772015056 884624494 884624494 901196719 938002440 938002440 395322404 661653144 661653144 612368832 194615656 95671136 106450632 754243917 754243917 117772112 706084885 706084885 155191833 633089057 736438773 736438773 676136304 86737024 86737024 7737120 315756960 315756960 23204562 56661024 537405056 542188161 1054409861 1054409861 1032134984 609148168 854233437 854233437 418712709 242607868 142348164 757927280 757927280 172755076 245115392 245115392 190441140 190441140 110046260 151377924 151377924 785424080 785424080 755159085 601046840 601046840 263376308 413991182 413991182 359533060 506139380 506139380 71576400 110236248 110236248 538865193 538865193 978097176 978097176 697376965 676670085 1012590136 1012590136 815491838 1011851663 1011851663 468073760 133569336 374807056 374807056 305478016 270273920 270273920 34087602 55116816 55389360 55389360 55379984 33818640 561408 2807040 332552069 976462711 976462711 973127703 989929527 989929527 720135284 172419092 682125748 682125748 954686162 954686162 729335733 719363878 300982976 330445025 330445025 1016783816 1016783816 572662779 776082828 776082828 788045829 788045829 575370645 682847344 682847344 595839344 595839344 544786756 15764736 53222560 53222560 100038280 100038280 88725192 49298752 27594912 27594912 92688552 92688552 86057056 86057056 73474656 11610912 25503840 28379904 28379904 528772544 528772544 193727604 208050295 874008449 874008449 612601762 612601762 606142472 677060952 677060952 580720101 680930325 680930325 662788752 765673984 828474222 828474222 750177419 750177419 421928428 673200686 948312071 948312071 948128971 671654993 539510369 565757793 599294944 599294944 178284829 738577089 738577089 693406517 596761312 801200441 801200441 745761192 609760911 609760911 269759542 269759542 981472320 981472320 265950972 868357327 868357327 789190838 789190838 679739634 433038788 459924648 459924648 239849650 355077550 355077550 270532866 222241264 222241264 412000800 419817510 419817510 278962244 58474576 23873760 34884768 34884768 67015712 562714800 562714800 649267724 649267724 134217997 0 625271322 1028205347 1030848687 1030848687 370704421 268582912 279073538 279073538 278008386 403821500 458763834 458763834 490997934 522846586 522846586 455751034 269099264 4333568 8716352 20197168 87300840 87300840 605293065 605293065 565203233 606905993 606905993 757123245 757123245 651174480 651174480 676207749 676207749 199755868 907004350 991509985 991509985 821283453 939736167 948702724 948702724 940049415 270087685 80328928 609494217 609494217 77654984 95457160 554936841 898855080 898855080 887216939 874769867 874769867 350222657 903360074 947136274 947136274 869281368 869281368 693136112 352657760 478212466 478212466 79556424 343735208 343735208 233848692 522266060 943762945 943762945 279259458 268435504 888544203 888544203 434565355 719773735 719773735 474549776 534980819 534980819 597194453 799161713 799161713 651641112 651641112 510423156 536883208 907936788 907936788 869665521 1004080119 1004080119 871542689 659015888 75180672 23729568 23729568 20286536 120930936 120930936 81456258 492602055 525327935 957241438 957241438 860816405 904447467 904447467 760267437 760267437 406112848 473161748 473161748 781597152 781597152 100712472 908336296 908336296 493524919 493524919 665633070 665633070 849223251 865209376 865209376 37758224 340365329 906132523 906132523 896273195 815792451 815792451 348137841 187986596 145072400 297843772 353295402 487855322 487855322 778605045 778605045 444072387 875218907 875218907 867747699 867747699 976536630 976536630 570950673 312549714 312549714 362589525 708438295 985352569 985352569 693802369 699139194 1015611109 1015611109 854595808 927879723 927879723 908514363 907279131 631190129 631190129 615729348 615729348 385591919 166796288 800447784 800447784 687705936 687705936 60862208 60681840 29544672 57792368 57792368 38862880 39649720 87895848 123743888 729288288 729288288 773882888 1019858261 1023339855 1023339855 1022690132 1022690132 725242323 954788037 954788037 876590986 421198144 421198144 231924860 70404772 59097344 40371600 137269040 139504513 588374405 588374405 574203409 15208448 32968705 159377523 868903269 868903269 596655654 991033408 991033408 1058279999 1058279999 374820132 374820132 307832466 369378056 369378056 305449746 101861690 50466864 18927888 10768832 10768832 118937472 224852592 224852592 161295972 225083752 225083752 79266252 109725712 169858648 169858648 36563024 100999232 138721304 138721304 93111304 252185696 252185696 261885564 261885564 176349184 239483084 239483084 201725964 189973206 443890354 487022706 893921999 1019809155 1019809155 539230985 539230985 525245520 155551844 610544025 894230622 894230622 734866677 722838354 934300303 934300303 813510450 426894246 463641372 463641372 381145305 996847347 996847347 957007431 752541327 540972516 626101888 626101888 956950818 956950818 704765973 791604269 791604269 958547015 958547015 849482067 849482067 916434238 916434238 699585381 190576308 897581268 897581268 967361895 967361895 746729892 746729892 404881728 952636268 1030888027 1071385583 1071385583 770614629 766170477 528504320 201375756 563102317 654624825 714359653 714359653 606077193 713156729 713156729 545710085 914782313 914782313 763154349 763154349 874776843 874776843 1006258972 1006258972 778252701 706615253 907678065 907678065 722077269 722077269 906625635 906625635 272028756 974101828 974101828 878233227 878233227 832052624 832052624 654524530 654524530 475011242 475011242 307264396 44172096 41943120 41943120 53068640 53068640 202172542 479298318 479298318 400036906 400036906 369945674 369945674 382761370 382761370 371060592 371060592 93622240 94205064 340922944 340922944 288283938 353011976 353011976 114633432 112517992 112517992 64301808 96117504 199892144 256914748 256914748 880546725 880546725 749443534 1050333336 1050333336 366515554 102899940 725685325 725685325 1045643286 1045643286 805586816 307632786 50727568 22155936 168870420 724166165 724166165 69267772 171248404 171248404 152171040 152171040 286576856 457490253 539702529 539702529 394930524 675283468 946849345 946849345 821100168 281616416 137130377 283669508 680597154 680597154 620962409 620962409 654674312 702244565 702244565 565721964 565721964 403900499 612767817 725748961 772277277 772277277 512889447 681574725 681574725 147923136 674565061 674565061 280759556 666743844 666743844 138145051 354627724 775242490 950567028 950567028 928576766 928576766 555762635 469403914 469403914 245160080 245160080 405195162 405195162 45614928 1041436453 1041436453 496145016 640723655 640723655 526910910 526910910 103694390 227695932 895749675 895749675 863783017 863783017 574540968 327447152 293365200 14327744 116260944 277356346 536480337 718802399 778830093 778830093 944799780 944799780 879608299 879608299 607627009 620477385 620477385 673259781 673259781 986199455 986199455 641778880 433852306 273967808 135004322 436343814 436343814 285423616 103188896 338184464 338184464 345943266 374990490 375385562 381244032 381244032 97653056 90846440 349716744 349716744 10367114 349927808 349927808 17041440 386075650 386075650 109712472 279057528 295833954 385744942 455221152 455221152 40371280 1184256 131584 556898304 556898304 418593 162607136 640092346 640092346 967234154 998365475 998365475 295970901 134747152 134747152 78779208 145011844 229232552 229232552 210289740 60902448 206022848 260993340 260993340 246346772 221207572 537348356 673444101 673624325 673624325 673585413 170918405 969543817 969543817 597296680 903412489 903412489 888229116 811685408 811685408 891898144 891898144 622766368 494086290 426247708 407251078 288394320 199800544 49161312 66011120 66011120 57223280 44426448 56009280 60295712 193107568 197578836 573499838 779888678 779888678 761650162 826156435 882920971 990022111 990022111 820109763 344474117 661152170 661152170 643108410 122226944 122226944 358477482 358477482 281717018 989555218 989555218 439926884 817066668 930438084 930438084 1027150914 1027150914 843037188 843037188 574599300 140278593 882065643 882065643 597029552 810648475 882950283 882950283 715129164 815377867 815377867 907660827 907660827 446846016 435963556 435963556 150999716 150999716 68947584 540281601 540281601 548872961 548872961 552608705 552608705 612115648 612115648 181820160 884590090 884590090 741028105 741028105 554378396 554378396 754801122 754801122 678305157 531035160 1012819886 1012819886 635148278 1000272735 1059725148 1059725148 678572885 678572885 384964395 691836068 841008393 841008393 391173303 645475330 645475330 542903937 423563372 615284702 615284702 877375134 877375134 405541760 408821382 408821382 270538496 150211524 150211524 291790882 291790882 798577549 917406859 917406859 598764314 747317101 747317101 369165568 302098986 520947736 520947736 335891508 403513372 436798476 436798476 106171032 607125760 607125760 1009693214 1009693214 1013930307 1013930307 775105666 643144605 643144605 910494784 910494784 965533246 965533246 958049582 901380116 901380116 285129460 514190692 514190692 505549086 392089414 522191166 522191166 238549538 46934144 46934144 178706598 584395473 804105193 804105193 697719072 740171309 740171309 869666035 876984874 876984874 639441323 474657903 347886926 220711766 190394532 44123424 44123424 48010912 62654432 129320544 129320544 43608504 25522176 25522176 17041440 17041440 25301088 25301088 54669440 54669440 376709376 376709376 292627362 275841826 535905274 535905274 279044170 213909812 213909812 581604001 816381417 816381417 870545450 870791667 870791667 594477058 10573632 281663362 281663362 82849416 82849416 288846344 344640642 344640642 344197194 301142800 574916819 574916819 335862577 581527571 581527571 934586256 934586256 1002228820 1002228820 660211506 990464999 990464999 789508738 151846423 859084324 953470371 964954215 964954215 813826327 990830166 990830166 786210896 786210896 590219552 772015056 948969532 948969532 649540733 901196719 901196719 395322404 395322404 661653144 661653144 612368832 167246820 167246820 164521728 145223268 212609572 212609572 206330112 206330112 160881592 160881592 248775740 248775740 364848173 975867683 975867683 754097417 754097417 941434091 1019480271 1019480271 617876723 747844173 1054409861 1054409861 946025494 415758534 445106564 445106564 571154449 571154449 145493316 981206802 1047801311 1047801311 766651500 998383323 998383323 667419897 604189233 604189233 643584058 926339624 926339624 775065892 1059570016 1059570016 462463306 413991182 413991182 347082592 506139380 506139380 71576400 110236248 110236248 298470848 849917226 978097176 978097176 697376965 676670085 1012590136 1012590136 421476798 449584342 468073760 468073760 99094984 88154664 272111802 272111802 270273920 424743584 440402070 440402070 110365272 456205552 510397854 510397854 455453816 455453816 332552069 976462711 976462711 973127703 989929527 989929527 720135284 579027382 682125748 682125748 954686162 954686162 729335733 719363878 271212822 286843168 294249570 878933004 878933004 818978861 818978861 538112780 788045829 788045829 575370645 682847344 682847344 595839344 595839344 544786756 14716416 53222560 53222560 23770672 41447552 49298752 49298752 14878784 15279552 15279552 10506688 167936 4194304 141895700 141895700 109316184 162271228 165201356 460589480 527550668 527550668 314553532 524089632 524089632 612601762 612601762 1027738030 1027738030 889241869 87332877 36887208 36887208 23491048 28249472 277395016 301536460 301536460 421928428 421928428 511049886 511049886 470811150 470811150 395397266 471957580 471957580 535516500 535516500 48989562 148187844 231025230 682605590 682605590 316791107 520013449 520013449 1015032230 1015032230 845306222 845306222 981472320 981472320 303567168 265950972 453249078 453249078 556730787 635547920 990638353 990638353 841381966 816329897 816329897 429207202 1005627917 1005627917 389481856 817227581 1004100929 1022418820 1022418820 1031802210 1031802210 934070469 570738145 117609880 656520185 656520185 177415136 68698748 605038221 605038221 625271322 1028205347 1030848687 1030848687 975591355 975591355 599706775 469392639 899693295 899693295 945292935 945292935 594068278 522846586 522846586 572096529 582238208 582238208 581774673 580487616 87300840 87300840 605293065 605293065 565203233 606905993 606905993 757123245 757123245 132197401 649035913 676207749 676207749 203760028 203760028 498467000 652352270 652352270 389881909 515570002 842206226 842206226 318277538 324686336 324686336 84071840 169312308 169312308 554936841 898855080 898855080 887216939 874769867 874769867 350222657 903360074 947136274 947136274 869281368 869281368 693136112 469959650 184169884 201725808 201725808 287952928 287952928 276871456 522266060 522266060 497234626 497234626 268435504 268435504 67248384 69415176 80229644 134939208 134939208 66981888 263727417 597194453 799161713 850868098 850868098 1019615439 1019615439 556938967 907936788 907936788 869665521 1004080119 1004080119 871542689 566650432 75180672 7483136 5192832 20286536 120930936 120930936 81456258 492602055 525327935 957241438 957241438 860816405 904447467 904447467 760267437 760267437 613743282 613743282 473161748 781597152 781597152 186782004 908336296 908336296 513426972 513426972 214208812 311791068 396361338 412730054 412730054 399956730 897534768 906132523 906132523 896273195 815792451 815792451 667965769 740271704 740271704 955531529 955531529 487855322 945909587 945909587 509134494 106522254 648652865 1062233916 1062233916 1011426447 976536630 976536630 287900784 312549714 312549714 362589525 708438295 985352569 985352569 693802369 512906574 1015611109 1015611109 683097665 685978053 685978053 934909738 980053849 980053849 1059886155 1059886155 801846525 136352324 21180128 701877360 701877360 138306420 138306420 55301824 181406032 181406032 180354900 133103164 150575480 194850580 212935500 661659776 661659776 80216813 716211912 716211912 826926243 857433847 965424231 965424231 725242323 954788037 954788037 876590986 421198144 421198144 221306900 221306900 186720512 40371600 137269040 137269040 20747284 526480 537993056 537993056 564924484 699276645 823549058 823549058 676121733 1011897998 1011897998 910379170 910379170 823470642 374820132 910987904 910987904 895535760 378988696 378988696 271012658 372294426 414613846 414613846 270710298 270710298 168981526 222543416 222543416 438459992 532394912 532394912 475979406 475979406 432015064 232689676 86057256 245400116 245400116 131195712 140525728 232873984 232873984 172001740 17113236 399360 5528448 211012162 341145962 432501710 893921999 1019809155 1019809155 963005925 622337181 722226472 722226472 941010944 941010944 894230622 734866677 566526656 178536499 31458114 431147026 431147026 521396406 521396406 288365455 524554705 524554705 209715276 71832653 82741448 609475179 609475179 956950818 956950818 704765973 791604269 791604269 958547015 958547015 849482067 878190720 916434238 916434238 699585381 484700622 672307565 690321062 967361895 967361895 872518056 872518056 404881728 952636268 1030888027 1071385583 1071385583 535725439 530241150 528504320 223777568 557089560 654624825 714359653 714359653 606077193 713156729 713156729 545710085 303362846 542204800 542204800 592216767 1010568975 1010568975 822346024 992217399 992217399 975440183 975440151 1006798295 1006798295 387007143 797104699 797104699 272028756 974101828 974101828 878233227 878233227 832052624 832052624 654524530 654524530 475011242 475011242 307264396 51051072 51051072 38817680 167977218 167977218 202172542 479298318 479298318 227254256 343447196 373163786 373163786 382761370 382761370 371060592 371060592 119322586 87062378 340922944 340922944 288283938 763855853 763855853 612160132 796610197 796610197 403769785 833407810 833407810 417848311 383451482 1018981478 1018981478 832570664 688649253 688649253 562820269 207775077 725685325 725685325 1045643286 1045643286 563636394 307632786 60552336 293901024 303247362 402797074 402797074 386015246 336736824 336736824 152171040 152171040 151117860 17217540 0 470821044 470821044 267126214 406325256 406325256 300213570 77735273 137130377 283669508 680597154 680597154 620962409 620962409 321048882 194269792 523438924 523438924 260972700 263476066 263476066 8388672 264256 50350096 144738337 681574725 681574725 147923136 674565061 674565061 773960456 773960456 700705530 1031418045 1031418045 864625259 950567028 950567028 928576766 928576766 555762635 469403914 469403914 245160080 627550404 627550404 405195162 195204452 1041436453 1041436453 272032768 640723655 640723655 778043805 834931617 1053819615 1053819615 895749675 895749675 863783017 863783017 574540968 327447152 293365200 86813264 61656624 277356346 536480337 718802399 778830093 778830093 944799780 944799780 879608299 879608299 607627009 620477385 620477385 673259781 673259781 986199455 986199455 641778880 433852306 460847104 460847104 236623904 285423616 285423616 17904386 69865736 69865736 71872664 260360316 260360316 329419236 329419236 363462922 363462922 349716744 349716744 336602339 616953475 616953475 565187451 386075650 890769731 890769731 380633720 380633720 830505568 830505568 725749138 487369882 366562965 366562965 556898304 864028835 864028835 347325197 640092346 640092346 967234154 998365475 998365475 980677527 699538258 142702200 227287056 227287056 43615056 61465968 61465968 59904624 59904624 71877768 71877768 70069512 70069512 537348356 673444101 673624325 673624325 673585413 170918405 969543817 969543817 395189370 903412489 903412489 549610024 811685408 811685408 891898144 891898144 622766368 284652064 71072264 71072264 70710272 6743168 0 20487936 20487936 17137624 132691416 132691416 124395896 185897168 209413408 573499838 779888678 779888678 761650162 826156435 882920971 990022111 990022111 820109763 344474117 661152170 661152170 643108410 574697089 698363234 698363234 423176742 831850020 989555218 989555218 439926884 797735062 1043848064 1048453023 1048453023 822962504 843037188 843037188 418860318 506538586 606876488 606876488 170394900 442500498 442500498 306184578 853620290 853620290 815377867 907660827 907660827 268570626 268570626 71303042 75369097 75369097 68947584 540281601 540281601 548872961 548872961 552608705 552608705 612115648 612115648 176161104 884590090 884590090 741028105 741028105 336209175 280009838 633756224 678305157 678305157 279941536 713753942 713753942 447231061 284279270 1000753202 1000753202 424728678 424728678 284995400 691836068 841008393 1008511684 1008511684 645475330 645475330 540281601 122842432 122842432 1050224392 1050224392 790624880 922151656 922151656 408821382 232998060 150211524 150211524 291790882 291790882 798577549 917406859 917406859 581498148 747317101 747317101 523772452 437790490 520947736 520947736 507610296 403513372 436798476 436798476 106171032 326643580 326643580 1009693214 1009693214 1013930307 1013930307 775105666 607234128 607234128 771868936 771868936 252923418 352904532 352904532 110549592 261244964 261244964 53212464 17071376 378217624 392089414 522191166 522191166 280810322 280810322 199882884 318306050 584395473 804105193 804105193 684584133 134307137 584035778 869666035 869666035 812953387 639441323 347886926 347886926 220711766 190394532 256700616 256700616 73171464 73171464 129320544 129320544 85983776 119352888 119352888 81282536 81282536 25301088 45232208 108069120 114762120 289616688 833696569 833696569 275841826 478813609 768087263 768087263 759694509 68555136 95066384 688835832 688835832 264783013 61266288 61266288 40128736 10573632 10573632 75245952 75245952 74787720 288846344 288846344 82763208 82763208 24268608 591481490 591481490 54120529 23232640 316924960 316924960 54755778 1002228820 1002228820 979993846 990464999 990464999 789508738 845076166 845076166 1007421496 1007421496 157291575 999671844 999671844 588113056 829284386 829284386 587640305 448797650 948969532 948969532 437782038 437782038 436782592 525312 1024 0 166724900 272704186 296567224 296567224 164521728 145223268 212609572 212609572 122821616 131851080 160881592 160881592 248775740 480390702 480390702 975867683 975867683 893477165 893477165 941434091 1019480271 1019480271 617876723 906166340 906166340 946025494 946025494 484680822 658557414 658557414 673218222 673218222 349111841 981206802 1047801311 1047801311 766651500 998383323 998383323 667419897 604189233 673847630 881594379 926339624 926339624 775065892 1059570016 1059570016 462463306 319113906 835730887 835730887 692402880 539966721 504977040 676569373 676569373 457403110 849917226 916793691 916793691 310636626 920404306 920404306 607242652 489162030 278397134 297984352 297984352 99094984 88154664 272111802 272111802 143263428 424743584 440402070 440402070 175917332 456205552 510397854 510397854 455453816 455453816 236284084 236284084 53775664 85897240 191753652 948715656 1020054735 1020054735 981690849 981690849 713336960 713336960 323542208 323171366 331477686 459002227 459002227 878933004 878933004 818978861 818978861 537207846 538893825 724033749 724033749 734149493 734149493 6373632 6373632 6365440 48857536 586761025 586761025 39397008 537539217 537539217 9313344 14878784 15279552 15279552 14926208 3641664 4636608 141895700 141895700 109316184 162271228 165201356 460589480 527550668 527550668 314553532 524089632 524089632 222890332 295647458 1027738030 1027738030 889241869 87332877 36887208 36887208 23491048 25421800 77170176 77170176 16829984 135357008 135357008 202444616 224533868 224533868 178409568 178409568 114197600 114197600 132916424 132916424 159402321 723831093 843878437 843878437 682605590 316791107 985627520 985627520 1015032230 1015032230 845306222 845306222 707175734 555170337 701377961 701377961 364251328 364251328 562510193 635547920 990638353 990638353 841381966 816329897 816329897 552513666 1005627917 1005627917 389481856 817227581 1004100929 1022418820 1022418820 1031802210 1031802210 934070469 570738145 117609880 656520185 656520185 177415136 103571784 605038221 605038221 136316544 8986773 606078985 606078985 975591355 975591355 877533952 877533952 899693295 899693295 945292935 945292935 594068278 421695580 421695580 572096529 582238208 582238208 581774673 580487616 32310378 32310378 825258857 825258857 537920001 887526347 887526347 554958986 554958986 108867480 366765155 366765155 208562598 353104938 353104938 289671330 289671330 269717508 272025678 515570002 842206226 842206226 547538241 324686336 596181889 596181889 228814264 169312308 136891072 150305872 150305872 136590308 110120692 129247096 160567528 163175596 163175596 135739368 9605696 120102624 469959650 469959650 189327224 201725808 201725808 287952928 287952928 276871456 330640128 814754939 814754939 500831554 468912982 468912982 250698198 943937636 952690995 952690995 850759574 1011980376 1011980376 537067621 537067621 850868098 850868098 1019615439 1019615439 556938967 447808000 447808000 440277250 412559430 412559430 279655746 47517696 47517696 21900320 21900320 15660128 12125792 12125792 22016128 193011120 193011120 157412384 183113172 427495885 427495885 268960548 511968144 553697617 613743282 683354342 747410700 747410700 681111446 873311262 873311262 673634568 867844207 867844207 762892679 600835888 396361338 412730054 412730054 399956730 897534768 897534768 729421749 729421749 577897733 667965769 733422456 740271704 740271704 955531529 955531529 409996560 945909587 945909587 509134494 106522254 505448090 1062233916 1062233916 1011426447 574833123 903000064 903000064 364385690 94236184 161995676 464050740 464050740 419845634 419845634 286787106 63131972 190964148 1053494824 1053494824 817290051 934909738 980053849 980053849 1059886155 1059886155 1018101310 807767819 722782773 701877360 701877360 769177312 769177312 126088872 255026248 255026248 180354900 133103164 150575480 194850580 212935500 661659776 661659776 117703112 1623104 93558308 210363468 210363468 209715276 209715276 206144972 206144972 139510404 119064120 246425564 246425564 221306900 221306900 186720512 190367412 242464404 242464404 572136081 572136081 570963601 540083472 564924484 699276645 699276645 820480846 828277998 1011897998 1011897998 910379170 910379170 823470642 398395850 910987904 910987904 895535760 378988696 378988696 336332560 372294426 414613846 414613846 270710298 270710298 168981526 487625672 487625672 438459992 532394912 532394912 475979406 859212633 859212633 232689676 202440801 688420112 688420112 131195712 734373905 734373905 232873984 727080421 727080421 154215204 28322340 215243336 341145962 432501710 432501710 835598790 963005925 963005925 622337181 722226472 722226472 941010944 941010944 732639556 966643168 966643168 992215361 992215361 961546612 826451975 521396406 953485647 953485647 522866097 522866097 510113549 997878133 997878133 975730737 975730737 413921311 843024480 843024480 220672592 303890466 814293842 814293842 413083973 878190720 0 0 98779174 484700622 672307565 690321062 690611493 690611493 872518056 872518056 611085707 989869792 989869792 953373319 177398235 0 727843077 727843077 223777568 679477405 679477405 262152344 262152344 69206292 363118850 363118850 554340696 554340696 542204800 542204800 592216767 1010568975 1010568975 785977283 1044981314 1044981314 975440183 975440151 1006798295 1006798295 900903148 821061986 821061986 674628925 85651805 173279744 173279744 232227520 268416576 268416576 290256248 344441034 344441034 22019278 32105952 51051072 51051072 52887184 167977218 167977218 172495760 172495760 169997520 169997520 343447196 373163786 373163786 327265664 314424048 340787746 340787746 119322586 51256824 58661528 58661528 23382432 763855853 763855853 612160132 796610197 796610197 403769785 833407810 833407810 417848311 383451482 1018981478 1018981478 909086467 688649253 688649253 562820269 715195668 715195668 71446920 124730600 520844686 520844686 356929188 356929188 333371412 303247362 782887549 782887549 386015246 336736824 336736824 74001536 74001536 274762096 701833630 701833630 655695888 655695888 191219850 211771872 211771872 90956256 75881800 604477193 604477193 551018432 551018432 641046872 641046872 607417112 607417112 570947601 523438924 260972700 369116939 574146321 842323011 842323011 586075329 528614343 528614343 610051696 810955153 810955153 1064626481 1064626481 773960456 700705530 1031418045 1031418045 864625259 418202657 650936538 886621899 886621899 603989752 589022496 589022496 513922231 694321352 694321352 300341647 268594577 268594577 967268405 967268405 891627819 572000140 778043805 834931617 1053819615 1053819615 840591358 958770672 958770672 319631012 319631012 248848240 248848240 86813264 349139728 377960538 377960538 130878656 130878656 111223128 113320024 113320024 73672768 79767688 79767688 75768064 11370816 33890384 33890384 46292272 46292272 120925600 120925600 460847104 460847104 320556746 236623904 255640684 255640684 380633824 380633824 348131520 348131520 260360316 329419236 329419236 363462922 363462922 273360096 273360096 336602339 616953475 616953475 565187451 280835136 890769731 890769731 380633720 380633720 830505568 830505568 725749138 671252640 366562965 366562965 201696407 864028835 864028835 347325197 347325197 545287127 817415958 986909571 986909571 980677527 699538258 143720960 227287056 227287056 170733204 118500696 118500696 63893528 195398144 231398604 231398604 187551220 176417212 717392374 952316103 952316103 1011104239 1011104239 993518647 991282227 991282227 826884643 395850289 31138304 31138304 24369936 5727872 39847952 39847952 34898944 34898944 43997828 168373076 170390644 170390644 173973524 173973524 157142352 161017040 161017040 179170644 240168880 240168880 209413408 209413408 211829540 211829540 217450356 217450356 19083552 201343688 201343688 458035858 798983204 798983204 114033762 574697089 574697089 724127731 871631285 871631285 831850020 831850020 713891888 297392160 297392160 1043848064 1048453023 1048453023 778357521 778357521 854651138 854651138 949100547 1010894163 1010894163 302330646 202251276 617875465 617875465 853620290 853620290 340673864 340673864 270059010 268748802 268748802 268730368 0 1966608 37160656 46545152 69403936 69403936 93062376 93062376 90118824 16782920 176161104 176161104 176086932 104282904 104282904 104282904 37092120 37092120 707306512 707306512 671582241 279941536 954597408 954597408 736414165 940622343 940622343 279009540 297991012 297991012 284995400 413967662 413967662 1008511684 1008511684 506020936 989358244 1059130323 1059130323 898419819 1050224392 1050224392 790624880 922151656 922151656 232998060 232998060 100157160 167306624 187825192 445602264 445602264 392662230 435221218 435221218 293146238 523772452 523772452 463996576 463996576 507610296 507610296 272908314 272908314 273170576 302564370 302564370 302564370 162271458 162271458 167383592 314578244 314578244 607234128 682171648 771868936 771868936 405484806 405484806 247348294 160342636 261244964 261244964 407045588 446767446 446767446 297905628 419491718 419491718 280810322 280810322 199882884 318306050 318306050 678199632 682622277 682622277 836015433 867586116 867586116 994389917 994389917 907775104 55054468 164106304 174064020 174064020 256700616 256700616 799519365 799519365 696035837 692736733 692736733 202409457 119352888 577798321 714901969 714901969 584801712 245184984 245184984 358679455 833696569 980685783 980685783 849614391 768087263 768087263 759694509 113379697 839975308 839975308 976666696 976666696 423676320 423676320 40128736 26593440 22303616 75233152 75233160 272981632 272981632 285514786 289335202 337096552 337096552 591481490 591481490 364348753 574049683 865517451 865517451 622470675 622470675 989301565 989301565 678200966 774259717 1041549855 1041549855 845076166 1007421496 1007421496 989222868 999671844 999671844 406961791 829284386 829284386 587640305 572844754 901976720 901976720 958057679 958057679 1049175135 1049175135 713098347 920389339 920389339 893830066 296567224 296567224 51940664 53249344 53249344 122821616 122821616 131851080 131851080 73123840 94151558 480390702 480390702 411386944 755410222 893477165 893477165 537004100 142872577 536938628 536938628 906166340 906166340 613556311 570951006 484680822 780801162 780801162 673218222 673218222 349111841 639308262 639308262 466235929 359587242 359587242 150155148 473030336 473030336 673847630 881594379 881594379 830612304 117778488 117778488 33826872 146958295 1058656665 1058656665 835730887 692402880 539966721 504977040 897731399 897731399 526522807 526522807 1049905522 1049905522 518637753 920404306 920404306 511724281 489162030 278397134 297984352 297984352 151968770 151968770 276890946 276890946 143263428 143263428 292135972 412107682 412107682 409473538 279565124 179160000 179160000 174894848 236284084 236284084 53775664 85897240 85897240 948715656 1020054735 1020054735 981690849 981690849 726171380 726171380 323542208 323171366 331477686 459002227 764637393 764637393 280082213 653395097 653395097 196824920 196824920 724033749 724033749 734149493 734149493 184600133 39928709 566419345 566419345 586761025 586761025 39397008 537539217 537539217 35638336 1141376 6549888 14926208 14926208 12834112 12834112 8812288 13414400 33303776 33303776 27070368 20038784 138520960 241247492 241247492 578667804 578667804 77512537 173347092 780013084 780013084 736790224 736790224 254481333 246085116 38459136 25421800 77170176 77170176 162530148 162530148 25826400 202444616 224533868 224533868 131502448 279710092 514290132 514290132 430178588 430178588 259015506 723831093 843878437 843878437 968309607 968309607 985627520 985627520 926034176 926034176 924269115 822157339 707175734 555170337 701377961 701377961 628435881 364251328 562510193 562510193 212110536 441084042 505646360 505646360 272703618 552513666 552513666 495702641 809545058 809545058 807790851 268468756 1062782112 1062782112 67141664 157319536 583532740 583532740 564139144 753200876 753200876 752687340 73526656 136316544 136316544 333513250 370272296 370272296 188793012 104382464 877533952 877533952 238212232 598862616 598862616 285309554 285309554 421695580 421695580 419656024 10502704 21095392 36751744 51767856 51767856 80513344 825258857 825258857 537920001 887526347 887526347 554958986 554958986 105185632 889000132 889000132 721970216 721970216 353104938 289671330 655921416 655921416 690154016 690154016 675665504 675665504 588008660 71543904 596181889 596181889 228814264 414939886 414939886 352564708 352564708 533071314 533071314 107535512 244268600 244268600 385767864 402373732 402373732 260220132 260220132 189327224 195103376 195103376 167062372 277180544 277180544 196610496 1011992601 1011992601 814754939 500831554 468912982 468912982 444090882 943937636 952690995 952690995 1013289320 1013289320 1011980376 741494952 560075296 676669012 1023730463 1023730463 639395977 956843304 956843304 447808000 440277250 412559430 412559430 364409832 548404545 548404545 695716645 963648417 963648417 809584876 172040578 204306692 204306692 553728179 553728179 183113172 427495885 427495885 268960548 895127664 895127664 862384447 683354342 747410700 747410700 681111446 979666024 979666024 800485375 867844207 867844207 762892679 600835888 159916128 134816772 206570124 226628320 226628320 356065908 479276603 479276603 929208747 929208747 763706124 763706124 703242464 703242464 483261116 342760842 466354141 1066800877 1066800877 119705443 692184900 692184900 601915999 601915999 574833123 903000064 903000064 364385690 280060808 337095042 464050740 464050740 321441778 291930164 252149898 324969411 571609617 1053494824 1053494824 817290051 674235141 777145733 777145733 782424401 1018101310 1018101310 807767819 1016485899 1016485899 744441008 769177312 769177312 126088872 255026248 270903586 270903586 100457028 316770002 316770002 93064296 102826528 694332685 694332685 180133820 332212022 332212022 998302000 998302000 997738451 997738451 972405671 972405671 958807748 292429218 445285644 445285644 297035726 318754806 426532192 426532192 242464404 572136081 572136081 570963601 540083472 755284961 755284961 745728780 820480846 1026828423 1026828423 295901424 308619666 341452114 350502778 398395850 398395850 37889450 120117496 120117496 270036554 336332560 336332560 101323800 101323800 84620896 8521232 0 487625672 487625672 327884042 317106404 317106404 225780387 859212633 859212633 202440801 202440801 688420112 688420112 671289536 734373905 734373905 177031464 727080421 727080421 210054144 67702092 215243336 215243336 414060873 414060873 496505352 496505352 471243306 471243306 422961310 422961310 1004627318 1004627318 831929478 966643168 966643168 992215361 992215361 961546612 826451975 330486392 953485647 953485647 625106973 522866097 775707521 997878133 997878133 975730737 975730737 413921311 951195413 1059722836 1059722836 547883864 814293842 814293842 831984242 831984242 595540461 595540461 107034156 267572220 739297749 739297749 274192512 1035324362 1035324362 611085707 611085707 989869792 989869792 953373319 709116538 485804771 727843077 727843077 106959344 679477405 679477405 788599057 788599057 732054567 396530531 371607934 554340696 1031167355 1031167355 465783527 964798740 964798740 906231835 388563238 1044981314 1044981314 837881188 460002601 1041968650 1041968650 900903148 821061986 821061986 674628925 884752635 884752635 820613214 953819929 953819929 814867011 814867011 575104152 530911586 530911586 292910830 53280896 54759840 54759840 54710448 314601284 314601284 177761410 37435152 8509264 6476160 4358400 429234710 441875174 867238669 867238669 523412722 622125129 635535168 879296729 879296729 846479923 565500707 87476433 705011912 705011912 90251688 119011896 119011896 39262776 68157960 68157960 622620974 909086467 909086467 321915957 220911249 218198914 715195668 715195668 735841459 735841459 656150305 566304993 753239587 909775357 909775357 751815368 782887549 782887549 52051568 52051568 38385668 74001536 74001536 274762096 701833630 701833630 655695888 655695888 443395158 340779114 340779114 335557898 335557898 604477193 604477193 548491529 539455809 641046872 641046872 607417112 709411989 718023829 718023829 690013680 369116939 574146321 842323011 842323011 586075329 528614343 528614343 610051696 810955153 810955153 1064626481 1064626481 788728525 768880236 796404432 796404432 382255810 416058185 615795910 934930299 934930299 692068608 692068608 589022496 513922231 694321352 694321352 300341647 273603714 268594577 967268405 967268405 891627819 337859747 172491924 975964942 975964942 840591358 1059859649 1059859649 1000948662 1000948662 683468326 273296768 874740019 874740019 827570435 377960538 377960538 575998633 657533483 657533483 633670490 12585088 12585088 7081344 7081344 44042240 44042240 33890384 33890384 46292272 70224128 557083664 727106024 727106024 320556746 783629668 783629668 617949897 255640684 380633824 763891964 763891964 906102660 906102660 104860712 104860712 376829352 376829352 346182986 163197568 163197568 72648200 72648200 879515272 879515272 280835136 379898202 379898202 335766128 833634800 1034461979 1034461979 671252640 1023599664 1023599664 743295528 743295528 801432765 801432765 680600133 131096808 817415958 817415958 402655042 34709504 143720960 143720960 57344464 170733204 170733204 118500696 118500696 63893528 195398144 231398604 390008425 390008425 473956494 717392374 952316103 1015334991 1015334991 1011104239 993518647 991282227 991282227 826884643 557903009 557903009 24369936 41548800 41548800 39847952 39847952 34898944 134266884 140806528 168373076 170390644 701701073 701701073 584439204 584439204 551686784 161017040 179170644 240168880 240168880 644802517 644802517 261919434 555490584 753949050 840844419 874665115 1023103327 1023103327 902465387 798983204 798983204 114033762 114033762 8391232 724127731 871631285 871631285 722507986 957818448 957818448 411548964 411548964 376761088 376761088 339554058 778357521 778357521 854651138 854651138 949100547 1010894163 1010894163 302330646 202251276 617875465 806814299 806814299 863095882 863095882 620272074 857961218 857961218 841204224 841204224 543031864 645013128 645013128 111346032 111346032 79574064 93062376 93062376 90118824 86833920 239708097 717699285 717699285 771938781 771938781 341544983 341544983 261121273 806532973 891464344 891464344 443908926 1027282472 1027282472 1015733961 1015733961 1037394763 1037394763 620883307 620883307 367284586 367284586 636541568 946934635 946934635 548435342 989358244 1059130323 1059130323 898419819 336333834 444936200 512104542 512104542 320018078 530706764 530706764 244515106 167306624 187825192 445602264 445602264 392662230 222868670 230904488 230904488 366684554 413212998 463996576 463996576 214958804 214958804 216082162 532748622 532748622 528482430 528482430 302564370 545261609 545261609 426580520 426580520 605298809 605298809 682171648 682171648 378762068 405484806 405484806 247348294 160342636 188311040 188311040 407045588 446767446 446767446 297905628 419491718 419491718 268745348 45649440 160534916 160534916 726453429 771788205 771788205 673186053 836015433 867586116 867586116 994389917 1011127346 1011127346 268960770 268960770 250179820 252318784 252318784 157725009 799519365 799519365 696035837 692736733 692736733 600670360 570425361 577798321 714901969 714901969 584801712 245184984 245184984 358679455 586550155 980685783 980685783 849614391 578815004 747111501 864831505 864831505 839975308 839975308 976666696 976666696 423676320 423676320 72645064 26593440 22303616 75233152 75233160 272981632 272981632 285514786 289335202 337096552 337096552 333090721 278762914 364348753 574049683 865517451 865517451 622470675 622470675 989301565 989301565 678200966 1007179866 1041549855 1041549855 436520982 436520982 184078919 989222868 989222868 939918288 505508745 858726568 858726568 604576032 604576032 572844754 269353221 958057679 958057679 1049175135 1049175135 713098347 920389339 920389339 893830066 284825538 72632386 51940664 43517440 44883328 54712816 54712816 85851744 85851744 92012232 92012232 7805376 417369967 417369967 285805743 204581421 540161795 540161795 297478027 685783842 685783842 1049965471 1049965471 978580119 570951006 382342362 780801162 780801162 97923301 48959168 36176144 639308262 639308262 466235929 359587242 359587242 249043604 473030336 473030336 686168488 686168488 830612304 830612304 528705868 805661080 805661080 320126190 1058656665 1058656665 826950958 826950958 744673677 587881960 897731399 897731399 555222561 896797475 1049905522 1049905522 805339282 714513172 791968316 812782467 812782467 547740418 433973764 433973764 151968770 151968770 276890946 276890946 18856736 25346112 292135972 412107682 412107682 409473538 279565124 179160000 179160000 174894848 174894848 169174784 138319876 138319876 80029896 617466888 771827469 771827469 297120772 321862962 726171380 726171380 403228928 177590946 247296520 247296520 764637393 764637393 264640764 653395097 653395097 302074002 196824920 442751682 442751682 181662420 578847122 840282195 840282195 566419345 566419345 50969297 2789632 2789632 28454664 35638336 124275432 124275432 80021216 80021216 77672288 69422944 77378208 77378208 13414400 13414400 11608064 15028176 40742272 145845784 241247492 241640961 578667804 709312204 782840524 782840524 780013084 780013084 736790224 736790224 562527416 737189240 780877000 780877000 752754381 618800384 190994800 162530148 92910192 191746000 191746000 60739632 60739632 279710092 514290132 514290132 430178588 430178588 364135056 316592624 336051534 426845569 968309607 968309607 851832917 842756864 926034176 926034176 924269115 822157339 792253364 792253364 625940224 628435881 628435881 629476880 629476880 384877530 388230064 441084042 505646360 686816587 686816587 639085076 809967894 809967894 809545058 1055449880 1055449880 696492230 1062782112 1062782112 409097091 304763404 583532740 583532740 606238704 753200876 753200876 752687340 251397501 260106892 766618653 783036045 783036045 705702483 447790806 447790806 807450396 807450396 393283181 598862616 1069341922 1069341922 913300596 217506584 29594320 29594320 10502704 21095392 36751744 51767856 51767856 80513344 132649400 132649400 123864568 132211192 739127308 739127308 622668945 145966149 889000132 1049352070 1049352070 721970216 529919536 136774400 655921416 655921416 690154016 690154016 675665504 675665504 588008660 117074272 129759096 1071917998 1071917998 661805720 464363742 679664812 776899925 776899925 533071314 438716950 961749208 961749208 753790413 631404556 402373732 260220132 260220132 212896104 227805804 227805804 257893228 370183824 370183824 198121602 1011992601 1011992601 407186962 458700848 458700848 444090882 444090882 820856096 820856096 233366123 1013289320 1013289320 806904613 741494952 560075296 560075296 1023730463 1023730463 941121687 956843304 956843304 931239080 1022979358 1022979358 574398528 574398528 548404545 548404545 695716645 963648417 963648417 882958717 1052049978 1052049978 204306692 738317473 738317473 374029720 545321211 545321211 379883136 895127664 895127664 862384447 530676027 640182492 640182492 311020929 979666024 979666024 800485375 378123078 378123078 240731742 414561654 414561654 138578752 206570124 473564631 757268033 757268033 479276603 538844789 929208747 929208747 763706124 763706124 670535960 567906497 483261116 342760842 466354141 1066800877 1066800877 246034464 692184900 692184900 601915999 601915999 459058104 785861807 785861807 727642981 668587267 337095042 849678601 849678601 291930164 519539392 519539392 324969411 571609617 728375745 728375745 795293068 795293068 777145733 777145733 782424401 844376546 844376546 173064852 1016485899 1016485899 744441008 355761098 355761098 103994136 19658016 270903586 270903586 66914512 316770002 316770002 72623736 102826528 694332685 694332685 242372772 332212022 332212022 998302000 998302000 997738451 997738451 972405671 972405671 958807748 809707793 968174770 968174770 312238846 318754806 426532192 603927753 603927753 568141136 568141136 546904132 29624544 755284961 755284961 745728780 745728780 1026828423 1026828423 472908622 489635118 932131888 932131888 555429222 347630376 328253978 269780760 120117496 9178176 9178112 70783298 345642570 345642570 276984450 276984450 387149424 477884334 496760430 496760430 383564740 383564740 371198180 371198180 264671564 633613940 633613940 138657984 671289536 671289536 600671685 136390828 147614136 226600136 226600136 210054144 67702092 148625602 436923886 533929628 1054309015 1054309015 844958179 844958179 415247250 240268832 1020356642 1020356642 1004627318 831929478 936260076 936260076 896464222 686481169 426782848 953558006 974391831 974391831 625106973 625106973 34738704 775707521 775707521 306192662 394587571 394587571 1016136427 1016136427 1059722836 1059722836 547883864 547883864 805578798 831984242 831984242 595540461 595540461 107034156 267572220 739297749 739297749 274192512 1035324362 1035324362 506819692 454169142 717986707 717986707 839152739 839152739 621023325 612368457 554841641 624624137 624624137 638005649 788599057 788599057 732054567 396530531 371607934 371607934 1031167355 1031167355 692210688 964798740 964798740 906231835 442898838 784425803 837881188 837881188 460002601 1041968650 1041968650 604041314 604041314 293058732 603271098 884752635 884752635 820613214 953819929 953819929 814867011 814867011 575104152 530911586 530911586 665537605 665537605 622668216 622668216 661417519 661417519 585177175 750076425 985834371 985834371 780644446 502629258 502629258 441875174 867238669 867238669 523412722 622125129 930888472 930888472 879296729 846479923 565500707 298659042 705011912 705011912 463597857 327510234 831132146 831132146 167398479 333612275 808137987 939597087 939597087 662823456 662823456 634614345 634614345 403898918 735841459 735841459 656150305 566304993 753239587 909775357 909775357 751815368 751815368 253417020 253417020 121370424 121370424 21911832 257309344 257309344 325393918 325393918 210449484 443395158 446475764 446475764 878055985 878055985 391328442 353245769 1022422540 1022422540 966058017 966058017 787829124 762514131 762514131 718023829 718023829 690013680 227046764 206207816 318015618 318015618 20732688 44224848 145132224 145132224 231072248 231072248 143719616 852214468 852214468 1040649235 1040649235 796404432 382255810 444670038 514486821 934930299 1008746502 1008746502 692068608 777572820 785665677 1068387070 1068387070 330357376 273603714 156915636 142483332 6872836 811977838 811977838 361243783 975964942 975964942 617138445 1059859649 1059859649 1000948662 1000948662 683468326 422243364 874740019 874740019 827570435 338109168 312560345 575998633 657533483 884228792 884228792 100188803 102878224 102878224 103088256 103088256 44042240 15257792 11109824 11109824 70224128 557083664 727106024 727106024 162501808 783629668 783629668 617949897 170045897 71309448 763891964 763891964 906102660 906102660 496522882 152568772 376829352 698630921 873859329 873859329 411343567 411343567 558055402 899161993 899161993 1027020339 1027020339 456073586 335766128 833634800 1034461979 1034461979 700507379 1023599664 1023599664 846205459 846205459 801432765 801432765 680600133 131096808 448341222 448341222 415303440 712081990 712081990 142697248 167845888 167845888 44932800 44932800 61142128 61142128 117296424 122228968 390008425 390008425 473956494 473956494 751168575 1015334991 1015334991 656451840 453908912 856540769 856540769 323913872 557903009 557903009 108596680 108596680 63776976 29631696 8309632 8309632 134266884 172002576 172002576 149260420 701701073 701701073 584439204 584439204 551686784 293747758 223248058 226597332 226597332 644802517 644802517 261919434 998809181 998809181 840844419 874665115 1023103327 1023103327 902465387 773391558 33628176 120627832 120627832 613081984 690922146 704311954 704311954 722507986 957818448 957818448 411548964 411548964 376761088 814282018 814282018 288049345 145364292 717677652 717677652 946092995 946092995 719729236 484924501 612016963 612016963 806814299 806814299 863095882 863095882 822391040 857961218 857961218 963221692 963221692 654519041 654519041 645013128 111346032 111346032 79574064 79574064 52631240 74217192 86833920 239708097 717699285 717699285 771938781 771938781 587776945 587776945 309855662 806532973 891464344 891464344 471020046 1027282472 1027282472 1015733961 1015733961 1037394763 1037394763 685388764 786209565 786209565 367284586 809642048 946934635 946934635 548435342 428464135 428464135 351802271 498098496 498098496 539429446 539429446 512104542 146201412 530706764 530706764 485176782 91506600 424245486 424245486 294780576 430186798 430186798 335751210 335751210 366684554 413212998 413212998 400041440 204476742 204476742 216082162 532748622 532748622 528482430 528482430 320278534 545261609 545261609 426580520 426580520 605298809 605298809 29434080 507894457 507894457 748214988 748214988 851467281 851467281 795102780 188311040 35651856 35651584 235428500 235428500 73326216 183398852 301822066 301822066 160534916 285597682 726453429 771788205 771788205 673186053 619234508 380925923 170918676 170918676 1011127346 1011127346 364137522 320333858 869022200 869022200 629634088 63672840 63672840 47049936 84377216 130051200 658542232 658542232 570425361 108822752 14222336 74709128 74709128 80132232 80132232 310729920 310729920 734287896 734287896 698401105 578815004 747111501 864831505 864831505 557172795 469951337 553921275 553921275 814743552 814743552 541462624 19282912 27423328 27423328 5953160 84171008 86167848 87326848 87326848 15798784 29543938 278762914 278762914 26011106 292063522 292063522 123917888 123917888 491376516 1069708484 1069708484 756131127 1007179866 1007179866 714005589 377914383 450583684 647054922 647054922 535520927 565367649 565367649 917277268 917277268 604576032 878717229 878717229 987196245 987196245 290849280 965433413 965433413 228074564 1010327141 1010327141 288114666 370471880 370471880 89852600 51823936 51823936 30668576 31470560 85851744 85851744 92012232 118653054 530717350 532975902 950176250 950176250 818337987 696388478 696388478 587432033 685783842 728051306 1049965471 1049965471 978580119 1040063206 1040063206 903748345 918690795 1044133263 1044133263 79436631 689184530 689184530 101646352 101646352 68107272 249043604 249043604 232265372 686168488 686168488 604053513 528705868 528705868 805661080 805661080 320126190 621289600 625550505 826950958 826950958 744673677 610936480 670994433 670994433 555222561 896797475 1048840980 1048840980 805339282 714513172 791968316 812782467 812782467 547740418 433973764 433973764 135824962 51971744 28572928 37038864 284962496 303303186 303303186 158503812 158503812 21111808 45648008 210093784 433347104 433347104 346262088 858945059 989995185 989995185 661177785 661177785 881119067 881119067 716593161 716593161 812014274 812014274 716837527 573967684 136349760 398756864 398756864 260331024 264640764 461088782 461088782 305807592 39786368 442751682 442751682 668256116 668256116 840282195 840282195 620775265 570721633 545693185 545693185 92065704 607540257 607540257 124275432 124275432 80021216 80021216 77672288 69422944 77378208 77378208 19191008 19191008 16370304 29436608 40742272 153429072 153429072 241640961 578395480 709312204 784471513 784471513 549522512 882462686 882462686 216739392 562527416 737189240 780877000 780877000 752754381 618800384 495831084 512752734 512752734 396659296 55838696 87117856 204032676 226665896 226665896 260378584 361505456 364135056 364135056 316592624 316592624 288768482 270655746 851832917 851832917 842756864 842756864 830612287 830612287 690982465 931913970 931913970 390637243 202251276 202251276 629476880 629476880 384877530 388230064 388230064 109451352 808204672 841315387 841315387 837533895 837533895 774240287 1055449880 1055449880 696492230 651351566 670614157 670614157 608732265 634383393 634383393 606238704 606238704 232803240 232803240 251397501 260106892 766618653 783036045 783036045 705702483 721534521 721534521 807450396 807450396 841530000 841530000 1069341922 1069341922 913300596 217506584 273695328 273695328 31537664 9465984 2355776 229632 2885002 68553025 818158337 818158337 711695269 944841351 944841351 739127308 622668945 592076325 578885134 1062239860 1062239860 529919536 529919536 136774400 136774400 212414756 212414756 222164544 234128416 234128416 63180100 134759508 166249956 1071917998 1071917998 661805720 887464231 887464231 776899925 776899925 326106516 438716950 961749208 961749208 753790413 631404556 252216184 252216184 199510788 212896104 227805804 227805804 257893228 370183824 370183824 198121602 467706770 467706770 33628176 33628176 0 0 4 134217732 134217732 134217732 134218880 134218880 130547985 130547985 627590155 1060111167 1060111167 941121687 941121687 674358414 966079587 966079587 1022979358 1022979358 574398528 574398528 605818377 877437103 877437103 756146733 615383333 882958717 1052049978 1052049978 462422646 738317473 738317473 374029720 545321211 545321211 715846726 715846726 337115658 337115658 376545596 640182492 640182492 311020929 766092588 781322330 781322330 834327277 953833281 953833281 729973366 420213514 420213514 294613100 496521632 757268033 757268033 67127724 538844789 634702969 634702969 540161025 670535960 670535960 567906497 794067665 794067665 595996757 595996757 246034464 246034464 244582616 244582616 1037860997 1065650435 1065650435 785861807 785861807 727642981 668587267 304653592 849678601 849678601 497954970 519539392 519539392 290830662 254095722 237169012 147568176 795293068 795293068 253580313 139175180 50529828 22155968 11978816 11978816 83385320 83385320 59950112 89323040 123332280 123332280 121156696 118207672 204482640 265603836 265603836 98379248 80090056 63252536 71565440 71565440 242372772 242372772 216257464 209310540 149603972 135647852 531646115 950797127 950797127 471355154 809707793 968174770 968174770 312238846 1010779664 1010779664 758785511 603927753 568141136 568141136 546904132 221190144 221190144 31245824 6685056 6685056 740430243 905052996 905052996 564335060 932131888 932131888 839037703 839037703 825629475 676507769 676507769 813975086 828932706 828932706 345642570 345642570 276984450 276984450 387149424 477884334 496760430 496760430 383564740 383564740 371198180 541103249 541103249 710065713 710065713 785118404 785118404 594856881 715477800 715477800 147614136 776868733 776868733 481855246 490984262 490984262 436923886 533929628 1054309015 1054309015 861813187 861813187 563171886 877977982 1020356642 1020356642 726323594 894358983 894358983 848038995 455083425 830800016 830800016 953558006 974391831 974391831 731156512 731156512 441973398 710775811 710775811 306192662 394587571 394587571 1016136427 1016136427 328454760 18989368 144704266 479199822 497036040 497036040 612409620 266878440 266878440 778204974 861529779 861529779 220897690 373780745 373780745 506819692 506819692 454169142 717986707 717986707 839152739 839152739 621023325 612368457 554841641 624624137 624624137 78655585 136315332 235554868 369250316 369759258 917729914 925553979 925553979 182999339 692210688 693034149 693034149 508068269 674376332 1013383584 1013383584 465460950 830999301 830999301 95421288 118538808 118538808 336118008 422148304 422148304 476729502 476729502 737536 2880768 2880768 106926413 117809033 292150736 480637936 665537605 1049201366 1049201366 622668216 825008162 874038795 874038795 750076425 985834371 985834371 780644446 502629258 502629258 113709493 896930488 896930488 910645513 910645513 930888472 930888472 841357587 841357587 319235347 298659042 459533470 463597857 463597857 329660530 831132146 831132146 167398479 333612275 808137987 939597087 939597087 662823456 662823456 634614345 634614345 35002960 632955952 649278297 649278297 454568996 303376914 287835426 287835426 584410433 584410433 253417020 253417020 692183300 692183300 660996245 257309344 739660084 739660084 668033116 33951784 80815168 446475764 446475764 878055985 878055985 692324813 353245769 1022422540 1022422540 966058017 966058017 787829124 762514131 762514131 595800177 325573790 325573790 227046764 650796610 922668051 924750235 924750235 363793306 363793306 145132224 127660720 143719616 143719616 852214468 852214468 1040649235 1040649235 701287653 721790160 721790160 444670038 304408900 1008746502 1008746502 556388740 777572820 785665677 1068387070 1068387070 336290848 336290848 839138587 839138587 638974209 898174449 898174449 361243783 97917672 137676480 712393798 712393798 885572811 885572811 816362240 816362240 1064437792 1064437792 30094560 54860880 662014752 662014752 25348185 265310322 1045608671 1045608671 1026297697 1026297697 832056540 832056540 378289680 135986324 541480321 541480321 713194708 713194708 726195328 726195328 31081921 0 0 0 67115136 71702664 71702664 88473632 88473632 209880986 496522882 496522882 152568772 132495766 698630921 873859329 873859329 411343567 809551812 809551812 988001744 988001744 1027020339 1027020339 456073586 508169434 551371254 901818015 901818015 700507379 700507379 684856005 846205459 846205459 704651296 585146833 585146833 735094096 735094096 599844017 599844017 712081990 712081990 142697248 167845888 167845888 48528928 48528928 66861040 66861040 342378409 875101107 875101107 579674778 267191284 200289788 284659054 956833831 956833831 656451840 630296534 375864476 227417196 227417196 109839672 46140400 108596680 108596680 63776976 58899632 63693040 66069760 66069760 172002576 172002576 149260420 440834150 440834150 307861892 307861892 293747758 293747758 223248058 79125440 79125440 280719682 547145040 815565889 998809181 998809181 739022054 88162848 897244448 897244448 622561905 643024896 643024896 548184368 569267441 613081984 615848728 615848728 304948946 304948946 52828464 323645570 323645570 557487300 557487300 814282018 814282018 711104145 711104145 717677652 959656459 959656459 607200009 673508551 673508551 612016963 949638275 949638275 202392221 620807185 822391040 822391040 540489486 677589381 963221692 963221692 654519041 654519041 574167864 102285264 49051392 127446392 127446392 111956784 93984360 78123808 6441216 6441216 3738496 326830033 334331053 587776945 800035022 800035022 356580637 587416808 587416808 471020046 220711714 555955376 595800177 595800177 574957713 574957713 685388764 786209565 786209565 469093780 809642048 953195048 953195048 806564355 428464135 428464135 351802271 498098496 498098496 539429446 539429446 143694080 146201412 270430344 485176782 485176782 410013824 424245486 475881862 475881862 430186798 430186798 335751210 335751210 284636268 224920044 224920044 134219372 204476742 204476742 155326456 395449170 395449170 399835378 399835378 320278534 320278534 131900766 986167322 986167322 730196085 333217888 29434080 507894457 507894457 748214988 748214988 851467281 851467281 795102780 124453260 122032984 264509461 610276225 789846837 789846837 720622133 720622133 301822066 28566368 601904129 601904129 1053475430 1053475430 973078698 960452657 960452657 218553484 662627336 892962610 892962610 364137522 320333858 869022200 869022200 629634088 144277459 791477807 791477807 949543431 949543431 658542232 658542232 432139779 540340193 696331305 696331305 546248832 205760904 205760904 310729920 825494307 825494307 734287896 698401105 646617822 428081501 316588888 316588888 120737682 122839474 553921275 553921275 814743552 814743552 541462624 17854496 268567298 268567298 85200896 339743274 339743274 86167848 25249792 25249792 27264128 31983072 31983072 25042848 25042848 25186880 42107360 42107360 558915792 1069708484 1069708484 756131127 581452267 513907210 337011038 337011038 450583684 647054922 875286625 875286625 625526943 625526943 917277268 917277268 159922308 878717229 878717229 987196245 987196245 290849280 965433413 965433413 228074564 1010327141 1010327141 417889440 371269914 370471880 198400552 51823936 51823936 52688176 56685160 56685160 70477952 70477952 118653054 530717350 532975902 950176250 950176250 818337987 696388478 696388478 587432033 517077601 728051306 741708655 1011876831 1011876831 1040063206 1040063206 903748345 918690795 1044133263 1044133263 1021521971 689184530 689184530 726012036 726012036 767302905 767302905 654347385 96507952 875060458 904300769 914607114 923903122 923903122 898994608 898994608 295181025 621289600 625550505 995639492 1047830463 1047830463 866915509 897863463 1001165679 1001165679 604901664 1048840980 1048840980 353708732 353708732 349710456 349710456 410302338 410302338 159753552 312566914 312566914 190074472 93874364 79098632 372596560 372596560 303303186 313762114 313762114 315539776 315539776 210093784 433347104 433347104 346262088 858945059 989995185 989995185 661177785 661177785 881119067 881119067 806754819 806754819 850531670 850531670 716837527 573967684 400742878 398756864 398756864 165419220 239023966 461088782 690396825 690396825 639638881 381570114 381570114 668256116 959349135 959349135 620775265 620775265 570721633 545693185 545693185 92065704 607540257 607540257 70913024 70913024 20186304 20186304 5507712 10104576 26820832 26820832 19191008 19191008 16370304 29436608 29436608 153429072 210062756 210062756 578395480 578395480 784471513 784471513 517609182 882462686 882462686 964477993 964477993 344410383 351621402 371985690 385483162 385483162 495831084 512752734 512752734 396659296 90071937 151390629 204032676 204032676 149801768 260378584 559474704 996181509 996181509 746843034 710411925 710411925 630867964 240931608 240931608 114073160 110583824 103673944 408201494 408201494 931913970 931913970 638112896 638112896 608822409 132418872 132418872 653656857 899824163 899824163 855730602 808204672 841315387 841315387 837533895 837533895 774240287 442943504 274982681 909314008 950158354 950158354 670614157 608732265 634383393 958889707 958889707 590870337 895309458 895309458 47711952 35465408 589302048 589302048 581063248 581063248 721534521 721534521 630462257 432925392 841530000 841530000 437484580 437484580 58975042 288385720 288385720 273695328 86380792 36794384 61745584 73586624 113293344 113293344 818158337 818158337 711695269 944841351 953145458 953145458 931672156 931672156 578885134 1062239860 1062239860 218928224 93868096 93868096 73962240 31588352 31592928 83605920 84239872 84239872 63180100 134759508 166249956 249815060 249815060 581019968 887464231 887464231 285729183 765898048 765898048 698610021 821375348 821375348 336999544 336999544 295507144 122718824 89129640 121930880 138551200 138551200 117178556 94111824 146047970 146047970 763187597 763187597 171614868 405195202 822501494 822501494 142873200 142873200 882564328 882564328 814668867 541475011 567329248 567329248 627590155 1060111167 1060111167 528549690 268481738 503906582 966079587 966079587 699409513 713215064 713215064 542325896 605818377 877437103 877437103 756146733 615383333 210103334 395741784 505447460 800084747 800084747 747003171 170794260 747287558 747287558 988187522 988187522 337115658 337115658 855790091 855790091 200303242 604302632 676923968 781322330 781322330 834327277 953833281 953833281 729973366 420213514 420213514 294613100 496521632 496521632 229878568 67127724 125546048 125546048 71313288 137405552 646686432 646686432 222644829 794067665 794067665 595996757 595996757 136315136 136315136 134217732 273678978 1037860997 1065650435 1065650435 440143638 432149956 432149956 299942984 112988746 112988746 497954970 500260707 646265117 852368595 852368595 606344666 95641896 95641896 87335840 24431520 625440904 625440904 658903253 658903253 726973632 726973632 708311925 438413862 86083976 525392078 525392078 151126544 262227164 306512070 306512070 265603836 385090682 385090682 194511768 256651464 256651464 71434240 116544192 154374548 154374548 97735080 227651972 227651972 531646115 611236544 611236544 706454594 706454594 378903996 770854990 770854990 1010779664 1010779664 758785511 105390365 43904592 34747520 34747520 221190144 543580513 543580513 751133644 751133644 610433669 905052996 905052996 564335060 429991462 429991462 839037703 839037703 825629475 699790710 974250519 974250519 828932706 828932706 119890608 105019400 101262360 84753432 84620328 352322848 352322848 129516896 154935680 154935680 157075093 541103249 541103249 710065713 710065713 785118404 785118404 594856881 715477800 715477800 75571188 776868733 776868733 481855246 490984262 490984262 367015954 385417936 385417936 447030182 861813187 861813187 563171886 877977982 877977982 566850528 734459238 894358983 894358983 848038995 455083425 830800016 830800016 819494774 1020790479 1020790479 876746308 731156512 541188225 710775811 710775811 358007780 499550510 499550510 758227737 922829082 922829082 656531769 1031066321 1031066321 998428791 388446399 612409620 498017237 498017237 778204974 861529779 861529779 220897690 379048517 379048517 377749576 377749576 302254098 502923192 502923192 646322786 646322786 425408166 799838752 800967541 800967541 621673140 621673140 573495749 728423879 730896827 730896827 917729914 925553979 925553979 933632379 933632379 329708987 325793202 457778358 674376332 1013383584 1013383584 465460950 830999301 830999301 225686707 997812143 997812143 688499890 535660636 255003344 844173459 844173459 181165782 695480833 695480833 522255712 997662622 997662622 629541867 512197834 1049201366 1049201366 374939995 825008162 874038795 874038795 344998977 411514950 411514950 159641700 159641700 159485952 396175186 896930488 896930488 910645513 910645513 342293000 57628602 840702882 840702882 574367801 574367801 123978208 629800385 629800385 329660530 302324088 323019184 323019184 317903168 337899786 899779466 899779466 149297184 809664578 809664578 276844675 35002960 544614529 843332234 896910043 896910043 629483625 914654523 914654523 913121667 584410433 108907440 174065872 692183300 692183300 660996245 795058498 795058498 739660084 668033116 455418762 220210130 220210130 390086986 390086986 692324813 704734216 772521989 817337668 817337668 413684674 388254602 951814497 951814497 650471054 595800177 570462636 570462636 67769352 650796610 922668051 924750235 959236116 959236116 363793306 127660720 436014138 584636615 584636615 650598812 956856438 956856438 919816830 850198930 1072086382 1072086382 262461889 608360197 684976067 684976067 679612485 679612485 419434595 232073964 307531426 336290848 336290848 839138587 839138587 638974209 898174449 898174449 334500194 881331720 881331720 815008323 712393798 885572811 885572811 816362240 816362240 1064437792 1064437792 633633163 595852033 662014752 970431146 970431146 748818765 1045608671 1045608671 1026297697 1026297697 832056540 832056540 378289680 135986324 541480321 541480321 713194708 713194708 726195328 726195328 31081921 686749476 702779581 788652093 788652093 71702664 76074816 713031684 713031684 666246009 596347880 221608768 267135600 267135600 454029914 454029914 770740898 770740898 809551812 809551812 988001744 988001744 426931659 176580464 177484988 508169434 855160956 1066338199 1066338199 882480346 882480346 716703129 716703129 786677848 786677848 677589381 585146833 735094096 761446449 788851837 788851837 772800704 54725488 34017392 63223968 63223968 331843970 331843970 572856993 572856993 358714105 875101107 875101107 579674778 721235333 721235333 455486862 956833831 956833831 630296534 902093708 902093708 818042622 818042622 572370313 572370313 501011268 354487728 195127776 195127776 287598880 447705524 447705524 327824976 280647254 268618704 688729617 688729617 861361060 861361060 673923618 134475780 151655460 151655460 288306016 722714645 722714645 837015891 837015891 537052192 537052192 90177192 345214178 436564612 436564612 643024896 753871924 753871924 569267441 569267441 241740496 64481368 100694320 100694320 84274760 84274760 82148056 557487300 557487300 555111140 552061088 711104145 711104145 135795681 959656459 959656459 607200009 673508551 673508551 692075539 949638275 949638275 801998794 801998794 861933344 861933344 1064306690 1064306690 1007961741 1007961741 860129591 587337777 102285264 102285264 49051392 127446392 127446392 111956784 101297384 101297384 204113601 680791493 680791493 840343440 840343440 576597822 800035022 800035022 356580637 587416808 991479108 991479108 960630951 960630951 841385722 595800177 574957713 707621637 707621637 632694298 632694298 469093780 469093780 953195048 953195048 806564355 103483163 80291016 80291016 206795914 419439656 434471750 434471750 310715100 350347722 350347722 80863944 410013824 471518740 471518740 475881862 475881862 154398272 225124908 225124908 208352652 165675204 214245376 214245376 210045028 134219372 10490176 126505556 218813484 218813484 186240060 453895220 1034264178 1034264178 890446314 986167322 986167322 730196085 822100544 822100544 152082944 152082944 152082944 152082944 151443492 199239640 199239640 124453260 122032984 264509461 610276225 789846837 789846837 720622133 720622133 10780992 10780992 601904129 601904129 1053475430 1053475430 973078698 960452657 960452657 552187968 662627336 892962610 892962610 50857008 1072 33554896 327153762 327153762 215445400 791477807 791477807 949543431 949543431 657458948 657458948 432139779 540340193 696331305 696331305 546248832 211558960 211558960 284215521 825494307 825494307 584488570 646617822 646617822 510728082 340385660 340385660 120737682 864316024 864316024 463569080 147985092 87568328 87568328 22909952 268567298 268567298 85200896 339743274 339743274 86507680 92340584 92340584 86057256 65020120 31983072 25042848 25042848 29993792 91101824 880503688 880503688 558915792 489634036 497024622 558565961 558565961 873439302 873439302 537348225 571034626 875286625 875286625 625526943 625526943 1057368996 1057368996 913519515 158668863 75632704 88408288 88408288 75835464 226824196 226824196 138548460 231346308 417889440 417889440 371269914 228063898 200938980 200938980 189816596 189816596 185228512 185228512 111011024 111011024 106229112 129625248 313315049 629983387 629983387 378873305 70655714 574013280 574013280 87815976 87815976 245410832 1011876831 1011876831 1035481972 1035481972 860304637 860304637 1009255567 1021521971 1021521971 553917633 553917633 726012036 726012036 767302905 767302905 654347385 932873790 932873790 904300769 914607114 923903122 923903122 898994608 898994608 295181025 438436377 438436377 995639492 1047830463 1047830463 866915509 897863463 1001165679 1058276111 1058276111 479464014 737255609 781709798 818629112 1036659566 1036659566 934238052 934238052 218634096 312566914 312566914 190074472 93874364 79098632 372596560 372596560 270267906 313762114 313762114 315539776 315539776 371591938 371591938 306315392 306315392 33361524 173158912 173158912 44709572 948963856 981731415 981731415 806754819 806754819 850531670 850531670 468227368 468227368 466389076 466389076 324034400 324034400 310251168 350567979 690396825 690396825 639638881 381570114 381570114 400969426 959349135 959349135 605490772 629424760 629424760 218690704 218690704 92176400 111166632 111166632 70913024 70913024 70526112 74007072 74007072 87701120 87701120 86180992 24955904 10846208 6340992 21047936 21047936 57518744 210062756 241837633 241837633 140509572 140509572 653385437 719058117 719058117 605179152 964477993 964477993 878198469 708587904 708587904 677517765 604164760 243001480 33941520 49748185 90071937 90071937 151390629 540519696 974903073 974903073 960231207 929371175 996181509 996181509 746843034 710411925 710411925 630867964 307413008 240931608 8653504 8653504 618137716 848572014 848572014 809607206 823698980 823698980 638112896 804067757 804067757 887412154 887412154 899824163 899824163 855730602 838909971 679637107 679637107 696274080 696274080 442943504 442943504 274982681 909314008 950158354 950158354 90824924 82031856 48366720 958889707 958889707 590870337 895309458 895309458 48685213 166293661 750956422 1056577503 1056577503 581063248 524760640 524760640 917729568 917729568 314708178 314708178 317928402 317928402 58975042 288385720 288385720 91451720 86380792 36794384 61745584 73586624 279158912 279158912 115030760 255592614 430511330 430511330 953145458 953145458 931672156 931672156 613641802 252103253 272825384 520614020 520614020 93868096 84789328 56393736 21000480 83605920 84239872 84239872 34855840 34855840 104989824 992831902 992831902 591452580 740540445 740540445 940156043 940156043 923371583 923371583 821375348 821375348 701080656 701080656 295507144 203948544 173015868 173015868 77376968 77376968 56120624 56120624 55188576 55188576 763187597 763187597 863135761 958865781 958865781 822501494 814619715 814619715 882564328 882564328 814668867 541475011 567329248 577766433 621282568 869278640 869278640 528549690 268481738 503906582 503906582 562440672 562440672 713215064 713215064 377188761 23160514 941671490 941671490 420341836 556910384 849611091 849611091 1072078021 1072078021 800084747 747003171 334313903 843360502 843360502 988187522 988187522 816984226 289608515 855790091 855790091 987491247 1070435952 1070435952 676923968 165939684 823700708 823700708 673715556 673715556 1573636 422641708 422641708 219684898 137005544 137005544 33554448 33554448 37765136 37798032 173015104 546430980 546430980 782186848 792201021 792201021 27520381 20323104 158160068 160432228 822398150 822398150 629937827 629937827 1003623159 1003623159 603981099 603981099 491915084 369498138 902193200 902193200 667983665 646265117 852368595 852368595 606344666 709236885 709236885 754136013 754136013 784335069 784335069 658903253 658903253 726973632 953865895 953865895 837467553 493659406 853299196 931997809 931997809 881345627 881345627 365019370 365019370 385090682 652930508 797184364 797184364 256651464 55065280 116544192 197855592 197855592 97735080 227651972 227651972 348130056 928190996 928190996 842338551 706454594 882054368 882054368 770854990 752564074 901318823 901318823 693129348 180721349 53350469 547386945 547386945 543580513 543580513 751133644 751133644 679516544 610433669 26645056 26645056 279189472 354948736 542676794 571523601 571523601 699790710 974250519 974250519 184164720 184164720 119575840 119575840 102950952 119137848 119137848 51202568 34112528 129516896 277614624 277614624 169757186 47961236 21424288 21424288 197237492 197237492 88618592 46162480 51478736 51478736 8987584 164997472 164997472 104165100 36210000 115102228 217488860 217488860 63066552 123900144 370436744 370436744 372801551 674482069 674482069 566850528 734459238 734459238 683360257 713997908 713997908 739313122 805146759 819494774 1020790479 1020790479 876746308 807224464 807224464 580203411 550028357 358007780 499550510 499550510 758227737 922829082 922829082 656531769 1031066321 1031066321 998428791 388446399 388446399 498017237 498017237 534714048 536612862 536612862 277275138 475077121 512309325 757947634 949724807 949724807 825030173 825030173 319262576 71768640 77336136 799838752 800967541 800967541 763504324 750070605 629165061 728423879 730896827 730896827 664013433 1041793759 1041793759 933632379 933632379 973115063 973115063 506217373 559949079 559949079 419565606 106320424 410137398 410137398 225686707 997812143 997812143 688499890 535660636 213172686 844173459 844173459 181165782 773706881 773706881 640684288 997662622 997662622 909247233 370154243 101843746 43068128 658516792 772377949 772377949 578863185 551995587 1013256457 1013256457 749070700 362932584 362570098 396175186 396175186 304416272 563091008 903925451 903925451 321654066 854465201 900427112 900427112 631605648 343108784 814133441 814133441 283967834 283967834 323019184 323019184 317903168 396177018 891373210 891373210 554779912 809664578 809664578 812970770 853664211 947085591 947085591 896910043 896910043 629483625 914654523 914654523 948327173 948327173 596301209 623038761 623038761 207655181 141623842 795058498 795058498 377495584 455418762 455418762 220210130 220210130 390086986 390086986 440477020 704734216 772521989 817337668 817337668 413684674 388254602 951814497 951814497 863540208 814404675 570462636 570462636 377616408 377616408 648203537 782028045 959236116 959236116 156240782 130338064 436014138 584636615 584636615 650598812 973834374 973834374 850198930 850198930 1072086382 1072086382 262461889 608360197 684976067 886084103 886084103 679612485 675665608 857080986 857080986 473738556 457249573 578549649 807264721 807264721 467944463 467944463 458754690 881331720 881331720 815008323 538394624 228453996 630884958 630884958 822083619 843104321 843104321 633633163 595852033 595852033 970431146 970431146 748818765 415241019 185598084 238625152 238625152 26216300 85722116 85722116 34146304 30425776 27078240 27078240 389145910 861941164 861941164 605973083 686749476 751740497 788652093 980517725 980517725 939573255 713031684 713031684 666246009 596347880 221608768 267135600 267135600 938491075 938491075 922855434 922855434 417485896 684510405 1016745728 1016745728 342496650 624806933 733406621 733406621 855160956 1066338199 1066338199 882480346 882480346 876822600 876822600 786677848 786677848 1013462300 1013462300 518476932 761446449 788851837 788851837 772800704 54725488 38933120 63223968 63223968 331843970 823444848 823444848 572856993 810058960 810058960 380117033 344843482 721235333 721235333 455486862 361759282 950504016 950504016 902093708 902093708 818042622 818042622 572370313 1013160969 1013160969 810888978 810888978 675411843 629892397 543192373 543192373 545429314 718878528 718878528 688729617 688729617 861361060 861361060 673923618 134475780 151655460 151655460 288306016 722714645 722714645 837015891 837015891 537052192 537052192 771837956 771837956 436564612 436564612 139700242 753871924 753871924 250288373 241740496 241740496 123473016 123473016 76415896 84274760 84274760 82148056 111732736 111732736 111910784 407005345 679413527 679413527 589946896 862984214 862984214 948426918 948426918 700836967 692075539 692075539 297025255 801998794 801998794 861933344 861933344 1064306690 1064306690 1007961741 1007961741 860129591 587337777 34567424 34567424 9824832 33944320 33944320 42864960 101297384 101297384 204113601 680791493 680791493 840343440 840343440 823084345 335603879 642324782 963298326 963298326 991479108 991479108 960630951 960630951 841385722 489219418 356561018 707621637 707621637 880416917 956424231 956424231 184406323 923802680 923802680 817938627 25190528 80291016 80291016 206795914 206795914 171989616 465752304 465752304 358038186 358038186 278261930 278118920 471518740 471518740 333264624 212926180 403191174 403191174 225124908 208352652 25309672 214245376 214245376 210045028 134545646 99889504 126505556 353505834 353505834 340793922 453895220 1034264178 1034264178 890446314 583011200 840585809 860246163 865650291 865650291 793345371 472615811 657155910 1037667248 1037667248 489799750 687291333 687291333 769539405 770521160 770521160 23143552 23143552 546505248 546505248 291562467 19300640 174083248 174083248 524065326 524065326 706357381 706357381 588325425 552187968 317912227 831545619 831545619 846538670 846538670 778300738 982393226 982393226 215445400 101195168 68121248 93581928 367088272 367088272 892617270 892617270 505970720 505970720 44132636 44132636 211558960 211558960 444185054 444185054 1067829301 1067829301 568355860 902665728 902665728 340385660 340385660 232907244 864316024 864316024 716481202 549345984 740072736 740072736 22909952 11174240 27284800 27284800 44078416 44078416 86507680 92340584 92340584 268900665 924918075 924918075 344134259 344134259 816597266 816597266 880503688 880503688 686445252 704431061 704431061 558565961 879587421 879587421 873439302 849508747 849508747 554521664 554521664 372045090 822873123 1057368996 1057368996 913519515 319628948 341825764 341825764 667971826 667971826 713243231 713243231 923281305 923281305 716311411 695741836 782055785 782055785 780193501 763437661 228008149 542444076 542444076 542394920 111011024 111011024 106229112 402982950 471132168 471132168 539041792 539041792 849620835 849620835 888266817 888266817 838413619 481126299 400904148 228331116 228331116 308812026 494092256 604053948 604053948 981520618 981520618 197519350 157452192 157452192 151407492 139907782 286820962 810293912 932873790 932873790 412353565 898537930 898537930 382025787 846234112 846234112 353641996 473305694 1067977054 1067977054 791692308 791692308 137401145 18090528 18090528 1058276111 1058276111 328991552 737255609 781709798 818629112 1036659566 1036659566 934238052 934238052 448462012 430332140 430332140 193686596 286408070 286408070 205426308 255901884 361007318 361007318 179963236 173605988 268495040 371591938 371591938 306315392 306315392 567741099 567741099 554049697 629145705 948963856 981731415 981731415 499201630 525242298 525242298 682791074 682791074 549996864 466389076 466389076 324034400 324034400 310251168 399221776 399221776 365085424 365085424 133544216 107004312 107004312 669040672 669040672 495047072 629424760 629424760 100663296 100663296 92176400 111166632 111166632 40638888 40638888 70526112 74007072 74007072 87701120 87701120 86180992 135275297 674883333 699180933 699180933 678503365 702146880 702146880 698027140 698027140 720777861 720777861 653385437 816533266 816533266 305400594 538058752 878198469 878198469 708587904 708587904 677517765 604164760 468619708 468619708 443435422 635656300 635656300 229163472 540519696 974903073 974903073 960231207 1042026015 1042026015 829433419 511908777 82084984 235012764 307413008 415531144 415531144 270053584 110365272 618137716 848572014 848572014 809607206 823698980 823698980 630679763 804067757 804067757 887412154 887412154 443844776 608616850 838909971 838909971 327190531 133250338 696274080 696274080 787183169 787183169 694212007 485193149 479957666 479957666 263230228 263230228 145474680 436014022 436014022 129314288 311529090 311529090 48685213 566501872 750956422 1056577503 1056577503 419061954 524760640 524760640 917729568 917729568 314708178 430114580 430114580 419472516 331609764 331609764 7534624 14742048 29555072 131783872 131783872 13555448 279158912 279158912 125844736 125844736 250618010 250618010 168511488 148145948 311237198 613641802 680672278 680672278 663427153 520614020 520614020 110940840 110940840 56393736 23700608 23700608 25941728 25941728 29413472 197597716 197597716 992831902 992831902 591452580 740540445 740540445 940156043 940156043 923371583 923371583 450703062 658101360 701080656 701080656 255852960 255852960 235016508 173015868 258446616 258446616 72702852 456696018 456696018 449353298 979590208 979590208 863135761 958865781 958865781 805622114 814619715 814619715 118043387 523497887 523497887 282329827 43026240 577766433 621282568 869278640 869278640 124846314 411567174 411567174 726357755 942394176 942394176 738256900 738256900 504725525 370857298 941671490 941671490 651996894 556910384 849611091 849611091 1072078021 1072078021 948361287 1067581119 1067581119 843360502 843360502 437917206 816984226 816984226 526385598 526385598 517645766 987491247 1070435952 1070435952 475530894 274206348 823700708 823700708 434742055 205264556 348933346 422641708 422641708 342356426 281444104 211130744 168328260 238671940 238671940 254019900 263769664 563799680 659729105 782186848 792201021 792201021 27520381 29874816 158160068 546063872 822398150 822398150 830477571 830477571 1003623159 1003623159 1005510255 1005510255 491915084 369498138 902193200 902193200 667983665 329478323 308576640 302303250 575679617 709236885 709236885 754136013 754136013 784335069 784335069 571072608 539568277 678178767 953865895 953865895 837467553 493659406 853299196 931997809 931997809 881345627 881345627 365019370 365019370 245713340 652930508 797184364 797184364 382748684 55065280 79049796 213345528 213345528 203753476 203753476 76917584 348130056 928190996 928190996 842338551 893077022 893077022 1036096912 1058341447 1066402059 1066402059 901318823 693129348 180721349 53350469 547386945 547386945 537776705 538124545 538124545 679516544 679516544 814781156 814781156 1033112175 1033112175 877058593 814271622 571523601 571523601 959174539 959174539 802128219 802128219 742287432 504764168 228332368 228332368 119137848 473195012 473195012 338028810 253923668 277614624 277614624 169757186 177057408 177057408 21424288 21662384 88618592 212558464 212558464 167299044 237836368 237836368 210424700 210424700 333989298 333989298 290493710 457332390 457332390 253691346 76933704 515317218 515317218 474068716 603999360 603999360 55643184 51126960 683360257 683360257 713997908 713997908 739313122 739313122 438027326 874856080 874856080 497254181 807224464 807224464 580203411 49773765 14864832 161480936 442515684 497066494 497066494 222396426 362887594 362887594 281494178 5342016 543580224 543580224 619853826 619853826 879829682 879829682 611455881 277275138 475077121 883057028 883057028 949724807 949724807 825030173 825030173 602729936 602729936 274413186 727054617 727054617 763504324 763504324 750070605 629165061 557799424 77908296 8437824 604161168 1041793759 1041793759 797160501 797160501 973115063 973115063 506217373 508953364 989017047 989017047 855704045 855704045 600049905 1021840678 1021840678 353601962 302601744 338730742 338730742 474506651 474506651 145621726 845036052 978119943 978119943 640684288 920652418 920652418 370154243 581240096 583115873 658516792 772377949 853067475 853067475 551995587 1013256457 1013256457 944076900 362932584 362570098 362570098 1036249542 1036249542 966306163 903925451 903925451 321654066 854465201 900427112 900427112 631605648 343108784 814133441 814133441 55186608 111046648 111046648 107664792 94484818 396177018 891373210 891373210 554779912 762888396 974055431 974055431 853664211 947085591 947085591 403185680 436806678 436806678 870671507 870671507 948327173 948327173 596301209 623038761 623038761 207655181 536879249 706454336 706454336 686552517 548492932 110101080 110101080 98566632 364970759 789652477 789652477 1044138169 1044138169 469855369 469855369 370280736 370280736 1051197591 1051197591 863540208 1038231978 1038231978 355821166 377616408 578834474 931319931 931319931 898007131 848205840 93062616 589888867 832243004 832243004 342867765 342867765 973834374 973834374 908394991 908394991 305473681 70527872 70527872 810424010 887230923 887230923 886084103 675665608 675665608 857080986 857080986 473738556 457249573 578549649 807264721 807264721 788902111 788902111 746940479 458754690 683259244 683259244 538394624 817963203 817963203 655132831 1059243348 1059243348 843104321 603116529 622893137 622893137 1023674970 1023674970 571884450 1036309085 1036309085 276089425 276089425 112567491 933772573 933772573 413274687 617619745 935560160 935560160 463606199 861941164 861941164 605973083 575334480 751740497 751740497 980517725 980517725 939573255 410179981 215145356 215145356 142329940 106669724 189039476 240861815 973724463 973724463 964245115 922855434 417485896 684510405 1016745728 1016745728 342496650 624806933 733406621 733406621 286131582 531110946 860106524 860106524 853148271 876822600 876822600 349779272 349779272 1013462300 1013462300 939561214 939561214 702957625 492113928 492113928 102106888 102106888 50792448 325779464 325779464 823444848 823444848 41605008 810058960 810058960 362460293 344843482 344843482 240511180 281093016 361759282 950504016 950504016 304200374 304200374 550142909 550142909 22401120 1013160969 1013160969 810888978 810888978 675411843 629892397 584634720 543192373 545429314 718878528 718878528 87608008 87608008 199102888 199102888 105793588 35313168 50516016 50516016 282514560 282514560 38886170 290660016 290660016 37794850 495939738 771837956 771837956 311820812 311820812 202381910 511705182 511705182 84879008 84879008 92012144 123473016 123473016 17746040 53404529 552211905 552211905 647132080 647132080 539152456 539152456 679413527 679413527 589946896 862984214 862984214 948426918 948426918 944019509 728029316 675734274 831856614 990565890 990565890 718574551 992662839 992662839 868402687 868402687 673541946 387202947 660670785 660670785 34567424 1367040 1435136 17298720 36622336 85288848 85288848 23511176 15254976 248690694 766708708 823084345 1059260470 1059260470 844191511 963298326 963298326 460068392 460068392 365479146 365479146 138555632 138555632 46239744 249251712 649408012 880416917 956424231 956424231 890374830 923802680 923802680 817938627 588648465 185505796 678856540 1013068227 1013068227 864410358 465752304 465752304 358038186 358038186 278261930 278118920 387636738 387636738 333264624 212926180 403191174 403191174 155189412 204726408 204726408 140692388 134545600 134545646 134545646 271420448 273708526 378672542 378672542 341971338 340793922 543332018 543332018 307945234 811014352 914819355 914819355 865650291 865650291 793345371 472615811 657155910 1037667248 1037667248 489799750 687291333 687291333 769539405 770521160 770521160 771755541 771755541 546505248 546505248 291562467 19300640 174083248 174083248 524065326 524065326 169220628 120986424 120986424 79650936 120771384 454107906 1041399606 1041399606 846538670 778300738 982393226 982393226 352581520 352581520 68121248 93581928 367088272 367088272 892617270 892617270 241207699 16868384 16868384 245606752 245606752 127061222 444185054 444185054 1067829301 1067829301 568355860 902665728 902665728 214189262 204996642 268435458 830851820 830851820 716481202 549345984 740072736 740072736 24791680 24791680 28630400 28630400 13650176 16042944 16042944 101526616 101526616 268900665 924918075 924918075 382023394 821646712 859822427 903938539 903938539 686445252 686445252 704431061 704431061 52354608 879587421 879587421 623268372 849508747 849508747 629229870 708071466 851218238 851218238 961849456 961849456 848521926 848521926 341825764 878572170 878572170 775994901 713243231 713243231 923281305 923281305 780148868 695741836 782055785 782055785 780193501 763437661 255852732 542444076 542444076 542394920 240682764 71880440 84460550 402982950 471132168 471132168 1044518933 1044518933 849620835 849620835 888266817 888266817 838413619 784948090 400904148 422976294 490081198 668744214 838286701 838286701 604053948 981520618 981520618 1035371303 1035371303 861202582 861202582 766485131 766485131 810293912 907679259 907679259 822365536 820957443 547647761 580233251 588395128 588395128 353641996 473305694 1067977054 1067977054 791692308 791692308 137401145 562714246 562714246 390730938 390730938 328991552 401930110 447073136 447073136 349926922 349926922 97726468 448462012 448462012 430332140 430332140 193686596 286408070 286408070 343740080 343740080 361007318 361007318 27803906 37148112 278152208 278152208 95454304 103179400 278147753 567741099 567741099 554049697 629145705 746983674 746983674 499201630 499201630 525242298 525242298 682791074 682791074 549996864 417990274 14421504 26217728 26217728 14495344 399221776 909455259 909455259 575490819 339744916 943757333 943757333 1019510854 1019510854 713093186 148294233 777326728 777326728 208451833 78647856 78647856 59094920 27445632 31748576 32464512 32464512 9624128 21601184 21601184 18792576 153781696 674883333 699180933 699180933 678503365 702146880 702146880 698027140 698027140 720777861 720777861 547449033 816533266 816533266 305400594 349510618 381151762 383463760 385299226 385299226 370828314 362817136 468619708 468619708 443435422 635656300 635656300 715967472 715967472 505384232 189208902 842416910 1042026015 1042026015 867575166 867575166 374799961 418008446 1033144832 1033144832 415531144 404532820 918798095 918798095 780978104 756767324 39930240 669308802 669308802 630679763 388088955 218629164 723522757 723522757 657248626 1064123407 1064123407 408365398 1060648631 1060648631 909379280 713457243 787183169 965301683 965301683 603562176 603562176 479957666 263230228 268390072 268390072 436014022 436014022 258412564 311529090 311529090 178790769 628590529 628590529 556669195 692261937 692261937 656813480 656813480 969228593 969228593 736464211 736464211 961329792 961329792 586290448 331609764 71544008 30382240 71003464 131783872 131783872 127197104 127197104 86679824 313262480 313262480 238894336 238894336 168511488 243531848 278528598 471533120 680672278 680672278 663427153 424312397 337599188 134116808 164419908 164419908 23700608 138138948 143700640 154391136 154391136 197597716 197597716 257279112 257279112 169949752 223306512 240124572 240124572 34416780 71838814 450703062 450703062 315631814 312524834 289457424 255852960 255852960 235016508 188842272 258446616 258446616 72702852 456696018 456696018 449353298 979590208 979590208 851663728 851663728 948250695 948250695 805622114 564533601 31785217 270923938 270923938 29369536 13107392 72401532 560252706 764988906 764988906 71877768 411567174 411567174 726357755 942394176 942394176 738256900 738256900 647522368 639986441 639986441 651996894 651996894 105755272 105755272 385059608 385059608 944136906 948361287 1067581119 1067581119 806263831 806263831 437917206 437917206 806776497 806776497 796400162 1072841343 1072841343 816993177 816993177 475530894 631014796 631014796 806375270 806375270 682150240 348933346 348933346 342356426 342356426 622470361 622470361 335953287 999836395 1048716335 1048716335 1068120321 1068120321 680056546 680056546 478367476 520548030 865113613 865113613 607014792 607014792 546063872 19006084 830477571 830477571 403837446 294542126 1005510255 1009666819 1009666819 418203270 832599154 832599154 543229953 652701705 652701705 944441809 944441809 114744024 114744024 71616648 192855076 542261012 571072608 571072608 92409960 696287232 696303717 696303717 57224584 118230072 227282334 983566412 983566412 554047534 672478052 901976299 901976299 363012239 197465036 197465036 382748684 382748684 278725696 278725696 213345528 213345528 203753476 203753476 98648232 337975491 709626853 709626853 588979689 893077022 893077022 1036096912 1058341447 1066402059 1066402059 834140259 100718672 100718672 891903810 891903810 889883211 889883211 956378478 956378478 824248611 620641576 814781156 948133990 1033112175 1033112175 996182807 996182807 827344431 992063764 992063764 959174539 802128219 802128219 742287432 504764168 349966026 308216480 311199688 473195012 473195012 338028810 353563650 353563650 336327172 403524758 421058736 421058736 135655984 134586548 134586548 212558464 212558464 169684756 237836368 237836368 210424700 210424700 333989298 333989298 290493710 457332390 457332390 253691346 101327192 515317218 515317218 474068716 603999360 603999360 202675800 612239360 612239360 539232513 539232513 71690376 194417850 399626450 399626450 621934002 757926394 757926394 409321604 284529412 774811718 774811718 734628334 904293622 1034679663 1034679663 526585904 526585904 581960177 581960177 558896001 558896001 543580224 543580224 619853826 619853826 879829682 879829682 611455881 67272960 805427270 883057028 883057028 778117533 752036610 36250896 16820259 602729936 992516983 992516983 591224544 591224544 537041408 538233345 538233345 537041408 562466462 562466462 533032062 973335786 973335786 474530885 0 0 726829188 726829188 1065750569 1065750569 1061857387 1061857387 920383116 932631904 932631904 1021840678 1021840678 118368184 54623984 338730742 338730742 371969478 371969478 116758784 845036052 978119943 978119943 484706766 920652418 920652418 892895892 892895892 583115873 583115873 297656459 853067475 853067475 272703618 684118146 944076900 944076900 227012718 151253028 174894496 1036249542 1036249542 966306163 604844105 538191873 129974136 272769216 272769216 1042884806 1042884806 761887909 761887909 576913762 604963916 797995557 797995557 772065309 677305429 622852292 584148116 608223996 608223996 201395712 974055431 974055431 805616153 940933184 940933184 838934547 436806678 466903473 564290807 564290807 579045317 591214277 591214277 741269705 769730864 769730864 536879249 865135549 967174503 967174503 966619954 521201048 449860864 449860864 384430938 789652477 789652477 1044138169 1044138169 469855369 957940896 957940896 360232893 1051197591 1051197591 1044422777 1038231978 1038231978 34603536 34603536 578834474 931319931 931319931 898007131 464769654 582885201 589888867 832243004 832243004 342867765 615078054 615078054 769655158 908394991 908394991 305473681 70527872 70527872 810424010 887230923 887230923 809894373 642997404 642997404 337436696 951137094 951137094 992870724 992870724 300157410 48891042 788902111 788902111 746940479 421140075 749363776 749363776 682222917 817963203 817963203 655132831 1059243348 1059243348 707397008 603116529 622893137 622893137 1023674970 1023674970 571884450 1036309085 1036309085 276089425 276089425 112567491 933772573 933772573 413274687 617619745 935560160 935560160 463606199 389029984 389029984 25232186 306410576 306410576 144354310 4983936 4507776 40271888 329403928 329403928 445662282 499681258 499681258 412192764 112789247 973724463 973724463 964245115 831672400 84944600 377190230 437892051 437892051 436248706 436248706 1020403776 1020403776 1018742058 1018742058 860106524 860106524 853148271 141301892 141301892 549707932 734138613 1065691601 1065691601 939561214 939561214 702957625 711983796 711983796 621020445 102106888 6816640 469967012 1024232737 1024232737 942844388 642641474 889432068 889432068 1019741391 1019741391 1019351247 1019351247 932421454 932421454 427721214 445158434 574170018 724130436 750000652 750000652 634182445 634182445 149536065 59788194 157860352 157860352 584634720 584634720 552714944 552714944 448507989 441463828 563521105 798376669 887246935 887246935 810946402 286922274 18010656 68995244 139121796 152651848 152651848 599838801 599838801 324588722 990687340 1057069173 1057069173 699744825 1009857285 1009857285 381763658 443186268 443186268 931769148 931769148 746187396 157888328 97553992 53404529 552211905 552211905 647132080 660738489 660738489 828419073 828419073 864101558 864101558 443546135 189905637 819085616 944019509 944019509 728029316 675734274 831856614 990565890 990565890 718574551 992662839 1061252098 1061252098 868402687 673541946 388006206 663002633 663002633 1984776 1367040 1435136 17298720 36622336 85288848 85288848 23511176 6897704 203059008 766708708 766708708 1059260470 1059260470 844191511 488268168 488268168 476391056 39384576 679797524 679797524 458773607 52502832 31795680 528402028 749724066 785198301 785198301 890374830 890374830 639764120 681890881 681890881 588648465 732187119 794306810 1013068227 1013068227 943744594 269830152 269830152 287045154 387577378 387577378 387573306 336660000 186960410 183547536 183547536 330937426 435638752 435638752 487234566 487234566 411437634 411437634 89477804 479841794 492336642 492336642 405305216 408154758 408154758 144438852 215246740 281165392 606952210 811014352 914819355 914819355 417477066 631848664 631848664 58984560 58984560 50611216 50611216 3214160 10486080 15558336 15558336 260780336 330895159 771755541 771755541 321084426 309602178 9449280 11891520 143780225 685769157 708844141 859183651 1042548765 1042548765 1025776155 918327882 874767915 874767915 1041399606 1041399606 926418747 736394696 514115222 500653824 500653824 786622423 786622423 511736215 280636762 379412265 379412265 211837051 103914240 185820276 262574100 262574100 245606752 249669092 249669092 212412440 368349070 456056118 456056118 530672606 530672606 214189262 204996642 268435458 462768514 468837366 468837366 311999382 283532272 134403528 134403528 31529056 31529056 119947420 206084300 206084300 199274944 199274944 101526616 113579080 653997656 653997656 589042408 821646712 859822427 903938539 903938539 837966692 837966692 188140519 167909140 471045286 471045286 338198208 542019584 542019584 629229870 629229870 708071466 851218238 959076822 961849456 961849456 848521926 848521926 777624577 878572170 878572170 775994901 517118536 517118536 349354146 780148868 780148868 650191065 600049905 600049905 243404892 244706016 255852732 255852732 226624228 240682764 240682764 115638416 71880440 57993488 403031984 406391718 1044518933 1044518933 763264513 693227540 693227540 636038457 784948090 784948090 389191194 422976294 490081198 668744214 838286701 838286701 547461312 547461312 415446926 1035371303 1035371303 861202582 861202582 766485131 766485131 618346185 609816640 822365536 822365536 820957443 547647761 580233251 583816146 583816146 349314370 946545941 986455429 986455429 879756171 879756171 703343692 810591406 810591406 496521229 390730938 909199076 932221868 932221868 447073136 265493382 298197728 438234762 438234762 399759798 399759798 263976572 263976572 386218652 386218652 343740080 374267034 374267034 360616978 193070960 193070960 278152208 278152208 273915658 103179400 266284968 266284968 136939436 476432418 505339422 505339422 470828614 424545488 424545488 295862982 447237578 447237578 331006642 331006642 301095376 279280002 287359266 328937536 328937536 59348715 909455259 909455259 575490819 339744916 943757333 943757333 1019510854 1019510854 872771784 462109731 777326728 777326728 622235936 82233624 563924257 563924257 27445632 31748576 32464512 32464512 13945792 9624128 6890240 6890240 153781696 153781696 143547492 145394048 145394048 29634912 27785536 11533632 8020992 8020992 8020992 3285504 2306304 285022044 513414726 513414726 381151762 381151762 346358602 345139210 529023940 529023940 423191700 423191700 359248290 591322929 591322929 715967472 715967472 505384232 189208902 110539386 314098852 411072014 867575166 867575166 374799961 656189568 1033144832 1033144832 404532820 404532820 918798095 918798095 780978104 756767324 697418724 697418724 618703316 618703316 737462205 743415517 743415517 723522757 657248626 1064123407 1064123407 408365398 1060648631 1060648631 909379280 713457243 746189764 965301683 965301683 603562176 603562176 253097040 253097040 268390072 268390072 178100368 258412564 258412564 255166736 255166736 178790769 628590529 628590529 575159874 692261937 692261937 656813480 656813480 969228593 969228593 736464211 736464211 961329792 961329792 586290448 182461952 71544008 81458800 99875000 99953640 99953640 127197104 127197104 347627387 942703085 942703085 935643449 855348443 855348443 302326410 612630529 612630529 545785928 328477347 328477347 87673072 134116808 244532404 244532404 550470497 550470497 166261216 166261216 948016467 948016467 971008963 971008963 340451453 414850262 755467750 875517587 942127616 942127616 104631304 203996684 203996684 135318672 173541012 173541012 186210052 186210052 173359764 188842272 188842272 188541348 188541348 157700884 157700884 139959456 191469412 635609645 959819904 959819904 851663728 948250695 948250695 870440245 831455425 831455425 396477339 481777259 481777259 66675568 66675568 49022784 49022784 109094596 177823832 177823832 169410576 594244008 594244008 134334528 646973976 907839577 907839577 874260483 874260483 772089885 772089885 942227741 942227741 310536657 846465939 938691243 938691243 819196611 819196419 806263831 806263831 686209518 805376000 806776497 806776497 796400162 1072841343 1072841343 816993177 816993177 840228148 840228148 755837997 806375270 806375270 682150240 274762890 274762890 253277748 294995619 622470361 622470361 335953287 999836395 1048716335 1048716335 1068120321 1068120321 680056546 680056546 478367476 520548030 865113613 865113613 607014792 607014792 545703553 30726305 19006084 403837446 403837446 269092356 140172928 1009666819 1009666819 541912328 875373955 875373955 807598090 652701705 652701705 944441809 944441809 889131164 567061901 774483385 774483385 542261012 751093965 751093965 778147861 778147861 696303717 862164340 862164340 349486681 349486681 983566412 983566412 189473133 672478052 901976299 901976299 792567684 915465923 915465923 1024411335 1024411335 579731586 278725696 250472444 250472444 249487204 152686276 139469532 139469532 233517724 345863400 345863400 935868772 935868772 69411856 639771392 639771392 899840304 899840304 57837376 856353715 891903810 891903810 889883211 889883211 956378478 956378478 824248611 620641576 539287714 948133990 948133990 675454634 996182807 996182807 827344431 992063764 992063764 609850687 481384142 481384142 336243726 349966026 349966026 308216480 311199688 311199688 109134138 336013320 353563650 353563650 336327172 403524758 983904629 983904629 540610673 579153088 579153088 167454304 167454304 588918721 588918721 150811392 536929601 536929601 164824292 151602080 151602080 73474440 459456528 459456528 271057248 271057248 180491666 93717517 249196653 684802076 684802076 651289305 612239360 539232513 906349314 906349314 404793611 399626450 731144313 731144313 906763317 906763317 537237790 941889728 941889728 914786505 914786505 904293622 1034679663 1034679663 526585904 526585904 581960177 581960177 558896001 612303153 612303153 123682488 0 0 269604930 269604930 713537561 1049026579 1049026579 805427270 920600283 920600283 510996243 143394948 143394948 1053214425 1053214425 992516983 685383930 591224544 571900016 696479765 699797605 699797605 562466462 562466462 533032062 973335786 973335786 966737513 966737513 694123257 705724560 705724560 1065750569 1065750569 1061857387 1061857387 920383116 932631904 932631904 889527058 889527058 328283250 293515698 281836064 172309332 172309332 643244553 643244553 237328400 867787077 926172488 926172488 708135748 708135748 892895892 892895892 217075515 132939776 939550302 983393107 983393107 867511629 822206499 296650851 186960432 28386144 36944000 401506452 744745398 744745398 613687304 604844105 538191873 129974136 340984160 340984160 1042884806 1042884806 1043761212 1043761212 576913762 604963916 797995557 797995557 772065309 677305429 675849446 675849446 608223996 608223996 240912048 571333248 571333248 679775813 679775813 838934547 838934547 330428021 567857969 567857969 564290807 579045317 591214277 591214277 741269705 769730864 769730864 340845101 865135549 967174503 967174503 966619954 521201048 449860864 449860864 384430938 305374034 305374034 454928784 642474760 642474760 1007616209 1007616209 360232893 547017609 1044422777 1044422777 992026935 906171196 527673894 54625250 324133000 640470297 908104587 908104587 919615291 919615291 582885201 369820240 557299288 557299288 615078054 799605060 803283453 1000944877 1000944877 643368687 858129058 858129058 567941897 731428722 731428722 608438409 642997404 642997404 337436696 951137094 951137094 992870724 992870724 901325497 901325497 639842107 977847890 977847890 421140075 749363776 749363776 682222917 235137948 235137948 101205378 356181002 707397008 707397008 583603285 564733281 225028136 225028136 369352856 657941234 934724041 934724041 613468651 126648424 92294264 92294264 28576608 3222112 34611728 174174236 174174236 292221850 292221850 937076080 937076080 853033043 680580837 903423723 903423723 960237351 960237351 762834599 371536761 1017676141 1043335107 1043335107 882764198 882764198 559729858 97381608 80688496 84944600 857738443 927213067 927213067 754958053 754958053 574646255 1020403776 1020403776 1018742058 1018742058 839635141 839635141 916217917 916217917 901039731 901039731 865730813 1065691601 1065691601 916590939 321163916 948112324 948112324 711983796 621020445 565582689 572660513 572660513 1024232737 1024232737 942844388 642641474 889432068 889432068 1019741391 1019741391 1019351247 1019351247 932421454 932421454 730106441 730106441 1058340655 1058340655 895850010 750000652 634182445 801357258 801357258 695796273 823823893 823823893 1008238749 1008238749 906117428 814294083 814294083 441463828 563521105 798376669 887246935 887246935 810946402 286922274 18010656 68995244 139121796 152651848 152651848 709810717 709810717 524639806 990687340 1057069173 1057069173 1020363567 1009857285 1009857285 381763658 443186268 443186268 931769148 931769148 746187396 157888328 97553992 36515088 36029440 4452480 622462864 660738489 660738489 828419073 828419073 864101558 864101558 443546135 848005666 848005666 819085616 136822788 405203858 446972320 446972320 595905478 1009252623 1009252623 725663925 1061252098 1061252098 454972872 388006206 388006206 663002633 663002633 78000272 40409088 90959160 90959160 67597856 127269072 127269072 37900608 9964944 231282668 564224380 564224380 255231164 255231164 174113172 293383180 476391056 476391056 39384576 973282272 973282272 458773607 486129262 486129262 528402028 749724066 785198301 890678176 890678176 372129306 582649366 681890881 681890881 323129501 732187119 794306810 913165783 943744594 943744594 832678504 840290755 840290755 815466518 780467714 778301853 574685198 270717186 472696888 472696888 330937426 435638752 435638752 487234566 487234566 411437634 411437634 277912256 479841794 492336642 492336642 405305216 408154758 408154758 144438852 277491172 458086566 606952210 846616781 846616781 568135405 692526785 692526785 768562734 768562734 351707188 351707188 784390587 784390587 593807793 593807793 652372169 812338471 904095614 904095614 273946384 309602178 309602178 268457730 3394240 810883398 810883398 708844141 859183651 1042548765 1042548765 1025776155 918327882 874767915 874767915 700355610 926418747 926418747 736394696 285894350 500653824 500653824 786622423 786622423 511736215 280636762 379412265 379412265 688393059 688393059 553367332 553595996 553595996 235993596 249669092 262484672 262484672 343730054 456056118 456056118 530672606 530672606 438900386 438900386 471613596 471613596 411946806 677553317 677553317 611399304 611399304 410706118 410706118 348902348 128688596 641823768 738246669 738246669 713272344 201659740 300167451 653997656 653997656 594675649 594675649 627171561 627171561 896749739 896749739 837966692 957219669 957219669 471045286 748729273 748729273 392299360 298783920 689636168 866530201 866530201 804663515 959076822 959076822 960367023 960367023 927356574 927356574 777624577 37749760 38274192 150421580 150421580 568541739 953578090 953578090 885646539 600049905 743040248 743040248 243404892 185810432 647310272 753197712 753197712 115638416 115638416 95208448 422853102 425984512 425984512 439354134 439354134 377446416 693227540 693227540 636038457 823138912 823138912 274219080 192938172 208147016 353504728 389365318 389365318 530942210 530942210 415446926 488226406 488226406 278464728 312026322 312026322 426303396 426303396 421710884 421710884 370195132 71438472 324298824 324298824 288080466 283066050 53359712 946545941 986455429 986455429 879756171 879756171 703343692 810591406 810591406 496521229 302384790 909199076 932221868 932221868 396497274 226447404 298197728 438234762 438234762 496084316 496084316 263976572 263976572 386218652 402653636 402653636 374267034 374267034 412522036 412522036 329908854 285229408 273915658 273915658 341230920 341230920 266284968 136939436 476432418 505339422 505339422 470828614 450410006 424545488 295862982 447237578 447237578 331006642 331006642 301095376 279280002 287359266 328937536 328937536 396345952 396345952 126192496 126192496 109761624 109761624 843414096 843414096 872771784 872771784 790298676 790298676 622235936 622235936 82233624 703618469 703618469 147638244 147638244 541128832 542298753 542298753 541477376 13775872 18334272 158469253 557062085 703994853 703994853 697416677 699347680 699347680 684073028 684073028 709373381 709373381 638970393 644648472 644648472 513414726 513414726 402719296 402719296 142705168 143778372 529023940 529023940 423191700 423191700 285194444 285194444 272858960 277137474 375406874 915890010 915890010 886220429 912379545 912379545 617061907 508293170 508293170 927277304 927277304 360710336 360710336 155198528 92279416 625848160 626602996 626602996 697418724 697418724 618703316 618703316 737462205 743415517 743415517 254375889 653972540 740954981 740954981 343020426 883633074 883633074 750464263 654353241 658051809 658051809 422785830 422785830 334458128 159288520 159288520 134545408 10535232 230679936 230679936 197300140 112420552 112420552 94058088 89204208 59315520 842180266 842180266 450573267 723103124 723103124 575679765 691204390 691204390 689421536 689421536 85083302 416453216 416453216 88785032 88785032 99875000 99953640 99953640 100946208 100946208 347627387 942703085 942703085 935643449 855348443 855348443 390071246 612630529 612630529 545785928 328477347 328477347 55050288 123538960 244532404 600698097 697928340 697928340 166261216 166261216 948016467 948016467 971008963 971008963 340451453 414850262 755467750 875517587 942127616 942127616 319215666 319215666 291523172 317413742 317413742 293661410 278086560 709825081 709825081 173359764 688392709 688392709 155372948 626165265 928931323 928931323 650697584 191469412 959819904 959819904 403714562 403714562 870440245 1041429016 1062218271 1062218271 486590878 486590878 561466208 595617848 595617848 93012584 92984424 224479024 224479024 177823832 728463844 728463844 594244008 874663498 874663498 907839577 907839577 874260483 874260483 772089885 772089885 942227741 942227741 310536657 846465939 938691243 938691243 819196611 819196419 499939451 686209518 686209518 805376000 805376000 792974339 792974339 776567292 686156229 137499396 638038070 840228148 840228148 755837997 755837997 256461845 66110448 105955560 171325580 253277748 253277748 214126628 175248276 592246168 592246168 299812813 261548762 155587808 155587808 617252000 823268515 823268515 123389606 538722627 538722627 993560984 993560984 593772959 560075939 740363077 740363077 410332590 410332590 832049669 955555983 955555983 541912328 875373955 875373955 807598090 614811857 614811857 582104267 889131164 889131164 567061901 774483385 774483385 541569100 751093965 751093965 778147861 778147861 294598594 862164340 862164340 349486681 578288529 915126683 1010249310 1010249310 815878883 992370639 992370639 826747008 915465923 915465923 1024411335 1024411335 579731586 119758772 250472444 250472444 249487204 152686276 230952706 230952706 1024009263 1024009263 986186829 947922162 947922162 623420750 877863273 877863273 899840304 899840304 116377952 856353715 856353715 839844738 30094560 23403840 695808 1098240 2097920 2097920 3145984 417128696 523054398 523054398 340694840 911873690 911873690 743576356 743576356 190057140 190057140 129962680 129962680 265031628 265031628 264832544 25691232 52724512 52724512 20187936 5447808 184103040 184103040 189669539 983904629 983904629 540610673 579153088 579153088 153227424 153227424 588918721 588918721 150811392 536929601 536929601 164824292 151602080 151602080 145826628 459456528 459456528 271057248 271057248 262147084 262147084 266111132 714080284 714080284 651289305 709175940 709175940 906349314 906349314 404793611 162172676 731144313 731144313 906763317 906763317 537237790 941889728 941889728 914786505 914786505 281273371 101503114 31793400 103024920 130099680 130099680 60364144 60364144 612303153 612303153 123682488 828404467 828404467 650067290 650067290 713537561 1049026579 1049026579 719375438 920600283 920600283 428922402 737826308 737826308 1053214425 1053214425 691175874 685383930 284850584 723669265 723669265 699797605 699797605 336980866 240946405 873145418 873145418 847926319 966737513 966737513 694123257 437927938 437927938 58855536 659983080 659983080 860305587 860305587 600710385 600710385 568067297 568067297 564987873 293515698 281836064 718406549 718406549 643244553 643244553 605389137 867787077 926172488 926172488 708135748 708135748 127214388 109069742 1007753768 1007753768 939550302 983393107 983393107 867511629 822206499 296650851 174248400 146874564 146874564 401506452 835531992 933901435 933901435 820354536 820354536 68629512 340984160 340984160 546479417 546479417 1043761212 1043761212 369103128 369103128 72025656 37884048 47350272 135831570 675849446 675849446 486600258 486600258 240912048 571333248 748146765 914894913 914894913 815613017 412937217 330428021 567857969 567857969 841626258 862083360 862083360 195129396 195129396 631681520 631681520 65231209 118005472 118005472 274597328 274597328 95503888 113935000 113935000 69313616 48079872 48079872 75233160 642474760 642474760 1007616209 1007616209 278420219 314573010 321408360 480087463 480087463 713609029 713609029 54625250 324133000 324133000 908104587 908104587 919615291 919615291 369820240 369820240 774247440 774247440 321525815 1050673193 1050673193 1000944877 1000944877 643368687 858129058 1057489038 1057489038 567941897 608438409 868344831 1072816371 1072816371 293785698 597006402 597006402 335386691 569095355 901325497 901325497 639842107 977847890 977847890 1009664024 1009664024 658770105 658770105 610927721 404396831 732829634 732829634 504696149 411089016 443806614 443806614 368074982 982790321 982790321 808507930 934724041 934724041 621869682 621869682 607742467 890934355 890934355 637534768 637534768 844218368 844218368 900735816 900735816 937076080 937076080 853033043 680580837 903423723 903423723 960237351 960237351 949048068 371536761 1017676141 1043335107 1043335107 882764198 882764198 559729858 97381608 853243278 992686465 992686465 927213067 927213067 754958053 754958053 574646255 574646255 556226073 977934066 977934066 394863738 394863738 916217917 916217917 901039731 996694206 996694206 1030498733 1030498733 914349599 475419141 948112324 948112324 595596904 555090240 565582689 572660513 572660513 335749248 92500002 649307168 649307168 386451282 216306724 173730432 369796226 369796226 225923390 310620258 348211921 730106441 730106441 1058340655 1058340655 895850010 462968296 508151616 1029784625 1029784625 695796273 823823893 823823893 1008238749 1008238749 906117428 814294083 814294083 371866960 374391450 374391450 522322554 522322554 595784245 699759429 699759429 604920925 604920925 554538693 331223908 713983793 713983793 524639806 610246428 874838302 1020363567 1020363567 902224107 620923074 1056047726 1056047726 182991983 159647844 68290560 68290560 73942536 349873282 349873282 621466665 883634995 883634995 580948736 647753936 765998288 765998288 801586420 801586420 289619442 956405622 956405622 702619670 547389303 859953926 859953926 959638269 959638269 1009252623 1009252623 725663925 725663925 251793408 75628984 65147376 31461872 128955528 128955528 78000272 46144848 90959160 107978800 107978800 127269072 127269072 63324384 38715624 259689706 1014006674 1014006674 926466067 455148196 641919760 641919760 271609993 402999952 402999952 973282272 973282272 439808668 486129262 537919136 537919136 376660251 421000782 1066660479 1066660479 676356537 583143550 583143550 528617681 323129501 323129501 327436792 341885322 341885322 285264238 832678504 840290755 840290755 815466518 780467714 778301853 574685198 418743718 472696888 472696888 187221300 419133892 419133892 143202308 143202308 10880000 336142628 336142628 277912256 273078402 347945284 443750406 443750406 211087500 211087500 277491172 583600613 583600613 846616781 846616781 776085669 776085669 692526785 768562734 928512699 1028999727 1028999727 924195387 784390587 593807793 593807793 652372169 812338471 904095614 904095614 189015076 311194000 311194000 276447826 269360130 810883398 810883398 686986053 645213544 645213544 642067785 560989089 107219513 18609696 405911370 435172888 435172888 471409324 471409324 115418568 115418568 353903360 355018026 573219664 573219664 547092033 547092033 494928196 688393059 688393059 553367332 553595996 553595996 235993596 212050544 262484672 262484672 139341440 168656492 228568084 228568084 220880904 438900386 469762062 471613596 471613596 806617315 834669059 834669059 611399304 611399304 410706118 410706118 348902348 128688596 641823768 738246669 738246669 713272344 570974216 300167451 347684691 347684691 594675649 594675649 353356162 552045968 896749739 896749739 408821267 957219669 957219669 419433244 748729273 748729273 574230847 298783920 689636168 866530201 866530201 804663515 506280732 643035801 960367023 960367023 927356574 927356574 609396757 374446096 475054734 475054734 150421580 839163015 953578090 953578090 885646539 430134561 743040248 743040248 185810432 216191436 647310272 753197712 753197712 201401052 612368713 612368713 422853102 643908153 643908153 543877521 377446416 705020977 705020977 539367681 548176339 823138912 880186439 880186439 569327073 762290275 762290275 671113320 757072105 912803108 912803108 738383536 738383536 563843184 361020448 312026322 312026322 330246000 330246000 330219632 337592960 343805826 343805826 338100546 338100546 283066050 283066050 350494850 350494850 124259016 503426792 503426792 467455734 394080186 394080186 414311238 414311238 604850816 604850816 514079282 393554874 393554874 226447404 218283948 297622240 297622240 496084316 496084316 270981378 270981378 147115478 402653636 402653636 313839702 185997844 412522036 412522036 329908854 285229408 33823776 50992176 341230920 341230920 246039676 25712258 21170324 10232722 44948482 450410006 450410006 67637888 193231340 278133168 293806498 316392368 316392368 311852946 311852946 19896032 322860594 322860594 396345952 396345952 126192496 126192496 109761624 109761624 981496208 981496208 552065751 512382594 790298676 790298676 540595049 183660600 8963124 703618469 703618469 147638244 147638244 541128832 542298753 542298753 541477376 13775872 18334272 158469253 557062085 703994853 703994853 697416677 699347680 699347680 684073028 684073028 709373381 709373381 638970393 644648472 644648472 309400416 280179522 402719296 402719296 416803482 519365198 519365198 353420170 353420170 447555552 447555552 380209916 272858960 277137474 375406874 915890010 915890010 886220429 912379545 912379545 915278987 915278987 835200134 927277304 927277304 368905078 368905078 173870280 858504823 858504823 780739677 780739677 710124552 118980608 118980608 79433300 154557304 154557304 158884112 209401432 653972540 740954981 740954981 343020426 883633074 883633074 750464263 657306338 658051809 658051809 636045000 633147369 628547032 218844424 239036512 239036512 223679632 230679936 230679936 197300140 233015456 233015456 140936476 633162931 633162931 876953635 876953635 1006641668 1006641668 723103124 672721281 817113892 959872906 962122240 1015244333 1015244333 814403660 416453216 88785032 88785032 9453672 128322368 128322368 130053408 291103328 291103328 489685232 519046110 519046110 468714486 468714486 390071246 403701762 403701762 402653700 402653190 521146514 521146514 470995592 140109021 600698097 697928340 706830657 722047797 722047797 154722352 154339168 142660372 134250864 51962928 998199424 998199424 18090528 542559190 969691200 969691200 944216050 944216050 964090630 1068247039 1068247039 916321934 709825081 709825081 373034530 688392709 688392709 419498170 626165265 928931323 928931323 650697584 471347005 661381673 1002669026 1002669026 896037822 896037822 1041429016 1062218271 1062218271 486590878 486590878 561466208 595617848 595617848 93012584 92984424 224479024 224479024 953155975 953155975 728463844 483059203 874663498 917769051 917769051 346739544 381082904 1042242834 1042242834 418508484 283207065 918431316 918431316 551701658 348530264 43719378 41159568 324065354 618722632 618722632 216495553 621129728 640445488 845872266 845872266 448403286 448403286 796714306 796714306 269947982 885142054 885142054 558632097 419825095 252707388 289407646 289407646 184162260 184162260 632501097 632501097 1008128505 1053458406 1053458406 838077411 838077411 1046037329 1046037329 823268515 823268515 123389606 235936032 303588687 993560984 993560984 593772959 560075939 950342861 950342861 489929284 807674664 832049669 879247535 879247535 810347786 810347786 805853314 805853314 614811857 816238040 816238040 338371664 338371664 262886416 237351168 184340436 184340436 141676832 141676832 113597736 96250960 368640672 368640672 560823506 560823506 578288529 915126683 1010249310 1010249310 815878883 992370639 992370639 826747008 826747008 370964626 370964626 318767154 277649328 277649328 35978592 35978592 14220928 143395936 230952706 230952706 1024009263 1024009263 986186829 975717056 975717056 623420750 877863273 877863273 724042036 676512021 676512021 807137154 807137154 84273192 565226701 1028334477 1028334477 699552300 435868520 759767522 759767522 84608195 274462338 274462338 340694840 911873690 911873690 743576356 743576356 190057140 190057140 129962680 132653058 358166154 358166154 306974528 320449944 320449944 104169754 371571464 371571464 383306656 383306656 293640384 293640384 16786432 53094592 562443344 562443344 55315632 55315632 49418368 49418368 141177680 141177680 141059460 18400800 65226480 145826628 145826628 284060736 284060736 110938938 107369408 262147084 262147084 266111132 714080284 714080284 592445684 709175940 709175940 604055583 604055583 439848972 604011085 604011085 162868276 571332360 571332360 539451495 839416192 839416192 627701920 736085018 736085018 610054277 610054277 407367775 102764568 849372305 849372305 60364144 52576304 75503368 76678728 828404467 828404467 650067290 650067290 583008091 756039692 760267297 760267297 495594157 727046090 727046090 737826308 782522926 782522926 691175874 691175874 284850584 284850584 723669265 723669265 523638772 336980866 336980866 180786890 873145418 873145418 847926319 847926319 790490675 692064304 721556021 721556021 575804148 718275201 741223100 741223100 662386617 419443261 658061456 658061456 568067297 564987873 7961216 190257632 718406549 718406549 597048116 638618128 638618128 872768025 872768025 660676731 653263833 363874809 346343754 734216344 1007753768 1007753768 717244480 820006087 820006087 761315757 761315757 404148715 764535433 764535433 540091313 538034304 835531992 933901435 933901435 820354536 820354536 699630594 690851912 690851912 546479417 546479417 993926967 993926967 381342237 641986269 641986269 162233604 721958621 721958621 877423848 985738995 985738995 490858626 520636604 520636604 748146765 914894913 914894913 874015761 538035720 135327894 443002756 443002756 841626258 862083360 862083360 171755296 223247112 631681520 631681520 236243484 236243484 118005472 273761152 273761152 95503888 83683824 83683824 72112256 72112256 469518112 469518112 449104086 436211248 833225286 833225286 278420219 143638582 417107204 480087463 480087463 918216467 918216467 269432833 100815264 28216368 48802672 48802672 907478442 907478442 575815450 28707348 774247440 774247440 746769413 1050673193 1050673193 682105193 682105193 218245260 457186730 1057489038 1057489038 537795849 537795849 868344831 1072816371 1072816371 438050322 438050322 948168916 988446502 988446502 569095355 329962776 305710866 667509739 667509739 1009664024 1009664024 658770105 658770105 610927721 404396831 732829634 732829634 667367673 411089016 478200090 939540523 939540523 982790321 982790321 808507930 808507930 649542489 764134272 764134272 922779716 922779716 890934355 898484836 898484836 844218368 844218368 900735816 900735816 269000963 545294017 944243718 944243718 739248135 1020599821 1020599821 949048068 949048068 872940555 872940555 70853379 11084560 50397960 129338787 972605027 1007811179 1007811179 992686465 992686465 720996777 720996777 644705457 644705457 527450370 816109802 816109802 709557818 227798850 394863738 394863738 1048121307 1048121307 932355948 996694206 996694206 1030498733 1030498733 1011877941 1011877941 634652746 696389745 769799848 769799848 642462873 666609305 666609305 777863827 777863827 649307168 806089225 806089225 101188144 101188144 138649676 272820896 430989330 438546726 474276994 474276994 285920516 285920516 265168472 299372573 333162061 508151616 1029784625 1029784625 560886145 560886145 550163649 21214273 19091712 408341460 408341460 172841494 348155025 1052475553 1052475553 930096386 930096386 822617320 885072075 885072075 604920925 604920925 554538693 331223908 713983793 713983793 113264888 610246428 728050101 728050101 708837525 708837525 502281132 1056047726 1056047726 672297407 1042695056 1042695056 734006900 345671427 805877323 805877323 849472338 883634995 883634995 580948736 356800810 315009056 656062272 801586420 801586420 289619442 956405622 956405622 702619670 547389303 859953926 859953926 959638269 959638269 472062882 205920396 174358748 251793408 251793408 258134460 258134460 587596553 597819401 597819401 46144848 46144848 61393504 107978800 107978800 25198880 63324384 63324384 42792928 259689706 1014006674 1014006674 926466067 455148196 641919760 641919760 271609993 402999952 402999952 394986712 394986712 575242372 705291285 705291285 537919136 657015964 657015964 1066660479 1066660479 797577338 797577338 869143900 869143900 189532200 189532200 1007238400 1007238400 727537566 644967937 138674216 594307348 594307348 462460996 417333702 417333702 404750528 418743718 518789294 518789294 187221300 233907180 289260972 413663406 413663406 472720586 478225664 482383466 482383466 156948132 347945284 443750406 443750406 211087500 365210710 459050396 583600613 583600613 500962606 840040496 840040496 776085669 252823180 141656752 928512699 1028999727 1028999727 924195387 504512565 33572864 8437760 8437760 272698944 273204354 273949696 273949696 311194000 311194000 276447826 269360130 876965835 876965835 70804619 821563267 821563267 642067785 560989089 292561354 292561354 16742378 106061480 106061480 361937842 361937842 376237176 376237176 408746987 671537157 671537157 573219664 547092033 547092033 494928196 494928196 698595648 698595648 162215232 162215232 125979288 212050544 212050544 191131410 341162862 441935346 441935346 513593986 513593986 354541860 469762062 469762062 224166206 806617315 834669059 834669059 448283540 662176680 990904887 990904887 878707373 738889993 738889993 537025105 211550217 570974216 570974216 98982344 299052890 299052890 132083448 353356162 353356162 103064352 93997376 97111008 317954770 585541437 585541437 419433244 334041072 939596472 939596472 485034023 295312144 688008708 951949671 1031555397 1031555397 1025433135 1033987955 1033987955 856037427 609396757 848842434 848842434 611895177 880341535 880341535 839163015 839163015 438030186 438030186 287770548 650224888 650224888 144636637 216191436 589656964 658905976 658905976 585303521 612368713 612368713 109118120 643908153 643908153 543877521 505996350 705020977 705020977 539367681 548176339 548176339 880186439 880186439 569327073 762290275 762290275 671113320 757072105 912803108 912803108 738383536 902578656 902578656 892247531 279709131 279446850 7145538 6266240 829767443 829767443 545111426 812276226 812276226 338100546 79702146 84480026 350494850 614534889 924581963 924581963 964815015 964815015 852059128 350848904 414311238 414311238 877367810 877367810 850833110 850833110 393554874 244076774 276164000 297622240 297622240 273810688 308897618 317244882 317244882 375915930 375915930 105567384 105567384 562328 25330752 25330752 96865096 96865096 33823776 79875792 109731744 109731744 26908208 0 0 493885338 493885338 413064638 441015438 441015438 272683650 272683650 45224784 45224784 18939968 311852946 311852946 19896032 322860594 322860594 351137226 375531290 375531290 298324578 180742608 405090830 981496208 981496208 552065751 512382594 512382594 195002534 183660600 183660600 8963124 28629184 28629184 24253344 13945312 7422976 14019264 29675906 293335970 293555520 293555520 141040196 146049860 155575332 155986144 155986144 32323856 42947952 67450328 67450328 125829312 151349596 259836266 415772310 415772310 405119495 464593782 758164335 758164335 632654652 632654652 519365198 892928522 892928522 600908529 544861147 844734890 865130135 865130135 511840350 265007855 213931661 1057932542 1057932542 700602521 915278987 915278987 835200134 835200134 623452224 623452224 368905078 222772704 858504823 858504823 780739677 780739677 710124552 212277888 237407092 237407092 154557304 154557304 336073381 922812871 922812871 1044980591 1044980591 618697991 273176010 428030269 558703220 850712019 850712019 636045000 636045000 633147369 628547032 341624194 239036512 239036512 223679632 338281674 338281674 135537364 308637778 308637778 140936476 633162931 633162931 876953635 876953635 1006641668 1006641668 672721281 672721281 817113892 959872906 962122240 1015244333 1015244333 814403660 337094305 156236524 694334365 694334365 205266228 773194204 773194204 291103328 291103328 365720298 365720298 1017253438 1017253438 652740057 475005582 813892241 813892241 789779533 805901000 805901000 521146514 470995592 187348480 188608116 556399472 706830657 722047797 722047797 866374115 866374115 945934679 945934679 413129009 998199424 998199424 559989365 542559190 969691200 969691200 944216050 944216050 964090630 1068247039 1068247039 916321934 474851082 208480268 373034530 373034530 392169602 419498170 419498170 21102752 270917218 270917218 471347005 1021761752 1021761752 1002669026 896037822 896037822 322569361 67113032 67113032 81145928 81145928 14105280 8587904 8501376 5716608 40309268 141896580 141896580 953155975 953155975 461901870 483059203 826902885 917769051 917769051 140773764 1016142224 1042242834 1042242834 875967108 875967108 918431316 918431316 775900881 341221074 41159568 423496475 423496475 618722632 618722632 595762300 75761681 103304634 845872266 845872266 448403286 541006135 796714306 1072702191 1072702191 885142054 885142054 630144105 419825095 252707388 289407646 289407646 279102610 304858022 632501097 632501097 1008128505 1053458406 1053458406 838077411 838077411 1046037329 1046037329 869191750 906938465 906938465 613605006 731298921 800171677 800171677 705764141 482661161 950342861 950342861 489929284 807674664 807674664 879247535 879247535 810347786 810347786 349972681 347125128 347125128 816238040 816238040 539339152 138928284 237351168 237351168 171125248 171125248 141676832 141676832 75835176 73849224 368640672 368640672 596544770 596544770 240641101 223740428 223740428 745978784 745978784 934417962 934417962 618133937 389171256 537493128 549837073 812796144 812796144 377744280 35978592 152702976 152702976 203890252 203890252 92833556 254668092 966279814 966279814 975717056 975717056 553729792 547881228 724042036 724042036 676512021 676512021 807137154 807137154 84273192 904933572 1028334477 1028334477 699552300 435868520 759767522 759767522 811267700 811267700 471390599 1025295769 1025295769 923554875 862978103 862978103 890805263 932023483 1041735770 1041735770 462041048 358166154 306974528 320449944 320449944 146166028 371571464 371571464 383306656 383306656 293640384 588349617 588349617 729295609 729295609 154176212 60342368 60342368 684459621 684459621 171578452 685368385 685368385 406217598 464593818 464593818 334705650 334705650 318560520 369136560 369136560 337427848 333133554 680661573 680661573 777061116 777061116 638921233 638921233 604055583 604055583 439848972 833821298 833821298 328610659 571332360 1001379086 1001379086 805327264 805327264 627701920 736085018 736085018 610054277 610054277 407367775 102764568 849372305 849372305 47227216 79889200 130557816 130557816 186780519 848697939 848697939 665135481 740337242 756039692 760267297 760267297 495594157 727046090 727046090 635530921 796056025 796056025 753618317 564447585 879494364 879494364 139645684 160555456 160555456 153092388 5692324 67108928 818033868 1007232015 1007232015 944890503 944890503 692064304 721556021 721556021 710023181 718275201 741223100 741223100 662386617 419443261 658061456 658061456 273811593 152857472 152857472 35038276 149260276 557489456 557489456 638618128 638618128 872768025 872768025 660676731 653263833 363874809 346343754 734216344 734216344 717244480 717244480 820006087 858685604 858685604 761315757 404148715 764535433 764535433 559256689 559256689 538685537 565570401 565570401 220341605 699630594 749141039 749141039 690851912 487626595 479438956 993926967 993926967 456204320 641986269 641986269 743333564 743333564 721958621 877423848 985738995 985738995 490858626 537427976 537427976 169356308 907906576 907906576 874015761 806945728 873513483 873513483 478184005 291000356 291000356 284849024 179127872 223247112 566344180 566344180 236243484 320938992 320938992 331630080 331630080 326103730 326103730 319233546 379812078 379812078 469518112 469518112 449104086 1065667398 1065667398 355931142 355931142 257472544 417107204 460837079 460837079 918216467 918216467 430544484 100815264 90780808 830157219 830157219 907478442 907478442 831030363 831030363 818827569 746769413 819106567 819106567 768230649 768230649 361241057 319161396 790255664 790255664 290841111 1027768990 1027768990 608834697 855756917 855756917 438050322 438050322 948168916 988446502 988446502 449714580 449714580 81838536 758126518 910824603 910824603 379867035 209034710 833579560 833579560 373943945 111671640 667367673 958480384 958480384 478200090 939540523 939540523 600300242 738461709 738461709 220405820 503703488 764134272 872530744 922779716 922779716 263632903 898484836 898484836 867818762 655434297 98137352 98137352 411600450 411600450 944243718 944243718 739248135 1033308939 1033308939 901065579 808527624 922379561 922379561 687443408 551046765 844570182 844570182 972605027 1007811179 1007811179 918408989 918408989 1059636543 1059636543 644705457 644705457 745842552 816109802 959847866 959847866 411878540 295805518 416305308 1048121307 1048121307 932355948 238425307 235670556 1041789056 1046214303 1046214303 1011877941 709128716 696389745 769799848 769799848 642462873 666609305 666609305 777863827 777863827 357893770 806089225 806089225 190975168 190975168 1039263602 1039263602 896727461 814043505 579022929 474276994 285920516 285920516 265168472 269102592 269102592 438111688 885600134 885600134 560886145 560886145 550163649 51551712 32395824 408341460 408341460 578145424 578145424 1052475553 1052475553 930096386 930096386 822617320 885072075 885072075 495263312 495263312 306217018 540164288 835116239 835116239 746230316 441392548 441392548 574693380 708837525 708837525 149371332 1058176980 1058176980 910650548 1042695056 1042695056 734006900 345671427 861421728 861421728 849472338 881257027 881257027 615696688 560778176 560778176 366422297 576087624 637342489 670669249 670669249 34868817 195555460 327200000 416307330 416307330 32813248 560154676 711457173 711457173 184856993 222318784 222318784 258134460 258134460 587596553 597819401 597819401 117591304 131950248 131950248 85066560 123608760 123608760 75822704 172491456 172491456 139199504 135334980 396873272 396873272 970895562 970895562 467512704 467512704 372574780 372574780 358942750 928448176 928448176 705291285 705291285 138356609 657015964 657015964 178790829 114295512 797577338 797577338 869143900 869143900 189532200 189532200 1007238400 1007238400 881877160 644967937 891444320 891444320 581573951 973928076 1048127391 1048127391 769771122 320930242 518789294 518789294 142389188 233907180 289260972 413663406 413663406 472720586 478225664 482383466 482383466 156948132 341935202 341935202 181471876 181471876 365210710 459050396 459050396 187172930 500962606 840040496 840040496 399180479 339932728 151523840 151523840 137447936 137447936 136702212 135658024 77684740 187746912 187746912 177639540 1070595327 1070595327 819959459 75185027 75185027 811361664 811361664 876965835 876965835 70804619 821563267 821563267 557251104 833660362 892575050 892575050 304442898 106061480 106061480 361937842 361937842 376237176 376237176 408746987 671537157 679496243 679496243 471091790 911527917 911527917 880432855 1059058192 1059058192 720713808 720713808 719446485 724441301 724441301 610273280 341162862 441935346 441935346 513593986 513593986 534815226 534815226 16777504 140774220 572367122 572367122 849777555 849777555 662176680 990904887 990904887 878707373 738889993 738889993 583624328 211550217 201535500 167911448 98982344 115529208 132083448 132083448 57145776 57145776 50861072 50861072 97284672 97284672 96239840 561819592 561819592 496650391 939596472 939596472 1011489226 1011489226 898145609 965430499 1031555397 1031555397 1025433135 1033987955 1033987955 856037427 584876048 848842434 848842434 611895177 880341535 880341535 773059101 748012746 281581656 221357040 141558660 580530800 580530800 597512721 714652481 714652481 13014048 540279168 585303521 585303521 578962993 578962993 566891745 520144190 53552416 505996350 505996350 151446528 296611170 296611170 296297826 364557120 364557120 208397484 92459112 201400332 487328940 487328940 772557202 805880835 805880835 902578656 902578656 892247531 279709131 279446850 588251170 588251170 829767443 829767443 807734976 812276226 812276226 17832560 52167312 52167312 302331993 614534889 924581963 924581963 964815015 964815015 852059128 420624460 301937862 426431362 877367810 877367810 850833110 850833110 295575490 244076774 276164000 276164000 257993120 222115346 308897618 317244882 317244882 375915930 375915930 357359056 357359056 174626138 313349440 313349440 399270144 399270144 115470440 115470440 120919464 120919464 404101638 404101638 298125842 493885338 493885338 413064638 441015438 441015438 281540170 334692496 334692496 334570224 334570224 18939968 11153696 4682112 18080240 32548352 351137226 905973595 905973595 570425424 570425424 405090830 405090830 1053428188 1053428188 808328451 719517854 741511817 980514328 980514328 52613426 454503838 454503838 879383112 879383112 552623168 1010141903 1010141903 563399265 682083937 699561285 699561285 149945796 679075780 679075780 689514373 696459576 696459576 120536376 105641112 681523933 991524703 991524703 579954324 847274792 847274792 464593782 952297634 952297634 768079957 632654652 478442032 892928522 892928522 600908529 544861147 844734890 865130135 865130135 536485207 852217454 852217454 1057932542 1057932542 700602521 916372105 916372105 806333569 806333569 623452224 623452224 279120271 222772704 97458412 328124224 437181462 437181462 413813072 212277888 237407092 237407092 312220 136254736 336073381 922812871 922812871 1044980591 1044980591 618697991 607065937 607065937 558703220 850712019 850712019 621087282 621087282 811967130 913312043 913312043 610280985 577582465 545162624 545162624 338281674 112744448 308637778 308637778 115789184 115789184 74541826 84799016 84799016 339436160 339436160 18736032 280286144 280286144 289387306 289387306 286372928 403613738 403613738 337094305 156236524 694334365 694334365 616562889 773194204 773194204 635969288 609881649 365720298 365720298 1017253438 1017253438 652740057 475005582 813892241 813892241 789779533 805901000 805901000 469766156 469766156 187348480 722204021 722204021 541697237 727233537 727233537 866374115 866374115 945934679 945934679 413129009 720549110 720549110 589809968 589809968 168313122 831948084 831948084 270532610 285287560 357041322 371476544 371476544 656921369 656921369 504656134 939573535 939573535 512125197 853902415 853902415 323647427 352304843 529222116 1021761752 1021761752 806754115 717223426 685540469 38846693 67113032 67113032 187173076 187173076 566781104 566781104 554094136 97095208 105062448 105062448 98116122 405934226 405934226 991429428 991429428 940576287 585590790 585590790 574044945 1016142224 1016142224 672239704 875967108 875967108 470168653 775900881 775900881 347678538 21420394 423496475 423496475 362470727 595762300 620321312 829500369 829500369 279907602 736123006 736123006 996354786 996354786 1072702191 1072702191 680671402 728768785 728768785 395420065 232972592 525554134 525554134 279102610 849593103 849593103 771895386 643896731 541834430 498492104 498492104 391695952 391695952 598015302 869191750 906938465 906938465 613605006 731298921 772750365 772750365 705764141 475530894 350299972 546368104 621094953 621094953 546368104 470075406 604034312 604034312 539628801 275083136 540208451 615378249 615378249 539339152 539339152 113264784 90515688 90515688 171125248 171125248 45618872 75835176 75835176 73849224 312773992 312773992 596544770 596544770 299218258 909472618 909472618 745978784 745978784 623903240 623903240 618133937 389171256 537493128 549837073 812796144 812796144 377744280 151772180 186351940 186351940 203890252 203890252 92547340 509665766 966279814 966279814 566805729 802030954 870981119 920785307 920785307 853545177 256 2097408 2336768 2430884 29000427 1021557388 1021557388 941774087 941774087 360958670 697178410 697178410 811267700 1021735092 1021735092 1025295769 1025295769 923554875 862978103 862978103 890805263 932023483 1041735770 1041735770 848752248 680863809 195628017 187541936 187541936 174548228 146166028 151290040 190990368 190990368 180457048 588349617 626264745 729295609 729295609 600915620 60342368 60342368 684459621 684459621 171578452 685368385 685368385 406217598 464593818 464593818 334705650 334705650 318560520 369136560 369136560 337427848 333133554 680661573 680661573 777061116 777061116 638921233 638921233 229673596 797365004 797365004 833821298 833821298 328610659 472579447 1001379086 1001379086 671392832 1044649243 1044649243 709100751 498095930 498095930 282603520 282603520 28800962 125850738 399675530 399675530 395974266 282265090 282265090 186780519 848697939 848697939 665135481 740337242 740337242 367584270 807145230 807145230 755553901 723393124 887002830 887002830 796056025 753618317 564447585 879494364 879494364 674386769 765819775 765819775 470541706 470541706 471891982 818033868 1007232015 1007232015 944890503 944890503 882137840 500468428 500468428 710023181 710023181 672534577 440551602 874131208 874131208 807876867 695153591 574306065 258544301 152857472 35038276 735123525 735123525 598083636 598083636 639111449 792202009 792202009 699705161 572645649 271376384 271376384 505416966 545530112 547694913 547694913 628047273 858685604 858685604 594840060 780519724 780519724 402339658 850257818 850257818 538685537 565570401 565570401 537650176 623518784 749141039 749141039 487626595 487626595 269570176 45335740 456204320 456204320 269137958 583558988 743333564 743333564 616331459 831787860 831787860 336594092 352321578 537427976 537427976 67126273 0 0 477144134 806945728 873513483 873513483 478184005 991805236 991805236 825539936 194468468 45529348 718659729 718659729 322688869 853296145 853296145 673722964 673722964 360521898 361410050 361410050 379812078 379812078 345274656 134352900 552185574 1065667398 1065667398 771797174 771797174 631391380 708159509 708159509 354872499 362765060 430544484 430544484 8858796 90780808 830157219 830157219 165099508 165099508 831030363 831030363 818827569 696261927 819106567 819106567 768230649 768230649 555761181 319161396 790255664 790255664 691621765 1027768990 1027768990 845537810 845537810 694287890 320244512 320244512 329519360 436489862 436489862 713112925 713112925 302063634 758126518 919617569 923323627 923323627 750915789 833579560 833579560 643717009 970391966 970391966 958480384 958480384 455082307 159506736 487926318 600300242 738461709 1001147434 1001147434 1032847330 1032847330 1059400294 1059400294 632827631 412024698 412024698 867818762 867818762 655434297 142828580 140509572 1012024589 1012024589 451413916 451413916 768088231 1033308939 1033308939 901065579 630471208 922379561 922379561 687443408 551046765 844570182 844570182 799009243 667757949 1040747289 1040747289 713692245 1059636543 1059636543 446484054 446484054 745842552 754621395 959847866 959847866 411878540 979129691 979129691 665507193 665507193 102634682 879533454 879533454 1041789056 1046214303 1046214303 709128716 709128716 60566885 685429952 685429952 49162053 71354128 265789312 265789312 296704236 924439243 924439243 404260386 404260386 974131912 1039263602 1039263602 896727461 814043505 783212643 783212643 61993028 874994447 965350503 965350503 617041544 955989405 955989405 227894140 672375256 725227157 725227157 457423617 139163106 326349842 326349842 578145424 578145424 645639934 645639934 450041541 607125129 607125129 141297380 542398556 939704571 1006499525 1006499525 838354584 838354584 835116239 746230316 441392548 441392548 388359184 371644698 145304840 149371332 1058176980 1058176980 910650548 34917576 79470808 101702440 294390648 861421728 861421728 818007024 818007024 615696688 615696688 560778176 560778176 366422297 576087624 637342489 670669249 670669249 34868817 195555460 327200000 327200000 303910215 323451188 747983839 747983839 1008963804 1008963804 853664211 831383109 831383109 271747994 537166593 537166593 113249216 117591304 297660258 297660258 85066560 123608760 302279362 308298306 439443778 439443778 139199504 162707202 396873272 396873272 970895562 970895562 467512704 467512704 372574780 372574780 570836632 928448176 928448176 343069578 874078110 874078110 248549890 248549890 1073691007 1073691007 471772211 674518797 1009642767 1009642767 78546791 951108423 951108423 881877160 881877160 353807168 891444320 891444320 581573951 973928076 1048127391 1048127391 769771122 459549254 459549254 408997080 124641448 81563016 81563016 33685536 50466864 211297660 211297660 93847832 52478256 52478256 36274704 389309232 389309232 177737668 144623412 144623412 958549365 958549365 353157958 358167459 841118558 841118558 394868218 209852011 884024139 884024139 907203099 907203099 390445749 77684740 187746912 187746912 177639540 1070595327 1070595327 819959459 187572318 698568288 811361664 811361664 675964424 675964424 822483880 822483880 657216337 558075922 833660362 892575050 892575050 334723184 334723184 59225074 312492578 312492578 349022104 349022104 354457920 354457920 679496243 679496243 471091790 911527917 911527917 880432855 1059058192 1059058192 840355188 1011780025 1011780025 724441301 724441301 610273280 258862524 210458692 179206756 118230072 258818168 534815226 534815226 16777504 296233088 861345265 861345265 954432263 959646231 1048707183 1048707183 321043044 321043044 621926136 621926136 583624328 730912304 730912304 630400916 4904704 35688704 36324624 36324624 33699616 34210864 50861072 50861072 218228932 218228932 773335641 773335641 575113037 496650391 461899264 674894286 1011489226 1011489226 898145609 965430499 965430499 362846272 362846272 354867498 737862421 737862421 812127616 812127616 335811862 335811862 438962186 438962186 574655656 574655656 221357040 221357040 182133165 580530800 580530800 597512721 714652481 714652481 572430736 572430736 537110177 545366720 578962993 578962993 566891745 52495104 52495104 50438928 50438928 579768529 579768529 50979888 296297826 364557120 1025553515 1025553515 807727499 226201223 562928776 562928776 772557202 805880835 805880835 268699722 348915906 348915906 12652736 40510176 824181552 824181552 538196675 807734976 807734976 11360384 14686368 23200320 47449712 47449712 42863248 271347602 271347602 39693880 122808952 355714850 420624460 420624460 301937862 426431362 426431362 393652252 393652252 440702134 440702134 185301020 388274546 388274546 355195908 456979758 456979758 196084596 196084596 293735650 293735650 357359056 357359056 318773520 313349440 313349440 399270144 399270144 343490394 343490394 368526664 368526664 404101638 404101638 337865080 378395912 378395912 57336424 240129486 281540170 281540170 334692496 334692496 334570224 334570224 331224658 331224658 30865632 287878978 287878978 347949131 905973595 905973595 570425424 570425424 778390670 952482573 1053428188 1053428188 808328451 719517854 741511817 980514328 980514328 887268199 713459942 591577217 879383112 1012202126 1012202126 1010141903 1010141903 563399265 682083937 699561285 699561285 149945796 744153676 744153676 689514373 696459576 696459576 120536376 105641112 681523933 991524703 991524703 579954324 847274792 847274792 935388154 952297634 952297634 768079957 478442032 478442032 307864316 56746416 113247872 113247872 610912408 610912408 556855940 536485207 852217454 852217454 315695826 400990592 609375772 916372105 916372105 806333569 806333569 134220832 134220832 0 0 65552 136493460 136493460 86705044 105125288 209005452 209005452 171172280 171172280 225500680 225500680 204259216 345117510 957514136 957514136 897733523 607065937 607065937 452671446 567552218 567552218 621087282 621087282 811967130 913312043 913312043 610280985 577582465 545162624 545162624 49620512 135168 15753664 15753664 13119616 74541826 74541826 84799016 84799016 90171274 90171274 18736032 280286144 280286144 289387306 289387306 276839968 403613738 403613738 135142404 184816688 184816688 609748544 616562889 616562889 635969288 635969288 609881649 92801673 21570720 182652966 402991430 503321862 503321862 510200802 510200802 228798828 207225356 222433452 222433452 260892400 260892400 722204021 722204021 541697237 727233537 727233537 706734080 29095776 29095776 18308784 31531488 427819328 427819328 589809968 589809968 954126599 954126599 949174739 949174739 725033044 744958785 1067426650 1067426650 656921369 656921369 504656134 939573535 939573535 512125197 853902415 1021502208 1021502208 996240911 529222116 529222116 806754115 806754115 710251394 685540469 38846693 49328720 49328720 187173076 187173076 566781104 566781104 554094136 348499394 348499394 275519494 137719060 812655430 882447696 991429428 991429428 940576287 714622806 746887891 1013355477 1013355477 483345673 672239704 672239704 476460164 515320079 548679048 548679048 347678538 35816704 302551040 302551040 230053954 901564451 901564451 829500369 829500369 328731440 736123006 736123006 996354786 996354786 559100227 303828498 303828498 728768785 728768785 395420065 209076796 525554134 525554134 545308928 849593103 849593103 771895386 643896731 541834430 498492104 498492104 391695952 391695952 43828922 306778632 890570955 890570955 502210148 502210148 588260704 688657144 688657144 475530894 1026297199 1026487303 1026487303 942404423 969476864 969476864 944328262 604034312 539628801 416760138 881098307 881098307 806640457 976580956 976580956 173486068 256238032 256238032 234520264 234520264 265611696 265611696 57935056 340722562 342976530 605281370 614107569 632640179 888257659 909472618 909472618 422991904 676380708 676380708 623903240 259238509 733399101 733399101 1044685438 1044685438 662290779 662290779 749331811 749331811 815120088 815120088 353370770 353370770 609553137 609553137 432351542 632436617 802030954 870981119 920785307 920785307 853545177 713167316 713167316 545355968 549826564 549826564 1021557388 1021557388 941774087 941774087 1017670723 1017670723 808166860 1023254400 1023254400 1021735092 965821134 440440982 600870948 621298667 975836439 975836439 858790419 658803544 848752248 848752248 680863809 592794550 592794550 352706567 335943690 740649428 1005476267 1005476267 717933943 679522013 564492395 626264745 626264745 600915620 600915620 287050564 55578896 55578896 8528352 4816832 11605696 13638400 13638400 0 0 0 77639376 77639376 48054600 5046272 17250336 152115208 168110732 168110732 583348360 767828892 767828892 247538444 247538444 797365004 797365004 657507129 655545201 277822530 856167288 856167288 562436193 1057620053 1057620053 1044649243 709100751 593372984 1007689133 1007689133 563498538 425512256 283806626 399675530 399675530 395974266 282265090 282265090 65801586 272629890 383912586 383912586 318118866 471266682 471266682 807145230 807145230 755553901 840192208 887002830 894830552 894830552 821170627 95687707 585385497 585385497 674386769 765819775 765819775 470541706 906105992 906105992 471891982 568586721 568586721 122246489 882137840 882137840 67222096 210884928 210884928 474251654 474251654 440551602 874131208 874131208 807876867 695153591 574306065 258544301 15009408 15009408 735123525 735123525 598083636 598083636 639111449 792202009 792202009 853485077 853485077 687607255 683794629 683794629 545530112 547694913 964696082 964696082 753872019 753872019 594840060 780519724 780519724 655225112 850257818 850257818 565532245 510329452 935518147 935518147 623518784 809782698 1025619245 1025619245 493825157 847287935 847287935 733606795 641835589 356385761 583558988 583558988 785136232 785136232 958501400 958501400 990954715 990954715 668541682 668541682 509674142 1065969682 1065969682 830472291 985831694 1066136703 1066136703 918639780 991805236 991805236 825539936 194468468 45529348 718659729 718659729 572080787 853296145 853296145 825618288 825618288 408105986 361410050 361410050 280447498 1003009949 1003009949 392689471 552185574 552185574 484076085 771797174 771797174 631391380 708159509 708159509 472766679 85731844 218702892 218702892 145820016 112724288 112724288 52037424 61737792 61737792 12361504 191665236 191665236 87102032 117666252 223608524 223608524 555761181 555761181 135794800 588372688 588372688 691621765 691621765 331831556 845537810 845537810 694287890 306001202 306001202 466771350 466771350 442683554 713112925 713112925 302063634 302063634 919617569 923323627 923323627 750915789 750915789 643717009 643717009 970391966 970391966 445574214 445574214 208446061 418386369 418386369 341330838 527511697 1001147434 1001147434 1032847330 1032847330 1059400294 1059400294 632827631 1015821580 1015821580 967528471 967528471 555229479 142828580 476349519 1012024589 1012024589 451413916 785911338 785911338 768088231 414807733 312684888 283334912 283334912 125877246 444317622 444317622 390730938 423904258 529446926 529446926 1040747289 1040747289 639878239 639878239 900811972 900811972 775045641 849793305 849793305 257856918 257856918 144709004 979129691 979129691 824740099 665507193 1010849453 1010849453 879533454 793023905 445097660 358546510 797575600 797575600 686885085 700184432 700184432 49162053 71354128 163535384 261199844 296704236 924439243 924439243 404260386 660697658 974131912 974131912 556307892 328745521 159908964 783212643 783212643 783468121 874994447 965350503 1008408741 1008408741 955989405 955989405 695731665 672375256 725227157 725227157 457423617 830047669 830047669 556066386 556066386 545309188 837356410 837356410 913094122 913094122 607125129 485488302 542398556 939704571 1006499525 1006499525 838354584 838354584 547728384 547728384 65974720 388359184 388359184 373409056 373409056 390880370 390880370 291762594 291762594 90876416 104720232 104720232 273181721 587548723 641992857 936176251 936176251 598754353 598754353 551822152 565782369 565782369 654476506 654476506 995127119 995127119 291845168 291845168 230805726 303910215 303910215 323451188 747983839 747983839 1008963804 1008963804 853664211 831383109 831383109 271747994 537166593 537166593 113249216 39082680 297660258 297660258 290256488 266609720 302279362 308298306 439443778 439443778 198255264 162707202 919449470 919449470 663962358 663962358 455620122 455620122 514855434 514855434 910952604 910952604 873783309 556871425 874078110 874078110 259630136 259630136 1073691007 1073691007 471772211 674518797 1009642767 1009642767 390926384 951108423 1053956273 1053956273 774345499 411363898 411363898 503615246 503615246 407796850 472125078 484477606 484477606 459549254 459549254 408997080 124641448 68267344 33751040 33751040 50466864 50466864 42050848 42050848 19415072 19415072 19415072 389309232 389309232 222042708 285482762 285482762 958549365 958549365 353157958 377577874 841118558 841118558 394868218 870952085 1005305640 1005305640 907203099 907203099 590320315 683420045 683420045 932321309 932321309 595781864 525404896 525404896 187572318 698568288 698568288 404416192 675964424 675964424 822483880 822483880 335552640 558075922 558075922 282700792 344900432 397242480 397242480 274776450 341745416 341745416 349022104 349022104 354457920 354457920 131019090 201569664 241341004 646896707 646896707 879495506 879495506 614483267 840355188 1011780025 1011780025 500133205 501734696 501734696 212627564 210458692 179206756 161545920 190635124 190635124 280796900 321913650 321913650 861345265 861345265 954432263 959646231 1048707183 1048707183 555876352 555880737 621926136 787062464 787062464 774898461 730912304 630400916 111695252 210462684 246416220 246416220 94471368 39320208 39320208 121770236 235292896 235292896 773335641 773335641 575113037 135266820 461899264 674894286 674894286 160173156 189007056 189007056 49073616 362846272 786077896 786077896 933354597 933354597 812127616 844849831 844849831 532905700 532905700 531434214 674891551 674891551 126909400 199500073 199500073 170405404 170405404 790354476 790354476 546669424 572430736 572430736 537110177 537110177 570528897 570536641 570536641 567364232 620869160 620869160 84966408 579768529 579768529 348803586 335655010 357061032 1025553515 1025553515 807727499 286676264 562928776 562928776 537938039 537938039 721421834 721421834 504501393 504501393 356261818 320341554 824181552 824181552 806947104 812783136 833432931 833432931 550148992 283573344 41002304 42521232 65237152 112320464 112320464 88897136 31463128 355714850 355714850 76429354 275247298 367283498 367283498 311149936 63889826 440702134 440702134 185301020 388274546 388274546 355195908 456979758 456979758 196084596 260049110 499433550 511969374 511969374 318773520 523378024 523378024 588383825 588383825 230583648 802125204 802125204 541323393 368526664 938372634 938372634 853940691 853940691 549518098 291748674 291748674 356026506 356026506 336478064 57664304 57664304 37166720 331224658 331224658 52886320 287878978 287878978 341440656 372155610 372155610 545308752 545308752 778390670 952482573 978641239 978641239 612816969 424689728 424689728 509862540 887268199 887268199 713459942 591577217 662209096 1012202126 1012202126 269751810 545894658 545894658 283527232 672481252 672481252 149680740 744153676 744153676 610703749 544611201 72745225 83935240 83935240 84951584 201433388 201433388 220291084 579905870 579905870 935388154 935388154 834922552 579279019 554121249 168088409 1031316858 1031316858 786957789 946289031 946289031 610912408 740223046 740223046 632344401 91522529 201386000 400990592 400990592 383034028 383034028 85279306 57092384 70779844 1014798018 1014798018 495852654 834836906 834836906 539055347 393883653 306484492 217352200 264426636 354405954 354405954 373774788 373774788 955528007 955528007 957514136 957514136 897733523 515246198 515246198 452671446 373581864 323084466 105226930 105226930 273713546 273713546 91491240 103542024 103542024 91147792 91147792 284558336 284558336 280394370 15753664 13119616 13119616 10159168 12321024 12321024 3533568 3533568 17837088 17837088 9571904 827392 4820096 4820096 140158149 205634081 231024876 231024876 779301277 779301277 239565581 129233784 589697024 670355680 670355680 563932461 720162261 964201074 964201074 503321862 503321862 510200802 510200802 386962136 313259726 318902322 507779244 507779244 260892400 198218772 200035316 200035316 183109380 138540192 134935316 29095776 29095776 171184772 171184772 170207888 170207888 310496128 812034262 954126599 954126599 949174739 949174739 725033044 744958785 1067426650 1067426650 978261650 978261650 302248054 834303607 834303607 209781008 539249053 1021502208 1021502208 996240911 1059055542 1059055542 833482083 820030082 283165042 303426066 330764754 330764754 319213296 58538176 58538176 19318912 60365912 60365912 348499394 348499394 275519494 382163866 812655430 882447696 882447696 317770519 317770519 714622806 746887891 1013355477 1013355477 644606679 955911640 955911640 741981592 853197954 853197954 675063299 470946274 470946274 1027665499 1027665499 1023018468 1023018468 901564451 666372688 378013784 328731440 375648666 534312350 597181530 597181530 302514390 268807842 768802930 768802930 175212684 175212684 209076796 209076796 177602824 774705170 774705170 775681100 775681100 370301024 370301024 390070458 390070458 115828448 188957748 188957748 168341776 890570955 890570955 719717454 719717454 590750669 698429892 698429892 557977761 1026297199 1026487303 1026487303 942404423 969476864 969476864 944328262 75097992 416760138 416760138 881098307 881098307 806640457 976580956 976580956 173486068 256238032 256238032 234520264 234520264 265611696 265611696 57935056 340722562 849549632 849549632 614107569 632640179 888257659 888257659 610762195 817041668 817041668 676380708 156239424 993953408 993953408 733399101 1044685438 1044685438 662290779 662290779 749331811 749331811 815120088 815120088 353370770 353370770 609553137 609553137 432351542 632436617 632436617 184289460 184289460 184549444 541065428 713167316 713167316 545355968 549826564 549826564 683347717 683347717 607631235 205021633 1017670723 1017670723 808166860 1023254400 1023254400 965821134 982424272 982424272 600870948 621298667 975836439 975836439 446223709 658803544 658803544 625512092 625512092 592794550 592794550 352706567 480544808 740649428 1005476267 1005476267 717933943 679522013 564492395 450406488 450406488 448124788 448124788 287050564 187024752 168905216 4452480 4816832 11605696 13638400 299089994 361943658 361943658 371274114 371274114 357016600 357016600 293803048 293803048 349053289 675621005 675621005 555160097 767828892 767828892 803474411 803474411 589638487 811142642 811142642 486613288 285343800 856167288 856167288 805347338 1057620053 1057620053 873204747 497844489 593372984 1007689133 1007689133 563498538 425512256 283806626 269746880 109051954 26488864 44353872 44353872 65801586 272629890 383912586 383912586 318118866 471266682 918498112 918498112 402692941 335753226 840192208 840192208 894830552 894830552 821170627 256131796 514276886 514276886 102566144 275984834 275984834 17439336 906105992 906105992 549955817 549955817 413339648 413339648 648514767 648514767 486980822 470754420 702698537 702698537 157421756 417762756 571657447 571657447 282565556 282565556 192277428 291801600 291801600 151068708 151068708 145352004 145352004 147332984 147721156 451550792 719324830 853485077 853485077 687607255 683794629 683794629 249684253 120858848 964696082 964696082 753872019 753872019 403194773 403194773 655225112 800820251 800820251 589373297 589373297 571139072 935518147 935518147 245226516 809782698 1025619245 1025619245 846766113 847287935 847287935 1012642899 1012642899 820067477 356385761 126222160 948344026 948344026 958501400 958501400 990954715 990954715 668541682 668541682 509674142 1065969682 1065969682 830472291 985831694 1066136703 1066136703 918639780 175276624 175276624 560068464 710731989 710731989 539702529 146555713 572080787 687057296 716838007 825618288 825618288 408105986 345435946 345435946 274344672 1003009949 1003009949 686840386 690053624 690053624 500392279 537264384 539367681 540120714 617750560 617750560 472766679 1015250080 1015250080 511688363 343613628 138151532 138151532 14157504 215767359 857919795 888161171 893393259 907330224 907330224 103685400 103685400 100424616 122506284 122506284 127984240 127984240 66916336 294490752 331831556 331831556 466573620 466573620 329474130 306001202 306001202 466771350 466771350 442683554 442683554 312639524 71616648 1011912980 1011912980 246815580 975962162 975962162 690752805 408423258 950141824 950141824 587564672 445574214 916762766 916762766 974688348 974688348 381869054 381869054 320740914 320740914 388729938 638236446 638236446 751576250 751576250 1015821580 1015821580 1007263966 1007263966 847592005 847592005 548309200 927877565 927877565 258741703 785911338 785911338 726469892 928064177 998395967 998395967 657645287 209951116 444317622 444317622 390730938 423904258 757785741 757785741 652120974 652120974 757901991 908815470 908815470 900811972 775045641 849793305 1007963418 1007963418 977455244 259134664 686693766 824740099 897939654 897939654 1010849453 1010849453 579863950 579863950 604652672 608358537 797575600 797575600 686885085 700184432 700184432 87285928 87285928 39271056 718539019 749017210 749017210 524692637 524692637 776296356 776296356 870476268 870476268 511820226 989012423 989012423 667615781 783468121 783468121 694672712 1008408741 1008408741 534101203 695731665 695731665 361193632 553745602 621282345 882467509 882467509 830047669 556066386 556066386 545309188 837356410 837356410 913094122 913094122 420642530 485488302 775834441 775834441 749031968 762734908 762734908 481788502 877488795 877488795 271390626 801836905 801836905 373409056 389421882 390880370 390880370 344589704 367174040 382274848 382274848 128591906 380583258 936654818 936654818 936176251 936176251 598754353 598754353 653179352 653179352 600307953 654476506 654476506 995127119 1014837657 1014837657 791283887 541269020 323511360 65536128 309109168 309109168 486225870 486225870 446190720 446190720 382222508 965742693 965742693 713504853 713504853 690086181 690086181 395912826 395912826 643949633 643949633 383902170 851525897 851525897 260221508 260221508 275845012 1039607202 1039607202 663962358 663962358 455620122 455620122 593625424 593625424 910952604 910952604 545071232 556871425 556871425 107323666 339172794 339172794 335977258 486005690 949178062 1045052453 1045052453 893843893 556746371 931502234 1053956273 1053956273 714993237 714993237 840082000 840082000 503615246 617335361 617335361 551013520 794931281 794931281 734200081 677384720 677384720 183150728 206880604 250667048 250667048 147696100 147696100 112519928 118614840 169143836 169143836 395335376 395335376 399559088 399559088 318114128 318114128 325857408 325857408 377577874 377577874 113527123 137573124 870952085 1005305640 1005305640 883214667 883214667 590320315 683420045 683420045 932321309 932321309 595781864 644591303 644591303 485223989 665697250 764243159 764243159 438012755 438012755 549872496 887958987 887958987 334243137 881667138 881667138 637602898 397242480 397242480 274776450 341745416 341745416 104074008 93725744 31667392 25374816 32073088 503670052 503670052 274895432 330323128 879495506 879495506 614483267 654655676 876636405 876636405 767721814 719792292 719792292 256011676 235864976 235864976 229144752 229144752 190635124 280796900 321913650 321913650 136479412 809714100 809714100 176560279 153159940 596843360 596843360 555880737 555880737 787062464 787062464 774898461 203476996 107313984 111695252 210462684 246416220 246416220 94471368 39320208 39320208 121770236 235292896 251187684 251187684 92278660 69340167 421272598 421272598 648749269 648749269 345711433 1052911432 1052911432 841169323 599239485 786077896 786077896 933354597 933354597 777713721 844849831 844849831 532905700 532905700 531434214 726050319 726050319 746005464 746005464 674317797 263450156 263450156 790354476 790354476 739122916 558400801 553512897 204517789 102397465 570528897 570536641 570536641 567364232 620869160 620869160 85113889 94364170 348803586 348803586 335655010 357061032 357061032 97261184 77575944 286676264 286676264 81579080 537938039 537938039 721421834 721421834 504501393 504501393 626973600 626973600 550687041 644352162 806947104 812783136 833432931 833432931 550148992 283573344 48985024 48985024 65237152 112320464 112320464 88897136 31463128 59368560 87436840 87436840 78543896 58229872 311149936 311149936 218958892 201604204 201604204 126346288 126346288 242781154 362633948 406600712 406600712 188095284 260049110 499433550 511969374 511969374 483528992 523378024 523378024 588383825 588383825 230583648 802125204 802125204 872835112 872835112 938372634 938372634 853940691 853940691 549518098 291748674 291748674 356026506 356026506 336478064 56499888 56499888 51680128 34841392 35752704 52886320 52886320 40009760 341440656 541456385 541456385 541178433 374420632 872934208 872934208 846455427 508988313 470830984 470830984 575272111 606712457 866316648 866316648 453017636 360760760 447250564 1024472961 1024472961 217692066 545894658 819671554 1039730849 1039730849 30458592 30458592 229612772 612143469 612143469 756713441 756713441 625891976 682510061 682510061 904845674 904845674 1006653768 1006653768 356785251 673378820 1026982188 1026982188 579279019 554121249 891907056 1031316858 1031316858 786957789 946289031 946289031 288340804 1043668308 1043668308 727234757 727234757 513763848 513763848 493006592 242433848 790630992 790630992 915591771 915591771 1014798018 1014798018 495852654 1063879481 1063879481 720829546 720829546 550133700 217352200 264426636 354405954 354405954 373774788 373774788 955528007 955528007 537952265 796120584 833319862 927024495 927024495 514369568 514369568 647307273 807671945 807671945 594542904 856822033 879826057 879826057 602424897 602424897 584026352 284558336 284558336 280394370 11021826 1973760 1623552 1623552 1837056 1837056 3533568 3533568 3517184 2621952 863232 789504 789504 18307844 158398900 205634081 251704628 251704628 779301277 779301277 239565581 720810884 720810884 670355680 670355680 563932461 720162261 964201074 964201074 90694080 90694080 188411980 386962136 386962136 313259726 318902322 507779244 507779244 162527920 196961268 200035316 200035316 183109380 143389714 455709046 455709046 332530258 312655618 312655618 466617296 961553382 961553382 812034262 812034262 539660482 539660482 731284005 731284005 731208571 742694065 742694065 978261650 978261650 302248054 657035384 657035384 556366937 539249053 828953436 948546559 948546559 1059055542 1059055542 833482083 820030082 408996995 303426066 330764754 541013605 693656869 693656869 698782628 698782628 26542568 731817719 880463946 880463946 873587211 851542744 382163866 100672539 100672539 317770519 317770519 178712026 178712026 273691272 579427912 644606679 955911640 955911640 741981592 853197954 853197954 675063299 536690856 470946274 1027665499 1027665499 1023018468 1023018468 665378161 378013784 378013784 279056706 588825128 764987061 764987061 445558448 931895854 931895854 899543641 899543641 659578888 497568718 497568718 323315506 179062282 774705170 974612745 974612745 909268828 909268828 606130962 390070458 390070458 131483544 272207946 316491968 316491968 457268032 457268032 719717454 719717454 590750669 698429892 698429892 557977761 280032968 146399556 146399556 134267200 1008173400 1008173400 946690688 946690688 811474563 168476948 168476948 572877840 572877840 169163793 36736788 34867216 103674400 103674400 87554856 45249128 50479336 50780208 50780208 104136920 868592065 868592065 332786418 1031916612 1031916612 937110269 937110269 930877461 817041668 413237504 156239424 993953408 993953408 620223144 620223144 277436992 277436992 59380848 397669204 397669204 135613444 135613444 18530304 18035232 802336 33845248 51512176 227676576 227676576 184289460 184289460 184549444 184549444 173065552 173065552 281280834 281280834 338130248 683347717 683347717 607631235 205021633 203575683 614146438 614146438 477445903 947912854 947912854 982424272 982424272 558291105 553930880 980030871 980030871 518028245 951861405 951861405 901924485 238686736 1001352096 1001352096 533184618 533184618 732178560 736174581 736174581 578998353 719079413 719079413 554496005 869757813 869757813 665249570 229369568 187024752 168905216 11534352 11534352 10134032 13735872 299089994 361943658 361943658 371274114 371274114 357016600 357016600 293803048 293803048 743703089 743703089 675621005 625509113 625509113 647299297 803474411 1032991271 1032991271 844136770 844136770 486613288 285343800 614019258 805347338 805347338 604102665 394839162 394839162 378028064 130056272 788697690 905335106 905335106 408027354 839521299 839521299 585836424 585836424 44353872 571031841 561052499 561052499 331823346 293078946 883767537 883767537 918498112 918498112 816056643 816056643 776759119 996174752 996174752 779934784 704136993 704136993 550809234 936721279 936721279 790099309 790099309 688286847 688286847 646038592 751067395 751067395 679529162 679529162 648514767 648514767 486980822 725627035 725627035 702698537 470777868 715421270 755108094 970869012 970869012 567993859 1039095756 1039095756 291801600 151068708 151068708 58462128 58462128 239619200 239619200 306480540 1011495828 1011495828 956043207 956043207 563982019 404770403 166997924 268697970 595599761 595599761 719669136 719669136 1008263622 1008263622 381809480 800820251 800820251 657077048 833831202 833831202 571139072 322036530 293331250 714832983 714832983 207413038 846766113 846766113 816506114 1012642899 1012642899 820067477 404767074 680977516 948344026 948344026 883488179 798134529 67307797 260580736 260580736 446578104 446578104 307541296 275175810 275175810 337168504 337168504 541936617 541936617 596789537 596789537 560068464 710731989 710731989 539702529 146555713 136837380 949177106 949177106 269622848 412226242 412226242 298778914 288938274 274344672 271844872 686840386 686840386 690053624 690053624 500392279 629364039 629364039 705930577 705930577 617750560 677429637 1015250080 1015250080 511688363 343613628 264376572 142775776 316703432 316703432 857919795 888161171 893393259 907330224 907330224 128570152 131545832 131545832 560246785 560246785 76231816 541956929 541956929 420057620 420057620 170161492 466573620 466573620 170805506 154931728 187571508 187571508 181559220 176345172 596672777 596672777 308466066 1011912980 1011912980 656806660 975962162 975962162 690752805 244056272 950141824 950141824 46186704 46186704 916762766 916762766 974688348 974688348 381869054 616663360 650191065 942155969 1043074335 1043074335 1041043215 1008545295 751576250 981619932 981619932 1007263966 1007263966 850445139 847592005 548309200 518328654 415302652 524936382 986573374 986573374 726469892 928064177 998395967 998395967 657645287 209951116 209951116 209060924 209060924 89298408 757785741 848464233 848464233 825160456 815346696 1015999870 1015999870 815865788 1072158159 1072158159 1007963418 1007963418 977455244 308030968 824365648 824365648 897939654 897939654 560109600 201872285 434018340 662829674 974205105 974205105 659210466 128135544 560527221 621506424 621506424 589961197 589961197 747696773 747696773 749017210 775371549 880160928 880160928 776296356 776296356 870476268 870476268 688457234 989012423 989012423 922275923 626583412 285172679 227904836 227904836 342001988 430051720 430051720 915094531 915094531 751962688 846090245 882467509 882467509 467758563 281808066 845694060 845694060 629778524 615604628 615604628 563393040 596115777 621873577 944869638 944869638 749031968 762734908 762734908 481788502 877488795 877488795 271390626 801836905 801836905 333323000 389421882 389421882 344589704 344589704 367174040 382274848 382274848 213221848 380583258 936654818 936654818 813695043 318769497 287002304 844343808 844343808 653179352 600307953 33529641 543688065 652808001 1014837657 1014837657 791283887 541269020 323511360 173046688 222031844 231836374 486225870 486225870 302552772 382222508 382222508 965742693 965742693 713504853 713504853 690086181 690086181 396961146 396961146 643949633 643949633 383902170 851525897 851525897 549456502 852887588 852887588 1039607202 1039607202 837134537 115103419 134423120 726737664 726737664 593625424 584396849 538184193 39934721 38006928 24809488 107323666 347310319 709254069 709254069 714806817 949178062 1068932354 1068932354 893843893 738269327 738269327 886886091 886886091 885787851 885787851 995222132 995222132 232176699 617335361 617335361 551013520 794931281 794931281 734200081 677384720 677384720 454265960 454265960 442430762 250667048 476112082 476112082 273990954 273990954 169143836 169143836 395335376 395335376 399559088 399559088 318114128 318114128 325857408 325857408 0 33554448 33554448 137573124 137573124 148186084 148186084 32658820 27601248 147268260 147268260 219324676 219324676 151575700 441119032 644591303 644591303 485223989 665697250 764243159 764243159 438012755 438012755 549872496 887958987 887958987 334243137 881667138 881667138 637602898 321100144 321100144 28717122 382919482 382919482 354522026 354522026 31667392 25374816 32073088 503670052 503670052 1018852169 1073238069 1073238069 723801545 596429937 1047993113 1047993113 1041026079 1041026079 719792292 719792292 256011676 235864976 235864976 229144752 229144752 187951952 303039200 303039200 60696544 136479412 809714100 809714100 176560279 153159940 596843360 596843360 186671136 186671136 262570328 262570328 218402852 203476996 116457216 116457216 80005808 38797392 13632192 11670336 11670336 118359816 244582456 244582456 251187684 251187684 92333100 76254720 421272598 421272598 648749269 648749269 345711433 1052911432 1052911432 841169323 599239485 569387092 569387092 444609299 106610866 106610866 516736136 516736136 516943882 516943882 1017114208 1017114208 726050319 746005464 746005464 674317797 263450156 263450156 575054432 739122916 739122916 650337969 553512897 204517789 58208448 63704304 63799400 63799400 26225160 555241504 555241504 85113889 17486880 71415616 94311936 94311936 74906112 97261184 97261184 24347240 352370720 603979786 603979786 335544329 285262378 269484546 268587522 858277906 858277906 626973600 626973600 550687041 644352162 644352162 374902938 374902938 125101592 337727946 337727946 48985024 48985024 356246952 399546752 399546752 132488880 18344456 378535002 378535002 336280864 336280864 58229872 58229872 218958892 218958892 312705106 312705106 126346288 403355918 403355918 362633948 362633948 189866676 189866676 174129952 108016752 108016752 378361532 483528992 483528992 65014856 103678440 103678440 67109376 824378018 824378018 872835112 872835112 822341667 373872259 303902226 303902226 389582336 389582336 283866448 283866448 58906944 58906944 6329008 51680128 51680128 5390896 6291872 16777248 21144240 61018288 66521553 541456385 541456385 541178433 180654085 872934208 872934208 846455427 508988313 470830984 470830984 575272111 606712457 866316648 866316648 453017636 928930985 928930985 1033275905 1033275905 217692066 206473548 819671554 1039730849 1039730849 297521250 297521250 410032262 612143469 874092843 874092843 837873376 837873376 764488973 764488973 904845674 904845674 1006653768 1006653768 865079852 673378820 1026982188 1026982188 384852896 384852896 891907056 891907056 395438096 395438096 362317944 362317944 283134162 1043668308 1043668308 727234757 826557314 826557314 537993729 867003106 867003106 790630992 790630992 915591771 915591771 813828488 827360768 827360768 1063879481 1063879481 720829546 720829546 550133700 140390400 140390400 140324484 273057732 273057732 83521034 76948168 650772747 650772747 796120584 833319862 927024495 927024495 514369568 584456385 647307273 807671945 807671945 594542904 856822033 879826057 879826057 634070496 602424897 584026352 284402176 10609088 5025920 5025920 10123776 10220608 10220608 8990208 8990208 6901376 4312192 18441888 18441888 6672384 6672384 6258304 18307844 158398900 158398900 251704628 251704628 154298424 140498960 174512532 720810884 720810884 576328209 911279322 911279322 78642504 280585480 401681986 401681986 295833954 295833954 273249376 310780258 310780258 269231120 22025792 30268096 156593152 676056769 676056769 703634432 703634432 143389714 455709046 455709046 675596421 675596421 442550548 466617296 961553382 961553382 444846407 444846407 539660482 539660482 731284005 731284005 731208571 858745103 858745103 410802184 410802184 286946263 823710326 823710326 832095014 832095014 823222529 184549428 184549428 35651876 17351712 17351712 408996995 408996995 287850595 148448964 541013605 693656869 693656869 698782628 698782628 545821152 731817719 880463946 880463946 873587211 851542744 335610442 133711346 103107584 57251384 278185688 300229724 300229724 505996602 505996602 332388816 332388816 325256762 325256762 274563988 371296384 536690856 536690856 360024692 75905184 75905184 90216928 107085528 644810555 874005249 874005249 279056706 588825128 764987061 764987061 713301031 931895854 995315826 995315826 899543641 659578888 497568718 497568718 323315506 308937160 416254450 974612745 974612745 909268828 909268828 606130962 357829290 131483544 131483544 272207946 344644920 344644920 457268032 457268032 514406901 935667659 935667659 767198847 702546405 702546405 697033317 826413669 827401639 827401639 1008173400 1008173400 946690688 946690688 811474563 708944661 714806279 714806279 572162816 572162816 541020944 216191436 250366856 250366856 108664728 108439248 69003456 119869616 119869616 104136920 868592065 868592065 332786418 1031916612 1031916612 937110269 937110269 930877461 568808836 568808836 796942843 925159178 925159178 1051011418 1051011418 859048531 549539043 549539043 893876395 893876395 820729944 820729944 296993314 279056706 272014176 19058976 291131874 291131874 227676576 97393184 135435200 135435200 45105700 173065552 173065552 281280834 281280834 338130248 338130248 1055638492 1055638492 678065183 619967433 881385873 881385873 68033544 947912854 947912854 729918069 729918069 854414704 854414704 980030871 980030871 712590500 951861405 951861405 901924485 666583672 1001352096 1001352096 738857997 908458443 908458443 736174581 736174581 578998353 767873613 1033891527 1033891527 976051375 978491272 978491272 423803460 172275520 15747796 14891200 12814336 10134032 14061696 14061696 43133456 43133456 101075616 130097400 130097400 46211280 121670272 132253985 743703089 743703089 130925816 625509113 625509113 616900809 749603830 1032991271 1032991271 844136770 844136770 250626516 608524098 614019258 839127082 839127082 969790255 969790255 944168080 944168080 675992709 788697690 905335106 905335106 596510996 839521299 839521299 638064192 585836424 579106320 571031841 561052499 561052499 331823346 293078946 883767537 883767537 816073728 614953802 816056643 816056643 776759119 996174752 996174752 779934784 704136993 704136993 550809234 936721279 936721279 790099309 790099309 809701395 809701395 672013317 751067395 751067395 679529162 679529162 574219568 490997934 485239926 725627035 725627035 470777868 470777868 715421270 765059391 970869012 970869012 942266624 1039095756 1039095756 60223872 60223872 42733936 58462128 58462128 615554856 649908057 680562037 1011495828 1011495828 956043207 956043207 667158729 666954361 666954361 268697970 595599761 595599761 719669136 719669136 1008263622 1008263622 12583104 49363848 657077048 657077048 833831202 833831202 322036530 322036530 443547912 508560030 508560030 207413038 253940620 253940620 637884972 655698489 655698489 404767074 404767074 680977516 680977516 883488179 883488179 588262605 67307797 165683952 198519540 446578104 446578104 269070778 232867990 463452822 463452822 380193064 541936617 541936617 598273633 598273633 589656416 589656416 586730433 578672913 581363281 581363281 949177106 949177106 575484624 573969152 412226242 298778914 288938274 268791808 886308801 886308801 616011593 886836939 886836939 618186441 938759546 938759546 705930577 705930577 590951266 792780228 979993645 979993645 968884520 805312518 788796448 294031498 400988896 548587771 548587771 610271720 610271720 604028937 128570152 128570152 131545832 131545832 560246785 560246785 76231816 541956929 541956929 420057620 422864726 422864726 301584256 301584256 286901762 442329874 454111654 465594370 465594370 447795654 596672777 596672777 376648490 775177143 775177143 656806660 578912525 578912525 495465794 982455379 982455379 1026727910 1026727910 794559582 880462934 880462934 171792388 171792388 287491060 616663360 650191065 942155969 1043074335 1043074335 1057923425 1057923425 452605503 981619932 981619932 888926227 888926227 850445139 521114016 521114016 534349311 534349311 524936382 986573374 986573374 784344530 337979658 637797882 637797882 810793163 810793163 1042075167 1042075167 559205025 819260072 819260072 848464233 848464233 825160456 815346696 1015999870 1015999870 599738373 1072158159 1072158159 624481394 338002250 338002250 317882208 855334289 855334289 538487945 560109600 603749302 1048262546 1048262546 703307546 974205105 974205105 659210466 243834904 560527221 639859317 721735996 721735996 589961197 747696773 747696773 571751237 775371549 880160928 880160928 252068877 706291111 706291111 453592628 688457234 688457234 922275923 922275923 626583412 285172679 227904836 791250569 791250569 886730493 886730493 915094531 915094531 751962688 846090245 846090245 1010975068 1010975068 909386776 909386776 845694060 629778524 759254356 759254356 544243748 596115777 621873577 944869638 944869638 550947384 341191170 341191170 318806144 404359476 404359476 458254518 520455068 520455068 69329160 102945048 343134208 343134208 302754450 172332624 218494840 218494840 213221848 213221848 124345632 124345632 74449800 287002304 330547216 844343808 844343808 386129984 51589242 40973170 422001704 422001704 349770434 56623536 56623536 464395330 464395330 371271966 222031844 231836374 449438934 449438934 75803806 65795568 616887345 616887345 781460432 781460432 531819290 531819290 481583698 396961146 396961146 132301544 132301544 305710866 692193509 692193509 549456502 852887588 852887588 870294248 985628285 985628285 489693975 489693975 810092488 810092488 765534573 660931021 639895833 115607697 66373904 66373904 55839408 347310319 709254069 709254069 714806817 732645686 1068932354 1068932354 872906797 872906797 738269327 886886091 886886091 885787851 904996145 995222132 995222132 278190132 559484137 629968960 629968960 207812636 207812636 37033940 490828522 728686005 899573137 953951611 953951611 340472970 977924392 1025532386 1025532386 273990954 89654952 89654952 348391266 348391266 142738316 142738316 77726208 78644040 78644040 368315370 368315370 361281514 71649283 71649283 986376881 986376881 858124268 882317291 882317291 725325307 682875693 678452857 203491096 718588629 718588629 630495984 240454624 425467504 425467504 401119280 845859068 845859068 884550902 884550902 124927968 167990608 268622892 478359558 478359558 420113246 321100144 321100144 305173472 382919482 382919482 354522026 354522026 71828616 71828616 92890368 92890368 111264281 1018852169 1073238069 1073238069 723801545 596429937 1047993113 1047993113 1041026079 1041026079 205684827 222175020 222175020 225235220 225235220 174997140 187951952 408429382 408429382 333456512 333456512 1002554052 1002554052 821810881 135328564 154595876 154595876 50853936 723939872 723939872 734425749 734425749 597088881 420780839 116457216 324059556 509682646 509682646 93946210 75621912 41420688 285967112 319844520 319844520 177976424 177976424 143162912 84477000 126623304 228200820 228200820 27788640 665719237 747776120 747776120 585185507 585185507 569387092 1027093610 1027093610 378037990 362284650 789748343 789748343 1021226101 1044381855 1044381855 1017114208 638811208 638811208 193700464 193700464 165384356 706017480 706017480 575054432 650337969 650337969 541992624 72827433 561771265 605551105 626913409 626913409 621314856 606525705 606525705 2968576 94078050 269840162 297367114 297367114 355560992 355560992 93187944 68631048 361194530 883739976 883739976 606129163 555533347 269484546 268587522 858277906 858277906 589042576 589042576 560864673 275058993 4078098 374902938 374902938 123083448 337727946 337727946 173205728 173205728 356246952 399546752 399546752 132488880 44577032 378535002 378535002 336280864 336280864 244006969 325533961 325533961 641799397 641799397 312705106 73922952 614728712 614728712 77596745 563659137 563659137 692139716 749368322 749368322 503316294 503316294 459924740 459924740 516764886 822746291 891841120 891841120 824378018 824378018 757646637 729687001 547879233 591272241 595468209 604976424 604976424 389582336 283866448 283866448 51165744 49095040 6562688 36017024 36017024 24189104 121821336 121821336 64491952 68891656 68891656 55929104 47264336 80970120 80970120 47522050 395371340 395371340 346207066 136468096 404763924 404763924 36175878 600102976 600102976 340167209 928930985 928930985 1033275905 1033275905 807998384 807998384 88289448 88289448 309981120 309981120 297521250 610417672 610417672 874092843 874092843 837873376 837873376 764488973 764488973 698228388 163728044 88129704 865079852 865079852 219284083 37822608 148187344 566256720 566805729 566805729 82313408 82313408 622418565 622418565 208401804 868667978 1054204519 1054204519 884666103 826557314 826557314 722952880 867003106 867003106 1004804762 1004804762 125829240 813828488 821845536 836948451 836948451 794461739 105894904 28504336 168774944 168774944 68334536 116611104 353698854 354007404 354007404 445584256 445584256 650772747 650772747 63640984 106305741 691250172 691250172 488919802 584456385 584456385 350683922 277348374 903529136 903529136 873203273 873203273 634070496 57397808 57397808 268660370 273887874 273887874 269474816 72442408 18387488 10220608 68471304 68471304 272926218 359967658 359967658 340845090 89244546 356085000 356085000 275786880 337549832 337549832 336713616 70727696 70727696 671387968 681912645 681912645 614596885 67596721 911279322 911279322 103731400 280585480 401681986 401681986 295833954 295833954 273249376 310780258 310780258 269231120 65621056 65621056 30268096 676056769 676056769 703634432 703634432 671666000 671666000 584982225 675596421 675596421 442550548 442550548 720581490 720581490 560071172 695341989 695341989 440022037 191436050 7318784 577519638 858745103 858745103 909377813 953420310 953420310 823710326 823710326 832095014 832095014 823222529 260836370 476758506 572992852 974126103 1001290966 1001290966 301299008 283380162 298464578 298464578 293401344 21498368 39095088 545821152 545821152 566527137 566527137 14975425 311755160 335610442 335610442 252885032 110145624 197175860 278185688 300229724 300229724 505996602 951997903 951997903 839777162 839777162 899116181 899116181 853163163 810672771 387189376 387189376 207464077 554697249 1020271350 1020271350 897581667 897581667 905972315 905972315 869668592 869668592 861399718 861399718 713301031 995315826 995315826 64345242 115639154 115639154 76024244 107293776 308937160 416254450 416254450 494000556 500484846 500484846 466707122 357829290 357055408 290331810 275914112 344644920 344644920 367864148 367864148 514406901 935667659 935667659 767198847 702546405 702546405 697033317 826413669 827401639 827401639 841194464 841194464 812970228 812970228 708944661 708944661 714806279 714806279 572162816 572162816 541020944 216191436 250366856 250366856 120048400 120048400 69003456 124670976 324094504 324094504 273787594 299188882 299188882 81177184 500592013 500592013 350441452 350441452 722731144 722731144 796942843 925159178 925159178 1051011418 1051011418 859048531 637460457 549539043 893876395 893876395 820729944 820729944 296993314 279056706 272014176 19058976 291131874 291131874 218239968 97393184 97393184 144332608 147737796 147737796 183617456 183617456 254390164 254390164 187762072 1055638492 1055638492 678065183 619967433 881385873 881385873 384117210 843087232 843087232 729918069 729918069 854414704 854414704 342877433 712590500 712590500 525848152 197878699 666583672 666583672 860661647 860661647 738857997 908458443 908458443 476763534 476763534 467786345 767873613 1033891527 1033891527 976051375 978491272 978491272 423803460 161651264 152093220 14891200 154319716 154319716 157457088 209916364 209916364 151269476 101075616 130097400 250053360 250053360 165116912 165116912 789709432 789709432 650743388 650743388 581773644 616900809 616900809 48464377 697879940 697879940 301032354 301032354 608524098 608524098 839127082 839127082 969790255 969790255 944168080 944168080 675992709 193727580 193727580 186397192 596510996 823460654 823460654 638064192 579106320 579106320 383203531 559347667 559347667 330116466 128838002 984534532 984534532 872435019 840883731 277958157 278018076 681779200 749163060 749163060 616217675 423707951 428107796 439839106 481395524 481395524 421033592 965351586 965351586 809701395 672013317 672013317 646455811 717087583 717087583 144036292 189191324 189191324 243798196 243798196 335581184 1071337788 1071337788 922109032 922109032 942266624 942266624 815254177 738269804 280764908 466167030 1017717251 1017717251 393290682 1044171307 1044171307 680562037 680562037 731385905 731385905 700713189 978786518 978786518 666954361 369165642 494936398 494936398 92352592 161689700 264458406 293646424 293646424 182011370 207177244 642784852 849872896 1053051287 1053051287 906808347 443547912 508560030 508560030 306333398 306063648 117927714 581613088 597214833 597214833 147940352 1832448 599593824 599593824 571787793 302192000 302192000 104393382 443385150 509949984 509949984 269070778 269070778 232867990 490013318 490013318 419694630 419694630 312535616 598273633 598273633 589656416 589656416 586730433 578672913 581363281 581363281 38384768 575484624 575484624 573969152 188561396 188561396 155793068 221847340 886308801 886308801 616011593 886836939 886836939 618186441 938759546 938759546 287890031 351228866 351228866 792780228 819499769 968884520 968884520 805312518 788796448 294031498 400988896 886534232 886534232 822581387 610271720 604028937 101893129 85068232 85068232 75501568 133320 8390784 8390784 36973840 60304560 60304560 422864726 422864726 301584256 301584256 286901762 442329874 454111654 465594370 465594370 447795654 447795654 311464228 376648490 376648490 324733874 527000972 578912525 578912525 495465794 982455379 982455379 1026727910 1026727910 794559582 880462934 880462934 171792388 171792388 287491060 425208510 425208510 397072672 397072672 995846656 1057923425 1057923425 452605503 657329035 1034158188 1034158188 351016364 998662218 1000359722 1000359722 623890088 623890088 516742404 885425798 885425798 784344530 660932721 660932721 637797882 810793163 810793163 1042075167 1042075167 559205025 819260072 819260072 568647528 567959584 700842965 700842965 143723989 44926228 178022352 178022352 49367396 197446868 197446868 52081234 317882208 855334289 855334289 538487945 625911138 988011523 1048262546 1048262546 703307546 703307546 549638337 461800494 688830568 688830568 639859317 721735996 721735996 101081005 25339296 265759098 536159519 919482499 919482499 254681660 859708200 859708200 723774248 1005616042 1005616042 812237356 812237356 794420400 552273704 86016160 89802193 791250569 791250569 886730493 886730493 519440178 519440178 18225696 544609798 767664535 1010975068 1010975068 909386776 909386776 643338180 59583600 759254356 759254356 189628475 251733260 419430404 797966699 797966699 786436388 1018331188 1018331188 318806144 845285679 845285679 458254518 958481803 958481803 69329160 102945048 343134208 343134208 302754450 171945168 403177792 403177792 104164746 309406786 311453258 380374362 920396816 920396816 612042641 608310913 386129984 386129984 323401898 323401898 695471787 794363535 794363535 793654655 922423012 922423012 464395330 406913200 406913200 529728546 529728546 218125052 252255652 323136614 616887345 910365698 910365698 870210898 870210898 835828547 835828547 665244007 453337655 132301544 132301544 305710866 336822028 336822028 524400916 1022598058 1022598058 885663802 985628285 985628285 489693975 489693975 810092488 810092488 765534573 660931021 639895833 700241281 700241281 705663700 705663700 645423430 353770026 353770026 521665086 521665086 105914586 672665648 872906797 872906797 822219842 427819110 427819110 355726122 904996145 904996145 278190132 278190132 604505624 629968960 629968960 373304456 646236249 745976597 745976597 728686005 899573137 953951611 953951611 850135556 977924392 1025532386 1025532386 132170232 65013768 131203520 131203520 270571930 373495512 458078932 458078932 370802002 438707670 438707670 368315370 361281514 94390372 201354276 986376881 986376881 858124268 882317291 882317291 725325307 682875693 678452857 438324416 956713216 956713216 630495984 240454624 425467504 425467504 293901540 864166432 864166432 884550902 927231130 927231130 167990608 262251644 262251644 926812 289593968 306101280 306101280 305173472 304345362 291177824 279731074 279731074 91199872 298493386 298493386 286085358 286085358 218688450 343710310 423758304 423758304 577480744 856961265 856961265 849680947 841296147 29703192 34530552 102244496 225235220 225235220 174997140 120835200 408429382 408429382 333456512 333456512 1002554052 1002554052 821810881 733823793 733823793 169918740 192026900 723939872 723939872 801105569 801105569 597088881 420780839 481645152 755321003 755321003 509682646 93946210 75621912 41420688 944916503 944916503 832721791 832721791 598864968 269296128 84477000 26648616 444599166 444599166 791677377 791677377 747776120 747776120 585185507 585185507 549913530 1027093610 1027093610 947912948 947912948 859832499 789748343 1021226101 1044381855 1044381855 1058845264 1058845264 676605480 767694541 767694541 702361317 706017480 706017480 773476972 773476972 645051217 723860653 723860653 561771265 605551105 626913409 626913409 621314856 606525705 606525705 68079360 629938441 629938441 297367114 297367114 355560992 1030629897 1030629897 810685059 418817095 883739976 1025556681 1025556681 782537240 564413226 910852757 910852757 814243464 589042576 589042576 560864673 577376400 577376400 106758593 123083448 123083448 192680316 192680316 173205728 173205728 119692360 119692360 19240888 3355392 44577032 201327956 201327956 338690832 338690832 331121274 325533961 325533961 641799397 641799397 646497369 646497369 640279633 614728712 77596745 563659137 563659137 692139716 749368322 749368322 503316294 503316294 459924740 459924740 516764886 822746291 891841120 891841120 729516093 757646637 757646637 729687001 547879233 591272241 595468209 604976424 604976424 541801241 270894874 91944472 271184130 271184130 35150720 36017024 41349136 314157402 314157402 121821336 305729346 305729346 68891656 24186720 46487808 80970120 80970120 306657426 395371340 395371340 833026273 833026273 404763924 404763924 358308640 600457908 600457908 583082193 692729200 692729200 1066293276 1066293276 941879559 807998384 88289448 88289448 309981120 309981120 143860776 610417672 610417672 539314496 539314496 351846785 622149640 622149640 78540523 93200004 93200004 88129704 541360256 541360256 37822608 37822608 148187344 566256720 566805729 844417208 844417208 321391105 622418565 622418565 208401804 868667978 1054204519 1054204519 884666103 528339330 722952880 722952880 661132152 661132152 1004804762 1004804762 125829240 272630010 821845536 836948451 836948451 794461739 538637917 633653481 642161128 642161128 256178216 224834132 353698854 354007404 354007404 445584256 445584256 207821912 364256106 364256106 488640590 488640590 236093812 330324792 359940858 359940858 805962160 810026115 903529136 903529136 873203273 873203273 834916520 622497802 57397808 806200593 806200593 672172678 269474816 553816064 671505665 688316164 688316164 673087520 673087520 560998016 359967658 340845090 89244546 356085000 356085000 275786880 337549832 337549832 336713616 204763924 172368640 671387968 681912645 681912645 614596885 67596721 54717936 97495072 103731400 103731400 130340160 130340160 69549784 107314384 155004708 179847060 179847060 175635348 175635348 155662336 155662336 13699104 17107072 575806256 575806256 671666000 671666000 584982225 428396324 326111218 302564224 66399124 137702148 733352128 733352128 962465574 962465574 945508423 554264741 724356107 724356107 611461034 341655660 909377813 953420310 977444220 977444220 789711241 414713670 981861490 981861490 834018147 814772521 572992852 974126103 1001290966 1001290966 305297361 305297361 298464578 543245861 687869829 687869829 672006468 672006468 144710661 81840488 708117105 708117105 750054080 750054080 252885032 252885032 110145624 197175860 197175860 308875141 308875141 363601258 951997903 951997903 839777162 839777162 899116181 899116181 853163163 810672771 387189376 387189376 207464077 554697249 1020271350 1068261636 1068261636 996744477 905972315 905972315 869668592 869668592 861399718 861399718 109929184 210285696 210285696 64554568 22945440 33563648 486617110 486617110 269432840 416005122 416005122 437191824 437191824 444285904 444285904 357055408 357055408 290331810 275914112 341821512 341821512 387290946 387290946 125589808 125589808 765010328 765010328 729302525 729302525 715432760 428006224 428006224 929258142 929258142 308404626 418915140 519796226 519796226 412689282 403166274 403166274 447370818 447370818 445648912 101761560 101761560 97592040 133967120 133967120 31430840 124670976 324094504 324094504 273787594 299188882 846039347 846039347 785279369 621682578 723866713 763504107 763504107 722731144 570704016 46321872 69480808 794622416 794622416 637460457 637460457 69349097 74482568 74482568 1972864 6426752 7340928 21234464 21234464 6340992 137457380 137457380 18218944 16699844 16699844 144332608 147737796 147737796 183617456 536183806 536183806 278429885 456270727 927160890 927160890 753294885 753294885 583963217 583963217 384117210 843087232 843087232 604315329 550849248 30640224 30640224 35989776 55692192 55692192 33561472 33561472 19138848 18123776 950846288 975225111 975225111 356589738 625152130 625152130 541065345 990926250 990926250 1001472109 1038099197 1038099197 416393301 385712508 350901120 434510146 434510146 295983430 276861216 154319716 492354400 492354400 491571430 491571430 235422784 406864898 406864898 250053360 165116912 165116912 789709432 789709432 772113048 762692428 762692428 218694380 596396342 805505539 912429703 1047944834 1047944834 588911062 966887467 966887467 122948280 374889400 374889400 125208218 469931032 469931032 236455982 1015747334 1015747334 966861159 958474573 823460654 823460654 464005633 624083690 624083690 383203531 33788168 102883608 102883608 45799248 984534532 984534532 872435019 840883731 810723648 880210057 880210057 749163060 749163060 626712321 621546537 78690560 439839106 909504925 909504925 772985373 965351586 965351586 1036991727 1036991727 1024348401 764035703 717087583 717087583 12982464 189191324 189191324 243798196 243798196 409738320 1071337788 1071337788 922109032 922109032 851105619 424858278 424858278 293601312 280764908 466167030 1017717251 1017717251 393290682 1044171307 1044171307 140509572 520672870 731385905 731385905 575093444 1065431194 1065431194 700584165 507823552 507823552 494936398 1060109631 1060109631 898587095 809900163 665437643 665437643 927015370 927015370 849872896 1053051287 1053051287 906808347 382339660 382339660 366857751 1065691263 1065691263 758909028 758909028 597214833 751854421 821915587 821915587 686629764 686629764 293723578 319659096 516543050 516543050 443385150 509949984 509949984 370673178 370673178 384178650 490013318 490013318 419694630 419694630 312535616 184578048 9598848 15095616 15095616 12569216 34514944 34514944 38384768 38384768 175166340 175166340 277639682 277639682 288615492 428712198 428712198 419555366 437635666 437635666 177354754 291481498 396698986 396698986 269585256 974117696 974117696 419671575 296821602 92999976 269628636 366491116 366491116 169530900 194024544 296809360 886534232 886534232 832569657 27280506 659066393 659066393 85068232 85068232 94164640 548626561 548626561 86575400 577834449 577834449 4836928 38578768 38578768 23661696 12632448 10486080 5605568 53538976 180406944 180406944 161925824 32918048 32509264 53613440 53613440 313993792 527000972 527000972 287136495 287136495 507301662 949096096 949096096 740443253 655905938 878366796 878366796 684815730 817481280 820748608 1029383895 1029383895 812716032 397072672 881868866 881868866 934090220 953890129 953890129 1034158188 1034158188 351016364 998662218 1000359722 1000359722 623890088 623890088 244235952 804495608 804495608 663014265 660932721 660932721 136447424 277532620 428219420 428219420 394790010 235065030 24909344 568647528 568647528 567959584 596955457 596955457 34079760 34079760 178022352 178022352 203500360 203500360 11092416 80512328 80512328 21165136 478983840 478983840 625911138 988011523 988011523 488657193 373293210 245985766 461800494 461800494 688830568 688830568 143237221 578620252 741514040 741514040 750110981 750110981 563226753 919482499 919482499 254681660 859708200 859708200 723774248 1005616042 1005616042 812237356 812237356 794420400 577282101 234972580 590561989 590561989 143868260 543185920 678956688 678956688 683672808 798635229 798635229 657143192 254346496 109504264 72458760 622159688 776775176 776775176 245396732 546991177 546991177 938225071 938225071 797966699 797966699 786436388 1018331188 1018331188 256243858 845285679 845285679 625847821 958481803 958481803 326271750 8292242 119595400 444199728 444199728 421002166 403177792 403177792 187507024 309406786 639681475 639681475 920396816 920396816 909823755 608310913 302215752 302215752 323401898 572787217 695471787 794363535 794363535 793654655 922423012 922423012 187565106 459916096 459916096 529728546 529728546 218125052 252255652 323136614 323136614 910365698 910365698 870210898 870210898 835828547 835828547 665244007 976049505 976049505 658158318 458833094 458833094 512043102 814022685 1022598058 1022598058 885663802 906630171 906630171 194614483 258788796 258788796 256026880 258472380 258472380 644824216 700241281 700241281 705663700 705663700 645423430 309251133 309251133 80246080 978157221 978157221 370545026 370305596 822219842 822219842 427819110 427819110 355726122 355726122 120688658 42992208 42992208 604505624 604505624 564958400 564958400 646236249 745976597 745976597 491487707 525375242 525375242 481561422 850135556 850135556 304917186 304917186 132138074 344261048 344261048 131203520 270571930 373495512 458078932 458078932 370802002 438707670 438707670 88347848 88347848 94390372 201354276 219875244 219875244 90459264 445285842 445285842 285879474 228728786 998305130 998305130 956713216 956713216 572556455 476274974 304462262 304462262 778700040 864166432 864166432 848507475 927231130 927231130 120270860 159777908 160107696 160107696 163149600 163149600 73477120 73477120 80965000 80965000 279731074 279731074 91199872 298493386 298493386 286085358 286085358 843669203 843669203 852012753 853415059 864813280 864813280 856961265 849680947 841296147 232789388 232789388 208273900 102244496 100778496 40636688 36313136 20447776 20447776 2622720 20458096 538343251 538343251 278616848 733823793 733823793 169918740 192026900 192026900 37748880 801105569 801105569 793874837 174467984 481645152 755321003 755321003 233122284 220201260 220201260 28379148 944916503 944916503 832721791 832721791 598864968 271216704 480248142 480248142 444599166 444599166 791677377 791677377 393349874 804446692 804446692 252367932 476734664 476734664 738354358 947912948 947912948 859832499 560336356 560336356 338039258 890515466 1058845264 1058845264 676605480 767694541 767694541 702361317 702361317 688474624 773476972 773476972 645051217 723860653 723860653 570034080 621525025 630842985 630842985 538252288 538252288 537886209 138256932 629938441 629938441 94248552 70450024 338086439 1030629897 1030629897 810685059 418817095 621724898 1025556681 1025556681 782537240 564413226 910852757 910852757 950845668 950845668 621990441 621990441 1017455926 1017455926 736767232 844104339 1071647968 1071647968 363576150 56672688 30017216 378161912 390913232 390913232 131503688 77071944 101977376 128713016 381195802 381195802 389089594 389089594 17055850 601555896 618187708 646497369 646497369 640279633 77071808 552084864 552084864 20449056 71827712 274210960 274210960 387195340 397724538 397724538 322832608 322832608 264704842 264290556 682227924 682227924 572048913 687919268 687919268 541200513 155369509 22070432 107946144 541801241 541801241 270894874 230107072 271184130 271184130 35150720 34027536 41349136 314157402 314157402 43116040 305729346 305729346 48849624 55007952 55007952 48660832 27803122 306657426 306657426 166031445 833026273 848319750 990811989 990811989 555324224 600457908 600457908 583082193 692729200 692729200 1066293276 1066293276 941879559 605780390 526546059 418571382 977326530 977326530 1031702473 1031702473 559318432 559318432 539314496 351846785 622149640 622149640 745194496 745194496 93200004 805851584 805851584 945066697 945066697 335676081 335676081 399871000 399871000 997438468 997438468 561699073 538702756 588369468 604099712 938080762 938080762 893836915 635306009 740642685 740642685 201851916 201851916 343966736 378061914 617644105 617644105 1049668298 1049668298 109365980 48450517 386800685 538637917 633653481 642161128 642161128 256178216 224834132 700456961 700456961 696803556 696803556 684585420 684585420 721994805 721994805 488640590 843191089 843191089 330324792 854622969 854622969 805962160 810026115 843842691 927482464 927482464 834916520 834916520 622497802 339438634 806200593 806200593 672172678 209618441 553816064 671505665 688316164 688316164 673087520 673087520 560998016 318851130 52762994 4219392 5332992 7413888 270814084 270814084 817027785 817027785 204763924 672542789 672542789 578268116 578268116 712611520 712611520 652739793 642282360 642282360 598732720 598732720 33584928 33584928 35281732 155004708 179847060 179847060 175635348 175635348 161229792 157622453 793446745 793446745 725813333 222110365 603531184 624508913 624508913 698664229 698664229 114606028 114606028 456262338 733352128 733352128 962465574 962465574 945508423 554264741 724356107 724356107 611461034 341655660 499956587 499956587 977444220 977444220 871531852 444630389 981861490 981861490 834018147 814772521 416414740 509822874 509822874 61921603 305297361 305297361 50374421 543245861 687869829 687869829 672006468 672006468 747147617 747147617 708117105 708117105 750054080 750054080 0 0 0 0 0 308875141 308875141 363601258 803603385 803603385 161954148 269448706 281540802 281540802 3868354 35877872 35877872 32771040 299562128 381821302 721096467 1068261636 1068261636 996744477 711233600 219168768 219168768 160449276 12604132 109929184 385781578 385781578 384622746 384622746 293281570 121852958 486617110 486617110 269432840 416005122 416005122 437191824 437191824 352272330 336759752 336759752 58059696 473890982 473890982 341821512 341821512 387290946 387290946 955014504 955014504 765010328 765010328 729302525 729302525 715432760 847780597 847780597 929258142 929258142 657800158 652415648 652415648 519796226 174696384 403166274 403166274 447370818 447370818 445648912 114665392 130139736 130139736 133967120 133967120 110418040 107123608 372680928 372680928 268749616 736279615 846039347 1040350401 1040350401 621682578 723866713 763504107 928978222 928978222 896149050 56448293 396210744 396210744 907107630 919601883 919601883 391457009 122159920 51381544 0 0 0 4069952 8914240 9308992 25818688 25818688 161315520 161315520 151833636 22709764 5204176 48482464 48482464 536183806 536183806 278429885 588188800 927160890 927160890 753294885 753294885 583963217 583963217 576717312 576717312 260098632 550849248 1072490272 1072490272 218349231 965077095 965077095 666987339 280559892 134956956 549468172 651527761 950846288 975225111 975225111 356589738 625152130 625152130 555685369 990926250 990926250 1001472109 1038099197 1038099197 416393301 385712508 83773260 434510146 434510146 300552704 408265314 410268422 492354400 492354400 491571430 491571430 235422784 406864898 406864898 4194304 57856 43289233 800284673 800284673 772113048 762692428 762692428 175500180 596396342 805505539 912429703 1047944834 1047944834 987211814 987211814 966887467 750684889 809976554 809976554 683828451 967372192 967372192 419595280 1015747334 1015747334 966861159 958474573 1042297142 1042297142 332108168 624083690 624083690 345575265 33788168 102883608 379786312 379786312 616244304 942224148 942224148 840570387 810723648 880210057 880210057 680110116 717685563 917673735 917673735 413212372 413212372 909504925 909504925 772985373 518236888 944273656 1036991727 1036991727 1024348401 764035703 1041445407 1041445407 944906392 0 0 203614720 203614720 891662688 891662688 305653676 305653676 849042084 849042084 424858278 424858278 225068810 138303872 65270256 65270256 37299984 37299984 780714568 780714568 673186053 641862101 444337814 442240918 584130580 1065431194 1065431194 700584165 507823552 507823552 151070752 1060109631 1060109631 898587095 809900163 665437643 665437643 927015370 927015370 459392992 260301036 302174226 875387415 959414890 959414890 614822280 1065691263 1065691263 758909028 758909028 823706227 823706227 821915587 821915587 721951589 721951589 293723578 319659096 516543050 908502089 908502089 719084618 719084618 370673178 370673178 384178650 435893498 436614016 914626690 999295652 999295652 49406656 23167152 60875568 61530288 61530288 36490512 36490512 35876416 41944592 41944592 39327232 277639682 277639682 370659564 428712198 428712198 419555366 437635666 437635666 136183890 169673810 169673810 170278172 170278172 974117696 974117696 721223829 838916936 838916936 547151131 815187498 815187498 756521448 834138763 904110984 904110984 920932569 920932569 387992984 659066393 659066393 60067352 31900160 94164640 548626561 548626561 86575400 577834449 577834449 1887744 25199616 25199616 17417312 12632448 10486080 316670882 410026368 461422710 461422710 268740368 445060480 466791524 466791524 191864244 313993792 492542862 492542862 409593902 442286618 442286618 949096096 949096096 423399476 318767120 1061191782 1061191782 684815730 817481280 820748608 1029383895 1029383895 812716032 344700280 881868866 1038094534 1038094534 953890129 953890129 362227947 73864584 45245008 220247016 220247016 38298128 108774808 108774808 134629376 134629376 134402052 134555652 210438148 210438148 136447424 960715458 960715458 825230513 1005735619 1005735619 828278531 551575808 307265860 545570432 545570432 45712656 45712656 34079760 3737280 135021824 203500360 203500360 6605184 80512328 80512328 272846274 478983840 901443845 901443845 683249326 809260729 1058674239 1058674239 597762417 597762417 904378594 904378594 300415467 665122864 718276728 741514040 741514040 750110981 750110981 563226753 218964821 644940832 644940832 592932992 592932992 28425488 75738808 75738808 59673408 111956512 577282101 577282101 234972580 590561989 590561989 143868260 143868260 678956688 678956688 683672808 798635229 798635229 657143192 254346496 47341672 97987008 622159688 776775176 776775176 245396732 546991177 595888618 938225071 938225071 876949551 876949551 542455861 542455861 369690628 881263691 881263691 676231222 625847821 625847821 522869289 326271750 37423552 119595400 444199728 444199728 421002166 289990800 289990800 187507024 276350537 639681475 639681475 573571857 909823755 909823755 417757762 373807190 41310674 102760728 572787217 572787217 208350532 591543717 591543717 319697536 405175490 405175490 459916096 459916096 149889288 235782880 235782880 198971124 186237408 874721547 990045019 990045019 228714888 328241353 707998485 707998485 571685425 976049505 976049505 658158318 458833094 596983341 596983341 814022685 814022685 1062286208 1062286208 407308667 499127784 499127784 298173407 86991218 256026880 258472380 258472380 828448966 828448966 415310243 54888836 166787906 166787906 379689666 379689666 80246080 978157221 978157221 370545026 293157282 832635265 978330818 995624631 995624631 882513483 882513483 516895294 516895294 700057776 700057776 336724187 635783267 914358575 1053820990 1053820990 812983199 604173155 1020381135 1020381135 639410817 943984467 943984467 719122306 719122306 243269724 344261048 344261048 58984560 295000608 334879664 334879664 99349992 112244400 112244400 62816208 23743872 83624640 83624640 91929472 91929472 32228532 33602578 445285842 445285842 285879474 228728786 998305130 998305130 435876631 277068335 671311111 671311111 304462262 304462262 778700040 778700040 999087719 999087719 486648913 86231996 259453228 259453228 160107696 360458562 360458562 163149600 371671904 371671904 310691922 312510720 312510720 65660400 65660400 154210692 154210692 32450592 22588608 843669203 843669203 852012753 853415059 864813280 864813280 912415249 912415249 910986062 1054483160 1054483160 250806100 73609472 91404680 91404680 76871696 300279650 300279650 31177776 31177776 16777248 36184064 270655746 461410502 461410502 426415154 454563236 540152608 540152608 701702836 793874837 793874837 631384694 324352072 454320692 454320692 233122284 220201260 220201260 28379148 100991576 270538018 270538018 420005224 420005224 271216704 480248142 480248142 417671278 248586934 248586934 385065734 385065734 804446692 804446692 252367932 476734664 476734664 738354358 738354358 1013579875 1013579875 197546081 182485122 338039258 338039258 276480896 504600480 504600480 765129845 765129845 672355356 680735769 680735769 583444544 574877841 579738705 890439074 890439074 570034080 738097402 738097402 630842985 443818390 376458252 376458252 308023460 207300462 936048490 936048490 843096307 454278811 346896740 170194444 235639316 819484563 819484563 295954658 188217296 248659529 263271416 892301088 892301088 950845668 950845668 621990441 1061543346 1061543346 1017455926 736767232 844104339 1071647968 1071647968 430706022 430706022 255387536 378161912 390913232 390913232 138916916 77071944 134497028 134497028 381195802 381195802 389089594 389089594 134690820 601555896 773264985 773264985 760817005 760817005 750854109 700059701 700059701 870917619 1014960583 1014960583 553922544 444997624 444997624 321694120 322832608 476517326 484651470 484651470 772347140 772347140 751379661 751379661 687919268 740312232 740312232 694732197 157943077 153802020 84431116 113455320 230107072 230107072 204676984 8975424 42562560 42562560 33750032 34288656 104511240 104511240 78766480 48849624 55007952 55007952 82066632 82066632 32167392 72143052 72143052 189666416 848319750 990811989 990811989 876162372 555324224 96567904 96567904 403943626 403943626 345177024 1030035738 1030035738 605780390 526546059 418571382 977326530 977326530 1031702473 1031702473 740538496 875597001 875597001 875635467 1025082255 1025082255 745194496 745194496 501540936 805851584 805851584 945066697 945066697 335676081 625281154 625281154 399871000 997438468 997438468 561699073 538702756 873793030 873793030 938080762 938080762 893836915 635306009 740642685 740642685 380962962 201851916 438265186 438265186 617644105 617644105 1049668298 1049668298 88449661 48450517 386800685 386800685 407896710 407896710 308412848 182698436 182698436 700456961 700456961 696803556 696803556 684585420 684585420 721994805 721994805 673237590 843191089 843191089 801516440 854622969 854622969 336516449 1058270967 1058270967 927482464 927482464 621397090 621397090 339438634 339438634 336047898 67652104 673471488 673471488 562713120 562713120 84859435 758642440 758642440 337754432 337754432 357924920 357924920 127231442 355951448 355951448 385802632 385802632 817027785 817027785 173421584 672542789 672542789 578268116 578268116 712611520 712611520 652739793 642282360 642282360 598732720 598732720 12583104 110285976 117582688 117582688 130796416 130796416 15983488 161229792 161229792 685376097 793446745 793446745 747545544 689574000 603531184 624508913 624508913 698664229 698664229 630231857 423656726 456262338 710357331 710357331 558039300 214508748 214508748 232850720 232850720 387203968 387203968 386194586 425122470 425122470 242406300 871531852 973604459 973604459 745248067 570114264 701600225 701600225 416414740 509822874 509822874 460918478 453923536 453923536 180058944 65063472 557502536 607261449 607261449 612609120 747147617 747147617 242254160 242254160 219451948 221649708 237046528 237046528 64234304 64234304 153172384 186190356 186190356 169092660 293673222 293673222 161954148 269448706 281540802 281540802 3868354 35877872 35877872 32771040 299562128 299562128 134401040 304991268 304991268 288308514 324289032 324289032 219168768 407023776 407023776 206043652 385781578 385781578 904143607 904143607 324027460 758285761 758285761 169878026 114047128 114047128 554283119 677509670 683010885 857827568 857827568 409010944 323410098 473890982 473890982 288915368 288915368 854526081 854526081 1016724675 1016724675 699921331 529235597 405630338 425674323 425674323 847780597 847780597 945257110 945257110 657800158 652415648 652415648 411581956 269533698 269533698 43552336 45879120 48521536 48521536 114665392 130139736 130139736 119835008 119835008 110418040 107123608 372680928 372680928 346836746 736279615 736279615 1040350401 1040350401 856871304 856871304 727704145 928978222 928978222 896149050 562139137 396210744 538184292 907107630 919601883 919601883 391457009 122159920 58261664 38282512 2623120 1709824 21107872 21107872 9308992 25818688 149139584 161315520 161315520 151833636 22709764 5119104 48482464 48482464 83987228 83987228 235676204 588188800 588188800 84219180 804033893 804033893 1032622438 1032622438 576717312 576717312 574636304 117492240 1072490272 1072490272 953475927 965077095 965077095 666987339 934221138 934221138 855327819 706693215 651527761 793384125 793384125 985664879 985664879 665392344 806954499 806954499 557616642 525158323 525158323 499013929 768356058 768356058 558383909 558383909 405456704 405456704 408265314 542124929 542124929 409768392 673188229 673188229 159663180 223365428 223365428 228538636 228538636 143027632 800284673 800284673 688710672 715129777 715129777 712705717 682364229 750528897 750528897 675899200 848795068 987211814 987211814 900229320 830644835 830644835 809976554 683828451 967372192 967372192 749996877 419595280 237584674 67317768 809884728 1042297142 1042297142 558106648 590873152 590873152 898226392 140864 10171968 379786312 379786312 378607304 942224148 942224148 1043595276 1043595276 738347935 541249665 680337940 717685563 917673735 917673735 898106428 916042833 916042833 474778270 628945337 628945337 921031819 921031819 374080708 374080708 709635209 1041445407 1041445407 944906392 605763081 539110408 848373857 848373857 891662688 891662688 305653676 305653676 849042084 879304874 879304874 338257193 407421768 407421768 135792132 745852689 745852689 372802248 780714568 780714568 673186053 641862101 537987904 322505234 584130580 584130580 1033616084 1033616084 151162932 184700964 184700964 956530460 1035758547 1035758547 792879769 792879769 543248587 498074478 675284182 675284182 449314949 302174226 875387415 959414890 959414890 895590216 895590216 836763363 276132672 829088994 976599395 1006058487 1006058487 555350119 721951589 780454044 780454044 578826538 811807865 908502089 908502089 719084618 719084618 365940225 305250222 305250222 435893498 436614016 914626690 999295652 999295652 263250104 79888416 60875568 61530288 61530288 36490512 36490512 14956032 41944592 135728004 189084364 189084364 164819032 370659564 370659564 338240778 338240778 145852426 345284184 446044758 446044758 257825354 966138557 966138557 704720917 721223829 721223829 838916936 838916936 668521891 815187498 815187498 756521448 834138763 904110984 904110984 920932569 920932569 387992984 339425034 387392538 387392538 389983770 389983770 344682154 378536674 378536674 353681920 353681920 246642524 246642524 199854932 97199532 97199532 82388424 316670882 410026368 461422710 461422710 268740368 445060480 466791524 466791524 334179104 334179104 492542862 492542862 409593902 442286618 442286618 244223093 627445492 627445492 621414200 1061191782 1061191782 672211076 672211076 513941708 472527982 476261582 476261582 128574840 277423330 1038094534 1038094534 827663290 639895833 1065879036 1065879036 290055330 290055330 289084202 289084202 791939901 791939901 727694541 837947718 837947718 242271132 242271132 414515008 414515008 960715458 960715458 825230513 1005735619 1005735619 828278531 551575808 556528673 589000836 589000836 693948037 693948037 537513472 555222561 560759681 742731148 742731148 141551748 209219336 209219336 272846274 475533098 901443845 901443845 683249326 809260729 1058674239 1058674239 597762417 597762417 904378594 904378594 300415467 665122864 718276728 718276728 266556008 17156128 51718368 57022896 58792056 644940832 655360432 655360432 634411961 296650411 62315376 80585872 298182738 654920936 654920936 889200803 889200803 100930720 79827144 42363760 53647008 53647008 35131904 35131904 29829272 35428912 128506816 128506816 90641224 97987008 97987008 219244652 219244652 475360124 475360124 596097514 755508345 869289191 876949551 876949551 542455861 542455861 369690628 881263691 881263691 831668364 839158455 839158455 542747162 856154662 856154662 827005570 716885845 716885845 808136212 855228864 855228864 438691840 309428384 384829064 384829064 372244506 444778692 444778692 417757762 858167576 889471025 889471025 637141231 637141231 768685424 768685424 900997658 900997658 405175490 405175490 389624304 333323990 446305878 446305878 235782880 198971124 186237408 874721547 990045019 990045019 235479330 328241353 707998485 707998485 571685425 407216274 289950758 286478354 286478354 596983341 596983341 453313198 742465677 1062286208 1062286208 739390148 562789395 562789395 338068816 401999761 401999761 183306386 761818216 828448966 828448966 711846485 812141204 812141204 590160004 681084288 1026741039 1026741039 775687965 775687965 554697484 605365378 832635265 978330818 995624631 995624631 882513483 882513483 516895294 516895294 700057776 700057776 336724187 635783267 914358575 1053820990 1053820990 812983199 604173155 1020381135 1020381135 639410817 943984467 943984467 719122306 719122306 243269724 335087008 335087008 52889144 305540008 494378990 494378990 465171310 282585570 236217502 236217502 89343136 89343136 83624640 80370280 113548528 114588368 114588368 23892000 1497600 4501520 33628816 67253632 360320349 360320349 277068335 812360729 812360729 307319838 1042404352 1042404352 781069329 999087719 999087719 911409516 911409516 404877864 404877864 724864981 724864981 360458562 522860972 522860972 1048412766 1048412766 1048886431 1048886431 847708497 847708497 458383467 286334126 604892705 604892705 282807426 412721350 412721350 382916758 545686171 545686171 912415249 912415249 910986062 1054483160 1054483160 250806100 73609472 91404680 91404680 76871696 300279650 300279650 31177776 36650832 545588545 545588545 270655746 577463429 577463429 426415154 454563236 540152608 540152608 595012953 595012953 764811914 764811914 444611104 843385113 843385113 177624478 193618112 193618112 56345968 559997511 834258018 957875751 957875751 682099554 163425088 163425088 524363920 524363920 328466773 732955483 732955483 78023641 574235912 574235912 386047032 386047032 823564904 823564904 705037370 1013579875 1013579875 688077884 688077884 253827414 253827414 6561920 113447024 113447024 96542824 100696160 562036792 562036792 381883866 381883866 803668955 803668955 890439074 944911833 944911833 738097402 738097402 970279108 970279108 1045702819 1045702819 1027900714 662564793 936048490 936048490 843096307 858957618 858957618 926232234 1026668303 1026668303 819484563 295954658 188217296 248659529 263271416 892301088 892301088 696596824 100908021 291817890 1061543346 1061543346 293775405 268961824 286002210 286002210 430312980 430706022 430706022 255387536 326711488 381292730 381292730 533662968 533662968 435893990 324105096 208696642 370073136 370073136 319292466 134690820 386591842 773264985 773264985 792336189 792336189 833892904 833892904 700059701 870917619 1014960583 1014960583 553922544 444997624 444997624 77440320 70568712 476517326 484651470 484651470 772347140 772347140 751379661 751379661 126496949 740312232 740312232 694732197 157943077 789279885 789279885 337262594 239997448 371931714 371931714 39660096 48190720 48190720 276778954 276778954 104511240 275052106 275052106 67727296 33133856 24358272 82066632 82066632 279391042 279391042 72143052 310643728 405587969 957628741 1008369493 1008369493 800138109 543446521 574883985 574883985 403943626 688291864 1030035738 1030035738 389356417 203825160 278094243 364036939 364036939 354568524 740538496 740538496 875597001 875597001 875635467 1025082255 1025082255 770431556 1029302246 1029302246 873610475 805570563 823446051 823446051 546586757 625281154 625281154 745944616 745944616 671976321 555010593 525231533 873793030 873793030 479468579 843547074 843547074 623094193 283193404 380962962 380962962 63884456 438265186 438265186 306961628 351281408 351281408 138627418 137548548 137548548 51052020 137712068 137712068 74932224 74932224 121895308 778176532 778176532 230951148 230951148 159645848 118482336 174553112 174553112 627812628 673237590 673237590 801516440 801516440 744973121 264036833 336516449 1058270967 1058270967 844644424 844644424 402129395 341885970 839283873 839283873 824174091 824174091 795395517 795395517 562713120 788716848 788716848 982914674 1035615647 1035615647 829415522 516377152 357924920 127231442 355951448 355951448 385802632 385802632 720536404 720536404 173421584 173421584 34028560 15959680 15959680 642921208 642921208 816771264 816771264 270614402 270614402 434309222 434309222 110285976 705097893 705097893 810919712 857144640 857144640 184166660 184166660 685376097 754175529 754175529 747545544 689574000 105365632 101136408 96542872 546492993 630231857 630231857 423656726 423656726 638051797 638051797 147808628 214508748 214508748 232850720 232850720 387203968 555748619 555748619 915051611 915051611 835376302 615783510 973604459 973604459 745248067 570114264 1011403292 1011403292 490848811 426142822 460918478 460918478 453923536 453923536 180058944 65063472 554025216 554025216 553648161 212340772 212340772 151143688 471924846 497099118 497099118 478150734 478150734 337689060 430405938 430405938 162141536 211309451 408014517 408014517 332259194 571459232 571459232 302517555 6033024 268488211 268488211 740261500 1037498898 1037498898 289728624 691128875 701188670 701188670 510039774 583803883 583803883 454050966 664060515 664060515 940649180 940649180 357941474 139815464 904143607 904143607 324027460 758285761 758285761 96604392 114047128 114047128 554283119 677509670 683010885 857827568 857827568 409143912 323410098 323410098 213973772 277317200 277317200 854526081 854526081 1016724675 1016724675 518915082 518915082 405630338 405630338 278507266 278507266 175456024 945257110 945257110 317803272 516398558 516398558 508186624 269533698 277532870 409246084 409246084 451426580 451426580 175114172 175114172 109150896 248620956 248620956 38702096 38702096 295710370 295710370 346836746 526235486 526235486 719530071 719530071 856871304 983041623 983041623 580248765 292563531 604012849 726038656 726038656 588763185 538184292 552459755 552459755 431496726 538124672 783025491 816582616 816582616 284821922 285364928 285364928 21156256 294448162 294448162 149139584 146837892 142348032 142348032 15412740 141423104 141423104 135191556 83987228 235676204 593511957 593511957 237241885 804033893 804033893 1032622438 1032622438 810098332 1012805019 1012805019 512306757 694491484 694491484 953475927 953475927 381503714 397798266 934221138 934221138 855327819 706693215 199048306 793384125 793384125 985664879 1010577182 1010577182 806954499 806954499 557616642 774209867 1015073866 1015073866 984170756 768356058 558383909 558383909 405456704 405456704 488735404 542124929 542124929 211389248 673188229 673188229 171361524 413292610 413292610 228538636 228538636 143027632 143900864 143900864 688710672 697252965 712705717 712705717 682364229 750528897 750528897 675899200 848795068 848795068 900229320 900229320 830644835 830644835 644781758 644781758 580176465 749996877 823379252 823379252 604904457 839836457 839836457 928724667 928724667 558106648 558124064 558715105 898226392 34807875 848433747 848433747 546443859 573142728 1018467396 1018467396 1043595276 1043595276 738347935 940965760 940965760 681411094 681411094 898106428 898106428 916042833 916042833 269111826 628945337 628945337 921031819 921031819 374080708 374080708 709635209 709635209 614800208 614800208 975929888 975929888 848373857 848373857 610272732 610272732 226623949 286046122 307656293 879304874 879304874 993558130 993558130 407421768 135792132 745852689 745852689 372802248 578830353 578830353 80401608 537987904 537987904 825392147 825392147 574754961 1033616084 1033616084 467082866 453993720 184700964 956530460 1035758547 1035758547 792879769 792879769 543248587 498074478 914458964 914458964 538992896 488638726 488638726 606529804 606529804 895590216 895590216 836763363 762129035 829088994 976599395 1006058487 1006058487 60558960 440795714 780454044 780454044 597767424 811807865 811807865 84607145 94743632 94743632 92661864 92661864 69368160 13890240 625381448 625381448 89160436 263250104 263250104 195252620 155594916 167807736 167807736 375227354 375227354 309605760 337842752 346240648 346240648 272246016 488380258 488380258 481635150 338240778 338240778 145852426 345284184 446044758 446044758 325098034 966138557 966138557 704720917 704720917 269728393 820790772 820790772 668521891 603358464 181386068 563509412 563509412 180663921 84459760 124190792 365149226 365149226 339425034 387392538 387392538 389983770 389983770 344682154 378536674 378536674 585216865 647401680 647401680 709282261 715366525 715366525 568927713 661193969 906020011 906020011 960800842 960800842 78725676 182286320 182286320 319884692 334179104 334179104 31586208 31586208 122197465 132355064 208017804 244223093 627445492 627445492 621414200 621414200 493930092 672211076 859387171 859387171 662704936 921372818 921372818 132555168 277423330 575736577 1009262208 1041445407 1041445407 1065879036 1065879036 384133196 322438962 290729642 290729642 791939901 791939901 727694541 837947718 837947718 242271132 242271132 414515008 414515008 503323546 1064329105 1064329105 940187264 863245847 594824992 403329408 556528673 589000836 589000836 693948037 693948037 537513472 555222561 560759681 742731148 742731148 141551748 209219336 209219336 5140608 475533098 475533098 356255374 55442848 659539352 659539352 979415953 979415953 808979871 308558155 375915930 892340528 892340528 94666073 58194864 81869584 83168232 83168232 105978056 105978056 333972706 655360432 655360432 634411961 296650411 44658080 80585872 298182738 654920936 654920936 889200803 889200803 631050376 181589229 0 264192 793600 39063040 39063040 29829272 29829272 116331360 116331360 90641224 92254704 92254704 219244652 219244652 475360124 475360124 596097514 596097514 319821872 269883906 176628304 151060480 102770732 159383652 276826192 276826192 857045212 857045212 839158455 542747162 856154662 856154662 827005570 716885845 716885845 808136212 855228864 855228864 438691840 327685219 582091099 917504091 917504091 632817266 285198639 262608420 858167576 889471025 889471025 637141231 637141231 768685424 768685424 900997658 900997658 222706056 389624304 389624304 333323990 446305878 446305878 332069064 286211106 72893065 170402825 170402825 162240256 501222452 501222452 893835435 893835435 470609062 470609062 289950758 110297088 110309976 130183784 360054868 411169042 742465677 742465677 739390148 739390148 799765076 799765076 338068816 401999761 401999761 539511977 897695747 897695747 711846485 711846485 812141204 812141204 590160004 681084288 1026741039 1026741039 775687965 775687965 554697484 605365378 605365378 545785427 547561540 989834194 989834194 988578307 509933512 679104144 679104144 810807939 810807939 998295709 998295709 938613018 938613018 693535262 453302495 354628136 637948880 638091328 638091328 185075017 379094056 379094056 101762972 349700320 349700320 131105392 305540008 494378990 494378990 465171310 282585570 236217502 236217502 89343136 89343136 80370280 80370280 113548528 114588368 114588368 412034242 412034242 317836098 199460328 249735574 344845386 344845386 113981802 812360729 812360729 307319838 1042404352 1042404352 781069329 748501325 748501325 911409516 911409516 404877864 1032731931 1054383181 1054383181 319443632 522860972 522860972 1048412766 1048412766 1048886431 1048886431 847708497 847708497 458383467 286334126 604892705 747116660 747116660 572006083 572006083 382916758 545686171 545686171 686886279 686886279 526656494 81265764 30408844 14154432 11608896 23380000 23380000 16828832 8548736 8390720 20626800 36650832 545588545 545588545 149810628 577463429 577463429 141181972 180012372 180012372 141756064 595012953 595012953 764811914 764811914 444611104 843385113 843385113 445269044 193618112 193618112 56345968 559997511 834258018 957875751 957875751 682099554 419438402 345318476 524363920 524363920 439876374 732955483 732955483 809113624 915672859 915672859 529775694 529775694 949638668 949638668 874042059 647373615 647373615 688077884 688077884 253827414 253827414 399784364 399784364 336954908 545309793 545309793 17450240 538575681 538575681 381883866 803668955 803668955 515450718 944911833 944911833 594930609 607453953 970279108 970279108 1045702819 1045702819 1027900714 662564793 734333796 734333796 192371609 858957618 858957618 926232234 1026668303 1026668303 151410188 134228086 125902968 120177984 79819277 201377019 696596824 907616528 907616528 708568873 807543088 807543088 806212896 698543476 964113925 964113925 813513088 334237170 334237170 42990672 42990672 381292730 381292730 533662968 533662968 435893990 341319296 341319296 370073136 370073136 319292466 125901842 659133656 659133656 737762896 792336189 792336189 833892904 833892904 464138855 1051988564 1051988564 481696591 331119530 385755540 385755540 398532290 474580588 474580588 255852348 536898952 611184009 611184009 707669265 707669265 686231100 705237052 705237052 554382505 91618720 789279885 789279885 337262594 239997448 371931714 371931714 45677400 48190720 48190720 276778954 276778954 68922176 275052106 275052106 67727296 20706176 20706176 91362304 91362304 279391042 279391042 278139914 310643728 405587969 957628741 1008369493 1008369493 800138109 543446521 574883985 839767360 839767360 719334791 706871297 453235725 218311846 222144032 222144032 136544356 417640820 1017286776 1017286776 411836595 102076560 155432076 155432076 696614944 696614944 770431556 1029302246 1029302246 1016334927 1016334927 823446051 823446051 688163332 755091469 807946241 807946241 745944616 671976321 1048652480 1048652480 1026304803 843918483 990716292 990716292 126990262 8652864 766826783 766826783 287709474 870533747 870533747 18614272 4194432 351281408 351281408 138627418 137548548 147890198 315744978 327795074 488658122 488658122 367788736 121895308 835532012 1038724116 1038724116 875111504 875111504 685769124 685769124 816858689 816858689 709955800 902853322 902853322 698861624 698861624 151259173 313344 167799126 788615476 880988235 880988235 19038571 4268160 839283873 839283873 824174091 824174091 795395517 795395517 258918709 788716848 788716848 982914674 1035615647 1035615647 829415522 618662705 618662705 101962256 127481512 611052625 611052625 140739456 573801408 573801408 150082500 706089541 706089541 716188496 716188496 712122577 712122577 816771264 816771264 311987799 983320146 983320146 434309222 48925078 705097893 705097893 810919712 857144640 857144640 184166660 184166660 25764964 17340416 603287124 603287124 178105329 105365632 101136408 96542872 93508200 93508200 942820560 942820560 531022223 229493230 80605252 52437040 694343848 694343848 692508837 166089037 372251273 555748619 555748619 915051611 915051611 835376302 457858596 717916128 717916128 414058043 527273308 1011403292 1011403292 490848811 774128854 970161726 970161726 167519616 167519616 19425760 29734976 29734976 86297384 90491304 222423176 245384332 245384332 471924846 497099118 497099118 478150734 529407200 529407200 490825936 490825936 535021164 535021164 408014517 421923888 421923888 571459232 571459232 302517555 991103952 991103952 268488211 740261500 1037498898 1037498898 667273253 691128875 701188670 701188670 510039774 583803883 583803883 454050966 664060515 664060515 940649180 940649180 357941474 394011178 394011178 377702640 319308484 384978992 384978992 4593792 4593808 827658699 827658699 598891455 356565162 688351235 805417066 967250183 967250183 237807915 582245312 819253522 819253522 444608064 444608064 276435164 343804680 343804680 640947015 640947015 309532936 1047669329 1047669329 986906386 511520670 372903504 873486289 873486289 516398558 508186624 181552960 277532870 409246084 409246084 451426580 451426580 175114172 175114172 53341488 248620956 248620956 38702096 38702096 397210200 397210200 321527324 489949998 496797018 496797018 411567174 384399918 983041623 983041623 154272907 178678552 604012849 726038656 726038656 588763185 226807817 552459755 552459755 431496726 538124672 783025491 816582616 816582616 284821922 285364928 285364928 21156256 294448162 294448162 140879040 148415108 148415108 150286336 410131538 443200004 443200004 976012551 976012551 816676242 816676242 593511957 306285588 306285588 443905443 443905443 577241604 810098332 1012805019 1012805019 558471451 694491484 694491484 552674241 689184784 839551029 840693267 844881475 844881475 819912387 49611460 181740416 316793298 355946772 745681893 1025837374 1025837374 281683303 596976740 701706981 1064723865 1064723865 1015073866 984170756 449476622 449190702 449190702 352478728 358299306 488735404 488735404 223371566 206983850 286821510 286821510 171361524 599918065 599918065 175511428 594545025 601229913 601229913 584556624 729760821 729760821 216850920 87461672 618617800 618617800 579734484 579734484 718451928 718451928 706028800 708579093 832364613 832364613 644781758 644781758 975576686 975576686 823379252 823379252 604904457 839836457 839836457 928724667 928724667 610316585 610316585 662834992 662834992 34807875 848433747 848433747 546443859 573142728 1018467396 1018467396 845029011 742476751 550224522 940965760 940965760 654313485 654313485 117440568 67731984 67108912 67108912 17701920 86868248 101680296 101680296 31836640 82324584 197923984 734691777 734691777 977426420 977426420 975929888 975929888 273744052 559939641 610272732 610272732 226623949 370415721 865210995 1059077195 1059077195 993558130 993558130 424063824 48906560 55235760 359220644 359220644 350661938 482912320 482912320 480112318 480112318 825392147 825392147 574754961 517552369 517552369 517063308 517063308 496418980 589401786 589401786 462994180 462994180 326168772 812974230 812974230 914458964 914458964 538992896 488638726 918659075 918659075 1071518150 1071518150 418603815 762129035 762129035 692853542 806172643 806172643 694034085 84009000 301996211 746971457 746971457 809276096 809276096 380708752 380708752 613168592 613168592 162434056 1011011274 1011011274 404395918 632352972 632352972 719388868 719388868 249770460 195252620 155594916 167807736 167807736 375227354 375227354 309605760 337842752 346240648 346240648 272246016 488380258 488380258 481635150 336634634 135813852 211947852 367532758 514868560 514868560 325098034 84959080 344851040 344851040 335544330 91349928 292929160 292929160 275440384 275440384 716401252 716401252 713463140 553314448 553314448 344758418 344758418 109668504 110761560 126751928 126751928 106831512 34347688 17041440 559008843 559008843 897835905 897835905 647401680 709282261 715366525 715366525 568927713 661193969 906020011 906020011 960800842 960800842 429632278 182286320 182286320 522097048 522097048 282847330 282847330 293765632 293765632 132355064 132355064 226921808 573624004 918438144 918438144 916365265 587077457 396140048 859387171 859387171 662704936 921372818 921372818 388756794 388756794 575736577 1009262208 1041445407 1041445407 588940810 384133196 384133196 322438962 290729642 290729642 266287206 651438264 651438264 563159649 224047840 224047840 294515280 503535134 503535134 503323546 1064329105 1064329105 940187264 863245847 594824992 590862496 590862496 588328608 588328608 576267921 706820256 706820256 173835152 173835152 51135232 51135232 309221270 309221270 137809408 40535426 175658658 355821194 457962898 457962898 659539352 659539352 979415953 979415953 978197655 978197655 472870973 892340528 892340528 94666073 58194864 149301705 673386789 702815173 702815173 105978056 613736944 613736944 255285519 151472832 559261824 784886112 784886112 990727066 990727066 861965354 266598944 631050376 631050376 181589229 14630592 140314288 198054420 198054420 168171540 180535468 233888500 233888500 70910208 268277948 268277948 119281984 239999396 239999396 384268328 384268328 328210464 319821872 319821872 595923360 595923360 50871616 102770732 159383652 922812607 922812607 857045212 857045212 613320339 547106847 542267392 542267392 589535766 589535766 306747809 7740288 5509376 65536 65536 327685219 582091099 917504091 917504091 632817266 176212224 238045312 238045312 242221980 499262730 499262730 495128772 495128772 257834844 181929488 222706056 222706056 419883528 419883528 407895174 302867990 332069064 332069064 286211106 147005728 170402825 170402825 162240256 501222452 541165568 923651092 923651092 805312520 805312520 990516279 990516279 281904032 812878419 812878419 411169042 819106432 819106432 759923654 759923654 979118526 979118526 248706421 11627204 227026545 597952356 897695747 897695747 720673936 331826101 292391904 115714194 844593344 844593344 904995499 904995499 661488131 637848593 331765995 68033544 270145026 807223186 807223186 989834194 989834194 988578307 347206572 902343412 902343412 810807939 810807939 998295709 998295709 938613018 938613018 689195627 689195627 432326886 637948880 905997498 905997498 710200219 241543428 241543428 415787900 415787900 349700320 131105392 131105392 113299656 63888160 63888160 53350352 49073616 25280512 58376288 65247104 65247104 52808416 52808416 35435616 21714900 412034242 412034242 317836098 199460328 658648368 658648368 344845386 113981802 573227034 573227034 144254532 245497952 245497952 161891636 153536592 153536592 422777346 422777346 302751922 1032731931 1054383181 1054383181 562373472 557329299 313787697 298142194 298142194 325118226 325118226 838193824 838193824 79921380 93504132 537302158 747116660 747116660 710820377 710820377 210243072 732092081 785044800 785044800 1056562990 1056562990 938793536 917795008 80397420 137247144 137247144 164591652 164591652 206512268 226191028 237577500 237577500 42990672 205679004 205679004 12390016 12390016 15279552 277053206 277053206 307384764 522378164 522378164 269991950 269991950 135355314 120808090 445269044 445269044 251867386 251867196 109274384 134844416 270692646 346789192 346789192 419438402 419438402 345318476 343942408 276889866 439876374 439876374 770052750 809113624 915672859 915672859 622453780 587986435 949638668 949638668 874042059 647373615 647373615 344565828 344565828 271017374 168038848 399784364 399784364 336954908 545309793 545309793 17450240 538575681 538575681 11538496 138938754 485891882 485891882 410996181 594930609 609271552 704590925 850414448 850414448 293914659 286294826 340052106 563662501 563662501 801390872 801390872 786847257 786847257 575673104 608180736 608180736 991107854 991107854 1066337796 1066337796 377798426 377798426 505004809 907616528 907616528 708568873 708568873 806212896 806212896 698543476 964113925 964113925 813513088 334237170 334237170 42990672 42990672 197865864 211363404 211363404 234954780 344749596 344749596 341319296 335943690 109051992 109051992 46927056 659133656 659133656 203166736 152704548 152704548 505030768 505030768 369112328 1051988564 1051988564 481696591 335713304 385755540 385755540 398532290 474580588 474580588 93045010 536898952 611184009 611184009 113106780 686231100 686231100 604642849 604642849 23041920 91618720 91618720 203562124 219461128 219461128 185206680 158512584 45677400 47782224 47782224 5772544 5772544 10552064 10552064 31643424 31643424 23011872 4194048 91362304 91362304 75699976 278139914 278139914 277350594 277350594 149982336 223454340 223454340 221039916 633383436 637604009 839767360 839767360 806890502 710285973 711673134 1061165984 1061165984 876560139 824316195 824316195 1017286776 1017286776 411836595 101222608 80530632 12896448 910724742 910724742 680042541 229688172 1030030863 1030030863 1016334927 438735944 538970432 688163332 755091469 807946241 807946241 341736200 487395390 1048652480 1048652480 1026304803 843918483 990716292 990716292 798805166 792798915 766826783 766826783 287709474 870533747 870533747 209502298 56623536 75761736 319070700 423954546 423954546 289566704 315744978 327795074 488658122 488658122 367788736 209060104 835532012 1038724116 1038724116 875111504 875111504 685769124 685769124 816858689 816858689 709955800 902853322 902853322 823153112 823153112 260735591 606831231 846435402 846435402 891695585 984322413 984322413 862970161 862970161 172681271 218745884 218745884 405054318 405054318 583270828 583270828 945849600 945849600 770672363 770672363 127093200 618662705 618662705 101962256 127481512 611052625 611052625 134849105 573801408 573801408 671797682 964039847 964039847 962905255 996198839 996198839 716194338 43036032 50196432 311987799 983320146 983320146 574464 33792 19005440 19009824 22205632 32035488 94127040 94127040 218736065 751705293 751705293 566758029 550576469 550576469 130551297 46148608 29440592 570458353 618189441 942820560 942820560 587781834 814220547 814220547 161952239 698488936 698488936 692508837 627124708 823535618 823535618 286599714 817897992 817897992 130061020 152228388 303188618 328466638 414058043 414058043 546834642 546834642 177143933 774128854 970161726 970161726 167519616 167519616 160332964 589507173 589507173 668629445 773510685 773510685 721440096 721440096 813875587 820036035 820036035 583844032 529407200 529407200 490825936 490825936 535021164 535021164 493316062 493316062 687066240 687066240 193839344 193839344 991103952 991103952 842582298 938790665 938790665 905876393 667273253 553944130 0 104874112 104874112 100712472 54526128 78266704 78266704 34214928 61346144 61346144 53108362 394011178 829822445 829822445 304808098 718484665 718484665 282276546 1020404418 1020404418 827658699 1069699744 1069699744 732023277 805417066 967250183 967250183 545442400 582245312 819253522 819253522 868753555 868753555 276435164 276435164 887674010 887674010 640947015 551339991 1047669329 1047669329 987549399 987549399 372903504 873486289 873486289 686836293 706343297 706343297 583585413 583585413 173971077 134758976 537436161 537436161 545187584 552211905 680670661 680670661 578104897 582951808 582951808 397210200 301916130 239418896 478810120 478810120 411567174 274891276 274891276 416039392 474616974 474616974 661317802 661317802 21349301 24656 34465808 34465808 42066000 42066000 38635680 21236928 22587584 148617412 148617412 135274532 155858112 155858112 139191332 136573188 136852740 148415108 148415108 150286336 410131538 443200004 443200004 976012551 976012551 816676242 816676242 281071062 306285588 306285588 601941064 661202361 661202361 577241604 872431632 872431632 558471451 562761994 562761994 941677239 941677239 845370967 840693267 844881475 884789067 884789067 691282167 291746813 316793298 355946772 745681893 1025837374 1025837374 281683303 596976740 701706981 1064723865 1064723865 482886861 449476622 449476622 449190702 486018012 486018012 477995532 477995532 977291529 977291529 240699036 1042991571 1042991571 171098624 599918065 599918065 175511428 594545025 601229913 601229913 1005987666 1005987666 791629244 769280116 526720155 623819385 1024979650 1024979650 594547764 718451928 718451928 621079595 621079595 832364613 832364613 768723896 768723896 975576686 975576686 799156093 706580041 780453981 1049143381 1049143381 982066263 960706206 960706206 810405905 810405905 916549147 1092410 388360506 666236986 666236986 664271481 345401800 345401800 306276864 550224522 550224522 686545857 686545857 654313485 654313485 522600534 522600534 948100036 948100036 702207717 721942613 721942613 706828429 208162297 208162297 197923984 734691777 764023917 977426420 977426420 944294361 944294361 275940373 844440330 844440330 553648161 599040 370415721 865210995 1059077195 1059077195 943533831 541807776 424063824 76805864 91312936 359220644 359220644 261669902 501802568 501802568 480112318 480112318 101747224 101747224 387919512 387919512 313075214 517063308 517063308 657306592 904668398 904668398 944733206 944733206 566532208 812974230 812974230 440413059 709034648 739455501 739455501 918659075 918659075 1071518150 1071518150 418603815 418603815 345769934 292567462 710186520 743365773 743365773 102386325 964110126 964110126 747373889 1044160072 1044160072 383403713 380708752 613168592 740303692 740303692 1031991854 1031991854 832099170 960406627 960406627 719388868 719388868 100843768 100843768 39862680 84021256 84021256 67839008 84021288 84021288 90519232 90519232 229585152 229585152 137891300 298844512 348395754 348395754 284464322 211947852 367532758 514868560 514868560 185894632 621248955 699688788 699688788 539757825 527625396 697433212 697433212 567277177 275440384 716401252 716401252 713463140 553314448 553314448 344758418 344758418 109668504 110761560 126751928 327132930 327132930 288656658 334088450 559008843 559008843 897835905 897835905 724965661 724965661 731955573 976766083 976766083 567280353 504399195 172082560 494993530 494993530 429632278 362511798 465337902 522097048 522097048 282847330 282847330 293765632 293765632 65096192 160973616 185128004 674763220 918438144 918438144 916365265 587077457 396140048 396140048 269883906 142030180 208275404 280658792 388756794 388756794 340399064 127369904 127369904 6580384 19399968 44569872 44569872 303764448 303764448 379650413 379650413 651438264 651438264 563159649 428662466 428662466 294515280 503535134 503535134 210915402 62914800 809682176 809682176 17048288 160402368 590862496 590862496 588328608 588328608 677175717 706820256 706820256 677859457 677859457 671951877 542056960 440919428 309221270 137809408 40535426 175658658 175658658 457962898 457962898 586167104 586167104 243819888 859965624 978197655 978197655 472870973 157471140 155283712 24118176 24118176 149301705 673386789 702815173 702815173 67111656 613736944 1068109960 1068109960 517473623 559261824 784886112 829726772 990727066 990727066 861965354 505001347 505001347 109489248 236749361 236749361 691856104 691856104 592727040 672402100 706481685 706481685 573574404 137536912 268277948 268277948 119281984 239999396 239999396 262328700 777177589 777177589 838910652 927254715 927254715 809796102 622445587 622445587 505821686 922812607 922812607 684197256 684197256 613320339 1023809583 1023809583 542267392 554037576 820823495 820823495 679089968 679089968 665276760 352792898 376754456 376754456 355656632 604000968 640714040 799166282 1024907823 1024907823 777920062 280901102 280901102 605721909 795688480 795688480 659042840 659042840 276431266 419883528 419883528 407895174 302867990 302923282 348753080 348753080 147005728 958932026 958932026 457262771 994404786 994404786 923651092 923651092 805312520 805312520 990516279 990516279 289513669 812878419 812878419 847055170 847055170 819106432 759923654 759923654 979118526 979118526 960706880 277040256 277040256 790185158 790185158 720673936 720673936 331826101 275159858 275159858 844593344 844593344 957432655 957432655 740328296 637848593 921338330 921338330 876889179 807223186 807223186 668842748 668842748 538345746 304110081 902343412 902343412 807537218 807537218 401998352 758383334 758383334 504408342 689195627 689195627 432326886 790280590 1010277423 1010277423 710200219 251715749 241543428 536236116 536236116 470210574 437243374 437243374 406449682 354494802 293337320 37435088 33218160 135465232 172561264 172561264 65247104 3254352 52642320 52642320 41263376 41263376 36383008 85540592 85540592 658648368 658648368 617771400 881900638 881900638 796208061 755358437 732305781 606195821 159789173 39586448 183111738 482480378 496666174 496666174 148525968 41062478 562373472 562373472 818969984 818969984 817889091 792366863 788582046 788582046 567083409 567083409 223714220 223714220 491900036 491900036 878367436 948438087 948438087 215144075 958923371 958923371 835768611 1056562990 1056562990 938793536 917795008 80397420 137247144 137247144 164591652 164591652 206512268 226191028 365246466 392116214 392116214 304877208 205679004 502903928 502903928 314362834 311447826 277053206 307384764 522378164 522378164 396453956 396453956 245541098 120808090 366941424 366941424 251867386 251867196 109274384 109274384 861979059 869257360 869257360 763590131 218632460 1013195352 1013195352 947981346 947981346 360289682 770052750 770052750 350392433 622453780 622453780 851578978 851578978 826450149 459767542 377520432 377520432 344565828 344565828 271017374 168038848 168038848 40115856 46145136 51906096 51906096 18875360 67113650 387076346 387076346 583454995 583454995 361763640 274727298 900911979 900911979 704590925 843820401 843820401 822009763 822009763 662441913 662441913 739093018 1030827615 1039451119 1039451119 986585263 986585263 856755128 856755128 991107854 991107854 1066337796 1066337796 377798426 377798426 203679082 159592548 308562974 308562974 422502680 422502680 439353362 455189778 455189778 397409658 397409658 393063332 89319752 89319752 81165156 301422172 301422172 486988388 486988388 457157744 515909378 515909378 291360488 391644650 391644650 316196352 939342916 939342916 588805956 588805956 578432208 578432208 505030768 369112328 738464788 738464788 335713304 335713304 101401112 148372164 160969884 383492528 383492528 93045010 119576768 132569592 132569592 673634704 673634704 84167085 539433360 539433360 134363137 22994592 22994592 85402656 219461128 219461128 52393744 52393744 14395456 47782224 47782224 11350464 72616584 80282824 80282824 85852864 85852864 23011872 4194048 73120736 73120736 94962208 94962208 28101984 135022660 149982336 149982336 223454340 223454340 710230352 710230352 637604009 637604009 806890502 806890502 710285973 711673134 1061165984 1061165984 876560139 824316195 824316195 554213663 522839358 239678519 894377533 1051657479 1051657479 910724742 910724742 810466959 1010568975 1030030863 1030030863 438735944 438735944 538970432 552016128 552016128 168180868 174653700 341736200 487395390 489560336 489560336 399360 459081812 459081812 798805166 798805166 792798915 564134241 492824926 416148830 565754566 565754566 417728419 539492672 545784897 968744326 968744326 423954546 671644099 671644099 321374706 321374706 274997620 523676462 523676462 358695864 526951478 526951478 184549428 274492088 274492088 391750400 391750400 381207780 381207780 330140961 939814276 939814276 869574741 812520268 606831231 846435402 846435402 891695585 984322413 984322413 862970161 862970161 172681271 218745884 218745884 202374156 201767948 583270828 583270828 945849600 945849600 60061378 324009138 324009138 293116688 27406688 1973760 50979888 50979888 48996768 48996768 572440593 572440593 671797682 964039847 964039847 962905255 996198839 996198839 750404779 750404779 384837728 947525219 947525219 517852254 517852254 77492816 678287137 678287137 1016909452 1016909452 872536904 218263744 218736065 751705293 751705293 566758029 550576469 550576469 168944280 247538180 247538180 570458353 734025536 734025536 770819065 770819065 814220547 814220547 161952239 698488936 698488936 627124708 627124708 823535618 823535618 286599714 817897992 817897992 1013597343 1013597343 303188618 778110464 779691933 779691933 744300557 598220909 277493848 329713892 329713892 294839384 153818833 160332964 160332964 589507173 589507173 668629445 773510685 773510685 721440096 721440096 813875587 820036035 820036035 583844032 462034002 520438878 520438878 105330840 501289244 501289244 493316062 493316062 687066240 687066240 453694518 187472130 19132704 275025840 842582298 938790665 938790665 905876393 872691808 1034097003 1034097003 817849670 917079515 917079515 515561310 515561310 877793931 877793931 877793931 868668026 345052194 324610320 829822445 829822445 304808098 718484665 718484665 282276546 1020404418 1020404418 424739232 1069699744 1069699744 732023277 304607731 31457760 31457760 545442400 545442400 61310768 312744754 868753555 868753555 272503050 142737304 887674010 887674010 551339991 551339991 1050016898 1050016898 1005300159 987549399 293211880 293211880 278932448 686836293 706343297 706343297 583585413 583585413 195461536 195461536 537436161 537436161 545187584 552211905 680670661 680670661 578104897 582951808 582951808 330502732 373304766 516839626 516839626 273065174 251707452 379854635 744538509 744538509 474616974 504828574 776458641 776458641 187695172 729817920 729817920 672930741 592168698 486905198 541992008 765749699 814795656 814795656 289938498 403194692 403194692 155858112 300451234 300451234 69206048 144519232 144519232 143007300 137312320 312479280 312479280 297537378 598247408 598247408 151316672 163651812 163930276 163930276 601941064 661202361 661202361 276866073 556270951 556270951 405149718 562761994 562761994 941677239 941677239 932669827 932669827 844927667 884789067 884789067 896663876 896663876 733907111 733907111 574668716 455094978 555217264 755159100 755159100 151179300 1012826120 1012826120 666295671 666295671 85803648 15777128 486018012 486018012 477995532 477995532 977291529 977291529 240699036 1042991571 1042991571 686754005 686754005 721284225 721284225 710184629 61575780 263860792 1005987666 1005987666 791629244 769280116 743712512 743712512 1024979650 1024979650 594547764 545216324 361767798 361767798 152755276 731789909 731789909 768723896 1024756078 1024756078 974649879 799156093 706580041 780453981 1049143381 1049143381 982066263 960706206 960706206 840382995 810405905 916549147 134720954 527095230 1064230334 1064230334 1063966143 392785925 345401800 74523528 282272264 697309730 697309730 713632826 713632826 412125982 522600534 522600534 948100036 948100036 702207717 721942613 721942613 706828429 208162297 208162297 111413592 671169680 764023917 764023917 1024858671 1024858671 944294361 467800566 844440330 844440330 849619403 849619403 715918677 522201547 23806368 23806368 269358992 302405402 372938770 372938770 270844928 270844928 127087224 127087224 501802568 501802568 77186542 219694416 219694416 101747224 419640390 419640390 411775014 411775014 400148136 657306592 904668398 904668398 944733206 944733206 566532208 577790628 927303585 927303585 709034648 739455501 739455501 739455501 242449933 214934544 301007170 791414632 791414632 841160827 841160827 778043805 743365773 743365773 742465677 964110126 964110126 747373889 1044160072 1044160072 383403713 269558274 680669905 740303692 740303692 1031991854 1031991854 832099170 960406627 960406627 356992382 356992382 105075024 108089346 370356762 370356762 54665898 51307904 19146784 314582304 314582304 56833362 249361144 249361144 351478238 351478238 348395754 411214802 411214802 509761108 509761108 472458510 472458510 226742528 621248955 699688788 699688788 539757825 527625396 697433212 697433212 567277177 187324420 698009812 698009812 563384128 235070392 235070392 298332368 298332368 355829794 355829794 75461480 327132930 331744776 331744776 334088450 334088450 286286064 126056904 631672868 724965661 724965661 731955573 976766083 976766083 567280353 832607235 832607235 891961454 891961454 371721004 362511798 465337902 465337902 288672262 169685516 169685516 20892048 65096192 65096192 160973616 185128004 674763220 674763220 730544244 730805493 730805493 63607073 181268720 181268720 32304592 143407892 183247600 183247600 43720976 47886464 127369904 127369904 6580384 19399968 44569872 44569872 303764448 303764448 487975470 922355447 922355447 488817260 849400175 849400175 460378386 417569172 494353050 494353050 445629442 746735027 746735027 966334836 966334836 700046852 422481888 558964769 558964769 155312260 677175717 677175717 151015328 677859457 677859457 671951877 542056960 440919428 142013458 37909504 288015520 288015520 833377879 833377879 535770312 1038692617 1038692617 67113472 67113472 1179656 0 27427133 764498417 764498417 608834297 590042288 47650360 22211192 97779720 97779720 67111656 53077296 1068109960 1068109960 517473623 310056158 389071240 829726772 829726772 811178904 811178904 505001347 505001347 32101056 236749361 236749361 691856104 691856104 592727040 672402100 706481685 706481685 573574404 137536912 137536912 42523204 25370912 54530532 142606336 262328700 777177589 777177589 838910652 927254715 927254715 960688259 960688259 622445587 505821686 736179455 798037581 798037581 684197256 611190872 1023809583 1023809583 419436553 497211784 820823495 820823495 679089968 679089968 665276760 352792898 599361905 599361905 964101795 1006716900 1033945455 1033945455 1024907823 1024907823 832293300 910295572 1012011663 1012011663 795688480 795688480 659042840 659042840 276431266 241021820 241021820 185217796 198230772 222728812 348753080 348753080 122447050 958932026 958932026 554958848 994404786 994404786 771760189 251953311 3007872 537687428 704851989 704851989 289513669 269772128 583987292 847055170 847055170 588785756 400647534 807885066 807885066 960706880 960706880 338378799 695528464 790185158 790185158 575955869 846811543 855443443 855443443 325205762 112198288 741417741 957432655 957432655 740328296 548801545 921338330 921338330 876889179 842056467 807762097 500642629 538345746 538345746 304110081 551160032 551160032 276900016 401998352 401998352 311691952 718674554 1061159103 1061159103 731753586 814533272 983299163 1010277423 1010277423 879531431 857611827 844237984 536236116 536236116 470210574 437243374 437243374 406449682 354494802 293337320 37435088 33218160 135465232 172561264 172561264 17640288 17690176 52642320 52642320 89523968 89523968 69340456 85540592 85540592 340696354 617771400 617771400 881900638 881900638 796208061 755358437 732305781 606195821 159789173 54402864 183111738 482480378 496666174 496666174 156500641 865994949 865994949 308059539 818969984 818969984 817889091 792366863 788582046 788582046 599200705 859224739 859224739 766947270 742686720 742686720 878367436 949434951 949434951 498410892 958923371 958923371 835768611 942219840 942219840 408437696 408437696 71483436 86846880 86846880 71303304 74061192 74061192 100797084 365246466 392116214 392116214 517175054 517175054 502903928 502903928 314362834 311447826 111237860 72665736 119687904 348429048 396453956 396453956 245541098 273683072 273683072 180945092 180945092 168318164 91060586 91060586 861979059 869257360 869257360 763590131 160833604 1013195352 1013195352 947981346 947981346 398445963 398445963 439856164 1048778778 1048778778 596644383 851578978 851578978 826450149 690492196 785461301 1053385423 1053385423 993763071 721702496 721702496 100960664 100960664 78794588 78794588 697881029 697881029 145996645 573913373 573913373 583454995 583454995 361763640 732971093 900911979 900911979 1028083744 1028083744 501737647 822009763 822009763 662441913 662441913 756642824 1030827615 1039451119 1039451119 986585263 986585263 856755128 856755128 275335190 375972522 391428644 391428644 420297540 420297540 375787998 375787998 304358844 354468138 354468138 237503258 439353362 499355444 499355444 305618336 393063332 393063332 89319752 268543044 268543044 372533048 372533048 486988388 486988388 457157744 515909378 515909378 291360488 391644650 1024248879 1024248879 939342916 939342916 893183581 783102548 783102548 578432208 496770661 260348449 788928573 788928573 633205577 623657256 421606400 421606400 160969884 160969884 321042584 388421946 388421946 304785412 151270492 673634704 673634704 265256253 539433360 539433360 164242272 164242272 150707172 241361096 241361096 166817940 172809512 209396900 209396900 68509616 238907428 238907428 73277568 80282824 80282824 85852864 85852864 7214400 10621760 25166976 83928168 94962208 94962208 28101984 28498502 423379267 807667971 807667971 638182425 710230352 710230352 587279648 587279648 840894592 840894592 537404548 927046818 927046818 322724665 302125074 273347344 554213663 554213663 522839358 452134814 894377533 1051657479 1051657479 655495737 237586463 810466959 1010568975 1010568975 807262468 230819624 149834248 33058496 7290240 168180868 168180868 503411496 503411496 322164662 380096891 840693267 840693267 772177535 763183068 695525318 695525318 591921577 974710596 974710596 416148830 565754566 693118368 950282501 950282501 819599492 968744326 968744326 410330788 671644099 671644099 321374706 321374706 274997620 523676462 523676462 453083684 526951478 526951478 434949152 434949152 294224996 391750400 391750400 381207780 381207780 330140961 939814276 939814276 869574741 812520268 767660210 767660210 969257309 1065617535 1065617535 794513638 415451370 792787122 792787122 54736901 33892368 390232786 390232786 174500344 697590352 935558679 935558679 1042172363 1042172363 324009138 623216561 623216561 84353024 115343064 115343064 114078208 48996768 538461440 540066561 540066561 540066561 540066561 33816592 33816592 38831056 750404779 750404779 384837728 947525219 947525219 517852254 517852254 77492816 678287137 678287137 1016909452 1016909452 872536904 218263744 217242848 217242848 215929740 35455532 142878280 210542592 210542592 247538180 247538180 194641992 734025536 734025536 770819065 770819065 628705225 824911296 824911296 31469571 1377280 1912320 360294818 360294818 557068840 557068840 336795819 336795819 1013597343 1013597343 498544835 778110464 779691933 779691933 744300557 598220909 277493848 277493848 657266846 657266846 459931650 98904552 204579285 648311309 648311309 557001157 573386001 884746407 884746407 236039897 738232472 738232472 370856441 727905880 727905880 520438878 654639241 654639241 501289244 998705120 998705120 989066199 704973893 704973893 453694518 187472130 288187776 574243095 574243095 571639060 138053429 546850048 872691808 1034097003 1034097003 817849670 917079515 917079515 515561310 515561310 877793931 877793931 877793931 868668026 345052194 324610320 97062960 380244248 380244248 344734202 113598890 88452112 9437200 759219055 759219055 1062462004 1062462004 520330027 887920710 887920710 365206597 568714240 568714240 568729984 568729984 488957788 488957788 577724758 711595413 711595413 582164577 162598276 410021472 1050016898 1050016898 1005300159 981836100 981836100 841271571 144795735 190034384 190034384 47574976 168292304 189050432 195461536 195461536 163338416 62836240 540928064 548931393 548931393 41623040 41623040 168886788 168886788 422068560 422068560 516839626 516839626 251707452 251707452 494612676 744538509 744538509 472347094 504828574 776458641 776458641 187695172 729817920 729817920 672930741 592168698 486905198 541992008 765749699 814795656 814795656 289938498 403194692 403194692 155361796 300451234 300451234 134933696 207234180 207234180 137312320 283624582 312479280 312479280 896331689 896331689 1066327167 1066327167 508897314 644204852 1061423295 1061423295 464518518 939159567 939159567 535428988 268703510 405149718 405149718 1006832773 1006832773 840015992 932669827 932669827 844927667 302195267 539551258 896663876 896663876 733907111 733907111 574668716 172045076 555217264 755159100 755159100 151179300 1012826120 1012826120 666295671 666295671 855452909 855452909 499981907 499981907 403721888 519360114 519360114 497469980 497469980 298239534 296998016 686754005 686754005 721284225 721284225 710184629 575880009 629532565 629532565 118691708 581914604 581914604 743712512 743712512 127976848 127976848 464585322 464585322 361767798 648630621 706403453 706403453 663257837 633476351 1024756078 1024756078 974649879 648216129 463834743 638108697 638108697 436874581 380632410 856667826 856667826 840382995 647892307 647892307 874779232 901127019 1064230334 1064230334 1063966143 623043370 623043370 50540688 306555410 697309730 697309730 713632826 713632826 525599512 783819406 1062872578 1062872578 456132020 24691872 138565380 138565380 753042128 753042128 242569513 153125740 671169680 709762197 709762197 1024858671 1024858671 586816520 678432230 678432230 753741261 849619403 849619403 715918677 555631954 278049721 390119625 818841698 818841698 372938770 372938770 345222194 270844928 230230028 511413862 511413862 365914574 365914574 219694416 406848128 406848128 419640390 422053158 422053158 411775014 353583738 544182658 723441536 723441536 302593538 408722608 408722608 815823044 954653127 954653127 893712748 658752024 673787181 673787181 437529345 437529345 450441376 791414632 1069824217 1069824217 841160827 778043805 711449024 711449024 1036366563 1036366563 477051051 188258485 610720137 610720137 776381390 776381390 680669905 740301006 740301006 207626636 207626636 71631180 149162436 250116212 356992382 356992382 105075024 439705760 439705760 370356762 292609200 84304536 84304536 314582304 314582304 279773500 440979700 440979700 351478238 351478238 40319618 411214802 411214802 509761108 509761108 215007948 226742528 226742528 20021376 15729600 3293632 36999680 36999680 52601476 139597852 159467588 159467588 203109900 227422544 227422544 235070392 239075838 298332368 298332368 355829794 355829794 350407032 350407032 331744776 331744776 102701816 591976393 591976393 78052200 483561704 954487752 954487752 585505297 1072277311 1072277311 657552025 936084623 936084623 1011316774 1011316774 172524544 33579008 33579008 2097456 50454576 52090688 52090688 17951296 177765505 737285109 737285109 706005777 599179313 730687537 730687537 730805493 730805493 179702625 181268720 181268720 32304592 143407892 183247600 183247600 131733240 532903430 532903430 111455368 511879946 511879946 474249820 474249820 378807006 378807006 487975470 922355447 922355447 488817260 849400175 849400175 460378386 421269030 494353050 494353050 445629442 746735027 746735027 966334836 966334836 700046852 422481888 11677760 24394272 24699808 24699808 20154880 20154880 41146256 53077648 53077648 269551504 269551504 269425058 52471200 327882786 327882786 833377879 833377879 535770312 1038692617 1038692617 869232645 965032027 1040876639 1040876639 992431173 764498417 764498417 608834297 590042288 229978553 746027269 762469229 762469229 653132367 821317779 871366407 1071373623 1071373623 597496356 882317032 882317032 996356535 996356535 616857690 467747529 3600812 549423960 549423960 159125148 697074296 697074296 46127124 52131300 138934404 191148336 202752680 214298772 214298772 162855480 68826516 76087908 142606336 142606404 495010030 495010030 1006972960 1023809583 1023809583 960688259 960688259 538567324 538567324 353796881 798037581 798037581 964892161 964892161 721470018 554213409 709122231 709122231 579123953 579123953 117828152 122432216 122432216 117668024 599361905 599361905 964101795 1006716900 1033945455 1033945455 706690042 832293300 832293300 910295572 1012011663 1012011663 170971803 166513352 227320576 227320576 205442076 241021820 241021820 185217796 198230772 222728812 265586312 265586312 106449705 554961441 573320593 573320593 910475446 1044676898 1044676898 83937544 3007872 537687428 671297541 671297541 228725505 93532776 583987292 583987292 588785756 689013376 689013376 807885066 807885066 757241865 757241865 338378799 695528464 695528464 681900005 799611248 846811543 855443443 855443443 325205762 44439888 514991464 514991464 454827858 834044992 834044992 824105763 815060227 842056467 842056467 807762097 500642629 480323086 891166040 891166040 402722680 694692154 816130246 816130246 526395518 375206900 718674554 1061159103 1061159103 731753586 814533272 983299163 983299163 896932299 879531431 857611827 844237984 204473100 204472320 75896904 75896904 69605640 69605640 75503936 75503936 37173904 174720384 174720384 16518848 17640288 17640288 26078208 62843392 62843392 89523968 89523968 70519576 43065936 43065936 850758832 898681384 898681384 810762532 810762532 193143318 134690820 463669446 592268404 825873250 825873250 693169947 693169947 604830480 421949086 186231342 865994949 991446162 991446162 785564255 742017597 676218300 55899715 292901539 599200705 599200705 859224739 859224739 766947270 742686720 742686720 835583904 949434951 949434951 636482315 636482315 339466185 157472550 159444044 337643246 408437696 408437696 157564196 157564196 210355692 210355692 204434636 790796377 790796377 426418142 828777409 828777409 517175054 517175054 310427730 263233800 982102101 982102101 692001072 915607334 915607334 314951744 859939344 859939344 811647363 930286497 1010176777 1010176777 523375422 523375422 591806888 593582161 599859441 599859441 570675616 23261201 21493920 71694084 209592204 410382008 410382008 398445963 398445963 706748566 1048778778 1048778778 596644383 596644383 316748626 959119441 959119441 785461301 1053385423 1053385423 993763071 721702496 721702496 100960664 192230288 192230288 78794588 697881029 697881029 151003236 573913373 573913373 540201729 540201729 243318876 732971093 732971093 654576801 1028083744 1028083744 501737647 499513838 338426830 290578946 88309248 756642824 772723181 772723181 842038004 971504103 971504103 824255372 824255372 221295781 51380784 479286912 479286912 420297540 420297540 375787998 375787998 304358844 354468138 354468138 235776840 235776840 499355444 499355444 259811608 375566012 375566012 224653740 321082588 321082588 372533048 372533048 234899264 281118484 281617602 281617602 223694408 42929192 205501219 1024248879 1024248879 83912709 893183581 893183581 783102548 783102548 279052431 126161690 260348449 788928573 788928573 633205577 623657256 421606400 421606400 157735332 93468752 321042584 542134219 542134219 304785412 613968009 613968009 585290052 265256253 256640024 763495457 763495457 164242272 671105121 671105121 241361096 166817940 172809512 209396900 209396900 68509616 238907428 238907428 103571600 103571600 74313096 79413488 79413488 126803064 131910776 131910776 83928168 83928168 77136640 77136640 42066888 423379267 807667971 807667971 638182425 667641914 667641914 956829732 956829732 840894592 840894592 269091330 927046818 927046818 322724665 302125074 273347344 529128996 529128996 452134814 452134814 110324492 466989166 466989166 332434338 405276190 490138470 490138470 423055220 423055220 230819624 149834248 33058496 145088960 145088960 451474576 503411496 503411496 322164662 380096891 840693267 840693267 772177535 763183068 305137472 305137472 35989776 974710596 974710596 136842567 45893952 693118368 950282501 950282501 819599492 819599492 18111306 159396932 306145812 306145812 56360100 212102092 212102092 45910172 453083684 453083684 415820368 415820368 434949152 434949152 294224996 900541930 900541930 1000041587 1000041587 87505704 495665234 495665234 310424686 511848900 767660210 767660210 969257309 1065617535 1065617535 523744134 458295969 792787122 792787122 844083220 844083220 570864916 572922129 655040525 697590352 935558679 935558679 1042172363 1042172363 644322641 734670564 734670564 84353024 695411264 695411264 709308597 713969093 713969093 704891841 551163585 540066561 545109568 998265191 998265191 966212199 687814882 637559392 678043533 678043533 509352319 174858464 71828672 43132120 111246208 111246208 73342728 73342728 70929928 26138080 217242848 217242848 215929740 141361464 74253768 610600089 610600089 119800192 27280672 8963136 75505696 92348520 680597839 968960002 968960002 824911296 824911296 215852516 760663076 760663076 673634565 826738773 826738773 713766388 757951794 757951794 475844238 996966874 996966874 514206236 514206236 498141588 543173469 543173469 93128752 103285075 657266846 657266846 459931650 371312577 703627321 703627321 648311309 557001157 573386001 884746407 941410324 941410324 849478389 849478389 370856441 727905880 727905880 494936300 654639241 654639241 93382144 998705120 998705120 989066199 704973893 704973893 714100736 714100736 445946597 574243095 1055437705 1055437705 974930791 1064987090 1064987090 886819200 448856274 426025800 120974136 60773616 60773616 126489960 126489960 55784080 38677856 28122256 45549728 315720256 315720256 380244248 380244248 361324082 117770856 117770856 1032399176 1032399176 759219055 1062462004 1062462004 520330027 887920710 887920710 671649968 635930437 568714240 568729984 568729984 488957788 488957788 577724758 711595413 711595413 968106786 968106786 540544464 558891681 558891681 1028241424 1028241424 981836100 841271571 507149019 1056216181 1056216181 572208657 697964133 697964133 588453557 165151232 568359620 568359620 582792307 830997603 830997603 808524611 822034307 822034307 837101889 837101889 422068560 618759658 768203087 768203087 629194857 538184292 494612676 483104386 483104386 472347094 999965146 999965146 835098923 801361953 801361953 378549167 81119540 98887968 98887968 11135008 222482600 222482600 135201380 117657624 155361796 155361796 207781960 207781960 199370572 267505120 267505120 139929540 283624582 283624582 341080600 896331689 896331689 1066327167 1066327167 508897314 983040572 1061423295 1061423295 464518518 939159567 939159567 568671389 203109900 1046079244 1046079244 1006832773 1006832773 841039698 841039698 538684355 47466835 36739456 39246480 39246480 37871760 269251074 269251074 240640029 706988212 706988212 856045959 856045959 84052128 794599332 794599332 207012381 598213889 855452909 855452909 499981907 499981907 508608922 519360114 519360114 497469980 497469980 298239534 462524150 462524150 437247568 178874370 135653892 20093700 575880009 629532565 629532565 270017587 581914604 581914604 879654229 930472294 930472294 997051830 997051830 575407853 677401265 910279434 910279434 706403453 663257837 633476351 994436368 994436368 1051098118 1051098118 982441047 638108697 805983508 975225111 975225111 377020039 269392426 586098609 586098609 124746746 874779232 901127019 901127019 615249225 615249225 623043370 623043370 50540688 537776163 537776163 420915926 460119248 706747412 867588832 867588832 1062872578 1062872578 547069117 799533613 799533613 732317325 753042128 753042128 242569513 710747485 710747485 18170304 134483968 134617092 363598472 435685350 678432230 678432230 738332685 738332685 358377478 555631954 555631954 278049721 390119625 818841698 818841698 380183192 345222194 345222194 127751162 230230028 511413862 511413862 522263008 522263008 236931334 406848128 406848128 403702278 422053158 422053158 395020028 353583738 544182658 575791761 815320598 815320598 499514008 499514008 815823044 954653127 954653127 893712748 658752024 339851779 213589801 437529345 437529345 450441376 990085936 1069824217 1069824217 474482504 474482504 711449024 711449024 1036366563 1036366563 697580352 687055465 610720137 610720137 776381390 776381390 478076814 740301006 740301006 411137098 417456582 1020117386 1023723651 1023723651 357063853 100670876 206011804 439705760 439705760 292609200 292609200 84304536 84304536 41943120 279773500 279773500 440979700 440979700 238699576 501929788 501929788 303760526 447816104 447816104 110756278 403809550 403809550 373408444 373408444 226140952 226140952 443547940 443547940 282018040 260745120 18429120 49293024 49621968 49621968 31457760 31457760 239075838 239075838 193583540 243752992 315423880 350407032 350407032 319594536 308414016 80502640 591976393 591976393 313265490 503293978 954487752 954487752 585505297 1072277311 1072277311 657552025 936084623 936084623 1011316774 1011316774 473888296 473888296 218153004 218153004 85424908 137963020 137963020 17951296 177765505 737285109 737285109 706005777 599179313 730687537 730687537 721555509 721555509 179702625 44489040 10934592 10934592 8554752 7540904 130160424 131733240 532903430 532903430 315588680 511879946 511879946 474287242 474287242 396953020 396953020 278910504 278910504 138696928 138696928 17685056 134604804 270931748 421269030 421269030 286756354 134291460 185307808 185307808 167383220 167383220 160283392 160283392 17971744 17971744 18416128 18416128 6890880 19596160 20058912 20058912 6821536 271691776 271691776 269425058 270540800 327882786 334705650 334705650 324220464 324744882 1015030970 1015030970 869232645 965032027 1040876639 1040876639 992431173 86489120 86489120 107839928 107839928 229978553 746027269 762469229 762469229 653132367 821317779 871366407 1071373623 1071373623 597496356 882317032 882317032 996356535 996356535 953130619 953130619 879700510 841365677 798233470 411027826 697074296 915343850 973453728 973453728 739144756 696992517 577630576 214298772 214298772 162855480 84200576 218574396 218574396 90912032 671286637 671286637 1006972960 1023809583 1023809583 139316384 139316384 538567324 538567324 416949152 395768808 445545656 964892161 964892161 721470018 554213409 709122231 709122231 218797744 218797744 0 122138680 122138680 130854568 130854568 550898312 550898312 354488968 387973434 1006635594 1006635594 402437946 833605299 833605299 811782531 811782531 791474592 321732652 42432088 797966349 797966349 118136832 756077341 756077341 90029100 241807329 608573577 608573577 153381764 694206384 694206384 684670149 1071748294 1071748294 1044676898 592170237 153683024 986776532 1002449111 1002449111 87255431 284239898 609127052 609127052 698754724 698754724 689013376 538442145 222917632 201570600 213023424 233232748 233232748 203811084 681900005 799611248 799611248 569770096 44698624 44698624 44439888 514991464 514991464 823115328 834044992 834044992 824105763 1011088109 1011088109 294914658 237505420 480323086 503131101 891166040 891166040 402722680 694692154 816130246 816130246 526395518 375206900 546708233 546708233 536870913 84937353 559028244 726928053 804311184 804311184 353079567 332572598 488938310 488938310 230011216 360716664 479199822 479199822 311428510 485216856 485216856 243917900 243917900 174720384 137115152 136722944 36446720 35990528 62843392 62843392 118521090 445724242 445724242 426651634 468325878 966986072 966986072 898681384 924133947 924133947 348428949 198441076 463669446 592268404 973874708 973874708 693169947 693169947 604830480 580404352 580404352 836375244 991446162 1031964317 1031964317 676218300 702410469 702410469 434964988 979075650 979075650 861855411 906158356 1008939279 1008939279 642354442 709444877 826017137 826017137 658698443 636482315 339466185 268488960 12307276 99414852 160653952 164340196 164340196 158020804 210355692 210355692 204434636 790796377 790796377 426418142 828777409 828777409 503527042 208216396 121686536 262517000 982102101 982102101 692001072 915607334 915607334 486540068 859939344 859939344 876078105 1048593484 1048593484 1010176777 523375422 523375422 591806888 593582161 852299904 852299904 369871744 652078809 801646648 801646648 749208909 749208909 676333512 546488752 856170853 856170853 706748566 309330452 458868452 458868452 162776679 959119441 959119441 830800002 942652183 942652183 311364817 255082662 353781932 353781932 192230288 192230288 185690628 171041556 171041556 151003236 151003236 139477056 25215652 16810016 243318876 243318876 573704596 654576801 654576801 546626304 965001953 965001953 865769151 542655747 618366169 625311075 625311075 297431919 842038004 971504103 971504103 824255372 824255372 677061926 444864723 479286912 479286912 364648554 140324484 214769676 214769676 201403596 201403596 195743028 103057482 345454606 345454606 463168050 463168050 436250626 436250626 489358956 489358956 410396664 461585738 461585738 279130434 281118484 281617602 281617602 42929192 131478720 131478720 107937768 90935936 90935936 22534016 297643840 761414752 761414752 75567112 75567112 221405788 747032656 747032656 60536393 264378472 264378472 86965540 42649936 93468752 93468752 542134219 542134219 300531376 613968009 613968009 239751456 256640024 256640024 763495457 763495457 25691232 671105121 671105121 51875872 25215072 26366464 131224552 501615774 501615774 438379932 438379932 112760024 112760024 127314872 127314872 361312688 370072602 370072602 294690424 61643712 15279552 77136640 77136640 42066888 183037394 416719618 416719618 503660054 503660054 487319592 956829732 956829732 654911491 706765961 706765961 541629716 285769984 541922336 753020300 753020300 485163234 159191884 321593128 533871734 533871734 466989166 466989166 332434338 418039204 490138470 490138470 423055220 423055220 10486848 11690752 15463872 145088960 172198660 451474576 451474576 637070313 727624044 984675185 984675185 328713344 705299784 1050212189 1050212189 1070904409 1070904409 978680254 978680254 549759298 543562113 415772838 539789952 553585216 679503457 751884356 751884356 656425851 656425851 943944863 1028630747 1028630747 941564933 801485000 437619222 550822112 893456346 893456346 544574972 632554124 632554124 900541930 900541930 1000041587 1000041587 713665124 661448494 889180316 889180316 813805817 1030303805 1030303805 760574246 760574246 523744134 523744134 763635310 763635310 543693860 944702722 944702722 809448855 809448855 655040525 655040525 606095533 604627977 604627977 540554524 644322641 734670564 734670564 704243284 704243284 695411264 709308597 713969093 713969093 704891841 551163585 458437302 545109568 998265191 998265191 966212199 687814882 637559392 678043533 678043533 509352319 174858464 71828672 43132120 44716112 44716112 73342728 73342728 70929928 23173696 31287648 63701221 141361464 141361464 74253768 610600089 610600089 119800192 114344664 182356548 794832992 794832992 738189821 968960002 968960002 816711693 816711693 515746466 760663076 1057360973 1057360973 826738773 826738773 894444925 894444925 757951794 732516591 996966874 996966874 726024316 419903526 988948758 988948758 629699516 319550736 665027945 665027945 131260787 371312577 371312577 703627321 703627321 127550200 127550200 84442832 106743848 941410324 941410324 849478389 849478389 187620660 203574328 203574328 31057632 174900164 174900164 149998996 149998996 443001702 598471060 982067300 982067300 714100736 714100736 445946597 445946597 1055437705 1055437705 974930791 1064987090 1064987090 886819200 448856274 426025800 120974136 78152744 100325352 126489960 126489960 38677856 38677856 28122256 45549728 315720256 315720256 304297296 361324082 361324082 117770856 117770856 1032399176 1032399176 1021354722 1021354722 457263300 457263300 153969126 671649968 671649968 639548320 639548320 107740601 83999962 84630234 531109318 663757038 663757038 388573006 968106786 968106786 540544464 558891681 558891681 1028241424 1028241424 397936506 569901211 569901211 1056216181 1056216181 572208657 697964133 697964133 588453557 165151232 568359620 568359620 582792307 830997603 830997603 808524611 822034307 822034307 837101889 837101889 323238137 618759658 768203087 768203087 629194857 538184292 520248874 483104386 483104386 251258844 999965146 999965146 835098923 801361953 801361953 697368912 44048997 15539936 15539936 4720640 268574722 268574722 117657624 117657624 279185730 279185730 360771766 423812826 423812826 373943444 267505120 139929540 143661088 160832100 341080600 341080600 371294952 749732230 749732230 241246225 983040572 983040572 104516320 104516320 699276088 699276088 568671389 203109900 1046079244 1046079244 805805971 742729869 841039698 841039698 837424931 837424931 596659040 596659040 285339793 864141410 864141410 365183400 653302792 706988212 706988212 856045959 856045959 556796504 561253877 561253877 696272234 803870205 803870205 776488215 776488215 451041956 698515792 736887565 736887565 646059954 677588994 725028032 897267312 1067858745 1067858745 630566425 662741085 752299920 752299920 200003309 270017587 270017587 184501496 386169434 879654229 930472294 930472294 997051830 997051830 592967532 677401265 910279434 910279434 281142549 249414272 38062224 840754820 840754820 1051098118 1051098118 982441047 235688011 805983508 975225111 975225111 377020039 777039052 777039052 290280080 55228736 892437952 903472875 903472875 615249225 615249225 866412946 866412946 354550120 537776163 537776163 420915926 460119248 706747412 867588832 867588832 913705900 913705900 547069117 799533613 799533613 732317325 732317325 696067400 195372644 744765024 781718837 781718837 817621455 817621455 679126130 679126130 738900316 1066849291 1066849291 919901209 358377478 403017386 548434522 888251323 888251323 616764306 380183192 380183192 69737352 69737352 46399488 13969744 77598976 80154184 522263008 522263008 334707858 416041532 422162406 422162406 368955370 395020028 395020028 266209144 266209144 175103136 815320598 815320598 499514008 952991910 952991910 541384854 595640449 595640449 318931262 318931262 975742015 975742015 815521472 812087427 990085936 990085936 112400280 776786122 776786122 516268535 376478654 348373270 697580352 697580352 687055465 819962601 896198250 896198250 943947621 943947621 608974979 343877519 469886218 671211525 1020117386 1023723651 1023723651 945160486 945160486 206011804 307673886 394064532 394064532 323055514 368478954 368478954 297479960 297479960 288281192 62204880 115832800 238699576 501929788 501929788 509606150 509606150 447816104 403764070 403809550 403809550 373408444 373408444 226140952 226140952 443547940 443547940 282018040 260745120 194908396 194908396 210375756 210375756 143592184 163166168 163166168 192949576 210240860 210240860 287594288 287594288 273728130 308414016 322021912 322021912 131107512 304296304 313265490 503293978 746431878 746431878 542824065 304276483 833314256 833314256 417075653 17437728 848389378 848389378 545559535 624302889 802616296 802616296 368374436 368374436 300867042 300867042 270888320 28175712 201280144 201280144 671484448 671484448 587989541 50598945 151241264 151241264 44489040 37985028 138498576 173878932 173878932 167969920 1054720 220993860 220993860 315588680 430206226 430206226 474287242 474287242 396953020 396953020 278910504 278910504 138696928 138696928 274697922 274697922 307993632 408686214 408686214 404072050 322185602 301228610 269235232 167383220 167383220 148719744 148719744 17971744 17971744 18416128 18416128 2232576 5174288 38086800 38086800 34494480 306736912 306736912 66183266 303884032 303884032 334705650 860485429 860485429 324744882 721499585 721499585 438702288 772052076 772052076 570648593 558685241 553867505 587337777 588250280 588250280 93229760 166865764 166865764 128766760 128766760 210938020 234049952 234049952 354146048 354146048 486384906 486384906 425385966 168275168 953130619 953130619 879700510 841365677 798233470 491517102 411027826 915343850 973453728 973453728 739144756 696992517 577630576 173210016 55415968 84200576 84200576 218574396 218574396 90912032 671286637 671286637 474603011 474603011 79220580 139316384 139316384 438329824 438329824 416949152 395768808 445545656 866272154 866272154 361650948 318921728 526218764 526218764 555416613 555416613 123007164 123007164 85287804 130854568 569623377 569623377 550898312 601563229 601563229 1006635594 1006635594 545500269 833605299 833605299 811782531 811782531 791474592 472313644 985625639 985625639 797966349 103858216 756077341 756077341 304784974 429417474 608573577 608573577 153381764 694206384 806652499 806652499 1071748294 1071748294 592170237 592170237 153683024 986776532 1002449111 1002449111 234955492 284239898 609127052 609127052 698754724 698754724 149363588 678325829 678325829 201570600 201570600 92352585 754999849 754999849 412522083 476438787 476438787 328244432 317288178 318057426 318057426 304404482 304404482 823115328 832526673 832526673 472172814 1011088109 1011088109 294914658 237505420 308675830 503131101 651438159 651438159 547508312 676665024 676665024 310651020 278208102 999307987 999307987 462499950 462499950 306648216 559028244 726928053 726928053 800006226 974490743 974490743 935512992 520835450 520835450 360716664 479199822 479199822 403491846 485216856 485216856 243917900 243917900 137115152 137115152 136722944 59517488 36794960 28584960 49192084 118521090 445724242 445724242 426651634 468325878 966986072 966986072 859777568 924133947 924133947 589003505 589003505 543161985 595672176 973874708 999891603 999891603 586691155 586691155 580404352 580404352 844751548 844751548 1031964317 1031964317 594627924 702410469 702410469 434964988 979075650 979075650 861855411 906158356 1008939279 1008939279 642354442 709444877 826017137 826017137 658698443 544810881 268488960 268488960 32343148 231691620 231691620 164340196 164340196 158020804 159155140 160746084 160746084 590672740 590672740 723981584 723981584 705571488 705571488 710715488 714935585 714935585 633206757 611335076 611335076 180806469 747111501 748160333 748160333 792309074 876078105 1048593484 1048593484 448926239 1016231508 1016231508 774587224 333269793 852299904 852299904 550353024 652078809 801646648 834929328 848562771 848562771 676333512 546488752 856170853 856170853 272844339 170952368 458868452 458868452 143711316 143711316 830800002 830800002 822248657 965218560 1011368149 1065649648 1065649648 353781932 139801984 185690628 504410535 504410535 1014092306 1014092306 763476526 714477692 806531146 806531146 222302280 648693377 648693377 581619668 223478948 546626304 965001953 965001953 865769151 542655747 618366169 625311075 625311075 642710685 642710685 428950945 207972128 596124086 1038090735 1047003551 1047003551 1038616047 955253946 364648554 328336656 410529158 410529158 285543830 195743028 532035564 532035564 597647388 676634140 676634140 694645250 694645250 464721562 489358956 489358956 410396664 705898872 705898872 668503824 668503824 202447180 172415124 141720256 131478720 227896763 1068197687 1068197687 370269981 642711455 642711455 696990164 696990164 619748959 419748086 733090397 747032656 747032656 657302588 657302588 287059354 287059354 192012704 192012704 459595160 459595160 307619400 122234040 125806040 228328296 228328296 62315376 173530480 219327532 219327532 223086596 223086596 176443436 231222288 231222288 224736984 531636452 531636452 501615774 438379932 438379932 112760024 126987504 127314872 127314872 361312688 370072602 370072602 294690424 93381576 18711136 86363656 86363656 65199954 183037394 816083079 816083079 503660054 503660054 487319592 342465160 269157425 654911491 890786726 890786726 968884325 968884325 642325560 753020300 753020300 485163234 159191884 802827873 802827873 533871734 887407278 1021021391 1028788407 1028788407 811987499 727115048 727115048 763250940 763250940 184965412 142643520 34660368 172198660 252963120 979594543 979594543 727624044 984675185 984675185 328713344 705299784 1050212189 1050212189 1070904409 1070904409 978680254 978680254 549759298 543562113 415772838 539789952 539789952 679503457 751884356 751884356 656425851 656425851 943944863 1028630747 1028630747 941564933 801485000 437619222 924013224 924013224 893456346 544574972 632554124 632554124 559803936 901777450 901777450 713665124 713665124 661448494 889180316 889180316 813805817 1030303805 1030303805 255992121 426056071 426056071 582224852 763635310 763635310 639631492 944702722 944702722 809448855 809448855 573780753 573571857 573571857 101750305 87742248 404264744 427345830 427345830 191558854 704243284 704243284 31561637 15533056 15533056 15018432 12812992 12812992 6510144 3410688 336640 2410752 33628160 33628160 33554448 101267728 101267728 101068040 69477392 67813648 100872216 100872216 69850384 6427008 4936960 1266688 27632768 31287648 31688448 31688448 23795776 23795776 189040825 189040825 278121067 278121067 628832165 794832992 794832992 738189821 677545332 677545332 413115831 966737197 966737197 528413989 1057360973 1057360973 938411698 938411698 894444925 894444925 391514522 842482810 842482810 726024316 726024316 419903526 988948758 988948758 629699516 872268378 872268378 665027945 604123508 503456804 770819346 770819346 857858355 874635826 874635826 204752797 475874846 497402896 612639786 1038068984 1038068984 1020091096 830736483 595626124 497705868 772630125 772630125 149998996 975873904 975873904 171529680 982067300 982067300 169882436 169882436 294290324 294290324 175486116 207222600 207222600 261564768 261564768 167794708 220252416 220252416 99325136 78152744 100325352 104938280 104938280 73191392 90192376 93248456 361745010 361745010 383075072 383340304 383340304 336129642 125977696 125977696 106211746 332550528 1021354722 1021354722 457263300 457263300 153969126 537528640 658389848 658389848 639548320 107740601 93784504 566368505 566368505 663757038 663757038 648155480 436417870 536936726 536936726 106481304 354080364 354080364 373430920 397936506 569901211 569901211 904790309 904790309 144249824 685908865 685908865 174305684 441879394 441879394 541323393 562493603 813879363 813879363 688157026 136653060 15118724 4458624 188831904 188831904 419610780 419610780 520351806 520351806 520248874 691278211 762578589 911738523 911738523 832849637 832849637 89393824 80156712 697368912 697368912 91494560 85053696 85053696 296086018 296086018 797388891 797388891 765213895 765213895 636648374 361426985 814294083 814294083 680983495 614534662 492182430 474758866 474758866 372645124 38017512 371294952 670163250 670163250 220226193 811967164 811967164 394504542 958798132 992475447 992475447 798978457 401029626 938945530 938945530 907277904 907277904 775661021 410690136 837424931 837424931 596659040 596659040 285339793 864141410 864141410 365183400 653302792 653302792 633904932 669247257 669247257 581135312 581135312 561253877 696272234 806752437 806752437 1065359466 1065359466 1051089345 865507514 865507514 736887565 646059954 677588994 725028032 897267312 1067858745 1067858745 630566425 662741085 752299920 752299920 16777248 28842576 53353776 53353776 41992272 587502128 587502128 539501312 539501312 592967532 592967532 211536141 246076440 251724810 320635499 765591215 765591215 763099053 946924046 1008607636 1008607636 470410776 506587650 506587650 515097109 717888093 717888093 777039052 777039052 619503632 624572257 892437952 903472875 903472875 745747245 745747245 866412946 866412946 354550120 839198240 857476659 857476659 451226070 843446598 843446598 795949167 913705900 913705900 288430472 73621096 73621096 75780640 95959768 553604905 553604905 744765024 781718837 781718837 817621455 817621455 679126130 989330391 989330391 1066849291 1066849291 919901209 506452103 327405088 548434522 974258626 974258626 794856227 760610864 857086730 857086730 582109492 124508536 124508536 83343240 83343240 194767868 334707858 334707858 416041532 422162406 432792586 432792586 464926884 464926884 290395362 549597671 549597671 929113540 929113540 891427307 952991910 952991910 541384854 595640449 595640449 192475804 192475804 975742015 975742015 815521472 812087427 603346728 713102804 1012540771 1012540771 776786122 1014420032 1014420032 682930639 574798657 70623857 591359616 819962601 896198250 896198250 943947621 943947621 687871330 343877519 512243484 671211525 671211525 311550546 680556140 945160486 945160486 203705372 307673886 394064532 394064532 323055514 368478954 368478954 297479960 317361828 462686902 462686902 447816534 189618098 95255986 334616686 509606150 509606150 310573100 403764070 403764070 329909168 360224424 360224424 337363072 80789696 80789696 76862408 53477468 179837140 194908396 194908396 210375756 210375756 184699940 163166168 163166168 324274866 342428594 479209156 479209156 287594288 373357242 481334214 481334214 328092368 328092368 369116536 369116536 331693344 746431878 746431878 542824065 709112196 833314256 833314256 591322929 591322929 848389378 848389378 545559535 624302889 802616296 802616296 835317992 835317992 812278826 300867042 270888320 690415941 690415941 678865761 676859700 721485844 721485844 688001061 688001061 169998464 169998464 141496212 138498576 173878932 173878932 167969920 79565320 336363402 336363402 353869304 353869304 268960770 268960770 268445186 33565584 303300906 465838236 480524866 480524866 355768424 274697922 274697922 307993632 408686214 408686214 404072050 322185602 301228610 269235232 66073120 66073120 65428592 65428592 11907776 49908608 49908608 22949552 54536112 54536112 57819008 57819008 34494480 306736912 306736912 66183266 303884032 322645314 330560370 860485429 860485429 312657280 721499585 721499585 438702288 772052076 772052076 570648593 558685241 553867505 587337777 588250280 588250280 1060727191 1060727191 849569723 655664108 833693370 833693370 262323827 310179398 643043196 643043196 569056673 816391235 816391235 805618242 475888176 475888176 509332630 509332630 491517102 491517102 163086528 163086528 29164256 29164256 62261952 62261952 136669800 136669800 98309652 230562212 230562212 78123864 111542352 111542352 352848942 420217898 420217898 67259520 441302026 441302026 269295638 438329824 514475094 514475094 344141898 376476019 866272154 866272154 945316050 945316050 370484436 746065161 746065161 570438779 570438779 405059656 317516588 364475920 569623377 569623377 996715226 996715226 601563229 507982736 501133512 683816257 683816257 896946576 896946576 806155565 538846822 472313644 985625639 985625639 836238051 874847203 874847203 318994489 304784974 429417474 429417474 460235648 526508478 537391682 806652499 806652499 383127553 266424556 156613260 156613260 22168288 17875584 26307264 234955492 234955492 244549812 244549812 244452100 687262313 687262313 228733764 678325829 678325829 221058056 217523788 216497532 754999849 754999849 810827361 810827361 808666832 808666832 317288178 540425475 540425475 304404482 379746392 639742057 832526673 832526673 620813576 738757891 738757891 405063942 2129926 141822852 345900984 651438159 651438159 547508312 676665024 676665024 406077636 278208102 999307987 999307987 462499950 462499950 306648216 503452880 503452880 399772322 800006226 974490743 974490743 935512992 520835450 520835450 79467892 456266884 456266884 403491846 403491846 361778796 226605292 226605292 134328644 52136961 579929105 579929105 564116529 575932577 713479813 713479813 81268976 645262251 742615753 907004038 907004038 670725257 670725257 299053742 1044749027 1044749027 589003505 602935472 602935472 948904453 999891603 1011360830 1011360830 806453908 725107940 725107940 844751548 844751548 806393632 806393632 771830454 771830454 541274241 101303296 56149408 57881520 277671488 483592522 483592522 709285004 709285004 373607810 985442627 985442627 978842278 426845103 343986504 891739182 891739182 820572588 231691620 150227396 157759684 157759684 159155140 160746084 160746084 704898636 704898636 723981584 723981584 705571488 705571488 710715488 714935585 1064463984 1064463984 674028544 674028544 680462092 747111501 748160333 748160333 792309074 792309074 823268767 823268767 280631106 1016231508 1016231508 774587224 579469340 505195760 505195760 550353024 550353024 545969217 834929328 848562771 848562771 488762361 420570774 1036526785 1036526785 910739171 941098503 941098503 938094763 938094763 931691368 623742049 830680336 830680336 965218560 1011368149 1065649648 1065649648 224682032 34076688 138484644 504410535 504410535 1014092306 1014092306 763476526 714477692 806531146 806531146 821435751 834929147 834929147 927335595 927335595 944709638 944709638 703805889 910074145 910074145 363126856 363126856 117601288 642710685 642710685 625350825 225043884 596124086 1038090735 1047003551 1047003551 1038616047 955253946 328336656 328336656 410529158 410529158 285543830 59976240 532035564 532035564 597647388 676634140 676634140 694645250 694645250 464721562 464721562 238533400 238533400 705898872 705898872 668503824 668503824 383778522 383778522 141720256 283787592 344845386 1068197687 1068197687 965204485 642711455 876713281 876713281 696990164 619748959 591666342 733090397 1049410607 1049410607 837740651 837740651 746874120 319366194 452136158 514714974 514714974 980503569 980503569 237182816 761987581 761987581 262434360 62315376 173530480 641939981 641939981 248030312 625248509 625248509 231222288 231222288 224736984 531636452 531636452 352931952 352931952 120168722 41992272 126987504 126987504 115085016 380925376 380925376 129157176 129157176 119596864 30967712 86363656 86363656 65199954 136181825 816083079 816083079 409524507 356530840 356530840 73011088 73011088 187565478 890786726 890786726 968884325 968884325 642325560 648424544 648424544 228529720 183515564 802827873 802827873 421212816 887407278 1021021391 1028788407 1028788407 811987499 727115048 727115048 763250940 763250940 184965412 142868552 142868552 168262288 168262288 979594543 979594543 530853187 530853187 447532374 59540806 27533056 33032160 33032160 32648608 120040128 120040128 110755280 322561842 322561842 302198802 302198802 228712812 228712812 959321346 959321346 688130085 380244407 625368216 625368216 571884657 377539717 249343578 361853390 924013224 924013224 281265141 207692780 239503692 239503692 374376624 901777450 901777450 487718405 600144368 600144368 676359287 676359287 668828986 941851028 941851028 743473421 786880989 786880989 582224852 582224852 702038842 702038842 718736138 979855583 979855583 483918436 648944268 654934393 922826385 1041424881 1041424881 673243144 720199647 720199647 537681746 678650388 709419829 709419829 705200629 705200629 683794629 178061969 12812992 6510144 482560 282624 43264256 43516752 943664439 943664439 338656016 547331085 547331085 405333254 405333254 100872216 681743697 681743697 941768964 941768964 805586176 137487360 27632768 537370637 761664572 761664572 704778652 704778652 234885161 622316768 622316768 628832165 628832165 534458521 573052004 732041589 732041589 435117063 966737197 966737197 154181632 110941736 266725884 938411698 938411698 387109818 387109818 391514522 842482810 842482810 648362506 969205901 969205901 941696753 941696753 457758141 872268378 872268378 623480037 604123508 503456804 770819346 770819346 857858355 874635826 874635826 570539162 475874846 475874846 612639786 1038068984 1038068984 1020091096 830736483 595626124 497705868 772630125 772630125 130958944 975873904 975873904 726405254 705431573 705431573 571874070 697336320 697336320 465572696 465572696 1030195449 1030195449 684078187 876019298 876019298 784751365 784751365 927168965 981795719 981795719 762452767 969068775 969068775 821391313 788169160 361745010 361745010 383075072 383340304 383340304 336129642 125977696 125977696 348932328 348932328 1047703730 1047703730 136032783 275068384 354453794 833407000 833407000 658389848 568219264 93784504 93784504 566368505 566368505 551555960 673193984 673259781 673259781 149761476 149761476 858320550 858320550 106648228 317719296 348652746 348652746 347215168 281150666 166924932 166924932 540121664 540121664 809840772 809840772 441879394 541323393 562493603 813879363 813879363 688157026 311666310 583900370 583900370 554479217 287129775 705798246 748645063 748645063 780274184 780274184 691278211 762578589 911738523 911738523 832849637 832849637 507962694 146867512 1009856110 1009856110 562889928 671630660 671630660 541647012 691202181 797388891 797388891 765213895 765213895 682642502 682642502 814294083 814294083 680983495 614534662 747214850 805683283 805683283 682748756 235987204 553069408 610394505 661398585 757417993 811967164 811967164 536887301 958798132 992475447 992475447 883296825 883296825 938945530 938945530 1043559260 1043559260 775661021 410690136 566663904 566663904 38179200 38179200 36081808 36081808 24717216 36874048 570898449 570898449 623502677 669247257 669247257 774638080 774638080 730280053 730280053 806752437 806752437 1065359466 1065359466 1051089345 865507514 996445046 996445046 246546807 22811306 670240378 670240378 116207064 120066234 184535570 241962396 241962396 88229908 34741808 34741808 67274057 548044817 548044817 706994434 740852814 740852814 772262785 772262785 408355329 1052414734 1052414734 919770747 320635499 765591215 1058615416 1058615416 946924046 1008607636 1008607636 861615802 506587650 506587650 950872150 950872150 876776143 876867723 876867723 817271644 624572257 674245578 1019553999 1019553999 745747245 745747245 663863512 663863512 361906875 839198240 857476659 857476659 455148845 843446598 843446598 352994741 91171996 138740896 145506504 145506504 125791368 125791368 91986320 553604905 553604905 101587992 607664288 629096361 638075064 655233105 655233105 989330391 989330391 456273387 425012501 685345952 685345952 597132869 707875281 974258626 974258626 794856227 760610864 857086730 857086730 582109492 124508536 124508536 205262684 205262684 153876520 204213516 204213516 366217250 366217250 432792586 432792586 464926884 571277921 571277921 553856389 553856389 929113540 929113540 891427307 916595118 916595118 853615059 310612179 155304222 544186892 750645069 750645069 438457382 170691604 291702628 412745830 713102804 1012540771 1012540771 415294064 1014420032 1014420032 682930639 574798657 765645165 968506351 968506351 710461077 710461077 885016612 885016612 687871330 881296298 881296298 512243484 280179522 311550546 311550546 280011024 252616840 239462556 457999892 457999892 266151016 266151016 86315736 282025088 338613728 338613728 462686902 462686902 447816534 381212256 71253456 101930152 387105520 387105520 72389298 26740320 26873856 26873856 0 352863528 352863528 113246320 113246320 83886120 70304520 70304520 8742784 15390144 96129856 184699940 184699940 132910584 124780800 324274866 342428594 479209156 479209156 243325602 373357242 481334214 481334214 328092368 328092368 369116536 369116536 674857954 1007120517 1007120517 355939110 709112196 709112196 447550533 591322929 591322929 845186675 845186675 405106936 405106936 625574285 625574285 835317992 835317992 812278826 151102850 631746157 690415941 690415941 678865761 693897057 721485844 721485844 688001061 688001061 547615041 547615041 141496212 35969344 10126848 11800776 79565320 79565320 336363402 336363402 353869304 353869304 268960770 268960770 268445186 253569040 303300906 465838236 480524866 480524866 355768424 108384172 193301096 193301096 178607476 115801188 90770752 137849745 722346773 722346773 689502197 438305715 438305715 65428592 686303333 686303333 537872150 825646388 825646388 54536112 324348048 324348048 278710608 33883392 57672656 57672656 269315936 322645314 330560370 330560370 270098832 312657280 329500162 329500162 319849792 42746472 42746472 104859784 132206640 132587784 132587784 126603640 326163173 1060727191 1060727191 849569723 655664108 833693370 833693370 473043726 473043726 643043196 643043196 569056673 816391235 816391235 805618242 475888176 475888176 509332630 509332630 145245892 145245892 259476786 424670592 424670592 293157488 146348050 448741206 448741206 438699284 438699284 383321984 230562212 407902606 407902606 381682384 381682384 460645659 726799029 726799029 634343537 601776505 601776505 696828052 696828052 1042301517 1042301517 676365804 716752725 716752725 945316050 945316050 855713906 855713906 746065161 570438779 570438779 715582993 1057394848 1057394848 671051395 324722816 996715226 996715226 816172816 816172816 501133512 683816257 683816257 896946576 896946576 806155565 538846822 46141696 48370128 584536546 836238051 874847203 874847203 318994489 114861140 199969008 199969008 460235648 526508478 681078869 781296212 781296212 675057681 638610196 112470552 112470552 34814560 109105328 130224248 252945040 252945040 169210004 99956760 244452100 244452100 228733764 228733764 163317088 221058056 221058056 217523788 216497532 168206208 720400859 810827361 810827361 808666832 808666832 404297842 806630435 806630435 322868002 379746392 639742057 639742057 655978318 766240551 972559557 972559557 567472280 567472280 463870326 463870326 345900984 510526364 510526364 481821010 481821010 406077636 478874870 478874870 341322366 378282744 378282744 162006372 530913292 530913292 65470806 20498208 91452776 295773216 295773216 283157774 190864986 129849116 176837216 176837216 212911720 212911720 141860332 226605292 226605292 135118148 52136961 579929105 579929105 564116529 1044781518 1044781518 903751123 903751123 645262251 742615753 907004038 907004038 670725257 670725257 375431512 1044749027 1044749027 440264054 602935472 837703216 837703216 1060247166 1060247166 1011360830 806453908 725107940 725107940 653447704 653447704 944835383 944835383 864993790 864993790 1003171893 1003171893 703253860 701117474 451097552 722856501 722856501 1057078311 1057078311 923395131 985442627 985442627 978842278 426845103 353077410 891739182 891739182 820572588 89739232 139421568 157759684 157759684 28894816 28894816 27788640 704898636 704898636 648112409 876778146 876778146 674846086 674846086 635707810 1064463984 1064463984 674028544 674028544 680462092 680462092 216056268 836026355 836026355 598905308 723665483 1000474429 1000474429 539103613 506986530 784337312 784337312 749434897 749434897 246205788 726143686 951326260 951326260 79031112 488762361 488762361 420570774 1036526785 1036526785 910739171 941098503 941098503 938094763 938094763 931691368 623742049 830680336 830680336 663621908 873236561 873236561 872435008 532974856 34076688 138484644 175145124 808555436 808555436 547975751 338302218 364541798 570425864 615383575 821435751 834929147 834929147 927335595 927335595 944709638 944709638 703805889 910074145 910074145 363126856 633138525 633138525 604771488 625350825 625350825 225043884 225043884 203682060 203682060 88183204 168296456 363333140 363333140 319128756 445511878 445511878 407369750 186480354 196361972 196361972 213123552 213123552 121770168 239816872 239816872 393616314 393616314 293552034 293552034 638994210 638994210 333226939 329254816 383778522 383778522 107046658 283787592 344845386 426212619 965204485 965204485 502490085 876713281 876713281 299592564 591666342 591666342 497498472 1049410607 1049410607 837740651 837740651 746874120 812367269 812367269 609046542 514714974 980503569 980503569 345836776 761987581 761987581 360996768 234493468 234493468 641939981 641939981 248030312 625248509 625248509 33713232 33713232 38769152 383659240 383659240 369128512 369128512 270662842 378456144 378456144 130993522 314100048 380925376 380925376 387955168 387955168 119596864 30967712 30967712 45146368 45146368 27752260 809714048 809714048 140644608 356530840 356530840 421335324 421335324 169480484 169480484 84675624 13913152 36488448 36488448 135292644 228529720 228529720 183515564 143074976 233443420 580321912 580321912 126892625 142745600 142815300 232782444 232782444 186308660 198718492 198718492 119986436 142868552 142868552 207692420 207692420 386566274 386566274 471206202 471206202 447532374 857213410 896919461 896919461 242373121 965089400 1010744483 1010744483 669424623 869438323 1023775470 1023775470 994396474 409256187 975875171 975875171 959321346 945833262 945833262 727716787 625368216 663349414 724374352 724374352 77546632 380958384 569541537 569541537 630293436 689980196 689980196 374376624 545577604 949188101 949188101 920338112 876471654 1064252457 1064252457 677357132 941851028 941851028 743473421 786880989 786880989 540518749 540518749 702038842 702038842 718736138 979855583 979855583 719382692 719382692 654934393 922826385 1041424881 1041424881 673243144 720199647 720199647 640626505 678650388 709419829 709419829 705200629 705200629 683794629 178061969 4016128 4016128 1312768 33847808 43264256 43516752 943664439 943664439 363730960 547331085 547331085 405333254 405333254 36076550 681743697 816480520 941768964 941768964 805586176 137487360 86320296 593242128 761664572 761664572 704778652 704778652 234885161 622316768 622316768 16826400 541904224 551600577 573052004 732041589 732041589 435117063 438823590 438823590 323560457 897918057 897918057 882061547 283349636 595972535 595972535 709627029 709627029 550682632 853795456 969205901 969205901 941696753 941696753 457758141 931960414 931960414 683524765 153141540 153141540 134267648 187696306 458228406 876653236 876653236 608561289 343155727 103646216 101535350 30514912 47249140 47249140 75547712 152228388 168318512 168318512 130958944 253196968 253196968 726405254 726405254 723329552 723329552 717603456 717603456 697336320 465572696 465572696 1030195449 1030195449 684078187 876019298 876019298 784751365 784751365 927168965 981795719 981795719 762452767 969068775 969068775 821391313 788169160 10765056 10765056 10411584 9250816 9250816 72125440 72125440 71352456 348932328 943775909 1047703730 1047703730 747707652 893222795 1040099065 1040099065 833407000 797524760 797524760 791465277 658834343 808821390 808821390 622854952 673193984 673259781 673259781 149761476 149761476 858320550 858320550 627220875 829510490 918552795 918552795 845156368 281150666 166924932 166924932 540121664 540121664 809840772 809840772 596778674 559076321 818482976 841747731 841747731 863384338 863384338 830900547 583900370 554479217 287129775 705798246 748645063 748645063 780274184 780274184 493126548 590498858 910090011 910090011 609047313 507962694 507962694 146867512 1009856110 1009856110 562889928 671630660 671630660 541647012 983335554 984538455 999426875 999426875 906544155 766379061 682642502 335728650 789237530 789237530 604433439 1034727712 1034727712 805683283 682748756 569088699 655979772 655979772 661398585 757417993 757417993 956614695 998336592 998336592 142741572 298470145 883296825 883296825 722819907 72802685 1043559260 1043559260 938525535 498110678 226673224 608176281 608176281 595382193 595382193 577542832 577542832 24717216 570898449 570898449 58462128 594280961 594280961 774638080 774638080 730280053 730280053 681980323 560140357 541200513 337681050 337681050 353784280 996445046 996445046 416883329 869537662 869537662 670240378 555904664 147240872 184535570 644800585 644800585 685906405 685906405 206048657 653040977 653040977 548044817 706994434 740852814 740852814 772262785 772262785 408355329 1052414734 1052414734 919770747 275436693 691762130 1058615416 1058615416 944657456 806518950 861615802 960884915 997009635 997009635 950872150 950872150 876776143 876867723 876867723 817271644 143131200 839520256 1019553999 1019553999 325592274 325592274 663863512 663863512 361906875 373067203 912272313 912272313 455148845 757424180 757424180 728723994 728723994 643593580 229173576 179157360 125791368 125791368 91986320 91986320 631652328 631652328 607664288 629096361 629096361 84334632 120085776 120085776 25457440 25457440 195053568 685345952 685345952 597132869 707875281 707875281 57411376 57411376 57198000 57198000 106102928 106102928 114296724 199566792 291181210 291181210 494735188 494735188 204213516 273729156 403178502 403178502 45195936 167985475 571277921 571277921 553856389 553856389 558018818 658942371 658942371 916595118 916595118 853615059 403702998 403702998 707920481 750645069 750645069 673717029 956997143 956997143 838588614 995053239 995053239 756426689 658903174 855440828 855440828 663095418 822734426 822734426 968506351 968506351 278676748 206242343 92614368 402072136 658584729 1004316215 1004316215 662843428 461557878 608383113 608383113 585835739 474679042 542717473 608893587 608893587 592208926 266151016 195827348 319966848 338613728 338613728 309330224 336197026 381212256 381212256 316792320 424826796 424826796 473043600 473043600 479368298 479368298 288173346 288173346 352863528 352863528 113246320 113246320 83886120 70304520 115477904 115477904 42696456 19009824 19009824 2622720 124780800 124780800 264192 124324224 396852216 435342096 435342096 290577110 287568162 294074466 294074466 553091971 553091971 294055232 674857954 1007120517 1007120517 592380562 548810352 548810352 541139073 274464384 270697474 206675850 4198416 405106936 405106936 135170346 556476968 556476968 352871240 526266205 879849385 879849385 794040829 794040829 544871873 693897057 693897057 688850944 688850944 540381504 547615041 547615041 42346753 35969344 10849536 10333760 14757584 14757584 218312324 218312324 54077152 153752448 153752448 134291460 253569040 253569040 137702460 137702460 3410688 264192 2443264 2443264 2220288 2220288 3012352 22638496 22638496 137849745 722346773 722346773 689502197 438305715 438305715 60612208 686303333 686303333 537872150 825646388 825646388 52767024 324348048 324348048 278710608 309592096 316435840 316435840 305842304 305842304 294556352 294556352 25764400 1623616 8511552 8511552 278881090 278881090 283719618 283719618 281209536 143000836 132587784 145348812 145348812 40584552 448512 221510400 221510400 218368044 406719496 473043726 792772226 1029329535 1029329535 276971050 365903082 365903082 396110060 396110060 217322634 422580320 422580320 145245892 145245892 259476786 424670592 424670592 293157488 146348050 448741206 448741206 848304477 894134199 894134199 758961033 758961033 772949137 772949137 441112092 656412089 726799029 726799029 634343537 601776505 601776505 696828052 696828052 1042301517 1042301517 676365804 676365804 67182600 360744167 709714009 855713906 855713906 197818722 460930796 460930796 715582993 1057394848 1057394848 671051395 267050889 672874501 672874501 816172816 816172816 660935572 660935572 562826337 967141954 967141954 931248625 931248625 133574045 1030874031 1030874031 322961586 624357521 624357521 899719929 899719929 849073255 891561652 891561652 690021483 690021483 781296212 946244680 946244680 649334668 260030804 260030804 46738864 109105328 130224248 252945040 252945040 228000388 226959936 226959936 83894848 7744256 163317088 163317088 144554724 332636421 822745555 844665283 844665283 672243730 575731376 864206083 864206083 731384866 731384866 806630435 806630435 322868002 322868002 614662251 815048800 815048800 766240551 972559557 972559557 567472280 567472280 463870326 463870326 266869882 62914800 479522212 479522212 444336522 298616076 478874870 478874870 341322366 378282744 378282744 143131716 530913292 530913292 391086848 348067002 91452776 352770120 352770120 187921256 265200596 265200596 221840784 221840784 201401856 175839278 340599490 340599490 135118148 136261664 204879640 204879640 53218608 546997306 1044781518 1044781518 903751123 1061296384 1061296384 751570175 744753549 641613839 641613839 906680948 970907367 970907367 695636693 440264054 842141045 842141045 837703216 1060247166 1060247166 815582787 815582787 648720682 648720682 653447704 653447704 944835383 1018802183 1018802183 1002252864 1003171893 1003171893 840803536 701117474 451097552 722856501 722856501 1057078311 1057078311 923395131 487219481 604953736 604953736 357058018 357058018 338874376 338874376 284556544 158958828 158958828 149460992 149460992 225936268 225936268 219281572 218928413 599244974 869792499 876778146 876778146 489951017 635707810 635707810 290004006 441369182 508389846 508389846 438378774 990763219 990763219 836026355 836026355 867288652 867288652 1000474429 1000474429 539103613 429577830 784337312 784337312 749434897 749434897 942402624 942402624 951326260 951326260 456385544 899412934 899412934 245625905 272647296 351323146 351323146 538507170 559601313 559601313 311459840 313234434 582521906 849441553 849441553 251159001 166013412 166013412 532974856 532974856 20144768 90368008 406888774 808555436 874677773 874677773 629194857 629194857 372990501 881465888 899419755 899419755 765336647 403445470 407372934 810161282 810161282 168821904 201355452 201355452 393549624 633138525 633138525 597860477 738980877 738980877 671717129 157442216 311563014 817500614 860357811 860357811 853019890 363333140 319128756 445511878 445511878 407369750 186480354 364254692 364254692 318904920 755303109 755303109 654870588 423952036 423952036 444936918 444936918 567071282 638994210 638994210 924737560 924737560 340397832 340397832 5768832 5768832 36300048 36300048 755179696 755179696 286326824 348492168 844582562 844582562 463454708 645397740 645397740 281079818 596144552 596144552 220341645 558576801 812367269 812367269 609046542 155434592 155434592 288940778 345836776 351983562 360996768 360996768 234493468 234493468 197067436 262718844 262718844 207954396 132230356 35734608 35734608 71868720 130023672 367657386 369128512 369128512 270662842 378456144 378456144 321029834 314100048 358662570 358662570 387955168 387955168 117061664 13015552 21978016 23590304 27752260 40143833 809714048 809714048 325686419 325686419 29757259 421335324 421335324 386224520 306449554 306449554 888763289 888763289 582009681 661701480 661701480 165249540 996041714 996041714 944702596 990264738 990264738 959186695 959186695 890505791 842341811 508509351 1007791588 1007791588 583951820 20973728 67108876 135274500 207692420 360104849 386566274 386566274 471206202 471206202 608529593 857213410 896919461 896919461 564212063 965089400 1010744483 1038559697 1038559697 869438323 1023775470 1023775470 994396474 409256187 975875171 975875171 822083855 945833262 945833262 727716787 207494821 663349414 724374352 724374352 496178214 496178214 569541537 569541537 630293436 689980196 689980196 352585770 545577604 949188101 949188101 920338112 876471654 1064252457 1064252457 677357132 855288525 855288525 404889616 234955490 211274424 211274424 180404436 1022378900 1022378900 543408513 954886594 954886594 939879595 760951024 760951024 841581401 841581401 629235842 548094960 714961897 714961897 640626505 247062060 675559757 675559757 203725204 572682305 572682305 672475653 672475653 326633394 692063908 940878391 940878391 820344963 669458290 363730960 363730960 301662866 307247074 307247074 35129168 35129168 10977344 816480520 816480520 75718731 72913664 72913664 86320296 593242128 654322729 654322729 781781196 781781196 571024401 843580563 843580563 568979649 954390305 957737511 957737511 486449114 486449114 452489246 892242501 892242501 323560457 897918057 897918057 882061547 283349636 595972535 595972535 709627029 709627029 550682632 853795456 853795456 521765210 491597932 491597932 337776906 931960414 931960414 683524765 901433673 921739697 921739697 661723018 912278207 942785176 942785176 608561289 910289153 910289153 35670547 1313280 526848 8962120 781008921 781008921 738487304 606473993 485511806 485511806 1001176413 1001176413 593972096 723329552 821845316 821845316 717603456 322615508 65489412 122151456 142612256 321851804 321851804 230883352 230883352 54993192 118698552 122695808 122695808 51515952 76566920 76566920 132792320 132792320 91260104 363879250 363879250 348798672 382043408 382043408 86874656 86874656 112756648 112756648 943775909 943775909 272679042 747707652 893222795 1040099065 1040099065 773508669 797524760 797524760 791465277 658834343 808821390 808821390 1033913100 1033913100 477140476 563613760 568076037 626855429 626855429 610981688 706401159 907208291 918552795 918552795 845156368 118621024 597104948 597104948 592395616 564539525 283971904 596778674 596778674 559076321 818482976 841747731 841747731 863384338 863384338 830900547 644025553 457105206 457105206 534626674 995403824 995403824 521439774 521439774 1013714319 1026429088 1026429088 910090011 609047313 169003264 169003264 168835148 214369040 214369040 554446720 554446720 94076928 424328352 983335554 984538455 999426875 999426875 921880232 921880232 880978611 880978611 839307615 789237530 421025558 1034727712 1034727712 371379496 617814893 741308393 741308393 655979772 812691538 812691538 602681266 956614695 998336592 998336592 603738402 603738402 837746659 837746659 736148662 1009295753 1009295753 938525535 938525535 597243302 597243302 608176281 729814708 729814708 672796309 997858860 997858860 153228560 104892018 541036120 666759033 666759033 131658889 747229520 747229520 709843913 681980323 681980323 560140357 541200513 337681050 843161867 986726554 986726554 919633946 776042946 869537662 984971824 984971824 917826803 702281445 609055349 644800585 644800585 828113666 828113666 408160902 653040977 653040977 181329108 142919748 142919748 539070464 539226369 539226369 155905 16 33686032 113915318 858956666 858956666 304312600 304312600 149058280 537584306 861615795 960884915 997009635 997009635 513919500 513919500 217633984 633235332 633235332 391776926 391776926 839520256 839520256 805490691 325592274 325592274 815092256 815092256 311707394 373067203 912272313 912272313 104147736 757424180 757424180 728723994 728723994 643593580 229173576 179157360 31198304 31198304 2807040 607200489 631652328 631652328 621618505 621618505 661398577 661398577 562961505 729933365 729933365 194458065 598430245 598430245 721861648 721861648 684802425 764023917 771266529 771266529 702173176 551351656 650319372 650319372 72283208 199566792 291181210 304953864 494735188 494735188 223034608 492372588 519726798 519726798 430869416 444932548 444932548 278278628 208480288 493067432 558018818 658942371 658942371 837626978 837626978 706740501 675345813 675345813 707920481 707920481 572918324 673717029 956997143 956997143 838588614 995053239 995053239 756426689 695626085 855440828 939528202 939528202 822734426 822734426 169159392 197132532 315820325 315820325 298195170 746588705 746588705 1004316215 1004316215 662843428 461557878 608383113 608383113 585835739 474679042 542717473 608893587 608893587 1040847903 1040847903 588099667 319966848 319966848 309330224 309330224 290456226 52429714 316792320 316792320 424826796 424826796 473043600 495107884 495107884 479368298 355726122 355726122 420112900 420112900 403959104 403959104 609619169 609619169 797783717 797783717 108414744 752496936 752496936 747430492 747430492 254730012 999849279 999849279 377785242 435342096 435342096 290577110 287568162 294074466 391157592 553091971 553091971 294055232 294055232 335359986 592380562 592380562 548810352 548810352 707710864 707710864 742544650 742544650 574134407 733004661 882114605 882114605 1054081012 1054081012 1042933023 986268104 879849385 879849385 794040829 794040829 544871873 164682849 136448000 688850944 688850944 537868325 4105472 1571328 1332736 10849536 10849536 10333760 9404928 9404928 36904784 36904784 46019344 46087248 46087248 72362416 85994040 85994040 56714376 56714376 204399872 235686940 235686940 188093224 189221044 191854388 191854388 124622980 67684992 2122752 4793472 34682496 54009328 54009328 52689408 32771552 53986080 53986080 34027536 35601152 35601152 64172784 64172784 52309184 40159312 309592096 316435840 316435840 305842304 305842304 306936640 306936640 271324930 304744832 304744832 11387520 278881090 278881090 283719618 283719618 281209536 143000836 114239528 145348812 275237433 930296763 930296763 855113651 1027425426 1027425426 458508067 320525874 792772226 1029329535 1029329535 617230629 617230629 952640246 952640246 369170656 369170656 372790736 372790736 353104938 353104938 123083448 123083448 35128360 60949056 60949056 138485892 138485892 848304477 894134199 894134199 758961033 758961033 772949137 772949137 441112092 656412089 732090841 732090841 111073376 919624401 919624401 333506224 333506224 247989524 247989524 151102252 794555929 794555929 705873480 780140637 780140637 285278230 197818722 307902928 484847234 484847234 345391632 345391632 320814080 886017224 886017224 1036052666 1036052666 1025543799 1025543799 660935572 564733281 967141954 967141954 931248625 931248625 773911463 1030874031 1030874031 322961586 624357521 624357521 899719929 899719929 849073255 891561652 891561652 690021483 690021483 443762189 946244680 946244680 649334668 260030804 260030804 46738864 71877280 71877280 96600584 228000388 228000388 226959936 226959936 9441280 9122880 134219904 134219904 65817168 870131712 870131712 844665283 844665283 963240513 963240513 864206083 864206083 731384866 731384866 549335351 368573418 368573418 27736416 614662251 815048800 815048800 664306531 832494184 832494184 853470450 853470450 205521036 205521036 202510904 205983830 479522212 479522212 444336522 350758528 298616076 206384280 264766716 264766716 375243446 430411122 430411122 391086848 391086848 348067002 206224256 352770120 352770120 183590140 265200596 265200596 221840784 221840784 201401856 175839278 340599490 340599490 117609568 136261664 204879640 887949059 1018177543 1018177543 973472860 855247368 855247368 1061296384 1061296384 751570175 744753549 641613839 641613839 906680948 970907367 970907367 695636693 858922320 858922320 842141045 456165494 291558035 815582787 815582787 815582787 446541908 174286366 286349312 318162775 866536286 1018802183 1018802183 1002252864 1002252864 840803536 840803536 286971426 696413768 696413768 386753853 111919730 154090788 154090788 285645282 604953736 604953736 760323009 760323009 756416012 756416012 612404744 167763176 158958828 73427144 31214564 225936268 225936268 219281572 218928413 599244974 869792499 869792499 852723744 554357793 421999880 873106730 873106730 293209475 465068164 465068164 335144946 990763219 990763219 557859987 448344157 867288652 867288652 865080163 614960295 683241585 969007335 969007335 728240000 1028919830 1028919830 942402624 942402624 964861673 964861673 744568499 1021866708 1021866708 669017625 780198175 780198175 617185860 538507170 559601313 559601313 295256096 313234434 582521906 849441553 849441553 157556800 166013412 166013412 237355040 237355040 71616640 71616640 406888774 758121900 874677773 875243008 1024108064 1024108064 999388030 881465888 899419755 899419755 765336647 714638941 714638941 947835663 947835663 541115010 578376346 578376346 421406345 745750307 745750307 760754485 760754485 738980877 671717129 144327501 311563014 817500614 860357811 860357811 853019890 310378720 310378720 310378560 197694644 197694644 200410448 364254692 364254692 801879788 801879788 755303109 702336741 917705333 917705333 444936918 444936918 840701410 899684075 899684075 924737560 924737560 376971632 398549152 398549152 90276632 90276632 213939083 213939083 67113480 224526639 837134209 844582562 844582562 867827513 867827513 714362237 281079818 596144552 596144552 122332227 483318990 533415234 533415234 328192256 155434592 229639788 229639788 252020352 252020352 207753612 190129096 127324904 216684968 216684968 262718844 262718844 248435072 248435072 128737632 128737632 109936656 130023672 130023672 132121080 132121080 122234040 364941856 364941856 321029834 304994146 329591154 329591154 29882592 30414464 30414464 7471936 9916768 9916768 10769282 44083584 77697099 77697099 325686419 325686419 29757259 11823746 386224520 386224520 306449554 306449554 888763289 888763289 582009681 661701480 661701480 208667532 996041714 996041714 944702596 990264738 990264738 959186695 959186695 890505791 842341811 572797648 1007791588 1007791588 583951820 201590796 207499268 207499268 207103372 360104849 360104849 487975470 872538978 872538978 608529593 608529593 177851920 245735901 564212063 564212063 979875002 1038559697 1038559697 549989664 706410320 706410320 234407916 427856512 427856512 623940316 822083855 889724013 1006632975 1006632975 202748814 292866978 336788676 336788676 496178214 496178214 368242176 284270754 284270754 335808520 352585770 352585770 75499786 284369362 340836198 842223679 842223679 866069804 866069804 82948829 881454181 881454181 404889616 788185898 788185898 493581371 612633733 1022378900 1022378900 543408513 954886594 954886594 939879595 760951024 760951024 841581401 841581401 629235842 297480620 330486568 330486568 62002032 51405952 675559757 675559757 203725204 572682305 572682305 672475653 672475653 326633394 692063908 940878391 940878391 820344963 714293807 714293807 472633884 649122097 649122097 462423734 332924172 110516526 790406449 940609540 940609540 940571655 805845568 212337984 135318604 226755404 654322729 654322729 781781196 781781196 571024401 843580563 843580563 568979649 954390305 957737511 957737511 486449114 486449114 452489246 892242501 892242501 354256272 354256272 318146618 151269534 59387640 228098732 473434652 473434652 393492922 392629178 759657985 759657985 995055708 995055708 754642527 754642527 307152847 1061467515 1061467515 918505000 921739697 921739697 1011917355 1011917355 946905769 942785176 571583112 910289153 916863042 929112507 929112507 388157754 388157754 781008921 781008921 738487304 606473993 485511806 763398168 1001176413 1001176413 595815237 593972096 821845316 821845316 430769971 322615508 66546420 110301348 196186641 685983909 956299525 956299525 702075681 702075681 681711253 920787925 920787925 756947071 714490629 947178375 947178375 888178753 672143680 363879250 363879250 348798672 382043408 382043408 86874656 86874656 112756648 112756648 59835728 931709264 931709264 61932896 61932896 28911456 12919872 8988864 8988864 8708736 29360400 65012208 65012208 65012208 1033913100 1033913100 225476671 563613760 568076037 626855429 626855429 610981688 706401159 907208291 907208291 831526689 831526689 608211104 620941353 620941353 592395616 821220289 821220289 692361365 692361365 582747985 723153766 723153766 668594557 668594557 647969472 647969472 644025553 457105206 457105206 534626674 995403824 995403824 224556520 143254596 1013714319 1026429088 1026429088 742549264 809616518 809616518 516689118 516689118 944250174 944250174 746933228 746933228 699659109 678672274 424328352 638934672 638934672 596716913 921880232 921880232 880978611 880978611 839307615 523253793 380233050 897984904 897984904 394356017 617814893 741308393 741308393 350214112 812691538 812691538 586413009 310592387 578421424 578421424 603738402 603738402 638379609 638379609 736148662 1009295753 1009295753 869306372 869306372 597243302 597243302 527052125 729814708 729814708 672796309 997858860 997858860 153228560 104892018 541036120 666759033 666759033 131658889 78306696 78306696 74072128 306184448 378536194 378536194 272630088 876192392 876192392 986726554 986726554 776042946 776042946 352321578 984971824 984971824 917826803 702281445 609055349 200286617 307617936 828113666 828113666 408160902 503759416 503759416 581426649 705165333 705165333 539070464 539226369 539226369 337676302 879138274 879138274 405873391 858956666 858956666 587691169 568257408 239682408 95987092 269050802 438412066 1047077242 1047077242 447301508 447301508 217633984 661033358 661033358 391776926 391776926 302650144 540153778 544211841 811676417 811676417 815092256 815092256 286578787 355732266 355732266 355535146 354492714 321200136 223416712 251791556 251791556 248794604 111725748 50727248 74876280 74876280 133680736 607200489 607200489 620757313 621618505 621618505 661398577 661398577 562961505 729933365 729933365 194458065 708834052 708834052 804495552 804495552 684802425 764023917 771266529 771266529 702173176 551351656 650319372 650319372 247572212 172933748 74796140 304953864 329461144 329461144 251015376 492372588 519726798 519726798 430869416 603110148 603110148 142729284 996769976 996769976 571282869 759636240 759636240 1011128622 1011128622 706740501 683918085 793861985 793861985 719465932 58071984 58071984 307386530 307386530 318788386 318788386 14872128 787254142 787254142 695626085 939528202 939528202 692456115 692456115 704253654 704253654 691276581 329217619 298195170 746588705 842899622 842899622 680742914 371460378 1026560916 1026560916 927076539 874615424 874615424 286305933 279152626 279152626 1040847903 1040847903 588099667 334304386 334304386 381141858 381141858 46382064 289161712 304222744 381310298 382073920 382073920 462387332 495107884 495107884 455116562 355726122 355726122 420112900 420112900 403959104 403959104 609619169 609619169 797783717 797783717 553390017 752496936 752496936 747430492 747430492 254730012 999849279 999849279 377785242 272746410 272746410 273783714 273783714 149955526 391157592 391157592 335236272 26159618 969097888 969097888 289518407 495558210 495558210 323800242 707710864 707710864 742544650 742544650 574134407 733004661 882114605 882114605 1054081012 1054081012 1042933023 986268104 96038152 19721472 232986508 232986508 690046501 690046501 674572357 697642592 697642592 151134817 698825157 698825157 43489552 674546384 717313296 717313296 144445460 150972368 170008532 170008532 171747588 183839700 183839700 138757008 220537404 220537404 141304228 219428380 223944720 235686940 235686940 188093224 189221044 191854388 191854388 189231668 188560592 143067169 707078421 707078421 696072965 427941411 427941411 52693296 988214469 988214469 564107894 860526260 860526260 64172784 329828496 329828496 291513440 276868176 276868176 42811458 22407840 11856544 306936640 320475136 320475136 304744832 304744832 14892992 37839296 58084176 58084176 112237344 112237344 109463816 111167632 111167632 275237433 930296763 930296763 855113651 1027425426 1027425426 589566092 320525874 320525874 288523536 300627519 617230629 617230629 952640246 952640246 369170656 369170656 372790736 372790736 353104938 353104938 123083448 123083448 35521088 60949056 573328406 573328406 304514307 456229712 456229712 187507120 187507120 236997000 236997000 273305862 273305862 241601280 732090841 732090841 347413668 919624401 919624401 280020034 280093506 531173380 531173380 163287416 794555929 794555929 705873480 780140637 780140637 761269860 691826213 800918105 800918105 537677824 691762949 691762949 647748637 886017224 886017224 1036052666 1036052666 1025543799 1025543799 583750722 843178131 867840299 867840299 762715053 773623325 773911463 957570736 957570736 107405312 107405312 33603600 57705376 57705376 740401281 856045484 856045484 685608890 398194554 398194554 31857120 106240769 106240769 537240792 538393089 587579528 587579528 71877280 96600584 96600584 51479500 216048428 220825124 220825124 11236932 176009476 176009476 141152084 870131712 870131712 1053780879 1053780879 963240513 963240513 707889690 764451407 764451407 534809383 696288213 696288213 368573418 27736416 318999874 865532992 888136227 888136227 836841687 1066274943 1066274943 1015584675 1015584675 945951799 945951799 683682035 992232613 992232613 536904340 350758528 317761460 407591104 430746912 430746912 375243446 430411122 430411122 507809852 507809852 242087964 242087964 529375700 529375700 432891718 388369684 252916584 306255408 475014318 475014318 320873344 18941344 18941344 117609568 117609568 116016011 887949059 1018177543 1018177543 973472860 855247368 855247368 555745540 756023333 756023853 756023853 424844322 424844322 354983482 287769360 277779688 347534944 858922320 858922320 33554448 33554448 140952600 837026280 872679435 872679435 1069609478 1069609478 286459960 1050048810 1050048810 945118536 1023145935 1023145935 497920257 464162704 464162704 451277474 696413768 696413768 572633206 805528603 875360283 875360283 806882071 806882071 784470108 760323009 760323009 756416012 756416012 612404744 253026676 154157888 71592448 17842312 151333196 151333196 227403101 227403101 733817914 841222419 841222419 823395120 554357793 338076073 873106730 873106730 306368658 306368658 277410212 195683700 146937136 25257648 43591248 43591248 31006752 37224592 614960295 614960295 683241585 969007335 969007335 659844656 1028919830 1028919830 828677338 828677338 964861673 964861673 754081784 1021866708 1021866708 1006549015 1006549015 973603863 1023619122 1023619122 933237929 933237929 392238169 348153800 815829536 815829536 554844771 25303072 90227112 91243008 237355040 237355040 71616640 357065728 357065728 898280932 1014383471 1014383471 1024108064 1024108064 999388030 739780365 237703697 354950176 395872519 714638941 883874066 947835663 947835663 857246162 578376346 578376346 543228032 745750307 745750307 760754485 760754485 537093120 537093120 172271766 196516960 273457856 273457856 42207312 306463874 306463874 274186372 274186372 189268708 189268708 200410448 200410448 138363928 801879788 801879788 697583200 702336741 917705333 917705333 242965195 240124572 840701410 899684075 899684075 373818696 373818696 376971632 398549152 398549152 90276632 90276632 213939083 339898392 339898392 224526639 837134209 837134209 699129760 867827513 867827513 714362237 396987525 728190759 728190759 1017635622 1017635622 830207907 832522580 832522580 467138786 467138786 365107592 389915160 404089418 472918416 472918416 127324904 216684968 216684968 89641148 253904820 253904820 248435072 128737632 144831280 263631444 289151372 289151372 132121080 218702212 218702212 314638400 314638400 310538386 353537522 353537522 343809930 34131216 48271752 83628488 83628488 87294088 87294088 89546840 100895568 100895568 37150848 4707200 71903248 71903248 102760728 102760728 41233296 41233296 1719696 0 0 0 0 6556172 208667532 208667532 985794880 985794880 163454020 163454020 143655492 135266368 14815680 103351384 572797648 572797648 252705852 252705852 233232768 207499268 207499268 207103372 290219140 358402606 487975470 872538978 872538978 839428162 942933663 1047068999 1047068999 1040525647 834935005 508793692 526565760 526565760 67142072 706410320 706410320 234407916 427856512 427856512 926046148 926046148 805831692 1006632975 1006632975 386497248 122083512 336788676 336788676 359155342 359155342 339491364 339491364 223650258 38830608 512125570 512125570 152269132 284369362 350879174 842223679 842223679 906178587 906178587 844313235 881454181 881454181 594792718 880284280 880284280 1049382360 1049382360 750705524 750705524 6291840 6291840 698395012 698395012 578857312 578857312 164226276 474084714 474084714 589851968 736672681 736672681 640292121 210614508 267457204 267457204 140268948 171804932 171804932 141565568 134807552 134816772 134816772 8397824 8987712 8987712 714293807 714293807 472633884 649122097 649122097 462423734 332924172 110516526 790406449 940609540 940609540 940571655 805845568 603988165 603988165 226755404 797534541 797534541 709552693 232041440 591762485 591762485 58671024 158264964 164177588 164177588 65530176 65530176 16269552 103239376 428470244 428470244 354256272 354256272 318146618 172885256 172885256 228098732 376994107 925337498 925337498 392629178 759657985 759657985 995055708 995055708 754642527 754642527 579902288 1061467515 1061467515 975062418 918505000 895542755 1011917355 1011917355 946905769 840164285 914518230 973340823 973340823 929112507 929112507 808788499 648659586 943767646 943767646 18090528 797042712 797042712 763398168 872444587 872444587 918369322 918369322 302630416 35442192 584205315 584205315 281417922 191379782 325916052 807591601 956299525 956299525 702075681 702075681 681711253 920787925 920787925 756947071 714490629 947178375 947178375 888178753 672143680 123378048 31511984 70780808 70780808 380775530 380775530 85533472 85533472 59835728 1003802853 1003802853 931709264 762205679 878988763 997275849 997275849 746365773 679232032 738434141 738434141 935772841 935772841 652230883 610271625 290006772 819536404 819536404 713097974 445320290 878245646 878245646 410494754 410494754 115816920 26582456 549996208 608211104 620941353 620941353 429569604 821220289 866784705 869795315 869795315 582747985 406939510 406939510 418315565 917554011 917554011 849912331 849912331 188430132 188430132 120526820 656306484 656306484 225098000 225098000 306290698 624190605 624190605 742549264 809616518 809616518 516689118 516689118 944250174 944250174 746933228 746933228 699659109 678672274 475015666 638934672 638934672 596716913 196191609 614351013 614351013 608326152 542163585 380233050 380233050 897984904 897984904 394356017 1058075636 1058075636 887304651 350214112 686253846 686253846 674298817 276027076 275992456 102884120 873179864 951046329 951046329 923090927 998889750 998889750 746787912 746787912 608358592 124858848 614060624 614060624 23106153 222484134 339351306 456005036 456005036 40249089 542144385 542144385 89896840 89897129 716826741 716826741 702767453 733488575 1042875619 1042875619 585447451 883067085 907042908 907042908 952705544 952705544 912307935 513873283 102969624 784008372 784008372 264472600 266812156 266812156 167635244 570166861 570166861 491705490 491705490 604017642 901144016 901144016 705165333 705165333 470292738 543306112 805441665 805441665 879138274 879138274 556608801 736467388 736467388 587691169 568257408 539231888 95987092 269050802 703832884 1047077242 1047077242 687361251 687361251 422393762 661033358 661033358 497607930 779318678 302650144 880805112 881361147 898830443 898830443 956335671 956335671 269982593 355732266 355732266 355535146 354492714 321200136 223416712 251791556 251791556 248794604 111725748 50727248 74876280 74876280 133680736 133680736 73877576 70378248 35825552 35825552 80714368 91887528 95109920 178287412 178287412 148919780 708834052 708834052 804495552 804495552 661923925 612575488 599333705 155773136 237145020 237145020 115528976 247572212 247572212 258315264 259288152 259288152 167982200 251015376 251015376 210836236 235093588 235093588 319973748 603110148 704898238 704898238 996769976 996769976 913075476 759636240 759636240 1029769689 1029769689 560124321 683918085 793861985 793861985 719465932 58071984 58071984 30474848 49602368 142667329 715602261 761735153 787254142 787254142 654291190 654291190 877884370 877884370 897581163 897581163 704253654 691276581 537919873 297121796 433078134 1010569094 1010569094 680742914 763724005 1026560916 1026560916 927076539 874615424 874615424 356545677 279152626 279152626 72240478 164593814 164593814 334304386 334304386 381141858 381141858 291398528 291398528 380330496 381310298 382073920 382073920 462387332 462387332 333893812 270286848 270323202 320728602 354209322 354209322 71377056 71377056 115657176 115657176 670377080 670377080 797737048 797737048 605428233 605428233 737334261 737334261 138177388 138177388 211111384 211111384 152627316 125897276 125897276 133989108 191415476 887718089 887718089 1005420497 1005420497 969097888 289518407 444250656 444250656 323800242 568691156 995614720 995614720 309893815 44176464 44176464 250082648 250082648 140773764 135410952 205320832 205320832 565945705 565945705 717415925 717415925 690046501 690046501 674572357 697642592 697642592 151134817 698825157 698825157 43489552 674546384 717313296 717313296 144445460 150972368 170008532 170008532 171747588 183839700 183839700 164634160 220537404 220537404 141304228 219428380 223944720 223944720 102608408 169397768 169397768 183943200 189231668 189231668 188560592 143067169 707078421 707078421 696072965 427941411 427941411 53674976 988214469 988214469 564107894 860526260 860526260 56905088 329828496 329828496 327183472 276868176 276868176 276646498 31723232 42341344 42341344 320475136 320475136 307631794 319589424 331974914 331974914 331802754 331802754 328700066 276195632 212272388 101175664 138683204 138683204 119556096 85115424 140939556 660708012 660708012 589566092 258422837 1027227442 1027227442 390281521 425264938 425264938 153647668 441135604 478414926 478414926 507981690 507981690 228978350 520306140 520306140 495063150 128327398 50807061 573328406 929412522 929412522 551035845 551035845 362647340 465041498 465041498 437293314 437293314 273305862 241601280 523511822 523511822 493944972 493944972 276931872 280020034 280093506 531173380 531173380 163287416 109252632 109252632 77034509 143523904 761269860 761269860 691826213 800918105 800918105 537677824 691762949 691762949 647748637 182993544 607105730 607105730 572941451 545394753 272761027 583750722 843178131 843178131 841787545 762715053 762715053 375556541 342934410 287847178 103160088 309542914 309542914 561087373 693199780 693199780 671097128 564318561 664797885 678478725 678478725 715313493 715313493 655514553 537240792 538393089 587579528 587579528 72541888 72541888 37332496 51479500 216048428 220825124 220825124 28544384 176009476 176009476 170880516 175561620 851266744 1053780879 1053780879 408706671 408706671 707889690 764451407 764451407 534809383 696288213 696288213 407787149 310378578 310378578 865532992 888136227 888136227 836841687 1066274943 1066274943 1015584675 1015584675 945951799 945951799 683682035 992232613 992232613 536904340 447917010 317761460 407591104 430746912 430746912 158207424 257655464 257655464 507809852 507809852 402913728 409434310 529375700 529375700 432891718 388369684 355200070 524574128 524574128 476432802 389858444 473171722 473171722 245120514 463158903 797318779 797318779 432091270 432091270 843393171 843393171 938740211 938740211 960809127 960809127 1071907932 1071907932 1026361517 642017764 1041325189 1041325189 734187765 583698480 926715911 926715911 506462744 772539831 837026280 872679435 872679435 1069609478 1069609478 528315210 1050048810 1050048810 945118536 1023145935 1023145935 497920257 464162704 464162704 543530548 722992212 722992212 572633206 805528603 875360283 875360283 806882071 806882071 784470108 709119533 619404384 272144652 453588748 453588748 253026676 154157888 129497208 129497208 78078600 78078600 230234976 643181144 733817914 841222419 841222419 823395120 495206351 697637221 910400885 910400885 685245511 685245511 484741176 256175198 798195345 798195345 306243218 43591248 297849458 297849458 168481044 168481044 2097408 2097408 279499828 461508726 461508726 528619220 870974542 870974542 286917939 304747794 754081784 754081784 708177153 1006549015 1006549015 973603863 1041508616 1041508616 933237929 933237929 821110377 821110377 815829536 815829536 554844771 787776880 787776880 800088736 800088736 241442976 117583980 357065728 357065728 898280932 1014383471 1014383471 622392806 941248284 941248284 742421426 742421426 714311871 670320526 651610357 1038540275 1038540275 914753619 857246162 246939750 590613297 730139216 730139216 1053633874 1053633874 745547137 673784064 537093120 181250068 183839232 273457856 273457856 36473986 306463874 306463874 274186372 274186372 46656514 198382928 198382928 15932688 15932688 7872640 50667536 50667536 17041440 51062288 51062288 20261664 53680144 53680144 33555472 33555472 1138706 319856674 319856674 312102226 305902080 311950816 311950816 337242680 339898392 339898392 67346442 3547392 574319104 574319104 572184081 382535632 382535632 836114614 836114614 728190759 1017635622 1017635622 830207907 832522580 832522580 467138786 467138786 365107592 389915160 404089418 472918416 472918416 157231284 196364048 196364048 184959028 253904820 253904820 243359836 109630828 144831280 263631444 289151372 289151372 90703272 218702212 365732520 365732520 314638400 310538386 353537522 353537522 343809930 74849168 49284048 183896400 207936216 207936216 141983888 249745932 249745932 173296516 208005516 208005516 170694768 195154092 195154092 166508096 51783856 77214168 77214168 113891976 113891976 68479864 68479864 76165568 635886889 893863586 985794880 985794880 965009250 965009250 469681746 993153906 993153906 974589367 952771974 898270301 898270301 233232768 691985549 691985549 576972189 705376260 705376260 595014805 783034605 783034605 481945450 839428162 942933663 1047068999 1047068999 1040525647 834935005 508793692 526565760 526565760 67142072 51039696 36309214 531154302 531154302 369759258 926046148 926046148 686981943 201458689 386497248 386497248 122083512 303922748 303922748 342368424 342368424 339491364 419569688 521490594 521490594 512125570 512125570 152269132 116947876 350879174 777143293 777143293 906178587 906178587 844313235 844313235 817045631 594792718 880284280 880284280 1049382360 1049382360 908999846 908999846 491952931 979220002 979220002 381358056 578857312 654759760 654759760 794175849 794175849 744717269 736672681 736672681 818322147 818322147 870106645 870106645 459924134 420850866 946867109 946867109 688757906 688757906 678867840 678867840 289901687 664780274 664780274 438202900 280601042 354703422 354703422 155812282 155812282 114844904 110224832 110224832 77595976 77595976 139987908 603988165 603988165 220540160 797534541 797534541 709552693 139459716 591762485 591762485 178921436 178921436 58079764 130658968 130658968 166421824 255447612 255447612 150156228 458285316 458285316 858858289 858858289 662800593 662800593 665117212 794114716 925337498 925337498 484563086 484563086 428743782 40343760 40343760 138846340 579902288 579902288 346661630 975062418 975062418 113851625 13182080 542189248 542189248 455189260 840164285 914518230 973340823 973340823 537082070 808788499 808788499 648659586 943767646 1057515064 1057515064 797042712 797042712 696518757 872444587 872444587 918369322 918369322 815499488 878213021 878213021 584205315 281417922 191379782 325916052 807591601 807591601 173195568 121439952 50482592 286660656 333877794 333877794 22152736 22152736 38159872 74059664 177605372 177605372 123378048 247602212 247602212 184250580 380775530 380775530 85533472 166333044 189040512 1003802853 1003802853 667828322 762205679 878988763 997275849 997275849 746365773 679232032 738434141 738434141 935772841 935772841 652230883 610271625 290006772 819536404 819536404 713097974 602852385 878245646 878245646 410494754 670961257 670961257 633624945 646466096 646466096 125355960 576209512 827327553 827327553 866784705 869795315 869795315 337182795 359299272 359299272 418315565 917554011 917554011 849912331 849912331 283827234 308886894 471920864 656306484 748715568 748715568 710284540 521965962 521965962 319605810 457778358 457778358 209544742 169389964 201860788 279782568 279782568 95139176 356649192 356649192 341987506 475015666 617161872 776536267 776536267 927843868 927843868 608326152 608326152 542163585 257999292 459854868 893953164 893953164 1011586180 1058075636 1058075636 887304651 770444516 426948002 674298817 674298817 482025736 351927304 102884120 873179864 951046329 951046329 923090927 998889750 998889750 946086799 746787912 647550936 245625884 614060624 614060624 23106153 222484134 339351306 456005036 456005036 166989504 542144385 542144385 89896840 89897129 716826741 716826741 702767453 733488575 1042875619 1042875619 585447451 883067085 907042908 907042908 952705544 952705544 912307935 1006070784 1006070784 784008372 837441186 837441186 769994057 769994057 611183425 570166861 570166861 491705490 491705490 604017642 901144016 901144016 691072244 631837041 1017105986 1017105986 805441665 805441665 811832739 811832739 806688643 511963230 517207950 517207950 539231888 621299457 621299457 237346840 703832884 703832884 147773008 687361251 687361251 465732198 465732198 497607930 497607930 779318678 723604098 997454775 997454775 898830443 898830443 956335671 956335671 17534999 2562368 806133040 855951411 855951411 808193477 808193477 638457134 638457134 757334152 757334152 195068160 55599232 55759536 55759536 63034720 63034720 54974640 35825552 35825552 16921168 16921168 36211972 178287412 178287412 148919780 181674148 731501184 731501184 651543285 612575488 696781632 696781632 130824237 73015864 112904240 112904240 96345960 107744656 258315264 259288152 259288152 167982200 213586844 213586844 109578816 303057012 529842790 529842790 407891126 704898238 704898238 759189796 913075476 913075476 641996843 641996843 1029769689 1029769689 874699560 978895511 978895511 77359313 174002080 174002080 36909840 36909840 46739424 142667329 715602261 761735153 761735153 714460508 654291190 921298504 921298504 877884370 897581163 897581163 84150273 537919873 624479740 624479740 615378249 1010569094 1010569094 291888923 763724005 763724005 688312396 452059280 743145642 743145642 790025077 790025077 924489860 924489860 643039647 613306009 510776923 510776923 390562642 328327794 299342634 352029416 380330496 380330496 211328810 278467830 457379426 457379426 235145244 277809946 371460378 371460378 228267894 52153100 414390560 414390560 623643921 623643921 731656325 731656325 797737048 797737048 605428233 605428233 737334261 737334261 676922693 676922693 211111384 211111384 152627316 125897276 125897276 133989108 191415476 887718089 887718089 1005420497 1005420497 623655234 1034298985 1034298985 762391523 762391523 609916932 995614720 995614720 309893815 137441844 67183372 250082648 250082648 140773764 135410952 205320832 205320832 565945705 565945705 717415925 717415925 688601089 674809636 134426628 253956 319488 460800 925696 925696 473088 473088 50399072 50399072 18738720 354465058 354465058 253448572 253448572 130457128 404548104 492209086 492209086 474285230 474285230 353671820 353671820 712192 709632 561152 31822176 196278912 196278912 31867092 30438144 30438144 19212576 19212576 31660224 292094994 292094994 53674976 50763120 328400448 328400448 318865410 285607986 50602034 558187139 558187139 327183472 550325856 592045233 592045233 188866740 590389908 590389908 589435141 805699840 805699840 319589424 331974914 331974914 331802754 331802754 328700066 276195632 212272388 16067520 138683204 138683204 85115424 85115424 123893888 660708012 660708012 175128593 213911934 1027227442 1027227442 390281521 425264938 425264938 153647668 441135604 478414926 478414926 507981690 507981690 406892200 531479614 531479614 495063150 533149950 533149950 393319744 986018778 986018778 551035845 551035845 362647340 465041498 465041498 1042781995 1042781995 505943824 908723607 908723607 634921995 493944972 664415521 664415521 296289328 61916016 84480000 248153248 248153248 193231012 193231012 92387904 733169192 779878725 779878725 537679872 605252072 692726761 692726761 687846757 47477220 56449337 640437169 924640201 924640201 609748617 609748617 576324096 806015880 845813139 845813139 660624781 660624781 436992277 423614214 919093022 963971810 963971810 326150919 711057813 711057813 693199780 693199780 671097128 543542793 664797885 715510240 715510240 715313493 715313493 655514553 126943320 126943320 109060728 109060728 72541888 72541888 69435976 96498080 96498080 3220224 28544384 144580864 144580864 170880516 170880516 688718821 942897855 942897855 610197129 577551530 979988794 979988794 901330426 901330426 843893873 843893873 731809481 407787149 310378578 310378578 297788747 297788747 77705880 700465260 700465260 757121325 757121325 648020313 648020313 461381730 461381730 318834692 411091014 447917010 447917010 281491650 43124352 198727722 318676686 318676686 293343138 1052777801 1052777801 287440418 940413373 940413373 488786202 464060566 108552536 584957619 584957619 524574128 1026017719 1026017719 389858444 473171722 473171722 245120514 463158903 797318779 797318779 432091270 432091270 843393171 843393171 938740211 938740211 960809127 960809127 1071907932 1071907932 1026361517 642017764 1041325189 1041325189 734187765 583698480 926715911 926715911 506462744 772539831 772539831 412125837 667929191 782855230 782855230 974930507 974930507 776344407 1019141967 1019141967 356636193 356636193 250523120 191753652 543530548 722992212 722992212 239342592 254111748 254111748 213391280 251806748 251806748 252597768 252597768 219990712 213665284 213665284 38871696 38871696 59818608 129497208 129497208 148212396 148212396 230234976 643181144 718604573 830999604 830999604 370819457 495206351 697637221 910400885 910400885 685245511 685245511 484741176 256175198 798195345 798195345 504831740 256929328 297849458 297849458 604937319 625299878 896351555 896351555 696231401 461508726 461508726 528619220 870974542 870974542 286917939 304747794 320869392 320869392 132329512 132329512 912404548 912404548 1041508616 1041508616 822345770 601363235 821110377 922309187 1041237021 1041237021 853651785 787776880 787776880 800088736 800088736 241442976 117583980 344068196 363769191 728292778 728292778 622392806 622392806 354657898 271919874 742421426 742421426 714311871 670320526 651610357 1038540275 1038540275 778327383 343556205 537461761 590613297 730139216 730139216 1053633874 1053633874 673784064 673784064 181250068 181250068 819289858 819289858 705326466 705326466 136856978 423258628 423258628 434314752 434314752 323181492 323181492 185643724 263080968 263080968 789374016 789374016 553830400 553830400 486961482 486961482 242052300 315622098 832320154 832320154 101854763 379626602 379626602 312102226 386925114 386925114 311950816 337242680 337242680 107163802 3281554 3547392 574319104 574319104 572184081 382535632 382535632 836114614 836114614 642223627 730603572 730603572 729809013 295961685 13045122 5510144 22420128 101222400 123393720 123393720 72405720 140714728 157231284 200368312 200368312 184959028 184959028 17826336 60866928 111858776 186700608 186700608 71017792 472117630 472117630 203023852 365732520 365732520 333830536 333830536 323348658 122515466 338953032 338953032 336075264 183896400 207936216 207936216 156424632 249745932 249745932 173296516 208005516 208005516 170694768 195154092 195154092 166508096 51783856 107710872 107710872 113891976 113891976 68479864 68479864 566250113 635886889 893863586 893863586 568666593 965009250 965009250 469681746 993153906 993153906 974589367 952771974 898270301 898270301 209009388 691985549 691985549 611728028 705376260 705376260 595014805 783034605 783034605 743984781 743984781 620784238 685268513 685268513 317801610 819988307 819988307 764533332 954859902 954859902 537396225 830809561 830809561 531154302 578427865 578427865 540548229 781125670 1073557503 1073557503 746753358 746753358 976191154 976191154 164630444 735798421 735798421 575357110 671371293 671371293 608561289 421189158 726229586 726229586 918712493 918712493 570707334 239075484 521590980 521590980 428868198 409344838 409344838 575084691 855386498 855386498 849085893 908999846 908999846 491952931 979220002 979220002 381358056 381358056 654759760 654759760 794175849 794175849 744717269 685892037 179759616 835766488 835766488 870106645 870106645 459924134 537754252 946867109 946867109 688757906 868315280 868315280 975381091 975381091 850601238 954880725 954880725 950550599 950550599 849883797 175251681 570548353 570548353 539493312 566005344 566005344 12583104 138944576 138944576 215288456 215288456 567806076 747912401 747912401 164891364 595789236 637090649 637090649 178921436 215093596 215093596 130658968 996521062 996521062 634409001 580930358 580930358 458285316 858858289 858858289 662800593 662800593 702316707 794114716 794114716 583582386 877926603 877926603 428743782 374326656 270083586 328498433 586072865 586072865 587102977 587102977 68710744 110166672 127477368 542189248 781272684 781272684 674279785 419852387 117706816 705747588 705747588 149359126 6365568 7670272 680913955 1057515064 1057515064 768331276 768331276 833091107 833091107 808687205 857685555 857685555 815499488 878213021 878213021 526976795 52124816 58247088 58247088 130908456 696331089 696331089 619384112 12264064 310907392 310907392 307795922 295278162 52090416 52090416 64357592 177605372 177605372 127145104 247602212 247602212 184250580 184250580 178067632 105325072 166333044 189040512 189040512 421959942 421959942 175379364 430990294 430990294 298451190 232515692 232515692 379865946 620296806 879368656 879368656 447268182 447268182 960397360 960397360 286288981 602852385 602852385 581750097 563793712 123634841 670961257 670961257 633624945 646466096 646466096 125355960 576209512 827327553 827327553 330437568 330437568 323425440 323425440 574633472 576458385 576458385 921490908 991649563 991649563 503582041 283827234 308886894 585677840 585677840 748715568 748715568 710284540 521965962 521965962 319605810 457778358 457778358 209544742 285996074 285996074 222433426 151339162 316800224 316800224 338739536 416375441 908264079 976285769 976285769 776536267 927843868 927843868 1023497898 1023497898 746635785 257999292 1046496584 1046496584 893953164 1011586180 1011586180 741466893 770444516 770444516 724634007 839166836 839166836 482025736 351927304 13638464 15729600 15729600 517767434 738248784 738248784 946086799 946086799 647550936 707806469 707806469 771842405 925509413 925509413 21025962 1037045154 1037045154 543425134 166989504 118564400 118564400 69109760 20922144 68238600 68238600 208607616 208607616 209530912 411050906 437125328 784484569 784484569 593829297 606915840 606915840 143127048 1006070784 1006070784 504771932 837441186 993586516 1010777003 1010777003 611183425 1056691221 1056691221 490741560 483107358 483107358 259151158 403608202 403608202 632351984 1017105986 1017105986 613575076 633755850 811832739 811832739 806688643 511963230 592618143 1066875519 1066875519 998557815 998557815 399888245 721175770 1035209583 1035209583 1018579259 458017974 465732198 465732198 421404198 975612674 975612674 723604098 997454775 997454775 870019651 852751059 773744852 52734207 10936320 2562368 806133040 855951411 1015030824 1015030824 808193477 643561113 638457134 757334152 757334152 195068160 191569284 191569284 555731893 555731893 563214977 563214977 25133664 713726629 713726629 139479188 583909665 583909665 8462400 16654272 16654272 731501184 731501184 770041021 770041021 697703013 696781632 130824237 730857437 730857437 112904240 202355717 202355717 266045656 650358908 778979824 778979824 215090036 751583001 751583001 303057012 529842790 529842790 631761745 631761745 225851109 759189796 759189796 642912921 436670620 120229306 480872864 500034798 874699560 978895511 978895511 143135380 174765636 174765636 36909840 36909840 5979536 5100672 5100672 82191940 82191940 431244792 431244792 921298504 921298504 659587162 659587162 913378324 1014837135 1014837135 624479740 624479740 879018177 879018177 914063708 985970522 985970522 186882492 452059280 452059280 142717216 173160453 790025077 790025077 924489860 924489860 643039647 613306009 510776923 510776923 390562642 336644224 341229728 352029416 352029416 67655384 202375912 240263696 240263696 235145244 235145244 277809946 371460378 371460378 228267894 203192412 414390560 414390560 623643921 623643921 731656325 731656325 667080061 580608341 630565732 630565732 669799116 669799116 676922693 676922693 85334568 230949352 230949352 13952712 12863868 3269376 3269376 79743752 378851154 932994141 932994141 623655234 1034298985 1034298985 762391523 762391523 609916932 307166114 185733684 185733684 717881667 961544631 961544631 998895962 998895962 397284460 32989184 32989184 47155600 86817568 86817568 155266176 155266176 140372516 134291460 134291460 554091520 688334880 688334880 151010020 53347696 673857968 726452080 726452080 693764293 731841058 944389808 944389808 253448572 130457128 404548104 492209086 492209086 474285230 474285230 751230324 751230324 671663109 672516741 675931269 675931269 196278912 787943284 791073572 791073572 58843952 22444336 54578320 54578320 29938144 27992128 19535136 25826656 25826656 17437728 619552 135095300 269018112 558187139 558187139 291005296 550325856 592045233 592045233 188866740 590389908 590389908 589435141 805699840 805699840 309100720 51200272 51200272 57412400 57412400 49899264 49899264 56100032 56100032 35690512 35690512 67496448 87027080 87027080 101765944 101765944 92284984 213911934 299966946 309002706 309002706 73735680 85664780 140204368 315181208 340092290 477720130 484829646 484829646 406892200 531479614 531479614 283357524 533149950 533149950 407191718 986018778 986018778 543233262 604785728 612417609 612417609 612417609 1042781995 1042781995 505943824 908723607 908723607 634921995 497730482 664415521 664415521 296289328 9437250 139052292 248153248 248153248 697772196 697772196 707942433 733169192 779878725 779878725 685982148 605252072 692726761 692726761 687846757 47477220 63512852 640437169 924640201 924640201 609748617 620957388 620957388 806015880 845813139 845813139 660624781 660624781 436992277 424026975 919093022 963971810 963971810 386245260 711057813 711057813 1011910157 1011910157 1057206463 1057206463 717486401 789910152 789910152 1063274504 1063274504 608223369 600450792 668636297 668636297 643502376 78860456 80864288 80864288 345071822 345071822 226722500 350849994 484229484 484229484 498968676 498968676 688718821 942897855 942897855 610197129 577551530 979988794 979988794 975171406 901330426 843893873 1018710052 1018710052 532998855 18355218 275006465 275006465 353444394 394129775 700465260 700465260 757121325 757121325 648020313 648020313 536870974 570763281 721883521 721883521 593629204 310403216 281141442 46433664 198727722 318676686 318676686 293343138 1052777801 1052777801 287440418 940413373 940413373 488786202 157620444 264241404 584957619 584957619 303088146 1026017719 1026017719 514967926 514967926 237579586 439168278 439168278 320155468 348662946 348662946 398983298 398983298 130030120 130030120 113646288 91226528 493945224 493945224 356829354 356829354 354230568 331367688 80475336 826612298 826612298 625876137 1016092541 1016092541 710279334 710279334 552453342 667929191 931400910 956350503 974930507 974930507 547374147 1019141967 1019141967 356636193 356636193 250523120 191753652 262715040 262715040 101321328 239342592 239342592 258101736 258101736 251806748 251806748 241620240 241620240 232820808 246490164 246490164 204617292 241275216 241275216 175112700 88418576 148212396 148212396 223402820 567229504 567229504 830999604 830999604 550569072 59253441 555856192 706875664 706875664 308827137 170431618 126428280 75846160 22900449 564010593 575687820 575687820 239652892 151143572 604937319 829042028 1025955941 1025955941 696231401 431934551 591675599 591675599 495732394 537706726 843761792 843761792 869680999 869680999 981604259 981604259 912404548 912404548 178532747 561383634 867308403 867308403 333191393 922309187 1041237021 1041237021 853651785 347824409 639696904 704788760 704788760 150994980 92700744 314933440 363769191 728292778 728292778 361213634 558118979 753481866 966264423 966264423 872564960 872564960 599785713 599785713 580028928 778327383 778327383 537678832 537678832 537461761 537404417 537404417 326747348 673809362 713080917 713080917 75547776 446194434 988617792 988617792 705326466 705326466 439621634 439621634 423258628 434314752 434314752 323181492 323181492 190989732 268880833 999477879 999477879 826977426 848961107 848961107 592754386 961871574 961871574 555769907 832320154 832320154 646770794 537417816 396493392 355603242 386925114 386925114 82053672 124833672 124833672 339964698 339964698 293287538 297060738 297060738 387157568 426887736 426887736 460853034 1011849662 1011849662 730603572 730603572 729809013 295961685 13045122 5510144 22420128 101222400 123393720 123393720 72405720 140714728 140714728 200368312 200368312 88154844 17826336 17826336 60866928 111858776 186700608 186700608 441488580 472117630 472117630 447223630 447223630 679028613 679028613 333830536 323348658 122515466 338953032 834929207 834929207 741002744 871138874 871138874 156424632 512862830 512862830 528494768 528494768 89173152 89173152 90103464 550187524 627811236 627811236 128109228 656761100 656761100 623903529 675527957 749487336 749487336 566250113 791940508 791940508 713557077 194720289 1171968 5366400 12946048 610271428 676072516 676072516 581436677 581436677 780928381 780928381 611728028 611728028 170982537 54018320 125313973 724627093 724627093 743984781 802501452 802501452 685268513 685268513 687025412 819988307 819988307 764533332 954859902 954859902 537396225 830809561 830809561 385616328 578427865 578427865 540548229 781125670 1073557503 1073557503 746753358 947202951 1052869945 1052869945 710914089 735798421 735798421 575357110 671371293 671371293 608561289 421189158 726229586 726229586 918712493 918712493 728944850 728944850 521590980 521590980 882167841 882167841 824367643 302125138 301989906 302402116 302402116 823300868 823300868 228989520 228989520 95750720 78828440 78828440 120168592 120168592 114943704 107261760 45465808 46197584 105095824 835766488 835766488 113525355 201709708 201709708 537754252 542996544 684647621 886174301 886174301 868315280 975381091 975381091 850601238 954880725 954880725 950550599 950550599 849883797 175251681 570548353 570548353 539493312 566005344 566005344 235012288 235012288 680856201 680856201 215288456 567806076 747912401 747912401 164891364 693286659 693286659 637090649 740368781 841221060 841221060 550638401 996521062 996521062 653838297 889210493 889210493 489211136 338690874 338690874 749258392 749258392 720372693 702316707 640247164 583582386 877926603 877926603 374326656 630401224 630401224 364922219 586072865 586072865 587102977 587102977 599057170 599057170 543162689 333496753 781272684 781272684 674279785 1019426895 1019426895 753135843 705747588 882129434 882129434 670614840 1032342636 1032342636 384371488 768331276 768331276 833091107 833091107 808687205 857685555 866788146 878746691 878746691 1031048576 1031048576 990507399 990507399 572475256 375285253 696331089 696331089 619384112 314581128 406324806 406324806 307795922 295278162 244901064 486557036 486557036 339788088 218136616 127145104 81985752 182849664 182849664 178522452 178067632 165352628 165352628 137534512 137534512 421959942 421959942 147323076 430990294 430990294 298451190 107386872 107386872 379865946 887151652 887151652 879368656 808026456 447268182 960397360 960397360 286288981 278398530 345801162 381312664 381312664 72896896 127420968 127420968 60692824 565170748 635483873 635483873 253952993 556827440 556827440 863671382 863671382 848876929 332913706 574633472 576458385 576458385 921490908 991649563 991649563 942793479 942793479 723522563 589035057 585677840 552073665 267392472 267392472 321095824 321095824 183929334 136304260 81268458 81268458 285996074 285996074 222433426 391205024 391205024 316800224 338739536 416375441 908264079 976285769 976285769 454197401 915239670 915239670 1023497898 1023497898 746635785 157419750 1046496584 1046496584 606094101 1062262552 1062262552 741466893 741466893 718624154 724634007 839166836 839166836 101453830 76764544 69340352 77369280 170727240 170960644 738248784 738248784 708846484 708846484 179844628 707806469 821150672 962753886 962753886 925509413 110429122 1037045154 1037045154 824313088 126900618 118564400 118564400 215146308 215146308 164845028 165808484 165808484 138814208 172894724 172894724 135601300 784484569 784484569 593829297 606915840 606915840 144252056 723897692 723897692 226105080 231740864 1046816292 1046816292 1010777003 604449344 1056691221 1056691221 464626370 464626370 246096152 246096152 171017544 165939620 632351984 632351984 613575076 613575076 626150304 626150304 538397440 538397440 309051331 592618143 1066875519 1066875519 998557815 998557815 934814737 934814737 1035209583 1035209583 1018579259 981942333 397444618 805966632 805966632 975612674 975612674 706826754 976483095 976483095 870019651 852751059 707191841 707191841 614670755 755134798 875769896 875769896 1015030824 1015030824 643561113 643561113 21738425 130486452 130486452 53227529 191569284 191569284 555731893 555731893 563214977 688322704 688322704 713726629 713726629 139479188 583909665 583909665 189167941 189167941 205713413 205713413 691591844 770041021 770041021 697703013 538321732 538321732 730857437 730857437 84097513 202355717 202355717 266045656 650358908 778979824 778979824 215090036 751583001 751583001 831555772 831555772 477530814 631761745 1066578616 1066578616 911213211 642912921 642912921 587356182 587356182 418035909 577055121 910174941 910174941 1041236549 1041236549 547956376 174765636 16616640 6965584 35651856 49677120 49677120 52202272 52202272 316971824 561889651 612673536 633389289 853562521 853562521 913378324 1014837135 1014837135 646720714 646720714 879018177 879018177 914063708 985970522 985970522 37410576 16521232 120063288 120063288 86019480 69255432 69255432 69224512 418808086 418808086 299102936 347301936 393339856 393591674 393591674 371356106 386398266 386398266 311412018 202375912 302125986 302125986 212581644 510291594 510291594 50331600 169324488 203192412 203192412 16831808 28086400 58855496 260731184 715768316 715768316 667080061 580608341 630565732 630565732 243986984 243986984 236036008 75571272 75571272 230949352 230949352 265150804 265150804 170962612 170962612 132687668 260751764 260751764 228725100 202957440 202957440 302687384 947363192 947363192 385841077 356873904 134247437 150669517 717881667 961544631 961544631 998895962 998895962 820171203 877546824 877546824 663667153 663667153 645094353 583512085 695223076 695223076 134291460 134291460 554091520 688334880 688334880 151010020 181570048 673857968 726452080 726452080 693764293 731841058 944389808 1051928468 1051928468 268171260 642049692 642049692 280138579 133096006 133096006 751230324 751230324 738584589 738584589 743754381 743754381 503592659 787943284 791073572 791073572 58843952 22444336 54578320 67110040 67110040 27992128 19535136 25826656 25826656 17437728 619552 135095300 269018112 269018112 134489094 0 18981408 18981408 3195648 3195648 17916192 17916192 0 308281366 410026896 410026896 302285072 302285072 57412400 57412400 49899264 75592128 75592128 70314816 106435480 342559765 839981351 857735699 857735699 554054760 932722362 932722362 543098401 176296020 432542348 432542348 828026793 937530081 937530081 694804406 315181208 477720130 484829646 484829646 270680320 2134274 8192 283357524 440524950 440524950 407191718 742863678 742863678 650117337 630140954 612417609 612417609 612417609 446472861 235119806 235119806 352580284 532792236 532792236 497730482 306037246 457187488 457187488 437814358 176610036 176610036 110057148 697772196 697772196 732659265 732659265 736321025 736321025 685982148 548469029 540462017 540462017 26456864 41132768 63512852 192708720 192708720 54077296 224130732 620957388 620957388 723343202 984086871 984086871 479187206 852012341 852012341 424026975 1038451296 1038451296 940640387 386245260 536944824 658505913 1011910157 1011910157 1057206463 1057206463 717486401 789910152 789910152 1063274504 1063274504 647194948 647194948 668636297 668636297 649299513 664148601 664148601 431691454 999380258 999380258 744150669 350849994 484229484 640682245 640682245 554889279 554889279 550874189 598057248 598057248 543799960 543799960 975171406 975171406 380241867 27601282 1018710052 1018710052 532998855 18355218 275006465 275006465 353444394 394129775 444602182 448466968 448466968 444794806 444794806 536870974 536870974 570763281 721883521 721883521 593629204 310403216 281141442 181441800 227016884 245548396 245548396 203984952 169869588 140904448 140904448 493968756 493968756 378719094 157620444 264241404 461726234 461726234 197444232 338413686 826049944 826049944 1041568519 1041568519 927340714 1045758718 1045758718 667172312 669585632 669585632 889666683 889666683 205593157 148111602 148111602 493945224 493945224 356829354 356829354 215551608 215551608 10300992 826612298 826612298 625876137 1016092541 1016092541 637669401 637669401 552453342 552453342 931400910 956350503 982360348 982360348 237071447 446717510 446717510 285494016 211802952 127575636 93846120 96818772 257949372 257949372 232697380 215484600 258101736 258101736 199492944 239634528 239634528 233119940 239600756 246490164 246490164 204617292 241275216 241275216 175112700 88435440 83935272 53313816 152772081 572570817 572570817 182791504 550569072 550569072 546972549 916689466 916689466 663174781 888303039 888303039 265901932 990210811 990210811 564010593 575687820 575687820 239652892 151143572 207083424 829042028 1025955941 1025955941 694607184 637946918 637946918 949667825 949667825 537706726 843761792 843761792 907541728 907541728 981604259 981604259 879206643 879206643 362856653 805381225 867308403 867308403 543756994 817575747 817575747 282207617 161093984 205262604 205262604 201672772 361605437 984397063 1009445211 1009445211 667081468 571496489 571496489 745896066 745896066 753481866 966264423 966264423 872564960 872564960 867731583 704676591 645925437 859021726 859021726 909918261 1007224072 1007224072 740820689 740820689 326747348 673809362 713080917 713080917 582559569 582559569 988617792 988617792 437669589 306204944 439621634 439621634 151415174 164113216 164113216 25937664 43082388 190989732 268880833 999477879 999477879 826977426 848961107 848961107 592754386 961871574 961871574 555769907 364559440 646770794 646770794 537417816 396493392 355603242 118015032 118015032 397165932 397165932 124833672 339964698 339964698 412829366 478825446 1066196779 1066196779 465100050 426887736 557005994 1011849662 1011849662 987625559 987625559 694018119 271855141 101877526 94240992 94240992 111581720 268044568 268044568 124829960 196592584 225459072 225459072 203522792 167845908 35787024 35787024 12093536 42649168 42649168 166245408 441488580 441488580 378582665 447223630 447223630 679028613 679028613 75038733 717760000 717760000 504026142 834929207 834929207 741002744 871138874 871138874 306660972 512862830 512862830 528494768 528494768 408199998 158284072 224804516 550187524 627811236 627811236 128109228 656761100 656761100 790006880 790006880 781899357 749487336 722942133 791940508 791940508 713557077 539201285 539201285 162130245 12946048 610271428 676072516 676072516 581436677 581436677 780928381 780928381 604602880 604602880 84476480 54018320 54018320 592798080 592798080 654928953 802501452 802501452 237902612 233023132 687025412 687025412 636043366 636043366 267642890 274603650 274603650 341712522 341712522 234930204 384711632 384711632 287051298 287051298 274278560 131951464 656661182 947202951 1052869945 1052869945 710914089 714605255 852356307 852356307 651814997 168912980 819542198 819542198 876766765 876766765 851830995 730107992 728944850 728944850 372482759 338115272 882167841 882167841 824367643 917510494 917510494 302402116 302402116 823300868 823300868 809374285 879534234 879534234 377346728 377346728 42652744 114943704 181329097 744495253 744495253 688936301 225812640 225812640 48262768 379727160 475777550 475777550 276565890 542996544 684647621 886174301 886174301 1037673694 1037673694 736124964 394934639 71750664 1098240 673247408 977472758 977472758 193936609 428742658 428742658 141969600 141969600 418468166 418468166 345000332 680856201 680856201 214500736 214500736 193114308 600130808 600130808 693286659 693286659 677246084 740368781 841221060 841221060 550638401 970721854 970721854 653838297 1000375870 1000375870 489211136 654833757 654833757 749258392 749258392 720372693 640247164 640247164 269647872 745710600 745710600 336180235 630401224 630401224 364922219 120916712 111681760 29970656 551581827 599057170 599057170 543162689 333496753 479338518 479338518 383947000 1019426895 1019426895 753135843 685955732 882129434 882129434 670614840 1032342636 1032342636 384371488 54864048 54864048 1059322063 1059322063 507999036 336697938 882231369 882231369 878746691 1031048576 1031048576 990507399 990507399 572475256 557010192 377497153 352770090 273588438 314581128 406324806 406324806 59319408 244901064 244901064 486557036 486557036 339788088 218136616 112014256 173998972 182849664 182849664 248589584 248589584 184400028 189588912 189588912 169137792 169137792 187697540 187697540 147852148 182192192 182192192 165588132 165588132 160286336 887151652 887151652 808026456 808026456 547598754 334448704 334448704 314886354 279825874 76039752 76039752 72896896 72896896 127420968 127420968 134864584 565170748 635483873 635483873 253952993 465057713 465057713 863671382 863671382 848876929 854390712 854390712 389705050 850181051 859256622 859256622 1016248453 1016248453 999416439 774017981 981233457 981233457 878126595 712763149 671870728 321095824 321095824 301467618 301467618 297487138 293075874 100368834 18535848 67198976 391205024 391205024 289704864 289704864 268435584 268435584 684769372 684769372 224084053 394338904 394338904 827859974 827859974 616842628 616842628 824202700 824202700 606094101 1062262552 1062262552 673194018 557965473 411798281 411798281 378623798 101453830 101453830 69340352 238952224 238952224 281690827 281690827 795878336 795878336 708846484 708846484 179844628 179844628 821150672 962753886 962753886 374436798 110429122 584751592 824313088 824313088 126900618 52531984 70953728 215146308 215146308 164845028 165808484 165808484 60169140 172894724 172894724 135601300 135601300 88595752 88595752 71224960 753311000 753311000 107876813 101262360 226105080 226105080 1046816292 1046816292 1038404079 861045360 861045360 680696543 955177027 955177027 572806344 205461677 611769289 611769289 158259428 159673901 159673901 624955688 750652449 750652449 619450308 544228164 193569283 98888297 467874294 467874294 430065024 461390093 934814737 934814737 627664550 415681462 981942333 981942333 833887681 833887681 805966632 775138288 484845430 706826754 976483095 1013482920 1013482920 214452292 707191841 707191841 614670755 940212388 940212388 875769896 1009024332 1009024332 677214506 58192893 790887128 790887128 688330904 54604032 53687088 53687088 76953704 746730176 746730176 688322704 688322704 66459872 66459872 71352336 71352336 149558900 189167941 189167941 205713413 776858632 776858632 636628824 636628824 632469641 569453937 538321732 145824257 644498968 644498968 210768465 184553992 143840624 563237572 563237572 231736044 231736044 545855381 736101488 831555772 831555772 554939360 403539464 1066578616 1066578616 911213211 423730818 1041415912 1041415912 994784439 423659568 577055121 910174941 910174941 1041236549 1041236549 547956376 240886464 240886464 216460032 245317212 245317212 252916284 265403100 265403100 316971824 561889651 612673536 633389289 853562521 853562521 829035939 357594842 367225890 646720714 646720714 838453432 838453432 533553488 533553488 45325864 37410576 16521232 120063288 120063288 322331528 390592698 390592698 74554162 418808086 549790132 959834909 959834909 527638003 393591674 393591674 371356106 386398266 386398266 311412018 172298164 302125986 302125986 235767096 510291594 510291594 133569824 131192096 131192096 13166240 16831808 61650000 61650000 58828818 302564370 1005285610 1005285610 876675235 876675235 33431520 809126114 809126114 536920065 235290761 276091054 276091054 256946064 265150804 265150804 361760174 361760174 264947152 260751764 260751764 228725100 412123460 412123460 302687384 947363192 947363192 822848057 822848057 895890314 895890314 447814631 423040668 423040668 626568459 813816354 820171203 877546824 877546824 663667153 663667153 645094353 583512085 695223076 695223076 1194496 42197760 714631488 714631488 571090240 689193540 717871812 717871812 542249573 542249573 541200424 624955561 783489995 1051928468 1051928468 338965374 642049692 872546594 872546594 888216693 888216693 873390882 873390882 738584589 738584589 743754381 743754381 503592659 351236432 407445644 407445644 492036231 743473923 743473923 623977257 927141305 927141305 690359582 805550356 805550356 807569430 810297618 810297618 410307462 826050817 826050817 572121888 572121888 811952144 814500033 814500033 949302549 949302549 976021524 976021524 543981830 410026896 302285072 302285072 9131712 72104056 72104056 75592128 75592128 70314816 106435480 342559765 839981351 857735699 857735699 554054760 932722362 932722362 543098401 412690006 537800258 806632981 828026793 937530081 937530081 694804406 203804926 203804926 423225966 423225966 404607018 506508638 506508638 331409460 489793966 489793966 350970196 742863678 742863678 700450618 700450618 224658694 100370606 273695328 273695328 119488056 336313656 336313656 108481682 506791140 506791140 486542882 457187488 457187488 440192790 178574084 367424270 367424270 971026400 971026400 992083472 1002787731 1002787731 736321025 962836710 962836710 893522091 893522091 139616808 416047168 470021610 527142115 527142115 444008823 456989055 997657176 997657176 723343202 984086871 984086871 828539105 852012341 852012341 293939298 1038451296 1038451296 558105216 871688707 871688707 658505913 658505913 1007206598 1007206598 470197133 706225808 706225808 675356805 135528597 673125376 673125376 781641024 781641024 775896861 649299513 664148601 664148601 565707056 999380258 999380258 744150669 143766729 75628548 640682245 640682245 554889279 554889279 550874189 598057248 993781944 993781944 436248335 553787050 556083489 556083489 360049578 360049578 390368576 390368576 296017464 52599858 277341600 302149712 302149712 444602182 448466968 448466968 444794806 444794806 425722278 424056462 440937910 440937910 428682342 428682342 315148768 273814146 459571684 467714550 467714550 327172484 529130622 749250397 749250397 381171642 684993999 684993999 378719094 333871232 556976436 556976436 321073458 973107682 973107682 826049944 848898828 1041568519 1041568519 927340714 1045758718 1045758718 667172312 889651704 889651704 889666683 889666683 866699543 866699543 442508198 442508198 355475724 250980818 204858124 201935432 201935432 125306808 295033960 295033960 540534524 741342477 741342477 637669401 637669401 550142172 600335547 600335547 461540680 982360348 982360348 708219735 823389235 823389235 507182689 507182689 238232992 238232992 121710944 257949372 257949372 232697380 215484600 134779280 241833372 241833372 239634528 239634528 233119940 239600756 253314128 253314128 219275820 20707104 75211120 90039128 90039128 83935272 53313816 86321448 572570817 572570817 149422180 434472736 434472736 546972549 916689466 916689466 663174781 888303039 888303039 265901932 990210811 990210811 752874528 231459872 231459872 547357760 547949889 547949889 163055265 173398704 260679930 836689574 836689574 637946918 949667825 949667825 462821009 462821009 295406265 907541728 907541728 737115234 812522948 812522948 362856653 362856653 805381225 805381225 86457824 543756994 817575747 817575747 691102632 547430721 103289625 550536440 718566396 718566396 984397063 1009445211 1009445211 667081468 721953138 721953138 745896066 745896066 847386224 847386224 825935208 825935208 867731583 867731583 704682580 704682580 941740815 941740815 909918261 1007224072 1007224072 740820689 740820689 898155716 898155716 580912385 639182609 916989459 916989459 272179731 821592064 821592064 811454016 272123648 273943170 273943170 414984198 414984198 353078248 353078248 123499664 56802064 34550176 34933248 34933248 264192 818259328 818259328 816631107 324557716 287450370 305905968 352846890 352846890 371250448 371250448 329417282 277893490 118015032 397165932 397165932 1061947600 1061947600 150021746 412829366 478825446 1066196779 1066196779 983822679 369098778 557005994 557005994 760207620 987625559 1049176765 1049439587 1049439587 833104864 217863512 217863512 287624234 341084776 341084776 365955592 365955592 225459072 225459072 203522792 167845908 98608112 82909768 50491616 75614600 75614600 166245408 166245408 370237082 370237082 311035704 531166486 531166486 404997918 318513810 963654224 963654224 504026142 973095454 973095454 605078025 246562902 306660972 306660972 235544670 305305600 437606928 437606928 408199998 158284072 224804516 224804516 203899272 5765760 84748880 84909656 84909656 790006880 790006880 781899357 722942133 722942133 552979745 552979745 556592065 556592065 539201285 162130245 540041568 540041568 539033605 236063072 252893796 782524176 782524176 616455781 544474404 648807993 648807993 635464082 635464082 592798080 592798080 592495281 592495281 17376256 9178176 25232640 27862368 409493744 636043366 636043366 722211380 722211380 559558033 809841027 809841027 530735446 665558823 665558823 649156847 802461064 802461064 544463520 131951464 285773065 543585512 543585512 550022272 714605255 852356307 852356307 651814997 939709461 982045701 982045701 940339207 876766765 851830995 499165245 383597986 868265704 868265704 799260749 799260749 834691237 989929527 989929527 917510494 404175366 243602010 395811124 1016278878 1016278878 879534234 879534234 400552874 400552874 287442048 105422040 181329097 744495253 744495253 688936301 225812640 225812640 285070472 976751410 976751410 475777550 453788292 453788292 517509308 517509308 516515567 1037673694 1037673694 845490579 289039623 890552373 890552373 522194211 1059631220 1059631220 193936609 728862917 728862917 952598592 977791686 977791686 418468166 345000332 485346512 485346512 214500736 214500736 134480116 600130808 793036989 793036989 677246084 677246084 744827277 744827277 250364313 72139840 970721854 970721854 349227213 1000375870 1000375870 402657707 654833757 706134115 706134115 429300822 429300822 101462786 809098848 809098848 958016242 958016242 603017981 386302229 975176626 975176626 691743202 279263778 99643496 354859466 805404688 805404688 50375272 110488152 302311496 302311496 269797890 113455320 113455320 278690245 991365911 991365911 898785175 790297656 790297656 761924357 737567196 354927056 354927056 1059322063 1059322063 507999036 637714800 882231369 882231369 646521945 646521945 363548424 609652901 722369356 722369356 956148965 956148965 938043824 938043824 42797088 42806352 44641648 59319408 86008912 86008912 112754792 112754792 217199852 217199852 198390516 195362640 195362640 81860224 248589584 248589584 184400028 189588912 189588912 169137792 269796354 269796354 187697540 416027346 422188550 558387888 840049072 840049072 950024800 950024800 448736147 944236676 944236676 825498455 952629655 952629655 709314711 676383248 9014336 40621456 40621456 71496064 79245448 81475272 143787808 143787808 64569120 64569120 32992672 281678032 302515218 302515218 318429138 318429138 854390712 854390712 127945568 850181051 859256622 859256622 1016248453 1016248453 999416439 774017981 981233457 981233457 878126595 712763149 671870728 134581760 273297568 403605124 403605124 297487138 293075874 137109644 137109644 136914180 338266896 350871746 350871746 268481938 235626759 1013507907 1013507907 775479836 772719188 772719188 882376839 882376839 827859974 753855424 616842628 824202700 824202700 620997764 408994182 673194018 673194018 557965473 6414720 39029104 301757184 301757184 34724498 7916288 238952224 399397526 948198990 948198990 795878336 795878336 745652612 745652612 605102601 156590608 402053296 402053296 364013576 353622626 355652394 355652394 316690114 341628994 341628994 103850352 103850352 70953728 67437824 17664800 6892800 23403808 40777104 40777104 37299984 37299984 578288529 578288529 88595752 71224960 753311000 753311000 664344773 664344773 254747648 752042224 936406885 1038404079 1038404079 861045360 861045360 680696543 955177027 955177027 572806344 205461677 758607116 758607116 226255401 703926336 703926336 675756389 750652449 750652449 619450308 544228164 193569283 885366288 885366288 467874294 961063143 1049027205 1049027205 731273635 731273635 539136005 940160132 940160132 833887681 833887681 533140086 533140086 462441454 78952221 714079317 1013482920 1013482920 485501470 485501470 426520168 426520168 940212388 940212388 287313185 1009024332 1009024332 677214506 654600746 790887128 790887128 688330904 121764049 239462556 239462556 548538357 746730176 746730176 712121153 712121153 419696261 481172814 481172814 276899914 276899914 149558900 159721572 506632307 776858632 1013190817 1046614932 1046614932 632469641 569453937 658152617 658152617 644498968 644498968 297005640 754638000 754638000 617661045 563237572 231736044 615403188 687234957 687234957 466876387 554939360 554939360 319848528 39129728 39129728 624574220 685978053 1041415912 1041415912 994784439 423659568 637930570 637930570 248124429 109581504 137871680 184219216 240886464 240886464 216460032 245317212 245317212 252916284 265403100 265403100 236317212 468030594 468030594 217978252 426690028 462557814 462557814 357594842 367225890 445244170 692182146 706124806 706124806 371532618 371532618 145318001 615374170 615374170 282076761 282076761 322331528 390592698 739395792 739395792 1072900356 1072900356 959834909 959834909 527638003 79433506 126196560 126196560 98963848 98963848 135075176 172298164 172298164 68432264 235767096 235767096 222779096 222779096 131192096 281623786 281623786 35704224 67633608 80249892 80249892 302564370 1005285610 1005285610 876675235 876675235 499522217 809126114 809126114 779803134 779803134 644111536 644111536 650906841 767870004 767870004 361760174 361760174 264947152 130716916 77210816 149979716 412123460 412123460 469894813 469894813 807478160 822848057 822848057 895890314 895890314 447814631 423040668 423040668 419343824 419343824 113061720 113061720 141312968 141312968 244095676 742181164 742181164 579227797 134617092 134617092 69739800 714631488 714631488 571090240 689193540 717871812 717871812 193460368 193460368 541200424 624955561 783489995 783489995 826302368 826302368 544360266 872546594 872546594 888216693 888216693 873390882 873390882 608453265 440442756 474079374 983140106 983140106 853541331 818479695 641032326 492036231 743473923 743473923 623977257 927141305 927141305 809144756 809144756 805550356 807569430 810297618 810297618 410307462 826050817 826050817 690694452 690694452 811952144 814500033 814500033 949302549 949302549 976021524 976021524 543981830 39060224 34606736 108360808 108360808 92515736 92515736 149622732 149622732 80615192 248582916 248582916 8392768 0 17039936 596978400 596978400 797313604 797313604 412690006 537800258 806632981 806632981 169150983 329887462 329887462 203804926 203804926 423225966 423225966 404607018 506508638 506508638 331409460 489793966 489793966 409184614 921065696 1025507631 1025507631 700450618 553387931 423497898 740464489 740464489 395102858 336313656 336313656 240963228 506791140 506791140 486542882 454516700 440192790 440192790 178574084 367424270 367424270 971026400 971026400 992083472 1002787731 1002787731 528672925 962836710 962836710 893522091 893522091 818020426 416047168 470021610 814565652 814565652 857347635 1036568243 1036568243 997657176 270213749 151756912 828539105 828539105 580391688 504384452 504384452 237846584 830610104 830610104 871688707 871688707 546814511 545341494 930216015 930216015 1006768143 1006768143 706225808 675356805 444405392 673125376 673125376 781641024 781641024 775896861 180351601 110366560 565707056 565707056 729953552 729953552 550663716 152801985 346441728 639084812 1049625183 1049625183 414421602 469811214 545387312 993781944 993781944 592933814 946524917 946524917 556083489 462031414 360049578 352939330 352939330 310902864 310902864 303613458 302149712 302149712 46370816 46260432 36177168 371467946 371467946 354105602 384252378 384252378 318768592 318768592 315148768 315148768 137659488 459571684 467714550 467714550 327172484 529130622 749250397 749250397 381171642 684993999 684993999 333871232 333871232 556976436 556976436 321073458 973107682 973107682 325091701 1014776378 1014776378 943001348 943001348 439168263 39332742 0 889651704 889651704 482683086 554079720 866699543 866699543 650496745 650496745 1024647428 1024647428 540203777 537084996 762670485 762670485 901573130 901573130 824636262 889641003 889641003 623565109 623565109 648077313 648077313 780853306 780853306 667735168 363122112 708219735 823389235 823389235 507182689 507182689 238232992 238232992 121710944 121710944 118269136 118269136 71467048 134779280 241833372 780150805 780150805 208561548 873269517 873269517 1063758055 1063758055 881141835 617914266 1022017780 1022017780 881537747 881537747 574577424 284743112 115421048 115421048 113271808 110234752 113196888 236105920 248636124 248636124 258805460 258805460 1046314758 1046314758 610067072 818280606 818280606 643397840 643397840 981819790 981819790 713976081 482221141 275402240 510990868 836689574 836689574 479642122 143005764 287459458 287459458 9998848 9998848 277922370 277922370 671141344 671141344 801178176 801178176 119332016 670772025 670772025 123405408 124590840 216315240 691102632 691102632 547430721 103289625 550536440 718566396 718566396 55186608 55186608 288625120 318976050 721953138 721953138 12335634 41368464 847386224 847386224 329847395 321291018 510871821 510871821 876743202 876743202 941740815 941740815 685478494 983820236 983820236 951590979 951590979 898155716 898155716 580912385 639182609 916989459 916989459 272179731 821592064 821592064 811454016 272123648 273943170 273943170 414984198 414984198 353078248 353078248 153114916 285230961 1069025151 1069025151 900597627 900597627 818259328 818259328 816631107 1048478451 1048478451 625497992 909821457 909821457 553415928 360456968 360456968 394264698 394264698 116147552 79711280 1061947600 1061947600 1015027040 1026168111 1040586807 1040586807 998738208 983822679 253106748 558570652 558570652 1040453904 1040453904 1049176765 1049439587 1049439587 833104864 218103852 217863512 287624234 341084776 341084776 365955592 365955592 105955992 96670552 96670552 98608112 98608112 82909768 50491616 125619360 125619360 31383264 85006272 370237082 370237082 311035704 531166486 606382617 606382617 318513810 963654224 963654224 411613202 973095454 973095454 605078025 923876964 923876964 579403803 826960783 826960783 765721726 1022251314 1022251314 202954700 82708352 570770004 604109396 604109396 100921368 600877532 619713289 644031773 762976173 762976173 168541844 568255668 568255668 552979745 556592065 556592065 142920772 135382016 540041568 540041568 710943653 710943653 236063072 782524176 782524176 774553676 774553676 648807993 915099152 915099152 635464082 873348776 1014651814 1014651814 1059733632 1059733632 143670450 299993584 328254066 756570045 800241394 800241394 992042586 992042586 559558033 809841027 809841027 530735446 665558823 665558823 649156847 802461064 802461064 544463520 374962745 285773065 868709717 868709717 841154431 1031600180 1031600180 415281690 882075863 939709461 982045701 982045701 940339207 542085620 393833892 383597986 383597986 868265704 868265704 799260749 799260749 834691237 989929527 989929527 500377823 404175366 243602010 395811124 1016278878 1016278878 365403202 365403202 400552874 400552874 287442048 351670160 351670160 120103168 120103168 59842872 94953688 94953688 285070472 976751410 976751410 402972981 818152668 849346899 849346899 517509308 272181048 429726545 845490579 845490579 394684348 890552373 890552373 874629642 1059631220 1059631220 63178853 728862917 941625813 952598592 977791686 977791686 45033875 646385883 646385883 714213700 779145492 779145492 153354580 624167644 793036989 793036989 878047370 878047370 744827277 824811553 824811553 611316120 1004369100 1004369100 244114093 818989136 818989136 402657707 102908526 706134115 706134115 429300822 848001691 848001691 809098848 809098848 958016242 958016242 603017981 386302229 975176626 975176626 691743202 279263778 99643496 1011936141 1011936141 805404688 738592942 738592942 1032004205 1032004205 976388302 853568504 821291707 795967010 991365911 991365911 898785175 790297656 790297656 761924357 937562611 937562611 906698929 906698929 319241088 305701643 947099415 947099415 637607961 935881522 935881522 106900628 609652901 722369356 722369356 956148965 956148965 938043824 938043824 423623988 423623988 295172706 167373350 189293256 249696732 334103700 465044588 465044588 220201612 198390516 195362640 195362640 44269572 2696448 12632256 12632256 9437760 141745168 175439124 269796354 269796354 178963152 416027346 422188550 558387888 840049072 840049072 950024800 950024800 448736147 944236676 944236676 825498455 952629655 952629655 709314711 676383248 568801699 558307745 70507401 604303649 604303649 110369376 143787808 645945452 645945452 607514461 722600560 722600560 959634386 959634386 954653127 954653127 586424834 608413371 806184072 806184072 105718594 374345728 374345728 281777112 79876296 238779788 238779788 292999722 292999722 70237376 70237376 285634530 285634530 403605124 403605124 338825994 134350536 137109644 137109644 270082048 338266896 350871746 350871746 33689616 235626759 1013507907 1013507907 961733263 961733263 772719188 882376839 906433232 906433232 876947595 568912010 256642236 786092668 1006189061 1027478323 1027478323 260325863 913213577 913213577 501290980 501290980 406104454 403030146 383541248 277908160 399397526 948198990 948198990 657601348 657601348 745652612 745652612 605102601 135505924 671223911 671223911 430977090 993087778 993087778 972215271 849534343 836538832 341628994 103850352 103850352 4108546 272498434 273965314 273965314 7212288 270761090 270761090 37299984 37299984 578288529 578288529 543937792 340972803 73178632 641472844 664344773 664344773 254747648 752042224 813754641 861268659 861268659 854748358 854748358 283782215 177766620 349514494 504517356 504517356 758607116 758607116 226255401 703926336 763691968 763691968 140274816 140274816 139749504 139749504 135389700 885366288 885366288 318405870 961063143 1049027205 1049027205 731273635 731273635 539136005 940160132 940160132 848560789 848560789 910529040 910529040 792910293 809388273 809388273 714079317 600088323 557326912 564733281 564733281 426520168 575641698 837550880 837550880 819728067 573632371 558965409 654600746 654600746 182503985 171340228 705962692 705962692 624729369 624729369 589899057 676204673 712121153 712121153 419696261 481172814 481172814 604241984 676905992 693308692 693308692 548433183 749095173 1013190817 1046614932 1046614932 715053781 549013841 658152617 658152617 528684884 279697204 581566608 754638000 754638000 617661045 591661605 591661605 631499357 687234957 687234957 466876387 276857204 319848528 319848528 189895316 189895316 624574220 685978053 685978053 705141524 705141524 543075861 637930570 637930570 447403350 973755028 973755028 537252421 184219216 198332584 359348238 359348238 275063024 275063024 394923050 394923050 314708178 436259122 436259122 406734368 524455532 524455532 244179496 244179496 194776692 206346360 692182146 706124806 706124806 536870916 690528325 690528325 680092016 615374170 692897832 692897832 904145800 999375623 999375623 740302961 1072900356 1072900356 697650031 697650031 101953216 97867864 126196560 126196560 98963848 98963848 77994312 137107208 137107208 170268948 240785276 249431592 249431592 222779096 204104132 281623786 281623786 161566020 446015271 633825301 633825301 398864462 736642284 774423837 774423837 641795860 499522217 722520581 722520581 779803134 779803134 644111536 644111536 650906841 767870004 767870004 0 0 0 261103616 261103616 114364308 148249284 148249284 469894813 469894813 560145075 560145075 554906145 1031485359 1031485359 792075069 792075069 929968055 929968055 542453940 877922955 979317788 979317788 625363373 625363373 742181164 742181164 579227797 134617092 134617092 69739800 707471872 707471872 70730765 59067712 59067712 253351101 611165149 611165149 552254737 759239048 828384392 828384392 826302368 826302368 799492996 928741803 928741803 947961927 947961927 347244967 759584813 759584813 470896908 678962830 983140106 983140106 853541331 818479695 641032326 184901720 109160500 37894272 100868232 273756160 290006048 809144756 809144756 468228931 269748738 305209892 305209892 320195120 320195120 330101620 690694452 690694452 537473013 842867606 842867606 712073429 819759892 819759892 403456705 306987008 306709650 306709650 304350168 108360808 92515736 92515736 149622732 149622732 80615192 248582916 901638004 1032964955 1032964955 848322607 596978400 972237454 972237454 797313604 597692524 597692524 363276924 363276924 444686431 563916234 563916234 83022792 290957856 290957856 287188480 87806984 110742552 330963186 330963186 175235988 436417403 436417403 921065696 1025507631 1025507631 553387931 553387931 423497898 740464489 740464489 395102858 239377410 489580674 989439537 989439537 300712686 850692353 850692353 513851934 166773732 155458112 76865356 335712264 335712264 657075608 657075608 669364818 669364818 944296744 1031411631 1031411631 80905767 818020426 818020426 340340929 335982670 814565652 814565652 857347635 1036568243 1036568243 969594111 270213749 151756912 176870484 580391688 580391688 594787171 926127837 926127837 960711276 960711276 914629385 914629385 673432057 673432057 241052268 545454922 1006768143 1006768143 709946628 707191041 674708229 674958336 674958336 722019704 722019704 699467621 666140028 631682664 780538729 780538729 460004265 550663716 550663716 476449260 489981738 690767663 1049625183 1049625183 565741060 818800895 818800895 724307253 724307253 592933814 984686887 984686887 769727298 462031414 549241033 549241033 362613316 310902864 310902864 303613458 101688624 101688624 82380800 78383424 370082848 370082848 36175872 335559120 384252378 384252378 301328144 382228506 382228506 369525978 170167876 170167876 203473164 203473164 138412080 50331780 714643200 714643200 136917521 121960536 85983528 85983528 554047908 554047908 602032544 602032544 784193825 784193825 756073005 1014776378 1014776378 1049421916 1049421916 806363662 956700711 956700711 872693013 637600936 482683086 482683086 247783442 541165778 650496745 932573372 1024647428 1024647428 540203777 537084996 762670485 762670485 901573130 901573130 824636262 889641003 889641003 278548073 747218020 747218020 933302342 933302342 780853306 667735168 373710256 360833064 360833064 108477336 128227408 132408272 132408272 131529640 46294376 63440208 63440208 26213472 59119728 59119728 59013184 780150805 780150805 136624132 873269517 873269517 1063758055 1063758055 987629936 987629936 1022017780 1022017780 881537747 881537747 574577424 284743112 61392240 113271808 113271808 56597208 52269072 236105920 248636124 248636124 816720738 816720738 1057698985 1057698985 708968484 818280606 818280606 643397840 643397840 981819790 981819790 947467736 719941123 581570756 510990868 510990868 762535390 812258691 1036291423 1036291423 990003366 742787104 1051902369 1051902369 603996649 1009813258 1009813258 915458620 801178176 119332016 119332016 52299056 123405408 123405408 215193192 215193192 187925472 66256944 66256944 30630112 37963984 282505989 976433943 976884995 976884995 607330884 1069815038 1069815038 728706904 735521925 735521925 824181248 1071973300 1071973300 900999691 717232926 876743202 1011908742 1011908742 873538059 873538059 745214224 776545437 951590979 951590979 564137396 399383989 63440986 46271748 339444818 339444818 153275764 306469314 306469314 138068736 12196804 25836096 50096416 58000896 144444556 144444556 203330296 203330296 285230961 1069025151 1069025151 900597627 900597627 269229627 235212470 753866937 1048478451 1048478451 625497992 909821457 909821457 553415928 477918518 523240966 523240966 394264698 141607828 367675915 738102647 738102647 1015027040 1026168111 1040586807 1040586807 572878880 572878880 253106748 558570652 559876768 1040453904 1040453904 883429380 530788418 530788418 475076176 225229524 225229524 113899200 181720624 181720624 268288578 371269914 371269914 380208978 380208978 373334666 373334666 41176474 326993624 363099648 363099648 101550208 88108288 258860161 258860161 141157764 554733208 606382617 606382617 771818196 771818196 310864244 411613202 411613202 547045428 547045428 923876964 923876964 579403803 826960783 826960783 765721726 1022251314 1022251314 637601096 637601096 570770004 604109396 604109396 100921368 600877532 619713289 744937240 762976173 762976173 168541844 568255668 568255668 707318772 707318772 187360865 142920772 135382016 135382016 658777652 752426957 752426957 623509768 623509768 665738325 774553676 774553676 877928641 915099152 915099152 592871970 945563648 1014651814 1014651814 1059733632 1059733632 143670450 299993584 328254066 756570045 800241394 800241394 992042586 992042586 81207400 17290744 17290744 53009520 269855488 270870786 270870786 269701632 343417905 846360850 846360850 1055574743 1055574743 868709717 841154431 1031600180 1031600180 645481128 882075863 882075863 271131906 822804480 822804480 542085620 350842066 339873770 339873770 323348658 490908918 490908918 797528072 797528072 411300931 411300931 189058288 394587736 394587736 384442622 140392030 866452978 938203558 938203558 439035332 439035332 277558338 351670160 351670160 131022072 131022072 59842872 118624272 118624272 277354992 277354992 362433928 874782042 874782042 849346899 849346899 335777180 335777180 535759548 535759548 468455926 394684348 394684348 874629642 874629642 457181490 457181490 230087532 230087532 941625813 941625813 679156359 978312982 978312982 721271197 646385883 714213700 779145492 779145492 153354580 624167644 624167644 541329537 878047370 878047370 149181429 824811553 824811553 611316120 1004369100 1004369100 244114093 818989136 818989136 962757005 962757005 627714937 627714937 372716470 848001691 848001691 209866472 209866472 156780710 399615740 399615740 126820880 126820880 271818816 271818816 143292422 25342564 1011936141 1011936141 959449171 959449171 738592942 1032004205 1032004205 976388302 853568504 821291707 795967010 121272532 0 96914252 578877936 672412289 672412289 937562611 937562611 906698929 906698929 116515800 305701643 947099415 947099415 564288066 935881522 935881522 398202825 522298602 522298602 178187180 167571012 303582794 303582794 164068656 423623988 423623988 295172706 167373350 189293256 249696732 334103700 465044588 465044588 220201612 8388608 134312976 134312976 64016168 2696448 12632256 12632256 9437760 16574224 175439124 175439124 134491404 103087128 106286748 106286748 71454452 228098232 426021204 652939406 652939406 69378769 812590240 830287779 830287779 283560146 283564482 317852209 568801699 568801699 558307745 633003976 633003976 604303649 110369376 113633496 777275544 777275544 607514461 722600560 722600560 959634386 959634386 954653127 954653127 586424834 608413371 806184072 806184072 105718594 366544010 366544010 290474912 290474912 120660792 391667976 391667976 340313226 274550426 274550426 376591400 376591400 358079744 352051584 338825994 70385674 69214976 309136992 399810178 399810178 356767146 356767146 86750762 416491492 416491492 375439770 961733263 961733263 868624019 734402805 1019415733 1019415733 1011426447 264020410 230348492 786092668 1006189061 1027478323 1027478323 531393487 913213577 937460528 1037116143 1037116143 666003350 403030146 383541248 442674024 442674024 801112317 801112317 230809836 1043374974 1043374974 369205278 335667210 334173507 671223911 942350358 942350358 993087778 993087778 972215271 849534343 836538832 140247696 81549472 13945984 13945984 272498434 273965314 273965314 808303617 812304385 812304385 805667970 537022089 537022089 543937792 609670281 609670281 73178632 106694152 108268440 108268440 97517928 937935067 937935067 367884468 638964925 854748358 854748358 776472715 776472715 730634979 614108704 504517356 419936480 172252678 290085413 890242695 890242695 763691968 970476610 970476610 677413604 406899746 471108552 471108552 740050737 740050737 119023184 878305573 878305573 407167826 1055209665 1055209665 672342998 672342998 848560789 848560789 910529040 910529040 792910293 809388273 809388273 600088323 600088323 557326912 564733281 814557800 814557800 555705988 837550880 837550880 819728067 573632371 558965409 694908687 694908687 407446662 403489298 705962692 705962692 647637257 647637257 589899057 840455952 840455952 577845249 411108948 411108948 312402464 604241984 676905992 693308692 1064583308 1064583308 548433183 241091898 918344774 918344774 715053781 476711443 380951412 528684884 528684884 826741662 826741662 581566608 576197969 175377344 591661605 591661605 631499357 631499357 606238116 835868605 835868605 639234690 669038267 669038267 513235775 778116620 778116620 755447853 705141524 705141524 583144352 833997219 833997219 447403350 973755028 973755028 537252421 143839318 176950356 359348238 359348238 275063024 275063024 394923050 394923050 314708178 436259122 436259122 406734368 524455532 524455532 244179496 244179496 194776692 206346360 741661867 894208809 894208809 536870916 690528325 690528325 881869500 1002488055 1002488055 692897832 904145800 999375623 999375623 885035024 984746412 984746412 697650031 697650031 261572841 97867864 59194880 99031136 369800536 369800536 268558338 137107208 197696256 201252852 240785276 249431592 249431592 209918988 204104132 204104132 100616112 161566020 446015271 646634552 646634552 520755298 736642284 774423837 774423837 641795860 842613793 866772339 866772339 642691189 162451835 274992130 274992130 190612652 220800040 237011204 480781606 480781606 46178612 500314706 500314706 102965740 339831200 339831200 88130090 371261481 560145075 560145075 554906145 1031485359 1031485359 792075069 792075069 929968055 929968055 542453940 877922955 979317788 979317788 625363373 634659021 634659021 169355220 548566081 548566081 648192 9456384 45688656 571011453 571011453 688033100 688033100 542056196 611165149 611165149 950014556 950014556 828384392 828384392 109389912 799492996 799492996 928741803 928741803 947961927 947961927 347244967 759584813 759584813 470896908 678962830 678962830 773849496 773849496 506586261 470673564 499534315 787581507 787581507 559344553 576902601 576902601 417226547 678709413 678709413 597494006 857744788 857744788 51429936 51429936 51429936 50652192 50652192 27312720 842867606 842867606 712073429 819759892 819759892 403456705 306987008 306709650 306709650 304350168 72361496 170749900 170749900 128664424 128664424 60484512 204111140 901638004 1032964955 1032964955 848322607 278447102 972237454 972237454 475271781 597692524 597692524 635572352 780289023 1058165302 1058165302 563916234 542676755 542676755 607893129 895488033 911843534 911843534 512938590 330963186 143659008 436417403 436417403 402952872 492231342 492231342 366875672 366875672 321396178 279711042 191152364 371331080 371331080 489580674 989439537 989439537 278105930 850692353 850692353 513851934 155458112 165400448 285814370 285814370 1036509738 1036509738 501888809 669364818 738271245 944296744 1031411631 1031411631 80905767 475230249 945486563 945486563 411537656 781064291 781064291 996857271 996857271 722303362 452195286 562680937 625883251 625883251 522399983 1073403903 1073403903 926127837 926127837 960711276 960711276 914629385 914629385 673432057 673432057 241052268 622145991 622145991 709946628 846730163 846730163 712793493 674958336 674958336 722019704 722019704 699467621 666140028 954651924 1019756549 1019756549 460004265 379984218 263329130 476449260 489981738 856234043 856234043 792434300 606319397 818800895 818800895 724307253 724307253 401506828 984686887 984686887 769727298 427109286 549241033 549241033 437166166 293962328 294699618 315672674 315672674 281373072 113901730 857206579 857206579 441366627 758192813 758192813 745538445 744237686 744237686 394061601 852148749 852148749 765723870 765723870 597953856 469762418 293601280 25502016 714643200 714643200 444116301 379399770 345313144 799592336 799592336 734003249 734003249 612442284 784193825 788664381 788664381 692431496 886054480 1049421916 1049421916 806363662 956700711 956700711 872693013 606748018 816382316 816382316 419827840 1058146978 1058146978 932573372 932573372 256860351 119223864 341983912 341983912 117753912 368405928 388311354 873965976 873965976 643972531 151521336 789430352 789430352 933302342 933302342 497957345 373710256 373710256 97798144 108358296 108477336 112589280 132408272 132408272 83886080 83886080 190412988 190412988 241404812 241404812 241347012 224997536 714573676 741091801 741091801 987045065 987045065 34481671 0 987629936 987629936 76188416 76188416 27472224 83746336 83746336 115466712 115466712 97832440 138970316 212171316 231470588 231470588 624140512 624140512 816720738 816720738 1057698985 1057698985 708968484 632018078 632018078 187307316 125964408 209979344 947467736 947467736 719941123 581570756 114940961 114940961 762535390 812258691 1036291423 1036291423 990003366 952376544 1051902369 1051902369 996149696 1009813258 1009813258 1015219026 1015219026 1009914639 942859384 59319408 33631328 11799376 11928384 187925472 187925472 167850560 160787108 55875620 37963984 282505989 976433943 976884995 976884995 607330884 1069815038 1069815038 728706904 735521925 735521925 824181248 1071973300 1071973300 900999691 717232926 138543114 1011908742 1011908742 873538059 873538059 975729346 975729346 776545437 564137396 564137396 399383989 135168208 46271748 42371216 44998336 153275764 153275764 138068736 284954122 284954122 218424844 522134182 522134182 144444556 551897785 551897785 249612776 692505230 842455827 842455827 572362631 671162909 671162909 408495367 141632388 137371776 229779836 229779836 282121240 282121240 328973956 477918518 523240966 523240966 339870738 339870738 367675915 738102647 738102647 548210895 1051062425 1051062425 596632665 572878880 572878880 324010674 481092858 559876768 585195014 883429380 883429380 985517891 985517891 891013876 225229524 225229524 290484426 290484426 181720624 826597702 884515662 884515662 627831102 802407165 802407165 953844269 1015156815 1015156815 390219016 655233996 655233996 573082748 88108288 67674136 128665080 554733208 554733208 157421988 771818196 771818196 599329806 488920951 503460150 547045428 547045428 453107766 309502982 911823748 911823748 642640347 984712216 984712216 608714269 637601096 637601096 111996992 56331848 226777168 226777168 68851024 112379672 744937240 744937240 710245429 710245429 709954048 726680981 726680981 707318772 187360865 28371744 28371744 27568704 658777652 752426957 752426957 708102933 706134645 211028485 625593953 668328632 877928641 877928641 810045619 849157664 945563648 945563648 331399 438494368 438494368 337177988 13635040 20713248 32244416 32244416 31478800 59904624 59904624 42997024 6951040 2232576 4628864 269855488 270870786 270870786 303389368 359193402 846360850 846360850 1055574743 1055574743 812965539 304987529 676110884 676110884 645481128 13046177 430217464 518310366 822804480 822804480 807596328 498682282 498682282 482438876 468054380 490908918 490908918 797528072 797528072 965028962 965028962 397372251 394587736 394587736 493413756 493413756 866452978 938203558 938203558 439035332 439035332 238724818 121324928 132797424 132797424 131022072 117586952 118624272 344829696 344829696 693066946 693066946 874782042 874782042 849346560 849346560 479945010 479945010 535759548 535759548 468455926 168619234 175235988 178356928 178356928 6930156 230087532 230087532 230087532 98313680 41988100 980754502 980754502 978312982 848845919 338276803 674797700 674797700 683675085 683675085 252725464 252725464 548700452 552989161 552989161 675326705 692134053 692134053 675426336 213596524 137424084 140837444 151562624 618181200 962757005 962757005 144753651 331399530 331399530 70814100 36193974 286671728 311876178 411636764 411636764 471920806 471920806 345281590 504728602 504728602 346212688 101803772 101803772 527597614 959449171 959449171 535200598 801134608 801134608 281908536 374658018 461685363 1027788975 1050375519 1050375519 741815085 578877936 1016404461 1016404461 947937872 170254887 940160 566291520 566291520 833599649 833599649 564288066 564288066 726427134 726427134 398202825 1068303770 1068303770 672197101 922411404 922411404 185073585 78414176 268327396 268327396 218422308 149211588 149211588 110379932 7067056 53028144 69397964 163724244 163724244 238291800 238291800 86471336 83593600 84292320 84292320 68225536 14723968 140963712 140963712 106745496 106745496 105121944 151519288 617874084 971519704 971519704 488230720 488230720 132402226 812590240 830287779 830287779 995555431 997390757 997390757 726749202 277027712 381518320 633003976 633003976 39843609 105049792 113633496 777275544 777275544 130305029 18738720 705690800 705690800 690140144 692244645 692244645 72451613 95347312 95347312 59645040 59645040 41943232 342884384 342884384 290474912 120660792 391667976 391667976 340313226 388810394 388810394 376591400 376591400 358079744 15519168 15519168 347983840 347983840 309136992 399810178 399810178 356767146 360711170 360711170 416491492 416491492 375439770 587536409 868624019 868624019 734402805 1019415733 1019415733 1011426447 1004713247 828823971 751222923 941114663 941114663 968504555 968504555 614539593 937460528 1037116143 1037116143 666003350 135430920 82053576 442674024 442674024 801112317 801112317 341957651 1043374974 1043374974 1007622156 1007622156 334173507 574306163 942350358 942350358 939541142 939541142 277996098 193727604 193727604 140247696 81549472 13945984 13945984 2336448 512 270866432 808303617 812304385 812304385 805667970 537022089 537022089 73326216 609670281 609670281 618143680 618143680 606996233 539755273 130549617 937935067 937935067 367884468 638964925 638964925 485700558 776472715 776472715 730634979 614108704 228332560 227958507 172252678 290085413 890242695 890242695 347645866 970476610 970476610 677413604 406899746 471108552 471108552 740050737 740050737 172313552 878305573 878305573 407167826 1055209665 1055209665 408977728 408977728 510733228 510733228 369475620 520431678 520431678 126684582 518070750 518070750 426519672 819345308 819345308 901202827 901202827 631086338 672818595 672818595 570611214 472986501 991453957 991453957 694908687 407446662 403489298 70528010 70528010 873041944 873041944 272163346 840455952 840455952 577845249 1012407939 1012407939 445716638 445716638 695406757 695406757 1064583308 1064583308 1011810438 241091898 859911189 859911189 306094572 866968065 866968065 839057481 430258512 826741662 826741662 925501096 925501096 671353676 671353676 592708197 1011422032 1011422032 931209339 835868605 835868605 639234690 669038267 669038267 513235775 778116620 778116620 755447853 547726235 906361753 906361753 833997219 833997219 320367617 281698112 281698112 48049872 409725492 409725492 185006562 220209568 220209568 201439684 474699268 941499631 941499631 288701278 865540167 865540167 112874296 543497672 663199401 663199401 673034857 673034857 741661867 911336718 911336718 761275305 858260482 858383667 881869500 1002488055 1002488055 661432600 233113748 233113748 885035024 885035024 109365748 57936620 633649788 633649788 261572841 288079272 306564650 306564650 369800536 369800536 268558338 111285456 272923990 272923990 201252852 502195558 502195558 87908552 58370024 514499642 514499642 221122048 394416154 646634552 646634552 520755298 520755298 50331744 1045430968 1045430968 842613793 866772339 866772339 830755007 461377699 386046201 784803000 784803000 937376858 937376858 480781606 480781606 136878080 500314706 500314706 172365972 349692204 349692204 400499290 400499290 337241610 336964730 280049472 280049472 71177224 24647288 486095424 486095424 390804666 390804666 374355768 211010552 222507180 222507180 634659021 634659021 276660928 548566081 548566081 269407488 70385920 69571336 571011453 571011453 688033100 688033100 542056196 295714308 167844872 950014556 950014556 1008730383 1008730383 497498478 557065158 557065158 501923812 501923812 140958084 295145730 344375462 738283748 738283748 755114508 755114508 1029879174 1029879174 152093220 470673564 470673564 499534315 787581507 787581507 559344553 576902601 576902601 417226547 678709413 678709413 597494006 857744788 857744788 332448498 332513906 332513906 282149588 161564004 61704260 45089616 44608528 5243344 16328400 16328400 44632528 48234704 48234704 168821716 168821716 139461904 170749900 238634696 238634696 183895872 183895872 257131624 257131624 251793468 251793468 228197968 140378784 157300160 220935380 241907100 241907100 871551334 871551334 780289023 1058165302 1058165302 625492064 625492064 542676755 607893129 895488033 969699563 969699563 512938590 838391438 838391438 830493999 705068069 705068069 492231342 492231342 867585086 867585086 321396178 279711042 228614248 371331080 371331080 329715662 182331770 163627236 184847956 184847956 380768862 380768862 143692886 165400448 285814370 285814370 1036509738 1036509738 501888809 874728998 874728998 819061443 940893476 940893476 340996746 617816266 945486563 945486563 411537656 939528225 939528225 996857271 996857271 830558803 697471047 697471047 625883251 726664036 726664036 1073403903 1073403903 883539417 611143850 118993328 41410960 459578630 459578630 458429856 458429856 436987270 622145991 622145991 595607292 846730163 846730163 712793493 397985536 596700028 596700028 260504700 812155531 812155531 954651924 1019756549 1019756549 613460415 487162262 487162262 35725584 336557334 856234043 856234043 792434300 606319397 587287057 592851056 592851056 555661336 555661336 207218760 247777500 252231704 252231704 203215920 437166166 437166166 293962328 294699618 315672674 315672674 375082808 375082808 857206579 857206579 441366627 758192813 758192813 745538445 744237686 744237686 394061601 852148749 852148749 765723870 765723870 597953856 469762418 293601280 51119696 549773920 549773920 444116301 379399770 345313144 799592336 799592336 734003249 734003249 612442284 715921416 788664381 788664381 564597524 1011084482 1011084482 962026514 962026514 235185154 235185154 419955750 419955750 891299076 891299076 530870362 1058146978 1058146978 1006663758 1006663758 531678078 956891989 956891989 731620733 752373893 752373893 656626250 873965976 873965976 643972531 137216972 789430352 789430352 773126269 655298944 579634352 579634352 83151816 97798144 97798144 22358688 112589280 118497336 128242040 128242040 83886080 190412988 190412988 241404812 241404812 241347012 224997536 714573676 741091801 741091801 987045065 987045065 973153463 978056343 978056343 963681520 917686264 917686264 833978739 833978739 641017960 283402256 115466712 97832440 218573733 218573733 231470588 231470588 779056063 779056063 900445297 900445297 583045712 809587860 973861911 973861911 187307316 187307316 125964408 127346444 981998340 981998340 413546579 145964394 86050880 86050880 340641637 761530797 973864755 973864755 952376544 952376544 910183817 852892785 996149696 996149696 963456423 1015219026 1015219026 1009914639 942859384 59319408 36642848 100663328 117440568 117877188 167850560 183636948 183636948 177731796 177731796 50032852 17425440 17425440 193638484 193638484 51639056 51639056 22473856 75797584 75797584 65668520 55389360 75705440 116849049 582457225 582457225 95081832 435851876 435851876 1008391183 1008391183 998818425 998818425 965773458 986339161 986339161 582524046 59540544 59540544 161383312 161383312 37149456 37149456 284954122 284954122 218424844 522134182 522134182 142676944 551897785 551897785 249612776 692505230 842455827 842455827 572362631 671162909 671162909 408495367 141632388 137371776 229779836 229779836 282121240 336948962 336948962 299728936 255452672 437814400 437814400 357177252 357177252 357749418 357749418 197397539 1051062425 1051062425 596632665 244484188 267909454 324010674 481092858 481092858 585195014 682275284 683614148 985517891 985517891 891013876 205072140 149038248 290484426 290484426 57977058 826597702 884515662 884515662 627831102 802407165 802407165 953844269 1015156815 1015156815 390219016 655233996 655233996 573082748 228325068 618727684 618727684 697001340 697001340 235666553 37748496 599329806 599329806 488920951 503460150 982536288 982536288 277881856 485205584 911823748 911823748 642640347 984712216 984712216 402964625 135119824 138006404 145280000 145280000 226777168 226777168 106562960 106562960 118569776 118569776 710245429 710245429 709954048 726680981 726680981 296864984 394080186 394080186 300075560 680239918 1002360572 1002360572 708102933 708102933 706134645 196348788 281611831 543236481 948520960 948825159 948825159 849157664 849157664 784865907 453988543 369172506 478361836 478361836 478889576 478889576 283129424 348650472 348650472 391714730 391714730 370345210 299620288 299620288 122164432 122164432 3277056 401245136 401245136 359193402 359193402 335593482 335593482 473833230 473833230 184705040 676110884 735672432 735672432 139698249 430217464 518310366 951015930 951015930 807596328 498682282 498682282 482438876 697714688 697714688 67510340 17567744 553660418 965028962 965028962 419504166 438678128 438678128 493413756 493413756 476363086 437239504 419811558 314114890 282249962 366159490 385271768 385271768 132797424 130122832 117586952 310975673 344829696 438996418 988034325 988034325 247990672 40109276 849346560 849346560 943906068 943906068 1028568866 1028568866 1010692879 972292398 438583760 489399402 489399402 144888132 242956188 441983896 441983896 787362241 812985219 990059444 990059444 853135057 848845919 876615813 876615813 674797700 683675085 683675085 673802757 673802757 641519385 552989161 552989161 675326705 692134053 692134053 675426336 119121219 517506782 517506782 344531323 944415540 944415540 1042830829 1042830829 941097992 331399530 990655089 990655089 423368362 423368362 411636764 411636764 471920806 471920806 345281590 504728602 504728602 346212688 101803772 191095448 527597614 1061430066 1061430066 759382784 801134608 801134608 393259538 374801272 461685363 1027788975 1050375519 1050375519 881990976 881990976 1016404461 1016404461 947937872 1033348182 1033348182 765987028 1056042365 1056042365 833599649 138478951 155318602 286526624 286526624 108884516 1068303770 1068303770 672197101 922411404 922411404 185073585 76384600 268327396 268327396 218422308 149211588 203542936 224535812 224535812 238217504 238217504 208538260 208538260 238291800 238291800 168276884 230691072 230691072 184250572 184250572 409901209 409901209 403333394 403333394 546758337 546758337 554713458 850445139 971519704 971519704 488230720 984439329 984439329 913477896 913477896 582273380 995555431 997390757 997390757 815900833 815900833 587489843 571213219 626722312 626722312 50426880 329156160 357676592 595943548 697567845 738551660 738551660 691825477 691825477 159701701 665242188 665242188 656806291 656806291 660080168 660080168 121685912 342884384 342884384 287917872 287917872 366062840 366062840 341436042 388810394 388810394 269095938 274442112 274442112 50475008 50475008 373748096 373748096 371534106 271284794 314157008 314157008 360711170 360711170 306798672 401084880 401084880 55348410 341070232 341070232 77019720 906894104 906894104 1004713247 1004713247 828823971 751222923 941114663 941114663 968504555 968504555 614539593 430449224 179491668 253940580 253940580 386957744 386957744 117835908 376599466 573495740 573495740 341957651 1028667974 1028667974 1007622156 1007622156 675746004 283248979 272902548 272902548 530385296 530385296 471600654 529321086 529321086 433376968 112123224 112123224 13727488 339346698 339346698 339776640 339776640 270758914 537199616 537199616 805489152 806754819 810965633 810965633 806252425 806252425 618143680 606996233 579783776 560649633 558285993 579071136 1041258305 1041258305 721681290 267216616 267216616 506353692 506353692 349242876 134884456 134884456 89913728 23074944 6422560 6422560 0 0 17112576 18560544 18560544 35470384 35470384 180768784 180768784 172313552 215066432 215066432 146289032 2545920 103074072 408977728 408977728 148914246 138412868 356387408 356387408 320373442 907770101 907770101 741468294 741468294 1068534673 1068534673 901202827 901202827 631086338 672818595 672818595 929303098 929303098 991453957 991453957 38093440 34990608 33915472 605669952 605669952 876363848 876363848 818097040 236909598 473370160 473370160 1012407939 1012407939 712057749 712057749 695406757 695406757 694358317 1011810438 1011810438 436832958 859911189 859911189 789442897 866968065 866968065 839057481 233308599 384172397 384172397 925501096 925501096 905496555 671353676 655400817 1011422032 1011422032 931209339 629686583 629686583 591161862 453893968 402818118 423292212 589376392 607651593 607651593 547726235 906361753 906361753 577102491 942887172 942887172 546170905 638152641 638152641 409725492 409725492 599942768 834249746 834249746 627738364 826926388 941499631 941499631 288701278 865540167 865540167 753360974 753360974 663199401 822708980 822708980 673034857 696796260 911336718 911336718 761275305 858260482 858383667 858383667 606684352 810209475 810209475 952629339 973391895 973391895 985894640 985894640 849204120 849204120 847441008 339512760 332581130 306564650 354884736 354884736 82437576 285192072 285192072 272923990 272923990 170078484 502195558 502195558 186997396 201054660 514499642 514499642 227476020 529078859 529078859 260647965 438252068 438252068 412988022 1045430968 1045430968 368302807 114559067 830755007 830755007 700862502 826310884 826310884 784803000 937376858 937376858 245012036 243665992 243665992 161764284 172365972 172365972 349692204 349692204 400499290 400499290 337241610 336964730 294015072 294015072 286274256 530060274 530060274 261165412 261165412 94714472 55881752 203641408 203641408 106118488 313768920 313768920 276906304 337247752 337247752 269407488 113524696 113524696 369232240 369232240 381790714 381790714 371851826 295714308 173020424 693252400 807547657 1008730383 1008730383 497498478 982194252 982194252 503932766 503932766 275163168 275163168 170299398 738283748 738283748 755114508 755114508 1029879174 1029879174 152093220 156320960 156320960 38028944 76957296 76957296 30735336 327303602 327303602 60916432 326105520 326105520 308111250 155714820 325166692 332448498 663504869 670899000 750218845 750218845 181852884 717724624 717724624 587185857 679798404 679798404 673302341 577219472 172560528 40111432 40111432 278933006 485233366 485233366 335897816 183895872 183895872 442553478 994699513 994699513 510397854 608272561 608272561 715590724 715590724 4858129 702949804 871551334 871551334 672138165 810834436 890773113 890773113 879822870 879822870 344416440 344416440 969699563 969699563 444748630 838391438 838391438 891992112 908979483 908979483 386142510 423533385 867585086 867585086 508954780 693174789 693174789 424946054 252042880 252042880 834205441 834205441 279742738 828376417 828376417 327420210 97851992 97851992 118725696 118725696 244561632 252244373 252244373 874728998 874728998 819061443 940893476 940893476 340996746 617816266 755372096 772737229 772737229 939528225 939528225 319415346 830558803 830558803 697471047 697471047 218720040 726664036 726664036 656272953 883539417 883539417 611143850 118993328 55962288 459578630 459578630 458429856 458429856 436987270 436987270 296914208 335692066 335692066 442899510 824612402 824612402 670225401 670225401 479124558 812155531 812155531 922535926 922535926 632866665 613460415 487162262 487162262 35725584 84153104 322289228 412929606 412929606 162190692 756800374 756800374 177097323 555661336 824197048 824197048 824004979 445276479 381939930 1019611467 1056252293 1056252293 175459008 3132272 25329792 121386586 375082808 375082808 125784672 299608688 728035152 728035152 582665629 580402289 411643648 411643648 365688042 365688042 113964498 103482560 103482560 69206016 69206016 51119696 51119696 33967968 35936000 35936000 694946280 694946280 678962240 686891973 730075108 730075108 798756477 798756477 180102945 213234004 723253416 1011084482 1011084482 991875209 1024457775 1024457775 236035635 419955750 419955750 891299076 891299076 635855755 635855755 430406635 1006663758 1006663758 531678078 956891989 956891989 731620733 752373893 752373893 656626250 345452098 101673774 272403490 272403490 131586784 773126269 773126269 655298944 579634352 579634352 360784402 83151816 96345960 111413592 111413592 118497336 128242040 128242040 125355960 94913232 138840104 222482604 222482604 138574028 264029933 576981393 653263801 788339485 788339485 693265042 973153463 1025107503 1025107503 710375253 917686264 917686264 833978739 880039211 880039211 645997147 846268595 846268595 637600590 374640670 486852654 486852654 779056063 787178508 900445297 900445297 583045712 919602801 973861911 973861911 286830646 286830646 84530708 499770602 981998340 981998340 881211742 793845238 82497792 82497792 75628704 393951162 980690236 980690236 850397631 910183817 910183817 852892785 991341945 991341945 963456423 268448514 270606594 336792344 336792344 131798016 131798016 126485648 163840752 163840752 146883284 183636948 183636948 177731796 177731796 50032852 30722784 30722784 193638484 193638484 35507472 36498960 36498960 75797584 75797584 112514272 112514272 43787424 116849049 582457225 626528665 626528665 700072568 700072568 1008391183 1008391183 998818425 998818425 965773458 986339161 986339161 707985978 198718208 142002864 161383312 184730880 184730880 174080000 174080000 61096432 7476096 223613728 223613728 161547000 257098656 257098656 237187356 151126152 222433452 239206444 239206444 135401988 204476680 204476680 134389760 134389760 117486008 109153192 109153192 336948962 336948962 299728936 286264740 437814400 437814400 357177252 357177252 357749418 357749418 173558250 478230920 478230920 168092440 244484188 244484188 239198364 239198364 340099610 340099610 431540070 431540070 182909376 182909376 109557952 273471680 407272386 433271526 433271526 408164948 782311424 782311424 344006730 344006730 269582682 357614250 357614250 94471682 347185450 347185450 254100228 254100228 541023009 541023009 618727684 657853952 697001340 697001340 235666553 37748496 595418464 595418464 466959376 466959376 982536288 982536288 118565320 864649465 864649465 583862978 572232273 998642423 998642423 687855488 952234306 952234306 145280000 145280000 630496112 630496112 592496881 106562960 118569776 118569776 576705636 576705636 703090838 916611367 916611367 908600591 394080186 394080186 1020057537 1020057537 1002360572 1002360572 695206687 695206687 512100414 512100414 489261278 489261278 948520960 948825159 948825159 853283503 853283503 837394637 906495003 906495003 666969314 478361836 478889576 478889576 503798274 503798274 348650472 504087822 504087822 370345210 350782864 350782864 315843458 315843458 312640080 401245136 401245136 353015050 294931048 335593482 526233266 549774447 549774447 459858706 199883836 735672432 735672432 139698249 555942037 555942037 951015930 1021740538 1021740538 710199363 275120807 914518622 914518622 697714688 677490873 140644740 553660418 807767077 807767077 419504166 536871686 994043920 994043920 511678392 511678392 90400056 314114890 314114890 282249962 366159490 385271768 385271768 299097144 365580618 365580618 381780170 381780170 438996418 988034325 988034325 895747281 895747281 979911901 979911901 943906068 943906068 1028568866 1028568866 1010692879 972292398 689203539 689203539 900937033 900937033 647229520 537445377 779691933 984838045 985135959 990059444 990059444 777203407 583144395 876615813 876615813 72092228 178258824 641205724 673802757 673802757 641519385 201172361 162006372 143147364 142741572 194596900 194596900 151189028 517506782 517506782 344531323 944415540 944415540 1042830829 1042830829 941097992 196947828 990655089 990655089 423368362 423368362 243538822 206993700 206993700 153426060 60026676 54875280 175830628 175830628 38932736 587262417 587262417 1061430066 1061430066 861387537 861387537 655659661 655659661 374801272 344117322 612491337 684961923 760480397 881990976 881990976 987833916 987833916 811546032 1033348182 1033348182 765987028 1056042365 1056042365 815841603 201930869 621246477 746721357 746721357 67928072 67208328 843393559 949339216 949339216 794804856 794804856 559071488 120373552 120373552 159698320 159698320 203542936 224535812 258540844 258540844 238217504 208538260 208538260 104470296 168276884 168276884 230691072 230691072 184250572 184250572 409901209 409901209 403333394 403333394 546758337 551372508 554713458 850445139 850445139 526648544 400400523 984439329 984439329 913477896 913477896 590785296 541983188 568681393 568681393 815900833 815900833 587489843 571213219 864357009 864357009 853502691 806403136 638978775 638978775 697567845 738551660 738551660 691825477 691825477 159701701 665242188 665242188 656806291 656806291 660080168 660080168 321577952 323745658 323745658 456920998 456920998 815367777 984260771 991966655 991966655 624815913 624815913 916075009 916075009 773057058 748168829 625746968 373748096 371534106 271284794 366069696 366069696 119611922 306798672 373571850 401084880 663650489 663650489 341070232 341070232 475984556 475984556 436664982 538839196 979129073 979129073 987008529 987008529 912823019 708233327 475987891 440531654 600359704 1042020231 1042020231 666526070 386957744 386957744 343521216 343521216 964976434 964976434 219191583 608377000 709236885 957975177 957975177 873585195 873585195 1020011590 1049115753 1049115753 847774156 471600654 529321086 529321086 433376968 112123224 112123224 85659992 339346698 339346698 339776640 877827979 877827979 611845891 276717314 805489152 806754819 810965633 810965633 810310921 806252425 40420752 579783776 579783776 562042200 562042200 579071136 1041258305 1041258305 721681290 494898000 494898000 506353692 506353692 349242876 241172124 568627057 927381115 933086266 933086266 308143547 808242187 835807667 835807667 368235498 368235498 896839889 896839889 175858704 62306068 46847184 301110464 361928306 361928306 23630410 103074072 407121096 407121096 523315404 523315404 274745938 274745938 185790296 907770101 907770101 741468294 741468294 1068534673 1068534673 891050891 891050891 174920872 477300530 1045857674 1045857674 929303098 373656498 373656498 340988211 419120802 419120802 618176907 618176907 876363848 876363848 818097040 471335550 931239516 931239516 341835402 679066266 712057749 712057749 251840944 645358632 645358632 677282837 688065154 977317439 1045415955 1045415955 840012956 840012956 397726112 693192948 1071689649 1071689649 440142219 674025522 905496555 905496555 660080313 660080313 655400817 957533772 957533772 619057504 939971672 939971672 1033422447 1033422447 563060668 935519555 935519555 819531447 382470264 382470264 339316718 175352436 942887172 942887172 546170905 638152641 638152641 248818887 325776484 599942768 834249746 834249746 627738364 826926388 826926388 195332356 195332356 176439612 290930868 753360974 753360974 630070281 822708980 822708980 525039817 752576008 752576008 688924693 753136273 937089044 937089044 637587865 637587865 810209475 1027228931 1027228931 973391895 1060348041 1060348041 985894640 849204120 899738899 899738899 649371757 614284825 833882793 833882793 556739562 82437576 285192072 285192072 123596546 89546568 89546568 71300864 126665980 186997396 201054660 201115316 201115316 227476020 529078859 764226669 764226669 630403081 438252068 412988022 658506395 658506395 45872976 45872976 738766273 738766273 700862502 826310884 826310884 202586640 202586640 109343364 0 258759040 258759040 79694096 112297478 112297478 832688783 832688783 511343733 616827081 621021251 891727809 891727809 880268845 880268845 569935467 971449291 971449291 946015017 686237344 27077996 203641408 213891904 213891904 209715276 204336448 276906304 276906304 3156994 47915632 113524696 321609104 369232240 369232240 123143184 80999112 138890649 589305557 693241145 693241145 660219452 650257037 538968321 800119803 982194252 982194252 665608330 642439771 568725969 275163168 868356131 949117664 949117664 871444556 706986780 572707089 1007768592 1043932959 1043932959 908633188 38028944 76957296 76957296 30735336 26936128 50717760 50717760 186008408 554106881 554106881 240400640 240400640 108391320 663504869 670899000 750218845 750218845 181852884 717724624 717724624 587185857 679798404 679798404 673302341 577219472 181899412 40111432 250544724 278933006 485233366 485233366 534480762 534480762 192874622 442553478 994699513 994699513 510397854 608272561 608272561 715590724 715590724 584587032 702949804 702949804 238031516 238031516 810834436 890773113 890773113 879822870 879822870 855598881 855598881 1027415512 1027415512 946891297 582409041 228821625 891992112 908979483 908979483 528930942 528930942 604377505 604377505 508954780 693174789 693174789 502826442 278400820 252042880 834205441 834205441 279742738 828376417 828376417 327420210 194065696 11216448 8963136 109586088 109586088 252244373 252244373 732723224 732723224 690353432 827647360 827647360 70529140 562370097 755372096 772737229 772737229 571277356 418029666 418029666 407569186 407569186 139028128 139028128 17212960 17212960 284445698 284445698 310040514 310040514 55962288 55962288 55962288 51464336 33967120 228743276 228743276 262424936 732448637 732448637 919357374 919357374 905971131 905971131 961830322 961830322 670225401 479124558 479124558 413718092 922535926 922535926 632866665 601923848 450901954 450901954 169555476 220947380 322289228 824254755 990316595 992055671 992055671 756800374 177097323 559820888 824197048 824197048 824004979 445276479 381939930 1019611467 1056252293 1056252293 175459008 51602720 51602720 25329792 26394552 309743657 845542019 845542019 1001511257 1001511257 966928898 580402289 411643648 411643648 390254778 990370211 990370211 688589838 839672960 839672960 424742104 366291690 328843928 609940138 609940138 385228113 694946280 694946280 663556021 187769652 730075108 730075108 798756477 798756477 180102945 213234004 1025732102 1025732102 612632661 991875209 1024457775 1024457775 319568404 37748880 615160796 874575429 874575429 796293875 684791877 127198494 127198494 4719232 4719232 335554054 335554054 280061016 355583282 355583282 345452098 346924672 346924672 282546848 272403490 97609536 51722720 376252210 376252210 110104808 360784402 360784402 27525176 96345960 111413592 111413592 101029928 101029928 125355960 125355960 195695988 229167128 229167128 222482604 244321880 264029933 576981393 653263801 788339485 788339485 423941787 842097478 1025107503 1025107503 710375253 710375253 698364744 120974136 903934530 903934530 823390435 846268595 846268595 637600590 374640670 486852654 1046600744 1046600744 807967867 807967867 890885813 890885813 929341503 929341503 814443431 990849667 990849667 389547834 499770602 499770602 963205100 963328836 963328836 220673088 296498082 296498082 697253199 980690236 980690236 765869664 786579136 786579136 575877777 575877777 409415445 963191341 963191341 711075290 796931000 796931000 131798016 131798016 126485648 163840752 163840752 47387328 171190912 171190912 34603536 34603536 21849664 30722784 30722784 42118336 42118336 46851568 46851568 36498960 124473696 124473696 120511528 120511528 116082352 116082352 120968024 626528665 626528665 700072568 700072568 742966413 742966413 721080795 721080795 567691936 974401672 974401672 707985978 198718208 142002864 393906074 393906074 184730880 276464408 276464408 400891962 400891962 398663928 272281594 161547000 679710729 679710729 237187356 587807678 861831861 861831861 822131729 944184979 944184979 441524503 938582531 938582531 941879559 941879559 137523874 109342160 377488292 377488292 286264740 286264740 178258260 167788634 342558090 342558090 106955160 287818170 287818170 124177432 124177432 109716704 139872904 239198364 239198364 340099610 340099610 431540070 431540070 157421988 157421988 70293324 273471680 407272386 433271526 433271526 408164948 782311424 782311424 716561253 716561253 361040074 361040074 357614250 111074930 347185450 347185450 254100228 254100228 541023009 541023009 15319552 657853952 657853952 122575364 257476284 257476284 264535841 772801053 772801053 254681129 956595245 956595245 615067026 864649465 864649465 583862978 572232273 998642423 998642423 687855488 952234306 952234306 566362708 601686308 630496112 653155925 653155925 614412173 574523689 176966445 142657453 142657453 703090838 916611367 916611367 908600591 538101248 537531393 1020057537 1020057537 621305504 621305504 453115922 259788550 512100414 512100414 489261278 489261278 165421860 983413536 983413536 853283503 853283503 837394637 906495003 906495003 666969314 87296808 87296808 276175746 503798274 503798274 285993728 504087822 504087822 268880896 350782864 350782864 315843458 315843458 312640080 307978368 307978368 272155394 286297747 290429040 526233266 1031883952 1031883952 459858706 199883836 765739424 895762483 895762483 555942037 601222001 601222001 1021740538 1021740538 710199363 390128792 914518622 914518622 677490873 677490873 606322952 757635493 807767077 807767077 16777248 536871686 994043920 994043920 511678392 511678392 151819432 205969548 231918318 274460832 274460832 126147600 299097144 299097144 365580618 365580618 381780170 748222162 748222162 983612790 983612790 895747281 895747281 979911901 979911901 939574659 428441921 843064032 843064032 968991201 968991201 689203539 689203539 900937033 900937033 647229520 1044530248 1044530248 986371287 985135959 985135959 985135959 777203407 56314144 587969977 587969977 210349780 772566405 772566405 639896456 237841692 237841692 109864492 747262529 747262529 587456801 684799808 684799808 151189028 42127440 37883904 738230864 738230864 329423340 740558528 740558528 320854466 320854466 283906864 283906864 34609930 15784704 154066816 233073220 233073220 27876352 54875280 161038852 161038852 680205121 680205121 711925761 711925761 834058399 834058399 948132548 948132548 655659661 655659661 221563692 829179592 947912775 947912775 689179173 689179173 528103195 987833916 987833916 725823669 725823669 702558544 687614951 964955783 964955783 815841603 201930869 621246477 746721357 746721357 302591104 974063624 974063624 949339216 949339216 794804856 794804856 559071488 1777664 59118848 159698320 159698320 191730996 191730996 258540844 258540844 196081172 143675092 103443352 101661720 17294336 161531040 161531040 40834548 7331920 38498498 308907216 979254422 979254422 453133668 453133668 551372508 551372508 236498657 820092928 820092928 820036035 352710162 696772868 819493079 819493079 590785296 541983188 568681393 568681393 561056640 807667712 807667712 807403779 864357009 864357009 853502691 806403136 638978775 638978775 674534018 894961323 894961323 590457541 715662676 1009960043 1009960043 394293918 394293918 14729344 32035218 294233680 321577952 321577952 154789633 456920998 456920998 815367777 984260771 991966655 991966655 624815913 624815913 916075009 916075009 773057058 748168829 625746968 218371792 131711224 131711224 366069696 366069696 119611922 269067282 373571850 373571850 663650489 663650489 309817896 309817896 475984556 475984556 473973832 538839196 979129073 979129073 987008529 987008529 912823019 708233327 475987891 440531654 600359704 1042020231 1042020231 666526070 574630473 574630473 343521216 523498431 964976434 964976434 982903383 982903383 814164712 957975177 957975177 873585195 873585195 1020011590 1049115753 1049115753 847774156 397043574 255706664 356712946 356712946 91661944 91661944 85659992 72878728 72877704 5279755 877827979 877827979 611845891 276717314 540035584 540035584 619725641 810310921 810310921 593419953 65146609 630882368 630882368 627710593 562042200 111804513 72111464 202787734 290462474 494898000 494898000 632586523 632586523 241172124 572965401 572965401 927381115 933086266 933086266 308143547 808242187 835807667 835807667 368235498 368235498 896839889 896839889 175858704 62306068 46847184 301110464 361928306 361928306 540130279 540130279 458109774 458109774 705442723 862205091 959515206 959515206 701663358 2409528 120327480 120327480 59769456 120510728 120924776 431963032 431963032 184955270 174920872 1045857674 1045857674 966996327 966996327 552479910 340988211 419120802 419120802 688423440 723043893 723043893 546358837 546357825 471335550 931239516 931239516 1001693554 1001693554 532982246 532982246 122699808 624047760 624047760 121913472 688065154 977317439 1045415955 1045415955 840012956 840012956 256777404 693192948 1071689649 1071689649 440142219 674025522 729685941 729685941 660080313 660080313 599168833 957533772 957533772 619057504 939971672 939971672 1033422447 1033422447 563060668 935519555 935519555 955878979 955878979 382470264 339316718 175352436 744886857 744886857 475705489 613162321 613162321 143142357 273425965 332073407 943598348 943598348 874462731 874126987 44042312 195332356 195332356 176439612 259263420 1062207872 1062207872 630070281 630070281 689076462 689076462 752576008 962486144 962486144 753136273 937089044 937089044 637587865 637587865 602067441 1027228931 1027228931 399234180 1060348041 1060348041 589364573 670837749 899738899 899738899 649371757 614284825 833882793 833882793 556739562 103622624 268879042 268879042 294071106 294071106 89546568 288469618 288469618 67219728 100312424 100312424 93255296 176127680 227287041 764226669 764226669 630403081 249076460 253498896 253498896 11740697 45872976 603979778 872415243 872415243 276959298 771768464 771768464 202586640 202586640 127216248 127216248 258759040 258759040 268340972 268340972 168643912 832688783 832688783 511343733 616827081 975606870 975606870 891727809 880268845 880268845 569935467 971449291 971449291 946015017 686237344 27077996 380053530 380053530 213891904 389485096 389485096 377632536 70841480 275783872 401666072 401666072 321609104 321609104 367188394 367188394 416182384 416182384 589305557 693241145 693241145 650257037 650257037 538968321 800119803 800119803 665608330 665608330 642439771 814120960 814143555 868356131 949117664 949117664 871444556 706986780 572707089 1007768592 1043932959 1043932959 908633188 119314432 84693008 126358792 126358792 100832000 100832000 50717760 688154666 688154666 554106881 469938190 570934400 575618193 643910145 690793568 821984039 821984039 730010453 559804065 85803145 14914432 14914432 9622080 168171520 181899412 181899412 33698320 250544724 250544724 137376664 298474640 534480762 534480762 197793012 197793012 38013988 315712268 315712268 385986978 558039328 662774601 662774601 584587032 584587032 493998315 493998315 711979892 711979892 555671073 290603586 511289235 779498244 855598881 855598881 1027415512 1027415512 946891297 582409041 940866048 940866048 907559833 907559833 528930942 795049162 827068892 827068892 444596432 353785030 502826442 502826442 278400820 139159772 139159772 132347304 189949108 189949108 178525548 194065696 194065696 402314592 402314592 305282338 305282338 78774242 176431304 247587036 646779034 894834191 894834191 428308570 428308570 167772676 220070960 243868764 243868764 191434812 580827719 812798339 812798339 587709669 986450128 986450128 167897092 436947970 436947970 284372738 170688529 141497009 200815970 672451077 679305504 679305504 972356910 972356910 954080271 954080271 732448637 732448637 919357374 919357374 905971131 905971131 961830322 961830322 892029072 339498801 339498801 539152568 589481891 923321403 923321403 601923848 569641422 564242583 393527564 393527564 677520797 824254755 1000495518 1000495518 1061232831 1061232831 379720026 1010407548 1010407548 739872856 739872856 670183197 670183197 600857897 144741861 12591104 40450624 51602720 51602720 38938770 361847154 361847154 845542019 845542019 1001511257 1001511257 1044390476 1044390476 872415243 872415243 390254778 990370211 990370211 688589838 839672960 839672960 424742104 366291690 392316464 794395338 794395338 777548480 777548480 539569632 587606081 587606081 192429841 139995509 240948536 794414728 794414728 849632952 1025732102 1025732102 303893201 266400696 266400696 514131464 514131464 207104041 615160796 874575429 874575429 796293875 684791877 332526298 862641845 862641845 940863077 940863077 830539548 280061016 355583282 355583282 88076402 346924672 346924672 282546848 118110080 118110080 102610976 118437136 118437136 108779520 128192312 128192312 91619592 83311264 47450144 38797408 38797408 4199616 9049152 100844908 195695988 229167128 229167128 53292336 244321880 244321880 30809796 546114144 805675585 805675585 703424823 597811569 189049285 847905140 847905140 457059895 417242568 68708264 903934530 903934530 823390435 335675720 342065546 342065546 370633457 370633457 1046600744 1046600744 807967867 807967867 890885813 890885813 929341503 929341503 814443431 990849667 990849667 989179867 777443997 346254295 963205100 963328836 963328836 220673088 296498082 296498082 697253199 697253199 350495661 350495661 786579136 786579136 136452156 512482324 512482324 963191341 963191341 711075290 796931000 796931000 105203744 125839520 125839520 144187904 208103812 208103812 171190912 202970908 239413404 239413404 324562753 830794243 830794243 811173955 1044118262 1044118262 968747079 786908384 786908384 673880101 906669096 992668852 992668852 921282971 697664192 697664192 328779109 434668148 434668148 404540934 407407232 434510310 558285488 567691936 567691936 168202400 168202400 57758336 25204736 393906074 393906074 74060040 276464408 276464408 400891962 400891962 398663928 272281594 69951744 679710729 679710729 174455212 587807678 861831861 861831861 822131729 944184979 944184979 441524503 938582531 938582531 941879559 941879559 137523874 133451456 377488292 377488292 177441754 178258260 394069824 394069824 342558090 342558090 227816288 287818170 287818170 39862928 39862928 38109864 51742968 116141484 172083972 189359136 222781600 222781600 462040108 462040108 398846202 117644050 366371340 366371340 354616072 201326604 317888444 317888444 521799403 716561253 716561253 361040074 361040074 335544330 111074930 58810416 58810416 93991461 749904552 749904552 688123941 686363880 804464433 804464433 211628829 257476284 672127072 672127072 772801053 772801053 254681129 834914881 834914881 615067026 824027669 824027669 373892250 621340206 625601065 772557973 772557973 321253042 321253042 566362708 601686308 601686308 653155925 653155925 614412173 574523689 176966445 142657453 142657453 639675838 805348726 1002566818 1002566818 922896539 922896539 285236680 684360046 684360046 640812445 676516485 1042829557 1042829557 270062569 431835366 431835366 919799120 983413536 983413536 294270133 1044910130 1044910130 531182794 385949754 287010432 604452873 958473631 958473631 761470369 792858813 792858813 1016378416 1016378416 12656832 101933584 364904488 364904488 96620728 390780904 390780904 269244160 18121778 553279248 571031747 602128163 1031883952 1031883952 1018847806 144461943 765739424 895762483 895762483 373582654 601222001 601222001 540824241 400836936 400836936 390128792 285811746 277513234 88649946 606322952 606322952 757635493 757635493 437303904 1034068334 1034068334 235256668 235256668 132456288 107822192 151819432 205969548 205969548 88755236 39183056 379985952 379985952 2047488 17202840 377357688 377357688 748222162 748222162 491781253 617069717 617069717 418645062 907024126 907024126 958755197 958755197 843064032 843064032 408964060 408964060 8389120 837462336 837462336 545788928 545788928 1044530248 1044530248 986371287 928776723 928776723 911477403 76090103 56314144 638538172 638538172 256425061 772566405 772566405 639896456 237841692 237841692 200984260 747262529 747262529 587456801 684799808 684799808 134254756 155340852 188928156 738230864 738230864 329423340 340038914 340038914 331989350 460270260 460270260 450355018 376517776 15784704 154066816 233073220 233073220 27876352 27876352 161038852 161038852 680205121 680205121 711925761 711925761 616582121 338163907 948132548 948132548 629578452 220028832 221563692 829179592 947912775 947912775 689179173 689179173 600834444 701048037 701048037 188497089 124337930 354499976 354499976 824382170 824382170 670114809 742169454 942463247 1012843971 1012843971 826076129 974063624 974063624 641694840 576193232 224078344 172297424 104012752 83246272 84411144 84411144 49671376 135188136 137682476 240850444 240850444 196081172 143675092 115793908 165532408 221550728 221550728 214138276 218374532 250439812 250439812 406958915 979254422 979254422 453133668 847832373 847832373 883023889 883023889 835192033 820092928 820036035 160025031 696772868 696772868 32309441 48242992 58984800 286294498 558924576 558924576 807667712 807667712 807403779 323223985 324280400 324280400 139440172 420573474 420573474 674534018 894961323 894961323 794310390 794310390 1009960043 1009960043 702661987 702661987 929224190 929224190 832745936 294233680 294565924 302274068 302274068 403094594 403094594 268668928 2220288 35651904 44163408 45033568 45033568 680040032 680040032 52168192 52168192 75066264 124563440 124563440 117072176 116518928 116518928 103809496 113585920 113585920 77075592 112987992 491404546 491404546 263133074 359772760 474905288 474905288 415810758 256000052 329405876 329405876 393220288 457331184 457331184 377095608 528016608 528016608 435905262 420483216 574630473 574630473 356584992 523498431 878821852 878821852 982903383 982903383 920041490 932119852 932119852 867534656 856550451 937538874 937538874 376439706 263906736 263906736 113931928 119342472 119342472 88790184 86363720 86363720 9592232 105814032 343874056 343874056 376645122 376645122 303112722 540035584 540035584 619725641 641777826 845243840 845243840 124804345 630882368 630882368 627710593 119220016 654083800 654083800 833407184 833407184 367264464 367264464 632586523 632586523 70654728 572965401 822168171 822168171 927499304 927499304 641913250 572707089 652259505 652259505 776791628 776791628 658032441 593703345 593703345 579586192 579586192 964014448 964014448 185359326 540130279 540130279 458109774 458109774 705442723 862205091 959515206 959515206 701663358 777846640 777846640 561124800 769864173 769864173 587647773 431963032 537403398 623510784 623510784 1011352719 1011352719 966996327 966996327 818193792 158288803 182163136 182163136 688423440 723043893 723043893 546358837 549454472 549454472 395436122 395436122 1001693554 1001693554 532982246 532982246 17437960 624047760 624047760 761171621 761171621 679353917 202325004 134883336 51372172 256777404 256777404 221250348 221250348 930367538 930367538 515398456 515398456 265259628 265259628 184855161 642969909 722165292 722165292 603162355 1001916260 1001916260 479740251 268883970 697335948 778305749 778305749 955878979 955878979 824185123 825629475 825629475 744886857 744886857 136191492 613162321 613162321 69862928 237717020 237717020 943598348 943598348 874462731 874126987 630746443 630746443 221095448 941263127 941263127 1062207872 1062207872 942894467 1034687677 1034687677 956806676 956806676 962486144 962486144 920935041 920935041 33850947 260084060 547377328 602067441 695903491 695903491 316212908 687057496 687057496 114651867 260571216 260571216 101541208 101541208 349385472 349385472 92274760 92274760 103622624 119461056 119461056 294071106 294071106 64781168 288469618 288469618 67227904 90341792 93255296 93255296 176127680 176127680 113462116 226504736 226504736 777985700 794728077 794728077 711078469 130118800 603979778 878985377 878985377 872679435 943753396 943753396 131058760 411882586 411882586 513556570 513556570 257731096 449031886 449031886 168643912 1716736 1249280 960931208 960931208 1025804416 1025804416 885287015 807477507 960544904 960544904 986061015 986061015 303798469 105678308 188386110 532469300 532469300 10934592 389485096 389485096 377632536 70841480 396973008 401666072 401666072 294832042 273432208 367188394 430376164 430376164 416182384 281233372 25174816 36905832 620632784 861406329 861406329 410906636 403369648 319105074 593668352 593668352 814120960 814143555 944149508 944149508 993017479 993017479 631373864 547492161 219190792 219190792 495035492 495035492 318843478 318843478 126358792 126358792 121237848 121237848 59815734 688154666 688154666 151099403 469938190 570934400 575618193 575618193 690793568 821984039 821984039 730010453 559804065 625074345 625074345 705692180 705692180 683933413 542932660 34422292 33698320 138412048 138412048 72553834 458438082 458438082 338040180 197793012 197793012 271609480 315712268 315712268 243479686 173688720 121774424 121774424 0 75567180 540016964 671823701 711979892 711979892 555671073 125904084 807874196 807874196 275483927 395461796 517658334 586293277 586293277 547478209 940866048 940866048 907559833 907559833 760032710 883426639 883426639 827068892 444596432 200283188 8388608 253473608 253473608 174541200 174541200 276545294 276545294 100664120 421265946 436342306 436342306 497492036 497492036 410587748 410587748 807646243 837796628 989330391 989330391 974342592 894834191 428308570 428308570 631246883 875274874 924370491 924370491 690551408 580827719 812798339 812798339 587709669 986450128 986450128 167897092 436947970 436947970 319329924 170688529 141497009 200815970 672451077 679305504 679305504 972356910 972356910 954080271 954080271 616698057 616698057 285007651 83886120 50596888 345339656 345339656 892029072 892029072 743500864 743500864 676017468 762740791 994962615 1057744159 1057744159 753925379 564242583 393527564 393527564 677520797 677520797 1000495518 1000495518 1061232831 1061232831 379720026 1010407548 1010407548 588856897 588856897 670183197 670183197 600857897 593342336 587013072 134321296 40450624 19997776 38938770 361847154 361847154 935284347 935284347 601506123 537184257 1044390476 1044390476 952242375 872415243 526522440 262342732 262342732 453132408 453132408 328304848 366664098 366664098 392316464 1018069097 1018069097 777548480 777548480 681241505 587606081 587606081 575280273 747507281 763928521 794414728 794414728 849632952 849632952 438397380 269427225 266400696 266400696 514131464 514131464 207104041 207104041 39446160 208749852 208749852 332526298 332526298 862641845 862641845 940863077 940863077 830539548 76287048 76287048 76287048 1184256 1184256 5636096 67331104 118110080 118110080 102610976 118437136 118437136 108779520 128192312 128192312 126755896 126755896 92671216 71831128 71831128 116975864 116975864 107090328 94825544 178326564 178326564 53292336 209671360 209671360 30066580 546114144 805675585 805675585 703424823 781462345 781462345 847905140 847905140 844276202 844276202 112280312 450466271 811568650 811568650 812572035 812572035 577000466 370633457 370633457 604449425 604449425 426289164 236114460 783421546 891474219 891474219 439976222 913082592 913082592 989179867 989179867 902655304 902655304 894829027 361469960 361469960 86503714 281033320 281033320 347466336 347466336 268790176 268790176 31459688 136452156 136452156 512482324 512482324 449393190 449393190 371600370 371600370 335229208 124977272 126105872 126105872 106807496 208103812 208103812 170629448 202970908 239413404 239413404 324562753 830794243 830794243 811173955 1044118262 1044118262 968747079 786908384 786908384 673880101 906669096 992668852 992668852 921282971 697664192 697664192 588436433 566055600 566055600 680266821 680266821 710811285 811437859 1005516615 1005516615 689213760 689213760 19943956 25204736 25204736 34079888 34079888 84411680 86061064 86061064 84021288 33707312 33707312 69951744 69951744 136579840 136579840 104881840 156675076 156675076 239928340 239928340 67634184 67634184 4853896 71902344 71902344 630799592 630799592 133451456 133451456 99336328 87625768 87625768 394069824 394069824 65555706 227816288 227816288 245186144 245186144 152517156 103896020 77071544 77071544 0 0 477217062 501410672 501410672 462040108 462040108 398846202 117644050 366371340 366371340 121059902 201326604 201326604 954687544 954687544 53064123 48391536 39895440 13681344 13681344 42468432 42468432 52782688 52782688 749904552 749904552 688123941 686363880 804464433 804464433 794101469 794101469 672127072 672127072 313049626 543171560 548931393 548931393 587869716 684009669 809894559 809894559 520576641 621340206 625601065 772557973 772557973 321253042 321253042 165153024 165153024 60600320 580058168 580058168 118477393 189080064 190057140 800148412 800148412 639675838 805348726 1002566818 1002566818 922896539 922896539 1028411041 1028411041 684360046 750305773 750305773 1042829557 1042829557 554983866 139596420 23729568 919799120 919799120 249785515 271225359 1044910130 1044910130 604697600 831878376 831878376 604452873 958473631 958473631 761470369 792858813 792858813 1016378416 1016378416 516470456 355590954 365959010 365959010 347624728 390780904 390780904 302121010 333856819 582405280 582405280 602128163 602128163 1018847806 1018847806 845711409 692883440 895514690 895514690 141986014 387398586 520205028 520205028 839476385 839476385 135382667 984798832 984798832 732452215 377683318 968145866 968145866 956511104 956511104 1034068334 1034068334 980994568 980994568 470872626 395652740 324460080 324460080 273577658 139680512 354962218 379985952 379985952 269090842 17202840 377357688 377357688 563927505 563927505 491781253 617069717 617069717 418645062 907024126 907024126 958755197 958755197 569469420 1038115311 1038115311 170357377 727881547 837462336 837462336 623383404 1015555277 1015555277 1072173817 1072173817 928776723 928776723 1008537796 1008537796 79509303 638538172 638538172 256425061 162010564 68430172 137176068 137176068 147155640 200984260 200984260 164103396 164103396 167817552 171975956 172622500 172622500 188928156 239222784 239222784 354418980 515899614 515899614 331989350 460270260 460270260 511482460 511482460 318339026 80293842 51652968 71434880 224398336 224398336 727850598 727850598 596249712 557847767 849276514 849276514 616582121 341093057 412183040 945267395 945267395 272941280 293865570 692909537 692909537 878797216 878797216 537986913 600834444 701048037 701048037 591597673 662712664 662712664 571738641 824382170 824382170 670114809 742169454 942463247 1012843971 1012843971 826076129 75359269 641694840 641694840 224078344 224078344 562700056 562700056 258719892 258719892 174980804 250796796 250796796 91675732 25740096 45602336 45602336 143631692 251374016 251374016 221550728 221550728 214138276 218374532 250439812 250439812 448874658 736746901 736746901 708864188 847832373 921775609 921775609 883023889 835192033 699714146 614294221 614294221 1032844488 1032844488 883680493 620882113 826411136 855801856 855801856 840088113 840088113 861073441 861073441 576139569 826286243 826286243 655053354 436976311 559100577 559100577 848923418 848923418 794310390 794310390 8437824 8437824 702661987 1017318768 1017318768 929224190 832745936 344133664 344133664 302274068 302274068 403094594 1041870355 1041870355 599511751 601893363 834756787 834756787 841756033 841756033 704666112 704666112 579416832 176491856 64964432 117072176 117072176 70336736 70336736 4229760 16057728 71960136 77075592 903483737 903483737 886211009 886211009 606171810 474905288 810006723 840225435 909150472 909150472 329405876 209801710 457331184 457331184 377095608 96604392 360798288 360798288 545364513 607329032 607329032 629928816 831397571 878821852 878821852 349437747 920041490 920041490 932119852 932119852 814759370 814759370 937538874 937538874 376439706 371926794 272797866 106449816 366008178 366008178 72655880 86363720 86363720 373329938 373329938 343874056 343874056 376645122 376645122 303112722 41132416 41132416 541174032 641777826 845243840 845243840 124804345 594713528 594713528 541464489 119220016 654083800 654083800 833407184 833407184 335971810 383682434 383682434 115865658 317192658 563220952 822168171 822168171 821489841 641913250 641913250 572707089 652259505 652259505 776791628 776791628 658032441 593703345 593703345 579586192 579586192 964014448 964014448 17115168 268624112 988961634 988961634 766454841 766454841 75924133 35462976 32032224 117997092 824228653 824228653 815193635 1007155215 1007155215 835139105 835139105 679090068 623510784 623510784 1011352719 1011352719 1005215866 818193792 962358004 962358004 268633765 69624464 569559476 706352661 706352661 638767641 741894224 741894224 516177606 301992715 789090050 966266838 966266838 829770427 1059107363 1059107363 808338632 808338632 986291920 986291920 818496720 860305656 860305656 683672027 683672027 837364606 837364606 930367538 930367538 515398456 515398456 265259628 265259628 769786929 769786929 763865583 763865583 957120546 1001916260 1001916260 763627595 710066212 697335948 907428186 907428186 238027548 823134464 824185123 825629475 825629475 779003649 701898229 136191492 753733660 753733660 344048100 344048100 615588681 615588681 621019185 621019185 553783813 630746443 630746443 730324262 984465428 984465428 803643675 942894467 942894467 1034687677 1034687677 956806676 956806676 585704913 607001865 920935041 920935041 759480554 640204944 805942369 805942369 115921089 501355353 501355353 61888340 839362593 839362593 687865893 687865893 809296269 809296269 630508451 630508451 834849928 834849928 316129042 275473560 119461056 106192656 130041272 130041272 97034728 124991400 124991400 105916032 479281306 479281306 106379928 490944649 844235423 890452123 890452123 803200708 978549341 978549341 711078469 130118800 623517512 878985377 878985377 872679435 943753396 943753396 700106664 700106664 672601524 513556570 513556570 257731096 449031886 449031886 370529437 710860437 710860437 1012492705 1012492705 1025804416 1025804416 885287015 807477507 960544904 960544904 986061015 1023805260 1023805260 712482572 604922413 532469300 532469300 524041086 414063942 163085106 85169320 85169320 396973008 396973008 132940216 273432208 273432208 38810096 430376164 430376164 237060296 573914097 645474201 645474201 620632784 861406329 1041825940 1041825940 768154775 690604409 772612985 772612985 719796693 44481765 944149508 944149508 993017479 993017479 412380693 412380693 937667214 1030656821 1030656821 677614950 318843478 318843478 134221092 186893968 186893968 159070116 59815734 554836004 813727777 813727777 999960640 999960640 866098922 866098922 410082931 757159228 757159228 727996721 727996721 680399152 625074345 705692180 705692180 683933413 542932660 172635796 172635796 88410670 88410670 72553834 458438082 458438082 338040180 188879028 280544370 280544370 271609480 102969624 336123282 336123282 121774424 121774424 613622656 613622656 608495752 671823701 671823701 633612684 650677317 650677317 807874196 807874196 637927692 650825880 653399001 653399001 586293277 216842585 675599104 675599104 638339483 638339483 760032710 883426639 883426639 679621836 443698166 504401822 504401822 350320908 350320908 174541200 174541200 276545294 276545294 50728504 421265946 436342306 436342306 497492036 497492036 410587748 454624472 807646243 837796628 989330391 989330391 974342592 362542698 315803350 317329912 631246883 875274874 924370491 924370491 690551408 333309636 333309636 166622180 309495618 309495618 322210624 428239218 428239218 319329924 319329924 139084850 1049088 5772288 5772288 16778432 25165920 88802820 223556268 223556268 147260656 142190380 531948724 531948724 757106042 757106042 621070377 410207852 410207852 810265370 810265370 743500864 676017468 762740791 994962615 1057744159 1057744159 753925379 438403075 641816498 641816498 576714904 522205684 868471056 939802675 939802675 335577543 201592712 745639480 745639480 588856897 588856897 588144761 588144761 593342336 703510977 703510977 692062496 679495941 564445541 587223445 1061925589 1061925589 935284347 935284347 601506123 537184257 773919131 952242375 952242375 654587928 654587928 553857057 262342732 453132408 465980214 465980214 366664098 366664098 96956704 1018069097 1018069097 765547824 765547824 681241505 249937873 574499772 575280273 747507281 763928521 763928521 596754683 814008387 814008387 438397380 480603848 480603848 167854084 167854084 336396292 336396292 335571106 96051942 1047855824 1047855824 1024821351 53028144 388017730 388017730 694419893 694419893 809500803 809500803 755631287 637669401 534386527 306756672 306756672 625227008 625227008 560140800 172892432 156664864 49437024 104064960 115423816 115423816 126755896 126755896 92671216 71831128 71831128 116975864 116975864 107090328 94825544 84357352 46346448 38327584 209671360 209671360 581224785 705950145 719966360 719966360 667831810 781462345 781462345 1064304791 1064304791 844276202 844276202 961898565 961898565 811568650 811568650 812572035 812572035 577000466 343963928 309818348 500113598 500113598 629576001 629576001 1055291558 1055291558 891474219 1005151264 1005151264 913082592 488738794 488738794 902655304 902655304 894829027 361457728 361457728 86543720 281033320 281033320 85395682 29761824 268790176 341619600 341619600 103363922 89822592 75161896 43978504 55575216 55575216 122103856 122103856 124977272 124977272 126105872 126105872 2696448 63441392 113601600 113601600 113641928 113641928 46137480 45747776 45747776 132992 3277824 40506352 40506352 60821520 60821520 48825616 12656832 33764688 34283552 34283552 50471968 200793364 588436433 588436433 566055600 566055600 680266821 680266821 710811285 811437859 1005516615 1005516615 689213760 689213760 66525296 172513962 455658938 455658938 518541104 518541104 490265018 379793754 379793754 296581176 67251208 605051668 605051668 538988804 709195197 709195197 240784958 289407138 289407138 268698770 268698770 105003024 812657443 812657443 834144099 834144099 640156282 291643520 291643520 139583692 479917472 479917472 321660200 321660200 69932506 175768728 347655252 347655252 245186144 191939508 139961280 139961280 157319976 157319976 172016388 477217062 501410672 501410672 431806460 526531386 526531386 491088132 491088132 535026590 535026590 493071312 493071312 954687544 954687544 53064123 48391536 39895440 13681344 13681344 42468432 42468432 34280640 44915271 959293570 959293570 948361287 681999168 278346306 272761642 794101469 794101469 191000796 342475691 1017897097 1017897097 548931393 548931393 810100399 1045430943 1045430943 809894559 520576641 86696278 413966666 413966666 208700164 173541236 200279312 562684676 562684676 538759172 648996764 655315333 655315333 606002697 235455516 800148412 800148412 621021225 703611064 703611064 228712544 228712544 830413200 1028411041 1028411041 568070470 750305773 750305773 1042384965 1042384965 916015304 663020617 663020617 873698080 873698080 363930474 373455673 802223952 802223952 604697600 831878376 831878376 302383234 286654736 288494370 288494370 286137378 319162528 330091692 516470456 516470456 355590954 365959010 365959010 347624728 57184296 47241040 302121010 333856819 815797395 815797395 323096656 835571878 835571878 974024466 974024466 692883440 895514690 895514690 829389415 801158195 228965302 1014084215 1014084215 999515023 914790602 984798832 984798832 732452215 754148420 968145866 968145866 956511104 956511104 774080778 774080778 980994568 980994568 498101612 395652740 324460080 324460080 306606762 139680512 354962218 354962218 387539322 387539322 326388864 363121002 363121002 364435736 364435736 310480024 290253824 290253824 52047360 52047360 348287900 355050314 355050314 452178177 1038115311 1038115311 483737980 727881547 727881547 635185067 1024421914 1024421914 1015555277 1072173817 1072173817 158270754 151519264 1008537796 1008537796 612887625 927007936 927007936 586227800 586227800 43527568 43527568 63213280 63213280 119711288 119711288 53219600 106995240 106995240 186926789 264293635 412404294 467025923 859967667 859967667 987007695 987007695 636526561 636526561 454854462 886553357 886553357 511482460 318339026 80293842 51652968 71434880 224398336 224398336 727850598 727850598 596249712 557847767 849276514 849276514 720388425 631822514 810443933 954339745 954339745 893912235 840469200 840469200 356540640 878797216 878797216 283214745 689146116 689146116 591597673 591597673 662712664 662712664 571738641 583344832 583344832 118087068 744156849 744156849 680266049 749996877 749996877 160006509 598700085 598700085 622792268 622792268 595925040 562700056 258719892 509962438 509962438 250796796 291865186 291865186 54939568 104722408 104722408 343244722 343244722 251374016 291568514 291568514 60822672 40400064 31717504 31717504 448874658 453481300 453481300 708864188 708864188 921775609 921775609 880110363 699714146 699714146 614294221 972199428 1032844488 1032844488 883680493 620882113 826411136 855801856 855801856 840088113 840088113 861073441 861073441 730409589 826286243 826286243 655053354 523241626 740919813 851157664 851157664 848923418 556348020 963443955 1017639787 1017639787 592309425 1017318768 1017318768 184882760 185181338 344133664 344133664 218484088 218484088 512272714 1041870355 1041870355 679831308 679831308 834756787 834756787 841756033 841756033 704666112 704666112 579416832 176491856 99036520 106079344 106079344 342931433 342931433 337643874 337643874 609414723 609414723 903483737 903483737 886211009 886211009 1005812096 1005812096 810006723 840225435 909150472 909150472 304239888 103293066 36323328 287867152 287867152 102521906 360798288 360798288 545364513 607329032 607329032 920272642 920272642 831397571 914475729 914475729 914407571 914407571 888488000 386072840 666820848 666820848 917594674 917594674 371926794 371926794 272797866 106449816 366008178 366008178 24384664 58629768 58629768 373329938 373329938 305961744 305961744 304615186 304615186 1842448 269883394 269883394 580180560 580180560 856736737 856736737 16878224 103425280 103425280 100872216 98429640 108037376 124340554 390104106 390104106 360542106 383682434 907877027 907877027 385952426 352395306 841261915 841261915 815792353 602062904 388155954 676262823 676262823 41442433 591144225 591144225 686164772 686164772 649463537 649463537 123945064 230863288 525817642 525817642 369416354 988961634 988961634 766454841 766454841 830942979 954928918 954928918 714468356 824228653 824228653 815193635 1007155215 1007155215 1055855565 1055855565 679090068 539345040 843108305 915981915 1005215866 1005215866 751563981 962358004 962358004 802883240 802883240 569559476 706352661 706352661 898863728 898863728 741894224 516177606 301992715 789090050 966266838 966266838 829770427 1059107363 1059107363 808338632 808338632 986291920 986291920 818496720 860305656 860305656 683672027 683672027 837364606 837364606 718317363 542113920 542113920 742936653 742936653 403267672 973254751 973254751 931578532 1054218975 1054218975 957120546 763627595 772595372 772595372 627575327 907428186 907428186 238027548 616259823 632883640 632883640 779003649 779003649 745701953 68207112 753733660 753733660 415236294 415236294 615588681 615588681 621019185 621019185 553783813 553783813 268521552 730324262 984465428 984465428 656043137 656043137 641246240 651233064 651233064 565681248 948553136 948553136 550114986 895596299 895596299 759480554 951092372 951092372 972606091 972606091 580960593 731155236 731155236 839362593 839362593 946850700 946850700 949213185 949213185 630508451 630508451 834849928 834849928 390836602 312666200 130303952 94136040 130041272 130041272 97034728 168522956 168522956 105916032 479281306 479281306 243533916 490944649 844235423 890452123 890452123 803200708 978549341 978549341 810254491 810254491 811996073 811996073 628234627 81838536 109070912 581619280 700106664 700106664 672601524 102029324 133447664 133447664 236604996 290689712 370529437 710860437 710860437 1012492705 1012492705 956327214 956327214 392642745 1036315944 1036315944 886900130 881765984 1023805260 1023805260 712482572 983085722 983085722 899391618 524041086 414063942 163085106 85169320 85169320 100663448 116683672 116683672 323640016 323640016 969533058 969533058 620875172 756701066 756701066 707283205 707283205 565453485 788602941 1041825940 1041825940 768154775 690604409 772612985 772612985 719796693 44481765 805466176 805466176 573679171 318413403 1042084742 1042084742 937667214 1030656821 1030656821 677614950 204157704 134221092 134221092 186893968 186893968 159070116 201333384 612291330 813727777 813727777 999960640 999960640 923052194 923052194 773852657 757159228 757159228 727996721 727996721 680399152 105244824 90237200 60313184 198836324 293201830 421897670 421897670 233017098 233017098 502392484 502392484 418751728 418751728 210046148 280544370 697256557 697256557 183423408 652993873 652993873 640828992 640828992 613622656 657507501 657507501 608495752 784859420 784859420 1068057353 1068057353 729851766 722306328 637927692 650825880 974193812 974193812 584855763 524602829 675599104 675599104 203823372 203823372 143006124 214883532 458260950 458260950 443698166 504401822 504401822 350320908 350320908 77962976 47760436 67635240 67635240 18746504 39191720 39191720 80005320 334513056 334513056 511348160 511348160 454624472 212048796 212048796 290775952 362542698 362542698 315803350 317329912 317329912 239286662 21681312 23090432 269910992 333309636 333309636 316146898 316146898 326835122 326835122 428239218 428239218 276975906 269331456 729187125 729187125 690261299 732090853 732090853 731153232 1020004358 1020004358 887100659 887100659 755553333 661161233 635701344 757106042 757106042 621070377 693330372 693330372 810265370 810265370 538753271 570898167 690404504 1008914703 1008914703 658692121 658692121 438403075 641816498 641816498 576714904 819135758 819135758 805324904 805324904 348515840 768298848 901241389 901241389 756873057 754320317 588144761 671974634 671974634 956832978 956832978 692062496 679495941 807668034 807668034 1061925589 1061925589 444341546 444341546 211146314 188748044 253886836 644233480 656488561 656488561 654587928 604150304 203897100 424806806 465980214 465980214 248298944 300828192 300828192 281026848 281026848 64486128 64486128 59243472 109699032 591580368 593419953 593419953 106350177 93406336 98163016 98163016 751988560 929090858 929090858 924928918 924928918 492045374 471075056 471075056 335571106 199991210 1047855824 1047855824 1024821351 1020806732 1020806732 1065689674 1065689674 694419893 809500803 809500803 755631287 637669401 534386527 306756672 306756672 625227008 625227008 560140800 172892432 156664864 49437024 104064960 104064960 89836848 96337904 96337904 115752688 115752688 58764496 58764496 52687152 52687152 53093856 53093856 118099424 118099424 188142960 194399441 581224785 705950145 719966360 719966360 534539943 276729209 567352569 1064304791 1064304791 545784897 145434437 961898565 961898565 430175558 271704834 64888560 87159104 291803784 291803784 114982552 83840368 155479445 629576001 660519482 1055291558 1055291558 837102051 1005151264 1005151264 893387933 893387933 859977161 643770850 1025770425 1025770425 949373788 949373788 86543720 86543720 285223432 353708586 353708586 349421472 349421472 341619600 103363922 61601136 121376624 121376624 92540536 113053392 122103856 122103856 50409640 33819056 110526520 110526520 103235376 117059904 117059904 111149056 113641928 113641928 102197952 313453121 834594179 834594179 828110499 1036792774 1036792774 993662775 788207776 788207776 703994853 909802344 991278852 991278852 884926191 712689580 417657956 182644980 155312128 155312128 984301747 984301747 977746071 311278967 332423698 598345989 598345989 542052641 538844929 687911040 770829153 954565550 954565550 518541104 490265018 379793754 379793754 296581176 67251208 605051668 605051668 538988804 709195197 709195197 255657272 289407138 289407138 268698770 268698770 105003024 812657443 812657443 834144099 856371257 856371257 895485585 895485585 795151164 1026828732 1026828732 1057295150 1057295150 761669694 261104256 347655252 347655252 191939508 191939508 187752464 187752464 173606848 174149668 174149668 179898176 179898176 152736940 154690850 526531386 526531386 491088132 491088132 535026590 535026590 493071312 493071312 914581924 958812903 958812903 721066359 684365093 692923557 727167653 727167653 726262965 491587307 730118400 959293570 959293570 948361287 681999168 278346306 11146560 134415424 698467372 698467372 342475691 1017897097 1060448983 1060448983 958871847 810100399 1045430943 1045430943 965416464 386011194 251662342 334503670 334503670 208700164 173541236 271589392 562684676 562684676 538759172 648996764 655315333 655315333 606002697 235455516 742450620 742450620 621021225 703611064 703611064 228712544 228712544 830413200 830413200 490772936 490772936 351273930 460394114 460394114 916015304 916015304 663020617 663020617 873698080 873698080 550047837 550047837 373455673 53195017 319354043 319354043 302383234 537270273 889459001 889459001 842548227 842548227 807284481 807284481 589777456 10459776 11963904 13421760 98994720 98994720 18144424 10884416 50879664 268492034 815797395 815797395 305428307 835571878 835571878 974024466 974024466 164030576 552724454 829389415 829389415 801158195 909803806 1014084215 1014084215 999515023 914790602 914790602 778058846 202072456 754148420 754148420 503144259 152228388 372870436 774080778 774080778 738246669 725446420 498101612 335619124 329558162 329558162 306606762 254871590 327246408 327246408 387539322 387539322 346329648 363121002 363121002 119539962 260343548 260343548 18664992 235431942 235431942 264393404 348287900 348287900 243527706 380772435 864108925 864108925 817895627 857125662 857125662 850989411 1024421914 1024421914 720098647 867410644 867410644 158270754 130185568 550326592 612887625 612887625 927007936 927007936 586227800 586227800 42017624 46692800 46692800 36699408 119711288 119711288 53219600 121782576 121782576 186926789 264293635 412404294 467025923 859967667 859967667 987007695 987007695 636526561 636526561 454854462 886553357 886553357 519387652 29958584 226325520 226325520 222343944 222343944 73956132 39168656 39168656 140462946 421012514 421012514 720388425 720388425 631822514 810443933 954339745 954339745 893912235 840469200 840469200 356540640 635527618 635527618 203872524 689146116 689146116 240257328 240257328 3213368 3283200 38935440 578226705 578226705 268003348 744156849 744156849 680266049 749996877 749996877 160006509 598700085 598700085 622792268 622792268 595925040 134099776 44829472 509962438 509962438 164321724 291865186 291865186 54939568 159012976 159012976 343244722 343244722 17901696 291568514 291568514 25826368 33020576 33020576 24699584 171185184 453481300 453481300 448719894 59525146 570763264 570763264 570425361 9249361 134742016 134743044 972199428 972199428 833110503 833095011 74380498 692910114 994228636 994228636 973554055 537076128 537076128 730409589 730409589 49768896 474371084 474371084 523241626 740919813 851157664 1015862366 1036177647 1053349587 1053349587 1017639787 1017639787 592309425 354749704 366559272 366559272 349192384 349192384 279869478 218484088 253765712 512272714 512272714 262211956 679831308 679831308 572000005 623256140 623256140 135325776 59575808 104937544 117709768 117709768 99036520 101966816 106066664 342931433 342931433 337643874 337643874 609414723 609414723 606452952 606452952 264930933 107139480 1005812096 1005812096 466025180 466025180 504809810 504809810 304239888 321373554 321373554 287867152 287867152 412825158 412825158 353138282 84403308 337651088 373892250 920272642 920272642 542833522 914475729 914475729 914407571 914407571 888488000 386072840 336663088 580926802 580926802 282338624 39379011 74161088 74161088 71057408 40259984 40259984 108953728 108953728 33740312 0 321416704 321416704 856240177 856240177 554638371 303567393 303567393 269883394 580180560 580180560 856736737 856736737 602170993 578577697 554870145 611974369 656229824 656229824 124340554 390104106 390104106 360542106 350039754 907877027 907877027 385952426 620923568 891339051 891339051 993186615 993186615 889356314 889356314 722477620 777325102 777325102 970549991 970549991 686164772 845954596 845954596 595591281 595591281 545394708 525817642 743717417 743717417 760617645 760617645 683417890 830942979 954928918 954928918 714468356 51947688 680046594 680046594 498859335 887769550 1055855565 1055855565 236698669 539345040 843108305 915981915 915981915 708259988 519638550 798409467 798409467 802883240 802883240 630359898 630359898 540631874 898863728 898863728 850469699 373398466 623664152 623664152 640208040 640208040 867582066 867582066 834343216 813303744 1043879695 1043879695 847298643 348213344 344998418 363336546 363336546 77717590 144275524 144275524 65147376 542113920 542113920 742936653 742936653 511079618 973254751 973254751 931578532 1054218975 1054218975 827497570 622716835 772595372 772595372 627575327 674357900 674357900 471149368 616259823 616259823 471004000 471004000 745701953 745701953 244907472 548162121 548162121 415236294 415236294 337095460 337095460 237133764 412226118 697066580 697066580 176786533 100918384 100918384 558158112 656043137 656043137 620249352 733428953 733428953 565681248 948553136 948553136 550114986 895596299 895596299 323637552 951092372 951092372 972606091 972606091 580960593 836438264 908017179 908017179 416598094 946850700 946850700 949213185 949213185 351273928 351273928 340394826 390836602 390836602 312666200 130303952 49350904 80843451 609944569 645515051 645515051 477755229 477755229 973529291 973529291 939860383 650765529 276175746 1009795610 1041258632 1041258632 892232962 892232962 810254491 810254491 811996073 865260867 865260867 996933842 996933842 581619280 581619280 125244377 105538640 177597972 419220038 419220038 418967526 236604996 274105920 281992386 429554222 429554222 855959808 956327214 956327214 761246001 1036315944 1036315944 295911826 881765984 911965569 911965569 582673157 983085722 983085722 899391618 64149152 353601122 353601122 269702808 269645344 280055952 307063760 307063760 323640016 323640016 969533058 969533058 620875172 756701066 756701066 707283205 707283205 565453485 788602941 1004054533 1004054533 734010992 734010992 947949604 947949604 830656611 453034038 805466176 805466176 573679171 318413403 1042084742 1042084742 311706782 311706782 388194826 531966846 531966846 280498534 215314934 215314934 235207900 235207900 246678114 612291330 741872994 741872994 907215898 907215898 923052194 923052194 773852657 651740889 719381896 719381896 637698205 560536032 105244824 90237200 60313184 60313184 293201830 421897670 421897670 233017098 233017098 502392484 502392484 418751728 418751728 268656802 210046148 697256557 697256557 183423408 652993873 657244272 657244272 640828992 607871712 657507501 659166344 659166344 784859420 784859420 1068057353 1068057353 729851766 640494873 640494873 523568299 974193812 974193812 584855763 524602829 777556374 777556374 442648221 203823372 143006124 214883532 214883532 134426228 134426228 253356208 253356208 63314160 63314160 112348204 265373952 404994490 404994490 191241508 288489766 388636186 388636186 407663220 465793222 511348160 511348160 507728584 515243644 515243644 389277954 186281088 496609916 496609916 285806696 285806696 355009578 357252682 357252682 69986978 69986978 326866464 326866464 316146898 326835122 326835122 327155826 327155826 276975906 320950720 729187125 729187125 690261299 732090853 732090853 731153232 1020004358 1020004358 887100659 887100659 755553333 1005609237 1005609237 738986456 738986456 884823822 884823822 738815553 51787921 239195301 404425810 744963708 744963708 1008914703 1008914703 658692121 658692121 237242632 337647360 455606636 547736447 819135758 819135758 694818213 749752337 749752337 891642734 901241389 901241389 756873057 754320317 679993796 679993796 671974634 956832978 960844736 968358759 968358759 807668034 807668034 8913984 162857374 852885526 852885526 815423205 692696601 253886836 644233480 656488561 656488561 604150304 879170711 879170711 619241976 864473438 864473438 273040968 300828192 300828192 1021783201 1021783201 414579618 380438300 380438300 728030868 728030868 593419953 608773096 608773096 511468253 658558310 658558310 751988560 929090858 929090858 924928918 924928918 831548492 471075056 471075056 758092205 758092205 1012497868 1012497868 960612057 1020806732 1020806732 1065689674 1065689674 952841346 472384782 757497962 757497962 613342281 475562115 432921222 432921222 151858212 155461888 155461888 57681312 57681312 43695840 95690664 95690664 89836848 96337904 96337904 115752688 115752688 104682984 104682984 70028696 72177216 78782720 78782720 118099424 118099424 115487200 103437488 103437488 46401552 46401552 33590464 17640480 999381112 999381112 555529608 611895177 611895177 145434437 278451234 822285346 855744865 971060551 971060551 870620563 455936165 332091632 332091632 315374162 315374162 357940806 660519482 934877797 934877797 970199180 970199180 512760515 893387933 893387933 859977161 643296603 1025770425 1025770425 949373788 949373788 335839306 469805606 469805606 481598304 481598304 410378818 349421472 313149186 313149186 301652784 121376624 121376624 119013928 119013928 113053392 86122496 84672856 84672856 129239640 129239640 103235376 117059904 117059904 92295680 69601472 83302928 102197952 313453121 834594179 834594179 828110499 1036792774 1036792774 993662775 788207776 788207776 703994853 909802344 991278852 991278852 884926191 712689580 417657956 182644980 155312128 595717472 984301747 984301747 977746071 311278967 311278967 598345989 598345989 542052641 538844929 687911040 770829153 954565550 954565550 459475576 163745970 134213624 316033808 316033808 293484432 925894404 925894404 874011932 206834180 824477451 824477451 470139298 470139298 201995928 590158472 594912386 1012594742 1012594742 982602903 856371257 856371257 895485585 895485585 795151164 1026828732 1026828732 1057295150 1057295150 761669694 381702202 381702202 335679498 289944628 138547988 187752464 187752464 173606848 174149668 174149668 179898176 205043600 205043600 126071388 100753976 104980632 337955328 338690826 347247498 351323082 351323082 371840074 914581924 958812903 958812903 721066359 685840845 721678389 765494429 765494429 726262965 491587307 730118400 730118400 1028517039 1028517039 837813219 1026331585 1026331585 614208388 701205447 701205447 1033376622 1033376622 1060448983 1060448983 959152423 959152423 952107207 965416464 965416464 386011194 251662342 758127695 758127695 368975850 316574032 707840161 707840161 320203314 319595584 109358804 70258176 70258176 69995784 3806976 42499840 129270352 129270352 118663688 3611944 25966000 25966000 840637152 840637152 44714595 24134400 3179424 131120 173178880 554091015 554091015 843589762 843589762 575014065 671277319 671277319 742915080 880068481 880068481 356805296 356805296 336278074 537270273 889459001 889459001 842548227 842548227 824445219 807284481 589777456 60295200 104898928 104898928 98994720 102237528 102237528 54039480 53235760 53235760 323244402 323244402 271722514 271722514 8964160 131833544 131833544 164030576 619518904 810474627 810474627 372514761 909803806 909803806 923982669 923982669 570491513 331402978 331402978 454970032 454970032 38871696 43990336 43990336 248140876 736428424 736428424 467765453 335814672 335619124 335619124 329558162 329558162 285526050 254871590 285453840 285453840 90716322 346329648 346329648 55749066 8513536 368845450 368845450 246132604 128810828 365960722 365960722 264393404 317883078 317883078 289695844 610547476 928650939 928650939 817895627 857125662 857125662 979376369 979376369 958785831 958785831 867410644 867410644 130185568 880722219 880722219 360554475 360554475 271642112 72417928 75826832 75826832 75525424 121603128 121603128 605910465 605910465 48524624 608192537 608192537 579519184 545938949 179044409 261885564 602428923 602428923 332593302 1017611043 1017611043 361988664 329797240 329797240 317564890 519387652 519387652 29958584 226325520 226325520 222343944 763662453 763662453 730570101 55856738 722994741 722994741 559100577 809633702 809633702 294320118 275701122 275701122 247777500 369393862 828265056 828265056 353583744 82176456 83073952 83073952 89314056 89314056 51849736 51849736 57958832 57958832 50718976 103025472 111753920 268003348 268003348 125690088 55559520 97706304 134759112 590013937 590013937 189478200 217256508 252511056 252511056 147194988 658703793 1027561207 1027561207 644274585 892237695 892237695 772326429 738755788 159012976 154137984 191753652 191753652 188345780 187747344 39018576 38479424 47390416 47731330 270828609 552864705 552864705 552602433 377523065 570763264 570763264 570425361 273278786 167814208 881365848 881365848 624910955 624910955 397534249 112370274 822610080 994228636 994228636 973554055 809631744 301992065 271587856 34746626 1523200 89841208 89841208 68306592 306119615 1003676983 1015862366 1036177647 1053349587 1053349587 952856178 244098549 173120368 187730404 366559272 366559272 349192384 349192384 246531796 246531796 253765712 253765712 249830736 0 0 0 33554432 33824832 135325776 135325776 85135120 85135120 38928736 38928736 95144512 95144512 106066664 106066664 27837256 67108872 67108872 76546624 233794340 606452952 606452952 264930933 294915840 582875328 582875328 725157151 975824151 975824151 835526992 293644288 321373554 321373554 36321496 142295902 412825158 412825158 353138282 646385645 646385645 742113862 742113862 681969863 542833522 828093056 828093056 877936736 877936736 822733762 822733762 313259346 580926802 580926802 288574730 309362816 309362816 303902226 102075282 371720840 371720840 371460378 307091208 342599440 342599440 325915656 325915656 856240177 856240177 554638371 324535298 320340498 53872162 20571936 541140864 655962041 655962041 602170993 676400140 676400140 676195461 656229824 656229824 246658372 246658372 222876688 222876688 338394408 892814858 892814858 90257946 620923568 891339051 891339051 993186615 993186615 889356314 890796306 890796306 888743691 1061702738 1061702738 970549991 433171822 845954596 845954596 595591281 595591281 545394708 180451432 743717417 743717417 760617645 760617645 679037964 77784304 43242624 38157120 168200196 51947688 88426032 172429448 247212444 617728212 617728212 340888065 105905304 565131769 865039984 865039984 816058774 816058774 519638550 519638550 403441364 195108872 195108872 630359898 630359898 540631874 540631874 850469699 850469699 373398466 623664152 623664152 656797873 656797873 897721497 897721497 357168480 813303744 1043879695 1043879695 847298643 589276059 417392687 363336546 538830341 538830341 569864376 817439621 817439621 331740417 331740417 281200848 302389266 511079618 511079618 901592443 901592443 627376529 828861186 828861186 622716835 357440682 419446794 419446794 520456990 520456990 471149368 319990458 491838256 491838256 471004000 230785524 244907472 244907472 221775660 135267624 341648396 521478479 625447463 625447463 563192255 870146659 914840104 914840104 230752416 1061212300 1061212300 595973402 411469680 246826097 550837473 733428953 733428953 631427433 631427433 562726152 432390224 432390224 428033176 323637552 323637552 311973346 231265176 231265176 43440720 836438264 908017179 908017179 129250859 78644040 67114496 552076752 552076752 304352600 127666762 112198432 93062712 52158304 52158304 125213232 131598528 131598528 609944569 645515051 645515051 477755229 477755229 973529291 973529291 939860383 650765529 559974916 1009795610 1041258632 1041258632 588773937 369221658 639713306 639713306 613290568 865260867 865260867 996933842 996933842 736711816 1056953543 1056953543 639573744 187187096 419220038 419220038 482910412 482910412 67113160 167514084 363599726 363599726 855959808 855959808 761246001 761246001 608748681 544066313 702139568 702139568 539281665 539281665 318785843 300174864 396001938 396001938 336135136 353601122 353601122 269702808 269645344 290030416 362221168 362221168 385427418 385427418 318922322 573129572 573129572 523297368 536942062 536942062 209509337 227606588 227606588 1004054533 1004054533 734010992 1029209161 1029209161 947949604 830656611 960022311 960022311 836520881 880593531 880593531 709699422 314199704 438142484 438142484 388194826 531966846 531966846 280498534 237020496 230895852 235207900 235207900 268863744 831308526 831308526 428138091 591556912 704856217 725737653 725737653 606399661 706956565 706956565 104428041 17403232 17403232 18098208 32825904 43287520 66139008 66139008 158105924 162089224 337722594 349835118 349835118 397569602 446829552 446829552 457775616 457775616 205121940 259890952 259890952 220200492 657244272 743542929 756672045 756672045 210433633 659166344 659166344 703627764 703627764 574735273 475538789 587287154 640494873 735322247 735322247 492947582 492947582 149514081 184729484 1042281810 1042281810 940123143 940123143 421822726 421822726 766565692 766565692 793731356 793731356 558852841 97068264 130217168 616940140 689211589 711080224 711080224 191241508 288489766 388636186 388636186 407663220 465793222 510870416 510870416 507728584 515243644 515243644 389277954 186281088 496609916 496609916 285806696 285806696 355009578 357252682 357252682 134352900 69986978 326866464 326866464 24133266 6292736 319889984 327155826 327155826 323625232 320950720 320950720 282820272 282820272 39062016 51645504 51645504 38312064 206578892 222872748 222872748 522830676 1023968001 1023968001 1006724237 1006724237 898842735 884823822 738815553 143473709 671807554 671807554 744963708 915851841 915851841 891164849 887173569 826353667 810488872 537792700 640032172 640032172 803934008 803934008 149033412 749752337 749752337 891642734 891642734 750204184 731864689 731864689 945717656 945717656 417428452 417428452 960844736 968358759 968358759 562958400 562958400 330703121 758920137 932132573 932132573 815423205 692696601 302745778 193122420 520154134 520154134 1042449458 1042449458 879170711 619241976 864473438 864473438 273040968 279230402 279230402 1021783201 1021783201 414579618 380438300 380438300 728030868 898313322 898313322 608773096 608773096 988562405 988562405 658558310 671307006 671307006 640842643 640842643 831548492 831548492 352183872 417808559 758092205 758092205 832411586 832411586 92922984 620837396 715128405 715128405 952841346 952841346 487473582 962648228 962648228 810075267 475562115 1006011555 1006011555 973106130 973106130 829164320 188221236 170135072 43695840 85058096 85058096 71811072 83935272 83935272 67366920 93317896 104682984 104682984 131071224 131071224 101663240 78782720 35651856 33554688 42665344 42665344 585576593 585576593 273023465 897374600 897374600 999381112 999381112 556692734 611895177 671179844 671179844 622634021 822285346 855744865 971060551 971060551 870620563 455936165 332091632 332091632 315374162 315374162 109254792 738104736 738104736 719911797 970199180 970199180 512760515 810025024 990263694 990263694 643296603 747525231 861219507 861219507 758236148 335839306 469805606 469805606 481598304 481598304 410378818 271218624 313149186 313149186 301652784 110104336 110104336 119013928 119013928 79181160 61540712 84672856 84672856 131730016 131730016 63307792 64228080 64228080 32637072 7213312 7213312 726400 25696320 25696320 8782944 17012608 44319056 44319056 32604352 32604352 30325184 30325184 26004768 26004768 63147632 138293028 175236644 343044766 343044766 176443476 595717472 595717472 573171057 161801536 661996412 661996412 95964049 48506768 48506768 2361600 2099200 0 225454532 459475576 459475576 163745970 134213624 316033808 316033808 293484432 925894404 925894404 874011932 206834180 824477451 824477451 605166869 605166869 198030276 657906732 657906732 1012594742 1012594742 982602903 839435929 839435929 388498746 388498746 356518568 876770222 876770222 633796667 387037903 313696410 381702202 381702202 335679498 289944628 266719320 266719320 187156544 195244404 195244404 63469984 63469984 205043600 205043600 160516800 160516800 104980632 190104116 423626880 423626880 228853894 272276360 272276360 595774876 623837844 623837844 665820454 685840845 721678389 765494429 765494429 686503365 263636185 558957230 558957230 1028517039 1028517039 853070348 1026331585 1026331585 614208388 701205447 701205447 1033376622 1033376622 941684358 956932135 959152423 959152423 952107207 982919754 982919754 495327279 134418442 758127695 758127695 469500658 469500658 707840161 707840161 227879532 226799680 109358804 62374664 62374664 42855504 107528664 107528664 129270352 129270352 282384970 392347826 392347826 306522242 840637152 994647840 994647840 192325047 74752004 893492399 893492399 554091015 554091015 940869028 940869028 940296975 956464899 956464899 899261537 880068481 880068481 356805296 356805296 378013768 378013768 303119920 556995514 564662209 824445219 824445219 327110307 302639880 360075818 360075818 336921098 341863698 371098888 371098888 114088592 114088592 53235760 18926848 50779408 50779408 34102353 153361060 216720872 216720872 5005888 619518904 683082845 683082845 371799824 371799824 247174728 923982669 923982669 570491513 331402978 331402978 454970032 454970032 38871696 43990336 43990336 248140876 736428424 736428424 467765453 335814672 100713904 269224962 269224962 185919160 390663920 390663920 143516786 306198098 306198098 340580816 340580816 127790712 127790712 368845450 368845450 246132604 128810828 365960722 365960722 349373328 152547410 105937332 289695844 610547476 928650939 1013444815 1013444815 673374760 758330157 979376369 979376369 958785831 958785831 473090564 319176895 319176895 880722219 880722219 554326370 554326370 570644832 601918841 601918841 546513240 76723536 121603128 121603128 605910465 605910465 578475921 619972112 619972112 579519184 745574969 745574969 990811453 990811453 789765688 332593302 1017611043 1017611043 422699891 1004800888 1004800888 445997264 445997264 237511944 470772604 470772604 296523618 664003076 763662453 763662453 730570101 172272656 722994741 722994741 559100577 809633702 809633702 183268818 275701122 275701122 247777500 369393862 369393862 353583744 448980192 458802870 458802870 285102748 89314056 89314056 22060736 50333968 57958832 57958832 50718976 63262656 63262656 37046528 45743424 55559520 55559520 96107128 595727281 595727281 590013937 31545208 110506081 120129117 147194988 147194988 658703793 1027561207 1027561207 644274585 892237695 892237695 772326429 738755788 41943280 844310595 844310595 570425872 813901906 813901906 538439760 559467105 559467105 559489152 559489152 871028467 888144195 888144195 668520427 625742840 625742840 613945944 458238296 930939388 930939388 881365848 624910955 917367304 917367304 112370274 822610080 822610080 790978829 809631744 809631744 564330803 686215701 846158612 977161559 977161559 637877931 557783330 440552470 1003676983 1003676983 1018231842 1018231842 952856178 952856178 659504600 173120368 187730404 642189420 756059072 756059072 4542976 246531796 246531796 206181516 249830736 249830736 126426420 563876680 563876680 548973121 620835404 620835404 236158981 176695108 176695108 41684880 186747112 232056668 255224716 255224716 348148961 348148961 272228778 272228778 632636547 632636547 489597005 620825897 940184583 1003743442 1003743442 582875328 725157151 975824151 975824151 835526992 262768920 309150912 309150912 48779560 268837210 304552736 389136458 389136458 646385645 646385645 742113862 742113862 907435450 907435450 828093056 828093056 877936736 877936736 822733762 822733762 25016224 346455040 346455040 317219392 309362816 309362816 303902226 643842051 643842051 371720840 541632641 1009566484 1009566484 760718239 760718239 923963560 923963560 622730793 559861505 676449591 830137107 830137107 323225778 603194179 603194179 540542721 202424844 676400140 676400140 676195461 91817376 141508236 246658372 246658372 222876688 222876688 338394408 892814858 892814858 57981072 442581046 442581046 738337212 738337212 570609681 369119235 890796306 890796306 888743691 1061702738 1061702738 410103686 235514772 581195949 581195949 203109900 203109900 180451432 180451432 100870296 211541328 211541328 261925760 261925760 77784304 38157120 60104768 168200196 0 18164256 172429448 247212444 617728212 617728212 340888065 336469002 565131769 1033006908 1033006908 816058774 816058774 491208540 440994226 346368792 195108872 195108872 10782928 37798032 37798032 4474896 0 0 79126940 339968682 633881497 656797873 656797873 897721497 897721497 847260368 637714666 781293086 1018168143 1018168143 1047962319 1047962319 320167184 538830341 538830341 944161603 944161603 817439621 769006317 552604942 286002210 173376196 807191136 816191811 958862127 958862127 627376529 828861186 828861186 289801224 403179661 403179661 588509718 699530132 699530132 494099296 494099296 491838256 491838256 305474322 338991188 338991188 44198684 59777920 71901490 86249362 521478479 625447463 625447463 563192255 870146659 914840104 914840104 230752416 1061212300 1061212300 874828672 608591626 608591626 886066418 886066418 848505904 767035165 767035165 562726152 541331360 977337519 977337519 698488336 698488336 585634037 826819472 938640082 938640082 656196335 857685555 871554243 871554243 807612675 354955849 345523778 345523778 857025283 857025283 831587360 831587360 52158304 277410448 608621170 856308280 856308280 276967569 37937376 186209684 839517376 839517376 173670471 180006656 180006656 178571604 559974916 559974916 693543028 693543028 588773937 369221658 639713306 639713306 117608560 858810470 858810470 716565333 736711816 736711816 1056953543 1056953543 639573744 187187096 424233000 424233000 482910412 482910412 11944166 167514084 363599726 363599726 726209772 726209772 661978513 561732368 323799816 617996632 770230769 1002991510 1002991510 539281665 442273558 662995208 926291720 926291720 389217992 336135136 304619600 307893906 307893906 290030416 362221168 362221168 385427418 385427418 322199689 721674619 1048663165 1048663165 536942062 928350868 928350868 227606588 227606588 295250946 756817460 756817460 1029209161 1029209161 340351932 566694310 960022311 960022311 836520881 880593531 880593531 709699422 314199704 438142484 438142484 244551684 244551684 33864832 237020496 266661120 266661120 197135416 118361688 268863744 831308526 831308526 428138091 591556912 704856217 725737653 725737653 606399661 997222688 997222688 104428041 358204566 957677720 957677720 809764995 954050631 954050631 860039719 860039719 578824752 529928870 529928870 437389874 437389874 446829552 446829552 457775616 508500000 712099723 712099723 259890952 706749445 706749445 743542929 756672045 756672045 628474908 628474908 191370661 139275396 720678837 836291573 836291573 713836412 782500109 908331014 908331014 492947582 492947582 149514081 184729484 1042281810 1042281810 940123143 940123143 612386936 671889582 766565692 766565692 793731356 793731356 745223565 136323209 203552012 616940140 689211589 711080224 711080224 172760668 188879028 188879028 105782760 76846120 76846120 218313760 218313760 201851916 86783052 244716048 244716048 160839564 254279812 254279812 28173344 15369280 19009792 134221824 134352900 142510464 154777028 154777028 317622720 317622720 315867282 315867282 283333634 323625232 323625232 327247090 327247090 284477074 282820272 29887648 51645504 51645504 38312064 21120544 73004224 73004224 613073448 1023968001 1023968001 1006724237 1006724237 898842735 553955879 553955879 143473709 671807554 671807554 407453221 915851841 915851841 891164849 887173569 826353667 810488872 537792700 640032172 640032172 803934008 803934008 149033412 168165473 696487988 696487988 750204184 750204184 731864689 731864689 945717656 945717656 852629608 852629608 838455910 367363040 367363040 562958400 562958400 419912352 758920137 932132573 932132573 512318006 512318006 302745778 1051463440 1051463440 1006635495 1063553561 1063553561 1039881790 1039881790 308411004 308411004 277516418 277516418 130001136 130001136 88127720 103842312 103842312 55102464 67799064 898313322 898313322 588787236 570811424 988562405 988562405 238496164 911514499 911514499 645171899 255099521 306228925 309929874 352183872 1008031373 1008031373 486195374 589843266 592241683 592241683 584705745 561621842 746613685 988468695 988468695 921588037 962648228 962648228 810075267 340295689 1006011555 1006011555 973106130 973106130 829164320 188221236 170135072 35323944 67194552 67194552 104874288 104874288 129923960 129923960 98726272 93317896 91551840 131071224 131071224 101663240 106640408 120195704 120195704 99817480 107354416 585576593 585576593 273023465 897374600 897374600 829954068 867106010 1041091880 1041091880 671179844 671179844 622634021 622634021 268730644 811413123 819332411 819332411 825457546 825457546 919878696 919878696 635705874 109254792 1028439114 1028439114 829309194 829309194 822481056 1039798313 1039798313 990263694 990263694 466573491 266913276 146853640 60063808 134576176 184733748 521232896 521232896 520142910 101757502 77603104 58855536 99824616 99824616 643946720 643946720 626919768 68947464 16285145 602626017 602626017 115969753 646841144 652794648 652794648 586337025 669303792 669303792 32802872 11571520 11571520 25760480 25760480 52434848 52434848 18681696 17012608 14836864 32604352 32604352 28953696 28953696 295363426 295363426 287868738 138293028 175236644 343044766 528482759 660603321 660603321 761315757 761315757 1011386621 1011386621 950658626 968949666 1018572875 1018572875 554245503 319845555 610119388 907249242 907249242 72484380 209493484 402690532 403837622 403837622 363641459 845786505 845786505 785575268 785575268 863212851 863212851 605166869 605166869 198030276 657906732 657906732 778734453 778734453 609772081 839435929 839435929 118535438 356518568 356518568 876770222 876770222 633796667 607249739 607249739 34940944 34940944 70777348 112472536 266719320 266719320 190186372 195244404 195244404 153621728 468443686 529575916 529575916 415371462 514251102 514251102 352840114 423626880 423626880 282345762 304325796 534848784 789420088 789420088 636297357 683753626 986785727 986785727 633475305 401752779 539412376 549379905 549379905 110437109 414489358 414489358 853070348 853070348 830641833 952853136 952853136 671102724 734672629 1010869372 1010869372 282801858 252933661 416361460 988489026 988489026 982919754 813902926 421801377 485302626 485302626 469500658 469500658 466930422 195477782 226799680 226799680 357629954 357629954 62374664 70914632 107528664 356152608 356152608 375754368 375754368 392347826 392347826 306522242 306522242 994647840 994647840 1069744168 1069744168 893492399 893492399 309161909 153938354 940869028 940869028 940296975 956464899 956464899 899261537 748633706 271554592 271554592 88229770 378013768 378013768 67376170 564154704 615425529 615425529 575410592 325359489 302639880 360075818 360075818 336921098 341863698 371098888 371098888 114088592 114088592 41441680 15208896 41747680 41747680 38722704 153361060 216720872 216720872 5005888 131985385 683082845 683082845 371799824 407446662 407446662 337183372 269336672 269336672 113638056 458560501 731773538 904393511 904393511 608383113 316719570 316719570 265180300 964386460 964386460 538762706 183100884 269224962 269224962 185919160 390663920 461865386 461865386 585179961 585179961 92573792 92573792 599785713 599785713 639733481 639733481 637797715 594852902 150705350 349373328 349373328 332422036 332422036 360983012 360983012 765196581 1013444815 1013444815 673374760 758330157 876621824 876621824 823411105 1039302555 1039302555 1007042690 1007042690 550508749 288372448 554326370 554326370 570644832 601918841 601918841 546513240 76723536 78693192 78693192 69782873 578475921 632295424 632295424 668123672 668123672 745574969 745574969 990811453 990811453 789765688 8572992 916715844 916715844 422699891 1004800888 1004800888 445997264 445997264 237511944 470772604 470772604 296523618 664003076 664003076 37927312 37927312 575104022 944193175 944193175 839782023 388982822 874969550 874969550 1030614379 1030614379 788764349 844853348 844853348 595855346 595855346 458802870 458802870 285102748 830871651 830871651 557681984 866014451 866014451 583964770 271892514 283436248 312020570 393742728 393742728 31666656 31666656 27472352 595727281 595727281 573582256 627967625 627967625 98180617 0 16778432 29885664 29885664 29885664 29885664 16793808 25215072 50331728 184881329 566702773 844310595 844310595 570425872 813901906 813901906 710066373 559467105 559467105 559489152 559489152 871028467 888144195 888144195 668520427 625742840 625742840 613945944 458238296 930939388 930939388 508530052 508530052 917367304 917367304 927400360 927400360 760158634 829128083 883802051 883802051 975932937 975932937 846158612 977161559 977161559 637877931 557783330 684523556 702153957 702153957 1018231842 1018231842 747933102 659504600 659504600 475575019 446167638 642189420 756059072 756059072 340033629 48672916 48672916 267700952 267700952 150334016 677952900 677952900 563876680 650946701 650946701 740197141 740197141 176695108 615190381 615190381 682815625 682815625 666910372 666910372 553169304 348148961 272228778 272228778 632636547 632636547 489597005 620825897 940184583 1003743442 1003743442 567542406 57927698 525312 525312 525312 16860448 128065776 128065776 371752780 516163806 516163806 389136458 389136458 775416497 775416497 608901196 807003910 907435450 1010714691 1010714691 602995248 602995248 569450945 632963616 632963616 616663616 616663616 317219392 317219392 274252800 306547330 306547330 643842051 643842051 273007896 541632641 1009566484 1009566484 760718239 760718239 923963560 923963560 622730793 559861505 676449591 830137107 830137107 323225778 697976291 697976291 956863404 956863404 672869565 621113893 686270413 760747052 760747052 86344826 279937434 336197010 336197010 378078288 378078288 827020688 910908425 910908425 442581046 738337212 738337212 570609681 369119235 222307250 506536734 1001390868 1001390868 1042671903 1042671903 472238367 472172814 378727308 451125974 451125974 81046520 270688602 270688602 244327068 244327068 68271488 343839634 343839634 485213512 511463114 511463114 680232939 938918180 938918180 247803612 613427284 613427284 142516164 336469002 336469002 1033006908 1033006908 784451101 784451101 478672974 942062018 942062018 717437251 711069929 622510218 622510218 558421586 872777746 873342977 873342977 269200772 827605129 827605129 633881497 250092628 210254516 847260368 847260368 637714666 641393687 1018168143 1018168143 1047962319 1047962319 764951248 621210916 161821223 944161603 944161603 769006317 769006317 552604942 286002210 26348386 807191136 816191811 958862127 958862127 362352210 362352210 173273748 812057888 812057888 757157923 824439044 984344699 984344699 864471093 864471093 671400050 409350168 305474322 338991188 338991188 44198684 118223144 118223144 86249362 372185618 372185618 681915604 713639047 1040820367 1040820367 596693096 172538032 550411744 874828672 874828672 608591626 608591626 886066418 886066418 848505904 767035165 767035165 541331360 541331360 977337519 977337519 698488336 698488336 585634037 826819472 938640082 938640082 927469869 857685555 871554243 871554243 807612675 354955849 345523778 906231824 906231824 857025283 831587360 917245275 917245275 579261112 608621170 856308280 856308280 276967569 94028433 186209684 839517376 839517376 751705293 985028491 985028491 570609681 325643558 645918760 645918760 102103596 102103596 392546738 392546738 302937504 117608560 117608560 567431164 700194245 700194245 308981856 308981856 236064848 102009422 444645462 444645462 424233000 409544070 336713694 455120116 455120116 233569644 258923964 258923964 361389328 561732368 561732368 416810694 617996632 770230769 1002991510 1002991510 859208250 859208250 962973633 962973633 926291720 389217992 303141888 303141888 307893906 307893906 118625544 387182904 387182904 370911866 325685368 322199689 721674619 1048663165 1048663165 942850265 942850265 928350868 1057411187 1057411187 548811875 766979924 766979924 646350324 646350324 340351932 444498050 444498050 397678744 397678744 301077474 117184536 102844252 140767620 178398404 178398404 177069268 48737316 19242416 49005824 266661120 266661120 197135416 30544416 269589280 293075874 756938987 756938987 711771236 241722397 104036044 323838458 558165112 997222688 997222688 676708534 676708534 957677720 957677720 809764995 954050631 954050631 860039719 860039719 578824752 529928870 529928870 531497404 531497404 472577322 517997022 523969348 523969348 712099723 712099723 257279948 706749445 706749445 165295856 165295856 56750736 628474908 628474908 191370661 139275396 720678837 836291573 836291573 735188530 782500109 908331014 908331014 544540874 596714097 596714097 396042347 672135319 672135319 442197680 637947950 990169143 990169143 671889582 691556748 691556748 745223565 745223565 136323209 203552012 203552012 206834316 235887920 235887920 172760668 188879028 188879028 105782760 68191504 174314016 218313760 218313760 201851916 199099632 244716048 244716048 181296384 34987716 86646180 86646180 29824708 181165760 181165760 34740628 142510464 271653142 271653142 317622720 317622720 315867282 315867282 283333634 296769442 316931266 327247090 327247090 299628226 299628226 29411488 29411488 21661280 21661280 19976192 73004224 97570984 613073448 613073448 269828249 160173554 272394276 272394276 609516418 609516418 415500486 415500486 163842278 472855200 472855200 356201536 353370666 353370666 353370666 328729688 340531376 340531376 336742186 43473683 711036769 771177453 771177453 390745402 390745402 741074180 778286553 778286553 669222221 736710788 736710788 852629608 852629608 838455910 367363040 367363040 809309514 809309514 566855271 668688242 983189311 983189311 512318006 580250969 580250969 1051463440 1051463440 1006635495 1063553561 1063553561 1039881790 1039881790 841403750 841403750 826099225 905395179 905395179 619969355 619969355 335808522 872553642 872553642 659358395 555297449 827860743 827860743 402156093 234203468 12676083 238496164 911514499 911514499 645171899 259757614 443288982 443288982 729672746 1008031373 1008031373 876307147 892686867 892686867 592241683 642059276 973859218 973859218 988468695 988468695 921588037 805514626 474481806 1054602716 1054602716 829504409 930087867 930087867 522191027 426120960 36454800 64250464 64250464 67194552 67194552 104874288 104874288 129923960 129923960 98726272 97106608 312331234 312331234 272141896 344982026 344982026 270009474 120195704 99817480 303714576 317055122 317055122 278846352 55843281 679352379 679352379 867106010 1041091880 1041091880 672009476 672009476 538185323 538185323 289602940 811413123 819332411 819332411 825457546 825457546 919878696 919878696 635705874 60172088 1028439114 1028439114 829309194 829309194 822481056 1039798313 1039798313 554697870 685591699 987623127 987623127 223754837 836218952 836218952 451532366 521232896 521232896 520142910 447017758 412250970 358711968 358711968 333660273 643946720 643946720 626919768 68947464 16285145 602626017 602626017 115969753 646841144 652794648 652794648 586337025 669303792 669303792 84164656 72241416 104989112 104989112 80385952 80385952 66786992 66786992 13031488 14836864 34788096 34788096 106178456 213084944 295363426 295363426 287868738 98705448 100720936 264331764 528482759 660603321 660603321 761315757 761315757 1011386621 1011386621 950658626 968949666 1030151685 1030151685 686617755 683568730 683568730 907249242 907249242 175805016 209493484 402690532 403837622 403837622 377689490 845786505 845786505 833847860 785575268 863212851 863212851 202389888 209140620 476916356 476916356 663607781 1029351166 1029351166 569302497 569302497 931580450 931580450 561250596 561250596 708428869 708428869 277414476 607249739 607249739 338216202 279858634 442754384 442754384 56870932 60260660 190186372 583618020 583618020 543284372 468443686 1060840242 1060840242 899752299 515989825 514251102 824920628 824920628 660232089 610696610 377302066 534848784 789420088 789420088 636297357 683753626 986785727 986785727 974842475 756978905 797875787 797875787 549379905 759897242 759897242 521563901 521563901 499523131 156488932 1069471016 1069471016 487213471 927486770 1010869372 1010869372 382275616 491402745 958918677 988489026 988489026 973134091 813902926 421801377 739256899 739256899 478423374 466930422 1058322495 1058322495 227014764 177351114 357629954 619909769 619909769 73601216 487234733 761247139 761247139 738212144 738212144 799086292 799086292 468952092 283669482 375403409 579989668 1069744168 1069744168 822165850 140660950 272765058 272765058 822572928 822572928 73231361 348289608 348289608 338891144 338891144 293774144 274387898 274387898 385091241 897581163 897581163 564154704 615425529 615425529 850461698 850461698 855292642 855292642 82547648 82547648 11282752 92554588 92554588 95592432 95592432 42677328 195517968 195517968 189751764 189751764 180860176 135540832 160905828 255475524 255475524 238552968 675654272 675654272 407446662 407446662 337183372 545390721 545390721 1070386431 1070386431 731773538 904393511 904393511 788042390 987236055 987236055 822921968 964386460 964386460 538762706 378311904 310879408 273976338 273976338 185022516 461865386 592569009 592569009 591495680 24171194 59990171 599785713 651491888 651491888 639733481 637797715 594852902 150705350 389266092 389266092 740737925 740737925 360983012 360983012 207264435 450640036 950465188 950465188 645055392 965350693 965350693 774984939 1039302555 1039302555 1007042690 1007042690 553063880 553063880 545825352 9988608 9988608 5150720 69993792 75761736 75761736 84411752 84411752 34526320 94245920 632295424 632295424 668123672 668123672 656409105 656409105 606749440 371757321 646497371 864075891 883459384 883459384 541949441 672075369 672075369 813879363 813879363 587355392 908189793 908189793 344693771 677342677 677342677 710939777 710939777 575104022 944193175 944193175 839782023 388982822 874969550 874969550 1030614379 1057754175 1057754175 844853348 844853348 595855346 595855346 140982660 556008717 740821281 830871651 830871651 557681984 866014451 866014451 583964770 301330080 283436248 312020570 393742728 393742728 90450624 31666656 27472352 57442960 562168736 562168736 627967625 627967625 613037868 613037868 592135217 592135217 687428132 694045349 694045349 705263841 731104977 731104977 675643540 566702773 566702773 152380017 646583928 731031777 752479949 752479949 743827149 646958309 597350961 575758434 575758434 298950673 339630792 339630792 104614528 104614528 493240320 493240320 461653630 461653630 508530052 857552904 857552904 810413752 927400360 927400360 665055594 829128083 883802051 883802051 975932937 975932937 851926273 851926273 540726211 48041857 46323264 684523556 702153957 702153957 568205025 17118913 786791904 789238845 789238845 475575019 446167638 446167638 366306055 366306055 340033629 48672916 48672916 267700952 267700952 150334016 677952900 677952900 204912140 650946701 650946701 740197141 740197141 245088592 615190381 615190381 682815625 682815625 666910372 666910372 553169304 115378120 92274792 77594912 141603584 151011104 151011104 432769076 451986390 463055718 567542406 567542406 841549824 841549824 149499008 199230628 226568632 226568632 301735344 396501842 516163806 516163806 365875492 365875492 775416497 775416497 412739142 807003910 807003910 1010714691 1010714691 600623640 102026481 619708801 632963616 632963616 616663616 616663616 316886976 316886976 303457408 306547330 306547330 313174034 313174034 74263944 505700368 811960716 811960716 204762883 2705024 2705024 40445328 40445328 55573680 55573680 24419632 50932736 50932736 697976291 697976291 956863404 956863404 672869565 621113893 686270413 760747052 760747052 249827720 418404174 478487066 478487066 870665738 870665738 934521715 934521715 910908425 707448456 204471564 202639884 202639884 102498324 222307250 506536734 1001390868 1001390868 1042671903 1042671903 472238367 906187385 906187385 451125974 451125974 43082688 270688602 270688602 244327068 244327068 16785432 343839634 343839634 485213512 511463114 511463114 680232939 938918180 938918180 247803612 613427284 613427284 539875456 543896961 1045588353 1046269599 1046269599 784451101 784451101 478672974 1021051416 1021051416 717437251 711069929 622510218 672013317 672013317 872777746 873342977 873342977 405012356 827605129 827605129 209198338 420426254 830053528 830053528 355296059 304821522 411433696 411433696 666138777 666138777 764951248 764951248 621210916 311840674 311840674 71377920 71828616 279469001 973206427 981191191 994698397 994698397 235718589 71476005 598651663 822083619 822083619 556218657 812057888 893808686 893808686 824439044 984344699 984344699 864471093 864471093 671400050 388345232 168819732 249700576 249700576 121060152 121060152 118223144 94421072 262540049 733086013 733086013 713639047 1040820367 1040820367 513159873 280486100 855149669 855149669 784857309 784857309 222716017 542115971 545661050 936448194 936448194 930967024 930967024 643951432 759478430 759478430 53077296 329400688 329400688 494596354 640680729 927469869 927469869 405483237 678503684 678503684 233922561 207796392 845612974 906231824 906231824 891504131 819725208 917245275 917245275 579862848 579862848 122739065 85987328 52053882 94028433 154816666 739246605 739246605 751705293 985028491 985028491 570609681 325643558 645918760 645918760 755401728 755401728 689933441 689933441 302937504 806125969 806125969 588309898 371367960 796064242 856990124 856990124 438159170 226438356 444645462 444645462 289428026 336713694 336713694 455120116 455120116 233569644 258923964 954045300 954045300 664035085 664035085 416810694 416810694 101573462 136595900 387260464 859208250 859208250 962973633 962973633 850395987 283824776 283824776 118026384 68416464 68416464 118625544 387182904 387182904 370911866 286671552 328204914 328204914 310562898 604111619 942850265 942850265 286638665 1057411187 1057411187 548811875 766979924 766979924 646350324 646350324 399823100 399823100 274622032 397678744 397678744 315769722 246187088 335878020 515793102 515793102 381688516 111809880 19608864 19608864 266898712 266898712 120254916 93591592 93591592 269589280 565588678 756938987 756938987 721422788 572829889 572829889 323838458 774395951 850574306 850574306 676708534 676708534 49072565 19466560 580501792 713050229 713050229 170484901 185934004 185934004 174140020 134217728 531497404 1063409295 1063409295 517997022 1004779237 1004779237 495507704 495507704 454685936 839809975 839809975 487588398 1052944341 1052944341 142636384 4309168 0 770715928 770715928 1007748301 1007748301 990516279 253892972 915457009 915457009 895484330 602980954 596714097 813712520 813712520 704848079 839699475 839699475 990169143 990169143 633530197 633530197 608466954 432292752 432292752 306395740 306395740 781233748 781233748 664628736 664628736 63750264 63750264 146762584 146762584 53890544 174314016 174314016 64521156 199099632 199099632 189073984 189073984 181296384 62377892 86646180 86646180 29824708 181165760 181165760 161271396 65710210 435087346 435087346 460632502 460632502 315300384 162383920 449244162 449244162 457001154 457001154 300301344 300301344 318359698 320172608 320172608 21661280 213942534 358646218 358646218 350240938 608186504 841746805 885271508 885271508 683510923 761266605 946913834 946913834 783573567 776445985 776445985 491200568 491200568 504498844 504498844 274603650 274603650 208013812 404061694 529188196 529188196 487181934 711036769 771177453 771177453 390745402 390745402 741074180 852562880 852562880 841167123 294502544 356589738 356589738 374292240 374292240 342885258 120792282 809309514 809309514 566855271 566855271 983189311 983189311 455044242 580250969 580250969 252873272 296600146 296600146 414122064 704655174 944195062 944195062 841403750 841403750 826099225 905395179 905395179 619969355 696181548 821610435 1020925415 1020925415 773821653 773821653 827860743 827860743 234203468 347152460 347152460 284429694 57780792 117704760 637717545 637717545 443288982 443288982 815290003 815290003 876307147 876307147 892686867 892686867 261686812 642059276 973859218 973859218 337659908 436586524 805514626 814458946 1062408851 1062408851 1054602716 1021896842 930087867 930087867 522191027 426120960 37121456 64250464 64250464 63742528 63742528 63272176 88668400 109835352 109835352 40469704 97106608 312331234 860032289 860032289 344982026 808398851 808398851 604028937 613541961 613541961 317055122 769721125 769721125 631911801 631911801 911346496 957614631 957614631 687365195 672009476 792613328 792613328 691528317 289602940 102778052 76873824 574001632 574001632 108004248 108004248 104993536 99025776 60172088 824267064 1059712679 1059712679 818151331 710286144 746851501 746851501 554697870 685591699 987623127 987623127 345360848 836218952 836218952 520569092 520569092 229710204 447017758 447017758 412250970 358711968 358711968 762755440 762755440 593948777 593948777 260314964 260314964 246484252 666342192 666342192 603327329 537140072 537140072 18874656 21383552 84164656 84164656 82237920 104989112 104989112 89161824 89161824 66786992 66786992 8464848 8290816 34788096 34788096 106178456 213084944 213084944 149156292 279467072 279467072 100720936 264331764 480354550 480354550 406913038 406913038 494144394 494144394 891104995 891104995 761805544 1030151685 1030151685 686617755 683568730 683568730 169383461 175805016 394317980 432148710 432148710 257970524 377689490 377689490 400814586 833847860 833847860 651218537 815793354 815793354 271610152 209140620 476916356 476916356 663607781 1029351166 1029351166 569302497 569302497 931580450 931580450 638716584 775100712 802097181 884223709 884223709 647266315 338216202 338216202 279858634 442754384 442754384 5521472 33595440 191397296 583618020 583618020 543284372 145468740 1060840242 1060840242 899752299 515989825 325243314 824920628 824920628 1007757495 1007757495 607607087 563046946 815453763 815453763 598710681 442763670 442763670 1042026224 1042026224 756978905 797875787 816653329 816653329 961872188 961872188 521563901 521563901 618583562 618583562 1069471016 1069471016 670716228 927486770 927486770 298444002 382275616 491402745 958918677 958918677 973134091 973134091 757691518 605553800 948573255 948573255 503082980 503082980 1058322495 1058322495 227014764 420291609 822807531 822807531 619909769 144323585 487234733 761247139 761247139 738212144 738212144 799086292 799086292 510871268 283669482 176491784 579989668 579989668 487826165 48419280 140660950 272765058 272765058 822572928 822572928 211608717 631068873 631068873 690428800 1018744888 1018744888 342650506 637492587 637492587 897581163 897581163 287429522 306486738 315098322 850461698 850461698 855292642 898185002 898185002 821824394 404842502 345686124 408868288 408868288 95592432 315749392 423387986 423387986 189751764 421043220 421043220 319899940 160905828 255475524 255475524 772886352 772886352 675654272 552406024 552406024 547098177 545390721 545390721 1070386431 1070386431 512597269 404445230 404445230 788042390 987236055 987236055 822921968 882427467 882427467 378311904 378311904 310879408 273976338 273976338 100540392 394175203 592569009 889468824 889468824 648134779 877980505 877980505 869626153 651491888 633549033 308325328 308325328 65037042 389266092 389266092 740737925 740737925 203806707 207264435 207264435 1023473773 1023473773 983938661 824755004 965350693 965350693 459725756 459725756 645252269 645252269 636553536 614425195 553063880 545825352 337573378 292509344 90219168 24262920 24262920 77203776 112284696 112284696 640865049 640865049 119851320 634526545 653939416 653939416 574260224 606749440 606749440 918584047 918584047 864075891 883459384 883459384 541949441 672967434 672967434 813879363 813879363 897909370 1033333863 1033333863 1018105905 741528333 677342677 710939777 710939777 573699488 170821408 723124276 723124276 159514672 184554000 482674864 614087176 1057754175 1057754175 524078910 809603044 809603044 1066559204 1066559204 894961375 740821281 740821281 405554322 961728874 961728874 26501568 301330080 301330080 136416102 12625344 148129836 148129836 90450624 114232320 114232320 678355393 678355393 720446229 781794261 788469520 788469520 613037868 592135217 592135217 687428132 694045349 694045349 705263841 731104977 731104977 675643540 207409176 18560000 22690840 646583928 731031777 752479949 752479949 743827149 646958309 597350961 575758434 575758434 627459568 846985370 846985370 104614528 104614528 493240320 493240320 203316996 203316996 945447084 945447084 857552904 67579443 31318432 31318432 28911456 5842560 5842560 44040528 268724560 549941136 851926273 851926273 943768964 943768964 809615574 809615574 562775446 589637937 760852129 760852129 960655375 960655375 789238845 562377241 562377241 638789729 638789729 12632256 12767424 40060928 44378448 61102336 61102336 58904688 16859392 2138144 264192 264192 35638096 35638096 245088592 245088592 245180228 245180228 255453728 255453728 231539052 254994960 254994960 114985672 124830840 235955464 235955464 227221600 227221600 256943164 485026970 485026970 950534356 950534356 841549824 841549824 396639377 269231364 323749104 432545680 432545680 396501842 396501842 379696400 379696400 154607228 154607228 972608156 972608156 608834956 608834956 713476266 713476266 600623640 124524592 619708801 619708801 547541313 549548288 549548288 316886976 316886976 303457408 302207490 302207490 575501523 575501523 281994384 741131531 811960716 844990772 962334375 962334375 580652753 580652753 791740678 791740678 735127414 809305235 809305235 319822704 1053630617 1053630617 478684796 478684796 248076612 248076612 165539556 160819812 257326308 257326308 418404174 478487066 478487066 870665738 870665738 934521715 934521715 823970409 710482917 579812433 202639884 287448217 287448217 639817600 808113411 926654872 926654872 998319935 998319935 453889336 906187385 906187385 612769944 917633138 917633138 291639714 122725354 117514296 117514296 85334568 85334568 71309984 6866304 20316160 20316160 805439008 823793187 823793187 328920899 310241682 337754632 539875456 543896961 1045588353 1046269599 1046269599 396362106 838684690 838684690 1021051416 1021051416 267176125 269316686 471479887 672013317 672013317 744228493 744228493 571147972 405012356 409258374 805781249 805781249 712648069 830053528 830053528 355296059 304821522 411433696 411433696 315378978 315378978 144303684 46310944 53518128 418383425 422497836 623646345 623646345 358353415 973206427 981191191 994698397 994698397 560108403 973841139 973841139 822083619 822083619 556218657 556218657 893808686 893808686 746586189 746586189 218808678 218808678 366069788 515944006 516270354 516270354 508601340 508601340 160903192 160903192 160840000 94421072 262540049 733086013 733086013 648225324 317768658 547393483 547393483 336329042 855149669 855149669 784857309 794744835 911943282 911943282 636560361 936448194 936448194 930967024 930967024 643951432 759478430 759478430 53077296 199597396 199597396 494596354 494596354 255539004 229337640 155133668 678503684 678503684 233922561 207796392 845612974 845612974 891504131 891504131 389292035 609822345 609822345 579862848 608174338 842146402 842146402 664132560 664132560 572676754 38587536 572133376 572133376 580773457 580773457 572263953 44188240 541328896 542903937 755401728 755401728 689933441 689933441 419225280 806125969 806125969 722265720 722265720 860046625 951483863 951483863 438159170 446643798 761203678 761203678 551557042 358058700 358058700 235190906 927051345 927051345 372374090 954045300 954045300 986710743 986710743 860488261 554308641 700864180 700864180 454938886 454938886 383392254 36250896 64037616 290656472 290656472 320135330 320135330 68416464 116933584 378574056 398704976 398704976 388001840 431915125 514869113 514869113 1049150074 1049150074 883982748 883982748 697354952 249017021 239314964 62991424 198127840 198127840 176560212 163488096 399823100 399823100 328446888 328446888 315769722 315769722 246187088 335878020 515793102 515793102 381688516 111809880 19608864 19608864 266898712 266898712 120254916 93591592 93591592 26164320 565588678 756353582 756353582 721422788 572829889 572829889 289644611 774395951 774395951 726763707 881429781 881429781 888439223 1008830083 1008830083 949085830 949085830 719269472 958078006 958078006 164891304 225714892 225714892 1063409295 1063409295 414334536 1004779237 1004779237 495507704 495507704 486736144 839809975 839809975 487588398 1052944341 1052944341 142636384 721631253 721631253 770715928 770715928 1007748301 1007748301 990516279 1054867935 1054867935 915457009 895484330 640360771 640360771 921772104 921772104 704848079 839699475 941118054 941118054 550638273 633530197 633530197 608466954 432292752 432292752 1062068414 1062068414 1045252303 781233748 664628736 664628736 219721760 63750264 146762584 146762584 97656104 235550632 235550632 156040020 173799840 173799840 189073984 189073984 199136416 199136416 160559104 160559104 160173156 160173156 161271396 161271396 135401552 435087346 435087346 460632502 460632502 162383920 162383920 449244162 449244162 457001154 457001154 300301344 300301344 318359698 320172608 320172608 229627044 229627044 358646218 358646218 350240938 392429698 841746805 885271508 885271508 683510923 761266605 946913834 946913834 783573567 776445985 776445985 491200568 491200568 504498844 504498844 274603650 274603650 208013812 404061694 529188196 529188196 487181934 593572672 593572672 427042060 623233599 623233599 537083924 852562880 852562880 869295028 989992142 989992142 857059754 857059754 621870094 342885258 120792282 92935272 129499896 129499896 383028062 585707025 585707025 349733530 1008816659 1008816659 411065124 411065124 296600146 906422556 906422556 944195062 944195062 875493452 875493452 935075146 935075146 346949497 347601738 696181548 821610435 1020925415 1020925415 773821653 773821653 596649534 347080714 402919084 561260240 1021378778 1021378778 779788697 779788697 1004581142 1004581142 123753584 123753584 815290003 815290003 714084071 681365428 681365428 814876712 814876712 346397040 538461203 538461203 101921304 8702016 575662080 814458946 1062408851 1062408851 1021896842 1021896842 879966643 879966643 204478371 61104352 51751600 51718704 64546408 122320424 122320424 102476312 133165056 133165056 109835352 40469704 72315432 93753400 860032289 860032289 272770466 808398851 808398851 604028937 613541961 613541961 72825480 983378846 983378846 631911801 631911801 911346496 957614631 957614631 754464272 754464272 792613328 792613328 753387026 901857228 901857228 124045752 825792257 884906155 917409466 917409466 868194802 868194802 96265528 824267064 1059712679 1059712679 818151331 807541380 403211528 884132170 1022023439 1029899499 1029899499 939591687 496854113 345360848 250176730 520569092 520569092 229041020 238692764 238692764 181377040 120060216 265763548 762755440 762755440 147380952 152569380 260314964 260314964 246484252 666342192 666342192 603327329 168640652 672469529 672469529 671488005 240126728 82237920 82237920 69390600 8437824 89161824 89161824 27669032 137730004 145802052 145802052 78678662 379025498 379025498 369760778 374048218 374048218 279467072 279467072 14717568 426902210 426902210 625025193 625025193 359975850 744279688 744279688 891104995 891104995 679876677 679876677 656235517 544075137 478729080 478729080 210602358 78120264 394317980 432148710 432148710 432277734 432277734 349628721 582234803 582234803 214289140 453312852 453312852 274777099 805307667 925371638 925371638 516448341 1016467628 1024070703 1024070703 945031229 710547093 937244855 937244855 638716584 775100712 802097181 884223709 884223709 647266315 219614180 219614180 160946288 267200884 267200884 136391972 111193644 191397296 191397296 177739952 691303972 691303972 540015873 512827998 520159840 520159840 325243314 580438328 696086261 1007757495 1007757495 607607087 563046946 815453763 815453763 598710681 442763670 442763670 1042026224 1042026224 983640946 983640946 951446343 816653329 961872188 961872188 269433858 361105224 1017287682 1017287682 1069171162 1069171162 670716228 670716228 195073789 491397369 650346734 650346734 396761466 396761466 280637808 297454120 608444938 608444938 948573255 948573255 503082980 503082980 420857576 355676970 520298334 520298334 822807531 822807531 676921664 752944645 752944645 841120257 890054177 890054177 378585690 378585690 510871268 510871268 45140496 639650773 674619436 702595557 702595557 721283765 721283765 82676400 260417944 260417944 765095980 765095980 1027891984 1027891984 690428800 1018744888 1018744888 574654832 637492587 637492587 386355897 326292402 287429522 306486738 306486738 280956674 815277888 815277888 898185002 898185002 821824394 951785991 986628006 986628006 694861463 974127639 974127639 423387986 423387986 838310853 838310853 572566388 756913832 756913832 164212628 174902676 772886352 772886352 110368473 552406024 552406024 547098177 214091400 214091400 204284428 104722200 48071112 40506768 35325328 44245584 44245584 37274000 37274000 39197328 45645968 310427648 310427648 11398464 11398464 48321944 48321944 107921608 356903082 889468824 889468824 648134779 877980505 877980505 893882875 893882875 541811410 805672962 805672962 278041728 278041728 43712994 307307154 307307154 33620610 12813312 12813312 1023473773 1023473773 983938661 824755004 924370491 924370491 592106673 592106673 344025162 636553536 636553536 614425195 357157386 357157386 337573378 292509344 90219168 24262920 24262920 77203776 112284696 112284696 640865049 640865049 545463360 634526545 634526545 622380585 574260224 573080577 573080577 918584047 918584047 777118365 163270342 379793754 406022498 672967434 1008349049 1008349049 286133341 897909370 1033333863 1033333863 1018105905 741528333 606998341 138233873 179316006 179316006 162098000 705954868 705954868 705377301 705377301 918482177 925354766 925354766 873182630 606765550 809603044 809603044 1066559204 1066559204 894961375 687662018 687662018 585467924 961728874 961728874 978317444 978317444 541961539 543531201 543531201 952205319 952205319 688966371 541378689 556153953 678355393 678355393 720446229 781794261 788469520 788469520 581140561 545784976 576775185 576775185 54871168 31666624 31666624 240495304 240495304 182028516 692899413 709151445 709151445 680878641 553648161 722281525 722281525 697710828 965286065 965286065 1051831812 1051831812 794326128 846985370 846985370 836548848 970812026 970812026 475586420 203316996 203316996 945447084 945447084 871125075 912840139 912840139 878085744 601829714 984709763 984709763 1051597663 1051597663 605632085 549941136 747116936 943768964 943768964 809615574 809615574 587996388 589637937 760852129 760852129 1049514323 1049514323 403755460 601238747 601238747 638789729 638789729 405610968 405610968 718402116 718402116 75751809 100786200 195209793 686379492 686379492 201974796 577378001 577378001 741705733 747431744 747431744 739109901 666770228 681762796 681762796 681780044 715191480 715191480 114985672 124830840 235955464 235955464 227221600 227221600 256943164 485026970 738535985 950534356 950534356 778770906 798759174 798759174 740557932 323749104 432545680 432545680 290981538 290981538 379696400 379696400 536610009 959712039 972608156 972608156 608834956 608834956 713476266 713476266 582621952 657195329 657195329 569378600 542687425 620953856 620953856 10052736 10052736 47255552 47785680 349963858 575501523 575501523 342623552 741131531 741131531 844990772 962334375 962334375 580652753 580652753 791740678 791740678 735127414 809305235 809305235 319822704 1053630617 1053630617 478684796 478684796 248076612 248076612 236469276 236469276 257326308 257326308 80315312 129623928 391853536 630127714 630127714 988702166 988702166 710482917 710482917 579812433 415242117 679084230 679084230 948177872 948177872 926654872 926654872 547418009 547418009 496370712 496370712 482400944 612769944 917633138 917633138 291639714 232359592 232359592 138675900 85334568 369824930 369824930 504916504 504916504 497015194 848870954 848870954 823793187 664747641 904905819 904905819 821843913 821843913 748461273 714345045 714345045 396362106 838684690 838684690 636960452 636960452 267176125 25386572 0 0 4522112 4522112 277553330 318903952 318903952 328076946 805781249 805781249 712648069 930550818 930550818 878844971 275252482 282446816 282446816 44066816 52072224 606420240 630277216 630277216 418383425 422497836 623646345 623646345 580263676 395485795 386613746 359797674 339758002 560108403 973841139 973841139 313780068 840253386 840253386 523669384 869878326 869878326 746586189 746586189 218808678 795206237 795206237 762099448 516270354 516270354 508601340 508601340 160903192 160903192 160840000 89395744 46475472 108262096 568418337 568418337 317768658 547393483 547393483 336329042 312918176 122747202 133744632 794744835 911943282 911943282 636560361 636560361 355730271 361242908 398249850 398249850 302549636 69470692 20971680 20971680 23069088 236740873 779742655 1023401855 1023401855 416814277 492836320 543443564 543443564 882127097 882127097 777134414 372402738 838970171 838970171 609822345 609822345 368050384 608174338 842146402 842146402 664132560 664132560 572676754 36209152 572133376 572133376 580773457 580773457 572263953 691196437 750421373 750421373 653317085 350241618 504402098 504402098 419225280 404902022 545897812 722265720 722265720 1055436877 1055436877 951483863 431301296 1026949306 1026949306 761203678 551557042 407523396 407523396 235190906 927051345 927051345 372374090 622946730 622946730 986710743 986710743 1044646047 1044646047 700864180 700864180 454938886 454938886 383392254 253094460 190391512 395616810 395616810 320135330 320135330 39184434 116933584 378574056 398704976 398704976 388001840 445432310 514869113 514869113 1049150074 1049150074 386949916 697354952 840204914 840204914 805560547 82996075 308490822 463879124 463879124 428162674 323196208 22409122 328446888 328446888 114443120 416267336 519257554 519257554 384037338 305129344 254062940 254062940 19212576 72124512 98896104 134334592 137784392 137784392 42807792 26164320 54328944 54328944 23973024 148930948 148930948 279166464 312340050 470125574 910771518 1001129384 1001129384 881429781 888439223 1008830083 1008830083 949085830 949085830 719269472 958078006 958078006 164891304 225714892 225714892 219300320 318241746 318241746 122277354 358633844 516083934 516083934 486736144 486736144 489577392 489577392 113820344 113820344 104833704 721631253 721631253 610077753 254036377 108664728 386646632 914358660 1054867935 1054867935 864146649 370787906 908072257 908072257 921772104 921772104 570561609 366758930 941118054 941118054 550638273 124704949 111731309 104636669 441909580 1063901354 1063901354 1062068414 1045252303 110379120 126961708 219721760 219721760 200985484 200985484 199046664 97656104 235550632 235550632 156040020 173799840 173799840 147774660 147774660 199136416 199136416 160559104 160559104 160173156 160173156 39591556 189348452 403414704 439843926 439843926 301992420 311165600 311165600 145228304 320537104 320537104 320476722 14686194 273032224 334666946 334666946 60155008 58900480 229627044 229627044 218255688 226525452 535040512 535040512 485628662 74449800 144992264 216745600 216745600 151643172 889199737 889199737 985956408 985956408 432013542 67766958 473175246 473175246 0 942675273 942675273 849253134 608677745 591777088 66351072 570213161 570213161 427042060 623233599 623233599 537083924 537083924 388041146 869295028 989992142 989992142 954413511 857059754 855904901 979515565 979515565 570790111 560126801 652284789 652284789 585707025 585707025 202408785 1008816659 1008816659 411065124 588701740 748106173 906422556 906422556 881734674 881734674 875493452 875493452 935075146 935075146 346949497 891166251 891166251 427597252 427597252 893912235 893912235 923796054 923796054 763363437 445645371 966871076 1021378778 1021378778 779788697 779788697 1004581142 1004581142 324028402 324028402 310953042 714084071 714084071 681365428 1060143668 1060143668 814876712 346397040 571782431 571782431 477715603 477715603 575662080 575662080 146809084 423899262 423899262 929038779 929038779 594543537 692219940 692219940 185697856 185697856 64546408 122320424 122320424 119798912 133165056 133165056 91729824 17109392 72315432 360809034 374341728 374341728 322961586 579603160 579603160 596517888 596517888 938020472 938020472 983378846 983378846 619185609 501752358 501752358 562955621 948307619 948307619 754464272 181500396 82423412 753387026 901857228 901857228 567305131 825792257 884906155 917409466 917409466 868194802 868194802 835598003 835598003 348773362 847567083 847567083 807541380 551427777 884132170 1022023439 1029899499 1029899499 939591687 626522793 545634984 67158024 67158024 26566144 85401320 98449960 98449960 97665216 30883872 30883872 595191173 790821280 790821280 243269724 243269724 184408948 777612809 777612809 714597409 714597409 134225949 672469529 672469529 671488005 240126728 119855200 128383056 128383056 102501912 102501912 53041392 43369176 137730004 145802052 145802052 78678662 379025498 379025498 369760778 990909033 990909033 964035472 964035472 571609617 628246681 628246681 625025193 625025193 604359785 744279688 744279688 547098177 679796289 679876677 679876677 656235517 973455137 973455137 481342296 481342296 428079640 270006604 367343874 394576028 432277734 432277734 349628721 582234803 582234803 286262220 453312852 453312852 463995908 973739378 973739378 925371638 737143932 1016467628 1024070703 1024070703 945031229 710547093 937244855 937244855 537243758 537243758 1072568094 1072568094 438314969 296791870 422077806 422077806 360842336 360842336 267200884 204314712 204314712 111193644 582032839 582032839 924916509 924916509 606676233 512827998 547581054 1001125239 1001125239 930339321 877828537 940184583 940184583 471533475 158218254 140094384 376710664 376710664 338172104 284040642 470485168 470485168 983640946 983640946 951446343 216317988 362889936 756288045 1041806911 1041806911 1017287682 1017287682 1069171162 1069171162 1063407752 1000345847 1013057895 1013057895 788847634 650346734 396761466 396761466 280637808 297454120 608444938 608444938 545658945 545658945 497044140 536729616 536729616 362164440 520298334 520298334 415393928 57513172 676921664 752944645 752944645 841120257 890054177 1066569487 1066569487 900572206 900572206 427419104 201385992 639650773 674619436 702595557 702595557 721283765 721283765 129614992 260417944 260417944 765095980 765095980 1027891984 1027891984 784050378 692678200 692678200 885095670 885095670 620165291 386355897 449451973 533377234 533377234 380809786 886629480 886629480 545977600 545977600 163013922 631784805 951785991 986628006 986628006 694861463 974127639 974127639 171811863 539230404 838310853 838310853 572566388 756913832 756913832 566040652 566040652 256435716 256435716 107879576 114855808 672330140 672330140 214091400 1045625901 1045625901 324274866 276005634 777190122 777190122 704076321 546442384 865660642 865660642 772988480 746925325 338242082 338242082 94456938 274050434 274050434 69388386 75784418 856683595 856683595 874643667 904455659 904455659 873514148 893882875 893882875 541811410 805672962 805672962 278041728 278041728 43712994 704120805 704120805 148422560 148422560 143054896 536901864 536901864 421340045 391193226 391193226 574641184 592106673 854149208 1058596787 1058596787 414715895 76245098 11521472 21570720 29369408 29730208 29730208 59684496 59684496 50732592 50732592 61012992 61012992 606348480 634049769 634049769 622380585 622380585 537575424 730989892 730989892 661651793 181929684 181929684 398366120 398366120 383514330 539299080 1008349049 1008349049 68207624 68207624 134743044 715514952 715514952 648348997 648348997 176425044 179316006 179316006 276842512 420651618 973345840 973345840 705377301 918482177 925354766 925354766 873182630 803203130 938278141 938278141 263577084 263577084 658209028 687662018 687662018 585467924 815049869 815049869 978317444 978317444 541961539 543531201 543531201 952205319 952205319 688966371 587878449 587878449 671944769 671944769 599418548 156750276 570520896 581140561 581140561 545784976 576775185 576775185 325883298 48907600 284859334 284859334 242587596 56832180 692899413 709151445 710589452 962196621 962196621 818520183 784672979 697710828 965286065 965286065 1051831812 1051831812 794326128 802719012 802719012 836548848 970812026 970812026 335546434 269229128 411967490 411967490 302198796 871125075 912840139 912840139 878085744 641339067 984709763 984709763 1051597663 1051597663 605632085 545752534 747116936 747116936 315162752 709563584 709563584 587996388 522213508 392616378 713330950 1049514323 1049514323 403755460 601238747 601238747 492020383 881067338 881067338 405610968 881141774 1018660917 1018660917 501866453 355042904 686379492 926730256 926730256 577378001 741776896 741776896 747431744 747431744 739109901 848111646 848111646 681762796 681780044 715191480 715191480 321918321 321789234 321789234 542082695 952220291 952220291 873373259 805964355 738535985 738535985 563333276 563333276 798759174 798759174 740557932 25698304 131665030 282987744 290981538 290981538 281837602 311245320 536610009 959712039 959712039 934546124 934546124 761553845 205652933 550636296 582621952 657195329 657195329 636485681 577257736 620953856 620953856 94504424 327189944 327189944 123385232 349963858 349963858 346557440 346557440 342623552 405155016 405155016 69605654 101459032 101459032 75835464 42675288 44389456 44389456 11324736 11017632 11017632 181143416 245920156 245920156 243401160 174199188 208309064 236469276 236469276 141709152 141709152 329538570 329538570 391853536 630127714 630127714 988702166 1054368309 1054368309 994173111 994173111 465693201 721437660 721437660 948177872 948177872 658855689 180333379 145285268 145285268 496370712 496370712 907509924 907509924 375689484 310022560 394160018 394160018 371146266 138675900 21542308 369824930 369824930 504916504 504916504 497015194 850134460 1036257519 1036257519 1036257519 1036257519 904905819 821843913 821843913 748461273 945832912 945832912 297370035 441535170 1029956070 1029956070 143883396 143883396 105933870 374779949 545784897 974330449 974330449 822676998 822676998 63440592 328076946 328076946 377825370 625222329 930550818 930550818 878844971 367546818 377399688 377399688 309968592 273442210 606420240 630277216 630277216 190031424 1052451261 1052451261 580263676 580263676 395485795 386613746 359797674 339758002 591055424 598613361 598613361 100718762 886086184 886086184 656958618 869878326 869878326 671798277 671798277 747143344 795206237 795206237 762099448 406668364 88681928 25175616 100737048 102826264 102826264 89395744 89395744 59109648 59109648 52683312 67684128 113295576 113295576 28322936 326816066 336366675 618692937 764229703 764229703 740167396 964116196 964116196 685621633 886171299 886171299 398249850 604220568 901011890 901011890 388158696 303504416 318902322 318902322 779742655 1023401855 1023401855 416814277 492836320 543443564 543443564 882127097 882127097 777134414 372402738 838970171 838970171 369496338 122369208 68157960 98173936 98173936 42733840 43256400 56793504 56793504 48169792 543627920 551864769 551864769 543126337 537396225 691196437 750421373 750421373 653317085 350241618 504402098 504402098 980704916 980704916 545897812 657121374 657121374 1055436877 1055436877 792600381 792600381 1026949306 1026949306 373498240 373498240 407523396 456570612 456570612 261037078 722543844 759483069 759483069 759482541 394855013 586951017 1044646047 1044646047 613731862 143116940 80949960 718731485 718731485 308312330 882944147 882944147 395616810 223381812 223381812 67141646 287916558 287916558 366503082 494520138 494520138 445432310 445432310 346048056 848434294 848434294 413669238 625246508 840204914 840204914 805560547 82996075 308490822 463879124 463879124 428162674 425826546 282676532 25487298 51477864 132720120 416267336 519257554 519257554 414024386 414024386 254062940 408413344 408413344 328278642 294748856 185085924 255852576 255852576 21300096 7350432 609911334 625055502 625055502 150489174 612434072 612434072 719212062 786376986 910771518 1001129384 1001129384 824264006 631630185 358170918 460957269 460957269 588319444 588319444 413793778 423692384 423692384 150739650 384064694 923816225 923816225 516694266 881792173 881792173 516083934 516083934 361894506 552291101 552291101 489577392 633192223 633192223 282402632 87700656 610077753 610077753 152617728 429479616 429479616 591577682 594047872 886755985 886755985 573252016 908072257 908072257 124838330 373957642 550831804 724251957 724251957 529408301 565068762 637590493 637590493 610345278 655285305 1063901354 1063901354 252830963 122704616 110379120 109316184 89874912 89874912 200985484 200985484 199046664 118672216 127926648 127926648 117524808 110414424 146829844 147774660 147774660 55724160 26404352 154667780 154667780 136181376 136181376 138228372 189348452 421318182 439843926 439843926 422782000 311165600 311165600 303899154 320537104 320537104 320476722 184289012 468648980 468648980 459986358 459986358 402748848 58900480 214143302 415420846 415420846 535040512 535040512 485628662 340117722 508374556 508374556 306733260 73535880 889199737 889199737 985956408 985956408 767826701 771621473 1056575951 1056575951 663622069 942675273 942675273 849253134 608677745 591777088 525372320 525372320 75629376 369242688 369242688 365113936 365953208 365953208 388041146 388041146 340520640 954413511 954413511 485279695 855904901 979515565 979515565 570790111 560126801 652284789 652284789 915180141 915180141 538630726 538630726 655491680 655491680 588701740 748106173 748106173 539051746 572484797 760416076 760416076 413688902 288691232 847682161 847682161 891166251 891166251 504929892 751735951 893912235 893912235 923796054 923796054 898232134 898232134 966871076 966871076 184629284 601954594 601954594 523336256 304087314 324028402 324028402 901775874 901775874 651691568 633340137 1060143668 1060143668 294782096 312662882 571782431 829585456 829585456 477715603 998257830 998257830 952580295 423899262 423899262 929038779 929038779 594543537 692219940 692219940 185697856 185697856 25295168 8629312 795232 119798912 119798912 119102928 44319808 81418880 81418880 360809034 374341728 635836899 811613443 811613443 603206130 879439243 879439243 938020472 938020472 899687707 807549529 571474449 193605510 193605510 562955621 948307619 948307619 498863982 498863982 110934040 856144792 856144792 907235267 907235267 567305131 273732328 99824616 594918224 669691480 669691480 835598003 835598003 348773362 847567083 847567083 643012546 551427777 551427777 29892129 97018401 633473161 633473161 626522793 545634984 67158024 67158024 26566144 85401320 98449960 236457556 236457556 75761736 231693516 595191173 790821280 790821280 256318220 243269724 184408948 777612809 777612809 714597409 785760388 785760388 647177809 777927281 777927281 222614033 119855200 128383056 128383056 102501912 102501912 53041392 43369176 42543568 42543568 145854800 145854800 74695872 111374792 111374792 990909033 990909033 964035472 964035472 571609617 628246681 628246681 221590453 199961216 604359785 771564456 966273364 966273364 162891116 717759478 907043649 907043649 973455137 973455137 923623448 976782610 976782610 270006604 367343874 367343874 216556798 232137964 232137964 287711424 287711424 286262220 60817666 602268704 602268704 973739378 973739378 258477169 737143932 737143932 315935442 374086650 374086650 354636816 354636816 562088680 562088680 537243758 1072568094 1072568094 1032514828 816704835 740787422 422077806 360842336 360842336 105390464 204314712 204314712 142689200 582032839 582032839 924916509 924916509 606676233 161428261 547581054 1001125239 1001125239 930339321 877828537 940184583 940184583 512043336 438305046 103421208 376710664 376710664 317069778 317069778 435071111 435071111 28235116 28126560 28126560 11706400 1034948732 1034948732 1041806911 1041806911 372240434 312496400 312496400 1063407752 1063407752 1000345847 1013057895 1013057895 788847634 304628914 590793777 590793777 638463257 638463257 202696931 541071552 545658945 545658945 470034062 536729616 536729616 419917894 456849946 456849946 1059510591 1059510591 412349382 412349382 686429701 686429701 484667613 1066569487 1066569487 900572206 900572206 427419104 201385992 203778140 203778140 191169472 128975736 102548168 129614992 129614992 110099544 106523656 106307952 208475529 889146137 889146137 784050378 692678200 692678200 885095670 885095670 771801352 453132370 453132370 533377234 533377234 671224531 886629480 886629480 682197377 682197377 157868041 631784805 631784805 890957877 1064489919 1064489919 740499636 740499636 484469796 682774038 967464061 967464061 545559112 545559112 127220817 566040652 566040652 256435716 256435716 107879576 114855808 672330140 672330140 184046733 1045625901 1045625901 324274866 276005634 777190122 777190122 704076321 546442384 865660642 865660642 772988480 908691080 908691080 338242082 312057352 312057352 282251970 379308576 379308576 856683595 856683595 874643667 904455659 904455659 873514148 512889222 512889222 514585950 535405904 535405904 65746416 48354336 33195328 704120805 704120805 148422560 295251938 374148522 850990674 850990674 421340045 391193226 391193226 286396962 52564272 854149208 1058596787 1058596787 414715895 336446346 336446346 285612258 297433120 297433120 75820416 75820416 59684496 50732592 50732592 61012992 122230424 606348480 634049769 634049769 610144049 573608248 733123425 733123425 742523184 1061843215 1061843215 67831808 398366120 398366120 383514330 337417297 890604856 890604856 732577661 732577661 461373558 715514952 715514952 648348997 648348997 176425044 582050311 939567217 1005863845 1005863845 973345840 973345840 581418721 581418721 561511329 559427316 761333352 803203130 938278141 938278141 608147365 564180929 21104897 5405376 210288715 537944264 815049869 815049869 806715011 806715011 268748802 277151746 277151746 81986 564297744 587370801 587878449 587878449 573239377 47910452 570640497 570640497 564172864 564172864 47630864 47630864 40749072 325883298 325883298 48907600 284859334 284859334 242587596 172054705 264742413 483903066 710589452 1024717540 1024717540 818520183 784672979 504798320 504798320 918120452 918120452 34643972 146394714 505751838 505751838 471582346 371835612 371835612 335546434 269229128 411967490 411967490 302198796 120222552 120222552 75507464 206138546 641339067 641339067 327437140 288672596 840671440 840671440 806539795 384312479 384312479 38805392 38805392 279322768 977605716 977605716 555895705 713330950 713330950 404899925 283742464 283742464 168104532 9910848 881067338 881067338 403023966 881141774 1018660917 1018660917 780357683 1012325007 1012325007 926730256 926730256 1044427379 1044427379 741776896 977972944 977972944 949484103 848111646 848111646 520934121 55051440 514461174 514461174 321918321 382204122 382204122 542082695 952220291 952220291 873373259 805964355 417423992 325698802 869854454 869854454 438479128 479501056 479501056 307015968 462587524 462587524 166536882 255074732 255074732 311245320 311245320 252192510 854929791 934546124 934546124 761553845 205652933 550636296 550636296 46793856 636485681 636485681 577257736 577257736 548574536 94504424 327189944 327189944 123385232 123385232 374290496 374290496 346557440 73490816 405155016 405155016 378401866 378401866 372939866 372319002 277415768 44389456 44389456 11324736 11017632 62585144 181143416 245920156 245920156 58732680 101294784 156587040 156587040 151299684 141709152 141709152 329538570 329538570 310286122 285876690 608238323 953590470 1054368309 1054368309 994173111 994173111 480510158 845438964 845438964 460248181 649233220 649233220 612377780 857073267 857073267 1025082896 1025082896 907509924 907509924 691411073 594320672 394160018 394160018 371146266 111003736 28303840 62970352 62970352 43944240 43592720 54411360 850134460 1036257519 1036257519 1036257519 1036257519 801790419 537486337 672752913 929130421 945832912 945832912 297370035 441535170 1029956070 1029956070 143883396 143883396 510494027 851687461 851687461 974330449 974330449 822676998 822676998 63440592 67963432 115340914 377825370 377825370 278226658 367183210 367546818 367546818 377399688 377399688 309968592 273442210 273442210 133032080 133032080 190031424 1052451261 1052451261 812492691 786010760 786010760 760605765 755758125 800079623 850833359 850833359 598613361 990326328 990326328 886086184 656958618 523688504 523688504 671798277 671798277 747143344 747143344 393316516 406668364 406668364 88681928 259072740 259072740 211159832 255013448 255013448 25436336 59109648 59109648 52683312 41590752 41590752 41493648 41493648 326816066 336366675 618692937 764229703 764229703 740167396 964116196 964116196 956716545 1039097860 1039097860 179425007 604220568 901011890 901011890 388158696 303504416 318902322 318902322 388475840 388475840 284635146 284635146 269689378 28362242 79731146 268881954 365052360 365052360 337316152 337316152 369496338 369496338 35002896 31734224 60494864 60494864 70030259 552525249 599809891 599809891 768267501 768267501 585347424 551864769 543126337 537396225 533718782 702459960 702459960 678564741 678564741 200851520 192415668 980704916 980704916 820102528 657121374 923304220 923304220 708319272 792600381 792600381 334925143 668875480 791128928 791128928 424710400 474172930 474172930 538442241 722543844 759483069 759483069 759482541 394855013 305833744 305833744 538007816 538007816 341116547 80949960 718731485 718731485 308312330 882944147 882944147 270901376 223381812 341082112 341082112 287916558 287916558 366503082 494520138 494520138 270114880 654598208 654598208 848434294 993674496 993674496 857397047 713220416 713220416 30618128 962989613 962989613 677380485 836116864 836116864 428085984 282676532 285313778 332685346 332685346 241248112 374711444 374711444 414024386 414024386 190394356 408413344 408413344 328278642 294748856 185085924 255852576 255852576 165922660 165922660 609911334 625055502 625055502 184290140 612434072 612434072 719212062 786376986 786376986 199295524 136628484 136628484 142885312 142885312 17583488 23118240 53795298 413793778 413793778 450007572 450007572 150739650 384064694 923816225 923816225 516694266 881792173 881792173 484738202 415929474 415929474 552291101 552291101 458091702 633192223 633192223 282402632 14551232 39977472 39977472 152617728 429479616 429479616 76034586 594047872 886755985 886755985 573252016 663145784 663145784 124838330 373957642 550831804 724251957 724251957 529408301 565068762 984872986 984872986 923094755 923094755 678767493 131647224 505150175 505150175 119499857 67108864 152256040 152256040 152082408 101847112 118672216 118672216 127926648 127926648 126298744 126298744 118295056 118295056 55958768 55724160 44185920 44185920 22085152 22085152 2010208 138228372 138228372 421318182 421318182 422782000 835053795 835053795 820596035 303899154 302716647 953597377 953597377 727453365 727453365 468648980 733420898 733420898 729559744 320483264 234103780 415420846 415420846 360726720 360726720 375624712 475952622 508374556 508374556 333450546 339740912 350241176 350241176 931136004 931136004 767826701 771621473 1056575951 1056575951 663622069 544905057 387863019 5507712 340550654 512085556 525372320 525372320 75629376 75629376 35390176 27940640 302661696 302661696 91963816 340520640 340520640 741557348 741557348 746205380 746205380 786906421 786906421 635934909 79785417 77730120 607987460 915180141 915180141 538630726 768475362 915283647 915283647 869308563 381681882 796987846 882926336 882926336 878815542 878815542 413688902 288691232 847682161 847682161 487474735 504929892 504929892 751735951 751735951 369910960 847782405 847782405 898232134 898232134 685518763 976576125 976576125 732705284 732705284 839651419 839651419 341187656 341187656 905977497 905977497 824181273 630784040 892446536 892446536 294782096 280266434 337868044 972690725 972690725 461311408 998257830 998257830 952580295 421667297 96533058 91736064 18874880 19923744 129224712 129224712 77106440 117968960 117968960 100949512 100667400 100667400 119102928 132198392 132198392 121438936 121438936 126461529 126461529 635836899 811613443 811613443 603206130 879439243 879439243 1029574884 1029574884 907028075 826948433 619185609 1058545745 1058545745 862161341 862161341 844248679 498863982 498863982 110934040 856144792 856144792 907235267 907235267 928113203 928113203 369221817 73982208 73982208 103263130 347028802 370415898 370415898 319496818 319496818 131073048 77107202 357614186 357614186 354959712 354959712 164772448 164772448 434875646 441933524 468374726 475533994 475533994 372099546 343784478 369275330 459688180 459688180 231693516 393211786 393211786 520909344 520909344 260709836 260709836 235194396 251658204 785760388 785760388 764934697 777927281 777927281 595593553 88473856 111349872 111349872 39789632 39789632 15962016 49304116 165859812 165859812 180689616 180689616 384513498 514512710 514512710 273755580 352794666 547373148 547373148 336327690 336327690 206089958 61069364 581346148 581346148 771564456 966273364 966273364 1023424621 1023424621 907043649 907043649 638165780 923623448 923623448 976782610 976782610 562144225 755724348 755724348 734087132 734087132 232137964 117762084 6096416 37859776 56697584 602268704 602268704 566046561 19448417 19138848 273067778 283760784 315935442 374086650 374086650 354636816 354636816 562088680 897775680 897775680 387956809 1032514828 1032514828 816704835 740787422 54542592 54542592 101136400 246062528 246062528 249689412 249689412 180486144 180486144 555699236 832391786 832391786 473801219 136653060 84546600 84546600 634051787 913830393 913830393 512043336 998582391 998582391 43294982 919096144 919096144 317069778 317069778 460665360 460665360 730229328 730229328 687331045 304700961 1034948732 1034948732 842142483 358097195 306918546 312496400 653821139 653821139 975192143 975192143 412681808 679917696 683794629 683794629 622314560 631193193 638463257 638463257 540378312 620621769 620621769 540832425 612287905 758125833 758125833 614002702 884529724 884529724 1059510591 1059510591 412349382 952851008 952851008 686429701 416641636 416641636 336937524 336937524 263415956 263415956 186721076 125943816 125943816 104914960 94527720 43201848 114222736 114222736 110099544 106523656 106307952 106307952 92442216 393706526 393706526 653079998 653079998 578891632 771801352 771801352 893410457 893410457 923271169 923271169 1012494475 1012494475 750920658 682197377 682197377 960709895 960709895 591611152 890957877 1064489919 1064489919 881906162 881906162 484469796 682774038 967464061 967464061 475968148 475968148 226140196 651678280 651678280 799843604 799843604 804011757 804011757 633376228 538628488 215005905 226635169 226635169 198787844 188128848 706357204 706357204 554829536 554829536 340567714 487689358 487689358 908691080 908691080 319874048 312057352 312057352 282251970 379308576 379308576 393271366 393271366 361949690 361949690 125406756 180356104 222636204 222636204 105201876 29409504 272918530 296797026 296797026 292231904 292231904 18568992 20521410 295251938 884680232 884680232 850990674 339492697 1036654480 1036654480 644944351 531104408 531104408 527513648 993650487 993650487 924728967 889098336 889098336 297433120 298570657 820828931 827926179 827926179 815121088 558376417 840538496 840538496 317244784 590208464 632768368 632768368 573608248 733123425 733123425 742523184 1061843215 1061843215 618550852 672684684 672684684 337417297 337417297 890604856 890604856 732577661 732577661 461373558 471259768 673454356 673454356 713590801 713590801 582050311 939567217 1005863845 1005863845 546349511 546349511 692477988 692477988 559427316 559427316 761333352 761333352 759314424 759314424 608147365 626910797 626910797 607294278 1064143348 1064143348 544597705 684244743 806715011 806715011 715903365 715903365 551575681 583082131 583082131 182477923 547620929 564285793 564285793 27527520 570640497 570640497 564172864 689272597 689272597 583814672 583814672 819724503 819724503 698368869 416468914 587780656 587780656 180470981 264742413 264742413 219708136 1024717540 1024717540 859955453 859955453 504798320 504798320 594468387 594468387 522791558 522791558 760786316 760786316 756183636 374234840 371835612 312223388 246488792 263793501 799810869 799810869 789073197 545367377 545367377 226575021 94906880 133313520 133313520 916154896 916154896 840671440 840355328 246090639 470846941 470846941 61959920 857549873 977605716 977605716 555895705 648323480 648323480 109435713 80527616 168104532 168104532 9910848 602146528 840699857 840699857 607939539 605415945 541309257 780357683 1012325007 1012325007 631013474 641902610 1044427379 1044427379 772201301 1008906497 1008906497 949484103 572522769 572522769 287480956 453240954 489033938 489033938 66360716 382204122 382204122 249017538 954458112 954458112 247015260 417423992 417423992 325698802 869854454 869854454 706119528 706119528 539310668 307015968 462587524 462587524 24382368 255074732 339593212 339593212 226566248 125841572 113455320 121985372 245803192 245803192 50332192 62336720 62336720 46994288 42078288 41944688 86691080 86691080 16789568 193995748 193995748 521351742 521351742 500058538 448333828 448333828 45932608 178300180 178300180 344191050 378401866 378401866 372939866 372319002 331614898 331614898 12632256 21342770 37871282 63897728 77385240 266878860 266878860 252703920 212399540 156587040 156587040 151299684 102895896 123955624 201656664 264503480 264503480 285876690 373945512 373945512 480347556 671089057 671089057 480510158 480510158 845438964 845438964 460248181 649233220 649233220 612377780 857073267 857073267 1025082896 1025082896 805904586 742867506 691411073 594320672 400571160 315218114 126403704 111003736 30935232 297879810 297879810 298157968 330120800 330120800 136530001 715651413 784312661 784312661 784150365 579221260 641851409 672752913 929130421 929130421 220250656 271106260 271106260 679187096 775423773 775423773 609882397 510494027 851687461 851687461 615060684 637220841 757087945 757087945 711988246 711988246 773200244 999606903 999606903 539251256 338659652 338659652 291055266 291055266 147132006 59869024 46773248 302913664 302913664 80831616 80831616 77121096 812492691 812492691 786010760 786010760 760605765 755758125 800079623 850833359 850833359 552159553 990326328 990326328 336456406 345351220 411041862 411041862 403126278 403126278 76730952 189443876 189443876 160055732 160055732 71574800 259072740 259072740 211159832 255013448 255013448 76688096 46586024 46586024 118332432 118332432 86970664 86970664 107898008 107898008 12752304 2484480 818872824 818872824 658510403 562174468 956716545 956716545 1039097860 1039097860 501959384 501959384 113325308 45163344 66660048 66660048 23069088 28560770 331833386 331833386 329540480 280380010 296020490 348396544 354327146 354327146 365052360 365052360 289552272 285349930 285349930 39715968 79495496 285355026 606078746 606078746 884736315 884736315 599809891 599809891 768267501 768267501 585347424 423716282 423716282 533718782 533718782 874420480 874420480 678564741 678564741 272406677 494568381 494568381 962626900 962626900 608591113 923304220 923304220 793081840 793081840 914389061 914389061 675663012 791128928 791128928 424710400 474172930 474172930 538442241 620322248 1046838479 1046838479 1013109663 540492672 508603280 305833744 538007816 538007816 341116547 64044272 591571464 591571464 339795354 1046137236 1046137236 310302395 191793572 341082112 341082112 811714729 811714729 568909824 837389323 837389323 648611175 654598208 654598208 562440215 993674496 993674496 857397047 713220416 713220416 635607788 962989613 962989613 677380485 836116864 836116864 428085984 269492834 285313778 332685346 332685346 426337352 426337352 374711444 343755678 145328990 13160640 166861296 169085460 169085460 186063412 186063412 52830320 52830320 165922660 165922660 97087784 253823780 253823780 184290140 162973632 110236952 610940446 1072239607 1072239607 756421515 275978257 420743718 420743718 411384546 697063254 697063254 594592689 184997940 184997940 450007572 450007572 268579380 188809798 33818644 466358932 466358932 179608272 146030852 289819140 415929474 415929474 72889028 309856146 473904168 473904168 257305992 257305992 257636028 257636028 108188568 108188568 500249682 500249682 59119570 602719104 602719104 562876160 562876160 663145784 663145784 124720792 124720792 322575891 830119705 830119705 464933672 464933672 984872986 984872986 923094755 927785998 927785998 470315194 805789251 899024896 899024896 898616936 898616936 152256040 152082408 101847112 101847112 122090096 122090096 110120480 126298744 126298744 57488336 57488336 46677664 34481744 44185920 44185920 6629760 2371584 4786688 27590688 27590688 25176352 18940032 293880097 835053795 835053795 820596035 990269620 990269620 953597377 953597377 727453365 727453365 46274885 733420898 733420898 729559744 560729680 234103780 167395588 167395588 189671356 189671356 375624712 810388573 810388573 447877974 725998761 725998761 876874899 910477467 910477467 478414926 881664204 881664204 683679433 210184389 209846532 37197908 715368752 957193541 957193541 823131044 414803046 434216966 434216966 413664494 213267542 297179588 372652714 448009616 448009616 243010440 508466387 508466387 469856308 746205380 746205380 786906421 786906421 663728488 808137841 808137841 832045330 1032896526 1032896526 771874845 768475362 915283647 915283647 869308563 381681882 796987846 882926336 882926336 878815542 878815542 369448582 277897568 562482368 562482368 1013221853 1013221853 683375894 948176967 948176967 198256745 847782405 898756978 898756978 226566252 806355473 976576125 976576125 885213163 885213163 868357251 868357251 341187656 856604339 905977497 905977497 903946731 903946731 892446536 953779375 953779375 678429260 678429260 972690725 972690725 296648290 834735139 948361287 948361287 96533058 904349476 904349476 489305436 489305436 962130300 962130300 252200008 252200008 117968960 143493208 243558920 243558920 182605712 182605712 132198392 121438936 121438936 173593820 173593820 106770072 269822466 865538120 865538120 855708729 832512083 1029574884 1029574884 940740856 940740856 619185609 1058545745 1058545745 888324441 888324441 768665465 608347760 367108585 110564096 110564096 60996664 33675280 553697298 928113203 928113203 369221817 73982208 115257368 126852752 347028802 370415898 370415898 319496818 319496818 100992058 77107202 357614186 357614186 354959712 354959712 164991174 156248608 434875646 441933524 468374726 514007104 514007104 505549086 343784478 369275330 469667340 487672810 487672810 393211786 393211786 520909344 520909344 260709836 260709836 235194396 251658204 589015868 647346849 764934697 764934697 595593553 595593553 44482625 17035296 17035296 54606432 54606432 47919840 49304116 165859812 165859812 180689616 180689616 384513498 514512710 514512710 623414481 623414481 805573537 840343563 906566151 906566151 688575495 772862305 772862305 581346148 680989216 680989216 539972379 1023424621 1023424621 902876093 902876093 638165780 611631278 611631278 373919497 562144225 562144225 1024394766 1024394766 734087132 734087132 41420688 48240085 180985012 180985012 261959292 768410257 768410257 563875425 19448417 19138848 26010720 642212506 642212506 626600266 816411721 850250769 850250769 814604825 897775680 897775680 387956809 600874610 600874610 592784049 378031490 378031490 401169688 401169688 246062528 246062528 249689412 249689412 163811607 972958562 972958562 832391786 832391786 473801219 428544277 916991997 916991997 846355150 913830393 913830393 460117609 998582391 998582391 857177094 919096144 919096144 724208184 724208184 460665360 987647053 987647053 967847447 967847447 944646087 914102183 877393035 877393035 894121316 894121316 670176497 670176497 653821139 805873245 805873245 531170664 679917696 683794629 684613056 684613056 631193193 631193193 630456520 630456520 835749259 835749259 897991211 897991211 758125833 758125833 614002702 884529724 884529724 819434227 925856665 925856665 952851008 952851008 688361538 785449056 793846461 793846461 499376362 499376362 332618276 186721076 125943816 125943816 104914960 94527720 43201848 30295040 80481376 80481376 71728136 95131752 151908265 151908265 236187868 236187868 540436822 540436822 609503572 760522352 760522352 893410457 893410457 923271169 923271169 1012494475 1012494475 541181248 541181248 549495820 960709895 1015186634 1015186634 729415817 729415817 836387052 910398112 910398112 19948347 112197064 329166069 415331283 415331283 332263060 226140196 651678280 651678280 799843604 799843604 804011757 804011757 633376228 538628488 215005905 226635169 226635169 198787844 154638640 537332160 537332160 554829536 554829536 10228737 68987424 84534312 85583400 319874048 319874048 302039794 46933522 1117200 14745664 14745664 13672804 164119236 336085440 374345420 374345420 180356104 222636204 877254716 877254716 266100271 272918530 296797026 296797026 292231904 292231904 284899266 284899266 278070656 884680232 884680232 327429812 327429812 1036654480 1036654480 644944351 879756397 879756397 835980320 993650487 993650487 924728967 889098336 889098336 20584224 298570657 820828931 846601107 846601107 815121088 558376417 840538496 840538496 317244784 798029362 798029362 632768368 554820129 587285008 587285008 668721732 668721732 260064509 618550852 672684684 672684684 713640304 713640304 733978896 733978896 673587761 153202693 168132880 705092224 705092224 673454356 713590801 713590801 539510036 282075794 282075794 42016848 403505701 592340019 692477988 692477988 557900288 687137924 687137924 363524555 595923812 595923812 254545637 799853576 799853576 786068440 1064143348 1064143348 592544421 540700039 540700039 551999168 715903365 715903365 551575681 583082131 583082131 182477923 571738688 571738688 564285793 582107200 582107200 581230945 581230945 689272597 689272597 583814672 583814672 819724503 819724503 698368869 416468914 587780656 587780656 775831784 775831784 712038305 533744009 982569424 982569424 859955453 859955453 654101113 654101113 780349529 780349529 929518615 929518615 760786316 760786316 756183636 518938524 649940780 649940780 688130085 688130085 799810869 799810869 789073197 545367377 545367377 226575021 762178803 762178803 730657414 916154896 916154896 840355328 840355328 903104325 903104325 470846941 270162434 870045414 870045414 654372795 1073318698 1073318698 802906657 802906657 625676830 180606164 192385304 192385304 602146528 840699857 855250577 869346899 869346899 1002688196 1030596280 1030596280 808916803 808916803 694034085 641902610 656412720 772201301 1008906497 1008906497 999692387 999692387 865075827 287480956 453240954 453240954 282200161 282200161 35061584 531609473 952506567 954458112 987104648 1050319711 1050319711 902889879 902889879 528490554 630727257 706119528 706119528 539310668 48838464 80153858 80153858 56891730 530720842 530720842 377018592 381855346 383908846 383908846 121985372 313136174 313136174 334899088 370354820 370354820 59769168 103886984 123937376 123937376 65175872 218219372 218219372 193995748 521351742 521351742 500058538 719146061 719146061 106285704 1023249281 1023249281 513728094 513728094 70582102 547124633 547124633 940073572 940073572 684749526 684749526 602978017 323088040 859786737 859786737 394779150 310323968 212399540 42533904 112277008 112277008 102895896 123955624 201656664 264503480 264503480 109533472 215708776 215708776 19514860 671089057 671089057 367841003 367841003 850642748 850642748 318163114 608486894 608486894 597477566 700836069 700836069 567534322 474773780 474773780 299243414 433247958 433247958 400571160 356784178 103408920 61202992 30935232 297879810 297879810 298157968 540622215 540622215 44827284 150736836 754814932 754814932 183786580 183786580 641851409 840991568 840991568 814793283 447927126 752564358 752564358 679187096 775423773 775423773 609882397 718127196 718127196 992361970 992361970 637220841 757087945 757087945 711988246 711988246 773200244 999606903 999606903 539251256 244206674 347090112 347090112 270274050 293561344 293561344 46773248 302913664 302913664 131239466 89522752 387532506 387532506 205982792 138853572 76043468 351117856 351117856 381930656 381930656 390756410 458480762 458480762 184865456 496589564 496589564 364223342 364223342 488190508 488190508 304985714 439081278 449519946 449519946 103484474 111097144 113248544 113248544 101712136 101712136 124223728 124223728 62945720 46586024 118332432 118332432 86970664 86970664 107898008 370532394 370532394 358616178 818872824 818872824 1020856034 1020856034 812989376 812989376 898403744 898403744 501959384 501959384 272294444 385898658 385898658 107190178 9701888 28560770 331833386 331833386 356561482 356561482 296020490 348396544 354327146 391149082 661851145 661851145 904997040 904997040 446118486 640760643 640760643 473251596 606078746 954729986 954729986 1061170128 1061170128 986121424 986121424 588097799 48392417 386738662 864836913 864836913 711457173 874420480 874420480 453056886 453056886 439769610 494568381 944965152 962626900 962626900 824874086 824874086 703010828 793081840 793081840 914389061 954606219 973601043 973601043 486658349 393693752 452966136 452966136 411334866 478450931 1046838479 1046838479 1013109663 540492672 644400537 644400537 619507657 617713024 314801282 64044272 591571464 612277824 627170163 1046137236 1046137236 310302395 191793572 191793572 100963370 811714729 811714729 568909824 837389323 837389323 648611175 714736702 739695117 739695117 524294965 441060740 570708135 709984616 709984616 635607788 635607788 174701348 174701348 151789844 428683424 428683424 66764288 63330544 365008144 365008144 426337352 484210598 484210598 108924568 135604740 245413324 309914192 448000854 531690348 531690348 186063412 195473824 195473824 190994544 89413124 169495736 169495736 469600354 469600354 111253848 358815521 882777675 1072239607 1072239607 999700656 852623376 852623376 819073731 411384546 732438737 732438737 999872116 999872116 963327399 544266500 305809570 305809570 188809798 66679938 466358932 466358932 239405808 391476420 391476420 373175516 373175516 268896564 268896564 473904168 473904168 289009200 289009200 257636028 257636028 138860676 138860676 500249682 500249682 176736224 602719104 602719104 423905575 423905575 306709650 522749687 1057850881 1057850881 322575891 830119705 840179978 919056517 978678017 978678017 648106433 648106433 927785998 927785998 908790786 908790786 899024896 899024896 898616936 898616936 84021288 120017104 120017104 83884264 122090096 193552964 193552964 85322864 103523372 164901728 164901728 198976640 198976640 174664160 12447808 184512768 184512768 9724004 142912052 142912052 55601396 137940033 719086976 719086976 322039456 304802816 990269620 990269620 437132310 437132310 16913590 579085300 691221285 691221285 334692567 560729680 560729680 134679808 137051460 145702212 229379412 229379412 698732613 810388573 810388573 204272847 725998761 725998761 876874899 910477467 910477467 478414926 881664204 881664204 683679433 210184389 721580624 728816180 728816180 957193541 957193541 823131044 414803046 434216966 434216966 413664494 525810366 525810366 466875126 466875126 448009616 243010440 508466387 508466387 469856308 724009091 724009091 308855192 307383008 663728488 808137841 808137841 832045330 1032896526 1032896526 784384221 607224596 346556334 346556334 584106904 584106904 567280353 438501746 438501746 159592548 468331370 468331370 277897568 562482368 562482368 1013221853 1013221853 683934465 948176967 948176967 571771010 573751811 898756978 942928647 942928647 875751709 806355473 808637187 885213163 885213163 868357251 868357251 760927917 856604339 856604339 420501193 903946731 903946731 628433827 953779375 953779375 782778354 782778354 614547272 272177728 296648290 296648290 9227328 25659744 69493568 904349476 904349476 489305436 489305436 962130300 962130300 252200008 252200008 1594904 202205248 243558920 243558920 182605712 182605712 65603088 116064928 116064928 234894749 524882177 748893240 883426635 908664912 908664912 855708729 832512083 940718135 1015882253 1015882253 940740856 586151488 586151488 340990760 888324441 992053396 992053396 661284401 828714138 997847521 997847521 397271531 371670314 316260946 844227059 844227059 599516388 607838663 884672322 884672322 470442316 69995784 102301760 110700120 110700120 109466648 85054328 135730020 135730020 290679720 404883970 404883970 134350980 247922888 408321732 408321732 514007104 514007104 505549086 143852890 8124096 469667340 487672810 487672810 84365336 224345272 253679324 253679324 211163724 69206280 255155968 255155968 197130097 705291348 705291348 680076441 658955585 658955585 102944904 8781984 11829776 54606432 54606432 47919840 43788864 5452416 14682800 14682800 96751776 184586848 190712516 190712516 623414481 623414481 924178537 924178537 906566151 906566151 749900033 772862305 772862305 67215876 889665656 889665656 693109413 693109413 845193722 875896864 875896864 624429548 894970318 894970318 484771499 179078018 101001240 1024394766 1024394766 456167932 456167932 403378242 403378242 180985012 180985012 486090702 963632970 963632970 824706339 537607445 533653685 533653685 931061172 931061172 723753958 976173093 976173093 850250769 814604825 17083083 860365218 860365218 845387218 845387218 747168368 747168368 378031490 401169688 401169688 239808544 239808544 178258260 178258260 163811607 972958562 972958562 745540178 656159378 659892921 659892921 916991997 916991997 846355150 768606957 768606957 313831200 313831200 698979144 857177094 857177094 590632834 724208184 724208184 381736292 987647053 987647053 967847447 967847447 944646087 914102183 877393035 877393035 894121316 894121316 670176497 670176497 1020314910 1020314910 531170664 531170664 519059562 564582753 684613056 684613056 222642368 564487265 717414466 717414466 835749259 835749259 897991211 897991211 223665449 677383048 677383048 284758405 297400380 819434227 925856665 925856665 814478403 816878948 817580103 817580103 793846461 793846461 499376362 706928749 706928749 802196353 802196353 773188125 713548392 54620584 19132704 17982208 10727424 25165824 25165824 59687472 151908265 151908265 236187868 236187868 540436822 540436822 609503572 760522352 760522352 581426024 581426024 713558530 713558530 420394007 897746544 897746544 878005354 345379842 527323658 1015186634 1015186634 997925155 997925155 836387052 910398112 910398112 83997328 19927456 19927456 18878592 102971416 102971416 103116952 103116952 102117400 102117400 38283328 50429984 562561192 740986585 740986585 547038728 547038728 111028625 167627860 167627860 537332160 537332160 288361472 288361472 320407066 437571102 437571102 934643944 934643944 355584160 355584160 332241938 318816306 340298762 340298762 693265157 693265157 602177771 374345420 841310506 841310506 707308144 877254716 877254716 847347763 547536161 547536161 633657537 633657537 277791338 284899266 1041240091 1041240091 876547584 290607312 268036092 1070690592 1070690592 535028887 625224571 879756397 879756397 1007882511 1007882511 341572106 341572106 289739330 287165984 88085672 549536896 549536896 846601107 846601107 839191044 967455798 967455798 278863065 885731358 885731358 798029362 394850364 411776070 572007440 746904924 746904924 724043281 245160041 34488320 109971936 109971936 713640304 713640304 733978896 733978896 673587761 219801132 219801132 728895776 728895776 727995157 184027092 184027092 141574596 282075794 282075794 138676356 153804677 696171812 696171812 809515430 809515430 687137924 725487845 725487845 363524555 123253392 254545637 799853576 799853576 786068440 786068440 592544421 592544421 538757700 274591362 282624770 309059330 309059330 269583058 44065296 41412944 41412944 571738688 576865185 576865185 582107200 582107200 581230945 581230945 53477441 5977728 9622080 9622080 9622080 29175648 29175648 29046624 29046624 137503936 775831784 775831784 712038305 533744009 982569424 982569424 887969110 887969110 654101113 654101113 780349529 780349529 929518615 1073614282 1073614282 506810890 518938524 518938524 649940780 649940780 688130085 688130085 632294220 43781712 129567176 129567176 101998930 136414250 762178803 762178803 730657414 630643305 989150544 1062822591 1062822591 1060175733 1060175733 922287232 922287232 870045414 870045414 775213105 1073318698 1073318698 811602468 811602468 783372356 245708476 438528879 596644585 612378848 835068835 855250577 869346899 869346899 1002688196 1030596280 1030596280 808916803 808916803 694034085 628959458 563743234 595606872 819214336 965923328 999692387 999692387 865075827 411226306 845449394 845449394 728762850 359695660 307905028 531609473 952506567 952506567 987104648 1050319711 1050319711 902889879 902889879 528490554 553657501 553657501 306503922 21842404 48838464 80153858 80153858 89341988 530720842 530720842 377018592 381855346 383908846 383908846 78217588 313136174 313136174 334899088 370354820 370354820 100882232 103886984 123937376 123937376 65175872 218219372 218219372 138507196 138507196 153361184 153361184 719146061 719146061 106285704 1023249281 1023249281 912695130 912695130 784612483 547124633 547124633 940073572 940073572 684749526 684749526 602978017 323088040 859786737 859786737 394779150 310323968 83124668 9510976 43196480 43196480 43127376 56284848 56284848 121269032 121269032 622854441 684087657 684087657 694732197 715140405 715140405 220514084 220514084 1062857329 1062857329 401052423 335272540 394309200 597477566 700836069 700836069 689576193 689576193 543202464 515902954 515902954 433247958 356784178 532414046 532414046 161998886 470860502 470860502 372819738 372819738 540622215 540622215 166801265 261024180 754814932 754814932 654262233 654262233 750373846 840991568 840991568 828379152 828379152 752564358 758125576 758125576 429234324 650135258 650135258 718127196 718127196 992361970 992361970 779504131 779504131 518954647 527882624 527882624 436240640 278138032 424446786 424446786 110832474 405652712 405652712 400519132 454718386 454718386 328663344 84726434 369917304 369917304 117174064 387532506 387532506 233358828 233358828 216643236 351117856 351117856 497496368 497496368 361830652 122815040 131403504 524956912 524956912 496589564 364223342 364223342 488190508 488190508 304985714 439081278 449519946 449519946 246953640 246953640 125407912 125407912 122044552 122044552 124223728 124223728 94625824 32300528 32300528 65609856 81205576 81205576 129045360 370532394 370532394 358616178 730645538 923720763 1020856034 1020856034 947222916 947222916 671137797 471600654 471600654 438252372 438252372 386948344 386948344 286860834 276049312 8388672 264192 21072032 356561482 356561482 92324064 931189371 931189371 391149082 663384313 663384313 904997040 904997040 446118486 640760643 640760643 473251596 473251596 954729986 954729986 1061170128 1061170128 1015054810 1015054810 820862443 872770571 872770571 864836913 981941526 981941526 874032904 874032904 453056886 453056886 439769610 337044254 944965152 944965152 839042170 839042170 824874086 434262099 551191524 620011019 842304091 954606219 973601043 973601043 486658349 182208460 92554372 8723520 11875088 35680528 38230720 38230720 49522752 49522752 644400537 644400537 619507657 617713024 58919920 96672504 567672865 612277824 627170163 919102728 919102728 362942826 300023944 419963420 643011590 643011590 342284682 342284682 494979104 494979104 478414926 714736702 739695117 739695117 524294965 576979468 779357085 779357085 724966197 724966197 808719232 1032731500 1032731500 892663376 892663376 428683424 387585656 387585656 365008144 365008144 66586608 484210598 484210598 111414208 135604740 245413324 309914192 448000854 531690348 531690348 178610980 195473824 195473824 190994544 224696876 224696876 318882975 867923591 867923591 686302193 591549268 882777675 882777675 999700656 999700656 852623376 852623376 829428370 829428370 732438737 732438737 999872116 999872116 963327399 544266500 305809570 305809570 292647574 296586678 436210930 436210930 344095652 391476420 478595202 478595202 369606682 369606682 476123032 521543352 526527790 526527790 289009200 188971028 188971028 139049984 138860676 191890356 191890356 176736224 323377312 323377312 423905575 423905575 306709650 522749687 1057850881 1057850881 697179388 512197961 840179978 919056517 978678017 978678017 648106433 648106433 81813897 78921968 908790786 908790786 806108672 806108672 467757360 467757360 84021288 120017104 120017104 109869384 85827320 193552964 193552964 93340040 103523372 164901728 164901728 198976640 198976640 174664160 138447956 184512768 184512768 43090016 145777184 189801218 476381650 476381650 719086976 844652864 844652864 576790929 345386569 308942226 437132310 437132310 16913590 579085300 691221285 691221285 334692567 529107856 529107856 202366284 137051460 145702212 229379412 229379412 698732613 698732613 1049026576 1049026576 741306383 182978004 182978004 178966932 169869588 114704904 46586064 175248276 205339800 595533104 721580624 728816180 728816180 599240868 540553766 447743552 308806916 246464736 246464736 404257168 1039204857 1039204857 466875126 466875126 298293430 276966080 373931930 437757890 845970086 845970086 995584616 995584616 209600368 209600368 368204328 368204328 336642570 676454482 784384221 784384221 616564041 616564041 346556334 861406928 861406928 853282515 805356230 805356230 684720837 468331370 468331370 92800104 613046465 613046465 558310853 540018885 810582528 810582528 562352128 571771010 573751811 674556803 942928647 942928647 875751709 303440410 303440410 84414568 713258230 713258230 608936484 760927917 760927917 692707344 420501193 420501193 360710250 139471958 631538394 631538394 782778354 871697735 871697735 195173032 332674039 332674039 43362022 252331128 601782692 886132552 886132552 872550411 872550411 733102928 363872608 188636464 126994504 126994504 202205248 202205248 101211672 68631064 68631064 16850976 33624128 58855536 453706838 1025705104 1025705104 883426635 908664912 908664912 269551680 520167992 832188952 1015882253 1015882253 818026554 80225483 926955404 1073428479 1073428479 992053396 992053396 661284401 828714138 997847521 997847521 816058627 816058627 758040414 844227059 844227059 634549032 688530155 884672322 884672322 470442316 464168038 268997654 268997654 449421392 449421392 457336020 457336020 151207938 269750534 404883970 404883970 458621672 458621672 278348428 264708288 264708288 246990684 437690544 532624730 532624730 517498438 427748356 427748356 309633954 309633954 299964432 299964432 144661476 197999776 255155968 255155968 197130097 705291348 705291348 680076441 658955585 658955585 102944904 95307112 87106360 113427016 113427016 43788864 43788864 62465904 62465904 218873920 243430220 243430220 190712516 190712516 206519428 595727536 924178537 924178537 530644834 1017306078 1017567567 1017567567 582074929 409170315 889665656 889665656 720810893 987370309 987370309 891686656 890902059 605821135 942222373 942222373 484771499 589210804 589210804 439525948 805322778 805322778 699991886 403378242 539018880 539018880 103284168 486090702 963632970 963632970 824706339 537607445 533653685 533653685 931061172 931061172 723753958 976173093 976173093 209455208 209455208 190464848 860365218 860365218 845387218 845387218 747168368 747168368 232778768 232778768 124759692 239808544 239808544 42308656 194948176 194948176 147774044 335750680 335750680 656159378 659892921 659892921 653082118 653082118 664274068 768606957 768606957 206835309 168037912 698979144 698979144 140960293 111247516 380243968 380243968 176725216 944897734 944897734 158366627 30931680 636170976 636170976 447774902 447774902 426792908 438305052 438305052 379736114 1020314910 1020314910 969934110 875058096 571973648 949035591 949035591 724880181 724880181 695558288 717414466 903105386 903105386 824964387 824964387 677699072 677699072 677383048 692985115 915971982 915971982 431912790 572909076 814478403 979849504 979849504 817580103 817580103 579617352 389670714 387221718 706928749 881943214 881943214 802196353 773188125 713548392 90383208 68316712 68316712 72122464 78299720 90983816 90983816 59687472 59606320 63148656 63148656 319215666 404611494 492496042 492496042 407760006 713778784 722653749 757607445 912227277 912227277 897746544 897746544 878005354 345379842 776056617 822314636 822314636 997925155 997925155 595047816 355305557 197575296 100119550 109232376 325562988 325562988 163035430 594950465 594950465 103116952 576904577 576904577 57921408 40059776 671189425 740986585 740986585 593363381 593363381 710291605 710291605 554053189 574686513 574686513 288361472 288361472 320407066 437571102 437571102 934686611 934686611 355584160 355584160 332241938 381560042 381560042 340298762 693265157 693265157 602177771 247015260 841310506 841310506 707308144 671162373 847347763 847347763 655432877 547536161 633657537 633657537 926296996 926296996 1041240091 1041240091 876547584 824554835 771359592 1070690592 1070690592 535028887 379334024 473171922 571148952 1007882511 1007882511 902898186 346693803 636952048 636952048 88085672 871124801 871124801 864499827 864499827 839191044 967455798 967455798 589866179 885731358 885731358 731979859 731385555 731385555 689179173 746904924 746904924 724043281 585386097 717441561 725571996 725571996 572155377 661239656 661239656 780304932 780304932 690585916 219801132 728895776 728895776 727995157 819733575 819733575 684583621 674056768 236562712 576202386 576202386 696171812 696171812 809515430 809515430 610271625 725487845 725487845 101849736 101849736 561871080 743041344 753667533 753667533 680043584 671211525 537403392 672011396 672011396 538510337 269747776 269583058 539082756 941892421 941892421 143706371 563521952 694434465 694434465 575711249 575711249 153276676 603289140 603289140 593149617 572007248 575160597 576770517 718324693 718324693 1004948146 1004948146 91231657 1066997738 1066997738 706739733 571895510 554328402 554328402 887969110 887969110 858938840 1006891023 1006891023 981291400 981291400 1073614282 1073614282 506810890 506810890 357977336 674307466 696421717 723332661 723332661 201140573 774399485 774399485 613753241 613753241 213124173 243552648 836514402 836514402 768281741 989150544 1062822591 1062822591 1060175733 1060175733 922287232 922287232 690858483 775213105 775213105 791646242 791646242 811602468 811602468 783372356 245708476 438528879 596644585 612378848 835068835 847551825 847551825 593586032 668096976 668096976 583172050 993815865 993815865 762302271 628959458 563743234 288349600 819214336 819214336 812308643 812308643 411226306 773639296 845449394 845449394 728762850 399147170 399147170 436361876 436656150 436656150 140029184 173621920 173621920 152882724 308076038 308076038 60606512 306503922 306503922 5493264 142872064 142872064 7418240 89341988 212904924 212904924 158429364 187871576 187871576 260113488 260113488 167587812 249072460 249072460 213992120 116657112 116657112 100882232 1574400 7414016 84132136 218456336 256342588 386620602 522954498 522954498 153361184 120140080 35596608 43399744 406889736 406889736 912695130 912695130 784612483 378472322 378472322 31383264 42941520 45994752 45994752 12812816 46395600 46395600 139715792 253394588 253394588 240508984 25343492 84043552 84043552 102843720 102843720 241293480 241293480 173668984 622854441 684087657 684087657 694732197 715140405 730344319 842919851 842919851 1062857329 1062857329 1062346716 514452850 994354319 994354319 1000179803 1000179803 689576193 689576193 543202464 515902954 515902954 449483328 271170316 532414046 532414046 161998886 470860502 470860502 372819738 372819738 522215668 522215668 166801265 564063145 613351250 840599771 969057211 969057211 845082460 750373846 413942559 1006703238 1006703238 876748973 758125576 758125576 429234324 650135258 817154883 817154883 513845404 257350649 326688556 779504131 779504131 518954647 609277748 656416698 992662118 992662118 630774637 616164650 661433725 736026357 736026357 400519132 926474637 926474637 458827446 266158866 369917304 1011183664 1012349583 1012349583 766081832 387943458 316282578 216643236 289297952 289297952 497496368 497496368 351550760 351550760 479010506 524956912 524956912 387748582 246365532 246365532 345315844 345315844 57672624 332996464 332996464 311701600 246953640 246953640 125407912 125407912 122044552 122044552 121843896 94625824 94625824 63636640 113915040 113915040 102226328 102226328 129045360 129045360 101468257 101468257 730645538 923720763 923720763 537310725 947222916 1007511681 1007511681 471600654 471600654 863642604 939071410 939071410 386948344 286860834 276049312 6367712 299245762 299245762 272926818 345368586 345368586 931189371 931189371 89657930 663384313 663384313 619711896 652550838 652550838 252066639 104282628 179250518 227353092 630990407 630990407 485796964 621084813 1015054810 1015054810 942164704 942164704 872770571 478464078 981941526 981941526 874032904 874032904 654946036 690071852 690071852 205907841 208127517 208127517 839042170 839042170 800755905 434262099 194806016 589057972 589057972 256167437 167821652 167821652 271854196 271854196 213216110 176538740 159940624 35680528 36769616 36769616 28209072 45662528 65257680 65257680 115614536 115614536 58919920 96672504 96672504 109525080 131250242 529662836 529662836 472420562 300023944 419963420 643011590 820035681 820035681 889591010 900257129 900257129 840054786 840054786 690695476 749166680 749166680 629718600 779357085 779357085 724966197 724966197 808719232 1032731500 1032731500 892663376 892663376 186981186 387585656 387585656 322438962 383808080 383808080 73898906 106161048 111414208 111414208 23144064 23144064 42806352 45952848 45952848 44723280 36433360 150583488 182204596 224696876 224696876 318882975 867923591 867923591 736211360 736211360 486938016 476843406 530651596 1058082945 1058082945 881865438 829428370 891355858 891355858 842084900 197327348 197327348 186855732 39906132 57560256 148743938 292647574 835739915 835739915 419952678 970876991 970876991 478595202 478595202 369606682 906039723 906039723 521543352 601952377 601952377 210888156 502792226 502792226 172713472 416866284 416866284 213517928 213517928 323377312 323377312 49713680 49713680 7340928 7340928 7340032 697179388 864554446 864554446 664086951 323634896 430988106 430988106 18090528 62950216 946005382 946005382 1058733109 1058733109 834288523 1012034701 1012034701 667318812 428740170 410653760 109869384 109869384 78988400 78988400 71337016 93340040 160777072 160777072 127347656 194255480 194255480 170270864 140982660 139813584 139813584 43090016 145777184 189801218 554829824 554829824 278457070 844652864 844652864 576790929 345386569 308942226 576378513 798905393 798905393 272534907 972509168 972509168 1027236472 1027236472 817540232 270653628 504251070 504251070 250993108 315710790 401387884 445046934 1049026576 1049026576 741306383 182978004 182978004 178966932 243029101 860473119 912235769 1058413119 1058413119 957167128 595533104 566282944 566282944 193047457 236995704 308806916 308806916 439196950 439196950 286221768 1039204857 1039204857 491141882 491141882 187698050 276966080 373931930 437757890 845970086 845970086 995584616 995584616 638508045 261812456 553444441 553444441 562580545 562580545 539313410 637837314 637837314 616564041 287050569 861406928 861406928 853282515 805356230 855679865 855679865 432628066 484008738 484008738 613046465 613046465 1029219820 1029219820 829811619 829811619 563513345 563513345 1035129711 1035129711 160579851 607332632 690538285 690538285 705112605 776284717 776284717 126300224 859951748 859951748 856740583 692707344 361759232 361759232 360710250 139471958 631538394 631538394 411069891 871697735 871697735 195173032 332674039 332674039 207366226 517547742 601782692 886132552 886132552 872550411 872550411 733102928 363872608 188636464 126994504 126994504 34806528 235002892 235002892 134308864 134308864 44263504 101278808 101278808 453706838 1025705104 1025705104 541065384 591661233 596910257 596910257 537201264 124781496 480518852 818026554 818026554 80225483 926955404 1073428479 1073428479 842342757 447289567 356686308 356686308 557371528 808983881 816058627 816058627 758040414 809025707 809025707 634549032 688530155 825775436 825775436 464168038 464168038 268997654 268997654 449421392 449421392 457336020 457336020 151207938 160508192 160508192 145035820 458621672 458621672 278348428 266477000 266477000 246990684 437690544 532624730 532624730 517498438 427748356 539397889 539397889 309633954 593976901 593976901 144661476 197999776 197999776 571904084 706005521 706005521 679629377 223004720 121920548 90458416 95307112 95307112 87106360 113427016 113427016 42992432 42992432 143672164 193823028 218873920 243430220 243430220 218460032 218460032 103301556 76082944 103089384 589397436 716387157 1017306078 1017567567 1017567567 409170315 409170315 562199067 720810893 720810893 987370309 987370309 964069517 890902059 605821135 997797558 997797558 575236422 589210804 589210804 1019942978 1019942978 1016470095 910299540 171649939 880031917 880031917 790889848 738147572 695679909 345968877 77947256 262251432 403972174 479199822 558170290 1052893705 1052893705 824034199 824034199 679819270 596522179 538103508 241609324 241609324 181662420 557683392 557683392 199066212 232778768 577219237 577219237 117514048 538842523 717264145 968120582 968120582 147774044 556946169 556946169 942806920 1011352719 1011352719 653082118 653082118 650642649 180104896 643622988 643622988 570739201 537135105 634602752 634602752 839172930 839172930 492913031 492913031 944897734 962514098 962514098 678755751 678755751 636170976 794867223 853202643 853202643 577389378 587727921 587727921 559068730 969934110 969934110 932870165 847642641 949035591 949035591 724880181 877015224 877015224 278661824 903105386 903105386 902014889 299227168 677699072 819879170 819879170 692985115 931922378 931922378 836165583 836165583 749578279 979849504 979849504 945505878 575218608 808031488 808031488 640821814 640821814 959574220 959574220 507768990 507768990 637780099 736135152 736135152 672388288 672388288 171026176 90983816 90983816 38809680 38809680 52647376 52647376 45648752 228623188 228623188 228649296 251996220 713778784 722653749 757607445 912227277 912227277 563023451 642662592 642662592 240189981 776056617 787116029 787116029 938410446 1045856224 1045856224 355305557 197575296 100119550 109232376 325562988 325562988 163035430 594950465 594950465 54808848 576904577 576904577 57921408 40059776 671189425 671189425 184527524 593363381 593363381 710291605 710291605 554053189 574686513 574686513 285869778 286787696 286787696 279253659 279253659 934686611 934686611 270885786 76056576 76056576 381560042 381560042 276581920 276581920 92389408 92389408 58984560 58984560 218902786 606211106 671162373 827195954 827195954 826278051 878395777 878395777 633232172 926296996 926296996 672409688 672409688 824554835 824554835 771359592 771359592 747320397 809827025 865338127 930090855 930090855 657313631 902898186 902898186 847568218 636952048 636952048 35128848 871124801 871124801 864499827 864499827 597440002 69739609 589866179 589866179 589949289 731979859 731979859 1016605002 1016605002 1040534096 1040534096 272212994 316450241 585386097 717441561 725571996 725571996 99466044 540660065 540660065 780304932 780304932 690585916 68082696 239391488 257069116 257069116 819733575 819733575 684583621 674056768 236562712 576202386 576202386 77121096 475115176 475115176 537396616 610271625 982163863 986283410 986283410 725024976 725024976 561871080 597688672 680043584 680043584 966852679 966852679 672011396 672011396 538510337 851566803 851566803 815800387 941892421 941892421 174097223 563521952 694434465 711153684 711153684 555878437 153276676 603289140 603289140 593149617 683736576 683736576 576770517 718324693 718324693 1004948146 1004948146 91231657 1066997738 1066997738 706739733 629755907 698898152 698898152 550709219 496621706 858938840 1006891023 1006891023 981291400 981291400 966790298 966790298 860294591 859780914 859780914 934486881 934486881 723332661 723332661 594022104 774399485 774399485 613753241 613753241 213124173 243552648 836514402 836514402 768281741 536600777 561290162 873898326 873898326 958014977 958014977 425977803 550023570 550023570 706277403 788797453 788797453 711140389 323622808 235115168 235115168 100206312 100206312 88286720 1188416 26586304 26586304 593586032 593586032 539987216 811024612 993815865 993815865 762302271 496515255 230112108 288349600 338919946 548591042 561960833 561960833 143147136 773639296 773639296 401604868 401604868 399147170 399147170 377789658 172089492 172089492 21810336 173621920 173621920 64291332 25165920 21049920 5378688 185339760 187240132 187240132 173801888 146940704 146940704 138428096 64323824 158429364 158429364 187871576 187871576 260113488 260113488 167587812 249072460 249072460 213992120 116657112 116657112 45352584 1574400 7414016 87427244 218456336 256342588 386620602 522954498 522954498 340241288 545205201 545205201 272445186 571046849 571046849 821078016 821078016 781665924 744714637 744714637 324739773 526459326 703991705 703991705 1026096242 1026096242 540411923 410902427 950211818 950211818 561840336 155139384 84043552 92277848 102843720 102843720 241293480 241293480 173668984 132665104 132665104 46060744 34079760 34127872 730344319 842919851 842919851 427283564 1062346716 1062346716 514452850 994354319 994354319 1000179803 1000179803 604619788 358966480 358966480 298823328 449483328 449483328 245899296 487130236 487130236 422085672 420222352 251890692 167796738 134217732 522215668 522215668 5769224 564063145 613351250 840599771 969057211 969057211 929655312 929655312 673547171 1006703238 1006703238 876748973 557006243 424747686 314731302 622762557 817154883 817154883 1048838884 1048838884 938789566 707953283 707953283 438458374 609277748 656416698 992662118 992662118 630774637 956566321 956566321 736026357 736026357 593707344 926474637 926474637 458827446 266158866 367721602 1011183664 1012349583 1012349583 766081832 387943458 316282578 88543232 289297952 289297952 302456504 349959882 351550760 516038784 516038784 479010506 337840724 337840724 318118866 318118866 227199868 219877984 57672624 332996464 332996464 311701600 19632464 7906560 7906560 6134016 39076496 100665360 100665360 51814912 63636640 63636640 113915040 113915040 121877552 121877552 89029816 83946136 83946136 583537860 583537860 572073489 978851341 978851341 907031691 1007511681 1007511681 324928186 324928186 863642604 939071410 939071410 299488400 38463202 24326016 13877696 299245762 299245762 272926818 345368586 345368586 595591299 595591299 357171298 357586594 927996922 927996922 848039688 652550838 355145305 579736842 1019092815 1022562855 1022562855 685454983 897157322 897157322 621084813 462046976 973145472 973145472 574444034 849783936 1041395674 1041395674 665920377 665920377 654946036 690071852 950784057 950784057 790638005 508559904 983132199 983132199 682132512 328166896 548246580 589057972 589057972 389113027 254674870 888357723 888357723 496796054 241386168 176538740 159940624 37441761 595406769 603270545 603270545 45662528 65257680 65257680 540402545 584679488 584679488 598019552 598019552 124781496 124781496 529662836 529662836 518018050 223790926 224047256 224047256 963002628 963002628 889591010 900257129 900257129 840054786 840054786 746728552 749166680 749166680 629718600 629718600 150997008 130230296 114708696 99800040 99800040 51360744 26542728 127216232 127216232 349962504 349962504 71829458 383808080 383808080 73898906 43387672 277915648 277915648 37404760 89031400 89031400 79873352 83838664 83838664 57878384 150583488 182204596 182204596 148659524 86290768 86290768 413713730 736211360 736211360 395396213 315494547 315494547 1058082945 1058082945 881865438 632501170 900804625 900804625 842084900 996209106 996209106 961564882 961564882 155623872 141646080 379325504 835739915 835739915 312494298 970876991 970876991 421602770 476516508 476516508 906039723 906039723 527907774 601952377 601952377 214554380 502792226 502792226 362000976 416866284 416866284 321407378 321407378 362282808 626941033 1031598950 1031598950 869393139 727051232 948802329 948802329 864554446 864554446 664086951 323634896 430988106 430988106 138912324 138912324 946005382 946005382 1058733109 1058733109 834288523 1012034701 1012034701 667318812 428740170 410653760 37319808 37319808 36750096 188794156 188794156 119586864 160777072 207953924 207953924 103102480 241305884 241305884 140982660 138584704 29415504 145027590 285682130 296794292 554829824 777192865 777192865 970953894 970953894 739191945 859906227 859906227 640292406 798905393 798905393 616962249 972509168 1005281576 1027236472 1027236472 817540232 272096076 504251070 504251070 250993108 315710790 971386977 971386977 903191975 903191975 304335603 957213735 957213735 906639452 906639452 860473119 912235769 1058413119 1058413119 957167128 839133750 827665059 832319047 899228486 899228486 496504574 496504574 439196950 439196950 798059016 798059016 436535891 491141882 491141882 114367182 298909920 298909920 272847072 941627968 941627968 342625562 638508045 638508045 261812456 553444441 553444441 562580545 562580545 539313410 637837314 637837314 247849692 112542084 82952516 206643852 742482620 933347986 933347986 917594127 318767132 484008738 484008738 547545632 783905737 1029219820 1029219820 829811619 829811619 676640804 563513345 1035129711 1035129711 259401836 539120156 690538285 690538285 705112605 776284717 776284717 558502985 859951748 859951748 856740583 746659917 600412296 1056106806 1056106806 1033373297 1033373297 919143116 514876145 514876145 176997626 467919460 467919460 334508228 334508228 517547742 517547742 324873768 214694144 4715784 11780352 68169984 68169984 17033832 1961280 71211336 102177880 235002892 235002892 134308864 134308864 44263504 101278808 101278808 249057869 399579313 399579313 541065384 591661233 596910257 898828732 1040173614 1040173614 438046230 1061224461 1061224461 807084098 901465845 901465845 653136783 334795264 286804254 356686308 356686308 557371528 808983881 808983881 783568285 427562453 547942824 547942824 78792513 144438852 144438852 277540902 277540902 436506630 436506630 275385606 477518274 511087502 535958486 535958486 419541536 425845158 425845158 392192168 218644480 247922760 247922760 266477000 266477000 224599428 224599428 256515736 256515736 151072640 206233900 539397889 539397889 144892080 593976901 593976901 44565840 137615428 143061764 571904084 706005521 706005521 679629377 122554617 195452213 751491309 751491309 738908181 162841121 636346668 636346668 584166212 58737328 143672164 193823028 193823028 104268390 312496722 312496722 277660350 494260678 494260678 167519942 589397436 716387157 716387157 498319609 59067476 193850484 193850484 177024084 462522400 462522400 116458566 964069517 964069517 824135338 308093467 997797558 997797558 962209084 585979732 585979732 1019942978 1019942978 1016470095 910299540 371229460 880031917 880031917 790889848 738147572 695679909 435030000 88388048 262251432 403972174 479199822 558170290 1052893705 1052893705 824034199 824034199 679819270 596522179 538364688 200671824 200671824 154215440 557683392 557683392 199066212 199066212 586329344 586329344 27384544 538842523 717264145 968120582 968120582 132170048 556946169 685510252 942806920 1011352719 1011352719 993264832 770181111 770181111 745015904 643622988 643622988 809254957 957429826 957429826 634602752 839172930 839172930 492913031 492913031 416494278 962514098 962514098 678755751 678755751 410059519 794867223 853202643 853202643 577389378 587727921 587727921 559068730 1016139490 1016139490 932870165 847642641 831550070 552937252 581224785 877015224 877015224 861453600 835283043 902014889 902014889 299227168 539232513 819879170 819879170 546882674 931922378 931922378 836165583 836165583 749578279 976591919 976591919 945505878 570818836 808031488 808031488 640821814 640821814 959574220 959574220 731063520 731063520 637780099 736135152 736135152 672388288 672388288 171026176 6823872 82496456 82496456 45053104 130277848 130277848 45648752 197723158 197723158 368869368 368869368 589419454 797756541 797756541 368022777 655556692 655556692 642662592 642662592 113773696 113773696 1709568 528896 69509196 1045856224 1045856224 562173476 562173476 692183205 1005609363 1005609363 457331444 850456956 850456956 651309232 54808848 33693952 46043136 46043136 64214336 177952256 177952256 160663588 160663588 152302116 142778976 138621060 739585580 739585580 722511409 509965849 293552034 270085856 69469200 69469200 852093408 852093408 67634184 76056576 76056576 64844880 111045970 292307389 1041026079 1041026079 925738411 524816079 849769830 849769830 1026519075 1026519075 929310617 929310617 826278051 878395777 878395777 351073966 371670517 467892425 672409688 672409688 326654134 326654134 138338052 713094984 747320397 809827025 865338127 930090855 930090855 657313631 653368794 847568218 847568218 612165368 401531448 125737112 806479697 856041072 856041072 44224848 54954464 69739609 96305468 268470612 589949289 773811718 773811718 1016605002 1016605002 1040534096 1040534096 127516742 10304112 138230272 138230272 241067488 241067488 55482128 109098380 249834588 249834588 103160980 86665384 68082696 239391488 257069116 257069116 201934848 67905000 82458144 82458144 28066408 96488907 436204097 436204097 483570948 491014793 491014793 570425361 982163863 986283410 986283410 1038355289 1038355289 1000090655 1000090655 852758293 489162030 966852679 966852679 548595969 558221985 957527558 957527558 851566803 815800387 706818453 550595413 579889776 579889776 195168805 711153684 960725632 960725632 318797205 730524580 730524580 985362961 985362961 683736576 585058757 538813248 270606594 605192910 683052997 683052997 486511022 486511022 629755907 629755907 698898152 698898152 550709219 408006802 408006802 715967829 715967829 586680273 622071165 966790298 966790298 860294591 859780914 859780914 934486881 934486881 621872776 628003265 628003265 594022104 117515864 113782048 113782048 55125168 55125168 59107440 59107440 183804269 756288413 798619193 798619193 1007544996 1007544996 958014977 459351956 1040718962 1040718962 706277403 788797453 788797453 777421325 421679302 421679302 200406881 320463591 575402657 575402657 837401347 857296561 857296561 94806304 1020855988 1020855988 899317143 899317143 481957710 394682600 394682600 230112108 633672965 633672965 548591042 561960833 690113442 690113442 840183246 840183246 770196109 576979308 14975042 192775694 192775694 109890648 293618710 293618710 26280064 55247412 222955772 516358294 516358294 260255868 272972694 272972694 187240132 173801888 146940704 146940704 138428096 23122696 67255216 102629640 102629640 82056928 116589592 116589592 106045664 88554672 64691496 72610432 72610432 82847912 82847912 18425376 6654464 87427244 90255360 90255360 87645616 292678074 340241288 340241288 545205201 545205201 308551960 571046849 571046849 821078016 821078016 781665924 744714637 744714637 324739773 526459326 703991705 703991705 1026096242 1026096242 540411923 410902427 950211818 950211818 561840336 155139384 58860400 96423768 96423768 104333256 104333256 78669952 78669952 625774689 625774689 606126873 726976677 726976677 46957605 570986557 570986557 578889108 578889108 560013324 204988046 434909338 434909338 387573306 524927134 524927134 498575460 394078052 305478936 287119012 119648444 245899296 487130236 487130236 503359764 503359764 174263316 398907882 398907882 333953048 973344768 528512186 528512186 166765902 496112238 496112238 390102350 929655312 929655312 673547171 732046128 917640027 917640027 424747686 724144719 724144719 622762557 622762557 614215948 1048838884 1048838884 938789566 613997886 570442888 403178164 57721776 57721776 37242336 469093588 590612519 956566321 1003221143 1003221143 713345109 593707344 1016685998 1016685998 974323305 1048440735 1048440735 207559225 52354608 52354608 33970592 56672688 153824280 153824280 113276432 113276432 282545160 349959882 349959882 516038784 516038784 130598136 130598136 316310056 318118866 318118866 293618272 269533698 280214336 280214336 45445664 78455816 78455816 69428224 70987520 102453520 110891280 110891280 109314128 101162000 101162000 35077120 37067736 37067736 121877552 121877552 112898690 293849818 336874107 842931987 910432136 910432136 978851341 978851341 907031691 905969691 71303304 340347024 850239410 850239410 497822208 302269310 284033312 284033312 281620224 14617120 23053440 23053440 75620416 75620416 286294705 595591299 927122674 927122674 844857521 927996922 927996922 848039688 368452227 790368125 790368125 1019092815 1022562855 1022562855 685454983 897157322 897157322 341690499 290540014 973145472 973145472 574444034 849783936 1041395674 1041395674 665920377 665920377 944602050 944602050 950784057 950784057 790638005 508559904 1031260555 1031260555 1003916197 1003916197 557842832 574619680 574619680 389113027 360369440 888357723 888357723 496796054 475958496 297614958 315208178 315208178 595406769 603270545 603270545 323638176 45662528 61317728 540402545 584679488 584679488 598019552 598019552 124781496 124781496 469243764 518018050 518018050 121247544 124409908 165988052 963002628 963002628 809834759 713700160 713700160 723138080 746728552 746728552 692832301 583016645 88427161 150997008 150997008 130230296 114708696 43365000 21108096 42509472 93869282 365039866 365039866 562713035 583533153 583533153 915051971 915051971 273996314 336706128 336706128 277915648 270812034 840183779 840183779 590511626 620624768 620624768 302285072 57878384 82196288 180054481 590058037 991131426 991131426 982565459 982565459 395396213 395396213 441840424 532990166 532990166 497254909 632501170 632501170 900804625 900804625 449197490 996209106 996209106 961564882 961564882 155623872 141646080 379325504 379325504 289456290 289456290 134710198 140970240 411439240 476516508 476516508 279342316 169884090 527907774 527907774 87228858 863205171 863205171 712877483 738421908 738421908 103949495 1028460269 1028460269 770315757 737019928 1031598950 1031598950 869393139 727051232 948802329 948802329 795982544 795982544 301705018 481842476 481842476 143751300 545344000 546695745 546695745 144555332 850304168 924319977 924319977 531273384 531273384 460546384 78528166 75968544 69322632 69322632 71150400 188794156 188794156 119586864 138426652 207953924 207953924 124981960 241305884 241305884 214346684 214346684 177311844 147143124 285682130 969269399 969269399 777192865 777192865 970953894 970953894 739191945 859906227 859906227 640292406 640292406 701912532 701912532 718537557 1005281576 1005281576 996951099 996951099 923307447 155481103 560723171 636485097 636485097 971386977 971386977 903191975 903191975 304335603 957213735 957213735 906639452 906639452 712448057 712448057 441191574 479274590 839133750 839133750 827665059 832319047 899228486 899228486 496504574 496504574 526500232 526500232 798059016 798059016 436535891 588714514 588714514 71641864 298909920 518857266 518857266 941627968 978399413 978399413 221328684 221328684 37342048 132992096 132992096 868312302 868312302 544567237 314419648 314419648 538181904 578028289 578028289 247464156 742482620 933347986 933347986 917594127 318767132 319833704 378061914 547545632 783905737 783905737 994607936 994607936 676640804 676640804 403181415 808098918 837189961 951090929 951090929 750423980 750423980 239111296 239111296 122942112 558502985 558502985 875877503 995357367 995357367 639787950 1056106806 1056106806 1033373297 1033373297 919143116 514876145 514876145 555271733 555271733 467919460 334508228 334508228 79161330 134548992 134548992 20189632 2408448 2408448 78319360 78319360 4059136 4059136 71211336 102177880 102177880 78908232 109476424 109476424 36192256 42078288 42078288 411150194 1016667140 1016667140 302972991 273554496 273554496 898828732 1040173614 1040173614 438046230 1061224461 1061224461 807084098 901465845 901465845 734398119 370183661 370183661 432462054 834775184 834775184 199399822 569381163 569381163 76028680 343945323 547038296 638298704 648785777 649795384 649795384 287474840 436506630 436506630 275385606 536234456 536234456 535958486 535958486 419541536 425845158 425845158 392192168 218644480 218644480 151833644 156158364 156158364 224599428 224599428 256515736 256515736 151072640 206233900 206233900 24908964 1171968 13371792 44565840 44565840 14093056 45664272 546223428 546223428 671352832 671352832 122554617 195452213 751491309 751491309 738908181 162841121 636346668 636346668 584166212 58737328 58737328 40198608 212672728 212672728 312496722 312496722 277660350 958840033 958840033 167519942 1041443864 1041443864 870441459 353433801 973227778 977798295 977798295 971835856 971835856 517300700 517300700 191211138 824135338 824135338 308093467 302252720 962209084 962209084 320415282 428978994 428978994 413880658 330437490 223744868 371229460 371229460 560336564 682699553 682699553 627906337 683271341 683271341 555198540 555198540 927199419 927199419 899194359 671689142 671689142 810882768 848247891 848247891 538364688 281241184 281241184 196132080 180354900 64363248 64363248 42995712 586329344 586329344 27384544 28762464 28762464 25174376 341868608 350273994 742408526 742408526 685510252 761216685 993264832 993264832 770181111 770181111 745015904 257697284 352947000 809254957 1009408552 1009408552 180175619 412205056 412205056 403552966 416494278 416494278 424149920 432408704 432408704 296327104 330985906 330985906 337659786 337659786 329537632 329537632 557435992 557435992 1016139490 1016139490 813768771 813768771 191415732 722200113 722200113 588903477 861453600 861453600 71083425 58720328 298784712 873202026 889717803 889717803 471982350 471982350 430303908 296931876 410786690 520655376 520655376 391599188 469962082 843544756 843544756 723741555 723741555 810582018 810582018 685278411 876609675 876609675 731063520 440533020 105906580 8493248 14053824 14053824 38030720 38030720 82496456 175970641 175970641 161010660 161010660 832748037 832748037 1067876669 1067876669 795686330 857118748 857118748 1071494387 1071494387 819427999 655556692 550216325 857655842 1067047078 1067047078 885894394 752432763 346459195 616683816 616683816 562173476 890327140 1016328783 1016328783 1005609363 457331444 850456956 850456956 651309232 684041284 684041284 577298704 127278112 127278112 80611944 159647844 160663588 160663588 205637692 205637692 54864048 739585580 739585580 722511409 541403265 608200785 844221560 844221560 662821474 823232928 823232928 705046526 368288576 368288576 297396066 85911442 292307389 1041026079 1041026079 925738411 524816079 849769830 849769830 1026519075 1026519075 929310617 929310617 699974917 1019637965 1019637965 351073966 850705776 1046706336 1046706336 396998610 1034163327 1034163327 601835104 601835104 133028184 133028184 605620745 614280777 614280777 604300864 250948572 46204160 124322760 124322760 66135024 125737112 699942964 699942964 566157153 158915101 395876100 407246982 407246982 272668834 470679120 773811718 773811718 681100869 521726588 521726588 419529242 335607328 277711942 268497408 176822108 176822108 55833264 55833264 94431712 243742812 243742812 256137320 256137320 152094720 201460624 201460624 201934848 418416998 418416998 348180960 609358530 1007755791 1015818243 1015818243 1009790633 1009790633 929742675 736929146 613720522 570425361 901906651 901906651 1038355289 1038355289 1000090655 1000090655 852758293 489162030 839806460 839806460 548595969 558221985 957527558 957527558 708303381 708303381 706818453 550595413 579889776 835902179 835902179 559076001 960725632 960725632 318797205 730524580 730524580 985362961 985362961 585058757 585058757 308572613 270606594 605192910 683052997 683052997 486511022 486511022 323640242 323640242 491389952 491389952 458211892 408006802 408006802 715967829 715967829 586680273 586680273 706600660 843327488 858208688 858208688 857423408 846405432 807415299 619650944 628003265 628003265 569265320 114860120 96231496 62196056 55125168 55125168 59107440 59107440 183804269 756288413 798619193 798619193 1007544996 1007544996 998938280 764065369 1040718962 1040718962 539624205 623079737 777421325 777421325 421679302 421679302 200406881 320463591 575402657 575402657 837401347 857296561 857296561 337718400 1020855988 1020855988 899317143 899317143 727238325 419565606 419565606 474624400 633672965 633672965 146402222 356352908 690113442 690113442 840183246 840183246 770196109 576979308 375777652 192775694 504069258 504069258 293618710 471650838 471650838 261145212 222955772 516358294 516358294 260255868 272972694 272972694 160698624 160698624 3019364 15824640 15824640 23122696 94126192 102629640 102629640 83921688 85067856 106045664 106045664 115255640 115255640 85129760 85129760 82847912 82847912 68890048 96253792 96253792 90255360 90255360 74580640 34990608 90221496 90221496 90327176 323156024 323156024 111198552 279216464 346294602 346294602 71566336 71566336 4194432 33818640 33818640 310744704 311678162 311678162 49362816 49362816 38011264 11220288 28975424 34355520 85329249 85329249 96423768 96423768 539364385 562826337 562826337 120788305 625774689 625774689 606126873 726976677 726976677 587219016 669549049 669549049 618693753 578889108 560013324 221963696 434909338 434909338 350015178 104783640 498575460 498575460 394078052 305478936 245899296 119648444 245899296 327221580 327221580 503359764 503359764 503345424 398907882 398907882 333953048 973344768 536870912 840048030 840048030 774129717 774129717 939525562 939525562 385255044 419758345 732046128 917640027 917640027 313671539 724144719 724144719 604154426 614215948 614215948 977609260 977609260 941621828 163059095 403178164 403178164 57721776 57721776 37242336 469093588 469093588 677073296 1003221143 1003221143 764544260 764544260 1016685998 1016685998 974323305 1048440735 1048440735 695701930 757072173 1042410696 1042410696 355413026 334372338 157602902 89532544 304316684 304316684 272823068 375500556 375500556 353077524 341602170 96811224 336818688 337715466 337715466 336810498 336810498 280214336 305535762 305535762 304503696 78455816 69428224 70987520 102453520 110891280 110891280 109314128 101162000 101162000 45232192 11268112 3929856 5981728 62110720 112898690 293849818 336874107 842931987 910432136 910432136 523526894 844349598 844349598 839959059 291267608 453612580 934499102 934499102 915932319 597667316 345362720 284033312 281620224 26449536 29990624 29990624 75620416 75620416 12677120 62935554 927122674 927122674 844857521 882771531 882771531 571149641 724045154 790368125 790368125 268699650 949563170 966787431 966787431 1032447087 1032447087 122684088 219964424 714673672 981763856 981763856 571810262 571810262 446387727 446387727 343946629 977438146 977438146 715838805 780657850 780657850 411313200 1031260555 1031260555 1003916197 1003916197 557842832 574619680 574619680 472026119 439489822 439489822 406230024 475958496 475958496 297614958 315208178 315208178 141669888 317854368 323638176 691180356 691180356 80876205 714119348 714119348 1409729 45375956 181496772 181496772 175235988 476161166 476161166 274388610 487768082 487768082 539161472 946020864 946020864 806425479 268446816 26017794 723138080 723138080 723129909 692832301 583016645 88427161 65445976 117518856 117518856 37655296 37655296 21108096 42509472 93869282 365039866 365039866 562713035 583533153 583533153 915051971 915051971 486912014 486912014 408396508 272822358 450196418 840183779 840183779 590511626 620624768 620624768 950218835 950218835 762238928 762238928 650796888 991131426 991131426 982565459 982565459 311706311 272738370 441840424 532990166 532990166 359771126 29483762 139596340 325785814 449197490 449197490 135344704 4599892 34466832 64530384 64530384 52188208 335700226 557862663 557862663 492781230 537056059 537056059 527589450 411439240 279342316 734171933 734171933 508683548 864810857 864810857 863205171 863205171 712877483 738421908 944243198 944243198 1028460269 1028460269 770315757 737019928 165396800 165396800 157036368 157036368 23282944 128320360 795982544 795982544 301705018 481842476 713885813 713885813 681054212 681054212 787032280 787032280 850304168 924319977 924319977 438444846 460546384 460546384 387613808 387613808 111747136 111747136 110683152 110683152 92358408 95455272 95455272 17640480 39056016 124981960 229698148 229698148 214346684 214346684 194339060 194339060 156664128 969269399 969269399 1019254090 1019254090 809125079 426917897 808552664 845540283 845540283 121921867 707936612 707936612 701912532 718537557 718537557 814103338 996951099 996951099 1025035811 1025035811 560723171 636485097 636485097 942922369 942922369 881181030 881181030 275043458 275043458 311202560 311202560 284696594 284696594 740312160 766035309 766035309 587801749 587801749 465635060 405302128 405302128 382289718 514408958 514408958 526500232 526500232 612774862 786770397 786770397 751173648 751173648 103745138 353778282 518857266 518857266 537396225 978399413 978399413 436212998 221328684 37342048 132992096 132992096 868312302 868312302 544567237 906281532 957351975 957351975 578028289 578028289 247464156 247464156 303686854 303686854 709363380 790230278 831623258 831623258 829085091 608195465 608195465 994607936 994607936 688338981 688338981 29624544 346298371 837189961 951090929 951090929 750423980 750423980 181309012 110561960 110561960 112199640 455691269 875877503 995357367 995357367 639787950 309500554 70067230 39323280 351722442 456254055 456254055 648716094 648716094 555271733 421863432 178967892 275288084 325326062 325326062 306330360 213855104 213855104 169516804 216406784 216406784 228179496 228179496 12195648 20773664 44171264 44171264 2138112 2138112 2097216 10486080 19597088 411150194 1016667140 1016667140 932089507 932089507 273554496 249680272 249680272 65070550 47785680 963128704 963128704 430872130 814879299 814879299 734398119 585106534 461520960 461520960 834775184 834775184 894207202 894207202 660422176 823870536 823870536 624963640 638298704 648785777 649795384 649795384 287474840 321688866 321688866 117737744 536234456 536234456 483807966 119575478 21332224 23456160 23456160 4458624 188743680 188743680 89049520 23060096 206286080 206286080 186550056 186550056 167772180 221117728 474408204 539930023 539930023 218188192 557975557 557975557 84018208 86709792 412696389 890200110 890200110 1015899211 1015899211 1007804943 337159173 11836160 11836160 18292224 18292224 17376288 17239040 17239040 42010112 178782340 178782340 212672728 212672728 15175124 157523864 331907104 958840033 958840033 399898764 1041443864 1041443864 870441459 353433801 973227778 977798295 977798295 971835856 971835856 517300700 517300700 389211552 389211552 239554992 52028976 118039608 570001344 570001344 320415282 428978994 428978994 413880658 330437490 287779686 287779686 295133106 295133106 682699553 682699553 627906337 683271341 683271341 555198540 555198540 927199419 927199419 899194359 616359022 85735424 810882768 848247891 848247891 538482752 554350116 723245168 723245168 590543825 567763664 41099328 189249397 189249397 43730368 8122183 397142851 440301074 627573803 627573803 535625836 742408526 742408526 625612647 625612647 528101421 86098984 365504240 754985052 754985052 630532153 630532153 1026501425 1060060955 1060060955 180175619 974408646 974408646 756660436 756660436 958274787 958274787 424149920 286978624 286978624 270194720 136454112 167875712 190532964 190532964 167571905 607389984 607389984 852498702 852498702 813768771 813768771 710237316 722200113 722200113 588903477 917962644 917962644 879799635 879799635 298784712 873202026 889717803 889717803 471982350 471982350 430303908 227793376 410786690 520655376 520655376 633306984 633306984 843544756 865282898 865282898 856688821 867206034 867206034 685278411 876609675 876609675 784338947 784338947 943414598 943414598 675554048 675554048 444614034 48062736 48062736 175970641 175970641 161010660 269549666 832748037 832748037 1067876669 1067876669 795686330 857118748 857118748 1071494387 1071494387 819427999 646464577 646464577 857655842 1067047078 1067047078 885894394 826411673 673114143 673114143 890676324 940436487 940436487 1016328783 1016328783 272840458 272840458 349251218 599261677 599261677 684041284 684041284 577298704 378045528 369098778 369098778 302829576 4885568 17220816 205637692 205637692 54864048 704938034 704938034 600842356 541403265 608200785 844221560 844221560 662821474 662821474 705046526 705046526 374965788 482870478 482870478 528533716 528533716 222825654 222825654 271631106 364216426 831022592 831906403 831906403 598792778 873693507 873693507 699974917 1019637965 1019637965 990310168 990310168 1046706336 1046706336 396998610 1034163327 1034163327 601835104 601835104 133028184 133028184 605620745 614280777 614280777 604300864 158272116 46204160 17375248 180421824 180421824 187834688 699942964 699942964 545969217 158915101 395876100 407246982 849026224 1031373891 1031373891 990324033 990324033 831335523 186500195 419529242 419529242 335607328 277711942 268497408 176822108 176822108 55833264 55833264 39899856 243742812 243742812 256137320 256137320 152094720 152094720 88089768 141394568 418416998 418416998 722144465 722144465 1007755791 1015818243 1015818243 1009790633 1009790633 929742675 848348476 848348476 678219141 901906651 901906651 696508646 696508646 577398552 577398552 634429650 634429650 748826761 748826761 210313742 270323202 270323202 566939236 675433095 675433095 944802305 944802305 579111600 835902179 835902179 559076001 57819409 458752 458752 8874048 8874048 34210176 34210176 545930496 551417985 551417985 8924160 83998784 97756776 117167392 131281656 260916256 260916256 422435448 491389952 524096560 524096560 51384644 154343444 154346340 228463152 228463152 178875948 919092888 919092888 858208688 858208688 857423408 846405432 125569688 86803976 86803976 23118240 21810464 21810464 13960064 13960064 69582976 69582976 24698880 24698880 612491660 671264773 694018725 750647069 750647069 998938280 998938280 764065369 764065369 55841501 38832152 83906568 141726216 223351448 318805074 397212544 397212544 176416016 175845920 175845920 88215720 291469856 291469856 337718400 1038292364 1038292364 711214891 727238325 727238325 713056641 419565606 551742509 1017487776 1017487776 59641071 1060094092 1060094092 701175837 397962586 415239022 415239022 402523864 402523864 403575926 504069258 504069258 228489266 471650838 471650838 261145212 172360260 491981268 491981268 346503498 99627354 148838932 148838932 136319364 169042436 184029152 184029152 58303872 94126192 94126192 89219744 83921688 79235328 77580616 129668368 129668368 117936800 117936800 85129760 134088152 134088152 125249696 125249696 122151936 154466884 191033668 191033668 190882196 170052276 403702278 403702278 323156024 323156024 425963934 425963934 386134206 426722365 491265401 495192174 495192174 883401101 1022624751 1022624751 279919266 768419592 768419592 746848578 746848578 778464986 778464986 587162688 257403360 85329249 58988608 58988608 539364385 932647330 932647330 597240482 597240482 595384721 536873713 851485958 851485958 587219016 669549049 669549049 618693753 203108413 208298216 221963696 221963696 22694128 64510848 64510848 66340752 66340752 23405640 507863574 507863574 336450694 348880280 348880280 335581192 335581192 503345424 503345424 327368754 282073327 633834379 903934313 536870912 840048030 840048030 774129717 774129717 939525562 1035474907 1035474907 1009256545 941885703 606150921 606150921 335618345 117543016 117543016 973369892 973369892 964142192 837748867 941621828 941621828 543297921 541762832 286648834 286648834 437209780 437209780 293359728 674532147 674532147 282886042 282886042 764544260 764544260 949135068 949135068 486539310 872518662 872518662 696320922 757072173 1042410696 1042410696 355413026 334372338 157602902 89532544 304316684 304316684 272823068 375500556 375500556 353077524 341602170 96811224 336818688 337715466 337715466 336810498 336810498 270780944 305535762 305535762 304503696 48111312 48111312 33576448 16146368 16447744 42319888 42747456 42747456 45232192 45232192 11268112 84184480 84184480 127606944 127606944 65216456 322922240 322922240 680663813 680663813 523526894 844349598 844349598 839959059 291267608 453612580 934499102 934499102 915932319 597667316 345362720 59224976 23191968 48607970 314207570 314207570 292535778 117528635 369498121 369498121 576148628 974413322 974413322 806391385 345407825 571149641 724045154 724045154 490487602 807935824 949563170 966787431 966787431 1032447087 1032447087 370997820 495852130 806948376 981763856 981763856 954058375 954058375 446387727 446387727 343946629 977438146 977438146 715838805 557343653 678800512 678800512 561317920 453724258 285347874 285347874 437796914 541114630 541114630 472026119 795168779 944821553 944821553 206119696 206119696 199678452 172566756 559857669 559857669 157163172 692243397 692243397 691180356 80876205 714119348 739280813 739280813 658785541 658785541 181496772 175235988 476161166 476161166 272192002 487768082 487768082 539161472 539161472 317806288 278082114 268446816 58496988 551275968 565966689 627542528 762808324 762808324 172466569 500191720 500191720 519420276 519420276 307658352 237772176 95776160 92232944 37356960 38011168 56887728 56887728 398739750 398739750 268917492 486912014 486912014 408396508 272822358 450196418 450196418 876604334 876604334 473817236 473817236 950218835 950218835 762238928 762238928 650796888 136358400 580925464 679526416 748808341 748808341 371477232 396427568 396427568 332521696 303038994 968422836 968422836 185733764 1004209347 1004209347 35021092 995771667 995771667 156087364 155403424 332472162 335700226 557862663 557862663 954153061 954153061 1003286725 1003286725 428581951 357440682 1035857733 1035857733 931012539 864810857 864810857 692232200 370167838 20484 195304610 944243198 944243198 340006949 17875488 112618672 116597600 263363872 263363872 66430272 66430272 23282944 98642296 98642296 422120832 508183622 802742423 802742423 713885813 681054212 681054212 787032280 787032280 543491200 629369784 695464869 804302936 804302936 381236842 387613808 387613808 185795456 219410988 219410988 110683152 92358408 95455272 95455272 17640480 8717408 775227968 789770360 789770360 319154226 706203735 706203735 723681302 811671939 811671939 766587492 1019254090 1019254090 809125079 642781650 808552664 845540283 1065672014 1065672014 707936612 882426879 882426879 707483103 707483103 814103338 814103338 1007764124 1025035811 1025035811 309718237 37539600 752423405 752423405 756937452 881181030 881181030 275043458 275043458 180258640 707489104 707489104 870318579 870318579 766035309 766035309 354209549 344507466 137957194 175222214 382289718 382289718 514408958 514408958 431278304 431278304 612774862 974203226 974203226 751173648 751173648 103745138 353778282 353778282 370213941 992162103 992162103 1012865163 1012865163 879763119 571474568 545460809 222989353 614777793 614777793 871398236 1043956176 1043956176 957351975 926660307 926660307 690957865 857890615 1022550896 1022550896 709363380 790230278 831623258 831623258 829085091 720431044 720431044 887164745 887164745 688338981 688338981 689277796 689277796 560204516 154141476 15205824 234883712 260253792 260253792 235280412 110561960 388811422 508874042 927535322 927535322 562771041 481853904 309500554 70067230 39323280 351722442 351722442 268440214 648716094 648716094 446091317 421863432 178967892 446235922 446235922 521978790 521978790 505842208 315147474 319996486 353917184 353917184 228179496 228179496 99800808 99800808 118543208 124824536 225566816 225566816 195429412 195429412 50599172 159462976 973810419 973810419 932089507 932089507 859639803 859639803 145812362 101762101 47785680 963128704 963128704 600594740 742923429 742923429 625872045 585106534 461520960 461520960 124839754 357935282 894207202 894207202 660422176 823870536 823870536 624963640 373957808 235804248 235804248 4224 21106816 337663392 337663392 117737744 456579480 456579480 437705238 155458852 155458852 153751936 181344996 181344996 154990852 89049520 208192908 304949430 304949430 387357076 388108988 388108988 167772180 221117728 474408204 539930023 539930023 470100002 557975557 557975557 84018208 86709792 412696389 890200110 890200110 1015899211 1015899211 1007804943 674308421 345845642 30873248 395122154 395122154 589800420 589800420 555051332 29884756 178782340 178782340 173214996 258556310 385794314 385794314 427364808 427364808 239668858 399898764 399898764 472833294 983299080 983299080 596236229 596236229 22064709 66056192 66056192 271811344 318395690 389211552 581229010 865889523 865889523 200430174 989322180 989322180 692248880 692248880 843207238 843207238 949100672 949100672 311636036 295133106 295133106 63649008 112829536 336019288 336019288 349394496 349394496 348514506 309408136 47708880 115987025 612113281 612113281 663828265 663828265 551674305 538482752 554350116 723245168 723245168 590543825 567763664 41099328 189249397 189249397 58929264 50546656 397142851 440301074 627573803 627573803 535625836 641798849 641798849 385427418 385427418 102244802 127585096 127585096 754985052 754985052 630532153 630532153 1026501425 1060060955 1060060955 584324731 1066541765 1066541765 756660436 756660436 958274787 958274787 10566848 286978624 286978624 270194720 39111168 167875712 170703904 170703904 30402644 799252928 799252928 852498702 852498702 739543055 986080262 986080262 907599048 907599048 186388020 917962644 917962644 879799635 879799635 793510425 725092651 522981259 522981259 346417482 967309320 967309320 740866048 692736428 692736428 606651657 633306984 633306984 423762663 865282898 865282898 856688821 867206034 867206034 519047516 519047516 489235758 784338947 784338947 943414598 943414598 675554048 675554048 444614034 48062736 48062736 32865632 43508304 43508304 269549666 401015264 472761100 472761100 398102384 501354990 501354990 328620578 328620578 789053476 789053476 814038022 814038022 801521766 801521766 541720722 826411673 826411673 673114143 673114143 890676324 940436487 1033872007 1033872007 394854650 807462121 807462121 349251218 349251218 290068330 100663320 151310344 378045528 378045528 369098778 369098778 302829576 4885568 67609412 67609412 49265244 71908044 109700828 600842356 600842356 549576897 549576897 554820129 554820129 869337618 869337618 330510010 330510010 374965788 482870478 482870478 528533716 528533716 222825654 222825654 271631106 364216426 906765936 906765936 67281680 67281680 69543944 69543944 571549376 676996945 676996945 990310168 990310168 104716343 62655568 62655568 149499793 688721969 735416389 735416389 759265101 759265101 177235452 196151657 624353497 710645357 710645357 200587441 200587441 466438546 466438546 448803122 733951858 733951858 725621189 725621189 595591281 654836793 849026224 1031373891 1031373891 990324033 990324033 831335523 1049889375 1049889375 970241252 970241252 701723302 144182176 144182176 32778964 80099520 84312264 119896264 119896264 136417560 136417560 176261584 176261584 152094720 120606396 192601772 258446076 258446076 722144465 722144465 943851596 943851596 121112376 961946270 961946270 575737366 848348476 848348476 678219141 741679325 741679325 696508646 696508646 963208716 963208716 634429650 867057011 867057011 841207049 437064148 98043624 470451296 478692382 675433095 675433095 944802305 944802305 657905931 725617460 725617460 175350129 418503264 867439552 867439552 598745152 576791463 843190612 843190612 820706693 820706693 551417985 1015832644 1015832644 888632201 740633929 777126025 777126025 680095985 667365888 1056819247 1056819247 757268867 1047890025 1047890025 508879518 432065522 555360867 559132705 919092888 919092888 342174770 342174770 275725698 538317720 538317720 86803976 86803976 67800297 566231393 770031725 770031725 1063674909 1063674909 979757463 979757463 299675265 964382004 964382004 694018725 750647069 750647069 417312385 523238718 523238718 138561556 138561556 221385079 816841539 816841539 309102245 408683795 408683795 397212544 112908120 132347400 132347400 889194627 889194627 963722277 963722277 1038292364 1038292364 480912744 501428814 713056641 713056641 182575572 551742509 1017487776 1017487776 235280671 1060094092 1060094092 701175837 252372193 379101202 379101202 402523864 402523864 427951104 427951104 379307626 169769034 378410168 378410168 387853842 387853842 491981268 491981268 346503498 99627354 148838932 148838932 136319364 169042436 184029152 184029152 58303872 58303872 34040128 126552184 126552184 97631400 97631400 129668368 129668368 274255898 274255898 374197656 374197656 134088152 275142080 292646850 292646850 154466884 397884328 397884328 363248208 170052276 403702278 403702278 530715006 530715006 425963934 425963934 386134206 426722365 978249580 978249580 938949627 883401101 1022624751 1022624751 519143680 768419592 768419592 746848578 746848578 778464986 778464986 587162688 257403360 597688408 597688408 624827256 849005521 932647330 932647330 597240482 597240482 308809074 404572562 851485958 851485958 419504154 419504154 377552948 166200848 166200848 191022784 191022784 54301748 22694128 64510848 64510848 66340752 66340752 23405640 507863574 507863574 379297036 379297036 518611292 518611292 335581192 268619778 327368754 327368754 282073327 633834379 1019589048 1043485234 1043485234 520787219 0 369788502 854722318 1035474907 1035474907 1009256545 941885703 838864896 606150921 889210896 889210896 604428297 973369892 973369892 964142192 837748867 837748867 772412907 772412907 890373321 890373321 326292402 703372653 703372653 990145987 990145987 674532147 886575326 886575326 667657428 667657428 949135068 949135068 323609778 764237920 764237920 696320922 442050140 247413122 106974112 58645048 87961616 118247560 118247560 103440520 103440520 101420320 85141376 85141376 68631048 68631048 50516016 50516016 43188496 47979584 47979584 41539600 41539600 35415936 1436160 1436160 1075200 789504 1257984 1771264 38031360 44152976 44152976 42747456 35354192 35354192 318849586 318849586 84184480 127606944 127606944 65216456 322922240 322922240 302041666 502276652 502276652 524365838 524365838 46343992 140335348 140335348 226747112 226747112 197314200 59480560 59480560 59224976 23191968 48607970 314207570 314207570 292535778 117528635 369498121 369498121 576148628 974413322 974413322 274891392 274891392 78645006 310385166 755639345 755639345 807935824 807935824 690881347 730608343 730608343 402729250 402729250 523375123 806948376 881388165 881388165 954058375 954058375 229377120 304160104 814548739 814548739 1005009399 1005009399 971330214 765996078 737537013 561317920 978912722 978912722 509108450 604912700 773200953 773200953 458499193 795168779 944821553 944821553 206121600 206121600 143538272 153617700 559857669 559857669 377886012 1056971392 1056971392 675283333 33790613 149512713 739280813 739280813 658785541 658785541 252483872 252483872 229166192 193604776 210713676 293763868 293763868 176193732 764025169 764025169 447360100 447360100 257036988 551275968 565966689 565966689 762808324 773052732 865573166 865573166 500191720 519420276 519420276 315861954 315861954 287537130 519817812 519817812 477214186 893386923 893386923 713955619 713955619 736381978 736381978 466856662 181544962 47211142 564272206 564272206 876604334 876604334 319044681 247253660 4210720 21020832 21020832 115481165 625742597 876090091 876090091 1010876389 1010876389 748808341 620951123 620951123 396427568 338841152 338841152 968422836 968422836 413884754 1004209347 1004209347 64457106 995771667 995771667 156087364 155403424 332472162 332472162 296110546 537531393 954153061 954153061 1003286725 1003286725 688195748 1024208899 1035857733 1035857733 931012539 654916482 692232200 692232200 847332911 847332911 654333019 654333019 609673012 765579945 765579945 691905544 691905544 263363872 263363872 200532980 200532980 193987136 189574164 189574164 422120832 508183622 802742423 1050036782 1050036782 1014311823 654976177 654976177 603988992 106838037 629369784 695464869 804302936 804302936 208887940 266779088 266779088 185795456 219410988 219410988 93372448 25750312 61386504 229688648 229688648 214243761 775227968 789770360 789770360 319154226 706203735 706203735 723681302 811671939 811671939 766587492 766587492 683034169 683034169 786567729 786567729 446959872 1065672014 1065672014 555929889 882426879 882426879 707483103 707483103 698945443 453641715 1007764124 1007764124 585435815 585435815 330146786 752423405 752423405 819111622 819111622 973265849 973265849 219490860 261093914 707489104 707489104 870318579 925173107 925173107 408591706 408591706 706516673 706516673 171890644 507077488 507077488 159662176 528795774 528795774 453302718 453302718 974203226 974203226 899419701 899419701 831459509 215759937 214042580 370213941 992162103 992162103 1012865163 1012865163 879763119 571474568 545460809 222989353 614777793 614777793 871398236 1043956176 1043956176 649814842 926660307 926660307 690957865 857890615 1022550896 1022550896 709083950 709083950 710972248 710972248 579462225 720431044 720431044 552405440 675576129 675576129 162653028 689277796 689277796 560204516 245814172 245814172 555982700 555982700 260253792 235280412 493948694 493948694 508874042 927535322 927535322 581156955 595669339 740950458 740950458 521027962 521027962 216296588 216296588 715322210 1023875920 1023875920 19894080 56896146 446235922 446235922 521978790 521978790 505842208 315147474 319996486 353917184 429655530 429655530 418121856 99800808 99800808 222396620 222396620 225566816 678395237 678395237 536891493 640425821 721945653 721945653 994314423 995143895 995143895 957262357 1025597085 1025597085 641660718 641660718 283620629 283620629 600594740 742923429 742923429 625872045 457180718 612571282 612571282 513685777 270140118 180620054 152127488 117514296 117514296 241804800 243348880 243348880 235804248 394478120 394478120 466501740 466501740 396415462 75503642 115525728 115525728 498342864 498342864 479384686 405372804 405372804 1058609311 1058609311 1007448747 1007448747 1063175867 1063175867 1056159861 1056159861 388108988 553776486 724091162 724091162 284492864 422440110 470100002 470100002 373885104 33819696 76205092 151835720 730915940 730915940 194626565 135799296 674308421 674308421 541168704 721749109 721749109 395122154 768157912 768157912 603550420 39747840 37959328 173214996 173214996 258556310 385794314 385794314 427364808 759527077 759527077 156837136 253715250 472833294 983299080 983299080 678299845 601818696 796884709 796884709 705177392 61408432 21364736 127456209 581229010 865889523 865889523 200430174 989322180 989322180 692248880 692248880 843207238 1021668134 1021668134 949100672 311636036 272636416 274078338 274078338 112829536 112829536 88848336 140001796 140001796 135496856 135496856 105066524 115987025 612113281 612113281 663828265 663828265 551674305 43088208 9868289 546035968 546035968 58886593 44048880 28188000 59717408 59717408 58929264 830196480 830196480 837970048 837970048 456407141 55849472 246522460 283182616 1034759535 1034759535 463082823 463082823 180139639 809042695 809042695 1035601924 1035601924 1035418479 851053056 851053056 584324731 1066541765 1066541765 996420729 717632716 717632716 139330500 139330500 9455744 151584928 151584928 148793028 39111168 170703904 170703904 190222593 799252928 799252928 459778304 739543055 739543055 986080262 986080262 907599048 907599048 943045923 943045923 805306880 806355459 806355459 793510425 725092651 676845061 522981259 346417482 967309320 967309320 740866048 692736428 692736428 879877839 879877839 789809293 43514448 854590386 854590386 562036833 780454102 780454102 343511029 489235758 512861280 512861280 353960164 353960164 303628886 35205776 310519248 310519248 109222920 109222920 241037393 241037393 456144214 456144214 623231461 761788845 761788845 745800000 745800000 896334408 948100195 948100195 776739064 881109081 881109081 998760995 998760995 806404611 806404611 772801053 805340680 805340680 280160346 545538125 545538125 1033872007 1066757629 1066757629 807462121 807462121 1018572762 1018572762 360411039 726169548 789039432 789039432 25824364 42126408 243305052 243305052 172087296 210420176 210420176 609358785 609358785 543204289 896607147 896607147 549576897 549576897 873562754 873562754 869337618 897690146 1042361148 1042361148 29359968 29022048 77355552 77355552 31531488 90768456 98664968 288675653 704280403 906765936 957161380 957161380 691905822 78331204 69543944 571549376 676996945 676996945 744953061 744953061 443583132 395261762 395261762 365829980 688721969 735416389 735416389 759265101 889758094 889758094 701048037 624353497 710645357 710645357 591880860 350558554 466438546 466438546 448803122 733951858 733951858 725621189 725621189 695405015 695405015 654836793 265813053 1041427545 1041427545 874372175 874372175 1049889375 1049889375 970241252 970241252 701723302 165154948 165154948 32778964 80099520 84312264 138412168 201326604 201326604 178703668 251201972 251201972 133464692 172135308 192601772 258446076 258446076 105643480 84552932 809638472 809638472 121112376 799426648 999479679 999479679 756472365 268474927 433111611 433111611 727082064 894984206 894984206 963208716 963208716 601425693 867057011 867057011 841207049 771918456 771918456 470451296 478692382 655890970 655890970 319068213 657905931 657905931 725617460 725617460 684372081 684372081 867439552 867439552 598745152 576791463 871368224 871368224 820706693 820706693 815009104 1015832644 1015832644 888632201 740633929 777126025 777126025 680095985 667365888 1056819247 1056819247 803324026 1047890025 1047890025 508879518 432065522 555360867 559132705 559132705 428027910 404639750 916141723 916141723 819666514 554320171 564969568 565741096 565741096 566231393 770031725 770031725 1063674909 1063674909 979757463 979757463 299675265 964382004 964382004 665197015 459776704 459776704 422050182 523238718 523238718 559547520 559547520 555238540 816841539 816841539 309102245 590648244 590648244 335578304 156300344 815754160 815754160 889194627 889194627 963722277 963722277 809504696 1050950623 1050950623 668603737 668603737 108053201 91431432 407762446 1038520576 1038520576 927673633 1042683932 1042683932 725649589 860381334 860381334 42469520 0 0 427951104 435965076 435965076 169769034 378410168 378410168 387853842 387853842 386605794 96927834 93268136 93268136 51654464 51654464 39846352 25176784 34666496 35076624 35076624 29732560 19917056 126552184 126552184 97631400 97631400 91008416 1007280901 1007280901 807578883 374197656 808190243 808190243 413988356 413988356 411911976 411911976 753337412 753337412 637549472 262512956 262512956 293732636 530715006 530715006 503437600 522664254 522664254 362881386 978249580 978249580 938949627 50050440 116131320 405464028 519143680 519143680 260539404 260539404 309906894 309906894 35263984 88555352 109840656 607525641 607525641 656282425 849005521 849005521 596054352 627143523 627143523 851708115 851708115 629441901 629441901 562040969 136483137 124796984 166200848 166200848 111738992 144480738 371629026 371629026 297795810 226750572 390118360 423887624 423887624 369376142 369376142 379297036 379297036 518611292 518611292 170066396 33558536 67244040 91378216 203100875 954261991 1019589048 1043485234 1043485234 655217572 773026613 773026613 760932024 688444741 632571180 989861888 989861888 838864896 472519945 890316314 890316314 604428297 580775505 949981206 949981206 532882467 771821743 772412907 772412907 890373321 890373321 326292402 703372653 703372653 990145987 990145987 647835156 886575326 886575326 667657428 667657428 301610171 205595480 316671900 375915930 606611477 606611477 519619912 888156618 888947403 888947403 880545675 880545675 322854153 625380986 625380986 613550378 77609760 79196040 100141032 100141032 50516016 50516016 43188496 47979584 47979584 41539600 41539600 54292784 54292784 41030544 36791568 48703280 58170320 58170320 45373904 44152976 49415648 49415648 115174280 393854976 393854976 318849586 91750432 91750432 74457872 56833314 386164376 386164376 298918160 502276652 502276652 524365838 524365838 322502904 315172682 296496728 226747112 226747112 197314200 78765696 78765696 68710784 15780544 12740800 12740800 11138880 11138880 126943768 126943768 889734696 902995175 902995175 203214348 274891392 274891392 78645006 310385166 755639345 755639345 551290889 759919658 759919658 963167378 963167378 402729250 402729250 523375123 523375123 438043664 149695428 149695428 278740992 278740992 229377120 814548739 814548739 1005009399 1005009399 971330214 765996078 744822674 744822674 978912722 978912722 509108450 604912700 773200953 773200953 458499193 585052909 585052909 205336332 206121600 206121600 220529248 429918792 1000448260 1000448260 1027852913 1056971392 1056971392 675283333 33790613 137330688 160291876 614793888 614793888 64380384 252483872 252483872 229166192 193604776 210713676 210713676 200019444 666987316 764025169 764025169 447360100 447360100 257036988 847008814 847008814 796318653 657621556 773052732 865573166 865573166 342339856 342339856 138899070 315861954 315861954 287537130 519817812 519817812 477214186 893386923 893386923 713955619 713955619 736381978 939665500 939665500 374675545 246573698 695996166 695996166 828044038 839333907 839333907 809316624 940818499 940818499 572918596 642784900 642784900 876090091 876090091 1010876389 1010876389 323503482 620951123 620951123 86988136 618881453 761377225 761377225 8508374 413884754 413884754 315338704 330183842 330183842 302192866 10227778 8389824 8389824 98173064 98173064 292552098 298807714 335997160 752532614 752532614 827742416 1024208899 1033702053 1033702053 574691284 574691284 623113288 623113288 847332911 847332911 654333019 654333019 87457097 765579945 765579945 691905544 691905544 234957104 234957104 200532980 200532980 197755904 197755904 189574164 40371600 40944528 484950432 1050036782 1050036782 1014311823 578926884 682457429 682457429 136794433 546590788 672586245 672586245 208887940 208887940 122484144 55229576 103006480 103006480 93372448 134250540 142656040 219168876 229688648 229688648 214243761 214243761 620897313 647601727 855290931 855290931 574738640 574738640 48380032 170142160 174328212 320190622 683034169 683034169 786567729 1058576976 1058576976 664815913 664815913 640337362 884134163 884134163 664573555 868356565 868356565 835398948 907371289 907371289 873220650 585435815 330146786 709356321 709356321 819111622 819111622 973265849 973265849 219490860 261093914 807993712 966271490 966271490 925173107 1021285957 1021285957 651335489 706516673 706516673 682010049 778264290 778264290 313435476 528795774 528795774 562041321 871553837 1057229747 1057229747 899419701 899419701 831459509 718676707 718676707 680536085 285873383 473628934 869480652 869480652 554965561 247826944 93001801 148819144 876373414 876373414 796098017 465628364 457772570 349717670 248268838 249624940 249624940 183546264 174203796 147980736 37957632 37957632 549495873 549495873 550048448 550048448 552405440 552405440 552044929 552044929 162653028 162653028 543576585 543576585 245814172 245814172 555982700 555982700 256562364 170303674 493948694 493948694 404850700 548858699 581156955 581156955 595669339 740950458 740950458 521027962 521027962 375982112 375982112 715322210 1023875920 1023875920 341722826 25207960 3343616 239469636 481317804 481317804 422742434 508695198 508695198 152060238 429655530 429655530 418121856 78236904 176267328 222396620 222396620 126882416 678395237 678395237 536891493 640425821 721945653 861880241 994314423 995143895 995143895 994101044 1025597085 1025597085 641660718 641660718 318657010 318657010 634011923 634011923 522990478 776734479 776734479 881398298 881398298 513685777 503449954 824660048 824660048 733311410 805879192 805879192 644055556 408150408 197173286 394478120 394478120 466501740 525093000 525093000 503328942 299040854 115525728 498342864 498342864 479384686 405372804 405372804 1058609311 1058609311 1007448747 1007448747 1063175867 1063175867 1056159861 1056159861 331361241 553776486 794824880 794824880 900311855 900311855 314583860 1000148569 1000148569 120854320 76205092 529762933 529762933 436799555 1007374862 1007374862 882801857 882801857 862399315 862399315 721749109 372844975 768157912 768157912 896572052 896572052 511851390 439618326 136923058 73721792 294882720 521151326 521151326 759527077 759527077 255203464 1008882507 1008882507 866860043 1003758268 1063379391 1063379391 984363424 796884709 705177392 170137652 725486484 725486484 712766023 769435571 769435571 711199081 754049997 754049997 660664364 660664364 399612316 1021668134 1021668134 628519560 361050380 361050380 274078338 274078338 789334053 804154405 823498962 920062584 977746071 977746071 296498677 105066524 1013059963 1013059963 173808600 140441372 973812759 973812759 408364992 6301905 539789376 539789376 40432000 28188000 29515520 29515520 25291424 25291424 830196480 830196480 837970048 837970048 456407141 867631504 867631504 258252779 1034759535 1034759535 463082823 463082823 192590688 809042695 809042695 1035601924 1035601924 1035418479 484317350 271325182 57613260 86714687 996420729 996420729 717632716 717632716 146409344 189114416 409472896 459608752 459608752 184695056 175693344 175693344 40678048 190222593 736557045 736557045 459778304 519955752 519955752 313506004 419307462 419307462 755848220 943045923 943045923 807412481 807412481 806355459 689995794 678479536 676845061 155576849 631915040 631915040 671399952 671399952 420039086 617108824 879877839 879877839 789809293 579010951 749810298 749810298 566304993 587727921 901844645 901844645 19481600 512861280 512861280 268484656 268484656 66126688 364579938 364579938 389030450 389030450 333788066 269600000 269600000 456144214 456144214 623231461 761788845 761788845 745800000 800456364 896334408 948100195 948100195 776739064 881109081 986360951 998760995 998760995 806404611 919262966 919262966 911213211 805340680 277350488 545538125 940445184 940445184 1066757629 1066757629 493673357 414949528 1018572762 1018572762 366486370 726169548 789039432 789039432 300355938 386024506 386024506 356958368 172087296 210420176 210420176 609358785 609358785 543204289 896607147 896607147 550791872 550791872 873562754 873562754 509411893 897690146 1042361148 1042361148 70309416 222860612 222860612 408612580 490333990 490333990 392536844 288675653 704280403 704280403 957161380 957161380 883762570 883762570 878355651 189977605 972124369 972124369 950010183 844403463 844403463 582293601 801768538 876416156 876416156 46100480 46100480 10535232 889758094 889758094 784353016 784353016 529025710 591880860 591880860 559908177 842716947 842716947 540930930 261808252 645285755 645285755 475531708 853803994 853803994 750771464 776275484 1041427545 1041427545 874372175 874372175 109978624 302321458 430280688 430280688 171248082 165154948 285293874 333656562 375458160 375458160 138412168 201326604 201326604 178703668 251201972 251201972 204471312 177913540 218249404 218249404 405814153 656804535 656804535 608512137 478492678 283314229 799426648 999479679 999479679 938482125 937859727 804485440 433111611 727082064 894984206 894984206 99035344 367011160 367011160 64391424 220723500 419739944 771918456 771918456 705295362 311014467 805347360 805347360 269748738 280382266 280382266 652366516 799114012 799114012 734687457 132203544 227193244 553682656 553682656 871368224 871368224 153094135 815009104 815009104 814484547 1026050062 1026050062 694765313 487648683 34914304 353667128 353667128 190266036 303499964 803324026 803324026 343974869 945061888 945061888 798426751 856995429 856995429 559632405 857550387 916141723 916141723 819666514 594039354 564969568 610437288 610437288 16810048 98043848 98043848 91229032 91229032 49280 18631168 18631168 17351712 1178112 9676976 459776704 459776704 422050182 984747008 984747008 957650440 957650440 941644567 941644567 776081565 630196896 590648244 714092768 714092768 255097521 815754160 815754160 552125889 83390978 11869344 101646557 697054913 1050950623 1050950623 668603737 668603737 119335688 119335688 407762446 1038520576 1038520576 927673633 927673633 725649589 725649589 860381334 860381334 241027292 240749460 213215964 368293306 435965076 435965076 392580442 392580442 371327290 507795858 507795858 483777406 483777406 481420110 124062424 124062424 62964016 84161368 84161368 86785672 86785672 112813688 112813688 78346504 98139368 98139368 94639968 94639968 31732365 1007280901 1007280901 807578883 758195200 808190243 808190243 413988356 413988356 411911976 411911976 753337412 753337412 637549472 319559326 319559326 223746732 204081512 119051334 503437600 522664254 522664254 362881386 362881386 820673990 820673990 329211968 329211968 580838562 580838562 25031057 20108064 9751104 33511536 33511536 16503856 30935136 42862425 607525641 607525641 656282425 656282425 642252738 642252738 627143523 819769474 851708115 851708115 860213795 860213795 562040969 1072808885 1072808885 716888016 716888016 541618384 144480738 505287474 505287474 297795810 397884282 397884282 423887624 423887624 210684026 174504012 486056256 486056256 81998280 335544326 335544326 525406548 525406548 435368934 263412212 954261991 992088375 606443520 606443520 827099808 827099808 940066906 940066906 1015562750 1017119055 1017119055 989861888 674107451 472519945 890316314 890316314 445326862 445326862 159592534 134808580 421593250 421593250 449055008 449055008 319032560 326142016 326142016 170951424 170951424 104862460 803225856 803225856 572121610 94472025 85536768 501896288 564844079 564844079 475551434 649598970 736923020 736923020 519619912 888156618 888947403 888947403 880545675 880545675 322854153 625380986 625380986 613550378 77609760 79196040 100141032 100141032 95605608 95605608 102094216 102094216 102256256 102256256 15592896 54292784 54292784 41030544 36791568 48703280 58170320 58170320 45373904 33939792 49415648 49415648 115174280 393854976 393854976 56065034 91750432 91750432 74457872 53019168 386164376 386164376 329451336 329451336 128647776 345060674 345060674 322502904 315172682 296496728 614828189 614828189 63625648 78765696 677303424 746735113 776745100 776745100 1052881042 1052881042 809705602 218274336 126943768 889734696 902995175 902995175 1056058182 1056058182 859160909 914415638 914415638 706057818 537795585 303566493 759919658 1014968459 1014968459 963167378 374205594 251962534 471336448 471336448 143722880 149695428 149695428 278740992 278740992 280234818 280234818 159447872 445672098 445672098 454158318 918958246 918958246 769334505 62406131 948869366 948869366 375159207 139725984 347087570 347087570 158802200 158802200 110416194 506792472 506792472 484098860 429918792 1000448260 1000448260 1027852913 1027852913 435442325 237809020 142815300 142815300 160291876 218171728 218171728 38669816 220560432 220560432 369751938 429237558 429237558 357903018 304155576 666987316 666987316 605232448 616378185 809630295 809630295 847008814 847008814 796318653 657621556 657621556 422302478 422302478 408236084 408236084 436528748 436528748 129239928 129239928 75304624 102035312 102035312 106641048 470447784 520803390 520803390 490912372 939665500 939665500 374675545 281044996 695996166 695996166 828044038 839333907 839333907 809316624 940818499 940818499 572918596 642784900 769132269 916076619 916076619 912871653 912871653 564257121 564257121 369853008 987888629 987888629 838876453 761377225 936907449 936907449 850494820 315338704 330183842 330183842 302192866 881089155 881089155 339924578 751340197 885097658 885097658 218780359 848133868 848133868 752532614 827742416 827742416 550163649 550163649 1016282913 1016282913 516857276 984166888 984166888 322392513 237166464 201461960 201461960 79303044 79303044 21896736 21896736 234957104 234957104 185166848 185997824 197755904 197755904 577295069 905989657 1035606753 1035606753 972424612 1024774930 1024774930 958019367 682457429 682457429 709886613 709886613 776419485 776419485 739934760 245459012 122484144 55229576 138985504 162144452 162144452 134250540 144444456 219168876 219168876 213337188 213337188 153070408 555723596 647601727 855290931 855290931 690090054 574738640 546572865 940886912 940886912 279187094 803619803 803619803 830412288 1058576976 1058576976 823108729 823108729 640337362 884134163 884134163 967550471 967550471 868356565 835398948 835398948 873220650 873220650 672990724 20897568 137244493 632155497 632155497 491635081 269566761 269566761 363989864 363989864 807993712 966271490 966271490 878751577 1021285957 1021285957 713473838 713473838 550053057 682010049 1072301703 1072301703 660668538 660668538 852771198 852771198 871553837 1057229747 1057229747 564710505 330732895 604111422 718676707 718676707 680536085 285873383 285356046 869480652 869480652 1040230724 1040230724 304712115 465063800 876373414 1017957700 1017957700 501496653 157101732 298079866 298079866 249624940 249624940 183546264 271315970 271315970 362212168 362212168 291306952 24766368 2146560 537404576 560062881 560062881 537020096 537020096 14192641 537817992 537817992 109216409 176654864 176654864 156402364 256562364 256562364 114281724 145562704 404850700 404850700 506456478 506456478 272450968 530896040 530896040 307630916 281322884 373019174 375982112 375982112 232925222 115648688 341722826 341722826 212414574 241313934 241313934 437389752 437389752 425231008 508695198 508695198 201612992 362421356 362421356 396125978 396125978 186784736 327159894 327159894 126882416 126882416 399360 399360 5636736 592118912 861880241 861880241 402989696 419965446 994101044 994101044 141636487 51526144 356841722 356841722 318657010 634011923 634011923 522990478 776734479 776734479 881398298 881398298 503449954 503449954 824660048 824660048 733311410 805879192 805879192 644055556 408150408 197173286 197173286 152471684 285787146 525093000 525093000 503328942 428085472 428085472 195068536 403182984 403182984 342247308 342247308 209641368 981372288 981372288 454350496 50827814 268936370 268936370 571748380 571748380 850047348 850047348 794824880 900311855 900311855 314583860 1000148569 1000148569 120854320 25844544 529762933 529762933 471723074 1007374862 1007374862 882801857 882801857 862399315 862399315 851534160 851534160 609560200 609560200 1009123859 1009123859 573324044 539831553 136923058 273388160 604704904 810099843 810099843 720776573 720776573 255203464 1008882507 1008882507 866860043 1003758268 1063379391 1063379391 984363424 375811656 327544952 170137652 725486484 725486484 712766023 769435571 769435571 766906440 766906440 696406665 696406665 675761005 695478305 695478305 270798878 349514262 361050380 361050380 131072976 258902433 789334053 804154405 823498962 920062584 977746071 977746071 841712256 841712256 1013059963 1013059963 513020649 634522206 973812759 973812759 576484432 600963120 600963120 550889137 36544129 25608560 29515520 29515520 25291424 25291424 835174656 838387683 838387683 815612579 26348032 867631504 867631504 143629447 101779224 53850240 314782450 314782450 192590688 246859292 246859292 426588824 426588824 484317350 484317350 271325182 137431116 242171153 242171153 233480401 191508856 152282180 146409344 189114416 409472896 703563361 703563361 184695056 565237265 565237265 197441184 197441184 609568981 609568981 444196758 444196758 351094280 883015880 971239827 971239827 799230284 799230284 984669730 984669730 807412481 805306880 101745794 134514052 134514052 7130496 631915040 631915040 244351800 244351800 709042268 709042268 684150788 734316789 734316789 982854231 982854231 759063757 759063757 587727921 901844645 901844645 431039334 431039334 356558444 290554162 290554162 263783612 531304054 531304054 389030450 389030450 442813364 442813364 269600000 276993722 526594110 526594110 302026880 246954762 318293970 916913650 916913650 829418187 445295813 445295813 323852320 986360951 986360951 588023971 457179318 919262966 919262966 911213211 840323613 453298742 974948625 974948625 973789480 926094875 266999292 306211476 306211476 184468616 366486370 366486370 88945224 362015026 362015026 300355938 386024506 386024506 356958368 67768928 49872176 61326448 102267184 102267184 93187176 62343288 144195620 620948992 620948992 542312065 282722536 611162156 632976492 632976492 636255460 636255460 702244621 702244621 408612580 598770320 598770320 623362723 676014704 676014704 555104617 555104617 68229737 883762570 883762570 878355651 189977605 972124369 972124369 950010183 1009158784 1009158784 582293601 801768538 876416156 1033247785 1033247785 672405877 884798407 884798407 371194903 784353016 784353016 178587812 734339268 734339268 559908177 842716947 842716947 540930930 511935788 513223204 513223204 475531708 853803994 853803994 750771464 776275484 776275484 588648980 807218717 807218717 681839641 681839641 806950388 951253684 951253684 139299104 285293874 333656562 382152760 382152760 332175632 275537080 67664904 67664904 125820360 204471312 204471312 177913540 218249404 218249404 405814153 656804535 656804535 608512137 478492678 445795584 469797134 469797134 938482125 938482125 937859727 804485440 345810050 196198582 48769472 625083841 625083841 398468168 398468168 187578763 60824645 1027257448 1027257448 705295362 705295362 647605352 805347360 805347360 235541559 807296632 807296632 652366516 799114012 799114012 734687457 132203544 227193244 227193244 866039717 924842809 924842809 823130401 823130401 813763667 736107713 1026050062 1026050062 694765313 660399681 680076357 817923662 817923662 595839141 738246669 738246669 694174880 687637672 945061888 945061888 798426751 975143489 975143489 928142975 857550387 857550387 659893368 652021233 594039354 558815697 610437288 610437288 564166913 676380901 676380901 293766145 999606859 999606859 244583004 360000426 851691738 851691738 662915799 315362514 315362514 509527934 984747008 984747008 957650440 957650440 941644567 941644567 869711242 630196896 613417637 714092768 714092768 255097521 550440182 550440182 352879788 692067336 692067336 692741264 692741264 125829240 396281081 396281081 629759131 629759131 119335688 117828353 117828353 541524153 541524153 4784257 327808 4507776 331408550 331408550 241027292 240749460 213215964 368293306 437520918 437520918 404015902 392580442 371327290 507795858 507795858 516555254 516555254 481420110 467351818 467351818 62964016 84161368 84161368 86785672 86785672 112813688 112813688 78346504 98139368 98139368 94639968 94639968 75507456 69896480 69896480 698214210 1007630375 1007630375 277998149 298797024 300418530 381774570 381774570 327792120 428276288 428276288 319559326 542951389 821720836 912648603 912648603 967756165 967756165 434440450 567274598 567274598 899333742 899333742 680564654 329211968 580838562 580838562 33899826 20108064 759177839 759177839 244632672 229774188 799270961 799270961 106955160 108791480 121899192 328481970 642252738 642252738 558428843 819769474 819769474 360219856 860213795 973645413 973645413 1072808885 1072808885 716888016 716888016 541618384 65150914 505287474 505287474 270717186 397884282 397884282 244003932 244003932 210684026 428739930 486056256 486056256 233973444 400232812 400232812 525406548 525406548 435368934 263412212 827511442 992088375 606443520 606443520 827099808 827099808 1046093830 1046093830 1015562750 1017119055 1017119055 614206495 639507993 639507993 621165584 622279272 630661416 630661416 159592534 56819860 421593250 1038428255 1038428255 878707083 1011426447 1011426447 522790206 757663089 832615698 832615698 803225856 811188847 811188847 300975473 704169957 704169957 564844079 564844079 475551434 649598970 736923020 736923020 708264277 634192106 872940555 872940555 872488971 872488971 92340323 72092808 71878656 45280080 76283688 76283688 23618856 52476376 95605608 204541804 204541804 102094216 232335348 232335348 403245452 477602560 477602560 478475392 478475392 366548104 317304338 374011408 374011408 354262826 338211632 0 44040784 288425216 345489362 345489362 103775272 121701384 121701384 357903352 393569234 393569234 329451336 344982304 344982304 343026224 52147401 83197445 83197445 222684125 614828189 614828189 109307632 89790120 677303424 746735113 776745100 776745100 1052881042 1052881042 809705602 218274336 574877841 847581242 847581242 914776256 1056058182 1056058182 859160909 914415638 914415638 948321038 948321038 412752989 232480909 1014968459 1014968459 660596486 219163426 219163426 420292242 420292242 411570704 725222542 751173904 751173904 696904737 696904737 280234818 574776329 706875669 706875669 671093008 918958246 918958246 769334505 636687720 948869366 948869366 375159207 225450230 347087570 347087570 158802200 362336532 362336532 506792472 506792472 484098860 127349940 15840016 46346448 46346448 92898392 237809020 244045240 244045240 162457640 162457640 218171728 218171728 181405504 220560432 220560432 369751938 429237558 429237558 357903018 304155576 796224484 991307400 1015618526 1015618526 809630295 809630295 778778013 512032195 254362324 749245504 749245504 1059586382 1059586382 408236084 408236084 436528748 436528748 435393426 312503106 512258174 512258174 394023544 394023544 470447784 520803390 520803390 680804794 680804794 615914313 615648077 570918098 570918098 72090641 71352876 104482586 325243290 475189902 477931938 477931938 429402276 429402276 769132269 916076619 916076619 912871653 912871653 1017692206 1017692206 982923287 1057468503 1057468503 1054475975 1054475975 948482759 948482759 920692114 296096034 314911936 314911936 310717664 881089155 881089155 339924578 751340197 885097658 885097658 218780359 848133868 848133868 610085068 109187160 543034918 550163649 729999890 1016282913 1016282913 514036002 984166888 984166888 612634792 612634792 505582905 458937420 346295740 346295740 36358040 122773560 135605420 203960108 203960108 185275396 166321344 175015569 577295069 905989657 1035606753 1035606753 972424612 1060504066 1060504066 1043324680 1043324680 589821541 709886613 709886613 776419485 817658741 817658741 370466702 157287328 149527412 320878352 329896146 329896146 306320576 144444456 144444456 187121808 187121808 137711381 581446037 753420013 787126837 794196317 794196317 690090054 545259585 974524630 974524630 940886912 279187094 803619803 803619803 830412288 830412288 667936097 823108729 828065409 883207224 883207224 683929861 967550471 967550471 571999807 217055427 35651600 35651600 672990724 807262470 889742083 889742083 632155497 632155497 1011523660 1016952201 1016952201 962791338 962791338 470810625 33563200 77144080 110626392 360244260 360244260 713473838 713473838 33983513 30020832 1072301703 1072301703 660668538 660668538 852771198 852771198 600312844 909791294 909791294 624052260 1040750431 1040750431 746850381 461900859 906047630 906047630 486987822 486987822 415637728 1040230724 1040230724 965247361 545260448 545260448 1017957700 1017957700 979100308 956212480 298079866 298079866 72331656 72331656 92348520 271315970 271315970 362212168 362212168 603982977 603982977 75614016 620962217 620962217 560062881 549068864 698818885 698818885 745004205 745004205 1031850503 1031850503 855697920 855697920 355257642 355257642 83626710 304299594 404033938 443170692 443170692 436481548 436481548 210823710 307630916 307630916 386670032 531472658 531472658 232925222 232925222 438935772 438935772 535982030 535982030 331394538 331394538 411854930 425231008 425231008 407376336 366349566 366349566 362421356 362421356 396125978 396125978 186784736 327159894 327159894 235864829 581961441 715034161 715034161 662697469 662697469 178257492 685299028 685299028 419965446 419965446 403188771 979699368 979699368 929653552 356841722 526379176 526379176 433383990 260169852 260169852 155319644 141557124 92215560 281349212 443360068 443360068 481420044 481420044 208182692 241198988 241198988 143833004 143833004 45879120 326898864 326898864 312088146 312088146 354618932 428085472 428085472 454723328 454723328 403182984 342247308 342247308 817634007 817634007 680277972 680277972 672224272 268936370 268936370 571748380 571748380 850047348 850047348 776632424 441397536 162207662 84914132 141870680 297452530 298866274 304351386 382290128 471723074 471723074 277591168 546715888 814429251 814429251 628724972 702113207 851534160 851534160 830498152 724959896 1009123859 1009123859 573324044 539831553 222929298 273388160 604704904 810099843 810099843 545359105 838268160 838268160 819093955 279044552 279044552 84066530 79852552 286855216 286855216 327544952 327544952 126085234 63833184 49809360 615055913 727058448 727058448 877867105 877867105 823470627 964739996 1071966448 1071966448 695478305 254038640 254038640 273744304 273744304 91085954 28903240 9476928 2146560 7520512 840631720 840631720 251716631 841712256 841712256 808064259 300618730 513020649 634522206 634522206 576484432 590213857 600963120 600963120 589529760 603506048 603506048 60730324 60730324 694233957 694233957 835174656 838387683 838387683 815612579 860630098 860630098 824445219 596713127 596713127 941778118 941778118 564377600 444910512 246859292 246859292 112132908 204411380 204411380 193671328 193671328 137431116 242171153 242171153 233480401 507740402 683798740 704765973 704765973 671441949 703563361 703563361 173421106 565237265 565237265 432803046 415499296 609568981 609568981 442336464 427431828 351094280 883015880 971239827 971239827 799230284 799230284 984669730 984669730 805306880 805306880 406062804 447158494 447158494 536552750 742663554 742663554 801512188 801512188 709042268 709042268 684150788 734316789 734316789 982854231 982854231 759063757 986451318 986451318 703660786 703660786 431039334 594692613 594692613 857184044 857184044 728041799 724887437 676651732 89536672 89536672 442813364 442813364 913883297 913883297 823931028 823931028 272638498 246954762 714733313 916913650 916913650 829418187 679955141 117698596 80005320 948722756 948722756 734707955 734707955 654870900 589729564 840323613 840323613 523131188 974948625 974948625 973789480 926094875 266999292 266999292 286292480 286292480 335679498 387593218 387593218 320025138 10104882 57024960 57024960 160194772 160194772 12811440 85344512 87481128 102267184 102267184 623616032 623616032 613070601 620948992 620948992 18444297 17041440 611162156 632976492 632976492 636255460 636255460 702244621 702244621 560588193 598770320 598770320 623362723 676014704 676014704 471013830 471013830 941511156 941511156 378457489 116133336 87241512 890861304 909245247 974059295 1009158784 1009158784 277285313 160566356 222955739 1033247785 1033247785 672405877 884798407 884798407 371194903 420116540 420116540 178587812 734339268 815795600 914096185 914096185 402681700 530415644 530415644 513223204 513223204 129413948 109645432 406266142 612442208 612442208 528881790 588648980 588648980 479332880 681839641 681839641 806950388 951253684 951253684 17400064 300200200 327235656 382152760 382152760 332175632 275537080 67664904 74018064 249947316 249947316 229188788 251890204 251890204 407433672 409203078 409203078 202375692 313136984 445795584 445795584 160694502 417761926 506265152 506265152 433819436 433819436 345810050 150136702 65681888 625083841 625083841 398468168 398468168 187578763 93058152 1027257448 1027257448 487950186 596139640 647605352 647605352 571126906 235541559 807296632 807296632 563924491 539236353 629326432 713033766 917525087 917525087 966951040 966951040 924842809 924842809 823130401 823130401 813763667 736107713 679487781 337900110 441741083 660399681 680076357 817923662 817923662 595839141 738246669 738246669 694174880 687637672 687637672 226405428 652292656 975143489 975143489 965287960 311961098 311961098 541172088 541172088 24766368 32905736 32905736 97524193 564166913 676380901 831542784 831542784 999606859 999606859 244583004 360000426 851691738 851691738 662915799 315362514 315362514 509527934 509527934 195052888 979589082 979589082 939553031 869711242 869711242 610797194 613417637 613417637 690114020 699264357 1025844365 1025844365 336684037 692067336 692067336 692741264 692741264 925376072 925376072 396281081 629759131 629759131 290592920 620290473 620290473 634797744 634797744 550203969 550203969 672137733 681364544 681364544 97619936 97619936 106324400 169132034 437520918 437520918 404015902 344262768 387263034 387263034 375523952 516555254 516555254 220228720 467351818 467351818 243649876 202689484 176236788 176236788 132436464 66067304 160744360 207618444 470510890 470510890 303509540 371756968 371756968 623418115 1039716577 1039716577 1007630375 1007630375 824183747 821083436 899727723 899727723 544260993 544260993 428276288 572184081 670936525 693490672 821720836 912648603 912648603 967756165 967756165 434440450 567274598 567274598 899333742 899333742 897607050 959170122 959170122 402732164 402732164 357176970 759177839 759177839 244632672 269742594 799270961 799270961 106955160 108791480 121899192 121899192 114033760 919154824 919154824 914883675 608343043 934439203 934439203 973645413 973645413 903074994 716972496 716972496 129964845 56233560 202522640 202522640 176966288 192859344 534522016 534522016 514110620 514110620 103648292 428739930 428739930 509081606 564250761 564250761 534959102 697452815 697452815 520493118 386209954 289158037 778119545 821410944 821410944 373381380 778288542 1046093830 1046093830 643511961 263131849 496573800 572004360 639507993 639507993 621165584 622279272 630661416 630661416 362238824 362238824 360846453 1038428255 1038428255 878707083 1011426447 1011426447 522790206 757663089 832615698 832615698 721495511 811188847 974264212 974264212 704169957 704169957 30593760 184026946 462606966 529045366 1072713884 1072713884 711865334 634192106 883500363 883500363 876609675 876609675 285347865 615758762 615758762 594646306 99225872 90780136 90780136 71902344 40436024 204541804 204541804 44379888 232335348 232335348 403245452 477602560 477602560 478475392 478475392 826139491 826139491 835371650 835371650 811197858 338211632 275028866 113505992 621086355 621086355 629516633 899947256 899947256 332257402 357903352 393569234 393569234 307471416 344982304 344982304 343026224 123774024 65112952 85983528 85983528 692332776 692332776 109307632 89790120 55464144 63540416 63540416 55510064 122382464 122382464 92429344 109418697 574877841 574877841 117701409 914776256 914776256 856039594 849729870 748775490 748775490 948321038 948321038 412752989 354108622 410472580 660596486 660596486 974986283 974986283 672157995 421534738 421534738 725222542 751173904 751173904 696904737 696904737 493829530 574776329 706875669 706875669 671093008 274650880 479384142 636687720 636687720 415961152 415961152 345380162 680206345 885075359 885075359 688920729 695915084 695915084 488502852 488502852 254223802 122880 15840016 46346448 46346448 57623456 216708524 244045240 244045240 162457640 608048808 608048808 607920009 556272552 181405504 180619392 160828436 109582272 31198316 65020720 297109600 796224484 991307400 1015618526 1015618526 614534467 487190208 487190208 352650346 352650346 749245504 749245504 1059586382 1059586382 68586240 68586240 113633186 435393426 435393426 312503106 512258174 512258174 394023544 394023544 573610464 577815441 577815441 680804794 680804794 615914313 615648077 570918098 570918098 72090641 71303304 36177152 36177152 2622720 5683104 23155968 23155968 11230400 13632192 13632192 553270786 673742884 856766240 1017692206 1017692206 1069798079 1069798079 1066648310 1054475975 1054475975 948482759 948482759 920692114 296096034 314911936 314911936 310717664 613421186 810193059 903534315 903534315 759499816 759499816 290226807 302874722 610085068 610085068 965716040 965716040 680502326 729999890 847384659 847384659 600844527 524685312 658674253 658674253 612634792 505582905 458937420 346295740 346295740 115830824 124797880 135605420 203960108 203960108 196171488 198439668 198439668 180537240 641044680 641044680 889521488 889521488 1060504066 1060504066 1043324680 1043324680 798794021 589821541 992022572 992022572 908275995 1070207723 1070207723 939136511 984733655 984733655 329896146 539300584 697500420 697500420 174790328 187121808 187121808 178456500 581446037 753420013 787126837 794196317 794196317 545259585 545259585 974524630 974524630 561269505 549748737 537135105 579913185 681202929 897473959 897473959 546050955 931136682 931136682 883207224 576068241 863035056 863035056 1013052450 1013052450 1018988551 1018988551 536350938 807262470 889742083 889742083 665825021 604754177 1011523660 1016952201 1016952201 962791338 962791338 636530798 636530798 617129961 617129961 505503977 505503977 303687186 21171057 292499874 574569040 818425618 818425618 596798262 922779722 922779722 717511023 600312844 547393203 857784627 918192929 1040750431 1040750431 746850381 788594895 906047630 906047630 486987822 486987822 415637728 604023008 965247361 965247361 545260448 849629764 849629764 979100308 979100308 956212480 242010252 240864392 115329320 115329320 95751008 93849192 93849192 78701608 75835464 603982977 603982977 75614016 620962217 620962217 537933249 549068864 698818885 698818885 745004205 745004205 1031850503 1031850503 855697920 855697920 355257642 355257642 109850832 304299594 404033938 443170692 443170692 436481548 436481548 176698900 143724596 143724596 386670032 531472658 531472658 327216312 327216312 438935772 440721900 535982030 535982030 331394538 331394538 235037868 391119336 407376336 407376336 366349566 366349566 914621551 914621551 284535754 871592875 871592875 642113632 642113632 558361761 581961441 715034161 715034161 778664787 778664787 889893493 889893493 1065718181 1065718181 861544121 557900470 979699368 979699368 929653552 94967096 597950603 827652184 927462921 927462921 919242224 200162620 200162620 353244736 395448954 395448954 377883168 227545668 227545668 208182692 618215105 618215105 606496525 701779795 701779795 995905478 995905478 823208195 876415439 876415439 714105028 789651557 789651557 675463832 172642500 222376618 222376618 817634007 817634007 716277128 716277128 672224272 310977105 787036043 787036043 331708364 347739978 776632424 776632424 717000025 717000025 423981778 961770109 961770109 298866274 304351386 382290128 752435284 752435284 353653781 550187584 550187584 537531393 309516118 702113207 710588204 830498152 1008804754 1008804754 724959896 437401494 522851646 522851646 222929298 939939696 939939696 432450421 329596578 329596578 838268160 838268160 819093955 350934336 813489385 905757568 905757568 842474090 842474090 376455562 376455562 184811572 725614773 725614773 615055913 727058448 727058448 1020730312 1020730312 823470627 964739996 1071966448 1071966448 877612303 1006949646 1006949646 407869316 351192974 351192974 214435211 950010183 950010183 738993530 840631720 840631720 1050872909 1050872909 437152513 783947335 783947335 184103253 630262418 630262418 857344065 857344065 590213857 64145361 589529760 603506048 603506048 60730324 60730324 694233957 694233957 40364951 580497043 686441041 807665920 860630098 860630098 940387331 940387331 596713127 941778118 941778118 564377600 444910512 91888640 91888640 49246640 18948384 533792 87568448 87568448 25401128 19001504 25391528 92274792 507740402 683798740 704765973 704765973 671441949 605555213 354323589 173421106 332700692 432803046 432803046 415499296 45248144 442336464 442336464 427431828 246851788 220995624 220995624 136914288 347088482 448211298 903631637 903631637 409881774 406062804 577242281 577242281 447158494 536552750 742663554 742663554 801512188 894641308 894641308 807419189 539497472 383916352 383916352 176547924 822609988 822609988 986451318 986451318 991167808 991167808 405325062 594692613 594692613 857184044 857184044 728041799 899408168 899408168 817049866 879891339 879891339 399929659 913883297 913883297 823931028 823931028 0 1274976 714733313 714733313 205059700 679955141 679955141 626425057 526270287 826341179 826341179 734707955 734707955 654870900 589729564 673895168 673895168 523131188 640039447 640039447 644689953 814635448 874963307 874963307 630300010 286292480 381817050 387593218 387593218 331964016 331964016 57024960 57024960 51194928 37800320 55027728 85344512 218340709 666324825 666324825 623616032 623616032 672169988 672169988 554271808 605561352 605561352 30771712 30771712 25474688 92424224 633933000 633933000 540904096 560588193 627845601 627845601 215616320 215616320 208543116 471013830 471013830 941511156 941511156 378457489 116133336 87241512 890861304 909245247 974059295 974059295 682279643 916115287 916115287 160566356 343288904 343288904 539043841 539043841 302197058 170081500 788937855 788937855 753215584 753215584 815795600 914096185 914096185 1026977902 1026977902 530415644 148780576 31205920 31205920 143726596 143726596 134619712 571756985 571756985 456280588 65196528 904301100 904301100 588251142 527818118 527818118 430576998 403352944 300200200 300200200 132563394 51359744 254262492 254262492 206481464 118244512 249947316 249947316 229188788 251890204 251890204 407433672 409203078 409203078 332359988 313136984 313136984 412758336 412758336 417761926 506265152 506265152 433819436 433819436 383535314 416470062 416470062 312517810 241767698 92411936 83886440 94371880 94371880 93058152 80529856 121208072 825622608 825622608 171335358 71502186 71502186 551108544 744100612 873596427 873596427 629326432 713033766 917525087 917525087 966951040 966951040 393135144 463917308 463917308 998559021 998559021 440665088 411041862 337900110 496433082 496433082 467144102 467144102 774763192 1019626520 1019626520 676872212 676872212 223660488 223660488 162530148 981124222 981124222 965287960 965287960 324085394 562103472 851484738 851484738 614033841 614033841 626033313 626033313 579786432 579786432 831542784 831542784 843608464 843608464 808609395 415778502 415778502 135860662 368413130 368413130 299158336 1018810030 1018810030 495055931 979589082 979589082 939553031 778805321 848297532 848297532 561273882 98882568 690114020 699264357 1025844365 1025844365 483942986 483942986 349176522 138465294 39920016 925376072 925376072 69463184 590074371 590074371 290592920 620290473 620290473 634797744 634797744 550203969 550203969 672137733 681364544 681364544 136754408 136754408 106324400 340019204 340019204 100961044 100961044 344262768 387263034 387263034 377504624 178484892 214332816 214332816 134482052 243649876 243649876 202689484 176236788 176236788 132436464 93491312 160744360 207618444 470510890 470510890 303509540 371756968 371756968 624562029 1039716577 1039716577 939794542 824183747 1071389144 1071389144 899727723 899727723 806356256 544260993 413497793 572184081 670936525 693490672 952744960 952744960 818925007 631605347 549718209 21570720 425246697 425246697 743612075 743612075 897607050 959170122 959170122 944267408 402732164 834672128 834672128 486539310 486539310 269742594 332399684 332399684 246305106 93358488 129026448 332431738 332431738 919154824 919154824 914883675 608343043 934439203 934439203 400921465 94507776 737286869 737286869 716972496 715068757 683826832 224435586 340514722 340514722 268645138 534522016 534522016 514110620 514110620 190266824 457704630 457704630 509081606 1000505893 1000505893 534959102 697452815 697452815 520493118 386209954 289158037 778119545 821410944 906584963 906584963 778288542 778288542 552663779 920540906 920540906 496573800 496573800 449539770 1040810662 1040810662 990557467 990557467 841699892 362238824 533796676 533796676 327753922 327753922 529129520 529129520 318816306 252231776 26789472 260440244 978088048 978088048 721495511 974264212 974264212 613560926 237736378 487772718 487772718 255852610 727446760 1072713884 1072713884 711865334 612479818 883500363 883500363 876609675 876609675 285347865 615758762 649174970 649174970 99225872 90780136 90780136 71902344 40436024 16777248 102846320 103074072 103074072 101459976 101459976 34406408 0 0 16994304 826139491 826139491 835371650 835371650 811197858 275028866 275028866 818561272 818561272 621086355 629516633 899947256 899947256 332257402 122083512 122083512 307471416 390517144 390517144 122069034 123774024 123774024 115497777 104429453 239125765 692332776 692332776 96798885 78562392 751001984 784490505 784490505 739122188 693242896 693242896 579355336 260623360 18124824 25168448 25168448 31512896 290640546 640679460 640679460 160267771 274862466 345112704 349311690 354108622 692811969 692811969 625734881 625209513 974986283 974986283 697412120 697412120 553763432 790939022 790939022 482410532 516547806 654526928 801546393 801546393 753667533 753667533 336106827 340711177 479384142 748314755 748314755 415961152 415961152 345380162 1017390456 1017390456 885075359 688920729 695915084 695915084 360710250 360710250 118015976 165955364 794569381 794569381 457914440 807541885 807541885 537006116 201721869 95688232 608048808 608048808 607920009 556272552 180619392 180619392 176160852 176160852 176160852 672346629 672346629 591866053 947678937 1016958421 1016958421 998975363 1071847659 1071847659 921933383 655626355 769704429 769704429 679527976 113804120 113804120 68586240 46146688 46146688 4620288 4620288 22573696 24866752 510726575 595714161 600236273 600236273 885692528 885692528 83818226 59717072 448596755 448596755 912335122 912335122 641795210 122697866 355466498 446167894 446167894 438114474 292342954 279087200 545394889 545394889 553270786 553270786 700592069 996929750 996929750 1069798079 1069798079 1066648310 945882325 945882325 914567259 502005902 502005902 478251076 478251076 290104546 290104546 613421186 810193059 903534315 903534315 759499816 759499816 329041484 302874722 302874722 592064624 965716040 965716040 734532325 655133278 895779040 895779040 600844527 245762088 658674253 658674253 616567378 616567378 353579216 878922157 878922157 652288857 584180104 124797880 40245304 146676228 196171488 198439668 198439668 180537240 641044680 641044680 1035058046 1035058046 323800242 1012197978 1012197978 798794021 798794021 589687089 992022572 992022572 908275995 1070207723 1070207723 939136511 984733655 984733655 308482209 539300584 697500420 697500420 657506968 174790328 178456500 178456500 250259088 250259088 37837008 89121960 89121960 82452000 71653320 617742494 982651479 982651479 799463805 799463805 579913185 681202929 897473959 897473959 484704500 931136682 931136682 261837332 932875357 932875357 863035056 1013052450 1013052450 1018988551 1018988551 536350938 605366793 605366793 665825021 665825021 772469013 772469013 760153333 674308780 565318497 278623520 636530798 939561784 939561784 962413727 993388912 993388912 613264455 557726843 557726843 574569040 818425618 818425618 861406899 922779722 922779722 717511023 309248367 680051512 857784627 1004708248 1004708248 811293121 831396963 831396963 1011877628 1011877628 344203744 749012974 749012974 604023008 1066665712 1066665712 984613719 849629764 849629764 143821139 135739908 242010252 242010252 240864392 115329320 115329320 119477016 119477016 79642440 78588488 75835464 72100056 86557856 86557856 84944048 84944048 29625504 18876800 141482340 221851252 221851252 186373640 195267440 195267440 135789060 45578100 1585184 0 109850832 109850832 78255432 416092444 416092444 315041280 315041280 328728690 441582182 441582182 362428472 420819666 420819666 327216312 327216312 425776244 519094808 519094808 276103630 34662810 73728 59026432 59026432 13767360 336862912 336862912 336333850 914621551 914621551 284535754 871592875 871592875 646658114 848654322 848654322 731940276 731940276 469395063 778664787 778664787 889893493 889893493 1065718181 1065718181 861544121 557900470 939717326 939717326 873269476 228870804 597950603 827652184 927462921 927462921 919242224 215756292 215756292 353244736 395448954 395448954 377883168 134481920 154142788 164954993 618215105 618215105 606496525 701779795 701779795 995905478 995905478 823208195 876415439 876415439 714105028 789651557 789651557 675463832 172642500 222376618 222376618 728685741 728685741 716277128 716277128 311258460 310977105 787036043 787036043 679668332 679668332 633669705 606732867 717000025 717000025 423981778 961770109 961770109 110277204 12195648 656192 752435284 752435284 526580074 835258071 835258071 1004655659 1004655659 672814209 671228823 252187300 1008804754 1008804754 895498511 1044906427 1044906427 505228830 163129188 939939696 939939696 445423872 445423872 329596578 902037793 902037793 832319211 562630402 813489385 905757568 905757568 842474090 842474090 376455562 376455562 184811572 725614773 725614773 570769425 286652551 645258760 1020730312 1020730312 727984565 598928213 578034273 877612303 877612303 1006949646 1006949646 407869316 351192974 351192974 471339403 950010183 950010183 742657423 738993530 755037879 1050872909 1050872909 766151120 783947335 783947335 394822634 394822634 545527347 857344065 857344065 601686784 564344176 564344176 48370000 48370000 45765568 45765568 12517312 36867776 44811152 44811152 34066688 807665920 807665920 809240064 940387331 940387331 4194432 9439296 14689792 14689792 16893472 95706816 95706816 37469560 25098144 19457312 103401008 103401008 84226568 207780265 207780265 193011828 193011828 146809573 46211280 51668708 135056388 727502517 727502517 55871508 541592737 541592737 173054016 173054016 67084500 516133960 516133960 201429266 69544200 101736968 103074072 103074072 21029136 194291595 1072557567 1072557567 1020225011 947723076 577242281 577242281 224395684 216798096 138284406 178462988 241646540 894641308 894641308 807419189 728505766 565052784 943312816 943312816 822609988 822609988 998270548 998270548 991167808 991167808 405325062 455901490 455901490 291789186 145043476 118150204 899408168 899408168 817049866 879891339 879891339 546206016 955238024 955238024 1007869477 1007869477 910689182 910689182 876134644 876134644 59379920 60343920 626425057 626425057 526270287 526270287 639181216 662177721 795435024 795435024 671389860 781093255 781093255 841516612 841516612 389071640 872629529 872629529 874963307 874963307 630300010 369201528 381817050 381817050 359572586 331964016 331964016 143072708 61614384 61614384 57751908 57751908 107459524 218340709 666324825 666324825 623525225 599156825 672169988 999212087 999212087 625748136 625748136 831033378 957649162 957649162 570537845 603176853 683545804 683545804 545091416 627845601 750297485 750297485 1069846890 1069846890 853227206 853227206 973786092 973786092 875222283 875222283 126500875 964972704 964972704 813875637 1040501006 1040501006 916115287 916115287 140640637 208155657 208155657 539043841 539043841 692453508 692453508 788937855 874719418 874719418 753215584 625160232 864290931 864290931 1026977902 1026977902 521426036 148780576 31205920 31205920 411671718 411671718 287237222 852625026 873780835 873780835 386040673 963934262 963934262 588251142 527818118 527818118 430576998 403352944 277292076 528605310 528605310 279718216 510123256 510123256 206481464 211627596 227990836 238593732 238593732 116019748 201174948 201174948 247464156 338038784 338038784 481900624 497621558 497621558 427909478 182023956 182023956 483940772 483940772 415162182 415162182 416470062 416470062 843615061 843615061 201067634 993788882 993788882 417932260 811274477 941099800 941099800 825622608 825622608 237952674 256301244 509173238 509173238 744100612 873596427 873596427 623907369 1028146185 1028146185 717539541 945492489 945492489 682939081 463917308 866340637 998559021 998559021 440665088 411041862 152322628 496433082 496433082 467144102 467144102 774763192 1019626520 1019626520 397721784 784695987 784695987 951847593 951847593 981124222 981124222 953068041 953068041 672383033 731448284 851484738 851484738 614033841 614033841 626033313 626033313 579786432 660498632 660498632 869538304 869538304 843608464 808609395 415778502 415778502 135860662 368413130 368413130 299158336 1018810030 1018810030 700047637 593723746 593723746 267523068 778805321 848297532 848297532 561273882 232053036 556198240 622394664 739957506 749930319 940722954 940722954 548575513 548575513 639944985 639944985 361407705 825084554 825084554 551574584 289192072 76137448 90754816 125227616 125227616 24022368 24022368 247594504 247594504 249413324 249413324 218492920 218492920 340019204 340019204 134623044 134623044 295701198 431106062 431106062 798762165 846564511 846564511 628122301 926199274 926199274 241641520 241641520 203489740 562616536 562961505 681968932 681968932 58872424 28740160 28740160 17039424 300810376 300810376 624562029 1036571617 1036571617 365168874 826541136 1071389144 1071389144 956011598 901167369 908592411 1027479299 1027479299 402970917 213529984 678259731 952744960 969210347 969210347 631605347 1054996134 1054996134 912995739 425246697 743612075 743612075 294589011 438378300 944267408 944267408 784285053 834672128 834672128 486539310 511031162 511031162 630530177 630530177 669552137 669552137 920764825 920764825 332431738 626092136 848568345 848568345 566308962 324669762 580342689 598905665 891435562 891435562 737286869 715848656 715068757 683826832 224435586 340514722 340514722 268645138 117543570 117543570 272479680 272479680 190266824 457704630 457704630 353112827 1000505893 1000505893 673219094 138432466 235670556 235670556 174850440 305699388 305699388 81003138 906584963 906584963 349725137 312233866 552663779 920540906 920540906 376285490 449539770 449539770 1040810662 1040810662 990557467 990557467 841699892 410407426 533796676 533796676 278409446 51651312 529129520 529129520 355419346 355419346 189890964 509896202 978088048 978088048 331089090 851969008 851969008 307494913 237736378 487772718 487772718 159970710 727446760 727446760 567350430 527139265 607375882 607375882 607376136 873989643 873989643 125755768 548380290 649174970 649174970 130472184 130472184 59681752 34401712 66242720 144278996 144278996 103074072 134353012 134353012 438314316 498384992 498384992 496266048 542628168 542628168 363905898 366555136 366555136 337012768 337012768 292563328 818561272 818561272 111529968 103655896 381726464 381726464 97266448 97856232 97856232 76613792 390517144 390517144 132788296 354042810 354042810 131959904 104429453 807931500 807931500 855935108 990514471 990514471 751001984 784490505 784490505 739122188 693242896 693242896 579355336 260623360 543061121 601410257 601410257 592185829 593987861 640679460 713626237 713626237 274862466 684344700 684344700 804951268 804951268 692811969 625734881 625209513 893897367 893897367 697412120 697412120 553763432 790939022 868501963 940558342 960707601 960707601 801546393 801546393 753667533 753667533 1014083782 1014083782 340711177 748314755 748314755 473506191 342368398 9437184 1017390456 1017390456 267987275 138674228 293718636 343729646 360710250 360710250 245925030 333802524 794569381 794569381 457914440 807541885 807541885 537006116 586172456 613601865 613601865 605562533 133174488 133174488 225839816 225839816 222641872 222641872 176160852 672346629 672346629 591866053 947678937 1016958421 1016958421 998975363 1071847659 1071847659 921933383 655626355 769704429 769704429 679527976 113804120 113804120 84479520 84479520 71344848 26757872 26757872 22573696 24866752 523996078 595714161 766516546 766516546 1000378690 1000378690 955638532 955638532 448596755 448596755 912335122 912335122 641795210 354755406 501619182 674921996 742903910 742903910 748385120 748385120 567742024 545394889 202954373 202954373 697892388 697892388 645584144 645584144 738853124 738853124 945882325 945882325 914567259 1013754332 1013754332 478251076 478251076 290104546 290104546 862523601 862523601 83151816 606883481 606883481 921298395 921298395 235154550 785779448 952968887 952968887 734532325 734532325 20996309 895779040 956301540 956301540 943983246 943983246 575703577 616567378 725706792 725706792 878922157 878922157 652288857 584180104 102838448 19005448 65871328 65871328 65113328 65113328 47107808 47107808 197607518 1035058046 1035058046 323800242 1012197978 1012197978 948032269 948032269 971115085 971115085 749620945 575084932 749068580 1007731215 1007731215 960704679 960704679 991040055 991040055 432018129 657506968 657506968 129827896 173723878 413331940 439297804 439297804 507260620 507260620 89121960 82452000 1010231692 1010231692 982651479 982651479 799463805 927515972 927515972 527171592 443638219 414715133 437314788 488897924 488897924 310318538 932875357 1061977425 1061977425 119985647 363382122 363382122 141664410 270140240 270140240 268960770 268959744 246974025 772469013 772469013 760153333 739422432 739422432 890958592 890958592 939561784 939561784 962413727 993388912 993388912 881772182 982305620 982305620 845291250 1071829439 1071829439 861406899 861406899 354629529 829217264 980740911 1036767579 1036767579 1004708248 1004708248 811293121 831396963 831396963 1011877628 1011877628 362286160 749012974 935672425 935672425 1066665712 1066665712 984613719 327681939 538221203 841518339 841540800 841540800 114752152 114752152 80698808 80698808 119477016 119477016 84796928 84796928 42800488 10814488 86557856 86557856 77726168 77726168 47787328 67577672 141482340 221851252 221851252 252777036 337310822 337310822 272827332 279183462 479209866 479209866 82335306 315106358 315106358 416092444 416092444 284046666 311039058 328728690 441582182 441582182 362428472 420819666 420819666 122229278 159815784 159815784 519094808 527761906 527761906 396856688 396856688 361111816 361111816 76337668 438859036 438859036 336333850 336333850 306455560 55125168 319169636 646658114 646658114 848654322 848654322 731940276 731940276 469395063 232204442 232204442 58795024 58795024 34152560 34152560 134217984 136315140 138678668 201725964 201725964 228870804 671113472 671113472 169943316 169943316 116944600 215756292 215756292 201491504 201491504 169777152 395354598 395354598 376528430 451883406 451883406 102637080 69747624 69747624 29920512 29920512 681120320 681120320 676020133 104874696 104874696 101712408 113805848 113805848 97357808 10856192 195150257 195150257 174121033 174121033 306515072 843917968 843917968 571288593 273950227 679668332 679668332 633669705 100714512 171708160 305307930 419648616 419648616 396969234 396969234 286835834 361049266 361049266 68889242 526580074 835258071 835258071 1004655659 1004655659 796231961 756215989 688388133 373692935 895498511 895498511 1044906427 1044906427 505228830 163129188 952400439 952400439 823379328 964227872 964227872 902037793 902037793 832319211 562630402 398486832 398486832 356368176 356368176 342665018 338899722 338899722 184377664 184377664 262836380 262836380 185672244 645258760 695867301 700658741 700658741 598928213 578034273 640194248 640194248 337030144 349371840 375863706 375863706 337516032 471339403 892082603 892082603 742657423 491609429 755037879 755037879 225430528 766151120 766151120 263726892 394822634 440562863 479725974 811013521 811013521 601686784 566303857 593183600 593183600 587849792 36572612 49338193 713557077 713557077 44811152 572520899 572520899 576269970 853131521 853131521 950323536 950323536 537206096 941550598 941550598 545329472 404941632 95706816 95706816 37469560 25098144 19457312 103401008 103401008 84226568 207780265 207780265 193011828 193011828 146809573 65660400 106236920 638846744 727502517 727502517 473039540 541592737 541592737 325390240 325390240 67084500 516133960 516133960 401431766 216377432 338018856 486662190 486662190 388015640 388015640 1072557567 1072557567 1020225011 947723076 326174769 388108602 463474838 463474838 272629848 163846820 163846820 64104700 462167312 728505766 728505766 565052784 943312816 943312816 832754019 832754019 998270548 998270548 681140832 554361381 274834949 992458309 992458309 556320268 927939771 934862547 982393490 982393490 452336598 980971026 980971026 973615841 955238024 955238024 1007869477 1007869477 910689182 910689182 876134644 876134644 524753612 524753612 714780729 714780729 168929488 170134397 639181216 662177721 795435024 795435024 671389860 781093255 781093255 841516612 841516612 389071640 872629529 872629529 663414842 663414842 618979952 369201528 369201528 359572586 393291666 393291666 275452730 143072708 518521044 518521044 330835980 154606372 138153732 204067680 204067680 620598284 786676207 1005794295 1005794295 999212087 999212087 625748136 625748136 831033378 957649162 957649162 570537845 603176853 685749968 685749968 667862101 198597876 750297485 901775595 1069846890 1069846890 853227206 853227206 973786092 973786092 875222283 875222283 126500875 964972704 964972704 813875637 1040501006 1040501006 201719948 674796632 674796632 109462929 176082836 611847443 611847443 806187395 806187395 554047521 874719418 874719418 690794648 707328440 707328440 610320777 621806121 621806121 163830336 163830336 208049416 208049416 411671718 624673444 624673444 852625026 873780835 873780835 386040673 963934262 963934262 429105957 151259172 140632272 65321106 326347680 326347680 528605310 528605310 279718216 510123256 510123256 79757440 211627596 227990836 238593732 238593732 143445196 201174948 201174948 143448326 338038784 338038784 495398188 497621558 497621558 427909478 351273990 334158180 483940772 483940772 415162182 415162182 499255808 499255808 843615061 843615061 201067634 993788882 993788882 417932260 811274477 941099800 941099800 688920244 688920244 237952674 256301244 509173238 509173238 552741716 552741716 293995299 1033709852 1033709852 1028146185 713031765 945492489 945492489 682939081 78774600 866340637 866340637 423805116 432685282 448959536 448959536 143690276 269484546 349176008 349176008 124834640 272631872 397721784 397721784 784695987 784695987 951847593 951847593 642337822 404291712 168906784 672383033 672383033 731448284 731448284 247555077 247555077 219795264 86354208 72762024 72762024 660498632 660498632 869538304 869538304 92410347 61691904 55591088 55624368 848396848 848396848 168394992 197780724 644579404 700047637 700047637 206202665 709060216 709060216 590980457 590980457 286397024 286397024 232053036 556198240 556198240 739957506 749930319 940722954 940722954 548575513 548575513 639944985 639944985 361407705 825084554 825084554 551574584 289192072 60772816 60772816 61321408 188441420 256069208 256069208 247594504 247594504 249413324 249413324 218492920 239324336 239324336 197465936 197465936 134623044 386672834 431106062 431106062 798762165 846564511 846564511 628122301 926199274 926199274 899361001 1049834079 1049834079 790311564 790311564 681968932 681968932 477729416 453514046 525470400 525470400 439618232 439618232 489232970 489232970 60877944 83959848 826541136 826541136 956011598 956011598 901167369 908592411 1027479299 1027479299 867314705 583679121 678259731 805973998 969210347 969210347 399713266 1054996134 1054996134 912995739 168653108 396166515 396166515 294589011 480906208 585916586 706651701 784285053 979378692 979378692 999237302 999237302 511031162 630530177 630530177 669552137 669552137 920764825 920764825 79447883 626092136 848568345 848568345 566308962 917522705 917522705 860930474 891435562 891435562 330304040 31960208 41104272 41104272 38892704 41145632 41145632 37978224 84046084 210764364 437891702 437891702 372556382 372556382 454396776 454396776 176427554 673219094 673219094 490767750 490767750 288266378 307681938 370427408 594822185 81003138 336415192 336415192 46433416 21309920 1020405764 1020405764 538183120 376285490 777665072 777665072 634776297 651614937 651614937 268605572 407160966 410407426 410407426 363856448 290009344 290009344 486926432 486926432 355419346 355419346 488759598 509896202 509896202 1040849949 1040849949 851969008 851969008 583883317 678577697 678577697 596268405 680166758 680166758 729912342 729912342 527139265 607375882 607375882 607376136 607376136 128218688 128218688 40605088 117592704 117592704 130472184 130472184 59681752 34401712 66242720 144278996 144278996 74244352 134353012 214961120 438314316 498384992 498384992 496266048 872456576 872456576 537580928 808121634 808121634 543212928 337012768 292563328 629303162 927487754 927487754 617534875 617534875 613972480 397209264 397209264 97856232 274350248 274350248 122057890 132788296 354042810 354042810 221581276 221581276 807931500 807931500 855935108 990514471 990514471 467849713 52566464 21496832 21496832 5770432 112222512 122143808 562369384 562369384 601410257 601410257 592185829 593987861 593987861 713626237 713626237 755118080 755118080 684344700 804951268 804951268 443860766 555881648 555881648 508640815 653785688 653785688 834500984 834500984 120341090 874252881 940558342 960707601 960707601 891228443 891228443 518731230 518731230 1014083782 1014083782 905649127 905649127 679151537 741344669 741344669 240062800 240062800 859317658 891619124 1000890633 1000890633 655918842 174606264 174606264 245925030 333802524 333802524 279770264 348526794 348526794 306578664 78124456 586172456 613601865 728036381 728036381 788949336 788949336 225839816 225839816 449256974 449256974 395515528 395515528 271065136 833165230 1006504347 1006504347 80481627 345673576 363781482 776485376 776485376 177685773 4211140 101134856 274409556 274409556 268469936 529264452 529264452 362481440 185292976 26757872 17957376 50992656 523996078 523996078 766516546 766516546 1000378690 1000378690 955638532 955638532 405840357 640156928 923272251 1032413311 1032413311 889241643 501619182 674921996 742903910 742903910 748385120 748385120 567742024 537542825 537542825 499976366 499976366 348173194 688030702 753119333 753119333 36362137 871445394 871445394 810685346 1013754332 1013754332 46508256 46508256 44163280 66794113 862523601 862523601 650906841 650906841 606883481 921298395 921298395 174853524 785779448 952968887 952968887 360781003 360781003 933743770 933743770 956301540 956301540 943983246 943983246 332532245 468788078 725706792 725706792 519341019 113717336 113717336 102838448 102838448 19005448 65871328 65871328 65113328 65113328 39022436 66272209 66272209 173541012 572814504 740356261 740356261 781080365 948032269 948032269 971115085 971115085 692472233 575084932 749068580 1007731215 1007731215 960704679 960704679 991040055 991040055 432018129 274989682 274989682 129827896 173723878 413331940 950949345 950949345 539677953 507260620 617044026 617044026 1010231692 1010231692 436656150 436656150 324233782 979493304 979493304 424831446 565969304 565969304 565562766 565562766 488897924 438305046 542638288 1061977425 1061977425 743000717 676980908 633907388 633907388 260836476 715664785 737659355 1068429713 1068429713 762384584 646762071 1062208191 1062208191 931788283 931788283 890958592 622281971 823560455 823560455 572888087 881772182 881772182 982305620 982305620 845291250 1071829439 1071829439 646185573 457316352 483269838 829217264 980740911 1036767579 1036767579 407401959 194152000 159960768 159960768 727735232 727735232 372641818 812720540 812720540 935672425 935672425 316020466 859383603 859383603 237028876 538221203 841518339 841540800 841540800 417275526 347288792 347288792 332442234 332442234 77805688 84796928 288195784 381934042 381934042 315025592 73531792 115344464 115344464 47787328 67577672 79958056 92538984 207095472 419530784 419530784 337310822 272827332 279183462 479209866 479209866 82335306 315106358 315106358 357753000 357753000 284046666 284046666 154215204 304153152 304153152 286326800 247008930 271647714 271647714 159815784 159815784 348915622 527761906 527761906 396856688 428115020 523550812 523550812 393266586 438859036 438859036 256776360 864624861 864624861 206080146 986532913 986532913 722364514 671726805 185905840 189222545 189222545 414834393 974871693 974871693 1043298933 1043298933 898888539 390127331 458794567 667419897 817406853 976799118 976799118 525824146 671113472 803670135 803670135 960239748 960239748 262100076 530730134 530730134 169777152 169777152 395354598 395354598 376528430 533846591 823611509 1040002841 1040002841 703136997 703136997 713430144 713430144 681120320 676020133 605268040 683680284 789144229 789144229 583552536 293914722 324440242 1064498240 1064498240 778642845 245634949 679086428 843917968 843917968 630951360 807695273 908765331 908765331 877657227 100714512 67373064 305307930 305307930 281671616 396969234 396969234 286835834 361049266 766775052 766775052 575668881 341130370 217801816 635352420 796231961 796231961 933620091 1070979951 1070979951 481573724 872882417 872882417 678166913 678166913 844047844 1000145302 1000145302 823379328 964227872 964227872 838557396 80994752 269255168 269255168 268699650 217083903 858048819 858048819 594228793 378606545 378606545 158012068 198489313 247713564 247713564 775162653 775162653 140709553 84620328 675418116 675418116 574652865 574652865 29409585 44692416 381695424 381695424 375863706 76419218 113515848 113515848 111084616 715851432 725039925 758595507 758595507 496572869 1026498920 1026498920 892160163 709352085 1069400629 1069400629 811013521 811013521 566303857 566303857 593183600 593183600 587849792 334598632 408854816 713557077 713557077 85839754 572520899 572520899 576269970 853131521 853131521 950323536 950323536 537206096 941550598 941550598 545329472 404941632 16409984 16409984 2895360 2097408 2097408 6825344 7639168 21154432 71350688 96638976 96638976 92471848 92471848 65660400 106236920 638846744 638846744 473039540 473039540 273045664 325091106 325390240 325390240 34177296 16946976 401431766 401431766 216377432 338018856 486662190 486662190 390088202 388015640 60114360 134217728 587473842 587473842 326174769 388108602 463474838 463474838 595593377 595593377 623073761 658811024 658811024 374082832 415813014 442795266 478725198 673731686 832754019 832754019 713167955 681140832 681140832 554361381 299901286 992458309 992458309 556320268 927939771 934862547 982393490 982393490 452336598 980971026 980971026 973615841 950368840 950368840 85115616 93711072 99970482 332973810 642549895 642549895 524753612 524753612 714780729 714780729 168118832 597823964 597823964 608805953 649669344 649669344 597466832 264931704 210407442 841143374 841143374 335696177 120612106 269009922 269009922 269009922 37453618 43252736 67838976 268437890 393291666 393291666 275452730 185544020 518521044 518521044 330835980 154606372 138153732 160392033 612303717 620598284 786676207 1005794295 1005794295 289138129 136388868 8646720 8646720 671130728 765011565 765011565 720708136 720708136 685749968 685749968 667862101 207381016 646583474 901775595 901775595 392842287 261655870 412619146 412619146 135790984 308467136 308467136 111841682 476549616 476549616 294129902 219044576 219044576 826149039 826149039 674796632 170734068 566440161 611847443 611847443 806187395 806187395 491379774 491379774 690794648 690794648 707328440 707328440 610320777 958081924 958081924 901841579 901841579 276249976 666318085 666318085 624673444 624673444 772556057 908103312 1012401807 1012401807 634981391 623398985 639898684 639898684 620917013 570919024 326347680 326347680 325171254 194689526 194689526 136699980 175218176 175218176 69470472 213619336 214822092 214822092 143445196 99864832 146149416 146149416 152569605 562436193 562436193 562305129 800787777 800787777 351273990 552835712 552835712 354169127 572446881 572446881 714251542 890376228 890376228 163530508 163530508 1061211258 1061211258 530582360 530582360 145227860 206570124 688920244 688920244 654869661 793045280 839635063 839635063 772961420 742572129 563660385 1033709852 1033709852 965264487 713031765 713031765 378712245 277236746 222685356 390119444 423805116 423805116 432685282 448959536 545781825 545781825 394845837 349176008 349176008 1014887656 1014887656 732612034 249087187 718048375 718048375 541426221 473696992 432881796 432881796 291833946 805400323 848864551 848864551 357081169 357081169 68890248 68890248 21860480 22870176 22870176 25277041 25277041 22024752 818976003 818976003 372098981 372098981 275326338 848396848 859046586 859046586 771599817 922119571 922119571 547902640 634719888 709060216 709060216 591455389 591455389 512459695 760970605 760970605 549504579 991748115 991748115 675460385 675460385 537071686 345527514 137602708 200959328 200959328 26924640 44030048 53084224 57593184 57593184 39931104 44484864 171517152 188441420 256069208 256069208 240462492 223921836 223921836 207494796 207494796 239324336 239324336 197465936 197465936 113486208 386672834 386672834 133828776 133828776 169408896 169408896 120899388 790375600 790375600 899361001 1049834079 1049834079 859971696 934478644 934478644 861938904 861938904 758772363 525470400 920176347 920176347 760765551 760765551 489232970 60877944 83959848 555026640 555026640 990713531 1033639024 1033639024 941620215 889543681 889543681 872422473 583679121 565686817 601293084 601293084 945463816 1047258263 1047258263 421601574 421601574 414469743 414469743 376768638 606663628 784482750 994122386 994122386 929438139 979378692 979378692 999237302 999237302 441789078 441789078 201924892 87954557 513286350 891293120 905508577 905508577 569327073 308534451 608347144 608347144 917522705 917522705 860930474 860930474 652527744 330304040 24133840 22029632 22029632 28889664 141707465 141707465 494402478 494402478 423911261 437891702 437891702 372556382 386975580 881436234 881436234 764937797 702023397 552734923 748737164 748737164 714080592 307681938 574620673 594822185 72892688 1033692431 1033692431 398255161 301736775 1020405764 1020405764 114536987 782021210 958090463 1071122175 1071122175 992782002 651614937 989146726 989146726 346169714 363856448 363856448 290009344 290009344 331547826 331547826 353632060 353632060 488759598 488759598 480333916 1040849949 1040849949 696687410 696687410 583883317 678577697 678577697 596268405 680166758 680166758 729912342 1032925732 1032925732 880939083 358773481 208718808 208718808 205856908 205856908 146331140 146331140 117592704 104498992 53870912 53235312 49415376 33034704 33034704 193989284 193989284 74244352 214961120 214961120 8425100 2789888 16994304 872456576 872456576 537580928 808121634 808121634 557581344 557843203 806404611 806404611 927487754 927487754 617534875 617534875 613972480 397209264 397209264 73648336 376346008 376346008 925895217 925895217 449662094 449662094 1038478448 1038478448 973717847 755515514 79691877 62947536 46186704 35652032 16850976 16850976 73760 70601088 112222512 112222512 562369384 570623392 572648624 586924289 586924289 57263540 58295712 155805196 556378688 755118080 755118080 258374732 258374732 236992912 236992912 555881648 555881648 82047432 653785688 653785688 834500984 834500984 120341090 874252881 874252881 417890656 417890656 891228443 891228443 518731230 518731230 469770869 567095880 905649127 905649127 983700552 983700552 741344669 1073095249 1073095249 859317658 891619124 1000890633 1000890633 655918842 181209406 174606264 169623556 53816112 576303077 576303077 67108848 565938321 948782406 948782406 883190207 1034359833 1034359833 728036381 788949336 788949336 171062624 171062624 449256974 449256974 483656721 907435183 907435183 833165230 1006504347 1006504347 681338884 595534628 637778001 776485376 776485376 558333421 703068645 703068645 602316820 274409556 268469936 529264452 529264452 362481440 319501362 319501362 436344358 436344358 193668357 193668357 271717485 556014368 556014368 508384016 508384016 174226906 285738018 640156928 923272251 1032413311 1032413311 889241643 953426061 953426061 686043787 686043787 78835968 561499656 630787777 630787777 621429249 550560489 748758829 766232585 766232585 763713796 753119333 27337931 566288832 566288832 547727810 478151116 341836170 501500182 501500182 301452098 57957090 562115584 624240624 650906841 650906841 611312345 457460139 285484334 285484334 639649856 639649856 356729950 399316516 707275880 1002779667 1002779667 519359370 500382418 777388065 902234193 902234193 589732065 612889648 612889648 619624453 732338741 771805448 771805448 84019368 84019368 106890344 165097600 194712484 194712484 192385104 66272209 66272209 173541012 572814504 740356261 740356261 781080365 781080365 866675329 866675329 483079374 483079374 495267181 648878281 812366945 812366945 74171691 543253504 570499089 570499089 579812433 579812433 553663600 56639520 462477032 462477032 950949345 950949345 539677953 506118331 617044026 617044026 546639618 546639618 436656150 436656150 324233782 979493304 979493304 547541536 565969304 691614837 990774092 990774092 861784257 861784257 438305046 394560522 927853781 952443124 952443124 788793405 633907388 260836476 715664785 737659355 1068429713 1068429713 762384584 646762071 1062208191 1062208191 931788283 931788283 737628273 622281971 823560455 823560455 401918970 82728498 231791328 231791328 0 474007212 561698785 646185573 806539114 806539114 984408527 984408527 837051732 1000825202 1000825202 738015781 313544327 159960768 188370244 724191015 724191015 382605274 812720540 812720540 896731916 896731916 780673076 780673076 629744745 237028876 237028876 650761460 650761460 789263368 789263368 347288792 347288792 332442234 332442234 73204970 54985408 288195784 381934042 381934042 315025592 73531792 115344464 115344464 16116672 68835268 213208748 218702892 218702892 419530784 419530784 136788228 489578756 489578756 410539724 89888172 228943256 520812938 520812938 357753000 393911120 393911120 154215204 154215204 310903620 310903620 286326800 195762470 271647714 271647714 271454720 146674276 348915622 348915622 118664504 298319928 428115020 523550812 523550812 447240322 447240322 244220150 371669088 864624861 864624861 206080146 986532913 986532913 722364514 671726805 301345094 301345094 214752584 414834393 974871693 1001775460 1043298933 1043298933 960541192 960541192 774103699 945078621 945078621 976799118 995352682 995352682 525824146 803670135 989313532 989313532 960239748 262100076 530730134 530730134 130037384 152476304 413033236 413033236 218399044 533846591 823611509 1040002841 1040002841 703136997 703136997 713430144 713430144 32427845 601174532 605268040 683680284 789144229 789144229 583552536 293914722 466313844 1064498240 1064498240 778642845 703727633 744495481 744495481 16653876 712787995 807695273 908765331 908765331 1023912732 1023912732 221714565 107225408 214780280 229428588 229428588 367841202 367841202 62465368 766775052 811339395 911771779 911771779 910213275 754665713 788872109 788872109 933620091 1070979951 1070979951 481573724 872882417 892512702 892512702 678166913 844047844 1000145302 1000145302 902896076 149876868 149876868 76401984 76401984 275760232 340737162 831550217 831550217 858048819 858048819 594228793 905126264 1008522269 1008522269 699505761 459587622 459587622 775162653 775162653 909444696 909444696 675418116 675418116 574652865 574652865 29409585 25215392 381695424 381695424 369465344 8396928 9969560 111084616 111084616 715851432 725039925 758595507 791490288 791490288 1026498920 1026498920 892160163 709352085 1069400629 1069400629 69582551 63078280 129239928 129239928 191390180 352940616 352940616 334598632 408854816 408854816 371041900 85839754 653792013 653792013 458555702 542683473 542683473 137753028 45687808 146519456 564071008 679423360 705695120 705695120 685319365 558867272 246668440 35894160 10909032 124069712 124069712 67244040 67590152 103237904 103237904 21004416 587776160 587776160 68174368 68174368 100927512 139199488 139199488 270027924 270027924 414513030 414513030 348201162 535382112 535382112 408218726 190950708 273630312 273630312 390088202 390088202 308461762 700030501 722260833 722260833 725463280 725463280 973004363 973004363 810770390 595593377 595593377 812141784 812141784 742661132 1042546744 1042546744 1027604655 933759791 918360027 276047225 4194432 65085712 65085712 329385392 329385392 299901286 299901286 288397220 288397220 143704644 407463824 915543816 915543816 849872211 589646216 589646216 346581041 950368840 950368840 347271575 571472362 747295816 1049150559 1049150559 883010900 211830552 211830552 207400076 243617412 243617412 597823964 597823964 142874630 615174160 615174160 323043404 595996677 595996677 841143374 841143374 612570275 844173841 844173841 851512706 851512706 609729482 379944074 379944074 67838976 151664700 151664700 185544020 185544020 267140332 267140332 231477388 237375004 237375004 160392033 612303717 612303717 561556205 865524339 865524339 269692210 651226202 651226202 565765745 1022167206 1022167206 923158115 720708136 720708136 234360789 75406824 101165568 207381016 538202772 538202772 9751104 329813600 329813600 312475986 346343754 346343754 388242456 388242456 635449753 1053008161 1053008161 983816206 998414242 998414242 928680497 826149039 170734068 541495665 566440161 566440161 327229554 508899996 508899996 609552054 609552054 594436361 304296210 906231890 906231890 612632649 958081924 958081924 901841579 901841579 475520334 666318085 666318085 364088948 369100488 772556057 908103312 1012401807 1012401807 634981391 623398985 639898684 639898684 620917013 570919024 145041732 142674176 337920 38291472 38291472 35317508 175218176 175218176 201721036 201721036 44631452 125126504 230412288 230412288 255286120 255286120 152569605 562436193 562436193 562305129 800787777 800787777 556506464 552835712 552835712 689624613 689624613 572446881 714251542 890376228 890376228 163530508 163530508 1061211258 1061211258 530582360 530582360 554173094 979896211 979896211 654869661 654869661 799766608 839635063 839635063 772961420 742572129 563660385 563660385 1051198815 1051198815 1050674527 1050673503 915880228 764990531 496818724 743970945 743970945 617235503 281297030 301123586 545781825 545781825 394845837 253527287 435949279 1014887656 1014887656 732612034 249087187 718048375 718048375 541426221 156099588 432881796 432881796 291833946 805400323 848864551 848864551 357081169 357081169 261049356 140035648 68731392 99891840 583009056 583009056 25277041 22024752 818976003 818976003 372098981 372098981 275326338 207697281 859046586 859046586 771599817 922119571 922119571 43966421 634719888 634719888 196115501 591455389 591455389 512459695 760970605 760970605 549504579 991748115 991748115 702565796 702565796 537071686 293732647 196189264 173314112 191007552 191007552 169220628 143029584 179982960 179982960 44341296 44341296 171517152 173726809 266924416 711027161 711027161 79876296 121671792 121671792 76817992 102402656 662887797 662887797 547677776 613972488 613972488 53076400 15541536 701293029 701293029 686154021 658032953 658032953 641576028 260046972 255066128 859971696 859971696 934478644 934478644 861938904 861938904 758772363 523816001 920176347 920176347 760765551 760765551 686758629 581341331 236067991 555026640 1025950827 1025950827 1033639024 1033639024 941620215 1028653743 1028653743 872422473 561708940 561708940 549779550 756367490 945463816 1047258263 1047258263 956273779 956273779 414469743 414469743 1063513072 1063513072 872802315 994122386 994122386 929438139 929438139 415399082 516785260 516785260 441789078 446505744 446505744 413928774 383806163 891293120 905508577 905508577 569327073 308534451 608347144 608347144 545907777 652528512 652528512 47483385 22334208 24133840 24133840 22029632 22029632 28312992 141707465 141707465 494402478 494402478 838504536 838504536 696884527 555222561 553051389 881436234 881436234 764937797 702023397 552734923 783303236 783303236 850396228 850396228 574620673 574620673 987001718 1033692431 1033692431 398255161 301736775 511775962 773556548 787794909 787794909 958090463 1071122175 1071122175 992782002 647423891 1053909709 1053909709 637865344 109457144 71045984 20591904 16976960 288789808 288789808 53105442 84052092 161667156 807867252 807867252 998565218 998785457 998785457 688425265 943533831 943533831 939531911 939531911 793376767 793376767 185711188 1032925732 1032925732 880939083 176160852 208718808 208718808 708777728 708777728 704981013 171857153 364783775 364783775 400292346 400292346 596263936 596263936 578331584 193989284 193989284 12885056 216547328 216547328 2789888 2789888 5768192 22103680 29476160 289481088 289481088 557581344 557581344 557843203 806404611 806404611 670114169 670114169 336640721 348570072 348570072 67183104 119912976 119912976 376346008 376346008 925895217 925895217 449662094 449662094 1038478448 1038478448 973717847 970987740 970987740 948121671 948121671 413311041 61161616 12657872 46743104 81031456 124030440 124030440 72076896 570623392 570623392 50404992 50404992 57263540 537910240 537910240 626930922 808051971 808051971 294184259 301994264 301994264 236992912 377618514 614761033 614761033 276931082 915154707 915154707 270870786 111733850 101540896 117753912 117753912 73609608 473962448 473962448 246023014 1010460352 1010460352 469770869 296997717 202999578 983700552 983700552 596580643 1073095249 1073095249 1070276016 1070276016 623379753 425992292 495289350 495289350 404751618 169623556 314166384 576303077 576303077 369845594 565938321 948782406 948782406 883190207 1034359833 1034359833 597958100 186829232 186829232 226668896 226668896 213526504 224015996 483656721 907435183 907435183 743342127 689834732 681338884 681338884 595534628 637778001 637778001 170852861 558333421 703068645 703068645 602316820 122337808 122337808 56592064 190365270 291134066 319501362 319501362 436344358 436344358 193668357 935526495 935526495 271717485 977868967 977868967 576226294 580949958 580949958 161498032 270532866 270532866 822132771 822132771 953426061 953426061 686043787 686043787 787523864 787523864 630787777 630787777 621429249 550560489 748758829 766232585 766232585 763713796 349283072 6837632 4718720 6651968 478151116 478151116 341836170 501500182 501500182 301452098 57957090 562115584 562115584 548904033 611312345 690258179 690258179 579348532 814343235 814343235 639649856 285014427 599892368 707275880 1002779667 1002779667 370356590 534798451 534798451 902234193 902234193 589732065 537161796 550071076 637943636 732338741 771805448 771805448 701913092 84019368 106890344 165097600 194712484 194712484 192385104 60940656 736347140 736347140 541774977 209262116 266888628 266888628 748366498 755573805 755573805 483079374 483079374 495267181 648878281 812366945 812366945 541257766 543253504 588305064 683599553 683599553 579812433 553663600 434535788 462477032 462477032 427596042 427596042 361256118 289101646 29417472 29417472 3211520 7938816 7938816 6825856 6825856 4719744 295968312 547541536 565183329 691614837 990774092 990774092 861784257 861784257 394560522 394560522 927853781 952443124 952443124 852346021 852346021 832189984 227166940 110835288 190973660 758139341 758139341 622085101 122473656 604258968 604258968 373182505 373182505 571202576 571202576 401918970 727473312 727473312 849225232 849225232 448667478 474007212 561698785 561698785 806539114 806539114 1048957205 1048957205 437224450 1000825202 1000825202 805910548 942741812 942741812 558387830 635835979 1001819716 1001819716 1005602352 1005602352 375010960 375010960 780673076 780673076 629744745 88199297 184757345 650761460 650761460 789263368 789263368 218824712 218824712 76620360 76620360 9511496 97591296 109081344 109081344 95848828 193059796 193059796 185327632 34618000 50070080 68835268 213208748 218702892 218702892 294227044 294227044 136788228 489578756 489578756 410539724 89888172 228943256 520812938 520812938 163897332 393911120 393911120 277908224 308689634 310903620 310903620 346758332 346758332 43916880 309857032 309857032 280955210 370435584 370435584 302900120 298319928 298319928 271083176 271083176 447240322 447240322 274701480 462355724 462355724 430104670 248266962 489447628 489447628 513706630 513706630 301345094 301345094 214752584 252127868 252127868 1001775460 1001775460 46715441 960541192 960541192 774103699 945078621 945078621 210021130 995352682 995352682 241207479 436248760 989313532 989313532 665263387 168126533 207948310 256124806 256124806 166439286 413033236 413033236 302255746 302255746 437366848 437366848 371778984 23923872 38735344 38735344 20981824 29698272 93394560 93394560 60869240 80234808 238067212 238067212 173138580 466313844 1040389869 1040389869 728850819 927076539 1062339067 1062339067 929695364 712787995 712787995 528341350 528341350 1023912732 1023912732 1069818841 1069818841 214780280 951944649 951944649 367841202 464364768 464364768 709700278 811339395 911771779 911771779 910213275 882849122 788872109 788872109 726574133 210987785 899822440 899822440 882901323 892512702 892512702 505718166 505718166 178596180 902896076 902896076 985080464 985080464 857527529 837955522 837955522 340737162 831550217 831550217 810846051 201629870 490752172 905126264 1008522269 1008522269 699505761 459587622 459587622 425741742 606737673 909444696 909444696 774522099 774522099 938128539 938128539 664389176 817823450 817823450 369465344 369465344 52487570 150025635 859425187 859425187 461876197 136452612 857422125 857422125 791490288 712328165 926135176 926135176 747683281 747683281 715789653 58297920 58297920 34435168 14815680 45314128 49857216 49857216 34640384 177660480 177660480 176542224 176542224 653792013 653792013 181003476 542683473 542683473 137753028 31119072 146519456 564071008 679423360 705695120 705695120 685319365 558867272 246668440 118924880 118924880 124069712 124069712 67244040 67590152 103237904 103237904 95482432 587776160 587776160 68174368 68174368 100927512 268698372 422085814 422085814 335318912 414513030 414513030 348201162 535382112 535382112 408218726 459166859 906364991 906364991 655360569 609271984 781652013 781652013 722260833 722260833 725463280 725463280 973004363 973004363 810770390 269488771 216529356 812141784 812141784 742661132 1042546744 1042546744 1027604655 933759791 922892872 922892872 1035462280 1035462280 699601670 408032004 154149302 188851892 190406836 210973260 450748220 450748220 416167008 915543816 915543816 861413248 861413248 589646216 380628364 1046834314 1046834314 772877215 675715287 747295816 1049150559 1049150559 1016925886 1016925886 393019344 393019344 516421854 1001467308 1001467308 692055909 185259878 816205314 816205314 922835164 1017685034 1017685034 522867040 612570275 612570275 844173841 844173841 851512706 851512706 609729482 512902296 512902296 459460934 375637302 375637302 320768488 358748586 358748586 266411362 198708096 389024204 389024204 346034792 346034792 561556205 561556205 865524339 865524339 269692210 651226202 651226202 565765745 1022167206 1022167206 923158115 737047920 508949196 790827292 790827292 748892493 736035597 726404277 848466498 848466498 401276064 401276064 401004794 401004794 442756258 489027678 489027678 635449753 1053008161 1053008161 1021477396 998414242 998414242 928680497 674581060 154413456 740366436 740366436 631716201 226903853 508899996 508899996 723715224 762000813 1007490465 1007490465 984255499 906231890 657196648 657196648 429485421 377536602 458486454 475520334 475520334 421969188 364088948 364088948 290770032 541450840 541450840 350834411 338241450 211757154 211757154 151259232 439488870 439488870 419610164 142674176 283230262 283230262 186674852 230410488 230410488 504709638 504709638 476394830 430885668 421292588 421292588 356781614 386157056 386157056 187205692 218441772 423174764 479211296 479211296 612438752 612438752 558572193 576981393 689624613 689624613 156909697 47235792 281659334 281659334 159903640 87114752 380735866 501965390 501965390 226757228 555486764 979896211 979896211 1049487931 1049487931 834622419 834622419 932770489 932770489 746850381 716516181 716516181 1051198815 1051198815 1050674527 1050673503 915880228 822470691 1061948453 1061948453 743970945 655298689 562875489 558566497 548056289 539757825 306484100 253527287 435949279 435949279 216991178 216991178 503154786 503154786 220250924 98642374 163850602 365266056 365266056 88631502 136315136 136315136 134217732 117441000 261049356 261049356 140035648 68731392 99891840 583009056 583009056 17302560 21364768 121913972 121913972 455082232 455082232 505549082 505549082 851969309 935855355 935855355 648578714 125747492 67229200 67229200 253907480 253907480 147473408 147985092 204101344 204101344 151032076 151032076 937485348 937485348 702565796 702565796 165858976 196189264 196189264 173314112 191007552 191007552 169220628 143029584 179982960 179982960 65758352 65758352 137488225 173726809 266924416 711027161 711027161 888570816 888570816 604102665 604102665 965139968 965139968 662887797 547677776 613972488 613972488 275783376 281417922 701293029 701293029 686154021 658032953 771938076 771938076 1017117261 1017117261 699736117 848220044 848220044 765810256 818683456 818683456 11011340 295704576 296098146 296098146 48441909 1020657877 1020657877 884770441 455131446 606507268 1025950827 1025950827 938754432 938754432 932498043 1028653743 1028653743 515512873 205784916 605286020 780279923 1067706243 1067706243 998476674 833128478 956273779 956273779 437466531 341053472 1063513072 1063513072 872802315 279472162 195425730 309397456 460155954 556116294 556116294 933739751 933739751 668991993 524954205 813646668 813646668 904728485 904728485 832310883 832310883 816655683 816655683 32334571 391711968 914129738 924844347 924844347 552650896 332025608 41710736 37193440 31796832 31796832 166988416 166988416 64172784 64172784 860169128 860169128 696884527 555222561 553051389 25240064 816846074 816846074 768245845 768245845 783303236 783303236 850396228 850396228 543379894 543379894 987001718 987001718 464751319 1064960 1098240 511775962 773556548 787794909 787794909 680068032 680068032 679028613 548314435 647423891 1053909709 1053909709 637865344 309991314 67699290 276512226 276512226 301337536 301337536 272924754 322555664 322555664 807867252 807867252 998565218 998785457 998785457 958169300 943533831 958382816 958382816 939531911 793376767 793376767 864274459 864274459 739719394 649491283 448791798 448791798 930885562 930885562 708777728 704981013 478042896 364783775 364783775 400292346 719058792 719058792 596263936 578331584 79059264 169935168 169935168 216547328 216547328 42076168 3146496 5768192 75022944 78726632 295216904 295216904 556631424 556631424 539757825 299491746 299491746 9438472 69730880 273234128 273234128 336856576 336856576 336333834 119912976 224657708 264526132 475262980 475262980 340787850 135525022 820559964 1002607304 1002607304 970987740 970987740 948121671 948121671 493759509 122423484 134217732 545458424 804401693 804401693 691509312 568853824 568853824 64895505 548781744 571799297 577316241 597908275 597908275 816150434 841747731 841747731 821821491 820110112 573253413 721555509 721555509 648466783 767417726 790741629 915154707 915154707 288948744 336014176 884801033 884801033 118490968 118490968 267003790 267003790 177325568 1010460352 1010460352 413713734 413713734 202999578 816316432 816316432 94966465 55125168 428682342 1070276016 1070276016 623379753 453896560 495289350 495289350 404751618 153092394 334483378 334483378 309743350 578234897 578234897 337992970 906041503 906041503 243051376 376957178 376957178 737762524 737762524 595096353 645738119 809506338 809506338 445459366 362286732 362286732 217847402 139347082 1015791878 1015791878 612671630 612671630 606763457 423892998 423892998 117514864 177352828 339743708 339743708 288197240 507212384 507212384 495715716 36122032 26019520 50538016 50538016 21242528 935526495 935526495 156637860 977868967 977868967 576226294 580949958 580949958 411396754 328290980 317995328 822132771 822132771 428219068 340584128 852289562 852289562 787523864 787523864 652671552 581963600 581963600 556270881 259952765 219458272 218197512 251916952 285718058 285718058 270206496 39012912 65062896 65062896 27394912 132509264 394107600 394107600 321513913 557330560 557330560 591800864 591800864 690258179 690258179 579348532 814343235 814343235 630517421 946685383 946685383 599892368 963023580 963023580 357704272 534798451 534798451 763571169 763571169 1024637462 1024637462 619811433 637943636 637943636 546200228 701913092 701913092 503365964 27447648 11547008 29483232 29483232 42025248 145263748 736347140 736347140 541774977 176795861 262490116 262490116 630833732 755573805 755573805 143713897 76693536 76693536 537527432 541205641 604114953 604114953 264491757 588305064 683599553 683599553 289453554 438953220 438953220 456561114 456561114 694863327 875091851 875091851 498832678 672972996 672972996 415811605 395651706 724658817 724658817 286909986 357646859 695316101 889191410 889191410 618932174 915653116 915653116 226566276 906605272 906605272 735798009 735798009 885251633 885251633 852346021 852346021 832189984 176832628 176832628 190973660 202425664 208405312 595771433 789627453 789627453 926762782 926762782 373182505 223605523 639735923 749192339 749192339 727473312 849225232 849225232 448667478 621961728 621961728 218620457 629160228 629160228 1048957205 1048957205 437224450 437224450 830838880 830838880 942741812 942741812 807928072 872940555 1001819716 1001819716 1064582111 1064582111 375010960 375010960 113692808 113692808 42207312 42207312 72018136 72018136 433246950 433246950 381768960 81801792 81801792 520228926 520228926 245903686 157035812 287855404 358797738 476481572 476481572 193059796 185327632 34618000 50070080 50070080 12681184 29681232 48836048 48836048 77102944 77102944 69995784 288496032 288496032 273943170 64671024 510450512 510450512 163897332 224680664 277908224 431704902 431704902 417611046 156704480 346758332 346758332 43916880 309857032 309857032 344829448 380584974 380584974 379453970 379453970 536029722 536029722 271083176 248478052 274701480 518420592 518420592 462355724 430104670 248266962 489447628 489447628 487442534 372788530 194502320 194502320 94894440 95650152 95685480 95685480 39340032 39340032 54542368 54542368 16810160 0 16953640 86200352 702785896 702785896 221018277 959671688 959671688 940521260 665263387 929509535 929509535 809640549 1029455014 1029455014 722993361 104480264 302255746 1009924596 1012075151 1066181988 1066181988 31531488 38735344 38735344 12921024 2956480 96243308 136364292 228347752 260130452 260130452 142207068 334883826 334883826 595051656 595051656 728850819 927076539 1062339067 1062339067 929695364 646058073 86639985 96025628 199414260 613694328 645187685 1069818841 1069818841 406962304 951944649 951944649 115961374 464364768 464364768 446957910 1001348166 1001348166 976088343 976088343 906980475 805969983 745757000 726574133 210987785 899822440 899822440 882901323 693174528 541697440 204318600 1031218970 1031218970 722866985 813263767 985080464 985080464 857527529 837955522 837955522 152342636 285891754 697245372 697245372 323074105 769148490 769148490 361857733 221784868 552340929 684496897 684496897 679364224 606737673 676006309 676006309 774522099 774522099 938128539 938128539 664389176 817823450 817823450 274230672 371732872 371732872 253449537 859425187 859425187 808532241 808532241 857422125 857422125 496481604 395651706 926135176 926135176 1007937487 1007937487 1046200292 1046200292 962382256 75810888 101757704 180918996 339205352 339205352 314593912 370373740 437766192 437766192 176542224 521191098 521191098 460720958 143554768 34818560 34818560 113510616 157822808 157822808 128004888 49496768 49496768 100958256 226854052 226854052 223218924 223218924 178553192 97173728 29414632 252111321 252111321 179745364 179745364 631572575 631572575 945081223 945081223 985661836 985661836 422085814 435862867 435862867 697607735 792278763 929286874 929286874 443818180 146869142 459166859 906364991 906364991 655360569 665270649 781652013 781652013 635834936 560013729 606472696 652663257 652663257 82074445 274348696 910734980 910734980 643317771 375505920 678378885 678378885 557573346 858201403 860423219 922892872 922892872 1035462280 1035462280 699601670 424874618 424874618 268439838 153091744 210973260 450748220 450748220 416167008 582373992 582373992 861413248 861413248 748862176 748862176 1046834314 1046834314 772877215 675715287 695568864 695568864 645315020 1016925886 1016925886 393019344 393019344 516421854 1001467308 1001467308 692055909 873513483 873513483 816205314 922835164 1017685034 1017685034 15287520 105452602 382341330 382341330 273419394 273419394 47719200 303568424 512902296 512902296 459460934 375637302 375637302 320768488 358748586 358748586 266411362 134484454 389024204 389024204 346034792 346034792 198755988 218289820 218289820 253188580 431302322 431302322 359204026 359204026 89743874 695304597 789588664 789588664 659757683 886106459 886106459 748892493 736035597 726404277 848466498 848466498 783688982 783688982 401004794 401004794 442756258 489027678 489027678 283133964 879915266 1021477396 1021477396 921883611 315806539 400351430 400351430 655570626 740366436 740366436 1007182930 1007182930 887293485 887293485 723715224 762000813 1007490465 1007490465 984255499 652288473 868756641 868756641 816319688 629675669 860571297 860571297 289483548 1058090243 1058090243 676711918 871220058 871220058 510707486 457523746 30148323 117908003 708272138 1059301509 1059301509 704905362 419610164 54130278 304041984 304041984 307781130 374507392 374507392 504709638 504709638 476394830 430885668 421292588 421292588 356781614 386157056 386157056 187205692 823532067 823532067 823532067 911812251 911812251 612438752 558572193 576981393 576981393 640816885 640816885 833016274 857591702 880485411 880485411 87114752 658048547 658048547 587818425 840742270 840742270 604996915 811633837 1049487931 1049487931 834622419 834622419 932770489 932770489 746850381 716516181 941880229 1033496175 1033496175 1018506063 1018506063 748470598 822470691 1061948453 1061948453 717611189 655298689 562875489 558566497 548056289 539757825 413397318 606303090 606303090 88257176 119446560 119446560 503154786 739510285 739510285 538319501 469827596 248181784 309699160 309699160 696848163 888145145 888145145 473997393 473997393 103523944 103523944 30883016 21045408 71567496 655491481 655491481 87431976 394258726 394258726 455082232 455082232 505549082 705118318 851969309 935855355 935855355 648578714 125747492 67229200 67229200 497698674 581633365 581633365 229831900 229831900 745661613 745661613 560273551 937485348 962803055 962803055 831791073 539099525 612063209 1019256301 1019256301 884397131 491308206 694009666 970328576 970328576 405150888 65758352 65758352 70158656 70158656 69470472 69470472 272894254 911888048 911888048 604102665 604102665 965139968 965139968 805670216 805670216 354850851 293916666 298589752 298589752 283368306 111110794 466071602 466071602 771938076 771938076 1017117261 1017117261 628379768 848220044 925701493 925701493 818683456 818683456 694283464 523594647 863165847 863165847 716397549 1020657877 1020657877 884770441 455131446 606507268 606507268 470941980 996558081 996558081 106743856 573048142 604118296 604118296 175970208 605286020 780279923 1067706243 1067706243 998476674 511349914 511349914 437466531 437466531 469374966 469374966 687358024 687358024 403025895 270745728 454900132 460155954 556116294 556116294 933739751 933739751 668991993 524954205 813646668 813646668 904728485 904728485 832310883 832310883 816655683 816655683 102471184 391711968 914129738 924844347 924844347 552650896 332025608 65047808 65047808 31796832 31796832 166988416 166988416 360783978 533078991 860169128 1065427226 1065427226 989267113 989267113 449387213 824841507 824841507 768245845 768245845 723804995 673595924 314964818 453062914 543379894 543379894 815825116 1062244478 1062244478 956724866 956724866 611535243 303576665 642880210 642880210 764613613 764613613 502895372 415719590 381486018 381486018 340993304 340993304 309991314 67699290 276512226 276512226 301337536 301337536 272924754 322555664 322555664 303971122 373107234 382732620 443812758 958169300 958169300 470828907 958382816 958382816 310419010 463672716 463672716 1059440375 1059440375 933385148 933385148 448791798 896385132 930885562 992496001 992496001 912202496 912202496 379749376 379749376 313973586 719058792 719058792 236696973 223389812 223389812 205984360 205984360 228149984 276834376 276834376 226529858 471537216 471537216 477110560 477110560 425906766 556631424 556631424 539757825 299491746 299491746 841160400 841160400 380408200 380408200 336856576 336856576 336333834 138869092 420252836 420252836 753195519 753195519 340787850 246469004 607163328 1002607304 1002607304 664023243 522891267 909065499 909065499 493759509 122423484 134217732 545458424 804401693 804401693 691509312 568853824 568853824 64895505 548781744 581443056 581443056 850844329 936514299 936514299 841747731 841747731 821821491 820110112 573253413 721555509 721555509 648466783 767417726 790741629 790741629 568918219 872943017 872943017 884801033 884801033 928660220 928660220 671626892 267003790 177325568 505963774 505963774 413713734 413713734 126895934 816316432 816316432 325914901 412160830 616836236 616836236 654649401 654649401 453896560 371739800 371739800 319067922 39124986 334483378 456958434 456958434 578234897 578234897 337992970 906041503 906041503 309838612 376957178 376957178 737762524 737762524 595096353 645738119 809506338 809506338 445459366 180914822 180914822 214913288 214913288 1015791878 1015791878 612671630 612671630 606763457 423892998 423892998 117514864 177352828 339743708 339743708 288197240 507212384 507212384 495715716 432407074 334956818 448842134 448842134 372380442 372380442 387968274 387968274 444873708 444873708 429681404 369144694 411396754 411396754 328290980 317995328 382730970 428219068 604114953 912041089 925585192 925585192 554996288 652671552 652671552 581963600 581963600 556270881 657247733 657247733 779156192 779156192 285718058 285718058 284154608 458884662 458884662 325983154 316802930 432428310 432428310 394107600 321513913 321513913 539559928 591800864 591800864 468147290 176469128 437257190 475348995 1020274864 1020274864 946685383 946685383 403165360 963023580 963023580 865402571 492450476 492450476 472784142 256002180 1024637462 1024637462 619811433 481822526 481822526 268714240 268714240 503365964 503365964 92323944 138950256 190001844 194183360 194183360 554750433 554750433 61784208 670974273 670974273 262490116 262490116 766103774 862664115 891540930 891540930 902308338 902308338 618795113 618795113 604114953 604114953 574877841 574877841 574702209 550647941 271464594 438953220 438953220 405187990 304271634 694863327 875091851 875091851 498832678 672972996 672972996 415811605 395651706 724658817 724658817 386060346 386060346 695316101 889191410 889191410 618932174 915653116 915653116 32117530 906605272 906605272 735798009 735798009 163324521 144653892 110365272 436251228 436251228 244662294 176832628 170542652 202425664 202425664 595771433 789627453 789627453 926762782 926762782 470289332 185734944 639735923 749192339 749192339 465439168 465439168 439984902 439984902 957434934 957434934 218620457 691437665 691437665 142841858 675857541 675857541 533251779 830838880 830838880 771729542 669334241 869289975 872940555 872940555 954011320 1064582111 1064582111 558737417 558737417 1012696092 1012696092 689313292 1007813685 1007813685 1059640114 1059640114 846911379 792309934 545453913 545453913 520228926 652742055 829424888 898670792 898670792 874623366 1033584958 1033584958 107057408 50351264 50351264 46473392 25642432 36246736 36246736 102813624 102813624 388169040 388169040 311989232 399819616 399819616 273943170 102272192 116691332 171367188 171367188 426525090 426525090 431704902 431704902 424644804 411643554 194936564 194936564 169939924 29679168 269750464 344829448 380584974 380584974 379453970 379453970 536029722 536029722 404362106 142864452 142864452 518420592 518420592 291582464 291582464 82838472 83132714 83132714 346130346 346130346 835986884 835986884 526799758 526799758 507320078 842318952 842318952 181200001 975668824 975668824 772440835 1005609101 1005609101 220324706 1016118122 1016118122 588017229 959671688 959671688 923572154 130375009 929509535 929509535 809640549 1029455014 1029455014 722993361 104480264 154343064 1068566916 1068566916 1066181988 1066181988 193490400 31531488 6740352 25111752 97831656 97831656 136364292 509167946 509167946 260130452 491810326 491810326 334883826 595051656 595051656 226527304 226527304 187699520 587863580 646058073 858669242 858669242 611245449 258278153 613694328 613694328 129436233 406962304 406962304 383542272 383542272 378585690 378585690 5556864 691493498 1001348166 1001348166 976088343 976088343 906980475 941918794 941918794 971114849 971114849 835066083 210145446 876965222 876965222 1038758222 1038758222 1031218970 1031218970 728523783 728523783 438080064 812343364 812343364 142080900 265263056 265263056 961342625 961342625 697245372 677507783 769148490 769148490 613017361 613017361 552340929 684496897 684496897 679364224 572320405 572320405 631247012 631247012 629231675 386458639 323618906 374082714 374082714 132054290 369598544 371732872 371732872 253449537 578604757 578604757 808532241 808532241 648992140 648992140 56469849 93397608 93397608 248586972 1007937487 1007937487 1046200292 1046200292 962382256 75810888 101757704 180918996 339205352 339205352 314593912 370373740 437766192 437766192 174567700 539328965 539328965 460720958 550793601 550793601 145014018 280680258 374900034 1066360996 1066360996 705723520 705723520 702618039 1016165556 1016165556 819196611 819196611 671047056 311299320 68541352 252111321 252111321 179745364 179745364 631572575 631572575 945081223 945081223 985661836 985661836 417181526 435862867 435862867 697607735 792278763 929286874 929286874 520751376 375414598 423526762 423526762 134268930 646170912 665270649 665270649 59015238 68207112 130302416 658809392 658809392 652663257 82074445 274348696 910734980 978078213 978078213 622088752 571827210 571827210 557573346 846926747 846926747 317461219 231346784 404768788 404768788 392167480 424874618 424874618 268439838 94520447 205079815 248637222 671688427 806093807 806093807 582373992 846732951 846732951 841880808 748862176 697561701 599999272 82880761 67502304 695568864 695568864 165964721 687899150 687899150 364442880 816023522 836241123 836241123 563384089 576490650 873513483 936257944 936257944 831467587 493849806 493849806 358812756 358812756 350445796 130113888 128394688 56540848 47719200 63888624 63888624 42486272 141822852 154670000 533381928 533381928 109685906 151268856 178783572 183112980 183112980 261231228 261231228 139823632 198755988 218289820 218289820 253188580 431302322 431302322 359204026 359204026 89743874 695304597 789588664 789588664 659757683 886106459 886106459 465945909 356077418 435333151 435333151 647824666 783688982 783688982 339351306 1043257943 1043257943 822670366 771761964 771761964 879915266 879915266 782879618 791453017 1026362843 1026362843 579240640 825965304 825965304 747160653 1007182930 1007182930 887293485 887293485 475004571 475004571 914323575 914323575 818244688 652288473 868756641 868756641 816319688 997544270 997544270 860571297 284270605 1058090243 1058090243 676711918 871220058 871220058 510707486 457523746 30148323 117908003 708272138 1059301509 1059301509 704905362 275031952 44295232 304041984 304041984 307781130 374507392 374507392 43129152 5507712 43049104 43049104 13705920 117911572 427847724 427847724 437600376 437600376 823532067 823532067 823532067 911812251 911812251 340920520 370155104 394790010 394790010 640816885 640816885 833016274 857591702 880485411 880485411 234998276 658048547 883009922 883009922 840742270 840742270 739381773 806098946 806098946 284040642 118533968 291747492 911727328 911727328 739649045 605342217 941880229 941880229 775039052 775039052 666360178 687870167 687870167 687694028 687694028 751536321 751536321 671297541 675948620 675948620 316979348 413397318 973455457 973455457 887550682 378829376 475704368 536633024 739510285 739510285 538319501 469827596 248181784 309699160 309699160 696848163 888145145 888145145 473997393 473997393 69401232 88790664 88790664 51377240 71567496 655491481 655491481 87431976 394258726 394258726 342829131 820599318 820599318 1033912392 1033912392 1031848231 201353323 165527620 632604260 767876593 767876593 660479673 581633365 581633365 229831900 229831900 745661613 745661613 560273551 900403380 962803055 962803055 939651203 939651203 612063209 1019256301 1019256301 884397131 491308206 694009666 970328576 970328576 405150888 32304064 32304064 89410177 89410177 72554154 927547745 927547745 911888048 911888048 829448336 865177843 865177843 898448194 898448194 894747665 894747665 872410810 298589752 333579693 1049236575 1071642703 1071642703 643530333 612810757 612810757 307706514 628379768 628379768 730208373 925701493 925701493 588322096 694283464 694283464 523594647 863165847 863165847 716397549 716397549 18090016 941803132 941803132 872695923 491126918 491126918 996558081 996558081 559315380 573048142 833246504 833246504 674809605 597827149 785034969 812058797 812058797 100798891 83955872 83955872 16925216 936724584 1036116195 1045553823 1045553823 908150919 403025895 270745728 454900132 459676086 820412048 820412048 820251075 452597718 452597718 151032384 67168536 81562560 81562560 88776416 88776416 129945376 129945376 102471184 115037856 128061816 131035432 131035432 37204368 37204368 38415152 65047808 65047808 26312896 28445280 155656781 155656781 360783978 781185094 882252363 1065427226 1065427226 989267113 989267113 851186944 916270683 1021126979 1021126979 1052838615 1052838615 888605343 579872977 818369217 818369217 270868534 815825116 1062244478 1062244478 956724866 956724866 611535243 303576665 642880210 642880210 764613613 764613613 418677517 631862665 828253043 828253043 847318866 847318866 124349786 64038208 15153600 38313472 54073872 54073872 328998144 328998144 380947290 613173326 890494634 894493230 894493230 649069401 648333824 161500158 264355908 1007930780 1007930780 657051747 463672716 1059440375 1059440375 933385148 933385148 679510100 896385132 896385132 1008436258 1008436258 912202496 912202496 379749376 379749376 606713375 852905842 852905842 844639701 794738452 261052068 205984360 205984360 228149984 276834376 276834376 226529858 471537216 879591688 879591688 816329416 553338626 553338626 823135776 823135776 828189952 828189952 841160400 841160400 620740425 621190888 621190888 111628226 90303960 190775124 420252836 420252836 753195519 753195519 501692910 469115018 607163328 803372553 803372553 1060153216 1060153216 978530967 978530967 975841173 704643093 21 64229616 64229616 63048432 66124272 66124272 59127856 591768320 591768320 581443056 581443056 850844329 936514299 936514299 298516513 119088696 341118704 345617714 345617714 442049818 442049818 471934982 722347044 722347044 219349166 568918219 872943017 872943017 631115011 131336366 928660220 928660220 671626892 177283668 5969108 69297824 551609601 551609601 297331190 520957624 902641879 902641879 432355456 1016205314 1016205314 807472614 777276764 915745371 922757728 922757728 53551920 18359568 51421968 51421968 456958434 456958434 451190096 451190096 416833094 410580032 410580032 309838612 87746720 732755284 732755284 153174372 144810020 10559520 79838048 99879912 99879912 89677472 32691168 214913288 214913288 547768524 746967493 746967493 549890881 549890881 136780485 84351688 75763792 120656128 120656128 124717544 127937856 127937856 71544448 432407074 432407074 334956818 448842134 448842134 372380442 372380442 387968274 387968274 200643564 429681404 429681404 306818068 4285832 67445760 67445760 120062224 120062224 356648075 604114953 912041089 925585192 925585192 554996288 562206945 562206945 47816264 74975112 265051417 657247733 657247733 779156192 779156192 105694636 92727608 284154608 458884662 458884662 325983154 316802930 432428310 432428310 335548714 335548714 634856040 634856040 651036602 1012284499 1012284499 274480413 397803030 405858618 1020274864 1020274864 448870400 1015230589 1015230589 1027789002 1027789002 1012001792 492450476 540688926 540688926 626981161 721869449 721869449 674718878 1027171806 1027171806 1028214554 1028214554 908363434 544250269 245990804 707013329 707013329 682815268 194183360 584846400 584846400 591836832 670974273 670974273 632958384 551609264 766103774 862664115 891540930 891540930 902308338 902308338 618795113 676440078 813221763 813221763 574877841 964096591 964096591 550647941 140511936 146017092 146017092 242221980 428944380 428944380 694370881 694370881 528796820 330165618 193721300 777761540 777761540 748926229 768213881 768213881 721156053 441864362 441864362 1063690244 1063690244 997196727 612980366 330020680 709620885 766496131 931710075 931710075 163324521 191105208 524552350 524552350 436251228 401002548 103060828 1049756276 1049756276 767726696 861958381 861958381 1060852440 1060852440 640600612 830850097 883558767 883558767 672274431 1067469417 1067469417 853203676 853203676 785020897 957434934 957434934 77793833 691437665 691437665 156255858 675857541 675857541 533251779 941525356 941525356 771729542 669334241 869289975 869289975 776284317 755484470 1010520960 1010520960 558737417 558737417 1012696092 1012696092 689313292 1007813685 1007813685 1059640114 1059640114 846911379 792309934 545453913 545453913 340577418 652742055 829424888 898670792 898670792 874623366 1033584958 1033584958 201596960 201596960 99520640 46473392 25642432 36246736 80671344 102813624 102813624 388169040 388169040 311989232 399819616 399819616 116577240 102272192 116691332 171367188 171367188 426525090 426525090 165026884 424644804 424644804 411643554 324248246 324248246 269490368 282467010 282467010 269750464 780470869 780470869 70329096 714352989 714352989 916822105 916822105 225801229 895169614 1069637744 1069637744 807494144 807494144 84682697 813179393 813179393 160230314 486090702 835986884 919263536 919263536 827086365 961848581 990328887 990328887 269731853 975668824 975668824 772440835 1005609101 1005609101 220324706 1016118122 1016118122 588017229 661818308 923572154 923572154 994050300 994050300 325458301 805440742 805440742 701373669 432803843 92873832 92873832 1068566916 1068566916 161483083 193490400 193490400 192905172 705048864 705048864 559605473 578111515 578111515 716515157 802997645 882444840 882444840 491810326 374899732 808099521 808099521 808738746 808738746 665722233 278824660 182637935 858669242 858669242 984432274 984432274 987153057 987153057 422736413 422736413 317848394 539134301 539134301 378585690 524339066 524339066 1009010755 1010304365 1010304365 889981774 499837188 499837188 941918794 941918794 971114849 971114849 835066083 439299436 876965222 876965222 1038758222 1038758222 762994970 762994970 728523783 728523783 438080064 812343364 812343364 291230762 353040034 353040034 961342625 961342625 677507783 677507783 510731166 102769423 613017361 767738720 767738720 430377094 430377094 174900039 572320405 572320405 778715888 778715888 134683797 201914580 277745593 277745593 433325109 952523421 952523421 941447375 549118228 555903726 555903726 402653190 731387294 731387294 622167444 227017836 117515348 85773864 198278332 198278332 291269666 806410400 806410400 331884611 293625136 32295040 54939664 54939664 34610880 46712016 144597712 144597712 172402832 174567700 174567700 539328965 539328965 143054916 550793601 694449478 694449478 408014241 374900034 1066360996 1066360996 705723520 705723520 702618039 1016165556 1016165556 819196611 819196611 671047056 311299320 426631494 426631494 421588140 67508232 67508232 796917840 796917840 442507274 339937866 534782048 534782048 268470352 43148288 276063394 276063394 276156288 319960240 520751376 520751376 375414598 423526762 963066279 963066279 866445314 866445314 424122611 402714651 520238200 520238200 658809392 1015864289 1015864289 985676151 754353680 671130762 978078213 978078213 622088752 574636184 574636184 68159488 571217080 571217080 231346784 231346784 2271552 44126496 44126496 75563084 209780840 209780840 94520447 448959388 505413918 671688427 806093807 806093807 293213436 846732951 1018058848 1018058848 876985019 623533651 787606044 787606044 718167175 1029933826 1029933826 965001327 823233526 823233526 584057554 816023522 836241123 836241123 563384089 463528579 373557498 936257944 936257944 853614066 853614066 558456944 358812756 358812756 350445796 130113888 128394688 56540848 42980832 25075264 143284274 486575474 490409486 490409486 533381928 533381928 455494462 534911206 534911206 395314050 479083868 479083868 637380171 637380171 136840452 857945371 857945371 1014965039 1014965039 705826735 705826735 677646896 524288 0 0 0 46181376 47049936 47049936 63996944 63996944 380181584 438511882 438511882 471474458 504110599 720830753 1043257943 1043257943 822670366 771761964 771761964 506527820 958533683 958533683 791453017 1026362843 1026362843 579240640 825965304 825965304 747160653 747160653 226526241 696509673 696509673 523085492 523085492 517918482 818244688 818244688 36202691 10824000 496619174 496619174 997544270 997544270 885523659 1016432197 1016432197 612626249 943388103 943388103 539677953 9242688 9242688 448792642 488849442 488849442 377233544 377233544 304087296 301989906 2097426 0 0 0 29807820 68376866 441135878 445014102 445014102 393891836 388195364 388195364 427847724 427847724 437600376 437600376 253207106 815810380 815810380 757145490 340920520 340920520 370155104 394790010 394790010 394790010 372648704 310206540 208697780 464688278 464688278 234998276 322481250 883009922 883009922 692633544 692633544 739381773 739381773 284040642 471269805 830090171 830090171 713906901 713906901 549733064 605342217 605342217 244456012 775039052 775039052 582433617 159389469 3146496 687694028 687694028 751536321 751536321 671297541 950969679 950969679 899942763 899942763 973455457 973455457 978731420 978731420 823443456 536633024 536633024 209064844 284986190 284986190 69504268 170420288 170420288 356017000 356017000 102240472 113919176 113919176 131728968 131728968 88790664 63658512 63658512 55974576 39194496 54249344 54249344 612438086 612438086 820599318 820599318 1033912392 1033912392 1031848231 690520431 690520431 941261995 941261995 767876593 916989179 916989179 811171033 749119328 142397316 220349828 220349828 202389032 93068872 344156172 812447982 939651203 939651203 9155783 136446272 142741572 142741572 142741572 142741572 10490116 42276932 143601216 143601216 65970128 122047961 588589617 588589617 927547745 927547745 909925802 848189168 829448336 865177843 865177843 898448194 898448194 894747665 894747665 872410810 336859458 333579693 1049236575 1071642703 1071642703 643530333 612810757 612810757 583143633 583143633 935805024 935805024 910686363 714467925 714467925 347845373 344730848 264032124 349887080 482528766 482528766 667499747 684906137 982969058 982969058 872695923 491126918 568385868 598287713 598287713 559315380 559315380 833246504 833246504 674809605 597827149 785034969 812058797 812058797 848372307 848372307 444703069 622339049 936724584 1036116195 1045553823 1045553823 908150919 111483912 111483912 81799016 132784232 820412048 820412048 840434176 840434176 839386131 151032384 67168536 81562560 82215664 88776416 88776416 70965232 100478952 100478952 115037856 128061816 131035432 131035432 98845480 117624888 118526464 118526464 26312896 26312896 28445280 143864388 143864388 152001348 781185094 882252363 1020500095 1020500095 935588091 422707996 851186944 916270683 1021126979 1043075106 1052838615 1052838615 888605343 809644296 969089280 969089280 774517130 307270056 451956908 451956908 515531290 515531290 978632856 978632856 648861223 481465280 677007566 819759938 819759938 741130661 828253043 828253043 847318866 847318866 393760600 376897936 50540592 50540592 38313472 276413554 328998144 328998144 380947290 613173326 890494634 894493230 894493230 649069401 1063617424 1063617424 1014442943 1007930780 1007930780 657051747 688974664 814836389 878829963 878829963 679510100 679510100 570474513 553681559 1008436258 1008436258 791954181 578559511 71510024 71510024 606713375 852905842 852905842 844639701 794738452 261052068 89468960 27535168 221056480 478432288 478432288 25592142 368593408 879591688 879591688 816329416 553338626 553338626 823135776 823135776 828189952 828189952 821825475 620740425 620740425 621190888 621190888 90303960 90303960 190775124 409635272 409635272 382824714 501692910 501692910 469115018 915706812 915706812 778166685 1060153216 1060153216 1059445423 1065567585 1065567585 704643093 137963268 545465848 788738109 788738109 712225536 93877952 584108129 591768320 596435889 596435889 121753264 548727178 850259283 850259283 930990033 930990033 902555287 829513132 1069102635 1069102635 1060242239 990459138 722347044 722347044 619059936 623903529 623903529 490998520 992610396 992610396 631782779 445854216 348993558 510273410 510273410 382739602 551609601 551609601 660393531 1067400441 1067400441 902641879 883503171 1016205314 1016205314 817369094 777276764 915745371 922757728 922757728 38571392 38571392 51421968 51421968 65564576 172346276 679484929 679484929 416833094 946106755 946106755 458363990 458363990 996268438 996268438 836408931 1008190753 1008190753 624355232 624355232 261752657 261752657 26350913 204694101 738899197 738899197 784666965 784666965 675625349 658782840 658782840 584057553 621941417 621941417 605237336 116407200 75357008 106508288 106508288 14230040 9711680 28575552 28575552 32445568 32445568 26806592 28077184 42912896 133824240 133824240 80804184 332410138 332410138 306184338 107030448 269979650 269979650 330808744 330808744 927808666 927808666 860744883 550317249 327976178 327976178 539202384 539202384 343065811 209457884 209457884 307327112 307327112 242604318 242604318 113464008 383040144 383040144 311303250 77337114 378935042 378935042 335548714 335548714 883165515 883165515 815347337 1012284499 1012284499 274480413 238954524 626074736 626074736 817889730 817889730 1015230589 1015230589 1027789002 1027789002 1012001792 202974857 540688926 540688926 626981161 721869449 721869449 674718878 1027171806 1027171806 1028214554 1028214554 908363434 544250269 245990804 707013329 707013329 682815268 192688065 584846400 584846400 591836832 591836832 632958384 632958384 551609264 238360748 203119472 723015141 723015141 805246965 805246965 557762709 676440078 813221763 813221763 341971338 964096591 964096591 807148581 684077381 679870720 146017092 242221980 428944380 475041536 694370881 694370881 528796820 330165618 193721300 777761540 777761540 748926229 768213881 768213881 981487280 981487280 786203873 1063690244 1063690244 997196727 612980366 330020680 709620885 766496131 1062733503 1062733503 407900095 191105208 524552350 524552350 402724866 401002548 173050912 1049756276 1049756276 767726696 861958381 861958381 1060852440 1060852440 640600612 830850097 883558767 993597592 993597592 1067469417 1067469417 853203676 853203676 820348735 820348735 422619942 1059303446 1059303446 690049322 393041917 405294711 627153792 627153792 941525356 941525356 447668482 553024004 553024004 502603048 1042298672 1042298672 1010520960 1010520960 214177174 543615500 826642520 826642520 298639061 366936600 366936600 461028104 461028104 120075184 500821066 500821066 874538056 874538056 816440643 413411648 143024128 136651016 143005764 143005764 134664708 201596960 201596960 99520640 23123136 4458624 7314816 80671344 80671344 66863432 281674480 339919744 339919744 338825994 271297744 271297744 385170208 385170208 329621550 275007332 499535218 499535218 487199790 399229252 399229252 267148790 324248246 324248246 271848192 303757976 303757976 73868808 780470869 780470869 70329096 714352989 714352989 916822105 1045965196 1045965196 919541137 1069637744 1069637744 837114762 837114762 297771945 813179393 813179393 541115300 486090702 527813808 919263536 919263536 827086365 961848581 990328887 990328887 491298876 498680602 524493670 524493670 331433318 199995774 176168960 990990866 990990866 679158008 851629788 1071667035 1071667035 994050300 994050300 637015560 805440742 805440742 1028099276 1028099276 428720173 428720173 462757925 462757925 141675297 141675297 176689445 192905172 705048864 705048864 559605473 578111515 578111515 716515157 802997645 882444840 882444840 340020496 497453290 808099521 808099521 808738746 808738746 665722233 278824660 182637935 178307412 465617142 984432274 984432274 987153057 987153057 422736413 422736413 317848394 539134301 539134301 392351864 524339066 524339066 1009010755 1010304365 1010304365 889981774 950869312 950869312 804020521 807495811 807495811 771948822 986648236 986648236 862060010 862060010 187193371 4904064 148608 86210172 261861672 261861672 14889408 681087040 733213768 742699364 742699364 770254317 770254317 506213824 974646985 974646985 139516172 139516172 310473618 767738720 913588720 913588720 583912339 768688900 768688900 592778800 778715888 778715888 251537412 201914580 277745593 285478912 433325109 952523421 952523421 941447375 549118228 555903726 555903726 359384626 731387294 731387294 350430797 227017836 212809520 85773864 198278332 198278332 671747289 1049043708 1049043708 648569272 648569272 32295040 54939664 54939664 50392392 50392392 35658944 35658944 12978256 12632256 69156360 69156360 72953480 82604740 144888644 694449478 694449478 815130525 815130525 823237792 823237792 239190205 202411672 202411672 1037561992 1037561992 973262871 973262871 739386907 268435458 426631494 426631494 421588140 229208179 476060739 796917840 973932239 973932239 498795622 1026396488 1026396488 294224276 992720353 992720353 1054394079 1054394079 949280507 604653162 433794674 279653956 293520149 963066279 963066279 866445314 866445314 478682540 520803390 520803390 520238200 639857972 1015864289 1015864289 985676151 1010227339 1010227339 559665334 859590197 913622916 913622916 574636184 599706778 599706778 400823123 329913714 312475734 312475734 278008408 343435210 427942542 489931566 489931566 314708416 448959388 505413918 661431392 821151953 886096587 886096587 405256010 1018058848 1018058848 876985019 1038040539 1038040539 787606044 958399385 1029933826 1029933826 965001327 823233526 823233526 698458578 671475717 689793325 689793325 868258166 877029723 877029723 590872848 352924249 853614066 853614066 558456944 308653056 3281664 3281664 3773696 3773696 3972352 3972352 2146560 143284274 486575474 490409486 490409486 84417536 84417536 455494462 534911206 534911206 410001178 479083868 479083868 637380171 637380171 139558940 857945371 857945371 1014965039 1014965039 705826735 705826735 677646896 271849728 581912647 581912647 715009182 715009182 981749335 981749335 867222728 867222728 911492684 1016216914 1019679009 1019679009 658049444 720830753 876554340 948453337 948453337 587202609 205968870 224612649 958533683 958533683 637567168 855638067 855638067 507633822 889574110 889574110 1067911217 1067911217 488322606 696509673 696509673 523085492 676670085 676670085 1024042094 1024042094 1013324175 1013324175 759952177 900392826 900392826 484918055 885523659 1016432197 1016432197 872464395 943388103 957052548 957052548 574397075 947414672 947414672 911811596 496956112 496956112 494770438 304087296 301989906 208184580 280680000 288807938 288807938 432062564 432062564 507692818 507692818 485491216 485491216 406003848 406003848 331994354 361829996 361829996 253207106 253207106 1065327510 1065327510 388439487 75497480 75497480 100663360 100663360 100663320 100663320 310206540 408367186 408367186 901928595 901928595 107167328 664725011 750341369 750341369 472404598 642225210 707004693 707004693 198685408 1011352627 1011352627 830090171 713906901 713906901 618579835 380169916 824390450 824390450 570425361 432372399 590729048 707410488 707410488 509944339 509944339 647001697 1038349391 1038349391 950969679 950969679 899942763 899942763 487608684 487608684 978731420 978731420 823443456 56646200 137372584 209064844 243026972 243026972 69504268 67509248 185101604 356017000 356017000 237095416 268312544 268312544 235817668 211732416 102946544 102946544 119851320 119851320 111284600 228886569 721574061 721574061 715276359 639969491 639969491 1008905101 1008905101 748011852 748011852 690520431 941261995 941261995 459944676 916989179 916989179 811171033 749119328 68464673 6291840 184320 407614145 949622343 949622343 548537411 946335427 946335427 315622098 627090390 627090390 699678829 1013189007 1013189007 575229613 575229613 546910210 833833616 853945712 853945712 588589617 588589617 345458155 909925802 909925802 299521840 866181962 866181962 347193715 311488449 839985744 839985744 827906480 827906480 336859458 328746034 328746034 432784118 432784118 718031452 718031452 897896683 897896683 827724519 935805024 935805024 910686363 899164918 714467925 560276000 544476033 246729564 246729564 117985124 164903207 667499747 684906137 982969058 982969058 248462556 248462556 568385868 568385868 237626652 237626652 178272908 148823748 217996516 217996516 572665256 572665256 245557739 155931774 848372307 848372307 444703069 622339049 622339049 507602438 26445498 874154112 874154112 667615881 667615881 638194713 583767816 583767816 561149003 840434176 840434176 839386131 180579798 35654720 44830032 82215664 82215664 68210688 110773432 181689532 181689532 70967952 231476340 231476340 193758916 193758916 163108024 163108024 156599680 52868640 17062912 27689440 143864388 143864388 152001348 723321224 796733373 796733373 786960189 782837085 655889923 671720503 889766955 889766955 1043075106 1043075106 880968963 880968963 809644296 969089280 969089280 774517130 459825376 459825376 90325650 34627648 43115088 978632856 978632856 1009780745 1009780745 1009557279 826952848 826952848 741130661 816194283 816194283 715657135 678668270 1011759656 1011759656 734136769 734136769 731652992 731652992 943237687 943237687 537599048 297497242 351855594 356837398 496971026 509641016 1063617424 1063617424 1014442943 355471415 222214434 471459342 688974664 814836389 878829963 878829963 827524304 827524304 553681559 553681559 410235573 658788358 658788358 656511509 777233422 1063855551 1063855551 976347314 482353438 369672844 242171292 242171292 227254244 227254244 146195332 478432288 478432288 515576732 515576732 350686662 427298982 434319846 434319846 631885920 631885920 54936720 38312112 38312112 5630592 4804096 258048 13008128 13008128 35264016 35264016 47903248 409635272 409635272 505710556 505710556 331355128 331355128 915706812 915706812 778166685 778166685 1059445423 1059445423 1065567585 1065567585 672216608 523306778 545465848 788738109 788738109 712225536 93877952 584108129 584108129 596435889 596435889 121753264 548727178 850259283 850259283 930990033 930990033 902555287 829513132 1069102635 1069102635 1060242239 1046876673 1046876673 957292160 957292160 623903529 715791860 715791860 992610396 992610396 678529929 1012061904 1012061904 510273410 510273410 439598322 877251266 893460651 893460651 1067400441 1067400441 266210890 883503171 883503171 817369094 817369094 624236717 492812655 133201312 133201312 50405424 38571392 273717568 284613570 284613570 16173056 679484929 679484929 147510468 946106755 946106755 756549165 756549165 996268438 996268438 836408931 1008190753 1008190753 624355232 624355232 261752657 261752657 57751296 204694101 738899197 738899197 784666965 784666965 711135828 711135828 658782840 584057553 621941417 621941417 617204921 83535056 542189713 591294812 684067469 684067469 683141573 638820929 618610753 801155456 801155456 638619008 638619008 144402248 178422740 178422740 449086082 449086082 523508528 523508528 107030448 353600696 353600696 330808744 392001000 927808666 927808666 860744883 105052216 327976178 327976178 539202384 539202384 343065811 209457884 209457884 307327112 307327112 242604318 242604318 113464008 383040144 383040144 311303250 204481484 240915532 240915532 379621392 379621392 883165515 883165515 815347337 815347337 102828548 238954524 238954524 626074736 626074736 817889730 817889730 354912333 436342806 436342806 650971968 650971968 201713676 289829038 289829038 202258988 202258988 293747236 293747236 163916004 189833788 319930648 319930648 427852376 427852376 265290492 265290492 162602240 731128832 731128832 102147720 102147720 575400784 575400784 558712049 128191748 238360748 238360748 455295538 455295538 713105744 713105744 557324089 205087208 689966828 769919469 769919469 319107683 284369022 807148581 807148581 684077381 679870720 402841356 370039824 370039824 960849193 960849193 917319003 917319003 117014993 21513682 25464480 30199008 113353928 629239914 805490691 981487280 981487280 786203873 303343442 346869066 346869066 652201891 829742321 829742321 692874264 1062733503 1062733503 407900095 168041658 595864680 595864680 402724866 365019550 365019550 214114418 164656020 837435768 837435768 618709824 597709433 342410153 293263266 246268174 271646300 993597592 993597592 828712885 407529548 210080902 269149898 820348735 1066573827 1066573827 1059303446 1059303446 1053396466 1053396466 852054078 627153792 666498554 935400556 935400556 1032921711 1032921711 763877289 502603048 1042298672 1042298672 633340137 516845619 134217732 134217732 826642520 826642520 940462211 940462211 756174340 756174340 461028104 526403741 526403741 658554523 920311066 947313543 947313543 873390677 948712772 948712772 914880603 914880603 715493646 105179600 46236104 23123136 46453888 46453888 44568896 69341440 77676616 77676616 2253400 373393208 373393208 338825994 271297744 288759834 385170208 385170208 490388068 490388068 499535218 499535218 487199790 399229252 399229252 267148790 256196184 271848192 271848192 303757976 303757976 117179847 117179847 107554246 102303063 477500610 1017487506 1017487506 1045965196 1045965196 919541137 439363139 97976962 837114762 837114762 297771945 412642784 541855652 541855652 92047753 280318402 1004971061 1004971061 852999199 660286738 191004316 491298876 491298876 498680602 524493670 524493670 415379928 415379928 176168960 455861260 831092022 831092022 851629788 1071667035 1071667035 625885803 625885803 637015560 637015560 300292578 1028099276 1028099276 428720173 428720173 1058589243 1058589243 102015479 178614224 178614224 52742448 620362392 654186833 788847993 788847993 146579716 82436696 345042314 345042314 226615826 340020496 497453290 497453290 418648594 483659222 483659222 215883468 639635728 639635728 654970895 1057625151 1057625151 312513999 432164932 432164932 147725508 122766112 184307464 184307464 146101068 392351864 392351864 127046066 121376568 121376568 467240934 785193362 950869312 950869312 651819469 894574854 894574854 404820651 986648236 986648236 862060010 862060010 910824603 910824603 1050552316 1050552316 876739125 876739125 970260644 970260644 733213768 742699364 742699364 770254317 770254317 506213824 974646985 974646985 608282198 615114057 615114057 764199558 976394513 976394513 583912339 826587244 969140450 969140450 744037721 828707253 828707253 369759258 369759258 285478912 285612066 285626402 285626402 285397026 604185316 768815853 768815853 231874561 313415236 344252418 344252418 212809520 279109904 449959354 449959354 95122342 671747289 1049043708 1049043708 648569272 648569272 108102168 108102168 256672104 256672104 64539932 45126992 45126992 313969024 313969024 45013762 26164320 29808864 110295288 110295288 122015884 686679768 815130525 815130525 806898883 841190405 841190405 202411672 537214977 1037561992 1037561992 973262871 973262871 872549960 208902029 214889704 214889704 229208179 229208179 476060739 476060739 973932239 973932239 498795622 1026396488 1026396488 329416362 992720353 992720353 1054394079 1054394079 949280507 604653162 523567656 523567656 135400004 135400004 314624288 333711858 333711858 497906924 520803390 1057368510 1057368510 639857972 699340612 699340612 830967786 1010227339 1010227339 554606265 859590197 913622916 913622916 807927962 1073091866 1073091866 400823123 757619526 757619526 948900193 948900193 547371298 479395978 489931566 489931566 419441526 314708416 37088016 1056276687 1056276687 886096587 886096587 405256010 677533892 776449761 776449761 1038040539 1038040539 454173611 958399385 958399385 572522769 729159953 729159953 698458578 698458578 671475717 1032865127 1032865127 1025594207 1025594207 877029723 590872848 273288720 65603184 52902192 52640192 31479856 9182800 19205552 19205552 28047280 44099360 44099360 24240960 28598912 91512616 99521216 99521216 100828392 100828392 115918024 115918024 312348888 474948570 474948570 474627130 474627130 349472360 139558940 234906244 234906244 671091728 671091728 104018712 219227942 219227942 357486248 581912647 581912647 715009182 715009182 981749335 981749335 867222728 867222728 911492684 1016216914 1019679009 1019679009 658049444 460921458 876554340 948453337 948453337 635654679 762393433 762393433 531653946 791204636 791204636 866586848 866586848 389911927 889574110 889574110 1067911217 1067911217 488322606 488322606 478216262 478216262 676670085 676670085 1024042094 1024042094 1013324175 1013324175 759952177 900392826 900392826 931094413 931094413 772938139 469909909 912445851 912445851 957052548 957052548 824180803 947414672 947414672 911811596 496956112 496956112 494770438 227557520 105228928 208184580 280680000 288807938 288807938 432062564 432062564 507692818 507692818 485491216 485491216 406003848 406003848 331994354 361829996 361829996 90703771 592969905 1065327510 1065327510 574108599 110253585 823519779 823519779 558034995 357829290 357829290 306652976 408367186 408367186 901928595 901928595 107167328 664725011 750341369 750341369 599191724 642225210 728765345 728765345 198685408 1011352627 1011352627 218034528 142976168 618579835 618579835 380169916 824390450 824390450 570425361 432372399 590729048 707410488 707410488 680026102 873543306 984603099 1038349391 1038349391 604578825 604578825 87241512 740305704 740305704 1033216648 1033216648 215400567 154366048 264376884 264641512 264641512 214958796 241824204 241824204 100936100 185101604 185101604 237095416 237095416 268312544 268312544 235817668 211732416 102946544 324567586 324567586 341230920 360829026 518974610 721574061 721574061 715276359 446831044 38011149 1008905101 1008905101 748011852 748011852 3477504 2097408 23009924 328206976 439879446 439879446 563113084 563113084 152357412 153783332 154276644 407614145 949622343 949622343 548537411 946335427 946335427 520431678 627090390 627090390 699678829 1013189007 1013189007 575229613 840542804 840542804 833833616 853945712 853945712 572355842 911934408 911934408 109604874 809188434 809188434 866181962 866181962 347193715 389157690 389157690 24067488 24067488 82584842 88935914 328746034 328746034 492207215 508062353 718031452 718031452 897896683 897896683 827724519 546984006 786144235 899164918 899164918 560276000 560276000 544476033 246729564 519209156 519209156 515493690 292165410 501343634 526424555 871391611 1007153459 1007153459 780066917 780066917 574647836 672212880 691010853 726769861 726769861 589484337 589484337 584119376 198960032 45390500 40820112 519642136 519642136 307323720 437785682 437785682 377610330 622531584 626734825 667615881 772671285 772671285 689708732 583767816 606428136 747857170 747857170 411191336 411191336 847841390 847841390 765314068 291485680 224684488 171184148 254461524 254461524 70967952 231476340 237553728 237553728 193758916 163108024 163108024 156599680 52868640 41953376 41953376 165065316 165065316 141291556 723321224 796733373 796733373 786960189 782837085 655889923 671720503 889766955 889766955 616102704 616102704 245499216 800072481 800072481 1063390048 1063390048 885858884 459825376 459825376 473505966 473505966 370798862 404324913 587776591 1009780745 1009780745 1009557279 826952848 826952848 709268740 815592939 965481003 965481003 678668270 1011759656 1011759656 734136769 734136769 731652992 731652992 943237687 943237687 537599048 297497242 351855594 351855594 496971026 496971026 662708228 662708228 641992857 67948265 245377319 471459342 815816160 815816160 698489292 575173296 827524304 827524304 415608962 415608962 410235573 555803155 656511509 1051796319 1051796319 1063855551 1063855551 976347314 679494401 782407873 782407873 753174876 227254244 227254244 146195332 146195332 76207872 515576732 515576732 852562006 939667972 939667972 731071698 731071698 815698529 834980067 834980067 38085200 274851075 543892673 552285633 552285633 551828480 99041288 35264016 47903248 473991456 473991456 505710556 505710556 331355128 331355128 253790998 171346490 638878942 673597991 673597991 969320804 969320804 672216608 672216608 523306778 523306778 352194032 369625392 369625392 57761362 54526464 48766800 48766800 63727248 92325008 282643008 288377582 529860022 529860022 404357176 404357176 324045832 324045832 305734154 419566726 1046876673 1046876673 957292160 957292160 276169562 715791860 715791860 839266321 839266321 678529929 1012061904 1012061904 404799750 439598322 439598322 877251266 893460651 893460651 774236607 604053513 587337858 272764977 155939886 807809838 807809838 624236717 492812655 627116672 627116672 57155968 22945440 273717568 284613570 284613570 280565442 273542274 147510468 147510468 624323820 624323820 756549165 756549165 956981894 956981894 889145090 889145090 553652296 89166857 73013000 84448288 84448288 57751296 55186608 249602348 249602348 230704796 102342816 711135828 711135828 147728017 138022544 105725656 617204921 617204921 220849452 542189713 591294812 684067469 684067469 683141573 638820929 618610753 801155456 801155456 638619008 638619008 734165493 734165493 703058080 713064464 713064464 528881724 528881724 118489656 919603761 919603761 718651746 960403593 960403593 833936696 833936696 395471650 613342281 613342281 979678412 979678412 443195475 1048777629 1048777629 1018690383 882716235 882716235 609251329 606305369 715796567 715796567 336767633 336767633 240915532 376442768 379621392 379621392 362435296 359923848 359923848 315233490 402085016 402085016 107075224 556475521 556475521 539534848 668344105 668344105 700498149 700498149 716338448 716338448 168722632 738262338 952767687 952767687 1025322543 1025322543 876411393 92426816 189833788 189833788 177410292 639804453 639804453 265290492 716179649 788722436 788722436 731128832 208341641 131025720 575400784 575400784 567094497 805770466 805770466 259052600 455295538 615561103 713105744 713105744 639845683 205087208 689966828 769919469 769919469 319107683 284369022 284369022 38651152 305972226 402841356 511339146 511339146 370039824 960849193 960849193 917319003 917319003 578030153 586154904 710711773 710711773 583194329 750784592 805490691 805490691 507527782 258383294 563612300 932894331 932894331 908443296 908443296 829742321 692874264 1007190021 1007190021 671106063 654376961 654376961 948272169 948272169 365019550 365019550 786683286 929735132 929735132 837435768 731399288 570950673 959496999 959496999 823416242 409278710 547357201 547357201 407529548 407529548 439027302 439027302 323630410 1066573827 1066573827 271810174 588601228 1072965232 1072965232 852054078 715467093 666498554 935400556 935400556 1032921711 1032921711 763877289 750386446 750386446 959656743 959656743 875777276 749493644 749493644 476096647 608561289 940462211 940462211 756174340 756174340 240238140 526403741 526403741 658554523 920311066 947313543 947313543 873390677 948712772 948712772 914880603 919654724 919654724 81848272 110486464 110486464 46453888 46453888 44568896 36154432 77676616 77676616 80766848 373393208 373393208 335256370 335256370 292933746 376650536 376650536 490388068 490388068 297812730 299109090 299109090 135602752 279423304 344346946 344346946 75887946 69890416 336015552 336015552 117179847 117179847 988555728 988555728 610607495 1017487506 1017487506 839858387 839858387 915446738 938765192 938765192 400916843 279068713 5642880 101790108 541855652 541855652 80816841 57605941 1004971061 1004971061 959352882 959352882 988358103 988358103 193156209 371258964 371258964 405934854 997008179 997008179 224791700 963362313 963362313 844627990 844627990 1031798922 1031798922 625885803 625885803 551821568 551821568 537994338 423631172 809500803 809500803 146800711 1058589243 1058589243 506307197 506307197 178614224 57537533 620362392 654186833 788847993 788847993 586284070 862167955 862167955 989145532 989145532 474775860 506479750 506479750 418648594 483659222 483659222 382899738 987284099 987284099 654970895 1057625151 1057625151 913611585 913611585 776345368 922764122 922764122 184307464 206352588 206352588 92469956 51146040 84430592 766509933 803258817 803258817 785193362 785193362 308686045 994262711 994262711 894574854 922216057 922216057 849170815 650189206 650189206 910824603 910824603 1050552316 1050552316 876739125 876739125 970260644 970260644 607862784 607909641 607909641 441050262 811607446 811607446 809549955 472450712 608282198 615114057 615114057 805965941 976394513 976394513 699450213 826587244 969140450 969140450 545616070 828707253 828707253 424040889 369759258 677511168 677515653 677515653 6560133 67309576 604185316 768815853 768815853 712509632 138728709 344252418 344252418 160051464 279109904 449959354 449959354 264763644 264763644 250200268 349918440 349918440 338846232 108102168 108102168 256672104 373294588 373294588 344018352 361325226 361325226 341389226 446727484 446727484 269163784 365596640 365596640 640420462 1001916279 1001916279 938837287 841804947 841804947 841190405 531316824 1051039044 1051039044 854210563 658477394 872549960 872549960 338566208 214889704 214889704 497706082 497706082 342955040 348661184 536552746 536552746 433368614 444342086 444342086 329416362 905369560 905369560 471520782 471520782 347501038 306261042 523567656 523567656 520621692 221134936 143921668 363329898 363329898 497906924 497906924 1057368510 1057368510 337914649 185078682 185078682 475091478 475091478 173402772 323094618 795645463 795645463 807927962 807927962 1073091866 1073091866 346964682 757619526 757619526 948900193 948900193 547371298 479395978 479395978 419441526 419441526 51902469 37088016 1056276687 1056276687 414279948 1009738258 1009738258 1009785853 1009785853 298058123 13904962 19148800 19148800 544606208 544606208 544347009 372642236 372642236 879152006 879152006 616580230 1032865127 1032865127 1025594207 1025594207 368570033 118689744 118689744 65603184 52902192 52640192 31479856 9182800 19205552 19205552 28512048 44099360 44099360 83903016 83903016 119698328 119698328 71850520 226595088 226595088 162783540 115918024 190831976 474948570 474948570 474627130 782564165 782564165 612756544 631042536 631042536 671091728 962464385 962464385 978347279 978347279 357486248 357486248 443671324 443671324 183575462 211585100 211585100 370737488 370737488 436801554 436801554 141405400 215405572 527147977 576807935 576807935 975059240 975059240 635654679 762393433 762393433 531653946 791204636 936416948 936416948 866586848 719280961 719280961 121296696 242432696 242432696 123155356 0 478216262 478216262 419444264 404362758 618956336 618956336 60295385 946360742 946360742 703023032 703023032 931094413 931094413 772938139 555997373 912445851 912445851 589831209 438320625 824180803 824180803 335378754 335378754 309994172 432546944 432546944 227557520 133432184 93589968 93589968 142618656 168956912 172483880 238611232 238611232 82840456 201850944 210240588 210240588 226541672 226541672 134217732 4 90703771 592969905 728616241 728616241 574108599 110253585 823519779 823519779 797197324 797197324 747116545 571008312 1070868592 1070868592 662370274 122093724 42320432 42320432 215450144 791974548 791974548 599191724 728765345 728765345 79000048 340983634 667944881 667944881 602670688 642255424 943259680 943259680 817509472 870569459 988868784 988868784 391582458 391582458 680026102 680026102 873543306 984603099 984603099 941729662 604578825 604578825 400853472 740305704 956308113 1033216648 1033216648 825239712 825239712 264376884 670302285 771115789 771115789 535140865 535140865 442735026 304384281 612665633 832694665 832694665 428066869 428066869 80752744 477117148 477117148 324567586 324567586 341230920 360829026 518974610 518974610 511723718 467845238 467845238 400738066 886071746 886071746 611394049 608316444 577727644 623451732 623451732 102893696 704851989 949897701 949897701 342509234 306758802 306758802 315266608 315266608 479856204 479856204 296488834 365540832 365540832 520431678 520431678 630744320 630744320 462285942 563752112 563752112 840542804 840542804 43699715 22153008 66144850 365039850 911934408 911934408 727652702 809188434 809188434 806354185 111726688 313185656 389157690 389157690 24067488 388361236 388361236 236989744 88935914 567809226 567809226 508062353 508062353 479711310 479711310 487797322 487797322 482098732 160872274 960006472 960006472 792510515 601375045 595641842 724750464 724750464 519209156 699671845 699671845 501343634 526424555 871391611 1007153459 1007153459 780066917 780066917 574647836 672212880 691010853 726769861 726769861 589484337 589484337 584119376 198960032 45390500 40820112 519642136 519642136 71386846 251670576 574701678 637645832 789738596 864216983 864216983 857834592 772671285 689708732 522529086 606428136 606428136 485948103 411191336 411191336 847841390 847841390 765314068 291485680 224684488 171184148 254461524 254461524 25826656 25826656 237553728 237553728 252057660 252057660 102760736 102760736 166968132 166968132 166839184 188160269 188160269 517523166 517523166 454566486 454566486 815461101 815461101 306938894 354419474 354419474 338985330 369383762 369383762 1062449306 1062449306 939526691 1063390048 1063390048 885858884 109720033 661202361 661202361 659104185 658579641 640353643 640353643 1060423433 1060423433 990904887 205701554 902205448 902205448 563254316 965481003 965481003 343971915 17439744 8652864 552149168 552149168 47583409 55193152 55193152 46268544 46268544 79827056 79827056 589816696 752745905 752745905 695172061 793641536 793641536 67948265 245377319 606560424 815816160 815816160 698489292 623037990 623037990 577684601 577684601 731731477 731731477 555803155 555803155 1051796319 1051796319 950800652 205269861 672137733 679494401 782407873 782407873 753174876 163234216 22648804 143467776 414734660 414897990 414897990 42146646 852562006 939667972 939667972 731071698 731071698 815698529 834980067 834980067 38085200 274851075 543892673 552285633 552285633 551828480 99041288 86281224 86281224 473991456 473991456 1067887661 1067887661 380744474 1069882593 1069882593 611275517 638878942 809271918 809271918 590368715 380066928 313305370 370742020 370742020 345558892 345558892 752401123 752401123 383713412 44713552 288103378 293898674 293898674 290790368 117212560 117212560 296096128 338037154 404357176 404357176 324045832 324045832 167905052 342508070 342508070 252762410 274776450 274776450 292979228 470881148 470881148 402995226 436342806 436342806 169117578 309762840 309762840 204913608 204913608 314638427 608247945 894706665 894706665 780210257 780210257 272764977 155939886 281604362 281604362 25883974 363639171 627116672 627116672 57155968 38846480 270813856 271506690 280565442 280565442 403363908 403363908 428077158 428077158 91361990 67158024 229725646 956981894 956981894 889145090 889145090 365964961 3412736 81217536 138421993 138421993 153174800 153174800 637996953 790981449 790981449 651853601 778091021 778091021 763039609 754587421 754587421 621813936 621813936 220849452 220849452 114595560 5768704 7476096 7476096 7918080 275175682 745819456 752404173 752404173 619607508 782777681 782777681 703058080 713064464 713064464 528881724 528881724 122083546 919603761 919603761 718651746 960403593 960403593 611409299 395471650 411855966 613342281 613342281 979678412 979678412 509686208 1048777629 1048777629 1018690383 882716235 882716235 609251329 606305369 715796567 715796567 336767633 336767633 68062530 376442768 469940313 469940313 514382262 641780889 641780889 922993008 922993008 460510134 460510134 626205762 832904746 832904746 677324428 677712446 700498149 700498149 716338448 716338448 182185988 738262338 952767687 952767687 1025322543 1025322543 876411393 718032067 718032067 224177386 518533816 702760656 702760656 654980273 716179649 788722436 788722436 1024699842 1024699842 165938933 321233729 548213571 567094497 805770466 805770466 457563876 457563876 615561103 615561103 639845683 1014203252 1014203252 546463606 130988897 1008080094 1008080094 595058575 582021377 594215633 594215633 562639120 511339146 511339146 341078916 462427520 462427520 70134398 603980288 603980288 612401153 710711773 710711773 587822176 750784592 750784592 507527782 507527782 258383294 563612300 932894331 932894331 908443296 908443296 681372376 681372376 1007190021 1007190021 671106063 654376961 654376961 948272169 948272169 208209144 208209144 786683286 929735132 929735132 795590176 795590176 820862685 959496999 959496999 823416242 409278710 547357201 547357201 557536592 557536592 439027302 527548640 527548640 336642570 336103096 377487418 377487418 1072965232 1072965232 715467093 715467093 453051532 674594284 674594284 488811820 524435809 524435809 750386446 750386446 959656743 1039736384 1039736384 749493644 749493644 784760842 784760842 738467968 742729869 925080480 925080480 979094738 979094738 612009398 1185280 341346304 341626506 873138184 873138184 335944789 511916044 511916044 919654724 919654724 81848272 110486464 110486464 7059328 38793088 38793088 13231296 33621120 33621120 103851290 304613130 369746970 369746970 338018314 338018314 338043904 338043904 220862730 169886600 169886600 135547676 135602752 135602752 279423304 344346946 344346946 75887946 69890416 336015552 336015552 42651784 12235648 988555728 988555728 610607495 137573124 740629596 904118384 904118384 915446738 938765192 938765192 400916843 279068713 805660314 805660314 462794567 292135282 245958322 252427920 306083572 306083572 959352882 959352882 988358103 988358103 822159721 822159721 977227052 977227052 997008179 997008179 224791700 963362313 963362313 844627990 844627990 1031798922 1031798922 607726179 944931144 944931144 551821568 827640483 827640483 809500803 888226760 888226760 577258689 469811214 506307197 506307197 124569568 124569568 259574968 259574968 168159252 586284070 586284070 862167955 862167955 989145532 989145532 474775860 506479750 506479750 678378885 745225605 745225605 745223565 987284099 987284099 646365897 965221440 965221440 1053165444 1053165444 776345368 922764122 922764122 343063234 345482860 471890342 471890342 462384254 462384254 766509933 803258817 803258817 508300446 442178805 430710591 994262711 994262711 504847119 922216057 922216057 849170815 650189206 650189206 530872711 549457086 682477874 907057258 907057258 436271452 436271452 736625360 736625360 607909641 607909641 441050262 811607446 811607446 809549955 451429717 587497872 588041265 891610177 891610177 805965941 599785329 699450213 699450213 959649815 959649815 205946891 911706393 911706393 727761168 727761168 677511168 677515653 677515653 214960512 941377543 941377543 345532922 712509632 981597684 981597684 870048912 219455720 137926212 137926212 156515784 156515784 264763644 264763644 291595754 291595754 95147592 313115434 313115434 323535224 323535224 373294588 375997860 375997860 361325226 361325226 388370432 446727484 1026748201 1026748201 365596640 365596640 640420462 1001916279 1001916279 938837287 931753056 841804947 321513753 531316824 1051039044 1051039044 490733742 490733742 346030410 346030410 338566208 409490113 1007342607 1007342607 688629386 688629386 622945070 622945070 410332038 433368614 953905797 953905797 852384896 852384896 881682935 881682935 154315136 187567152 187567152 461364644 520621692 520621692 818147523 884204257 884204257 981794872 981794872 547461398 543188169 548120536 737854709 737854709 691799892 552528824 636513164 636513164 268518404 428321558 428321558 312163126 204474380 420877604 420877604 881013468 881013468 826964021 319194165 155191536 155191536 304618600 380126746 380126746 69206280 69206280 12894600 404015960 404015960 883015681 1009738258 1009738258 1009785853 1009785853 756622893 1004476435 1004476435 363270195 488057053 488057053 641413672 793060105 793060105 879152006 879152006 273711548 386925114 529564542 529564542 389071674 70330750 118689744 197925540 197925540 164176208 164176208 28835844 83264776 83264776 181787320 234933188 234933188 195035508 190906544 83903016 119698328 160241540 160241540 226595088 226595088 246817552 458490684 458490684 130829410 71711216 201720088 782564165 782564165 612756544 858769608 858769608 408160387 962464385 962464385 978347279 978347279 258380444 258380444 443671324 443671324 183575462 211585100 211585100 148612316 58601248 58601248 82582208 141405400 215405572 527147977 576807935 1014217312 1014217312 975059240 546381830 464536376 464536376 460367346 1007161798 1007161798 936416948 625988019 719280961 719280961 121296696 313213184 313213184 465837834 834446302 834446302 427506609 967500503 967500503 623304975 623304975 60295385 946360742 946360742 955301274 955301274 910856901 629483378 822651306 822651306 555997373 276897858 286261794 365477056 488692332 488692332 345177098 380654720 390776842 432546944 432546944 145401962 133432184 93589968 147584196 147584196 168956912 172483880 238611232 440489946 440489946 509789312 509789312 453067108 505659998 1065228476 1065228476 975415662 962196188 931995384 382234582 357098136 357098136 270396930 130979849 591440961 973592957 973592957 747116545 987362244 1070868592 1070868592 662370274 461245596 199302772 199302772 215450144 791974548 791974548 172306572 208871688 645267560 645267560 759499425 759499425 667944881 602670688 642255424 943259680 943259680 817509472 870569459 988868784 988868784 245326064 993292821 993292821 671687685 671687685 671097856 941729662 941729662 443910393 400853472 1028175203 1028175203 1024084069 956308113 588382676 825239712 825239712 251009313 670302285 771115789 771115789 1001812456 1001812456 442735026 304384281 612665633 992002106 992002106 428066869 428066869 105134648 477117148 477117148 745410700 1040635935 1040635935 757105958 221102384 521142396 521142396 467845238 467845238 927208982 927208982 282070912 608316444 608316444 577727644 623451732 623451732 102893696 704851989 949897701 949897701 342509234 306758802 306758802 315266608 315266608 479856204 479856204 29544966 222600928 222600928 575409297 575409297 828237353 830711868 830711868 987274937 987274937 587357302 587357302 675131217 675131217 643634160 641865033 698790447 947359260 947359260 738865485 907068616 907068616 564327370 905812275 905812275 761311030 761311030 1042932514 1042932514 236989744 109743152 567809226 889640993 889640993 881012811 881012811 143802446 405924646 471414785 527854185 527854185 960006472 960006472 792510515 601375045 625394710 724750464 724750464 26417668 699671845 699671845 64303808 91981400 195549152 195549152 162185548 105632928 201536088 237626652 237626652 187384612 178048596 189080144 259911612 259911612 254645404 254645404 182463572 140767620 410317572 410317572 202182402 159982692 574701678 637645832 789738596 864216983 948441092 948441092 495456871 889357770 1030935471 1030935471 946073991 975337765 975337765 64086768 64086768 16833200 29188048 143656960 143919684 143919684 110531916 70931032 261110006 426753406 426753406 366442242 601623735 601623735 209986832 990470544 990470544 973755063 943318791 943318791 683849666 517523166 517523166 454566486 454566486 815461101 1007236371 1007236371 833217095 982903383 982903383 600068919 600068919 1062449306 1062449306 939526691 1034199305 1034199305 560345988 109720033 661202361 661202361 659104185 658579641 640353643 640353643 1060423433 1060423433 990904887 772146187 902205448 902205448 805648706 612636767 84930571 498291013 517349256 517349256 552149168 552149168 721716361 745932104 756422445 756422445 610800136 597824400 597824400 760297700 760297700 752745905 695172061 793641536 793641536 327772246 327772246 606560424 606560424 601334498 595226741 623037990 623037990 577684601 577684601 731731477 731731477 354661000 354661000 291505049 950800652 950800652 253196088 34417680 34417680 17311792 8788032 11932672 138054784 149553796 149553796 414734660 414897990 414897990 42146646 138124752 138124752 21496992 22449824 22449824 65243248 65243248 34075264 33661840 47541440 47541440 40228176 40228176 23326832 62954560 86281224 145804052 145804052 358588294 1067887661 1067887661 380744474 1069882593 1069882593 611275517 605407812 809271918 809271918 590368715 313305370 313305370 370742020 370742020 345558892 345558892 752401123 752401123 383713412 63577680 288103378 293898674 293898674 290790368 272840722 272840722 296096128 338037154 338037154 204751820 461374052 461374052 329256512 342508070 342508070 271603642 274776450 274776450 292979228 292979228 337979648 402995226 436342806 449822100 449822100 309762840 414138496 414138496 953164032 953164032 693970592 894706665 894706665 780210257 780210257 348377153 886679105 886679105 764601501 781746673 781746673 669143944 284333664 38846480 38846480 322200320 322200320 273300738 273300738 403363908 403363908 428077158 428077158 274023428 230209540 626016900 739858053 739858053 625894112 905193931 905193931 74168969 273756874 289500960 289500960 343643582 376124826 637996953 790981449 790981449 651853601 778091021 778091021 763039609 754587421 754587421 760671997 760671997 74184072 629339497 792312348 792312348 703926181 703926181 669889857 633566981 745819456 752404173 752404173 619607508 782777681 782777681 661298464 104142528 412517368 412517368 463489060 463489060 444631956 705787248 705787248 336546392 907635298 907635298 958734625 958734625 411855966 344143154 778999131 778999131 509686208 475803399 475803399 138543108 138543108 134221956 134221956 39161872 103574224 407487500 407487500 279731208 237414102 71487624 469940313 469940313 514382262 641780889 641780889 922993008 922993008 507885648 971515224 971515224 832904746 832904746 677324428 677712446 677712446 253045308 198450648 182185988 182185988 141681540 116967384 383355800 443968670 867963378 867963378 718032067 718032067 224177386 537026830 702760656 702760656 654980273 638796412 743109160 743109160 1024699842 1024699842 165938933 321233729 558013570 558013570 554437665 305398822 457563876 457563876 413770110 413770110 399025687 1014203252 1014203252 546463606 502279356 1008080094 1008080094 595058575 582021377 594215633 594215633 562639120 138045968 138045968 308871186 780666045 780666045 644103751 681913025 681913025 612401153 612401153 596803721 661689072 661689072 80090128 80090128 29360352 29360352 12658712 72751752 72751752 101535032 910678989 910678989 813307651 813307651 775442850 572742809 505752342 505752342 491586828 491586828 373428378 373428378 267542294 461772918 804409374 804409374 795590176 820862685 820862685 577146780 772341824 780739677 780739677 696413027 696413027 880350194 880350194 527548640 527548640 336642570 675332548 675332548 377487418 496917012 496917012 247136081 548857044 574837377 674594284 674594284 488811820 488811820 99929064 867292680 875092809 875092809 1039736384 1039736384 1015721017 1015721017 784760842 784760842 549873665 549873665 925080480 925080480 979094738 979094738 612009398 582327672 582327672 596401665 873138184 873138184 335944789 511916044 511969374 673225472 673225472 173149248 173149248 43116112 43116112 33840960 6360832 13231296 13231296 12607488 103851290 304613130 369746970 369746970 338018314 338018314 338043904 338043904 220862730 268513924 268513924 135547676 135544844 463708028 463708028 358218496 106784656 465830980 531900840 531900840 487527776 487527776 662837009 662837009 653736607 671365406 671365406 1040827422 1040827422 904118384 113246424 113246424 106734600 609864856 609864856 805660314 805660314 932806828 932806828 942171766 942171766 425500271 312142566 474066268 531657638 531657638 527570742 822159721 822159721 977227052 977227052 882284170 107021446 40895376 368011252 504814110 504814110 201326604 546833928 546833928 173022714 944931144 1006572560 1006572560 827640483 827640483 340309058 888226760 888226760 577258689 378799497 346819914 336178736 251854264 251854264 259574968 259574968 168159252 179818980 179818980 738245293 738245293 436489704 493145128 493145128 1008208942 1008208942 678378885 745225605 745225605 1054637823 1054637823 1000027767 537514029 628817118 918429531 1053165444 1053165444 715033303 145789361 343063234 343063234 345482860 471890342 471890342 462384254 462384254 315019698 432411682 508300446 508300446 571322716 571322716 832833379 832833379 981500511 981500511 756333341 742925800 742925800 631243113 625549347 549457086 976484709 976484709 907057258 436271452 436271452 736625360 736625360 759251337 759251337 1047815149 1047815149 580700717 44230850 1007337426 1007337426 691147557 891610177 891610177 691925263 599785329 311562834 771855990 959649815 959649815 1051518561 1051518561 911706393 727761168 727761168 457311080 636750572 636750572 214960512 941377543 1020209373 1020209373 982308519 981597684 981597684 870048912 176505488 20633376 20748288 20748288 50629296 50629296 33700304 291595754 291595754 95147592 313115434 350827824 350827824 323535224 303317138 375997860 375997860 111995378 125881354 388370432 426417104 1026748201 1026748201 135779086 238713884 238713884 127900144 713288917 931753056 931753056 623701019 243901749 434497536 509731230 545001500 975866205 975866205 937315271 629345643 415172133 409490113 1007342607 1007342607 688629386 688629386 622945070 622945070 537135296 549454017 953905797 953905797 852384896 852384896 881682935 881682935 832147940 416447087 265371586 461364644 468328372 468328372 818147523 884204257 884204257 981794872 981794872 676462604 676462604 708841613 737854709 876676806 876676806 620462204 1011566353 1011566353 603993570 428321558 428321558 312163126 84551020 420877604 420877604 881013468 881013468 826964021 730300022 845462314 845462314 383904000 383904000 380126746 383097562 383097562 99877800 281405888 281405888 883015681 883015681 875561739 608768575 756622893 756622893 1004476435 1004476435 431853927 691917826 691917826 712807014 793060105 793060105 846594347 846594347 844323735 436220553 529564542 529564542 389071674 231896540 231896540 198466064 197925540 164176208 164176208 28835844 83264776 83264776 181787320 234933188 234933188 195035508 190906544 149095826 445069078 466419438 466419438 484565454 484565454 283165122 458490684 458490684 332223336 385292962 737446620 804854739 804854739 337238984 858769608 858769608 347028810 347028810 945127308 945127308 591703331 258380444 258380444 531287392 531287392 113505160 113505160 80949960 80056720 271938718 271938718 75767200 163959672 163959672 160167012 470203950 1014217312 1014217312 10364006 94297704 94297704 475392654 951724169 1007161798 1007161798 921384411 525018167 431699394 431699394 213670279 713997183 1035258735 1035258735 895877475 834446302 437060224 967500503 967500503 624630065 677357553 677357553 906279318 906279318 955301274 955301274 910856901 883538783 822651306 822651306 659780478 732101417 746945478 809853005 809853005 488692332 345177098 380654720 390776842 438738632 438738632 145401962 85158160 284783872 284783872 342794956 342794956 204179592 181977730 440489946 478749774 509789312 509789312 453067108 518302014 1065228476 1065228476 975415662 962196188 931995384 912083788 912083788 357098136 335845616 335845616 591440961 973592957 973592957 685770926 987362244 987362244 314346418 461245596 461245596 433677114 828322360 828322360 814690818 840574707 840574707 208871688 645267560 645267560 959386882 959386882 950483820 950483820 268657296 268657296 213095106 619852010 619852010 491303900 400637524 245326064 993292821 993292821 671687685 671687685 671097856 454996950 392307740 509420869 525993449 1028175203 1028175203 1024084069 692099246 154327674 154327674 140314032 140314032 612372316 980551941 980551941 1001812456 1001812456 1003059120 1003059120 723534163 992002106 992002106 385876342 202621085 330311700 431303526 504437584 745410700 1040635935 1040635935 757105958 466035690 521142396 521142396 368476904 265735020 927208982 927208982 138412164 232991744 317203450 317203450 404536766 404536766 220409620 126878016 126878016 488496028 488496028 237168174 86032680 27414592 159928384 428136548 428136548 29544966 222600928 222600928 575409297 575409297 828237353 830711868 830711868 987274937 987274937 587357302 587775430 675131217 675131217 643634160 641865033 763447773 960496966 960496966 901800218 907068616 907068616 564327370 905812275 913098635 913098635 803508208 1042932514 1042932514 495552384 109743152 327324344 889640993 889640993 881012811 881012811 909386267 909386267 850547483 545577298 527854185 412747985 712639359 712639359 712508308 915084037 915084037 682000667 11799360 156555461 596906177 703523032 703523032 257091140 257091140 232042496 105632928 100732956 153092388 187384612 187384612 151106352 226248560 259911612 382013369 382013369 416869190 648859916 973652499 974837271 974837271 647516238 339747504 339747504 193987160 173146176 173146176 948441092 948441092 695402549 889357770 1030935471 1030935471 946073991 975337765 975337765 958616045 878640134 878640134 754400004 280474592 230504864 143919684 110531916 168527196 261110006 426753406 426753406 366442242 601623735 601623735 230450952 990470544 990470544 973755063 943318791 943318791 821208394 878082680 878082680 469829358 486539310 486539310 1007236371 1007236371 924578079 982903383 982903383 647008943 708022409 971724566 971724566 419241014 1034199305 1034199305 560345988 36230056 123344568 656078008 656078008 655045689 408670337 941172231 941811463 941811463 939659271 772146187 816199022 816199022 805648706 612636767 747090441 747090441 517349256 616093204 616093204 747029860 747029860 745932104 756422445 756422445 778326297 778326297 644927957 760297700 760297700 268936816 439643424 542576199 542576199 327772246 327772246 315644562 601334498 601334498 595226741 54935681 939540496 939540496 854116370 854116370 503473335 508219452 822472754 973147443 996754461 996754461 376992949 877793931 877793931 748833731 850192384 850192384 243505162 271866880 271866880 278456514 278456514 273677442 449560070 449560070 446336912 138411780 141817472 282558176 282558176 65243248 34075264 33661840 47541440 47541440 40228176 40228176 23326832 62954560 62954560 145804052 145804052 358588294 358588294 501009490 526175870 526175870 355467288 162868068 162868068 287687236 906186784 922869819 922869819 3545856 19012096 20187936 20187936 3020320 415938812 415938812 264721606 63577680 63443680 37225712 8163328 63422690 272840722 272840722 183563758 183563758 167037384 204751820 461374052 461374052 329256512 136626844 271603642 271603642 67244040 70390658 240275616 240275616 474976018 474976018 114029784 449822100 510939736 510939736 414138496 414138496 963706976 963706976 696247331 948573127 948573127 703864868 285771873 348377153 886679105 973292615 973292615 781746673 858833112 858833112 284333664 34652160 37750688 322200320 322200320 57640354 56499888 705299527 705299527 408809094 408809094 959323431 959323431 626016900 739858053 1053077552 1053077552 905193931 905193931 615786144 615786144 289500960 289500960 343643582 376124826 510854660 510854660 175859924 210164848 210164848 119766680 78262032 211498812 231160624 760671997 760671997 203798472 629339497 792312348 792312348 703926181 703926181 669889857 633566981 276072770 213460812 989995850 989995850 713418837 713418837 661298464 721549030 721549030 328469106 463489060 532712252 663934979 798791424 1062611869 1062611869 907635298 907635298 958734625 958734625 319541359 344143154 416273420 416273420 987017740 987017740 652349913 740475486 740475486 851575384 851575384 908153361 908153361 880185737 407487500 335694936 335694936 345510464 345510464 300439968 300439968 277797954 193097760 593609172 775108357 775108357 971515224 971515224 340075167 129568210 67764816 428148379 803024637 803024637 1011168454 1011168454 1037896333 1037896333 815077379 814329857 814329857 867963378 867963378 866304042 866304042 420528419 537026830 537026830 419055366 419055366 293629988 690693736 690693736 93847656 93847656 18874656 69940264 558013570 558013570 654589760 666580857 666580857 388372794 471110964 471110964 135016132 409003288 409003288 502279356 502279356 223014110 473780912 473780912 83695240 211848936 323739922 323739922 134117236 284418450 314644034 780666045 780666045 644103751 681913025 681913025 253799330 562562720 562562720 661689072 661689072 80478368 747771752 747771752 689963301 679873125 566233669 130421105 82920368 910678989 910678989 813307651 813307651 775442850 444712760 505752342 505752342 389884284 332203344 373428378 373428378 267542294 461772918 804409374 804409374 743887645 672322053 576852171 253232700 772341824 780739677 780739677 696413027 1055005145 1055005145 880350194 533796492 779110724 779110724 675332548 675332548 685385106 685385106 503130054 529108602 548857044 574837377 686276733 686276733 1070543599 1070543599 903085614 903085614 875092809 875092809 910732920 910732920 1015721017 1015721017 755049088 760218285 802981805 804572157 804572157 66185597 60866928 271544851 447788036 802345150 802345150 740987765 799757489 799757489 531595314 531595314 511969374 511969374 142279120 173149248 173149248 43116112 43116112 33840960 8201920 312727762 312727762 7894296 336152146 336152146 123806136 300436034 370960024 370960024 302229000 100496 512832518 512832518 437913110 84935208 84935208 463708028 463708028 358218496 106784656 465830980 531900840 531900840 487527776 487527776 678430166 716703573 716703573 708445696 708445696 1040827422 1040827422 773303045 686415436 686415436 188033633 647541817 651781145 651781145 747256576 932806828 932806828 942171766 942171766 425500271 312142566 474066268 474066268 56881856 61866864 61866864 24900464 143744288 143744288 1009826113 1009826113 206580238 1030651107 1030651107 487103653 945349993 969483339 969483339 706660081 946494597 1006572560 1006572560 567854368 366573763 613271561 613271561 692997581 826066057 830607459 833225984 833225984 251854264 251854264 196017100 185699472 122023996 238085479 966712935 966712935 738245293 494950709 493145128 493145128 1008208942 1008208942 474478734 504608064 504608064 1054637823 1054637823 1000027767 555637428 670616787 670616787 979857354 979857354 715033303 502337710 502337710 353980492 353980492 214094028 388133236 388133236 315019698 315019698 432411682 477551430 477551430 571322716 571322716 1002574071 1002574071 981500511 981500511 833095011 742925800 742925800 625549347 625549347 275206258 976484709 976484709 752167035 234773092 234773092 549455844 549455844 759251337 759251337 1047815149 1047815149 675025796 773009949 1007337426 1007337426 691147557 798513202 798513202 581298513 581298513 422452518 771855990 783677791 783677791 1051518561 1051518561 603411469 605689516 605689516 573183249 573183249 102892817 1061949481 1061949481 1020209373 1020209373 982308519 755181087 188936161 53475744 64671984 64671984 46586064 45964256 50629296 76285800 76285800 86171816 923358483 923358483 950084087 950084087 350827824 725501248 725501248 709640865 348966090 900163758 900163758 883762484 426417104 426417104 378037766 471488588 471488588 201622020 100729104 621343016 621343016 632153120 823125353 823125353 805441539 770331747 744673677 975866205 975866205 937315271 629345643 415172133 341183434 78742530 272680392 810554368 811210371 811210371 550110851 537135296 549454017 851448705 851448705 993279482 993279482 973428090 973428090 832147940 957042587 957042587 39457664 39457664 36177168 7476880 540373252 672586245 876603969 876603969 676462604 676462604 708841613 708841613 876676806 876676806 620462204 1011566353 1011566353 982594201 788534797 894697807 894697807 693509755 693509755 572604641 572604641 679616928 824734224 824734224 845462314 845462314 383904000 438354198 438354198 503316752 503316752 99877800 270979330 270979330 17924200 78671616 78972912 458238048 458238048 422699814 160643975 160643975 431853927 691917826 691917826 712807014 712807014 543585117 846594347 846594347 844323735 566462482 378239997 792987837 792987837 908293381 908293381 861368203 861368203 576037847 540292466 447219030 447219030 172541076 172541076 365561118 495494228 495494228 490823930 356549392 445069078 466419438 546462465 546462465 519225718 578518549 578518549 332223336 332223336 742178560 742178560 1002320827 1002320827 889776964 859118693 859118693 347028810 423074830 423074830 829094414 829094414 477695275 503790866 531287392 531287392 113505160 113505160 243093900 274569902 274569902 271938718 75767200 163959672 163959672 279098267 796972543 796972543 340737312 350838345 884283489 884283489 475392654 951724169 951724169 921384411 921384411 525018167 431699394 431699394 213670279 713997183 1035258735 1035258735 895877475 437060224 437060224 541161812 624630065 624630065 677357553 677357553 820253131 898864065 898864065 530197205 883538783 883538783 716309056 716309056 706875669 732101417 746945478 809853005 956360129 956360129 944437959 837042212 531809008 484874254 438738632 9388710 12832960 284783872 284783872 342794956 342794956 204179592 63557906 391287182 478749774 478749774 469566572 375456074 518302014 556368768 556368768 285242283 97641192 213167771 1032669545 1032669545 1029701295 1029701295 866218980 95346024 764020076 764020076 795135097 795135097 703920572 881043896 881043896 433677114 433677114 828322360 828322360 814690818 840574707 840574707 240592540 497296134 497296134 959386882 959386882 950483820 950483820 902435509 902435509 806364918 718947104 1015692188 1015692188 756356604 318341018 181629328 269995086 528239534 528239534 523018462 523018462 392307740 509420869 525993449 525993449 512724370 788552264 788552264 119717933 539078480 589825329 1022589480 1022589480 980551941 980551941 966544866 1050166613 1050166613 1003059120 862840206 616892301 914622555 914622555 456171849 330311700 431303526 504437584 605687426 605687426 353376256 466035690 466035690 704791523 814217283 814217283 848507475 848507475 715150054 300008674 639319164 639319164 710061144 746082981 1067850470 1067850470 182838356 241740378 488496028 488496028 521741378 521741378 467975770 379078440 145509672 367429742 367429742 367531392 367531392 383773844 508909742 540222600 540222600 122160324 711484316 711484316 464119158 587775430 587775430 354030638 476268346 617475971 763447773 992874780 992874780 937430323 901800218 889378056 824795937 824795937 1024328636 1024328636 803508208 803508208 999618867 999618867 633075561 633075561 595307704 361246568 361246568 369463361 909386267 909386267 1008206593 1008206593 773987273 773987273 712639359 712639359 779108024 915084037 915084037 682000667 642757514 550325825 596906177 703523032 703523032 257091140 257091140 232042496 124700592 124700592 188941344 188941344 172700820 177786176 226248560 226248560 382013369 382013369 416869190 648859916 973652499 974837271 974837271 749892672 717438205 339747504 239075416 173146176 173146176 599798577 695402549 695402549 295695665 135064774 274912834 274912834 822203904 958616045 958616045 878640134 878640134 754400004 280474592 230504864 36072192 77775680 201482564 211054164 211054164 145915432 145915432 96087624 144998424 230450952 230450952 150810564 150810564 135915012 821208394 821208394 878082680 878082680 683807348 683807348 592446129 454173235 924578079 924578079 672683167 640870169 647008943 708022409 971724566 971724566 419241014 419241014 300200014 300200014 935919639 935919639 776546028 656078008 655045689 662741081 999367287 999367287 941811463 939659271 906104859 948082811 956749863 956749863 537931784 747090441 747090441 225920044 616093204 616093204 747029860 747029860 700897509 157290644 552999873 778326297 778326297 644927957 21420297 855979842 855979842 295391316 650355836 650355836 328132193 123369486 21235872 553685168 587651121 744528280 744528280 939540496 939540496 854116370 854116370 503473335 508219452 822472754 973147443 996754461 996754461 376992949 877793931 877793931 748833731 850192384 850192384 243505162 271866880 271866880 278456514 278456514 273677442 449560070 449560070 446336912 446342404 446342404 313655378 331931968 331931968 306217410 268437056 29698592 29559136 29559136 27537632 27537632 16777152 16027904 16027904 36917832 101165336 751001777 751001777 526175870 601274976 601274976 364470344 450929948 605012160 906186784 922869819 922869819 405015154 405015154 463681396 463681396 320549940 955954123 955954123 327031826 327031826 298662896 301468736 301468736 270534048 280349032 280349032 296882496 296882496 161616738 150994980 150994980 87327888 87608496 392544440 392544440 157286692 172849700 172849700 240275616 325784210 474976018 474976018 114029784 114029784 510939736 510939736 475145432 407535110 963706976 963706976 696247331 948573127 948573127 269341635 533540094 533540094 168365310 973292615 973292615 695212020 858833112 858833112 108576800 59539584 59539584 37750688 309987234 309987234 143263746 705299527 963754658 963754658 980820588 980820588 959323431 707006480 698687881 1053077552 1053077552 767108009 767108009 615786144 615786144 622342315 872417832 872417832 542427777 276072123 575556018 591922353 591922353 1034740050 1034740050 878504959 592793208 403055912 189376052 189376052 203798472 203798472 267630332 267630332 157632368 157632368 140109444 296340131 787595473 787595473 989995850 989995850 960231207 960231207 833783669 745022169 745022169 328469106 451056222 532712252 663934979 798791424 1062611869 1062611869 849736379 849736379 391055778 949169903 949169903 496112238 650780749 650780749 987017740 987017740 652349913 740475486 769989428 851575384 851575384 908153361 908153361 880185737 684176725 335694936 335694936 345510464 443151833 443151833 958501308 958501308 390189272 593609172 775108357 775108357 626551605 626551605 338011698 24643488 94503712 428148379 803024637 803024637 1011168454 1011168454 1037896333 1037896333 815077379 814329857 814329857 621546400 621546400 866304042 866304042 420528419 620785673 746640488 746640488 771367720 771367720 690693736 690693736 1012339754 1012339754 693972645 545426373 114202856 329149988 1019099257 1019099257 666580857 388372794 573983793 690806278 909080675 1000863756 1000863756 510714178 510714178 353076224 353076224 86014240 86014240 211848936 323739922 323739922 134117236 284418450 314644034 421472672 421472672 336463688 336463688 213173600 213173600 198706020 140656656 160469576 160469576 80478368 747771752 747771752 689963301 679873125 566233669 130421105 82920368 67667240 87081774 408944902 494072234 494072234 439419474 439419474 34740752 34740752 34542592 46976208 46976208 111198504 117649464 834105440 916978523 925366587 925366587 749532419 253232700 746767180 746767180 682399837 644010927 1055005145 1055005145 378794586 533796492 779110724 779110724 678219076 678219076 685385106 685385106 503130054 529108602 529108602 265532502 686276733 686276733 1070543599 1070543599 903085614 903085614 713819664 160552820 310175882 310175882 335612355 602713133 755049088 760218285 802981805 804572157 804572157 315537644 747667598 861944981 1000883431 1058435081 1058435081 740987765 799757489 799757489 531595314 531595314 480790906 850174359 850174359 711693712 848050627 848050627 42296704 572653569 572653569 312727762 317432896 317432896 336152146 336152146 376598154 376598154 370960024 370960024 302229000 379143194 512832518 512832518 760414725 776020125 776020125 435368937 970850742 989732823 989732823 340669983 546770626 566239202 626467296 626467296 678430166 716703573 845357200 845357200 708445696 707222364 773303045 773303045 686415436 686415436 188033633 647541817 651781145 651781145 747256576 747256576 507228656 722834372 821054896 821054896 276510594 608189315 608189315 218303228 439747574 1030672507 1030672507 827932240 827932240 1009826113 1009826113 409672964 1030651107 1030651107 487103653 945349993 969483339 1025614965 1025614965 946494597 946494597 853685668 608814002 897222147 897222147 613271561 960793388 960793388 830607459 833225984 833225984 163709028 118568080 185699472 185699472 122023996 238085479 966712935 966712935 909545688 909545688 888466259 143825343 158351520 158351520 72124332 406079744 477773076 912027712 912027712 632804105 632804105 670616787 670616787 500528778 1058950848 1058950848 502337710 502337710 353980492 353980492 214094028 388133236 388133236 253137420 152651586 269898064 477551430 477551430 373375315 373375315 1002574071 1002574071 723915686 833095011 833095011 203946252 490781090 490781090 403565574 300073000 940046897 940046897 752167035 220422592 136364192 153165984 153165984 140509572 150681540 700954185 700954185 675025796 774375901 774375901 451295582 451295582 384227802 287596659 702994917 702994917 840087380 840087380 614190971 992174156 992174156 967041399 553726010 738734880 738734880 573183249 573183249 102892817 1061949481 1061949481 795203704 795203704 200666100 345977332 394348376 394348376 98923432 64671984 88470496 88470496 69805728 76285800 76285800 308883514 923358483 923358483 950084087 950084087 194647668 725501248 725501248 709640865 348966090 900163758 900163758 883762484 292887824 782563513 782563513 637927705 638210065 638210065 100799497 654861476 1011478669 1011478669 971130303 823125353 805441539 770331747 744673677 367808928 382733032 382733032 97911450 226772704 415389833 805355523 805355523 810554368 811210371 811210371 610423112 542552966 819572610 945493572 945493572 993279482 993279482 973428090 973428090 399242490 957042587 957042587 670701252 357179759 933429498 933429498 878780811 672586245 876603969 876603969 582939416 989765073 989765073 697879980 773374101 773374101 583217361 412836202 982594201 982594201 788534797 894697807 894697807 693509755 693509755 572604641 572604641 183636948 824734224 824734224 138547944 138547944 371281940 438354198 438354198 503316752 503316752 126280364 122155256 222388900 222388900 500186088 500186088 266347612 266347612 238602012 134482436 234881052 234881052 492176016 520493118 520493118 685529297 748850772 748850772 740559117 676285572 676285572 378239997 792987837 792987837 908293381 908293381 861368203 861368203 576037847 540292466 447219030 447219030 172541076 329314412 365561118 495494228 495494228 490823930 356549392 120088496 169812003 865672204 865672204 519225718 1010066052 1010066052 626109191 162216500 742178560 742178560 1002320827 1002320827 889776964 859118693 859118693 44831744 423074830 423074830 1017851218 1017851218 477695275 503790866 503790866 492908810 71097360 106935704 243093900 274569902 274569902 185379220 224251644 224251644 332972052 332972052 796972543 796972543 906792778 906792778 887621067 884283489 651943064 574253200 659186224 659186224 610006665 55166592 55166592 5817984 70263040 70263040 2232576 2232576 2232576 95959848 96448288 96448288 738978144 738978144 299445730 550350504 820253131 898864065 898864065 786050410 786432477 786432477 735199317 716309056 706875669 162653028 298902503 563135073 956360129 956360129 944437959 837042212 531809008 529959652 529959652 478488654 478488654 136052480 137288964 208138496 208138496 82904200 76574848 52429344 41233296 44051136 459546976 459546976 27593142 556368768 657565899 657565899 862467177 862467177 1032669545 1032669545 1029701295 1029701295 999139397 999139397 671137860 770444550 795135097 795135097 703920572 881043896 881043896 498147084 205819072 454034102 454034102 550240896 550240896 441723911 240592540 240728732 507062046 507062046 438965526 438965526 750929908 902435509 902435509 806364918 718947104 1015692188 1015692188 756356604 318341018 181629328 414213504 414213504 517071706 523018462 523018462 258697604 339209630 339209630 1049088 245661848 788552264 788552264 119717933 539078480 589825329 1022589480 1022589480 811913838 549504463 839654543 1050166613 1050166613 862840206 862840206 861212564 914622555 914622555 456171849 494123716 494123716 438454707 1063643583 1063643583 791503261 533922520 533922520 704791523 814217283 814217283 848507475 983934277 983934277 300008674 639319164 639319164 710061144 746082981 1067850470 1067850470 500615934 377535262 251006984 259149508 521741378 521741378 467975770 379078440 321908360 503382406 503382406 499522568 499522568 431621416 508909742 530486892 530486892 1058595936 1058595936 613754167 590618880 590618880 16850976 354030638 476268346 476268346 50617504 992874780 992874780 937430323 889378056 889378056 824795937 824795937 1024328636 1024328636 685316419 430185039 999618867 999618867 633075561 633075561 595307704 361246568 361246568 320338432 320338432 301989888 1008206593 1008206593 773987273 773987273 371787982 371787982 779108024 779108024 498219964 642757514 654727395 654727395 306436304 484624751 484624751 392731581 547103392 752603416 752603416 124700592 188941344 188941344 551061405 551061405 213944392 213944392 555829877 555829877 33603600 101750148 108053916 108053916 749892672 749892672 717438205 310772673 239075416 109052060 152308260 537133152 537133152 295695665 295695665 135064774 274912834 274912834 822203904 822203904 568867456 30227168 30227168 28548608 206758108 368710216 368710216 382277456 382277456 362807658 96204648 145915432 455606952 776276335 776276335 172771656 591366485 591366485 188694324 192412596 587337728 587337728 587202609 327811953 683807348 683807348 592446129 420639940 424916118 424916118 288986816 142735072 296268928 296268928 277946944 711819892 711819892 344318113 199762528 395649468 935919639 935919639 776546028 378215248 378215248 662741081 999367287 999367287 926094382 704774431 906104859 1011807113 1017854817 1017854817 721478012 721478012 261382673 55315632 571100336 571134993 713742497 713742497 700897509 143655656 214044876 214044876 536944644 536944644 967471596 967471596 855979842 280700979 650355836 650355836 328132193 293905558 415371462 543427106 699536229 744528280 806037698 806037698 879425962 879425962 878957803 897605664 897605664 757141739 453261346 453261346 494945540 494945540 208163852 202016140 202016140 256267704 256267704 218368044 218368044 218365952 147328196 151554128 446940372 446940372 430203590 180624086 446342404 446342404 324935346 331931968 331931968 306217410 268437056 117454856 121512952 121512952 116393272 125797384 125797384 117073544 209623172 209623172 101165336 751001777 751001777 101532176 601274976 601274976 364470344 450929948 605012160 605012160 806617437 806617437 405015154 405015154 463681396 463681396 320549940 955954123 955954123 327031826 327031826 301864914 301468736 301468736 270534048 280349032 280349032 499718390 499718390 261417656 261417656 253585148 421012744 421012744 392544440 392544440 389275808 172849700 172849700 119239684 325784210 414154756 526974042 526974042 424199334 202001838 475145432 475145432 373883018 411266184 692109357 695631913 926813260 926813260 189656316 533540094 533540094 168365310 168297492 452060118 452060118 401764396 265995216 265995216 59539584 59539584 34605248 309987234 309987234 469550118 469550118 963754658 963754658 980820588 980820588 707006480 707006480 698687881 698687881 642050672 510719869 510719869 150054404 953758510 953758510 931922568 931922568 725096147 276072123 575556018 591922353 591922353 1034740050 1034740050 878504959 592793208 403055912 214179460 168716368 168716368 8766628 2146560 10653696 10653696 8540480 48673344 296340131 787595473 787595473 338002455 679492543 960231207 960231207 833783669 745022169 745022169 604237833 604237833 358409 41428688 117053888 270263352 388971834 849736379 849736379 391055778 949169903 949169903 496112238 650780749 650780749 617041104 617041104 604412036 733440272 769989428 769989428 380634506 611612803 718004289 1013973336 1013973336 384615306 384615306 342625416 443151833 443151833 958501308 958501308 474917054 415712004 209589575 119814533 755253704 755253704 642048358 376218738 352199754 352199754 365829354 365829354 828050064 828050064 289600704 451903646 451903646 807437440 807437440 621546400 755481444 755481444 610320777 193235738 620785673 746640488 746640488 771367720 771367720 569975973 749781837 1012339754 1012339754 806489129 806489129 805721107 329433355 1019099257 1019099257 898580516 898580516 942164261 942164261 911680546 1000863756 1000863756 510714178 510714178 353076224 353076224 86014240 86014240 158789572 158789572 140686020 100702608 65659100 65037392 613280841 678096345 678096345 638078988 224200777 799338401 799338401 139645696 171391220 889405518 889405518 168299548 489686634 489686634 462819468 871629434 886185898 886185898 849489905 277027428 203691466 621819690 621819690 269555268 586492304 586492304 37776081 139853960 202775052 202775052 439611042 531764094 834105440 916978523 925366587 925366587 749532419 756811844 756811844 665396480 217716139 776749981 776749981 788711136 788711136 135927300 768148940 768148940 678219076 678219076 145542533 526782804 1071780756 1071780756 768801283 925231419 925231419 89393832 581971029 581971029 713371396 713819664 713819664 34677760 796704 16777248 335612355 602713133 721535509 937691288 937691288 294701520 284994162 372983050 747667598 861944981 1000883431 1058435081 1058435081 996482580 462835973 429432206 476989030 480790906 480790906 850174359 850174359 711693712 848050627 848050627 75761736 572653569 572653569 304794112 317432896 317432896 283726146 306443488 376598154 376598154 38385160 270700546 270700546 379143194 379143194 159461457 760414725 776020125 776020125 940574528 970850742 989732823 989732823 340669983 546770626 566239202 626467296 626467296 602082475 377960801 845357200 845357200 276015246 507249620 517112774 543454080 543454080 978788195 978788195 654176160 654176160 630080978 428313402 832815874 832815874 722834372 821054896 821054896 597364317 655564791 655564791 427634598 700917060 1030672507 1030672507 827932240 827932240 816731590 409672964 409672964 277322116 288561924 288561924 31151908 365907424 1025614965 1025614965 585265404 853685668 853685668 608814002 897222147 897222147 287051298 960793388 960793388 745016609 772428648 772428648 26263568 39392896 172266548 172266548 193485008 193485008 222624428 222624428 909545688 909545688 1057491297 1057491297 812424712 354295354 437813398 1057283958 1057283958 912027712 912027712 632804105 730225936 730225936 663464023 318508077 1058950848 1058950848 451850676 451850676 272601204 272601204 267246178 303687726 303687726 253137420 282315774 282315774 342367674 342367674 764439480 785754827 785754827 740684621 679008608 679008608 657506428 673235205 796950904 796950904 403565574 300073000 298599048 298599048 10561576 92739584 92739584 153165984 153165984 140509572 165100260 700954185 700954185 236646592 774375901 774375901 451295582 451295582 1031956568 1031956568 702994917 702994917 840087380 840087380 378147930 992174156 992174156 967041399 453457974 923216650 923216650 718046401 718046401 167299044 567436557 567436557 795203704 795203704 200666100 345977332 394348376 394348376 98923432 53370104 88470496 88470496 69805728 46372112 92629280 667541704 667541704 572687992 572687992 562771041 55759536 55759536 34767008 30409440 95630184 381701936 381701936 505650440 505650440 782563513 782563513 637927705 638210065 638210065 975341822 1003230221 1011478669 1011478669 971130303 218576940 218576940 548719425 548719425 434246118 434246118 750726175 750726175 289152290 415389833 805355523 805355523 562883975 679597092 679597092 610423112 542552966 819572610 945493572 945493572 1060766662 1060766662 78460567 74778636 0 428877460 670701252 670701252 357179759 933429498 933429498 878780811 988087174 988087174 903507836 1047712671 1047712671 989765073 697879980 773374101 773374101 871023750 871023750 699061605 415871395 152256160 311624400 311624400 823788706 823788706 806429187 269484034 269484034 269484544 269484544 285392896 285392896 73525400 400720816 400720816 295838634 359731554 359731554 206844316 222388900 222388900 500186088 500186088 307262370 266347612 284375203 325494613 447927126 447927126 492176016 520493118 809024512 809024512 748850772 748850772 740559117 676285572 676285572 172375061 71438472 71438472 8979968 242881028 242881028 429266668 517612606 517612606 495855762 480647502 260518230 329314412 329314412 220906802 36177168 90735464 257936578 408274494 408274494 865672204 865672204 1038622799 1038622799 1010066052 988350812 988350812 615463899 436420160 829720352 829720352 48419280 807164409 807164409 684467712 936317559 936317559 1017851218 1017851218 718273749 1069005809 1069005809 846532696 108614040 136338616 218967084 218967084 363287490 363287490 224251644 474081802 474081802 438505872 371612694 342484362 906792778 906792778 887621067 651943064 651943064 594068913 594068913 309073947 46473792 456676178 456676178 538427266 887995918 1011666600 1011666600 780620860 468674064 477631400 477631400 539053924 738978144 738978144 231512908 203231596 151915080 18609696 690722180 786050410 786432477 786432477 839024658 839024658 282784934 282784934 819504907 819504907 20584224 29673696 307552382 396823208 396823208 529959652 529959652 478488654 478488654 280009472 476476610 476476610 411166280 82904200 76574848 367924382 509608350 509608350 459546976 459546976 513810558 841297000 841297000 657565899 862467177 862467177 850199602 638290316 117531964 980064328 999139397 999139397 671137860 770444550 770444550 464066268 464066268 437651710 498147084 533857382 533857382 848858552 848858552 826281650 987570326 987570326 440075138 944381440 944381440 644298503 438965526 867699806 867699806 772544774 441060828 441060828 536215304 536215304 434861524 434861524 44144016 44144016 807187355 807187355 809306526 809306526 258697604 258697604 833852548 833852548 431487846 648081274 648081274 432704589 406847622 624984206 624984206 557891745 811913838 811913838 549504463 477758734 424000524 464575766 706345024 861212564 861212564 698166884 679249796 422592194 494123716 494123716 438454707 1063643583 1063643583 791503261 533922520 533922520 417376502 417376502 977912996 977912996 983934277 983934277 79207488 79207488 108368960 108368960 49210264 209076314 500615934 500615934 377535262 251006984 266314628 266314628 442901422 442901422 381167536 364194120 503382406 503382406 499522568 499522568 500277528 500277528 530486892 530486892 1058595936 1058595936 706588160 706588160 590618880 195723649 187434820 450117881 888458187 909270771 909270771 639928913 639928913 594444673 691852932 691852932 824445219 824445219 688012426 685316419 673700067 672968352 294851884 193801332 203866928 203866928 195084660 138637808 87037440 815915331 816841667 816841667 813033699 813033699 739581604 416873830 807019715 807019715 575348763 795088652 795088652 976443633 976443633 359035448 484624751 484624751 392731581 547103392 752603416 752603416 646133336 685772881 685772881 618685205 551061405 213944392 348336330 555829877 1050098054 1050098054 810250271 181159773 181159773 940048707 940048707 681838917 593060422 605659252 605659252 294440034 549718132 986500311 986500311 700976914 162647398 289794210 324146258 324146258 323721968 58539232 43425296 34738704 28548608 112617144 368710216 368710216 382277456 382277456 362807658 93913352 33113824 455606952 776276335 776276335 82349204 591366485 591366485 188694324 192412596 192412596 50731056 581239072 581239072 598742130 729489668 729489668 420639940 424916118 997381399 997381399 861511778 421004838 421004838 713622391 713622391 971818252 971818252 745295658 395649468 825755904 825755904 497222160 497222160 421799468 421799468 104005990 926094382 926094382 681227293 641605401 1011807113 1017854817 1017854817 721478012 721478012 261382673 781813629 781813629 558360704 669245797 789043245 789043245 143655656 710934933 710934933 577522061 543356161 1034465378 1034465378 354587693 448006998 978979378 978979378 477441971 1011896782 1011896782 629446819 877843083 888215593 888215593 806037698 879425962 879425962 878957803 897605664 897605664 757141739 557934672 990373137 990373137 494945540 405275924 238161944 313401408 313401408 480647212 480647212 469946382 407032098 340574470 462034226 462034226 446940372 430203590 180624086 333715220 333715220 324935346 67967450 59861824 99705912 114336192 117454856 121512952 121512952 116393272 125797384 125797384 117073544 209623172 209623172 43008000 139376772 139376772 14969728 9479360 339923082 874201098 878257803 878257803 351757504 609390592 609390592 785567353 785567353 1032213613 1032213613 223160379 238027548 244985728 295897152 301864914 301864914 298911506 11538624 93981472 96720050 96720050 499718390 499718390 261417656 261417656 253585148 421012744 421012744 271118094 470827048 470827048 219169294 36106540 218280244 218280244 414154756 526974042 526974042 449265666 510465756 510465756 202960282 94353544 411266184 692109357 695631913 926971896 926971896 676146309 227806750 357950018 357950018 270346482 453384246 744875900 999474352 999474352 273563842 34212528 302521440 329043570 329043570 294979872 469550118 580997618 823349411 823349411 823267875 954700538 954700538 613570624 491522722 1050983216 1050983216 815742531 648556725 648556725 953758510 953758510 931922568 931922568 725096147 223743417 54428032 55100592 100977744 626544480 626544480 19958993 189281224 214179460 214179460 223301828 223301828 87042872 87042872 64107960 156764464 156764464 138002564 54321204 55759536 169041024 169041024 485250938 485250938 453640936 517609182 591102398 591102398 604237833 604237833 358409 41428688 117053888 277008496 388971834 388971834 380569666 380569666 454552616 454552616 228720958 212757570 539303962 541800515 607934457 607934457 733440272 733440272 338782264 380634506 380634506 147854928 1013973336 1013973336 384615306 384615306 112511832 303753850 303753850 488201362 488201362 474917054 980127870 980127870 617011401 755253704 788112628 836593864 836593864 590422640 1050116273 1050116273 801429629 186014741 784492118 784492118 950258717 950258717 807437440 807437440 715654537 845676947 845676947 610320777 473507598 521873115 521873115 693376940 693376940 607001865 569975973 749781837 749781837 774711441 806489129 806489129 805721107 833692424 833876835 833876835 898580516 898580516 942164261 942164261 911680546 528404270 528404270 413790178 211052832 92090312 8909824 11146560 93863952 158789572 158789572 140686020 100702608 89467560 98110528 613280841 678096345 705478664 772541469 772541469 799338401 799338401 82027288 628122156 889405518 889405518 218368044 489686634 489686634 462819468 871629434 886185898 886185898 849489905 378368308 203691466 621819690 621819690 607199576 607199576 785551618 785551618 440465556 440465556 202775052 439611042 531764094 531764094 732962954 803474233 803474233 726491268 762579713 762579713 651952729 652608025 776749981 776749981 788711136 788711136 734003445 768148940 768148940 537734164 180609877 180609877 812124929 1071780756 1071780756 768801283 925231419 925231419 89393832 89393832 410594476 410594476 391240361 391240361 199458165 845420939 845420939 972598767 972598767 805072417 937691288 937691288 397288970 419565606 419565606 372983050 419993568 419993568 329547008 996482580 996482580 429432206 429432206 476989030 476989030 378935898 102002256 34934530 275181704 275181704 71703752 75761736 344545288 344545288 277319962 350804296 350804296 338913432 581308945 871368714 871368714 905454024 905454024 386074288 369098802 118624824 449893006 449893006 106115736 543229572 940574528 940574528 723518928 723518928 99303081 573516232 573516232 233177376 246615810 593893936 857940929 875899659 875899659 419268509 507249620 517112774 591848670 1029988209 1029988209 978788195 654176160 654176160 630080978 428313402 832815874 832815874 291855377 747909380 747909380 597364317 655564791 655564791 427634598 700917060 700917060 546833792 546833792 305523474 305523474 82245010 194111224 194111224 149996484 136176228 31151908 365907424 365907424 159432804 159432804 618829140 618829140 178876809 67108872 154014732 154014732 203721092 203721092 99129632 95032680 251965540 251965540 159877656 172266548 177073236 232607920 232607920 993133375 993133375 188038997 413147614 1057491297 1057491297 812424712 354295354 644022588 1057283958 1057283958 713073152 713073152 315228232 730225936 730225936 631906583 296175737 859473540 859473540 451850676 451850676 371534106 505961518 505961518 352579626 151622670 397994056 397994056 282315774 342367674 342367674 764439480 785754827 785754827 740684621 696517498 536887873 657506428 673235205 874951718 874951718 687924613 413740421 700703232 700703232 555094176 139193632 16920704 90645672 90645672 70113260 165100260 479553100 479553100 364769130 980318966 980318966 648337499 677396453 1031956568 1031956568 431890278 977263528 977263528 955973740 955973740 952862540 952862540 721487889 822421539 923216650 923216650 718046401 735105110 735105110 730334325 567436557 512226899 878625276 878625276 149300577 267388280 643961241 643961241 586137936 668307265 668307265 538255656 125786624 92629280 667541704 667541704 573765336 572687992 562771041 489052318 914771070 914771070 889203835 491394222 702407282 1061703462 1061703462 505650440 46139392 141447664 193776756 193776756 536928576 975341822 1003230221 1003230221 276824130 276824130 492879024 492879024 548719425 548719425 434246118 434246118 750726175 750726175 429916350 429916350 278533698 278533698 538528256 679597092 679597092 547764557 945166983 945166983 752837632 290270370 1060766662 1060766662 270031119 842851777 842851777 834878171 834878171 636189706 908856560 908856560 929825130 929825130 988087174 988087174 903507836 1047712671 1047712671 963460158 1019322630 1019322630 684023441 871023750 871023750 699061605 415871395 421927206 421927206 311624400 823788706 823788706 806429187 838926899 838926899 827375776 827375776 303292418 285392896 273265824 487331700 487331700 406122150 405201070 438393578 438393578 264306748 432603626 510484780 510484780 417459336 301938434 372909354 372909354 447927126 447927126 437168739 271005954 809024512 809024512 338163912 438427926 509731230 571669360 571669360 376711651 1004962697 1004962697 672203501 495489124 495489124 577331293 577331293 587792767 923361393 923361393 864641323 629474050 320851456 370519600 370519600 337657896 337657896 408274494 408274494 821431932 821431932 1038622799 1038622799 474088734 988350812 988350812 665132148 1016182285 1016182285 829720352 48419280 807164409 807164409 684467712 936317559 936317559 580561084 710556193 718273749 1069005809 1069005809 846532696 108614040 245837736 245837736 420611650 420611650 363287490 148199424 474081802 474081802 438505872 1006184439 1006184439 868946180 572261672 555222561 260293728 539129680 594068913 594068913 43041280 46473792 456676178 456676178 538427266 887995918 1011666600 1011666600 780620860 468674064 477631400 1050192855 1050192855 743754573 954345226 954345226 713878413 713878413 107428248 1057366439 1057366439 299369615 708892260 839024658 839024658 892115714 1012293189 1012293189 819504907 197756144 197756144 711987400 711987400 396823208 368388926 368388926 391568058 391568058 280009472 476476610 476476610 411166280 24319200 73340962 367924382 509608350 509608350 419707118 344270922 513810558 841297000 858334515 858334515 780940942 780940942 800757024 800757024 895940120 980064328 980064328 120511800 166644088 166644088 266862736 266862736 437651710 437651710 169871260 533857382 533857382 848858552 848858552 826281650 987570326 987570326 440155010 944381440 944381440 753669992 753669992 867699806 867699806 772544774 312640896 315282642 468605494 468605494 305271570 417332934 417332934 398808366 807187355 807187355 809306526 809306526 761508755 187299879 833852548 833852548 431487846 648081274 648081274 457578542 457578542 624984206 624984206 605309512 605309512 1019400399 1019400399 995743982 995743982 940070064 601323760 601323760 737591010 737591010 679249796 422592194 422592194 210689100 903751312 927064643 927064643 285260800 134482720 170141965 565231955 565231955 977912996 977912996 807717123 770967789 770967789 745676493 742917261 922925706 922925706 682623813 305474322 728059398 835554528 835554528 802736653 802736653 985445094 985445094 972965006 364194120 364194120 97518312 225449504 228209451 500277528 500277528 993554470 993554470 271131747 228090944 943406880 943406880 581485905 331616962 836846560 836846560 888458187 909270771 909270771 639928913 639928913 594444673 691852932 829123363 829123363 960843268 960843268 673700067 673700067 779228445 779228445 639191637 700869688 700869688 92688672 92688672 51041792 815915331 816841667 816841667 936448248 1051195387 1051195387 416873830 807019715 807019715 781398621 795088652 795088652 976443633 976443633 359035448 245369096 176425044 209721608 209721608 257034776 257034776 646133336 685772881 685772881 618685205 183075013 4597834 348336330 348336330 1050098054 1050098054 810250271 844924186 844924186 940048707 940048707 749115713 672969357 672969357 605659252 294440034 549718132 986500311 986500311 700976914 162647398 289794210 324146258 324146258 323721968 43425296 43425296 34738704 28137984 28137984 19658016 120063152 371261696 371261696 259580924 259580924 42550652 44774736 73737176 73737176 33818640 329498869 949035319 949035319 867644371 943718693 943718693 751713374 751713374 650124470 729489668 1003684532 1003684532 1053389427 1053389427 997381399 861511778 672211461 907808370 907808370 853282772 971818252 971818252 745295658 486867282 465218334 465218334 497222160 497222160 421799468 421799468 104005990 205668872 205668872 594564024 743441037 743441037 760014532 760014532 639716284 777276368 777276368 781813629 781813629 588810800 669245797 789043245 789043245 634832489 710934933 710934933 577522061 543356161 1034465378 1034465378 235150707 448006998 978979378 978979378 477441971 1011896782 1011896782 629446819 877843083 888215593 888215593 684280220 684280220 418718501 418718501 552649651 552649651 539226288 557934672 990373137 990373137 960631874 405275924 238161944 523382316 523382316 480647212 480647212 469946382 407032098 447308148 462034226 462034226 413431936 163843524 414059558 438541474 438541474 327848640 364280426 397669242 397669242 343296584 77149952 153818956 153818956 133382112 155849780 155849780 102236496 49816520 156418144 156418144 139187332 139685956 159397416 159397416 874850571 874850571 878257803 878257803 551920348 839312308 1029734615 1029734615 984820871 1032213613 1032213613 223160379 238027548 244985728 244985728 43274000 54059712 54059712 60477968 108185552 108185552 25987384 14487680 238486144 238486144 217799164 215839564 240217622 336438418 503850018 521732624 521732624 513560162 513560162 330128564 330128564 403572924 403572924 495135376 495135376 510465756 510465756 371895038 236502244 248544792 371056210 636911663 926971896 926971896 676146309 362663044 357950018 428991620 428991620 453384246 744875900 999474352 999474352 508091256 271107330 302521440 329043570 329043570 376249688 376249688 580997618 823349411 823349411 823267875 954700538 954700538 582888205 582888205 1050983216 1050983216 815742531 686680612 648556725 604639936 407896387 407896387 418716352 418716352 324194994 595380866 703219233 703219233 626544480 1061166958 1061166958 675359228 486484904 663739949 663739949 263956928 771236089 771236089 743091496 721255033 721255033 766859380 985325378 985325378 1000785894 1000785894 783566200 740829310 932388990 932388990 113304643 651761265 651761265 620120761 620120761 579339345 306497682 306497682 334387490 344463656 344463656 285738018 212602188 228720958 228720958 178129942 539303962 541800515 607934457 607934457 467447196 467447196 338782264 341143665 990031191 990031191 913909659 470422542 470422542 303112722 378610176 378610176 48760272 612404418 896287984 896287984 980127870 980127870 617011401 64948665 788112628 836593864 836593864 590422640 1050116273 1050116273 801429629 186014741 784492118 784492118 950258717 950258717 67683714 715654537 715654537 845676947 845676947 419497768 473507598 626274954 822556707 822556707 693376940 607001865 205525708 205525708 303120936 303120936 356806232 356806232 388252208 833692424 833876835 833876835 1024100869 1024100869 247833031 182587860 300345560 300345560 229427144 229427144 218419722 114608856 60998306 268619632 286592448 286592448 302302400 382190480 382190480 89467560 130768104 130768104 107269128 705478664 772541469 772541469 67161109 762343968 762343968 744747405 628122156 218368044 218368044 201719812 201719812 20989952 295072 5806096 33965696 378368308 472518926 472518926 354567170 1026802963 1026802963 607199576 785551618 785551618 440465556 843112658 876839000 876839000 402776070 403808262 732962954 803474233 803474233 676371078 762579713 762579713 605866652 652608025 652608025 587601969 691405793 734003445 734003445 597349676 208047968 171264709 180609877 180609877 927729347 927729347 820720318 1072040133 1072040133 854681043 798853189 798853189 584115776 284500200 391240361 391240361 199458165 845420939 845420939 972598767 972598767 805072417 345642570 887886936 910574601 910574601 884134731 648582674 284165058 329547008 329547008 1068885628 1068885628 723669244 723669244 618709449 995496765 1040723459 1040723459 947008617 947008617 359126817 283149314 37771408 296871520 312480578 313577728 350804296 644076336 913191465 913191465 871368714 871368714 905454024 905454024 386074288 369098802 118624824 449893006 776131229 776131229 772927573 577900720 465704778 723518928 723518928 161952044 573516232 763298413 763298413 620770088 632492064 857940929 875899659 875899659 419268509 45138768 14993856 591848670 1029988209 1029988209 345117258 842822440 892780914 892780914 297540416 606482077 606482077 420735304 200894006 717025869 1015477493 1015477493 635079775 237569857 55710384 55710384 546833792 546833792 283191170 441635894 441635894 275777634 297055180 297055180 285373448 279936012 279936012 148949422 751460065 751460065 1032140531 1032140531 324077097 973152535 973152535 354418986 896025732 896025732 748224073 801057064 801057064 251965540 159877656 72273292 177073236 232607920 232607920 993133375 1065815274 1065815274 747449421 829001877 829001877 848041055 848041055 888215446 888215446 692269221 713073152 713073152 155613184 155613184 389768088 389768088 250288848 493744092 493744092 397010798 340859276 371534106 505961518 505961518 352579626 151622670 397994056 397994056 326059914 371995704 371995704 294677133 432288471 432288471 696517498 696517498 358797323 201750764 201750764 874951718 874951718 687924613 413740421 700703232 700703232 555094176 151647781 554227269 680878917 680878917 677846533 182575572 182575572 123817682 364769130 980318966 980318966 751568089 751568089 784334685 784334685 785348877 977263528 977263528 1008247042 1008247042 952862540 952862540 721487889 822421539 822421539 272948432 272948432 813214814 813214814 787868637 512575363 512226899 878625276 878625276 299132418 877968576 877968576 643961241 586137936 668307265 668307265 538255656 231583644 231583644 624067064 624067064 620824033 237817116 357357848 489052318 914771070 914771070 889203835 1033232180 1073206095 1073206095 1061703462 470847396 359452074 264258974 612681801 639520537 639520537 162396329 933889407 933889407 413831203 377536602 675726382 675726382 487118981 72768178 385925178 428003202 428003202 1056989373 1056989373 893503518 868329603 192938083 575699157 575699157 547764557 547764557 945166983 945166983 884697282 36539028 36539028 407123264 407123264 842851777 842851777 834878171 834878171 636189706 908856560 908856560 929825130 929825130 454395147 575147286 575147286 389021742 963460158 963460158 1019322630 1019322630 684023441 627056689 627056689 663063009 663063009 421927206 455655573 535418781 535418781 323160048 923861561 923861561 838926899 827375776 827375776 538443905 538443905 273265824 617210033 637780388 642046244 642046244 797077789 1007105068 1007105068 432603626 510484780 510484780 417459336 396312186 396312186 372909354 334290482 479582252 943576259 943576259 257051072 654632144 654632144 438427926 509731230 571669360 605215176 605215176 1004962697 1004962697 672203501 495489124 495489124 577331293 577331293 627049306 923361393 923361393 864641323 629474050 320851456 370519600 370519600 337657896 337657896 76022856 132904161 623327529 623327529 1044258885 1044258885 474088734 411828694 643637186 665132148 1016182285 1016182285 958278306 464988086 726009012 726009012 823999388 823999388 482619107 510172476 591316406 591316406 235964252 235964252 175369498 101749776 245837736 245837736 420611650 420611650 525312 525312 31191430 272889588 412093008 1006184439 1006184439 868946180 177352784 260293728 260293728 594004104 649929561 649929561 91189336 91189336 15729168 41993088 726807172 994075361 994075361 962578999 431171862 431171862 286339700 1050192855 1050192855 743754573 954345226 954345226 825605563 713878413 107428248 1057366439 1057366439 994179546 475665609 475665609 352321578 892115714 1012293189 1012293189 694939618 197756144 380250466 711987400 711987400 404897842 404897842 315239228 391568058 391568058 39419818 409525128 409525128 408794856 96644064 96644064 272703146 739455553 739455553 643250841 643250841 281153730 833439768 858334515 858334515 855753600 792907671 800757024 800757024 895940120 895940120 139604992 139174400 14271488 214587108 214587108 147097000 17321444 149471464 169871260 169871260 126878072 473448542 473448542 239174488 506890886 506890886 440155010 440155010 503391872 954391904 954391904 165440603 506097044 506097044 510167052 806628772 806628772 722563331 408673297 417332934 417332934 398808366 319276704 443756928 709473418 761508755 761508755 187299879 374986302 374986302 291558632 940268804 940268804 457578542 457578542 588017792 588017792 605309512 605309512 1019400399 1019400399 995743982 995743982 940070064 333053168 333053168 845313156 845313156 138625921 71209284 210689100 210689100 903751312 927064643 927064643 660479113 660479113 359818794 565231955 1020065151 1020065151 525240582 944879491 944879491 770967789 745676493 742917261 922925706 922925706 682623813 305474322 728059398 835554528 835554528 802736653 802736653 985445094 985445094 972965006 273770162 320677732 320677732 348197228 426906148 426906148 999293008 999293008 993554470 723667200 723667200 943406880 943406880 455488263 455555382 836846560 836846560 840859842 840859842 395130594 21570720 326631712 326631712 308963456 829123363 829123363 960843268 960843268 644640508 644640508 779228445 779228445 639191637 700869688 700869688 239514384 239514384 51041792 76546632 312566720 312566720 936448248 1051195387 1051195387 230935308 230935308 607269312 781398621 781398621 990153187 990153187 957796656 718105601 899515001 899515001 340148689 780472812 780472812 584907300 596422384 601172721 601172721 669369905 669369905 307614978 435572230 554944198 554944198 537135105 882480271 882480271 844924186 673893956 749115713 749115713 672969357 672969357 550085313 80741897 58769520 50331696 50331696 48267680 48267680 45697744 45697744 54358592 54358592 59280928 59280928 54922288 27820208 35160284 430965220 502400468 502400468 371261696 259580924 471982408 471982408 220324110 49428352 49428352 155422980 704832448 949035319 949035319 867644371 943718693 943718693 751713374 751713374 650124470 446699064 1003684532 1003684532 1053389427 1053389427 648099792 672211461 672211461 907808370 1003240892 1003240892 853282772 268960550 271845634 920137376 465218334 465218334 304087314 304087314 295206948 295206948 495060090 495060090 205668872 594564024 743441037 743441037 1062579558 1062579558 848592639 777276368 777276368 587731308 588810800 588810800 562503721 629659769 629852921 634832489 634832489 112489128 78384993 74058680 139474050 337655744 337655744 359347626 489362568 489362568 423627276 425986094 626301098 907019156 1012924815 1012924815 608198784 684280220 684280220 312541456 312541456 883106712 883106712 861946715 539226288 199469296 960631874 960631874 1008501513 1008501513 796024315 705091605 646619568 357402624 357402624 377351184 447308148 447308148 413431936 413431936 163843524 414059558 438541474 438541474 327848640 364280426 397669242 397669242 343296584 92107680 153818956 153818956 133382112 155849780 155849780 83047760 54198976 156418144 173041168 173041168 165267172 159397416 159397416 874850571 874850571 867882867 867882867 551920348 839312308 1029734615 1029734615 984820871 985400175 985400175 263682576 263682576 175228168 27363968 43274000 69989640 69989640 68545280 108185552 108185552 106270360 208196772 238486144 238486144 217799164 215839564 240217622 336438418 503850018 521732624 521732624 513560162 513560162 398639140 398639140 403572924 403572924 495135376 495135376 304664252 371895038 371895038 236502244 248544792 371056210 412672844 412672844 490790004 490790004 482395294 357379642 428991620 428991620 370761808 234930530 349979018 508091256 508091256 327419248 379857682 379857682 347942730 376249688 376249688 283247296 330464391 330464391 237638750 247945300 783459297 783459297 582888205 538829476 542764928 686680612 686680612 336071682 782699766 782699766 554959585 418716352 418716352 324194994 595380866 703219233 703219233 475404942 1061166958 1061166958 675359228 486484904 663739949 663739949 263956928 771236089 771236089 743091496 721255033 721255033 766859380 985325378 985325378 1000785894 1000785894 783566200 740829310 932388990 932388990 378192676 651761265 651761265 804645508 804645508 683018864 683018864 809261390 912416698 912416698 344463656 152310848 152310848 143919684 136052800 875041035 875041035 1068440879 1068440879 553746688 833098621 833098621 417157098 417157098 990031191 990031191 913909659 716382365 584982225 710285973 710285973 378610176 860488082 860488082 896287984 896287984 738985158 1066142847 1066142847 450445743 579985420 579985420 284856195 85798440 269646944 287256226 287256226 89825504 273926144 273926144 70799584 70799584 6291840 6291840 6291584 180539536 180539536 692622849 692622849 626274954 834559434 880262031 880262031 553257773 553257773 184076244 303120936 303120936 356806232 356806232 388252208 756283918 756283918 714364053 1024100869 1024100869 247833031 467113488 534336006 534336006 168423436 407791360 441326742 441326742 361816982 525413240 525413240 286592448 302302400 382190480 382190480 68605952 130768104 692973093 779739733 779739733 765349469 765349469 196836456 778076473 778076473 960758700 960758700 627202061 539263503 471238626 528956856 528956856 369263106 369263106 427346017 557102192 1041359782 1041359782 543785860 1026802963 1026802963 921952459 921952459 545658945 406589190 843112658 876839000 876839000 444653670 360718480 659649274 659649274 943852676 943852676 830217223 465357235 173327350 541758672 541758672 59393171 327794752 327804018 396407968 396407968 141463464 129032936 9963072 120661246 927729347 927729347 820720318 1072040133 1072040133 854681043 798853189 798853189 584115776 642353212 1064835117 1064835117 140656919 671426565 709627157 873157891 873157891 316939664 345642570 887886936 910574601 910574601 884134731 648582674 414480614 414480614 261513424 1068885628 1068885628 723669244 723669244 618709449 995496765 1040723459 1040723459 947008617 949389830 949389830 494981891 90274216 296871520 312480578 420046048 530702718 1042650622 1042650622 913191465 195252489 57148848 97645184 97645184 74278952 74278952 80867408 244445745 776131229 776131229 772927573 577900720 541197216 540152577 227417000 161952044 74263944 763298413 763298413 620770088 632492064 632492064 295776306 670244171 670244171 272363864 372472914 372472914 296012130 848367435 848367435 842822440 892780914 892780914 486255146 606482077 606482077 483390148 483390148 717025869 1015477493 1015477493 635079775 490588858 174663060 1062806792 1062806792 469624000 469624000 718854177 718854177 275777634 554692097 554692097 285373448 279936012 279936012 960892713 960892713 751460065 1032140531 1032140531 324077097 973152535 973152535 354418986 896025732 896025732 748224073 801057064 801057064 136839672 136839672 172991524 172991524 55969904 55969904 570841192 1065815274 1065815274 747449421 714073773 738724134 848041055 848041055 888215446 888215446 629150793 650371811 650371811 441001110 441001110 389768088 992137476 992137476 1028862173 1028862173 571746663 509692692 509692692 350575888 350575888 618746660 1029966255 1029966255 691330850 610975217 1036491506 1036491506 1033112175 1046167657 1046167657 772750365 144160186 79691976 608319624 616900809 671961317 671961317 95292488 229260772 229260772 222884904 206169228 206669312 554227269 680878917 680878917 677846533 182575572 182575572 201058224 201058224 779621672 779621672 751568089 751568089 784334685 784334685 785348877 785348877 222203732 1008247042 1008247042 538709505 535316294 650134092 872415243 993299355 993299355 972479143 972479143 813214814 1031045788 1031045788 757384023 627608620 627608620 299132418 877968576 877968576 619523529 565627593 78345569 897299745 897299745 1055929906 1055929906 651740964 620824033 620824033 63475720 67838104 67838104 655166504 655166504 572843329 1033232180 1073206095 1073206095 909773235 823731747 823731747 727674503 651965124 639520537 639520537 941624483 941624483 933889407 512229441 377536602 675726382 675726382 630609099 478786786 385925178 428003202 428003202 1056989373 1056989373 893503518 868329603 192938083 575699157 663819336 890968819 890968819 244396436 884697282 884697282 36539028 238765824 407123264 407123264 619905858 619905858 323670880 387508986 420633754 570561018 706021609 706021609 1015139393 1015139393 856269926 742990989 742990989 678538661 742253466 742253466 539881104 315360260 627056689 735024887 735024887 710620821 422257073 455655573 535418781 535418781 432659956 923861561 923861561 14650952 84984456 84984456 538443905 538443905 391910560 617210033 637780388 642046244 642046244 797077789 1007105068 1007105068 376323222 219856864 289522400 290580706 396312186 396312186 119834904 278446928 479582252 943576259 943576259 346801250 654632144 654632144 127142520 147198687 494998183 605215176 874121856 877534347 877534347 874209793 874209793 792172041 830004510 830004510 627049306 627049306 71828608 680003224 680003224 963703005 1034080623 1034080623 725707280 756813544 756813544 697307813 665314760 623327529 1044258885 1044258885 372957786 242221075 643637186 643637186 434968811 958278306 958278306 464988086 726009012 726009012 823999388 823999388 663231363 402530298 772679806 772679806 682187472 682187472 680111616 67171328 109451280 177191836 177191836 116483612 216080844 216080844 69284124 34017284 507646110 507646110 808859727 808859727 675992709 1069495979 1069495979 641037681 649929561 649929561 92702704 552261816 552261816 37855296 726807172 994075361 994075361 962578999 172371635 29885664 286339700 457839798 457839798 450961878 870939722 870939722 825605563 980313567 980313567 944872981 994179546 994179546 285348371 261162696 202048116 767616008 767616008 701048037 88412164 88412164 380250466 380250466 253920376 404897842 413664582 413664582 84644926 56849840 56849840 110725000 110725000 9454272 96644064 99033195 809771139 900081896 900081896 643250841 643250841 281153730 281153730 13011458 855753600 891740721 891740721 792907671 528623232 424773816 424773816 139604992 139174400 206782824 214587108 214587108 184815824 184815824 63344724 163713252 163713252 96469000 157650176 158877356 219719808 219719808 147103492 75497352 137691780 273745931 954391904 954391904 1015271228 1015271228 675824511 675824511 806628772 806628772 722563331 408673297 343036172 2131200 19055907 863804835 863804835 772851465 276551145 276551145 160021732 221531740 621669417 621669417 940268804 940268804 769133641 291926473 588017792 588017792 407369862 407369862 358918728 301065186 151782368 151782368 182689300 333053168 333053168 845313156 943511364 943511364 160304641 426820518 426820518 898579091 898579091 651393254 660479113 660479113 359818794 491594030 1020065151 1020065151 525240582 944879491 944879491 288053328 98774038 523401070 523401070 378849882 378849882 943999676 943999676 126658920 165337316 165337316 673984320 673984320 200063030 465939654 465939654 320677732 320677732 348197228 426906148 426906148 999293008 999293008 269508739 723667200 723667200 707465760 725165877 725165877 455555382 455555382 454559286 454559286 405105542 405105542 32214304 326631712 326631712 308963456 308963456 21348128 21348128 136179204 208722432 208722432 139850432 80214216 99794852 99794852 209409052 239514384 239514384 132388922 283251138 830947426 830947426 541366595 620954388 620954388 450818770 450818770 342396544 416025798 981931072 990153187 990153187 999379104 999379104 899515001 899515001 408326320 780472812 780472812 584907300 202584588 110574168 405465376 669369905 669369905 307614978 583564048 851462597 851462597 681381916 882480271 882480271 441190296 441190296 275786516 211094732 630719556 630719556 553771041 226523821 63675600 63675600 44985776 44985776 25959296 47777408 47777408 54358592 54358592 59280928 59280928 54922288 33805760 188237200 430965220 502400468 502400468 428348964 428348964 471982408 471982408 220324110 10629890 10629890 155422980 704832448 727761605 727761605 679735572 679735572 688684348 688684348 1060299848 1060299848 1028862832 1028862832 809660890 559989153 455103061 455103061 815792451 815792451 810035205 1003240892 1003240892 587868383 374670992 89068552 920137376 432513705 739678299 739678299 304087314 623550333 623550333 495060090 564335394 564335394 250240133 458709151 458709151 1062579558 1062579558 848592639 832120419 411767333 77733992 76178248 554065920 554065920 604769289 604769289 90651048 90651048 69220512 38014976 10520704 139474050 360223569 566256955 566256955 558965409 489362568 135472648 767674372 810303791 907019156 1012924815 1012924815 899049729 899049729 221163762 20108064 20108064 883106712 883106712 861946715 424927882 449184142 449184142 325272024 1008501513 1008501513 796024315 705091605 646619568 357402624 357402624 287914 34345232 34345232 36048912 316867792 316867792 37822816 56697264 332610024 332610024 121842314 88285752 123216016 123216016 252215748 252215748 75303288 64228080 64228080 83047760 83047760 166801456 166801456 173041168 173041168 165267172 112891340 114940058 752298538 832524125 867882867 867882867 1067485228 1067485228 537920001 39371921 998589161 998589161 985400175 310863024 631752939 631752939 484069090 467211454 467211454 69989640 74441728 266241252 266241252 190185644 343947464 418998494 418998494 294299296 202153992 202153992 171317120 171317120 239001372 239001372 143991364 205799480 398639140 485943344 485943344 287533590 281809984 192101640 192101640 15980160 38086800 115615896 115615896 302063756 412672844 412672844 352261138 482395294 482395294 184676658 223527896 370761808 409567438 409567438 349979018 349979018 341872330 327419248 379857682 379857682 347942730 28380202 0 34706499 330464391 330464391 237638750 247945300 783459297 783459297 615060897 615060897 860761596 860761596 1042024535 1042024535 782699766 876609539 876609539 830670596 830670596 326129504 174760904 165246708 242984820 242984820 194134612 194134612 159522372 228232776 228232776 190316548 190316548 188221236 159932288 227019904 227019904 4982060 8388608 282233858 282233858 521019206 562141228 747108429 960977109 960977109 735044919 378192676 378192676 480101551 804645508 804645508 683018864 683018864 809261390 912416698 912416698 123096324 366162528 366162528 467634748 467634748 875041035 875041035 1068440879 1068440879 764383512 833098621 833098621 417157098 417157098 445257924 445257924 716382365 716382365 584982225 710285973 710285973 1069556609 1069556609 996876438 506519065 978586927 978586927 1066142847 1066142847 450445743 579985420 579985420 583062977 583062977 579726417 92653120 860160 75506234 273926144 273926144 434111676 434111676 90707318 694820227 694820227 376313306 788834320 788834320 890584897 890584897 834559434 880262031 880262031 745051016 688010405 800798589 800798589 687585119 799594494 799594494 651813961 497025033 969283361 969283361 306908368 853195418 927205563 927205563 674268871 971240692 971240692 407791360 441326742 441326742 361816982 525413240 525413240 209433850 12059464 112466952 112466952 109236312 112908120 692973093 779739733 779739733 765349469 765349469 554308641 778076473 778076473 960758700 960758700 627202061 539263503 471238626 528956856 1044210704 1044210704 975986447 427346017 896634164 1041359782 1041359782 543785860 852828591 852828591 921952459 921952459 545658945 406589190 406589190 304007368 444653670 444653670 778970421 778970421 411966534 943852676 943852676 830217223 602450500 965721587 965721587 848633954 658658322 968694321 1005025719 1005025719 639247214 141463464 12264784 177345108 211369572 418908102 418908102 240065022 278353126 278353126 398208392 585084955 585084955 601234161 642353212 1064835117 1064835117 140656919 671426565 709627157 709627157 539187840 144743048 144743048 82188744 376562120 376562120 82879250 302043154 414480614 414480614 220336428 973212939 973212939 925898965 904326447 904326447 765464955 765464955 717563925 717563925 949389830 949389830 975352539 975352539 899827160 899827160 420046048 530702718 1042650622 1042650622 804461647 847335688 847335688 703676624 703676624 274913216 74278952 73395216 73395216 52297280 52297280 38060248 541197216 541197216 540152577 71049000 73281800 73281800 561316032 619053664 619053664 556345833 556345833 295776306 670244171 670244171 272363864 372472914 372472914 304115842 848367435 848367435 336004704 352982058 352982058 486255146 580715544 613755465 613755465 679959616 679959616 893634269 1055381513 1055381513 490588858 174663060 1062806792 1062806792 552390612 715506196 718854177 718854177 229711460 554692097 554692097 137716644 23374112 136760100 960892713 960892713 328357982 759169041 759169041 265154912 265154912 35912816 28266512 150999072 150999072 148001668 535355410 535355410 302093496 302093496 172991524 198553640 780617737 780617737 570841192 771876976 771876976 609446400 643261144 643261144 73830784 73830784 346198310 346198310 205705356 650371811 866437296 866437296 441001110 293823702 992137476 992137476 1028862173 1028862173 988894676 988894676 509692692 350575888 350575888 618746660 1029966255 1029966255 691330850 610975217 1036491506 1036491506 1033112175 1046167657 1046167657 772750365 566846786 607658249 608319624 699379076 969110926 969110926 160272649 622591749 753501956 753501956 206169228 206669312 206669312 24217216 23536512 87833160 87833160 161579668 201058224 201058224 67411208 67411208 143225608 143225608 195262704 195262704 632749421 632749421 250336248 625273000 625273000 620830761 604037152 650134092 872415243 993299355 993299355 972479143 972479143 217016864 1031045788 1031045788 831638668 831638668 724984159 727009849 920372655 1020447626 1020447626 637358913 637358913 897299745 897299745 1055929906 1055929906 651740964 395687002 806501944 922746939 922746939 386349114 386349114 68356610 220736058 798301990 957748045 957748045 909773235 823731747 823731747 727674503 651965124 609443412 683676864 941624483 941624483 915014751 669847793 659240121 482719904 630609099 630609099 478786786 353332746 269594596 433320678 492871980 611407886 1022160199 1022160199 1007664371 841249287 841249287 890968819 890968819 235210764 647088664 713031765 713031765 238765824 558369852 597553832 619905858 619905858 323670880 374600346 374600346 89203368 706021609 706021609 1015139393 1015139393 856269926 842342938 842342938 678538661 742253466 742253466 539881104 315360260 445242679 735024887 735024887 710620821 422257073 857735168 857735168 432659956 432659956 189648108 189648108 14650952 38793944 38793944 299653282 299653282 391910560 391910560 860561740 860561740 839574606 839574606 499668243 270540962 318020172 318020172 327169600 327169600 290580706 268773378 129636216 292045416 292045416 343933002 346801250 346801250 285963336 100747840 110488152 110488152 9740312 305862656 874121856 877534347 877534347 874209793 874209793 792172041 830004510 830004510 692912260 692912260 71828608 680003224 680003224 963703005 1034080623 1034080623 725707280 756813544 756813544 697307813 740880345 740880345 924662601 924662601 711493138 606281601 606281601 244587541 237318764 237318764 852233633 865866419 865866419 577901330 815796674 815796674 663231363 402530298 772679806 772679806 682187472 682187472 680111616 67171328 109451280 177191836 177191836 116483612 216080844 216080844 146850824 146850824 507646110 507646110 808859727 808859727 675992709 1069495979 1069495979 641037681 621950116 642912921 642912921 552261816 552261816 26341409 676995204 676995204 654850072 900176035 900176035 91164856 492715231 634270797 929694953 929694953 733383755 593278993 771054754 980313567 980313567 944872981 689440272 689440272 261162696 261162696 202048116 827409567 827409567 844375175 844375175 731049701 618250837 571490312 125990928 312430716 413664582 413664582 84644926 56849840 56849840 110725000 110725000 94556520 94556520 99033195 809771139 900081896 900081896 611632018 611632018 202803789 98701800 907984960 907984960 891740721 891740721 767229687 767229687 464510080 1011658632 1049257512 1049257512 538857724 792861506 792861506 184815824 184815824 63344724 163713252 163713252 31906368 157650176 158877356 219719808 219719808 4465408 7340928 7340928 273745931 967756608 967756608 1015271228 1015271228 675824511 675824511 448370266 527643582 527643582 461140796 461140796 320000562 222370970 863804835 863804835 772851465 702706896 702706896 193452472 441778832 621669417 776008754 776008754 1007649696 1007649696 945789357 424297892 424297892 743493732 959764673 959764673 698643395 472196489 384411626 416987398 416987398 654927575 654927575 943511364 943511364 521717630 867062382 867062382 686738921 973335133 973335133 818507406 353410754 371222536 491594030 491594030 522504510 522504510 529392976 529392976 288053328 98774038 523401070 523401070 378849882 378849882 943999676 943999676 386974266 629720169 629720169 673984320 673984320 975419062 975419062 465939654 309946176 152166948 140010784 281097153 281097153 542114018 562085985 562085985 49655251 44879184 862358100 862358100 825853879 812721027 812721027 997980087 997980087 574198144 405105542 358202986 358202986 284364224 405813092 420555214 420555214 343883658 81073474 208722432 208722432 67683336 67683336 68941320 135795240 135795240 53215232 59978352 132388922 594617265 830947426 889649320 891738147 891738147 620954388 450818770 450818770 342396544 416025798 981931072 981931072 547742331 999379104 999379104 309678996 408326320 408326320 234325728 234325728 202584588 202584588 110574168 405465376 587496864 587496864 173003126 583564048 851462597 851462597 681381916 681381916 503318223 762842284 762842284 571574209 571574209 555057152 555057152 553771041 226523821 63675600 63675600 44985776 44985776 15581696 47777408 57308208 57308208 37916672 55170352 55170352 37877952 37877952 188237200 188237200 183624660 126184792 428348964 428348964 167772272 455082260 520167524 809566447 809566447 514003274 514003274 456462472 544559524 698403265 698403265 688684348 688684348 1060299848 1060299848 1028862832 1028862832 809660890 559989153 594609349 594609349 815792451 815792451 810035205 951992077 951992077 590743643 374670992 860702930 860702930 432513705 739678299 739678299 215464064 623550333 623550333 620900361 657036090 745039291 745039291 674895621 458709151 845251085 845251085 832120419 832120419 411767333 541917233 541917233 55389360 537731080 604769289 604769289 583068640 564248641 256389109 256389109 33378048 33378048 360223569 566256955 566256955 558965409 497029732 497029732 767674372 810303791 810303791 873538059 873538059 1064289404 1064289404 260636095 51454512 51454512 646098962 646098962 514044139 518833844 518833844 449184142 325272024 67215368 3283748 151259172 154538752 388464748 388464748 19813290 408029696 462690164 462690164 422847200 422847200 316867792 44781634 56697264 332610024 332610024 121842314 88285752 123216016 123216016 252215748 252215748 171121536 172304532 172304532 177589328 182193876 182193876 216085472 216085472 143913540 205361604 205361604 147199048 411477129 629890174 724735858 724735858 1067485228 1067485228 728482720 728482720 998589161 998589161 561514401 310863024 631752939 631752939 484069090 467211454 467211454 74674688 115399000 266241252 266241252 190185644 343947464 418998494 418998494 294299296 133070968 107257384 323800194 391909022 457359518 457359518 389448766 396889170 396889170 485943344 485943344 287533590 80080970 115707856 115707856 350492902 350492902 167849356 338704536 340067204 340067204 243209284 381278684 408895110 408895110 250013530 373320328 373320328 409567438 474307888 474307888 345543364 313707626 272778122 272778122 102272856 295996322 382485352 382485352 295243634 324294338 324294338 100189450 100189450 96815200 86157448 615060897 615060897 860761596 860761596 1042024535 1042024535 475139591 876609539 876609539 830670596 830670596 326129504 35651856 171082500 171082500 186405140 194134612 194134612 159522372 228232776 1026309996 1026309996 970056423 970056423 716728081 515640087 731905653 731905653 348569075 309096435 309096435 869666419 869666419 832876231 960977109 960977109 735044919 551613960 744132877 744132877 748210604 748210604 620336113 869928134 869928134 206082729 361677834 361677834 366162528 498722670 498722670 510888766 527562474 527562474 183759828 205184380 764383512 764383512 301477227 399438106 399438106 445257924 445257924 269484544 276959298 281227336 281227336 79827144 1069556609 1069556609 996876438 454314697 978586927 978586927 537187592 862544931 862544931 477894334 563618937 583062977 583062977 579726417 388660537 294914658 75506234 75506234 570087393 570087393 561566977 923845179 923845179 1015809039 1015809039 923537543 986136757 1000204412 1000204412 901249899 901249899 810775328 745051016 688010405 800798589 800798589 687585119 799594494 799594494 651813961 497025033 969283361 969283361 1066883206 1066883206 927205563 927205563 674268871 971240692 971240692 347526422 347526422 81128136 213034538 213034538 274005966 274005966 489064340 489064340 438662540 196576448 112908120 112908120 580919904 580919904 597911088 597911088 554308641 545264736 141034884 175201424 175201424 188037300 188037300 39121456 722774688 1044210704 1044210704 975986447 38827520 896634164 896634164 658631201 315658896 315658896 229413046 229413046 210513740 228550640 228550640 1021945356 1021945356 679762638 360945892 778970421 778970421 411966534 261669976 261669976 311611986 602450500 965721587 965721587 848633954 708003159 968694321 1019631714 1019631714 700060086 136311228 136311228 177345108 211369572 261360252 261360252 196419848 17433160 93984360 379746465 585084955 806011920 852677331 868474743 868474743 859771986 588931094 542114560 543162753 543162753 1046156839 1046156839 498040797 604280952 926151483 926151483 823235419 574285138 302043154 288669815 220336428 973212939 973212939 925898965 904326447 904326447 765464955 765464955 98697447 292330376 292330376 84095016 975352539 975352539 899827160 899827160 298484626 968549910 968549910 848785702 706753117 847335688 847335688 703676624 703676624 396386304 102859738 73395216 73395216 17570896 38060248 38060248 551817728 551817728 71049000 71049000 73281800 73281800 575682840 619053664 619053664 121911880 130687896 130687896 49421576 44831744 44831744 49564160 304115842 304115842 309393936 309393936 336004704 352982058 352982058 312340345 580715544 613755465 613755465 679959616 679959616 893634269 1055381513 1055381513 776974920 208765529 577359317 582083137 582083137 715506196 715506196 209532800 229711460 272728064 406903212 406903212 90700200 163981824 336415044 336415044 284597954 401298076 401298076 393945818 374092520 100141704 84287392 20713248 86042656 86042656 535355410 535355410 302093496 302093496 77293818 247869785 780617737 780617737 743770490 771876976 1069474976 1069474976 545968784 172449440 725770440 725770440 876980235 876980235 874518533 874518533 866437296 866437296 444967302 710154642 710154642 550761153 500831982 500831982 988894676 988894676 939839580 914757723 524997822 524997822 441383144 126710916 320078404 344006730 1058595440 1058595440 699222442 699222442 390368877 661684820 943809495 1036109551 1036109551 699379076 969110926 969110926 186728784 622591749 753501956 753501956 688439936 194614836 541790821 735655045 735655045 706482277 179781524 731987889 731987889 44614992 571632769 571632769 50661424 50661424 68215472 68215472 632749421 632749421 250336248 1027404706 1027404706 819443585 904371681 904371681 1023879171 1023879171 792889888 1060685439 1060685439 484795100 336204810 403328012 831638668 831638668 724984159 727009849 920372655 1020447626 1020447626 891377312 637358913 627832233 347214848 1019009594 1019009594 681591808 681591808 874909740 958662951 958662951 386349114 386349114 68356610 220736058 798301990 957748045 957748045 479416528 479416528 245966172 583791812 615064905 742009113 742009113 683676864 659036429 669847793 669847793 755652021 755652021 938536127 938536127 85011160 269594596 269594596 433320678 433320678 611407886 1022160199 1022160199 1007664371 841249287 841249287 291116706 297928256 297928256 647088664 713031765 713031765 210896477 558369852 606293060 606293060 171095040 937242986 937242986 232130609 125963004 369595100 433186462 433186462 422000934 493892226 842342938 842342938 172438147 171182868 412369860 813686677 813686677 637518448 983892821 1039695548 1039695548 693509658 857735168 1072939559 1072939559 753927117 753927117 730073205 730073205 363583765 352289024 564923185 564923185 33661960 640542073 860561740 1043447115 1043447115 952721412 952721412 919142710 318020172 318020172 327169600 327169600 287050336 346117442 346117442 292045416 292045416 291219680 291219680 129412712 129412712 100747840 110488152 110488152 290855586 305862656 332704320 332704320 731513556 731513556 558503073 536422398 773701049 773701049 692912260 908657280 908657280 955092514 955092514 62744080 62744080 96027200 96027200 110477896 110477896 104074008 740880345 740880345 924662601 924662601 711493138 606281601 606281601 924454506 1056706157 1056706157 852233633 865866419 865866419 577901330 815796674 815796674 566963571 334764720 714179200 714179200 671475717 582041877 570691408 12365056 11101568 13513344 14907392 14907392 207300108 207300108 146850824 146850824 118896560 101001240 731910964 731910964 619204988 619204988 185483868 185483868 621950116 642912921 642912921 122030625 881349314 881349314 676995204 676995204 654850072 900176035 900176035 91164856 492715231 634270797 929694953 929694953 733383755 593278993 593278993 563541469 409297080 663915447 689440272 689440272 692067473 692067473 638393352 827409567 827409567 844375175 844375175 731049701 618250837 571490312 374705604 486580500 486580500 337479742 230822124 230822124 176300880 503634572 503634572 483979136 94556520 67463720 67463720 742449602 742449602 611632018 611632018 485499991 509365726 907984960 907984960 841783248 670074569 767229687 767229687 464510080 1011658632 1049257512 1049257512 538857724 792861506 792861506 182059044 24903792 32952832 32952832 31906368 31906368 14224128 14224128 10231936 9154696 71115264 71115264 208929188 208929188 967756608 967756608 816600660 816600660 344460378 344460378 135160890 122371488 405079998 461140796 461140796 320000562 222370970 390274046 452250048 1042090766 1042090766 702706896 193452472 441778832 441778832 776008754 776008754 1007649696 1007649696 1005269334 1005269334 684682625 743493732 959764673 959764673 831416005 472196489 384411626 416987398 416987398 654927575 904520256 904520256 355005650 521717630 867062382 867062382 686738921 973335133 973335133 818507406 491996232 491996232 406857760 406857760 522504510 522504510 153245722 101761560 58550848 90384840 90384840 27605984 30673632 1048601216 1048601216 386974266 386974266 629720169 629720169 577598467 577598467 975419062 975419062 170148352 170148352 85282968 152220728 281097153 281097153 542114018 562085985 562085985 49655251 593847728 862358100 862358100 825853879 812721027 812721027 997980087 997980087 574198144 278618920 358202986 358202986 95962048 405813092 420555214 420555214 343883658 416792586 416792586 402961088 67683336 67683336 68941320 135795240 135795240 18791428 71235617 554163976 594617265 594617265 889649320 891738147 891738147 604248251 365011275 639802121 639802121 382044659 631253994 631253994 590473304 4195488 17307168 50988576 544228192 544228192 34611712 554708072 614280777 614280777 951711345 951711345 587496864 587496864 170967828 922862352 1013248511 1013248511 181363523 853458447 853458447 762842284 762842284 571574209 571574209 553697313 553697313 536920065 725760645 725760645 568731632 718848388 718848388 15581696 7172032 57308208 57308208 32496288 34532752 34532752 37877952 37877952 252185636 322773868 322773868 126184792 126184792 78120264 167772272 455082260 520167524 809566447 809566447 514003274 514003274 456462472 168245813 698403265 698403265 673857880 754378596 754378596 994226776 994226776 356188370 745538950 745538950 594609349 594609349 338368067 534319650 534319650 951992077 951992077 590743643 374443138 860702930 860702930 58817476 192338868 192338868 185073060 573174048 620900361 620900361 657036090 745039291 745039291 745539244 745539244 402195650 624102416 658456377 658456377 242554496 626142729 772936221 772936221 756520457 789936868 789936868 583068640 564248641 256389109 256389109 551740064 557020544 557020544 93487680 114299680 114299680 497029732 497029732 338872322 782450705 782450705 222372516 187187493 1064289404 1064289404 787548005 787548005 66093562 1044549749 1044549749 514044139 518833844 518833844 138970428 792545368 792545368 920423509 920423509 669201820 669201820 388464748 342792320 408029696 539145251 539145251 1000477088 1000477088 838878612 304210480 304210480 303281538 295772514 47579904 38799504 33820848 39589664 39589664 38797840 171121536 172304532 172304532 205578752 205578752 205570188 216085472 216085472 158285220 205361604 205361604 147199048 411477129 629890174 629890174 478583817 484528521 813954311 813954311 818019302 818019302 587248530 561514401 103551665 68027392 68027392 0 0 35799040 74674688 115399000 115399000 82838016 81789384 48772080 48772080 70186160 99359160 99359160 17635672 323800194 391909022 457359518 457359518 389448766 396889170 396889170 380374362 303282280 401266170 401266170 401266170 409519494 409519494 505487646 505487646 338704536 340067204 340067204 211626150 426394946 426394946 408895110 276158892 446392050 446392050 112011970 474307888 474307888 348305090 299506728 299506728 79203194 102272856 295996322 382485352 382485352 295243634 580311633 580311633 711984021 711984021 578229105 197593969 538825344 538825344 738931856 738931856 843972741 843972741 374736403 345246728 337915852 604635140 673793668 673793668 702796276 702796276 171082500 186405140 186405140 58785904 26217536 234757006 1026309996 1026309996 970056423 970056423 716728081 515640087 731905653 731905653 348569075 991127462 991127462 869666419 869666419 832876231 582095697 584582865 584582865 551613960 744132877 744132877 748210604 748210604 805943968 944889504 944889504 990414342 990414342 361677834 356784548 498722670 498722670 510888766 599862371 599862371 478961876 226603324 603480628 798004960 798004960 252392508 401343676 401343676 269484544 988819541 988819541 646847577 678653589 678653589 978828219 978828219 352393425 85019844 624459904 624459904 537187592 862544931 862544931 477894334 563618937 563618937 565305968 565305968 388660537 547512675 901161624 901161624 570087393 570087393 561566977 923845179 923845179 1015809039 1015809039 923537543 995644598 1000204412 1000204412 901249899 901249899 359202657 202404132 202404132 196740712 724606488 724606488 681499229 627904850 627904850 553930414 553930414 550712001 1066883206 1066883206 226632432 408031602 408031602 305534144 305534144 347526422 385751708 443211150 443211150 363091168 274005966 432476324 489064340 489064340 438662540 196576448 117125840 191865452 754477468 754477468 545604880 545604880 142217728 142217728 141034884 175201424 175201424 188037300 188037300 39121456 722774688 1063319709 1063319709 719807410 743732176 743732176 658631201 658631201 315658896 390221958 390221958 445480294 445480294 228550640 446910146 1021945356 1021945356 679762638 484318878 300395832 300395832 165451848 713933412 713933412 503915550 503915550 736116833 736116833 708003159 708003159 514512222 1019631714 1019631714 700060086 136311228 136311228 135279104 135279104 230529834 343985614 343985614 318951474 176200116 408688076 408688076 806011920 852677331 868474743 1053788064 1053788064 588931094 136591376 178004544 178004544 1046156839 1046156839 498040797 604280952 926151483 926151483 823235419 574285138 11055816 11055816 67108872 67108872 68470912 69356288 162819352 193936500 193936500 171904024 95995584 406701176 406701176 230306150 162215268 178852968 622247448 622247448 298484626 968549910 968549910 848785702 530814990 599686134 663839575 663839575 606047344 396386304 102859738 77100608 77100608 49888344 69321624 77399504 551817728 608738120 608738120 78529985 20841256 73535880 575682840 588383977 588383977 124281648 121911880 88945296 88945296 92028840 614931929 618078080 618078080 589655857 551744336 863554976 863554976 538950610 850142800 850142800 380186568 916971738 916971738 109699072 269533698 305950110 452791808 776974920 776974920 545866752 572927188 582083137 582083137 141619732 678131205 678131205 144779588 675481473 675481473 406903212 143402308 163981824 566602849 566602849 284597954 592283281 592283281 393945818 374092520 100141704 85725704 85725704 119104312 119104312 117839928 70253832 70253832 127399496 127399496 247869785 785867532 785867532 1072628825 1072628825 1069474976 1069474976 994849811 994849811 725770440 725770440 876980235 876980235 874518533 874518533 648052791 465619031 991189250 991189250 710154642 550761153 1007226976 1007226976 511779190 939839580 939839580 914757723 524997822 524997822 441383144 126710916 1024821793 1024821793 1058595440 1058595440 742589889 742589889 98701800 661684820 946890371 1036109551 1036109551 242543550 883789355 974744921 974744921 472569045 174798228 688439936 803247336 803247336 541790821 735655045 735655045 706482277 179781524 731987889 731987889 170998880 571632769 571632769 8509056 13231296 230602320 230602320 139253884 172492288 243357124 1027404706 1027404706 819443585 904371681 904371681 1023879171 1023879171 1006672530 1060685439 1060685439 906195330 1006570840 1006570840 828925772 828925772 1015886312 1015886312 679999557 762704616 891377312 891377312 855847062 998315058 998315058 1019009594 1019009594 681591808 681591808 874909740 958662951 958662951 810078363 878626448 878626448 536938113 374418575 937100340 937100340 802895613 761094278 775817748 775817748 676980493 742009113 742009113 784605336 784605336 662836621 558367905 755652021 755652021 938536127 938536127 303153908 432087270 433690355 964874491 1031983215 1031983215 803356278 803356278 734028961 734028961 818020740 950145351 1054937557 1054937557 748757325 336644043 206120076 150730496 1021155598 1021155598 606293060 1012668571 1012668571 937242986 844362387 844362387 802454254 802454254 248562396 8788032 42275408 848300608 848300608 991091388 993186615 993186615 813686677 813686677 637518448 983892821 1039695548 1039695548 693509658 708048022 1072939559 1072939559 753927117 816442531 816442531 780449338 780449338 709698688 564923185 564923185 628147040 640542073 951373641 1043447115 1043447115 952721412 952721412 919142710 577802628 577802628 869870667 1027891839 1027891839 538178049 581243281 880632832 880632832 269812426 4019330 119554208 125249897 125249897 88338600 176044997 660246597 660246597 723281013 723281013 642476200 723517749 723517749 689630968 536422398 285488948 713230067 908657280 1068236812 1068236812 955092514 805306388 353160234 898387066 906808435 906808435 518007051 289703112 787824324 787824324 994784439 994784439 289780487 271034755 259133870 924454506 1056706157 1056706157 187318212 467277558 467277558 140910224 712589060 712589060 445916227 391984954 391984954 284169224 137313540 293650961 832611683 832611683 808636409 609745545 298318050 874114210 874114210 585160288 296439960 436287234 436287234 405276815 405276815 566514781 663406852 663406852 732326917 732326917 256351448 623588649 623588649 52965401 881349314 881349314 625831945 225321357 562625410 562625410 338408778 120169680 192938100 395646502 427554726 509513632 509513632 485490126 563541469 563541469 497339858 663915447 663915447 435766316 692067473 692067473 638393352 638393352 118699064 168027168 168027168 370875976 534454682 534454682 527999200 486580500 486580500 488312652 488312652 461846646 185478960 503634572 503634572 483979136 48499568 64912521 628824841 628824841 973218325 1047552213 1047552213 817998778 509365726 810992856 841783248 844405120 895871403 895871403 475349797 17671168 288386336 288386336 20366626 17980576 17980576 41025936 41025936 132256248 132256248 77071032 72357760 68447496 346877770 346877770 83765896 340789770 340789770 79972864 208929188 208929188 361741285 430828902 816600660 816600660 1069860729 1069860729 550391620 122371488 103024920 220388392 220388392 506857112 511705067 920769063 920769063 1042090766 1042090766 587834477 436317461 630028600 789257273 789257273 963362976 963362976 407089431 1005269334 1005269334 684682625 684682625 683005445 831416005 831416005 787063538 840970964 840970964 343976032 464176810 904520256 904520256 67294197 242486172 268698526 907543232 907543232 571214865 890428428 890428428 491996232 491996232 406857760 406857760 497222702 497222702 151031930 319515752 319515752 109461240 488636718 488636718 499126542 1048601216 1048601216 577072034 618093353 866085537 866085537 404884484 271833044 271833044 58881314 208721168 208721168 101957788 152220728 152220728 24692640 751770909 751770909 600577076 600577076 718254292 718254292 717704597 714903585 714903585 894969739 894969739 720050384 281025544 298454304 298454304 424156388 424156388 357662082 691240333 691240333 627171753 676403273 676403273 704721296 704721296 743904397 743904397 738931725 553923616 1073265911 1073265911 1065935702 808923490 1046090239 1046090239 355282218 604248251 604248251 64434194 639802121 639802121 632525376 632525376 631253994 590473304 721436896 721436896 427852534 965784064 965784064 38764865 770889504 772560585 785041881 951711345 951711345 911584047 380111361 170967828 922862352 1013248511 1013248511 181363523 853458447 853458447 486615080 537219135 537219135 453150752 217819996 217819996 137362692 725760645 725760645 568731632 718848388 718848388 9258368 6859840 24836064 40248256 40248256 14993856 23236736 52652096 61096048 252185636 322773868 329752640 329752640 78120264 78120264 294650644 294650644 732037928 732037928 866193602 870318579 870318579 864364659 864364659 989686247 989686247 759558373 818745450 818745450 1017442923 1031106602 1031106602 745538950 745538950 338179082 440014526 1066546894 1066546894 328022221 537723998 537723998 1027257862 1027257862 962744599 649932633 58817476 192338868 192338868 185073060 611061376 611061376 538444288 556741768 556741768 690248465 745539244 745539244 610367713 1034329559 1034329559 950799687 935081017 626142729 772936221 772936221 756520457 789936868 789936868 242583948 242583948 61742448 15463872 551740064 557020544 557020544 93487680 130046520 130046520 104106240 104106240 349397671 782450705 782450705 765534573 805840238 916038909 916038909 787548005 787548005 127091560 1044549749 1044549749 16777248 16777248 138970428 138970428 792545368 792545368 920423509 920423509 688010688 688010688 115318964 342792320 342792320 539145251 539145251 1000477088 1000477088 838878612 320422336 304210480 303281538 588235961 588235961 33820848 550581289 550581289 255076196 268250804 709370964 717751509 717751509 636157177 576841349 205570188 591563125 591563125 218838060 665004252 665004252 657265745 581464498 285798400 835026288 835026288 987488176 987488176 878657163 818019302 818019302 587248530 616207362 966052462 966052462 761790535 406896676 413696942 413696942 102364776 102364776 256248548 256248548 189217828 346526728 346526728 308991378 291763616 99359160 40440992 40440992 33818640 291650176 321987378 374944224 374944224 401471864 401471864 357351810 401266170 401266170 401266170 409519494 409519494 505487646 505487646 334995522 334046358 236532126 306250320 426394946 487111326 487111326 276158892 446392050 446392050 180922912 372882008 372882008 348305090 299506728 299506728 79203194 68808512 68808512 38301120 77651032 104225088 580311633 580311633 711984021 711984021 604260968 563527796 264536712 195226100 738931856 839133954 843972741 843972741 374736403 337915852 444663301 444663301 853544584 853544584 841289491 719654295 914634508 914634508 814294083 378082335 633265356 752780239 961841312 961841312 299634402 368189048 368189048 61866864 36177168 36177168 31668160 991127462 991127462 715284736 713289813 598868000 582095697 584582865 584582865 686833536 686833536 539431044 699284128 699284128 805943968 944889504 944889504 990414342 990414342 8652864 8700992 8913984 214606344 214606344 599862371 599862371 478961876 226603324 603480628 1038571598 1038571598 935223885 935223885 401343676 815120580 988819541 1043616599 1043616599 803699568 678653589 978828219 1025775368 1025775368 840575941 840575941 624459904 245762964 245762964 674890636 674890636 879838978 879838978 554961712 554961712 284069250 547512675 901161624 901161624 558854868 506069754 322697010 103440938 638165008 638165008 792733872 792733872 995644598 995644598 1001785550 1001785550 826188875 930465661 930465661 82985212 196740712 724606488 879231408 879231408 627904850 627904850 553930414 553930414 550712001 836282328 836282328 906373632 906373632 288818021 670437688 670437688 180537118 385751708 443211150 443211150 363091168 243786940 432476324 432476324 366409930 333246072 117125840 117125840 191865452 754477468 754477468 700218533 545604880 710414936 710414936 537271040 537271040 645298834 707955611 707955611 247849425 810020504 1063319709 1063319709 929138484 929138484 743732176 600646768 366122122 114943128 390221958 390221958 445480294 445480294 304547858 446910146 446910146 437164238 484318878 484318878 564398545 564398545 545838730 827081914 827081914 503915550 503915550 193460340 193460340 343143306 343143306 353419818 353419818 296240968 190859712 190859712 85983492 135279104 238035436 261821984 343985614 343985614 318951474 176200116 476556749 522998115 522998115 417462532 445572176 1053788064 1053788064 136591376 136591376 178004544 178004544 752554120 752554120 377886810 377886810 375525786 375525786 114492370 371950290 371950290 997769492 997769492 923276731 741769508 741769508 201724735 193936500 193936500 895533059 895533059 406701176 406701176 230306150 175337768 640714389 640714389 758235664 758235664 273278082 601172768 601172768 58462128 348914922 348914922 381545706 400305552 400305552 104180722 77100608 237145929 700247397 700247397 694534501 676586444 739170445 739170445 211235012 211235012 107217624 678508813 678508813 613446272 587281728 587281728 88945296 88945296 581510481 614931929 618078080 618078080 589655857 551744336 863554976 863554976 538950610 850142800 850142800 582552385 916971738 916971738 109699072 572582417 683878405 683878405 708327377 708327377 545866752 577318481 577318481 687331780 715981456 715981456 678131205 144779588 675481473 675481473 143402308 143402308 142578820 566602849 566602849 299362034 592283281 592283281 333319824 333319824 285476898 287080546 293868420 293868420 252633772 526451906 526451906 122290240 127399496 167845908 167845908 785867532 785867532 1072628825 1072628825 792290354 792290354 994849811 994849811 697943580 697943580 696579680 580366973 855966435 855966435 943792320 943792320 991189250 991189250 385838202 477107945 1007226976 1007226976 946024839 795940251 957481732 957481732 778733310 778733310 500433324 605438637 1024821793 1024821793 671475818 922213315 922213315 810991898 98701800 686916912 946890371 946890371 242543550 242762880 883789355 974744921 974744921 818014916 818014916 798650629 803247336 803247336 215590097 22029952 24724896 24724896 17882880 195243844 195243844 170998880 170998880 7048404 8509056 13231296 230602320 230602320 139253884 172492288 172492288 346811395 497529900 497529900 356734795 746484450 816498031 816498031 1006672530 1006672530 850298711 906195330 1006570840 1006570840 828925772 828925772 1015886312 1015886312 272838786 763364626 763364626 628437303 855847062 998968619 998968619 33689632 668491826 668491826 510419970 846015972 929161659 929161659 810078363 997589888 997589888 674485637 494099330 937100340 1042698903 1042698903 761094278 775817748 775817748 714539020 676980493 743179481 784605336 784605336 778195216 572922136 955022345 955022345 646414363 646414363 1049537662 1049537662 805930710 964874491 1031983215 1031983215 963472723 803356278 734028961 734028961 818020740 950145351 1054937557 1054937557 748757325 888669067 888669067 350733268 1021155598 1021155598 548148034 1012668571 1012668571 805367949 844362387 992480496 992480496 802454254 248562396 8788032 42275408 848300608 848300608 991091388 993186615 993186615 422578997 275153574 577280288 592370865 860541333 860541333 646784148 646784148 192710460 460640904 590934201 816442531 816442531 780449338 780449338 709698688 27542976 27542976 628147040 628147040 951373641 951373641 868237340 868237340 946869628 946869628 577802628 577802628 869870667 1027891839 1027891839 538178049 581243281 880632832 880632832 269812426 4019330 79535388 125249897 125249897 88338600 176044997 660246597 660246597 723281013 723281013 642476200 723517749 723517749 689630968 191174984 285488948 713230067 713230067 1068236812 1068236812 805306388 805306388 353160234 898387066 906808435 906808435 518007051 289703112 787824324 787824324 994784439 994784439 680041025 546718789 154937892 564537157 564537157 187318212 187318212 442373398 442373398 140910224 42342480 212016790 355868654 391984954 999334459 999334459 159555760 964807131 964807131 832611683 808636409 609745545 298318050 874114210 874114210 585160288 296439960 436287234 436287234 405276815 405276815 566514781 663406852 663406852 732326917 732326917 287991966 623588649 623588649 159514916 562105448 973080618 973080618 783225945 455156023 966733916 966733916 120169680 115772296 395646502 427554726 427554726 205230510 481036416 481036416 497339858 497339858 535578110 535578110 435766316 173357668 47450816 47450816 51587584 51587584 43048032 180742324 370875976 370875976 527999200 527999200 86090532 86090532 488312652 488312652 461846646 185478960 385807972 385807972 362379368 48499568 64912521 628824841 628824841 973218325 1047552213 1047552213 817998778 926941744 927990459 927990459 1007748088 1007748088 895871403 704384997 704384997 994365328 994365328 961175144 574829652 759599602 759599602 256771148 132256248 132256248 77071032 72357760 68447496 346877770 346877770 83765896 340789770 340789770 79972864 79972864 78027457 361741285 430828902 430828902 366090600 1069860729 1069860729 976214302 976214302 940096570 940096570 975521082 975521082 511705067 920769063 920769063 892957327 506536734 506536734 436317461 828765760 828765760 789257273 963362976 963362976 589330435 323113120 302039058 21139634 173682563 813504148 813504148 546907713 787063538 840970964 840970964 223110278 945256201 945256201 976824087 976824087 238890780 577482308 907543232 907543232 571214865 890428428 890428428 151046144 321470756 321470756 887382063 887382063 497222702 864412809 864412809 319515752 270661092 488636718 488636718 499126542 499126542 577072034 577072034 618093353 866085537 866085537 546838370 290048675 499124276 499124276 363626926 363626926 101957788 72466944 248350164 248350164 751770909 751770909 600577076 600577076 718254292 718254292 717704597 714903585 714903585 894969739 894969739 720050384 281025544 298454304 298454304 424156388 424156388 357662082 691240333 691240333 627171753 676403273 676403273 704721296 704721296 743904397 743904397 738931725 553923616 1073265911 1073265911 1065935702 888149381 1046090239 1046090239 355282218 715207936 812327251 812327251 675283077 440606917 632525376 632525376 578846872 578846872 721436896 721436896 678201617 965784064 965784064 582952658 974220036 974220036 785041881 854717157 911584047 911584047 380111361 874257026 874257026 668606451 957381048 957381048 1019971512 1019971512 275311024 275311024 237121672 237121672 217819996 217819996 137362692 21638976 197470452 197470452 156445636 136824976 64283616 49962848 63618880 63618880 40248256 65792480 65792480 52652096 61096048 61096048 53251408 329752640 329752640 477019084 488730752 488730752 294650644 732037928 934558386 934558386 938484968 938484968 864364659 864364659 989686247 989686247 759558373 881513547 881513547 1017442923 1031106602 1031106602 727785745 824191826 824191826 947200159 1066546894 1066546894 960237351 960237351 435140357 1027257862 1027257862 962744599 649932633 302513015 699401061 699401061 199755252 1002099331 1002099331 73337224 556741768 556741768 713407073 713407073 732213721 900548682 1034329559 1034329559 950799687 935081017 538974056 172331460 674083221 674083221 595614496 223538157 242583948 242583948 179902324 961631186 961631186 200462325 270678358 270678358 315900610 315900610 88404000 397023130 397023130 384635128 620406824 765534573 805840238 805840238 875143395 883549515 883549515 612975947 574706915 832916770 954994119 954994119 851199925 556320033 168011632 168011632 111468924 180099168 688010688 700486336 700486336 689099301 3326245 47867328 47867328 54109200 271189760 320422336 320422336 20515538 63607512 588235961 588235961 23068320 592462072 592462072 255076196 411944962 711517524 719898069 878514127 878514127 576841349 438739586 591563125 591563125 273766678 665004252 665004252 657265745 581464498 285798400 835026288 835026288 987488176 987488176 890736928 890736928 875948811 498338862 616207362 966052462 966052462 761790535 406896676 413696942 456663120 456663120 294858990 256248548 256248548 189217828 346526728 346526728 308991378 291763616 21636496 40440992 355543978 355543978 291650176 321987378 374944224 374944224 401471864 401471864 357351810 357351810 233473092 212334924 21258540 12718272 13105344 334995522 334995522 173215812 236532126 306250320 372073940 487111326 487111326 530099452 530099452 340787850 180922912 434234152 434234152 204120664 204120664 114334112 253529652 253529652 186404412 536643116 536643116 310790894 310790894 113508360 771278728 771278728 604260968 563527796 968280894 968280894 738795536 839133954 839133954 711460245 711460245 181864964 444663301 444663301 853544584 853544584 841289491 719654295 914634508 914634508 814294083 378082335 633265356 752780239 961841312 961841312 988597719 988597719 967836519 982914144 982914144 908315442 908315442 639292953 715284736 796922000 796922000 566367197 566367197 543721020 226676844 686833536 686833536 539431044 699284128 699284128 698367840 288425264 288425264 425304244 425304244 63179942 30618336 5896932 226758860 528940184 528940184 508135112 508135112 244409436 195138018 1038571598 1038571598 935223885 935223885 920548496 920548496 952445327 1043616599 1043616599 803699568 651430617 781767386 1025775368 1025775368 840575941 840575941 477263336 477263336 245762964 674890636 674890636 879838978 879838978 554961712 554961712 153931044 210360128 210360128 194245236 353055084 1067628761 1067628761 700713189 873325804 873325804 792733872 792733872 738535437 303868594 1001785550 1001785550 826188875 930465661 930465661 131480397 82985212 572424976 879231408 879231408 566336929 222733427 240521879 889327659 889327659 836282328 887883375 906373632 906373632 823580062 823580062 670437688 180537118 238162832 238162832 208475164 105380124 241324220 241324220 126132500 198864688 198864688 142325344 55102240 55102240 172860320 700218533 700218533 364435326 710414936 710414936 674541508 921244453 921244453 707955611 707955611 958998536 958998536 810020504 622177308 929138484 929138484 913505545 614876802 614876802 346763082 346763082 105262210 276338354 281306290 304547858 304547858 311770448 315656720 315656720 34543808 564398545 564398545 545838730 876682345 876682345 885249097 885249097 478590023 424928304 424928304 89716488 327856892 959293002 959293002 605883234 249496036 249496036 60824544 238035436 261821984 261821984 157815428 157815428 134046616 476556749 1017543800 1017543800 417462532 445572176 853820881 853820881 654371288 654371288 541452417 122283192 514975914 514975914 377886810 377886810 375525786 375525786 206450808 371950290 371950290 997769492 997769492 923276731 741769508 741769508 201724735 393088408 393088408 895533059 895533059 146090161 98775176 123340419 175337768 640714389 640714389 758235664 758235664 417138580 601172768 601172768 58462128 348914922 348914922 381545706 466678041 710450935 745925517 745925517 563614124 700247397 700247397 694534501 676586444 739170445 739170445 546707968 211235012 107217624 678508813 678508813 613446272 587281728 587281728 53343344 295964002 581510481 583598464 583598464 867655184 867655184 578089984 578089984 329135027 844854080 844854080 582552385 582552385 548700928 539832705 10956544 572582417 683878405 683878405 708327377 708327377 148461137 577318481 577318481 687331780 715981456 715981456 159780512 164497440 698224304 698224304 676790800 234930204 234930204 296989730 422815272 422815272 798322995 798322995 764287039 764287039 341187003 287080546 631397094 896846763 896846763 558620480 526451906 122290240 290201728 290201728 286075938 760887127 760887127 726799029 726799029 739831828 739831828 254683656 237179168 362679416 696579680 696579680 544262389 855966435 855966435 943792320 943792320 865121315 522859415 522859415 428576946 741597519 946024839 946024839 795940251 957481732 957481732 919241836 778733310 500433324 969672552 969672552 155637924 88369537 922213315 922213315 973004775 973004775 807433767 686916912 405922724 373369478 373369478 242762880 912769616 912769616 818014916 818014916 798650629 761524653 678683336 64524624 53196480 53196480 40911584 39172624 39585808 39585808 20655392 27954608 56421616 57517856 57517856 17376288 35725592 67108872 100871560 108844288 277911296 279631170 279631170 213129576 761623660 761623660 556584225 233124933 147130828 158864640 225653676 225653676 269748362 566766100 798894719 798894719 984427863 984427863 1043020065 1043020065 695599232 695599232 998968619 998968619 735042776 835649702 835649702 574935040 846015972 929161659 929161659 880185912 997589888 997589888 674485637 913568312 913568312 1042698903 1042698903 238555356 778698900 778698900 841744658 841744658 743179481 743179481 778195216 778195216 719852740 955022345 955022345 646414363 646414363 1049537662 1049537662 805930710 173176018 1009212812 1009212812 963472723 405612870 1038975278 1038975278 354436333 426382758 871563588 871563588 574170897 888669067 888669067 350733268 209450892 209450892 127037232 906092560 906092560 633420004 242036124 992480496 992480496 235455516 235455516 352356104 853573760 931135841 931135841 989904951 989904951 823214133 730208373 730208373 811221925 966085733 966085733 814340101 580281394 34702453 103507664 105592600 740334488 740334488 710335125 124646925 48552704 48552704 31801728 31801728 400404704 609959934 750243445 750243445 868237340 868237340 946869628 946869628 706253824 706253824 770581 899033440 899033440 392093370 392093370 92873264 92873264 299360034 352280194 352280194 338441120 17023168 29569248 43159646 490976850 490976850 42806352 499614856 871100518 871100518 1044170059 1044170059 944927463 261026644 350898956 704568198 957798413 957798413 519079539 417351264 229268896 229268896 243810360 243810360 748803788 748803788 680751741 713041520 713041520 680041025 680041025 561252130 193011828 234882345 547956033 623141293 686607813 686607813 537117845 537117845 152909686 455491120 455491120 184498960 999334459 999334459 159555760 964807131 964807131 42152016 36838160 34808064 37100304 37100304 34810112 136192788 136192788 204341776 204341776 34610444 17437600 604656192 613992009 782205057 1011677293 1011677293 654311601 654311601 304612636 304612636 224397354 973080618 973080618 783225945 455156023 966733916 966733916 278933936 65217584 82127896 82127896 67143688 67143688 481036416 481036416 291593094 296088504 296088504 107144058 173357668 173357668 50331696 47450816 59524704 59524704 43048032 180742324 180742324 142918656 142918656 321538592 321538592 186197556 289174800 403627014 403627014 97068264 227473216 227473216 70927592 73292216 73292216 53554432 117504992 734189604 734189604 168894996 184558096 926941744 927990459 927990459 1007748088 1007748088 788137831 704384997 704384997 994365328 994365328 961175144 574829652 759599602 777967381 777967381 737074677 737074677 597629036 614798664 679030660 679030660 210347340 43188544 45232832 48366656 60461328 60461328 57049680 178035012 178035012 173329044 366090600 366090600 600623744 996823705 996823705 940096570 940096570 975521082 975521082 587678850 587678850 829064424 829064424 754716649 600911639 673451063 828765760 828765760 731689014 307170484 589330435 589330435 325848498 325848498 298256530 284114370 813504148 813504148 1068893777 1068893777 411710676 411710676 223110278 945256201 945256201 976824087 976824087 469282614 577482308 585235024 585235024 505887006 481006400 429468234 151046144 298236930 298236930 887382063 887382063 406921350 864412809 864412809 281653312 281653312 393359732 393359732 194245236 194245236 341174922 341174922 237492362 520438496 546838370 546838370 292103952 499124276 499124276 363626926 363626926 220041396 220041396 248350164 248350164 69593352 214693068 214693068 583360656 682096965 682096965 546189312 546122817 696666884 696666884 138944576 138944576 31207300 17710080 67851496 75894952 75894952 15044864 26024128 26024128 542254144 556794465 556794465 17042177 226851400 226851400 221951456 224199556 224199556 141569708 1045922318 1045922318 888149381 449578679 795282031 795282031 715207936 812327251 896533419 896533419 440606917 851458664 851458664 544598888 318005729 307328745 340926849 678201617 678201617 275052291 582952658 974220036 974220036 781316364 781316364 1070618865 1070618865 864552051 874257026 874257026 668606451 957381048 957381048 1019971512 1019971512 743233117 743233117 197168768 197168768 67059696 748533214 1013515352 1013515352 865231312 865231312 1004931364 1004931364 64283616 56748672 63618880 63618880 33032160 65792480 65792480 46252208 44917840 53251408 53251408 142476342 199177934 477019084 488730752 488730752 392444344 667085760 934558386 934558386 938484968 938484968 343491186 962945788 962945788 355744645 722777360 881513547 881513547 553651496 873201665 873201665 593496608 824191826 951134384 951134384 947200159 957876480 960237351 960237351 435140357 853177472 853177472 848421459 46976208 302513015 699401061 699401061 199755252 1002099331 1002099331 128848400 129310802 388565480 713407073 713407073 732213721 900548682 900548682 569113712 792415649 792415649 743581389 671310344 674083221 674083221 256718337 256718337 192284276 645114368 645114368 961631186 961631186 200462325 270678358 270678358 315900610 315900610 45247248 397023130 397023130 384635128 772350100 772350100 663232690 663232690 887267474 887267474 883549515 654836793 654836793 832916770 954994119 954994119 851199925 629359613 629359613 626013237 832724517 987132021 987132021 776124436 700486336 721787252 721787252 418986915 1037831919 1037831919 1036262091 889459936 284820400 53477554 44588169 614306048 617710634 815664139 815664139 592462072 448390998 448390998 711517524 719898069 878514127 878514127 438772272 438772272 438739586 273766678 273766678 67542336 78169416 118471880 124552625 805310609 805310609 540776706 882900697 882900697 890736928 890736928 896901248 896901248 755313529 719694868 719694868 286367880 157909796 157909796 456663120 456663120 294858990 81219842 82408240 82408240 131164656 131164656 130671864 119983936 59580720 103417392 355543978 355543978 112135992 80416706 99626528 99626528 111670040 111670040 143315304 233473092 233473092 269270156 500652110 500652110 373277726 417893912 417893912 173215812 136524036 136524036 286268620 286268620 67495944 530099452 530099452 340787850 173549610 434234152 434234152 502199656 502199656 455530876 473060102 473060102 461389862 536643116 536643116 310790894 1027381431 1027381431 771278728 771278728 389828503 90592216 968280894 968280894 729075945 729221493 729221493 711460245 711460245 888440469 888440469 510266441 577261056 578079633 578079633 576194048 574619793 102446616 102446616 101327360 35673232 35673232 303375883 760610531 988597719 988597719 967836519 982914144 982914144 908315442 908315442 639292953 407133862 796922000 796922000 566367197 749949609 749949609 626176845 307967650 134278176 270289282 270289282 167889920 276941108 288425264 288425264 425304244 425304244 63179942 30618336 115950152 226758860 528940184 528940184 508135112 508135112 244409436 119638216 119638216 9313344 741491312 741491312 920548496 920548496 42173139 9254976 9254976 9278592 15654336 70781656 70781656 61376400 213230532 213230532 477263336 477263336 286922274 286922274 356664352 903362032 1037936251 1037936251 559767363 194639987 675437927 843103704 843103704 1059985988 1067628761 1067628761 700713189 873325804 873325804 275069996 293959964 303868594 379801858 379801858 231083579 234146796 655692793 655692793 537930624 59252572 572424976 572424976 279755126 279755126 159611192 240521879 889327659 889327659 407161406 887883375 887883375 609797682 823580062 823580062 278043200 278043200 277922370 254202132 254202132 170055996 241324220 241324220 126132500 198864688 198864688 142325344 47052564 150472388 172860320 172860320 259323858 272570556 889466056 889466056 674541508 921244453 921244453 691757572 691757572 958998536 958998536 622177308 622177308 669202467 913505545 913505545 614876802 614876802 346763082 346763082 105262210 275427792 307311634 307311634 272437314 311770448 315656720 315656720 46362754 107737402 392944514 392944514 876682345 876682345 885249097 885249097 478590023 424928304 424928304 406909128 544428325 959293002 959293002 888744412 896730567 924990363 999501939 999501939 440272341 1060291120 1060291120 967798876 267188562 267188562 1017543800 1017543800 914983163 914983163 877442753 877442753 727763073 700506496 649732408 783105973 783105973 678200592 115681752 200256672 206043276 206043276 206450808 206450808 344195981 344195981 421576998 421576998 147740219 269753250 587401890 587401890 393088408 70041746 414344066 414344066 611321482 611321482 73024432 744509744 744509744 726204424 726204424 885350561 885350561 822226860 786125260 1054460016 1054460016 907418139 873747995 710450935 745925517 745925517 563614124 94305384 143842912 143842912 81140864 81140864 604178512 604178512 71340097 32955360 32955360 613049472 613049472 99203145 95025344 395147274 395147274 547496256 547496256 323261248 867655184 867655184 578089984 578089984 329135027 844854080 844854080 43311123 11199808 103560002 279387088 279387088 37953432 82475200 102917776 102917776 13847680 6601216 1405184 2105600 52375302 456727094 456727094 425921266 714685607 714685607 698224304 682947536 234930204 234930204 222556332 422815272 422815272 798322995 798322995 764287039 764287039 341187003 184949104 631397094 896846763 896846763 558620480 387140112 849055939 849055939 290201728 353502466 760887127 760887127 726799029 726799029 604231832 1043209503 1043209503 237179168 362679416 362679416 590629280 590629280 587728256 587728256 874563787 874563787 865121315 522859415 522859415 428576946 741597519 741597519 586835800 611336862 611336862 919241836 919241836 466480672 439195506 969672552 969672552 487015936 487015936 285787170 424914241 973004775 973004775 807433767 541600834 544235653 544235653 541804280 789107985 912769616 912769616 571259083 271790848 271790848 86508840 67183904 64524624 53196480 53196480 40911584 39172624 39585808 39585808 20394512 69093448 69093448 57517856 105095368 105984944 105984944 98684136 127180072 127180072 277911296 497209638 497209638 899546123 899546123 851259219 915773303 960654671 960654671 874242071 545011652 492831166 401995852 844094198 844094198 909256022 984427863 984427863 1043020065 1043020065 1015421007 695599232 691411749 618942208 735042776 835649702 835649702 575238656 796238104 955495839 962256123 962256123 880185912 203688204 523646992 913568312 913568312 840055376 840055376 722604399 778698900 778698900 841744658 841744658 548209920 548209920 619463812 920175877 920175877 820006993 711855428 440404247 294983822 474360418 474360418 302751364 198255348 793915708 793915708 504800736 812099724 1038975278 1038975278 599739907 818040992 949143169 949143169 988737157 988737157 515718297 515718297 339812490 339812490 217067819 906092560 906092560 550633606 806169603 806169603 420908586 420908586 269844544 352356104 853573760 931135841 931135841 989904951 989904951 823214133 730208373 906844799 906844799 966085733 966085733 953627812 953627812 926562941 632765289 127181673 740334488 740334488 710335125 362826670 735127856 735127856 392963978 392963978 583218432 609959934 750243445 750243445 266464201 187523381 898032121 898032121 706253824 706253824 83886120 899033440 899033440 878192731 848437728 932237424 932237424 299360034 352280194 352280194 338441120 119479753 109655037 254441113 772557925 915202153 915202153 708930735 871100518 871100518 1044170059 1044170059 944927463 269682712 492182190 552077250 647890600 647890600 417351264 841026938 841026938 724530681 516636005 420459651 748803788 748803788 680751741 729872370 729872370 404898629 561252130 561252130 193011828 234882345 547956033 623141293 686607813 686607813 675759104 541258821 152909686 795546453 795546453 529808100 422780338 695679909 1012377893 1012377893 543827507 847459689 847459689 605501961 284318312 557482640 952245640 952245640 520169330 520169330 204341776 240255669 709886613 1021476997 1021476997 844382403 1011677293 1011677293 654311601 654311601 304612636 304612636 419643632 537658497 537658497 402653190 94372200 289481174 430506496 430506496 113078122 316319854 529529982 529529982 265278846 372808260 394826198 394826198 279675336 371798496 371798496 301693080 62983712 60429936 57348544 59524704 59524704 34802192 51694128 269209112 449118984 449118984 418582060 418582060 186197556 289174800 731943033 731943033 696425824 1046123021 1046123021 993267693 94295417 751098109 751098109 493990483 734189604 734189604 981866653 981866653 961400685 961400685 559490721 246677305 148187844 133843876 237307745 672540165 774108093 774108093 185607968 56309424 709062664 777967381 777967381 737074677 737074677 597629036 710153876 710153876 810677895 810677895 242191752 336269194 549066456 629346193 670604893 1067618898 1067618898 754221660 994709758 994709758 118365496 600623744 996823705 996823705 587573325 604283168 604283168 807791624 959150316 959150316 835518168 829064424 754716649 600911639 673451063 673451063 909599001 909599001 992687415 992687415 979696945 325848498 325848498 298256530 651767752 651767752 808440842 1068893777 1068893777 545349604 545349604 367437216 367437216 358303938 338873480 338873480 469282614 469282614 410006096 505887006 505887006 429468234 429468234 151654468 161220196 571473137 618749237 618749237 157387068 293975467 293975467 325170480 508805412 903722554 903722554 1027680740 1027680740 739289349 405137670 674388409 891095816 891095816 624564009 826154017 826154017 537003050 273435864 116754986 220041396 220041396 190003632 113151596 539269257 539269257 770793236 770793236 733987605 733987605 546189312 546122817 537005056 539176129 550055168 550055168 17710080 17710080 16850976 141770404 141770404 15366464 538032961 555170337 680548644 680548644 774495060 774495060 673105769 770638569 770638569 703611182 703611182 675308157 675308157 300782963 403126278 468089785 795282031 1016409672 1016409672 674778691 896533419 896533419 463770449 851458664 851458664 544598888 818315395 818315395 814275976 814275976 83514688 13685120 11670336 361765472 371370190 781316364 781316364 1070618865 1070618865 864552051 864552051 826411297 602807793 560756286 987290709 987290709 471128810 743233117 743233117 152528808 208592268 984615528 984615528 1013515352 1013515352 865231312 865231312 1004931364 1004931364 76186728 117493600 117493600 94161680 44323584 44323584 26743568 20608032 20608032 18609696 279136416 279136416 6605184 269095168 306427290 306427290 392444344 392444344 38060458 268486656 304098819 304098819 314886354 962945788 962945788 826554380 524787587 891498795 891498795 1020330066 1020330066 873201665 593496608 976292499 976292499 951134384 433718474 546388834 827401879 827401879 613691828 853177472 853177472 848421459 46976208 349595746 349595746 89387688 86693160 301900106 301900106 128848400 275326632 388565480 388565480 1072910664 1072910664 849137235 245125221 569113712 792415649 792415649 743581389 671310344 235932636 235932636 256718337 256718337 186856132 645114368 645114368 737239809 737239809 150195076 139674960 134481536 134481536 42468880 37779664 39585296 103749919 103749919 772350100 1021666765 1021666765 994050370 973185046 887267474 648278361 654836793 654836793 513808952 731523388 731523388 708933373 708933373 629359613 626013237 832724517 987132021 987132021 776124436 757449144 924649557 924649557 628197830 1037831919 1037831919 1036262091 889459936 307299872 307299872 320770048 614306048 617710634 815664139 822690256 822690256 448390998 448390998 423842848 172557830 467546848 708952386 708952386 438772272 993323797 993323797 471502440 762455820 762455820 652032993 652032993 805310609 805310609 540776706 882900697 882900697 811593217 98902856 896901248 896901248 755313529 719694868 719694868 297108512 135898496 135898496 286597120 286597120 269713442 26821728 25800928 29885664 29918432 29934816 36774944 59580720 582011409 582011409 578863185 71453329 621419689 621419689 340138122 285811746 350357738 350357738 624767018 904831914 904831914 269270156 500652110 500652110 373277726 417893912 417893912 325597856 429266018 429266018 317195730 317195730 226566252 423668884 487450878 487450878 239112336 239112336 304681174 502199656 511841616 511841616 473060102 473060102 461389862 481084764 481084764 209215320 1027381431 1030655005 1030655005 741099966 520428017 410502906 614806210 718735387 718735387 729221493 729221493 127176816 606752904 888440469 888440469 510266441 741344013 812868498 812868498 583549008 847293145 932718707 932718707 847513603 725925942 72370176 522488353 893428663 1023697103 1023697103 675073797 675073797 595874057 589312584 589312584 565447521 407133862 767559188 767559188 699451205 749949609 749949609 626176845 307967650 161780436 270289282 270289282 26132736 160579872 160579872 2647936 2647936 143283904 143283904 139510404 115950152 171959792 171959792 152147328 152147328 142655556 204687872 204687872 1049528446 1049528446 1001340279 522783093 945972248 945972248 948371527 970936553 970936553 947337092 1014311823 1014311823 773661339 629809897 629809897 573624704 397724369 397724369 286922274 286922274 354117155 903362032 1037936251 1037936251 559767363 530653566 675437927 843103704 843103704 1059985988 1059985988 475435780 412443892 318284916 275069996 275069996 293959964 404804192 404804192 971698776 971698776 623484784 242304249 537930624 558170424 611301433 611301433 642447504 642447504 730377696 730377696 684584133 180429012 180429012 198493020 198493020 210764284 210764284 275714868 297542610 363879242 363879242 286336800 439251110 439251110 262507346 262507346 284957372 416639474 416639474 318355012 117324640 47052564 150472388 150472388 291565824 291565824 837955908 889466056 889466056 1007149894 1007149894 414316559 740411452 740411452 839064624 839064624 1067339607 1067339607 438262435 969008744 969008744 51353753 38427280 38988688 38988688 35492992 275427792 307311634 307311634 48296914 34287936 272671808 272671808 46362754 13115392 269286408 269286408 486595776 486595776 482526890 420968710 423099174 423099174 406909128 406909128 544428325 544428325 568328708 888744412 896730567 924990363 999501939 999501939 440272341 1060291120 1060291120 967798876 742718241 742718241 756985616 772698122 914983163 914983163 877442753 877442753 727763073 729975937 729975937 783105973 783105973 678200592 682499397 682499397 684641517 737070569 737070569 566262404 344195981 344195981 421576998 421576998 147740219 856756352 856756352 587401890 593945524 593945524 579022929 969122990 969122990 611321482 920606098 920606098 744509744 746992964 746992964 885350561 885350561 822226860 786125260 1054460016 1054460016 907418139 873747995 356928897 256000792 158520228 114011532 562423905 613895685 699009352 699009352 67506884 604178512 604178512 248942740 116730840 721854429 721854429 613049472 588744592 588744592 395147274 430797989 442902935 974032238 974032238 1017883762 1017883762 915892977 915892977 845110850 845110850 881197633 881197633 640942171 907414290 907414290 478482694 478482694 174200534 282970512 304886160 304886160 178447888 734208 141899670 286992148 456727094 456727094 707400915 714685607 714685607 696234352 682947536 151803812 956731404 956731404 889641003 523425681 1025098310 1025098310 234493932 234493932 96589412 158275800 536877456 745414029 745414029 465153888 465153888 849055939 849055939 149624262 353502466 353502466 302093714 599488369 814420060 814420060 1043209503 1043209503 631978575 423366438 309916388 688288328 704156880 704156880 578143168 439648640 16843040 119048536 620800068 620800068 843858062 843858062 409576741 409203078 1016238512 1016238512 159770724 466480672 466480672 439195506 439195506 17164320 487015936 487015936 368107168 365799973 1012715183 1012715183 769409095 768158888 544235653 544235653 541804280 789107985 789107985 578975293 209806370 271790848 271790848 6504768 44258240 44258240 43118672 50208720 50208720 49548736 128112072 128112072 58984560 79041336 267391316 267391316 207375264 207375264 189022820 198936652 198936652 234223348 234223348 497209638 497209638 899546123 899546123 851259219 915773303 960654671 960654671 874242071 545011652 492831166 401995852 844094198 1052242876 1052242876 909256022 635702560 803668261 1015421007 1015421007 138676732 646250817 646250817 88814760 59645040 575238656 575238656 752437997 955495839 962256123 1061684415 1061684415 912574875 912574875 890307750 890307750 947149674 947149674 743557056 743557056 657018541 744958592 749610704 749610704 284237261 213438284 920175877 920175877 820006993 711855428 805704978 805704978 474360418 474360418 50340548 198255348 793915708 793915708 338600189 1030349739 1030349739 861495357 599739907 818040992 949143169 949143169 988737157 988737157 543532472 795287016 795287016 339812490 253193104 253193104 725651024 725651024 806169603 806169603 420908586 420908586 269844544 195065108 772063502 772063502 238799200 169902084 823160948 823160948 692463856 906844799 906844799 844410005 844410005 953627812 953627812 926562941 632765289 127181673 127062648 85009162 362826670 362826670 735127856 735127856 613646345 613646345 583218432 583218432 670753922 670753922 1028335608 1028335608 952194796 898032121 466059870 337918442 83886120 157885836 878192731 878192731 848437728 933141053 933141053 226541676 963008385 963008385 487197772 487197772 152569380 728876659 772557925 915202153 924080771 924080771 439674902 440715414 440715414 760580813 760580813 422747008 492182190 552077250 647890600 647890600 276840960 841026938 841026938 724530681 516636005 614120537 739320333 772907525 772907525 748331832 729872370 63952900 295998562 295998562 145499360 728309397 728309397 536955348 719710677 719710677 675759104 602543601 602543601 795546453 795546453 719076943 422780338 695679909 1012377893 1012377893 822358179 847459689 1024723503 1024723503 1007774629 1007774629 952245640 952245640 982452871 982452871 131401042 460324927 741363893 1058165285 1058165285 1012011663 1012011663 511233660 462180533 201852218 455230726 455230726 419643632 709955649 709955649 233518998 946808270 946808270 815888840 430506496 113078122 316319854 529529982 529529982 265278846 372808260 394826198 394826198 279675336 371798496 371798496 301693080 62983712 60429936 94336120 94336120 214367996 214367996 155274948 269209112 449118984 449118984 418582060 418582060 194721396 756783322 756783322 872493350 872493350 1046123021 1046123021 993267693 517905786 994102854 994102854 715967829 496027677 496027677 981866653 981866653 961400685 961400685 858183987 249076443 587817004 639598384 639598384 162640904 170468628 588154880 588154880 56309424 614861688 614861688 761270933 761270933 607126281 246679637 710153876 710153876 810677895 810677895 715789653 671746005 581513861 629346193 670604893 1067618898 1067618898 754221660 994709758 994709758 144821888 564801552 564801552 1045234834 1045234834 862735823 386698250 807791624 959150316 959150316 891842593 1046481445 1046481445 942467884 654650368 654650368 909599001 909599001 992687415 992687415 979696945 538977585 437162369 437162369 651767752 651767752 745665236 745665236 760151457 760151457 545349604 367437216 367437216 358303938 338873480 338873480 94108712 94108712 550577515 550577515 272123682 541800705 541800705 487089412 274698850 571473137 618749237 618749237 548125800 548125800 337974339 325170480 508805412 903722554 903722554 1027680740 1027680740 739289349 468814676 897780080 897780080 891095816 624564009 826154017 826154017 537003050 535087614 521474816 37251840 38135152 148470892 148470892 539269257 539269257 770793236 770793236 733987605 733987605 183848708 183848708 537005056 539176129 550055168 550055168 141342756 146885892 146885892 141770404 141770404 15366464 538032961 555170337 680548644 680548644 774495060 774495060 673105769 770638569 770638569 703611182 703611182 675308157 675308157 300782963 403126278 468089785 583495736 1016409672 1016409672 674778691 779306636 779306636 463770449 620948114 620948114 893608610 893608610 818315395 814275976 814275976 808637186 808637186 818904706 818904706 671652998 474388192 477528165 477528165 604111875 604111875 422111108 472617988 472617988 560756286 987290709 987290709 488163986 488163986 179955540 179955540 208592268 984615528 984615528 209937663 82314696 128019912 128019912 111490224 111490224 76186728 117493600 117493600 94161680 44323584 44323584 59152624 59152624 60263536 63918672 279136416 319900066 319900066 23087136 275006082 275006082 271419648 271419648 274936194 274936194 304098819 304098819 341181066 811912193 909049271 909049271 822318746 891498795 891498795 1049889923 1049889923 289409058 289409058 976292499 976292499 844374807 183771328 293864493 827401879 832318540 925898368 925898368 661330108 952052858 952052858 349595746 349595746 89387688 86693160 301900106 301900106 78188544 275326632 880947891 880947891 1072910664 1072910664 849137235 31629235 10773056 57357744 108613636 158594948 688526373 705430805 705430805 677828997 677828997 145005057 131321856 575161392 821012743 821012743 685301968 584315601 442127958 134481536 68297662 63178978 58807024 103749919 290631114 601124890 1021666765 1021666765 994050370 973185046 518226015 893521984 901775595 901775595 739771917 739771917 665208753 708933373 708933373 75207197 230819040 696852704 696852704 675808389 218702892 757449144 924649557 924649557 628197830 962279079 962279079 896876600 896876600 825261889 825261889 571940066 610673832 610673832 88883625 822690256 822690256 316744146 423842848 423842848 172557830 467546848 708952386 708952386 412615494 993323797 993323797 498500360 762455820 762455820 652032993 652032993 629232818 313138658 312456338 288774994 299313760 299313760 45514048 58803088 161221232 296529172 296529172 297108512 297108512 135898496 350087652 350087652 141927968 26821728 26821728 25800928 58912232 94414824 94414824 576931736 576931736 582011409 582011409 578863185 75899936 621419689 621419689 340138122 285811746 350357738 350357738 624767018 904831914 904831914 268706088 268706088 196220288 196220288 329319792 329319792 325597856 429266018 429266018 317195730 317195730 226566252 423668884 487450878 487450878 239112336 239112336 278960176 296650082 511841616 511841616 438566996 279185730 395198474 481084764 481084764 287526590 535946238 1030655005 1030655005 741099966 520428017 410502906 410502906 696029725 696029725 684461253 172758656 169220628 846368272 846368272 241959363 378006554 741344013 812868498 935426157 974956693 974956693 932718707 932718707 847513603 725925942 358654860 522488353 893428663 1023697103 1023697103 675073797 675073797 347043635 262669692 194123528 553649153 553649153 767559188 767559188 699451205 699451205 214991653 144373380 161780436 161780436 169700656 169700656 152240036 152240036 20772992 159755204 159755204 143283904 143283904 139510404 113323576 113323576 178030800 209800296 209800296 173130117 204687872 204687872 1049528446 1049528446 1001340279 522783093 945972248 945972248 948371527 970936553 981673031 999232100 1014311823 1014311823 832445776 860686592 860686592 576670681 576670681 67690368 771884049 771884049 675289616 644105529 259817641 467343240 679811017 679811017 591476536 758089576 758089576 378849882 475435780 475435780 340223120 166007904 141507972 468357272 468357272 404804192 404804192 971698776 971698776 632661165 632661165 632605545 558170424 611301433 611301433 642447504 642447504 730377696 730377696 684584133 172331932 125317984 198493020 207667596 210764284 308014228 308014228 503736646 512104542 512104542 396059310 439251110 439251110 293202064 285347106 456392714 456392714 416639474 364855872 364855872 307922048 44621440 45072720 291565824 362822082 837955908 837955908 382588224 1007149894 1007149894 414316559 740411452 740411452 839064624 839064624 1067339607 1067339607 963602999 980150185 980150185 845829130 845829130 385490824 310154754 310154754 272847504 283503042 313475522 313475522 272025856 315264720 315264720 37850322 37850322 269286408 269286408 205679650 156028068 416279240 960868196 960868196 564335040 564335040 743056939 743056939 680526405 680526405 568328708 135266785 218427976 218427976 440378418 440378418 312684638 489560642 523766350 742718241 742718241 1059481602 1059481602 280762614 720154122 1026346287 1026346287 663174436 729975937 729975937 69743048 225511304 674169224 682499397 682499397 684641517 737070569 737070569 566262404 238858912 137371904 72927744 72092808 41206920 856756352 856756352 192987648 593945524 593945524 579022929 969122990 969122990 481037646 920606098 920606098 606972173 746992964 746992964 541684936 741745004 741745004 741528333 681331789 797721157 797721157 671820920 538780721 715525108 800242044 800242044 562423905 613895685 699009352 699009352 211186176 211186176 248942740 248942740 137435473 721854429 721854429 587768833 672322053 672322053 168596608 430797989 1051321695 1051321695 974032238 1017883762 1017883762 915892977 915892977 845110850 845110850 881197633 881197633 640942171 907414290 907414290 478482694 478482694 174200534 446274712 446274712 304886160 178447888 206047300 206047300 286992148 467411696 833357650 833357650 707400915 578559440 167517089 135792132 50991668 956731404 956731404 889641003 828848547 1025098310 1025098310 234493932 234493932 96589412 853803145 853803145 745414029 977331157 977331157 465153888 239224584 239224584 36312336 671258372 695247761 695247761 673412661 814420060 814420060 704778261 948500034 948500034 423366438 309916388 688288328 704156880 704156880 439648640 799676137 799676137 749681997 706872913 706872913 843858062 843858062 755953912 874181634 1016238512 1016238512 259549898 603795187 603795187 517439607 517439607 273814146 873468041 873468041 749132109 977159770 1012715183 1012715183 769409095 768158888 420004902 136865696 191940272 191940272 539537540 539537540 218159212 218159212 736814152 736814152 536913397 226538049 11584320 50208720 50208720 49548736 128112072 128112072 58984560 210290800 267391316 267391316 207375264 207375264 189022820 198936652 198936652 234223348 234223348 196845320 183331848 183331848 260449280 260449280 160222308 155906432 227923764 227923764 145634484 904823312 904823312 502722950 1052242876 1052242876 707243739 961416230 961416230 803668261 507838800 484780494 646250817 646250817 868296864 868296864 826351779 385918585 752437997 752437997 935265314 1061684415 1061684415 912574875 912574875 890307750 890307750 947149674 947149674 842837004 842837004 657018541 743584981 749610704 749610704 328112892 338610430 338610430 866141592 1034421615 1065748919 1065748919 805704978 290194576 290194576 46153776 54575280 323114928 437863080 524936382 1030349739 1030349739 875585583 875585583 660080313 406589190 406589190 242748814 237642884 543532472 795287016 795287016 138085424 253193104 253193104 725651024 725651024 638935913 484955084 756207671 756207671 395740948 221796370 195065108 547714626 899164463 899164463 823160948 823160948 616981752 673241653 709708435 844410005 844410005 678901222 678901222 242080388 778013900 778013900 649536377 866437201 872938313 872938313 539796538 95470440 613646345 613646345 9695808 578119986 670753922 670753922 1028335608 1028335608 952194796 365143408 365143408 638321186 839919675 839919675 557854880 574755797 574755797 933141053 933141053 226541676 963008385 963008385 487197772 487197772 508500968 728876659 728876659 462677170 924080771 999596174 999596174 488989522 303407278 303407278 422747008 422747008 105195672 352196648 352196648 84287434 609360609 672410707 672410707 352846890 873016329 873016329 739320333 772907525 772907525 748331832 34155232 64656184 145029668 145499360 145499360 728309397 728309397 536955348 719710677 719710677 677284917 759118581 759118581 591791459 719076943 719076943 748749558 748749558 909644416 909644416 828574881 740694032 1024723503 1024723503 1007774629 1007774629 878372000 337362672 982452871 982452871 711183112 711183112 741363893 1058165285 1058165285 1012011663 1012011663 367136951 325731338 426246424 455230726 455230726 319459894 709955649 709955649 233518998 946808270 946808270 815888840 211984672 101466488 173353096 267774972 267774972 204783964 246687416 246687416 41163176 66658080 67183632 67183632 33064416 33064416 34079760 94336120 94336120 214367996 214367996 155274948 88953564 214627800 214627800 145544452 172144284 194721396 756783322 756783322 872493350 941756452 941756452 137677572 517905786 517905786 994102854 994102854 995068366 995068366 1000765085 1000765085 845289161 842697082 858183987 858183987 249076443 587817004 639598384 639598384 731788565 731788565 588154880 588154880 188784040 614861688 614861688 761270933 761270933 607126281 582771393 146225985 140763136 712107844 715789653 715789653 671746005 581513861 33628176 65552 1152 699417990 699417990 869278674 869278674 852830931 940649069 940649069 1045234834 1045234834 862735823 718245192 883616776 883616776 891842593 891842593 1046481445 1046481445 994228384 994228384 547464455 471704065 943669345 957007557 957007557 558635110 877736321 877736321 967435623 967435623 918356240 918356240 916270683 813490648 760151457 227444524 241424964 241424964 198054760 214922376 214922376 214734408 68748968 550577515 550577515 272123682 541800705 541800705 487089412 539804800 539804800 211348172 296378626 548125800 548125800 782829068 782829068 582300613 582300613 69605640 70357944 377554984 468814676 468814676 897780080 897780080 614650185 354799200 422071554 422071554 535087614 535087614 521474816 217983956 217983956 148470892 148470892 108317592 178935396 178935396 12705984 12705984 8453632 6217344 135439440 135439440 172574996 172574996 169218516 143800496 146885892 146885892 27946976 24575344 13414704 30618384 30618384 43545200 43545200 59999824 59999824 34128464 45408832 200164948 200164948 171589300 55211264 55211264 24757104 94971240 243254308 583495736 629984361 813096620 813096620 622867210 768030957 768030957 981565498 981565498 893608610 893608610 288768939 382372178 546718145 808637186 808637186 823066626 823066626 671652998 725984394 725984394 418986509 358674826 486576640 486576640 472617988 472617988 351348480 349796237 349796237 488163986 778901415 778901415 757854249 456416799 927101688 927101688 823861568 823861568 899952448 899952448 665000952 302082208 17158560 23609376 23609376 42732064 42732064 31331088 59152624 59152624 60263536 63918672 65221104 319900066 319900066 20193664 275006082 275006082 271419648 271419648 274936194 274936194 7917824 302414616 341181066 341181066 909049271 909049271 822318746 625476777 625476777 1049889923 1049889923 289409058 289409058 324338521 664863498 1045791471 1045791471 1037068959 328999796 832318540 925898368 925898368 661330108 952052858 952052858 125271232 129550200 132769144 133744632 133744632 78633400 78188544 78188544 880947891 880947891 1001601487 1001601487 856651953 691674439 831221546 831221546 818066465 635269504 688526373 705430805 705430805 677828997 677828997 145005057 686628628 686628628 821012743 821012743 685301968 584315601 442127958 68297662 68297662 63178978 58807024 96468840 386154587 830646666 830646666 943902855 943902855 1041609104 1041609104 893521984 901775595 901775595 739771917 889222298 889222298 784603738 734928225 734928225 246029496 696852704 696852704 675808389 218702892 741162276 997927265 1071386367 1071386367 962279079 962279079 896876600 896876600 825261889 825261889 571940066 543964289 585711379 815339331 815339331 672827072 316744146 316744146 167780998 407961620 407961620 279044418 279044418 690926868 717047665 717047665 498500360 498500360 117219352 38635000 30237952 25469088 14751744 14751744 64048064 64048064 53231232 45514048 45514048 144912840 144912840 134909692 146278400 407111264 510142628 510142628 509609276 509609276 65634718 65357488 43593584 201311540 325395792 348775371 576931736 576931736 572034913 853579896 853579896 538042835 77576200 85457448 95243048 95243048 93199464 10621248 10621248 90385984 90385984 17822848 69069152 206506404 206506404 329319792 329319792 188549204 190310688 190310688 415549638 425487014 425487014 457272486 457272486 150996214 190891170 190891170 278960176 378035290 378035290 438566996 867341127 867341127 545325536 876666982 876666982 804789180 785341441 535946238 705722486 705722486 917938260 917938260 893021073 696543963 696543963 542366145 172758656 227403616 1017622028 1017622028 1012874318 614221568 964804992 964804992 935426157 974956693 974956693 25726581 336715780 336715780 358654860 358654860 376756872 376756872 274752258 401066336 401066336 327689809 692432553 692432553 940878614 940878614 553649153 486541931 486541931 52430096 222839228 676718861 676718861 275296934 118750464 372339442 372339442 152240036 152240036 34776192 159755204 159755204 163296160 163296160 165996196 165996196 113323576 178030800 209800296 209800296 173130117 194932745 194932745 165749220 587542327 587542327 286616759 841901443 841901443 808977347 722612339 981673031 999232100 999232100 850596133 832445776 860686592 860686592 576670681 576670681 7548416 771884049 771884049 675289616 644105529 259817641 253904516 679811017 679811017 591476536 758089576 758089576 378849882 378849882 340223120 470161974 470161974 457082048 536319732 536319732 339372016 339372016 280548160 280548160 632661165 632661165 632605545 555018597 420479294 420479294 411041846 411041846 730364397 730364397 185607056 185607056 236536214 326426938 475061646 475061646 406573214 308014228 503736646 512104542 512104542 494100638 303162128 303162128 293202064 285347106 456392714 456392714 121450296 364855872 364855872 307922048 44621440 543287588 968071973 996626663 1047677727 1047677727 382588224 346480432 346480432 83812296 2993736 1233408 434850010 906258860 906258860 877534347 963602999 980150185 980150185 909452510 909452510 844012304 584441808 817572882 983318278 983318278 443647746 313475522 272025856 315264720 315264720 45913250 300341730 456837750 456837750 202077316 420352904 485152206 960868196 960868196 761992460 761992460 743056939 743056939 680526405 680526405 194519556 135333492 218427976 218427976 440378418 440378418 312684638 489560642 523766350 523766350 353913944 1059481602 1059481602 280762614 720154122 1026346287 1026346287 503336241 69404104 69743048 69743048 225511304 225511304 67634184 67634184 109491200 109491200 229443792 238858912 350212181 350212181 485566846 485566846 163307731 559691682 561913489 561913489 573563541 573563541 316468914 963160613 963160613 153342144 153467648 153467648 19889952 248589668 248589668 257323264 741745004 741745004 741528333 681331789 797721157 797721157 671820920 538780721 715525108 800242044 800242044 260096580 230026092 201463820 201463820 211186176 211186176 116466648 116980376 137435473 705669269 705669269 587768833 672322053 755977298 937659743 937659743 1051321695 1051321695 897985613 897985613 447438111 871840618 871840618 332538490 270998490 295112892 447592000 447592000 439802646 470363480 470363480 136315140 183291348 507498568 507498568 470633800 470633800 409104838 342104202 310377430 467411696 833357650 971441536 971441536 965688423 167517089 572890145 572890145 875303976 958521639 958521639 828848547 864534992 864534992 612189397 1060303678 1060303678 853803145 853803145 480746130 977331157 977331157 430717286 605561007 605561007 359712062 1042321710 1042321710 695247761 866338349 940077590 940077590 704778261 948500034 948500034 195896736 195896736 560677120 560677120 683330847 965264487 965264487 826311876 749681997 922822082 937427451 937427451 773384540 773384540 874181634 874181634 441062930 259549898 603795187 603795187 517439607 517439607 943915059 943915059 873468041 817988335 993289491 993289491 917399455 615430408 615430408 420004902 407134478 1012070281 1012070281 553439169 539537540 218159212 592045472 736814152 753262749 753262749 323129416 340055018 340055018 76810312 324455256 338743482 338743482 87099770 458908160 458908160 388029900 195840344 114563824 128190840 128190840 36461944 107842160 107842160 12884544 14417984 14417984 13156416 13156416 12634240 12634240 8652864 55860512 293650530 904823312 904823312 983446591 983446591 809832240 1001153859 1001153859 988653823 507838800 507838800 484780494 363145300 63252720 868296864 868296864 826351779 608485992 550767297 242638330 278453282 410906502 410906502 364256098 364256098 294129254 621161261 899887467 899887467 842837004 842837004 238101276 743584981 743584981 471471620 328112892 370345752 370345752 866141592 1034421615 1065748919 1065748919 695702701 851146404 851146404 683934356 956900391 956900391 950110467 950110467 1026155532 1026155532 875585583 875585583 660080313 287574306 427560464 427560464 234883208 197918864 197918864 138085424 138085424 137459732 204905276 204905276 862241699 862241699 484955084 861667513 861667513 395740948 346589662 252397400 547714626 899164463 899164463 614547791 599800053 616981752 673241653 673241653 707366737 707366737 678901222 678901222 242080388 778013900 778013900 649536377 866437201 872938313 872938313 539796538 103341224 386716016 386716016 291537960 578119986 578119986 356364937 280545090 268752960 268752960 268603394 428098 638321186 839919675 839919675 805770298 805770298 574755797 498534621 478814224 154980132 354502568 354502568 96746248 464522288 508500968 508500968 399638854 416334534 472204087 999596174 999596174 488989522 303407278 889926699 889926699 942674511 942674511 409078272 409078272 75571937 746662662 746662662 336596518 352846890 873016329 873016329 604506145 673487680 673487680 255302421 236003748 654414072 654414072 676323104 704068581 704068581 578670341 135266368 192753588 192753588 677284917 759118581 759118581 510461950 704717888 704717888 844502024 930012043 930012043 909644416 828574881 570950673 570576896 1067540632 1067540632 403223333 422051879 422051879 794574852 794574852 711183112 711183112 527755067 357044240 420500284 420500284 180363840 439094994 439094994 426246424 426246424 4729856 19664160 19664160 18874624 2886912 12845072 334698528 334698528 111376650 157925636 183543420 218103852 218103852 153092868 153092868 39854744 106496 66658080 66658080 49924064 39393920 40299904 40299904 34079760 34079760 540453061 540453061 233963372 665328268 665328268 651430617 231193836 717338160 749148853 749148853 485784344 485784344 941756452 941756452 1041106439 1041106439 443813383 141558660 630643305 995068366 995068366 1000765085 1000765085 820585923 820585923 113559768 236890224 236890224 436138740 436138740 374067548 731788565 731788565 587337777 570478624 188784040 167708388 102160408 102160408 39111320 582771393 582771393 180426241 163836132 163836132 562111141 735126261 735126261 710876865 714998805 714998805 710946693 710946693 699417990 869278674 869278674 852830931 940649069 940649069 859835045 859835045 826542243 903212556 903212556 883616776 204376258 547825809 653879028 653879028 994228384 994228384 547464455 471704065 943669345 957007557 957007557 558635110 877736321 877736321 967435623 967435623 918356240 918356240 916270683 813490648 613600549 192425188 918438386 918438386 909409944 544194760 554966082 554966082 1590816 1278464 94990440 472089696 472089696 308847736 308847736 570810768 736658500 736658500 588890640 573543441 808154393 808154393 1033849152 1033849152 907473205 961028355 961028355 839478983 839478983 481199362 622876225 622876225 614650185 545658945 868561033 868561033 570824746 149769052 149769052 217983956 217983956 64784664 14629744 29269728 30059360 163149668 184790896 184790896 193445920 193445920 135439440 135439440 172574996 172574996 169218516 143800496 23858592 201367776 201367776 30173196 13414704 176393492 176393492 170660944 170660944 172534420 190130204 222562476 222562476 190597392 120734864 354258450 354258450 328929330 328929330 315175648 243254308 243254308 39024224 813096620 813096620 1036400580 1036400580 956639271 981565498 981565498 673222901 1013236610 1013236610 718530621 176753116 199494072 199494072 823066626 823066626 755306750 1053144079 1053144079 540009773 961446117 961446117 738958164 397985658 219069402 280811863 404948232 404948232 211352203 778901415 778901415 757854249 527175102 927101688 927101688 823861568 823861568 899952448 899952448 665000952 302082208 127030408 117836800 126169472 126169472 48834000 59013056 59013056 22669888 22669888 9058880 25887744 25887744 19551584 16866816 16866816 13001088 13001088 11474624 11474624 7917824 7917824 14551232 232993036 232993036 139407884 71044872 621416576 625476777 625476777 555746314 616612041 710986048 710986048 558131546 871367012 1045791471 1045791471 1037068959 328999796 588325646 588325646 434374978 434374978 467045182 467045182 859387124 984899015 984899015 1019424975 1019424975 764158567 179868049 80035840 80035840 143560 250014063 1056811869 1056811869 691674439 831221546 831221546 824445376 635269504 5168256 13911488 13911488 39007104 39007104 142189188 686628628 686628628 172829892 172829892 146126992 140522880 140522880 69932288 70854408 70854408 111032083 907021400 907021400 830646666 830646666 943902855 1010006088 1041609104 1041609104 785910956 785910956 517495457 762629069 889222298 889222298 793793023 734928225 772938745 772938745 744523741 552469985 801351825 801351825 741162276 1029112880 1071386367 1071386367 819599043 819599043 555124528 555124528 302893985 320340608 320340608 543964289 585711379 815339331 959357960 959357960 876345099 876345099 342100362 407961620 463809652 463809652 279044418 690926868 717047665 717047665 155007013 143796736 143796736 12970176 25469088 25469088 14751744 14751744 17223744 17223744 89972324 234950156 259720556 259720556 58132832 155938396 255896004 407111264 510142628 510142628 509609276 509609276 183315924 183315924 43593584 201311540 325395792 348775371 624789880 624789880 566092817 853579896 853579896 538042835 912297755 912297755 318220504 318220504 303038200 359000490 902904290 902904290 549690888 338216040 67524872 206506404 206506404 134948712 302255126 420752864 420752864 334038576 415549638 425487014 425487014 457272486 457272486 150996214 190891170 190891170 51062064 457717843 847230931 954332583 965956258 965956258 545325536 876666982 876666982 804789180 785341441 615215072 588544481 573057049 917938260 917938260 893021073 696543963 696543963 542366145 55825137 227403616 1017622028 1017622028 1012874318 614221568 964804992 964804992 825611556 825611556 336642864 621078554 856774717 856774717 688001184 1009129743 1009129743 995344423 1057486911 1057486911 753501389 753501389 692432553 692432553 940878614 940878614 830945379 537217585 793322540 793322540 714874529 682324053 676718861 275296934 178586692 372339442 372339442 40278400 40278400 34776192 34776192 52042592 163296160 163296160 165996196 196820129 558578113 568667441 568667441 690776565 690776565 137100385 58769520 58769520 4572548 706141459 706141459 698260723 290231606 571803208 571803208 343938138 766251644 766251644 202375443 3343872 25721416 113008328 113008328 63800008 7548416 28903640 126157176 126952056 126952056 64815752 253904516 253904516 185197620 294382684 294382684 494968600 494968600 318975488 318975488 470161974 535412232 535412232 536319732 536319732 339372016 339372016 280548160 280548160 181541680 181541680 796330537 796330537 560996589 560996589 411041846 411041846 698942160 698942160 251768320 548227796 728835046 728835046 475061646 475061646 406573214 736282988 736282988 689870480 494100638 494100638 303162128 357589272 357589272 326230962 227283728 222479916 295923940 295923940 49376018 48981440 49290832 543287588 968071973 996626663 1047677727 1047677727 770704365 770704365 544936652 544936652 357131976 357131976 434850010 906258860 906258860 877534347 238568535 754648430 754648430 909452510 909452510 844012304 584441808 817572882 983318278 983318278 443647746 140382608 140382608 47761984 47640912 48336960 300341730 456837750 456837750 289103232 420352904 485152206 485152206 251908352 761992460 761992460 883851558 883851558 207043212 207043212 708856127 708856127 761346234 793123005 793123005 51133101 1007596290 1007596290 775439920 328518258 353913944 353913944 447359909 785144294 785144294 721705137 593463398 935837305 935837305 791047497 142774348 142774348 136467712 724750648 740380941 799263089 799263089 721613620 721613620 350212181 350212181 485566846 485566846 163307731 559691682 561913489 561913489 573563541 573563541 316468914 963160613 963160613 548805441 548805441 678090932 678090932 779087253 779087253 168821268 108052916 46450896 46450896 94526352 94526352 629241720 720473304 720473304 716227413 210813525 206908088 74849600 88272136 88272136 91459304 93017832 100067160 116466648 116980376 128421760 128421760 25526272 555388036 685769157 755977298 937659743 937659743 420840036 866643262 866643262 447438111 447438111 331571393 399073912 843630218 843630218 295112892 381795790 381795790 232043866 392856272 392856272 136315140 471029088 507498568 507498568 470633800 470633800 409104838 342104202 310377430 310377430 538242581 971441536 971441536 969973927 562758727 675551364 675551364 875303976 958521639 958521639 689272195 818310584 818310584 665337808 1060303678 1060303678 840754033 942054448 942054448 817672845 817672845 876123907 876123907 812863626 709498005 1042321710 1042321710 983115569 866338349 940077590 940077590 131269711 160174784 194841700 195896736 543815904 560677120 560677120 683330847 965264487 965264487 826311876 419765304 922822082 937427451 937427451 773384540 773384540 731245173 548571204 728295309 1046465989 1046465989 966052455 851843283 851843283 943915059 943915059 689620613 817988335 993289491 993289491 917399455 709334217 701925447 815956719 872863755 1012070281 1012070281 553439169 385460266 201793612 592045472 592045472 753262749 753262749 323129416 340055018 340055018 76810312 324455256 338743482 338743482 87099770 458908160 458908160 388029900 237728048 183072084 205570188 215013452 244678692 244678692 317951110 317951110 173510214 366440618 366440618 356724906 387227290 387227290 342249696 342249696 334415346 334415346 334267520 983446591 984620044 984620044 1001153859 1001153859 988653823 638362507 638362507 366561870 917769687 917769687 406847600 58984630 608485992 649795237 707006596 707006596 596077184 596077184 574544580 364256098 431690776 431690776 471213320 471213320 870888972 870888972 239198364 239198364 154612992 321983012 321983012 280440622 370345752 370345752 413022733 750069495 750069495 700717325 1060790614 1060790614 851146404 698877328 956900391 956900391 950110467 950110467 849518630 849518630 283133554 283133554 866238778 866238778 575218833 973145789 973145789 992985213 992985213 687098665 687098665 775047181 775047181 310764599 862241699 862241699 422769700 861667513 861667513 346589662 346589662 252397400 515404074 515404074 525754568 525754568 431690614 369378430 369378430 247440132 509622690 509622690 372294546 372294546 272929864 227616148 324592184 374505538 374505538 305874584 390747594 390747594 130104640 621585481 621585481 291537960 570130977 899196283 899196283 929546144 929546144 878905312 398859554 398859554 112072698 111229440 340722952 805770298 805770298 364517226 567296101 567296101 276089730 819365575 819365575 340651176 464522288 464522288 411127002 399638854 416334534 509954378 895746308 895746308 416359110 416359110 889926699 889926699 942674511 942674511 1050679446 1050679446 786180943 746662662 746662662 336596518 336596518 1007689736 1007689736 67174927 673487680 673487680 255302421 236003748 654414072 654414072 676323104 704068581 713368528 713368528 567512673 173628209 763363949 763363949 678042648 671354333 510461950 809893984 835066083 844502024 930012043 930012043 543201467 560480351 570576896 570576896 1067540632 1067540632 403223333 430518410 430518410 339944806 628188636 628188636 321929483 573707025 873955641 942426422 942426422 629476028 638398233 638398233 725879287 725879287 563595765 563595765 840280076 1036133056 1036133056 547362976 334698528 334698528 111376650 157925636 188937936 218103852 218103852 201662984 201662984 97265188 89206088 92342656 92342656 49924064 137901188 137901188 68941320 229820004 229820004 540453061 540453061 637360232 665328268 665328268 651430617 231193836 717338160 749148853 749148853 485784344 1026953252 1026953252 1008207405 1041106439 1041106439 443813383 521979530 630643305 675866613 675866613 234203912 640040154 820585923 820585923 686990272 567667425 236890224 628359960 628359960 559565060 257594552 257594552 188318388 186720564 186720564 156109980 219028524 219028524 206680628 172805268 180426241 180426241 163836132 163836132 562111141 735126261 735126261 710876865 714998805 714998805 710946693 710946693 180191585 158343440 189866676 824189108 943721182 943721182 575940746 575940746 335618691 903212556 903212556 437191892 780745746 780745746 653879028 653879028 777934808 777934808 228065824 109777480 347483660 347483660 443830100 448419106 448419106 278808204 878367343 878367343 495872356 846565087 846565087 687835872 613600549 1067688641 1067688641 918438386 909409944 544194760 554966082 554966082 1753096 17302560 277182817 942281987 942281987 724049923 630704987 630704987 736658500 736658500 588890640 573543441 808154393 808154393 1033849152 1033849152 908958212 961028355 961028355 839478983 839478983 677650839 835038116 835038116 542501505 545658945 868561033 970040087 970040087 412234255 396020972 647005040 663225441 663225441 337679194 663770936 663770936 651740889 719098005 719098005 704311217 704311217 687621168 28289056 31008480 32925344 32925344 225258924 225258924 225077696 251785508 251785508 29471928 176393492 176393492 235024520 239333532 239333532 190130204 222562476 222562476 190597392 101734736 354258450 354258450 328929330 328929330 315175648 127852152 15995256 257532254 288359202 998878114 1036400580 1036400580 956639271 982573531 982573531 377704566 1013236610 1013236610 969478247 969478247 763376893 705314424 705314424 945034389 945034389 1053144079 1053144079 540009773 961446117 961446117 738958164 397985658 219069402 238028124 404948232 404948232 111683400 467927512 467927512 462162290 527175102 527175102 298545528 388096314 388096314 54872458 90626472 132457088 132457088 127030408 121910704 126169472 126169472 75236232 87280488 87280488 74522752 22669888 21993600 21993600 10611264 14481344 25407008 25407008 6828032 13599744 13599744 11324736 13031616 13031616 25115072 232993036 232993036 190494224 558372517 832046147 832046147 991809074 1024796458 1024796458 710986048 710986048 558131546 1017153076 1017153076 722995535 826049049 925369659 925369659 892677909 715204853 417335651 467045182 467045182 859387124 984899015 984899015 1019424975 1019424975 764158567 179868049 80035840 612998350 612998350 859585807 1056811869 1056811869 290836002 290836002 824445376 824445376 605475008 57579328 44378688 44378688 45901888 45901888 35742736 6845184 6845184 141062656 141062656 6829056 3145728 3671808 69932288 70854408 70854408 111032083 907021400 907021400 749255844 749255844 761563616 1010006088 1010006088 953336352 953336352 785910956 517495457 762629069 877158379 877158379 793793023 562085992 787504872 787504872 744523741 94014781 801351825 801351825 764547693 1029112880 1031150511 1031150511 819599043 819599043 555124528 566005600 567863137 567863137 540082496 319934464 22088864 22088864 959357960 959357960 876345099 876345099 342100362 909258880 913384347 913384347 195779698 286447458 286447458 647240048 647240048 622791721 143796736 37539696 55954816 55954816 40371856 38816144 63191376 63191376 89972324 234950156 259720556 259720556 191507824 155938396 255896004 427650304 427650304 528787524 528787524 169938112 183315924 183315924 14266260 12642200 89490392 89490392 624789880 624789880 566092817 298972777 84127146 280118304 912297755 912297755 555017267 323726256 323726256 899919970 902904290 902904290 877665066 338216040 67524872 21518504 40134144 40134144 302255126 420752864 420752864 334038576 334038576 329726322 177541590 168324736 432351460 432351460 198970194 53031984 51062064 457717843 847230931 954332583 965956258 965956258 780145349 303105118 498672634 498672634 615215072 615215072 588544481 35700992 2097408 145875780 537084160 539226369 539631905 556320033 556320033 555431457 565542305 565542305 686499601 686499601 296224720 687742917 990970178 990970178 990169875 990169875 856774717 856774717 688001184 1009129743 1009129743 995344423 1057486911 1057486911 974588298 974588298 538043423 471403341 810167520 830945379 830945379 537217585 793322540 793322540 714874529 682324053 672766440 178586692 178586692 198604208 198604208 184055876 184055876 181961664 731128353 731128353 601214001 601214001 591519921 591519921 558578113 568667441 568667441 690776565 709168581 709168581 700523653 700523653 602200148 706141459 706141459 698260723 923547055 923547055 589047926 589047926 680933703 680933703 639777321 841552672 845838464 845838464 662400361 662400361 81609056 703819097 710730880 710730880 548444033 197453864 197453864 1050136671 1050136671 996224512 1008748888 1008748888 494968600 892225549 892225549 396533142 761405811 761405811 111748440 120069184 790140226 880793164 880793164 439011769 439011769 900805933 900805933 796330537 1042363528 1042363528 1002617115 1002617115 698942160 698942160 680381473 680381473 728835046 728835046 833977336 1061116197 1064704959 1064704959 736282988 945446307 945446307 913568667 913568667 879486602 357589272 408110536 431525926 431525926 429915168 429915168 403504194 269645632 49290832 49290832 42940496 751021088 773972037 773972037 770704365 770704365 562061602 544936652 688095486 688095486 663311459 252546282 252546282 209780832 579294408 754648430 754648430 345646554 917474334 917474334 307653443 67973448 67973448 2370816 0 46484688 47761984 47761984 47640912 48336960 48336960 11011392 67314248 289103232 289103232 248562396 251908352 251908352 335752209 661207098 883851558 883851558 560177672 207043212 708856127 708856127 761346234 793123005 793123005 789130340 1007596290 1007596290 775439920 705202486 529804344 795659046 795659046 785144294 785144294 874717558 874717558 935837305 935837305 791047497 655225348 655225348 236284428 724750648 740380941 799263089 799263089 721613620 721613620 77980736 79676672 79676672 131878050 305965258 305965258 305011986 293393072 115409976 124386272 124386272 65813760 334215330 548805441 548805441 678090932 678090932 779087253 779087253 708461104 315837290 315837290 574501080 868401065 881134187 881134187 720473304 720473304 716227413 327319584 387119560 387119560 1310720 1310720 0 0 0 0 0 197402689 725952693 725952693 690428565 685769157 698201824 698201824 572979125 420840036 420840036 222023258 872482824 872482824 857092778 399073912 843630218 843630218 602565066 581898012 461745372 290222198 290222198 490666698 490666698 517069734 517069734 468039732 249846196 220861740 220861740 315377176 315377176 834592611 834592611 946989828 969973927 969973927 686245252 686245252 675551364 306382848 39062160 618193556 752692941 752692941 665337808 665337808 541920265 539355393 587685157 942054448 942054448 817672845 817672845 876123907 876123907 812863626 709498005 806020243 983115569 992243334 992243334 706052226 706052226 575618193 575618193 403052550 996617217 996617217 543815904 103706632 118590608 118590608 90042024 388137206 419765304 419765304 124205496 124205496 671220096 677515653 677515653 579895698 728295309 1046465989 1046465989 966052455 851843283 851843283 458866329 261096060 390148517 390148517 249795568 888700175 1038099456 1038099456 908826039 816366915 872863755 872863755 606099714 574961958 170669537 203473164 260783408 260783408 600351090 600351090 281616472 373818522 395781538 395781538 280369986 27269666 20323104 17961504 17961504 226721796 237728048 237728048 237463964 205570188 215013452 244678692 244678692 317951110 317951110 173510214 366440618 366440618 356724906 387227290 387227290 342249696 342249696 334415346 334415346 334267520 63740056 984620044 984620044 874512551 874512551 726262332 726262332 638362507 391168698 917769687 917769687 982956034 990664711 990664711 649795237 707006596 707006596 596077184 596077184 574544580 236269100 431690776 487654445 688794157 1060862785 1060862785 870888972 490218119 521914888 678909355 678909355 321983012 280440622 303964496 489560622 489560622 750069495 750069495 323528112 1060790614 1060790614 698877328 698877328 305984000 411114832 411114832 716210372 716210372 407928849 868840132 991614519 991614519 866238778 575218833 973145789 973145789 992985213 992985213 701304944 687098665 775047181 775047181 310764599 283687824 351214224 351214224 67115036 209850444 209850444 224907824 224907824 377815722 377815722 64828544 64828544 131463384 131463384 44725872 64738296 382472586 382472586 372294546 372294546 272929864 94411984 274837968 374505538 374505538 305874584 321398050 321398050 130104640 621585481 621585481 320374112 570130977 899196283 899196283 929546144 949254915 949254915 398859554 398859554 675357829 675357829 839319584 961387959 961387959 466350178 847690930 847690930 825416258 825416258 819365575 432490660 712357192 712357192 751397923 751397923 431017600 748007237 748007237 180478164 416359110 416359110 488110638 488110638 575506747 575506747 1050679446 1050679446 786180943 645084629 436219949 755379260 755379260 1007689736 1007689736 632175977 220267264 791124313 791124313 43114984 122781820 620815561 620815561 190441140 713368528 713368528 567512673 173628209 763363949 763363949 678042648 671354333 1016144463 1016144463 835066083 835066083 891872016 891872016 572703504 560480351 560480351 556438048 679527843 872989736 889840683 889840683 847523026 847523026 801942619 690747533 630440833 573707025 873955641 942426422 942426422 629476028 638398233 638398233 725879287 725879287 692324548 880804203 880804203 1036133056 1036133056 547362976 469401640 469401640 64705024 64705024 188937936 188937936 143679536 201662984 201662984 153673988 252737920 252737920 92342656 152424456 177447528 177447528 68941320 229820004 229820004 252413184 619879872 637360232 637360232 219590637 134218308 134218308 75761736 294969416 294969416 426412162 1026953252 1026953252 1008207405 321015122 321015122 67375072 521979530 521979530 675866613 675866613 256403724 256403724 158211492 686990272 686990272 567667425 265271744 628359960 628359960 559565060 718874325 718874325 711700597 591463221 591446193 556800821 573645585 573645585 206680628 172805268 151677296 35715008 13350016 18371680 18371680 18351648 559801024 559801024 178522452 178522452 244622729 682191013 722543157 722543157 686818245 686818245 943721182 943721182 538184193 1056229915 1056229915 826122773 826122773 437191892 780745746 780745746 213160136 213160136 134604804 677560296 677560296 414921390 414921390 269664468 275911570 275911570 104530304 361972720 363461416 363461416 495872356 495872356 470574918 409563524 580743440 1067688641 1067688641 520184296 161587666 501219424 501219424 471916288 98212584 25301088 277182817 942281987 942281987 724049923 630704987 630704987 556270881 60128853 193196148 193196148 420062268 420062268 940003112 940003112 908958212 514593324 514593324 162601796 163651888 677650839 835038116 835038116 542501505 99300840 804371778 970040087 970040087 412234255 396020972 647005040 663225441 663225441 337679194 663770936 663770936 701927504 719098005 719098005 704311217 704311217 687621168 157717808 239488517 239488517 768541140 776920221 776920221 693624093 668768997 542675673 548487969 548487969 539042368 246466440 246466440 239333532 218742904 125887532 114608856 68143672 101734736 101734736 961121973 961121973 762191141 1008914703 1008914703 393343759 465123868 465123868 998878114 998878114 767888387 767888387 982573531 982573531 595970172 981729882 981729882 969478247 969478247 763376893 705314424 705314424 945034389 945034389 89161408 798895672 798895672 335269961 306719776 330283938 330283938 79411536 79765952 79765952 305137928 537215234 1028704897 1028704897 495774831 226820206 219540012 10325676 399360 23120000 49569984 49569984 75761600 112538784 112538784 121910704 121910704 99754352 75236232 87280488 87280488 74522752 24264704 24265632 25642944 25642944 17378816 25787680 25787680 15208448 13599744 13599744 11324736 13031616 13900224 25115072 205635968 205635968 190494224 558372517 832046147 832046147 991809074 1024796458 1024796458 353493546 293865570 831554240 1017153076 1017153076 722995535 826049049 925369659 925369659 892677909 841427335 451827344 775528212 775528212 11550848 15778752 49680008 109762520 109762520 541520000 550621705 550621705 612998350 612998350 1021887360 1021887360 978896535 562801408 566157153 566157153 33124640 57579328 57579328 44378688 44378688 45901888 45901888 183710676 183710676 169341316 181210688 181210688 9884048 273157008 304912658 304912658 269642018 85866016 268971048 368249228 368249228 950861103 950861103 889161933 761563616 272898316 953336352 953336352 658279500 658279500 451152342 180667266 53527344 122702696 122702696 787504872 787504872 799164968 799164968 219287624 764543588 788782388 788782388 746789484 780423224 780423224 579330112 67963056 566005600 567863137 567863137 540082496 554616065 554616065 554603297 945590912 945590912 477405839 471520782 672736773 909258880 913384347 913384347 170182932 240735502 240735502 647240048 647240048 622791721 612886368 631058025 631058025 630319168 40371856 38816144 63191376 63191376 61074896 37323776 37323776 191507824 191507824 84163372 80273928 427650304 484444614 528787524 531647068 531647068 261655418 144793904 241247512 241247512 517963740 517963740 512634883 367736298 767441996 767441996 668947633 657122291 383418856 617628051 617628051 323726256 323726256 899919970 899919970 877665066 877665066 99224736 132665668 237426972 237426972 155782676 39585280 159383652 159383652 318120608 329726322 329726322 177541590 168324736 432351460 432351460 306201824 65830672 38292480 38179024 35685136 35685136 612377140 780145349 780145349 57860945 626612004 744747405 799123265 799123265 623512864 623512864 624815310 752877261 752877261 617055748 539631905 556320033 556320033 555431457 565542305 565542305 686499601 686499601 652216217 652216217 1028137486 1028137486 990169875 990169875 943753537 402705281 105980568 85516928 288044210 577241520 897091385 897091385 974588298 974588298 606380614 606380614 405137859 710347002 1034163031 1034163031 704643093 704643093 676146193 541065345 144253480 144253480 103002992 94033512 85156928 184055876 184055876 181961664 731128353 731128353 601214001 601214001 591519921 591519921 721419632 721419632 706400613 675601269 709168581 709168581 700523653 700523653 602200148 33783968 381883328 381883328 923547055 923547055 589047926 589047926 680933703 680933703 639777321 841552672 845838464 845838464 662400361 662400361 96598016 703819097 710730880 710730880 548444033 694027492 801511677 1066556499 1066556499 996224512 1008748888 1008748888 291876354 892225549 892225549 396533142 761405811 761405811 111748440 111748440 790140226 880793164 880793164 439011769 439011769 900805933 900805933 636691372 1042363528 1042363528 1002617115 1002617115 579930148 687939637 687939637 680381473 192097972 511452926 833977336 1061116197 1064704959 1064704959 419744480 945446307 945446307 913568667 913568667 879486602 344535342 408110536 431525926 431525926 508711262 508711262 403504194 292597554 322300722 829531300 829531300 751021088 773972037 773972037 721741621 562061602 562061602 359245102 810139824 839476275 839476275 517008555 209780832 803608960 803608960 680480467 707586091 860036848 917474334 917474334 837436275 818551186 852809414 852809414 183100884 183100884 140633472 48357840 43836880 44406450 333274594 388161258 388161258 277272642 277272642 248562396 388644018 388644018 335752209 661207098 661207098 621332740 624028616 624028616 621003041 536891936 805656608 822341667 822341667 789130340 789130340 773759251 739365941 705202486 529804344 795659046 795659046 315400370 677577031 874717558 874717558 441214609 441214609 654570500 655225348 655225348 236284428 201353736 85457448 727927568 727927568 197212177 97038876 15792840 79676672 79676672 131878050 305965258 305965258 305011986 293393072 31222016 31222016 29181344 29181344 334215330 334215330 289791362 289791362 561913240 691488788 708461104 708461104 523528269 315837290 574501080 868401065 881134187 881134187 82925304 103853928 103853928 327319584 387119560 387119560 81917128 88287304 93390504 93390504 86358264 115743192 115743192 197402689 725952693 725952693 690428565 563222884 698201824 698201824 572979125 629906475 1005273238 1005273238 872482824 872482824 857092778 335597592 313309272 602565066 602565066 621491575 786044637 1052690818 1052690818 490666698 490666698 517069734 517069734 369641530 369641530 337776906 342772874 342772874 470073856 834592611 834592611 552700162 562119201 591414164 686245252 686245252 180992405 185620885 1048440735 1048440735 826978466 826978466 225799074 100742301 385912816 385912816 411966114 1002216040 1002216040 133136889 336101774 336101774 410017812 572097434 572097434 103884121 706756612 992243334 992243334 706052226 706052226 575618193 575618193 403052550 996617217 996617217 581576649 683121841 737376659 920262363 1002735074 1002735074 457037562 270242816 124205496 641827094 641827094 344874434 730480116 854146325 854146325 941821672 941821672 822219278 923927097 923927097 1014044034 1014044034 655926570 655926570 1046561844 1046561844 1038099456 1038099456 908826039 816366915 447533407 436232542 574961958 982203477 982203477 805597266 600148116 638417035 906462224 906462224 281616472 373818522 395781538 395781538 369181288 327209338 289212858 289212858 356280268 356280268 292359700 237463964 422647124 422647124 288494370 288494370 271123120 34787856 272276112 272276112 71351824 114470672 114470672 37995736 117446768 358498872 358498872 1083098 63495232 887783947 888588041 888588041 639032589 874512551 874512551 726262332 726262332 391168698 391168698 360716266 371661786 982956034 990664711 990664711 444793969 17057824 17057792 19052752 96733344 130287864 130287864 113384496 487654445 688794157 1060862785 1060862785 615628604 607327932 521914888 678909355 678909355 258808380 106372370 158795834 1004745132 1004745132 662909049 488453668 323528112 865825968 865825968 270540802 37202180 36909461 281168451 281168451 716210372 716210372 407928849 868840132 991614519 991614519 974176791 974176791 313024597 696811783 696811783 701304944 701304944 564332920 875889097 875889097 355281352 846937289 846937289 275449518 696385649 696385649 168171540 302559232 311476818 311476818 270856498 270856498 126563386 131463384 273127808 312026130 312026130 300807296 103243792 101052592 101052592 113396656 131399416 274837968 274985346 274985346 104079888 101188632 52764976 52764976 335245832 335245832 320374112 91801512 474538145 474538145 283266531 949254915 949254915 862464150 862464150 675357829 675357829 839319584 961387959 961387959 466350178 847690930 847690930 825416258 825416258 433489408 432490660 712357192 712357192 1034495343 1040544295 1040544295 985661271 805380099 945020931 945020931 944976519 843928018 247849744 689706212 689706212 743518611 1040445471 1040445471 878736071 979516177 979516177 755379260 617488458 632175977 632175977 598741432 791124313 791124313 630329961 747911204 837190178 837190178 190441140 190441140 190656180 190656180 169683124 173199488 173199488 5452416 63182911 1016144463 1016144463 783942627 601569009 612080236 612080236 572703504 538055169 900375548 900375548 783410013 872989736 889840683 889840683 847523026 847523026 801942619 1049540062 1055915487 1055915487 106620696 873387834 873387834 628123125 244967004 1005363733 1005363733 692324548 692324548 880804203 880804203 996808753 996808753 623300002 1057011864 1057011864 143010162 182086388 220003508 256699484 256699484 235987052 235987052 153673988 252737920 252737920 89863848 152424456 177447528 177447528 38871696 126403552 126403552 622475609 622475609 619879872 613942857 612284233 612284233 716605716 716605716 599009417 603270129 603270129 760774701 760774701 685015853 233309768 233309768 29361228 16900128 121651368 121651368 209034136 256403724 256403724 162607188 162607188 132732360 245949216 265271744 265271744 221503100 216137356 718874325 718874325 711700597 591463221 591446193 556800821 573645585 573645585 56377872 56377872 21016176 300438544 404891604 404891604 431556100 431556100 559801024 559801024 848299091 848299091 497551105 682191013 722543157 722543157 686818245 686818245 372777304 372777304 879837314 1056229915 1056229915 826122773 826122773 799452893 620890596 620890596 481514478 498983902 758594869 1046322017 1046322017 505306836 414921390 505809864 505809864 442815366 399424624 399424624 556447641 556447641 451387388 810065541 810065541 696450164 644981137 1043563317 1043563317 760588296 760588296 958225060 1054442566 1054442566 184807476 149074764 149074764 270669112 520181120 727712954 772482419 772482419 562697313 415838375 402686020 276873282 276873282 276873282 142622726 202539564 809679400 809679400 520117439 162601796 162601796 155532864 9177152 9177152 822570208 822570208 809758851 734212341 734212341 235397252 496463406 608398532 608398532 605577741 340576391 0 0 701927504 701927504 42097381 26486304 561689345 561689345 157717808 239488517 239488517 768541140 776920221 776920221 693624093 668768997 542675673 548487969 548487969 539042368 246466440 246466440 236995924 236995924 151643900 72355500 106520744 106520744 29283205 961121973 961121973 762191141 1008914703 1008914703 931319931 931319931 806034131 591147087 591147087 767888387 767888387 384803223 595970172 595970172 580294705 580294705 842695010 864552051 1070146739 1070146739 476128689 65122760 87290132 89161408 798895672 798895672 335269961 306719776 344457976 344457976 204118804 470678536 470678536 305137928 537215234 1028704897 1028704897 495774831 226820206 219540012 10325676 399360 23120000 42402544 42402544 110161872 110161872 101526552 101526552 42213784 68244640 68244640 29373952 30856704 30856704 24264704 24265632 25642944 25642944 157852961 157852961 143014564 143014564 746711501 746711501 549712065 74861129 607398089 607398089 94571072 677002633 677002633 205863592 205863592 205858956 157714596 157714596 69410088 421677952 421677952 1038197628 1038197628 797257032 633366206 1029530517 1029530517 968174439 841427335 841427335 451827344 775528212 775528212 675097108 675097108 544099089 616772425 616772425 541520000 550621705 550621705 546327040 361792178 1021887360 1021887360 978896535 946131171 834849159 566157153 33124640 168380353 581937621 581937621 571353809 181041360 15343892 183710676 705800720 705800720 985491154 985491154 671387908 671387908 304912658 305632536 391215290 391215290 380909097 855248201 855248201 950861103 950861103 889161933 807916294 960237351 960237351 298984547 658279500 658279500 809725304 1023153439 1023153439 1062371808 1062371808 786453536 786453536 799164968 799164968 621398048 621398048 788782388 788782388 204232721 780423224 780423224 75497536 67963056 53103920 53103920 57872160 57872160 554616065 554616065 819386464 819386464 477405839 477405839 538198731 672736773 672736773 297552032 949622222 949622222 874250890 606785634 239739793 270412802 383787672 612886368 631058025 631058025 630319168 26516096 21369824 7607168 35725696 93003396 260391052 260391052 255553964 194146184 194146184 188237768 188237768 484444614 484444614 531647068 531647068 261655418 229951332 241247512 241247512 517963740 517963740 512634883 367736298 767441996 767441996 668947633 657122291 383418856 617628051 617628051 320544730 288056114 91514960 91514960 109363952 109363952 99224736 132665668 237426972 237426972 155782676 364964090 364964090 345373318 345373318 129170206 497369196 497369196 341483768 341483768 306201824 306201824 65830672 47896272 407412883 728862977 856736257 856736257 922815378 922815378 577087636 1061446082 1061446082 799123265 799123265 706352661 706352661 624815310 752877261 752877261 617055748 271688594 185461812 188509988 188509988 266872380 266872380 546935253 780946504 780946504 652216217 1028137486 1028137486 680821088 943753537 959765124 959765124 694926756 724227381 724227381 707738020 897091385 897091385 604758967 842015688 850994811 850994811 778253141 778253141 1034163031 1034163031 704643093 704643093 676146193 541065345 130622385 103002992 103002992 144838016 144838016 48809092 33828752 11593920 22088224 22088224 10799424 10799424 7795648 838540979 838540979 827831683 706400613 675601269 333281287 147202336 946530726 946530726 567238003 978732932 978732932 708188949 708188949 640025181 478157578 10748160 10748160 346081970 346081970 634990480 636863496 636863496 51219520 41666104 96598016 96598016 138151408 191666548 514858710 694027492 801511677 1066556499 1066556499 660293145 307697548 307697548 319922184 335874084 335874084 304351506 310925440 310925440 34047042 124534872 157288616 157288616 859740272 859740272 143255491 138494752 138494752 567719585 855688295 1000614677 1000614677 949715648 949715648 687939637 687939637 653820748 653820748 1031407114 1031407114 534496674 899712209 899712209 419744480 487610536 487610536 257036336 206570124 175112380 414372616 478150734 483410446 483410446 508711262 508711262 282658544 292597554 322300722 829531300 829531300 686035765 240729524 294043292 518975032 518975032 135037216 622937224 810139824 839476275 839476275 517008555 367579394 803608960 803608960 680480467 707586091 860036848 860036848 837436275 837436275 818551186 852809414 852809414 407959254 272139010 276301570 283198992 283198992 44406450 333274594 388161258 388161258 277272642 425146292 440664022 938271226 938271226 634199131 501277134 1059441918 1059441918 652389999 624028616 858999209 858999209 805656608 822341667 822341667 788048091 113254397 270282560 270282560 283715584 303039952 576456714 963289108 963289108 167859623 13534912 536892448 536892448 219386416 654570500 654570500 85484041 572527668 572527668 757240104 757240104 727927568 138810472 205397452 214568768 214568768 15128832 46625880 46625880 15009416 290277216 290277216 117252152 113043328 113043328 46129472 33959872 17162272 274837860 274837860 163734950 691488788 691488788 592463765 900094201 900094201 900090107 900090107 283927528 283927528 774792496 774792496 849482067 849482067 615651174 418972930 418972930 139854436 417682244 417682244 157706322 328067186 334054736 334054736 331433202 287404144 52885648 52885648 53543680 53543680 264302318 629906475 1005273238 1005273238 92500030 256016506 256016506 269484546 874390336 874390336 616513353 621491575 786044637 1052690818 1052690818 318770992 192729012 192729012 207543948 487656232 487656232 337776906 396772392 396772392 470073856 470073856 15780480 270821056 274327170 274327170 193467392 193467392 258323912 621076684 1048440735 1048440735 826978466 826978466 673078801 100742301 385912816 385912816 696943843 1002216040 1002216040 957600804 944568643 807534607 807534607 675886084 572097434 103884121 706756612 706756612 458017974 458017974 422102036 867025408 867025408 169355349 593966081 593966081 581576649 683121841 737376659 920262363 1002735074 1002735074 885121227 270242816 895725896 1061230871 1061230871 561949712 940798764 940798764 854146325 941821672 941821672 839045139 950452243 950452243 1014044034 1014044034 881604316 655926570 1046561844 1046561844 1033900181 305101141 948487239 948487239 472452356 472452356 537614529 1034858881 1034858881 805597266 600148116 638417035 906462224 906462224 111559728 193060980 336654850 369181288 445958742 445958742 289212858 289212858 356280268 356280268 292359700 186402756 422647124 422647124 288494370 288494370 271356064 268484610 272276112 275532818 275532818 331608952 331608952 309714906 321046248 358498872 358498872 126389304 302272360 887783947 888588041 888588041 639032589 1040430378 1040430378 659498645 659498645 263901128 315801646 900734951 900734951 579764340 755094549 755094549 761516145 761516145 553959824 329865773 504517214 834193251 834193251 557776133 557776133 353701920 1023091277 1023091277 907491326 914499794 914499794 503447952 503447952 489954056 423698598 158795834 1004745132 1004745132 662909049 669114873 669114873 416810677 653737296 854556162 854556162 806426322 815041490 815041490 552616080 720425475 720425475 589322433 298894050 945340690 974176791 1023418617 1023418617 696811783 696811783 574687777 574687777 564332920 875889097 875889097 355281352 846937289 846937289 275449518 696385649 696385649 503386726 503386726 311476818 311476818 270856498 270856498 126563386 125562072 273127808 312026130 312026130 300807296 103243792 101052592 101052592 113396656 131399416 131399416 52870880 806363939 806363939 318826282 605466303 659625768 671686917 671686917 563683493 431249078 1013743748 1013743748 81922281 946694726 946694726 862464150 862464150 572064529 588777008 588777008 139400340 139400340 789504 135168 135168 344983048 344983048 6322560 181384552 214610180 712212850 1034495343 1040544295 1040544295 985661271 983563863 983563863 945020931 944976519 843928018 247849744 856490480 856490480 546308616 1040445471 1040445471 878736071 979516177 979516177 409013969 617488458 617488458 598741432 738406413 869466395 869466395 703595493 747911204 837190178 837190178 503379212 338672915 808539947 808539947 454346535 463010850 1006300926 1032192477 1032192477 653998356 428030062 428030062 349019332 612080236 612080236 256037052 256037052 900375548 900375548 783410013 487171659 520676894 520676894 910922298 941021703 1014488607 1049540062 1055915487 1055915487 5681119 4458624 628123125 628123125 244967004 1005363733 1005363733 157139690 1362432 25258592 25258592 996808753 996808753 623300002 1057011864 1057011864 143010162 182086388 220003508 256699484 256699484 235987052 235987052 16826400 16777344 20971680 20971680 30499424 139986068 139986068 105067784 255748812 255748812 622475609 622475609 613942857 766282100 766282100 612284233 896025984 896025984 599009417 603270129 869424810 869424810 760774701 685015853 168319320 168319320 130332988 258475500 258475500 188140532 188140532 468742914 468742914 446056992 446056992 145113424 515321126 515321126 188497720 500599720 500599720 276107340 12583104 721775008 721775008 721604661 252877613 19085604 539277328 539277328 574638081 574638081 847005632 847005632 598213650 431556100 431556100 402663412 547933760 848299091 848299091 497551105 365474798 284378856 275590320 357122176 415239910 415239910 370420824 879837314 879837314 614542420 614542420 799452893 799452893 980956043 1031683574 1031683574 498983902 758594869 1046322017 1046322017 794037837 794037837 505809864 505809864 442815366 399424624 732078455 831478522 911873691 1014242580 1014242580 810065541 696450164 644981137 1043563317 1043563317 760588296 760588296 958225060 1054442566 1054442566 184807476 149074764 474483265 1021236487 1021236487 996884505 980049942 772482419 562697313 546156925 546156925 541142391 317124306 317124306 1066349544 1066349544 992406432 992406432 520117439 174875522 156115238 680338313 743452748 923348389 923348389 822570208 809758851 963097708 963097708 792897668 496463406 608398532 608398532 605577741 340576391 625773640 625773640 75793984 550840513 565208800 565208800 565654368 565654368 555669761 555669761 5276928 3164416 3164416 0 0 16777216 16777248 16777248 262341904 262341904 225608576 225608576 236995924 236995924 201977872 72355500 106520744 106520744 57090480 57090480 21180576 123965832 123965832 280492969 931319931 931319931 806034131 591147087 889716874 992687415 992687415 583893031 285251616 285251616 167907348 269668866 842695010 864552051 1070146739 1070146739 476128689 670492949 781269267 781269267 539081377 524749051 47280874 517143050 517143050 479365206 513276510 513276510 529719583 529719583 873685919 873685919 995946166 995946166 100737048 944271212 944271212 624554562 624554562 876484152 876484152 555703312 369547056 101526552 101526552 155066362 451757566 451757566 404264854 266280902 266280902 447555204 447555204 270507714 430377698 430377698 296223940 143014564 143014564 746711501 746711501 680216704 680216704 671593669 607398089 149553612 677002633 792865877 792865877 572863413 657307168 657307168 87203848 87203848 421677952 421677952 1038197628 1038197628 797257032 633366206 1029530517 1029530517 968174439 605596033 604892169 554010169 203604497 128286320 675097108 675097108 672777293 752444621 752444621 249462364 249462364 546327040 546327040 323809793 556913193 732029301 946131171 946131171 834849159 606025635 606025635 602258704 581937621 581937621 571353809 685534800 685534800 179243157 705800720 705800720 985491154 985491154 677515520 671387908 174724103 305632536 391215290 391215290 380909097 855248201 855248201 841483539 875167626 875167626 807916294 960237351 960237351 298984547 428068128 624186102 809725304 1023153439 1023153439 1062371808 1062371808 786453536 786453536 86165996 671089157 671089157 621398048 651630688 671365096 732888436 749260897 749260897 687876188 9240776 24062080 24062080 23542176 21120256 11146560 11146560 819890210 819890210 424330881 352067530 538198731 538198731 297552032 297552032 949622222 949622222 874250890 746389765 221587084 20193313 92498432 92498432 3459840 46747268 189576404 189576404 184570004 174080916 174080916 93003396 260391052 260391052 255553964 194146184 194146184 278732886 278732886 442098192 442098192 189269172 216532120 229951332 229951332 116949748 493896748 493896748 285352956 227812048 259078140 617294884 617294884 570720866 570720866 364125216 347739978 320544730 320544730 288056114 91514960 91514960 109363952 109363952 40894592 54838032 54839472 180725872 180725872 364964090 364964090 345373318 345373318 250569284 497369196 497369196 341483768 341483768 7463808 33576640 47896272 47896272 407412883 728862977 856736257 939561258 939561258 922815378 577087636 1061446082 1061446082 668991993 614636773 706352661 706352661 69918859 678713369 678713369 398463758 429007036 429007036 188509988 188509988 266872380 351874960 546935253 780946504 780946504 100696200 100696200 64115168 64115168 466712592 959765124 959765124 694926756 724227381 724227381 707738020 724442421 761406338 809129406 842015688 850994811 850994811 778253141 778253141 960108035 960108035 739089521 730823452 705932324 570438145 570438145 401631506 120052424 449611178 449611178 60416848 60416848 48754000 566009201 595591168 855638129 868686497 868686497 838540979 838540979 827831683 715037013 715037013 333281287 16826400 946530726 959313830 959313830 978732932 978732932 708188949 799496492 957670065 957670065 866646387 21896352 1009784588 1009784588 568590347 218899532 218899532 124619120 37798032 57055268 211997700 229802132 262953672 262953672 1052672 13231296 1040270250 1040270250 728884149 191413458 369029474 369029474 1006675221 1006675221 389669906 838871703 838871703 256765110 440175624 833381064 913935626 913935626 934491811 934491811 552893904 310316656 567719585 855688295 1000614677 1000614677 949715648 949715648 730272996 566354161 653820748 653820748 1031407114 1031407114 566544609 899712209 997890107 997890107 1026914309 1026914309 1014447003 974267148 974267148 414372616 478150734 483410446 483410446 211948386 156270596 156270596 262144 264192 120010968 120010968 240729524 240729524 294043292 877217542 877217542 873005751 981467179 981467179 789053535 1032437765 1032437765 859534717 622380801 328943478 371844378 371844378 219330358 187172148 277926420 437403712 437403712 272650900 407959254 407959254 307807442 276301570 283198992 283198992 41992272 39098496 202998892 202998892 112215704 425146292 440664022 938271226 938271226 634199131 501277134 1059441918 1059441918 652389999 610390145 858999209 858999209 389130539 352585770 690692842 690692842 688470041 682498615 737149941 788467331 788467331 976107030 976107030 963289108 611245449 611245449 1044599858 1044599858 157090337 187563808 187563808 672537093 672537093 572527668 757240104 757240104 84018341 138810472 205397452 214568768 214568768 79495552 71342280 285831882 358133410 358133410 117252152 117252152 113043328 113043328 46129472 292429218 297940290 297940290 959583015 960110341 960110341 959589124 959589124 900094201 900094201 900090107 900090107 794133655 794133655 774792496 774792496 849482067 849482067 943083393 943083393 878822223 739553250 417682244 685913571 685913571 730795031 730795031 730235010 730235010 539048068 566679936 566679936 669109334 1036523007 1036523007 994853520 994853520 784917623 784917623 256016506 256016506 269484546 874390336 874390336 616513353 386463387 345934968 320000562 318770992 318770992 192729012 192729012 207543948 487656232 487656232 213688838 396772392 396772392 429598857 1012145319 1012145319 424940610 424940610 449193761 449193761 193467392 258323912 621076684 621076684 912541088 912541088 858033979 673078801 41656461 158076064 226839140 696943843 696943843 957600804 957600804 944568643 943400459 943400459 675886084 413291330 413291330 176213413 411674864 458017974 458017974 820325779 867025408 867025408 871833442 871833442 318206304 49282512 66040192 102408520 277590632 811111659 885121227 885121227 339750122 895725896 1061230871 1061230871 608210328 940798764 940798764 236551186 454116869 457328000 839045139 950452243 950452243 600032551 881604316 945745626 945745626 361930737 913450544 913450544 877962771 948487239 948487239 472452356 472452356 719164322 1034858881 1034858881 446391878 446391878 285147324 126450776 126450776 111559728 193060980 193060980 295156064 445958742 445958742 319111704 224504374 41282448 249948636 448037628 461447286 461447286 838861207 838861207 301990918 705197461 992969056 992969056 981760323 275532818 855656986 855656986 622119465 628240137 628240137 841855145 841855145 344940840 538154843 824207664 824207664 590929701 1040430378 1040430378 659498645 659498645 263901128 315801646 900734951 900734951 579764340 755094549 755094549 761516145 761516145 602544315 860495209 860495209 834193251 834193251 557776133 557776133 353701920 1023091277 1023091277 907491326 914499794 914499794 843120958 843120958 489954056 476686734 849685982 1067817480 1067817480 822395934 764393565 947321588 947321588 662892162 854556162 854556162 806426322 815041490 815041490 552616080 720425475 720425475 589322433 298894050 945340690 945340690 1023418617 1023418617 568885296 214545164 337338650 337338650 213124026 309077840 309077840 273482516 143666320 255722684 255722684 516692510 516692510 503386726 503386726 113320656 33818640 12968144 4718720 4718720 22561792 22561792 7026048 122628792 122628792 58713984 69347720 69347720 113090776 113090776 279315176 823398257 823398257 806363939 318826282 605466303 659625768 671686917 671686917 563683493 431249078 1013743748 1013743748 754327868 754327868 589048193 620965485 620965485 578814209 588777008 588777008 567083155 567083155 1018802079 1018802079 744109033 744109033 616730793 616730793 292477112 248179828 214610180 517133022 967487642 967487642 1063094059 1063094059 983563863 600837890 311523575 233181450 312430828 856490480 856490480 546308616 612368457 847414337 847414337 753000909 753000909 282538498 269695682 269695682 540345228 738406413 869466395 869466395 703595493 411380643 297902314 503379212 503379212 338672915 808539947 808539947 454346535 463010850 1006300926 1032192477 1032192477 653998356 616899191 349019332 952751822 952751822 212758697 614601033 614601033 96487460 236268060 810689702 810689702 545289278 562696803 910922298 941021703 1014488607 1014488607 1072823035 1072823035 820543772 404714270 404714270 109059416 134057306 400417784 400417784 25030560 1362432 25258592 25258592 357042218 558382720 558382720 286532104 286532104 65175840 103417568 103417568 70854408 200095432 200095432 157090980 157090980 87719736 88305820 88305820 151353768 184272888 184272888 105067784 255748812 536932920 536932920 328359714 328359714 766282100 766282100 313883009 896025984 896025984 373484168 373484168 869424810 869424810 302988306 558009568 647154377 647154377 269231234 340336848 1061197332 1061197332 840693267 772830222 468742914 447891760 447891760 145113424 515321126 515321126 72881800 500599720 500599720 883177799 883177799 721775008 721775008 721604661 252877613 94390544 539277328 575049848 575049848 574638081 847005632 847005632 835723634 981533360 981533360 34603536 34603536 34603536 542441832 589367386 938213564 1049889645 1049889645 747186874 415239910 415239910 340528266 545041544 545041544 912598150 912598150 893398022 893398022 980956043 1031683574 1031683574 811672010 811672010 724010307 246071745 794037837 794037837 161537321 68240160 338285576 912205572 912205572 912307860 912307860 1014242580 1014242580 92221792 92221792 637657480 637657480 595953700 595953700 367007987 16929064 32675712 193440336 193440336 174595616 474483265 1021236487 1021236487 996884505 980049942 84410624 915228826 915228826 650913309 541142391 317124306 886599013 1066349544 1066349544 992406432 992406432 673997568 673997568 156115238 680338313 743452748 923348389 923348389 894116927 894116927 963097708 963097708 792897668 405016990 777649809 777649809 442159761 436856435 625773640 625773640 75793984 550840513 565208800 565208800 565654368 565654368 555669761 555669761 114922448 637464716 733404021 758608437 758608437 655508021 553648161 563118929 682721392 682721392 257044712 225608576 203493480 201977872 201977872 180425732 180425732 135673892 57090480 942853717 942853717 544715617 943792263 943792263 401740794 401740794 484251158 484251158 889716874 992687415 992687415 583893031 316715080 316715080 723680706 723680706 688391205 555746067 991294754 991294754 474430985 796152490 796152490 781269267 539081377 524749051 597531298 711409508 711409508 479365206 513276510 513276510 529719583 529719583 873685919 873685919 995946166 995946166 100737048 944271212 944271212 624554562 858784272 876484152 876484152 555703312 369547056 86432040 94746664 155066362 451757566 451757566 404264854 266280902 266280902 447555204 447555204 270507714 430377698 430377698 296223940 5908128 6347776 9160064 9160064 740073040 772031709 772031709 249573781 149553612 48373045 792865877 792865877 606661954 881141835 881141835 397958266 397958266 362964752 374493824 863343318 863343318 787495107 540525281 672999256 672999256 605596033 605596033 822453368 822453368 405004379 128286320 211634888 650375384 672777293 752444621 752444621 718931844 608383616 638783625 638783625 684316198 956924419 956924419 826527907 813875382 687277320 687277320 609561475 602258704 135144704 135144704 672132224 685534800 685534800 179243157 178442580 35789188 150245892 677515520 677515520 140513408 140513408 48809424 293143456 293143456 51516226 53211648 56881584 117568320 117568320 74478784 86366152 86366152 81539712 103376520 428068128 624186102 624186102 101245713 100921368 264331320 264331320 664146045 664146045 99271164 671089157 671089157 231809772 651630688 671365096 732888436 749260897 749260897 687876188 67875008 57954960 589970576 589970576 540964753 562561251 562561251 823400513 823400513 945169988 945169988 403651590 474552456 474552456 2359304 69470472 69470472 746389765 746389765 293080704 357646409 410240429 679144480 698665317 765368072 765368072 189576404 184570004 174080916 174080916 55796260 181236468 181236468 184983792 450221650 450221650 278732886 278732886 442098192 442098192 189269172 216532120 216532120 85607992 89838124 529679656 529679656 493015692 487293508 487293508 617294884 617294884 824182889 824182889 397968664 397968664 379904178 379904178 366665032 810877586 810877586 583033936 583033936 332949968 60556516 186646836 186646836 237500700 237500700 241360928 241360928 198482872 250569284 250569284 115085016 492053314 492053314 194866228 299683504 301255378 301255378 44082930 138428128 164343984 939561258 939561258 505604143 21888316 33759240 307938462 826399888 826399888 853331667 853331667 617471775 695768121 695768121 617612308 617612308 429007036 204023052 204023052 152945000 351874960 374409672 773712513 773712513 116783096 116783096 785468049 785468049 6406656 556810624 556810624 824231317 824231317 807438467 805580819 576921618 761406338 809129406 809129406 695519360 695519360 558940833 537396225 960108035 960108035 938599419 730823452 705932324 898895476 898895476 401631506 157376772 449611178 449611178 60416848 60416848 48754000 566009201 595591168 855638129 868686497 868686497 574231842 673062640 737217077 737217077 715037013 575068836 406971585 289794210 959313830 959313830 827053955 424817920 424817920 799496492 957670065 957670065 866646387 348396776 1009784588 1009784588 568590347 606127616 606127616 124619120 100976664 100976664 211997700 229802132 262953672 799577074 799577074 450888150 1040270250 1040270250 728884149 191413458 369029474 369029474 1006675221 1006675221 693444756 838871703 838871703 256765110 440175624 833381064 913935626 913935626 934491811 934491811 552893904 683046560 683046560 562124768 815437764 815437764 280144642 730272996 730272996 566354161 164307972 164307972 565720288 565720288 961809063 961809063 997890107 997890107 1026914309 1026914309 1014447003 974267148 974267148 324699816 324699816 362971176 362971176 380294490 380294490 369609320 396431170 396431170 337142786 900861697 900861697 326505856 326505856 877217542 877217542 873005751 981467179 981467179 957088324 1032437765 1032437765 859534717 622380801 162014325 38532240 190547728 190547728 187172148 28493172 134365184 134365184 13292736 316216784 316216784 307807442 6817024 48507920 48507920 5555840 39098496 39098496 61534536 155353488 220984620 220984620 247777500 470942144 470942144 357965202 357965202 874521354 874521354 544406152 544406152 813572609 820061136 820061136 690692842 690692842 688470041 682498615 737149941 788467331 788467331 976107030 976107030 653783195 611245449 611245449 1044599858 1044599858 608582721 194325288 260209248 672537093 672537093 86644008 671199232 671199232 623025152 688198924 688198924 79691976 83689728 83689728 71342280 285831882 358133410 358133410 68078592 27846112 27846112 25817152 25817152 292429218 297940290 297940290 959583015 960110341 960110341 959589124 959589124 375654810 544588612 791596036 791596036 794133655 794133655 691059464 1036011202 1036011202 756598317 943083393 943083393 878822223 739553250 409904900 685913571 685913571 730795031 730795031 730235010 730235010 700799336 566679936 566679936 669109334 1036523007 1036523007 994853520 994853520 784917623 784917623 222486602 222486602 280512138 571417064 654710841 848438903 1054025969 1054025969 947204672 947204672 216701038 366866154 366866154 82317218 306868242 306868242 38749648 4452352 0 429598857 1012145319 1012145319 688766400 817229377 965077095 965077095 198361827 112382056 113678744 394970386 912541088 912541088 858033979 695064489 885698313 885698313 758349283 226839140 26231884 713038375 713038375 753418149 943400459 943400459 144219396 413291330 413291330 715270288 715270288 172015877 315435104 820325779 820325779 832688946 871833442 871833442 318206304 58696976 66040192 66040192 344558664 345004746 358563498 358563498 339750122 339750122 537212069 537212069 608210328 608210328 223783812 137360444 137360444 22261922 214376936 214376936 338890120 338890120 780295747 945745626 945745626 361930737 913450544 913450544 877962771 877962771 830263203 875078976 875078976 719164322 747176692 747176692 446391878 446391878 315623600 115769568 65589200 279823460 279823460 170927952 170927952 18139680 319111704 467435686 467435686 319931536 249948636 448037628 470333544 470333544 895052674 895052674 301990918 705197461 992969056 992969056 981760323 840181504 855656986 855656986 622119465 628240137 628240137 841855145 841855145 344940840 538154843 824207664 824207664 590929701 570459658 907593243 946579101 946579101 539628801 171652361 254282616 254282616 261557280 261557280 235547664 265622189 602544315 602544315 860495209 860495209 774266048 477073439 165675492 402983404 402983404 369174078 1061816632 1061816632 744518675 757834014 843120958 843120958 476686734 655410864 849685982 1067817480 1067817480 822395934 764393565 947321588 947321588 662892162 346861056 346861056 346629450 343998594 339044432 308977936 324612856 324612856 198547040 305807586 305807586 162121328 305148274 373296832 373296832 84738096 84738096 27336288 241180820 241180820 172032412 172032412 201598120 201598120 164320484 516692510 516692510 469945558 469945558 113320656 33970514 33970514 389022858 389022858 336102378 336102378 300236240 300236240 283484016 324824202 324824202 391063560 391063560 113090776 279315176 823398257 823398257 598024963 521715656 521715656 231213606 471285024 483342346 751639070 751639070 246483813 228924664 754327868 754327868 1017133394 1017133394 620965485 578814209 730073189 730073189 696518757 691014464 1018802079 1018802079 744109033 744109033 743034382 743034382 681591174 681591174 478721074 478721074 596473032 753400269 1063094059 1063094059 600837890 600837890 311523575 49824208 312430828 312430828 277323586 281916230 313204802 313204802 241890446 214277772 373508823 591910033 798461693 798461693 788602941 579955213 61989481 17056088 364978434 364978434 297902314 916559184 916559184 923988058 923988058 320426810 288100098 327994482 332196978 332196978 323046464 616899191 616899191 195872921 952751822 952751822 212758697 614601033 614601033 484606640 1057217086 1057217086 810689702 545289278 562696803 562696803 936290388 936290388 734211825 1072823035 1072823035 820543772 864199477 864199477 593094321 593094321 563709490 857892225 870552256 870552256 435973478 435973478 403176836 566995908 722621621 722621621 660864448 252552064 127406016 127406016 110896296 200095432 200095432 157090980 157090980 116657112 103029648 88305820 151353768 184272888 184272888 51227936 64037760 536932920 536932920 148832628 76859976 1040609332 1040609332 251859159 138412556 138412556 373484168 538384184 840497665 840497665 302988306 558009568 647154377 647154377 369777274 345843266 1061197332 1061197332 840693267 772830222 328340082 447891760 447891760 52728662 40022272 37871760 4329600 501458216 501458216 883177799 883177799 641774485 642912921 965836042 1043825125 1053418631 1053418631 903686361 792041043 1000358200 1000358200 835723634 835723634 981533360 981533360 735117992 556933741 952506438 952506438 589367386 938213564 1049889645 1049889645 747186874 381174276 269025688 317342991 646657113 673855581 912598150 912598150 893398022 893398022 757471533 291190434 558316109 811672010 811672010 724010307 464806386 391254424 127926368 70910912 294847248 294847248 912205572 912205572 912307860 912307860 413483008 413483008 92221792 92221792 709640960 709640960 595953700 595953700 367007987 16929064 101651148 193440336 193440336 174595616 174595616 194318520 375927222 492047022 492047022 852094624 915228826 915228826 798244612 798244612 629879913 886599013 886599013 160474644 275475844 617108574 673997568 673997568 142883992 143207488 143207488 541336644 541336644 894116927 894116927 872768960 872768960 405016990 405016990 777649809 777649809 442159761 436856435 541082513 541082513 537137040 537137040 22382689 15753280 12700544 541065344 541065344 563752641 563752641 637464716 733404021 758608437 758608437 655508021 553648161 563118929 682721392 682721392 257044712 203493480 203493480 119751296 650663277 650663277 792236192 792236192 157236900 942853717 942853717 671925896 943792263 985151084 985151084 874887609 874887609 484251158 447879268 623344681 623344681 455703815 455703815 316715080 723680706 723680706 688391205 404227590 404227590 271582468 7547136 796152490 796152490 637667376 387013524 286638478 597531298 916036027 916036027 967275072 1045061784 1045061784 450909184 398646676 554781960 589406745 589406745 537734145 243357893 1053504700 1053504700 656430667 858784272 858784272 867569730 867569730 657267217 657267217 77592672 43476720 43476720 977607572 977607572 939887210 937027323 937027323 862952264 10276416 35091600 415993861 415993861 168006739 141345537 779638361 779638361 740073040 772031709 772031709 610373633 71303304 765625560 765625560 736627005 606661954 917245275 917245275 397958266 397958266 826601123 826601123 931457952 931457952 621849792 677244549 677244549 672999256 571523601 571523601 822453368 822453368 680959037 964697215 103813129 213387085 586261392 586261392 844021512 844021512 608383616 638783625 638783625 684316198 956924419 956924419 826527907 813875382 687277320 687277320 609561475 571643136 696592485 696592485 672132224 673936517 673936517 6814080 707897872 707897872 984957776 984957776 675479942 537006081 468456164 229903623 293143456 299184736 299184736 272036840 356829354 356829354 117568320 27305152 299094690 299094690 274941026 159453510 1069814432 1069814432 1050537567 404224518 415263750 415263750 287024792 227055356 167826996 203629136 245417872 245417872 231809772 231809772 604148677 604148677 646139905 738235689 738235689 687874624 595194801 595194801 589970576 587469521 562561251 562561251 823400513 823400513 945169988 945169988 403651590 608314496 608314496 771428579 942805767 942805767 546381419 368641583 494494632 494494632 410240429 679144480 698665317 765368072 765368072 170053908 170053908 75661452 48234960 13686544 659456 2102528 466369730 466369730 450221650 278060118 278060118 953807523 953807523 356944390 634379001 634379001 924279449 924279449 562193738 899830272 899830272 1004472477 1004472477 580704785 541515432 1045233787 1045233787 397968664 397968664 379904178 379904178 366665032 837290450 859113491 859113491 847834434 332949968 60556516 186646836 186646836 237500700 237500700 241360928 241360928 74375244 235239068 235239068 236264520 492053314 492053314 406388992 406388992 378811674 301255378 108148184 317195827 587633094 761945135 967235943 967235943 921316358 857737522 857737522 826950705 826399888 853331667 853331667 617471775 695768121 695768121 617612308 617612308 203497740 204023052 204023052 152945000 81403400 81403400 773712513 773712513 116783096 116783096 785468049 785468049 97871944 97871944 174866609 824231317 824231317 807438467 805580819 576921618 570045182 732562784 732562784 403783744 412213830 412213830 249296604 848603560 938599419 938599419 359518306 696945268 898895476 898895476 308588408 157376772 155813024 155813024 41663360 41663360 4249488 8550976 8550976 580001792 580001792 806096387 806096387 673062640 737217077 737217077 575068836 575068836 406971585 289794210 31613634 4593792 37577108 726097287 726097287 434845158 875839579 875839579 306264354 348396776 1015993127 1015993127 877958160 1048877484 1048877484 625082729 625082729 100976664 755681673 755681673 752348837 799577074 1010001190 1010001190 450888150 558965409 605108369 792817160 792817160 242256166 242256166 693444756 693444756 591625151 136364180 255889596 326289680 399824088 399824088 390076480 206729643 234954780 234954780 683046560 683046560 967181510 967181510 815437764 566415585 541291424 542713473 542713473 46203984 46203984 565720288 565720288 961809063 961809063 805309092 944389625 944389625 776733913 704906517 841351296 841351296 324699816 324699816 362971176 383655642 383655642 380294490 369609320 396431170 396431170 337142786 900861697 900861697 326505856 326505856 515112974 515112974 723255882 831785503 957088324 957088324 931725329 931725329 461382995 948036433 948036433 336728586 349229850 349229850 133218778 275399988 459804960 459804960 466126098 466126098 463826944 283257346 283148608 283886144 283886144 10027970 300233066 472495822 472495822 432018450 452985248 452985248 83039828 895549905 895549905 394338426 864472425 874521354 874521354 545268288 577578502 1041764247 1041764247 883558092 875433307 610345034 654706935 654706935 562701611 333415712 333415712 840098586 840098586 807730530 807730530 548347792 564300152 608582721 640288872 640288872 572654169 260209248 115608024 86644008 86644008 623025152 623025152 688198924 688198924 201532096 201532096 83689728 69722240 91213960 91213960 20508416 20508416 17163552 19258752 19258752 19154240 7081152 13176576 13176576 14341824 337002824 963384997 963384997 602473457 937837114 937837114 544588612 294645083 604064654 604064654 419474817 1036011202 1036011202 756598317 282624239 422102310 422102310 346227524 415371462 415371462 449595416 508047522 508047522 285721732 700799336 700799336 688135264 673844544 159824097 159824097 708769139 708769139 962120342 962120342 702173485 209960752 209960752 280512138 571417064 654710841 848438903 1054025969 1054025969 947204672 947204672 334270290 366866154 430098802 430098802 306868242 306868242 239995964 363468056 363468056 323170566 296026702 215951712 688766400 817229377 965077095 965077095 709505760 112382056 287367376 394970386 394970386 857933092 857933092 695064489 885698313 885698313 758349283 489008788 969643222 969643222 592309425 592309425 193220720 195939956 195939956 137886468 137254676 715270288 715270288 204513545 774482800 774482800 220564757 56269792 370116286 370116286 257817476 511207426 511207426 67617450 344558664 890970361 935538939 935538939 634097897 634097897 529708656 529708656 892498984 892498984 223783812 137360444 137360444 22261922 214376936 214376936 338890120 338890120 312352338 28255026 538848000 541064961 541064961 308466066 660932776 660932776 738214952 875078976 875078976 235399256 747176692 747176692 317992756 317992756 315623600 6894400 65589200 279823460 279823460 283275860 322976738 322976738 198490256 467435686 467435686 445921366 445921366 375773440 470333544 470333544 895052674 895052674 758068514 758068514 178489408 178489408 840181504 939530627 939530627 1003487991 1003487991 143919283 426509408 426509408 169819190 253361188 253361188 857552177 863359691 863359691 570459658 907593243 946579101 946579101 747187812 954747362 954747362 529723704 480566078 478462304 85730032 265622189 553717276 553717276 317271238 774266048 774266048 477073439 165675492 402983404 402983404 369174078 1061816632 1061816632 743255181 1061836080 1061836080 436454069 436454069 655410864 1046252528 1046252528 806145717 1034630511 1034630511 306961861 282354296 359551336 359551336 346861056 346629450 343998594 339044432 308977936 324612856 324612856 487987758 487987758 305807586 53657696 305148274 473434452 473434452 117514266 321724418 321724418 388310062 388310062 172032412 388586526 388586526 201598120 164320484 139191396 96639708 60429936 336298648 336298648 111053128 193269060 389022858 389022858 336102378 336102378 300236240 300236240 380808152 380808152 331534578 391063560 391063560 96142184 96142184 36315712 417859476 419906000 521715656 521715656 404227298 510239758 510239758 751639070 751639070 1004637614 1004637614 755775929 732305448 1017133394 1017133394 278069539 691775237 755786833 755786833 735317296 953494215 953494215 817938627 817938627 222891723 743034382 807469092 807469092 681591174 478721074 1037192292 1037192292 861766639 746801167 512643464 512643464 281728194 261959292 587325396 779413391 779413391 533601534 533601534 460807341 820206218 1000230711 1000230711 967882023 849143596 798461693 798461693 788602941 579955213 354485002 354485002 274016770 274016770 370420778 916559184 916559184 923988058 923988058 403742100 319587858 327994482 332196978 332196978 323046464 143213720 178290704 178290704 93788228 30915176 38800004 168823508 484606640 484606640 1057217086 1057217086 482744526 621867343 948167274 948167274 936290388 936290388 734211825 971370723 971370723 594823026 864199477 864199477 593094321 593094321 563709490 857892225 870552256 870552256 435973478 435973478 403176836 566995908 722621621 722621621 660864448 252552064 127406016 127406016 110896296 74451160 116392920 116392920 116657112 116657112 103029648 140588042 435038286 435038286 404135854 450058678 450058678 606537088 606537088 705060140 882562635 1040609332 1040609332 412822718 532671668 532671668 381021018 823198976 823198976 308408579 55450800 386257976 386257976 369777274 369777274 345843266 345843266 67947528 353727568 353727568 328340082 434520384 434520384 183565026 304161042 304161042 462255536 501458216 501458216 411616326 555767943 776117542 776117542 965836042 1043825125 1053418631 1053418631 903686361 792041043 1000358200 1000358200 201925644 578291204 688616903 865792827 865792827 793927937 967665880 967665880 440528337 288686080 70411439 135300954 381174276 381174276 335993108 335993108 646657113 673855581 673855581 271332444 918173044 1024533039 1024533039 865865331 865865331 748107937 748107937 464806386 464806386 791335973 791335973 154145281 294847248 294847248 607530534 607530534 567234620 607665664 933319660 933319660 264821496 264821496 709640960 709640960 229664200 181687336 188635704 188635704 101651148 106326736 106326736 197216186 438046230 438046230 348013150 492047022 492047022 852094624 852094624 79791113 798244612 798244612 629879913 980004664 980004664 146470774 692269066 692269066 343248276 367123952 367123952 147071136 147071136 541336644 541336644 283764162 560096632 650900697 650900697 331563163 388158858 388158858 576819336 576819336 570474513 567065457 586895425 596514801 596514801 579247649 12700544 12700544 709151620 709151620 672260613 563752641 45858304 145047632 204902408 204902408 160436736 160436736 137589312 227754924 227754924 104886804 101921160 119751296 119751296 650663277 650663277 792236192 792236192 157236900 157236900 149632452 671925896 671925896 985151084 985151084 874887609 874887609 791347238 791347238 812522677 812522677 698431527 455703815 543526339 707568020 707568020 570474519 304136449 945832852 945832852 705775493 791012224 791012224 224539554 224539554 487513134 487513134 916036027 916036027 967275072 1045061784 1045061784 485600641 481216984 606912783 606912783 589406745 537734145 243357893 1053504700 1053504700 656430667 388342835 806816010 867569730 867569730 867740096 867740096 552287059 666875504 666875504 977607572 977607572 939887210 937027323 937027323 862952264 281204162 462751170 462751170 415993861 266069368 1068838718 1068838718 803742825 803742825 792690005 908466522 908466522 235044937 765625560 765625560 754997480 754997480 917245275 917245275 51379248 319402529 826601123 826601123 931457952 931457952 621849792 677244549 677244549 1013482134 1013482134 679234693 926809661 926809661 680959037 964697215 83881616 111284568 112214360 112382808 986690772 986690772 776985815 71690313 8554632 399168112 399168112 374376074 374376074 382019802 382019802 51708650 167874564 167874564 696592485 696592485 671503360 671503360 56495252 153042468 707897872 707897872 984957776 984957776 675479942 537006081 468456164 353022088 353022088 352982058 299184736 272036840 356829354 356829354 18047552 18047552 299094690 299094690 274941026 159453510 1069814432 1069814432 1050537567 404224518 415263750 415263750 287024792 227055356 164282376 203629136 203629136 156430508 125264808 125264808 604148677 604148677 243343452 738235689 738235689 687874624 661177785 661177785 587469521 587469521 82875072 293865570 293865570 74776584 548612480 673651392 673651392 608314496 608314496 771428579 942805767 942805767 546381419 368641583 494494632 741967758 741967758 25281964 23375044 46475784 145205896 170053908 170053908 75661452 48234960 36162020 188850580 276242468 466369730 466369730 466794720 466794720 730304693 953807523 953807523 356944390 634379001 634379001 924279449 924279449 562193738 899830272 899830272 1004472477 1004472477 580704785 541515432 1045233787 1045233787 278289506 345479200 346295216 346295216 298006666 837290450 859113491 859113491 847834434 51464512 50979888 5647536 174099200 192315540 192315540 221320848 221320848 74375244 219157568 219157568 236264520 236264520 209202232 406388992 406388992 378811674 274168544 108148184 578292384 587633094 761945135 967235943 967235943 921316358 857737522 857737522 826950705 576200273 576200273 406928005 831796242 831796242 755944233 455174433 287958370 287432994 174612662 84221168 84221168 335943824 335943824 303372872 449991769 1008465423 1045484547 1045484547 1015202887 1015202887 743885512 743885512 228903276 283936208 530579838 530579838 570045182 570045182 778732716 778732716 403783744 412213830 412213830 249296604 785664832 785664832 549140289 93000193 70180104 70180104 352700578 352700578 107265488 361478426 361478426 61599056 41663360 4249488 8550976 8550976 580001792 817117952 817117952 813903939 466423363 982780294 982780294 737740355 837813556 944841351 944841351 941039494 941039494 823560867 844589221 844589221 434845158 836862194 836862194 571939715 598217043 1015993127 1015993127 877958160 1048877484 1048877484 625082729 625082729 67306560 755681673 755681673 752348837 752348837 1010001190 1010001190 787287504 558965409 605108369 792817160 792817160 257058996 470882356 944900654 1007682063 1007682063 136856123 255889596 255889596 399824088 399824088 287186466 113953530 52170288 60558416 60558416 461642498 967181510 967181510 566415585 566415585 541291424 542713473 542713473 65833252 158260644 305582724 678974134 705845536 705845536 585157590 543080625 611651624 611651624 427776431 420720526 420720526 332991816 173927076 456416484 456416484 383655642 241388916 17115168 28717888 86485760 86485760 97199872 100478952 100478952 77533600 4719744 34867728 43892736 43892736 142724629 536870913 931725329 931725329 461382995 948036433 948036433 517615116 517615116 349229850 745211276 745211276 559941862 578602260 957927040 957927040 463826944 283257346 283148608 283886144 283886144 28683456 300233066 472495822 472495822 432018450 452985248 452985248 976775566 976775566 895549905 809308529 864472425 864472425 580701777 580701777 577578502 1041764247 1041764247 883558092 875433307 610345034 545261824 547621185 547621185 333415712 862636120 862636120 891280403 891280403 807730530 548347792 564300152 564300152 640288872 640288872 572654169 115608024 115608024 99286176 94845384 94845384 27447648 86596068 157946884 201532096 201532096 68121152 68121152 401535194 401535194 133592480 133592480 272887922 272887922 55710384 63562992 63562992 53789968 53789968 918341370 918341370 963384997 963384997 602473457 937837114 937837114 562319935 695288153 1016103142 1016103142 419474817 174785222 314523474 379440718 379440718 422102310 901527583 901527583 415371462 698917155 698917155 776560653 776560653 746669084 746669084 688135264 688135264 673844544 604846118 604846118 708769139 708769139 962120342 962120342 588325894 78309136 78309136 333801608 333801608 132959736 132959736 206250996 206250996 338968776 338968776 334270290 167293128 430098802 524546840 524546840 311698022 328603714 363468056 363468056 482191786 482191786 361721056 299634402 990127584 990127584 987832791 709505760 9447109 287367376 287367376 610599852 610599852 39436934 106481304 336585498 336585498 818994504 818994504 969643222 969643222 269344401 193220720 193220720 195939956 302196059 378496021 378496021 841883905 841883905 680060230 774482800 774482800 649662639 649662639 838869362 838869362 257817476 511207426 511207426 442164360 151035914 890970361 935538939 935538939 634097897 634097897 529708656 529708656 892498984 892498984 486709334 323355043 167934126 931456352 931456352 400685278 884209282 884209282 954539852 954539852 538848000 541064961 541064961 373958748 660932776 660932776 738214952 738214952 235399256 235399256 812821699 812821699 1027109374 1027109374 835360824 46923776 42733280 309652362 388065432 388065432 322976738 322976738 198490256 198490256 319241232 445921366 445921366 375773440 375773440 423724288 537921800 1013189257 1013189257 758068514 542379926 542379926 812640516 939530627 939530627 1003487991 1003487991 610584969 610584969 621483083 621483083 253361188 421956385 857552177 863359691 863359691 369104002 369104002 391679884 747187812 747187812 954747362 954747362 529723704 480566078 478462304 247901460 247901460 798499210 837558159 960697463 960697463 286087214 860432541 860432541 641290154 641290154 760483371 760483371 135927058 436884532 1061836080 1061836080 373338275 358682942 360060214 1046252528 1046252528 806145717 1034630511 1034630511 1007817231 1007817231 622965190 622965190 5501568 14148224 337788872 337788872 384631376 384631376 133400906 487987758 487987758 456521830 456521830 144117040 473434452 548945519 637994563 637994563 940843795 940843795 952207037 952207037 479228266 667473631 667473631 194899046 559748755 559748755 412087380 336298648 336298648 111053128 193269060 223558440 234042348 295434668 295434668 286211106 120057194 380808152 380808152 331534578 230552968 230552968 175513216 280837040 861723489 861723489 419906000 419906000 941925415 941925415 510239758 510239758 240127644 462193062 1004637614 1004637614 755775929 209243104 355519496 355519496 289148706 691775237 755786833 755786833 735317296 953494215 953494215 841857335 817938627 965469188 965469188 823866980 807469092 801203417 800187261 1037192292 1037192292 861766639 746801167 778840298 1000940919 1000940919 886520523 886520523 779413391 779413391 706616853 706616853 460807341 820206218 1000230711 1000230711 967882023 849143596 478157862 815002179 815002179 580511560 886367569 886367569 629252520 282888002 370420778 377853066 377853066 339923082 403742100 403742100 421022208 421022208 188160880 209781648 259000581 698689893 744652204 744652204 218589824 223531692 223531692 168823508 797708502 1029053103 1029053103 524628080 482744526 621867343 948167274 948167274 583350460 1058593474 1058593474 411966534 411966534 295926948 675756032 675756032 322017584 274401570 274401570 191384626 38661264 41947200 316793936 316793936 46794240 46794240 33188640 28638960 14213952 14213952 7373248 7373248 32768 0 0 2097408 2097408 175376960 175376960 156121472 435038286 435038286 404135854 450058678 450058678 606537088 975603791 1062608158 1062608158 882562635 412822718 667741840 692634893 692634893 567821217 823198976 823198976 325667969 321386802 629227562 809933955 809933955 379138074 379138074 1037853716 1037853716 706424390 706424390 392904114 434520384 434520384 183565026 304161042 304161042 462255536 462255536 374391856 276007276 555767943 776117542 776117542 940443674 940443674 42281040 192032656 192032656 604686859 873780233 873780233 367149548 201925644 688616903 865792827 865792827 793927937 967665880 967665880 440528337 115929527 422984559 933377660 933377660 372409858 746418061 746418061 651352604 715600340 715600340 1019343000 1019343000 1024533039 1024533039 865865331 865865331 778356125 778356125 239462577 694816804 791335973 791335973 154145281 90362280 89166592 607530534 607530534 567234620 607665664 933319660 933319660 795087249 696266944 696266944 229664200 661526751 661526751 535332158 394947998 394947998 158208276 760750013 760750013 438046230 704616368 704616368 1004290116 1004290116 906171516 906171516 440075531 429615520 196231742 446532131 980004664 980004664 514100508 692269066 743489583 874776512 874776512 367123952 152971476 152971476 820383360 820383360 283764162 415785220 415785220 812286035 812286035 308330898 107127042 576819336 576819336 570474513 567065457 586895425 596514801 596514801 579247649 548044800 144703536 709151620 1042099743 1042099743 482107455 370461210 370461210 212200210 142891084 212879624 924160510 924160510 620182473 489761458 489761458 500950058 500950058 719527956 719527956 151699036 599939840 599939840 263007612 263007612 204410992 185774720 185774720 528196610 1024729192 1024729192 819891063 791347238 791347238 812522677 812522677 698431527 334173637 543526339 707568020 707568020 570474519 402800977 945832852 945832852 705775493 672137472 345582316 224539554 590941234 1058817836 1058817836 675658745 753555220 753555220 100733440 485600641 485600641 481216984 606912783 606912783 536586438 518255070 473749430 1007458363 1007458363 617387810 617387810 369771410 409018758 410984838 867740096 867740096 552287059 735112964 735112964 1049240813 1049240813 357317751 395786874 448236684 448236684 533897934 533897934 462751170 412095052 266069368 1068838718 1068838718 803742825 803742825 792690005 908466522 908466522 235044937 452538362 452538362 754997480 754997480 473480522 473480522 51379248 208142744 769575788 769575788 543823233 468903361 899794916 899794916 977840842 1013482134 1013482134 679234693 926809661 926809661 638600520 488512606 247951289 700110693 700110693 158037989 986690772 986690772 776985815 71690313 105480352 574300724 574300724 694695575 1018833870 1018833870 845045174 529955681 614843492 614843492 150695972 192432084 208237180 261080348 261080348 153042468 164830724 183718672 183718672 409564160 409564160 307241090 140578944 353022088 353022088 352982058 78744609 610660009 832959627 832959627 891063107 891063107 615401096 81005128 75742976 545513992 641718272 641718272 549756944 585212113 585212113 572320592 572320592 45650352 121885264 121885264 143753472 143753472 125264808 125264808 55943856 55943856 152552064 152552064 39313556 591414536 661177785 661177785 669007882 669007882 284433354 293865570 350431434 350431434 764855045 764855045 1038370818 1038370818 364908935 288295712 288295712 275785856 693152640 693152640 963989486 963989486 741967758 221561856 18035232 139735972 152118176 155662500 165827104 165827104 33575248 36162020 245242052 528356888 528356888 428606852 466794720 466794720 730304693 730304693 853988354 853988354 585895377 97162521 418234880 435282918 435282918 339810552 352505872 483732174 483732174 890560576 898968171 898968171 100927512 100927512 128057392 397937016 397937016 337398730 337398730 286821408 269797890 314475248 314475248 56980420 178645332 178645332 192315540 192315540 191939508 752419761 759353517 759353517 645608025 645608025 199780064 482793678 482793678 186450538 704067439 704067439 778706725 778706725 829820992 838077411 838077411 640190866 640190866 269395997 612083974 944387713 944387713 806393539 806393539 831796242 831796242 755944233 734181244 734181244 287432994 218576900 222699680 222699680 335943824 335943824 303372872 449991769 1008465423 1045484547 1045484547 1015202887 1015202887 743885512 743885512 228903276 283936208 530579838 530579838 360191386 162668350 778732716 778732716 854580431 854580431 499423260 499423260 904333444 904333444 665100693 975873503 975873503 1064182088 1064182088 514394580 214677920 361478426 361478426 119540584 47822400 569301488 569301488 827498496 827498496 817117952 817117952 965873888 965873888 982780294 982780294 737740355 837813556 944841351 944841351 941039494 941039494 823560867 844589221 844589221 434626834 836862194 836862194 571939715 598217043 598217043 942986855 942986855 950687236 950687236 79757384 79757384 75505864 75505864 187414528 267046128 267046128 42090720 787287504 787287504 7210333 3545856 74713136 74713136 257058996 470882356 944900654 1007682063 1007682063 136856123 311842344 311842344 295471314 289940560 277871682 165861737 216529356 216529356 681059136 681059136 708911253 867171536 946023174 946023174 814220135 814220135 563949392 563949392 158260644 973214608 973214608 678974134 707156224 707156224 833829731 833829731 611651624 1047496212 1047496212 420720526 332991816 326969818 456416484 501880190 501880190 579122068 1058215204 1058215204 620206994 620206994 874196769 874196769 363391978 362953064 476259166 476259166 694194714 1040519839 1040519839 765146733 765146733 998253906 998253906 983687263 370532628 517615116 517615116 326365584 745211276 745211276 559941862 578602260 957927040 957927040 460346112 136381056 143063620 180249412 180249412 172756512 48573872 392226464 392226464 459465106 459465106 380634814 976775566 976775566 585402240 809308529 854468051 854468051 580701777 580701777 536936448 8398913 808924738 854668163 854668163 648621142 545261824 547621185 547621185 416287554 957353876 957353876 891280403 891280403 840082512 383427642 383427642 588133681 588133681 580518192 620516793 620516793 588160145 99286176 94845384 736394644 736394644 648251456 648251456 264809440 194917716 194917716 178258260 401535194 401535194 145312016 143112960 272887922 272887922 55710384 63562992 123520056 370501976 383151834 918341370 918341370 399149656 103907776 542123587 917013313 917013313 562319935 695288153 1016103142 1016103142 238117649 174785222 314523474 379440718 379440718 983106839 992486912 1034100855 1034100855 698917155 698917155 776560653 776560653 746669084 746669084 571326528 109117464 100737048 604846118 604846118 499530019 570540056 570540056 184645556 190640548 190640548 168076960 333801608 333801608 132959736 289881104 289881104 303052284 303052284 501154328 501154328 399942364 490333998 524546840 524546840 311698022 328603714 328603714 122108172 482191786 482191786 361721056 689257280 990127584 990127584 987832791 671164576 54575280 985702627 985702627 610599852 610599852 612389620 907247618 972927136 972927136 818994504 887434432 887434432 588181046 269344401 171966612 612835590 612835590 673714252 673714252 378496021 841883905 841883905 680060230 323593552 485486109 649662639 649662639 838869362 838869362 366195410 278901210 442164360 442164360 292733088 340182712 340182712 273318368 606625345 606625345 313443857 212996940 760798632 760798632 486709334 554105734 554105734 931456352 931456352 400685278 884209282 884209282 954539852 954539852 879374838 386739258 386739258 373958748 403412228 701377696 701377696 547525953 977510293 977510293 812821699 812821699 1027109374 1027109374 835360824 46923776 42733280 309652362 416502144 416502144 33763344 51638280 60633720 60633720 319241232 319241232 294795360 48181408 142090496 459901981 537921800 1013189257 1013189257 903957538 729928368 729928368 812640516 812640516 806755073 416981000 583043416 936628037 936628037 621483083 975973449 975973449 557801264 421956385 327029034 327029034 369104002 369104002 390991234 390991234 309738642 318833330 488143530 488143530 336771104 336771104 247901460 247901460 798499210 837558159 960697463 960697463 932504499 932504499 942668551 977008407 977008407 760483371 760483371 791466274 791466274 968271244 968271244 516547806 357273716 189192372 946072610 946072610 693398920 693398920 855892540 1007817231 1007817231 622965190 622965190 347503296 41955914 337788872 385888432 385888432 384631376 312699968 92152178 331044996 456521830 456521830 59589026 336735312 548945519 637994563 637994563 940843795 940843795 952207037 952207037 661558460 667473631 667473631 318899216 559748755 559748755 474735120 509220510 509220510 257974446 257974446 619185191 619185191 490211118 694214131 694214131 616115060 861988101 861988101 802474749 651194580 398260360 398260360 280837040 861723489 861723489 182653300 157369540 941925415 941925415 737166106 914653203 914653203 815270935 590168087 780530504 780530504 204973432 355519496 355519496 596975266 596975266 291383921 63963888 189212020 189212020 841857335 841857335 697487973 965469188 965469188 823866980 813392934 801203417 862492151 933064944 1002542898 1002542898 460774326 778840298 1000940919 1000940919 886520523 886520523 429251354 673833552 706616853 706616853 1029007596 1029007596 671453708 671453708 531374675 436438840 478157862 815002179 815002179 580511560 886367569 886367569 629252520 282888002 113070720 377853066 377853066 339923082 339923082 335708288 421022208 421022208 55380144 209781648 259000581 698689893 744652204 744652204 221514540 223531692 223531692 147196992 797708502 1029053103 1029053103 882501163 812150895 481457121 564185960 832918111 882327619 1058593474 1058593474 584511172 584511172 503527785 828683142 863145242 863145242 956533518 956533518 809886516 192460696 190416640 431019764 452503382 452503382 286359984 192886848 117619888 122113312 122113312 28173472 95436080 103470360 103470360 108183944 109043096 109043096 175376960 175376960 156121472 156121472 201590796 425477932 425477932 372035994 149478702 975603791 1062608158 1062608158 165649860 165649860 667741840 692634893 692634893 567821217 566362401 537006081 455673518 321386802 629227562 809933955 809933955 379138074 379138074 1037853716 1037853716 706424390 706424390 392904114 332137938 287913264 179978252 179978252 143266884 461416840 461416840 316425708 276007276 440004060 440004060 303487506 303487506 387983748 462138322 462138322 308026580 275516121 724993400 724993400 639766809 862623017 862623017 25319395 635052044 700522725 700522725 1021588364 1021588364 565684903 607387744 933377660 933377660 741998724 746418061 746418061 651352604 715600340 715600340 1019343000 1019343000 837200235 805306371 202116108 539828524 778356125 778356125 488759654 694816804 694816804 343343372 141303812 21761184 19403168 285741984 287990832 538502181 538502181 372131880 795087249 795087249 696266944 708837416 958406765 958406765 661526751 535332158 394947998 394947998 234913808 760750013 760750013 151548129 704616368 704616368 1004290116 1004290116 906171516 906171516 467455734 467455734 196231742 839335261 839335261 763256890 763256890 686334892 743489583 874776512 874776512 695567964 768243436 768243436 820383360 820383360 669074524 669074524 348778736 812286035 812286035 294777295 778117781 945893533 945893533 741804747 741804747 544549761 573049089 573049089 548044800 1014396310 1014396310 823088862 1042099743 1042099743 482107455 370461210 370461210 212200210 280535624 280535624 924160510 924160510 620182473 489761458 489761458 500950058 500950058 719527956 1068767643 1068767643 540398420 540398420 467090166 467090166 519445470 965090500 965090500 740486725 1024729192 1024729192 819891063 646278867 84042033 298221440 298221440 948556528 948556528 385746952 385746952 67462154 402800977 553867804 553867804 756872552 766616969 766616969 895571925 895571925 698525566 1058817836 1058817836 675658745 753555220 753555220 552414657 542843200 381057612 476717176 476717176 536586438 536586438 518255070 590664585 1007458363 1007458363 617387810 617387810 306337040 409018758 410984838 965795904 965795904 594380636 735112964 804327415 1049240813 1049240813 1041462336 1041462336 962369148 962369148 533897934 533897934 412095052 412095052 279496002 279496002 16930146 0 139264 134822400 209805316 578871304 578871304 545911916 545911916 572184429 607011664 607011664 473480522 315416880 291030690 403523330 438255126 438255126 370560330 899794916 899794916 977840842 977840842 576716945 576716945 444278424 444278424 488512606 488512606 577571357 700110693 700110693 209266572 1045749009 1045749009 618130051 71649416 105480352 574300724 574300724 694695575 1018833870 1018833870 845045174 529955681 673382660 673382660 237384320 164798760 208237180 261080348 261080348 166323680 166323680 33948096 72155784 284349378 307241090 327238480 327238480 277983842 28974114 78849160 78849160 610660009 832959627 832959627 891063107 891063107 615401096 81005128 622415776 622415776 545513992 3212544 568459392 585212113 585212113 572320592 572320592 91371272 91371272 116442072 143753472 242020384 258948540 258948540 584748373 584748373 202509760 641736221 696139344 696139344 606929568 870520762 918167760 918167760 284433354 284433354 350431434 350431434 764855045 764855045 1038370818 1038370818 364908935 288295712 342839938 342839938 693152640 693152640 963989486 963989486 221561856 221561856 220489700 220489700 152338696 155662500 165827104 165827104 28834656 226367680 245242052 528356888 528356888 523913234 428606852 334168258 281850594 209861644 853988354 853988354 585895377 340824612 987333775 987333775 787861580 1045687242 1045687242 673618181 692488629 890560576 898968171 898968171 556007745 270875730 307889522 397937016 397937016 337398730 866954560 866954560 664482984 664482984 314475248 100798488 178645332 248440388 248440388 81107248 132277289 752419761 759353517 759353517 645608025 645608025 256493892 482793678 482793678 186450538 704067439 704067439 778706725 823531125 834798465 838077411 838077411 935856316 935856316 365614175 612083974 944387713 944387713 806393539 806393539 806348891 806348891 715822908 734181244 734181244 205658276 218576900 222699680 222699680 25887952 42574356 104361032 104361032 100934924 139005964 139005964 135266308 231935560 618320620 618320620 457966804 875635278 1022627659 1022627659 198519331 597474209 597474209 896569906 949016145 949016145 1057043241 1057043241 956604612 904333444 665100693 975873503 975873503 1064182088 1064182088 514394580 214677920 237431640 257157612 257157612 151309632 569301488 629733929 898885640 898885640 811388547 111487592 965873888 965873888 592389783 592389783 296821602 467141591 815343171 819268625 819268625 576533121 661424566 843366557 843366557 643351400 195800576 195800576 878727496 967735623 967735623 942986855 942986855 950687236 950687236 577927225 577927225 75505864 623496449 705283180 705283180 690025905 690025905 247770289 189252869 573311233 573312273 757614628 757614628 118491380 551852213 551852213 906191232 906191232 914751528 914751528 311842344 646763882 646763882 615432212 1025839488 1025839488 545707844 681059136 681059136 708911253 867171536 946023174 946023174 814220135 814220135 563949392 563949392 561387906 973214608 973214608 738380551 1009151438 1009151438 869171296 869171296 317896923 1047496212 1047496212 324821528 326969818 340298698 340298698 501880190 501880190 579122068 1058215204 1058215204 620206994 620206994 874196769 874196769 363391978 362953064 476259166 476259166 694194714 1040519839 1040519839 939614210 939614210 998253906 998253906 983687263 201441355 42639904 7146864 51955248 686833828 686833828 1012943976 1012943976 151290337 258238236 258238236 110707032 143063620 180249412 180249412 172756512 372388426 392226464 392226464 459465106 459465106 186208898 688469024 954524705 998267266 998267266 954419467 436404257 436404257 536936448 536936448 717302671 717302671 264579564 648621142 682239059 682239059 146939362 416287554 416287554 957353876 957353876 542551064 840082512 840082512 383427642 566359616 588133681 588133681 580518192 620516793 620516793 588160145 83074656 83074656 736394644 736394644 648251456 648251456 264809440 194917716 194917716 178258260 37760724 145312016 210826440 490743332 490743332 219052902 163108964 163108964 422053158 422053158 383151834 383151834 665458041 665458041 643881379 603360241 646841426 646841426 847508457 847508457 411390345 900778583 900778583 187842840 187953972 210123100 344007978 983106839 992486912 1034100855 1034100855 579485704 625385544 625385544 153694788 30779992 175288825 193445465 193445465 197628505 240339801 653368836 653368836 641104412 657204484 657204484 624376756 190640548 168076960 38806528 286794914 286794914 846188833 846188833 890514186 890514186 501154328 634462953 1016251375 1016251375 615723849 858698006 1049130255 1049130255 957133888 18923808 521726567 939446229 998077187 1047671420 1047671420 402726918 671164576 671164576 54575280 985702627 985702627 512586320 173530754 772603932 907247618 972927136 972927136 543117580 887434432 887434432 696884916 696884916 178776912 612835590 612835590 673714252 673714252 16777280 25165920 84156776 84156776 323593552 323593552 423629492 423629492 382939866 366195410 366195410 278901210 282736396 339105988 424849216 424849216 299579106 273318368 273318368 87773736 50857008 35129120 585405144 890689857 890689857 554105734 554105734 631604593 631604593 128977512 841050210 841050210 665074514 879374838 925383836 925383836 942314152 942314152 403412228 701377696 701377696 547525953 977510293 977510293 801370228 801370228 214255636 214255636 109070692 89129496 58855648 320877420 416502144 416502144 217297028 9445376 344793152 344793152 302852618 59456608 321036224 321036224 160745714 493216956 493216956 523103800 903957538 903957538 729928368 729928368 605912669 806755073 806755073 416981000 893746234 936628037 936628037 370910565 975973449 975973449 557801264 856642213 856642213 499007982 439427862 289181960 390991234 542972624 830344857 830344857 643305896 4268160 4268160 4259840 600080 246331677 538725489 598218525 873076045 873076045 932504499 932504499 942668551 977008407 977008407 689711637 689711637 791466274 791466274 1019928372 1019928372 938740731 908380443 908380443 960921772 960921772 872863755 693398920 815850633 998311006 998311006 318177874 347503296 939013617 939013617 936436264 385888432 385888432 312699968 312699968 619167874 736598672 736598672 289514360 289514360 336735312 336735312 100737048 65560 302047268 453058614 453058614 661558460 661558460 914808345 914808345 318899216 285873186 428741748 474735120 509220510 509220510 257974446 257974446 619185191 619185191 490211118 694214131 694214131 616115060 861988101 861988101 802474749 651194580 398260360 398260360 98909608 245895172 245895172 182653300 183010432 183010432 203458976 737166106 914653203 914653203 1009255695 1009255695 951574610 951574610 581185613 873179907 873179907 941476757 941476757 851681992 643028613 708672646 708672646 814915686 814915686 697487973 693363398 693363398 813392934 813392934 312733841 862492151 862492151 1002542898 1002542898 460774326 515640842 515640842 919962186 919962186 429251354 429251354 358351040 498355790 755115235 1029007596 1029007596 671453708 671453708 531374675 436438840 42289664 43115088 50184272 50184272 49073616 304901480 304901480 373588928 373588928 286310712 102160920 256513212 256513212 891010603 891010603 622216711 872390035 872390035 339049925 599287848 599287848 221514540 738587464 765537060 765537060 714150669 612533824 777663580 882501163 967322011 967322011 562110561 564185960 832918111 882327619 882327619 512584299 584511172 584511172 503527785 828683142 863145242 863145242 956533518 956533518 809886516 441052186 302324982 431019764 452503382 452503382 363369114 363369114 371903562 371903562 128298610 181807464 181807464 134228744 303809358 304733272 412613190 503431316 503431316 215407308 131164336 344783842 344783842 425477932 425477932 380113178 149478702 324010104 349176522 650282756 650282756 459821217 425912032 425912032 414922566 203039652 205207308 455673518 455673518 316540848 316540848 479890028 479890028 198503828 198503828 116830168 116830168 106115736 273160192 273160192 60757322 113280416 179978252 179978252 135995904 461416840 461416840 316425708 260704248 528097736 528097736 477796238 477796238 387983748 462138322 462138322 308026580 274206640 274206640 542266512 639766809 862623017 862623017 25319395 635052044 700522725 700522725 1021588364 1021588364 565684903 607387744 693176840 693176840 741998724 741998724 226443180 755741060 755741060 707001945 958859476 958859476 329257088 329257088 937821248 937821248 886375137 837092802 488759654 488759654 679832736 679832736 560847525 831519425 831519425 285741984 287990832 302089858 438642966 438642966 427157552 773974096 773974096 708837416 958406765 958406765 212675916 212675916 193411188 234913808 254429880 254429880 611096846 611096846 641648280 641648280 907548817 907548817 798115337 598328178 471371840 471371840 205963337 839335261 839335261 763256890 763256890 686334892 335872128 340076682 888140097 888140097 836353330 768243436 807024523 1068385099 1068385099 669074524 525455744 1057210396 1057210396 783888415 778117781 945893533 945893533 741804747 741804747 544549761 573049089 573049089 542975305 1014396310 1014396310 1013003162 1013003162 878657163 547226452 547226452 574302744 574302744 1012068895 1012068895 309592834 309592834 886660803 886660803 2130176 6562256 44378448 537158552 1068767643 1068767643 910622926 910622926 467090166 467090166 519445470 1023796420 1023796420 977712520 977712520 538401157 460737542 557281925 691010853 721624773 728334773 987372151 987372151 385746952 385746952 67462154 67462154 553867804 553867804 756872552 766616969 766616969 895571925 895571925 698525566 712330894 712330894 642621696 642621696 552414657 552414657 542843200 113102040 113102040 118886712 118886712 55493224 117972280 590664585 590664585 554312728 654520377 654520377 339935921 306337040 85788161 965795904 965795904 594380636 595331327 956367880 956367880 1020923111 1041462336 1041462336 962369148 962369148 1257984 1257984 352391264 352391264 279496002 312925288 388048186 656934202 656934202 630456593 814238290 814238290 578871304 546412825 545911916 572184429 607011664 607011664 315416880 315416880 291030690 403523330 438255126 438255126 576170964 904191337 904191337 540067776 540067776 369655945 268967936 444278424 444278424 424650276 470506317 577571357 577571357 209266572 209266572 1045749009 1045749009 605134978 538417152 538417152 202240 18497544 18912770 789667774 789667774 643254635 478519595 673382660 673382660 403513398 403513398 278210710 210974322 367359128 367359128 424233408 424233408 212133904 287601120 287601120 327238480 327238480 277983842 28974114 78849160 78849160 117305304 117305304 105743168 28208352 82281096 82281096 80865024 622415776 622415776 82395816 75351744 568459392 568459392 17225760 66535464 82913208 91371272 91371272 116442072 192338560 242020384 258948540 258948540 584748373 584748373 202509760 641736221 696139344 696139344 606929568 870520762 918167760 918167760 366090272 366090272 269910528 269910528 126054530 74788504 384309010 384309010 274896002 274896002 342839938 342839938 73547016 90229312 277908396 501222532 501222532 345064356 220489700 220489700 256149748 256149748 78749824 48310772 36038784 226367680 226367680 250250568 523913234 523913234 191882448 281850594 1047172493 1047172493 209861644 655346744 655346744 621721616 987333775 987333775 787861580 1045687242 1045687242 673618181 858434982 858434982 842796819 842796819 662199432 500079758 307889522 517015728 517015728 491571618 866954560 866954560 664482984 664482984 131598440 100798488 16850976 248440388 248440388 81107248 123903104 123903104 228989292 266996880 266996880 161723452 256493892 256493892 21358752 135712300 883213412 883213412 579780774 823531125 834798465 834798465 445567140 935856316 935856316 981897728 981897728 408423513 408105606 744370318 853384773 853384773 814844913 715822908 207291064 583609493 583609493 126226432 79952064 113407320 602547345 602547345 209485652 861273416 1070336127 1070336127 1059621103 943597311 943597311 618320620 618320620 457966804 875635278 1022627659 1022627659 893730960 1050992546 1050992546 896569906 949016145 949016145 1057043241 1057043241 956604612 1019697275 1019697275 839321771 890469509 890469509 440880327 348473946 147584196 394558654 567284769 567284769 693240944 693240944 629733929 898885640 898885640 811388547 44882995 847756480 847756480 592389783 995977366 995977366 851815619 315368979 72614536 72614536 264192 362624 475154614 643351400 643351400 195800576 195800576 878727496 967735623 967735623 515076221 28873256 65599760 65599760 577927225 577927225 68052008 623496449 705283180 705283180 690025905 690025905 423311142 423311142 573311233 573312273 757614628 757614628 503526002 551852213 551852213 906191232 906191232 914751528 914751528 312117248 646763882 646763882 615432212 1025839488 1025839488 545707844 406544656 714814560 714814560 415478999 587249716 587249716 333954309 544780466 544780466 386337864 561387906 561387906 738380551 738380551 1013175623 1013175623 1051253090 1051253090 552476097 1002603093 1002603093 324821528 324821528 436792172 436792172 389732794 389732794 926889824 926889824 435447905 279760194 208233156 208233156 83959848 107078040 166436632 166436632 164854772 164854772 159898176 576790611 939614210 1006719567 1006719567 268484610 553664547 553664547 361821952 7146864 51955248 686833828 891817247 1012943976 1012943976 845466893 826068096 428639764 110707032 110707032 51548800 96020424 96020424 372388426 379114114 379114114 152638976 152638976 101893684 270082258 954524705 998267266 998267266 954419467 444731478 436404257 356778042 285278464 717302671 717302671 264579564 264579564 682239059 682239059 430174566 430174566 983067148 983067148 940696071 975866438 975866438 891938091 893412736 893412736 566359616 354187840 55072816 55072816 56976928 63025088 67286432 195340424 195340424 123855940 402952010 402952010 218656532 440263262 440263262 352374296 352374296 269034498 246561994 490743332 490743332 219052902 163108964 293660760 422053158 422053158 243975274 36312336 665458041 665458041 643881379 603360241 646841426 646841426 847508457 847508457 744503324 900778583 900778583 872653328 872653328 258449037 312489633 438370798 907739504 907739504 903875363 1054682949 1054682949 870086162 375241234 375241234 919671666 919671666 604008993 197628505 808444712 825588008 889327659 889327659 657204484 657204484 624376756 50778672 63975072 81528896 286794914 286794914 846188833 846188833 890514186 890514186 489342770 634462953 1016251375 1016251375 615723849 858698006 1049130255 1049130255 957133888 149850336 521726567 939446229 998077187 1047671420 1047671420 593025457 402726918 231114580 785728024 785728024 147907219 54599856 190014120 772603932 772603932 847524092 847524092 827586711 806872298 806872298 696884916 696884916 1006817295 1006817295 337934657 537135105 1040333908 1040333908 985851260 709144786 709144786 426109350 365238270 377341758 509103830 509103830 410443434 174586260 489347218 489347218 339105988 424849216 424849216 299579106 90754760 548497019 548497019 801023610 824134723 1034659912 1034659912 890689857 805448004 163208807 260427418 519486454 597850386 597850386 296172383 435493325 658510709 1047561522 1047561522 976873239 944140587 268500994 268500994 260810052 528683120 528683120 427868262 801370228 801370228 218507465 633804844 633804844 381294426 381294426 338958306 327158720 478290574 478290574 155193280 344793152 454108206 454108206 357892254 321036224 405605826 430441830 493216956 999295446 999295446 986710743 543475264 550068921 605912669 605912669 437380749 271960206 336282308 893746234 893746234 622330980 622330980 370910565 95106408 25290252 856642213 856642213 499007982 439427862 273329233 376888218 937532115 937532115 830344857 643305896 329687228 809750649 809750649 75810888 672635644 695655333 695655333 717894869 885208152 885208152 437001810 437001810 118888992 270287418 270287418 335679498 386535482 386535482 1019928372 1019928372 1008648614 1008648614 1013254537 1013254537 960921772 872863755 557600553 873842576 998311006 998311006 577030545 543440912 939013617 939013617 936436264 104423648 94372200 94372200 99667454 619167874 736598672 930012603 931057970 931057970 289890546 973476827 987446013 987446013 616324639 766559085 833899335 833899335 651465857 914808345 914808345 699662383 961286053 961286053 390911126 97117416 650145896 650145896 591655089 621250202 621250202 861146789 861146789 144053350 144053350 135141488 171053844 171053844 152248624 107927964 107927964 244355072 245895172 588176433 596280693 727992545 727992545 700484836 202114608 546489944 637535510 1009255695 1009255695 951574610 951574610 581185613 873179907 1012499676 1012499676 941476757 851681992 643028613 708672646 708672646 671426565 601511521 601511521 954815110 954815110 167311139 0 38232376 38232376 34078168 658723448 658723448 537395910 499424204 499424204 919962186 919962186 747084588 590687025 358351040 498355790 755115235 804984607 1026844780 1026844780 461178363 478823500 949040193 949040193 555707939 555707939 54390576 841074082 841074082 585723472 386045496 373588928 366920120 43338320 256513212 288029114 891010603 891010603 622216711 872390035 872390035 339049925 599287848 599287848 75920045 738587464 765537060 765537060 755093588 755093588 777663580 777663580 967322011 967322011 881314503 881314503 620761104 856368702 856368702 269549586 301998594 844140652 844140652 268533804 268533804 404308516 507584654 507584654 503932060 441052186 302324982 294600856 123814946 354217370 363369114 363369114 371903562 371903562 128298610 181807464 181807464 444926028 444926028 304733272 412613190 503431316 503431316 215407308 131164336 374893674 437286470 437286470 380113178 400037608 460200322 583697587 583697587 650282756 650282756 459821217 820064964 995877311 995877311 880431723 1065039657 1065039657 926099126 304257318 230500460 442928914 442928914 198503828 198503828 51107460 67574400 67574400 6553792 28053776 59645040 67640880 67640880 67637848 303497216 303497216 253760880 253760880 260704248 528097736 528097736 477796238 477796238 86628036 224020744 224020744 209102868 361122875 864235849 882631691 882631691 375367419 40348256 80401608 907289880 907289880 882459748 882459748 557108001 557108001 673191726 1011748867 1011748867 404884385 226443180 226443180 755741060 755741060 698480248 958859476 958859476 829633152 800798589 937821248 937821248 886375137 1056968452 1056968452 558021892 679832736 679832736 560847525 831519425 831519425 223479852 476154933 476154933 469322324 438747165 438747165 773974096 773974096 496275083 603765500 603765500 108477169 215825244 467091059 767756350 767756350 254429880 611096846 982651760 982651760 641648280 138695754 138695754 33554582 909185298 909185298 471371840 588309584 1004915389 1004915389 762591690 974750515 974750515 485778888 485778888 888140097 888140097 843967635 774419083 807024523 1068385099 1068385099 895814330 895814330 1057210396 1057210396 787900887 892490348 892490348 629425113 565498784 125193001 52695633 545518144 545518144 23142816 14745600 4268160 1013003162 1013003162 710095509 660608616 660608616 618870721 1006858560 1012068895 1012068895 309592834 309592834 886660803 886660803 307972242 353599046 444473238 710549484 957590376 957590376 910622926 910622926 208190907 163037966 473092878 1023796420 1023796420 977712520 977712520 538401157 460737542 557281925 691010853 721624773 728334773 999908470 999908470 782953305 782953305 532527994 957612596 975311127 975311127 530776955 595513680 748560133 748560133 188796701 335572994 335572994 212472284 642621696 642621696 112316561 106522000 107515352 355003586 355003586 298321122 354329034 354329034 271462024 268573034 86977608 554312728 654520377 654520377 382337235 407307265 407307265 675913919 675913919 822723495 822723495 956367880 956367880 291045519 269484546 254878574 343999948 343999948 531879502 531879502 405080100 941361222 941361222 909547105 909547105 698020733 698020733 630456593 814238290 814238290 609232257 546412825 647004488 647004488 645996633 617130128 138071568 53018544 177760401 177760401 138882177 207549573 787038149 904191337 904191337 540067776 820143880 820143880 638095873 746444571 826821907 826821907 776937933 134778880 134927364 673076228 673076228 673062405 537948288 84095490 872440330 872440330 336138283 336729856 336729856 789667774 789667774 643254635 478519595 338187284 420093184 420093184 403513398 278210710 210974322 367359128 367359128 424233408 424233408 212133904 287601120 287601120 310530144 310530144 36784240 128437520 128437520 340731107 581034321 833937547 833937547 889684587 889684587 619901768 83913504 762868357 762868357 633300353 163630536 229064940 771758412 792846525 792846525 753009332 251883892 86272384 89275392 192338560 192338560 149289040 149289040 23981472 19248896 137251840 141126784 151646240 151646240 106748688 356904066 362386026 362386026 366090272 366090272 307280016 307280016 303632192 303632192 384309010 384309010 122956738 337510640 400432890 400432890 356662490 340996746 148728448 501222532 501222532 345064356 218153004 218153004 256149748 256149748 131344856 131344856 36038784 220993792 229261224 351973716 351973716 410843176 410843176 191882448 1047172493 1047172493 579981904 655346744 655346744 621721616 620810280 742481934 742481934 881926427 881926427 411041670 858434982 858434982 842796819 1060651151 1060651151 688209766 688209766 517015728 517015728 516531090 491571618 466641672 673615852 673615852 628357316 2276192 84265648 84265648 31869496 78909712 178976245 620847349 679612485 679612485 655933809 655933809 403871718 403871718 367154914 367154914 883213412 883213412 579780774 985924822 985924822 582242464 995004354 995004354 744134820 981897728 981897728 408423513 408105606 744370318 853384773 853384773 814844913 681638036 287792022 583609493 583609493 369567888 384252378 384252378 602547345 602547345 310562898 861273416 1070336127 1070336127 1059621103 943597311 943597311 530774721 730400096 730400096 373190516 755249620 893730960 893730960 1050992546 1050992546 728665709 728665709 369267783 469816088 637635649 637635649 1019697275 1019697275 839321771 890469509 890469509 440880327 348473946 147584196 698877344 698877344 567284769 693240944 693240944 540136136 540136136 903163768 903163768 96406987 332936320 332936320 449972308 995977366 995977366 851815619 846464963 625544319 866657635 889268569 889268569 880418862 722836416 722836416 423940469 527802796 527802796 629691397 629691397 758609797 758609797 729733716 729733716 112478816 128791816 128791816 92931141 619283785 619283785 587853637 320547668 940051475 940051475 324996434 375461820 375461820 503526002 503526002 503853992 570763281 570763281 352388188 17436704 312117248 501299601 501299601 845671293 845671293 1003336040 1003336040 777164080 611856377 714814560 714814560 415478999 273695910 951285680 951285680 706452835 590224689 590224689 139278769 536944641 536944641 546638405 1013175623 1013175623 1051253090 1051253090 552476097 1002603093 1002603093 510435636 519645080 519645080 436792172 389732794 389732794 926889824 926889824 435447905 914650240 914650240 617088201 748282500 748282500 600810693 676410644 676410644 164854772 159898176 604037642 604037642 1006719567 1006719567 293798432 553664547 553664547 361821952 462484040 462484040 293501122 891817247 891817247 845466893 845466893 826068096 428639764 31666720 263308160 263308160 254176372 239880488 123011520 379114114 379114114 152638976 152638976 145924036 270082258 328031708 526717962 526717962 491497698 444731478 443340992 49237462 212075856 212075856 238567996 238567996 228724860 610147353 610147353 430174566 430174566 983067148 983067148 940696071 975866438 975866438 891938091 893412736 893412736 44955648 27289248 146190824 166946504 166946504 191581640 209185484 209185484 195340424 247254860 402952010 402952010 255067392 440263262 440263262 352374296 352374296 269034498 246561994 15416916 9258080 26029152 26029152 293660760 369147930 369147930 369147930 369147930 70204680 70204680 75497728 124495288 124495288 33814956 242535324 744503324 744503324 641806608 582102314 872653328 947829548 947829548 946142091 438370798 907739504 907739504 903875363 1054682949 1054682949 870086162 375241234 375241234 919671666 919671666 604008993 83136011 808444712 825588008 889327659 889327659 645973800 294380344 43088704 50408992 80377152 81528896 85214408 85214408 77468752 51438224 583098912 583098912 40231968 17426832 5904000 5379712 8398912 18950144 18950144 154119278 154119278 149850336 449574242 449574242 39155236 938583438 938583438 593025457 219786797 231114580 785728024 785728024 147907219 54599856 873984046 873984046 855890485 847524092 847524092 827586711 806872298 806872298 286384674 657703188 1006817295 1006817295 337934657 537135105 1040333908 1040333908 985851260 709144786 709144786 426109350 365238270 377341758 509103830 509103830 410443434 248175832 489347218 489347218 280228674 22648290 152202920 152202920 85534248 548497019 548497019 801023610 824134723 1034659912 1034659912 805448004 805448004 861747536 861747536 710793898 1065392368 1065392368 889686154 889686154 487666242 1047561522 1047561522 976873239 944140587 259431443 101001240 193565972 193565972 159457380 186704208 186704208 21276676 218507465 633804844 633804844 381294426 381294426 338958306 327158720 478290574 478290574 217133768 210052226 454108206 454108206 357892254 292103586 405605826 430441830 509607976 999295446 999295446 986710743 449277824 449277824 154741404 806580236 806580236 741401096 591446193 591446193 162136932 622330980 622330980 798492285 950191129 950191129 693167379 693167379 295830498 112833073 273329233 376888218 937532115 937532115 361046146 329687228 329687228 809750649 809750649 75810888 672635644 695655333 695655333 717894869 885208152 885208152 437001810 437001810 354180670 436620338 436620338 335679498 386535482 386535482 898155651 898155651 1008648614 1008648614 1013254537 1013254537 978001995 978001995 1068515954 1068515954 873842576 605342922 721759292 721759292 545374361 159402469 58738692 278276190 278276190 277070358 277070358 932248368 932248368 930012603 931057970 931057970 289890546 973476827 987446013 987446013 616324639 766559085 833899335 833899335 562967305 361158762 495754276 699662383 961286053 961286053 390911126 151070786 650145896 650145896 591655089 621250202 621250202 861146789 861146789 975954188 975954188 625344537 741224201 1040596228 1040596228 437206038 307010308 244355072 244355072 588176433 596280693 727992545 727992545 714490408 714490408 626034260 626034260 110678593 45353808 41996048 739036056 739036056 438438149 1012499676 1012499676 912150602 711845014 681669701 987909891 987909891 2114304 875882760 875882760 954815110 954815110 271606468 975814932 975814932 254332717 774422941 774422941 1028928777 1028928777 499424204 499424204 431160694 747084588 747084588 590687025 242363276 137719332 604729873 804984607 1026844780 1026844780 461178363 478823500 949040193 949040193 555707939 555707939 54390576 841074082 841074082 585723472 386045496 366920120 366920120 43338320 128315056 313630026 313630026 271085832 271085832 111053122 93458472 93458472 557846568 615926477 740344077 740344077 149156292 149156292 755093588 755093588 747246669 667200064 685156425 685156425 881314503 881314503 706494733 793396493 793396493 610852560 563156071 844140652 844140652 655094841 655094841 635261686 526249026 526249026 391838224 391838224 311476818 22278144 55831220 168168116 168168116 186552960 186552960 152965760 168259648 168259648 135517700 444926028 444926028 39365766 33892368 38936720 38936720 37819024 37819024 374893674 437286470 437286470 139199556 400037608 460200322 583697587 583697587 460375794 460375794 358283196 820064964 995877311 995877311 880431723 1065039657 1065039657 926099126 303773202 152241718 520391396 520391396 412402522 301222402 84427942 505676572 510921630 510921630 270726202 270726202 392210258 392210258 304235906 303497216 373964204 467796414 467796414 659206297 659206297 685409426 685409426 759045933 759045933 219238953 209102868 209102868 753915464 864235849 882631691 882631691 375367419 117970016 314835568 907289880 907289880 882459748 882459748 780445145 780445145 860824178 1011748867 1011748867 870537031 870537031 866919827 807411974 711996044 591849525 591849525 829633152 1042076269 1042076269 800798589 539566380 604513566 1056968452 1056968452 961238051 961238051 833629766 833629766 677905388 1015540266 1015540266 628437696 476154933 469322324 438747165 438747165 664274554 664274554 496275083 603765500 603765500 734925916 734925916 625215657 767756350 767756350 646732120 646732120 982651760 982651760 916165163 916165163 667086657 667086657 909185298 914730612 914730612 606522177 1004915389 1020263506 1020263506 974750515 974750515 485778888 485778888 843652634 843967635 843967635 774419083 272411913 610967221 610967221 895814330 895814330 795679070 795679070 787900887 892490348 892490348 629425113 553049025 79874761 52695633 545518144 601674729 601674729 875422787 875422787 240195215 1044520980 1044520980 809570562 809570562 618870721 1006858560 1006858560 25900719 5292672 5292672 448889738 448889738 307972242 353599046 444473238 710549484 710549484 428085686 428085686 878483752 878483752 812522883 57601331 371391514 457342998 457342998 302018740 235112800 262666620 262666620 569383008 715342048 715342048 999908470 999908470 782953305 782953305 532527994 957612596 975311127 975311127 530776955 199252345 624126504 624126504 245445557 335572994 335572994 584789760 584789760 11685376 11685376 5487624 5487624 355003586 355003586 298321122 354329034 354329034 352494619 655056977 659035241 659035241 642331649 537209219 537209219 407307265 407307265 149031084 558396168 822723495 822723495 755159085 497982437 480520788 138667284 138667284 343999948 343999948 531879502 531879502 405080100 941361222 941361222 909547105 909547105 698020733 698020733 69341440 69898369 609232257 609232257 116647576 647004488 647004488 645996633 617130128 545919172 43608256 177760401 177760401 138882177 207549573 787038149 787038149 307827290 348202002 820143880 820143880 638095873 859846683 859846683 927563943 927563943 711813941 711813941 673076228 673076228 673062405 17806229 604003376 872440330 872440330 755500077 755500077 353600173 1047038340 1047038340 675703058 675703058 875014984 875014984 429847362 11621414 424156544 424156544 140374976 145017156 145017156 74190272 101050968 286566464 286566464 310530144 310530144 36784240 128437520 128437520 340731107 581034321 833937547 833937547 889684587 889684587 619901768 214248328 762868357 762868357 633300353 163630536 229064940 771758412 792846525 792846525 753009332 251883892 592118443 592118443 339408562 603114977 603114977 149289040 58245920 826501664 826501664 676003074 538793490 575760978 575760978 356904066 362386026 362386026 314685456 314685456 307280016 307280016 396334696 396334696 389679320 389679320 272672762 337510640 400432890 400432890 356662490 340996746 222363648 15729600 76671168 202993512 218153004 218153004 122022072 168855808 241724340 241724340 259307656 259307656 229261224 351973716 351973716 410843176 410843176 332100944 385632416 385632416 579981904 579981904 43180625 620810280 620810280 126075182 245576028 429928506 429928506 75546696 67125768 68207112 68207112 1060651151 1060651151 688209766 688209766 208371891 516531090 516531090 359459950 359459950 673615852 673615852 628357316 586767704 84265648 87164560 87164560 90534380 178976245 620847349 679612485 679612485 655933809 655933809 477124356 477124356 367154914 367154914 110410586 270569892 423809190 985924822 985924822 582242464 995004354 1050055798 1050055798 990139101 1017253661 1017253661 538445313 680526916 680526916 310696449 174201004 222695828 287792022 437723726 437723726 369567888 384252378 384252378 327885160 277566514 310562898 371832192 371832192 229114108 124380600 247771436 247771436 177481236 730400096 730400096 591845825 755249620 755249620 592208761 139774088 263592452 708370348 708370348 541871749 676645509 676645509 637635649 885638375 885638375 1019632680 1019632680 678381677 310783960 310783960 126876792 763778996 763778996 227504825 637187076 640168629 664282137 664282137 903163768 903163768 877154841 877154841 813188256 813188256 168302162 327156902 846464963 846464963 625544319 866657635 889268569 889268569 880418862 722836416 722836416 423940469 527802796 527802796 629691397 629691397 758609797 758609797 729733716 729733716 105451400 128791816 128791816 92931141 619283785 619283785 587853637 175819012 940051475 940051475 324996434 375461820 375461820 272704576 272704576 180449776 570763281 570763281 973282440 973282440 833487120 501299601 501299601 845671293 845671293 1003336040 1003336040 777164080 611856377 704848320 704848320 47922224 950941942 951285680 951285680 706452835 590224689 590224689 139278769 536944641 536944641 546638405 546638405 434151844 276947010 892495522 892495522 631952745 430623498 510435636 519645080 519645080 330367944 127624760 1049121874 1049121874 432542842 432542842 914650240 914650240 617088201 748282500 990744648 990744648 676410644 826745745 826745745 334431714 604037642 604037642 747784256 747784256 482919107 613419330 699321414 699321414 462484040 462484040 293501122 270532866 354946242 424414156 424414156 176036352 176036352 149947332 263308160 263308160 254176372 239880488 125962512 125962512 98984008 80949960 145924036 251482513 701097189 887975465 887975465 779285658 38023376 443340992 478619752 478619752 695008359 695008359 511722748 659055799 659055799 80401608 240137140 307831080 307831080 192225190 5507712 5507712 5245568 5515776 5515776 36692288 44955648 69312840 69312840 146190824 166946504 166946504 191581640 209185484 209185484 133210628 247254860 247254860 67108872 255067392 255067392 322489988 322489988 243495698 392848360 400888812 468856740 479002772 479002772 199035028 484681754 484681754 276856920 369147930 369147930 116515648 340947338 340947338 77594952 77594952 2101320 655700680 1029012241 1029012241 1018511424 1018511424 582102314 947829548 947829548 946142091 700690903 700690903 404280932 288443298 685582637 685582637 138750084 69731592 69731592 88761800 553820328 553820328 92615145 76154944 85410352 101185560 101185560 118536568 187254140 187254140 69341448 85287272 85287272 85214408 99961697 561411777 734831265 734831265 181622056 212255669 741489425 741489425 773718709 773718709 724333608 724333608 672802088 672802088 202689036 234491937 778249809 803216349 803216349 574306305 574306305 178299568 178299568 546897508 752588332 752588332 763499602 873984046 873984046 855890485 530362381 102551888 630587848 630587848 116164753 628548128 628548128 88357601 134513668 134513668 105330840 308434328 462300198 462300198 223040816 212355528 270828586 270828586 409781528 409781528 287542852 287542852 286310514 300049068 300049068 280228674 80406072 124153344 124153344 278783048 278783048 127469096 303043632 780046058 1060636479 1060636479 870048691 870048691 861747536 861747536 902724711 1065392368 1065392368 1038383278 1038383278 852178461 877804562 877804562 642411584 492138116 492138116 72515584 264346372 447530320 447530320 900601069 900601069 744624525 795504792 795504792 88863912 53084512 199104148 199104148 183575508 183575508 217133768 392795216 392795216 226731170 153691428 153640320 157673892 420315200 428731494 509607976 572945654 579726417 579726417 566340241 566340241 742705293 806580236 995036634 995036634 862590387 977274659 977274659 940708359 135974928 823877126 950191129 950191129 693167379 845086497 896009643 896009643 758830606 788616 105456664 105456664 101262488 70780680 61884936 171523884 171523884 86697504 86697504 726403170 1036257283 1036257283 396494667 638326150 638326150 811746311 811746311 477123458 1008218117 1008218117 269891896 1030580512 1030580512 796590334 990513946 990513946 645666614 875013198 978001995 978001995 1068515954 1068515954 661963344 661963344 721759292 721759292 545374361 351077880 351077880 319105074 327420018 327420018 277070358 932248368 932248368 319052926 297544234 297544234 239912408 336074752 432691018 432691018 461913090 461913090 188178980 188178980 1022902285 1022902285 825018003 825018003 901453385 901453385 809101059 445870677 633938176 868861528 926103383 926103383 894459605 894459605 802078935 975954188 975954188 625344537 741224201 1040596228 1040596228 437206038 307010308 173702032 173702032 706999732 706999732 568567885 791644441 791644441 714490408 700974401 700974401 77334361 45353808 41996048 739036056 739036056 571865168 1043912521 1043912521 848168325 711845014 964730679 987909891 987909891 814953027 978322445 978322445 961757991 918513179 918513179 975814932 975814932 661757849 774422941 797344335 1028928777 1028928777 765938698 431160694 431160694 336930880 269564502 269564502 537162752 537162752 888742978 888742978 68331536 73873800 135235464 436228116 436359698 436359698 135332950 148949520 172347348 463735794 517275238 517275238 234123328 359323306 359323306 343094154 97393440 313630026 621731105 621731105 554308641 1004937011 1004937011 426299781 557846568 615926477 740344077 740344077 149156292 149156292 201844800 209850444 209850444 667200064 667200064 134254888 220481792 572575745 706494733 793396493 793396493 610852560 563156071 270034210 596129418 655094841 655094841 635261686 526249026 526249026 391838224 391838224 311476818 282732826 105284746 268756994 302039058 302039058 424460470 424460470 228507032 228507032 203108948 268492824 440478152 440478152 444934230 472202372 472202372 250559964 82255280 214281912 214281912 502013356 502013356 305273572 406324998 406324998 256500504 256500504 392490804 392490804 511881948 511881948 405325062 505955668 505955668 453685472 421094626 336042086 436680726 985579839 985579839 530130558 1016965537 1016965537 905631052 525386430 525386430 1016586308 1016586308 759224618 971915904 971915904 805434632 373964204 467796414 871549661 871549661 659206297 685409426 685409426 759045933 759045933 438487338 354734358 1001261266 1001261266 753915464 603987184 849379770 849379770 825279267 314835568 314835568 269255808 341187210 482761355 780445145 780445145 860824178 860824178 14754240 870537031 870537031 866919827 807411974 109101440 336005262 449321130 688306698 1042076269 1042076269 726966789 195279528 461772918 579997733 806788258 961238051 961238051 833629766 833629766 677905388 1015540266 1061233458 1061233458 1032889239 1047806109 1047806109 902146487 59918528 123605800 123605800 111171192 47186544 734925916 734925916 625215657 243932405 924526002 924526002 646732120 760482477 831918653 916165163 916165163 667086657 667086657 659978158 914730612 914730612 606522177 917689179 1020263506 1020263506 618078406 583797969 447000071 497044540 497044540 1037487521 1037487521 1033033453 1033033453 921522128 637559187 648020001 845250585 845250585 927160928 927160928 258445567 206381532 206381532 81530568 31739880 569705344 569705344 601674729 601674729 875422787 900343775 900343775 1044520980 1044520980 860825143 809570562 543371649 441574038 441574038 541538433 797170237 797170237 633438264 633438264 114144264 278290054 413212998 513825246 513825246 428085686 428085686 878483752 878483752 812522883 57601331 371391514 536920065 602837217 602837217 566369776 70021172 916078722 916078722 313029074 313029074 44040528 33986198 442128400 442128400 424051250 180622076 518751837 974782371 974782371 874509871 834467961 647093033 591656928 80409920 49781568 584789760 584789760 279737042 48982160 307380738 307380738 271109384 69518338 49152 49152 32768 352494619 655056977 659035241 659035241 642331649 537209219 537209219 268638546 233777474 149031084 138485892 79567424 79567424 545656064 545656064 480520788 138667284 138667284 287122880 287122880 336914102 336914102 205256460 264814864 264814864 30667488 27435904 109256868 109256868 169869588 275931540 275931540 537694594 711993857 711993857 708314901 180030528 545919172 545919172 51880240 44982912 45072144 45072144 49191168 49191168 175596992 429237788 429237788 428682342 440561844 658976794 859846683 859846683 927563943 927563943 711813941 711813941 560727968 577523105 577523105 17806229 604003376 654311481 654311481 755500077 755500077 744172846 1047038340 1047038340 934255812 843386977 875014984 875014984 429847362 227195450 424156544 424156544 273460776 287051298 287051298 281593026 281593026 302075456 302125074 369267816 369267816 334087786 334087786 100696144 353656290 353656290 352855330 75629064 350309194 350309194 99105100 214248328 214248328 206373888 86557992 86557992 31580640 31867232 31867232 86927520 86927520 74184072 592118443 592118443 339408562 603114977 603114977 58782016 58245920 826501664 826501664 676003074 538793490 575760978 575760978 43950736 35172880 269748288 314685456 314685456 537932821 537932821 442436990 1008309251 1008309251 963324528 492525286 492525286 623566700 623566700 622315294 632941417 849388586 849388586 431717448 431717448 217829208 131647224 148680480 168855808 256862384 256862384 259307656 259307656 88583724 76482450 101646914 157645764 332100944 332100944 805623339 805623339 608769160 608769160 1006980782 1006980782 542278377 692187342 747692641 830492715 830492715 418720689 732234616 789965373 789965373 988732809 988732809 140958084 230752800 230752800 498665420 498665420 587203688 991430199 991430199 421603089 586767704 586767704 176287256 87164560 87164560 95710056 143054916 143651940 196862196 196862196 171517716 210650332 477124356 477124356 379488986 482103636 482103636 270569892 437537296 711857793 711857793 321284156 321284156 1050055798 1050055798 990139101 1017253661 1017253661 859710018 859710018 680526916 1006175558 1006175558 653099503 958683760 958683760 608779413 113348608 113504472 293806112 822284321 822284321 43640400 888252555 888252555 124380600 269174176 279001186 346098696 346098696 589168176 589168176 591845825 591845825 592208761 592208761 186390152 256252092 256252092 914536506 914536506 730132522 899279943 899279943 780416130 780416130 1019632680 1019632680 881425509 310783960 310783960 168696852 763778996 763778996 569547829 637187076 640168629 664282137 664282137 619734474 619734474 877154841 877154841 813188256 813188256 168302162 327156902 327156902 50364448 50364448 386409688 386409688 440417220 440417220 313998162 140869766 119328312 119328312 76681800 152641080 157628948 157628948 242397732 242397732 73079744 73079744 28325152 226585864 226585864 203649384 136970244 302055442 327495952 327495952 318898432 108004248 273752152 381683418 381683418 309330002 309330002 294000738 358597728 973282440 973282440 833487120 369299801 117440568 761065476 761065476 134467245 107818392 843583878 843583878 1054483814 1054483814 468264743 950941942 966135317 966135317 1006110711 1006110711 323491776 323491776 136677548 293620046 368666848 434151844 434151844 276947010 892495522 892495522 780235233 990816506 990816506 87419688 111149400 127624760 127624760 1049121874 1049121874 810154716 1050549855 1050549855 427922726 427922726 480775664 990744648 990744648 200096357 826745745 826745745 334431714 526045468 526045468 747784256 747784256 482919107 613419330 699321414 699321414 186442528 186442528 126093496 126093496 109052192 184550636 184550636 176036352 176036352 149947332 114905064 124489928 124489928 104352096 127579448 127579448 114875112 114875112 68352608 251482513 701097189 887975465 1045083068 1045083068 464979091 415684806 478619752 478619752 695008359 695008359 511722748 659055799 659055799 288093474 375570850 375570850 185250458 1045707246 1045707246 1014238095 774116940 774116940 190039025 63160224 63160224 69312840 69312840 96497032 96497032 71081352 84982312 84982312 37888 126006896 170215944 379922542 379922542 152101676 276129926 521160428 521160428 445536768 469897544 495072360 495072360 479002772 479002772 199035028 484681754 484681754 264450108 249811468 116515648 116515648 340947338 340947338 107911592 35393528 128182724 711129684 1029012241 1029012241 1018511424 1018511424 866714545 1049690175 1049690175 843653632 843653632 785238996 785238996 639383080 814355592 814355592 398932218 499216818 804484710 804484710 553820328 553820328 92615145 902619128 903699696 903699696 893128259 621445268 412961860 244799000 69341448 85287272 85287272 76995144 99961697 561411777 734831265 734831265 181622056 212255669 741489425 741489425 773718709 773718709 724333608 724333608 672802088 672802088 202689036 234491937 778249809 803216349 803216349 563556416 253890348 253890348 178299568 546897508 752588332 752588332 763499602 763499602 512893502 285612066 763818407 913447575 913447575 630587848 701885157 701885157 911061982 911061982 199044768 199044768 98344628 75961416 462300198 462300198 223040816 212355528 270828586 483210080 483210080 409781528 287542852 289890432 315365498 423773838 423773838 298500738 310506108 310506108 304913928 304913928 286640684 234985198 234985198 780046058 1060636479 1060636479 870048691 870048691 716102660 716102660 902724711 902724711 746887740 1038383278 1038383278 852178461 852178461 642411584 642411584 492138116 492138116 472134792 472134792 447530320 447530320 900601069 900601069 744624525 795504792 795504792 88863912 36559240 122465488 122465488 167780544 167780544 151068728 392795216 392795216 363355498 267657176 267657176 187629588 420315200 428731494 428731494 410689255 416359110 925543391 999239492 1066899368 1066899368 742705293 995036634 995036634 862590387 977274659 977274659 940708359 135974928 823877126 823877126 559226420 559226420 845086497 896009643 896009643 758830606 620308425 620308425 20783120 70780680 70780680 61884936 697360653 697360653 95495016 728030252 728030252 1036257283 1036257283 832178662 638326150 638326150 811746311 811746311 477123458 1008218117 1008218117 269891896 1030580512 1030580512 583297496 990513946 990513946 857425936 961065089 961065089 444599703 879069258 879069258 661963344 661963344 981731415 981748789 981748789 728354131 351077880 319105074 327420018 976695509 976695509 374530940 910118436 910118436 909429531 898459504 239912408 150605324 352865210 352865210 496507922 496507922 455407432 490581842 1022902285 1022902285 937165282 825018003 901453385 901453385 809101059 445870677 380716978 868861528 973144772 973144772 894459605 894459605 802078935 751094282 151259172 433597874 433597874 287454946 287454946 174343680 174343680 72532364 143089932 706999732 706999732 568567885 791644441 791644441 247208244 715803278 715803278 173071694 172736964 544068547 608973312 782745620 782745620 1043912521 1043912521 84821645 689924901 964730679 964730679 814953027 814953027 978322445 978322445 961757991 918513179 918513179 845667795 745892077 661757849 720093228 797344335 797344335 917031105 917031105 273187402 910484561 910484561 269564502 647874569 647874569 620527360 888742978 888742978 68331536 73873800 135235464 436228116 436359698 436359698 436744288 436744288 172347348 463735794 517275238 517275238 89529000 350946880 350946880 352817440 352817440 338028810 621731105 621731105 554308641 1004937011 1004937011 426299781 242277312 207753432 677718405 677718405 648372233 616876229 721716632 721716632 684549205 734566196 784517016 784517016 687936356 687936356 689363493 689363493 57314488 94998736 475263630 475263630 483054798 483054798 425471724 410569894 410569894 254182950 419320714 419320714 312462470 408433588 441619354 514870364 514870364 356391068 526261950 526261950 241208626 228507032 303149068 303149068 440478152 440478152 444934230 472202372 472202372 250559964 82255280 214281912 214281912 502013356 502013356 305273572 406324998 406324998 2232576 463591584 463591584 392490804 438713352 438713352 405325062 505955668 505955668 421094626 421094626 336042086 436680726 985579839 985579839 530130558 1016965537 1016965537 905631052 525386430 525386430 1016586308 1016586308 759224618 971915904 971915904 805434632 287568162 287568162 871549661 871549661 1039952310 1039952310 870964605 1060449087 1060449087 438487338 354734358 1001261266 1001261266 532046724 799061913 992818623 992818623 825279267 702124690 638111401 46280725 232258754 232258754 148571688 42118864 44261554 365272882 365272882 321177906 317754080 144712660 242336932 242336932 115343832 115343832 105431104 940639232 940639232 783050296 783050296 249751247 550538817 701867392 701867392 702638848 702638848 283183394 25166660 285229154 1061233458 1061233458 1032889239 1047806109 1047806109 902146487 865395809 1011477778 1011477778 991136850 705876501 990828263 990828263 719167061 747723317 924526002 924526002 187191349 149074188 149074188 245441684 245441684 404860416 404860416 341674890 356766402 367261872 367261872 917689179 917689179 631659345 583797969 940124506 940124506 619472067 497044540 1037487521 1037487521 1033033453 1033033453 921522128 637559187 637559187 1031752826 1031752826 1000922551 927160928 347509187 206381532 206381532 81530568 597215337 597215337 569705344 562138400 555778336 6319232 900343775 900343775 975113884 975113884 860825143 789776014 382812236 441574038 441574038 541538433 797170237 797170237 633438264 633438264 114144264 114144264 12220992 1008692944 1008692944 944489740 280466496 901895504 901895504 854510461 377411327 303289993 849604627 849604627 602837217 566369776 207667596 916078722 916078722 715525875 715525875 952732884 952732884 812412468 442128400 424051250 152061908 518751837 974782371 974782371 874509871 834467961 647093033 591656928 119851320 340442130 598191624 598191624 676780677 676780677 954777807 954777807 480335233 229099492 288517578 488528652 828694024 828694024 922900562 922900562 63649204 690630820 690630820 947987456 948438087 948438087 739432940 739432940 720420169 720420169 715528533 545656064 869125031 940764772 940764772 913568667 874615440 0 0 0 768358052 768358052 647280325 867908854 867908854 257495899 742255892 805670404 805670404 769747574 793054152 793054152 708314901 27521376 33792288 51880240 51880240 44982912 136077424 156030576 193375444 193375444 346279774 429237788 429237788 428682342 440561844 658976794 658976794 675290248 675290248 365990083 54547104 324149296 332002482 332002482 323691714 323691714 306561042 126927480 291046648 291046648 744172846 744172846 360476070 934255812 934255812 843386977 391671336 285738018 285738018 227195450 311913918 496841448 496841448 340853130 287051298 281593026 549376321 549376321 302125074 646632496 646632496 668037465 668037465 602932209 806482898 806482898 881869162 881869162 350309194 350309194 99105100 422846574 422846574 206373888 347143430 347143430 202095460 58176032 289696560 489316482 520686780 520686780 402500450 402500450 549738304 549738304 174067461 137126052 22391424 809305472 809305472 156001795 140822916 135545728 279308674 289137498 399242490 399242490 377965728 12634176 537932821 537932821 442436990 1008309251 1008309251 963324528 492525286 492525286 623566700 623566700 622315294 632941417 849388586 849388586 431717448 431717448 217829208 131647224 170493168 188770336 256862384 256862384 235647160 155717392 155717392 76482450 101646914 157645764 157645764 272631812 805623339 805623339 608769160 608769160 1006980782 1006980782 774081212 1011324939 1011324939 830492715 830492715 737206533 737206533 789965373 789965373 988732809 988732809 681547398 692220642 692220642 498665420 498665420 587203688 991430199 991430199 421603089 214435020 176287256 176287256 102474256 69280008 95710056 193626468 193626468 260258508 260258508 144113780 145653108 186572340 379488986 379488986 482103636 482103636 326666172 437537296 711857793 711857793 703867822 844362373 844362373 531227743 888606225 888606225 414187526 859710018 859710018 625387455 1006175558 1006175558 653099503 958683760 958683760 608779413 298365820 298365820 264245500 822284321 822284321 423813364 888252555 888252555 177540228 269174176 279001186 346098696 346098696 589168176 589168176 570763281 197670112 197670112 786040896 786040896 256252092 256252092 914536506 914536506 730132522 899279943 899279943 686326786 455525829 882260186 1006702025 1006702025 404087609 455433760 455433760 508495934 569547829 569547829 613324037 613324037 560424240 631466528 631466528 313955394 546855475 546855475 296883042 61948514 193323760 539015552 729809013 812191826 812191826 298451108 478749774 478749774 574831713 574831713 422225072 411929673 705847925 705847925 671681064 730931448 730931448 194510220 194510220 620246728 620246728 614435496 614435496 226585864 629855337 629855337 622046997 327495952 767332137 767332137 253020732 659777028 659777028 381683418 732488704 743358769 743358769 685787376 685787376 180904344 89137376 180685457 377554049 868063616 921356069 921356069 880926795 912457903 912457903 1054483814 1054483814 553648161 823012642 966135317 966135317 1006110711 1006110711 323491776 717825465 717825465 385301466 593457705 1029080765 1029080765 524520254 674860713 674860713 780235233 990816506 990816506 422501670 402807074 301090186 349832872 751208640 751208640 810154716 1050549855 1050549855 769925184 946072801 946072801 691655869 691655869 542585109 345768932 88080512 88080512 83886120 33751056 42080336 143206756 143206756 19608864 157812740 157812740 127716984 119574336 138676232 201590784 201590784 237052312 237052312 16842760 83959848 89133008 114905064 114905064 87167784 87167784 127579448 127579448 114875112 320279794 320279794 331518034 331518034 0 1045083068 1045083068 464979091 415684806 384293098 310378578 310378578 278921488 730334534 730334534 1023500351 1023500351 962666919 906560956 732169743 1045707246 1045707246 1014238095 774116940 774116940 626593024 605377064 63160224 51753472 29236512 24905760 71081352 71081352 86072488 221153024 236479148 236479148 265518000 379922542 379922542 248785876 276129926 532189992 532189992 445536768 469897544 495072360 495072360 97001600 29636640 29636640 216165464 264450108 264450108 115372412 114198145 821300481 821300481 546124033 620308425 620308425 922796091 922796091 950062053 967861207 967861207 742499341 866714545 1049690175 1049690175 843653632 843653632 785238996 785238996 688744848 814355592 814355592 398932218 499216818 804484710 804484710 605679017 604641257 116039153 902619128 903699696 903699696 893128259 621445268 412961860 244799000 219626028 260199548 260199548 220200492 91194244 173107712 173107712 21004480 25215072 216400044 237626488 237626488 193697812 193697812 153371956 168294420 168294420 170394900 260189372 260189372 207632472 151586344 149520092 84357768 253890348 253890348 248053788 248053788 268118764 268118764 420363389 420363389 285612066 285612066 763818407 913447575 913447575 557065888 701885157 701885157 911061982 911061982 229299564 199044768 98344628 190045835 960793023 960793023 522983713 939839107 939839107 483210080 993788284 1005063615 1005063615 630997177 630997177 709248074 912033272 912033272 412535064 310506108 304913928 304913928 286640684 234985198 234985198 278951238 278951238 586691712 586691712 582169425 832757760 832757760 711849462 711849462 464178931 408126642 317453778 282838210 71303312 352322586 352322586 341068954 472505624 472505624 472134792 203756864 203756864 157421988 150999424 108368824 108368824 24275608 107790688 107790688 100697392 27942996 167780544 177284820 177284820 218169572 363355498 363355498 267657176 267657176 191959648 225762776 225762776 346786830 346786830 99059384 925543391 999239492 1066899368 1066899368 504106014 307890240 863569986 863569986 694886768 599971173 706822240 706822240 637570072 637570072 151029793 419430790 593597072 593597072 413943626 543713384 620308425 620308425 36405424 190656180 190656180 149709712 697360653 697360653 116967384 728030252 728030252 568983768 832178662 832178662 749213074 749213074 205787784 294699618 294699618 341052042 523371430 600431810 600431810 823881065 971968405 971968405 857425936 857425936 961065089 961065089 444599703 879069258 879069258 722732549 974169191 981731415 981748789 981748789 728354131 430779208 439872038 439872038 976695509 976695509 480435866 910118436 910118436 909429531 898459504 308523344 370806194 370806194 352865210 496507922 496507922 455407432 542713473 559481479 961544871 961544871 807403792 807403792 815367424 815367424 311542640 311542640 111207696 973144772 973144772 710485653 710485653 806306340 806306340 403814915 151259172 142675232 48898112 86125698 394603690 453842038 453842038 405932824 556532736 556532736 25288800 689311760 689311760 396639925 715803278 715803278 742507532 742507532 544068547 608973312 983770882 983770882 616384283 707339541 707339541 125933069 858944868 858944868 845165732 1529088 76087624 76087624 677646540 677646540 580825296 543026817 95894376 207761608 260150024 260150024 139481268 917031105 917031105 273187402 910484561 910484561 248656540 647874569 647874569 620527360 682402594 682402594 374962408 539495068 539495068 383045075 257691634 407823166 436744288 436744288 143799556 437305028 437305028 141292932 141292932 140193056 87528616 352817440 352817440 338028810 336102400 402781538 403928736 403928736 243940336 242277312 242277312 176277969 677718405 677718405 648372233 616876229 721716632 721716632 684549205 734566196 784517016 784517016 687936356 687936356 689363493 689363493 95210816 83886120 475263630 475263630 483054798 483054798 425471724 261247008 261247008 332029616 475699906 475699906 312462470 408433588 441619354 514870364 514870364 356391068 526261950 526261950 241208626 104875056 303149068 303149068 279370050 70728192 102711856 102711856 69796656 23896864 222663786 312933574 312933574 178294536 338499376 338499376 756647341 756647341 306192846 463591584 864733995 864733995 977154247 1006946319 1006946319 369807435 403215366 620839183 620839183 505455672 448886228 448886228 371137320 30008544 269043910 944511584 944511584 165319907 429424672 621764708 621764708 498972553 357041322 339322498 339322498 343062786 343062786 424153600 424153600 1039952310 1039952310 870964605 1062348679 1062348679 422403003 274900992 681599936 681599936 572588692 799061913 992818623 992818623 819984826 702124690 638111401 544212993 544212993 232258754 148571688 75516128 75516128 365272882 365272882 321177906 860096691 916259035 916259035 754399464 754399464 382713958 1045204068 1045204068 940639232 783050296 783050296 249751247 954820036 954820036 701867392 537407297 157852033 142681613 748234317 1050478443 1050478443 1050463839 1050463839 614127939 822616078 865395809 865395809 1011477778 1011477778 991136850 705876501 990828263 990828263 719167061 747723317 747723317 118572609 26904168 92899056 130671864 130671864 73515672 105963912 105963912 33216480 121819320 524339922 524339922 343546120 327730290 439125000 1036601686 1036601686 940124506 694709423 376411337 351148344 492047022 492047022 499288302 499288302 460540412 398625872 1031752826 1031752826 1000922551 879532112 826413219 929880107 929880107 590627873 597215337 628769225 628769225 562138400 72794728 72794728 9208128 9208128 14366400 14366400 33256672 33256672 594219624 855336089 855336089 703122083 645192405 143172800 53927952 45842560 45842560 44870224 12220992 1008692944 1023385351 1023385351 280466496 901895504 901895504 854510461 655569799 375337881 849604627 1062343737 1062343737 672537093 760073836 760073836 210408896 715525875 715525875 952732884 952732884 812412468 427183428 157319810 146817956 144965824 144965824 79032360 871464986 871464986 625058191 510763245 271761236 340442130 598191624 598191624 703107173 703107173 954777807 954777807 480335233 229099492 288517578 488528652 828694024 828694024 922900562 922900562 906568731 754526157 978867805 978867805 948438087 948438087 948233121 948233121 720420169 720420169 715528533 386286296 869125031 940764772 940764772 913568667 874615440 353843754 413166286 519116988 768358052 768358052 647280325 867908854 867908854 769263841 742255892 805670404 805670404 769747574 1037279850 1037279850 239350280 626902896 626902896 595427956 45729872 45729872 136077424 156030576 193375444 193375444 346279774 346279774 232110828 232110828 130306787 532315993 543054175 543054175 382562030 382562030 54547104 324149296 332002482 332002482 323691714 323691714 306561042 412123896 412123896 352388198 341386890 97587434 71963784 662910376 662910376 472429725 391671336 338792414 235025470 319526484 319526484 496841448 496841448 340853130 152634476 152634476 549376321 549376321 118512648 646632496 646632496 668037465 668037465 602932209 806482898 806482898 881869162 881869162 75540264 72690312 72690312 422846574 422846574 165194412 347143430 347143430 202095460 58176032 289696560 489316482 520686780 520686780 402500450 402500450 1024143772 1024143772 490803797 158409124 403259392 809305472 809305472 156001795 541118080 930372946 930372946 643824312 643824312 872783041 872783041 897839211 897839211 545381682 104781592 305928704 305928704 304867840 84798504 102246408 102246408 67438104 1148416 1148416 648192 110147188 151712876 253323000 253323000 226566252 230686956 230686956 188770336 50406944 50406944 155717392 155717392 161940224 161940224 275063168 408945030 408945030 407111814 557920288 557920288 541200513 290648076 290648076 774081212 1011324939 1011324939 1038428584 1038428584 737206533 737206533 124119480 566508294 673842918 673842918 681547398 692220642 692220642 562875489 1043197150 1043197150 482881306 482881306 616681268 688705996 688705996 102474256 102474256 50848048 40245648 193626468 193626468 260258508 260258508 237552824 184485348 186572340 186572340 89203368 239871036 622198827 622198827 335679498 438312246 845553511 845553511 844362373 844362373 432814984 336149998 213325190 549456448 549456448 672661504 672661504 316523856 276114306 45089616 104814300 460425244 460425244 298365820 298365820 264245500 264245500 289948912 423813364 423813364 294108722 177540228 177540228 79300416 40512328 74936832 74936832 64598256 44114256 200804340 200804340 786040896 786040896 583664780 583664780 210962948 210962948 8646720 269033578 360784898 360784898 276897858 355487822 1006702025 1006702025 480226088 480226088 455433760 453719094 136030492 810092020 999215223 999215223 952355113 631690209 631466528 313955394 546855475 546855475 296883042 667211888 902090793 902090793 729809013 812191826 812191826 298451108 478749774 763172460 763172460 574831713 940380574 940380574 705847925 705847925 671681064 730931448 730931448 550774944 194510220 620246728 620246728 614435496 614435496 145602861 629855337 629855337 622046997 226892116 767332137 767332137 253020732 659777028 659777028 16986144 732488704 743358769 743358769 685787376 685787376 180904344 89137376 180685457 377554049 868063616 921356069 921356069 880926795 919049468 919049468 683672160 683672160 553648161 553648161 553648128 537101600 585155025 585155025 189333888 717825465 717825465 385301466 593457705 1029080765 1029080765 757009827 757009827 782423572 896604886 896604886 422501670 422501670 402807074 301090186 349832872 751208640 751208640 525245229 917600083 917600083 969457992 969457992 946259169 691655869 691655869 841828533 851179347 851179347 311228698 479058052 479058052 699931968 699931968 404044075 630064994 630064994 629723754 189038804 189038804 238348516 238348516 201590784 237052312 237052312 201992688 201992688 256330668 256330668 53445024 34648368 69816384 69816384 8561928 44460880 320279794 320279794 331518034 999406707 999406707 945232628 945232628 61266774 323262934 323262934 310378578 560496899 560496899 807421345 807421345 1023500351 1023500351 988992551 988992551 732169743 732169743 230688812 314852074 314852074 626593024 626593024 605377064 30802376 78373384 78373384 28972896 57856944 111508208 237653936 237653936 236479148 236479148 265518000 265518000 248785876 248785876 96130920 532189992 532189992 316024854 227743522 103550232 97001600 210767968 226628140 226628140 25296908 3220224 6427008 67596690 362604370 821300481 821300481 546124033 620308425 620308425 922796091 922796091 950062053 967861207 967861207 810425475 690013012 883543964 883543964 721962837 708321301 175718529 688744848 688744848 560263525 108007536 99750888 117026080 598000608 605679017 605679017 612509312 612509312 105625296 105625296 106054720 106054720 159494976 159494976 158854304 219626028 260199548 260199548 220200492 169003588 201097780 201097780 181407700 161407416 648316188 722265421 722265421 231521316 237582720 237582720 168294420 168294420 170394900 260189372 260189372 207632472 103440032 103440032 84357768 84357768 148311136 248053788 248053788 268118764 268118764 261635200 126760160 134355588 134355588 185066004 185066004 557065888 557065888 538445163 881989042 881989042 860537032 860537032 845501971 644283025 644283025 960793023 960793023 522983713 939839107 939839107 331368335 993788284 1005063615 1005063615 990455316 835471940 835471940 912033272 912033272 412535064 476545304 476545304 244673552 975196483 975196483 836444836 836444836 410950159 318118317 318118317 836920677 853781206 853781206 717095442 991088948 991088948 978213980 1001413630 1001413630 330615666 77203424 88665000 114145088 504952712 511207454 511207454 101030158 107575056 109320832 109320832 108368824 108368824 40450160 107790688 107790688 173714144 173714144 199498544 199498544 177284820 129673656 161691968 161691968 249376188 249376188 191959648 191959648 162476628 167473371 803881908 907394468 907394468 543302549 1025446250 1025446250 535973821 151329288 864426099 864426099 816543269 816543269 822678547 822678547 637570072 637570072 151029793 567167361 567167361 610738108 930385227 930385227 795818413 727921077 614498556 190656180 190656180 149709712 122231816 298456532 489357800 489357800 735314427 735314427 907943567 907943567 749213074 749213074 552211536 294699618 294699618 341052042 523371430 600431810 600431810 823881065 1065878655 1065878655 821783560 821783560 518663872 518663872 231642280 905996589 1033873976 1033873976 974169191 974169191 759441430 759441430 741125965 741125965 888989242 888989242 591212337 480435866 480435866 305315546 305315546 282873146 308523344 770784859 770784859 370806194 783211869 783211869 372892196 372892196 542713473 559481479 961544871 961544871 802456993 682133828 817743889 817743889 136298598 294774370 294774370 939680923 939680923 935954171 1007784537 1007784537 806306340 403814915 353894998 223487918 523487026 523487026 394603690 453842038 453842038 405932824 1010919157 1010919157 752004578 752004578 689311760 396639925 1006928016 1006928016 742507532 742507532 237281544 237281544 983770882 983770882 579998289 707339541 707339541 843646852 858944868 858944868 845165732 714985921 714985921 550306445 672921093 1011211023 1011211023 675827589 214829637 544461445 605287176 605287176 615548040 615548040 382861384 348652746 348652746 412664456 412664456 675123749 675123749 216080844 682402594 682402594 671454892 671454892 846178920 877509093 877509093 610541608 610541608 251895836 84460584 437305028 538911360 543929604 543929604 560707332 679203492 679203492 14168768 721898833 721898833 590997297 403928736 610541856 610541856 224272044 153407776 153407776 134678808 157589808 157589808 158743472 158743472 146084292 132423720 636492200 719715324 719715324 556083488 543960041 106987896 565051912 565051912 564956376 647154769 647154769 115748536 57284608 18225696 362041376 362041376 332029616 475699906 475699906 55613102 326680656 326680656 37120472 82053392 82053392 19922208 53334024 116947992 116947992 116866008 46346448 70728192 72888192 72888192 8339080 23896864 23896864 222663786 347068630 347068630 512334108 512334108 591861817 756647341 756647341 306192846 1063075872 1063075872 864733995 977154247 1006946319 1006946319 369807435 403215366 620839183 620839183 505455672 595845480 595845480 371137320 30008544 154544384 944511584 944511584 165319907 404824162 621764708 896992073 896992073 746786240 746786240 608181442 343062786 343062786 725914877 994052277 994052277 974413329 745162659 1062348679 1062348679 456323077 494462612 947331140 947331140 1055579272 1055579272 336500189 107480472 359848689 574669328 886051594 886051594 544212993 479206191 24382368 75516128 80495680 98099224 182031016 201722372 860096691 916259035 916259035 754399464 969019623 969019623 1045204068 1045204068 722748546 1024305383 1029216363 1029216363 954820036 954820036 838850242 568642017 281929347 677205284 748234317 1050478443 1050478443 1050463839 1050463839 614127939 310988932 449104086 524849262 524849262 403577862 294557362 1017119055 1028918191 1050363615 1050363615 645124632 877867074 877867074 164891364 618475092 664013433 733775881 733775881 1061789208 1061789208 435147254 482854830 524339922 524339922 282516418 355766712 924982250 1036601686 1036601686 877520327 694709423 357336456 351148344 492047022 492047022 499288302 499288302 176126986 648607545 648607545 604710817 879532112 879532112 841091490 929880107 929880107 590627873 590627873 628769225 628769225 61492560 72794728 138338052 147627652 472259655 746859981 746859981 751505864 751505864 594219624 912955346 912955346 812290835 918124379 918124379 312862982 396110882 396110882 346101830 406238726 903698146 1023385351 1023385351 233238040 485186608 485186608 860096673 860096673 572533121 122560257 1062343737 1062343737 672537093 760073836 760073836 684741164 629330025 486691397 272368256 272368256 427183428 427183428 297219494 297219494 144965824 821990375 821990375 871464986 871464986 625058191 510763245 271761236 271761236 211786227 367198070 703107173 703107173 701111397 690562112 347415823 628033280 628033280 611005833 548879809 113510616 373368898 906568731 906568731 754526157 978867805 978867805 272286663 760548040 948233121 948233121 841922372 841922372 279544678 279544678 429224058 429224058 18348576 78113808 353843754 353843754 413166286 519116988 519116988 482124064 368017782 633079020 769263841 769263841 697483265 858825496 858825496 697963764 1037279850 1037279850 542876160 626902896 626902896 595427956 45729872 45729872 47400576 57256064 145029584 172308500 172395668 176698816 176698816 110974216 170138324 170138324 999581744 999581744 828350097 828350097 441524865 690033319 704325041 704325041 561555398 561555398 122835136 412123896 412123896 352388198 341386890 277505638 71963784 662910376 662910376 594913478 415591345 338792414 235025470 319526484 319526484 268509184 318910976 318910976 193598296 498664714 498664714 287217184 287217184 354030600 354030600 350356032 350356032 343020426 356838048 356838048 348775626 344780426 387990930 387990930 106380282 1005261249 1005261249 758648673 708189998 959468148 974957041 974957041 833617251 265630584 315602851 362023537 362023537 214138107 1024143772 1024143772 490803797 158409124 884051208 884051208 89538314 89538314 541118080 930372946 930372946 643824312 643824312 872783041 872783041 897839211 897839211 1047583998 1047583998 1040573595 1040573595 680588818 471168622 471168622 658039660 841930028 948144944 948144944 907018779 739803712 378028672 253323000 253323000 226566252 230686956 230686956 34603568 50406944 50406944 143341836 205004544 346897466 346897466 275063168 408945030 408945030 914755206 956483586 956483586 618238561 893736161 893736161 784586972 385948309 385948309 1038428584 1038428584 724917013 897979187 897979187 825964323 664077160 664077160 953300572 953300572 562875489 1012139575 1043197150 1043197150 905716841 836357431 776064864 776064864 688705996 151241256 119230944 50848048 21198944 158228693 545619201 566274225 566274225 677066373 677066373 176160660 176160660 89203368 239871036 622198827 622198827 335679498 182061812 845553511 845553511 566231265 954482345 954482345 336149998 213325190 549456448 549456448 672661504 672661504 622925365 622925365 591999726 1003937892 1003937892 90313128 155472808 155472808 436438020 436438020 214455478 214455478 372379544 372379544 326647552 326183330 345853432 345853432 330869096 19694752 31264192 31264192 200804340 200804340 619450712 619450712 611274332 611274332 819820579 819820579 730754101 956404310 956404310 875038253 875038253 769537892 224469420 224469420 480226088 480226088 354149190 120851256 906450952 906450952 999215223 999215223 952355113 631690209 107615512 107615512 635863089 635863089 109340864 667211888 902090793 902090793 736980499 385264186 385264186 752935311 752935311 763172460 763172460 204606655 940380574 940380574 306325903 206077964 4194316 122880 550774944 550774944 21250657 20037376 19080832 29809152 145132900 145132900 31359840 152601284 165994916 165994916 157403620 136776100 29360352 29360352 12652576 4458624 26384608 624198144 624198144 73382456 108767616 108767616 86793416 693203160 693203160 717573486 717573486 195307911 312493082 919049468 919049468 683672160 980618004 980618004 553648128 998754180 998754180 680784260 680784260 21168161 169345112 243564549 243564549 70023197 355178821 401266170 757009827 757009827 782423572 896604886 896604886 595685617 461701782 526993818 526993818 60532720 709370516 883934283 883934283 933632379 933632379 969457992 969457992 946259169 618389346 618389346 841828533 851179347 851179347 311228698 479058052 479058052 699931968 699931968 404044075 630064994 630064994 629723754 189038804 189038804 238348516 238348516 180406996 244376396 244376396 216321144 216321144 256330668 256330668 181916216 220734760 220734760 86193408 86193408 26796560 163739380 164939428 323567651 999406707 999406707 945232628 945232628 909280024 909280024 872468491 414699339 560496899 560496899 967034044 967034044 736223733 484466747 988992551 988992551 579502931 579502931 143205444 59532928 134617092 140708160 140708160 113250608 113250608 78373384 78373384 28972896 263274848 263274848 237653936 237653936 38014080 188252960 193220100 193220100 176432336 139275396 79270760 244024576 304190992 304190992 103550232 103550232 125928320 210767968 226628140 226628140 223592704 113332744 132872296 339162128 362604370 362604370 116700994 116700994 102834456 102834456 44758088 303358848 791972782 791972782 810425475 810425475 690013012 730965376 735790320 735790320 708321301 191712260 19473696 25985637 108007536 151755956 235280412 235280412 180748488 16961568 16961568 612509312 612509312 62939280 124641712 124641712 44191624 159494976 159494976 151222784 151222784 65231553 698630465 698630465 724994677 724994677 708103745 727304721 727304721 648316188 722265421 722265421 231521316 237582720 687661709 687661709 153224577 142729284 203026452 203026452 210662324 221458064 221458064 53000320 26331328 637627817 637627817 228892684 704652485 704652485 558774329 609162472 671088645 687932032 687932032 630372832 589407080 545787185 545787185 881989042 881989042 860537032 860537032 845501971 644283025 725648144 725648144 857523377 857523377 453364867 306307218 290213010 289480866 147661952 990455316 990455316 835471940 835471940 274382888 512229510 512229510 476545304 476545304 210520132 975196483 975196483 836444836 836444836 410950159 318118317 464551858 836920677 942934791 942934791 719710677 991088948 991088948 978213980 1001413630 1001413630 330615666 455505280 505145094 507910302 507910302 511207454 511207454 275373456 304576530 309108896 309108896 22465440 40450160 40450160 65411568 65411568 173714144 173714144 199498544 199498544 26353856 39687216 161691968 161691968 54804552 130337016 130337016 215276944 215276944 223883344 803881908 907394468 907394468 543302549 1025446250 1025446250 914778489 914778489 864426099 864426099 1033540873 1033540873 822678547 822678547 657982037 614989984 765986157 765986157 567167361 610738108 930385227 930385227 795818413 727921077 614498556 93525624 93525624 69475400 507536504 507536504 489357800 489357800 735314427 735314427 907943567 907943567 632561573 716313261 999424282 999424282 500745094 500745094 109906542 168346644 585360785 612504630 1065878655 1065878655 660754556 660754556 518663872 518663872 987531796 987531796 1033873976 1033873976 957445728 957445728 285286434 490808512 741125965 741125965 888989242 888989242 591212337 325056298 213569729 153166116 2154532 386745840 386745840 770784859 770784859 530587959 783211869 783211869 433449702 545511620 831570531 841770135 972368871 972368871 707793676 740988437 817743889 817743889 136298598 294774370 294774370 939680923 939680923 935954171 1007784537 1007784537 454231752 882905367 882905367 671907536 921952128 921952128 415475136 215103272 71577280 957618401 1010919157 1010919157 896734388 752004578 601904800 446742870 1006928016 1006928016 1015450251 1015450251 340398219 191502116 175642325 579998289 579998289 574619793 574619793 843646852 843646852 715138899 603130081 714985921 714985921 550306445 672921093 1011211023 1011211023 675827589 371272192 544461445 605287176 605287176 615548040 615548040 382861384 348652746 348652746 412664456 538191968 675123749 675123749 161649952 161649952 16942084 671454892 671454892 846178920 877509093 877509093 610541608 610541608 85886232 85886232 176102147 538911360 543929604 543929604 560707332 679203492 679203492 542828304 721898833 721898833 633602305 633602305 741479116 741479116 698749320 111677816 111677816 73664904 103098648 111750768 111750768 51454512 165082020 171723820 636492200 636492200 615547009 608797960 608797960 230711997 714962060 714962060 621477920 647154769 856068906 856068906 811605152 243270036 478446148 478446148 232265754 177362950 177362950 176808940 176808940 456496984 516357940 516357940 45039760 19922208 53334024 116947992 116947992 174722701 174722701 174500627 912981139 912981139 643686819 629182464 629182464 363787337 577007713 577007713 758487872 758487872 591861817 655432328 655432328 741359193 1063075872 1063075872 667012981 350331097 328066116 112644130 940232838 940232838 717527253 323526019 495260202 620121858 620121858 478749774 478749774 356196462 942407009 942407009 739265608 688987751 688987751 896992073 896992073 873868104 873868104 608181442 335636486 335636486 725914877 994052277 994052277 974413329 963807790 963807790 731027338 456323077 494462612 947331140 947331140 1055579272 1055579272 919864267 919864267 531434847 359848689 886051594 886051594 894835458 894835458 604789124 882426061 1020023021 1020023021 566265289 595040304 803599320 803599320 720628477 602013974 969019623 969019623 952291527 952291527 366270529 1024305383 1029216363 1029216363 886224623 886224623 838850242 568642017 412880454 683336582 683336582 284272512 299442914 341091658 352999688 352999688 69730562 33628176 67125832 67125832 340951240 340951240 1017119055 1028918191 1050363615 1050363615 508014601 877867074 877867074 164891364 745353024 745353024 733775881 733775881 1061789208 1061789208 435147254 482854830 500044192 500044192 287480132 355766712 924982250 924982250 218236172 105712814 361294066 361294066 267391096 102931738 102931738 375940674 375940674 102885081 648607545 648607545 604710817 560345523 841091490 858330369 858330369 587804688 35083569 53643280 53643280 61492560 124005856 124005856 357622898 357622898 472259655 746859981 746859981 853567172 952107207 952107207 912955346 912955346 812290835 918124379 918124379 312862982 396110882 396110882 346101830 406238726 903698146 903698146 405680329 4259904 570433632 570433632 860096673 860096673 657015208 575267985 575267985 383608041 770767970 770767970 684741164 684741164 629330025 486691397 272368256 272368256 286262368 299567556 299567556 297219494 421289390 821990375 924586859 924586859 135790743 909123865 909123865 94811728 94811728 840227914 840227914 647632473 183501556 690562112 810177571 1024595338 1024595338 628033280 1023118221 1023118221 877277586 877277586 933504074 933504074 858599329 856229138 856229138 598287729 55050609 209756208 491924576 841922372 841922372 434267574 434267574 811602035 811602035 710465045 710465045 689809456 386376978 386376978 336531720 365852746 365852746 105877776 105877776 139703440 153252004 824230660 858825496 858825496 639734339 612938880 612938880 542876160 542876160 194114468 194114468 42152016 9166864 9117696 42670336 42670336 134223044 134291460 176698816 176698816 62226464 170138324 563312673 999581744 999581744 828350097 873412069 441524865 690033319 704325041 747320397 747320397 561555398 542138560 642880201 936564245 936564245 903349951 293546858 430871401 769913325 830307911 830307911 803817474 803817474 224130732 224130732 88741032 205526016 436408832 436408832 193598296 498664714 902075651 902075651 342803544 914407474 914407474 669028427 669028427 601990867 779207169 913384347 913384347 437322125 387990930 777833324 777833324 1005261249 1005261249 758648673 708189998 959468148 974957041 974957041 833617251 265630584 569228824 861933545 861933545 1061647496 1061647496 662437055 155189412 155189412 884051208 884051208 813938817 813938817 542639745 269322881 533386494 533386494 519095262 614910144 735236703 735236703 660113310 1047583998 1047583998 1040573595 1040573595 680588818 471168622 471168622 881870442 1007305226 1007305226 948144944 956301614 956301614 378028672 692627472 715460732 715460732 692248840 1067497122 1067497122 444788318 444788318 269556410 269556410 346897466 346897466 343552616 328363904 328363904 914755206 956483586 956483586 618238561 893736161 893736161 784586972 192977872 405848838 405848838 872160774 872160774 897979187 897979187 825964323 535625505 535625505 953300572 953300572 141629344 1012139575 1012139575 905716841 905716841 836357431 776064864 776064864 599244464 151241256 119230944 112708696 82280464 158228693 545619201 566274225 566274225 677066373 677066373 143340561 47920848 32975200 89529873 797065788 797065788 546492993 331140978 603980008 603980008 566231265 954482345 954482345 604752068 610308227 610308227 424808462 424808462 403887055 622925365 622925365 591999726 1003937892 1003937892 90313128 155472808 155472808 436438020 436438020 323092712 428480546 495333518 495333518 467221670 381169282 345853432 345853432 330869096 88418472 634724881 634724881 556805908 192482229 679600197 679600197 611274332 611274332 819820579 819820579 730754101 956404310 956404310 875038253 875038253 769537892 224469420 303183808 414316074 414316074 354149190 592724148 906450952 906450952 100821035 563089600 563089600 559026849 107615512 107615512 635863089 635863089 84236304 608618496 724683717 736980499 736980499 174100451 332159674 752935311 752935311 545350885 541970336 863109625 863109625 202215863 1008606349 1008606349 234954780 772732656 772732656 601098993 586065120 576393264 591189393 703280436 703280436 42257028 39600788 142006976 165994916 165994916 157403620 136776100 29360352 29360352 12652576 4458624 26384608 624198144 624198144 73382456 108767616 108767616 92625104 693203160 852519976 937291515 937291515 357370971 814543768 814543768 673523705 896016849 980618004 980618004 556318720 998754180 998754180 680784260 680784260 152765920 169345112 169345112 445520982 690624878 690624878 205133849 287182382 847093534 847093534 612829190 595685617 595685617 461701782 526993818 526993818 283600962 709370516 883934283 883934283 933632379 933632379 898343008 898343008 810860457 618389346 618389346 57250960 88338600 108909672 108909672 106900448 110374576 110374576 147117220 345644256 345644256 339932106 62204848 184132436 184132436 177326208 180406996 180406996 244376396 244376396 216321144 216321144 114345440 153218496 181916216 220734760 220734760 125845944 125845944 122785752 311942674 311942674 191466560 412714886 412714886 659348682 1051597775 1051597775 909280024 872468491 414699339 495827284 495827284 967034044 967034044 736223733 484466747 916694258 916694258 411115590 761596877 761596877 368455362 368455362 579622272 668484992 668484992 127291888 117922048 117922048 20673824 263274848 263274848 112189532 79970304 38014080 188252960 193220100 193220100 154200452 130026640 130026640 244024576 244024576 228791552 228791552 220083576 220083576 125928320 252866736 252866736 223592704 189851192 169494928 339162128 339162128 872753163 872753163 822057289 621801161 621801161 985212759 989110423 989110423 791972782 516299962 516299962 441669186 540021396 735790320 735790320 191712260 191712260 553664705 588081866 880303003 880303003 811103440 235280412 180748488 26710592 563397152 583790920 583790920 73732624 124641712 124641712 44191624 68382820 68382820 151222784 151222784 146082656 698630465 698630465 724994677 724994677 708103745 727304721 727304721 549227825 549227825 150210692 150211524 150211524 687661709 687661709 709886192 709886192 203026452 203026452 210662324 221458064 221458064 109259128 109259128 637627817 637627817 228892684 704652485 704652485 558774329 609162472 671088645 687932032 687932032 630372832 589407080 545787185 545787185 541069160 74188944 74188944 69992576 271844745 617647505 844648128 844648128 857523377 858308860 858308860 779882397 290213010 994428056 994428056 898707289 898707289 869461036 726638698 559837856 559837856 512229510 455735172 372632346 283181772 210520132 209735744 403178560 411041862 411041862 285738096 464551858 602250802 942934791 942934791 719710677 719710677 184726656 185565062 311324688 311324688 308805216 455505280 505145094 507910302 507910302 474405014 405978246 275373456 304576530 309108896 309108896 22465440 36292464 123612440 123612440 60170512 85714984 85714984 63036976 79129696 85058088 85058088 195246024 195246024 158620780 158620780 130337016 215276944 215276944 223883344 452379699 452379699 288160735 542286168 542286168 656343513 914778489 976785478 976785478 671137797 1033540873 1033540873 637699420 657982037 657982037 614989984 765986157 765986157 550847328 499706794 499706794 224426872 208457100 233990232 233990232 288497188 523713342 523713342 507536504 507536504 199804098 211857416 211857416 198461400 754879397 754879397 632561573 716313261 999424282 999424282 501483426 500745094 269519660 168346644 585360785 593571536 593571536 557167522 575109779 575109779 665931472 665931472 987531796 987531796 589308676 722543157 722543157 343446848 343446848 490808512 490808512 304719310 766307856 800138109 905764553 905764553 843297179 935454733 935454733 698451333 1042227976 1042227976 715719964 530587959 445386050 169869588 808663304 808663304 831570531 841770135 972368871 972368871 914884098 914884098 848544833 882111051 882111051 247935593 253652607 363144983 474157068 830566642 830566642 549609623 943131444 943131444 882905367 671907536 921952128 921952128 564269921 634389225 634389225 957618401 957618401 896734388 896734388 749867383 978586156 978586156 940877153 940877153 1015450251 1015450251 812866711 1053195073 1053195073 331423986 379262026 379262026 298844898 413270950 413270950 407895174 438615554 438615554 140812416 343739010 343739010 336118794 14699162 68545032 371272192 371272192 211721536 280578956 280578956 276034434 116594752 116594752 121087900 255588156 664186974 664186974 422759997 161649952 615684498 919915227 919915227 823341603 823341603 369199562 369199562 103308840 358573738 358573738 282949320 460424982 460424982 576330784 576330784 707813904 707813904 542828304 542828304 146412945 134219364 633602305 633602305 741479116 741479116 710789965 710789965 671612213 671704125 671704125 255591980 606269236 606269236 591476113 566181408 566181408 615547009 615547009 608797960 608797960 230711997 714962060 714962060 886877831 886877831 856068906 856068906 811605152 441893522 478446148 478446148 404017172 404017172 177362950 176808940 176808940 456496984 516357940 516357940 424749374 393216938 393216938 71649844 136061192 174722701 174722701 174500627 912981139 912981139 643686819 629182464 629182464 892608520 892608520 577007713 758487872 758487872 584194892 570462344 580903817 741359193 741359193 913396572 913396572 328066116 328066116 112644130 940232838 940232838 717527253 461940928 282796656 620121858 620121858 876996747 876996747 687504098 942407009 942407009 1012481513 1012481513 822949030 691219273 691219273 873868104 873868104 661588345 661588345 759419181 759419181 774489452 774489452 497759598 992100868 992100868 524891527 521107002 521107002 639361380 639361380 645201732 645201732 919864267 919864267 539103040 547233345 547233345 585024150 894835458 894835458 604789124 882426061 1020023021 1020023021 566265289 595040304 803599320 803599320 720628477 563397221 136499460 912445888 914358363 914358363 544428443 636608710 819353156 819353156 886224623 886224623 756581387 625762317 625762317 683336582 683336582 557842593 490845605 376244609 376244609 405675450 405675450 369362956 311154178 311154178 340951240 340951240 176554252 238197712 238197712 183588952 537266688 638007321 638007321 180620281 745353024 745353024 196166232 332704772 332704772 384297122 384297122 17190054 495190386 495190386 289542356 404920486 404920486 284349346 414224612 436274016 1065765655 1065765655 267391096 765243618 765243618 375940674 659708720 659708720 637982745 560128680 337673018 337673018 577511696 923536793 923536793 876097307 823142193 621021225 68553752 68553752 126995672 126995672 357622898 357622898 284347522 382846810 382846810 853567172 952107207 952107207 611337856 611337856 479041346 483578574 1032945499 1032945499 704514750 907936930 907936930 561388257 891541860 891541860 646193163 511044542 570433632 712108902 998421049 998421049 657015208 914620464 914620464 383608041 770767970 770767970 562106712 242364617 227676780 88212164 7455008 143655424 143655424 299567556 971251141 971251141 835278628 874426601 924586859 924586859 878074049 909123865 909123865 814010572 961453765 1036144642 1036144642 647632473 610587687 441450818 810177571 1024595338 1024595338 875600392 1023118221 1023118221 877277586 918568859 933504074 933504074 858599329 856229138 856229138 598287729 55050609 209756208 299019488 877176002 877176002 894076580 894076580 811602035 811602035 710465045 710465045 689809456 386376978 386376978 309360112 365852746 365852746 323149402 323149402 139703440 727118240 824230660 824230660 186208292 647948276 647948276 731671784 777118365 777118365 255938229 138502116 63079728 63079728 53597904 42670336 42670336 12991488 12991488 52953424 52953424 44041296 184495204 563312673 563312673 22807360 158335852 873412069 109052546 382730970 646587086 747320397 747320397 819519872 819519872 642880201 970089670 970089670 903349951 1036570637 1036570637 769913325 830307911 830307911 803817474 803817474 513673014 513673014 352329224 374415908 436408832 470536500 470536500 463075060 902075651 902075651 342803544 914407474 914407474 889781178 669028427 1038593668 1038593668 913384347 947945936 1000400581 1000400581 777833324 777833324 508041664 846594476 846594476 248650703 10830876 235448776 235448776 71303304 71303168 569228824 861933545 861933545 1061647496 1061647496 1027743816 1027743816 155189412 554769472 606650944 813938817 813938817 542639745 951990727 951990727 533386494 519095262 614910144 735236703 735236703 277533762 303073104 303073104 109740122 86568976 86568976 84430860 152593444 881870442 1007305226 1007305226 832636010 956301614 956301614 253379224 692627472 715460732 715460732 692248840 1067497122 1067497122 590226240 590226240 539297809 1012606307 1012606307 477258936 962304831 962304831 266759064 266759064 243853204 205801512 509533854 509533854 546640823 546640823 468138486 808063251 808063251 872160774 872160774 833297378 816526659 866321729 866321729 660082962 383391450 503318016 503318016 75828128 154470912 295185888 295185888 257985140 257985140 755801017 755801017 618729673 618729673 548616521 538338265 142979568 734562005 734562005 583084129 756075481 756075481 125914384 125914384 32975200 254020372 797065788 797065788 792299178 792299178 1044137352 1044137352 224955801 47330054 653735006 778956189 778956189 610308227 140659087 324141878 324141878 517749186 519711634 519711634 498654995 751333233 751333233 517474014 311947910 480213040 704811261 704811261 428480546 680068953 680068953 467221670 381169282 192505192 192505192 41943592 88418472 634724881 634724881 556805908 192482229 679600197 679600197 602530329 602530329 545867313 629708032 640889625 640889625 539165272 638538012 638538012 239119099 422666346 422666346 420590514 320476064 811623442 811623442 880887877 1023428775 1023428775 885262539 595665009 595665009 89260633 4983376 71659576 71659576 608641544 608641544 857850653 857850653 147522523 876981336 876981336 333513136 425823738 425823738 338448358 863109625 863109625 749257728 1008606349 1008606349 234954780 772732656 772732656 810366066 810366066 576393264 591189393 703280436 703280436 466514144 466514144 41908036 143634624 143634624 220926128 220926128 647884160 647884160 76568425 664087040 664087040 584808457 559014561 110733360 110733360 31331808 92625104 146900425 852519976 974787136 974787136 734891179 814543768 976041444 976041444 1024781909 1024781909 585901911 556318720 592773793 592773793 550031908 152765920 993021569 993021569 530827255 761722903 933099185 933099185 230862442 952242377 952242377 847093534 383914458 383914458 281477236 409644068 409644068 283600962 375325192 375325192 441505029 686309526 686309526 352505898 827384477 827384477 810860457 243533916 677625217 677625217 113455320 113455320 108909672 111449184 111449184 110374576 286638882 345644256 345644256 339932106 310948768 315095250 315095250 305381520 148234948 222677196 222677196 117752620 95456100 114345440 114345440 153218496 153218496 38349904 38349904 125845944 125845944 122785752 311942674 311942674 158912176 412714886 1036027138 1036027138 1051597775 1051597775 596230504 596230504 309100674 309100674 317628886 711003477 711003477 1056779854 1056779854 916694258 916694258 411115590 761596877 761596877 368455362 368455362 579622272 668484992 668484992 127291888 117922048 117922048 17221944 18925088 18925088 257969680 257969680 54420380 62294640 184572424 415245082 415245082 236458892 236458892 297492842 297492842 522907986 522907986 492205324 492205324 236119652 252866736 252866736 189851192 189851192 169494928 281315594 281315594 872753163 872753163 822057289 621801161 621801161 985212759 989110423 989110423 719856004 719856004 516299962 569937558 569937558 676408880 995698359 995698359 789916221 789916221 588081866 880303003 938854921 938854921 832622579 832622579 38241258 563397152 563397152 548984856 873043784 873043784 851637272 813518035 664449992 268714080 134267392 146082656 170050432 173150868 173150868 7393556 2361600 177742336 177742336 171493140 171493140 147449028 157456384 698306112 698306112 553423089 568583492 709886192 709886192 163503972 143233856 3835396 136233108 186619672 234250108 249680624 249680624 176242964 224644884 224644884 172010784 142678220 155325568 155325568 554614260 554614260 238631512 238631512 640890362 640890362 869337699 869337699 910466536 910466536 846070099 617647505 844648128 844648128 815681155 858308860 858308860 779882397 182545873 994428056 994428056 898707289 898707289 869461036 726638698 559837856 559837856 455735172 455735172 477902022 484128462 939302177 939302177 985855126 985855126 834104619 653993631 384521026 949219139 949219139 439853186 439853186 988359125 988359125 437584658 167895060 167895060 35997956 0 0 0 2097152 2097408 2097408 2492928 2492928 3588296 81140424 85297088 85297088 542709025 646455465 646455465 956036105 956036105 445100657 1051143248 1051143248 317446921 571736322 616390375 623228937 712878877 712878877 550086853 600533580 600533580 547829249 452379699 362871903 542286168 542286168 656343513 656343513 976785478 976785478 671137797 268451847 131072 135168 135168 99795264 99795264 26370536 99664416 330148480 330148480 764431207 764431207 390661594 940744987 940744987 288497188 523713342 523713342 885010245 885010245 477900672 655188021 655188021 198461400 177638172 227939460 227939460 179834324 241959112 501483426 501483426 488950062 506800522 506800522 499840697 593571536 593571536 557167522 918545481 918545481 875511051 665931472 893126240 893126240 638591233 722543157 755416115 755416115 343446848 427294958 548162000 617352393 766307856 800138109 912706659 912706659 939866369 939866369 935454733 698451333 1042227976 1042227976 268435482 405754959 688778277 688778277 808663304 808663304 925418258 925418258 680052042 612063153 914884098 914884098 848544833 882111051 882111051 385281882 253652607 363144983 533029988 873088154 873088154 549609623 943131444 943131444 809972957 750331725 215490945 597467216 597467216 634389225 634389225 362859982 286000328 517080626 554962494 596116593 978586156 978586156 926941371 879296530 879296530 785003333 812866711 1053195073 1053195073 832569699 896143675 896143675 870843891 996928386 996928386 859782963 851903606 198055424 181329108 168446144 275043712 318541846 318541846 505455940 505455940 104059416 112272216 112272216 78230336 312596672 312596672 304797010 304797010 255588156 664186974 664186974 422759997 44639568 615684498 1011537283 1011537283 890616639 969317615 969317615 822175809 822175809 592063842 541333723 282949320 460424982 460424982 576330784 576330784 707813904 707813904 544026800 544026800 141429892 634067265 634067265 549140289 713759912 713759912 710789965 710789965 671612213 671704125 671704125 255591980 606269236 606269236 591476113 566181408 566181408 164582496 632895264 632895264 69731297 38483344 554817552 588724785 886877831 886877831 249162830 520362692 520362692 441893522 386154548 295732160 404017172 404017172 438812492 438812492 334444146 334444146 439880742 439880742 424749374 393216938 393216938 147094336 147094336 145024964 10885440 78518592 78519624 78519624 14037632 875628960 875628960 892608520 892608520 669151962 669151962 153485332 909084969 909084969 585791504 633865449 1061160022 1061160022 913396572 623159635 882903417 882903417 979371286 979371286 875341147 807743956 282796656 380976968 380976968 876996747 876996747 687504098 161880420 215155817 1012481513 1012481513 822949030 683881518 743316621 743316621 700990849 661588345 661588345 759419181 759419181 545919989 527564668 317546482 992100868 992100868 524891527 521107002 521107002 470026254 344541664 711868245 711868245 218405636 734780561 734780561 547233345 547233345 585024150 585024150 553596810 553596810 98251497 31643648 224455552 224455552 151458304 643270712 653352568 653352568 233385448 1040924087 1040924087 914358363 914358363 544428443 636608710 636608710 273871780 877921992 953500811 953500811 696257764 696257764 293986368 557842593 557842593 721621296 721621296 376244609 405675450 548279566 872493080 872493080 1019921551 1019921551 915403806 440440028 238197712 238197712 183588952 537266688 638007321 638007321 673194240 673194240 671162373 196166232 332704772 591189634 591189634 384297122 297301184 495190386 495190386 303902308 563955762 563955762 544326113 544326113 707011412 1065765655 1065765655 229965034 765243618 765243618 155189284 659708720 659708720 637982745 710994101 710994101 1038115326 1038115326 923536793 923536793 876097307 823142193 621021225 127740688 758436853 758436853 188947604 188947604 167903444 211486109 586363857 586363857 779232904 779232904 618221981 611337856 611337856 875622363 1053078483 1053078483 1032945499 704514750 907936930 907936930 561388257 561388257 646193163 646193163 511044542 511044542 712108902 998421049 998421049 805366059 914620464 914620464 495001710 495001710 773849928 773849928 456274053 961737255 961737255 956436519 956436519 701368962 154406244 971251141 971251141 835278628 874426601 874426601 878074049 878074049 688000010 675840615 814010572 961453765 1036144642 1036144642 862427859 610587687 294315168 294315168 940233634 1012946952 1012946952 946264455 371197834 383720387 918568859 918568859 624436041 1051789484 1051789484 442065013 1035159662 1035159662 801972049 491630245 906167306 906167306 894076580 894076580 484896878 484896878 137358724 506695322 506695322 300133648 273877184 56717840 921545769 921545769 1021414928 1021414928 772109897 832079892 860119138 860119138 369590756 761725184 761725184 763661537 777118365 777118365 255938229 138502116 63079728 63079728 53597904 42214464 42214464 42459392 42459392 61319376 61319376 47544784 184495204 539029505 547930401 562808161 562808161 958401927 286330913 286330913 345576137 922756442 922756442 819519872 819519872 781572229 970089670 970089670 723117665 1036570637 1036570637 823532067 823532067 352321578 366807586 366807586 513673014 513673014 352329224 374415908 374415908 470536500 470536500 463075060 148489376 98735704 20627976 87607080 889781178 889781178 440322126 1038593668 1038593668 532720660 947945936 1000400581 1000400581 567492781 508041664 508041664 846594476 846594476 707265813 1032999633 1032999633 622368043 738583564 738583564 657468763 657468763 948265488 948265488 972241121 1027743816 1027743816 805441539 538054659 606650944 615407366 615407366 751404873 951990727 951990727 905692053 439431423 335130995 470978808 557973516 777520763 903382706 903382706 103960848 86568976 86568976 75571272 67182600 67301376 67301376 136876108 136876108 186307860 253379224 253379224 206277496 206277496 463606134 998309970 998309970 985793023 985793023 590226240 539297809 1012606307 1012606307 477258936 962304831 962304831 182728494 335758949 930420795 930420795 1029179055 1029179055 851604583 851604583 944283760 944283760 808063251 279395474 279395474 307181890 816526659 866321729 866321729 660082962 383391450 503318016 503318016 134808256 154470912 295185888 295185888 399137306 399137306 755801017 755801017 618729673 618729673 548616521 538338265 136112833 734562005 734562005 583084129 842818414 842818414 321227824 321227824 313844256 254020372 685016623 939864844 939864844 792299178 1044137352 1044137352 224955801 679767448 679767448 778956189 778956189 536947097 520209447 201328657 611234939 611234939 873131141 873131141 498654995 751333233 751333233 517474014 311947910 480213040 704811261 704811261 277497054 680068953 680068953 248262206 445974628 445974628 287485344 325672442 340077688 340077688 8652864 562039808 717049541 717049541 595658224 602530329 602530329 93402513 226492492 226492492 146980902 350277778 923491872 923491872 999296018 999296018 766210190 996065021 996065021 811623442 811623442 880887877 1023428775 1023428775 885262539 632660377 632660377 629484224 102924617 585474057 585474057 608641544 608641544 857850653 857850653 302853138 876981336 876981336 694470139 694470139 683959449 1067152525 1067152525 727657727 749257728 749257728 483131757 316408880 889591426 889591426 881329227 810366066 378441913 302699538 294583960 319610598 466514144 562900065 702147253 702147253 155197604 744217277 744217277 796652644 796652644 611834645 664087040 664087040 762433952 762433952 774748968 774748968 247506408 97500232 146900425 231205025 974787136 974787136 734891179 992219989 992219989 976041444 1024781909 1024781909 283485639 187205909 592773793 592773793 545259616 545259616 993021569 993021569 530827255 816664776 933099185 933099185 403313798 974670870 983391956 983391956 363670436 853549205 853549205 409644068 409644068 163601002 375325192 975973212 975973212 686309526 686309526 381866202 827384477 827384477 205369924 243533916 677625217 931387475 931387475 763486317 571789488 353425422 111449184 731458318 731458318 513935301 661386681 661386681 441842829 315095250 544454832 721462160 721462160 222677196 222677196 227885060 227885060 117474572 117474572 236776320 236776320 168034388 270535906 396903610 396903610 359265992 176561732 493224548 493224548 815961753 1036027138 1036027138 793532978 640994073 506373224 445806093 337641738 309100674 317628886 711003477 711003477 1056779854 1056779854 891600837 891600837 143553492 578015729 578015729 150526624 237172992 237172992 141709320 139013468 139013468 129638000 75489720 215323856 215323856 93495600 257969680 257969680 227746524 222556332 149946772 415245082 415245082 236458892 236458892 297492842 297492842 522907986 522907986 492205324 492205324 253269100 197383284 55591600 136398384 141108612 141108612 281315594 281315594 85872144 309249922 309249922 295049936 295049936 282214544 450864706 648359880 719856004 719856004 541590657 569937558 569937558 676408880 995698359 995698359 789916221 789916221 46949176 620171842 938854921 938854921 832622579 832622579 762322640 633266025 277797392 548984856 873043784 873043784 851637272 813518035 664449992 268714080 134267392 170042352 170050432 700502321 700502321 716610373 729840929 729840929 577912981 577912981 152794213 694342053 761885704 761885704 698306112 553423089 242254521 215039736 215039736 187880244 175847316 175847316 175847316 186619672 234250108 249680624 612885081 612885081 67251248 723106049 723106049 629523788 541188225 146982337 550402132 572657937 572657937 539049008 649379184 649379184 869337699 869337699 910466536 910466536 846070099 568199616 545293568 815681155 815681155 272894657 543656660 556235201 556235201 691352515 691352515 836276001 836276001 691810852 168647732 561218848 601849597 747633741 747633741 649328080 484128462 939302177 939302177 985855126 985855126 834104619 981599823 981599823 949219139 949219139 852482773 450308674 988359125 988359125 437584658 168159252 378822910 378822910 489842328 524704774 524704774 175422238 528691486 528691486 444403984 102837010 369669376 369669376 85297088 85297088 542709025 646455465 646455465 956036105 956036105 445100657 1051143248 1051143248 485737124 571736322 616390375 623228937 712878877 712878877 899974048 899974048 600533580 547829249 362871903 362871903 314757330 173116593 520897448 807927808 807927808 806520096 681243186 809595137 809595137 284948418 1071337652 1071337652 759754848 759754848 698443333 551797600 527090880 764431207 764431207 403837446 940744987 940744987 356835772 423919898 423919898 885010245 885010245 477900672 655188021 655188021 151307424 177638172 227939460 227939460 179834324 241959112 300491086 339738684 372432708 507510558 507510558 499840697 578654785 578654785 376062657 918545481 918545481 875511051 355643601 132417144 638591233 638591233 397083250 755416115 810688164 810688164 383033027 548162000 617352393 617352393 31788233 912706659 912706659 939866369 939866369 345324160 345324160 380691722 380691722 351809080 405754959 688778277 688778277 464382459 624460945 925418258 925418258 321008561 612063153 612063153 479860302 505581662 505581662 473618190 385281882 403966470 472122120 533029988 873088154 873088154 657398985 657398985 809972957 809972957 750331725 412374864 1017888904 1017888904 443473302 443473302 286000328 286000328 517080626 637798517 713437264 713437264 520465042 810647695 810647695 336169134 111991936 144976532 717559323 717559323 832569699 1013061193 1013061193 870843891 996928386 996928386 859782963 851903606 181329108 181329108 210689286 275043712 407134354 407134354 505455940 505455940 104059416 112272216 112272216 78230336 312596672 312596672 304797010 304797010 164287716 512514234 512514234 405155250 204001554 356882597 1011537283 1011537283 890616639 969317615 969317615 822175809 822175809 592063842 541333723 184978712 114874608 571272053 571272053 181425860 198354420 198354420 544026800 544026800 187046068 634067265 634067265 549140289 713759912 713759912 215098213 17830112 562301900 586687065 586687065 205347624 205347624 27999312 179565396 179565396 443021210 1027847115 1027847115 960749806 874574059 411734086 944265832 944265832 1026239653 1026239653 994857365 776466959 625188892 238473732 238473732 295732160 380768324 380768324 438812492 438812492 334444146 334444146 139011204 139011204 207931788 407705864 407705864 147094336 201580181 515540353 515540353 511914078 312552539 312552539 314626554 875628960 875628960 903897114 903897114 862028194 862028194 860267658 909084969 909084969 903644340 633865449 1061160022 1061160022 595036808 623159635 882903417 882903417 979371286 979371286 875341147 807743956 181369808 412399704 412399704 123173454 143537152 153814020 161880420 560927456 560927456 622540232 703822497 703822497 743316621 743316621 700990849 16102953 170336388 170336388 184954672 309602800 408224712 910164123 910164123 523112487 523112487 208417440 208417440 722579226 722579226 711868245 711868245 140514236 734780561 734780561 805570563 887400769 887400769 681945421 681945421 676414153 750874753 750874753 541202593 541202593 713829225 713829225 653352568 653352568 233385448 1040924087 1040924087 492544070 156427848 156427848 837948876 876925027 1012275855 1012275855 953500811 953500811 696257764 696257764 566942156 625025711 625025711 721621296 721621296 436732950 436732950 548279566 872493080 872493080 1019921551 1019921551 915403806 640853975 640853975 817489929 817489929 350947025 47076368 135411332 673194240 944320145 944320145 714901825 714901825 597737012 591189634 410057344 297301184 297301184 210830340 303902308 563955762 563955762 544326113 721420288 721420288 707011412 25184821 0 0 0 155189284 561138352 561138352 398501995 710994101 710994101 1038115326 1038115326 281026594 281026594 666108225 666108225 336812434 336812434 758436853 758436853 207402364 188947604 142108114 346440728 586363857 586363857 717464460 717464460 336651660 305106200 305106200 875622363 1053078483 1053078483 881500692 403316320 571607178 999544518 999544518 173028423 995600588 1069805823 1069805823 701670010 701670010 579912273 1063475540 1063475540 855640091 855640091 629306700 629306700 773849928 773849928 456274053 961737255 961737255 956436519 956436519 701368962 561450884 561450884 159646561 966927684 966927684 143467491 14944704 144704576 144704576 434258560 679871396 679871396 577145559 862427859 862427859 671865014 600275443 1048073656 1048073656 1012946952 1012946952 946264455 621939736 371197834 114824458 624436041 624436041 1051789484 1051789484 442065013 1035159662 1035159662 801972049 491630245 906167306 906167306 609823800 523986000 484896878 484896878 137358724 506695322 506695322 273877184 273877184 41843011 921545769 921545769 1021414928 1021414928 772109897 832079892 860119138 860119138 369590756 761725184 761725184 763661537 763661537 743986192 673968389 584754132 40568080 40568080 9315776 42214464 42214464 42459392 42459392 61319376 61319376 47544784 29397153 539029505 547930401 562808161 562808161 958401927 884099154 884099154 345576137 922756442 922756442 58200986 641789573 781572229 781572229 634002056 240443417 646320524 784493599 823532067 933548228 961788913 961788913 710816446 298394850 290639114 294561104 353540096 353540096 31248096 31248096 12244800 12244800 1233408 20627976 87607080 810674080 810674080 41270250 404201713 532720660 532720660 386474365 932759163 932759163 673354511 675780343 675780343 576315094 852195545 852195545 1032999633 1032999633 622368043 995538743 995538743 732757059 732757059 948265488 948265488 880490379 880490379 811782531 877155587 882579520 882579520 540218690 1018097537 1018097537 751404873 905692053 905692053 439431423 335130995 470978808 1004062455 1053343985 1053343985 903382706 663249562 306909266 12792000 100933840 100933840 973912246 973912246 1020001802 1020001802 923963858 923963858 81530568 764368864 764368864 463606134 998309970 998309970 985793023 985793023 405934854 1006796846 1053868511 1053868511 1012958287 847564939 847564939 414295874 555574920 930420795 930420795 1029179055 1029179055 851604583 851604583 944283760 944283760 588312807 588312807 411263607 307181890 645996760 645996760 520236171 726613173 726613173 345246804 583406288 985665538 985665538 155224735 1010980098 1010980098 592658068 689929674 689929674 490903625 352611606 354944298 354944298 212372514 143445060 695790148 1038108649 1038108649 842818414 567094497 557647264 313844256 596806857 685016623 939864844 939864844 802202218 985185381 1020528788 1020528788 679767448 679767448 657428514 407469076 520209447 520748842 520748842 611234939 611234939 873131141 873131141 371595546 371595546 312618880 87688008 42733368 354025996 354025996 295066770 277497054 301990096 301990096 281018562 445974628 445974628 287485344 325672442 340077688 622621201 622621201 562039808 717049541 717049541 198193580 198193580 626524256 626524256 606077000 606077000 554689896 143409229 923491872 923491872 999296018 999296018 766210190 996065021 996065021 567534672 805623906 805623906 625090968 625090968 252991801 632660377 632660377 629484224 102924617 585474057 585474057 574890121 612857669 612857669 378179605 915149324 1009780306 1009780306 694470139 694470139 683959449 1067152525 1067152525 727657727 470711658 470711658 768968957 768968957 889591426 889591426 881329227 807194345 185830452 360950416 360950416 190217310 186345077 562900065 702147253 702147253 155197604 744217277 744217277 796652644 796652644 611834645 570575865 411490374 884019526 884019526 774748968 774748968 377085216 377085216 98280680 92530752 8193152 8193152 632621648 992219989 992219989 255985072 255985072 468752592 468752592 414897990 567869860 567869860 545259616 545259616 319834532 495933123 495933123 816664776 879754507 879754507 403313798 974670870 983391956 983391956 363670436 853549205 853549205 336270736 397155376 397155376 74287002 975973212 975973212 549656440 549656440 381866202 959088272 997381047 1041899639 1041899639 617321915 931387475 931387475 763486317 621838337 536887849 286523554 731458318 731458318 513935301 661386681 702993986 702993986 299326320 544454832 721462160 721462160 206848672 206848672 227885060 227885060 200583156 211886412 236776320 236776320 168034388 270535906 396903610 396903610 359265992 114479648 493224548 493224548 815961753 815961753 793532978 796967037 796967037 999136304 999136304 630094897 386263098 491626810 491626810 351612030 168863754 34846352 54725728 431310086 431310086 144675284 277894660 453589330 453589330 588324469 632184371 632184371 571768907 830820688 830820688 362824472 362824472 452985074 452985074 1055524000 1055524000 860378572 149946772 212935000 449129162 449129162 221605892 221605892 95050508 229208616 229208616 369709474 369709474 354677786 354677786 63681776 136398384 146756548 169428116 169428116 68898160 68898160 137944836 137944836 268480000 404377616 404377616 416973972 648359880 648359880 615514457 665456109 665456109 722233541 850211202 850211202 438704294 100625772 364979246 849137634 849137634 835012848 311882719 458219648 945224366 945224366 633266025 457125740 457125740 95162958 198954644 198954644 92323944 159475012 159475012 160716064 170042352 170042352 700502321 700502321 716610373 729840929 729840929 577912981 577912981 230714580 694342053 761885704 761885704 681619808 668835721 668835721 670996076 670996076 187880244 175847316 175847316 175847316 45786308 37776528 47642832 612885081 612885081 201526324 723106049 723106049 629523788 640272464 671088645 705209409 705209409 578936913 539049008 649379184 649379184 556429096 31983072 31983072 557355425 568199616 568199616 7511168 198657985 546088693 546088693 957890880 957890880 939576932 939576932 691352515 836276001 836276001 691810852 141974342 561218848 601849597 747633741 747633741 649328080 204133644 499671328 499671328 451184797 808865099 808865099 981599823 981599823 702692075 852482773 852482773 945692295 945692295 437925067 1062470106 1062470106 756724026 378822910 489842328 524704774 524704774 175422238 528691486 528691486 444403984 345440266 369669376 369669376 72277128 279509442 279509442 109960424 472216366 472216366 598608484 598608484 579244342 579244342 485737124 485737124 210770842 122323024 203526792 209248712 899974048 899974048 197845480 237065444 809667828 1002887251 1002887251 693745057 693745057 807927808 979419192 979419192 681243186 809595137 809595137 284948418 1071337652 1071337652 759754848 759754848 700206153 700206153 527090880 453170576 403837446 403837446 738984193 738984193 642515125 642515125 444138152 563184286 755192097 755192097 941009291 941009291 473318245 871502835 984618279 984618279 812123523 680527698 956961831 956961831 873010474 518184738 507510558 485453404 294199488 294199488 83597152 83597152 81252544 77889152 77889152 72012144 387460616 387460616 298468864 890936168 890936168 810688164 383033027 914673044 914673044 615009368 615009368 342958986 342958986 302136162 327202141 632427419 743126157 743126157 716173104 351809080 351809080 270258712 260190336 996742712 996742712 659153536 659153536 820729249 854590419 854590419 822137105 842679315 918211665 918211665 402749966 505363998 505363998 472122120 445497383 617290809 657398985 657398985 2359296 2359296 412374864 412374864 1017888904 1017888904 443473302 607526076 607526076 600444108 875037298 1002707124 1002707124 869667034 797063403 993649076 993649076 858530055 347151710 164751832 717559323 717559323 451950906 1013061193 1013061193 467152164 467152164 282746610 61640240 61640240 60690658 433079368 433079368 440412296 440412296 444181470 444181470 249867654 145695510 251084124 406026716 406026716 449226066 449226066 79978704 79978704 43910282 246090136 405155250 405155250 204001554 204621714 294147760 362855138 410738780 410738780 317590012 386105662 491125448 491125448 463644676 463644676 196907104 571272053 571272053 181425860 198354420 541020640 541020640 187046068 187046068 155585332 135269408 561848845 627584500 627584500 782316037 782316037 775955165 586687065 586687065 596028749 808459862 863544617 889315371 889315371 855717421 1027847115 1027847115 960749806 874574059 411734086 944265832 944265832 1026239653 1026239653 994857365 963448207 625188892 200696904 60969632 470208864 470208864 167955114 134254596 134254596 61481056 61481056 341577354 490349570 527264778 527264778 476419484 69930126 201580181 515540353 515540353 511914078 573467416 577429745 659816905 659816905 355648129 903897114 903897114 862028194 862028194 860267658 860267658 903644340 903644340 390767779 277927454 75568436 411623204 453918834 453918834 324274978 405573090 535586222 535586222 323066950 169938434 412399704 412399704 123173454 97727208 288056801 288056801 560927456 560927456 622540232 703822497 703822497 950133063 950133063 142592225 599863985 599863985 597823732 597823732 184954672 408224712 910164123 910164123 523112487 523112487 208417440 304114176 722579226 722579226 667930219 610031008 414587718 179166686 179166686 805570563 887400769 887400769 681945421 681945421 676414153 750874753 750874753 541202593 541202593 713829225 713829225 594710813 552361584 106029720 218058524 492544070 492544070 537388637 537388637 837948876 876925027 1012275855 1025325647 1025325647 759378093 469855400 269368933 566942156 625025711 625025711 606082786 606082786 464260470 464260470 222563514 269095936 335671298 335671298 573625231 573625231 640853975 640853975 915624757 915624757 350947025 823554178 823554178 549862928 944320145 944320145 714901825 714901825 597737012 410057344 410057344 407883732 407883732 210830340 571288593 571288593 97077257 62963952 721420288 822166019 824576288 824576288 492171534 655411954 655411954 183945668 183945668 816883911 816883911 1044711616 1044711616 709044379 285487110 281026594 281026594 88215720 104248864 336812434 336812434 408835820 534016270 534016270 150795458 142108114 346440728 408782874 408782874 474811598 474811598 336651660 305106200 305106200 519046110 519046110 412571768 839025825 839025825 566400693 999544518 999544518 962992551 995600588 1069805823 1069805823 964834624 701670010 579912273 1063475540 1063475540 529783148 604688732 629306700 629306700 545428345 54133605 154145312 154145312 136450308 135796004 153754722 320485120 561450884 944338499 944338499 966927684 968215138 968215138 699694021 817037860 817037860 964088512 964088512 688050213 681182785 553697313 671865014 724474935 724474935 1048073656 1048073656 957534759 520542860 621939736 621939736 86905497 54530352 51381760 67117056 67182600 203432212 203432212 100737048 50408876 21823860 165815724 165815724 169995280 237915344 237915344 114244824 95203376 18055552 104321120 120991544 120991544 106242704 316891312 316891312 388421946 579207412 579207412 377658094 460539944 460539944 389173700 239569736 151192396 100847640 550510937 743986192 743986192 673968389 584754132 17334560 17334560 15520832 37839840 37839840 38035584 38035584 65630240 65630240 17016304 135557124 135557124 544058336 563035233 563035233 553985185 884099154 884099154 310678347 559423744 561588129 561588129 279004465 72401544 634002056 634002056 240443417 805872570 805872570 784493599 933548228 961788913 961788913 710816446 331825266 290639114 294561104 332108040 332108040 104111386 384589146 503072686 503072686 888458218 888458218 625398387 304221368 667557222 667557222 755703812 755703812 254853948 386474365 932759163 932759163 701116550 1003233507 1003233507 576315094 961731250 995747511 995747511 911545587 803448007 995538743 1063046847 1063046847 732757059 794784969 794784969 369368146 719227614 1008916761 1008916761 882579520 882579520 729695444 1018097537 1018097537 1021571535 1021571535 985188183 985188183 366614250 366614250 1004062455 1053343985 1053343985 991543326 1042022417 1042022417 970204259 970204259 912146007 973912246 973912246 1020001802 1020001802 923963858 923963858 277794380 764368864 764368864 606856607 299896938 299896938 798175799 798175799 694363197 1006796846 1053868511 1053868511 1012958287 847564939 847564939 414295874 555574920 555574920 617438973 673895685 986396820 986396820 717810133 717810133 858320492 858320492 588312807 457800774 480527778 881587402 885234899 885234899 726613173 726613173 890526209 890526209 985665538 985665538 606121322 1010980098 1010980098 664361597 674104356 674104356 490903625 352611606 354944298 354944298 212372514 143445060 695790148 1038108649 1038108649 567094497 567094497 557647264 92687248 596806857 596806857 250104118 324072508 802202218 831605285 1020528788 1020528788 663111225 340774033 833279363 833279363 901716354 901716354 591825328 574253249 248394278 707436776 707436776 633429332 564676713 564676713 524620066 524620066 324592182 684546103 684546103 160130280 579453045 579453045 434503737 1055267295 1055267295 994053589 856293518 69222008 622621201 622621201 702131552 702131552 748406448 748406448 793846461 793846461 626524256 606077000 606077000 605470794 605470794 348183051 823391298 916234763 916234763 439316113 199634112 187381044 27808160 730878037 730878037 625090968 688060564 688060564 580132992 580132992 38613440 646176840 646176840 545331217 78739545 612857669 612857669 378179605 915149324 1009780306 1009780306 342887948 398534880 398534880 482894402 586034888 586034888 284848498 969268488 969268488 768968957 572375160 572375160 807194345 807194345 247899741 360950416 360950416 330376050 428754692 428754692 59068512 656998552 656998552 255858081 339406598 339406598 201799692 135580628 411490374 411490374 884019526 884019526 339427600 339427600 377085216 377085216 882658811 882658811 611631586 611631586 972611110 972611110 843317376 164891531 151571496 999298388 999298388 784338985 784338985 666647864 801380112 801380112 752289388 590298417 322961572 892607726 892607726 159816682 159816682 556158190 1018092879 1018092879 512318727 460084466 357495536 336270736 397155376 397155376 74287002 303055128 540547673 540547673 114413648 811104547 959088272 997381047 1041899639 1041899639 808663105 808663105 1059242026 1059242026 865157720 865157720 286523554 289931682 1032923764 1032923764 286862210 702993986 702993986 348649674 348649674 335702208 232359584 231490984 231490984 143756900 200583156 200583156 211886412 215576288 215576288 92367144 33843632 32243840 348151224 360614698 360614698 251183800 345950490 521324248 521324248 644896118 796967037 796967037 999136304 999136304 931930325 931930325 491626810 491626810 351612030 345280574 345280574 194962368 433221794 433221794 166142308 277894660 453589330 474337830 588324469 632184371 632184371 571768907 830820688 830820688 362824472 362824472 452985074 452985074 1055524000 1055524000 860378572 805311595 595727974 449129162 449129162 221605892 309379986 309379986 360932330 360932330 369709474 369709474 354677786 354677786 223426600 244790292 244790292 169428116 199587596 199587596 104001896 137944836 137944836 116087112 404377616 404377616 416973972 416973972 189116544 566756769 665456109 665456109 722233541 850211202 850211202 438704294 190335682 364979246 849137634 849137634 835012848 312211026 622901115 945224366 945224366 542429358 457125740 617578570 914381248 914381248 905102912 860041395 590936800 278687780 160716064 162555124 162555124 198102304 198102304 590483028 707295297 707295297 229446068 229446068 230714580 230714580 619745673 681619808 681619808 668835721 668835721 670996076 670996076 235854876 247920792 247920792 247704796 105571484 233244768 233244768 159652168 201526324 201526324 188933160 245999100 245999100 640272464 671088645 705209409 705209409 578936913 13489217 47114592 113987704 113987704 88855048 55813920 43058632 8423936 8393856 7511168 780206624 780206624 737968577 957890880 996163622 996163622 939576932 957089667 957089667 721090835 281336256 281336256 455209410 455209410 345381450 345381450 436180222 436180222 474904848 474904848 467950514 467950514 807536912 839260179 839260179 867461617 867461617 843967635 945692295 945692295 437925067 1062470106 1062470106 756724026 325808210 325808210 100208768 126451848 126538520 126538520 103710992 103710992 345440266 345440266 75014464 281889864 281889864 924152763 924152763 847040403 825398236 598608484 598608484 579244342 579244342 270533264 673333636 673333636 613675593 793777169 801171129 801171129 765510595 788667651 788667651 809667828 1002887251 1002887251 704845028 704845028 983106642 983106642 979419192 522240407 503317580 364951774 313444446 407346644 555092941 555092941 222430540 700206153 700206153 92146792 676069917 676069917 896441123 896441123 738984193 642515125 642515125 444138152 563184286 755192097 755192097 941009291 941009291 473318245 871502835 984618279 984618279 812123523 680527698 956961831 956961831 873010474 518184738 401943546 95274642 294199488 294199488 83597152 83597152 81252544 77889152 77889152 72012144 387460616 906233883 929312617 929312617 890936168 547328745 237291804 914673044 914673044 615009368 615009368 342958986 342958986 204513750 327202141 1019486415 1019486415 743126157 716173104 122465609 119214400 235461464 235461464 996742712 996742712 659153536 659153536 820729249 854590419 880858292 880858292 842679315 918211665 918211665 505803866 505803866 765907779 831166184 860886015 860886015 702334856 298918880 250951682 370547226 370547226 209972226 582285586 582285586 312587571 607526076 607526076 600444108 875037298 1002707124 1002707124 869667034 797063403 993649076 993649076 858530055 347151710 164751832 302881446 302881446 0 178782402 321526870 321526870 282746610 282746610 61640240 61640240 277906368 433079368 433079368 440412296 440412296 444181470 444181470 249867654 173463700 251084124 406026716 406026716 449226066 449226066 73873800 271535884 485287828 508203344 672674965 672674965 503317928 678570545 678570545 511817138 432465986 432465986 910713287 910713287 491125448 860232857 860232857 463644676 196907104 196907104 44792928 44792928 59417440 541020640 541020640 57437537 548225641 548225641 125120980 638329777 638329777 627584500 782316037 782316037 775955165 594092833 234176820 606769785 808459862 863544617 889315371 889315371 855717421 855717421 367530406 738275429 738275429 239384576 239384576 725206635 725206635 421188288 963448207 963448207 112687930 316106208 316106208 470208864 470208864 509325466 509325466 407663898 281267794 281267794 341577354 490349570 527264778 527264778 476419484 174134528 137061200 207435788 207435788 203566940 573467416 577429745 659816905 659816905 355648129 610457602 610457602 289703937 88841514 522321825 899904867 899904867 747361869 747361869 661320857 534238132 411623204 453918834 453918834 324274978 405573090 535586222 535586222 323066950 608350288 608350288 1027097070 1027097070 359515757 288056801 423938214 423938214 272264296 544607947 544607947 364114533 950133063 950133063 564797088 599863985 599863985 597823732 597823732 182852052 327173378 327173378 271089778 271089778 52478256 45614928 304114176 304114176 273016962 273016962 414587718 414587718 220322022 518450132 518450132 386349496 386349496 300966658 327443850 392944092 533848830 533848830 371933160 77082304 98439368 208576288 208576288 190864652 186646836 218058524 218058524 241896572 537388637 537388637 263584028 785976108 785976108 1025325647 1025325647 759378093 269368933 269368933 688726507 688726507 415246514 606082786 606082786 464260470 464260470 1042318486 1042318486 1017699650 1017699650 941934855 573625231 288528066 499732652 915624757 915624757 696766085 823554178 823554178 187953972 465888068 465888068 279839508 445330518 445330518 317654228 317654228 436834304 436834304 464035968 571288593 571288593 97077257 62963952 62963920 822166019 824576288 833546951 1025457711 1025457711 825243308 533212780 533212780 816883911 816883911 1044711616 1044711616 709044379 134232149 21364832 27427712 27427712 56984712 294486722 687377991 1043171175 1043171175 534016270 311457258 302384418 504926788 504926788 170794260 170794260 209881876 209881876 136620296 145211920 264309908 264309908 163907297 839025825 839025825 566400693 593358513 593358513 962992551 962992551 723606240 964834624 964834624 585640706 585640706 274304737 528774186 529783148 604688732 604688732 456888851 70918206 541724098 541724098 913021801 913021801 755625309 814212358 814212358 403425990 944338499 944338499 294642884 968215138 968215138 699694021 817037860 817037860 964088512 964088512 857227283 857227283 554947911 717251158 996299782 996299782 526780177 755500077 755500077 520542860 621580455 861405904 861405904 587991248 587991248 379920500 529729222 529729222 501293550 501293550 424215880 60820816 107796856 242353184 242353184 127665020 96782992 104480936 104480936 24921120 60231760 122724360 122800376 122800376 316891312 827928075 881655867 1057298976 1057298976 377658094 460539944 460539944 456491136 456491136 216478620 216478620 100847640 44256160 64486128 175141232 175141232 334676960 334676960 308336592 306309072 330653814 444064710 444064710 175616546 407090864 461557878 461557878 819423845 819423845 712030528 563035233 553985185 375689880 375689880 339889032 559423744 561588129 561588129 279004465 141641332 1041870062 1041870062 860668950 860668950 805872570 823697173 823697173 656565765 237626652 800833481 800833481 238571660 118563160 118019778 118019778 104111386 384589146 503072686 756322323 888458218 888458218 625398387 409073714 991394054 991394054 755703812 824544902 824544902 803211722 492047022 621040978 823144659 1003233507 1003233507 408471174 961731250 995747511 995747511 977114360 977114360 758525956 1063046847 1063046847 670477924 794784969 822396963 964083939 968020839 1008916761 1008916761 134747139 729695444 729695444 955285877 955285877 1021571535 1021571535 1008865551 1008865551 366614250 366614250 121655818 814268532 822666766 991543326 1042022417 1042022417 970204259 970204259 912146007 827173995 827173995 579396673 579396673 512939394 512939394 277794380 163798796 606856607 606856607 299896938 299896938 798175799 798175799 694363197 608706759 361890723 207978784 249851008 249851008 172328356 213462808 213462808 124805572 238348064 238348064 986396820 986396820 717810133 717810133 858320492 858320492 457800774 457800774 480527778 881587402 885234899 1015852262 1038270022 1038270022 979393683 979393683 597302384 606121322 606121322 546632803 664361597 664361597 180178451 515520519 515520519 1017455694 1017455694 698751087 382122045 860930197 860930197 810024996 810024996 346818966 508307440 508307440 279432584 92687248 84070952 84070952 773245490 773245490 1024145970 1024145970 288768740 890372954 890372954 833279363 833279363 1024622579 1024622579 591825328 574253249 721522625 732041589 804189494 804189494 564676713 564676713 524620066 524620066 324592182 684546103 684546103 160130280 579453045 579453045 434503737 1055267295 1055267295 994053589 856293518 445330518 424345840 126668016 702131552 702131552 748406448 748406448 793846461 793846461 593098048 157545440 95019048 614333577 614333577 348183051 315089488 315089488 721208597 721208597 839067885 839067885 160395729 730878037 730878037 597807360 688060564 688060564 581144320 581144320 542195744 646176840 646176840 545331217 537884953 544785046 544785046 53527344 593019814 593019814 813777032 885121227 885121227 54528771 920850447 920850447 764166004 1017353859 1017353859 969268488 451861859 599432625 686295509 686295509 596957857 923083936 923083936 660234761 433614047 888153937 888153937 857555907 857555907 731984156 399508218 738480953 919391451 919391451 953223836 953223836 653053401 176391305 752307930 964097712 964097712 233679312 113931944 882658811 937034803 937034803 611631586 972611110 990383651 990383651 164891531 151571496 999298388 999298388 784338985 784338985 666647864 801380112 801380112 752289388 590298417 465178422 892607726 892607726 344245008 677960836 677960836 1018092879 1018092879 512318727 460084466 314839568 314839568 46910912 33580112 33580112 6610688 540547673 851612320 851612320 844519491 815425027 994530790 994530790 849060628 808663105 808663105 1059242026 1059242026 865157720 865157720 398518352 553683882 1032923764 1032923764 243456089 457621514 457621514 348649674 656539784 656539784 547391992 248286528 231490984 104703760 104703760 76374016 77425224 77425224 92367144 130885842 325398266 384115898 384115898 363073112 360614698 251183800 355750999 899062177 899062177 1026297167 1026297167 604657503 489362724 489362724 931930325 931930325 422903976 422903976 264873438 345280574 345280574 218319916 433221794 433221794 166142308 274911476 441764502 474337830 520351806 520351806 319851016 319851016 76829032 76829032 75681864 34738704 34738704 194770548 546923058 546923058 805311595 805311595 595727974 201326604 467998700 467998700 309379986 309379986 360932330 360932330 42844974 168684564 168684564 223426600 788028145 788028145 543320388 785999189 800273557 800273557 504493043 120779080 96094600 747203888 988165774 988165774 278087300 189116544 189116544 156215328 156236964 193606790 283709938 283709938 282011938 182939282 190335682 278743586 321678146 588270505 588270505 402891216 622901115 622901115 542429358 542429358 346690612 617578570 914381248 914381248 905102912 860041395 590936800 278687780 137622276 25379744 137925856 190007568 190007568 35959476 0 33687124 177737744 177737744 780341860 780341860 162167028 162167028 238451608 238451608 151655460 235687936 235854876 235854876 247920792 247920792 247704796 206571680 233244768 233244768 159652168 117649464 188933160 188933160 137104513 137104513 55364053 48022576 9178657 562826337 562826337 75761697 50339680 113987704 253686652 253686652 214531313 561380813 561380813 552114121 106031321 780206624 780206624 982363740 982363740 996163622 996163622 860390544 957089667 957089667 827097779 827097779 705118706 705118706 455209410 562184408 605586032 605586032 436180222 414323526 435575714 467950514 547030021 827397106 839260179 839260179 867461617 867461617 855729170 855729170 554222625 321160563 352673216 352673216 353521856 353521856 61916016 100208768 126451848 126538520 126538520 346607786 369888282 369888282 329517864 8437824 281889864 281889864 924152763 924152763 847040403 825398236 307545810 944260160 944260160 574464799 476236607 673333636 673333636 613675593 793777169 801171129 801171129 765510595 788667651 788667651 689252901 689252901 694167942 704845028 704845028 983106642 983106642 1000027767 1000027767 804268877 804268877 579090620 738535437 738535437 606340104 152166948 152166948 151545344 52428836 676069917 676069917 896441123 896441123 257051026 256531648 265585988 412721956 412721956 396576576 379410532 562072680 562072680 1011876872 1011876872 1041045127 1041185823 1041185823 640039488 640039488 294317124 294317124 252947984 488312998 488312998 413309040 413309040 392266786 336614144 343319178 345444608 345444608 45307984 287447353 906233883 929312617 929312617 1020002304 1020002304 899391053 899391053 606603530 1021222407 1021222407 805205554 1013311879 1013311879 922918448 1019486415 1019486415 645972536 645972536 563406424 71041457 154383664 171491588 171491588 159581056 313869654 313869654 406326545 863672929 920575059 971605171 971605171 774162717 542874262 505803866 970952004 970952004 864440360 860886015 860886015 702334856 298918880 250951682 370547226 370547226 209972226 582285586 582285586 312587571 160050362 85748458 519648119 519648119 769137729 769137729 490808456 490808456 940328325 960816275 960816275 104979378 606718645 775925949 775925949 20786324 698960564 698960564 599552113 582083409 379801601 379801601 579644962 579644962 1002524249 1002524249 982550022 982550022 144347152 177784404 239475840 239475840 235406364 138245184 141348228 211464016 211464016 73873800 271535884 485287828 508203344 672674965 672674965 503317928 678570545 678570545 511817138 432465986 432465986 910713287 910713287 507649196 860232857 860232857 440249152 179764724 54618756 10721636 137621520 137621520 37254416 34079760 735870016 735870016 669084625 669084625 638329777 638329777 188232460 325588378 325588378 594092833 594092833 376710970 606769785 824923474 824923474 573878626 622931579 622931579 537408402 403301382 436282436 436282436 417585164 417585164 406935560 323883058 323883058 221274520 138671148 329956090 329956090 316106208 269817916 1048717811 1048717811 509325466 688555905 688555905 466725272 820211062 820211062 804182237 1065653594 1065653594 780469056 738891152 738891152 915024395 915024395 585691664 585691664 113224691 665974816 665974816 599384418 599384418 99723904 122336258 522321825 899904867 899904867 747361869 747361869 751747785 751747785 972266059 972266059 833353059 682115208 682115208 581461432 554248368 684535132 684535132 608350288 1027097070 1027097070 822531873 162331851 423938214 423938214 959360516 959360516 946341255 946341255 543161985 543161985 564797088 564797088 168086976 168086976 580772449 580772449 580201041 687466437 879781846 879781846 507069810 137929780 412184500 1014796876 1014796876 820054318 820054318 419619018 272814098 518450132 518450132 386349496 386349496 300966658 327443850 392944092 533848830 533848830 371933160 261153156 98439368 208576288 208576288 190864652 186646836 54567060 242531192 242531192 573253526 726672142 726672142 434774762 434774762 502803694 707531057 858993284 858993284 138613413 688726507 688726507 427769864 415246514 371459089 241176929 102127038 1042318486 1042318486 1017699650 1017699650 941934855 537166086 74670080 74670080 726372976 726372976 696766085 692501061 42123797 4268160 11542720 11542720 7414656 5507712 147051392 147051392 29475552 436834304 436834304 464035968 468313590 873465416 873465416 547381507 539551521 1012154884 1012154884 833546951 1025457711 1025457711 825243308 533212780 533212780 427517332 935912491 935912491 499449913 836117029 836117029 338074122 338074122 643105457 643105457 294486722 759847805 1043171175 1043171175 380423514 311457258 302384418 504926788 504926788 277538706 446982618 446982618 318472404 72877704 73937096 79889800 79889800 72466984 4722344 560768 33590784 35178000 35178000 41943120 723606240 723606240 548098679 548098679 585640706 585640706 732464434 732464434 625886856 625886856 176464037 468230550 579344692 730728757 730728757 913021801 913021801 1009331327 1009331327 870816817 601973831 867721350 867721350 682993433 528786799 528786799 417124288 1012211374 1012211374 723534710 723534710 857227283 857227283 554947911 717251158 996299782 996299782 415106688 415106688 287835426 462963366 462963366 861405904 861405904 587991248 587991248 379920500 529729222 529729222 501293550 501293550 424215880 193221164 230702124 242950176 242950176 221367168 221367168 104480936 104480936 24921120 24921120 122724360 122800376 122800376 284741265 827928075 881655867 1057298976 1057298976 545554136 727683596 727683596 567431240 456491136 216478620 216478620 702346825 702346825 702037025 707228964 707228964 334676960 334676960 308336592 1006351189 1006351189 1000929910 1000929910 175616546 407090864 461557878 461557878 819423845 819423845 712030528 183912128 402797063 375689880 375689880 339889032 551141632 553199553 553199553 149507925 141641332 1041870062 1041870062 860668950 860668950 470288388 823697173 823697173 656565765 237626652 903205033 903205033 914407515 914407515 873779907 630259523 302304960 1018610306 1018610306 756322323 1070049888 1070049888 409073714 409073714 991394054 991394054 337300778 1065371708 1065371708 1072227082 1072227082 772550456 823144659 823144659 594338213 408471174 408471174 439354134 571853210 977114360 977114360 870976630 719566944 719566944 365012111 607273941 822396963 964083939 968020839 968020839 838992150 1041417234 1041417234 348046152 1029208970 1029208970 599937968 813826380 1008865551 1008865551 324800178 328094451 855687219 855687219 822641680 312026650 318065688 318065688 540341672 611443593 710700873 714080853 714080853 248017616 248017616 25092000 25092000 10171968 227226128 251867196 251867196 71377032 348262528 348262528 221397474 221403244 605894976 605894976 586477773 701139121 701139121 346818715 346818715 974422158 974422158 721345567 721345567 1013803278 1013803278 919204358 919204358 852040388 852040388 402815052 35725584 132859984 132859984 596588604 1015852262 1038270022 1038270022 979393683 979393683 304162400 346629450 674571904 674571904 536869284 536869284 180178451 515520519 515520519 1017455694 1017455694 698751087 382122045 860930197 860930197 738365954 738365954 346818966 537951017 537951017 279432584 24003632 84070952 84070952 773245490 773245490 1024145970 1024145970 596676608 890372954 890372954 605812233 129975360 1024622579 1024622579 66882692 370618790 721522625 732041589 804189494 804189494 400863022 197148312 358432792 404122476 404122476 144874020 230970056 338764624 338764624 154394646 143531076 143968836 248552544 248552544 445330518 445330518 424345840 78669744 266338960 266338960 62612112 744690624 744690624 116457880 106996456 106996456 34214928 614333577 614333577 632553953 632553953 570240993 721208597 721208597 839067885 839067885 447996730 675547121 675547121 194863180 574303985 574303985 581144320 581144320 542195744 102779224 82084368 537884953 537884953 544785046 544785046 53527344 593019814 657902624 813777032 885121227 885121227 325455884 920850447 920850447 764166004 1017353859 1017353859 191798309 293605753 599432625 686295509 686295509 559944049 923083936 923083936 660234761 433614047 888153937 888153937 857555907 857555907 731984156 399508218 738480953 919391451 919391451 953223836 953223836 653053401 176391305 752307930 964097712 964097712 336775866 343933034 551027344 937034803 937034803 445137964 445137964 990383651 990383651 202639884 202639884 2572 276857856 330909274 330909274 140896644 140896644 485198397 759302380 860297289 860297289 860402004 860402004 754999210 754999210 677960836 164135265 0 0 0 15529168 107246930 340563226 340563226 78588994 80253122 369344858 851612320 851612320 844519491 815425027 815425027 849060628 849060628 312489001 923481147 923481147 807100561 809599530 809599530 617971832 553683882 880069515 991059741 991059741 811476346 617870025 371265569 932365040 932365040 619349584 408430958 408430958 387721664 470345040 470345040 236563468 453297722 453297722 312814650 325398266 384115898 386999402 386999402 354178512 491425008 491481744 899062177 899062177 1026297167 1026297167 604657503 952315456 1046285223 1046285223 901917762 672434212 554039968 610678016 610678016 608363780 893839657 893839657 354541734 788607467 788607467 230686956 230686956 732170613 732170613 687811907 624377497 809701888 809701888 348837088 831052692 831052692 673187858 546923058 546923058 312030293 51580976 201326604 413199242 467998700 467998700 157757650 100276200 86380224 286281770 286281770 19261728 285582882 285582882 788028145 788028145 777234008 785999189 800273557 800273557 504493043 255901884 73011944 747203888 988165774 988165774 285743584 422534468 429593824 433865506 468270928 468270928 156192836 156192836 8549540 17041408 17041408 44305220 163595396 409115072 409115072 483353988 511778910 511778910 203632908 346690612 346690612 327364722 277647764 305347090 511900312 511900312 100768296 77854276 173774256 173774256 23754244 190007568 190007568 572069616 710470357 710470357 177737744 603561400 780341860 780341860 162167028 162167028 263408120 263408120 183056696 231367072 231367072 218635432 218635432 184828964 91226512 206571680 206571680 108149720 108149720 117649464 117649464 74065328 137104513 792273496 792273496 48022576 9178657 562826337 562826337 90189840 100794832 100794832 253686652 614279729 614279729 561380813 589816152 742504148 742504148 128263124 259369140 982363740 982363740 540819189 540819189 303578448 452987794 452987794 827097779 827097779 705118706 705118706 167817008 562184408 605586032 605586032 205629216 467071740 467071740 425272755 547030021 827397106 827397106 162079840 165939428 165939428 855729170 855729170 554222625 339772610 917797766 917797766 743205606 353521856 463990548 463990548 455513342 424343920 365775104 346607786 369888282 369888282 369724530 111937024 111937024 46346448 94089328 94089328 81524424 67666952 857293802 952450769 952450769 574464799 476236607 439437152 492755490 492755490 340721592 266452616 353549522 353549522 100276200 298975272 336505892 412440864 412440864 155191362 323230896 323230896 437396577 1000027767 1000027767 804268877 804268877 847707570 847707570 738535437 606340104 220200972 565469049 565469049 213958860 213958860 457199904 761398803 761398803 471888904 596267041 596267041 474521776 528179993 680575557 1035368833 1035368833 701905486 1011876872 1011876872 1041045127 1041185823 1058373667 1058373667 759309742 759309742 294317124 252947984 488312998 488312998 688802985 688802985 543428730 881330432 881330432 345444608 345444608 45307984 62249056 890653186 890653186 823527458 1020002304 1020002304 899391053 899391053 420865134 1021222407 1021222407 805205554 1013311879 1013311879 922918448 922918448 81012464 81012464 563406424 563406424 1044383766 1044383766 571683639 571683639 540751536 540751536 698800485 698800485 863672929 920575059 971605171 971605171 542874262 542874262 374941338 970952004 970952004 864440360 1418377 166859748 1037436388 1037436388 210043204 471859470 876511314 983490135 1000075333 1000075333 696703077 433326822 571078190 571078190 42734116 220079868 220079868 490808456 490808456 966894130 966894130 960816275 104979378 606718645 775925949 775925949 20786324 698960564 698960564 599552113 582083409 379801601 379801601 579644962 579644962 1002524249 1002524249 982550022 982550022 509398614 509398614 446062110 402780364 235406364 179548352 112641164 348578112 348578112 295563674 317332658 343655608 343655608 230965248 231000300 231000300 223921836 223921836 55362048 285973264 305136402 305136402 145628484 507649196 507649196 463606134 179764724 188004781 609193021 756023853 756023853 739335181 739335181 638549356 735870016 735870016 669084625 669084625 586057533 259446965 188232460 325588378 325588378 299769891 953425120 953425120 422782149 824923474 824923474 573878626 622931579 656474292 656474292 403301382 539094042 1015858241 1015858241 784974201 406935560 745352589 745352589 538460405 246726976 329956090 332748730 332748730 269817916 1048717811 1048717811 200031994 688555905 688555905 653779284 820211062 820211062 804182237 1065653594 1065653594 780469056 738891152 1017994214 1017994214 934466427 831411200 831411200 113224691 665974816 665974816 599384418 599384418 24160001 122336258 273372376 273372376 25165952 81284612 214223052 751747785 751747785 972266059 972266059 833353059 741626101 682115208 780141620 780141620 684535132 811814138 811814138 835655339 917198096 917198096 126044360 126044360 967872480 967872480 959360516 946341255 946341255 269084674 301041632 301041632 25297216 35841312 35841312 580772449 580772449 580201041 687466437 879781846 879781846 507069810 137929780 412184500 1014796876 1014796876 820054318 820054318 478217254 305896398 228769856 291826176 291826176 135613382 26264160 152109284 152109284 20589008 168020380 261153156 261153156 36179280 42867792 44564580 193463412 193463412 218196244 398574694 398574694 695119806 726672142 726672142 434774762 434774762 502803694 994127250 994127250 858993284 269295760 23803296 427769864 427769864 218464862 386277888 386349114 386349114 184575160 207095436 252810292 252810292 552716247 552716247 172762020 284586946 956615079 956615079 690913408 949923527 949923527 162978560 162978560 29817092 405712196 405712196 280781442 411085346 424780550 439454452 439454452 193942900 702097125 873465416 873465416 547381507 539551521 1012154884 1012154884 806644655 297660258 414215204 414215204 287572356 68799642 256746754 935912491 935912491 232279120 836117029 836117029 338074122 377893536 643105457 643105457 262466932 759847805 759847805 332571280 392724874 392724874 271092230 975177503 975177503 708300502 708300502 516609618 780212304 807677959 807677959 1013261839 1013261839 920256794 920256794 488803474 488803474 418123206 418123206 183287826 41943120 49582688 49582688 46211264 281628496 281628496 732464434 758966428 758966428 625886856 176464037 541321570 579344692 730728757 730728757 589859190 692527874 1009331327 1009331327 870816817 601973831 867721350 867721350 682993433 528786799 528786799 405533958 1012211374 1012211374 181404372 784351388 784351388 193725361 157624740 157624740 157431808 136450048 525312 525312 525312 8650752 8652864 38307840 46712016 46712016 18139664 18139664 61543368 265945828 265945828 133385480 193221164 193221164 230702124 242950176 242950176 221367168 221367168 114631104 62752392 5649536 35003152 43789424 43789424 64894160 64894160 46870112 49484000 580125028 580125028 545554136 727683596 727683596 567431240 142678256 148945344 205097033 702346825 702346825 702037025 707228964 707228964 810999344 979311156 979311156 1006351189 1006351189 1000929910 1000929910 42016848 143401360 143401360 419446944 554795046 554795046 183912128 183912128 402797063 639029314 712132626 712132626 787157212 787157212 405868353 405868353 542427392 563407333 679741509 822936804 822936804 470288388 470288388 440293240 440293240 588286056 967759633 967759633 914407515 914407515 873779907 630259523 302304960 1018610306 1018610306 583293612 1070049888 1070049888 267479613 50942348 280618386 280618386 439210898 1065371708 1065371708 1072227082 1072227082 772550456 772550456 257562300 590258716 829409878 829409878 949912036 949912036 914786442 914786442 870976630 612816024 715677617 715677617 316670284 96485558 102810536 102810536 202408060 838992150 1041417234 1041417234 348046152 1029208970 1029208970 599937968 520229056 520229056 973490587 973490587 849217121 855687219 855687219 822641680 312026650 975903849 975903849 772052464 893985830 893985830 714080853 938534410 938534410 737074504 309539114 274149216 274149216 605239052 605239052 441191494 466882806 466882806 348262528 297312614 221403244 605894976 740355104 795621025 795621025 701139121 1061718462 1061718462 1027704198 974422158 913451954 913451954 1013803278 1013803278 919204358 919204358 514457622 579469316 820998261 820998261 455136097 286153984 286153984 271036458 889602698 889602698 874389003 118563384 304162400 346629450 674571904 674571904 536869284 571745205 728828433 728828433 236873508 603220420 603220420 460900278 460900278 808897093 808897093 738365954 905392382 909454107 909454107 537951017 43040776 615154073 615154073 76022856 753665898 1037831919 1037831919 703761361 856475377 856475377 451728054 697487508 749000089 830653298 830653298 194479984 370618790 370618790 70989576 183800738 400863022 400863022 197148312 378565352 404122476 404122476 135039876 304741150 338764624 338764624 491783930 491783930 739295757 995414063 995414063 575577488 174463380 165838208 127620920 635672096 635672096 763506737 763506737 728691432 728691432 622120376 152594192 34214928 40176640 40176640 632553953 632553953 570240993 570240993 1014233575 1014233575 998227582 916289005 916289005 595804284 604371273 748991064 748991064 158942672 120540176 102779224 102779224 82084368 540820480 583886545 583886545 636558889 636558889 41986801 657902624 657902624 189061300 622070144 728003228 728003228 258346870 197009268 564958404 564958404 191798309 144886128 0 734336 4194432 404389412 404389412 40758672 173884164 173884164 708314436 708314436 72825480 73075112 90703272 90703272 760104188 760104188 579262545 625015055 625015055 876833953 879355275 879355275 882296340 882296340 336775866 343933034 567878888 567878888 394313850 445137964 445137964 239075484 840586254 910689960 910689960 827326627 503878020 503878020 430613802 430613802 250144086 1061721262 1061721262 860297289 997076992 997076992 860402004 754999210 754999210 617824270 617824270 284290763 285159362 285159362 283106624 283106624 340563226 340563226 78588994 80253122 369344858 369344858 69656978 10752000 10485760 10486080 10486080 8540480 312489001 923481147 923481147 807100561 809599530 809599530 617971832 221335310 369624090 991059741 991059741 811476346 617870025 371265569 932365040 932365040 619349584 408430958 408430958 387721664 470345040 470345040 236563468 453297722 453297722 312814650 312814650 281018514 386999402 386999402 138797796 491425008 491481744 587846951 587846951 544579967 809632083 809632083 952315456 1046285223 1046285223 672434212 672434212 554039968 610678016 610678016 608363780 893839657 893839657 354541734 788607467 788607467 350290646 328766614 732170613 732170613 687811907 624377497 809701888 809701888 667342713 831052692 831052692 673187858 394592546 1060135664 1060135664 805306371 537997424 413199242 413199242 302845064 302845064 117967914 107228496 286281770 286281770 176238940 285582882 569746872 569746872 202979088 777234008 777234008 743461572 612552777 255901884 352587914 1041634576 1041634576 940213376 940213376 285743584 422534468 429593824 433865506 468270928 468270928 136202240 135709056 135709056 20737412 17041408 44305220 163595396 307403476 307403476 483353988 511778910 511778910 506478848 504414750 139534464 135266820 103879684 205207308 205207308 201731840 154801924 171102852 205520952 205520952 185094021 568549761 568549761 572069616 710470357 744652921 744652921 722138821 745530473 745530473 624991776 601019121 654033973 654033973 581888168 260626860 231367072 218635432 233040252 233040252 137922984 187902888 187902888 35728128 614320189 614320189 258486004 787483797 787483797 792273496 792273496 226139944 85513800 721496184 750989392 750989392 618802744 620638096 620638096 614279729 614279729 253401688 589816152 742504148 742504148 716777301 86574325 161555168 203949324 534048130 534048130 578052816 578052816 672170113 672170113 281965120 538463488 538463488 46683302 36312336 105330840 205629216 205629216 467071740 467071740 69403278 73450488 543219853 543219853 510471582 442869914 276300306 463792930 463792930 339772610 339772610 917797766 917797766 743205606 339422536 463990548 463990548 455513342 424343920 365775104 92018754 17596648 369724530 369724530 111937024 351608216 351608216 344780130 830391674 830391674 125902968 857293802 952450769 952450769 538091040 538091040 493968410 493968410 375525786 375525786 203558778 353549522 353549522 100276200 298975272 344600900 556609613 556609613 689846345 689846345 323230896 323238112 323238112 310587474 343933002 348414426 847707570 847707570 538196725 538196725 243091604 565469049 565469049 326636088 326636088 457199904 761398803 761398803 471888904 596267041 596267041 474521776 528179993 680575557 1035368833 1035368833 701905486 690124183 702149008 729421813 729421813 1058373667 1058373667 759309742 759309742 724341977 790810941 790810941 252232764 688802985 688802985 543428730 881330432 881330432 20381600 33386784 35805776 276838777 615712512 615712512 823527458 823527458 387001874 387001874 744008878 744008878 678303366 1050674613 1050674613 405341622 585114662 893453068 893453068 160432740 747652426 886910667 886910667 1044383766 1044383766 571683639 571683639 540751536 540751536 698800485 880537522 880537522 640334153 491005226 491005226 134221828 281667160 374941338 374941338 604706848 604706848 369099738 821040576 1037436388 1037436388 520954713 1042075167 1042075167 983490135 1000075333 1000075333 696703077 918645997 995380240 995380240 533744650 688695357 688695357 294657690 851806768 966894130 966894130 633324611 633324611 78766920 157749736 205545876 262501724 290440558 290440558 41758608 373454088 373454088 291953058 291953058 270566400 270566400 78144834 419096396 419096396 512483422 512483422 474872016 474872016 179548352 179548352 173662228 348578112 348578112 295563674 317332658 343655608 343655608 255943312 255943312 231000300 38903996 239871136 239871136 285973264 305136402 305136402 157996452 157996452 31248096 31737600 50608288 188004781 609193021 756023853 756023853 739335181 739335181 638549356 638549356 801895677 801895677 185424073 139472229 424487322 424487322 319031710 319031710 88342664 953425120 953425120 32900071 78649600 78649600 22284960 35856688 656474292 656474292 211861836 539094042 1015858241 1015858241 784974201 224659873 745352589 745352589 538460405 273203128 285721016 332748730 332748730 28261728 132453528 132453528 410828800 410828800 172327716 653779284 653779284 235590684 252284928 252284928 69337160 235930140 346697880 1017994214 1017994214 934466427 831411200 831411200 612417824 612417824 877621584 945935421 945935421 900345592 900345592 949157379 949157379 591933697 1023544231 1023544231 999815799 885671178 885671178 262020732 741626101 741626101 119537900 780141620 780141620 205783156 811814138 868976028 1038300655 1038300655 917198096 126044360 126044360 967872480 967872480 769099052 202381701 224166017 567291397 567291397 548516288 548516288 50451456 50451456 171090704 171090704 284721210 284721210 251234168 384852406 384852406 177927676 224398628 224398628 16515912 134756496 478217254 478217254 305896398 355670616 355670616 317970618 378829506 389537120 890215539 890215539 349099160 610853562 610853562 587236417 354960835 547373192 688128369 688128369 675450661 603457521 603457521 551291184 695119806 695119806 315163214 52494460 52494460 88080792 994127250 994127250 469831398 469831398 148116556 213404168 288341796 288341796 386277888 386349114 386349114 469372146 469372146 403402226 310218258 552716247 552716247 453928454 413849922 956615079 956615079 690913408 949923527 949923527 562780577 162978560 143889156 672183105 672183105 280781442 411085346 424780550 439454452 439454452 42295348 702097125 702097125 686359328 287925560 923074625 923074625 1006657580 1006657580 676685834 571256470 571256470 336407697 336407697 256746754 873326133 873326133 438133930 356682400 356682400 293970056 377893536 612740361 612740361 401537572 655446905 655446905 332571280 392724874 392724874 722747772 975177503 975177503 708300502 708300502 516609618 780212304 807677959 807677959 1013261839 1013261839 920256794 920256794 488803474 488803474 418123206 723387184 723387184 674110725 53485109 46211264 46211264 281628496 281628496 276163458 758966428 938732700 938732700 928558602 928558602 541321570 317037029 539515918 945413137 945413137 292049930 879830118 879830118 771229677 480321870 517823500 1048367580 1048367580 456403942 456403942 984879714 984879714 415605361 784351388 784351388 193725361 295962722 701516278 994051250 994051250 415844144 415844144 405349158 405349158 271607936 843091010 843091010 684202917 538630816 451337828 177366594 174968064 174968064 133385480 133385480 43361408 129155304 129155304 111693536 129527680 129527680 114631104 105981080 84021288 84021288 59382936 59718544 59718544 32325136 15018016 49484000 53613360 85263104 108007296 145900480 206579948 236607920 236607920 226283436 205097033 205097033 130423032 90571088 56300560 56300560 810999344 979311156 979311156 989468631 989468631 839835664 839835664 42016848 429498662 429498662 412624468 820233058 820233058 723669525 173074625 13370368 639029314 712132626 712132626 787157212 787157212 546211137 405868353 542427392 563407333 679741509 679741509 543754528 543754528 835257813 835257813 880879322 880879322 967759633 967759633 498207279 469166360 500380398 953714992 964480743 964480743 527837282 628221045 628221045 580090668 580090668 295766709 259934676 316619281 1022743883 1022743883 823984928 823984928 585182979 504709164 504709164 257562300 590258716 829409878 829409878 949912036 949912036 914786442 914786442 613393540 612816024 715677617 834833610 834833610 779417364 895167250 895167250 570497538 570497538 581443592 581443592 285172899 558435442 558435442 545275405 520229056 520229056 973490587 973490587 849217121 849217121 844239072 793428204 185197692 975903849 975903849 772052464 893985830 893985830 693375128 938534410 938534410 737074504 309539114 274149216 274149216 605239052 605239052 441191494 799457305 799457305 490823968 490823968 367235724 273228930 740355104 795621025 795621025 237817116 1061718462 1061718462 1027704198 968500758 976543380 976543380 871580530 987123165 987123165 980331511 441500310 579469316 820998261 820998261 966647594 966647594 930808260 930808260 889602698 889602698 874389003 652411076 639902425 256642741 159312516 554949508 675340289 689281696 728828433 728828433 475756384 491782830 491782830 460900278 460900278 209369608 234080298 491872674 905392382 909454107 909454107 325464505 43040776 615154073 615154073 259002852 753665898 1037831919 1037831919 703761361 856475377 856475377 958569296 958569296 1008462555 1008462555 841562032 194479984 62843188 426020 0 147923200 149947332 178661584 306062724 378565352 378565352 237545940 237545940 304741150 304741150 308584980 491783930 491783930 739295757 995414063 995414063 575577488 174463380 165838208 127620920 635672096 741213200 763506737 763506737 728691432 728691432 622120376 152594192 45321552 65939168 65939168 44967448 101784594 312214562 868948268 1014233575 1014233575 998227582 916289005 916289005 595804284 604371273 748991064 748991064 756073005 756073005 455744521 572265216 572265216 540820480 878232707 878232707 656684333 656684333 352666128 73082368 566284992 609655201 622070144 728003228 728003228 575027537 735294628 735294628 578814033 578814033 327791545 577332529 716344373 716344373 595999585 884786786 884786786 882378665 413902365 708314436 708314436 390271018 390271018 357165232 90703272 760104188 760104188 579262545 625015055 625015055 876833953 879355275 879355275 882296340 882296340 152585412 194102412 567878888 952426497 952426497 671475877 692674697 692674697 856162490 910689960 910689960 839386786 839386786 664289959 664289959 534443636 618223141 1061721262 1061721262 784507078 997076992 997076992 168110100 537006080 1048890454 1048890454 982176855 317245771 295950574 334939360 334939360 283106624 2230080 448512 448512 14862656 14862656 548245728 548245728 881696070 948731207 948731207 942281735 404882753 96029000 96029000 472486206 618133576 618133576 1017352145 1017352145 526277647 497257776 253755708 449884170 449884170 396567280 807473226 807473226 348423457 218629172 218629172 373303136 373303136 343754800 343754800 81839938 272180608 310691922 310691922 309905506 59016498 30673632 110780456 110780456 83990104 25966336 73734786 532626914 532626914 809632083 809632083 404895335 317006768 583020308 583020308 118760044 118760044 84233128 434660008 434660008 361040226 146850176 146850176 442829260 442829260 350290646 328766614 423809190 423809190 248764284 265528770 285827209 563870817 667342713 667342713 716179521 716179521 628437669 1060135664 1060135664 805306371 537997424 386130504 264517792 302845064 302845064 458408989 799849187 799849187 723640629 731074561 856097302 856097302 735874212 373906179 777044637 777044637 743461572 612552777 375521282 352587914 1041634576 1041634576 940213376 940213376 406701568 406701568 147247494 6233796 563200 19326208 34627872 135709056 171358640 171358640 158401840 158401840 38584612 35696144 445390850 445390850 440371412 506478848 506478848 504414750 304281622 304281622 438923484 438923484 439794288 439794288 154801924 171102852 205520952 205520952 185094021 736223284 736223284 192812145 556540257 744652921 744652921 722138821 592261712 624991776 624991776 601019121 654033973 654033973 581888168 260626860 189381892 189381892 233040252 379901174 379901174 137922984 365123754 365123754 614320189 614320189 453645366 787483797 787483797 769824332 769824332 240406781 164398852 721496184 750989392 750989392 618802744 620638096 702516452 702516452 197617409 138934404 142655556 571255552 716777301 751960449 751960449 751588312 309296157 673359589 673359589 578052816 578052816 805787778 805787778 284481635 281965120 544049716 729409461 729409461 138855044 138855044 192627764 291188256 291188256 52954416 171106976 171106976 510471582 510471582 442869914 276300306 288695616 288695616 244343388 244343388 445627498 445627498 100008928 100008928 272836320 358298594 358298594 296901536 296901536 99487586 10376776 125862208 125862208 84475928 351608216 351608216 344780130 830391674 830391674 125902968 754079448 754079448 685360584 685360584 625927341 977664728 977664728 375525786 375525786 35672202 290036600 350044540 350044540 154807328 344600900 556609613 556609613 739753767 739753767 419903526 889420470 889420470 932915887 932915887 557366735 225959044 610377892 610377892 585648068 243091604 243091604 302798768 326636088 326636088 453677488 453677488 104874000 469894422 469894422 402871352 402871352 252699144 692990529 692990529 697885721 730017909 730017909 702149008 729421813 729421813 178397848 238338576 953346088 953346088 724341977 790810941 879864938 879864938 386361759 333496818 333496818 80306344 277186626 339806272 339806272 33386784 276838777 615712512 615712512 330042738 545869825 545869825 387001874 744008878 744008878 693695662 1050674613 1050674613 195084660 1015715131 1015715131 893453068 160432740 992478752 992478752 976225047 961680535 961680535 406918864 21235872 35986464 579742000 579742000 880537522 880537522 989880488 1009488396 1009488396 672198389 672198389 398274426 923242514 923242514 284691329 882332288 882332288 880739815 880739815 520954713 1042075167 1042075167 429230386 408160902 850345299 850345299 1030905753 1049609424 1049609424 835771620 835771620 714587185 1024846383 1024846383 851806768 1060379072 1060379072 633324611 520668222 520668222 205545876 262501724 369342963 639505321 652842147 652842147 398278730 93751043 805520384 805520384 302886467 109658178 907108360 907108360 512483422 538709505 538709505 474872016 542061888 572519569 572519569 585729800 585729800 72730680 81879048 81879048 60883528 255943312 255943312 219202092 218942508 239871136 277140336 277140336 71860634 153521280 157996452 157996452 31248096 62930692 169218148 169218148 139338512 134217732 153093408 153093408 34130944 34122752 616999988 801895677 801895677 185424073 55643312 424487322 424487322 319031710 437201060 437201060 962147973 962147973 495425933 842977864 842977864 564415272 859473507 859473507 807437625 564715804 984205334 984205334 783830280 783830280 646086878 943902855 943902855 625996263 619634121 526482551 824708467 824708467 989908398 989908398 676147333 761898409 761898409 890345472 890345472 989941548 989941548 690751813 882914622 882914622 782182144 797778180 797778180 348153317 1058226180 1058226180 811696195 612417824 612417824 877621584 945935421 945935421 900345592 900345592 949157379 949157379 606641849 1023544231 1023544231 999815799 885671178 885671178 116268504 648030210 648030210 383535467 810488777 810488777 854348356 854348356 868976028 1038300655 1038300655 962081798 822253464 822253464 640829612 957325025 957325025 818042664 558135360 567291397 567291397 572665120 572665120 566489457 564162913 731022021 731022021 730914708 171102996 237027652 237027652 177927676 177927676 224398628 243575810 378061914 378061914 337500122 528747646 528747646 355670616 355670616 317970618 378829506 389537120 890215539 890215539 349099160 610853562 610853562 587236417 354960835 547373192 688128369 688128369 675450661 603457521 883436928 883436928 318056968 315163214 315163214 488644784 488644784 234946975 895554347 959591964 959591964 469831398 861615795 861615795 998843511 998843511 831004692 149630726 151238628 469372146 469372146 403402226 310218258 318196432 453928454 453928454 413849922 413849922 134481924 137989252 147502340 562780577 562780577 159432804 143889156 672183105 672183105 134734336 146152260 162806340 175417780 175417780 291547536 291547536 537182243 537182243 329525560 923074625 923074625 1006657580 1006657580 676685834 571256470 571256470 457785412 336407697 169717288 873326133 873326133 438133930 75585768 293970056 293970056 335827680 612740361 612740361 401537572 655446905 655446905 278200534 288282770 288282770 840443904 840443904 67897857 402918928 402918928 275711110 270741762 204213516 204213516 231487052 231487052 221775660 636522273 853317591 853317591 408886758 723387184 723387184 792058166 792058166 722038869 715677782 715677782 946679703 946679703 464907457 938732700 938732700 928558602 928558602 187041299 977309950 1032570004 1032570004 945413137 955516832 955516832 879830118 856322230 856322230 510193052 1048367580 1048367580 819383043 819383043 984879714 984879714 777027771 606269842 778113048 778113048 805693799 805693799 994051250 994051250 415844144 415844144 405349158 405349158 805890210 843091010 843091010 684202917 836553041 836553041 634773888 634773888 1013214044 1013214044 664519528 723078641 723078641 740829276 740829276 773696797 773696797 614620056 135509336 122837520 87370536 59382936 59718544 59718544 49485856 49485856 45097328 45097328 85263104 108007296 145900480 145900480 236607920 236607920 226283436 142901428 133826652 159518592 159518592 64538160 550914560 550914560 47601713 705897922 989468631 989468631 171511748 318663223 318663223 429498662 543219718 543219718 820233058 820233058 723669525 586713685 586713685 284733952 284733952 552187456 552187456 546211137 546211137 681058630 681058630 149021253 103943324 103943324 543754528 543754528 835257813 835257813 880879322 880879322 453507126 846883850 846883850 619233749 688555037 953714992 969032487 969032487 948226119 940312914 628221045 580090668 580090668 295766709 444170496 444170496 1022743883 1022743883 481083924 653099434 653099434 554820129 413970405 285212706 318767106 318767106 276312080 815600218 815600218 130097306 389132216 389132216 681100359 729599925 834833610 834833610 1017589396 1017589396 895167250 570497538 570497538 581443592 581443592 117641816 117641816 119638016 119638016 25377824 25377824 537137184 537137184 759857340 844239072 844239072 61629440 61629440 62983248 62983248 40388816 606448900 606448900 727768696 802514789 802514789 682438660 217791872 118224908 118224908 118061421 179665201 179665201 799457305 956867077 956867077 490823968 367235724 674308869 674308869 758510400 758510400 667085349 592519857 828518418 828518418 980976742 980976742 976543380 812258691 987123165 987123165 980331511 476014602 441500310 404123778 679264152 966647594 966647594 930808260 930808260 609395076 99255792 652411076 652411076 639902425 256642741 159312516 554949508 675340289 689281696 689281696 269137472 475756384 491782830 491782830 239452960 239452960 209369608 210131724 210131724 216440456 216440456 148374208 148374208 39128008 559032117 559032117 259002852 682632897 737675290 737675290 502536935 498668040 699405858 958569296 958569296 1008462555 1008462555 841562032 436258928 436258928 265191718 480284616 480284616 350756330 350756330 306062724 306062724 489843594 489843594 237545940 97029352 286335522 286335522 328238180 328238180 335844242 335844242 251887808 115302328 36140344 125352592 249061552 249061552 741213200 741213200 260946349 118298248 118298248 67818504 27553584 79078728 121839144 121839144 563521001 563521001 374362744 868948268 868948268 500355822 500355822 341149752 1007173306 1007173306 386513954 446206253 588480383 756073005 756073005 455744521 572265216 572265216 504916484 878232707 878232707 656684333 656684333 352666128 562367424 566284992 609655201 609655201 79658048 575027537 575027537 735294628 735294628 578814033 578814033 417546950 577332529 716344373 716344373 595999585 884786786 1061632892 1061632892 443756695 351200832 351200832 390271018 390271018 357165232 56103695 291904573 291904573 29495712 206710990 292891554 292891554 138227502 102705544 201869000 1015565551 1015565551 173332516 1040700605 1040700605 952426497 671475877 692674697 709101272 856162490 856162490 953417958 1032325874 1032325874 664289959 664289959 534443636 962987111 962987111 784507078 784507078 943830149 943830149 538974465 538974465 1048890454 1048890454 982176855 317245771 295950574 334939360 334939360 37834432 110351314 378725898 381282138 575299476 648623942 648623942 548245728 881696070 948731207 948731207 942281735 939862023 105832976 595427944 924668066 924668066 608964104 1017352145 1017352145 999954039 647218764 728454896 728454896 449884170 396567280 807473226 807473226 348423457 123473592 359310754 373303136 373303136 343461106 343461106 464654898 464654898 324561472 310691922 309905506 282158144 398509594 398509594 119207452 134878212 134878212 947399719 947399719 532626914 983831253 983831253 767689033 451938740 667302427 667302427 297210372 236208292 877574570 877574570 434660008 549266305 613017284 757658953 757658953 663692048 663692048 378610266 187245876 195299924 195299924 37748992 37748992 33603600 548513104 548513104 716179521 716179521 628437669 628437669 48435352 49750176 49750176 264517792 264517792 59471968 141347024 458408989 799849187 799849187 723640629 731074561 856097302 856097302 944061067 944061067 777044637 777044637 675430420 574804113 375521282 1008230078 1008230078 777784989 819139022 819139022 406701568 413291990 413291990 312663826 312663826 293822304 42151732 41510992 171358640 171358640 158401840 158401840 211039040 213384012 445390850 445390850 440371412 416645264 371212560 371212560 304281622 304281622 438923484 438923484 439794288 439794288 37649680 40104976 90416672 90416672 141073704 736223284 736223284 177285968 177285968 5243840 9437760 592261712 592261712 652640400 652640400 608755597 229541056 146804736 156688172 156688172 75584680 132256248 889372856 889372856 544945214 331522212 584165926 731331189 731331189 680984624 453645366 867208945 867208945 810273606 769824332 511472889 248350684 694295016 694295016 211943841 91098208 91098208 725617252 725617252 586323924 788063016 788063016 247720940 218104553 751960449 751960449 751588312 578355520 821199649 821199649 563627296 563627296 805787778 805787778 307547362 565437280 734279602 734279602 729409461 573964561 678564770 678564770 456343734 326201732 302490242 171106976 171106976 277845697 806701187 816288161 816288161 61100196 188844172 650420228 976306395 976306395 573836049 100008928 360226422 904792993 904792993 473357070 296901536 296901536 929352850 929352850 883214667 815006344 103816704 548962705 548962705 350889810 738803412 745891421 749806413 754079448 754079448 726835267 726835267 625927341 977664728 1038175592 1038175592 881146558 985870551 985870551 889161206 889161206 639942347 269777201 839666287 839666287 739753767 739753767 604393713 889420470 889420470 932915887 932915887 557366735 225959044 610377892 610377892 585648068 149096772 125880000 119559824 119559824 40944528 100668448 100668448 134747136 331432212 466167064 466167064 406806780 406806780 692990529 692990529 697885721 730017909 944438400 944438400 484896026 1073150414 1073150414 778462950 953346088 953346088 591655089 599629657 879864938 879864938 775442393 694442337 631383480 746012878 746012878 604385289 607488154 607488154 305066848 550324385 550324385 228862476 545869825 545869825 608759846 608759846 693695662 693695662 407562290 187397488 195084660 1015715131 1015715131 889490078 889490078 992478752 992478752 976225047 738220556 538368513 802052509 802052509 544066016 702476596 811777296 811777296 578140561 989880488 1009488396 1009488396 672198389 672198389 398274426 923242514 923242514 726149701 882332288 882332288 899045995 899045995 618448079 618448079 613466697 710461077 710461077 938026491 938026491 1030905753 1049609424 1049609424 835771620 835771620 714587185 1024846383 1024846383 542222332 1060379072 1060379072 900070144 520668222 520668222 287180576 296672610 369342963 639505321 652842147 652842147 398278730 93751043 805520384 805520384 302886467 109658178 907108360 907108360 12897025 538709505 538709505 115457808 542061888 572519569 572519569 585729800 585729800 292311194 292311194 255901884 529637408 756400381 756400381 444917920 750022417 750022417 528239822 528239822 233331652 805273539 805273539 348262602 564799449 564799449 273360322 225511848 678499181 679526469 679526469 777001117 777001117 604799052 604799052 588121188 663933956 663933956 657759579 657759579 304152852 189339680 437201060 576492581 962147973 962147973 588223617 965253469 965253469 884507667 859473507 859473507 807437625 564715804 984205334 1015841398 1015841398 783830280 646086878 943902855 943902855 625996263 619634121 919380414 919380414 824708467 989908398 989908398 676147333 761898409 761898409 890345472 890345472 989941548 989941548 690751813 882914622 882914622 782182144 797778180 797778180 88289448 1058226180 1058226180 811696195 611936401 611936401 181289852 139634390 882942853 882942853 77654980 71616648 148248780 606641849 797466053 797466053 1049493712 1049493712 593379061 196818804 1008275835 1008275835 383535467 810488777 840533164 854348356 854348356 333723993 365820992 962081798 962081798 822253464 822253464 640829612 957325025 957325025 1019979204 1019979204 558135360 557116096 572665120 572665120 566489457 564162913 731022021 731022021 730914708 109051992 237027652 237027652 181433416 134751232 134751232 243575810 378061914 378061914 337500122 528747646 528747646 54846680 34783888 38797968 38797968 14779408 76440912 116650968 116650968 47289608 525312 1573376 1573376 693248 709632 50331648 117836088 117836088 883436928 883436928 707796623 707796623 707411203 503456188 503456188 234946975 895554347 959591964 959591964 940151395 940151395 861615795 998843511 998843511 831004692 37173248 37173248 32076400 179765536 179765536 138178372 138178372 142383748 142383748 192024388 192024388 0 0 525312 161513728 161513728 159432804 12227904 286863992 286863992 278529064 278529064 492798986 492798986 360845418 291547536 291547536 304399622 329525560 519684922 519684922 436522390 436522390 341101192 465956036 465956036 457785412 746914816 746914816 492929154 67707912 154684824 154684824 152313984 277975424 277975424 335827680 335827680 475124288 475124288 407101694 261104504 261104504 58917362 302063634 840443904 840443904 808307985 979742018 979742018 508794954 606859530 1013149699 1013149699 676269061 1027131183 1027131183 726309082 853317591 853317591 408886758 620387089 620387089 792058166 792058166 722038869 715677782 715677782 946679703 946679703 464907457 827071240 897516325 897516325 974407143 974407143 977309950 1032570004 1032570004 1033291277 1033291277 955516832 514000914 856322230 856322230 847432018 847432018 681744965 819383043 819383043 769728326 777027771 796877132 796877132 778113048 778113048 805693799 805693799 538042881 3534593 17847552 18874656 305146132 565036128 805890210 805890210 672434180 444862134 836553041 836553041 634773888 634773888 1013214044 1013214044 664519528 723078641 723078641 740829276 740829276 773696797 773696797 614620056 135509336 122837520 126226504 126226504 121636944 31274768 49485856 105782424 105782424 48574704 48574704 69275736 194661504 194661504 153011360 199986108 199986108 179113921 138690337 159518592 159518592 136249121 550914560 562949601 689265540 689265540 423779778 821532007 821532007 318663223 318663223 309344116 709124272 709124272 141546785 191638544 191638544 586713685 586713685 983263789 983263789 395238522 76796218 346330403 984427239 984427239 681058630 417858386 247627776 247627776 247513308 274997152 452930546 452930546 825139299 825139299 717408319 846883850 846883850 619233749 688555037 958157216 969032487 969032487 948226119 940312914 505678850 470075406 65144582 276044260 444170496 444170496 74061192 74061192 481083924 653099434 653099434 554820129 568173236 741344013 761137709 761137709 934937186 934937186 640292121 336074602 443770473 443770473 681100359 729599925 729599925 833996342 1017589396 1017589396 337660766 337660766 469770506 469770506 947970919 947970919 438015238 579028039 579028039 753304716 753304716 739050777 860262632 860262632 1071303778 1071303778 177358339 61629440 62983248 62983248 19837092 606448900 606448900 727768696 802514789 802514789 232041601 84284544 109385752 109385752 621775368 621775368 436471830 1060199460 1060199460 956867077 404334114 398338636 674308869 739573760 758510400 758510400 677417016 677417016 828518418 828518418 980976742 980976742 584487700 543372948 543372948 509513487 476014602 476014602 33667344 353844240 353844240 271942936 271942936 103287056 145469760 145469760 265520128 265520128 236766624 236766624 30474400 30474400 163682912 163682912 139155463 135863297 10633766 364132347 593967537 593967537 399183179 25239648 152533792 219533802 219533802 495993926 495993926 148374208 362426992 362426992 51958496 51958496 102145624 389219856 389219856 77594624 77594952 498668040 498668040 253823292 253823292 203596564 36347012 170256660 436258928 436258928 265191718 480284616 480284616 350756330 350756330 292167242 277629954 489843594 489843594 335629546 335629546 354276010 354276010 279980866 353390728 353390728 489131426 489131426 487051810 1062426868 1062426868 616677265 249061552 562599480 663933561 663933561 119161921 84227616 67818504 44697984 79078728 121839144 121839144 563521001 927078993 927078993 847395008 858720625 858720625 922884211 922884211 1007173306 1007173306 1001728887 1001728887 437405700 70562330 201392908 607406847 1024502601 1024502601 117484578 286724126 286724126 202463496 219204104 219204104 562367424 562367424 81867753 81251016 540313992 540313992 179079876 179079876 124679308 218828044 417546950 417546950 370274588 355034506 115783032 128604632 128604632 1061632892 1061632892 443756695 310587474 269030480 112131328 475926912 475926912 711593647 711593647 743099402 743099402 604297312 604297312 675448965 1053721025 1053721025 1045355679 1015565551 1015565551 173332516 1040700605 1040700605 772611201 772611201 546876577 709101272 709101272 575148080 953417958 1032325874 1032325874 54531184 465698864 465698864 962987111 962987111 134547552 440627604 943830149 943830149 538974465 538974465 136839460 2671872 2671872 8405376 14680512 14680512 16352256 47846608 110351314 378725898 381282138 575299476 648623942 648623942 270448054 891379112 891379112 810548355 939862023 939862023 105832976 595427944 1010091062 1010091062 576244320 558084664 999954039 999954039 647218764 728454896 728454896 638922861 638922861 614082304 647116705 647116705 603784016 359310754 359310754 130781680 59772818 309363346 464654898 464654898 324561472 170322082 529912244 529912244 403445694 429797094 429797094 351721120 351482340 947399719 947399719 311893212 983831253 983831253 1068726812 1068726812 667302427 667302427 297210372 271849714 877574570 877574570 371206204 549266305 613017284 757658953 757658953 663692048 663692048 378610266 187245876 195299924 258006536 258006536 459846957 824536065 824536065 621030570 538445313 143206977 254542263 862772275 862772275 824585641 932134011 932134011 479939815 382890576 510499979 780977496 780977496 470574512 470574512 57259768 212493256 212493256 944061067 944061067 544098962 675430420 675430420 574804113 1048135192 1048135192 1008230078 543026817 617956556 617956556 46436368 413291990 413291990 312663826 312663826 293822304 261979569 683340485 683340485 676731525 595608165 595608165 211039040 213384012 639304457 675018501 675018501 616474700 371212560 371212560 235288708 235288708 250625244 267906124 267906124 213441312 180260636 180260636 130761312 130761312 216525521 216525521 198890228 198890228 556834617 692605969 700942653 700942653 121315829 652640400 737156213 737156213 735583508 615029697 547380136 171195328 192259004 192259004 889372856 889372856 544945214 331522212 584165926 731331189 731331189 680984624 324008244 867208945 867208945 810273606 511472889 511472889 248350684 146110468 560340417 560340417 556087328 583473216 725617252 725617252 586323924 788063016 788063016 247720940 218104553 706304416 706304416 103616088 661690758 1045828455 1045828455 843368595 843368595 538615856 307547362 307547362 565437280 734279602 734279602 556780054 573964561 678564770 678564770 456343734 353013124 353895978 353895978 155328546 277845697 806701187 816288161 816288161 571185152 588067857 650420228 976306395 976306395 573836049 36489873 360226422 904792993 904792993 473357070 404297932 279990768 929352850 929352850 883214667 815006344 188646676 995448916 997583799 997583799 738803412 745891421 749806413 749806413 674324683 726835267 726835267 512223426 983987226 1038175592 1038175592 936149848 985870551 985870551 889161206 889161206 850071644 850071644 839666287 839666287 530394750 604393713 604393713 289603762 122722986 268697930 289768008 435804578 479239844 479239844 280534212 149096772 149096772 125880000 304108472 304108472 286787456 273058328 273058328 394846704 451556450 499406918 499406918 418042412 418042412 366364844 366364844 328999984 328999984 944438400 944438400 484896026 1073150414 1073150414 1054139036 697519814 697519814 591655089 599629657 641728665 775442393 775442393 694442337 631383480 746012878 746012878 604385289 607488154 826726344 826726344 636887561 636887561 292321216 349827042 349827042 608759846 739141164 739141164 714740461 851708115 851708115 333972355 294389811 588843699 889490078 889490078 671404096 55119588 738220556 738220556 538368513 802052509 802052509 544066016 702476596 811777296 811777296 578140561 578365329 819776890 819776890 84485160 479774883 696159693 696159693 726149701 726149701 1038238129 1038238129 899045995 957388713 957388713 618448079 613466697 710461077 710461077 938026491 938026491 751371539 688391205 811864136 811864136 1026569297 1026569297 969657847 969657847 542222332 906162687 906162687 900070144 470860368 931972471 931972471 468683518 752822355 752822355 373680282 383489770 544742000 544742000 383937609 270556882 586746706 810364035 810364035 618596616 618596616 335581835 272814210 269578880 7958016 7958016 7605120 81956880 81956880 292311194 292311194 255901884 529637408 756400381 756400381 444917920 750022417 750022417 528239822 528239822 233331652 805273539 805273539 348262602 564799449 564799449 409396656 225511848 678499181 679526469 679526469 777001117 777001117 604799052 604799052 588121188 663933956 663933956 657759579 657759579 304152852 136326164 251660572 576492581 809652406 809652406 588223617 965253469 965253469 884507667 302724114 310391160 310391160 1049479202 1049479202 1015841398 1015841398 478171136 478171136 447292758 447292758 83889918 308367116 919380414 919380414 441722555 885000040 885000040 482345220 482345220 494158810 776198714 776198714 640803609 456280153 185329712 142858432 184987756 247513308 300160417 300160417 400107258 1058079941 1058079941 585939955 585939955 181289852 181289852 139634390 882942853 1022455472 1022455472 455680863 93006062 445715084 613679137 613679137 1049493712 1049493712 671097136 671097136 1008275835 1008275835 509817246 509817246 858809872 858809872 793634327 413120928 413120928 370660040 370660040 392963466 392963466 122573258 5702272 497683978 1019979204 1019979204 357253701 564269248 564269248 51537505 2362304 13816512 13911936 15242432 39719968 64624368 163713232 192484040 211360760 211360760 87894784 224937792 233171436 316436100 316436100 427048492 427048492 189748818 34783888 38797968 39566281 602153481 632526496 632526496 116650968 318351915 609086601 609086601 302070675 564810152 564810152 558012705 602178769 602178769 576333585 942418951 942418951 707796623 707411203 503456188 503456188 184693046 696369732 696369732 562121733 940151395 940151395 404407893 464205174 464205174 453322806 453322806 337787196 150865904 150865904 44890576 138178372 138178372 63355476 65540304 192024388 192024388 57400036 63154336 63154336 631582919 631582919 478537806 355429706 623601511 623601511 278529064 278529064 492798986 492798986 360845418 285252712 269927936 269927936 285254504 519684922 519684922 250134782 341101192 341101192 119096636 319826804 457222623 746914816 983665026 983665026 595929201 132171895 152313984 352619558 352619558 82523780 272982192 591404163 591404163 475124288 566051889 566051889 39981456 58917362 302063634 302063634 808307985 808307985 979742018 979742018 508794954 606859530 1013149699 1013149699 1034270926 1034270926 1027131183 726309082 487604672 487604672 461153120 461153120 428467302 428467302 405563744 181188100 807192964 967982340 967982340 412302274 409941408 827071240 897516325 897516325 974407143 974407143 952193392 902433992 902433992 1033291277 1033291277 1009131618 514000914 514000914 228970542 847432018 847432018 254941694 254941694 277428864 873596504 873596504 796877132 796877132 555744801 400079067 443599348 443599348 1218048 1758720 17847552 18874656 18907424 565036128 565036128 139731493 444862134 444862134 417720774 417720774 175997826 591936172 916241357 916241357 270711298 278746176 797835966 797835966 525343869 73215624 131299854 436966344 436966344 40904160 126226504 126226504 121636944 29500544 23593984 105782424 105782424 48574704 48574704 69275736 194661504 194661504 153011360 199986108 199986108 179113921 138690337 141352961 541594112 541594112 539794880 562949601 689265540 689265540 423779778 821532007 821532007 397071562 397071562 79723826 709124272 709124272 299968757 272967810 16990946 74138664 74138664 983263789 983263789 395238522 76796218 346330403 984427239 984427239 417858386 417858386 247627776 247627776 247513308 274997152 452930546 452930546 512364784 592335774 717408319 717408319 344482853 455340342 455340342 958157216 958157216 648158302 294407262 294407262 61538320 195756308 195756308 244410646 365344800 365344800 915191165 915191165 480705671 615551451 850183475 850183475 568173236 741344013 761137709 832648563 934937186 934937186 806300866 806300866 443770473 443770473 550848138 700449146 700449146 995515436 1046947416 1046947416 421893310 388379128 874908490 874908490 947970919 947970919 914705227 914705227 579028039 753304716 753304716 739050777 860262632 860262632 1071303778 1071303778 885239993 848408403 573432840 360210936 44177728 89020456 638133385 704820736 704820736 676980357 638743708 84284544 109385752 109385752 621775368 621775368 436471830 1060199460 1060199460 463132278 463132278 465061156 465061156 739573760 739573760 76332322 677417016 677417016 163612507 828062849 828062849 681103797 681103797 415859777 966436202 1070546175 1070546175 156337283 942897624 942897624 756159511 1052613904 1052613904 363204640 363204640 197642572 265520128 265520128 239163124 239163124 163873688 135372420 135372420 139155463 139155463 135863297 10633766 675419139 805965957 1000362856 1000362856 303042591 264485304 264485304 635855077 748075405 748075405 900541114 900541114 362426992 546277781 546277781 148973956 976294009 976294009 703607424 519903710 519903710 741093662 865258012 865258012 842130195 993306660 993306660 460517680 460517680 296181700 311709232 311709232 286883840 18374720 14382720 30138048 80843112 80843112 335629546 335629546 354276010 354276010 279980866 353390728 353390728 489131426 489131426 487051810 1062426868 1062426868 616677265 182559329 562599480 663933561 663933561 609165248 47062224 120014848 120014848 12716736 42291392 76359936 83654760 927078993 927078993 847395008 858720625 858720625 922884211 922884211 871038321 871038321 1001728887 1001728887 432788127 410980488 112978328 607406847 1024502601 1024502601 1018262027 1018262027 908387075 908387075 310940377 310940377 665173993 665173993 71352456 550647233 554647985 554647985 35617936 590804513 672702572 672702572 631101257 211963397 73728 815067099 815067099 984181269 984181269 634210304 481118094 219222806 96522144 145150184 149557832 475926912 475926912 711593647 711593647 743099402 935588091 935588091 706034229 706034229 1053721025 1053721025 1045355679 747520210 470550538 343396370 746107938 746107938 772611201 772611201 831696483 870154803 870154803 717769448 340264074 126353408 329252970 920151115 920151115 465698864 524363927 524363927 134547552 159457380 159457380 159982692 159982692 189334534 457908390 457908390 289616034 330445362 330445362 293447744 293447744 47846608 647394947 647394947 382594266 851609609 851609609 311667190 729734624 891379112 891379112 810548355 144867396 1012505574 1012505574 871621451 1010091062 1010091062 545399120 558084664 698037861 698037861 161615636 161615636 0 655307721 655307721 631595096 649449121 649449121 603784016 59123264 59123264 17566720 46489728 46489728 437340484 437340484 402917888 402917888 529912244 529912244 403445694 429797094 429797094 351721120 351482340 413210944 413210944 59520332 258085668 408953056 1068726812 1068726812 339800170 339800170 271849714 271849714 167772180 371206204 371206204 251986202 182501844 400962032 518384094 518384094 306498266 353928953 911262363 911262363 944567572 944567572 712085913 824536065 824536065 621030570 705335351 721684533 721684533 862772275 862772275 824585641 932134011 932134011 479939815 382890576 510499979 780977496 780977496 650767409 832956659 832956659 491324474 491324474 342386034 342386034 544098962 645921688 645921688 570499089 1048135192 1048135192 640080184 762467253 762467253 617956556 223511500 223511500 162231344 160705136 160705136 107039912 261979569 683340485 683340485 676731525 595608165 595608165 329662848 413210196 639304457 675018501 675018501 849580241 849580241 616724547 606531800 239261952 243119296 243119296 224213276 82886800 180260636 180260636 130761312 130761312 216525521 216525521 198890228 263124556 556834617 692605969 700942653 700942653 121315829 192992368 737156213 737156213 735583508 615029697 547380136 230118292 193512564 192259004 566384488 566384488 373180627 8810664 382156914 382156914 264241404 276224852 324008244 324008244 319766726 201327752 50758196 40199188 67158024 209848424 560340417 560340417 556087328 583473216 583473216 40371600 26473056 717847112 717847112 970145530 970145530 425536807 1010533836 1010533836 1013973474 1045828455 1045828455 843368595 843368595 269957634 809533512 885047499 885047499 536985600 203474185 134816772 268484610 268484610 273029250 273029250 353013124 353895978 353895978 293094564 293094564 21285024 30191808 147548356 1067589638 1067589638 588067857 294652278 889590004 889590004 495542687 175357594 214312454 350174922 470306566 470306566 406619150 406619150 245292636 406358438 406358438 188646676 995448916 997583799 997583799 488759598 839584228 839584228 651091161 199263533 8519712 103147860 499317428 983987226 983987226 936149848 936149848 355182643 302996512 302996512 264129644 850071644 850071644 429528340 429528340 330302322 416692306 448826436 448826436 466800842 466800842 458228314 435804578 479239844 479239844 712816789 712816789 181034448 539905153 539905153 304108472 286787456 273058328 1047591447 1047591447 451556450 820178789 820178789 418042412 418042412 760910495 760910495 823198257 823198257 588251697 973868055 973868055 1033946973 1054139036 1054139036 697519814 697519814 538968578 741304424 741304424 699061605 682121029 608167181 83907913 67143688 830621696 830621696 270929992 860621968 860621968 636887561 636887561 292321216 349827042 349827042 279986334 739141164 739141164 714740461 851708115 851708115 333972355 294389811 588843699 588843699 671404096 816175214 816175214 729153821 558898109 993270694 993270694 779373321 46517504 513141246 513141246 62980192 327969648 327969648 327162322 50344098 80547544 479774883 696159693 696159693 580053347 704569317 1038238129 1038238129 889507824 957388713 957388713 574668945 574668945 158313765 211818033 823795789 839460035 839460035 727715841 727715841 537657900 1026569297 1026569297 969657847 969657847 937570558 937570558 906162687 546378273 427917886 931972471 931972471 468683518 752822355 752822355 373680282 383489770 544742000 544742000 556267809 623310304 634854264 810364035 810364035 618596616 618596616 574496529 574496529 269578880 575144064 575144064 641170905 651622360 651622360 55470688 119022408 119022408 209146016 311263354 311263354 240562724 406069520 406069520 330445414 271846146 142055504 173388916 173388916 464873144 588914303 588914303 676060809 676060809 6935168 6935168 122170848 637885272 653748120 653748120 662993945 662993945 621626480 546448392 546448392 789191215 789191215 421994513 236848664 841549069 841549069 0 0 0 485820904 485820904 269099290 1001163893 1001163893 1049479202 1049479202 143294079 154350372 478171136 478171136 455220975 447292758 973997273 973997273 739577002 739577002 579192443 885000040 885000040 804401410 608310665 608310665 776198714 776198714 842574463 842574463 710224085 142858432 184987756 247513308 300160417 300160417 710943856 1058079941 1058079941 152643168 152643108 121949720 102549688 102549688 12767424 1022455472 1022455472 455680863 93006062 445715084 445715084 306258066 411042944 411042944 671097136 671097136 382348436 509817246 509817246 509817246 858809872 858809872 768550508 966081621 966081621 671162373 725017597 725017597 1047599752 1047599752 472527206 498128513 498128513 147860064 567522689 567522689 564269248 602347521 602347521 566366433 677567717 678135332 678135332 64624368 163713232 217856688 217856688 211360760 87894784 224937792 233171436 233171436 232582492 427048492 427048492 275395608 275395608 125246482 55537568 602153481 632526496 632526496 105914496 536881152 609086601 609086601 302070675 564810152 564810152 558012705 602178769 602178769 576333585 942418951 942418951 831327731 509675912 497025126 425857446 1045948825 1056101343 1056101343 273292100 580542468 580542468 479889466 479889466 950541442 950541442 453322806 337787196 214236928 150865904 44890576 152968900 693668017 693668017 55050320 730497173 730497173 158949320 157464320 252244472 631582919 631582919 478537806 545738853 623601511 623601511 162556722 58761268 58761268 155238564 328618812 328618812 157945136 162796400 162796400 20579840 287971104 287971104 50874156 119096636 119096636 463489072 463489072 127975800 983665026 983665026 595929201 430440576 430440576 352619558 352619558 340853296 340853296 591404163 591404163 527417674 566051889 566051889 27863952 412477040 412477040 296053014 45109010 271919874 271919874 67317248 417902354 417902354 207813004 416131356 1034270926 1034270926 992296886 573756177 573756177 487604672 461153120 557409295 557409295 428467302 693318323 693318323 807192964 967982340 967982340 674159877 674159877 725615532 725615532 709041844 555560481 280368215 109783381 902433992 902433992 733348172 1009131618 1009131618 451023333 365179316 580000469 580000469 849429424 917201271 953624363 955988419 955988419 874633397 874633397 191888820 819685554 819685554 886003719 886003719 644469425 192679521 163825424 26256448 276877092 995986566 1001180535 1001180535 990435526 402714535 417720774 812552324 969655104 969655104 916241357 916241357 549658624 549658624 797835966 881426665 881426665 801653426 918348788 918348788 436966344 84739968 61944488 61944488 0 23593984 23593984 23069088 21180576 21180576 10559808 27927648 27927648 8991744 15943552 79474944 79474944 75097992 75097992 82128576 541594112 608191744 608191744 143254596 692923499 692923499 957189130 957189130 901795499 609799402 397071562 79723826 709110016 709110016 428604514 272967810 554521567 554521567 317244882 141836578 424987302 846514854 846515091 846515091 718540784 729025461 996675089 996675089 212208960 179755860 490677842 490677842 512465814 512465814 438145670 263323496 217738412 274278018 274278018 455340342 455340342 425218262 673846528 673846528 294407262 294407262 296202240 296202240 195756308 425003234 425003234 429316824 915191165 915191165 533855068 615551451 850183475 850183475 291619200 291619200 285286434 832648563 832648563 667469049 834176393 834176393 370431688 466462387 550848138 665547583 665547583 995515436 1046947416 1046947416 421893310 483672136 874908490 874908490 580127249 883481651 914705227 914705227 392320083 539305000 539305000 484620296 676536588 859549865 859549865 885239993 885239993 848408403 573432840 360210936 98843840 98843840 638133385 704820736 704820736 676980357 638743708 192075328 204944556 204944556 173712212 56283025 154539590 522340209 1013401217 1013401217 967375303 936992951 465061156 693202335 693202335 76332322 648701570 648701570 163612507 828062849 953324465 953324465 863712822 863712822 966436202 1070546175 1070546175 199408016 942897624 942897624 756159511 1052613904 1052613904 363204640 363204640 197642572 197642572 16939696 239163124 239163124 163873688 135372420 135372420 135137792 733184 536875520 536875520 839125202 945608705 1000362856 1000362856 747219157 747219157 744621577 744621577 783352073 788142045 900541114 900541114 100691040 546277781 546277781 148973956 976294009 976294009 703607424 519903710 519903710 741093662 865258012 865258012 842130195 993306660 993306660 460517680 460517680 296181700 311709232 311709232 286883840 18374720 8471232 21642880 21642880 16850976 21594112 21594112 338370880 338370880 102237720 245696763 403702099 496248602 598739970 734003445 734003445 823731747 823731747 722111650 722111650 719923092 609165248 937099066 937705908 937705908 137924240 85009352 102884152 102884152 76359936 101727888 318208282 318208282 271730632 271730632 281331906 294688488 608980656 608980656 738951442 738951442 410980488 410980488 112978328 235821068 588550209 588550209 1065370232 1065370232 908387075 908387075 310940377 310940377 665173993 665173993 83943648 550647233 554647985 554647985 35617936 590804513 672702572 672702572 1028691662 1028691662 998298481 815067099 815067099 984181269 984181269 719696352 719696352 367874885 871368424 871368424 210780565 784208896 784208896 783551325 545800736 712081592 935588091 935588091 706034229 706034229 929670192 1068234111 1068234111 1010973504 1010973504 1010030743 1065131673 1065131673 954779079 954779079 831696483 870154803 870154803 739842284 625238388 765463112 765463112 920151115 920151115 421658768 524363927 524363927 437159696 437159696 828666288 828666288 962607235 962607235 998948931 998948931 606525993 607307851 658674496 658674496 293447744 275193617 647394947 647394947 382594266 882030612 882030612 639424774 729734624 810827261 810827261 862494970 862494970 1012505574 1012505574 871621451 270345634 545399120 571786337 571786337 451258787 160567908 430907251 823230112 823230112 655307721 655307721 631595096 649449121 649449121 559126800 107049200 107049200 101168560 46489728 46489728 437340484 437340484 402917888 402917888 347269344 159765422 290773334 365218026 365218026 268454120 247150416 520828248 520828248 285421602 170401970 408953056 869409532 869409532 860060591 624184294 1013397698 1013397698 476265876 563620148 563620148 483411859 700514528 1053562033 1053562033 802093117 575302892 353928953 911262363 911262363 1040161776 1040161776 712085913 627823270 627823270 570455860 705335351 721684533 721684533 704905248 135792132 92274784 92274784 205783104 205783104 94967918 350436946 350436946 42502192 650767409 832956659 832956659 675289737 675289737 1007102986 1007102986 605818377 235530012 570499089 570499089 995655720 995655720 640080184 762467253 762467253 96174921 223511500 223511500 162231344 160705136 160705136 67972592 67972592 63447256 15149440 405930050 405930050 329662848 976924260 976924260 828901010 828901010 825494307 849580241 1055152216 1055152216 747078008 686061601 1054107024 1054107024 1042148895 315593421 111650640 111650640 555222561 589358385 635020176 635020176 11575372 263124556 263124556 230840696 230840696 141694980 141492456 192992368 192992368 149179844 222056868 222056868 230118292 230118292 204099192 204099192 566384488 1019611647 1019611647 993926845 993926845 985846103 985846103 272959552 272959552 271497230 1072703276 1072703276 715763492 427062048 67158024 209848424 209848424 184649764 184649764 121664520 565267472 638690713 1020864989 1020864989 959748559 970145530 970145530 425536807 1010533836 1010533836 1013973474 1013973474 909973004 909973004 724093065 852104403 852104403 885047499 885047499 807953418 574080498 561307290 711330225 904944460 904944460 326551684 326551684 305318018 156902408 293094564 293094564 812172675 812172675 809740609 1067589638 1067589638 266416477 640813120 889590004 889590004 495542687 433681526 1073326184 1073326184 979419543 470306566 1043893046 1043893046 403702278 406358438 673448477 677429637 677429637 494064558 918770110 918770110 1059232688 1059232688 651091161 199263533 8519712 103147860 411550336 411550336 633772464 633772464 906092571 906092571 959265946 959265946 539628801 882788385 882788385 429528340 880522514 880522514 626153776 626153776 836916970 885135043 885135043 805996122 1049293337 1049293337 571553550 712816789 712816789 181034448 539905153 539905153 146846276 146846276 4581504 1047591447 1047591447 74895436 820178789 820178789 401325550 404957743 760910495 760910495 823198257 823198257 588251697 973868055 973868055 1033946973 1033946973 570025953 90998687 538968578 538968578 741304424 741304424 699061605 740070149 740070149 83907913 201906414 830621696 830621696 338041098 860621968 860621968 306715459 136653060 136653060 161481060 1053611278 1053611278 726014133 706079253 706079253 177496129 0 0 409797066 409797066 748964230 748964230 816175214 816175214 729153821 558898109 993270694 993270694 779373321 580985169 650582408 650582408 62980192 327969648 327969648 327162322 126827640 126827640 357904058 357904058 179740260 583174641 583174641 583672755 615365154 829979271 829979271 826132324 574668945 574668945 1054001822 1054001822 988345273 988345273 839460035 727715841 727715841 545327372 971971087 971971087 1051880914 1051880914 1022473730 1022473730 598929557 832125281 832125281 277381952 277381952 34652688 348990320 359187882 359187882 123806472 902504760 902504760 659822802 623310304 634854264 668586593 668586593 608383113 608383113 574496529 574496529 113959168 575144064 575144064 641170905 651622360 651622360 275255450 275255450 182257404 524297962 964881639 964881639 240562724 646702055 646702055 138594360 142055504 142055504 1041457233 1041457233 588128453 588914303 588914303 676060809 676060809 634276017 634276017 591474609 637885272 653748120 653748120 662993945 662993945 638498825 688263257 688263257 789191215 789191215 421994513 236848664 841549069 841549069 269619714 939671891 939671891 485820904 485820904 169904391 1001163893 1001163893 445196551 445196551 243348992 154350372 260050504 455220975 455220975 331495210 973997273 973997273 407373330 579192443 579192443 354233898 804401410 1044793774 1044793774 608310665 633590658 806006791 842574463 842574463 710224085 541760516 672118081 672118081 232883240 232883240 710943856 710943856 655165145 690825460 690825460 624901929 784209469 784209469 548999457 672210668 769197223 815402560 815402560 403907164 403907164 244396550 411042944 411042944 273417244 975702086 975702086 768608011 742662061 742662061 261527461 768550508 768550508 966081621 966081621 671162373 725017597 725017597 1047599752 1047599752 472527206 498128513 498128513 94146851 567522689 567522689 539271168 602347521 602347521 566366433 677567717 678135332 678135332 63025888 161968824 217856688 217856688 59123632 51915904 80742592 293650530 293650530 133982026 394149738 394149738 348688338 284942544 328957504 328957504 297579658 60563688 29711968 595872736 595872736 537208833 576474416 576474416 169107888 169107888 199405568 199405568 404776448 404776448 330417968 831327731 831327731 497025126 497025126 96670798 1045948825 1056101343 1056101343 273292100 284114370 452077646 479889466 479889466 950541442 950541442 400158150 451794234 451794234 77994834 77994834 288623394 693668017 693668017 293608982 730497173 730497173 387090218 337253128 252244472 575914415 575914415 293650530 545738853 545738853 411379782 270009448 270009448 348914058 348914058 374303674 374303674 386417080 386417080 302040082 401114258 401114258 386925850 129533026 212944792 365470204 463489072 463489072 226615767 532940892 532940892 350273987 430440576 430440576 216056212 572047808 572047808 340853296 422930944 422930944 527417674 527417674 310191254 310191254 412477040 412477040 296053014 45109010 146017092 171551044 251275800 379872016 379872016 350419402 772949847 947619904 992296886 992296886 573756177 573756177 268435456 13609639 557409295 597532052 597532052 693318323 693318323 62778951 715163584 715163584 674159877 674159877 660028089 709041844 709041844 852884480 852884480 488684028 488684028 868491763 876649954 876649954 656878528 656878528 42211408 580000469 580000469 849429424 917201271 953624363 955988419 955988419 874633397 874633397 191888820 819685554 819685554 886003719 886003719 644469425 436269920 436269920 26256448 276877092 995986566 1001180535 1001180535 990435526 402714535 402714535 812552324 969655104 969655104 802001705 802001705 549658624 549658624 933675237 966922599 966922599 935121403 1012803382 1012803382 271389472 271389472 70638184 114346840 114346840 22569384 22569384 123348056 123348056 47855152 47855152 37761552 37761552 68835360 78943008 78943008 5611776 5716608 5716608 5192832 134815176 608191744 608191744 143254596 692923499 692923499 957189130 957189130 901795499 609799402 723643420 887885259 887885259 618180579 537201600 537201600 554521567 554521567 317244882 821248807 821248807 846514854 846515091 959493874 959493874 729025461 996675089 996675089 176686151 141597696 943783215 943783215 512465814 512465814 438145670 306564208 1006779687 1006779687 1012902175 1012902175 463580603 195642948 751754440 751754440 625757533 522998791 570967154 570967154 589376849 683949157 836447460 836447460 429316824 533855068 533855068 303376914 323392496 323392496 272629890 65135088 329120704 329120704 325669876 667469049 834176393 834176393 358638244 466462387 634392656 634392656 575160872 575160872 89797274 466666150 466666150 483672136 483672136 207367820 340032318 340032318 661251452 661251452 392320083 222897324 542523588 542523588 536919057 509079912 509079912 20620136 30722784 30722784 74255112 74255112 98843840 98843840 189850852 189850852 99268072 256056804 256056804 192075328 204944556 204944556 173712212 71327848 154539590 522340209 1013401217 1013401217 967375303 936992951 178706772 309849120 747567294 747567294 554543342 845102739 845102739 669131587 953324465 953324465 863712822 863712822 613156748 306073584 199408016 199408016 61818240 65147376 132223352 132223352 128596064 103617568 103028328 95820648 42391632 42391632 37770624 101241184 101241184 100666720 42161862 42161862 719534036 952119506 952119506 839125202 945608705 945608705 710737556 747219157 747219157 744621577 744621577 783352073 788142045 788142045 327365816 327365816 99446080 73259784 73259784 91234600 91234600 5049360 2140360 219421196 219421196 103293952 102634056 102634056 72100240 72100240 38245120 194872976 194872976 194169780 177505520 9051920 10098240 10098240 9969728 16834560 29442560 351006986 351006986 287127448 389224906 390853738 390853738 403702099 496248602 598739970 734003445 734003445 823731747 823731747 722111650 722111650 719923092 467016438 937099066 937705908 937705908 137924240 101843296 102884152 102884152 43399464 101727888 318208282 318208282 271730632 271730632 281331906 281331906 608980656 626476801 738951442 738951442 566369438 698044079 698044079 295218273 503411742 503411742 1065370232 1065370232 907067931 329513485 260200728 260200728 67682312 67682312 83943648 83943648 77300096 22168064 22168064 170134756 170134756 75170320 1028691662 1028691662 998298481 463996339 608840544 608840544 583003265 719696352 719696352 613955088 871368424 898783262 906251240 950277083 950277083 1054523918 1054523918 906285541 906285541 540115920 577242513 577242513 929670192 1068234111 1068234111 1010973504 1010973504 1010030743 1065131673 1065131673 954779079 954779079 387375698 747553344 747553344 739842284 625238388 765463112 765463112 526909612 487138316 487138316 427746233 566988346 585101235 585101235 828666288 828666288 962607235 962607235 998948931 998948931 606525993 823132180 823132180 774815711 847502862 847502862 547515968 579884616 640202011 882030612 882030612 639424774 615255836 810827261 810827261 862494970 862494970 36515088 291345506 331103250 331103250 541492448 571786337 571786337 451258787 160567908 430907251 823230112 823230112 333616714 333616714 555636496 555636496 88620072 88620072 107049200 107049200 101168560 270868480 270870786 270870786 268460176 268460176 479633440 479633440 457390688 394575926 465568306 465568306 247150416 247150416 520828248 520828248 285421602 170401970 318916128 869409532 869409532 860060591 624184294 1013397698 1013397698 797214990 696862805 563620148 483411859 700514528 1053562033 1053562033 802093117 575302892 336681544 143395908 488422948 1040161776 1040161776 332073554 804097798 804097798 406935459 406935459 302298242 920031844 1061472447 1061472447 905862838 905862838 876160779 500260207 94967918 350436946 821276361 821276361 812572035 721420245 721420245 675289737 1059139080 1059139080 1007102986 1046194334 1046194334 628155520 523289914 995655720 995655720 1045387453 1045387453 951398476 951398476 109952280 231426504 231426504 72598152 74075464 74075464 120418937 593977617 593977617 295537073 693557925 693557925 976924260 976924260 828901010 828901010 825494307 419469344 1055152216 1055152216 747078008 686061601 1054107024 1054107024 1042148895 920719306 920719306 732847445 555222561 589358385 635020176 635020176 9776704 9776704 7467264 175365008 175365008 155932328 141492456 141492456 126891452 225680104 229518632 229518632 225275276 225275276 204099192 232380260 957886724 1019611647 1019611647 993926845 993926845 985846103 985846103 272959552 435973096 435973096 1072703276 1072703276 715763492 427062048 243159480 48642576 99863240 99863240 69639168 122469664 565267472 638690713 1020864989 1020864989 959748559 238834979 34787856 613502116 613502116 944944300 944944300 813030705 909973004 909973004 929430608 929430608 852104403 809123723 807953418 807953418 574080498 561307290 711330225 904944460 904944460 458152624 458152624 305318018 302301308 403922504 428548716 812172675 812172675 809740609 549989440 690752676 690752676 640813120 640813120 8655641 308838562 433681526 1073326184 1073326184 979419543 356328375 1043893046 1043893046 604685841 571004417 673448477 677429637 677429637 494064558 918770110 918770110 1059232688 1059232688 150982802 448606038 686177142 686177142 77930818 501490646 501490646 384195052 906092571 906092571 959265946 959265946 539628801 882788385 882788385 136564507 880522514 880522514 626153776 626153776 836916970 885135043 885135043 805996122 1049293337 1049293337 571553550 146002240 2265156 184320 159629584 159629584 208220936 208220936 220594476 417040598 417040598 239912792 180006706 530979198 530979198 438181424 438181424 268452752 268460930 268460930 152494764 225629100 337736358 569501576 570025953 570025953 634702981 634702981 137153133 741870848 741870848 560073633 740070149 740070149 622635305 622635305 554802184 540155393 604638977 604638977 374852099 374852099 136653060 136653060 161481060 1053611278 1053611278 738348421 369860658 576789552 1040520469 1040520469 291976083 556279917 556279917 748964230 748964230 529401350 529401350 102631484 252202040 252202040 610625801 610625801 580985169 650582408 650582408 30077152 30077152 7999008 7999008 126827640 126827640 401552185 985930423 985930423 811997091 678712873 691546562 691546562 829979271 829979271 272786083 298918155 298918155 1054001822 1054001822 988345273 988345273 647805753 715091652 715091652 545327372 971971087 971971087 1051880914 1051880914 1022473730 1022473730 598929557 832125281 832125281 696529927 696529927 479672910 1033073273 1033073273 580153368 570425361 902504760 902504760 883380794 814485922 596677280 572442824 572442824 80910664 105095960 105095960 105074096 113959168 113959168 41233296 106106584 106106584 130735552 275255450 275255450 182257404 524297962 964881639 964881639 436458228 646702055 646702055 444732310 444732310 256076256 1041457233 1041457233 588128453 588128453 490134318 722149406 889852971 889852971 1024013953 1024013953 591474609 543443449 205816069 68107272 638498825 638498825 688263257 688263257 17437728 641990692 641990692 590363437 570721029 570721029 272941443 939671891 939671891 684271599 1014911114 1014911114 904532122 904532122 320896328 724061570 724061570 421712166 428104000 428104000 119411548 20058224 184029068 184029068 351145114 378955146 378955146 446771232 446771232 1044793774 1044793774 338037791 622530084 806006791 806006791 805490691 243611381 541760516 695926100 695926100 733091105 733091105 684916736 684916736 655165145 690825460 690825460 624901929 784209469 784209469 754903472 672210668 769197223 815402560 815402560 361853960 361853960 363959314 363959314 874732621 874732621 975702086 975702086 950012318 887816302 887816302 590304756 750813126 750813126 511781072 453384246 486639824 486639824 79950024 63513840 63513840 56132240 46260432 29810800 41635424 151266880 151266880 150144676 253252680 253252680 120063136 114050288 114050288 60767856 60767856 64108160 83959848 131787096 131787096 124194720 124194720 293650530 293650530 133982026 394149738 394149738 348688338 284942544 328957504 331553163 581948361 581948361 665597040 665597040 595872736 587229873 587229873 578104209 50610432 50610432 199405568 199405568 404776448 404776448 330417968 330417968 414645014 415295648 594398374 594398374 560819505 716462528 1013289521 1013289521 342615374 615630978 951322311 951322311 915456582 221374544 400158150 451794234 451794234 814141801 814141801 940707253 940707253 168577252 293608982 293608982 387090218 758401896 758401896 611630516 777650604 777650604 2097152 33554704 33554704 18251888 270009448 270009448 348914058 348914058 374303674 394598016 394598016 386417080 302040082 401114258 401114258 386925850 129533026 212944792 365470204 365470204 245458986 228977004 532940892 532940892 350273987 358613091 358613091 216056212 789769344 789769344 240816557 239750400 241621404 241621404 136804620 310191254 310191254 273601826 203575672 454096010 454096010 481041446 679324418 679324418 379872016 379872016 350419402 772949847 821741072 821741072 981532928 983638359 983638359 440434688 440434688 268451990 597532052 597532052 570577542 978246807 978246807 715163584 809566211 809709699 893912855 1045435291 1045435291 475206285 852884480 852884480 488684028 488684028 868491763 876649954 876649954 769353353 712861381 262143127 112719430 1063428708 1063428708 946110876 435500554 967691975 967691975 174994454 323602846 392690106 520515002 520883262 1040374817 1040374817 421045284 436269920 834858048 856791345 856791345 412887795 1004086134 1004086134 811335825 864585811 864585811 412460054 216080844 480708686 480708686 741793316 741793316 631642473 933675237 966922599 966922599 935121403 1012803382 1012803382 271389472 271389472 90177680 114346840 114346840 45732800 45732800 123348056 123348056 47855152 47855152 37761552 37761552 68835360 78943008 78943008 27787552 31857120 569771328 569771328 134815176 138629004 620069440 620069440 617949897 158075264 151520292 232000236 841008017 841008017 723643420 887885259 887885259 618180579 960036967 960036967 540550274 540329856 26215008 821248807 869926626 869926626 837947890 959493874 959493874 847271571 448301175 228120918 674596364 674596364 943783215 943783215 511594612 511594612 297326022 810611840 1006779687 1006779687 1012902175 1012902175 736236021 736236021 751754440 751754440 625757533 522998791 570967154 570967154 589376849 683949157 836447460 836447460 323486898 323486898 320802962 303376914 323392496 323392496 32605904 65135088 329120704 329120704 325669876 325669876 365064934 433295594 433295594 164692704 634392656 634392656 729809598 729809598 658518242 627172360 553699209 625476777 828949769 828949769 805831683 42726480 576733872 949011005 949011005 867985104 867985104 686967110 999698720 999698720 984951639 937545136 937545136 909764379 582270744 312347904 20343232 20343232 56550912 59389456 59389456 17548800 17548800 28185216 66370544 66370544 62329488 71327848 71327848 507364654 531739963 718490309 975105889 975105889 1059326271 1059326271 747567294 747567294 554543342 845102739 845102739 669131587 621546537 90180993 32638368 32638368 28734048 28734048 12290112 33900432 61818240 76154118 518666670 518666670 507984030 523371110 523371110 471823598 315753884 315753884 241882524 241882524 350531298 350531298 276916416 276916416 719534036 952119506 952119506 971381223 971381223 364826535 431936870 431936870 48548304 163896202 393141670 444990304 1028523537 1028523537 565714095 327365816 19038472 5776896 5776896 148479996 148479996 675173629 675173629 540640016 940482614 940482614 424629054 424629054 661426192 856748080 856748080 810239360 822908760 822908760 72088712 295283210 309392410 309392410 60353482 316239114 316239114 351006986 351006986 287127448 389224906 390853738 390853738 334465576 102828496 87557928 64562928 557876928 574742673 591414664 591414664 73957553 0 69551104 70118664 70118664 68093184 407816 101843296 101843296 17867200 18473728 19223136 19223136 53364992 108922776 108922776 41584024 268509184 268509184 626476801 889910576 889910576 905096378 905096378 698044079 746644110 923514918 923514918 285508096 286575138 286575138 124847994 121942824 121942824 112769016 98517152 98517152 75500000 28460496 585668277 713606229 713606229 198722209 29661716 55264168 646459672 646459672 245106148 608840544 608840544 583003265 663995053 761822816 761822816 519571409 898783262 906251240 950277083 950277083 1054523918 1054523918 906285541 906285541 445817634 536612862 539827504 539827504 483343566 641044252 641044252 620802048 524671853 168051135 901196289 901196289 1034489042 1034489042 269189264 775980491 775980491 435295206 435295206 526909612 526909612 487138316 487138316 732929006 732929006 942807297 942807297 951718339 951718339 686429637 1058668700 1058668700 412110926 758027856 823132180 823132180 774815711 847502862 847502862 817624514 817624514 640202011 640202011 738272000 738272000 608024664 873079113 873079113 872973648 872973648 832344848 832344848 815268947 887141491 887141491 881817099 972242364 972242364 316222704 988561381 988561381 601818787 290396242 349052424 555636496 555636496 552544008 552544008 276886786 276886786 19737920 270868480 270870786 270870786 430797092 430797092 480545024 480545024 457390688 394575926 526911088 526911088 313526136 338167050 742917467 742917467 371855524 939673307 939673307 798098758 577466424 577466424 747015885 747015885 797214990 797214990 696862805 411610357 460793128 460793128 470527416 470527416 468122934 336681544 336681544 731790907 805504521 805504521 738868228 332073554 804097798 822955040 822955040 805429251 17607715 920031844 1061472447 1061472447 905862838 905862838 876160779 500260207 638632730 638632730 985369415 1017777415 1017777415 721420245 721420245 599512421 1059139080 1059139080 475336989 1046194334 1046194334 724775733 724775733 638749360 917736992 1045387453 1045387453 951398476 951398476 136845868 231426504 231426504 253049624 253049624 74075464 120418937 593977617 841429233 841429233 824387537 993587376 993587376 831553778 596803141 695838705 695838705 940216337 940216337 971219203 971219203 172682624 1020054912 1020054912 938213803 920719306 920719306 732847445 131614657 113633496 114869436 177783140 177783140 246028396 246028396 162493012 155932328 155932328 137839656 137839656 153849704 225680104 229518632 229518632 225758848 229500160 229500160 232380260 957886724 957886724 197672627 152381988 723140268 723140268 263142780 263142780 435973096 435973096 345170490 128152672 48278872 243159480 243159480 48642576 168085768 168085768 136958132 122469664 122469664 195897819 820703536 820703536 677486067 537480012 386271499 655049868 655049868 944944300 944944300 898018920 898018920 482087406 929430608 929430608 809123723 809123723 615727900 909209949 940229259 1046165151 1046165151 473345620 473345620 458152624 458152624 303089854 302301308 403922504 428548716 723072593 723072593 537404512 368509875 771664609 771664609 731171445 719378963 719378963 454854185 308838562 845866544 845866544 829633443 120271771 607126024 607126024 604685841 571004417 453034150 37748880 566280276 727859261 727859261 650613545 655558801 655558801 414527298 448606038 717294481 717294481 77930818 501490646 501490646 384195052 468113910 468113910 474727268 474727268 169583876 169583876 335191222 335191222 912694018 912694018 44617666 313050450 313050450 307364880 277487246 277487246 269228070 428744716 482022416 683335489 683335489 43605552 597860945 597860945 208220936 208220936 279359840 941080657 941080657 239912792 808477431 808477431 530979198 438181424 438181424 909167095 909167095 268460930 197166044 266387964 337736358 337736358 1051847415 1051847415 985737242 985737242 216648001 741870848 741870848 664977345 704099553 704099553 703229638 701571813 554802184 540155393 604638977 604638977 374852099 824396057 909461522 909461522 656848827 896598194 896598194 738348421 369860658 576789552 1040520469 1040520469 429541876 556279917 556279917 231285996 159777372 244319856 433721602 433721602 586716880 586716880 302866374 754603529 754603529 122306600 122306600 52877616 93475128 571873856 571873856 545920065 554304577 554304577 985930423 985930423 811997091 678712873 691546562 691546562 385265122 83754880 272786083 298918155 298918155 572882176 572882176 25875552 443869180 443869180 1062972920 1062972920 110831676 220272072 302027964 793265731 830628482 830628482 478957105 414367946 591682389 591682389 696529927 696529927 479672910 1033073273 1033073273 603981490 603981490 876945936 883380794 883380794 814485922 596677280 556484721 38003352 33554496 33554496 111625536 111625536 44611864 16008768 50121088 106106584 106106584 130735552 130735552 94133672 278891328 463461952 463461952 436458228 436458228 338989220 434182278 444732310 444732310 256076256 260742068 301054524 744550459 744550459 490134318 806359469 889852971 889852971 1024013953 1024013953 569453733 687865861 687865861 757022253 757022253 704659016 178142281 752074269 752074269 741409948 741409948 590363437 558051489 272941443 272941443 571196950 684271599 732431744 1014911114 1014911114 904532122 904532122 138545589 724061570 724061570 421712166 428104000 428104000 334626985 495921694 950019401 950019401 351145114 378955146 378955146 446771232 690163744 690163744 975302656 975302656 714066633 802787581 802787581 194143850 608450560 608450560 695926100 695926100 733091105 733091105 684916736 684916736 120141453 660611380 660611380 254019965 202219116 754903472 754903472 96616905 93061248 275920874 284466050 361853960 361853960 408548434 908317014 908317014 1024194028 1024194028 950012318 950012318 887816302 887816302 590304756 750813126 750813126 646605424 789367869 789367869 768949373 84386437 75755592 349219466 349219466 596914898 893460651 893460651 715783681 715783681 687400225 742937769 742937769 287342627 157450124 550614224 550614224 705538049 705538049 655865368 655865368 638037296 585419217 585419217 567767856 73731080 73149832 303131224 303131224 306220450 306220450 303487506 331553163 581948361 581948361 884998258 884998258 573386001 587229873 587229873 578104209 159654176 182649504 182649504 168646692 267010752 267010752 185234896 185234896 152268356 440667748 594398374 594398374 808075749 808075749 1013289521 1013289521 342615374 676517780 976097431 1052545610 1052545610 221374544 156480068 56159408 165845121 973652492 973652492 940707253 940707253 671402557 747033955 747033955 942562303 942562303 758401896 611630516 777650604 777650604 573322584 707603537 707603537 252287280 252287280 58880416 58880416 14976672 24253344 394598016 394598016 38456346 5690496 5690496 5768832 126623624 308811720 309230626 369221658 369221658 257490958 829992660 829992660 603451379 866437491 866437491 252385288 252385288 789769344 789769344 525262014 975094830 975094830 676931207 280560529 239871866 435497958 435497958 203575672 535749868 943775377 943775377 788041984 788041984 697575689 715797847 887172173 887172173 584922688 77071944 981532928 983638359 983638359 440434688 440434688 373891098 782282884 782282884 683300368 978246807 978246807 679120646 809566211 809709699 1024712738 1045435291 1045435291 487791290 770092615 770092615 186146806 1038436176 1038436176 956098247 769353353 769353353 712861381 262143127 112719430 1063428708 1063428708 946110876 814793283 967691975 967691975 174994454 414012772 414012772 520515002 520883262 1040374817 1040374817 775487265 421045284 834858048 856791345 856791345 412887795 1004086134 1004086134 986088336 985061703 864585811 412460054 216080844 480708686 480708686 741793316 741793316 936429256 936429256 314708178 340009330 354892074 354892074 96733416 123212288 123212288 90177680 17992864 17992864 45732800 57012016 58134448 58134448 30475488 23732352 58320400 58320400 54366128 41946608 47030080 60131425 564084321 569771328 569771328 551580097 145936969 620069440 620069440 617949897 629084330 669296412 806136085 841008017 841008017 184582082 184582082 554552577 554552577 960036967 960036967 827213384 827213384 344362690 470950724 1051276622 1051276622 1049174363 837947890 847271571 847271571 448301175 253991169 674596364 674596364 875444749 875444749 196127234 372302716 372302716 1017593160 1017593160 886144232 886144232 773203728 736236021 736236021 180748753 63178992 134492192 134492192 285214784 285214784 142944352 142944352 169031984 306042136 354628954 354628954 239665866 70390536 350522500 350522500 290066594 290066594 268570626 80253122 72423425 655046345 743060524 743060524 522893210 522893210 61954002 721633027 857487093 857487093 892738733 892738733 616836455 676676802 828949769 828949769 933311728 933311728 816828875 949011005 949011005 867985104 867985104 686967110 999698720 999698720 984951639 937545136 937545136 909764379 582270744 312347904 112493632 115703456 115703456 56550912 280275266 280275266 290800608 292019010 331304818 331304818 62329488 62329488 274910368 317729474 531739963 718490309 975105889 975105889 1059326271 1059326271 1057827503 923414728 748696017 516586074 987990566 987990566 830824995 161286907 975244966 975244966 567585872 436621984 26675840 55741632 55741632 89205888 518666670 518666670 507984030 523371110 523371110 471823598 448974808 315753884 241882524 241882524 350531298 350531298 276916416 276916416 15499617 551568328 627181286 971381223 971381223 635632077 635632077 431936870 48548304 163896202 393141670 393141670 1028523537 1028523537 565714095 105251856 202263009 673712197 705229885 705229885 716102997 716102997 675173629 540640016 940482614 940482614 424629054 424629054 661426192 856748080 856748080 810239360 822908760 822908760 72088712 324666400 369693586 369693586 60353482 316239114 316239114 94153864 276145026 276145026 124946608 86118696 236466313 240596643 358038186 638519474 638519474 557876928 893389227 893389227 742927760 742927760 760441381 1014657415 1014657415 839527940 839527940 255000640 110626944 110626944 105939592 76084736 76084736 32550864 131799208 131799208 38187184 35294848 268509184 286343696 387325002 889910576 889910576 905096378 905096378 621230121 746644110 923514918 923514918 799014525 286575138 286575138 124847994 121942824 121942824 119574528 119574528 98517152 75500000 66634336 585668277 713606229 713606229 198722209 8782240 566971968 646459672 646459672 90587665 79814856 624241696 624241696 255463277 761822816 761822816 223663136 223663136 659458284 659458284 581436753 581436753 564023665 546622017 547832129 814254848 823267875 823267875 961742498 961742498 953816775 620802048 620885140 940925868 940925868 901196289 901196289 1034489042 1034489042 269189264 775980491 775980491 435295206 435295206 170394648 170394648 392823854 834799780 834799780 732929006 942807297 942807297 951718339 951718339 748159256 1058668700 1058668700 865620136 758027856 839516199 839516199 746758190 9634883 283165187 817624514 950010207 1048765319 1048765319 738272000 983443855 983443855 873079113 873079113 872973648 872973648 849607324 832344848 815268947 887141491 887141491 881817099 972242364 972242364 429412002 988561381 988561381 601818787 290396242 349052424 349052424 546369320 552544008 552544008 276886786 276886786 19737920 38382848 38382848 276566544 442439002 504391390 504391390 480545024 512754210 512754210 526911088 526911088 495976514 338167050 742917467 742917467 520787788 939673307 939673307 844678576 577466424 1016518978 1016518978 747015885 737149941 971873636 971873636 411610357 153936048 457784512 457784512 243566988 229199048 229199048 143984899 731790907 805504521 805504521 820734340 820734340 524148588 822955040 822955040 956699014 956699014 709767472 546622017 560688814 560688814 201927231 11027776 339321424 638632730 638632730 985369415 1017777415 1017777415 717491957 570556574 482751314 482751314 34083536 929110568 929110568 152162577 724775733 724775733 605473792 917736992 917736992 261075063 754138196 754138196 165085476 169297712 220695044 253049624 253049624 59050480 65298928 591419409 841429233 841429233 824387537 993587376 993587376 831553778 596803141 695838705 695838705 940216337 940216337 971219203 971219203 891928774 1020054912 1020054912 938213803 548728576 623755593 623755593 643072129 643072129 607158817 572539272 177783140 246028396 246028396 204530688 204530688 68683272 137839656 137839656 153849704 153849704 223595148 223595148 225758848 229500160 229500160 209127816 810818872 810818872 138717440 152381988 723140268 723140268 263142780 263142780 390633480 396948746 396948746 128152672 650257505 650257505 696963540 696963540 563009060 667141385 667141385 722525849 722525849 690038812 546537805 464955136 628296712 628296712 561987489 655049868 655049868 915265862 915265862 898018920 898018920 19917344 19917344 36744448 36744448 37062400 615727900 909209949 940229259 1046165151 1046165151 465442344 253721908 18486816 18501152 196100128 196100128 65164864 65164864 723072593 723072593 63971377 368509875 771664609 771664609 731171445 719378963 719378963 454854185 192464106 845866544 910079506 910079506 338875937 841512458 841512458 604102665 880448450 880448450 553260993 566280276 727859261 727859261 650613545 655558801 655558801 615612640 414527298 717294481 717294481 393874537 347669608 347669608 180290790 73922952 330658292 474727268 474727268 27910404 40635792 335191222 819335235 912694018 912694018 614466752 351408010 936122402 992352611 992352611 550509168 682163729 682163729 665574412 683335489 683335489 43605552 597860945 597860945 29679172 138032100 279359840 941080657 941080657 421525030 808477431 808477431 504228894 433139422 152692226 909167095 909167095 182763888 197166044 910213275 910213275 653331714 1051847415 1051847415 985737242 985737242 919863520 216648001 518204382 664977345 664977345 703229638 703229638 701571813 494912035 387918848 387918848 272182434 293026722 824396057 909461522 909461522 656848827 896598194 896598194 354189592 354189592 239795596 224263948 253418046 429541876 805045537 805045537 248777436 894899293 894899293 433721602 433721602 586716880 962708596 962708596 754603529 754603529 784108810 784108810 291861922 812971328 812971328 571873856 545920065 554304577 554304577 545524832 33431520 191468544 191468544 70023732 77664928 77664928 373399558 450974327 464266959 464266959 1043939227 1043939227 540710021 547476108 917118232 1062972920 1062972920 161949440 607322650 745776476 793265731 830628482 830628482 478957105 414367946 998729731 998729731 102657120 291236970 291236970 94714504 894647139 894647139 603981490 876945936 876945936 305802264 24207912 42256464 666276176 666276176 571539456 571539456 111625536 111625536 111533168 68061264 76198672 76198672 114552840 114552840 105630408 57662648 278891328 278891328 22668960 345026384 345026384 424150182 424150182 191366580 329549700 329549700 86292264 86053088 744550459 744550459 342035346 806359469 806359469 0 0 0 0 687865861 687865861 757022253 757022253 704659016 178142281 1045447755 1045447755 943725257 741409948 487004580 0 0 335754240 897844490 899942763 899942763 734003445 734003445 209519570 209519570 322605324 451714534 493772284 493772284 124931754 334626985 334626985 495921694 950019401 950019401 74855312 74855312 53586044 249979876 690163744 987910549 987910549 977498327 892592187 802787581 802787581 792025460 792025460 608450560 608383113 119273016 266048912 266048912 224568764 157513060 75625624 75625624 4744448 76385352 76385352 10864840 10864840 92675304 96545792 96545792 84243936 91046048 209806120 408548434 908317014 908317014 1024194028 1024194028 1013320792 1013320792 177081795 433463457 718244976 718244976 537067232 646605424 789367869 789367869 768949373 84386437 75755592 349219466 349219466 596914898 893460651 922755166 922755166 715783681 687400225 742937769 742937769 552027236 537756201 550614224 550614224 705538049 705538049 655865368 655865368 638037296 585419217 585419217 567767856 482286974 507865260 507865260 293345408 306220450 501818862 501818862 260942401 857335347 857335347 884998258 884998258 573386001 1067780543 1067780543 412039795 1042056500 1042056500 730226985 734962449 734962449 589611551 1015401111 1034020642 1034020642 440667748 559828550 564401220 808075749 808075749 675157252 402923267 335971591 676517780 976097431 1052545610 1052545610 454070222 471975226 471975226 436330518 973652492 973652492 678596292 678596292 671402557 747033955 747033955 942562303 942562303 210406335 35393040 639906844 639906844 573322584 707603537 707603537 252287280 252287280 38174896 38174896 327440616 339334122 369624208 369624208 365609672 286922274 384061384 384061384 126623624 321862276 477526590 477526590 369221658 271671344 829992660 829992660 891311899 891311899 866437491 335597785 252385288 119706680 694876600 722332725 975094830 975094830 1017138566 1017138566 713655380 435497958 435497958 286966536 535749868 943775377 943775377 788041984 788041984 955266754 955266754 912462233 887172173 608310798 608310798 475529347 276457431 549844747 945525128 945525128 986100617 986100617 782282884 683300368 683300368 673743360 673743360 688449668 688449668 1024712738 1024712738 487791290 487791290 376545966 902371499 902371499 1038436176 1038436176 956098247 176922768 197661828 197661828 331420732 591587834 591587834 356676472 481440479 814793283 814793283 672577798 672577798 563035233 414012772 285734946 429916518 557321342 775487265 775487265 286064165 268500994 268500994 191132772 581560788 581560788 986088336 986088336 985061703 48255175 775210654 877448331 953175181 953175181 279749784 843842818 936429256 936429256 512266650 275370028 260640984 542482988 608508626 608508626 738607364 738607364 624425328 264455104 111858512 313414498 313414498 279107600 279107600 277985888 58320400 331448434 331448434 41946608 59291296 60131425 564084321 827086272 827086272 551580097 145936969 554509605 554509605 704781490 704781490 669296412 806136085 806136085 876099965 876099965 902642952 902642952 490849152 103400052 170468628 827213384 827213384 344362690 470950724 1051276622 1051276622 1049174363 573048081 574113553 574113553 176996673 253991169 253991169 179998053 875444749 875444749 512309880 604057803 834117883 1017593160 1017593160 639380052 639380052 540347629 450809633 785957077 785957077 644241436 661269917 759378093 759378093 545522020 1049049107 1049049107 981825840 981825840 442693910 384409836 384409836 98665344 350522500 350522500 344622178 390780090 390780090 310923354 72423425 655046345 797075509 797075509 583644756 583644756 542183585 721633027 857487093 857487093 892738733 892738733 616836455 676676802 676676802 941561449 941561449 933311728 873014975 873014975 456400992 201173428 152560324 291649228 339179680 357224994 357224994 317987602 317987602 48967832 97603592 346883914 346883914 887732745 887732745 391938754 391938754 390909114 390909114 354254338 817375122 817375122 569382947 861945954 861945954 317729474 317729474 314044288 274270688 274270688 189485204 1057827503 1057827503 923414728 748696017 516586074 987990566 987990566 830824995 529153140 975244966 975244966 567585872 436621984 59208240 55741632 55741632 89205888 131208256 131208256 123209400 85460520 120830824 448974808 448974808 350519640 350519640 85999976 85999976 9175680 9175680 7095808 15237504 142345985 142345985 159174564 671125409 671125409 635632077 684306577 732763261 732763261 584980856 137889560 743967233 743967233 128321016 105251856 202263009 673712197 705229885 705229885 716102997 716102997 126612600 126612600 112210720 112210720 69470720 480907148 480907148 238303442 25301088 25301088 385549120 385549120 621159483 621159483 369693586 612521042 655917505 655917505 611981193 848432515 848432515 836251419 637735521 553389080 236466313 240596643 358038186 638519474 638519474 538709505 893389227 893389227 742927760 742927760 760441381 1014657415 1014657415 839527940 839527940 255000640 110626944 110626944 105939592 76084736 76084736 43410544 131799208 131799208 35294848 107688112 118228504 286343696 319469184 319469184 302773266 578955384 621230121 679618592 696727653 721913416 799014525 799014525 763265688 724227381 617143549 539806977 114973072 332366026 332366026 346557600 346557600 304121248 145768708 145768708 813730818 813730818 272009414 818882496 818882496 142895489 34008097 597811569 681619777 681619777 562965557 663618593 663618593 827377585 827377585 659458284 659458284 581436753 581436753 619580256 885239787 885239787 819465107 823267875 959077663 961742498 961742498 969948881 969948881 726275222 940925868 940925868 995740922 995740922 982082073 981540951 219247243 269583302 269583302 283486544 421843102 461373558 779227216 930087867 930087867 834799780 334956848 809836980 990259430 990259430 852889898 784335069 748159256 865620136 865620136 360633912 839516199 839516199 1006853132 1006853132 805699598 548456277 950010207 1048765319 1048765319 782557594 983443855 1055267295 1055267295 1052434073 1052434073 964823994 964823994 609551802 806686730 882021330 882021330 507513316 339890880 319843456 429412002 429412002 422188326 379590418 379590418 341048922 291639888 88449056 88449056 106811432 106811432 53397968 53397968 36699408 33973504 276566544 442439002 504391390 504391390 478774784 512754210 512754210 1035543629 1035543629 495976514 302515794 808081093 808081093 520787788 520787788 844678576 844678576 738738683 1016518978 1016518978 737561999 737149941 971873636 971873636 846574320 846574320 494778315 272643936 243566988 273955344 273955344 121963242 371204132 371204132 771148198 820734340 820734340 524148588 524148588 303629796 956699014 956699014 709767472 279649446 560688814 560688814 908905272 908905272 850186299 836763872 881018337 881018337 604713993 140297 740819375 740819375 1014247028 1014247028 579609399 929110568 929110568 877805332 490099593 120186168 605473792 841976323 947239380 947239380 816391491 284783800 253719053 156269508 86005920 86005920 6605184 59050480 65298928 141052432 141052432 551572448 554222625 556994021 556994021 292429218 818220674 818220674 425143972 425143972 620765564 620765564 891928774 891928774 585802041 736684193 736684193 715393365 470305283 112724824 643072129 643072129 607158817 572539272 243706728 243706728 228712812 228712812 204530688 88617088 134549632 134549632 9928704 10171968 90133536 214883976 214883976 181994096 209127816 209127816 319789348 319789348 676098320 845782213 845782213 565100867 325032598 421753348 421753348 438117414 438117414 255063382 650257505 1037043166 1037043166 696963540 586288324 667141385 667141385 722525849 722525849 690038812 546537805 67293192 628296712 628296712 896213784 896213784 861542067 260069486 302438418 479638620 479638620 19917344 80853056 103170706 103170706 380469840 380469840 1017526852 1017526852 848747091 957882237 957882237 1003126892 1003126892 331382827 1013842111 1013842111 1021446555 1021446555 431496344 312120115 320630914 570627360 965619819 965619819 967055470 967055470 690411813 654988301 313940001 540961939 910079506 910079506 488641553 841512458 841512458 924522410 924522410 880448450 553260993 553260993 595702265 601352185 601352185 284114770 615612640 615612640 556352801 581310796 692358817 692358817 685813616 347669608 732060241 732060241 100694416 1043873149 1043873149 285447588 519645150 519645150 819335235 819335235 614466752 614466752 351408010 936122402 992352611 992352611 683856069 683856069 682163729 665574412 602749152 764785852 764785852 680077585 659434801 659434801 547514784 547514784 275024868 421525030 421525030 475951398 504228894 504228894 433139422 411516904 510436270 510436270 221251488 221251488 910213275 910213275 653331714 831073739 831073739 321973636 919863520 919863520 781542186 781542186 776858781 785941587 785941587 365807790 1004298859 1004298859 387918848 387918848 272182434 293026722 617910464 617910464 659212128 659212128 603979904 207318436 354189592 354189592 170590638 20792992 88136104 88136104 805045537 805045537 248777436 894899293 894899293 496555315 448196731 448196731 962708596 962708596 1032759983 1032759983 784108810 784108810 291861922 930120194 930120194 269501371 60694128 60694128 60694128 33949280 33431520 191468544 191468544 119982080 119982080 77664928 373399558 450974327 464266959 464266959 1043939227 1043939227 540710021 547476108 917118232 917118232 742826864 742826864 635646441 745776476 745776476 380122900 454235020 454235020 140083234 998729731 998729731 177467988 291236970 291236970 94714504 894647139 894647139 846600715 645345538 861680568 861680568 568349848 902722296 902722296 666276176 809257424 809257424 544549761 544549761 111533168 580113216 649431633 649431633 615609088 615609088 105630408 57662648 55437792 268964714 268964714 389300736 389300736 424150182 438442948 448190230 448190230 404806736 8430848 201328694 386140218 386140218 377786922 939743850 956774439 1033627303 1033627303 278351725 7461568 71640200 219901992 242415308 242415308 226533936 118158363 1045447755 1045447755 943725257 835002937 835002937 436783792 967355878 967355878 897844490 899942763 899942763 496728566 890738809 890738809 209519570 322605324 451714534 493772284 493772284 124931754 330207058 330207058 360074712 360074712 42281040 400558498 873697370 873697370 814144491 629256484 987910549 987910549 977498327 892592187 471149070 471149070 792025460 908517792 908517792 355553648 355553648 675283213 675283213 224568764 797175992 797175992 241259681 210257100 210257100 239199580 680117712 680117712 92675304 96545792 96545792 84243936 84243936 209806120 209806120 672391240 1015647757 1015647757 1032507438 1032507438 1013320792 803474787 803474787 718244976 718244976 122174976 617834692 617834692 554305752 554305752 721719329 721719329 1069701184 1069701184 662964455 641992808 922755166 922755166 141292932 476710060 476710060 552027236 552027236 542176496 542176496 56852113 686198656 686198656 240848420 589260692 589260692 51794993 202639446 411305130 482286974 507865260 507865260 174126060 229152022 501818862 501818862 315109332 857335347 857335347 539986299 433103232 433103232 1067780543 1067780543 412039795 1042056500 1042056500 730226985 734962449 734962449 635767200 1015401111 1034020642 1034020642 433438816 807540736 807667971 816070979 816070979 885561731 951884249 951884249 508215823 480827100 452775894 353516826 454070222 471975226 471975226 436330518 381622603 148464661 185895111 880708509 880708509 625661865 609539389 708316689 846332483 846332483 737949816 789977661 789977661 646059840 135008544 0 16912416 48234960 65011744 65011744 327440616 339334122 339334122 365609672 365609672 286922274 384061384 384061384 111429760 321862276 477526590 477526590 271671344 357040272 783995962 827982497 891311899 891311899 826327203 335597785 211902824 140681472 694876600 722332725 774406432 774406432 1017138566 1017138566 713655380 415181812 273154800 286966536 286966536 238175164 238175164 158892504 973676174 973676174 955266754 912462233 247467969 608310798 608310798 475529347 276457431 549844747 945525128 945525128 986100617 986100617 600256288 247251268 168979220 5306388 525312 688449668 688449668 558180513 223359141 6365568 72689968 347318651 902371499 902371499 841309725 523289406 523289406 344050204 344050204 197661828 331420732 864029496 864029496 711211737 640564696 241465364 235055090 672577798 672577798 563035233 626123433 764653075 987709143 987709143 805274076 453785316 453785316 927688488 927688488 191132772 581560788 581560788 137023621 287306247 978900561 978900561 775210654 877448331 953175181 953175181 774105937 843842818 843842818 709513532 709513532 631635997 518859112 542482988 608508626 608508626 738607364 738607364 624425328 264455104 111858512 313414498 313414498 279107600 308661760 308661760 13184018 331448434 331448434 57738368 59291296 59291296 32752880 827086272 827086272 280109121 8388864 769069141 769069141 704781490 801247377 801247377 736298072 762000813 876099965 1054544456 1054544456 902642952 956580489 960005833 960005833 548931393 269953251 412154919 0 0 908600640 908600640 573048081 574113553 679773044 679773044 582271329 631647312 631647312 607075593 110036144 512309880 604057803 975453061 975453061 485904063 729875512 729875512 540347629 450809633 785957077 785957077 644241436 1022212522 1022212522 759378093 579231744 1049049107 1049049107 1025849781 981825840 698610021 698610021 1004672896 1004672896 98665344 302514304 344622178 390780090 403194892 403194892 69017772 218636460 797075509 797075509 766520108 583644756 732954784 743908521 743908521 304470892 304470892 528445722 528445722 461115318 622446211 941561449 941561449 524348470 873014975 873014975 239012176 239012176 357238348 357238348 339179680 357224994 357224994 317987602 317987602 48967832 48967832 346883914 919575289 919575289 887732745 391938754 391938754 390909114 390909114 354254338 871563808 871563808 848509841 861945954 861945954 317401328 47564544 47564544 23096912 189485204 189485204 340923396 387845658 387845658 427988206 427988206 446278454 446278454 365125002 529153140 529153140 174562240 174562240 148610724 180609252 180609252 139046992 119225406 440825774 522839358 522839358 511724750 511724750 505987774 481592830 470045006 470045006 224528702 284165058 284165058 276825280 276825280 15237504 142345985 146163556 159174564 671125409 671125409 625632704 684306577 732763261 732763261 584980856 126092912 743967233 743967233 199234172 598903937 598903937 556696292 156238500 156238500 644406262 644406262 506987449 126612600 322177092 322177092 279218608 480907148 572446054 959766944 959766944 842781266 842781266 839107306 621159483 621159483 365082306 612521042 655917505 655917505 611981193 848432515 848432515 836251419 637735521 553389080 111198552 111198552 46920912 155722760 222372012 222372012 220574884 151202084 159164546 407039246 472864494 496576110 496576110 349814948 79568680 79568680 69224536 69224536 12076584 18383872 18383872 59467840 59467840 36538160 34325904 107688112 117542968 376690714 376690714 321199058 303572328 303572328 546672893 1040350271 1040350271 731700311 1032709231 1032709231 763265688 922413732 1004535543 1004535543 420973561 332366026 332366026 346557600 346557600 827327139 827327139 826277891 813730818 813730818 734561681 818882496 818882496 15092033 612729932 672001029 716262469 716262469 573379245 663618593 663618593 827377585 827377585 521769626 489366532 283722894 436115246 619580256 885239787 885239787 819465107 819465107 959077663 959077663 413738204 969948881 969948881 726275222 845275539 845275539 995740922 995740922 982082073 981540951 712172012 1051743034 1051743034 283486544 925270419 925270419 779227216 930087867 930087867 869663000 636754667 809836980 990259430 990259430 852889898 784335069 417354469 417354469 233882612 127278928 547987589 547987589 1006853132 1006853132 805699598 549857028 977805469 1014506511 1014506511 782557594 782557594 1055267295 1055267295 1052434073 1052434073 964823994 964823994 830213792 806686730 882021330 882021330 400535920 339890880 272887938 272887938 64650256 305224016 379590418 379590418 341048922 291639888 172525652 172525652 649925833 649925833 743207336 743207336 705917189 695164613 494083903 306648932 236726936 548941468 1041795418 1041795418 446729922 1035543629 1035543629 329786978 246940416 808081093 808081093 211338132 344474336 680108053 680108053 738738683 738738683 686138252 552798661 600101122 600101122 493603934 846574320 846574320 844672098 844672098 677325705 677325705 617886532 121963242 84485464 367085136 531716076 531716076 345771594 345771594 259510188 259510188 41992512 248262700 248262700 246904940 246904940 388581856 936636578 936636578 850186299 836763872 881018337 881018337 639857353 454347318 740819375 1058852415 1058852415 1014247028 1040530253 1040530253 877805332 877805332 758265397 758265397 385918890 841976323 947239380 947239380 816391491 284783800 253719053 73663272 86005920 86005920 11484480 27822400 40140800 141052432 141052432 551572448 554222625 556994021 556994021 292429218 818220674 990251344 990251344 867492797 1024641618 1024641618 948222472 875637479 844178067 736684193 736684193 715393365 533221504 120324408 87884128 87884128 113502396 240245268 243706728 243706728 228712812 228712812 115788516 88617088 218365952 218365952 205862112 205862112 172214316 214883976 214883976 181994096 181994096 192658100 319789348 791154697 791154697 1006807385 1006807385 868735349 868735349 740394357 623026233 982861690 1073171735 1073171735 710666204 1037043166 1037043166 245434157 586288324 606916689 630093257 719278697 719278697 537071429 995192128 995192128 955685877 704216953 896213784 1025921327 1025921327 1014273703 661023776 854971845 854971845 274152066 667680447 698745061 698745061 731646309 731646309 1017526852 1017526852 939809263 957882237 957882237 1003126892 1003126892 331382827 1013842111 1013842111 1021446555 1021446555 431496344 312120115 320630914 570627360 965619819 965619819 967055470 967055470 690411813 831014672 840974610 840974610 643220192 643220192 488641553 422052775 405274887 924522410 924522410 835589648 146844388 1024916227 1024916227 322912050 763385415 763385415 471885120 471885120 556352801 556352801 692358817 692358817 685813616 198390516 732060241 732060241 48757200 1043873149 1043873149 285447588 519645150 519645150 281591322 441468808 795309070 795309070 330642336 555872720 729286625 729286625 969584438 969584438 529227517 891948546 891948546 997660465 997660465 700399461 659434801 659434801 547514784 547514784 275024868 408682118 464331002 475951398 475951398 273290370 411516904 411516904 510436270 510436270 221251488 221251488 722592310 722592310 627394299 627394299 850240505 850240505 287268100 350282784 781542186 781542186 776858781 785941587 785941587 829278695 1004298859 1004298859 651523968 828729514 828729514 87188098 617910464 617910464 659212128 659212128 37753152 37753152 338137504 366519274 366519274 351841248 433406860 433406860 417503814 202823496 171280764 369911958 496555315 496555315 448196731 956743972 956743972 828424611 1032759983 1032759983 342377240 38867012 341856288 930120194 930120194 814911763 835764888 835764888 729248360 729248360 196348788 169998640 169998640 752089320 752089320 634988265 127014905 67244040 67244040 73086600 73086600 815597279 815597279 432585964 287109044 626543234 1020603754 1020603754 635646441 692951089 852472037 852472037 839595027 317263490 317263490 401736266 401736266 347601738 347601738 440730178 440730178 247599324 846600715 846600715 645345538 861680568 861680568 568349848 902722296 902722296 372319002 809257424 809257424 544549761 544549761 69706736 580113216 649431633 649431633 615609088 615609088 78906200 17105504 85986784 268964714 268964714 389300736 389300736 63966916 445927124 448190230 505337526 505337526 366275306 263551678 386140218 503726636 504500766 939743850 1058862651 1058862651 1033627303 278351725 250271176 259306440 259306440 242415308 242415308 226533936 34176528 31403152 29830208 29830208 835002937 835002937 815555018 967355878 967355878 910532380 872849939 798749677 558874006 890738809 890738809 159666336 269369344 269409282 311299234 311299234 357259896 357259896 301211122 291953058 300061416 300061416 400558498 873697370 873697370 852757040 852757040 668353083 646103962 336593418 418054086 871330608 871330608 608365298 908517792 908517792 355553648 355553648 675283213 675283213 255460128 797175992 797175992 241259681 210257100 210257100 239199580 680117712 680117712 681600452 686681541 686681541 547942464 137847960 108483032 170208234 170208234 1015647757 1015647757 1032507438 1032507438 992869735 803474787 803474787 452802247 879213040 879213040 617834692 617834692 693696552 693696552 721719329 721719329 1069701184 1069701184 662964455 914622555 914622555 50500148 689050149 689050149 574816415 1024924651 1024924651 631378281 542176496 56852113 180160576 542734432 542734432 589260692 615705500 800585465 800585465 724070604 267323504 133119480 136840320 140509572 186646564 186646564 315109332 315109332 289220482 60301586 327745954 433103232 433103232 189533364 189533364 169347744 33914904 138909760 138909760 42361100 635767200 635767200 908460296 908460296 977322949 977322949 826316996 807667971 816070979 816070979 1018042387 1018042387 951884249 988435026 1066863131 1066863131 707932646 146542432 33232372 10893808 381622603 381622603 148464661 185895111 880708509 880708509 625661865 609539389 760760451 947324615 1036857238 1036857238 789977661 789977661 684212332 652252544 652252544 108217298 48234960 110528698 350290026 350290026 327070256 327070256 11683264 22619808 113313400 375164368 375164368 111429760 111429760 102850848 353960744 431559832 448980141 1049678619 1049678619 923797345 923797345 245438700 407204374 407204374 148042436 557568784 557568784 754640840 754640840 821602408 821602408 471960971 306365390 273154800 273154800 274733524 971072561 971072561 915646712 1032464274 1032464274 640255192 551674305 316402462 441111702 672744452 672744452 438308115 438308115 591675232 595333041 595333041 675022380 675022380 195043504 195043504 6818452 20057392 556639904 556639904 806277665 806277665 357026691 299664870 299664870 127836788 841309725 841309725 523289406 523289406 468979542 456723808 330901766 530707172 864029496 864029496 711211737 640564696 599711601 624071241 919739765 1063391679 1063391679 687997338 764653075 987709143 987709143 805274076 453785316 478518282 927688488 927688488 805419034 323315890 906574057 906574057 949303495 978900561 978900561 416104477 513018462 513018462 651501789 774105937 774105937 201851916 743198997 743198997 681756708 518859112 518859112 438384672 1912320 45583936 45583936 35365056 35365056 61889760 852395763 852395763 472009308 588873695 588873695 869059276 869059276 333778144 756888462 1019616710 1019616710 195167073 281395119 815843961 837993097 837993097 769069141 769069141 713034759 801247377 801247377 289417226 289417226 187892124 1054544456 1054544456 516285187 956580489 960005833 960005833 548931393 269953251 412154919 446088053 824580387 908600640 908600640 638533405 537451221 679773044 679773044 582271329 631647312 631647312 757279345 757279345 246815580 1057859357 1057859357 975453061 485904063 729875512 849096033 849096033 669817159 682367388 682367388 537330944 1022212522 1022212522 346288287 579231744 579231744 1025849781 1025849781 463624318 698610021 698610021 1004672896 1004672896 401775332 328340082 328340082 271193970 403194892 403194892 414508358 414508358 651380764 766520108 766520108 537986464 732954784 743908521 743908521 318649751 1017982287 1017982287 528445722 461115318 489623817 489623817 86507840 10487080 42467600 42467600 239012176 239012176 357238348 357238348 92021312 92021312 315637122 315637122 343942272 353972890 353972890 151936129 919575289 919575289 668368091 630855273 55604332 67244040 207071248 207071248 871563808 871563808 848509841 570898449 293875827 41463744 278008322 278008322 271679794 303593218 303593218 292462856 292462856 286042634 366273258 366273258 345181920 247398206 236250644 90737284 90737284 174562240 174562240 148610724 180609252 180609252 139046992 119225406 440825774 522839358 522839358 511724750 511724750 505987774 481592830 470045006 470045006 224528702 284165058 284165058 276825280 276825280 11814560 74977800 146163556 146163556 80489128 145034220 213944360 213944360 190762900 190762900 136253080 136253080 665995465 665995465 199234172 598903937 598903937 556696292 156238500 680824488 680824488 644406262 644224547 379182526 379182526 393531683 617653102 617653102 572446054 959766944 959766944 842781266 842781266 839107306 51970048 51979824 51979824 59776424 83102664 83102664 78120264 78120264 131212584 131212584 117249088 117249088 86032680 86032680 207278885 1029411467 1029411467 568065187 881662057 881662057 692061540 692061540 642378801 642378801 557916321 349814948 6900992 61660968 69224536 69224536 28497472 36713504 36782608 59467840 59467840 36538160 36250896 68922032 86233512 622029064 760672546 760672546 875737729 994061473 994061473 1040350271 1040350271 731700311 1032709231 1032709231 994496866 1041546382 1041546382 1004535543 420973561 125726576 100753400 53138736 36078896 827327139 827327139 826277891 806355459 734561681 734561681 693634725 771012268 771012268 762240429 672001029 716262469 716262469 573605432 623428905 623428905 239134209 192013236 624615916 624615916 141746925 55972032 668858448 668858448 584183336 570556465 33816608 336368648 336368648 268883970 797522424 797522424 717058577 910451543 910451543 679949091 679949091 1043411356 1043411356 712172012 1051743034 1051743034 417431704 925270419 925270419 295908362 286135056 869663000 869663000 636754667 201951437 552723393 552723393 638347421 638347421 312363204 440850582 440850582 728932434 728932434 538249761 568398209 568398209 549656113 553542400 977805469 1014506511 1014506511 249324291 214315464 212365384 207423680 244576860 830664717 830664717 934098173 934098173 127020602 64476016 64476016 25279872 45738368 56844976 64650256 64650256 45634000 10490960 35408592 35408592 36815232 172525652 172525652 649925833 649925833 743207336 743207336 705917189 695164613 494083903 306648932 236726936 548941468 1041795418 1041795418 446729922 304128548 304128548 75505788 610456384 610456384 552600513 211338132 344474336 344474336 117649464 74647584 686138252 686138252 552798661 548670273 587829262 587829262 571159569 551226614 844672098 844672098 677325705 677325705 617886532 105448080 105448080 367085136 367085136 142683752 142683752 140159960 259510188 259510188 41992512 248262700 713031765 713031765 907723969 907723969 936636578 936636578 843239571 554206210 554206210 782763647 782763647 487591682 748426753 1058852415 1058852415 87328023 1040530253 1040530253 884058668 791147103 791147103 758265397 338209280 254411265 50331696 91703520 91703520 71903064 71903064 70693384 70693384 75926912 109628416 109628416 95191409 776744817 776744817 193465377 148953456 136179204 153549441 153549441 45178880 990251344 990251344 867492797 1024641618 1024641618 948222472 875637479 844178067 409435010 413538630 533221504 533221504 120324408 109105520 109105520 113502396 240245268 240245268 252318112 252318112 142478980 142478980 39729332 218365952 218365952 205862112 205862112 172214316 172214316 265673672 265673672 234973896 234973896 192658100 791154697 791154697 1006807385 1006807385 868735349 868735349 740394357 623026233 982861690 1073171735 1073171735 1016338761 1016338761 825288714 766847853 771670022 771670022 630904425 614506537 607860489 597214833 995192128 995192128 955685877 704216953 794759739 1025921327 1025921327 1014273703 661023776 854971845 854971845 274152066 667680447 698745061 698745061 731646309 731646309 69115518 939809263 939809263 340169322 553672256 553672256 386077236 521798716 521798716 46137552 39851600 16390080 850303026 850303026 590402929 270031891 191707637 190251700 229901201 612681801 787350604 831014672 1061329112 1061329112 912850946 912850946 268575639 238101276 238101276 115479000 201159368 201159368 146844388 1024916227 1024916227 322912050 763385415 763385415 471885120 750824664 750824664 44860149 37006216 310446246 437387992 437387992 389206842 122155314 95401120 430830612 430830612 455568184 455568184 442970806 418181788 441468808 801761888 801761888 570690301 572569856 598503464 598503464 969584438 969584438 529227517 891948546 891948546 997660465 997660465 700399461 178303408 222433452 243286124 243286124 239259804 383863232 464331002 464331002 409866284 359402922 218242438 53512644 130030792 264782580 264782580 230721632 722592310 722592310 1019300431 1019300431 850240505 850240505 287268100 476786813 924287283 924287283 635403992 517524048 480263052 829278695 829278695 329246328 651523968 828729514 828729514 87188098 566251968 618828001 618828001 49283792 96735977 634030161 634030161 631367072 631367072 351841248 433406860 433406860 417503814 202823496 171280764 369911958 369911958 102760728 269683208 956743972 956743972 840121524 376265863 935865398 935865398 68458932 863256996 996544778 996544778 814911763 835764888 835764888 949424401 1021973967 1021973967 940688483 545589857 752089320 914100123 914100123 406193809 327536690 665713990 1015359567 1015359567 815597279 815597279 192154548 229936988 626543234 1020603754 1020603754 620789826 692951089 852472037 852472037 839595027 317263490 317263490 401736266 401736266 683671749 819542947 832302022 832302022 247599324 269485064 298380451 701620965 970049221 970049221 945065024 628340800 628340800 278937995 114109656 116775520 131521272 131521272 69706736 48234960 45124672 71259968 100135976 100135976 122871984 128594872 338232888 338232888 29101920 356045696 356045696 67114594 445927124 446171670 505337526 505337526 514115772 514115772 413323294 503726636 504500766 906629694 1058862651 1058862651 999420607 272626549 250271176 259306440 259306440 53660328 26020144 34176528 34176528 63071162 541504113 709177771 709177771 815555018 815555018 612233097 910532380 910532380 872849939 103504419 592190784 592190784 296247746 296247746 159666336 115261608 226941230 226941230 357259896 357259896 301211122 291953058 312967432 312967432 81926578 124816336 124816336 852757040 852757040 668353083 268435976 336593418 336593418 871330608 871330608 52073536 866713024 866713024 786989364 786989364 259539885 255460128 255460128 167272776 170628281 170628281 46899608 82375688 82375688 79917256 139854472 681600452 686681541 686681541 547942464 137847960 108483032 170208234 253313036 488441298 488441298 640231552 992869735 992869735 480648656 480648656 187169076 879213040 879213040 612883512 662320441 907597311 907597311 245819028 195560736 734374418 861258279 861258279 914622555 914622555 290787484 689050149 689050149 574816415 1024924651 1024924651 631378281 163982564 163982564 702001556 702001556 542734432 546711809 615705500 800585465 800585465 724070604 267323504 133119480 139386792 208543116 208543116 495241326 495241326 315371831 1062615871 1062615871 750193945 424149568 455691999 1064830911 1064830911 362809910 920748404 920748404 705915265 740590041 740590041 546517569 908460296 908460296 977322949 977322949 826316996 140398597 302960068 313050450 1018042387 1018042387 847157580 988435026 1066863131 1066863131 707932646 505742920 505742920 265887980 257963516 174663060 174663060 180880596 716481348 716481348 924803861 924803861 993536576 993536576 1036857238 1036857238 475145748 684212332 684212332 652252544 652252544 108217298 17826336 110528698 350290026 350290026 327070256 327070256 11683264 22619808 113313400 382016040 382016040 373818522 373818522 243195804 353960744 431559832 476317636 1049678619 1049678619 923797345 923797345 433084632 433084632 407204374 167780884 557568784 557568784 754640840 754640840 821602408 982038015 982038015 378666520 378666520 418700706 418700706 971072561 971072561 915646712 1032464274 1032464274 646009090 805438162 805438162 441111702 672744452 672744452 438308115 806825116 806825116 943792263 943792263 862979739 675022380 539698850 558431746 558431746 537792418 556639904 556639904 806277665 806277665 366009258 1033192326 1033192326 707714152 707714152 119844206 28837728 468979542 468979542 456723808 330901766 530707172 530707172 515167018 515167018 239970316 599711601 624071241 919739765 1063391679 1063391679 687997338 604237833 888892191 888892191 800373115 420217546 478518282 478518282 805419034 805419034 323315890 906574057 906574057 949303495 949303495 746434266 171199042 513018462 513018462 348077898 480837128 480837128 201851916 780475876 815981816 815981816 1046911191 1046911191 826089256 826089256 685285276 685285276 635397872 222998528 273820193 852395763 852395763 472009308 588873695 588873695 1021668108 1021668108 494259027 756888462 1019616710 1019616710 195167073 548500544 815843961 837993097 837993097 733541137 671223813 713034759 747386629 747386629 243271429 797252916 1056718126 1056718126 422091830 99880690 334596106 515375758 515375758 286462946 286462946 39543312 543424536 824580387 824580387 798375523 840992971 840992971 537451221 276876114 276876114 238659881 238659881 757279345 757279345 246815580 1057859357 1057859357 461943036 301162995 301162995 849096033 976489817 976489817 879309274 879309274 537330944 139029964 337844564 337844564 178729230 134225920 167903232 385228946 415324892 415324892 534975118 534975118 533203126 401775332 328340082 337691472 337691472 277617738 369426954 414508358 414508358 651380764 651380764 517058640 537986464 616375817 616375817 81604289 318649751 1017982287 1017982287 993007398 993007398 893190924 893190924 673474842 983871255 983871255 649602382 168431704 203424012 390146648 390146648 278150354 102512122 34551904 34551904 343942272 353972890 353972890 151936129 332622960 626410223 630855273 630855273 55604332 67244040 207071248 207071248 870977109 870977109 704251504 834304290 834304290 602594819 842244609 842244609 837570515 869244952 869244952 365786720 365786720 290391690 366273258 705655704 758990124 758990124 18399872 18399872 137388856 218431756 218431756 73146996 50418224 52303376 52303376 35266096 34479120 18619568 55126576 65356048 65356048 31458080 25479264 28062688 28062688 13626496 16117056 16117056 10227264 8506432 72009792 72009792 96911808 96911808 86382888 31844832 157411552 157411552 190762900 190762900 188784656 188784656 50337984 50337984 58982400 58982400 3443312 6687232 6687232 680824488 680824488 644224547 644224547 379182526 379182526 393531683 617653102 617653102 203303455 51000060 163647648 163647648 391511458 391511458 652099105 652099105 346128730 648033290 648033290 902530219 902530219 887960651 887960651 579542729 659625400 659625400 128925336 117236056 207278885 1029411467 1029411467 568065187 881662057 881662057 692061540 692061540 872820668 872820668 863322647 1014200877 1014200877 678039712 796652232 796652232 752951757 607834976 193082576 36782608 36091296 36091296 36250896 68922032 324155772 622029064 760672546 760672546 875737729 994061473 994061473 794202030 794202030 956427055 956427055 994496866 994496866 1041546382 1041546382 978296598 94791936 319956434 319956434 321000864 321000864 866124147 866124147 452035491 712633812 712633812 455993872 440705074 771012268 771012268 914555005 914555005 546612235 11562565 573605432 623428905 623428905 642991625 642991625 689075425 689075425 160531297 207051580 668858448 668858448 672728709 672728709 183207037 195113294 317668434 511104042 733682073 758987511 758987511 910451543 910451543 441310323 285586642 1043411356 1043411356 440666545 136332032 417431704 417431704 761530811 915583012 915583012 286135056 812126355 812126355 17878560 17878560 527360 18663968 52192304 52192304 829872576 864552563 948446947 948446947 728932434 538249761 568398209 568398209 549656113 1017005126 1017005126 308418195 71559376 214315464 214315464 212365384 207423680 244576860 830664717 830664717 934098173 934098173 595418440 595418440 580332192 41943120 34635840 4725568 2114304 5391360 5391360 2672512 34972160 55718528 102019368 102019368 57344384 70610728 70610728 35930128 35930128 3442704 68160264 68160264 67109384 67109384 216795028 216795028 252794760 962774821 962774821 779667357 779667357 779667357 610456384 552600513 71877768 847290432 847290432 838983699 342581321 595707556 595707556 356948720 404783400 587829262 587829262 841707776 841707776 839435283 379008522 379008522 472388380 472388380 105448080 108803232 108803232 206479588 206479588 166196480 166196480 147273924 147273924 81019204 201483116 713031765 713031765 907723969 907723969 783048314 329593138 355050794 554206210 554206210 782763647 782763647 830871651 830871651 1034685807 1034685807 446719889 316587216 884058668 884058668 791147103 791147103 706941965 338209280 237277699 54610488 91703520 91703520 71903064 71903064 70693384 70693384 75926912 109628416 109628416 95191409 776744817 776744817 842041298 842041298 136179204 290730112 290730112 566618337 566618337 704786608 704786608 925571666 925571666 575006865 202384932 202384932 404513922 404513922 268822530 255054482 124001708 109105520 109105520 80214184 80214184 218366168 252318112 252318112 173200020 185759460 185759460 144389700 66196464 190952064 190952064 115835048 57557432 265673672 265673672 301304250 301304250 177597012 120139620 805832718 805832718 646127616 646127616 646058073 450438870 450438870 534202154 534202154 922419117 1016338761 1016338761 825288714 766847853 771670022 771670022 730137588 730137588 607860489 597214833 597214833 396987689 303528480 213493904 302436418 302436418 184943212 412431136 412431136 673070762 673070762 469770252 469770252 440402070 440402070 134482066 373852420 510447006 510447006 826018469 826018469 852039112 852039112 386077236 521798716 740954655 740954655 867341139 867341139 854954257 854954257 590402929 581772308 474074726 545334056 545334056 224555013 787350604 787350604 1061329112 1061329112 912850946 912850946 922747165 922747165 421527846 448790742 1020270121 1020270121 155060032 461374470 461374470 42078288 277419218 277419218 173942352 750824664 750824664 44860149 37006216 310446246 437387992 437387992 688132481 688132481 244087372 711517829 711517829 455568184 455568184 442970806 418181788 493141926 801761888 801761888 613755045 572569856 572569856 583190370 988925019 988925019 985141621 660724406 553721889 553721889 415291607 971163562 971163562 791833221 687527877 651854108 352872746 387591200 387591200 409866284 409866284 359402922 401628896 401628896 343305110 343305110 264782580 230721632 489783374 489783374 1019300431 1019300431 335595726 272992266 204894980 476786813 924287283 924287283 635403992 517524048 480263052 183550932 196266584 829489738 829489738 401220881 376664723 289443858 566251968 618828001 618828001 108085664 342733130 634030161 634030161 807954546 807954546 59050817 86770984 86770984 75466248 75466248 136229532 156365401 229310845 229310845 898962039 898962039 840121524 1044320786 1044320786 935865398 935865398 490756624 863256996 996544778 996544778 711984390 763043505 763043505 949424401 1021973967 1021973967 940688483 545589857 597075312 914100123 914100123 406193809 472247688 665713990 1015359567 1015359567 813771868 62923146 41943120 36177216 488718652 488718652 438431338 1032996874 1032996874 412883083 412883083 839000654 946283158 946283158 14961601 810845122 810845122 819542947 945756220 945756220 179103784 601942192 601942192 701620965 970049221 975226422 975226422 557319969 794034710 794034710 508958934 442029463 779537653 779537653 448231903 112880393 112880393 251773845 824213516 824213516 524935784 524935784 448526166 373142584 229842712 356045696 356045696 67114594 278694592 324800164 482009072 482009072 514115772 514115772 872419391 872419391 529664550 756286017 756286017 135782400 135666180 4243584 4243584 619071513 638769808 652614105 652614105 648459432 60148904 545841832 545841832 709177771 709177771 733239396 733239396 457659116 154349682 671205905 671205905 386076936 606302251 606302251 296247746 296247746 141413316 133410680 226941230 226941230 296764250 296764250 29401792 298962978 312967432 312967432 371595546 903927986 903927986 859996804 892467729 970981863 970981863 490856843 703004998 703004998 205397772 485663966 692437744 825583737 843580801 843580801 259539885 428393638 494993486 494993486 484467944 15463872 15463872 10691648 2757888 2626560 11084096 566529312 566529312 284000934 405977016 405977016 375636288 198582296 253313036 253313036 124257388 640231552 644615577 673253524 673253524 577055121 157638725 809610068 809610068 612883512 662320441 907597311 907597311 576818368 694478809 734374418 861258279 861258279 960970860 960970860 517142663 38471176 167907348 218183208 244254556 244254556 148166772 163982564 163982564 702001556 702001556 182951553 708301686 708301686 446935135 500996848 500996848 258682764 64809356 139386792 208543116 633137279 836764131 836764131 486356555 1062615871 1062615871 750193945 748947789 816187595 1064830911 1064830911 571738288 920748404 920748404 705915265 740590041 740590041 546517569 546517569 306246355 851461905 851461905 576290444 140398597 302960068 313050450 961431987 993353592 993353592 920707716 920707716 443886486 443886486 505742920 505742920 265887980 257963516 174663060 174663060 180880596 781426768 781426768 924803861 924803861 993536576 993536576 85724683 50332712 237577500 257959072 257959072 207626376 207626376 1574400 2696448 2696448 60836544 60836544 57985968 18010656 67765760 83935272 83935272 382016040 382016040 373818522 373818522 243195804 243195804 221070004 476317636 476317636 412123164 761729422 761729422 433084632 433084632 113672934 167780884 167780884 583710166 583710166 1026902692 1026902692 982038015 982038015 378666520 378666520 418700706 1004181056 1004181056 1060153901 1060153901 693137766 891544372 891544372 805438162 805438162 985225415 985225415 969570531 831662226 806825116 806825116 943792263 943792263 862979739 707912468 707912468 694117808 691280800 537792418 537792418 293346305 425824036 425824036 366009258 1033192326 1033192326 707714152 707714152 111255086 28837728 269231680 278211138 486091218 512304222 512304222 397398078 515167018 515167018 435220856 524288190 524288190 753840616 1059207528 1059207528 942378304 604237833 888892191 888892191 476421401 420217546 420217546 374348306 624828304 624828304 814993858 814993858 447480856 975118514 975118514 305727374 379988544 379988544 966644213 966644213 1006775062 1006775062 843094476 843094476 815981816 815981816 1046911191 1046911191 826089256 826089256 685285276 685285276 635397872 222998528 273820193 293156146 549962248 618085065 618085065 607574793 1021668108 1021668108 540330753 55018786 6822444 0 12054592 806206209 810467010 810467010 534378882 534378882 642641049 1057728623 1057728623 851935769 851935769 797252916 1056718126 1056718126 422091830 833395600 833395600 759966927 859287091 921173275 921173275 832046691 543424536 644090265 644090265 575966105 840992971 840992971 277873223 958472199 958472199 696624209 1057336688 1057336688 727786602 784974305 784974305 738485333 336982920 651389867 651389867 854201352 976489817 976489817 879309274 879309274 470031649 207365155 921112844 921112844 970099367 970099367 739804333 608831959 415324892 1020104523 1020104523 1002081959 643484948 119439392 604578873 604578873 505448728 659820219 659820219 298174178 396165274 396165274 193381011 618697543 984943729 1019080527 1019080527 809459776 253081776 549411183 841603923 1060131691 1060131691 982717967 893190924 806490133 983871255 983871255 649602382 525312 524288 390146648 390146648 278150354 102512122 33079360 24643488 34861584 379424832 379424832 320092834 320092834 257991196 257991196 307766333 480363655 480363655 621613842 621613842 870977109 870977109 704251504 834304290 834304290 602594819 842244609 842244609 837570515 869244952 869244952 365786720 365786720 291553064 341835402 705655704 758990124 758990124 75262762 85833604 137388856 390372432 407586532 407586532 468720096 468720096 333054664 35266096 27923808 18425376 41198752 65356048 65356048 44974176 25479264 25479264 10276416 12341248 12341248 10374976 10227264 4124800 72009792 83456456 96911808 96911808 86382888 31844832 157411552 157411552 201594944 201594944 188784656 188784656 733777445 733777445 550685616 707924496 707924496 555224065 838229964 838229964 743856774 426300054 382260914 548473092 820454261 820454261 184561863 4207112 0 0 42030744 57012722 391511458 391511458 652099105 652099105 346128730 648033290 648033290 902530219 902530219 887960651 887960651 579542729 659625400 659625400 128925336 117236056 117236056 52564272 263783656 335795373 625619083 830493120 830493120 172097670 872820668 872820668 863322647 1014200877 1014200877 678039712 796652232 796652232 752951757 607834976 193082576 55629360 108533560 108533560 2695680 242079240 324155772 333771158 333771158 576047502 576047502 408957595 456604470 794202030 794202030 956427055 956427055 671092868 235193629 470855832 470855832 263737360 263737360 319956434 319956434 321000864 321000864 866124147 866124147 853590996 853590996 712633812 455993872 440705074 621894509 629354601 914555005 914555005 546612235 11562565 151627945 324065206 324065206 642991625 1059146642 1059146642 689075425 667242768 667242768 572127465 560559361 672728709 672728709 600081568 631033490 631033490 511104042 733682073 939753246 939753246 568775600 1025782175 1025782175 285586642 833577140 833577140 789842493 789842493 204808655 103318318 253068564 915583012 915583012 64751488 64751488 403441997 628928328 685548057 685548057 598737777 701652169 701652169 829872576 864552563 948446947 948446947 181861375 93397380 39135888 187695924 187695924 1017005126 1017005126 604030294 887703191 887703191 177228683 941672151 941672151 653838297 653838297 815874053 943236548 943236548 595418440 595418440 580332192 41943120 34635840 13959680 13959680 2100416 1658112 1481216 34972160 55718528 102019368 233140204 233140204 74394377 74394377 762072632 762072632 587362338 1007734030 1007734030 978185367 508435614 707212234 808662305 808662305 962774821 962774821 779667357 779667357 779667357 383391450 383391450 374477466 847290432 847290432 838983699 1060767036 1060767036 858300547 858300547 763648126 1009745995 1009745995 841707776 841707776 839435283 379008522 816394037 1055733400 1055733400 46268608 348133040 348133040 888482763 888482763 166196480 166196480 621051960 891912201 891912201 873063435 665019410 133229344 562995929 562995929 898444146 898444146 658643219 658643219 82449864 82449864 750391148 830871651 1015701548 1034685807 1034685807 446719889 316587216 831685614 831685614 352875010 352875010 859886414 859886414 525365985 300429600 300429600 333184480 333184480 36302464 101068848 101068848 89209088 89209088 130555248 130555248 623600705 623600705 842041298 842041298 54346784 290730112 290730112 566618337 566618337 702664722 702664722 851787842 851787842 575006865 202384932 687105287 687105287 404513922 893551705 893551705 617616048 572939529 646870041 646870041 646178296 218366168 218366168 171651716 173200020 185759460 185759460 174348288 174348288 174248340 133275744 115835048 57557432 71059328 71059328 301304250 301304250 177597012 690540553 805832718 805832718 579277056 514073628 612419888 646761561 646761561 806621450 882136419 882136419 596281882 764938220 764938220 543162753 290991398 219601452 730137588 730137588 597524187 597524187 339809378 842497298 1034993914 1034993914 446828886 227547188 360724480 361183338 361183338 867645983 867645983 469770252 806357237 806357237 788581153 788581153 1023379818 1023379818 510447006 826018469 845640139 852039112 852039112 83236736 406324495 740954655 740954655 867341139 867341139 854954257 854954257 676072101 676072101 589439336 589439336 545334056 224555013 402870702 402870702 268486998 686333298 686333298 419516434 922747165 922747165 982121066 982121066 1043206609 1043206609 614318535 962206355 962206355 860279541 817241875 929894709 929894709 752658056 752658056 736218376 736218376 692913317 602491900 258672436 688132481 688132481 244087372 711517829 711517829 201625352 176950356 735848996 793534852 793534852 700214692 700214692 613755045 375781658 375781658 734035974 988925019 988925019 985141621 941205638 941205638 882714188 603979785 1045711371 1045711371 791833221 705956373 651854108 352872746 387591200 387591200 372954906 349982546 287382378 401628896 401628896 527130510 527130510 339629802 339629802 489783374 614826718 614826718 296563150 350697930 350697930 204894980 415063562 415063562 312508771 822116433 822116433 425552908 762299603 762299603 854852009 854852009 401220881 725178606 725178606 289443858 401638128 401638128 108085664 342733130 342733130 53486640 807954546 807954546 59050817 544957545 562159713 562159713 878448267 878448267 852234970 852234970 807089667 898962039 898962039 587226379 1044320786 1044320786 587414956 538391066 538391066 895738034 895738034 936547411 936547411 840615675 504202797 123729552 259424092 259424092 150513504 190890420 597075312 597075312 713764960 721945653 721945653 472247688 212738644 341901552 810699262 810699262 732213773 623923053 546171969 488718652 541738120 1032996874 1032996874 629309443 484842743 839000654 1043667806 1043667806 316736402 810845122 810845122 685010023 945756220 945756220 752087306 927665186 927665186 661818817 540539649 975226422 975226422 557319969 794034710 794034710 508958934 442029463 779537653 779537653 448231903 112880393 112880393 465381920 824213516 824213516 524935784 524935784 448526166 373142584 229842712 58200776 271617140 454823798 454823798 278694592 176422916 67108864 67108872 67108872 872419391 872419391 529664550 756286017 756286017 782886237 782886237 674752593 581703489 619071513 638769808 652614105 652614105 648459432 89410264 545841832 545841832 277443387 422740406 459297574 459297574 457659116 154349682 671205905 671205905 386076936 606302251 606302251 415609922 415609922 194111012 185985588 185771824 123519640 296764250 296764250 52406432 323561032 323561032 272050720 371595546 903927986 903927986 859996804 892467729 970981863 970981863 490856843 703004998 703004998 205397772 485663966 743973728 825583737 843580801 843580801 229115318 428393638 494993486 814785993 814785993 67843080 281207872 339738762 339738762 282801858 282801858 566529312 676587140 825213958 825213958 405977016 375636288 403502100 530737972 530737972 125658340 983501712 1014905487 1014905487 673253524 577055121 157638725 430037158 430037158 583279632 583279632 550317249 576818368 576818368 694478809 694478809 88894465 511730176 960970860 960970860 517142663 34078852 167907348 167907348 167907348 167907348 189959812 573661876 713396833 713396833 169904544 561531044 708301686 708301686 446935135 500996848 500996848 211337664 211337664 146392616 146392616 633137279 836764131 836764131 738106620 738106620 329846330 639778192 748947789 816187595 816187595 725616788 571738288 635474668 635474668 201443348 112706056 223470188 223470188 284550616 297364114 797334624 806145145 845501459 980080023 980080023 72277128 961431987 993353592 993353592 920707716 920707716 177230324 157471140 97003016 298955130 298955130 304416658 377038106 377038106 516948702 781426768 781426768 740820594 731496701 731496701 843197936 1059005978 1059005978 389091452 706427824 706427824 652223624 652223624 56318930 200251124 255059934 310271418 311635990 425029442 526120638 526120638 465719862 341526618 406761120 406761120 301449378 301449378 123083448 123083448 99662416 493866697 575776539 812687063 954674456 954674456 897599674 146515155 122241022 66336640 66336640 583710166 583710166 1026902692 1026902692 432362828 141823874 10080576 824898160 847384659 1004181056 1004181056 1060153901 1060153901 332779991 891544372 891544372 780609629 726310468 985225415 985225415 969570531 831662226 417213280 691427508 723179061 723179061 595300784 707912468 707912468 694117808 691280800 63062820 168875648 274591362 425824036 425824036 292103594 686380832 686380832 488530264 488530264 253080444 28511072 269231680 278211138 486091218 512304222 512304222 397398078 95808002 58984560 435220856 524288190 524288190 896295310 896295310 944240775 944240775 917461201 804436595 638373071 328558147 554975088 724307253 724307253 624828304 624828304 814993858 814993858 447480856 975118514 975118514 305727374 379988544 379988544 966644213 966644213 1006775062 1006775062 950419480 950419480 819253639 802498679 387033315 80046464 380639562 380639562 117205832 108498624 48972690 172168772 829817302 829817302 549962248 618085065 618085065 607574793 607574793 544289673 540330753 818520876 818520876 549066568 977192450 977192450 823605612 810467010 534378882 534378882 642641049 1057728623 1057728623 851935769 851935769 322128921 203701575 203701575 308856210 833395600 833395600 759966927 859287091 921173275 921173275 904118731 579863808 582485841 582485841 111674641 512237656 512237656 704643376 958472199 958472199 696624209 1057336688 1057336688 727786602 784974305 784974305 738485333 308058256 1032014168 1032014168 854201352 912860571 912860571 823142328 537184665 840218737 899277339 921112844 921112844 970099367 970099367 739804333 608831959 372903258 1020104523 1020104523 1002081959 643484948 375958560 838862992 838862992 505448728 659820219 659820219 298174178 298174178 656672120 656672120 618697543 984943729 1019080527 1019080527 809459776 615658816 615658816 841603923 1060131691 1060131691 1066538622 1066538622 806490133 699681824 699681824 588081174 462066706 252441660 861134410 861134410 95894376 221508462 355941162 933519430 933519430 840267780 379424832 320092834 320092834 490988080 490988080 609562763 609562763 480363655 621613842 724960948 724960948 699013169 585443872 585443872 174654276 174654276 135528950 59532114 442424982 823551734 823551734 886822473 886822473 550503105 499648047 341835402 355741832 355741832 292897440 292897440 270919938 390372432 407586532 407586532 468720096 468720096 333054664 51450912 27923808 18425376 28901696 45501696 45501696 44974176 26472736 26472736 25484896 73429672 73429672 25838560 31053224 69546632 71033856 83456456 83456456 70975040 93939944 229325864 229325864 227524044 207998356 201594944 114710592 136250960 733777445 733777445 550685616 707924496 707924496 555224065 838229964 838229964 743856774 382260914 382260914 548473092 820454261 820454261 489425820 630467322 679823049 679823049 143410341 134791264 44559664 134291460 134291460 103809368 245441308 245441308 188751920 188751920 726668596 726668596 565776033 81145936 81145936 45563120 130248352 130248352 387521247 677333617 876884077 876884077 876609675 876609675 830493120 678246835 824257876 824257876 601962579 752175032 752175032 67446413 33246912 14470848 23707648 120635432 120635432 55629360 108533560 108533560 54270208 242079240 293704758 939095034 939095034 925966512 832319818 832319818 701830761 651168433 796914197 796914197 671092868 1035994171 1035994171 949625362 949625362 843125248 263737360 26645880 285875664 285875664 287703216 413403462 413403462 853590996 853590996 192941495 172304532 212662720 212662720 167521885 312797309 968688934 968688934 933553215 868088566 567243218 268964482 156349977 1059146642 1059146642 738406413 738336768 667242768 572127465 560559361 577170361 600081568 600081568 631033490 631033490 367585114 371587241 939753246 939753246 568775600 1025782175 1025782175 220913677 764071189 764071189 789842493 789842493 204808655 176529642 365817066 648021096 648021096 128821211 75081662 741467718 741467718 685548057 685548057 598737777 701652169 701652169 590200760 644649520 644649520 663375261 663375261 748947353 748947353 550058118 908541136 908541136 441924246 664591234 887703191 887703191 177228683 941672151 941672151 1010427663 1010427663 815874053 943236548 943236548 380670776 380670776 4329600 26996288 26996288 21235872 13959680 8374720 5868928 5555200 1481216 1329152 8913984 233140204 233140204 74394377 74394377 762072632 762072632 587362338 1007734030 1007734030 978185367 508435614 707212234 808662305 808662305 228140496 835805308 835805308 697319871 964314104 964314104 608847226 608847226 608699529 818073803 839002242 1060767036 1060767036 858300547 858300547 763648126 1009745995 1009745995 839459859 364459851 171126870 171126870 816394037 1055733400 1055733400 89340168 348133040 348133040 888482763 888482763 124191491 51788713 621051960 891912201 891912201 873063435 665019410 122918944 562995929 562995929 898444146 898444146 658643219 658643219 547619900 547619900 537954325 537954325 1015701548 1015701548 891351561 701369469 701369469 623682828 151651201 1014641861 1042330149 1042330149 877752734 525365985 300429600 300429600 333184480 333184480 68592648 101068848 101068848 89209088 100730776 130555248 130555248 118220208 18594336 33651760 33651760 24517536 8202496 110888658 355768520 355768520 285331104 579609054 1011998528 1022311887 1022311887 12509839 687105287 941891844 941891844 893551705 893551705 617616048 572939529 646870041 646870041 646178296 222634116 134690988 237916088 237916088 156812964 199469112 199469112 199907956 199907956 30556220 84742176 88655016 182213664 182213664 238188252 238188252 183449500 690540553 690540553 579277056 579277056 229327193 612419888 646761561 646761561 806621450 882136419 882136419 694020229 764938220 764938220 798826497 798826497 638007321 638007321 239799440 597524187 597524187 339809378 842497298 1034993914 1034993914 446828886 177422924 360724480 361183338 361183338 867645983 867645983 336407562 806357237 806357237 788581153 788581153 1023379818 1023379818 998917736 998917736 845640139 845640139 958568446 958568446 272111434 274670338 274670338 72419336 151332692 828343393 828343393 947913829 947913829 731408999 628539028 247767601 291155203 1067106971 1067106971 126489720 686333298 686333298 421791748 543468291 543468291 982121066 982121066 1043206609 1043206609 614318535 962206355 962206355 860279541 817241875 929894709 929894709 752658056 752658056 736218376 736218376 692913317 602491900 204578880 204578880 171422472 134845956 134845956 201625352 201625352 176950356 735848996 793534852 793534852 321479228 222154684 222154684 375781658 375781658 734035974 734035974 570482689 752369739 941205638 941205638 916433492 603979785 1045711371 1045711371 769950565 705956373 596588152 234881052 154219920 124132512 124132512 122556328 287382378 287382378 119448580 527130510 527130510 339629802 339629802 78426224 614826718 614826718 296563150 350697930 350697930 80939842 302888896 302888896 312508771 822116433 822116433 425552908 762299603 762299603 854852009 854852009 665007627 845789338 845789338 530340946 512178270 486588462 486588462 503176001 699609957 745491601 745491601 608229416 259408640 544957545 562159713 562159713 878448267 878448267 852234970 969070596 969070596 861522610 861522610 921739610 921739610 510747452 438647608 877657220 877657220 895738034 895738034 936547411 1030882119 1030882119 504202797 276505957 950092483 950092483 814466531 639177497 639177497 557363755 713764960 850137451 850137451 627252288 846044947 846044947 810699262 810699262 732213773 623923053 546171969 808978220 1022364810 1022364810 887050611 731639654 999683029 999683029 1043667806 1043667806 316736402 314769864 603378628 685010023 685010023 752087306 752087306 927665186 927665186 661818817 549503169 260937592 260937592 89924704 89924704 794112836 794112836 669391353 665266617 718971676 718971676 30793072 41629584 465381920 465381920 128447080 481043880 481043880 228191024 305730990 306337080 306337080 384455034 454823798 454823798 436488276 436488276 67108864 309084560 439278866 439278866 339760528 239784738 447141916 775144827 782886237 782886237 674752593 581703489 237112664 541526160 541526160 187835060 187835060 214654245 837768408 837768408 538015096 430187168 459297574 459297574 503574724 503574724 601980678 601980678 346214730 346214730 269245768 415609922 415609922 194111012 185985588 185771824 94639760 94639760 33589096 52406432 323561032 323561032 272050720 357396720 357396720 853910394 853910394 525346161 443159958 507748600 800186612 800186612 80761088 742933440 742933440 743973728 743973728 618827024 618827024 45125120 45125120 16961568 814785993 814785993 67843080 281207872 355440896 355440896 282801858 282801858 202716650 676587140 825213958 825213958 11797272 89410728 403502100 530737972 530737972 192463088 983501712 1014905487 1014905487 800034284 800034284 185027761 854319078 854319078 595192433 496241262 496241262 646655216 646655216 706767164 918925913 918925913 813621123 718674645 718674645 307479134 144803592 211977932 213201356 213201356 147814528 189959812 671088896 713396833 713396833 169904544 561531044 561531044 549193029 211163724 946837284 946837284 706828196 706828196 632049281 632049281 571437876 209092652 203823372 754069690 754069690 390271949 209455680 216532428 216532428 144606212 144606212 177283668 244391988 244391988 168899308 147009732 190153653 789003441 789003441 605980833 797334624 806145145 845501459 980080023 980080023 72277128 388680122 388680122 205722500 141734020 141734020 245506424 245506424 207746304 298955130 298955130 304416658 377038106 491404328 862299888 898750641 1049074801 1049074801 731496701 731496701 843197936 1059005978 1059005978 432486630 706427824 706427824 865847194 865847194 58043872 200251124 255059934 310271418 311635990 425029442 526120638 526120638 465719862 341526618 406761120 406761120 301449378 301449378 123083448 123083448 325025026 519025140 575776539 812687063 954674456 954674456 897599674 193169028 248511708 248511708 245126872 236976716 236976716 874356928 874356928 43619600 159283048 159283048 824898160 847384659 847384659 300450199 218103852 218103852 463634472 463634472 348775626 370696912 400687728 400687728 64258176 580256040 610740625 610740625 43918836 10625344 595300784 595300784 62932913 154872354 691633378 694716484 694716484 538204234 293091555 359212450 359212450 292103594 686380832 686380832 822507320 822507320 330809176 104531992 351347232 383388402 383388402 80801008 95274370 95274370 76495944 76495944 295869201 865389171 865389171 896295310 896295310 944240775 944240775 917461201 804436595 682456260 682456260 554975088 724307253 724307253 811682183 811682183 641831058 776442691 811286477 811286477 747450794 1009395102 1009395102 81734848 474998040 474998040 503510236 503510236 950419480 950419480 819253639 705545875 33821456 3545856 36833296 36833296 35713744 36894864 74368008 139204133 829817302 829817302 528468732 891884821 891884821 817905900 895680621 895680621 823251115 818520876 818520876 728397352 977192450 977192450 823605612 821948355 330227058 1003017269 1003017269 789365508 789365508 743872140 743872140 576454676 218105865 344328248 377886810 470424758 470424758 298213474 43281696 400468986 904118731 904118731 579863808 582485841 582485841 111674641 512237656 512237656 704643376 704643376 588582737 588582737 581510481 371770650 371770650 202424844 202424844 445309816 561982194 1032014168 1032014168 889064599 889064599 610627672 610627672 567798291 840218737 899277339 899277339 831607816 146984356 142870596 115661204 317601992 317601992 929260061 929260061 274097298 736435619 736435619 838862992 838862992 889538598 889538598 371196161 190333748 225019652 656672120 656672120 269095938 276353920 276353920 541971657 775808332 775808332 615658816 749404519 749404519 336794126 1066538622 1066538622 957090371 957090371 724904757 724904757 571693824 252441660 861134410 861134410 95894376 221508462 355941162 933519430 933519430 840267780 87174932 153565476 1040966548 1040966548 490988080 726641212 726641212 558268936 558268936 724960948 981360022 981360022 168170864 168170864 464528481 855583031 961910375 961910375 870659955 870659955 947418255 947418255 886822473 550503105 499648047 801818062 925463704 925463704 457065896 375571354 375571354 302646000 302646000 63968274 339183520 339183520 51450912 289806498 361967270 495453294 495453294 521650302 521650302 522041902 522041902 280191874 230762604 230762604 306497682 306497682 294780400 294780400 70435216 83021320 149415060 149415060 93939944 229325864 229325864 227524044 207998356 114710592 141648768 141648768 673748904 673748904 564303296 564303296 539983265 676888833 676888833 299436128 366394728 366394728 829660394 829660394 544001283 846515489 846515489 843057152 679823049 951474179 951474179 817892576 813571971 550698480 317656416 103809368 245441308 245441308 188751920 188751920 726668596 726668596 549988192 30942688 42078744 76546632 130248352 178888802 387521247 677333617 876884077 876884077 876609675 876609675 478749893 1036304589 1036304589 885262539 601962579 752175032 752175032 773976704 799932976 799932976 672346629 542521728 134613248 18780672 60425792 60425792 54270208 81547904 367920264 939095034 939095034 925966512 832319818 832319818 701830761 651168433 796914197 796914197 441770294 1035994171 1035994171 949625362 949625362 843125248 396093000 396093000 285875664 294653728 443685111 805975815 805975815 555233127 555233127 21506720 22348960 275754090 568851936 568851936 312797309 968688934 968688934 933553215 868088566 681645824 681645824 674960969 639267497 738406413 738406413 738336768 305144123 911622696 911622696 118155984 118155984 117440568 117440568 75759752 83047368 115478600 115478600 87033640 115595061 800138109 800138109 663673977 764071189 795584770 795584770 690301221 589338160 639083300 639083300 648021096 917993912 917993912 793191072 741467718 741467718 575143936 575143936 738810880 738810880 449216710 449216710 644649520 644649520 663375261 663375261 748947353 748947353 660024440 908541136 908541136 441924246 664591234 767373165 851536552 851536552 692381419 601906220 1010427663 1010427663 514040677 520250680 520250680 380670776 380670776 46088016 52897600 52897600 28682528 28682528 17894208 5868928 5555200 33941520 33941520 4944784 10115984 47309520 47309520 33699968 33699968 767875500 767875500 538758657 207667596 207667596 349768012 349768012 207945942 228140496 228140496 835805308 835805308 697319871 964314104 964314104 608847226 856921648 856921648 818073803 839002242 839002242 421590060 338375946 318969132 318969132 795665438 1046952351 1046952351 174546385 194560116 415204158 484940960 484940960 477758814 328476432 89340168 301337728 935465384 935465384 355082129 86640672 86640672 286876448 286876448 17965600 17965600 135168 109001008 109001008 826619568 826619568 633941163 950602036 950602036 547619900 814891062 814891062 696355170 891351561 891351561 701369469 701369469 623682828 197077924 1014641861 1042330149 1042330149 877752734 340890146 340890146 88285290 84215496 70991136 68592648 17304320 3861000 7278592 100730776 100730776 118220208 557175345 693211397 978573458 978573458 166599332 427169668 427169668 546144163 1008725263 1008725263 788598590 1011998528 1022311887 1022311887 523165630 549995299 941891844 941891844 819986887 120409856 79235328 79235328 77409864 44502856 222634116 222634116 134690988 237916088 237916088 157471584 199469112 199469112 199907956 199907956 262441808 262441808 252265532 182213664 223831204 429977258 429977258 203672460 358871312 358871312 248129642 266103406 266103406 93788790 29891104 309593760 309593760 130598200 929892736 929892736 694020229 970031664 970031664 798826497 638007321 638007321 622125857 222820524 222820524 126528724 341969362 414595432 414595432 380642252 380642252 383951346 383951346 486613376 497752072 497752072 336407562 219287324 198456105 921647573 921647573 758978651 466969670 998917736 998917736 840702407 329742052 958568446 958568446 344888827 486808632 486808632 206787124 469803652 469803652 402653190 947913829 947913829 731408999 628539028 247767601 592616086 1067106971 1067106971 335593482 335593482 285229096 421791748 622985262 941756679 941756679 1049101407 1049101407 396406048 183642076 203453844 203453844 87944056 254185076 254185076 210892376 229909408 229909408 242573528 242573528 201968652 239435776 239435776 204578880 171422472 102945472 56887824 92561224 92561224 162529632 733416420 733416420 218186069 327155826 335923666 358687146 358687146 310444536 71303304 990222482 990222482 891355136 891363627 916433492 916433492 1050414687 1054548503 1054548503 903223447 528750317 35594976 94137984 94137984 124132512 124132512 122556328 44572744 36604768 28765504 11719488 126878328 126878328 177011776 177011776 688766664 688766664 77557749 321128162 321128162 287884870 494415152 494415152 765312943 765312943 294810124 243323590 753802903 928092649 1054149419 1054149419 959472427 959472427 845789338 747014753 731861016 486588462 486588462 503176001 699609957 745491601 745491601 608229416 259408640 166776492 219078272 826812048 826812048 603546267 637974128 969070596 969070596 861522610 861522610 921739610 921739610 579229939 360155895 877657220 877657220 440419511 440419511 731049336 1030882119 1030882119 835798150 429470757 950092483 950092483 835388836 639177497 639177497 557363755 623796059 850137451 850137451 627252288 846044947 846044947 572252536 544921473 544921473 194513288 194513288 878970693 1022364810 1022364810 887050611 731639654 999683029 999683029 611434520 613478995 613478995 383910481 924792334 924792334 569221925 561297652 835552915 835552915 935772262 944003231 944003231 1052557656 1052557656 705844036 1053560384 1053560384 794112836 1020232966 1020232966 1059617498 1059617498 775222153 775222153 872617092 872617092 514359976 514359976 481043880 465490432 465490432 306337080 306337080 384455034 384455034 419695782 436488276 440454310 440454310 388603160 439278866 605346623 605346623 409733124 673897141 775144827 775144827 513306764 604477252 604477252 713553549 713553549 712057172 712057172 672214432 214654245 837768408 837768408 552150893 552150893 590755365 590755365 503574724 503574724 741219857 741219857 439051292 964493475 964493475 160357476 160357476 131424384 127191672 334962008 334962008 94639760 33589096 33181760 60964992 63361184 63361184 46432400 46432400 619938144 619938144 525346161 254505918 519252275 800186612 868882208 868882208 757180000 757180000 295240847 580545560 618827024 618827024 100683162 370676530 370676530 384135248 384135248 115295578 268870632 355440896 355440896 338425098 338425098 98043170 14676704 17585696 360599842 360599842 302285458 89410728 347528266 347528266 347118778 700085184 700085184 676971397 800034284 876922694 876922694 854319078 933286270 933286270 893786155 893786155 931463650 931463650 941693777 941693777 918925913 813621123 718674645 718674645 654962857 593143578 593143578 538783233 977250823 977250823 171037440 671088896 673186053 673186053 588256768 587863089 549193029 549193029 141070184 946837284 946837284 706828196 706828196 632049281 632049281 729038407 862259893 862259893 1043766140 1043766140 741344013 741344013 710934933 710934933 549863471 612714728 1032995281 1032995281 805556920 168899308 147009732 93435988 789003441 789003441 605980833 776037504 776037504 671624349 174801937 147594929 752211993 752211993 275063815 690042993 980574802 980574802 813871682 953410242 953410242 936502658 674891282 674891282 262746926 491404328 862299888 898750641 1049074801 1049074801 782200840 636132208 799443078 799443078 583346605 432486630 583956990 619634121 865847194 865847194 227707372 226958272 132465128 123806136 243425576 243425576 86085724 10098240 324288580 466930422 466930422 183762930 53538544 53538544 36469200 36469200 325025026 519025140 519025140 399557370 399557370 391253672 391253672 371831714 371831714 248511708 245126872 236976716 280495938 280495938 282516162 694100874 694100874 219731596 726812216 726812216 302568092 78697518 218103852 218103852 463634472 463634472 348775626 370696912 370696912 553929953 629510513 655045792 655045792 708146692 708146692 192346532 558008368 734447377 734447377 697570052 697125024 697125024 694716484 538204234 293091555 99125474 278946304 278946304 97328736 623948808 822507320 822507320 330809176 104531992 351347232 383388402 383388402 87075266 291751830 493638958 493638958 438899788 295869201 865389171 865389171 778476241 845201701 957089952 957089952 944243847 588035344 775298076 775298076 388313096 388313096 438704171 811682183 811682183 641831058 776442691 811286477 811286477 789712817 1009395102 1009395102 1016483171 1016483171 474998040 903962868 903962868 309069249 1048893206 1048893206 363215158 363215158 192886044 358426235 598872945 600391601 600391601 753769161 753769161 699937818 968389599 968389599 891884821 937377718 937377718 895680621 895680621 823251115 592921388 362095884 728397352 728397352 810396679 821948355 821948355 552927793 1003017269 1003017269 789365508 789365508 743872140 743872140 576454676 218105865 344328248 377886810 470424758 470424758 298213474 103421208 103421208 327628914 327628914 337497769 1032628323 1032628323 366333551 755797697 755797697 607191592 607191592 555819297 261694977 610795920 638059545 638059545 202424844 202424844 767882110 767882110 1015049497 1015049497 889064599 889064599 535232723 567798291 567798291 395459091 395459091 332123526 352333346 352333346 142870596 115661204 317601992 317601992 929260061 929260061 307504446 736435619 736435619 345399796 522559800 889538598 889538598 1009203471 1009203471 568211407 757662828 757662828 635621865 938924117 949146183 1011896520 1011896520 887455830 1007968924 1007968924 405877232 677314177 802888437 802888437 1007545359 1007545359 947912775 947912775 571693824 173201952 54680096 54680096 132305400 132305400 297085794 297085794 104755210 104755210 87174932 153565476 1040966548 1040966548 184887348 726641212 726641212 558268936 583192784 1010210539 1010210539 981360022 387484639 278333762 464528481 855583031 961910375 961910375 870659955 870659955 947418255 947418255 708585497 319395182 912985392 912985392 930370688 930370688 457065896 375571354 375571354 302646000 302646000 495922252 495922252 396818842 396818842 289806498 361967270 495453294 495453294 521650302 521650302 522041902 522041902 302301618 230762604 334555134 334555134 306497682 342999218 342999218 349944690 490206822 490206822 149415060 461260938 461260938 179969552 104598788 74198080 80028964 221332012 221332012 673748904 673748904 564303296 675285888 675285888 680790881 680790881 299436128 971082561 971082561 829660394 829660394 544001283 846515489 846515489 843057152 189157620 951474179 951474179 817892576 813571971 550698480 317656416 103623256 584650064 584650064 224470665 153626000 153626000 549988192 549988192 92799184 110430416 110430416 101847120 178888802 302083462 402817027 596564147 596564147 1004232172 1004232172 714650520 1036304589 1036304589 885262539 868915033 647776097 664596652 773976704 799932976 799932976 672346629 542521728 134613248 59539520 77073016 77073016 39458688 208283272 367920264 367920264 155060812 283651208 283651208 494479278 494479278 342435210 342435210 407969926 421262886 421262886 423198452 423198452 318379986 326818224 396093000 396093000 302517260 495981990 495981990 805975815 805975815 555233127 555233127 240717014 211266864 329611786 585968080 585968080 310378891 536881162 874850315 874850571 874850571 681645824 681645824 674960969 505484544 505484544 572513588 857217314 857217314 911622696 911622696 588515889 118155984 626531440 660217530 660217530 399508914 812829921 812829921 569279016 569279016 667868409 667868409 663673977 663673977 795584770 821915964 821915964 589338160 639083300 639083300 452515565 917993912 917993912 793191072 671352837 671352837 742983856 742983856 798710964 798710964 449216710 1031064495 1031064495 754020779 629935209 498144807 231287352 660024440 660024440 489394306 518527683 518527683 415285446 300492258 851536552 851536552 692381419 329478225 445825375 834380576 834380576 799589476 799589476 160171356 154700144 46088016 52897600 52897600 28682528 28682528 17894208 1362432 1523728 33941520 33941520 42767888 43545360 47309520 47309520 84279592 84279592 767875500 812987014 812987014 312817242 718525778 718525778 399257729 362023530 408530730 804513429 804513429 604000427 604000427 109501496 29390505 29390505 856921648 856921648 839501096 839501096 746640469 507987405 338375946 318969132 318969132 795665438 1046952351 1046952351 932709965 1065951871 1065951871 813695028 185275928 328476432 328476432 54369386 97094571 935465384 935465384 389558032 310610473 587264896 587264896 856782721 856782721 808690445 808690445 674493189 674235141 674235141 403445563 285920282 950602036 950602036 528755774 814891062 814891062 318824979 277115154 466471982 474911944 484577742 484577742 475439062 461959590 434816706 390297056 390297056 340890146 340890146 321922080 284770274 276280992 17761024 47703184 47703184 17110464 63184448 63184448 63083600 557175345 693211397 978573458 978573458 166599332 427169668 427169668 874635531 1008725263 1008725263 788598590 779356887 458049393 523165630 523165630 616597514 880853071 880926795 880926795 572950140 572950140 647758401 647758401 651700608 651700608 62328816 62393024 62393024 157471584 157471584 149471972 149471972 57453540 159531360 262441808 262441808 252265532 230802656 223831204 429977258 429977258 203672460 358871312 358871312 473367700 473367700 349497954 115637630 87831416 106532872 106532872 120840536 929892736 934289760 934289760 970031664 970031664 596698566 596698566 622125857 622125857 222820524 222820524 126528724 341969362 414595432 414595432 380642252 380642252 383951346 383951346 486613376 497752072 497752072 92546144 109051992 318767192 921647573 921647573 847261760 847261760 622689334 738214468 738214468 268503114 863654250 863654250 344888827 486808632 486808632 206787124 469803652 469803652 402653190 326697030 333910496 333910496 313029676 525545764 592616086 863143583 863143583 335593482 949027204 949027204 479379719 961352876 961352876 1062267034 1062267034 1049101407 962895145 962895145 466022807 1042531762 1042531762 328542834 64108674 159974600 229909408 229909408 245366928 245366928 235308020 239435776 239435776 149396544 149396544 192154628 192154628 156503584 156503584 219695112 733416420 733416420 709931245 327155826 391645170 391645170 358687146 310444536 252127608 990222482 990222482 891355136 891363627 891363627 604317270 1050414687 1054548503 1054548503 903223447 528750317 139564628 244094136 244094136 131898516 231317048 231317048 380245866 380245866 138064484 379376214 379376214 476536490 476536490 589435185 688766664 688766664 672042317 910501707 910501707 339952275 885924963 885924963 765312943 969292027 969292027 446296053 753802903 928092649 1054149419 1054149419 959472427 959472427 757829218 747014753 731861016 189188180 198215552 338516742 338516742 245368392 366602902 366602902 166776492 166776492 805710662 999412546 999412546 603546267 637974128 637974128 231335148 246479614 552259952 649138854 649138854 580327846 674105885 902604023 966456545 966456545 714855971 488139932 1025548463 1025548463 835798150 814895660 812331751 835388836 835388836 356529578 356529578 373730704 373730704 323403898 348526786 348526786 342728458 342728458 353241410 544921473 888703642 888703642 366494561 878970693 878970693 595245523 176158946 705676150 964770245 964770245 891716167 973259341 973259341 577917197 924792334 924792334 605670811 561297652 835552915 835552915 935772262 944003231 944003231 1052557656 1052557656 705844036 1053560384 1053560384 1066318124 1066318124 1020232966 1059617498 1059617498 775222153 775222153 872617092 872617092 514359976 514359976 323885420 465490432 465490432 302026944 302026944 304931620 304931620 23341456 197976086 440454310 440454310 388603160 388603160 605346623 605346623 409733124 673897141 673897141 442234518 513306764 604477252 604477252 713553549 713553549 712057172 712057172 672214432 90047616 102287568 102287568 552150893 552150893 590755365 590755365 198052868 198052868 741219857 741219857 439051292 964493475 964493475 460142260 131424384 500443968 502532666 502532666 422119988 422119988 442237284 442237284 282216552 318289576 318289576 322744184 322744184 311520776 614660726 992512365 992512365 766268703 757088583 868882208 868882208 757180000 778708837 799087981 799087981 580545560 35775504 100683162 370676530 370676530 109037842 126218904 126602928 349858504 349858504 355834058 364719978 364719978 98043170 70639880 90274592 360599842 360599842 302285458 84810792 347528266 347528266 347118778 652035600 652035600 393156803 393156803 876922694 876922694 799013757 951716482 951716482 894993747 893786155 931463650 931463650 941693777 1037186416 1037186416 116130535 822891943 963284003 963284003 959551240 593143578 538783233 977250823 977250823 171037440 587311248 587311248 588256768 588256768 587863089 151521280 263204 2109696 2109696 200704 143360 208896 137127424 170865233 729038407 862259893 862259893 1043766140 1043766140 741344013 741344013 934466044 934466044 549863471 612714728 1032995281 1032995281 805556920 102099516 238080196 238080196 260157984 260157984 549775389 776037504 776037504 671624349 174801937 152086704 752211993 752211993 275063815 690042993 980574802 980574802 813871682 953410242 953410242 998249922 998249922 892031785 1046680546 1046680546 851519188 894571179 894571179 782200840 782200840 584061072 892342369 892342369 874512651 351286993 398537780 515973342 515973342 292314176 227707372 226958272 215023212 215023212 210523724 210523724 340303422 340303422 324288580 466930422 466930422 183762930 385352112 385352112 120722074 108787608 108787608 67266448 20785568 73215178 272892226 391253672 391253672 371831714 371831714 121244864 94747498 94747498 280495938 280495938 282516162 743572160 743572160 219731596 726812216 726812216 654959673 935130024 935130024 159652178 530389834 904035320 904035320 840598042 840598042 553929953 629510513 655045792 655045792 708146692 708146692 192346532 558008368 734447377 734447377 697570052 697125024 697125024 569673216 161007272 82603584 97702632 269424704 348497666 348497666 90201096 361379328 361379328 45554008 129315928 129315928 386339264 386339264 129504698 291751830 493638958 493638958 438899788 403052550 300758500 55068704 812417544 812417544 957089952 957089952 944243847 941198118 775298076 775298076 336018454 885797015 951071598 951071598 620972560 620972560 521666054 521666054 783126874 789712817 789712817 921672431 1016483171 1016483171 1062252943 1062252943 903962868 309069249 1048893206 1048893206 501619595 363215158 192886044 358426235 598872945 600391601 600391601 753769161 753769161 972042392 972042392 968389599 931358259 937377718 937377718 798397672 676450461 676381317 269644572 482919630 482919630 448027674 810396679 810396679 739424432 659476154 659476154 480381112 708837420 709101717 709101717 680053332 662837802 662837802 454426767 206439588 335699302 335699302 367760390 367760390 103421208 327628914 327628914 444836564 1032628323 1032628323 919778846 882301515 844186205 844186205 908067099 908067099 648545625 648545625 638059545 638059545 284787707 671925237 927326095 927326095 669715747 635402348 451413462 296171606 757072510 757072510 629736528 629736528 328846875 299261536 352333346 352333346 8462400 17900064 384172560 384172560 304179202 304179202 307504446 436626462 436626462 579092496 579092496 805489157 805489157 1066900341 1066900341 568211407 757662828 841267992 914670108 938924117 949146183 1011896520 1011896520 887455830 1007968924 1007968924 405877232 677314177 802888437 802888437 1007545359 1007545359 947912775 947912775 425722185 430006316 705816582 705816582 132305400 241759064 250745820 987834620 987834620 563195928 419457126 291746898 457969812 723456158 723456158 961567959 961567959 823427909 823427909 1010210539 1010210539 703385061 387484639 935013237 935013237 418563362 947417476 947417476 703933413 772326429 883974494 883974494 708585497 262971416 912985392 912985392 930370688 930370688 440698196 168668162 114177672 114757656 138442432 495922252 495922252 396818842 522247960 522247960 285261858 73681322 951283469 951283469 346145054 1032949534 1032949534 1051035933 1051035933 741681933 739313057 1033193187 1033193187 740787486 349944690 490206822 490206822 177479672 461260938 461260938 244875880 244875880 212995852 212995852 221332012 221332012 558589452 558589452 152167949 675285888 675285888 680790881 680790881 387564312 971082561 971082561 365783202 547913728 547913728 294650466 294650466 285213248 3095808 3095808 2621824 4719744 57556776 70594840 611624045 611624045 831046750 831046750 757122359 545374817 362365263 459352202 459352202 602415408 602415408 564144176 64318240 137454224 137454224 402817027 596564147 709390086 1004232172 1004232172 714650520 714650520 580539410 868915033 868915033 647776097 647776097 824312021 824312021 375525408 315232688 111332968 579948384 596664944 596664944 77073016 61752976 208283272 508705398 508705398 76625696 287510288 530650674 530650674 464593782 450169006 527159480 527159480 421262886 421262886 660210753 660210753 318379986 326818224 332476864 380774530 380774530 495981990 814230192 814230192 731194884 731194884 436681238 616439385 616439385 1042220944 1042220944 585968080 604293129 604293129 874850315 874850571 874850571 205096705 423215882 621021225 621021225 761265837 761265837 857217314 943759268 943759268 598000448 588515889 465316252 635572176 660217530 660217530 399508914 812829921 812829921 845881194 845881194 667868409 667868409 584569856 1049764601 1049764601 821915964 821915964 509944080 987088800 987088800 461860243 270177336 270177336 1047112034 1047112034 1004400375 865913472 865913472 798710964 798710964 685719237 1031064495 1031064495 754020779 619059657 222698507 222698507 276960814 276960814 406172893 518527683 518527683 415285446 300492258 678438503 678438503 579055986 506991655 506991655 834380576 834380576 799589476 799589476 966263160 966263160 580972104 28929632 28929632 24302496 2226272 3396096 5575296 5575296 11878528 11878528 183632632 183632632 651610652 651610652 92775033 84279592 647653954 812987014 848886802 848886802 723210258 723210258 399257729 401605626 408530730 804513429 804513429 604000427 604000427 120845112 545191448 559340193 559340193 280208153 839501096 955801109 955801109 778605848 811636057 811636057 313265490 593816802 593816802 604310010 932709965 1065951871 1065951871 813695028 218606364 218606364 300390306 300390306 268775770 274751752 389558032 389558032 355876866 587264896 587264896 856782721 856782721 846852224 808690445 674493189 674235141 674235141 403445563 285920282 203688204 453509160 528755774 528755774 505154592 521142846 521142846 466471982 474911944 484577742 484577742 475439062 461959590 434816706 310328048 310328048 305077874 321922080 321922080 284770274 276280992 166062564 160426244 139300864 17110464 63184448 63184448 63083600 180634932 180634932 135268352 135531012 169888148 169888148 260789623 874635531 942666115 942666115 779356887 779356887 458049393 302039058 205858956 616597514 880853071 880926795 880926795 572950140 572950140 647758401 647758401 651700608 651700608 470919206 328798954 208278924 486027978 486027978 449252976 457709288 457709288 159531360 159531360 134791444 230802656 230802656 206507080 148774532 138999248 73464584 208327816 208327816 473367700 473367700 349497954 297551936 112270368 112270368 106532872 286203008 629053987 934289760 934289760 639450651 929031839 929031839 803488906 726737589 797477987 797477987 734577911 64228080 226659392 226659392 220250412 209125752 209125752 78129642 97402022 224396364 224396364 212080972 209979724 329726322 329726322 318767192 847253504 847261760 847261760 47162387 115738648 734032238 734032238 519565717 297969955 571474449 874738050 874738050 956536863 956536863 428608614 566190548 588753024 588753024 313029676 313029676 525545764 525545764 863143583 863143583 359010042 949027204 949027204 479379719 961352876 961352876 1062267034 1062267034 1043551135 962895145 962895145 466022807 1042531762 1042531762 501843942 501843942 460399560 460399560 146820108 245366928 245366928 235308020 94428872 94428872 185101384 185101384 192154628 192154628 156503584 156503584 219695112 219695112 709931245 709931245 314065794 391645170 478152936 478152936 314838516 314838516 249031390 517223337 856196377 856196377 354468138 806230208 806230208 381030210 348336330 906649628 906649628 680769160 244094136 244094136 131898516 231317048 231317048 380245866 380245866 138064484 379376214 379376214 476536490 476536490 589435185 589435185 672042317 672042317 910501707 910501707 339952275 885924963 885924963 526756831 969292027 969292027 457586332 240851126 354755696 380374362 380374362 285803544 826973914 826973914 167778388 346759040 427498242 427498242 353450562 353450562 245368392 245368392 29378088 24021833 126916321 805710662 999412546 999412546 545851201 545851201 135540242 231335148 662974160 731120191 731120191 201791563 580327846 674105885 902604023 966456545 966456545 714855971 537022570 1025548463 1025548463 894620331 830640640 830640640 12582976 270363136 270363136 87947312 369459824 369459824 304331242 85636936 127473464 379137912 379137912 353241410 395189346 888703642 888703642 618679112 618679112 293246813 840717820 840717820 705676150 964770245 964770245 891716167 973259341 973259341 606110612 883684683 883684683 605670811 82625097 585527936 585527936 106354840 390119676 801558195 801558195 618139188 618139188 738734923 791806534 1066318124 1066318124 89568632 89568632 40844688 40844688 37948672 4458624 65048576 65048576 54903984 97178312 210096076 210096076 364299542 452295572 452295572 324013798 324013798 59271316 183553636 183553636 14803392 308248832 308248832 48033922 17176608 166972488 258293101 783496029 783496029 738200305 539769752 207662352 207662352 172101648 134266884 76611592 169445805 563258337 576201833 585610896 585610896 169692880 169692880 198052868 198052868 184807476 271072052 310905874 310905874 460142260 478222574 478222574 520366442 520366442 502532666 422119988 422119988 442237284 442237284 441001812 318289576 318289576 322744184 408759238 408759238 614660726 992512365 992512365 766268703 757088583 603624801 573050516 712773525 939202862 939202862 799087981 855794856 855794856 126402682 370112594 370112594 367601130 367601130 343352552 349858504 349858504 355834058 364719978 364719978 82126312 629697865 629697865 607553282 607553282 555418648 572410923 572410923 556455858 428657766 678318590 678318590 594470928 594470928 568989153 629640928 629640928 951716482 951716482 894993747 558239792 558239792 583082193 583082193 1037186416 1037186416 686239564 822891943 963284003 963284003 959551240 84447272 84447272 69304712 69304712 23128320 2408448 33591296 588420624 588420624 151521280 583368995 583368995 416749623 863197564 863197564 746212232 746212232 688588601 626051208 626051208 206244540 474487224 474487224 175282480 175282480 252891248 934466044 934466044 189038920 266652156 266652156 195416704 195416704 85129692 261116040 261116040 260157984 260157984 247698252 209858632 4194432 1920768 142352516 152086704 152086704 162719872 257334176 257334176 534780372 534780372 352720938 446483998 691820810 998249922 998249922 892031785 1046680546 1046680546 653138609 653138609 591470769 749003728 749003728 584061072 892342369 892342369 874512651 351286993 398537780 515973342 515973342 292314176 81128152 94007364 215023212 215023212 210523724 210523724 340303422 340303422 427202474 427202474 266995644 143606212 385352112 385352112 120722074 108787608 358626266 358626266 358236224 379399984 379399984 124528400 64427840 64427840 121244864 121244864 102178312 69089816 79900872 79900872 67773632 743572160 743572160 608829636 608829636 605247024 890254386 935130024 935130024 848474429 733066348 904035320 904035320 840598042 840598042 343255674 343255674 334181874 358810712 358810712 18035728 11398464 9732672 10643648 10643648 92276136 92276136 30166176 68607008 68607008 74304586 74304586 277881410 348497666 348497666 338377792 361379328 361379328 45554008 129315928 270140546 386339264 386339264 373933064 373933064 344375352 344375352 403052550 403052550 692195493 692195493 1007682966 1007682966 603979943 573435153 941198118 941198118 677981893 677981893 649810584 885797015 951071598 951071598 480833806 480833806 785408578 785408578 646045785 477440910 477440910 503330432 503330432 353514025 1062252943 1062252943 726885181 293392652 708887704 708887704 501619595 733562248 733562248 216648125 116196233 74896856 74896856 546826240 546826240 972042392 972042392 931358259 931358259 456657076 798397672 798397672 676450461 676381317 150693205 482919630 482919630 448027674 448027674 739424432 739424432 659476154 659476154 480381112 480381112 101501976 680053332 680053332 662837802 890635148 1027868847 1027868847 938366405 938366405 732491695 732491695 488969780 488969780 537262777 578867328 583143633 919778846 919778846 882301515 844186205 844186205 1042298638 1042298638 784007572 784007572 564472053 189074909 694783254 1010642703 1010642703 927326095 669715747 680823648 680823648 296171606 757072510 972636960 972636960 629736528 328846875 299261536 285606024 205595012 205595012 60666800 384172560 384172560 155069602 558537573 768606957 768606957 886437001 886437001 579092496 805489157 805489157 1066900341 1066900341 559395533 168176396 841267992 914670108 914670108 74842771 762607717 762607717 691660581 691660581 516023845 1027797374 1027797374 843503763 825825186 825825186 179578709 340993806 425722185 559229601 559229601 705816582 705816582 838401348 838401348 311635585 987834620 987834620 563195928 419457126 291746898 291746898 723456158 723456158 961567959 961567959 823427909 823427909 968639727 968639727 503058414 484618514 935013237 935013237 318923344 701200484 701200484 680475337 85609669 453340714 453340714 354265142 11862536 11862536 9437760 278980504 440698196 440698196 176475840 169214484 195238400 400166826 404146724 404146724 475064334 522247960 522247960 384427482 1033148674 1033148674 951283469 346145054 1032949534 1032949534 1051035933 1051035933 741681933 739313057 1033193187 1033193187 740787486 691276581 675421088 143757712 177479672 251064548 251064548 244875880 244875880 212995852 212995852 213465440 788135220 788135220 595577396 599215424 599215424 672393984 706483333 706483333 387564312 348111018 348111018 575860864 575860864 547913728 294650466 741474536 741474536 815868225 815868225 955934040 955934040 939275961 908606626 611624045 611624045 831046750 831046750 757122359 613078089 362365263 459352202 459352202 602415408 602415408 564144176 62915024 38814866 326721666 326721666 296575740 709390086 709390086 466626294 466626294 358613418 633373440 633373440 544301545 541139200 541139200 824312021 824312021 184845552 184845552 540704768 579948384 596664944 596664944 61752976 61752976 146872680 508705398 508705398 254465340 287510288 530650674 530650674 464593782 450169006 527159480 527159480 202109964 348026318 660210753 660210753 59509872 63817072 72751496 380774530 380774530 244329718 814230192 814230192 731194884 731194884 436681238 616439385 616439385 1042220944 1042220944 332185168 604293129 604293129 187772416 607989513 607989513 205096705 438849338 725041836 725041836 761265837 761265837 282137257 943759268 943759268 372844314 465316252 465316252 635572176 635832178 635832178 288169626 288169626 87924592 845881194 845881194 620773968 584569856 1062733832 1062733832 1049764601 1060768283 1060768283 509944080 987088800 987088800 461860243 883014069 883014069 1047112034 1047112034 1004400375 865913472 865913472 694782913 694782913 685719237 546976576 645993681 645993681 651444057 651444057 453324105 427436668 427436668 228066924 157024322 1012800752 1012800752 906563091 906563091 584790443 584790443 506991655 517997022 661586480 983514711 983514711 453320777 966263160 966263160 580972104 135317377 28929632 32429824 74390984 74390984 68258752 68258752 29858592 29858592 183632632 183632632 651610652 651610652 92775033 90397633 647653954 1009963791 1009963791 848886802 750340833 723210258 329638880 401605626 401605626 423178830 423178830 364065770 364065770 120845112 545191448 559340193 559340193 280208153 371275426 955801109 955801109 985879642 1011502357 1011502357 740742539 641777817 593816802 604310010 604310010 149162436 519857450 519857450 218606364 218606364 300390306 300390306 268775770 274751752 342128288 356515626 356515626 353104938 353104938 249511944 846852224 846852224 404954648 436519948 436519948 109841426 203685888 203688204 1069548588 1069548588 851969235 474121270 505154592 521142846 521142846 168335136 465656720 465656720 46211264 290555680 290555680 278059072 289527616 289527616 38543586 55981924 55981924 159118464 166062564 166062564 160426244 139300864 5704704 19637094 19637094 19362886 276880358 276880358 135268352 135531012 169888148 272855174 402690178 402690178 167903376 987595794 987595794 684027605 151437760 151437760 183759828 776692704 776692704 294399209 428443868 510283438 510283438 124965816 288496794 307288836 470919206 470919206 328798954 208278924 486027978 486027978 449252976 457709288 457709288 116754840 186579216 186579216 134791444 206507080 206507080 141243844 138999248 159576064 159576064 25744480 8555552 411740216 411740216 297551936 112270368 112270368 89136648 286203008 629053987 629053987 353989162 481205120 929031839 929031839 1012140687 1012140687 944020163 885446859 734577911 572971281 572971281 776899896 776899896 224867352 227017836 227017836 151530984 224396364 224396364 212080972 422641958 422641958 369367361 796925977 847253504 847253504 929670558 929670558 607060291 910898232 910898232 839005910 839005910 571474449 874738050 874738050 956536863 956536863 428608614 566190548 588753024 588753024 299244160 133195634 388288344 388288344 336716298 359010042 359010042 297336298 297336298 276888072 625763512 625763512 122522793 0 0 68158976 68699144 68699144 101043458 461575284 501843942 501843942 460399560 460399560 146820108 135043972 217196332 217196332 70253832 35551860 185101384 185101384 176447168 176447168 173989524 102244080 95120220 40506768 169130176 169130176 167636804 145961796 478152936 478152936 314838516 754618733 991058209 991058209 856196377 920520683 920520683 806230208 806230208 381030210 788999312 906649628 906649628 755212424 243486848 52320320 60343920 60343920 28096784 18993480 18993480 81303944 83806928 118539880 118539880 119015424 186646836 193004896 539624028 539624028 249107873 281022784 281022784 274862466 383073076 988538484 988538484 457586332 808290395 808290395 354755696 380374362 380374362 933884283 933884283 867312490 867312490 823730496 427498242 427498242 353450562 353450562 73487560 335574150 335574150 148984204 452423503 838441506 840032323 840032323 545851201 545851201 135540242 298848456 1058242666 1058242666 731120191 1006854178 1006854178 777117727 167940791 67436548 957164080 983350659 983350659 875180589 894620331 894620331 860530531 830640640 1051720765 1051720765 562430428 601419556 601419556 369459824 304331242 97112178 277399826 379137912 379137912 394009480 670305186 670305186 653663193 885658685 885658685 870617205 840717820 876035756 876035756 833700365 823132707 484535069 396755606 610406792 610406792 1041496814 1041496814 560381175 350347722 661921930 661921930 427986254 466112992 801558195 801558195 109122568 444146230 738734923 791806534 791806534 156762985 80925384 7787592 8265600 8265600 4591616 20194816 60730288 60730288 40992608 37225216 185985138 185985138 364299542 452295572 452295572 409233542 409233542 437382274 437382274 715442517 816638279 816638279 994066055 994066055 869145008 538778902 538778902 783496029 783496029 738200305 696400768 696400768 207662352 172101648 134266884 63332468 169445805 563258337 576201833 585610896 585610896 703598200 960130102 960130102 157933988 155652324 442544032 779562293 795488586 801247485 801247485 773863868 520366442 520366442 337644350 490211632 490211632 195371556 441001812 441001812 301288224 192987252 166831824 408759238 1031882233 1031882233 993872874 487132970 327417739 591926788 737153553 737153553 581960529 939202862 939202862 483398437 855794856 855794856 126402682 370112594 370112594 367601130 367601130 343352552 343352552 42867792 42867792 363905353 639402232 639402232 629697865 629697865 607553282 607553282 555418648 572410923 572410923 556455858 428657766 678318590 678318590 594470928 594470928 568989153 629640928 629640928 265540441 473744822 473744822 369017130 557986198 583082193 583082193 581772616 581772616 686239564 686239564 258958126 524214712 524214712 361636846 675603217 811983203 811983203 171972453 57095792 57095792 681050337 681050337 587912816 675867697 675867697 650336013 863197564 863197564 891419312 891419312 688588601 626051208 712376938 712376938 846470766 846470766 686099801 577091889 736223584 1007739725 1007739725 975327727 266652156 318898956 347099288 347099288 80904304 261116040 261116040 250794172 247698252 247698252 209858632 235083304 235083304 224397708 651495437 651495437 163916004 1044785015 1044785015 534780372 534780372 352720938 446483998 691820810 691820810 412357090 300026438 426980262 609693430 910229608 910229608 868294899 752078046 840144832 840144832 572122641 851125770 851125770 845087903 552463972 727174165 923271096 923271096 349091968 181799764 175127648 131623832 120636216 119667000 207373336 774111284 774111284 741396768 783074672 783074672 124399952 218847548 218847548 92948496 358626266 633939936 669602464 669602464 379399984 255600168 12129792 85272968 85272968 102178312 102178312 389787955 865524339 865524339 570759683 562423905 538477095 608829636 608829636 444646648 890254386 890254386 848474429 848474429 733066348 848334978 848334978 805438473 663389274 343989336 367921552 367921552 40109370 61233424 61233424 46957968 10751504 38584464 38584464 92842912 92842912 217319396 217319396 68607008 227541900 227541900 277881410 277881410 338377792 338377792 273093642 298727586 298727586 97391712 313532338 313532338 309867072 373933064 373933064 344375352 344375352 201776600 390340043 692195493 692195493 1007682966 1007682966 186098577 573435153 573435153 275200544 677981893 677981893 649810584 873463134 873463134 506061451 482468046 480833806 785408578 785408578 646045785 469659416 540615866 540615866 157708804 157708804 152068992 152068992 26280064 26280064 8388672 9962816 11535168 733562248 733562248 216648125 152594636 558940833 683251424 683251424 546826240 537067529 493433310 668542271 668542271 456657076 415769858 614617720 614617720 590398257 1011154945 1011950223 1011950223 710160583 954611732 954611732 3281664 3281664 132913744 609103728 609103728 72417993 876087296 876087296 540285449 890635148 1027868847 1027868847 938366405 938366405 732491695 780900886 780900886 639557145 537262777 578867328 583143633 583143633 570560529 570560529 567359010 859492814 1042298638 1042298638 784007572 784007572 517999830 189074909 694783254 1010642703 1010642703 692373669 974570565 974570565 718423908 718423908 963883523 972636960 972636960 449459439 316722678 506648906 506648906 475715486 357884614 423044742 423044742 891842530 891842530 1047745757 1047745757 942591817 990297437 990297437 957485607 708286619 708286619 580038720 547553536 582218577 799414325 799414325 119755561 67244040 67244040 966844524 1034175785 1034175785 925746409 1044956319 1044956319 1027797374 843503763 825825186 825825186 179578709 340993806 340993806 559229601 833758214 833758214 436228422 838401348 838401348 311635585 121893048 90040672 47630848 60940656 394318074 810238850 810238850 513551060 708713260 708713260 680140520 1058035736 1058035736 300547301 304304590 484618514 484618514 457511602 322069172 293974112 682077848 682077848 387632583 74707848 72433920 3145984 11862536 570843322 893909163 893909163 1027939694 1027939694 782973557 782973557 651742149 605464418 605464418 1056441800 1056441800 475064334 384427482 384427482 1033148674 1033148674 401794249 135017496 135017496 251658300 838935346 838935346 556794657 749756008 777520797 777520797 691276581 691276581 675421088 362245542 256024952 282546582 282546582 41478556 24907680 212864236 212864236 213465440 788135220 788135220 595577396 599215424 599215424 587334193 706483333 714081316 714081316 597165681 348111018 575860864 684181731 810216452 810216452 741474536 741474536 815868225 815868225 955934040 955934040 939275961 908606626 253100304 253100304 557076564 599530337 613078089 613078089 34264080 34264080 549989792 549989792 26019041 62915024 62915024 38814866 326721666 326721666 644047789 708628245 708628245 524815365 494454702 468492272 633373440 633373440 626828898 626828898 552832952 320278528 320278528 290199680 290199680 540704768 540704768 9855040 9855040 42139904 42139904 215635232 231858924 241997984 254465340 296886272 296886272 275461506 275461506 107017352 69419136 11146304 11146304 285213376 318784208 318784208 298894050 66279984 66279984 59319408 59293744 172822880 172822880 38086800 41953472 41953472 1973760 1973760 1973760 6099670 684072576 684072576 347202657 959544322 959544322 687939621 687939621 120089381 438849338 725041836 725041836 393802767 0 20043252 182138580 462107222 462107222 463659394 463659394 356519040 356519040 319780090 90335890 90335890 87924592 610332720 610332720 214734532 350517432 1062733832 1062733832 924090438 1060768283 1060768283 623905797 151558628 726155924 799935340 883014069 883014069 766955868 549789893 550069441 550069441 727265882 727265882 854897216 854897216 546976576 645993681 645993681 651444057 1023611623 1023611623 503384804 508171422 725824536 752098387 1012800752 1012800752 1017119484 1017119484 895558522 895558522 492422649 517997022 661586480 983514711 983514711 671881348 717808624 717808624 544784900 135317377 304178608 341771056 341771056 308404626 308404626 277253040 370346682 370346682 512891712 512891712 562290852 562290852 90397633 90397633 543250958 1009963791 1009963791 750340833 1019815119 1019815119 98405895 65850864 573975624 626522793 626522793 281093712 373430792 855422089 855422089 564748968 545271785 821914808 910189168 910189168 548268042 985879642 1011502357 1011502357 740742539 973608196 1026168111 1026168111 893404551 805490691 436392963 117454344 125413240 125705336 125705336 106700680 100332552 18999656 342128288 356515626 356515626 353104938 353104938 17352704 17352704 940967172 943410695 943410695 874214917 874214917 143140583 423698598 1069548588 1069548588 889209899 750944320 750944320 463218875 75748980 419265850 465656720 474601100 477625230 477625230 290555680 279438400 403285568 403285568 404673856 404673856 2171136 2171136 65792 0 743424 4654080 18952384 19637094 19637094 19362886 304601968 304601968 289148706 270752228 270752228 272855174 402690178 776200217 989045007 989045007 987595794 684027605 161743232 161743232 183759828 776692704 776692704 613028937 608715272 608715272 113625240 113559768 118301664 392447992 392447992 347473184 347473184 43126890 163230124 352810696 352810696 177755252 177755252 62131056 186579216 186579216 125633516 0 0 142672980 142672980 193592576 193592576 227810404 270319156 411740216 411740216 104695296 309356810 309356810 89136648 271601232 271601232 268452688 275258626 275258626 410432138 877733892 1012140687 1012140687 944020163 885446859 617427139 572971281 572971281 776899896 776899896 224867352 227017836 227017836 271268076 271268076 202056716 438306560 438306560 422641958 369367361 796925977 796925977 668475178 929670558 929670558 607060291 910898232 910898232 839005910 839005910 319556658 747913416 747913416 436355120 419614758 107342232 111493312 111493312 269353984 269353984 48770976 290770112 290770112 57022464 159471060 244478333 738780965 738780965 623687683 1063250961 1063250961 710587966 357718026 302088338 810440978 810440978 541387648 911673616 911673616 461575284 171776354 72647168 116299880 116299880 109946968 161151844 161151844 802388109 802388109 739594976 739594976 655645104 641648784 696784905 696784905 759878796 759878796 169130176 169130176 532726150 532726150 398774544 481086020 481086020 754618733 991058209 991058209 944918556 944918556 920520683 511914078 349302182 322912050 819858030 819858030 755212424 755212424 429244398 485387176 527872958 527872958 337726642 349275496 349275496 272721930 274180224 341187210 352326362 384306359 782238023 782238023 302254199 713842689 809602243 809602243 419447463 1072446803 1072446803 988538484 1014604677 1014604677 808290395 808290395 172535772 172535772 77635634 999341580 999341580 932150907 867312490 823730496 303638034 344331264 344331264 99106442 345776258 345776258 335574150 148984204 452423503 838441506 838441506 429917481 429917481 537427480 537427480 537079809 1058242666 1058242666 1057816720 1028467887 1006854178 777117727 751457501 751457501 957164080 983350659 983350659 875180589 875180589 860530531 860530531 489812452 1051720765 1051720765 562430428 601419556 601419556 118505472 97112178 300351808 300351808 277399826 90578728 394009480 670305186 670305186 653663193 885658685 885658685 1044401456 1044401456 876035756 959286284 959286284 823132707 801138752 130343296 610406792 610406792 1041496814 1041496814 560381175 350347722 661921930 661921930 860144065 860144065 717752457 853056585 853056585 1002561783 1002561783 902995871 902995871 307778097 80925384 7787592 8265600 8265600 6764928 20194816 60730288 60730288 62395180 106111980 220889944 239001372 263693408 263693408 45129744 409233542 409233542 437382274 437382274 715442517 816638279 816638279 994066055 994066055 869145008 538778902 538778902 455604534 458150896 684109493 696400768 696400768 57072048 57072048 57072048 50758016 102361600 103079576 588390146 588390146 810830248 810830248 960130102 960130102 157933988 155652324 442544032 779562293 795488586 801247485 801247485 773863868 361523374 361523374 122490044 490211632 490211632 411607300 411607300 77594760 102834456 102834456 34652688 209054629 1031882233 1031882233 993872874 990524536 1015095375 1015095375 737153553 737153553 581960529 193405040 516242143 516242143 420546561 613089349 613089349 8470552 44146992 44146992 398888528 398888528 60445952 42867792 302524472 302524472 639402232 639402232 596748568 596748568 113812800 117839928 117839928 79345600 512806976 798026310 798026310 580756733 537110544 537110544 524316935 524696491 719831348 721451300 721451300 549765201 549765201 808444756 808444756 291518581 812518772 812518772 581772616 806880258 817635776 817635776 732936832 732936832 562314070 675603217 811983203 811983203 578967584 578967584 57095792 681050337 681050337 587912816 675867697 675867697 650336013 650336013 357636670 891419312 891419312 386311077 438867118 712376938 712376938 846470766 846470766 686099801 577091889 736223584 1007739725 1007739725 975327727 541070104 541070104 347099288 347099288 80904304 150082216 169869588 169869588 100798804 76161088 72421632 235083304 235083304 224397708 651495437 651495437 163916004 1044785015 1044785015 316672594 316672594 658583658 676592896 676592896 652382901 652382901 332615938 332615938 371371262 910229608 910229608 868294899 752078046 840144832 840144832 903160919 903160919 992353206 992353206 828582864 828582864 929625860 929625860 349091968 290274610 175127648 82200584 39754456 5041344 80078976 774111284 774111284 741396768 783074672 783074672 124399952 218847548 218847548 92948496 104878368 633939936 669602464 669602464 255600168 255600168 131797816 131797816 116276832 116276832 69414258 389787955 865524339 865524339 570759683 879098595 879098595 641553256 495109255 538230129 873468433 873468433 838907937 838907937 808778104 808778104 287566457 282153897 812698537 812698537 812666458 372117936 372117936 308829384 61233424 46957968 23088128 38584464 38584464 92842912 159636172 217319396 217319396 6556256 227541900 227541900 140250080 217645956 217645956 605169889 605169889 314581696 898711769 898711769 346095930 346095930 90515880 61049323 870453747 912404843 912404843 849465424 457355640 432723294 187766836 528220324 528220324 324612752 324612752 172365972 275200544 291181440 291181440 136208010 873463134 873463134 506061451 482468046 477677454 527598062 527598062 469659416 469659416 540615866 540615866 377356708 157708804 946029605 946029605 673499397 563404068 406751748 406751748 381847352 673726789 673726789 153092388 621871721 621871721 683251424 683251424 540806086 537067529 838214056 838214056 668542271 411960207 793586877 793586877 614617720 590398257 1011154945 1011950223 1011950223 710160583 954611732 954611732 655569712 655569712 635774891 609103728 609103728 981492829 981492829 876087296 386138898 939923456 939923456 894114297 894114297 254609428 481282543 1027804901 1027804901 972908778 468632109 436863304 514463070 514463070 506074398 506074398 503354410 859492814 859492814 1006635536 1006635536 1040778259 1040778259 906495003 570967555 710255015 744509715 744509715 974570565 974570565 849780387 718423908 963883523 963883523 830994531 830994531 1055538007 1055538007 908821910 475715486 357884614 423044742 423044742 891842530 891842530 1047745757 1047745757 942591817 990297437 990297437 957485607 1012408074 1012408074 758024859 564273504 582218577 799414325 799414325 274780293 274780293 171864645 966844524 1034175785 1034175785 925746409 1044956319 1044956319 367880565 432300492 471723534 555017288 864126079 864126079 795216953 892603179 892603179 833758214 760317094 760317094 290735910 290735910 203598178 278701852 363824634 363824634 394318074 810238850 810238850 609509674 708713260 708713260 521407038 1058035736 1058035736 300547301 414309746 737791327 781655127 781655127 581715585 696452229 696452229 682077848 387632583 278717456 772923920 772923920 242820750 872538131 893909163 893909163 1027939694 1027939694 782973557 782973557 651742149 605464418 605464418 1056441800 1056441800 460534710 348356990 310521410 144501953 588578833 588578833 159864792 670042181 670042181 838935346 838935346 678186216 749756008 777520797 777520797 198675164 214186229 779061637 779061637 690373384 690373384 644204936 644204936 609063848 625311629 625311629 106977724 129174568 590693081 590693081 28475392 195461376 195461376 196151588 714081316 714081316 597165681 452010966 452010966 684181731 810216452 810216452 558106785 550116448 418043334 144838086 159204928 159204928 520294226 520294226 715562389 715562389 830773866 830773866 165981920 382029734 382029734 325881210 564978688 564978688 560729504 560729504 15019136 25461984 31834352 74482977 644047789 708628245 708628245 769913325 769913325 599689868 818107685 818107685 626828898 626828898 552832952 358147848 320278528 290199680 541611653 541611653 539768832 539086337 537353760 50402208 50402208 240105000 240105000 268287892 268287892 296886272 296886272 275461506 275461506 268963840 307368466 307368466 210384534 67182600 1022119399 1022119399 298894050 66279984 66279984 359236778 359236778 172822880 607128684 854594267 854594267 738660990 1048684853 1048684853 613973709 402856584 920075973 1040196171 1040196171 959544322 959544322 687939621 687939621 699188712 762088436 762088436 356286729 862591130 936101538 936101538 517154813 602011264 821635011 979907249 979907249 874181913 933271336 933271336 117720826 390887784 390887784 814466698 814466698 399318927 350517432 1037762958 1037762958 293749887 913754804 913754804 623905797 151558628 726155924 799935340 799935340 713821269 713821269 267699565 43002960 151330826 727265882 727265882 854897216 960596415 960596415 349718021 739794390 851443796 1023611623 1023611623 503384804 508171422 725824536 752098387 956776074 956776074 1017119484 1017119484 895558522 895558522 653959865 653959865 939315318 939315318 730807413 671881348 717808624 717808624 137119941 63497584 304178608 341771056 341771056 308404626 308404626 277253040 370346682 370346682 512891712 512891712 393676932 470828684 700451136 700451136 698482981 279978022 420878922 556342252 1019815119 1019815119 98405895 65850864 573975624 626522793 626522793 643417146 886662449 886662449 855422089 564748968 545271785 821914808 910189168 910189168 548268042 1042980232 1042980232 977586327 252183612 973608196 1026168111 1026168111 893404551 805490691 436392963 283830010 235157684 296349956 314445378 314445378 289683136 83004704 83004704 89813128 89813128 285288194 285288194 265269666 232578628 940967172 943410695 943410695 874214917 874214917 143140583 423698598 1002455114 1002455114 889209899 750944320 750944320 463218875 262222972 419265850 419265850 474601100 477625230 477625230 271626752 279438400 403285568 403285568 404673856 404673856 2107392 136408320 136702212 136702212 137370112 137370112 18952384 18952384 1018247567 1018247567 689163779 689163779 349531560 562172686 945054629 945054629 337893763 1017294082 1017294082 989045007 570712772 115088964 161743232 161743232 111622488 114889676 613028937 613028937 608715272 608715272 524576982 131459832 271664754 392447992 392447992 391687576 347473184 43126890 479732430 479732430 352810696 415540844 415540844 29022048 29022048 14239236 77611308 109316456 109316456 367556078 367556078 193592576 337915474 387246384 387246384 338764554 178095718 126165928 309356810 309356810 327682576 327682576 560207083 560207083 544652057 275258626 410432138 410432138 358810058 336895054 1028955290 1028955290 907314707 907314707 865260147 306557089 112403584 112403584 92225448 92225448 271268076 501486850 501486850 438306560 438306560 159449370 18002536 209883960 495024976 668475178 736235991 788566176 788566176 764423372 764423372 679090053 347103841 842842187 842842187 747913416 902509803 902509803 325595521 1069572538 1069572538 808316234 303366534 291408290 21299328 57022464 183003796 183003796 244478333 738780965 738780965 623687683 1063250961 1063250961 710587966 357718026 302088338 810440978 810440978 548540422 911673616 911673616 255167738 306056826 396979552 396979552 116299880 109946968 161151844 161151844 802388109 802388109 739594976 739594976 655645104 641648784 696784905 1021040396 1021040396 759878796 481172814 153163739 532726150 532726150 514244788 481086020 481086020 814877080 814877080 782113563 944918556 944918556 511914078 511914078 349302182 322912050 819858030 819858030 345150080 429244398 429244398 485387176 527872958 527872958 356724906 349275496 349275496 274270532 274180224 341187210 352326362 384306359 782238023 782238023 413925622 713842689 809602243 809602243 419447463 1072446803 1072446803 400154940 1014604677 1014604677 774156958 774156958 928911178 928911178 843715731 999341580 999341580 932150907 365404275 278636172 303638034 303638034 109718792 109718792 345776258 345776258 339598080 339598080 70446346 386427258 386427258 329352762 329352762 537427480 537427480 708676056 708676056 1057816720 1057816720 1028467887 1037905647 1037905647 751457501 751457501 674460597 674460597 1054351584 1054351584 977850571 878368395 550158784 550158784 347231044 272410112 270919938 130714224 130714224 118505472 94897120 300351808 300351808 115882802 67141632 306366089 538448019 608174217 608174217 307255680 541742400 1044401456 1044401456 262777633 959286284 959286284 801138752 805620079 805620079 872464395 872464395 198893061 559346268 585883891 585883891 385470456 602672625 860144065 860144065 717752457 853056585 853056585 1002561783 1002561783 902995871 1073565330 1073565330 970120955 282055934 282055934 667329929 667329929 925024388 925024388 471373576 471373576 483315130 534169990 534169990 411825222 310452770 467125890 467125890 421870960 421870960 439288066 439288066 411831366 319627380 52234496 173080768 177283668 177283668 7343332 24366068 54335636 142193770 1056096094 1056096094 352770090 352770090 352770090 272961192 22574080 373963296 588390146 588390146 810830248 810830248 358658731 84346882 11100336 66546672 66546672 104936872 174666660 174666660 467732972 467732972 361523374 361523374 225291576 431110118 431110118 411607300 411607300 186564022 224597158 224597158 531719450 531719450 241595534 241595534 176266793 990524536 1015095375 1015095375 971003606 324274866 324274866 295485648 516242143 516242143 420546561 613089349 613089349 486551666 527450872 527450872 398888528 398888528 370689880 370689880 367880274 367880274 563898097 563898097 861933281 861933281 850253666 299558593 117839928 79345600 506189624 1058933204 1058933204 976503227 679383239 576925732 768741808 768741808 730997416 721451300 721451300 549765201 549765201 808444756 808444756 291518581 812518772 812518772 445515905 806880258 817635776 817635776 732936832 732936832 562314070 193280004 193280004 170994784 578967584 578967584 63331904 549453984 549453984 20971713 4194304 4194304 4194432 4194432 128 407916672 675713030 675713030 1046145048 1046145048 229411445 360758594 783757553 927544091 927544091 240214616 565322720 565322720 243744697 541070104 541871628 754466928 754466928 250819548 250819548 236768796 236768796 92611964 92611964 72421632 238347152 238347152 205858956 221327676 221327676 134546120 94452064 94452064 81865812 138748060 658583658 676592896 676592896 652382901 652382901 332615938 332615938 371371262 730391182 872538768 970705431 970705431 842781408 842781408 903160919 903160919 992353206 992353206 828582864 828582864 929625860 929625860 290274610 290274610 187711736 150596484 150596484 125412856 101596696 203516528 203516528 102025752 747678288 747678288 603292608 587589681 109439064 109439064 623502664 623502664 80430177 25350352 110180352 110180352 131797816 131797816 116276832 128024072 128024072 273849523 438824228 438824228 336337186 879098595 879098595 1022675919 1022675919 538230129 538230129 444746284 444746284 392688592 808778104 808778104 789876845 282153897 812698537 812698537 812666458 372117936 372117936 308829384 12896448 25165920 25165920 32769856 32769856 84670400 159636172 159636172 164502756 164502756 160832644 231279360 231279360 83109100 681051717 748685064 748685064 314581696 898711769 898711769 346095930 346095930 576782690 576782690 870453747 912404843 912404843 849465424 457355640 432723294 388154894 528220324 528220324 324612752 324612752 7156642 134688145 708601191 708601191 679600197 953954183 954801088 954801088 395482612 477677454 477677454 374073704 699516232 699516232 557996480 522067518 377356708 285826048 946029605 946029605 673499397 563404068 406751748 406751748 381847352 673726789 673726789 153092388 621871721 621871721 547165632 550384582 550384582 409215104 838214056 838214056 679745834 411960207 793586877 793586877 790598944 775285533 481543580 984282454 984282454 686199898 811274376 811274376 676065921 655569712 1040319503 1040319503 497232512 981492829 981492829 305235721 363594728 939923456 940581565 940581565 894114297 741416092 741416092 1027804901 1027804901 972908778 598364971 578867328 583143633 614895817 646336633 646336633 467973298 556789230 556789230 1006635536 1006635536 1040778259 1040778259 906495003 570967555 710255015 744509715 744509715 489839139 849780387 849780387 563099072 695036929 695036929 830994531 830994531 1055538007 1055538007 908821910 230826964 276990016 276990016 235337238 68941320 407577321 726897362 726897362 541249665 101733889 545044808 545044808 1012408074 1012408074 758024859 678802948 678802948 712848820 712848820 614358484 614358484 914541399 940785669 940785669 899792900 621029643 993788429 993788429 216008424 432300492 471723534 555017288 864126079 864126079 795216953 892603179 892603179 542545632 760317094 760317094 290735910 290735910 203598178 278701852 363824634 363824634 298551202 619394505 619394505 840075667 840075667 489372450 521407038 654230906 654230906 568275835 414309746 737791327 781655127 781655127 581715585 696452229 696452229 294408033 336652049 336652049 772923920 772923920 543007700 872538131 872538131 823971363 571761348 147950097 115602512 115602512 383689168 383689168 64498442 87892920 87892920 240589120 240589120 98195072 144501953 588578833 776930088 776930088 707280257 670042181 694553172 694553172 753458472 753458472 271089439 258175160 258175160 395205191 779061637 779061637 690373384 690373384 644204936 644204936 609063848 757195777 757195777 106977724 129174568 590693081 590693081 557543556 557543556 716378549 716378549 567694561 567694561 560384162 560384162 452010966 163651812 270854628 270854628 472684746 472684746 418043334 293602176 293602176 159204928 520294226 520294226 715562389 715562389 830773866 830773866 165981920 382029734 382029734 325881210 564978688 564978688 560729504 560729504 8882432 71635976 71635976 74482977 583755313 637485033 637485033 769913325 769913325 599689868 818107685 818107685 607108328 607108328 358147848 358147848 208825608 206922885 689998116 689998116 539768832 539086337 537353760 181945044 63418736 259755392 392945282 392945282 268287892 262852588 124667348 444858934 444858934 511661490 511661490 477238030 297795810 316815198 1022119399 1022119399 395691890 395691890 363979616 359236778 359236778 86582376 635440928 854594267 854594267 738660990 1048684853 1048684853 613973709 402856584 920075973 1040196171 1040196171 583812486 948113814 948113814 847914051 699188712 762088436 762088436 399528568 862591130 936101538 936101538 517154813 602011264 821635011 979907249 979907249 874181913 933271336 933271336 352712634 393419048 393419048 814466698 814466698 399318927 334276346 229063020 243318876 286661152 913754804 913754804 830480546 830480546 783029097 783029097 367017087 145304896 134819140 134819140 43002960 68439859 972004463 972004463 860431539 960596415 960596415 349718021 739794390 851443796 940048389 940048389 180487820 180487820 119552726 405279674 625218617 625218617 936904705 936904705 447964625 447239118 803378851 989591511 997639799 997639799 974514711 562751508 166794385 175170769 175170769 142469505 29903968 29903968 285146616 285146616 68274400 77767008 443249172 443249172 393957200 594887055 594887055 699044623 700451136 700451136 698482981 441859032 807477507 807477507 956301351 956301351 445731904 445731904 499720738 499720738 410833620 643417146 886662449 886662449 573839952 59107440 63275136 271909664 271909664 110126922 615647500 1042980232 1042980232 977586327 508042122 508042122 407447949 407447949 692398245 692398245 395559068 1044938011 1044938011 772893689 772893689 745205862 745205862 83004704 83004704 333017315 569902785 569902785 568681057 568681057 921817427 921817427 914543606 872888331 872888331 545372173 76611842 19972160 215532984 239092892 556927588 630826052 630826052 267437052 262222972 202572088 158926516 112275912 154061152 154061152 169415568 169415568 181080772 181080772 169557524 169557524 34331920 178669892 178669892 136702212 137370112 137370112 538445569 539049223 1018247567 1018247567 689163779 689163779 349531560 562172686 945054629 945054629 640750850 1017294082 1017294082 653560716 313317970 302667446 133697092 201460416 203823372 203823372 114889676 85799160 85799160 524576982 524576982 131459832 271664754 271664754 391687576 391687576 104335658 52429104 479732430 479732430 285583040 415540844 415540844 29022048 257559084 257559084 154345012 154345012 151253028 367556078 367556078 177399888 337915474 387246384 387246384 338764554 315665696 126165928 126165928 22595232 327682576 327682576 560207083 616826441 616826441 106104330 673284161 673284161 767764429 774314141 1028955290 1028955290 907314707 907314707 865260147 795661952 795661952 267377296 267377296 251398108 297930924 501486850 501486850 478311206 377562700 159449370 18002536 209883960 495024976 541136622 1022365612 1022365612 788566176 625924509 288688290 298744418 347103841 842842187 842842187 436355120 902509803 902509803 325595521 1069572538 1069572538 808316234 303366534 291408290 92803272 80871520 183170972 183170972 174852404 178848484 178848484 383128610 383128610 238814240 190582452 135841284 541188108 541188108 548540422 548540422 474004710 474004710 255167738 306056826 396979552 396979552 89252096 213515608 213515608 107374888 128438680 155312292 155312292 109845108 109845108 795123132 795123132 1021040396 1021040396 576516636 481172814 168958152 80138210 514244788 514244788 231998426 508615745 814877080 814877080 782113563 350779352 907530805 907530805 519096336 519096336 452005568 452005568 632459284 742871048 742871048 221011972 266047064 308420920 356724906 356724906 184615958 274270532 274270532 273686856 336728586 336728586 205525638 352854064 413925622 413925622 316230336 316230336 292983616 292983616 405074782 405074782 492041224 492041224 373766298 808227352 808227352 928911178 928911178 843715731 834845588 834845588 181299455 278636172 278636172 237810716 67314704 127641344 220373732 220373732 86106408 339598080 339598080 685876829 714749709 738951973 738951973 346385234 842312552 842312552 893988578 893988578 816191289 816191289 1015875802 1037905647 1037905647 660875094 621515818 680112305 680112305 1054351584 1054351584 1047437858 973852421 973852421 604164105 604164105 386160945 555019438 572823804 572823804 318055640 318055640 100903264 100903264 67141632 67141632 369626810 549198978 575558225 575558225 333629074 541742400 857867361 977277328 977277328 420016469 295816278 526450737 805620079 805620079 1046549470 1046549470 743646371 559346268 585883891 585883891 385470456 90703272 90703272 187566112 206082308 740066472 740066472 247519245 85538196 242958954 1073565330 1073565330 970120955 282055934 282055934 667329929 667329929 925024388 925024388 471373576 471373576 483315130 534169990 534169990 411825222 310452770 467125890 467125890 421870960 421870960 439288066 545308737 565846117 565846117 770579949 771136568 771136568 994319836 994319836 286148723 315233490 967841717 1056096094 1056096094 352770090 352770090 352770090 272961192 121700864 373963296 542126336 846137002 846137002 635299810 896006816 896006816 277103552 736155972 839029555 1016011602 1016011602 935385871 935385871 550801700 343149550 252515068 225291576 447016968 514275678 514275678 294362680 186564022 224597158 224597158 531719450 531719450 283069018 373859930 775263104 901082381 901082381 971003606 971003606 324274866 324274866 295485648 2670848 2670848 17302144 17302144 75858042 486551666 527450872 527450872 220666852 345049368 370689880 370689880 367880274 367880274 567805016 654910521 861933281 861933281 850253666 810290976 810290976 596753488 915788400 1058933204 1058933204 976503227 679383239 621312128 768741808 768741808 730997416 696352981 551760064 409356620 327604338 141178390 195603988 269354560 284950594 284950594 280703488 178367540 150071904 40639504 23143296 9566784 9566784 193280004 193280004 170994784 591532129 591532129 63331904 45538144 135022133 135022133 162794432 162794432 915189481 915189481 454371894 654386086 892379189 892379189 1046145048 1046145048 229411445 360758594 783757553 927544091 927544091 240214616 574783953 777114536 777114536 657482572 541871628 754466928 754466928 250819548 612717032 612717032 566704353 555045568 339964162 339964162 390284092 452357054 452357054 277936718 238432720 302201680 308490642 653469766 653469766 403972107 39469080 83935368 446710962 446710962 702859749 702859749 509888809 589048520 589048520 872538768 970705431 970705431 842781408 842781408 808233987 808233987 833493424 833493424 421761192 421761192 458627464 510688774 510688774 431876934 277643254 300527082 300527082 522522472 522522472 876270888 876270888 754654340 720969556 720969556 603292608 587589681 144256293 450906738 623502664 623502664 890731322 890731322 483469850 483469850 398760538 276163546 374835712 374835712 319886010 211056914 438824228 438824228 336337186 650492466 650492466 1022675919 1022675919 425204610 425204610 444746284 444746284 392688592 605503509 789876845 789876845 538057472 538057472 213304073 94782628 23333280 30148672 30148672 25986240 25986240 25165920 32769856 32769856 84670400 84670400 157977736 164502756 164502756 160832644 231279360 231279360 144715560 681051717 748685064 748685064 840178305 840178305 26956392 268447752 335753226 576782690 576782690 118226976 101452824 545277188 545277188 304516443 388154894 388154894 420964510 456920886 456920886 429654352 7156642 134688145 708601191 708601191 679600197 953954183 954801088 954801088 386309306 401077196 401077196 417336102 699516232 699516232 557996480 62007440 47121024 289409024 289409024 11404514 10229568 335828225 607029259 607029259 589432752 772554929 772554929 593659820 593659820 589537565 589537565 550384582 550384582 409215104 409215104 1025523887 1042462506 1042462506 604530604 790598944 790598944 775285533 260844853 67741976 67741976 12583104 283616647 676065921 676065921 543855873 1040319503 1040319503 311244873 261949052 374131866 884377826 884377826 848429837 940581565 940581565 876612960 876612960 949627608 949627608 446014448 521331493 991885741 899044514 899044514 618458761 646336633 646336633 351263587 67461384 103330896 940181788 940181788 906759195 507783189 1040983068 1040983068 1020093621 1020093621 659874881 659874881 388410432 402604026 881038774 881038774 699156779 275831368 442671394 442671394 434468350 100216804 69667552 336462408 336462408 372018968 372018968 767637122 767637122 726897362 541249665 281131744 545044808 874382412 949754375 949754375 826521473 826521473 678802948 712848820 712848820 614358484 614358484 914541399 914541399 126185844 210363468 210363468 993788429 993788429 566806941 566806941 479054670 616254315 616254315 146487108 272620642 941068864 941068864 607892336 908055665 920700173 920700173 529163019 398494804 106899522 477950174 513624886 513624886 619394505 619394505 840075667 840075667 461999244 283848644 227306656 568275835 568275835 376180122 720704439 720704439 328469106 297869538 297869538 537155676 780275805 780275805 336652049 558027504 559601313 640652663 1064227529 1064227529 835791427 852757226 852757226 641992857 314646738 680009882 680009882 596902556 943635842 943635842 240589120 240589120 92840236 42342480 658573828 776930088 776930088 707280257 259785524 694553172 694553172 753458472 753458472 294521938 698092224 698092224 395205191 395205191 393227538 220942088 220942088 89578152 87467520 555851264 757195777 757195777 608199064 608199064 568062693 568062693 557543556 557543556 716378549 716378549 567694561 567694561 560384162 560384162 305601488 269584864 53770864 66594464 280630176 280630176 286922690 293602176 293602176 78120144 219612480 219612480 195171772 229645648 229645648 151789084 209600560 209600560 135530632 135285248 135285248 76281024 76187648 76187648 77325064 77325064 71635976 122051104 122051104 119014024 543087412 543087412 823446334 823446334 692683075 692683075 570474513 570474513 173310601 74579860 69459712 69459712 939786255 939786255 398249850 743764295 743764295 698948484 807200323 811159171 961092308 961092308 149430100 149430100 31364248 444858934 444858934 511661490 511661490 477238030 397551576 796735291 935391799 935391799 395691890 867984932 867984932 344031818 344031818 79956360 635440928 749810245 749810245 596589424 176466000 176466000 325930272 325930272 719428164 719428164 583812486 583812486 948113814 948113814 847914051 164245525 56881584 399528568 399528568 272070442 483693840 483693840 431307002 491015528 491015528 198762950 406340146 406340146 66087672 352712634 373247378 393419048 393419048 553800320 553800320 953393315 953393315 917619347 917619347 1065032227 1065032227 607788854 830480546 830480546 783029097 783029097 849020423 849020423 468518614 468518614 324084402 324084402 988244960 988244960 860431539 874955206 874955206 814619715 814619715 142611715 310640982 310640982 180487820 783938119 953771277 953771277 405279674 320513832 430498343 447964625 447964625 259108965 803378851 989591511 997639799 997639799 974514711 286330002 307504288 307504288 175170769 142469505 303824130 352437800 352437800 327974488 327974488 135163604 443249172 443249172 393957200 594887055 594887055 699044623 699044623 417597894 417597894 441859032 807477507 807477507 956301351 956301351 445731904 445731904 499720738 829810324 902768434 902768434 900710033 900710033 670871802 641559864 591938689 760433220 760433220 397882249 615647500 615647500 371066673 408033202 508042122 508042122 407447949 553917572 692398245 692398245 805620454 1044938011 1044938011 772893689 772893689 745205862 745205862 649302360 268619778 541594658 569902785 569902785 568681057 1003872870 1003872870 924950628 924950628 740344077 740319501 136519950 76611842 19972160 215532984 215532984 556927588 556927588 267437052 267437052 173172416 176944212 176944212 40895376 134221904 150082500 169415568 169415568 181080772 181080772 169557524 169557524 34331920 178669892 178669892 136438020 3084288 3084288 538445569 539049223 942679552 942679552 207931788 377128196 377128196 337783314 337783314 335618058 640750850 640750850 448701211 313317970 313317970 302667446 133697092 201460416 203823372 203823372 102241048 85799160 156545408 205727752 205727752 139542656 176474740 176474740 160039924 160039924 52429104 52429104 34898976 10788864 21189312 79232480 206723000 206723000 257559084 257559084 154345012 211857448 211857448 151253028 92465164 177399888 235778840 882182337 882182337 872888331 668948130 119178856 119178856 34865153 814515201 814515201 565464064 616826441 616826441 78383944 673284161 673284161 767764429 774314141 774314141 163727057 120398961 585370065 585370065 795661952 795661952 267377296 267377296 251398108 297930924 305221852 478311206 478311206 125878392 345044942 345044942 270041118 300502296 727390340 1022365612 1037992465 1037992465 744636675 288688290 298744418 634986108 634986108 567806393 436355120 436355120 419614758 375965082 375965082 254490258 230952784 286074242 286074242 92803272 268775810 268775810 183170972 98314491 856702779 921342571 921342571 875746603 629397451 461104905 812738342 812738342 541188108 924877816 924877816 600985842 812831619 812831619 655179483 646667305 664031544 664031544 213515608 213515608 78465180 607271309 607271309 753912204 1019642950 1019642950 795123132 795123132 744919109 744919109 260998464 260182140 168958152 141972172 81313946 324153532 394892152 508615745 546226846 546226846 211121216 271504976 907530805 907530805 519096336 519096336 452005568 452005568 632459284 742871048 742871048 499903092 409028480 409028480 242636474 311112900 336134144 336134144 295399680 340812032 340972170 340972170 268472968 352854064 389340818 389340818 47618498 42112784 300195904 300195904 166419106 73993800 492041224 782086836 808954033 808954033 808227352 829372690 829372690 284376091 834845588 834845588 826372900 460952341 377581718 335857674 336515062 336515062 265705632 470534314 470534314 299091142 299529562 685876829 714749709 738951973 738951973 346385234 842312552 842312552 893988578 893988578 900626023 900626023 870326352 870326352 828449187 107744667 621515818 680112305 680112305 860357284 1047437858 1047437858 973852421 973852421 604164105 604164105 386160945 555019438 572823804 572823804 318055640 318055640 100903264 100903264 72907784 72907784 369626810 668742681 668742681 575558225 605411609 610327841 610327841 977277328 977277328 692745472 701231397 701231397 696902757 764613036 1046549470 1046549470 743646371 537932275 664865448 664865448 214510502 236978460 350693249 1069225847 1069225847 954055503 624001378 87083956 85538196 193855676 193855676 193229608 269752480 269752480 179232084 176721184 176721184 60891504 42008864 33580240 33580240 58769520 223404992 223404992 138459204 143835648 143835648 146225988 146633252 152692260 178773809 545308737 565846117 565846117 770579949 771136568 771136568 994319836 994319836 547170243 547170243 967841717 967841717 875280965 0 0 206705052 754211224 754211224 595745721 884217827 884217827 846137002 635299810 896006816 896006816 450926632 736155972 923152424 1016011602 1016011602 935385871 935385871 550801700 252515068 252515068 148394496 447016968 514275678 514275678 501533166 501533166 329106302 289957058 273155202 277082178 283069018 373859930 775263104 835069609 835069609 417516560 417516560 273354338 579586586 765409279 765409279 257256724 583050076 669254700 669254700 155625680 209719860 216072288 216072288 345049368 356362288 356362288 301770938 125640704 567805016 654910521 654910521 651000920 654885794 810290976 835152706 835152706 915788400 915788400 353444394 353444394 25167722 621312128 621312128 500913253 428990516 20269368 409356620 409356620 327604338 141178390 195603988 269354560 284950594 284950594 280703488 2936064 40639504 40639504 31857120 25215872 26789472 55219328 55219328 52305456 591532129 591532129 549686169 119818472 588286000 609231817 609231817 576782592 915189481 915189481 454371894 654386086 892379189 892379189 692242205 692242205 191894144 191894144 135624960 25419136 32844768 32844768 574783953 777114536 777114536 657482572 602658336 581441137 575164777 130589840 612717032 612717032 566704353 555045568 370286632 370286632 390284092 452357054 452357054 277936718 238432720 302201680 308490642 653469766 653469766 403972107 222024192 222024192 280452716 296026005 702859749 702859749 509888809 589048520 876654176 876654176 810869879 620799553 613328602 111212618 821232502 821232502 970296039 1029005966 1029005966 743014705 745998860 1028987579 1028987579 431876934 277643254 300527082 300527082 522522472 522522472 876270888 943195911 943195911 720969556 720969556 573361201 573361201 506665110 450906738 544520836 561437601 890731322 890731322 483469850 483469850 398760538 276163546 374835712 374835712 319886010 220957311 236873925 236873925 346485357 650492466 661399971 661399971 124705688 761158937 761158937 818154807 1019093603 1019093603 831820364 797203244 797203244 641200152 621515312 621515312 614151284 122948280 122948280 122831680 25986240 25986240 8644800 8644800 13031552 21108652 204998412 207271244 214557900 232862956 232862956 209312704 87377732 144715560 144715560 622529184 622529184 840178305 840178305 386056850 307969712 319626274 822608930 822608930 879176079 879176079 744635543 545277188 304516443 352321560 352321560 420964510 456920886 456920886 429654352 262250872 143064020 270814482 270814482 219253160 219253160 210610308 287446220 386309306 386309306 326800688 417336102 417336102 332535296 165353952 165353952 152302116 289409024 289409024 15414662 10229568 335828225 607029259 607029259 660740404 772554929 772554929 706616853 712806752 712806752 611231256 611231256 547426624 405149697 558113188 1025523887 1042462506 1042462506 604530604 781030256 781030256 759168813 145260672 643521416 741600476 741600476 546496192 537064580 4204672 138948280 253045308 253045308 261949052 261949052 374131866 884377826 884377826 848429837 412813540 412813540 876612960 876612960 1012992604 1012992604 808013440 446014448 991885741 899044514 899044514 618458761 618458761 545089441 597785908 657069369 657069369 991961145 991961145 906759195 507783189 1040983068 1040983068 1020093621 1020093621 942669889 942669889 388410432 402604026 881038774 1039556513 1039556513 286534496 499995172 499995172 434468350 537338239 537338239 336462408 344199232 956456599 956456599 767637122 767637122 601117428 604767804 654478037 654478037 876222219 949754375 949754375 826521473 826521473 411209351 280443714 134233088 134233088 3095808 3095808 654039372 901170705 901170705 144712675 144712675 411864599 566806941 784988550 784988550 731574645 616254315 146487108 272620642 941068864 941068864 607892336 908055665 920700173 920700173 529163019 398494804 106899522 477950174 513624886 513624886 424053298 376447248 340861578 461999244 534968714 534968714 227306656 227306656 367261026 367261026 263586076 263586076 485233573 958839235 958839235 537155676 780275805 780275805 153768329 558027504 559601313 640652663 1064227529 1064227529 835791427 852757226 852757226 641992857 314646738 680009882 680009882 596902556 943635842 943635842 194898044 184540448 137847109 883323881 883323881 658573828 170447312 839175571 839175571 629415495 713706186 825229570 825229570 294521938 698092224 698092224 150481272 569967641 569967641 651170560 763498605 763498605 567817917 567817917 267462272 267462272 608199064 678503301 722624992 722624992 42127440 324059824 324059824 272172514 188853940 188853940 418787472 418787472 305601488 269584864 159808896 66594464 66594464 48547088 57538768 57538768 63358208 78120144 114171096 195171772 195171772 229645648 229645648 235106832 235106832 209600560 135530632 135285248 135285248 25759744 17115168 56767200 77325064 92825792 101111832 122051104 122051104 119014024 543087412 543087412 823446334 823446334 740768013 740768013 644422277 571999761 542902416 85192759 794929560 794929560 939786255 939786255 398249850 743764295 743764295 698948484 807200323 811159171 961092308 961092308 221836544 151598360 134618148 321177116 321177116 402477300 442593666 558198085 729559500 796735291 838726162 838726162 649262452 867984932 867984932 531980908 344031818 1171968 302013968 302013968 362285856 362285856 220006948 170697668 170697668 153650672 832656054 1041571660 1041571660 850081107 940184867 998978679 998978679 984428685 382655706 675890512 848141781 873497354 873497354 73384456 334258632 334258632 333789674 111284568 126068768 126068768 66087672 275272912 373247378 373247378 94299544 553800320 553800320 953393315 953393315 917619347 917619347 1065032227 1065032227 607788854 778309168 778309168 539555604 948570491 948570491 849020423 707333255 468518614 324084402 324084402 988244960 988244960 767789504 874955206 874955206 814619715 814619715 142611715 310640982 383520474 1046233798 1046233798 953771277 953771277 38801408 4719744 2631040 234959586 234959586 144362428 144362428 535676844 535676844 377154566 302881138 286330002 307504288 307504288 59810896 59810896 303824130 352437800 352437800 327974488 327974488 135163604 250320960 250320960 136389862 335986212 500813320 500813320 215668428 155453604 159385792 159385792 16777248 25199120 59818608 59818608 59818608 59818608 946933744 946933744 902768434 902768434 900710033 900710033 670871802 641559864 591938689 760433220 760433220 397882249 383101084 437064474 476524918 476524918 753245294 753245294 338034852 553917572 1025634110 1025634110 842992389 805620454 532003844 532003844 342619530 342619530 649302360 915099768 915099768 541594658 551600353 551600353 1032565321 1032565321 1003872870 924950628 924950628 740344077 740319501 563635596 569376897 569376897 278447542 278447542 421570636 720184716 825820919 825820919 804011640 219500508 179344596 98042156 134221904 150082500 150082500 43065408 199295856 199295856 18940340 1384960 1384960 136230656 136438020 136438020 3084288 3084288 399360 1245184 642390680 642390680 207931788 377128196 377128196 337783314 337783314 639125507 883197976 883197976 616304457 548538192 112597848 96941776 215955496 215955496 108296632 108296632 85591136 85591136 156545408 205727752 205727752 139542656 176474740 176474740 160039924 509642944 509642944 61396254 45767008 19927904 176181344 176181344 206723000 206723000 162442820 162442820 84099404 211857448 211857448 296124706 296124706 767826669 969308730 969308730 882182337 872888331 668948130 791688486 791688486 560362281 814515201 814515201 565464064 565464064 318874738 142959116 482904776 482904776 281903936 279840736 57349168 52744208 52744208 37998848 52460576 103467080 233942784 233942784 196267500 249535000 249535000 256414268 295837822 295837822 249246252 481367714 481367714 632671845 632671845 727390340 1005062457 1037992465 1037992465 1015344205 1015344205 679835949 634986108 634986108 988017598 988017598 845723342 282657032 375965082 375965082 254490258 202060370 286074242 286074242 4716672 271909058 271909058 286851984 286851984 856702779 921342571 921342571 875746603 819725416 764939939 812738342 812738342 344642442 924877816 924877816 943788161 943788161 812831619 655179483 646667305 664031544 664031544 579134540 711454828 711454828 631767416 607271309 753912204 1019642950 1019642950 1006946319 697040996 744919109 744919109 343165635 289475522 147721400 141972172 81313946 324153532 398100594 427658116 853582289 853582289 211121216 553145281 553145281 112580342 112580342 346945002 393420952 393420952 459521168 482386860 499903092 499903092 409028480 409028480 242636474 311112900 336134144 336134144 295399680 471901068 471901068 409018758 462686838 462686838 429753354 461114276 461114276 309707426 300195904 300195904 167202829 769887017 769887017 782086836 867371642 867371642 830562483 900323626 900323626 284376091 497082958 968885907 980295063 980295063 600703334 335857674 336515062 336515062 265705632 470534314 470534314 299091142 299529562 508789420 627769530 627769530 604570928 991146031 991146031 807097371 322470448 322470448 900626023 900626023 526132628 526132628 920658164 920658164 197198299 0 0 860357284 876610843 910392714 913809435 913809435 575006865 575006865 125094840 298139232 298139232 356802280 356802280 297648754 274348850 29496466 384085050 384085050 366737130 668742681 668742681 542226529 605411609 610327841 610327841 564267565 625365681 715753508 715753508 701231397 696902757 764613036 764613036 171639445 76669512 266798430 752714836 752714836 720186808 720186808 350693249 1069225847 1069225847 954055503 627721625 87083956 860277905 860277905 961246631 1012086415 1012086415 458342929 386935448 759728301 759728301 806234404 806234404 472049312 472049312 494854062 507593454 507593454 319300658 321727794 321727794 454310422 454310422 271766128 271766128 210553932 270538160 270538160 37636400 78754346 85404264 687903638 687903638 547170243 547170243 409885514 875280965 944574595 944574595 994328656 994328656 907074861 754211224 857171449 884217827 884217827 791817658 493299484 404153398 450926632 450926632 406916160 923152424 923152424 161030739 480418492 480418492 261274150 275737622 275737622 148394496 76684272 517206750 517206750 501533166 501533166 329106302 320686448 311071362 364243818 364243818 68366856 161604638 835069609 835069609 417516560 417516560 273354338 579586586 765409279 765409279 257256724 583050076 669254700 669254700 51052672 285291162 285291162 216072288 201524216 356362288 356362288 310561146 310561146 648599608 648599608 302778392 338948874 338948874 546037536 835152706 835152706 409665792 409665792 669509960 669509960 564429097 558292100 558292100 767945846 767945846 144320639 100669968 3411456 2622720 6866304 13203520 273993152 273993152 8778816 8778816 7062848 9660064 276004480 276004480 299635970 299635970 284216672 284216672 30934752 580050960 580050960 549686169 119818472 588286000 609231817 609231817 977611712 977611712 879133269 737729261 488978346 542727438 1031384592 1031384592 573121809 604296481 604296481 645211305 1011584495 1011584495 756482217 756482217 697311945 582319793 602658336 602658336 600081632 600081632 571264017 67462664 67462664 83959834 318779954 370286632 494049922 494049922 394216368 394216368 1056519903 1056519903 710294208 951727000 951727000 648494216 345127704 222024192 885779031 885779031 980264750 980264750 171351720 259521468 495755400 876654176 900800517 900800517 613328602 620648290 620648290 821232502 821232502 970296039 1029005966 1029005966 968896389 745998860 1028987579 1028987579 756948525 756948525 211163724 571024392 714547733 714547733 776399253 943195911 943195911 376047411 376047411 303490192 506665110 506665110 683987794 810797601 810797601 223686784 223686784 9560584 8462400 8462400 115817696 288952584 313660242 313660242 220957311 283432236 283432236 346485357 410324199 661399971 661399971 472307982 761158937 761158937 818154807 1019093603 1019093603 838077411 797203244 979402871 979402871 621515312 621515312 891840312 891840312 857476659 853371667 855990899 855990899 629142874 323013202 323013202 340001866 349441064 349441064 214557900 232862956 232862956 209312704 29844936 82552616 549712065 570383729 579998289 579998289 550230696 550230696 307969712 892809280 892809280 822608930 879176079 879176079 939659271 939659271 503320601 352321560 352321560 171987412 103453704 239731916 262250872 262250872 143064020 160604884 160604884 148115904 41949616 210610308 210610308 22737072 168338276 169775188 169775188 49469744 164693412 165353952 165353952 152302116 286738496 286738496 64520068 412883812 412883812 241078180 241078180 660740404 698881021 706616853 706616853 712806752 712806752 611231256 611231256 977346711 977346711 558113188 558113188 224144143 756016948 756016948 781030256 781030256 759168813 145260672 643521416 741600476 741600476 546496192 810074883 822216995 822216995 847973287 847973287 287307377 847257601 847257601 842470610 1003291555 1003291555 994523855 994523855 1008607304 1008607304 1012992604 1012992604 808013440 892079403 892079403 1048592 34603536 70363160 70363160 136364904 597785908 657069369 1006632960 1006632960 991961145 385941819 558760204 855641234 902080606 902080606 524673073 942669889 942669889 432932596 432932596 876256134 1039556513 1039556513 884833166 499995172 520278078 520278078 835926906 835926906 816050499 631243113 956456599 956456599 759225952 759225952 755374125 755374125 654478037 689872313 876222219 925812326 989750292 989750292 439820566 280046402 537395299 687300996 722727617 722727617 934234747 934234747 901170705 901170705 917541228 917541228 786050596 786050596 784988550 784988550 731574645 490456142 137854240 137854240 135475716 268448262 609349728 634524393 634524393 343807252 330725376 199964148 180016980 355943452 355943452 300231010 376447248 376447248 340861578 286016176 534968714 534968714 77665758 201805892 367261026 367261026 420417732 420417732 485233573 958839235 958839235 698059829 658561083 1022244625 1022244625 588700209 344060700 645349518 645349518 1018398791 1018398791 797938659 797938659 584106705 26215008 189006528 194251380 194251380 512592090 512592090 194898044 184540448 137847109 883323881 892363348 920772631 920772631 869393139 839175571 629415495 997742888 997742888 825229570 12980928 12980928 264192 264192 916788878 916788878 651170560 763498605 763498605 567817917 773849392 773849392 267462272 549507720 678503301 722624992 722624992 906496477 906496477 630142418 630142418 150284031 929368260 929368260 804460715 442468580 635463364 664031808 664031808 146977120 16278720 16278720 45760288 63358208 63358208 67769352 67769352 102895640 102895640 84090888 235106832 235106832 117889080 121950216 121950216 84051624 78243432 97420544 97420544 56767200 92825792 101111832 101111832 641704681 650166489 650166489 861070074 861070074 597114619 806481553 806481553 644422277 571999761 542902416 976656682 976656682 794929560 674444037 353056038 265153788 676920752 676920752 57656965 47254160 178533364 411555962 411555962 462405942 462405942 235058192 321177116 321177116 403703140 403703140 558198085 729559500 729559500 895757985 994118908 994118908 649262452 531980908 531980908 252217132 597085997 597085997 540376864 1066929496 1066929496 682100037 682100037 948608660 950650690 950650690 1041571660 1041571660 850081107 940184867 998978679 998978679 984428685 382655706 675890512 848141781 873497354 873497354 73384456 354440514 354440514 382211080 382211080 339907688 339907688 95935528 95935528 76409928 50471968 34288656 17371184 375782336 375782336 82262472 127099264 127099264 57549296 629998960 629998960 1007231554 1007231554 674696901 948570491 948570491 707333255 707333255 164501764 164501764 252987177 707579157 767789504 767789504 753587671 753587671 577787704 197957320 224022400 241048460 383520474 1046233798 1046233798 688788324 377689554 377689554 96444064 226219022 272783018 272783018 181612978 134266884 159579880 350777304 350777304 302881138 122553290 33739136 26739824 59810896 59810896 23070592 318919696 318919696 285787170 39050546 94935328 139403618 139403618 136389862 772393285 772393285 500813320 579025016 808417055 808417055 225966470 716684629 716684629 691334013 691334013 521208553 483174414 946933744 946933744 906246594 906246594 836459296 350017365 350017365 200560829 219946093 219946093 61416897 538006352 538006352 437064474 476524918 476524918 753245294 753245294 213958860 793447684 1025634110 1025634110 842992389 400882811 532003844 532003844 342619530 342619530 144917710 915099768 915099768 893608345 862626123 542658680 1032565321 1032565321 734560560 830842902 830842902 571336935 497035361 563635596 569376897 569376897 278447542 673465458 673465458 720184716 825820919 825820919 804011640 591995057 706343652 706343652 136405056 34861584 173569156 173569156 199295856 199295856 154280756 180921040 180921040 168746244 134973440 134973440 208896 1056769 537993729 537993729 709484693 709484693 655673913 655673913 346420504 857899426 857899426 881346130 883197976 883197976 616304457 548538192 476318094 449892998 449892998 370100534 370100534 212261196 212261196 394031528 508817914 508817914 413864352 77336136 36490320 36490320 44044112 509642944 509642944 61396254 45767008 19927904 176181344 176181344 150007360 152686724 168955276 168955276 39464980 53381100 191860792 296124706 296124706 767826669 969308730 969308730 665863121 560066921 855785496 855785496 791688486 560362281 420645781 302152224 302152224 302121472 76884552 142959116 482904776 482904776 204451142 141844352 3840896 2302976 8580224 37994688 37994688 103467080 233942784 233942784 129243168 182053392 182053392 46600256 295837822 295837822 249246252 481367714 481367714 632671845 632671845 488557509 970310185 970310185 764596845 1015344205 1015344205 679835949 499061943 393570289 988017598 988017598 845723342 361315424 85854954 336351456 336351456 91455874 224254788 224254788 88080168 271909058 271909058 286851984 286851984 557281850 605993729 605993729 819725416 819725416 764939939 697303653 25166341 155258880 632447340 769897454 943788161 943788161 770677850 770677850 101001240 566504732 579134540 579134540 711454828 711454828 631767416 249096784 260487834 647235636 1006946319 1006946319 485245504 799099166 799099166 343165635 289475522 83509977 83509977 48155472 120867096 398100594 398100594 853582289 853582289 44761216 553145281 553145281 50930736 98648048 211301112 222861324 490853378 490853378 314988608 355295582 453982262 453982262 511939498 511939498 426378378 426378378 310976772 310976772 471901068 471901068 409018758 462686838 462686838 429753354 461114276 461114276 309707426 173303094 173303094 167202829 769887017 769887017 757207341 867371642 867371642 830562483 900323626 900323626 968923774 968923774 968885907 980295063 980295063 600703334 443684486 437573758 188127232 218021800 226188864 226188864 211309120 211309120 223466758 627769530 627769530 604570928 991146031 991146031 807097371 503451678 503451678 252187682 0 679486322 993076023 993076023 920658164 203753922 199499946 873013384 873013384 876610843 876610843 83887123 574906368 575006865 575006865 125094840 298139232 298139232 356802280 356802280 297648754 286931858 53623698 384085050 384085050 366737130 366737130 343434880 39903616 53593440 241199040 241199040 167448717 625365681 736246885 736246885 136399040 693016865 693016865 82481552 254329088 254329088 105670732 752714836 752714836 720186808 720186808 600337600 564463696 196141684 627721625 627721625 172653372 860277905 860277905 961246631 1012086415 1012086415 550638273 684545217 759728301 778183232 816971680 890365834 890365834 704641856 704641856 507593454 507593454 319300658 321727794 321727794 454310422 454310422 271766128 271766128 387188858 387188858 270538160 250846756 255017280 255017280 687903638 687903638 542249601 216734092 208025036 947149008 947149008 944574595 994328656 994328656 907074861 579254808 857171449 857171449 330936240 302650386 302650386 17555506 19715048 353674080 353674080 639777064 639777064 225649613 370282536 370282536 244890652 275737622 275737622 199700608 498183660 517206750 517206750 183919964 251225832 320686448 320686448 514014302 514014302 364243818 341503992 341503992 320793748 208790412 394773596 394773596 191038850 186264788 456269808 456269808 218369248 218369248 114640636 130622712 130622712 285291162 285291162 110309520 58855536 101198128 124122632 310561146 310561146 648599608 648599608 302778392 338948874 338948874 546037536 546037536 302327826 302327826 693163788 693163788 669509960 564429097 285327498 285327498 767945846 767945846 513155114 228289480 373545624 373545624 156154102 535115294 535115294 273993152 14417408 14417408 7062848 6422592 276004480 276004480 299635970 299635970 284216672 284216672 30934752 580050960 580050960 574632368 574632368 543162400 559940001 559940001 977611712 977611712 879133269 737729261 678322057 678322057 1031384592 1031384592 573121809 604296481 604296481 645211305 1011584495 1011584495 756482217 756482217 697311945 665210009 665210009 611026857 600081632 634183865 634183865 673648686 945115263 945115263 830981808 340803880 494049922 494049922 394216368 394216368 1056519903 1056519903 710294208 951727000 951727000 648494216 688391296 760028585 885779031 885779031 980264750 980264750 713152347 510791951 580419853 580419853 900800517 987586642 987586642 822802082 620648290 563998305 556907920 430249024 812761825 968896389 968896389 489947656 489947656 820549572 820549572 756948525 469164573 571024392 714547733 714547733 355126536 355126536 256578594 69626028 56623536 2097328 4202752 304562816 683987794 810797601 810797601 223686784 223686784 324637114 324637114 323109394 290783738 290783738 313660242 313660242 170560012 283432236 283432236 165690820 283086162 337924100 472307982 472307982 738609880 738609880 674291168 910953102 910953102 838077411 791034679 979402871 979402871 320559290 320559290 891840312 891840312 857476659 853371667 855990899 855990899 629142874 448720768 323013202 340001866 349441064 349441064 160617060 160617060 848416 21048384 21048384 21045408 549712065 570383729 579998289 579998289 550230696 550230696 110141632 892809280 892809280 322076944 322076944 947913384 947913384 939659271 535596147 419479590 453807494 453807494 325991938 449123028 449123028 32772544 19877696 57997408 57997408 47170744 34184256 95379928 95379928 90838440 41936084 269299882 269299882 221793540 353157382 353157382 13836736 173486694 438903766 445127714 445127714 455511072 455511072 890988307 890988307 744627648 1032196899 1032196899 343022944 1009254569 1009254569 70325878 470100633 977346711 977346711 409282743 456201884 456201884 1030337958 1047792608 1047792608 665580913 665580913 708070641 708070641 640678100 640678100 439150604 810074883 822216995 822216995 847973287 847973287 287307377 847257601 847257601 842470610 1003291555 1003291555 994523855 994523855 1008607304 1008607304 982724687 982724687 957350439 892079403 892079403 734676390 849531219 849861971 850130259 850130259 859115043 859115043 1006632960 1006632960 726147091 237053106 558760204 855641234 902080606 902080606 999049666 999049666 403548887 432932596 432932596 770974586 770974586 907685807 907685807 874084427 981738324 1038180402 1038180402 835926906 816050499 631243113 631243113 130684064 759225952 759225952 755374125 755374125 139854505 689872313 689872313 925812326 989750292 989750292 439820566 280046402 537395299 687300996 722727617 722727617 934234747 934234747 1046244622 1046244622 917541228 917541228 786050596 786050596 658127137 375671979 490456142 490456142 481957710 823756070 823756070 730313579 609349728 634524393 634524393 330725376 444368818 444368818 237712668 355943452 355943452 389498144 495239194 495239194 286016176 286016176 190308114 53582340 17108000 201805892 525662808 525662808 420417732 420417732 298659042 260425828 698059829 698059829 658561083 1022244625 1022244625 588700209 403886224 855810964 855810964 1018398791 1018398791 617808088 658823313 658823313 357115050 357115050 297804872 260575064 260575064 246680692 75497800 75497800 495667245 751811695 892363348 920772631 920772631 869794465 959235072 959235072 997742888 997742888 559022434 75890773 75890773 611894544 673142281 916788878 916788878 221513728 534724518 534724518 199820672 773849392 773849392 469799590 469799590 452085148 452085148 738723122 906496477 906496477 630142418 630142418 150284031 929368260 929368260 804460715 442468580 635463364 664031808 664031808 146977120 39141840 33953808 45760288 59184992 59184992 29885664 243917628 243917628 120604024 182452476 182452476 140714496 139510404 147112036 166609024 166609024 78243432 97420544 97420544 103815224 103815224 14701464 36491321 641704681 650166489 650166489 861070074 861070074 597114619 806481553 806481553 304187153 72092808 319478818 976656682 991981325 991981325 605627913 931767049 931767049 918087259 676920752 807465952 807465952 309668754 892954272 892954272 721465025 721465025 503663216 328610881 296830274 883003613 883003613 245436524 512364304 646261486 895757985 994118908 994118908 153626455 336078432 953713268 953713268 651814617 597085997 612817219 1066929496 1066929496 682100037 682100037 948608660 950650690 950650690 816455236 816455236 507785231 507785231 142870596 416035848 1056619146 1056619146 1020424960 1020424960 67543440 308145872 308145872 354440514 354440514 382211080 382211080 339907688 339907688 325034176 325034176 310135954 292082786 284384954 284384954 830125531 830125531 913861234 913861234 878265410 340905760 629998960 629998960 1007231554 1007231554 674696901 348595987 48234960 520384658 520384658 356575384 206384268 252987177 707579157 710199395 710199395 753587671 753587671 577787704 259967376 227153004 241048460 535105666 716072180 716072180 688788324 440372578 440372578 382577864 512745468 934398980 1057509503 1057509503 453758273 336574672 336574672 98553956 292182672 292182672 319938576 319938576 7433088 27568482 27568482 318919696 318919696 289437360 289437360 173202910 173202910 232132964 797256028 797256028 772393285 623713345 623713345 808417055 808417055 258998816 716684629 716684629 691334013 691334013 521208553 483174414 661300897 661300897 906246594 906246594 750446732 750446732 350017365 200560829 540901960 615378249 615378249 955342945 955342945 682089533 1008112572 1008112572 315594341 797458712 797458712 793447684 793447684 473343796 838243412 838243412 788842557 719277871 788967127 797050983 797050983 704675939 893608345 893608345 862626123 355803666 355803666 864288214 864288214 830842902 830842902 952213504 952213504 952156359 536903790 536903790 379078297 673465458 673465458 434941285 716046512 890261774 890261774 691197733 706343652 706343652 180899920 191617140 191617140 183401668 57683012 154280756 189345444 189345444 180921040 168746244 136253440 136253440 136130052 135725056 537993729 537993729 709484693 709484693 655673913 655673913 346420504 857899426 857899426 881346130 881346130 313298010 469769684 476318094 476318094 449892998 449892998 370100534 370100534 212261196 212261196 394031528 508817914 508817914 441780254 134637840 424516006 424516006 184724276 276185416 276185416 461283228 461283228 441321336 83939924 1030280989 1030280989 796314140 796314140 595993454 740962752 740962752 365997926 884939210 884939210 465884931 827562306 827562306 665863121 664066688 855785496 865079296 871567987 871567987 554115121 570634257 612657264 612657264 119863304 77867264 337398536 337398536 353987848 353987848 3840896 63776624 63776624 66684384 66684384 4332560 36739856 242361740 242361740 121725104 238495544 529909884 529909884 93571710 503855224 503855224 273705144 323873970 323873970 98962098 71224768 71229192 84615168 252055728 252055728 545265920 547756353 547756353 19411200 69403936 361315424 361315424 353634858 353634858 479012472 479012472 467207740 224254788 88080168 33220232 32524480 338698296 338698296 865030777 865030777 1056315881 1056315881 814163985 807615006 887003147 887003147 339552426 539296041 539296041 78828360 361759338 770677850 770677850 101001240 101001240 79735344 79735344 168894704 168894704 47207056 47207056 200778292 596673104 720423009 720423009 422577122 799099166 799099166 357569282 100088424 100088424 358817802 358817802 344334386 55659250 289878400 289878400 271499474 10987520 268746816 269422650 388156690 388156690 315410578 302157864 490853378 490853378 314988608 355295582 453982262 453982262 511939498 511939498 426378378 426378378 310976772 310976772 98567976 100341448 308682518 308682518 253890864 253890864 202426896 161745252 200368836 200368836 419107090 419107090 149563120 8925696 712520548 996812349 996812349 935929083 934892217 381558618 968923774 968923774 370424675 157882468 428219718 443684486 443684486 437573758 375902978 218021800 381796954 381796954 333615838 518131818 518131818 774125582 774125582 991631118 991631118 615401843 615401843 503451678 540442706 540442706 326523510 679486322 993076023 993076023 826583837 1012925234 1012925234 873013384 873013384 356525201 846202070 846202070 753771931 683671749 683671749 394022680 394022680 313248986 93717248 293016240 293016240 286931858 53623698 25104928 25104928 4268160 150126980 150126980 149133376 149133376 202432576 238692380 238692380 8987712 736246885 736246885 136399040 693016865 693016865 469833166 469833166 255901884 489728720 489728720 644956557 644956557 600337600 600337600 564463696 216919044 216919044 172653372 172653372 119377304 119377304 17520554 936447737 936447737 550638273 684545217 684545217 778183232 816971680 890365834 890365834 704641856 704641856 407437964 402950164 466047286 466047286 333346678 176376070 414323984 414323984 303773202 387188858 455614770 455614770 250846756 255017280 255017280 979445960 979445960 943008519 753086874 350560776 1044057000 1044057000 473109088 723946322 843981969 843981969 784659268 784659268 775379480 679889255 1055393247 1055393247 1068658795 1068658795 419722080 632624206 661855001 661855001 244720597 370282536 370282536 275753004 483854696 483854696 392797902 498183660 515251038 515251038 357900548 492332546 492332546 240118332 514014302 514014302 279927712 425006036 425006036 340402808 245192532 387879492 387879492 423050502 423050502 456269808 456269808 171198198 114640636 148226592 180453936 180453936 25887848 142292868 155812292 174778436 174778436 124122632 124122632 242731024 540713033 697637008 697637008 591605937 101736650 348226072 348226072 705954688 1025908147 1025908147 693163788 157865237 201329044 419701893 827141283 827141283 1007206464 1007206464 755136580 373545624 373545624 216216012 535115294 535115294 4587904 44516176 44516176 26526528 296067424 308000642 308000642 59089026 4268160 17138176 18213408 18213408 18213408 546622729 664287064 664500905 664500905 611394441 611394441 614465865 614465865 630719420 692525672 692525672 678322057 170966017 138568736 185197620 185197620 173767072 173767072 4194432 20980352 604193776 604193776 631390264 665210009 665210009 611026857 590705104 634183865 634183865 673648686 945115263 945115263 830981808 490030374 419846442 419846442 445142286 511969374 511969374 511967306 404291908 404291908 252513036 340202644 1064578574 1064578574 963187875 839190318 839190318 822720136 713152347 792195364 808823859 808823859 772750365 987586642 987586642 822802082 311645628 53813308 197276760 328144980 328144980 268445728 268445728 489947656 489947656 820549572 820549572 812001806 812001806 834553897 834553897 652796299 641597087 1057372321 1057372321 927589563 927589563 379054232 379054232 243644470 568877940 828384565 828384565 118209768 258890492 324637114 324637114 323109394 290783738 386720978 386720978 15811754 526904512 526904512 478454222 478454222 410337376 396467536 396467536 392622330 510167048 674291168 674291168 888086424 1037954799 1037954799 605530760 726006465 726006465 345704137 1041264170 1041264170 363654387 285003714 168828964 401802482 664700226 664700226 822351480 822351480 647102502 722622008 918168180 918168180 160617060 239373564 430162278 430162278 248113908 444352898 444352898 47062224 47062224 46276624 338154144 338154144 850690314 850690314 322076944 322076944 947913384 947913384 895484331 535596147 419479590 453807494 453807494 452356326 961098473 961098473 735043109 735043109 699354913 565970976 163719936 543162633 543162633 219126788 90838440 39875752 269299882 269299882 221793540 353157382 353157382 21911428 411253408 438903766 445127714 445127714 455511072 455511072 890988307 890988307 744627648 1032196899 1032196899 773985300 1057636180 1057636180 576196306 971849713 971849713 776808452 503910036 503910036 456201884 1030337958 1047792608 1047792608 665580913 665580913 708070641 708070641 640678100 640678100 439150604 384914394 309909760 152371408 152371408 144059040 137747704 175900962 392169962 392169962 197201774 576901521 713121493 713121493 705717827 1008972360 1008972360 957350439 957350439 696663259 956711021 734676390 849531219 849861971 850130259 850130259 859115043 859115043 557133856 555887408 588395805 588395805 214041152 769671244 769671244 216798605 999049666 999049666 277354519 362969226 362969226 345241122 345241122 907685807 907685807 874084427 981738324 1038180402 1038180402 963657741 963657741 898679403 898679403 337382922 671536840 671536840 878181003 878181003 278184649 253673864 253673864 795922500 795922500 800721621 800721621 764844692 764844692 650117337 761269689 761269689 717473313 731929919 1046244622 1046244622 825617179 576721558 749673366 870277625 870277625 822364033 822364033 436149696 481957710 823756070 823756070 730313579 660396670 631272697 545920065 571047940 594523541 594523541 237712668 306709780 306709780 504344578 504344578 495239194 274747142 374876412 385516378 385516378 92498344 267731236 525662808 525662808 133799728 133799728 36681392 260425828 462994740 462994740 457646132 525872420 525872420 346898250 403886224 855810964 855810964 589558065 488583201 617808088 658823313 658823313 638889040 592446129 623943220 623943220 260575064 246680692 533341464 533341464 495667245 751811695 751811695 566066789 457812385 869794465 959235072 959235072 285789415 950423264 950423264 964856390 964856390 611894544 673142281 796800304 796800304 221513728 231224632 231224632 199820672 744624544 744624544 469799590 469799590 527211508 527211508 738723122 738723122 167981076 1023412228 1023412228 8390699 197394496 197394496 189008052 181539540 181539540 159779504 54690464 40282816 39141840 33953808 26343824 59184992 59184992 128451960 243917628 243917628 120604024 182452476 182452476 100702992 139510404 147112036 166609024 166609024 25301824 25301824 64425288 103815224 103815224 72161456 115089472 591663161 645922905 823065728 823065728 369157272 369157272 269053186 107744664 107744664 72092808 122423329 855918609 991981325 991981325 605627913 931767049 931767049 918087259 663973235 807465952 941724048 941724048 892954272 892954272 721465025 721465025 503663216 328610881 306226866 883003613 883003613 476187094 869738591 869738591 851708516 198576325 985739386 985739386 910452466 953713268 953713268 651814617 530107758 612817219 612817219 680925920 680925920 493479342 540205385 741021448 741021448 621408260 442240662 507785231 507785231 139461252 256722456 1056619146 1056619146 1020424960 1020424960 177085524 308145872 308145872 475541276 475541276 308619666 238880398 355487850 355487850 361228368 361228368 310135954 292082786 284384954 312633552 830125531 830125531 913861234 913861234 878265410 656004873 662060248 662060248 686692880 686692880 680735301 628294313 628294313 685172952 685172952 356575384 207430244 206384268 134537856 124222404 138014468 272316184 504000544 504000544 259967376 227153004 116789128 535105666 535105666 525216202 344469520 440372578 440372578 382577864 512745468 934398980 1057509503 1057509503 746794080 746794080 336574672 675414164 675414164 457630339 457630339 319938576 184590513 148213761 51304416 51304416 390004186 390004186 399702946 399702946 173202910 232132964 797256028 797256028 579414032 623713345 623713345 170867753 249762044 258998816 258998816 56767668 72081168 85706256 85706256 114360472 661300897 661300897 593438056 555354697 750446732 750446732 136568780 529664 540901960 615378249 615378249 980833530 980833530 682089533 1008112572 1008112572 315594341 797458712 797458712 989895456 989895456 473343796 838243412 904472043 904472043 719277871 788967127 797050983 797050983 704675939 667969368 667969368 355067690 355803666 355803666 864288214 864288214 459317313 143729044 952213504 952213504 952156359 536903790 536903790 989858900 989858900 84182067 459565407 1055124865 1055124865 890261774 691197733 203457059 73563138 180899920 191617140 191617140 183401668 57683012 54070960 189345444 189345444 140086528 140086528 136253440 136253440 136130052 135725056 9870336 538174976 538174976 908801600 917504859 917504859 319017338 319017338 47061200 47061200 136577792 202426628 202426628 134792196 134792196 134515712 178318336 210577492 472304448 472304448 452336602 452336602 205027650 441780254 441780254 134637840 424516006 424516006 184724276 276185416 276185416 461283228 461283228 441321336 83939924 1030280989 1030280989 796314140 796314140 595993454 740962752 740962752 365997926 884939210 884939210 465884931 827562306 827562306 549585435 664066688 664066688 874144873 874144873 871567987 1042054662 1042054662 612657264 612657264 119863304 134627148 337398536 337398536 353987848 353987848 2570496 63776624 63776624 66684384 66684384 50172656 135582668 242361740 242361740 239611028 239611028 529909884 529909884 93571710 503855224 503855224 386614227 790209047 790209047 169066621 545710177 553906209 1042748419 1042748419 541513857 1053054379 1053054379 648495225 992076087 992076087 866230374 234963772 353634858 353634858 479012472 479012472 467207740 335826306 1033007997 1033007997 954388487 338698296 338698296 865030777 865030777 1056315881 1056315881 982736945 982736945 887003147 887003147 339552426 539296041 539296041 994189620 994189620 818463939 654723132 654723132 620044697 649168996 649168996 589819012 649687332 649687332 253452020 64920340 163454820 464401252 464401252 419520960 419520960 455312130 455312130 100088424 100088424 358817802 358817802 344334386 188497076 330426896 696602118 696602118 673761664 674018630 814215599 904913347 904913347 986477765 986477765 379707738 767919588 1049360396 1049360396 235667472 434310228 434310228 392791838 372954906 151037920 150595524 92811556 151130148 462206983 488197907 488197907 562629753 889465152 889465152 862112546 862112546 850395987 419107090 793663544 793663544 48499152 712520548 996812349 996812349 935929083 934892217 381558618 925500408 925500408 797709989 797709989 614601033 612499920 328472602 375902978 375902978 18096512 381796954 381796954 333615838 518131818 518131818 774125582 774125582 991631118 991631118 673550677 615401843 814350355 814350355 947450822 947450822 814235906 687321160 528802785 826583837 1012925234 1012925234 354030146 6816000 6816000 846202070 846202070 753771931 798351929 798351929 394022680 856278582 856278582 539297668 381089112 381089112 345295434 97022626 352382346 352382346 515007562 515007562 352981044 149133376 149133376 141930688 238692380 238692380 170867988 207941388 207941388 238551680 342393234 405407128 469833166 469833166 255901884 489728720 489728720 388270194 302827094 487866490 487866490 375940252 216919044 216919044 118522972 5904000 5490304 4489728 4489728 3227776 7463808 7463808 68768256 74332192 126710208 347615928 347615928 342570378 342570378 278463936 943723083 943723083 877703842 877703842 405014736 405014736 414323984 688653857 688653857 437520710 455614770 455614770 451472710 451472710 310953042 979445960 979445960 943008519 753086874 350560776 1044057000 1044057000 473109088 473109088 843981969 843981969 784659268 784659268 775379480 679889255 1055393247 1055393247 1068658795 1068658795 663948344 632624206 661855001 661855001 612987018 665581387 811381538 811381538 483854696 672211461 972555981 1045703088 1045703088 873665035 873665035 492332546 492332546 240118332 785043470 911262363 911262363 721427086 425006036 340402808 245192532 387879492 387879492 423050502 423050502 287264582 171198198 171198198 43773088 148226592 180453936 180453936 177456660 142292868 155812292 174778436 174778436 55708928 55708928 242731024 242731024 697637008 697637008 591605937 118563384 348226072 348226072 808850070 1025908147 1025908147 1025507631 1025507631 648061011 419701893 827141283 827141283 1007206464 1007206464 755136580 269592832 216216012 216216012 234101408 535348734 535348734 410870874 295673072 419965075 419965075 413402452 413402452 715602261 715602261 705116501 691200933 691200933 559996129 546622729 664287064 664500905 664500905 663731208 663731208 614465865 614465865 607527105 722207469 722207469 223297853 218754364 673811220 674499333 707002896 707002896 114561928 114561928 81822664 599892072 599892072 545407248 639721768 645665673 645665673 44709993 89868456 127713000 127713000 213209524 356040488 490030374 490030374 480725264 419846442 445142286 511969374 908791761 908791761 575219844 609103146 609103146 474488838 1064578574 1064578574 963187875 762059837 822720136 822720136 1036441839 1036441839 950050912 950050912 794301970 1027739823 1027739823 312461081 95166678 95166678 128133362 411046170 557654899 557654899 419836470 713696792 713696792 638458884 352370956 812001806 812001806 834553897 889560041 889560041 641597087 1057372321 1057372321 927589563 927589563 379054232 379054232 337822296 681120212 828384565 828384565 945136388 945136388 258890492 274594528 274594528 87711160 386720978 386720978 336810208 526904512 526904512 494564556 494564556 410337376 396467536 396467536 392622330 612074816 619709385 619709385 888086424 1037954799 1037954799 605530760 985760275 985760275 822413951 1041264170 1041264170 363654387 285003714 197044972 624300024 664700226 664700226 822351480 822351480 647102502 722622008 918168180 918168180 175555008 239373564 430162278 430162278 357791875 825002807 844151727 975009145 985878767 985878767 706923912 338154144 850690314 850690314 95132419 82347178 272647178 272647178 77458504 289525736 289525736 151263513 452356326 452356326 961098473 961098473 735043109 735043109 699354913 565970976 163719936 543162633 543162633 219126788 73544068 142007172 1012217871 1012217871 225587524 1026802307 1026802307 677042976 566675749 411253408 268534786 1003586147 1003586147 974008353 974008353 931629102 98605312 98605312 773985300 773985300 1057636180 1057636180 576196306 971849713 971849713 776808452 1012731566 1012731566 587801649 655914033 658873868 658873868 205594764 139645572 139645572 210589712 244053084 244053084 33991756 852992 9545344 9545344 26881456 48025296 48025296 84808200 84808200 71866376 132682217 576901521 713121493 713121493 705717827 1008972360 1011561615 1011561615 754659743 694337965 956711021 86258953 554646561 554646561 537672737 745224456 745224456 675745392 557133856 555887408 588395805 642003590 642003590 903891202 903891202 871366131 871366131 693339106 404149938 362969226 362969226 345241122 345241122 333821184 589270404 916081377 916081377 552767812 948159339 963657741 963657741 898679403 951222815 951222815 671536840 671536840 878181003 878181003 278184649 142957124 717537616 717537616 652924741 800721621 800721621 776081420 776081420 650117337 761269689 761269689 661086480 1026254651 1026254651 257057450 576721558 576721558 749673366 870277625 870277625 822364033 822364033 367274956 709035584 752691665 752691665 660396670 660396670 631272697 673795472 673795472 594523541 594523541 140705205 306709780 306709780 738761029 738761029 338301700 807869448 948175751 948175751 1061404353 1061404353 267731236 863345360 863345360 577121126 36681392 36681392 197791760 197791760 163470640 91087912 266973020 266973020 94390440 150209348 568646432 669006377 669006377 627913336 662717225 662717225 638889040 638889040 592446129 680939592 680939592 591153316 591153316 533341464 533341464 327684600 327684600 111935536 646186334 646186334 520600936 646236249 646236249 814875794 950423264 950423264 964856390 964856390 225007528 225007528 764931492 764931492 549412929 342110026 342110026 52494752 56697264 209748620 249512028 249512028 527211508 527211508 612632950 612632950 136654153 1023412228 1023412228 755645092 755645092 1053844363 1053844363 680628346 741322672 742209557 742209557 597801376 575218833 575218833 46082048 34824897 32217536 128451960 128451960 69838376 65440216 65440216 100702992 100702992 112339704 124260456 124260456 89395136 9701952 16321088 47787456 61475856 134055344 134055344 115089472 115089472 89008256 823065728 823065728 392881619 369157272 269053186 107744664 134541472 216319432 216319432 46696448 285229090 285229090 203514124 203514124 256053692 256053692 258322600 434875814 941724048 941724048 371377205 160957130 482378310 482378310 319358096 319358096 306226866 306226866 289932450 476187094 869738591 985711431 985711431 725452833 985739386 985739386 910452466 588615202 591386 77867464 885723528 1051299283 1051299283 606819631 449727548 493479342 776030750 810936963 878570763 878570763 810917177 810917177 405540357 139461252 256722456 511755580 511755580 451462614 250776158 274744320 275301762 470855302 475541276 475541276 308619666 256541592 355487850 355487850 361228368 361228368 290505608 290505608 278292960 312633552 312633552 16596800 16596800 30262272 30262272 656004873 662060248 662060248 580532953 680735301 680735301 628294313 628294313 685172952 685172952 529865108 529865108 465826038 140097234 38062224 48269632 48269632 7476704 34233952 58382256 104143672 116789128 116789128 42273888 344469520 344469520 530526292 530526292 386672682 386672682 325119693 325119693 629158026 746794080 746794080 407253056 675414164 675414164 457630339 457630339 184590513 184590513 148213761 51304416 51304416 390004186 390004186 399702946 399702946 325267890 84613600 658906552 658906552 730398800 730398800 67638565 42014272 87241512 229707920 229707920 67366920 67366920 613143112 613143112 2361600 550820160 550820160 75781569 70829832 215431884 710338321 710338321 134580805 680729161 682171677 683249045 980833530 1020040445 1020040445 454099660 836109321 836109321 656228038 982082121 989895456 989895456 876743581 835782408 904472043 904472043 378664962 149393198 1026953047 1026953047 511103998 511103998 490464516 833079520 833079520 615627586 836853252 836853252 561545287 837289157 965248359 965248359 671089382 671089382 972030951 989858900 989858900 84182067 459565407 1055124865 1055124865 822451404 671745633 671745633 565845124 41557632 41557632 44378448 44378448 39650320 49548240 193173728 193173728 172353684 30021344 135719936 135719936 27157696 27157696 9870336 538174976 813863680 908801600 917504859 917504859 304622656 338566410 338566410 316147410 316147410 418894094 418894094 405045700 518598466 518598466 504890910 412688472 472304448 472304448 452336602 452336602 490779620 490779620 358184332 57799904 57799904 23071104 15864768 15864768 15522688 51121184 51121184 17566768 5119104 116106516 214094028 214094028 575965536 575965536 62093968 62093968 70777608 204863940 548762666 909041417 909041417 665771385 650914536 650914536 596852849 874144873 874144873 252932718 1042054662 1042054662 237068612 237068612 110200840 134627148 140322176 140322176 106725384 106725384 14938560 14938560 21199296 27344768 27344768 50172656 135582668 308912086 308912086 239611028 281221318 470276620 470276620 304400658 304400658 343135596 386614227 790209047 790209047 169066621 545710177 553906209 1042748419 1042748419 541513857 1053054379 1053054379 648495225 992076087 992755741 992755741 722821206 796510965 796510965 923659533 923659533 612142251 567570845 1033007997 1033007997 954388487 185644389 185644389 160506468 534774712 561021333 561021333 982736945 982736945 1001784087 1001784087 674963755 674963755 674844471 994189620 994189620 818463939 654723132 654723132 620044697 649168996 649168996 589819012 649687332 649687332 538484933 699303650 818471268 818471268 464401252 539042049 539042049 805372162 805372162 22151904 22151904 22094080 298148480 298148480 188497076 330426896 696602118 696602118 673761664 674018630 814215599 904913347 904913347 986477765 986477765 379707738 767919588 1049360396 1049360396 277349442 434310228 434310228 402851904 415962420 415962420 530714668 530714668 404881422 462206983 488197907 488197907 562629753 889465152 889465152 862112546 862112546 852238356 852238356 793663544 793663544 48499152 252655084 554090784 554090784 539367681 180491264 180880596 180880596 231475069 797709989 797709989 614601033 612499920 79169896 92637064 102263792 103809168 103809168 2097280 439010632 511840350 511840350 622119465 772938685 942686350 942686350 673550677 382367828 814350355 927535110 947450822 947450822 1018462402 1018462402 327361124 327361124 302121504 433586739 433586739 186257559 278532513 980116003 980116003 616581535 798351929 798351929 281560160 856278582 856278582 539297668 381089112 381089112 345295434 291647264 352382346 352382346 515007562 515007562 352981044 42002496 282764049 282764049 378932930 378932930 785255255 785255255 80558799 818359296 818359296 581042304 581042304 547443142 542155478 1047889610 1047889610 177073236 91349928 110675544 267193980 267193980 246115544 151298776 138769024 205718676 205718676 205375872 4504017 853987921 853987921 549189441 559060265 559060265 143117631 126710208 273166600 342570378 1027072290 1027072290 943723083 943723083 877703842 877703842 405014736 405014736 948643440 948643440 688653857 437520710 437520710 401632356 451472710 451472710 310953042 310953042 964978664 964978664 876449225 876449225 258178712 258178712 32163552 54576912 763222848 763222848 76985325 934152 8421440 10502144 10502144 1030766744 1056997543 1056997543 663948344 431370690 401674810 583143561 612987018 665581387 811381538 811381538 339029732 672211461 972555981 1045703088 1045703088 873665035 873665035 256004624 256004624 139510436 785043470 911262363 911262363 803355086 803355086 21157920 17426592 24761032 76563216 76563216 52817680 52370192 35260672 17598504 67683336 181127184 181127184 177456660 177456660 134820552 36441360 7972880 185787184 185787184 178393988 178393988 634673388 735363820 735363820 696254565 677608237 1005876052 1005876052 808850070 808850070 921705160 1025507631 1025507631 648061011 616585362 616585362 549718209 549718209 600238389 600238389 779474244 779474244 661777081 934097289 934097289 980332650 980332650 850261922 850261922 419965075 413402452 413402452 715602261 715602261 705116501 691200933 691200933 559996129 546308673 555601505 555601505 547135617 663731208 663731208 599842853 585639252 600643173 722207469 722207469 223297853 218754364 673811220 674499333 707002896 707002896 114561928 114561928 81822664 599892072 599892072 651868120 651868120 645665673 645665673 635089081 588181673 127713000 127713000 376446810 504367746 504367746 489818232 489818232 123996600 287900928 287900928 908791761 908791761 575219844 609103146 609103146 474488838 1042761202 1042761202 807909654 807909654 372792545 513952177 1036441839 1036441839 950050912 950050912 794301970 1027739823 1027739823 915152537 95166678 95166678 128133362 411046170 557654899 557654899 572133184 713696792 713696792 638458884 403929920 344643138 344643138 1046132234 1046132234 889560041 426978879 832595923 832595923 257536550 257536550 340840520 340840520 337822296 681120212 824716201 824716201 945136388 945136388 93914120 274594528 290558162 331392210 331392210 313049392 336810208 515072800 515072800 494564556 494564556 206408846 456413845 832846787 875772757 875772757 738197517 738197517 616174141 562218200 562218200 199377565 985760275 985760275 822413951 1015890042 1015890042 220060607 197044972 676149890 676149890 624300024 133962537 285230756 285230756 156794914 154667776 154667776 353552688 353552688 66612564 151486600 175024400 357791875 825002807 844151727 975009145 985878767 985878767 706923912 408031878 272683524 25239648 758195375 1039181642 1039181642 1019487104 1019487104 289525736 289525736 296144896 296144896 295962978 19082112 19082112 18145440 139312768 139312768 158260644 158260644 547166184 547166184 77253057 73544068 146131333 1012217871 1012217871 225587524 1026802307 1026802307 677042976 995230598 995230598 589435185 1051247455 1051247455 974008353 974008353 931629102 779639069 436507163 471993409 680276992 680276992 597167457 597167457 305465864 278666496 280105794 1012731566 1012731566 587801649 655914033 658873868 658873868 228222060 228222060 59949528 216866868 216866868 331887080 518133754 518133754 319885888 83955264 25574624 26291776 29953640 84808200 84808200 77225536 77225536 68309520 110237392 110237392 101323800 876200093 1011561615 1011561615 775991702 694337965 694337965 962331648 962331648 961809063 962017959 962017959 675745392 675745392 252447824 252447824 402724240 1009714960 1009714960 917913107 903891202 871366131 1010172673 1010172673 586947632 962671783 962671783 837615698 452201430 452201430 589270404 916081377 916081377 285858527 948159339 948159339 490885892 94507368 951222815 951222815 826401508 826401508 286157863 185985588 135080964 135080964 725403312 725403312 652924741 239747632 116607040 776081420 776081420 561695544 561695544 155832084 661086480 1026254651 1026254651 990690721 990690721 940555393 269233153 744052383 956178375 956178375 823974287 523436884 907934092 907934092 752691665 433887401 457491750 457491750 673795472 673795472 1023426848 1023426848 476236198 476236198 701291605 738761029 956449545 956449545 807869448 948175751 948175751 1061404353 1061404353 364734528 863345360 863345360 577121126 301989906 470718868 470972822 470972822 450404996 464088998 464088998 300747044 94390440 94390440 546835120 669006377 669006377 627913336 662717225 662717225 613156584 617352393 617352393 680939592 680939592 591153316 591153316 51436484 84671072 84671072 933831803 933831803 772556898 646186334 520600936 560943162 768680336 814875794 814875794 677317525 677317525 675337380 675337380 569230773 764931492 764931492 583074400 767037441 767037441 580929473 580929473 800129724 800129724 307077655 998383064 998383064 1061553280 1061553280 1055472953 420228608 429132390 898935110 898935110 1053844363 1053844363 680628346 741322672 742209557 742209557 597801376 575218833 575218833 329522016 329522016 33603904 58851664 58851664 20295936 20295936 19322880 19322880 30898816 30898816 29397376 30054528 30054528 25772576 16321088 60894336 63252720 134055344 134055344 227747829 613675593 613675593 684558828 684558828 392881619 106394520 106394520 75651872 134541472 216319432 216319432 993764793 993764793 285229090 627478444 627478444 577424653 553667259 553667259 408375072 566075382 566075382 890545499 979984940 1036001449 1036001449 352322137 352322137 319881250 657457561 657457561 830904536 830904536 985711431 985711431 725452833 725452833 395969325 344550930 211930319 373366938 942212509 942212509 1051299283 1051299283 606819631 483339498 202983080 776030750 810936963 878570763 878570763 810917177 810917177 539492483 275252610 307766930 807044736 807044736 576730130 576730130 275301762 275301762 470855302 470855302 196672968 196672968 256541592 378485904 378485904 82541858 363144000 373279418 373892250 373892250 339957650 10994496 16596800 269756906 337733096 339339018 357810200 357810200 192640732 192640732 211112544 211112544 248323548 248323548 248961756 598180423 598180423 1063218400 1063218400 201813777 1026162568 1026162568 1014853407 631160960 631160960 588712528 588712528 182820946 288891282 320941362 320941362 119824958 530748778 530748778 399937696 399937696 177880174 416826700 629158026 629158026 841012392 841012392 596156427 102863065 288645906 288645906 839142230 839142230 194251025 2048 262144 325403130 325403130 400088592 400088592 325267890 492958684 658906552 1030551591 1030551591 730398800 461374536 203776640 203776640 150994884 38067100 106880664 106880664 613143112 613143112 580201041 580201041 617314241 617314241 70829832 215431884 710338321 710338321 343960656 727458400 727458400 683249045 683249045 1020040445 1020040445 249146626 836109321 836109321 928522284 982082121 982082121 876743581 876743581 796349983 939693602 939693602 627547840 703536047 1026953047 1026953047 511103998 511103998 490464516 833079520 833079520 615627586 836853252 836853252 561545287 837289157 965248359 965248359 671089382 671089382 972030951 972030951 716311447 245666203 871663707 994421878 994421878 981343501 981343501 671745633 565845124 171390676 182526420 182526420 196346004 196346004 13632192 193173728 193173728 172353684 144220864 144220864 174337296 174337296 144684768 9693216 546793986 904256491 904256491 810973937 982217753 982217753 338566410 461462606 835266038 835266038 872956065 872956065 583010632 518598466 518598466 504890910 412688472 304300070 299346464 506314330 506314330 490779620 490779620 371925210 265720204 457191686 457191686 182455036 241750920 241750920 426151900 450367104 450367104 168113540 344013229 869010675 869010675 803422461 260814317 260814317 87745268 406855270 1061314558 1061314558 909041417 909041417 665771385 654355312 650914536 305333464 337162688 337162688 281801922 859865330 859865330 346570984 346570984 101725010 75497544 77019720 77019720 42441224 34697728 14938560 23363584 23363584 27344768 27344768 99325784 245263640 308912086 308912086 134555652 304439296 304439296 304400658 304400658 304400658 319824928 319824928 274873672 274873672 116834706 377972394 377972394 375352354 375352354 339388400 258203676 258203676 429838360 665323310 992755741 992755741 722821206 796510965 796510965 923659533 923659533 612142251 567570845 567570845 419614758 667190692 667190692 227184505 188502988 534774712 534774712 259048380 554795074 966940745 1001784087 1001784087 674963755 674963755 674844471 295978496 295978496 285261858 232258284 232258284 210456224 26659144 124313416 124313416 77859888 538484933 538484933 699303650 818471268 833699920 833699920 539042049 539042049 805372162 805372162 653463881 653463881 283261850 24182912 46264402 173262916 274126786 274126786 539803920 852414848 852414848 310690176 387973434 387973434 390119610 390119610 306184338 352444600 352444600 411351248 440660118 440660118 363655194 402851904 415962420 415962420 530714668 530714668 404881422 421560610 421560610 437855766 545524752 652449538 652449538 942466598 942466598 852238356 852238356 848726646 14429425 178516308 282549582 282549582 262211144 262211144 433474576 433474576 450773068 450773068 236585744 236585744 196609908 131339264 131339264 92637064 102263792 103809168 308944594 308944594 439010632 511840350 511840350 868575074 953662149 953662149 706021910 478860440 478860440 283251138 927535110 927535110 891289899 1018462402 1018462402 327361124 327361124 730874132 730874132 433586739 186257559 278532513 980116003 980116003 379707738 379707738 76038920 54784176 54784176 17111248 42652752 42652752 29395632 308942976 308942976 52471856 119986488 159738400 254136716 254136716 100708672 282764049 282764049 378932930 378932930 785255255 818089036 818089036 818359296 818359296 581042304 581042304 547443142 542155478 1047889610 1047889610 379622706 217842832 358925460 514476760 514476760 265339644 265339644 138769024 205718676 205718676 205375872 13143104 853987921 853987921 549189441 559060265 559060265 1053459126 1053459126 403206319 118538808 1027072290 1027072290 831635111 58010544 1056686642 1056686642 277361040 285740592 948643440 948643440 320353861 319490098 319490098 274019210 352456746 486560324 486560324 205366916 964978664 964978664 876449225 876449225 481666687 921856381 921856381 401243793 822171157 822171157 113295576 1052704824 1052704824 374463059 275347384 1030766744 1056997543 1056997543 70255015 342046784 342046784 369888696 369888696 105657344 105330840 393401274 393401274 501745134 501745134 629746498 629746498 483361336 374341786 373301402 373301402 725689920 725689920 701198393 423783131 803355086 803355086 395669056 387871794 316006128 316006128 56545760 34563424 34563424 169445276 241754640 241754640 181127184 181127184 147755388 237503504 237503504 203424012 136366400 185787184 185787184 178393988 240339284 634673388 735363820 735363820 696254565 759393120 1005876052 1005876052 961677346 961677346 708837030 965708607 965708607 302153864 616585362 616585362 549718209 944054677 944054677 600238389 779474244 779474244 661777081 934097289 934097289 980332650 980332650 850261922 850261922 291015504 42078288 950998114 950998114 732379509 714285941 1455477 635680 13108416 18099200 18164800 60377824 563210848 563210848 672927237 722809597 779566489 779566489 616698057 653528025 653528025 24183072 18883488 18883488 27137984 58010544 58010544 38019872 10694976 536871296 536871296 651868120 651868120 576345008 635089081 635089081 588181673 539990320 111617385 376446810 504367746 504367746 489818232 489818232 789504 287900928 287900928 442546474 442546474 410442054 410442054 213456128 231527153 1042761202 1042761202 807909654 807909654 372792545 856691014 856691014 847587840 904135369 904135369 641448834 838395763 915152537 915152537 101778008 286600997 1032351575 1032351575 943682053 943682053 898338359 898338359 272571402 403929920 413323590 810421826 810421826 1046132234 1046132234 775000283 539616513 539616513 83201 16781344 16908320 16908320 334495866 334495866 208407540 473697208 473697208 479725320 533970150 533970150 447533090 335213154 331392210 331392210 51321394 329524720 329524720 80352456 80352456 136709312 422859292 456413845 832846787 875772757 875772757 738197517 738197517 616174141 691667868 691667868 577770245 608174217 608174217 639180917 780214365 1057950252 1057950252 840644115 676149890 718932102 960888926 960888926 584392236 850309166 850309166 975403312 975403312 971492092 353552688 5869056 151486600 175024400 175024400 174536604 664209976 985112633 985112633 756333367 408031878 408031878 378888784 708051490 758195375 1039181642 1039181642 1019487104 1019487104 352456746 205282891 412107725 412107725 411437925 615436963 689766029 689766029 412552814 544331017 952448330 952448330 618265952 618265952 276201218 25508768 146131333 146131333 537693508 543743493 543743493 809467906 809467906 995230598 995230598 589435185 1051247455 1051247455 235078882 533411070 779639069 779639069 436507163 698352384 698352384 680276992 624955532 597167457 311710864 620551890 620551890 483463753 371865988 526602046 526602046 523041942 424204872 478782014 478782014 452715646 216866868 388244600 421652952 518133754 518133754 319885888 123749784 48760272 97670920 97670920 69017640 76396088 77225536 270111425 843503763 843503763 839435283 839435283 876200093 876200093 874751894 775991702 532775604 256922418 962331648 962331648 961809063 962017959 962017959 579636917 579636917 252447824 252447824 101722140 1009714960 1009714960 917913107 480433486 501663904 1010172673 1010172673 586947632 962671783 962671783 837615698 452201430 472694840 472694840 455871798 332475776 469712886 842224906 1038539247 1038539247 1022882987 417303684 417303684 826401508 826401508 822267939 822267939 813879337 615249249 725403312 725403312 649370488 239747632 549095552 623002576 623002576 561695544 561695544 119851320 643351448 643351448 539493633 990690721 990690721 940555393 805795847 744052383 983439958 983439958 866520799 692992458 907934092 907934092 661852347 381232986 335470368 85900704 102794264 336526378 1023426848 1023426848 476236198 1050522912 1050522912 701291605 956449545 956449545 408160072 415100742 415100742 210887954 364734528 364734528 356042538 295787902 654909990 654909990 470718868 470972822 470972822 450404996 464088998 464088998 300747044 24250368 362096618 546835120 546835120 391058440 58462128 58462128 93849192 613156584 617352393 617352393 96765984 96765984 46271092 104924032 104924032 126825008 126825008 933831803 933831803 797220221 797220221 547171905 560943162 768680336 768680336 693079724 677317525 677317525 675337380 718812337 718812337 189791412 180826528 583074400 767037441 767037441 757256016 757256016 800129724 800129724 307077655 998383064 998383064 1061553280 1061553280 1055472953 791612512 797444479 898935110 898935110 935095855 935095855 838870660 978921111 978921111 896677177 896677177 272906946 291570160 504213213 504213213 578225057 579088496 597952881 597952881 33888353 19322880 586351521 588718673 588718673 559098000 30054528 30054528 31990720 31990720 60894336 63252720 122919152 122919152 227747829 613675593 613675593 613675593 540070860 139584132 168944148 168944148 95808360 261832032 261832032 120220577 993764793 993764793 419767000 627478444 627478444 577424653 553667259 553667259 581547702 998348815 998348815 925369659 979984940 1036001449 1036001449 352322137 352322137 319881250 657457561 657457561 830904536 830904536 816092472 546310480 546310480 182034884 344550930 344550930 772836930 772836930 942212509 942212509 246141383 278403031 483339498 876882221 876882221 429361894 429361894 101406386 774935842 959416989 959416989 539492483 408571632 408571632 807044736 807044736 576730130 576730130 317591616 317591616 298318050 456918830 456918830 361822462 242766008 397070640 397070640 319179522 363144000 373279418 373892250 373892250 339957650 302563808 302563808 281056704 337733096 339339018 357810200 357810200 229600324 229600324 95155560 95155560 23382432 243696256 248961756 598180423 598180423 1063218400 1063218400 201813777 1026162568 1026162568 1014853407 631160960 631160960 588712528 588712528 182820946 288891282 320941362 320941362 125985480 530748778 530748778 399937696 399937696 629618117 629618117 620397763 609871497 930636837 930636837 785035431 646447321 419294339 419294339 988031511 988031511 268460050 58871448 395030658 395030658 396497450 400088592 400088592 245793926 492958684 575742744 1030551591 1030551591 622678621 787162596 1069365119 1069365119 150994884 866276985 866276985 651350833 573880985 828377650 828377650 580201041 617314241 617314241 608711745 877139074 877139074 808136778 343960656 727458400 727458400 145542468 145542468 450906128 450906128 249146626 391345672 391345672 928522284 928522284 944467023 944467023 957741700 957741700 939693602 939693602 987873076 1044080983 1044080983 317582802 381902088 381902088 104370244 910952464 910952464 79774856 318691968 318691968 34625026 538608768 541249665 541249665 574754961 574754961 213149645 716311447 716311447 245666203 871663707 871663707 626806694 981343501 981343501 322077305 262933302 331494678 331494678 310979890 451745556 451745556 444020882 411122384 138485892 138485892 144220864 144220864 174337296 193545508 193545508 536870913 671761413 904256491 904256491 810973937 982217753 982217753 115984498 461462606 835266038 835266038 872956065 872956065 583010632 118113288 50899424 181396180 181396180 299346464 299346464 506314330 506314330 461971750 371925210 371925210 265720204 457191686 457191686 182455036 241750920 241750920 426151900 450367104 450367104 168113540 575099312 869010675 869010675 803422461 304519304 882002618 1067456093 1067456093 1061314558 1061314558 827713713 827713713 811810288 654355312 311340440 617907232 617907232 281789762 281801922 859865330 859865330 346570984 346570984 101725010 75497544 77019720 77019720 42441224 34697728 22559552 70567080 70567080 70960448 70960448 129940936 245263640 245263640 229704236 383608128 478722194 478722194 304400658 355541802 355541802 319824928 319824928 274873672 274873672 352717856 377972394 377972394 375352354 375352354 339388400 95328984 97913480 429838360 665323310 665323310 78042465 471977336 471977336 506062110 506062110 391679406 404076090 404076090 138568370 195578268 727765192 727765192 227184505 592927380 592927380 259048380 726197220 726197220 537446001 696333941 696333941 171746864 287596816 287596816 295978496 295978496 285261858 76158024 80714816 80714816 9122880 117949120 123473592 123473592 22520480 22520480 151187456 151187456 833699920 833699920 421061077 189342900 64039988 101910323 653463881 653463881 283261850 16068992 46264402 173262916 274126786 951066180 974917251 974917251 852414848 713429520 713429520 948005317 948005317 583025715 478990545 794850354 794850354 539535580 440660118 440660118 46526550 184879140 494977646 494977646 411182222 469845312 480896334 480896334 421560610 437855766 437855766 652449538 652449538 942466598 942466598 825543459 848726646 848726646 267117677 635406204 635406204 282549582 262211144 639549289 639549289 433474576 698882337 698882337 731829824 731829824 113166096 370151706 370151706 59808832 64637584 64637584 308944594 318264194 318264194 299262128 299262128 868575074 953662149 953662149 336650606 478860440 478860440 943374852 943374852 255058448 220336428 350673354 384850448 384850448 229642618 730874132 730874132 536877192 393353 897851008 897851008 287416578 379707738 379707738 264267274 264267274 88422597 114984614 536901139 677517701 677517701 571213697 1041795501 1041795501 588673576 626037528 683037880 683037880 454605320 241266692 241266692 49744132 47258560 107484800 906236184 906236184 209987160 209987160 143032452 138434628 39960848 39960848 157016886 379622706 379622706 381329146 381329146 514476760 514476760 265339644 265339644 135941120 135941120 68469268 68345088 68345088 13143104 403524292 403524292 352879658 494944302 1053459126 1053459126 860081384 860081384 928421582 928421582 972132892 972132892 1056686642 1056686642 298183122 298183122 324332518 324332518 319042610 337316134 556935296 556935296 403776006 486560324 511200922 610339336 610339336 558425120 84435976 26767104 481666687 921856381 921856381 401243793 822171157 822171157 113295576 1052704824 1052704824 374463059 567296789 567296789 414225260 744620115 744620115 369244882 342046784 640616899 640616899 599552035 128372609 858035266 858035266 369169546 408559234 408559234 872629448 872629448 374341786 373301402 373301402 725689920 1028936242 1028936242 496435401 426828284 426828284 395669056 387871794 316006128 316006128 33929840 34563424 34563424 169445276 241754640 241754640 150016 140052160 140052160 237503504 237503504 203424012 136366400 87171232 87171232 184588208 257063380 257063380 550848777 601148145 601148145 759393120 759393120 659554456 961677346 961677346 708837030 965708607 965708607 161651667 470010001 470010001 57088338 944054677 944054677 94820392 94820392 93637224 93637224 17826336 55546400 285831600 287783202 319080576 403005443 403005443 296536129 961193091 961193091 732379509 714285941 537280416 163456741 560458176 560458176 697828965 697828965 563210848 563210848 672927237 722809597 1057231402 1057231402 706091541 653528025 653528025 634767249 841616163 841616163 577870720 577870720 268830082 57163552 28876896 554811520 571601608 571601608 562775992 616322345 616322345 612594761 612594761 566108001 111617385 579912320 579912320 575932608 269347842 269347842 193463412 193463412 272455432 442546474 442546474 69487200 95470440 156678852 156678852 289758919 757207856 757207856 588783168 198067983 856691014 856691014 600962007 485276299 485276299 622624906 838395763 838395763 347079498 832832522 832832522 1032351575 1032351575 943682053 943682053 898338359 948988434 948988434 907229719 413323590 810421826 992882055 992882055 379417616 539607040 554955297 1067667481 1067667481 1016288183 1016288183 60842243 350245665 863237043 863237043 137955781 909370328 909370328 805721627 805721627 548856026 335213154 286264322 286264322 41165920 21619872 500971750 500971750 347834040 163863732 422859292 496048674 496048674 362624862 499856862 499856862 134223008 138413736 691667868 759410712 759410712 695070117 721707685 721707685 633216873 1057950252 1057950252 840644115 668085407 718932102 960888926 960888926 849631920 850309166 850309166 975403312 975403312 971492092 344215748 201775362 304484658 304484658 356084491 588278829 771819572 985112633 985112633 756333367 262121581 279200312 378888784 708051490 708051490 624138124 624138124 96287596 352456746 352456746 205282891 412107725 412107725 411437925 615436963 689766029 689766029 412552814 687145644 952448330 952448330 618265952 618265952 276201218 70973570 674162240 674162240 537693508 543743493 543743493 809467906 809467906 279480161 441378806 450933942 876275475 876275475 842651403 842651403 533411070 469257212 197654772 698352384 873567008 873567008 624955532 33953808 311710864 620551890 620551890 483463753 420379490 420379490 339203918 296314562 424204872 478782014 478782014 452715646 268503264 388244600 421652952 421652952 141874392 123749784 123749784 48760272 97670920 97780256 97780256 341738746 341738746 311789376 843503763 843503763 839435283 839435283 234984976 402855694 402855694 532775604 945292935 945292935 850946349 850946349 933096554 1032711279 1032711279 657819478 579636917 101838873 538055169 538055169 678971050 678971050 480433486 1025510287 1025510287 430083436 430083436 386974218 386974218 325767434 332931515 332931515 472694840 472694840 520671534 619689265 619689265 842224906 1038539247 1038539247 1022882987 176260768 176260768 34779328 120013608 822267939 822267939 813879337 615249249 62366753 649370488 649370488 612157465 648233681 648233681 623002576 661426448 661426448 119015001 662969385 662969385 624984202 420214532 939614337 939614337 805795847 497550446 983439958 983439958 866520799 692992458 271655682 661852347 661852347 578045515 578045515 45002756 705260936 705260936 992064941 992064941 857919795 1050522912 1050522912 633640280 633640280 595512489 408160072 415100742 415100742 210887954 557655084 913057053 913057053 527999488 654909990 654909990 645700639 645700639 323751700 855974021 855974021 335088660 335088660 490130272 490130272 460325814 709600783 714393612 714393612 792625577 792625577 588513937 588513937 542378121 727877229 727877229 717518588 717518588 444888848 444888848 298318050 85605448 84485160 797220221 797220221 570064864 570064864 507326238 507326238 457105206 457105206 663228098 743862335 743862335 718812337 440424470 440424470 56430284 321841546 321841546 757256016 757256016 777482376 957281439 957281439 931434019 408894518 1045825184 1045825184 285421602 791612512 797444479 797444479 454369090 9513478 304090757 838870660 978921111 978921111 896677177 896677177 707693457 744493340 744493340 561269648 578225057 579088496 597952881 597952881 572996385 572996385 586351521 588718673 588718673 559098000 8726592 16319744 31990720 31990720 60624360 122233120 122233120 107554200 174519132 174519132 49291496 228750248 228750248 220245620 220245620 242067628 242067628 261832032 261832032 30915316 34785472 305398150 419767000 899187519 899187519 704803454 380187469 717435093 717435093 998348815 998348815 925369659 925369659 451708491 274319044 39724712 33769616 22294664 89178792 104874544 127667784 608962232 608962232 546310480 546310480 441242570 1050454738 1050454738 772836930 772836930 449938182 944578642 944578642 718015701 531047949 876882221 876882221 765583725 831644130 910263160 910263160 959416989 959416989 165682769 733248834 968400647 968400647 963716327 807573847 726120706 956813515 1067716912 1067716912 456918830 456918830 361822462 242766008 397070640 397070640 319179522 352360760 352360760 332790498 309433776 309433776 302563808 302563808 281056704 281056704 30436066 28666240 12387396 229600324 229600324 95155560 95155560 23382432 482478506 482478506 400744386 400744386 506905028 506905028 192321058 51399312 54790320 54790320 63965696 63965696 134668352 134668352 50400328 75564264 92604632 92604632 125985480 129609760 129609760 19009824 221253961 629618117 629618117 620397763 609871497 930636837 930636837 785035431 646447321 419294339 419294339 988031511 988031511 268460050 276040880 395030658 395030658 396497450 396497450 103384192 104960032 123884472 575742744 575742744 622678621 622678621 787162596 1069365119 1069365119 84023684 866276985 866276985 651350833 573880985 891589056 902224107 902224107 621021225 621021225 608711745 882195010 882195010 880800066 43354176 43354176 10649600 10670400 10670400 45336640 168508830 168508830 391345672 1023528986 1023528986 893749282 944467023 944467023 957741700 957741700 692721108 270745680 987873076 1044080983 1044080983 890099033 342560361 347481862 449797330 910952464 910952464 282878730 318691968 318691968 839069715 839069715 541249665 541249665 818027008 818027008 588238531 545715312 46416836 187990088 704908832 704908832 235455516 399247994 399295124 399295124 262933302 331494678 331494678 310979890 451745556 451745556 444020882 424718932 424718932 408081030 403400320 55795360 187269492 193545508 193545508 536870913 671761413 671761413 237854337 938490028 1007835263 1007835263 679624874 761340333 761340333 36038928 36038928 455114754 455114754 463883238 463883238 247255290 82544920 46261008 46261008 129488216 129488216 337920 144920612 153149792 153149792 182489536 182489536 179560980 182368340 182368340 172415124 172415124 156389524 134971904 710951322 710951322 1009521726 1009521726 1008767775 882002618 1067456093 1067456093 616957481 601505289 434190430 811810288 811810288 580845674 311340440 617907232 784452695 784452695 903841322 1033539077 1033539077 1057808828 1057808828 61933744 112166872 112166872 407300928 418895104 418895104 214460000 214460000 221030048 221030048 70960448 139909764 233189956 403859498 403859498 383608128 478722194 478722194 276904952 355541802 355541802 234913836 263792508 263792508 220207452 352717856 352717856 101340282 68026424 302171714 302171714 534694062 534694062 267518422 384058126 384058126 188778903 816071018 894223819 901830779 901830779 643732667 618402321 853942038 853942038 845677971 727765192 813727888 813727888 671531637 671531637 177902625 726197220 726197220 807821456 807821456 548268033 892503659 899813739 1014001824 1014001824 411498590 499757572 499757572 240462808 240462808 103357056 117949120 123473592 123473592 610156141 610156141 794701862 1034194644 1034194644 612260124 649471749 851126656 851126656 272963408 41943112 75631320 81140232 81140232 277217296 277217296 33560642 951066180 974917251 974917251 816062355 836053460 836053460 948005317 948005317 635123916 1004800503 1004800503 794850354 539535580 484943944 325544036 325544036 455100580 494977646 494977646 471756864 471756864 480896334 480896334 396885313 289203553 259514298 109310040 942228178 942228178 808820768 825543459 825543459 705200288 782210165 782210165 635406204 385897020 403886598 639549289 639549289 790891150 791991061 791991061 731829824 731829824 412273398 370151706 370151706 18879416 28708896 28708896 39848464 318264194 318264194 299262128 299262128 423587381 423587381 536599511 608334776 608334776 515089672 943374852 943374852 891289899 896723473 896723473 575092881 513958457 469027830 334531342 822399561 822399561 790415525 897851008 1021889144 1021889144 859097907 859097907 704662310 264267274 813980328 813980328 536901139 677517701 677517701 571213697 1041795501 1041795501 588673576 626037528 683037880 683037880 454605320 376795861 376795861 447166806 447166806 584457795 906236184 906236184 940831388 940831388 808638872 808638872 606264088 570425361 1015062876 1015062876 311423092 381329146 381329146 247234764 247234764 107661128 33723376 33723376 157178400 157178400 151344264 83192328 83192328 347887136 363256170 363256170 1049275666 1049275666 747319943 860081384 860081384 771292653 654262088 972132892 972132892 657857337 59674624 298183122 443581712 443581712 402756115 724984863 1064437183 1064437183 595061005 460545043 403776006 511200922 610339336 614465865 614465865 993450807 993450807 471652614 471652614 137514506 30934752 20474592 20474592 50936544 327520416 867500058 867500058 580911451 567296789 459011766 744620115 744620115 369244882 818812995 818812995 843719059 843719059 128372609 858035266 858035266 369169546 408559234 408559234 872629448 872629448 600990723 303706144 984430990 1043078473 1043078473 1028936242 952896704 1026403040 1026403040 112116480 112116480 23706752 23706752 16819264 42643880 102880760 102880760 251026284 251026284 98750952 97957876 267893608 267893608 107262472 45771608 188593388 216647452 216647452 184588208 257063380 257063380 550848777 601148145 601148145 590628889 659554456 659554456 287312292 696254931 832305138 832305138 946252672 946252672 927451195 253223627 257127056 710058033 710058033 951566903 951566903 876273514 247558932 247558932 532624455 532624455 446352165 849547794 849547794 852839665 852839665 1000402807 1000402807 279394626 862458241 862458241 560054544 560458176 577023969 697828965 697828965 542452353 542452353 151063205 71962688 1057231402 1057231402 706091541 353503295 109098088 634767249 841616163 841616163 577870720 577870720 268830082 57163552 28876896 554811520 571601608 571601608 562775992 616322345 616322345 612594761 612594761 566108001 570706880 579912320 579912320 575932608 102517466 164369488 193463412 193463412 418643996 472128478 472128478 338041098 286363776 95470440 182780328 287607980 757207856 757207856 588783168 465378848 191356510 600962007 600962007 388482571 976983974 976983974 828165795 828165795 347079498 832832522 832832522 339083586 553051176 715351969 715351969 852273194 1069274320 1069274320 1028421807 1028421807 949434951 992882055 992882055 862189929 898924917 898924917 1067667481 1067667481 1016288183 1016288183 844135853 383228585 863237043 863237043 137955781 909370328 909370328 805721627 805721627 654373762 654373762 576313875 314004738 314004738 29632354 859871804 859871804 994616501 994616501 838665829 838665829 792197949 792197949 543247205 583598241 583598241 554173489 216252737 759410712 759410712 695070117 721707685 721707685 633216873 633216873 884220082 884220082 748487379 487588398 335938062 315492371 849631920 849631920 838471723 289554654 203872524 344215748 344215748 201775362 304484658 304484658 356084491 588278829 884512375 884512375 503872780 607085827 607085827 468755434 468755434 1049842210 1049842210 624138124 1038185952 1038185952 948563948 144816684 95178892 77857794 292294050 407916584 407916584 367868682 294000738 222636192 687145644 687145644 421794765 538850058 538850058 273143560 70973570 674162240 674162240 147700356 163117587 813952294 813952294 580404338 580404338 585503312 867752277 876275475 1045356269 1045356269 842651403 683797071 1005387103 1005387103 828346948 873567008 873567008 775000340 621854988 882904864 882904864 882642507 866111607 741536578 420379490 339203918 295384674 231919336 231919336 72991112 73459336 268503264 268503264 131001284 141874392 141874392 35868200 28445984 28445984 55081440 124854272 124854272 341738746 341738746 311789376 311789376 580231193 580231193 379142912 819586755 819586755 402855694 514609504 945292935 945292935 850946349 850946349 933096554 1032711279 1032711279 657819478 483118976 483118976 538055169 538055169 981267477 981267477 839664984 1025510287 1025510287 815769541 825168480 825168480 386974218 325767434 642920768 642920768 292782991 382526116 520671534 619689265 619689265 436996308 701762277 701762277 695468352 432303333 416322692 706295542 840888020 840888020 329126418 270540672 67741696 21515904 21515904 612157465 612157465 648233681 648233681 640763520 661426448 661426448 638583361 662969385 662969385 624984202 940530688 940530688 536928395 237008180 237008180 260909436 260909436 700877258 806287495 806287495 759386247 493169764 578045515 578045515 439046748 705260936 705260936 992064941 992064941 857919795 770742418 770742418 633640280 633640280 595512489 426646950 783139086 920938573 942772183 975523590 975523590 913057053 527999488 527999488 575065236 645700639 645700639 496248095 855974021 855974021 341386948 341386948 490130272 490130272 460325814 709600783 714393612 714393612 792625577 792625577 588513937 588513937 542378121 727877229 727877229 717518588 717518588 444888848 444888848 298318050 231279664 231279664 84189024 870471123 870471123 854496729 731122778 507326238 457105206 457105206 953322132 953322132 743862335 659453069 440424470 885463051 885463051 593304626 593304626 493077870 493077870 705504998 957281439 957281439 931434019 594085536 594085536 501563200 501563200 633670978 889327785 889327785 772604038 788977725 788977725 713212567 1021840089 1021840089 750098371 574710387 707693457 744493340 744493340 561269648 561269648 59408432 59408432 563025152 579022929 579022929 66264448 66264448 29071504 52291776 52291776 16589376 16843232 26215008 26215008 122233120 122233120 107554200 174519132 174519132 49291496 228750248 228750248 220245620 220245620 242067628 242067628 120279328 140950844 140950844 464168744 464168744 324134988 899187519 899187519 704803454 714154420 717435093 717435093 903189139 903189139 878144755 877470824 218956932 218956932 33769616 33769616 22294664 89178792 104874544 647556827 647556827 1071905143 1071905143 709804692 709804692 1050454738 1050454738 843201244 843201244 340466833 944578642 944578642 718015701 531047949 287574306 765583725 765583725 831644130 910263160 910263160 894831402 408814451 165682769 733248834 968400647 968400647 963716327 807573847 726120706 956813515 1067716912 1067716912 437257076 443548566 443548566 420234810 342149514 120231976 84301112 378441040 378441040 44850506 28312416 41943584 270640384 278909312 278909312 274787168 30436066 28666240 56832432 56832432 131856120 240940720 240940720 49219156 482478506 882541368 882541368 678205349 678205349 506905028 192321058 73999752 54790320 936687698 936687698 802292400 802292400 591796324 152423552 152423552 1887744 1887744 1887744 1887744 1313280 17180672 22354952 91112448 228290856 351008206 351008206 490820972 490820972 83378896 129574776 304464882 311430882 320940144 320940144 310119008 276040880 325922226 325922226 301533776 114233194 425712314 425712314 469725060 469725060 336858890 338563080 338563080 225316904 225316904 224659884 221152992 347000116 347000116 637573386 637573386 891589056 902224107 902224107 621021225 621021225 540318120 882195010 882195010 880800066 294315152 766888792 766888792 225162420 717684356 717684356 598262032 598262032 708100885 1023528986 1023528986 392083133 790107572 790107572 556978977 692721108 692721108 421683440 407426080 335882250 890099033 890099033 342560361 347481862 449797330 449797330 316279314 316279314 310681034 577329280 839069715 851633728 851633728 878203931 878203931 818027008 588238531 545715312 844312928 862269583 862269583 571491440 571491440 399247994 420269094 420269094 341855394 337707342 161481060 247935320 392510660 399383802 399383802 424718932 424718932 408081030 403400320 152725056 187269492 187269492 50874148 50874148 188254004 256486552 319134818 938490028 1007835263 1007835263 679624874 761340333 761340333 936978171 1023387337 1023387337 859375822 463883238 463883238 247255290 70810936 50014928 15129024 12730624 45362256 45362256 144920612 172032000 193011828 199639124 199639124 182925780 6476160 155998384 172415124 172415124 156389524 134971904 710951322 710951322 1009521726 1009521726 1008767775 336873509 254155068 208744960 208744960 176043884 584443872 584443872 580845674 816975490 816975490 622854441 784452695 784452695 903841322 1033539077 1033539077 1057808828 1057808828 61933744 247399772 247399772 407300928 418895104 418895104 214460000 214460000 221030048 221030048 214463040 139909764 233189956 483420234 483420234 414477004 473172750 473172750 237400080 481111374 481111374 404234574 404234574 220207452 220207452 327700552 327700552 327585834 273289888 302171714 370042408 534694062 534694062 267518422 384058126 384058126 365232256 816071018 894223819 901830779 901830779 643732667 618402321 853942038 853942038 845677971 935986292 935986292 813727888 671531637 736135549 736135549 758740973 758740973 807821456 807821456 548268033 892503659 899813739 1014001824 1014001824 777269762 777269762 834871449 915413029 915413029 558049852 558049852 673618036 673618036 610156141 610156141 794701862 1034194644 1034194644 612260124 649471749 851126656 880281483 880281483 630980779 630980779 81140232 81140232 277217296 277217296 326372274 860881249 860881249 1001390148 1001390148 836053460 836053460 447906017 331817746 635123916 1004800503 1004800503 142868548 484943944 484943944 325544036 325544036 455100580 455100580 376488858 471756864 471756864 212072010 482870436 487072962 487072962 137049350 839000512 942228178 942228178 710210101 469553142 571386764 705200288 782210165 782210165 212073177 385897020 403886598 403886598 500435694 790891150 791991061 791991061 421649768 412273398 457218264 457218264 364956174 327340146 327340146 327303378 314573010 310378626 268435458 28356640 283440147 459942709 459942709 536599511 608334776 907550896 919635789 919635789 925355906 925355906 896723473 896723473 575092881 513958457 469027830 334531342 822399561 822399561 790415525 790415525 1021889144 1021889144 859097907 859097907 872284136 872284136 813980328 813980328 331750136 365696426 365696426 321858466 910452866 910452866 291953058 291953058 130466074 84017280 139776448 376795861 376795861 447166806 447166806 584457795 584457795 237458380 940831388 940831388 808638872 956599984 956599984 570425361 1015062876 1015062876 143291198 127403640 120096984 247234764 247234764 107661128 100663320 100663320 157178400 157178400 151344264 83192328 83578496 347887136 363256170 363256170 1049275666 1049275666 704716813 740632845 740632845 126559981 108477336 108477336 35866280 23124464 59674624 59674624 443581712 443581712 402756115 724984863 1064437183 1064437183 595061005 460545043 916024266 916024266 581970242 614465865 614465865 993450807 993450807 471652614 471652614 137514506 377105286 754474156 754474156 650633117 581416705 867500058 918434886 918434886 459011766 459011766 398508282 462591202 462591202 818812995 818812995 843719059 843719059 348910794 299614220 469819554 469819554 608920108 608920108 773652534 773652534 600990723 516435456 984430990 1043078473 1043078473 956043207 952896704 1026403040 1026403040 67681088 69337488 115368424 123426112 123426112 42643880 102880760 102880760 251026284 251026284 98750952 97957876 267893608 267893608 107262472 80036928 188593388 704734225 704734225 671907852 768876668 768876668 99121212 256427196 638059545 638059545 768245813 768245813 963172260 963172260 1026820798 1026820798 946252672 946252672 927451195 253223627 257127056 710058033 710058033 951566903 951566903 876273514 647587744 647587744 605318241 604604417 446352165 849547794 849547794 984130421 984130421 1000402807 1000402807 403444858 862458241 862458241 854902064 552340929 577023969 599711601 671130665 671130665 223888000 739815626 739815626 478863559 305011986 1041753614 1041753614 253794178 623175969 963977655 963977655 827480582 53109512 101532712 118146152 118146152 60579560 133272984 133272984 122328336 99800040 84408360 92362792 92362792 133619880 570706880 570706880 349471256 509286428 509286428 304999698 160115962 319940068 418643996 472128478 472128478 372632346 286363776 456366718 456366718 412793050 412793050 352245064 465378848 465378848 1060583757 1060583757 637366094 637366094 976983974 976983974 698047875 519384030 400033530 400033530 676422333 989113188 989113188 786075249 786075249 852273194 1069274320 1069274320 1028421807 1028421807 949434951 59721035 247947764 862189929 898924917 898924917 842213651 842213651 754565807 844135853 844135853 591187761 274911618 274911618 453034038 977715354 977715354 100974752 355539121 654373762 654373762 576313875 314004738 314004738 29632354 859871804 859871804 994616501 994616501 838665829 838665829 792197949 792197949 543247205 583598241 583598241 554173489 184506432 136214612 27678112 27678112 543426888 610117700 610117700 515151493 884220082 884220082 856827208 856827208 722082307 100931288 285495488 331798770 331798770 46303266 2622720 53020448 53020448 70879792 85248552 85248552 84963368 134546000 884512375 884512375 503872780 607085827 607085827 468755434 468755434 1049842210 1049842210 622099278 1038185952 1038185952 948563948 249569328 161554820 210842132 210842132 407916584 407916584 294000738 294000738 222636192 290981408 493248002 493248002 538850058 538850058 355599136 355599136 160365728 189661812 189661812 193993908 813952294 813952294 580404338 580404338 585503312 867752277 867752277 1045356269 1045356269 803379991 803379991 1005387103 1005387103 948046039 696668716 775000340 775000340 621854988 882904864 882904864 882642507 866111607 741536578 477559752 477559752 347004234 350688290 357062330 398582010 398582010 393698552 393698552 332114426 281462800 118722624 106703496 106703496 72683160 90777600 124854272 124854272 44763560 44662992 44662992 46163280 580231193 580231193 379142912 819586755 819586755 1071045375 1071045375 521067582 521067582 12077548 224186028 701066936 773620337 773620337 137692404 497166880 497166880 476003982 476003982 981267477 981267477 839664984 731071179 721147861 815769541 825168480 825168480 194130592 204837428 642920768 642920768 292782991 382526116 465642696 465642696 792020384 894196649 894196649 269746791 432303333 432303333 416322692 706295542 840888020 840888020 329126418 270540672 53892880 33949872 33949872 88133536 650412656 650412656 602331633 640763520 640763520 638583361 638583361 667181129 667181129 688649253 940530688 940530688 940528644 940528644 487451694 943056390 1025630511 1025630511 806287495 806287495 866619440 866619440 405935184 209715276 439046748 439046748 406447878 958513152 958513152 151060736 151060736 866572112 866572112 823922211 426646950 426646950 806159872 920938573 951386564 975523590 975523590 943851052 943851052 354645049 524924678 524924678 496248095 719423878 719423878 386746270 341386948 341386948 249324648 174222856 476451212 476451212 389423204 389423204 181813592 133145580 120749248 110623320 101376584 101376584 464453286 464453286 225248420 333595922 333595922 161133576 231279664 231279664 68742280 870471123 870471123 854496729 731122778 378015327 0 173298375 953322132 953322132 809593972 676110962 555560545 885463051 885463051 593304626 597565041 597565041 402902218 715984190 963764803 963764803 773950243 594085536 594085536 613004395 901960818 1065608425 1065608425 889327785 925050237 933881211 933881211 713212567 1021840089 1021840089 746936008 817020546 817020546 719366045 643224544 1039323042 1039323042 566399120 59408432 563025152 579022929 579022929 66264448 66264448 38350225 55649344 558630336 558630336 554698241 554698241 538445824 118752248 118752248 50135680 116206912 116206912 84753184 84753184 74120640 74120640 201978128 252242968 255062844 255062844 140950844 140950844 464168744 464168744 91619734 208896 176711464 263316348 714154420 714154420 165243036 163957220 163957220 161345124 364759458 371485720 371485720 21056576 21056576 38150536 606139288 606139288 647556827 807329283 1071905143 1071905143 709804692 709804692 404239248 81213128 843201244 843201244 340466833 775096014 775096014 426773124 945292935 945292935 443996160 742039594 894193046 894193046 894831402 894831402 782571883 1069644902 1069644902 166124004 435449040 435449040 316620498 293716992 2744320 184151324 184151324 437257076 443548566 443548566 420234810 342149514 46417936 70519560 378441040 378441040 149721060 28312416 276207552 276207552 278909312 278909312 93922920 93922920 92282924 151039052 151039052 143220800 240940720 240940720 99744168 99744168 882541368 882541368 678205349 678205349 330981367 121061840 73999752 83959848 936687698 936687698 802292400 802292400 591796324 152423552 152423552 123637928 123637928 85098102 350925886 350925886 310255506 405540102 405540102 415492646 415492646 127714296 515985246 515985246 353452832 353452832 317309384 317309384 311430882 310119008 310119008 25887944 73474440 93849930 114233194 114233194 425712314 425712314 469725060 469725060 744197789 744197789 1060771647 1060771647 933092939 933092939 242975676 553686869 553686869 637573386 637573386 892113096 892113096 837737955 340941834 27263328 12763520 12763520 827228598 827228598 294315152 766888792 766888792 839761445 958596194 958596194 598262032 598262032 708100885 708100885 410688033 827089409 827089409 331066020 196293492 864654563 864654563 815862694 985432231 985432231 653256007 338103328 256427849 351934410 351934410 69341448 641982865 641982865 881400576 881400576 577329280 851633728 851633728 878203931 878203931 325158514 664127907 668712761 844312928 862269583 862269583 571491440 973621546 973621546 655673913 911247522 911247522 337707342 75905952 247935320 392510660 399383802 399383802 283149856 283149856 34264080 152725056 152725056 9136640 1319488 195855733 674547729 674547729 597000449 319134818 896541482 896541482 734928117 950610691 950610691 549222224 936978171 1023387337 1023387337 859375822 362828554 481526592 481526592 388577112 323676032 352490010 375050906 386568730 386568730 385935450 378393616 193011828 199639124 199639124 182925780 6476160 6476160 27575456 41192896 41192896 47055280 50378768 50378768 390339504 390339504 338825994 254155068 254155068 302912436 302912436 754969412 754969412 595071488 595071488 816975490 816975490 622854441 691047190 825804579 825804579 135284007 16330240 113673368 113673368 43894272 247399772 247399772 142981584 151642468 151642468 147111968 163842276 163842276 214463040 214463040 21235872 83945536 483420234 483420234 414477004 473172750 473172750 229190740 481111374 481111374 404234574 404234574 321598770 624843059 624843059 327585834 327585834 298829728 119172266 568803459 818774344 818774344 634000617 625421376 566544609 566544609 365232256 19475082 26224032 66135024 66135024 279333136 279333136 285397026 285397026 935986292 935986292 401092640 401092640 736135549 736135549 758740973 758740973 130181200 868549912 868549912 526721534 526721534 842597092 842597092 777269762 777269762 834871449 915413029 915413029 558049852 558049852 673618036 673618036 585026512 252817136 155417276 155417276 2638016 422792084 534675218 534675218 880281483 880281483 630980779 630980779 41953344 30882528 29622400 131051704 326372274 860881249 860881249 1001390148 1001390148 686557014 81924767 851779734 885074075 885074075 902039716 902039716 340185300 541233348 921061773 921061773 862109794 401344538 414501702 512565628 512565628 471352938 212072010 482870436 487072962 487072962 336327690 839000512 839000512 14749715 38062224 38062224 571386764 571386764 615835864 615835864 798761009 798761009 460644000 700754173 700754173 643959358 927780027 927780027 634419072 634419072 457218264 457218264 321011748 358797738 358797738 327303378 325317042 310378626 268435458 371333128 371333128 459942709 459942709 440640130 440640130 907550896 919635789 919635789 925355906 925355906 361708650 644283752 644283752 785660086 785660086 73490184 572164232 764502588 770124925 770124925 613540425 379072190 382622968 382622968 922869819 922869819 933396899 933396899 331750136 770524460 770524460 806528745 910452866 910452866 576797979 740256476 780197704 780197704 396025978 396025978 326207922 326207922 357632016 357632016 304417372 237458380 162190692 294021832 437451450 1062483630 1062483630 573105687 279483936 279483936 149634176 149634176 120096984 113526072 146029772 259998016 259998016 122761888 67305488 67910416 108681282 108681282 914064407 914064407 884391019 941959431 941959431 830273061 686603332 1012474968 1012474968 642354827 1015693359 1015693359 969577597 56648165 156719142 443218454 443218454 732538470 732538470 849050708 849050708 170841207 589630008 589630008 916024266 931735416 931735416 543162387 539889601 356787570 104402080 181796316 181796316 131419380 377105286 754474156 754474156 650633117 581416705 592449920 918434886 918434886 368211363 115528724 398508282 462591202 462591202 312612306 312612306 277420552 348910794 348910794 746529350 778165516 966837230 966837230 608920108 773652534 773652534 516435456 516435456 599987016 599987016 1025835128 1025835128 102573535 113777800 113777800 60885168 107738384 115368424 123426112 123426112 17587248 51940656 98893152 98893152 25479264 30649152 30649152 27570208 27570208 80036928 80036928 674682109 704734225 704734225 671907852 768876668 768876668 99121212 206066713 638059545 638059545 768245813 768245813 963172260 963172260 1026820798 1026820798 969052823 939655887 340286598 476714382 476714382 224527650 612583752 612816969 675882042 898892333 898892333 647587744 605318241 604604417 269083650 269083650 605110306 984130421 984130421 531910576 531910576 403444858 260446332 854902064 854902064 330033627 271741504 144912708 671130665 671130665 223888000 739815626 739815626 478863559 305011986 1041753614 1041753614 253794178 623175969 963977655 963977655 827480582 321319362 321319362 118146152 118146152 60579560 611324809 611324809 122328336 99800040 87638568 227279464 227279464 140560088 647314310 843286803 843286803 743966230 509286428 304999698 457332768 457332768 319940068 381857576 401217018 401217018 105955992 456366718 456366718 412793050 412793050 117577764 286471276 325962256 1060583757 1060583757 637366094 637366094 627649007 698047875 698047875 519384030 462753592 863292498 863292498 989113188 989113188 786075249 786075249 764841103 912852820 1020338895 1020338895 754191309 1024442059 1024442059 252463617 679774519 925198665 925198665 673734404 410388513 838522851 838522851 669101768 591187761 274911618 274911618 453034038 977715354 977715354 309069074 309069074 103146626 103146626 51446400 828779824 828779824 573542547 572971281 302254098 302254098 119571354 337412560 337412560 358711464 358711464 232403076 232403076 223549148 184506432 234819237 234819237 226525184 226525184 540031457 610117700 610117700 515151493 428861258 342692090 856827208 856827208 722082307 58986581 285495488 331798770 549749828 549749828 247802076 247802076 220258796 96401944 96401944 101882376 126916672 134546000 177283668 211075684 211075684 192993388 188772420 265290510 265290510 162691908 162691908 509388816 509388816 96507758 249569328 249569328 210830188 210842132 210842132 139876932 378052268 564970542 564970542 270326374 290981408 964694020 964694020 830607459 566890659 355599136 355599136 677644677 677644677 995207445 995207445 868050944 723853808 443583413 419744054 419744054 200022464 4125940 276904024 369498138 803379991 803379991 509796936 948046039 948046039 825494307 914621003 914621003 857735475 731431976 731431976 665847928 679955468 679955468 477559752 477559752 407247746 411375808 411375808 398582010 398582010 393698552 393698552 332114426 281462800 118722624 106703496 106703496 88412328 90777600 90777600 45289792 284172994 284172994 44662992 106689474 650260243 650260243 516335829 1013503243 1013503243 1071045375 1071045375 748419305 547345007 322268629 322268629 282698469 333483124 333483124 412387987 718349013 898695285 898695285 476003982 239231622 507486152 507486152 181316714 164790404 34002960 192195892 192195892 194130592 204837428 773542996 773542996 261145212 938982072 938982072 465642696 792020384 894196649 894196649 299177732 301813476 301813476 165456550 200104608 200104608 51772048 51772048 18500656 33856528 33949872 33949872 14337024 650412656 650412656 602331633 665690577 665690577 585198969 67757064 667181129 667181129 688649253 738227240 738227240 940528644 940528644 487451694 943056390 1025630511 1025630511 937662947 937662947 866619440 866619440 887162347 887162347 517716178 181993168 233230844 958513152 958513152 823590004 823590004 866572112 866572112 823922211 914375608 914375608 806159872 806159872 951386564 951386564 838142950 943851052 961713452 961713452 871660640 992028953 992028953 719423878 719423878 377643570 302092330 302092330 34310272 174222856 476451212 476451212 538383278 538383278 227030252 629366997 629366997 113144528 762733017 762733017 208058804 207043212 225248420 225248420 185915824 4516864 71323200 286860322 286860322 734331090 924309638 924309638 646598358 646598358 872853531 872853531 856042054 809593972 860992073 864908446 899195621 899195621 654910521 813962478 813962478 759829677 402902218 715984190 963764803 963764803 773950243 570434348 1021525100 1021525100 901960818 1065608425 1065608425 875948194 925050237 933881211 933881211 674049285 740970439 746936008 746936008 817020546 817020546 719366045 643224544 1039323042 1039323042 608635264 613035568 613035568 542848192 600310721 600310721 598214001 132000201 55649344 558630336 558630336 554698241 554698241 550520897 118752248 670174649 670174649 122470896 128357648 128357648 668521769 668521769 122227952 622681233 622681233 255062844 255062844 84171156 138609280 138609280 281387090 281387090 580710869 582908856 647689585 701763056 732203820 732203820 538560257 696894985 838452963 954286093 954286093 886122153 402843384 79753331 38150536 606139288 606139288 556151555 807329283 807329283 283923393 174506772 404239248 706511952 818551377 818551377 169687831 136393360 775096014 775096014 911311113 945292935 945292935 876923212 876923212 894193046 894193046 87597082 782571883 782571883 1069644902 1069644902 1003473329 858445107 684670213 684670213 579722436 948023879 948023879 828629796 84444488 78136360 144119884 215226512 324819374 324819374 180016980 532261220 532261220 342133134 351043648 410409094 410409094 12583104 12583104 272010308 476630926 476630926 348164492 202040544 220692708 223319300 223319300 213068044 321186334 934528120 934528120 834617187 812425827 809685123 121789435 995966856 995966856 900264976 900264976 626656313 173033204 173033204 35020948 101834760 123637928 123637928 85098102 350925886 350925886 373884032 405540102 405540102 415492646 415492646 217995052 515985246 515985246 512770148 512770148 331465488 331465488 142622902 26264160 19009824 320598258 320598258 287900352 273683808 177841664 177841664 62018896 135819264 186791460 744197789 744197789 1060771647 1060771647 933092939 933092939 242975676 553686869 555751073 555751073 628303112 892113096 892113096 837737955 899628803 899628803 877205219 872987727 1023475979 1023475979 289691685 271090797 458958598 839761445 958596194 958596194 918939776 918939776 895444971 661145389 661145389 827089409 827089409 331066020 196293492 864654563 864654563 815862694 985432231 985432231 864593004 864593004 608354138 855502803 855502803 381636745 641982865 641982865 881400576 881400576 578933960 578933960 46505025 48157840 59430432 59430432 664127907 668712761 668712761 568765018 553648128 736905880 973621546 973621546 814745926 911247522 911247522 226826280 366291946 366291946 317326954 317326954 275651970 172050500 291541200 291541200 282220192 34272256 145558036 187559220 195855733 674547729 674547729 597000449 325532736 325532736 300160564 441999380 950610691 950610691 549222224 549222224 435325378 181393028 362828554 362828554 481526592 481526592 388577112 323676032 352490010 375050906 386568730 386568730 385935450 378393616 378849882 466669614 466669614 499599534 499599534 435103186 435103186 429251940 483037796 574834768 574834768 476250539 476250539 390339504 831687428 977518696 977518696 862042618 802600423 754969412 839680568 839680568 595071488 345770272 268959784 52691808 691047190 825804579 825804579 451877845 834527745 834527745 811254976 25773920 131077800 183900304 271091092 474891080 474891080 147111968 163842276 163842276 146388224 146388224 242993044 376553380 376553380 223748358 37174032 36750096 107252480 142739512 289417256 364485887 364485887 321598770 321598770 624843059 624843059 115496459 860647344 860647344 584860016 584860016 818774344 818774344 634000617 625421376 566544609 566544609 21688488 9963072 28969984 66135024 66135024 279333136 279333136 127734118 133179256 842208088 863052723 863052723 889393280 889393280 671666434 1021807902 1021807902 938001753 1053070708 1053070708 661664931 526721534 390081184 628697156 628697156 142944169 109500504 683776272 683776272 102803781 69470472 86034464 214211396 214211396 165435744 155417276 395824662 395824662 486958052 534675218 534675218 257357552 344861640 344861640 356516050 356516050 88081592 310398352 350594062 505278662 505278662 173329044 966031504 966031504 420678213 81924767 851779734 885074075 885074075 902039716 902039716 340185300 541233348 921061773 921061773 862109794 401344538 414501702 512565628 512565628 471352938 433694306 289509300 643948953 1063444267 1063444267 742256397 813569989 813569989 153628016 153628016 455220018 455220018 711688280 711688280 798761009 798761009 460644000 700754173 700754173 643959358 927780027 927780027 634419072 634419072 297930978 297930978 375439542 375439542 358797738 325317042 325317042 369876056 369876056 371333128 371333128 363597080 101384208 486719524 486719524 1014531758 1014531758 306319506 1045463938 1045463938 1013109135 849485955 644283752 785660086 785660086 848865808 848865808 766909293 766909293 682756917 682756917 174400200 382622968 382622968 922869819 922869819 933396899 933396899 95434098 770524460 770524460 806528745 806528745 576797979 576797979 740256476 780197704 780197704 396025978 396025978 326207922 326207922 357632016 357632016 304417372 62840688 62840688 577148620 577148620 1062483630 1062483630 781559240 470220415 387323134 387323134 478285902 478285902 333658856 333658856 259998016 259998016 122761888 24090912 24090912 108681282 108681282 914064407 914064407 884391019 941959431 941959431 830273061 1054097412 1054097412 1012474968 706963582 1015693359 1021982069 1021982069 201876569 156719142 443218454 443218454 732538470 732538470 849050708 849050708 170841207 589630008 589630008 840302865 931735416 931735416 569508098 569508098 119880041 10646097 185962425 585646741 585646741 232069497 245118929 245118929 234708576 550432076 592449920 592449920 220672511 994983853 994983853 974993451 624428022 526521322 341187210 891423970 891423970 37406547 572971281 746529350 782795853 966837230 966837230 430986691 411880681 432053768 432053768 82055296 599987016 599987016 1025835128 1025835128 102573535 87589500 261113640 261113640 107738384 107738384 40411272 15254976 65081704 123841080 123841080 118924792 36312336 36312336 94822728 98100104 258143048 258143048 100713444 674682109 674682109 230780385 750112264 750112264 727556697 583624321 119629289 39372432 39372432 42517584 287384130 287384130 243376434 864048577 1060894702 1060894702 939655887 688409101 688409101 891683968 891683968 216481856 216481856 1062686485 1062686485 898892333 759527092 596150006 596150006 1007007390 1007007390 932208912 932208912 517863070 531910576 531910576 437555008 309022097 309022097 47186304 556599680 595532641 595532641 240201448 240201448 157026476 703698786 703698786 707897729 707897729 580414337 504639568 9413134 33901584 33901584 315875686 315875686 321319362 321319362 110692904 277295298 277295298 611324809 611324809 48155608 87638568 87638568 227279464 227279464 140560088 647314310 843286803 843286803 743966230 305844298 209846690 457332768 457332768 274937856 381857576 401217018 401217018 393926586 393926586 310033074 383352232 383352232 219028524 165144648 165144648 121098288 202510860 202510860 119033204 398363960 535714684 535714684 462753592 462753592 863292498 863292498 711104186 233980415 547333554 547333554 302761567 912852820 1020338895 1020338895 754191309 1024442059 1024442059 252463617 679774519 925198665 925198665 844898049 844898049 838522851 979307545 979307545 834290033 834290033 321938746 584544422 659736703 771785227 771785227 842001683 905973784 905973784 822377729 854102483 854102483 867494545 867494545 857527299 843059361 598960721 663489345 881159690 881159690 358711464 294455818 386139258 386139258 318882360 234819237 656596848 656596848 226525184 540031457 793764230 924741903 931917655 931917655 408295234 408295234 866780398 866780398 914529403 914529403 979517848 979517848 549749828 455088443 432723174 374011336 278698624 278698624 395549310 395549310 169515102 144653892 144653892 142810628 46211280 239296720 343934556 404616266 416148678 427839654 509388816 509388816 96507758 234274464 234274464 210830188 686944829 686944829 479457870 793132315 1029051360 1029051360 688541961 688541961 964694020 964694020 877564999 952186086 952186086 696463783 677644677 677644677 995207445 995207445 868050944 806742658 443583413 971294708 971294708 170554595 199229940 432674066 432674066 369498138 71825544 509796936 509796936 790911680 825494307 914621003 914621003 857735475 595116370 409206848 281282754 281282754 34867728 217825678 278607426 407247746 411375808 411375808 28325504 29081032 94216648 94216648 36943008 617728 52270512 52270512 88412328 88412328 55829456 64792448 64792448 284172994 284172994 42476096 676162304 676162304 650260243 516335829 1013503243 1013503243 837226534 837226534 933036629 933036629 322268629 322268629 282698469 333483124 333483124 412387987 718349013 898695285 898695285 846229976 869284894 869284894 162270564 688527744 688527744 574530581 730422816 730422816 175052112 175052112 773542996 773542996 261145212 938982072 938982072 653602008 842092170 842092170 839443201 319972110 376879772 376879772 528941832 528941832 200104608 51772048 98846640 98846640 72143040 8163456 8163456 613416977 613416977 649969256 663472233 665690577 665690577 585198969 76585729 51484177 66712356 268435458 269850116 269850116 475778566 475778566 337257504 219862572 219678252 377628549 937662947 937662947 552032747 235836462 887162347 887162347 517716178 181993168 233230844 233230844 604940392 823590004 892338508 998769783 998769783 881069315 914375608 914375608 218174856 246786268 677654272 677654272 172232146 706894964 961713452 961713452 871660640 992028953 992028953 595787449 643598929 643598929 564285624 624075737 1004376869 1004376869 936168699 397049339 727224430 727224430 227030252 629366997 629366997 113144528 762733017 762733017 324586738 324586738 90734820 324423730 324423730 206202272 207090200 286860322 353666240 734331090 924309638 924309638 646598358 646598358 872853531 872853531 856042054 723207395 860992073 864908446 899195621 899195621 856426547 813962478 813962478 759829677 378157423 451751382 451751382 449594398 474481012 474481012 1021525100 1021525100 528785513 421587972 875948194 875948194 741792525 303825677 609118110 674049285 674049285 583025752 704891904 704891904 562439708 577320160 577320160 610317776 610317776 608635264 613035568 613035568 609172617 600310721 600310721 598214001 132000201 54528560 73472328 73472328 14556864 550520897 550520897 34473424 670174649 670174649 173543312 150084288 186506020 668521769 668521769 122227952 622681233 622681233 175414416 174570496 46703200 6353152 4507776 281387090 281387090 580710869 582908856 647689585 701763056 732203820 732203820 538560257 696894985 838452963 954286093 954286093 886122153 402843384 375002778 518492754 555221153 556151555 926168378 926168378 556946210 556946210 539461376 539461376 706511952 818551377 818551377 973472516 973472516 1051272411 1051272411 911311113 911311113 686043074 876923212 936911386 936911386 367003387 624967738 624967738 730140673 730140673 1003473329 1003473329 858445107 684670213 684670213 579722436 948023879 948023879 828629796 321972176 321972176 299029218 273982082 441007124 441007124 180016980 532261220 532261220 342133134 351043648 410409094 410409094 268997376 268571970 272010308 476630926 476630926 348164492 213238400 220692708 220692708 211881992 213068044 321186334 934528120 934528120 834617187 812425827 809685123 245549648 1021325004 1021325004 912085859 900264976 626656313 290665122 281489440 138627792 167821332 184604212 462349314 462349314 454828570 454828570 373884032 373884032 369172506 473492488 473492488 217995052 376572280 376572280 512770148 512770148 331465488 332460022 409839872 409839872 321962802 321962802 320598258 287900352 273683808 445853728 445853728 445752128 136360192 186791460 186791460 170053908 176895060 176895060 174065824 166651488 166651488 30640964 555751073 555751073 628303112 805432353 906002457 906002457 899727874 899727874 877205219 872987727 1023475979 1023475979 1070614820 1070614820 67158024 666337952 666337952 123354897 918939776 918939776 895444971 661145389 1009671838 1009671838 1017135411 1017135411 260096124 167895060 808617059 808617059 958542024 958542024 864593004 1027622224 1027622224 855502803 855502803 812060673 551625153 603985561 603985561 268957698 578933960 578933960 584537745 584537745 341410379 59430432 127670544 341813282 539237096 552731081 552731081 736905880 736905880 814745926 814745926 418644609 385945682 226826280 366291946 366291946 317326954 317326954 275651970 311511682 456167202 456167202 293366050 280338464 145558036 187559220 187559220 135997440 134716932 159786548 325532736 325532736 300160564 441999380 441999380 303088034 299437282 435325378 435325378 29877892 14314432 84712608 84712608 55079484 252937392 252937392 256378044 256378044 918895965 918895965 512759310 651639959 651639959 466669614 466669614 608456905 608456905 435103186 692725584 692725584 895313157 895313157 673678250 476250539 476250539 341945264 831687428 977518696 977518696 862042618 802600423 636012009 839680568 839680568 345770272 655658506 655658506 45663762 745915279 745915279 632630187 991176180 991176180 834527745 811254976 60510786 249975004 249975004 271091092 474891080 474891080 145888068 83634624 223348204 223348204 67687944 242993044 376553380 376553380 223748358 37174032 36750096 107252480 142739512 501622928 501622928 150609984 150609984 142292868 25955328 25955328 548238592 860647344 860647344 584860016 584860016 46948801 648192 290479170 345190952 345190952 290086530 23439976 23439976 28969984 217179084 217179084 954619248 954619248 931012505 931012505 842208088 863052723 863052723 1015287902 1015287902 838926458 1021807902 1021807902 938001753 1053070708 1053070708 661664931 957908535 957908535 1030491439 1030491439 855934379 896394801 896394801 683776272 606556428 558740276 547122608 796843540 796843540 275776326 275776326 395824662 418995026 486958052 486958052 404175366 700270417 700270417 582325362 570494097 626838201 626838201 310398352 350594062 505278662 505278662 1032102573 1032102573 966031504 709922873 724904757 724904757 724904757 724904757 171245601 0 17175040 17175040 92274792 92274792 84021312 31637824 31637824 472421400 472421400 433694306 433694306 289509300 906044528 1063444267 1063444267 742256397 813569989 813569989 153628016 153628016 455220018 455220018 789213577 791416125 791416125 774113520 186914212 186914212 244916240 427375576 538201730 538201730 300172128 300172128 297930978 297930978 375439542 375439542 69423104 69423104 103009280 369876056 369876056 103106640 313144325 313144325 872612984 872612984 770311584 1014531758 1014531758 306319506 1045463938 1045463938 1013109135 849485955 609629704 580585609 580585609 848865808 848865808 766909293 766909293 682756917 682756917 188193577 111149400 111149400 23126240 67447080 647813360 915778041 915778041 552748827 96210792 336928792 336928792 318336066 356345520 356345520 297902688 528532918 528532918 381395026 940643142 940643142 335740939 587471432 587471432 384846457 393398966 581735326 581735326 325321357 781559240 781559240 470220415 388118908 388118908 478285902 478285902 399247374 399247374 201643760 201643760 68557320 7575552 6279512 379865354 379865354 284477440 411250758 421703746 927091282 927091282 867444746 1054097412 1054097412 482609689 706963582 853779891 1026132472 1026132472 598613361 586421652 52486704 298159696 298159696 995927955 995927955 553960514 553960514 968327206 968327206 870139057 997151732 997151732 859056385 859056385 582240456 582240456 725633128 725633128 585646741 232069497 245118929 245118929 234708576 550432076 714672406 866779931 866779931 994983853 994983853 974993451 624428022 526521322 768085327 891423970 891423970 828981040 828981040 572971281 782795853 782795853 663214581 436169995 970917736 1052884175 1052884175 909515547 909515547 444867034 664996012 664996012 621713593 503792985 401907940 261113640 29000848 74166528 95138800 127160536 127160536 123841080 123841080 118924792 82256232 117526840 127266104 127266104 258143048 258143048 105370992 675655904 769864173 769864173 750112264 750112264 727556697 607506436 607506436 680710725 680710725 740431689 740431689 614146316 243376434 380712490 1060894702 1060894702 804968271 688409101 1026055822 1026055822 891683968 225476845 216481856 1062686485 1062686485 759527092 759527092 981403694 981403694 1007007390 1007007390 932208912 932208912 837295812 837295812 484198912 445683554 434822432 309022097 774588897 774588897 807455114 868007762 868007762 659804634 659804634 703698786 1032501184 1032501184 940102212 940102212 827917904 964812903 964812903 599623843 844031780 844031780 808470720 808470720 161252448 277295298 277295298 69933312 103499552 103499552 101957176 39465008 39465008 13172736 13172736 8913984 35166976 43966032 43966032 39771856 9847824 281053184 281053184 274937856 385164828 385164828 425815536 425815536 393926586 320891746 134875176 219028524 219028524 165144648 165144648 229717060 229717060 338566104 338566104 398363960 398363960 120348538 133085904 339739456 814212418 814212418 711104186 755665862 755665862 547333554 312979777 1044184467 1044184467 978508239 421021543 492994584 492994584 869010693 869010693 898910312 898910312 844898049 844898049 606506793 979307545 979307545 834290033 834290033 321938746 584544422 659736703 771785227 771785227 842001683 905973784 905973784 822377729 854102483 854102483 867494545 867494545 857527299 896841728 896841728 663489345 881159690 881159690 301206464 608764552 608764552 567886504 318882360 75371144 656596848 656596848 579213152 579213152 793764230 924741903 931917655 967413098 967413098 738830700 866780398 866780398 914529403 914529403 979517848 979517848 920815932 472438241 432723174 374011336 278698624 389550866 427738282 427738282 169515102 144653892 144653892 172216400 451373060 451373060 343934556 404616266 416148678 427839654 427839654 18213408 89137280 125829264 125829264 123831133 686944829 686944829 479457870 793132315 1029051360 1029051360 822949263 688541961 402938031 877564999 877564999 952186086 952186086 696463783 557715649 555695649 723880100 723880100 806742658 806742658 458247859 971294708 971294708 421792806 990271812 990271812 813571971 813571971 115410606 146345660 655308585 655308585 506717192 506717192 418219266 595116370 595116370 709886355 709886355 708837525 643825932 34867728 13697488 47069248 49093120 95502056 95502056 189951732 189951732 189044624 189044624 88618624 52270512 52270512 42062720 55829456 55829456 64792448 64792448 102040898 345563226 346575946 709023552 709023552 212567955 536928768 536928768 69244553 135001536 632556564 933036629 933036629 543293468 782254273 782254273 537055233 887677046 887677046 81838464 81838464 927503400 927503400 869284894 869284894 475888540 888960889 888960889 863617552 829249191 807994532 807994532 922352884 922352884 699007284 113613048 633397266 1013769533 1013769533 842092170 842092170 839443201 648627645 785517708 785517708 784740509 780212248 165891152 40342632 98846640 98846640 72143040 50600336 290877995 621487017 621487017 649969256 663472233 663472233 653109600 619401168 619401168 322089147 893587496 893587496 637733800 243162272 660480 447488 789504 269113344 269113344 51402530 86727984 103033112 219140360 235016220 235016220 108937486 134918144 134918144 342811958 342811958 451256416 451256416 892338508 998769783 998769783 881069315 1053336572 1053336572 668565487 53937413 677654272 677654272 148965185 638138710 879891339 879891339 3611224 336732738 336732738 898277116 898277116 643598929 564285624 624075737 1004376869 1004376869 936168699 397049339 727224430 727224430 22856096 22856096 22730400 19815136 19815136 149604544 324586738 324586738 205523072 324423730 324423730 206202272 207090200 207090200 353666240 965578653 965578653 851828415 649582425 649582425 705619662 910235668 910235668 307571346 307571346 536879138 644154402 856426547 856426547 1023150070 1023150070 434450370 434450370 287859970 287859970 407740686 407740686 373791238 985492678 985492678 1070119762 1070119762 757121325 289277968 876495698 876495698 531219326 266523132 976266344 976266344 775026108 829154024 829154024 747749643 747749643 610317776 610317776 44089680 607942352 609172617 609172617 563259072 563259072 551969185 582039857 582039857 599205328 599205328 551027905 553388288 553388288 30589440 31251856 173543312 173543312 159381152 186506020 186506020 138937476 138937476 138329348 138329348 174570496 174570496 29813280 147061440 147259588 147259588 53854564 46525648 191996276 191996276 194857804 223955472 223955472 269339418 342387992 342387992 151629152 440471190 440471190 269140028 375002778 518492754 895427746 895427746 926168378 926168378 578905114 556946210 539461376 539461376 272658816 6849280 539105686 973472516 973472516 1051272411 1051272411 315916992 315916992 137676822 347144456 936911386 936911386 367003387 1009255320 1009255320 555794721 646448070 646448070 444335860 983697234 983697234 706816128 706816128 816778561 942308677 942308677 545366020 321972176 299029218 273982082 441007124 441007124 58219626 2671872 2757888 138036932 148412164 148412164 268997376 268997376 268571970 208641860 208641860 204522252 213238400 213238400 236467072 236467072 139600832 182462016 182462016 649319004 649319004 252765528 252765528 245549648 245549648 1021325004 1021325004 912085859 609677553 290665122 290665122 281489440 580657184 580657184 848276621 848276621 881869383 881869383 679912972 370216502 409878918 409878918 473492488 473492488 422375716 422375716 376572280 360163680 348412172 269533332 394553522 462778096 462778096 446271030 437029380 437029380 37520400 65297104 445853728 445853728 445752128 167983524 167983524 135848704 2281728 2545920 174065824 174065824 176330884 176330884 88134764 68426240 76086080 83605832 298313160 906002457 906002457 899727874 899727874 843639202 819233747 819233747 951504711 1070614820 1070614820 252582972 666337952 666337952 478211570 597115385 917803547 917803547 358876445 1009671838 1009671838 1017135411 1017135411 403192640 415186758 808617059 808617059 958542024 958542024 360869402 1027622224 1027622224 973600791 973600791 812060673 551625153 603985561 603985561 544887313 576766360 594597521 647157417 647157417 541114497 864651848 864651848 863073563 863073563 552159499 552159499 599118270 989179352 989179352 855458374 1018533202 1018533202 444739922 171288256 362302208 390539434 527485490 527485490 311511682 456167202 456167202 293366050 280338464 25766592 25993856 135997440 135997440 134716932 1868288 1868288 1068544 1068544 15315680 28299296 28299296 28852576 299423458 299423458 26977856 337582344 362452194 362452194 494649600 494649600 531255660 631391600 1063813522 1063813522 918895965 598349169 651639959 651639959 76181576 365536271 608456905 608456905 299840771 692725584 692725584 895313157 895313157 673678250 357555360 357555360 127068222 382211172 382211172 109224696 179911424 179911424 813774684 813774684 604376931 839126130 847513683 847513683 304614666 745915279 745915279 632630187 991176180 991176180 351600296 351600296 60510786 249975004 249975004 174773652 174773652 77973960 83634624 83634624 223348204 223348204 105695376 170833808 489115020 489115020 220637712 314659044 314659044 474238124 474238124 501622928 501622928 464867399 464867399 274073872 664169507 664169507 548238592 633789417 633789417 364963530 883751497 883751497 623837793 623837793 618136712 810463305 810463305 347071466 360310346 360310346 620909864 891305999 954619248 954619248 931012505 931012505 784088985 784088985 796531048 1015287902 1015287902 838926458 432279488 1045700040 1045700040 379584090 379584090 146555649 957908535 957908535 1030491439 1030491439 855934379 896394801 896394801 606556428 606556428 558740276 547122608 796843540 796843540 275776326 275776326 192574532 418995026 418995026 274694836 404175366 700270417 700270417 582325362 570494097 626838201 626838201 203341605 232927520 232927520 213983436 1032102573 1032102573 709922873 709922873 724904757 756581097 756581097 724904757 258525389 484368078 484368078 852940954 852940954 983819624 983819624 389773594 310427834 310427730 195199554 195199554 139945976 289812768 906044528 906044528 763008745 763008745 141348228 141348228 946177036 1007106063 1007106063 745990175 789213577 791416125 791416125 774113520 516507248 205698422 893129408 893129408 562925663 189040693 175638420 238294972 240012428 252723892 252723892 240032816 237162696 24252416 372254080 372254080 11922240 11922240 313144325 313144325 872612984 981578814 981578814 281227458 608391828 979164755 979164755 437262619 368860989 609629704 609629704 580585609 580585609 524685436 524685436 236361950 377911856 636946878 636946878 188193577 99802624 44328200 23126240 346272544 647813360 915778041 915778041 552748827 96210792 96210792 318336066 318336066 406848518 406848518 298369256 528532918 528532918 381395026 940643142 940643142 605238138 587471432 587471432 560931474 486786223 946374789 946374789 748559949 966354955 966354955 777604610 777604610 535767052 442180510 554977727 554977727 399247374 821740795 821740795 68557320 3559432 2281728 379865354 379865354 648059165 873699503 873699503 927091282 927091282 867444746 867444746 511771395 726952448 726952448 782516894 1026132472 1026132472 598613361 586421652 269009922 422937078 422937078 995927955 995927955 681056352 681056352 968327206 968327206 870139057 997151732 997151732 859056385 859056385 582240456 582240456 725633128 725633128 27296880 59261280 726119024 726119024 177964240 46691924 744762512 866779931 866779931 480844901 134426628 349244304 472132582 472132582 768085327 768085327 737988105 828981040 828981040 343764616 866395760 866395760 809316099 436169995 970917736 1052884175 1052884175 909515547 909515547 444867034 664996012 664996012 621713593 503792985 401907940 127927576 934022523 934022523 382236787 576553851 576553851 119167691 119156920 848763402 870719033 893389056 893389056 646870624 646870624 589676264 105370992 675655904 769864173 769864173 109328821 713219961 713219961 716344385 716344385 680710725 680710725 740431689 740431689 614146316 448792086 448792086 922374107 922374107 977979327 977979327 1026055822 1026055822 796149439 369164304 805905264 805905264 707603766 690237055 690237055 1037604315 1065534065 1065534065 794460162 806286538 806286538 837295812 837295812 445683554 445683554 434822432 162129252 774588897 774588897 807455114 868007762 868007762 659804634 659804634 567415265 1032501184 1032501184 940102212 940102212 827917904 964812903 964812903 599623843 844031780 844031780 808470720 808470720 161252448 161252448 34499080 103027976 103499552 103499552 101957176 39465008 212897544 212897544 168114584 168114584 377901842 485367246 485367246 104011608 143266884 246234324 246234324 208350558 385164828 385164828 425815536 425815536 320891746 320891746 189682742 189682742 303972136 303972136 277687362 277687362 229717060 338566104 338566104 296147298 296147298 104110200 347226346 362119626 814212418 814212418 113271827 755665862 755665862 507760846 507760846 1044184467 1044184467 978508239 421021543 492994584 492994584 1006633221 1006633221 620365484 620365484 585106400 492832096 337170764 535507388 581860884 765337197 765337197 179121492 538767320 538767320 370372620 721572424 721572424 92278833 83886120 807605056 807605056 873493236 1032983151 1032983151 206883468 896841728 896841728 677939272 677939272 654710841 69824320 608764552 608764552 567886504 139546520 75371144 540542721 568065745 629314216 633820161 633820161 1065684226 1065684226 967413098 967413098 809853803 552463809 696834504 696834504 42078288 690372676 920815932 920815932 472438241 365560092 487901742 487901742 468001186 468001186 457667726 457667726 169030366 68891148 344997312 451373060 506321400 506321400 283624074 283624074 282419242 462859334 475318926 475318926 445266144 205792952 189801052 202375692 202375692 67109380 87776522 824249704 828906187 828906187 418206825 218181026 365054124 365054124 291553698 404783268 404783268 272634114 24810112 830566560 830566560 824610851 324307601 458247859 458247859 421792806 421792806 990271812 990271812 813571971 813571971 512299106 512299106 655308585 655308585 219210184 412151104 418219266 833379729 1019910409 1019910409 709886355 920650459 920650459 1019871430 1019871430 774576831 898958705 898958705 736565761 550439044 189951732 189044624 189044624 88618624 68282400 7384584 29633792 29633792 27612544 39127936 39127936 102040898 345563226 346575946 709023552 709023552 689561701 536928768 536928768 483144650 894366890 894366890 829859940 873451264 543293468 782254273 782254273 849980520 887677046 887677046 81838464 81838464 927503400 927503400 419658230 419658230 475888540 888960889 888960889 863617552 829249191 807994532 1060920432 1060920432 922352884 699007284 117440568 633397266 1013769533 1013769533 760080421 760080421 745850356 923535902 923535902 1048582348 1048582348 780212248 817657818 817657818 618566560 618566560 604362866 849179666 849179666 621487017 621487017 380509530 385937416 653109600 653109600 619401168 619401168 322089147 893587496 893587496 637733800 402901610 429945786 429945786 171476044 415553732 415553732 383403036 86727984 319050816 319050816 529147676 529147676 421228054 140324484 140324484 370302600 370302600 301861028 301861028 825928856 825928856 927791581 927791581 1053336572 1053336572 668565487 611582976 671884744 671884744 148965185 648274551 879891339 879891339 866518510 448415024 448415024 898277116 898277116 510575715 635859848 635859848 813813988 964948071 964948071 430002535 695895138 695895138 20434849 18206592 5292672 5246976 6427008 6719616 6719616 205523072 210088296 210088296 131228512 131228512 50632904 89948296 482739328 965578653 965578653 851828415 649582425 649582425 705619662 910235668 910235668 307571346 307571346 181732815 644154402 644154402 493355326 1023150070 1023150070 693382545 960769824 960769824 270017969 320883104 320883104 393839174 393839174 874973067 1070119762 1070119762 757121325 289277968 876495698 876495698 945565106 945565106 976266344 976266344 775026108 829154024 829154024 747749643 747749643 609470144 609470144 606676233 606150921 604689417 604689417 568128329 563259072 551969185 582039857 582039857 599205328 599205328 551027905 553388288 569711489 569711489 568689441 568689441 154303620 159381152 159381152 555250305 555250305 257277324 594912049 594912049 381177930 407652512 407652512 182893812 489034252 489034252 429371622 206456558 375577234 490604170 490604170 403887160 174014414 269339418 342387992 342387992 600408969 1009263911 1009263911 339018472 350611914 350611914 895427746 895427746 618475209 618475209 578905114 372899859 283308930 283308930 272658816 10327040 30091808 173776000 279388883 342672523 342672523 660490251 660490251 137676822 408519106 408519106 337972554 337972554 1009255320 1009255320 440929445 671089414 671089414 444335860 983697234 983697234 706816128 810589190 816778561 942308677 942308677 780165169 523432372 295688806 953285058 978885904 978885904 515949278 515949278 489291326 481743118 480288644 480288644 407282050 143247364 8504768 277588096 405502854 405502854 403431556 144752964 236467072 236467072 134293076 182462016 182462016 649319004 677473845 677473845 144321088 182983088 182983088 972817524 972817524 562464647 562464647 34079760 34079760 58794096 580657184 580657184 848276621 848276621 881869383 881869383 679912972 292130712 409878918 409878918 232333014 416615616 422375716 422375716 417471658 493657192 493657192 396961180 396961180 462778096 462778096 446271030 437029380 437029380 185578752 58798994 10386194 4961648 158343600 167983524 167983524 181961940 181961940 167124772 196791024 196791024 294388914 294388914 309856288 316146464 316146464 293763762 298313160 298313160 285708322 9469952 809763548 809763548 819233747 819233747 951504711 951504711 523163160 377561118 648937829 648937829 478211570 597115385 917803547 917803547 558243386 354594073 338278162 338278162 102751398 403192640 415186758 546845184 546845184 420562720 588502376 634558451 647571033 647571033 973600791 973600791 914719131 914719131 609122832 609122832 639188609 642389145 642389145 647157417 647157417 541114497 864651848 864651848 863073563 863073563 552159499 552159499 599118270 989179352 989179352 855458374 1018533202 1018533202 444739922 171288256 362302208 390539434 527485490 527485490 240327638 226701420 745672143 745672143 270347778 872702745 872702745 173720724 343527431 642500765 673998151 919287003 919287003 484247377 580765760 580765760 571481412 28852576 299423458 299423458 27453792 337582344 362452194 362452194 494649600 494649600 531255660 631391600 1063813522 1063813522 598349169 598349169 75679033 42078320 76181576 281020576 293865570 293865570 280019778 282125120 282125120 13705920 691520010 691520010 580121492 1057446480 1057446480 382211172 382211172 1021360164 1021360164 229662731 813774684 813774684 604376931 839126130 847513683 847513683 304614666 304614666 326108066 343672472 343672472 294914576 294914576 279748192 35276128 86409448 86409448 15762112 77973960 77973960 72458896 116690440 116690440 105695376 206999684 206999684 489115020 489115020 220637712 314659044 442898826 474238124 474238124 483150974 483150974 480511378 480511378 274073872 664169507 664169507 82518440 90258888 364963530 364963530 883751497 883751497 623837793 623837793 865969360 865969360 810463305 347071466 360310346 360310346 620909864 891305999 891305999 682623051 537530656 290335840 290335840 106629248 796531048 796531048 750989517 1059324234 1059324234 1045700040 1045700040 601716405 1016622448 1016622448 561536250 7728000 24429312 24429312 106091160 106091160 102648960 72090296 88812320 88812320 218318116 218318116 57996832 134250500 134250500 46324832 42591312 274694836 274694836 151488406 68066440 837393088 837393088 1054434646 1054434646 993439721 993439721 531542057 470292612 714120736 714120736 234931016 896684762 896684762 697568545 756581097 756581097 799674697 799674697 484368078 484368078 852940954 852940954 983819624 983819624 389773594 310427834 310427730 195199554 214160108 495642116 495642116 537017330 624962048 763008745 763008745 243060636 1008012508 1008012508 1007106063 1007106063 776472789 673384161 669555769 87033452 516507248 516507248 205698422 893129408 893129408 655428289 401944568 563714327 563714327 492488132 492488132 678466320 993677890 993677890 943198476 823907339 625488514 203632136 203632136 234662200 234662200 722083910 981578814 981578814 512182480 608391828 979164755 979164755 437262619 368860989 991303273 991303273 1057564812 1057564812 942150926 942150926 919577366 540767956 826987812 826987812 99802624 99802624 297864282 350581792 350581792 346272544 307142448 307142448 76548384 76548384 61217136 41686752 12144584 486513164 486513164 362415146 469795334 469795334 416047456 416047456 605238138 605238138 233056700 560931474 560931474 956995108 956995108 946374789 748559949 966354955 966354955 777604610 777604610 535767052 442180510 554977727 554977727 155867642 821740795 821740795 8200704 8200704 4362312 346056840 346056840 648059165 873699503 873699503 496136810 322245360 327562070 370647320 370647320 726952448 726952448 705163529 253997273 201375756 201375756 67666948 269009922 422937078 422937078 725600055 725600055 681056352 681056352 283914658 578516672 583082193 869335474 869335474 818096531 848982592 848982592 559016337 241117101 578690961 578690961 250051933 726119024 726119024 657365720 789103225 789103225 744762512 640172224 930881721 930881721 880935306 880935306 510474194 773904964 786876565 786876565 863804304 863804304 395674947 866395760 866395760 809316099 516013408 579829122 1036550186 1036550186 847562829 617878726 413270726 147862980 514937068 514937068 387060282 319995912 265381872 934022523 934022523 382236787 576553851 576553851 119167691 119156920 848763402 870719033 893389056 893389056 646870624 646870624 589676264 39490604 188454160 188454160 137622276 69243240 713219961 713219961 716344385 716344385 112830808 178905872 239249304 536974837 536974837 533459364 533459364 922374107 922374107 977979327 977979327 684770517 684770517 339873930 398639646 966263060 966263060 707603766 690237055 690237055 1037604315 1065534065 1065534065 794460162 806286538 828375040 828375040 135666180 135666180 776754256 776754256 59415609 654725232 654725232 58890297 13243584 373462484 732468186 732468186 557319969 29901952 806400960 806400960 744023169 908134680 908134680 650405126 29573906 690490720 690490720 545724451 545724451 1001634498 1001634498 280308049 150334404 143010136 639372568 639372568 604151361 604151361 577902656 168114584 168114584 377901842 485367246 485367246 104011608 143266884 143266884 409610516 451168722 451168722 201564110 348422622 348422622 113351404 139652260 191878832 452483044 452483044 303972136 277687362 409081580 409081580 349049865 834405963 834405963 714739571 604643266 476978574 362119626 596277538 810346003 862234300 862234300 786512327 1031057259 1031057259 877217113 877217113 362363072 362363072 306657434 426773414 1006633221 1006633221 620365484 620365484 585106400 739267261 751059609 1043648349 1043648349 999912732 577674932 934221992 934221992 872984297 146853585 210059480 271377424 271377424 270797058 857356912 857356912 873493236 1032983151 1032983151 206883468 206883468 641558593 677939272 677939272 654710841 749023628 749023628 208176384 139546520 139546520 117041112 89222608 34982560 780687244 794758437 794758437 1065684226 1065684226 869590437 809853803 809853803 350232896 350232896 109403594 42078288 690372676 734285912 734285912 528910513 527220806 487901742 487901742 468001186 468001186 457667726 457667726 404539906 404539906 419833772 501647620 506321400 506321400 283624074 283624074 282419242 462859334 505204254 505204254 445266144 205792952 239143141 591608019 591608019 388311346 958795797 958795797 828906187 828906187 688297985 688297985 873212069 873212069 608124681 608124681 815375970 815375970 416485491 849350791 849350791 824610851 677450064 426801798 426801798 134254884 182636544 182636544 209852740 209852740 421803026 512299106 534283332 534283332 512939344 512939344 163620302 192709418 833379729 1019910409 1019910409 745834048 920650459 920650459 1019871430 1019871430 774576831 898958705 898958705 736565761 550439044 504964638 504964638 341513258 371380746 371380746 358354602 375890634 375890634 294499642 460014886 460014886 318935346 206944702 17892352 905739522 905739522 689561701 488451630 483144650 483144650 894366890 894366890 892208286 728111541 560075804 707321956 707321956 860494243 860494243 673975557 694420641 694420641 536911872 811700385 944141485 944141485 653077977 520166598 963383552 963383552 154554496 173298564 1060920432 1060920432 237109332 237109332 333715904 333715904 332769914 107992362 563382344 563382344 68174449 923535902 923535902 1048582348 1048582348 683090561 817657818 817657818 618566560 618566560 604362866 861935792 861935792 291003059 264192 262144 100671526 671416446 679741509 964292515 964292515 246786920 192987252 287436934 737445705 737445705 616389344 693153040 693153040 415553732 673585517 997113781 997113781 539966834 319050816 529147676 529147676 421228054 140324484 140324484 370302600 370302600 283395430 272633890 913516744 913516744 927791581 927791581 726653981 547576083 611582976 887597791 887597791 887521280 887521280 885256395 829559715 866518510 866518510 448415024 448415024 571761367 571761367 383446732 635859848 812753458 813813988 964948071 964948071 430002535 695895138 695895138 93202665 88080552 88080552 89525224 89525224 137106592 137106592 95504640 210088296 210088296 131228512 131228512 123139608 51144240 482739328 482739328 159495602 568129106 597980667 597980667 406050353 311178768 480130574 480130574 269619714 636098643 636098643 637514367 637514367 1040238109 1040238109 1027139610 960769824 960769824 952371399 952371399 677752784 677752784 393839174 314320094 328690788 328690788 324885652 441565824 856097792 856097792 945565106 945565106 704663760 704663760 162186720 281658784 281658784 720467487 720467487 981054084 981054084 606676233 606150921 612375377 612375377 568128329 67317768 130091088 130091088 591796512 591796512 68909576 38710352 34359488 579402560 579402560 568689441 568689441 142034080 21543812 155931168 555250305 555250305 257277324 594912049 594912049 381177930 407652512 407652512 268607364 489034252 489034252 429371622 206456558 375577234 490604170 490604170 403887160 393141690 350412000 320348806 320348806 600408969 1009263911 1009263911 339018472 350611914 350611914 806600449 806600449 618475209 618475209 551172104 116957264 5243520 35856784 35856784 33826048 63731152 63731152 307104514 342672523 342672523 660490251 660490251 38011520 408519106 539330900 539330900 337972554 268435456 423626916 423626916 671089414 671089414 166075296 965876582 965876582 682888005 810589190 810589190 687270855 780165169 780165169 523432372 686192208 953285058 978885904 978885904 515949278 515949278 489291326 481743118 480288644 480288644 407282050 148417540 148713156 277588096 405502854 405502854 403431556 144752964 144752964 136499460 136499460 134254848 15877956 686953428 686953428 677473845 571364480 674927429 674927429 972817524 972817524 562464647 843325348 843325348 583008465 56309424 701105352 777594525 777594525 470319665 315466362 311501010 311501010 292130712 360146858 360146858 232333014 416615616 416615616 268646564 417471658 493657192 493657192 396961180 396961180 100705634 176715184 176715184 466614722 466614722 449400870 449400870 448605250 448605250 442000580 160800852 143919684 181961940 181961940 167124772 285233666 285233666 294388914 294388914 309856288 316146464 316146464 293763762 293763762 956766439 956766439 588517412 939528790 939528790 381294682 1008256527 1008256527 754929231 754929231 377561118 517042548 812837668 827714211 827714211 171757332 558243386 558243386 221698860 221698860 843094039 843094039 138860676 43959760 946980833 946980833 352338992 588502376 634558451 647571033 647571033 1050107658 1050107658 914719131 914719131 814465352 609122832 639188609 642389145 654451712 655045689 655045689 50706457 44410592 394796378 394796378 318754808 366541104 366541104 311907584 282642114 282642114 282101442 330839104 414783042 414783042 136765696 123371904 123371904 161868332 495660386 495660386 270798848 745672143 745672143 270347778 872702745 872702745 173720724 343527431 642500765 673998151 919287003 919287003 579462225 580765760 580765760 571481412 36114944 29298176 10723680 27453792 27453792 18983264 12248928 157852852 178831364 258883818 558271672 558271672 1068201298 1068201298 979711273 415523464 415523464 228434048 293933191 702218245 702218245 418908102 983918416 983918416 820459891 820459891 691520010 580121492 1057446480 1057446480 762116017 979204788 1021360164 1021360164 353266489 780799296 780799296 591642770 591642770 722607329 722607329 567837376 567837376 73941808 39076832 55888560 55888560 45353808 45353808 66566704 66566704 62204368 34297936 34297936 63563528 72458896 116690440 116690440 39964120 206999684 206999684 411091376 411091376 56672326 262457408 442898826 442898826 70042304 341100050 341100050 480511378 480511378 139087296 15153600 30225440 82518440 546198272 565706625 565706625 18328161 29359968 122676864 122676864 865969360 865969360 117573219 115466952 132763752 132763752 553780884 727324341 727324341 718406693 537530656 217580565 587144491 715992177 715992177 523239944 974523774 1059324234 1059324234 1058485462 617757757 601716405 1016622448 1016622448 561536250 169869748 182053287 598305763 598305763 455598631 446689621 684548352 684548352 685843200 685843200 676878721 958833828 958833828 902560560 651210137 610029424 398087258 293804128 311041848 628755465 837393088 837393088 1054434646 1054434646 993439721 993439721 531542057 470292612 714120736 714120736 183585603 896684762 896684762 571212929 688919308 688919308 799674697 799674697 310388816 268773378 219740864 223644280 223644280 96050242 281153730 688544834 1029347468 1029347468 905348896 905348896 495642116 537017330 611443593 746376973 746376973 604665229 1008012508 1008012508 681707776 776472789 776472789 540366589 635612624 635612624 303677628 384344212 384344212 456147798 1073479907 1073479907 401944568 563714327 563714327 492488132 492488132 678466320 993677890 993677890 943198476 823907339 625488514 203632136 392638508 459258934 459258934 339234108 464201128 464201128 512182480 512182480 336200968 441715944 441715944 532064322 991303273 991303273 1057564812 1057564812 942150926 942150926 919577366 540767956 826987812 826987812 76267546 95988528 376440745 617688123 617688123 300295219 292336610 292336610 726049092 726049092 886523689 886523689 915630674 915630674 579960904 714137974 714137974 338021594 416047456 416047456 295722286 1030425616 1030425616 940448775 940448775 956995108 956995108 1013596672 1014683535 1014683535 708523797 708523797 168964100 168964100 430610382 430610382 41972768 67108872 349585218 349585218 355662472 355662472 335544330 346056840 346056840 268456004 273913894 496136810 541319289 599994609 599994609 868625015 868625015 550699589 646140551 646140551 456831373 201375756 722445924 722445924 212600108 192958276 192958276 18907680 18907680 3146496 1048832 0 77826 268570626 869335474 869335474 818096531 848982592 848982592 560380032 588514048 588514048 578690961 250051933 236616189 657365720 657365720 789103225 789103225 640172224 640172224 930881721 930881721 880935306 880935306 510474194 773904964 786876565 786876565 863804304 863804304 395674947 371725466 52314618 61885782 550522208 579829122 579829122 502683950 617878726 617878726 270600205 147862980 423561220 423561220 175544564 265381872 265381872 35768320 49152 49152 21500000 21500000 30149856 822674032 822674032 632759363 548276800 627249840 627249840 244794632 244794632 207217380 207217380 188454160 152319104 651303780 651303780 773238792 773238792 573308944 103354136 204374080 239249304 427364434 427364434 533459364 533459364 589466176 589466176 831182976 835456227 835456227 674239108 339873930 398639646 966263060 966263060 466356934 533217949 686835336 686835336 969122458 969122458 501441279 501167562 828375040 828375040 954209799 954209799 818525384 818525384 514725918 1051085587 1051085587 1056498686 1056498686 928783754 885127348 732468186 615584832 423222786 780266096 874535215 874535215 908134680 908134680 685221687 696184197 820141762 820141762 993794982 993794982 1001634498 1001634498 817753923 817753923 806355459 806355459 639372568 604151361 604151361 577902656 248696988 242666268 248233924 248233924 203410396 474785866 474785866 268974038 409610516 451168722 451168722 181218516 281448576 281448576 38847120 139652260 191878832 452483044 452483044 280618818 270686212 409081580 409081580 415372226 834405963 834405963 714739571 604643266 808745280 808745280 596277538 810346003 862234300 862234300 786512327 1031057259 1031057259 877217113 877217113 362363072 362363072 214044876 214044876 790764068 790764068 183765981 228724973 767693164 767693164 751059609 1043648349 1043648349 999912732 677363104 934221992 934221992 872984297 609575688 804040280 804040280 281635968 810082546 857356912 857356912 586699265 791402029 791402029 870201431 963347556 963347556 641558593 224400825 224400825 755815628 755815628 793887740 793887740 117041112 117041112 631492753 631492753 780687244 794758437 794758437 760522225 954871054 954871054 772121084 772121084 858062193 858062193 338465059 476189070 489166262 734285912 734285912 528910513 527220806 342809994 342809994 250429512 277390378 306759732 306759732 404539906 404539906 419833772 501647620 501647620 120675508 340682260 340682260 247570666 411828846 505204254 505204254 324119724 169355340 239143141 591608019 591608019 388311346 958795797 958795797 483056992 160748812 688297985 688297985 873212069 873212069 608124681 608124681 815375970 815375970 492929298 849350791 849350791 816087040 816105795 816105795 671374707 587341157 577638869 577638869 569248870 713047205 973551682 973551682 534283332 534283332 512939344 512939344 163620302 192709418 235837016 235837016 206230668 745834048 745834048 100663304 71827478 474481806 474481806 485305798 485305798 303958710 490420966 504964638 504964638 341513258 371380746 371380746 358354602 375890634 375890634 422171756 460014886 460014886 371520798 455386104 455386104 905739522 905739522 488451630 671767068 671767068 292832184 174246938 892208286 892208286 728111541 560075804 560075804 704643093 860494243 860494243 673975557 694420641 694420641 403252447 811700385 944141485 944141485 653077977 971772213 971772213 963383552 659476542 973111732 973111732 871767027 871767027 544614056 445581456 445581456 332769914 107992362 563382344 563382344 68174449 739772957 739772957 771758222 771758222 654575772 17868932 601016898 601016898 278395251 323052192 861935792 861935792 908999963 908999963 881689852 963185083 963185083 702644611 964292515 964292515 640994115 1065192960 1065192960 737445705 737445705 616389344 693153040 693153040 537002384 673585517 997113781 997113781 539966834 268484610 303693824 436559988 436559988 406314258 281056454 410262912 410262912 185864192 142070544 913516744 913516744 415633458 423626774 423626774 439844998 976064847 1017277719 1017277719 887521280 887521280 885256395 829559715 829559715 846598904 846598904 192156216 240140476 240140476 153536396 650120622 812753458 812753458 670958941 867172979 1035078118 1035078118 613226656 204801888 556923833 556923833 105802512 713294825 713294825 157492260 122087572 78397960 146157884 146157884 179812516 179812516 152379472 557030498 557030498 159495602 568129106 597980667 789975560 789975560 522802235 522802235 759705328 759705328 853804137 853804137 637514367 637514367 1040238109 1040238109 1027139610 654641084 719271999 952371399 952371399 677752784 677752784 276289034 123209380 198181620 324885652 324885652 441565824 724948742 1022896153 1022896153 805651362 805651362 584211970 554456068 584456913 743753175 1038794852 1038794852 981054084 981054084 110596992 110596992 612375377 612375377 16912392 10694976 65870224 65870224 591796512 591796512 38710352 38710352 34359488 579402560 579402560 540281601 142034080 142034080 136832036 22071040 22071040 158990372 237273512 455901680 508110124 508110124 152093220 53222464 268607364 268607364 141760262 3205632 140662612 317900952 489868170 489868170 393141690 393141690 350412000 105377936 105377936 159581452 168567912 221064756 221064756 94388236 210820672 213782544 213782544 116684504 116684504 116957264 116957264 630833321 648192089 648192089 803815597 803815597 781440100 715192052 966388583 966388583 707177173 273991889 440698899 836010164 836010164 852830743 852830743 314991670 755159070 756453889 756453889 948457744 998557815 998557815 965876582 682888005 417119815 676731525 965281510 965281510 957100067 2504000 686192208 686192208 143500544 272783616 272783616 41096836 168422996 168422996 176070608 176070608 179442516 179442516 148713156 148713156 136396800 14754240 137826112 137826112 136929604 136499460 136499460 134254848 35295360 686953428 686953428 147986272 571364480 674927429 674927429 672798213 17619493 117233726 843325348 843325348 583008465 798492285 798492285 777594525 777594525 646107304 881326315 937287194 937287194 323310698 292994000 41570560 41570560 33554448 58983824 189010256 243404052 243404052 455396760 455396760 172755058 351611626 470897202 470897202 466614722 466614722 449400870 449400870 448605250 448605250 442000580 160800852 143919684 23070688 8149440 63587872 285233666 285233666 269647906 269647906 30672224 173115604 173115604 147140308 147140308 956766439 956766439 588517412 1045452224 1045452224 727892255 1008256527 1008256527 1021506399 1021506399 1047841695 1047841695 812837668 827714211 827714211 614601004 107037840 925167020 925167020 206247087 843094039 843094039 508727350 344524924 946980833 946980833 314984976 171905632 381698640 381698640 613075220 1050107658 1050107658 544383584 814465352 814465352 375778770 806070539 806070539 654451712 655045689 655045689 571455504 669235657 835130866 835130866 121903080 361717182 361717182 315539066 315539066 387003232 423633750 423633750 414783042 482636970 482636970 226620882 462083190 462083190 495660386 495660386 733541115 733541115 659569021 659569021 647571033 196413869 147739652 147739652 9751104 581752624 581752624 553832481 579462225 579462225 55735472 55735472 36114944 29298176 13195968 8028032 12328384 12328384 10098240 157852852 178831364 193496480 193496480 413407319 1068201298 1068201298 979711273 856163379 415523464 310642883 293933191 702218245 702218245 418908102 983918416 983918416 820459891 820459891 588152048 401344912 483676903 626788271 762116017 979204788 984961354 984961354 353266489 780799296 780799296 466082032 466082032 722607329 722607329 567837376 567837376 59786400 59786400 3145984 51548592 51548592 36067840 66566704 66566704 62204368 162059652 162059652 31248096 72458896 251989052 251989052 39964120 14700552 197296712 411091376 411091376 226644876 119826460 123105888 368177404 368177404 144019850 32542664 275253252 275253252 136627970 31796448 31796448 30225440 546198272 565706625 897356170 897356170 290352522 290352522 270689034 658084576 856704202 856704202 380159322 380159322 80863704 553780884 727324341 740897844 740897844 600384513 389492809 587144491 715992177 715992177 523239944 974523774 985086807 1058485462 1058485462 594547672 149491731 413638916 413638916 295224276 450383026 450383026 598305763 598305763 455598631 603988480 715531801 715531801 685843200 685843200 676878721 958833828 958833828 902560560 651210137 610029424 398087258 293804128 311041848 628755465 628755465 323483384 1010481336 1010481336 669403232 799180150 799180150 644010393 398862920 398862920 153193157 919033256 929963451 929963451 556569984 633524457 1037549697 1037549697 801424535 769255149 219740864 223644280 223644280 96050242 281153730 688544834 1029347468 1029347468 905348896 905348896 337168973 271073802 611443593 746376973 746376973 604665229 604665229 681707776 681707776 212212496 540366589 540366589 635612624 635612624 303677628 384344212 384344212 456147798 1073479907 1073479907 287840448 276963328 276963328 223879560 173159044 173089428 101022780 633786082 633786082 426837638 426837638 571399968 743680008 743680008 774951448 774951448 641884520 641884520 591491316 1054218975 1054218975 441715944 520444620 532064322 532064322 471988494 152858922 352998708 517179522 517179522 431660204 431660204 394153898 385227738 221013266 228682756 376440745 648055800 648055800 359587963 290588561 626366896 726049092 726049092 886523689 886523689 915630674 915630674 579960904 714137974 714137974 318072512 318072512 774746449 955238871 1030425616 1030425616 940448775 940448775 606243334 828377133 1013596672 1014683535 1014683535 876372398 609247265 609247265 369697818 283879168 1010357875 1010357875 335025400 593281993 593281993 355662472 355662472 345675850 338848908 338848908 82670555 104648472 217416925 541319289 599994609 599994609 868625015 868625015 550699589 646140551 646140551 456831373 427311940 722445924 722445924 392711676 192958276 438747290 1042559427 1042559427 758583378 758583378 334810098 545735010 545735010 814554499 814554499 683283461 683283461 592665249 560380032 588514048 588514048 237225984 237225984 19069984 184312128 184312128 136743828 43355200 172496528 172496528 388052208 388052208 340397760 494272838 494272838 1054218975 1054218975 929380531 929380531 670881640 710336032 710336032 691809973 913080389 913080389 550522208 424991784 502683950 502683950 467288106 303748626 303748626 423561220 423561220 381653512 279193232 110081922 903613563 903613563 334496403 581893851 581893851 131733240 886517320 886517320 987308712 987308712 979307640 643115672 730137324 730137324 207217380 748959469 748959469 697377381 694301669 651303780 773238792 773238792 773906716 773906716 204374080 746590469 746590469 236635348 379720026 379720026 1010327860 1010327860 831182976 835456227 1004144174 1004144174 167937709 310689800 344246346 902355963 902355963 654346554 654346554 479364124 969122458 969122458 554689762 1072119719 1072119719 405724422 984649874 984649874 818525384 818525384 514725918 1051085587 1051085587 1056498686 1056498686 928783754 885127348 791418528 791418528 423222786 675618840 874535215 874535215 848244883 685221687 942590064 942590064 1032047705 1032047705 1009000500 1009000500 942369064 942369064 817753923 817753923 806355459 806355459 338825730 343020426 405965776 405965776 248696988 242666268 248233924 248233924 203410396 474785866 474785866 418451474 446741460 447007062 447007062 319046630 273678978 467022064 467022064 446506066 446506066 279444288 280618818 280618818 273826064 309379730 319954300 415372226 419565606 419565606 315042520 212261196 949230376 949230376 670162240 670162240 579652689 91381753 72475272 94510440 94510440 212617436 212617436 235485704 235485704 214044876 214044876 790764068 790764068 102897672 228724973 767693164 767693164 768920090 1057351743 1057351743 677363104 677363104 370378370 370378370 609575688 609575688 914638962 914638962 584670608 912303793 912303793 882650569 882650569 791402029 791402029 870201431 963347556 963347556 757804437 757804437 256921605 755815628 755815628 793887740 793887740 162391392 61993121 631492753 631492753 95470184 774604557 774604557 295971718 1009983704 1033508463 1033508463 711133264 858062193 858062193 338465059 960640014 960640014 614723993 607736921 506775333 401524212 342809994 342809994 304992514 277390378 306759732 370232650 370232650 238890780 171119904 481883956 481883956 451544398 451544398 340682260 263523360 233688008 234672108 234672108 213484960 169355340 134229248 108070624 369970650 369970650 335864576 483056992 483056992 160748812 201690278 201690278 86774828 203562148 203562148 227404836 276914218 276914218 492929298 849487204 940179731 940179731 816105795 816105795 671374707 587341157 577638869 577638869 569248870 713047205 973551682 973551682 93300796 143201992 240699036 240699036 193636966 259126317 963347297 963347297 701836005 853079783 988157188 988157188 811343620 811343620 941668663 941668663 734216389 677515653 551555140 16777344 16777344 16777216 16777216 32 406053232 406053232 218158738 422171756 422171756 258082704 371520798 455386104 455386104 763420954 763420954 371855397 671767068 671767068 1011091599 1011091599 594410144 884337483 947914643 858662232 858662232 684720788 684720788 315298658 274889270 328327879 328327879 321994067 10699216 407249676 407249676 343358346 971772213 971772213 659476542 659476542 973111732 973111732 871767027 871767027 856259651 897200939 897200939 124790633 654982161 654982161 615552417 766275417 766275417 739772957 792092894 792092894 787786047 1023672502 1023672502 781632238 814830406 814830406 237124006 318815513 908999963 908999963 881689852 963185083 963185083 872794427 813288599 813288599 640994115 1065192960 1065192960 1061733422 552863188 552863188 728269192 728269192 537002384 532336706 532336706 300682576 300682576 268484610 268484610 442913268 442913268 406314258 285572868 462683584 462683584 466790032 466790032 742950392 742950392 415633458 423626774 423626774 715141184 976064847 1017277719 1017277719 787295709 339289866 814965601 814965601 737226580 846598904 846598904 320788296 291604616 293988450 293988450 650120622 650120622 447748624 670958941 867172979 1035078118 1035078118 454761028 204801888 556923833 556923833 105802512 713294825 713294825 157492260 122087572 78397960 146157884 146157884 179812516 179812516 152379472 557030498 817579560 882691659 882691659 818421441 789975560 789975560 522802235 522802235 759705328 759705328 853804137 853804137 163176710 476220164 476220164 411177030 411177030 411046916 473957512 473957512 403178502 377504864 419458190 419458190 278643908 302699538 302699538 329722914 441521586 441521586 1022896153 1022896153 805651362 805651362 584211970 554456068 584456913 743753175 1038794852 1038794852 605028864 605028864 110596992 110596992 102966208 102966208 15806744 10694976 65870224 65870224 35405936 578329440 578329440 28723089 136810629 542557456 720110785 720110785 681014272 673796228 559292545 559292545 225173429 158990372 237273512 237273512 508110124 508110124 473270504 197920064 197920064 423936424 498502318 498502318 140662612 317900952 489868170 489868170 204001074 157659696 157659696 44466024 212953632 212953632 168567912 221064756 221064756 94388236 79218504 71600784 581338113 581338113 548194321 112921664 67876193 630833321 648192089 648192089 803815597 803815597 781440100 715192052 966388583 966388583 707177173 273991889 440698899 836010164 836010164 852830743 852830743 495720752 755159070 992632646 1027530543 1027530543 998557815 998557815 935175025 666246009 949545027 949545027 965281510 965281510 957100067 408918662 553476676 677535425 677535425 545774212 35262528 14834628 168422996 168422996 176070608 176070608 179442516 179442516 150274304 136396800 136396800 18084128 148940036 148940036 145887568 168990484 168990484 177919508 177919508 43516164 708499345 708499345 582228052 582228052 733591173 733591173 376839066 843471766 917799117 917799117 531696133 798492285 798492285 34297496 646107304 646107304 881326315 937287194 937287194 401232130 355151802 139340618 41570560 411580544 411580544 189010256 243404052 243404052 455396760 455396760 394840356 351611626 470897202 470897202 497907742 497907742 352675684 352675684 315303232 228731196 228731196 112862328 231558272 231558272 173561876 181425348 181425348 171623808 35651856 33293168 30672224 173115604 173115604 416454882 416454882 282130100 43462146 151617072 1045452224 1045452224 727892255 999085330 999085330 1021506399 1021506399 1047841695 1047841695 310413505 685836254 685836254 614601004 421244928 925167020 925167020 706396778 1011830954 1011830954 508727350 344524924 499196142 499196142 618998208 618998208 606341385 555756321 229712748 652390488 652390488 544383584 661906393 661906393 375778770 806070539 806070539 380834704 116208920 571455504 571455504 669235657 835130866 835130866 42340816 361717182 361717182 315539066 372901556 387003232 423633750 423633750 225180956 482636970 482636970 226620882 462083190 462083190 449568476 449568476 733541115 733541115 659569021 659569021 647571033 304170182 147739652 349465927 740869389 740869389 504940062 936513568 936513568 732062933 598316065 572674340 560735489 560735489 13195968 561274977 561274977 12328384 21625844 710947137 710947137 250975694 974046345 974046345 672013317 944583857 944583857 856163379 310642883 310642883 84814880 97707016 253610960 253610960 62653680 62653680 20775072 53480288 53480288 277628992 407667778 407667778 166216358 166074080 276307908 419356614 419356614 52195590 38776048 38006928 37801120 37801120 30992464 63772224 66602384 66602384 59786400 62914800 62914800 51548592 36067840 37748880 51878528 51878528 169991584 283928706 323296736 424537254 424537254 371521982 451896274 451896274 323897002 506090846 506090846 518026504 518026504 447813682 447813682 420896792 343459722 343459722 342885120 342885120 136627970 31796448 31796448 607703816 828921217 828921217 897356170 897356170 290352522 290352522 270689034 658084576 856704202 856704202 380159322 380159322 37933200 488658618 488658618 740897844 740897844 600384513 543457332 1032994885 1032994885 929437855 269884032 943797056 955388871 955388871 474489152 485041614 485041614 453078118 453078118 460868402 460868402 450383026 388253142 202689036 245169676 603988480 715531801 715531801 731235714 731235714 360350383 382046760 382046760 258073020 303056656 303056656 278398976 276971600 67163146 69915912 295032010 323483384 1010481336 1010481336 416087624 799180150 799180150 644010393 529692486 398862920 557156360 919033256 929963451 929963451 662798336 633524457 1037549697 1037549697 801424535 769255149 61432269 86003040 86003040 30245192 0 0 67108864 67108872 67108872 268697600 268699650 276889986 283453890 283453890 279252368 408710914 408710914 478350232 478350232 348237960 369384270 478540720 478540720 103966786 259310244 259310244 141035796 167920268 402917382 591407323 591407323 805395311 805395311 439250764 439250764 597946576 897684218 897684218 611800388 758659840 758659840 571399968 743680008 743680008 774951448 774951448 641884520 641884520 591491316 1054218975 1054218975 747862742 520444620 520444620 471988494 471988494 344006730 344006730 483856462 483856462 431660204 431660204 394153898 385227738 221013266 228682756 288488078 648055800 648055800 359587963 287374226 626366896 626366896 54937769 4801280 4801280 12119560 12119560 68191304 68191304 59819392 66586608 281035604 774746449 955238871 955238871 919170454 216507730 325702866 365614240 828377133 828377133 464833398 876372398 876372398 609247265 609247265 369697818 283879168 1010357875 1010357875 335025400 593281993 593281993 347277706 347756874 347756874 272580354 97727840 18719072 18719072 32763104 32763104 29749408 12780160 12780160 9511488 25165920 47795264 415780034 415780034 427311940 472156542 472156542 392711676 287394884 438747290 1042559427 1042559427 758583378 758583378 334810098 545735010 545735010 814554499 814554499 683283461 683283461 551289968 160893200 189933548 235541532 237225984 237225984 206094476 161406564 260346448 260346448 193468936 185350772 172496528 376449108 412291366 412291366 494272838 494272838 1054218975 1054218975 929380531 929380531 633376966 710336032 710336032 691809973 913080389 913080389 101803869 252563280 252563280 386682206 424842406 424842406 303748626 117234104 381653512 381653512 279193232 458369119 903613563 903613563 334496403 581893851 594478041 594478041 886517320 1000998457 1000998457 987308712 979307640 865736089 730137324 730137324 78643708 748959469 748959469 697377381 694301669 56140405 663006049 732274944 773906716 773906716 69356612 749666909 749666909 641299797 641299797 616040265 1010327860 1010327860 156770754 60294768 1004144174 1004144174 167937709 748814736 748814736 902355963 902355963 961829626 961829626 479364124 1044347677 1044347677 554689762 1072119719 1072119719 405724422 984649874 984649874 786193816 786193816 828849750 850213290 850213290 687807053 687807053 484827425 167157375 791418528 791418528 53010961 14047680 197039580 915140457 915140457 515197979 942590064 942590064 1032047705 1032047705 1009000500 1009000500 942369064 942369064 548455233 844590299 844590299 719830092 719830092 552649665 783686100 783686100 179587612 179587612 137489104 140583300 149984000 149984000 146985156 418451474 446741460 447007062 447007062 319046630 273678978 467022064 467022064 446506066 446506066 168110096 439199104 439522834 439522834 309379730 464874432 464874432 683806917 956768499 996667814 996667814 949230376 949230376 670162240 670162240 690949028 690949028 474930318 991145491 991145491 824847817 824847817 149365968 149365968 194386548 194386548 187707972 206833812 237316380 237316380 227783084 227783084 768920090 1057351743 1057351743 1017539400 740520455 807457098 812682247 812682247 413942981 914638962 983996288 1055131087 1055131087 912303793 882650569 882650569 761332413 761332413 1019748383 1057400285 1057400285 857989538 757804437 256921605 677937476 677937476 659679392 659679392 162391392 102630000 102630000 88223776 95470184 679489088 679489088 125362320 1009983704 1033508463 1033508463 711133264 711133264 279023738 952140926 960640014 960640014 614723993 607736921 506775333 321116440 229120648 304992514 304992514 245695690 201453784 370232650 370232650 238890780 224659884 481883956 481883956 451544398 451544398 263523360 263523360 445852498 465973462 465973462 429669412 144441444 134229248 77273938 369970650 369970650 335864576 335864576 6814080 414263936 414263936 494419210 494419210 489035428 145107980 227404836 227404836 551625793 551625793 849487204 940179731 940179731 819996818 696399943 696399943 452987205 448659716 448659716 432971346 289499266 289499266 424312228 424312228 137013716 172016640 203982020 203982020 259126317 963347297 963347297 701836005 853079783 988157188 988157188 811343620 811343620 941668663 941668663 734216389 677515653 551555140 325396530 302063794 363071946 363071946 396851818 406053232 406053232 218158738 167763048 365493924 365493924 258082704 107701704 390849896 763420954 763420954 533885606 505671966 354463796 1011091599 1011091599 594410144 884337483 947914643 858662232 858662232 236555510 315298658 315298658 1002560080 1002560080 820995696 820995696 603332514 222100974 222100974 1010118519 1010118519 429497506 429497506 424201234 425103412 425103412 319212212 806149879 856259651 897200939 897200939 124790633 654982161 716882653 723074781 935594894 935594894 708956356 792092894 792092894 787786047 1023672502 1023672502 781632238 814830406 814830406 520110304 237124006 304417042 539328802 823111955 823111955 872794427 872794427 376514078 376514078 166504588 322217686 1061733422 1061733422 790413917 669778924 728269192 728269192 543516629 658471476 784334685 784334685 740750076 208640110 411403328 442913268 442913268 46185030 285572868 462683584 462683584 466790032 466790032 742950392 742950392 387990683 899747990 899747990 911480982 911480982 741770069 787295709 787295709 614591185 916715536 916715536 883165515 201714005 539142156 539142156 291604616 293988450 293988450 549795244 549795244 449250643 447748624 128452250 335753064 454761028 454761028 151373352 771057188 771057188 79587520 79587520 127216248 239099904 239198364 239198364 40900096 40900096 675808389 739775265 739775265 561518088 817579560 882691659 882691659 818421441 622193765 595642784 595642784 588456325 588456325 635397073 635397073 1015030328 1022069782 1022069782 506514731 605603337 605603337 459413168 1057114288 1057114288 1027846841 1027846841 885600164 419458190 348663150 460071040 460071040 329722914 441521586 441521586 110110088 110110088 406685764 406685764 207090946 205385484 137496328 495159742 1042067769 1042067769 414377544 607299563 933171560 933171560 612245385 833488418 833488418 348020297 851099931 1005374049 1005374049 578329440 836253202 836253202 157791124 574754961 720110785 720110785 681014272 673796228 559292545 577810088 577810088 426300963 172662956 220839564 220839564 473270504 473270504 432661734 197920064 423936424 498502318 498502318 113902168 113902168 143312892 380354888 460680418 460680418 368195348 275772642 275772642 354496436 354496436 310192404 258009240 382027980 382027980 372410690 581338113 581338113 592190728 592190728 417014303 958154786 958154786 949226055 823771510 823771510 463529507 16777216 16777248 16777248 8677600 58761220 164629040 164629040 119014404 387469016 387469016 495720752 514463070 992632646 1027530543 1027530543 924985391 935175025 935175025 645972552 949545027 978960979 978960979 731068128 434645987 414518594 553476676 710445521 710445521 582994372 35963200 35963200 12303888 37002368 39458448 148198416 186015844 186015844 167833760 167833760 139774596 139774596 148940036 163019424 163019424 168990484 168990484 177919508 177919508 43516164 708499345 708499345 582228052 582228052 733591173 733591173 376839066 843471766 917799117 917799117 531696133 699474789 699474789 49017176 373428378 373428378 362072778 362072778 401232130 401232130 453323104 453323104 272907382 411580544 411580544 315496082 439258204 472384782 472384782 394840356 394840356 297292904 534779494 534779494 497907742 497907742 405705244 405705244 333486240 224143340 224143340 112862328 231558272 231558272 173561876 181425348 422725286 422725286 201098064 201098064 173673456 303169970 303169970 416454882 416454882 282130100 134283264 151617072 734594100 734594100 787142109 999085330 999085330 973229213 532238755 4243584 306225280 306258066 685836254 685836254 288711909 421244928 421244928 706396778 706396778 1011830954 1011830954 663673977 1011282203 1011282203 770438637 618998208 618998208 606341385 555756321 229712748 505481554 505481554 283452130 283452130 280397536 280397536 35690224 33216480 36744912 79238368 84884520 84884520 59330912 59330912 20258064 20187936 85459160 85459160 113247784 372901556 372901556 109056258 103826512 144474748 401869932 401869932 53381330 17041440 17041440 245551452 245551452 613288064 644373913 644373913 637669401 637669401 304170182 141664576 349465927 740869389 740869389 504940062 936513568 936513568 732062933 598316065 572674340 560735489 560735489 3880704 561274977 561274977 94059328 94059328 710947137 710947137 458662486 974046345 974046345 433506983 922821172 922821172 918885460 918885460 67317768 84814880 84814880 140068864 140068864 50932096 50932096 272959826 272959826 53480288 329305302 407667778 407667778 166216358 411250758 411250758 436693824 436693824 315075796 315075796 334873936 334873936 156520752 156520752 63772224 66602384 66602384 41943200 62914800 62914800 36495824 7340928 2097408 304089281 304089281 383996910 955342345 955342345 424537254 424537254 371521982 451896274 451896274 323897002 811090535 811090535 724775914 749303948 749303948 475283544 420896792 343459722 343459722 342885120 342885120 274066050 538186019 538186019 607703816 828921217 828921217 823992995 823674282 823674282 874571305 874571305 807456906 303068160 303068160 35690242 33756800 39397008 45228144 45228144 264779128 264779128 331559056 543457332 1032994885 1032994885 929437855 827994054 943797056 955388871 955388871 474489152 485041614 485041614 453078118 453078118 460868402 460868402 388253142 941362695 941362695 446320103 1014617445 1014617445 856175648 856175648 731235714 360350383 791241183 791241183 679604477 979919056 979919056 320103290 320103290 621987394 621987394 564407576 564407576 100798488 109973528 109973528 223321838 270396930 529692486 529692486 387060282 557156360 557156360 399099128 662798336 697410336 697410336 414650699 220376943 355282218 517868872 517868872 551101632 671876516 671876516 486836482 740573228 740573228 688685350 892879466 892879466 336598661 717890966 717890966 869368021 869368021 941412023 1017670098 1017670098 348237960 382042112 382042112 478540720 478540720 638733657 638733657 66203778 425862566 425862566 402917382 873240371 873240371 835171818 893994866 893994866 615244921 597946576 897684218 897684218 611800388 758659840 758659840 591206148 591206148 430706022 534635416 534635416 136463920 51982724 238377624 238377624 747862742 747862742 519812327 389517626 372270024 319600402 344006730 344006730 483856462 483856462 411107508 411107508 65472628 128495824 128495824 120188608 314761833 475521826 475521826 448938154 326165059 570663106 672385813 672385813 879812377 989744989 989744989 840280754 915804194 991256926 991256926 365777322 365777322 481072366 481072366 457195944 457195944 277349516 325702866 365614240 365614240 464833398 464833398 753445916 753445916 546408541 140244612 149505172 217776584 234889676 337364232 337364232 314109970 314109970 346785536 347756874 424147662 424147662 432178933 432178933 364929321 223615673 618911817 618911817 744825689 744825689 707004693 529861234 600646090 600646090 447761759 845227366 845227366 246203184 260885628 340312652 653411490 823325580 823325580 981938706 981938706 931498849 884771169 884771169 598687089 541638368 71546128 71546128 6431392 260129064 260129064 167907348 167907348 206094476 206094476 161406564 260346448 260346448 193468936 185350772 143778372 163945604 412291366 412291366 222044172 222044172 243979356 627036404 746846657 746846657 64008573 62151920 62151920 318767058 1004270022 1004270022 415084941 252563280 252563280 386682206 424842406 797721700 797721700 776081565 118030336 175113108 222866670 513280044 625477177 625477177 305339651 305339651 594478041 594478041 481627949 1000998457 1000998457 946803681 946803681 865736089 244240316 244240316 86512548 150268908 150268908 664391588 717016917 717016917 198824073 73550640 40969104 676152024 700431505 749666909 749666909 641299797 641299797 616040265 545784584 378734644 436855998 436855998 135168 67239936 67244040 748814736 748814736 717226197 691563226 961829626 961829626 271267074 1044347677 1044347677 203436079 136995864 302570800 302570800 722160136 790625853 790625853 552494376 936514830 936514830 850213290 687807053 687807053 644720642 644720642 642376857 602777129 352185619 65597816 277758978 915140457 915140457 891744910 875173131 455737689 420309898 420309898 639841368 639841368 416179214 416179214 1017809540 1017809540 844590299 719830092 917953499 917953499 975276164 975276164 179587612 247219380 247219380 100663320 199409872 253890876 253890876 234182820 201105476 201105476 168069956 177547860 177547860 438364218 534899134 534899134 408183354 408183354 517300808 517300808 462664410 340896150 464874432 464874432 683806917 956768499 996667814 996667814 353440266 274482664 94115594 369851354 690949028 690949028 474930318 991145491 991145491 824847817 824847817 149365968 151345468 923150730 923150730 692074505 742799757 742799757 780997585 780997585 609748617 560664353 579919548 1017539400 1017539400 740520455 807457098 812682247 812682247 265030908 265030908 983996288 1055131087 1055131087 1038239910 1038239910 1019141967 300628164 878524982 1019748383 1057400285 1057400285 857989538 678035504 55627816 55627816 7913984 129026944 129026944 98143432 102630000 102630000 58234216 63066416 679489088 679489088 538976295 664448598 664448598 438793033 436810505 109871380 279023738 952140926 952140926 532240480 57407166 31498464 31498464 27315520 229120648 229120648 211997004 179442520 506582608 506582608 448317270 448317270 224659884 259260944 259260944 257166012 257163264 13968576 13968576 445852498 465973462 465973462 429669412 170763572 18443536 157829057 171399892 362120038 362120038 280234864 693996489 693996489 414263936 494419210 494419210 489035428 277721250 230831268 359130970 551625793 899319543 899319543 279975030 819996818 819996818 696399943 724148821 724148821 672178964 672178964 432971346 289499266 289499266 424312228 424312228 137013716 172016640 203982020 203982020 157418152 158895552 203949324 203949324 226123912 226123912 119043864 119043864 756590092 784800141 784800141 242814785 192342912 325396530 325396530 302063794 363071946 363071946 462686460 462686460 337063974 240392326 167763048 365493924 504905816 504905816 330896378 166356778 90575308 671129949 671129949 505671966 774705697 774705697 592151988 465825854 465825854 588686000 560109913 560109913 570425361 570425361 417449285 1002560080 1002560080 820995696 1044964587 1044964587 305136472 291373142 1010118519 1010118519 471082888 471082888 424201234 425103412 425103412 319820001 338707213 338707213 583049232 583049232 369098875 669516264 716882653 723074781 935594894 935594894 708956356 708956356 464693397 408439340 408439340 263320070 97624256 200258262 520110304 520110304 119660976 56746296 137130432 191334772 191334772 153881892 23253408 254186136 254186136 134089380 182569240 226241820 790413917 790413917 750885632 750885632 155837864 543516629 658471476 784334685 784334685 740750076 294378720 411403328 411403328 403565574 37748880 39068176 134285952 140017680 140017680 51589680 51589680 820403552 820403552 899747990 899747990 911480982 911480982 748996941 748996941 750030914 750030914 1041347589 1041347589 883165515 201714005 574331394 574331394 473792347 205039232 256951366 907809383 907809383 664413799 664413799 639174932 335753064 335753064 270799232 208639712 771057188 771057188 580176117 785462688 785462688 239099904 239198364 261698464 785986784 785986784 675808389 739775265 739775265 561518088 884018338 884018338 826392608 826392608 155188844 595642784 715251550 803586143 990304311 990304311 787945943 1015030328 1022069782 1022069782 506514731 605603337 605603337 459413168 1057114288 1057114288 1027846841 1027846841 885600164 348663150 348663150 460071040 460071040 270278160 434845158 434845158 110110088 110110088 406685764 406685764 207090946 205385484 137496328 495159742 1042067769 1042067769 414377544 607299563 933171560 933171560 831929539 833488418 833488418 814192977 851099931 1005374049 1005374049 643833460 836253202 836253202 941686032 974076951 974076951 706816000 737859573 737859573 424790419 577810088 577810088 426300963 257365284 1027759031 1027759031 472971048 521216574 521216574 471250444 252599324 275700237 666292195 666292195 585273005 552095892 380354888 460680418 460680418 514886494 514886494 275772642 377823891 544474235 1011419919 1011419919 772868270 382027980 372410690 362976980 434668844 592190728 592190728 417014303 958154786 958154786 949226055 823771510 831242511 831242511 1063327000 1063327000 780599965 780599965 700848165 696357600 696357600 119014404 387469016 387469016 480121824 614092840 813702927 813702927 363744337 344504844 891617082 891617082 645972552 371050521 978960979 1060931290 1060931290 383274815 414518594 552681300 710445521 710445521 582994372 135988800 148583124 148583124 37002368 39458448 148198416 186015844 186015844 167833760 167833760 139774596 139774596 36512896 163019424 163019424 10350144 45123328 179832656 179832656 39458448 39458448 41337776 136218000 136218000 63175568 74846482 1032186234 1038457551 1038457551 878171048 878171048 136552904 136552904 206635244 206635244 289531704 376965018 382657672 382657672 397422320 453323104 482583092 482583092 282988592 474961478 474961478 439258204 482740234 482740234 335037602 335037602 312525138 534779494 534779494 373082210 373082210 405705244 405705244 333486240 129837360 50670176 17055512 40588160 40588160 35251728 7517584 422725286 422725286 201098064 201098064 173673456 417471684 417471684 292214178 252949820 1039464318 1048654089 1048654089 734594100 734594100 787142109 787142109 973229213 973229213 655398002 655398002 705200641 882364018 1047094551 1047094551 813280833 346181632 346181632 456813686 480216843 788943008 788943008 663673977 1011282203 1011282203 770438637 831037564 1040835615 1040835615 766592103 747768896 850017410 850017410 822424355 822424355 282533954 348193480 348193480 362413184 362413184 64288672 132180840 132180840 82148744 272943514 272943514 101111832 318498150 318498150 386617778 449468506 449468506 237798972 237798972 144474748 432669020 432669020 245372134 17041440 17041440 245551452 249172545 249172545 174593117 608178320 637669401 637669401 617744987 199364944 58720368 61343088 582245360 585815505 585815505 574657008 59680024 130571016 130571016 103753992 77514304 77514304 160050340 160050340 166474912 166474912 72474592 458662486 458662486 1034184056 1034184056 1005448499 1055004785 1055004785 918885460 918885460 912728448 820447530 820447530 587272048 587272048 571222673 571222673 551815617 272959826 25731296 329305302 329305302 151078052 423191332 423191332 411250758 436693824 436693824 315075796 315075796 334873936 334873936 156520752 156520752 52499936 52499936 22118912 25176128 25176128 36495824 41741328 58500240 58500240 304089281 304089281 383996910 955342345 955342345 533519604 533519604 237377820 237377820 15790620 537718892 811090535 811090535 724775914 749303948 749303948 475283544 166512116 42081952 299124737 299124737 274066050 274066050 538186019 823427072 823427072 812779392 812779392 554398120 823674282 823674282 874571305 874571305 807456906 286116528 320009472 320009472 333457352 333457352 393741610 393741610 435754954 435754954 420164646 635835203 635835203 391590882 827994054 827994054 581700837 412492439 437593888 742464295 748683936 748683936 736770374 642151387 576197374 313066548 325371829 941362695 941362695 747801616 1014617445 1014617445 856175648 856175648 727745072 567805668 791241183 1048649756 1048649756 979919056 1043639071 1043639071 320103290 909164826 957380116 957380116 866715925 866715925 406605583 445645398 953601874 953601874 821696451 586588595 560852385 122473656 126392368 399099128 399099128 697410336 697410336 546762828 484181284 484181284 517868872 764939372 764939372 671876516 671876516 486836482 740573228 740573228 688685350 892879466 892879466 677256837 717890966 717890966 869368021 869368021 941412023 1017670098 1017670098 384117210 384117210 419674180 419674180 113334456 638733657 638733657 340918842 425862566 425862566 365253554 873240371 873240371 835171818 893994866 893994866 615244921 127942912 340574964 533125374 533125374 473337768 473337768 591206148 704643381 704643381 705959432 705959432 664301900 743565768 793133656 1037135931 1037135931 889461538 328675876 291903906 387586946 387586946 319600402 275276528 275276528 118230166 235406000 235406000 65472628 179386512 179386512 142080900 314761833 314761833 448938154 448938154 326165059 570663106 672385813 672385813 879812377 989744989 989744989 840280754 915804194 991256926 991256926 365777322 365777322 481072366 507021424 507021424 457195944 277349516 211813604 346034176 517604864 517604864 485103054 236529180 236529180 139009536 139934340 139934340 203288076 203288076 337364232 337364232 348803744 362333802 362333802 229252356 424147662 424147662 432178933 432178933 364929321 223615673 618911817 618911817 860043587 860043587 831730275 847315039 847315039 600646090 447761759 845227366 845227366 172499032 239690892 340312652 653411490 823325580 823325580 981938706 981938706 931498849 884771169 884771169 598687089 557052329 640695884 640695884 86161456 260129064 260129064 231438576 231438576 76562076 122832968 122832968 176167632 176167632 79699636 60603496 60603496 127012920 127012920 68955338 500632270 500632270 932260445 932260445 934968741 934968741 852722300 713487554 713487554 426318279 1004270022 1004270022 838878545 945493346 945493346 565375808 424708066 797721700 797721700 776081565 210104400 768976752 768976752 939326304 939326304 933679138 454336208 454336208 189495440 567156784 797565097 1051498041 1051498041 984093959 246286111 210109772 93248772 93248772 214965389 634557281 634557281 664391588 717016917 717016917 198824073 73550640 40969104 676152024 700431505 700431505 596708393 236032581 505013790 505013790 378734644 772939889 1021662071 1021662071 845056171 225582774 342958986 827859598 946737175 946737175 910188329 910738619 910738619 906544155 853095045 853095045 729656035 708709053 708709053 443682141 722160136 790625853 790625853 980426516 980426516 936514830 875223697 875223697 472964363 644720642 644720642 642376857 602777129 352185619 906251018 906251018 815089875 891744910 891744910 875173131 455737689 301834600 551551425 639841368 671307215 671307215 416179214 1017809540 1017809540 477969631 675857458 994050231 994050231 975276164 975276164 308443398 308443398 325198928 325198928 323348658 253890876 447439764 447439764 429789764 201105476 222841256 222841256 177547860 438364218 1009020199 1009020199 408183354 408183354 517300808 1037308126 1037308126 885047789 908172464 908172464 1031137876 1031137876 871625219 871625219 808907265 277246058 271322624 369851354 381286280 638307330 638307330 895876379 895876379 743907773 639246720 639246720 405558708 923150730 923150730 692074505 866718769 866718769 780997585 780997585 609748617 764581277 933292854 933292854 1009577805 1009577805 950922567 789135487 544473857 988023255 988023255 675306029 652321065 652321065 1038239910 1038239910 1019141967 998834513 998834513 954609099 954609099 878645251 864499827 678035504 694796800 694796800 7913984 166824460 166824460 202662884 202662884 97682416 58234216 63066416 111214608 538976295 750258176 750258176 822122919 822122919 460250114 460250114 414933246 414933246 779945252 779945252 281715161 683747458 825737824 825737824 219973132 431849484 431849484 411776070 506582608 506582608 448317270 448317270 248530420 237849188 257166012 257166012 257163264 475601024 475601024 433956352 192702804 192702804 170781972 170763572 21500800 157829057 157829057 362120038 362120038 280234864 693996489 693996489 390337112 777313981 777313981 784864628 784864628 726331645 910294635 910294635 979666226 979666226 279975030 579600565 579600565 154378512 724148821 724148821 672178964 672178964 34605056 43021952 55414352 176826688 176826688 178592884 178592884 166500308 226531938 335808522 430771946 430771946 484844240 484844240 202547488 202547488 35961404 135809544 262247212 262247212 221204348 202325004 192342912 174125088 126343620 111955632 270620824 462686460 462686460 444689352 458866766 458866766 203138600 504905816 524350518 524350518 268515968 268515968 671129949 671129949 316000656 774705697 774705697 592750644 592750644 465825854 776198144 560109913 560109913 570425361 570425361 417449285 862529938 862529938 592036166 1044964587 1044964587 305136472 291373142 672554585 672554585 471082888 471082888 557969586 557969586 319820001 319820001 338707213 724379940 724379940 583049232 369098875 669516264 1044499502 1044499502 418925836 418925836 291776852 546404592 546404592 158351976 158351976 773151852 773151852 266203692 422831100 422831100 155525772 18874656 137130432 191334772 191334772 153881892 23253408 254186136 254186136 134089380 161874180 790244544 790244544 737222909 750885632 750885632 218252840 218252840 101845612 31198944 31198944 470292838 470292838 276398596 451622358 451622358 41689488 333521988 333521988 140017680 177940274 429003366 964145410 964145410 820403552 725880896 874513054 874513054 784703877 748996941 748996941 750030914 750030914 1041347589 1041347589 746741864 765718893 847288623 847288623 473792347 328762556 484071148 907809383 907809383 664413799 664413799 639174932 277873409 300630536 300630536 208639712 767661400 767661400 580176117 785462688 785462688 358625370 114917554 376456048 935995122 935995122 347825417 37467008 561088587 749306317 884018338 884018338 826392608 826392608 674024601 674024601 829205806 829205806 990304311 1060009030 1060009030 1027716297 161819885 153767936 340036172 494927950 494927950 416165386 420821260 515857818 515857818 509963908 509963908 147098102 138477824 36244788 272942352 272942352 302125074 302125074 39367072 90645920 90645920 81203376 81203376 64200280 68469280 244855924 264864972 526541158 526541158 348651762 445624013 689393688 831929539 831929539 304635952 814192977 814192977 67108930 699798561 699798561 599785713 599785713 941686032 974076951 974076951 939734018 737859573 737859573 424790419 133744568 133744568 68189184 257365284 1027759031 1027759031 472971048 521216574 521216574 471250444 252599324 275700237 666292195 668518416 668518416 607312745 315026966 226334232 317916216 514886494 599210808 841294169 841294169 544474235 1011419919 1011419919 772868270 671351483 595929575 595929575 400943146 422429698 422429698 873840836 873840836 741331304 809042836 809042836 831242511 831242511 1063327000 1063327000 780599965 780599965 700848165 696357600 696357600 133500464 416441068 416441068 138860676 614092840 813702927 813702927 363744337 344504844 891617082 891617082 558386489 526716056 526716056 1060931290 1060931290 383274815 205834380 136139782 136139782 450759894 450759894 306191952 282992322 271715456 451273732 451273732 436648038 447775094 447775094 327589954 327589954 319427680 1313280 19056896 19056896 20058912 20058912 51471152 188762648 188762648 84149124 42186752 127702368 127702368 105154888 56767904 347072804 1032186234 1038457551 1038457551 878171048 878171048 136552904 136552904 206635244 498748846 498748846 376965018 382657672 382657672 397422320 397422320 482583092 482583092 201909952 474961478 474961478 420350986 482740234 482740234 335037602 335037602 312525138 465599698 465599698 253290102 273332986 273332986 110053456 95268904 146094084 146094084 106303648 238613216 238613216 183547476 183547476 149045892 198259648 198259648 152575328 152575328 417471684 417471684 466804258 466804258 1039464318 1048654089 1048654089 634657145 857807498 857807498 823232317 299521378 560124489 655398002 655398002 705200641 882364018 1047094551 1047094551 1044246523 1044246523 110930823 456813686 480216843 788943008 788943008 270288466 311987714 311987714 446243094 1067557244 1067557244 1040835615 766592103 747768896 850017410 850017410 822424355 822424355 282533954 348193480 348193480 362413184 650934442 650934442 582578354 614622218 614622218 626405761 915869627 915869627 569828593 629401802 629401802 625001294 625001294 536625486 536625486 246973396 432669020 432669020 490249498 490249498 446978116 446978116 404767100 457311396 457311396 331890730 306448524 617744987 617744987 199364944 58720368 61343088 582245360 585815505 585815505 546472928 25131520 25131520 23169536 771627713 771627713 206850696 680665925 680665925 166474912 166474912 603924293 603924293 126692472 1034184056 1034184056 1005448499 1055004785 1055004785 855711795 912728448 912728448 820447530 820447530 587272048 587272048 863384864 863384864 590176752 590176752 573833888 23737600 23737600 151078052 423191332 423191332 281149796 441220944 441220944 139240016 175635428 175635428 163949044 37272676 29558400 29558400 25374816 31987680 31987680 29469856 21697648 41741328 58500240 58500240 52722544 52722544 23542176 456928920 456928920 533519604 533519604 237377820 237377820 15790620 815342214 815342214 478676046 478676046 336594500 158352452 166512116 166512116 42081952 2146560 1807360 1671680 3213600 4017408 823427072 823427072 555263616 555263616 354770945 70788354 530432 924672 52187424 52187424 286116528 320009472 320009472 333457352 333457352 393741610 393741610 435754954 435754954 716190362 716190362 939737960 939737960 1027801331 1027801331 58855536 299244258 396234051 742464295 748683936 748683936 736770374 642151387 976408833 976408833 987679028 987679028 802997372 747801616 787208813 787208813 1001207157 1001207157 727745072 567805668 107826774 1048649756 1048649756 759246869 1043639071 1043639071 193877169 909164826 957380116 957380116 866715925 866715925 740194265 553711301 953601874 953601874 821696451 649734691 649734691 122473656 122473656 397344120 397344120 206020810 546762828 546762828 484181284 484181284 673796032 764939372 764939372 204808452 204808452 136325120 481326666 481326666 612636936 612636936 623777932 677256837 832193232 860406963 886958695 886958695 434487839 317482628 405547296 405547296 384117210 419674180 419674180 279049482 307491474 307491474 382127880 386071800 386071800 365253554 577047146 577047146 564278313 562172001 93323880 127942912 127942912 125878392 125206760 87431976 47801344 147416256 147416256 704643381 704643381 705959432 705959432 664301900 743565768 793133656 1037135931 1037135931 889461538 405872760 291903906 387586946 387586946 101037626 313003722 428526050 428526050 176816136 176816136 130193744 179386512 179386512 142080900 160567436 226627692 228968608 228968608 23277984 117705216 350093658 350093658 73523000 116910626 116910626 45169770 340714720 340714720 442219618 442219618 530937850 530937850 507021424 507021424 218239556 218239556 190870800 190870800 517604864 648176926 648176926 236529180 243419662 484848542 484848542 201413956 201413956 230662888 361188904 430528526 430528526 362333802 362333802 216671572 284530010 387336396 413323750 413323750 275317480 172622412 677826752 677826752 860043587 860043587 831730275 847315039 847315039 272179474 349257786 352854602 352854602 172499032 239690892 239690892 750780984 750780984 338813706 338813706 455082294 455082294 424162070 991874674 991874674 557052329 640695884 782030020 782030020 630774917 656148645 764301425 764301425 548128389 648601937 720160512 720160512 229903212 229903212 237788740 237788740 165250456 263316348 263316348 500632270 500632270 932260445 932260445 934968741 934968741 852722300 713487554 713487554 426318279 476102868 700203373 838878545 1070744360 1070744360 565375808 424708066 640498988 640498988 210104400 210104400 768976752 768976752 939326304 939326304 933679138 454336208 454336208 189495440 567156784 797565097 1051498041 1051498041 984093959 246286111 210109772 252729252 252729252 214965389 634557281 634557281 548476577 139329537 180849261 180849261 194060561 745538445 745538445 686993501 722773217 722773217 789040149 789040149 1045300794 1045300794 772939889 1021662071 1021662071 845056171 225582774 342958986 827859598 946737175 946737175 910188329 910738619 910738619 906544155 853095045 1033465429 1033465429 886152159 937186856 937186856 411897982 353435426 353435426 980426516 980426516 840194054 875223697 875223697 472964363 402822028 320163213 114591569 870115337 870115337 906251018 906251018 873595177 873595177 773694205 261678716 963667660 963667660 694316903 694316903 679990089 881012744 881012744 805490691 595748256 661392825 675857458 994050231 994050231 325633152 325633152 308443398 308443398 325198928 325198928 323348658 30857952 447439764 447439764 429789764 153893928 222841256 293724258 293724258 268533856 1009020199 1009020199 369434668 478218774 478218774 1037308126 1037308126 885047789 908172464 908172464 1031137876 1031137876 871625219 871625219 808907265 301630626 271322624 349189640 349189640 839988251 839988251 895876379 895876379 743907773 639246720 639246720 405558708 405558708 419443769 419443769 866718769 866718769 602482161 952782920 952782920 862065280 933292854 933292854 1009577805 1009577805 1052449370 1052449370 823689511 988023255 988023255 675306029 652321065 652321065 699340142 1037378267 1037378267 998834513 998834513 943927431 878645251 878645251 864499827 789185825 789185825 694796800 761081517 761081517 729583376 202662884 202662884 115929880 37749656 85987600 782775880 782775880 750258176 788908000 822122919 822122919 460250114 460250114 414933246 414933246 779945252 779945252 281715161 683747458 825737824 866727026 866727026 431849484 431849484 477991720 477991720 308892868 348262792 378048602 378048602 237849188 237849188 224398848 224398848 475601024 475601024 433956352 171445648 171445648 142606404 138413508 47187924 31513488 550903576 648858969 714906907 975052311 975052311 374779973 390337112 777313981 777313981 784864628 784864628 901536803 910294635 910294635 979666226 979666226 190971908 159471924 159471924 188072448 188072448 175678368 195068512 323275698 323275698 107689368 378626946 378626946 320427616 499391850 499391850 352241478 313705104 335808522 430771946 430771946 484844240 484844240 202547488 202547488 35961404 135809544 262247212 262247212 221204348 202325004 198000542 198000542 126343620 308416914 308416914 270620824 201509400 444689352 458866766 458866766 203138600 307835096 524350518 524350518 335909312 335909312 264383796 264383796 78678792 753511112 753511112 592750644 592750644 243085212 776198144 374664192 780470878 780470878 409191766 409191766 447279494 592036166 592036166 413197489 486958122 486958122 352950318 29434080 201851916 237037872 1009515803 1009515803 869928480 869928480 448925910 448925910 724379940 724379940 547663216 296223808 296223808 1044499502 1044499502 418925836 418925836 64486128 546404592 546404592 471354460 782644970 782644970 773151852 266203692 266203692 625746328 824771738 824771738 426369104 943754737 943754737 399272059 552390081 1059851007 1059851007 859821086 336598578 790244544 790244544 737222909 633933813 77689696 218252840 218252840 101845612 31198944 31198944 470292838 470292838 460242000 451622358 451622358 41689488 333521988 333521988 52428934 177940274 429003366 964145410 964145410 309220401 725880896 725880896 12730624 680347776 684319941 684319941 6455250 372051522 372051522 99043552 746741864 765718893 847288623 847288623 285300838 328762556 484071148 507646578 507646578 640291932 640291932 236984257 134899460 300630536 300630536 158296145 732781365 732781365 833094019 833094019 1046487056 1046487056 114917554 376456048 935995122 935995122 857739291 899887441 899887441 749306317 749306317 631805709 629720777 629720777 988408576 988408576 829205806 829205806 451590118 1060009030 1060009030 1027716297 1030665750 1030665750 183241094 339892356 416165386 416165386 420821260 515857818 515857818 509963908 509963908 409217282 172564868 440674304 440674304 317391938 15851138 442928340 442928340 407782592 205394980 200470680 81203376 100734112 100734112 244855924 264864972 526541158 526541158 159408211 445624013 714448968 773114397 773114397 445854294 809108249 809108249 613552643 699798561 699798561 971834490 971834490 734280148 734280148 939734018 939734018 152969221 420627330 559650528 685977989 685977989 424162563 0 0 228200872 325246572 325246572 314523474 103602762 75944016 103155712 103155712 668518416 668518416 607312745 311952664 347079498 347079498 317916216 599210808 841294169 841294169 294912216 240454132 494936376 671351483 671351483 595929575 595929575 400943146 400943146 165731298 873840836 873840836 741331304 741331304 747713314 1027650274 1027650274 749101739 689925225 755898157 755898157 742004493 78241192 133500464 133500464 416441068 416441068 864030845 864030845 125882683 127289719 580968540 637660230 867451392 1008351222 1008351222 739407614 526716056 672371200 672371200 236083856 205834380 136139782 136139782 450759894 450759894 306191952 282992322 271715456 451273732 451273732 436648038 447775094 447775094 327589954 327589954 319427680 14635856 183119492 183119492 136837380 61105456 144201588 188762648 188762648 165225980 195026156 195026156 153860472 170767948 170767948 347072804 924585774 924585774 817409163 389486367 311755632 136893456 381107646 381107646 498748846 498748846 867774240 883701544 883701544 384184080 384184080 122059296 134617092 134617092 730595385 730595385 228907602 905481188 1022103111 1022103111 973603863 1070057615 1070057615 789247183 692375232 692375232 481348779 822117737 822117737 553190417 553190417 106303648 238613216 238613216 549570817 549570817 149045892 562041217 562041217 152575328 286278464 302519520 331485426 466804258 466804258 144607478 62089072 368780410 395002472 857807498 857807498 823232317 217719077 216796620 159138368 278145128 278145128 268518474 268518474 380734637 1044246523 1044246523 363207402 446829568 447219030 447219030 538490401 538490401 462821222 462821222 985144261 1067557244 1067557244 313051656 615375392 615375392 562375273 71166529 548686273 548686273 96440408 102256168 102256168 274554841 650934442 851925707 851925707 614622218 614622218 626405761 915869627 915869627 569828593 629401802 629401802 625001294 625001294 536625486 536625486 246973396 246973396 226919906 490249498 490249498 446978116 446978116 411479316 457311396 457311396 657807360 657807360 684720389 684720389 229773504 1046647060 1046647060 717843348 717843348 562221153 546472928 36858616 104542408 108290104 771627713 771627713 206850696 680665925 680665925 160707268 160707268 603924293 603924293 288544790 797693957 981316771 981316771 574624912 835387601 855711795 855711795 596705472 813965454 813965454 778062577 465749474 863384864 863384864 590176752 590176752 573833888 23737600 23737600 24367136 24367136 416983008 416983008 441220944 441220944 139240016 175635428 175635428 163949044 37272676 29558400 42728496 42728496 61837360 61837360 29469856 21697648 39127312 39127312 36721040 305502833 305502833 744515634 1065867504 1065867504 526001250 526001250 889767544 1009492291 1009492291 815342214 876659806 1048711263 1048711263 655928678 735972013 735972013 724568597 724568597 962844032 962844032 959271426 959271426 153724451 268564483 268564483 555263616 555263616 873570306 873570306 874484480 876867723 876867723 607476008 271980968 122645560 120755104 40697488 89166472 89166472 85724832 85724832 15612648 716190362 716190362 939737960 939737960 1027801331 1027801331 293677312 295962978 295962978 52578563 449950580 449950580 737808362 737808362 976408833 976408833 987679028 987679028 822889764 822922259 822922259 706370054 1001207157 1001207157 802162486 984425558 984425558 244845665 117745844 310392840 335575120 335575120 35282960 637846784 735409945 784551676 784551676 740194265 740194265 553711301 899216497 899216497 631165408 862002849 862002849 75681864 344359112 348391626 348391626 277416428 872460650 872460650 684327950 753475725 753475725 743008077 745605193 745605193 541860429 136325120 481326666 481326666 612636936 612636936 547492161 69605449 832193232 860406963 886958695 886958695 434487839 136152546 405547296 405547296 75501584 394438152 395836026 395836026 307491474 307491474 382127880 382127880 329769680 329769680 577047146 577047146 564278313 844862402 844862402 572723968 572723968 388286452 513543774 513543774 471055046 483076232 658833408 658833408 658587353 240134633 164242176 49501008 49501008 350978432 350978432 236585938 405872760 405872760 286392348 126259658 342888458 342888458 313003722 428526050 428526050 176816136 176816136 130193744 130193744 127259296 123267456 123267456 21755040 50880320 54981136 54981136 117705216 350093658 350093658 73523000 116910626 116910626 45169770 340714720 340714720 442219618 442219618 530937850 530937850 506463006 114591306 503480600 503480600 451039326 190870800 262811685 648176926 648176926 814760562 814760562 484848542 484848542 300626996 201413956 230662888 368704001 430528526 834178145 834178145 469782798 216671572 284530010 387336396 413323750 413323750 275317480 119209020 677826752 677826752 252180537 0 814768140 814768140 467429139 1025296447 1025296447 794618925 333810939 333810939 403793538 443613972 750780984 750780984 338813706 338813706 455082294 455082294 424162070 991874674 991874674 981868835 1012516909 1012516909 782030020 630774917 656148645 764301425 764301425 548128389 648601937 720160512 720160512 229903212 229903212 237788740 237788740 178258260 263316348 263316348 429335628 429335628 351909486 245742116 428221096 525662822 525662822 197444310 62942308 55937056 38920848 17066672 87146670 1070744360 1070744360 16777248 750780768 761266605 761266605 702611877 767903916 767903916 229559598 276959298 985299527 985299527 446321490 34947040 645711113 914436387 914436387 846030020 878715241 1044590751 1044590751 682269765 1044404564 1044404564 399954298 399954298 548476577 548476577 491848818 491848818 405540102 275254660 745538445 745538445 686993501 722773217 722773217 789040149 789040149 1045300794 1045300794 219234364 228337712 359549842 359549842 249157964 249157964 227051172 796922592 796922592 777130653 606101587 96475943 482631878 698533171 1033465429 1033465429 886152159 937186856 937186856 333628032 518542430 518542430 525358351 525358351 268697874 268697874 846892091 846892091 320163213 320163213 114591569 870115337 870115337 836272714 836272714 991168179 991168179 764725869 139461252 963667660 963667660 694316903 694316903 679990089 881012744 881012744 1016684925 1016684925 852566739 852566739 124258305 415582144 415582144 940782706 940782706 357754456 365225648 365225648 203547496 413983300 413983300 148951120 148951120 91277284 38297666 293724258 293724258 520144078 520144078 286909570 285863272 478218774 478218774 437526606 437526606 306209668 1041929008 1041929008 343617728 343617728 39730208 297062976 301630626 301630626 9387072 349189640 349189640 839988251 906651912 906651912 876217865 489951262 118770232 53762824 272636960 876951686 939862185 939862185 966983861 966983861 650184701 952782920 952782920 862065280 862065280 637535961 892610602 892610602 1052449370 1052449370 823689511 803246592 595542309 113388953 96210792 435159904 699340142 1037378267 1037378267 983306497 983306497 943927431 1023870539 1023870539 552007105 789185825 789185825 1069702182 1069702182 940738052 940738052 330965234 486118382 490321510 490321510 469415784 801959210 1010126095 1010126095 788908000 788908000 278131266 938917744 938917744 1007053365 1007053365 977161723 619353952 833279331 833279331 288135233 866727026 866727026 419605260 419605260 477991720 477991720 308892868 348262792 378048602 378048602 49209024 49209024 224398848 224398848 34671104 49555152 198353316 198353316 171445648 142606404 138413508 47187924 160468641 550903576 648858969 714906907 975052311 975052311 846363160 846363160 923089115 923089115 673732900 673732900 901536803 901536803 630984297 270063170 270063170 334136194 334136194 159471924 188072448 209563377 612660157 771375741 771375741 705185224 481102695 905014275 1055177877 1055177877 671747293 499391850 810043770 810043770 669811846 666471977 731807961 731807961 169151232 821775247 821775247 936719612 936719612 274991442 824319616 843787187 843787187 727338013 210114636 210114636 308416914 911620624 911620624 943131227 943131227 516385931 387175618 220089864 365698793 892788067 892788067 623003563 541126892 755715533 755715533 293178528 27117162 89393832 605524876 605524876 180726641 657093312 374664192 780470878 780470878 302580736 519838940 519838940 976149345 976149345 611263769 901357465 901357465 428389558 533391978 533391978 219688716 1009515803 1009515803 869928480 869928480 837216579 584364787 584364787 828850081 828850081 296223808 845116893 845116893 678967038 678967038 562435430 562435430 429846304 954954878 1032427137 1032427137 782644970 204811020 127326840 171617924 625746328 946552628 946552628 1003433446 1003433446 983828592 721895927 721895927 1059851007 1059851007 859821086 513455398 693668468 697619549 697619549 817332033 817332033 763954532 763954532 365889633 636830396 636830396 609762969 460242000 460242000 313301158 302724114 274211456 7938946 289671296 289671296 291577858 291578274 291578274 626634424 635456489 660676777 660676777 126153305 106348544 674399168 674399168 15749893 372051522 372051522 99043552 99043552 283673730 283673730 574464 262259138 262259138 277822570 277822570 107089944 640291932 640291932 818100352 818100352 555233312 134746880 158296145 732781365 732781365 912924672 912995739 1046487056 1046487056 256378044 834147528 834147528 244323615 857739291 899887441 899887441 924844201 924844201 834789603 834789603 686057766 988408576 988408576 306242048 437729814 437729814 624951465 641896909 641896909 1030665750 1030665750 264292412 207525538 290743760 331214706 524258550 524258550 492472130 426592818 413237680 409217282 172564868 440674304 440674304 317391938 141416448 442928340 442928340 407782592 205394980 200470680 122030760 122030760 113780448 113780448 67892232 67892232 457726130 457726130 336397352 714448968 773114397 773114397 445854294 445854294 613552643 613552643 751049024 751049024 971834490 971834490 806232084 806232084 579998471 574387265 156101761 420627330 568952224 685977989 685977989 424162563 235664412 1007244157 1007244157 325246572 325246572 314523474 103602762 103814428 116020877 116020877 576737284 576737284 1021363727 1021363727 347079498 347079498 103286354 642924234 904926375 904926375 994511829 994511829 867533344 494936376 675627195 675627195 341331098 341331098 877082286 877082286 810585803 274468482 689720708 825019683 825019683 1027650274 1027650274 749101739 689925225 755898157 755898157 742004493 19997472 19997472 101856960 101856960 303219527 864030845 864030845 125882683 127289719 580968540 637660230 637660230 1008351222 1008351222 739407614 482695704 672371200 699879276 699879276 205674892 683269632 683269632 671149780 671149780 135532240 135532240 50017280 9834752 9834752 9701952 533504 33660928 33677328 186102004 186102004 24517536 183119492 183119492 136837380 61105456 144201588 144201588 117920144 165225980 195026156 195026156 153860472 170767948 170767948 202465360 202465360 690976429 690976429 311755632 311755632 137812740 381107646 381107646 164183574 285808232 867774240 883701544 883701544 384184080 384184080 268511368 134617092 620021108 730595385 730595385 294785634 905481188 1022103111 1022103111 973603863 1070057615 1070057615 789247183 692375232 692375232 491375670 822117737 822117737 553190417 553190417 62509680 48187456 48187456 549570817 549570817 39323280 562041217 562041217 112870232 286278464 286278464 219226668 219226668 40428720 993078940 993078940 986194245 986194245 770294751 373035454 373035454 166358704 72241250 97213538 982928396 982928396 1058197626 1058197626 974308135 639648612 494796914 494796914 732699879 807929091 889326904 889326904 834540835 834540835 462821222 985144261 985144261 123995852 897879112 897879112 209733671 2936064 87099568 205837628 205837628 171708180 171708180 137134616 274554841 315886833 851925707 851925707 669775353 569112689 360759402 384496176 384496176 368650218 66713290 58876448 43250256 212882596 212882596 136892972 254545212 338431004 338431004 320625912 320625912 361389378 411479316 411479316 303683145 271229763 657807360 657807360 684720389 684720389 469958718 1046647060 1046647060 717843348 717843348 939659781 939659781 177756036 691528800 691528800 672537093 648133928 247220344 143389764 215602508 215602508 160707268 243751284 306225274 306225274 421370576 981316771 981316771 792081586 776158599 776158599 764872914 764872914 710285973 778062577 778062577 403252230 306193556 577040448 577040448 327456882 327456882 315084946 315084946 165553316 414974052 416983008 427673702 427673702 177828752 177828752 49159632 49159632 16624464 13326096 63740304 63740304 63028432 61837360 61837360 30433200 9825728 9825728 10194432 10194432 305502833 305502833 744515634 1065867504 1065867504 526001250 526001250 889767544 1009492291 1009492291 269026635 876659806 1048711263 1048711263 655928678 735972013 735972013 724568597 724568597 962844032 962844032 959271426 959271426 153724451 268564483 268564483 136642851 4203520 873570306 873570306 874484480 876867723 876867723 607476008 271980968 40193792 40697488 50459680 89166472 105547184 120063288 120063288 54142344 58855544 1063361053 1063361053 740844591 513876308 23199866 837155155 837155155 549902339 543293737 543293737 774117404 774117404 737808362 446958697 136595906 283794562 283794562 822889764 822922259 874819600 874819600 841474075 802162486 802162486 984425558 984425558 244845665 507815954 507815954 705132565 705132565 203209225 924044594 924044594 784551676 784551676 196977072 196977072 75890824 869717824 869717824 631165408 862002849 862002849 321539632 344359112 348391626 348391626 277416428 872460650 872460650 684327950 753475725 753475725 743008077 745605193 745605193 541860429 205403968 346169640 892217641 892217641 830998889 295384674 546978341 956506153 956506153 925183343 925183343 492970102 492970102 298849976 168362208 75501584 394438152 395836026 395836026 25494080 355153664 355153664 292006531 556978977 556978977 875470280 875470280 369108682 844862402 844862402 572723968 572723968 647004745 647004745 1016226322 1016226322 880873478 658833408 658833408 786439548 786439548 600446193 79415240 79415240 468325056 468325056 419092422 143332008 331464532 331464532 70730002 342888458 342888458 282386762 279194232 156490256 156490256 68165868 67362848 69231824 111674712 111674712 85477248 24643488 99652656 124973336 124973336 381761864 381761864 64030570 12583104 12583104 290517012 290517012 328929202 328929202 274560384 240772764 276866496 506463006 506463006 113934942 503480600 503480600 451039326 201356560 262811685 634053914 870527475 987345793 987345793 703812749 411136512 411136512 365371500 965495890 965495890 485416398 834178145 834178145 476633044 184206726 86848472 131997432 187202516 258996766 439320968 439320968 654833724 780601486 780601486 241563667 814768140 814768140 710522370 1025296447 1025296447 881579739 566832004 704645237 704645237 685367940 443613972 595599441 595599441 593137250 998901789 1006970895 1065408561 1065408561 981868835 981868835 1012516909 1012516909 155600664 155600664 67113024 75632712 75632712 209233280 209233280 208260876 104038660 11746384 80141000 210238744 210238744 178258260 36173892 1835014 403966530 403966530 361379058 361379058 245742116 184881250 180446568 180446568 55937056 705794997 705794997 259413920 685946625 685946625 653935980 653935980 787424209 787424209 761266605 702611877 767903916 950408518 950408518 276959298 985299527 1016035659 1016035659 718792858 876685851 914436387 914436387 846030020 878715241 1072694271 1072694271 682269765 1044404564 1044404564 613712460 989958266 989958266 939782151 764054679 811210371 811210371 573215932 481258080 39095424 71838492 254870536 254870536 95284584 50725992 109976664 219234364 219234364 228337712 228337712 231360636 249157964 249157964 75676280 796922592 796922592 777130653 731264707 1057827903 1057827903 1041633312 1041633312 740573495 43305552 623415094 623415094 112101399 518542430 518542430 525358351 846929890 956059439 1029872259 1029872259 846892091 835687052 835687052 44565840 593909504 593909504 836272714 836272714 991168179 991168179 807437379 807437379 146392579 949084167 949084167 948376064 948376064 788930596 788930596 1016684925 1016684925 852566739 852566739 103901155 445390680 445390680 940782706 940782706 357754456 365225648 365225648 203547496 413983300 413983300 444790012 444790012 85354188 223701736 223701736 231810236 520144078 647717039 647717039 218492440 375768918 435426254 544309296 1003208063 1003208063 1041929008 1041929008 976486920 976486920 826314161 826314161 656576881 397797171 397797171 400572776 400572776 874252426 911067203 911067203 876217865 604387392 604387392 545341440 154435620 876951686 939862185 939862185 966983861 966983861 767768248 650184701 405979906 677622407 677622407 637535961 1058892918 1058892918 549887096 797595513 803246592 803246592 595542309 529507984 67508232 67508232 205789256 905068288 905068288 353581425 180300732 902234424 1023870539 1023870539 987249008 378067981 251059164 1069702182 1069702182 940738052 940738052 330965234 486118382 490321510 490321510 469415784 801959210 1010126095 1010126095 708135183 302319567 278131266 938917744 938917744 1007053365 1007053365 977161723 619353952 833279331 833279331 288135233 420628580 420628580 419605260 419605260 355990314 422252548 422252548 82958 0 67109504 72352392 72352392 68436960 49253792 32030064 11059904 198353316 198353316 157831392 25608384 155324164 155324164 160468641 686038300 686038300 553536896 872473248 872473248 846363160 846363160 923089115 923089115 76357704 350505424 350505424 662732896 662732896 605197168 605197168 334136194 334136194 559364769 559364769 559187284 612660157 771375741 771375741 705185224 481102695 905014275 1055177877 1055177877 671747293 415240214 810043770 810043770 669811846 666471977 731807961 731807961 1025709652 1025709652 821775247 936719612 936719612 369373834 824319616 843787187 843787187 991320890 991320890 210114636 268694737 911620624 911620624 943131227 943131227 516385931 387175618 613309824 613309824 892788067 892788067 623003563 541126892 755715533 755715533 412410444 412410444 146547274 605524876 605524876 180726641 657093312 860270641 860270641 667892985 346487102 947218943 947218943 976149345 976149345 611263769 901357465 901357465 428389558 533391978 533391978 219688716 302491810 302491810 290946048 837216579 837216579 584364787 584364787 828850081 828850081 1002229623 1004166005 1004166005 678967038 678967038 562435430 562435430 429846304 954954878 1032427137 1032427137 592845842 592845842 235485393 497038358 706885766 946552628 946552628 1003433446 1003433446 983828592 721895927 721895927 501363798 739337389 739337389 613717616 810005586 824021532 824021532 1069114237 1069114237 857470222 763954532 987050183 987050183 704673733 704673733 807629357 807629357 591862245 913034315 913034315 614269513 614269513 343621162 829074842 862052787 862052787 639752200 639752200 660676777 673827857 673827857 201942272 720436037 749082957 749082957 616973188 98307648 624323105 624323105 524491904 609845429 609845429 277583318 277583318 277822570 1064298507 1064298507 249825756 1043236643 1043236643 818100352 555233312 88999820 157995984 182446048 823920562 912924672 912995739 912995739 286504908 256378044 834147528 834147528 244323615 695219128 695219128 398535443 924844201 924844201 834789603 834789603 686057766 853401814 853401814 306242048 437729814 461655190 461655190 458827446 307969936 244319316 264292412 264292412 108293168 290743760 331214706 524258550 524258550 446768312 459828714 493724834 493724834 306184278 43196678 273752544 277419424 277419424 141689856 41682900 4268160 96823544 109359136 122030760 122030760 218169516 218169516 160079600 239391864 465754307 847630489 847630489 832192581 1071245055 1071245055 520286171 372059420 842148882 842148882 751049024 751049024 682628060 682628060 806232084 806232084 574387265 574387265 156101761 418399558 568952224 568952224 88685704 154186540 235664412 1007244157 1007244157 445313786 424208146 295433826 185418110 362012500 437990934 442085462 576737284 576737284 1021363727 1021363727 934984906 934984906 818987715 642924234 904926375 904926375 994511829 994511829 867533344 327494028 675627195 675627195 498143657 768830423 877082286 877082286 810585803 274468482 689720708 825019683 825019683 968479846 968479846 754157287 757493359 757493359 300790957 55315800 91553960 91553960 79081424 79081424 130526848 357094564 450675958 819352266 939803375 939803375 169397288 634271310 860744883 860744883 378231017 989202949 989202949 699879276 699879276 284843714 683269632 807003651 819586050 819586050 280358806 445542784 445542784 441271556 441271556 315030994 409320278 409320278 322734418 322734418 277536784 24517536 24517536 52180832 52180832 34949888 59834432 117920144 117920144 68805904 68805904 37509304 54686448 63082672 63082672 453673686 453673686 261383344 271981314 271981314 271981314 137812740 137812740 134644480 1280 2622720 270533664 270533664 313532738 324341344 828057359 828057359 223482540 620021108 620021108 1021497807 1021497807 339739584 347079498 565643560 807612675 807612675 694287665 79814856 270414284 473694670 491375670 491375670 550617344 552674241 563501529 563501529 113588553 98824680 93414280 93414280 8462400 809522762 809522762 335727938 344785482 514763916 514763916 318693330 311694376 993078940 993078940 986194245 986194245 1068586667 1068586667 834839042 511705182 511705182 451291192 982928396 982928396 1058197626 1058197626 974308135 650003728 494796914 871809266 871809266 886573678 889326904 889326904 834540835 834540835 272897452 397936505 397936505 151126016 897879112 940183660 951374920 951374920 883442964 923393540 923393540 171708180 171708180 137134616 279284168 291953058 805626968 805626968 669775353 830788003 830788003 360759402 635391850 635391850 591007306 591796401 591796401 583873632 212882596 383551208 383551208 338431004 345282976 345282976 320625912 361389378 361389378 422959884 548399714 906679323 1042635333 1042635333 814743873 338690539 469958718 469958718 389031155 513245572 678617793 939659781 939659781 427182710 691528800 691528800 672537093 648133928 465306761 81442812 215602508 215602508 13420580 243751284 306225274 306225274 127796520 182718958 792081586 792081586 570755493 352659498 864067648 864067648 855760947 599982147 403252230 403252230 306193556 302443346 572555280 807700498 807700498 315084946 406062658 406062658 414974052 423415590 427673702 427673702 177828752 461513376 461513376 420515520 420515520 192455780 179941040 63740304 63028432 53682512 46631376 46631376 30317792 30317792 9737152 9737152 60214624 60214624 552079424 552079424 292225272 292225272 502335148 766121790 766121790 545869837 207156877 205763584 205763584 134217732 218667040 218667040 152964652 552258212 565367649 705202193 705202193 57967061 26688096 26688096 19276608 86320312 86320312 40652176 38365568 17428896 67303552 130391288 130391288 38144000 55259704 55259704 97535688 97535688 91278752 105547184 120063288 120063288 70930304 41747088 1063361053 1063361053 855679379 732399300 630545163 837155155 837155155 941844878 941844878 645563164 774117404 963382695 963382695 831871556 841820439 841820439 283794562 754440924 754440924 874819600 874819600 841474075 713891923 677464357 700976612 700976612 817375476 964763751 964763751 953459810 705132565 203209225 924044594 924044594 749100272 749100272 632437580 973997811 973997811 869717824 869717824 920963547 943349697 943349697 321539632 1017569283 1017569283 673455252 910641638 910641638 599787778 553746506 350758218 350758218 1029702824 1029702824 747704704 205403968 205403968 346169640 892217641 892217641 830998889 295384674 754289352 956506153 956506153 925183343 925183343 683674796 683674796 639711576 177544832 81207272 128196976 128196976 302673800 302673800 355153664 355153664 303698048 556978977 556978977 875470280 875470280 543285633 622854441 622854441 389137217 312549714 647004745 647004745 1016226322 1016226322 880873478 139502092 67090320 786439548 786439548 600446193 79415240 79415240 468325056 468325056 419092422 143332008 331464532 331464532 277971328 50411152 76561696 76561696 101110344 223724056 223724056 160774324 113906904 113906904 46045080 85477248 85477248 84605520 99652656 124973336 124973336 381761864 381761864 86092562 355813232 355813232 916760131 916760131 445342356 504611779 878381601 878381601 800248701 310953042 861573442 945034214 945034214 895484331 895484331 696780238 434840744 634053914 870527475 987345793 1049106280 1049106280 981562893 981562893 929096058 965495890 965495890 485416398 485416398 476633044 476633044 956639883 956639883 624794654 624794654 575226631 439320968 545016717 545016717 780601486 780601486 333516832 541237474 710522370 741986380 741986380 881579739 881579739 566832004 704645237 704645237 685367940 372994056 595599441 595599441 593137250 998901789 1006970895 1065408561 1065408561 939823120 254680380 254680380 727637685 734686725 734686725 693355637 710021781 710021781 653329241 653329241 653437712 653437712 11746384 80141000 139909852 139909852 235090480 251867196 251867196 403966530 403966530 361379058 361379058 184881250 184881250 180446568 180446568 25542981 705794997 705794997 259413920 685946625 685946625 653935980 653935980 787424209 787424209 688314405 573811692 690299143 950408518 950408518 440666528 440666528 1016035659 1016035659 718792858 876685851 876685851 676342057 676342057 649667750 1072694271 1072694271 546833920 1016890880 1016890880 613712460 989958266 989958266 939782151 764054679 811210371 811210371 573215932 481258080 379809118 98966388 526875870 526875870 113332224 113332224 109976664 277873218 277873218 114557608 976379666 976379666 678305157 226592300 226592300 89223792 226496624 771756684 771756684 1057827903 1057827903 1041633312 1041633312 831917886 831917886 639765811 882541409 882541409 287638066 718359757 718359757 846929890 956059439 1029872259 1029872259 644709446 1017644367 1017644367 211238659 0 562167872 562167872 643961915 643961915 95735042 906497401 906497401 146392579 949084167 949084167 948376064 948376064 554723623 671914244 671914244 622613588 246602065 104486176 771899024 771899024 445390680 113118294 276111216 276111216 89109890 37978136 339479096 361573482 361573482 444790012 444790012 85354188 223701736 327733394 327733394 382325164 647717039 647717039 402526502 402526502 435426254 613079768 1003208063 1003208063 270464502 905942484 976486920 976486920 826314161 826314161 656576881 1051755372 1051755372 1013085487 527422510 874252426 911067203 911067203 746114132 604387392 604387392 545341440 144656840 221851360 221851360 617161929 735195241 767768248 767768248 538219654 679657537 1016843316 1016843316 882244626 1058892918 1058892918 866816791 999444851 999444851 890279432 986967682 1062554850 1062554850 243085212 824513004 905068288 905068288 863899260 860693593 860693593 663224556 987249008 987249008 722477796 722477796 844188522 844188522 702994917 974735194 974735194 898753131 753554739 709960341 683717649 348668273 161539211 763437088 763437088 746586189 598075761 598075761 814327349 814327349 768705397 657594733 727334172 727334172 651670512 651670512 581545490 581545490 327673382 327673382 201552160 422252548 466323330 466323330 461312902 290078070 147080450 141708800 141708800 65440112 65440112 66132576 66132576 149050756 149050756 27535520 155324164 155324164 20993408 686038300 686038300 929525928 929525928 556390353 13707082 292316154 398583098 398583098 76357704 327977018 848473354 848473354 662732896 605197168 605197168 57187616 135121813 559364769 559364769 940068374 940068374 564401717 389534027 263794356 263794356 94507368 195564588 195564588 243926868 243926868 120722232 205571588 205571588 164151592 162666784 423304098 1025709652 1025709652 327624717 254939964 209261496 369373834 406130192 406130192 272436494 991320890 991320890 333581706 625137086 625137086 818952414 818952414 704742007 521407093 432587740 613309824 613309824 296011075 137413380 214545568 214545568 472136584 472136584 422576384 422576384 146547274 111697616 106166680 150106244 150106244 860270641 860270641 273016962 346487102 947218943 947218943 615697146 888609113 888609113 741880410 741880410 587958098 587958098 717288435 717288435 569726784 846460467 846460467 302518784 329079491 329079491 278211138 278211138 813010612 1002229623 1004166005 1004166005 189728730 455674912 455674912 537254816 537254816 427019393 407637126 455760390 592845842 592845842 235485393 497038358 706885766 923303443 923303443 560148054 826125141 826125141 541188225 258329604 541404596 739337389 739337389 613717616 810005586 824021532 824021532 1069114237 1069114237 857470222 744449644 987050183 987050183 704673733 704673733 807629357 807629357 591862245 913034315 913034315 614269513 614269513 343621162 829074842 862052787 862052787 639752200 639752200 154552049 673827857 673827857 201942272 720436037 749082957 749082957 616973188 525108684 624323105 624323105 524491904 609845429 609845429 277583318 277583318 90368360 1064298507 1064298507 249825756 1043236643 1043236643 147923320 243413732 243413732 54726152 263661264 823920562 823920562 666385761 407442105 557417504 557417504 1014752590 1014752590 184575895 89728680 17310344 42468384 130097400 765494718 852018387 852018387 526926189 853401814 853401814 626272768 711301696 711301696 583295675 474536126 474536126 881611170 881611170 339949066 339949066 298485464 323486898 503840774 503840774 446768312 459828714 493724834 493724834 306184278 43196678 273752544 277419424 277419424 170565316 194801120 194801120 179120452 145101968 61946016 12859584 218169516 218169516 440826388 487420042 487420042 847630489 847630489 832192581 1071245055 1071245055 550553789 705091378 842148882 842148882 507773789 217330652 682628060 682628060 539431488 3750144 3750144 3806976 3806976 85997568 677192336 677192336 385405310 385405310 170967828 338200094 445313786 445313786 424208146 295433826 185418110 362012500 437990934 442085462 448913622 448913622 663449848 663449848 934984906 934984906 818987715 85805019 144321648 338239633 643902875 1025771672 1025771672 256139706 272984210 323348658 498143657 768830423 768830423 699044720 598300753 598300753 174409296 305318116 564449575 968479846 1008784661 1008784661 757493359 757493359 604705688 673055240 696529408 696529408 79081424 79081424 355974221 1037098279 1037098279 1020451055 939803375 939803375 902854179 902854179 860744883 860744883 566762882 989202949 989202949 407633474 407633474 338902984 552863488 807003651 819586050 819586050 280358806 445542784 445542784 441271556 441271556 315030994 409320278 409320278 322734418 322734418 280226146 280725824 280725824 52180832 272903968 272903968 306744522 384568794 384568794 340574544 5537792 33723472 42618896 138799236 138799236 453673686 453673686 616464451 616464451 432353596 432353596 147187908 511165938 511165938 125486248 305402034 867834370 892343664 892343664 850531113 850531113 828057359 223482540 553784376 553784376 1021497807 1021497807 823677289 1063310749 1063310749 807612675 807612675 694287665 993125917 993125917 711580142 488975788 824505705 824505705 596103488 596103488 563501529 113588553 98824680 93414280 647186008 647186008 809522762 809522762 335727938 344785482 822224896 890376747 961059990 961059990 323752962 966165563 966165563 923940777 1068586667 1068586667 834839042 1028477227 1028477227 901016169 162580788 261675082 261675082 314084253 650003728 676070019 676070019 871809266 871809266 886573678 886573678 677643966 325058994 269484976 206046348 67766272 267272 151126016 151130148 940183660 951374920 951374920 883442964 923393540 923393540 205077008 68555804 82078018 335784721 861217011 910388211 910388211 908298696 908298696 899747866 899747866 820459971 635391850 591007306 591796401 591796401 583873632 369673242 383551208 383551208 319080498 425741734 425741734 334008130 334008130 310562898 422959884 706318949 906679323 1042635333 1042635333 814743873 338690539 272629889 327746488 650643482 650643482 624228973 855657133 855657133 427182710 427182710 416717640 543369818 543369818 465306761 77501676 151309504 151309504 25838592 89431576 169036424 210762828 210762828 642287443 648685256 921513435 986388827 986388827 967268727 864067648 855760947 808472656 808472656 966845106 966845106 302443346 572555280 807700498 807700498 288755812 406062658 406062658 326500500 423415590 423415590 47212784 168846000 461513376 461513376 420515520 420515520 192455780 179941040 21371040 12694464 13105344 46631376 46631376 30317792 30317792 10849792 10194432 60214624 60214624 552079424 552079424 393169446 636690328 901317161 901317161 674800453 674800453 146929601 105394675 900412779 900412779 859318389 962067877 962067877 735915765 565367649 705202193 705202193 223039768 161785960 755779944 755779944 763016121 763016121 71722625 71722625 18967040 67303552 130391288 130391288 203625276 203625276 186461748 238433576 238433576 91278752 103055528 103055528 261379404 261379404 198446564 545550228 855679379 855679379 732399300 630545163 689208524 689208524 941844878 941844878 645563164 758047748 963382695 963382695 831871556 841820439 841820439 703457148 754440924 754440924 784244105 784244105 656165408 677464357 677464357 700976612 1033151009 1033151009 964763751 964763751 953459810 282906306 193153972 264415552 264415552 657786997 657786997 632437580 973997811 973997811 371277928 611732804 920963547 943349697 943349697 187170908 1017569283 1017569283 673455252 910641638 910641638 599787778 553746506 350758218 350758218 1029702824 1029702824 747704704 542521896 550247113 625814697 625814697 31604416 219026820 219026820 754289352 754289352 673474565 190799392 190799392 683674796 683674796 639711576 384771818 384771818 492840364 492840364 302673800 394393520 394393520 353770026 303698048 232067358 10486080 541089856 543285633 543285633 622854441 622854441 389137217 312549714 111214744 558066322 558066322 467745104 467745104 1021972450 1021972450 925963503 990854463 990854463 848954698 1062261200 1062261200 1047675024 1047675024 202424896 280002816 280002816 279186208 301206498 301206498 76561696 260135020 260135020 258040672 258040672 133169572 226701952 226701952 197376060 158582692 219996244 219996244 189236520 26029664 17689632 21097970 86092562 355813232 451500923 934716886 934716886 445342356 889499582 889499582 878381601 880431140 968021119 968021119 945034214 945034214 895484331 895484331 696780238 434840744 434840744 185615388 808505409 1049106280 1049106280 981562893 981562893 929096058 929096058 421553373 346079562 852279713 852279713 941705734 956639883 956639883 624794654 624794654 872108540 872108540 593560204 593560204 569975972 569975972 333516832 541237474 949080084 949080084 949929030 949929030 413929610 647498044 647498044 482920529 478760648 372994056 372994056 514338244 534699310 906545678 906545678 327374884 386339919 883726120 883726120 831969891 791890007 734686725 734686725 693355637 928927340 947310605 947310605 786489693 653437712 653437712 140135568 39885660 139909852 139909852 235090480 290113225 821721621 821721621 689183905 595523207 831144323 919352447 919352447 305079347 252273024 654405889 654405889 728340528 1007134722 1007134722 2462092 742450208 742450208 742391949 151068708 573811692 573811692 253817108 572868608 572868608 572645649 440666528 359862400 236003868 624193280 624193280 891912745 891912745 676342057 552179502 828596325 860368029 860368029 545259585 542314768 446244438 446244438 440471238 426574622 440153148 440153148 436548762 374024214 379809118 379809118 98966388 526875870 526875870 113332224 113332224 655236153 881597531 881597531 480153286 976379666 976379666 678305157 306397867 813964353 902565099 902565099 771756684 771756684 150417412 622901736 622901736 709466511 831917886 831917886 639765811 882541409 882541409 135285760 718359757 718359757 457302970 457302970 689079144 766300933 766300933 1017644367 1017644367 211238659 365394152 666015816 666015816 643961915 643961915 111676074 906497401 906497401 846541077 474868367 682066368 942340112 942340112 1040369689 1040369689 622613588 853198906 951195001 951195001 771899024 905702893 905702893 775166035 644476150 355082498 378346844 378346844 520652090 520652090 381543218 119549266 96478392 96478392 63177728 327733394 327733394 756811872 756811872 562155865 402526502 402526502 314491474 613079768 804672117 804672117 270464502 905942484 905942484 720581170 453038110 525769462 525769462 1051755372 1051755372 1013085487 527422510 527422510 256346782 746114132 746114132 203583952 243175432 243175432 144656840 221851360 221851360 108529560 198247284 207165962 207165962 540123904 679657537 1016843316 1016843316 882244626 818536495 559746083 866816791 999444851 999444851 890279432 986967682 1062554850 1062554850 815402295 824513004 1068785636 1068785636 863899260 860693593 860693593 875000820 875000820 855822387 722477796 722477796 844188522 844188522 967524742 974735194 974735194 898753131 753554739 709960341 683717649 1018430919 1018430919 763437088 763437088 746586189 1017952226 1017952226 983041623 814327349 768705397 657594733 727334172 727334172 651670512 651670512 581545490 581545490 327673382 327673382 276587200 199844786 466323330 466323330 461312902 327289408 327289408 141708800 296619842 296619842 293215872 297311600 297311600 49987856 49987856 34068944 34068944 38347920 38347920 35724304 299771648 929525928 929525928 932997282 932997282 306987930 306987930 576750874 576750874 133972417 848473354 848473354 641686160 641686160 72002432 5381376 5381376 5063488 5978752 940068374 940068374 564401717 583599260 746659917 746659917 239609041 195564588 195564588 536872709 536872709 774799518 776521896 776521896 1067095271 1067095271 781998773 999619361 999619361 814410636 1011764560 1050160551 1050160551 604124183 675817097 675817097 917688287 917688287 351831185 785568537 785568537 818952414 818952414 704742007 521407093 432587740 556810984 556810984 393613363 629873664 689362440 689362440 339923082 339923082 422576384 422576384 84959496 69304872 16041408 150106244 150106244 17189664 17189664 128979584 131121912 580048900 580048900 615697146 888609113 888609113 741880410 741880410 587958098 587958098 717288435 717288435 569726784 846460467 846460467 271509392 329079491 329079491 312904146 274895744 301125834 354468138 354468138 88869041 88869041 1043682007 1043682007 1071002695 1071002695 941414603 941414603 673781443 571073553 526333285 473824226 436398848 436398848 923303443 923303443 560148054 826125141 826125141 1028926062 1028926062 541404596 541404596 521480766 385719916 910392768 910392768 612782870 612782870 497443444 659246332 712947313 712947313 91456823 547046934 547046934 191099316 292074644 921175954 921175954 45745563 17302560 564274664 608908425 625684617 625684617 625160361 77789592 557004264 609098889 609098889 505058250 889117400 889117400 99748621 216550590 329566578 525108684 525108684 146583808 365043586 365043586 530125308 530125308 377932352 199776536 485490126 485490126 371532868 371532868 473226516 473226516 243413732 243413732 295461021 993610361 993610361 572202353 730143962 730143962 740368653 740368653 1014752590 1014752590 976982294 976982294 972165467 108009843 383517906 765494718 852018387 852018387 526926189 921225180 921225180 639740210 711301696 711301696 583295675 474536126 474536126 881611170 881611170 339949066 339949066 298485464 323486898 360727896 360727896 518520984 518520984 234881036 234881036 836944073 836944073 566415937 542721025 542721025 170565316 194801120 194801120 179120452 587346001 596652096 596652096 580002385 565648064 440826388 487420042 487420042 369566860 608180234 608180234 805424480 805424480 550553789 1022500072 1022500072 862619005 630452841 128135544 128135544 58726072 53151664 51184656 40702080 3806976 3806976 463110483 805966357 857919795 857919795 831034704 170967828 370311448 370311448 527181184 959793325 959793325 1041810975 1041810975 693569582 151524904 119088696 919768188 962518695 1046200987 1046200987 390909114 896494634 925769019 925769019 856973961 889192491 1025771672 1025771672 325378095 392585605 392585605 524574783 824654115 824654115 538998840 598300753 598300753 174409296 1015075251 1015075251 564449575 1008784661 1008784661 739642368 739642368 604705688 673055240 696529408 696529408 268466218 557785641 557785641 1037098279 1037098279 1020451055 748254402 848470098 902854179 902854179 265028617 293764748 932853912 932853912 397918811 328212960 328212960 338902984 338902984 13896384 13896384 10347520 48049872 48049872 40030608 43248016 49265984 299197600 299197600 297025314 3253600 280226146 422750240 422750240 455828292 455828292 443778246 272903968 306744522 384568794 384568794 340574544 116792280 94445928 94445928 138799236 138799236 204997224 248388828 616464451 616464451 432353596 432353596 147187908 511165938 511165938 125486248 305402034 867834370 892343664 892343664 850531113 850531113 557766400 557766400 553912353 875859202 875859202 542688897 823677289 1063310749 1063310749 265763828 265763828 545844580 993125917 993125917 711580142 504359802 824505705 824505705 633465352 666973457 666973457 39358810 48891314 291652282 647186008 647186008 383492803 849333272 882061899 882061899 822224896 890376747 961059990 961059990 722761528 722761528 343965760 613494890 857600555 857600555 335719579 1028477227 1028477227 901016169 219332893 772021077 772021077 314084253 508319447 676070019 676070019 549733514 570478862 570478862 295734526 325058994 1002906955 1002906955 481042060 481042060 887094987 887094987 558623121 627537321 661641380 661641380 285001268 411092056 411092056 205077008 253011752 253011752 335784721 861217011 910388211 910388211 908298696 908298696 899747866 899747866 820459971 131296739 124188472 44952618 109720850 369673242 369673242 349081568 349081568 299682256 425741734 425741734 334008130 334008130 310562898 269169666 706318949 925677929 925677929 805650776 867314880 867314880 209658006 389096250 650643482 650643482 336877003 827480739 827480739 303041058 453365872 453365872 1070448702 1070448702 454610377 634828105 634828105 25838592 25838592 836806673 836806673 210762828 991503085 991503085 648685256 921513435 986388827 986388827 967268727 329605415 440549794 808472656 808472656 966845106 966845106 279325186 279325186 320867632 320867632 303438162 174328212 174328212 138678436 63275728 47212784 47212784 162529824 162529824 391283031 410537696 410537696 148745509 783569148 783569148 651257525 602314357 602314357 194032672 684943681 684943681 137382592 139993664 139993664 52701248 419993720 419993720 393169446 636690328 1014876138 1014876138 674800453 674800453 146929601 135319080 900412779 900412779 859318389 962067877 962067877 735915765 338155998 500263800 500263800 328350512 161785960 755779944 755779944 763016121 763016121 394397667 831005026 831005026 536892832 273122368 80887752 203625276 203625276 186461748 238433576 238433576 168432660 103055528 103055528 261379404 261379404 198446564 545550228 636435809 636435809 610349240 75609385 80054528 80054528 539013504 611502336 611502336 843416112 843416112 827714211 278376611 50788466 595808808 703457148 703457148 693631653 784244105 784244105 656165408 656165408 195683700 143280500 1033151009 1033151009 653648758 653648758 599092716 480891984 193153972 377250104 377250104 583751550 1011471503 1011471503 511244187 420070308 371277928 371277928 387109434 910198204 910198204 187170908 152142166 1000670638 1000670638 474524001 495454756 495454756 203473036 203473036 136915592 136915592 599333105 599333105 542521896 550247113 625814697 625814697 537025196 765219628 765219628 97997384 67371016 19927808 95861576 593775728 593775728 91502105 146348150 384771818 384771818 492840364 492840364 292686850 394393520 394393520 353770026 232067358 957278167 957278167 840693267 903381747 903381747 614004659 929046913 1060135106 1060135106 1032946156 993338166 993338166 857942279 857942279 1021972450 1021972450 925963503 990854463 1043051423 1043051423 1062261200 1062261200 1047675024 1047675024 646062104 646062104 613496328 279186208 301206498 301206498 175624496 260135020 260135020 258040672 258040672 133169572 226701952 226701952 197376060 158582692 219996244 219996244 189236520 128128056 117839928 370431968 370431968 277003480 451500923 934716886 934716886 1056824105 1056824105 889499582 528304171 880431140 968021119 968021119 200311619 184549396 184549396 203715764 256068764 333464601 333464601 251838868 567821839 567821839 236455452 755032112 785126141 785126141 458451093 421553373 346079562 852279713 852279713 960063263 1014047921 1014047921 976298767 363570514 872108540 872108540 593560204 593560204 864346474 864346474 689252901 689252901 949080084 949080084 949929030 949929030 901040522 893874980 647498044 482920529 679755776 679755776 173672660 1036279596 1036279596 1042463501 1042463501 327374884 612243468 883726120 883726120 831969891 791890007 982416988 982416988 441464978 928927340 947310605 947310605 786489693 147332880 147332880 140135568 38402832 37880576 217689688 217689688 290113225 821721621 821721621 689183905 595523207 831144323 919352447 919352447 305079347 252273024 654405889 654405889 728340528 1007134722 1007134722 2462092 742450208 742450208 742391949 560047276 186703905 764777089 764777089 595820959 824610875 824610875 825264172 848507475 848507475 682783598 624193280 891912745 891912745 424469390 760214268 828596325 860368029 860368029 939524103 939524103 927991484 1042477962 1042477962 992203653 826378668 436548762 979632556 979632556 277229888 485829930 485829930 436023270 342509836 864577010 864577010 655236153 881597531 881597531 480153286 638845608 638845608 601159295 538346168 813964353 902565099 902565099 780292096 780292096 150417412 622901736 622901736 551999945 114029784 114029784 92409960 92409960 135285760 135285760 42287616 15952032 678626408 764073069 913610223 988054302 988054302 785730032 256976729 575145105 575145105 666015816 900495393 916535666 916535666 833482083 587946414 846541077 846541077 543166393 682066368 775908236 775908236 1040369689 1040369689 1014965151 853198906 951195001 951195001 736288254 905702893 958924071 1042420792 1042420792 355082498 378346844 378346844 520652090 520652090 381543218 94924114 96478392 96478392 63177728 182205972 236719644 756811872 756811872 419446813 394912890 818462734 979419543 1047045123 1047045123 872488971 1047191158 1047191158 90014871 197829928 197829928 172981604 544087184 544087184 19261728 270647808 271655682 271655682 208945600 612641032 740508633 740508633 187844384 187844384 121151668 92865292 92865292 108529560 198247284 359476236 417597894 540123904 540123904 536920065 461942476 165226212 320146568 411307328 411307328 564674990 564674990 216160792 979145120 979145120 978213076 815402295 594026640 1068785636 1068785636 636145533 602526336 602526336 875000820 875000820 600833265 826726563 826726563 408991079 567014625 967524742 967524742 856871475 856871475 218141204 198328524 652741392 1018430919 1018430919 1032930950 1032930950 542247668 1057337173 1057337173 1060991101 1060991101 158521553 181453524 561821884 561821884 232804176 232804176 158993108 156403696 308006402 308006402 276587200 61541266 26589264 287285232 287285232 327289408 327289408 13256368 296619842 296619842 293215872 297311600 297311600 49987856 49987856 34068944 34068944 38347920 38347920 35724304 16905864 397572344 848141195 932997282 932997282 306987930 306987930 923456546 923456546 905855187 912076491 912076491 641686160 641686160 72002432 5381376 248973453 617312849 617312849 614184153 282214083 1024269910 1024269910 924585531 924585531 923870726 923870726 55321306 536872709 1032098847 1032098847 1015156815 776521896 1067095271 1067095271 781998773 999619361 999619361 814410636 1011764560 1050160551 1050160551 604124183 675817097 675817097 917688287 917688287 351831185 785568537 989866420 989866420 513870630 512963166 361792322 361792322 563118144 850440439 850440439 629873664 689362440 689362440 432013542 432013542 278978956 278978956 232866626 69304872 96152936 96152936 69404168 812233323 812233323 128979584 131121912 131121912 350369609 743626594 743626594 687265681 238027977 314630289 574734546 574734546 51580928 51580928 274838976 318082736 587725984 587725984 608913545 1059888787 1059888787 1025630511 1025630511 443338134 522082444 745674864 745674864 1043682007 1043682007 1071002695 1071002695 1051699727 1060430505 1060430505 794943933 726704904 473824226 690524212 1017982287 1017982287 890257040 466091507 537090305 554039712 1028926062 1028926062 573389883 521480766 1049482542 1049482542 910392768 910392768 612782870 868213322 891032418 891032418 712947313 719026391 719026391 986091714 986091714 818472017 818472017 921175954 921175954 636540154 850155857 850155857 639573971 625684617 625684617 873847528 873847528 557004264 609098889 822846037 822846037 889117400 960524311 960524311 743237264 743237264 137699128 100976664 146583808 365043586 365043586 530125308 530125308 377932352 199776536 485490126 485490126 371532868 371532868 473226516 473226516 479490746 479490746 295461021 993610361 993610361 572202353 730143962 730143962 740368653 740368653 496760430 591477932 976982294 976982294 972165467 641338640 641338640 383517906 109315723 77087256 389145402 921225180 1040353477 1040353477 656589087 67862552 67862552 9216 168853588 176177684 176177684 287909364 485176782 485176782 417453284 417453284 360727896 521640470 521640470 461257256 286068068 836944073 836944073 566415937 542721025 542721025 177812032 188882484 696787040 696787040 587346001 596652096 596652096 580002385 565648064 323290240 323290240 415534636 450551486 608180234 608180234 366260955 637735992 637735992 1022500072 1022500072 862619005 630452841 607265208 941374139 941374139 973019079 973019079 931215367 890195579 417124330 888834630 888834630 857919795 857919795 831034704 123782788 474801470 474801470 527181184 959793325 959793325 1041810975 1041810975 1067136290 1067136290 915028549 919768188 962518695 1046200987 1046200987 390909114 896494634 925769019 925769019 856973961 889192491 889192491 322200106 576151970 576151970 1059574074 1059574074 824654115 824654115 538998840 538998840 473192850 843421698 1015075251 1015075251 399819230 774548485 779886720 779886720 750652736 750652736 11869197 72944810 297537378 357901768 557785641 557785641 481359712 688117451 688117451 428547110 428547110 420688422 160609520 717176661 717176661 932853912 932853912 572228129 442060132 442060132 415776842 750542854 982153815 982153815 823323856 143608480 16850976 16785440 16850976 29892640 299197600 299197600 270314594 29461058 143225364 422750240 422750240 455828292 455828292 443778246 290141346 172977284 147206276 164803768 164803768 116792280 94445928 101593088 107488280 107488280 204997224 290842902 313618696 391629464 391629464 313066214 327364722 395720832 395720832 343167880 342985618 342985618 276424578 97359282 84934986 84934986 557766400 557766400 833356779 875859202 875859202 560370186 549095456 146554888 17044844 153141292 153141292 153133254 153133254 373377266 451755240 504359802 677654249 677654249 640365849 666973457 666973457 47060865 48891314 878186496 878186496 637579392 374655642 849333272 882061899 882061899 815663170 965906502 965906502 607357961 722761528 964286117 964286117 613494890 857600555 857600555 335719579 268185224 268185224 219332893 219332893 772021077 772021077 445157456 44189014 46840529 584537296 584537296 570478862 570478862 295734526 295734526 1002906955 1002906955 481042060 481042060 887094987 887094987 558623121 627537321 661641380 661641380 285001268 623960865 623960865 612583264 612583264 253011752 810088947 810088947 806783707 864344457 864344457 664261272 664261272 582501658 582501658 67158024 272652552 272652552 119746568 119746568 64230912 349081568 349081568 223403180 325225920 325225920 326186008 358662570 358662570 269169666 269171714 925677929 925677929 805650776 867314880 867314880 830487430 830487430 704068581 1024305035 1024305035 827480739 827480739 303041058 846312146 846312146 1070448702 1070448702 454610377 634828105 634828105 217302248 71994560 836806673 836806673 193463412 991503085 991503085 490733742 370678286 407598130 453216778 453216778 256241734 228960564 405080404 463784310 463784310 441291106 315749670 279325186 326884992 326884992 303438162 426915732 426915732 283672660 536240454 536240454 528488070 528488070 525866322 525866322 410537696 410537696 148745509 783569148 783569148 651257525 602314357 602314357 194032672 684943681 684943681 137382592 139993664 312493187 581772385 581772385 518088135 518088135 742190534 1014876138 1014876138 984387186 984387186 222016807 674264677 674264677 561263010 591212518 591212518 849730000 849730000 338155998 500263800 500263800 328350512 136403580 597934316 597934316 153227556 291321177 394397667 831005026 831005026 536892832 273122368 43391696 100023768 109512816 109512816 204029264 204029264 168432660 416941930 416941930 78828484 356127106 356127106 872317314 872317314 610349240 610349240 455439126 1039473852 1039473852 673706190 673706190 305515023 843416112 843416112 827714211 321147985 403362822 595808808 595808808 909611792 909611792 928977115 928977115 899493483 615558179 867249730 867249730 231933232 251344860 251344860 269666128 480891984 480891984 121321272 377250104 542749236 583751550 1011471503 1011471503 956408420 729866657 877228773 877228773 883999563 910198204 910198204 143729220 621060435 1000670638 1000670638 828417227 826811496 495454756 486572032 410902922 504367902 504367902 634493872 634493872 677591328 677591328 605926056 605926056 537025196 765219628 765219628 756782697 687656612 545606381 260227752 681250628 780745053 780745053 549003120 163488368 57058976 324012672 324012672 82282064 81303888 117440568 117440568 213420735 957278167 957278167 840693267 903381747 903381747 614004659 929046913 1060135106 1060135106 1032946156 993338166 993338166 857942279 857942279 455103904 455103904 440930588 440930588 1060193840 1060193840 1009378575 809084440 153285904 549189493 646062104 646062104 613496328 339747526 339747526 202969446 321137416 336613694 360949792 360949792 4268160 12847296 101047488 101661720 101661720 47958728 59509872 97008016 128128056 128128056 117839928 495507329 1052812935 1052812935 802291645 769977148 841377809 1056824105 1056824105 608840610 893337387 893337387 860468469 767422317 238263233 55498193 692765928 789244476 789244476 256068764 251838868 384832122 389071257 849160187 849160187 371208315 900926145 900926145 932448891 932448891 111198552 399003784 547964048 960063263 1014047921 1014047921 976298767 973604097 1043080223 1043080223 442731639 442731639 864346474 864346474 689252901 840545572 946070099 946070099 819012291 901040522 901040522 893874980 944523908 944523908 730615432 679755776 173672660 1036279596 1036279596 1042463501 1042463501 302424448 612243468 1047959272 1047959272 991194637 306002783 982416988 982416988 215713351 34998416 34998416 73728 163840 163840 356683442 356683442 353423928 353423928 336983340 222005008 232439960 232439960 224580012 189868064 89399444 60359304 42468432 41952336 75681864 109072400 109072400 2570496 33465680 553778745 553778745 156124200 604536997 604536997 757183748 757183748 604589096 764777089 764777089 595820959 824610875 824610875 1036042626 1036042626 848507475 871766985 871766985 973463578 973463578 424469390 760214268 760214268 280154946 839798614 939524103 939524103 927991484 1042477962 1042477962 992203653 826378668 631452009 979632556 979632556 387189348 485829930 485829930 509178396 595693586 864577010 864577010 738987021 738987021 806096908 806096908 638845608 638845608 207230604 538346168 538346168 122706433 167985352 780292096 780292096 709246154 924524238 924524238 844741656 844741656 667275288 667275288 809587768 809587768 1006868488 1006868488 874445831 874445831 764073069 913610223 988054302 988054302 785730032 256976729 575145105 663847968 663847968 900495393 916535666 916535666 833482083 587946414 565998355 565998355 543166393 320374184 775908236 775908236 997843639 1014965151 1014965151 907455298 640700824 841281682 841281682 818571084 958924071 1042420792 1042420792 145062944 379352176 379352176 353892906 127842362 36847480 68033088 70980584 70980584 125835952 125835952 106563080 615055624 615055624 419446813 394912890 818462734 979419543 1047045123 1047045123 872488971 1047191158 1047191158 527310348 527310348 826490787 880416075 880416075 1024861736 1024861736 828761476 406874160 66790608 261934224 612641032 740508633 740508633 187844384 187844384 142684228 136840452 136840452 680266821 797845249 834289243 834289243 904138092 904138092 461942476 461942476 915351232 915351232 977804011 1006666255 1006666255 597080761 660036209 660036209 513840084 110717550 347092770 805711872 805711872 338106627 335808522 602526336 602526336 336597866 417976399 647689868 826726563 826726563 459331016 945219970 957770047 957770047 1064372230 1064372230 286860343 748681327 748681327 734945294 963993868 1032930950 1032930950 551750331 1057337173 1057337173 1060991101 1060991101 158521553 181453524 181453524 39322112 175613504 175613504 57106496 290309920 290309920 11104512 9100352 9362496 19081536 19081536 8652864 304384176 304384176 30886336 309528192 309528192 270034944 274102769 590680419 590680419 561306305 537149504 288283267 909850395 909850395 277906361 633639720 835651569 835651569 629651027 332392456 269298690 46175346 923456546 923456546 905855187 912076491 912076491 283446665 117430528 117430528 121159744 248973453 617312849 617312849 614184153 282214083 1024269910 1024269910 924585531 924585531 923870726 923870726 735071248 176998493 1032098847 1032098847 1015156815 663356470 535563012 212209850 346051560 346051560 306813378 438394436 438394436 369660416 369660416 440485512 517609182 517609182 518360342 518360342 344343376 344343376 989866420 989866420 512963166 512963166 351409098 351409098 563118144 850440439 850440439 593706617 152901741 287342752 432013542 432013542 339853962 339853962 232866626 42644496 96152936 218481164 218481164 812233323 812233323 100325352 101782298 679939107 679939107 743626594 768328007 1050739941 1050739941 850531681 850531681 605164385 442124180 818644546 958071420 958071420 887829963 887829963 622318881 1059888787 1059888787 1025630511 1025630511 443338134 522082444 745674864 745674864 922359723 922359723 628108561 1051699727 1051699727 1060430505 1060430505 794943933 726704904 555817347 807897226 1017982287 1017982287 978813624 978813624 537090305 554039712 554039712 573389883 573389883 430365030 1049482542 1049482542 653293194 562949137 562949137 868213322 891032418 891032418 314656670 719026391 719026391 986091714 986091714 818472017 818472017 911927194 911927194 636540154 850155857 850155857 639573971 542376825 184062320 873847528 873847528 171569514 181617838 822846037 822846037 489302329 960524311 960524311 743237264 743237264 137699128 69209620 146349780 146349780 182331204 182331204 36378400 108325272 108325272 107334552 17178144 246549576 246549576 171843348 307499808 479490746 479490746 440150240 364010504 371234082 570839560 848628121 848628121 214435096 182452692 168371220 591477932 591477932 553921795 626790057 641338640 647889137 647889137 158106188 221301410 467978742 1055018256 1055018256 1040353477 656589087 404234917 587318423 587318423 477230537 908547634 908547634 474365134 485176782 485176782 417453284 417453284 172531794 521640470 673286720 697328096 700450853 700450853 151568420 184599600 684810240 684810240 177812032 188882484 696787040 696787040 579213393 42220176 42220176 689495040 689495040 323290240 323290240 415534636 667031697 667031697 881328730 881328730 637735992 637735992 650649890 787425868 787425868 607265208 607265208 941374139 941374139 973019079 973019079 931215367 890195579 417124330 888834630 888834630 676611352 104385677 105529520 123782788 474801470 474801470 858190618 858190618 847818850 847818850 573270939 1067136290 1067136290 915028549 963192231 963192231 963192231 1026854932 1044699943 1044699943 810735141 810735141 945210971 945210971 1062081713 1062081713 576151970 576151970 1059574074 1059574074 144704243 891490754 891490754 183546502 473192850 843421698 843421698 371349649 350257608 750204270 779886720 779886720 750652736 750652736 745872453 755054496 755054496 358163528 358163528 269125160 269125160 18503680 140186688 167789056 168870420 168870420 192662464 717176661 717176661 449917091 572228129 572228129 442060132 442060132 415776842 750542854 982153815 982153815 823323856 143608480 63998672 57702576 66485040 332289568 332289568 321479683 867475921 867475921 1000350544 1000350544 597865730 727234054 727234054 317198418 735431907 735431907 486693270 779643401 779643401 97076672 303037546 303037546 107488280 107488280 177023458 290842902 313618696 313618696 199746434 313066214 327364722 395720832 395720832 392311592 392311592 387979920 120011064 93530992 555557795 555557795 294471623 138928068 833356779 833356779 560370186 560370186 757874692 757874692 629968165 697044069 697044069 2371736 37822608 268449994 451755240 451755240 677654249 677654249 640365849 640365849 557851632 52793776 329942632 878186496 878186496 859443305 650772689 575145105 276843224 815663170 815663170 965906502 965906502 322997906 473761822 964286117 964286117 941994825 481315614 745677759 745677759 268185224 268185224 47370960 135247644 575520344 716816277 716816277 609807553 609807553 584537296 584537296 644207046 774162717 983082460 983082460 303892630 251135964 251135964 449793160 483326558 483326558 353930910 467674166 467674166 221906914 114308272 623960865 623960865 612583264 612583264 964041639 964041639 926191243 806783707 864344457 864344457 547438769 522590526 956750102 956750102 1060575885 1060575885 474335798 608506557 608506557 204513156 143884836 143884836 807848913 807848913 849319520 849319520 563641746 358662570 102686232 123713176 123713176 220210377 220210377 263522124 746586545 830487430 830487430 704068581 1024305035 1024305035 537609661 537609661 490873952 846312146 846312146 836651491 260225749 73449864 209201032 227838124 227838124 202623052 202623052 121960696 110119576 68033724 256513212 370678286 370678286 139754040 453216778 453216778 459711142 459711142 307356096 307382992 441291106 441291106 315749670 278082114 326884992 326884992 268580500 426915732 426915732 283672660 536240454 536240454 528488070 528488070 525866322 525866322 3595008 6736384 568083840 568083840 48249776 147282848 147282848 147104192 147104192 11657792 145376704 145376704 15486724 312493187 581772385 581772385 518088135 518088135 802686976 802950909 802950909 984387186 984387186 222016807 674264677 674264677 561263010 591212518 591212518 849730000 849730000 150474775 208798488 717625424 717625424 715232088 782393412 782393412 153227556 235934520 235934520 17391616 17391616 31531712 50686408 132744888 159774668 159774668 100927512 100927512 235762754 415615066 416941930 416941930 136103198 356127106 356127106 872317314 872317314 579652689 451209132 455439126 1039473852 1039473852 673706190 680923909 680923909 657643160 787749833 787749833 556175958 438995924 403362822 455355043 909611792 909611792 938782925 938782925 899493483 615558179 867249730 867249730 622655057 251344860 251344860 151831809 35660352 562173159 562173159 497604260 542749236 884081508 884081508 956408420 956408420 729866657 877228773 877228773 883999563 883999563 827494888 966983974 1051304963 1051304963 924855778 893429187 826811496 817940091 486572032 410902922 504367902 677162756 677162756 634493872 677591328 677591328 132110461 63125840 544489264 729485681 756782697 756782697 687656612 545606381 260227752 681250628 780745053 780745053 549003120 356273706 356273706 271240882 309109242 309109242 126911378 126911378 405023966 405023966 401160928 401160928 352131288 113651658 202060812 238910884 238910884 224421656 224421656 58720368 313879112 925390892 925390892 428487980 455103904 960419087 960419087 75405738 1060193840 1060193840 1009378575 171597835 110133218 110133218 496091944 496091944 202703372 339747526 339747526 271787052 321137416 336613694 360949792 360949792 162906136 71100880 165398336 165398336 159835844 159835844 152234500 152234500 134253216 33044968 96010816 495507329 1052812935 1052812935 802291645 606786825 923207002 1068180818 1068180818 633221159 893337387 893337387 860468469 767422317 1046909869 1046909869 1022519483 789244476 789244476 351386650 351386650 384832122 389071257 849160187 849160187 371208315 900926145 900926145 932448891 932448891 111198552 399003784 541131152 593520770 593520770 570690697 604317705 973604097 1043080223 1043080223 442731639 442731639 236234944 236234944 219908016 840545572 946070099 946070099 819012291 977527005 977527005 584420041 944523908 944523908 730615432 806572167 806572167 709927692 709927692 207786550 750177144 750177144 1015287298 1047959272 1047959272 1001394736 306002783 336529920 370992860 370992860 1062578408 1062578408 741293325 741293325 715395913 715395913 356683442 546111616 546111616 336983340 757626025 757626025 566465829 529480175 529480175 545909135 709414391 977935785 977935785 340760003 155721736 218157349 218157349 179208516 553778745 553778745 156124200 630289832 630289832 757183748 757183748 604589096 738211899 939834662 990628957 990628957 363441498 1036042626 1036042626 686864040 941935521 941935521 973463578 973463578 921732733 921732733 736414197 259277385 582690898 582690898 649506671 649506671 724515024 724515024 876442417 876442417 631452009 388419210 430287185 430287185 312242898 298713346 518188220 595693586 595693586 583602292 738987021 759824647 806096908 806096908 822942374 822942374 419764242 549684987 856261152 856261152 952889572 952889572 709246154 709246154 924524238 924524238 844741656 903217705 903217705 667275288 809587768 809587768 1006868488 1006868488 874445831 874445831 673405427 596116593 280339478 54526128 54528048 619882384 630193257 663847968 663847968 647620185 281502136 126403840 86094146 436843752 565998355 565998355 434929952 416074950 25215072 33270211 807198227 868734259 907455298 907455298 640700824 841281682 841281682 1024069026 1024069026 48694872 84725760 84725760 379352176 505103704 505103704 344894564 345055818 361771104 361771104 70980584 125835952 125835952 106563080 203445248 537031439 537031439 557030148 885664603 996270519 996270519 248783012 477441936 1065491350 1065491350 773478012 773478012 826490787 880416075 880416075 1024861736 1024861736 828761476 406874160 107062726 540558592 644384576 644384576 584358124 584358124 575310168 143196452 143196452 136840452 680266821 797845249 834289243 834289243 904138092 1016641400 1016641400 805228998 915351232 915351232 977804011 1006666255 1006666255 597080761 849330623 849330623 419128060 990185819 990185819 805711872 805711872 815853859 815853859 654434450 654434450 650879389 797585470 797585470 647689868 459331016 459331016 945219970 957770047 957770047 1064372230 1064372230 287729680 748681327 748681327 734945294 459764509 847967352 847967352 551750331 551750331 407897140 407897140 649991684 649991684 229776621 163582096 163582096 93231652 139334704 167812096 296519840 296519840 287645344 9695808 168561680 168561680 136499334 320913716 320913716 405752132 405752132 309528192 309528192 562611297 583963318 590680419 590680419 838284288 838284288 288283267 909850395 909850395 277906361 633639720 835651569 835651569 629651027 332392456 338727097 658539867 658539867 926712146 926712146 650397721 650397721 34288392 117430528 117430528 121159744 121159744 64794352 58002832 13184576 13184576 2720832 187746281 778882461 778882461 685035256 1002081390 1002081390 378164319 238426908 120461572 137629182 535563012 535563012 212209850 212209850 158125476 306813378 438394436 438394436 169792290 332059892 411210310 411210310 447943254 518360342 536445334 536445334 520890076 520890076 114297184 232816828 339817280 351409098 351409098 939528240 939528240 731931366 433160565 431229184 431229184 297806088 297806088 339853962 339853962 79740928 79740928 8572992 218481164 218481164 594242394 882862010 882862010 853737681 864127104 864127104 545788096 977916164 1050739941 1050739941 850531681 850531681 754428293 895714222 895714222 958071420 958071420 887829963 887829963 622318881 660893852 893752625 893752625 419430438 256507966 373948440 1047008382 1047008382 833095011 501225635 486343240 474029366 945349720 1015876317 1015876317 757288284 619362572 555817347 807897226 1006768143 1006768143 978813624 978813624 122714775 26493446 449628678 449628678 430365030 430365030 523341978 523341978 318644178 514301178 514301178 462944886 319047874 290406928 314656670 314656670 298900336 224475174 490260270 490260270 469899152 469899152 431036072 431036072 347813706 245685704 245685704 184062320 184062320 68614792 112203472 256953806 256953806 332133594 332133594 427633062 520404128 520404128 403060750 403060750 386777146 386777146 487208996 487208996 117966856 117966856 322580016 322580016 289393440 428292198 428292198 340325568 340325568 93062280 504439024 504439024 440150240 440150240 703476379 703476379 570839560 848628121 848628121 749748480 747684429 141243780 141243780 547881664 547881664 31334112 96212768 647889137 647889137 835063667 835063667 574228898 1055018256 1055018256 1011091599 1011091599 404234917 587318423 587318423 477230537 908547634 908547634 474365134 474365134 396114968 396114968 96939330 124076080 378053746 673286720 697328096 904527615 904527615 403993455 137024420 684810240 684810240 135382528 35753040 562229364 562229364 572791409 595599360 595599360 689495040 689495040 151458848 411715662 478450758 744098996 744098996 881328730 881328730 853573836 724312440 1021360633 1021360633 787425868 578426769 876684198 929946610 929946610 0 0 0 279314808 931219782 931219782 693760343 943162192 943162192 740298282 471056768 217517122 389467658 858190618 858190618 847818850 847818850 559940001 379184623 151044656 762062858 963192231 963192231 963192231 1026854932 1044699943 1044699943 924055197 924055197 945210971 1065597695 1065597695 1062081713 539990575 539990575 489791324 1035909716 1035909716 891490754 891490754 606210103 606210103 563452656 563452656 562825075 562825075 750204270 750204270 845731186 1024909028 1024909028 745872453 755054496 755054496 358163528 617399335 617399335 290365096 903328261 903328261 268707852 226856448 220032972 885674025 885674025 277349442 555986049 555986049 207482508 222638244 337343110 513994106 513994106 393775794 327816306 327816306 411042756 414230528 414230528 469069846 469069846 332289568 321479683 867475921 867475921 1000350544 1000350544 597865730 727234054 727234054 68732424 735431907 735431907 486693270 779643401 779643401 97076672 303037546 303037546 350109378 350109378 356465002 356465002 433336124 433336124 229901126 143919684 71763548 67122328 67122328 392311592 392311592 387979920 268636160 270347778 555557795 555868930 555868930 553986081 690497616 690497616 859570706 999984439 999984439 757874692 629968165 697044069 697044069 2371736 37822608 37822608 37814272 78939248 104519448 104519448 35386896 557851632 557851632 52793776 329942632 591566992 859443305 859443305 650772689 575145105 347434777 814004737 816618496 816618496 924484704 1037132837 1037132837 754649316 941994825 941994825 481315614 745677759 745677759 892379099 946422496 946422496 736519752 637814865 716816277 854811961 854811961 609807553 576410704 545940739 740379808 774162717 983082460 983082460 303892630 251135964 251135964 449793160 483326558 483326558 353930910 467674166 467674166 221906914 449421440 449421440 689465932 689465932 604920778 964041639 964041639 926191243 359166125 774391581 774391581 547438769 900338020 956750102 956750102 1060575885 1060575885 474335798 608506557 608506557 856761935 1003079613 1003079613 807848913 807848913 849319520 849319520 563641746 151349274 506512158 506512158 387440108 387440108 157705680 116466648 612448916 612448916 496187640 360124568 360124568 339029020 339029020 497434192 497434192 12459840 1579328 770040849 770040849 193275632 685557957 685557957 227838124 202623052 886320289 886320289 432614518 974928039 974928039 491913734 491913734 265689426 233968220 274962776 459711142 459711142 440638614 440638614 452481410 452481410 276870114 276870114 298687616 298687616 291905728 19927312 34771808 84935744 84935744 382019378 382019378 83627976 79430921 83988677 83988677 533940031 568083840 568083840 241993948 147282848 554534148 690350373 690350373 556583572 556583572 555122752 138820228 672479429 672479429 792586242 792586242 754813700 802686976 802950909 802950909 553961505 553961505 263316348 263316348 198036344 63489264 79612748 468313968 571536018 943329282 944768901 944768901 790825431 790825431 798179440 798179440 782393412 611447689 611447689 417695810 833178466 833178466 543000480 290817632 132744888 159774668 165155520 173284068 173284068 235762754 415615066 415615066 496238972 502794222 502794222 142131558 750256396 929578698 929578698 546727230 546727230 805882992 810474627 815832067 815832067 813959552 657643160 787749833 787749833 556175958 438995924 154609204 455355043 730305331 839147539 938782925 938782925 311208512 311208512 285338152 622655057 622655057 184834085 151831809 151831809 31596798 562173159 562173159 497604260 283817540 884081508 884081508 1033479336 1033479336 480892000 480892000 440438790 440438790 270030272 487108962 966983974 1051304963 1051304963 893429187 893429187 819545027 817940091 379683457 235774468 656440993 677162756 677162756 149245457 139493984 629784744 629784744 88138857 544489264 729485681 729485681 572481109 61076529 97273928 97273928 108053464 120340528 120340528 191170998 356273706 356273706 271240882 309109242 318890034 318890034 126911378 405023966 405023966 387580608 352131288 781486699 781486699 499578526 499578526 442351826 1030300972 1030300972 574369353 599203681 925390892 925390892 428487980 428487980 960419087 960419087 457371566 969620379 1019604544 1019604544 525490712 880855754 880855754 696566400 1061313240 1061313240 276824130 271787052 271787052 152044068 152044068 194341456 266406528 266406528 71100880 165398336 165398336 159835844 159835844 152234500 152234500 134253216 33044968 96010816 96010816 24612000 78378312 78378312 19781928 923207002 1068180818 1068180818 757764652 757764652 672444450 655849523 675547269 1046909869 1046909869 1022519483 668416761 235939690 351386650 351386650 653987128 846118432 846118432 847420176 930404778 930404778 329092380 498197358 783412846 783412846 782102109 541131152 593520770 593520770 457566378 520407102 780666237 780666237 506315806 252558408 193122420 498611496 498611496 342561954 453100544 453100544 294242358 583891097 977527005 977527005 960759975 960759975 520185080 520185080 806572167 806572167 709927692 1054116162 1054116162 858048819 958681629 1015287298 1015287298 1001394736 1001394736 605095253 605095253 370992860 370992860 1062578408 1062578408 741293325 741293325 715395913 715395913 222706480 546111616 546111616 133243896 757626025 757626025 566465829 529480175 529480175 545909135 709414391 977935785 977935785 340760003 155721736 659593904 659593904 179208516 836919554 836919554 826331369 907068571 1029228047 1029228047 530277271 732498806 738211899 939834662 990628957 990628957 956572044 754318451 686864040 686864040 941935521 941935521 806833190 465484832 921732733 921732733 736414197 467889623 858222245 858222245 494267828 494267828 641410542 641410542 876442417 955423379 955423379 603450148 514202351 1052770975 1052770975 298713346 518188220 541133376 564163797 1071376249 1071376249 759824647 759824647 738789471 822942374 973277233 973277233 1067524443 1067524443 936390624 952889572 952889572 818098371 739030125 562709571 285704194 285704194 903217705 903217705 278137410 105456792 134221824 546848336 570898449 570898449 585434118 585434118 1015315002 1017193744 1017193744 539438912 865029369 865029369 630193257 386572200 822746195 848172067 848172067 361444458 419607729 666948281 978337834 978337834 730160256 966320631 966320631 495189679 276093972 907147508 907147508 609610377 609610377 1007557636 1024069026 1024069026 48694872 78902088 354854734 498228522 505103704 505103704 344894564 345055818 361771104 361771104 30481976 119415520 334313458 334313458 560213428 572131204 572131204 557030148 1061870367 1061870367 996270519 497345302 497345302 1065491350 1065491350 1068620368 1068620368 320224136 885876952 885876952 907108890 907108890 1032064163 1032064163 403516422 927328278 927328278 644384576 584358124 584358124 575310168 145753152 143196452 184680572 184680572 858887796 883447625 883447625 683222853 1016641400 1051352068 1051352068 609404946 780940472 780940472 434678460 451937238 451937238 849330623 849330623 419128060 990185819 990185819 236786698 589385762 815853859 815853859 654434450 654434450 650879389 797585470 797585470 498209646 235423040 37880840 33604624 251693056 251971644 251971644 68174644 287729680 320289330 320289330 370778624 370778624 573047982 573047982 142124723 192553770 407897140 407897140 688179725 688179725 571622637 571622637 596644865 807014992 826675763 831425136 831425136 296519840 303223314 303223314 287230530 997087477 997087477 545833139 957242883 957242883 405752132 309345858 197152418 562611297 583963318 583963318 320527412 838284288 838284288 138709396 472907022 472907022 286420780 391954566 415499306 487941140 487941140 1015287869 1015287869 658539867 658539867 926712146 926712146 907617550 1010338965 1010338965 702166669 702166669 706488962 706488962 497792332 505026078 505026078 440916692 251673872 251673872 71378936 67108872 8 1002081390 1002081390 378164319 238426908 120461572 487861804 487861804 475211618 475211618 276222784 293675106 293675106 131540744 20539680 80982888 95646408 95646408 66077576 125347600 201664524 536445334 536445334 520890076 520890076 114297184 272728084 424796328 424796328 158385060 939528240 939528240 470860302 211162476 431229184 431229184 346819914 294487296 92808352 76660776 79740928 79740928 101845016 101845016 168535136 594242394 882862010 882862010 853737681 864127104 864127104 561197316 977916164 996798622 996798622 755970169 755970169 962305122 1028594570 1028594570 498784160 580540032 850089489 850089489 641663066 660893852 660893852 638038403 923009695 923009695 843186943 1047008382 1047008382 833095011 624217092 486343240 470976846 971465486 1015876317 1015876317 378325015 514199834 730754014 1001331067 1001331067 957688359 845541819 623016289 196196659 117811256 449628678 449628678 908347581 908347581 832930944 907018370 907018370 967471295 993624081 993624081 728761412 728761412 685682996 685682996 54722608 54722608 490260270 738359211 825852847 825852847 431036072 1058161833 1058161833 90404578 258048 62496208 68614792 68614792 112203472 256953806 256953806 332133594 332133594 427633062 520404128 520404128 403060750 403060750 386777146 386777146 487208996 487208996 406732550 406732550 322580016 322580016 289393440 428292198 428292198 340325568 340325568 93062280 504439024 504439024 356843648 356843648 703476379 746292201 746292201 1045503942 1045503942 749748480 747684429 390747416 915035466 915035466 682119457 904954859 904954859 549458216 296010378 835063667 891180552 891180552 872989707 1006684288 1011091599 1011091599 469885636 349176522 163119168 163119168 76158024 23598080 23598080 43678136 90262784 90262784 52396568 16912416 329483008 329483008 526811267 904527615 952455598 952455598 438366609 673817436 673817436 237206988 237206988 83211268 541268048 572791409 595599360 595599360 595857952 595857952 169797152 411715662 478450758 744098996 744098996 656283161 853573836 853573836 724312440 1021360633 1021360633 695987140 557296385 876684198 929946610 929946610 766002535 766002535 914529121 914529121 950315838 950315838 864229445 943162192 943162192 740298282 471056768 217517122 389467658 809449930 890494985 890494985 100003272 100003272 691936214 819758495 852644956 852644956 501111154 612271408 612271408 576378513 208407552 924055197 924055197 851693715 1065597695 1065597695 426149396 692787680 692787680 575804049 1062629622 1062629622 891427083 537270273 608708646 608708646 256651579 422713890 562825075 562825075 393218716 553404588 845731186 1024909028 1024909028 675727364 31007914 298394850 350522250 617399335 617399335 358213290 903328261 903328261 268707852 226856448 220032972 885674025 885674025 501594692 555986049 555986049 492572334 410340356 410340356 513994106 513994106 393775794 327816306 327816306 411042756 428684096 428684096 469069846 469069846 281240098 139196244 302701776 308196370 854167508 854167508 146822161 44056912 44581200 44581200 92427336 110639200 119488056 119488056 93040712 93040712 84025344 337585164 350109378 350109378 356465002 356465002 433336124 433336124 229901126 143919684 451812822 451812822 439364800 319111954 319111954 52605186 268636160 270347778 277747778 555868930 555868930 694741696 701562533 701562533 859570706 999984439 999984439 950380914 798006909 798006909 86510225 757402900 790890813 790890813 555758876 372065309 372065309 589869833 642879745 642879745 105923625 580579091 666335339 666335339 591566992 857550387 857550387 395802088 347434777 555758360 816618496 816618496 924484704 1037132837 1037132837 754649316 5246464 10526976 69087688 296850080 434853698 892379099 946422496 946422496 736519752 637814865 993441656 993441656 854811961 365359778 116412624 268974082 740379808 757385517 825000110 825000110 213008644 213008644 162264836 337748260 352370730 360484858 360484858 130225464 130225464 129603024 449421440 632416041 689465932 689465932 548922985 78593352 86521193 598294642 883028225 883028225 774391581 432683936 900338020 900338020 747160653 1014390325 1014390325 977392002 21574042 556909582 856761935 1003079613 1003079613 539043081 621012664 621012664 55944504 87115856 151349274 506512158 506512158 387440108 387440108 193507949 172101780 324274382 626142124 626142124 668108484 668108484 794096520 794096520 594592689 563085921 563085921 358097930 770040849 770040849 193275632 685557957 685557957 118769772 100772552 886320289 886320289 432614518 974928039 974928039 491913734 491913734 390409138 438401938 438401938 314484826 314484826 440638614 440638614 452481410 452481410 304283680 276870114 298687616 393742664 393742664 312937346 51129634 84935744 285369610 382019378 382019378 83627976 79430921 83988677 83988677 604111062 604111062 871242760 871242760 702810597 554534148 690350373 690350373 731192304 731192304 555122752 138820228 966914022 966914022 792586242 792586242 754813700 641633442 933708603 933708603 891389299 580692291 263316348 545781336 577165713 588362867 588362867 917128297 917128297 943329282 949349412 949349412 790825431 790825431 798179440 798179440 636799977 984619815 984619815 645059481 833178466 833178466 1017407822 1044169359 1044169359 846317296 512126080 345653440 227143720 159476736 159476736 143077080 496238972 502794222 502794222 142131558 1017651618 1017651618 929578698 718474900 718474900 805882992 818576401 818576401 815832067 813959552 695125360 269009922 370024296 370024296 160347012 154609204 28837728 28837728 890732560 973339237 973339237 687948389 687948389 746924109 790521429 790521429 25220165 270278405 338107654 874770699 942810511 942810511 979510623 1008796745 1008796745 606601612 1033479336 1069564096 1069564096 909117161 795399428 110232112 108738456 145864448 606191628 606191628 548956556 206834964 775160073 775160073 110761560 210240456 210240456 656440993 656440993 218711344 218711344 121947104 629784744 629784744 124070328 585443600 585443600 602161656 602161656 120326265 97273928 97273928 108053464 120340528 120340528 11013312 11013312 2771600 36363664 277362528 318890034 318890034 115665800 276177720 276177720 167022702 528719688 781486699 781486699 499578526 499578526 442351826 1030300972 1030300972 574369353 599203681 599203681 472712982 472712982 210909404 389250970 457371566 457371566 969620379 1019604544 1019604544 957121753 880855754 880855754 807396080 1061313240 1061313240 276824130 29360290 471867670 533004308 533004308 459479248 459479248 266406528 121837784 35349504 39320208 44159184 44159184 37014288 51943232 51943232 16669408 401615498 513658379 1058961967 1058961967 718912541 188323549 412343144 412343144 273071719 757764652 757764652 421001766 599214546 675547269 708874644 708874644 701921688 668416761 807536320 807536320 644957811 653987128 846118432 846118432 847420176 930404778 930404778 394603692 498197358 1038429524 1038429524 982066263 707278185 608636035 560013729 591463201 591463201 588251697 442247349 302588946 361493610 523392046 523392046 498611496 409552050 409552050 50511992 311084222 403229716 403229716 944179300 960759975 960759975 520185080 520185080 353732696 353732696 310452306 1054116162 1054116162 858048819 958681629 958681629 989508002 989508002 261318428 605095253 771926365 771926365 136526429 738064236 763534124 763534124 649348177 681595333 681595333 429209010 886968576 886968576 431434617 150995872 301753352 495315054 495315054 406064898 835731022 835731022 651090128 651090128 67177240 91271136 659593904 659593904 562926625 836919554 836919554 826331369 907068571 1029228047 1029228047 530277271 732498806 732498806 893644971 893644971 956572044 956572044 754318451 742467136 685245133 684720837 481055234 481055234 116474922 116474922 89434192 275041858 467889623 858222245 858222245 1071789907 1071789907 641410542 641410542 566965473 955423379 955423379 603450148 514202351 1052770975 1052770975 435168570 355290504 541133376 564163797 1071376249 1071376249 311317584 311317584 34068834 439629616 973277233 973277233 1067524443 1067524443 936390624 936390624 819729483 818098371 739030125 84556971 285704194 285704194 35470418 278137410 894435386 894435386 105456792 932724268 1006841871 1006841871 585434118 585434118 1015315002 1017193744 1017193744 539438912 865029369 865029369 386572200 467807792 822746195 848172067 957114719 957114719 419607729 666948281 978337834 1014206298 1014206298 966320631 966320631 995711037 995711037 953676496 907147508 822997222 674374938 1007557636 1007557636 681686024 681686024 673814609 354854734 597731423 597731423 42742832 16781536 16781536 704722948 704722948 700975136 562697094 968703060 968703060 560213428 572131204 572131204 542131802 1061870367 1061870367 638508057 497345302 497345302 373293210 629151846 1068620368 1068620368 975099075 975099075 885876952 907108890 907108890 1032064163 1032064163 403516422 927328278 927328278 302573753 33953808 9574416 145753152 145753152 127927412 184680572 749150217 858887796 883447625 883447625 683222853 765944838 1051352068 1051352068 143231296 460652964 460652964 434678460 451937238 451937238 436990624 352272986 392436160 392436160 327256338 327256338 137104644 201988360 270973252 270973252 251871692 65270256 506655260 506655260 498209646 406847626 339775668 624768058 758521865 758521865 722772507 628249522 628249522 910824603 910824603 849131536 849131536 548869650 204657420 204657420 525021191 525021191 359574799 688179725 688179725 571622637 609374868 609374868 807014992 826675763 831425136 831425136 277905440 303223314 303223314 287230530 997087477 997087477 545833139 957242883 957242883 336823951 290539152 315117184 315117184 311741010 102748178 223809104 223809104 138709396 222886183 1021639943 1021639943 317569505 391954566 406900410 426906534 426906534 1015287869 1015287869 960634114 694947237 644924313 644924313 907617550 1010338965 1010338965 702166669 702166669 706488962 706488962 497792332 505026078 505026078 440916692 251673872 510470337 950382975 966712583 966712583 341595271 881739802 881739802 127835176 840711576 878774392 878774392 475211618 475211618 276222784 293675106 293675106 78453914 113510616 292497354 292497354 390669498 390669498 271759351 535838849 535838849 535888081 535888081 982065378 982065378 639730902 639730902 604554249 158385060 909164786 909164786 593531242 901302347 901302347 875205992 346819914 294487296 92808352 52454208 52454208 47190640 101845016 101845016 168535136 142217842 142217842 558066000 843086423 976360215 976360215 561197316 419650565 474690702 718028174 719848917 719848917 962305122 1028594570 1028594570 806449607 806449607 850089489 850089489 641663066 641663066 837893104 837893104 923009695 923009695 885150036 885150036 618026379 624217092 624217092 426883302 426883302 1012434475 1012434475 842345497 996351619 996351619 930495772 1001331067 1001331067 1052551007 1052551007 1015541519 196196659 117811256 715995788 715995788 908347581 908347581 832930944 1029300986 1029300986 967471295 993624081 993624081 728761412 728761412 685682996 685682996 54722608 302089116 320050585 738359211 825852847 825852847 307294852 1058161833 1058161833 738855949 675601425 538892453 405295141 288193570 270757120 104923136 69280240 130023672 268514432 340276354 340276354 7549824 402850304 402850304 487788962 487788962 343810956 472255658 472255658 406732550 270483010 44719712 36198976 42066000 42066000 34197248 45142864 45142864 83903248 83903248 356843648 356843648 422651904 746292201 746292201 1045503942 1045503942 582484571 582484571 390747416 915035466 915035466 682119457 904954859 904954859 549458216 296010378 296010378 891180552 891180552 872989707 537968651 406848647 469885636 838198242 838198242 675341374 675341374 743441494 743441494 84752222 67508232 297092138 297092138 274558864 110085128 329483008 673891536 719458773 719458773 952455598 952455598 438366609 975934425 975934425 237206988 237206988 83211268 541268048 541268048 47186497 50530928 582153284 582153284 169797152 169797152 191371245 575542976 575542976 545726656 545726656 12662849 540337128 540337128 695987140 695987140 122639869 53527056 870893308 870893308 766002535 766002535 914529121 914529121 950315838 950315838 864229445 864229445 262656640 306918400 306918400 405460230 431695458 431695458 890494985 890494985 364955338 824204927 824204927 819758495 852644956 852644956 151029296 612271408 612271408 606866697 545817888 1056700383 1056700383 125752959 415318176 626651174 626651174 692787680 692787680 685132292 1062629622 1062629622 639998126 639998126 608708646 608708646 153164971 422713890 422713890 216532428 752355052 752355052 88098117 21022376 98095296 98095296 31007914 298394850 350522250 350522250 428905188 428905188 270049448 165401228 421422216 421422216 295873328 295873328 221909186 501594692 501594692 492572334 492572334 410340356 410340356 394273434 394273434 378273146 288262978 26924640 404381092 428684096 428684096 29663232 29663232 5317248 284172353 874841155 886836939 886836939 877955880 877955880 586034530 586034530 236578332 542159549 542159549 119488056 830997321 830997321 110965280 286738554 337585164 337585164 135266820 135266820 321127520 396625272 396625272 390595944 390595944 451812822 451812822 439364800 319111954 319111954 52605186 272074880 272074880 565519075 823846949 958213671 958213671 805762725 701562533 555479653 145433697 950380914 950380914 798006909 798006909 86510225 757402900 790890813 790890813 555758876 372065309 372065309 589869833 642879745 642879745 275444144 580579091 666335339 878744882 878744882 857550387 857550387 61416816 100861040 588486728 588486728 437043422 437043422 487720788 530128826 530128826 34867728 407178778 407178778 360241540 434853698 434853698 366266920 366266920 8388672 681960656 993441656 993441656 311461440 302564370 35178000 35651920 148972672 148972672 136840452 49881984 49881984 134217728 134217732 337748260 352370730 360484858 360484858 92523134 529742390 529742390 344238640 632416041 632416041 548922985 548922985 390484736 168860800 598294642 883028225 883028225 92692520 432683936 577774352 577774352 747160653 747160653 977392002 977392002 138479398 993531312 993531312 656086613 615126345 571854400 763398268 763398268 772285960 772285960 117994336 117994336 141158816 229089912 229089912 193507949 172101780 349243546 626142124 626142124 668108484 668108484 794096520 794096520 943942008 943942008 563085921 987041272 987041272 658777100 658777100 794947005 794947005 642125097 642125097 681574725 681574725 622903404 290981434 180422790 425011878 425011878 390409138 438401938 438401938 354580986 401051946 401051946 46681586 284070288 304283680 304283680 86077722 42180896 393742664 393742664 373887008 356122682 338175936 285369610 285369610 275518888 287313034 287313034 1059195062 1059195062 864426099 604111062 871242760 871242760 702810597 634016576 634016576 561698721 731192304 731192304 53163312 53163312 966914022 966914022 594861489 449782871 21586976 641633442 933708603 933708603 891389299 580692291 143563664 545781336 577165713 588362867 625792552 917128297 917128297 735392802 949349412 949349412 416598726 357859436 58879280 259937365 636799977 984619815 984619815 645059481 291659266 488223490 1017407822 1044169359 1044169359 846317296 512126080 345653440 227143720 159476736 437927954 437927954 450703062 450703062 450703062 396223048 1017651618 1017651618 295244195 718474900 718474900 537333760 818576401 818576401 425069412 695125360 695125360 64242967 1026158254 1026158254 368151322 368151322 236719340 29377098 890732560 973339237 973339237 687948389 687948389 746924109 790521429 790521429 25220165 270278405 407291016 874770699 942810511 942810511 979510623 1008796745 1008796745 606601612 149201220 1069564096 1069564096 909117161 795399428 104498672 68403800 250940680 250940680 177744772 177744772 146607760 150939352 150939352 215423456 228680364 228680364 25606284 10750272 689801585 689801585 682456904 682456904 227496756 227496756 585443600 585443600 656427312 656427312 579110929 553683056 14698376 525312 6841376 6841376 25774304 51924848 51924848 57468000 57468000 278818018 278818018 201774268 293150488 486274742 486274742 528719688 528719688 75905078 251670092 923387914 923387914 691535896 691535896 469841954 237771614 306758802 472712982 472712982 273941352 367266282 367266282 135828104 135828104 863625532 957121753 957121753 363965723 807396080 807396080 445259443 402686082 276824358 322027472 471867670 533004308 533004308 480907524 480907524 136714464 121837784 33751072 7740288 29491712 29491712 32623072 32623072 26479200 16669408 401615498 513658379 1058961967 1058961967 718912541 881723508 1057625151 1057625151 273071719 1060545620 1060545620 730932839 772833973 772833973 963734405 963734405 492200583 340972170 807536320 807536320 644957811 596155457 353201514 639388704 639388704 388794163 374149546 394603692 394603692 1038429524 1038429524 982066263 707278185 608636035 560013729 591463201 591463201 588251697 442247349 439477658 361493610 523392046 523392046 314307314 409552050 409552050 505552916 505552916 1049099725 1049099725 851757267 704901141 704901141 454295622 454295622 328802980 306250240 178134612 698685796 698685796 195439061 138292584 138292584 665467944 665467944 201734216 570753092 771926365 771926365 136526429 262160709 763534124 763534124 649348177 789257564 1040503050 1040503050 886968576 886968576 745646770 745646770 855492689 910551195 910551195 906521728 835731022 835731022 687677653 667718197 763111076 763111076 764055589 764055589 562926625 562926625 567134521 863423481 863423481 854140371 854140371 68156424 477082812 556373386 893644971 893644971 994825305 994825305 747234696 742467136 685245133 684720837 481055234 481055234 116474922 116474922 89434192 275041858 449755584 847913366 847913366 1071789907 1071789907 270582018 312088146 557000289 557000289 157409700 280339172 280339172 646209731 646209731 754206989 754206989 368834220 368834220 304876818 304876818 311317584 311317584 302665748 439629616 439629616 60228388 178731348 178731348 387062336 387062336 361212522 295454634 568476193 568476193 94408808 345037506 936830691 936830691 894435386 894435386 165647912 932724268 1006841871 1006841871 718215873 567027765 336966529 396525616 881345344 881345344 362511339 295097354 326680528 467807792 467807792 419381190 957114719 957114719 285646884 243990581 900123435 1014206298 1014206298 840056550 383635262 995711037 995711037 953676496 822997222 822997222 674374938 841796883 841796883 841692435 891953208 891953208 330094972 597731423 1045809537 1045809537 772825137 789916221 789916221 704722948 700975136 562697094 968703060 968703060 957285136 957285136 474628992 474628992 242746526 182766036 250370496 250370496 111411608 111411608 75502912 75502912 76570199 975099075 975099075 878346304 1057194343 1057194343 613626441 613626441 211230792 211230792 706582241 706582241 773793296 773793296 671651504 47487636 144253200 196745076 749150217 749150217 597759608 429230692 438554912 765944838 875103657 904838466 904838466 734449807 503448076 526751084 1000007745 1000007745 352272986 352272986 279224888 56460480 327256338 327256338 474484934 474484934 512576536 512576536 566898791 566898791 358102626 607212049 958104880 958104880 929711265 624768058 758521865 758521865 722772507 628249522 683166275 910824603 910824603 849131536 861459584 861459584 950601189 950601189 896562723 525021191 529268872 529268872 541696 202379912 609374868 609374868 287834144 287834144 296256802 296256802 279496002 294699618 294699618 269765314 320374528 415026100 466667314 466667314 457180976 290539152 290539152 528621016 528621016 311741010 727629951 727629951 474990706 160788209 928066410 1021639943 1021639943 317569505 745821933 745821933 426906534 749510746 749510746 960634114 960634114 823001735 894573095 940958370 940958370 791676528 764937837 67274605 45725272 76021984 517818389 637583875 657514611 657514611 497862254 363176281 1056899451 1056899451 966712583 966712583 412861567 881739802 884757321 884757321 854650968 904835368 904835368 279490656 279490656 320996354 320996354 274727298 78453914 113510616 292497354 350667216 411355206 411355206 271759351 535838849 535838849 535888081 706348870 982065378 982065378 639730902 639730902 604554249 396095666 909164786 909164786 593531242 901302347 901302347 875205992 84595752 216605156 216605156 203997484 249562044 249562044 226956076 226956076 202562924 611908352 1029080744 1029080744 589431334 976360215 976360215 420483377 90231242 474690702 718028174 719848917 719848917 472124635 270805410 270805410 806449607 806449607 406247886 406247886 209043925 287746580 837893104 837893104 843317504 845416851 885150036 885150036 567542813 567542813 718866842 862003635 862003635 1012434475 1015582824 1015582824 996351619 996351619 930495772 930495772 1004208408 1052551007 1052551007 1015541519 76675175 550190537 715995788 715995788 690175935 641800563 906768932 1029300986 1029300986 214640223 624795568 624795568 58617641 0 170274612 170274612 35909904 455783728 455783728 242245650 1007166598 1007166598 1012007552 1012007552 873104922 738855949 675601425 538892453 405295141 537521424 554391848 554391848 218768500 130757880 382279812 423833766 423833766 962605069 962605069 207631274 1028989109 1028989109 961089699 961089699 688463014 688463014 554110116 52447744 43043632 42066000 42066000 34197248 45142864 45142864 83903248 83903248 88150256 352387232 352387232 277096448 81006666 305400132 305400132 209780736 141041740 180946180 180946180 444825906 444825906 276868146 276868146 1181216 227728947 1065359487 1065359487 274744133 122733240 967328673 967328673 808901379 838198242 838198242 675341374 675341374 743441494 743441494 171517716 268899595 946096133 946096133 944853917 591431302 325993778 673891536 719458773 719458773 530314878 704141013 704141013 975934425 975934425 177848849 1049088 473088 33892992 33892992 25187392 25187392 25187392 25187392 17486880 81006896 191371245 775029013 775029013 143655348 679698533 679698533 71613952 71613952 202687464 547884200 679266052 679266052 873497984 873497984 558368686 389022720 364676176 364676176 315264174 260297814 218423716 262656640 262656640 305805476 305805476 405460230 431695458 431695458 630194889 630194889 364955338 824204927 824204927 607149545 344771626 356517130 356517130 606603264 1067603452 1067603452 545817888 1056700383 1056700383 125752959 399330503 626651174 626651174 390455312 1011091598 1011091598 685132292 289521800 639998126 639998126 913121574 913121574 726535824 235749271 393219866 393219866 752355052 752355052 305993378 986061332 986061332 713463956 51414864 43356864 290925600 290925600 428905188 428905188 165337260 165401228 421422216 421422216 344413952 1017069087 1017069087 226192588 762170296 769704429 769704429 567172364 307864320 394273434 394273434 378273146 220731772 259268716 259268716 288438304 288438304 247754972 354728386 354728386 292650338 874841155 886836939 886836939 877955880 877955880 586034530 889222188 889222188 542159549 542159549 523578794 830997321 830997321 110965280 286738554 286738554 39421024 17875488 421795328 421795328 396625272 396625272 390595944 390595944 306448530 306448530 108428546 73897856 21656992 21209472 272074880 272074880 565519075 823846949 958213671 958213671 805762725 693183012 585357492 595800177 595800177 194988377 618973641 618973641 121930097 8614984 8614984 25707536 33764448 37798032 37798032 41992272 95010992 95010992 275444144 275444144 275436930 878744882 878744882 877200976 877200976 655171833 613231689 588486728 588486728 437043422 437043422 487720788 530128826 530128826 34867728 407178778 490280640 490280640 341273476 341273476 366266920 673013189 717901461 717901461 681960656 858864457 858864457 302564370 35178000 298654866 651256688 763674673 892437550 892437550 49881984 206569976 237256996 237256996 110414204 328720980 328720980 92523134 529742390 529742390 344238640 344238640 305193788 274015552 390484736 390484736 339760942 339760942 1028707045 1028707045 839655102 767879937 1070415674 1070415674 797002654 756516157 725295280 725295280 417283782 993531312 993531312 656086613 615126345 571854400 763398268 763398268 772285960 772285960 86171948 138485892 154149792 154149792 257432252 257432252 107236044 349243546 349243546 43330128 22370448 648693056 788780732 788780732 943942008 943942008 587404672 987041272 987041272 658777100 658777100 794947005 794947005 642125097 642125097 681574725 681574725 622903404 2374400 12392768 12392768 18554144 507387172 507387172 388633914 354580986 401051946 401051946 279931786 417490896 417490896 295204742 285246664 286791200 348201386 373887008 373887008 356122682 338175936 56735232 17176608 275518888 287313034 287313034 1059195062 1059195062 864426099 260969479 67769352 67769352 67244040 634016576 634016576 561698721 588769601 946077520 946077520 866259315 850648597 722418741 705310113 1004267394 1004267394 463253060 463253060 891771051 932061456 932061456 923569513 844565824 172481600 34609280 757469268 757469268 176298285 43016272 942719568 984736599 1058404967 1058404967 58879280 51170352 44427600 52856832 52856832 25639008 17994752 10485312 12919584 32771040 42134592 264827688 264827688 143241764 110789672 110789672 437927954 437927954 450703062 450703062 450703062 396223048 230695432 588122113 588122113 484121688 484121688 345312644 619472256 619472256 425069412 896864872 896864872 788978315 1026158254 1026158254 889506844 889506844 1053178123 1053178123 785524324 785524324 1018254902 1018254902 772620893 772620893 739249665 345527880 345527880 873598986 873598986 872550411 814761856 814761856 337815050 740298250 984982878 984982878 149201220 42652752 120900484 141871928 200363148 200363148 160573040 250940680 250940680 67512456 780189789 780189789 660792397 724583077 724583077 228680364 228680364 631061537 698175669 698175669 689801585 682456904 682456904 227496756 227496756 154796116 154796116 656427312 656427312 579110929 553683056 109053184 205030236 205030236 219395916 219395916 127619716 102668120 258326636 258326636 278818018 278818018 201774268 293150488 486274742 486274742 379118056 846537115 846537115 759611900 923387914 974465559 974465559 840247868 806288955 872886283 872886283 442156178 442156178 277748416 367266282 367266282 62261842 67240480 636036576 636036576 541360255 344982090 344982090 138987214 402686082 402686082 276824358 322027472 322027472 322703138 380568698 480907524 480907524 94384320 94384320 24472000 16067520 29491712 29491712 32623072 32623072 17976064 23217120 88324040 99277544 99277544 102423616 839536268 881723508 1057625151 1057625151 1028032000 1066061838 1066061838 730932839 1064557453 1064557453 1027961777 963734405 705948072 705948072 539558104 542191393 542191393 123544459 353201514 639388704 639388704 388794163 493496923 493496923 376163206 944277359 944277359 632686370 660830936 660830936 859849320 996188269 996188269 942128142 942128142 439477658 427938952 289665186 379814088 379814088 33603888 19447840 505552916 505552916 1049099725 1049099725 851757267 704901141 704901141 287070816 328107104 328107104 178134612 178134612 177867376 296036490 568931984 656316547 952550575 952550575 665467944 201734216 260497520 510871368 510871368 435473640 1007545856 1007545856 580462161 576270073 789257564 1040503050 1040503050 713031765 453759873 745646770 745646770 855492689 910551195 910551195 906521728 730084568 730084568 687677653 667718197 763111076 763111076 764055589 764055589 285770208 340713096 567134521 863423481 863423481 854140371 854140371 68156424 477082812 807480375 807480375 388683066 994825305 994825305 747234696 537616399 156640776 544868744 544868744 537628776 350646916 934379876 934379876 732424211 724408791 724408791 703131680 684269637 684269637 136389420 136389420 1029784192 1029784192 157409700 474317579 551692481 949146308 949146308 754206989 754206989 432130112 432130112 304876818 590385596 590385596 220872964 302665748 302665748 950940451 950940451 624718089 772802326 772802326 89602728 89602728 694831021 694831021 623018409 872863791 872863791 936830691 936830691 856627320 856627320 570726576 579473092 579473092 718215873 718215873 567027765 649423325 1046594562 1046594562 881345344 738812224 738812224 326680528 524075432 524075432 289737264 940927190 940927190 428588749 457296414 1008558701 1008558701 811948976 559094467 826943014 826943014 942544144 942544144 716046685 547916117 536920072 841796883 841796883 841692435 891953208 891953208 293670176 539011598 1045809537 1045809537 772825137 789916221 789916221 462233288 462233288 105526976 105526976 377983962 957285136 993542439 993542439 303056654 768869482 1013240349 1013240349 504547548 504547548 275175810 1041155376 1041155376 877042568 468077714 806433307 806433307 1057194343 1057194343 606015062 335157234 454691890 454691890 706582241 706582241 773793296 773793296 671651504 155224596 232807728 232807728 255535652 465444720 465444720 429230692 347291410 347291410 875103657 904838466 904838466 734449807 503448076 526751084 1000007745 1000007745 390464452 279224888 279224888 56460480 283912880 283912880 474484934 474484934 512576536 512576536 566898791 566898791 358102626 607212049 958104880 958104880 929711265 538544925 558891040 558891040 555486753 555486753 683166275 683166275 918399368 918399368 913403738 913403738 950601189 950601189 896562723 327949472 541068915 541068915 424954576 725886837 725886837 727720640 727720640 674829556 589506037 586163586 287383842 308929938 308929938 430787603 839492897 979477911 979477911 944767623 1007559819 1007559819 844730373 528621016 633389289 633389289 763942467 954141776 954141776 411507721 928066410 928066410 1010092815 1010092815 745821933 822149822 924060219 924060219 872230899 872230899 744627361 823001735 894573095 940958370 940958370 791676528 764937837 796939837 796939837 1015662786 1015662786 637583875 657514611 657514611 933584992 933584992 1056899451 1056899451 883973184 883973184 412861567 412861567 884757321 884757321 854650968 904835368 904835368 80888546 311925698 320996354 320996354 274727298 370679810 370679810 260731568 350667216 411355206 411355206 138428896 392528968 392528968 559431812 706348870 706348870 705787497 880312544 901302123 901302123 396095666 396095666 56673658 1445888 1445888 77517888 77517888 68422152 216605156 216605156 203997484 249562044 249562044 226956076 226956076 202562924 611908352 1029080744 1029080744 768609411 768609411 351194393 351194393 276872194 199239139 904777082 904777082 755549229 375531946 1047420319 1047420319 784847232 1015227150 1015227150 350158656 344850510 344850510 704911428 704911428 843317504 845416851 845416851 109020552 567542813 567542813 718866842 862003635 862003635 842032770 1015582824 1015582824 987108051 987108051 995050507 1033630413 1033630413 1004208408 588384919 424804139 541134984 604188681 604188681 367475178 641800563 641800563 906768932 931805399 931805399 556595018 624795568 802515117 802515117 713865652 642911064 642911064 94699896 455783728 455783728 310850391 1050220611 1050220611 1012007552 1012007552 764413640 356218794 504814778 504814778 298195170 537521424 554391848 554391848 226114698 404101638 404101638 423833766 713212793 962605069 962605069 256465197 1028989109 1028989109 961089699 961089699 688463014 688463014 554110116 52447744 43043632 189143220 204442804 204442804 203811084 203784568 399682156 399682156 222390714 88150256 277096448 403964170 412946962 412946962 213526104 209780736 141041740 180946180 295702928 331485426 331485426 327706738 327706738 51270864 306229282 1065359487 1065359487 274744133 840175596 967328673 967328673 808901379 808901379 689922144 769769013 778043805 778043805 722731689 171517716 370479362 946096133 946096133 944853917 814013708 516621683 162961675 535078854 535078854 530314878 704141013 704141013 484626670 357631172 3182736 3024912 18589056 588279456 588279456 25187392 558543904 558543904 159551717 177878336 177878336 2750004 775029013 775029013 68293128 679698533 679698533 226596132 164184968 202687464 547884200 679266052 679266052 873497984 873497984 558368686 389022720 340423328 340423328 284894874 121461440 121461440 50703984 35615504 290062368 838878010 861542067 861542067 393216 6144 0 0 539548224 607149545 945966318 945966318 830521611 902481957 902481957 1067603452 1067603452 831032929 901377913 901377913 727549819 555552118 555552118 692109706 989962363 1011091598 1011091598 806613080 806613080 595833005 595833005 913121574 913121574 726535824 694190496 694190496 671137797 423207078 423207078 305993378 986061332 986061332 713463956 64986000 87930560 289998404 289998404 424752864 424752864 48397040 119928384 483928516 483928516 449044750 1017069087 1017069087 110808428 762170296 769704429 769704429 567172364 411575338 411575338 90308768 220731772 283186024 283186024 259268716 282831528 282831528 247754972 354728386 354728386 292650338 718481584 718481584 681648453 724769656 724769656 390853818 889222188 889222188 493635878 523578794 523578794 375262138 51387554 51387554 63274224 311442452 429882438 429882438 421795328 421795328 360710250 360710250 340672816 340672816 170711474 336616740 474775328 474775328 274151362 274151362 279892800 280498176 280498176 554699776 554699776 560522401 560522401 546388821 585357492 595800177 595800177 194988377 618973641 618973641 193069129 688839700 688839700 688774709 622453332 152330304 797648561 797648561 93533896 573095697 573095697 626527344 626527344 579474513 658061008 877200976 877200976 655171833 1006634316 1006634316 874587459 1011213383 1011213383 554273043 157789616 157789616 73534872 73534872 490280640 490280640 78852936 83194048 161991721 673013189 717901461 717901461 659370100 858864457 858864457 128643874 82079738 324904082 651256688 763674673 892437550 892437550 450891602 206569976 237256996 247607368 247607368 147009732 113521092 380639696 380639696 267393116 173123104 442501712 442501712 322283792 521421474 525601470 585723616 585723616 1028707045 1028707045 1040518131 1040518131 1070415674 1070415674 797002654 756516157 271439110 879654384 879654384 398208077 111547128 111547128 98551616 59099632 59180768 59180768 102262360 102262360 86171948 186688384 186688384 154149792 257432252 257432252 107236044 195647612 195647612 648490208 661263801 661263801 648693056 600020017 600020017 587404672 587404672 516831892 662323102 662323102 413663411 69207048 69207048 67513432 173611208 173611208 280308746 280308746 78395392 305824000 403375142 403375142 507387172 507387172 388633914 208431996 208431996 162781142 279931786 417490896 453877780 453877780 285246664 286791200 286791200 8389138 1704560 36045312 36045312 278608986 278608986 895639761 895639761 695128518 661395937 501713037 283364671 1057539135 1057539135 268587049 168297492 537746517 546115712 546115712 588769601 946077520 946077520 866259315 850648597 722418741 705310113 1004267394 1004267394 708911253 708911253 891771051 932061456 932061456 923569513 844565824 791116768 895584842 895584842 874908488 867611136 867611136 993508561 993508561 1058404967 1058404967 462195740 462195740 834491303 834491303 759847575 759847575 270395490 486983330 1015896974 1015896974 1015209272 1015209272 503361644 294699240 210972784 237197680 237197680 235155524 235155524 241025748 241025748 127493356 83886120 588122113 588122113 973164160 973164160 345312644 619472256 619472256 70157633 896864872 896864872 788978315 403040262 654371852 1020658494 1020658494 1053178123 1053178123 785524324 785524324 1018254902 1018254902 775761693 775761693 739249665 558635524 742836865 873598986 873598986 872550411 814761856 814761856 279446850 740298250 984982878 984982878 134298646 207077744 207077744 92823408 200363148 200363148 244188416 244188416 105259100 67512456 780189789 780189789 660792397 724583077 724583077 174097317 93588072 631061537 698175669 698175669 625837576 209730440 209730440 149371332 539005228 755159085 755159085 755159085 218519660 512720938 512720938 378037880 353402944 353402944 219395916 219395916 142758032 142758032 258326636 258326636 288057172 496429686 496429686 164836068 416284876 416284876 230323096 846537115 846537115 759611900 915174073 974465559 1002782838 1002782838 806288955 872886283 872886283 460270424 460270424 313883524 281393858 288793506 288793506 955271578 955271578 271846153 223825044 223825044 119273016 56343096 226583136 226583136 269781284 269781284 188181462 219439672 219439672 224649368 224649368 86048816 46336352 46336352 16067520 23236608 23236608 19323168 86415624 86415624 154366924 267031088 267031088 152704548 243057976 839536268 839536268 516558912 1028032000 1028032000 1066061838 1066061838 690487845 1064557453 1064557453 1027961777 653646242 705948072 705948072 641771776 542191393 542191393 123544459 282266401 906832018 906832018 303113995 493496923 493496923 376163206 944277359 944277359 665864473 660830936 660830936 859849320 996188269 996188269 1072765425 1072765425 427938952 427938952 289665186 379814088 379814088 33603888 2691072 15864064 15864064 379785416 379785416 321076440 321076440 298592762 287070816 328107104 865344615 865344615 169490454 626101057 626101057 606374272 656316547 952550575 952550575 609827169 810095715 810095715 636224962 510871368 435473640 1007545856 1007545856 991342649 646543761 177327213 136636429 237426972 237426972 36470060 35733072 35733072 113128969 591273777 809437553 809437553 607979888 885079546 885079546 80979411 814517328 817446403 817446403 560366112 816964419 816964419 629539426 388487524 463518258 479179076 479179076 413350992 900067682 900067682 807480375 187436340 187436340 472499214 537616399 537616399 295249506 544868744 544868744 537628776 874966643 934379876 934379876 926309732 724408791 724408791 686368197 683779333 671211525 14680264 73400712 1029784192 1029784192 823396896 805306371 551692481 949146308 949146308 478442222 864426099 1069698617 1069698617 944943127 944943127 1058922348 1058922348 858566914 251697436 950940451 1016020047 1016020047 772802326 1039518047 1039518047 243509323 694831021 694831021 682723395 872863791 872863791 442411988 889284290 889284290 570726576 570726576 293844214 537341009 537341009 457838694 457838694 649423325 1046594562 1046594562 677691404 738812224 738812224 283919360 524075432 524075432 516286686 940927190 940927190 811117772 811117772 1008558701 1008558701 160049188 559094467 885621470 885621470 259973052 399169832 496161390 496161390 828693280 828693280 892503211 892503211 807978243 298794122 293670176 1070891555 1070891555 672198324 1004074065 1004074065 855846963 822415395 144120502 1062675366 1062675366 945002759 945002759 993542439 993542439 303056654 768869482 1013240349 1013240349 504547548 504547548 275175810 1041155376 1041155376 877042568 468077714 436514366 436514366 405867568 335323632 335323632 335157234 454691890 454691890 421412438 277157380 181349552 181349552 196194176 196194176 232807728 232807728 153616684 177759272 177759272 94210136 291763574 291763574 290269354 357040634 357040634 178469166 52701408 3351040 142346394 390464452 390464452 141388430 104384280 104384280 222471314 222471314 365959876 365959876 173089428 173089428 268642340 268642340 163977312 406858018 728327458 728327458 17631665 118279224 558891040 558891040 555486753 847874340 847874340 404647271 918399368 918399368 913403738 913403738 4382848 29544672 29544672 25333984 541068915 541068915 424954576 725886837 725886837 727720640 727720640 674829556 589506037 586163586 287383842 308929938 308929938 430787603 1005135351 1005135351 979477911 975298956 1007559819 1007559819 844730373 619839629 739061934 979046553 979046553 954141776 954141776 679517760 679517760 674734082 1010092815 1010092815 847771898 847771898 924060219 924060219 872230899 872230899 940586212 1009925671 1009925671 729584053 729584053 570590836 675276296 796939837 796939837 1015662786 1015662786 281021474 34867728 327680 933584992 933584992 295759819 129518722 76360776 68231688 573774857 573774857 538841873 538841873 274019842 78321208 79594240 80888546 837936835 837936835 297368984 836839011 836839011 370679810 102237720 67633680 22884000 210305624 210305624 267662845 267662845 578948733 689489445 689489445 346030410 880312544 901302123 901302123 319324392 825426898 825426898 594656122 622279691 885135562 885135562 95946600 88217536 4194432 66093552 66093552 43025248 61866864 61866864 60156528 71553122 685859233 685859233 768609411 889318790 889318790 606736386 276872194 503621870 904777082 904777082 755549229 375531946 1047420319 1047420319 784847232 1015227150 1015227150 167941460 344850510 344850510 704911428 826421896 826421896 660021434 611261778 562114843 562114843 376930240 369016688 369016688 407953412 407953412 273752706 576470738 987108051 987108051 995050507 1033630413 1033630413 986945239 588384919 136179204 541134984 604188681 616566976 616566976 604114953 400019718 413579824 413579824 556595018 755306820 755306820 802515117 802515117 713865652 642911064 642911064 94699896 302385360 310850391 310850391 1050220611 1050220611 135266820 1386500 0 327422096 327422096 298195170 298195170 298195170 186877008 186877008 226114698 404101638 404101638 86453002 713212793 713212793 987727458 987727458 729143841 270874766 273481858 608830754 608830754 409804551 319818482 319818482 296878784 295249506 468648270 468648270 203811084 203784568 399682156 520112424 520112424 481489676 481489676 403964170 412946962 412946962 303115332 303115332 203760458 416489692 416489692 331485426 331485426 327706738 327706738 247655824 306229282 306229282 713859360 717089109 840175596 840175596 698174035 419957605 759832640 759832640 769769013 778043805 778043805 268558618 838977856 838977856 370479362 372418944 814013708 814013708 516621683 298918056 475205764 475205764 336667146 675208975 675208975 979959560 979959560 744700033 744700033 694633345 694633345 677656864 559858497 559858497 583040689 583040689 177878336 177878336 116604984 116604984 33216480 101481240 136405440 226596132 226596132 164184968 11136072 111212352 111212352 23858592 23858592 19759104 370444288 370444288 401401408 915038603 915038603 121461440 632758547 663680075 663680075 600193482 838878010 861542067 861542067 37488008 292290865 595334930 809500803 895649554 895649554 945966318 945966318 830521611 902481957 902481957 746586216 687865893 831032929 901377913 901377913 727549819 718095363 718095363 692109706 989962363 989962363 798393090 806613080 806613080 595833005 595833005 591474880 591474880 557854904 694190496 694190496 671137797 317359568 126916604 132121272 132121272 334990160 334990160 384378466 384378466 332022858 636559561 636559561 492839374 163055556 244598104 693374672 693374672 480691894 584565387 584565387 665438212 665438212 115224545 394815026 394815026 411575338 411575338 350750608 361173648 361248448 361248448 85533674 76614698 76614698 18285282 29433920 29433920 87105192 732181904 920533283 920533283 618802314 618802314 169684101 0 0 0 0 0 655360 90833920 90833920 50332048 311442452 429882438 429882438 352533332 352533332 360710250 444073288 507527878 507527878 286049280 336616740 474775328 474775328 274151362 274151362 279892800 280498176 563494435 563494435 563099200 560522401 560522401 24376224 554891680 554891680 554096673 33603728 33603728 193069129 193069129 688839700 688839700 688774709 622453332 152330304 797648561 797648561 93533896 573095697 573095697 626527344 626527344 579474513 354468138 354468138 197372397 237841692 1006634316 1006634316 909566481 1011213383 1011213383 686338519 793800196 793800196 106219136 106219136 410116998 485581518 485581518 336976582 336976582 8775744 8661128 115528152 285364640 285364640 274776450 47224640 121275168 324904082 324904082 302853138 210511444 450891602 450891602 102654192 95869800 247607368 247607368 147009732 113521092 380639696 380639696 1003948243 1020338895 1020338895 916195935 916195935 1054639002 1054639002 1010876559 811090957 705305108 705305108 1040518131 1040518131 570646656 825824041 825824041 342903150 342903150 879654384 879654384 751574984 22031184 98551616 98551616 59099632 59180768 59180768 22543008 28451872 28451872 186688384 186688384 31203860 12234432 72979136 98340936 335567954 335567954 908633490 908633490 820351563 820351563 738710279 600020017 286716956 286716956 236722850 662323102 662323102 660439811 855224082 908454961 908454961 669132273 759168041 759168041 550097532 78395392 305824000 403375142 404753014 453014548 453014548 466751988 466751988 282642114 40553872 458215666 458215666 479177884 479177884 441449622 420867088 420867088 370465848 372126234 372126234 340861776 278608986 813473592 895639761 895639761 695128518 661395937 501713037 283364671 1057539135 1057539135 268587049 672433808 702061129 702061129 546115712 684349685 684349685 721494069 721494069 672272901 672272901 189669057 735776740 735776740 708911253 889864796 889864796 825664278 825664278 546969153 791116768 791116768 895584842 895584842 874908488 960025158 960025158 993508561 993508561 324882690 396185774 462195740 974775831 974775831 834491303 759847575 759847575 914433595 914433595 1015896974 1015896974 1015209272 1015209272 503361644 294699240 252710948 252710948 489194766 489194766 296444206 286407726 362516008 362516008 165274176 81789768 207304332 973164160 973164160 176764109 134666244 55790608 55790608 72166536 512492674 512492674 268502102 315703414 1020658494 1020658494 270584098 270584098 503628034 503628034 706740268 773392645 775761693 775761693 691341577 691341577 742836865 742836865 343982662 343982662 331202422 271946098 403866336 403866336 437198852 437198852 422782818 422782818 207077744 92823408 101449744 101449744 244188416 244188416 103169356 2306304 2299904 142901512 211997004 211997004 77627756 93588072 93588072 101107960 101107960 553176049 553176049 576476544 576476544 280433923 910596644 1045662427 1045662427 755159085 664799450 897876282 897876282 378037880 353402944 353402944 193036352 226658532 226658532 142758032 50499796 50331696 288057172 496429686 496429686 164836068 416284876 416284876 415792564 182985832 736624968 736624968 556270881 556219904 1002782838 1002782838 797916241 797916241 199044852 992085853 992085853 411839770 342281270 381947620 419742310 955271578 955271578 842008229 855795217 855795217 613562332 630855273 961566282 961566282 269781284 269781284 188181462 219439672 219439672 224649368 224649368 135483744 97591808 46336352 37003584 59083168 59083168 9552384 86415624 758149059 758149059 732001177 732001177 254224917 243057976 312395751 312395751 545574576 545574576 482792661 864550914 864550914 143265847 33755168 16986144 100759840 119986488 320341440 641771776 641771776 317903826 582637522 582637522 582095697 906832018 906832018 891671168 891671168 1029627567 1029627567 545292660 665864473 759605840 1015411069 1015411069 745635889 745635889 527000424 1072765425 1072765425 395926972 60387442 105640216 356679080 356679080 101067226 48707648 501300190 501300190 519558470 519558470 421857660 508026246 508026246 274098838 476913600 865344615 865344615 214293718 626101057 626101057 606374272 606374272 303959586 19260064 609827169 810095715 810095715 636224962 314655364 184519872 119064664 991342649 991342649 659937672 659937672 588199001 237426972 237426972 36470060 35733072 35733072 113128969 591273777 809437553 809437553 607979888 885079546 885079546 552523649 814517328 817446403 817446403 560366112 816964419 816964419 629539426 388487524 388487524 479179076 479179076 413350992 900067682 900067682 472033562 715161100 1017955663 1017955663 675886149 295249506 295249506 366842560 536865334 536865334 874966643 874966643 926309732 999150450 999150450 676706465 494786730 494786730 323231038 435781636 881395026 938016963 938016963 1008988015 1008988015 164888616 215245581 215245581 563761187 864426099 1069698617 1069698617 944943127 944943127 1058922348 1058922348 858566914 251697436 251104367 1016020047 1016020047 716522933 1039518047 1039518047 243509323 336204840 336204840 682723395 728656803 728656803 442411988 889284290 889284290 613913016 613913016 268132088 202057024 209715276 209715276 122167340 104924224 75632704 75632704 8524288 86214912 86214912 19150976 269511450 423968888 516286686 565589568 863977395 863977395 859574067 859574067 630269450 630269450 362352715 885621470 1024807138 1024807138 633485117 643041945 643041945 828693280 828693280 892503211 892503211 1070117519 1070117519 239549716 1070891555 1070891555 818528336 1004074065 1049175135 1049175135 822415395 144120502 1062675366 1062675366 945002759 945002759 288428273 288428273 140812032 396249080 396249080 495899592 495899592 229152214 218893356 218893356 219481644 219481644 144719912 211063612 211063612 202933956 202933956 184262092 218286516 218286516 124412332 226697520 226697520 155775492 13186784 196194176 196194176 216793508 216793508 152150088 625043321 625043321 209192360 571280397 571280397 133031392 133031392 121868448 617882977 617882977 51653616 598871729 598871729 388713088 388713088 104384280 104384280 222471314 222471314 365959876 365959876 192665532 192665532 567405923 567405923 520693296 922812545 922812545 728327458 696541719 696541719 582298449 262996992 49549120 1021364166 1021364166 471273026 909120740 909120740 863052723 857265776 857265776 810599105 1040224391 1040224391 680661523 468566096 468566096 139731648 198706932 198706932 173015268 173015268 151590980 134949888 64292928 60817776 64940912 64940912 1005135351 1005135351 975298956 975298956 308531095 308531095 619839629 619839629 739061934 979046553 979046553 831332481 512921338 679517760 679517760 107238100 107238100 83935272 847771898 847771898 767896353 811237935 811237935 424160538 940586212 1009925671 1009925671 580418804 580418804 179959721 142046696 118698552 114295512 306538056 306538056 949361223 1027017229 1027017229 1035000973 1035000973 1013534929 1013534929 1022733708 1040187420 1040187420 573774857 538841873 580129345 589628169 639904624 639904624 61446778 837936835 837936835 297368984 836839011 836839011 811362688 216997592 795838891 795838891 544025985 565132641 565132641 688002202 688002202 998821957 998821957 1002534816 1002534816 155833632 319324392 319324392 825426898 825426898 594656122 622279691 885135562 885135562 317408628 317408628 247996876 247996876 215007948 215007948 222022476 262379292 262379292 1025706592 1025706592 685859233 425986476 889318790 889318790 606736386 606212265 503621870 503621870 404885766 1051402464 1051402464 411602375 875070730 875070730 109056257 802086362 802086362 541777040 406198367 1057098656 1057098656 843055251 843055251 321007722 914753285 914753285 642084164 983853261 983853261 407953412 688781492 793357917 793357917 973607431 973607431 709608693 709608693 303480338 667964643 667964643 324830366 676252285 676252285 616566976 616566976 604114953 501793982 951436374 951436374 495001617 900130560 900130560 557432939 546344952 595064472 598143697 598143697 94559145 302385360 379729310 854467092 1017911698 1017911698 537594948 537605155 923062891 923062891 906010295 906010295 524298014 606392778 606392778 570724768 263747620 263747620 402994824 402994824 71958534 348203678 987727458 987727458 1045025282 1045025282 978253973 978253973 1046663583 1046663583 1043761664 319818482 296878784 295249506 841449731 967945654 967945654 1016463503 1016463503 979678061 979678061 609671655 655698196 998366129 998366129 658799414 303115332 303115332 203760458 416489692 416489692 264476300 122234040 323593474 323593474 247655824 247655824 358668714 713859360 717089109 733342581 751914340 751914340 419957605 759832640 759832640 532623473 292043327 503375191 503375191 838977856 838977856 1060510495 1060510495 797091893 172369563 172369563 298918056 298918056 306110226 417514706 675208975 675208975 979959560 979959560 744700033 744700033 694633345 694633345 677656864 559858497 559858497 583040689 583040689 52090416 51577600 116604984 116604984 33216480 101481240 101481240 99407944 99407944 29191360 11136072 87680136 120208168 120208168 284296114 284296114 352545280 352545280 401401408 915038603 915038603 132536634 632758547 663680075 663680075 600193482 646258498 646258498 76287048 37488008 292290865 633976000 809500803 895649554 895649554 610552677 610552677 877923023 877923023 746586216 746586216 687865893 310959379 614465681 958488890 1046585695 1046585695 718095363 778748259 954243200 954243200 798393090 798393090 491838064 227745824 227745824 495392470 495392470 421205010 121714482 693114184 693114184 317359568 109629816 51130416 120065048 334990160 334990160 384378466 384378466 332022858 636559561 636559561 492839374 233984584 244598104 693374672 693374672 678166589 838600821 845416851 845416851 665438212 599344379 855940178 855940178 48019416 48019416 350750608 369180168 369180168 361248448 368393568 368393568 301206050 301206050 348199016 348199016 299642090 732181904 920533283 920533283 879180171 712841882 373591190 848118004 848118004 522199559 310388232 409018758 409018758 243205248 90833920 22155936 270408736 290067078 290067078 189636774 203948820 245367132 444073288 507527878 507527878 286049280 286049280 285476898 26442112 31610688 31610688 16422144 277818401 563494435 564068449 564068449 21712640 555604288 555604288 542636673 20905185 32672752 576835076 710485653 710485653 705284608 105042768 105042768 111579904 111579904 83467144 54117320 27264448 27264448 104632704 324225721 390951459 672916355 672916355 227285530 618960729 618960729 912428458 912428458 1013865607 1013865607 650823896 711177680 711177680 793800196 793800196 106219136 106219136 410116998 485581518 485581518 336976582 336976582 470376836 470376836 343805066 285364640 470183820 470183820 267389080 267389080 206439156 16116672 16116672 5529920 18623744 18623744 0 4195328 139003008 139011204 139011204 22787204 22668960 273812009 1003948243 1020338895 1020338895 916195935 916195935 1054639002 1054639002 1010876559 811090957 705305108 705305108 399180565 570646656 570646656 825824041 825824041 342903150 342903150 126243400 785936912 785936912 239858701 188195180 46491840 62675000 130112584 246899340 246899340 132646392 132646392 184709760 184709760 15576256 177907053 223165105 223165105 335567954 335567954 908633490 908633490 820351563 820351563 936219035 936219035 988339483 988339483 909380379 826940507 660439811 660439811 855224082 908454961 908454961 819245010 819245010 759168041 550097532 210370824 101851400 204081724 404753014 418915654 418915654 466751988 466751988 397929456 397929456 458215666 458215666 479177884 479177884 441449622 420867088 420867088 370465848 448276886 448276886 373891298 321504674 879285530 879285530 442917976 447031638 447031638 220775724 220775724 761475501 761475501 164627172 672433808 702061129 702061129 180357265 684349685 684349685 956510247 956510247 834091089 707998485 674114673 580913157 580913157 304970085 889864796 889864796 825664278 825664278 546969153 472189991 163846732 163846732 217326324 217326324 960025158 960025158 941657876 588024615 257537454 396185774 396185774 974775831 974775831 751693005 751693005 516015685 914433595 914433595 641952490 89651264 232029432 232029432 209975952 201379860 252710948 252710948 489194766 489194766 296444206 286407726 362516008 362516008 201734338 201734338 207304332 673388304 673388304 861180064 861180064 210052307 177244716 177244716 512492674 822167725 822167725 961898546 961898546 939559024 555804857 555804857 107293080 72589744 139315733 157599537 389641404 537921800 742268685 742268685 282743899 282743899 177792194 331202422 331202422 271946098 403866336 403866336 605506043 605506043 451587792 640627858 973903341 973903341 770028236 196241340 87155496 105700568 105700568 71877768 69450944 63750544 159552576 183161952 183161952 54295008 18035232 79861800 240582148 553176049 553176049 576476544 576476544 485980868 910596644 1045662427 1045662427 664799450 664799450 897876282 897876282 68280496 134275588 134275588 193036352 226658532 226658532 235305168 235305168 234989620 33620356 338220082 338220082 403227652 436782102 436782102 456679906 456679906 207994810 391981726 391981726 783366000 783366000 329294407 892455178 892455178 826665123 992085853 992085853 411839770 342281270 381947620 419742310 427455412 811671937 842008229 855795217 855795217 613562332 630855273 961566282 961566282 974541649 974541649 148676164 345841242 345841242 942346562 942346562 844327827 844327827 586522689 568468000 568468000 59083168 76840865 612415625 758149059 758149059 732001177 732001177 254224917 1006634374 1006634374 654348909 965135969 965135969 876272400 1065888077 1065888077 589761072 474220686 510691472 574530387 574530387 320341440 1015837435 1015837435 317903826 582637522 582637522 582095697 559938088 812682304 891671168 891671168 1029627567 1029627567 234097261 359137346 759605840 1015411069 1015411069 704267047 506218956 506218956 435497958 395926972 395926972 60387442 105640216 356679080 356679080 129322760 129322760 501300190 501300190 519558470 519558470 421857660 508026246 508026246 387207448 476913600 516898014 516898014 214293718 214293718 148866346 81624368 303959586 303959586 272107266 272107266 409608224 409608224 314655364 316228758 532857564 532857564 470389864 470389864 659937672 876157192 876157192 177349723 990346276 990346276 973900041 414702434 414702434 86296872 287328266 287328266 555614272 555614272 552523649 552523649 552211905 280334912 280334912 7341056 3670144 276903168 276903168 268603712 268603712 296289074 296289074 254821420 254821420 509726091 572030469 914246554 1017955663 1017955663 675886149 139003107 164005892 164005892 151873732 151873732 708854966 708854966 752765428 999150450 999150450 695089408 494786730 494786730 323231038 763694085 900211826 938016963 938016963 1008988015 1008988015 272512271 270225743 347183626 563761187 563761187 483600988 483600988 185852556 171102996 531958724 531958724 240382620 293830968 293830968 132170232 132170232 86425704 86425704 134266924 134266924 336204840 1012048296 1012048296 902187757 461209861 219119827 580253400 580253400 692455645 692455645 972891087 972891087 1040786463 1040786463 1028128831 849015685 658491561 783938191 783938191 696679722 696679722 96244834 269511450 369728656 369728656 565589568 863977395 874775724 874775724 960705796 960705796 734276855 362352715 613941770 1024807138 1024807138 633485117 643041945 643041945 391289850 545127486 722093461 722093461 1070117519 1070117519 471945086 471945086 818528336 818528336 697792099 1049175135 1049175135 911609988 202738176 202738176 84285480 72571480 58897144 68475536 338739842 338739842 179231960 379751574 495899592 505304166 505304166 476880416 451287510 405019576 119540088 364499482 364499482 211063612 202933956 361343250 518276178 518276178 411643714 320154162 339554120 447307970 447307970 232620288 228459088 228459088 220307464 220307464 212451356 625043321 625043321 247697888 571280397 571280397 223629014 133031392 500964030 813834987 813834987 348196938 598871729 598871729 907755249 907755249 5186592 17377280 17377280 9503744 62072834 96226210 338563608 406859546 567405923 567405923 520693296 922812545 922812545 558222388 696541719 696541719 582298449 268960258 21513728 1021364166 1021364166 834328419 909120740 909120740 863052723 857265776 857265776 852428529 1040224391 1040224391 890764144 890764144 875793817 750599076 750599076 198706932 173015268 173015268 47261728 64292928 64292928 60817776 64940912 64940912 199279092 199279092 197257508 306448400 308281474 308281474 305138050 305138050 269625106 269625106 348390440 348390440 313930570 633579024 633579024 105025712 105025712 240190160 258482192 537012000 557528865 557528865 181462232 181462232 89635988 69866760 539103488 539103488 101976600 785545840 785545840 78216533 114295512 306538056 306538056 949361223 1027017229 1027017229 1035000973 1035000973 1013534929 1013534929 1022733708 1040187420 1040187420 236461342 1008994112 1008994112 1063646163 1063646163 693318309 77969437 586183542 586183542 727389280 727389280 811362688 811362688 311043210 795838891 795838891 544025985 565132641 565132641 688002202 1052804302 1052804302 998821957 1052771534 1052771534 483000557 318902322 318771200 338143274 338143274 357039882 357039882 374186064 374186064 317408628 317408628 247996876 247996876 215007948 215007948 245837664 262379292 262379292 1025706592 1025706592 335679498 807928064 807928064 805831683 606212265 606212265 455816502 455816502 157421988 1051402464 1051402464 411602375 875070730 875070730 583611784 802086362 802086362 541777040 448006159 1057098656 1057098656 843055251 843055251 383130330 914753285 914753285 642084164 983853261 983853261 588300849 688781492 793357917 793357917 973607431 973607431 709608693 709608693 907728411 1050642530 1050642530 324830366 676252285 676252285 506779856 506779856 501793982 501793982 951436374 951436374 495001617 900130560 900130560 557432939 546344952 595064472 598143697 598143697 372456256 141310596 379729310 854467092 1017911698 1017911698 537594948 537605155 923062891 923062891 906010295 906010295 524298014 606392778 606392778 570724768 263747620 382868674 470688460 470688460 980417979 980417979 745193883 440668722 1045025282 1045025282 978253973 978253973 1046663583 1046663583 1043761664 21235744 158450756 1017671136 1017671136 967945654 967945654 1016463503 1016463503 979678061 979678061 609671655 655698196 998366129 998366129 658799414 198652024 198326516 81199612 202457412 264476300 264476300 122234040 2765112 6940032 21520672 171344702 986134615 986134615 910647289 557586452 845301063 845301063 807847254 807847254 977998075 977998075 493984133 715696405 906474075 906474075 748717636 1060510495 1060510495 797091893 172369563 318799473 835590307 841944785 841944785 600652261 600652261 409470848 671369232 704907285 719610245 719610245 181668564 696723872 696723872 566376817 3880704 51418112 52090416 52090416 51577600 51921616 51921616 24233216 24233216 80092672 80092672 29191360 29191360 10430240 56762848 120208168 120208168 284296114 284296114 352545280 352545280 58827066 275403584 275403584 132536634 353470480 353470480 582497746 582497746 104673329 128135544 278201640 370677768 370677768 633976000 633976000 659030185 659030185 610552677 777522712 877923023 877923023 80517459 304661778 314445044 946205234 946205234 958488890 1046585695 1046585695 839570451 900298012 954243200 954243200 554284607 554284607 885006467 885006467 281808066 495392470 495392470 249112284 620958217 693114184 769138816 769138816 765011565 959310807 959310807 857610622 857610622 94683616 94683616 27901952 72672040 72672040 142774912 350752170 587467856 587467856 678166589 678166589 838600821 845416851 845416851 990380831 1009390863 1048075280 1048075280 102157968 102157968 102183040 369180168 369180168 340399242 368393568 368393568 301206050 301206050 348199016 348199016 299642090 581513971 660618219 879180171 879180171 712841882 402790416 848118004 848118004 995109959 995109959 409018758 994333985 994333985 304263584 304263584 305872770 305872770 289702272 177696160 203948820 245367132 245367132 193890908 162187124 142752162 145176900 419445090 419445090 31610688 291706114 291706114 11849728 282584960 564068449 564068449 277530946 555604288 555604288 542636673 178330388 168052036 576835076 710485653 710485653 705284608 266649788 266649788 189141244 140787576 47833672 32962944 32962944 27314016 104632704 324225721 539263224 672916355 672916355 227285530 1040977952 1057889343 1057889343 912428458 1013865607 1013865607 289565898 711177680 711177680 84546880 84546880 21045408 17408000 4194432 5398656 268827208 345204746 345204746 470376836 470376836 343805066 207042560 470183820 470183820 683545633 774909775 774909775 1008471567 1008471567 779742519 886785855 886785855 549788289 635646580 788793469 788793469 701763124 169674856 386629712 386629712 374624416 300397698 275375490 8462400 485556464 485556464 454298166 1044717800 1044717800 546308673 755813570 755813570 495689015 471333006 961439690 961439690 416023658 416023658 885132336 928534080 928534080 239858701 213176421 213176421 551551661 738810308 738810308 611661100 611661100 132646392 163715604 163715604 26349572 177907053 710678664 710678664 140267556 692261136 827285921 827285921 722476182 673458097 936219035 936219035 988339483 988339483 909380379 826940507 805704002 404887476 458001686 458001686 958804593 958804593 865434474 763882243 740817201 640010500 103094784 270639632 270639632 252974348 8666176 8666176 734208 397929456 397929456 362891210 229453164 229453164 260434044 394318078 394318078 332318948 92637186 448276886 448276886 373891298 321504674 879285530 977345445 977345445 905998774 562252859 562252859 220775724 77972516 8775744 2197824 0 0 562307072 562307072 547568416 547568416 956510247 956510247 834091089 707998485 687864468 709895077 709895077 304970085 517271628 536969729 673722440 673722440 828377162 828377162 627555049 822294083 822294083 465081793 465081793 273960049 79741128 97518312 97518312 198699080 198699080 198686408 1023646720 1023646720 168895149 49152 49152 5677676 227995884 227995884 209768772 209975952 209975952 201379860 112197744 112197744 117737496 513280532 513280532 335867538 306571990 80019550 206975624 210508288 210508288 408501894 537279559 861180064 861180064 842345235 513092339 728256404 989448177 989448177 948250691 961898546 961898546 771762734 555804857 555804857 285662014 285662014 167788584 167788584 412695368 498076761 742268685 742268685 951621586 951621586 814035939 814035939 138505380 835764945 835764945 680053573 672011997 672011997 451587792 666683122 973903341 973903341 770028236 196241340 87155496 105700568 105700568 71877768 69450944 63750544 159552576 183161952 183161952 54295008 18035232 13086256 240582148 240582148 119394536 337953320 337953320 485980868 485980868 372342864 315713546 282190530 61967298 188809228 348311568 348311568 398592624 398592624 366439594 366439594 169493088 491827752 491827752 487606790 472507662 472507662 338220082 441594974 441594974 474510905 835408439 1051297773 1051297773 774859563 597730667 783366000 783366000 917145307 934896746 934896746 826665123 346155035 759246371 759246371 603455798 303196928 326468514 427455412 427455412 406029846 406029846 179430228 160014918 143139122 1698577 475474892 1058337721 1058337721 148676164 345841242 345841242 942346562 942346562 844327827 844327827 586522689 568468000 577638592 577638592 76840865 612415625 612415625 671787586 671787586 1045766333 1045766333 1006634374 1006634374 654348909 965135969 965135969 876272400 1065888077 1065888077 936055961 474220686 510691472 574530387 574530387 285163458 1015837435 1015837435 874521491 874521491 272992387 3704962 559938088 812682304 812682304 623422955 845426557 845426557 171796481 359137346 461020740 502023256 532196034 1012106193 1012106193 531178878 739086637 739086637 512153694 440568008 50346016 129379274 129379274 370088040 370088040 355862072 344836096 323096912 323096912 311995910 311995910 387801368 387801368 339624346 341002152 341002152 123767236 272854488 272854488 97101970 88344744 160067468 272107266 272107266 357661952 357661952 187176164 316228758 532857564 532857564 557976481 557976481 615517401 876157192 876157192 677257731 990346276 990346276 973900041 801640573 801640573 659556037 844705958 844705958 286404623 610588304 610588304 731457141 731457141 283175141 338807552 820306347 820306347 569926018 569926018 388436456 388436456 376187710 376187710 270870786 2383874 509726091 572030469 914246554 914246554 299966946 624967847 624967847 253323394 164005892 134502628 519429176 708854966 811618300 1044043543 1044043543 695089408 695089408 28297383 222306436 222306436 763694085 900211826 900211826 369626667 278799618 1028729733 1028729733 492839020 957435494 957435494 516296987 516296987 515432932 994700511 994700511 718348116 718348116 642444996 422712813 463831043 751321520 751321520 497025383 697166949 697166949 396970271 628098465 1012048296 1012048296 902187757 461209861 714525890 946232403 1018205541 1018205541 692455645 972891087 972891087 1040786463 1040786463 1028128831 849015685 658491561 783938191 783938191 696679722 696679722 96244834 274853712 318109110 457314486 457314486 405409830 956499280 956499280 960705796 960705796 734276855 268447872 1033232509 1033232509 764504202 457990142 534125310 534125310 328605302 356284681 607774475 607774475 394230074 394230074 952833620 952833620 625917959 367186410 480613588 480613588 962527312 1058099844 1058099844 305359134 568516780 852709467 852709467 376739841 376739841 338739842 228344872 379751574 379751574 505304166 505304166 476880416 451287510 405019576 202267428 364499482 364499482 48160464 11066256 361343250 518276178 518276178 411643714 320154162 339554120 447307970 447307970 469841486 469841486 393017108 433116208 433116208 212451356 182621204 247697888 247697888 187594972 223629014 223629014 22857400 500964030 813834987 813834987 348196938 344068170 344068170 907755249 907755249 210504780 210504780 447827872 447827872 406772674 454347318 454347318 406859546 406859546 202446622 295971848 401155578 520161468 520161468 530638246 530638246 293201826 268960258 509551210 509551210 269518498 1042757919 1042757919 838522211 837473763 660861256 852428529 852428529 560683825 251767359 890764144 890764144 875793817 750599076 750599076 193616260 193644996 193644996 172302884 164635216 25432480 23201888 109520448 109520448 199279092 199279092 440639836 440639836 308281474 308281474 305138050 305138050 269625106 269625106 597304259 597304259 944383784 944383784 685583685 122848408 958291823 958291823 701571200 701571200 557528865 649582141 649582141 404986292 1043872788 1060476931 1060476931 539103488 101976600 785545840 785545840 801501840 801501840 46640957 55590984 126620712 126620712 109447456 85007784 85007784 55624368 120177840 120177840 341509641 341509641 403320722 1008994112 1008994112 1063646163 1063646163 693318309 77969437 586183542 590557942 727389280 727389280 101799378 311043210 378931226 378931226 43327488 377552906 377552906 181420544 181420544 1052804302 1069584604 1069584604 1052771534 1052771534 483000557 396012550 396012550 187055052 305404930 305404930 296832512 374186064 374186064 125647812 125647812 114167252 166994420 166994420 194789364 245837664 245837664 169406028 1008753776 1008753776 934055940 807928064 807928064 805831683 604508290 604508290 455816502 812493228 812493228 694342053 526901526 404807790 405773416 583611784 583611784 288282392 597351696 597351696 448006159 448006159 826411049 896267691 896267691 383130330 437261168 437261168 413177478 820092576 820092576 588300849 684926608 721654487 1054667303 1054667303 1015899808 1015899808 622818333 907728411 1050642530 1050642530 312285844 379062384 379062384 506779856 506779856 194325108 430201700 548472320 548472320 286137378 558033986 558033986 549527745 319809082 550160952 668868345 668868345 378294517 303606332 161211160 427724420 427724420 345455178 309726042 202007048 277603912 312097344 455052424 455052424 482382656 482382656 91497472 91497472 247468086 382868674 518326998 518326998 980417979 980417979 745193883 533275094 894150839 894150839 224659884 224659884 388812090 388812090 344350914 325793202 295554560 1017671136 1017671136 835802856 951663579 1012379799 1012379799 1011950223 62008063 479365952 895777738 895777738 530634976 530634976 429256936 56627200 56627200 243474812 243474812 246432300 246432300 225493932 209258380 242729904 242729904 986134615 986134615 910647289 671516576 845301063 845301063 807847254 952911702 977998075 977998075 567030016 715696405 906474075 906474075 739273815 414017871 243920760 243920760 122760474 318799473 835590307 841944785 841944785 600652261 600652261 223839889 640536332 640536332 684049369 684049369 181668564 696723872 696723872 578158609 538762112 580427280 580427280 33575936 11711040 77641224 77641224 40621872 113410424 113410424 69492864 83993480 83993480 74532480 74532480 24791360 24791360 30281920 30281920 21106848 21106848 131232 858360017 858360017 300805602 888432097 888432097 582497746 582497746 104673329 128135544 278201640 370677768 370677768 85460520 83959848 285279754 285279754 354944522 777522712 777522712 1035995589 1035995589 1040223282 1040223282 946205234 946205234 638135763 488821038 589538594 839570451 900298012 900298012 707265813 554284607 554284607 885006467 885006467 287048198 408434178 408434178 249112284 805840626 805840626 769138816 769138816 939536384 959310807 959310807 857610622 857610622 846966154 920239759 920239759 633660009 1054081808 1054081808 938770748 938770748 587467856 543165245 425461787 689499686 689499686 528881790 990380831 1009390863 1048075280 1048075280 102157968 102157968 279322200 301861000 301861000 87010464 322272584 322272584 80332074 31192800 31192800 14777632 348362920 592935994 995889949 995889949 662147371 453911918 402790416 377495824 478172492 995109959 995109959 224136876 994333985 994333985 306614272 306614272 305872770 460568708 460568708 323418130 307486994 413372738 413372738 168196434 140978470 142752162 145176900 419445090 419445090 66687024 291706114 291706114 42081104 282584960 282584960 277530946 277530946 275762624 304886592 304886592 277968976 950249863 950249863 153362584 543542241 543542241 379752530 266649788 189141244 576717201 576717201 881656180 901280708 901280708 75473512 53527344 639648290 639648290 156536379 190061762 1040977952 1057889343 1057889343 525077694 525077694 486747284 743142436 743142436 994223269 994223269 774489532 365668392 470600748 470600748 126269088 268827208 404629238 404629238 341260938 177522816 404754694 404754694 745612173 940638602 940638602 774909775 774909775 1008471567 1008471567 779742519 886785855 886785855 549788289 635646580 788793469 788793469 701763124 169674856 386629712 386629712 838231785 838231785 905129291 905129291 813485955 268511796 454298166 1044717800 1044717800 546308673 755813570 755813570 495689015 704981653 961439690 961439690 679646675 538369569 885132336 928534080 928534080 123128428 213176421 661441580 661441580 743917380 743917380 611661100 611661100 113520904 138447540 226018952 226018952 138970892 710678664 710678664 741082244 741082244 692261136 35797253 156551844 791003958 791003958 281577069 280803840 283324866 283324866 805704002 805704002 774257290 774113565 507642713 958804593 958804593 865434474 763882243 740817201 640010500 103094784 270639632 336428872 395288688 483521654 483521654 383621354 295712322 428266278 428266278 336017418 336017418 399821562 399821562 213952688 93883528 59506784 278521216 325468448 325468448 126319202 111614408 977345445 977345445 905998774 562252859 989288677 989288677 986512805 986512805 494594821 699320857 699320857 596558396 596558396 554131984 557181508 700032580 700032580 705252357 705252357 687864468 709895077 709895077 955296112 995486391 995486391 780912110 780912110 828377162 828377162 627555049 822294083 822294083 529324847 529324847 277348887 615272545 615272545 246959728 699196600 1053302924 1053302924 1023646720 1023646720 856857104 555271187 928106020 928106020 788628130 227995884 209768772 164049440 243787844 243787844 144787564 136360534 471982350 513280532 513280532 335867538 306571990 217256328 217256328 210508288 210508288 344075844 537279559 818539472 842345235 842345235 513092339 728256404 989448177 989448177 948250691 948250691 730179671 725433410 462646048 103160088 285662014 285662014 167788584 167788584 958544416 992742431 992742431 617247055 951621586 951621586 814035939 814035939 495979180 835764945 835764945 680053573 672011997 672011997 379932648 666683122 666683122 361364301 156285656 75970568 67508232 25829376 13243584 13243584 15614404 162579980 162579980 88756364 149866180 149866180 264274496 264274496 229937500 229937500 119394536 337953320 337953320 392892698 392892698 372342864 315713546 282190530 76389104 128244160 348311568 348311568 398592624 412271264 412271264 366439594 412434592 491827752 491827752 487606790 472507662 472507662 226746378 441594974 441594974 474510905 956191650 1051297773 1051297773 774859563 597730667 189928116 934814944 1025716527 1025716527 934896746 98701800 346155035 759246371 759246371 603455798 431095976 114401408 477852317 938162055 938162055 903472875 903472875 786481598 886315999 974531098 974531098 1058337721 1058337721 951452999 951452999 941621511 941621511 347214666 640793160 916869131 916869131 293761257 577638592 577638592 565778336 536875008 536875008 671787586 671787586 1045766333 1045766333 794824117 707526679 707526679 781193413 781193413 619709385 687140164 936055961 936055961 175740519 63496552 566815737 566815737 905236456 909454107 909454107 874521491 874521491 272992387 662446896 914558696 914558696 806112714 884733771 884733771 869299444 171796481 357976329 357976329 502023256 532196034 1012106193 1012106193 531178878 739086637 739086637 512153694 440568008 376256554 335689098 284896336 370088040 370088040 355862072 344836096 323096912 323096912 311995910 311995910 387801368 387801368 338120524 356183744 356183744 522344472 522344472 381572730 478405666 533773440 533773440 273682306 221783168 358561154 358561154 187176164 187176164 200906672 200906672 557976481 557976481 615517401 808000256 808000256 677257731 1006644776 1006644776 898206216 801640573 801640573 659556037 844705958 844705958 286404623 610588304 610588304 731457141 731457141 283175141 338807552 820306347 820306347 569926018 569926018 388436456 388436456 376187710 376187710 270870786 2383874 274059394 274059394 903987209 903987209 461631606 624967847 624967847 253323394 48057872 90128000 519429176 519429176 811618300 1044043543 1044043543 557447841 299377696 293650530 293650530 222306436 830809370 830809370 665587065 321463587 346620010 1028729733 1028729733 492839020 957435494 957435494 516296987 516296987 515432932 994700511 994700511 718348116 718348116 642444996 422712813 463831043 751321520 751321520 497025383 697166949 697166949 968393207 968393207 628098465 560464809 756476742 758570981 758570981 946232403 1018205541 1018205541 718224597 718224597 673105473 778833071 841535745 841535745 806323586 130968240 105348306 79765704 283259146 283259146 35155840 404631088 420985638 457314486 457314486 1027287373 1027287373 956499280 800266044 617359563 617359563 554698332 1033232509 1033232509 960702095 659106476 672936633 672936633 341344291 554348989 965948872 965948872 762830934 840508947 952833620 1030007144 1030007144 367186410 480613588 480613588 962527312 1058099844 1058099844 305359134 1037394239 1037394239 852709467 376739841 764987320 764987320 760792749 720612573 795436221 795436221 792782440 257170792 226823716 202267428 276613098 276613098 376808218 376808218 335675098 71354664 202832768 202832768 209928872 281545012 291843194 291843194 290270370 469841486 469841486 393017108 433116208 433116208 194509428 176252432 144229956 457753782 512890336 512890336 388167248 294249570 302077280 302077280 37748880 100696280 100696280 41992272 117733584 117733584 210504780 210504780 447827872 447827872 406772674 454347318 454347318 188643614 150355660 150355660 295971848 401155578 464062920 464062920 530638246 530638246 293201826 292141102 514034592 514034592 457962930 1042757919 1042757919 686720220 548911425 630620160 630643305 830652449 890554923 890554923 934406147 934406147 621549544 95906993 152166500 193616260 193644996 193644996 172302884 164635216 44302400 50270032 109520448 506192299 704851989 807944469 807944469 604734472 664536065 874776899 1006771030 1006771030 666309322 666309322 736133854 977137431 977137431 944383784 685583685 774898461 958291823 958291823 701571200 701571200 461626139 783768911 783768911 404986292 1043872788 1060476931 1060476931 570874913 603939917 603939917 798089224 801501840 801501840 763176090 763176090 333453306 301255650 301255650 101989232 101989232 377372104 377372104 498174268 498174268 954023746 954023746 780600265 773095243 714565272 889698373 889698373 1025709348 1025709348 604749830 604749830 466826033 272786764 1041834910 1041834910 563624473 563624473 554108257 772615197 772615197 966423818 966423818 1069584604 1069584604 961488976 503726220 221508396 396012550 396012550 187055052 305404930 305404930 285477504 391905526 430703974 430703974 427563104 122301976 166994420 166994420 222872752 222872752 211666452 173655480 1008753776 1008753776 934055940 872943872 875173131 875173131 961089895 961089895 608253219 812493228 812493228 694342053 1064246487 1064246487 976436310 791551293 791551293 578028958 1002703409 1002703409 698307920 698307920 807973032 896267691 896267691 455167712 437261168 437261168 413177478 703105321 1009660344 1009660344 713119800 721654487 1054667303 1054667303 1015899808 1015899808 524226128 524226128 212949806 312285844 312285844 381016394 381016394 497036938 497036938 525876274 525876274 548472320 548472320 286137378 1036248457 1036248457 751564555 589302691 911643153 911643153 668868345 436357186 436357186 161211160 427724420 427724420 314837202 485119688 485119688 443929396 318620500 455052424 469616868 471488956 471488956 134220288 134220288 204972692 219276852 518326998 518326998 184903976 184903976 533275094 533275094 89129640 222561192 224659884 224659884 388812090 410634466 410634466 342452682 342452682 611420966 905303473 905303473 951663579 1012379799 1012379799 1011950223 760459736 787507208 895777738 895777738 802449504 770730492 429256936 56627200 56627200 243474812 327197396 327197396 377536602 507557114 520811582 520811582 242729904 192518964 22350080 822678816 822678816 294803335 403442694 403442694 952911702 952911702 302255616 567030016 567030016 831475780 957213735 957213735 486646823 534258874 534258874 375923578 397477274 397477274 64697008 741655542 1070777019 1070777019 459542793 673497424 713295957 723536213 723536213 26479200 33885168 578158609 578158609 538762112 580427280 580427280 52970080 52970080 77641224 77641224 46957808 113410424 113410424 69492864 83993480 83993480 216548676 216548676 149472708 249087708 484245666 484245666 127028296 356647936 356647936 858360017 858360017 522375486 888432097 888432097 648033242 907812891 907812891 567927513 567927513 67110432 824639283 824639283 122622137 348366530 890057612 890057612 606903919 322049851 1035995589 1035995589 1040223282 1040223282 874696971 652924312 479178080 592142339 592142339 157324470 690577457 707265813 707265813 158081937 134220960 458752566 458752566 287048198 439041988 440351894 600519380 821725431 821725431 593203208 580599836 939536384 939536384 418941891 697640904 697640904 846966154 920239759 920239759 633660009 1054081808 1054081808 938770748 938770748 1064643519 1064643519 776212104 776212104 689499686 54790320 298290662 298290662 430993448 430993448 340264530 92984424 279322200 301861000 301861000 113976328 113976328 113456256 79246024 350426306 350426306 78333696 348362920 635211264 995889949 995889949 662147371 171141861 377495824 377495824 362881386 240003758 223616500 88352384 102912656 102912656 306614272 306614272 36700944 460568708 460568708 323418130 307486994 413372738 413372738 271282448 478787362 478787362 83486664 365314440 365314440 66687024 66687024 9056480 77666376 83697920 83697920 83572680 76238016 45071888 304886592 304886592 277968976 950249863 950249863 63004696 543542241 543542241 379752530 226496576 226496576 576717201 576717201 881656180 901280708 901280708 75473512 72770848 639648290 668090337 668090337 190061762 583154368 646912497 646912497 787091841 787091841 1040915483 1040915483 864695494 994223269 994223269 774489532 365668392 470600748 470600748 211822412 211822412 404629238 404629238 177522816 448065376 448065376 404754694 745612173 940638602 940638602 752878029 752878029 211861836 211861836 256239804 256239804 164627172 167784480 730859112 730859112 151728156 151728156 123250312 123250312 314887243 838231785 838231785 905129291 905129291 813485955 355216412 151364256 1010860247 1010860247 693373477 765726537 765726537 663224824 704981653 704981653 679646675 679646675 538369569 264806161 968098878 968098878 959320516 959320516 661441580 661441580 743917380 743917380 391060554 391060554 313126714 369438992 369438992 226018952 138970892 604689409 604689409 741082244 757990464 757990464 539778596 462021750 956343377 956343377 281577069 235950340 772256284 772256284 440607257 774257290 774257290 774113565 882235540 882235540 1003936503 1003936503 337959673 136628484 135710976 79132800 270551064 336428872 395288688 483521654 483521654 383621354 295712322 428266278 428266278 336017418 336017418 399821562 399821562 478364820 478364820 395912826 278521216 373321856 373321856 330870656 680228944 680228944 291762594 291762594 310713315 989288677 989288677 986512805 986512805 494594821 699320857 699320857 596558396 596558396 554131984 783319700 783319700 579110409 705252357 705252357 138140000 161295972 161295972 955296112 995486391 995486391 780912110 780912110 323877937 143953104 143953104 220467020 220467020 529324847 529324847 277348887 615272545 615272545 246959728 699196600 1053302924 1053302924 1064046015 1064046015 1042343343 1042343343 928106020 1028720355 1028720355 1023674373 1026128152 1026128152 430050384 287889728 144787564 136360534 471982350 471982350 382349538 105115800 302467210 302467210 217256328 82971398 135606348 135606348 407805188 407805188 59978352 789979348 789979348 641992857 654971961 654971961 592057497 545837140 137237156 137237156 59777616 59777616 82860664 82860664 70585288 552674241 958544416 992742431 992742431 642974210 846410619 846410619 558638177 169624116 495979180 495979180 189173776 630606888 630606888 379932648 830885384 849570276 849570276 562143372 562143372 75970568 78403584 99284296 99284296 12766208 15614404 162579980 162579980 92800520 149866180 209605256 264274496 264274496 229937500 229937500 62914800 344362192 344362192 392892698 392892698 92648282 126936224 126936224 76389104 76389104 64020992 64020992 80779512 412271264 412271264 332569268 412434592 412434592 218417196 218417196 470013196 470013196 204393738 430742184 430742184 177530966 956191650 956191650 453983286 467902304 467902304 296968642 934814944 1025716527 1025716527 216675595 98701800 866910254 866910254 242226285 431095976 431095976 269489372 477852317 938162055 938162055 903472875 903472875 786481598 886315999 974531098 974531098 735801586 735801586 951452999 951452999 941621511 941621511 347214666 640793160 916869131 916869131 588438112 50430960 565778336 565778336 97536256 229639456 412537704 412537704 874514699 920131039 920131039 707526679 707526679 361503463 798235245 798235245 408097673 856111155 856111155 638264545 647107161 647107161 581568264 905236456 909454107 909454107 805398185 812819762 812819762 814010979 914558696 914558696 806112714 884733771 884733771 869299444 133219320 234655888 234655888 229639484 229639484 97178856 108071224 108071224 118021536 246075680 246075680 376256554 376256554 335689098 284896336 59626552 59626552 297158794 297158794 286459080 286459080 94503784 211237650 211237650 338120524 338120524 356183744 356183744 522344472 522344472 381572730 478405666 533773440 533773440 273682306 221783168 358561154 358561154 245362028 245362028 143579484 36835344 71426184 136459440 773025256 773025256 945827534 945827534 1006644776 1006644776 476453262 918598936 918598936 464155915 283120642 283120642 270532098 582869062 582869062 701421604 701421604 134567015 39944496 91328072 91328072 328491418 385946808 385946808 337329934 395709460 395709460 195299700 381755610 381755610 276889752 424843472 461631606 461631606 440434914 511952952 511952952 393111562 312319258 484273152 484273152 730984993 730984993 611578753 557447841 300027904 293650530 293650530 350489034 830809370 838934547 1048905804 1048905804 346620010 1003755720 1058148927 1058148927 173488788 173488788 213455784 213455784 160696932 427649792 472270896 497004858 497004858 245682132 245682132 367650282 367650282 335544330 335544330 16912416 957384864 968393207 968393207 606603147 476353770 756476742 758570981 758570981 617634708 617634708 550774588 718224597 1068444859 1068444859 1030192319 841535745 841535745 806323586 105348306 105348306 79765704 283259146 283259146 35155840 404631088 420985638 420985638 488653363 1027287373 1027287373 800266044 800266044 617359563 617359563 554698332 420355110 960702095 960702095 659106476 672936633 672936633 341344291 554348989 965948872 965948872 864997974 864997974 840508947 1030007144 1030007144 435261204 354732330 300243562 404208874 404208874 147065998 221692443 1037394239 1037394239 397596777 185616168 764987320 764987320 760792749 720612573 795436221 795436221 792782440 555958941 656986432 656986432 835066192 835066192 376808218 376808218 335675098 71354664 526415444 526415444 513414550 281545012 291843194 291843194 611368965 611368965 206402440 174239529 1065888541 1065888541 857336647 857336647 791712327 791712327 512890336 512890336 504575260 388547330 388547330 805965833 805965833 335846410 378692746 398573114 872440913 872440913 64212016 89652864 313732000 313732000 371360288 389206842 389206842 188643614 150355660 448603120 448603120 399046169 580462003 580462003 600868936 600868936 606099715 606099715 821490072 821490072 785958873 640202316 686720220 686720220 782240966 782240966 630643305 830652449 890554923 890554923 934406147 934406147 757121325 672444324 672444324 151676960 27391520 59414432 59414432 44302400 44302400 50270032 64548064 506192299 943533831 943533831 879779974 879779974 664536065 874776899 1006771030 1006771030 736243885 755237022 755237022 977137431 977137431 975175946 507254661 774898461 1049538144 1049538144 356627112 263212012 333021726 783768911 783768911 538906651 746420320 746420320 656321797 769396461 769396461 603939917 798089224 798089224 767576269 763176090 763176090 333453306 301255650 301255650 101989232 101989232 377372104 377372104 498174268 498174268 954023746 954023746 780600265 550323721 714565272 889698373 889698373 1025709348 1025709348 604749830 604749830 338306184 272786764 1041834910 1041834910 563624473 563624473 554108257 772615197 772615197 966423818 966423818 857281936 961488976 961488976 289354998 221508396 344159054 344159054 68045952 68045952 48350090 76131330 391905526 430703974 430703974 427563104 122301976 111375680 111375680 222872752 222872752 257684452 257684452 134284880 379201038 379201038 872943872 875173131 875173131 961089895 961089895 857839136 874512651 874512651 627323032 1064246487 1064246487 976436310 791551293 791551293 616638450 1002703409 1002703409 864771090 864771090 439680272 439680272 656458297 656458297 303360512 714658888 714658888 703105321 1009660344 1009660344 793852519 793852519 333324832 672831573 954290224 954290224 744401197 773744509 773744509 686779500 250847300 381016394 381016394 497036938 497036938 525876274 525876274 834176448 834176448 360761157 1036248457 1036248457 751564555 589302691 911643153 911643153 537411730 436357186 436357186 312641060 535019842 535019842 204147480 485119688 485119688 443929396 791592937 967337189 967337189 768881533 795775260 795775260 649468116 755401141 755401141 693309569 693309569 825303174 825303174 1009842458 1009842458 590208815 589728528 589728528 318964537 588394512 588394512 410634466 342452682 342452682 296158210 905303473 905303473 616244752 253412412 253412412 760459736 760459736 787507208 787507208 802449504 802449504 770730492 755725609 755725609 595068849 75183320 729854113 729854113 377536602 507557114 520811582 640003276 640003276 456884215 456884215 822678816 822678816 976496419 976496419 948996628 956485457 956485457 1009277068 1009277068 801051389 831475780 957213735 957213735 486646823 618061347 618061347 579759642 917202387 918239067 918239067 741655542 1070777019 1070777019 459542793 673497424 713295957 723536213 739385392 739385392 689570661 681710432 40051584 40051584 43164416 43164416 62504960 62504960 24191904 46957808 46957808 16616064 32066688 32066688 31467584 20482216 216548676 216548676 149472708 249087708 484245666 484245666 127028296 356647936 356647936 521833498 522375486 522375486 173732250 545456865 648033242 907812891 907812891 567927513 567927513 20048961 824639283 824639283 122622137 348366530 981935994 981935994 1001035421 1001035421 792464429 627808674 879661499 879661499 874696971 652924312 538702720 592142339 712632213 712632213 690577457 690577457 593506100 714352023 714352023 415239362 306513104 217981890 439041988 688392203 990381182 1043532854 1043532854 449001741 445508694 609504524 609504524 418941891 1056215364 1056215364 755083443 229765481 110003212 207753880 755391836 755391836 850336818 850336818 1064643519 1064643519 917843524 982456370 982456370 696853605 298290662 298290662 430993448 430993448 340264530 92984424 92984424 373661768 373661768 356606426 356606426 367002272 368067754 368067754 350426306 300067562 300067562 876290505 876290505 387973434 641430673 641430673 345540234 340330362 330106344 841552787 841552787 362481522 819021329 819021329 120903050 370351816 370351816 371226256 371226256 287574202 287574202 280898128 315886402 319793698 478787362 478787362 295098978 365314440 365314440 118753856 118753856 61912536 77666376 83697920 83697920 83572680 76238016 12039168 277868292 277868292 178522452 178522452 178522452 178522452 227012808 227012808 218239020 226496576 226496576 97068448 97068448 82388424 99922248 99922248 67276264 79780672 79780672 668090337 668090337 124599072 583154368 646912497 646912497 787091841 787091841 1040915483 1040915483 864695494 864695494 79814856 79814856 71346240 264192 264192 211822412 211822412 346192008 484705618 484705618 448065376 448065376 135693312 136450308 617953792 752878029 752878029 752878029 211861836 211861836 672475373 672475373 687576181 687576181 730859112 730859112 680534612 680534612 185282564 185282564 206224728 206224728 207020932 207020932 83701704 355216412 512803656 512803656 438305046 693373477 693373477 765726537 765726537 663224824 170182932 853951636 853951636 1758720 1758720 52429104 968098878 968098878 959320516 1051744784 1051744784 1057413662 1057413662 996839546 996839546 594677122 313126714 369438992 369438992 69021192 103599384 604689409 604689409 637964949 757990464 757990464 539778596 462021750 956343377 956343377 577371388 577371388 772256284 941165352 941165352 556828955 655412070 655412070 882235540 882235540 1003936503 1003936503 979713815 979713815 545462612 277741912 79763912 517745814 517745814 398701818 525139012 525139012 98689512 98689512 355043264 355043264 186110796 186110796 212008756 478364820 478364820 395912826 306232964 373321856 373321856 330870656 680228944 730568736 730568736 797667360 942216213 942216213 117544199 788549712 788549712 79709232 257104128 257104128 83085300 45205696 72950024 783319700 783319700 579110409 243629604 243629604 160172104 218629164 230085952 683437476 814368321 958740919 985117491 985117491 190771779 84461424 84461424 28345896 207374400 207374400 211593256 286997808 286997808 263313514 187728516 409035556 409035556 656778371 1064046015 1064046015 1042343343 1042343343 609813014 1028720355 1028720355 1023674373 1026128152 1026128152 430050384 287889728 119596512 119596512 122719024 382349538 382349538 105115800 302467210 302467210 9251136 82971398 135606348 135606348 682090949 682090949 186120756 789979348 804307965 804307965 302041227 238514628 545837140 730865872 730865872 593100804 10318848 292847148 486354894 486354894 412695782 552674241 763587361 763587361 229774152 642974210 846410619 846410619 639828160 210529989 227852974 419658382 419658382 643866066 643866066 372056961 830885384 849570276 849570276 562143372 562143372 76252768 102794616 102794616 99284296 8200040 7478272 23119624 87557928 228282928 228282928 209605256 209605256 136288004 77973620 61081872 61081872 344362192 344362192 46946378 0 0 25751264 113101728 113101728 46395600 54754000 56048304 180687520 428238932 428238932 415254656 415254656 380651834 394302586 464471674 470013196 741468109 741468109 699932192 891395562 891395562 683150052 311461266 453983286 467902304 467902304 413387154 409129382 742568326 742568326 295962978 295962978 866910254 907021322 907021322 819858184 388126560 398492322 398492322 454038836 454038836 187302454 446280688 446280688 332075558 449802779 449802779 1017657102 1017657102 629022633 239419161 574821556 796963767 917686367 917686367 632464041 632464041 588438112 11285440 20825952 20825952 17618473 229639456 412537704 480907520 480907520 920131039 920131039 575144721 699741121 750263749 798235245 798235245 408097673 856111155 856111155 638264545 647107161 647107161 903083906 903083906 654001113 805398185 805398185 812819762 812819762 814010979 928298762 928298762 125139960 394390464 394390464 106979816 106979816 234655888 234655888 265290368 265290368 247273980 247273980 176693908 172304532 246075680 246075680 122038288 110890584 337282338 337282338 280104296 362633480 362633480 354109952 351914442 320309128 320309128 122560842 122560842 38046880 51041328 155355664 429689664 429689664 426509058 426509058 477991622 477991622 156509484 214502336 214502336 164903008 164903008 245362028 245362028 202595216 196166769 758575173 758575173 773025256 773025256 945827534 945827534 746807625 700669153 165303964 918598936 918598936 560005528 820251654 820251654 645964856 839904285 940136532 940136532 701421604 869563830 869563830 348258979 621359754 621359754 385946808 385946808 864033084 1005001302 1005001302 955654514 955654514 824182982 358007696 138547332 113430900 440434914 440434914 511952952 511952952 393111562 312319258 484273152 537969153 614715905 618770437 685830533 685830533 300027904 237506021 250553756 350489034 426356859 838934547 1048905804 1048905804 707215372 1003755720 1058148927 1058148927 939952743 939952743 767219768 767219768 582895120 582895120 427649792 302323144 324676710 801229625 1017194516 1017194516 976563884 976563884 648110702 381503205 957384864 1015548896 1015548896 560205411 613685993 617611977 642067024 642067024 625350825 635782241 635782241 629507090 1068444859 1068444859 1030192319 577451171 451856833 84346616 272246090 344200512 346288458 359111808 359111808 102221448 102221448 107342232 582287944 582287944 889381028 889381028 766568236 766568236 505020778 538066027 538066027 654469694 809756331 1045531678 1045531678 424673958 424673958 612789993 620589165 620589165 578932138 864997974 864997974 618138878 856839976 997470732 997470732 226968688 211717180 557565506 557565506 152048941 110100480 600 66586832 66586832 63178992 64225360 64225360 573580864 573580864 608895061 773854068 773854068 555958941 656986432 656986432 835066192 835066192 316634706 316634706 268554240 63384128 526415444 526415444 513414550 287146982 298733148 398409594 611368965 611368965 206402440 174239529 1065888541 1065888541 857336647 857336647 791712327 791712327 555060146 846065217 857599539 857599539 844300273 805965833 877602050 877602050 395150059 398573114 872440913 872440913 350640554 367450602 367450602 313732000 319811392 445840722 445840722 524953904 524953904 448603120 490286726 490286726 580462003 580462003 771705128 817716805 817716805 606099715 821490072 821490072 785958873 640202316 495041028 362207850 782240966 782240966 747554907 376183996 336184562 358294722 720002944 757121325 757121325 672444324 672444324 30051040 30051040 31213440 31213440 27706176 27706176 21822496 111821872 324193788 943533831 943533831 879779974 879779974 701238501 268436224 76227608 736243885 736243885 755237022 755237022 639778062 975175946 975175946 691113368 691113368 1049538144 1049538144 849567113 774545217 504833819 679541656 679541656 538906651 538906651 231736044 232786329 769396461 769396461 727875628 782931344 782931344 767576269 344724120 344724120 117969968 94421352 94421352 84460608 16779264 16779264 262176 16844800 67177568 203950424 203950424 604056836 648020313 648020313 599847936 155881713 748700800 748700800 407437546 407437546 8963136 12583104 270551048 270551048 303247890 305270610 376370120 376370120 272746084 272746084 296061670 558309764 558309764 811157508 811157508 304750511 240913502 162141000 271521380 515515524 515515524 222042400 156780944 226159032 226159032 136524036 120136960 208422836 208422836 204507648 204507648 257684452 257684452 134284880 176367188 193146964 197341556 675959808 675959808 544895264 544895264 857839136 874512651 874953208 874953208 460142602 404366356 260116260 77408644 616638450 616638450 198184394 655754047 908025674 908025674 219782427 219782427 656458297 656458297 467936164 714658888 714658888 637029290 637029290 236798496 793852519 793852519 333324832 672831573 672831573 103841687 744401197 773744509 773744509 686779500 303965696 303965696 260076352 260076352 92407828 432395842 432395842 834176448 834176448 822218787 822218787 269034496 608359594 608359594 269484546 269484546 88814624 58026368 312641060 312641060 535019842 535019842 65603952 65603952 282473488 282473488 791592937 967337189 967337189 768881533 795775260 795775260 649468116 755401141 755401141 693309569 693309569 825303174 825303174 1009842458 1009842458 590208815 589728528 663945737 663945737 588394512 910259577 910259577 44140976 44140976 44315696 101100336 605346640 605346640 253412412 253412412 221906748 557140480 557140480 780054280 780054280 134033400 134033400 755725609 755725609 595068849 75183320 729854113 729854113 524919810 491894458 491894458 640003276 640003276 456884215 456884215 505350606 505350606 976496419 976496419 948996628 956485457 956485457 1009277068 1009277068 801051389 801051389 821825475 821825475 615383868 986894829 986894829 684720837 917202387 918239067 918239067 330335082 572707089 572707089 291709082 291709082 358928952 376564016 739385392 739385392 689570661 681710432 40051584 40051584 43164416 43164416 62504960 62504960 8236656 8653632 8653632 15992896 15992896 31467584 31467584 8388800 8388800 3473920 66229136 66229136 66424928 66424928 170339856 172878996 260075672 260075672 51115056 83886648 105910528 354551194 354551194 28126560 311105538 311105538 38900544 45147728 373132122 373132122 133984336 133984336 981935994 981935994 1001035421 1001035421 792464429 627808674 627808674 426565902 443741115 443741115 538702720 538702720 712632213 712632213 457183653 539042049 593506100 714352023 714352023 635119240 362364331 27529088 27529088 688392203 990381182 1043532854 1043532854 680881153 680881153 380951498 802521916 860187159 1056215364 1056215364 755083443 624341184 555670145 136512292 755391836 755391836 850336818 850336818 848324139 917843524 917843524 982456370 982456370 696853605 136901770 136901770 344266952 344266952 298135560 365304042 365304042 373661768 373661768 356606426 356606426 381081616 381081616 368067754 273434816 300067562 300067562 876290505 876290505 387973434 641430673 641430673 345540234 340330362 330106344 841552787 841552787 362481522 819021329 819021329 120903050 400750138 400750138 371226256 371226256 287574202 287574202 280898128 315886402 319793698 319793698 286632576 295098978 295098978 22041568 118753856 118753856 61912536 57630032 70214592 70214592 26470024 54394224 62120704 277868292 277868292 287736146 549718725 549718725 469113654 633683975 633683975 382929554 81272800 92810920 576839897 576839897 877694756 877694756 823993644 95884608 95884608 79780672 74972040 60945096 50718768 27979344 151586048 153674804 182639316 205669760 205669760 80270758 356708584 478872812 478872812 286715432 349688426 412770916 412770916 159460284 159460284 346192008 484705618 484705618 380126022 431564550 431564550 687983501 687983501 337659575 264242888 264242888 771298977 771298977 672475373 672475373 687576181 687576181 585163968 663246016 680534612 680534612 185282564 185282564 111566876 106963340 106963340 37151256 34667140 29635304 512803656 512803656 438305046 19922998 546620294 812401123 963693719 963693719 430982211 853951636 853951636 679647059 538893825 213928529 207494348 177098208 580688032 1051744784 1051744784 1057413662 1057413662 996839546 996839546 594677122 107747376 257420680 257420680 221249196 103599384 108039808 108039808 152584728 155223184 155223184 148924227 953714754 953714754 946384769 946384769 760047656 1031376261 1031376261 941165352 359711809 573905418 573905418 881264788 881264788 685443861 685443861 979713815 979713815 545462612 277741912 79763912 517745814 517745814 398701818 525139012 525139012 191780516 98689512 355043264 355043264 495240766 495240766 485458838 485458838 26748558 306232964 306232964 291817568 307274882 307274882 287408306 730568736 730568736 797667360 942216213 1057697850 1057697850 1010458960 1010458960 280602421 79709232 708134717 708134717 547756353 562707897 1008814593 1008814593 454371894 790049842 790177295 790177295 218629164 320121826 939345537 939345537 958740919 985117491 985117491 190771779 71352456 84279340 218103852 218103852 61378980 326633394 326633394 286997808 263313514 62253936 715137250 715137250 807421956 941934855 941934855 153955620 153955620 151858212 151858212 17048580 12600384 12600384 8970304 16901248 42477696 63972384 100029032 100029032 85105568 67108872 63115384 60031728 60031728 35275504 35275504 78154688 78154688 682090949 682090949 186120756 721744380 804307965 804307965 131647589 238514628 238514628 730865872 730865872 593100804 46731512 292847148 486354894 486354894 412695782 144733486 763587361 763587361 396459372 553728589 553728589 639828160 639828160 210529989 227852974 419658382 419658382 643866066 643866066 372056961 217320396 154322432 335758440 335758440 198204520 76252768 102794616 102794616 95826984 8200040 12813444 66946564 99827040 228282928 228282928 184685892 184685892 136288004 161647172 161647172 98307992 224789444 224789444 122240024 131739264 131739264 110702128 113101728 113101728 163889808 164937780 164937780 180687520 428238932 428238932 415254656 415254656 380651834 394302586 464471674 1055817199 1055817199 741468109 699932192 891395562 891395562 683150052 731782386 984211797 984211797 418823811 413387154 409129382 833457256 879754569 879754569 606205841 456804775 907021322 907021322 819858184 388126560 398492322 398492322 351454066 478406304 478406304 446280688 446280688 332075558 449802779 449802779 1017657102 1017657102 957000240 957000240 604981511 796963767 917686367 917686367 865385395 865385395 864043138 864043138 845521475 831521092 162882404 158592676 203528932 480907520 480907520 75374568 75374568 572330336 787035878 836707435 836707435 777073293 302927742 369174920 382209600 382209600 378022986 851182337 918037273 918037273 654001113 379807888 317175256 315101634 315101634 630335000 928298762 928298762 125139960 394390464 655574344 655574344 260039732 260039732 78418548 265290368 265290368 247273980 247273980 176693908 190395332 190395332 198256180 198256180 189010704 337282338 337282338 280104296 362633480 362633480 354109952 351914442 338096898 320309128 276169538 253900004 103759128 440451222 440451222 429689664 452034700 452034700 426509058 477991622 477991622 156509484 214502336 214502336 164903008 164903008 16327264 202595216 202595216 196166769 758575173 758575173 563779293 563779293 551978236 548614977 700669153 700669153 172491064 621641148 621641148 1069843796 1069843796 990548059 990548059 839904285 940136532 940136532 700498149 869563830 869563830 348258979 621359754 621359754 1057174538 1057174538 864033084 1005001302 1005001302 955654514 955654514 824182982 358007696 232928092 232928092 191943248 213909708 409059620 409059620 287466044 93492368 40472657 537969153 680730624 680730624 685830533 685830533 237506021 237506021 250553756 250553756 894458082 894458082 537055233 891235536 891235536 707215372 362850568 860146420 939952743 939952743 767219768 767219768 582895120 582895120 308220032 526436596 526436596 801229625 1017194516 1017194516 976563884 976563884 648110702 861815564 861815564 1015548896 1015548896 560205411 613685993 617611977 830476314 830476314 625350825 635782241 635782241 136603020 546098244 776301965 897439265 897439265 516108507 124758504 272246090 344200512 346288458 359111808 359111808 117164872 420894402 420894402 582287944 846650176 889381028 889381028 716722214 419563076 608727716 608727716 407274684 654469694 654469694 1045531678 1045531678 822903811 822903811 612789993 620589165 620589165 299630256 694582411 694582411 405291426 791317656 997470732 997470732 386134074 386134074 557565506 557565506 471051083 226809354 891561991 891561991 699449969 699449969 64225360 64225360 573580864 573580864 608895061 608895061 169874121 17498112 0 0 109337922 321884914 341260730 341797018 341797018 322122546 322122546 221438330 161481060 287146982 298733148 398409594 528555780 574096108 595800177 595800177 72790889 40065152 40065152 7562832 344454200 344454200 555060146 846065217 857599539 857599539 844300273 391535601 877602050 877602050 395150059 324666080 131590152 131590152 350640554 367450602 367450602 146605040 319811392 445840722 445840722 524953904 524953904 186563364 490286726 490286726 57487500 13894336 771705128 948377601 948377601 268486253 416621418 416621418 930289986 930289986 489426222 1047402695 1047402695 946728291 747554907 495327980 336184562 358294722 720002944 720002944 581923673 571139424 142694404 141657088 30051040 31213440 31213440 23648256 23648256 32003776 111821872 324193788 324193788 285237378 757343722 757343722 701238501 200486721 76227608 135397950 515907198 515907198 639778062 639778062 318872893 135024048 727283112 727283112 912715142 912715142 849567113 774545217 504833819 715907270 715907270 805848508 805848508 231736044 231736044 204770860 727875628 727875628 644010393 546724241 675322496 940517858 940517858 309461872 301255650 301255650 84460608 39603712 396005080 417140226 441391700 441391700 203950424 203950424 604056836 648020313 897099152 897099152 770208698 974858101 974858101 528205591 571708567 780805395 1019281903 1019281903 914654486 653998041 653998041 537131841 341052042 341052042 272746084 556270691 690079336 690079336 811157508 811157508 963870892 963870892 448832356 448832356 515515524 515515524 222042400 121898920 226159032 226159032 227180544 227180544 208422836 208422836 204507648 204507648 188440444 178134324 232502358 391168698 391168698 118538808 675959808 675959808 541618344 541618344 501986433 100847640 874953208 874953208 231684523 236403228 574299913 574299913 924778884 924778884 457975196 198184394 1063229370 1063229370 852016838 993895685 993895685 914648398 467936164 467936164 299996028 244441692 234510116 234510116 120462648 278035136 278035136 80863944 18529800 33296352 123425010 123425010 303939240 303939240 303965696 303965696 260076352 260076352 92407828 432395842 432395842 816459846 816459846 822218787 822218787 1027261729 1027261729 608359594 652977723 652977723 554171914 302598788 421596460 421596460 506365240 506365240 357498080 292299042 56780536 964399246 964399246 637251317 637251317 511486140 568421132 641802393 1072890193 1072890193 991040055 614897787 321033166 351424883 547438597 547438597 77639024 61082144 353437808 663945737 663945737 559506209 910259577 910259577 299231970 529818864 529818864 397272254 543959528 543959528 55331329 19658016 90104192 194513056 194513056 780054280 780054280 223087788 68787224 264450296 264450296 162211176 162211176 432562748 524919810 524919810 491894458 491894458 488298030 224092290 237650460 237650460 582657777 582657777 653947317 762556983 762556983 405848838 435689362 435689362 219469350 167823420 653822654 821825475 821825475 888146389 986894829 986894829 684720837 575804097 578367656 578367656 367014571 126087288 639791488 639791488 291709082 358928952 376564016 376564016 70649008 24568544 24505248 40437184 40437184 16304064 34603072 34603072 41001728 41001728 23071392 23071392 15993792 15992896 11069056 1317672 18085636 203000356 203000356 165087332 202165260 237471568 237471568 208245440 218349884 226555180 244053100 244053100 209973324 176373784 354551194 354551194 44378448 311105538 311105538 38900544 45147728 373132122 373132122 133984336 133984336 119857442 84533352 754978688 775162653 775162653 206115356 835839949 835839949 172058006 285543062 460974006 460974006 269831604 22856708 22856708 38013072 629736156 725754613 725754613 807019331 807019331 78977984 207898248 549503663 549503663 189241464 310504961 680881153 680881153 380951498 802521916 860187159 1036554720 1036554720 624341184 624341184 555670145 136512292 136512292 404874198 448867286 768395922 768395922 923814124 923814124 755724569 755724569 933252112 933252112 805705731 893559978 893559978 298135560 365304042 365304042 315668578 368124906 381813514 381813514 381081616 381081616 353815168 273434816 273434816 289407200 361105610 361105610 344117312 344117312 294293504 294293504 77214898 26678922 14418112 400204826 400204826 387027273 882786339 882786339 900916304 900916304 867868527 1025376285 1025376285 1045184595 1045184595 802905119 1064184642 1064184642 817233928 817233928 429341286 406285608 396884346 396884346 327994482 327994482 271586272 361361538 361361538 350320544 62120704 62120704 44304720 287736146 549718725 549718725 469113654 633683975 633683975 382929554 124989912 124989912 576839897 576839897 877694756 877694756 823993644 114298552 114298552 67706976 68747336 220925996 253173056 253173056 184549428 153674804 182639316 188559156 238421260 238421260 356708584 478872812 478872812 286715432 349688426 412770916 412770916 159460284 159460284 293921090 293921090 217670096 217670096 431564550 431564550 687983501 687983501 337659575 264242888 264242888 771298977 771298977 641279473 641279473 555827857 585163968 585163968 145752900 145752900 142760420 187435268 187435268 172666250 275010822 476343068 476343068 111334284 204747332 204747332 261337492 261337492 255885412 546620294 812401123 963693719 963693719 430982211 694847700 694847700 679647059 538893825 483866766 483866766 239293298 580688032 580688032 567411576 389305128 332794448 528882738 528882738 337905976 275392800 304810136 304810136 221249196 101001240 106023944 106023944 152584728 155223184 155223184 148924227 953714754 953714754 946384769 946384769 823715749 1031376261 1031376261 612912783 359711809 285264864 68293128 92509032 92509032 69464328 274086226 304581450 304581450 100696184 286613656 382995162 382995162 374772242 374772242 195708180 195708180 191780516 224549284 224549284 99293920 495240766 495240766 485458838 485458838 26748558 507532488 507532488 139111296 138411780 66247108 287408306 688123904 688123904 627126944 627126944 1057697850 1057697850 1010458960 1010458960 738927965 738927965 708134717 708134717 547756353 562707897 1008814593 1008814593 454371894 790049842 790177295 790177295 299632856 320121826 939345537 939345537 804682070 804682070 940295436 940295436 990561531 990561531 928160379 860492979 424433045 683966882 694157838 694157838 183941636 62253936 715137250 1026079085 1026079085 966912060 941934855 992021627 992021627 774655295 989866207 989866207 890021889 890021889 820751720 428655808 371638320 124033920 113082016 81876272 86432040 86432040 84935208 84935208 71524904 74423360 74423360 10694976 42328096 160628436 160628436 44114256 188017504 188017504 136315140 83974540 261981772 261981772 149964100 149964100 130023432 355681714 355681714 509533854 509533854 272092202 403520964 403520964 396459372 396459372 541802887 541802887 385483072 805577987 805577987 207667596 245447856 245447856 74236473 169075584 339086858 339086858 937166123 937166123 549503242 888193995 888193995 885116387 291660961 291660961 7388328 12813444 66946564 99827040 171636012 171636012 100191352 88465080 55373072 161647172 161647172 98307992 224789444 324411826 324411826 131739264 312334432 389336842 389336842 81021464 163889808 506926632 510541102 510541102 333397740 115794288 256197820 256197820 331067680 331067680 348588397 1055817199 1055817199 721747129 721747129 644486553 549007072 406714741 731782386 984211797 984211797 545778432 454222417 422650662 833457256 879754569 879754569 606205841 456804775 326638578 120847296 401749538 401749538 278796160 278796160 399085034 478406304 478406304 289200578 355349634 355349634 340656900 450206424 450206424 222200118 957000240 957000240 604981511 136380416 268605952 707615079 865385395 865385395 864043138 864043138 845521475 833811328 620356297 620356297 226937285 355992420 672350019 672350019 84024908 1007628448 1007628448 836707435 935461808 935461808 302927742 312758538 382209600 382209600 378022986 923321832 923321832 918037273 379807888 379807888 317175256 315101634 315101634 630335000 630335000 123778042 374419987 890677124 890677124 655574344 260039732 260039732 186990488 87690840 60503664 119160744 119160744 117768256 190395332 190395332 198256180 198256180 189010704 86965824 109032656 109032656 93686792 289281312 368883202 368883202 338096898 276169538 276169538 253900004 103759128 440451222 440451222 409535750 452034700 452034700 67500720 95584256 95584256 87297608 99095592 99095592 95995752 95995752 16327264 221323856 221323856 181510148 185850204 223657608 223657608 265658728 265658728 251548616 221335624 219843200 219843200 178593832 178593832 1069843796 1069843796 990548059 990548059 445021239 394896454 272694378 272694378 479176646 479176646 366809348 366809348 388511024 1057174538 1057174538 855773235 629478418 1061010182 1061010182 489747249 209736444 167907348 232928092 232928092 156447396 95499212 3211264 97572556 139502116 139502116 274829740 274829740 680730624 680730624 80005320 637870698 637870698 512251042 512251042 129879158 894458082 894458082 383817331 1023283118 1023283118 556800999 362850568 362850568 256435004 82012020 133756300 724700817 724700817 572472849 572399616 526436596 526436596 749790782 766582943 766582943 758154381 918916810 918916810 861815564 861815564 589436735 388911783 212097568 537135137 844172467 844172467 830476314 766060013 766409028 766409028 764114366 764114366 776301965 897439265 897439265 516108507 297802930 313376434 313376434 84884520 84884520 351696730 351696730 474838900 516633822 516633822 846650176 846650176 716722214 716722214 419563076 608727716 608727716 407274684 499140853 499140853 258213821 688392198 1072864807 1072864807 408706521 308022930 190763046 291538182 291538182 405291426 405291426 791317656 791317656 544754728 386134074 386134074 738207795 998552244 998552244 802345725 891561991 891561991 868352471 699449969 617933493 760932444 760932444 641273977 246419568 246419568 211943949 539853357 539853357 555096609 557652096 557652096 341260730 341797018 341797018 395945586 395945586 234982574 161481060 157401700 458026308 458026308 867810907 867810907 595800177 595800177 616547825 897363938 897363938 1053366742 1053366742 1053243615 1053243615 880490379 880490379 880490379 402275898 837831984 837831984 305452699 915217433 915217433 617438217 306241537 608837899 698547280 786813293 923348382 923348382 525999240 319620836 318883128 318883128 491492408 491492408 525387057 752032081 1014904451 1014904451 948377601 948377601 1006946319 1006946319 749070669 930289986 930289986 682253388 1047402695 1047402695 946728291 495327980 495327980 93623340 82206944 90797992 216246212 216246212 145111136 142694404 141657088 12032512 27465344 27465344 23648256 23648256 32003776 98677920 150999201 558627333 689245321 689245321 614465097 614465097 457479205 89269279 622148115 680070879 782936440 964024739 1063150512 1063150512 913751582 913751582 915221632 915221632 713163848 931400811 1042562547 1042562547 826751139 715907270 805848508 805848508 496160627 343940640 343940640 557266185 557266185 166538420 591752033 675322496 940517858 940517858 309461872 301255650 301255650 51733184 51733184 396005080 417140226 441391700 441391700 833451352 865939149 872764043 872764043 897099152 924862378 924862378 974858101 974858101 947982574 571708567 780805395 1019281903 1019281903 914654486 875780496 875780496 841064402 841064402 341052042 105693714 556270691 690079336 690079336 219217999 757974668 963870892 963870892 448832356 448832356 427106982 311888116 73335328 136183892 136183892 84199464 227180544 227180544 109591552 202885184 202885184 188440444 188440444 237929548 767666755 767666755 492096174 917000088 917000088 887798982 887798982 779855832 779855832 6427718 138621056 138621056 223753240 236403228 574299913 574299913 924778884 924778884 457975196 117850884 1063229370 1063229370 852016838 993895685 993895685 914648398 514098010 403778406 244441692 244441692 234510116 234510116 120462648 120462648 272943234 272943234 291719392 308404626 308404626 300790912 115994712 62925016 47003664 115772680 115772680 125964408 125964408 124834792 490959012 490959012 1000390874 1000390874 770179616 1027261729 1027261729 667628793 667628793 652977723 554171914 302598788 421596460 421596460 506365240 506365240 357498080 292299042 202493952 964399246 964399246 808017568 808017568 680404984 568421132 641802393 1072890193 1072890193 991040055 614897787 601499407 601499407 111723864 276885570 386957624 898746152 923298393 923298393 590356496 559506209 123544282 299231970 299231970 529818864 529818864 397272254 543959528 543959528 55331329 19658016 90104192 194513056 717223692 717223692 256810112 223087788 167187569 709181333 709181333 688855209 162211176 1034766887 1034766887 229476616 229476616 172337828 811446356 811446356 763482826 763482826 681974387 681974387 653947317 667323488 667323488 896016880 896016880 1009696782 1009696782 219077549 632950272 632950272 724697980 888146389 945292686 945292686 663884409 575804097 608293384 835298984 835298984 604137000 639791488 639791488 300639808 300639808 55057160 70649008 70649008 44200912 46860240 48800960 48800960 16304064 16304064 54624384 60940656 60940656 25256432 23071392 15993792 14502592 11069056 8986880 76022028 203000356 203000356 165087332 202165260 237471568 237471568 208245440 248178124 248178124 244053100 246465372 246465372 234004992 105457184 71697152 72825480 116033408 116033408 35777600 44655888 44655888 44363216 44363216 28934080 21309600 21309600 754978688 775162653 775162653 206115356 835839949 835839949 945934869 945934869 688391205 688391205 722258997 722258997 191339489 577563368 629736156 772407892 772407892 807019331 807019331 78977984 278922818 549503663 1006780608 1019400399 1019400399 1044600989 1044600989 167538436 371412446 371412446 344593482 352985982 352985982 320671020 0 173719576 173719576 834143667 834143667 1067913638 1067913638 1008639386 1008639386 755724569 755724569 933252112 1062997487 1062997487 893559978 893559978 371011250 371011250 358658120 358658120 368124906 381813514 381813514 304156968 353815168 353815168 289933504 289933504 289407200 361105610 702522573 768325319 768325319 991164085 991164085 730944224 407905998 407905998 400204826 400204826 812994761 882786339 882786339 900916304 900916304 867868527 1025376285 1025376285 1045184595 1045184595 820363454 1064184642 1064184642 817233928 817233928 429341286 406285608 396884346 396884346 327994482 327994482 923064537 923064537 577555451 350320544 274024177 863452083 863452083 18066000 546644946 962601955 962601955 703742423 547394180 321979378 124989912 124989912 389224466 389224466 89662560 80814792 68683272 114298552 114298552 67706976 68747336 220925996 253173056 253173056 184549428 38920848 103873496 103873496 248742680 344377636 497342554 497342554 253268650 292173600 292173600 281943234 281943234 64240802 54177424 211846788 211846788 217670096 217670096 135821312 119083328 132201768 243926448 243926448 240914076 218890900 630383397 630383397 553664600 549987648 549987648 543236481 30438564 145752900 145752900 142760420 187435268 187435268 234889231 807412119 979546885 979546885 586277841 586277841 204747332 261337492 261337492 723534317 723534317 412090950 589039424 589039424 827883910 827883910 556533410 319533500 285327610 483866766 483866766 277082184 277082184 291935010 389305128 389305128 325058994 325058994 337905976 337905976 275392800 304810136 304810136 20594336 101001240 106023944 106023944 70280712 74991264 74991264 684745346 684745346 406916482 695789730 835453029 835453029 813475074 606117888 91275584 285264864 285264864 68293128 92509032 92509032 438883024 438883024 47367446 385557672 385557672 286613656 382995162 382995162 374772242 374772242 381420816 381420816 282888752 282888752 224549284 99293920 409465948 409465948 254426216 318939340 318939340 507532488 507532488 446728452 137023574 131700876 61147136 558303701 558303701 721496072 721496072 739246605 750477624 767219565 767219565 738927965 738927965 675210608 675210608 194293388 427851858 427851858 310394982 172559364 165152484 696852646 818414787 818414787 927701395 927701395 360379947 558137046 558137046 940295436 940295436 990561531 990561531 928160379 860492979 424433045 683966882 694157838 694157838 57836328 31070000 186925320 1026079085 1026079085 966912060 922806333 992021627 992021627 774655295 989866207 989866207 890021889 890021889 820751720 428655808 371638320 285746490 279079294 266604544 266604544 286882354 318166418 318166418 124443520 298956546 298956546 11272384 13700864 160628436 160628436 44114256 188017504 188017504 136315140 108325664 261981772 261981772 147997064 147997064 164676304 355681714 355681714 509533854 509533854 272092202 403520964 519020488 519020488 313265026 541802887 541802887 293748122 805577987 805577987 116593432 116593432 121285616 121285616 109337145 339086858 339086858 937166123 937166123 549503242 888193995 888193995 885116387 292598658 292598658 275989410 3003264 65791496 98351536 98351536 100191352 100191352 103876176 103876176 47459856 47459856 58984720 344213056 344213056 324411826 104593176 312334432 389336842 389336842 32056800 159920540 506926632 510541102 510541102 333397740 67712720 256197820 256197820 331067680 331067680 328339588 421213794 645408396 721747129 721747129 644486553 829213752 829213752 285595156 438910001 545778432 545778432 454222417 422650662 437520918 437520918 134480402 25460768 322425362 322425362 171517716 401749538 401749538 278796160 278796160 399085034 1010826261 1010826261 402990370 847055375 847055375 340656900 814087243 814087243 478256309 478256309 310767204 136380416 136380416 919889474 919889474 707615079 295086146 23235456 823159648 833811328 833811328 620356297 620356297 557779104 355992420 672350019 672350019 249035420 1007628448 1007628448 895354305 935461808 935461808 1049107456 1049107456 39063120 285622384 285622384 923321832 923321832 805576785 559669378 878731897 878731897 918642995 918642995 639845713 45492545 605061656 626575016 890677124 890677124 163454820 110232180 186990488 186990488 108793752 221723558 221723558 119160744 117768256 126167160 387019470 734417653 734417653 857575434 857575434 109032656 553518288 601411697 601411697 935254354 935254354 893480041 542542360 169820800 169820800 89313960 100663320 100663320 33812488 46186880 207888648 207888648 105179996 189614496 430160694 430160694 206095500 342966638 342966638 170641796 221323856 221323856 207916764 162868068 189552596 189552596 265658728 265658728 251548616 221335624 650642649 785188181 785188181 608111714 608111714 380470672 347340804 347340804 293855264 293855264 835326147 835326147 691214084 810104738 810104738 411388168 615118272 615118272 483063275 629478418 758188261 1061010182 1061010182 724859116 724859116 482380014 175392224 137913556 36299996 93970664 309035240 476063164 476063164 139502116 274829740 700578915 700578915 568541448 685505093 825254150 825254150 512251042 512251042 129879158 744800429 744800429 658556848 1023283118 1023283118 556800999 205653460 256435004 672782032 672782032 575727285 724700817 724700817 572472849 572399616 407422086 407422086 749790782 766582943 766582943 758154381 918916810 918916810 671455930 671455930 176439876 176439876 180372165 537135137 844172467 844172467 766060013 766060013 766409028 766409028 764114366 764114366 872096278 872096278 759073760 893154506 893154506 313376434 313376434 318335746 318335746 351696730 351696730 474838900 516633822 516633822 385588934 1065579561 1065579561 239826395 212390992 163627164 163627164 390352042 499926261 499926261 258213821 298978612 1072864807 1072864807 408706521 224680380 224680380 850303040 850303040 841532691 388368875 957021314 957021314 544754728 125854268 635437252 738207795 998552244 998552244 802345725 756299930 868352471 868352471 617933493 617933493 760932444 760932444 641273977 246419568 246419568 605028448 605028448 565876577 565876577 557652096 557652096 109916008 332387120 332387120 395945586 395945586 329015864 277472322 42016848 458026308 609713776 867810907 867810907 436399752 512807581 616547825 897363938 897363938 1053366742 1053366742 1053243615 1053243615 923217312 880490379 880490379 343161411 837831984 837831984 305452699 915217433 915217433 617438217 608886068 608886068 698547280 786813293 923348382 923348382 525999240 319620836 380558218 380558218 491492408 491492408 525387057 752032081 1014904451 1014904451 552665970 757078086 1006946319 1006946319 749070669 749070669 682253388 682253388 639945785 262575445 247194156 185599928 185599928 93623340 168677392 168677392 42951764 39285392 46328144 46328144 43074320 43074320 40166080 27465344 7864352 24810368 29889888 73037664 150999201 558627333 689245321 689245321 614465097 614465097 457479205 333033714 622148115 680070879 782936440 964024739 1063150512 1063150512 913751582 913751582 915221632 915221632 742803913 931400811 1042562547 1042562547 826751139 1062733453 1062733453 496160627 496160627 343940640 343940640 557266185 557266185 22867216 591752033 591752033 58970224 58904688 42353152 42353152 46291408 51733184 51733184 45101648 45101648 36489056 422487912 833451352 865939149 872764043 961357965 961357965 924862378 924862378 1072751655 1072751655 1019917200 395331249 77145672 284975320 284975320 376943491 875780496 875780496 987854785 987854785 877152153 956949543 956949543 303607335 369888282 369888282 67111954 38446080 38446080 178327488 178327488 56708224 171523632 171523632 136183892 136183892 45101840 134517844 213104976 213104976 218792220 218792220 127978108 137981736 237929548 767666755 767666755 501293550 917000088 917000088 887798982 887798982 807572384 953405603 953405603 675412167 1000857636 1000857636 425537190 425537190 185672242 578172822 881067164 987048663 987048663 203233963 138461344 150994980 314849476 314849476 514098010 514098010 361883988 318964272 310452306 286270064 286011050 286011050 348619968 348619968 272943234 291719392 308404626 308404626 300790912 29224800 36812512 47003664 47003664 51494940 125964408 125964408 253402810 490959012 490959012 1048773886 1048773886 692061485 132260216 637219632 667628793 667628793 91977593 84669480 298764368 327842418 332922002 336210354 430467356 430467356 455902534 455902534 1006699183 1006699183 810672762 810672762 763372664 763372664 645922905 882967659 882967659 992952030 992952030 601499407 690021509 727766037 727766037 386957624 898746152 923298393 923298393 585147721 585147721 896650480 896650480 390660226 390660226 644968324 644968324 646969376 646969376 555676221 85383720 736798664 750981013 750981013 717223692 794771133 794771133 643042560 709181333 709181333 688855209 162010984 1034766887 1034766887 229476616 229476616 438196448 811446356 811446356 763482826 939171782 939171782 681974387 447877974 447877974 351437908 896016880 896016880 1009696782 1009696782 621316330 632950272 1028915490 1028915490 904528781 975445841 1031297293 1031297293 515262392 608293384 835298984 835298984 604137000 604572032 604572032 386422683 349432616 343415946 282042312 44200912 44200912 46860240 48800960 48800960 19658016 30594784 126014000 126014000 92500128 44704592 293233696 293233696 294715392 360919146 360919146 76022028 155821700 215081676 215081676 456132176 456132176 393392318 292803156 248178124 248178124 213587436 246465372 246465372 234004992 105457184 71697152 72825480 72825480 71925760 6055048 5468864 33835008 33835008 8788032 29501440 29501440 145996276 228454240 238414620 253713420 834017388 834017388 694341787 945934869 945934869 688391205 688391205 722258997 722258997 191339489 577563368 736007709 772407892 772407892 363646083 537762776 537762776 446811237 278922818 1006780608 1019400399 1019400399 1044600989 1044600989 622343882 882589728 882589728 344593482 352985982 352985982 320671020 163158312 206194400 206194400 834143667 834143667 1067913638 1067913638 1008639386 1008639386 226058012 226058012 691603108 1062997487 1062997487 703409637 702810256 375002168 371011250 358658120 358658120 335702416 121095992 391424882 391424882 301917408 301917408 289933504 293861474 298002636 411553824 702522573 768325319 768325319 991164085 991164085 730944224 458042550 520600814 520600814 1007592672 1007592672 978282891 130115778 584030880 584030880 508532664 422964006 170458326 973758002 973758002 820363454 833890734 833890734 476586849 268772384 17825920 17825920 4194848 120244736 121511736 121511736 923064537 923064537 577555451 274024177 317763008 863452083 863452083 18066000 546644946 962601955 962601955 703742423 547394180 6431232 68178144 92532840 92532840 74481712 74481712 77072384 77336136 77336136 77336136 77336136 52352136 47636000 183257312 183257312 25733300 18689568 103873496 103873496 248742680 344377636 497342554 497342554 253268650 292173600 292173600 281943234 281943234 64240802 54177424 145793908 145793908 606021349 606021349 28521312 119083328 119083328 616539808 616539808 567846244 723587196 724824885 724824885 582218577 582218577 536998640 560092945 560092945 62545232 64771360 141595392 607389705 607389705 604244232 807412119 979546885 979546885 586277841 586277841 332583666 781357322 878784558 878784558 723534317 418456518 418456518 416567026 827883910 827883910 556533410 151101560 151101560 125919268 130779656 320864256 320864562 359815570 359815570 320472498 325058994 325058994 304349362 117586226 74121496 106436256 106436256 55507360 55507360 44369360 19170032 14453632 9710272 17932320 684745346 684745346 289415909 285494563 835453029 835453029 813475074 433414410 433414410 419684938 419684938 355799116 223412392 240132174 438883024 438883024 519645150 519645150 385557672 528537290 528537290 143034572 143034572 359137568 381420816 381420816 321674570 321674570 321307736 321307736 84175952 254426216 254426216 344894544 344894544 373294494 446728452 446728452 137023574 169610772 538978826 538978826 80022999 721496072 721496072 102760728 750477624 767219565 767219565 681420133 78458120 331960890 396107492 446293590 446293590 437738560 310394982 214247549 517218989 696852646 818414787 818414787 927701395 927701395 360379947 558137046 558137046 73400712 73400712 38437304 25202912 25202912 103860448 133434360 133434360 211337944 211337944 114345548 0 557056 574464 574464 8851928 107867544 311056132 504390174 504390174 211539226 136179204 227177572 544866369 544866369 186912876 750492345 750492345 279079294 266604544 266604544 325599914 325599914 318166418 882222347 925373114 925373114 552241280 552241280 52771888 52771888 44107088 148112932 148112932 108325664 108325664 55439312 134942264 134942264 114345656 164676304 164676304 154194064 56280032 135340068 300663200 300663200 519020488 519020488 420986424 420986424 403040262 151474210 81863112 81863112 116593432 116593432 328091968 328153826 328153826 322313010 322752306 322752306 621399912 833914401 904995819 904995819 888408906 888408906 292598658 275989410 32768 36864000 98351536 98351536 61541624 61541624 103876176 103876176 47459856 47459856 46927056 373836432 373836432 121409010 51400336 39617072 39617072 35399344 35399344 54593072 98764864 98764864 249703368 249703368 169294356 83178712 101718152 385006032 385006032 328339588 775753281 775753281 739381773 442779551 640437298 829213752 861564055 861564055 692041269 438910001 319023415 419878134 419878134 37882500 281022530 281022530 326235120 326235120 171517716 281030656 281030656 235805724 235805724 212163676 364226151 1010826261 1010826261 402990370 847055375 847055375 231732835 814087243 814087243 478256309 478256309 231476460 231476460 133181744 919889474 1029970605 1029970605 305555853 723684226 723684226 195308519 152834120 228466284 744635078 744635078 754281164 754281164 407276419 249035420 369689324 369689324 895354305 895354305 555090646 1049107456 1049107456 339267034 394712170 394712170 355768840 805576785 805576785 559669378 878731897 878731897 918642995 918642995 639845713 398853306 605061656 626575016 626575016 477766700 477766700 318902704 232396524 101386054 108793752 221723558 272638000 285286434 420561034 420561034 387019470 734417653 734417653 857575434 857575434 853940691 853940691 601411697 601411697 935254354 935254354 893480041 542542360 169820800 286575910 360044196 360044196 115180676 302571420 486340182 486340182 429418430 429418430 189614496 430160694 430160694 206095500 342966638 342966638 170641796 170641796 207916764 207916764 254013756 254013756 438016414 438016414 191664736 191664736 128051608 650642649 785188181 785188181 608111714 608111714 269066240 347340804 773587596 773587596 920144789 920144789 835326147 1029214958 1029214958 918573168 918573168 615118272 615118272 506902572 359041352 758188261 758188261 700268497 724859116 724859116 482380014 323096754 714158594 714158594 700448997 961614294 1007879351 1007879351 761828716 488652928 700578915 700578915 904203916 904203916 864434281 1061429731 1061429731 950274375 966001191 966001191 744800429 658556848 558799744 557455137 205653460 205653460 182980748 672782032 691094273 691094273 142526433 51943728 32917312 60818128 60818128 277034056 354222330 354222330 99356186 934594224 934594224 577727012 477923392 1025430880 1025430880 1016118301 676118669 676118669 855959059 855959059 537757745 549705920 562697313 571011088 571011088 550688257 872096278 872096278 759073760 893154506 893154506 98745008 112993210 318335746 318335746 28361568 69249088 129266344 129266344 119843696 119843696 1065579561 1065579561 239826395 12583104 163627164 163627164 193218748 499926261 499926261 210315427 76022848 76022848 187992068 187992068 381211884 460460982 850303040 850303040 841532691 388368875 957021314 957021314 151470592 145274112 635437252 635437252 552223264 552223264 638432562 638432562 815293851 815293851 666233721 639372825 639372825 576872928 551900241 151273696 553429444 605028448 605028448 565876577 565876577 303513362 303513362 109916008 109916008 356688658 356688658 329015864 431859542 449056172 469835790 469835790 609713776 609713776 555796793 26725153 34246656 34246656 793469092 793469092 780861665 1073510821 1073510821 1025587647 923217312 814549458 814549458 810421009 815814736 815814736 584492035 11076225 8392896 8392896 608886068 608886068 199550089 211935564 211935564 169183352 169183352 168302224 380558218 380558218 322318114 135478276 135478276 11208704 673394272 673394272 550058432 550058432 958718980 958718980 368194731 623075448 623075448 581095761 186172449 609634257 609634257 209066080 209066080 147774660 168677392 168677392 42951764 202080528 202080528 101547140 43074320 43074320 40166080 7390080 20075392 24810368 29889888 73037664 279888160 342902816 420391972 420391972 483168802 483168802 403313162 475089422 513056858 513056858 445449932 759374982 889852971 889852971 810194211 604615057 604615057 895784183 895784183 860094686 860094686 822086805 543162753 1062733453 1062733453 301466272 301466272 39846560 106071752 106071752 83023456 35782784 39981456 39981456 17826336 17826336 43401216 43401216 73554580 73554580 73400712 97126572 97259812 186647840 186647840 747333858 747333858 776800697 961357965 961357965 836901048 895701067 1072751655 1072751655 1019917200 228087544 478381870 478381870 319919476 300861378 766422094 824439075 987854785 987854785 877152153 956949543 956949543 856087057 856087057 750213904 750213904 570845484 570845484 886875541 886875541 442616020 442616020 820824707 820824707 450957718 979099989 979099989 314637278 485769492 485769492 218792220 127978108 230673920 235727244 97719046 501293550 501293550 916040856 916040856 706260378 11011392 807572384 953405603 953405603 824676609 1000857636 1000857636 594675251 557520673 694707745 694707745 881067164 987048663 987048663 371513930 384350416 384350416 314849476 410337956 456469302 456469302 420546870 318964272 310452306 286270064 286011050 286011050 348619968 348619968 98211360 111052440 111052440 76947872 128833104 128833104 21106848 108875032 108875032 128976096 134234752 338862950 459430192 459430192 336001550 1048773886 1048773886 692061485 290660928 290660928 409080198 450027982 450027982 363750860 427632702 427632702 300676578 285685794 430467356 430467356 455902534 455902534 1006699183 1006699183 810672762 810672762 763372664 763372664 645922905 882967659 882967659 992952030 992952030 600185073 690021509 727766037 727766037 264461520 98824680 286259656 286259656 585147721 585147721 896650480 896650480 390660226 390660226 644968324 644968324 661685422 661685422 555676221 307824344 736798664 750981013 750981013 619264105 794771133 794771133 643042560 196619924 210372036 210372036 162010984 21698864 50466864 50466864 65012208 438196448 438196448 541066369 541066369 939171782 939171782 718488535 712777646 385035503 671352837 671352837 757147797 814275016 814275016 621316330 768617008 1028915490 1028915490 904528781 975445841 1031297293 1031297293 675581060 612401228 204454504 176949360 176949360 604572032 604572032 386422683 349432616 343415946 282042312 311466688 311466688 290794146 311971200 408364097 408364097 139646596 255229397 255229397 200621657 606212684 606212684 566260549 542236845 360919146 881310243 881310243 613655276 613655276 215081676 456132176 456132176 393392318 292803156 28300616 1497600 4317312 8517760 90207168 90207168 88158336 21572096 800928 71925760 71925760 10100288 15097920 33835008 49372688 304540936 304540936 302752664 781562413 781562413 268291952 1019895132 1019895132 834017388 810075648 600486096 845275539 902509227 902509227 859396401 556888196 556888196 556470872 736007709 736007709 693098006 684429722 684429722 942932532 942932532 204760327 268701198 268701198 208918651 962016390 962016390 622343882 882589728 882589728 1037205892 1037205892 671939492 671939492 736051385 736051385 207357297 201600072 201600072 906234388 906234388 546769664 547565889 740307777 741344013 741344013 253077016 253077016 102141488 375002168 375002168 370816544 67683336 111136232 121095992 121095992 391424882 391424882 272526960 285282824 285282824 293861474 298002636 411553824 411553824 206754444 281542786 281542786 8913984 63185990 458042550 520600814 520600814 1007592672 1007592672 978282891 130115778 622863802 625553315 625553315 470867228 639552762 973758002 973758002 1052694018 1052694018 833890734 817868044 805642760 189024392 189024392 131375352 130287864 356992856 356992856 113708840 335358360 867890368 867890368 317763008 317763008 303951378 9265362 5317248 134352896 167907348 167907348 24327410 55100592 68178144 92532840 305071194 305071194 61941224 119684824 119684824 77336136 78153312 109450888 109450888 187294900 187294900 183257312 167855164 220330012 220330012 34024976 372768536 372768536 449369570 449369570 145530338 340407712 340407712 286370560 347179018 347179018 139741860 139741860 98845162 606021349 606021349 404282155 63405336 73135752 616539808 616539808 567846244 723587196 724824885 724824885 582218577 818414925 818414925 560092945 560092945 765997036 765997036 562381256 607389705 607389705 609552392 609552392 575677077 331489330 584266449 969982926 1037091567 1037091567 878784558 878784558 431149926 418456518 418456518 416350464 194961012 194961012 255117626 255117626 254066692 68457532 218835000 320864256 320864562 359815570 377623328 377623328 109314634 126015960 353551128 353551128 343982154 100069376 100069376 55507360 55507360 44369360 19170032 14453632 9710272 13668352 545738176 545738176 537270595 272629890 700713188 700713188 276825285 433414410 433414410 419684938 419684938 355799116 223412392 710074566 839995910 839995910 641409684 679597466 679597466 528537290 528537290 461635832 339886250 411435390 411435390 247726220 321674570 321674570 379850176 447298040 447298040 344722506 344722506 344894544 344894544 387996938 409600400 409600400 106697932 169610772 538978826 659268155 659268155 327611530 522150064 522150064 294665728 336677582 336677582 747568962 884950333 884950333 582482538 446293590 446293590 437738560 214247549 214247549 517218989 517218989 29624544 29624544 657457272 657457272 546254211 901722723 901722723 860930739 860930739 1059060599 1059060599 1067853183 1067853183 359795033 653561050 705692970 705692970 257578440 266871076 266871076 267394880 267394880 252183612 526697884 526697884 504390174 504390174 211539226 111333720 97559264 544866369 544866369 74870720 750492345 750492345 791551293 791551293 604379145 604379145 325599914 312788754 882222347 925373114 925373114 552241280 552241280 325977120 325977120 44107088 69511464 157674760 222685612 222685612 71429420 158155176 158155176 137104644 117445652 333005790 333005790 164325984 135340068 307860816 329778546 329778546 393088354 420986424 420986424 403040262 314929234 314929234 305373810 290348384 55888448 328091968 842044915 842044915 839386131 839959059 839959059 621399912 833914401 904995819 904995819 888408906 888408906 143094148 143094148 6500736 176501124 176501124 109323216 135992080 135992080 135007236 202639884 202639884 159657696 159657696 373836432 373836432 343951386 101482528 355500104 355500104 278582850 121771922 71303304 377639988 394637170 394637170 349977644 524353018 524353018 409393542 409393542 385006032 171926724 775753281 887305992 887305992 442779551 306055461 723535619 861564055 874365752 874365752 722733621 722733621 773520850 773520850 790351371 790351371 1036554295 1036554295 706896670 718533333 823153612 823153612 331468512 489171004 489171004 430251310 822092834 822092834 621120530 621120530 420403304 420403304 11715876 0 0 230689792 231476460 231476460 174394692 610665132 1029970605 1029970605 305555853 723684226 853940691 853940691 665067160 665067160 744635078 744635078 754281164 754281164 478680104 92293132 198058508 852587728 852587728 165258823 248275088 276581408 339267034 339267034 394712170 394712170 355768840 381307424 381307424 366806024 379699800 379699800 71423184 372421456 398853306 398853306 81579584 81579584 282999936 477766700 477766700 318902704 232396524 515967728 515967728 134807564 272638000 890740900 890740900 759273530 961790180 961790180 650267302 706528630 706528630 853940691 853940691 291770577 306222096 306222096 287516960 285454656 474194042 474194042 394358926 360044196 360044196 115180676 302571420 486340182 486340182 429418430 440787992 440787992 101312662 172043400 172043400 72163476 24231968 27735968 27735968 20963680 321988244 424723110 424723110 438016414 438016414 105378680 128051608 128051608 653273050 874055245 874055245 437346356 437346356 269066240 270041224 773587596 773587596 920144789 920144789 768778980 1029214958 1029214958 918573168 918573168 208474156 977048076 977048076 688910923 688910923 649135626 948961537 948961537 445829718 445829718 323096754 714158594 714158594 700448997 961614294 1007879351 1007879351 880359077 880359077 687417285 478623822 904203916 904203916 864434281 1061429731 1061429731 950274375 966001191 966001191 268773952 558799744 1039403471 1039403471 822229961 822229961 476946720 579991312 691094273 691094273 571778889 571778889 596416384 596416384 105794936 277034056 354222330 354222330 99356186 934594224 934594224 477923392 477923392 1025430880 1025430880 1016118301 676118669 676118669 855959059 855959059 537757745 710741692 710741692 714070069 780825613 780825613 330443469 286265902 503601192 503601192 377544592 270274256 366479050 366479050 130026856 109756712 109756712 425459966 439229718 575353990 575353990 55245665 807049028 807049028 57858663 82899052 165988836 246386060 797509060 797509060 518732425 345120899 834687923 834687923 868749755 879367171 888145051 888145051 303848577 555109618 555109618 547014786 436124480 835115235 1009688715 1009688715 994261400 994261400 552223264 638432562 638432562 815293851 815293851 666233721 639372825 639372825 579981520 103911680 244967096 563448932 563448932 120882760 120882760 49152 32768 281028776 361048170 361048170 356688658 356688658 264071736 431859542 449056172 469835790 469835790 401819174 337925520 28699488 8652864 34246656 34246656 793469092 793469092 846733563 1073510821 1073510821 1025587647 532750590 814549458 814549458 810421009 967253895 967253895 584492035 627571113 661101049 661101049 388323795 522941569 923534439 923534439 721948048 721948048 275514414 168302224 170683216 170683216 306388630 437626886 437626886 147031730 543660432 780824134 780824134 542967493 958718980 958718980 636486633 775533392 775533392 404717314 648613984 765419095 765419095 891338049 891338049 1035413139 1035413139 472961301 472961301 202080528 548207317 548207317 713123204 713123204 582051008 134742784 20075392 20075392 11034208 18271776 279888160 342902816 420391972 420391972 483168802 483168802 403313162 475089422 475089422 224272044 429924298 759374982 889852971 889852971 810194211 695008644 604615057 895784183 895784183 967387418 967387418 746049487 708972693 400115385 400115385 974701506 974701506 810025288 810025288 53624848 47903488 47903488 46637200 39981456 23412864 37640480 43401216 43401216 73554580 73554580 73400712 97126572 97259812 186647840 518591568 518591568 807994404 807994404 254027880 221197604 221197604 180491836 180491836 797179042 797179042 286128253 478381870 478381870 319919476 591470769 635781195 841271571 841271571 865475187 865475187 831656547 831656547 1041401043 1041401043 1043326158 1043326158 821019432 570845484 886875541 886875541 442616020 442616020 820824707 820824707 450957718 979099989 979099989 314637278 485769492 485769492 226116472 116808144 230673920 235727244 633505859 633505859 356964522 834959499 834959499 706260378 11011392 763929698 763929698 536950851 824676609 824676609 822267939 594675251 672216320 706315665 706315665 679326360 679326360 645664665 376965123 384350416 419949126 419949126 487010480 487010480 456469302 420546870 243499130 155801808 243532840 243532840 33506176 33506176 23479648 23479648 111052440 111052440 76947872 128833104 128833104 88932096 108875032 108875032 128976096 134234752 338862950 459430192 459430192 336001550 285282470 687870016 687870016 290660928 290660928 409080198 450027982 450027982 363750860 427632702 427632702 329114232 285685794 285685794 155330694 279403362 279403362 492004500 492004500 146340012 146340012 337340546 337340546 437528706 780320864 788664381 788664381 705217557 705217557 183179392 183179392 39979264 73629792 98824680 286259656 397286232 397286232 1043082613 1043082613 1007518989 704908362 476693958 424699145 883283027 883283027 661685422 860098368 871892979 871892979 76883912 117707088 117707088 126403704 126403704 114988616 107378008 106773160 106773160 122806176 122806176 529170500 529170500 152854492 426923240 595183072 595183072 541066369 239552764 718488535 718488535 712777646 744664046 744664046 671352837 757147797 757147797 555223746 579076117 928319209 928319209 939788295 939788295 880937867 980111133 980111133 675581060 612401228 147713220 176949360 176949360 155320712 330330066 435759078 435759078 430052334 234556354 311466688 311466688 432484516 432484516 408364097 408364097 139646596 255229397 556612352 556612352 606212684 606212684 566260549 556038408 556038408 881310243 881310243 613655276 613655276 165275364 109151712 126013560 126013560 71447256 28300616 1497600 4317312 8517760 90207168 90207168 21572096 21572096 800928 9707648 10031808 10100288 15097920 15097920 49372688 304540936 304540936 302752664 807385427 807385427 268291952 1019895132 1019895132 810075648 960809127 960809127 845275539 902509227 902509227 859396401 556888196 602766528 602766528 541523389 693098006 693098006 684429722 684429722 942932532 942932532 470813188 1017258188 1017258188 812702026 812702026 392470296 392470296 465666877 659714073 1037205892 1038011243 1038011243 671939492 736051385 736051385 571356826 995691035 995691035 906234388 960508492 960508492 788730478 740307777 953057391 953057391 1037817679 1037817679 807737528 807737528 370816544 370816544 299942370 300988224 300988224 7468544 11085120 110103936 110103936 73401240 14528576 14528576 29532864 148517517 634958869 727373493 727373493 717886677 982738560 982738560 1048873062 1048873062 1028578454 1028578454 332382482 597873984 597873984 635998616 635998616 625553315 470867228 639552762 639552762 872039628 1052694018 1052694018 817868044 817868044 805642760 189024392 189024392 352584560 352584560 356992856 356992856 656955137 658167609 867890368 867890368 294818944 826487425 826487425 814455169 828842327 828842327 807412726 807412726 271350755 324145842 324539122 704776418 704776418 598289972 817051620 823264196 823264196 61277376 78153312 109450888 109450888 187294900 187294900 160784144 167855164 220330012 220330012 34024976 389036050 389036050 449369570 449369570 272368386 340407712 340407712 286370560 352584042 352584042 411669926 485540620 485540620 157809060 924884460 924884460 784866615 330031458 1044932458 1044932458 409140755 273973268 415285446 465897996 501954030 818414925 818414925 166843588 600850652 765997036 765997036 562381256 245440928 674234768 674234768 829461026 829461026 389442233 418431942 969982926 1037091567 1037091567 369132277 886689929 886689929 816598541 687343557 563479376 891427105 892342272 892342272 255117626 254066692 68457532 319494000 934416657 934416657 95421000 813695459 813695459 131310184 823390243 823390243 353551128 343982154 104112792 104112792 100015080 168610836 168610836 187515333 808976322 808976322 545296001 542005762 948776197 952775040 952775040 545927364 545927364 415834562 415834562 208614862 208614862 69399564 203761932 203761932 710074566 839995910 839995910 641409684 679597466 679597466 319031382 461635832 461635832 339886250 411435390 411435390 324407800 324407800 295443962 379850176 447298040 447298040 344722506 344722506 304796946 329945554 387996938 387996938 174738838 95164648 95164648 3444240 659268155 659268155 327611530 522150064 522150064 301371680 336677582 336677582 747568962 884950333 884950333 582482538 68107272 112230450 144521114 513445508 513445508 388301006 376777626 57412602 42804544 23594400 304139904 546254211 901722723 901722723 860930739 860930739 1059060599 1059060599 1067853183 1067853183 359795033 653561050 705692970 705692970 358633880 266871076 266871076 267394880 491717926 491717926 526697884 526697884 333522726 429410632 429410632 286050848 286050848 415892590 415892590 149059996 368869570 638191908 791551293 791551293 604379145 604379145 447667600 415236294 377755202 377755202 323170482 323170482 320864690 325977120 325977120 69471256 168059956 189630760 222685612 222685612 82595208 158155176 168371700 168371700 136790664 333005790 333005790 164325984 127821552 307860816 329778546 329778546 393088354 393088354 310414376 307031202 314929234 314929234 305373810 290348384 55888448 295846801 842044915 842044915 839386131 839959059 839959059 380244994 628140835 628140835 876160587 876160587 619151595 356928522 356928522 10782016 176501124 176501124 109323216 135992080 135992080 135007236 202639884 202639884 159657696 343932938 343932938 343951386 344729258 344729258 355500104 355500104 325736058 389088064 389088064 377639988 394637170 394637170 349977644 524353018 524353018 409393542 409393542 171926724 171926724 147923336 887305992 1045805124 1045805124 384882251 232372382 119937336 874365752 874365752 722733621 722733621 773520850 773520850 790351371 790351371 1036554295 1036554295 706896670 718533333 823153612 823153612 331468512 489171004 489171004 430251310 624756786 790920470 790920470 621120530 420403304 420403304 619760843 619760843 184128005 200543013 402966020 426510466 426510466 726925370 726925370 904272250 904272250 649202314 853940691 853940691 665067160 665067160 562088175 562088175 885859442 885859442 835578946 127456278 92219336 882341960 882341960 764129188 827474722 827474722 541738592 285132288 558374785 558374785 106504152 624177433 624177433 306526600 306526600 82123082 283348995 820634897 820634897 816440643 815817728 25165856 282999936 282999936 214247684 214247684 244130838 515967728 515967728 186410038 186410038 890740900 890740900 759273530 961790180 961790180 650267302 706528630 949804967 949804967 860766596 903990741 903990741 603125107 852757203 864519115 864519115 474194042 394358926 171966592 282091594 282091594 147303825 708315283 840372299 840372299 608324126 440787992 127703016 378322344 378322344 72163476 170939344 801684393 801684393 674098436 742036745 742036745 538393089 480608806 480608806 678914938 678914938 682686267 984945360 984945360 874055245 559573268 437346356 765495576 815866315 815866315 865561095 1061530359 1061530359 892844763 692195364 692195364 625042657 625042657 565160424 1068650601 1068650601 850795347 688910923 649135626 948961537 948961537 76683192 819859640 874124811 874124811 39327627 60818840 656478792 656478792 85069961 880359077 880359077 687417285 478623822 612792069 612792069 880595846 880595846 803919357 1001341393 1001341393 842129619 397816705 530717105 1039403471 1039403471 822229961 822229961 476946720 114492272 114492272 34928240 571778889 571778889 596416384 596416384 195207542 25586210 395130928 395130928 440078388 440078388 850518678 850518678 775416729 775416729 895906283 895906283 554386028 761595554 761595554 629613576 709043757 710741692 710741692 714070069 780825613 943991124 943991124 686115582 820953120 820953120 565628874 270274256 366479050 366479050 130026856 109756712 109756712 425459966 439229718 575353990 575353990 293754904 807049028 807049028 57858663 82899052 165988836 246386060 797509060 797509060 518732425 345120899 834687923 834687923 868749755 879367171 888145051 888145051 303848577 555109618 555109618 547014786 281415937 835115235 1009688715 1009688715 994261400 994261400 219675180 607551653 607551653 581042320 581042320 545468481 136921625 579981520 579981520 56428960 244967096 605834240 605834240 638717512 638717512 630094921 376895538 376895538 361048170 361048170 339817162 282157120 50440434 246481700 246481700 420528678 420528678 785261654 785261654 770744813 770744813 769866021 91661469 772970332 782327957 846733563 846733563 558940833 463274145 532750590 754567632 773664285 773664285 967253895 967253895 300794067 627571113 661101049 661101049 555349640 641508377 923534439 923534439 721948048 721948048 829247731 910237851 910237851 989141511 989141511 753171972 955066065 955066065 847384659 847384659 780824134 545332009 896811008 896846763 896846763 775533392 775533392 404717314 648613984 765419095 765419095 891338049 891338049 1035413139 1035413139 616227668 616227668 740996482 740996482 548207317 713123204 713123204 582051008 134742784 24498048 6646432 17401608 89203368 283812520 283812520 72426954 1574400 4719232 4719232 80833640 80833640 22859424 99091944 99091944 701449764 701449764 537006081 695008644 695008644 560852385 119802168 899950665 967387418 967387418 746049487 708972693 624967857 624967857 974701506 974701506 810025288 810025288 53624848 47903488 144651540 153366036 153366036 152706080 136323124 136323124 63252944 379328796 379328796 305873988 458263427 700115757 700115757 679981129 665206358 807994404 807994404 883764519 883764519 764811885 764811885 742023225 797179042 797179042 624951081 742548588 1068400907 1068400907 782793098 635781195 841271571 841271571 865475187 865475187 831656547 831656547 1041401043 1041401043 1043326158 1043326158 821019432 674272364 845544269 845544269 230694323 387166080 387166080 275683778 29364608 73434304 79792616 93138024 134509160 226116472 226116472 116808144 59563288 196552916 633505859 633505859 356964522 834959499 834959499 407970438 268558338 442597780 442597780 475181356 489814406 489814406 472332558 522863549 672216320 706315665 706315665 945058763 945058763 645664665 409914950 585796781 974161040 974161040 693183141 571548692 378538658 378538658 298938576 320938640 320938640 28036000 33506176 33506176 18134976 17106944 29053888 29053888 24573472 85822880 88932096 286490346 286490346 88793256 272799726 272799726 616640938 963776836 963776836 618729796 629227652 771788956 771788956 692191296 285212732 792723563 792723563 109060496 316690248 316690248 329114232 329114232 420168894 480292866 480292866 279403362 279403362 225503912 225503912 146340012 146340012 873682944 873682944 752604249 780320864 788664381 788664381 705217557 705217557 180374012 178309256 178309256 140640528 307491474 378819180 397286232 489179434 1043082613 1043082613 1007518989 704908362 476693958 424699145 883283027 883283027 593900798 860098368 871892979 871892979 960443549 960443549 731581169 704574955 1057937898 1057937898 509087782 509087782 440533414 430445784 327455462 529170500 529170500 441097882 441097882 793434162 793434162 458236567 180838986 109975498 766323434 766323434 744664046 744664046 471591018 675044769 675044769 555223746 555223746 928319209 928319209 939788295 939788295 880937867 980111133 980111133 725759129 682224012 545452448 919299261 919299261 689581387 689581387 435759078 435759078 430052334 234556354 221125372 221125372 432484516 432484516 36871890 34885888 24376224 28356800 556612352 556612352 555357729 337641480 347078734 556038408 556038408 337873185 272639402 86582568 167371628 167371628 398624416 398624416 452335728 452335728 56697264 102581264 125094840 230060952 230060952 148226464 89526312 280431522 280431522 9963072 11735810 11735810 13455360 270161986 270161986 45878848 341016706 341016706 807385427 807385427 408227854 807797411 945299486 945299486 960809127 960809127 778674318 941670663 941670663 973772855 973772855 903608043 903608043 766281400 766281400 805715154 805715154 981795440 981795440 470813188 470813188 1017258188 1017258188 897907208 812702026 392470296 708890705 708890705 282287014 580425668 1038011243 1038011243 487710225 25239648 193139960 571356826 995691035 995691035 886047435 960508492 960508492 788730478 622736900 953057391 953057391 1037817679 1037817679 807737528 807737528 336192522 330693608 330693608 300988224 307959058 307959058 84420384 110103936 110103936 292848328 347228426 347228426 275549512 203825036 634958869 727373493 727373493 717886677 982738560 982738560 1048873062 1048873062 1028578454 1028578454 1026769751 597873984 597873984 635998616 635998616 560109952 560109952 537139938 537139938 294358755 326811504 326811504 100888138 52551160 84526600 126717032 287573816 352584560 352584560 346311474 39409778 656955137 658167609 658167609 622350608 294818944 826487425 826487425 820096818 828842327 1033051018 1033051018 807412726 271350755 324145842 324539122 704776418 704776418 598289972 817051620 823264196 823264196 126618744 69079544 17566824 35702224 35702224 40415360 40415360 37313680 55131520 55131520 17611266 389036050 389036050 367791594 367791594 300830914 76734338 351444298 351444298 364137384 364137384 411669926 485540620 485540620 157809060 924884460 924884460 784866615 738422941 1044932458 1044932458 710343152 563349617 563349617 553912401 465897996 84945112 550028364 550028364 600850652 600850652 139823653 146025072 716265157 716265157 674890132 829461026 829461026 933751226 933751226 546517569 830592562 830592562 717388644 886689929 886689929 816598541 687343557 563479376 891427105 892342272 892342272 33688662 595643819 595643819 511446446 934416657 934416657 86106408 813695459 813695459 460115382 823390243 823390243 656458562 932184699 932184699 280019257 100015080 168610836 168610836 672138688 808976322 808976322 545296001 137730117 948776197 952775040 952775040 818208835 818208835 415834562 415834562 208614862 208614862 69399564 203761932 203761932 824235522 824235522 646988378 646988378 352371848 390088806 529321086 529321086 190107106 270180144 301784600 301784600 324407800 324407800 295443962 69770888 247845056 247845056 130458816 432756206 506368306 506368306 182501844 212379156 212379156 306210628 522415212 522415212 107850872 268822530 416076526 416076526 328420604 301371680 339890560 339890560 282264048 412662832 435740494 435740494 476391822 476391822 257201380 513445508 513445508 388301006 471459654 471459654 443483382 443483382 397503642 317588992 317588992 267606696 133666468 46920912 231744784 244583004 244583004 248722140 248722140 405723290 405723290 358633880 358633880 128556256 128556256 93797064 491717926 491717926 386402328 386402328 379375386 429410632 429410632 286050848 286050848 951801255 951801255 149059996 814492995 814492995 206969484 675288020 675288020 447667600 447667600 415236294 476577798 756262174 928174779 928174779 869018234 869018234 856647585 544848801 592710321 592710321 590876032 218369260 82595208 151037160 168371700 168371700 136790664 180118108 180118108 157916960 127821552 25199792 22634608 14157504 18299072 55050560 55050560 41972288 44175696 44175696 20746272 32751680 32751680 24327072 22611712 352066354 352066354 389681168 389681168 380244994 538344811 542038954 876160587 876160587 623826979 766664325 766664325 969601766 969601766 941763364 941763364 716383792 464654860 243478620 202586116 202586116 492648452 492648452 343932938 478676536 478676536 403231434 376607538 299402800 325736058 389088064 389088064 285418088 305234248 305234248 70606856 13372224 13372224 13372224 0 0 408686719 668868345 849027313 1045805124 1045805124 818176277 818176277 925139236 925139236 439372347 355532960 342958986 357049146 357049146 353766586 54794810 4329600 281169936 281169936 33718482 281038848 281038848 411276286 411276286 215527764 332131428 422391078 790920470 974440983 974440983 973097472 289125996 619760843 619760843 184128005 200543013 591922464 591922464 973638961 973638961 824180751 904272250 904272250 856810178 282140867 1000750916 1000750916 375833602 562088175 562088175 885859442 885859442 835578946 127456278 92219336 882341960 882341960 764129188 827474722 827474722 541738592 566993352 566993352 558374785 106504152 624177433 624177433 306526600 350575770 350575770 377524554 820634897 820634897 816440643 815817728 639238776 639238776 380686488 365610784 365610784 244130838 296091778 296091778 186410038 382799560 382799560 42550962 8913984 42468416 42468416 278317824 279056706 949804967 949804967 860766596 903990741 903990741 603125107 852757203 864519115 864519115 1052386875 1052386875 659703829 718438633 960938197 960938197 708315283 840372299 840372299 608324126 127703016 127703016 378322344 378322344 46480050 170939344 801684393 801684393 674515212 742036745 742036745 538393089 480608806 480608806 678914938 678914938 682686267 984945360 984945360 559573268 559573268 268944660 765495576 815866315 815866315 865561095 1061530359 1061530359 892844763 690064454 690064454 586512680 586512680 565160424 1068650601 1068650601 850795347 515043415 236595506 239469160 239469160 76683192 819859640 874124811 874124811 637690386 637690386 656478792 914567930 914567930 781640042 153802020 154586660 154586660 875751936 875751936 880595846 880595846 803919357 1001341393 1001341393 842129619 397816705 525911742 525911742 459067062 655127704 655127704 98151073 97203432 96655456 587299092 587299092 539940896 656955046 656955046 628092840 25586210 412104301 889926699 889926699 724702847 850518678 910676593 910676593 775416729 895906283 895906283 889529409 875899659 761595554 629613576 709043757 709043757 114813616 214736940 214736940 943991124 943991124 686115582 820953120 820953120 565628874 393225304 321916178 338430746 338430746 3932698 1049088 125963120 354904346 396435512 640554555 640554555 433562608 534494956 534494956 461366422 461366422 393041950 283780570 919130194 919130194 629607072 65838752 74633304 74633304 82363848 82363848 68628944 80629120 80629120 40896528 40145280 70906368 70906368 229129440 229129440 90857836 62939628 61465968 127366249 127366249 628691164 730211577 786070177 786070177 538753813 541672101 608288708 608288708 605834240 605834240 638717512 640364568 640364568 572108816 572108816 294974200 279176128 282157120 282157120 50440434 246481700 246481700 236403228 272054800 785261654 785261654 770744813 838879352 838879352 541403265 910952550 910952550 906917735 906917735 1060904133 1060904133 996571246 996571246 773664285 773664285 634548905 634548905 105147024 105147024 103447112 98301448 555349640 641508377 797881455 882131016 882131016 719753558 829247731 910237851 910237851 989141511 989141511 753171972 955066065 955066065 847384659 847384659 389476867 545332009 896811008 896846763 896846763 358648747 138836864 189192372 189192372 26913000 43509856 370593856 370593856 966247030 966247030 616227668 616227668 740996482 740996482 416374153 336593418 277916224 75549248 24498048 24498048 22415136 22415136 89203368 283812520 284709546 284709546 289293154 289293154 280288290 353786946 353786946 1024591661 1035704189 1035704189 857296947 310510862 784502992 784502992 1000341879 1007199946 1007199946 899950665 899950665 640365849 570753418 848824208 848824208 624967857 827333418 827333418 819218418 313049746 119554634 119554634 144651540 153366036 463474088 463474088 462422646 250548239 840977763 853557635 853557635 305873988 458263427 700115757 700115757 679981129 665206358 707989043 707989043 883764519 883764519 764811885 764811885 742023225 648932697 624951081 624951081 742548588 1068400907 1068400907 782793098 788867133 1051208757 1051208757 983564631 625932472 439230294 1058677608 1058677608 946679175 946679175 661471930 752001303 752001303 845544269 845544269 230694323 859478912 862328358 862328358 299910006 691816121 691816121 484780494 484780494 437914832 437914832 307398152 15473832 62791040 36856500 157544868 157544868 824782243 824782243 956311170 956311170 929629463 576799770 576799770 489814406 489814406 472332558 522863549 522863549 304677952 470512666 945058763 945058763 476982339 409914950 585796781 974161040 974161040 693183141 571548692 73535880 298938576 298938576 320938640 320938640 28036000 26531584 14680128 15076456 29497768 99250632 99250632 78503872 85822880 85822880 286490346 286490346 88793256 272799726 272799726 1029746754 1029746754 963776836 618729796 629227652 771788956 771788956 692191296 549982242 792723563 792723563 525472492 525472492 442132488 442132488 281028776 420168894 480292866 480292866 260843858 92281984 625102509 625102509 223396524 173114502 873682944 873682944 752604249 805782644 805782644 290939427 301725922 977089148 977089148 543204104 178309256 381137736 381137736 378819180 378819180 489179434 489179434 228851784 689591572 689591572 453650052 282728130 749799344 749799344 593900798 593900798 554146485 385000425 960443549 960443549 731581169 704574955 1057937898 1057937898 626917937 769837308 837212578 837212578 877040456 877040456 759728536 821610435 1029361671 1029361671 1032064543 1032064543 898190896 820179404 820179404 766323434 850869772 850869772 483733572 348455112 415236294 941557900 941557900 748369485 545733197 935778039 935778039 672507856 776267953 776267953 725759129 682224012 545452448 919299261 919299261 689581387 689581387 290551234 296223232 296223232 475995220 475995220 152321974 319367248 319367248 275160597 275160597 189690469 24240805 566997089 566997089 620924996 882132549 882132549 478151488 608701665 924847184 924847184 899942763 870974924 167371628 398624416 398624416 452335728 452335728 257691324 257691324 125094840 230060952 230060952 150853112 273736194 280431522 280431522 77645586 40580560 311100288 311100288 309402002 270161986 452089988 452089988 986542036 986542036 470063359 408227854 930421728 945299486 945299486 1024036415 1024036415 778674318 941670663 941670663 973772855 973772855 903608043 903608043 766281400 766281400 805715154 805715154 981795440 981795440 278660608 278660608 609687592 897907208 897907208 755634215 755634215 708890705 969249933 969249933 718963936 718963936 684587329 562853397 588520849 588520849 695102193 695102193 264243220 962315171 962315171 289710566 289710566 294146304 294146304 230911684 230911684 402350788 416309898 416309898 294820386 330693608 330693608 315356370 315356370 307959058 84420384 91866168 91866168 292848328 347228426 347228426 275549512 203825036 203825036 419376028 506969408 506969408 311960146 311960146 800339412 800339412 947295430 1026769751 1026769751 139273219 101029008 579712040 579712040 560109952 560109952 38617265 23407904 32980224 287425312 287425312 11270562 6884736 16785920 16785920 372244736 372244736 121112866 371460352 371460352 7340928 7340928 25494720 34801408 51041848 360841032 820096818 820096818 293741392 1033051018 1033051018 40311653 64395570 165161076 165161076 1002898464 1002898464 260321475 59843184 103251184 126618744 126618744 81805992 93605768 95437024 95437024 40415360 40415360 37313680 70374280 70374280 69153792 102959664 272895074 367791594 367791594 300830914 94668904 351444298 351444298 364137384 364137384 28576608 145094254 202606927 629793897 812363107 812363107 1030318516 1030318516 1061770074 1061770074 867489984 867489984 567331357 553912401 305922198 336921860 550028364 709001096 709001096 677454213 677454213 538214284 716265157 716265157 674890132 674890132 131212669 933751226 933751226 681722240 830592562 830592562 717388644 717388644 321099568 418117062 535451742 535451742 388357128 453763108 525122867 896458223 896458223 595643819 511446446 679608867 679608867 339915822 201598864 420261388 460115382 460115382 396226170 656458562 932184699 932184699 595656720 562110561 33636432 41984016 701071456 701071456 27760357 7654272 5470464 3330816 282060480 541974530 818208835 818208835 271083523 406987334 406987334 410156062 410156062 239333532 278257294 824235522 928011551 928011551 962254503 962254503 777539642 529321086 529321086 308430482 308430482 335585344 390181690 390181690 321258530 277057592 277057592 92374216 425694638 425694638 432756206 506368306 506368306 182501844 212379156 212379156 450343684 522415212 522415212 359852432 268822530 416076526 475782932 475782932 500528292 500528292 491716770 282264048 282264048 435740494 435740494 476391822 476391822 257201380 72087542 204997182 290981538 471459654 471459654 443483382 443483382 397503642 99049176 267606696 298419128 381282138 438641506 438641506 410639488 410639488 137364228 515250320 515250320 348127434 451187944 451187944 128556256 244462148 244462148 187897676 187897676 386402328 386402328 379375386 379375386 186161764 201857728 201857728 951801255 951801255 26337888 814492995 814492995 206969484 675288020 675288020 345126976 345126976 704996002 704996002 781318237 928174779 928174779 869018234 869018234 856647585 544848801 675552016 724988084 724988084 616817753 717856481 717856481 647637193 669983320 669983320 65579072 65579072 45469520 35390320 25199792 0 46993056 46993056 69734504 69734504 32670816 123748784 123748784 80610296 48635344 112218576 341155400 397096314 397096314 89264808 89264808 85623040 613130032 613130032 538344811 295907682 328772508 623826979 766664325 766664325 969601766 969601766 941763364 941763364 716383792 464654860 453443722 453443722 202586116 492648452 492648452 219032738 478676536 478676536 403231434 470684340 470684340 495328930 495328930 231848650 114919240 106451148 260118692 260118692 315425874 395515588 496192398 496192398 144294628 408686719 668868345 849027313 849027313 584716936 818176277 818176277 925139236 925139236 453247010 453247010 336906762 336906762 154196257 268536329 539091263 996270167 996270167 1035546640 1035546640 1031862118 1031862118 411276286 411276286 215527764 67883233 357478089 549588060 974440983 974440983 973097472 680866733 838913809 838913809 726478293 726478293 591922464 591922464 973638961 973638961 824180751 824180751 856810178 856810178 283380162 1023824024 1023824024 766382457 742671852 239600796 505679234 505679234 524305426 524305426 231209196 484613546 484613546 100426888 94815880 80810952 80810952 617621176 617621176 104948465 101246752 101246752 163373300 636535620 636535620 350575770 377524554 738264608 738264608 270013035 629806185 639238776 639238776 380686488 600579089 600579089 227617388 559094297 559094297 148202708 382799560 382799560 408000622 902749422 902749422 760386263 760386263 276856832 304759715 841271571 841271571 879694261 879694261 356772897 356772897 243421414 1031938410 1052386875 1052386875 659703829 718438633 960938197 960938197 134666899 5904000 273733764 474933294 474933294 223675402 286454952 286454952 46480050 38086800 165957672 674515212 674515212 309698680 368364522 368364522 67258402 394522430 394522430 504414750 504414750 1026599687 1026599687 449014530 748465829 748465829 680561200 1071584503 1071584503 411124404 411124404 335668063 514358285 690064454 690064454 703929630 703929630 541932233 355257642 629593846 725769909 725769909 643112670 64106592 93849456 631243128 649069352 649069352 873464346 873464346 637690386 398533137 914567930 914567930 781640042 335995169 885613774 885613774 940146958 940146958 807984137 807984137 469780706 746173126 746173126 1019376215 1019376215 888139083 888139083 799834821 799834821 453377408 91976973 489335912 489335912 587299092 587299092 539940896 656955046 656955046 628092840 271122776 412104301 889926699 889926699 724702847 614610267 910676593 910676593 110604292 814541602 889529409 889529409 875899659 620501856 739642048 739642048 202577920 81005256 81005256 58749952 385896192 476346670 476346670 263448792 263448792 393225304 393225304 321916178 338430746 338430746 320996752 309593634 286137378 117759240 117759240 875280179 875280179 467408730 534494956 534494956 1020042850 1020042850 910994851 910994851 924460186 924460186 629607072 100435680 100435680 72751512 104734488 104734488 37263120 274976768 274976768 269778944 273890952 273890952 70906368 491358636 491358636 999891199 999891199 362232426 387855984 612249248 628691164 730211577 790967537 790967537 538753813 573579520 608288708 608288708 576640221 685544448 685544448 640364568 640364568 572108816 572108816 272880066 279176128 280109184 294387992 336350982 438492426 438492426 378642734 378642734 348324226 595162553 595162553 838879352 838879352 541403265 910952550 910952550 906917735 906917735 1060904133 1060904133 996571246 996571246 558002880 558002880 940124064 940124064 88139257 103447112 103447112 42949120 16651792 629231808 629231808 882131016 882131016 94601802 121790096 121790096 15067584 16512960 862927784 862927784 347612746 347612746 891209768 891209768 646959953 646959953 545827840 545827840 306015570 431026082 918553313 918553313 763462960 763462960 772845853 968672869 968672869 966247030 966247030 738206793 738206793 576887196 679252224 679252224 675303188 675303188 542236800 138612864 23608320 23608320 22415136 21034528 21065984 284709546 284709546 289293154 289293154 280288290 353786946 353786946 1024591661 1035704189 1035704189 857296947 310510862 784502992 784502992 1000341879 1007199946 1007199946 355226458 640365849 640365849 939270000 939270000 848824208 935650096 935650096 827333418 819218418 313049746 119554634 339797088 339797088 111096618 463474088 463474088 462422646 318767144 840977763 853557635 853557635 856578048 856578048 629432051 735753257 735753257 9016373 18220552 766396144 766396144 360859778 360859778 319427758 491394098 491394098 207138204 812616492 812616492 284488159 206891978 747733876 788867133 1051208757 1051208757 983564631 537265279 617910792 1058677608 1058677608 946679175 946679175 789652886 752001303 1017852993 1017852993 553759076 85509672 878217752 878217752 862328358 530731024 691816121 691816121 484780494 484780494 437914832 437914832 307398152 178917500 137023444 102789561 558100641 558100641 824782243 990389345 990389345 956311170 929629463 667158777 690252423 693359675 845078163 845078163 957306673 957306673 303674692 470512666 470512666 4372172 101230220 134258780 134258780 67142664 81604296 81604296 73535880 73535880 73405184 3145728 164368 41187856 41187856 34933120 29546528 29546528 29497768 99250632 99250632 78503872 78503872 31518113 73268456 631005931 631005931 85541416 418431942 1029746754 1029746754 361824775 538128398 538128398 475038379 956424841 956424841 549982242 717358204 717358204 525472492 525472492 442132488 455912818 455912818 495376494 495376494 411450664 503386212 503386212 978356097 978356097 438879510 650859145 805790741 823411234 823411234 806137859 805782644 755673796 755673796 977089148 977089148 543204104 47617536 381137736 381137736 75530824 498233416 498233416 756515111 889327659 889327659 508104879 508104879 675356805 1054881041 1054881041 873137227 290718497 746329446 786310372 786310372 299640152 12650016 134479873 671352837 671352837 719850602 769837308 837212578 837212578 877040456 877040456 759728536 821610435 1029361671 1029361671 1032064543 1032064543 898190896 820179404 820179404 719777389 910428779 910428779 483733572 348455112 415236294 941557900 941557900 748369485 545733197 125842977 80270584 235243712 235243712 260121716 713303088 946055399 946055399 574706053 332418578 714669606 714669606 478400715 296223232 449539648 475995220 475995220 329088714 319367248 319367248 436095508 436095508 421492726 808682574 896083371 896083371 620924996 882132549 882132549 287051361 608701665 924847184 924847184 899942763 870974924 301343166 301343166 225451968 56148360 432752108 516608084 516608084 491259054 491259054 390968462 336478352 273736194 309895936 309895936 104965632 104965632 311100288 311100288 309402002 33953154 452089988 452089988 986542036 986542036 834793282 369235577 930421728 930421728 818209772 1024036415 1024036415 414205247 1015285839 1015285839 909825559 998507113 998507113 952567028 952567028 945601198 135315972 135315456 414247508 414247508 679520256 782307421 782307421 704846684 704846684 755634215 755634215 504079515 969249933 969249933 718963936 718963936 557227860 562853397 588520849 588520849 695102193 695102193 174363572 962315171 962315171 289710566 289710566 31333536 211173460 211173460 350514324 402350788 416309898 416309898 294820386 128045224 279490960 867699041 867699041 280488704 839548259 839548259 896478275 896478275 872937483 872937483 543831816 288679042 355641346 355641346 352549152 283586688 42916944 397263728 397263728 364687866 90178400 90178400 38317555 834666723 834666723 612685273 906270137 906270137 907853184 907853184 591261489 291621443 61450192 119776136 119776136 64745744 64745744 46403936 372244736 372244736 338168064 371460352 371460352 95638816 242131500 242131500 80758800 168303140 211064028 320050226 320050226 293741392 293741392 329652594 921182507 921182507 233903180 233903180 1002898464 1002898464 996621221 850444980 850444980 830946468 105641112 81805992 99385416 99385416 95437024 12591936 12591936 91219360 91219360 70842248 69153792 31855072 87332608 277529642 296672354 296672354 94668904 268697888 268697888 92545864 92545864 294302850 358396008 358396008 629793897 812363107 812363107 1030318516 1030318516 1061770074 1061770074 867489984 867489984 805324951 805324951 529613040 529613040 615034784 709001096 709001096 677454213 677454213 538214284 248791384 716177936 716177936 666996892 666996892 561637281 53699745 681722240 681722240 178872357 134574816 176979572 176979572 58565620 535451742 535451742 388357128 453763108 525122867 896458223 896458223 1055614222 1055614222 870426817 488113038 339915822 135492356 308562248 308562248 1067575051 1067575051 405302140 405302140 650125548 771751965 771751965 261654689 174145701 701071456 836085474 836085474 562096417 145947461 10863488 676440837 807529856 807529856 807205635 538337538 406987334 406987334 410156062 410156062 239333532 278257294 385797004 928011551 928011551 962254503 962254503 777539642 512494686 512494686 308430482 308430482 335585344 390181690 390181690 127996298 399569536 399569536 119537976 425694638 425694638 364904298 356091456 218944044 154186240 171706036 429541900 450343684 460284132 460284132 359852432 236266100 331100174 475782932 475782932 500528292 500528292 491716770 274761728 207905040 245705052 245705052 104706324 239290316 239290316 313617696 313617696 570609681 977334757 1039763084 1039763084 273400185 629904217 629904217 343145421 979971020 986371287 986371287 710579151 614344008 410639488 137364228 515250320 515250320 348127434 451187944 451187944 58368690 244462148 244462148 286003626 286003626 363077240 363077240 350885234 350885234 325358530 328342048 328342048 164154720 164154720 24462080 14544704 702809668 702809668 576790929 280166912 327291424 327291424 704996002 704996002 781318237 781318237 478363767 650695206 650695206 626575017 704907312 704907312 724988084 724988084 616817753 717856481 717856481 647637193 669983320 669983320 101236848 101236848 35916048 30260496 30260496 37906240 64761088 64761088 69734504 69734504 53527344 123748784 123748784 131386816 131386816 115250712 341155400 397096314 397096314 89264808 89264808 85623040 613130032 613130032 373096673 295907682 328772508 328772508 206494860 139352332 201588884 201588884 138543104 138543104 33556434 354952690 453443722 453443722 143657036 211159426 211159426 240130713 889571949 889571949 858833202 858833202 939819141 939819141 509480486 865153703 964337443 1011184182 1011184182 939860891 883288395 890882459 890882459 654068002 246760006 411068764 411068764 9886364 584716936 584716936 567941032 614465865 614465865 760021802 760021802 453247010 336906762 336906762 154196257 268536329 539091263 996270167 996270167 1035546640 1035546640 1031862118 1031862118 3151368 3151368 321946576 321946576 313645272 313645272 695540612 695540612 687974669 680866733 838913809 838913809 726478293 863996576 863996576 572592582 610514973 839851488 839851488 393257055 469828424 469828424 600033287 1023824024 1023824024 766382457 742671852 647021145 647021145 787699763 787699763 524305426 465372502 484613546 537739778 672018500 672018500 80810952 80810952 617621176 646316761 646316761 918353796 918353796 749046018 675612902 1041260682 1041260682 278169625 738264608 738264608 126027345 136995356 371195930 371195930 379624136 600579089 600579089 127807368 559094297 559094297 82787784 82787784 352466472 408000622 902749422 902749422 760386263 835980003 835980003 969994496 969994496 841271571 547879233 547879233 545736769 545736769 307477075 1031938410 1031938410 830649931 830649931 469966395 882110290 1004388431 1012924815 1012924815 1011340694 1011340694 542866579 844887699 844887699 643170202 315749266 315749266 1036306231 1036306231 883445705 955007259 955007259 843178131 376906143 492294460 631268504 805906105 805906105 1026599687 1026599687 449014530 748465829 748465829 680561200 1071584503 1071584503 411124404 411124404 893956201 893956201 448154642 500997920 916145751 916145751 374126411 355257642 629593846 725769909 725769909 643112670 363455850 268542306 631243128 649069352 649069352 873464346 873464346 369271313 608522800 893534802 893534802 727300185 335995169 885613774 885613774 940146958 940146958 553240136 553240136 469780706 746173126 746173126 1019376215 1019376215 888139083 888139083 822346816 822346816 539364531 91976973 489335912 489335912 540453128 540453128 690561280 690561280 103042109 191206542 419779390 419779390 419633798 419633798 447952482 447952482 143332334 110604292 110604292 613190180 613190180 422839629 739824402 739824402 739642048 739642048 202577920 81005256 81005256 22326840 385896192 385896192 373488848 524790144 524790144 304161042 7867184 57415992 57415992 320996752 320996752 309593634 286137378 526046334 526046334 875280179 875280179 605689353 739718669 739718669 1020042850 1020042850 910994851 910994851 924460186 924460186 597666440 117984560 117984560 72751512 104734488 104734488 4953472 274976768 274976768 269778944 361275616 377713802 396411258 491358636 491358636 999891199 999891199 362232426 387855984 612249248 612249248 128135985 790967537 790967537 639105561 644063769 644063769 103884945 21045408 685544448 685544448 54223685 35492864 88554016 88554016 68618464 108963232 278219426 294387992 336350982 438492426 438492426 436351152 436351152 271581574 282818400 608289210 608289210 273155600 35128450 92411148 195560820 927693172 927693172 740361392 740361392 294223944 270668034 353093060 501428718 940124064 940124064 75757345 121993232 121993232 42949120 16651792 792865116 1059623359 1059623359 890554569 890554569 357124905 121790096 15067584 16512960 862927784 862927784 347612746 347612746 891209768 891209768 646959953 646959953 408945030 321863194 306015570 639231513 918553313 918553313 802244537 763462960 772845853 968672869 968672869 561704617 462506640 764249198 885827219 1046023709 1046023709 679252224 675303188 675303188 542236800 138612864 23608320 76948200 92817856 92817856 91016616 77693152 77693152 75833768 75833768 78547136 78547136 27788448 27788448 97354968 123758664 170011216 170011216 579366904 579366904 129362808 129362808 805901466 865675489 865675489 369764912 939270000 939270000 560344001 935650096 935650096 307375056 307375056 22334112 17934464 339797088 339797088 218060148 205262604 440205780 440205780 318767144 413673788 413673788 417519772 856578048 856578048 629432051 735753257 791742813 791742813 674590696 766396144 766396144 596248665 596248665 646190193 646190193 523949220 376439706 812616492 812616492 991155237 991155237 986199216 569410042 456133496 446467678 411355206 379585578 617910792 617910792 538478762 926493191 926493191 789652886 507003272 1017852993 1017852993 553759076 531120132 878217752 878217752 530731024 530731024 216308700 189089204 189089204 121205980 121205980 245292960 245292960 178917500 137023444 968889344 969544935 969544935 413569319 990389345 990389345 549775564 667158777 667158777 690252423 693359675 845078163 994498725 994498725 957306673 439365729 641802040 837556707 837556707 164377611 320476848 738860105 924303456 924303456 672736773 583148124 40930288 311679568 311679568 311611986 277109264 41187856 34933120 29546528 29546528 80478336 80478336 74103296 74103296 31518113 31518113 73268456 876698696 876698696 815587979 418431942 612385540 612385540 875577411 875577411 794984892 794984892 956424841 1026771456 1026771456 624625000 624625000 286415338 170659264 170659264 455912818 455912818 495376494 495376494 474225798 503386212 503386212 978356097 978356097 438879510 650859145 650859145 823411234 823411234 806137859 598701860 755673796 755673796 635959017 380637572 47617536 47617536 272925184 272925184 272894466 498233416 498233416 832126225 889327659 889327659 1031013289 1031013289 912396699 1054881041 1054881041 943837383 1011466762 1011466762 871164870 871164870 299640152 239517824 206673740 281481546 783304412 783304412 719850602 415765608 784145138 784145138 359975850 490735910 707039080 707039080 672973317 920224353 920224353 543695448 525366563 525366563 76106976 910428779 910428779 689228325 689228325 927540411 927540411 811609106 622076202 572064824 408825600 80270584 235243712 235243712 260121716 713303088 946055399 946055399 574706053 332418578 714669606 714669606 478400715 260532630 449539648 449539648 329088714 329088714 309200970 242227926 436095508 436095508 421492726 808682574 896083371 896083371 485993533 340133056 340133056 21156000 21156000 23205568 29495520 355405840 389422234 389422234 301343166 225451968 51979824 432752108 516608084 516608084 491259054 491259054 1053823189 1053823189 108184266 739312085 739312085 104965632 673727636 673727636 548066625 548066625 853432337 977966535 977966535 946101894 834793282 834793282 369235577 371612057 371612057 335667210 408240191 990152743 990152743 1015285839 1015285839 914856483 998507113 998507113 1050351685 1050351685 995833527 995833527 933065171 594970112 616351511 679520256 782307421 782307421 704846684 704846684 604188681 244463996 244463996 202639884 192604536 192604536 153855488 153855488 143358816 143358816 185377504 185377504 174363572 174363572 155404996 163481188 163481188 71614464 71614464 158573958 205948194 350514324 350514324 140550378 105257112 350751576 350751576 271527736 867699041 867699041 280488704 839548259 839548259 896478275 896478275 872937483 872937483 543831816 288679042 355641346 355641346 352549152 283586688 42916944 397263728 397263728 364687866 90178400 90178400 38317555 834666723 834666723 612685273 906270137 906270137 907853184 907853184 863617937 863617937 886648896 886648896 861631784 861631784 830620888 70768304 323292504 323292504 338168064 338168064 169654568 442106544 442106544 429740502 403368864 994348932 994348932 943913512 943913512 878078127 344576753 329652594 921182507 921182507 284497938 365167274 365167274 996621221 996621221 850444980 850444980 830946468 59685744 32788384 99385416 99385416 6621184 13633888 24382368 91219360 91219360 70842248 82051562 268582954 367432002 367432002 364904650 364904650 287705162 355600458 355600458 282276546 282276546 294302850 358396008 358396008 23804480 30139680 30283104 30283104 65932480 853809104 853809104 538609472 55885848 915720224 915720224 529613040 529613040 615034784 615034784 607651593 575312148 169498248 172673300 248791384 716177936 716177936 666996892 666996892 561637281 53699745 672271344 730102613 730102613 188573761 176979572 176979572 58565620 88607064 88607064 59368560 293986312 293986312 223032492 223032492 1055614222 1055614222 870426817 706774441 274879898 1011487787 1011487787 308562248 1067575051 1067575051 1029833106 1029833106 833370419 771751965 771751965 261654689 739376416 739376416 836085474 836085474 562096417 145947461 18096768 676440837 807529856 807529856 807205635 538337538 288640770 271508184 114035928 375648666 375648666 375648666 83921036 155502756 272761220 357304370 505943198 505943198 471073848 453280310 344120526 72800634 310440704 313733970 313733970 332538368 399569536 399569536 119537976 119537976 36802856 120887832 184811520 184811520 167956500 171706036 429541900 429541900 278052616 241318072 327164768 528779070 528779070 297061218 157554880 157554880 413667680 413667680 274761728 413305080 413305080 123751368 123751368 86925648 126876792 313617696 313617696 570609681 977334757 1039763084 1039763084 394023132 629904217 629904217 343145421 979971020 986371287 986371287 710579151 614344008 469871058 469871058 284000670 284000670 283089668 283089668 273664520 30673256 76157352 132789112 286003626 286003626 363077240 363077240 350885234 350885234 325358530 328342048 328342048 33217280 24462080 24462080 14544704 702809668 702809668 576790929 849414692 849414692 327291424 831809558 831809558 831071331 973620801 973620801 815518839 637634216 637634216 704907312 704907312 654580736 654580736 216214591 278936022 278936022 57018096 602997142 602997142 459356961 101236848 4268160 30260496 48555456 48555456 64761088 64761088 63442480 63442480 53527344 53527344 65460720 131386816 131386816 115250712 293736809 883049369 883049369 615832419 284328274 277123139 853704898 853704898 845159697 845159697 615963457 556670241 617257665 804966513 860784686 860784686 948702304 948702304 755378456 504826236 531900392 531900392 316620498 315440346 167402262 240130713 889571949 889571949 858833202 858833202 939819141 939819141 521852478 865153703 964337443 1011184182 1011184182 939860891 883288395 890882459 890882459 654068002 280019352 411193933 411193933 504944291 504944291 371859550 639416488 639416488 593229489 760021802 872417408 872417408 792740515 381704688 381704688 197079084 197079084 113378256 113378256 459933310 459933310 447235294 218269092 451991006 451991006 321946576 321946576 632681856 632681856 391963867 76073216 568744424 568744424 649076315 649076315 158482752 863996576 863996576 436672624 436672624 839851488 839851488 405228893 644051001 644051001 600033287 994265396 994265396 574861701 613731021 647021145 647021145 787699763 787699763 465372502 465372502 176463088 537739778 672018500 672018500 4642816 4642816 32768 646316761 646316761 918353796 918353796 749046018 675612902 1041260682 1041260682 278169625 520721701 666394750 666394750 984130097 984130097 638599430 379624136 379624136 311447320 118508704 118508704 73473088 82787784 82787784 296410968 296410968 290116978 48809424 48809424 835980003 835980003 969994496 969994496 537219392 547879233 547879233 714480281 714480281 432158785 373391682 609957608 830649931 892949302 1014022747 1014022747 1004388431 1012924815 1012924815 1011340694 1011340694 542866579 844887699 844887699 956432949 956432949 992008770 1036306231 1036306231 918443481 955007259 955007259 843178131 653777363 653777363 631268504 805906105 805906105 570082212 454475068 404301318 272445186 313736944 313736944 287509152 287114786 271005954 129362808 893956201 893956201 606097938 500997920 916145751 916145751 826328524 186681966 965217184 1059866679 1063028207 1063028207 363455850 833675960 833675960 805306370 805306370 892657272 892657272 313136451 608522800 608522800 92561584 650248264 650248264 630643305 620427137 799070939 1013555469 1013555469 651264492 885138569 994698639 994698639 376505010 376505010 632384466 813485955 822346816 822346816 939806788 939806788 243587187 229879912 540453128 589634364 757596424 757596424 606261292 759978137 759978137 813893012 813893012 419633798 737215921 737215921 581579707 806555968 806555968 613190180 894789856 894789856 808479502 739824402 672385764 252962840 252962840 210221692 119802456 163653640 492832172 492832172 373488848 524790144 524790144 304161042 297208178 297208178 337774512 337774512 316193200 316193200 162679916 526046334 526046334 376831818 546792840 605689353 739718669 739718669 605428233 202130981 16961568 4593792 125766816 125766816 102879056 117984560 117984560 118853248 118853248 33968256 33968256 272865728 272865728 42923344 361275616 377713802 396411258 396411258 360791450 379317264 379317264 110835288 623252328 623252328 546572865 131977241 639847168 639847168 639105561 644063769 644063769 612437141 612437141 543025841 581327125 626561122 845611299 845611299 808605602 270883314 339902594 365198314 365198314 282777282 565872019 565872019 523846892 809087850 809087850 545468611 608289210 694759908 694759908 304942173 946416818 946416818 927693172 927693172 740361392 740361392 323093571 323093571 514577501 994718752 994718752 293605680 858419355 858419355 202261876 202261876 1012836089 1012836089 1059623359 1059623359 890554569 890554569 357124905 1043312654 1043312654 839253083 342454674 823476140 1050787935 1050787935 566882959 1005458171 1005458171 408945030 408945030 261653564 261653564 639231513 639231513 802244537 802244537 107529624 173050884 514613756 514613756 848325301 848325301 819506880 885827219 1046023709 1046023709 168856791 168085524 47419008 332630928 332630928 285397120 285497600 401916450 401916450 398508282 77693152 77693152 294087072 337643528 337643528 78547136 69206279 769983655 958695535 958695535 583733141 583733141 1019751667 1019751667 898179681 1063205027 1063205027 865675489 865675489 811474594 918161624 918161624 551551425 617771008 617771008 660868954 660868954 360007138 93905130 315172662 315172662 225469542 463155268 463155268 440205780 438244922 729167823 729167823 660804025 593112658 1025507965 1025507965 222611960 1033714991 1033714991 674590696 735356240 735356240 596248665 596248665 708577443 708577443 826700712 826700712 821688355 609546691 991155237 991155237 986199216 713418837 456133496 517996622 706740441 706740441 379585578 762580593 762580593 926493191 926493191 507003272 507003272 745620119 745620119 602786374 531120132 489870126 219316482 771790128 771790128 326553797 289970080 189089204 212371276 339170892 1029595169 1029595169 258414084 644551209 968889344 969544935 969544935 413569319 407821446 922535191 922535191 827115960 827115960 675039204 517798918 967528048 994498725 994498725 587850801 439365729 641802040 837556707 837556707 487949744 491831852 738860105 924303456 924303456 672736773 583148124 131538432 311679568 311679568 311611986 277109264 13705920 12853312 12853312 12620040 81924552 101102152 107361224 107361224 102181832 102181832 17900064 876698696 876698696 827355488 828424611 828424611 650248513 875577411 875577411 794984892 794984892 886121785 1026771456 1026771456 624625000 624625000 286415338 216794464 170659264 75147532 129164176 129164176 320305156 474225798 474225798 296566180 317843106 317843106 292524472 292524472 216809768 289860914 289860914 168986448 598701860 598701860 328423120 380637572 912581320 912581320 96542952 96542952 272894466 272894466 496177162 496177162 832126225 832126225 805570563 1031013289 1031013289 912396699 982086923 982086923 943837383 1011466762 1011466762 871164870 871164870 424796838 424796838 220473709 682497381 783304412 796262522 928914319 928914319 880286752 973407445 973407445 618686504 618686504 441453598 441453598 920224353 920224353 795967711 905969888 905969888 635061349 635061349 632135492 689228325 689228325 927540411 927540411 811609106 672429354 672429354 995612437 995612437 190606034 692404420 692404420 675382468 675382468 649268165 619055257 930714427 1050804254 1050804254 97332456 104876032 375392642 442518474 442518474 150900604 314380680 350174922 350174922 132407392 159465568 184680608 184680608 172101780 171025452 435901744 435901744 152769482 21156000 23205568 29495520 355405840 389422234 389422234 233791306 171628308 455969684 455969684 138833154 231709756 946626691 946626691 1053823189 1053823189 108184266 739312085 739312085 412620052 673727636 673727636 548066625 548066625 853432337 977966535 977966535 946101894 462343062 448927828 448927828 371612057 916210508 916210508 820251735 990152743 990152743 981757656 914856483 914856483 941248614 941248614 1050351685 1050351685 995833527 995833527 933065171 766824640 616351511 616351511 746922284 746922284 705030165 378270810 378270810 900669031 900669031 666883263 841327648 841327648 153855488 153855488 142871828 170679620 185377504 185377504 144229956 253448328 253448328 163481188 163481188 107790472 455777152 455777152 453694518 374656822 274367514 307926706 309364978 350751576 350751576 894714192 894714192 10914475 0 346999544 346999544 352317754 352317754 3009792 28169728 28169728 161768451 940409603 940409603 816847521 807995783 994708722 994708722 469348006 436656150 935372592 935372592 849552579 841949442 370697346 810468888 810468888 91506490 289226018 538150576 863617937 863617937 886648896 886648896 861631784 861631784 830620888 70768304 70768304 55190656 75577536 75577536 169654568 858313365 858313365 806490707 962980263 994348932 994348932 1014863272 1014863272 942146823 571748280 606947209 859708920 859708920 368246832 368246832 365167274 344982090 344982090 324274352 97642808 82878056 119374144 119374144 52493184 52493184 10519296 13633888 24382368 27525824 27525824 24431520 82051562 268582954 367432002 367432002 364904650 364904650 287705162 355600458 355600458 282276546 586608593 586608593 586135281 901350209 901350209 651227810 665744576 665744576 117997688 853809104 853809104 65804435 55885848 915720224 915720224 314434083 84159216 84159216 42542160 53756848 135940352 135940352 140413700 184174032 682623488 707264900 707264900 561055477 728929952 728929952 672271344 730102613 730102613 188573761 55010352 66782896 66782896 88607064 88607064 70054080 375264888 375264888 566474863 580913481 982024281 982024281 959265169 755458212 755458212 1011487787 1011487787 72616584 62549132 443338134 1029833106 1029833106 833370419 505720557 442330758 442330758 917289138 917289138 453192531 552907554 552907554 808152514 808152514 286683552 286683552 560989446 807324038 807324038 289480832 539093506 873156933 889225837 889225837 957757565 957757565 857040965 806363682 806363682 503317538 503317538 471073848 453280310 344120526 271003930 337774930 347140866 347140866 396472418 396472418 348385498 72446666 136610060 136610060 120916776 239622956 239622956 167956500 167956500 433609514 433609514 278052616 241318072 327164768 528779070 528779070 477638918 477638918 157554880 413667680 413667680 272073180 413305080 413305080 168032778 322184032 322184032 386048056 386048056 409083948 409083948 3880704 536950408 769135980 769135980 470471694 470471694 203304962 503509012 503509012 336764674 432323600 432323600 469871058 469871058 284000670 395343976 395343976 307348118 306302252 234409772 234391552 231871052 231871052 147001868 147001868 120640204 243308992 247601844 247601844 233025556 233025556 149979068 149979068 249118232 368261406 388247356 388247356 214973074 849414692 849414692 463479108 831809558 965343346 965343346 973620801 973620801 815518839 637634216 637634216 294748386 807939944 807939944 953248190 953248190 965678215 965678215 471451790 1067653265 1067653265 459356961 46538784 133700072 133700072 48555456 48565232 49442048 49442048 104169640 104169640 48236816 30544608 36774488 133246328 133246328 73409480 293736809 883049369 883049369 615832419 839024672 839024672 853704898 853704898 845159697 845159697 628435873 556670241 617257665 804966513 860784686 860784686 948702304 948702304 755378456 504826236 531900392 531900392 316620498 315440346 444749890 444749890 408978148 456168000 593627328 593627328 298587537 236603558 521852478 521852478 276833402 276833402 187533704 60615264 60615264 34407456 94293952 99326120 280019352 411193933 1054135763 1054135763 504944291 598614536 854406452 854406452 593229489 309534428 872417408 872417408 792740515 580813262 657792699 977447694 977447694 51541592 65537520 459933310 459933310 447235294 218269092 451991006 451991006 339610880 339610880 632681856 632681856 699232389 699232389 605837288 941017737 943249925 943249925 205686529 553095158 840545975 840545975 956749863 956749863 405228893 405228893 644051001 644051001 296030240 296030240 0 336593410 336593410 117575736 275304922 275304922 129073172 350291886 350291886 324027350 8409344 75698784 93411368 93411368 77565672 74243336 68576784 40346514 653434254 653434254 478323501 428294216 585472597 1052065036 1052065036 520721701 666394750 666394750 984130097 984130097 638599430 307367688 618397953 618397953 118508704 875769651 875769651 304622154 387460930 665676156 950747754 950747754 715054677 715054677 679631378 302518288 405407476 714101371 932659792 932659792 943176001 943176001 714480281 834965827 834965827 417647232 236140210 892949302 1014022747 1014022747 739907085 1012537228 1012537228 417515395 270928706 7745610 0 369484088 956432949 956432949 992008770 992008770 669777784 918443481 918443481 854289357 585460429 653777363 653777363 598032824 394482638 362920826 454475068 454475068 427244452 427244452 474555750 474555750 287114786 287114786 271005954 129362808 862320833 862320833 606097938 434236630 434236630 826328524 826328524 755286032 965217184 1059866679 1063028207 1063028207 391431590 833675960 833675960 805306370 805306370 899550008 899550008 313136451 131845024 131845024 92561584 650248264 650248264 630643305 620427137 799070939 1013555469 1013555469 1026680168 1026680168 996358136 996358136 438899573 376505010 632384466 813485955 933834324 933834324 1038481780 1038481780 451965852 970163402 970163402 589634364 757596424 757596424 606261292 759978137 759978137 813893012 813893012 277866752 737215921 737215921 581579707 806555968 806555968 279192007 894789856 894789856 808479502 672385764 672385764 261181472 261181472 248742108 119802456 163653640 492832172 492832172 208931724 346407328 346407328 295760146 297208178 297208178 401652272 401652272 363946762 316193200 57099986 34526832 155505824 691290569 691290569 651091161 651091161 643423153 602006001 766424009 766424009 617507089 609137721 609137721 554502552 188387352 188387352 200545796 228722004 228722004 125181332 275359296 451150080 451150080 224494032 224494032 81838360 407579884 407579884 991826967 991826967 295249506 623252328 623252328 553016417 553016417 239679892 239679892 101786753 89031581 584640732 612437141 612437141 656420913 656420913 626561122 845611299 845611299 808605602 270883314 339902594 365198314 365198314 282777282 565872019 565872019 523846892 809087850 809087850 545468611 98710314 694759908 694759908 304942173 946416818 946416818 896009643 645996827 430667945 405815296 343966574 327155810 514577501 994718752 994718752 777133073 858419355 858419355 202261876 202261876 1012836089 1012836089 878634882 465281993 513997071 815089248 816179523 1043312654 1043312654 839253083 377745498 823476140 1050787935 1050787935 566882959 1005458171 1005458171 451994044 451994044 364680936 276865544 345104970 345104970 1037132528 1037132528 54526128 173050884 514613756 514613756 848325301 848325301 819506880 827370496 827370496 180666580 180666580 173279892 88987812 332630928 332630928 285397120 285497600 401916450 401916450 398508282 53975704 55738528 294087072 337643528 337643528 84021288 84021288 769983655 958695535 958695535 583733141 583733141 1019751667 1019751667 898179681 1063205027 1063205027 843387426 811474594 811474594 918161624 918161624 551551425 617771008 617771008 660868954 660868954 360007138 93905130 315172662 315172662 225469542 463155268 463155268 438244922 438244922 729167823 729167823 660804025 472188373 1025507965 1025507965 222611960 1033714991 1033714991 143808128 278914646 278914646 444339864 536532990 864219778 918227065 918227065 826700712 821688355 609546691 595739272 268585088 713418837 713418837 201588836 517996622 706740441 706740441 928537808 928537808 898062449 957854625 957854625 304457775 304457775 745620119 968336258 968336258 456315702 456315702 319341618 771790128 1059999920 1059999920 826317207 246371726 246371726 339170892 1029595169 1029595169 258414084 644551209 778175000 778175000 714216085 714216085 682758981 922535191 922535191 831780728 831780728 675039204 517798918 967528048 967528048 906553829 587850801 399762681 508226070 508226070 487949744 487949744 491831852 491831852 466796660 218251816 67111688 131538432 131538432 69087728 51405456 51405456 19664864 42009408 42009408 33567136 51171696 81924552 101102152 107361224 107361224 102181832 127699963 382804698 642003163 642003163 827355488 828424611 828424611 650248513 650248513 908173528 908173528 931135752 931135752 827791506 197823840 17376288 151603530 292336934 292336934 307806342 458122422 504335414 504335414 503629854 419649592 296566180 296566180 820999337 820999337 632026401 632026401 233560584 1068044527 1068044527 252732805 792087614 820301181 1058039453 1058039453 912581320 912581320 111198256 96542952 82207536 35002896 255083060 419661830 419661830 277198880 277162050 159840356 315577782 315577782 45220848 45220848 31983072 110875856 124855224 124855224 29739864 424796838 496639744 496639744 887198928 908850459 927888483 928914319 928914319 880286752 973407445 973407445 618686504 618686504 441453598 441453598 748449126 748449126 795967711 905969888 905969888 635061349 635061349 547561984 377751642 377751642 328542834 622015232 622015232 672429354 672429354 995612437 995612437 190606034 692404420 692404420 675382468 675382468 649268165 660050585 930714427 1050804254 1050804254 327187650 327187650 375392642 442518474 442518474 306571846 401597866 401597866 758243717 777285127 846051671 846051671 1025998159 1025998159 506308769 435901744 684660352 684660352 680864325 592328741 350225281 399512160 399512160 275532336 275532336 171628308 455969684 455969684 346144192 793806298 946626691 946626691 717477089 717477089 955306892 955306892 441057736 543298560 543298560 544329874 544329874 540665601 537440385 279611011 442939860 442939860 306065666 448927828 448927828 320288148 916210508 916210508 820251735 810830035 667682047 537007108 982173840 982173840 805470295 940491846 978203725 978203725 176547924 851493796 851493796 766824640 529278040 201464100 378900995 705030165 705030165 378270810 378270810 900669031 900669031 666883263 841327648 841327648 152612352 252467208 252467208 170679620 170679620 29820208 67720888 254944488 254944488 212862788 212862788 107790472 455777152 455777152 453694518 374656822 274367514 307926706 309364978 309364978 279376384 894714192 894714192 641089451 323560626 609237185 609237185 907638233 907638233 607644099 929610384 929610384 434097088 940409603 940409603 816847521 807995783 994708722 994708722 469348006 436656150 935372592 935372592 1006953746 1006953746 395324185 810468888 810468888 302072090 388079634 388079634 18225696 22469120 22469120 936189472 936189472 22306907 16912416 21366912 269097024 282659426 282659426 18230848 111165605 858313365 858313365 806490707 962980263 962980263 403520814 1014863272 1014863272 942146823 571748280 606947209 859708920 859708920 368246832 368246832 130817736 213646852 213646852 127969696 232701820 232701820 119374144 119374144 225943612 225943612 69733248 216838204 216838204 90927400 90927400 95196512 95196512 21099712 27400512 92910720 92910720 268497024 268497024 25428096 33849824 33849824 586608593 586608593 586135281 901350209 901350209 651227810 665744576 665744576 564396288 818284224 818284224 325321474 988807721 988807721 1041851535 1041851535 981731415 935923032 259113544 107577488 107577488 142083764 142083764 544607209 747639212 747639212 747115533 634565960 770364573 770364573 543779364 691361476 691361476 790403024 790403024 187245876 66782896 43260800 43260800 70054080 375264888 375264888 566474863 580913481 982024281 982024281 959265169 755458212 755458212 256600064 256826556 256826556 570522704 570522704 570425361 546082816 546082816 358395456 442330758 442330758 917289138 917289138 453192531 586430464 586430464 808152514 808152514 8495265 957521200 957521200 807324038 807324038 289480832 539093506 873156933 889225837 889225837 957757565 957757565 857040965 806363682 806363682 379405430 379405430 100664938 177510486 177510486 277084250 337774930 347140866 347140866 396472418 396472418 293822578 90362280 136610060 136610060 120916776 376302114 376302114 119571624 136186020 433609514 433609514 336964256 375392648 375392648 454135660 494520164 512536446 512536446 425197740 425197740 433197764 433197764 324526174 354605922 354605922 322184032 322184032 386048056 386048056 409083948 595126195 913954721 913954721 1068044861 1068044861 281564610 807958292 807958292 1041244677 1041244677 807033611 752367524 752367524 193164534 177163450 164014330 395343976 395343976 307348118 306302252 234409772 234391552 231871052 231871052 147001868 147001868 120640204 243308992 247601844 247601844 233025556 233025556 562402817 562402817 249118232 368261406 388247356 388247356 444672441 452534388 452534388 463479108 522506868 965343346 965343346 924659259 680448360 463396470 555565476 588921465 588921465 807939944 807939944 953248190 953248190 965678215 965678215 872995548 1067653265 1067653265 319653120 319653120 348250442 348250442 359278266 399840282 399840282 344857674 385337472 385337472 48236816 30544608 36774488 133246328 133246328 73409480 294650192 294650192 271729104 813101330 839024672 839024672 50479123 814635618 814635618 628435873 628435873 482571357 389885754 348008308 201803036 236053008 243015760 243015760 261167034 506074398 506074398 473433870 473433870 438932340 444749890 444749890 838860819 838860819 570589203 403473085 1023426603 1023426603 84672526 709857549 964289415 1033694060 1033694060 858445747 949121843 984609683 984609683 576466342 327216774 327216774 1054135763 1054135763 491307206 598614536 899626019 899626019 831206499 309534428 280019778 783292549 783292549 580813262 657792699 977447694 977447694 130024944 735056837 735056837 109171852 140358304 179114028 866648055 866648055 503135328 841535513 841535513 542039169 699232389 699232389 605837288 941017737 943249925 943249925 205686529 553095158 840545975 840545975 956749863 956749863 914406478 1037180955 1037180955 905974527 796944593 796944593 232561532 336593410 336593410 614058864 746636556 746636556 704391843 476933590 393236714 393236714 617858274 684253892 684253892 93411368 77565672 74243336 68576784 23504144 378800316 412226118 412226118 276187590 585472597 1052065036 1052065036 332513492 538059775 538059775 532206424 520346686 307367688 307367688 618397953 618397953 65119704 875769651 875769651 314434304 387460930 665676156 950747754 950747754 715054677 715054677 679631378 432938214 463996278 730468611 932659792 932659792 943176001 943176001 406888672 834965827 834965827 417647232 23392256 248224 671617544 739907085 739907085 1012537228 1012537228 872415243 270928706 614789907 873245483 873245483 588045386 57148848 62461440 283898070 592972848 592972848 461221813 415394578 413237248 413262150 413262150 85505302 354765256 362920826 362920826 504647360 504647360 427244452 474555750 474555750 364395072 97866914 88199200 88203432 126134480 126134480 9889792 93624640 93624640 1023937012 1023937012 755286032 529845297 222451108 698105926 698105926 515902997 899695498 899695498 545342021 656686717 899550008 899550008 481234184 70008142 80005320 80005320 548866830 1019615439 1019615439 853991431 712300491 705352725 705352725 1026680168 1026680168 996358136 996358136 438899573 417284680 509625542 509625542 933834324 933834324 1038481780 1038481780 451965852 970163402 970163402 799879736 799879736 683548485 221571197 168770580 151195400 71053348 137809780 722205748 722205748 156496548 156496548 88281216 88281728 88281728 88146560 85008936 34695508 182839412 182839412 261181472 261181472 248742108 259135884 259135884 121970856 281880978 281880978 346407328 350274650 350274650 14680512 4194624 482603318 482603318 363946762 461939346 461939346 179345476 158264372 691290569 691290569 651091161 651091161 643423153 602006001 766424009 766424009 617507089 609137721 609137721 554502552 188387352 188387352 200545796 228722004 228722004 125181332 312475904 451150080 451150080 310868112 310868112 81838360 407579884 407579884 991826967 991826967 325358016 385362584 385362584 553016417 553016417 239679892 239679892 101786753 89031581 630516304 654385209 654385209 656420913 656420913 560645170 832086408 832086408 381429008 381429008 362023642 208326980 208326980 176588232 180519360 180519360 4268160 4268160 4268160 48242704 48242704 94898614 949485894 949485894 380333478 531104320 531104320 313396348 405815296 405815296 352936850 327155810 327155810 318767154 633357976 891436296 891436296 558632017 985225 249639872 403683692 403683692 1070177120 1070177120 261508803 815089248 816179523 816179523 849449557 849449557 377745498 377745498 117211034 228717200 250238636 658185803 658185803 451994044 717095659 717095659 276865544 579474513 579474513 1037132528 1037132528 207679260 207679260 273517348 273517348 161041796 141338212 141338212 134482576 173015700 180666580 180666580 173279892 88987812 355638720 355638720 14513898 100616960 100616960 95476544 94419816 94419816 4722816 268641408 336021770 336021770 290065568 294125602 294125602 344301856 356912552 356912552 277265544 118151216 621056040 621056040 538312841 843387426 843387426 389414561 397658330 397658330 280441930 271396098 331520496 356550562 377273496 377273496 82860808 48603864 15455752 77717832 77717832 9511488 9511488 8902208 13223936 13223936 257069432 257069432 78685120 92348520 92348520 77738272 43041104 272130848 285860898 678670878 678670878 661202361 224604588 864219778 918227065 918227065 391733258 110173042 118700592 118700592 353642650 353642650 201627694 637700096 637700096 67465225 298566276 928537808 928537808 898062449 957854625 957854625 483802784 483802784 313862994 968336258 968336258 456315702 456315702 444220530 439347613 1059999920 1059999920 826317207 378144888 378144888 229257538 243119252 251089228 251089228 374867928 778175000 778175000 714216085 714216085 682758981 558938194 400681782 831780728 831780728 549313316 492219268 578277408 578277408 564733281 564733281 399762681 296956770 132190874 86180392 86180392 122295480 122340976 122340976 103432768 115875280 115875280 53284640 33837376 200830260 200830260 145017156 49843904 42009408 33567136 176847324 263167240 267128316 267128316 212899048 78803985 620907194 851708115 851708115 642003163 818631786 931918971 931918971 583155856 583155856 908173528 908173528 931135752 931135752 827791506 197823840 136648812 226896132 292336934 292336934 307806342 458122422 504335414 504335414 503629854 419649592 94421352 283298114 820999337 820999337 632026401 632026401 233560584 1068044527 1068044527 252732805 792087614 820301181 1058039453 1058039453 612710273 612710273 111198256 542759361 542759361 23542176 438636630 587689300 950327381 1068299543 1068299543 1059232036 1059232036 479154497 45220848 45220848 31983072 110875856 124855224 124855224 29739864 29467680 496639744 496639744 887198928 908850459 927888483 927888483 902359162 902359162 606178355 245373985 474861148 474861148 434111942 496347681 496347681 372984945 336748514 518068408 919766827 1001042807 1001042807 843785856 377751642 377751642 328542834 444084368 792397078 792397078 685993282 685993282 680649285 295553573 160443396 545269345 545269345 722020832 727921077 727921077 660050585 292614730 439533198 488219620 488219620 199473524 259657016 259657016 416940644 416940644 401597866 758243717 1073031546 1073031546 1000415607 1025998159 1073447964 1073447964 402326852 684660352 765096481 765096481 592328741 915615761 915615761 575214232 275532336 275532336 77100730 289839664 346144192 346144192 793806298 793806298 437657989 380559114 475138752 955306892 955306892 379637767 543298560 543298560 840261072 848930003 848930003 812538177 841667859 841667859 572951554 139264000 139264000 54989444 208541552 237817116 245370196 245370196 169918740 537007108 537007108 982173840 982173840 805470295 235759433 301032446 325691110 423624870 960499939 960499939 605996354 605996354 605057090 848940851 848940851 632292201 177259092 177259092 168575968 23858592 172756116 220823612 220823612 152612352 252467208 252467208 54211808 197507248 197507248 142790724 254944488 254944488 212862788 212862788 78668300 169226496 169226496 278011712 278011712 372245256 372245256 103844650 279376384 279376384 541071648 641089451 641089451 323560626 968884260 968884260 907638233 907638233 607644099 929610384 929610384 434097088 434097088 23042560 141935462 434027106 434027106 533036400 533036400 491444366 872515520 872515520 1006953746 1006953746 395324185 857400961 861013257 861013257 388079634 823487490 823487490 813230003 924764328 936189472 936189472 933302395 893537552 57003448 374474074 374474074 282659426 68881056 355616770 355616770 416945814 416945814 270189988 136840452 9572928 130207984 130207984 122734256 122734256 22880776 54650896 54650896 525968 38797968 105382464 213646852 213646852 127969696 232701820 232701820 29647584 29647584 225943612 225943612 69733248 216838204 216838204 90927400 90927400 95196512 95196512 21099712 21099712 92910720 92910720 50390864 50390864 68469480 101928168 101928168 76034096 38085184 50440366 491085872 491085872 0 350563708 350563708 564396288 633405760 633405760 696257536 988807721 988807721 1041851535 1041851535 981731415 935923032 259113544 107577488 107577488 142083764 142083764 544607209 747639212 747639212 747115533 634565960 770364573 770364573 543779364 643136985 651164889 790403024 790403024 726228485 726228485 824305411 824305411 159383788 333496598 873186507 873186507 566431936 679811328 679811328 770415008 770415008 745288725 256600064 643646808 698069961 698069961 570522704 684042388 684042388 629180505 231287296 231287296 247554252 247554252 460589556 460589556 586430464 586430464 276183296 18619924 5716608 957521200 957521200 154244787 21816960 276392578 276392578 269141506 69628418 337850634 337850634 69415688 403178502 415804560 415804560 379405430 379405430 89163412 177510486 302438976 304271634 304271634 302383386 335618058 335618058 96727778 397699440 397699440 294987874 373657842 373657842 376302114 394281728 394281728 362023530 358736298 358736298 336964256 375392648 375392648 454135660 494520164 512536446 512536446 425197740 425197740 433197764 433197764 276826868 354605922 354605922 186518256 302364250 302364250 341761026 341761026 595126195 913954721 913954721 1068044861 1068044861 851579218 851579218 941620743 1041244677 1041244677 1013763471 1037551674 1037551674 65688846 25438272 25438272 222506080 231685356 231685356 142397316 159910592 159910592 90447524 75506176 76620360 76620360 172366240 172366240 96733472 71877768 155693496 155693496 562402817 562402817 339354204 339354204 244389642 333115663 444672441 539304118 539304118 151000130 522506868 664539412 917016115 917016115 866644843 623901993 429359388 842673507 842673507 1015348346 1015348346 730680661 769671493 769671493 872995548 872995548 331222209 716451506 716451506 319653120 348250442 348250442 658645834 658645834 810685059 810685059 600985674 385337472 14992320 8572992 51727216 51727216 10022176 45351056 294650192 557058851 816582499 816582499 813101330 805617699 386436706 855642115 855642115 25239648 25239648 124331448 126554560 126554560 40371600 75497544 243015760 243015760 261167034 506074398 506074398 473433870 473433870 438932340 438932340 403869730 838860819 838860819 810209408 810342505 1023426603 1023426603 327768889 709857549 964289415 1033694060 1033694060 858445747 949121843 984609683 984609683 576466342 373557402 327216774 280256284 491307206 491307206 538642474 899626019 899626019 831206499 268607818 280019778 472128564 472128564 441583838 445372355 702829021 702829021 187211917 735056837 735056837 462100362 462100362 402794776 866648055 866648055 917179160 917179160 981299304 981299304 833162063 833162063 349837002 740824007 740824007 3936000 134234240 138461316 138461316 21082116 577860129 914406478 914406478 1037180955 1037180955 905974527 796944593 796944593 691291793 691291793 994626916 994626916 1025281607 1025281607 725920981 510166470 393236714 620436138 620436138 684253892 684253892 9311936 30602048 53784888 68680200 68680200 78280734 481619676 955638222 955638222 166752615 444209046 980035222 980035222 977872023 487716360 520346686 520346686 103359768 283661256 343933824 343933824 51378456 11873088 269765120 314434304 363243776 363243776 958432869 958432869 47321808 586729959 586729959 1029342762 1029342762 900253035 808841976 36564240 148470064 148470064 145957128 285250156 523303032 523303032 267145402 473433870 974208350 974208350 742197071 817694722 872415243 872415243 213910686 614789907 873245483 957201763 957201763 920710021 920710021 918484318 252639144 1066960508 1066960508 986362585 886256193 886256193 580407384 580407384 491406380 491406380 173577862 504647360 504647360 246231896 313720890 407003131 788181693 788181693 1034084456 1034084456 587362362 404216953 1049376960 1049376960 671708749 1023937012 1023937012 702303483 997868814 997868814 814484547 698105926 515902997 899695498 899695498 883949882 847250201 572781632 572781632 873386513 873386513 588979315 844564666 844564666 1019615439 1019615439 853991431 712300491 612981019 574734359 693176320 693447333 693447333 151267716 217429730 417284680 778750268 812509515 812509515 311518940 514453206 514453206 235892024 826138988 826138988 799879736 799879736 714847356 714847356 253570620 739465236 739465236 714275925 722205748 722205748 212546892 212546892 207675745 592773172 761342376 761342376 779127736 779127736 774146180 182839412 93332008 206692580 209721348 259135884 259135884 132613376 281880978 281880978 82701576 350274650 350274650 309991314 720162261 720162261 847591140 847591140 461939346 461939346 179345476 158264372 235529244 631027504 631027504 543659185 601138785 607021136 607021136 151889752 105008344 72247064 112813640 132163552 132163552 41992272 100679680 100712472 100712472 4194432 312475904 312475904 33720578 310868112 310868112 75531306 291840816 291840816 48445866 325358016 325358016 65016138 32950880 58884920 58884920 176128 571529224 571529224 74239368 630516304 654385209 654385209 633978969 616016712 616016712 75331921 307192834 381429008 381429008 362023642 297819272 289576090 317346250 1021837809 1021837809 233457128 665358352 665358352 861934627 861934627 592057681 949485894 949485894 1044478942 1044478942 531104320 313396348 39172920 363890411 677963579 677963579 822735872 822735872 511730688 891436296 891436296 833423855 605818566 551555264 715661444 715661444 1070177120 1070177120 685145668 685145668 430883168 708969664 849449557 849449557 292478370 913689348 1044455583 1044455583 477356775 658185803 658185803 463482822 717095659 717095659 323418136 579474513 579474513 457395387 788760051 788760051 813526785 946645537 946645537 860711962 860711962 769491516 377503969 805404728 901054990 901054990 929859280 929859280 596116800 355638720 296663362 353016264 353016264 333811602 333811602 314658000 316763848 316763848 336021770 336021770 335585544 294125602 294125602 117440832 356912552 356912552 277265544 118151216 621056040 621056040 538312841 197171233 168747304 120487056 30285024 136443968 138338052 141109900 201457676 201457676 175615056 175615056 82860808 48603864 16024000 77717832 77717832 9511488 9511488 8599040 13223936 13223936 177742656 177742656 197256284 197256284 150999064 150999064 263403046 272130848 285860898 678670878 678670878 661202361 224604588 224604588 387901496 391733258 391733258 272900152 118700592 118700592 353642650 355244217 355244217 637700096 637700096 67465225 371163400 371163400 229447496 518831572 518831572 372294426 483802784 672779156 672779156 577580433 253563092 328678002 444220530 444220530 439347613 1014832784 1014832784 623250334 378144888 378144888 158174090 540863937 540863937 112585560 1044727681 269633040 302699538 342016266 342016266 306758802 268341130 188221364 188221364 160044132 329261780 329261780 171413932 632277936 632277936 563010657 329253234 329253234 254881822 165798148 298881896 298881896 322965552 322965552 103432768 115875280 115875280 53284640 47285104 200830260 200830260 145017156 49843904 40435796 159397888 176847324 263167240 267128316 267128316 212899048 71471768 620907194 851708115 851708115 315233490 818631786 931918971 931918971 921711736 921711736 830158755 365506051 347028810 318817594 135522560 136648812 136648812 226896132 226896132 51380784 47761104 47761104 43442384 92849256 346031178 346031178 94421352 283298114 366700320 524117668 524117668 292823552 292823552 271651780 403152422 403152422 788770818 788770818 460853345 294674984 612710273 612710273 30934752 542759361 542759361 643833860 813758957 813758957 950327381 1068299543 1068299543 1059232036 1059232036 643035813 643035813 676398028 676398028 881522154 881522154 779826049 732504568 490783270 473433870 429991242 368382186 283102184 857761852 857761852 902359162 902359162 878773387 298324955 474861148 474861148 434111942 496347681 496347681 372984945 336748514 542556163 919766827 1001042807 1001042807 843785856 747758157 910811208 1020875934 1020875934 792397078 792397078 685993282 685993282 680649285 295553573 554309632 554309632 26164320 722020832 727921077 727921077 182807002 292614730 439533198 488219620 488219620 263176660 263176660 307056738 416940644 416940644 368322576 368322576 1073031546 1073031546 1000415607 282484386 1073447964 1073447964 402326852 402326852 765096481 765096481 540082458 915615761 915615761 575214232 54797344 88887936 92369704 289839664 289839664 59956258 730439123 730439123 672175250 31266688 161121755 686920607 755029112 755029112 546309513 635966641 840261072 848930003 848930003 817264131 841667859 841667859 572951554 33783328 155509392 155509392 616882856 637051025 637051025 709232020 1063522489 1063522489 700616892 700616892 180362482 235759433 235759433 321222604 325691110 423624870 960499939 960499939 605996354 882288640 882288640 848940851 848940851 867672937 932307579 932307579 282763793 452440044 973582222 973582222 889891088 146000148 73071272 73071272 67962082 197507248 197507248 489189566 531013682 531013682 213952628 253855976 260311404 453265498 453265498 414728756 296224098 411412550 411412550 103844650 20498208 118793736 541071648 541071648 808156242 915260497 968884260 968884260 840610268 1003352271 1003352271 525815359 509245526 430638472 757334665 757334665 616633505 561197985 959567122 959567122 533036400 529247988 58960350 549775430 549775430 623724930 894733561 894733561 861013257 861013257 102513072 823487490 823487490 813230003 924764328 935210400 935210400 933302395 893537552 57003448 374474074 374474074 72816168 68881056 355616770 671775161 1024119855 1024119855 916856807 916856807 578854198 113564392 113564392 138464152 595286076 650240217 848421016 848421016 345055440 345055440 105382464 105382464 9961992 3847176 38777104 119171528 119171528 75624752 58633376 114681584 114681584 45687584 305978938 305978938 119314048 350524498 350524498 311660570 80839808 335607618 335607618 295724032 295724032 68469480 101928168 101928168 663418705 704615005 793901428 847611111 847611111 550005970 703373546 703373546 652837828 652837828 672139472 696257536 696257536 563610048 763117644 763117644 406867205 353650380 103311000 103104784 54068912 54028832 41682048 691095528 691095528 234037837 629749444 629749444 645948480 645948480 753145052 753145052 783027549 783027549 588368208 726228485 726228485 824305411 824305411 159383788 333496598 873186507 873186507 566431936 566431936 778447104 778447104 770415008 745288725 136139837 643646808 698069961 698069961 675550021 694232501 726148244 959209867 978365585 1042096843 1042096843 1016408655 992284430 460589556 660701448 660701448 874617575 874617575 559035029 559035029 277660228 776074274 776074274 433034837 841307672 841307672 684319941 651013089 806635894 806635894 565627809 831758400 831758400 419748090 385992708 340050104 340050104 302438976 304271634 304271634 302383386 344070800 344070800 81054402 397699440 397699440 294987874 373657842 373657842 338842152 394281728 565980747 565980747 303038994 303038994 272173448 380106512 380106512 237196534 554072290 898579563 898579563 556728650 225445769 1014502829 1014502829 610798048 610798048 147461316 186518256 186518256 797175933 797175933 992336955 992336955 1033307757 1033307757 917586934 543162753 851579218 851579218 941620743 941620743 1013763471 1013763471 1037551674 1037551674 429463082 251987762 406040856 406040856 252693372 252693372 142397316 142397316 79169804 142674316 242297808 242297808 206570188 245489768 245489768 238133468 213148600 155693496 212738524 269041418 269041418 339354204 543713692 543713692 337311625 337311625 1023761395 1023761395 293659363 161093220 285217346 631865400 866644843 866644843 623901993 8943977 842673507 842673507 1015348346 1015348346 730680661 769671493 769671493 530451796 530451796 331222209 716451506 716451506 551625153 551625153 294195954 658645834 658645834 810685059 810685059 600985674 346247720 269635960 269635960 108501008 68233536 27310592 45351056 295238112 557058851 816582499 816582499 805753088 805617699 386436706 855642115 855642115 294859554 294859554 519040556 519040556 490659840 227317511 910563483 1032064165 1032064165 248515036 498141166 519571106 519571106 371720986 371720986 637612825 637612825 643309592 810209408 810209408 810342505 897894507 897894507 327768889 801489432 801489432 739060749 432331939 228457880 871592883 904662507 904662507 537793002 1068294734 1068294734 630533188 630533188 694182234 694182234 564269342 344998400 344998400 302254128 487850284 487850284 988548736 988548736 493635705 445372355 910659634 910659634 615103917 455669115 462100362 462100362 405200920 940856136 940856136 917179160 917179160 981299304 981299304 833162063 833162063 349837002 740824007 740824007 673259781 539870209 539870209 164225504 582002549 605814200 605814200 711408021 711408021 704856708 704856708 205656204 752668776 752668776 691291793 994626916 994626916 1025281607 1025281607 725920981 510166470 298344874 620436138 620436138 615954753 540990976 16334432 18824192 577918640 600305152 600305152 78280734 481619676 955638222 955638222 166752615 1010307465 1010307465 980035222 977872023 648730513 284830744 309895896 388744066 388744066 124905112 89329664 89329664 302596554 302596554 379320154 379320154 363243776 958432869 958432869 8523840 566236420 703206885 1029342762 1029342762 900253035 817315375 407664730 494687070 932264376 932264376 644309985 687964354 817908329 817908329 759304365 974208350 974208350 742197071 411645123 806676993 806676993 213910686 573950723 849127795 957201763 957201763 920710021 920710021 918484318 796745644 1066960508 1066960508 986362585 886256193 886256193 580407384 580407384 538644210 875080944 875080944 300969520 240541250 173672728 173672728 407003131 788181693 788181693 1034084456 1034084456 880828480 404216953 1049376960 1049376960 814025629 747769365 893787307 893787307 997868814 997868814 814484547 500484757 331926000 388022322 883949882 883949882 847250201 572781632 572781632 903444669 903444669 842834354 856156800 856156800 505567002 399071398 955611034 1046878623 1046878623 1046878623 693176320 693447333 693447333 652663256 1012092392 1012092392 778750268 812509515 812509515 392195246 392195246 308546896 392474026 392474026 117858394 761519037 761519037 714847356 714847356 705426453 739465236 739465236 714275925 548672800 190980401 212546892 212546892 207675745 592773172 761342376 761342376 779127736 779127736 774146180 47186640 12583104 84517504 84517504 53427504 132613376 132613376 81838536 52687152 52687152 313766928 313766928 309991314 720162261 720162261 847591140 847591140 716473589 170707905 106867896 106867896 709310592 709310592 631027504 543659185 601138785 607021136 607021136 105315648 59176288 72247064 112813640 186683028 228098320 228098320 248696640 248696640 167698404 97683548 44565840 148512896 148512896 533840448 533840448 313277472 313277472 321052992 330860578 330860578 289406754 29737200 29737200 596311089 596311089 73038912 571529224 571529224 617346249 617346249 651960329 651960329 552916056 616016712 616016712 551066632 551066632 317558080 317558080 297819272 297819272 289576090 317346250 1021837809 1021837809 413360450 665358352 665358352 861934627 861934627 592057681 612243592 612243592 1044478942 1044478942 406643184 325762988 325762988 363890411 677963579 677963579 822735872 822735872 511730688 402991110 833423855 833423855 695725918 744937869 744937869 715661444 1039172585 1039172585 685145668 915619362 915619362 575400087 442099350 442099350 167289202 913689348 1044455583 1044455583 477356775 364517226 364517226 463482822 463482822 417543290 323418136 240336761 304443674 304443674 788760051 788760051 813526785 946645537 946645537 860711962 860711962 769491516 377503969 805404728 901054990 901054990 929859280 929859280 596116800 296663362 296663362 353016264 353016264 333811602 333811602 314658000 354878752 354878752 277222760 335585544 335585544 84070440 84070440 117440832 117440832 60833808 113288312 121669328 121669328 554873416 700701849 700701849 80089717 133834776 133834776 77944416 12599616 6340992 13636288 13636288 111939608 111939608 69079424 49847504 94015744 95995752 95995752 169935924 422576484 422576484 157560164 157560164 214253564 214253564 197256284 197256284 211948668 885101685 885101685 313253000 230945964 359712466 359712466 477937170 585456482 585456482 540991233 593541009 593541009 587340048 63863920 288476928 467838706 991179648 991179648 714248064 983064518 983064518 980272066 371163400 412299432 518831572 873360169 873360169 417822735 672779156 672779156 577580433 253563092 253563092 138543116 872546312 872546312 638513283 877155960 877155960 253772206 323622066 323622066 540863937 540863937 277423170 1044727681 932634949 932634949 530834910 530834910 511520670 268341130 593366641 866016369 965143866 965143866 955669989 663350394 759289840 759289840 655521804 655521804 637612640 637612640 165798148 298881896 298881896 322965552 322965552 28498464 85505544 85505544 43717696 47285104 47285104 51463760 51463760 176958352 176958352 159397888 159397888 174691744 174691744 65143908 75624136 75624136 50585635 600935162 835305633 835305633 905116496 936565233 936565233 921711736 921711736 830158755 365506051 347028810 282397120 435553856 435553856 41620436 268635652 466107874 466107874 327027378 311460050 311460050 369222386 369222386 351873184 32302400 121411048 366700320 524117668 933569025 933569025 667891712 667891712 1011173162 1011173162 788770818 788770818 666816216 553906209 305333160 305333160 77716064 201509500 624185376 709028393 813758957 965200975 965200975 562611297 817542516 817542516 499660013 643035813 652214490 676398028 676398028 881522154 881522154 779826049 732504568 490783270 473433870 494908073 494908073 283102184 1066541972 1066541972 938188794 891798529 878773387 374941856 387714618 387714618 67774728 360380259 360380259 398984442 398984442 542556163 907177768 930560955 930560955 340655025 747758157 910811208 1020875934 1020875934 1007706378 58790751 287578212 614939174 614939174 588090208 588090208 554309632 277613634 285488450 287519010 363049268 363049268 178516168 178516168 395559824 395559824 263176660 263176660 307056738 500831982 500831982 356986436 1022675919 1022675919 533995000 839403107 839403107 161564576 161564576 29368676 277545514 277545514 81466592 289486050 350959050 350959050 275320842 339884258 339884258 92369704 125591512 126186224 126186224 730439123 730439123 672175250 31266688 629704242 831522675 884524875 884524875 546309513 635966641 635966641 392708404 476836881 817264131 822009795 822009795 548068482 33783328 155509392 155509392 616882856 637051025 637051025 806886146 1063522489 1063522489 978722027 978722027 168220725 231518088 268533760 526317194 526317194 453298230 892269921 892269921 1022692105 1022692105 882288640 835849155 812659434 867672937 932307579 932307579 867459639 1023032377 1023032377 973582222 889891088 146000148 88504192 73071272 67962082 71389064 166672926 489189566 531013682 531013682 518815856 253855976 260311404 453265498 453265498 414728756 397571418 411412550 411412550 94963992 317665504 317665504 367042528 367042528 808156242 915260497 915260497 109238611 840610268 1003352271 1003352271 525815359 509245526 430638472 757334665 757334665 616633505 561197985 959567122 959567122 529247988 529247988 209551552 549775430 549775430 623724930 894733561 894733561 835234976 102513072 102513072 272638480 272997266 274884608 274884608 24241056 41240624 41240624 24241056 19787040 113887826 341651082 341651082 101040760 293692440 671775161 1024119855 1024119855 916856807 916856807 578854198 113564392 113564392 138464152 595286076 650240217 848421016 848421016 345055440 345055440 101730120 135304796 135304796 80741952 267840444 267840444 119171720 93386096 152051876 152051876 114681584 136418036 305978938 538148657 538148657 350524498 807256600 874376715 874376715 374299347 363186512 880059176 880059176 906047130 906047130 397271384 663418705 704615005 793901428 847611111 847611111 550005970 703373546 703373546 652837828 652837828 703999569 703999569 55838421 404244610 763117644 763117644 406867205 353650380 183926208 103104784 54068912 142468356 142468356 691095528 691095528 234037837 629749444 629749444 645948480 645948480 753145052 753145052 783027549 783027549 760345960 221246600 221246600 94037576 94037576 77190760 25374816 14287552 13637312 79039808 651036848 778447104 778447104 673385784 232681981 438701590 680048004 682756229 682756229 997818599 997818599 726148244 959209867 978365585 1042096843 1042096843 1016408655 992284430 420217954 660701448 660701448 874617575 874617575 559035029 559035029 277660228 776074274 776074274 545260816 841307672 841307672 684319941 918250496 918250496 806635894 565627809 831758400 831758400 419748090 385992708 432015572 432015572 111167522 384700434 384700434 102810368 849347521 909429531 909429531 296781313 545833057 545833057 332688658 332688658 304191872 369673728 901302281 901302281 631295848 630769257 280510827 380106512 380106512 237196534 554072290 898579563 898579563 556728650 225445769 1014502829 1014502829 1011261072 1011261072 315414053 659186948 659186948 797175933 797175933 992336955 992336955 1033307757 1033307757 952054020 952054020 555780304 778846944 778846944 447080790 245416284 245416284 511989344 511989344 429463082 251987762 406040856 406040856 252693372 252693372 139792332 79362560 79362560 142674316 242297808 242297808 206570188 245489768 245489768 238133468 213148600 142531440 212738524 627364377 627364377 480476551 543713692 543713692 517889882 337311625 1023761395 1023761395 543476097 161093220 161093220 924683592 924683592 894121992 894121992 870594809 870594809 546441946 235074228 317586936 343565378 343565378 310265040 280419138 159797916 688506190 899752299 899752299 551625153 551625153 283119808 270668034 342284424 342284424 281026658 346247720 346247720 269635960 269635960 184104788 184104788 134718336 38695040 295238112 295821664 295821664 279894082 304061971 314726141 487187502 487187502 444748415 307288249 488345511 519040556 533003788 533003788 761551819 910563483 1032064165 1032064165 789061222 789061222 519571106 519571106 371720986 575800996 637612825 637612825 643309592 643309592 541597913 604802088 809814121 809814121 231761878 801489432 801489432 739060749 432331939 139398208 871592883 904662507 904662507 558511648 1068294734 1068294734 630533188 630533188 694182234 694182234 564269342 897392448 897392448 538184193 783712606 999865039 999865039 988548736 493635705 407248630 910659634 910659634 615103917 455669115 337705432 453470958 453470958 940856136 940856136 589611189 234607201 740203906 740203906 689037861 178340721 26288736 564931684 673259781 673259781 540869377 539870209 698103649 698103649 605814200 605814200 81905357 991483918 991483918 663936724 663936724 752668776 993135622 993135622 591273777 525081393 524552382 512345776 82594432 826377960 826377960 817646059 25165728 25165728 25130784 16334432 18824192 577918640 600305152 600305152 325443810 325443810 565109222 565109222 276537107 1010307465 1010307465 73938703 648730513 993154190 1036482805 1036482805 873280628 388744066 126612600 89329664 89329664 302596554 302596554 379320154 379320154 271715186 330354506 330354506 20449056 566236420 703206885 964180977 964180977 862267827 817315375 407664730 494687070 932264376 932264376 644309985 687964354 817908329 817908329 759304365 759304365 701252121 675929096 743122567 806676993 829430830 829430830 202015500 557367648 679624961 679624961 654586751 446369045 669263297 796745644 796745644 219064355 679488036 679488036 281597594 531847252 531847252 538644210 875080944 875080944 382263924 462504586 462504586 420029870 361300586 75192230 11658048 44167440 880828480 880828480 1006938524 1006938524 814025629 814025629 747769365 893787307 893787307 788274040 760482820 361531326 361531326 817474518 998644095 1058390859 1058390859 960923911 495056170 451804531 903444669 903444669 842834354 856156800 856156800 736218950 376404056 955611034 1046878623 1046878623 1046878623 973849552 973849552 765470861 979684592 1012092392 1012092392 938033444 878227031 1007422479 1007422479 848635484 308546896 392474026 392474026 630352444 630352444 538185748 706359044 706359044 705426453 679486021 707789589 707789589 711887888 711887888 705066553 649211964 228722496 228722496 92483864 119627832 119627832 93915796 193202292 193202292 67182776 219280100 264728828 264728828 164264048 164264048 528832694 528832694 219601452 357646360 357646360 297869538 131401018 32800946 558401876 716473589 716473589 477901972 112984176 106867896 709310592 709310592 740130620 740130620 554511393 241188640 241188640 105191056 59176288 32746032 31215600 186683028 228098320 228098320 248696640 248696640 167698404 97683548 44565840 148512896 148512896 533840448 533840448 313277472 313277472 321052992 379279768 379279768 289406754 107139632 107139632 596311089 596311089 73038912 73038912 542916681 617346249 617346249 651960329 651960329 644510849 644510849 606375177 551066632 551066632 109086936 109086936 48540888 145875780 145875780 211135044 218344230 413360450 413360450 301995064 327815186 343937024 343937024 363204382 444419140 444419140 152435508 406643184 406643184 325762988 325762988 432603832 432603832 578859218 578859218 268632131 1059063808 1059063808 894309399 464309622 695725918 744937869 744937869 529373701 1039172585 1039172585 387256906 915619362 915619362 575400087 287835426 287835426 126167160 885618099 885618099 600235065 894038722 894038722 106306200 64347264 33689616 121825440 121825440 100804608 67112984 89286664 89286664 427822124 444646054 444646054 424178390 424178390 331644938 130337016 888672552 888672552 546603044 486330318 486330318 481643024 108795912 63367000 295704896 295704896 70630346 24235360 24235360 115774984 354878752 354878752 336037792 336037792 297097506 360964618 360964618 379320162 938554827 938554827 921265280 667500689 121669328 554873416 700701849 700701849 623242336 800572573 800572573 674205800 145129856 146564300 209192844 209192844 203984396 291426602 291426602 121900658 349707970 349707970 286261794 284173344 422576484 422576484 157560164 813768771 813768771 719692879 881712215 881712215 438259529 885101685 885101685 313253000 202060812 176383093 265559004 792368186 792368186 585456482 540991233 593541009 593541009 587340048 312755424 312755424 467838706 991179648 991179648 714248064 983064518 983064518 980272066 273046146 416378412 475444262 873360169 873360169 817345505 817345505 470176259 773831421 773831421 299195134 299195134 872546312 872546312 638513283 877155960 877155960 437471028 437471028 431564646 269025408 277423170 277423170 250610048 932634949 932634949 530834910 530834910 511520670 191598234 593366641 866016369 965143866 965143866 955669989 663350394 759289840 759289840 806422326 806422326 637612640 637612640 32665720 8034112 34296992 101110704 101110704 28498464 85505544 85505544 57150992 80067804 244643908 244643908 233471852 176958352 176958352 137208112 162187836 162187836 130847776 206269528 206269528 132435448 85119528 600935162 1003961079 1003961079 905116496 936565233 936565233 818978203 906338553 906338553 312215569 303828498 282397120 435553856 435553856 141860804 268635652 466107874 466107874 327027378 311460050 311460050 369222386 369222386 474405006 474405006 344230154 375878432 520791012 933569025 933569025 879441418 667891712 1011173162 1011173162 626702121 666816216 666816216 553906209 537260025 537260025 134568332 705796709 705796709 822083616 822083616 965200975 965200975 698392675 873781281 873781281 453713966 503318610 652214490 652214490 55776221 405907128 405907128 514189662 514189662 366947772 469220248 494908073 1059004768 1059004768 1066541972 1066541972 938188794 377491804 494958762 869216489 869216489 387714618 1033639329 1033639329 522771090 398984442 893915112 893915112 907177768 930560955 930560955 538182784 542903937 542903937 351525452 1007706378 1007706378 550576833 675356677 929438467 929438467 775620501 775620501 513156221 277613634 977408296 977408296 851517860 851517860 478388334 478388334 373547142 407081832 407081832 379726488 379726488 500831982 500831982 356986436 1022675919 1022675919 533995000 839403107 839403107 1065910456 1065910456 193011828 277545514 607649993 607649993 655310760 655310760 827594272 827594272 339884258 339884258 328531232 328531232 126186224 126186224 180175344 180175344 802040476 802040476 684120261 831522675 884524875 884524875 760540460 544810881 544810881 1044235782 1044235782 67477399 36312336 37691520 37691520 26569312 26569312 471469394 976096852 976096852 505078351 806886146 806886146 419825864 978722027 978722027 268697616 34079760 268533760 526317194 526317194 453298230 85850254 52355493 1022692105 1022692105 838461123 835849155 812659434 610390442 830595171 837293491 867459639 1023032377 1023032377 289954616 947430242 955428683 955428683 685218032 287602760 22417888 58812480 62963952 62963952 518815856 518815856 17042782 0 25710656 389083196 389083196 397571418 397571418 118533736 94963992 317665504 317665504 564322464 564322464 550029504 550029504 723972149 723972149 622154989 687266757 1057623766 1057623766 883786466 883786466 702040968 667671272 643806192 579853440 579853440 577065152 252594838 252594838 209551552 228376876 228376876 14760768 273529632 293263266 293263266 290523424 326186786 326186786 34002960 89553152 122757800 122757800 101937328 101937328 105246744 105246744 113887826 341651082 341651082 101040760 293692440 377528440 377528440 18874656 192565536 192565536 253497600 253497600 197133324 176366592 176366592 125729216 125729216 116400864 59245680 62236456 62236456 135304796 135304796 80741952 267840444 267840444 119171720 93386096 152051876 152051876 112249760 136418036 605040688 605040688 538148657 538200352 807256600 874376715 874376715 374299347 363186512 880059176 880059176 906047130 906047130 397271384 331688178 295029344 795793810 795793810 438689799 633784424 1027788975 1027788975 226730179 600454973 756035589 756035589 697565396 970554031 970554031 961824548 1031262016 1031262016 183926208 64970592 40900224 142468356 142468356 141370628 568464609 568464609 550130560 550130560 224993737 61501532 47186640 260206281 749305934 760345960 760345960 221246600 221246600 807704918 807704918 182795972 287640878 883081482 883081482 615133393 933641896 933641896 673385784 673385784 628187192 438701590 680048004 816447744 816447744 997818599 997818599 596848899 132654396 159982692 329002070 329002070 85733956 219626028 272769780 272769780 222302520 174199188 119668908 1581072 33621504 38871696 580334528 580334528 583343528 583343528 598613361 598613361 918250496 918250496 843200224 1034566753 1034566753 756151999 822884792 822884792 432015572 432015572 109188354 384700434 384700434 248777176 849347521 909429531 909429531 296781313 545833057 545833057 332688658 332688658 304191872 369673728 901302281 901302281 631295848 630769257 280510827 8388672 26004576 157390924 157390924 91090344 174759900 223405024 223405024 208671116 208671116 1011261072 1011261072 637567188 659186948 659186948 414915091 114470160 230984886 528547458 599013650 599013650 952054020 952054020 190291610 778846944 778846944 884772869 884772869 245416284 511989344 511989344 505031456 363665076 293734632 362684010 432278146 432278146 347471940 79362560 79362560 8702016 150250304 150250304 12600000 12600000 37798144 37798144 49944528 83560016 187710480 627364377 627364377 480476551 480476551 517889882 517889882 144444996 702107396 702107396 543476097 20022114 403661666 924683592 924683592 897979592 897979592 882966849 882966849 546441946 172417072 27406432 67600682 325938634 898283537 983057892 983057892 688506190 899752299 899752299 1003890641 1003890641 436244562 1054739990 1054739990 681051717 986875476 986875476 416469702 244320288 157293832 184104788 184104788 134718336 60950256 60950256 43606144 43606144 59034352 304061971 314726141 487187502 1063770519 1063770519 524996286 491928043 488345511 533003788 533003788 761551819 761551819 584579793 814209730 814209730 789061222 631424779 631424779 515544627 924325736 924325736 255328363 638985308 687884337 687884337 541597913 809814121 809814121 1052613448 1052613448 743511960 743511960 943971576 943971576 225237431 113483140 558511648 558511648 542188161 424747041 824227312 852227283 852227283 822820995 1013973013 1013973013 897392448 538184193 783712606 999865039 999865039 990089887 693038280 693038280 378355183 481635150 481635150 567544545 567544545 460710722 460710722 190104114 578428241 598349169 892997579 892997579 847786883 933336987 933336987 888776009 892661610 892661610 540869377 540869377 25895268 698103649 698103649 568579668 979611298 979611298 991483918 991483918 663936724 663936724 594093033 993135622 993135622 591273777 525081393 781041716 781041716 484495310 974655352 974655352 817646059 16218915 19378312 88607872 88607872 72361384 91325448 91325448 90285482 325443810 566925490 566925490 565109222 428292198 880985805 880985805 8639920 313525084 993154190 1036482805 1036482805 873280628 127315456 588888553 588888553 73431776 630330209 630330209 35915792 126561792 287785096 330354506 330354506 269872226 733750561 733750561 957159314 957159314 813041485 813041485 990408837 990408837 560444566 577290626 577290626 396619909 35678208 459252400 459252400 104142722 273875586 675929096 743122567 743122567 829430830 829430830 616116809 339435312 389020986 389020986 633765704 633765704 1033941840 1033941840 63963888 50331696 162084356 194684896 194684896 147972804 466167030 466167030 438142854 447867414 447867414 462504586 462504586 420029870 453096991 453096991 265864956 1016425683 1016425683 174184720 1006938524 1006938524 508948689 924370491 924370491 803472598 803472598 788274040 587990016 530351264 530351264 817474518 998644095 1058390859 1058390859 960923911 889247866 857740487 697374694 697374694 268834818 290252546 736218950 736218950 307749905 786674142 786674142 940667142 940667142 973849552 973849552 765470861 979684592 979684592 938033444 938033444 878227031 1007422479 1007422479 1002886359 1002886359 395600618 978358836 978358836 730684489 730684489 599026204 643260985 654561289 679486021 707789589 707789589 711887888 711887888 705066553 649211964 228722496 228722496 87123892 42648588 71902344 93915796 200646100 200646100 230849362 489107390 489107390 477227822 368508782 368508782 529105598 529105598 297391426 528423450 528423450 304068224 584089937 667173085 667173085 715410677 715410677 477901972 213983436 99761104 676191252 712727041 788707612 788707612 719583324 719583324 650433248 119418904 55874424 177838600 177838600 159879784 159879784 138146376 138146376 78793564 49275216 49275216 281686736 282465152 282465152 41278896 274944056 274944056 312902528 329253234 379279768 379279768 285077442 319134480 319134480 44357840 19323168 72960128 72960128 48072320 48072320 49629760 612374336 612374336 644510849 644510849 606375177 68628993 75045504 75045504 67892232 42732656 226879596 260638092 260638092 241486236 239159680 4268160 301995064 301995064 343937024 343937024 128456544 128456544 67125512 138154912 158260644 158260644 491073976 491073976 432603832 611917891 611917891 710940035 710940035 1059063808 1059063808 894309399 37897659 608489986 608489986 210764392 210764392 411385996 411385996 356565162 591616102 717537495 717537495 198230772 941656496 941656496 885618099 885618099 600235065 894038722 894038722 106306200 64347264 33689616 121825440 121825440 473965979 473965979 282729698 803054715 803054715 902857401 902857401 864545306 864545306 318538281 103742473 888672552 888672552 654148144 654148144 568910764 774986944 774986944 675735080 675735080 888201802 888201802 613540302 24235360 115774984 115774984 84575296 336037792 336037792 297097506 360964618 360964618 379320162 938554827 938554827 921265280 667500689 85322280 202328072 220077612 220077612 623242336 800572573 800572573 674205800 145129856 146564300 209192844 209192844 203984396 291426602 291426602 121900658 349707970 349707970 286261794 284173344 284173344 225121082 69271820 813768771 813768771 719692879 881712215 881712215 553805980 553805980 14090527 773881022 799035869 799035869 595652721 792368186 792368186 309330834 284299424 920736 21105786 377773146 377773146 312755424 161680200 499723332 499723332 410239106 410239106 139366444 273046146 273046146 416378412 475444262 475444262 470020110 817345505 817345505 227153004 773831421 773831421 493013606 493013606 636618733 636618733 521073382 577945947 577945947 437471028 437471028 431564646 269025408 273228930 273228930 4259840 466428776 511446942 511446942 511446942 511446942 135282752 143704644 408392260 408392260 873336342 873336342 331857219 239523996 267484956 806422326 806422326 375533779 34615984 49894544 62039712 62039712 61080656 61080656 19267328 39771264 57150992 57150992 80067804 244643908 244643908 233471852 142164228 142164228 38982288 162187836 162187836 130847776 206269528 206269528 133210400 85119528 968913588 1003961079 1003961079 901357611 598710235 148668173 666984522 906338553 906338553 579016776 909837952 909837952 548896090 141860804 141860804 152962592 152962592 137704992 53337296 49336848 65943312 65943312 202192370 474405006 474405006 344230154 375878432 520791012 520791012 879441418 879441418 653792889 652423641 122880865 285860898 302390898 302390898 299978144 537260025 537260025 351366924 705796709 1011392390 1011392390 822083616 490569787 698392675 698392675 873781281 873781281 228627278 503318610 503318610 740459896 740459896 360582140 401036384 514189662 514189662 366947772 469220248 469220248 1059004768 1059004768 742354543 581185540 377491804 377491804 494958762 869216489 869216489 428267622 1033639329 1033639329 522771090 169239367 893915112 893915112 543906561 543906561 541064961 538182784 542903937 542903937 277325737 553656864 553656864 550576833 706790293 929438467 929438467 775620501 775620501 746777381 658113369 977408296 977408296 976893502 851517860 478388334 478388334 373547142 407081832 407081832 379726488 379726488 337140552 184948788 42364248 283860680 283860680 264515578 264515578 33383280 1065910456 1065910456 193011828 193011828 607649993 607649993 808915018 1019533855 1019533855 827594272 689044850 922876765 922876765 756975594 756975594 506653857 506653857 180175344 839510802 839510802 684120261 841457435 841457435 760540460 760540460 544810881 544810881 1044235782 1044235782 67477399 310194066 310194066 271857808 302933142 448985478 471469394 976096852 976096852 505078351 1054375812 1054375812 419825864 419825864 544073662 859972033 859972033 801864959 546409807 412742259 349947230 93504622 59409168 41546400 4973184 16679584 28237152 773477252 837621161 890414731 890414731 608269840 442536500 307353967 289954616 947430242 955428683 955428683 685218032 287602760 227935084 227935084 441241414 441241414 202901252 508587464 508587464 341909898 329842306 421007166 509720800 509720800 450453726 450453726 277349442 46161984 37871760 564322464 838865161 838865161 908218514 908218514 773858378 675319884 687266757 1057623766 1057623766 883786466 883786466 702040968 667671272 643806192 579853440 579853440 577065152 58769520 662339901 662339901 359982346 359982346 370188168 856109922 876609291 876609291 840206866 845205139 845205139 812433570 928401169 928401169 651406232 650928121 639591193 649757465 649757465 659013217 659013217 822592033 822592033 614861910 305794074 480297294 480297294 481585982 481585982 389547196 389547196 268846614 405505976 405505976 314487592 42593056 59245680 120397824 120397824 1447424 3801088 3806976 3806976 68619840 68619840 26944016 51862264 51862264 112249760 112249760 68732944 605040688 605040688 642083608 642083608 898690058 898690058 563949153 43640400 93127090 290455552 290456226 331473224 331473224 77717746 7889816 656369176 795793810 795793810 973191484 973191484 1027788975 1027788975 476588291 312671292 756035589 756035589 697565396 970554031 970554031 961824548 1031262016 1031262016 94009440 17437344 13689920 9215744 9215744 23468737 617778154 810834211 810834211 608374563 238286713 657771321 870370201 870370201 939540820 939540820 888013018 775179793 839418503 839418503 807704918 182795972 554237952 883081482 883081482 615133393 933641896 933641896 182819625 800065800 800065800 276300517 211473996 816447744 816447744 318840882 318840882 843654291 843654291 991496269 991496269 810099305 810099305 764420724 448793904 768154848 919478311 919478311 119668908 661649869 672258220 1046326845 1046326845 1043404214 1004590072 1004590072 598613361 598613361 108785256 843200224 920215880 1034566753 1034566753 756151999 822884792 822884792 44304464 72674456 124633984 205524292 239339668 248777176 248777176 141744904 767920320 767920320 124879112 69231544 88482912 88482912 434907190 443377120 443377120 748192939 748192939 86578032 86578032 606317072 606317072 268686338 268686338 91090344 342461579 976842949 1033613432 1033613432 527540789 879447436 879447436 637567188 605208612 483414673 746586189 746586189 986696155 986696155 733630396 733630396 402013975 798571728 798571728 907934822 907934822 884772869 884772869 705498133 688189413 548616076 505031456 363665076 534680304 534680304 460770852 432278146 360308078 336716802 99943138 99943138 76606472 76606472 273694882 273694882 164866784 164866784 155613624 309396768 452750922 466226852 466226852 239800724 938830036 938830036 732303283 732303283 1046097539 1046097539 489971066 302534752 939699792 939699792 685711460 897979592 897979592 882966849 882966849 829429669 888547395 888547395 635929027 625672560 898283537 983057892 983057892 634656419 740171277 740171277 1003890641 1003890641 436244562 1054739990 1054739990 681051717 986875476 986875476 416469702 303469112 303469112 24252688 20971680 17286384 60950256 60950256 43606144 43606144 62965458 317122672 317122672 285421602 1063770519 1063770519 524996286 491928043 281162125 197279140 605190848 605190848 584579793 584579793 814209730 814209730 536887562 631424779 631424779 515544627 924325736 924325736 791863577 536881328 976579330 976579330 936643323 970473666 990831682 1052613448 1052613448 803556507 885385419 943971576 976681731 976681731 1018252819 1018252819 922433499 922433499 937611771 937611771 852227283 852227283 822820995 1013973013 1013973013 573596048 633815937 633815937 119020081 990089887 990089887 693038280 894644460 894644460 481635150 481635150 567544545 567544545 460710722 460710722 183781508 578428241 598349169 892997579 892997579 847786883 933336987 933336987 888776009 892661610 892661610 284320096 70133024 73728 183304224 200224244 568579668 979611298 979611298 943114802 943114802 248038620 594093033 731251192 872546123 872546123 582534993 185197620 781041716 781041716 484495310 974655352 974655352 453526635 18502432 22688544 88607872 88607872 78976480 555483192 566850448 566850448 539955617 566925490 566925490 428292198 428292198 71820574 507749456 507749456 483054798 464236402 464236402 356520450 356520450 395751648 588888553 588888553 73431776 630330209 630330209 75965008 78252288 287785096 293866530 293866530 286001250 733750561 733750561 957159314 957159314 813041485 813041485 990408837 990408837 675031960 974659664 974659664 1021722748 1021722748 935803131 935803131 1068500621 1068500621 1019819164 616773402 336319236 336319236 690626859 690626859 622149931 622149931 389020986 633765704 973812752 1033941840 1033941840 763836525 281336550 1066561156 1066561156 391254056 391254056 139485248 988748426 1034631410 1034631410 447867414 116982144 116982144 507052040 507052040 453096991 265864956 1016425683 1016425683 856103168 52562016 134613252 196570191 924370491 924370491 803472598 803472598 587990016 587990016 530351264 530351264 1043494108 1043494108 962708355 889976848 889247866 889247866 857740487 697374694 697374694 292292161 292292161 637011070 637011070 1038555759 1038555759 786739612 940667142 940667142 757653961 757653961 874777849 874777849 780691092 917293117 917293117 852732087 668079807 554848846 1002886359 1002886359 545785034 978358836 978358836 730684489 730684489 672586245 689827365 707622917 707622917 185680673 185680673 137568516 9886272 43893712 43893712 127991872 127991872 92504080 62412416 62412416 85626520 200646100 200646100 230849362 489107390 489107390 477227822 368508782 368508782 529105598 529105598 297391426 528423450 528423450 304068224 584089937 667173085 667173085 715410677 715410677 213983436 213983436 252306492 676191252 712727041 788707612 788707612 719583324 719583324 650433248 119418904 117965880 177838600 177838600 168433280 168433280 173825680 173825680 78793564 49275216 49275216 281686736 282465152 282465152 59430000 59430000 24566688 312902528 329253234 329253234 270490642 269740288 319134480 319134480 81838536 113411456 113411456 642147456 642147456 48072320 49629760 612374336 612374336 582103105 582103105 539281665 4793472 8385936 39661200 39698320 41633792 226879596 260638092 260638092 241486236 239159680 348242240 379621522 604115202 604115202 119669105 128456544 1062582341 1062582341 886601790 886601790 411907982 491073976 491073976 895436705 895436705 611917891 710940035 710940035 962594964 962594964 963985420 963985420 608489986 630637009 630637009 109500504 847481827 847481827 621048019 621048019 717537495 717537495 198230772 941656496 941656496 815008323 110167102 114820824 281275960 375203578 375203578 332648626 495457386 495457386 190527156 491807906 491807906 282729698 803054715 803054715 902857401 902857401 864545306 864545306 328769546 328769546 879919593 879919593 861760564 861760564 568910764 774986944 774986944 675735080 675735080 888201802 888201802 613540302 18181504 28363040 84575296 84575296 74497376 27284768 27284768 31694912 31694912 41988336 105321248 105321248 67117128 106206692 264167292 664366360 772412445 772412445 217618429 67843080 584197769 584197769 182268052 685449819 685449819 341651082 350019848 350019848 277721320 94596234 125981700 260621436 260621436 359608568 359608568 28126560 59536752 59536752 31056256 136136132 136136132 366569450 741089440 741089440 277087843 773881022 799035869 799035869 639219888 639219888 338739352 309330834 875572747 875572747 873736378 873736378 377773146 100141032 277587488 499723332 499723332 403929056 403929056 385898688 166322692 300086658 521665628 521665628 389343064 432524422 432524422 273045696 227153004 241378896 317170608 493013606 493013606 235684672 190723952 329221064 329221064 262184068 139461252 327813356 327813356 533970160 533970160 223412904 223412904 466428776 511446942 511446942 511446942 511446942 135282752 143704644 408392260 408392260 873336342 873336342 603887120 603887120 103631320 103631320 538316931 538316931 121843768 827472907 827472907 105785752 61080656 548043528 633233051 937465960 937465960 827873072 823658019 651719832 396604496 112923144 78780240 43188560 185337104 185337104 139645572 139645572 71745648 133210400 133210400 285622274 968913588 968913588 901357611 901357611 598710235 148668173 616194744 616194744 596218089 579016776 909837952 909837952 548896090 49294752 47537392 19949344 54203136 54203136 53337296 49336848 65943312 65943312 95569960 111286434 335825290 394713210 394713210 311607336 311607336 646558952 653792889 653792889 652423641 275506322 350747082 350747082 128710008 814398240 814398240 473486038 351366924 678151936 1011392390 1011392390 638447291 537044996 268611844 268611844 226703406 398787628 398787628 784485566 784485566 740459896 740459896 360582140 401036384 401036384 245712924 76859976 476420672 476420672 719490868 719490868 581185540 581185540 436269158 436269158 411734122 427825506 427825506 428267622 428903720 522596157 522596157 232557094 740901985 740901985 543906561 543906561 541064961 961070697 961070697 876227689 876227689 664130925 655207006 177263192 1058449336 1058449336 854404563 725170670 746777381 746777381 658113369 645010329 976893502 976893502 725226188 304210194 843112798 843112798 604092361 657459001 929358344 929358344 391433696 346502840 346502840 399004322 399004322 289407138 65545712 65545712 64985856 28654944 11011392 19251520 556540969 556540969 808915018 1019533855 1019533855 309539762 689044850 922876765 922876765 756975594 756975594 506653857 506653857 140485700 839510802 932796280 932796280 841457435 841457435 353337390 293303730 270419736 477579910 943333146 943333146 375553935 310194066 310194066 271857808 302933142 448985478 448985478 550638273 550638273 767192657 1054375812 1054375812 498976882 498976882 544073662 859972033 859972033 1003808108 1003808108 1040178671 1040178671 612465358 612465358 498779022 498779022 457808378 457808378 846710315 846710315 890414731 928700320 928700320 442536500 57333410 188368772 188368772 320654898 322346624 322346624 166924902 227935084 505554520 505554520 441241414 202901252 508587464 508587464 341909898 329842306 421007166 509720800 509720800 450453726 450453726 348994898 50655264 50655264 61063184 838865161 838865161 908218514 908218514 773858378 675319884 425796006 809501952 809501952 1024476164 1024476164 345776641 134422848 135475716 135475716 136151888 136151888 788877248 788877248 662339901 359982346 359982346 370188168 856109922 876609291 876609291 840206866 845205139 845205139 812433570 928401169 928401169 651406232 672137220 672137220 649757465 649757465 659013217 659013217 822592033 1015022595 1015022595 1018241871 1018241871 480297294 481585982 562995257 864832576 864832576 839785491 839785491 619331040 619331040 82714056 75467104 133721674 323816090 323816090 303736818 272390744 1015154377 1015154377 325784010 325784010 448548830 448548830 275386516 90527808 881116354 881116354 306574130 642083608 876167571 898690058 898690058 645964170 645964170 586680273 864649992 864649992 823255754 823255754 377046587 875867193 875867193 656369176 621411361 973191484 973191484 836764131 836764131 476588291 670641447 732355805 732355805 232981277 529020962 890045532 890045532 800537393 741371872 33153408 18950528 18950528 9215744 9215744 28514176 617778154 810834211 810834211 608374563 238286713 657771321 870370201 870370201 939540820 939540820 888013018 775179793 839418503 839418503 113447309 174915668 554237952 625951433 625951433 653663193 692010856 692010856 46833508 800065800 800065800 307239878 307239878 904168099 940185470 940185470 919810528 919810528 843654291 991496269 991496269 810099305 810099305 764420724 448793904 768154848 919478311 919478311 119677084 661649869 672258220 1046326845 1046326845 1043404214 1004590072 1004590072 133864065 545244520 572780817 853763537 920215880 920215880 775800339 167981076 167981076 154463510 472985426 472985426 374195118 413413030 413413030 364381834 718349013 1020530861 1020530861 997466150 915025793 915025793 360732696 360732696 434907190 443377120 443377120 748192939 919294189 919294189 390144250 606317072 606317072 520632998 383729640 818350824 818350824 976842949 1033613432 1033613432 527540789 879447436 879447436 605208612 605208612 483414673 746586189 746586189 986696155 986696155 850527071 850527071 630199328 798571728 798571728 907934822 907934822 478213147 705498133 970278605 970278605 688675814 350337882 331876562 534680304 534680304 460770852 372395802 360308078 336716802 99943138 99943138 156463680 156463680 273694882 273694882 164866784 164866784 155613624 309396768 452750922 466226852 466226852 323507198 938830036 938830036 732303283 732303283 1046097539 1046097539 963051029 710051868 939699792 939699792 685711460 402797696 693962400 704325349 829429669 829429669 888547395 888547395 635929027 625672560 625672560 617274545 157831332 460235424 460235424 437594646 990315793 990315793 151540832 780272681 780272681 520242222 520242222 469799030 370825334 303469112 303469112 675851909 713418897 713418897 307316274 866834369 866834369 558469280 558469280 867759520 867759520 982725207 982725207 467108616 535296510 535296510 254083876 598350201 856192060 856192060 446693718 880973102 1024379952 1024379952 604260672 614515017 614515017 251662712 243438348 791863577 791863577 709250404 976579330 976579330 936643323 970473666 990831682 990831682 423677907 803556507 885385419 885385419 976681731 976681731 1018252819 1018252819 932845184 932845184 937611771 937611771 419128893 0 0 67108864 573596048 573596048 633815937 633815937 119020081 601419682 601419682 450544138 894644460 894644460 326358243 724755780 808717059 808717059 36837395 848349376 848349376 354756970 354756970 293341210 327745642 376177506 376177506 371011098 121781922 120845112 120845112 35792941 791099709 791099709 736179461 736179461 547837360 981426051 981426051 737921380 737921380 444994135 415129482 731251192 872546123 872546123 866149909 866723187 866723187 1001991739 1001991739 907314118 646570921 646570921 550259137 550259137 537462088 84214792 78976480 555483192 566850448 566850448 571743111 571743111 569069687 850970451 850970451 591132753 777072961 893033371 893033371 989212252 989212252 794036925 660341764 488811230 488811230 345467128 32973552 73183530 354635400 354635400 78252288 394926272 394926272 293866530 286001250 338080576 345369162 345369162 160465532 160465532 251746872 641863927 675031960 675031960 974659664 974659664 1021722748 1021722748 935803131 935803131 1068500621 1068500621 1019819164 616773402 336319236 336319236 690626859 690626859 705284472 705284472 325100196 371350438 973812752 973812752 828870851 828870851 647428503 1066561156 1066561156 767816319 987335646 987335646 988748426 1034631410 1034631410 190914976 137089496 142239444 507052040 507052040 543424852 554486817 554486817 856103168 856103168 778477833 839493688 839493688 390495393 420152420 420152420 192049712 463142608 463142608 313649438 313649438 1043494108 1043494108 962708355 724572436 724572436 675372717 675372717 800990405 830736483 830736483 329382119 703066532 703066532 1038555759 1038555759 786739612 730051042 589734049 538841480 365878506 874777849 874777849 674932852 674932852 1054224544 1066740351 1066740351 554848846 554848846 566496974 566496974 545785034 495981281 660493496 672586245 672586245 689827365 707622917 707622917 587743264 587743264 237642344 149501537 181480504 242621340 736957040 736957040 756232940 756232940 199477508 203735432 203735432 91137464 91137464 3260968 525312 540672 540672 4194880 25691136 37749584 37749584 45088912 45088912 117457016 117457016 203161612 203161612 201330188 194992500 194992500 169421928 252306492 261330496 704261704 704261704 691276581 249905348 249905348 121635000 117965880 117965880 105412256 123467448 168433280 168433280 173825680 173825680 146329088 144900932 138716160 139854980 139854980 42535456 59430000 303215648 320464434 320464434 316388002 277946946 50511984 114817752 114817752 106978056 81838536 113411456 113411456 642147456 642147456 570569344 570569344 74552081 67230224 67230224 70586392 70586392 338425098 338425098 280605786 308754834 308754834 98699578 194169914 473906958 1050784383 1050784383 474851338 695082376 695082376 973213706 973213706 906233883 1062582341 1062582341 886601790 886601790 411907982 575374530 847507539 895436705 895436705 161546776 725692964 725692964 962594964 962594964 963985420 963985420 437305878 630637009 630637009 307397136 847481827 847481827 621048019 621048019 411403028 73928074 293864264 363866650 363866650 72460338 922361830 931652639 956492862 956492862 375203578 332648626 526000846 526000846 190527156 491807906 491807906 256684764 256684764 475158652 475158652 354206936 493416588 493416588 328769546 547745089 549233049 549233049 861760564 861760564 321129679 717297680 717297680 94862124 84066408 356860040 399590368 399590368 345045960 345045960 77855514 366393832 366393832 347601738 270416000 89273616 186549828 186549828 747896993 747896993 546756441 106206692 264167292 664366360 772412445 772412445 614308644 614308644 940670643 940670643 297878144 685449819 685449819 341651082 350019848 350019848 277721320 111885394 342557930 342557930 341398058 359608568 359608568 28126560 112331603 875957059 875957059 571774507 830608451 830608451 741089440 741089440 555312993 830485800 835049506 835049506 639219888 639219888 67911818 50930491 875572747 875572747 873736378 873736378 26740320 14157504 277587488 290116770 290116770 110050392 385898688 385898688 36084048 300086658 521665628 521665628 389343064 432524422 432524422 273045696 213793660 241378896 317170608 317170608 176488590 144752964 8487172 228982896 228982896 139461252 139461252 416137732 416137732 679542821 679542821 223412904 964764271 42041860 177332820 177332820 194110068 687940208 687940208 59638897 63643184 202622896 294860693 294860693 603887120 733965620 792013053 797153489 797153489 538316931 272941232 827472907 827472907 105785752 57775424 548043528 633233051 937465960 937465960 827873072 823658019 651719832 396604496 121123832 78780240 43188560 185337104 185337104 185075816 186242256 186242256 123676344 970202404 970202404 285622274 718725624 718725624 575748678 401679354 242426334 158986364 367856232 367856232 873407291 873407291 321133529 268436288 268436288 51060048 27601248 45016832 45016832 63583664 63583664 54060816 58946928 58946928 111286434 335825290 394713210 394713210 398086811 602448369 602448369 882978657 882978657 374543993 374543993 350747082 350747082 335593482 814398240 1055383564 1055383564 702577556 678151936 678151936 684397568 684397568 537044996 268611844 268611844 226703406 398787628 398787628 784485566 784485566 637688010 637688010 76041217 314757330 314757330 245712924 358754600 476420672 476420672 719490868 719490868 386041316 744637395 744637395 436269158 411734122 538870789 538870789 187614232 876400977 876400977 482135886 232557094 207541728 406836746 406836746 296347850 296347850 961070697 961070697 876227689 876227689 664130925 732206368 732206368 1058449336 1058449336 854404563 435023334 509472888 919641932 979185303 979185303 347149792 968569740 968569740 538968384 843112798 843112798 604092361 657459001 929358344 929358344 391433696 346502840 346502840 399004322 399004322 324381938 324381938 313274186 313274186 61034064 83475520 132957328 132957328 639502904 639502904 70519049 51644976 51644976 125829128 125829128 67108984 481071336 481071336 110116024 605746913 1058639847 1058639847 1039833822 932796280 265850634 1042060603 1042060603 656673081 656673081 775072060 943333146 943333146 676831504 576507537 806224274 806224274 25859188 404601876 417535952 550638273 550638273 767192657 767192657 549818778 498976882 864862256 864862256 990200947 990200947 1003808108 1003808108 1040178671 1040178671 612465358 612465358 498779022 498779022 457808378 457808378 846710315 846710315 999822911 999822911 928700320 739128824 77455190 77455190 568165850 1035393903 1035393903 716805424 275106312 6689408 505554520 505554520 159920026 113654432 500040312 500040312 289743046 185140304 327818282 327818282 103276696 357591264 357591264 348994898 50655264 50655264 580143456 580143456 268554576 551698432 551698432 606188560 606188560 425796006 809501952 809501952 1024476164 1024476164 788554289 788554289 546184257 552107973 706333248 706333248 788877248 788877248 63594893 1362432 960864096 960864096 956037063 27188832 607464576 607464576 70813449 537668616 638867233 638867233 637034152 637034152 672137220 672137220 537920001 210278469 282104896 551197830 714386117 1015022595 1015022595 1018241871 1018241871 422686821 118479968 562995257 864832576 864832576 839785491 839785491 619331040 619331040 126541120 117621856 133721674 323816090 323816090 525113968 525113968 1015154377 1015154377 325784010 325784010 448548830 448548830 275386516 90527808 881116354 881116354 63715281 537902976 876167571 876167571 393537705 645964170 839393370 839393370 864649992 864649992 823255754 823255754 377046587 875867193 875867193 623666736 709005344 957544508 957544508 525950520 1025386071 1025386071 670641447 766586720 766586720 363270977 529020962 890045532 890045532 319427593 197002340 39728080 34738704 65303200 158188004 158188004 162084013 162084013 418693838 772736262 772736262 718383902 104906904 766106936 766106936 161125680 624345436 756980513 756980513 2377728 75530312 75530312 75795016 554763776 625951433 625951433 653663193 692010856 692010856 497424750 121112376 470074578 511482004 511482004 904168099 940185470 940185470 919810528 919810528 510207390 447228716 447228716 434383394 369434812 264857249 672688353 672688353 589322463 983630219 983630219 817905869 910246548 910246548 624232779 983832728 983832728 537460850 610030625 610030625 848351315 869429809 877756427 877756427 805865749 1047004575 1047004575 861980995 849612151 761921913 601939054 413413030 803474880 803474880 718349013 1020530861 1020530861 997466150 915025793 915025793 713215120 713215120 415289880 425755088 447906106 1000374289 1000374289 919294189 390144250 971578592 971578592 520632998 383729640 818350824 818350824 614655056 614655056 92533881 92913784 92913784 358638880 358638880 898736710 898736710 268624160 268624160 338135364 447934046 850527071 850527071 630199328 770858815 770858815 295574268 285559926 202262598 689239188 970278605 970278605 688675814 331876562 331876562 30148816 69995008 74713992 74713992 81791616 352476256 352476256 91134634 219558924 219558924 441057332 441057332 378554370 378554370 377886810 425857456 457314486 457314486 323507198 323507198 156204952 176633940 506250408 615368692 615368692 963051029 963051029 710051868 710051868 151234736 167772180 167772180 675819520 676017285 944973317 944973317 654583849 840900118 840900118 303039552 849382393 849382393 650584440 460235424 460235424 783463463 783463463 696322244 696322244 926286946 926286946 498722612 445404404 907203099 907203099 123245610 770854635 770854635 713418897 713418897 307316274 866834369 866834369 558469280 558469280 867759520 867759520 982725207 982725207 523721395 535296510 535296510 296872002 1040475277 1040475277 856192060 446693718 880973102 1024379952 1024379952 654869556 654869556 614515017 235702331 142658623 100665453 709250404 906199575 974678026 974678026 574677684 723327564 723327564 735405248 915575013 943718535 943718535 809898631 894170283 894170283 368028813 168497624 932845184 932845184 230161260 298580014 801733956 801733956 993532232 993532232 973649876 973649876 627003232 627003232 244298068 195755109 906976657 906976657 642363661 508626444 656746848 788403159 808717059 808717059 254444557 848349376 848349376 354756970 354756970 293341210 327745642 368783898 371011098 371011098 349397936 525512926 525512926 274933600 791099709 791099709 736179461 736179461 547837360 981426051 981426051 737921380 737921380 444994135 202284469 202284469 594526925 1008416487 1008416487 866723187 1027960075 1027960075 1001991739 907314118 1050427695 1050427695 615329097 615329097 598289536 105186488 80481480 98799880 98799880 129578059 571743111 571743111 569069687 850970451 850970451 591132753 777072961 893033371 893033371 989212252 989212252 794036925 660341764 488811230 907833191 907833191 500577417 868393993 868393993 646021144 337165329 831946457 831946457 583072795 562137089 840135239 840135239 268492868 268853266 268853266 365556258 365556258 67818504 84447264 84447264 40904704 41233296 54671392 54671392 410320916 410320916 237887552 473957004 473957004 274150280 274150280 204193154 674857216 940590597 940590597 325100196 371350438 679177366 842455827 842455827 828870851 647428503 431409474 644974344 767816319 987335646 987335646 467281010 464350030 342967304 190914976 137089496 142239444 240785030 243282952 543424852 554486817 554486817 579323970 778477833 778477833 839493688 839493688 390495393 456155392 456155392 192049712 463142608 775371549 775371549 760664081 863750578 952690403 952690403 706533235 455791926 675372717 675372717 800990405 830736483 830736483 329382119 703066532 703066532 224565577 704708852 704708852 562110561 538841480 538841480 365878506 365878506 47524880 865901286 865901286 1054224544 1066740351 1066740351 277898280 467761682 566496974 566496974 613158944 642827229 642827229 629785665 252822688 252822688 625198504 791783312 791783312 587743264 543810945 543810945 543196816 543196816 736957040 736957040 756232940 756232940 199477508 222913560 222913560 221193632 221193632 474310798 474310798 474294414 335906958 348717126 533466638 533466638 285550898 510397058 510397058 369984004 215273176 215273176 203161612 201330188 76815056 104992920 104992920 84867848 87618976 704261704 704261704 728031520 728031520 577046813 64258821 110506152 110506152 199994336 242286292 267672276 267672276 197304448 197304448 146329088 173303632 173303632 444928848 449861316 449861316 194163856 303215648 320464434 320464434 316388002 277946946 277135520 277135520 312555600 312555600 576850113 576850113 13898128 578814529 578814529 571215361 571215361 110245457 67230224 544268673 544268673 582005131 877501008 877501008 280605786 308754834 308754834 527871756 527871756 473906958 1050784383 1050784383 474851338 695082376 695082376 973213706 973213706 906233883 899419292 1003487991 1003487991 1007302287 1007302287 575374530 847507539 847507539 190539143 161546776 725692964 725692964 640889625 336089992 610507818 610507818 258247300 377800770 377800770 307397136 340185534 340185534 544629627 544629627 280850994 101713392 293864264 363866650 363866650 72460338 922361830 931652639 956492862 956492862 243269724 243269724 526000846 526000846 181353100 290936554 290936554 79152040 68806152 77955968 77955968 133695480 133695480 130596560 38951121 547745089 549233049 567617952 567617952 733587648 733587648 202472704 251658804 1056285295 1056285295 1065355984 1065355984 914705508 995185189 995185189 743963277 614060384 427455524 347601738 270416000 187169060 186549828 190077253 747896993 747896993 595629284 630325792 630325792 612503625 685730777 685730777 614308644 614308644 940670643 940670643 297878144 406953600 406953600 4842624 85992458 88970370 88970370 111885394 342557930 342557930 341398058 19469000 84881064 90858952 112331603 875957059 875957059 571774507 830608451 830608451 656160930 925157691 925157691 830485800 835049506 835049506 612360715 874982667 874982667 808796419 875939339 875939339 873542144 873542144 338707978 269036386 280483880 280483880 83648514 110050392 110050392 99265008 351474728 351474728 313435906 313435906 299683554 88005194 38095552 270142210 270142210 422948900 422948900 154544748 25003016 40118968 299953442 299953442 251052304 203949324 203949324 416137732 416137732 679542821 679542821 294249698 964764271 295648870 295648870 177332820 194110068 687940208 687940208 680345616 853261316 853261316 580661971 294860693 164574951 733965620 792013053 797153489 797153489 537058928 272941232 88266770 25186392 508160 2570496 19824640 51342816 51342816 34156784 46321872 72115456 112606864 121123832 121123832 63649768 37671040 157474304 172068052 185075816 186242256 186242256 174981541 970202404 970202404 1016334660 1016334660 718725624 575748678 742454382 742454382 637872153 571344553 559100577 873407291 873407291 818951314 818951314 268436288 51060048 27601248 45016832 45016832 63583664 63583664 54060816 54060816 44304720 59051136 59051136 22312096 14340736 398086811 602448369 602448369 882978657 882978657 890844888 890844888 70836203 85858586 335593482 335593482 1055383564 1055383564 989069631 872589888 424256451 684397568 684397568 372399562 145937220 950215430 950215430 532644542 957818956 957818956 796917881 369905777 298455100 298455100 314757330 314757330 188500352 358754600 358754600 417619842 556517331 556517331 386041316 744637395 744637395 421560452 302010636 538870789 538870789 275516802 876400977 876400977 522096616 522096616 283022732 301278062 301278062 203449956 491056686 491056686 702608318 919213275 1051392213 1051392213 842297925 791172523 740433762 740433762 479139422 473483022 773883411 919641932 979185303 979185303 648092641 968569740 968569740 538968384 538968384 337651528 337658634 337658634 362403164 362403164 340264074 340264074 303793354 918194289 918194289 585777395 550905888 650593952 650593952 552378313 545002368 132957328 647568144 647568144 639502904 403708418 271717122 311949490 311949490 329856612 830800994 831169200 831169200 453882208 605746913 1058639847 1058639847 1039833822 555127495 265850634 1042060603 1042060603 656673081 656673081 775072060 775072060 708000520 676831504 846410643 846410643 806224274 5357696 273811072 417535952 441282070 441282070 282777282 41684880 44060048 746565792 864862256 864862256 990200947 990200947 659573081 703718373 703718373 485540814 485540814 316917802 119865736 119865736 8913920 8913920 53118552 692211890 999822911 999822911 900224871 879301012 273492087 273492087 692241888 1035393903 1035393903 1026381754 275106312 6689408 101745296 105384704 105384704 868881175 868881175 436502920 671181031 671181031 439396552 103276696 103276696 642791825 642791825 72907904 540190593 540190593 580143456 931168331 931168331 320979146 950063507 950063507 606188560 437983474 474750439 489569327 871273382 898646288 898646288 788554289 546184257 552107973 706333248 706333248 741539280 892009026 892009026 960521752 960864096 960864096 956037063 27188832 677026051 978664214 978664214 946262535 845263892 590427264 1018827609 1018827609 970592799 370202469 676994588 714342931 714342931 713741826 714386117 714386117 411645774 411645774 337131060 337131060 363745566 363745566 412500386 412500386 321749472 321749472 408038560 408038560 126541120 117621856 105121816 105121816 100927640 525113968 525113968 408471174 238450766 109777292 156275328 156275328 155238564 23253408 23253408 85266136 85266136 130884816 130884816 386204032 386204032 349446680 570961394 839393370 926897906 926897906 619982681 133831121 390655528 390655528 118827576 623666736 623666736 788959905 957544508 957544508 525950520 1025386071 1025386071 406729514 766586720 766586720 363270977 572852528 572852528 572850493 723663188 723663188 39728080 34738704 65303200 158188004 158188004 162084013 162084013 418693838 772736262 772736262 718383902 104906904 950543906 950543906 857740125 621954266 621954266 558089401 241661361 758604160 769919469 789513201 789513201 555431457 339416218 376912794 376912794 497424750 497424750 121112376 470074578 511482004 511482004 492850382 216138112 219882696 440429760 440429760 398797050 455082304 455082304 426963042 231773810 490851192 672688353 672688353 589322463 983630219 983630219 817905869 910246548 910246548 624232779 874884360 874884360 537460850 610030625 610030625 848351315 869429809 877756427 879092481 879092481 1047004575 1047004575 861980995 849612151 763224504 1047129833 1047129833 803474880 803474880 560465313 938422097 938422097 621148218 621148218 369151048 713215120 713215120 415289880 415289880 447906106 1000374289 1000374289 16925712 524320 971578592 971578592 827431720 827431720 636923737 639964851 656565731 656565731 839418938 839418938 564180090 358638880 358638880 898736710 898736710 162587227 178690832 338135364 372866382 814677791 814677791 397415394 770858815 770858815 252092720 781017926 781017926 199899399 144739788 435437934 435437934 248037648 306459384 326568376 361052912 466759702 466759702 398235522 352476256 367425506 367425506 219558924 1068558009 1068558009 441057332 793826417 793826417 377886810 425857456 457314486 457314486 329516623 1002342935 1002342935 971695752 506250408 615368692 934777282 934777282 749494557 280513757 72088548 482621314 974000714 974000714 807487441 676017285 944973317 944973317 194586228 840900118 840900118 303039552 849382393 849382393 650584440 337441418 416665458 783463463 783463463 696322244 696322244 926286946 926286946 732041589 323409276 907203099 907203099 8594580 770854635 770854635 177124884 36929424 850924592 850924592 65012771 156998340 156998340 39196868 169126448 169126448 523721395 523721395 485175505 296872002 296872002 1040475277 1040475277 160957220 546887168 815175779 815175779 299823169 654869556 941850679 941850679 772373629 1041142030 1041142030 797081615 906199575 974678026 974678026 863677480 531596503 530817242 1046402718 1070838400 1070838400 943718535 642149426 894170283 894170283 642261040 779297961 779297961 1033996030 1033996030 298580014 801733956 801733956 993532232 993532232 973649876 973649876 627003232 627003232 244298068 341076064 906976657 906976657 690858661 690858661 656746848 788403159 803609085 803609085 254444557 272681794 842583946 842583946 992759751 992759751 806357376 807341377 807341377 803344893 803344893 693793989 693793989 274933600 235910297 698429664 698429664 677515653 143282592 143282592 193014880 319388498 319388498 275459574 652058556 652058556 687796285 1008416487 1008416487 134115752 1027960075 1027960075 871951899 792765760 1050427695 1050427695 615329097 615329097 641728665 641728665 182750669 135300292 601949184 601949184 588625281 587902000 318665202 146006528 316755318 316755318 276254720 488090560 488090560 490946870 490946870 490173438 490173438 384975108 907833191 907833191 632508488 868393993 868393993 824865648 824865648 831946457 831946457 583072795 562137089 840135239 840135239 491443374 465589336 268853266 365556258 1032584023 1065998725 1065998725 338148414 822259973 822259973 897952442 1052979423 1052979423 393697473 535544508 535544508 617264162 617264162 671121678 671121678 811617538 940590597 940590597 425979992 411788914 679177366 842455827 842455827 444113624 444113624 295175778 328212738 328212738 452893356 452893356 350757424 338114592 338114592 226724488 226724488 312504960 312504960 243282952 243282952 222041900 331401322 331401322 187876096 226697324 253035132 253035132 613296136 613296136 561819410 601624305 601624305 775371549 775371549 760664081 560148897 448010839 706533235 706533235 455791926 455791926 434373165 434373165 285565705 1022427785 1022427785 669020570 428202265 428202265 990027799 990027799 562110561 861969025 861969025 733293314 464785263 464785263 1037302408 1037302408 877120084 877120084 644690612 644690612 550555969 681728293 681728293 680450405 642827229 642827229 629785665 252822688 252822688 625198504 791783312 791783312 537571712 543810945 543810945 543196816 543196816 608387473 644400537 644400537 191018396 192653448 222913560 222913560 221193632 221193632 474310798 474310798 474294414 335906958 348717126 533466638 533466638 285550898 510397058 510397058 369984004 215273176 215273176 117735992 117735992 327459574 327459574 144380540 255948724 255948724 970603454 970603454 788652093 728031520 577046813 212968328 212968328 110506152 199994336 263916084 267672276 267672276 197304448 197304448 42172436 173303632 173303632 444928848 449861316 449861316 194163856 295282400 295282400 276897858 34479120 34479120 277135520 277135520 312555600 312555600 576850113 576850113 13898128 578814529 578814529 580359880 580359880 110245457 3266112 544268673 544268673 582005131 877501008 877501008 321127264 379325458 379325458 527871756 527871756 193317722 73425096 73425096 397376 545304576 545333313 813768707 813768707 536944641 899419292 1003487991 1003487991 1007302287 1007302287 871053553 871053553 835259569 842082531 944309523 944309523 306214791 593666739 593666739 670069127 966198114 966198114 570739543 566255688 513919314 513919314 246336560 508619776 508619776 474326162 344278212 469289780 498368890 498368890 286505392 105925168 100808720 257499212 257499212 131121912 146615084 171388584 171388584 181353100 256669436 256669436 256427196 256427196 143971976 77955968 80266816 80266816 16389056 16389056 545633280 546049089 567617952 702917808 772926421 772926421 139750860 251658804 1056285295 1056285295 1065355984 1065355984 914705508 995185189 995185189 743963277 614060384 427455524 544739328 544739328 574157632 706885025 706885025 560777925 595629284 595629284 630325792 630325792 612503625 145798452 321355810 321355810 43351076 912597275 912597275 525785790 896850833 896850833 408471174 484043784 484043784 6838536 77863176 77863176 98796552 98796552 228047265 228047265 146587428 161533797 161533797 160617345 45151664 639770962 656160930 656160930 925157691 925157691 713310397 713310397 151794692 612360715 874982667 874982667 808796419 875939339 875939339 873542144 873542144 338707978 270574096 327476122 327476122 282842162 290116770 392425792 392425792 351474728 351474728 313435906 313435906 299683554 119875960 268516352 270142210 270142210 422948900 422948900 285335586 25003016 40118968 299953442 299953442 251052304 203949324 203949324 279485190 292258864 292258864 294249698 294249698 453076054 295648870 295648870 142978052 143180868 429222434 680345616 680553556 853261316 853261316 580661971 147415256 174199188 207642720 207642720 746407713 746407713 839386131 925253648 925253648 839665473 112133354 70152008 593810936 625418283 812624160 815656208 872483187 872483187 544088852 512504556 159722564 110666124 110666124 159092512 172068052 172068052 161480292 188954708 188954708 416341973 971262286 1016334660 1016334660 900914730 399383802 742454382 742454382 637872153 571344553 559100577 330856477 580597329 818951314 818951314 33816608 28760928 75921784 75921784 50992176 96129328 96129328 93459048 120008808 120008808 75828242 333396170 333396170 303472714 335579114 335579114 394011610 394011610 90902632 890844888 890844888 495295556 143550574 85858586 739984994 739984994 989069631 989069631 872589888 991580498 991580498 372399562 548230434 548230434 950215430 950215430 956388088 957818956 957818956 796917881 369905777 298455100 298455100 311558482 745210252 745210252 646471691 605722376 605722376 417619842 77464144 77464144 120402864 120402864 269320200 269320200 493073160 493073160 275516802 498363772 498363772 522096616 522096616 283022732 679499121 679499121 545400976 545400976 783551325 783551325 919213275 1051392213 1051392213 842297925 791172523 740433762 740433762 645685502 645685502 893437410 893437410 864439768 648092641 835781176 1048577539 1048577539 912876995 912876995 816440643 708847557 709436565 709436565 620348252 340264074 340264074 270046728 918194289 918194289 629806681 629806681 650593952 688402740 688402740 545002368 76696000 647568144 647568144 403708418 403708418 792161028 792161028 311949490 329856612 830800994 831169200 831169200 453882208 404180608 92545768 1002330114 1002330114 268869495 237952284 876385936 876385936 323743531 124816304 290476976 371595546 541130771 573179408 846410643 846410643 809785987 538314245 273811072 273811072 411962437 411962437 282777282 144156447 457687429 746565792 746565792 727854856 667153081 459717765 542555890 907547835 907547835 789655920 898281684 898281684 214971470 773215292 773215292 688531305 952177956 1046939936 1046939936 1042158498 1042158498 879301012 273492087 273492087 692241888 730122357 1026381754 1026381754 33150208 25307680 411174552 411174552 425805064 868881175 868881175 436502920 671181031 671181031 439396552 287697186 281547010 642791825 642791825 123566896 540190593 540190593 391377594 931168331 931168331 320979146 950063507 950063507 497582246 437983474 474750439 489569327 871273382 898646288 898646288 704778345 704778345 556270497 51644192 178592554 741539280 892009026 892009026 960521752 960521752 931440216 828967973 828967973 677026051 978664214 978664214 946262535 845263892 778592274 1018827609 1018827609 970592799 385012698 676994588 714342931 714342931 713741826 271877380 595608105 908247412 908247412 337131060 565278283 565278283 421789816 557344226 711508800 711508800 977545366 977545366 448849216 15747072 48808064 105121816 330570674 343284618 353370284 407896710 990016493 990016493 437335630 437335630 168298062 843592706 843592706 701710533 880905235 880905235 576226448 576226448 386204032 386204032 343991504 570961394 570961394 926897906 926897906 619982681 133831121 390655528 390655528 120838968 120838968 587354384 788959905 788959905 75500200 75500200 339842862 406729514 774113565 774113565 530979198 757545261 757545261 572852528 596064317 723663188 723663188 30546656 30546656 160700288 162124644 162124644 14970884 7035136 184320 184320 769985831 769985831 979185011 979185011 950543906 857740125 856372275 856372275 705030343 705030343 952373856 952373856 789513201 789513201 621736481 831260707 832907619 903095176 903095176 10799424 7882816 358782112 358782112 12900490 2490656 2490656 16785600 16785600 29434080 213983968 455082304 455082304 391193274 266463892 490851192 490851192 546625716 816910496 816910496 502546594 537994188 771819573 771819573 677414272 874884360 874884360 740568584 99666216 6572520 274351104 840155408 840155408 879092481 879092481 309406475 305259282 52470274 285816228 763224504 1047129833 1047129833 688128303 401203324 401203324 424431136 424431136 697637410 764486253 764486253 415225996 415225996 733928164 733928164 697076085 71840402 827339558 827339558 381296079 358295210 458897574 827431720 827431720 726167557 726167557 656565731 990639159 990639159 839418938 810755740 810755740 1017119055 1017119055 352577576 388043048 388043048 178690832 211895824 472290652 472290652 215272140 215272140 914617570 914617570 781017926 876938360 876938360 730993269 730993269 725257902 502582254 483165984 326568376 361052912 466759702 466759702 398235522 273941762 367425506 367425506 98640360 1068558009 1068558009 98227944 793826417 793826417 370444372 370444372 851150424 948176419 948176419 1002342935 1002342935 971695752 638176557 783578500 934777282 934777282 749494557 280513757 72088548 482621314 974000714 974000714 807487441 566982145 155931744 625399850 831570531 831570531 248529739 1034816037 1034816037 125830437 102770698 304425234 1046183440 1046183440 778166685 482339819 379683942 379683942 732041589 732041589 337640516 479199822 479199822 153881892 918684100 918684100 194587744 290530346 850924592 850924592 550552293 550552293 810630758 810630758 840698775 840698775 681315909 677113988 357499382 263271024 182200064 120402160 69341192 69341448 546887168 815175779 815175779 299823169 587717672 941850679 941850679 772373629 1041142030 1041142030 998297658 536927890 941991586 995728684 995728684 934162617 899364459 1046402718 1070838400 1070838400 413317909 396330087 814928451 814928451 642261040 779297961 779297961 1033996030 1033996030 518297334 518297334 248388828 248388828 419659264 419659264 9387072 39520288 46451328 46451328 341076064 363889866 363889866 690858661 690858661 631376212 878061342 978657067 978657067 631527833 436375248 842583946 982668757 992759751 992759751 812830586 812830586 807341377 803344893 803344893 693793989 693793989 235910297 235910297 541319588 541319588 730948644 730948644 158015761 193014880 193014880 44985508 545781825 652058556 652058556 687796285 687796285 144778660 162344292 733552744 733552744 261636392 608216540 608216540 718016197 718016197 609747329 641728665 641728665 182750669 135300292 601949184 601949184 588625281 587902000 318665202 146174212 316755318 316755318 276254720 243927298 350886238 363795618 478530114 490173438 490173438 421761938 421761938 724921288 724921288 632508488 556917537 824865648 824865648 381530634 381530634 348700682 375133770 375133770 491443374 491443374 465589336 142821900 84213796 1032584023 1065998725 1065998725 554357793 822259973 822259973 897952442 1052979423 1052979423 419172294 535544508 535544508 617264162 811198088 811198088 671121678 811617538 811617538 556634374 794176398 794176398 596655983 880490379 880490379 444113624 444113624 295175778 928113544 928113544 658628793 548450416 320154670 338114592 338114592 226724488 226724488 450441408 450441408 180487830 840958227 840958227 458236433 999631717 999631717 612707445 622399053 757671692 757671692 613296136 572989545 601624305 601624305 455543407 518069366 518069366 406221236 551700208 871878963 871878963 457603345 814727438 814727438 434373165 865157540 1022427785 1022427785 669020570 881003122 881003122 990027799 990027799 258845886 861969025 861969025 733293314 614803785 614803785 1037302408 1037302408 877120084 877120084 644690612 644690612 550555969 681728293 681728293 680450405 355751791 33155040 576821168 576821168 266902009 185074740 185074740 651343573 651343573 118000288 603785280 603785280 657333561 657333561 85408296 85408296 92340240 192653448 192653448 153253152 108024704 164302976 164302976 150108644 150108644 70682888 104342336 104342336 44639568 177473344 195430772 289707174 289707174 553858101 1013307411 1013307411 620236476 880330691 999691750 999691750 740672048 705003293 970603454 970603454 788652093 576663229 570683409 212968328 212968328 203547976 203547976 263916084 263916084 186164744 192220100 192220100 145567044 145567044 2951168 143760256 143760256 16251840 42090656 51565680 51565680 275447136 275447136 274145312 62543552 105647256 105647256 279977968 347728096 347728096 88901360 111157442 369164576 580359880 580359880 546319888 114891993 104324104 104324104 101526552 101526552 281088722 321127264 379325458 379325458 294686608 294686608 311021018 914825661 914825661 225757980 225757980 110310160 154809468 154809468 886177994 886177994 741581531 850399107 863381099 863381099 871053553 871053553 835259569 842082531 944309523 944309523 351319982 593666739 593666739 670069127 966198114 966198114 570739543 841311029 841311029 513919314 662266044 662266044 508619776 734383081 734383081 646847577 646847577 640106112 361833282 105925168 316876962 316876962 257499212 131121912 146615084 371782282 371782282 72548452 297805618 297805618 256427196 256427196 143971976 71408000 80266816 80266816 16389056 543149697 545633280 546049089 546049089 706748608 772926421 772926421 81281520 113037144 347899998 347899998 480053552 480053552 373869464 373869464 369218738 369218738 83548104 351592776 816884800 816884800 574157632 706885025 706885025 192085637 183451092 94572152 586369005 586369005 575699069 783653641 783653641 679876677 679876677 912597275 912597275 525785790 896850833 896850833 408471174 484043784 484043784 17588448 77863176 77863176 98796552 98796552 228047265 228047265 146587428 169251248 192811924 192811924 600191072 600191072 561316036 146811809 503629854 541072508 713310397 713310397 151794692 151794692 134742020 134742020 201851916 201851916 0 0 0 68233472 270574096 327476122 327476122 282842162 290116770 392425792 392425792 131747320 131747320 18213232 18213232 119875960 119875960 268516352 293685248 293988450 293988450 285335586 285335586 174368384 767306721 767306721 177037738 759227037 759227037 182100720 182100720 205813536 1046111919 1046111919 1040340541 507510949 0 0 8894464 8894464 8820800 142626880 680553556 680553556 947385017 947385017 147415256 495661464 514462782 514462782 206669874 638242826 839386131 925253648 925253648 839665473 668101498 668101498 862314865 862314865 812624160 815656208 872483187 872483187 877922955 877922955 619270064 619270064 723607809 723607809 556020512 556020512 71616648 188954708 188954708 13160104 971262286 971262286 900914730 900914730 947720079 947720079 174244663 697055580 697055580 1070362305 1070362305 570248830 340544872 359754976 359754976 131877808 131877808 75921784 50992176 96129328 96129328 93459048 120008808 120008808 75828242 333396170 333396170 303472714 385525691 574793555 636073739 636073739 714647080 1009194254 1009194254 495295556 272668491 916640109 916640109 739984994 683742323 537448555 524403987 991580498 991580498 708332304 671927301 548230434 546708033 870259392 956388088 956388088 420520632 46937218 276905152 276905152 244948610 311558482 745210252 745210252 646471691 605722376 605722376 135591716 497754008 497754008 270923658 334187986 334187986 426776800 493073160 493073160 222973016 222973016 213092558 355688592 355688592 534298492 679499121 679499121 545400976 545400976 783551325 783551325 389150845 369233946 445812748 727082607 727082607 637792281 440211504 1058044816 1058044816 893437410 893437410 864439768 777385246 835781176 1048577539 1048577539 912876995 912876995 816440643 708847557 709436565 709436565 620348252 92881258 348181224 348181224 293602736 896554136 896554136 845337938 845337938 688402740 688402740 424150182 424162530 680903056 930665247 930665247 610801179 792161028 792161028 745897004 838538885 838538885 286142499 210940616 290013267 918574851 918574851 808493801 51945065 73332808 237952284 237952284 340052378 371481370 371481370 290476976 371595546 371595546 570584832 840536727 840536727 809785987 538314245 141148608 145901126 411962437 411962437 149240963 273289680 457687429 671968281 727854856 727854856 667153081 459717765 542555890 907547835 907547835 789655920 898281684 898281684 214971470 773215292 773215292 734437459 952177956 1046939936 1046939936 1042158498 1042158498 742132376 742132376 111462744 187605276 187605276 149274032 243361266 243361266 79962248 423864410 520448536 520448536 425805064 241510066 21102656 60880120 109691184 287697186 287697186 281547010 281547010 123566896 123566896 368192176 391377594 391377594 316380698 96794872 116345304 130813176 497582246 497582246 813795223 813795223 551984423 784506504 784506504 1015055427 1015055427 704778345 556270497 51644192 178592554 482683086 676720269 676720269 467788354 467788354 766434669 828967973 830892780 830892780 658910657 245966172 327317248 778592274 778592274 663765072 663765072 621855273 385012698 385012698 170263962 552896912 552896912 949639952 949639952 908247412 908247412 238211878 565278283 565278283 421789816 557344226 711508800 711508800 977545366 977545366 448849216 71763712 71090320 48808064 330570674 343284618 343284618 293735400 990016493 990016493 437335630 437335630 168298062 843592706 843592706 701710533 880905235 880905235 576226448 576226448 382727354 375212042 550433794 550433794 873354561 873354561 569426913 569426913 807444003 884559545 884559545 559949257 120838968 552513656 552513656 622967189 622967189 329071793 660306213 660306213 774113565 774113565 530979198 757545261 757545261 335810833 596064317 672218308 672218308 191108272 176645460 176645460 162124644 162124644 150935149 150935149 764149093 764149093 953955270 953955270 979185011 979185011 380799056 825634424 856372275 856372275 705030343 705030343 952373856 952373856 751753017 751753017 621736481 831260707 832907619 903095176 903095176 338289930 82396930 358782112 358782112 300014250 342119840 342119840 440757586 440757586 113845464 113845464 222520642 365732696 470135324 470135324 309330395 309330395 215110640 816910496 816910496 297149379 675322536 675322536 677414272 989629457 989629457 740568584 740568584 544080705 268793856 274351104 285460368 286392320 286396962 286396962 478150734 489718207 1069050511 1069050511 962589187 997009699 997009699 341845145 718023141 950209940 950209940 933271562 933271562 764486253 764486253 415225996 415225996 733928164 733928164 697076085 609818555 827339558 827339558 1014051727 1014051727 491434017 975291010 975291010 878338226 726167557 624588714 990639159 990639159 686503365 810755740 969507936 1017119055 1017119055 1006910086 1006910086 772225053 662410901 508173715 571897119 571897119 215272140 948547679 948547679 914617570 1050317587 1050317587 876938360 730993269 730993269 725257902 502582254 483165984 124162856 125230008 125230008 87085360 71831360 426499340 426499340 289942762 685769648 685769648 948437752 1062733503 1062733503 528619132 370444372 370444372 851150424 948176419 948176419 304863501 284564992 224942184 638176557 783578500 783578500 578705604 650140185 790128616 795952648 795952648 643603920 785983197 801882312 801882312 155931744 625399850 831570531 831570531 394838442 1034816037 1034816037 360707386 638649488 641802393 1046183440 1046183440 778166685 482339819 638058524 638058524 874561803 874561803 452848380 1065897467 1065897467 733948778 918684100 918684100 194587744 290530346 990735376 990735376 676381345 676381345 810630758 810630758 840698775 840698775 681315909 677113988 357499382 263271024 154086684 260769832 260769832 204802412 1020221760 1020221760 828761027 137933120 236564992 681803810 878780697 878780697 791743480 998297658 998297658 546908796 815466268 995728684 995728684 934162617 899364459 1046402675 1046402675 799150146 413317909 396330087 814928451 814928451 625035047 625035047 557979533 1027670499 1027670499 518297334 518297334 373366938 733481193 733481193 731071289 731071289 584456913 562219696 62736864 31764336 17115168 412939334 412939334 212710900 212710900 878061342 978657067 978657067 1045564560 1045564560 919864713 982668757 982668757 386947587 812830586 812830586 546211224 172566796 107744664 156422820 156422820 154449792 179571540 541319588 541319588 730948644 730948644 677779845 137470276 137470276 538605732 545781825 789954273 789954273 240855428 240855428 762796400 762796400 741115373 733117981 733117981 544905024 681645476 718016197 718016197 609747329 82389149 42239120 42239120 38291536 106483752 122819256 122819256 213786444 213786444 146174212 209979156 209979156 163316256 163316256 134481040 134481040 72352688 72352688 425917265 425917265 421761938 915251985 915251985 595380785 900853275 900853275 834201203 545076867 545076867 348700682 907060251 907060251 5426832 135700704 142821900 323009124 470061176 470061176 550917732 673444101 1018181989 1018181989 972441407 663540824 864981619 864981619 419172294 419172294 419708992 419708992 811198088 811198088 612083584 744036352 744036352 328231744 794176398 794176398 596655983 880490379 880490379 310185910 310185910 285795576 928113544 928113544 658628793 548450416 88811296 421678794 421678794 83448780 205121292 450441408 450441408 180487830 840958227 840958227 458236433 999631717 999631717 612707445 622399053 757671692 757671692 937756200 937756200 715935698 179170644 166521968 767750123 821045413 821045413 697426533 871878963 871878963 457603345 814727438 814727438 878890929 878890929 865157540 440707699 266377452 881003122 881003122 520577297 655970352 655970352 605812233 453848118 613096704 614803785 614803785 395448704 294826136 197507896 197507896 65485296 512367304 512367304 447251492 530229118 530229118 465158496 283640678 576821168 576821168 422595558 185074740 633975316 651343573 651343573 551975856 603785280 603785280 657333561 657333561 85408296 85408296 235585180 241128476 241128476 68207112 3281824 3281824 1049088 1049088 512 0 315105600 315105600 308880786 177473344 446658958 499227120 499227120 553858101 1013307411 1013307411 620236476 880330691 999691750 999691750 740672048 1029425796 1029425796 1048311711 1048311711 235140540 543701149 543701149 143484176 220430696 220430696 292034006 292034006 261165384 484086594 484086594 442338324 509950298 509950298 483147796 483147796 249742020 213783312 213783312 56840880 275447136 275447136 274145312 62543552 27131328 27131328 279977968 553214131 553214131 88901360 810664867 810664867 545599297 546708033 546708033 114891993 810305603 810305603 617120896 875847296 875847296 344096834 344458754 344458754 294686608 348525824 380356248 914825661 914825661 225757980 450330408 450330408 404433180 404433180 886177994 886177994 741581531 482658159 863381099 863381099 255852348 643831182 643831182 444857254 444857254 417068742 351319982 290612482 285930978 623120431 1008740969 1008740969 377561884 841311029 841311029 791939901 791939901 853885000 853885000 734383081 734383081 646847577 646847577 640106112 361833282 95488864 316876962 316876962 199468900 49911960 136860304 371782282 371782282 69599224 297805618 297805618 122237376 82973640 75081088 69206536 7034624 7034624 10053825 543149697 543149697 671301632 671301632 706748608 706748608 704716821 564669348 564669348 559417313 347899998 480053552 480053552 346555930 721735333 764795525 764795525 612619104 351592776 816884800 816884800 549403936 597088881 597088881 585419217 669903185 981575304 981575304 586369005 749768576 959847937 959847937 679876677 694062580 694062580 456023027 451040734 130421126 135609472 135609472 9884160 9884160 17588448 27780160 27780160 27662688 30022336 30022336 22287680 52478256 169251248 192811924 708497664 708497664 603980563 603980563 276046089 503629854 631521488 660916665 660916665 639738473 74384129 747214468 747214468 609797769 205834380 205834380 205834380 138969476 564693960 856168457 856168457 783550502 918244544 918244544 575052438 107582464 107582464 390872330 416797916 416797916 471405238 471405238 319762466 355760674 480200798 480200798 345973288 352703088 352703088 767306721 767306721 177037738 759227037 759227037 542395370 716638318 872856149 1046111919 1046111919 1040340541 507510949 517041742 543874192 543874192 552093057 552093057 480111503 671221764 671221764 947385017 947385017 266937942 495661464 646656036 646656036 543305848 577278872 577278872 310550834 627576450 627576450 668101498 668101498 862314865 862314865 576987281 76086064 109197600 109197600 877922955 877922955 619270064 619270064 723607809 723607809 556020512 556020512 165465828 165465828 238564117 764985961 764985961 557761293 546757185 210503485 947720079 947720079 174883669 697055580 806047956 1070362305 1070362305 570248830 340544872 359754976 359754976 309353250 345522192 345522192 340316536 86513232 378616378 378616378 370532986 355936560 58555040 53341488 42998304 33923600 804997057 804997057 636073739 636073739 956478813 1009194254 1009194254 688116752 570565712 916640109 1057674303 1057674303 687965398 990466423 990466423 540677889 708332304 708332304 671927301 467664630 605591616 870259392 870259392 138645149 283690434 346727368 346727368 76669696 76669696 71044872 71044872 112919392 118174776 118174776 94128608 135591716 497754008 497754008 270923658 334187986 334187986 426776800 426776800 163341512 217845506 420765824 420765824 76873888 76873888 534298492 534298492 795962416 795962416 300773568 300773568 508804514 508804514 126063112 445812748 727082607 727082607 260723272 418772720 1058044816 1058044816 662867611 499078753 777385246 777385246 900737510 983114061 983114061 315576211 514060638 514060638 407074008 52126386 341434904 341434904 143425604 348181224 348181224 702562534 896554136 896554136 845337938 845337938 197014216 325982484 424150182 424162530 680903056 930665247 930665247 610801179 537270273 438904069 745897004 838538885 838538885 286142499 210940616 290013267 918574851 918574851 808493801 902194649 902194649 124612106 605892025 605892025 376288264 371481370 353862658 353862658 874210953 874210953 840536727 840536727 441989253 139774976 139774976 139925504 139925504 135156096 13193920 816076640 816076640 452606562 452606562 455323024 455323024 419570736 441856054 441856054 412324918 168810356 168810356 162694084 182119104 654239768 654239768 734437459 734437459 731306613 744305592 744305592 610667183 742132376 742132376 111462744 187605276 187605276 149274032 243361266 243361266 79962248 423864410 520448536 520448536 872419985 872419985 395313786 874931297 874931297 347379266 347379266 372817818 607526219 607526219 49208784 546549649 546549649 47018202 293627984 319154226 383096954 383096954 307632786 172075495 813795223 813795223 551984423 546695745 672776256 1015055427 1015055427 419430921 196089700 172556256 172556256 52564272 52564272 52432896 0 413456166 413456166 27139680 830892780 830892780 359747397 36754576 64037600 64037600 97073008 663765072 663765072 621855273 142397316 232820116 267387900 267387900 138675064 949639952 949639952 205705356 205705356 192025524 388027806 388027806 980960786 980960786 861735584 861735584 574958227 54798513 71763712 71763712 71090320 44304720 87032624 120982312 162052180 274862400 274862400 68558146 373886544 375269536 375269536 763625504 763625504 700786917 911251593 911251593 596578409 596578409 382727354 327286968 629155946 629155946 873354561 873354561 569426913 569426913 807444003 884559545 884559545 559949257 283434722 552513656 552513656 622967189 919703278 1009741237 1009741237 997047751 421290713 363073032 673524166 1021321311 1021321311 973218135 973092999 350226765 193596516 191108272 176645460 176645460 155951012 155951012 150935149 150935149 764149093 764149093 953955270 953955270 361849581 548042512 548042512 825634424 832956771 832956771 581656075 76546632 76546632 35725584 68271432 591250456 591250456 557908680 557908680 271164872 338289930 338289930 82396930 280400042 295317024 300014250 342119840 342119840 440757586 1042149485 1042149485 329129586 710064181 710064181 470135324 470135324 322229023 875669775 875669775 692267801 692267801 173200020 675322536 675322536 168070325 989629457 989629457 148957766 544080705 544080705 310587856 437418642 437418642 550538006 893364782 893364782 478150734 1018878472 1069050511 1069050511 962589187 997009699 997009699 956908258 819226501 950209940 950209940 933271562 933271562 462224386 388310271 940268462 940268462 780587160 988158423 988158423 840703044 622332554 622332554 1014051727 1014051727 491434017 975291010 992147472 992147472 958736679 839738659 994234551 994234551 352379023 302247954 1026360576 1026360576 992544482 1006910086 1006910086 772225053 662410901 508173715 571897119 906212108 906212108 948547679 948547679 691460901 1050317587 1050317587 971514983 1048757281 1048757281 1042285146 535203928 535203928 124162856 506351138 506351138 87085360 13664768 426499340 426499340 344642634 685769648 685769648 948437752 1062733503 1062733503 620807705 462559462 462559462 291909808 291909808 695243445 695243445 606737673 769803900 769803900 225634480 554955473 578705604 650140185 790128616 795952648 795952648 643603920 785983197 801882312 801882312 222910080 169216704 173663892 394838442 394838442 48760272 335690378 360707386 638649488 641802393 859748708 983164503 983164503 451410390 638058524 638058524 874561803 874561803 687677517 1065897467 1065897467 733948778 1015553336 1015553336 222245723 193367240 990735376 990735376 676381345 676381345 805774566 805774566 690726164 193260621 260716892 601588249 773367521 773367521 551621389 873078662 873078662 879638796 1020221760 1020221760 828761027 496505703 236564992 681803810 878780697 878780697 791743480 715851261 672407822 676779704 815466268 815466268 639577538 639577538 407292660 407292660 487924290 487924290 256123688 926983216 926983216 877257867 625035047 625035047 557979533 1027670499 1027670499 441856285 441856285 373366938 733481193 733481193 731071289 731071289 584456913 562219696 62736864 366575264 366575264 412939334 412939334 212710900 212710900 326573834 326573834 662529588 1065998511 1065998511 925818171 925818171 244203900 125354560 58623232 546211224 735274528 735274528 542194321 608699529 608699529 356906771 454217330 536891392 945983901 962859711 962859711 771774514 771774514 330623570 735565108 735565108 789954273 789954273 600705728 600705728 762796400 762796400 741115373 733117981 733117981 544905024 681645476 681645476 114823916 553126276 553126276 712248725 712248725 541854849 538296480 566569185 605993952 605993952 213786444 117969964 209979156 209979156 163316256 163316256 116442072 116442072 268001672 268001672 425917265 425917265 342699402 915251985 915251985 873557344 900853275 900853275 834201203 545076867 545076867 336645250 907060251 907060251 385352154 385352154 353832616 520228926 534009495 982305879 982305879 965650803 1018181989 1018181989 972441407 663540824 864981619 864981619 322850115 274727296 419708992 419708992 283740546 271542018 4535426 538488320 538488320 2623232 16916512 16916512 190915712 697225600 697225600 310185910 310185910 199288864 199288864 172226816 303488566 303488566 184949772 505486870 505486870 441085972 441085972 404968970 404968970 325538944 186727286 334506576 334506576 146025008 146025008 545501496 664846713 664846713 94630248 937756200 937756200 715935698 602981361 166521968 767750123 825581346 825581346 830900707 830900707 289984520 939399034 939399034 685298684 878890929 878890929 674234903 335566864 266377452 304159002 304159002 0 655970352 655970352 779898885 779898885 453848118 688916520 688916520 395448704 110385688 350685242 350685242 753930216 753930216 512367304 447251492 530229118 530229118 465158496 674850692 674850692 731925956 809122907 809122907 633975316 633975316 662773881 662773881 596763249 596763249 29667889 76012632 76012632 34153488 235585180 241128476 246150512 246150512 245912796 266985244 266985244 140536228 140536228 82109648 348393088 348393088 462385938 462385938 446658958 499227120 499227120 385037274 510467668 510467668 141170068 20971680 692566036 692566036 249560796 1029425796 1029425796 1048311711 1048311711 235140540 543701149 543701149 109125720 220430696 220430696 292034006 292034006 261165384 484086594 484086594 442338324 509950298 509950298 483147796 483147796 249742020 213783312 213783312 56840880 56840880 48011968 48011968 19731952 19581952 19581952 23158912 553214131 553214131 286298912 810664867 810664867 545599297 546708033 546708033 81239560 810305603 810305603 617120896 875847296 875847296 344096834 344458754 344458754 47434640 348525824 380356248 380356248 358287972 358287972 450330408 450330408 404433180 404433180 349642080 349642080 922948958 922948958 882513483 709168688 52177045 723489424 723489424 123573248 21632160 142828916 142828916 61447376 414210247 623120431 1008740969 1008740969 807477507 251715604 624230460 791939901 791939901 853885000 853885000 822608138 169407028 169530900 169530900 144703812 144703812 6651972 304656346 304656346 253290408 433442322 433442322 162184096 162184096 65074896 89377256 91912584 91912584 75081088 81090632 81090632 82644096 82644096 9209088 9209088 33419104 671301632 671301632 591631473 591631473 231795688 564669348 564669348 559417313 37981648 56977072 59810656 163054993 721735333 764795525 764795525 612619104 158784420 307289298 307289298 549403936 597088881 597088881 585419217 669903185 981575304 981575304 212610286 749768576 959847937 959847937 700670048 694062580 891513520 891513520 451040734 130421126 88395776 139493504 141774976 141774976 10538496 10538496 1574400 12589440 12589440 137504033 137504033 173089428 173089428 168452869 708497664 708497664 642844180 739109128 739109128 580921228 736938649 736938649 660916665 639738473 74384129 747214468 747214468 609797769 205834380 205834380 205834380 138969476 564693960 856168457 856168457 783550502 918244544 918244544 575052438 48791120 48791120 390872330 416797916 416797916 471405238 471405238 319762466 355760674 501004542 501004542 345973288 352703088 352703088 376189850 376189850 218417956 186960116 542395370 542395370 716638318 872856149 872856149 479778364 479778364 353945130 517041742 543874192 543874192 552093057 552093057 480111503 8902657 521906432 521906432 506778112 266937942 401131002 646656036 646656036 543305848 346514867 346514867 310550834 46857018 336794586 336794586 112865330 9437760 2097152 75497728 860619744 860619744 580855068 799414653 947529743 947529743 815744486 815744486 177938064 147138756 144271520 165465828 246335428 246335428 764985961 764985961 727621356 727621356 682642761 743506705 743506705 174883669 549994644 806047956 806047956 356780202 175539304 175539304 362080866 362080866 309353250 345522192 345522192 344982608 344982608 378616378 378616378 370532986 355936560 58555040 88422112 132347568 132347568 804997057 804997057 881222042 881222042 956478813 956478813 688116752 688116752 832369696 832369696 1057674303 1057674303 687965398 990466423 990466423 828774819 828774819 373197875 879807370 879807370 609487497 614391369 751586904 751586904 637928668 346727368 346727368 212067536 212067536 337643800 1019694534 1019694534 809320752 809320752 623291912 288469290 288469290 281972794 281972794 131287768 373788586 373788586 792795293 792795293 389369050 743768201 743768201 470457896 856315078 856315078 526875841 795962416 1004923383 1004923383 452450557 864958570 864958570 451919803 631936819 631936819 236342840 236342840 193007648 176369748 165226212 811624590 811624590 623215409 602482161 900737510 900737510 940073164 940073164 214008839 71926400 71926400 5259392 5259392 143425604 143425604 9702528 323128883 702562534 1045606619 1045606619 49808960 49808960 950666300 950666300 554820339 554820339 993337349 993337349 441410320 441410320 306892590 340406038 340406038 272752770 119554472 121660344 121660344 71946696 113378824 113378824 77284256 902194649 902194649 349868680 605892025 605892025 376288264 286947882 353862658 353862658 874210953 874210953 545097729 3484416 537439105 537439105 413439686 413439686 282671745 470433871 470433871 816076640 816076640 415916502 415916502 455323024 455323024 322939426 322939426 85404672 85404672 21166976 24042912 37205680 37205680 157729660 266910752 485129320 485129320 220303756 744305592 744305592 555015082 565793480 565793480 375826484 781329372 781329372 972170764 972170764 448631608 51467824 18299424 17272832 21102656 872419985 872419985 395313786 874931297 874931297 377627912 347379266 372817818 607526219 607526219 371429450 546549649 546549649 388538818 388538818 319154226 383096954 383096954 307632786 84547466 702890704 702890704 142615764 38347920 672776256 672776256 620848165 671618705 676381317 676381317 674283936 341651610 388170874 388170874 347417418 658349938 857396787 857396787 857396787 954728454 954728454 745113032 813664992 813664992 542909985 683766938 683766938 598230518 371922039 237688092 267387900 675810769 675810769 646979632 1053499962 1053499962 558956911 558956911 637534211 637534211 980960786 980960786 861735584 861735584 574958227 588709888 588709888 52051281 44304720 44304720 25460912 34496736 279322624 1021514502 1021514502 6457240 506535308 506535308 502061350 502061350 181404372 558236232 911251593 911251593 596578409 596578409 361513018 361513018 629155946 629155946 339570977 833479954 833479954 567016178 370263419 128882880 124306872 15254976 283434722 283434722 104857752 570002084 919703278 1009741237 1009741237 997047751 421290713 419430438 673524166 1021321311 1021321311 973218135 973092999 947720068 794963456 189138352 170398100 69214208 83925032 141247744 141247744 609882211 609882211 702697700 1029424619 1029424619 637043851 637043851 790910696 790910696 587094084 312624090 312624090 181668471 53367912 94372200 232493388 568406024 568406024 564793424 547465064 549601440 549601440 15959616 15959616 9617664 12137536 86447392 86447392 85983528 34738704 1042149485 1042149485 329129586 710064181 710064181 119639690 118020376 456175890 875669775 875669775 455479860 592369956 979111575 979111575 289410596 289410596 275513856 274468482 72887562 48431826 310587856 310587856 437418642 437418642 550538006 893364782 893364782 266282390 1018878472 1018878472 944057613 946446336 946446336 956908258 956908258 819226501 704121703 721780100 920910787 920910787 900726138 900726138 940268462 959654973 1018241039 1018241039 988158423 955064834 7605120 2359936 73728 73728 65536 0 992147472 1010761603 1010761603 839738659 994234551 994234551 957350439 957350439 1026360576 1026360576 218943311 213199692 223487752 223487752 72915464 873000456 873000456 906212108 906212108 775021341 691460901 691460901 520351806 664864178 971514983 1048757281 1048757281 1042285146 535203928 535203928 85739676 506351138 506351138 102417664 13664768 72504576 344081408 344642634 353534532 834719868 834719868 445124837 620807705 620807705 462559462 462559462 926111672 926111672 925785385 925785385 606737673 769803900 769803900 206876464 206876464 53543056 173252704 173252704 74270176 127199368 127199368 179124320 193028228 222910080 222910080 181699745 650232337 919007279 989970462 989970462 721877080 721877080 171966612 171966612 859748708 983164503 983164503 520450223 860825747 860825747 846125718 687677517 942220551 942220551 786825592 1043601236 1043601236 1015553336 574950077 574950077 191499300 439231524 439231524 157294720 157294720 690726164 690726164 170489125 102819785 601588249 773367521 773367521 817968136 873078662 873078662 879638796 879638796 631236896 496505703 496505703 20093216 35264016 211296780 744040028 744040028 715851261 408602554 676779704 676779704 558924954 825834792 825834792 84879139 823737384 823737384 487740239 487740239 926983216 926983216 877257867 473312438 473312438 486737960 572950556 866322624 866322624 190398355 69854472 96194632 251977813 554502239 714345495 714345495 613990607 718324437 718324437 694693617 543549825 1027265894 1027265894 898813280 898813280 278401588 662529588 1065998511 1065998511 925818171 1007174418 1007174418 694342444 893898722 910717153 910717153 735274528 594096945 745538445 745538445 621805988 454217330 454217330 945983901 962859711 962859711 771774514 771774514 330623570 735565108 735565108 534336241 542674080 600705728 600705728 348422432 138497036 235764864 243408896 243408896 12731712 669124097 669124097 114823916 553126276 553126276 712248725 712248725 700056772 538296480 566569185 605993952 605993952 121723496 161817688 161817688 160705284 265864080 265864080 29626144 61051296 268001672 268001672 104948752 270136080 342699402 342699402 873557344 873557344 599079904 605350681 605350681 389903720 389903720 302901824 302901824 329394120 385352154 449101480 449101480 520228926 534009495 982305879 982305879 965650803 849680705 849680705 836876832 836876832 814217283 162261442 162261442 292686084 292686084 283740546 283740546 816764227 816764227 673638914 673638914 135632979 941444352 941444352 718797335 871127008 871127008 689660464 689660464 163635264 168387600 168387600 303488566 303488566 193586508 530380670 530380670 441085972 441085972 310065042 325538944 325538944 861933747 861933747 484188623 722418757 722418757 555170881 664846713 664846713 94630248 94630248 609519992 609519992 1036781708 1036781708 201396399 825581346 825581346 830900707 830900707 816907970 939399034 939399034 824685382 573501713 567671521 567593697 497322909 86004026 690170692 690170692 428228937 781625594 781625594 779898885 779898885 439127082 688916520 688916520 305500947 110385688 350685242 350685242 753930216 753930216 491028984 451986390 444719190 444719190 462043670 674850692 674850692 731925956 809122907 809122907 763440704 763440704 734624925 662773881 119542649 599054841 599054841 584530001 584530001 179067436 597036524 597036524 246150512 246150512 726100625 726100625 469796882 469796882 383391450 419047838 419047838 500745244 500745244 462385938 120548648 465848672 465848672 577246357 940054163 940054163 747771849 569642596 971664910 971664910 277345570 306011764 352556322 352556322 490404462 490404462 180625664 180625664 117114644 117114644 427871124 427871124 252363784 16826368 16826368 33166400 33166400 16809984 8192 2113536 2113536 2146560 2146560 2113536 15395216 319029152 319029152 285569520 25891920 24694048 24694048 288711504 288711504 287336738 286298912 286393090 309539680 309539680 105727048 76963656 81239560 81239560 14691904 0 524288 525312 525312 524288 11420672 11420672 41423120 48811984 143033968 358287972 533320304 533923042 533923042 532759682 226779146 226601062 207757358 922948958 922948958 882513483 608443618 290605063 723489424 723489424 197569144 172559804 191934560 191934560 61447376 414210247 414210247 547695483 807477507 807477507 268699926 883272056 1029776181 1029776181 662536338 822608138 822608138 636500099 897125022 1039930674 1039930674 442312978 360819238 304656346 304656346 253290408 433442322 433442322 100026640 100026640 83627976 275613514 344082048 344082048 284875722 281522048 275528704 268851522 269358850 269358850 545818561 545818561 560859169 692660416 692660416 686887969 718022160 718022160 579148084 734798928 734798928 685199744 676590213 546484304 173544960 13648448 13648448 15274176 15274176 307289298 307289298 305085714 312789330 312789330 54895074 229744745 881641829 881641829 801423795 674548485 899449307 899449307 700670048 541856457 891513520 891513520 194036047 281189954 281189954 139493504 281912834 281912834 364739362 364739362 288697122 288697122 276183336 137504033 137504033 188679952 188679952 168452869 576787504 576787504 642844180 880803915 880803915 580921228 736938649 736938649 711847317 763742484 763742484 608174217 604818441 604818441 604769289 604769289 604769289 77088833 85495136 85495136 20450920 19273312 24726816 119186088 119186088 28463160 23642888 89441336 102599832 102599832 290580016 306709650 306709650 130548762 501004542 501004542 270451296 270451296 268171260 701254855 701254855 516483412 800172657 800172657 786511272 949099034 949099034 786555357 807612961 807612961 807298472 250100553 250100553 150945732 150945732 150714244 79164557 428093440 428093440 506778112 506778112 279463140 401131002 584404966 584404966 864975859 864975859 417586708 582517672 874404162 874404162 643829368 643829368 580884993 548280384 548280384 860619744 860619744 858857521 858857521 947529743 947529743 815744486 815744486 1007760327 1007760327 591943392 315852706 315852706 411205842 411205842 273285256 861984432 1053597073 1053597073 671613957 73023560 75536008 549994644 549994644 457264157 356780202 175539304 175539304 362080866 362080866 299370210 374867682 374867682 344982608 344982608 85201480 85201480 35817992 35817992 59320352 88422112 132347568 132347568 208108992 208108992 881222042 881222042 810262923 810262923 713437256 713437256 832369696 832369696 672942514 577347505 991967830 991967830 986901105 828774819 828774819 492618668 879807370 879807370 609487497 266241892 751586904 751586904 637928668 110993544 110993544 212067536 286291497 906426673 1019694534 1019694534 839604768 839604768 623291912 288469290 288469290 281972794 281972794 306747963 373788586 373788586 792795293 792795293 389369050 743768201 743768201 470457896 856315078 856315078 526875841 610847026 1004923383 1004923383 728522288 864958570 864958570 451919803 936660089 936660089 434014793 895972808 895972808 869179379 869179379 995663947 1034944632 1056182046 1056182046 451674583 357859392 940073164 940073164 476642776 437729814 534935970 534935970 370930794 244810670 334482540 334482540 171590722 282593894 1045606619 1045606619 811516867 537795585 950666300 950666300 554820339 554820339 993337349 993337349 695764097 808435714 995360787 1010704272 1010704272 803653056 1063182015 1063182015 1015958338 369019178 369019178 343688960 343688960 55054384 324210386 349868680 349868680 339738378 339646474 336931850 337591818 337591818 72175616 543683585 543683585 268486532 537439105 537439105 413439686 413439686 282671745 470433871 470433871 270004033 293626085 293626085 157026920 157026920 165930274 214697600 214697600 85404672 85404672 65550320 51061104 51061104 22498368 191046805 780343541 780343541 1018495464 1018495464 758854926 758854926 555015082 565793480 565793480 724961297 781329372 781329372 1057893296 1057893296 448631608 479813738 479813738 419723882 218617898 71315636 247587036 499559896 499559896 377627912 377627912 67508232 67508232 38749208 371429450 371429450 210804824 283955592 388538818 388538818 284298944 378794768 378794768 375002778 330028200 844817427 844817427 595855473 780477489 1031411165 1031411165 911865796 911865796 676381317 676381317 674283936 341651610 388170874 654584064 654584064 658349938 857396787 857396787 857396787 954728454 954728454 745113032 813664992 813664992 577342736 683766938 683766938 775412905 918309145 918309145 866548018 866548018 675810769 646979632 1053499962 1053499962 1051544979 1051544979 1030754202 1030754202 805306393 838895622 839184691 839184691 590606643 588709888 588709888 52051281 31795680 31795680 301805538 301805538 284266338 1021514502 1021514502 324867163 506535308 506535308 502061350 502061350 181404372 604258576 604258576 556171323 46305331 340786314 361513018 361513018 294255674 294255674 313063715 833479954 833479954 814373713 805412705 910447449 910447449 566763761 628096112 628096112 571024401 571024401 570002084 650859784 650859784 738722217 778043805 979903621 1010901135 1010901135 707118725 707118725 947720068 947720068 794963456 143261892 143261892 69214208 69214208 13129088 149022016 609882211 609882211 875099979 1029424619 1029424619 671756745 671088645 790910696 790910696 587094084 312624090 963060324 963060324 129899811 94372200 232493388 568406024 568406024 564793424 547465064 549601440 549601440 15390144 9578560 9578560 4255136 86447392 86447392 85983528 412553802 412553802 136668362 74634120 442391772 442391772 242929560 106703530 456175890 806585094 806585094 570458274 842152096 999627070 999627070 289410596 524027052 582622847 582622847 331192992 293524690 26461730 294987408 294987408 84676690 544119424 544119424 126723744 586174104 586174104 30483825 4983936 813025216 814558275 814558275 390112360 302871696 327890034 721780100 920910787 920910787 900726138 900726138 475803270 959654973 1018241039 1018241039 955064834 1036325544 1036325544 775099972 775099972 585370065 272641167 439728082 537942410 1010761603 1010761603 642106011 573047222 788706981 957350439 957350439 424133999 847276533 847276533 706103714 847253949 847253949 643041945 977331097 977331097 342935891 336802314 377692198 462496374 487004760 520351806 520351806 282989252 496552422 496552422 489720742 489720742 325960612 120272184 186851360 233614398 367139434 367139434 366906018 72504576 88192392 353534532 834719868 834719868 234881697 211030096 211030096 394547218 394547218 926111672 926111672 925785385 925785385 212166967 160746084 216308356 216308356 206876464 192133404 149035504 214275812 214275812 127199368 127199368 179124320 193028228 256595620 256595620 235341552 650232337 919007279 989970462 989970462 763486317 721877080 254330372 171966612 61796357 421785894 421785894 520450223 860825747 860825747 846125718 607464201 942220551 942220551 109433976 1043601236 1043601236 319424835 574950077 574950077 675340892 675340892 952869443 952869443 559415680 559415680 555820164 82449864 94974112 94974112 0 0 817968136 817968136 321986696 792208314 792208314 207408644 537676980 675808389 675808389 202908301 211296780 211296780 219417672 219417672 146977344 436729878 436729878 405447082 825834792 825834792 454083126 823737384 823737384 487740239 827856905 827856905 470946318 470946318 85735824 223619458 863449133 863449133 866322624 866322624 211888198 337905930 337905930 280242510 554502239 714345495 714345495 613990607 718324437 718324437 694693617 681623809 1027265894 1027265894 898813280 898813280 944359020 944359020 902898411 792766645 22859424 1007174418 1007174418 694342444 893898722 910717153 910717153 717625557 594096945 745538445 745538445 621805988 205892780 205892780 931473936 931473936 279970626 410030130 465752310 1060135026 1060135026 375548835 258453566 484695976 484695976 348422432 348422432 261017652 235764864 243408896 243408896 170048776 94970304 573454724 681648453 681648453 105121548 538968400 700056772 700056772 263506968 263506968 200138336 245440860 245440860 161817688 196481712 196481712 265864080 265864080 196268916 196268916 61051296 138462004 138462004 72259584 29646312 337217760 337217760 96575280 599079904 605350681 605350681 389903720 389903720 108412786 42798608 7486992 119865600 449101480 449101480 131085112 63704304 182003412 182003412 147392016 525312 568452213 836876832 836876832 856752242 856752242 291578274 696837330 810672914 810672914 5908800 816764227 816764227 673638914 673638914 135632979 941444352 941444352 718797335 871127008 871127008 689660464 689660464 163635264 163635264 34398208 58901110 58901110 193586508 530380670 530380670 230448152 230448152 217693248 217693248 292715287 861933747 861933747 484188623 722418757 722418757 555170881 263292136 767096157 767096157 465588152 861441308 861441308 1036781708 1036781708 824183621 689325357 689325357 694971879 816907970 825280992 825280992 824685382 824685382 573501713 880069641 880069641 497322909 147226854 690170692 690170692 890245135 890245135 781625594 630793833 557409321 607097764 607097764 271606934 684299196 752951757 795411568 795411568 592447572 592447572 491028984 451986390 444719190 444719190 385513356 331122082 331122082 292048754 292048754 228546800 763440704 763440704 734624925 778307904 780142653 780142653 599054841 605663092 605663092 179067436 597036524 616645344 616645344 60794964 726100625 726100625 469796882 469796882 383391450 419047838 419047838 500745244 500745244 227607120 222709228 222709228 285884578 577246357 940054163 940054163 747771849 569642596 971664910 971664910 423902711 474775710 474775710 352556322 490404462 490404462 183881312 191440308 191440308 117114644 427871124 427871124 390122324 390336022 399938528 410096032 410096032 344667146 344667146 336199690 348417216 348417216 118876816 307652432 318909538 333301362 333301362 285569520 268583184 308314336 308314336 288711504 288711504 287336738 269489120 286393090 309539680 309539680 6788992 14981184 14981184 277551042 277551042 83184832 338964352 338964352 270803970 343195530 343195530 151394340 427544620 427544620 322107796 496376430 533320304 533923042 533923042 532759682 145041732 260317440 644146243 644146243 904050238 904050238 901778117 562567361 278366414 542659140 957592855 957592855 946976183 606147020 321654362 321654362 304685352 329756 235218972 1007001921 1007001921 976339311 1029776181 1029776181 566805985 566805985 951592862 951592862 969476562 1039930674 1039930674 442312978 360819238 257158538 114648212 153540900 153540900 167028708 253779216 253779216 83627976 275613514 344082048 344082048 284875722 281522048 275528704 268851522 269358850 269358850 545818561 545818561 560859169 692660416 692660416 686887969 718022160 718022160 579148084 734798928 734798928 685199744 676590213 546484304 173544960 57115312 57115312 52985728 5755904 4226432 4226432 295710164 460137654 460137654 183042146 229744745 881641829 881641829 801423795 674548485 899449307 899449307 349738575 234545840 463201253 596693779 596693779 281189954 281189954 74634120 281912834 281912834 364739362 364739362 288697122 288697122 276183336 131245432 131245432 221527968 221527968 139470484 676922896 676922896 639680850 880803915 880803915 75539211 558165308 711847317 711847317 887416899 887416899 803720856 944557800 944557800 604769289 752126470 752126470 77088833 85495136 302137688 758384695 758384695 932873320 932873320 867353406 353899296 54707792 388005570 463282540 463282540 422585860 422585860 306709650 327549968 327549968 420355174 420355174 286137378 976096363 976096363 908085116 908085116 800172657 800172657 786511272 949099034 949099034 796979208 807612961 993424289 996106135 743193090 1012610703 1012610703 626992783 626863785 690750722 690750722 428093440 447268162 447268162 306758934 167773330 584404966 584404966 864975859 864975859 417586708 582517672 874404162 874404162 801261282 801261282 639716584 639716584 548280384 601371251 601371251 858857521 858857521 845183780 1071119103 1071119103 1054602231 1054602231 1007760327 591943392 315852706 509610024 509610024 431366081 431366081 998265242 1053597073 1053597073 860004140 293640750 75536008 75536008 717361396 717361396 76634652 188817588 188817588 2359552 289410624 299370210 374867682 374867682 288096920 344726538 344726538 399560696 399560696 381650264 132666016 304313666 366426226 366426226 704783461 704783461 998335858 998335858 564322401 564322401 713437256 713437256 155823264 672942514 672942514 577347505 991967830 991967830 986901105 438718308 282777282 1064151231 1064151231 1063609885 341310090 534601642 534601642 438436108 407525656 564939456 564939456 809162499 809162499 906426673 906426673 825918249 839604768 839604768 604659464 67532160 6048776 34620096 34620096 306747963 332912215 332912215 643613993 643613993 527643582 604066824 655897753 830879389 965765859 965765859 165004515 54752996 817300418 817300418 728522288 539543902 769210382 769210382 936660089 936660089 434014793 895972808 895972808 869179379 869179379 995663947 1034944632 1056182046 1056182046 451674583 951954590 951954590 1053535749 1053535749 567327463 868775076 868775076 975901348 975901348 389726394 334482540 278766270 282593894 592451024 868537842 868537842 568736130 570824721 570824721 467703872 538510850 538510850 422893825 695764097 808435714 995360787 1010704272 1010704272 803653056 1063182015 1063182015 1015958338 369019178 369019178 343688960 343688960 55054384 324210386 324210386 339738378 339738378 339646474 336931850 337591818 337591818 68077570 268655104 268655104 268486532 137499396 137499396 137178372 268925188 268925188 140303488 140303488 343748452 343748452 163393418 211662592 485714844 485714844 397414206 269488684 269488684 420755494 423963430 423963430 193724562 193724562 191046805 780343541 780343541 1018495464 1018495464 758854926 758854926 3875341 88342920 88342920 724961297 724961297 759762190 1057893296 1057893296 294818944 479813738 479813738 419723882 218617898 71315636 247587036 499559896 499559896 483231586 483231586 185827942 165810668 231408828 374585060 374585060 268558338 236601984 236601984 277632512 284298944 378794768 378794768 375002778 330028200 844817427 844817427 595855473 780477489 1031411165 1031411165 911865796 911865796 187745017 168060960 200528084 200528084 141423508 654584064 654584064 950074406 950074406 628086561 612165105 589868416 347645711 347645711 34417680 577342736 577342736 421617824 421617824 775412905 918309145 918309145 1008062153 1008062153 434973682 167059180 167059180 648936200 1051544979 1051544979 1030754202 1030754202 996172420 996172420 839184691 991614519 991614519 1001355360 1001355360 27882528 27882528 270127392 562421284 592592374 592592374 633018608 909237674 909237674 774815863 525481006 533799678 738228968 738228968 693467160 785811584 785811584 629354601 340786314 340786314 910689435 910689435 370145546 370145546 350654465 814373713 814373713 805412705 910447449 910447449 566763761 628096112 628096112 572786496 810111298 810111298 650859784 650859784 738722217 778043805 979903621 1010901135 1010901135 960519846 960519846 890031544 890031544 778247956 143261892 143261892 80497280 82046336 82046336 149022016 149022016 416966019 875099979 875099979 671756745 671756745 671088645 458752000 562730993 762532966 762532966 966271079 966271079 129899811 68050176 168462604 168462604 76275840 67862528 70854400 70854400 15390144 15390144 9578560 9578560 2755400 10065480 10065480 14724042 412553802 412553802 971632081 1001155771 1001155771 500498931 242929560 187906832 187906832 958477075 958477075 815621045 842152096 999627070 999627070 225461964 524027052 582622847 582622847 331192992 293524690 302268560 302268560 188959642 354237680 473781834 659185387 1060444476 1060444476 586174104 266453568 764394606 1018047266 1018047266 814558275 746635376 646252773 588025009 350882048 740365328 740365328 408759942 475803270 475803270 316282972 269484032 269484032 812526446 1036325544 1036325544 775099972 775099972 585370065 272641167 439728082 439728082 745730817 745730817 214801225 573047222 573047222 459277585 115343832 344047916 847276533 847276533 706103714 847253949 847253949 643041945 977331097 977331097 926442707 336802314 827277354 827277354 726453429 487004760 684346334 983958135 1053621011 1053621011 819031118 489720742 489407240 233445192 275156230 275156230 367139434 367139434 366906018 231818344 231818344 289052064 289052064 201920514 88679592 88679592 4387880 0 323643352 841919608 841919608 338764554 601116208 601116208 82513259 216308356 216308356 192133404 200393692 200393692 214275812 214275812 102098920 102098920 244923496 244923496 256595620 256595620 235341552 235341552 236317212 864498178 864498178 763486317 450496358 450496358 712992098 956928801 956928801 726588597 548332705 451769671 167907328 167907328 503470084 503470084 470421534 109433976 924063344 924063344 319424835 355822278 355822278 706281668 706281668 952869443 952869443 691061937 559415680 991978454 991978454 710534805 996799199 996799199 556970173 498337737 894241573 940706000 1018639058 1018639058 1057656835 1057656835 675808389 675808389 639105561 639105561 264951036 969818210 1062528125 1062528125 386350745 866198205 866198205 744945886 428553318 564268090 564268090 602238667 602238667 827856905 827856905 470946318 470946318 505819822 505819822 863449133 960705166 960705166 889616641 528438493 457241848 617612232 617612232 375286033 60440624 284310544 284310544 40184208 539391376 539542785 681623809 681623809 246941532 918173458 918173458 944359020 944359020 902898411 792766645 613552713 613552713 823297273 823297273 318796944 292631512 717625557 717625557 100929741 146014488 443287379 609223305 1036949763 1036949763 931473936 931473936 279970626 410030130 465752310 1060135026 1060135026 520141319 258453566 780410130 807621716 807621716 261017652 261017652 263379616 263379616 249825756 170048776 119280448 573454724 681648453 681648453 103031296 538968400 538968400 193379469 678985793 791749437 791749437 721877768 748957391 748957391 746455420 999953967 999953967 1051293081 1051293081 965948007 848367668 138462004 383588449 695085263 695085263 903372859 903372859 308273440 593057018 607175433 607175433 387060072 387060072 82321698 15233328 84419172 231571796 231571796 248374584 248374584 110421091 651603531 651603531 690693943 690693943 624568123 568452213 425198084 856752242 856752242 431687232 696837330 810672914 810672914 4268036 1233408 278068034 278068034 12459840 12353600 12330816 268775936 268775936 288497664 288497664 20090912 3362480 29951040 29951040 34398208 159711268 159711268 151254308 151254308 470950768 470950768 184892172 330939440 330939440 216277032 216277032 59978352 281678116 703405851 703405851 615910672 621456000 767096157 767096157 573248073 861441308 861441308 968267986 968267986 913384347 689325357 689325357 694971879 807898050 825280992 825280992 771398890 771398890 500558926 880069641 880069641 287624131 147226854 144838980 184598580 946868002 946868002 634176264 634176264 557409321 607097764 607097764 271606934 684299196 752951757 795411568 795411568 592447572 592447572 988202047 988202047 964478703 900426509 900426509 985270102 985270102 601862708 1016633287 1016633287 262470012 485069434 786458648 786458648 836449874 836449874 870761730 870761730 648313368 648313368 437526651 616645344 616645344 178824656 81959360 129245936 129245936 124379880 115158744 101392264 407375792 407375792 423888128 426511782 426511782 222709228 285884578 468432288 490959470 490959470 238760254 653862508 653862508 689994909 689994909 1000996883 1000996883 648767235 648767235 143661398 712356377 712356377 214894932 214894932 346178472 351012412 490917856 490917856 399938528 410096032 521014290 521014290 499122350 420208676 420208676 348417216 463193024 463193024 318909538 333301362 333301362 50599554 268583184 308314336 308314336 41990144 63971328 64037616 64037616 25898256 13407312 36499840 36499840 6359360 14697472 277551042 277551042 83184832 357568940 357568940 343051788 360205100 374632506 424147110 476360750 476360750 322107796 496376430 496376430 378745020 488322564 488322564 252916266 533397708 644146243 644146243 904050238 904050238 901778117 562567361 273278082 542659140 957592855 957592855 946976183 606147020 600002977 600002977 770653677 770653677 708153197 1007001921 1007001921 976339311 758170470 565967444 566805985 566805985 951592862 951592862 969476562 969476562 716776054 415708562 415708562 378238106 378238106 153540900 396417922 396417922 267149820 253779216 282646656 282646656 74851394 2777280 71849184 294309992 294309992 29917314 7603840 7603840 542708608 542708608 81470288 676116672 676116672 112198488 112198488 263796904 263796904 78513952 96094376 96094376 76714848 117447680 117447680 61130816 120507528 120507528 8899904 306446034 306446034 562430304 562430304 594225768 1038225903 1038225903 501038849 15018432 8481152 122880 34181679 349738575 349738575 234545840 726836221 803230352 803230352 697661329 697661329 70915848 104456152 104456152 83701704 40644640 56048304 56048304 47984704 69197328 86714912 221527968 221527968 101778840 676922896 676922896 570476181 873694120 873694120 119750832 585363944 593752497 593752497 887416899 887416899 803720856 944557800 944557800 292933543 806861512 806861512 68985536 756209184 756209184 758384695 758384695 932873320 932873320 867353406 353899296 243304500 388005570 463282540 463282540 422585860 422585860 78659648 327549968 327549968 433238624 433238624 309195906 976096363 976096363 908085116 908085116 631556457 139300136 128140048 93446760 539058241 796979208 796979208 993424289 996106135 743193090 1012610703 1012610703 626992783 1023949896 1023949896 940851200 940851200 825235975 602576707 576852369 167773330 8930388 43095760 567364760 567364760 378613860 542340728 655854718 798530186 801261282 801261282 639716584 639716584 588203092 891225088 891225088 581383433 271546651 845183780 1071119103 1071119103 1054602231 1054602231 135300612 135300612 64202160 509610024 509610024 431366081 431366081 998265242 998265242 860004140 860004140 545470812 180955607 783196500 783196500 1063320032 1063320032 619921608 351291722 287560096 328947226 336469002 336469002 288096920 288096920 344726538 344726538 399560696 399560696 381650264 132666016 304313666 366426226 366426226 704783461 704783461 998335858 998335858 564322401 608444416 608512137 608512137 155823264 453267716 570818944 577116561 577116561 54526128 493382392 493382392 448655190 1064151231 1064151231 1063609885 302853691 534601642 534601642 393252539 324600331 565015552 565015552 809162499 809162499 538158082 369733648 369733648 287432994 287432994 120251034 397756786 397756786 299056834 299056834 401409090 401409090 95037640 198370762 527643582 527643582 604066824 731410687 830879389 965765859 965765859 434625037 434625037 817300418 918978576 918978576 369320152 769210382 769210382 388997297 219488900 135268904 126136658 54688008 209634496 302303760 302303760 269484546 513853654 795084410 795084410 951954590 951954590 1053535749 1053535749 899364459 868775076 868775076 975901348 975901348 486225870 486225870 278766270 282136770 407049056 868537842 868537842 749748990 570824721 631398256 698401125 874223995 874223995 353478175 43552 554111104 554111104 553783329 553783329 196216552 98046836 447760104 447760104 306273872 274720834 67945890 97256944 97256944 96749776 13215768 2622720 6358016 6358016 33562768 33562768 4781568 5452416 5829632 5829632 169872016 169872016 137499396 404960258 404960258 269168902 473855880 488364054 488364054 343748452 233993288 233993288 485714844 485714844 397414206 269488684 269488684 420755494 423963430 423963430 193724562 193724562 187505056 187505056 407320710 407320710 272180994 839130914 839130914 115540459 88342920 88342920 312083738 931533832 958471139 958471139 914407515 1033540255 1033540255 609108523 420514342 420514342 1058392678 1058392678 564183393 545276192 483231586 483231586 185827942 165810668 231408828 374585060 374585060 268558338 98054656 14976576 69746688 72125128 72125128 95490592 95490592 5124712 642696856 642696856 600912613 654642296 672663260 672663260 776648029 784780632 784780632 680260677 588525664 287713574 1048801299 1048801299 679510071 950074406 950074406 875062735 875062735 870542729 870542729 509615772 509615772 17283456 23591328 421617824 421617824 419903526 605233382 617949897 1008062153 1008062153 601362486 465725135 131048072 762362326 931201331 931201331 503492892 572522515 996172420 996172420 717051634 991614519 991614519 1001355360 1001355360 547330928 547330928 808604016 808604016 592592374 592592374 539420598 909237674 909237674 774815863 525481006 533799678 738228968 738228968 693467160 785811584 785811584 629354601 77240784 310977971 910689435 910689435 600323233 370145546 875965075 875965075 4458496 5817984 24887780 147058884 601064836 601064836 699501593 699501593 810111298 810111298 537445377 164168004 262800198 530191998 530191998 210375562 990921036 990921036 960519846 441897621 419614884 405504834 445720164 445720164 171192384 171192384 153015392 135551488 143891398 483928000 483928000 268712718 769673768 903195073 903195073 483661960 562730993 762532966 762532966 966271079 966271079 418657282 302586836 5189760 5804248 49114706 381304258 381304258 297746210 72427810 75759624 96734176 280273218 280273218 280411146 336586672 336586672 207900033 216604928 971632081 1001155771 1001155771 500498931 153434404 286457888 352464914 958477075 958477075 815621045 818111185 818111185 181717716 181717716 145771412 472011082 472259372 1023699502 1023699502 964763751 302268560 189253394 354237680 473781834 659185387 1060444476 1060444476 850045451 850045451 1009801614 1018047266 1018047266 1031966470 1031966470 646252773 732892552 732892552 490440439 422424071 1017383247 1017383247 372548182 975624471 975624471 947916357 947916357 684465794 684465794 719193184 723394101 723394101 621718477 878243353 878243353 826277667 941247895 941247895 860431539 398701155 398701155 353373018 353373018 43778424 27334746 73728 276596858 276596858 133744632 294826234 926442707 926442707 251867196 827277354 827277354 726453429 480475576 1024175788 1024175788 1053621011 1053621011 819031118 489407240 489407240 233445192 275156230 275156230 225604928 225604928 163651976 343923872 343923872 816811410 816811410 201920514 541835288 541835288 131363841 76860392 323643352 841919608 841919608 338764554 873721056 873721056 97317963 194345276 194345276 163958228 200393692 200393692 163843472 97847172 102098920 102098920 244923496 244923496 147584184 76280904 244292253 638530061 717613269 717613269 721758261 721758261 450496358 450496358 712992098 956928801 956928801 783736757 783736757 757538386 757538386 410332038 606911506 777519757 1042158989 1042158989 553949247 1045763095 1045763095 594817080 161031780 706281668 706281668 590971604 691061937 691061937 571500309 991978454 991978454 710534805 996799199 996799199 556970173 498337737 894241573 940706000 1018639058 1018639058 1057656835 1057656835 647706201 647706201 639105561 639105561 264951036 969818210 1062528125 1062528125 386350745 866198205 866198205 744945886 174320258 564268090 564268090 602238667 602238667 478194658 341113996 52089648 314794549 987818599 987818599 869700577 960705166 960705166 889616641 678344325 457241848 617612232 617612232 381095958 392376762 467855632 467855632 431754720 132543200 838073066 838073066 540897105 540897105 1024268341 1024268341 995782076 848827955 378081947 941237818 941237818 613552713 823297273 823297273 761613932 761613932 675621004 573374877 573374877 572660568 786694548 943472810 1036949763 1067823694 1067823694 713296340 681655124 674484252 779301789 779301789 715317960 520141319 519999836 780410130 807621716 807621716 336435276 59665904 263379616 263379616 249825756 132471200 119280448 800300752 800300752 724565301 112159021 238026916 242691692 242691692 678985793 791749437 791749437 721877768 748957391 748957391 746455420 999953967 999953967 1051293081 1051293081 965948007 848367668 168346644 383588449 972715206 972715206 903372859 903372859 308273440 593057018 607175433 607175433 604833569 604833569 82321698 581534657 581534657 231571796 231571796 509728286 509728286 420095160 651603531 651603531 690693943 690693943 624568123 193854271 292875776 292875776 431687232 431687232 421736742 160039040 160039040 5575716 2554176 278068034 278068034 14551040 14551040 5571776 282466314 282466314 288497664 300424490 300424490 111581272 111581272 283918416 485142596 485297670 485297670 151005284 146024706 470950768 510409700 510409700 330939440 330939440 533292520 533292520 350769540 835658723 835658723 703405851 615910672 621456000 621456000 564782465 573248073 573248073 591173392 608653858 913384347 913384347 541278465 294359025 287651168 807898050 807898050 93491808 771398890 825282604 825282604 500558926 481610956 280283970 184598580 218136600 218136600 946868002 946868002 634176264 634176264 290504907 234889232 234889232 201400332 235479168 239600796 239600796 134366052 803941776 803941776 988202047 988202047 964478703 900426509 900426509 985270102 985270102 774972189 1016633287 1016633287 494207787 912881459 912881459 786458648 836449874 836449874 870761730 870761730 648313368 665324389 665324389 663038073 663038073 178824656 751000961 751000961 402838482 402838482 204482648 440552086 521151720 521151720 423888128 426511782 426511782 246014192 164725748 468432288 1059586632 1059586632 652743342 653862508 653862508 763400212 763400212 1000996883 1000996883 966951741 1060166655 1060166655 712356377 712356377 248597260 515900042 515900042 414603958 490917856 490917856 428668558 428668558 521014290 521014290 499122350 479859204 441982574 403048960 463193024 463193024 380368218 380368218 373164930 123877704 123877704 310378496 310378496 130155914 120066240 119603984 119603984 64007232 56487600 36499840 36499840 21283104 19843456 14981440 5030080 14997248 357568940 357568940 343051788 360205100 384334140 424147110 476360750 476360750 283707182 198793166 76093128 378745020 488322564 488322564 252916266 533397708 533397708 437842600 87031080 202441296 243343452 243343452 234930204 456131286 968438034 968438034 541066192 596251761 600002977 600002977 770653677 770653677 708153197 708153197 443861917 758170470 826403671 826403671 742468432 742468432 444207436 277418512 277418512 302589216 302589216 415708562 415708562 378238106 378238106 142348164 396417922 396417922 267149820 215362544 282646656 282646656 74851394 23081802 340430506 340430506 294309992 29917314 20976770 6607107 542708608 542708608 548744065 676116672 756464884 912614563 912614563 755131097 937205334 1002848840 1002848840 1024508167 1024508167 806913066 757646493 771278701 771278701 666648968 228334444 693143320 693143320 978902912 978902912 981410729 1038225903 1045009145 1045009145 575252059 863050475 946304487 946304487 951532359 951532359 346562477 726836221 803230352 803230352 697661329 697661329 373838736 336904962 336904962 335735810 335735810 272180992 270482946 269161480 84335120 84335120 56238128 188745888 188745888 156246180 50930736 123790706 123790706 92832626 400064794 585363944 593752497 593752497 621428481 621428481 385943132 713081402 713081402 70272608 806861512 806861512 30261795 756209184 756209184 707121677 260434005 364036656 364036656 110104954 243304500 243304500 194382396 52282944 162609364 354583074 354583074 78659648 197007432 197007432 433238624 433238624 309195906 533723434 533723434 196657196 196657196 104196888 128140048 128140048 93446760 67108864 167781376 167781376 337766464 337766464 8388609 545259585 620763137 629545065 1023949896 1023949896 940851200 940851200 825235975 602576707 576852369 731289973 731289973 188795477 567364760 567364760 378613860 378613860 385753832 798530186 952282336 952282336 946296294 946296294 771752016 891225088 891225088 689571584 689571584 828385808 828385808 142907392 142907392 574464 271566426 271566426 128010270 128010270 181834486 942543410 942543410 939708423 796187773 1057294437 1057294437 571548177 573170961 783196500 783196500 1063320032 1063320032 619921608 351291722 287560096 328947226 336469002 336469002 108076842 324670240 324670240 29934816 336488192 339213066 339213066 30448384 30448384 52838688 276833724 535373310 535373310 1023165792 1023165792 832102288 832102288 608512137 608512137 84949321 92483624 570818944 577116561 601026737 1058325573 1058325573 517344389 448655190 133295502 25266496 25266496 8397632 9447680 17166176 108193096 108193096 565015552 873074720 889717803 889717803 606109706 606109706 369733648 287432994 340328618 340328618 411894894 411894894 348335768 316021466 406213943 406213943 505789220 505789220 392044218 392044218 960593959 1063686430 1063686430 816113329 634938809 936516337 936516337 690163096 918978576 918978576 274333842 537412200 537412200 219488900 219488900 263767932 263767932 182839764 263474600 302303760 302303760 269484546 513853654 795084410 795084410 747111501 363072258 943655276 943655276 899364459 828132608 335992616 351215910 417261832 486225870 486225870 87375558 282136770 723764535 782782833 782782833 749748990 548281665 631398256 698401125 874223995 874223995 442126868 287883152 1014808797 1014808797 697959000 697959000 974132778 1058555453 1058555453 882410004 306273872 274720834 67945890 97256944 97256944 270537730 270537730 118381328 293527080 342799794 342799794 341255818 307334154 6082176 269396992 273109120 273109120 169872016 137199760 404960258 404960258 652538374 1056390111 1056390111 488364054 370986176 233993288 233993288 303329402 719060957 719060957 275763436 581445671 581445671 57104615 699801745 699801745 690733476 690733476 609457967 965185191 965185191 594092048 839130914 839130914 805363808 805363808 625000617 625000617 1070209164 1070209164 958471139 914407515 1033540255 1033540255 609108523 420514342 420514342 1058392678 1058392678 705724777 1048143051 1048143051 291705126 318796722 466666582 973689377 973689377 161031780 995861735 995861735 202006584 69746688 72125128 90570376 90570376 31143648 53188168 53188168 600912613 600912613 654642296 672663260 672663260 776648029 784780632 784780632 680260677 588525664 287713574 1048801299 1048801299 882427467 679510071 761197605 875062735 875062735 876132939 882329355 882329355 565156174 565156174 922793328 922793328 760038449 684183108 532757094 532757094 848335933 848335933 601362486 465725135 131048072 929311312 931201331 931201331 503492892 570556416 570560529 570560529 570560529 574767137 699638898 699638898 674001664 807853378 807853378 808604016 808604016 540212820 321574194 321574194 356593706 356593706 28840768 17437728 17875488 17875488 87815976 87815976 585441438 585441438 503325523 281477442 310977971 622405289 639818136 639818136 647631360 875965075 875965075 273441538 273441538 404289824 404289824 951929746 951929746 828692930 699501593 694227976 881911058 881911058 174953600 262800198 530191998 530191998 210375562 990921036 990921036 160599141 322438295 844629380 844629380 445720164 445720164 171192384 171192384 153015392 102679956 143891398 483928000 610931845 610931845 769673768 903195073 903195073 483661960 483661960 296884902 39010316 42008784 418657282 418657282 302586836 136295444 136295444 49114706 381304258 381304258 297746210 72427810 75759624 446166675 953859271 973476207 973476207 689121695 689121695 624420550 624420550 578814033 409659733 273628290 163584274 79496500 384583320 384583320 756185258 756185258 794640589 794640589 757383981 214954369 214954369 204419260 895934602 895934602 1023699502 1023699502 964763751 885068162 445694550 445694550 533488044 533488044 836776928 838500339 850045451 850045451 1009801614 1009801614 934568091 1031966470 1031966470 864343776 732892552 732892552 671103117 671103117 1017383247 1017383247 953002266 975624471 975624471 947916357 947916357 684465794 684465794 719193184 723394101 723394101 621718477 878243353 878243353 826277667 941247895 941247895 860431539 398701155 434347502 434347502 873730404 873730404 528945187 640886824 640886824 503003118 503003118 576097976 576097976 553689152 553689152 545534536 545534536 480475576 480475576 1024175788 1024175788 790755869 335978109 199967808 302078956 354340042 354340042 256193202 185665416 430565238 430565238 293675106 343923872 343923872 861334198 861334198 802104706 761930036 990665090 990665090 352885108 352885108 587337768 587337768 85073332 873721056 873721056 1045832100 1045832100 325537736 418398070 418398070 355647696 2776512 35692304 35692304 216898904 216898904 212957144 235610652 235610652 244292253 638530061 717613269 717613269 721758261 721758261 67127388 225728992 676207904 676207904 629022633 783736757 783736757 765013583 765013583 410332038 606911506 777519757 1042158989 1042158989 894749466 1045763095 1045763095 594817080 488149530 488149530 64041984 590971604 672260613 672260613 571500309 147915044 147915044 159916160 251728068 251728068 88155832 253237384 257691792 257691792 218304540 218304540 166464996 204316760 204316760 179096916 109431196 38661264 743500810 743500810 351188867 890952486 890952486 856455235 584062896 584062896 577377681 577377681 73714056 875658459 881124158 881124158 666839564 666839564 504632846 987818599 987818599 869700577 548357125 694545729 694545729 720796528 720796528 710809716 710809716 545577024 392376762 467855632 467855632 431754720 132543200 838073066 838073066 540897105 540897105 1024268341 1024268341 995782076 848827955 474010755 941237818 941237818 562221153 1070256552 1070256552 761613932 761613932 791294673 791294673 726874045 572660568 786694548 943472810 943472810 1067823694 1067823694 887108382 1007815431 1007815431 779301789 1010333519 1010333519 519999836 519999836 255980750 70937708 336435276 336435276 18934852 160178432 160178432 239657136 239657136 544294173 800300752 800300752 757855533 757167157 721494069 633462789 589955265 587265304 81691164 782314552 782314552 720147810 737598453 737598453 582009681 582009681 528855348 528855348 250672048 250672048 168346644 93323480 972715206 972715206 923824688 923824688 76073800 67407936 348987712 348987712 604833569 604833569 35706320 581534657 581534657 73041096 73041096 509728286 509728286 420095160 505463710 614724357 614724357 243608398 893851800 893851800 871441395 998344131 998344131 172747335 677910864 686196336 686196336 27952160 27952160 25749088 25749088 19522912 32487936 277444416 282466314 282466314 88887624 300424490 300424490 111581272 111581272 283918416 485142596 485297670 485297670 69070344 127114352 218601844 510409700 510409700 374864538 259310798 533292520 533292520 350769540 835658723 835658723 537526992 555168769 556310528 564782465 594673744 594673744 46010576 591173392 591173392 27108416 572962272 572962272 7798097 553648161 620884034 620884034 344588352 610907146 825282604 825282604 693422725 693422725 679232236 679232236 232261356 218136600 163393380 67380589 703137900 703137900 612157508 628926876 628926876 577677901 625196912 625196912 704136060 704136060 803941776 803941776 796336492 796336492 645446921 645446921 617726420 774972189 774972189 774972189 726365501 726365501 494207787 912881459 912881459 174463428 174463428 795101192 795101192 167772180 167772180 665324389 665324389 663038073 663038073 178603856 751000961 751000961 402838482 402838482 204482648 440552086 521151720 521151720 57705984 189318392 246014192 499227822 499227822 334487616 1059586632 1059586632 652743342 652743342 605045479 763400212 763400212 584074833 728031413 966951741 1060166655 1060166655 703801591 582081168 248597260 515900042 515900042 414603958 397592506 289014658 428668558 428668558 372191480 308154406 479859204 479859204 441982574 403048960 410590720 410590720 380368218 380368218 373164930 398963154 398963154 371879304 371879304 130155914 120066240 317989936 330645154 330645154 62876306 77594952 77594952 77594952 270542856 337979658 337979658 91946632 91946632 519274532 519274532 286585508 384334140 384334140 166114478 267596016 306725932 306725932 261784730 169555186 479343208 479343208 207832952 256500924 562396415 562396415 810255886 810255886 1011874959 1011874959 811937985 811937985 968438034 968438034 389109212 588251697 588251697 584581504 251793468 432550874 950351280 1006058487 1006058487 738510918 826403671 826403671 957597816 957597816 264889596 264889596 201368816 89968296 25985736 34114112 34114112 230563880 230563880 151276836 144145012 110630696 110630696 76600352 64969352 335768896 335768896 285244682 340525352 340525352 97803105 838729921 838729921 805472643 276170178 31930848 548744065 548744065 756464884 912614563 912614563 755131097 937205334 1002848840 1002848840 1024508167 1024508167 806913066 757646493 771278701 771278701 666648968 547403494 997430471 997430471 978902912 978902912 981410729 981410729 1045009145 1045009145 575252059 863050475 946304487 946304487 951532359 951532359 346562477 471924974 847290378 847290378 646045785 373838736 373838736 349366042 336904962 384985496 384985496 272180992 270482946 269161480 229538433 229538433 222362244 222362244 639675685 639675685 219726381 192298788 606788753 606788753 914695610 914695610 706290748 386736850 1014049818 1014049818 712773525 959225306 959225306 336685079 281092290 543222914 543222914 208214828 208214828 201867264 310595706 371208744 372429594 377540928 377540928 118491176 118491176 86393456 86393456 93373432 93373432 71410192 188881280 188881280 62968528 26276000 30447668 601468885 706863336 707537185 768470253 768470253 796022032 796022032 54234208 629173297 629173297 575194872 930399011 930399011 74492730 545259585 620763137 883081288 883081288 696305920 696305920 823202401 823202401 460044067 548283730 731289973 731289973 789076430 872173179 872173179 894700203 894700203 706707965 892839900 952282336 952282336 946296294 946296294 1026436458 1026436458 346031656 689571584 689571584 828385808 841249508 892074095 892074095 874483267 420530020 420530020 128010270 128010270 425539585 942543410 942543410 939708423 796187773 1057294437 1057294437 571548177 573170961 757883233 782502237 782502237 467958249 508837918 508837918 73046046 69634816 19997472 26215936 26215936 324670240 324670240 308468066 313064850 337492938 337492938 79664698 305661714 305661714 281338410 880050954 880050954 1023165792 1064537149 1064537149 832102288 1058212168 1058212168 405653000 470026818 573081474 573081474 601026737 1058325573 1058325573 753446640 753446640 401228160 235252014 666633872 676176679 1011427075 1011427075 612474691 612474691 11034944 873074720 889717803 889717803 823341625 890856979 890856979 844595217 909161624 909161624 411894894 411894894 348335768 316021466 406213943 406213943 505789220 589749528 725540661 1022928897 1022928897 1063686430 1063686430 779881483 634938809 936516337 936516337 387365380 387365380 898684394 898684394 533450098 533450098 1030633474 1030633474 857483175 714040122 182839764 263474600 263474600 833432931 833432931 833432931 180169874 800968541 800968541 363072258 928866675 928866675 884547554 828132608 689443713 689443713 541201200 240053656 240053656 148105094 296201728 723764535 956332410 1058876991 1058876991 548281665 548281665 548281665 572771204 710359701 710359701 287883152 1014808797 1014808797 697959000 697959000 974132778 1058555453 1058555453 882410004 368790978 294200418 53002400 53002400 52961408 270537730 270537730 118538808 293527080 342799794 342799794 341255818 307334154 6082176 542196481 542196481 273109120 544397333 544397333 170987540 105520924 652538374 1056390111 1056390111 417269699 508490073 508490073 466892704 303329402 719060957 719060957 286000160 706574336 957063719 957063719 699801745 699801745 690733476 690733476 609457967 965185191 965185191 594092048 725538578 763894287 805363808 805363808 625000617 877790352 1070209164 1070209164 752157286 752157286 411184254 411184254 268437504 268699650 285484058 743019150 743019150 705724777 1048143051 1048143051 291705126 411043328 466666582 973689377 973689377 467277558 995861735 995861735 408659696 313424984 81437248 90570376 90570376 53030064 53188168 53188168 58766636 58766636 105733240 189573772 225798313 752927181 752927181 129353601 558899397 558899397 202701320 301322179 882427467 882427467 847761506 811808904 811808904 703822169 876132939 882329355 882329355 582332561 582332561 922793328 922793328 1003798727 1003798727 1014042473 1014042473 848335933 956565543 956565543 172735124 384105152 984535639 984535639 739491966 622479473 570556416 570560529 570560529 673512849 835405857 835405857 461465684 195103058 807853378 807853378 289141601 540212820 994229663 994229663 606252446 815091178 815091178 723928167 459297734 459297734 609299212 609299212 546159452 585441438 704840208 704840208 559091712 279221120 279221120 639818136 639818136 647631360 647631360 106260376 273441538 273441538 404289824 404289824 951929746 951929746 828692930 435321858 694227976 918052983 918052983 867029143 867029143 684534981 684534981 881209037 886703967 886703967 1002441863 1002441863 977045010 844629380 154376480 154376480 20735780 3937280 50073600 50073600 18618848 134879937 610931845 680045765 680045765 153977645 753978061 753978061 568328557 741409984 741409984 680006216 680006216 217515016 149877248 136295444 136295444 38836288 9486976 10885440 304169712 304169712 112485362 446166675 953859271 973476207 973476207 689121695 689121695 624420550 624420550 710278240 759958032 759958032 713295553 79496500 384583320 384583320 756185258 756185258 794640589 794640589 757383981 604106052 604106052 512563562 895934602 895934602 614674761 614674761 885068162 885068162 772081695 1006897181 1006897181 533488044 836776928 838500339 838500339 154264658 874486786 874486786 269385227 393634156 962960282 962960282 902039787 335610250 671103117 671103117 174393414 872671308 953002266 953002266 411546114 411546114 503329694 503329694 207761438 738721802 870454267 870454267 737018515 506793933 349186756 218111546 901707052 980290131 980290131 471970188 511967504 511967504 873730404 873730404 757143597 790953984 790953984 503003118 841150482 922927378 922927378 553689152 553689152 537217061 55466688 347114416 636867362 636867362 397082265 495045490 495045490 199967808 302078956 354340042 354340042 256193202 177792038 430565238 430565238 293675106 213654952 213654952 861334198 861334198 802104706 761930036 990665090 990665090 522456488 522456488 290607664 754524658 754524658 603882619 773689993 1045832100 1045832100 325537736 418398070 418398070 355647696 24302496 57659136 57659136 216898904 219275820 219275820 235610652 235610652 97776360 192730624 192730624 243564552 243564552 176474196 169082896 135531012 112035332 214032588 214032588 720211718 815008323 815008323 765013583 403907530 403907530 237594206 503371796 597872998 894749466 894749466 404305423 367205958 522418210 522418210 616330544 616330544 678767493 678767493 593256613 843714806 843714806 729351953 705824344 525926702 264333004 261744252 257691792 654873332 683885676 683885676 731035393 731035393 685319877 713942037 713942037 677195397 1032840068 1060685631 1060685631 890952486 920696744 920696744 432879059 1056473518 1056473518 834193251 852806355 875658459 881124158 881124158 666839564 666839564 504632846 270713350 403081474 403081474 409330754 409330754 671106816 720796528 720796528 768514701 768514701 956253635 956253635 820559815 1070191022 1070191022 756937783 586365010 705799826 705799826 568102122 568102122 269170240 818942530 818942530 500401473 436261088 626560457 626560457 1070256552 1070256552 385102770 385102770 791294673 791294673 726874045 558573815 456203282 1041782112 1068684159 1068684159 314587672 887108382 1007815431 1007815431 1049278171 1049278171 1010333519 410731923 251271132 129765240 129765240 251922696 251922696 53267760 249375472 258159036 258159036 239657136 544294173 710298168 757855533 757855533 757167157 721494069 633462789 727534596 727534596 573940429 782314552 782314552 662273435 662273435 737523952 971246055 971246055 959714551 908215829 908215829 772839230 27321856 210772405 1030451216 1030451216 923824688 923824688 362430610 362430610 365151552 429450081 882038688 882038688 413799750 717848848 717848848 643473681 268436892 268436892 253399214 574734671 933437630 933437630 1023471668 1023471668 893851800 893851800 871441395 998344131 998344131 298378082 677910864 686196336 686196336 27952160 27952160 25749088 25749088 19522912 32487936 277444416 277444416 296707456 298444002 298444002 93563970 9910848 23471072 302383456 302383456 362380240 362380240 246363158 218974278 218974278 352740016 374864538 374864538 346757720 305999634 329761700 329761700 981741626 981741626 848697939 555168769 555168769 552339473 594673744 594673744 564186672 545951745 579124296 604597529 604597529 593969857 346715266 553648161 620884034 620884034 344588352 610907146 610907146 542148900 693422725 693422725 679232236 679232236 492383164 469296214 431827028 193265920 703137900 703137900 612157508 628926876 628926876 577677901 625196912 625196912 704136060 704136060 77603456 420675758 796336492 796336492 645446921 721684533 1024475443 1024475443 695839884 695839884 20762508 3985152 3965184 536973568 536973568 174463428 174463428 795101192 873031986 873031986 640421145 1032357242 1032357242 166458852 166458852 178603856 178603856 175093572 277271170 277271170 299710016 299710016 412368602 449642650 449642650 163587786 96994324 524364828 524364828 334487616 781001290 781001290 973284694 973284694 605045479 605045479 290456352 290456352 586670994 586670994 550114497 190020722 190020722 40425908 35948692 191026144 191026144 150360580 135437252 29885664 105583016 372191480 372191480 218367280 218367280 192944268 192944268 327175896 363065706 363065706 401639904 401639904 310727344 398963154 398963154 371879304 380691058 380691058 375574938 375574938 330645154 330645154 348917224 348917224 77594952 77594952 270542856 337979658 337979658 367272876 367272876 519274532 519274532 286585508 304239974 304239974 473433870 473433870 306725932 1049265367 1049265367 469811214 1045988001 1045988001 167290868 256500924 562396415 571846955 810255886 841112627 1011874959 1011874959 811937985 811937985 693208336 610279497 610279497 588251697 588251697 845264507 845264507 628188364 950351280 1038275055 1038275055 936821585 689832518 689832518 957597816 957597816 264889596 264889596 406374150 406374150 19923744 34114112 34114112 230563880 230563880 175084976 144145012 110630696 110630696 76721480 277146944 335768896 335768896 353026048 353026048 340525352 97803105 838729921 838729921 805472643 276170178 19083552 76491792 116399928 614411697 614411697 337241602 337241602 349987128 589631050 830509387 883033154 883033154 87871272 340602170 388194746 394837312 394837312 608097146 997430471 997430471 428940315 477730456 884150510 906370075 906370075 961243740 1044741208 1044741208 311933578 830648744 993516207 993516207 122890775 5977472 847290378 847290378 690580224 690580224 349366042 349366042 282787850 384985496 384985496 112723800 119086504 119086504 229538433 229538433 222362244 222362244 639675685 639675685 219726381 192298788 606788753 606788753 914695610 914695610 706290748 386736850 1014049818 1014049818 712773525 959225306 959225306 964261647 964261647 543222914 543222914 208214828 454633512 454633512 941046279 941046279 822470691 822470691 538063468 406824772 243667532 86393456 138988244 138988244 93373432 71410192 46467536 153097840 153097840 146842176 151011604 601468885 706863336 788906412 788906412 768470253 796022032 796022032 538646121 667068032 667068032 617982992 930399011 930399011 607973096 765022105 772030485 883081288 883081288 631504905 2228480 536875264 536875264 849707506 853830035 853830035 669084627 789076430 872173179 872173179 894700203 894700203 715401673 892839900 892839900 874382155 874382155 714345045 1026436458 1026436458 346031656 479457286 479457286 412092994 841249508 892074095 892074095 874483267 420530020 420530020 420806672 420806672 425539585 576478336 729567984 729567984 453543124 453543124 290499634 579432018 579432018 550108225 188842464 539134272 991189302 991189302 508837918 286225216 286225216 38123928 65741840 65741840 37818016 298883576 308468066 313064850 337492938 337492938 120626712 305661714 305661714 281338410 880050954 880050954 772556466 1064537149 1064537149 348205748 1058212168 1058212168 405653000 1067244101 1067244101 573081474 1042569593 1042569593 909542779 753446640 753446640 907595552 907595552 666633872 676176679 1011427075 1011427075 612474691 612474691 11034944 554321441 554321441 823341625 924318267 924318267 931112883 938387321 938387321 925599506 395420400 395420400 60429936 81987248 81987248 436243588 544306262 589749528 725540661 1022928897 1022928897 619063266 619063266 369976532 437120022 899950926 899950926 935949518 935949518 898684394 898684394 533450098 533450098 1030633474 1030633474 857483175 714040122 191265201 1015457087 1042617455 1042617455 833432931 833432931 715728213 850152539 850152539 682452056 928866675 928866675 884547554 574489995 689443713 1004649694 1004649694 477023509 579066759 579066759 1013693991 1013693991 956332410 1058876991 1058876991 890104875 944028971 944028971 572771204 710359701 710359701 189668532 218993272 218993272 282596130 282596130 119669032 362811688 362811688 368790978 368790978 389621554 389621554 371486208 84722704 120587288 186134306 504178958 644121105 644121105 520399550 979700650 979700650 876503587 542196481 542196481 270585473 544397333 786113624 786113624 113324760 648167525 648167525 643961248 336752749 508490073 508490073 466892704 386593896 147161278 17695776 286000160 706574336 957063719 957063719 275124277 136561648 35848192 35848192 104374974 443038386 443038386 316079618 304296210 304296210 360710872 360710872 132120936 877790352 907679259 907679259 752157286 752157286 999102221 999102221 938758070 938758070 941790350 941790350 743019150 655544889 377430916 377430916 371245338 411043328 411043328 268960418 46682176 467277558 467277558 437867028 408659696 313424984 81437248 81437248 70872152 59294832 40112224 53068152 58766636 58766636 105733240 194515892 194515892 681593908 681593908 177660001 146251556 61618180 327941186 327941186 307124720 847761506 847761506 811808904 811808904 343270080 841200196 841200196 176255956 582332561 602746353 628422176 628422176 1003798727 1003798727 1014042473 1014042473 989886576 989886576 956565543 271631108 447677138 984535639 984535639 739491966 622479473 565367075 565367075 411305031 673512849 835405857 835405857 461465684 536911937 536911937 567370304 567370304 555475776 994229663 994229663 606252446 815091178 815091178 723928167 459297734 459297734 609299212 609299212 546159452 546159452 704840208 704840208 559091712 56799472 549458385 564183393 564183393 561021744 562403616 562403616 79736704 89327937 788044853 788044853 788747996 788747996 575915540 228251244 228251244 918052983 918052983 867029143 867029143 684534981 684534981 881209037 886703967 886703967 1002441863 1002441863 977045010 453247030 453247030 268453940 168171796 19925732 167773380 167773380 145530788 225067712 225067712 680045765 680045765 234723172 753978061 753978061 568328557 741409984 741409984 680006216 680006216 217515016 145825612 135718336 10301376 69725154 276100002 276163458 304169712 304169712 112485362 286519440 286519440 299174050 299174050 289680098 325931168 585330054 585330054 710278240 759958032 759958032 713295553 168420372 466479264 466479264 639444528 696497161 696497161 610550020 610550020 604106052 604106052 771883238 892592820 892592820 541274241 325204231 104198956 444672073 772081695 1006897181 1006897181 293768470 456779364 456779364 430354806 1003048183 1003048183 943871732 269385227 393634156 962960282 962960282 1041182424 1041182424 703019493 17784197 9476608 9476608 305026567 676555671 677103362 677103362 310514112 310514112 573183249 917710737 917710737 870454267 854330835 816915267 816915267 244708171 616324382 980290131 1063918039 1063918039 530841608 511967504 759312656 759312656 757143597 865312770 865312770 151003687 841150482 922927378 1020019306 1020019306 798407257 861452867 861452867 449899107 1014889828 1014889828 811328241 692109477 495045490 149966932 316209236 449710302 449710302 214250178 168932872 196329988 196329988 194837016 213654952 213654952 74687264 86594048 86594048 69226632 206048482 344459570 522456488 853556509 853556509 754524658 754524658 621263246 519328304 519328304 410292826 883084067 883084067 327211226 327211226 168243648 168243648 550111616 609102433 636561833 636561833 592049153 551253904 609368321 653963332 653963332 210374404 211288588 227559428 227559428 180404836 177248532 679353749 679353749 720211718 815008323 815008323 336145993 258027632 258027632 156287652 255869464 255869464 824454566 824454566 622059968 622059968 522418210 522418210 616330544 712408001 712408001 678767493 593256613 843714806 843714806 729351953 705824344 525926702 264333004 261744252 194587292 654873332 683885676 683885676 731035393 731035393 685319877 713942037 713942037 677195397 1032840068 1060685631 1060685631 570121652 920696744 920696744 629780656 1056473518 1056473518 834193251 852806355 852806355 658497249 84334632 251927070 251927070 229729828 563215845 563215845 542639745 681854049 681854049 671106816 685974145 685974145 768514701 768514701 956253635 956253635 820559815 1070191022 1070191022 756937783 586365010 915583576 930526539 930526539 568102122 255006302 613338312 613338312 879864296 879864296 831834723 626560457 673497156 673497156 490995882 606017199 606017199 528760272 822945396 822945396 535302738 1041782112 1068684159 1068684159 1047730384 1047730384 1044056743 1044056743 1049278171 1049278171 848851362 848851362 488966272 520883262 520883262 487334268 220315660 134234140 249375472 258159036 258159036 140109432 262717336 710298168 710298168 218518193 227725932 227725932 176950356 727534596 727534596 573940429 164683976 155299584 662273435 662273435 737523952 971246055 971246055 959714551 908215829 908215829 772839230 187369280 210772405 1030451216 1030451216 412739142 598139413 598139413 362430610 365151552 429450081 882038688 882038688 413799750 717848848 717848848 643473681 1006843281 1006843281 807510041 574734671 933437630 933437630 1023471668 1023471668 401468454 401468454 461233410 461233410 147516626 298378082 299554530 299554530 278021280 43041360 49406928 59042416 59042416 37863584 11134816 23098496 268436042 347868232 347868232 337905410 269486400 9910848 371509296 371509296 354051778 362380240 443436044 443436044 441476672 419842600 419842600 528895286 528895286 404852174 324000814 464138676 464138676 981741626 981741626 848697939 538451472 646460905 646460905 555486272 589340193 606274992 606274992 579124296 604613913 604613913 593969857 538108840 559076001 559076001 537417376 337776906 270696456 666107984 666107984 354422602 32247232 96840132 492383164 492383164 469296214 431827028 193265920 245214828 245214828 265563328 265563328 250629904 210889148 210889148 144258348 91833700 86058400 77603456 420675758 604244032 612368457 612368457 721684533 1024475443 1024475443 960039686 960039686 609561225 609561225 222044557 84411432 605659749 705765957 1025520415 1025520415 873031986 873031986 791585057 1032357242 1032357242 201524744 201524744 120136596 36591552 36591552 14843280 18220288 299710016 299710016 412368602 449642650 449642650 306184720 306184720 524364828 524364828 62592640 781001290 781001290 973284694 973284694 455321237 23763522 290456352 290456352 586670994 586670994 550114497 190020722 571867952 571867952 55982192 280105794 427217334 427217334 181537852 442749220 442749220 232734316 202049642 218367280 305661458 305661458 335879728 335879728 363065706 374401368 401639904 401639904 310727344 379609672 379609672 348375416 380691058 380691058 375574938 375574938 79091346 274891872 348917224 348917224 30150080 90768320 90768320 336153474 336153474 367467146 367467146 519123008 519123008 464576546 421527846 304239974 473433870 473433870 445297778 1049265367 1049265367 469811214 1045988001 1045988001 339288842 270251312 629080240 629080240 809057664 841112627 907331202 907331202 626863337 626863337 65013200 610279497 610279497 822105344 919811283 919811283 892590147 983301271 983301271 1038275055 1038275055 936821585 689832518 689832518 892094736 892094736 1059148553 1059148553 1032053047 998428791 596440866 421354084 151908130 60319680 175084976 175084976 54635376 161925140 178236160 178236160 277146944 277146944 69242178 353026048 353026048 863488 2427904 2696448 2696448 538576384 538576384 19083552 19083552 30577152 269001218 269001218 337241602 337241602 68806152 604848384 604848384 69471497 87871272 495731041 780402999 780402999 770608493 658583608 608097146 608097146 133830648 133830648 438306944 1061693721 1061693721 654378550 1039147486 1044741208 1044741208 323748864 830648744 993516207 993516207 122890775 118480024 693941504 693941504 690580224 690580224 13495488 10345152 8837184 6834752 3153088 7740288 79900160 79900160 76267208 51848336 51848336 2171136 34709632 43781712 43781712 5108304 210977048 246089496 246089496 171372580 171372580 142281208 142281208 251775069 254092545 254092545 203560231 964261647 964261647 492855460 205756582 146923716 454633512 454633512 941046279 941046279 822470691 822470691 538063468 406824772 243667532 10736204 138988244 138988244 47748368 46467536 169678032 177379204 177379204 174121856 174121856 254862096 596648192 788906412 788906412 577055121 67387709 41261540 538646121 667068032 667068032 617982992 617982992 721471553 607973096 765022105 772030485 772030485 503496989 470309896 68060174 536875264 536875264 849707506 853830035 853830035 669084627 544660113 719746304 719746304 566632437 720898005 720898005 715401673 534059058 534059058 714345045 714345045 446828886 446828886 396266612 848348730 848348730 868538390 868538390 904843493 904843493 837598635 187918624 187918624 420806672 420806672 386982406 576478336 729567984 729567984 453543124 453543124 290499634 579432018 579432018 550108225 188842464 539134272 991189302 991189302 269923828 286225216 286225216 285174978 278831488 65741840 37818016 123454074 318912642 328080498 387764808 387764808 120626712 120626712 84935208 45417216 735347316 735347316 578555187 961544225 961544225 6440136 80261512 408819712 821632799 1067244101 1067244101 386536506 1042569593 1042569593 226811700 304322448 304322448 907595552 994796120 994796120 84812160 84812160 877761056 877761056 538307073 605358601 605358601 658641081 658641081 924318267 924318267 931112883 938387321 938387321 925599506 463671734 463671734 60429936 490856702 490856702 436243588 544306262 544306262 8986125 843649708 843649708 147733531 104924224 623550838 1032779103 1032779103 899950926 935949518 1055950790 1055950790 418923487 364953834 364953834 1014641186 1014641186 320678541 191265201 191265201 1015457087 1042617455 1042617455 41807760 604614348 715728213 872994599 872994599 682452056 867574527 950575860 950575860 659154739 273317376 1004649694 1004649694 477023509 579066759 579066759 1013693991 1013693991 1021029911 1021029911 991330737 991330737 944028971 944028971 409867719 403359168 134751537 705765909 705765909 727970229 727970229 670746124 87208744 87208744 362108696 362108696 288360226 389621554 389621554 371486208 103352096 120587288 186134306 504178958 644121105 644121105 520399550 979700650 979700650 876503587 540243969 270585473 270585473 145455764 786113624 786113624 113324760 652515334 652515334 533202119 749889664 749889664 446001804 386593896 386593896 1038174401 1038174401 465588314 465588314 557950433 557950433 999350801 999350801 839124258 839124258 276596258 223118664 223118664 123472088 280506664 311725832 311725832 649774537 656285241 656285241 832181859 832181859 1044909703 1044909703 999102221 999102221 938758070 938758070 941790350 941790350 612274310 739288888 739288888 611414541 371245338 347206686 184231436 569442621 569442621 526406024 798044881 798044881 159441072 78043464 78043464 41960480 59294832 71868608 71868608 48496880 48496880 62520400 62520400 194515892 194515892 681593908 681593908 191099316 566758373 566758373 638381864 638381864 219267593 219267593 690654735 907041803 907041803 307692481 841200196 841200196 581420480 581420480 602746353 602746353 592260273 592260273 12786801 0 0 989886576 989886576 387960183 271631108 447677138 838503510 838503510 670750713 421928941 526422156 526422156 411305031 830535843 830535843 556927976 610480521 610480521 610529673 610529673 567370304 555475776 132156528 119210424 50332496 50332496 123071192 123071192 66914024 97126344 305210006 305210006 309889304 309889304 275007304 176300944 94897512 401147376 549458385 564183393 564183393 379661616 562403616 562403616 79736704 89327937 788044853 788044853 788747996 999282835 999282835 315162722 189444585 189444585 253964604 697341187 697341187 379184730 999903363 999903363 500308572 500308572 464784246 464784246 437643556 453247030 453247030 268453940 168171796 104683208 167773380 167773380 145530788 225067712 229497324 229497324 164802408 234723172 479404706 479404706 212887948 496177188 496177188 476189070 428905194 363700226 337225312 337225312 278711874 271617344 276100002 276163458 289434400 289434400 54547072 286519440 1044956319 1044956319 1041673311 1048001439 1048001439 707006533 707006533 779176633 779176633 704114817 585920812 585920812 588849728 588849728 59645040 59645040 58978416 610550020 610550020 167886857 665119084 771883238 771883238 736137216 830488994 830488994 232833345 156502800 269756928 269756928 187695908 271476390 427291636 427291636 999307009 1003048183 1003048183 943871732 423815077 133451016 226771861 766815158 1041182424 1041182424 703019493 625886440 1057471627 1057471627 425667269 676555671 677103362 677103362 213390558 213390558 573183249 917710737 917710737 854330835 854330835 832909651 1055264431 1055264431 357837895 505669338 1063918039 1063918039 530841608 481364080 759312656 759312656 455229689 865312770 865312770 704177900 704177900 466095342 1020019306 1020019306 798407257 861452867 861452867 641791145 1014889828 1014889828 811328241 950142157 950142157 920776406 464110970 449710302 449710302 269680982 269680982 196329988 196329988 59327984 59327984 25740562 932791894 932791894 966820978 966820978 851493075 710436678 465442248 853556509 853556509 750529482 750529482 684193989 869752417 869752417 585028106 883084067 883084067 492974634 327211226 211887692 168243648 550111616 609102433 636561833 636561833 592049153 551253904 609368321 653963332 653963332 210374404 211288588 227559428 227559428 180404836 177248532 679353749 679353749 639812385 180828372 644167736 644167736 657795897 657795897 108079469 265326496 727876632 764461152 764461152 622059968 622059968 44353848 768112488 768112488 712408001 712408001 557625237 538317073 160633572 160633572 136381728 151594020 151594020 92292912 92292912 61866296 486575834 486575834 215943268 322613814 322613814 247067616 142680132 272387954 272387954 191123696 522410890 522410890 229851664 83897036 50857008 629780656 629780656 79691976 547828200 562301025 658497249 658497249 219793972 372251436 372251436 249365118 563215845 563215845 542639745 681854049 681854049 629389545 167184260 167184260 642608201 642608201 69616809 50122200 172454369 172454369 683083904 683083904 304950341 915583576 930526539 930526539 638322562 638322562 308994167 952770276 952770276 879864296 951517901 951517901 952735427 952735427 490995882 606017199 824190832 824190832 822945396 822945396 535302738 535302738 422576922 908656717 1047730384 1047730384 1044056743 1044056743 672317624 672317624 848851362 848851362 865019131 865019131 546415488 546415488 220315660 134234140 7636480 8179584 39373712 39373712 658702481 658702481 741716156 741716156 665605217 731664457 731664457 707091997 223470252 750507400 750507400 557463148 225162924 158540808 305698248 383514330 383514330 344569194 330176834 318035214 318035214 187369280 469833424 613990553 613990553 317785286 598139413 598139413 176986248 67654208 70558056 70558056 38577536 141579781 712238528 712238528 628835496 1006843281 1006843281 807510041 560608289 381438751 12767424 66464490 110897852 401468454 401468454 461233410 461233410 147516626 66377072 63489264 63489264 43041360 43041360 49406928 59042416 59042416 37863584 11134816 2906112 269756480 347868232 347868232 337905410 269486400 85755912 371509296 371509296 354051778 354051778 443436044 443436044 441476672 419842600 419842600 528895286 528895286 404852174 324000814 464138676 464138676 344082965 344082965 538451472 538451472 646460905 646460905 559155873 589340193 606274992 606274992 541679616 604613913 659131560 659131560 614006817 559076001 559076001 665516136 985941323 1017682365 1017682365 947932436 555492993 555492993 579396544 579396544 42224768 40732672 63201728 89997476 245214828 245214828 265563328 265563328 199610972 210889148 210889148 144258348 91833700 86058400 630078664 630078664 604244032 612368457 612368457 475529762 493373070 493373070 960039686 960039686 609561225 823927311 823927311 622380585 605659749 705765957 1025520415 1025520415 723685664 791585057 791585057 619261132 619261132 244735341 201524744 163176896 189730116 189730116 271322370 305046274 305046274 306157392 314573904 314573904 47253506 306184720 306184720 281018578 62592640 465045188 465045188 563221107 857249424 857249424 570082993 600495345 600495345 701928997 701928997 308004817 678957574 678957574 602632336 571867952 192108164 280105794 427217334 427217334 407248804 442749220 442749220 232734316 202049642 202049642 305661458 305661458 440143888 440143888 372846890 386066658 386066658 287328570 382042146 382042146 379609672 49152 3153952 19997440 19997440 4264704 4264704 135168 19405088 122170376 122170376 90768320 90768320 336153474 336153474 367467146 367467146 519123008 519123008 464576546 421527846 168579104 322995316 322995316 445297778 445297778 355500810 355500810 343020426 339288842 339288842 270251312 629080240 629080240 611176496 392742330 392742330 280533968 280533968 269747698 318966050 378561882 378561882 822105344 919811283 919811283 892590147 983301271 983301271 945865095 945865095 487639723 990785808 990785808 403179523 805758751 1061729929 1061729929 1032053047 998428791 596440866 421354084 347756360 434119682 434119682 171654704 452449074 452449074 178236160 178236160 57678128 109316504 109316504 98881760 117761080 364625320 364625320 538278273 548646849 549658560 549658560 8652864 275010112 332011082 886580307 886580307 290141346 72164642 269196544 604848384 840976394 840976394 805344530 495731041 780402999 780402999 770608493 658583608 355215786 209830144 177897652 177897652 438306944 1061693721 1061693721 654378550 1039147486 1039147486 79714752 323748864 394635592 394635592 128489584 70118664 118480024 118480024 73026560 327872688 364171410 364171410 351586970 278151832 6834752 3153088 7740288 79900160 79900160 151589249 151589249 187811796 187811796 605706989 727186973 727186973 781851805 781851805 246089496 246089496 171372580 171372580 169415216 169415216 151729188 302564370 836441362 836441362 945882539 945882539 965741184 965741184 138680320 138680320 138547332 4194432 12583232 12583232 10485824 202377552 244583004 244583004 178980700 176633940 143949580 143949580 136653060 169678032 177379204 177379204 174121856 536887808 745587425 745587425 596648192 572909841 628185097 677800945 677800945 569586657 721618920 721618920 604054581 176160852 537412688 793757117 793757117 745003264 745003264 744888717 677489100 677489100 295782496 295782496 837320002 837320002 828510627 587430531 544660113 542179776 549454017 566632437 720898005 720898005 488271725 534059058 534059058 382810324 402921808 446828886 446828886 396266612 848348730 848348730 868538390 983505187 983505187 937103755 937103755 250733332 250733332 126050936 177345056 177345056 152026772 275360640 306909010 306909010 168204534 55674880 38164560 38164560 38466944 38466944 167821332 171170132 199652256 199652256 274738530 285174978 351935728 378800730 378800730 357572832 357572832 319836874 328080498 387764808 387764808 36538080 121045568 121045568 84943344 177419300 578555187 578555187 991778130 991778130 404134551 147379200 447558112 821632799 821632799 734919187 455970514 246150490 246150490 200519708 304322448 304322448 233358828 994796120 994796120 897554465 897554465 877761056 877761056 538307073 605358601 823399425 823399425 892334850 892334850 648068179 648068179 348823521 421724958 459420022 463671734 499493061 973416471 973416471 827680503 559088765 643784808 643784808 1037944381 1037944381 843649708 147733531 1042567660 1042567660 1032779103 1032779103 738323188 936504143 1055950790 1055950790 490242123 490242123 364953834 450104022 1068245031 1068245031 608446088 435010563 512305262 512305262 619946134 848421459 848421459 35860752 872994599 872994599 393143350 867574527 950575860 950575860 873236353 285742265 168498192 406978588 406978588 398671698 398671698 322838322 502010130 1060737532 1060737532 991330737 991330737 1045504671 1045504671 421537209 793850079 793850079 1060185876 1060185876 727970229 727970229 670746124 94775672 94775672 903889528 903889528 859359027 812155568 17573128 103352096 103352096 86339088 35440920 891380245 891380245 593512633 522248982 522248982 322979980 3252992 43517520 44638976 44638976 145455764 268513282 268513282 299185540 817507045 817507045 533202119 749889664 749889664 16779296 155535360 323496418 1038174401 1038174401 465588314 465588314 557950433 557950433 999350801 999350801 839124258 839124258 276596258 223118664 223118664 123472088 280506664 311725832 311725832 649774537 656285241 656285241 832181859 832181859 1044909703 1044909703 805571460 716281349 517206879 383336790 404767392 404767392 592131249 739288888 739288888 611414541 187860056 187860056 184231436 569442621 569442621 526406024 798044881 798044881 403730616 385720368 369965042 369965042 362021834 608359603 608359603 893334848 893334848 867813083 890558625 890558625 647547305 647547305 565498145 565498145 566758373 566758373 638381864 638381864 675350916 689493381 690654735 907041803 907041803 575413475 575413475 545059777 581420480 586379408 586379408 292533280 292533280 295569746 320080434 566581938 794208117 794208117 169846012 18939489 110445568 266865072 926339401 926339401 670750713 478152894 744558826 744558826 608395433 830535843 830535843 556927976 610480521 610480521 610529673 610529673 292950498 388696698 388696698 296528248 123391786 114736800 114736800 14080656 8395392 217012672 305210006 305210006 325249128 325249128 275007304 176300944 94897512 401147376 401147376 361629032 553654576 553654576 268447752 298516682 298516682 328532114 328532114 134402052 925376335 1019086139 1019086139 971034075 398362338 674796193 674796193 892371107 892371107 806389640 999903363 999903363 538449450 500308572 464784246 464784246 437643556 437643556 185640966 151044132 137315632 104683208 104683208 29565312 77824864 77824864 229497324 229497324 220370340 67707200 479404706 479404706 1034205607 1038431085 1038431085 881926958 428905194 816226372 816226372 550837702 544974660 550256396 550256396 86322624 65807840 81184184 102797408 166726779 1044956319 1044956319 1041673311 1048001439 1048001439 707006533 707006533 779176633 779176633 704114817 585920812 922747318 922747318 915055882 915055882 562595020 58978416 58978416 61212677 61212677 665119084 665119084 405004797 348477768 830488994 830488994 743319657 539336017 251479296 190841268 307045136 307045136 427291636 427291636 999307009 999307009 407456902 423815077 423815077 133451016 1011470720 1011470720 155254784 155263140 625886440 625886440 1057471627 1057471627 425667269 303701636 306188674 306188674 213390558 469812750 469812750 0 572089232 572089232 811743552 832909651 1055264431 1055264431 371401952 401217018 413216058 991561740 991561740 726410941 696526310 696526310 625981258 781952112 781952112 904537226 904537226 931709186 931709186 746989840 782446941 782446941 641791145 641791145 339418410 339418410 644806758 950142157 950142157 920776406 464110970 250098182 250098182 269680982 269680982 45089616 109123864 129119336 129119336 128710008 932791894 932791894 966820978 966820978 851493075 710436678 1041633441 1041633441 1041784717 1041784717 637335795 684193989 869752417 869752417 585028106 478323314 709362482 838665875 838665875 815471959 1018114387 1018114387 121676819 12896448 10756992 10125920 50488120 87631656 237570756 237570756 184208996 22949824 22949824 16998576 33640976 55887952 62915296 639812385 639812385 180828372 644167736 644167736 657795897 657795897 479864250 358410400 727876632 960942182 1023428527 1023428527 403493195 424772140 1008048522 1008048522 441337449 699606144 730647669 730647669 160633572 160633572 225511840 225511840 142680780 210085704 210085704 214182188 214182188 161593628 220618336 220618336 151653450 151653450 352589088 352589088 92434524 436545028 436545028 368202686 1025282290 1025282290 940126892 940126892 410150043 372495130 372319002 118749994 85053488 85053488 219793972 372251436 372251436 249365118 9400384 9400384 8564224 28547136 629594400 801753160 801753160 153394236 671361308 671361308 605027337 723872019 1039473481 1039473481 890276651 778708601 660109270 558403224 558403224 432571464 638322562 638322562 621856144 952770276 952770276 744490848 951517901 951517901 952735427 952735427 305812704 305812704 824190832 824190832 332740626 431831502 431831502 422576922 455165159 613601330 613601330 551761408 551761408 485449426 485449426 575607108 752992536 752992536 865019131 865019131 546415488 546415488 403179028 12895300 11763280 146371140 146371140 40968756 658702481 658702481 741716156 741716156 665605217 731664457 731664457 707091997 190477632 750507400 750507400 557463148 225162924 158540808 954730736 971245607 971245607 344569194 232660716 318035214 318035214 157753510 469833424 469833424 317788384 441524236 447726648 497501088 497501088 366163978 470345899 470345899 141434244 293771687 712238528 712238528 32564128 552719168 552719168 555881701 677129088 680728256 683284293 683284293 538253952 419375938 283363200 278607426 295049826 295049826 272427474 313924434 330439024 330439024 44175696 27658256 30409440 30409440 26774496 29151072 299517376 299517376 277035586 270542880 270542880 269484546 85755912 343968832 343968832 69109000 69754376 69754376 27560312 109365336 134220288 135531012 280799748 280883010 286762066 459297098 459297098 412328953 1013227775 1013227775 983881139 983881139 567165003 567165003 559155873 357964435 304383032 321251634 539295896 539295896 659131560 659131560 614006817 484082958 746209996 746209996 985941323 1017682365 1017682365 947932436 555492993 555492993 579396544 579396544 292825952 358124072 558163081 558163081 165219812 741345345 741345345 134219560 167992560 204992764 625889509 625889509 635009121 750884364 750884364 630078664 648751424 648751424 588810448 717876864 717876864 1012396766 1012396766 637535680 991813739 991813739 823927311 622380585 639895553 639895553 621724753 621724753 598008096 598008096 224990112 619261132 619261132 571750833 571750833 172014704 711764389 711764389 271322370 305046274 305046274 306157392 314573904 314573904 65019456 35917344 281018578 281018578 306089378 465045188 465045188 563221107 857249424 857249424 570082993 600495345 600495345 701928997 701928997 308004817 678957574 678957574 602632336 315228162 308806018 314213538 314213538 407248804 407248804 295862594 294496576 294496576 102945048 123855752 123855752 179377672 440143888 440143888 372846890 386066658 386066658 287328570 382042146 382042146 371227656 382569688 382569688 386511760 386511760 328542738 296033010 290855586 390201944 390201944 122170376 72620232 72620232 68421768 12436096 295969192 339738762 339738762 402653184 402653190 982270003 982270003 728286645 728286645 300419541 275040642 299539707 607261449 607261449 467138119 48006496 603259440 603259440 611176496 914660291 914660291 898912289 829840408 758610799 758610799 705543749 673249301 378561882 399069256 399069256 698557396 710276065 710276065 695282021 945865095 945865095 487639723 990785808 990785808 207494796 559748140 1061729929 1061729929 809635971 809635971 560117066 347756360 347756360 434119682 434119682 171654704 452449074 452449074 63058512 63058512 57678128 292964690 292964690 98881760 117761080 364625320 364625320 538278273 548646849 549658560 549658560 12320832 275010112 332011082 886580307 886580307 592828872 592828872 568777185 371083259 840976394 840976394 805344530 289693504 272271586 282090024 319216368 355215786 355215786 84144058 177897652 177897652 167478640 200543220 200543220 369535068 442683798 442683798 214032588 306762408 306762408 307795466 368846610 368846610 342565018 342565018 274799136 327872688 364171410 364171410 351586970 339756184 113863314 74972410 397888552 397888552 333073184 151589249 151589249 187811796 187811796 605706989 727186973 727186973 781851805 781851805 770260941 213755180 573212757 573212757 169415216 176609364 176609364 302564370 836441362 836441362 820737035 970196708 970196708 965741184 155648001 290926244 290926244 946464135 946464135 822922275 822922275 761523400 346665996 382510795 741727001 741727001 552265625 772799517 772799517 181003476 1024672575 1024672575 716367488 716367488 745587425 745587425 570452200 572909841 628185097 677800945 677800945 569586657 721618920 721618920 687900192 176160852 537412688 793757117 793757117 745003264 745003264 744888717 677489100 677489100 644129564 624019881 537465360 575280273 638360577 643693849 643693849 754429128 754429128 873009415 873009415 1059730290 1059730290 504362002 504362002 688168305 688168305 119088760 1006701691 1006701691 293904384 293988450 807543336 983505187 983505187 937103755 937103755 935342870 667078705 144769134 478220490 478220490 276824130 276824130 279363872 279363872 46890944 46890944 38164560 38164560 38466944 38466944 15190272 15079872 15913920 15913920 19761216 27263328 351935728 378800730 378800730 357572832 357572832 319836874 122344632 122344632 117410704 117410704 121045568 177931412 194246496 194246496 177419300 60294768 991778130 991778130 577285633 539043328 539043328 461921094 461921094 455970514 455970514 246150490 672186985 672186985 565351972 607285160 607285160 73873800 353806849 897554465 897554465 873518506 873518506 537565731 287100450 823399425 823399425 892334850 892334850 907920683 907920683 348823521 421724958 421724958 333826500 499493061 973416471 973416471 827680503 923136024 923136024 643784808 1037944381 1037944381 634709544 634709544 1042567660 1042567660 996467530 996467530 738323188 936504143 936504143 812393324 1029982671 1029982671 811790467 811790467 1068245031 1068245031 608446088 435010563 512305262 1066733382 1066733382 848421459 848421459 748690896 460061994 460061994 434681708 829058976 829058976 873236353 873236353 726332593 726332593 518292348 518292348 1014894237 1014894237 1023876028 1023876028 1060737532 1060737532 1000564981 1000564981 1045504671 1045504671 807406880 793850079 793850079 1060185876 1060185876 423809190 423809190 268828924 94775672 94775672 903889528 903889528 859359027 812155568 358687146 347660656 125306256 124257720 205531162 891380245 891380245 593512633 522248982 522248982 322979980 48572880 43517520 690585637 940106128 940106128 580387527 580387527 299185540 817507045 817507045 263004740 673198785 673198785 214114700 214114700 208278912 208278912 291933600 355211426 355211426 309445330 309445330 297465744 459986740 459986740 405325062 405325062 149636370 67244280 67244280 118951696 118951696 68557312 59645040 31723248 62070568 121321272 579639424 579639424 404176977 172304534 844961052 844961052 810026115 810026115 807929545 552764873 231316993 398062002 398062002 224794168 224794168 160118292 320405512 320405512 320374514 261321080 403730616 403730616 385720368 369965042 369965042 637666500 637666500 608359603 893334848 893334848 867813083 890558625 890558625 968164679 968164679 831335523 565498145 540942176 119340584 561313696 561313696 675350916 689493381 689493381 706598964 706598964 575413475 575413475 545059777 537592193 586379408 586379408 306178112 292533280 295569746 320080434 566581938 794208117 794208117 259786144 259786144 208066956 110445568 926339401 926339401 557206338 557206338 744558826 744558826 608395433 608395433 218198028 268701960 872417602 872417602 833618531 604388187 292950498 388696698 388696698 365234176 365234176 114736800 114736800 59661632 59661632 217012672 217012672 108139416 325249128 325249128 272239168 272239168 30672642 39977153 549454321 915282417 915282417 581311546 308601146 364030344 364030344 379993299 918918042 918918042 925376335 1019086139 1019086139 971034075 398362338 674796193 674796193 892371107 892371107 806389640 806389640 609404065 538449450 158402786 142617268 185860100 185860100 59080704 10537072 40092032 40092032 35564816 12801152 13841088 17383552 21619872 95551488 220370340 220370340 71340488 160497836 431183945 1034205607 1038431085 1038431085 881926958 478683402 816226372 816226372 550837702 544974660 550256396 608957857 626556160 626556160 81184184 102797408 102797408 96768144 37957776 82296704 82296704 249397314 813731102 875610891 875610891 922802150 922802150 906255589 922747318 922747318 915055882 915055882 562595020 557904972 740757049 740757049 186698428 186698428 303055231 303300677 317736824 800328200 800328200 761286256 539336017 251479296 129313680 307045136 307045136 44706258 44177616 44177616 6428928 9894096 1055083021 1055083021 45769666 1011470720 1011470720 961468373 340076222 340076222 701097634 701097634 955728548 955728548 1026956079 1026956079 680445802 179618380 469812750 750932301 805967619 839628434 839628434 543632001 822216723 926225459 926225459 915220147 693372450 693372450 991561740 991561740 838877296 838877296 696526310 640959097 781952112 781952112 904537226 904537226 931709186 931709186 746989840 782446941 782446941 82838472 82838472 72352392 91361320 340459872 367736298 367736298 358678984 404390528 404390528 196343636 252920149 733843981 733843981 654520420 654520420 129119336 128710008 128710008 90027408 32989664 32989664 152428928 523775535 1041633441 1041633441 1041784717 1041784717 1059185296 1059185296 1030751151 375482335 478323314 890765947 932185643 932185643 838665875 815471959 1018114387 1018114387 280354883 280354883 927001248 927001248 978383054 1021246615 1021246615 772915202 340523136 340523136 269324290 67390490 344366144 356810832 356810832 29409504 130228408 130228408 144881996 212291908 523167278 523167278 500201212 500201212 367210986 960942182 1023428527 1023428527 403493195 424772140 1008048522 1008048522 756767276 699606144 730647669 730647669 163907684 248259732 248259732 225511840 142680780 266545956 266545956 234306540 411369662 411369662 446380336 446380336 170341938 159383588 352589088 352589088 167997976 436545028 436545028 368202686 1025282290 1025282290 974684695 940126892 836029155 386038001 924599154 924599154 894315259 874865963 655484739 608769568 608769568 484274950 484274950 156055396 140610444 415246405 629594400 801753160 801753160 153394236 671361308 671361308 605027337 723872019 1039473481 1039473481 890276651 778708601 660109270 558403224 558403224 537012224 537344001 570017889 621856144 621856144 193012304 722344176 722344176 361803118 1034706978 1034706978 941111394 305812704 432277580 570240993 570240993 431831502 431831502 235549344 455165159 455165159 551163540 1017775006 1017775006 1058852460 1058852460 828774819 734941828 734941828 379897142 379897142 288410972 403179028 403179028 98676532 205161416 205161416 146371140 114164072 267261244 267261244 218752208 218752208 264489992 264489992 71773904 124584696 170214072 171993120 629688080 667469049 667469049 130549280 954730736 971245607 971245607 259264348 232660716 273141484 416373280 416373280 369160226 369160226 406675850 441524236 441524236 497501088 497501088 366163978 470345899 470345899 141434244 293771687 293771687 750277184 750277184 741029133 552719168 555881701 677129088 680728256 683284293 683284293 538253952 419375938 17566752 59001200 295049826 295049826 272427474 313924434 330439024 330439024 44175696 39111440 39111440 42484096 42484096 29151072 299517376 299517376 293650530 288491850 361968234 361968234 94904680 94904680 70649664 69109000 69754376 218153004 218153004 93639244 134220288 168346644 280799748 280883010 286762066 459297098 459297098 412328953 1013227775 1013227775 983881139 983881139 912000728 912000728 813959235 815401593 815401593 117983506 591045161 591045161 364907427 739395079 739395079 484082958 927806248 927806248 596654328 402706723 61638160 273801574 273801574 152104480 32318432 292825952 292825952 358124072 558163081 558163081 165219812 741345345 741345345 211226728 211226728 575171672 625889509 677145216 677145216 750884364 750884364 669782425 669782425 648751424 991661659 991661659 717876864 1012396766 1012396766 623987897 991813739 991813739 592536289 604857344 639895553 648676632 648676632 648020313 648020313 224990112 224990112 209703216 222961468 571750833 571750833 172305840 711764389 711764389 297707842 297707842 279826240 279826240 274216128 274216128 65019456 35917344 42992208 268551904 306089378 306089378 300045266 300045266 386293434 386293434 356799420 356799420 193597014 193597014 281990236 534338590 534338590 454113616 454113616 315228162 308806018 314213538 314213538 809500803 809500803 751276479 339598473 777998301 777998301 336456714 123855752 361028652 913223022 913223022 813436803 624894126 186300544 319277184 348283200 371227656 371227656 382569688 382569688 386511760 386511760 328542738 296033010 290855586 390201944 390201944 69605768 72620232 348446976 348446976 355805458 355805458 467756048 491381204 491381204 184026228 982270003 982270003 835586816 813221763 300419541 887038240 887038240 607261449 607261449 477576078 477576078 655688696 655688696 654725112 914660291 914660291 898912289 829840408 758610799 758610799 705543749 915411716 915411716 462950930 462950930 698557396 710276065 710276065 695282021 671355032 540463944 540463944 1045565767 1045565767 207494796 559748140 559748140 537469953 444596310 444596310 299406070 200427506 190354080 190354080 66086500 46207312 43853072 40055184 63058512 63058512 37748880 292964690 292964690 38271120 38271120 59114978 59114978 283136770 283136770 273977472 273977472 54339120 81265456 132646392 660929056 660929056 893706192 893706192 568777185 371083259 355869984 346700832 346700832 295154184 295154184 290665122 319216368 319216368 281715570 281715570 275421380 254678414 305060994 305060994 301572764 369535068 442683798 442683798 214032588 319725280 319725280 307795466 368846610 368846610 342565018 342565018 367311010 367311010 294110266 338200816 339756184 339756184 113863314 332238720 397888552 397888552 333073184 129376504 117622560 110169544 116994960 116994960 69563704 106871556 250162972 770260941 770260941 213755180 573212757 573212757 147209880 176609364 176609364 875263555 973284531 1031348235 1031348235 970196708 970196708 554437251 155648001 290926244 290926244 946464135 946464135 822922275 822922275 761523400 346665996 382510795 741727001 741727001 552265625 789652704 789652704 181003476 1024672575 1024672575 716367488 716367488 675569665 675569665 576807124 576807124 572639616 198794320 585027232 585027232 542427777 687900192 687900192 21545637 7399408 185836860 185836860 205176584 205471500 254603824 604512384 644129564 644129564 624019881 823504304 857550387 857550387 811022979 811022979 754429128 861225774 873009415 873009415 1059730290 1059730290 504362002 504362002 959202361 959202361 627327958 1006701691 1006701691 293904384 293988450 293988450 147942506 511713928 511713928 935342870 935342870 667078705 203698276 478220490 478220490 276824130 276824130 279363872 279363872 43336656 49692416 49692416 2883392 14381952 14381952 13081984 14043392 15913920 16901666 270009858 282801962 282801962 365432320 365432320 347616360 348708904 395341592 395341592 285739648 285739648 117410704 309801896 426182016 426182016 380436868 682037359 682037359 825715125 825715125 753555162 753555162 539043328 641777923 641777923 318072410 318072410 765592653 765592653 672186985 565351972 958903161 958903161 233019776 615778889 615778889 348395906 348395906 357703339 537660417 610064905 610064905 659555001 659555001 401480562 907920683 907920683 704813927 738029540 738029540 270932912 520409106 520409106 403101702 286958744 923136024 923136024 537216520 1021313680 1021313680 634709544 634709544 131394761 767767408 966237160 966237160 754093810 577237029 577237029 812393324 1029982671 1029982671 984672763 884524875 810863235 879044236 944767623 944767623 622550113 1066733382 1066733382 1023427718 990040181 990040181 1011008043 1026035006 1026035006 829058976 829058976 815008103 575229984 726332593 726332593 518292348 518292348 1014894237 1014894237 1023876028 1023876028 966082488 653459788 1000564981 1000564981 952101016 952101016 807406880 303637280 50406946 50332432 237013252 450941376 450941376 163727674 143205444 151527520 673337892 673337892 672322053 358687146 358687146 347660656 286655264 124257720 662256275 662256275 387203204 85058088 68157448 67109384 67109384 48572880 2950352 690585637 940106128 940106128 591397891 591397891 247596096 247596096 263004740 402727168 404750598 404750598 404750598 214114700 208278912 208278912 207822336 1448448 14802944 29913216 297465744 297465744 459986740 459986740 444926162 449769102 449769102 255594426 177159252 422711356 463434068 463434068 218863160 39848256 39848256 313339218 580403072 580403072 404176977 172304534 844961052 844961052 810026115 810026115 807929545 552764873 231316993 265324944 265324944 224794168 224794168 121543832 91752360 145265924 495895058 495895058 219270964 271675584 271675584 334181874 334181874 637666500 637666500 30187645 565004908 565004908 99096709 685246118 814744131 968164679 968164679 831335523 44671120 104711552 119340584 119340584 171079688 629035136 679111340 679111340 978181831 978181831 438438660 438438660 272371458 272371458 43656960 306178112 306178112 49547216 49547216 45427536 48278928 216635396 216635396 259786144 259786144 208066956 155374288 314183958 462690518 557206338 557206338 537078916 562245633 562245633 746606636 746606636 890712810 961690214 961690214 833618531 604388187 275194601 669501100 924439430 924439430 592260364 592260364 335392847 285231626 285231626 350689898 1003341478 1003341478 621419624 621419624 506336714 388184960 388184960 357378762 549454321 915282417 915282417 581311546 308601146 364030344 364030344 379993299 918918042 918918042 691180016 691180016 412634690 412634690 270664726 171053332 220385580 436213506 436213506 290981538 289530018 424494978 429275538 436352866 436352866 454756528 454756528 431580708 49382226 2101504 25413632 80773208 80773208 42477328 69230688 69230688 95551488 112333672 112333672 105402512 395559002 589408872 589408872 901972096 901972096 478683402 478683402 940746954 1010137669 1010137669 947202951 832655337 740869389 626556160 626556160 611223512 611223512 563213153 546092832 37957776 82296704 82296704 249397314 813731102 875610891 875610891 922802150 922802150 906255589 906255589 337990080 448826322 676660092 676660092 592391504 740757049 740757049 186698428 186698428 369150128 369150128 331630698 800328200 800328200 761286256 299633297 805867507 805867507 586957523 302907731 302907731 262761654 791659709 791659709 700120966 1055083021 1055083021 204896590 605135685 961468373 961468373 340076222 340076222 701097634 701097634 955728548 955728548 1026956079 1026956079 680445802 1049088 250868701 750932301 805967619 839628434 839628434 543632001 822216723 926225459 926225459 915220147 693372450 693372450 616697900 616697900 838877296 838877296 612421392 640959097 640959097 120112440 120112440 15328704 779045304 840065923 840065923 613939785 1054017749 1054017749 649257027 355603242 557191187 557191187 367736298 1030435168 1030435168 618702031 722011144 722011144 540451921 733843981 733843981 654520420 654520420 732006633 732006633 660349812 660349812 563688528 498848860 412808742 474871916 474871916 436303140 436303140 283745522 1059185296 1059185296 1030751151 1028653743 1028653743 890765947 932185643 932185643 665636796 700485800 700485800 621135973 280354883 280354883 927001248 927001248 978383054 1021246615 1021246615 772915202 340523136 340523136 269324290 361376768 361376768 356810832 356810832 63625264 13612080 44961184 144881996 212291908 212291908 132695544 500201212 500201212 367210986 235342326 168169568 193202292 323185827 1063853665 1063853665 1023144911 896688805 801013332 221947076 141176740 163907684 248259732 688662249 688662249 617816537 617816537 266545956 234306540 411369662 531956600 579676701 579676701 513348724 555298671 555298671 2886912 167997976 167997976 101953556 20522784 4733440 974684695 974684695 924343976 836029155 386038001 924599154 924599154 950267971 950267971 849548037 640729881 608769568 484274950 484274950 156055396 140610444 415246405 415246405 512384455 852389080 852389080 945376877 945376877 814501041 1037322995 1037322995 138412164 191664614 434261428 434261428 1054502306 1054502306 537012224 537344001 537344001 227358817 60829536 180879445 673252133 673252133 503682786 1034706978 1034706978 941111394 607267108 607267108 570240993 570240993 517809228 558912720 587386929 591581617 591581617 572860689 1017775006 1017775006 1058852460 1058852460 828774819 734941828 734941828 26674172 383356117 718038746 718038746 163955508 103017656 205161416 205161416 125071932 114164072 267261244 267261244 218752208 218752208 264489992 264489992 112882676 150176680 539322212 698142309 698142309 667469049 667469049 390103243 712510760 923288826 923288826 624974975 755159269 755159269 688331842 461599938 407086296 407086296 406675850 406675850 312241738 211873752 17645696 84898824 286057856 286057856 92441792 145380104 150479240 750277184 750277184 741029133 82490693 15430144 10102532 32102884 134348544 134348544 135293280 153691428 153691428 146845120 59001200 268913986 412367905 969056311 969056311 270193927 270193927 269287207 56961174 53601072 46236640 286393474 810063364 810063364 562617380 562168590 607129604 607129604 94904680 286526240 286526240 17826336 23183852 218153004 230706126 230706126 325888154 325888154 511808720 511808720 268884386 237426976 311562328 311562328 241205338 207786712 207786712 12718272 912000728 912000728 813959235 815401593 815401593 873599448 873599448 591045161 108700928 739395079 739395079 596803601 927806248 927806248 596654328 565043153 781640020 781640020 646465856 202726848 15466688 15466688 6306497 539892417 539892417 558576801 621613185 621613185 144002984 211226728 211226728 789588648 789588648 677145216 677145216 186149048 591477952 669782425 669782425 633821352 991661659 991661659 550018384 550018384 623987897 623987897 710233624 710233624 592536289 545314928 587907157 648676632 648676632 648020313 648020313 445383826 209703216 457698962 457698962 222961468 134850848 172305840 172305840 145801282 297707842 297707842 279317504 279317504 274216128 274216128 73238856 84174096 84174096 268551904 268551904 181063204 300045266 300045266 386293434 386293434 356799420 445004304 445004304 419932902 292690748 534338590 534338590 73678674 62915648 50857120 42467440 42467440 301990033 809500803 809500803 751276479 339598473 777998301 777998301 336456714 121497602 361028652 913223022 913223022 813436803 624894126 252598528 319277184 323084336 323084336 86544152 351355112 359736234 359736234 216254761 687027141 739367245 739367245 797840653 797840653 721016385 655431457 655431457 539271433 355805458 913326445 913326445 774373840 774373840 243306588 243306588 835586816 835586816 814525408 830072739 887038240 887038240 338554122 338554122 477576078 477576078 655688696 655688696 654725112 654725112 608364400 608364400 725625274 940675200 940675200 277020694 915411716 915411716 462950930 462950930 125438882 812959140 983819189 983819189 671355032 540463944 958105436 1045565767 1045565767 939597831 939597831 841720112 1042948386 1042948386 845251449 806462226 526099694 390702778 479469706 479469706 172881152 390197614 390197614 35787136 37748880 37748880 40034576 40034576 35770768 9218784 51924032 51924032 13684048 11535104 52389104 52389104 54339120 54339120 14273040 660929056 660929056 893706192 893706192 108869632 67175424 126303288 346700832 346700832 295154184 295154184 290665122 126318960 126318960 281715570 281715570 275421380 254678414 305060994 305060994 301572764 301572764 201449484 201449484 63849712 319725280 319725280 55578978 58862816 58862816 40580496 360113024 367311010 367311010 329016360 338200816 338200816 90243360 90243360 332238720 332238720 38683824 38683824 117622560 117622560 110169544 116994960 116994960 69563704 52037032 28188000 95033688 108012360 108012360 15250752 15250752 69361664 69361664 167806807 875263555 973284531 1031348235 1031348235 903960323 903960323 285881120 26284578 269567008 269567008 270145026 270145026 146704896 413587782 413587782 224395636 273062996 273062996 116987852 764417472 789652704 789652704 609284652 609284652 92377689 172414208 579101492 675569665 675569665 576807124 576807124 572639616 153091620 585027232 585027232 738200320 738200320 561365429 706103917 706103917 185836860 185836860 205176584 306711860 492055735 604512384 608773257 844439883 844439883 823504304 857550387 857550387 811022979 811022979 878451104 892999467 892999467 814094403 814094403 426714597 166744007 161216100 959202361 959202361 990059114 990059114 891027574 96587849 260231292 260231292 284121048 294062960 294062960 548743992 742668889 742668889 203698276 203698276 102575616 102575616 128580920 128580920 72044336 51161568 49692416 49692416 14718976 14381952 14381952 13081984 10934336 4243584 16901666 270009858 282801962 282801962 95611112 100539776 347616360 348708904 395341592 395341592 285739648 285739648 117256152 309801896 426182016 426182016 380436868 682037359 682037359 825715125 825715125 753555162 753555162 450873395 641777923 641777923 294242064 460871556 765592653 765592653 84605426 316840232 958903161 958903161 233019776 615778889 615778889 436003466 436003466 357703339 570450595 1045430815 1045430815 659555001 900306604 900306604 401480562 641127075 704813927 738029540 738029540 415371414 902240321 902240321 440429240 440429240 235098808 537216520 537216520 930703513 930703513 923211147 915083451 711234835 98775528 174460940 754093810 754093810 577237029 577237029 319537125 563214838 984672763 984672763 907117680 907117680 879044236 944767623 944767623 622550113 1011545352 1023427718 1023427718 990040181 1007185942 1011008043 1026035006 1026035006 825286913 825286913 279465536 279465536 580418272 580418272 516102309 126253275 248766576 248766576 637833916 720701852 720701852 1062938072 1062938072 1007816327 984696770 984696770 868750246 868750246 295904530 614994906 614994906 450941376 450941376 163727674 143205444 490833473 812380493 812380493 554820129 339250464 339250464 300865986 286655264 107619337 662256275 662256275 859148620 1072102263 1072102263 887616576 928391407 928391407 937165422 937165422 433652884 323486898 591397891 591397891 349832372 349832372 293093098 402727168 404750598 443557872 443557872 470550670 470550670 68959366 17299488 87421856 123806658 334131602 334131602 178857734 273206276 463785732 463785732 449769102 449769102 255594426 208478512 422711356 463434068 463434068 638389377 638389377 617426121 617426121 617426121 654609585 654609585 935986395 935986395 907315030 845336979 845336979 174592983 602134624 770505004 770505004 59380376 196137664 227590764 324043074 324043074 108698916 780592141 780592141 219270964 950959396 950959396 737283667 737283667 562306003 541723657 688130085 688130085 879152235 886231755 886231755 144052512 144052512 831774052 963054759 963054759 567887842 104711552 79552344 45314324 629035136 629035136 676071668 978181831 978181831 309519779 148046784 148046784 21970880 57095872 57095872 19990064 275495346 275495346 278097920 330828816 330828816 52380308 423137974 423137974 170182420 318790562 318790562 305728484 432578562 432578562 885016772 885016772 1044625885 1044625885 815853827 890712810 961690214 961690214 1027725204 1027725204 869979891 731513186 924439430 924439430 592260364 592260364 335392847 285231626 285231626 350689898 1003341478 1003341478 621419624 621419624 506336714 388184960 388184960 357378762 382876874 382876874 363202976 359102602 273136040 283062272 283062272 345778186 345778186 799900781 799900781 691180016 765088880 765088880 270664726 721949501 721949501 674288513 674288513 694173884 797574803 797574803 624559724 436352866 436352866 454756528 454756528 431580708 49382226 23510432 101024904 206912240 206912240 148382408 69230688 134463584 206828172 206828172 112333672 114475128 395559002 828657703 828657703 569850849 539412577 996170276 996170276 940746954 1010137669 1010137669 947202951 832655337 740869389 561801604 410364043 611223512 611223512 563213153 546092832 1570968 98300384 98300384 439066120 466841846 476832830 476832830 336134984 84111425 623086228 623086228 738006193 780295775 914272452 914272452 592391504 689226712 751067912 751067912 622176484 1003782448 1003782448 331630698 331630698 363080856 363080856 337980570 805867507 805867507 586957523 314838768 302907731 262761654 791659709 791659709 700120966 712816980 712816980 270459488 212792434 212792434 104516180 122985858 337329674 769942176 1018860367 1018860367 482002415 89298374 19737888 1455392 1049088 558592 5423360 6382208 6382208 72389184 83262088 85201488 130423032 363206792 371595546 371595546 280107802 279056706 260180112 555024416 555024416 562219584 588682337 588682337 293601378 293601378 298720482 298720482 840065923 840065923 613939785 1054017749 1054017749 649257027 620196307 620196307 628162808 628162808 1030435168 1030435168 770965985 722011144 722011144 540451921 287402275 724720480 724720480 179430228 732006633 732006633 660349812 660349812 563688528 498848860 501300468 501300468 611929225 611929225 463685702 463685702 825432691 825432691 1026605440 1028653743 1028653743 621752623 534033193 665636796 665636796 641802224 641802224 1002385047 1002385047 634598882 621681705 394209724 394209724 487917686 487917686 143075538 0 0 4198528 361376768 361376768 44224548 63625264 66981828 66981828 44961184 48241664 97627754 298310218 354344490 354344490 893123371 893123371 518255466 560038942 560038942 1049194698 1063853665 1063853665 1023144911 896688805 801013332 221947076 189106896 8910912 92538561 709887680 709887680 617816537 617816537 655499960 655499960 215034624 531956600 579676701 579676701 513348724 555298671 555298671 497428014 497428014 422873624 444652126 444652126 953193664 953193664 924343976 924343976 621205545 217265110 823709786 887690139 950267971 950267971 849548037 640729881 549487576 255277528 255277528 167731876 220629298 289854932 289854932 470307846 852389080 852389080 945376877 945376877 889300339 1037322995 1037322995 510954557 437917877 953948095 953948095 1054502306 1054502306 493459167 415680265 590098624 674606444 674606444 441694824 673252133 673252133 655597592 874009259 874009259 890376747 890376747 607267108 133643256 133643256 517809228 558912720 587386929 591581617 591581617 572860689 572860689 404750920 77628422 67639304 764449538 965148292 996525010 996525010 966890097 806432044 718038746 336468232 336468232 103017656 257042680 257042680 180566388 180566388 62918320 94178372 100603592 100603592 242876480 242876480 150176680 539322212 698142309 882085628 995097783 995097783 390103243 524862654 923288826 923288826 624974975 755159269 755159269 688331842 461599938 407086296 407086296 155676052 155676052 415623726 415623726 285802752 295183362 295183362 84683810 29919272 478168866 478168866 258642684 754458824 754458824 609912453 11208576 53163312 55120256 134348544 134348544 135293280 153691428 153691428 146845120 61796096 268913986 412367905 969056311 969056311 270193927 270193927 269287207 56961174 53601072 46236640 286393474 810063364 810063364 562617380 562168590 607129604 607129604 274236288 286526240 343533224 343533224 291598602 408002828 408002828 230706126 325888154 483343566 511808720 511808720 268884386 237426976 335562240 335562240 556868385 556868385 836689635 836787363 836787363 911137947 911137947 546411457 576331867 873599448 873599448 835717168 108700928 802441798 802441798 596803601 596803601 189592597 565043153 565043153 781640020 781640020 646465856 202726848 31703552 5057664 6306497 539892417 539892417 558576801 621613185 621613185 201355904 141936800 141936800 789588648 789588648 738478225 738246660 738246660 639676752 638270552 179184973 63768592 67273360 106091160 106091160 103994136 103994136 235784844 557325116 1031984550 1031984550 890747554 890747554 621096973 621096973 77596768 780537885 780537885 18682052 457698962 457698962 724341521 724341521 152296484 729801461 729801461 64228048 324062496 324062496 293866562 290997032 321185162 321185162 285754922 285754922 390105656 390105656 117214288 6906112 44656264 80863944 80863944 305415176 445004304 445004304 419932902 366131576 292690748 273569824 273569824 310380482 310380482 346103648 346103648 629879912 629879912 864194723 864194723 913835978 913835978 661742187 658425385 658425385 648994137 45202953 0 407142406 449069062 449069062 398723280 125405112 125405112 330395250 351355112 359736234 359736234 216254761 687027141 739367245 739367245 797840653 797840653 721016385 655431457 655431457 856687600 856687600 913326445 913326445 774373840 774373840 243306588 830835777 830835777 277314306 814525408 830072739 1041067292 1041067292 619726997 338554122 381497178 666633088 717770745 717770745 115687853 282018124 966451614 966451614 725625274 940675200 940675200 704775316 704701012 315172037 69260948 116004312 179313266 812959140 983819189 983819189 973328391 973328391 958105436 958105436 824841507 939597831 939597831 881337417 1042948386 1042948386 845251449 806462226 526099694 390702778 479469706 479469706 172881152 390197614 390197614 36733712 16843296 288498578 361438474 361438474 87971480 87971480 51924032 296530944 296530944 295720978 295720978 277624256 54999216 371795408 371795408 373387824 939464162 939464162 888552427 108869632 339363914 339363914 127481688 27930656 288962602 288962602 78384456 78384456 82334888 283223312 389548578 389548578 125441976 127177088 127177088 283672968 283672968 201449484 513493008 513493008 299605698 323570866 323570866 288663232 375197586 400173146 400173146 360113024 353622714 360215338 360215338 390645192 390645192 291690978 319295008 319816242 355699088 355699088 69642248 68182016 68280840 68280840 124642328 124642328 91614120 142600076 151127580 151127580 181951484 181951484 174117632 177103128 211139844 236021084 236021084 212460876 212460876 136356936 25691232 25691232 8912928 554893536 554893536 269567008 270145026 270145026 146704896 413587782 413587782 106998356 406612717 904521195 1065199607 1065199607 764417472 177340496 641916988 1031938710 1031938710 720424648 851349790 851349790 573186996 573186996 25983552 185882240 189717684 189717684 17234948 738200320 738200320 725751816 706103917 840185898 605029435 605029435 827860514 889782936 889782936 492055735 192228276 844439883 844439883 365466016 365466016 364517226 329726322 329726322 878451104 892999467 892999467 814094403 919374244 919374244 161216100 986594444 986594444 411115590 990059114 990059114 891027574 395113474 395113474 315382844 458405906 982115277 982115277 548743992 742668889 742668889 203253749 468937686 468937686 312750354 312750354 320900016 320900016 51161568 21883600 14718976 15913920 15913920 13767360 14043136 14043136 10801152 6557952 6557952 9050304 9050304 7012352 7012352 68699392 86001608 117508088 117508088 57175704 104857600 104857752 130953300 156175532 387253988 387253988 176299120 176299120 404789376 409393542 409393542 323355216 323355216 409605652 409605652 294242064 460871556 460871556 168591120 168591120 136053376 211869060 217056204 217056204 229802176 229802176 436003466 436003466 136698657 570450595 1045430815 1045430815 426109350 900306604 900306604 698744849 698744849 646125776 332517689 667232433 667232433 902240321 902240321 440429240 440429240 235098808 319197192 319197192 930703513 930703513 923211147 915083451 711234835 419903526 419903526 962496548 962496548 860853411 990941425 990941425 749587832 87073820 782289652 907117680 907117680 510405816 271132419 549355273 549355273 1011545352 1011545352 744043661 716882827 1007185942 1007185942 974250519 742746204 742746204 279465536 385443058 385443058 580418272 580418272 464395638 464395638 464395638 560211252 560211252 385627014 626222485 1062938072 1062938072 1007816327 984696770 984696770 868750246 868750246 295904530 875829984 904409579 904409579 683947218 266738172 82648432 706808933 812380493 812380493 554820129 303572166 138057713 104990080 104990080 68436864 68436864 7342336 859148620 1072102263 1072102263 887616576 928391407 928391407 937165422 937165422 433652884 188743860 285212758 285212758 349832372 349832372 293093098 279784770 202902398 443557872 443557872 470550670 623059366 829626534 829626534 830086048 830086048 674895040 674895040 870614291 870614291 858523447 584090886 436744066 436744066 219817376 219817376 208478512 109666880 102286872 638389377 638389377 617426121 617426121 617426121 654609585 654609585 973635979 973635979 907315030 845336979 845336979 274270902 641133044 786296124 786296124 59380376 196137664 227590764 324043074 324043074 108698916 780592141 780592141 86623544 950959396 950959396 737283667 737283667 685544872 685544872 688130085 688130085 879152235 886231755 886231755 502172257 475056618 831774052 963054759 1073633687 1073633687 900846257 794086077 701532464 701532464 201395833 676071668 676071668 425463462 672531685 672531685 538869766 538869766 676365669 1000216181 1000216181 275495346 283874688 283874688 330828816 330828816 310206261 601751873 1012816547 1012816547 960121132 603751176 768821338 768821338 621130766 885016772 885016772 1044625885 1044625885 983849015 983849015 923996848 923996848 1027725204 1027725204 869979891 731513186 570235944 93471633 18213408 33915440 33915440 23210080 23210080 15153600 314579344 314579344 268570626 268570626 285549856 285549856 104508000 312718288 312718288 27849282 37974448 37974448 276995746 276995746 273139906 275725698 495719081 799900781 799900781 714394197 803209688 803209688 233970620 721949501 721949501 908101282 1063306159 1063306159 797574803 797574803 624559724 189011900 189011900 260720788 260720788 75530824 52765648 76104768 101024904 206912240 541077713 541077713 64545800 571498513 571498513 206828172 71479304 114475128 757109816 828657703 828657703 767824419 949567910 996170276 996170276 509617929 383886074 621282345 661127225 891289730 891289730 561801604 410364043 539839520 539839520 164930099 979344391 986582775 986582775 417160910 1069071816 1069071816 546848810 810950601 810950601 610547980 687742917 944113474 944113474 780295775 914272452 914272452 75499584 689226712 751067912 751067912 622176484 1003782448 1003782448 336253018 382322082 382322082 363080856 337980570 337980570 351879248 351879248 314838768 174317064 236058780 236058780 110613388 418944740 418944740 270459488 270459488 151541576 199262376 405423900 405423900 337329674 769942176 1018860367 1018860367 482002415 486536132 486536132 200582658 179470924 179470924 376230726 376230726 372590612 341533248 341533248 85201488 130423032 363206792 371595546 371595546 280107802 279056706 267322436 555024416 555024416 562219584 588682337 588682337 327832684 293601378 298720482 298720482 271323616 33554480 33554480 537104897 537104897 388219424 620196307 620196307 628162808 694102860 694102860 770965985 770965985 538465604 617611977 617611977 238700640 724720480 724720480 447399482 387503446 387503446 165810660 216738376 216738376 137835874 501300468 501300468 611929225 611929225 513916380 463685702 825432691 825432691 421813044 389948306 389948306 179322092 534033193 576431394 930821899 930821899 641802224 1002385047 1002385047 634598882 621681705 394209724 394209724 487917686 487917686 353187896 524364982 524364982 203141272 353506816 533556414 533556414 483518320 66981828 66981828 25509152 31568448 97627754 298310218 354344490 354344490 893123371 893123371 518255466 560038942 560038942 1049194698 1049194698 326106546 151414166 214925773 660950117 660950117 652624285 635808112 97880680 709887680 709887680 254941252 568328984 655499960 655499960 236137328 193278580 193278580 184549684 184549684 478159210 496841572 497428014 497428014 422873624 444652126 444652126 953193664 953193664 403617445 483732174 1046022372 1046022372 726140085 185081888 168371220 442044574 442044574 118628380 486469252 995898821 995898821 167731876 627037645 777196698 941172231 941172231 748796409 748796409 577902176 577902176 889300339 889300339 739441376 510954557 874273887 953948095 953948095 852426569 852426569 531356390 623334296 725274953 730987824 730987824 441694824 441694824 369514270 655597592 874009259 1050150105 1050150105 890376747 899496398 899496398 635778392 429263873 672281646 672281646 561430384 561430384 74975112 431090735 765756162 765756162 960564909 960564909 965148292 996525010 996525010 966890097 806432044 257477124 336468232 618580869 618580869 257042680 796146033 796146033 719134765 789579412 789579412 580127313 545595920 242876480 242876480 77716117 539126601 539126601 882085628 995097783 995097783 202375692 403210250 403210250 440434698 440434698 340148260 340148260 151033994 145483184 289712370 289712370 522565824 522565824 415623726 415623726 285802752 295183362 794986160 794986160 722201120 780140445 780140445 824865462 824865462 754458824 673785093 1002242560 1002242560 943982727 450044038 450044038 442435732 442435732 44250576 50195712 61796096 61796096 60691968 18212384 17566752 17096704 6613504 96543096 96543096 54889088 93587624 93587624 281862624 283362540 283362540 474511720 474511720 289803012 274236288 274236288 343533224 553746945 553746945 408002828 618758345 618758345 207741324 870089651 870089651 330089936 132904024 301374386 335562240 840221814 976019058 976019058 836689635 836787363 836787363 911137947 911137947 370982690 370982690 115884106 835717168 835717168 389317809 802441798 802441798 213123485 687123472 687123472 591618789 119755697 122734784 122734784 50857320 31703552 31703552 25024672 21168512 21168512 10559808 72755336 88423936 538578604 538578604 143457356 207412736 207412736 738478225 738478225 738246660 738246660 639676752 700800101 700800101 544140576 544140576 106091160 587861916 645133209 645133209 700657345 853447823 1031984550 1031984550 890747554 890747554 621096973 621096973 77596768 780537885 780537885 138617872 138617872 155005392 724341521 724341521 169874848 729801461 729801461 318244818 335114784 335114784 293866562 290997032 321185162 321185162 285754922 285754922 390105656 413746146 413746146 403287488 444932564 444932564 72451520 305415176 305415176 226533448 416448544 416448544 64131328 273569824 273569824 431001568 431001568 346103648 346103648 629879912 629879912 864194723 864194723 913835978 913835978 661742187 658425385 658425385 648994137 760898221 760898221 990776324 990776324 449069062 398723280 79692456 85984040 330395250 331623122 331623122 55084226 165012672 165012672 25764960 19595296 19595296 10171912 77280840 77280840 76559432 856687600 856687600 207692172 490831872 490831872 226510106 195039496 830835777 830835777 335857674 411337728 774120504 1041067292 1041067292 775161934 307569433 305498821 666633088 717770745 717770745 115687853 282018124 966451614 966451614 486807076 709260998 819460803 819460803 704701012 315172037 314605643 909189418 909189418 564752961 840458263 840458263 973328391 973328391 723077113 913839800 913839800 97521896 881337417 881337417 336405610 632463561 632463561 27773280 32337888 188787968 188787968 15536692 172112320 172112320 43042176 43042176 282293320 288498578 361438474 361438474 323159072 323159072 84683402 296530944 822198611 822198611 560349393 277624256 111399768 371795408 371795408 837482043 939464162 939464162 888552427 587202609 589367553 589367553 598486048 598486048 288962602 288962602 283115970 366552872 366552872 289325154 397969188 445912374 528531582 528531582 349066400 138947604 518063260 518063260 513493008 513493008 433390662 396430818 396430818 322962192 375197586 400173146 400173146 353622714 353622714 360215338 360215338 390645192 390645192 291690978 319295008 319816242 355699088 355699088 119267080 119267080 90177192 90177192 393292722 393292722 380678562 142600076 393519808 393519808 289563538 466121140 522769458 522769458 384891210 511569822 511569822 505007052 283224000 283224000 281548736 284754434 549519682 554893536 554893536 29372961 28570464 901862408 901862408 154666788 432276924 432276924 406612717 904521195 1065199607 1065199607 600114514 176160852 641916988 1031938710 1031938710 720424648 851349790 851349790 724231056 724231056 708715189 671836852 189717684 189717684 661017221 661017221 725751816 725751816 1007348752 1007348752 681081201 681081201 827860514 984543810 984543810 963125855 963125855 605390072 605390072 365466016 365466016 814617012 895227655 895227655 643566798 776224919 776224919 969917039 969917039 919374244 186594852 1007885880 1007885880 411115590 411115590 255530258 397031826 397031826 395113474 315382844 458405906 982115277 982115277 272774960 571859880 571859880 203253749 468937686 468937686 312750354 312750354 320900016 320900016 49976864 45926400 35652800 15913920 150245956 150245956 171597076 171597076 41600976 134353456 155844644 155844644 101712408 182740248 182740248 135635816 86001608 90710632 90710632 93881448 93881448 74541136 378999160 409702376 409702376 387253988 380805508 176299120 404789376 409393542 409393542 275044742 309197680 314455232 314455232 61202784 277231426 299769570 299769570 168591120 295189218 295189218 17507396 164631752 164631752 294783840 294783840 292090820 405572616 470287374 471336462 471336462 408994182 707075218 854480985 854480985 698744849 646125776 332517689 750823012 750823012 462112429 521146966 521146966 508824222 978489370 978489370 639811587 541419912 541419912 580309698 580309698 423934034 419903526 419903526 962496548 962496548 860853411 990941425 990941425 749587832 747596174 782289652 795634837 809828650 809828650 793511217 1010982419 1010982419 1043916440 1043916440 375111703 306442386 6351132 239413404 239413404 742746204 752477017 832094123 1062199799 1062199799 759827828 759827828 587989049 464395638 464395638 560211252 560211252 94838197 626222485 750645069 750645069 683413317 853997569 853997569 412036459 412036459 23802374 887368009 904409579 904409579 785320177 642362624 713944149 713944149 763132295 763132295 883598441 883598441 767160290 670277936 670277936 537131336 537131336 494405550 1050593109 1050593109 618667885 618667885 665332824 665332824 556083489 595665009 595665009 597688689 597688689 594019520 56623536 264241484 264241484 470819032 470819032 451477936 451477936 156901644 623059366 829626534 829626534 830086048 830086048 674895040 674895040 870614291 870614291 858523447 584090886 271768324 5259264 219817376 219817376 234103120 234103120 219160680 219160680 646258696 646258696 606340177 580911441 124569696 124569696 973635979 973635979 587218972 755023917 755023917 778152364 778152364 786296124 786296124 226937144 621585196 621585196 589564592 173811904 168596736 344489994 344489994 76080204 277436032 408557190 408557190 282199108 685544872 685544872 1042260202 1042260202 811354481 811354481 677256837 502172257 475056618 377952093 731448640 1073633687 1073633687 900846257 899626984 701532464 701532464 201395833 201395833 358168098 425463462 672531685 672531685 538869766 538869766 676365669 1000216181 1000216181 200945281 283874688 283874688 27254224 147229760 310206261 601751873 1012816547 1012816547 960121132 603751176 768821338 768821338 621130766 608706560 831243302 831243302 589699377 983849015 983849015 664981760 1050673529 1050673529 195496251 414088292 570235944 617177621 617177621 611024420 611024420 536603922 536603922 381527194 41949786 703801234 1065341317 1065341317 986061530 141069766 52822528 104508000 104508000 26564376 1122304 1122304 27159042 276995746 276995746 273139906 275725698 495719081 714165061 714394197 714394197 803209688 803209688 233970620 158993048 321521417 908101282 1063306159 1063306159 393396667 256921606 339861642 339861642 358354602 523528884 523528884 217886208 58272092 76104768 76104768 545260240 545260240 541077713 42152016 672215208 760353453 760353453 121844237 672305184 757109816 757109816 767824419 767824419 949567910 949567910 457381409 457381409 396243100 621282345 661127225 891289730 891289730 750371008 750371008 539839520 630516568 630516568 979344391 986582775 986582775 417160910 1069071816 1069071816 546848810 810950601 810950601 610547980 687742917 1025410900 1025410900 691276049 435801788 536536228 536536228 263315560 263315560 87194320 257327380 433294198 433294198 336253018 382322082 382322082 78846056 78846056 314254208 314254208 60825874 75501584 251675074 468794914 468794914 386848882 458351286 458351286 446440116 446440116 436347392 442515658 442515658 405423900 208951170 273045664 273045664 86426250 175633778 486536132 486536132 361362966 197827708 197827708 510577602 510577602 473873616 473873616 448158272 33714376 1064960 850660209 850660209 997066832 997066832 640324889 656700255 656700255 701239506 805738016 805738016 696338252 696338252 850908995 909899571 909899571 708390966 101835288 86041400 206721468 206721468 769892536 769892536 337738287 269226602 694102860 694102860 634837408 634837408 604281221 617611977 617611977 636486633 636486633 832064563 832064563 941900395 941900395 733849004 955197934 955197934 137835874 153396424 206095500 488571432 1057588534 1057588534 763050043 142749421 201853060 201853060 180365172 134743472 67634184 648278361 648278361 930821899 930821899 422890007 885482397 885482397 338461702 467594964 467594964 479265572 479265572 363930474 362946700 524364982 524364982 203141272 353506816 533556414 533556414 483518320 20950624 20950624 6821888 32293824 84224040 84224040 132807832 237032032 237032032 200331252 675359440 675359440 287321353 443127844 443127844 696791328 696791328 682308933 660950117 660950117 652624285 635808112 143395908 99986457 212625528 540533109 677064352 677064352 671401989 236137328 193278580 1007616057 1007616057 406307962 981717045 981717045 497098286 497098286 132168054 185731132 202916552 751442134 772726941 772726941 646280816 1046022372 1046022372 1019691605 1019691605 706099287 558025877 778917901 778917901 755251612 995898821 995898821 161554788 627037645 777196698 941172231 941172231 748796409 748796409 564792393 564792393 471624762 253094460 697789054 697789054 874273887 874273887 447608764 447608764 140746002 531356390 623334296 725274953 730987824 730987824 295207821 810124373 810124373 658555065 637558957 1050150105 1050150105 733570840 1026110701 1026110701 635778392 622971260 851707412 851707412 561430384 561430384 424747686 621347532 948249026 1035995298 1035995298 960564909 943524716 357807910 280085840 280085840 189086856 189086856 154141476 618580869 829820920 915018843 915018843 796146033 719134765 789579412 789579412 580127313 545595920 347377860 347377860 317940952 539126601 547849065 547849065 297273186 1058538284 1058538284 907849247 1015386717 1015386717 739918365 604996863 650175744 650175744 233805088 310937790 316925640 522565824 522565824 387142750 387142750 87491024 908512137 908512137 794986160 722201120 780140445 1056518782 1056518782 824865462 728479525 822095643 1008799224 1008799224 943982727 575341889 450044038 786705600 786705600 640883212 78436828 67158024 224153234 224153234 609748617 626172575 626172575 122999438 504406568 504406568 55951382 93587624 287542498 829354444 829354444 627236100 883839462 883839462 557912070 337682568 337682568 285212706 553746945 553746945 353493250 618758345 618758345 358351544 870089651 870089651 330089936 277138496 301374386 301374386 840221814 976019058 976019058 849034583 546647040 546647040 639231513 639231513 915456603 915456603 636094096 636094096 575704416 562036864 566231265 566231265 65028161 687123472 687123472 591618789 122115832 122734784 122734784 89536288 89536288 55540640 55540640 122792889 571609617 571609617 630507689 630507689 597437097 538578604 143457356 207412736 207412736 151643458 372559126 372559126 954753590 954753590 700800101 700800101 544140576 544140576 437943366 587861916 645133209 645133209 700657345 853447823 853447823 844284938 302128802 302128802 102441232 128061816 128061816 277550866 277550866 138617872 417346470 417346470 157097092 157097092 169874848 172627092 176341778 318244818 335114784 335114784 279668672 279668672 121955328 121955328 88178896 25740384 68166664 524861659 961129825 961129825 444932564 444932564 142862231 337940508 337940508 226533448 416448544 416448544 640338725 640338725 996423126 996423126 431001568 277153808 277153808 302515218 302515218 327155826 627605584 627605584 229180461 604578825 868262954 868262954 144040215 760898221 840238034 990776324 990776324 67373218 103235152 103235152 85984040 85984040 25165920 305176032 305176032 203565965 619673513 619673513 610485353 793500765 793500765 705393857 567229665 558119969 457484452 829890753 829890753 846286900 850831792 850831792 312924498 914643558 914643558 436412974 565469761 867444310 867444310 775161934 775161934 671468359 700467328 700467328 553945157 209717637 144253547 600541567 600541567 486807076 486807076 709260998 1054169563 1054169563 817608859 314605643 314605643 909189418 909189418 924853588 924853588 674481414 674481414 286433285 723077113 913839800 913839800 426903350 96997954 336405610 336405610 270274050 81944968 12534112 8987712 188787968 188787968 169067008 172112320 172112320 89297512 43042176 282293320 282293320 79709496 79709496 323159072 323159072 84683402 90597993 822198611 822198611 560349393 207881100 207881100 346797880 346797880 876978362 876978362 806641559 806641559 695082405 589367553 589367553 598486048 598486048 98640360 404761276 404761276 366552872 366552872 358477482 397969188 445912374 528531582 528531582 349066400 138947604 518063260 518063260 375139378 433390662 433390662 396430818 396430818 322962192 322962192 28377440 29362512 38086800 61721168 61721168 60147440 60367536 60367536 81344728 81344728 31541376 107070360 107070360 132328656 132328656 124521912 124521912 393292722 393292722 380678562 125809656 393519808 393519808 289563538 466121140 522769458 522769458 384891210 511569822 511569822 1005220877 1005220877 283224000 766707667 1020849010 1020849010 827609794 827609794 814963905 558342243 901862408 901862408 968620294 968620294 432276924 263004930 202714636 102765308 157360348 176160852 194189516 194189516 60201720 82134656 103286040 638457872 638457872 724231056 724231056 708715189 671836852 206309416 155714724 661017221 716271848 716271848 676206093 1007348752 1007348752 681081201 681081201 799266068 984543810 984543810 963125855 963125855 605390072 704675908 704675908 320464498 814617012 895227655 910688772 910688772 776224919 776224919 969917039 969917039 727874524 916033130 1007885880 1007885880 848762500 848762500 255530258 397031826 397031826 209924172 226562080 226562080 8441920 8918016 8918016 571859880 571859880 91860561 20053952 64349120 64349120 25693696 51273280 51273280 49976864 45926400 35652800 6500736 150245956 150245956 171597076 171597076 41600976 134353456 155844644 155844644 101712408 182740248 182740248 135635816 41442504 35774736 35774736 93881448 93881448 120155008 378999160 409702376 409702376 380805508 380805508 46156096 48227328 48227328 158729492 171760660 309197680 314455232 314455232 10485312 277231426 299769570 299769570 165948994 295189218 295189218 286269664 286269664 411681282 411681282 294783840 292090820 405572616 470287374 471336462 471336462 408994182 707075218 854480985 854480985 451487190 451487190 290525316 750823012 750823012 1027802654 1027802654 521146966 508824222 978489370 978489370 706223628 357250218 357250218 493600968 516212958 516212958 314466392 152138420 547274832 697077488 697077488 140664757 489685728 747596174 747596174 932975674 932975674 809828650 809828650 793511217 1010982419 1010982419 1043916440 1043916440 976378075 976378075 309555807 842156819 842156819 582067072 752477017 846032863 1062199799 1062199799 797061445 797061445 603981008 46933657 550701793 571485828 700136037 710348208 710348208 145671836 341921162 341921162 786724360 786724360 414452550 414452550 330249201 887368009 887368009 839065945 839065945 642362624 713944149 713944149 763132295 763132295 883598441 883598441 767160290 800794948 800794948 666759061 537131336 494405550 1050593109 1050593109 618667885 618667885 665332824 665332824 556083489 596689521 600887409 600887409 768237420 768237420 193069440 234103078 363932030 470819032 470819032 451477936 451477936 268700684 404437024 404437024 24327072 24327072 17309056 17309056 286921616 306058002 306058002 305271570 271768324 271768324 165255908 173153956 450770292 450770292 234103120 229191580 618136209 646258696 646258696 606340177 580911441 101001545 42902740 723590168 723590168 671558461 755023917 755023917 778152364 778152364 741417196 741417196 226937144 621585196 621585196 589564592 455707494 221259596 794821553 794821553 419810918 419810918 928981820 928981820 433136358 818712809 818712809 1042260202 1042260202 647238406 647238406 160567928 234881052 234881052 238162716 988489292 988489292 943718535 899626984 899626984 391813208 391813208 138676356 176686164 176686164 143395908 806489286 806489286 282329282 282329282 32118688 21539104 24523136 300592322 300592322 293913760 354904578 354904578 351782602 274202882 274202882 823675502 823675502 544210305 743311490 743311490 508109982 508109982 512494686 809780702 809780702 933236995 933417339 933417339 1050673529 1050673529 404952352 414088292 1009280342 1062104317 1062104317 611024420 611024420 863685983 863685983 700649581 412777209 703801234 1065341317 1065341317 986061530 141069766 303734976 378165330 378165330 379609272 379609272 350177242 51520048 51520048 27321696 18998112 86212648 88331136 88331136 73728 2154752 2154752 184320 184320 184320 540070544 540070544 107512353 644931992 644931992 248030256 339861642 339861642 358354602 523528884 523528884 217886208 110209168 111419496 111419496 738793992 738793992 207233185 51947096 672215208 760353453 760353453 121844237 672305184 672305184 208897693 152593216 864093732 864093732 158939392 457381409 457381409 726475214 751965829 751965829 739003432 907755272 907755272 750371008 109855008 630516568 630516568 591155032 74975112 74975112 121770168 121770168 85017224 471995660 471995660 422317350 515641954 515641954 1025410900 1025410900 691276049 435801788 536536228 536536228 413212998 338344256 169923748 169923748 433294198 433294198 365867456 398289624 398289624 323557682 312088018 312088018 278602384 312616192 312616192 251675074 468794914 468794914 386848882 458351286 458351286 446440116 456837244 456837244 713821269 1047708673 1047708673 320796211 580479670 1017942765 1017942765 816743221 816743221 757932460 757932460 197827708 197827708 510577602 510577602 473873616 473873616 448158272 92572432 92572432 927784633 927784633 997066832 997066832 852002685 656700255 656700255 701239506 805738016 805738016 696338252 696338252 850908995 909899571 909899571 708390966 101835288 86041400 555880465 555880465 769892536 769892536 676589236 719455333 719455333 240562217 740855609 740855609 755539329 755539329 672322053 636486633 636486633 832064563 832064563 941900395 941900395 733849004 955197934 955197934 483677824 177292128 177292128 394675396 1057588534 1057588534 763050043 142749421 747868608 888267725 888267725 40138251 42045705 648278361 648278361 936060875 936060875 842797243 885482397 885482397 1073423978 1073423978 719009493 479265572 572921856 1044646075 1044646075 475010067 512360449 818042399 949948935 949948935 595750355 671793957 723595457 723595457 673817028 567138272 567138272 562479452 120671336 224696593 696070053 720225969 724091380 724091380 287321353 111493604 111493604 696791328 696791328 682308933 260541853 178303140 208053552 208053552 143395908 99986457 212625528 540533109 677064352 677064352 671401989 380663928 380663928 1007616057 1007616057 406307962 981717045 981717045 9313344 10669312 10669312 8831104 202916552 202916552 772726941 772726941 646280816 797279901 797279901 1019691605 1019691605 706099287 558025877 778917901 778917901 755251612 509278202 509278202 161554788 310958194 397129250 883983274 883983274 642925706 642925706 656678937 656678937 637602105 253094460 697789054 914892848 914892848 466373689 364446542 84183272 84183272 107012464 107012464 104722200 104722200 112488112 295207821 810124373 810124373 658555065 685336892 791015257 791015257 733570840 1026110701 1026110701 324849330 622971260 851707412 851707412 235766320 403185836 424747686 621347532 948249026 1035995298 1035995298 943524716 943524716 357807910 280085840 280085840 424674598 426804898 826294348 826294348 829820920 915018843 915018843 472854716 483539968 483539968 468708440 462444374 462444374 347377860 347377860 317940952 179806340 547849065 547849065 297273186 1058538284 1058538284 907849247 1015386717 1015386717 739918365 604996863 650175744 650175744 478355464 310937790 327749016 397022586 397022586 337441322 337441322 87491024 908512137 977183510 977183510 805880835 1009796895 1056518782 1056518782 1042358559 1052451215 1052451215 1008799224 1008799224 921439764 575341889 181085632 786705600 786705600 640883212 78436828 142268985 243948533 243948533 609748617 770203466 770203466 122999438 504406568 504406568 55951382 12698240 877921028 1011091879 1011091879 944905025 883839462 883839462 557912070 337682568 337682568 285212706 285212706 353493250 353493250 287359018 376562586 376562586 358351544 270582018 277138496 277138496 268960770 311217234 437203456 437203456 849034583 849034583 546647040 546647040 639231513 639231513 915456603 915456603 636094096 636094096 312618632 562036864 566231265 566231265 65028161 733507384 733507384 122115832 122115832 115839728 115839728 89536288 89536288 55540640 55540640 122792889 571609617 571609617 630507689 630507689 597437097 13298888 918618256 918618256 509886681 413347330 413347330 372559126 954753590 954753590 501486918 437737684 437737684 437943366 437943366 260648088 283954494 283954494 240173724 472947146 472947146 118899484 302128802 302128802 72782168 128061816 128061816 277550866 277550866 44040192 417346470 417346470 65279748 62914800 139644676 139644676 135827216 191908608 299944098 299944098 35370544 81287162 383582834 383582834 304051642 507178318 507178318 524861659 961129825 961129825 513812492 416554266 748280474 748280474 1047799814 1047799814 1014238095 970985891 970985891 640338725 996423126 996423126 18935072 388522434 388522434 914932827 914932827 327155826 327155826 1028129255 1028129255 761491754 868262954 868262954 144040215 443894573 840238034 956301940 956301940 197723772 130167514 103235152 119154314 338025482 338025482 319833746 305176032 203565965 619673513 619673513 610485353 793500765 793500765 705393857 567229665 558119969 637909656 829890753 829890753 846286900 850831792 850831792 312924498 951290188 951290188 436412974 565469761 867444310 867444310 403253954 1014235428 1014235428 700467328 700467328 553945157 209717637 144253547 600541567 917416971 917416971 781907928 860305587 1054169563 1054169563 817608859 632318596 441517207 276826306 278921538 924853588 924853588 674481414 674481414 302542870 429097554 456659878 456659878 426903350 830478145 830478145 86118696 565392969 565392969 168544864 28621364 188109056 188109056 169067008 169067008 89297512 89297512 13136320 52627424 465615958 465615958 135140400 316548816 409975318 409975318 321923158 288432592 206571916 1313280 207881100 207881100 4301440 326123952 876978362 876978362 806641559 984098031 984098031 442306148 442306148 314386982 314386982 835397860 835397860 914753700 914753700 871313721 591139118 298624224 89654952 83887744 76595904 105916224 105916224 21096736 68689920 68757000 373941696 373941696 382866242 382866242 274813906 121767200 121767200 29362512 38086800 40709424 50669616 175433700 175433700 174137748 177209920 177209920 28837728 179617204 179617204 184480288 221786832 221786832 124521912 89417008 89417008 65802864 59903472 31903584 31260800 457357656 457357656 167772312 167772312 180625408 402865292 402865292 1005220877 1005220877 491887354 766707667 1020849010 1020849010 827609794 827609794 814963905 558342243 287997601 561419554 968620294 968620294 419731300 410258670 116732652 183974868 445787126 445787126 194189516 194189516 60201720 82134656 103286040 103286040 50606480 23542176 54801680 54801680 206309416 206309416 174609808 174609808 716271848 716271848 249539813 621073424 655426725 50865832 105980568 634653320 668017401 779880306 859111717 859111717 1035266638 1035266638 704675908 320464498 320464498 508953376 910688772 910688772 459766704 579449931 579449931 478735950 369421392 916033130 916033130 806613024 970193538 970193538 252850194 713064645 713064645 394875224 394875224 226562080 837891507 837891507 334672096 811390771 811390771 57565952 57565952 64349120 64349120 46777744 46777744 36515088 34398464 23932032 11643840 13105344 13105344 142215680 142215680 141434244 7216512 7216512 267648 0 0 0 0 2771424 7746720 35774736 35774736 30620608 23434048 120155008 120155008 78734160 78734160 39100592 46156096 46156096 48227328 48227328 158729492 177471910 284826086 742623573 742623573 262897982 596749341 596749341 382053992 382053992 335826074 575237311 575237311 525444120 902416549 902416549 469953608 423833766 476065135 911004195 911004195 773848605 527846334 527846334 828659171 828659171 715338069 715338069 504402451 906051851 906051851 1027802654 1027802654 918557882 266085491 559556249 706223628 706223628 357250218 357250218 493600968 516212958 516212958 314466392 152138420 146693760 697077488 697077488 728275040 795413265 795413265 484442574 932975674 932975674 493291520 493040046 807534854 807534854 487322640 657182846 844829204 1069832513 1069832513 632343239 842156819 842156819 752071112 752071112 846032863 846032863 742294656 797061445 797061445 603981008 115343761 630610641 739416280 758647341 758647341 744000789 744000789 489850637 582469701 582469701 248961802 414452550 414452550 344078236 356202444 650192315 839065945 839065945 388267096 528483402 528483402 1044441382 1044441382 283609312 1011640660 1011640660 800794948 800794948 666759061 119181320 201142260 948542438 948542438 862876703 209720897 411568870 411568870 303858371 596689521 600887409 600887409 768237420 768237420 193069440 234103078 363932030 397478176 410324672 410324672 430438048 430438048 942785700 962728580 962728580 944512388 944512388 984942098 984942098 853257779 853257779 861013186 861013186 412111600 412111600 292163878 450770292 450770292 437793116 282592340 618136209 620052785 620052785 119850080 615530033 615530033 125963104 723590168 723590168 671558461 574858257 571044225 794444716 794444716 220305197 36774672 37275408 37275408 18499104 455707494 455707494 221259596 794821553 794821553 419810918 854803766 928981820 928981820 801805484 818712809 818712809 835882006 835882006 647238406 647238406 764461729 764461729 213909708 720627653 988489292 988489292 943718535 579538060 210580629 712278136 798058825 798058825 793258696 176686164 156798612 806489286 806489286 547754628 547754628 695867301 764579181 764579181 300592322 300592322 293913760 354904578 354904578 351782602 683488303 696074087 696074087 544210305 544210305 743311490 743311490 789916221 998597143 998597143 809780702 809780702 1042617488 1042617488 933417339 1038496337 1059197247 1059197247 335783219 1009280342 1062104317 1062104317 670864824 670864824 863685983 863685983 700649581 994419553 994419553 904195867 842373680 842373680 847901328 919581635 919581635 849786666 379609272 379609272 352021986 51520048 51520048 20585696 20585696 21128120 191083697 724044469 724044469 723258933 758305544 758798524 758798524 896713344 896713344 540070544 571637761 644931992 789762348 789762348 708464172 117704760 68812912 55181472 697648737 697648737 557910264 662775104 662775104 738793992 738793992 580462161 580462161 664742924 664742924 155527405 256603168 658510028 912279470 920399938 920399938 898527916 864093732 1040896548 1040896548 866853003 726475214 751965829 751965829 739003432 907755272 907755272 674125348 674125348 624167201 187061065 985375175 985375175 946807327 194460436 734201922 734201922 553812258 1025716634 1025716634 949146183 224782764 907578989 907578989 695593672 369396998 693083972 693083972 598136144 598136144 169923748 169923748 1036436452 1060060430 1060060430 703524680 703524680 625074360 312088018 312088018 278602384 312616192 312616192 75695680 127453040 127453040 51589680 51589680 34791952 84060244 456837244 456837244 713821269 1047708673 1047708673 320796211 580479670 1017942765 1017942765 816743221 816743221 757932460 757932460 292308272 292308272 354665914 354665914 304870674 86029370 124357482 361982058 361982058 927784633 927784633 372288880 1037566072 1037566072 363972386 588556456 588556456 507523072 185090858 757436560 757436560 470362779 20972160 269494400 521480834 521480834 254091790 555880465 555880465 765559600 938487988 938487988 719455333 719455333 622362860 740855609 740855609 755539329 755539329 672322053 617909152 617909152 356670211 1041810248 1041810248 830920803 830920803 493655463 483677824 483677824 177292128 177292128 497689604 497689604 363016554 797311624 797311624 747868608 888267725 888267725 764986989 764986989 534478379 554180514 936060875 936060875 842797243 629155625 629155625 1073423978 1073423978 719009493 375790136 572921856 1044646075 1044646075 475010067 512360449 818042399 949948935 949948935 595750355 671793957 723595457 723595457 673817028 567138272 567138272 562479452 120671336 224696593 696070053 720225969 732655941 732655941 436057714 1073386840 1073386840 805717205 294247554 641855952 704441157 1035440713 1035440713 768975532 482658510 454156854 454156854 849561950 957532411 957532411 386753181 380663928 380663928 267073424 267073424 265283436 166126488 445383536 483775278 483775278 127979840 127979840 194563720 194563720 235946128 235946128 177272328 168158352 63753456 300492096 300492096 294913378 279196994 275412744 444251704 483277966 742568647 742568647 158952992 634244041 821146859 905615114 905615114 614753498 1015144896 1015144896 656678937 813306755 813306755 447854424 914892848 1002217562 1002217562 364446542 180954276 173402772 173402772 574417488 710230641 732719552 732719552 270323600 467935798 467935798 538488790 685336892 791015257 791015257 732695925 251869989 228066924 300136348 397659464 397659464 357516518 204940400 127310760 127310760 161554442 335750438 764294252 764294252 227088431 81812812 81812812 413234242 413234242 424674598 426804898 826294348 826294348 685429612 560351752 875301088 875301088 927481217 927481217 542237313 556051360 556051360 54018848 54018848 179806340 179806340 453378148 453378148 386135852 386135852 117639702 371167346 371167346 370580060 370580060 403554308 403554308 478355464 478355464 180818946 327749016 397022586 397022586 216011246 380946884 380946884 376908040 977183510 977183510 805880835 1009796895 1033045296 1033045296 1042358559 1052451215 1052451215 876953357 612442185 121449123 117768298 786499590 786499590 417734813 61561968 61561968 142268985 243948533 243948533 354423340 770203466 770203466 452991568 680659046 680659046 42207253 553914880 877921028 1011091879 1011091879 944905025 564134241 344985670 344985670 222433320 80343552 80343552 626692609 626692609 17949216 620872105 620872105 376562586 876732635 876732635 824486272 37838819 83536328 311217234 546733088 629295944 629295944 339373386 346656522 346656522 374867866 374867866 328970488 402470624 402470624 922375737 922375737 558714394 293073783 410352677 412089414 733507384 733507384 579544824 719393332 748941645 748941645 551219856 184210544 123393720 123355136 103948441 544420737 544420737 654839225 658507449 705946136 705946136 918618256 918618256 509886681 420770048 423099174 423099174 876823404 876823404 501486918 437737684 437737684 433326822 274147576 260648088 169849964 240173724 240173724 256810160 256810160 185369360 185369360 53616688 53616688 52494640 52494640 52437088 44040528 44040192 52527456 54575280 156276224 156276224 139267204 43758484 63182864 63182864 299944098 299944098 35370544 81287162 383582834 383582834 304051642 507178318 507178318 361351752 317801856 513812492 979985680 979985680 1027089084 1027089084 1047799814 1047799814 1014238095 970985891 970985891 673880236 217987057 455625280 455625280 388522434 388522434 914932827 914932827 450888150 450888150 1028129255 1028129255 761491754 910568620 990590007 990590007 640518510 640518510 140121646 197723772 197723772 130167514 72141960 119154314 338025482 338025482 319833746 304367616 212656932 212656932 245815684 245815684 195470384 119815472 109275336 111491368 565182800 637909656 746734336 746734336 559056968 95439424 95439424 68190984 951290188 951290188 413738310 413738310 350298570 519309406 519309406 1014235428 1014235428 1012053649 1012053649 393706269 318789554 318789554 639148636 917416971 917416971 781907928 860305587 860305587 625693868 998666650 998666650 975395420 708775570 313835681 899228773 948523305 948523305 559614466 829897635 967236915 967236915 728646502 500260010 830478145 830478145 302752146 565392969 565392969 246220908 246220908 247767360 247767360 182550992 42074320 42074320 39446160 55087120 162336234 465615958 465615958 480497250 480497250 409975318 409975318 321923158 737460277 808896641 808896641 499310645 499310645 397661000 397661000 656487561 656487561 608903481 984098031 984098031 442306148 442306148 594553467 594553467 835397860 835397860 914753700 914753700 871313721 591139118 365117000 365117000 86907848 365705450 365705450 105916224 21096736 19269472 40420432 373941696 373941696 382866242 382866242 303276096 303276096 121767200 29566416 22350368 19997472 53555584 175433700 175433700 174137748 177209920 177209920 28837728 179617204 179617204 184480288 221786832 221786832 120035768 306360274 369657690 369657690 81350272 374375808 374375808 457357656 457357656 403540102 282886402 383959562 402865292 402865292 282006870 134097638 491887354 491887354 285772616 286525986 297851106 558991490 558991490 286267968 286267968 4589794 71958720 76422216 532503392 532503392 376427742 243795036 445787126 445787126 263728972 104138468 71303304 193136584 193136584 83833040 83833040 23542176 449544694 449544694 382885876 440082972 440082972 385422401 385422401 430221514 430221514 621073424 655426725 144202067 422246334 964091823 964091823 942829192 942829192 801687253 1035266638 1035266638 677413760 647205560 957739594 957739594 445983318 445983318 560682125 579449931 579449931 709936984 753403341 753403341 607963853 806613024 970193538 970193538 285256712 713064645 713064645 394875224 394875224 132657360 837891507 837891507 334672096 811390771 811390771 57565952 57565952 34441216 6555088 46777744 46777744 36515088 34398464 13945792 13945792 13105344 138988868 143300688 174272916 174272916 52414032 152690704 156688612 156688612 46554768 173182640 173182640 157959584 65574144 15987648 30620608 46309376 46395600 50427728 119653684 153406908 389842980 389842980 381748346 180441680 180441680 134267008 21006372 177471910 284826086 742623573 742623573 457302198 596749341 596749341 382053992 382053992 335826074 575237311 575237311 525444120 902416549 902416549 469953608 423833766 476065135 911004195 911004195 955294969 955294969 959345326 959345326 875799071 875799071 715338069 504402451 906051851 906051851 949625901 949625901 918557882 1006970895 1006970895 727982384 727982384 286137378 286137378 648023643 648023643 888256348 888256348 723045813 728310176 728310176 41797552 728275040 795413265 795413265 1026161510 1026161510 581952799 493291520 493040046 807534854 807534854 673864192 1006923920 1006923920 1069832513 1069832513 669627507 302170378 632237172 752071112 752071112 212362036 212362036 742294656 742294656 608439192 608439192 115343761 630610641 739416280 758647341 758647341 744000789 843686344 843686344 589604024 604028937 604028937 392315069 313408176 344078236 961480992 961480992 946550151 824145191 388267096 528483402 676897541 1044441382 1044441382 932184699 1011640660 1011640660 716227413 773018324 773018324 751225196 556834844 1034843071 1034843071 862876703 209720897 193331200 193331200 86118696 72009120 4352 2232576 273334306 318773428 422446630 454312880 454312880 268436226 410324672 410324672 430438048 430438048 942785700 962728580 962728580 944512388 944512388 984942098 984942098 853257779 853257779 861013186 861013186 412111600 412111600 453752372 453752372 437793116 437793116 282592340 126649376 620052785 620052785 119850080 615530033 615530033 229404593 774889757 774889757 772070717 755024189 755024189 794444716 794444716 252261548 121308312 121308312 639782016 668859256 668859256 183068532 122717712 591669889 591669889 301330242 854803766 854803766 131804031 801805484 986552152 986552152 339017153 230066310 1071045375 1071045375 764461729 764461729 213909708 732955206 873599499 965957204 965957204 579538060 385170048 712278136 798058825 798058825 793258696 102622868 156798612 156798612 34735781 547754628 547754628 695867301 764579181 764579181 146447745 146447745 88138920 88138920 203740168 229996711 683488303 696074087 696074087 543482926 386959936 386959936 1007432802 1007432802 998597143 998597143 994329173 422626086 1042617488 1042617488 676721365 1038496337 1059197247 1059197247 899798848 828616960 828616960 445406516 670864824 670864824 335435611 9202880 9971341 994419553 994419553 904195867 842373680 842373680 847901328 919581635 919581635 849786666 294415744 352021986 352021986 32249074 287970594 305601490 305601490 283652128 191083697 724044469 724044469 723258933 842270788 842270788 758798524 922262956 922262956 893274013 762879916 733120469 789762348 789762348 708464172 117704760 68812912 55181472 697648737 697648737 557910264 662775104 662775104 593048225 593048225 580462161 580462161 664742924 664742924 724131864 724131864 256603168 912279470 920399938 920399938 898527916 852232555 1040896548 1040896548 956551730 956551730 833255361 833255361 717268690 581924006 283368529 674125348 674125348 624167201 187061065 985375175 985375175 946807327 1005922967 1005922967 1048026491 1048026491 1025716634 1025716634 949146183 224782764 907578989 907578989 818816350 288124587 693083972 693083972 606065326 609098889 609098889 426035622 1036436452 1060060430 1060060430 703524680 703524680 625074360 264266896 88679592 88679592 122684088 122684088 100811928 127453040 128362616 128362616 58874920 34791952 1573936 0 26018080 26018080 18885728 542420138 542420138 948684190 1067711091 1067711091 247657036 510792606 510792606 338556358 515642692 515642692 362046586 373487730 526987040 526987040 148252592 361982058 361982058 630228994 630228994 94636392 1037566072 1037566072 361605300 743179376 743179376 507523072 185090858 757436560 757436560 639473673 659459433 659459433 646500056 521480834 688390896 688390896 339118088 288617250 938487988 938487988 225987869 108135976 682233184 728236373 728236373 628163460 628163460 583743249 617909152 864707062 864707062 1041810248 1041810248 830920803 830920803 493655463 127926648 221124162 221124162 28777597 835462697 835462697 709493919 797311624 797311624 831726914 831726914 563851428 764986989 929392674 929392674 554180514 554180514 520746992 576864966 672301060 672301060 556847873 556847873 554746401 84021288 220332292 220332292 96639520 18389096 286313504 286313504 277496450 269157698 27454594 21123136 4590720 4590720 17640480 17640480 98190282 282857138 313185618 313185618 374680602 398788288 732655941 732655941 436057714 1073386840 1073386840 805717205 294247554 761278317 761278317 1035440713 1035440713 768975532 482658510 630769257 930923139 1005080230 1005080230 957532411 386753181 188714304 310872352 329428920 329428920 265283436 230483684 445383536 483775278 483775278 444657168 469551270 469551270 330459672 499526854 499526854 189844068 391070178 439160318 439160318 364825376 498074478 498074478 273122122 283245516 483277966 742568647 742568647 158952992 634244041 821146859 905615114 984876892 984876892 1015144896 1015144896 851904846 813306755 813306755 527206152 677405206 1002217562 1061978288 1061978288 180954276 173402772 173402772 574417488 710230641 732719552 732719552 270323600 467935798 467935798 538488790 1000361630 1000361630 367070014 259291100 809780960 809780960 891351493 891351493 682608900 682608900 204940400 127310760 127310760 757145892 757145892 632160704 826809760 826809760 623117094 270532864 413234242 413234242 211735112 211735112 746508488 746508488 685429612 865711578 976328201 976328201 927481217 927481217 542237313 556051360 556051360 247027228 173859748 351859296 351859296 453378148 453378148 386135852 386135852 536152152 536152152 315390448 370580060 370580060 403554308 403554308 388010782 134278150 212818564 212818564 536082594 536082594 186734338 380946884 380946884 543141385 878603461 878603461 406583046 775650647 1033045296 1033045296 202441828 573195562 573195562 797872217 797872217 955527404 955527404 1013721088 1013721088 751373641 645932492 228635704 364640372 543155190 543155190 501488360 769835882 769835882 660527394 680659046 701944322 701944322 684985029 553914880 218239020 218239020 8783980 9962080 19829120 87637834 273694882 273694882 103323418 866197873 866197873 359211872 620872105 906183082 906183082 876732635 876732635 859203586 859203586 836134867 355822779 546733088 629295944 629295944 339373386 346656522 346656522 374867866 374867866 328970488 103859888 329316490 922375737 922375737 558714394 390416528 410352677 412089414 412089414 555986980 579544824 719393332 748941645 748941645 551219856 184210544 123393720 123355136 103948441 544420737 544420737 654839225 658507449 740961920 740961920 537353356 510543832 275563520 420770048 671736837 671736837 876823404 876823404 305792864 516057064 516057064 303822354 347423486 347423486 475694284 475694284 227114724 227114724 221037156 185369360 185369360 128203312 128203312 58440480 58440480 49081648 42916944 134507524 134507524 49087360 156276224 156276224 139267204 185587764 185587764 191078880 191078880 27712224 18599936 93460336 93460336 164092860 164092860 169682636 169682636 379345767 771702367 771702367 979985680 979985680 1027089084 1027089084 622355061 965331332 965331332 942883392 813728010 739285540 739285540 734048432 455625280 334073776 334073776 57205202 335601676 450888150 483721552 993337870 993337870 613061569 910568620 990590007 990590007 640518510 640518510 582622545 582622545 109915192 580104953 580104953 94643472 117792600 599923985 599923985 59532784 667828865 667828865 245815684 245815684 195470384 262208 0 0 776079872 776079872 746734336 746734336 119986488 295848026 295848026 68190984 740899593 740899593 798788218 798788218 570308712 878045804 878045804 985574821 985574821 1012053649 1012053649 803260148 719448160 318789554 639148636 639148636 942154882 942154882 809954367 468303736 468303736 998666650 998666650 975395420 708775570 313835681 899228773 948523305 948523305 559614466 829897635 967236915 967236915 728646502 500260010 500260010 366814826 302752146 512559456 512559456 246220908 246220908 247767360 247767360 182550992 48902932 415894996 466685392 466685392 269429570 372430952 372430952 480497250 480497250 324933872 324933872 427967052 737460277 808896641 808896641 499310645 499310645 397661000 397661000 656487561 656487561 608903481 141234456 182048721 320595767 320595767 594553467 642056592 870982063 870982063 425317646 425317646 342570378 365174858 365174858 365117000 86907848 365705450 365705450 27004512 19269472 19269472 19266048 320033152 331485650 331485650 325206368 351871546 351871546 378549514 378549514 313843922 122116602 355444948 534486608 534486608 147923680 147923680 51962640 51962640 61183664 61183664 33760576 124006528 124006528 120035768 306360274 369657690 369657690 93405824 374375808 374375808 319102386 403540102 403540102 441237506 441237506 402659408 402659408 876972989 876972989 358018042 799620287 1033587312 1033587312 806537891 558991490 832039104 832039104 823857699 823857699 558671840 558671840 532503392 532503392 941691169 941691169 945236909 945236909 656611593 758417937 953576297 953576297 514931298 247964484 1057038399 1057038399 1003399639 1003399639 832139076 832139076 440082972 385422401 385422401 430221514 430221514 368984880 607126127 794560440 794560440 964091823 964091823 942829192 942829192 801687253 223422528 928517782 928517782 647205560 957739594 957739594 445983318 445983318 992264359 1016147566 1016147566 709936984 753403341 753403341 607963853 109316177 180684624 180684624 1010344888 1010344888 361649194 93168970 353199266 353199266 321490290 26265442 291747712 331272128 331272128 40384896 40384896 9111632 4202752 15506432 15506432 10744128 11847680 13945792 13945792 9172032 138988868 143300688 174272916 174272916 52414032 152690704 156688612 156688612 46554768 173182640 173182640 157959584 65574144 57286288 57286288 46309376 46395600 50427728 119653684 153406908 389842980 389842980 381748346 180441680 180441680 134267008 37907136 50631556 286460144 286460144 299952020 457302198 457302198 179920900 181342592 181342592 390632170 390632170 353946778 286261344 418933250 418933250 141507972 149704448 473443914 798253000 798253000 955294969 955294969 959345326 959345326 875799071 875799071 578723017 334680659 856204579 856204579 453658294 255856764 701760714 1006970895 1006970895 942225411 942225411 720045465 799675773 799675773 648023643 888256348 888256348 723045813 728310176 728310176 38191220 550277396 550277396 458260836 1026161510 1026161510 581952799 242378886 940041098 940041098 806622483 673864192 1006923920 1006923920 724775733 669627507 669627507 138085580 632237172 632237172 708204645 798802821 798802821 240945260 780810917 780810917 608439192 35390016 42614992 146988656 186047028 186047028 47486224 843686344 843686344 623138740 698143669 698143669 483538220 483538220 97327620 961480992 961480992 946550151 824145191 792730405 474269838 801531694 875130621 890044454 932184699 932184699 822158112 808452867 773018324 773018324 751225196 556834844 1034843071 1034843071 856563463 856563463 766135647 319574299 684463323 684463323 710990290 807835029 807835029 726549542 422446630 454312880 454312880 165954848 165954848 138152960 149800704 149800704 138939940 138939940 136383780 152302116 155691648 155691648 1624576 21490176 21490176 302125072 302125072 268435458 170917936 453752372 453752372 110666880 84715072 121964616 126649376 126649376 17129688 68749712 100663320 112312896 229404593 774889757 774889757 772070717 755024189 755024189 740376912 252261548 252261548 121308312 121308312 639782016 668859256 668859256 183068532 122717712 386764138 386764138 1034549458 1034549458 98493957 68116480 112424448 986552152 1007290176 1007290176 683430657 1071045375 1071045375 697861134 368072457 138938252 732955206 873599499 965957204 965957204 385170048 385170048 377337768 377337768 215548008 215548008 81043784 81043784 40859040 32008704 27030112 31914432 76020144 76020144 31463680 49024000 49024000 10873152 108226834 351482826 456325746 456325746 425501024 407075434 230994412 334402894 334402894 1007432802 1007432802 880837643 994329173 994329173 330574628 432143424 432143424 141826140 395019314 395019314 899798848 954851527 954851527 828616960 630692232 630692232 601408280 1051831142 1051831142 710292212 937488120 937488120 885471435 552249666 572958016 572958016 271631633 572676096 572676096 127405784 127405784 100152712 100152712 287970594 305601490 310197600 310197600 103561869 685054997 685054997 1055733648 1055733648 842270788 577555172 943461833 943461833 913999429 913999429 879232395 355484382 243041300 243041300 327173344 327173344 243816642 479761756 479761756 185243688 215082400 215082400 118645832 216964060 216964060 236901904 581145856 581145856 724131864 842935858 842935858 540366090 1032773121 1032773121 139802727 69087752 664675459 664675459 1009266534 1009266534 935261200 833255361 875240972 875240972 854810471 602639698 572032624 571474449 103809537 82961800 78120264 190164628 1005922967 1005922967 1048026491 1048026491 948632084 950409543 950409543 780587843 647107161 818816350 818816350 293917038 497207394 497207394 606065326 609098889 609098889 478214190 478214190 405212174 1022722834 1022722834 382370477 69156488 88160776 88679592 88679592 122684088 122684088 100811928 100811928 184555084 184555084 58874920 186422812 186422812 61155696 391621149 799889819 912656141 912656141 766587082 948684190 1067711091 1067711091 909955425 909955425 886760081 778667798 515642692 515642692 362046586 373487730 526987040 526987040 292953792 368912104 368912104 96950474 273364643 273364643 117103497 361605300 361605300 743179376 743179376 563093537 563093537 389694864 642941723 642941723 659459433 659459433 646500056 26757144 688390896 688390896 63964197 6556032 578852096 578852096 51041601 17486880 682233184 728236373 728236373 628163460 628163460 583743249 583743249 864707062 864707062 1008273185 1008273185 1043858207 1043858207 344006450 413263204 413263204 403339378 403339378 835462697 835462697 709493919 310661542 621742330 873596232 873596232 277748515 555880737 929392674 929392674 285284864 588326201 588326201 1068507186 1068507186 965874279 965874279 556847873 554746401 318768800 757744166 761974227 761974227 176085444 410045901 1015054863 1015054863 1020392071 1020392071 1019344965 679735365 674630532 674630532 543436864 563347492 563347492 313185618 313185618 374680602 398788288 398788288 323513984 384219418 384219418 342078344 511558248 511558248 761278317 761278317 822085056 822085056 634922474 242581877 630769257 930923139 1005080230 1005080230 628758441 547286505 537469953 310872352 329428920 329428920 282120832 230483684 230483684 197323028 197323028 444657168 469551270 469551270 330459672 499526854 499526854 189844068 391070178 439160318 439160318 364825376 498074478 498074478 233831916 253108308 1041762195 1041762195 378541706 150078872 814268167 814268167 197058644 984876892 984876892 706948714 851904846 851904846 831316571 833144163 833144163 677405206 900579977 1061978288 1061978288 379240976 379240976 62305712 62305712 38971392 39665248 39665248 421527732 421527732 140610660 669348864 1000361630 1000361630 367070014 875064417 875064417 809780960 891351493 891351493 682608900 682608900 8017440 343626656 345135786 757145892 757145892 632160704 826809760 826809760 623117094 270532864 271107330 271107330 142606400 142606400 580159920 580159920 773587628 865711578 976328201 976328201 683284295 606772909 507111198 507111198 430276548 500752588 500752588 351859296 351859296 337749122 199803078 199803078 117461446 536152152 536152152 315390448 230329616 243816776 397952828 397952828 512147960 512147960 212818564 212818564 536082594 536082594 526189056 526189056 390558518 543141385 878603461 878603461 705087004 775650647 775650647 590222383 741115547 741115547 661615074 797872217 816191811 955527404 955527404 1013721088 1013721088 751373641 645932492 228635704 458961941 962449699 962449699 501488360 1028921384 1028921384 760499306 660527394 701944322 701944322 684985029 475323021 218239020 233576864 233576864 210375756 80902976 87637834 273694882 273694882 909416729 909416729 866197873 823667840 823667840 906183082 906183082 820549443 106248747 859203586 859203586 836134867 355822779 296631720 296631720 85012072 71142208 28059976 94945984 94945984 91752360 282905728 282905728 329316490 329316490 321169794 321169794 390416528 390416528 297844962 297844962 89592768 308412610 308412610 44224848 48398464 48398464 33772224 64364656 64364656 34376464 35337744 572789440 573711377 684691473 740961920 740961920 510543832 816874838 979158805 979158805 671736837 671736837 858969686 858969686 305792864 516057064 516057064 303822354 347423486 347423486 475694284 475694284 93870880 96240744 96240744 86508840 95424872 128993040 128993040 58440480 58440480 49081648 51979328 134507524 134507524 49087360 145316628 145316628 46710400 185587764 185587764 191078880 191078880 30923440 206063172 206063172 93460336 70305048 261845716 261845716 47883820 502662594 771702367 771702367 1058266604 1058266604 966077031 966077031 328611367 587204122 942883392 942883392 933351821 933351821 968958183 977338480 977338480 296796512 28614944 24464178 34636048 34636048 483721552 993337870 993337870 840059410 613061569 560454766 560454766 548156649 359170187 582622545 582622545 109915192 580104953 580104953 94643472 109958480 599923985 599923985 59532784 667828865 667828865 236602004 236602004 151846608 84595752 84595752 98755944 776079872 776079872 1007304706 1007304706 143395908 295848026 295848026 64575962 740899593 740899593 798788218 798788218 570308712 878045804 878045804 985574821 985574821 706298379 803260148 803260148 719448160 69091396 97526496 879641860 1011275919 1011275919 879079567 745996559 410932745 578984332 753027287 753027287 676717349 135596103 814094347 814094347 679749644 277851183 154924836 154924836 156169200 156169200 80483432 123387016 123387016 25959128 261035432 261035432 197133232 198236732 198236732 189928004 180888116 158942000 415894996 466685392 466685392 269429570 372430952 476440974 476440974 468527188 468527188 83089990 427967052 427967052 336789640 337066506 337066506 133583722 71562080 322999258 463132278 986072933 986072933 149162436 936717029 936717029 418915068 287002838 652273072 892251059 892251059 992144261 992144261 996315328 996315328 365174858 279757792 69542208 20218432 27004512 45926800 45926800 29360320 47187600 47187600 331485650 331485650 325206368 553949667 789765932 789765932 769972293 769972293 122116602 658772028 658772028 1063446463 1070686911 1070686911 1063330320 324818514 324818514 284094480 190108304 190108304 156767120 114679600 111417728 111417728 38189568 93405824 93405824 83183648 319102386 319102386 370297056 441237506 441237506 440700340 385898482 876972989 876972989 441635854 799620287 1033587312 1033587312 806537891 520202276 832039104 832039104 823857699 823857699 558671840 558671840 161220454 31523301 941691169 941691169 945236909 945236909 656611593 758417937 953576297 953576297 514931298 247964484 1057038399 1057038399 1003399639 1003399639 832139076 832139076 172769296 241984784 241984784 205908108 245176316 245176316 23142816 794560440 794560440 625087017 625087017 214415465 166979629 180480501 180480501 928517782 928517782 575963349 268487699 864100404 864100404 281354773 992264359 1016147566 1016147566 587276296 604053513 791790349 791790349 478260013 673237555 1007979333 1010344888 1010344888 583671925 583671925 551900480 553683137 562085985 562085985 291747712 331272128 575532688 575532688 539751904 539751904 42726480 8650064 8702144 11879296 11879296 7414656 8218240 9824896 9824896 146342400 146342400 143741184 156803780 157353444 157353444 149173124 55991536 192864112 192864112 61070564 142942960 197037568 197037568 64287696 83830484 107169425 739626497 739626497 491077017 902377307 902377307 514949743 612708298 804332189 804332189 869026210 869026210 388304504 865692384 865692384 1026734757 1026734757 528276212 351976488 390632170 895095955 895095955 525967962 539289723 539289723 216393004 528484650 528484650 798253000 798253000 259201939 232416478 855936773 855936773 557140379 646479568 646479568 581011123 581011123 386614872 488196665 777815136 777815136 708911138 891560200 942225411 942225411 720045465 799675773 799675773 741667288 550761153 228370925 132932016 132932016 38191220 38191220 550277396 881594780 988683735 988683735 445195350 445195350 268844116 940041098 940041098 992206883 992206883 723775797 554394197 549005121 712824753 712824753 504014672 504014672 193678966 708204645 798802821 992741318 992741318 780810917 780810917 1050427466 1050427466 672139914 907187834 907187834 906123519 815436728 186648364 539230785 623138740 698143669 698143669 483538220 483538220 125646712 312873291 312873291 729039008 792730405 792730405 474269838 801531694 801531694 784021341 533866156 822158112 822158112 808452867 390627604 746609916 746609916 690019253 384338920 694161728 856563463 942314757 942314757 672583466 684463323 684463323 710990290 864869604 864869604 726549542 134481012 160193352 160193352 165954848 218445256 218445256 166686764 149800704 138939940 138939940 136383780 152302116 155691648 334807730 334807730 321398130 324003986 459837892 459837892 327569072 327569072 504927510 504927510 516314806 516314806 421203780 136655400 70115336 10862920 68749712 100663320 112312896 112312896 129018744 129018744 93090344 36490512 41947168 648631432 648631432 55222449 774438936 774438936 679612485 81912264 81912264 40047832 4768896 386764138 386764138 1034549458 1034549458 98493957 68116480 112424448 112424448 1007290176 1007290176 812123790 812123790 697861134 697861134 275792609 226497640 805835040 805835040 281592076 381544318 381544318 186167300 217297868 217297868 215548008 215548008 81043784 81043784 32008704 32008704 21106848 21106848 79816992 249644212 249644212 213918992 213918992 16900128 266522032 351482826 505992477 1032711279 1032711279 900490787 900490787 834709027 560863586 154669828 135168 135168 302000656 373672542 373672542 211075722 156524734 141826140 381633886 381633886 475783413 954851527 954851527 621282345 630692232 630692232 179380861 1051831142 1051831142 710292212 937488120 937488120 964700356 964700356 552249666 840182019 853491411 853491411 572676096 127405784 127405784 100152712 100152712 87725280 5630592 319458088 319458088 73033240 73033240 41869200 1055733648 1055733648 226382183 577555172 943461833 943461833 913999429 913999429 879232395 755253336 629283542 629283542 525126570 525126570 385370572 479761756 801513354 801513354 907891996 907891996 658905657 658905657 247041817 763579905 798022974 798022974 524114518 842935858 842935858 995796495 1032773121 1032773121 958996674 958996674 664675459 664675459 1009266534 1009266534 935261200 1046946425 1046946425 983494953 854810471 717640162 692033037 750071393 781066364 781066364 135673080 228274184 228274184 214104460 214104460 275572762 832887072 950409543 950409543 780587843 877137071 986449027 986449027 595929201 903576674 903576674 470462467 549864040 549864040 478214190 625977132 983564544 1069647906 1069647906 1016814533 653584136 204095568 120263560 39564416 39564416 5452416 141701770 408937038 408937038 410069048 410069048 186422812 369396280 369396280 391621149 799889819 912656141 912656141 766587082 135577064 135577064 380060996 909955425 909955425 886760081 778667798 99620488 99620488 86693160 86693160 70560874 292953792 327682816 368912104 368912104 96950474 348796064 348796064 354992216 354992216 344154184 344154184 362220594 563093537 563093537 389694864 642941723 642941723 10109192 71338056 71338056 46416512 706349440 706349440 47208337 6556032 204508812 739344880 745139789 745139789 694343973 694343973 692352512 575651840 577165713 577165713 21371040 520870066 520870066 411058241 939573255 1043858207 1043858207 1017883471 607584324 648071954 648071954 403339378 232954312 232954312 352388192 352388192 987308730 987308730 1043468828 1043468828 775107103 730993269 190032425 285284864 588326201 588326201 1068507186 1068507186 965874279 965874279 413668113 318768800 318768800 757744166 761974227 761974227 176085444 410045901 1015054863 1015054863 1020392071 1020392071 1019344965 679735365 674630532 674630532 543436864 563347492 563347492 399360 17960480 17960480 4194816 5243520 11702400 105931584 301572828 301572828 511558248 511558248 975364883 975364883 849285946 849285946 387868722 420348342 420348342 474927448 816399770 958762313 958762313 547286505 537469953 303319410 500280067 867337929 867337929 218290451 655446916 1022985050 1022985050 56658560 56658560 53791536 63314160 63314160 38804064 57704720 57704720 445847904 445847904 505534486 505534486 422219850 176233020 975322543 1041762195 1041762195 378541706 150078872 814268167 814268167 197058644 857552034 930047312 930047312 44678587 542074970 831316571 833144163 833144163 360243412 474079374 474079374 376753050 379240976 379240976 168321140 168321140 154994176 174947584 174947584 421527732 874628203 874628203 740701165 669348864 865032423 865032423 875064417 875064417 69854472 879359626 879359626 615313216 615313216 145962434 900038181 900038181 922304540 922304540 843432158 843432158 807462179 425755687 161089508 585760977 625739336 767856617 871914270 871914270 580159920 773587628 773587628 772065309 622973749 606772909 606772909 11845477 91454632 351666822 500752588 500752588 351360484 326770720 524572356 524572356 343933002 199459054 430907268 430907268 194647668 230329616 243816776 243816776 221889352 512147960 512147960 186933984 186933984 132497728 132497728 526189056 526189056 390558518 322482746 322482746 794448420 794448420 642303129 640343263 590222383 741115547 741115547 661615074 661615074 816191811 820083022 820083022 304448898 547780265 547780265 240015628 750100313 1002976133 1002976133 962449699 898896196 1028921384 1028921384 831577217 831577217 148375168 673734116 941360805 941360805 1011293697 1011293697 475412206 609522058 609522058 559792424 157347104 102910297 909416729 909416729 565950752 823667840 823667840 374900440 374900440 877234362 877234362 558180513 572684992 572684992 15013969 27306344 85012072 85012072 271226370 353176578 353176578 368914410 368914410 282905728 304404408 358489770 823032103 823032103 488098482 526755391 526755391 82323643 699028556 699028556 891439002 891439002 712754383 712754383 551262168 168465936 105029648 105029648 39395649 545523265 579745808 579745808 684691473 684691473 653033872 653033872 816874838 979158805 979158805 436227973 455741536 455741536 282198638 265828060 521703768 521703768 8482904 317653768 317653768 269871618 35056242 26663520 227016744 227016744 170159120 170159120 128993040 128993040 16828896 59598272 59598272 51979328 51979328 40080256 40080256 38295696 34004736 46710400 46710400 37358976 34534464 30923440 45187328 206063172 206063172 25911480 50340964 261845716 261845716 216659352 502662594 502662594 476132632 1058266604 1058266604 966077031 966077031 328611367 587204122 587204122 434827475 933351821 933351821 968958183 977338480 977338480 63251016 246416246 307497618 307497618 738267514 738267514 524429451 840059410 840059410 371460233 579849567 870032663 870032663 877646242 877646242 569978832 316943737 67190784 1574400 1574400 61866544 61866544 54397872 54397872 206583429 554770437 763437165 763437165 1059187067 1059187067 780315037 780315037 685936744 685936744 1007304706 1007304706 673613120 904053038 904053038 216980940 154281952 154281952 20653216 165097472 826147680 826147680 814619715 28319523 546368324 674235141 1018299263 1018299263 766002492 421731083 738231360 879641860 1011275919 1011275919 879079567 745996559 410932745 578984332 753027287 753027287 891570792 891570792 213175567 142848324 142848324 151032160 151032160 144959008 144959008 33204196 158312736 158312736 118343008 118343008 261035432 261035432 197133232 198236732 198236732 161092410 486097754 486097754 398705242 229189928 229189928 143395908 347021012 476440974 476440974 468527188 468527188 253722852 163662332 294726242 294726242 274152066 274152066 282666690 282666690 77259490 463132278 986072933 986072933 149162436 936717029 936717029 418915068 287002838 652273072 892251059 892251059 992144261 992144261 996315328 996315328 149700864 16827968 22365728 22365728 18925504 45926800 45926800 29360320 47187600 47187600 28204001 28204001 283304192 1025012484 1025012484 789765932 769972293 769972293 648433928 658772028 658772028 1063446463 1070686911 1070686911 1063330320 324818514 324818514 284094480 190108304 190108304 156767120 114679600 98108192 763630281 763630281 227607016 704195849 704195849 553140552 827351157 827351157 771355351 657701115 1066136703 1066136703 699353370 0 441635854 464309622 464309622 383295582 520202276 520202276 419508900 369488044 533706996 533706996 527185282 527185282 799177953 799177953 920208095 920208095 278281061 1026804011 1026804011 363062570 363062570 75547656 135239560 135239560 100823952 301084748 419479590 419479590 420563618 420563618 427041779 427041779 326292402 1007891401 1007891401 267576304 417751210 680590261 680590261 625087017 625087017 226585544 226585544 471458848 679758470 679758470 276824130 276824130 1366082 864100404 864100404 54886695 48622032 44903760 44903760 587276296 604053513 791790349 791790349 750012448 673237555 1007979333 1007979333 738582642 583671925 583671925 551900480 553683137 562085985 562085985 24151425 17908384 575532688 575532688 539751904 553754640 553754640 304642432 38796432 14847232 14847232 7414656 12846336 12846336 9824896 146342400 146342400 13714180 156803780 157353444 157353444 149173124 55991536 192864112 192864112 61070564 142942960 197037568 197037568 64287696 83830484 107169425 739626497 739626497 491077017 902377307 902377307 514949743 612708298 804332189 804332189 869026210 869026210 388304504 865692384 865692384 1026734757 1026734757 528276212 351976488 150548648 895095955 895095955 525967962 997826827 997826827 523051051 528484650 528484650 740943117 740943117 692665389 692665389 671687685 606341664 28630313 646479568 646479568 581011123 581011123 562730866 488196665 777815136 777815136 708911138 708911138 699990493 680076357 142667784 142667784 741667288 741667288 550761153 260488248 694844464 694844464 170984576 170984576 113061700 881594780 988683735 988683735 445195350 673419332 673419332 614527357 721580052 992206883 992206883 723775797 554394197 549005121 712824753 712824753 550310150 1018464839 1018464839 827477711 777708057 992741318 992741318 348504040 711200213 1050427466 1050427466 672139914 907187834 907187834 906123519 815436728 438636590 186788628 203075332 203075332 302301716 302301716 260121856 125646712 465437922 465437922 204755216 673449988 673449988 944801081 1059774040 1059774040 548173912 533866156 449611495 449611495 939575406 939575406 750688673 789760173 789760173 786616797 678955861 678955861 942314757 942314757 672583466 374175948 429924321 429924321 864869604 864869604 700894770 463652224 425722198 308545988 182454672 218445256 243245024 243245024 235004092 233510780 88135424 88135424 86059488 63996064 334807730 334807730 321398130 324003986 459837892 459837892 327569072 327569072 504927510 504927510 516314806 516314806 421203780 370414340 464284000 464284000 109142144 109142144 51971704 354234200 354234200 371017530 373028730 373028730 297894624 648631432 648631432 100669592 774438936 774438936 679612485 81912264 472265606 472265606 332476936 714767513 714767513 1027976600 1027976600 678833666 678833666 711508124 711508124 632030914 947051788 947051788 812123790 787120258 959600014 959600014 1056576898 1056576898 805835040 640320880 615097837 1055433916 1055433916 8912960 8912960 152087648 152087648 202985036 202985036 141459844 153899008 153899008 29360192 79816992 249644212 249644212 213918992 213918992 67244040 266522032 266522032 505992477 1032711279 1032711279 900490787 900490787 834709027 560863586 326243380 280203474 1031919636 1031919636 1012353647 440699023 211075722 142608248 129499204 148796748 316947076 474367018 474367018 603980832 621282345 621282345 179196008 179196008 723101925 759561884 798813393 798813393 606213641 964700356 964700356 415546471 840182019 853491411 853491411 51970051 51970051 34604592 56543024 56543024 335728514 335728514 321608018 319458088 73033240 698621533 698621533 579382465 1016839123 1016839123 875911743 869301904 869301904 459587689 489746255 755253336 755253336 713197625 629283542 525126570 525126570 1013849632 1013849632 801513354 801513354 907891996 907891996 658905657 658905657 247041817 763579905 798022974 798022974 455863592 491244606 491244606 995796495 995796495 789110828 958996674 958996674 507361204 317603088 564742965 564742965 379506788 1046946425 1046946425 983494953 717640162 717640162 692033037 750071393 781066364 781066364 135673080 235490813 668174657 933460553 1000415835 1000415835 623132801 623132801 612608256 612608256 877137071 986449027 986449027 595929201 903576674 903576674 470462467 353359051 353359051 80150696 625977132 983564544 1069647906 1069647906 1016814533 653584136 569420136 551337088 92316032 100889112 100889112 141701770 408937038 408937038 523325472 523325472 506721054 369396280 369396280 174201624 412327352 412327352 236009876 283208828 371998528 371998528 380060996 380060996 239032398 312945408 312945408 99620488 269924354 270532098 276297728 276297728 83971130 327682816 327682816 15440074 276842816 348796064 348796064 354992216 354992216 344154184 344154184 362220594 362220594 310592464 312853250 312853250 303713986 372978050 372978050 365982048 218112208 706349440 744882989 744882989 22420128 742940141 742940141 745139789 745139789 694343973 694343973 113473640 803341608 803341608 781082577 991478585 991478585 962254503 411058241 939573255 984912927 1017883471 1017883471 607584324 648071954 885137408 885137408 104866896 104866896 352388192 352388192 987308730 987308730 1043468828 1043468828 775107103 730993269 190032425 97831656 386541904 386541904 509947222 509947222 367202786 264378506 201458128 85067312 101323800 106135712 106135712 72512680 14382208 14382208 15118720 83326336 83326336 210390288 210390288 167777936 174983172 174983172 52570448 109637810 365917226 365917226 353369130 383440090 383440090 369098912 26345520 297455640 297455640 252087348 523638038 523638038 975364883 975364883 849285946 849285946 663658503 420348342 1069621503 1069621503 816399770 958762313 958762313 813738361 651115737 569094520 569094520 867337929 867337929 218290451 655446916 1022985050 1022985050 408390324 439802646 439802646 312667544 477527462 477527462 174199188 401422002 445847904 445847904 505534486 505534486 495177042 880117626 975322543 1030689047 1030689047 317326982 317326982 312554966 312554966 392367744 392367744 930047312 930047312 309208295 855575169 855575169 796658825 326108020 823150286 957908767 957908767 723554118 180394196 180394196 176296020 174919680 154994176 174947584 174947584 307900992 874628203 874628203 740701165 625160361 865032423 865032423 584456913 245400413 245400413 616056936 616056936 429999941 583050241 1001341558 1001341558 900038181 922304540 922304540 843432158 843432158 807462179 425755687 161089508 585760977 625739336 767856617 871914270 910323316 910323316 303663253 400217850 400217850 194603498 283425058 357591328 357591328 381638740 498570082 498570082 334248252 326770720 326770720 524572356 524572356 343933002 199459054 430907268 430907268 346832358 346832358 260524604 260524604 504199258 504199258 67150660 50682532 187679128 441384818 441384818 148707884 455979668 530837314 530837314 342943242 794448420 794448420 642303129 39501047 95502692 330846574 330846574 243406204 243406204 136788228 996149504 996149504 140558724 547780265 547780265 240015628 750100313 1002976133 1002976133 702797539 898896196 898896196 805883968 831577217 831577217 148375168 673734116 941360805 941360805 1011293697 1011293697 475412206 609522058 609522058 559792424 285461154 376673146 376673146 565950752 833567009 833567009 853804400 853804400 374900440 877234362 877234362 558180513 558180513 333023378 274380674 280416896 280416896 84079650 271226370 353176578 353176578 368914410 418792202 418792202 304404408 358489770 823032103 823032103 488098482 526755391 526755391 169819668 699028556 699028556 891439002 891439002 712754383 712754383 551262168 168465936 105029648 105029648 103878280 545523265 633648369 633648369 108188376 108188376 653033872 653033872 643438793 643438793 540677889 760691373 760691373 752876693 565382036 147895048 521703768 521703768 78920000 317653768 317653768 271790850 35056242 85515072 227016744 227016744 170159120 170159120 45111632 45111632 16997120 59598272 59598272 50546592 50546592 22104096 22104096 10050624 17819104 33720384 33720384 67095392 67095392 55666704 45187328 45187328 31106224 31106224 524288 89744896 216659352 216659352 141220040 141220040 476132632 476132632 360533234 360533234 429913250 465641718 465641718 277640356 277640356 136788228 136788228 123283128 177809492 177809492 63251016 246416246 307497618 307497618 780228647 780228647 524429451 953436766 953436766 371460233 579849567 870032663 870032663 877646242 877646242 569978832 316943737 121205968 121205968 112613720 113462256 576979441 576979441 539233808 671093441 671093441 763437165 763437165 1059187067 1059187067 780315037 780315037 685936744 685936744 1022099662 1022099662 673613120 904053038 904053038 216980940 559787491 559787491 955553444 955553444 848860369 826147680 814619715 514718846 840506808 840506808 1018299263 1018299263 766002492 421731083 738231360 738231360 949169268 949169268 822276711 414351623 294650466 297795941 472381710 472381710 891570792 891570792 810412235 810412235 679979432 426507531 151032160 140908932 137677572 288589732 288589732 158312736 118343008 118343008 111487320 184634452 260735588 260735588 200463152 200463152 486097754 486097754 398705242 288024692 17826336 17826336 208926562 218015654 431869160 431869160 485374282 491182254 491182254 462510856 407028484 439613910 492090384 492090384 325780872 379692952 379692952 92620672 97467624 97467624 97467624 546830848 546830848 573288496 573288496 556320033 422262054 422262054 355806986 355806986 140585988 191750144 191750144 186695988 142672260 142672260 191105460 191105460 162568992 162568992 63311312 332785378 332785378 20583840 1025012484 1025012484 439953927 321989434 277118976 648433928 648433928 113399945 184651792 432494944 432494944 397335930 61730160 248161068 248161068 89588224 88553640 83984608 98108192 98108192 763630281 763630281 227607016 704195849 704195849 553140552 827351157 827351157 771355351 657701115 1066136703 1066136703 699353370 218835242 373772350 464309622 464309622 67141704 298479642 381807232 381807232 369488044 533706996 533706996 239213654 422270269 799177953 799177953 920208095 920208095 719062100 1026804011 1026804011 363062570 633580365 633580365 224539274 1059455753 1059455753 453261869 810305459 945824047 945824047 924889180 427041779 528810104 528810104 1007891401 1007891401 267576304 417751210 0 0 7883916 204786444 226585544 226585544 819218432 819218432 814743552 814744131 814744131 324483762 990633104 990633104 842265363 842265363 855760947 855760947 823214608 37884048 289440612 1035281126 1035281126 993076083 353742371 831597150 831597150 690069986 836982170 836982170 375525425 51523874 285377058 285377058 603050386 603050386 858690672 858690672 553754640 553754640 304642432 44766592 44766592 36649088 14241344 14241344 12846336 6343296 6343296 8647232 9625600 9625600 536640 9049152 13505792 13505792 14814272 14814272 16328640 16328640 36654144 44298576 44298576 70169088 70169088 3123200 69915904 69915904 68354388 68354388 217265100 508847808 512617566 512617566 298617934 254804796 254804796 234926100 234926100 145104672 145104672 222868736 222868736 221198508 486674478 486674478 306184206 997826827 997826827 523051051 523051051 683435552 740943117 740943117 692665389 692665389 671687685 350475727 666235003 666235003 601263402 847675313 847675313 811011088 870007248 870007248 513848637 1029780136 1029780136 331085682 331085682 329253234 329253234 455379836 455379836 260488248 260488248 694844464 694844464 536986241 536986241 752127888 903104800 903104800 419796183 419796183 673419332 673419332 614527357 614527357 473426497 906043419 971057753 971057753 965879467 965879467 781514013 1058522485 1058522485 1018464839 827477711 545811616 545811616 1049120 134527120 686223060 686223060 418433622 418433622 328425926 340332362 406589068 438636590 438636590 209728032 203075332 203075332 302301716 302301716 69021192 88881460 805603586 805603586 693404065 693404065 673449988 944801081 1059774040 1059774040 548173912 319236157 449611495 584687684 1006986897 1006986897 872679435 789760173 789760173 786616797 312411152 312411152 208543116 310516222 310516222 374175948 428808896 428808896 147639684 300734898 463652224 463652224 425722198 308545988 182454672 182454672 243245024 243245024 235004092 233510780 84100780 50813952 63996064 63996064 51686816 31206272 33355018 97967208 356536642 356536642 335679498 326894390 326894390 209509780 448939478 448939478 379636256 370414340 464284000 464284000 109142144 109142144 51971704 354234200 354234200 371017530 373028730 373028730 297894624 640385336 640385336 100669592 764093608 764093608 683806917 32357765 472265606 472265606 370372168 953516145 953516145 1027976600 1027976600 941692032 941692032 711508124 711508124 803305480 947051788 947051788 787120258 787120258 1032336448 1032336448 1056576898 1056576898 640320880 640320880 615097837 1055433916 1055433916 259182652 122689064 214928933 558297605 672659973 672659973 563926149 563926149 227280329 42595781 734713077 734713077 549508337 50421824 67244040 67244040 2162816 6365568 82262152 82262152 12656832 10486080 10486080 275515680 326243380 326243380 659686653 1031919636 1031919636 1012353647 440699023 508564096 508564096 257166012 365518680 481266769 481266769 474367018 352884878 932379138 932379138 612761144 179196008 723101925 759561884 798813393 798813393 607835913 444131599 444131599 94971240 286006880 286006880 278008386 66335490 123733488 123733488 65537520 56543024 335728514 335728514 321608018 292667424 67639456 698621533 698621533 579382465 1016839123 1016839123 875911743 188255360 94540264 459587689 489746255 586878544 713197625 713197625 173605938 507009884 507009884 1013849632 1013849632 904795653 395839098 395839098 757370392 758695725 758695725 802296832 802296832 254804200 132517480 455863592 491244606 491244606 995062516 995062516 788578365 402786914 402786914 6794112 104683912 104683912 68498584 55059456 304678024 369295674 369295674 335753226 321934896 135979016 136179204 243075140 243075140 61242812 235490813 668174657 933460553 1000415835 1000415835 547257438 174783653 612608256 612608256 620182545 727786664 727786664 763901756 763901756 1063851293 1063851293 814268993 808587531 808587531 919240914 919240914 720005575 305594840 305594840 569420136 569420136 551337088 92316032 100889112 100889112 103979544 103979544 262416 523325472 523325472 506721054 373678868 373678868 174201624 174201624 268818816 268818816 284105832 371998528 371998528 158489350 239032398 239032398 84290778 84281770 84281770 269924354 270532098 284461538 284461538 890557177 890557177 353649770 838601217 838601217 276842816 271074642 271074642 319297632 319297632 813960257 813960257 865248305 865248305 834308658 312853250 303713986 372978050 372978050 365982048 218112208 590156368 744882989 744882989 55913136 742940141 742940141 58740704 66635760 192940996 192940996 147428516 803341608 803341608 781082577 991478585 991478585 962254503 127850584 127850584 110804240 110804240 79556424 79031112 369324048 885137408 885137408 383856704 104866896 549650537 549650537 83955888 50331696 613858329 613858329 564918080 550495312 558387441 644787186 931252146 931252146 277860611 199319062 459804096 459804096 121676440 304605592 377188402 377188402 414900750 414900750 60571496 99359912 344586112 352052482 352052482 350273994 344114560 167777936 174983172 174983172 20847888 109637810 365917226 365917226 353369130 383440090 383440090 369098912 35127568 297455640 297455640 252087348 523638038 523638038 185736244 671925276 671925276 663658503 663658503 402775153 1069621503 1069621503 698366339 932116499 932116499 813738361 651115737 599719184 599719184 97291649 5061664 39271056 39271056 521437706 521437706 408390324 439802646 439802646 312667544 477527462 477527462 174199188 401422002 401422002 807521047 956813239 956813239 600874239 1057944174 1057944174 494030095 605726516 842531355 842531355 1032985327 1032985327 1044854917 1044854917 809922606 270713352 606218364 855575169 855575169 796658825 637306971 823150286 957908767 957908767 856971059 857655425 857655425 546414560 577316241 577316241 563651792 20499456 307900992 319957090 319957090 312622866 312622866 156896373 584456913 584456913 245400413 351145016 558671726 558671726 429999941 583050241 1001341558 1001341558 522298566 81070096 114369240 114369240 33565640 2623488 2623488 525312 203952386 270663692 270663692 141791342 910323316 910323316 894035117 400217850 545595459 958523490 958523490 769901028 1019351247 1019351247 664475196 498570082 334248252 534619146 534619146 274279076 242535324 370432444 496443290 496443290 411106048 346832358 346832358 260524604 260524604 504199258 504199258 169258778 247820836 247820836 441384818 441384818 148707884 455979668 530837314 548541249 889755189 889755189 868004880 960101218 960101218 973571792 973571792 546447094 546447094 483638197 433334168 996149504 996149504 438641934 438641934 351044228 64148208 88362392 795000192 795000192 490268232 498712430 811168998 816447363 820239493 820239493 676454055 823107814 823107814 422051911 424215623 430060449 430060449 419368904 91502278 100016298 285461154 376673146 538368513 816765697 833567009 833567009 853804400 853804400 833383554 833383554 358675256 546850576 546850576 333023378 636510144 636510144 605164041 561272104 88443904 91975592 91975592 263583792 418792202 418792202 295322560 142458528 423414582 440443174 440443174 457738388 457738388 169819668 169819668 167784048 353020848 353020848 300288888 128983952 61051128 85332856 85332856 103878280 103878280 38484624 633648369 633648369 108188376 108188376 216563984 216563984 103564500 170413328 201127257 760691373 760691373 752876693 565382036 419590880 419590880 401308350 470279176 470279176 278736712 271790850 32657248 85515072 94162536 94162536 98592832 98592832 85875720 75957792 16997120 22188768 29491904 29491904 13800256 9724032 9724032 10050624 55328832 55328832 51900944 67095392 67095392 55666704 39062160 255684148 255684148 31106224 191307456 191307456 258525492 258525492 235832192 235832192 680677836 680677836 657580604 657580604 734618041 835379845 835379845 772341603 339754695 761820733 793481461 1066675955 1066675955 811412200 59034134 59034134 56165568 126708840 780228647 780228647 500064436 953436766 953436766 629389640 553881634 741985419 741985419 617907177 617907177 128008712 128008712 603766336 637646569 637646569 616986001 616986001 608698777 576397020 671093441 671093441 161166948 161166948 146941600 29376520 79741128 79741128 23069120 276939328 1022099662 1022099662 144888132 421565996 444910842 444910842 559787491 559787491 968174240 968174240 848860369 717653409 514718846 514718846 840506808 840506808 683481677 213128813 213128813 827392562 827392562 574693521 885410536 943902855 943902855 419621671 410381190 234068074 472381710 472381710 882141771 882141771 886047435 886047435 888193178 888193178 695691185 695691185 542697237 422577797 422577797 43449576 129720296 129720296 41337856 63256704 260735588 260735588 200463152 200463152 196100516 196100516 288024692 288024692 17826336 17826336 208926562 289708160 431869160 431869160 485374282 491182254 491182254 462510856 407028484 439613910 492090384 492090384 325780872 379692952 379692952 500311814 500311814 488900910 434372718 546830848 821558560 821558560 573288496 556320033 50558225 335720842 370368384 370368384 259694480 259694480 191750144 186695988 142672260 155205632 191105460 191105460 162568992 162568992 63311312 332785378 332785378 604700232 1049377174 1049377174 178935280 1068407890 1068407890 608604376 917425412 917425412 1008019983 1008019983 907076491 893405444 320814642 439941380 439941380 76556864 76556864 94872608 94872608 872812942 872812942 363033545 153437024 304097550 931144536 931144536 673233759 452410326 452410326 99812604 278179938 278179938 822888978 822888978 373772350 373772350 67141704 67141704 253036254 357859274 357859274 247877660 487212176 487212176 239213654 139110960 539106432 543952257 543952257 719062100 719062100 742910081 742910081 599077089 633580365 633580365 772546004 1059455753 1059455753 987627494 810305459 945824047 945824047 924889180 501329248 528810104 528810104 438706224 55018180 194509428 485305232 887545361 887545361 385353690 385353370 852401035 852401035 819218432 819218432 814743552 814744131 814744131 324483762 990633104 990633104 842265363 842265363 855760947 855760947 823214608 288832304 539175427 1035281126 1035281126 993076083 902426443 902426443 831597150 690069986 836982170 836982170 375525425 51523874 285377058 285377058 603050386 603050386 858690672 858690672 200496515 1004125941 1004125941 708977909 677185797 677185797 539768968 539768968 611533833 611533833 620273492 620273492 247501084 247501084 242795396 35601936 140590608 140590608 173947408 173947408 14605140 177966480 180915856 180915856 44298576 12079940 85844121 725799093 725799093 486511069 591847517 591847517 375002778 810572434 948734483 948734483 961809040 961809040 1028437662 1032355912 1032355912 449901298 450813654 450813654 292729312 292729312 486674478 486674478 477934510 477934510 7654272 5611776 58769680 683435552 683435552 790144596 790144596 553771114 849718196 849718196 952050757 952050757 680902017 847675313 847675313 811011088 870007248 870007248 666077957 1029780136 1029780136 537994473 331085682 329253234 329253234 669533781 669533781 645417536 645417536 542132104 150537728 536986241 536986241 752127888 903104800 903104800 907800123 907800123 406219777 1040723999 1040723999 421976358 562276679 906043419 971057753 971057753 965879467 965879467 781514013 1058522485 1058522485 478238494 508768926 598129105 884116894 902565099 902565099 705413442 705413442 942043122 942043122 328425926 340332362 406589068 406589068 209728032 209728032 428379136 428379136 428132454 276938862 261360252 261360252 805603586 805603586 693404065 693404065 507646110 507646110 326651944 604417296 604417296 288432540 869286202 869286202 1006986897 1006986897 872679435 408160902 408160902 374878182 576986009 701862596 701862596 153736009 556616689 556616689 545638592 545638592 592889028 592889028 574901056 53266672 189007728 189007728 159908932 85662528 85662528 127676640 127676640 72730648 84859944 93887040 93887040 573884033 573884033 553230785 544825664 234833283 818155361 1035345633 1035345633 651577877 299928171 616636716 616636716 575714090 112495400 112495400 117787992 117787992 111978552 61607280 33603600 512329843 755887149 952388333 952388333 861733044 69944865 624161577 624161577 170121316 764093608 764093608 725669985 725669985 706105028 370372168 370372168 953516145 953516145 891321173 891321173 941692032 941692032 62256129 217578514 803305480 803305480 740843913 815932112 889266219 1032336448 1032336448 1023619119 869389931 135452339 98432 4317312 88262100 306522898 375154504 375154504 239219868 558297605 672659973 672659973 563926149 563926149 227280329 42595781 734713077 734713077 549508337 50421824 209207332 209207332 201974796 155923620 283812865 967361895 967361895 557973667 557973667 557842593 300418530 300418530 659686653 659686653 925698741 925698741 433135702 508564096 508564096 415263072 415263072 481266769 481266769 207169164 286341798 982051886 982051886 788731405 253230216 549082048 770487221 770487221 762324929 644689305 930236781 930236781 176273150 286006880 286006880 296717090 296717090 269281552 385826778 385826778 382182776 382182776 29476944 63183040 63183040 54540032 62719152 170823172 170823172 47247296 159469904 188255360 188526148 530939618 622552480 631332081 865475047 865475047 465880845 353361582 507009884 507009884 673320614 904795653 943464391 943464391 738468103 757370392 758695725 758695725 802296832 802296832 727083614 951273731 951273731 659948199 865533522 865533522 592208416 592208416 22207264 222364448 844395682 844395682 1035051550 1035051550 511599362 661774691 967263689 967263689 949715634 949715634 698249169 731955237 731955237 563326268 92356416 52534112 409954026 409954026 512309968 547257438 547257438 508412232 451751382 284582286 186517570 895162134 895162134 763901756 763901756 1063851293 1063851293 814268993 808587531 808587531 919240914 919240914 434790839 276992002 276992002 2097152 2229248 10440928 30240256 30240256 93041984 111832650 312349018 330302322 436353348 436353348 312813906 373678868 373678868 335571722 335571722 271771904 271771904 284105832 342020490 342020490 335882250 335882250 93070434 23068672 411042064 411042064 245400060 245400060 342250024 675567966 890557177 890557177 805324288 838601217 838601217 9439618 7341184 7341184 3071232 545621058 813960257 813960257 865248305 865248305 834308658 1676578 42029120 42029120 58897472 58897472 173154804 590156368 590156368 55913136 55913136 156509668 156509668 52251920 39158752 62369024 713722352 713722352 147428516 242747292 679602329 679602329 414586956 448600653 908149420 908149420 293613666 689735034 689735034 663822924 877900506 1061337963 1061337963 893432606 691167964 691167964 569404014 392300562 663751353 663751353 666943737 886364385 886364385 558387441 644787186 931252146 931252146 899214122 622980618 459804096 459804096 121676440 304605592 377188402 377188402 414900750 414900750 151189408 151189408 344586112 352052482 352052482 350273994 344114560 34637152 61866864 61866864 20847888 27710480 38148096 38148096 37748880 310379378 310379378 55711264 389483458 389483458 336674122 497760572 497760572 487993417 143596924 143596924 470996514 901438283 901438283 411113616 449263830 449263830 209973324 209973324 25695396 74326344 205468948 599719184 599719184 607350149 607350149 204991404 622800292 695247620 695247620 153577120 26004576 46145728 54536272 54536272 50536496 50540592 50540592 288535585 807521047 956813239 956813239 600874239 1057944174 1057944174 494030095 966807843 966807843 1040257136 1040257136 1032985327 1044854917 1044854917 809922606 270713352 606218364 876400728 876400728 364646250 637306971 637306971 675813888 675813888 856971059 857655425 857655425 546414560 577316241 577316241 563651792 319703408 335417945 666999753 666999753 647160011 318518690 964684512 964684512 781910649 781910649 370537373 351145016 118234570 78764032 144106818 824574564 824574564 817497589 174081988 344212364 867172582 867172582 562594553 502039919 342623690 590810557 764752838 958970287 958970287 597052630 894035117 894035117 311942872 545595459 958523490 958523490 769901028 1019351247 1019351247 664475196 339947658 118306162 534619146 534619146 346625928 242535324 370432444 496443290 496443290 444102118 444102118 340091124 138411780 574350389 574350389 488248874 948074431 948074431 409384990 375952500 375952500 985857959 985857959 995637613 995637613 889755189 889755189 868004880 960101218 960101218 973571792 973571792 654950855 546447094 720703678 720703678 746854591 746854591 438641934 438641934 351044228 623139589 623139589 933797428 933797428 1032772719 1032772719 885526500 826460996 820239493 820239493 676454055 823107814 823107814 422051911 424215623 430060449 430060449 419368904 606515808 606515808 455541686 455541686 538368513 816765697 816765697 855450416 855450416 842666721 833383554 833383554 568666593 546850576 546850576 60598848 636510144 636510144 605164041 561272104 88443904 91975592 91975592 263583792 263583792 56772176 63925440 269970214 314446418 454942466 454942466 333624000 306853392 139759240 287046884 364295842 364295842 534391184 534391184 227772396 227772396 182288384 19516776 2157568 2097408 337920 42281680 42281680 39070672 41159616 216563984 216563984 139282960 170413328 191742472 191742472 518414268 518414268 413810754 419590880 460300076 460300076 470279176 470279176 318293970 284034706 271358080 32920384 32920384 30826208 98592832 98592832 85875720 75957792 11124896 73728 12482240 12482240 278293698 278293698 9724032 452116996 452116996 285972802 187389204 310769632 441838438 467159990 467159990 430286624 255684148 116662776 232144148 232144148 258525492 258525492 235832192 587992113 680677836 778765303 1051829279 1051829279 1067029449 1067029449 835379845 772341603 850724099 850724099 793481461 1066675955 1066675955 869281768 338439272 299180488 109807040 38532240 54572064 672257072 803878785 1040711937 1040711937 629389640 905880700 905880700 473086869 358256802 358256802 395568249 395568249 603766336 643168797 643168797 620333969 620333969 608698777 576397020 776780472 776780472 727644853 206318153 455020274 634841840 639446553 639446553 466921571 896022496 896022496 546601133 546601133 421565996 832438860 832438860 229559118 287714646 968174240 968174240 817703975 921861343 1043267467 1043267467 975838623 683481677 683481677 400022599 400022599 827392562 827392562 574693521 885410536 943902855 943902855 419621671 410381190 234068074 387263034 387263034 671113221 671113221 886047435 886047435 888193178 888193178 695691185 695691185 542697237 422577797 422577797 140481410 129720296 133848016 133848016 104026616 113255016 113255016 32715744 32715744 514015598 514015598 413725034 311211292 311211292 176490580 210139462 797587583 797587583 933810340 933810340 552232274 241559964 144003840 801272990 986383848 986383848 741866253 741866253 612279428 243413046 500311814 500311814 488900910 434372718 564153656 821558560 821558560 360670248 778261534 778261534 548760455 370368384 370368384 419441736 419441736 321515572 151505984 151505984 155205632 155238564 155238564 54370872 97394536 97394536 50475664 76792329 720344972 1049377174 1049377174 205899428 1068407890 1068407890 810608523 917425412 917425412 1008019983 1008019983 907076491 893405444 320814642 439941380 439941380 76556864 76556864 94872608 94872608 872812942 872812942 998763049 998763049 696498385 931144536 931144536 791089496 791089496 774912804 774912804 548541249 278179938 822888978 822888978 455653206 455653206 390791676 390791676 319341584 357859274 452672934 452672934 487212176 487212176 286713259 340332577 539106432 989398528 989398528 756060720 756060720 742910081 742910081 599077089 414840151 514793080 772546004 772546004 987627494 987627494 833385077 833385077 556927147 666109216 666109216 243364100 438706224 738337261 738337261 265335476 672191417 887545361 887545361 385353690 385353370 852401035 852401035 780928198 780928198 806126598 806126598 570445957 314492034 448464020 448464020 250155470 188755552 188755552 605662629 605662629 288832304 539175427 539175427 665935947 665935947 902426443 902426443 618938610 554739200 554296353 557319969 557319969 812385955 812385955 826369154 826369154 285327426 825090160 825090160 583846914 1004125941 1004125941 708977909 677185797 677185797 555032104 555032104 611533833 611533833 620273492 620273492 247501084 247501084 242795396 50351128 140590608 140590608 173947408 173947408 14605140 177966480 180915856 180915856 47928272 31862576 85844121 725799093 725799093 486511069 591847517 591847517 571878064 810572434 948734483 948734483 961809040 961809040 1028437662 1032355912 1032355912 449901298 450813654 450813654 292729312 292729312 406324898 406324898 751615436 751615436 827712702 827712702 132492967 605310312 605310312 790144596 790144596 646565713 849718196 849718196 952050757 952050757 680902017 839644179 839644179 272174517 319292466 666077957 666077957 513067614 537994473 537994473 395381424 395381424 197435632 669533781 669533781 645417536 645417536 542132104 150537728 39880528 44565840 44565840 567402352 581433681 907800123 907800123 361248059 1040723999 1040723999 421976358 562276679 562276679 270932226 268569606 132687878 646500981 936006184 936006184 553260993 681380966 694034085 694034085 884116894 902565099 902565099 705413442 705413442 942043122 942043122 291026432 291026432 337319844 337319844 481300926 528881790 528881790 428379136 428132454 396499834 396499834 261360252 310714658 310714658 499187948 499187948 507646110 611914308 611914308 604417296 604417296 288432540 869286202 869286202 701579411 698877285 898249101 898249101 689081846 689081846 639323737 701862596 701862596 153736009 556616689 556616689 545638592 545638592 592889028 592889028 574901056 436756126 436756126 317884572 390665714 390665714 357379242 46039464 73201648 210287564 294265160 294265160 290197144 573884033 573884033 832701926 832701926 411652162 818155361 1035345633 1035345633 651577877 299928171 616636716 616636716 575714090 486673194 473169956 403706368 403706368 111978552 540672 540672 512329843 755887149 952388333 952388333 975434007 975434007 624161577 624161577 170121316 705205612 721945653 725669985 725669985 706105028 326129234 106028112 295613642 1007844576 1007844576 872775834 969409767 969409767 701038759 692134053 416019654 836921060 836921060 815932112 899211755 899211755 746771497 746771497 454319848 479699544 479699544 1028297768 1028297768 548081530 375154504 375154504 239219868 239219868 118626460 207698728 207698728 35651856 35651856 10085952 10085952 139461888 139461888 104702904 209207332 209207332 201974796 273155202 478903590 967361895 967361895 557973667 557973667 690502929 690502929 189143220 774513801 774513801 91564566 1060702384 1060702384 503391280 783599115 783599115 575483586 723752101 723752101 737388497 737388497 982051886 982051886 788731405 439825991 814811394 814811394 770487221 762324929 644689305 930236781 930236781 801391903 449582587 125831386 336335874 336335874 269281552 385826778 874983763 874983763 623412034 623412034 603050721 603050721 570971584 570971584 543195521 56672688 52362720 557613888 557613888 561836720 646430160 646430160 672250512 865475047 865475047 465880845 353361582 476077318 476077318 420431042 420431042 943464391 943464391 738468103 311258664 256924945 54526096 180389024 193512564 727083614 951273731 951273731 879018914 879018914 865533522 592208416 592208416 409134020 409134020 844395682 844395682 1035051550 1035051550 511599362 661774691 967263689 967263689 949715634 949715634 715757468 731955237 793680320 793680320 111708536 123682488 409954026 409954026 490476172 770481424 770481424 508412232 451751382 284582286 703007008 895162134 1009329997 1061692963 1061692963 688408231 97185216 340746056 632552098 632552098 786826702 786826702 663619370 279848962 279848962 578487232 578487232 550535552 30240256 30240256 93041984 112485936 312349018 330302322 330302322 279056944 111473176 111473176 103098648 335571722 335571722 271771904 271771904 354104446 354104446 462409204 462409204 354418986 203949486 90309800 411042064 411042064 522195716 522195716 342250024 862065364 862065364 181539251 805324288 805324288 268706376 1010108932 1010108932 86101723 433637908 545621058 545621058 555719680 555719680 49909882 359774146 359774146 271672290 331080530 331080530 295193168 52551984 52551984 557843009 557843009 18088480 537921569 537921569 18424352 54564992 62369024 713722352 713722352 603031156 694660405 718133668 718133668 414586956 510267536 908149420 908149420 293613666 689735034 689735034 663822924 877900506 1061337963 1061337963 893432606 1002668302 1002668302 569404014 392300562 663751353 663751353 666943737 886364385 886364385 297960626 336253136 336253136 899214122 899214122 622980618 453894428 246251604 246251604 104899256 72821144 192920432 192920432 712661893 712661893 151189408 703165893 703165893 678183685 678183685 572564497 699680417 699680417 536887492 547661584 590955092 590955092 33734672 19720128 310379378 310379378 55711264 389483458 389483458 336674122 497760572 497760572 487993417 143596924 143596924 470996514 901438283 901438283 411113616 449263830 449263830 209973324 209973324 554575936 554575936 205468948 205468948 204259649 607350149 607350149 204991404 622800292 695247620 695247620 329389250 329389250 63635840 63635840 319160016 319160016 323766656 323766656 293915122 297345076 429065718 429065718 415855174 841105706 841105706 654495801 966807843 966807843 1040257136 1040257136 973079166 973079166 910164400 558897379 1031544074 1031544074 913972183 876400728 747013604 628022697 1055706356 1055706356 675813888 505431812 838890000 838890000 285215280 303303186 303303186 319703408 319703408 335417945 666999753 666999753 647160011 808619332 964684512 964684512 781910649 781910649 370537373 707191108 814704579 969002724 969002724 824574564 824574564 817497589 881873032 881873032 867172582 882474214 882474214 529269822 529269822 590810557 764752838 958970287 958970287 597052630 372430156 176197504 73024066 117618736 806436992 806436992 548429831 419873143 297432498 297432498 144177732 161238006 529285736 529285736 440418304 178706432 178706432 145817824 478473912 478473912 444102118 340091124 311703364 574350389 574350389 488248874 948074431 948074431 409384990 375952500 375952500 985857959 985857959 1003282898 1003282898 44185616 44185616 887863360 921059307 930474939 930474939 654950855 654950855 401130316 720703678 720703678 224532939 292528406 292528406 570237792 570237792 623139589 623139589 933797428 962762356 1032772719 1032772719 885526500 826460996 572838067 847679826 847679826 168560688 262806736 262806736 1000041702 1000041702 490898087 407767912 606515808 606515808 455541686 455541686 941377623 941377623 942672896 942672896 855450416 842666721 568691186 568691186 568666593 841830787 841830787 268569922 268569922 11275584 83363592 83363592 7782400 7439360 88935264 92964680 219807848 219807848 70221380 269970214 320136784 454942466 454942466 333624000 242805264 139759240 335465600 364295842 364295842 534391184 534391184 227772396 227772396 182288384 103547416 101607440 101607440 50397240 119597280 216701332 216701332 179021088 199964148 199964148 269006706 308561084 388286778 392259712 392259712 413810754 413810754 277898210 460300076 460300076 448452438 443204882 318293970 284034706 271358080 24971456 9362112 22042112 22042112 21022016 31983072 31983072 32795712 32795712 31037760 31037760 278293698 278293698 273417218 452116996 452116996 285972802 187389204 310769632 441838438 467159990 467159990 430286624 158834212 208051908 232144148 232144148 84968912 158352280 218909401 587992113 642045041 778765303 1051829279 1051829279 1067029449 1067029449 713556497 713556497 850724099 850724099 565256235 950283723 950283723 869281768 338439272 299180488 191590385 126403704 126403704 672257072 803878785 1040711937 1040711937 877624405 905880700 911764981 911764981 914162184 914162184 616617882 566288896 574595521 643168797 643168797 620333969 620333969 574001169 109647888 776780472 776780472 727644853 206318153 455020274 634841840 639446553 639446553 466921571 896022496 896022496 546601133 546601133 366613581 832438860 832438860 298195170 168370660 813695364 813695364 579028205 921861343 1043267467 1043267467 975838623 209288411 106443664 400022599 400022599 575217729 575217729 50468368 50468368 165441096 816168864 816168864 1065550361 1065550361 1013430474 1013430474 348545706 196165812 196165812 276857616 389530322 389530322 242335624 490992544 490992544 421750408 421750408 140481410 65325552 133848016 133848016 127968152 275102818 275102818 61727168 646542673 646542673 514015598 427868454 427868454 841581636 841581636 822218787 797587583 797587583 933810340 933810340 552232274 144003840 144003840 801272990 986383848 986383848 741866253 741866253 612279428 362648544 934295329 934295329 84549024 598361539 815612882 815612882 373700617 846864982 914520045 914520045 890820659 959121831 968659047 988044549 988044549 877254823 977455459 977455459 314868737 579198306 730183758 730183758 204355616 97394536 50475664 563663528 720344972 720344972 213197213 205899428 764250308 847544576 849660243 849660243 309316774 593237136 593237136 542729879 374720633 42440784 162637540 162637540 181064916 181064916 179535568 184697600 184697600 164676324 998763049 998763049 696498385 696498385 563622400 791089496 791089496 774912804 774912804 548541249 830965858 830965858 574804064 553998576 553998576 626273523 885892785 885892785 566085040 599263089 599263089 724286478 724286478 425309734 425309734 340332577 989398528 989398528 912759700 756060720 680921676 582363850 1049747041 1049747041 1066948206 1066948206 853022372 853022372 326370496 833385077 833385077 556927147 666109216 666109216 262318148 262318148 738337261 738337261 265335476 672191417 537823152 594992049 594992049 595065777 595065777 485796296 437849994 537070096 806126598 1041257099 1041257099 314492034 503316510 503316510 147009732 702754422 702754422 157117391 71742408 285679776 285679776 271581954 91325024 163319652 163319652 79800824 554739200 554739200 554296353 557319969 830610003 830610003 812385955 826369154 826369154 285327426 285327426 542452864 583846914 583846914 31844832 44314944 48635904 67111456 555032104 555032104 70638440 70638440 68846856 68846856 19138848 101482544 167870464 167870464 7737344 4201984 4201984 173363796 173363796 45915264 154858020 154858020 47928272 137111316 146478656 146478656 142739520 142739520 26740320 131966568 604013056 604013056 580910673 180600393 118178864 118178864 67366920 33738768 413852824 413852824 356748516 356748516 244133744 244986564 272824918 272824918 751615436 751615436 827712702 827712702 132492967 78971302 0 0 254416689 646565713 764867432 764867432 51121200 105449512 274939552 293416866 646199962 646199962 374802521 319292466 513067614 513067614 423913502 394625710 395381424 395381424 197435632 264241404 264241404 248636496 248636496 117023384 113829776 583273537 583273537 542902864 542902864 579912273 579912273 596131440 596131440 850387025 850387025 321073458 456013062 456013062 270932226 506266406 506266406 646500981 936006184 936006184 553260993 681380966 694034085 694034085 680315973 680315973 674221669 581416512 39920016 269189152 269189152 337293224 337293224 322306196 437514266 481300926 528881790 528881790 189192372 317617204 396499834 396499834 113059928 310714658 310714658 506274816 506274816 315960862 611914308 611914308 210945357 227804688 227805804 677380160 685769157 694002272 698877285 898249101 898249101 689081846 707573675 938628444 938628444 569574796 586122496 586122496 49813392 35693312 35033840 36215088 36215088 189160480 436756126 436756126 317884572 390665714 390665714 477107972 477107972 470877454 470877454 343094154 294265160 290197144 51016392 21493920 832701926 832701926 411652162 411652162 22069920 22069920 24234640 115525938 1059320026 1059320026 745142921 745142921 702014373 623165644 403706368 68305730 86376480 104763944 295232330 295232330 86057256 541119126 975434007 975434007 444244097 1574400 1049600 9077856 16961568 17486912 17486912 326129234 326129234 117596760 1022591639 1022591639 1007844576 1045209751 1045209751 969409767 701038759 692134053 494443010 836921060 837984650 837984650 899211755 899211755 746771497 746771497 712209041 846034309 846034309 1028297768 1028297768 846993298 205350452 205350452 215561881 585860417 714400709 714400709 566873669 566873669 219771465 60883141 682750069 682750069 642914173 256077929 256077929 153608072 237255536 273155202 478903590 478903590 539595267 539595267 288490464 690502929 690502929 245778899 774513801 774513801 538190465 1060702384 1060702384 706765076 783599115 783599115 575483586 723752101 723752101 737388497 737388497 675491973 675491973 138417681 439825991 814811394 814811394 769947560 769947560 643400448 968803710 968803710 801391903 890110059 893785115 893785115 642000530 75903104 33890840 874983763 874983763 623412034 623412034 603050721 603050721 570971584 570971584 543195521 56672688 52362720 557613888 557613888 561836720 883199201 883199201 672250512 672250512 689409711 994859236 994859236 632651657 809472519 876613837 876613837 812696451 395690864 395690864 311258664 734832333 734832333 691348481 683610641 683610641 638352604 374843800 879018914 879018914 991596727 991596727 688860295 688860295 559320198 519122456 519122456 536986637 536986637 496526860 219529270 153103984 129201258 352025304 579917088 715757468 715757468 793680320 793680320 111708536 123682488 463933699 463933699 67373064 866531379 866531379 101311512 546325616 720995173 720995173 703007008 1009329997 1061692963 1061692963 998083179 998083179 386016243 632552098 632552098 786826702 869420503 869420503 712687346 712687346 708450069 578487232 550535552 17566016 5473088 251917884 251917884 112485936 219388460 219388460 177277228 224668440 259263420 259263420 153166672 243491028 243491028 286021928 354197610 370183730 462409204 462409204 354418986 810557059 810557059 287346730 667206597 667206597 522195716 158487152 862065364 862065364 539058570 612704266 612704266 268706376 1010108932 1010108932 812721027 812721027 845294552 845294552 821076930 850497272 850497272 660506624 359774146 271672290 331080530 331080530 295193168 28329280 28329280 557843009 557843009 53323696 537921569 537921569 57428448 57428448 54564992 703664740 703664740 603031156 694660405 718133668 718133668 0 510267536 510267536 884484872 884484872 814558275 647464731 377624578 80169240 67183464 911873052 911873052 1002668302 1002668302 130557191 29360352 8388768 0 0 68194312 806145090 806145090 314624017 104890512 1006216528 1006216528 678029014 543484977 543484977 246251604 133863544 118224808 627048457 627048457 712661893 712661893 138666120 703165893 703165893 678183685 678183685 572564497 699680417 699680417 536887492 547661584 590955092 590955092 591853441 591853441 587985969 563115600 40373648 285620328 363091034 397409658 397409658 998888535 998888535 908275995 908275995 673654277 673654277 604554249 337025097 172890292 63766256 63766256 541077700 554575936 554575936 28981760 28981760 16765824 16765824 6705280 277974592 329609826 329609826 293683232 329389250 329389250 63635840 63635840 319160016 319160016 323766656 323766656 705806726 705806726 506193742 643387932 643387932 841105706 841105706 654495801 815845754 815845754 619125312 167875084 151191628 910164400 910164400 558897379 1031544074 1031544074 913972183 747013604 747013604 628022697 1055706356 1055706356 505431812 505431812 838890000 838890000 999097120 999097120 867845991 826070338 52602000 52602000 314981570 314981570 315892418 808619332 808619332 586748420 571424132 571424132 334398194 707191108 814704579 969002724 969002724 448848896 23019168 23019168 881873032 1016092808 1016092808 953604807 882474214 529269822 529269822 529007742 699674109 699674109 615744001 683633880 1050664461 1050664461 169229014 159777186 806436992 1013027075 1013027075 606150921 811606154 811606154 616715291 616715291 529285736 1038270839 1038270839 178706432 178706432 42448964 478473912 483699560 483699560 223482540 367710520 380368654 485224602 485224602 411967586 293674054 263982972 263982972 133910908 335153284 465444726 1003282898 1003282898 682312501 682312501 887863360 921059307 930474939 930474939 490942976 490942976 201523752 207468052 759530592 759530592 96987304 102644800 570237792 704830560 704830560 683939109 665507193 962762356 962762356 904398315 889380942 746815785 579242129 847679826 847679826 168560688 262806736 280748916 1000041702 1000041702 943192839 943192839 749820994 70853376 70853376 412845575 941377623 941377623 942672896 942672896 277164448 50465872 591739184 591739184 543297921 841830787 841830787 268569922 608218144 608218144 607860992 607860992 7782400 7439360 88935264 92964680 219807848 219807848 70221380 8456864 320136784 320136784 299554530 155544960 155544960 7186596 335465600 401644928 417921506 417921506 35947456 47499984 47499984 103547416 103547416 101607440 101607440 50397240 215042548 216701332 216701332 179021088 199964148 199964148 269006706 308561084 388286778 401478788 530844030 530844030 226627692 226627692 117594856 90577320 237125988 237125988 47891024 29396232 82283360 82283360 25745888 22042112 22042112 26871136 26871136 25711328 32795712 32795712 31037760 31037760 6954112 273095296 572465877 572465877 583923286 583923286 445776611 869908482 985661655 985661655 962795991 956761937 710629393 589404260 208051908 20449056 82855168 98615784 399001430 399001430 122700028 480781622 564249724 1060274981 1060274981 1001067022 1001067022 317985744 317985744 957341472 957341472 167821332 172846508 172846508 130199968 191590385 191590385 126403704 442664656 442664656 366101956 319605036 745451814 877624405 877624405 911764981 911764981 914162184 914162184 742990989 566288896 645137045 645137045 642759321 584209489 582409041 574001169 545259520 545259520 319427634 567348046 567348046 446969035 92291752 92291752 282267720 282267720 495125184 495125184 491991726 358491244 358491244 341522058 308497100 497453050 497453050 813695364 813695364 171377812 841426820 841426820 175847316 553631128 753661389 786658889 786658889 106045633 575217729 575217729 199167500 138942652 165441096 816168864 816168864 1065550361 1065550361 1013430474 1016161233 1016161233 587530917 622254633 622254633 725366156 725366156 1009085287 1009085287 780108335 454071724 288010285 95953536 79393128 79253744 127968152 890305401 890305401 275102818 866792865 866792865 646542673 186836248 747147520 749393229 841581636 841581636 822218787 337667344 365552874 365552874 371238400 371238400 49404064 73224532 435315884 621412388 621412388 466881270 466881270 539139780 539139780 934295329 934295329 29237088 598361539 815612882 815612882 373700617 846864982 914520045 914520045 890820659 959121831 968659047 988044549 988044549 877254823 977455459 977455459 314868737 579198306 730183758 730183758 204355616 110515248 110515248 563663528 576807305 576807305 703798108 703798108 700922085 847544576 849660243 864288768 864290931 864290931 50333811 65192096 65192096 27398496 162637540 162637540 181064916 181064916 179535568 205799442 1044432986 1044432986 885116931 839305217 136288391 563622400 563622400 384973816 606283504 607788608 609168728 609168728 830965858 830965858 574804064 553998576 553998576 626273523 885892785 885892785 566085040 599263089 599263089 1060868826 1060868826 425309734 425309734 71828154 275784192 912759700 912759700 417188288 417188288 582363850 1049747041 1049747041 1066948206 1066948206 853022372 985279374 985279374 205249779 77202712 77202712 535603772 535603772 306307218 421601574 421601574 520967444 520967444 497193522 537823152 594992049 594992049 595065777 922217574 922217574 606215581 537070096 1012275778 1041257099 1041257099 411384790 503316510 503316510 147009732 702754422 702754422 157117391 71742408 538970593 538970593 368669584 575909387 575909387 163319652 79800824 1056648397 1056648397 752236302 589366385 830610003 830610003 549456512 806683377 860955315 860955315 302019139 297980130 155229891 966712935 966712935 940195943 875165451 875165451 225416364 810112142 810112142 274253442 291013661 789054525 789054525 692224024 167870464 175607808 175607808 139094820 54658180 173363796 173363796 44304720 154858020 154858020 28601136 137111316 146478656 146478656 142739520 156511424 161031780 161031780 604013056 613279360 613279360 45655056 45655056 34121040 394512294 503915550 503915550 159479234 356748516 356748516 144233696 244986564 272824918 272824918 343859082 403361570 491308206 491308206 652789276 652789276 580437697 679661637 689423949 689423949 621714188 1004524576 1070190567 1070190567 692639205 1002126131 1002126131 901190984 374802521 734274180 915482790 915482790 86510608 86510608 38884416 9367248 14696480 23594400 35227088 35227088 24507264 22904192 66593120 583273537 583273537 542902864 542902864 579912273 579912273 596131440 713924637 850387025 1025698133 1025698133 906067242 0 19661318 506266406 587316308 603487456 603487456 303297042 727111680 727111680 655722811 573101397 680315973 680315973 674221669 977953766 977953766 448744992 448744992 337293224 843719625 843719625 537135105 513079679 903893361 903893361 434254916 348893514 348893514 759883028 759883028 782775500 782775500 506274816 506274816 315960862 572903698 572903698 510792606 700622520 700622520 711837882 711837882 694002272 694002272 812283113 1009181519 1009181519 707573675 938628444 938628444 569574796 586122496 586122496 268743554 279378114 279378114 276881238 276881238 149740052 422462024 422462024 356309844 356309844 354941226 477107972 477107972 470877454 470877454 343094154 33967808 21236929 562685025 562685025 544745409 125406540 79941256 248063196 248063196 215017216 144777300 144777300 1059320026 1059320026 745142921 745142921 702014373 623165644 10860608 26890816 86376480 104763944 436785177 1065996047 1065996047 785286403 703859685 703859685 661852861 661852861 257052953 598954760 788632041 788632041 704982276 704982276 246294232 126072108 1022591639 1022591639 617598528 1045209751 1045209751 672573597 436418628 494443010 494443010 757073212 837984650 837984650 650277200 449877586 419626564 419626564 712209041 846034309 846034309 678321410 846993298 846993298 105386008 262536512 315657438 585860417 714400709 714400709 566873669 566873669 320756786 293931522 682750069 682750069 642914173 256077929 256077929 17041440 237255536 237255536 227750508 425813316 539595267 539595267 288490464 164655713 164655713 245778899 653530049 653530049 538190465 538190465 706765076 845162164 845162164 617961652 617961652 530240557 91435944 91435944 44117968 613708520 613708520 147345013 390596234 390596234 76595784 769947560 1040920228 1040920228 982639191 968803710 550013456 890110059 893785115 893785115 642000530 103598896 103598896 34873600 830815298 830815298 37749120 37749120 14157504 14157504 58381248 58381248 25826400 15984544 4639744 4639744 2624512 883199201 883199201 510951792 510951792 689409711 994859236 994859236 632651657 809472519 876613837 876613837 812696451 19955875 110921952 110921952 734832333 734832333 691348481 683610641 683610641 577826989 374843800 374843800 169159188 991596727 991596727 688860295 688860295 559320198 519122456 519122456 419430406 419430406 402965024 402965024 199265962 992756482 992756482 766774125 579917088 143131716 143131716 126894936 215461984 215461984 463933699 463933699 52764677 866531379 947988542 947988542 615212821 720995173 720995173 164627172 637534214 637534214 827096453 1066753182 1066753182 386016243 618921986 637665296 637665296 869420503 869420503 965719872 965719872 708450069 175508609 17566016 41830742 465099014 465099014 337301514 286299092 237908224 237908224 177277228 224668440 259263420 364145914 364145914 310483138 353831864 353831864 354197610 370183730 370183730 269001736 352931970 810557059 810557059 176441736 667206597 667206597 581566640 568989153 390123954 539058570 832685032 832685032 612704266 537969024 268441600 606143114 812721027 812721027 845294552 845294552 821076930 850497272 850497272 660506624 66755728 66755728 34445776 39255360 48021648 60822736 62185584 172372772 172372772 64506992 169868196 169868196 64667936 64643024 52171552 65299648 65299648 9436224 168131716 229621296 255083900 369835146 1021459732 1021459732 884484872 884484872 814558275 647464731 168837212 33737024 36051216 911873052 911873052 599283575 563746232 530122593 102957974 952461335 952461335 839326851 814632001 814632001 806145090 314624017 540599310 1006216528 1006216528 678029014 543484977 543484977 133863544 133863544 118224808 627048457 768402764 768402764 692955513 237603049 201447428 201447428 7922432 135890432 135890432 36226304 36226304 19189648 39635360 39635360 39328704 591853441 591853441 587985969 565051440 54525984 285620328 363091034 397409658 397409658 998888535 998888535 908275995 908275995 889851024 673654277 604554249 445656216 445656216 432162533 432162533 541077700 541077700 557853248 567542145 567542145 558503073 558349313 537055233 277974592 277974592 293683232 293683232 276947010 195395280 171898132 171898132 402830336 402830336 37227522 43527123 705806726 705806726 506193742 643387932 643387932 663205905 663205905 627122601 609235433 619125312 648404482 648404482 749219199 749219199 812493134 812493134 567024011 509367887 576664681 576664681 1048066678 1048066678 902874048 902874048 774413502 577379532 708250132 708250132 999097120 999097120 867845991 826070338 404366432 29940992 59077824 59077824 41741440 46280560 54263600 54263600 32684464 19670816 33297664 543169216 543169216 25346145 826538081 826538081 454633938 454633938 137641169 1016092808 1016092808 953604807 769047538 348688985 707994222 707994222 699674109 699674109 615744001 683633880 1050664461 1050664461 341541598 327635686 327635686 1013027075 1013027075 606150921 811606154 811606154 616715291 616715291 475583106 1038270839 1038270839 480437504 480437504 373977620 373977620 483699560 483699560 223482540 367710520 832254317 832254317 411967586 805910271 805910271 458294832 458294832 507326576 847593429 847593429 546445221 669871203 682312501 744893293 744893293 1022955389 1022955389 648756042 911676794 911676794 885070400 1008051144 1008051144 1051976396 1051976396 96987304 69357120 704830560 738628960 738628960 665507193 801779944 917190323 917190323 889380942 746815785 579242129 711133527 711133527 276936910 276936910 280748916 280748916 182548296 943192839 943192839 749820994 70853376 419536918 419536918 411177798 411177798 823724480 823724480 17380352 288101856 591739184 591739184 573386001 829687888 829687888 130353377 608218144 608218144 607860992 607860992 1430016 1430016 1362432 1083392 1081856 135302208 192665138 198979232 198979232 198230772 198230772 462139300 462139300 381840810 503977828 503977828 417921506 523147402 523147402 254552380 254552380 137107576 27471136 64558392 111660180 163193236 215042548 251803252 251803252 240772764 120676652 130024480 130024480 16974960 734208 401478788 530844030 530844030 226627692 226627692 117594856 90577320 342802800 342802800 342365186 289148706 82283360 82283360 25745888 21713536 21713536 26871136 26871136 25711328 18142208 12792000 12792000 18836320 18836320 986764454 986764454 572465877 583923286 583923286 445776611 869908482 985661655 985661655 962795991 956761937 710629393 589404260 184956280 184956280 100890888 100890888 399001430 780699161 780699161 950547429 950547429 1060274981 1060274981 1001067022 1001067022 579207186 948932753 957341472 957341472 167821332 167821332 336330266 358459042 358459042 356724906 273890976 442664656 442664656 366101956 319605036 395214248 395214248 297948310 297948310 461562364 461562364 742990989 742990989 702547365 697332805 645137045 619100317 611490001 611490001 660744225 660744225 605290689 605290689 567348046 567348046 649700763 812131261 812131261 710984085 796784364 796784364 495125184 616523529 616523529 612118922 453032713 802017854 802017854 497453050 403493314 713560085 713560085 841426820 945943056 945943056 945365267 772268307 983130647 983130647 869936903 1016407610 1016407610 199167500 138942652 345610468 345610468 157303696 417460608 428945252 451845778 1016161233 1016161233 587530917 622254633 622254633 725366156 725366156 1009085287 1009085287 780108335 454071724 288010285 142705768 79393128 71922000 285346706 890305401 890305401 402228768 866792865 866792865 337776906 337776906 747147520 958973223 958973223 303038994 303038994 337667344 365552874 365552874 369652112 369652112 66893138 142992064 142992064 621412388 621412388 151000105 918834200 1020590208 1020590208 951683804 996356535 996356535 719009719 719009719 630141025 336071705 134873543 748639996 748639996 857298839 857298839 794298045 794298045 495452935 182452692 52429028 61122640 61122640 37052768 54006328 69866760 112859928 112859928 110515248 132632477 259101692 259101692 703798108 703798108 785362372 785362372 318243650 864288768 864290931 864290931 806231043 806231043 186128951 27398496 42824496 42824496 12617792 44074624 44074624 205799442 1044432986 1044432986 885116931 839305217 136288391 277879352 384973816 384973816 606283504 921266445 934227114 934227114 938872122 938872122 71702064 9280 8987712 277678082 277678082 311043442 841036240 841036240 382891839 1060868826 1060868826 994612469 856401075 592627258 804307880 827359326 827359326 639657664 805403033 805403033 449526849 469374966 469374966 767214652 1003768437 1003768437 985279374 564257121 564257121 785437433 885943426 885943426 306307218 421601574 421601574 520967444 520967444 45501952 422421254 422421254 570564608 570634257 922217574 922217574 606476553 606476553 1012275778 1012275778 750780621 977348809 977348809 988034439 988034439 227127642 775980534 775980534 694722433 585014457 539758920 368669584 575909387 575909387 280234818 336333356 1056648397 1056648397 752236302 589366385 818082310 821293187 821293187 806683377 860955315 860955315 302019139 297980130 155229891 966712935 966712935 940195943 875165451 875165451 225416364 810112142 810112142 274253442 291013661 789054525 789054525 692224024 122455224 175607808 175607808 139094820 54658180 35392608 35392608 44304720 44304720 33704512 43304960 43304960 194563184 194563184 158985280 158985280 161031780 161031780 98565864 613279360 613279360 51500072 68941320 68941320 394512294 503915550 503915550 504939578 504939578 300367554 285787170 214536286 264624204 264624204 714625843 714625843 909040923 909040923 652789276 652789276 580437697 679661637 689423949 689423949 265344410 1004524576 1070190567 1070190567 692639205 1002126131 1002126131 901190984 270532866 734274180 915482790 915482790 362657834 362657834 388818336 388818336 131352048 131352048 24767616 24767616 2174848 525312 34078784 42468432 42468432 34738704 43522624 43522624 43256640 536961105 713924637 816111681 1025698133 1025698133 906067242 196565364 438110818 438110818 587316308 587316308 35055200 59447860 727111680 727111680 135338625 805325876 990694455 990694455 313034250 977953766 977953766 448744992 448744992 268510690 843719625 843719625 537135105 513079679 903893361 903893361 434254916 348893514 348893514 759883028 759883028 782775500 834740891 958726203 986718399 1047866271 1047866271 687712879 599369853 700622520 700622520 711837882 711837882 676332165 831635376 831635376 1009181519 1009181519 733131634 733131634 234818493 227184640 25566208 9926978 268743554 279378114 279378114 276881238 276881238 149740052 422462024 422462024 356309844 356309844 354941226 354941226 316863946 310065008 322717586 322717586 306301080 306301080 562685025 562685025 550817321 327582913 650389277 650389277 248063196 215017216 144777300 144777300 101136408 101136408 188034128 188034128 243948418 243948418 248215196 253424280 253424280 148518636 436785177 1065996047 1065996047 785286403 703859685 703859685 661852861 661852861 533987342 598954760 788632041 788632041 704982276 704982276 246294232 126072108 136486440 136486440 139271316 806365703 806365703 436418628 577774149 839747357 839747357 714187528 780178048 780178048 681595148 681595148 571609617 135840768 23347904 28625760 75554504 75554504 277489281 819147459 967641955 967641955 557714406 315657438 321847344 835681859 835681859 1058753695 1058753695 734277194 288118880 220283104 59843184 59843184 50844256 62475896 62475896 280495938 501716010 501716010 213771844 300064416 414905315 414905315 274243137 378808401 778958213 778958213 91761659 139575984 139575984 845162164 845162164 617961652 791929376 800680873 800680873 586540929 586540929 613708520 613708520 173111952 390596234 716370085 748702697 751137032 1040920228 1040920228 982639191 550013456 805339168 805339168 92462296 92462296 67649536 103598896 103598896 852641427 852641427 830815298 871639458 871639458 584370897 601112608 601112608 587251937 64070272 64070272 63017360 536905824 552475680 552475680 100173696 78693192 68301616 663646336 663646336 50389024 467875212 680106160 680106160 116757989 814606002 814606002 310409170 310409170 121643152 121643152 130793832 194011440 208483316 208483316 406984808 513196070 516083934 516083934 156373668 156373668 443079844 443079844 292561193 959046951 959046951 583060276 402965024 402965024 294489073 1005618962 1005618962 1001146087 1001146087 729865217 753571236 753571236 215461984 220266948 220266948 52766756 101001240 202475600 947988542 947988542 615212821 612973681 287760943 524684868 687611362 687611362 153616917 1066753182 1066753182 475006978 437519020 637665296 637665296 604114953 44811544 1001620576 1001620576 550808719 145707880 92801568 160172056 465099014 465099014 337301514 292684320 274862466 237908224 449521304 449521304 334631922 364145914 379316616 379316616 353831864 353831864 31442816 17041440 18882848 356556960 356556960 352403754 96707010 92661864 92661864 581566640 581566640 568989153 390123954 390123954 832685032 832685032 880837130 880837130 623055578 623055578 454872630 806541354 806541354 784686431 202449361 70418696 70418696 92256320 92256320 66755728 34445776 39255360 48021648 60822736 62185584 62243696 191557780 191557780 39966128 136314884 136314884 64643024 43785808 185108976 185108976 168047684 168047684 262908744 262908744 369835146 1021459732 1021459732 615614157 192794404 1060849842 1060849842 690102248 713310485 772461597 772461597 248808446 854351493 854351493 530122593 368243362 952461335 952461335 860090610 814632001 922261400 922261400 908415624 908415624 868274499 868274499 513992692 513992692 176271156 108284324 30698432 38846720 757598520 768402764 768402764 692955513 559145505 575817097 739450881 774959389 774959389 643392029 607437745 764333856 764333856 541870848 585402868 585402868 42828448 42726480 843146128 843146128 54525984 54525984 69214976 69214976 371483744 371483744 164237792 136840452 889851024 889851024 102891600 452989268 452989268 446468768 446468768 432162533 148249284 541335744 557853248 567542145 567542145 558503073 558349313 537984513 287844384 448115684 448115684 185272676 303104210 303104210 171898132 171898132 402830336 402830336 314720832 312267472 271109632 402704002 402704002 477666458 477666458 375266702 341442822 70684936 70684936 395628584 648404482 782558511 782558511 749219199 812493134 812493134 652371649 1047729300 1047729300 222104260 1048066678 1048066678 513802590 774413502 774413502 1061535449 1061535449 708250132 823816982 823816982 697530164 697530164 445256256 44420336 34066240 7491376 40437888 44936960 44936960 12324672 12323648 3147840 0 543169216 543169216 567216144 826538081 826538081 454633938 454633938 642075976 642075976 613591945 769047538 769047538 348688985 707994222 707994222 261968485 62515056 11195712 11195712 49757504 341541598 341541598 710849236 710849236 662003552 662003552 280152850 381585938 381585938 117706344 90439840 52430688 166216356 297328800 480437504 480437504 373977620 373977620 328462962 328462962 120806202 325788736 832254317 832254317 196433514 805910271 805910271 458294832 458294832 507326576 847593429 847593429 546445221 669871203 669871203 744893293 744893293 1022955389 1022955389 648756042 911676794 911676794 885070400 1008051144 1008051144 1051976396 1051976396 147326084 147326084 755785600 755785600 757208840 757208840 801779944 917190323 917190323 693874545 665475704 690611493 690611493 604053513 706228785 706228785 864811951 864811951 881098826 881098826 525615268 525615268 152121984 419536918 419536918 544020997 578775121 578775121 449644672 66915297 288101856 546317233 573386001 573386001 829687888 829687888 130353377 73793544 10485888 20279584 20279584 87760128 87760128 85721608 85721608 85854056 135302208 192665138 198979232 198979232 198230772 198230772 462139300 462139300 381840810 503977828 503977828 218420608 523147402 523147402 254552380 454775830 454775830 453194774 412990022 412990022 336759412 364906428 523908710 523908710 448337254 448337254 443049424 457723942 457723942 309142844 461216814 461216814 246787920 351096008 351096008 133713186 97288624 342802800 342802800 342365186 289148706 74712234 19680384 19680384 6500256 43973508 191514836 191765940 191765940 175578324 192800416 192800416 562728480 985980116 986764454 986764454 541677570 4268160 709364000 728710581 728710581 703206885 703206885 196065152 196065152 189842100 156795988 214220132 222425180 236403548 255327004 255327004 780699161 780699161 950547429 950547429 426427748 813307458 813307458 865739317 865739317 948932753 948932753 840781171 719005754 711976671 665746364 369315840 358459042 356724906 273890976 202917208 238059648 238059648 200648376 213651528 253026156 253026156 210770288 210770288 210281064 549983212 702547365 708002560 721982485 721982485 721494069 611490001 611490001 660744225 660744225 605290689 605290689 289690104 518174189 821432816 821432816 812131261 710984085 820252818 849686629 966137063 966137063 946355040 665218060 665218060 802017854 802017854 775993857 540431516 713560085 713560085 40670596 945943056 945943056 945365267 772268307 983130647 983130647 869936903 1016407610 1016407610 337192508 386139656 386139656 345610468 157303696 157303696 428945252 451845778 451845778 437242978 437242978 182225090 25200704 25200704 75546824 75546824 22037032 25403884 230299116 230299116 142705768 350949666 350949666 391293604 391293604 402228768 402228768 168952568 168952568 337776906 337776906 566919716 958973223 958973223 303038994 453067664 542114855 542114855 536961680 554255504 554255504 66893138 171977616 305203200 566756368 566756368 105782424 945048252 1020590208 1020590208 951683804 996356535 996356535 719009719 719009719 630141025 126228600 885522530 885522530 632777542 1030344556 1030344556 794298045 794298045 883085643 1042444311 1042444311 813903939 430060577 555579958 564618086 564618086 112859928 112859928 84804960 562163224 788514885 788514885 600847777 600847777 785362372 785362372 549957569 387197283 647107161 723127316 806231043 806231043 764437039 405190918 405190918 375416000 70183924 67274960 102328320 180731904 181007700 181007700 180682884 147206160 92079138 277488184 277488184 542646672 542646672 921266445 934227114 934227114 938872122 938872122 593106955 373562994 822969856 822969856 822905859 810059187 841036240 841036240 860826238 1020343978 1020343978 994612469 983365680 983365680 804307880 827359326 827359326 639657664 805403033 805403033 449526849 469374966 469374966 740561000 1003768437 1051236810 1051236810 564257121 564257121 785437433 885943426 885943426 101452808 101452808 101072912 105521288 105521288 45501952 186786525 636695529 636695529 636564457 648791377 648791377 606476553 606476553 949749290 1011616911 1011616911 977348809 977348809 988034439 988034439 227127642 775980534 775980534 694722433 585014457 601824913 841952673 841952673 356068456 515678748 515678748 360948568 360948568 149035184 845878212 845878212 821293187 821293187 691162055 320415282 320415282 685643655 685643655 451937701 449975062 449975062 306720324 407185542 407185542 139410564 270211206 814350592 817366851 817366851 271582273 101240864 118015032 167784500 167784500 53476656 59808160 59808160 167515424 167515424 35919872 146146308 168069200 176474628 192314796 522277433 522277433 428963861 252773500 978599989 978599989 1004120822 1004120822 458221718 223721153 1032232196 1032232196 893820226 946458546 946458546 755838473 922905677 950719815 950719815 630133260 714193549 714193549 714625843 714625843 909040923 909040923 952732185 952732185 781247109 725879441 587202609 225051601 211424844 279185730 828724112 828724112 297396066 297396066 18997536 300764354 300764354 270663938 270663938 358378346 362657834 362657834 388818336 388818336 131352048 131352048 41104272 40762224 40762224 13553312 38325024 42468432 42468432 29237088 64357968 64357968 53774384 53774384 8878096 256064 505504768 1043711047 1043711047 439882262 842531601 842531601 439914516 439914516 512227412 512227412 374630409 939785915 939785915 857685555 990694455 990694455 286368258 324683666 324683666 59881136 355621896 355621896 315504816 315504816 406928128 443062584 443062584 153740580 153740580 88088960 754155615 1005646414 1005646414 922953713 922953713 958726203 986718399 1047866271 1047866271 687712879 710773400 710773400 602943997 689767768 689767768 610800971 831635376 1010399802 1010399802 378147930 733131634 733131634 234818493 227184640 547790784 547790784 10388992 8968512 179191988 179191988 285510784 289981602 332044710 332044710 72166536 79950362 315622098 378671466 378671466 505486598 505486598 322717586 306301080 306301080 549458369 550817321 550817321 327582913 882959248 882959248 785647775 785647775 676661901 201427877 283374018 861121456 861121456 970395701 970395701 723636742 248215196 253424280 253424280 148518636 165668340 165668340 67960880 194599952 214405724 218277084 218277084 533987342 533987342 254233224 254233224 265640020 265640020 155066392 155066392 71506964 154144996 154144996 8388672 806365703 806365703 167782996 577774149 839747357 854680206 854680206 848347731 1017132614 1017132614 954973854 954973854 820806742 820806742 272577546 319738416 319738416 277489281 819147459 967641955 967641955 733345632 34941456 734930452 835681859 835681859 1058753695 1058753695 734277194 220283104 235578380 235578380 236507136 236507136 126156904 221936664 280495938 501716010 501716010 213771844 300064416 414905315 414905315 274243137 378808401 778958213 778958213 139992577 17238320 176125568 592593280 592593280 746028768 791929376 800680873 800680873 586540929 586540929 160641392 151828016 173111952 177939669 716370085 748702697 751137032 751137032 89146076 874252539 874252539 805339168 994710026 994710026 848697033 625510250 351063498 69000506 852641427 852641427 21358752 871639458 871639458 584370897 601112608 601112608 587251937 826278050 826278050 838260928 838260928 552475680 569118083 569118083 459931856 459931856 409900930 966849691 966849691 845361555 680106160 680106160 137471463 814606002 814606002 710969461 655649336 655649336 1008208150 1008208150 580231696 144254786 288835654 406984808 513196070 516083934 516083934 420029478 420029478 140248676 118506900 292561193 959046951 959046951 583060276 536944640 869276354 869276354 1005618962 1005618962 1001146087 1001146087 804392841 804392841 753571236 839773203 839773203 983840861 983840861 381958516 451029469 756683080 756683080 595235493 590533425 368216122 524684868 687611362 687611362 826068771 826068771 890389711 890389711 843188224 981864663 981864663 927272682 927272682 1001620576 1001620576 250012047 145707880 92801568 160172056 471646328 471646328 292684320 292684320 448484880 448484880 449521304 449521304 334631922 334631922 379316616 379316616 117662744 86691080 86691080 325137912 325137912 356556960 356556960 813869129 813869129 119560304 759217557 759217557 830820387 830820387 258870311 314615971 604301745 604301745 880837130 880837130 623055578 623055578 454872630 806541354 806541354 784686431 335865666 335865666 273653640 92256320 92256320 22264256 39548448 39548448 190812120 194847944 439484002 439484002 191557780 478299134 715392229 715392229 190487244 271011875 271011875 233046412 851077182 851077182 604626781 589332593 589332593 713133056 713133056 689521876 586681920 586681920 1060849842 1060849842 690102248 713310485 772461597 772461597 772365201 907121481 907121481 351406764 557850640 591470769 860090610 860090610 734261431 922261400 922261400 908415624 908415624 868274499 868274499 513992692 513992692 163849304 579011424 835204505 935573995 935573995 923545016 923545016 598657009 598657009 575817097 739450881 774959389 774959389 643392029 607437745 764333856 764333856 541870848 585402868 585402868 580653345 601293491 870854896 870854896 60327264 98653752 398881506 614399704 614399704 325066034 325066034 136840452 385883588 385883588 149815354 452989268 452989268 465612930 465612930 294865470 1012474600 1012474600 865273749 212801993 29963628 549280640 608109056 758525728 758525728 544528800 705857840 705857840 303104210 303104210 285302786 22094496 303183264 314720832 314720832 312267472 592371095 785964111 785964111 1021581022 1021581022 440987780 901823433 901823433 384123185 320086866 683129856 782558511 782558511 632315948 632315948 847848682 847848682 1047729300 1047729300 976618402 997848818 997848818 747376003 671878149 668364088 1061535449 1061535449 926858305 926858305 369958298 415501528 445256256 445256256 640964176 778912960 778912960 764023808 764023808 685167505 685167505 181703124 577557572 577557572 549635201 549635201 689657029 705174577 779624460 779624460 740085261 740694285 740694285 506517773 638467060 638467060 250622075 1050877988 1050877988 1070732031 1070732031 1035352189 769864173 117251588 49757504 254674661 710849236 710849236 679325525 662003552 114237057 102505986 117706344 781650387 781650387 167818318 692211877 692211877 135544836 406342748 406342748 203989890 98689512 98689512 129999248 266507098 266507098 235639816 69314096 409521672 449278614 449278614 443694336 443694336 322384864 403516422 403516422 316743572 82451552 487602622 487602622 464518024 464518024 506473526 506473526 436847660 269297302 58258608 505026078 505026078 509401504 509401504 876927489 876927489 755785600 757208840 757208840 609910816 747115780 794972197 794972197 775784473 775784473 839356786 839356786 706228785 706228785 864811951 864811951 881098826 881098826 406997218 406997218 152121984 172073124 180959253 544020997 578775121 578775121 66915297 66915297 55654832 546317233 546317233 540265200 560061136 560061136 93810852 218440588 220585996 220585996 204858156 204858156 152356616 152356616 208851852 208851852 154009444 230374880 230374880 143249952 40141968 140844516 140844516 132820152 149588724 149588724 222381672 222381672 151872736 151872736 244620362 454775830 454775830 453194774 412990022 492975604 492975604 378086490 523908710 523908710 448337254 448337254 443049424 457723942 457723942 521549588 521549588 461216814 246787920 351096008 351096008 133713186 97288624 80757440 86526056 86526056 83904960 98135936 98135936 19680384 14277088 43973508 191514836 191765940 191765940 175578324 192800416 192800416 562728480 985980116 985980116 840900786 541677570 781694976 781694976 763544695 763544695 176322020 304266678 707303984 707303984 706401813 654436590 504986236 504986236 380988088 380988088 255327004 246882400 498204821 940166331 1008995643 1008995643 812175381 812175381 865739317 865739317 841483010 840781171 840781171 1056885540 1056885540 807581022 369315840 92491936 114472424 133695480 202917208 238059648 238059648 157930584 213651528 253026156 253026156 210770288 210770288 76153448 551166632 724251936 724251936 721982485 721982485 721494069 120957728 120957728 88028928 46141728 115224794 364740122 364740122 661069530 821432816 821432816 318771366 558176417 820252818 849686629 966137063 966137063 946355040 665218060 665218060 480278477 775993857 775993857 540431516 137067776 137067776 40670596 137453440 138819348 169269780 277819550 277819550 216030424 338429654 470816818 470816818 340210796 491260572 523874456 523874456 356941362 356941362 123547320 281075344 458072170 458072170 324003410 39363106 24133760 24133760 365482208 365482208 353058890 360833098 360833098 277946946 277946946 350949666 350949666 974292531 974292531 696483977 246015452 336115050 386967373 1000990071 1000990071 960586624 960586624 555794721 18874656 805306882 805306882 542114855 536961680 554255504 554255504 38013072 171977616 745642130 745642130 632640818 632640818 945048252 945048252 922796091 257198727 830151751 830151751 721699893 1027796611 1053396889 1053396889 885522530 885522530 625476777 1030344556 1030344556 1012338829 906092571 883085643 1042444311 1042444311 813903939 698352052 555579958 564618086 564618086 38219664 38219664 57091040 562163224 788514885 788514885 422359739 230883629 764960077 764960077 549957569 387197283 647107161 647107161 182519085 764437039 764437039 405190918 405190918 375416000 70183924 233240684 233240684 180731904 672022068 672022068 558732653 198142293 67634184 135268240 241172892 542646672 542646672 1022652234 1022652234 694421925 712583061 712583061 593106955 537143490 822969856 822969856 822905859 810059187 435295206 780383778 860826238 860826238 644142289 644142289 983365680 983365680 288558327 579408688 579408688 150705948 672203528 672203528 327161908 431625621 431625621 740561000 740561000 1051236810 1051236810 392421492 399180052 534776930 534776930 300783842 300783842 455086350 455086350 421384244 421384244 130655520 186786525 636695529 636695529 636564457 636560361 540090961 545333313 816372064 949749290 1011616911 1011616911 759850155 648389067 648389067 382214310 156381344 156381344 152044068 139196064 570546048 601824913 841952673 841952673 346417283 515678748 902892272 902892272 795259195 795259195 857428020 857428020 683754656 691162055 691162055 320415282 840446507 840446507 946281904 946281904 861935870 449975062 306720324 407185542 407185542 537614892 537614892 814350592 817366851 817366851 347347979 537934483 537934483 167784500 167784500 612664489 966858854 998508966 998508966 809159284 809159284 721724848 454988612 176474628 192314796 522277433 522277433 428963861 252773500 978599989 978599989 1004120822 1004120822 458221718 223721153 1032232196 1032232196 893820226 946458546 946458546 755838473 922905677 950719815 950719815 630133260 714193549 714193549 845718352 845718352 894867579 894867579 952732185 952732185 781247109 725879441 966150467 966150467 937427537 937427537 828724112 828724112 297396066 297396066 232900722 300764354 300764354 588456508 588456508 555958916 49177168 572937441 572937441 57485744 57485744 41104272 41104272 40762224 54659632 54659632 571530000 573752848 573752848 29237088 64357968 64357968 53774384 53774384 163186957 781837917 781837917 1043711047 1043711047 439882262 915739589 915739589 686959195 686959195 512227412 512227412 374630409 939785915 939785915 857685555 856226304 556797953 557003553 822280962 822280962 45630672 355621896 355621896 918478683 1045933021 1045933021 443062584 443062584 805355523 893387067 893387067 754155615 1005646414 1005646414 958932106 958932106 648814672 606940425 71049288 674816160 674816160 991184376 991184376 67019442 775430028 924551129 924551129 610800971 1019871582 1019871582 158273957 1040032235 1040032235 558578656 551889345 551341248 547790784 274226882 284759554 284759554 285138882 285510784 289981602 350911002 350911002 284268736 376379464 376379464 378671466 378671466 505486598 505486598 121714736 120587064 113578784 49157456 17507616 103289218 374807194 882959248 882959248 785647775 785647775 985710807 985710807 503500830 861121456 861121456 970395701 970395701 723636742 508321728 508321728 422896902 422896902 320744518 436594710 436594710 55235760 384123820 410118482 410118482 289530018 218441854 302452816 491519388 491519388 340142280 340142280 301534728 201328416 201328416 154144996 340790487 382545622 722218613 944244419 944244419 508830622 854680206 854680206 848347731 1017132614 1017132614 954973854 954973854 833359318 833359318 272577546 319738416 319738416 315257818 515585640 515585640 773418900 773418900 171508013 734930452 808026445 808026445 488377902 960306762 960306762 407431905 235578380 235578380 236507136 236507136 126156904 579068313 579068313 170022524 939627051 939627051 213554432 1026569579 1026569579 357324796 357324796 939923459 939923459 818357783 690322768 690322768 555710261 690733888 746028768 746028768 543252625 552690200 616562889 616562889 261434193 140896740 76115724 117440592 117440592 713505504 713505504 630842972 102208080 874252539 874252539 604769321 994710026 994710026 848697033 625510250 351063498 69000506 56592016 56592016 38019600 8719872 58464768 66270192 584209552 584209552 268501730 826278050 826278050 838260928 838260928 283690048 569118083 569118083 459931856 817032770 817032770 966849691 966849691 845361555 677954949 677954949 677954949 619308459 710969461 710969461 655649336 655649336 1008208150 1008208150 580231696 144254786 288835654 302006930 302006930 358926762 424739872 424739872 420029478 319365670 306258066 122718964 151259172 167774256 167774256 536944640 869276354 869276354 839253539 706040529 952402775 952402775 804392841 804392841 140282488 839773203 839773203 1066075136 1066075136 656161957 451029469 451029469 260047269 21020832 232802886 368216122 463882668 463882668 462441813 826068771 826068771 890389711 890389711 843188224 981864663 981864663 927272682 927272682 629597289 755765809 771801117 771801117 646219844 62935678 471646328 471646328 475715084 475715084 448484880 448484880 468239086 468239086 400814826 400814826 349946600 530315092 530315092 520200508 207387752 325137912 361313536 461455900 461455900 813869129 813869129 481988102 875604261 875604261 958388081 982064760 982064760 656008761 632997436 604301745 585375889 585375889 419912678 941809488 941809488 1009429075 1009429075 907403855 346577665 335865666 273653640 68354176 7866240 14229824 39548448 39548448 190812120 194847944 439484002 439484002 160025700 478299134 715392229 715392229 190487244 271011875 271011875 233046412 851077182 851077182 604626781 589332593 589332593 713133056 713133056 689521876 586681920 586681920 679417324 679417324 689565312 689565312 126357096 772365201 772365201 907121481 907121481 57611788 557850640 591470769 591470769 591519921 591519921 39987584 39987584 887600030 887600030 201551945 424681560 533799678 533799678 109118118 579011424 835204505 935573995 935573995 923545016 923545016 598657009 598657009 71437320 71437320 68667400 69156360 75400080 75400080 129388096 129388096 118165936 56230848 60955137 580653345 601293491 870854896 870854896 979969431 979969431 436543556 818161746 818161746 547559539 557842855 560013729 560013729 385883588 405163394 405163394 445163028 465612930 465612930 294865470 1012474600 1012474600 865273749 212801993 29963628 207036232 608109056 758525728 758525728 544528800 905017956 905017956 600234906 285302786 467098356 467098356 542827590 707314021 832603216 832603216 657344534 785964111 897354899 1021581022 1021581022 440987780 901823433 901823433 384123185 320086866 683129856 1057728264 1057728264 58872438 201615828 847848682 847848682 411337752 976618402 976618402 997848818 997848818 747376003 671878149 608210181 473503588 634717896 926858305 997072311 997072311 853032371 463103812 463103812 640964176 778912960 778912960 764023808 764023808 685167505 685167505 181703124 577557572 577557572 549635201 549635201 689657029 689657029 779624460 779624460 740085261 740694285 740694285 776483120 776483120 1057630104 1057630104 1050877988 1050877988 1070732031 1070732031 1035352189 769864173 117251588 9970737 44708880 582454484 679325525 679325525 134931281 264960 203520072 203520072 781650387 781650387 186744992 692211877 692211877 100713296 406342748 406342748 279599534 279599534 339908744 352244032 352244032 237548000 265024764 265024764 303122680 441684096 441684096 273838102 183766528 178258964 178258964 833957481 833957481 168888668 579079013 579079013 46712878 159041824 637534256 637534256 710673409 769654876 769654876 670045980 700842277 700842277 979243289 979243289 876927489 604115212 585764484 609910816 609910816 910693946 910693946 794972197 775784473 775784473 839356786 839356786 13943104 41734016 418686364 418686364 356618242 356618242 294049890 22469280 22469280 4397600 135303168 147396164 147396164 44250304 44250304 8558096 18299392 18299392 11407296 18955072 18955072 18004864 93810852 218440588 220585996 220585996 204858156 204858156 152356616 152356616 208851852 208851852 154009444 230374880 497102206 497102206 238637656 523159050 523159050 191597588 191597588 334911442 334911442 260392552 403549430 403549430 184623120 160873536 118593024 117699608 43510160 492975604 492975604 501659756 501659756 393462358 495177838 495177838 260763886 460637990 469424118 521549588 521549588 509425206 449839360 449839360 78947904 300157024 300157024 269232418 86526056 337661416 354451656 354451656 98135936 29624896 24757920 24428896 21294016 19542528 5249920 21005312 21005312 5241984 337983016 337983016 291968800 291968800 211363404 781694976 781694976 763544695 763544695 281641330 841680274 841680274 707303984 706401813 898123561 898123561 851207158 380988088 463753318 463753318 414466912 498204821 940166331 1008995643 1008995643 899947836 899947836 841776194 642520733 642520733 448713316 343805960 1056885540 1056885540 807581022 276873888 399520648 399520648 350985872 151897800 151897800 59682560 217914928 217914928 26216676 750129198 750129198 887960362 895885187 895885187 724251936 1023017805 1023017805 345686120 437645388 503983400 503983400 253150500 253150500 115224794 364740122 364740122 661069530 935641353 935641353 551865147 413486756 413486756 53677316 138153732 682041091 959776137 959776137 621909162 621909162 255448685 162604352 162604352 144998676 134721536 36607296 11082048 45432660 103561156 139334472 177257236 177257236 209732372 209732372 177999444 340210796 491260572 523874456 523874456 356941362 356941362 138412164 257329066 458072170 458072170 248063196 218726512 24133760 24133760 365482208 365482208 353058890 478961852 478961852 277946946 277946946 87622592 87622592 974292531 974292531 696483977 246015452 336115050 386967373 1000990071 1000990071 960586624 960586624 365966915 18874656 805306882 805306882 356185344 356185344 355467602 355467602 58876746 31521420 745642130 941304252 941304252 1037251311 1037251311 1020334967 984613719 825371777 830151751 830151751 721699893 1027796611 1053396889 1053396889 664932729 631427393 581046609 239094405 1012338829 1012338829 906092571 732337959 768379489 768379489 698352052 698352052 168338128 188224804 188224804 177054720 38219664 46216321 211002520 675547269 675547269 261354108 261354108 202219120 16817920 77860864 77860864 14815680 20972512 20972512 10162816 17966176 138811524 192994368 192994368 58312176 233240684 233240684 178747736 672022068 672022068 558732653 289282942 289282942 504979253 504979253 698512552 698512552 1022652234 1022652234 694421925 712583061 712583061 452475201 537143490 537143490 684857540 684857540 435295206 435295206 253196464 445595803 600311025 644142289 644142289 966979891 966979891 190001844 776103124 776103124 103891781 345309656 345309656 327161908 327161908 183243916 486432656 486432656 756075392 756075392 447399064 447399064 534776930 534776930 300783842 300783842 455086350 455086350 421384244 421384244 130655520 438313690 438313690 217654236 251209692 349242646 349242646 537920064 816372064 816372064 740479245 740479245 629372112 629372112 462075059 382214310 868607370 868607370 570139761 647782097 647782097 870387993 870387993 910708688 910708688 296169342 902892272 902892272 795259195 795259195 857428020 857428020 751830346 947390343 947390343 818415517 840446507 840446507 946281904 946281904 861935870 173149140 183782576 267523068 407040080 662804214 662804214 647497305 556998073 387255107 347347979 537934483 537934483 118043760 118043760 1038116384 1038116384 998508966 998508966 809159284 809159284 721724848 454988612 36014080 35774736 52572768 52572768 50487360 0 0 0 0 0 51987976 73029296 73029296 50612480 54526128 474040178 474040178 280727566 548328328 766897005 766897005 702933889 162739044 162739044 845718352 845718352 371060250 349923418 605094593 605094593 147849924 105136768 966150467 966150467 937427537 937427537 627115874 627115874 215927230 350753290 350753290 440018516 440018516 588456508 588456508 555958916 14729664 572937441 572937441 25893072 10608960 2960640 14690496 34214992 54659632 54659632 571530000 573752848 573752848 42238048 42238048 10749968 50483232 51902757 163186957 781837917 781837917 211879761 365922530 365922530 915739589 915739589 686959195 686959195 412739148 412739148 167862868 237783668 237783668 973275158 973275158 880934687 557003553 822280962 822280962 45630672 46696272 353599520 918478683 1045933021 1045933021 79541073 847827352 847827352 910213139 910213139 727205668 884475723 884475723 958932106 958932106 1005463527 1005463527 976868491 976868491 674816160 991184376 991184376 574908345 775430028 924551129 924551129 394974249 1019871582 1019871582 158273957 1040032235 1040032235 703891301 703891301 694699333 142948481 550361220 676286976 676286976 285138882 426114308 426114308 350911002 350911002 284268736 376379464 376379464 339214600 339214600 270009858 163057216 59694192 59694192 54899904 49157456 17507616 103289218 374807194 374807194 653601502 653601502 443564865 985710807 985710807 503500830 503500830 349516301 365810012 497763042 497763042 508321728 508321728 422896902 422896902 379922778 436594710 436594710 169610772 384123820 410118482 410118482 289530018 218441854 302452816 491519388 491519388 340142280 340142280 301534728 203424696 406857810 406857810 340790487 382545622 722218613 944244419 944244419 954239179 954239179 464601562 547431159 594747344 790616653 790616653 432299421 833359318 833359318 676628574 939745269 939745269 791035747 700409081 805328241 805328241 773418900 461902934 828403828 828403828 1010308661 1065592539 1065592539 960306762 407431905 221343024 103317792 69210624 69210624 67371008 579068313 579068313 688105568 939627051 939627051 103539536 1026569579 1026569579 573909777 573186240 939923459 939923459 818357783 690322768 690322768 555710261 690733888 690733888 630998849 679534337 679534337 616562889 956408674 956408674 682672965 679479045 671663109 1008374408 1008374408 713505504 630842972 102208080 43153944 100743690 278082114 278082114 92286586 68753562 82340672 82340672 17775648 274731650 580510736 580510736 842618339 842618339 60097313 567392896 567392896 34009553 548066624 548066624 58450257 18924160 16426816 63148480 269792640 276224546 817032770 817032770 831981862 957431329 957431329 677954949 677954949 677954949 480715660 206497796 206497796 71410824 67158024 67405824 67405824 76563008 76677384 76677384 11670336 223481888 700466639 700466639 424739872 408495750 325787926 358696114 358696114 1051197555 1051197555 487662409 236442962 1042907201 1042907201 883559996 874218636 874218636 681534978 139201668 139201668 138675200 156793952 562534062 1066075136 1066075136 986107593 986107593 843202593 738663264 800402301 800402301 779528400 350917610 350917610 713199853 758795017 758795017 550296660 646916877 646916877 759565729 759565729 948112654 948112654 856001390 856001390 771801117 771801117 737193628 646909767 1024717913 1024717913 945415840 945415840 293662882 412160220 468239086 468239086 400814826 993601335 993601335 562858745 936953201 936953201 712016823 712016823 611760739 611760739 461455900 808454423 808454423 481988102 875604261 875604261 958388081 982064760 982064760 656008761 632997436 580862032 852670065 852670065 827726499 941809488 941809488 1009429075 1009429075 907403855 766640825 676955269 676994048 676994048 15471488 15471488 14229824 59111096 266758288 266758288 78774792 78774792 10621248 67503624 73188104 73188104 60743608 969856272 969856272 47235584 990928990 990928990 694389409 667320801 377901159 147163280 154757324 259862460 259862460 124257720 124257720 156271368 689565312 689565312 117462624 117462624 67757064 600443672 621074008 621074008 647021328 647021328 583008465 25301088 52443584 570910720 576979329 576979329 605171785 942776388 1030480153 1030480153 584254263 584254263 830506272 830506272 600229315 123344568 590420912 590420912 219226760 219226760 71437320 84074776 84074776 69156360 75400080 75400080 129388096 129388096 118165936 62803216 62803216 12109632 270532624 304087314 863037238 979969431 979969431 721818176 818161746 818161746 547559539 557842855 560013729 560013729 187443762 405163394 405163394 445163028 445163028 35430960 17834112 5309056 5309056 1114624 1057280 614670400 614670400 144781849 638853952 638853952 767953612 905017956 905017956 600234906 320025138 467098356 467098356 570609666 707314021 832603216 832603216 657344534 657344534 897354899 1012401807 1012401807 142131467 210223728 258837692 1024237736 1024237736 421049188 1057728264 1057728264 58872438 604157089 977880556 977880556 883450302 883450302 1008873904 1008873904 866466867 732226994 230449408 631308153 631308153 634717896 634717896 997072311 997072311 853032371 463103812 463103812 605671856 605671856 188669748 188669748 116131976 121898332 138674224 732963028 732963028 186831156 701272164 701272164 331570483 570704545 575179637 1049978930 1049978930 189721111 42663940 776483120 810887448 1057630104 1057630104 654320175 623192361 218177580 218177580 205529248 634267880 634267880 108553257 78902609 579190161 579190161 572738689 548456720 548456720 203520072 203520072 284258958 284258958 211997004 418783626 418783626 473353748 473353748 341174922 470663780 470663780 339908744 352244032 352244032 237548000 265024764 265024764 303122680 437586992 437586992 183766528 183766528 457805607 457805607 833957481 833957481 227642174 794111845 794111845 19923008 0 838931488 838931488 710673409 769654876 769654876 670045980 700842277 700842277 979243289 979243289 642916246 97700960 127537232 127537232 68060240 910693946 910693946 419149894 419149894 84083336 168855716 168855716 113450080 133235064 418686364 418686364 356618242 356618242 294049890 55274400 142553136 155895716 155895716 169595152 169595152 40102676 35794192 35794192 18299392 32967936 32967936 17865440 30405632 40586480 40586480 38211344 31457760 31457760 4809056 10574400 41476096 77803552 98081710 180280334 180280334 429774802 497102206 497102206 238637656 523159050 523159050 191597588 251668034 395650206 453289506 453289506 403549430 403549430 184623120 371021366 371021366 369624090 375340698 375340698 252582972 501659756 501659756 393462358 495177838 495177838 307824768 460637990 469424118 469424118 509425206 509425206 449839360 449839360 71304322 300157024 300157024 389039952 389039952 337661416 354451656 354451656 79815552 29624896 24757920 50866276 177024084 177938132 177938132 184816500 513803950 513803950 371200029 504865757 968833847 968833847 278338353 982089743 982089743 848051208 629664883 281641330 841680274 841680274 23134723 664070078 898123561 898123561 851207158 403252230 463753318 463753318 414466912 449331328 449331328 388329508 769810680 899947836 899947836 970508748 970508748 766298228 1051463007 1051463007 50595183 402682076 402682076 277125120 399520648 399520648 350985872 151897800 151897800 75998464 217914928 217914928 226530856 750129198 750129198 887960362 895885187 895885187 380310640 1023017805 1023017805 345686120 437645388 725264500 725264500 253150500 253150500 85485592 85485592 99658512 616255768 935641353 935641353 551865147 410012057 910722021 910722021 549269313 682041091 959776137 959776137 621909162 700985624 905973783 905973783 841007120 372113416 372113416 335773000 77419800 77419800 103561156 411391002 411391002 213168652 454938414 454938414 177999444 177999444 170207040 268435976 268435976 176885900 176885900 138412164 38797844 58778796 248063196 248063196 281844482 281844482 75478744 102196400 215118868 215118868 520350830 520350830 339269194 339269194 270012450 816381274 816381274 513786465 202514572 202514572 143233870 750780632 750780632 704643093 857285794 857285794 365966915 4862854 297886695 977135116 977135116 909995027 355467602 1057629724 1057629724 836305947 793245885 941304252 941304252 1037251311 1037251311 1020334967 984613719 825371777 588121332 432865280 353178460 330827634 111883434 95946600 95946600 79168832 680856614 680856614 420227653 0 34406912 35466768 172822228 172822228 156575344 156575344 168338128 168338128 177054720 177054720 22021216 46216321 211002520 675547269 914890014 914890014 681974085 258736404 778964356 778964356 860558907 860558907 1063854524 1063854524 909256602 862463105 944942803 944942803 881080585 881777739 881777739 1044185247 1044185247 660210026 660210026 414385447 510800428 510800428 772414042 772414042 698512552 698512552 251342284 755240457 1011956373 1011956373 1049725382 1049725382 84673416 205652008 684857540 684857540 170918676 310565296 379605174 390504862 390504862 509696186 1021743426 1021743426 914413583 432411121 776103124 776103124 241193052 730038848 730038848 289739922 530856519 876873867 876873867 486432656 758305621 758305621 447399064 447399064 446736550 307173524 186521340 186521340 113956056 161318092 161318092 102926624 106174928 438313690 438313690 217654236 251209692 991954840 991954840 752354487 545259585 920787804 920787804 815664729 817174529 817174529 606076425 606076425 868607370 868607370 570139761 647782097 647782097 870387993 870387993 910708688 910708688 209268462 140640896 759859008 968048309 968048309 381149790 657975386 751830346 947390343 947390343 818415517 650642649 461898870 461898870 495327470 588300849 743065113 868799574 868799574 609918055 662804214 662804214 647497305 556998073 6952320 7353344 7353344 5776256 245371604 245371604 1038116384 1038116384 258024391 170468628 170468628 188796488 188796488 77381812 36014080 192131244 438264173 438264173 423362361 526034377 1011165487 1011165487 895084203 883430188 284358986 461114595 738787558 1066084384 1066084384 684143621 609076768 592903153 644029345 766897005 766897005 702933889 662039481 662039481 887092778 887092778 701237249 680677961 680677961 408117967 147849924 92422308 608292961 608292961 265528090 406008582 406008582 188290455 188290455 350753290 350753290 440018516 440018516 318073568 58110962 48612336 34787856 54175424 54175424 58847776 596390240 596390240 569237153 569237153 555271713 556566688 556566688 425347772 425347772 250154314 251754508 251754508 243712828 882921810 882921810 735716104 885330822 885330822 579338372 365922530 374477740 444745822 676923394 676923394 412739148 817398082 817398082 816595981 471092008 973275158 973275158 880934687 583536688 99570672 26788928 26788928 29995752 353599520 362158178 362158178 279892776 120906536 847827352 847827352 910213139 910213139 408711252 850296211 850296211 839092845 942944904 1005463527 1005463527 976868491 976868491 607303248 1018709575 1018709575 774448697 774448697 662276241 178467156 671293445 671293445 184845604 20713248 56180581 700249205 703891301 703891301 694699333 142948481 550361220 676286976 676286976 145854500 1002939503 1002939503 387475856 872904491 872904491 359002610 359002610 348923636 348923636 388817054 388817054 130409496 130409496 111960224 589247777 589247777 627184837 703256037 832093155 832093155 816169254 312274294 139534980 173351060 173351060 138750084 566794880 566794880 497763042 497763042 444447944 444447944 415150514 415150514 379922778 330348620 493829558 493829558 381294426 234113670 97012630 0 0 203577920 203577920 406936456 406936456 139786950 203424696 203424696 406857810 406857810 445670490 445670490 173550616 193801332 488440410 954239179 954239179 464601562 711086212 1043110731 1043110731 843523761 843523761 630605688 676628574 676628574 939745269 1031050434 1031050434 906060938 805328241 814367093 814367093 461902934 828403828 828403828 1010308661 1065592539 1065592539 595078948 402132918 402132918 394669906 109391386 116049279 334508131 894216195 894216195 688105568 688105568 146258620 146258620 578618496 578618496 573909777 573186240 573186240 42244688 674182928 688763136 690937125 715631653 715631653 697115725 697115725 679534337 679534337 656245728 956408674 956408674 682672965 679479045 671663109 1008374408 1008374408 533483023 349007476 117440596 117440596 185802856 278082114 278082114 245178488 68753562 350788680 350788680 275449314 274731650 580510736 580510736 842618339 842618339 60097313 567392896 567392896 285328066 548066624 548066624 311448704 311448704 382243288 382243288 76334826 7031298 347819598 347819598 831981862 957431329 957431329 486085199 282467010 898377287 898377287 952966628 952966628 565306208 565306208 957727278 957727278 612674176 143704898 414237510 414237510 223481888 700466639 700466639 405533958 405533958 325787926 510207070 512304542 1051197555 1051197555 558361682 558361682 1042907201 1042907201 883559996 874218636 945173523 945173523 668052711 740082301 740082301 411588752 1002891210 1002891210 905044971 986107593 986107593 843202593 738663264 800402301 800402301 779528400 56839072 227587165 713199853 758795017 769708462 1006784919 1006784919 646916877 759565729 830734912 948112654 948112654 856001390 856001390 419441713 737193628 737193628 646909767 1024717913 1024717913 945415840 945415840 293662882 415952896 415952896 357522572 357522572 993601335 993601335 562858745 936953201 936953201 712016823 712016823 611760739 611760739 69087681 630463849 630463849 461719076 602456216 631768425 841544120 841544120 392741517 371604674 371604674 580862032 852670065 852670065 827726499 566659072 566659072 352521330 362137115 766640825 766640825 676955269 676994048 676994048 276509122 276509122 303589490 332081722 348463178 412827182 412827182 528030348 528030348 477171598 588386385 588386385 962513096 969856272 969856272 1021429078 1021429078 990928990 694389409 943997114 943997114 583124176 735645152 735645152 565297392 713944149 713944149 661720556 142027560 677211072 748221773 748221773 666786972 600443672 621074008 621074008 647021328 647021328 583008465 95584440 73546264 570910720 576979329 576979329 605171785 964987684 1030480153 1030480153 971412003 971412003 935643387 830506272 600229315 1027029807 1027029807 522991121 219226760 219226760 125254584 629060625 629060625 50589744 855917723 855917723 895287203 911081344 911081344 822922275 811256096 843190419 852559441 852559441 571159569 194511957 721818176 721818176 9574453 805310464 964829379 964829379 56623536 56623536 42152016 118162536 118162536 96189980 96189980 17834112 104123160 104123160 760469409 760469409 662129929 662129929 614670400 542285372 772016157 772016157 767953612 861275084 861275084 320025138 370167816 370167816 386548776 570609666 570609666 304119904 304119904 61477922 274012176 274012176 73264776 73264776 33599128 210223728 258837692 1024237736 1024237736 567210103 561071876 734755586 992438037 992438037 977880556 977880556 883450302 883450302 1008873904 1008873904 866466867 1043099486 1043099486 1009513743 954729927 954729927 875169112 875169112 387499578 602017152 602017152 304087205 605671856 605671856 188669748 188669748 1011024926 1011024926 739531288 732963028 732963028 954523093 954523093 701272164 331570483 696856812 696856812 1049978930 1049978930 786436416 786436416 776081565 810887448 1045766715 1045766715 940908730 623192361 507523428 421927206 281084212 634267880 634267880 108553257 78902609 579190161 579190161 573657873 573657873 570560529 100962112 102810944 284258958 284258958 211997004 418783626 418783626 479127462 479127462 341174922 470663780 470663780 88621218 270521374 479206178 540045387 540045387 189376516 706341539 706341539 437586992 437308288 310253846 457805607 457805607 166464093 227642174 227642174 794111845 794111845 307832466 307832466 838931488 838931488 17961504 641598080 641598080 136839812 324273204 341475348 341475348 851336199 851336199 571690464 571690464 559697921 559697921 210914117 942830006 942830006 937450238 937450238 428898561 428898561 406179479 979668241 979668241 655255870 655255870 727489831 847048849 847048849 973105684 973105684 458885732 458885732 169595152 169544768 168043216 35794192 32911872 32967936 32967936 37422688 56237648 66328000 101788500 209458028 228787708 228787708 216606092 216606092 137700824 137700824 156776232 180280334 180280334 429844292 429844292 414713670 414713670 218667374 209034124 36699424 251668034 395650206 453289506 453289506 400354708 153614592 153614592 371021366 371021366 369624090 375340698 375340698 252582972 252582972 240655008 310938260 310938260 307824768 307824768 64094956 78474744 391619148 493694382 493694382 89725614 76754272 14233280 51779440 52308760 389039952 389039952 278219856 61133122 95748192 95748192 12583104 12583104 50866276 177024084 177938132 177938132 184816500 513803950 513803950 371200029 504865757 968833847 968833847 876627226 982089743 982089743 848051208 268435584 272629890 272629890 20972034 20972034 105219162 282980034 401116990 403252230 403252230 141148546 67507008 171051612 171051612 614500392 614500392 769810680 769810680 568498288 970508748 970508748 766298228 1051463007 1051463007 890765679 1062526520 1062526520 279351874 277125120 176621862 142873080 110560560 110560560 84458768 75998464 125616496 226530856 247334384 406067304 406067304 191890356 217655124 217655124 174593500 174593500 103485448 774844447 1065622088 1065622088 238755133 778687460 778687460 648515913 648515913 394871862 351579238 185407706 728910307 728910307 910722021 910722021 741743373 712830733 945484871 945484871 342355782 700985624 905973783 905973783 841007120 372113416 372113416 335773000 77419800 77419800 52596992 411391002 411391002 213168652 454938414 454938414 333276962 89399160 106955160 129895080 237736682 476644660 476644660 391692176 391692176 399315018 399315018 104442960 281844482 281844482 169125824 175554752 270549408 289980546 520350830 520350830 339269194 339269194 270012450 816381274 816381274 571269783 408759942 324912310 341576285 750780632 750780632 704643093 857285794 857285794 457393806 490702526 490702526 977135116 977135116 909995027 286850871 1057629724 1057629724 836305947 848566879 848566879 424704088 901849248 901849248 847462790 511800354 511800354 368648124 398285950 579448855 579448855 564622765 701609184 701609184 668826201 955328128 955328128 846408854 403751430 585417331 904938624 904938624 695606181 722301188 722301188 164085360 47876624 13556928 133761448 133761448 67052912 163808396 247673052 914890014 914890014 681974085 522196308 791282980 791282980 860558907 860558907 1063854524 1063854524 909256602 862463105 944942803 944942803 881080585 881777739 881777739 1044185247 1044185247 660210026 660210026 414385447 510800428 510800428 772414042 772414042 976834887 976834887 189414616 764341115 1011956373 1011956373 1049725382 1049725382 163884392 24907680 629851168 629851168 170918676 310565296 379605174 379605174 359000490 494900742 1021743426 1021743426 914413583 704918477 581372356 651307029 651307029 730038848 730038848 899944221 899944221 876873867 876873867 1010449945 1010449945 758305621 259332935 667367673 667367673 628754853 628754853 1021256382 1021256382 822646002 831581656 831581656 549468744 134416385 671561733 671561733 49233360 991954840 991954840 752354487 452646870 920787804 1000341879 1000341879 817174529 817174529 606076425 606076425 444355358 376348801 204607884 137125504 876816854 876816854 712741277 763532265 763532265 228593953 99371008 759859008 968048309 1067854364 1067854364 1033378615 791471147 791471147 574457276 574457276 729320471 733275930 733275930 365969627 588300849 743065113 868799574 868799574 609918055 277633626 277633626 281674761 651653857 651653857 682178124 682178124 92066016 245371604 758958176 758958176 736677013 736677013 396414971 170468628 497435701 923356149 923356149 727847888 727847888 438264173 438264173 423362361 526034377 1011165487 1011165487 895084203 883430188 284358986 461114595 738787558 1066084384 1066084384 684143621 688355397 688355397 644029345 644029345 611606089 611606089 662039481 662039481 887092778 994550467 994550467 942253323 942253323 896149469 263197793 1040187435 1040187435 608350369 117563448 304870674 304870674 111674176 111674176 102237720 68157960 548541771 548541771 832767610 832767610 559399858 106640937 352466090 352466090 86144561 596390240 596390240 573266368 573266368 620986563 620986563 778233130 817896926 817896926 250154314 251754508 251754508 243712828 882921810 882921810 735716104 885330822 885330822 853194175 746328911 746328911 565711894 565711894 624239470 624239470 817398082 817398082 816595981 471092008 471092008 268717553 583536688 861162754 861162754 847073520 813603296 816029163 816029163 868093065 868093065 847909971 663798393 663798393 299402395 76021824 408711252 408711252 850296211 850296211 839092845 942944904 942944904 575715462 176759552 607303248 607303248 1018709575 1018709575 845293432 832643427 950219079 950219079 703672620 703672620 1043990299 1043990299 1043859231 302176013 12034368 12034368 75942472 83482190 947567490 947567490 675315797 181425799 1002939503 1002939503 387475856 872904491 872904491 359002610 479979232 479979232 348923636 388817054 400822130 400822130 560726505 560726505 589247777 589247777 627184837 703256037 832093155 832093155 816169254 801948998 590610560 341836170 534474562 752044907 794802756 794802756 493705154 493705154 209530504 371591636 371591636 367601130 286003272 445297042 493829558 536454378 536454378 524651998 491270076 471146556 471146556 339130972 339130972 474830280 517732062 517732062 422558360 86020576 123083980 172858596 490840107 559900833 743773329 743773329 528947369 586752773 586752773 442637702 711086212 1043110731 1043110731 843523761 843523761 630605688 630605688 675285336 675285336 1031050434 1031050434 906060938 463287758 814367093 814367093 659642365 659642365 582329589 393422318 393422318 595078948 595078948 402132918 406290228 406290228 371230912 371230912 334508131 894216195 894216195 644001704 604150018 604150018 146258620 706150721 975084250 975084250 688263778 867375975 867375975 859138101 859138101 690937125 715631653 715631653 697115725 697115725 454447446 656245728 656245728 476246901 936452859 936452859 762740147 701023461 966505184 966505184 772724272 772724272 134402052 265335444 265335444 185802856 245178488 245178488 101799680 350788680 350788680 275449314 553754657 553754657 562097056 562097056 602001200 602001200 576276784 576276784 546317393 315654882 315654882 602116866 846386067 846386067 586469536 832519779 905738571 905738571 347819598 806490627 806490627 684275776 136130052 136130052 898377287 898377287 952966628 952966628 565306208 565306208 957727278 957727278 612674176 143704898 414237510 414237510 145916448 135791244 888472576 1023225807 1023225807 826351779 826351779 512304542 512304542 398983638 1053304251 1053304251 764586383 460986294 617578585 617578585 1003177573 1003177573 668052711 740082301 740082301 1006706798 1006706798 1002891210 905044971 207978599 4459136 4397120 697864864 697864864 229381 99198036 162013220 208159144 218104940 218104940 769708462 1006784919 1006784919 375521317 136314944 830734912 830734912 548327722 875922786 875922786 873736962 563642400 373875104 373875104 297346648 387973434 387973434 411243232 411243232 415952896 415952896 345676932 345676932 52613424 52613424 52428864 711091316 711091316 411041862 411041862 279631170 528659284 528659284 529065502 529065502 461719076 748587352 748587352 841544120 841544120 392741517 371604674 371604674 310061056 844056258 844056258 820635075 566659072 566659072 16986144 17184768 17184768 135168 135168 271589122 271589122 276509122 276509122 303589490 332081722 517154324 517154324 412827182 528030348 528030348 477171598 588386385 588386385 962513096 962513096 731038214 1021429078 1021429078 765075177 765075177 943997114 943997114 583124176 735645152 735645152 565297392 713944149 713944149 661720556 142027560 677211072 748221773 748221773 666786972 553846972 574351700 574351700 101913152 102846752 102846752 564252841 564252841 559947792 691196225 691196225 575037821 982685871 982685871 891832062 971412003 971412003 935643387 720633948 572198206 1027029807 1027029807 785036868 785036868 603844209 641330001 641330001 629060625 50508448 855917723 855917723 895287203 911081344 911081344 822922275 811256096 843190419 852559441 852559441 571159569 194511957 194511957 914371530 914371530 805310464 964829379 964829379 824706339 824706339 511728530 540220531 540220531 119961696 630647553 630647553 104123160 104123160 760469409 760469409 662129929 662129929 604726873 595503936 772016157 772016157 612420272 861275084 861275084 565651795 456469302 370167816 303223314 237246516 774249524 774249524 587467888 462242880 280661504 274012176 202369446 290368770 290368770 342725896 908612848 908612848 567210103 802042236 802042236 734755586 992438037 992438037 674827318 436307230 486638595 486638595 157021860 321525765 545897745 1043099486 1043099486 1009513743 954729927 954729927 875169112 875169112 483137751 986057934 986057934 304087205 197255412 633393401 633393401 750932530 1011024926 1011024926 739531288 683164820 687992181 954523093 954523093 543088257 599312241 696856812 696856812 608834697 398709144 786436416 786436416 776081565 635936942 769917257 940908730 1009003374 1009003374 507523428 528492868 528492868 161808848 152518624 94380416 69214656 64079792 559773728 588124560 588124560 570560529 235075536 235075536 214880340 211997004 211997004 39951120 101337392 479127462 479127462 283233064 425066052 501257184 501257184 270521374 479206178 540045387 540045387 189376516 706341539 706341539 437308288 437308288 404390786 1011254406 1011254406 896597260 896597260 681743269 243739101 474819854 474819854 307832466 407772294 407772294 621929001 621929001 963798184 963798184 324273204 560599680 620757033 851336199 851336199 571690464 571690464 559697921 559697921 479327494 942830006 942830006 937450238 937450238 428898561 428898561 406179479 979668241 979668241 655255870 701447397 727489831 847048849 847048849 973105684 973105684 458885732 458885732 169544768 169544768 168043216 35396944 32911872 29885664 27837792 37422688 56237648 66328000 101788500 209458028 228787708 228787708 216606092 216606092 137700824 137700824 156776232 371460672 371460672 429844292 429844292 414713670 414713670 218667374 209034124 36699424 281289768 281289768 227356338 186461748 155977156 195484020 195484020 187974656 187974656 272958712 489023790 489023790 428541708 304709284 195638340 310938260 474482844 474482844 473173006 430315878 430315878 427314134 257862022 257862022 167526348 158270496 5376256 269916928 269916928 4086786 278219856 278219856 98774144 98774144 95748192 12583104 21235808 80087072 84021288 84021288 75763112 75763112 75497544 68158016 152443428 691539684 703730661 703730661 876627226 876627226 576834963 839509011 839509011 272629890 272629890 435425280 435425280 627843562 653569011 668306394 668306394 400981536 400981536 338421538 327295000 171051612 614500392 614500392 608315817 568498288 1023968505 1023968505 804834624 782552932 741099535 905724762 905724762 1062526520 1062526520 279351874 33692176 142873080 142873080 110560560 206071396 206071396 80414432 227562156 227562156 780406846 1044515876 1044515876 861439601 861439601 919676312 919676312 471343680 691061857 774844447 1065622088 1065622088 704692576 778687460 778687460 648515913 648515913 394871862 351579238 185407706 728910307 728910307 746405518 746405518 741743373 712830733 282458176 282458176 96985288 213189440 213189440 370925960 370925960 309991314 67231306 42271104 27523376 52596992 230354672 230354672 221514540 221514540 261686872 333276962 333276962 231244908 231244908 379375552 379375552 476644660 476644660 391692176 391692176 399315018 399315018 104442960 200763756 200763756 169125824 175554752 270549408 289980546 289980546 312107088 312107088 52163296 30668336 551609936 571269783 571269783 756937022 756937022 733590305 493019666 572037920 885817915 944243847 944243847 572053518 572053518 490702526 504717352 839360022 839360022 227606528 1065484812 1065484812 501219396 848566879 848566879 298708194 428646650 781145292 781145292 511800354 511800354 443058050 398285950 992498388 992498388 748279195 705276432 980298797 980298797 955328128 955328128 846408854 403751430 810059238 904938624 904938624 695606181 722301188 722301188 675199254 675199254 540697034 246464468 164871732 189470768 218195093 606973153 606973153 218963184 843378221 843378221 791282980 791282980 853279410 853279410 665913120 665913120 352850235 293732936 445680864 445680864 265078300 265078300 243844188 190350960 609222920 609222920 209977864 891103872 891103872 475773642 556580689 556580689 976834887 976834887 189414616 764341115 909640300 999075801 999075801 879139262 537804888 546627343 629851168 629851168 254019634 592446438 893798727 893798727 903665707 979561925 979561925 779854656 704918477 704918477 581372356 651307029 651307029 57075208 453471752 899944221 899944221 795943869 795943869 1010449945 1010449945 259332935 259332935 667367673 667367673 628754853 849328304 1021256382 1021256382 822646002 831581656 831581656 549468744 864300964 871965023 1057039851 1057039851 882968038 882968038 571642144 622903593 737810050 1000341879 1000341879 961744483 712671662 958474479 960749699 960749699 545830466 5343427 105591960 1012602438 1012602438 714618575 763532265 763532265 484597532 894994204 894994204 524881409 1067854364 1067854364 1033378615 791471147 791471147 574457276 574457276 729320471 733275930 733275930 340323055 66102626 319948352 695489630 695489630 319556658 490656540 490656540 253676656 651653857 651653857 682178124 684213313 684213313 749788936 758958176 758958176 747127881 736677013 396414971 137413380 497435701 923356149 923356149 727847888 940986805 940986805 257238764 816575243 816575243 411126104 411126104 402702342 384304602 384304602 94970746 87360296 553960032 560877541 671537157 688355397 688355397 587432756 587432756 581473313 227256917 325083138 507455173 861615795 994550467 994550467 942253323 942253323 896149469 561042620 1040187435 1040187435 608350369 117563448 304870674 771755144 771755144 708384666 965329437 965329437 957035559 548541771 832767610 832767610 559399858 372245450 372245450 352466090 322037352 631352632 631352632 573266368 573266368 620986563 620986563 778233130 817896926 817896926 4548608 0 0 0 3965184 149676632 149676632 346194264 853194175 853194175 746328911 1012924815 1012924815 565711894 624239470 624239470 615851855 615851855 252877324 471384149 471384149 545800240 847943035 861162754 861162754 847073520 813603296 816029163 816029163 868093065 868093065 847909971 663798393 663798393 299402395 124392888 124392888 23729568 271291842 271291842 293253472 402998272 575715462 575715462 239631636 768115380 768115380 575926929 845293432 845293432 832643427 950219079 950219079 703672620 703672620 1043990299 1043990299 1043859231 302176013 732250108 732250108 746671757 746671757 947567490 947567490 675315797 181425799 287885448 360452010 360452010 204489386 459916636 459916636 479979232 479979232 326157234 336629020 400822130 400822130 560726505 560726505 65136873 44302912 315131340 315131340 660603643 660603643 801948998 801948998 590610560 520351806 534474562 752044907 794802756 794802756 793562301 760048316 399508140 371591636 371591636 367601130 283374018 445297042 445297042 536454378 536454378 524651998 491270076 471146556 471146556 339130972 339130972 474830280 517732062 517732062 422558360 27472224 464920794 464920794 490840107 559900833 743773329 743773329 528947369 586752773 586752773 242438104 242438104 0 0 0 0 10485760 10486080 28576944 55315296 208669744 271997008 271997008 42375938 788660236 788660236 659642365 659642365 582329589 91581656 201083536 201083536 36138948 32584544 406290228 406290228 371230912 371230912 351957344 114810184 862908962 862908962 604150018 604150018 579682432 862391746 975084250 975084250 688263778 867375975 867375975 996921012 996921012 60273973 60273973 682565125 766366049 766366049 881245982 881245982 813396015 813396015 958627782 996007495 996007495 737623029 966505184 966505184 772724272 772724272 134402052 265335444 265335444 152109640 22216920 17834640 101799680 101799680 3842584 0 553754657 553754657 562097056 562097056 602001200 602001200 576276784 576276784 546317393 50405650 128147560 602116866 846386067 846386067 586469536 832519779 905738571 905738571 347465035 806490627 806490627 330399760 330399760 864018322 872887808 872887808 875188419 875188419 816146504 10860544 58736912 58736912 109856272 109856272 109511936 382025330 603356280 603356280 888472576 1023225807 1023225807 826351779 893444240 893478049 893478049 809591266 1053304251 1053304251 764586383 460986294 460986294 437961120 1003177573 1003177573 756953600 738722829 738722829 1006706798 1006706798 647616505 415065776 415065776 571297280 571297280 697864864 699971424 743506048 743506048 345515786 345515786 585754001 591472593 591472593 832772416 832772416 591781617 621424689 621424689 598919651 898895381 898895381 875922786 873736962 563642400 598368376 598368376 965940489 965940489 646624464 646624464 506163848 294774508 294774508 345676932 357670843 946504773 946504773 556511817 711091316 711091316 578872225 411041862 279631170 528659284 528659284 177280060 185379876 268107872 748587352 748587352 721783376 778833309 778833309 882584534 882584534 947626146 947626146 844056258 820635075 542758450 542758450 214958796 419927267 605941257 605941257 1023459975 1023459975 1021347586 273814144 273814144 268435458 42416208 517154324 517154324 336538778 224398004 249433504 249433504 247465492 247465492 174328212 1021342058 1021342058 577445909 617234960 765075177 765075177 705207308 637982745 415404170 338328694 189074304 189074304 54575280 54575280 34078880 574464 109674496 109674496 76019840 63351352 6594560 71426496 77594952 77594952 93479336 93479336 564252841 564252841 559947792 691196225 691196225 575037821 982685871 982685871 814616924 1050150495 1050150495 720633948 772739342 772739342 472005661 263781492 785036868 785036868 612376576 641330001 641330001 599220145 925047057 925047057 841069696 863777811 863777811 388531488 388531488 268456248 107776170 817975490 817975490 295928178 834331586 911775496 914371530 914371530 647045247 647045247 716773117 824706339 824706339 511728530 540220531 540220531 119961696 630647553 630647553 25471808 11534400 68591168 68591168 129338432 604726873 653631272 653631272 619185609 619185609 612420272 612420272 587559930 829762467 829762467 357665165 760234537 760234537 774249524 774249524 587467888 957224993 957224993 554121249 542005268 290368770 290368770 342725896 908612848 953085074 1061831230 1061831230 855071762 1059301932 1059301932 303337528 436307230 436307230 534840196 534840196 22782186 136512528 1047317588 1047317588 949874247 949874247 359228910 230017260 305022988 305022988 483137751 986057934 986057934 197255412 197255412 633393401 633393401 750932530 750932530 324949528 683164820 683164820 687992181 687992181 543088257 543088257 599312241 823023315 823023315 951607442 951607442 849477844 707451324 1026663092 1026663092 949415972 769917257 1009003374 1009003374 492831150 928398849 928398849 621290720 621290720 94380416 69214656 66117281 575395888 588124560 588124560 575727680 235075536 235075536 549523209 549523209 211997004 541748753 541748753 218155916 218155916 70582976 118766712 501257184 501257184 97488402 3856128 274256146 274256146 90401310 422610080 422610080 410568582 404390786 404390786 1011254406 1011254406 896597260 944643635 944643635 896214058 709100854 474819854 290791586 407772294 407772294 621929001 621929001 963798184 963798184 227693672 560599680 620757033 811832206 811832206 152166948 345564522 345564522 246099712 479327494 479327494 315687772 315687772 284373954 349177160 349177160 135790656 626831256 626831256 589422897 701447397 701447397 456841014 456841014 455583232 455583232 8133520 38409360 38409360 36571520 40649408 40649408 29885664 29885664 27837792 62144864 269712002 290720048 290720048 692422477 692422477 690561714 690561714 810685059 810685059 473972889 173200020 924225542 924225542 663189610 663189610 438378754 438378754 151333200 159647844 528484356 528679076 528679076 428856366 491783828 491783828 195484020 195484020 161601808 178832724 272958712 489023790 489023790 428541708 304709284 195638340 257215620 474482844 474482844 473173006 430315878 430315878 427314134 481527924 481527924 167526348 162136608 268452432 269916928 377846608 377846608 114498738 71384736 98774144 98774144 67899208 32579744 32579744 80087072 84021288 84021288 4198568 4194432 475435790 475435790 956465699 956465699 823181859 823181859 682677605 682677605 268484610 839509011 839509011 701896901 702422757 702422757 435425280 627843562 653569011 668306394 668306394 400981536 400981536 338421538 327295000 125831488 126878328 608315817 608315817 182816832 1023968505 1023968505 804834624 782552932 741099535 905724762 905724762 446322440 446322440 206737796 206737796 263377860 263377860 75497544 206071396 206071396 117982360 227562156 315307640 780406846 1044515876 1044515876 861439601 861439601 919676312 919676312 471343680 691061857 691061857 461407847 201376840 787385620 787385620 131962224 331187994 331187994 129327344 693770592 693770592 833913511 833913511 669495288 470398112 470398112 182571240 129636216 250069544 250069544 272481100 272481100 370925960 370925960 309991314 67231306 67202936 87861576 87861576 230354672 230354672 221514540 221514540 261686872 261686872 145328016 231244908 231244908 519020912 519020912 280817134 178536950 369280000 369280000 404343296 404343296 523974462 523974462 478884942 478884942 374746836 278448736 27427104 19416320 35725888 322478240 322478240 49743666 551609936 551609936 517243937 756937022 885734623 885734623 581881048 1063581119 1063581119 944243847 944243847 572053518 943465994 943465994 856906039 856906039 839360022 521347622 1065484812 1065484812 1057100084 874512651 1012169295 1012169295 973477922 973477922 859967490 405008646 443058050 443058050 389357578 992498388 992498388 748279195 705276432 1003367757 1003367757 876460971 581870709 206233613 581100042 810059238 810059238 355748929 160766805 164262946 164262946 776028034 805799636 805799636 546695428 620068249 620068249 586871072 606973153 606973153 147325277 859835018 960757809 960757809 683935941 853279410 868782328 868782328 828506161 828506161 76677938 540152065 821506194 947854105 947854105 839893307 637476261 365484771 221064690 209977864 891103872 891103872 938577759 938577759 198494964 268531790 268531790 299767424 299767424 222005284 540902170 556181817 556181817 537804888 546627343 546627343 405593407 403837750 592446438 893798727 893798727 903665707 979561925 979561925 819599043 819599043 217845150 110169540 214118604 598827664 931108877 931108877 779727267 103039560 103039560 346597404 346597404 235226442 1000639552 1000639552 176968679 139860612 145889936 849328304 1018828374 1018828374 110025816 110025816 92298288 441120 864300964 871965023 1057039851 1057039851 968626023 968626023 571642144 622903593 622903593 153356580 961744483 992266551 992266551 958474479 960749699 960749699 950674706 950674706 441204106 1012602438 1012602438 782377108 782377108 578234890 587566645 897132343 897132343 877448331 636260015 475931212 145493316 145493316 183044816 183044816 115361296 115361296 57180648 50332576 24692640 546080193 546080193 444212912 319185920 760353453 760353453 675491250 675491250 643521690 595218641 549508394 684213313 684213313 749788936 749788936 915162828 915162828 245498578 245498578 1062799092 1062799092 876767709 87106344 438403236 940986805 940986805 257238764 816575243 816575243 517475596 180355162 317720072 384304602 384304602 94970746 87360296 83176392 75565952 22420128 558274720 558274720 34362688 11176976 26706984 77594184 325083138 457540744 457540744 418640838 853043470 853043470 707004227 561042620 561042620 889245744 889245744 566334155 353628714 374132380 771755144 771755144 708384666 965329437 965329437 957035559 145240419 0 339738896 351273754 390071600 390071600 342361482 889868595 889868595 857904171 82127177 70198656 625276034 625276034 353012779 235814954 223273258 223273258 203238924 203238924 202762764 346206086 346206086 173833112 511568978 511568978 388006192 717242704 1012924815 1012924815 946654599 946654599 546956865 615851855 615851855 201957405 839419957 839419957 803596797 847943035 847943035 902941640 902941640 372323683 378143048 378143048 338247808 308367434 344105362 344105362 129031457 557691393 557691393 298325641 280651011 271291842 476176927 642376857 1007472657 1007472657 810875079 606121177 882439929 882439929 864235635 436277349 694862192 694862192 500204351 606151017 606151017 218312973 218312973 134352900 202504449 649728681 732250108 732250108 746671757 746671757 999133502 999133502 32023592 181657296 858932499 858932499 360452010 553748119 553748119 459916636 277719066 309370888 326157234 326157234 188239526 17565184 16813568 524288 525312 525312 315131340 384827880 926995200 926995200 911319195 902120229 992217399 992217399 511278626 511278626 790119058 793562301 793562301 760048316 504629304 504629304 177999462 282329324 386140218 509383930 512938590 512938590 422900976 127745204 192274560 203894788 268451880 288481658 288481658 260692782 54084200 191026132 221888886 283606174 464920794 464920794 166702220 736414197 825071471 825071471 584458761 1010811582 1010811582 458667153 706249300 706249300 549425449 890190891 890190891 830505026 780665123 818092099 818092099 758613211 758613211 179815956 974972422 1017749320 1017749320 835810535 835810535 1071311949 1071311949 271994881 175822740 403638224 533165780 533165780 487723566 487723566 352342000 351957344 311168018 862908962 862908962 812206210 579682432 896859527 896859527 862391746 541339482 541339482 597438082 838192246 996921012 996921012 694778741 694778741 60096848 766366049 766366049 881245982 881245982 832198504 813396015 958627782 996007495 996007495 737623029 27662688 27662688 134546048 134546048 103639116 127781248 127781248 122049944 122049944 101191712 339678448 339678448 132594168 272835320 272835320 125872466 89219072 89219072 55186496 26745872 46927088 46935250 50405650 50405650 128147560 931304504 931304504 87046456 95992936 95992936 551964242 863584947 863584947 274189530 274189530 330399760 330399760 864018322 872887808 872887808 875188419 875188419 816146504 337748552 58736912 58736912 85836440 85836440 102337552 382025330 603356280 603356280 845892593 845892593 820038665 820038665 893444240 893478049 903352552 927601851 927601851 915427918 915427918 678199693 678199693 890914439 890914439 756953600 756953600 890807322 890807322 916578651 916578651 959164727 959164727 608265882 608265882 595891121 595891121 699971424 743506048 743506048 345515786 350093896 585754001 591472593 591472593 25571795 591781617 591781617 621424689 849621969 915712777 915712777 898895381 744415941 605034318 922037211 966328645 966328645 965940489 965940489 851759146 851759146 506163848 323817520 294774508 29726948 357670843 946504773 946504773 556511817 396452196 675223796 675223796 721289809 721289809 712509333 125923693 647246481 647246481 268107872 780290129 780290129 721783376 778833309 778833309 882584534 882584534 947626146 947626146 500204143 994689274 994689274 876702865 654721353 419927267 605941257 605941257 1023459975 1023459975 1021347586 279325760 279325760 268435458 12656832 13057664 13057664 487800708 487800708 272302376 150938564 206621464 206621464 174328212 1021342058 1021342058 577445909 419430430 961339046 961339046 705207308 667815153 67820693 1460356 191913440 191913440 242761556 255207308 255207308 224563200 224563200 109674496 105847568 105847568 30459192 30459192 75792808 75792808 87228992 648887297 648887297 608181777 608181777 113246352 113246352 195166320 195166320 11799360 814616924 1050150495 1050150495 675808389 772739342 772739342 472005661 595582568 595582568 794440413 794440413 4236832 542652880 599220145 925047057 925047057 858572674 863777811 863777811 639783072 639783072 610687274 862716987 862716987 817975490 295928178 834331586 911775496 911775496 420479526 945823876 945823876 545789168 37953841 154170096 154170096 110112264 110112264 95639128 27576672 11921040 49144528 49144528 131563344 131563344 129338432 129338432 653631272 653631272 580340809 811630592 811630592 587559930 587559930 829762467 829762467 357665165 760234537 760234537 641429351 490429465 273417364 957224993 957224993 604317705 542005268 201392152 119153664 227189192 227189192 953085074 1061831230 1061831230 855071762 1059301932 1059301932 101896192 339739712 339739712 534840196 534840196 204595980 370718473 1047317588 1047317588 754189795 704384997 940241893 940241893 305022988 305022988 401960986 401960986 167772180 143729232 591458624 591458624 237056316 237056316 223946412 324949528 336684588 336684588 336547376 387547656 387547656 336500272 592034817 823023315 823023315 951607442 951607442 849477844 707451324 1026663092 1026663092 961640595 961640595 789594666 789594666 1008140498 1008140498 928398849 621290720 621290720 275043352 339513410 808846930 808846930 575395888 575727680 575727680 358299306 320484976 549523209 549523209 75735176 541748753 541748753 302913392 64038656 320539264 320539264 346481128 346481128 118105348 365505714 994471283 994471283 117714052 659317925 659317925 410568582 141165472 322573440 762980919 762980919 975050768 975050768 944643635 896214058 709100854 6291724 21107218 324010674 324010674 340288128 340288128 319689754 207751378 199884944 644385176 644385176 122473885 5679668 6887296 16395584 23675968 31580640 446481506 446481506 316680782 418685787 985783107 985783107 981821460 981821460 878249866 626831256 589422897 709014630 946546965 946546965 560674209 958449684 958449684 459302516 459302516 171841744 198894128 198894128 66588624 66588624 64489200 65613570 276022594 276022594 290720048 290720048 692422477 692422477 690561714 690561714 810685059 810685059 473972889 173200020 924225542 924225542 663189610 663189610 438378754 438378754 403843140 403843140 528484356 528679076 528679076 428856366 491783828 491783828 55499952 55499952 24158390 55125168 55125168 58406832 427160838 427160838 27242304 306623024 306623024 275293312 275293312 270131458 195291718 190639536 373616144 481527924 481527924 162136608 394610800 394610800 340870296 377846608 377846608 114498738 297149864 300683872 300683872 29179904 32579744 32579744 90063552 93199464 93199464 79956168 82184648 475435790 475435790 956465699 956465699 823181859 823181859 953848979 953848979 268484610 252682480 938161930 938161930 702859749 702859749 656150528 656150528 361598016 361598016 299229258 122605704 122605704 119386632 57945728 125831488 126878328 126878328 118489152 86066440 408946144 446558230 446558230 177615366 421009204 421009204 445194752 517624926 517624926 419463190 405052154 468620500 468620500 96208848 96208848 105564896 117982360 117982360 315307640 374361810 374361810 176341184 202722136 202722136 842532096 842532096 299991076 701104614 701104614 943393363 943393363 787385620 787385620 654688304 331187994 331187994 143988841 693770592 693770592 1018730253 1018730253 765141007 470398112 470398112 271408936 435080678 435080678 274469054 274469054 272481100 313899462 313899462 476463000 476463000 280624328 120141624 120141624 43107252 166404112 166404112 48886900 48886900 145328016 145328016 188805428 188805428 521380496 521380496 280817134 201343044 493930500 493930500 404343296 404343296 523974462 523974462 478884942 478884942 374746836 402916788 402916788 330123394 184551620 322478240 322478240 278827104 160270884 357312838 874048824 874048824 1020604654 1020604654 827591331 1063581119 1063581119 915341197 882378315 370974739 943465994 991479351 991479351 856906039 622193193 521347622 1014532976 1057100084 1057100084 935705539 1012169295 1012169295 973477922 973477922 859967490 856529525 856529525 222336160 222300596 244847729 244847729 621216080 621216080 1003367757 1003367757 697106659 581870709 470686734 581100042 581100042 441999681 159457380 966799446 966799446 589827311 776028034 805799636 805799636 546695428 620068249 620068249 586871072 261443268 181060828 164235892 859835018 960757809 960757809 765716896 617358581 879252498 928977963 928977963 828506161 327419218 540152065 821506194 947854105 947854105 839893307 637476261 365484771 677709418 771042177 771042177 769199559 1024012877 1024012877 361968234 887521157 887521157 315268722 613245555 941597212 941597212 746869364 840467456 840467456 404358156 336728586 201856518 403837750 546358002 546358002 416609267 125125426 500220654 696032136 819599043 819599043 49285699 110169540 214118604 598827664 931108877 931108877 779727267 318532128 978371223 978371223 957924480 956320807 1000639552 1000639552 897792119 897792119 781517363 521672884 1018828374 1018828374 904927747 912276512 912276512 624959986 754730402 889241727 889241727 953682992 968626023 968626023 609911180 1041886733 1041886733 153356580 720788422 992266551 992266551 458229160 403252230 403252230 950674706 950674706 712448266 513740115 212076876 782377108 946225543 946225543 587566645 897132343 897132343 877448331 636260015 1022624727 1022624727 872448977 1038418188 1038418188 616916118 967928028 967928028 1012665999 1012665999 826804780 546080193 444212912 101614908 760353453 760353453 826155712 826155712 643521690 926994898 926994898 146834799 143294466 145264960 145264960 915162828 915162828 914103503 568361695 1062799092 1062799092 946902831 87106344 87106344 111295284 111295284 314028612 411524928 517475596 517475596 180355162 339360622 339360622 193801332 160770660 160770660 228250472 228250472 681698116 681698116 558274720 655032694 655032694 296405767 296405767 392282642 392282642 659106440 839360323 1041192962 1041192962 707004227 852281311 852281311 1063272851 1063272851 1047527453 353628714 374132380 387235934 387235934 296018094 352977432 720389503 720389503 618746637 957267630 1062490486 1062490486 390071600 390071600 867258904 889868595 889868595 857904171 578917376 578917376 625276034 625276034 587567712 235814954 223273258 223273258 203238924 203238924 202762764 346206086 346206086 173833112 511568978 511568978 116513728 806354947 893438892 893438892 946654599 946654599 892864299 892864299 448105585 650895734 839419957 839419957 987439432 987439432 310772433 902941640 902941640 372323683 318966752 823209689 823209689 833956707 833956707 830647922 129031457 557691393 557691393 298325641 280651011 104018712 842601096 912995739 1007472657 1007472657 810875079 798024352 882439929 882439929 864235635 802752310 592594710 970231501 970231501 863147304 863147304 701114217 403191105 361235206 239262043 649728681 649728681 593463236 593463236 853211905 999133502 999133502 984139095 984139095 858932499 858932499 463593846 553748119 553748119 273261840 100712608 269190818 269190818 408772896 408772896 324570758 548669193 548669193 12328768 40374744 579739481 911397610 926995200 926995200 911319195 902120229 992217399 1006936392 1006936392 950397255 386452014 503316510 503316510 488114906 504629304 504629304 177999462 282329324 386140218 509383930 512938590 512938590 209734528 209734528 339226628 339226628 229646948 229646948 202762772 202762772 54084200 191026132 478212356 478212356 419955750 419955750 166702220 736414197 825071471 825071471 584468014 1010811582 1010811582 509361852 706249300 706249300 549425449 890190891 890190891 830505026 780665123 818092099 818092099 758613211 758613211 951008583 974972422 1017749320 1017749320 835810535 835810535 1071311949 1071311949 998075540 623641867 552494984 533165780 533165780 492117994 492117994 335562208 335562208 311168018 311168018 812206210 812206210 575301073 896859527 896859527 295426212 295426212 166439140 941852371 993253859 993253859 824562208 694778741 694778741 580121169 543297473 543297473 15519168 832198504 832198504 266864124 266864124 245503136 211318612 50516152 114295512 240304288 240304288 165418856 193038960 193038960 327843286 530833278 530833278 412824182 554437665 554437665 199760249 922791313 922791313 959502123 959502123 427026439 122689688 122689688 699663476 699663476 805576788 805576788 19620320 931304504 931304504 861918370 836924082 356629562 551964242 863584947 863584947 53374177 12099906 105388440 105388440 658487064 658487064 86041856 86041856 363252360 363252360 381710216 381710216 316170864 316170864 42591312 43008632 83935272 83935272 43845664 121661144 121661144 114608856 569068608 569068608 122684088 903352552 927601851 927601851 915427918 915427918 678199693 1030497644 1030497644 890914439 541838415 93956815 890807322 890807322 916578651 916578651 959164727 959164727 608265882 608265882 595891121 595891121 129473872 129473872 54573072 54573072 350093896 350093896 351274154 351274154 312543448 351003216 351003216 301611802 849621969 915712777 915712777 744415941 744415941 605034318 922037211 966328645 966328645 813810027 813810027 851759146 851759146 411146458 407513092 449528322 449528322 189527092 337123266 337123266 396452196 396452196 675223796 675223796 721289809 721289809 712509333 125923693 647246481 647246481 265734816 780290129 780290129 655511760 755023917 755023917 138953897 140413448 612948526 612948526 500204143 994689274 994689274 876702865 654721353 168759537 167485220 70351176 351896938 351896938 288162312 282267296 282267296 325460912 355534354 355534354 145246992 487800708 487800708 272302376 150938564 172308892 172308892 963586376 971507175 1038402815 1038402815 428349691 961339046 961339046 667815153 667815153 477180930 477180930 191913440 191913440 242761556 255207308 255207308 224563200 224563200 101760776 105847568 105847568 115543840 115543840 77522776 92275488 92275488 648887297 648887297 608181777 608181777 697902640 697902640 320222611 758253602 758253602 645024163 690399933 810740553 810740553 675808389 638820284 73460292 595582568 595582568 794440413 794440413 635216897 635216897 667052121 823014409 858572674 875819787 875819787 824555784 824555784 639783072 610687274 862716987 862716987 538528914 21869088 967408484 967408484 431367525 331891414 945823876 945823876 941046295 941046295 812626313 447863658 140348344 140348344 124015504 553675779 553675779 322218632 390383802 390383802 389302194 336647322 320246664 887050904 887050904 306291920 811630592 811630592 864967808 864967808 284429250 361802912 361802912 869098346 908304493 908304493 490429465 296160288 755042340 755042340 604317705 201392152 201392152 114451524 227189192 227189192 244958860 244958860 236529168 236529168 338855336 338855336 335581184 352376586 352376586 213475601 213475601 204595980 940098072 940098072 613206290 145933124 617385402 940241893 940241893 711622555 234146796 205216186 535107863 535107863 304422980 591458624 591458624 237056316 238750992 238750992 202848780 336684588 336684588 336547376 387547656 387547656 336500272 336500272 340742180 535032318 1071903230 1071903230 903976107 456093576 532227966 960031278 961640595 961640595 789594666 789594666 1008140498 1008140498 54408064 633474584 633474584 356402137 339513410 808846930 808846930 303104530 375919408 375919408 358299306 320484976 101398096 39035920 21364768 52949120 302913392 302913392 64038656 320539264 320539264 320720240 354550074 354550074 365505714 994471283 994471283 117714052 659317925 659317925 189869648 288527746 322573440 762980919 762980919 975050768 975050768 439225407 879173888 960961339 960961339 571488567 324010674 324010674 340288128 340288128 319689754 207751378 199884944 644385176 644385176 122473885 5834496 15251312 330979458 330979458 89021184 446481506 446481506 316680782 418685787 985783107 985783107 981821460 981821460 878249866 987795300 987795300 948049047 946546965 994841221 994841221 958449684 958449684 459302516 459302516 171841744 198894128 198894128 66588624 66588624 64489200 65613570 276022594 276022594 40315360 328282352 328282352 27528082 33554432 34149008 34149008 67263120 106220184 106220184 795438976 795438976 356592392 71115690 156705408 156705408 403843140 403843140 334956060 334956060 266462148 266462148 163643584 163643584 55499952 55499952 292848368 292848368 32188320 468738784 468738784 427160838 27242304 306623024 306623024 275293312 275293312 109476962 203874538 250535388 373616144 373616144 344236144 75835464 394610800 394610800 340870296 350799306 350799306 85078312 297149864 300683872 300683872 29179904 29179904 28427136 90063552 257480668 265344636 265344636 267553612 267553612 81150340 14059716 137119298 409080198 545919490 953848979 953848979 506134820 386610234 938161930 938161930 702859749 702859749 656150528 656150528 622101072 413667310 413667310 358138248 358138248 114592294 232265596 232265596 94897512 267462292 267462292 43243200 308434016 308434016 140084818 138947798 131541064 131541064 445194752 517624926 517624926 419463190 405052154 468620500 468620500 96208848 111905200 111905200 73926024 4338560 14744640 14744640 138512272 176341184 176341184 136054272 810550464 810550464 299991076 976429392 976429392 943393363 943393363 923834884 654688304 654688304 870671344 870671344 545161161 346898241 346898241 1018730253 1018730253 900991851 900991851 271408936 392104495 713761877 713761877 1050660340 1050660340 762778985 762778985 702143748 476463000 476463000 421996294 520373326 520373326 54663124 166404112 422258086 461060006 461060006 313066342 433963028 458521718 458521718 521380496 521380496 202099200 202099200 493930500 493930500 338955018 262922 0 403718176 420528678 420528678 172754544 402916788 402916788 330123394 336687128 336687128 303223314 298146434 299757282 432394852 874048824 874048824 1020604654 1020604654 827591331 502322278 881213936 881213936 444778247 370974739 822565406 991479351 991479351 622193193 622193193 655320782 1014532976 1014532976 682082371 935705539 935705539 897290991 785921190 757187042 987358935 987358935 856529525 369404802 457558700 457558700 765678068 765678068 680530509 174142353 430845388 430845388 336209190 470686734 572466078 572466078 159457380 159457380 966799446 966799446 984777556 984777556 513795137 405986074 578949908 578949908 136574993 261443268 261443268 181060828 164235892 432853032 432853032 765716896 765716896 367649154 879252498 928977963 928977963 396041419 358613418 327419218 357444962 357444962 348916938 696654020 696654020 550189061 677709418 771042177 771042177 769199559 1024012877 1024012877 361968234 887521157 887521157 315268722 613245555 941597212 941597212 746869364 862458368 862458368 869538741 869538741 298091456 298091456 415373142 711395874 1031401575 1031401575 817686971 584614400 584614400 549617665 549617665 614673736 877162891 877162891 769798665 559088005 883077546 883077546 978371223 978371223 957924480 956320807 872465935 872465935 974420886 974420886 976562967 976562967 839057544 910373019 910373019 912276512 912276512 624959986 754730402 889241727 889241727 935855097 935855097 319604185 609911180 1041886733 1041886733 612540942 945772293 945772293 458229160 458229160 403252230 403252230 782117383 782117383 856809808 856809808 807452931 684405199 946225543 946225543 545572929 310908564 450365142 450365142 413409921 1022624727 1022624727 872448977 1038418188 1038418188 616916118 967928028 967928028 1012665999 1012665999 826804780 437338982 67395854 313344 313344 42074192 826155712 826155712 66296307 926994898 926994898 670265569 670265569 582796440 950552691 950552691 914103503 1042596671 1042596671 1017135751 1017135751 946902831 884209535 856431980 856431980 828506381 314028612 713919063 713919063 409885444 951342711 951342711 520739824 976750372 976750372 684565367 684565367 536783953 681698116 681698116 553912353 655032694 655032694 587728067 296405767 392282642 392282642 659106440 839360323 1062306074 1062306074 616762389 852281311 852281311 1063272851 1063272851 1047527453 502505639 1032934088 1032934088 930288650 930288650 436741417 691550464 691550464 618746637 957267630 1062490486 1062490486 520415774 375390618 867258904 867258904 883160384 883160384 578917376 873110602 873110602 587567712 587567712 94779768 111271688 247140452 247140452 157960672 157960672 155788452 167086564 167086564 112038488 373342362 373342362 958585354 958585354 893438892 890686253 647021145 892864299 892864299 448105585 650895734 650895734 315281507 987439432 987439432 310772433 332269938 332269938 329293024 318966752 890381648 890381648 833956707 833956707 830647922 121365570 68732424 68166152 108007552 108007552 108081280 842601096 912995739 912995739 340993811 953241808 953241808 798024352 695264897 802752310 802752310 592594710 970231501 970231501 863147304 863147304 701114217 596956276 361235206 239262043 313489067 313489067 656840304 656840304 853211905 853211905 730945386 984139095 984139095 733626390 463593846 463593846 463593846 273261840 287908920 287908920 402811958 402811958 408772896 408772896 324570758 548669193 548669193 77644104 40374744 579739481 911397610 911397610 898895506 344458250 324018866 369489532 1006936392 1006936392 950397255 840525969 654833721 654833721 596025416 488114906 353370666 509075578 509075578 301989906 369804504 369804504 320525874 209734528 209734528 497551680 497551680 229646948 229646948 160641636 83898956 88607498 88607498 851600083 951132999 951132999 523223573 523223573 300495962 324483506 519548042 584468014 878316784 878316784 605891194 860365056 860365056 803369912 581589332 822697057 822697057 713548918 443711749 584507648 584507648 714372488 951008583 951008583 854462405 582823761 543178306 517921836 517921836 998075540 998075540 623641867 552494984 224200358 441241286 492117994 492117994 335562208 616383617 914360347 914360347 353340458 353340458 565447521 671191816 671191816 161532558 517505548 517505548 941852371 993253859 993253859 41996480 582322576 582322576 580121169 543297473 543297473 120116752 838967576 838967576 266864124 926044336 926044336 147059348 50516152 114295512 240304288 240304288 165418856 193038960 193038960 327843286 530833278 530833278 412824182 554437665 554437665 199760249 922791313 922791313 959502123 959502123 427026439 122689688 174131776 726706560 726706560 805576788 805576788 327157074 499257428 861918370 861918370 836924082 1033327921 1033327921 331554802 894875051 894875051 277777432 348238466 348238466 658487064 810687273 810687273 880926795 880926795 880237666 381710216 381710216 366162666 316170864 42591312 42591312 348393634 619344504 872087521 872087521 323388811 873586698 894566451 894566451 319894185 851677409 851677409 325710961 766247398 902824683 902824683 1030497644 1030497644 727664173 611503929 41846657 371258026 399038396 602530806 602530806 526427771 457179318 457179318 54661126 27676832 131225600 131225600 57079144 132356986 347153226 347153226 352321554 352321554 370348296 370348296 351003216 351003216 301611802 381294426 381294426 360334840 631669760 631669760 768825720 768825720 786109069 786109069 634659599 100915855 340128994 411146458 411146458 407513092 449528322 449528322 311685756 311685756 374554640 374554640 319301074 319301074 278921538 392641928 392641928 33619968 33619968 33767680 35909904 35909904 2410752 8427520 625511876 755023917 755023917 897603566 902320780 902320780 744754860 744754860 633356517 657771028 832121161 832121161 466150939 366766372 122880 15993760 288162312 288162312 282267296 282267296 325460912 355534354 355534354 145246992 395614810 395614810 194776692 474778638 474778638 352321578 963586376 971507175 1038402815 1038402815 587914761 587914761 685437201 685437201 235611112 691657809 691657809 577119492 595855473 760941968 760941968 248454708 224990600 80688576 101760776 101760776 79391240 115543840 115543840 77522776 92275488 92275488 72354912 51853872 574235328 585840081 697902640 697902640 398066084 916683496 916683496 811548291 811548291 1030626054 1030626054 818153667 921624027 937890399 937890399 375175397 253829436 200383492 635216897 635216897 667052121 823014409 823014409 875819787 875819787 824555784 824555784 356679682 356679682 71965952 604177833 604177833 691147557 967408484 967408484 651850443 651850443 575158071 304680862 941046295 941046295 812626313 447863658 437028766 140348344 124015504 553675779 553675779 322218632 390383802 390383802 389302194 336647322 320246664 887050904 887050904 651248408 651248408 606778204 864967808 864967808 287648563 806432046 990479980 990479980 908304493 908304493 134847035 296160288 680274177 680274177 549530625 777416861 777416861 215389769 211875452 90399192 711069206 804580284 804580284 880185899 1068731508 1068731508 335581184 352376586 352376586 69900090 61518082 303128906 940098072 940098072 882860360 885921378 885921378 835195301 711622555 847923952 847923952 746392457 535107863 586179616 635511273 730451225 730451225 638941609 638941609 254680380 688260377 688260377 134602940 134602940 863059617 863059617 1056813222 1056813222 836445641 902374635 1071903230 1071903230 903976107 456093576 532227966 960031278 960031278 853876513 413338996 413338996 178208340 656722233 892403969 892403969 633474584 356402137 317457616 612068275 612068275 653661579 653661579 375395488 38814784 38814784 577315153 577315153 27035168 598305297 598305297 310690608 288673330 49317026 383138808 383138808 354550074 354550074 380889808 420176372 420176372 268083312 330321992 330321992 189869648 288527746 295815920 295815920 489109890 960738856 960738856 843851427 879173888 960961339 960961339 571488567 541720578 541720578 541200513 760459911 760459911 910738587 910738587 584718033 584718033 295248709 440521828 440521828 330979458 330979458 228086464 246982710 311731164 311731164 306184338 306184338 812392066 812392066 631609851 844867774 987795300 987795300 948049047 940989335 994841221 994841221 863115649 543954320 5808400 5808400 23399168 54600160 66135024 66135024 180676980 180676980 175246180 175246180 48443856 40315360 328282352 579018949 579018949 767568204 767568204 1028659875 1055185789 1055185789 213381468 403456516 639095822 639095822 604307480 156705408 156705408 4266628 1411712 67158032 100663320 239581320 239581320 278371550 278371550 415291524 415291524 403682388 292848368 24391138 468738784 468738784 430227712 263508567 695061043 695061043 290717209 640440867 640440867 203874538 250535388 323462510 679550359 679550359 415637642 541395987 541395987 105212000 130072824 336629888 340972170 340972170 64605632 93003944 100263912 100263912 78668800 36361644 257480668 265344636 265344636 267553612 267553612 117576840 67001200 67001200 40371600 85984384 85984384 506134820 506134820 386610234 567548129 567548129 109185536 226413964 567313176 622101072 622101072 413667310 413667310 358138248 358138248 147856600 247105152 247105152 170982072 267462292 267462292 253306076 308434016 308434016 72066060 33563264 34632352 54784176 54784176 21221520 72523944 108004224 122757816 217355568 217355568 84146320 111905200 111905200 89425928 89425928 86579200 202036236 345072484 345072484 136054272 136054272 810550464 810550464 1012205165 1012205165 976429392 752695247 923834884 923834884 1027054281 1027054281 870671344 870671344 1017327951 1017327951 214643916 316426360 891028800 900991851 900991851 30181728 392104495 713761877 713761877 1050660340 1050660340 762778985 762778985 702143748 353351038 252132650 421996294 520373326 520373326 134426688 134426688 422258086 461060006 461060006 313066342 433963028 458521718 458521718 424183872 393298804 393298804 220465452 526438510 526438510 264640764 262937024 200543220 410798756 450678486 450678486 130337290 130337290 279003568 487309430 487309430 336687128 316138066 316138066 299757282 589059153 821222576 933417339 933417339 814355523 814355523 517722447 881213936 934335530 934335530 488036443 574184718 574184718 318919966 506105906 506105906 655320782 655320782 606410016 682082371 912976773 912976773 431130057 945960140 945960140 987358935 987358935 412705413 369404802 457558700 457558700 765678068 765678068 725235476 1015669839 1015669839 981676119 981676119 808260977 814490263 814490263 184887348 195596115 1044947635 1044947635 1021546703 1021546703 513795137 405986074 578949908 740034328 740034328 707532436 236657284 137109444 168204958 168204958 80530632 830491808 1025623179 1030300103 1030300103 476951901 295856242 358613418 358613418 281018728 410526592 410526592 138805344 696654020 696654020 550189061 541725825 337648713 283380162 206310734 339389312 490503078 963329058 963329058 461688601 356450946 400776328 404376628 563205187 563205187 862458368 862458368 869538741 869538741 298091456 298091456 579933495 711395874 1031401575 1031401575 817686971 584614400 584614400 549617665 549617665 614673736 877162891 877162891 769798665 559088005 883077546 883077546 407895174 407895174 121244622 953657060 953657060 848247891 974420886 974420886 976562967 976562967 839057544 910373019 910373019 612590203 362926265 384973792 153906400 700657893 700657893 474047436 825575534 825575534 280498452 280498452 612540942 612540942 945772293 945772293 383337899 383337899 38832144 38612112 17335872 26264160 856809808 856809808 807452931 573131897 573131897 113732249 108376240 614994952 614994952 614207049 342098048 114098824 743626906 753191373 753191373 386564400 122701864 831173726 831173726 240682853 170468628 437338982 947618273 947618273 728925204 728925204 961049379 961049379 953626595 908435992 908435992 604067218 670265569 670265569 582796440 950552691 950552691 714622720 1042596671 1042596671 1017135751 1017135751 1062856371 1062856371 856431980 856431980 828506381 455681334 713919063 713919063 409885444 951342711 951342711 520739824 976750372 976750372 684565367 684565367 631292008 631292008 563347968 553912353 537271329 587728067 587728067 487085128 445285682 271107330 282151236 436593290 1062306074 1062306074 135715332 295442420 309379986 309379986 691425996 691425996 502505639 1032934088 1032934088 930288650 930288650 436741417 987652313 987652313 434965895 434965895 163849382 520415774 520415774 493513581 828629643 828629643 883160384 883160384 874517899 874517899 873110602 533395118 571483968 775478762 775478762 247140452 247140452 184037104 195683700 195683700 200678388 200678388 31564154 373342362 373342362 958585354 958585354 643079240 647021145 647021145 850921299 850921299 428917350 600241136 600241136 540355329 330633285 289891081 556027808 556027808 332269938 924914800 924914800 890381648 890381648 624167721 810659432 810659432 856086579 856086579 846092074 396300584 863768499 863768499 676151903 676151903 704676179 704676179 953241808 953241808 624385868 624385868 734581576 760613685 760613685 381206584 381206584 808583694 808583694 687870024 687870024 573494393 848354380 848354380 42468432 656840304 656840304 652612800 652612800 313271808 402775888 403968772 403968772 320411912 252916284 268443904 268443904 287908920 287908920 402811958 402811958 302629394 338264322 338264322 77905992 77905992 77644104 36594192 345113096 860624994 898895506 898895506 586803089 324018866 406456672 551063216 834979885 840525969 840525969 654833721 654833721 990645303 998862499 998862499 708855414 509075578 301989906 698675703 907361032 907361032 897743772 897743772 497551680 497551680 414661188 414661188 414262086 225289322 314443938 314443938 851600083 951132999 951132999 854065744 854065744 757347906 757347906 519548042 519548042 878316784 878316784 605891194 860365056 860365056 803369912 713079104 252885085 412679206 412679206 443711749 443711749 655532048 655532048 931258491 931258491 298119245 978344515 978344515 464919414 464919414 425085370 361023594 260924438 0 76598784 76598784 76287048 76287048 276317313 616383617 914360347 914360347 353340458 353340458 1037042415 1037042415 1023688821 1019685976 1019685976 571284551 959160230 959160230 537580545 710999221 718377345 718377345 602431349 575891552 60433776 120116752 838967576 838967576 560457235 926044336 926044336 706924821 706924821 173248745 896126216 994392188 994392188 136659056 80796160 80796160 12863616 12863616 43418624 43418624 35528208 42205376 42205376 34084880 4325520 37884048 37884048 33558656 174131776 726706560 726706560 403726642 403726642 327157074 499257428 532092012 532092012 381110298 1033327921 1033327921 331554802 894875051 894875051 277777432 348238466 348238466 88080552 810687273 810687273 880926795 880926795 880237666 349245472 366162666 366162666 55212122 35299472 4532352 348393634 619344504 872087521 872087521 323388811 873586698 894566451 894566451 837887187 837887187 818545914 818545914 766247398 902824683 902824683 627122601 727664173 727664173 611503929 310169360 587207040 587207040 602530806 602530806 740447137 740447137 406509318 390091326 591316019 591316019 132665088 101390528 132356986 347153226 347153226 352321554 352321554 370348296 370348296 281817192 86233050 74958920 381294426 381294426 360334840 864322900 864322900 768825720 768825720 786109069 786109069 634659599 100915855 340128994 374710408 374710408 386813442 386813442 299179058 335615689 819672771 819672771 668607883 860497953 860497953 651965642 195242884 162399044 162399044 383632466 617666249 617666249 327173662 752520433 752520433 616203000 612294537 947127179 947127179 902320780 902320780 744754860 744754860 633356517 657771028 832121161 832121161 466150939 366766372 76672584 76672584 268961792 269224962 269297666 269297666 2361600 2884608 141695092 144987920 395614810 395614810 239300756 474778638 474778638 352321578 652935206 652935206 294199880 537864592 587914761 587914761 685437201 685437201 671090696 691657809 691657809 577119492 595855473 760941968 760941968 248454708 224990600 73741696 71038728 71038728 79391240 79391240 69082632 73977216 73977216 46597249 650574033 650574033 616701529 118741040 552603721 552603721 398066084 916683496 916683496 811548291 811548291 1030626054 1030626054 818153667 921624027 937890399 937890399 574117393 602188880 602188880 104310368 67373064 82893760 82893760 352334848 353055786 353055786 336502784 336502784 321098802 337240960 337240960 604177833 604177833 691147557 917090424 917090424 651850443 651850443 575158071 469963672 404523908 404523908 274730128 437028766 437028766 374416026 374416026 6319104 6319104 38011136 40110480 40110480 38011136 35916176 69584216 576857280 576857280 651248408 651248408 606778204 822748228 964898919 964898919 806432046 990479980 990479980 933024314 1058327103 1058327103 832327800 680274177 680274177 549530625 777416861 777416861 215389769 211875452 293628240 711069206 804580284 804580284 880185899 1068731508 1068731508 41684880 351062416 351062416 69900090 61518082 303128906 303128906 882860360 882860360 885921378 885921378 835195301 700633317 847923952 847923952 746392457 789061972 789061972 763528848 763528848 730451225 638941609 638941609 254680380 688260377 688260377 380107098 760512544 863059617 863059617 1056813222 1056813222 836445641 902374635 902374635 730161770 730161770 595971357 939819295 939819295 893399862 893399862 1060004122 1060004122 808092296 808092296 892403969 892403969 336906626 317457616 317457616 612068275 612068275 653661579 653661579 375395488 369378592 328502960 577315153 577315153 27035168 598305297 598305297 310690608 288673330 49317026 383138808 383138808 312525138 312525138 380889808 380889808 268083312 268083312 175037844 158984100 158984100 158049360 295815920 369246231 738381837 960738856 960738856 924063941 924063941 431911064 389093404 409146526 541720578 541720578 541200513 760459911 760459911 910738587 910738587 752878698 940257285 940257285 927670436 440521828 181404296 228086464 228086464 220436628 306257920 306257920 306184338 306184338 495988188 495988188 288474174 211619328 965858416 965858416 467529462 678164694 678164694 25051525 39813904 39813904 39862944 39862944 27339680 54600160 66135024 157352228 728066053 728066053 175246180 271817638 332847714 957438626 957438626 734208631 1008019983 1008019983 767568204 1028659875 1055185789 1055185789 213381468 403456516 639095822 639095822 604307480 421796624 421796624 507685518 507685518 86578472 100663320 239581320 239581320 278371550 281173017 558634211 884366471 1014227926 1014227926 986996467 986996467 841970804 962728359 962728359 695061043 695061043 290717209 640440867 866019056 866019056 838957625 838957625 679550359 679550359 415637642 541395987 541395987 347941346 347941346 384056256 384056256 340972170 42468240 93003944 100263912 100263912 93374080 89129640 90194240 90194240 211438912 211438912 476104626 476104626 816468419 816468419 950011349 950011349 813208900 266619365 327310414 327310414 567548129 567548129 454709482 608984072 608984072 595860568 833819484 833819484 673475914 55149686 518658420 518658420 314642468 247105152 276628506 276628506 136384432 253306076 253306076 277062538 277062538 352921286 460914860 460914860 424746046 251076026 302933278 302933278 143256904 217355568 217355568 109626456 312484480 343772576 343772576 281346138 348852576 348852576 544084619 544084619 809829450 809829450 879243458 879243458 1012205165 1012205165 752695247 752695247 457063226 609261776 1027054281 1027054281 63193843 167858192 1017327951 1017327951 893316490 893316490 453249978 447020212 447020212 30181728 338975938 338975938 910593810 910593810 346208448 346208448 510545282 510545282 353351038 207290178 77063272 77063272 76506128 281083936 281083936 162141540 168953712 168953712 19535136 319160544 416717910 416717910 290642484 393298804 393298804 306002800 526438510 526438510 317867848 317867848 200543220 410798756 450678486 450678486 405848454 405848454 279003568 487309430 487309430 303163420 316138066 316138066 234701524 589059153 589059153 933417339 933417339 814355523 814355523 831692425 831692425 934335530 934335530 739664128 741866253 741866253 807168288 926395319 926395319 845091280 845091280 610406793 587276337 799673177 799673177 356195200 945960140 945960140 844633092 805306371 671225346 135292704 142157700 453596978 453596978 725235476 725235476 1015669839 1015669839 981676119 981676119 808260977 814490263 814490263 184887348 711441201 1044947635 1044947635 1021546703 1021546703 471591953 570874768 713096337 740034328 740034328 707532436 574113681 183550932 183550932 550147265 580030517 830491808 1031349771 1031349771 1030300103 555535652 561723656 561723656 94966920 94966920 410526592 410526592 138221892 544681732 680392489 680392489 969288267 969288267 297545925 68157960 966495778 966495778 963329058 963329058 461688601 356450946 400776328 400776328 177522720 177522720 451025222 451025222 275179970 147054756 331679920 432277734 579933495 580864160 708102933 708102933 496840302 496840302 351396810 351396810 680872528 680872528 872501002 872501002 319761376 325819794 325819794 402291502 407895174 407895174 540017409 953657060 953657060 848247891 840676317 242586113 166908900 373493828 540027272 556256242 612590203 612590203 334631922 384973792 153906400 153906400 474047436 474047436 825575534 853181913 853181913 316694547 608305676 608305676 475215533 491502625 877450955 877450955 1048971983 1054339679 1054339679 806675057 806675057 461373558 508264838 508264838 446698024 385884676 373777026 614994952 614994952 1050942220 1050942220 848433747 743626906 743626906 386564400 386564400 33763344 16846896 35861504 35861504 18166448 41041408 947618273 947618273 728925204 728925204 961049379 961049379 953626595 908435992 908435992 604067218 549069833 93058904 101729490 202188072 202188072 319324296 390644922 997720498 997720498 977999785 1062856371 1062856371 776871434 776871434 455681334 455681334 377504938 324934200 867044630 867044630 276824130 314576970 669647776 811075203 811075203 289067177 631292008 631292008 11194592 277224640 277224640 268567746 487085128 487085128 515707248 515707248 370606345 439741206 860195606 860195606 854590354 331614450 309379986 870603602 870603602 691425996 119560876 858879217 858879217 737873988 737873988 671322240 987652313 987652313 434965895 434965895 163849382 119801084 493513581 493513581 828629643 828629643 622556417 550638273 874517899 874517899 546833985 248583174 571483968 775478762 775478762 40827206 42781776 184037104 195683700 195683700 200678388 200678388 30687904 30687904 4983936 2402560 144708932 144708932 559470112 559470112 288173346 404603684 407945862 830366854 830366854 828895073 330633285 289891081 556027808 556027808 285360128 924914800 924914800 558386266 624167721 624167721 290929314 290929314 856086579 856086579 846092074 396300584 863768499 863768499 676151903 676151903 704676179 808849664 808849664 812797350 847024796 847024796 734581576 760613685 1006142578 1006142578 864076629 864076629 808583694 687870024 687870024 573494393 848354380 942706950 942706950 538104321 561152553 561152553 570530884 572836113 713080083 865834006 865834006 320411912 252916284 252916284 203436848 194700328 390113204 390113204 422366502 422366502 338264322 338264322 36815362 3427840 36594192 36594192 35116048 21710848 874537210 874537210 586803089 121119697 406456672 406456672 417259016 417259016 343704864 400095482 454943233 990645303 998862499 998862499 949754634 422712423 139729036 698675703 907361032 907361032 897743772 897743772 157888172 288759302 414661188 414661188 414262086 225289322 522923372 522923372 481357828 481357828 729301570 854065744 854065744 966088397 966088397 869641145 336095376 354522902 354522902 943429904 943429904 255232072 713079104 744116241 762877820 762877820 601888700 88295424 1023668368 1023668368 655532048 931258491 931258491 298119245 978344515 978344515 464919414 599350790 982305879 982305879 612802603 571449864 203192908 211401732 211401732 152291168 95686752 3019008 3019008 3946752 3946752 278998189 1037042415 1037042415 1023688821 1019685976 1019685976 571284551 959160230 959160230 537580545 710999221 718377345 718377345 720766485 720766485 503320717 503320717 349320144 560457235 860082238 860082238 685878148 869319411 912311131 912311131 896126216 994392188 994392188 256148864 255713942 520960030 520960030 520271926 520271926 582427233 582427233 245309521 902022889 906003131 946870315 947838855 947838855 653889001 702899120 725723440 731171429 731171429 555040852 126363216 362283760 402130938 402130938 393810314 348267402 296472864 277654786 276742786 269998082 35899088 108055194 306575874 306575874 275124354 66251568 6556032 327229944 327229944 352558376 352558376 357435002 357435002 9486912 18671168 336941032 336941032 544525169 544525169 926221674 926221674 845677971 845677971 837887187 837887187 818545914 818545914 840380210 840380210 745254326 923195451 923195451 333073658 825133184 825133184 587207040 587207040 295406464 259019662 740447137 740447137 663264406 524459496 591316019 591316019 539136224 539573296 539573296 193607536 57752032 133563384 133563384 75563472 281817192 281817192 86233050 361902953 918222715 918222715 838544497 864322900 864322900 551862567 791668513 1013059983 1013059983 746830372 746830372 780676200 780676200 329068146 329068146 307211814 122005584 478151788 819672771 819672771 668607883 860497953 978979347 978979347 367497690 367497690 264159206 862540408 862540408 656056993 639950640 752520433 752520433 616203000 612294537 947127179 947127179 881492942 646455445 646455445 505937920 1012172870 1012172870 484442339 227804314 541664769 541664769 672664224 672664224 553976320 135333376 277100576 277100576 125838496 125838496 141695092 141695092 86950224 67182600 239300756 239300756 208736512 594248320 601370692 601370692 294199880 294199880 226617196 352993344 352993344 671090696 845500224 845500224 21436800 21436800 157624740 157624740 151062912 78364936 78364936 67736320 71038728 122959552 122959552 11550232 20587872 88179592 88179592 55092096 650574033 650574033 616701529 76731145 618861032 618861032 555823753 553725961 537993729 897900605 897900605 824733544 742791309 742791309 684673249 605942889 801312168 801312168 602188880 602188880 104310368 133042584 331911968 331911968 352334848 369442560 369442560 279183664 321098802 321098802 360934074 360934074 290533890 290533890 185782836 289964290 409682434 409682434 335579544 469963672 469963672 610798976 610798976 604243977 21115058 658256051 658256051 374416026 220952967 561723297 682587005 682587005 644348313 860470056 860470056 557108001 599748577 603666417 733868564 733868564 578137664 822748228 964898919 964898919 713618979 648058663 648058663 933024314 1058327103 1058327103 832327800 194637921 151784484 702935173 702935173 675805317 745680949 745680949 696129832 388744192 839995979 839995979 523347260 523347260 389047200 389047200 351062416 447830814 447830814 385925178 385925178 238179110 167912740 335740928 335740928 2973952 2973952 2664448 577849728 577849728 726886452 789061972 789061972 763528848 763528848 134094840 134094840 197076316 197076316 343830176 380107098 380107098 998488826 998488826 360923197 128619384 639865176 639865176 362757738 362757738 730161770 875645968 910028571 939819295 939819295 975700549 975700549 1060004122 1060004122 921651086 913348840 494996624 286125090 355776752 355776752 338041098 288352384 329329914 378572304 379651328 379651328 369378592 328502960 361799674 361799674 345657626 306203800 306203800 332375528 332375528 47972384 337456650 337456650 297861376 287515874 432585060 432585060 297863990 177867366 465189504 465189504 174385122 45089616 280730820 369246231 738381837 876648056 876648056 1009072871 1009072871 514898299 1057038399 1057038399 820109505 820109505 218240392 218240392 497030600 497030600 616695155 752878698 940257285 940257285 927670436 699072836 577365858 583062529 583062529 665625793 665625793 650135128 650135128 752613069 752613069 288474174 615784709 615784709 965858416 965858416 467529462 678164694 678164694 25051525 39813904 39813904 44671648 44671648 27339680 27339680 38869313 595990641 728066053 728066053 146884628 271817638 332847714 957438626 957438626 734208631 1008019983 1008019983 755116396 755116396 740073144 740073144 82513120 493878702 493878702 379050906 490768614 490768614 421796624 507685518 507685518 196509384 277733530 277733530 306350220 306350220 281173017 558634211 884366471 1014227926 1014227926 986996467 986996467 841970804 962728359 962728359 537714086 844844552 844844552 223137921 866019056 866019056 838957625 838957625 321236691 134515076 134515076 827714067 827714067 347941346 347941346 388383458 388383458 125167800 538644878 608737162 608737162 224126396 264476268 264476268 144708216 90194240 211438912 211438912 476104626 476104626 816468419 816468419 950011349 950011349 834439876 364136721 169388824 169388824 365073974 576389069 576389069 749803704 749803704 595860568 868028240 868028240 1073005458 1073005458 896404906 518658420 1069087812 1069087812 821003474 276628506 136384432 220473100 236640004 277062538 822284416 822284416 730346171 730346171 642136692 251076026 302933278 302933278 167907348 79541790 79541790 109626456 312484480 343772576 343772576 281346138 348852576 348852576 544084619 544084619 809829450 809829450 879243458 879243458 697306693 743191621 993621220 993621220 457063226 910524928 911600283 911600283 34203851 97234261 1005911175 1005911175 893316490 893316490 453249978 420356262 420356262 279654818 404823044 404823044 910593810 910593810 799070445 1038477807 1038477807 627681482 393004960 503268960 515126364 515126364 513289990 444600342 444600342 328426066 328426066 404085286 404085286 148221156 467578898 467578898 290642484 258224912 306002800 306002800 431270528 431270528 406186758 439409232 439409232 515249086 515249086 425857446 405848454 405848454 146801792 146801792 118120480 258414392 517214748 517214748 332585074 370813032 370813032 68156424 154870124 154870124 233378892 831692425 831692425 605450507 100752980 739664128 741866253 741866253 807168288 926395319 926395319 845091280 845091280 638228727 824565004 824565004 799673177 604823715 902992578 902992578 844633092 819484243 819484243 407475888 190543130 149057604 149057604 100847640 503793666 503793666 268744750 268744750 588318720 588318720 6564353 13904376 106898621 711441201 711441201 1007861761 1007861761 871807731 246991483 570874768 713096337 725412209 725412209 577291281 574113681 183550932 183550932 550147265 580030517 971052707 1031349771 1031349771 691691975 555535652 947628940 947628940 490241054 454897206 795020446 795020446 459279535 695732580 695732580 814290065 969288267 969288267 321193991 290622498 966495778 966495778 888728033 888728033 729949629 499809456 499809456 143205444 177522720 177522720 451025222 451025222 320064434 269484546 331679920 671613508 671613508 580864160 580864160 199489776 199489776 140664964 140664964 8951828 680872528 680872528 137962768 150545296 150545296 189835924 189835924 199870288 199870288 194267204 540017409 542383509 705303573 713982356 713982356 877805658 927240843 927240843 832647297 540027272 322313010 332610098 334631922 334631922 368648098 368648098 270645320 270655746 580915784 853181913 853181913 341500942 608305676 608305676 532089593 822347811 884383371 884383371 1048971983 1054339679 1054339679 806675057 806675057 771875180 548528961 453318712 453318712 385884676 839376538 839376538 227062797 1050942220 1050942220 940118404 940118404 643875459 209434321 202913888 90491304 589175772 589175772 242222789 289784128 432840070 432840070 445180064 857906434 857906434 955309125 955309125 445912403 661835448 661835448 549069833 549069833 93058904 101729490 202188072 679941610 679941610 927979523 927979523 910299790 580524557 705434761 705434761 776871434 776871434 436737110 436737110 377504938 324934200 867044630 867044630 276824130 314576970 669647776 811075203 811075203 792105732 153551040 623118120 628281897 628281897 550050377 699933092 699933092 404227168 515707248 515707248 370606345 439741206 860195606 860195606 854590354 331614450 102011098 870603602 870603602 691198572 52478256 858879217 870872774 870872774 814461367 814461367 423691344 423691344 65809632 162347376 162347376 119801084 119801084 272768272 338041098 338041098 304620352 312026706 403317468 403317468 383465178 1038285806 1038285806 337984122 484239896 484239896 251658300 380634300 385353690 385353690 223872498 194523460 436761320 436761320 345686858 273313898 561475363 561475363 559470112 559470112 285313539 874621898 874621898 830366854 830366854 828895073 540087050 880767690 880767690 881309770 881309770 566610115 538030114 478292134 294040002 271333280 290929314 290929314 860791324 860791324 339010602 339010602 623748881 655436563 655436563 578563868 578563868 808849664 808849664 812797350 847024796 847024796 401616141 491782830 1006142578 1006142578 864076629 960501604 960501604 428016133 847786009 847786009 562713868 942706950 942706950 538104321 561152553 561152553 884525135 884525135 713080083 865834006 952015691 952015691 170004756 736253811 736253811 514359874 514359874 390113204 422366502 422366502 305680176 305680176 633939177 633939177 615369833 575053073 554928969 598853632 666974905 666974905 545993569 130146593 78129008 29532048 34070736 343704864 343704864 400095482 400095482 488636718 488636718 950538370 950538370 694818364 694818364 186399909 564737138 564737138 320376376 320376376 257801536 134739972 198964980 198964980 178893340 178893340 522923372 522923372 883987729 883987729 944918728 944918728 614598589 966088397 966088397 869641145 559807132 876694732 876694732 943429904 943429904 767580301 801235197 801235197 762877820 762877820 601888700 258131452 1023668368 1066307205 1066307205 688490214 370223276 173224596 706879567 762870189 962908651 962908651 982305879 982305879 612802603 571449864 455266614 455266614 306507688 481408568 481408568 942117669 942117669 981401039 981401039 557584161 447834410 447834410 321389874 772163824 772163824 717344865 450205722 370299588 317033728 317033728 56993456 686183617 720766485 720766485 503320717 503320717 349320144 470536896 860082238 860082238 685878148 869319411 912311131 912311131 861520435 386985643 316959624 256148864 255713942 520960030 520960030 520271926 520271926 582427233 582427233 245309521 902022889 906003131 946870315 947838855 947838855 653889001 702899120 725723440 731171429 731171429 555040852 386672722 575778421 575778421 402130938 805901635 920175922 920175922 913936905 1027862703 1027862703 747181535 730878744 591415088 581691329 543866880 66251568 6556032 327229944 342027522 352558376 352558376 357435002 357435002 9486912 18671168 336941032 810361200 810361200 544525169 926221674 926221674 845677971 845677971 386934249 368594394 839342464 839342464 840380210 840380210 745254326 989483292 989483292 833409492 833409492 825133184 149592295 711626752 711626752 570495237 538477626 663264406 663264406 524459496 462702518 593680212 593680212 539573296 539573296 453510198 463616458 463616458 342630656 342630656 107622656 3089408 53228128 852238379 918222715 918222715 838544497 816369369 816369369 536255662 791668513 1013059983 1013059983 746830372 746830372 780676200 780676200 504943124 504943124 339873730 339873730 478151788 478151788 279454996 564995228 827140523 978979347 978979347 367497690 367497690 264159206 862540408 862540408 656056993 639950640 225686716 225686716 219927588 219927588 173089428 680260677 680260677 646455445 646455445 505937920 1012172870 1012172870 1011614854 1011614854 1008208649 541664769 672664224 672664224 553976320 268990464 277100576 277100576 125838496 125838496 382403196 454538970 454538970 400449472 400449472 480441238 480441238 622375816 622375816 219371317 157373658 516609246 516609246 1057784021 1057784021 1042148895 1042148895 845500224 581808356 581808356 562833489 720342432 720342432 144799776 144799776 27754592 14041664 122959552 122959552 79995992 20587872 88179592 88179592 67225248 609345625 609345625 562595145 562595145 618861032 618861032 555823753 553725961 537993729 897900605 897900605 824733544 742791309 742791309 684673249 605942889 801312168 801312168 187530292 170386400 815452227 815452227 814928451 331911968 330091890 369442560 369442560 577764753 579394579 587326800 587326800 360934074 301992456 301992456 185782836 185782836 218788648 218788648 170023172 543169792 543169792 709660077 709660077 660209321 338026641 658256051 658256051 455023112 427726246 561723297 682587005 682587005 644348313 860470056 860470056 557108001 599748577 603666417 842344466 842344466 578137664 463717828 587882465 713618979 881403733 881403733 839386189 353370666 336017418 432128733 432128733 194637921 428853022 702935173 702935173 675805317 745680949 745680949 696129832 361386160 839995979 839995979 482882532 482882532 466106006 466106006 432087302 447830814 447830814 385925178 385925178 883462736 883644235 883644235 893691912 893691912 836949029 698926437 514738045 798569020 798569020 190947936 190947936 136339968 136339968 134094840 134094840 197076316 197076316 343830176 343830176 218289766 998488826 998488826 956362767 713211916 889200730 889200730 815076876 614148107 479371275 875645968 910028571 910028571 848298579 975700549 975700549 843677800 921651086 921651086 913348840 494996624 312289428 355776752 355776752 338041098 288352384 329329914 359137664 379651328 379651328 338432986 271073584 361799674 361799674 345657626 306203800 306203800 332375528 332375528 20501664 337456650 337456650 274911618 421826818 432585060 432585060 397795822 390625762 465189504 465189504 415061426 415061426 280730820 280831424 280831424 876648056 876648056 1009072871 1009072871 942163350 1057038399 1057038399 820109505 822859076 822859076 818423146 941621376 941621376 872595488 872595488 369233946 503459878 699072836 699072836 577365858 583062529 670810948 785909469 785909469 650135128 650135128 752613069 752613069 212959181 615784709 615784709 415524000 592449424 592449424 439804854 537085958 703345029 991131968 991131968 298069634 298069634 60033794 316736114 316736114 595990641 595990641 672150096 713240661 713240661 50979888 143763044 143763044 161047108 253771164 253771164 161614144 228466272 228466272 161880420 96521480 493878702 493878702 166168626 490768614 490768614 187044646 300093808 300093808 196509384 277733530 277733530 306350220 392527912 392527912 445459542 445459542 663234592 663234592 162338105 318840882 318840882 285278224 139248150 337418938 844844552 1007447640 1007447640 944890503 944890503 757250595 557709320 614718183 689433601 689433601 827714067 827714067 311545024 311545024 388383458 388383458 125167800 538644878 608737162 608737162 224126396 264476268 264476268 144708216 537350337 603824528 616408927 624222795 843731782 843731782 444073878 253772924 834439876 834439876 708315412 169388824 169388824 303645974 576389069 576389069 749803704 749803704 603979936 868028240 868028240 1073005458 1073005458 896404906 433846966 1069087812 1069087812 821003474 550115254 550115254 460985537 236640004 236640004 822284416 822284416 730346171 730346171 642136692 135168 134352912 167907348 167907348 168294420 168294420 34321412 2394112 3377920 3377920 2097408 93551204 769126980 769126980 488030381 420866598 152086530 78192392 78192392 6033024 69022240 993621220 993621220 745747341 910524928 911600283 911600283 34203851 331110752 1005911175 1005911175 681830054 681830054 272107266 600835571 600835571 279654818 404823044 803596797 982606961 982606961 799070445 1038477807 1038477807 627681482 393004960 503268960 515126364 515126364 513289990 444600342 444600342 328426066 328426066 404085286 404085286 153292928 467578898 467578898 433136358 466754078 511084550 511084550 445937194 445937194 406186758 448598394 532438672 532438672 515249086 425857446 311461138 289420648 289420648 375404096 375404096 102761728 517214748 517214748 473830732 649463393 906564184 906564184 1014738639 1014738639 959291063 959291063 958037521 958037521 876180006 876180006 722968867 842512929 842512929 808017424 334310898 334310898 549976257 638228727 956705178 956705178 375724071 604823715 902992578 902992578 945550983 974939152 974939152 407475888 777784989 777784989 691865093 691865093 453789441 738866996 925181730 925181730 523774741 523774741 137636124 257756100 749667904 749667904 682770432 682770432 134296389 134266884 137487108 137487108 34079508 135366148 135366148 38313552 38313552 137364228 137364228 136364544 268469248 971052707 971052707 691691975 959566896 959566896 947628940 947628940 490241054 454897206 795020446 795020446 484445265 695732580 695732580 814290065 814290065 709108277 601759473 601759473 538861677 748918088 748918088 967448232 967448232 499809456 499809456 222235576 208778272 353609934 353609934 320064434 320064434 269484546 91554592 671613508 690274567 690274567 564812146 988034833 988034833 460722663 403156198 480979534 607888704 614539593 614539593 604648768 75787520 75787520 68851520 68851520 11799360 9699584 3146496 3146496 3146496 634428166 634428166 877805658 927240843 927240843 832647297 349541289 74849160 74849160 47444688 47444688 543720272 584632017 584632017 270655746 639137152 639137152 549209481 341500942 219873540 219873540 532089593 822347811 884383371 884383371 936127384 936127384 509164467 480003084 771875180 771875180 548528961 1041654135 1041654135 1032686714 1032686714 974451829 974451829 504142582 504142582 940118404 1044985268 1044985268 523444629 523444629 156238500 589175772 815927619 842761027 842761027 573293890 432840070 445180064 857906434 857906434 955309125 955309125 445912403 278090592 277109538 562421385 562421385 304684218 317342666 317342666 908850266 908850266 927979523 927979523 726294163 337248461 672662708 793907201 793907201 425333809 436737110 436737110 264521956 264521956 601133864 714346257 714346257 151651608 253890876 253890876 792105732 792105732 945039927 945039927 628281897 628281897 550050377 699933092 699933092 415184200 404227168 108161500 72347276 78115080 154520328 202609298 331663602 466897130 473958982 473958982 269752528 269752528 221397044 457196470 870872774 870872774 814461367 814461367 423691344 423691344 193935255 162347376 162347376 69543236 155469878 1012697525 1012697525 626839337 304620352 312026706 732431206 901910763 901910763 1038285806 1038285806 685440197 550761153 577265665 582621009 582621009 686368197 999896977 999896977 680592630 436761320 436761320 345686858 273313898 561475363 561475363 542583296 542583296 285313539 874621898 874621898 627932425 627932425 546963587 540087050 880767690 880767690 911319706 911319706 874336478 874336478 478292134 294040002 150287240 894509082 1035146991 1035146991 860791324 219216912 219216912 623748881 655436563 655436563 41950224 13899859 2622720 684791233 684791233 542649029 705223860 705223860 340002954 340002954 87081768 87081768 960501604 960501604 428016133 847786009 847786009 562713868 785044957 785044957 478183958 584630336 584630336 884525135 884525135 678445461 678445461 952015691 952015691 107090328 736253811 736253811 514359874 514359874 282272338 282272338 102634752 284769354 284769354 633939177 633939177 615369833 575053073 554928969 598853632 666974905 666974905 594163297 594163297 555784144 29532048 128182712 370173448 370173448 149613508 149613508 831656547 831656547 950538370 950538370 1010304150 1010304150 587889683 587889683 816538178 816538178 320376376 257801536 134739972 198964980 198964980 178893340 415457602 415457602 241097844 883987729 883987729 944918728 944918728 155194400 539535684 837076740 837076740 559807132 876694732 876694732 713435240 713435240 767580301 801235197 801235197 77187148 246017868 258131452 258131452 357038096 1066307205 1066307205 688490214 370223276 173224596 700312518 762870189 962908651 962908651 741432156 493224210 493224210 341381388 455266614 455266614 511957462 511957462 481408568 942117669 942117669 981401039 981401039 557584161 180292967 796075498 796075498 772163824 772163824 717344865 239127077 26949216 554243682 554243682 295314465 47278384 24692640 61884104 910168592 910168592 373565824 390582364 390582364 243464378 319640917 833667939 968937639 968937639 545210241 598683984 598683984 151486852 151486852 70647592 76401568 76401568 89592548 154534420 154534420 80216220 47057600 222999680 222999680 59983184 59983184 57170960 64064400 113819764 248376524 248376524 386672722 472003908 575778421 575778421 352659498 805901635 920175922 920175922 913936905 1027862703 1027862703 747181535 730878744 603022448 581691329 543866880 106633472 107575448 107575448 342027522 342027522 350228672 705713229 706668677 706668677 545337512 990411028 990411028 810361200 288894208 571279218 571279218 304620355 948700914 948700914 320350400 839342464 839342464 413843529 299673185 513815343 989483292 989483292 833409492 833409492 434866370 434866370 711626752 711626752 676534553 676534553 542324233 237145936 253232700 253232700 593680212 593680212 173072309 43565312 453510198 463616458 463616458 342630656 378341522 378341522 390974794 462552308 854557496 875872611 875872611 635015264 816369369 816369369 219428076 36226320 45089616 545293385 562543624 625493169 625493169 609726584 504943124 504943124 339873730 339873730 279568850 853412827 853412827 564995228 827140523 827140523 518065533 324256350 114771962 201423076 836304544 836304544 520117473 831892069 831892069 523729966 739939199 739939199 402654338 402654338 209715200 610817752 653181971 653181971 241209295 16384 1037863970 1037863970 1008208649 410518153 0 349343016 349343016 268990464 268990464 46475472 100476992 100476992 382403196 454538970 454538970 400449472 400449472 480441238 480441238 622375816 622375816 23142816 157373658 516609246 516609246 1057784021 1057784021 1042148895 1042148895 858518827 581808356 581808356 562833489 720342432 720342432 144799776 144799776 27754592 11058432 63252480 79995992 79995992 45688656 9445504 67225248 92340816 609345625 609345625 562595145 562595145 612918657 641410745 641410745 621336457 621336457 633440308 741075973 741075973 694897772 481039438 481039438 371276970 369307674 340791704 170133780 236589648 815452227 815452227 814928451 104729856 87757345 553451648 553451648 577764753 579394579 587326800 587326800 279450722 301992456 301992456 55616424 134799364 337889033 337889033 170023172 745748789 745748789 709660077 935659464 935659464 877658763 591639338 455023112 877095201 877095201 408767782 403966470 21496992 325625856 573265552 844368531 844368531 539036562 40968723 842344466 842344466 583352337 708873874 916285131 916285131 881403733 881403733 839386189 845225938 845225938 629092615 62055813 93723240 428853022 428853022 175493876 173938232 173938232 484009044 484009044 111846120 111846120 225650614 482882532 482882532 466106006 466106006 432087302 293732534 448820180 465823602 465823602 883462736 883644235 883644235 893691912 893691912 836949029 698926437 776869676 798569020 798569020 749311392 613151817 595746849 540034053 287847343 549575397 549575397 419228898 541482865 541482865 470680956 191406750 956362767 956362767 713211916 889200730 889200730 815076876 614148107 512055364 512055364 143042654 114171096 203036172 514426448 514426448 538992130 538992130 447714608 447714608 442938962 384306014 349370954 309717906 397446618 397446618 321463602 647936 1163280 33603600 271073584 340001800 340001800 273419394 25332744 73977880 73977880 53010840 59769128 278549088 369313354 369313354 274911618 513672956 513672956 399084210 397795822 390625762 285347874 282444980 430143780 449537299 449537299 183545621 934043923 934043923 570761584 805372220 1059135807 1059135807 942163350 929480790 512353469 822859076 822859076 818423146 978052495 978052495 940602717 947000849 970642004 970642004 785454515 785454515 1046491696 1046491696 1018385803 785909469 785909469 433096372 433096372 285516448 865453514 865453514 645262233 947436258 947436258 592449424 592449424 439804854 537085958 703345029 991131968 991131968 298069634 298069634 273493122 316736114 316736114 268708560 182556964 672150096 713240661 713240661 570474513 570474513 459534774 790320292 1051865087 1051865087 1021782479 682891370 228466272 161880420 96521480 96521480 126619904 126619904 104404776 104404776 76620840 76620840 54126384 293865568 419431234 419431234 404799750 392527912 392527912 744304269 912010129 912010129 390476535 965945641 965945641 318840882 697368678 697368678 777032295 852628179 1007447640 1007447640 944890503 944890503 757250595 336556297 966643042 966643042 831222307 488121376 488121376 17368622 73728 73728 102237456 102237456 70255368 69731632 69731632 33554448 33554448 33554432 0 537350337 603824528 616408927 624222795 843731782 843731782 810659379 810659379 538709505 708315412 708315412 546883332 449963734 449963734 380587587 380587587 538363016 559581400 603979936 613981832 613981832 319570162 319570162 46260432 405859536 405859536 304769478 218239020 550115254 550115254 460985537 503471302 503471302 361614170 361614170 466311392 475802796 475802796 286335522 286335522 337007626 511429534 511429534 336611978 72969730 346186248 346323240 346323240 286074658 286074658 769126980 769126980 616628224 942080334 942080334 813904714 892547173 892547173 704330703 902369866 902369866 745747341 745747341 758244141 758244141 49461981 882273500 1029751959 1029751959 787651535 545042760 518656730 600835571 600835571 298196352 392793159 803596797 982606961 982606961 654163712 308837972 536250088 536250088 328228560 216219328 227347406 227347406 91700136 370283034 370283034 71763998 30881792 30881792 172047344 190149060 436407154 436407154 433136358 466754078 511084550 511084550 445937194 445937194 412923396 484250510 532438672 532438672 393250254 393250254 448465434 448465434 403643592 403643592 375404096 333447968 420612836 473830732 473830732 649463393 906564184 906564184 1014738639 1014738639 959291063 959291063 958037521 958037521 876180006 876180006 722968867 842512929 842512929 808017424 445594052 445594052 333047538 461277016 956705178 956705178 604006576 604006576 562350177 562647726 945550983 974939152 974939152 470338770 777784989 777784989 691865093 885305052 885305052 738866996 925181730 1044635074 1044635074 985322847 476119958 476119958 749667904 749667904 631977321 555251065 990954039 990954039 253291931 137487108 210200969 669699453 669699453 778872213 778872213 883500312 1042884423 1042884423 881975883 750510137 750510137 1047232884 1047232884 959566896 811260474 811260474 504695777 317079574 336953592 484445265 484445265 977273432 977273432 950654357 950654357 555614416 601759473 601759473 315210259 442685846 442685846 967448232 967448232 525608467 419611068 505540896 505540896 449843864 461636972 461636972 129875512 129875512 91554592 137363712 690274567 690274567 564812146 988034833 988034833 460722663 403156198 480979534 607888704 614539593 614539593 604648768 161424216 194833940 194833940 13678704 38516384 195897569 459231284 459231284 203736095 567464720 567464720 548947968 564370433 564370433 350273994 350273994 347789130 347789130 4194432 24063296 543720272 584632017 584632017 47970000 639137152 639137152 549209481 541624448 541590657 74061192 74061192 23069952 21496992 43176528 43176528 509164467 509164467 480003084 730024454 965001343 965001343 1041654135 1041654135 1032686714 1032686714 974451829 974451829 839809536 476759076 476759076 1044985268 1044985268 523444629 523444629 156238500 140990528 815927619 842761027 842761027 842605008 842605008 852791680 863028067 863028067 816133825 836624099 836624099 824124963 548827488 562421385 562421385 304684218 906055680 906055680 908850266 908850266 847421826 460372622 318582098 136714406 1050609836 1050609836 1011092019 425333809 189404393 230686832 791693449 791693449 646470356 714346257 714346257 190104916 253890876 253890876 103289892 734729416 945039927 945039927 323534994 323534994 311089730 282054302 415184200 415184200 483962904 483962904 173666948 136001028 154520328 374391176 374391176 466897130 473958982 473958982 512090976 512090976 221397044 457196470 691070845 717016433 905626551 905626551 834154564 291828305 193935255 151729493 410787896 410787896 315671250 1012697525 1012697525 626839337 279447712 279447712 732431206 901910763 901910763 796951027 685440197 685440197 550761153 577265665 582621009 582621009 686368197 999896977 999896977 680592630 38933136 34881664 1478656 9486912 67121664 68366856 68366856 68366856 4331520 545033409 545033409 548980545 548980545 307288722 282691081 385856155 385856155 911319706 911319706 1003455010 1003455010 403175430 403175430 677523257 894509082 1035146991 1035146991 932054722 913183794 913183794 479987226 479987226 513878072 513878072 408627142 135483284 684791233 967526150 967526150 705223860 705223860 477751175 340002954 87081768 87081768 231945164 653599124 747899469 747899469 440015196 440015196 210265754 742954512 742954512 584630336 584630336 135056388 135056388 46452352 598377017 598377017 228668045 228668045 213992180 267624956 267624956 203257372 798411041 798411041 711208776 711208776 705903480 259168968 21309600 571734528 571734528 570689553 545501192 663859825 663859825 646302288 594163297 555784144 62163616 128182712 370173448 370173448 370147866 370147866 831656547 831656547 840434000 840434000 1010304150 1010304150 1072510811 1072510811 816538178 941474850 941474850 106962204 271444834 271444834 219028524 158537514 415457602 415457602 241097844 197303958 74237912 241951814 241951814 151728688 151728688 740404896 740404896 655885853 260567064 260567064 773463120 773463120 554199805 165490404 615715008 615715008 611394441 246017868 197364736 323395204 323395204 215619276 521455688 521455688 43127376 337344064 344699474 344699474 269095938 74093836 440549510 440549510 153768884 138300284 138300284 511957462 511957462 376436940 324440754 617517611 1037998308 1037998308 834069229 210102348 796075498 912338819 912338819 853592296 567017699 454667797 331149794 554243682 554243682 295314465 555864385 555864385 546695521 910168592 946231439 946231439 703649474 893109892 893109892 741657357 833667939 968937639 968937639 545210241 598683984 672128785 672128785 151486852 254509196 254509196 700184396 700184396 555319633 609551192 762357788 762357788 222999680 222999680 28758656 32796512 32796512 27438352 349115602 349115602 265006208 490748092 490748092 506083642 506083642 352659498 311907654 939318980 939318980 845928897 1039397871 1039397871 1039397871 603022448 603022448 280524040 292211514 292211514 126656682 383460258 383460258 117441056 383140610 705713229 706668677 706668677 545337512 990411028 990411028 285334948 285334948 181378817 733329269 733329269 948700914 948700914 587866417 840114322 840114322 733554822 291059120 291059120 192428274 425931174 936018048 936018048 522372800 522372800 561611024 640608129 676534553 875187479 875187479 821202236 428086932 371380506 826987156 865208035 899873396 899873396 412599916 336281528 336281528 333824074 378341522 378341522 390974794 462552308 854557496 875872611 875872611 648041312 635015264 503966023 219428076 36226320 45089616 292761842 292761842 75637856 93388864 93388864 18425376 18425376 46814464 48284112 101789915 853412827 1058137101 1058137101 849921363 849921363 361324857 324256350 1013245261 1013245261 836304544 871407404 871407404 862895552 831892069 523729966 739939199 739939199 978761003 978761003 797302318 1039984937 1039984937 653181971 472981959 472981959 1037863970 1037863970 885834189 970738671 970738671 349343016 538003714 538003714 47460888 46475472 115015872 115015872 215660168 251303744 251303744 211867532 211867532 106042008 676555149 676555149 491995912 943210511 943210511 486801852 486801852 1039362817 1039362817 794298376 880882418 880882418 493923783 182712884 178651616 10685696 21612128 21612128 14331584 50322400 86771280 400320004 400320004 331360284 358197212 421030974 506055222 506055222 334842860 818252218 818252218 977273014 977273014 641410745 641410745 621336457 698935584 698935584 741075973 741075973 694897772 168506516 168506516 137564712 137564712 170133780 181405184 236589648 236589648 109576280 542935872 542935872 101340033 553451648 553451648 104673048 104673048 36471416 65093792 65093792 16900128 34105888 34105888 134799364 337889033 337889033 122948280 745748789 745748789 311439338 935659464 935659464 877658763 591639338 342412076 877095201 877095201 537079847 549904117 549904117 854402146 864547793 864547793 863732481 712849333 863364002 863364002 785672796 583352337 912297884 916285131 916285131 840786979 681946116 681946116 845225938 845225938 629092615 550021255 550021255 487949060 633290601 633290601 633290601 704068581 704068581 701571048 48063064 558174033 558174033 40758672 26975152 58867776 164285856 164285856 293732534 448820180 465823602 465823602 545319248 545319248 541561440 583742096 656418936 656418936 41697184 776869676 776869676 749311392 749311392 613151817 595746849 540034053 287847343 549575397 549575397 450108382 541482865 541482865 604091609 604091609 289477706 854734027 854734027 847795283 847795283 899029037 899029037 848206828 617716824 848535443 965463833 1006655587 1006655587 1044972630 1044972630 883586188 788529213 604640308 384306014 384306014 349370954 309717906 402653460 402653460 321463602 168157578 74449938 472649132 472649132 340001800 340001800 273419394 299392848 299392848 73977880 53010840 268968066 278549088 369313354 369313354 44701008 513672956 513672956 179256660 179256660 163713252 163713252 160304256 430143780 449537299 639392680 639392680 934043923 934043923 594019761 805372220 1059135807 1059135807 929480790 929480790 291991034 445069398 445069398 686552204 978052495 978052495 940602717 947000849 970642004 1040270048 1040270048 785454515 1046491696 1046491696 1018385803 872910164 961931807 973349542 973349542 990694511 990694511 865453514 645262233 947436258 947436258 135976452 37962372 194164324 689287584 689287584 944824816 944824816 275319040 275319040 273493122 38014624 21498368 822223601 822223601 578632881 698225765 698225765 689359412 977976741 977976741 790320292 1051865087 1052823775 1052823775 1051643231 1051643231 278568525 244058686 313136466 587934990 587934990 562901070 457762978 468980778 487637550 487637550 390432312 419431234 419431234 474508574 474508574 287637542 744304269 912010129 912010129 390476535 965945641 965945641 896547498 896547498 697368678 777032295 852628179 852628179 650384990 362063745 362063745 284163522 284163522 966643042 966643042 831222307 488121376 639181855 639181855 471368198 235430430 387719226 387719226 805927846 805927846 543203474 224998836 211855308 223726252 223726252 248759608 248759608 206457352 352500072 352500072 607597546 810659379 810659379 434110950 689472838 689472838 546883332 449963734 449963734 380587587 608487561 608487561 587505793 592728064 613981832 613981832 537709712 624970888 624970888 405859536 405859536 517672805 939301369 939301369 517430825 341836170 994210870 994210870 927540411 368099530 982632606 982632606 810528450 291610816 286335522 337007626 511429534 511429534 336611978 216639308 346186248 346323240 346323240 286074658 286074658 541814376 672009220 672009220 942080334 1023352267 1023352267 892547173 892547173 704330703 1022448838 1022448838 630785450 496339140 758244141 758244141 49461981 882273500 1029751959 1029751959 787651535 642422378 642422378 125305304 298196352 298196352 340316800 477911686 477911686 235033746 203737356 169874992 169874992 200941856 200941856 216219328 216219328 132589564 234697720 234697720 91333208 91333208 68395336 29677632 172047344 190149060 207770208 207770208 80752472 259187152 259187152 423626914 425722278 425722278 412923396 484250510 484250510 363264680 363264680 338167050 448465434 448465434 403643592 403643592 237535600 333447968 333447968 193991334 189883486 397146354 481614892 481614892 476003982 476003982 415193670 415193670 253208194 467146262 467146262 395917934 345430602 476161196 476161196 474597530 803623066 851105216 851105216 760387290 833697400 833697400 604006576 604006576 663233739 663233739 936510024 936510024 470338770 470338770 439477014 646018668 646018668 885305052 885305052 975498172 1009728783 1044635074 1044635074 985322847 476119958 476119958 450897174 889302598 889302598 765251181 990954039 990954039 533017636 533017636 210200969 669699453 669699453 778872213 778872213 883500312 1042884423 1042884423 881975883 750510137 750510137 1047232884 1047232884 957489333 999497366 999497366 960904035 960904035 336953592 701956798 884047451 977273432 977273432 950654357 950654357 577261772 577261772 542230469 252306557 169291793 952291527 978371264 978371264 525608467 419611068 505540896 505540896 449843864 550121476 1019838152 1019838152 749514914 749514914 661511036 459719764 459719764 405799686 537162434 537162434 268547400 268547400 231455918 195109556 195109556 260252956 260252956 161424216 194833940 194833940 29172288 38516384 291920658 807882784 846539667 846539667 828459168 828459168 657492720 657492720 1034217820 1034217820 832618851 763438498 675823657 1065160663 1065160663 286464525 1023748143 1023748143 956442671 956436519 705960554 541624448 541624448 541590657 74061192 285944843 621156393 844263121 887702891 887702891 871890744 373352832 53490016 730024454 965001343 965001343 422875423 268834818 268834818 69206016 844709637 844709637 839809536 556320033 689061908 689061908 50463632 41554960 37884048 37884048 292297856 292297856 270532866 268996866 842605008 842605008 852791680 863028067 863028067 810675843 836624099 836624099 824124963 548827488 548827488 545529313 103544088 906055680 906055680 861750088 274953208 460372622 460372622 503407456 503407456 1050609836 1050609836 1011092019 189404393 189404393 168691382 791693449 791693449 646470356 646470356 618983320 190104916 190104916 19009664 28052832 705831144 705831144 1036271664 1036271664 190090355 378752004 378752004 311039190 281728194 483962904 483962904 173666948 165032932 77838904 374391176 374391176 305136402 73450138 42207312 512090976 512090976 498411532 391154198 691070845 717016433 905626551 905626551 834154564 196966186 187840884 63790572 646518427 646518427 407397400 407397400 906007755 906007755 105782424 209925686 622070834 622070834 277462620 277462620 261931494 261931494 444645462 444645462 481370958 497348220 497348220 251727052 822820800 822820800 734666692 805674434 805674434 541871200 335838336 68366856 68366856 68366856 1872384 545033409 545033409 548980545 548980545 277058304 542665024 542665024 882193611 882193611 298309688 1003455010 1003455010 403175430 403175430 677523257 677523257 296302376 932054722 932054722 913183794 913183794 479987226 479987226 732330164 788861072 788861072 135483284 548970304 967526150 967526150 642043960 642043960 872989707 872989707 637584387 1037402759 1037402759 838873275 920725330 920725330 880416712 806355352 277025922 742954512 760268733 760268733 364907861 1015306791 1015306791 672170197 672170197 598377017 573571808 573571808 616567137 616567137 267624956 203257372 798411041 798411041 711208776 711208776 705903480 706184705 706184705 571734528 571734528 570689553 545501192 545501192 646302288 646302288 25952256 197372132 300261570 300261570 424993732 424993732 370147866 472518660 472518660 434580526 434580526 397302866 396626976 858325152 1072510811 1072510811 521712443 941474850 941474850 456168246 271444834 398131642 398131642 158537514 374270046 374270046 191668122 306107714 415813962 532452518 532452518 832445244 832445244 740404896 740404896 655885853 388237626 260567064 773463120 773463120 554199805 175081585 615715008 615715008 611394441 93846120 93846120 323395204 1044830879 1044830879 521455688 521455688 495112302 706123870 706123870 613495419 586487601 986937414 986937414 676095137 807430417 807430417 533210295 516498654 1012874696 1012874696 791734225 617517611 1037998308 1037998308 834069229 210102348 816791043 912338819 912338819 853592296 745512935 745512935 570371684 570371684 1029493428 1029493428 555864385 565104128 565104128 608604297 946231439 946231439 703649474 893109892 893109892 741657357 722317176 172606656 423906720 423906720 327408992 672128785 672128785 103494936 254509196 254509196 700184396 700184396 555319633 609551192 762357788 762357788 260094492 260094492 28758656 407381554 673000656 816128418 816128418 952257075 952257075 805575891 490748092 344457254 1038225903 1038225903 941768903 941768903 939318980 845928897 1039397871 1039397871 1039397871 881230105 640837418 829671072 829671072 401672848 401672848 383460258 383460258 117441056 383140610 383140610 124798840 49824736 33603584 33554448 13714048 193711009 193711009 181378817 733329269 733329269 16056832 587866417 587866417 840114322 840114322 733554822 669770121 412982743 600905657 600905657 962822268 962822268 912724586 912724586 848597539 781245248 781245248 875187479 875187479 861030428 735449462 620774664 826987156 865208035 899873396 899873396 412599916 531231874 531231874 276436866 270844944 39197328 178122324 192982560 455702309 591701671 732299389 732299389 413547093 413547093 1045624911 1045624911 848532881 549527745 608643080 608643080 635341864 635341864 339572548 471385614 471385614 371685126 270911842 245426478 1058137101 1058137101 849921363 849921363 977347199 977347199 1013245261 1013245261 494903446 871407404 871407404 862895552 933689374 933689374 816680497 596515953 978761003 978761003 797302318 1039984937 1039984937 470960140 472981959 1006731776 1039680303 1039680303 838181701 970738671 970738671 555000782 538003714 538003714 114041608 49112002 124467600 124467600 394768440 394768440 355195570 526216156 526216156 239229304 676555149 676555149 229230394 943210511 943210511 486801852 486801852 1039362817 1039362817 592685409 880882418 880882418 77604336 45090992 22390992 13390080 21612128 21612128 14331584 50322400 86771280 400320004 400320004 331360284 358197212 421030974 506055222 506055222 1010846247 1010846247 871416668 977273014 977273014 401476681 153276708 145493316 698935584 698935584 264332388 55191376 28340428 115343832 115343832 74057048 74057048 101189456 181405184 181405184 1064618943 1064618943 1064618943 1045844256 399001832 815152664 815152664 936039675 936039675 613315641 606575976 385527698 385903248 385903248 34105888 29776640 98398016 823178880 823178880 890463360 890463360 87812523 832164160 832164160 269073156 356068768 356068768 292761474 407451297 550561504 560514465 805717025 854402146 864547793 996396309 996396309 712849333 991741617 991741617 581231664 581231664 912297884 912297884 248859997 549036032 549036032 134171648 134171648 133428216 125388288 550021255 550021255 498778712 633290601 633290601 633290601 704068581 704068581 701571048 85852584 558174033 558174033 354749128 354749128 76336200 58867776 256502780 256502780 160684048 174847328 174847328 42608704 42608704 2556240 2171136 22610432 22610432 21570720 109117968 247013784 247013784 234881112 234881112 252268328 252268328 20751932 67373056 114428358 450108382 534683152 534683152 604091609 809576224 809576224 854734027 924369776 924369776 847795283 899029037 899029037 848206828 617716824 848535443 965463833 1006655587 1006655587 1044972630 1044972630 883586188 788529213 604640308 383722292 383722292 270072546 515622144 515622144 492846656 492846656 168157578 74449938 472649132 509641486 509641486 428743782 435297622 435297622 299392848 46040802 410280708 410280708 516608544 516608544 408592474 80779234 335507152 335507152 283130738 490769508 490769508 433793718 433793718 419955534 253000836 639392680 639392680 980917504 980917504 978970263 577317251 579986001 579986001 502954095 131521272 131521272 118962760 805323072 815841603 815841603 823181859 823181859 568464546 873074872 1040270048 1040270048 497088463 338704536 437789394 715692547 872910164 961931807 973349542 973349542 990694511 990694511 737692282 248516920 279069906 279069906 40555920 39969168 299974770 689287584 689287584 324536498 324536498 291310226 324283424 324283424 290203074 296562018 822223601 980301010 980301010 698225765 698225765 689359412 977976741 977976741 965848768 850399133 1052823775 1052823775 1051643231 1051643231 291149746 353391882 624007224 624007224 587934990 562901070 457762978 468980778 487637550 487637550 390432312 390432312 273618450 474508574 507576476 507576476 236802204 359344574 359344574 229115244 287578784 299311434 896547498 896547498 269487240 479478852 479478852 650384990 650384990 1015416296 1015416296 809685123 809685123 408984066 408984066 480771746 480771746 724533375 724533375 471368198 261360470 698167075 698167075 805927846 805927846 543203474 459349826 459349826 306124354 306124354 903191171 903191171 692183205 819449955 819449955 738558469 221133290 491102216 491102216 675730322 725434500 725434500 444535687 444535687 205822347 608487561 608487561 587505793 592728064 592729217 592729217 537709712 624970888 624970888 333397746 1047725012 1047725012 939301369 939301369 726159599 328238098 994210870 994210870 927540411 414270013 982632606 982632606 810528450 291610816 707200021 707200021 148835496 159678868 216639308 554764321 554764321 214363072 636580045 636580045 155526496 413143884 1008865358 1008865358 1006879054 1023352267 1023352267 920565654 920565654 678842190 1022448838 1022448838 630785450 733325881 733325881 699450213 211732034 211732034 984616599 984616599 975117704 975117704 807101795 93026825 90256640 17701920 340316800 477911686 477911686 235033746 305152626 305152626 351821928 510509536 510509536 334968966 334968966 243105360 234697720 531923446 531923446 160803090 68395336 29677632 205643916 337832532 337832532 207770208 80752472 212877384 212877384 423626914 425722278 425722278 286184960 420252930 420252930 363264680 363264680 317052788 518114326 518114326 494671694 155205086 237535600 237535600 226541676 88517240 130957768 130957768 299338760 299338760 476003982 476003982 415193670 415193670 253208194 467146262 467146262 395917934 419935022 488989700 488989700 474597530 889944286 889944286 932218380 932218380 920136915 833697400 554238464 362436331 663233739 663233739 747766986 747766986 173016408 176374085 651814617 651814617 801561108 801561108 956601100 975498172 1009728783 1009728783 405338121 135303364 135303364 95430720 540903266 889302598 889302598 765251181 639794197 639794197 596249296 596249296 77668832 31531496 20971680 20971520 2654464 141103360 507875144 507875144 316196562 338424762 338424762 481610742 957489333 957489333 999497366 1028031701 1028031701 960904035 202498572 701956798 884047451 884047451 629457456 570191904 565503585 577261772 577261772 542230469 252306557 429533282 952291527 978371264 978371264 516555008 516555008 455086344 546381888 546381888 550121476 1019838152 1019838152 749514914 749514914 661511036 459719764 459719764 405799686 306233490 316792200 316792200 86911456 285491234 285491234 195109556 260252956 260252956 118830092 30486400 25955424 43866560 332338960 332338960 807882784 923968424 923968424 828459168 828459168 657492720 883009857 1034217820 1034217820 832618851 763438498 1027441216 1065160663 1065160663 611075001 1023748143 1023748143 956442671 956436519 729191809 543379580 65386805 160962309 763007784 782984156 782984156 844263121 887702891 1030960047 1030960047 1057723777 1057723777 160089380 958609533 958609533 420718623 957823527 957823527 595030797 844709637 844709637 540194742 556320033 689061908 722064150 722064150 184554661 190976436 190976436 292297856 562968769 562968769 578270035 578270035 568714401 568714401 549767361 810675843 810675843 828227747 828227747 813018946 295439970 148190336 140773764 103544088 108436136 861750088 908726627 908726627 839115994 84372274 503407456 503407456 612896840 612896840 537531393 75629641 8593444 163651812 198326628 198326628 257962960 618983320 618983320 20875209 560306620 620884457 630622441 705831144 886178854 1036271664 1036271664 208565425 917328645 917328645 737999775 634184097 767297471 767297471 588316703 442573206 674517682 839948338 839948338 973551889 973551889 878719828 83206268 498411532 498411532 391154198 327430144 395362938 440423338 490089450 490089450 106285620 401811792 401811792 646518427 646518427 407397400 407397400 906007755 906007755 338356465 841581640 841581640 622070834 277462620 277462620 261931494 639117978 810364035 810364035 481370958 497348220 497348220 251727052 822820800 822820800 734666692 805674434 805674434 541871200 415247046 416549574 416549574 51380784 56380080 508857518 714083606 817631043 817631043 545673205 560346139 560346139 882193611 882193611 927214180 927214180 718361836 718361836 679877349 611567184 611567184 552907795 555263156 716436987 716436987 607724265 31983072 229038444 732330164 788861072 788861072 113728592 548970304 624344625 660507441 660507441 970442357 970442357 872989707 1070122239 1070122239 1037402759 838873275 1046270437 1046270437 880416712 806355352 637792281 80744973 899596921 899596921 545524576 1015306791 1015306791 672170197 672170197 623902848 623902848 573571808 616567137 616567137 83886120 83886112 83886088 544048520 544048520 103434633 100897240 706184705 706184705 572116081 25552992 597062161 597062161 646423104 646423104 595780588 694361056 694361056 300261570 300261570 424993732 424993732 204809316 472518660 472518660 434580526 434580526 394663976 935926160 935926160 690327928 660732701 64937712 64937712 456168246 456168246 111440668 398131642 398131642 142370656 245523752 245523752 94342104 306107714 415813962 532452518 532452518 832445244 832445244 405873414 405873414 388237626 388237626 204544520 698880592 698880592 545740445 175081585 751176416 751176416 631406637 93846120 93846120 93846120 1044830879 1044830879 489460252 489460252 495112302 706123870 706123870 832060035 832060035 986937414 986937414 676095137 807430417 807430417 533210295 516498654 1012874696 1012874696 791734225 611081436 503485540 125862128 530555950 530555950 816791043 816791043 577532415 508144746 745512935 745512935 570371684 570371684 1029493428 1029493428 549589185 565104128 565104128 164399044 4507776 139863680 148534212 148534212 138098436 138098436 35770452 172606656 173024384 173024384 544567552 544567552 151267748 151267748 141625636 141625636 691012516 706908593 972357493 972357493 272326023 370025685 434773926 726665003 779624508 779624508 673000656 816128418 816128418 1053296215 1053296215 805575891 272644240 944575488 1038225903 1038225903 941768903 941768903 983170739 983170739 981745815 645107648 881230105 881230105 640837418 829671072 829671072 401672848 401672848 80791240 80791240 80791240 134794505 741084429 741084429 716178325 606657760 734854804 734854804 725801653 725801653 173898209 685454465 685454465 737935808 864624304 864624304 155218870 435528820 669770121 669770121 445752338 600905657 600905657 962822268 962822268 912724586 912724586 848597539 835595489 781245248 548307085 861030428 861030428 735449462 620774664 620774664 457704300 352443392 352443392 179581254 531231874 531231874 289407138 288682498 343741032 343741032 515125836 515125836 591701671 732299389 732299389 413547093 413547093 1045624911 1045624911 848532881 549527745 608643080 608643080 635341864 635341864 339572548 471385614 471385614 371685126 470944038 470944038 202116108 235703580 235703580 562843492 977347199 977347199 769704429 505245683 472730148 448452438 448452438 447013188 933689374 933689374 816680497 268566605 241738520 241738520 166373384 233831916 282640390 470960140 672178434 1006731776 1039680303 1039680303 698132365 698132365 555000782 555000782 354418888 354418888 114041608 49112002 124467600 124467600 394768440 394768440 355195570 526216156 526216156 239229304 239229304 178370640 107528528 455263094 455263094 431014142 298090888 612377586 612377586 316622865 542943346 542943346 270152897 54451792 16885104 29376960 29376960 24262144 21578464 15075464 90244736 90244736 72958376 53642520 51121200 56721520 65135088 182731731 1010846247 1010846247 871416668 569747576 685900105 755194181 766705469 766705469 740076641 740076641 608157225 590795092 590795092 665429493 735354880 735354880 1017907293 1017907293 849611291 639893764 1064618943 1064618943 1064618943 1045844256 399001832 815152664 815152664 936039675 936039675 613315641 606575976 385527698 385903248 385903248 92800104 93851648 290070761 886253067 886253067 890463360 890463360 278147018 278147018 898439404 898439404 356068768 356068768 339240578 339240578 550561504 701315558 805717025 805717025 853056611 996396309 996396309 655903785 991741617 991741617 690081330 936797187 936797187 899627514 899627514 881252427 549036032 168522592 210623051 901163629 901163629 897621830 897621830 569084939 498778712 43391568 71963784 71963784 495298172 495298172 85852584 359976428 359976428 354749128 354749128 207756684 207756684 256502780 256502780 188750004 188750004 174847328 577245328 587270192 587270192 573645584 669192568 669192568 96534880 786051668 786051668 541590657 613417485 613417485 537995368 537995368 529947626 214223052 317318338 419202796 419202796 379626704 310464906 809576224 809576224 590975929 924369776 924369776 662283712 662283712 503596412 503596412 296537442 446472992 446472992 216122954 210299020 210299020 479251450 479251450 266414356 326012330 383722292 541116547 542765708 842125645 842125645 492846656 737000870 737000870 560015365 409528385 608436726 608436726 556926352 435297622 435297622 535208860 535208860 410280708 410280708 516608544 516608544 411587648 280186428 335507152 724213814 741130668 741130668 797052704 797052704 758910589 711536011 711536011 417916915 472698126 980917504 980917504 978970263 957305880 645537937 645537937 513367261 733480821 733480821 244108380 805323072 815841603 1030899185 1030899185 967626087 900503987 873074872 873074872 832216778 338704536 338704536 345507210 345507210 559676784 559676784 532981990 532981990 309465470 907368989 907368989 129974544 411812882 411812882 222423508 39969168 299974770 671106048 700492341 717908256 717908256 291310226 324283424 324283424 290203074 296562018 316738736 980301010 980301010 520565310 659497060 659497060 444097282 965848768 965848768 847662856 847662856 146020624 146020624 291149746 291149746 353391882 624007224 624007224 204397056 204397056 179707460 144579412 124242024 95943528 103049112 103049112 173228254 479867850 507576476 507576476 484143448 223551634 223551634 229115244 229115244 54666460 20224096 269487240 335653460 335653460 374416026 752427542 1065425665 1065425665 1015416296 809685123 809685123 408998755 408998755 530718814 598954820 724533375 724533375 414469966 261360470 698167075 698167075 487209998 487209998 417859014 459349826 459349826 306124354 306124354 903191171 903191171 692183205 819449955 819449955 738558469 62988528 491102216 491102216 675730322 725434500 725434500 376614466 376614466 11873088 9243200 538663936 538663936 886303282 886303282 660003549 420327950 420327950 333397746 333397746 1047725012 1047725012 793473983 1044964628 1044964628 161493705 169883456 705214018 705214018 414270013 369746970 730767383 730767383 399557370 707200021 707200021 273419394 236886226 42295836 554764321 554764321 214363072 636580045 636580045 412180322 548419366 1008865358 1008865358 1006879054 433246950 468784072 920565654 920565654 609797130 609797130 607073356 621806121 733325881 733325881 788670827 788670827 641993276 984616599 984616599 975117704 975117704 807101795 561270720 561270720 73467648 73467648 69605640 218126336 425117740 425117740 305152626 351821928 510509536 510509536 334968966 464878266 464878266 536025914 536025914 531923446 294142502 477499366 477499366 352530592 352530592 481937220 481937220 314738588 0 0 1622528 1622528 286184960 286184960 16900128 139036512 139036512 447042100 447042100 518114326 518114326 494671694 155205086 336574844 336574844 273145090 88517240 51731468 361894506 361894506 359190746 114443394 47551314 281356482 281356482 198001164 198472572 198472572 103911748 453125912 488989700 488989700 438559066 889944286 889944286 932218380 932218380 1016982537 1016982537 252513950 362436331 362436331 18551328 400052506 400052506 173016408 402929792 651814617 651814617 801561108 948564552 1046987737 1046987737 909251355 928077405 928077405 771313645 977601362 977601362 747635465 747635465 260574790 412877948 412877948 0 740888084 740888084 705774560 705774560 634953304 634953304 236270864 1042928712 1042928712 646913290 801436508 801436508 797821693 747901261 747901261 594315523 378720858 1028031701 1028031701 557139725 542902800 327554539 609439209 629457456 629457456 547002504 279110770 279110770 484094486 484094486 479408718 479408718 457566390 457566390 708989088 708989088 987399132 987399132 875222283 546381888 537920001 277571137 690392482 690392482 832363624 832363624 422711367 306497682 306497682 561153665 561153665 316792200 99791466 285491234 285491234 164107760 57477228 24241056 30486400 30486400 25955424 43866560 332338960 332338960 47140386 923968424 923968424 542603776 965945625 965945625 883009857 883009857 679956781 679956781 424618256 1027441216 1027441216 218300591 611075001 611075001 593102424 593102424 729191809 729191809 543379580 147849924 160962309 763007784 782984156 782984156 498643548 823288194 1030960047 1030960047 1057723777 1057723777 160089380 958609533 958609533 420718623 957823527 957823527 890904329 707052731 809426691 809426691 809262851 812029090 812029090 722064150 303038608 575279360 575279360 566499536 562968769 562968769 578270035 578270035 545328256 545328256 14014146 686844452 686844452 945089411 945089411 446038081 177139472 148190336 858358926 858358926 776130987 678788151 908726627 908726627 977342400 977342400 1009526677 1009526677 665749863 612896840 629737533 629737533 530527906 197605620 549545317 549545317 114745716 559044189 708974104 787051997 787051997 784808157 784808157 1053034719 1053034719 886178854 865925348 1015384176 1015384176 917328645 737999775 634184097 767297471 767297471 588316703 442573206 674517682 839948338 839948338 973551889 973551889 878719828 49200738 290563344 290563344 303092377 662856305 662856305 1019553999 1019553999 692177002 106285620 401811792 401811792 285802566 285802566 415258154 415258154 300175682 300175682 338356465 841581640 841581640 732240277 401219019 279182426 562283027 639117978 810364035 985945424 1056700383 1056700383 444504340 137873772 153643104 176210680 176210680 185712640 210987228 210987228 415247046 416549574 416549574 51380784 56380080 893914139 893914139 817631043 817631043 545673205 560346139 560346139 719232765 971098113 971098113 927214180 822780448 718361836 679877349 611567184 611567184 552907795 662647534 716436987 716436987 411067483 488902308 831356938 831356938 470108301 149458184 165336804 216383272 624344625 660507441 660507441 970442357 970442357 452984886 1070122239 1070122239 518905206 518905206 1046270437 1046270437 824857905 637792281 813834824 813834824 899596921 899596921 545524576 545524576 321278937 593566562 593566562 623902848 623902848 713612865 713612865 253417020 253417020 226566252 587673621 587673621 578009176 683336784 683336784 258731400 572116081 572116081 108056512 597062161 597062161 646423104 646423104 595780588 694361056 694361056 201357626 132383330 137823816 137823816 204809316 402670375 891988033 1027808325 1027808325 552221665 935926160 935926160 316881766 316881766 81701144 64937712 51119328 173537840 173537840 112891736 287777280 287777280 245523752 245523752 94342104 549589185 549589185 549589185 583407825 852904147 852904147 809996401 902068574 950409543 950409543 745804400 420480320 420480320 683417221 683417221 751176416 751176416 631406637 187172260 580390544 580390544 550816449 763379933 763379933 692062932 358613156 344335310 412956223 832060035 832060035 399651106 478808784 478808784 219275820 219275820 122160312 293814416 293814416 42517584 394829626 477010420 477010420 401348240 530555950 530555950 339603764 260596994 813526848 813526848 523338731 98380894 22398176 30149856 30149856 25607616 12348224 16377856 16377856 24192160 24192160 37336848 37336848 24007584 43161040 53809200 53809200 134494212 134494212 37163040 544567552 544567552 693532701 745747341 745747341 534244227 691012516 706908593 972357493 972357493 272326023 370025685 434773926 726665003 779624508 779624508 577078364 1019367013 1019367013 1053296215 1053296215 746854605 671878149 944575488 944575488 944191623 624998414 927730875 983170739 983170739 981745815 1019603151 1019603151 827625824 827625824 78252995 362398824 362398824 321472448 324544264 324544264 289295422 487377078 741084429 741084429 716178325 606657760 734854804 836949923 836949923 725801653 327409970 863340356 963591591 963591591 864624304 864624304 48329538 435528820 435528820 411511862 445752338 445752338 286640228 286640228 690248204 690248204 569254562 835595489 990805322 995928359 1071069951 1071069951 507511674 507511674 293601468 293601468 339235920 352443392 352443392 341909664 341386040 341386040 289407138 288682498 343741032 343741032 515125836 515125836 336585756 419430438 419430438 465570384 465570384 407488654 324387824 324387824 366754552 366754552 88489264 118103328 186046770 278152710 278152710 186695988 186695988 470944038 470944038 202116108 302287219 564183393 564183393 564027233 833932131 850302512 850302512 1069108284 1069108284 925346653 1058545188 1058545188 873794921 873794921 690959131 733207092 733207092 862249255 862249255 451377652 983229121 983229121 880404363 880404363 837862287 943210283 1010523662 1010523662 948216450 948216450 819053312 356116225 34687240 550332225 550332225 781071556 781071556 199528452 199528452 629443212 700877544 700877544 701632928 701632928 691749385 691749385 88468994 88468994 543418161 543418161 52478256 586043825 586043825 270152897 54451792 33653760 33653760 29376960 24262144 21578464 62035648 90244736 344018444 373041028 373041028 302547348 448809542 484755918 484755918 482347822 576210825 576210825 569747576 685900105 755194181 766705469 766705469 740076641 740076641 608157225 590795092 590795092 665429493 735354880 735354880 1017907293 1017907293 849611291 985142980 985142980 299762176 851221970 851221970 565229323 876817665 876817665 615779522 272765058 105066648 146839200 188466952 188466952 99141552 193630688 193630688 497774314 886253067 886253067 370474130 336188713 481558978 481558978 898439404 898439404 226228140 226228140 426361988 426361988 418705345 830473568 830473568 698827456 51552032 69371440 654837296 655903785 1006860417 1006860417 690081330 936797187 936797187 899627514 899627514 882586194 882586194 767109899 767109899 901163629 901163629 897621830 897621830 569084939 98803904 501274472 501274472 375447390 363256170 57813984 387001648 387001648 142227944 83310156 128268588 207756684 207756684 42866692 139995936 188750004 188750004 154033668 577245328 587270192 587270192 573645584 669192568 669192568 96534880 786051668 786051668 541590657 613417485 613417485 537995368 537995368 529947626 400749800 400749800 419202796 419202796 606611744 606611744 336110377 657188154 657188154 880341450 880341450 822122392 621855065 621855065 1051214837 1051214837 269637935 269637935 1018725790 1018725790 538393089 830961513 830961513 638369690 108806464 937334350 937334350 542765708 842125645 842125645 370770457 737000870 737000870 560015365 556272736 608436726 608436726 556926352 154534052 154534052 535208860 535208860 243304092 260830332 260830332 411596310 411596310 311035428 294683668 724213814 741130668 741130668 797052704 797052704 758910589 711536011 711536011 922909196 922909196 647501590 647501590 957305880 957305880 826692781 845152659 845152659 733480821 733480821 530958334 527310270 642269425 1030899185 1030899185 967626087 900503987 833362328 832216778 832216778 464552544 464552544 345507210 345507210 342361674 342361674 532981990 532981990 309465470 907368989 907368989 129974544 411812882 411812882 222423508 53651744 145845572 671106048 700492341 717908256 717908256 306774032 306774032 306258066 51524192 59294832 59294832 546182656 546182656 176283732 276841614 444097282 444097282 288559408 979706613 979706613 847662856 582368643 686099183 686099183 326118551 268621360 976197908 976197908 672152328 672152328 409278102 141225868 373874738 373874738 240268944 240268944 262520068 479867850 479867850 484143448 484143448 480495046 480495046 274063490 274063490 61124850 20224096 60033604 335653460 335653460 438169110 752427542 1065425665 1065425665 363602761 313124178 650264780 704827413 704827413 530718814 598954820 648168224 648168224 294462562 294464610 294464610 343544712 343544712 343020426 69210242 1049088 1049088 1049088 219178416 325704204 341258914 341258914 105925082 346391362 822149704 898703979 898703979 345055267 289993760 328753780 328753780 376614466 610517193 816520259 816520259 575434121 546122945 886303282 886303282 660003549 420327950 420327950 117137556 198351088 243134364 381212168 381212168 1044964628 1044964628 288543522 288543522 2670346 337802512 369746970 369746970 366516732 310558760 399557370 399557370 382839970 273419394 382673732 382673732 213440850 212998528 212998528 208477568 404934918 412180322 548419366 548419366 477270028 477270028 433246950 477167642 477167642 369107854 609797130 609797130 593160525 481600251 400125218 341322027 788670827 788670827 641993276 1007160458 1007160458 817837101 817837101 558713704 561270720 561270720 73467648 73467648 224817412 224817412 425117740 425117740 273438544 273438544 177220692 432350560 432350560 464878266 464878266 536025914 536025914 213641490 294142502 477499366 477499366 373631130 352530592 481937220 481937220 314738588 204638408 204638408 409606530 409606530 278226464 503577392 726742738 726742738 644633470 447042100 447042100 367080502 973747260 973747260 965614695 983836936 983836936 978985652 978985652 324336060 361894506 361894506 359190746 114443394 47551314 281356482 281356482 76955650 72610440 13998344 103911748 453125912 453125912 179222926 107176092 233042412 996232360 1043197215 1043197215 1016982537 1016982537 672269861 672269861 18824736 856608 400052506 400052506 304161042 514712114 514712114 1056099644 1056099644 948564552 1046987737 1046987737 1032112239 1032112239 1046782367 1046782367 977601362 977601362 747635465 747635465 384616658 1030587660 1030587660 964767062 740888084 740888084 705774560 705774560 634953304 706173584 706173584 1042928712 1042928712 646913290 801436508 801436508 797821693 747901261 747901261 949114540 949114540 928829115 736886807 630327944 630327944 567688297 609439209 609439209 53215081 37153408 111510528 185684194 484094486 484094486 479408718 479408718 847384659 847384659 832811349 832811349 987399132 987399132 875222283 1010832351 1010832351 348652746 690392482 690392482 832363624 832363624 422711367 703628448 703628448 561153665 561153665 759257764 759257764 273034754 220598790 714213052 714213052 656458220 30486400 30486400 13579984 24681872 335106480 335106480 287686400 597046096 868793186 868793186 965945625 965945625 537952776 437594646 437594646 1066567841 1066567841 877768939 877768939 904922091 101459200 103098648 103098648 101459200 778571200 778571200 147849924 147849924 537411909 837181568 837181568 144884248 67244040 67244040 382731280 382731280 108025178 282777282 343589554 361882400 363930474 363930474 680913477 890904329 890904329 707052731 809426691 809426691 809262851 812029090 812029090 275861520 303038608 575279360 575279360 566499536 287194752 287194752 272646146 806697986 806697986 1040521117 1040521117 272371458 685860934 945089411 945089411 918824587 587205024 587205024 859548748 859548748 776130987 678788151 708186326 708186326 977342400 977342400 1009526677 1009526677 878323728 832017410 832017410 629737533 530527906 254677596 549545317 549545317 266547708 559044189 708974104 787051997 787051997 784808157 784808157 1053034719 1053034719 117591631 865925348 1015384176 1015384176 308827136 438632480 755358142 755358142 692459685 411497025 411497025 71483914 332696293 332696293 11891200 666779104 666779104 782804857 782804857 655451181 585738136 662856305 662856305 1019553999 1032778923 1032778923 335627463 680068709 680068709 910566618 910566618 681523431 681523431 593300659 289130586 330034265 782313711 782313711 732240277 401219019 279182426 562283027 562283027 342175074 985945424 1056700383 1056700383 1000232155 1000232155 932367015 1061295076 1061295076 903919621 903919621 777259677 777259677 588251697 588251697 115153033 485548771 893914139 893914139 819706757 326925680 540017409 540017409 353400960 719232765 971098113 971098113 841645848 822780448 72508298 87347885 944105607 1003270965 1003270965 980815058 662647534 345317674 345317674 488902308 831356938 831356938 673497196 673497196 165336804 611272956 750022229 750022229 714063885 707343137 469995243 560021664 560021664 539091201 217056806 498148969 899299609 899299609 824857905 541978304 813834824 813834824 856430434 866130737 866130737 321527345 52041264 52041264 705763756 705763756 774508869 774508869 713612865 253417020 253417020 246880724 587673621 587673621 578009176 683336784 683336784 258731400 258731400 81127848 108056512 128663680 128663680 103698432 125835672 125835672 302119566 302119566 201357626 525702360 843610967 843610967 473348750 1043694127 1043694127 1027808325 1027808325 601894865 542063745 591446193 591446193 316881766 571748704 862150374 862150374 448592834 187993360 271611110 288945248 288945248 163286658 228374444 228374444 549589185 549589185 549589185 583407825 852904147 1016167072 1016167072 902068574 950409543 950409543 745804400 673229072 673229072 683417221 777527033 777527033 181985109 649143480 649143480 580390544 580390544 574935218 763379933 763379933 692062932 502077034 502077034 448690598 359948916 399651106 399651106 478808784 478808784 219275820 219275820 122160312 273338929 273338929 438513942 943604481 943604481 401348240 401348240 102271906 276938805 882853547 882853547 1064920644 1064920644 570587333 570587333 888128014 888128014 755508277 755508277 542774913 538875393 536895104 51981540 181471348 181471348 150447044 180875732 462937526 462937526 169661972 467990262 467990262 170342676 728259158 839834643 839834643 745747341 745747341 534244227 421318182 421318182 689061939 689061939 10685216 18818752 18818752 55129392 55129392 46425184 577078364 1019367013 1019367013 546049089 672010240 672010240 841487629 841487629 818631870 909076952 909076952 470237353 877461058 880803723 880803723 1019603151 1019603151 827625824 827625824 86100833 362398824 362398824 308864952 324544264 470129664 470129664 487377078 487377078 525323722 525323722 371464324 673321074 836949923 836949923 755276284 327409970 863340356 963591591 963591591 434443329 286266208 28443170 21390976 21390976 18873888 288338338 288338338 286640228 286640228 278389731 558026913 558026913 302988306 990805322 995928359 1071069951 1071069951 700109685 700109685 802297728 802297728 339235920 339235920 341909664 341909664 476972426 476972426 342625674 488837386 488837386 296448114 453853516 453853516 450108150 450108150 630378849 630378849 565493864 540912805 676545957 676545957 255406961 726391344 798035253 798035253 715533949 597132316 220523344 186695988 186695988 152182084 152182084 121012240 355441546 564183393 564183393 564027233 855486836 855486836 850302512 1069108284 1069108284 925346653 1058545188 1058545188 873794921 873794921 690959131 733207092 733207092 862249255 862249255 451377652 983229121 983229121 880404363 880404363 837862287 943210283 1010523662 1010523662 948216450 948216450 819053312 382069586 51699800 839664506 1015292819 1015292819 781071556 243898992 766656840 766656840 700877544 700877544 701632928 701632928 691749385 691749385 36455168 36455168 543418161 543418161 52478256 586043825 586043825 42265600 26614528 55283744 55283744 23477248 23477248 18523680 62035648 62035648 344018444 373041028 373041028 302547348 448809542 484755918 484755918 482347822 482347822 293617900 457728870 457728870 414810192 217904136 165410532 214582157 572534829 572534829 575432272 743826073 743826073 671499016 671499016 247225924 168430096 148506455 985142980 985142980 299762176 851221970 851221970 565229323 978209416 978209416 779402884 576068743 210739222 146839200 188466952 188466952 139371008 193630688 193630688 497774314 497774314 508297728 509349534 509349534 481558978 481558978 490055202 490055202 152643108 152643108 426361988 426361988 283402562 830473568 830473568 573888019 96503137 69371440 304661800 639798586 1006860417 1006860417 970458644 970458644 247449554 411750998 509659382 882586194 882586194 767109899 767109899 403741764 352951040 356515626 356515626 425226144 425226144 501274472 501274472 375447390 363256170 57813984 387001648 387001648 185799968 457848206 1026528093 1026528093 40295876 974174997 974174997 429538242 371949030 154033668 709237927 709237927 404296886 320676354 554173696 578291216 578291216 197657584 242358960 242358960 629642733 629642733 308492672 646351859 646351859 400749800 400749800 356638890 324371258 606611744 926698648 926698648 657188154 657188154 880341450 880341450 822122392 621855065 621855065 1051214837 1051214837 269637935 269637935 1018725790 1018725790 538393089 830961513 991796860 991796860 901394309 937334350 937334350 821727506 821727506 676475997 824365347 824365347 321516819 854101330 854101330 556272736 541720680 541720680 336598253 227590374 397701400 397701400 191560486 260830332 260830332 411596310 411596310 311035428 294683668 579470604 579470604 420483714 155324580 101847988 291116706 291116706 291112482 922909196 922909196 230853845 102929194 102929194 826692781 826692781 845152659 845152659 385889172 530958334 530958334 527310270 285993372 66551494 531569632 531569632 145852332 123075376 693125156 693125156 464552544 464552544 436224128 489827522 489827522 117442072 168527944 168527944 100786816 24774312 59396448 95465824 119883832 119883832 81840304 53651744 35860752 10873280 18590880 18590880 34078720 306774032 306774032 306258066 51524192 59294832 856654995 856654995 717936865 1016470095 1016470095 727106067 727106067 296960536 980550550 980550550 721658214 678691652 686099183 686099183 452733420 305345298 976197908 976197908 672152328 672152328 409278102 141225868 373874738 373874738 240268944 240268944 262520068 262520068 218799220 218799220 820661309 1011463953 1011463953 709869146 299999265 828653963 828653963 703704371 739804524 739804524 438169110 438169110 263730250 263730250 6333056 6333056 650264780 704827413 704827413 174194893 860448240 989158566 989158566 347227018 294464610 537407653 537407653 343544712 343020426 308730258 308730258 281074070 419219094 419219094 279410914 306438120 306438120 897919136 897919136 822149704 898703979 898703979 345055267 189974060 328753780 483009926 483009926 610517193 816520259 816520259 575434121 546122945 316664320 643496594 650590425 650590425 360492288 391778902 391778902 764610228 764610228 537703897 913970258 913970258 394839162 394839162 68175474 973839164 973839164 623243047 743182393 743182393 395776626 798802645 798802645 369614008 424667140 424667140 682564873 682564873 346216640 739564805 739564805 134285321 739633677 739633677 500290413 624682848 798284747 830490668 830490668 546025637 944994546 944994546 333301900 400125218 468574269 785769888 785769888 358854717 620894758 1007160458 1007160458 817837101 817837101 152445632 287999498 287999498 71910272 341414024 341414024 338892162 290773032 290773032 138189526 367922608 459803944 459803944 432350560 335206386 439112398 439112398 365101884 452146134 452146134 340008976 373631130 373631130 38078538 33818640 46662104 106432840 204638408 204638408 409606530 409606530 275960454 503577392 726742738 726742738 644633470 364719978 671091076 671091076 973747260 973747260 965614695 983836936 983836936 978985652 978985652 324336060 293303298 359103650 359103650 244612638 326918482 326918482 194132520 265739004 265739004 255858868 219234520 251810014 315001342 484651470 484651470 363242350 996232360 1043197215 1043197215 608184775 349553307 672269861 672269861 605365280 605365280 582950945 582950945 304161042 514712114 514712114 1056099644 1056099644 790681660 994888887 999082159 1032112239 1032112239 1046782367 1046782367 463517083 741081992 741081992 740403599 384616658 1030587660 1030587660 964767062 402917382 1057039971 1057039971 860254944 860254944 831701602 831701602 684291140 684291140 455173999 236578332 417669722 417669722 302196800 118102016 949114540 949114540 928829115 121933379 630327944 630327944 646130690 646130690 81230619 343182344 343182344 282460360 147427588 352042864 352042864 314424062 427039733 847384659 847384659 832811349 832811349 843063488 855638627 855638627 1010832351 1010832351 348652746 348652746 2671872 6311168 6311168 23873696 703628448 759448612 759448612 83156073 759257764 759257764 273034754 584763172 714213052 714213052 656458220 262343924 56896076 210445540 210445540 335106480 335106480 287686400 620043176 868793186 868793186 674964126 983039569 983039569 437426696 672206867 1066567841 1066567841 877768939 877768939 904922091 306769185 862267827 862267827 365489435 778571200 778571200 715192500 162393189 537411909 837181568 837181568 130835591 580335818 580335818 685319248 710749845 747121368 747121368 343589554 354452176 354452176 277381634 277381634 463496358 463496358 361336196 443497878 443497878 170603796 511450642 779780236 779780236 309889549 275826816 406978832 406978832 314973778 281579714 272646146 808795649 808795649 1040521117 1040521117 272371458 245631492 171781146 918824587 918824587 587205024 874729363 874729363 859548748 451536436 451536436 268476416 295755850 296854088 354468138 567423104 878323728 878323728 832017410 832017410 399119595 254677596 254677596 191273092 266547708 266547708 191116120 107912360 50737680 100804632 100804632 101056536 101056536 311040016 763400850 763400850 521662041 680079463 890290693 890290693 755358142 755358142 944621570 944621570 411497025 71483914 332696293 332696293 83750856 666779104 666779104 782804857 782804857 655451181 585738136 547754312 738222286 964841639 1032778923 1032778923 335627463 680068709 680068709 910566618 910566618 681523431 681523431 593300659 289130586 925066768 925066768 782313711 224861511 734208 1783296 286779536 638371890 889717803 935596731 935596731 899554923 1000232155 1023994515 1023994515 1061295076 1061295076 903919621 903919621 777259677 777259677 588251697 588251697 115153033 485548771 749344077 819706757 819706757 809878794 809878794 85832356 702244432 702244432 435183776 435183776 335753226 302045364 286710306 571165712 944105607 1003270965 1003270965 980815058 562247169 411177030 411177030 439725882 985285786 985285786 673497196 673497196 103301296 641551689 750022229 750022229 714063885 707343137 666601685 560021664 560021664 744596296 744596296 414685289 899299609 899299609 840678992 541978304 616571074 616571074 856430434 866130737 866130737 354681513 354681513 76814714 705763756 705763756 774508869 774508869 201349116 201349116 179711828 246880724 720700272 720700272 577830993 175172549 41167040 21356848 13558272 84956064 84956064 128663680 128663680 57109696 57109696 32180988 597757825 605892105 605892105 540220680 843610967 843610967 473348750 1043694127 1043694127 839189594 601894865 742990422 742990422 591446193 625234364 707189013 707189013 862150374 864871666 864871666 979653648 979653648 463521234 463521234 180928848 228374444 228374444 151028000 6414720 6414720 67182600 372820352 1016167072 1016167072 25166400 25166400 54530784 54530784 673229072 673229072 650645612 777527033 777527033 626973328 649143480 649143480 580201041 580201041 574935218 574935218 50762247 422420052 502077034 502077034 494973385 1032744879 1032744879 821504163 424680504 424680504 252460148 758067080 758067080 644743353 273338929 438513942 943604481 943604481 314239056 407655216 407655216 434486720 882853547 882853547 1064920644 1064920644 570587333 570587333 888128014 888128014 755508277 755508277 542774913 538875393 536895104 67459752 181471348 181471348 150447044 483144208 483144208 462937526 352453176 467990262 467990262 170342676 788822860 839834643 839834643 716230197 708364053 547254025 421318182 432411876 432411876 844351907 844351907 676142623 353707557 818428605 818428605 594187962 453092354 453092354 422858403 595338857 626948693 647420505 841487629 841487629 818631870 909076952 909076952 279760194 877461058 880803723 880803723 608353440 889680194 889680194 634710241 88264872 88264872 46727234 268526616 268526616 470129664 470129664 137084938 270985240 457250220 457250220 371464324 369805792 755237984 755276284 755276284 128188645 11146528 10621760 27526848 280498976 280498976 180367764 185220948 448035508 448035508 404766802 288338338 445760130 445760130 500175570 558026913 558026913 230892054 35267946 180647128 357564832 357564832 700109685 700109685 802297728 802297728 207786960 90341848 42094864 173015220 476972426 476972426 342625674 488837386 488837386 296448114 453853516 453853516 450108150 557896374 630378849 630378849 565493864 540912805 676545957 676545957 255406961 726391344 798035253 798035253 715533949 597132316 394718784 394718784 387659322 514219368 514219368 121012240 355441546 355441546 74399112 167599328 855486836 855486836 814092355 368984324 368984324 604647626 604647626 476645603 180400796 216267212 216267212 383789126 383789126 422022232 422022232 283626782 527133954 527133954 231716322 269336648 269336648 495060032 495060032 143839812 82985540 82838472 382069586 382069586 51699800 839664506 1015292819 1015292819 744488589 243898992 766656840 766656840 380622714 380622714 34320024 47448528 52519816 111183544 111183544 96544592 13124832 35799040 35836176 35836176 42265600 42265600 25289040 55283744 55283744 6377696 19029280 19029280 23994784 31527328 31527328 28254528 33142080 70115432 70115432 67429920 93955328 93955328 56487512 56487512 64325920 128190728 217904136 217904136 165410532 134936064 68314504 107362136 575432272 743826073 743826073 671499016 671499016 885806164 885806164 112460226 818021450 818021450 778961426 124355408 124355408 471866012 978209416 978209416 779402884 576068743 210739222 312157952 361898020 361898020 139371008 153558148 153558148 475626512 503703582 508297728 509349534 509349534 89959726 238919608 339738624 767072587 767072587 209637036 837321025 837321025 827376553 907597339 907597339 898253936 122684088 154403484 823712896 823712896 168465552 577671092 970458644 970458644 789594624 411750998 509659382 784041616 840186056 840186056 818843649 818843649 746965198 143540742 141097352 425226144 605366793 605366793 349177003 353570369 545939503 545939503 17826336 931642987 931642987 457848206 1026528093 1026528093 205785228 974174997 974174997 429538242 371949030 303710242 709237927 709237927 404296886 320676354 554173696 578291216 618346336 618346336 327170411 385286310 629642733 629642733 280748928 646351859 646351859 639268568 639268568 290046976 290046976 577829304 926698648 926698648 892901416 104405529 105766544 359352608 368464642 399414840 555930859 630735043 630735043 63452369 47319056 5581440 152117928 205521036 710298338 991796860 991796860 901394309 454776052 189519382 821727506 853345650 853345650 824365347 824365347 321516819 854101330 854101330 468190516 707053651 707053651 529779228 424835110 373442518 359452074 109567152 109567152 136479060 136479060 505463712 505463712 278922340 579470604 708319797 708319797 829035266 829035266 808328451 819873729 819873729 328845525 851581044 851581044 819069526 102929194 58121136 58121136 17564560 735886464 735886464 264513312 264513312 173676180 827384672 827384672 531569632 531569632 604307579 604307579 596668235 779150592 779150592 1010387673 1010387673 959749258 959749258 1065396452 1065396452 684040216 474363536 54584464 41758608 58071184 58071184 50976048 50976048 40680192 10873280 10873280 13414544 63424720 63424720 332885280 332885280 277831360 294524994 294524994 856654995 856654995 717936865 1016470095 1016470095 727106067 727106067 296960536 980550550 980550550 678691652 678691652 619582072 479838820 452733420 305345298 305345298 268959248 141419908 222571020 222571020 185942928 152610308 179648104 179648104 149140072 149140072 165790796 357490978 357490978 820661309 1011463953 1011463953 736706688 598564917 828653963 828653963 703704371 739804524 1031802002 1031802002 802760445 587440408 819829720 819829720 845376731 872791808 872791808 107478792 121876496 860448240 989158566 1050822050 1050822050 916524290 537407653 976226150 976226150 605028873 554696744 308730258 281074070 419219094 419219094 470148748 470148748 459606940 1040484712 1040484712 855968139 855968139 305203227 291352118 189974060 189974060 483009926 483009926 939475785 939475785 540023361 327693459 884886594 884886594 643496594 684197061 718013639 741659874 741659874 391778902 764610228 764610228 537703897 772822084 772822084 394839162 1064048216 1064048216 973839164 1043013593 1043013593 988158423 813178452 395776626 798802645 798802645 369614008 424667140 424667140 682564873 682564873 346216640 739564805 739564805 429040552 739633677 739633677 500290413 624682848 857657221 857657221 830490668 864587361 944994546 1032390390 1032390390 944246915 468574269 785769888 785769888 358854717 826736720 826736720 36992739 813519184 813519184 811386986 885577992 885577992 339826696 341414024 341414024 338892162 162498380 156812964 395216976 395216976 459803944 459803944 300752820 454218294 454218294 330342306 365101884 452146134 497078630 497078630 285347874 291635562 353894842 430446574 430446574 298325040 38212800 38212800 193618256 193618256 64827380 54135360 199758048 218243204 247207788 247207788 671091076 671091076 570687488 570689553 570689553 201458688 1387008 202252832 202252832 86198826 293303298 359103650 359103650 244612638 326918482 326918482 207035208 265739004 289665546 356646930 377577654 377577654 386802908 484651470 484651470 426018984 426044146 983867474 983867474 751952042 751952042 537135105 537135105 897713665 897713665 582950945 582950945 883684683 916612112 916612112 51118712 126880816 126880816 102502992 304087056 304087056 629416068 767895789 920989972 920989972 406978635 740403599 740403599 310738946 281030738 538515478 538515478 453709315 1057039971 1057039971 860254944 860254944 831701602 831701602 810156096 810156096 158909644 209339816 209339816 951721816 951721816 644873625 644873625 392872888 941636821 941636821 629224392 831730275 1028929740 1028929740 134748228 343182344 343182344 282460360 163709348 526228004 526228004 314424062 382738508 382738508 464550208 464550208 407031992 520093758 520093758 218310814 237425628 538640972 748164360 748164360 738263584 833994984 833994984 492646062 209163553 759448612 759448612 83156073 219639564 219639564 67707912 584763172 584763172 84546848 262343924 262343924 114439024 210445540 210445540 177114772 168000000 31830752 620043176 620043176 576227552 896568318 983039569 983039569 437426696 672206867 672206867 947929459 947929459 750944367 344475237 306769185 862267827 862267827 386610234 386610234 715192500 715192500 162393189 25881684 352511124 352511124 130835591 580335818 580335818 685319248 710749845 747121368 747121368 124442008 293617872 372510952 927907959 927907959 786717773 503464624 585420544 585420544 1021706699 1021706699 719199957 779780236 779780236 846009862 846009862 787667546 787667546 314973778 172249104 270073347 808795649 925292998 925292998 638145077 36361264 51041568 51041568 846766731 846766731 106954392 874729363 874729363 919911313 919911313 481449864 481449864 295755850 295755850 407630982 769835450 769835450 131249705 46715024 357634656 357634656 111363712 111363712 91732632 19399968 609497764 622127540 622127540 605596180 566196997 58272221 101056536 416439178 446404182 781770334 1000669957 1000669957 956376100 890290693 890290693 341159098 676013187 971034700 971034700 789287477 756729007 181750017 181750017 83750856 626044257 626044257 267110192 267110192 240162024 240162024 698393636 738222286 964841639 964841639 440492265 205594984 1017185248 1017185248 273880676 273880676 659572770 930272187 930272187 864747906 925066768 925066768 908071992 411711068 402573552 402573552 314386952 638371890 914358363 935596731 935596731 899554923 842847646 1023994515 1023994515 360033004 980113796 980113796 778830097 166463400 99848428 214431948 214431948 126563448 324415178 324415178 197866740 759438860 809878794 809878794 250719824 702244432 702244432 435183776 435183776 323410564 860164935 860164935 707797735 806261937 978357020 978357020 695391141 475825176 411177030 411177030 439725882 985285786 985285786 516795614 847348102 847348102 1017220190 1017220190 726401605 726401605 666601685 666601685 375493107 375493107 1029802639 1029802639 1016811658 621892264 840678992 840678992 621749866 621749866 664746941 664746941 650915417 650915417 632816144 354681513 657452744 657452744 647365067 220178656 220178656 203424012 236460152 236460152 226762848 720700272 720700272 677406592 120089728 51408528 96733416 96733416 119543216 119543216 94935128 41157520 98591864 98591864 103292472 597757825 605892105 933882240 936119547 936119547 357878442 556497800 697044136 839189594 839189594 900468075 973081773 973081773 799090841 721684533 707189013 707189013 729436465 864871666 864871666 979653648 979653648 463521234 463521234 180928848 153665570 151028000 950268231 950268231 950268231 1008450979 1008450979 794216982 942076716 942076716 799254697 799254697 735510584 430718480 880177561 880177561 611585297 626973328 626973328 542410768 575718033 575718033 575718033 727018144 727018144 675356805 542179844 32895584 32993920 494973385 1032744879 1032744879 821504163 541656132 424680504 252716208 758067080 758067080 644743353 1003067014 1003067014 673297045 314239056 314239056 407655216 407655216 454464290 454464290 333761010 333761010 254142780 254397764 410044932 410044932 352953376 58827978 52235536 41159424 19433984 17072256 302451941 983305815 983305815 954441431 924042725 924042725 956639271 956639271 1019286253 1019286253 614643716 788822860 1037455017 1037455017 716230197 708364053 547254025 118030949 432411876 432411876 844351907 844351907 676142623 353707557 818428605 818428605 594187962 584133964 584133964 422858403 595338857 626948693 647420505 647420505 608573577 987973923 987973923 933411103 497228803 666678608 666678608 671037645 671037645 889680194 889680194 855147586 855147586 845804681 925491618 925491618 907815755 1055482399 1055482399 417940553 747423759 747423759 586125013 690826510 690826510 755237984 755237984 700584165 63440594 680075318 849088083 849088083 324154037 290077430 269686850 294388768 448035508 448035508 404766802 273548576 478388816 478388816 500175570 500175570 471011876 230892054 196207476 269941484 357564832 357564832 147923652 220531652 220531652 218103852 224444844 224444844 170967320 173015220 188744340 188744340 188748304 355953408 355953408 18923808 19081232 438749440 438749440 557896374 557896374 1068763856 1068763856 492230671 109482454 32868000 32868000 22660064 22660064 6699024 205776298 353355932 394718784 394718784 387659322 514219368 514219368 119986228 262574156 302454960 302454960 92635530 86957360 86957360 138978824 814088336 914839874 914839874 611001667 611001667 808084610 808084610 134250500 118458396 151745572 271349884 283626782 283626782 527133954 527133954 950988872 950988872 145446243 203366280 203366280 143839812 82985540 82838472 67423168 21557089 18424289 23077249 673605512 744488589 744488589 202510860 682656608 682656608 1015584354 1015584354 767730688 767730688 538466120 222382672 111183544 96544592 49596736 45256128 35836176 45352000 45352000 11535168 11535168 14792032 25166080 25166080 19029280 19029280 23994784 31527328 31527328 28254528 17180672 23069088 26214528 26214528 25208864 8456256 103345232 103345232 86100024 86100024 10130432 10130432 139032104 223351073 771461601 771461601 569538413 568328673 464034919 464034919 587993706 885806164 885806164 816874773 816874773 778961426 778961426 321650692 134221106 190317100 505512758 505512758 437855766 174263998 174263998 312157952 413364742 416285768 445244502 445244502 437053732 475626512 503703582 503703582 402841892 520562964 520562964 413628992 339738624 767072587 767072587 273157952 837321025 837321025 828908211 907597339 907597339 898253936 265474716 738903773 823712896 823712896 631276013 761283177 761283177 789594624 789594624 128975736 128975736 126163488 840186056 840186056 818843649 885853256 1015116906 1015116906 961547816 1024376964 1024376964 605366793 349177003 353570369 545939503 545939503 249088642 931642987 931642987 289479848 76808172 149631212 205785228 474316956 474316956 474490428 509056550 509056550 303710242 135007236 189143168 189143168 52508160 779756272 779756272 618346336 327170411 486958788 486958788 423640026 370937370 201156698 602408433 916074786 916074786 835441131 835441131 868819392 868819392 892901416 892901416 599191825 105766544 359352608 359352608 558618408 558618408 630735043 819069076 819069076 171971267 340988250 379728522 379728522 296314338 296314338 39355540 454776052 667803400 667803400 432508885 853345650 853345650 817013424 136763652 271115585 687867173 687867173 506175580 707053651 788907065 788907065 424835110 373867228 359452074 201901124 280649040 280649040 244105418 505463712 505463712 278922340 278922340 708319797 708319797 829035266 829035266 808328451 819873729 819873729 432169586 851581044 851581044 819069526 121961127 907520565 907520565 832507235 969407588 969407588 379053156 379053156 305235109 944629540 989104662 989104662 757662643 604307579 604307579 596668235 779150592 853601336 1010387673 1010387673 959749258 959749258 1065396452 1065396452 684040216 474363536 149485484 154735240 154735240 71764520 88759968 88759968 81653448 81653448 338112810 365353194 365353194 128116578 332885280 390632296 390632296 294524994 303717074 303717074 169294372 169294372 143079492 235735552 235735552 244200524 244200524 77280840 50669616 50669616 254987472 254987472 248388828 248388828 83141784 70513416 67195648 39500608 282299202 282299202 185942928 421011810 421011810 263967384 263967384 231711052 481286374 481286374 413728342 413728342 483443406 736706688 736706688 598564917 279472369 275301762 15204546 277973186 1031802002 1031802002 922931259 651143765 819829720 819829720 876124739 876124739 872791808 551682762 79876160 92460456 122496368 1050822050 1050822050 916524290 371992366 976226150 976226150 605028873 554696744 72704208 36170896 36170896 5920708 667834295 667834295 744664540 1040484712 1040484712 855968139 855968139 331566268 844798118 1024319555 1024319555 912056788 297877019 939475785 939475785 540023361 868889746 884886594 884886594 352137064 684197061 718013639 741659874 741659874 370558000 881621170 881621170 323756241 772822084 772822084 345190986 1064048216 1064048216 742147526 1043013593 1043013593 988158423 813178452 340140032 231870712 92274792 100810760 100810760 416554204 416554204 339774916 339774916 208013866 99689448 429040552 429040552 420663846 356610700 427855523 857657221 857657221 350640876 864587361 864587361 1032390390 1032390390 944246915 688720735 1024854645 1024854645 841230554 826736720 886261982 886261982 754170082 986195426 986195426 885577992 885577992 339826696 339826696 206519436 206519436 162498380 206471656 395216976 395216976 448811042 448811042 290702484 454218294 531515992 531515992 472260296 472260296 497078630 497078630 402565596 495411396 495411396 532223474 532223474 469706470 338823164 116922636 140697540 162319716 162319716 243801890 596775682 596775682 596389610 440875158 746985266 746985266 623521125 570689553 570689553 890249752 890249752 1007222912 1007222912 290456396 92283928 382420104 435139582 435139582 347417418 209780998 207035208 223481938 289665546 356646930 377577654 377577654 386802908 386802908 426018984 426018984 208318344 639192860 683698258 861250616 861250616 537135105 71966434 897713665 897713665 348394032 888634096 888634096 916612112 916612112 840686860 840686860 677691016 347128650 347128650 355152378 355152378 271167520 920989972 920989972 738271245 738271245 148955593 32854432 510758658 538515478 538515478 453709315 990083632 990083632 840028917 555092498 555092498 538319361 810156096 817398270 817398270 716177469 421659862 951721816 951721816 644873625 644873625 392872888 941636821 941636821 663561128 831730275 1028929740 1028929740 668928551 865471082 865471082 163709348 163709348 526228004 526228004 47258536 501553564 501553564 464550208 464550208 360710250 194316826 172032068 180355284 180355284 538640972 748164360 748164360 738263584 833994984 833994984 882032772 882032772 744338309 744338309 424460101 604564256 604564256 481575478 552215176 618869193 628167264 628167264 90251688 114439024 114439024 59718768 66055984 66055984 31506976 52210880 52210880 112439984 896568318 896568318 186937389 354527540 369353007 664907858 947929459 947929459 541848705 272703618 67141698 343982154 343982154 386610234 652268937 652268937 614942064 637798425 637798425 624991257 666786261 666786261 386022169 1007722212 1007722212 238306059 131121418 380670714 380670714 273859218 372510952 927907959 927907959 824705587 503464624 585420544 585420544 1021706699 1021706699 914790681 914790681 773515280 846009862 958431523 959586185 959586185 865997554 865997554 214221512 475710348 925292998 925292998 502713692 546304676 722312235 722312235 688778277 650293721 1042411725 1042411725 263688143 919911313 919911313 788976891 810469377 864434251 864434251 407630982 769835450 814959616 814959616 810973515 357634656 357634656 124887144 48492896 43786512 43786512 609497764 622127540 622127540 605596180 566196997 74849160 34653064 416439178 446404182 781770334 1000669957 1000669957 956376100 507462012 141720854 271158160 274907524 971034700 971034700 789287477 756729007 430220140 430220140 49406912 613780768 755247492 755247492 758855469 758855469 655954196 698393636 698393636 641913900 641913900 481871742 481871742 1017185248 1017185248 603101010 889414150 889414150 930272187 930272187 864747906 829600992 908071992 908071992 562650116 402573552 680483191 680483191 314386952 914358363 914358363 536190987 1007215680 1007215680 824432111 944646507 944646507 980113796 980113796 334405733 988407735 988407735 1067345595 1067345595 1019356256 1019356256 876882154 673397998 759438860 759438860 250719824 250719824 160235476 549869568 549869568 35586769 149109090 860164935 860164935 707797735 719933072 978357020 978357020 475825176 475825176 216056268 719373212 719373212 890257678 890257678 516795614 847348102 847348102 1017220190 1017220190 726401605 726401605 852607885 852607885 375493107 624993137 1029802639 1029802639 1016811658 823182568 829028226 829028226 621749866 792456265 792456265 664746941 650915417 650915417 632816144 190906660 657452744 657452744 629737489 220178656 552196809 552196809 677055936 685576709 685576709 551030613 677406592 677406592 699068916 699068916 96733416 154926248 632428424 768873197 768873197 262098209 98591864 98591864 598803505 598803505 66128240 933882240 936119547 936119547 357878442 556497800 697044136 713411789 755558672 900468075 973081773 973081773 799090841 721684533 545558993 678690916 682338992 682338992 163790176 7001472 151046528 157551012 445023828 445023828 474690702 474690702 950268231 950268231 950268231 1008450979 1008450979 794216982 942076716 942076716 799254697 799254697 735510584 430718480 880177561 880177561 611585297 611585297 602776000 284248322 402814720 402814720 553953457 727018144 727018144 675356805 542179844 480101398 480101398 201126452 251872252 251872252 541656132 642277588 642277588 252716208 152246560 151332900 151332900 1003067014 1003067014 673297045 162627959 57671088 406764422 406764422 454464290 513425734 513425734 337811008 343933002 343933002 346104138 352953376 352953376 337150112 337150112 23086602 17072256 17072256 302451941 983305815 983305815 954441431 924042725 924042725 956639271 956639271 1019286253 1019286253 614643716 614643716 1037455017 1037455017 494147447 586751602 586751602 437990934 437990934 309027760 42124356 30802752 30802752 56925504 56925504 46610640 43465616 584133964 584133964 203760953 202874960 690243620 787357149 787357149 445010029 987973923 987973923 933411103 497228803 666678608 666678608 671037645 671037645 637778938 621015299 855147586 855147586 845804681 925491618 925491618 907815755 1055482399 1055482399 1015341284 747423759 960726682 960726682 690826510 690826510 597765178 824322376 969152413 969152413 680075318 849088083 849088083 715528565 563491668 406855122 406855122 294388768 461326960 461326960 165672866 478388816 478388816 336468248 336468248 147907310 126339608 196207476 269941484 269941484 232928154 308933920 427194514 427194514 409869122 409869122 470223056 470223056 168638810 279269386 476890382 476890382 355953408 355953408 496064006 496064006 190438942 496551534 518668604 518668604 1068763856 1068763856 590706866 686242245 686242245 491445352 667564260 667564260 599920881 553189040 553189040 479462350 479462350 399508310 293671248 65611248 65611248 349034675 349034675 302454960 701778112 701778112 679812639 717025312 814088336 914839874 914839874 611001667 611001667 808084610 808084610 239915036 140823556 140823556 26139744 386437218 386437218 381889888 381889888 950988872 950988872 431420226 431420226 404423950 404423950 278344674 314657136 352727250 627483200 627483200 578214801 568272221 568272221 492781522 902231271 970097290 970097290 1015584354 1015584354 796421672 796421672 753263928 222382672 196347152 139463408 49596736 45256128 7356480 72385928 72385928 14428224 117771016 117771016 25929024 25929024 25814336 75278984 75278984 96224288 96224288 88475816 88475816 72634560 72634560 30493280 30493280 8456256 103345232 103345232 86100024 195316064 195316064 99405692 139032104 223351073 771461601 771461601 569538413 568328673 464034919 464034919 587993706 661029158 749733106 816874773 816874773 372510208 371198293 321650692 626082465 879347208 879347208 437855766 943817739 943817739 371724720 357176490 413364742 416285768 445244502 445244502 437053732 354299982 354299982 221761700 402841892 520562964 520562964 413628992 413138980 413138980 287310028 293348834 293348834 828908211 828908211 419825792 419825792 285869092 424154406 738903773 738903773 591550560 681741990 761283177 761283177 962728494 962728494 883397541 767570676 776944797 819667165 819667165 626031299 885853256 1015116906 1015116906 961547816 1024376964 1024376964 695941029 836300933 836300933 247989896 247989896 458675872 458675872 289479848 289479848 839991361 839991361 211935564 724795817 724795817 474490428 509056550 509056550 542940161 542940161 274471554 1045046592 1045046592 949163071 822161670 213061709 209730636 486958788 486958788 370937370 370937370 643392418 925418811 925418811 916074786 924568688 924568688 868819392 868819392 571968114 599191825 599191825 8667200 296956672 296956672 558618408 740487170 1019216079 1019216079 819069076 680182528 680182528 761672611 824890310 824890310 479867954 610151597 610151597 933314773 1027859117 1027859117 684593596 690967880 690967880 136763652 271115585 631312424 631312424 906115409 906115409 872814603 788907065 373867228 373867228 168085652 201901124 280649040 280649040 244105418 416567198 416567198 251922506 251922506 257982776 419741798 419741798 355533448 424681762 937551602 937551602 948410593 948410593 911826998 911826998 697848973 907520565 907520565 832507235 969407588 969407588 654626993 814419375 814419375 944629540 989104662 989104662 757662643 444597272 437003822 428393504 583026177 853601336 853601336 772983516 772983516 809622456 809622456 259942639 226771972 149485484 149485484 154735240 154735240 71764520 88759968 88759968 81653448 81653448 338112810 365353194 365353194 128116578 128116578 390632296 390632296 26526986 303717074 735327379 810075331 810075331 693063557 693063557 906178587 906178587 202586655 540067424 556917537 573673793 573673793 545390896 125580232 125580232 83141784 70513416 67195648 4003168 282299202 282299202 146351940 421011810 421011810 263967384 263967384 262351472 481286374 481286374 413728342 607202001 647402317 647402317 918026035 918026035 566366433 653168865 806930075 806930075 827347608 922931259 922931259 651143765 666827632 666827632 876124739 876124739 577148289 551682762 244225356 244225356 243407208 229250412 965467446 965467446 304902466 253755708 174064020 174064020 82125072 228623300 228623300 129025016 204488820 667834295 667834295 744664540 744664540 229641352 687875242 798830205 798830205 844798118 1024319555 1024319555 912056788 527321202 527321202 313798976 620955474 868889746 868889746 369049416 369049416 16591434 42739968 58231586 277974906 370558000 881621170 881621170 89245819 11799360 7341968 34079760 171789588 171789588 173844612 237858244 237858244 203045984 428213884 428213884 231870712 92274792 100810760 100810760 485654606 485654606 478172110 339774916 277253156 366910794 406978720 419565606 511710290 511710290 469796904 469796904 419743782 68182606 688132128 688132128 567500901 550289409 688720735 688720735 1024854645 1024854645 841230554 620240628 886261982 886261982 754170082 986195426 986195426 367787426 97635008 340086816 404501642 404501642 361303494 149326826 206471656 332173868 332173868 448811042 448811042 290702484 200988660 531515992 531515992 472260296 472260296 492606198 492606198 402565596 495411396 495411396 532223474 532223474 469706470 338823164 188179668 140697540 162319716 162319716 243801890 596775682 596775682 596389610 440875158 746985266 746985266 623521125 507129910 507129910 890249752 890249752 1007222912 1007222912 290456396 292167122 382420104 435139582 435139582 347417418 209780998 48111312 176759120 176759120 136840452 37959124 35841152 80318848 113295576 113354208 120112440 619398585 619398585 683698258 861250616 861250616 378616346 84288248 836112385 836112385 348394032 888634096 888634096 387164667 271230586 840686860 840686860 677691016 347128650 347128650 355152378 355152378 271167520 327450768 478183571 738271245 1066503362 1066503362 567605806 554828307 554828307 471256120 471256120 932059681 932059681 859028215 867234771 867234771 728879986 716215556 817398270 817398270 716177469 796164436 796164436 881157656 881157656 849137235 372252312 555749441 636296275 663561128 663561128 965749840 965749840 668928551 865471082 865471082 289021388 153001104 335559658 335559658 224716378 501553564 501553564 458770420 455101358 416494278 307145136 199944324 458685614 458685614 114167828 279556906 286275400 286275400 558956712 605102601 882032772 882032772 838493184 838493184 534113524 604564256 604564256 481575478 552215176 618869193 628167264 628167264 135659920 72747904 251215828 251215828 191950432 191950432 57807840 48838320 17615344 17614416 26164320 111118704 580094792 580094792 593976899 863952819 863952819 848353515 541848705 906322957 272632008 272632008 304724323 415138615 652268937 838290130 838290130 637798425 695339740 695339740 666786261 666786261 552588771 1007722212 1007722212 841994038 512512784 512512784 380670714 273859218 343183434 343183434 824705587 824705587 352589296 353078513 353078513 782084291 782084291 914790681 914790681 727224740 524743871 958431523 959586185 959586185 865997554 865997554 475120128 320537266 291380898 77645092 502713692 713083928 773762077 773762077 688778277 650293721 1042411725 1042411725 228631924 565183224 565183224 788976891 810469377 864434251 864434251 323098737 928676448 928676448 919771674 919771674 330041051 278954642 549049560 580691328 580691328 316352856 52564752 53742384 53742384 82968928 82968928 74849160 239165648 239165648 169975746 147965232 294795280 308245376 308245376 11646304 1184256 310428883 541590657 1022478273 1022478273 945342087 945342087 826824884 786078365 786078365 613780768 755247492 755247492 758855469 758855469 655954196 678215857 678215857 574727312 574727312 481871742 481871742 883030980 883030980 603101010 889414150 889414150 741511204 631820805 680186949 759351425 803488165 803488165 562650116 321905952 680483191 680483191 336341001 336341001 879365290 879365290 1007215680 1007215680 1048625247 1048625247 992865411 290265673 50925920 430079072 988407735 988407735 1067345595 1067345595 1019356256 1030495343 1030495343 673397998 663500093 628363344 211552913 692348480 692348480 549869568 597524832 597524832 705787476 705787476 422747424 422747424 329462130 333863176 482814339 832569837 1031799592 1031799592 951059271 903954506 903954506 890257678 622952544 522190911 184549652 136315140 716704004 716704004 89426212 852607885 852607885 434276838 624993137 624993137 574644858 823182568 823182568 829028226 829028226 901726584 901726584 792456265 417317422 589064193 589064193 341952014 407964298 407964298 880834272 880834272 209848048 552196809 616771785 677055936 685576709 685576709 551030613 186398416 175789997 699068916 699068916 32417185 154926248 638911234 908405019 908405019 473245961 238365468 270249536 812107378 812107378 852561811 852561811 842265363 842265363 358436457 904463786 904463786 267774972 748710840 748710840 651183009 651183009 216310297 545558993 625027101 678690916 682338992 991350918 991350918 844433920 844433920 457574578 445023828 445023828 474690702 474690702 203701020 234954780 291764540 291764540 533734230 533734230 489836968 405268322 405268322 118489656 297838224 297838224 338506906 338506906 118831578 300169224 300169224 284248322 402814720 402814720 117861104 391303174 391303174 520169208 520169208 480101398 696902209 696902209 543449925 543449925 686576448 686576448 816844802 816844802 976008151 977426567 977426567 443155713 34686080 39446160 39446160 81389256 83579136 83579136 75925216 513425734 513425734 514630426 514630426 506586190 506586190 519113304 519113304 387237658 337150112 23086602 5128360 88087680 271497472 271497472 336165890 709931012 709931012 575926929 240214685 203565240 203565240 221266472 540233996 540233996 683892169 683892169 691284308 948271605 955726791 955726791 688986311 678712613 191691697 561752580 561752580 559353732 56925504 46610640 43465616 301990184 301990184 85983250 202874960 690243620 787357149 1001280336 1001280336 534906161 414073926 483324110 483324110 396215192 277909826 277909826 1051933906 1051933906 555778987 360719211 609778888 903570403 903570403 865632288 780192728 678693765 1015341284 1015341284 212682121 960726682 960726682 651783800 651783800 597765178 824322376 969152413 969152413 545004561 713369685 715528565 715528565 563491668 410004290 406855122 135851426 461326960 461326960 288624930 288624930 288151808 470890798 503765022 503765022 204355858 176163002 374605642 374605642 370461210 445917696 445917696 444670038 409869122 409869122 470223056 484886620 484886620 481328204 476890382 476890382 156243850 156243850 496064006 496064006 190438942 496551534 518668604 518668604 898963591 898963591 713064512 713064512 686242245 491445352 772516772 772516772 599920881 553189040 553189040 479462350 479462350 427297188 427297188 497725608 497725608 349034675 349034675 269264507 701778112 701778112 679812639 717025312 717025312 258454032 202116108 273049760 487586862 792882363 792882363 692244645 692244645 678205584 909503253 909503253 397697248 915548449 915548449 892793259 892793259 1033167435 1033167435 680827141 673644550 687155304 891785440 891785440 627483200 627483200 578214801 568272221 568272221 865962314 902231271 970097290 970097290 696584920 696584920 796421672 796421672 753263928 196347152 196347152 139463408 35652368 35652352 7356480 72385928 72385928 14428224 117771016 117771016 25929024 25929024 25814336 75278984 75278984 96224288 297943372 497205614 497205614 218530584 218530584 188144436 255514428 255514428 152630924 221203820 221203820 197851620 195316064 99405692 138682468 219702052 219702052 219519016 1069546456 1069546456 674579036 674579036 313526865 891077704 891077704 180490880 180490880 884998336 884998336 609754154 891560111 891560111 879347208 437318833 943817739 943817739 445645398 445645398 428513216 428513216 181968912 148498116 246554736 285726556 285726556 29046624 396222064 396222064 364382058 278945066 413138980 413138980 287310028 293348834 293348834 280835974 151194530 419825792 419825792 285869092 424154406 424154406 157943010 162006210 681741990 681741990 425771430 962728494 962728494 883397541 767570676 776944797 966007168 966007168 818393282 818393282 805673642 805673642 273227463 819808327 819808327 948206144 948206144 836300933 986861135 986861135 458675872 626185419 626185419 80117432 839991361 839991361 211935564 724795817 724795817 403133000 403133000 341466240 542940161 542940161 274471554 1045046592 1045046592 949163071 822161670 813172430 813172430 46711873 897815781 897815781 985534862 985534862 925418811 925418811 832176516 924568688 924568688 840068242 997031879 997031879 600648945 335138528 428252514 552109123 556794115 556794115 740487170 1036913766 1036913766 629149792 1023554300 1039143713 1039143713 963728431 824890310 479867954 610151597 610151597 933314773 1027859117 1027859117 967002336 946338183 549843015 556687617 556687617 631312424 631312424 906115409 906115409 872814603 834886673 747320397 747320397 680110656 479251072 479251072 420874778 420874778 213911052 175497852 175497852 666056712 666056712 419741798 419741798 321051814 248637018 937551602 937551602 948410593 948410593 911826998 911826998 697848973 697848973 672927237 768746981 776444317 776444317 654626993 814419375 814419375 670156194 670156194 292086777 444597272 444597272 428393504 833650822 833650822 545950605 915005354 915005354 724331097 955792052 955792052 889284295 559152428 496384608 73007296 28979360 29373792 29373792 24729056 24729056 11113600 25265600 25265600 14681440 360980544 360980544 8980586 0 8440832 9210880 9210880 735327379 810075331 810075331 693063557 693063557 906178587 906178587 202586655 540067424 556917537 573673793 573673793 545390896 115745352 115745352 38110808 34534464 40071616 40071616 22808640 22808640 12705984 15108544 159980040 159980040 162341888 262351472 262351472 206241576 209066369 607202001 647402317 647402317 918026035 918026035 566366433 653168865 806930075 806930075 314594514 314594514 38398100 172352656 177348692 177348692 176710656 348428552 348428552 330042449 453774454 992168202 1016069199 1016069199 965467446 965467446 725092149 725092149 917700985 917700985 589500992 251084922 457233846 457233846 512251164 512251164 172378148 72090476 749216128 751379661 751379661 798830205 798830205 262132869 242609052 426104822 426104822 527321202 563820129 607783217 620955474 632032617 632032617 369049416 638084129 638084129 271527017 58231586 277974906 1025087055 1025087055 607701753 607701753 313143683 313143683 313050450 974779541 974779541 979987036 979987036 940455003 940455003 696984934 455677700 403966470 403966470 504105998 504105998 485654606 485654606 478172110 488128704 488128704 416325444 366910794 950291044 950291044 511710290 469796904 469796904 419743782 68182606 165168708 165168708 440524950 440524950 357829290 374657682 374657682 370199232 609815609 609815609 312621096 360349954 656061440 817368898 817368898 367787426 97635008 340086816 404501642 404501642 361303494 164676768 160325232 332173868 332173868 241459128 138300160 198037584 198037584 244197604 244197604 235145244 112261456 97942088 97942088 233806688 512049260 512049260 84215852 84215852 254672896 254672896 188179668 22384564 160529296 160529296 149407492 199155444 199155444 154017060 154017060 23471524 606149440 606149440 28190784 28190784 95292832 95292832 73139880 85464448 101580906 292167122 388428002 428382516 428382516 384970564 384970564 235995730 336203040 336203040 217711152 297326350 297518816 297518816 228245942 448804092 448804092 619398585 619398585 62128080 341859522 378616346 378616346 84288248 836112385 836112385 564527608 564527608 1062091806 1062091806 709462374 92413320 75890808 36317096 127351416 127351416 447128892 447128892 250114934 327450768 327450768 42559522 1066503362 1066503362 567605806 554828307 554828307 471256120 471256120 932059681 932059681 987270931 987270931 867234771 728879986 716215556 682100037 579498828 581458814 916864788 991633505 991633505 881157656 849137235 372252312 372252312 534982704 534982704 169611062 169611062 155725028 155725028 216930082 289021388 289021388 154273696 153001104 130597688 224716378 478013006 628249323 628249323 416494278 804753661 804753661 628320745 634386974 634386974 653650905 653650905 632890697 632890697 558956712 605102601 605102601 341312610 838493184 838493184 534113524 534113524 256656404 256656404 221007168 252745436 252745436 261266464 261266464 93655852 251215828 251215828 191950432 191950432 145868976 170760256 170760256 42355056 72955488 111118704 580094792 580094792 593976899 863952819 863952819 651814388 906094380 1005339105 413146349 645026771 645026771 415138615 415138615 838290130 838290130 633632209 695339740 695339740 162460712 552588771 552588771 579578042 841994038 841994038 512512784 512512784 115377208 84066360 119691304 119691304 79827144 538375370 805683849 805683849 291676555 485020222 485020222 333302476 520692798 520692798 535112190 535112190 436470796 436470796 491839738 491839738 475120128 806619651 806619651 1030221084 1030221084 713083928 773762077 773762077 553680896 470315042 470315042 228631924 228631924 565183224 565183224 612840689 612840689 83935272 731018722 731018722 928676448 977488542 977488542 919771674 311880474 278954642 549049560 580691328 580691328 316352856 72665736 3595008 140676772 153616584 216007116 216007116 239165648 316375300 316375300 268466134 28386144 28386144 118219120 300999692 443282838 443282838 541590657 1022478273 1022478273 945342087 945342087 826824884 786078365 786078365 767135856 135740936 728335856 728335856 231001029 248433736 261003004 261003004 193386496 193386496 55499904 178782592 180880596 180880596 147336656 575087937 741511204 741511204 880580874 880580874 759351425 803488165 803488165 552215296 3216833 579639369 579639369 336341001 336341001 879365290 879365290 414393947 917106951 1048625247 1048625247 992865411 273614144 273614144 430079072 674548996 789977653 804094597 804094597 1015981509 1030495343 1030495343 783335544 783335544 743755681 705796624 705796624 692348480 262958744 597524832 597524832 705787476 705787476 805794004 805794004 727171503 201847353 482814339 832569837 1031799592 1031799592 951059271 903954506 903954506 622952544 622952544 522190911 402657282 336728150 336728150 265950048 265950048 98847690 1005323930 1005323930 429318136 574644858 574644858 120433592 91151784 618973085 618973085 901726584 901726584 417317422 637610152 637610152 558104601 341952014 407964298 407964298 880834272 880834272 640541928 545456264 616771785 616771785 214461504 67120328 536871180 536871180 691578040 691578040 671773573 222935180 222935180 638911234 908405019 908405019 473245961 546324992 546324992 812107378 812107378 852561811 852561811 842265363 842265363 358436457 904463786 904463786 723786569 748710840 770369576 770369576 651183009 681179408 681179408 625027101 625027101 570700309 991350918 991350918 844433920 844433920 457574578 437682576 437682576 421936550 421936550 194824946 48883152 143353296 216154092 533734230 533734230 489836968 405268322 405268322 180490452 297838224 297838224 51906096 390468472 390468472 334237170 134437056 134437056 5165636 60651744 97370216 97370216 178689593 178689593 250117772 250117772 696902209 696902209 543449925 543449925 686576448 686576448 816844802 816844802 976008151 977426567 977426567 864816805 951917127 1029449892 1029449892 899155563 899155563 898936538 898936538 867648450 1021507404 1021507404 514630426 506586190 506586190 519113304 519113304 387237658 36231978 50380816 50380816 88087680 440592527 637824283 913196187 913196187 776679446 575926929 506072209 561056166 791755659 791755659 137507097 560427944 756328876 756328876 691284308 948271605 955726791 955726791 688986311 678712613 191691697 561752580 561752580 559353732 51796512 114316240 114316240 568757758 568757758 525716108 525716108 525687442 1069846009 1069846009 1001280336 534906161 414073926 483324110 483324110 396215192 277909826 277909826 1051933906 1051933906 555778987 360719211 609778888 903570403 903570403 780192728 780192728 678693765 584336853 541639809 317359914 941949015 941949015 1003859064 1003859064 775946397 647511602 674373077 674373077 984069650 984069650 187031828 296765974 410004290 410004290 278039170 278039170 278153792 278153792 288624930 288624930 288151808 503456432 503765022 503765022 319939122 319939122 374605642 374605642 370461210 445917696 445917696 444670038 214040592 385846488 385846488 484886620 484886620 481328204 142223872 142223872 86592288 90576384 90576384 29389960 21092736 21092736 688075264 688075264 673585413 58825541 713064512 713064512 317616625 325627844 772516772 772516772 174976404 323869828 323869828 238027548 238027548 449651412 449651412 497725608 497725608 199566532 545521738 545521738 1005826514 1005826514 845552125 439824350 439824350 258454032 202116108 280268578 487586862 792882363 792882363 699011432 692244645 678205584 909503253 909503253 397697248 915548449 915548449 892793259 892793259 1033167435 1033167435 680827141 673644550 687155304 891785440 891785440 128193314 21453072 663355648 663355648 113324401 865962314 865962314 360713811 119892320 118669568 100712472 105971904 105971904 59852880 59852880 35389480 43026272 49291776 49291776 46227920 44147344 34677520 34677264 8454736 11154368 14881856 17359424 17359424 16994432 21094560 21094560 297943372 497205614 497205614 218530584 218530584 188144436 255514428 255514428 209348388 221203820 221203820 197851620 157150886 210764364 499245730 499245730 969740515 969740515 1069546456 1069546456 674579036 674579036 313526865 891077704 891077704 214122508 411426880 884998336 884998336 609754154 891560111 891560111 532584418 377517334 490344590 490344590 445645398 445645398 428513216 428513216 301556856 301556856 272696348 2622720 2622720 10959168 61160704 61160704 269484032 269484546 270533154 270533154 420937858 420937858 30939684 831915653 831915653 285482050 285482050 406460166 406460166 973348113 973348113 1065359776 1065359776 897634564 897634564 501629439 544311434 544311434 139080385 75666752 966007168 966007168 818393282 818393282 768292065 768292065 273227463 819808327 819808327 948206144 948206144 479633282 986861135 986861135 445305942 626185419 626185419 473152616 473152616 119022464 123209400 123209400 24719000 21309600 21897248 21897248 21429248 151919616 151919616 642254276 810235355 810235355 398132510 813172430 813172430 803910068 897815781 897815781 985534862 985534862 1071296324 1071296324 832176516 960495924 960495924 840068242 997031879 997031879 689473888 689473888 428252514 552109123 556794115 824841216 824841507 1036913766 1036913766 629149792 1023554300 1039143713 1039143713 963728431 474656933 210016718 383326844 438258354 469835874 469835874 967002336 967002336 946338183 549843015 556687617 556687617 875123995 933954593 933954593 94975346 834886673 834886673 915525978 915525978 857862452 479251072 613419208 613419208 888438946 888438946 695933387 425291716 877640978 877640978 834408291 834408291 628679764 239144950 280125468 1068090172 1068090172 979072029 833230179 692060568 692060568 419431195 304226852 35836176 67158024 755763360 755763360 583671190 434953440 670156194 670156194 850469715 850469715 431022455 285245702 833650822 833650822 845862291 1002059675 1002059675 898717460 955792052 955792052 889284295 559152428 496384608 206255244 154349512 154349512 95261792 95261792 75320896 75480392 77065794 295066338 295066338 360980544 360980544 121749008 100544064 290206474 338857640 338857640 315147736 411878246 454034290 454034290 473802860 473802860 354265848 354265848 445204238 445204238 127263242 107419216 133695480 463346130 512192536 512192536 402709896 402709896 83437068 228894840 228894840 169414176 8437824 44833656 76810824 76810824 70519560 70519560 125486672 125486672 364953834 364953834 303317978 295981856 213158496 117966080 211321960 291247006 396102677 396102677 340479198 340479198 302047419 788933936 923531535 923531535 920526555 384619265 330042449 453774454 992168202 1016069199 1016069199 690534762 715339360 725092149 725092149 917700985 917700985 589500992 251084922 457233846 457233846 512251164 686891555 686891555 806150358 806150358 798794513 751379661 106700967 118557304 645931820 645931820 588742496 588742496 195825012 563820129 607783217 607783217 573774664 382804178 382804178 638084129 638084129 271527017 53377057 71812160 1025087055 1025087055 607701753 607701753 313143683 313143683 313050450 974779541 974779541 979987036 979987036 940455003 940455003 723253569 455677700 572235051 572235051 504105998 504105998 867491151 867491151 471198304 488128704 488128704 808113411 808113411 982667814 982667814 973440375 973440375 923172126 923172126 894541545 894541545 1015162035 1015162035 440524950 341258952 374657682 910216419 910216419 1061481501 1061481501 194891420 194891420 167996972 164041284 148206152 18413344 134957568 138789036 202792992 202792992 164676768 164676768 151017092 151017092 283549026 283549026 138300160 468020660 487395506 487395506 193956984 193956984 121844872 356956304 356956304 290614788 512049260 512049260 280832746 501104514 501104514 439029044 192987252 201070196 201070196 160529296 19086704 27862368 145630464 154017060 154017060 23471524 741933356 741933356 78124577 558442304 558442304 221450537 156767408 156767408 131870168 131870168 388428002 428382516 428382516 384970564 384970564 235995730 336203040 336203040 217711152 297326350 297518816 297518816 228245942 448804092 448804092 161517160 198972562 308466066 308466066 353370666 353370666 75895352 396479536 869036170 869036170 715194379 1062091806 1062091806 709462374 612374600 612374600 587487353 986236910 986236910 1065257052 1065257052 269950376 561366326 561366326 544513086 601736300 831529532 831529532 290904738 274092594 375726908 527993734 645416066 806947152 987270931 987270931 302797783 44701008 44701008 579498828 579498828 102221990 916864788 991633505 991633505 126878328 400484866 400484866 541524787 716709943 716709943 933378066 1058144783 1058144783 832703817 593560480 593560480 154273696 154273696 152313504 251404720 251404720 338538635 628249323 628249323 400123089 804753661 804753661 628320745 634386974 634386974 653650905 944035986 944035986 763766142 763766142 251368578 895158476 895158476 780039356 797566077 797566077 210043169 114333832 133910544 210289896 252745436 252745436 261266464 261266464 93655852 26552928 45273936 45273936 24342304 145868976 170760256 170760256 61528320 72955488 571916537 571916537 17995952 660607976 660607976 875684119 956375818 956375818 1005339105 413146349 645026771 645026771 387763770 326602306 127431176 127431176 87835232 87835232 613109825 613109825 482143575 482143575 362757738 362757738 1054756133 1054756133 554648632 75936968 35656152 119691304 119691304 79827144 875607520 875607520 805683849 824365538 828538880 828538880 922853469 922853469 941654038 1000341879 1000341879 814216233 918626523 918626523 899880594 289616993 806619651 806619651 1030221084 1030221084 172829662 788700223 788700223 797036613 797036613 470315042 553727779 553727779 79092552 541161619 612840689 612840689 236684376 731018722 731018722 805384348 977488542 977488542 508866711 191201460 191201460 524400660 524400660 246900056 246900056 103971594 103971594 140676772 153616584 393827747 393827747 805315856 805315856 578114707 307867313 549989376 606544010 606544010 846718546 846718546 605945728 136573188 384909692 384909692 218104656 296857750 401839054 401839054 1016503506 1016503506 816764654 816764654 424173505 120155988 248433736 261003004 261003004 55194036 38660624 139222372 178782592 180880596 180880596 147336656 575087937 623714988 623714988 880580874 880580874 638418612 687614428 687614428 592566960 592566960 384495306 384495306 396571002 396571002 66768568 540764696 540764696 1055884763 1055884763 305080392 305080392 565375428 727571111 727571111 674548996 674548996 495691586 495691586 313281680 86032680 180504028 783335544 783335544 743755681 705796624 705796624 542469344 262958744 262958744 189292832 89393832 373756720 805794004 805794004 727171503 740362288 740362288 643836089 675731840 685134012 685134012 807411968 807411968 536961280 536961280 587276657 587276657 748691528 748691528 713040149 622926182 934096251 1005323930 1005323930 429318136 429318136 647302136 647302136 398795609 269822466 150800352 412090948 412090948 77853000 671175800 671175800 713387102 713387102 205285128 205285128 123873169 640541928 640541928 255020257 579697945 801640801 801640801 797458625 666127644 666127644 691578040 691578040 671773573 222935180 222935180 102843560 100207997 155852966 686166442 686166442 546324992 838113600 838113600 283909986 275554434 930665410 930665410 372426809 612442338 723786569 723786569 721942581 770369576 770369576 543339049 681179408 681179408 241297704 241297704 171991184 171189908 171189908 40924160 305172242 305172242 331169362 331169362 323970706 323970706 176794134 48883152 283904960 346194848 346194848 361048898 361048898 349503808 123863404 180490452 229382136 229382136 51906096 390468472 390468472 334237170 383914458 510792090 510792090 277815516 161496880 132182252 55835424 52080480 52080480 35916048 270215172 270215172 139084548 143532288 143532288 12974848 10181188 143692804 169120268 169120268 256312967 864816805 951917127 1029449892 1029449892 899155563 899155563 898936538 898936538 867648450 1021507404 1021507404 91853154 369626960 388105744 388105744 57935504 57935504 121651688 121651688 83937320 129717678 493533048 637824283 913196187 913196187 1009446943 1009446943 506072209 561056166 952972401 952972401 589335090 790238781 790238781 756328876 2435328 4277408 17425440 17425440 17425440 21536896 21536896 155668608 155668608 274617521 322697010 737759655 737759655 568757758 568757758 525716108 1028053167 1028053167 1069846009 1069846009 721439926 1008623542 1008623542 883391942 692849706 692849706 623449069 457252902 1045988536 1045988536 888144843 888144843 656563121 656563121 308769753 805800121 870773525 870773525 831857319 830546019 341745861 941949015 941949015 1003859064 1003859064 775946397 172230665 115293912 46019784 984069650 984069650 681897524 561896471 561896471 955076308 955076308 944573539 730301456 730301456 684013601 553973136 250086876 503456432 503456432 491991726 319939122 338521052 350342446 350342446 313366552 313366552 285475380 285475380 214040592 385846488 385846488 136803034 134291460 139202944 139202944 87813288 87813288 75797512 134743044 375909170 375909170 162038892 1056173776 1056173776 937527559 1034265471 1034265471 745597879 381790373 344244296 344244296 8916992 13767360 13767360 170921096 238027548 238027548 449651412 449651412 257974660 257974660 148996236 545521738 809609297 1005826514 1005826514 845552125 415367519 251152256 251152256 79971444 280268578 280268578 52594904 699011432 699011432 286660431 101718544 325897330 370149194 370149194 333221186 333221186 99540456 99540456 74634120 621941092 621941092 807848996 807848996 145232481 353960264 641533002 641533002 663355648 663355648 113324401 648910848 648910848 57383289 118669568 188821888 611340960 611340960 229873025 160043352 205241088 212484416 212484416 58232224 49291776 46227920 96026712 96026712 61874960 89424760 89424760 59905632 17359424 17359424 84644552 84644552 84128608 88241056 88241056 98697320 98697320 67113024 156511216 161914864 209348388 234345208 240265868 240265868 138547332 398858920 398858920 499245730 499245730 969740515 969740515 553564089 411266582 950408000 950408000 952930770 952930770 713661940 713661940 709099667 843452566 843452566 278921538 278921538 532584418 532584418 535112190 535112190 489229594 517682910 517682910 458831096 459349728 459349728 350021984 350021984 219414150 112083336 112083336 109187160 61160704 53292336 52597024 421527556 421527556 420937858 420937858 30939684 831915653 831915653 285482050 285482050 406460166 406460166 973348113 973348113 1065359776 1065359776 897634564 1022624394 1022624394 1018432335 321923367 1036272050 1036272050 841263379 602075293 852461736 852461736 621157573 621157573 99673965 496242542 496242542 636767404 695243692 695243692 479633282 445305942 445305942 391660130 379360806 473152616 473152616 182290936 119022464 139981228 525456968 525456968 491225134 491225134 408422022 290416256 290416256 151569444 360805574 360805574 305283786 305283786 464527396 803910068 803910068 760903215 306091735 950325752 1071296324 1071296324 960569511 960569511 960495924 724072067 942311697 942311697 689473888 689473888 275518599 287444578 961019108 961019108 824841507 889852936 889852936 822083619 547427761 414270738 414270738 157913094 210016718 210016718 383326844 438258354 930362011 930362011 899432714 899432714 605015089 833226089 833226089 569166147 875123995 933954593 933954593 94975346 394528258 394528258 915525978 915525978 857862452 469873366 613419208 613419208 888438946 888438946 695933387 425291716 877640978 877640978 834408291 834408291 648401881 649932377 649932377 1068090172 1068090172 979072029 833230179 730086060 803229736 803229736 677644673 778963085 778963085 755763360 755763360 838955477 838955477 434953440 305250369 850469715 850469715 431022455 967492724 967492724 602715877 845862291 1002059675 1002059675 898717460 267380212 267380212 224812864 150159852 206255244 206255244 154349512 154349512 95261792 95261792 75320896 75480392 77065794 295066338 295066338 287443522 273103264 121749008 100544064 290206474 338857640 338857640 315147736 42958864 52458096 339365736 473802860 473802860 354265848 354265848 445204238 445204238 127263242 100308776 500698660 500698660 512192536 512192536 402709896 402709896 83437068 228894840 228894840 169414176 8437824 44833656 76810824 76810824 70519560 70519560 125486672 125486672 105388020 147070928 147070928 3440800 37881104 53219328 53353776 168352264 396102677 396102677 340479198 340479198 445183014 788933936 923531535 923531535 920526555 629065888 392321169 105257112 324407960 324407960 896569916 950702387 950702387 408584958 1044552816 1044552816 488587724 367586702 386220872 447007062 481583378 481583378 686891555 686891555 806150358 806150358 798794513 703406919 156907128 156907128 645931820 645931820 588742496 588742496 320938290 382410208 382410208 374020226 290798738 382804178 382804178 346893642 269086162 269086162 101541200 77908296 80690376 156397912 188669748 188669748 48518884 11797888 6818624 790210845 790210845 304535058 489689655 489689655 723253569 724430133 724430133 572235051 825167375 942702404 1035784047 1035784047 965774600 346027054 347392842 355332963 808113411 808113411 982667814 982667814 973440375 973440375 923172126 923172126 894541545 894541545 1015162035 1015162035 933103155 941440711 941440711 910216419 910216419 1061481501 1061481501 813773328 218813484 218813484 156688896 156688896 14376132 138477568 138477568 134619268 16527808 16527808 30579488 65451776 65451776 283549026 283549026 21546144 468020660 487395506 487395506 255179812 255179812 226111884 356956304 356956304 290614788 429916356 429916356 280832746 501104514 501104514 439029044 736682197 736682197 829473699 829473699 840436579 840436579 555303507 270304535 205133608 814557735 814557735 741933356 78124577 558442304 558442304 221450537 156767408 156767408 131870168 131870168 94715728 346207432 346207432 569442855 569442855 500835328 734863420 734863420 695087729 283070134 337106822 1031108524 1031108524 991844637 875071768 866237593 866237593 308466066 308466066 353370666 670157584 670157584 396479536 1013724280 1013724280 715194379 841368024 841368024 390193338 612374600 612374600 587487353 986236910 986236910 1065257052 1065257052 269950376 561366326 561366326 544513086 601736300 831529532 831529532 271068672 676924679 676924679 527993734 926036612 926036612 760389402 556623156 556623156 524949335 1008207380 1008207380 840030944 840030944 764692997 831086211 831086211 126878328 400484866 400484866 541524787 716709943 716709943 933378066 1058144783 1058144783 832703817 781590024 781590024 544714374 39617792 62951312 251404720 348443490 348443490 381163099 910104240 1036813066 1036813066 316820370 495284928 684059002 690133953 690133953 944035986 944035986 763766142 785104039 785104039 895158476 918601929 918601929 1019010142 1019010142 949900335 582545670 133910544 210289896 210289896 243419288 243419288 69228544 74975112 74975112 67769216 55936608 55936608 47049936 28936992 29224800 61528320 575988052 693332092 693332092 254947500 764943907 764943907 875684119 956375818 956375818 854288490 471899820 734139062 734139062 387763770 326602306 127431176 127431176 224330420 224330420 613109825 613109825 611719457 556145545 362757738 362757738 1054756133 1054756133 554648632 128853336 128853336 85847592 38486112 149488250 875607520 1028674390 1028674390 896532971 903921845 996278643 996278643 922853469 941654038 1000341879 1000341879 814216233 918626523 918626523 899880594 295699008 295699008 723057134 960965105 960965105 721745307 1063809348 1063809348 996672951 937613384 937613384 932797516 1058661951 1058661951 343991901 100725824 109786200 549486592 549503169 550551753 805384348 805384348 474118305 336619776 191201460 191201460 524400660 524400660 385219288 385219288 103971594 103971594 68330915 68330915 393827747 806793858 806793858 805315856 578114707 543162752 549989376 606544010 606544010 846718546 846718546 605945728 58253104 661703408 969690753 969690753 296857750 401839054 401839054 1016503506 1016503506 816764654 816764654 913968637 913968637 646976696 646976696 150995712 167793408 171102996 171102996 139222372 580582037 717017205 729931893 729931893 623714988 623714988 765216009 765216009 638418612 687614428 687614428 907986865 907986865 384495306 384495306 396571002 396571002 312165984 540764696 540764696 1055884763 1055884763 386206008 386206008 993531044 993531044 985661655 985661655 961920977 967259426 967259426 360047349 416917385 416917385 197660884 197660884 872664223 872664223 689797028 605122375 165014244 233675564 233675564 690897292 767626150 767626150 555923471 555923471 740362288 740362288 643836089 157421988 685134012 685134012 270548992 441649464 669334450 683983261 683983261 587276657 748691528 748691528 713040149 622926182 1057564046 1057564046 511923842 1017170648 1017170648 856912185 856912185 398795609 973429496 973429496 412090948 412090948 121637906 671175800 671175800 713387102 713387102 272756434 341403922 371000064 592106673 592106673 255020257 579697945 801640801 801640801 797458625 666127644 666127644 677380793 677380793 225465049 701532718 965492987 979970940 979970940 708975137 708975137 686166442 105924685 898328264 898328264 606191745 275554434 930665410 930665410 913438104 893571202 893571202 712850624 981322516 981322516 499313295 1049575676 1049575676 19733317 73728 16842804 134284164 171189908 171189908 22552116 305172242 305172242 331169362 331169362 277368896 277368896 95691642 8182144 283904960 346194848 357628512 361048898 361048898 349503808 293769506 94552448 279040392 280195378 286986806 296105526 312813906 312813906 383914458 510792090 510792090 316759722 161496880 411474208 513294883 513294883 84601402 84601402 822928197 822928197 680504385 680504385 807333636 955613824 955613824 549006978 457431182 457431182 872858289 872858289 100868096 102850888 109134144 109134144 276865104 281027910 970215944 970215944 37517304 37517304 77338656 77338656 14944192 43305552 57935504 171885064 171885064 139501400 212077584 212077584 493533048 493533048 502625006 801187438 1009446943 1009446943 1029918019 1029918019 952972401 952972401 589335090 790238781 1001570913 1001570913 736238212 959518901 973586455 973586455 735153045 735153045 140138161 677852709 677852709 274617521 322697010 737759655 737759655 252781168 239210652 239210652 1028053167 1028053167 906383789 906383789 766958445 1008623542 1008623542 883391942 692849706 692849706 623449069 457252902 1045988536 1045988536 888144843 888144843 656563121 656563121 558905362 805800121 870773525 870773525 831857319 830546019 341745861 322119944 693209248 693209248 793772197 793772197 240321161 290596418 290596418 874437187 874437187 681897524 561896471 561896471 955076308 955076308 944573539 730301456 730301456 684013601 553973136 279935936 274204290 245891200 318391440 318391440 381241424 381241424 393546328 393546328 335618058 313786692 333722858 478550894 478550894 480558158 480586062 480586062 405219660 137287808 219183016 224008616 224008616 134743044 375909170 375909170 162038892 1056173776 1056173776 937527559 1034265471 1034265471 745597879 381790373 463890308 817972256 817972256 23068320 107304816 107304816 80614816 40167776 80021968 367069236 419438896 419438896 75505665 545772042 836020640 836020640 69605640 466554153 768421101 768421101 83700805 898133691 898133691 814753483 754139629 26215104 672661608 672661608 671089664 940312585 940312585 136628042 806109577 806109577 616298313 812480833 879829899 879829899 807850567 948143394 948143394 876320313 654881066 641533002 641533002 611193608 611193608 321983414 648910848 648910848 606460785 606460785 563465025 611340960 611340960 229873025 226866112 225893292 212484416 212484416 58232224 4768896 29936992 96026712 96026712 61874960 89424760 89424760 59905632 15930784 15930784 84644552 84644552 84128608 88241056 203681836 203681836 218308888 218308888 296821302 296821302 103274956 234345208 240265868 240265868 659492067 659492067 966564709 966564709 532291588 532291588 473414984 473414984 630158990 1044979080 1044979080 952930770 952930770 713661940 713661940 709099667 843452566 843452566 327602962 327602962 547094354 547094354 535112190 603996193 603996193 517682910 576796841 576796841 459349728 459349728 473579004 723452849 723452849 434634918 792541597 792541597 512617566 512617566 453082370 421527556 421527556 488932110 488932110 273696832 412090772 412090772 200344720 394330811 550576833 846635617 859233075 859233075 961435083 1007422479 1007422479 1022624394 1022624394 1018432335 321923367 1036272050 1036272050 841263379 602075293 852461736 852461736 972089065 972089065 281128518 496242542 543822996 636767404 739430576 739430576 268354692 721033157 721033157 231212544 699323879 699323879 832569879 832569879 915275882 968103892 968103892 525456968 491225134 491225134 408422022 290416256 290416256 169366532 541855508 728636853 728636853 725427969 543823233 793318816 793318816 774058269 936907876 950325752 950325752 953262948 960569511 960569511 271846146 271846146 1030639578 1030639578 868535635 202208657 164869856 164869856 961019108 961019108 272704806 889852936 889852936 822083619 818095555 383980129 308851824 308851824 309218320 309218320 350078696 507720404 930362011 1048842917 1048842917 605015089 605015089 833226089 833226089 569166147 569166147 866716107 866716107 209330702 759235595 759235595 789998091 1043383071 1043383071 1007784767 404752640 404752640 402917382 474220550 474220550 959722406 959722406 703449702 703449702 453580853 648401881 649932377 972029838 972029838 818400459 818400459 730086060 730086060 803229736 803229736 677644673 778963085 778963085 756310956 756310956 838955477 838955477 489714470 152008996 722584756 742995861 742995861 967492724 967492724 815819560 815819560 757372318 112133193 108337020 252827956 267873312 267873312 235616200 79048512 77730120 76991232 76991232 9489160 19761440 19761440 15674880 67371264 67371264 30433408 97788832 97788832 68157760 78644040 78644040 98994944 98994944 278937603 807452931 815456555 889296448 889296448 347176194 277922370 456976302 456976302 646784043 889323739 889323739 667422801 953821994 953821994 873406533 808154146 285015590 285015590 83677154 123567352 123567352 432431186 432431186 62963952 62963952 54864048 273169658 273169658 143073416 486615082 486615082 49732048 17299488 121462936 121462936 113863504 123971600 123971600 11600608 8706304 147078340 445183014 445183014 429418774 813234442 813234442 629065888 392321169 105257112 324407960 324407960 896569916 950702387 950702387 327160155 1044552816 1044552816 488587724 331035616 386220872 447007062 481583378 481583378 265028124 265028124 90442780 81808448 81808448 68359408 156907128 156907128 184969816 184969816 27964418 320938290 320938290 360515002 360515002 53189216 42815680 343898768 343898768 299925712 269086162 271796505 641128496 641128496 724617013 724617013 228989292 228989292 619733459 619733459 339289866 809617289 809617289 304535058 489689655 489689655 657681156 724430133 724430133 537151516 825167375 942702404 1035784047 1035784047 965774600 74676552 83498952 150010536 157101732 159884992 419615604 848483090 848483090 555489391 555489391 537353508 352493568 352493568 907337848 933103155 933103155 941440711 941440711 710149784 738987021 738987021 813773328 813773328 218813484 218813484 156688896 156688896 14376132 138477568 138477568 146071556 146071556 12215492 12164544 428528292 428528292 299527776 273646768 273646768 256382488 256382488 252829600 255179812 255179812 226111884 493378402 493378402 162622308 429916356 429916356 137175318 84936576 121770312 149041724 736682197 736682197 829473699 829473699 840436579 840436579 555303507 270304535 205133608 923669113 923669113 821045584 693966816 693966816 872546824 872546824 691147557 607790552 322512690 412878784 412878784 463345536 891039496 891039496 569442855 500835328 734863420 734863420 695087729 283070134 337106822 1031108524 1031108524 991844637 875071768 866237593 866237593 185028600 234884092 234884092 670157584 709908644 709908644 1013724280 1013724280 584895059 886686892 886686892 390193338 390193338 295148248 83292808 138609036 138609036 133548960 162839484 162839484 47433728 47433728 285212706 285212706 117772880 117772880 117489720 676924679 676924679 505954338 926036612 926036612 760389402 556623156 556623156 524949335 1008207380 1008207380 840030944 840030944 764692997 831086211 831086211 50602000 50602000 325457024 325457024 351809536 439563030 439563030 410393386 363672774 407970438 781590024 781590024 544714374 34743218 60477202 60477202 348443490 348443490 381163099 910104240 1036813066 1036813066 580706160 580706160 684059002 690133953 690133953 600066386 500008470 500008470 785104039 785104039 719984085 918601929 918601929 1019010142 1019010142 949900335 582545670 379184730 379184730 311148136 243419288 243419288 212299164 115840284 134088992 134088992 55936608 55936608 135022512 196935168 196935168 241126928 575988052 693332092 693332092 254947500 764943907 764943907 713221790 713221790 854288490 854288490 886886211 886886211 876473665 881452491 881452491 843540611 843540611 224330420 224330420 546392096 611719457 611719457 556145545 156637860 257927188 257927188 202165260 134497288 128853336 128853336 131291184 131291184 149488250 149488250 1028674390 1028674390 896532971 903921845 996278643 996278643 906007000 197181684 51503664 604078649 604078649 77018296 297481344 301541346 301541346 295699008 723057134 960965105 960965105 721745307 1063809348 1063809348 996672951 937613384 937613384 932797516 1058661951 1058661951 806565441 888858371 888858371 549486592 549503169 550551753 641777857 641777857 675868719 675868719 339780416 339780416 1032237916 1032237916 594621808 385219288 54466096 108708480 108708480 8523840 277021312 806793858 806793858 538836992 543162752 543162752 539044937 279585864 81209984 75632712 341564928 341564928 542063745 876275595 969690753 969690753 943284944 408350622 234328204 1020667072 1020667072 697340837 697340837 913968637 913968637 646976696 922879051 922879051 869269692 955383954 955383954 496509642 580582037 717017205 729931893 729931893 592019568 455252754 455252754 433918348 433918348 16439232 580972977 931378129 931742072 931742072 629879913 832308235 832308235 604375360 603983712 603983712 499382439 424203558 424203558 386206008 993531044 993531044 985661655 985661655 961920977 967259426 967259426 360047349 416917385 416917385 832801476 989720535 989720535 872664223 689797028 605122375 165014244 558695921 558695921 690897292 767626150 767626150 555923471 555923471 1034624412 1034624412 737909339 737909339 563311475 709125059 709125059 553652227 669334450 683983261 1065605594 1065605594 807452931 807452931 757125383 403375534 1057564046 1057564046 511923842 1017170648 1017170648 856912185 856912185 339831790 973429496 973429496 868542646 441296119 195560820 578815416 983384349 983384349 849636055 272756434 341403922 371000064 371000064 112104594 571787720 574978521 658641081 658641081 608303281 541329537 235409904 233444844 225465049 225465049 701532718 965492987 979970940 979970940 708975137 708975137 315753343 87032616 898328264 898328264 606191745 337837194 626026312 913438104 913438104 893571202 893571202 153075072 981322516 981322516 499313295 1049575676 1049575676 785506573 785506573 184920080 545646752 562097633 562097633 40041680 40041680 850976 19033088 40401536 105658256 105658256 4642944 102009856 102009856 96610880 357628512 357628512 93712930 293769506 293769506 94552448 358745440 358745440 286986806 296105526 312813906 312813906 222012358 124779960 316759722 316759722 83510384 411474208 513294883 513294883 84601402 136953024 822928197 822928197 680504385 680504385 807333636 955613824 955613824 549006978 457431182 457431182 872858289 872858289 882716235 882716235 876653512 876653512 635640331 1029625802 1029625802 1003088434 1003088434 588872286 373851626 373851626 355863024 305823762 359568498 359568498 313580824 139501400 220725568 220725568 253279602 437763686 668701796 801187438 801187438 861964576 1029918019 1029918019 745352589 745352589 509462152 387263034 1001570913 1001570913 736238212 959518901 973586455 973586455 735153045 735153045 140138161 677852709 677852709 992150002 992150002 683880645 352859587 252781168 239210652 249566668 249566668 404771212 678315752 766958445 766958445 221564841 607701476 607701476 410249952 286879746 286879746 286838818 333689586 333689586 315757266 357568632 357568632 76884552 558905362 558905362 624092752 624092752 622540329 622540329 322119944 984663684 984663684 840967047 793772197 793772197 292889258 292889258 290596418 874437187 874437187 79686376 85329888 85329888 28312416 12792736 1048960 15729536 15729600 279953026 279953026 279935936 274204290 44851968 318391440 318391440 381241424 381241424 393546328 393546328 335618058 313786692 333722858 478550894 478550894 480558158 480586062 480586062 405219660 137287808 219183016 224008616 224008616 87061088 29625256 96360560 96360560 694864032 703777928 703777928 235969280 551600784 693159077 693159077 463890308 817972256 817972256 866646387 866646387 682489156 218219168 218219168 185598524 367069236 419438896 419438896 158564908 545772042 836020640 836020640 178260436 466554153 768421101 768421101 83700805 898133691 898133691 814753483 754139629 26215104 672661608 672661608 671089664 940312585 940312585 349700810 806109577 806109577 616298313 812480833 879829899 879829899 807850567 948143394 948143394 876320313 654881066 783802975 1058026347 1058026347 824455747 1050008283 1050008283 644604508 975484938 975484938 724804353 1035337422 1035337422 748220109 559833740 225893292 64591616 3827440 2105856 2105856 12945728 39931088 39931088 65419552 65419552 44176608 30582304 540493041 540493041 51408336 863651233 863651233 371930394 388707610 388707610 218308888 1012384749 1012384749 296821302 297020257 614334515 614334515 122915304 659492067 659492067 966564709 966564709 556870259 777721613 777721613 629278408 630158990 1044979080 1044979080 625879327 625879327 679614597 679614597 845154498 845154498 677642642 726538274 778043805 1040326023 1040326023 237110889 1013456287 1013456287 22619808 576796841 576796841 109002648 68617616 473579004 723452849 723452849 434634918 792541597 792541597 512617566 512617566 453082370 371302730 35725824 488932110 488932110 301857552 412090772 412090772 118303112 394330811 550576833 899711402 899711402 859233075 961435083 1007422479 1007422479 820385218 304401750 411233728 574768335 574768335 732533790 732533790 503997813 668067361 668067361 972089065 972089065 281128518 274026598 543822996 586290129 739430576 739430576 268354692 721033157 721033157 231212544 699323879 699323879 832569879 832569879 915275882 968103892 968103892 610529673 894910109 1024999698 1024999698 671581217 841597366 863005104 863005104 728636853 728636853 725427969 543823233 926548398 926548398 774058269 936907876 936907876 1025687609 1025687609 520142910 520142910 271846146 271846146 1030639578 1030639578 868535635 202208657 164869856 431104290 431104290 827275876 835000327 961152096 961152096 818095555 818095555 627078960 382063440 845354019 845354019 309218320 841786329 841786329 770971398 1048842917 1048842917 629431340 680186949 680186949 201366633 806104114 806104114 570763281 578426769 720124484 759235595 759235595 789998091 1043383071 1043383071 1007784767 813695621 404752640 742474767 742474767 671886343 997529638 997529638 703449702 703449702 453580853 331098978 408059810 972029838 972029838 818400459 818400459 702820561 803522957 803522957 222507176 222507176 738406413 755169801 756310956 756310956 422757126 489714470 489714470 346640876 722584756 742995861 776598066 919823018 919823018 815819560 815819560 491670480 168946492 168946492 108337020 267873312 267873312 235616200 79048512 77730120 69259520 71723016 71723016 23467392 23467392 15674880 67371264 82344384 82344384 97788832 97788832 22036672 22036672 62182416 98994944 98994944 278937603 807452931 815456555 889296448 889296448 345944177 177073236 475071036 475071036 646784043 889323739 889323739 667422801 953821994 953821994 873406533 827531395 1025716258 1025716258 83677154 167941172 167941172 432431186 432431186 62963952 62963952 54864048 273169658 273169658 165600996 486615082 486615082 49732048 17299488 121462936 121462936 113863504 123971600 123971600 11600608 8968192 43067728 60467008 60467008 557307328 878618346 878618346 594433178 594433178 44728753 554844720 587337777 587337777 932186465 932186465 915853643 903307014 527150854 331035616 331035616 461552514 461552514 321173880 471183582 471183582 265028124 505463070 505463070 471673354 434830812 40817104 136970948 184738080 184738080 243487072 497074508 497074508 178352394 2638080 374615540 498673518 498673518 485321358 167870522 92612712 563291756 733877285 733877285 724617013 724617013 739694789 739694789 706124157 619733459 339289866 809617289 809617289 36250880 67706904 201983244 221909505 221909505 259360676 591536817 591536817 235177985 412299846 594010278 761676963 761676963 571230481 638402202 638402202 729773465 729773465 848483090 848483090 590546180 466673090 96727272 352493568 352493568 907337848 907337848 627025644 1020862627 1020862627 906424384 795659709 1049041350 1049041350 616515351 616515351 731784368 974590184 974590184 411773120 411773120 205261580 146071556 146071556 139904960 55875760 428528292 428528292 299527776 273646768 273646768 146805120 252829600 252829600 188622956 188622956 162602280 493378402 493378402 71827584 302253064 302253064 137175318 84936576 121770312 712632213 712632213 1022223669 1050537567 1050537567 141421635 606644596 606644596 391784642 391784642 923669113 923669113 821045584 693966816 973213252 973213252 872546824 959475939 959475939 585241041 919078184 919078184 999580641 999580641 891039496 454660889 498283374 622342176 622342176 605763081 549927105 549927105 7148865 0 201392140 201392140 203431936 203497740 203497740 234884092 285289258 588700209 845766296 1058378285 1058378285 1043507073 317719506 886686892 886686892 618060489 618060489 433559279 302671426 584778976 644370553 734431340 734431340 162839484 54599856 47137810 285212706 392130192 392130192 297904738 297904738 330042738 505954338 505954338 540829168 607237963 607237963 329512194 915035354 915035354 933298498 933298498 895599170 895599170 395996616 848137280 848161875 932020275 932020275 662800408 446296178 351809536 481561282 481561282 410393386 379926864 407970438 674507136 674507136 275906306 275906306 272561664 35799056 2281728 1522176 34961936 34961936 134498144 134498144 580706160 580706160 153042468 461642487 600066386 600066386 341522058 383460877 781788765 781788765 113885829 285221608 349250250 354423642 354423642 399747552 399747552 379184730 379184730 311148136 216771848 216771848 212299164 115840284 134088992 134088992 199253184 199253184 135022512 196935168 196935168 241126928 241126928 100205616 100205616 710255872 710255872 908118049 908118049 659158958 659158958 1006267650 886886211 886886211 876473665 881452491 881452491 843540611 843540611 579726417 188997524 546392096 963061664 963061664 674051747 674051747 672729601 687939621 801558224 801558224 84030016 89719976 131291184 131291184 191792051 622743339 622743339 1021887693 1021887693 744490063 805384391 805384391 551608642 565183617 565183617 302391778 302391778 77018296 297481344 301541346 301541346 598547781 598547781 397701240 1011032457 1011032457 1054783753 1054783753 508374174 655260071 655260071 814893703 953609286 953609286 806565441 888858371 888858371 411288098 411288098 768606420 962119839 962119839 675868719 675868719 411371324 411371324 1032237916 1032237916 594621808 176294520 78318688 108708480 108708480 106050691 75563792 647291857 647291857 584069120 584069120 42078288 847327680 847327680 567348066 543108770 566691106 566691106 542063745 876275595 876275595 943284944 943284944 408350622 197450910 1020667072 1020667072 144349559 139823792 593283076 640511533 640511533 922879051 922879051 869269692 955383954 955383954 496509642 496509642 486606900 303355032 374071762 374071762 455252754 455252754 433918348 784931060 784931060 639602029 931378129 931742072 931742072 629879913 832308235 832308235 604375360 603983712 603983712 499382439 424203558 424203558 273711204 273711204 317598784 836305330 836305330 691204371 600217521 910792808 910792808 411311158 411311158 832801476 989720535 989720535 366687978 366687978 125942886 125942886 558695921 558695921 577975185 577975185 26004576 1061827040 1061827040 1034624412 1034624412 737909339 737909339 563311475 709125059 709125059 617342861 553652227 272666632 1065605594 1065605594 807452931 807452931 757125383 270696491 572839836 986641064 986641064 60703808 158600644 433130020 433130020 339831790 499444522 868542646 868542646 809773990 961375898 961375898 983384349 983384349 849636055 375156298 274468548 286859058 286859058 112104594 571787720 574978521 658641081 658641081 726453429 726453429 236504604 236504604 231248620 169350664 148638056 619187396 619187396 13107465 289440896 289440896 289671330 289671330 354902152 859832499 859832499 539197723 874813456 874813456 587909120 587909120 360761570 108004836 691544508 998035461 998035461 520941116 691444749 785506573 785506573 733558865 709952193 562097633 568857056 568857056 555332626 300480450 300480450 295480178 295480178 105658256 102637968 102009856 366670032 366670032 344016552 309270048 309270048 295175176 21430432 337379328 358745440 358745440 88289418 47265172 62272112 62272112 215216844 215216844 214692556 411010980 411010980 135265348 135265348 17721888 164799076 164799076 136953024 14168964 164333600 164333600 545356800 545356800 162653828 162653828 158150052 155200516 941538464 941538464 882716235 882716235 876653512 876653512 635640331 1029625802 1029625802 1003088434 1003088434 588872286 373851626 373851626 355863024 305823762 359568498 359568498 313580824 84411400 220725568 220725568 410116998 410116998 1013101330 1013101330 310902960 861964576 861964576 769975337 769975337 509462152 509462152 387263034 655959992 843128979 843128979 707993767 694311041 691516165 547756757 547756757 187980452 694028928 694028928 992150002 992150002 683880645 487588038 197658072 165515824 503592998 503592998 404771212 609915667 609915667 839960052 839960052 628278960 607701476 221657448 221657448 142397696 76283424 50814992 48488408 70118664 113348048 113348048 76884552 23474352 85723200 645076580 748163229 748163229 622540329 243033753 984663684 984663684 840967047 125411568 382289704 382289704 1054675150 1054675150 662084177 943885420 943885420 813716128 813716128 822352003 826278051 826278051 552993664 569775041 569775041 554807872 16293888 44851968 44851968 51398800 54559408 54559408 59949088 59949088 29185040 51702432 51702432 46465904 34873936 34873936 7594752 5427584 138396032 138396032 203654912 203654912 75260300 87061088 87061088 17041632 218680456 218680456 714785800 714785800 703777928 235969280 551600784 693159077 693159077 144254532 144254532 556105630 866646387 866646387 682489156 218219168 218219168 185598524 265466344 265466344 95881100 158564908 228038704 388018546 388018546 178260436 415237318 415237318 44439888 459249750 498579382 498579382 207743648 222607544 222607544 413405734 494819848 494819848 277873282 349700810 349700810 346063682 346063682 289983112 339251842 339251842 405462732 488968260 488968260 480270402 480270402 408158380 783802975 1058026347 1058026347 824455747 1050008283 1050008283 709438613 975484938 975484938 724804353 1035337422 1035337422 784976989 715198024 168263576 87260508 70426688 79694952 79694952 18063424 90249928 90249928 65419552 65419552 44176608 27564544 540493041 540493041 51408336 863651233 863651233 371930394 388707610 388707610 171829591 1012384749 1012384749 292782833 519061470 614334515 614334515 144721344 144721344 138986628 918831746 918831746 797923378 777721613 777721613 991430199 991430199 260948887 717490389 717490389 376966991 988760256 988760256 975959319 845154498 677642642 726538274 778043805 1040326023 1040326023 683934192 1013456287 1013456287 495481382 495481382 335257200 234097036 236195764 253493304 253493304 71305480 19267712 67113000 102863440 102863440 304611456 308807058 308807058 33893120 44677424 301857552 301857552 51660018 54527482 367210424 391788744 391788744 899711402 899711402 757123482 757123482 424025130 820385218 820385218 195325081 411233728 574768335 679498016 732533790 850019680 850019680 668067361 668067361 605151753 550584738 271840002 271840002 268608256 4850688 4329600 19401856 23333280 25037088 25037088 20848416 10393216 27447648 692640102 827116707 827116707 495983204 495983204 610529673 894910109 1024999698 1024999698 671581217 841597366 863005104 863005104 659052449 512270997 240368202 256959138 926548398 926548398 225146424 627053366 627053366 1025687609 1025687609 876740648 944280753 944280753 151553460 758990504 758990504 692955317 223546920 848585912 848585912 431104290 827275876 835000327 961152096 961152096 635974088 627078960 627078960 382063440 845354019 845354019 285526050 841786329 841786329 384508228 450121752 683856598 683856598 680186949 680186949 201366633 806104114 806104114 570763281 578426769 720124484 720124484 559156081 559156081 460587889 573042801 946854188 946854188 736523762 742474767 742474767 671886343 997529638 997529638 852189072 597701569 819777219 819777219 579094162 470711908 470711908 330099289 842109120 842109120 803522957 803522957 757215421 643897521 56672273 174395436 174395436 166449728 166449728 208728800 346640876 346640876 292103586 378790082 776598066 776598066 711008661 478273538 491670480 491670480 505016118 505016118 493940392 14817832 17133600 88164544 88164544 68366888 69259520 71723016 71723016 57264176 29697216 13666720 47865600 82344384 82344384 82127304 15279552 22036672 22036672 25669696 29745696 30427840 30427840 26239136 50341952 807084584 807084584 345944177 50594304 475071036 475071036 252715662 51121200 14550640 800654050 800654050 663356789 205619785 827531395 1025716258 1025716258 218449148 226921996 226921996 160582768 435936564 435936564 198492020 43256400 62013712 155504240 165600996 165600996 149139200 29797216 29797216 18085536 18085536 10662560 2232576 5402112 8968192 35156032 35156032 278236962 278236962 557307328 878618346 878618346 594433178 594433178 377671770 554844720 587337777 587337777 932186465 932186465 915853643 903307014 527150854 318243648 318243648 461552514 461552514 770203763 770203763 564782433 832389122 832389122 987778963 987778963 434830812 613340195 864704027 864704027 184738080 631910403 631910403 497074508 313090136 349319002 374615540 498673518 498673518 1027993211 1027993211 181929684 563291756 754513924 754513924 706592089 718723733 739694789 739694789 706124157 644350179 397149514 1023609101 1023609101 455086940 962662570 962662570 221909505 773483056 773483056 591536817 605156888 767738804 786335636 786335636 942783000 942783000 909761211 909761211 638402202 729773465 729773465 731466742 1053577547 1053577547 994223304 994223304 732582599 630306893 537660417 627025644 627025644 1020862627 1020862627 906424384 795659709 1049041350 1049041350 789459214 824185707 824316195 974590184 974590184 411773120 411773120 219179552 92504704 139904960 139904960 55875760 302916224 302916224 43566672 56135872 146805120 146805120 144838980 116650968 116650968 92715640 331631128 331631128 151588000 151588000 191702276 251994240 251994240 242942528 242942528 712632213 712632213 1022223669 1050537567 1050537567 405391556 606644596 606644596 801247577 801247577 699940663 699940663 685323044 446745041 973213252 973213252 537526342 959475939 1022419740 1022419740 919078184 919078184 999580641 999580641 282257091 454660889 498283374 498283374 188879184 548023680 549927105 612429103 1026932102 1026932102 947996445 543382808 203431936 220394088 220394088 533400856 533400856 285289258 845766296 1058378285 1058378285 1043507073 432067781 875023121 875023121 864305678 864305678 671878149 671878149 670609532 670609532 760877260 760877260 78920696 78920696 279901920 279901920 392130192 392130192 297904738 297904738 330042738 330042738 476205704 476205704 607237963 607237963 329512194 915035354 915035354 933298498 933298498 895599170 895599170 659892921 848137280 848161875 932020275 932020275 662800408 446296178 217816144 921172055 921172055 811780303 536920065 527569854 674507136 674507136 532714118 396362106 815797049 815797049 271993472 357025514 357025514 290083680 690694722 965044580 965044580 307240242 418646770 688964580 688964580 911525991 911525991 848404534 848404534 781788765 180742356 285221608 564710268 564710268 380745245 666440244 666440244 219407539 440805005 440805005 743456353 743456353 64196848 64196848 9478784 65036672 199253184 719817733 719817733 537631220 592258112 592258112 538439568 726242500 726242500 710255872 710255872 908118049 908118049 659158958 974625595 1006267650 353812480 478084164 478084164 11410954 102838680 686354517 686354517 863898962 863898962 538261856 963061664 963061664 798557786 798557786 714351225 714351225 801558224 801558224 117521616 117521616 97252584 97252584 265024784 622743339 622743339 1021887693 1021887693 744490063 744490063 539353541 820513511 820513511 590517319 681508885 681508885 67116174 39396544 291569664 291569664 598547781 598547781 397701240 1011032457 1011032457 1054783753 1054783753 508374174 655260071 655260071 52173614 698076688 698076688 294182002 294182002 996314786 996314786 819327271 768606420 962119839 962119839 454872207 336931338 411371324 411371324 93392024 93392024 89027104 78318688 78318688 59946689 106050691 106050691 75563792 647291857 647291857 584069120 589301024 589301024 847327680 847327680 567348066 543108770 566691106 566691106 99223712 579355210 907593243 949392937 949392937 690367549 373754554 373754554 826406054 957275142 957275142 940141605 640511533 640511533 206571931 190841268 190841268 16777524 20971680 658163455 658163455 486606900 505016176 1022550042 1022550042 894424355 1010394391 1010394391 814182845 789347449 789347449 187923761 101644608 279115658 279115658 376991768 604797793 604797793 554026616 554026616 281501331 333003962 333003962 273711204 961310618 961310618 921150667 836305330 691204371 600217521 910792808 910792808 95557697 624167721 630005321 630005321 896806419 896806419 726457373 541229710 125942886 155550592 598317624 730915925 730915925 144587456 1061827040 1061827040 717738022 717738022 402849175 10471232 25918272 616652684 617342861 617342861 115375761 845157188 1070731991 1070731991 1022603686 440586390 746726433 761854328 1072615115 1072615115 986641064 328338214 158600644 357573160 357573160 256934587 738197517 738197517 722224018 809773990 961375898 961375898 724337749 724337749 375156298 375156298 456604424 508695198 508695198 259389730 537315776 580915233 591397041 638353580 726453429 726453429 236504604 555415168 555415168 608795265 608795265 606406715 933630950 933630950 892606283 759959675 934938831 934938831 268609442 859832499 859832499 539197723 874813456 874813456 587909120 587909120 353581587 108004836 691544508 998035461 998035461 520941116 691444749 707738896 733558865 733558865 709952193 861768150 861768150 568857056 555332626 300480450 300480450 295480178 295480178 102637968 102637968 80738496 366670032 366670032 344016552 309270048 309270048 295175176 67115112 337379328 337379328 448512 302426128 302426128 62272112 340048658 340048658 215216844 285123690 411010980 411010980 365554336 135265348 332316378 332316378 164799076 4642944 140900480 551944324 551944324 545356800 811576002 815131266 815131266 155200516 155200516 941538464 941538464 159932771 32700640 281983200 284975074 284975074 271936128 271936128 70416264 93901928 93901928 296225282 296225282 62788128 328208562 328208562 195858600 195858600 96552012 99271488 99271488 410116998 498158508 1013101330 1013101330 726038656 873650834 873650834 950030374 950030374 471681351 471681351 304161042 655959992 843128979 843128979 707993767 694311041 691516165 547756757 547756757 272110978 694028928 694028928 627574849 627574849 586159744 586159744 165515824 165515824 503592998 742310193 742310193 755407032 755407032 839960052 839960052 628278960 31401536 31401536 29042432 2373472 4149760 4149760 384352448 384352448 371721498 881068107 881068107 825165993 825165993 645076580 748163229 748163229 477104029 569911441 569911441 272107266 849389922 849389922 650473315 382289704 1054675150 1054675150 663146816 1036065001 1036065001 1034283375 1038800367 1038800367 826278051 826278051 552993664 569775041 569775041 554807872 28918336 43274016 63037680 63037680 60911984 60911984 42600032 42600032 9751040 157403956 157403956 61088672 140177924 140177924 8590464 5427584 138396032 142854180 203654912 203654912 161745252 139101672 67557384 25745928 218680456 218680456 714785800 714785800 127812960 127812960 103370016 103370016 59319408 25240592 142868480 142944260 142944260 134604804 134604804 134555652 172155856 172155856 147961776 147961776 61833124 75506536 171264328 171264328 27552196 205537376 231508168 231508168 523682110 523682110 459249750 176563610 207743648 222607544 222607544 413405734 494819848 494819848 77620936 77070920 336875264 346046978 346046978 289983112 296259520 493447404 493447404 488968260 488968260 480270402 480270402 408158380 299913924 644740160 1011460231 1011460231 675882117 709438613 838931600 838931600 705708052 705708052 933738251 933738251 784976989 715198024 168263576 87260508 70426688 79694952 79694952 18063424 90249928 90249928 33229888 33229888 27564544 27564544 23077312 23077312 525312 272270016 272270016 270606338 270606338 268509442 144164894 378935898 378935898 78957384 519061470 520029150 520029150 291766930 291766930 138986628 515879924 797923378 797923378 491361016 491361016 991430199 991430199 1027581959 1027581959 967255972 967255972 988760256 988760256 975959319 946728327 946728327 410912800 410912800 156373668 683934192 683934192 985711893 985711893 495481382 825568841 825568841 401130266 401130266 514710548 585437499 585437499 415459734 794387037 794387037 533791330 488313510 308807058 308807058 128713480 382812122 382812122 314578176 307757696 307757696 367210424 703882541 703882541 310843909 310843909 252778636 252778636 169220628 480124494 718045182 718045182 563477941 850666687 850666687 679498016 850019680 850019680 90129852 363910824 1009059503 1009059503 346748418 354699272 613946096 674334625 793395992 793395992 166201204 777749545 777749545 493007524 1010343967 1010343967 893287967 893287967 845159179 942940084 942940084 18532128 22333952 156382850 455098422 677714230 677714230 655236136 659052449 659052449 512270997 756024100 959378212 959378212 942672980 942672980 515377096 786564994 786564994 876740648 876740648 944280753 944280753 579078464 688959360 692955317 692955317 956596357 956596357 848585912 805663072 2111488 2570496 94837056 94837056 25374816 317352162 317352162 360802818 360802818 326092992 38276624 84727208 461262756 785532574 819463875 819463875 683856598 575310029 822934538 822934538 831855344 902560408 902560408 843723280 686937878 778314736 778314736 559156081 522974526 573042801 946854188 946854188 736523762 690854293 429720228 429720228 597660352 852189072 852189072 587020513 819777219 819777219 1041709599 1041709599 534968021 534968021 1059371756 1059371756 796271241 757215421 757215421 727797456 727797456 689023304 689023304 587706456 648352733 648352733 225882722 802654319 802654319 427819110 243583040 534864364 602196732 1032196112 1032196112 1013039108 939960487 671289892 526695644 161563044 216304552 216304552 88164544 68366888 85479464 107742816 107742816 126138368 126138368 92398344 94055032 94055032 132459000 132459000 26548504 102971544 102971544 127618160 127618160 78518976 19701313 576211809 579930721 865482752 865482752 523201104 345743192 533998710 533998710 589696865 848825875 848825875 800654050 800654050 990170048 990170048 471632691 289096962 231289038 218449148 226921996 226921996 148672834 435936564 435936564 198492020 47835472 414977682 414977682 22284960 285598338 285598338 29797216 29797216 9709024 31318848 31318848 24620064 24620064 102277848 102277848 86230096 278236962 278236962 319292466 319292466 112287986 401264122 401264122 457425622 457425622 526455450 526455450 389647954 389647954 235757584 260060878 260060878 257950140 257950140 163879644 316743981 770203763 770203763 564782433 832389122 832389122 987778963 987778963 93908176 613340195 864704027 864704027 130794690 631910403 631910403 313090136 313090136 349319002 349319002 163803281 679612453 1027993211 1027993211 901047116 901047116 839773357 1060740957 1060740957 609349290 795923253 1064731069 1064731069 794373773 794373773 1023609101 1023609101 455086940 962662570 962662570 471147040 773483056 773483056 577790638 605156888 767738804 786335636 872840983 942783000 942783000 909761211 909761211 642571850 393330232 23327136 429994336 1053577547 1053577547 994223304 994223304 732582599 630306893 537660417 352953744 509091892 648753770 648753770 559025265 559025265 168631452 168631452 916525466 916525466 824316195 824316195 817106984 147141152 219179552 219179552 92504704 100099200 100099200 24392864 3929856 314808530 314808530 282497168 282497168 142672786 330990000 422262054 422262054 334046326 331631128 414551920 414551920 405018246 405018246 464054594 464054594 455803588 455803588 273980452 694257060 694257060 1017489156 1017489156 622420868 1008543624 1008543624 801247577 801247577 817104245 965529859 965529859 446745041 847521990 847521990 688246823 537526342 1022419740 1022419740 470853396 470853396 136884240 8075136 100152992 100152992 22021224 554700832 554700832 538055169 538055169 612429103 1026932102 1026932102 947996445 543382808 201584652 237381192 237381192 533400856 533400856 708164225 993354037 993354037 449901994 975131115 975131115 939524732 939524732 932184699 864305678 671878149 671878149 670609532 670609532 760877260 760877260 78920696 78920696 697898127 697898127 658529420 843301942 843301942 100900952 656296029 656296029 847341874 847341874 716544009 144719460 86603337 73515304 73515304 83886112 594101056 594101056 633408080 659892921 659892921 563505152 563505152 565449513 565449513 161486656 155594986 921172055 921172055 811780303 536920065 527569854 527569854 532714118 532714118 396362106 815797049 815797049 271993472 736903605 736903605 550366401 729031921 965044580 965044580 307240242 418646770 688964580 688964580 911525991 1009009256 1009009256 848404534 118673976 253045308 253045308 564710268 564710268 380745245 666440244 666440244 475133788 718858868 718858868 743456353 743456353 64196848 64196848 9478784 65036672 585163136 719817733 719817733 537631220 592258112 592258112 538439568 726242500 726242500 171829233 584115088 584115088 560548465 555794721 974625595 974625595 353812480 353812480 353770026 355867434 708149782 708149782 686354517 863898962 863898962 561375744 858202994 858202994 798557786 798557786 714351225 714351225 445186167 230701168 120990456 120990456 120559696 120559696 265024784 570428500 680266821 887114088 887114088 738510991 415742177 402917382 820513511 820513511 590517319 681508885 681508885 739320333 824714682 824714682 414450440 414450440 128026112 201416812 201416812 412031500 702822464 1043728367 1043728367 941132719 927878669 1016609534 1016609534 878052912 878052912 990091549 996314786 996314786 819327271 612522312 612522312 539281665 298353376 102050328 103401264 103401264 105678584 105678584 89027104 88737840 95328144 95328144 100586880 113269968 113269968 46137168 573295424 573295424 589301024 589301024 25565280 25565280 25052416 25052416 27308544 99223712 632265032 632265032 907593243 949392937 949392937 690367549 566244033 566244033 826406054 957275142 957275142 940141605 197603572 707409347 828387615 828387615 872669644 872669644 507663066 658163455 658163455 204673388 505016176 1022550042 1022550042 894424355 1010394391 1010394391 814182845 789347449 789347449 127231608 101644608 279115658 279115658 376991768 604797793 604797793 554026616 554026616 281501331 333003962 333003962 185241936 961310618 961310618 921150667 688173652 170579220 737155524 737155524 844950404 844950404 624167721 630005321 757996845 896806419 896806419 726457373 541229710 579020380 579020380 598317624 730915925 730915925 490531754 640143114 1040402718 1040402718 672263440 727318336 727318336 336031168 210313029 210313029 611918427 611918427 915989726 1070731991 1070731991 1022603686 717280704 746726433 761854328 1072615115 1072615115 546587313 860815413 860815413 1007780127 1007780127 673366660 738197517 738197517 544395777 82064261 687899160 717242941 724337749 1011360576 1011360576 921667598 939817978 939817978 508695198 259389730 537315776 753500365 753500365 591397041 185197620 251683848 251683848 555415168 555415168 608795265 608795265 606406715 933630950 933630950 892606283 759959675 934938831 934938831 87130368 87130368 323481216 911095808 911095808 16858555 277421072 277421072 411702342 908280068 908280068 646571097 637406564 637406564 478553690 478553690 473898604 272902354 272902354 861768150 861768150 507107996 507107996 370856730 348463770 349672330 352323616 352323616 68496896 68496896 18328840 39152224 39152224 6333120 89276416 89276416 67115112 336926848 337021570 337021570 302426128 306321568 306321568 369621018 369621018 125041592 285123690 285814912 376437176 399780634 399780634 348207754 332316378 148934976 148934976 140900480 569634212 569634212 568786242 811576002 815131266 815131266 152823268 202646504 546401569 546401569 357441390 357441390 410870696 410870696 225429038 472068366 472068366 72422278 93901928 328417584 328417584 296225282 59921816 328208562 328208562 113263352 211395328 961648293 961648293 856638520 557025167 712045330 752951757 752951757 726038656 873650834 873650834 950030374 955660703 955660703 674903093 674903093 319163438 319163438 748783308 748783308 739821353 739821353 829384750 829384750 474559747 478043553 588584869 627574849 627574849 586159744 586159744 11015392 153652000 154062628 742310193 742310193 755407032 755407032 12730368 12730368 8388608 31401536 31401536 10105536 51159088 53190672 53190672 384352448 384352448 371721498 881068107 881068107 825165993 914368537 914368537 564801409 564801409 536947329 647116801 647116801 578815186 849389922 849389922 650473315 307096744 358996296 358996296 663146816 1036065001 1036065001 1034283375 1038800367 1038800367 65626603 50727364 15944704 300896 10594656 16826400 28918336 43274016 63037680 63037680 60911984 60911984 42600032 42600032 32774656 157403956 157403956 61088672 140177924 140177924 13300480 6598656 6598656 142854180 163854816 163854816 161745252 139101672 100418312 100418312 99614608 208700392 208700392 550318261 550318261 179343436 679494196 740294925 740294925 203473164 430072492 707678660 707678660 659106467 541456442 257747094 206355448 206355448 149179268 149179268 27212448 84300624 131551704 131551704 65331496 205537376 231508168 231508168 523682110 523682110 335721580 504780894 504780894 176165450 0 0 0 269550592 269550592 80273986 83373896 83373896 69250848 291589760 291589760 493447404 493447404 353105130 337720064 337720064 291668396 472000659 472000659 644740160 1011460231 1011460231 335814791 525141174 838931600 838931600 857879048 857879048 438575178 438575178 335546640 109109588 172852560 182280448 182280448 57174032 21113472 12202368 101724472 101724472 42076960 42076960 88395616 99270472 547296025 547296025 50067408 575962177 575962177 314781458 375728538 375728538 144164894 378935898 378935898 78957384 449242324 449242324 356374864 312713984 439567683 1066678642 1066678642 1010327592 673702420 673702420 194055648 1069392664 1069392664 1027581959 1027581959 967255972 967255972 826297420 826297420 817534595 946728327 946728327 755503890 755503890 743179143 810817240 963642279 985711893 985711893 483859584 825568841 825568841 401130266 401130266 514710548 585437499 585437499 415459734 794387037 794387037 533791330 488313510 240162506 128713480 128713480 382812122 382812122 314578176 307757696 307757696 25215072 703882541 703882541 310843909 310843909 252778636 252778636 169220628 480124494 718045182 718045182 563477941 850666687 987885911 988158983 988158983 590112945 551501505 875941217 1009059503 1009059503 353684010 354699272 613946096 674334625 793395992 793395992 166201204 777749545 777749545 493007524 1010343967 1010343967 893287967 893287967 845159179 942940084 942940084 554899217 572420107 980652172 980652172 1029191196 1029191196 794007738 655236136 570425361 335544585 756024100 959378212 959378212 942672980 942672980 928516148 928516148 885995604 885995604 681986881 688703043 688703043 633009455 746198408 822017932 889144450 956596357 956596357 863750363 805663072 673427910 720378247 1061620384 1061620384 618737929 618737929 608377736 372583194 595264393 595264393 38276624 595758193 595758193 785532574 864601203 864601203 667419233 815470187 822934538 822934538 831855344 902560408 902560408 843723280 707586626 778314736 778314736 522974526 522974526 420039742 303580176 303580176 464545216 466403042 466403042 698349106 698349106 597660352 321808149 193860212 193860212 477949377 1041709599 1041709599 534968021 534968021 1059371756 1059371756 560267489 554196328 684711400 727797456 727797456 689023304 689023304 587706456 648352733 648352733 293649132 802654319 802654319 765915240 769888309 1015128157 1015128157 1032196112 1032196112 1013039108 939960487 671289892 526695644 161563044 216304552 216304552 31723712 68716864 85479464 131312288 131312288 126138368 126138368 92398344 94055032 94055032 132459000 132459000 26548504 102971544 102971544 127618160 127618160 78518976 19701313 576211809 579930721 865482752 865482752 523201104 345743192 533998710 533998710 589696865 848825875 848825875 681292338 546478887 990170048 990170048 618127300 818668012 818668012 160437360 169481748 295038960 295038960 52516210 326137394 578299611 578299611 807159314 1017326338 1017326338 480276746 480276746 568296288 613741192 613741192 544219392 578928600 578928600 68941320 102277848 102277848 86230096 86230096 87659626 319292466 319292466 112287986 289072010 289072010 457425622 457425622 526455450 526455450 389647954 389647954 235757584 260060878 260060878 257950140 257950140 169873684 242233484 242233484 144838980 144838980 149147904 149147904 142131792 1605648 35128848 35128848 25296928 25296928 16781408 320174128 320174128 76755786 53111952 115975456 591510260 591510260 679612453 942498902 942498902 901047116 901047116 839773357 1060740957 1060740957 609349290 940327300 1064731069 1064731069 794373773 794373773 308486229 265428446 409794466 409794466 471147040 615068366 615068366 571605184 378012762 634414265 634414265 373841363 872840983 872840983 878571147 878571147 642571850 642571850 53792425 1013239904 1013239904 908119167 497135618 228774252 279094314 279094314 156476544 663329283 663329283 868230521 868230521 648753770 512230726 512230726 832177072 832177072 916525466 916525466 130228417 408781258 497149666 497149666 290669546 488978732 488978732 328117769 400972970 400972970 563353907 644188235 644188235 631882945 313388057 402607833 402607833 422262054 422262054 334046326 290141346 414551920 414551920 405018246 405018246 464054594 540226305 540226305 455803588 751305933 751305933 326206347 1017489156 1026048375 1026048375 1008543624 1008543624 739246858 638200801 817104245 965529859 965529859 711055952 847521990 847521990 688246823 177658048 198257284 602155620 929420328 929420328 960693217 960693217 834617187 808859759 648468825 648468825 554700832 538055169 538055169 621578947 621578947 71358672 210835468 210835468 509535506 509535506 237381192 308024164 308024164 708164225 993354037 993354037 449901994 975131115 975131115 939524732 939524732 932184699 377507399 436941846 436941846 361373820 94004176 743284908 743284908 156261941 545804390 697898127 697898127 658529420 843301942 843301942 855778708 855778708 656296029 847341874 847341874 716544009 618177920 86603337 75509777 556483417 626574689 626574689 928514881 928514881 869343345 911068561 911068561 842812056 563343969 27837792 370990952 411717906 411717906 378279226 378279226 187174018 526960062 526960062 666174342 844274647 937820733 937820733 534937873 114085080 736903605 736903605 995217860 995217860 735158640 735158640 173196240 175297428 175297428 193364064 222331172 1009009256 1009009256 412287516 377696346 253045308 253045308 801584864 801584864 363937816 363937816 355324702 475133788 718858868 718858868 592087568 592087568 231970472 231970472 215742156 77673028 585163136 585163136 28370820 32004032 60445216 60445216 17995376 28261728 44688272 561573569 584115088 584115088 808553351 808553351 720450116 830425573 868084830 868084830 758121261 657531705 708149782 708149782 641137946 858372659 858372659 561375744 659137683 659137683 2622091 1049088 13108416 82339632 118031728 118031728 120990456 120990456 120559696 120559696 85774336 570428500 680266821 680266821 310919606 873870952 873870952 839794325 873014283 873014283 537015306 621230121 621230121 739320333 824714682 824714682 414450440 468608872 468608872 291454376 337432878 412031500 702822464 1043728367 1043728367 941132719 927878669 1016609534 1016609534 878052912 878052912 990091549 990091549 907527612 907527612 612522312 612522312 539281665 102891913 21180576 21180576 96782568 105678584 105678584 63019704 88737840 95328144 95328144 100586880 113269968 113269968 37158992 573295424 573295424 34575440 599663360 599663360 50856225 25052416 25052416 27308544 89777832 632265032 632265032 101328008 257297216 266473980 366351377 566244033 566244033 953429135 953429135 814365825 605030120 278468136 707409347 828387615 828387615 872669644 872669644 709001604 487774851 477384764 8861760 8861760 139074756 139074756 1441792 712645000 712645000 662721824 595674388 595674388 252184457 130627504 72037768 34603536 85433880 85433880 35186208 74714552 74714552 87171176 87171176 121432104 134266880 258896112 535126330 593103713 593103713 170579220 737155524 737155524 844950404 844950404 347090745 574423544 757996845 757996845 573216688 627574273 627574273 579020380 579020380 646197345 646197345 365642381 490531754 640143114 1040402718 1040402718 1032413496 1056635610 1056635610 336031168 210313029 210313029 611918427 611918427 915989726 915989726 944538243 944538243 717280704 717280704 1025584533 1025584533 562955346 546587313 860815413 860815413 1007780127 1007780127 673366660 673366660 742492288 742492288 82064261 207619208 425739524 564724870 1011360576 1011360576 921667598 985955117 985955117 979468379 979468379 105071053 753500365 753500365 442639936 915527436 915527436 790232664 790232664 726959633 647644141 643266297 812332419 812332419 624079053 624079053 622491906 893738669 893738669 829664675 862616754 894946216 911095808 911095808 16858555 277421072 277421072 411702342 908280068 908280068 646571097 637406564 637406564 397221065 180670880 731203184 731203184 573410577 316664739 565138784 633739506 633739506 639560762 649407321 649407321 812374483 812374483 873073416 873073416 327787856 327787856 39152224 25767936 82709992 272765314 272765314 21836096 344199402 344199402 71487624 416888580 416888580 369621018 529539390 529539390 236272508 151398420 376437176 399780634 399780634 930151345 930151345 163416435 947152325 947152325 569634212 569634212 568786242 678977958 942331876 942331876 833638656 828061347 753090560 425391300 357441390 357441390 410870696 410870696 225429038 472068366 472068366 351626122 351626122 328417584 328417584 39240032 61004416 61004416 37757680 244572737 579900505 961648293 961648293 856638520 557025167 712045330 752951757 752951757 609561225 827640538 827640538 675113858 955660703 955660703 891249381 765202029 697061098 697061098 748783308 748783308 739821353 739821353 829384750 829384750 813129612 539912461 607756169 618398272 618398272 545834689 563314945 563314945 545834880 545834880 160307824 193350260 193350260 145364384 145364384 58330260 5904480 63310160 63310160 296537442 327865682 327865682 280867778 280867778 273895960 369494347 559814784 559814784 355275336 914368537 914368537 537209995 536947329 536947329 647116801 647116801 578815186 646058080 646058080 642727065 72166536 72166536 58720336 58720336 50331744 50331744 17949216 9560640 165704320 165704320 55109904 62644240 62644240 43212000 14815680 13467456 14516928 61266288 61266288 61198704 62075760 62075760 32774656 32774656 41741552 41741552 52091552 63400176 63400176 13300480 6598656 6598656 4614144 69375488 69375488 81762184 98828608 100418312 100418312 99614608 99614608 95837768 550318261 550318261 179343436 679494196 740294925 740294925 363447990 522211940 707678660 707678660 659106467 541456442 257747094 206355448 318684288 318684288 297133680 297133680 84300624 131551704 136349752 254069052 254069052 254052660 206168068 118189320 118174776 335721580 504780894 504780894 437388094 140792104 271223362 499798280 499798280 382838232 393799784 393799784 83373896 395603688 395603688 396741022 473228814 499680592 499680592 337720064 337720064 370356762 472000659 543179417 543179417 302424601 572317845 572317845 525141174 556536844 757471533 857879048 857879048 672561717 678595397 678595397 615723416 172852560 182280448 182280448 85363624 85363624 31939456 101724472 101724472 42076960 42076960 99387040 99387040 547296025 547296025 50067408 575962177 575962177 314781458 375728538 375728538 315943830 741508101 741508101 715990032 715990032 587871505 587871505 312713984 439567683 1066678642 1066678642 1010327592 673702420 673702420 194055648 1069392664 1069392664 207802764 207802764 100700564 349560354 349560354 817534595 817534595 676071553 545658945 755503890 755503890 743179143 810817240 963642279 963642279 837947460 483859584 479737422 225144776 225144776 195484020 195484020 164506828 203944256 203944256 99779208 133427760 133427760 129745840 110102000 89471312 89471312 53676096 42125696 20630128 17530994 311161938 351927626 728130676 977417508 977417508 460855188 996680322 996680322 996147639 765869235 870247479 870247479 709761729 709761729 987885911 988158983 988158983 590112945 551501505 875941217 875941217 616974920 353684010 342294144 419455744 419455744 142397316 455470124 455470124 505366614 505366614 431149682 550061758 654446649 857235138 857235138 314712963 282801858 131278464 554899217 608782995 980652172 980652172 1029191196 1029191196 794007738 420884152 335544585 667961893 667961893 437641348 643864986 754991200 855904416 928516148 928516148 885995604 885995604 681986881 688703043 688703043 633009455 746198408 822017932 889144450 889144450 863750363 939788295 939788295 673427910 720378247 1061620384 1061620384 618737929 618737929 608377736 372583194 595264393 595264393 4753314 595758193 595758193 511874093 864601203 864601203 667419233 815470187 815470187 688797126 805654954 805654954 656945884 575800466 858405252 858405252 939861892 939861892 975025235 975025235 820717952 303580176 464545216 857260288 859309875 859309875 760403067 870208927 878494241 878494241 324715555 122737378 337304288 376313912 376313912 227854956 175524048 251668860 251668860 554196328 554196328 597976848 621392964 621392964 252335680 236412100 236412100 293649132 293649132 130907344 130907344 765915240 769888309 1015128157 1015128157 141764815 933640432 933640432 42344768 42344768 10557520 10560256 10560256 3146240 2097408 68716864 68716864 131312288 131312288 59754544 59754544 51306320 51306320 50614304 50614304 130624856 130624856 115878136 115878136 18948384 24750016 61129296 103828568 103828568 60032016 95586400 120838968 327974944 369939400 369939400 240274114 584585345 584585345 681292338 681292338 541379266 605618675 745310904 745310904 818668012 818668012 160437360 169481748 295131584 295131584 283936484 326137394 578299611 578299611 807159314 1017326338 1017326338 480276746 480276746 568296288 613741192 613741192 605028873 578928600 578928600 68941320 75588352 78693192 111291912 111291912 68193296 102551064 102551064 45545992 176831316 176831316 268828680 491973394 491973394 427967130 427967130 116409760 116409760 384604112 518247962 518247962 410295306 410295306 285873186 272799672 144838980 144838980 385034106 624288000 624288000 289773522 400619688 880851089 880851089 863651961 94379970 886289569 886289569 337253898 281274056 40786432 591510260 679516756 679516756 942498902 942498902 581527090 889782966 889782966 793338268 793338268 996714251 996714251 940327300 541630083 672137733 672137733 40043733 12269376 360647626 1009004331 1009004331 615068366 626201866 626201866 378012762 634414265 634414265 371238266 860006820 860006820 865023697 865023697 132121080 665486424 665486424 1013239904 1013239904 908119167 106432152 106432152 107664792 107664792 73400712 663329283 663329283 868230521 986707760 986707760 819513027 306836049 832177072 832177072 830472291 959059239 959059239 968888426 968888426 497149666 290669546 488978732 488978732 328117769 400972970 400972970 563353907 644188235 644188235 631882945 889387099 889387099 402607833 806378890 806378890 342786563 34211120 34211120 42542160 42542160 42542160 42542160 540226305 540226305 177800273 751305933 751305933 459942784 459942784 1026048375 1026048375 694342053 739246858 739246858 434643218 701087268 701087268 711055952 711055952 706661825 323679271 146307040 177658048 198257284 602155620 929420328 929420328 960693217 960693217 834617187 808859759 648468825 648468825 112470449 462939044 462939044 1039937452 1039937452 224679595 170936206 170936206 509535506 509535506 36256000 308024164 308024164 266539147 266539147 318281174 481645902 481645902 762663283 762663283 392326179 664593094 664593094 479265269 436941846 361373820 452077556 743284908 743284908 156261941 545804390 755647684 759218349 759218349 489563148 492951931 855778708 855778708 231661169 515900238 515900238 618177920 618177920 18615840 75509777 556483417 626574689 626574689 928514881 928514881 869343345 911068561 911068561 842812056 421581606 421581606 370990952 411717906 411717906 378279226 378279226 675375284 675375284 526960062 666174342 844274647 937820733 937820733 899810067 873599499 873599499 381277534 995217860 995217860 168429476 168429476 173196240 175297428 175297428 822350131 822350131 805477220 805477220 414630742 625297786 718539477 718539477 801584864 874549530 874549530 606655768 367525968 189309724 734126325 734126325 148638417 151044105 781221888 784909533 784909533 573544836 720446597 720446597 681540596 543760468 554429760 554429760 151049984 52379184 52379184 561573569 561573569 539298818 808553351 808553351 720450116 830425573 868084830 868084830 758121261 657531705 717083995 717083995 167879712 290940768 868229682 893454443 893454443 659072441 243534217 230548364 893635742 893635742 323842059 118031728 73344720 87241512 87241512 82018564 193982780 358901133 389191450 389191450 310919606 873870952 873870952 839794325 873014283 873014283 537015306 352770090 352770090 773247496 773247496 669773592 635697193 635697193 512262162 291454376 814818383 814818383 342191484 668336568 866197875 866197875 973880586 973880586 490748959 871568560 871568560 121776257 220948537 907527612 907527612 583434591 583434591 904385809 904385809 618448524 618448524 710202468 710202468 704726149 667129608 150651824 31977506 291601218 300302402 300302402 283171138 281461632 551459104 551459104 34575440 599663360 599663360 50856225 27168128 27168128 25042848 89777832 89777832 87581056 75287176 257297216 266473980 266473980 419116998 813570884 953429135 953429135 605030120 605030120 278468136 187907060 187907060 133177788 186803368 709001604 709001604 266362708 778430877 778430877 652589709 618085065 775582121 775582121 751514005 662721824 662721824 639680536 639680536 252184457 130627504 72037768 14221848 38807568 38807568 35186208 13446336 30361600 33683488 33683488 33859584 134266880 258896112 258896112 216336797 216336797 51136561 42781776 72221296 762514861 762514861 274601176 274601176 312082660 312082660 119280100 627574273 627574273 143531076 168587208 728526652 728526652 365642381 184300763 366648017 910543696 1032413496 1032413496 1056635610 1056635610 323245746 290590608 5251712 5309056 471861768 471861768 810846222 944538243 944538243 403179544 686417349 1025584533 1025584533 550022638 436994052 436994052 476647318 490047550 490047550 426075392 405624326 742492288 742492288 876271579 876271579 425739524 425739524 403999364 324405888 454169142 1061675108 1061675108 979468379 979468379 975873090 278410612 684472384 1052972277 1052972277 947840584 947840584 790232664 726959633 647644141 643266297 812332419 923451959 990958651 990958651 622491906 893738669 893738669 829664675 862616754 894946216 894946216 831084711 831084711 911192216 911192216 272629890 951104804 951104804 544450501 267901122 861234868 1031372756 1031372756 731203184 731203184 573410577 520922974 565138784 633739506 633739506 639560762 649407321 649407321 812374483 812374483 873073416 873073416 605150289 651272745 651272745 562106464 562106464 272765314 272765314 21836096 344199402 344199402 43388252 416888580 416888580 254352602 529539390 529539390 253008208 253008208 185936436 185936436 287343321 930151345 930151345 232975552 947152325 947152325 543211905 565532196 565532196 678977958 942331876 942331876 875631082 875631082 835748270 1022039429 1022039429 91276200 91276200 429113960 429113960 751356271 751356271 702832226 702832226 607150434 417515690 158630284 158630284 429181480 429181480 427960150 579900505 579900505 514233094 593533400 593533400 1053334554 1053334554 515968439 125832872 827640538 827640538 407176330 827511459 891249381 891249381 765202029 1064322006 1064322006 582346539 563161070 629197766 694206885 694206885 813129612 813129612 539912461 607756169 622002312 622002312 559100577 563314945 563314945 545834880 545834880 160307824 178393556 402395850 402395850 294683812 467826670 467914962 467914962 409847700 409847700 327865682 327865682 280867778 280867778 274641754 109439064 559814784 559814784 812137058 858469683 858469683 68430016 549923968 549923968 110063705 1044792390 1044792390 646058080 646058080 67120256 72166536 644651148 690488581 732447653 732447653 245368769 538004517 538004517 213199692 165704320 55109904 62644240 62644240 43212000 26993536 26993536 18844128 61266288 61266288 61198704 62075760 62075760 68806152 121747000 121747000 109328592 56155808 56155808 23043472 68455432 69199368 69199368 69014528 69375488 69375488 18893120 98828608 98828608 17023176 28904128 67163168 91041192 91041192 74566160 94914040 103432480 103432480 34685520 363447990 522211940 522211940 339362694 68545032 68545032 86296872 165561140 318684288 318684288 297133680 297133680 77030016 34824832 136349752 254069052 254069052 254052660 206168068 384528878 384528878 396490842 396490842 437388094 437388094 159774944 271223362 499798280 866620171 866620171 393799784 843903448 843903448 647945817 396892705 396741022 814731274 825600669 997536318 997536318 337654544 370356762 370356762 543179417 543179417 272728832 572317845 572317845 441265302 556536844 757471533 757471533 496374014 672561717 678595397 678595397 615723416 165761040 73679744 73679744 85363624 85363624 31939456 75544136 75544136 32731264 33138528 99387040 99387040 27504200 15913472 15913472 270643840 279843586 279843586 82056968 315943830 338985038 741508101 741508101 715990032 715990032 587871505 587871505 999065980 999065980 367114341 541205822 541205822 803539994 803539994 355082058 355082058 44918664 44918664 191998798 247819302 342935574 342935574 15214500 21625252 24693736 484960456 484960456 450761180 450761180 474105864 474105864 395231536 454252944 454252944 408105606 346098100 346098100 476793696 476793696 483100078 514463106 514463106 290021860 32056160 9695808 13755584 22082784 22082784 53676096 53676096 318953060 328274004 328274004 313143668 612437993 1037703878 1037703878 1033971119 882777675 996680322 996680322 996147639 765869235 870247479 870247479 709761729 709761729 692991392 50447840 80577512 80577512 105654240 105654240 90914952 90914952 274142018 342294144 342294144 284272010 259087290 500678244 500678244 520510770 520510770 431149682 550061758 654446649 654446649 117441945 641441936 641441936 17073329 539771921 608782995 608782995 341092795 857508105 857508105 523614092 225708972 225708972 667961893 667961893 437641348 643864986 643864986 855904416 855904416 500705523 349511118 472435438 472435438 541459560 541459560 147349515 32580576 576301392 576301392 532647777 868620294 939788295 939788295 318769718 331220256 545457808 563964816 651773404 695187156 695187156 233097708 319732568 319732568 870492132 896172107 896172107 890838695 766121325 766121325 749180485 646317246 794930361 794930361 805654954 805654954 556778497 952204372 952204372 858405252 939861892 939861892 975025235 1047550161 1047550161 546575202 275225640 857260288 859309875 859309875 946246016 946246016 878494241 878494241 1024229474 1024229474 337304288 376313912 376313912 175524048 175524048 51183696 161761568 161761568 262440980 262440980 621392964 621392964 130735456 392237364 598180637 598180637 495294818 793415191 793415191 545940986 802222461 802222461 787555293 864551180 864551180 858722136 858722136 605447224 269736256 82114824 51563400 48276224 48276224 76118304 88593984 88593984 92604160 92604160 68229312 103421208 103421208 117115824 117115824 134207024 134207024 115878136 115878136 91002304 96555424 96555424 103828568 103828568 60032016 95586400 120838968 253688700 369939400 369939400 240274114 255465276 624902492 624902492 614852937 310444144 310444144 745310904 745310904 384043482 373332584 280873024 280873024 295131584 295131584 283936484 2146560 2933760 2933760 18921224 70587680 606833544 607835913 607835913 816579658 816579658 605817856 605028873 299423170 367416160 367416160 384753634 384753634 309779346 111291912 340744392 340744392 312398914 66388674 530946730 530946730 268828680 491973394 491973394 427967130 427967130 419463850 419463850 411041862 518247962 518247962 476790926 410295306 285873186 272799672 126463304 126463304 385034106 624288000 624288000 550891040 550891040 880851089 880851089 863651961 379892776 886289569 886289569 337253898 281274056 209329440 784348532 784348532 679516756 596479769 978444200 1039263631 1039263631 1031881600 793338268 793338268 996714251 996714251 659957822 927017215 927017215 672137733 319633692 328604274 360647626 1009004331 1009004331 615263434 626201866 626201866 964960578 964960578 275623085 278800474 278800474 64937712 639804673 639804673 612340683 665486424 998747483 1019390065 1019390065 903873003 135873184 769655446 996878254 996878254 73400712 255617792 255617792 829443719 986707760 986707760 819513027 306836049 293613696 269034498 814387750 959059239 959059239 968888426 968888426 134505128 15067584 156338948 229519020 229519020 155662500 155662500 19598368 275524906 275524906 583614472 889387099 889387099 395630905 806378890 806378890 346849811 269947410 268844384 42542160 281134210 281134210 411708514 411708514 319042532 532164156 532164156 143657016 459942784 459942784 701994358 701994358 694342053 413928774 413928774 9441030 701087268 701087268 700491169 692753504 960630951 960630951 709175463 708972693 269087895 153877828 153877828 35000336 35768448 542425600 675975680 675975680 813524969 813524969 632501097 632501097 472178056 1039937452 1039937452 380723799 169766042 941520087 941520087 38597008 153396944 153396944 187180175 266539147 357564416 822666914 822666914 887264832 900668011 900668011 392326179 664593094 664593094 479265269 18888175 310904431 786658512 786658512 614077593 135824384 538539720 755647684 759218349 759218349 144127044 92373580 707110132 707110132 760925865 760925865 744900769 744900769 703476709 671522857 585584680 585584680 390071568 390071568 488991964 488991964 471412874 471412874 958100515 958100515 421581606 421581606 283564482 637301417 637301417 944931762 944931762 675375284 675375284 915833428 915833428 746887241 690463022 939608108 939608108 873599499 873599499 381277534 805933841 805933841 709495856 709495856 38032948 51648548 64280820 822350131 822350131 805477220 805477220 414630742 625297786 718539477 718539477 444624065 874549530 874549530 606655768 367525968 244056312 734126325 734126325 201689292 181939444 781221888 784909533 784909533 573544836 720446597 720446597 681540596 543760468 554429760 554429760 151049984 52379184 286384704 286384704 285294816 9193536 478727270 478727270 768380492 969934025 849906785 849906785 388483354 388483354 717083995 717083995 604027676 624527145 868229682 893454443 1015548291 1015548291 943017301 943017301 893635742 1056144013 1056144013 635427312 68033544 24434600 0 86311136 193982780 193982780 254298536 254298536 100928632 100928632 437465888 506790106 585322068 585322068 548228008 548228008 713741924 773247496 773247496 669773592 635697193 635697193 512262162 202116108 814818383 814818383 81789384 635472224 866197875 866197875 973880586 973880586 490748959 871568560 871568560 596077526 963826599 963826599 549412000 583434591 583434591 904385809 904385809 618448524 618448524 710202468 710202468 704726149 667129608 150651824 31977506 291601218 300302402 300302402 283171138 813690753 813690753 810971267 541211648 541211648 823529056 823529056 551110402 565558690 565558690 559361922 81006216 81006216 75287176 502326304 502326304 486090702 550712001 813570884 828965571 828965571 231801513 21172384 21172384 4395168 4329600 4325376 772293109 772293109 657490508 657490508 778430877 791446308 791446308 763153901 775582121 775582121 751514005 740075104 629719408 639680536 639680536 88414256 88414256 45688656 17369416 80414272 80414272 123025776 123025776 104272240 32960576 32960576 28106464 42979864 102614600 102614600 216336797 554559552 562423905 562423905 72221296 762514861 762514861 743376478 165886351 166344568 671256604 671256604 304890055 58868448 38982288 168587208 728526652 728526652 478150734 478150734 452318646 910543696 910543696 277125586 34113314 323245746 411187893 584134739 698361971 698361971 545139941 705432597 807575126 816995081 816995081 619022468 773972253 983687629 983687629 184814612 436994052 837353524 837353524 602474441 602474441 426075392 405624326 839302037 839302037 876271579 876271579 272629760 939526656 939526656 453923887 354677034 1061675108 1061675108 918952155 975873090 975873090 303083960 684472384 1052972277 1052972277 947840584 947840584 550405341 550405341 60012784 111030104 111030104 923451959 990958651 990958651 989944192 184112844 184112844 74190216 147188420 306047890 306047890 831084711 831084711 911192216 911192216 272629890 951104804 951104804 544450501 267901122 861234868 1031372756 1031372756 269967628 269967628 520922974 520922974 523256158 523256158 369233946 822085920 822085920 670712049 930455985 930455985 326191744 596380785 605150289 651272745 651272745 562106464 562106464 86697248 84630688 23941376 68629064 68629064 43388252 188443224 188443224 94549600 227619648 227619648 253008208 253008208 242516184 93653416 95494304 561751224 561751224 232975552 765464596 765464596 657376353 204000557 345561960 345561960 208859848 892363724 892363724 875631082 835748270 1022039429 1022039429 562734026 828156098 1031720259 1031720259 751356271 957691814 957691814 702832226 607150434 417515690 158630284 158630284 429181480 429181480 427960150 465064318 465064318 514233094 593533400 613015615 1065889094 1065889094 762405865 762405865 546980642 546980642 235152086 298628381 298628381 886266135 886266135 1064322006 1064322006 582346539 563161070 629197766 694206885 694206885 608790537 349120075 349120075 536875008 622002312 622002312 559100577 55752832 126927480 156818008 156818008 152030164 61681136 402395850 402395850 294683812 467826670 467914962 467914962 409847700 409847700 307565432 307565432 113802456 337851584 338440978 338440978 541590657 541590657 812137058 858469683 884018720 884018720 557590347 549923968 516142798 1044792390 1044792390 772274293 772274293 759629913 700813336 700813336 690488581 732447653 732447653 352770090 841564628 1035418479 1035418479 871707199 819808643 820255824 820255824 816250848 816250848 278678240 18844128 19608864 19608864 11958080 101763240 101763240 536875137 536875137 121747000 642254849 738361356 738361356 647137297 647137297 181489876 671610048 714333044 714333044 784284840 784284840 564177248 160539360 31274760 29546952 67163168 191865796 230975876 230975876 223380652 222298284 102433444 135280156 254849440 254849440 44696028 399504096 399504096 335931402 18738720 299612160 299612160 64037616 110100576 110100576 77030016 28530752 79701292 151784484 239309136 239309136 135078944 384528878 384528878 396490842 396490842 394651770 381722668 159774944 217385090 366732970 866620171 866620171 289860584 843903448 843903448 647945817 396892705 285526050 814731274 825600669 997536318 997536318 354294828 268730370 268730370 340803592 340803592 272728832 206569988 405293200 441265302 441265302 440976534 440976534 496374014 507934894 507934894 499288164 165761040 245386916 245386916 179359208 4497032 21303744 21303744 85001608 85001608 27468576 27468576 2545920 74143744 74143744 67513472 15913472 346504264 385164354 385164354 270562240 270562240 338985038 338985038 312497754 538219356 538219356 405822239 449950896 999065980 999065980 367114341 541205822 739901390 806021877 806021877 950927652 950927652 364550559 113792590 191998798 247819302 1049780562 1049780562 844085069 452793969 195035508 204995340 336625582 336625582 382418026 382418026 395231536 407372812 408105606 408105606 408105606 346098100 346098100 476793696 476793696 483100078 514463106 514463106 290021860 153488836 56919268 47802592 35930240 35930240 54013232 55904624 318953060 328274004 328274004 313143668 612437993 1037703878 1037703878 1033971119 882777675 882777675 823071401 549662913 635780584 635780584 689567236 689567236 57880752 57880752 34051152 80577512 80577512 105654240 105654240 66135024 55181552 274142018 341081504 341081504 327934788 327934788 500678244 500678244 520510770 520510770 168452436 506272072 506272072 309465472 309465472 652881896 652881896 112110424 112110424 86360072 38904608 118498072 531649620 531649620 523614092 172413772 81691929 633602265 845424969 845424969 621830948 873542145 873542145 749195334 612817229 414503565 484187287 484187287 541459560 541459560 147349515 32580576 666449264 666449264 447381824 868620294 868620294 734003445 41324019 28009334 545457808 545457808 651773404 695187156 695187156 233097708 319732568 319732568 870492132 896172107 896172107 890838695 766121325 766121325 883381494 883381494 794930361 794930361 633813225 556778497 556778497 952204372 952204372 673394949 673394949 821053874 821053874 1047550161 1047550161 546575202 275225640 235149850 342401376 342401376 946246016 946246016 688163855 688163855 1024229474 1024229474 741793544 741793544 438406837 430881313 430881313 211429420 211429420 203345508 252578844 252578844 143252012 207092300 207092300 392237364 598180637 598180637 495294818 793415191 793415191 545940986 802222461 802222461 787555293 864551180 864551180 858722136 858722136 605447224 269736256 82114824 51563400 48276224 48276224 76118304 88593984 88593984 92604160 92604160 68229312 103421208 103421208 117115824 117115824 134207024 134207024 38847120 86711304 91002304 96555424 96555424 55317984 42280496 50397744 50397744 33819168 51380784 51380784 43388176 234001105 795175389 795175389 624902492 628990997 628990997 315886290 717803218 717803218 384043482 54944330 280873024 280873024 77067072 35547762 331285362 331285362 296012130 119705361 925284914 925284914 606833544 607835913 607835913 816579658 816579658 817087435 826413187 839438832 839438832 367416160 384753634 384753634 309779346 82599426 340744392 340744392 312398914 66388674 530946730 530946730 198380568 71161524 324193954 351322160 351322160 419463850 419463850 411041862 445842036 476790926 476790926 215615280 390353952 521142846 521142846 520357950 520357950 633654231 633654231 550891040 693517750 693517750 551889382 315559904 379892776 379892776 299962818 44639168 44639168 209329440 784348532 784348532 683728576 597157945 978444200 1039263631 1039263631 1031881600 436806678 279521092 726159928 726159928 659957822 927017215 927017215 697232841 697232841 619551365 845330962 845330962 384870994 615263434 615263434 295698786 964960578 964960578 971621538 971621538 936488583 689514199 689514199 639804673 612340683 923421665 998747483 1019390065 1019390065 903873003 538434600 769655446 996878254 996878254 196550004 892936096 983565183 983565183 896984674 233758346 112147800 365663874 365663874 269034498 89858112 221914956 474842732 474842732 482419526 482419526 360186848 472974508 472974508 329591041 504184286 504184286 578959875 618016435 618016435 866461937 866461937 335902992 840636272 929248058 929248058 346849811 269947410 268844384 39773632 281134210 281134210 411708514 554247201 554247201 600785492 600785492 143657016 203162748 401308395 401308395 356848968 341122188 413928774 605816330 841222403 841222403 327289395 315547336 692753504 960630951 960630951 709175463 708972693 269087895 153877828 188569664 188569664 9755444 8480068 675975680 675975680 813524969 813524969 632501097 632501097 683991632 683991632 671101633 579213393 579164385 941520087 973095093 973095093 206844268 254492120 254492120 168932692 357564416 822666914 822666914 887264832 900668011 900668011 542633777 867339585 867339585 707348497 438953238 1042466839 1042466839 786658512 735197236 735197236 538539720 538539720 671663109 671663109 215216844 215216844 707110132 707110132 760925865 760925865 744900769 744900769 703476709 671522857 585584680 585584680 330356088 330356088 303220306 303220306 322249522 322249522 958100515 958100515 825102881 283564482 283564482 985170626 1051477429 1051477429 944931762 674022579 654472583 915833428 915833428 746887241 690463022 978605079 978605079 570591493 310952768 233309676 805933841 805933841 709495856 709495856 280232194 196555456 196555456 194460276 294799490 294799490 168825584 507187782 507187782 191964848 31267936 44441712 44441712 15629392 21608584 207807648 244056312 244056312 201689292 201689292 206119208 800156260 800156260 756920013 550384224 550384224 857554343 857554343 981992535 981992535 867763250 439953174 992831920 992831920 811977024 811977024 555219489 606339333 606339333 768380492 969934025 481624066 481624066 792669020 792669020 875401247 875401247 604027676 624527145 624527145 8488320 1015548291 1015548291 943017301 943017301 580837988 1056144013 1056144013 635427312 113583256 31283928 132138648 132138648 86311136 269290914 301416294 940981588 951132421 951132421 437465888 460616278 545824406 1024172780 1024172780 796697836 796697836 713741924 690920444 255150028 255150028 125837736 173118052 173118052 150110212 150110212 84968760 635472224 635472224 608487561 546466318 885332076 885332076 942805953 942805953 596077526 963826599 963826599 549412000 549412000 322076127 129241432 129241432 63311904 118507144 597606528 697467044 697467044 101864872 29393152 23314688 560030116 695509127 959785767 959785767 939532546 939532546 810971267 541211648 541211648 963869412 963869412 551110402 565558690 565558690 559361922 78644619 805644291 805644291 572833593 572833593 486090702 550712001 781241019 828965571 828965571 768539866 766549987 1062339235 1062339235 660417817 660417817 772293109 772293109 657490508 657490508 608867977 791446308 791446308 763153901 763153901 731907117 740075104 740075104 132382984 120526208 120526208 88414256 88414256 45688656 17369416 80414272 80414272 123025776 123025776 104272240 60027936 44485968 44485968 42979864 102614600 102614600 126409312 554559552 562423905 562423905 92800104 917472524 1000336407 1000336407 824730657 824730657 1070105830 1070105830 969413806 292195758 93855234 93855234 71892992 425264680 478150734 478150734 452318646 140605846 589843900 589843900 490770432 490770432 411187893 584134739 698361971 698361971 545139941 705432597 705432597 412520972 412520972 619022468 786506205 983687629 983687629 296148256 623791370 837353524 837353524 602474441 602474441 190836544 105371541 839302037 839302037 646225070 289211017 96733416 1057057860 1057057860 990064303 354677034 354677034 725655631 725655631 1015637443 1015637443 675406953 675406953 671629319 994191483 994191483 554021616 554021616 198404133 60012784 755528986 992211255 992211255 324800178 989944192 989944192 878766093 878766093 811588227 272705539 286607137 286607137 224585984 224585984 13920460 21496960 21496960 17566752 19142116 153485696 512035680 512035680 270542080 269034498 312445185 799220835 799220835 578959222 512623388 512623388 489269513 822085920 822085920 670712049 930455985 930455985 906176280 906176280 387398202 282408696 30418144 30418144 86697248 268481002 268481002 98289960 127046320 127046320 360923428 360923428 520566846 520566846 364034056 389485098 389485098 386982512 386982512 403757768 403757768 269071571 269071571 105469162 765464596 765464596 657376353 908273466 908273466 880787104 880787104 892363724 892363724 272365314 353477824 694195328 694195328 562734026 828156098 1031720259 1031720259 740275755 957691814 957691814 340652704 400021688 400021688 174113936 142115304 471890820 471890820 191348193 783264245 797022457 797022457 784470237 613015615 1065889094 1065889094 762405865 762405865 659568281 671089664 671613957 671613957 1060498239 1060498239 886266135 743306340 948124733 948124733 235753479 134226028 134226028 68969088 634521641 766568256 766568256 536875008 536875008 399692538 399692538 536916960 540066561 694511440 694511440 299740504 525437108 525437108 60033648 269099552 269099552 25936928 28046688 98747534 226465440 226465440 286804416 286804416 337851584 338440978 338440978 541590657 541590657 811076193 811076193 884018720 884018720 557590347 504411374 580864217 776113220 776113220 772274293 772274293 759629913 700813336 700813336 608522360 625515651 625515651 477626400 841564628 1035418479 1035418479 871707199 819808643 820255824 820255824 816250848 816250848 278678240 17547728 54476592 54506768 54506768 101763240 101763240 536875137 536875137 105304712 642254849 738361356 738361356 885861451 1003948587 1003948587 671610048 714333044 714333044 784284840 784284840 564177248 160539360 69224816 120795960 376479404 498535488 498535488 230975876 223380652 222298284 251707544 251707544 515552262 515552262 472622402 472622402 399504096 335931402 85509672 299612160 490435182 490435182 230786692 230786692 375523776 386273512 386273512 132121000 239309136 448966300 448966300 249956384 249956384 452526982 452526982 454459538 454459538 783450553 783450553 1057383896 1057383896 4227104 918555832 918555832 315757266 487719164 487719164 285526050 631167488 631167488 319371866 354294828 354294828 268730370 268730370 340803592 340803592 206569988 354104576 354104576 366491200 366491200 255083276 262158192 262158192 184685540 107416112 107416112 142778800 245386916 245386916 179359208 17456704 17456704 15364544 85001608 85001608 27468576 27468576 2545920 74143744 81335296 81335296 383475400 383475400 385164354 385164354 382827792 382827792 205453520 205453520 503481100 639894862 639894862 540856065 761962896 939788672 939788672 115822135 404747332 739901390 806021877 952339135 952339135 950927652 364550559 812815824 812815824 518779342 1049780562 1049780562 844085069 605401098 510870958 510870958 509875102 872554676 872554676 925028409 925028409 758009240 946602381 985744773 985744773 524413964 502655982 1005823724 1005823724 225194841 180921604 177042704 411428934 411428934 329337140 47802592 45163520 35930240 54013232 55904624 55904624 43914704 65085936 65085936 14880816 29432208 50930736 50930736 75835464 75835464 13896384 210448064 210448064 62392176 218283474 218283474 108359990 98022722 125930402 125930402 20870592 290995064 290995064 368350506 368350506 269594626 323905056 323905056 327934788 327934788 458013596 458013596 622991715 622991715 464400552 677554268 677554268 551625285 761236005 761236005 652881896 736408944 736408944 584633436 584633436 118498072 760505021 760505021 172413772 357572340 357572340 633602265 845424969 845424969 621830948 873542145 873542145 749195334 612817229 683837185 683837185 512769185 813506547 813506547 441249362 605212768 666449264 666449264 647229488 567846000 451352990 992252257 992252257 419479590 956026768 956026768 104305040 112074072 114958008 120198456 120198456 117572864 89990792 89990792 390242864 390242864 353988762 396749114 883381494 883381494 191754579 67175992 538022304 594719649 594719649 430515558 430515558 416810694 416810694 135790786 931153146 931153146 475919304 475919304 232568320 160467688 342401376 507824286 507824286 525075614 525075614 356568262 648822921 648822921 978326662 978326662 741478547 741478547 450020124 211429420 664587897 664587897 654729121 776211044 776211044 708262869 708262869 599266976 267649072 267649072 255153728 158022216 158022216 179442516 179442516 36700944 151085392 262161124 266338812 266338812 259063904 3021344 2696448 2279424 2279424 15731328 15731328 12966528 8099328 8099328 14362048 14362048 4317312 2621696 67336064 67336064 5484808 59012800 59012800 38847120 38847120 31701904 39062880 55970784 65804417 537920001 663525913 663525913 328603707 328603707 302826624 303367265 599859441 795175389 967016586 967016586 965195362 628990997 315886290 717803218 717803218 7340885 9728 0 77067072 77067072 35547762 331285362 331285362 296012130 289741611 925284914 925284914 401690234 401690234 592752034 592752034 808021514 817087435 828036771 839438832 839438832 0 68603904 68603904 68422152 68422152 68422152 161226144 161226144 94248552 94248552 94248552 69211648 69211648 67108872 194412560 482667722 482667722 260384892 310413498 445842036 445842036 396540890 494934288 494934288 521142846 521142846 520357950 520357950 633654231 633654231 593543601 693517750 693517750 551889382 316181776 323242098 323242098 294000738 9860386 54120432 134660864 168968212 683728576 683728576 882188376 952223340 1019290799 1019290799 912418657 436806678 279521092 730083440 929016249 929016249 634164658 634164658 697232841 697232841 619551365 845330962 845330962 516409024 890390350 890425899 891149099 891149099 809313284 971621538 971621538 936488583 689514199 935394784 935394784 877071123 923421665 923421665 977751367 977751367 812510595 538434600 654004966 943870559 943870559 474530958 892936096 983565183 983565183 896984674 447158970 345760778 365663874 365663874 393582076 599729078 604768197 604768197 474842732 482419526 660065922 1071963040 1071963040 585589838 902350616 902350616 1072956008 1072956008 698395598 760866477 866461937 866461937 827361274 859154186 1067889963 1067889963 303203602 454949958 456454112 456454112 44340036 171041556 193036804 554247201 554247201 600785492 600785492 514961446 514961446 891846244 891846244 356848968 170212718 254542571 636751669 841222403 841222403 384178650 697353301 697353301 165364964 165364964 673326404 673326404 149104928 153487588 188569664 188569664 35359744 538133888 544995201 771008353 771008353 702959787 969357543 969357543 1047767643 1047767643 671101633 579213393 579164385 689352949 973095093 973095093 206844268 254492120 303056797 303056797 978347537 978347537 358090410 629145906 634692033 973539865 973539865 867339585 867339585 707348497 486766612 1042466839 1042466839 550105857 735197236 735197236 743263373 743263373 671663109 743556164 764446401 764446401 235933980 555393428 555393428 544113696 248664424 496670634 496670634 206577368 59506712 83908096 394268690 394268690 318902360 303220306 322249522 956566692 956566692 825102881 825102881 810623619 810623619 985170626 1051477429 1051477429 230348652 230348652 186855732 971993820 971993820 882863695 671669906 978605079 978605079 662193874 662193874 233309676 771492071 771492071 697352518 543361476 280232194 196555456 196555456 194460276 294799490 294799490 168825584 507187782 507187782 191964848 22230496 69103616 69103616 101186872 120904568 207807648 207807648 169618048 157122788 159721572 206119208 800156260 800156260 756920013 550384224 580792320 857554343 857554343 981992535 981992535 867763250 439953174 992831920 992831920 811977024 811977024 671302052 671302052 606339333 751306865 751306865 481624066 870636082 1001179426 1001179426 875401247 875401247 782885640 877774660 877774660 862488850 929833379 929833379 509160101 990437838 990437838 425724638 425724638 120734920 113583256 336236618 336236618 132138648 286001154 286001154 301416294 940981588 951132421 984099496 984099496 801995327 948849316 1024172780 1024172780 796697836 796697836 267669608 562651781 657983289 657983289 284637690 284637690 225424208 920219059 920219059 678547261 678547261 440873203 472922436 472922436 885332076 885332076 942805953 942805953 564343088 660861369 660861369 659749469 682037573 682037573 673585413 635691768 625707784 625707784 591664049 697467044 697467044 570441888 563628081 537133350 560030116 695509127 959785767 959785767 939532546 939532546 537208833 421998627 155791748 963869412 963869412 145338371 19664160 20120008 231470540 237557451 805644291 809439874 809439874 806479428 293002146 767971409 781241019 781241019 768539866 768539866 766549987 1062339235 1062339235 660417817 847708492 1016804943 1016804943 562434028 608867977 689111588 689111588 553857057 553857057 135279141 73728 84619264 84619264 8524840 84553728 84553728 31249184 31249184 16777152 339683796 484259604 484259604 367593776 391915030 391915030 330566514 301505906 278446274 274548564 278395458 278395458 269739340 630547061 630547061 713379113 713379113 917472524 1000336407 1000336407 824730657 824730657 1070105830 1070105830 969413806 923013161 923013161 243998760 756183220 756183220 516962296 1029860071 1029860071 140605846 589843900 589843900 490770432 490770432 99371680 416030326 416030326 280569666 280569666 245809596 470946140 470946140 516120106 516120106 786506205 954278237 954278237 296148256 629555306 812364112 812364112 604785928 604785928 1021074114 1021074114 342091343 646225070 646225070 821536743 821536743 1057057860 1057057860 990064303 142681188 213950513 1000366477 1000366477 1015637443 1015637443 675406953 675406953 671629319 994191483 994191483 554021616 554021616 198404133 124216848 755528986 992211255 992211255 587806625 639774224 639774224 878766093 878766093 811588227 272705539 286607137 286607137 214079168 214079168 173878932 267729212 267729212 172826772 120524204 153485696 512035680 512035680 509768594 430509688 430509688 799220835 799220835 658641081 658641081 648549606 648549606 940165576 940165576 595630555 595630555 780830924 906176280 906176280 654610480 654610480 604515337 585487232 585487232 268481002 268481002 98289960 156914336 184623156 360923428 360923428 520566846 520566846 364034056 389485098 389485098 386982512 386982512 403757768 403757768 269071571 269071571 105469162 366249329 366249329 299966946 908273466 908273466 880787104 880787104 539192608 165249737 272365314 353477824 694195328 694195328 544262029 766968040 1029834952 1029834952 1034081164 1034081164 958951426 693489223 629254764 412953602 412953602 169404456 496026142 496026142 191348193 783264245 797022457 797022457 784470237 625872360 209994901 760752204 760752204 726928037 659568281 671089664 671613957 671613957 1060498239 1060498239 948403283 948403283 948124733 948124733 235753479 134226028 134226028 79253312 634521641 766568256 766568256 737117696 655223865 399692538 818944608 818944608 540066561 694511440 694511440 299740504 525437108 525437108 356864568 402271982 471573294 471573294 460526290 498633848 498633848 435074282 323055440 323055440 311492882 311492882 426345354 426345354 393322706 393322706 132121080 208748976 237236500 237236500 209858936 580864217 580864217 198087768 198087768 671417545 722494184 784457949 784457949 608522360 173328969 477626400 477626400 150996902 83886084 1574400 1574400 5904800 29780000 29780000 17208192 31436994 275252610 298780288 298780288 54506768 54506768 19134240 16887840 5374344 68818440 71832192 538054656 538054656 537803466 885861451 1003948587 1003948587 580658429 269814843 986132944 986132944 311535696 557179457 557179457 71401986 707111185 707111185 498535488 498535488 558124064 558124064 704708717 788667272 788667272 716486672 716486672 472622402 472622402 229629036 202375692 205304608 286934816 490435182 490435182 230786692 230786692 375523776 386273512 606367069 606367069 606903764 1001321316 1023523722 1023523722 913844818 714189086 706005525 704751888 557951248 783450553 783450553 1057383896 1057383896 466247210 918555832 918555832 653353945 653353945 531227493 530762314 530762314 1066135916 1066135916 1035829350 262360110 216437452 1042520115 1042520115 843076029 668588369 668588369 606111734 1019046196 1019046196 1068917744 1068917744 595803098 45023680 107416112 107416112 131334160 131334160 76567184 76567184 57852264 19956000 15364544 29577216 29577216 18084384 4457472 4928640 16580864 541079385 541079385 383475400 939198345 939198345 889872091 889872091 382827792 964488451 964488451 573227666 639894862 979079704 979079704 761962896 761962896 556790168 235145244 235145244 255248712 525622134 952339135 952339135 384181146 783828574 812815824 812815824 601131038 1037091567 1037091567 605401098 605401098 510870958 510870958 509875102 872554676 872554676 925028409 925028409 758009240 946602381 985744773 985744773 524413964 502655982 1005823724 1005823724 438584352 806098147 806098147 411428934 411428934 602053413 718741697 718741697 564330769 592845344 592845344 298062948 867109317 867109317 520826912 554567161 981959958 981959958 833181959 384353754 973399384 973399384 792440037 792440037 589398136 589451312 589451312 471471630 471471630 409215060 409215060 183887082 465308264 465308264 368350506 368350506 269594626 323905056 366008906 366008906 354080298 354080298 266052378 622991715 622991715 464400552 677554268 677554268 551625285 761236005 761236005 644643728 736408944 736408944 761923338 1041160207 1044139031 1044139031 763757911 351846511 357572340 357572340 111453633 111453633 453596449 453596449 646733904 646733904 751414857 751414857 744040077 683837185 512769185 819439504 845264539 845264539 605212768 605212768 647229488 783595940 783595940 451352990 992252257 992252257 419479590 956026768 956026768 600212145 140618068 140618068 532812030 532812030 156972708 861113540 861113540 799299942 799299942 353988762 36602486 635178963 635178963 403152471 570514059 570514059 594719649 594719649 839042295 839042295 914957403 914957403 466594189 931153146 931153146 947962129 947962129 481461130 619886223 619886223 605034639 874388054 920559323 986992315 986992315 474513618 378686641 978326662 978326662 741478547 741478547 450020124 95437088 664587897 664587897 654729121 776211044 776211044 708262869 708262869 599266976 267649072 267649072 255153728 158022216 253808448 253808448 227805244 243583068 243583068 262161124 266338812 266338812 259063904 119859560 119859560 107761368 116960464 116960464 102532488 76638080 7456256 7456256 7424000 7424000 2621696 2621696 67336064 112979112 112979112 51801008 48718256 25764960 85991720 85991720 25691232 272810898 290876112 537920001 663525913 663525913 328603707 328603707 302826624 303367265 599859441 599859441 967016586 967016586 965195362 865196904 865196904 915188740 915188740 217369152 217369152 272113664 272113664 25262602 63792562 296589314 296589314 332187120 332187120 825607954 825607954 401690234 401690234 592752034 592752034 808021514 808021514 828036771 828036771 606765994 346526818 346526818 324231862 324231862 169722910 369963994 369963994 227749696 227749696 148266284 391670118 391670118 242170416 411340346 411340346 482667722 482667722 260384892 310413498 310413498 172450254 396540890 494934288 494934288 309379986 309379986 458492598 671193842 671193842 593543601 593543601 46357633 856239296 856239296 853410547 338962474 338962474 294000738 285868936 356726378 356726378 130885962 381747264 1065708206 1065708206 882188376 938026491 938026491 926492475 926492475 672137733 806477830 929016249 929016249 713143376 948689933 1016069199 1016069199 946420947 908715291 516409024 516409024 890390350 890425899 891149099 891149099 675080047 970398758 1057138515 1057138515 619898925 935394784 935394784 877071123 1057231004 1057231004 977751367 977751367 820004143 820004143 805602485 654004966 474530958 474530958 1027355028 1027355028 516498579 447158970 447158970 345760778 358921286 358921286 393582076 599729078 604768197 604768197 604340224 537184649 660065922 1071963040 1071963040 585589838 902350616 902350616 1072956008 1072956008 698395598 760866477 760866477 827361274 827361274 859154186 1067889963 1067889963 303203602 454949958 456454112 456454112 86527736 171041556 193036804 193036804 128211060 167808018 336858142 514961446 514961446 891846244 891846244 763669678 763669678 436018284 636751669 636751669 384178650 384178650 697353301 697353301 543130753 543130753 673326404 673326404 289983728 572932272 1012061624 1012061624 690032257 808826831 808826831 771008353 771008353 702959787 969357543 969357543 1047767643 1047767643 441803278 591735439 591735439 201336965 42992208 577732897 577732897 931971592 994360147 994360147 978347537 978347537 394904657 629145906 689320813 973539865 973539865 883549515 1047131231 1047131231 486766612 397011018 603757944 627138141 627138141 715195168 743263373 743263373 478742951 743556164 764446401 764446401 235933980 235933980 114820616 248664424 248664424 496670634 496670634 144727960 59506712 352978960 394268690 394268690 318902360 138936614 338402730 956566692 956566692 286135072 806604928 866011328 866011328 488116269 99276264 190055360 240049308 240049308 858241362 971993820 971993820 882863695 242292747 608097664 608097664 662193874 662193874 173015700 173015700 139723392 50743968 50743968 171064596 171064596 163774496 181682240 181682240 8915008 8651840 74523156 110502540 146680648 155323897 628527257 628527257 101186872 120904568 120904568 169618048 712119189 712119189 675396609 675396609 145524224 198247988 198247988 279969346 580792320 819738069 819738069 141901507 138557568 138557568 15993792 274743552 823134240 823134240 31490593 671302052 671302052 554715748 554715748 17134500 274369649 870636082 1001179426 1001179426 354709487 782885640 782885640 877774660 877774660 862488850 929833379 929833379 1015278642 1015278642 990437838 425724638 592008312 592008312 282592234 882903499 882903499 895485410 895485410 961419399 961419399 817043540 817043540 984099496 984099496 801995327 948849316 948849316 731271680 731271680 545724513 545724513 562651781 657983289 657983289 505397866 505397866 225424208 920219059 920219059 678547261 678547261 440873203 472922436 472922436 236986649 686872677 686872677 556157797 470008710 660861369 822108866 822108866 682037573 682037573 673585413 635691768 625707784 625707784 591664049 41943120 570441888 570441888 563628081 537133350 537133350 421529601 352438314 877859457 877859457 623945410 1029966218 1029966218 687865893 73665709 568790373 568790373 699384678 767606698 767606698 237557451 345010179 809439874 809439874 806479428 249296604 767971409 767971409 676360366 968537412 968537412 889902123 810175398 810175398 512070015 847708492 1016804943 1016804943 442263641 765775096 765775096 777253196 777253196 754903477 719904493 805031397 805031397 743740516 78552480 84553728 84553728 82742144 82742144 161151888 339683796 484259604 484259604 367593776 391915030 391915030 330566514 301505906 278446274 274548564 278395458 278395458 269739340 630547061 949934667 949934667 713379113 555145761 434555782 434555782 290619982 290619982 326756404 1029631951 1029631951 986471509 986471509 696786184 765460845 1067621757 1067621757 1029860071 1029860071 836764131 483961701 735854668 811140210 811140210 72694388 416030326 416030326 280569666 280569666 245809596 470946140 470946140 516120106 516120106 707094889 707094889 678292869 927716480 927716480 923132985 735439605 735439605 742425901 1021074114 1021074114 342091343 809140058 809140058 821536743 821536743 891455726 891455726 865479857 877463592 877463592 1000366477 1000366477 910180616 156247064 651232540 839769733 850007379 850007379 401241367 551957376 551957376 181935968 181935968 195242212 195242212 587806625 587806625 639774224 639774224 611164672 543737217 554126881 554126881 743366281 755712173 755712173 134888080 173878932 267729212 610933557 610933557 705506325 705506325 696545128 509768594 509768594 430509688 430509688 598870374 598870374 658641081 658641081 648549606 648549606 940165576 940165576 862402995 572657937 780830924 780830924 537563330 654610480 654610480 604515337 585487232 585487232 58240752 142231424 142231424 184244176 184623156 184623156 233969362 953685469 953685469 59381200 436283904 436283904 834928873 834928873 310481114 853684657 853684657 390320368 114835800 114835800 39109144 71094024 115379920 115379920 79740040 79740040 165249737 165249737 146507172 206706149 232935489 232935489 286570658 286570658 1029834952 1029834952 1034081164 1034081164 958951426 693489223 629254764 412953602 412953602 169404456 496026142 496026142 301013198 334760512 343556236 343556236 625872360 625872360 132195328 132195328 119865528 674614504 674614504 336078388 336078388 277617287 277617287 579670289 948687955 948687955 816401048 816401048 693248613 693248613 632689256 820556044 820556044 234730828 737117696 878707083 878707083 281142195 818944608 818944608 400107258 400107258 385376272 385376272 293610784 331915650 356864568 402271982 471573294 471573294 460526290 498633848 498633848 435074282 323055440 323055440 311492882 311492882 426345354 426345354 393322706 393322706 62002032 208748976 371550466 373091114 373091114 345311064 448391534 448391534 274536448 274017482 722494184 784457949 789580392 789580392 609792042 609792042 83886084 838648940 838648940 736216999 577527213 541664385 588067792 588067792 836158048 836158048 275252610 298780288 298780288 301083168 301083168 87352096 72885376 544469001 642860800 642860800 72499345 741905285 741905285 575152793 742852309 742852309 683743828 714226548 986132944 986132944 944677895 955299122 955299122 71401986 707111185 707111185 676678352 676678352 618961213 709102152 709102152 788667272 788667272 716486672 716486672 151606392 229629036 229629036 139443072 205304608 205304608 763455469 763455469 945146412 945146412 820422681 820422681 606367069 606367069 606903764 1001321316 1023523722 1023523722 913844818 714189086 706005525 704751888 557951248 638632289 780263517 780263517 466247210 466247210 399168762 445219333 853108435 853108435 778996209 778996209 650607690 1066135916 1066135916 1035829350 917332087 957087034 1042520115 1042520115 843076029 668588369 668588369 606111734 1019046196 1019046196 1068917744 1068917744 595803098 493551924 26045766 25643624 83626408 83626408 111605176 111605176 74325896 74325896 33231200 86061864 86061864 15736832 22691392 29364832 220926896 543950720 793248957 793248957 939198345 939198345 930281692 889872091 94845288 964488451 964488451 645922898 872415243 979079704 979079704 643777171 861497126 861497126 595640433 595640433 828409044 828409044 817238883 748037663 832310883 832310883 783828574 513312605 601131038 1037091567 1037091567 570443792 537184257 134496780 169388548 169388548 102311448 369628184 369628184 335577090 67158024 67158024 269238272 269238272 35842 0 0 537924672 537924672 806098147 806098147 410922454 55913136 602053413 718741697 718741697 564330769 592845344 592845344 298062948 867109317 867109317 606244628 606244628 981959958 981959958 833181959 384353754 973399384 973399384 792440037 792440037 589398136 589451312 589451312 471471630 471471630 409215060 409215060 192363444 465308264 465308264 368200652 368200652 261760574 270008352 366008906 366008906 354080298 369762518 369762518 217056204 110363540 10562368 41224704 661265456 661265456 643826073 94108960 132256248 132256248 75228784 761923338 1041160207 1044139031 1044139031 763757911 351846511 273979240 129499922 633484992 819930481 1043081229 1043081229 646733904 646733904 751414857 751414857 957653262 985529599 985529599 819439504 845264539 845264539 109889027 215629708 215629708 783595940 783595940 50780912 172934324 172934324 189342900 725674336 725674336 600212145 140618068 140618068 532812030 532812030 454242870 861113540 861113540 799299942 799299942 604212107 334945266 635178963 635178963 403152471 570514059 570824721 969838197 969838197 940798144 839042295 914957403 914957403 466594189 366968758 366968758 947962129 947962129 754726818 967469646 967469646 605034639 874388054 920559323 986992315 986992315 656317029 429578080 429578080 814789304 878133280 878133280 67108865 95437088 95437088 79709000 90227112 90227112 10824960 10824960 2435328 23070080 210518144 210518144 131612728 14206656 253808448 253808448 227805244 243583068 243583068 86098560 88679592 88679592 133981472 133981472 119859560 107761368 116960464 116960464 102532488 76638080 5317376 34341152 34360864 34360864 42241120 62967984 62967984 112979112 112979112 109871936 116122568 116122568 85991720 85991720 298919472 298919472 290876112 296870754 296870754 34357776 277088256 277088256 269558274 269558274 269484546 269557760 269557760 474122796 474122796 865196904 865196904 915188740 915188740 905489724 754078630 486654184 502894752 502894752 313141334 313141334 678377664 678377664 332187120 310675664 310675664 294912256 294912256 78777344 78777344 87429128 87429128 88529064 362564074 362564074 346526818 346526818 324231862 324231862 169722910 369963994 369963994 799078189 799078189 148266284 391670118 391670118 575101404 611823944 798304332 798304332 793196733 638984868 226566252 117965880 117965880 34228264 185069750 420909184 420909184 309379986 458492598 671193842 809777702 809777702 558833890 558833890 856239296 856239296 864249048 864249048 365075665 19997472 285868936 356726378 356726378 130885962 381747264 1065708206 1065708206 844227219 938026491 938026491 926492475 926492475 779876253 806477830 806477830 476816012 713143376 948689933 1016069199 1016069199 946420947 908715291 741907486 470685453 624740014 628147113 628147113 353836096 815607567 970398758 1057138515 1057138515 619898925 642335728 642335728 336673785 1057231004 1057231004 384393420 423634184 820004143 820004143 805602485 803203667 803203667 887143348 1027355028 1027355028 516498579 205308314 83950442 102080544 291387204 493048232 493048232 410242898 107161218 604340224 604340224 537184649 67744256 67744256 3302408 3146496 3211268 300502428 1045243080 1045243080 172824287 746333056 746333056 182191241 169936192 427526164 427526164 991882167 991882167 832522930 832522930 823682176 86527736 92274792 607144677 607144677 591681868 712104196 712104196 422705200 422705200 741086260 741086260 956465301 956465301 436018284 436018284 369888282 336728586 355735840 563118114 814793283 1001982887 1001982887 845016723 451292980 289983728 572932272 1012061624 1012061624 690032257 808826831 808826831 768341229 962149980 962149980 881012846 379658586 268492920 277889047 609251385 609251385 734255261 734255261 830718533 830718533 577732897 931971592 994360147 994360147 666712029 1054402554 1054402554 344573671 689320813 689320813 841930291 883549515 1047131231 1047131231 962992551 1061473562 1061473562 867879112 696566949 715195168 715195168 558632024 33619145 26508576 69291848 69291848 9963072 63049968 101758264 101758264 130023672 130023672 88426488 88426488 46928168 352978960 352978960 336069642 42598890 32117168 338402730 701898342 701898342 286135072 286135072 866011328 866011328 592759473 99276264 190055360 240049308 721438001 858241362 858241362 501115823 833427188 833427188 608097664 877151800 877151800 710411082 907215378 907215378 945957217 945957217 809878484 305328450 171064596 163774496 181682240 436211254 436211254 160432740 332736662 332736662 146680648 155323897 628527257 628527257 87148817 302063948 740438404 740438404 796465616 796465616 822887651 822887651 721870625 721870625 439692804 998589923 998589923 737010164 419958656 561105379 681362688 681362688 32820192 940575488 940575488 823134240 31490593 25592032 684216448 684216448 559164672 803533360 149961728 260084688 260084688 403239560 475739790 475739790 195710480 640695604 640695604 484189894 1023249183 1023249183 1015278642 1015278642 899170053 899170053 592008312 592008312 282592234 882903499 882903499 895485410 895485410 961419399 961419399 599842042 432017110 333304549 572411444 572411444 733615897 733615897 641719831 585111681 570425376 545724513 36524464 36524464 141966594 505397866 505397866 191081554 67683392 412510921 1011085455 1011085455 946678240 946678240 289525063 30356805 745928805 745928805 556157797 470008710 32556000 822108866 822108866 268573186 268830850 288465776 288465776 63174896 101883544 101883544 41943120 539051269 563111944 563111944 537020844 694177797 738461709 738461709 877859457 877859457 770273281 1029966218 1029966218 775980076 88773141 568790373 659823488 699384678 767606698 767606698 683173512 683173512 135841284 213944008 213944008 70631304 386175960 453948250 453948250 968537412 968537412 889902123 815964057 893338673 1029411840 1029411840 128574840 128574840 194138836 765775096 765775096 777253196 777253196 754903477 719904493 805031397 805031397 743740516 78552480 114885952 114885952 125405240 125405240 672734681 672734681 282201138 720400691 724493440 724493440 599312241 833317443 833317443 818287626 504516890 505463070 505463070 490095369 614761275 949934667 949934667 845545545 845545545 612374931 342003946 548455123 548455123 404273161 1029631951 1029631951 986471509 986471509 696786184 765460845 1067621757 1067621757 480440175 836764131 1031203542 1031203542 858833761 891706768 891706768 50595120 59510272 59510272 132663664 206883976 206883976 212877592 353817796 398773314 398773314 526189122 526189122 837952682 927716480 927716480 923132985 735439605 735439605 742425901 742425901 562639780 562639780 809140058 809140058 454710944 454710944 448932252 448932252 865479857 877463592 877463592 474025108 910180616 910180616 407445535 651232540 839769733 850007379 850007379 401241367 803434905 803434905 652673360 430811410 430811410 428003430 168112516 158845440 28508512 27985920 28470465 543737217 554126881 554126881 743366281 755712173 755712173 741636977 741636977 633003982 633003982 820590590 820590590 705506325 696545128 339861642 433237552 433237552 527597595 598870374 967187242 967187242 917960901 707374295 707374295 858136704 862402995 862402995 415553664 745406732 745406732 537563330 543846050 543846050 323201843 497067144 497067144 103162264 146254656 146254656 184244176 184244176 151160485 233969362 953685469 953685469 455738186 436283904 436283904 834928873 834928873 310481114 853684657 853684657 390320368 363344616 363344616 122295480 71094024 116007248 116007248 14992584 342642946 342642946 368003266 368003266 87385472 32679232 32679232 286570658 286570658 298708104 360718568 360718568 356587592 341485604 488438372 488438372 339946220 135577708 298385544 455268730 455268730 301013198 297049932 297049932 1017303064 1017303064 706780775 666404720 760861144 760861144 674614504 732957221 732957221 710265105 710265105 542237313 579670289 948687955 948687955 449380416 441988438 693248613 693248613 890624768 890624768 820556044 807147424 813795488 878707083 878707083 281142195 64004826 328145544 400107258 400107258 385376272 385376272 384166362 293610784 80390272 80390272 301086192 301086192 154363668 154363668 18283296 684204657 693144564 862293683 862293683 698215689 609536649 523837902 714180380 830562631 830562631 946872900 946872900 373091114 474723468 474723468 448391534 448391534 274536448 274017482 776260439 954714235 1019557953 1019557953 1003585705 1003585705 330300786 838648940 838648940 736216999 577527213 541664385 588067792 588067792 836158048 836158048 292811272 292811272 298195170 301083168 301083168 87352096 72885376 544469001 642860800 642860800 614049153 741905285 741905285 886702720 886702720 742852309 683743828 714226548 725026880 944677895 944677895 955299122 955299122 869515953 1062529085 1062529085 999341033 676678352 618961213 709102152 709102152 718461388 718461388 208081489 211231060 211231060 74169856 74169856 6952320 158873380 541955488 763455469 763455469 945146412 945146412 820422681 820422681 613960865 613960865 231216872 231216872 181606440 181606440 1042483482 1042483482 405553689 409426790 409426790 638632289 780263517 855704116 855704116 676193466 294185504 575144171 853108435 853108435 778996209 778996209 650607690 320031462 229400888 229400888 917332087 957087034 957087034 766560024 730334325 504938863 403067652 823184074 823184074 469931425 14680128 495993402 506511956 506511956 371775046 297436448 83626408 83626408 111605176 111605176 74325896 74325896 33231200 86061864 86061864 15736832 22691392 272971344 373951560 543950720 928724626 928724626 751752717 930281692 930281692 275825538 476916096 476916096 203014280 645922898 872415243 872415243 66175611 177323634 861497126 861497126 595640433 595640433 828409044 918816849 918816849 944512749 944512749 892864299 959583299 959583299 1016197346 1016197346 957424167 570443792 537184257 419147838 419147838 360037330 809271950 809271950 604307736 604307736 373083930 681166856 681166856 640722693 569405095 569405095 498243237 537924672 537924672 736375206 736375206 406982790 406982790 588525832 588525832 69405233 43853408 64757968 189596944 189596944 189341876 140871552 606244628 606244628 589583169 260569768 627593660 627593660 658832681 658832681 638056473 185022516 185022516 231220242 353120366 535821822 535821822 694680729 694680729 545121366 545121366 515446564 555819640 667419897 667419897 1062309984 1062309984 562561219 566887481 919606491 919606491 451810880 1024858671 1024858671 440836103 661265456 928504460 928504460 612161253 612161253 757760369 757760369 749410605 260706657 641372164 1023891253 1023891253 477784067 194542780 46841904 974147731 1024202653 1043336296 1043336296 954353411 954353411 438971034 438971034 957653262 985529599 985529599 870463416 870463416 493389622 493389622 215629708 215629708 376840596 433836591 973215255 1002494448 1002494448 331638912 853812416 853812416 571109185 16529617 606082098 925504827 925504827 454242870 454242870 453525706 71448066 604212107 604212107 334945266 613181019 613181019 590858528 590858528 570824721 969838197 969838197 940798144 798136982 798136982 756751580 347878032 347878032 585478383 901309295 901309295 754726818 967469646 967469646 556295488 805442053 805705731 805705731 672530950 656317029 429578080 429578080 814789304 878133280 878133280 716756177 620365449 553783329 655770081 655770081 743316476 796133352 796133352 756684333 619708936 217191080 210518144 159385908 102838108 155811944 253093480 253093480 246448448 204283980 234955788 234955788 234954780 216048312 216048312 249596224 249596224 18196864 5251712 5580800 5580800 8438720 34341152 34360864 34360864 54936224 62967984 62967984 59136368 18092400 109871936 116122568 116122568 63672320 66709488 298919472 298919472 353807177 548652019 814875219 814875219 361812570 276833816 276833816 102301762 131459832 131459832 316067050 361514558 361514558 1027035112 1027035112 990933783 905489724 905489724 754078630 486654184 502894752 502894752 409477120 313141334 678377664 678377664 306497682 310675664 310675664 294912256 294912256 78777344 78777344 87429128 87429128 88529064 88529064 86631720 338123872 338123872 369402034 369402034 921095054 921095054 342540777 799078189 799078189 798722608 1025906243 1025906243 903338066 903338066 893667938 893667938 793196733 638984868 185196596 185196596 189824596 189824596 185069750 420909184 420909184 300170852 842153350 842153350 809777702 809777702 558833890 558833890 541133557 811539601 864249048 902856688 902856688 389375778 389375778 351541032 74788520 90565032 117625080 915505160 915505160 844227219 610320777 610320777 443708321 750809457 779876253 779876253 476816012 476816012 269750040 269750040 375809298 480301192 481160526 741907486 741907486 1072129949 1072129949 178674372 353836096 353836096 815607567 815607567 675293708 235358783 772198928 772198928 336673785 336673785 781322980 781322980 384393420 423634184 423634184 715402326 808002819 808002819 803203667 887143348 887143348 719442009 719442009 619695458 414363992 147244532 291387204 493048232 493048232 940628778 940628778 609620805 284328129 1047748898 1047748898 800754560 800754560 801120456 947476604 947476604 1045243080 1045243080 816555928 816555928 146220296 38201484 13027152 38247248 940513697 991882167 991882167 832522930 832522930 823682176 102018872 102018872 607144677 910217192 932047995 1060962561 1060962561 422705200 422705200 749217834 758973603 956465301 956465301 429141164 369888282 369888282 336728586 927596706 927596706 814793283 1001982887 1001982887 845016723 411650694 411650694 14544576 436710290 436710290 638864192 929094483 929094483 681326529 962149980 962149980 881012846 379658586 489711842 508835760 823883354 823883354 734255261 734255261 830718533 830718533 500179081 218368146 386140218 386140218 154402966 1054402554 1054402554 511889512 511889512 482744558 1001959975 1001959975 406638342 705085874 962992551 1061473562 1061473562 867879112 696566949 696566949 558632024 981741871 981741871 176358485 954994059 954994059 254019996 254019996 101758264 215787832 215787832 522813626 522813626 191799304 124643816 124643816 103133072 318392704 318392704 11403520 81942400 81942400 68606472 12767424 147079872 591567360 592759473 889592354 889592354 991735821 991735821 721438001 748193324 750230277 750230277 833427188 833427188 548407211 877151800 877151800 710411082 1011008586 1011008586 945957217 945957217 809878484 305328450 143786368 134292880 51644448 436211254 436211254 160432740 332736662 332736662 38046248 21461936 50595888 51480832 68309538 658374814 740438404 740438404 796465616 796465616 822887651 822887651 721870625 721870625 586204113 998589923 998589923 737010164 410053030 561105379 681362688 681362688 32820192 940575488 940575488 417368641 586104464 586104464 684216448 684216448 559164672 803533360 608174181 696254601 696254601 403239560 475739790 475739790 466155656 640695604 640695604 738567184 1023249183 1023249183 683180152 692794533 899170053 899170053 693554830 362017650 367796102 367796102 273416546 810321122 810321122 340525539 249331948 432017110 432017110 2116 111414012 111414012 545553692 641719831 641719831 570425376 570425376 103026945 606212377 711817627 845657492 845657492 439752512 439752512 310540126 412510921 1011085455 1011085455 946678240 946678240 879897664 1023616171 1023616171 816382827 479437294 221954220 134878212 954778188 954778188 142682955 4661248 4661248 27603104 27603104 8573761 8573761 25503840 539051269 539051269 163806336 537020844 694177797 738461709 738461709 770233925 770273281 770273281 741417705 775980076 775980076 312433502 312433502 659823488 659823488 676532677 676532677 683173512 683173512 308399097 104398616 846081423 846081423 939623041 939623041 917732958 917732958 832629311 815964057 815964057 893338673 1029411840 1029411840 786989958 678429573 108792861 693443368 714104996 714104996 66295696 107461568 107461568 42986056 19474704 19474704 7155072 114885952 114885952 125405240 666582017 672734681 672734681 282201138 868054964 868054964 724493440 599312241 833317443 833317443 818287626 606029163 505463070 505463070 490095369 607165230 607165230 859877936 859877936 845545545 612374931 125564856 1028317800 1028317800 404273161 347575509 268570626 387842048 387842048 80378464 126563448 562269520 562269520 315065280 549749393 1031203542 1031203542 858833761 891706768 891706768 300417864 222562988 222562988 132663664 521327166 521327166 486934070 486934070 483968718 483968718 1046039071 1046039071 837952682 837952682 930247106 930247106 539103489 617692681 617692681 569642628 627050241 627050241 853695554 853695554 821166027 692288568 521407038 521407038 147685594 336084997 575413251 642002073 742649880 742649880 407445535 967174402 967174402 631243116 790907184 790907184 803434905 803434905 652673360 430811410 530833950 530833950 308794022 141977908 621063680 621063680 564786272 289313794 289313794 269111554 790005832 790005832 738246669 741636977 741636977 633003982 633003982 820590590 820590590 147915648 339861642 918630800 1065795302 1065795302 870963162 784899044 967187242 967187242 917960901 707374295 707374295 971136082 971136082 885207243 1031933295 1031933295 745406732 295049826 590790674 590790674 583238513 692094625 692094625 574908464 574908464 146254656 51224228 36965136 56822240 56822240 76023558 455738186 455738186 135331922 235194464 235194464 125888636 58837104 58837104 46141690 337191208 363344616 363344616 122295480 9109880 116007248 116007248 14992584 342642946 342642946 368003266 368003266 99800040 21588520 2146592 29935744 29935744 298708104 298708104 84495562 93768802 152308392 417086092 417086092 339946220 105449096 298385544 298385544 318974056 318974056 827869159 835642081 1017303064 1017303064 706780775 666404720 760861144 760861144 853414833 853414833 732957221 710265105 710265105 542237313 6638337 415257156 449380416 928108980 928108980 755553515 549654603 890624768 890624768 807147424 807147424 813795488 835053795 835053795 291627360 291627360 291627298 298622984 375897002 375897002 384166362 384166362 46126032 308054282 308054282 115607746 115607746 160467060 160467060 438666006 684204657 734372260 862293683 862293683 698215689 983708452 983708452 1040392937 1040392937 830562631 946872900 946872900 191648296 474723468 474723468 391028914 346166848 347214666 347214666 912605856 954714235 1019557953 1019557953 1003585705 1003585705 330300786 558151123 558151123 940341699 940341699 881362025 553730945 1015359493 1015359493 757291147 757291147 1023496197 1023496197 939878440 218524164 218524164 135535144 1122816 552665088 614049153 614049153 605078025 563720811 886702720 886702720 286786275 277877834 126055312 427697620 427697620 425775152 861139090 869515953 869515953 1062529085 1062529085 1007771581 1007771581 696131441 734683081 734683081 577035656 677270660 753557264 753557264 409415876 500542310 500542310 275579558 275579558 941765444 941765444 146601856 680532548 680532548 85987693 545261664 613960865 613960865 231216872 359460892 600204522 721785516 1042483482 1042483482 690588176 690588176 409426790 890290212 1023533103 1023533103 1042848589 1042848589 918343515 575144171 575144171 317031424 317582802 317582802 325556320 325556320 316793298 229400888 136478980 564290904 766560024 766560024 730334325 504938863 403067652 823184074 932633007 932633007 1011226896 1011226896 892914992 506511956 371775046 297436448 128975736 78665280 6870024 8827968 8827968 5881856 9483392 69883656 69883656 13753024 13753024 272971344 373951560 993861919 993861919 928724626 751752717 376801613 305236780 275825538 476916096 476916096 455820808 455820808 529442684 865302391 865302391 319046195 861123366 861123366 329436353 126140424 595068800 918816849 918816849 944512749 944512749 892864299 959583299 959583299 1016197346 1016197346 957424167 940340491 1047343620 1047343620 419147838 360037330 809271950 809271950 604307736 604307736 540904452 681166856 681166856 640722693 792290216 792290216 498243237 415280776 368690180 736375206 736375206 406982790 406982790 588525832 588525832 585441276 649601408 649601408 568699744 199606352 728273553 728273553 579421920 638603194 638603194 570808992 627593660 627593660 797519204 797519204 638056473 655833657 655833657 231220242 353120366 535821822 535821822 694680729 694680729 545121366 545121366 515446564 555819640 667419897 667419897 1062736902 1062736902 562561219 566887481 919606491 919606491 451810880 1024858671 1024858671 440836103 441921691 928504460 928504460 612161253 612161253 757760369 757760369 749410605 711315605 711315605 1023891253 1023891253 477784067 115244824 129862916 974147731 1024202653 1043336296 1043336296 954353411 954353411 438971034 438971034 903891191 903891191 556324489 870463416 870463416 678658881 678658881 777322829 777322829 549488744 588892200 973215255 1002494448 1002494448 331638912 853812416 853812416 571109185 16529617 606082098 925504827 925504827 319422729 168007168 655975210 655975210 1034593402 1034593402 966259677 966259677 726515719 590858528 590858528 929346592 929346592 493178083 1061585604 1061585604 261844352 310763264 347878032 347878032 585478383 725765292 725765292 631242345 464911925 556295488 556295488 91029793 174798228 608458277 706221793 706221793 301482036 416595318 705104486 889262090 916698177 925623419 925623419 553783329 655770081 655770081 743316476 796133352 796133352 756684333 619708936 383914120 333332488 159385908 102838108 155811944 253093480 253093480 246448448 204283980 234955788 234955788 234954780 216048312 216048312 249596224 249596224 80005912 77631424 78257664 78257664 43318416 43318416 13438464 13050864 54936224 54936224 49451664 45488976 46734272 67799952 69540776 69540776 79480176 79480176 323874256 323874256 353807177 548652019 814875219 814875219 361812570 369143928 369143928 355092176 355092176 374366216 374366216 361514558 361514558 1027035112 1027035112 990933783 858858291 435324418 435324418 26235490 12141120 409477120 409477120 174837076 268468064 308197467 603781771 883861953 883861953 642042009 615854442 615854442 547001809 872864129 872864129 607016969 810975904 810975904 84742304 156505114 369402034 369402034 921095054 921095054 626094576 626094576 31699105 798722608 1025906243 1025906243 903338066 903338066 893667938 893667938 269912297 168371220 185196596 185196596 189824596 235455516 235455516 275190401 275190401 306330501 842153350 842153350 966590502 966590502 58993313 415762518 415762518 844113600 844113600 902856688 902856688 389375778 389375778 351541032 345541922 361125328 902878971 902878971 213860172 938312434 938312434 679661637 443708321 936477034 936477034 964923913 964923913 858702001 858702001 645342087 980511641 980511641 481160526 481160526 518295623 1072129949 1072129949 569934052 569934052 699568961 699568961 675293708 675293708 235358783 772198928 884375656 884375656 336872288 442634646 442634646 750213782 750213782 746844237 715402326 808002819 808002819 484773530 484773530 548854593 719442009 719442009 659571697 617611977 147244532 241391828 472812674 711993390 940628778 940628778 609620805 284328129 1047748898 1047748898 800754560 800754560 801120456 947476604 947476604 1030628493 1030628493 833704160 816555928 717890761 894838570 894838570 611906686 940513697 940513697 874244936 874244936 462392880 462392880 102018872 102018872 47186640 910217192 932047995 1060962561 1060962561 416457731 371905084 859935603 943913292 943913292 828854229 828854229 864755034 864755034 360220586 927596706 927596706 980426229 980426229 730017909 730017909 411650694 411650694 571586736 912009786 912009786 638864192 929094483 929094483 869267846 652029897 548508142 1002871287 1002871287 998582375 508835760 823883354 823883354 420086461 173799060 269341155 1011276472 1011276472 685369352 734770665 734770665 965215335 1006111775 1006111775 1048840297 1048840297 948176967 1023476567 1023476567 1054946335 1054946335 690570796 690570796 861866368 861866368 592906484 592906484 388261479 981741871 981741871 176358485 954994059 954994059 892148074 892148074 855385490 855385490 215787832 522813626 522813626 202198808 360879850 360879850 361268474 361268474 318392704 292971840 77664160 100932947 403853071 403853071 287343050 466437665 466437665 889592354 889592354 991735821 991735821 680861310 733354869 750230277 949560998 949560998 1025532257 1025532257 548407211 569426382 685246149 1011008586 1011008586 294007428 295260144 295260144 191193444 419545424 448790742 448790742 425664548 178134612 52237936 122368704 214283168 214283168 151671689 634129641 634129641 612462080 818946580 1037959915 1037959915 800931590 814354439 814354439 437982224 437982224 542130512 586204113 586204113 288360514 137537824 152927782 413212998 421739750 421739750 600706022 863364785 863364785 285985105 586104464 586104464 197429092 572300753 572300753 772430912 608174181 788762488 932055549 932055549 631342417 883080645 883080645 573296774 688570388 738567184 772703476 772703476 280937188 546358556 546358556 693554830 693554830 362017650 367796102 867341073 1044943665 1044943665 197135856 795306117 1045893516 1045893516 928652987 1023104403 1023104403 377946933 1016018425 1016018425 721684581 721684581 562171984 768488772 768488772 711817627 845657492 845657492 439752512 439752512 310540126 311043464 311043464 481304966 481304966 961360356 961360356 1023616171 1023616171 816382827 765018666 353412717 134878212 954778188 954778188 550515331 276961346 276961346 545127616 545127616 543942272 543942272 156324832 696039588 696039588 537927680 537993729 537993729 224659592 218103852 761763652 761763652 157371432 578563974 578563974 339495867 918856360 918856360 712086924 819525369 819525369 678428037 678428037 375337140 375337140 260061398 846081423 846081423 939623041 939623041 917732958 917732958 692163152 692163152 554361921 330991921 504121792 786989958 786989958 678429573 249842780 72272196 148584132 148584132 116922000 226157236 264508268 264508268 85722972 85722972 7155072 12864640 12864640 110513408 666582017 666582017 818626451 818626451 868054964 868054964 567252360 393339400 589681640 658242544 658242544 606029163 1015304196 1015304196 504713696 504713696 54784176 859877936 859877936 455346854 455346854 470808590 1028317800 1028317800 369383439 520876774 520876774 512370279 1049269762 1049269762 699633277 699633277 707397908 707397908 554045826 579287121 579287121 134962469 77254970 300417864 300417864 344097898 495588614 495588614 521327166 521327166 486934070 486934070 483968718 483968718 1046039071 1046039071 437018300 698995090 930247106 930247106 838151465 903134435 903134435 901202857 627050241 627050241 853695554 853695554 962960144 962960144 521407038 521407038 315168968 344622164 575413251 642002073 742649880 742649880 512268292 967174402 967174402 631243116 790907184 790907184 570425648 572786961 572786961 58733792 530833950 530833950 308794022 141977908 621063680 621063680 579770657 579770657 61231696 282711345 790005832 790005832 738246669 676807181 675756165 348418965 257696048 257696048 242221980 147949084 147949084 918630800 1065795302 1065795302 923856914 784899044 823053733 823053733 589434134 432503276 757094695 971136082 971136082 931695655 1031933295 1031933295 250875070 295049826 590790674 590790674 583238513 692094625 692094625 574908464 574908464 235019788 235019788 120368377 120368377 80310345 258745641 714021973 720183637 736253365 736253365 742459861 742459861 394397804 646124619 646124619 274871660 274871660 121370424 121370424 36389416 1844224 37046784 37046784 37014288 43990608 112418528 112418528 99800040 25453152 25453152 290056386 290056386 340743368 352920618 365488168 365488168 96733416 8652864 522194256 522194256 483135420 238817052 269564438 374544784 374544784 827869159 835642081 835642081 215327967 352443630 358477482 358477482 331399410 853414833 853414833 594681555 139772929 706539025 706539025 172772996 172772996 42945174 928108980 1041734415 1041734415 26528352 491064420 491064420 358680900 499460334 499460334 872940555 872940555 570528161 570528161 377557224 377557224 372158960 839131187 839131187 835617610 916478283 916478283 604277067 848229444 848229444 407399878 160467060 438666006 438666006 734372260 734372260 325594448 476391822 983708452 983708452 1040392937 1040392937 188743860 295217878 295217878 191648296 289460176 391028914 391028914 346166848 347214666 347214666 912605856 912605856 755288160 755288160 746586189 93700269 79765704 276842496 276842496 940341699 940341699 881362025 553730945 1015359493 1015359493 757291147 757291147 1023496197 1023496197 939878440 402900997 218524164 135535144 79488264 77892168 556926000 556926000 540066561 72951432 72951432 4194432 33726976 126055312 126055312 53028144 87846536 87846536 671355849 671355849 987024087 987024087 995463977 1007771581 1007771581 696131441 734683081 734683081 577035656 677270660 753557264 753557264 409415876 500542310 500542310 275579558 275579558 941765444 1009864975 1009864975 680532548 1048875362 1048875362 221403460 221403460 805851898 903670111 903670111 622862121 766771993 837295869 837295869 690588176 690588176 310185419 890290212 1023533103 1023533103 1042848589 1042848589 918343515 554191433 919988955 919988955 814589440 828161062 996266406 996266406 478869767 176464330 707579157 707579157 564290904 253804860 253804860 1067110201 1067110201 246203691 932633007 932633007 1011226896 1011226896 892914992 134927364 117441344 128975736 128975736 124768096 124768096 122608824 109129016 109129016 10643328 101221720 101221720 10221120 43585552 43585552 239209000 993861919 993861919 811803935 929063788 929063788 880986161 880986161 395786302 932566543 932566543 805324548 681722197 865302391 865302391 328747570 328747570 260079652 260079652 126140424 155456844 568253321 568253321 448040430 456658390 456658390 247238348 424893708 1057789530 1057789530 970520135 970520135 1047343620 1047343620 504374304 721526793 721526793 805700132 805700132 747433497 805678103 805678103 538504718 376979524 792290216 792290216 983106156 983106156 679470165 368690180 143618560 178245524 178245524 151360297 585441276 585441276 649601408 649601408 568699744 199606352 728273553 728273553 452839410 638603194 638603194 570808992 570808992 210582044 797519204 797519204 588722492 655833657 655833657 149514776 214643916 256350412 256350412 221262384 69489156 171057440 171057440 76755528 243269632 243269724 429523004 1062736902 1062736902 952664134 554230081 568451553 568451553 431178055 34738704 34738704 33559056 37884048 924199116 924199116 370305076 717407333 717407333 235015852 576356886 711315605 711315605 796467237 796467237 510176262 174999680 129862916 290744637 931012539 931012539 332029385 780891774 887300173 887300173 644312915 331500690 1054511038 1054511038 577197444 577197444 678658881 678658881 777322829 777322829 549488744 588892200 588892200 52462688 57196896 61392272 61392272 601566544 601566544 16512192 543889216 551458625 551458625 274078247 168007168 655975210 655975210 1034593402 1034593402 966259677 966259677 726515719 956779070 956779070 929346592 929346592 493178083 1061585604 1061585604 261844352 261844352 205619392 205619392 162978660 607591940 631242345 631242345 464911925 203145472 119810664 203128230 333447666 608458277 877912079 939960961 939960961 22696048 270532608 889262090 916698177 925623419 925623419 319394769 359607048 359607048 291116706 122941240 122941240 66349912 383914120 383914120 333332488 68258336 24724768 24724768 204400872 204400872 186512852 153619744 260096004 262718844 262718844 129830360 130337016 130337016 80005912 80005912 77631424 78257664 78257664 43318416 177514370 451800534 451800534 409661254 460961462 460961462 341458956 341458956 494328750 494328750 432874270 176209922 176209922 353566368 353566368 337303208 338687616 369335058 369335058 337253898 369143928 369143928 355092176 923321403 923321403 869848521 241250348 268515642 927191106 927191106 843364211 843364211 789586188 789586188 519133592 481427904 481427904 444995600 438526214 276859344 325743531 603781771 883861953 909202042 909202042 615854442 615854442 547001809 872864129 872864129 813450016 873544354 873544354 19695776 134498304 134498304 134266884 655236153 655236153 653860405 653860405 948037054 948037054 695034238 695034238 661020929 834097859 834097859 790479628 790479628 710669973 710669973 606184645 637657173 637657173 893411061 893411061 522594486 522594486 390393531 444076643 966590502 966590502 421535923 856773078 856773078 844113600 844113600 609696393 609696393 274939947 321654568 345541922 345541922 361125328 902878971 902878971 562611297 938312434 938312434 679661637 406868100 936477034 936477034 964923913 964923913 880071616 878663371 878663371 980511641 980511641 450814464 450814464 168036372 770721577 770721577 569934052 616564260 699568961 699568961 1048687088 1048687088 325552277 192152488 884375656 884375656 708051858 943982727 943982727 943982727 750213782 746844237 382659592 545087704 545087704 249825296 249825296 170133780 712141764 712141764 659571697 617611977 153356324 552213308 1071423357 1071423357 996435843 881012811 276824072 343933002 876645378 876645378 193755464 365782504 382111081 871928223 871928223 1030628493 1030628493 833704160 681308229 717890761 894838570 894838570 611906686 611906686 1071528872 1071528872 874244936 462392880 462392880 77025996 138799236 650701537 650701537 707314965 707314965 607748651 564691472 599312241 859935603 943913292 943913292 828854229 828854229 864755034 864755034 360220586 866309729 866309729 980426229 980426229 823256243 730017909 470422466 339163914 571586736 912009786 912009786 438500752 572817424 869267846 869267846 652029897 548508142 1002871287 1002871287 998582375 172947712 172947712 65148055 128808475 173799060 269341155 1011276472 1011276472 685369352 734770665 734770665 965215335 1006111775 1006111775 1048840297 1048840297 948176967 1023476567 1023476567 1054946335 1054946335 690570796 690570796 556543009 556543009 592906484 592906484 400827414 400827414 759300492 759300492 743112745 743112745 892148074 892148074 855385490 855385490 106488400 169908330 202198808 202198808 461807350 840831101 840831101 361268474 350553156 350553156 143401102 100932947 403853071 403853071 287343050 466437665 466437665 408945030 408945030 323816292 976240826 976240826 494150365 457550420 949560998 949560998 1025532257 1025532257 423143305 339738894 339738894 471972698 471972698 294007428 295260144 295260144 191193444 419545424 448790742 448790742 425664548 178134612 52237936 122368704 214283168 214283168 151671689 634129641 634129641 612462080 818946580 1037959915 1037959915 800931590 950084867 950084867 448790770 952700723 952700723 871181156 853552773 853552773 698261680 806703622 806703622 421739750 421739750 600706022 863364785 863364785 38398355 7218704 54919360 54919360 572300753 699202652 772430912 183645292 788762488 932055549 932055549 1019761796 1019761796 883080645 740673748 688570388 688570388 168358965 50454576 50454576 546358556 546358556 265546885 182501844 406466096 406466096 867341073 1044943665 1044943665 197135856 795306117 1045893516 1045893516 928652987 1023104403 1023104403 713610920 1016018425 1016018425 721684581 721684581 562171984 794373989 794373989 652029465 908331291 908331291 418584607 314646738 1051297487 1051297487 318334794 481304966 610369931 961360356 961360356 948438087 948438087 765018666 885977442 885977442 752555013 814446978 814446978 746750209 276961346 276961346 545127616 683741524 748312584 748312584 686296961 696039588 696039588 537927680 537993729 537993729 66049 85986752 761763652 761763652 672798828 632637513 979803965 979803965 918856360 918856360 712086924 819525369 819525369 678428037 678428037 1020583029 1020583029 620308939 872796800 872796800 371128858 332090600 442681876 442681876 692163152 692163152 554361921 330991921 328653426 19157842 8634624 249842780 249842780 177459840 148584132 148584132 116922000 226157236 264508268 264508268 85722972 85722972 2887680 12864640 12864640 110513408 110513408 555550880 818626451 818626451 594228657 567252360 567252360 369277729 359646176 359646176 485717064 485717064 1015304196 1015304196 504713696 504713696 396411258 799305311 895156811 895156811 455346854 470808590 715581690 715581690 1071920350 1071920350 936901667 1053799620 1053799620 1049269762 823958048 699633277 707397908 930855480 930855480 589206841 589206841 367411267 565631736 565631736 111182040 344097898 495588614 495588614 455737348 454743606 402656892 402656892 435362244 435362244 364164814 191006550 437018300 698995090 698995090 577431538 838151465 936896731 936896731 901202857 606341954 339280362 539568144 606545153 962960144 962960144 172268188 114820696 315168968 377830696 425729208 425729208 311149846 512268292 512268292 70435158 69749516 304153604 438886672 438886672 570425648 572786961 572786961 271322370 271322370 280019778 280019778 666290784 666290784 52593513 774939879 774939879 904269624 904269624 354847447 988683735 988683735 538301312 1016403213 1016403213 479201869 257696048 242221980 147949084 230826410 298930978 304698444 923856914 923856914 327796544 823053733 977547476 977547476 897980523 757094695 844106352 844106352 931695655 1024220258 1024220258 900373992 900373992 750164681 750164681 948226404 1021348205 1021348205 204627280 204627280 235019788 235019788 120368377 120368377 80310345 767686128 774509853 774509853 736253365 752895440 752895440 742459861 981667968 981667968 646124619 274871660 492343898 492343898 443835100 443835100 418719002 418719002 352015586 352015586 131560082 331139850 331139850 87566248 85478312 84520576 290056386 290056386 360863752 360863752 365488168 365488168 483132706 483132706 522194256 522194256 483135420 238817052 269564438 374544784 374544784 515585886 515585886 487203696 143395908 166886734 358477482 358477482 331399410 694438064 694438064 710001158 710001158 706539025 706539025 548079104 282078661 42945174 69335048 1041734415 1041734415 703974243 568850913 491064420 348726474 344441227 820232456 872940555 872940555 644396257 646920345 646920345 377557224 372158960 839131187 839131187 835617610 1002784862 1002784862 604277067 848229444 848229444 407399878 108118936 256957160 830000081 830000081 578838544 949299271 949299271 731060789 854592159 854592159 649143077 598811505 598811505 537928048 90741306 90741306 337253898 337253898 216951147 181367412 181367412 497620119 762082308 762082308 755288160 1002488297 1002488297 462263382 847824211 847824211 415925266 67446792 31727944 88418472 88418472 696468270 696468270 416583973 67239936 755257856 755257856 402900997 76948584 79488264 122665824 122665824 556926000 556926000 540066561 26830177 807019584 970506979 970506979 935465710 935465710 53028144 87846536 444860502 747778050 747778050 987024087 987024087 985956864 665883164 665883164 627912120 86771113 50932736 50932736 6426112 755200557 755200557 291801890 678506990 678506990 615038699 1019508613 1019508613 1009864975 1026838422 1069347948 1069347948 1048875362 221403460 221403460 805851898 903670111 903670111 622862121 766771993 837295869 837295869 273052257 310185419 310185419 259802631 709814452 709814452 706851240 638634544 606617913 606617913 919988955 919988955 814589440 828161062 996266406 996266406 896067810 814632024 707579157 707579157 210170885 253804860 404524870 1067110201 1067110201 917165246 795873973 795873973 248777464 231775276 259704260 401265036 401265036 347506728 87683200 124768096 124768096 122608824 109129016 109129016 10643328 101221720 101221720 4532352 72262216 303892480 303892480 792858116 792858116 773980459 929063788 929063788 934032393 934032393 403243292 932566543 932566543 805324548 681722197 558198537 558198537 373709211 541065345 541065345 80107648 90705481 583539293 583539293 246301320 448040430 456658390 1048187094 1048187094 550875648 1057789530 1057789530 970520135 970520135 462561518 471367710 512464620 721526793 721526793 805700132 805700132 747433497 805678103 805678103 610149376 376979524 281092290 281092290 983106156 983106156 751361821 80494696 143618560 152815588 237789008 237789008 221910828 621488508 621488508 69296721 42749040 150734624 457971158 457971158 315734096 742561403 940612854 940612854 644516088 1069469999 1069469999 819468085 657187488 657187488 594879633 689990464 689990464 232947244 700448613 700448613 569449255 569449255 430383623 430383623 658227422 776060953 966316742 966316742 952664134 952664134 968896997 968896997 807612675 431178055 134604804 441743492 441743492 995437239 995437239 924199116 370305076 717407333 717407333 235015852 371332225 593303473 593303473 796467237 796467237 510176262 364096354 364096354 480330012 965876128 965876128 185616120 780891774 887300173 887300173 644312915 173096652 1054511038 1054511038 577197444 577197444 102382240 255647840 255647840 47271164 38077376 10362432 7737792 52462688 52462688 27313264 41977120 601566544 601566544 230163564 230163564 227296748 660358204 660358204 634471441 721708968 721708968 643567257 815885207 815885207 813255437 520914487 956779070 956779070 677507377 616412550 908414658 908414658 1005235447 1005235447 788442832 279221872 250611656 304669021 304669021 432121174 432121174 813792113 813792113 119622704 205832704 333447666 450912294 877912079 939960961 939960961 214173192 298361000 298361000 272212504 272212504 47784904 80733624 359607048 359607048 343118504 343118504 287432994 269503368 269503368 104907210 45123648 64515164 224259756 224259756 218721964 137849756 183620088 183620088 260096004 262718844 262718844 260604932 234481632 234481632 183018488 48812016 48075632 46268544 42004736 112211032 177514370 451800534 451800534 409661254 460961462 460961462 341458956 341458956 494328750 494328750 432874270 176209922 176209922 353566368 353566368 337303208 338687616 369335058 369335058 337253898 307526384 307526384 293672497 923321403 923321403 869848521 284483208 268515642 927191106 927191106 843364211 843364211 789586188 789586188 519133592 481427904 481427904 444995600 438526214 276859344 325743531 541136379 856879153 909202042 909202042 83695288 121597122 357476352 611343105 813450016 813450016 873544354 873544354 363068010 363056226 437782038 437782038 986065630 986065630 958542473 927492232 948037054 948037054 695034238 857079888 857079888 834097859 834097859 790479628 790479628 710669973 710669973 606184645 637657173 637657173 893411061 893411061 738531729 738531729 390393531 444076643 857313902 857313902 421535923 856773078 856773078 985813203 985813203 302739729 387567810 387567810 87416650 339324002 339324002 327547498 336647394 545432160 562611297 562611297 354160170 1035336482 1035336482 966663783 287100997 495633216 880071616 880071616 878663371 878663371 908529053 908529053 450814464 450814464 252711587 900203784 900203784 830472291 616564260 693835469 693835469 1048687088 1048687088 425827009 1057677425 1057677425 313036512 708051858 943982727 943982727 943982727 302638098 382659592 382659592 545087704 672153936 672153936 552913421 170133780 712141764 712141764 557058689 557058689 153356324 552213308 1071423357 1071423357 996435843 881012811 276824072 343933002 603982848 604769289 604769289 365782504 365782504 684304362 684304362 978833536 978833536 942766553 942766553 617742472 291803426 291803426 786780864 786780864 1071528872 1071528872 830675075 1008773229 1008773229 689165162 799391976 799391976 650701537 707314965 856373352 856373352 844422055 844422055 835996547 758720032 758720032 71641224 73738632 73738632 47321808 117312776 586812448 825568035 825568035 823256243 823256243 652785746 652785746 339163914 339163914 418179472 418179472 436916496 572817424 572817424 572915712 572922129 572922129 178656532 178656532 23381008 172947712 172947712 45597392 540532800 812029057 812029057 380393702 380393702 290862914 447445402 447445402 344989156 309453662 219589084 219589084 219857700 694932268 694932268 694268069 557408513 557408513 136025357 136025357 556543009 556543009 542631157 542631157 400827414 400827414 759300492 759300492 283981190 283981190 16056768 16056768 160760192 160760192 146088932 169908330 169908330 182486081 461807350 840831101 840831101 144703812 350553156 474515460 474515460 340577418 483054798 483054798 685035630 719706407 719706407 675299337 675299337 68342273 976240826 976240826 494150365 457550420 134523980 660121693 660121693 723383786 723383786 753546504 753546504 745819459 745819459 266457806 162794340 146149408 137499396 137367552 24827808 31674528 67244040 76243464 97090272 97090272 87111936 27312480 27312480 16793920 604054272 604054272 475408824 475408824 325323186 411045414 950084867 950084867 448790770 952700723 952700723 973653012 973653012 853552773 805716896 806703622 806703622 158781092 19319840 588717792 600698097 600698097 817629920 817629920 59818609 35481088 38083616 699202652 699202652 71319561 541114497 940179841 942331143 1019761796 1019761796 777858717 740673748 722565897 453659776 1057349634 1057349634 907191507 848540535 529511193 777051848 777051848 406466096 406466096 323536050 331351506 331351506 134348962 383969648 383969648 59070674 42652752 36229120 713610920 713610920 159645860 153837136 153837136 134222468 153303445 794373989 794373989 652029465 908331291 908331291 418584607 314646738 1051297487 1051297487 318334794 468306893 610369931 610369931 587337681 487574116 607570220 607570220 885977442 885977442 752555013 814446978 814446978 746750209 50088008 112969734 1021743502 1021743502 748312584 748312584 686296961 686296961 240198808 773040924 773040924 706241537 203040776 203040776 768079596 768079596 672798828 632637513 979803965 979803965 579147702 710972147 740014005 740014005 402987848 377551132 832416282 1020583029 1020583029 620308939 872796800 872796800 287774992 287774992 811604481 845135747 845135747 545460292 306329744 571738641 571738641 405201408 405201408 302170130 272750468 177459840 45296432 60997840 133570160 133570160 67496768 120887024 120887024 109841696 52842800 50729264 39981456 87213865 577242513 615630417 615630417 942215283 942215283 1042471854 1042471854 369277729 572522769 996310298 996310298 584512955 379285214 709250126 709250126 733261647 733261647 984033842 984033842 895156811 444993828 444993828 434770818 438850818 1071920350 1071920350 936901667 1053799620 1053799620 912034843 912034843 381159017 656883496 930855480 930855480 589206841 589206841 367411267 565631736 565631736 111182040 111182040 17486880 269124148 454743606 454743606 194789894 278420480 278420480 171471376 171471376 961823922 961823922 490980441 646518330 646518330 623953379 936896731 936896731 612061003 606341954 850445139 850445139 324043233 28361568 219548326 219548326 395399142 395399142 377830696 425729208 462208774 462208774 311149846 206034142 275355404 275355404 309843856 441932160 704746923 939789366 940100887 940100887 975906208 975906208 280019778 280019778 666290784 666290784 666165736 774939879 774939879 904269624 904269624 354847447 988683735 988683735 538301312 1016403213 1016403213 497812813 497812813 630920520 630920520 547057898 673727254 673727254 605181516 773425861 773425861 434110182 977547476 977547476 897980523 503580702 536891481 536891481 337744651 540764682 540764682 900373992 900373992 750164681 750164681 948226404 1021348205 1021348205 775036524 612371828 111338004 42076304 7361872 557917224 610796937 767686128 774509853 774509853 65790189 752895440 752895440 707324941 981667968 981667968 252249148 252249148 492343898 492343898 443835100 443835100 418719002 418719002 352015586 352015586 131560082 331139850 331139850 87566248 85478312 84520576 285336130 285336130 360863752 360863752 293914722 359402922 483132706 483132706 428870894 428870894 210838092 210838092 197798856 197798856 193125425 680266821 680266821 999098886 999098886 272351221 590056272 590056272 191397174 694438064 990683186 990683186 1004064470 1004064470 856688167 548079104 282078661 39061700 39061700 1056209382 1056209382 703974243 568850913 338532459 291039682 344441227 820232456 820232456 843968824 868221171 868221171 646920345 559543426 294728369 311331890 558852874 558852874 1002784862 1002784862 384336088 530843060 530843060 451024578 451024578 304751362 830000081 830000081 578838544 949299271 949299271 731060789 854592159 854592159 1038199412 1068499839 1068499839 1049678562 728176801 728176801 368210154 554123083 554123083 181367412 181367412 497620119 762082308 762082308 505487646 1002488297 1002488297 509611396 847824211 847824211 856458513 856458513 643827087 810949443 966338093 966338093 632734764 632734764 765607981 765607981 755489324 192229780 200789064 200789064 617167897 617167897 125317928 578656017 747754004 891664681 909928499 970506979 970506979 957473319 935465710 713560085 644483674 945292436 945292436 747778050 314006043 51511488 51511488 665883164 706666005 706666005 220766873 50932736 50932736 540625452 755200557 755200557 592599836 678506990 678506990 615038699 1019508613 1019508613 86356174 1026838422 1069347948 1069347948 339219792 339219792 836541776 836541776 93454929 487742728 487742728 481037646 111412246 41421108 188072488 188072488 122479104 122479104 68198432 68198432 638634544 638634544 606617913 606617913 463212150 463212150 321126451 196362551 261299626 896067810 896067810 814632024 235593286 185488956 185488956 120198504 404524870 404524870 917165246 917165246 795873973 795873973 124889624 648204416 648204416 401265036 401265036 347506728 87683200 87683200 48825472 34222160 52433968 52433968 30285024 79105608 79105608 74004528 74004528 303892480 303892480 268709392 773980459 773980459 528666742 528666742 934032393 934032393 403243292 546931207 546931207 502383500 287265851 558198537 558198537 539174193 553721889 588452368 588452368 90705481 583539293 583539293 777873568 1007408517 1007408517 1048187094 1048187094 550875648 550875648 549584976 551286465 600649785 778273376 778273376 512464620 512464620 468333820 545828896 545828896 881370240 881370240 881190987 797836820 797836820 630594153 796518333 796518333 751361821 751361821 66576273 213032200 213032200 237789008 237789008 221910828 621488508 621488508 69296721 19188000 287858752 457971158 457971158 315734096 742561403 940612854 940612854 644516088 1069469999 1069469999 819468085 657187488 657187488 594879633 689990464 689990464 197797072 700448613 700448613 590072512 980104599 980104599 963749690 963749690 779133359 966316742 966316742 948469767 948469767 968896997 968896997 807612675 543030896 599920881 599920881 441743492 995437239 995437239 780175610 185704980 167838244 167838244 247660708 247660708 22155336 85089856 85089856 32531552 116449632 364096354 364096354 480330012 965876128 965876128 92056875 535661475 535661475 433737222 709817366 709817366 831094018 831094018 606318730 749765476 749765476 672544260 241250492 40254140 71849128 100848008 101372952 101372952 67161136 25199648 34342928 570534929 570534929 625863849 625863849 227296748 660358204 660358204 634471441 721708968 721708968 643567257 1048421707 1067221619 1067221619 520914487 520914487 230254156 358115490 616412550 908414658 917830616 1005235447 1005235447 788442832 485553816 250611656 304669021 304669021 432121174 781999917 813792113 813792113 707871248 763625552 763625552 206834316 202375692 551296005 551296005 835062883 835062883 298361000 655804987 655804987 623956715 119636584 80733624 396397482 396397482 343118504 287432994 269503368 269503368 104907210 80286154 388781458 388781458 378223856 378223856 137849756 183620088 183620088 176734984 176734984 260604932 260604932 234481632 234481632 183018488 17434968 10754304 17585416 130074920 130074920 115418688 115418688 105066648 103355776 105038880 105038880 68460864 102965296 118489656 118489656 66851776 53964168 53964168 300929424 300929424 22094496 93323680 307340328 318367698 318367698 110707154 285888576 286725146 286725146 118516266 284483208 284483208 41758608 67578816 67578816 42515376 63292272 63292272 48419264 40150128 6153472 43871888 43871888 12162816 545387202 545387202 281181650 650883632 650883632 402399680 402399680 268849472 559644808 559644808 292641408 68107272 93807658 363068010 363068010 363056226 437782038 437782038 986065630 986065630 958542473 927492232 927492232 939474939 939474939 857079888 857079888 515775412 515775412 211289118 82280864 82280864 91395600 179832648 179832648 858932992 858932992 577231618 738531729 738531729 272179559 272179559 1061696326 1061696326 221405749 428116228 818088996 985813203 985813203 610480521 610480521 605416712 390833296 341260938 341260938 312111642 567299035 682262992 682262992 732243645 732243645 1035336482 1035336482 966663783 470860302 472433032 472433032 943718151 943718151 942141985 908529053 908529053 485633115 485633115 581571798 900203784 900203784 830472291 387539331 387539331 896475305 1045541680 1045541680 673493066 1057677425 1057677425 852628179 852628179 686828702 544685448 544685448 845557770 845557770 817570384 782303748 782303748 786991240 786991240 67512600 613573440 613573440 557058689 557058689 256021800 1053488236 1053488236 1030614447 902785325 629618793 552725615 346588482 603982848 733290668 733290668 346055904 346055904 304187049 91923283 978833536 978833536 942766553 942766553 831637910 1042376170 1042376170 786780864 786780864 443112124 443112124 830675075 1008773229 1008773229 689165162 799391976 799391976 329733673 628281912 856373352 856373352 844422055 844422055 835996547 758720032 758720032 323632364 307109010 314575234 314575234 283776450 861193058 864736371 915853920 915853920 647897240 652785746 652785746 317422914 317422914 369651536 369651536 70059024 552459765 570479025 738160373 738160373 710810613 599337489 599337489 585653205 541380001 549578148 549578148 540532800 812029057 812029057 286548416 286548416 74184072 74184072 206778600 206778600 7414656 155226132 155370032 219857700 694932268 694932268 694268069 559043713 559043713 17335041 688167169 688167169 155324580 537303041 537303041 103103188 695017497 695017497 614465865 180501869 202114304 892076138 892076138 918569222 918569222 267181168 267181168 252452116 103097210 333834738 973152214 973152214 452430525 291202148 474515460 474515460 486555686 486555686 483054798 685035630 1071436504 1071436504 675299337 942954592 942954592 278006263 105994304 149344596 149344596 240494341 660121693 660121693 723383786 723383786 753546504 753546504 745819459 745819459 347933024 347933024 293482182 158467554 293214160 314259282 316868224 316868224 76243464 97090272 97090272 79790496 77644608 28435296 19873056 19873056 392442686 607728872 607728872 611005448 611005448 411045414 27077792 30223584 30223584 180954160 973653012 973653012 805407011 816505092 816505092 559945186 159857380 159857380 588717792 1005367185 1005367185 817629920 817629920 598214193 573655824 40271968 40271968 20972800 419368055 594752433 940179841 942331143 1003367247 1003367247 777858717 722565897 722565897 436807828 1057349634 1057349634 907191507 848540535 529511193 777051848 777051848 351149514 219317036 241211948 241211948 157319994 134348962 383969648 383969648 59070674 42652752 36229120 28099648 159645860 159645860 71493000 161140756 161140756 173608964 173608964 4458624 539009552 591751825 1045244837 1045244837 874063371 874063371 969475360 969475360 954278343 895762492 895762492 917408975 917408975 345716298 949955077 949955077 635212488 635212488 610797640 612522048 612522048 67281481 112969734 1021743502 1021743502 450219163 277404290 476452875 618301645 618301645 773040924 773040924 706241537 203040776 691583528 768079596 768079596 626599593 623143689 261448962 261448962 579147702 710972147 740014005 740014005 38858893 34628112 832416282 832416282 393478666 0 926241211 926241211 190543384 809953807 811604481 845135747 845135747 306329744 1045941254 1045941254 907823120 909189657 909189657 876931984 706871569 693313957 693313957 547832768 198585264 133570160 67496768 120887024 120887024 109841696 52842800 50729264 107496064 107496064 577242513 615630417 615630417 942215283 942215283 1042471854 1042471854 324430375 572522769 996310298 996310298 584512955 379285214 709250126 709250126 733261647 733261647 984033842 984033842 438306284 398984442 261248898 25614432 414717605 825714631 967447911 967447911 896455108 880155531 912034843 912034843 381159017 54004744 548093520 548093520 343652424 348652746 357471578 357471578 318394152 103305408 274574018 290953330 290953330 194177044 194177044 135398004 278420480 278420480 190761824 424807456 961823922 961823922 402786095 646518330 646518330 898505835 898505835 386140218 386140218 597707282 850445139 850445139 878707083 966050344 966050344 365692206 395399142 395399142 199698592 29838476 462208774 462208774 263205432 244813056 275355404 275355404 309843856 441932160 757104795 939789366 973915430 973915430 975906208 975906208 469767198 469767198 664066912 664066912 666165736 666165736 224929060 635879712 635879712 545732673 340794453 819016024 819016024 295698786 866979378 866979378 707999504 707999504 630920520 547057898 673727254 673727254 605181516 773425861 773425861 647321081 583008081 895125743 895125743 572048913 865939136 865939136 1043704218 1043704218 959033603 537051137 97966824 612534472 630194793 740305026 740305026 775036524 775036524 612371828 205107664 73625412 238479500 797367480 797367480 683536197 598327896 673645929 755679125 755679125 574225557 574225557 542245080 542245080 337711374 252249148 254489916 371393206 371393206 154127908 154127908 196442676 196442676 229406432 229406432 121649568 49039720 282624 25253920 25253920 285336130 285336130 277213730 290505736 290505736 286288992 361053728 361053728 428870894 428870894 304359454 503384090 519378414 519378414 454973118 680266821 680266821 999098886 999098886 272351221 590056272 872029041 872029041 866723795 990683186 990683186 1004064470 1004064470 856688167 729415692 946643082 946643082 483741596 1056209382 1056209382 883036203 738873804 738873804 940479874 940479874 378898752 378898752 843968824 868221171 868221171 822874336 559543426 311637328 564859489 564859489 832903456 832903456 545394753 713306200 713306200 646322548 451024578 451024578 304751362 428928334 428928334 313044546 313044546 592046332 923475970 923475970 580123643 1038199412 1068499839 1068499839 1049678562 728176801 728176801 368210154 554123083 554123083 276831040 45664080 170694416 170694416 433098882 433098882 524388634 524388634 509611396 186646836 524637495 1035707704 1035707704 850258245 810949443 966338093 966338093 632734764 904272363 904272363 765607981 755489324 708068072 633188048 633188048 617167897 617167897 86377176 578656017 747754004 891664681 909928499 909928499 957473319 957473319 713560085 713560085 644483674 945292436 945292436 949484296 982854231 982854231 798485146 658917036 706666005 706666005 220766873 153618944 153618944 540625452 540625452 860314291 860314291 592599836 477215393 420438018 424463526 484455052 672953190 672953190 405166102 405166102 339219792 339219792 836541776 836541776 193871194 971849128 971849128 955844485 844944041 844944041 522478741 359045528 860373944 895764273 895764273 423528751 908514388 908514388 1050995023 1050995023 460849808 460849808 283381436 245582998 250518900 250518900 513425640 513425640 235593286 185488956 185488956 170334976 202041640 213221888 538600608 538600608 58515128 125960568 781684981 781684981 648204416 254527037 681197717 768058849 768058849 674271280 722081317 722081317 682124305 702398848 702398848 697902693 536947808 138732160 74004528 9036864 202039680 208217484 230729992 230729992 618938566 964886655 964886655 524365901 381953217 546931207 546931207 502383500 91374848 91374848 3744017 539174193 553721889 588452368 588452368 541329537 807766052 807766052 777873568 1007408517 1007408517 929366160 929366160 181013596 549584976 618202184 618202184 600649785 778273376 778273376 247486656 910723123 910723123 873286568 812042850 881370240 881370240 881190987 797836820 797836820 974102869 974102869 796518333 642046748 642046748 542754831 740079112 740079112 672451076 420187560 29948928 28650336 25970864 61205008 61205008 287858752 287858752 416432544 416432544 49869296 63455936 63455936 53636416 53636416 35809824 54000432 54000432 545911616 545911616 171979940 197797072 197797072 177018960 416616624 590072512 980104599 980104599 963749690 963749690 779133359 487633819 546869248 948469767 948469767 552913441 566760513 566760513 543030896 599920881 599920881 408172946 530878948 530878948 258788117 523504446 771104331 771104331 449191438 478551309 808193283 808193283 815150643 815150643 483417056 483417056 93110882 329311559 329311559 145305219 92056875 535661475 535661475 673890667 774685980 774685980 831094018 831094018 740816046 749765476 800070340 800070340 241250492 78550728 73658760 100848008 101372952 101372952 67161136 11632496 34342928 35742928 542199336 625863849 663064080 663064080 630842985 545523777 545523777 625273912 625273912 102582799 1048421707 1067221619 1067221619 530392657 246262319 230254156 477050620 753600494 871661272 917830616 999993207 999993207 715477840 485553816 203784456 203784456 209600340 265197900 781999917 781999917 707871248 707871248 763625552 763625552 660334333 626862789 626862789 551296005 835062883 835062883 358630928 655804987 655804987 825895552 825895552 54540786 396397482 396397482 333572274 40245394 72370946 77613952 384336144 384336144 409554950 409554950 378223856 378223856 140508804 147719712 147719712 236021032 236021032 204482620 195035508 210801956 229294964 229294964 157611352 103787960 69299656 130074920 130074920 220308794 528617598 528617598 421581054 469852166 469852166 351731956 351731956 418519550 487996230 487996230 181140674 181140674 300929424 300929424 22094496 93323680 425984046 425984046 583593857 801350360 801350360 771843813 974414341 974414341 908286543 885449505 760003501 610939169 633740416 633740416 78788808 78788808 78722888 98310792 98310792 43871888 43871888 12162816 545387202 564393049 564393049 281181650 540042225 540042225 402399680 268849472 559644808 829562145 829562145 883856009 883856009 555854312 69148808 8791040 734208 185872392 772086356 772086356 987652677 987652677 845906432 939474939 939474939 69674435 302398242 416208940 416208940 105385202 263206721 718393097 804815069 804815069 781374045 858932992 858932992 827666562 571972260 1059457554 1059457554 845260876 1061696326 1061696326 137101632 413418822 413418822 403253328 571410842 610480521 610480521 605416712 390833296 341260938 341260938 445121622 567299035 682262992 682262992 732243645 732243645 625026165 375309016 435444733 906018843 906018843 472433032 943718151 943718151 942141985 856694224 967051217 967051217 850925919 868226743 868226743 551437940 332139762 387539331 387539331 896475305 896475305 821443427 807406607 807406607 446198296 852628179 852628179 820512195 820512195 544685448 845557770 845557770 817570384 782303748 782303748 786991240 786991240 631767265 631767265 417352654 746621094 746621094 892338987 1053488236 1053488236 1030614447 902785325 629618793 593511251 346588482 976275466 976275466 733290668 502306452 491537694 491537694 326425828 546332545 546332545 383090780 501096174 831637910 1042376170 1042376170 1047840924 1047840924 774271391 492018333 476373760 464566799 464566799 334239847 769796173 769796173 257112896 628281912 628281912 264362773 374344416 481577518 482023822 482023822 323632364 323632364 307109010 314575234 314575234 283776450 861193058 864736371 915853920 915853920 901910763 647897240 617035977 840746885 840746885 586671954 369651536 40477777 552459765 570479025 738160373 738160373 710810613 599337489 656883928 656883928 568850913 549578148 549578148 70981224 454021285 454021285 286548416 286548416 74184072 74184072 206778600 206778600 7414656 117543808 704692245 704692245 704692245 186193537 536932400 559043713 559043713 17335041 688167169 688167169 155324580 537303041 537303041 276896906 695017497 695017497 614465865 297404866 202114304 892076138 892076138 918569222 918569222 267181168 450563200 450563200 240140369 801268234 973152214 973152214 452430525 475157000 605167754 605167754 486555686 1018757225 1018757225 1071979838 1071979838 1071436504 811634822 942954592 942954592 991612580 991612580 923282511 312456224 240494341 558529044 558529044 625616426 839390803 883230723 883230723 671895724 333319699 347933024 347933024 312555284 312555284 293214160 314259282 316868224 316868224 25826400 17524320 79790496 79790496 77644608 28435296 544734081 552753889 552753889 959144391 964800614 964800614 611005448 406852294 269224036 407111906 411313504 411313504 162368196 805407011 805407011 816505092 816505092 559945186 159857380 159857380 583710080 1005367185 1005367185 601916241 601916241 598214193 573655824 62977264 730197484 730197484 419368055 594752433 640156176 643899801 1003367247 1003367247 573646174 168345600 185181204 554239148 688586861 688586861 684332229 212675916 650016062 650016062 436468315 80170414 219317036 543297921 874561839 874561839 694292901 686212113 600447072 96653544 96653544 88617160 564266000 564266000 71493000 71493000 161140756 161140756 173608964 570102625 570102625 568081473 591751825 1045244837 1045244837 874063371 874063371 969475360 969475360 954278343 895762492 895762492 917408975 917408975 268810572 949955077 949955077 685107852 685107852 610797640 612522048 612522048 150474176 1040617109 1040617109 473430798 337972585 857870643 857870643 618301645 618301645 489734865 371121756 202901004 202901004 691583528 691583528 87427884 549463040 549463040 126246924 126246924 558094416 558094416 632209110 632209110 403168384 418465948 418465948 755233745 755233745 441804815 926241211 926241211 336921106 809953807 809953807 740768013 344737356 344737356 1045941254 1045941254 907823120 909189657 909189657 876931984 706871569 693313957 693313957 547832768 198585264 14152448 17900064 17900064 35592576 42430352 42430352 6900112 107496064 107496064 5277080 3595008 168378488 515528060 781973014 781973014 992904829 992904829 414188358 513067396 513067396 443221916 871014200 934549083 934549083 70523995 39006864 685064392 685064392 351314597 316027012 316027012 424514994 424514994 825714631 967447911 967447911 837734660 850970528 855460411 908715291 908715291 95185011 548093520 548093520 343652424 398377601 714640889 714640889 378327257 189422292 580665061 794438785 794438785 580092625 580092625 948082561 948082561 33971046 843795505 843795505 424807456 541985539 541985539 321776256 545702954 898505835 898505835 668388073 668388073 663362297 654852697 638767641 878707083 966050344 966050344 486658048 135716910 486669756 486669756 436596314 436596314 296785830 108198200 244813056 244813056 139662844 249833860 777847748 777847748 757104795 973915430 973915430 775950378 775950378 469767198 469767198 577640288 601622009 660873040 660873040 224929060 635879712 635879712 545732673 340794453 819016024 819016024 295698786 866979378 866979378 707999504 707999504 194368204 352209344 352209344 316047442 281018562 225057501 647321081 647321081 583008081 895125743 895125743 572048913 865939136 865939136 1043704218 1043704218 959033603 537051137 420825549 770909034 887368225 887368225 554959532 365731648 189980192 205107664 205107664 73625412 238479500 797367480 797367480 683536197 632065760 673645929 755679125 755679125 665104541 781389853 781389853 337711374 337711374 139761860 207827340 371393206 371393206 154127908 154127908 196442676 196442676 229406432 229406432 132984312 114035928 114035928 105227528 72102336 30272672 30272672 71540736 285324800 340857352 340994438 340994438 77072838 192939030 304359454 304359454 503384090 519378414 519378414 454973118 496553518 496553518 132488788 151104896 151104896 35428548 872029041 872029041 866723795 866723795 822506832 675299441 731171445 731171445 729415692 946643082 946643082 882294553 964934185 964934185 883036203 738873804 738873804 940479874 940479874 774096739 774096739 911710465 924794427 924794427 931414752 931414752 311637328 564859489 729275644 884539673 884539673 637605916 713306200 713306200 646322548 531825244 372515616 147874508 242806660 242806660 142631232 302120979 385885185 923475970 923475970 1051764890 1051764890 373637983 395451368 395451368 122827168 122827168 21453728 345117696 345117696 276831040 45664080 170694416 183290072 183290072 195439788 257950140 257950140 186720256 186646836 163259600 1035707704 1035707704 850258245 705555925 705555925 484383873 486158015 904272363 904272363 571786844 708068072 708068072 633188048 633188048 1023537187 1023537187 457881938 401549508 573298658 659034531 659034531 561013897 373461539 371072538 392770842 392770842 286470690 104925392 104925392 949484296 982854231 982854231 798485146 529908180 749476456 749476456 783731169 783731169 644743456 545952264 613992009 860314291 860314291 301649032 301649032 26110208 28046688 631598697 960262724 960262724 940755664 940755664 836914170 1000249399 1000249399 817646651 732962569 1068499839 1068499839 955844485 878404845 878404845 717820249 597841724 860373944 895764273 895764273 876765765 908514388 908514388 1050995023 1050995023 915006795 460849808 835512448 977552715 977552715 581852387 632209696 632209696 111872304 117780512 170334976 170334976 153172260 67212112 563358940 563358940 709741741 709741741 781684981 781684981 623034348 254527037 681197717 768058849 768058849 674271280 722081317 722081317 682124305 702398848 702398848 818202986 818202986 631302445 978321423 978321423 886589123 819487495 422265907 701756133 701756133 964886655 964886655 524365901 174328212 174328212 189573640 189573640 91374848 91374848 274004626 274004626 57800440 562348256 562348256 541329537 807766052 1032353466 1032353466 518520349 650461085 929366160 929366160 181013596 181013596 618202184 618202184 143795725 534806720 534806720 416469702 910723123 973702068 1058819487 1058819487 812042850 688228530 626452008 661696776 661696776 974102869 974102869 692022532 541191681 542754831 542754831 873336458 1007754378 1007754378 644980041 707265813 707265813 649085145 649085145 630838472 504923484 995445273 995445273 518438040 637419617 939579590 998787655 998787655 943278439 943278439 852647685 594942897 545911616 599435860 699760976 699760976 29509056 688839717 734670309 734670309 849342145 849342145 550889042 8405232 63438912 63438912 81321984 81321984 33736976 33736976 18878848 611192456 611192456 79470849 78642504 408172946 530878948 530878948 412640742 523504446 771104331 771104331 449191438 478551309 808193283 808193283 815150643 815150643 483417056 483417056 291184800 52693296 147404532 410489872 880998180 880998180 539248896 673890667 774685980 774685980 503882783 740816046 740816046 661002681 800070340 800070340 188506760 259369240 259369240 89261600 18354856 64799552 64799552 50593856 54861872 576536641 596214292 706478677 706478677 802238125 802238125 119596437 13466216 142976432 763725084 763725084 878971275 878971275 530392657 530392657 246262319 116278612 477050620 753600494 753600494 738701956 738701956 438370672 438370672 386639066 386639066 344659404 242287260 242287260 560177756 1041855865 1042849807 1042849807 180388972 660334333 660334333 626862789 626862789 337421444 67143688 495781915 1046769274 1046769274 528272916 825895552 825895552 519093281 785648320 785648320 746586189 949227012 949227012 1015827008 1015827008 872729664 409554950 409554950 196819608 196819608 475303114 475303114 254188860 254188860 262083916 453463172 507670832 507670832 413242402 229294964 157611352 150485160 359402272 359402272 288745672 220308794 528617598 528617598 421581054 469852166 469852166 351731956 351731956 418519550 487996230 487996230 181140674 181140674 79031216 371846490 371846490 350021416 425984046 425984046 583593857 801350360 801350360 771843813 974414341 974414341 908286543 885449505 760003501 610939169 633740416 633740416 87505704 87505704 87505704 98310792 98310792 19146888 38670528 38670528 37885056 564393049 564393049 131343464 540042225 540042225 48670722 378411970 378411970 829562145 829562145 883856009 883856009 555854312 342540842 67786602 151584996 411251718 772086356 772086356 987652677 987652677 106422631 788305484 788305484 511051005 464131446 416208940 416208940 105385202 263206721 718393097 804815069 804815069 781374045 781374045 827666562 827666562 571972260 1059457554 1059457554 845260876 293601378 194585796 194585796 147400308 147400308 131072 268494976 272967810 276883584 281356482 281356482 96604392 166409714 445121622 445121622 330561316 497988094 497988094 316014992 181454344 101058584 435444733 906018843 906018843 232116979 204140812 671515649 671515649 1001652489 1001652489 967051217 850925919 868226743 868226743 472567067 309257504 309257504 25580992 5057664 821443427 889055113 889055113 807406607 481170186 481170186 573120722 820512195 820512195 314647825 42533632 42533632 161744352 806292942 806292942 905133126 905133126 743126157 631767265 417352654 746621094 746621094 892338987 892338987 889315371 889315371 582210291 593511251 962687410 962687410 976275466 976275466 939564756 885971843 885971843 700079829 660393432 326425828 93222216 383090780 501096174 501096174 522646718 522646718 1047840924 1047840924 774271391 635396204 635396204 130908280 264586328 264586328 212172800 212172800 680650900 680650900 577930029 745888658 745888658 481577518 481577518 174199188 174199188 41160768 827197254 827197254 716709511 957612691 957612691 626008542 619840163 901910763 901910763 643969471 617035977 840746885 840746885 586671954 202906328 11873088 15217920 147005796 163846592 163846592 562845536 701885157 701885157 656883928 568850913 56266289 728059384 747234381 747234381 349376958 1045194895 1045194895 936376234 936376234 910067435 931258619 1069670651 1069670651 995275336 704692245 704692245 655070348 655070348 205612221 89817892 606798601 606798601 147114180 765239209 765239209 206715712 276896906 276896906 31860160 297404866 297404866 251516776 177179556 92844660 450296374 450296374 135475716 450563200 450563200 240140369 801268234 801268234 323699267 323699267 475157000 806342272 806342272 337949485 1018757225 1018757225 1071979838 1071979838 811634822 811634822 673337737 660212620 991612580 991612580 923282511 312456224 151784484 186124816 186124816 625616426 839390803 883230723 883230723 563622219 480385290 273549512 99681730 312555284 312555284 188838162 120854040 120854040 117912224 117912224 113258048 113258048 154976449 154976449 138597509 632341421 632341421 552753889 959144391 964800614 964800614 834568583 963125219 963125219 563011333 550372773 411313504 162368196 62394416 62394416 9646080 135541284 135541284 152242692 152242692 39358016 39358016 36996288 5282272 65147376 65147376 62977264 566950737 730197484 730197484 45290944 45290944 640156176 643899801 643899801 573646174 611319688 756158473 756158473 739760549 688586861 688586861 684332229 862903731 862903731 889678292 950284334 950284334 422317350 543297921 874561839 874561839 694292901 686212113 600447072 808906259 808906259 576649185 850363600 850363600 893142984 893142984 399828232 30580608 22422625 570102625 570102625 568081473 552145824 935009200 935009200 835989313 835989313 572230834 562582561 4851840 612406698 612406698 354437321 281808066 346518531 470400002 470400002 685107852 743807881 743807881 606579136 150474176 150474176 1040617109 1040617109 743067207 539903107 857870643 857870643 207043999 153223936 211943784 211943784 152097796 135792132 28442720 28442720 79417864 549463040 549463040 46252177 187313288 558094416 949619880 949619880 632209110 543548160 543400913 418465948 838861338 838861338 605028873 556306216 556306216 1006658448 1006658448 740768013 740768013 554814767 344737356 176492864 176492864 2105344 134604804 704784516 704784516 174100481 4495616 4378752 37954320 123626832 123626832 77246880 104512208 104512208 88999968 42430352 36289888 76334352 84732208 84732208 89489968 168378488 515528060 781973014 781973014 992904829 992904829 414188358 513067396 513067396 443221916 871014200 934549083 934549083 138701956 502608347 755091307 851367219 946878386 946878386 316027012 448177428 581398048 581398048 256513212 514326342 514326342 850970528 855460411 908715291 908715291 390622746 289596128 341706674 341706674 398377601 714640889 714640889 378327257 189422292 580665061 794438785 794438785 580092625 580092625 948082561 948082561 24811206 843795505 843795505 270532098 541985539 541985539 321776256 319215666 123209400 651741832 668388073 668388073 663362297 654852697 638767641 605691640 306737194 486658048 486658048 362924404 486669756 486669756 436596314 436596314 296785830 108198200 212387584 769380876 886240364 886240364 777847748 777847748 579137161 422576934 557224878 706107691 706107691 322961586 322961586 953417782 953417782 389156501 537923633 537923633 38026130 328080498 871835819 871835819 963063820 972499151 972499151 580979523 413672035 192099252 192099252 524047640 524047640 524673090 530053758 530053758 133570118 128612240 62111128 134098736 207961488 207961488 72614492 37542833 627574185 712647953 756711945 756711945 738644871 738644871 770909034 887368225 887368225 554959532 365731648 234998556 234998556 170583128 170583128 170582736 598356089 610349833 610349833 632065760 632065760 84077744 658348504 665104541 781389853 781389853 617620143 617620143 139761860 147985092 147985092 150761696 150761696 98483044 99460144 129067480 129067480 132984312 132984312 114035928 114035928 105227528 72102336 287609858 287609858 336327298 336327298 340857352 340994438 502939456 502939456 292891554 293675106 534040598 534040598 436390654 257145396 257145396 236095496 236095496 71660188 63381648 325080068 325080068 173882112 311476818 311476818 765754140 765754140 675299441 731171445 731171445 541649561 705280728 705280728 882294553 882294553 344371879 247059410 193135792 224664460 424151298 424151298 774096739 774096739 911710465 924794427 924794427 931414752 931414752 851154894 851154894 729275644 884539673 884539673 637605916 637605916 219427361 531825244 531825244 372515616 147874508 242806660 242806660 142631232 906494976 906494976 905969691 776549411 1051764890 1051764890 636977484 688218912 688218912 779544843 779544843 125213122 937039841 937039841 365295010 357840698 358759176 402054808 465456546 465456546 257950140 475531600 475531600 143114852 348692599 456813345 537218944 1026421019 1026421019 705865386 114378528 691840656 691840656 377541150 571786844 571786844 345524243 667279540 667279540 1023537187 1023537187 871841996 871841996 742455340 843848073 843848073 808479779 488069655 538064438 712643480 712643480 1008808372 1008808372 693313670 544294240 567928545 567928545 780115344 780115344 773734769 749476456 783731169 783731169 644743456 545952264 613992009 613992009 747893325 747893325 236495057 26110208 28046688 912912649 960262724 960262724 940755664 940755664 836914170 1049663258 1049663258 817646651 732962569 1068499839 1068499839 1055429540 878404845 878404845 717820249 597841724 631903593 631903593 876765765 876765765 41025664 505194440 900328310 915006795 915006795 753093744 835512448 977552715 977552715 581852387 632209696 632209696 179593556 679933508 679933508 744878557 744878557 260452685 612999912 682208697 709741741 709741741 775319989 775319989 434144394 229164396 683859692 683859692 658821365 722911568 722911568 811632237 1035568909 1035568909 750790080 818202986 818202986 631302445 978321423 978321423 964812903 964812903 422265907 701756133 701756133 604483705 604483705 549525597 821037634 821037634 400766368 400766368 553463748 817889475 817889475 862926227 862926227 572596497 608674465 608674465 908067593 1032353466 1032353466 790995890 725412220 650461085 50867288 990392012 990392012 802491911 630793833 77139969 328241332 416469702 416469702 477029580 973702068 1058819487 1058819487 562905760 567400129 567728865 567728865 474239204 474239204 1041838736 1041838736 541191681 541191681 207643397 873336458 1007754378 1007754378 644980041 707265813 707265813 652219224 649085145 630838472 504923484 995445273 995445273 518438040 637419617 939579590 998787655 998787655 943278439 943278439 852647685 594942897 37361424 599435860 699760976 699760976 488607514 688839717 734670309 769830894 849342145 849342145 874721547 874721547 585356699 370783131 303129298 81321984 22744896 564236896 567593697 611192456 611192456 79470849 78642504 280515328 295224930 1065285890 1065285890 412640742 166310100 166310100 307953666 307953666 191234912 287461952 287461952 30442050 417587424 417587424 291184800 275058166 858652419 870328385 880998180 880998180 539248896 539248896 434407868 434407868 270582018 713681572 713681572 244439621 203726224 203726224 223584996 259369240 259369240 242780920 242780920 73270784 73270784 50593856 54861872 576536641 596214292 706478677 706478677 802238125 802238125 119596437 94505096 184659392 763725084 763725084 878971275 878971275 437256331 324011108 556598296 656746809 903351897 903351897 860227763 1035078024 1035078024 861077712 861077712 386639066 436608968 436608968 242287260 375915930 620374106 1041855865 1042849807 1042849807 335544330 1032496232 1032496232 1007508596 1007508596 83952182 647833687 647833687 1046769274 1046769274 791287057 1033731243 1033731243 519093281 785648320 785648320 746586189 949227012 949227012 1015827008 1015827008 872729664 276824130 282706950 413197248 442021841 619662733 824771087 973352504 973352504 262083916 453463172 507670832 843290690 843290690 554316837 679638669 679638669 545661964 613117644 613117644 84426824 90967464 90967464 133033464 133033464 133033464 65017816 32133840 38906144 119673144 119673144 120105464 120105464 79031216 371846490 371846490 350021416 350021416 412199462 412199462 83954336 17041440 17041440 2080 0 0 93061440 93061440 86773032 86378824 87490560 87505704 87505704 87505704 87505704 64327338 24859806 38670528 476055690 476055690 376721794 311953566 311953566 448735014 448735014 315345986 378411970 378411970 339051016 339051016 118498104 298505442 342540842 342540842 122303992 260058232 494928319 597688533 597688533 643964230 643964230 885311691 885311691 788305484 719596789 719596789 576852551 955961772 1064718369 1064718369 593517504 109170052 61390868 61390868 34689536 994157104 994157104 65681207 214038880 859988361 859988361 130068714 194585796 194585796 187206614 187206614 173402400 810650280 877145739 877145739 603768066 127667832 97257184 388444330 388444330 318832990 315233572 497988094 497988094 316014992 181454344 435658724 435658724 414776506 681368250 681368250 873318661 873318661 153994252 1001652489 1001652489 512754270 340578918 273307651 197542547 676499527 726429943 726429943 659995596 1023355855 1023355855 1021512930 889055113 1010117391 1047324304 1047324304 927008113 927008113 75563466 172296708 740837172 740837172 692380436 806292942 806292942 905133126 905133126 743126157 243533304 158076324 262180148 262180148 188763484 470987608 470987608 446816598 179401632 414774002 962687410 962687410 915439970 939564756 939564756 885971843 885971843 700079829 660393432 21270784 3595008 134788640 152302116 152302116 150994980 150994980 206251384 908546252 908546252 635396204 635396204 250874844 981836742 981836742 622924169 154448477 680650900 680650900 993688297 993688297 745888658 471181462 748162893 748162893 831921068 831921068 827197254 827197254 716709511 957612691 957612691 582257559 593822544 593822544 318769214 341220166 341220166 345016904 345016904 414617354 414617354 358976448 358976448 147005796 163846592 163846592 562845536 701885157 701885157 566357568 566357568 140135297 728059384 747234381 747234381 349376958 1045194895 1045194895 936376234 936376234 910067435 931258619 1069670651 1069670651 995275336 687996928 639766809 655070348 655070348 205612221 162592608 606798601 606798601 147114180 765239209 765239209 206715712 206715712 143668204 142219140 255157368 255157368 251516776 177179556 46382288 46382288 46954640 46954640 39579312 56489616 56489616 67599552 72092808 621632200 630717033 630717033 806342272 806342272 84106795 164784608 221723436 621173000 773206029 773206029 772165553 772165553 237258985 99405288 590481253 590481253 584498916 584498916 723213508 723213508 35201536 49350544 49350544 342236800 480385290 480385290 286658560 286525986 264192 264192 69094688 120854040 120854040 117912224 117912224 113258048 113258048 154976449 154976449 138597509 632341421 632341421 218911080 569068676 673560676 834568583 834568583 963125219 963125219 563011333 697447110 697447110 137768917 815805267 815805267 985280640 985280640 564007910 165624000 164890784 591989232 944047409 944047409 544012961 588127281 588127281 545842032 566950737 566950737 130130120 281542923 941004432 941004432 513666398 842718725 842718725 711400453 756158473 756158473 739760549 440454170 1009027124 1009027124 862903731 862903731 889678292 950284334 950284334 422317350 421943714 476874148 865600646 865600646 735729265 561628833 822304355 822304355 576649185 850363600 850363600 893142984 893142984 399828232 90454024 90454024 29362304 23467648 71403274 272188290 286002210 339416712 339416712 269487112 269487112 724910621 724910621 1011099043 1011099043 940159236 808113411 346518531 470400002 673133448 743843849 743843849 743807881 686715968 686715968 285077442 982623582 982623582 743067207 539903107 967447911 967447911 474291182 756412374 756412374 371639819 224968204 224968204 541253160 541253160 96989804 724103357 724103357 894385323 894385323 495783155 949619880 949619880 543548160 543548160 543400913 478488654 838861338 838861338 605028873 911302809 911302809 1006658448 1006658448 553928836 554814767 782636895 782636895 706878737 873194128 873194128 886446795 886446795 845430800 845430800 687002565 687002565 558049824 187095408 123626832 77246880 104512208 104512208 88999968 36289888 36289888 76334352 84732208 545286145 546048577 546048577 873233565 873233565 358814615 680400174 730799219 789527613 789527613 572962266 421499926 421499926 417591750 96861486 138701956 502608347 755091307 851367219 946878386 946878386 593459057 810489557 810489557 711230578 256513212 514326342 573844771 573844771 814550306 814550306 813695043 390622746 539071953 539071953 341706674 538018656 538018656 475977008 153405732 201605416 201605416 33593376 9187840 52198032 184562912 460456452 460456452 411698946 296748358 282380994 282380994 182552008 182552008 112320732 67686152 55848320 102819032 102819032 36002688 34675712 34675712 71406936 306737194 306737194 223032152 223032152 362924404 460867228 460867228 525864714 525864714 439355044 510313354 510313354 769380876 886240364 886240364 583109650 706773275 728777631 728777631 742576269 742576269 503845939 503845939 953680137 953680137 953417782 389156501 537923633 810484163 810484163 919915227 919915227 871835819 963063820 972499151 972499151 580979523 562570164 797532213 797532213 524047640 524047640 524673090 530053758 530053758 133570118 85229112 83959848 207300304 207300304 114493128 79708400 412013710 627574185 712647953 756711945 756711945 738644871 738644871 637381033 1021321765 1021321765 487369049 175687572 234998556 234998556 170583128 170583128 170582736 170582736 582616000 608354440 608354440 593957200 97594760 559048640 559048640 560062657 560062657 617620143 617620143 282482470 167878928 115812488 150761696 150761696 98483044 192471064 501844646 501844646 149737192 372163586 372163586 46395600 42513536 2699776 287609858 287609858 336327298 336327298 339516586 339516586 502939456 502939456 343970612 531813246 534040598 534040598 436390654 37751488 127015436 201628280 201628280 394528890 394528890 409729284 409729284 446350581 446350581 706723027 706723027 179620692 703281408 703281408 637363635 637363635 442533085 649349257 649349257 1073013119 1073013119 224886504 224886504 155470116 424151298 525161939 967293857 967293857 554820195 366088938 633001008 633001008 584241873 851154894 851154894 792736168 792789797 792789797 306328432 306328432 286470690 316189220 316189220 179330454 152078848 814666853 814666853 520542270 906494976 957559335 957559335 1053463098 1053463098 865041606 865041606 688218912 688218912 779544843 779544843 276487712 937039841 937039841 365295010 357840698 358759176 402054808 465456546 465456546 116345892 475531600 475531600 143114852 348692599 456813345 1016082624 1026421019 1026421019 705865386 185086554 691840656 691840656 669674348 846221144 846221144 226117694 667279540 761529898 761529898 416033157 871841996 871841996 914076337 914076337 843848073 808479779 559757851 538064438 898684904 898684904 1008808372 1008808372 693313670 544294240 567928545 567928545 780115344 780115344 773734769 151030040 151030040 71368704 213821826 742133158 877303412 877303412 747893325 747893325 511914080 765044556 765044556 912912649 912912649 818800257 735899327 835220750 943718535 1049663258 1049663258 1007158287 675812039 423501612 1055429540 1055429540 534363810 534363810 111087504 441747704 1010715814 1010715814 557490362 557490362 791151138 791151138 459038313 427704162 753093744 753093744 269233162 344532042 344532042 442271664 442271664 188749168 179593556 679933508 679933508 744878557 744878557 260452685 612999912 682208697 682208697 255737092 255737092 434144394 434144394 229164396 683859692 683859692 658821365 722911568 722911568 811632237 1035568909 1035568909 750790080 750790080 92922984 906536020 956826663 956826663 964812903 964812903 834716568 834716568 769165608 769165608 827591331 827591331 944769798 944769798 723779620 400766368 553463748 817889475 817889475 862926227 862926227 910963874 910963874 925369659 925369659 912599451 912599451 790995890 725412220 689362580 689362580 990392012 1003238416 1003238416 757702303 757702303 275579256 306995694 348174792 348174792 204072204 204072204 645137551 645137551 567400129 567728865 567728865 865653548 865653548 1041838736 1041838736 642308508 918420626 918420626 41725451 403491846 403491846 440402050 632296064 652219224 652219224 73684416 392172930 392172930 204310340 469558182 469558182 47502480 47502480 63982784 63982784 37266176 46830752 182599748 182599748 171600976 145702212 183573316 322653718 488607514 919683759 919683759 769830894 769830894 843264065 874721547 874721547 585356699 797468413 797468413 551150656 551150656 717085396 717085396 567593697 539202525 765669741 765669741 280515328 295224930 1065285890 1065285890 274413186 1069930825 1069930825 296617526 296617526 402821582 402821582 287461952 274153634 297931360 297931360 285609408 285609408 858652419 870328385 870328385 1068269851 1068269851 876735895 434407868 434407868 270582018 713681572 748494826 917234043 917234043 959785767 959785767 344195649 344195649 242780920 242780920 73270784 73270784 285042370 285042370 281335936 284697410 284697410 283220226 283220226 270145026 86904104 447201664 447201664 710746548 710746548 597195068 727223600 727223600 266602189 556598296 656746809 903351897 903351897 860227763 1035078024 1035078024 861077712 861077712 500356974 436608968 436608968 321044608 375915930 620374106 620374106 361808490 361808490 335544330 1032496232 1032496232 1007508596 1007508596 202069058 647833687 647833687 503589216 471499804 791287057 1033731243 1033731243 109131096 447421200 447421200 414661446 271845376 942500418 942500418 283673856 283673856 333593614 333593614 413197248 442021841 619662733 824771087 973352504 973352504 598522611 443498756 443498756 843290690 843290690 554316837 679638669 679638669 545661964 613117644 613117644 88641344 90967464 90967464 133033464 133033464 133033464 78717760 180564180 180564180 175492928 17320292 145478372 145478372 144073888 317412242 317412242 68442272 135628804 412199462 567625833 567625833 692533370 793886389 982066229 982066229 850505911 305633801 630724256 630724256 614601545 608436288 91889504 121507816 121507816 68385644 64327338 24859806 4906496 476055690 476055690 376721794 311953566 311953566 603375697 826071111 826071111 805342498 543438016 312938640 192161092 604445465 729809013 729809013 159399143 527238530 527238530 494928319 597688533 597688533 643964230 643964230 885311691 885311691 712121498 719596789 719596789 610414270 955961772 1064718369 1064718369 593517504 196645792 196645792 1316580 34689536 994157104 994157104 497593984 497593984 859988361 859988361 284235664 177210644 177210644 459011812 459011812 339757632 810650280 877145739 877145739 603768066 902428481 902428481 633862377 476801161 476801161 105112856 107219352 107219352 1044359447 1044359447 909423580 909423580 942550535 942550535 681368250 873318661 873318661 153994252 976028816 976028816 813436803 38017651 33496576 197542547 676499527 726429943 726429943 659995596 1023355855 1023355855 1021512930 416142720 1010117391 1047324304 1047324304 927008113 927008113 426057840 426057840 740837172 740837172 692380436 662441125 691061541 691061541 516120107 581640639 581640639 468462028 468462028 258643772 258643772 279097588 404824326 404824326 398706432 514536798 514536798 266981538 315622810 315622810 105206384 310529050 310529050 184438142 426253744 426253744 245401948 225969308 44307168 137364256 150994980 212667608 267755580 908546252 908546252 549545854 510502023 1034040766 1034040766 981836742 680186949 680186949 435261272 461494754 993688297 993688297 581355388 471181462 748162893 748162893 831921068 831921068 191632977 305154928 539548883 558356582 892420344 892420344 882067971 841353995 318769214 341220166 341220166 371593246 673929482 673929482 639878232 591199120 598429169 598429169 579720881 579720881 55459313 99807785 99807785 566357568 566357568 140135297 140135297 85977861 28685224 288672232 470851842 470851842 512786436 512786436 378585690 327155826 327172182 327172182 687996928 687996928 639766809 639766809 538972953 92950528 162592608 162592608 86151264 89288872 89288872 69436192 95881552 269943482 269943482 142219140 371998010 371998010 106899776 106899776 117934416 278934194 278934194 54803712 380125768 380125768 370052994 626536598 626536598 621632200 1050883862 1050883862 942740483 889791531 83935272 164784608 221723436 621173000 773206029 773206029 772165553 772165553 385352434 358089008 590481253 590481253 584498916 677446392 723213508 789058941 789058941 568789953 568789953 77204168 903483564 903483564 1020005583 1020005583 807800254 388106326 260709922 39360000 67279520 67279520 22433800 72552960 72552960 25362816 72362248 72362248 555237540 555237540 227714857 569068676 569068676 67229696 76028936 809554956 1011487887 1039336815 1039336815 768302443 239563944 815805267 815805267 985280640 985280640 564007910 234825864 164890784 591989232 944047409 944047409 544012961 588127281 588127281 545842032 58968672 113381592 130130120 679818704 941004432 941004432 513666398 842718725 842718725 711400453 711400453 125189020 489276460 489276460 1009027124 1009027124 796182666 796182666 374720029 157885600 140281022 268632071 806158339 806158339 865600646 865600646 735729265 555516433 822304355 822304355 536993793 29418049 19009824 19009824 88443592 88443592 90454024 90454024 29362304 71909376 71909376 57465744 68585984 445144028 445144028 269487112 269487112 724910621 724910621 1011099043 1011099043 940159236 808113411 145278276 212469060 752070924 752070924 743843849 215941645 686715968 686715968 303909960 285077442 604569225 604569225 543952257 967447911 967447911 474291182 756412374 756412374 371639819 224968204 224968204 541253160 774250141 774250141 724103357 724103357 894385323 894385323 495783155 483052650 125862318 584566912 772109201 772109201 673936652 673936652 142582919 675553811 911302809 911302809 957541029 957541029 870235983 870235983 782636895 782636895 706878737 873194128 873194128 886446795 886446795 845430800 845430800 1016074784 1016074784 558049824 412560130 321282246 321282246 318942198 318942198 334888182 334888182 291609350 285099458 147159686 545286145 546048577 546048577 873233565 1000984942 1000984942 924499451 730799219 789527613 789527613 1016089979 1016089979 421499926 27601248 14950560 32610764 82225202 707830310 707830310 488442183 145258869 593459057 810489557 810489557 711230578 444689441 185672244 573844771 573844771 814550306 814550306 813695043 290245153 539071953 539071953 104139344 538018656 538018656 207785005 251842620 251842620 636692229 783146133 783146133 685543029 675597669 460456452 460456452 457968390 463620148 463620148 1001888371 1001888371 601040134 601040134 550626486 55848320 102819032 102819032 36002688 34675712 34675712 71406936 71546136 753152643 753152643 686108229 775263053 1052412463 1052412463 917096360 917096360 439355044 510313354 581175569 581175569 595907905 595907905 583109650 706773275 728777631 728777631 742576269 742576269 503845939 503845939 953680137 953680137 562907364 648695056 648695056 810484163 810484163 919915227 919915227 664087161 664087161 533928055 512033356 512033356 562570164 797532213 797532213 469127492 471284612 471284612 644738225 644738225 953758772 953758772 764845752 483657420 218702976 151450756 79708400 412013710 616173897 631938889 747396388 747396388 175742596 628057384 655730201 1021321765 1021321765 487369049 749266620 749266620 741099640 250743680 7607260 64172181 197470496 197470496 608354440 608354440 71364105 97594760 97594760 84757248 162418692 222224172 423576814 423576814 282482470 167878928 126106768 138412164 138412164 229679520 229679520 501844646 501844646 149737192 372163586 372163586 116779992 75857424 75857424 67607632 104297240 104297240 7226112 7226112 7525248 212812108 212812108 343970612 531813246 531813246 104921774 239545288 296036706 296036706 333447650 333447650 394528890 394528890 409729284 409729284 446350581 446350581 706723027 706723027 310635601 703281408 703281408 637363635 637363635 442533085 649349257 649349257 1073013119 1073013119 483959778 483959778 277591278 279177486 525161939 967293857 967293857 584319906 584319906 582034257 584241873 584241873 542799388 708359701 792736168 792789797 836912566 836912566 384486973 433389992 433389992 350518550 179330454 180380440 814666853 814666853 649935108 649935108 957559335 957559335 1053463098 1053463098 865041606 865041606 381770367 295297104 109634682 39985160 276487712 276487712 33411106 13108416 115864960 138551328 184603792 401534256 401534256 22787472 239269896 239269896 163840808 28192412 11398464 1016082624 1016082624 1012085391 688541713 185086554 549539085 828772896 1030888353 1030888353 846221144 632564493 632564493 761529898 761529898 738452782 556198184 556198184 914076337 914076337 637613089 637613089 559757851 386425017 898684904 898684904 841858980 528023592 775833941 775833941 448707996 701074073 822307724 828323043 870268659 870268659 837795177 609971497 753488928 753488928 877303412 877303412 591083313 911775696 911775696 869844685 946619482 946619482 667293945 901432784 901432784 835220750 943718535 943718535 1007158287 1007158287 423501612 423501612 811091540 811091540 705612309 1056059091 1056059091 657478840 1010715814 1010715814 525112233 423657522 791151138 791151138 642924655 706774368 1013738708 1013738708 898417616 1025764786 1025764786 956719258 900107266 810323909 993000759 993000759 514122561 514122561 23507360 137437280 162538212 683936352 683936352 788666027 788666027 483268859 982518834 990911130 990911130 159915606 16809984 16826400 20447264 564709120 564709120 520474363 971097322 971097322 785156788 907128729 956826663 956826663 431555374 320677170 951124559 951124559 769165608 769165608 827591331 827591331 944769798 944769798 723779620 736575298 736575298 132781560 132781560 352465944 352465944 910963874 910963874 925369659 925369659 527179418 527179418 336238734 336238734 689362580 689362580 323690630 1013669790 1013669790 1060524725 1060524725 787545428 787545428 608460836 608460836 204072204 204072204 645137551 645137551 501086546 534285048 534285048 865653548 865653548 789783063 789783063 642308508 918420626 918420626 342604591 403491846 403491846 742545557 742545557 632296064 646059064 863192800 863192800 119660856 1038354577 1038354577 164635372 169904376 293211658 293211658 274915760 331583584 440986450 839899156 839899156 557626274 195122180 885621454 885621454 666381176 919683759 919683759 560286175 665804153 951167422 951167422 256513212 198934728 797468413 797468413 642526948 551150656 717085396 717085396 549527745 539202525 765669741 850955136 850955136 845251726 494105025 1038422009 1038422009 1069930825 1069930825 718642468 967758211 967758211 764339382 709826183 848618705 978995138 978995138 834135028 834135028 713561954 21095506 302573792 1068269851 1068269851 991265138 991265138 975225111 975225111 680357282 748494826 917234043 917234043 959785767 959785767 344195649 344195649 97815616 97815616 28591304 281090240 285042370 285042370 281335936 284697410 284697410 283220226 283220226 270145026 84934696 447201664 447201664 672894868 772232365 772232365 727223600 727223600 724437797 724437797 572925232 754908933 754908933 731336209 929165878 929165878 270647590 500356974 533210874 533210874 375100508 321044608 325194162 339230218 353227040 361808490 503317768 503317768 438830358 153092388 478871552 478871552 202069058 203662376 412159073 947978891 947978891 875834195 591333372 591333372 533994769 447421200 447421200 675033126 699868934 946163200 952681671 952681671 816342400 418117136 333593614 248916848 205650080 319695458 319695458 951023876 951023876 766384224 766384224 443498756 407016550 407016550 155238564 216989088 216989088 955841000 1027417113 1027417113 642705457 987832791 987832791 997966847 997966847 775055813 1013035530 1013035530 416792504 522956126 522956126 145478372 145478372 144073888 76240448 76240448 29981312 90042024 194257460 567625833 567625833 692533370 793886389 982066229 982066229 850505911 305633801 630724256 630724256 614601545 608436288 91889504 121507816 121507816 17642328 443580160 443580160 8231702 404884480 404884480 7233536 7233536 43279285 603375697 826071111 826071111 805342498 543438016 729982208 729982208 604445465 729809013 729809013 159399143 527238530 527238530 462234802 371982544 193617306 285285408 940779900 1039212271 1039212271 529874286 517880830 610414270 610414270 898632810 898632810 497680417 188908192 196645792 196645792 185028928 50766912 841324848 841324848 829406419 497593984 205346464 284235664 284235664 670449257 670449257 577005257 541367000 339757632 353813282 353813282 357837792 357837792 902428481 902428481 633862377 476801161 476801161 281358508 275516802 538809344 1044359447 1044359447 909423580 909423580 942550535 942550535 676544002 268960770 554248493 554248493 976028816 976028816 813436803 664744948 626334132 30304384 289475984 289475984 59083248 66650112 297217890 297217890 416142720 416142720 184491268 195762164 195762164 162711600 298388516 426057840 426057840 172340560 33327248 38045892 272647299 691061541 691061541 516120107 581640639 581640639 504496770 468462028 258643772 862639539 862639539 404824326 404824326 463536758 514536798 514536798 266981538 1061733566 1061733566 396219270 396219270 164551908 279240898 426253744 426253744 245401948 225969308 44307168 86281264 110907336 212667608 267755580 906773184 906773184 549545854 510502023 1034040766 1034040766 720503126 680186949 680186949 633590508 641851545 641851545 127020752 261110320 261110320 473733018 473733018 144872448 319802707 740608269 740608269 94685544 338877075 892420344 892420344 882067971 841353995 292888652 757344774 757344774 428418027 673929482 673929482 639878232 591199120 598429169 598429169 579720881 579720881 671104129 671104129 164066372 564809600 564809600 606980845 606980845 135411877 263440528 288672232 788897841 788897841 899708960 899708960 797458545 797458545 579388497 587309152 588267521 588267521 3310128 540579085 540579085 134922508 230164332 569934061 569934061 73618312 671332493 671332493 147177728 269943482 269943482 172767744 371998010 371998010 180040388 180040388 117934416 278934194 278934194 54803712 380125768 380125768 370052994 626536598 626536598 501290318 1050883862 1050883862 942740483 889791531 556729646 502889420 677786284 1011487979 1011487979 493448500 303489404 385352434 385352434 358089008 337253898 379064400 379064400 677446392 677446392 789058941 789058941 568789953 568789953 286335522 903483564 903483564 1020005583 1020005583 807800254 388106326 260709922 269501608 357435416 357435416 257202188 152323208 110304768 145026561 145026561 222636516 562056224 770827245 770827245 887113642 887113642 1018233582 1018233582 809554956 1011487887 1039336815 1039336815 768302443 239563944 239563944 101526024 143471064 150157152 234825864 234825864 148636800 148636800 67372040 37299680 37299680 44638416 63649008 63649008 589602113 589602113 218921116 679818704 679818704 945424271 945424271 612417609 612417609 43550025 37890000 191656960 489276460 990282088 990282088 522850595 978750590 978750590 875577943 1024165938 1024165938 532948046 806158339 897220627 897220627 409864461 66770800 66770800 323008802 323008802 23381792 842319024 842319024 813814272 813814272 327084096 22624608 268497154 269169666 269169666 268633088 305403620 305403620 445144028 445144028 262535224 256264208 410851922 410851922 430837494 518872331 518872331 412395278 412395278 1015960835 1015960835 950237196 548631557 203814469 542840516 542840516 303909960 282139719 604569225 604569225 543952257 544598913 544598913 25289728 25289728 68975944 68975944 186488212 186488212 182600468 774250141 774250141 144453329 127876536 819528685 819528685 107494708 803927129 803927129 657719809 772109201 772109201 691705644 691705644 956993316 956993316 675553811 471009408 957541029 957541029 870235983 870235983 556100904 673761537 673761537 808690221 808690221 603197816 603197816 432294817 780451842 1016074784 1016074784 563208801 961675553 961675553 960598995 805533382 318942198 334888182 334888182 291609350 285099458 280530816 277678274 285229730 717531646 878569803 1000984942 1000984942 924499451 692263303 692263303 414398975 1016089979 1016089979 906027122 629219433 927258802 927258802 527268376 527268376 465180534 442439880 244245132 384862680 384862680 606678352 692691220 970022949 970022949 817971424 279106176 45138768 40494480 40494480 38122528 38122528 37015968 87562384 121736100 207785005 207785005 251842620 251842620 636692229 783146133 783146133 685543029 675597669 327698434 457968390 457968390 463620148 463620148 1001888371 1001888371 601040134 601040134 550626486 118623288 118623288 107098448 107098448 41256448 41256448 42104208 42104208 753152643 753152643 817533312 817533312 1052412463 1052412463 917096360 917096360 557200194 557200194 581175569 581175569 898271393 898271393 660775386 660775386 851595289 851595289 300942306 550535427 959299591 959299591 932710011 932710011 877309345 877309345 648695056 198473752 403674150 506925632 546762808 664087161 986946244 986946244 471957574 638644786 638644786 429619072 429619072 469127492 482468164 1038983490 1038983490 943800488 953758772 953758772 764845752 483657420 244937764 244937764 220261560 237398165 616173897 631938889 756027156 756027156 648072313 612681801 655730201 655730201 629671017 227026017 749266620 749266620 741099640 718542421 718542421 783076701 783076701 628023105 628023105 79324265 562166657 562166657 558363808 560710729 560710729 166141440 546445669 546445669 197135820 216793332 216793332 126106768 102787224 229679520 229679520 99689060 84118984 108126568 108126568 116779992 116779992 75857424 75857424 67607632 311350106 311350106 371269776 371269776 82686930 398790360 398790360 330709154 211860812 365132520 365132520 344113840 296036706 296036706 333447650 333447650 28494986 346180984 346180984 187870340 149905700 10012224 579727442 874077704 874077704 805828611 779785195 730807413 386767221 264865420 264865420 212910924 200843440 296292932 517649432 517649432 494597922 494597922 525661292 525661292 821390326 1049961111 1049961111 639652137 639652137 642677306 842256162 842256162 785374285 425927410 911202708 941885703 941885703 866709043 807130180 350518550 46063462 180380440 354662758 354662758 649935108 766724620 766724620 585542521 787274564 787274564 717044109 88695096 295297104 295297104 277070770 867956705 867956705 954664101 954664101 901269500 386314232 533742894 533742894 469189358 941885703 1069432957 1069432957 794843064 193292334 193292334 295788915 504480648 504480648 143790660 36700355 341266824 944093830 944093830 1030888353 1030888353 829690853 632564493 669116418 868256502 897424849 897424849 556198184 860568464 860568464 443838903 33644592 134266884 167799296 167799296 331760228 460321026 513345416 513345416 775833941 775833941 448707996 701074073 822307724 828323043 870268659 870268659 837795177 609971497 753488928 753488928 750495173 591083313 591083313 911775696 911775696 869844685 946619482 946619482 667293945 901432784 901432784 418782150 358167055 425976429 887353803 887353803 887339459 767617905 1001902560 1001902560 705612309 1056059091 1056059091 657478840 774219454 774219454 694288881 486690879 348032558 742525044 742525044 1017924040 1017924040 1013738708 898417616 1025764786 1025764786 956719258 900107266 810323909 993000759 993000759 790777920 790777920 550094157 195323929 175170676 745622308 745622308 788666027 788666027 483268859 982518834 990911130 990911130 978580119 978580119 309717906 587319746 587319746 869319982 869319982 971097322 971097322 785156788 1018720363 1018720363 494384684 494384684 831722217 951124559 951124559 303824920 303824920 218121568 212387148 134758436 287246646 287246646 736575298 736575298 827327139 903201907 903201907 374874217 638483498 660451345 669551784 669551784 527179418 979920558 979920558 336238734 285473939 285473939 309280146 1013669790 1013669790 1060524725 1060524725 787545428 787545428 608460836 1071924379 1071924379 252195688 889661508 983939695 1051206321 1051206321 939661445 860762019 679778004 997527620 997527620 330616308 330616308 426122862 426122862 217842899 123774378 742545557 742545557 191369549 646059064 863192800 863192800 119660856 1038354577 1038354577 164635372 169904376 293211658 293211658 340885849 894595641 1067138211 1067138211 839899156 557626274 195122180 885621454 885621454 666381176 666381176 734395190 734395190 659843769 951167422 951167422 232177804 232177804 433096878 642526948 642526948 159944353 142655652 142655652 87066680 553397016 553397016 850955136 850955136 845251726 370613119 1038422009 1038422009 1037380231 973289602 718642468 967758211 967758211 764339382 709826183 848618705 978995138 978995138 834135028 834135028 713561954 585688210 844344472 844344472 573929199 991265138 991265138 975225111 975225111 680357282 267392860 267392860 267849872 267849872 180761556 201615424 405859200 510707216 510707216 271528456 340526218 340526218 79945866 79945866 68207296 6635904 6381824 6381824 84934696 84934696 17957376 188305428 188305428 772232365 772232365 158465184 538444368 724437797 724437797 572925232 723042609 731336209 731336209 848513224 848513224 141029056 306786976 533210874 533210874 547541313 714903293 714903293 685281867 685281867 481465190 533269674 533269674 438830358 766459245 766459245 516829399 682210513 682210513 412159073 947978891 947978891 875834195 591333372 591333372 826399874 826399874 700723373 700723373 699868934 946163200 952681671 952681671 816342400 466630346 466630346 248916848 582882196 582882196 889591851 951023876 951023876 766384224 766384224 556218472 493891180 493891180 983537186 983537186 216989088 955841000 1027417113 1027417113 642705457 987832791 987832791 997966847 997966847 775055813 1013035530 1013035530 808773867 699447932 667043993 375742923 546308292 680808552 1007880418 1007880418 680649285 633968152 311953058 345845288 345845288 127524872 63963888 324552400 324552400 399557984 671003920 671003920 612897920 100117024 100117024 67138624 101389128 101389128 80038252 443580160 443580160 54098710 109183066 344092996 344092996 305350302 305350302 468190710 468190710 540832864 806172294 806172294 729982208 729982208 112862992 112862992 640167320 640167320 62988584 62988584 358614096 859850937 1030945283 1030945283 940779900 1039212271 1039212271 654314368 777857485 885452313 885452313 772707206 767379476 767379476 753243555 1036856559 1036856559 1024515119 1024515119 841324848 841324848 829406419 847892423 847892423 598628860 443981782 670449257 670449257 630605860 750817997 750817997 319232130 319232130 357837792 875569160 875569160 816917057 623880289 611613931 281358508 281358508 275516802 538809344 538809344 205309440 141896580 141896580 410060928 671622409 671622409 268960770 554248493 554248493 787428263 787428263 664744948 664744948 626334132 39111312 289475984 289475984 359138647 704906389 709362709 709362709 717825237 717825237 711238916 195762164 195762164 162711600 541443280 541443280 172340560 545466356 672946708 672946708 850889998 850889998 493631747 288520928 562303108 562303108 504496770 21857597 120750851 862639539 862639539 370169769 212910924 463536758 463536758 436658592 168207678 1061733566 1061733566 396219270 396219270 164551908 279240898 279240898 162071040 34188288 34188288 29967408 14192640 15469696 555529184 599742368 906773184 906773184 296486176 297929744 841487425 841487425 821239903 504919812 504919812 633590508 945964055 945964055 845160729 583025044 261110320 473733018 473733018 144872448 319802707 740608269 740608269 620879913 620879913 722807598 722807598 999749658 999749658 630698011 757344774 757344774 428418027 536870972 536870972 491831982 491831982 335651492 542541824 542541824 676540068 676540068 671104129 164066372 99984256 142342080 606980845 606980845 135411877 263440528 288987170 788897841 788897841 899708960 899708960 797458545 797458545 579388497 587309152 588267521 588267521 236164624 540579085 540579085 134922508 230164332 569934061 569934061 77779272 671332493 671332493 147177728 142815300 172767744 184641948 184641948 47395536 181853204 181853204 24557760 47657600 47657600 193659028 193659028 317945339 494768675 494768675 756622259 756622259 798606851 917403785 917403785 710104965 710104965 502889420 786442996 1011487979 1011487979 982453785 982453785 609527371 391907506 391907506 337253898 379064400 689450320 689450320 606341142 606341142 436472073 291842466 291842466 286335522 286335522 473438922 473438922 412486504 412486504 367007878 252707646 269501608 357435416 357435416 257202188 152323208 110304768 145026561 145026561 222636516 562056224 770827245 770827245 887113642 887113642 1018233582 1018233582 691922477 408209518 432473446 433461990 433461990 225330642 225330642 84798472 126667896 126667896 35854664 13116960 5243520 17825952 17825952 37299680 37299680 33030656 90227112 105046360 589602113 589602113 218921116 134951943 134951943 945424271 945424271 612417609 612417609 43550025 37961984 191656960 218194185 1023623277 1023623277 992358759 978750590 978750590 875577943 1024165938 1024165938 532948046 204850956 897220627 897220627 284627506 66770800 118963536 323008802 351060810 351060810 842319024 842319024 813814272 813814272 327084096 27269280 268497154 269169666 340821392 340821392 305403620 305403620 311398646 311398646 262535224 256264208 410851922 410851922 430837494 518872331 632309112 632309112 412395278 1015960835 1015960835 950237196 548631557 203814469 542840516 744673288 744673288 557346924 203712838 652732750 652732750 447031638 569085922 772602653 772602653 134980947 48620992 678558144 707134292 707134292 45154624 676515088 676515088 571475459 452584016 452584016 313268308 921190835 921190835 657719809 657719809 613656005 691705644 691705644 956993316 956993316 22487592 827335232 839455795 839455795 832118275 61028563 631061224 631061224 625879069 515283550 573966416 573966416 589328552 644084121 644084121 626229555 563208801 563208801 961675553 961675553 960598995 805533382 350433738 341877698 9355970 8652864 280530816 280530816 544212609 544212609 717531646 878569803 878569803 304185897 245940364 46137168 112756744 112756744 81529328 906027122 906027122 629219433 927258802 927258802 608821472 608821472 465180534 604275733 710788702 710788702 751167693 751167693 692691220 970022949 970022949 817971424 279106176 584609816 618395337 669666952 669666952 91411368 600434936 600434936 591038608 155972772 155972772 164975212 175315460 246505268 246505268 185181376 185181376 485134520 485134520 338707790 294412706 436386244 436386244 487065486 487065486 302907976 302907976 76405864 118623288 118623288 107098448 107098448 41256448 47265024 56560816 62725920 484357504 484357504 817533312 817533312 551175823 515948720 1024605470 1024605470 948583460 948583460 276824066 276824130 898271393 898271393 843066432 843066432 851595289 851595289 300991458 550535427 959299591 959299591 932710011 932710011 877309345 877309345 562616328 441885055 441885055 506925632 794599982 794599982 986946244 986946244 740552973 1017968191 1017968191 691515736 436815784 436815784 482468164 1038983490 1038983490 943800488 943800488 219286052 255408692 255408692 244937764 244937764 220261560 324580850 324580850 26738784 756027156 756027156 648072313 405835580 304163930 336069642 336069642 631704588 631704588 224997881 140282865 718542421 718542421 783076701 783076701 628023105 628023105 886309770 886309770 562166657 558363808 560710729 560710729 204843176 546445669 546445669 351522758 216793332 348601462 348601462 51185728 4194432 90218560 348751282 348751282 128049528 336347394 336347394 264192 6338816 32637680 104754048 311350106 311350106 371269776 371269776 82686930 398790360 398790360 330709154 74481728 365132520 365132520 344113840 215481036 312690952 441451158 441451158 388547898 388547898 315362514 315362514 268541783 268541783 178257798 1016918810 1016918810 805828611 779785195 730807413 675018018 946573832 946573832 212910924 164627651 564143914 564143914 517649432 494597922 494597922 525661292 835278387 927281572 1049961111 1049961111 639652137 639652137 642677306 842256162 842256162 785374285 403455178 911202708 941885703 941885703 866709043 807130180 525744890 429352082 200170588 856931943 856931943 662370560 766724620 766724620 764231145 787274564 1018722830 1018722830 103907376 122758840 272736480 277070770 867956705 867956705 954664101 954664101 901269500 386314232 533742894 986996928 986996928 941885703 1069432957 1069432957 794843064 193292334 193292334 295788915 504480648 504480648 477432276 549753812 549753812 944093830 944093830 956469664 956469664 617498945 617498945 669116418 868256502 897424849 946518062 946518062 860568464 860568464 811699989 1026759042 1026759042 889579563 320308285 626877316 686341918 686341918 513345416 217204518 190914856 297803904 410528914 410528914 404303376 436471830 436471830 437256288 437256288 92017416 79708224 232170046 379849050 388434270 725653928 822206499 822206499 268472320 172228752 992905432 992905432 418782150 418782150 358167055 425976429 887353803 887353803 887339459 1038803442 1038803442 1001902560 297951080 817522843 817522843 211617474 774219454 774219454 694288881 486690879 348032558 742525044 742525044 1017924040 1017924040 124306872 124306872 776262656 776262656 108680832 108680832 93980272 86647872 75628575 814108941 814108941 550094157 227050820 227050820 745622308 745622308 671092162 671092162 392902074 392902074 374881866 718171714 978580119 978580119 441451415 942670468 942670468 869319982 869319982 1019741391 1019872423 1019872423 1018720363 1018720363 494384684 494384684 831722217 831722217 373713724 596731241 610116488 1009622743 1009622743 761810789 761810789 412071622 85387333 539154612 827327139 903201907 903201907 553853992 604640265 642071536 669551784 826846354 826846354 979920558 979920558 21894315 21547012 167815174 302063634 302063634 302063634 302063634 268765200 313149446 313149446 839089252 1071924379 1071924379 252195688 889661508 983939695 1051206321 1051206321 939661445 860762019 679778004 997527620 997527620 428420232 218105014 426122862 426122862 130648962 130648962 273816538 351404060 435028094 439229718 439229718 170548478 219692580 411442224 411442224 165504550 344981712 344981712 380245388 380245388 894595641 1067138211 1067138211 574457748 439339418 473662410 473662410 505487646 505487646 461407750 734395190 766051504 766051504 654569529 572174880 244454600 232177804 647688881 647688881 633575445 633575445 100663376 148151412 719201989 719201989 553397016 1021488604 1021488604 1019537565 1019537565 783276189 783276189 742411265 742411265 84411432 84411432 84411432 340412226 340412226 408531696 408531696 297343010 809511170 809511170 585688210 713154646 844344472 844344472 573929199 573929199 469835908 780176335 780176335 622050161 267392860 376574874 547824380 916726363 916726363 505741657 505741657 510707216 510707216 271528456 340526218 340526218 79945866 79945866 335803402 335803402 269782410 274022282 274022282 4969090 276873216 276873216 268439744 2627328 2627328 4096 0 0 0 0 130658304 172129528 172439700 172439700 431356962 431356962 306786976 461928890 730943683 730943683 714903293 714903293 685281867 685281867 565559334 565559334 564513206 564513206 766459245 766459245 516829399 682210513 682210513 51391272 51391272 408234728 408234728 863000600 924893659 924893659 826399874 700723373 700723373 369205414 344799360 348787914 641805329 641805329 466630346 466630346 252971580 582882196 582882196 889591851 933406098 933406098 853530801 556218472 556218472 493891180 493891180 983537186 983537186 58240679 878578596 878578596 282828461 8910912 6059712 71368928 838664440 838664440 647983560 743735373 808773867 808773867 699447932 671099024 671099024 635902197 680808552 1007880418 1007880418 680649285 633968152 311953058 311953058 974742218 974742218 344818903 560372129 560372129 715871188 715871188 671003920 609699018 576374322 618936611 618936611 922084058 922084058 898794603 898794603 719205989 804047752 804047752 344092996 344092996 305350302 305350302 943736785 943736785 539939715 806172294 806172294 662717764 662717764 660614801 792465573 792465573 788803864 322772106 322772106 379461942 859850937 1030945283 1030945283 162389804 162389804 654314368 654314368 777857485 885452313 885452313 772707206 767379476 767379476 753243555 1036856559 1036856559 1024515119 1024515119 690362976 1028935256 1028935256 847892423 847892423 694469620 694469620 484598738 494805062 630605860 750817997 750817997 307634836 174446604 285837576 875569160 875569160 816917057 623880289 611613931 21919138 425721988 425721988 806498560 808858244 808858244 947657344 1008605444 1008605444 403835392 204084490 201851140 201851140 456582458 456582458 355738312 355738312 80808746 99110144 99110144 96782568 93129192 359138647 704906389 709362709 709362709 717825237 717825237 711238916 159770724 56320864 34377552 541443280 541443280 702962594 702962594 672946708 672946708 850889998 850889998 749618252 749618252 684202479 917456215 917456215 872802315 820308457 269371433 210796800 635743176 1041034680 1041034680 436658592 436658592 136397232 65659121 721994753 721994753 482879654 883239114 883239114 542450058 94171240 94171240 59327216 106480400 106480400 82314696 586969616 599742368 599742368 269358578 269358578 297929744 841487425 841487425 821239903 510235780 510235780 357651780 945964055 945964055 845160729 794288472 240995560 236810160 236810160 378581316 378581316 146081318 536895528 620879913 620879913 757162288 757162288 999749658 999749658 705208690 1007160388 1007160388 1047277593 1047277593 536870972 491831982 491831982 605534742 605534742 542541824 676540068 676540068 609223305 609223305 99984256 92588136 70307304 26802848 22733600 85041064 288987170 288987170 218073056 560212009 606415113 606415113 436699222 576233873 576233873 576939552 591990961 644371633 644371633 591954329 591532209 574623744 67634184 77725992 77779272 77779272 32762496 89338536 89338536 84617720 184641948 184641948 46062032 181853204 181853204 32244608 47657600 58530288 193659028 204490830 478446348 494768675 494768675 756622259 756622259 798606851 798606851 606148000 710104965 710104965 362091408 786442996 786442996 715264806 1042482448 1042482448 609527371 427068634 391907506 409282950 598171009 709820298 709820298 1012038886 1012038886 562170236 560404865 560404865 283183211 695938594 811008493 944767623 1012663874 1012663874 345246282 31720362 84413088 84413088 29754024 14288064 15992960 15992960 76577792 76577792 32009256 92135592 92135592 23932320 23932320 74976232 97807136 97807136 218753346 408209518 432473446 433461990 433461990 225330642 225330642 84798472 126667896 126667896 113772136 113772136 67109744 104661088 104661088 64037616 33030656 33030656 90227112 241658572 241658572 228369268 228369268 39845896 106955160 134234240 138461316 138461316 247506180 247506180 101196548 464527632 464527632 1023623277 1023623277 992358759 885629198 885629198 244102530 130361592 253457948 253457948 159081300 387242000 387242000 284627506 62205424 118963536 118963536 351060810 351060810 73533904 73533904 69995784 69850944 27269280 27269280 1787008 4842112 340821392 340821392 254329754 237541576 183426516 217894860 217894860 205275328 191963216 191963216 257999780 257999780 632309112 632309112 67011409 41294736 8556880 447552 707790312 802686717 802686717 744673288 877167114 991052425 1058674239 1058674239 652732750 520341428 569085922 772602653 772602653 269189184 269189184 678558144 707134292 707134292 710811285 710811285 676515088 571475459 452584016 452584016 313268308 921190835 921190835 715691001 715691001 539756736 694016321 694016321 560013729 560013729 21824961 827335232 839455795 839455795 832118275 61028563 631061224 631061224 625879069 920931689 920931689 840583386 817011295 768874906 644084121 731055640 731055640 396147256 396147256 259588098 273875784 350433738 350433738 341877698 316672084 271451590 170466836 281163202 544212609 881274691 881274691 360637730 823763243 823763243 580398976 675932957 675932957 473819255 869589839 869589839 761260064 744101517 608593088 608593088 608821472 608821472 713221740 713221740 781814406 781814406 751167693 751167693 683003018 855404311 855404311 848519570 840073601 584609816 618395337 669666952 669666952 91411368 600434936 600434936 591038608 141436228 150842308 150842308 158410048 158410048 166324000 166324000 57255236 485134520 1032325611 1032325611 294412706 806598851 806598851 727869719 727869719 556442470 852704310 852704310 41613568 41613568 18442112 35126928 37748496 47265024 280089154 288742321 937312167 1012975247 1012975247 1007676686 1009728674 1009728674 1024605470 1024605470 948583460 948583460 603989301 706838553 706838553 671121428 843066432 843066432 207376925 405529412 405529412 300991458 269219686 142238308 142238308 986127750 986127750 591581361 269769395 441885055 441885055 453611248 941220323 1032164388 1032164388 999711343 740552973 1017968191 1017968191 691515736 436815784 436815784 437257370 968101566 1010141664 1010141664 954130119 954130119 773762912 422380188 201752168 160592528 160592528 324580850 643845089 795640645 795640645 722748708 665357552 632556393 655437353 655437353 631186553 631704588 631704588 224997881 52502832 42583680 42583680 270059010 307274738 307274738 297346914 886309770 886309770 354306336 354306336 289157130 269099500 204843176 204843176 351522758 351522758 203540484 348601462 348601462 51185728 44952912 99509128 348751282 348751282 128049528 336347394 336347394 101963288 104851120 104851120 104754048 108447512 123739120 123739120 60190096 60190096 34222976 26389760 10559808 74481728 74481728 69303240 29338828 215481036 312690952 441451158 441451158 388547898 388547898 315362514 315362514 268541783 268541783 1001599863 1016918810 1016918810 503915608 503915608 202625420 675018018 946573832 946573832 211919393 164627651 564143914 564143914 228663660 386609364 401142304 401142304 835278387 927281572 927281572 464997136 464997136 328803954 328803954 272664708 349103326 1027614846 1027614846 683806917 535222382 535222382 325498146 525744890 525744890 429352082 200170588 856931943 856931943 662370560 662370560 559782921 764231145 764231145 1019869580 1019869580 442454799 328913522 328913522 274252010 561044248 563012832 958199809 958199809 10694976 254775904 254775904 986996928 986996928 179552388 138474324 186858176 186858176 247753304 247753304 580014688 580014688 138861409 477432276 549753812 1056839168 1056839168 839025170 741495568 604406216 617498945 617498945 612569794 496499310 1068673901 1068673901 946518062 697982049 811699989 811699989 1026759042 1026759042 889579563 320308285 626877316 686341918 686341918 536039080 463996278 384764130 297803904 410528914 410528914 171008918 450136700 450136700 234973378 257558976 257558976 834066475 834066475 394602618 1016469539 1016469539 822206499 822206499 306185567 306185567 992905432 992905432 209739175 233521176 272733444 426263110 816370146 816370146 811655328 1038803442 1038803442 569407618 297951080 297951080 535631614 535631614 278726348 171966612 171966612 134352900 178442276 208728724 208728724 334964425 1070408069 1070408069 554300281 865075827 865075827 991721822 991721822 642645956 642645956 75628575 814108941 814108941 211077477 570786069 570786069 155502752 155502752 671092162 671092162 392902074 566044836 566044836 586683365 840435538 840435538 441451415 942670468 942670468 749766134 763889535 1019741391 1019872423 1019872423 966268065 966268065 768999974 956823591 956823591 373713724 391057616 596731241 610116488 1009622743 1009622743 761810789 761810789 412071622 805664699 924606753 924606753 32118240 876995178 876995178 604640265 604640265 386203664 826846354 826846354 397694956 704650352 704650352 757272935 757272935 327300482 1040719888 1041310239 1041310239 421081651 725067082 725067082 839089252 839089252 375638237 51644976 289814416 322776882 322776882 295747938 295747938 330689394 330689394 431489712 431489712 428420232 218105014 218134932 218134932 130648962 130648962 305661714 351404060 435028094 439229718 439229718 170548478 476327942 476327942 515072284 515072284 344981712 514068942 514068942 484575582 209077530 10411584 473969228 473969228 439339418 473662410 473662410 505487646 505487646 378800730 533393227 766051504 766051504 673792853 673792853 244454600 164700900 647688881 647688881 633575445 633575445 81714888 459737012 719201989 719201989 147848388 1021488604 1021488604 1019537565 1019537565 939788295 960523549 960523549 752762100 766240600 766240600 905230034 905230034 596239473 824455583 824455583 899162617 899162617 809511170 285745830 969942049 969942049 289901147 10278108 469835908 469835908 636833812 636833812 622050161 101529612 376574874 547824380 916726363 916726363 505741657 505741657 385353520 33554432 599040 34120720 41943040 41943120 41943120 335803402 349419816 364115554 364115554 291097160 291097160 365152770 365152770 270218754 1050359311 1050359311 445121622 845842784 845842784 776313025 776313025 624665741 580423813 714864213 714864213 595901988 431356962 293939366 276826304 730943683 730943683 458486454 682235204 682235204 503861322 565559334 565559334 564513206 564513206 471878317 471878317 143340612 182034050 302828562 324953287 966473319 966473319 678508438 962493889 962493889 924893659 591634899 520495105 440875158 369205414 348269568 348652746 348652746 733386 2576 235930160 252971580 912269920 912269920 321962802 933406098 933406098 853530801 647816792 647816792 353436448 344739496 344739496 670272123 670272123 82973640 200550933 612759041 676629447 833827683 833827683 838664440 838664440 647983560 647983560 601952852 177349105 1196068 671099024 671099024 635902197 89298944 89298944 4458496 13304776 113390496 297448400 297448400 974742218 974742218 344818903 560372129 632578528 715871188 715871188 609699018 609699018 576374322 618936611 618936611 922084058 922084058 898794603 898794603 719205989 804047752 804047752 43591248 172046676 172114900 173557973 943736785 943736785 539939715 79731000 165157284 662717764 662717764 660614801 792465573 792465573 788803864 322772106 322772106 379461942 413459438 413459438 362952902 162389804 162389804 354479336 354479336 374547736 374547736 379943424 451903947 677419045 677419045 921583645 921583645 364798967 1017518415 1017518415 214904912 1028935256 1028935256 473352948 473352948 694469620 694469620 860566067 1023287855 1023287855 566383321 566383321 307634836 204606278 285837576 604300385 604300385 346049352 940983815 940983815 21919138 425721988 425721988 806498560 808858244 808858244 947657344 1008605444 1008605444 403835392 402653190 402653190 246155122 305531248 344332362 355738312 355738312 80808746 99110144 99110144 96782568 271155784 271155784 22551936 20323104 719815936 719815936 712801685 159770724 159770724 25643108 17041440 17041440 17039360 702962594 702962594 428397282 428397282 539543202 809027331 809027331 749618252 684202479 917456215 917456215 872802315 820308457 269371433 103070617 635743176 1041034680 1041034680 545292352 480569665 153693480 183248218 721994753 721994753 499583182 942546054 942546054 697192870 231266024 94171240 59327216 106480400 106480400 82314696 586969616 586969616 103549104 90703272 38273304 86151488 102204894 472895374 472895374 510235780 651830760 651830760 753979993 753979993 794288472 794288472 240995560 859057438 859057438 662388228 1069749430 1069749430 447530051 591719525 964962614 964962614 757162288 612720640 612720640 705208690 1007160388 1007160388 1047277593 1047277593 340882107 340882107 218334030 605534742 605534742 205698292 498005011 623749521 803870205 803870205 107502824 227203784 677927468 680600133 680600133 631661344 145976136 73580040 94816937 560212009 606415113 606415113 127619264 576233873 576233873 576939552 591990961 644371633 644371633 591954329 591532209 574623744 16777248 1123072 2097408 2100480 12136960 12136960 12585984 12585984 12714176 12714176 14157504 43647744 43647744 41030544 32244608 58530288 58530288 691039317 691039317 479830853 25242203 79816088 292794133 753851451 753851451 612463121 606148000 457008644 457008644 784532609 784532609 621425037 1042482448 1042482448 1036257519 427068634 949426424 949426424 928262863 977553499 977553499 1022458252 1022458252 562170236 560404865 560404865 433138656 695938594 811008493 944767623 1012663874 1012663874 345246282 160590184 415848040 415848040 402922724 218663488 218663488 15992960 68158080 71303304 71303304 29395968 2622720 2917888 2917888 74976232 81045632 81045632 97642848 97642848 26118824 88790760 88790760 92563200 92563200 38013096 67372576 101468168 113772136 113772136 100666456 104661088 104661088 64037616 59029344 45050480 45050480 241658572 241658572 228369268 228369268 671617287 671617287 271193346 303095890 303095890 274849866 580911945 580911945 805585216 805585216 195299700 195299700 33562640 268550152 268550152 203878910 130361592 303381160 327690856 327690856 387242000 387242000 185485878 390805392 390805392 327630490 13841088 345059664 345059664 268444120 17859264 17859264 13980384 10051202 269169666 273936514 273936514 259410562 488262994 488262994 256520040 256520040 94451168 337880272 383305562 435328240 435328240 257999780 154272496 767561348 767561348 648586273 553215897 738874317 738874317 802686717 802686717 678069504 877167114 991052425 1058674239 1058674239 520341428 520341428 460894268 360962976 351611850 269189184 269189184 49621968 39897220 39897220 710811285 710811285 597297380 946740615 946740615 841611412 523035946 405002434 405002434 715691001 715691001 219212772 694016321 694016321 560013729 560013729 21824961 17378528 818601062 818601062 285616136 285616136 314444766 314444766 100964380 920931689 920931689 840583386 817011295 978360827 978360827 731055640 731055640 814817974 814817974 816833582 875474278 875474278 405149958 316672084 316672084 271451590 310923456 310923456 304486786 881274691 881274691 360637730 823763243 823763243 580398976 675932957 675932957 473819255 869589839 869589839 761260064 744101517 228791380 482537582 566767832 600519921 713221740 713221740 781814406 781814406 417148614 616632210 616632210 302842898 848519570 848519570 840073601 574693521 34537617 548486993 548486993 33663808 25116576 18419328 18369572 141436228 150842308 150842308 158410048 169396180 313102036 313102036 311241810 78328334 1032325611 1032325611 380313566 806598851 806598851 1046472458 1046472458 677644677 852704310 852704310 254665072 232257052 232257052 100769428 181796170 517755038 517755038 288742321 937312167 1012975247 1012975247 1007676686 1009728674 1009728674 969806269 829137599 829137599 421993639 603989301 706838553 706838553 671121428 388022680 388022680 206619352 405529412 405529412 756232202 925761740 925761740 914369974 986127750 986127750 591581361 881190987 881190987 622899734 622899734 941220323 1032164388 1032164388 999711343 419688486 427880742 427880742 408081030 408081030 115402626 437257370 968101566 1010141664 1010141664 954130119 954130119 773762912 422380188 329414270 329414270 504225392 504225392 643845089 795640645 795640645 722748708 665357552 632556393 655437353 655437353 631186553 606869949 944822515 987163271 987163271 533984424 329946427 629671017 920484385 920484385 843239571 565618427 877161120 877161120 624866570 27125248 27125248 159567972 159567972 61909832 134402052 203540484 203540484 109120536 41237760 235187868 235187868 174747720 201617936 201617936 108626216 101963288 101963288 104851120 104851120 88278720 108447512 123739120 123739120 60190096 60190096 46158608 46158608 112269424 112269424 310863104 310863104 329707794 329707794 305052432 379658586 379658586 372351410 398501914 398501914 295700562 432939744 432939744 1001599863 1001599863 641430588 658167609 903972731 903972731 830731754 830731754 699561109 405589254 405589254 2672644 110236242 307380296 307380296 401142304 401142304 510320722 690065965 690065965 742373014 742373014 774372613 863362323 863362323 845606417 1027614846 1027614846 1021456715 1021456715 987881543 856178690 856178690 473031438 473031438 134929464 184087724 486909914 486909914 261472272 735432280 735432280 656673081 1019869580 1019869580 442454799 328913522 328913522 104252321 561044248 563012832 958199809 958199809 566794402 887698368 887698368 874124811 179552388 747160741 747160741 591374364 591374364 247753304 247753304 580014688 580014688 803625816 919870425 919870425 1056839168 1056839168 741495568 741495568 476615681 477126026 612569794 612569794 496499310 1068673901 1068673901 994800192 697982049 697982049 308386691 840285058 840285058 809923216 193083744 218361900 218361900 536039080 536039080 463996278 384764130 279925902 287950850 287950850 159690754 450136700 450136700 319966320 319966320 257558976 834066475 834066475 523661942 1016469539 1016469539 646448217 646448217 306185567 306185567 880944515 880944515 870432535 268205976 272733444 426263110 816370146 816370146 811655328 811655328 288488611 274707618 273413250 918252715 918252715 673519394 756131679 756131679 1056987702 1056987702 843980327 843980327 592890249 589564209 1070408069 1070408069 554300281 865075827 865075827 991721822 991721822 642645956 996500292 996500292 790177957 790177957 211077477 570786069 570786069 155502752 155502752 159386052 159386052 15541220 566044836 566044836 586683365 586683365 165281856 138412164 988818056 1051011423 1051011423 589349425 85119528 123424952 123424952 966268065 966268065 768999974 1007817231 1007817231 897761892 391057616 475760038 475760038 466743270 466743270 429130294 429130294 304685610 805664699 924606753 924606753 324304992 876995178 876995178 382823041 354243296 354243296 622432776 878724542 878724542 822630581 704650352 757272935 757272935 327300482 1040719888 1041310239 1041310239 421081651 725067082 725067082 394664058 683779297 683779297 263182796 1070622892 1070622892 975665855 955283521 1023416623 1023416623 758711879 613489772 613489772 498016640 498016640 353511298 352984416 352984416 67246944 305661714 305661714 342235530 342235530 340009400 425722016 476327942 476327942 515072284 515072284 289802260 514068942 514068942 484575582 1055907291 1055907291 885105413 1009364750 1009364750 475592718 874459521 874459521 337643530 378800730 533393227 787125690 1002623223 1002623223 673792853 254149048 254149048 241486236 223401152 172286788 172286788 50983424 459737012 459737012 332656776 16203480 446201732 446201732 975844839 975844839 939788295 960523549 960523549 752762100 766240600 766240600 905230034 905230034 596239473 824455583 824455583 899162617 899162617 865243712 564258259 969942049 969942049 203006934 1009616176 1009616176 1051589961 1051589961 696317198 256826556 103592420 196587844 196587844 204464976 204464976 208127320 385353520 531533934 531533934 282429824 282429824 343743192 343743192 306448530 275969544 349419816 364115554 364115554 291097160 291097160 365152770 365152770 270218754 1050359311 1050359311 445121622 845842784 845842784 776313025 776313025 624665741 580423813 714864213 714864213 595901988 219289184 219289184 218238976 435802242 435802242 96495068 176870484 503861322 924097624 924097624 447289364 143512324 143512324 615891549 615891549 223611276 571801857 571801857 324953287 966473319 966473319 678508438 962493889 962493889 856255778 352872809 38013072 343966858 343966858 348269568 348652746 915734801 915734801 684528343 684528343 386246357 912269920 912269920 834783436 342985624 333746075 67636601 647816792 827464744 827464744 344739496 344739496 670272123 670272123 82973640 200550933 633793256 676629447 833827683 833827683 483001162 483001162 789681880 789681880 601952852 966854452 966854452 1026742037 1026742037 763556209 736832793 736832793 752057805 752057805 630351568 297448400 615630425 615630425 676132490 949185682 949185682 632578528 632578528 609610377 606193792 26288736 26288736 25869120 17041440 20658784 27788640 28836768 28836768 25404160 13816512 43591248 43591248 42611200 16088000 16088000 289504040 289504040 92037416 92037416 82912200 16415880 37881504 39387696 645202304 645202304 643115673 230541700 230541700 103541760 103541760 103421208 111214936 111214936 135663000 139534980 434711988 434711988 75260994 275100820 451903947 677419045 677419045 921583645 921583645 782190403 1017518415 1017518415 604921926 1013097474 1013097474 877257867 473352948 319417732 729362760 860566067 1023287855 1023287855 566383321 566383321 511569822 204606278 280987690 604300385 604300385 815792451 940983815 940983815 408797444 403125764 5350912 135219712 201434120 201434120 270013446 270013446 137364228 137364228 402653190 402653190 246155122 314221712 344332362 344332362 287518976 287518976 59317680 59317680 68698176 276891528 291861245 728476501 788999021 788999021 752914848 760524297 760524297 236865380 58840980 38086800 547219040 547219040 603853028 720850753 720850753 713044420 539543202 809027331 809027331 292553634 700111880 700111880 948226119 948226119 461289288 537692741 537692741 414600540 107968280 642393728 642393728 480569665 153693480 411377726 411377726 424223819 499583182 942546054 942546054 697192870 356826600 32653984 32653984 29269504 29269504 39853152 49024464 600316257 600316257 573179217 573179217 86151488 86822920 95346024 95346024 19681352 651830760 881005380 881005380 461447286 461447286 293667128 1020609212 1020609212 859057438 662388228 1069749430 1069749430 635458696 591719525 1016089190 1016089190 380633946 646021146 907109219 907109219 420227336 155576484 219310532 219310532 163987472 93459048 93459048 290113762 290113762 205698292 603916437 623749521 803870205 803870205 632602048 227203784 677927468 680600133 680600133 631661344 145976136 26236192 26236192 78717376 91259680 756121176 756121176 236371525 70304520 90346144 90346144 94371872 94371872 92804416 99109312 99109312 71567496 21318312 31269408 91250784 91250784 100399080 100399080 98194152 160961548 160961548 14157504 137573972 137573972 42829393 677902913 677902913 595324337 691039317 691039317 479830853 302147595 1004197242 1004197242 753851451 753851451 612463121 545315537 457008644 457008644 919610655 919610655 634826808 962595144 1036257519 1036257519 461671818 949426424 949426424 928262863 977553499 977553499 1022458252 1022458252 406917280 332147922 332147922 433138656 433138656 483926378 483926378 166925536 166925536 95587272 160590184 415848040 415848040 402922724 218663488 218663488 24456096 68158080 71639424 91573480 91573480 75762472 84953440 84953440 1574400 75072448 75072448 97642848 97642848 25167024 55050480 55050480 92563200 92563200 38013096 67372576 101468168 105154712 105154712 125961600 132781560 132781560 59029344 59029344 51531520 86631720 117540112 117540112 107111720 248794240 787749609 787749609 523371926 662738809 662738809 961069502 961069502 842006948 805585216 805585216 522866850 226636096 260046972 547565597 547565597 185075248 185075248 303381160 327690856 327690856 321300512 321300512 54451514 390805392 390805392 327630490 24390528 345059664 345059664 268444120 78801760 78801760 13980384 21758336 269169666 273936514 273936514 259410562 488262994 488262994 425123940 423983682 378244174 371498176 383305562 435328240 435328240 154272496 190856465 767561348 767561348 675401157 739894797 739894797 738874317 240671916 678069504 678069504 635065252 866931844 866931844 455605875 1047342495 1047342495 872513449 366228010 575980622 575980622 270254352 581968532 581968532 571721924 27395168 40787141 573335619 946740615 946740615 944464293 944464293 405002434 457231904 487554298 487554298 310553538 319864610 319864610 486123623 806561889 835591395 835591395 818601062 818601062 285616136 285616136 314444766 314444766 100964380 316949300 468978678 468978678 347530217 978360827 978360827 810454317 1058620936 1058620936 814817974 816833582 875474278 875474278 485523932 414192806 414192806 284954562 312477237 312477237 439876486 439876486 702166147 702166147 548410177 181543132 677561488 716200917 815849218 845527506 845527506 850638550 850638550 228791380 954995336 1021051974 1070298638 1070298638 600519921 461620359 175545502 671156250 671156250 681888465 681888465 530146756 183052978 49349313 574693521 574693521 44646192 548486993 548486993 26464352 26464352 22478560 64772320 146065957 146065957 135843797 193600853 556008133 1001592073 1001592073 873278475 572270019 833295099 833295099 824181027 1037030476 1037030476 1046472458 1046472458 1045634688 1059980448 1059980448 254665072 855288725 941608788 941608788 944133522 944133522 517755038 260145392 365433212 371979546 371979546 301364322 830784194 830784194 816436082 816436082 773872822 421993639 801539219 801539219 654695526 650471739 388022680 1057669257 1057669257 969937516 969937516 765567791 925761740 925761740 914369974 792656191 678748090 578897946 881190987 881190987 622899734 684458020 813962473 872812599 872812599 575074323 815640693 815640693 588402229 588402229 408081030 12853892 71385856 74572680 232121824 232121824 222261818 415368118 415368118 280047938 329414270 329414270 504225392 504225392 445524052 404000304 404000304 395855604 190598164 190598164 50018256 49100736 49100736 134577831 944822515 987163271 987163271 976318800 329946427 783215235 921590121 921590121 843239571 877814314 877814314 877161120 624866570 393359760 393359760 159567972 159567972 25211904 134402052 134402052 97763880 114105664 114105664 235187868 235187868 174747720 201617936 201617936 68204048 55641776 55641776 63718016 63718016 59769456 59769456 60104352 60104352 0 0 62070856 119780152 119780152 112269424 315729792 315729792 329707794 387780952 387780952 379658586 379658586 372351410 518431610 518431610 487796754 432939744 432939744 337226230 219804208 641430588 658167609 903972731 903972731 830731754 1010480525 1010480525 671941240 827853351 911475385 911475385 307380296 307380296 482898955 563278035 613996143 690065965 690065965 742373014 742373014 774372613 863362323 863362323 845606417 845606417 876971209 1021456715 1021456715 987881543 856178690 856178690 473031438 473031438 187159604 189717684 202373272 261472272 261472272 735432280 735432280 656673081 785914217 785914217 201327757 198191464 275100736 275100736 631104100 949758637 949758637 739772967 601470688 887698368 887698368 958342774 958342774 747160741 747160741 591374364 591374364 73488604 227599704 227599704 713249388 803625816 919870425 919870425 551813386 372247360 336466377 948604107 948604107 893641827 773812578 537938184 881195586 881195586 994800192 994800192 430977495 271630656 3997696 4009728 107362360 591971381 591971381 633883098 1001419381 1001419381 828498339 364565884 364565884 789567068 789567068 830803996 830803996 530557550 530557550 417068742 319966320 139381174 80924072 866172712 866172712 689852237 661264243 328933299 117965880 363861520 460201398 460201398 870432535 870432535 622511874 1006842305 1006842305 985642376 307017104 307017104 547565889 547565889 435065923 608765868 1071671507 1071671507 673519394 756131679 756131679 1056987702 1056987702 843980327 843980327 592890249 589564209 587732536 120986424 106804912 120660792 120660792 109333136 44338840 348844241 996500292 996500292 790177957 790177957 77605901 226854140 226854140 148971972 6621252 249891106 814165238 814165238 503132142 503132142 188692174 289282946 291116706 291116706 988818056 1051011423 1051011423 726956701 726956701 607607697 92553829 86192424 748253281 748253281 1007817231 1007817231 964771128 380550425 560915648 560915648 63827184 60897344 313723240 335810634 338039450 338039450 32932320 315935442 324304992 324304992 303087888 303087888 385988873 385988873 926908955 926908955 878724542 822630581 657491744 1059162127 1059162127 413868032 437911336 640649348 831049845 1065907462 1065907462 394664058 394664058 683779297 683779297 263182796 1070622892 1070622892 975665855 955283521 1023416623 1023416623 758711879 613489772 613489772 498016640 498016640 519182824 519182824 358157174 293866786 293866786 38207752 107164056 207894552 207894552 425722016 460115200 460115200 424198728 289802260 289802260 83397256 167954978 464706070 1055907291 1055907291 885105413 1009364750 1009364750 475592718 874459521 874459521 353962002 353962002 974950209 974950209 1002623223 1002623223 534250329 254149048 267986940 267986940 88806228 120137008 120137008 41353640 100959592 100959592 44929456 44929456 446201732 522543888 522543888 520167580 368387012 279478632 160170132 162544454 162544454 78117192 211412556 211412556 211028556 211028556 517289562 517289562 865243712 865243712 564258259 681697605 681697605 203006934 1009616176 1009616176 1051589961 1051589961 696317198 396985224 396985224 196587844 196587844 496455906 496455906 925638827 925638827 531533934 981730013 992462232 992462232 790306382 692564010 692564010 402105048 372433879 268288 139264 329728 337920 337920 67584 122880 390144 45710640 45710640 26789472 12747776 12155808 66594320 82961352 203563864 241357212 491376794 491376794 323106190 406982790 406982790 1044907393 1044907393 384038074 384038074 526188268 924097624 924097624 802884755 802884755 828769846 911806732 911806732 223611276 571801857 571801857 159383652 185161732 591659456 591659456 8471857 856255778 856255778 352872809 834910407 834910407 897843202 897843202 25561765 915734801 915734801 880954760 879379792 879379792 223112588 834783436 834783436 437215236 726407184 889830926 889830926 827464744 827464744 336216583 1029701295 1029701295 274161261 714862640 714862640 633793256 1011550194 1011550194 599636340 599636340 684889077 789681880 789681880 520192838 966854452 966854452 1026742037 1026742037 801720548 801720548 736832793 752057805 752057805 630351568 713072640 713072640 615630425 676132490 949185682 949185682 564776830 730218869 730218869 782195586 782195586 595366930 595366930 563488867 901828210 901828210 935863803 935863803 672062469 778082328 778082328 33857220 179495764 198652852 198652852 289504040 289504040 92037416 92037416 82912200 43253784 100665936 100665936 145924144 165724644 165724644 230541700 230541700 500202894 500202894 230636444 436828942 436828942 472077084 473541394 473541394 484595812 484595812 535650518 535650518 172714370 113258880 791901931 791901931 815493140 815493140 706930243 604921926 1013097474 1013097474 877257867 999243070 999243070 729362760 729362760 884000713 884000713 436553608 511569822 511569822 113685078 36177168 78384456 537183242 815792451 815792451 805386508 408797444 403125764 4598916 135219712 201434120 201434120 201377540 201377540 138019844 138019844 34603088 176160788 176160788 314221712 314221712 272856450 287518976 287518976 118176808 118176808 116397384 276891528 291861245 728476501 788999021 788999021 752914848 760524297 760524297 236865380 58840980 39881728 547219040 547219040 603853028 720850753 720850753 713044420 291370725 679419797 679419797 876273016 890841270 890841270 948226119 948226119 485575056 537692741 537692741 414600540 107968280 672202816 672202816 134517674 134517674 537207412 537207412 448119457 293865570 276959298 295875682 356826600 356826600 95421288 90008968 92660208 92660208 84762680 49024464 600316257 600316257 599017401 599017401 13111128 81820301 725688501 725688501 688440357 688440357 881005380 881005380 461447286 461447286 585131208 1020609212 1020609212 439724585 432023978 381731034 635458696 635458696 570572132 1016089190 1016089190 380633946 646021146 907109219 907109219 138939526 155576484 273728628 859841188 859841188 655362088 311296616 566498559 617388560 617388560 603916437 619398112 628807593 632602048 632602048 92527808 93846120 93846120 89035720 91910056 92397672 92397672 50876453 688923013 712541981 776622752 776622752 706053277 706053277 90346144 90346144 94371872 721957952 734765109 734765109 728318400 71567496 21318312 31269408 91250784 91250784 100399080 100399080 98194152 160961548 160961548 4404864 137573972 137573972 42829393 677902913 677902913 595324337 64242101 64242101 145065322 302147595 1004197242 1004197242 268490680 3269376 3269376 3227648 169018261 169018261 919610655 919610655 634826808 634826808 487970442 487970442 461671818 374216666 880979412 880979412 416878611 4452480 21110918 406917280 406917280 21949952 59063524 135072180 210910468 212062500 212062500 224796192 224796192 146104256 146104256 85526632 85526632 76056064 97585376 97585376 24456096 162416993 162416993 148931180 148931180 201326597 201326597 84953440 714621976 714621976 706831625 775168132 775168132 645418864 645418864 556281656 124554728 80792312 102123040 102123040 104897760 104897760 50907200 125961600 132781560 132781560 39622584 51531520 51531520 86631720 240698300 240698300 175330272 424732270 787749609 787749609 523371926 662738809 883983539 1059128706 1059128706 842006948 312525138 522866850 522866850 453655556 709506060 709506060 757711913 757711913 302344854 302344854 40241536 17891072 18645504 18645504 17832448 17176608 7768864 6750720 24390528 24517536 24517536 71816136 78801760 78801760 14460320 31424320 31424320 18948384 72929792 72929792 203049504 425123940 425123940 423983682 378244174 371498176 371498176 244925184 78779208 87427168 190856465 734077173 734077173 675401157 739894797 739894797 258457665 308072082 369402546 635065252 635065252 866931844 866931844 455605875 1047342495 1047342495 872513449 366228010 575980622 575980622 313070144 581968532 581968532 571721924 27395168 27480480 164217238 329852274 855724131 944464293 944464293 418332102 813274395 813274395 487554298 485754924 503464510 503464510 486123623 806561889 835591395 835591395 626267722 9750698 0 606081408 606081408 491982985 174273198 140718228 498213656 515300190 515300190 276050415 810454317 810454317 1058620936 1058620936 541198896 541198896 517213873 485523932 485523932 470466646 414192806 284954562 312477237 312477237 439876486 439876486 702166147 702166147 548410177 34528272 677561488 716200917 815849218 920318346 920318346 850638550 850638550 219311572 954995336 1021051974 1070298638 1070298638 566526765 283397832 982945494 982945494 671156250 681888465 681888465 530146756 199157680 52354608 34283024 557850208 589176449 589176449 27486289 60353584 60353584 54388016 64772320 164891968 164891968 135843797 193600853 556008133 1001592073 1001592073 873278475 572270019 833295099 833295099 824181027 1037030476 1037030476 976417623 976417623 1045634688 1059980448 1059980448 568717920 855288725 941608788 941608788 944133522 944133522 540751617 707614930 707614930 371979546 979002505 979002505 33763344 280152192 816436082 816436082 327243263 312623212 967022690 967022690 654695526 650471739 229149051 1057669257 1057669257 969937516 969937516 879403725 879403725 876948310 893524045 893524045 426990024 426990024 312021044 448796614 1035897007 1035897007 813962473 872812599 872812599 819366949 815640693 818186468 818186468 588402229 445458680 254830582 459842734 459842734 393816056 393816056 201426128 201426128 225756092 230189008 230189008 118182552 118182552 106083384 789504 12583504 357141896 357141896 74212522 42576192 44173616 44173616 48826576 65334336 179755860 179755860 990489152 990489152 647896240 783215235 921590121 921590121 438148224 877814314 877814314 872464395 594488465 936045592 936045592 346555688 346555688 25211904 131133760 131133760 97763880 114105664 114105664 115157128 115157128 0 43712520 68204048 68204048 20988096 12583136 147064492 147064492 123218280 179229996 230287056 230287056 190269764 190269764 159846464 159846464 119780152 31989152 315729792 315729792 111428466 387780952 387780952 91276200 118497544 476717492 518431610 518431610 487796754 65121124 513306887 666630009 797828361 797828361 1029505237 1029505237 796409964 733719404 1010480525 1010480525 951069952 827853351 911475385 911475385 788530752 747648117 679686213 563278035 613996143 671330900 671330900 481853728 382411680 448452492 509085342 509085342 476053902 476053902 445061546 445061546 442510792 442510792 105370718 153597248 228903276 231726436 231726436 189717684 189717684 202325004 202325004 726996305 726996305 210414444 752264595 752264595 473117454 292368782 303107376 824573489 824573489 949758637 949758637 910060483 601470688 601470688 421035473 958342774 958342774 49463728 49463728 56881584 56881584 61026672 130490996 183589032 713249388 713249388 720951816 720951816 783190622 783190622 336466377 948604107 948604107 893641827 773812578 556978977 881195586 881195586 868344051 901886187 901886187 562054734 518121556 711562847 908111159 908111159 591971381 633883098 1001419381 1001419381 828498339 364565884 364565884 789567068 789567068 830803996 830803996 530557550 530557550 417068742 222462344 139381174 80924072 866172712 866172712 689852237 661264243 437070870 488258104 488258104 460201398 460201398 511985790 511985790 622511874 1006842305 1006842305 985642376 346468581 221643435 547565889 547565889 435065923 608765868 1071671507 1071671507 608921924 673960412 734839481 734839481 562826132 704267589 704267589 266360013 353280176 353280176 348281000 106804912 120660792 120660792 100469968 233324940 348844241 1071396183 1071396183 731645363 731645363 129904916 226854140 226854140 136635228 554566488 554566488 814165238 814165238 503132142 503132142 368124490 368124490 367067800 367067800 872415684 905969691 1071644787 1071644787 726956701 607607697 92553829 86192424 695434216 695434216 742729869 964771128 964771128 906512946 906512946 629497390 855239899 855239899 649144443 650453064 650453064 898992731 898992731 877969896 318349315 651691737 651691737 818502273 818502273 562144928 926908955 926908955 604508538 564134241 621417686 1059162127 1059162127 413868032 437911336 571386252 831049845 1065907462 1065907462 459585752 191755538 331559272 331559272 121388416 444523240 444523240 431470798 501509226 501509226 282016962 651723289 651723289 440487032 440487032 376446906 1021523214 1021523214 816003403 960305707 960305707 922746939 714944486 308490256 308490256 201326604 460115200 460115200 151848006 21359716 415347128 415347128 295878884 464706070 464706070 473694796 473694796 371453972 471859470 471859470 352969770 352969770 353962002 353962002 974950209 974950209 545555026 537257985 79931280 208209192 267986940 267986940 88806228 24117248 24117248 100795808 343880216 343880216 314137728 1007915829 1007915829 522543888 522543888 790884608 1044402230 1044402230 69845588 177776136 739372800 739372800 61929373 307817648 307817648 281728194 281728194 277381384 69223490 3145984 557011556 681697605 681697605 331025574 312813252 283381058 533797580 533797580 479013194 396985224 396985224 149262664 317633706 496455906 1065562239 1065562239 925638827 413591092 981730013 992462232 992462232 790306382 851474858 851474858 674586073 674586073 644790632 368425582 336737120 336737120 348717312 488715622 488715622 276496512 61577734 61577734 34395504 34395504 194646136 258479152 534943580 534943580 439357456 491376794 491376794 323106190 406982790 406982790 1044907393 1044907393 384038074 384038074 526188268 713518646 742416671 802884755 802884755 828769846 911806732 911806732 66029328 59311776 159383652 159383652 726372849 726372849 138415152 17090688 541335809 541335809 306426002 834910407 834910407 897843202 897843202 731251378 843192667 880954760 880954760 879379792 879379792 631329840 324727520 830213043 830213043 726407184 889830926 889830926 572495058 298170977 551465612 1029701295 1029701295 403268809 714862640 714862640 712824608 1011550194 1011550194 644571904 644571904 684889077 743504377 743504377 263465581 587678048 587678048 581433681 225043884 801720548 801720548 224657861 105607944 299856482 526071294 713072640 713072640 69339981 43514448 49855142 564776830 564776830 730218869 730218869 782195586 782195586 595366930 595366930 806095875 901828210 901828210 935863803 935863803 1062917823 1062917823 778082328 915938311 1052651359 1052651359 739408990 980243799 980243799 916243515 916243515 570999409 545290320 190005398 340846258 988898594 1035077327 1035077327 514844375 419448944 577446913 577446913 590950244 735445808 735445808 561321344 473541394 473541394 484595812 484595812 535650518 734555316 734555316 970268675 970268675 295000608 815493140 815493140 706930243 413196864 754665378 754665378 695013595 999243070 999243070 540649837 693158437 884000713 952205320 952205320 484565454 484565454 71520582 16512960 5859136 35716752 35716752 805386508 805386508 207372675 8314752 6087680 5581440 4233344 139363840 407945738 407945738 201851392 303726596 305676546 305676546 176160788 297400608 297400608 344231234 344231234 287666536 118176808 118176808 116397384 116397384 78121472 100406664 100406664 18874688 28381696 28381696 13799488 46323664 61392064 61392064 30687488 39349056 174292166 311870102 411514950 411514950 291370725 822407520 822407520 876273016 890841270 890841270 72277086 485575056 485575056 566315188 566315188 562245729 542276193 672202816 672202816 35987456 35987456 537207412 561375855 764412194 764412194 818728131 818728131 614270018 95421288 95421288 90008968 92660208 92660208 84762680 51294736 51294736 101637144 599017401 599017401 13111128 81820301 725688501 725688501 688440357 688440357 106446856 1092352 2484480 3490304 602423416 630828265 630828265 427382713 383424000 381731034 253886856 335565567 944390469 944390469 372335400 372335400 338899722 311112786 311112786 269265920 273172504 273728628 859841188 859841188 655362088 311296616 566498559 726044268 726044268 287202426 287202426 267202044 267202044 212664496 92527808 93846120 93846120 89035720 80454056 92397672 92397672 50876453 710477109 723067413 776622752 793821885 793821885 706053277 637588496 637588496 666522457 721957952 756499780 768627712 768627712 28728032 17600064 9419904 9419904 5814400 5814400 4953600 4953600 5260800 5260800 4404864 33560128 33560128 41944128 41944128 28902480 14689088 59048048 59048048 59039744 111198288 111198288 69206280 70271872 577110192 577110192 559192713 559192713 170070196 170070196 12885348 555573588 1021292320 1021292320 107862544 107862544 138190216 880979412 880979412 808208883 822452259 822452259 671557762 174196864 51576976 59063524 135072180 210910468 212062500 212062500 224796192 224796192 146104256 146104256 85526632 161261152 161261152 97585376 97585376 19737888 162416993 162416993 148931180 148931180 687890752 687890752 275325047 760775904 760775904 706831625 775168132 775168132 645418864 645418864 556281656 338250776 338250776 289786584 126508080 126508080 104897760 118604440 118604440 113410648 113410648 86790296 9963072 50353152 100307856 240698300 240698300 175330272 424732270 2113736 4211016 4211016 81822080 883983539 1059128706 1059128706 540550156 45768958 486740992 486740992 453655556 709506060 709506060 757711913 757711913 302344854 455891736 455891736 436576280 403575304 403575304 136055610 358670272 365039850 365039850 340054666 340054666 342171072 342171072 63351120 63351120 14460320 31424320 31424320 1574400 72929792 72929792 203049504 203049504 129440904 99402584 333066540 509349534 509349534 244925184 78779208 87427168 87427168 80491064 117522560 117522560 14680512 15729152 33574530 308072082 369402546 395916896 395916896 337167882 337167882 271078914 120496610 268508576 268508576 299352610 299352610 21518682 313070144 313070144 13105344 13105344 29388800 29388800 163049056 163264356 305292052 721612275 721612275 418332102 813274395 813274395 424282306 485754924 503464510 503464510 474492942 474492942 469959822 289462464 289462464 699427366 755764269 755764269 675096095 491982985 174273198 140718228 498213656 515300190 515300190 478227012 491991726 491991726 320274958 1040585368 1040585368 541198896 517213873 479350876 479350876 470466646 174663060 174663060 170927232 32945088 32945088 71654536 72263816 72263816 71438464 76422216 76422216 103098648 380595614 920318346 920318346 277573770 202381424 265664082 621450198 621450198 540793704 671222528 671222528 283397832 1042025544 1042025544 673856393 673856393 442413400 782457629 782457629 564927360 599928944 599928944 589176449 589176449 564400561 60353584 588531792 588531792 571769392 164891968 164891968 14729664 14729664 15883776 283319104 283319104 274016898 274016898 298844578 550511200 569451489 745434424 745434424 976417623 976417623 386714682 971718062 971718062 756486828 756486828 485824707 236002960 184037445 540751617 540751617 707614930 707614930 290563644 979002505 979002505 1039303006 1039303006 549652749 574691796 889686571 889686571 967022690 967022690 139060356 402875468 868454546 968933627 968933627 822735628 822735628 879403725 879403725 876948310 893524045 893524045 426990024 426990024 312021044 448796614 1035897007 1035897007 622219036 668520985 819366949 819366949 466373636 818186468 818186468 445458680 445458680 254830582 459842734 459842734 393816056 393816056 248004974 317793894 421576998 421576998 428341350 428341350 356276196 380734484 380734484 77408848 357141896 357141896 74212522 33812496 44173616 60101312 62263920 65334336 296482146 296482146 990489152 990489152 833753482 833753482 834204244 834204244 655424774 655424774 540203401 104140978 594488465 936045592 936045592 346555688 346555688 123732408 153383580 153383580 101853360 101853360 97398120 165913820 165913820 156200024 156200024 143165440 53049936 121756908 135918612 147064492 147064492 123218280 179229996 230287056 230287056 190269764 190269764 159846464 159846464 2431113 45842385 69728520 584757209 584757209 83638816 39985200 39985200 90444204 476717492 476717492 864428359 864428359 714682996 714682996 666630009 797828361 797828361 1029505237 1029505237 742705461 733719404 779642537 951069952 951069952 488375044 1007944226 1007944226 788530752 747648117 679686213 336651436 336651436 244967004 528613608 528613608 382411680 448452492 509085342 509085342 476053902 476053902 445061546 445061546 350545300 350545300 69731592 153597248 228903276 231726436 231726436 165732544 165732544 202325004 202325004 726996305 726996305 210414444 752264595 752264595 473117454 292368782 303107376 824573489 824573489 366604120 910060483 910060483 557356848 557356848 421035473 436026102 436026102 104469644 21127440 56881584 56881584 61026672 130490996 183589032 183589032 677693829 720951816 852223622 852223622 783190622 386592878 386592878 500199770 500199770 423402205 556978977 556978977 308463083 759546003 901886187 901886187 708998172 608822409 711562847 978009096 978009096 912605340 852065490 852065490 266603004 364301764 364301764 314449746 208540770 178835660 187756844 483100232 483100232 479472670 222462344 222462344 9775107 936627017 936627017 279302459 644287051 644287051 437070870 488258104 488258104 709235301 881018344 881018344 511985790 419734676 281938975 762891988 762891988 346468581 376862356 472771854 472771854 452155026 283413058 3966154 5506048 5506048 558366752 558366752 342368768 502072456 502072456 298321122 130757880 353280176 353280176 348281000 31586512 30008160 47547984 58232112 233324940 274904032 1071396183 1071396183 731645363 731645363 129904916 210444296 210444296 136635228 554566488 554566488 204735509 165159609 443362710 646952396 742512431 742512431 402069640 460694146 872415684 905969691 1071644787 1071644787 906520783 906520783 310694943 344568896 667097232 762035397 762035397 955221429 955221429 934145403 906512946 629497390 855239899 855239899 649144443 650453064 650453064 898992731 898992731 877969896 318349315 651691737 651691737 821846402 821846402 573656897 302650386 604508538 604508538 564134241 621417686 621417686 457840403 487497278 487497278 407028874 516328960 516328960 459585752 459585752 347277532 277477056 197363524 145736548 145736548 140181868 228861844 249963696 249963696 190391996 651723289 651723289 440487032 440487032 329061570 1021523214 1021523214 816003403 960305707 960305707 922746939 714944486 335673646 335673646 302020872 269258020 402931908 402931908 293617664 415347128 415347128 295878884 117827640 101136408 469960726 469960726 473922052 504764958 504764958 352969770 537460224 537460224 405754139 520884722 545555026 1056985848 1056985848 394411193 186364060 186364060 143316036 68290336 75435912 75435912 100795808 343880216 343880216 320415126 1007915829 1007915829 515341558 515341558 790884608 1044402230 1044402230 677497402 677497402 830993774 830993774 61929373 370619972 370619972 281728194 531630920 531630920 272375416 302267488 319765554 319765554 331025574 331025574 312813252 599128935 903705057 903705057 1057127835 1057127835 110177088 288652141 608089713 773579806 1065562239 1065562239 756484690 313534612 313534612 139536336 139536336 192340376 851474858 851474858 674586073 674586073 644790632 368425582 336737120 344646402 348717312 488715622 488715622 343465926 316740546 64168818 434025136 460114918 460114918 258479152 534943580 534943580 439357456 439357456 88081312 7344812 2097408 136314884 136315140 136315140 145888068 429267712 429267712 271603490 1002582562 1002582562 595105856 573742897 23391057 66029328 66029328 51972164 194850420 194850420 726372849 843497728 843497728 17090688 541335809 541335809 16777248 59637847 269620515 269620515 731251378 731251378 748753401 748753401 740368653 740368653 719885256 719885256 324727520 830213043 830213043 193208598 890573512 890573512 835139811 604212587 551465612 551465612 848055418 848055418 344255087 344255087 712824608 712824608 598413173 644571904 644571904 247374880 247374880 238549788 92490612 587678048 587678048 581433681 625137394 1073046471 1073046471 301447819 342451000 342451000 526071294 526071294 463492276 274190807 469653441 469653441 895235207 895235207 518858329 715338069 715338069 232821369 122798648 83624544 806095875 806095875 301896065 774541304 774541304 1062917823 1062917823 519246298 915938311 1052651359 1052651359 739408990 980243799 980243799 916243515 916243515 570999409 545290320 496777673 768469101 1015918063 1035077327 1035077327 587270157 587270157 724066693 724066693 590950244 735445808 735445808 561321344 220539232 220539232 557975980 746784921 746784921 734555316 734555316 1012044340 1012044340 295000608 1016363078 1016363078 605286921 544975206 1023874183 1023874183 562036545 562036545 79913984 536912420 693158437 1010927144 1010927144 952205320 484565454 484565454 102360600 139421264 214908108 537949212 537949212 211894788 879061636 879061636 807969030 807969030 543500673 136333697 205346048 407945738 407945738 341149440 403854678 415229954 415229954 43235328 297400608 297400608 344231234 344231234 390399008 390399008 310904048 88605864 92547168 92547168 100406664 100406664 133575680 133575680 110437368 131796736 131796736 61392064 75048648 78225416 78225416 136056324 139330564 206595564 556309024 683476709 822407520 873886656 873886656 122162352 122162352 239354904 239354904 693551724 693551724 566315188 575935488 575935488 587670017 587670017 237098560 237098560 1055013724 1058018447 1058018447 764412194 818728131 818728131 614270018 24222048 72763456 72763456 5581440 39011968 39011968 51294736 64356992 64362736 64362736 64281640 114955992 114955992 105651064 104229264 357565098 496501232 496501232 582889227 720247829 1029984166 1029984166 630828265 630828265 612524059 612524059 526633553 749079202 749079202 944390469 944390469 372335400 379584858 519570298 726289802 726289802 484517670 497911138 497911138 240487522 205520904 340011150 579273316 651304996 726044268 726044268 604178996 558574688 558574688 625427656 625427656 55481568 165969633 768445541 768445541 749731149 695415717 695415717 690891621 710477109 723067413 723067413 793821885 793821885 684884672 637588496 637588496 666522457 666522457 756499780 768627712 768627712 28728032 17600064 9419904 9419904 9518080 12833472 14238848 14238848 5243520 1317888 1708032 35064336 35064336 58788753 722089153 722089153 591270737 750846632 750846632 60097328 236399685 236399685 243394564 243394564 577110192 577110192 559192713 559192713 170070196 170070196 54364544 555573588 1021292320 1021292320 410121116 467702240 467702240 463981494 501746724 808208883 822452259 822452259 671557762 174196864 51576976 51576976 135266820 173279748 173279748 135531156 143180484 143180484 140126916 134217732 152333856 161261152 161261152 24163872 24163872 19737888 20212608 20212608 21810336 21810336 687890752 687890752 275325047 760775904 760775904 476383240 476383240 369371542 335544330 363407304 363407304 338250776 338250776 289786584 126508080 316965314 316965314 118604440 118604440 113410648 501317929 997294527 997294527 675317557 1019368583 1019368583 917210749 600851129 749911501 1009186019 1009186019 492681678 972958135 972958135 812616634 812616634 524911424 45768958 94696064 161533288 279494156 821882714 821882714 793650205 793650205 165403369 455891736 455891736 436576280 403575304 403575304 136055610 358670272 365039850 365039850 340054666 340054666 342171072 342171072 23735456 9049152 14093984 14093984 19925280 21040512 21040512 72145920 72145920 312601628 510744390 510744390 481715146 509349534 509349534 214107524 246432412 246432412 167987544 739173557 739173557 722418741 752828109 752828109 260116681 110403832 110403832 617096844 809603692 809603692 603468092 603468092 595797036 111214688 21022432 30983904 30983904 10819712 44167508 430368724 430368724 315930736 849369543 849369543 443907398 853721538 853721538 685891777 438520197 411514950 165014244 165014244 856079392 856079392 953720631 953720631 474492942 1008480901 1021290189 1021290189 271836993 699427366 755764269 1028466208 1028466208 523449150 523449150 612610888 612610888 972030951 972030951 496276427 1002821861 1002821861 442882450 1040585368 1040585368 517873374 517873374 319160478 454748212 454748212 333429986 465939986 465939986 386141219 386141219 218760399 689275907 689275907 604319745 110605520 773636120 773636120 706401813 539678934 846018518 948181382 948181382 265664082 520636412 524997822 726972530 973543105 973543105 12749935 1042025544 1042025544 673856393 673856393 442413400 782457629 782457629 564927360 599928944 599928944 587794064 568597601 564400561 682639728 682639728 588531792 571769392 140807124 62144545 141591476 141591476 999820355 999820355 928988057 1051027855 1051027855 298844578 550511200 569451489 569451489 584182774 600712419 659663606 1046614431 1046614431 971718062 756486828 991129066 991129066 995312246 995312246 707179535 607310607 241170827 256286662 486183760 884280611 884280611 1039303006 1039303006 757217295 815796256 889686571 889686571 622164759 933630143 933630143 658536485 868454546 868454546 41943120 822735628 822735628 872092088 900735627 999301547 999301547 140845064 140845064 247579520 247579520 240573084 240573084 173429276 460902218 460902218 138446982 138446982 197708950 197708950 251759464 305974204 353806098 353806098 111252860 114553560 114553560 89653400 248004974 317793894 421576998 421576998 428341350 428341350 356276196 380734484 380734484 163762804 356000782 356000782 66815968 54599856 37906896 60101312 62263920 62263920 846337712 846337712 671021339 464968053 833753482 833753482 1027658461 1027658461 655424774 942655384 942655384 587396634 73728 50856240 86582568 188928268 188928268 123732408 153383580 153383580 101853360 101853360 54789848 165913820 165913820 156200024 156200024 143165440 87826536 121756908 135918612 135918612 228098320 228098320 212943956 118497884 198644416 198644416 184887348 52930952 125143992 125143992 75922032 69728520 816718442 816718442 730740085 622466601 370941881 425797164 425797164 376124067 864428359 864428359 714682996 714682996 396100714 849297950 849297950 168120631 496050798 532734568 532734568 675406184 838192201 838192201 488375044 1007944226 1007944226 928112697 1028653735 1028653735 856704943 856704943 845756336 845756336 528613608 170410004 372823452 538980885 538980885 264310856 217187420 799820139 799820139 824011881 824011881 720717815 705258016 40757408 520182790 520182790 253898776 253898776 66594920 66594920 124491024 135589556 224363028 224363028 90407208 253396652 253396652 317460160 882213266 882213266 366604120 125918376 218918656 221373228 221373228 105284632 172117888 172117888 156070144 190331164 266154668 266154668 103408920 235294480 235294480 135334508 677693829 677693829 852223622 852223622 862139061 862139061 719515814 657148070 500954862 533780022 533780022 477252106 477252106 736210950 736210950 708998172 708998172 608822409 573505553 978009096 978009096 912605340 852065490 852065490 778572181 778572181 364301764 316904802 208540770 960258548 960258548 681638214 508220574 508282506 508282506 244195976 472593028 936627017 936627017 453691988 644287051 644287051 470108124 261096060 261096060 709235301 881018344 881018344 506293069 419734676 455080306 496161390 735475302 1062975485 1062975485 580402594 814760832 814760832 805312900 805312900 832048362 832048362 741525344 912532489 912532489 626295099 375242761 145683044 513686220 513686220 737069709 737069709 555580321 463593527 463593527 979899750 979899750 829043833 832566059 832566059 1011423862 1011423862 21570720 596585489 596585489 117489664 637932936 637932936 631836013 463529681 443362710 646952396 742512431 742512431 402069640 460694146 460694146 546308673 562037253 695206513 906520783 906520783 474690702 344568896 344568896 762035397 762035397 955221429 955221429 934145403 308257916 918639126 918639126 914432091 803467503 614539593 46407760 42289248 97790040 291627426 291627426 312146626 312146626 821846402 821846402 629720169 126724113 4672 9572928 143264384 148774596 155747972 172627092 487497278 487497278 407028874 516328960 516328960 457486796 347277532 347277532 277477056 197363524 145736548 145736548 140181868 228861844 249963696 249963696 227278848 291385598 291385598 345708192 345708192 306390714 290794146 285748864 310912314 431294328 431294328 438378806 455155990 455155990 335673646 302020872 192268290 439659446 439659446 293617664 411060250 411060250 126140486 182041344 240907932 240907932 171892500 473922052 504764958 504764958 137933594 537460224 706790442 828185348 828185348 520884722 1056985848 1056985848 585974104 186364060 186364060 143316036 74502984 168810380 168810380 46801048 241001908 287182386 320415126 404027296 404027296 321654066 976540550 976540550 471735513 618185375 677497402 680863576 830993774 830993774 641461025 641461025 665004075 665004075 630194793 831652888 831652888 579994226 571670737 559047408 703235089 968904288 968904288 599128935 903705057 903705057 1057127835 1057127835 110177088 288652141 608089713 773579806 773579806 360041510 360041510 313534612 360882458 483553880 483553880 319894484 192340376 683903328 683903328 246690269 359041070 359041070 84029698 344646402 344646402 356037288 356037288 343465926 316740546 64168818 434025136 493888764 493888764 409867808 409867808 224956808 224956808 230822400 230822400 126084936 386084922 386084922 355530256 402938900 402938900 429267712 729219998 1062802373 1062802373 1002582562 447913024 447913024 409850082 195416500 195416500 186221106 447940446 447940446 646308154 910278729 910278729 214003207 45678640 984671057 984671057 336570409 890244362 890244362 322315058 322315058 748753401 748753401 740368653 740368653 719885256 719885256 393820728 1040509059 1040509059 321263922 890573512 890573512 835139811 604212587 567608578 567608578 848055418 848055418 110845531 707901462 808901379 941953795 941953795 543326740 740608612 740608612 664013688 664013688 739320333 739320333 722247013 722247013 625137394 1073046471 1073046471 301447819 342451000 342451000 313458511 169183065 274190807 836769856 836769856 469653441 895235207 895235207 518858329 715338069 715338069 232821369 21801632 83624544 86773032 86773032 28312416 32647200 32647200 28381792 23333280 22223296 3310016 10486080 27298112 27298112 17115168 17115168 806781479 806781479 1016880194 1016880194 613157961 902653572 1015918063 1015918063 940050890 1044948339 1044948339 724066693 724066693 474030222 371567318 233859720 105908414 220539232 650381480 650381480 746784921 746784921 281052800 407590950 1012044340 1012044340 362468970 1016363078 1016363078 605286921 544975206 1023874183 1023874183 562036545 562036545 553648161 605815973 605815973 1010927144 1010927144 436724108 436724108 413397318 374868438 337103514 338554122 537949212 1041827086 1041827086 879061636 879061636 807969030 807969030 543500673 136333697 205346048 343138568 343138568 341149440 403854678 415229954 415229954 43235328 370181128 370181128 303613458 278921226 390399008 390399008 310904048 88605864 92547168 92547168 82087240 82087240 133575680 133575680 110437368 131796736 131796736 62959680 75048648 78225416 95975776 136056324 139330564 206595564 556309024 683476709 683476709 931533526 931533526 397990915 122162352 239354904 239354904 693551724 693551724 558804993 575935488 575935488 587448833 587448833 237098560 237098560 1055013724 1058018447 1058018447 285519456 285519456 396485554 396485554 323318360 72763456 72763456 84282496 96649832 96649832 63261240 64356992 64362736 64362736 64281640 114955992 114955992 105651064 104229264 357565098 496501232 496501232 582889227 720247829 1029984166 1029984166 822382537 822382537 646996278 802936189 802936189 749079202 749079202 872218088 872218088 638882216 379584858 519570298 726289802 726289802 484517670 497911138 497911138 131623350 205520904 340011150 579273316 651304996 651304996 604178996 604178996 738276670 738276670 625427656 625427656 85011688 165969633 768445541 768445541 749731149 695415717 695415717 690891621 209315724 209315724 206185148 545783964 545783964 52553824 45076736 45076736 25932960 25932960 35676224 46888832 46888832 16303040 14760576 7727488 8672448 9518080 12833472 14238848 14238848 6341248 6341248 2098176 35064336 35064336 58788753 722089153 722089153 591270737 750846632 750846632 60097328 236399685 565936704 565936704 571922961 571922961 46774113 623935881 623935881 121157768 121157768 139975696 210473996 267297568 410121116 410121116 512642120 512642120 463981494 501746724 501746724 195674370 60957312 54665408 54755456 64013040 64013040 135266820 173279748 173279748 135531156 143180484 143180484 144257216 144257216 152333856 160030820 218211372 218211372 163394592 80919560 218179625 218179625 204076492 204076492 636494533 636494533 21544960 37823616 945938916 945938916 973884808 973884808 653307130 657271832 657271832 43305552 125952000 125952000 117809616 654345073 654345073 97518312 663748753 663748753 501317929 997294527 997294527 675317557 1019368583 1019368583 917210749 600851129 749911501 1009186019 1009186019 492681678 972958135 1034227655 1034227655 812616634 580285000 580285000 562561861 446941548 799831603 821882714 821882714 793650205 793650205 807498018 807498018 148559744 5690496 26840128 26840128 10325568 52438608 52438608 48284112 48284112 46679296 21250368 23735456 51255568 51255568 21954208 63456210 273803394 273803394 269404418 525245038 525245038 312601628 510744390 510744390 481715146 481715146 315826956 439988752 439988752 246432412 167987544 739173557 739173557 722418741 752828109 752828109 260116681 307013170 328310818 617096844 809603692 809603692 603468092 603468092 595797036 133432192 356110834 356110834 273875112 284903688 284903688 430368724 430368724 828946300 849369543 849369543 807457004 853721538 853721538 685891777 438520197 411514950 165014244 520967752 856079392 856079392 953720631 953720631 281034362 1008480901 1021290189 1021290189 894592577 622882280 959794487 1028466208 1028466208 523449150 523449150 612610888 612610888 972030951 972030951 817695506 1002821861 1002821861 943915139 943915139 1012533837 1012533837 1048974020 1048974020 454748212 454748212 333429986 465939986 465939986 386141219 386141219 218760399 689275907 689275907 604319745 112743256 773636120 773636120 706401813 539678934 846018518 948181382 948181382 197121504 520636412 524997822 726972530 973543105 973543105 12749935 34768576 68422036 134490250 337820104 337820104 417663816 417663816 183973218 146095008 146095008 50264816 50264816 16111744 682639728 682639728 194282005 140807124 140807124 104073224 141591476 141591476 999820355 999820355 928988057 1051027855 1051027855 414247374 414247374 441870998 441870998 584182774 600712419 659663606 1046614431 1046614431 800794338 8913984 991129066 991129066 995312246 995312246 707179535 607310607 384954068 573645368 573645368 884280611 899678571 899678571 757217295 981581826 1029775791 1029775791 881026286 881026286 933630143 933630143 844346942 773025848 751769837 25552992 604116752 604116752 872092088 900735627 999301547 999301547 966304261 966304261 58786012 171217288 240573084 240573084 173429276 460902218 482083628 482083628 987153505 987153505 680165708 227022609 833144163 833144163 563351878 975575135 975575135 874156994 430143488 178857516 216129708 216129708 168911396 148409856 54679680 54679680 155569848 163762804 303080744 396620154 396620154 109766074 108263720 115497792 115497792 41942528 38992464 846337712 846337712 671021339 899639925 899639925 1018376576 1027658461 1027658461 481838886 942655384 942655384 891339051 891339051 845304336 845304336 347645480 347645480 99690384 99690384 95970504 94406688 94406688 78522376 97332328 97332328 86236416 127962728 127962728 87826536 110416024 110416024 88645224 228098320 228098320 431255402 468779994 468779994 362807658 362807658 257952050 304138246 304382914 304382914 105460696 816718442 816718442 730740085 746785276 801112085 801112085 1012924430 1012924430 447873216 447873216 443683734 221267264 478887518 849297950 849297950 168120631 496050798 532734568 532734568 1005364052 1005364052 838192201 995624930 995624930 984875421 984875421 1028653735 1028653735 856704943 856704943 845756336 845756336 502882366 502882366 1014503357 1014503357 538980885 294191323 111812227 799820139 799820139 824011881 824011881 720717815 705258016 40757408 520182790 520182790 920954971 920954971 377872762 377872762 539710889 539710889 224363028 718069854 810312243 810312243 889451544 889451544 882213266 882213266 1035080559 1035080559 686360037 686360037 942178652 942178652 652525953 403487937 788744861 788744861 773510813 567654016 142886172 249449548 249449548 153848584 566157153 624578545 632671909 730931829 862139061 866741595 881655219 881655219 500954862 533780022 533780022 477252106 477252106 1004908960 1004908960 658568552 658568552 354091048 354091048 285676036 655360 535528544 535528544 113427779 778572181 778572181 316904802 316904802 193696960 960258548 960258548 681638214 508220574 508282506 508282506 377837900 472593028 472593028 343429928 453691988 453691988 470108124 470108124 261096060 261096060 252578184 260682784 260682784 303883196 355128618 455080306 496161390 735475302 1062975485 1062975485 735263417 814760832 814760832 805312900 805312900 832048362 832048362 741525344 912532489 912532489 626295099 948831628 948831628 686706023 874655974 874655974 737069709 555580321 463593527 463593527 979899750 979899750 829043833 832566059 832566059 1011423862 1011423862 163389028 596585489 752067616 794786904 796927576 796927576 819473737 819473737 632427369 632427369 287609449 285526050 18010656 380946770 579905548 649440095 1010166607 1010166607 1004877923 474690702 474690702 100803734 393056520 881678703 995051523 995051523 1021387215 1021387215 953159325 953159325 1019925595 1019925595 1007036456 1007036456 549527961 26528352 97790040 97790040 94537952 121031744 121031744 554458304 629720169 629720169 579873314 850793226 850793226 562167907 699404136 1042187885 1042187885 510936879 338298516 195823168 195823168 108382304 92873832 94961896 98566632 98566632 80352456 80352456 25169952 27277312 74191128 74191128 227278848 251208404 1037642739 1037642739 425732424 425732424 324084402 682209310 682209310 676492399 807538947 807538947 1027665956 1027665956 455155990 356905122 356905122 192268290 439659446 439659446 191939414 304333442 417333650 429938576 452624937 783287133 1073242113 1073242113 1005723651 1005723651 931795132 872936458 872936458 706790442 828185348 828185348 281725198 617590286 617590286 585974104 103070272 93422344 93422344 82861712 168810380 402788886 402788886 340238492 333000376 189190884 775983411 860129684 860129684 976540550 976540550 471735513 618185375 618185375 680863576 680863576 569221252 641461025 641461025 665004075 665004075 630194793 831652888 831652888 579994226 571670737 773654556 773654556 968904288 968904288 432091370 432091370 424179436 436855830 530323846 530323846 502526958 83094486 460719020 989737802 989737802 741912413 741912413 717038165 717038165 483553880 605276197 605276197 920998014 920998014 1001472070 1001472070 95939626 11220288 169902606 169902606 390990164 390990164 195036848 246024820 384172840 384172840 493888764 493888764 409867808 409867808 281164974 435663496 477199814 477199814 347487916 386084922 386084922 355530256 573571993 573571993 514001824 867161034 1062802373 1062802373 693559952 1001296481 1001296481 683940228 195416500 195416500 186221106 447940446 447940446 646308154 910278729 910278729 214003207 45678640 984671057 984671057 940320796 940320796 890244362 991166822 991166822 620766480 620766480 507213714 507213714 244048988 272270094 393820728 1040509059 1040509059 321263922 443888292 443888292 347673258 347673258 872547019 1016502914 1016502914 750829773 818852354 818852354 808901379 941953795 941953795 692097728 740608612 740608612 664013688 664013688 739320333 739320333 722247013 722653728 722653728 67634184 67634184 747802880 1008879989 1008879989 612854651 268763464 346368330 836769856 836769856 828116840 274110731 394465882 394465882 349529328 98633264 105237016 105237016 102237779 873464331 873464331 275174473 779629016 779629016 1048575935 1048575935 507192218 913412679 1000195039 1000195039 699485590 825044259 873269251 873269251 806781479 1016880194 1016880194 613157961 978876628 978876628 748006381 615713130 1044948339 1044948339 495069282 495069282 474030222 371567318 679806752 679806752 164372193 1022177788 1022177788 862394591 789469371 840957111 982201431 982201431 355708646 1065214862 1065214862 995671227 595561889 1049003769 1049003769 1038964255 1038964255 657407289 553648161 605815973 605815973 282665856 410848451 1021603982 1021603982 887958987 874807576 874807576 338554122 508595978 1041827086 1041827086 335944010 580593872 580593872 543427776 543427776 71729152 78642504 78642504 10567176 9452096 1531904 258048 1392640 67317760 388104736 388104736 305345298 85074234 0 305006144 305006144 85665560 59782976 60558080 60558080 25688160 25688160 21471328 19075072 19075072 62959680 62959680 58761536 58761536 95975776 140444300 142007940 211030860 758541608 758541608 549801265 931533526 931533526 743630284 743630284 639157785 610179153 549454017 777008794 777008794 559841393 559841393 541171264 588000912 588000912 558328448 558328448 541538433 206911661 42012528 327952914 396485554 396485554 323318360 66078704 66078704 84282496 96649832 96649832 63261240 55654656 49670544 48622032 10823280 7224640 7224640 27631584 27631584 306246296 853169882 878843403 878843403 343025560 431303526 645417796 822382537 822382537 950753245 950753245 802936189 504926403 139909412 688807470 947787462 947787462 360979181 789983938 789983938 519142113 209905648 209905648 269089858 269089858 185259184 772279936 772279936 248787100 743640084 743640084 406095064 738276670 738276670 91541880 91541880 85011688 62776184 78537928 78537928 72131592 622224224 622224224 614062665 591560833 591560833 610429848 610429848 170916100 68124932 45076736 45076736 25932960 25932960 35676224 46888832 74110344 74110344 79621896 79621896 73427232 73427232 91310248 91310248 85273128 86802944 86802944 6047744 74220168 103550360 103550360 123994944 126650688 126650688 546135472 546135472 21315937 56877680 565936704 565936704 571922961 571922961 46774113 623935881 623935881 220464204 121157768 187236468 210473996 329279234 329279234 221409856 512642120 512642120 453510174 362726660 362726660 324586194 296768098 296768098 277872992 64013040 64013040 51057696 51057696 44622288 162012512 162012512 26090592 144257216 203949324 203949324 160030820 218211372 218211372 163394592 80919560 218179625 218179625 204076492 204076492 636494533 636494533 281641810 51193408 945938916 945938916 973884808 973884808 653307130 657271832 657271832 288181800 353208544 353208544 117809616 654345073 654345073 97518312 663748753 663748753 579610128 579610128 966794817 966794817 377815151 192434928 192434928 142741572 142741572 280161794 614674761 614674761 1067363858 1067363858 1034227655 809277598 789168685 580285000 562561861 673292808 799831603 799831603 394469179 543968644 554486817 807498018 807498018 148559744 136524036 138215876 140590656 140590656 52438608 52438608 48284112 48284112 46679296 49578544 55598608 55598608 63562992 63562992 63456210 273803394 273803394 269404418 525245038 525245038 275548168 457427220 457427220 441001110 323220742 315826956 439988752 439988752 154198552 154198552 117033864 69061888 82600088 86009888 86009888 119557080 307013170 384016904 384016904 311550546 297921074 114115674 0 133432192 133432192 356110834 356110834 273875112 284903688 284903688 15766848 11627776 828946300 828946300 808564497 807457004 807457004 435180032 681060868 963640743 963640743 81982575 520967752 520967752 328418672 328418672 466691590 466691590 462955172 944140845 944140845 894592577 479832616 959794487 959794487 711664806 711664806 543396868 837890618 837890618 609500861 817695506 817695506 939854167 939854167 943915139 943915139 1012533837 1012533837 1048974020 1048974020 441892324 441892324 468357346 468357346 432063456 310513746 113180738 79507272 554434696 554434696 112743256 112743256 68274176 353428488 353428488 306375512 68207112 347747412 347747412 225115960 225115960 577769581 577769581 476328424 458249420 458249420 561053766 844575497 844575497 776116806 822465102 822465102 417663816 409854768 318071552 695864001 697871665 697871665 549798149 575434628 587041045 804307192 804307192 104073224 104073224 13896384 43813440 65275328 65275328 238269944 478287248 478287248 414247374 414247374 403137940 403137940 1005813450 1005813450 341868634 341868634 60105984 840626496 840626496 805515267 615569995 833257953 833257953 296252771 384954068 806725952 806725952 666192131 883238944 899678571 899678571 808824836 981581826 1029775791 1029775791 881026286 881026286 480862331 844346942 844346942 773025848 751769837 25552992 125044312 125044312 533522514 533522514 329351298 880829513 966304261 966304261 981511758 994161858 994161858 707067340 707067340 881911946 881911946 638534208 987153505 987153505 680165708 571061702 833144163 833144163 563351878 975575135 975575135 874156994 430143488 228663828 228663828 182127444 736573801 736573801 662352384 662352384 175294060 175294060 303080744 396620154 561217328 644468169 650624312 650624312 237354080 143527168 38992464 35701248 35701248 9683216 899639925 899639925 1018376576 1018376576 692737458 975225111 975225111 857801102 891339051 891339051 845304336 845304336 347645480 347645480 99690384 99690384 95970504 604872489 604872489 160929320 753023489 753023489 177719784 177719784 718437340 729490145 729490145 708972693 777420893 777420893 580397892 431255402 468779994 468779994 362807658 362807658 257952050 304138246 304382914 496933359 1008716460 1008716460 741739753 741739753 746785276 801112085 801112085 1012924430 1012924430 794758055 794758055 712321941 672990608 623977257 623977257 446580760 569141473 642915122 961640881 961640881 1005364052 1005364052 613525661 995624930 995624930 984875421 984875421 227080221 263141324 263141324 190912400 170537648 483705566 502882366 502882366 1014503357 1014503357 858273000 858273000 815468931 724165981 831038295 880837121 880837121 338262113 186099456 28237152 28237152 82314696 920954971 920954971 377872762 377872762 539710889 539710889 134819612 718069854 810312243 810312243 889451544 889451544 35033088 94373415 1035080559 1035080559 686360037 686360037 942178652 942178652 671795204 671795204 788744861 788744861 773510813 567654016 142886172 249449548 249449548 153848584 51194928 375792650 375792650 336933232 304161618 987962756 987962756 881655219 396887418 396887418 845287862 845287862 860044633 1004908960 1004908960 658568552 658568552 681887919 883923367 883923367 630173195 998665578 998665578 709411989 654364292 224316068 225198220 558585256 558585256 409258636 409258636 202932750 343198602 481620434 481620434 377837900 15913408 270785344 270785344 358053152 358053152 91220200 91220200 29109928 13715354 371517722 416079194 416079194 975053759 975053759 705218558 705218558 654885945 621150408 735263417 735263417 625152612 509710853 915733335 915733335 747091924 308001814 705990704 705990704 687865893 298369391 948831628 948831628 686706023 874655974 874655974 121766310 46211280 27398176 27398176 29397064 105534768 105534768 20611272 119034512 119034512 163389028 163389028 214842520 752067616 794786904 796927576 796927576 819473737 819473737 632427369 632427369 287609449 285526050 18010656 649117777 649117777 673185868 1010166607 1010166607 1004877923 491936088 356759662 453120054 980054418 980054418 995051523 995051523 1021387215 1021387215 953159325 953159325 1019925595 1019925595 1007036456 1007036456 952572513 26528352 26528352 10504992 52548569 52548569 333939002 333939002 536944641 579873314 579873314 850793226 850793226 917070860 917070860 1042187885 1042187885 963531030 607830794 195823168 195823168 188904200 121106056 259122444 259122444 236223716 236223716 94304448 143889420 143889420 74191128 74191128 115355536 251208404 1037642739 1037642739 425732424 425732424 324084402 682209310 682209310 676492399 807538947 807538947 1027665956 1027665956 370500024 356905122 356905122 275054592 275065218 275065218 275065218 512165892 512165892 429938576 452624937 783287133 1073242113 1073242113 1005723651 1005723651 931795132 872936458 872936458 812305448 812305448 293863393 17115168 16820224 252972872 252972872 96297228 70694016 70694016 82861712 101056512 402788886 402788886 340238492 333000376 189190884 775983411 860129684 914688125 914688125 671927301 1037959689 1037959689 834851043 298733500 298733500 569221252 569221252 489252872 489252872 362147434 647540072 647540072 545386594 545386594 496719972 773654556 773654556 504760228 504760228 602539517 602539517 579099549 913582739 913582739 530323846 502526958 83094486 460719020 989737802 989737802 752423581 752423581 717038165 717038165 730275535 1050937695 1050937695 920998014 920998014 1001472070 1001472070 1036868686 1036868686 551804224 405066050 390990164 390990164 508577740 508577740 384172840 384172840 515698268 515698268 208541572 479844864 479844864 435663496 477199814 477199814 430010146 441598086 441598086 429393172 573571993 573571993 514001824 867161034 867161034 499613285 693559952 1001296481 1001296481 683940228 426119314 161501744 154438252 145272844 210026508 822135104 822135104 623280995 676057252 1012882442 1012882442 931750057 940320796 940320796 789316669 991166822 991166822 948240985 948240985 896866674 507213714 244048988 621807136 621807136 757206733 757206733 258389016 228841228 228304972 347673258 347673258 872547019 1016502914 1016502914 750829773 818852354 818852354 733854374 674098437 692097728 692097728 765750116 765750116 719587540 719587540 711199125 711199125 566232145 722653728 722653728 940184583 940184583 747802880 1008879989 1008879989 843346866 602259969 602259969 576869056 828116840 828116840 937784496 937784496 617769976 349529328 98633264 127013496 808534792 808534792 892861227 892861227 541622385 779629016 898858113 1048575935 1048575935 646432067 913412679 1000195039 1000195039 699485590 825044259 873269251 873269251 835120069 624007217 624007217 1006101949 1006101949 978876628 950283017 950283017 840503161 293933166 495069282 766192855 786761000 875336378 875336378 679806752 420948100 1022177788 1022177788 862394591 789469371 840957111 982201431 982201431 848433747 1065214862 1065214862 1015024784 1015024784 1049003769 1049003769 1038964255 1038964255 967216142 967216142 917262690 485092748 134720654 340448394 1021603982 1021603982 887958987 883701128 874807576 102779147 75884616 14889408 538005888 538005888 580593872 809900627 809900627 537267713 182501636 182501636 506592068 506592068 379098588 417932742 417932742 417895234 73714130 388104736 388104736 305345298 277223490 277223490 362025272 362025272 44114256 109642608 131109592 131109592 206388156 206388156 74340912 138783364 138783364 255427140 255427140 209223864 265872632 265872632 147099014 278937798 415761606 758541608 758541608 549801265 592734793 592734793 743630284 743630284 639157785 1040745026 1040745026 777008794 777008794 696406717 696406717 541171264 588000912 802862285 855749346 855749346 566440161 226693277 815403298 815403298 607761291 607761291 338970482 654050905 654050905 369924128 102945736 35909904 660619521 660619521 40372402 901540985 901540985 394800636 394800636 254664044 254664044 306246296 853169882 878843403 878843403 873146608 873146608 439118936 439118936 709034264 950753245 950753245 319098420 192107034 139909412 688807470 947787462 947787462 475406401 865084122 876808242 876808242 541407957 541407957 676735620 676735620 135531652 772279936 772279936 248787100 743640084 743640084 244717637 94202920 102608912 102608912 94259312 5407872 173062553 777316885 777316885 744185285 622224224 622224224 614062665 591560833 591560833 610429848 648615060 648615060 550121756 264242748 264242748 129151736 177828992 747504244 747504244 679242368 95734632 285717441 285717441 286613514 286613514 337700899 561531552 626312489 626312489 606898569 606898569 371492890 839650193 839650193 123994944 562177332 730374597 730374597 620329293 565244640 565244640 244367964 244367964 120876632 665364944 665364944 580497233 654913464 654913464 70437080 187236468 187236468 329279234 329279234 221409856 380929792 453510174 453510174 362726660 362726660 324586194 296768098 296768098 277872992 21156000 30836804 135266820 135266820 47247556 162012512 162012512 26090592 135136616 203949324 203949324 74061192 86626336 86626336 9666624 82498176 82498176 68364416 68364416 123260912 124553096 281641810 391702608 391702608 367914466 367914466 439082662 439082662 378547754 378547754 273772184 288181800 353208544 353208544 110100800 369098754 369098754 105914392 295739754 295739754 579610128 579610128 966794817 966794817 575508574 933385156 933385156 790365489 777085647 647658504 647658504 614674761 1067363858 1067363858 989925447 789168685 789168685 268726030 539640064 673292808 673292808 380110088 380110088 950969826 950969826 480298277 240618052 41651796 136524036 138215876 140590656 140590656 34472576 40896528 40896528 41947920 45762160 49578544 55598608 55598608 63562992 197036068 197036068 142457348 142457348 243379840 365825900 389657772 389657772 307681938 250086876 511487576 511487576 374275358 102798352 102798352 100728960 140659204 140659204 62505520 194893700 194893700 192582692 192582692 119557080 384016904 487659524 487659524 396470488 399796338 399796338 295244546 237373702 112987992 93839016 95738440 95738440 95665496 457369924 457369924 574317315 808564497 808564497 1058007830 1058007830 435180032 681060868 963640743 963640743 592843457 547232820 697283696 697283696 328418672 466691590 466691590 462955172 39978912 76456032 552110342 952945863 952945863 539500841 711664806 711664806 543396868 837890618 837890618 609500861 609500861 198970100 939854167 1056521290 1056521290 776995801 425140656 425140656 447891666 447891666 449321440 456006966 468357346 468357346 432063456 269259312 758876190 758876190 554434696 554434696 124231712 124231712 68274176 353428488 353428488 306375512 437084724 437084724 219420788 225115960 1061721040 1061721040 577769581 476328424 458249420 458249420 561053766 844575497 950076742 995860997 995860997 822465102 463870662 409854768 318071552 695864001 697871665 697871665 549798149 575434628 587041045 804307192 804307192 227590764 148376212 182799172 185689634 350513212 350513212 434675784 434675784 381851092 752477967 752477967 506459588 506459588 1005813450 1005813450 341868634 341868634 236335132 840626496 840626496 805515267 801485674 833257953 833257953 464210405 407246982 806725952 806725952 666192131 656482617 455172925 557162508 808824836 808824836 685003759 563608178 544232065 447280404 447280404 176336358 273776094 622531081 622531081 148514372 257450507 968933607 968933607 662806633 662806633 805593356 844907408 844907408 981511758 1026669164 1026669164 707067340 707067340 881911946 881911946 638534208 638534208 593340318 593340318 571061702 571061702 435291848 14828168 14828168 9437760 94639176 94639176 228663828 242819883 977346711 977346711 736573801 662352384 662352384 175294060 175294060 253769992 253769992 561217328 644468169 650624312 650624312 237354080 143527168 19191808 272969393 662629742 662629742 459674979 578321287 695185985 695185985 692737458 975225111 975225111 536920068 536920068 270144810 340792744 340792744 128020872 128020872 86050720 86050720 176740116 604872489 604872489 179755860 753023489 753023489 177719784 177719784 718437340 729490145 739264524 739264524 777420893 777420893 580397892 237061724 135531012 150014560 306457496 306457496 109052146 75499680 99781391 496933359 1008716460 1008716460 741739753 741739753 139069901 3146496 556142592 556142592 769667446 1046676613 1046676613 712321941 672990608 623977257 623977257 187332642 569141473 642915122 961640881 961640881 654360633 654360633 869917618 869917618 704675856 704675856 704659477 33587349 4243584 197144896 197144896 216220776 483705566 483705566 313429398 481184516 481184516 858273000 858273000 815468931 724165981 831038295 966392429 966392429 555647818 588808992 588808992 571523601 306183954 306183954 964570644 964570644 96886600 96886600 72475816 72475816 135909044 135909044 155863604 352377248 352377248 79465218 87034472 87034472 86511688 86511688 211936512 211936512 134666264 671795204 671795204 17737344 17737344 14245440 84074072 129516624 129516624 179692696 179692696 72296752 375792650 375792650 956631079 964954215 987962756 987962756 1022188844 1022188844 963567011 1019216106 1019216106 860044633 860044633 558006446 539514052 900309929 900309929 883923367 883923367 640844155 1069828770 1069828770 940313623 654364292 224316068 225198220 599673964 641309397 641309397 480498188 480498188 471649806 471649806 215067842 81191576 494555820 494555820 270785344 360780070 360780070 202413390 180072136 180072136 185962725 978119831 1004473409 1004473409 975053759 975053759 705218558 705218558 654885945 893658788 893658788 625152612 625152612 509710853 915733335 915733335 721370828 310927040 679661664 687865893 687865893 159125412 538840204 931040145 931040145 446988652 348158270 639444537 639444537 403252231 403252231 947942070 947942070 592558057 592558057 574789713 330138985 330138985 79859200 101625997 110941277 688435248 780813413 780813413 755573805 331832242 331832242 268822530 581356561 581356561 421841009 839828999 839828999 810006988 810006988 707838292 615987537 491936088 356759662 453120054 980054418 980054418 934884816 934884816 176821332 545552064 718662357 775293585 775293585 815929608 815929608 952572513 952572513 556124576 861235209 861235209 121710856 121710856 333939002 333939002 536944641 571564336 571642616 571642616 328456105 917070860 917070860 575546658 1014907050 1014907050 941116705 941116705 188904200 188904200 226264744 739591073 739591073 236223716 537403117 537403117 143889420 207620160 207620160 18813088 176161820 264504544 264504544 155716768 933235312 933235312 891562107 890579499 12921963 463045804 463045804 382853850 222848630 375068514 375068514 376537736 376537736 275054592 384828378 384828378 275065218 512165892 512165892 350360510 437269194 437269194 226830444 333718346 333718346 204540224 136611876 2149632 335956002 812305448 812305448 533530768 476908808 1071588345 1071588345 864249633 204381552 125545480 70694016 93331804 101056512 202715652 440567952 440567952 476634390 507560094 532321270 858818066 914688125 977618033 977618033 1037959689 1037959689 834851043 402778859 454271241 732766820 732766820 655965652 878785849 909058337 909058337 846957952 633102625 615493740 615493740 163844572 742332282 1030239892 1030239892 602539517 602539517 579099549 913582739 913582739 449351461 121846712 115873657 670826934 670826934 760481339 760481339 752423581 205625228 557780808 730275535 1050937695 1050937695 818599614 820682091 820682091 877670416 1036868686 1036868686 551804224 405066050 325194162 106616472 508577740 508577740 285218414 252763172 515698268 515698268 144371452 479844864 479844864 273388238 369079136 369079136 430010146 441598086 441598086 429393172 429393172 483933232 572242002 572242002 117637680 117637680 33554432 33554448 306319778 426119314 426119314 14945088 145272844 411776070 411776070 822135104 822135104 623280995 676057252 1012882442 1012882442 872699407 545336840 931502682 931502682 606002756 327418645 948240985 948240985 896866674 688920328 688920328 741999045 741999045 770003428 770003428 258389016 228841228 228304972 143389764 143389764 20372256 958703813 958703813 300016098 858553957 858553957 733854374 674098437 940147216 940147216 765750116 765750116 719587540 757186554 819904669 819904669 769936453 670114796 680658498 940184583 940184583 385925178 385925178 843346866 843346866 602259969 602259969 576869056 576869056 389766305 937784496 937784496 617769976 104252672 79481723 127013496 808534792 808534792 892861227 892861227 541622385 548993881 898858113 898858113 879490475 646432067 603111872 603111872 487100894 517866926 517866926 492624414 835120069 835120069 624007217 624007217 1006101949 1006101949 914685047 950283017 950283017 840503161 823334962 552086042 842310543 842310543 875336378 875336378 423029760 420948100 420948100 378481310 378481310 486539310 486539310 534039294 696611016 848433747 848433747 539134545 1015024784 1015024784 325584247 325584247 166279260 166279260 967216142 967216142 917262690 850807047 413538323 1051218001 1051218001 114052240 883701128 883701128 818990851 1009197701 1009197701 945822223 538005888 538005888 547749888 809900627 809900627 537267713 182501636 182501636 506592068 506592068 379098588 417932742 417932742 417895234 73714130 73714130 39115600 85086250 277223490 277223490 362025272 362025272 44114256 109642608 131109592 139384001 600579009 686426893 686426893 590526769 590526769 735593216 735593216 616359949 788883397 788883397 147099014 278937798 415761606 415761606 77035784 490893826 490893826 290744922 378627032 517022430 874045696 1040745026 1040745026 880869914 556046172 696406717 696406717 242616121 70305380 802862285 855749346 855749346 566440161 226693277 815403298 815403298 607761291 607761291 338970482 654050905 654050905 369924128 102945736 35909904 660619521 660619521 40372402 901540985 901540985 394800636 394800636 254664044 254664044 736305441 736305441 950257249 950257249 873146608 982606083 1019741226 1019741226 574096855 361021445 319098420 319098420 117974324 541452417 611961289 611961289 551077569 475406401 865084122 876808242 876808242 541407957 541407957 748683266 748683266 279187855 275126658 240983756 303431896 303431896 452151624 487856568 487856568 102608912 102608912 118147240 118147240 173062553 777316885 777316885 744185285 674049285 202109441 764833361 780425348 780425348 693572621 722019496 722019496 675739772 675739772 658744381 129151736 682103424 747504244 747504244 681054464 95734632 285717441 285717441 286613514 286613514 837839304 837839304 626312489 626312489 606898569 606898569 371492890 839650193 839650193 474749700 757998656 898250283 898250283 620329293 565244640 565244640 244367964 674301728 674301728 665364944 665364944 580497233 707341917 707341917 632630121 717434860 717434860 122376328 94556520 94556520 380929792 380929792 378326106 311854592 311352402 5276288 5276288 5439520 21147808 21156000 46538896 135266820 180021060 180021060 144434432 151964644 153455532 226304068 226304068 501808421 501808421 497652838 497652838 619575531 619575531 135088268 808355964 1055825229 1055825229 915673450 915673450 987236701 987236701 711911094 281405888 439082662 439082662 324288866 159968692 254609548 254609548 239341049 239341049 176840244 715658505 715658505 290488370 295739754 295739754 964580641 964580641 1045138998 1045138998 1009344646 933385156 933385156 790365489 777085647 647658504 647658504 621070377 621070377 755834464 755834464 721819701 688032824 688032824 539640064 539640064 310378578 380110088 1017179664 1017179664 950969826 480298277 240618052 176024208 11349312 17674352 32195920 32195920 34472576 40896528 40896528 41947920 41947920 26399328 100796760 100796760 104880152 197036068 197036068 343816254 423175974 423175974 204001324 407843094 407843094 427649796 442465590 511487576 511487576 403692258 409118272 409118272 186860736 186860736 140659204 7789440 194893700 625001301 625001301 255054524 548594509 738725188 968167757 968167757 940095544 1058012223 1058012223 908930163 1060710663 1060710663 554238758 95738440 95738440 95665496 457369924 457369924 634525984 634525984 921270200 1058007830 1058007830 402736337 307987094 307987094 592843457 592843457 797317124 797317124 697283696 52615776 52615776 52041264 138262285 764276509 764276509 552110342 952945863 952945863 952893686 654837299 837163371 837163371 819278121 819278121 609825812 609825812 247077557 207293084 1056521290 1056521290 776995801 425140656 425140656 838191626 838191626 449321440 456006966 533367522 533367522 369149080 887802758 887802758 758876190 503609133 91310784 124231712 124231712 55787352 305481712 305481712 275588282 437084724 437084724 219420788 219420788 1061721040 1061721040 135524868 257194798 541073536 541073536 536944641 11670336 950076742 995860997 995860997 463870662 463870662 312949360 312949360 848290103 848290103 826878727 1063468179 1063468179 743838641 743838641 508768926 931839666 949747223 966455303 966455303 832173632 350513212 434675784 434675784 374416026 752477967 752477967 506459588 506459588 880895057 880895057 113323032 48027728 601031578 926028603 926028603 801485674 801485674 713090070 713090070 464210405 957733457 957733457 443947126 872101875 872101875 830736483 830736483 557162508 513024993 563608178 563608178 544232065 447280404 447280404 176336358 273776094 622531081 622531081 148514372 257450507 968933607 968933607 662806633 906806247 972082203 972082203 844907408 655437030 1026669164 1026669164 646250728 1009088836 1009088836 667375684 571970262 860367397 860367397 864300214 864300214 615782638 983920711 983920711 784204120 768742445 566135784 156389760 239018142 1032008268 1032008268 977346711 524890415 524890415 248785974 127862680 205679442 519568350 1019150492 1019150492 705279069 680137797 793467793 793934368 793934368 118563384 385826778 662629742 662629742 459674979 578321287 900295458 900295458 617876169 68419777 39846272 400178912 400178912 52244016 423952486 423952486 64489200 136971356 184765852 184765852 177220280 404749062 404749062 179755860 112235220 73575624 78106640 101049032 101049032 142072736 739264524 739264524 219466284 230951488 769618983 1032831662 1032831662 470075406 306457496 306457496 195111792 318022374 318022374 435473382 1016070436 1016070436 194794489 34473364 139201668 139201668 234297692 455156022 769667446 1046676613 1046676613 436941991 331350274 44310946 107420298 994730138 994730138 993852087 349591249 570458152 654360633 683847816 869917618 869917618 858931935 1055560731 1055560731 177835149 177159252 197144896 197144896 216220776 275780288 279056706 405803043 860886503 860886503 763770289 399234294 399234294 168416553 799114755 966392429 966392429 707273738 707273738 653579456 653579456 371694729 845260177 964570644 964570644 310553313 585969105 585969105 72475816 585892394 893985963 893985963 588797104 588797104 389819730 872886317 872886317 142655556 960395015 960395015 226842212 335782246 746606596 746606596 763135693 767442445 767442445 554149376 152559780 155189596 179692696 179692696 72296752 322903840 361769485 956631079 964954215 964954215 669395417 1022188844 1022188844 963567011 1019216106 1019216106 753045767 753045767 986894856 986894856 900309929 900309929 659999625 659999625 640844155 1069828770 1069828770 940313623 386009610 741870600 1051596615 1051596615 768425524 768425524 480498188 480498188 471649806 471649806 371781626 293956440 494555820 494555820 297111072 360780070 360780070 345560620 345560620 243848360 243848360 978119831 1004473409 1004473409 785330528 844838547 844838547 397153137 368970477 893658788 893658788 894961323 894961323 94785536 657110292 673235205 935772382 935772382 307681938 375368586 375368586 356035850 538840204 931040145 949491176 949491176 336595979 639444537 639444537 403252231 403252231 947942070 947942070 592558057 592558057 574789713 330138985 330138985 59355280 65206656 709963808 709963808 780813413 780813413 755573805 526286841 927191664 977052256 977052256 680617473 680617473 839828999 1044528389 1044528389 810006988 615987537 615987537 160222308 185182452 185182452 824590152 824590152 934884816 934884816 575643473 545552064 718662357 718662357 338127634 239075478 407320710 906010939 906010939 896742160 861235209 861235209 121710856 121710856 0 893521944 924054003 924054003 830100451 927639496 927639496 701580364 701580364 894698030 1014907050 1014907050 941116705 941116705 155754148 89879720 226264744 739591073 739591073 89073856 537403117 537403117 135041156 207620160 207620160 218043736 218043736 264504544 264504544 155716768 933235312 933235312 891562107 890579499 12921963 97062064 114820824 114820824 130257666 375068514 375068514 376537736 376537736 209252040 384828378 384828378 272886774 272886774 169869588 169869588 437269194 645535641 1050154017 1050154017 618609135 618609135 136611876 2149632 36966660 716573136 716573136 533530768 476908808 1071588345 1071588345 864249633 204381552 125545480 80005136 93331804 93331804 528861786 528861786 440567952 509109546 509109546 507560094 402394340 965839048 977618033 977618033 403256400 73523592 402778859 402778859 454271241 732766820 732766820 655965652 878785849 909058337 909058337 846957952 633102625 615493740 615493740 1011355062 1011355062 1030239892 1030239892 806433529 602340212 709705329 709705329 708051248 274764670 207743020 573517744 670826934 916361792 916361792 760481339 140258820 203918860 547390992 637161169 637161169 631119465 688297852 688297852 523158551 877670416 877670416 302974873 437022740 437022740 407060674 463561622 463561622 296699440 180750372 286674000 286674000 219297732 219297732 211363404 293151520 374061794 374061794 364170090 364170090 32810794 18738720 151285124 555515945 670615972 670615972 572242002 674668284 674668284 999925812 999925812 853545378 853545378 184813568 171182864 84468012 411776070 411776070 692247624 692247624 613828129 613828129 847155547 865591456 865591456 462371958 931502682 931502682 606002756 329730080 329730080 235340544 572537372 688920328 688920328 741999045 741999045 770003428 770003428 234022956 88491656 88491656 57983696 28689472 28689472 958703813 958703813 300016098 858553957 858553957 298940096 160950276 940147216 940147216 564396963 467674051 346125456 870261101 870261101 819904669 769936453 670114796 670114796 260046972 260046972 782188125 782188125 782188125 581543900 875441360 875441360 875351307 377544155 339923082 659421376 659421376 104252672 104252672 60595712 51415120 35002896 88082112 93849192 93849192 20972800 20972800 341066848 341066848 590513696 590513696 603111872 603111872 415236160 992089363 992089363 302125074 661429364 990243263 990243263 954385617 744641221 1021329826 1021329826 690541832 902665601 902665601 823334962 593130922 1038210602 1038210602 575480372 958204521 958204521 903162603 177767472 135331840 135331840 135292932 138734112 155502756 594149408 594149408 447354790 504677296 674206107 674206107 560734302 644090265 644090265 640905882 640905882 153095942 850807047 850807047 413538323 1051218001 1051218001 217193604 643832798 986975311 986975311 1009197701 1009197701 945822223 782036614 782036614 204273495 463476338 570365760 570365760 983944495 983944495 544567852 664460940 664460940 57297184 28181184 59019776 59019776 354075960 354075960 310691922 380176472 380176472 278267488 278267488 93898344 188816729 722316173 722316173 600579009 686426893 686426893 590526769 590526769 735593216 735593216 616359949 788883397 788883397 68700673 68700673 134792196 135022592 135022592 23118200 40629648 129098664 129098664 78693192 874045696 874045696 880869914 880869914 184364507 546939900 546939900 202254712 202254712 643675192 872717003 872717003 334283260 961039008 961039008 500230831 415787650 415787650 356001730 330934122 319398416 16850960 0 0 0 0 0 0 0 0 0 195178518 231871151 736305441 736305441 950257249 950257249 678954885 982606083 1019741226 1019741226 739259012 865184379 865184379 404031029 285958709 541452417 703790962 960753831 960753831 574712440 574712440 352725592 130427082 382931290 382931290 748683266 984954138 984954138 949934468 949934468 545804814 545804814 686834458 983828823 983828823 698782584 739463992 739463992 118147240 78304584 98221864 134245833 674049285 674049285 137680449 764833361 780425348 780425348 693572621 722019496 722019496 675739772 675739772 658744381 254281020 682103424 683284293 683284293 681054464 109156680 25233504 10521152 10521152 78970976 837839304 837839304 810812641 810812641 100188739 268717058 339511434 339511434 415126279 548720387 757998656 1008407566 1008407566 897527758 556929825 1778977 0 674301728 674301728 608007969 557559561 554194944 707341917 707341917 632630121 717434860 717434860 314741634 314741634 94556520 135970052 135970052 411658068 411658068 311352402 318112338 318244818 328733664 328733664 62963952 62963952 55344160 180021060 180021060 144434432 151964644 153455532 226304068 226304068 501808421 501808421 497652838 497652838 619575531 619575531 135088268 808355964 1055825229 1055825229 915673450 915673450 987236701 987236701 711911094 685538949 685538949 588266096 588266096 395853994 401417396 401417396 1003244851 1003244851 176840244 715658505 715658505 290488370 822233716 822233716 964580641 964580641 1045138998 1045138998 1009344646 686667670 369589281 382687552 790444977 580533289 580533289 621070377 621070377 755834464 755834464 721819701 688032824 688032824 538653996 154885895 269483010 1010668301 1017179664 1017179664 641262086 876202512 876202512 176024208 175840448 175840448 32195920 32195920 25232224 25232224 36792096 61435906 320475938 332084818 332084818 325058994 326581732 326581732 270837580 343816254 423175974 440532998 504719502 504719502 407843094 427649796 442465590 442465590 420776354 403692258 409118272 409118272 186860736 186860736 107646520 65719024 108584840 625001301 625001301 255054524 548594509 738725188 968167757 968167757 940095544 1058012223 1058012223 908930163 1060710663 1060710663 554238758 33496192 33496192 11335008 4187136 21690757 634525984 634525984 921270200 921270200 844444075 389265946 389051170 367744436 367744436 643712701 797317124 797317124 203310597 51436560 140276116 140276116 138262285 764276509 764276509 562631785 966529391 1032717928 1032717928 654837299 837163371 837163371 526785063 311368104 609825812 609825812 247077557 306512185 860841361 860841361 544144782 404920962 335767781 940672969 940672969 622634670 508355974 533367522 533367522 508842271 887802758 887802758 529255661 523910475 594297036 594297036 250413993 704536576 704536576 940244506 940244506 1030798828 1030798828 785951258 388022586 951170538 951170538 546898646 507172656 643835806 1040261151 1040261151 754328541 754328541 1072794124 1072794124 309194130 964994676 964994676 151360919 848290103 848290103 826878727 1063468179 1063468179 743838641 743838641 508768926 931839666 949747223 966455303 966455303 832173632 550831712 257270632 257270632 128019738 383556306 494755795 494755795 436207590 436207590 1043372541 1043372541 639953497 639953497 926028603 955143855 955143855 376940408 895705640 895705640 781974223 957733457 957733457 443947126 872101875 872101875 830736483 830736483 858067538 858067538 629356992 629356992 989986965 989986965 512698458 512698458 387867400 387867400 666648656 1049142130 1049142130 339787914 410116494 410116494 906806247 972082203 1021847775 1021847775 565191051 971556327 971556327 899710059 1009088836 1009088836 661336035 232279293 860367397 860367397 864300214 983043748 983043748 983920711 983920711 784204120 768742445 566135784 156389760 456565297 1032008268 1032008268 1060781828 1060781828 479333700 349915076 472117518 472117518 519568350 1019150492 1019150492 705279069 680137797 793467793 793934368 793934368 396066906 385826778 385826778 389421882 389421882 354526634 900295458 900295458 856035370 934582899 934582899 832056776 832056776 380076147 429524330 429524330 277881712 320920946 330251634 330251634 177220280 607749947 607749947 353937318 814220137 814220137 75964776 75964776 73769000 142072736 239619144 613202164 668421417 800358289 800358289 1032831662 1032831662 470075406 213190726 436211296 436211296 318022374 318022374 435473382 1016070436 1016070436 194794489 34473364 139201668 781976666 781976666 378015325 328088400 857872434 857872434 562832130 562832130 630392289 630392289 994730138 994730138 993852087 349591249 165803712 165803712 683847816 959496530 959496530 858931935 1055560731 1055560731 710036316 710036316 655513397 778207693 791150928 791150928 287359266 405803043 860886503 860886503 763770289 399234294 399234294 232803709 166249956 865227732 976456915 976456915 707273738 653579456 653579456 375984248 845260177 880183552 880183552 310553313 585969105 626140288 626140288 622279209 893985963 893985963 588797104 588797104 389819730 872886317 872886317 142655556 960395015 960395015 226842212 335782246 746606596 746606596 763135693 767442445 767442445 554149376 152559780 155189596 155189596 86331392 84074496 322903840 322903840 974193413 1028852143 1028852143 673646869 520180998 526012984 526012984 1016201328 1016201328 644258360 644258360 986894856 986894856 288379623 30458592 376883586 376883586 587317315 587317315 621843000 621843000 386009610 741870600 1051596615 1051596615 768425524 768425524 766170140 766170140 460702594 460702594 376033146 493026018 493026018 426639372 485638278 485638278 418410888 404824326 345560620 243848360 267539662 405343628 405343628 270870306 785330528 844838547 979243184 979243184 222312655 924640357 924640357 918675540 894961323 552208267 657110292 673235205 935772382 935772382 154518814 375368586 772868028 772868028 453039158 819986563 949491176 949491176 800359808 800359808 58801536 17433776 1900544 1900544 1387008 109428936 109428936 74349832 74349832 24888992 59355280 96410029 709963808 709963808 588952240 576671866 979159692 979159692 927191664 977052256 977052256 680617473 680617473 749540869 1044528389 1044528389 540307992 540307992 275515892 275515892 524853492 524853492 499715272 499715272 217290195 575643473 575643473 518289367 947208836 947208836 338127634 239075478 407320710 407320710 896742160 896742160 38003344 38003344 125262273 125262273 105023680 893521944 924054003 924054003 830100451 927639496 927639496 701580364 701580364 894698030 894698030 487590571 201873320 201873320 59245648 244984992 244984992 88089848 88089848 43925504 46677632 46677632 912384 161255136 161255136 218043736 218043736 176160768 176160768 119545868 664871264 664871264 624112425 624112425 111313657 71426184 149018053 577365977 577365977 772814085 772814085 679880640 209252040 735637850 1031485359 1031485359 691296132 691296132 563025940 597319794 597319794 645535641 1050154017 1050154017 618609135 618609135 604277563 657902382 959467522 959467522 716573136 967738687 1057029989 1057029989 88994222 98788152 98788152 80005136 81008552 81008552 79194176 528861786 528861786 461237296 509109546 509109546 473420702 473420702 965839048 965839048 351173026 376840612 376840612 1003642802 1045566111 1045566111 380094541 257910162 356104264 356104264 394623384 394623384 371718426 608473473 608473473 268829002 1011355062 1011355062 758781741 806433529 806433529 602340212 709705329 709705329 708051248 203943996 207743020 573517744 573517744 916361792 916361792 206330632 206330632 71438472 547390992 637161169 637161169 631119465 688297852 688297852 686247080 673749574 676195461 676195461 610862604 437022740 407060674 463561622 463561622 296699440 180750372 509215816 509215816 219297732 219297732 211363404 293151520 374061794 374061794 342906506 396697768 396697768 293131698 307026832 555515945 670615972 670615972 749975376 749975376 676857477 999925812 999925812 853545378 853545378 403964836 173706480 143891076 233309612 233309612 692247624 692247624 606766336 606766336 604164105 616571585 616571585 870012442 1025280042 1025280042 922916390 396052264 396052264 358621270 358621270 467792116 651391716 651391716 503484696 245595568 245595568 129432176 88491656 315902710 365412974 365412974 171074674 287929762 287929762 198724256 334790196 414978804 414978804 11666176 36208656 36208656 467674051 467674051 346125456 870261101 870261101 62523440 42207520 60817776 62705276 260046972 260046972 782188125 782188125 782188125 581543900 875441360 875441360 875351307 377544155 565140625 659421376 659421376 581455825 60595712 60595712 110832840 858876728 858876728 917066667 917066667 555338481 43783161 341066848 896731024 896731024 68739683 30667488 100147398 415236160 992089363 992089363 305806966 661429364 990243263 990243263 954385617 744641221 1021329826 1021329826 690541832 902665601 902665601 604600775 593130922 1038210602 1038210602 701079584 958204521 958204521 903162603 473762092 286860834 216010010 298585314 458041018 500696814 500696814 445850696 311431418 82837848 560216600 560216600 560734302 644090265 644090265 681680976 681680976 539060244 469801556 573753618 950324549 950324549 571084056 217193604 643832798 986975311 986975311 943328397 943328397 613677779 782036614 782036614 204273495 463476338 570365760 570365760 983944495 983944495 544567852 664460940 664460940 57297184 118403264 122382528 122382528 354075960 354075960 394466896 394466896 380176472 111157594 93898344 93898344 188816729 722316173 722316173 672265037 685487029 685487029 662660873 206062768 786117792 786117792 174401940 174401940 159163008 143469442 432013542 432013542 432013542 135022592 140208940 222771372 222771372 412409574 678498302 911591437 911591437 776683992 776683992 249213837 506582994 546685578 1054558699 1054558699 643675192 872717003 872717003 334283260 961039008 961039008 500230831 667627723 667627723 382465242 663721257 663721257 355928432 115918296 297779234 900382291 900382291 23204256 873071625 873071625 402230300 402230300 144042564 230765544 230765544 137499396 227656272 251732028 251732028 169022041 379744321 379744321 739259012 865184379 865184379 671481986 671481986 424259715 703790962 960753831 960753831 574712440 574712440 340078659 303055156 515292006 515292006 704187961 984954138 984954138 949934468 949934468 545804814 545804814 686834458 983828823 983828823 698782584 739463992 739463992 84820304 128900472 128900472 108641480 108641480 654633480 654633480 581517505 794871937 794871937 121474453 53117696 136524036 136524036 52523288 254281020 254281020 177225984 177225984 207737528 207737528 109156680 282302617 282302617 269083650 269083650 827623072 827623072 810812641 810812641 873483979 873483979 339511434 819757833 819757833 548720387 548720387 1008407566 1008407566 897527758 348535713 556532868 556532868 202335268 608007969 608007969 557559561 554194944 620905505 620905505 84411432 84411432 52572176 314741634 314741634 26012928 135970052 135970052 411658068 411658068 302785746 318112338 318244818 328733664 328733664 101184928 84946976 55344160 50731056 12271200 81653448 81653448 78193456 78193456 87342728 95964896 95964896 68606472 76601960 83919360 83919360 80496192 13945536 33591360 33689616 286943424 286943424 128061816 290011728 290011728 685538949 685538949 588266096 588266096 395853994 401417396 513937758 1066332620 1066332620 629163216 629163216 479591394 479591394 822233716 822233716 537925632 547670337 547670337 607119882 607119882 104089616 104089616 686536600 790444977 0 0 0 0 809376046 809376046 671238145 606358528 606358528 556393761 556393761 494038147 1010668301 1010668301 775685165 641262086 876202512 876202512 178060112 178060112 175840448 26903808 9049152 31065600 32604576 36792096 61435906 320475938 332084818 332084818 325058994 326581732 326581732 296672610 271341730 419912354 440532998 504719502 504719502 323546168 25252 21396228 154841220 156907460 161890176 161890176 63136112 63136112 149049924 149049924 65719024 141479812 141479812 36932288 143790660 255263008 990544202 990544202 538267938 538267938 188559156 188559156 3737652 0 280480034 280480034 297026208 319805928 319805928 126252104 74973392 77730120 668604552 668604552 672556575 672556575 389265946 389051170 562426356 721235925 721235925 643712701 194251277 61748976 61748976 157638836 157638836 89762104 178456372 562631785 562631785 966529391 1032717928 1032717928 366743274 366743274 344720450 268815587 541664385 541879464 892125696 892125696 822985987 860841361 860841361 806855138 806855138 730282101 940672969 940672969 622634670 508355974 383516900 383516900 508842271 508842271 216532428 413638315 523910475 594297036 594297036 250413993 704536576 704536576 940244506 940244506 1030798828 1030798828 785951258 388022586 951170538 951170538 546898646 507172656 643835806 1040261151 1040261151 754328541 754328541 1072794124 1072794124 345381450 964994676 964994676 201333599 364476442 364476442 337634382 105066648 105066648 101637144 793165372 793165372 772281999 772281999 537002052 407714981 550831712 550831712 44302944 346134096 346134096 383556306 494755795 494755795 436207590 436207590 1043372541 1043372541 639953497 639953497 121141254 955143855 955143855 891369694 895705640 895705640 781974223 694560772 694560772 560148897 692109477 692109477 483410018 950064119 950064119 858067538 673523824 731906421 989986965 989986965 512698458 512698458 503417960 503417960 666648656 1049142130 1049142130 394315556 410116494 432013542 432013542 925116308 1021847775 1021847775 565191051 971556327 971556327 899710059 841056302 534285348 534285348 168040596 466104356 466104356 315307218 983043748 983043748 264513213 109580890 17301216 26606144 26606144 38540692 456565297 1003778296 1003778296 1060781828 1060781828 219823175 994642471 994642471 472117518 291710998 442995122 442995122 73926024 117680220 159832164 243626040 396066906 396066906 691144468 691144468 875111691 875111691 170933295 353507306 353507306 856035370 955844514 955844514 848985844 848985844 1001444401 1001444401 942690892 277881712 320920946 330251634 330251634 169610772 607749947 607749947 353937318 814220137 814220137 201824384 23069056 735525364 735525364 537920001 613202164 668421417 800358289 800358289 140971093 170967632 170967632 51397236 436211296 436211296 88607840 88607840 81766024 119093320 128393400 128393400 809436450 809436450 781976666 781976666 676862245 676862245 706089748 706089748 562832130 562832130 630392289 630392289 577505099 349440714 341393344 106479632 610365745 610365745 131076872 959496530 959496530 835393014 835393014 780404581 780404581 710036316 655513397 778207693 791150928 791150928 287359266 287359266 290376694 290376694 288672546 340577094 340577094 268550228 176218114 865227732 976456915 976456915 584987414 934947218 934947218 835764963 835764963 880183552 880183552 115587688 115587688 626140288 626140288 622279209 623253801 623253801 121768337 118963248 118963248 31733776 28061952 28061952 85457448 92675144 92675144 84150568 40144912 40144912 27596640 27596640 27212896 49281792 49281792 101602936 101602936 119022352 203772172 203772172 203499524 974193413 1028852143 1028852143 673646869 520180998 526012984 526012984 1016201328 1016201328 965918864 965918864 511726194 843488214 1035075719 1035075719 1007190371 625612673 761271239 761271239 621843000 621843000 73403536 696260176 723129909 723129909 632953084 733663564 766170140 766170140 460702594 460702594 376033146 493026018 493026018 347673634 485638278 485638278 418410888 404824326 255431396 28970250 452798719 545333579 933350137 933350137 1055465542 1055465542 979243184 979243184 222312655 924640357 924640357 918675540 677675430 552208267 633790693 633790693 493110520 493110520 749337002 749337002 772868028 772868028 457103292 819986563 819986563 764592578 800359808 800359808 58801536 45565376 117860296 117860296 66448368 109428936 109428936 74349832 74349832 27395744 27395744 96410029 96410029 588952240 616815232 616815232 979159692 979159692 824230564 113449611 78387760 216469888 216469888 679870900 734267637 734267637 540307992 841733251 841733251 275515892 524853492 524853492 499715272 544338076 544338076 533039934 533039934 993053462 993053462 947208836 1045522161 1045522161 477891536 523690002 878829872 878829872 872624128 872624128 125262273 125262273 327846954 629535419 629535419 316303154 316303154 338633184 608273640 608273640 496325165 761624751 761624751 476789674 962524961 962524961 181819900 251276576 251276576 693379929 693379929 46240864 621707421 621707421 194642020 194642020 161255136 164644848 164644848 176160768 790938653 790938653 728778752 743571481 743571481 628273313 628273313 621015081 608264872 608264872 577365977 772814085 772814085 679880640 549569448 735637850 1031485359 1031485359 691296132 691296132 563025940 597319794 597319794 444472022 440866184 440866184 376810550 604277563 604277563 657902382 959467522 959467522 491657267 967738687 1057029989 1057029989 439299942 395779768 177388364 146976856 81008552 84681892 145039444 145039444 76605972 461237296 461237296 418855878 605420425 605420425 868223428 868223428 499648778 499648778 376840612 1003642802 1045566111 1045566111 979893928 979893928 403921294 356104264 394623384 394623384 437404190 467428690 575680698 575680698 559553199 454559286 454559286 290458752 168036372 168036372 2379008 20480000 20480000 426307736 509727926 509727926 153624960 651775544 651775544 566618337 206330632 71438472 281700420 420443268 420443268 366993963 366993963 686247080 686247080 673749574 676195461 676195461 610862604 272180994 381755610 381755610 256509574 25651872 17267264 509215816 509215816 188878886 188878886 283459048 286994026 286994026 224608904 342906506 401464594 401464594 354683178 354683178 307026832 92647856 261670524 749975376 749975376 676857477 290342886 290342886 281548514 403964836 403964836 173706480 143891076 41929168 85595688 661193961 661193961 606766336 606766336 604164105 616571585 616571585 870012442 1025280042 1025280042 922916390 396052264 531169364 531169364 358621270 467792116 532885758 532885758 503484696 245595568 245595568 129432176 46615702 315902710 365412974 365412974 440897520 440897520 397502744 198724256 334790196 414978804 414978804 277420338 412879588 412879588 14944704 14944704 520127204 520127204 533793376 533793376 256164108 202435516 237259264 237259264 110565912 127191672 127191672 117330488 599834865 599834865 583192785 583192785 22541088 565140625 658495137 658495137 581455825 94089472 540860808 828118400 858876728 858876728 917066667 917066667 603149584 334809315 812010034 896731024 896731024 576271104 564702816 542888848 658123208 658123208 73487384 330961216 330961216 347285306 347285306 296821602 668369448 668369448 666368889 585717612 585717612 571655478 571655478 426980262 525348926 701079584 701079584 410871270 399580698 473762092 1047089810 1047089810 506672226 676545033 676545033 500696814 936638190 936638190 373342922 444536614 676909904 676909904 768418294 915769187 915769187 753697302 681680976 706481685 706481685 573753618 950324549 950324549 135790916 145888260 235033300 235033300 178603024 740445519 740445519 612114904 612114904 618400827 1037830650 1037830650 971461698 227633293 968153183 968153183 403230102 75827688 831104114 831104114 118403264 122382528 122382528 329155616 329155616 394466896 925553979 925553979 909367339 395747864 656733907 656733907 439799451 628201492 672265037 685487029 685487029 995845794 995845794 786117792 786117792 658248041 760952437 760952437 213724097 432013542 432013542 432013542 82903434 140208940 222771372 222771372 960867834 960867834 911591437 911591437 776683992 776683992 249213837 506582994 546685578 1054558699 1054558699 570364771 362094155 1071911958 1071911958 949014324 949014324 570960624 667627723 667627723 382465242 663721257 663721257 355928432 115918296 326467712 900382291 900382291 23204256 873071625 873071625 402230300 402230300 144042564 81189400 556624809 596655763 845359513 845359513 819012546 819012546 218103904 218103904 526396308 526396308 433136358 671481986 671481986 424259715 460082228 460082228 580958248 663694049 663694049 574828689 502547412 515292006 868985338 868985338 698296541 1031784878 1031784878 335930897 1049545344 1054480095 1054480095 1053053021 716793121 532228951 293714338 293714338 335448720 335448720 332785232 108641480 108641480 654633480 654633480 581517505 880457702 1011552689 1011552689 962704117 962704117 578719209 983877235 983877235 404259620 995394532 995394532 901158458 901158458 300052112 334725776 334725776 269083650 585621968 621467681 621467681 281303169 30461058 873483979 873483979 1016597063 1016597063 953420396 953420396 345005900 478281930 1052893407 1052893407 331289232 556532868 556532868 608794244 626126633 626126633 91663008 588895025 594797008 594797008 632046697 632046697 629670696 95930368 17201184 26012928 26012928 31644928 31644928 55107776 55107776 35527840 108672664 108672664 101184928 554790913 554790913 50731056 656115616 660677049 660685113 660685113 656458041 123062672 573731072 811194657 811194657 342282410 342282410 564414563 564414563 135824716 887727228 986177885 986177885 798323930 942274000 942274000 978884932 978884932 956789446 549599424 549599424 554444988 772615197 772615197 513937758 1066332620 1066332620 629163216 776053173 776053173 1003521758 1003521758 845381672 706287112 597745769 940646771 940646771 739250253 411370144 411370144 686536600 686536600 951992619 951992619 219858528 555540000 958439174 958439174 489037571 19060996 556295936 556393761 556393761 494038147 202775052 506536734 506536734 175317576 174655744 174655744 178060112 178060112 173721248 173721248 152097872 56247424 56247424 52443056 52443056 37947168 56697616 61539648 296289648 311312688 311312688 387914776 387914776 286335522 101861946 17218176 17218176 4744740 167815168 167815168 134576144 54847952 54847952 29569088 63136112 63136112 149049924 149049924 15993792 141479812 547360805 547360805 186254774 869565073 990544202 990544202 565797510 565797510 188559156 570429029 570429029 662179160 662179160 615254492 297026208 319805928 319805928 126252104 109641728 114239245 668604552 668604552 776865063 776865063 19058976 10171968 562426356 721235925 721235925 612041460 612041460 61748976 61748976 157638836 157638836 25919744 174391572 174391572 67248640 78011936 541144929 541144929 366743274 366743274 344720450 288624032 541664385 967428142 967428142 892125696 822985987 215098201 239465748 806855138 806855138 730282101 428150803 62949508 411310954 484652030 484652030 436541742 368062898 358618088 202498572 669201908 669201908 54526128 114592872 114592872 104571088 104571088 452215062 735964178 735964178 416316032 416316032 184807476 184807476 127892826 168420410 172556700 398527560 398527560 395913310 395913310 414191304 414191304 345381450 345381450 780355076 780355076 201333599 364476442 364476442 337634382 105066648 257427048 257427048 793165372 793165372 772281999 772281999 433063108 433063108 433663680 433663680 432803830 346134096 346134096 104649490 128465216 994392444 994392444 487141877 616159520 616159520 314993437 560668626 923345979 923345979 891369694 891369694 807864514 807864514 882090181 882090181 694560772 560148897 692109477 692109477 483410018 950064119 950064119 516047106 673523824 731906421 731906421 319424528 286137378 318816306 503417960 503417960 236233752 520970782 520970782 394315556 394315556 503365662 592360883 923141548 923141548 835828459 832432257 872464395 872464395 848388106 999838821 999838821 1004160599 1004160599 466104356 466104356 315307218 941170700 941170700 873989643 215483991 42018496 1050112 1050112 359466472 359466472 1003778296 1003778296 1069412223 1069412223 1035220742 1035220742 994642471 516798314 516798314 701102582 701102582 379871983 609013904 609013904 615735716 615735716 370745633 691144468 691144468 875111691 875111691 170933295 551073868 684190725 684190725 955844514 955844514 848985844 978602432 1001444401 1001444401 942690892 431278950 423287358 504757262 504757262 162712098 506206488 506206488 455549578 524818968 524818968 713659820 713659820 735525364 735525364 722748065 722748065 90089848 217130672 714167700 714167700 581607940 8456768 4194432 412880432 412880432 59310304 78124197 769790445 769790445 232855521 128393400 809436450 1013182227 1013182227 613290364 676862245 676862245 706089748 706089748 149952192 149952192 67108888 577505099 577505099 349440714 341393344 133381424 610365745 610365745 13317312 125333560 125333560 704285872 725932005 780404581 780404581 235536968 244979292 244979292 216701284 216701284 246150492 246150492 218893356 218893356 609782444 609782444 540057633 597901440 602141169 602141169 619184397 754979379 754979379 934947218 934947218 835764963 835764963 627742538 27631712 115587688 115587688 56515432 55174776 33821184 35002896 39265680 45977888 45977888 95693864 98904896 98904896 87301288 87301288 125829232 125829232 85983272 59507216 81308176 110649536 110649536 27212896 49281792 49281792 101602936 101602936 119022352 203772172 203772172 492184196 492184196 528810328 528810328 421865766 74524350 429086448 429086448 645957800 646107225 965918864 1003016034 1003016034 843488214 1035075719 1035075719 1007190371 625612673 761271239 761271239 234881052 75530332 67244040 696260176 723129909 734537216 734537216 197402624 38611188 42568720 42568720 11658048 34443088 34443088 285814816 347673634 347673634 224613614 116127192 255431396 255431396 90316416 452798719 545333579 933350137 933350137 1055465542 1055465542 775236381 649342745 420440876 683959390 683959390 677675430 677675430 73944442 331663602 331663602 493110520 493110520 749337002 749337002 570854657 457103292 457103292 433558760 417705600 513986910 513986910 430064432 45565376 45565376 117860296 117860296 66448368 61802056 61802056 31724096 31724096 27395744 27395744 16019648 29095776 541094240 616815232 616815232 201777128 824230564 824230564 381488630 1013776854 1013776854 216469888 679870900 734267637 734267637 308573338 841733251 841733251 107621828 180660246 180660246 436712016 544338076 544338076 533039934 533039934 993053462 993053462 707875624 1045522161 1045522161 477891536 523690002 878829872 878829872 872624128 872624128 86607152 69481088 327846954 327846954 75461944 316303154 316303154 338633184 338633184 57022244 135674372 761624751 761624751 476789674 962524961 962524961 181819900 251276576 251276576 693379929 693379929 46240864 621707421 621707421 194642020 194642020 152155744 164644848 164644848 71951496 790938653 790938653 728778752 743571481 743571481 628273313 628273313 621015081 608264872 772355474 772355474 640688136 640688136 549569448 631252328 631252328 119723281 108738456 248410624 248410624 152973892 26029152 444472022 444472022 440866184 440866184 376810550 487408404 487408404 436391958 177210102 337301548 387060774 387060774 441328588 441328588 439299942 395779768 177388364 146976856 83565408 476216630 476216630 425967354 298004706 391910310 466151688 466151688 605420425 605420425 837245352 837245352 745011597 745011597 86216142 409022610 771691204 783664397 979893928 979893928 459826972 459826972 214002986 214002986 437404190 576187275 615287740 1059394471 1070731903 1070731903 1066665019 891494915 842931987 680202584 756936237 836512920 836512920 426307736 509727926 1061691405 1061691405 874602220 874602220 970002523 970002523 690208268 690208268 798549598 798549598 775676607 542372481 492340824 492340824 344487468 274191674 506551556 506551556 272180994 381755610 500469760 500469760 25651872 75545252 381776928 436940924 436940924 188878886 283459048 286994026 286994026 224608904 197387282 401464594 401464594 354683178 354683178 292950664 124276512 539256584 539256584 600844984 600844984 580689524 580689524 216924856 232128600 232128600 55055888 67158024 89389280 137530164 661193961 661193961 513751904 513751904 605165190 892041163 892041163 358852395 471450630 889202182 889202182 604823684 841853453 841853453 245900334 673265820 742078221 742078221 170067481 198444048 198444048 165416676 314799760 314799760 281679042 340595086 440897520 440897520 397502744 370765352 370765352 333974386 178467700 277420338 412879588 412879588 17076130 184640844 520127204 520127204 533793376 533793376 256164108 202435516 237259264 341651082 561523697 561523697 281417594 551165891 599834865 931732794 931732794 583192785 557623649 549925185 658495137 658495137 33480672 94089472 540860808 828118400 828118400 294126690 294126690 603149584 603149584 334809315 812010034 812010034 581960384 581960384 583396928 583396928 658123208 658123208 73487384 330961216 330961216 347285306 347285306 296821602 668369448 668369448 666368889 490169680 466549776 571655478 571655478 426980262 525348926 525348926 410871270 410871270 399580698 253420563 1047089810 1047089810 506672226 676545033 676545033 495977504 936638190 936638190 373342922 444536614 676909904 676909904 768418294 915769187 915769187 753697302 515115976 706481685 911996315 911996315 237808908 811385247 984880656 984880656 1045446743 1045988879 1045988879 740445519 740445519 612114904 612114904 618400827 1037830650 1037830650 971461698 227633293 968153183 968153183 403230102 72722156 831104114 831104114 367002090 281877482 93443520 329155616 338677882 338677882 925553979 925553979 909367339 395747864 656733907 656733907 530061152 530061152 911349041 911349041 961283357 995845794 995845794 677979525 677979525 658248041 760952437 760952437 548158504 213724097 80290688 80290688 102067720 102067720 0 201326600 960867834 960867834 790890813 790890813 671927432 671927432 186929484 301632252 495736234 495736234 315436242 315174074 370158265 1071911958 1071911958 949014324 949014324 856838464 856838464 161497684 315220434 324125808 324125808 62779248 41943120 326467712 326467712 15038434 8860928 13356224 15414720 15414720 4865472 24721258 65775187 556624809 596655763 845359513 845359513 819012546 819012546 818082123 253915371 930216276 930216276 734356041 597869419 314823194 621704745 621704745 567236416 580958248 663694049 860854292 860854292 799215547 502547412 868985338 868985338 698296541 1031784878 1031784878 757472304 1049545344 1054480095 1054480095 1053053021 716793121 532228951 825796902 825796902 335448720 335448720 775946597 835881846 835881846 74713992 316959435 1069555320 1069555320 1011552689 1011552689 962704117 962704117 794066077 983877235 983877235 495485260 995394532 995394532 901158458 901158458 300052112 334725776 350749876 350749876 733949364 733949364 621467681 406984324 944898690 944898690 827067555 1016597063 1016597063 953420396 953420396 598770404 598770404 1052893407 1052893407 541427116 694231461 694231461 608794244 626126633 626126633 599648976 588895025 594797008 594797008 632046697 632046697 629670696 95930368 79065672 78977088 78977088 11944448 9555520 918528 918528 658432 527360 527360 17564704 554790913 813818544 835115235 871610755 871610755 860881587 660685113 656458041 664918832 664918832 811194657 811194657 342282410 342282410 564414563 564414563 678970573 887727228 986177885 986177885 798323930 942274000 942274000 978884932 978884932 956789446 562038888 616562889 616562889 772615197 772615197 536028254 811681680 812770179 812770179 1031996314 1031996314 1003521758 1003521758 845381672 706287112 699762748 940646771 940646771 739250253 411370144 411370144 359212458 347676364 1034323985 1034323985 522635634 989909046 989909046 958439174 757226508 171367188 171367188 58320816 864159184 864159184 579705344 873728523 954407951 954407951 168902043 149161600 149161600 144183104 173721248 173721248 152097872 56247424 80467064 80938720 80938720 292034618 292034618 268834818 296289648 396871466 396871466 387914776 387914776 532851938 532851938 478818814 406882984 406882984 167815168 167815168 134576144 3720960 29569088 29569088 20971680 33380576 33380576 18802496 3686400 3686400 547360805 547360805 186254774 869565073 869565073 957400092 957400092 670338917 696567909 696567909 570429029 662179160 662179160 615254492 276749952 38529024 126394768 126394768 361114698 792779584 792779584 727112373 861732402 1063758133 1063758133 1015290775 860198422 860198422 177552704 612041460 841094333 841094333 269969920 10712160 69363816 69363816 20167424 86276552 86276552 78011936 78011936 70350890 272967810 272967810 288624032 288624032 335808522 967428142 967428142 539306947 540876960 962795907 962795907 685052229 685052229 940972032 940972032 819276483 563490978 484652030 484652030 436541742 368062898 1046985297 1046985297 805575074 852772470 852772470 630878949 156360913 719430224 833433243 833433243 921311036 1025383993 1025383993 730020944 184807476 236268276 398557614 398557614 172556700 180366838 180366838 395913310 395913310 366288064 236393729 775761693 775761693 832803092 832803092 114753696 559826465 559826465 538703361 1001513847 1001513847 257427048 768737468 768737468 676467333 223228388 1061008108 1061008108 845201811 842856628 432803830 368676504 302392170 104649490 219047425 994392444 994392444 487141877 616159520 616159520 731204315 731204315 923345979 923345979 414032811 390991245 869577838 869577838 882090181 882090181 675752152 476090566 914497934 914497934 906170436 276840528 336184664 336184664 875654478 956179157 956179157 937448088 405160998 268773378 268773378 194062550 669574288 780198780 780198780 269112084 347213846 503365662 996158658 996158658 923141548 835828459 832432257 872464395 872464395 848388106 999838821 999838821 1004160599 1004160599 302008048 144092910 464788612 941170700 941170700 873989643 215483991 103694184 88679592 50607352 371462522 371462522 647896665 647896665 1069412223 1069412223 1035220742 1035220742 600660202 516798314 516798314 715791764 867995991 867995991 609013904 609013904 1017196690 1017196690 1057157128 1057157128 268476426 145416960 360944322 360944322 551073868 684190725 684190725 674475149 164273601 42002416 978602432 978602432 347097132 431278950 431278950 423287358 504757262 504757262 253629212 506206488 506206488 455549578 524818968 524818968 713659820 713659820 225076309 672798213 722748065 722748065 785198129 785198129 714167700 714167700 581607940 135553664 172015764 412880432 412880432 59310304 78124197 769790445 769790445 232855521 72437223 792650925 1013182227 1013182227 337156882 393350170 690957326 804665245 804665245 784668002 784668002 125637329 383524290 383524290 364397368 364397368 133381424 642914897 642914897 13317312 125333560 681307461 681307461 691407072 717263800 738251661 738251661 665516409 665516409 741688672 741688672 246150492 246150492 218893356 218893356 609782444 609782444 824254705 824254705 602141169 602141169 619184397 754979379 754979379 665396601 665396601 370006632 328939122 72451450 27631712 66240784 66240784 607719784 670246905 670246905 648159241 626525865 90777473 82652360 95693864 98904896 98904896 87301288 87301288 125829232 125829232 85983272 59507216 81308176 110649536 110649536 9512000 1053184 1555976 101399152 101399152 75969544 151138318 304101546 492184196 492184196 987828947 987828947 1003838706 1003838706 759881346 429086448 503616208 503616208 613672675 1003016034 1003016034 411835657 237947200 33689616 110224696 558606264 639828433 639828433 701572964 701572964 67244040 68289024 68289024 734537216 734537216 697354945 697354945 689672004 492889242 492889242 269484546 426682682 426682682 275629344 287694632 287694632 411640902 423315452 423315452 255589436 143630808 11161152 219668764 219668764 201417276 141693828 141693828 152389686 420440876 420440876 281977856 585519255 967710818 967710818 451105879 623823310 952015204 952015204 388564132 388564132 755314338 755314338 433558760 433558760 408499136 408499136 174481744 174481744 48083920 41177104 15153600 19323168 105889048 105889048 47432738 355295498 355295498 296586530 269298690 337722639 939732999 939732999 1010843790 1010843790 424382949 682354220 682354220 828842374 1013776854 1013776854 1032333865 1032333865 363072836 489980404 489980404 68674088 1165320 278922568 336069642 372098314 372098314 346690890 346690890 330959674 521221456 521221456 353974342 426865478 426865478 476763534 476763534 314086108 52676768 52676768 39905472 111615560 111615560 69481088 69481088 52241808 52241808 35178000 37748880 37748880 56048304 57022244 135674372 136773636 154403076 154403076 203369768 203369768 63766904 63766904 70108272 113320152 113320152 42383552 38034768 38034768 57418016 57418016 24532480 96132320 96132320 71951496 398764410 398764410 459622976 459622976 323092694 303174162 307491474 370208958 453034038 897647016 897647016 790794337 790794337 67351249 631252328 631252328 928629118 928629118 1024228527 1024228527 904926865 904926865 541573880 0 134821048 155244712 172263576 172263576 218417196 218417196 197483064 197483064 97668848 97668848 43506496 103328256 103328256 100172928 126248616 126248616 83565408 539103489 585003337 633429616 633429616 1053932357 1053932357 495978162 696262713 696262713 695728504 695728504 745011597 917154288 917154288 90616987 291578370 291578370 285212706 271655712 459826972 459826972 443708994 214002986 177124820 910698179 910698179 1059394471 1070731903 1070731903 1066665019 891494915 842931987 680202584 756936237 836512920 890209354 890209354 742918184 1061691405 1061691405 1052844404 874602220 970002523 970002523 690208268 690208268 798549598 798549598 775676607 542372481 492340824 492340824 999692919 1007979947 1007979947 336952928 1012543651 1012543651 925526376 925526376 709841097 785674289 785674289 738717888 738717888 472126016 473381646 473381646 88872116 256116924 256116924 228541584 130401816 25479264 173517756 173517756 719622580 719622580 539256584 623124832 623124832 610401001 597826448 597826448 592582369 232128600 50349744 67158024 89389280 137530164 211685702 397286778 572002304 572134929 605165190 892041163 892041163 358852395 471450630 889202182 889202182 696779877 841853453 841853453 173878932 775968512 775968512 742078221 1063272556 1063272556 658277484 632960140 632960140 558338052 281679042 274350272 274350272 273752706 77938826 370765352 370765352 333974386 28698258 26068770 270869442 270869442 17076130 184640844 184640844 490072420 505793516 505793516 211091612 75362184 75362184 341651082 561523697 561523697 281417594 551165891 551165891 931732794 931732794 557623649 557623649 549925185 359138064 359138064 128474472 132536328 537620864 537620864 34750593 47896272 47896272 38818880 9166592 9086016 7001472 5263360 581960384 581960384 583396928 583396928 73148928 122988833 625245497 625245497 985274199 999891720 999891720 118766270 329400700 734655762 734655762 643892826 643892826 1008853263 1008853263 1020801319 1020801319 228877507 284764098 741049644 741049644 12632256 79843850 880592516 880592516 469873280 336657408 470708362 470708362 169654792 169654792 67160592 313836576 313836576 312617226 312617226 278397760 411929482 411929482 380074454 911996315 911996315 484927618 811385247 984880656 984880656 1045446743 1045988879 1045988879 406852254 576786572 576786572 134490768 134490768 88871208 88871208 85983528 17456264 709664808 709664808 551838816 551838816 76123344 367002090 367002090 281877482 93443520 28103776 338677882 338677882 84297480 397716578 397716578 647516792 647516792 630715545 584506065 773033092 911349041 911349041 961283357 961283357 550511940 677979525 677979525 195303204 195303204 817255802 817255802 420957939 320727216 856738446 856738446 552663490 586554321 586554321 862817708 862817708 790890813 790890813 195249644 1006747674 1006747674 957637918 957637918 741386817 699975525 108392013 370158265 370158265 744031826 744031826 727992727 856838464 856838464 65570018 320873138 320873138 307146032 43514448 10885440 296186080 296186080 268602530 7084160 8898560 15414720 15414720 24879360 24879360 22730400 24340000 99878896 396714444 492957046 492957046 818082123 818082123 253915371 930216276 930216276 734356041 645714825 994233910 994233910 800196528 919721482 919721482 918280001 918280001 860854292 799215547 620879913 639578182 639578182 661352357 748424781 748424781 757472304 757472304 634747809 169064488 236114460 773999390 807528732 825796902 825796902 336291960 136479457 775946597 835881846 835881846 74713992 316959435 1069555320 1069555320 654849408 654849408 731210633 732293493 794066077 794066077 544112800 495485260 159649586 310512684 310512684 347668616 347668616 345321418 350749876 350749876 733949364 733949364 498670499 406984324 944898690 944898690 687736551 434171296 458878230 493896218 493896218 598770404 598770404 346030443 191500664 541427116 694231461 694231461 153100417 606987537 606987537 599648976 573855792 573855792 218665480 83472072 83472072 99877712 99877712 79065672 78977088 78977088 11944448 17857312 66919232 66919232 39997664 102309784 102309784 130563008 286353426 813818544 835115235 871610755 871610755 860881587 333521729 383493458 664918832 664918832 106738400 312022296 312022296 278970792 204744836 222824105 678970573 740648397 977361531 977361531 692188684 178955280 144314016 197246109 708846740 708846740 562038888 616562889 616562889 680003173 680003173 536028254 946999950 970498085 970498085 1031996314 1031996314 941547015 490004271 604057956 604057956 857793590 857793590 974687513 974687513 994903193 994903193 383549133 166004788 1034323985 1034323985 522635634 989909046 989909046 780820484 757226508 171367188 649602968 649602968 864159184 864159184 579705344 873728523 954407951 954407951 168902043 91027088 91027088 35651856 35651856 44069280 63082800 63082800 80467064 80938720 80938720 292034618 292034618 268834818 8436322 396871466 396871466 320480288 301781042 532851938 532851938 478818814 406882984 406882984 153395860 101237080 101237080 59380848 59380848 65270256 121757920 121757920 121250120 238602120 238602120 209749836 115401684 549952592 722479443 722479443 303931074 957400092 957400092 726156800 696567909 1052123042 1052123042 888268127 423596831 367529008 367527144 365050144 365050144 126394768 361114698 792779584 792779584 727112373 861732402 1063758133 1063758133 1015290775 860198422 860198422 109598976 109598976 841094333 841094333 672650068 161167584 165537744 165537744 139566116 86276552 184280832 184280832 147771088 160399584 160399584 285941352 605040962 623756909 623756909 564234784 739559949 739559949 805364750 962795907 962795907 685052229 685052229 940972032 940972032 819276483 563490978 94446176 70255368 81912616 311648317 1046985297 1046985297 805575074 852772470 852772470 630878949 247744404 719430224 833433243 833433243 921311036 1025383993 1025383993 730020944 378585690 391823890 398557614 398557614 143919112 121692596 123782264 148389984 148389984 118489240 236393729 775761693 775761693 832803092 832803092 330431566 559826465 559826465 538703361 1001513847 1001513847 984011125 984011125 757088309 954206445 954206445 1061008108 1061008108 845201811 842856628 368676504 368676504 124177272 331861904 361133456 759390317 759390317 352617891 333834880 333834880 731204315 731204315 526790986 503537928 503537928 390991245 869577838 869577838 645177862 675752152 675752152 476090566 914497934 914497934 906170436 610670985 849666370 849666370 875654478 956179157 956179157 937448088 845864178 379610170 379610170 340371528 669574288 780198780 780198780 366610160 210773664 316224220 996158658 996158658 900939520 900939520 610068459 596218256 596218256 476898741 346294602 369888282 1050299573 1050299573 845127846 949641063 949641063 827991837 616636617 931860755 931860755 581184721 575159408 575159408 371462522 371462522 647896665 704778248 704778248 729314077 729314077 473061926 500089546 500089546 218526112 715791764 867995991 867995991 397485226 525546174 1017196690 1017196690 1057157128 1057157128 758731617 790860385 790860385 738548517 997632943 997632943 805122517 805122517 693108741 923939404 923939404 793020606 839207012 839207012 278071616 278071616 234954780 253629212 253629212 154671416 252778936 252778936 172040340 105744952 587031968 769898329 769898329 693722797 683548485 682621121 785198129 785198129 168842628 378821210 378821210 370389338 497199406 497199406 320883872 320883872 316186200 316186200 62002032 55579504 55575216 17957008 553715904 553715904 292168737 363252296 690957326 804665245 804665245 784668002 784668002 463025888 383524290 383524290 364397368 364397368 357345952 642914897 642914897 49907664 62807344 681307461 681307461 680433429 717263800 738251661 738251661 665516409 665516409 741688672 741688672 521187282 107858384 607915785 901622105 901622105 717548942 824254705 824254705 946024839 946024839 707470732 505487646 639116128 665396601 665396601 555618624 86378498 855510360 870189273 870189273 632479833 616900809 670246905 670246905 648159241 626525865 850816178 850816178 332299506 348181944 348181944 26296928 26296928 25740384 25740384 25740384 101236800 101236800 46481488 38132752 9512000 46834372 46834372 772399705 772399705 663744569 211615240 304101546 388038935 436470558 987828947 987828947 1003838706 1003838706 759881346 203116683 564580124 1025225583 1025225583 942672018 942672018 436865088 111465758 33554448 63562640 63562640 639828433 639828433 701572964 701572964 54575280 56244004 56244004 56747280 537182720 697354945 697354945 689672004 492889242 492889242 269484546 426682682 426682682 275629344 287694632 287694632 411640902 423315452 423315452 255589436 450332330 450332330 263576526 582353771 582353771 68472654 663234679 663234679 648300914 732687688 839045139 839045139 967710818 967710818 451105879 623823310 952015204 952015204 777444644 388564132 923156148 923156148 190781499 515393734 515393734 480283852 480283852 403546256 100746112 15153600 15153600 19323168 105889048 105889048 47432738 355295498 355295498 296586530 269298690 337722639 939732999 939732999 1010843790 1010843790 473089465 682354220 682354220 828842374 943268393 943268393 1032333865 1032333865 946988969 1015670513 1015670513 559439968 559439968 480897986 404293696 372098314 579352284 713557077 1034664824 1034664824 749859844 749859844 417808964 426865478 426865478 679204932 679204932 618799177 541389073 542164417 550277760 550277760 111615560 55578768 55578768 51661352 51661352 35178000 37748880 37748880 24509312 17176608 2174752 85298432 87680808 87680808 87680808 84997672 2362920 709632 46353408 47185104 47185104 42383552 38034768 38034768 57418016 73014600 89937032 118017384 260215540 260215540 750863945 750863945 615843864 615843864 770839089 770839089 752300233 781202081 781202081 897647016 897647016 790794337 790794337 574984276 555819297 555819297 928629118 928629118 1024228527 1024228527 904926865 904926865 541573880 317261058 317261058 268551648 100689940 51755024 138490192 138490192 197483064 197483064 117441204 97668848 80340168 162821708 164698368 164698368 150515784 150515784 74110344 539103489 585003337 633429616 633429616 1053932357 1053932357 495978162 696262713 696262713 695728504 1051494814 1051494814 917154288 917154288 1065938197 1065938197 296743243 342314482 342314482 472582710 472582710 443708994 141490448 181144788 910698179 910698179 744957236 957757807 1000468275 1000468275 825303843 825303843 305843898 305843898 180473602 890209354 890209354 742918184 742918184 1052844404 1052844404 774939154 671194053 441866975 537171912 537171912 127997072 181052904 181052904 172700820 245944720 274597109 999692919 1007979947 1007979947 336952928 1012543651 1012543651 925526376 925526376 709841097 785674289 785674289 738717888 738717888 472126016 473381646 473381646 421221292 421221292 256116924 228541584 130401816 25479264 173517756 173517756 719622580 719622580 610283301 623124832 623124832 610401001 597826448 739246605 754988749 754988749 714325029 599951589 559196192 232007942 232007942 567879393 572002304 572134929 572134929 416371345 693796900 693796900 203839853 614821197 696779877 696779877 823049871 823049871 740368653 775968512 775968512 580523549 1063272556 1063272556 658277484 632960140 632960140 558338052 479482056 479482056 84332352 84332352 13421760 107638504 107638504 62173010 182523984 419831220 419831220 411514950 296881766 279520578 354944940 354944940 226043366 141076368 52437520 52437520 36929808 36929808 50331680 85198208 85198208 23612040 277082178 877924993 877924993 889188897 936019408 936019408 636039553 636039553 128474472 132536328 537620864 889205641 889205641 356306410 368363304 659096920 659096920 823706211 823706211 321012387 303302784 633947513 633947513 614501782 980059950 1012532640 1012532640 625245497 985274199 999891720 1015235051 1015235051 575809257 734655762 734655762 643892826 643892826 1008853263 1008853263 1020801319 1020801319 228877507 231505196 741049644 876095969 876095969 1018234120 1018234120 880592516 671273481 671273481 234904196 274550522 286177846 621326580 785758813 986564340 986564340 297206618 297206618 132647898 240104964 240104964 380074454 380074454 484927618 484927618 275252610 275252610 509100558 509100558 72504448 406852254 616900097 616900097 738201245 897321962 897321962 385362103 596140073 596140073 159909421 789531672 789531672 551838816 581822568 868788490 868788490 19697792 675232 26139328 26139328 128323376 345139273 933615467 933615467 816611915 658097689 658097689 630715545 1054742338 1054742338 934976256 934976256 520377006 520377006 502402022 502011788 239210652 71700756 128982802 817255802 817255802 420957939 333856160 856738446 856738446 578192587 586554321 796462289 904727102 904727102 794644175 233072113 1051086197 1051086197 1006747674 1006715146 973304068 741386817 699975525 108392013 293661808 293661808 44114256 319348904 395871832 395871832 385518306 65570018 320873138 320873138 307146032 43830864 60281392 296186080 296186080 268602530 25430016 21314976 23765312 23765312 27421152 30222656 30222656 24340000 99878896 121376568 121376568 51067656 103744608 103744608 55508024 678488365 678488365 435932348 645714825 994233910 994233910 800196528 919721482 919721482 918280001 918280001 612540576 620879913 620879913 483694342 589825600 661352357 748424781 748424781 672438041 672438041 620812297 494928174 236114460 773999390 807528732 807528732 389284616 389284616 389114480 389114480 781752088 781752088 681759045 681759045 819275420 819275420 751573066 751573066 445329032 445329032 206120076 76377818 76377818 417073416 417073416 212867074 212867074 347668616 347668616 382870208 382870208 101230224 72475272 563643496 563643496 684329102 684329102 674238281 674238281 540282181 458878230 458878230 405745110 268599491 557846138 672930493 777297776 777297776 105289276 56889344 39150208 144708448 144708448 254932244 254932244 218665480 218665480 96833024 79591016 99877712 99877712 39994264 37884048 10157824 11895104 17857312 66919232 66919232 39997664 102309784 112394696 130563008 756132725 852965408 852965408 848433747 466277622 621457608 891000377 891000377 682957968 720581589 762489040 762489040 408692456 408692456 438569830 438569830 134217748 529899664 977361531 977361531 808939544 713418667 354130027 768453292 768453292 708846740 440931394 474030222 474030222 830741319 830741319 499006275 946999950 970498085 970498085 924255382 941547015 948659311 948659311 817099552 830472291 857793590 857793590 974687513 974687513 994903193 994903193 580776128 580776128 52005202 297660258 454905702 454905702 780820484 780820484 539067444 629282153 649602968 759248468 759248468 597763796 597763796 412104864 412104864 89272290 133938412 177098388 177098388 142069840 140252560 150149312 150149312 63082800 344080618 344080618 116862864 133705168 292498704 292498704 348905474 348905474 225938622 306103052 323145906 323145906 448339732 448339732 968752515 968752515 305932165 549620235 1055147407 1055147407 865349220 865349220 444839950 1025734717 1025734717 767557753 767557753 709920268 115401684 549952592 722479443 722479443 303931074 449331348 726156800 726156800 675284016 1052123042 1052123042 888268127 423596831 367529008 367527144 365050144 365050144 3404544 52483645 674809645 674809645 275420345 888589148 888589148 1010880690 1010880690 302266006 302266006 559457457 928514037 928514037 672650068 672650068 161167584 165537744 165537744 139566116 5535392 184280832 184280832 147771088 160399584 445276800 904594048 904594048 623756909 623756909 564234784 739559949 739559949 805364750 805364750 339028228 1008428358 1008428358 1018672426 1018672426 313656840 313656840 304286162 304286162 383795510 499196142 524292176 524292176 100684292 235025948 235025948 161636368 247744404 247744404 220529588 220529588 0 16384 49152 314960520 378585690 391823890 391823890 214996594 143919112 508052990 508052990 488863130 519609920 519609920 520407612 520407612 334818150 276919512 380141594 480407624 480407624 210943116 378688534 378688534 264673509 984011125 984011125 757088309 954206445 954206445 480448615 164104832 422450560 422450560 321580506 321580506 124177272 331861904 361133456 361133456 290424048 290424048 333834880 333834880 369025002 369025002 272534198 503537928 503537928 385484248 385484248 382853154 215456182 486938670 486938670 297875660 593526006 858277089 927374417 927374417 849666370 849666370 354706633 313504808 824326408 845864178 845864178 379610170 395177082 395177082 341857522 130096184 366610160 366610160 187307102 391252608 590746936 590746936 900939520 900939520 610068459 596218256 596218256 476898741 346294602 369888282 1050299573 1050299573 845127846 949641063 949641063 827991837 616636617 931860755 931860755 581184721 575159408 575159408 256255320 358430794 378282338 786827492 786827492 748226056 748226056 473061926 500089546 500089546 166887978 1019683236 1019683236 900077931 705964166 705964166 447509178 447509178 490769876 490769876 758731617 790860385 790860385 738548517 997632943 997632943 805122517 805122517 693108741 923939404 923939404 793020606 839207012 839207012 278071616 278071616 101835288 85190520 79427400 588129821 757089652 757089652 172040340 723243676 742630164 769898329 769898329 693722797 683548485 682621121 550902465 168842628 168842628 378821210 378821210 370389338 497199406 497199406 320883872 320883872 316186200 994043448 994043448 216111156 31812095 875010323 875010323 318645057 318645057 363252296 363252296 100213412 156313576 156313576 463025888 463025888 363382122 349476474 291835016 357345952 357345952 53118944 53118944 49907664 62807344 62807344 57424560 51143184 51143184 109143252 263006348 263006348 241730592 349733905 919651035 919651035 787341964 787341964 901622105 901622105 870588549 791195499 791195499 946024839 946546199 974730631 974730631 779190460 779190460 555618624 555618624 125388128 855510360 870189273 870189273 632479833 616900809 569047849 538575361 120496297 575459000 850816178 850816178 332299506 348181944 348181944 85273672 85273672 119014960 119014960 107556136 107556136 101236800 38132752 38132752 160820937 760656001 760656001 772399705 772399705 663744569 211615240 118764456 118764456 409147968 418720710 418720710 403639242 474930318 474930318 513728094 564580124 1032129600 1032129600 1024009263 777012490 670092084 175423869 33554448 231801600 241706740 241706740 219165376 219165376 122700580 54575280 54575280 17359024 17326080 164670464 164670464 15858368 27077568 27077568 114170608 114170608 409412742 409412742 246250372 305034162 305034162 226154412 226154412 53674320 531714278 531714278 477792504 507346828 582353771 582353771 490831938 663234679 663234679 648300914 732687688 839045139 848695616 848695616 799478813 647049516 344479914 344479914 777444644 777444644 363371639 923156148 923156148 234414969 656747609 656747609 774728724 774728724 713322056 100746112 16464096 23382336 23382336 15976768 51118080 51118080 37260064 12141888 17825792 17826336 20201504 20201504 503317530 503317530 300292578 473089465 676962448 706266645 706266645 645285213 899692217 899692217 566347978 946988969 1015670513 1015670513 559439968 559439968 809667812 889241643 901009739 901009739 809402921 1034664824 1034664824 749859844 749859844 559433728 559433728 559205025 679204932 679204932 618799177 541389073 542164417 550277760 550277760 85983528 85983528 52956456 52960368 67800160 68082696 68082696 34011136 34042960 41912260 206635916 206635916 206742404 208925580 208925580 139110152 2362920 709632 48584024 69464136 95333864 233709404 233709404 83285728 166068260 166068260 89937032 118017384 260215540 260215540 750863945 750863945 615843864 615843864 770839089 770839089 752300233 781202081 781202081 701506049 777065068 777065068 574984276 574984276 555819297 555819297 536947953 998263392 998263392 460582602 492872362 492872362 441504344 441504344 317261058 268551648 307587552 352264744 352264744 263633604 263633604 188764952 117441204 64538352 80340168 162821708 164698368 164698368 150515784 150515784 105563606 480383310 483537418 1049424010 1049424010 227815338 437071892 979515732 979515732 820320727 583023051 1051494814 1051494814 940460382 652706200 1065938197 1065938197 296743243 342314482 342314482 472582710 472582710 136717638 141490448 336456714 336456714 169995712 610011826 610011826 474760607 376839066 238076700 644009984 816992663 816992663 844618245 844618245 444639619 254948382 254948382 409569200 774939154 774939154 831103527 1025094658 1025094658 811766860 898285952 898285952 765119552 765119552 837103242 837103242 527230913 527230913 320688102 320688102 623643320 623643320 610535817 25092000 559873408 559873408 223124496 232532672 232532672 282504212 282504212 355923142 421221292 421221292 104123160 290972754 290972754 299513742 481106920 481106920 153616672 610283301 610283301 226582660 617736060 617736060 587777073 739246605 754988749 754988749 768887136 768887136 559196192 668083288 668083288 567879393 567879393 531186448 531186448 442558335 693796900 693796900 262509098 268493602 271969026 271969026 822540173 822540173 740368653 740368653 998477935 1059636543 1059636543 750933490 259522760 251135964 344672870 344672870 479482056 479482056 117622608 117622608 52551984 460498228 460498228 62173010 182523984 419831220 419831220 411514950 296881766 279520578 354944940 354944940 226043366 203997196 322175537 322175537 350930888 357175321 836012898 836012898 348557378 822892616 822892616 877924993 877924993 889188897 936019408 936019408 636039553 636039553 633264993 633264993 539733961 889205641 889205641 356306410 368363304 659096920 659096920 823706211 823706211 489081668 489081668 633947513 633947513 614501782 980059950 1012532640 1012532640 589422897 803511586 803511586 1015235051 1015235051 575809257 575809257 558509089 558509089 399630774 963209352 1018650721 1018650721 901779817 901779817 620888170 469809380 950440647 950440647 1018234120 1018234120 905728548 671273481 671273481 234904196 274550522 286177846 621326580 785758813 986564340 986564340 161482622 161482622 487346164 487346164 308497448 308497448 110700120 355330688 355330688 229158736 29885664 34734608 72504448 72504448 114339840 616900097 616900097 738201245 897321962 897321962 385362103 596140073 596140073 159909421 789531672 789531672 508058643 581822568 868788490 868788490 398561474 398561474 66053440 59757562 319030538 345139273 933615467 933615467 816611915 658097689 658097689 605146016 1054742338 1054742338 934976256 934976256 520377006 520377006 502402022 502011788 239210652 71700756 619279944 619279944 200174753 333856160 333856160 106459986 578192587 578192587 282278438 796462289 904727102 904727102 943633178 943633178 1051086197 1051086197 1006715146 1006715146 973304068 811903123 811903123 341848318 341848318 293661808 44114256 319348904 395871832 395871832 586466873 586466873 123393720 634933329 634933329 399592818 133013880 71051080 633169257 633169257 275040738 805622921 805622921 360774112 360774112 31360936 31360936 31065576 36701184 37226256 40633600 40633600 67947712 71772376 71772376 107118672 107118672 81973704 76978456 22911032 18022944 25940864 33167328 657987275 879879664 879879664 1000343062 1000343062 672137554 483694342 589825600 589825600 83379769 652552462 652552462 467799414 494928174 494928174 78095630 143107188 143107188 145074196 389284616 389284616 389114480 994611423 994611423 805488100 681759045 681759045 655833150 655833150 751573066 751573066 552098205 552098205 797399700 797399700 710052456 417073416 417073416 357388864 406896908 406896908 222347436 382870208 382870208 334573516 334573516 666179844 666179844 684329102 684329102 674238281 674238281 672998919 1070868623 1070868623 864552051 995930789 995930789 672930493 777297776 777297776 73809184 73809184 272695474 272695474 319889960 319889960 286971426 528095186 528095186 479909454 156971146 468867480 468867480 405033288 225870104 225870104 155472144 25596928 25596928 6238656 8526600 74631944 112394696 125958872 756132725 852965408 852965408 848433747 466277622 621457608 891000377 891000377 682957968 720581589 762489040 762489040 408692456 408692456 445695656 445695656 203456540 864379037 864379037 808939544 808939544 713418667 354130027 793428124 793428124 1066402441 1066402441 474030222 707362753 830741319 830741319 503117960 895292299 1033055948 1033055948 691267016 805545484 948659311 948659311 872617288 830472291 830472291 671272965 671272965 545382465 664334944 664334944 917774554 1019529423 52005202 297660258 454905702 454905702 320605746 596553808 731863141 731863141 629282153 759248468 759248468 597763796 597763796 412104864 412104864 89272290 133938412 177098388 177098388 142069840 140252560 150149312 150149312 375546772 375546772 344080618 119173964 417208948 417208948 292498704 348905474 348905474 225938622 306103052 323145906 359799864 448339732 448339732 968752515 968752515 416371976 549620235 1055147407 1055147407 865349220 865349220 570655376 1025734717 1025734717 906058022 767557753 709920268 182234112 567010496 723643697 723643697 575422612 671927301 671927301 704758628 704758628 558107829 546749572 361245825 367004898 367004898 286835554 90618818 91307016 99349992 99349992 99205120 268582914 268582914 888589148 888589148 1010880690 1010880690 829793871 1016687523 1016687523 928514037 928514037 428475399 324329984 56656512 597054113 597054113 727407680 727407680 599828676 170472832 139925829 552674241 680868740 904594048 904594048 539232513 1027344174 1027344174 691326730 821330669 821330669 420470816 624971919 1008428358 1008428358 1018672426 1018672426 313656840 313656840 304286162 304286162 383795510 499196142 524292176 524292176 70377600 168441672 168441672 161636368 110962008 111151376 354527522 354527522 6719520 444300928 457363638 457363638 172279956 333107188 340411724 340411724 447751946 508052990 508052990 488863130 519609920 519609920 520407612 520407612 512497928 512497928 380141594 480407624 480407624 404000814 249151092 249151092 495063468 495063468 228638982 750780612 939798825 939798825 480448615 376443150 422450560 545424531 545424531 338512298 540581755 540581755 270664322 270664322 39197328 36638352 322513498 617493553 625350825 826809354 826809354 272534198 102779214 385484248 953430016 953430016 584524423 169079316 640815372 640815372 593526006 858277089 927374417 927374417 806222992 806222992 105285008 887401472 887401472 269391248 269391248 365105330 395177082 395177082 341857522 110113290 185635840 375919244 375919244 1002539878 1002539878 722110772 722110772 885969553 885969553 892871370 892871370 540184513 886576017 886576017 844324505 798518870 60343920 28760928 28760928 42603304 84021288 84021288 70267168 283156832 283156832 91497848 91497848 358430794 404158807 825942002 825942002 1056714650 1056714650 38419265 173149360 173149360 325458354 1019683236 1019683236 900077931 705964166 705964166 668798859 668798859 829886727 829886727 877098763 877098763 802161405 802161405 689493957 674386737 614388073 573496593 573496593 539310897 538029344 213802496 213802496 236268060 236268060 101835288 101835288 85190520 79427400 588129821 757089652 757089652 168186741 779913740 790977706 790977706 713139504 598527911 1006929754 1006929754 572836113 977829895 977829895 809760071 923347015 923347015 871449778 792062781 294674273 294674273 138189478 994043448 994043448 866365750 480902269 875010323 875010323 809622544 809622544 455050017 487712730 487712730 283681856 156313576 350781600 363382122 363382122 319093808 319093808 100469040 115934680 115934680 97054560 34027536 13681344 13681344 11889024 12109408 54282400 109143252 263006348 263006348 159418660 349733905 919651035 919651035 787341964 787341964 570519062 870588549 870588549 464257555 226705684 226705684 946546199 974730631 974730631 779190460 779190460 652266160 622201921 125388128 125388128 103293568 127504544 127504544 7869472 24253344 24253344 58511280 58511280 66078592 331614168 331614168 132386018 402007642 402007642 296030336 275522442 272699344 272699344 286022482 399289954 399289954 293692120 160820937 760656001 760656001 747895001 747895001 660858501 1026245474 1026245474 947704748 947704748 418720710 418720710 403639242 474930318 474930318 513728094 513728094 1032129600 1032129600 1024009263 830219331 677431458 810290307 810290307 279333289 899135276 899135276 578336244 424969856 228640020 228640020 224444844 213991664 186549380 186549380 164670464 15858368 27077568 27077568 114170608 114170608 409412742 409412742 246250372 305034162 305034162 226154412 226154412 142263588 531714278 531714278 477792504 507346828 507346828 106334106 490831938 661815549 661815549 473155398 622343936 622343936 848695616 848695616 799478813 647049516 285354858 285354858 215300680 555813184 791152445 791152445 660611512 728608064 728608064 656747609 774728724 774728724 713322056 72353728 16464096 23382336 23382336 18047008 51118080 51118080 282331842 291569250 291569250 293716098 293716098 955063367 955063367 694687970 1051490815 1051490815 676962448 706266645 706266645 645285213 583407825 653302676 653302676 519480025 632636332 744009705 744009705 482432195 809667812 889241643 901009739 901009739 809402921 883796778 883796778 25765152 17376288 703241080 703241080 651637661 189303945 78828360 116236040 116236040 107028888 235936004 235936004 115936920 207140080 227427852 227427852 211003940 211003940 223146984 223146984 221529664 221529664 206635916 622685485 622685485 251584476 676964649 676964649 222298284 222298284 247558376 722214365 722214365 251923380 544740833 544740833 166068260 166068260 230303860 234040476 234040476 207693404 129303508 162695368 202824204 202824204 169085376 184811624 207880864 207880864 186647492 184549984 463607182 463607182 310456788 357365068 813802648 813802648 869270254 998263392 998263392 519119838 519119838 492872362 449904404 441504344 280561554 225092414 307587552 352264744 352264744 362806890 362806890 235042626 153454624 64538352 46646064 437428816 477247694 477247694 452319856 95098720 105563606 541218177 843488707 1049424010 1049424010 296225222 437071892 979515732 979515732 820320727 583023051 1008797993 1066695471 1066695471 855918616 172477604 172477604 131006040 244931702 353335474 353335474 352816394 280123200 288010674 336456714 336456714 56284848 610011826 610011826 474760607 376839066 238076700 644009984 816992663 816992663 844618245 850837389 850837389 776809946 1013837199 1013837199 479132167 951934047 951934047 1025094658 1025094658 811766860 898285952 898285952 765119552 765119552 837103242 837103242 527230913 527230913 549350818 549350818 675761937 675761937 610535817 46450896 559873408 764822256 898263003 898263003 716933928 290303432 342171722 342171722 118810168 118810168 329500426 396498840 396498840 399706054 481106920 481106920 216925260 228592680 228592680 226582660 617736060 835207616 835207616 467800566 1017391968 1017391968 768887136 768887136 98166504 668083288 748631200 768871149 768871149 694062677 531186448 442558335 629822505 629822505 284676570 268493602 271969026 402687744 828960386 828960386 223685292 289416581 998477935 1059636543 1059636543 808981525 801637629 801637629 1041965232 1041965232 172053176 172053176 117622608 117622608 52551984 460498228 460498228 278041138 52740180 41870868 40542480 403217664 403217664 270723334 481432008 481432008 408588418 302748940 322175537 322175537 350930888 357175321 951061860 951061860 348557378 822892616 822892616 860768497 860768497 597972696 918425074 918425074 608754128 608754128 633264993 633264993 608439136 608439136 87220992 87220992 78312972 155210092 202561380 357799138 357799138 489081668 489081668 110626392 476702116 476702116 274278028 220733570 780170680 935795811 935795811 803511586 725865852 570846421 854402192 854402192 592395441 750888682 750888682 738801794 1018650721 1018650721 901779817 901779817 620888170 882907174 950440647 950440647 765068773 905728548 905728548 337320810 337320810 383723714 383723714 118001376 118001376 248161004 248161004 160483198 161482622 449958454 487346164 487346164 308497448 318727410 517811934 517811934 229158736 229158736 29885664 101847568 101847568 67109384 302065298 302065298 375534464 375534464 291639730 306918546 326905322 326905322 319102848 128000376 92335408 92315968 27894792 94675104 102576954 272797090 398561474 398561474 66053440 59757562 319030538 345651266 345651266 379060346 379060346 278187264 605146016 605146016 551886024 551886024 135340548 135340548 658851645 658851645 560843388 781576797 781576797 573435153 619279944 835929014 835929014 279973015 303297042 827473550 827473550 885462592 885462592 613816957 525405185 321494994 943633178 943633178 487509390 487509390 409334828 534874233 946203015 998244783 998244783 461490511 687892769 774363196 774363196 545581107 839025943 882249770 882249770 586466873 123393720 634933329 634933329 399592818 133013880 71051080 633169257 633169257 344459312 805622921 805622921 360774112 360774112 53792224 49301097 894858017 894858017 609282625 319870179 865240785 865240785 349303448 609747689 629702785 629702785 383305434 859740665 859740665 812238402 892003520 896016714 896016714 879879664 879879664 1000343062 1000343062 672137554 787208 37028392 95445200 95445200 80847680 80847680 65122976 65122976 58861696 107063464 107063464 58802384 21192784 117228480 117228480 247501083 994611423 994611423 805488100 339214976 703472067 703472067 638102930 638102930 361284714 682311616 753356844 797399700 797399700 710052456 626582537 626582537 357388864 406896908 421707940 741508044 885136738 885136738 407639174 334573516 666179844 666179844 827195624 827195624 118886531 826042184 826042184 1070868623 1070868623 864552051 995930789 995930789 514669030 514669030 272250132 107445648 84613520 272695474 272695474 542386691 542386691 494175906 528095186 528095186 492707502 156971146 468867480 571768906 807667971 807667971 574622080 309198992 52708688 52708688 41513056 60964224 60964224 11799360 7216512 170992740 684331808 708837525 708837525 448284476 448284476 757655452 757655452 700651249 483439621 361604739 633956885 719009493 729551853 743768227 743768227 718279749 864379037 864379037 734312935 683924688 683924688 623627337 793428124 793428124 1066402441 1066402441 382866260 707362753 707362753 503117960 503117960 425196198 1033055948 1033055948 691267016 846862482 848256346 872617288 872617288 876345099 876345099 563555557 563555557 545382465 545382465 381175376 917774554 1019529423 355549517 965861991 965861991 773914983 647939356 868029701 868029701 1017253468 1017253468 138412164 373514463 373514463 746536561 746536561 217329962 911175032 1011361252 1011361252 100211248 34319376 34319376 63462560 193631888 375546772 375546772 183710170 119173964 417208948 417208948 448693382 448693382 235953480 320129586 320129586 173558950 359799864 359799864 102767722 166323684 215000164 416371976 416371976 370147866 747745728 747745728 429119522 570655376 570655376 906058022 906058022 479208025 90866206 182234112 567010496 723643697 723643697 575422612 671927301 671927301 704758628 704758628 948438087 948438087 941098503 941098503 822872612 286835554 90618818 91307016 99349992 111604415 1022087977 1022087977 394314470 394314470 992070271 992070271 416006645 829793871 1016687523 1016687523 721761286 998510884 998510884 580274470 222228232 597054113 597054113 727407680 884073086 967288071 967288071 296164491 552674241 1071375776 1071375776 539232513 539232513 1027344174 1027344174 939590407 939590407 821330669 420470816 624971919 624971919 347918154 941784128 941784128 85091621 198233688 198233688 160441680 199845196 199845196 166016504 63368080 70377600 98638848 98638848 9504768 9775680 9775680 354527522 354527522 184574160 444300928 457363638 457363638 172279956 333107188 340411724 340411724 447751946 612633507 612633507 704259940 1066277669 1066277669 1055792607 628108359 628108359 947651453 947651453 257345660 404000814 404000814 777484909 777484909 495063468 495063468 228638982 966036067 966036067 345785926 478987534 478987534 502387426 545424531 545424531 338512298 540581755 614264970 835697443 835697443 583321809 552042641 543371649 617493553 625350825 826809354 826809354 983637584 983637584 698046022 953430016 953430016 637553176 637553176 706978568 706978568 942272909 942272909 805857492 641826136 641826136 590727208 897404816 897404816 887401472 810053104 810053104 67884036 201400332 201400332 143663232 428878656 428878656 375919244 375919244 1002539878 1002539878 722110772 722110772 885969553 885969553 892871370 892871370 617385993 886576017 886576017 844324505 798518870 927064276 1015995471 1015995471 990411081 581121185 849555467 903352569 903352569 630168559 542905096 281335344 308252689 404158807 825942002 825942002 1056714650 1056714650 291636264 173149360 336151936 341959050 341959050 113054882 136787013 605948931 605948931 668798859 668798859 829886727 829886727 877098763 877098763 802161405 802161405 704884769 704884769 614388073 573496593 573496593 539310897 538029344 304544884 495710024 495710024 504407880 504407880 238829436 238829436 93565476 530386302 624388960 624388960 588531074 901386483 901386483 790977706 598527911 598527911 1006929754 1006929754 572836113 977829895 977829895 809760071 923347015 923347015 871449778 792062781 708165848 294674273 138189478 114296504 866365750 866365750 614966504 413315422 413315422 809622544 809622544 614666510 614666510 824711687 824711687 699801921 411251076 278597738 366613728 366613728 344130632 323903744 323903744 115934680 97054560 124902760 124902760 24210416 45961040 45961040 54282400 90305136 90305136 159418660 159418660 184901956 276639618 400330600 725477121 725477121 595622684 858794100 858794100 686932017 686932017 587260869 207798576 224563760 692183120 692183120 717494404 717494404 950933923 950933923 796683964 897258514 897258514 795978617 692275745 556719393 556719393 123251513 841682834 880390938 880390938 350112552 114350904 402007642 402007642 296030336 275522442 272699344 272699344 286022482 399289954 399289954 293692120 78920192 79372868 703743724 747895001 747895001 660858501 1026245474 1026245474 947704748 947704748 224313991 818858712 818858712 815318444 552422780 615249225 971027630 971027630 664840634 830219331 830219331 677431458 810290307 810290307 279333289 899135276 899135276 578336244 424969856 228640020 228640020 224444844 213991664 186549380 186549380 15125632 8704000 8704000 101359192 101359192 86310656 116861904 116861904 21020832 167182676 178416612 178416612 124830940 142263588 240812888 240812888 0 375307800 375307800 426584831 765561587 765561587 787745593 787745593 622343936 1041867642 1041867642 145230953 0 0 254804248 254804248 472260874 832445444 948385863 948385863 446773367 728608064 728608064 541444120 541444120 203448464 203448464 13656256 7593888 17640480 18047008 18047008 29747424 29747424 282331842 291569250 291569250 293716098 293716098 955063367 1044512093 1044512093 1051490815 1051490815 247873822 220336428 220336428 438642966 455487520 653302676 653302676 1033366954 1033366954 744009705 744009705 482432195 423790764 491572398 491572398 382376014 396287610 656141919 656141919 523740990 832304161 832304161 766741844 766741844 577593084 678702061 729053608 729053608 625120648 650537016 650537016 115936920 207140080 227427852 227427852 211003940 211003940 223146984 223146984 221529664 221529664 68456288 622685485 622685485 251584476 676964649 676964649 222298284 222298284 247558376 722214365 722214365 251923380 544740833 544740833 83155280 206958216 230303860 234040476 234040476 207693404 129303508 162695368 202824204 202824204 169085376 184811624 207880864 207880864 186647492 200752116 463607182 463607182 310456788 357365068 813802648 813802648 869270254 869270254 632308211 519119838 519119838 449904404 449904404 153767354 57486768 33892368 33892368 318045770 351211976 362806890 362806890 235042626 153454624 62253936 62253936 437428816 477247694 477247694 452319856 95098720 85590153 541218177 843488707 843488707 576770544 810295527 810295527 833892848 833892848 812786577 1010180881 1010180881 1066695471 1066695471 855918616 740295940 538836811 537184257 585581616 585581616 459337984 459337984 380786520 380786520 646193906 646193906 80678369 108366242 1071221926 1071221926 1027876889 1027876889 671784138 748110027 1048836703 1048836703 850837389 850837389 776809946 1013837199 1013837199 994424995 951934047 951934047 698672354 549503169 290380962 708451366 708451366 995005100 995005100 907857435 85872151 22154372 5641984 549350818 549350818 675761937 685687757 685687757 578008459 578008459 764822256 898263003 898263003 716933928 290303432 342171722 342171722 340534000 118810168 329500426 396498840 396498840 399706054 480718090 480718090 365495298 1035994575 1035994575 472029256 205981116 998632701 998632701 467800566 1017391968 1017391968 863298242 477370089 1037091567 1037091567 748631200 768871149 768871149 1068031231 1068031231 311375488 391275360 391275360 537122880 537122880 478980678 478980678 828960386 828960386 223685292 252478594 252478594 44089680 808981525 808981525 801637629 801637629 1041965232 1041965232 734032537 734032537 560198049 560198049 323212241 282251970 278041138 300302212 688463638 688463638 678962612 832576530 832576530 558285730 481432008 534392508 534392508 526175542 303309012 303309012 189866136 189342900 951061860 951061860 89411360 549572864 549572864 360174380 470809100 470809100 72125188 72125188 629802280 629802280 626790497 608438409 608439136 608439136 96187304 104659344 104659344 103633568 130158840 130158840 30412888 70304576 96628527 225613335 367711128 920252981 920252981 540250368 780170680 935795811 935795811 725865852 725865852 570846421 854402192 854402192 592395441 750888682 750888682 738801794 738801794 566364909 739229002 809107528 809107528 882907174 882907174 729899768 729899768 150560572 327006446 514662718 514662718 483584734 383723714 250893256 197694832 248161004 248161004 169395732 227050104 522470672 522470672 394023704 117459274 318727410 517811934 517811934 64499646 33030256 31045664 101847568 101847568 88080552 302065298 302065298 375534464 375534464 291639730 306918546 326905322 326905322 319102848 128000376 92315968 269003786 269003786 376300552 376300552 297976090 360850538 360850538 331487490 331487490 310382930 345651266 345651266 296224354 296224354 278187264 45614928 1837904 134226432 808496786 994915474 994915474 658851645 658851645 560843388 781576797 959646531 959646531 573435153 975774357 975774357 307307712 303297042 827473550 827473550 885462592 885462592 731538961 731538961 463312356 463312356 881282604 881282604 487509390 205785248 534874233 946203015 998244783 998244783 461490511 687892769 774363196 774363196 884877757 976653843 976653843 962413770 463121004 92324448 380948282 380948282 81563498 276565184 336347536 336347536 344459312 344459312 101336160 101336160 52482392 53792224 90139872 90139872 894858017 894858017 609282625 319870179 865240785 865240785 349303448 609747689 663489688 663489688 655236153 859740665 859740665 812238402 892003520 896016714 896016714 581968672 581968672 966263046 966263046 137702211 787208 444861348 444861348 423249974 434264390 434264390 407654342 273639748 40167488 107063464 107063464 58802384 124235864 124235864 117228480 90573808 374493658 592818137 592818137 382862352 703472067 703472067 806092853 806092853 939953225 939953225 753356844 753356844 700354570 428357312 626582537 626582537 205483694 164909828 421707940 741508044 885136738 885136738 909564699 909564699 951445292 964163725 964163725 827195624 740004493 826042184 826042184 757919207 757919207 650735170 650735170 606077352 21062305 115638312 115638312 107445648 84613520 88115984 909673767 1030057023 1030057023 961760780 416167662 492707502 492707502 95734632 95734632 571768906 807667971 807667971 574622080 537839636 694714544 726457776 726457776 705072293 550302760 264863112 133549736 126013560 697827712 697827712 1034119940 1034119940 132735279 973145800 973145800 767202807 483439621 361604739 633956885 719009493 729551853 743768227 743768227 718279749 812306467 812306467 675438999 18865611 581359392 623627337 623627337 557654312 875700505 875700505 919736706 1050833854 1050833854 259613985 299823735 767270607 767270607 483209416 511314816 846862482 848256346 848256346 612620728 876345099 876345099 563555557 770136782 924863515 924863515 1012545635 1012545635 546049089 355549517 965861991 965861991 773914983 647939356 868029701 868029701 1017253468 1017253468 137738383 373514463 373514463 813744162 813744162 818307169 911175032 1011361252 1011361252 48501776 48445824 48445824 63462560 193631888 222868564 327834222 327834222 227727912 268645378 268645378 448693382 448693382 235953480 320129586 320129586 448056150 448056150 220600620 495580463 1024854157 1024854157 414398231 578427855 578427855 747745728 914681476 914681476 973389872 973389872 731990230 920411288 920411288 774439410 259918536 603062336 603062336 598686016 598686016 809529680 809529680 589041201 815530438 948438087 948438087 941098503 941098503 822872612 128 4194432 5243520 5243520 111604415 1022087977 1022087977 501094618 394314470 992070271 992070271 656359849 362991978 849088366 857237787 857237787 998510884 998510884 580274470 222228232 248039272 248039272 455143150 884073086 967288071 967288071 296164491 174529536 1071375776 1071375776 272036201 17302560 5244576 899705708 939590407 939590407 226511211 0 604451178 632502888 752746728 941784128 941784128 549447648 549447648 608120097 608120097 199845196 252035889 638133273 638133273 638149912 638149912 688239016 688239016 644486553 722374872 722374872 591298785 184574160 643340889 643340889 143648304 148898244 157835684 557145635 557145635 548747882 872490314 872490314 704259940 1066277669 1066277669 1055792607 983376656 983376656 947651453 947651453 739719693 739719693 631058174 874117330 874117330 518041753 307935500 28870604 966036067 966036067 412882553 588780488 621855273 858809881 858809881 750958227 750958227 634973953 636087056 835697443 835697443 583321809 552042641 543371649 323608858 315937288 381512907 539175171 983637584 983637584 698046022 463456516 560253696 1057096363 1057096363 706978568 706978568 942272909 942272909 805857492 383752833 306277395 590727208 897404816 897404816 859309224 810053104 810053104 323893506 323893506 357061790 357061790 428878656 428878656 422045185 327761933 824289345 824289345 772959876 905806673 905806673 388262713 478224462 612738256 642567321 750971968 750971968 603979785 589504625 927064276 1015995471 1015995471 990411081 581121185 849555467 903352569 903352569 630168559 542905096 302396528 341679144 675540144 675540144 671475717 426208517 424623270 337671608 424146082 677546270 755048493 1021927901 1057612863 1057612863 787080143 414454278 404294668 404294668 201329796 221506064 692174904 692174904 658636952 675385480 704884769 704884769 180656716 180656716 13056712 197628532 201839776 304544884 495710024 495710024 504407880 504407880 278662722 278662722 93565476 965836811 965836811 872440423 872440423 901386483 901386483 976913548 976913548 779890337 867265959 867265959 375390695 108044936 109404928 151546546 400760588 687190832 687190832 708165848 708165848 95607709 202993344 202993344 672136197 740713736 740713736 713829876 560013729 1070270202 1070270202 614666510 614666510 824711687 824711687 699801921 731841919 731841919 739117125 739117125 604871745 604871745 631952745 631952745 701329644 753980973 753980973 751236408 45961040 45961040 52605784 90305136 133177616 133177616 113321216 289998475 611895177 611895177 725477121 740344077 740344077 726100232 726100232 686932017 686932017 694890634 694890634 583430449 692183120 692183120 717494404 717494404 950933923 950933923 796683964 897258514 897258514 795978617 692275745 556719393 556719393 123251513 841682834 880390938 880390938 350112552 114350904 114350904 8389120 10289152 10300992 10300992 11507264 22711624 22711624 244179976 244179976 256890649 793476969 793476969 235675496 440909210 440909210 603213507 730424253 944823980 944823980 224313991 818858712 965751074 966861159 966861159 615249225 971027630 971027630 664840634 455681284 389062788 389062788 208683838 204546828 134226696 237797384 237797384 67684380 173558496 173558496 152568960 184573104 184573104 192957476 192957476 159578404 159578404 143695136 195910144 195910144 168443184 333268958 333268958 31392952 437051486 437051486 130095104 126225512 126225512 439322074 439322074 459045282 459045282 332400152 426584831 765561587 765561587 787745593 842875354 842875354 1041867642 1041867642 999368308 403776141 205599957 254804248 254804248 924849991 924849991 948385863 948385863 446773367 587228230 1011460503 1011460503 1011162381 1011162381 573679640 70639760 6817792 7205248 8247040 14902144 14902144 20834880 20834880 22054560 22054560 17041440 17041440 10498240 1044512093 1044512093 935071259 714088578 1015104557 1015104557 952941731 438642966 455487520 747142404 1000077665 1033366954 1033366954 311771657 354765990 529335676 546087014 675596421 696884817 847589561 931765299 931765299 656141919 523740990 832304161 832304161 766741844 766741844 577593084 678702061 729053608 729053608 625120648 650537016 650537016 53352840 36700944 34990608 34990608 3269376 4752192 9765760 9765760 13961792 13961792 231472716 231472716 213542312 207565308 264417160 264417160 128061816 128061816 212695424 212695424 65772956 216006944 216006944 76433028 182109152 206958216 223479688 223479688 179836804 225969516 225969516 217579744 243499244 244449456 244449456 123781176 123781176 158939652 218642117 218642117 519795166 876885279 876885279 180882500 0 0 0 0 723524399 928420762 928420762 765942092 765942092 302515218 302515218 108957826 70568712 521475506 521475506 21444768 151004192 151004192 134816772 62253936 239180504 239180504 213131672 181742292 107023180 48944136 48944136 29917888 310643968 313001298 313001298 810295527 810295527 833892848 833892848 812786577 1010180881 1010180881 1062945416 1062945416 990639159 740295940 852572066 852572066 585581616 585581616 459337984 459337984 380786520 380786520 646193906 646193906 93968193 108366242 1071221926 1071221926 1064509153 1064509153 813716646 1053181507 1053181507 1048836703 1044650714 303452699 576774400 843178131 994424995 994424995 821193710 821193710 492038021 889620860 915283035 915283035 1017561429 1017561429 995005100 907857435 739260612 594145430 812002451 1054975152 1054975152 644436488 685687757 685687757 578008459 919355456 919355456 894148763 240617772 356090304 366601962 366601962 537766987 537766987 370265426 915947523 915947523 613483009 346819842 480718090 480718090 365495298 1035994575 1035994575 818198723 352807298 998632701 998632701 494015808 868620759 868620759 863298242 477370089 1037091567 1037091567 725180808 725180808 256150138 1068031231 1068031231 492434830 492434830 474324568 537122880 537122880 511205782 1043860207 1043860207 967836136 1023708101 1023708101 805603332 44089680 67079618 315822090 315822090 535081140 535081140 616636617 734032537 734032537 560198049 560198049 323212241 282251970 149273462 300302212 688463638 688463638 678962612 832576530 832576530 558285730 298798910 534392508 1031843651 1037982002 1037982002 839141966 274801026 815218850 815218850 573849827 92341024 549572864 823487592 823487592 805672258 277223490 545425507 545425507 629802280 629802280 626790497 608438409 542378625 608951048 608951048 414723584 994840797 994840797 741602608 593058439 941411847 941411847 879021316 272401802 367711128 920252981 920252981 540250368 540250368 45220368 288123505 399184471 851734064 904992182 904992182 583008465 583008465 562692113 273093135 318890034 318890034 80408601 286261700 809107528 809107528 663432917 718046832 995808055 995808055 940304156 940304156 514662718 514662718 483584734 275907020 250893256 1020297288 1020297288 851453446 672137733 1013392232 1013392232 522470672 72215688 151367136 238066276 238066276 184807476 228537960 228537960 31045664 85139456 88080552 88080552 88080552 67634336 84411432 84411432 51658032 51658032 3880704 69427304 99277272 198973056 221939524 269003786 269003786 376300552 376300552 297976090 360850538 360850538 340313226 331487490 310382930 278921680 23871712 77280840 77280840 67493440 639903624 639903624 772080528 808496786 994915474 994915474 578519589 578519589 486865432 486865432 959646531 959646531 414265392 975774357 975774357 484104137 383816186 383816186 688608961 688608961 454169142 731538961 731538961 463312356 463312356 881282604 881282604 373350896 373350896 652281968 652281968 627386793 230993401 206433420 1063871652 1063871652 980233623 884877757 976653843 976653843 962413770 618250457 113844736 843637833 843637833 370147866 276565184 336347536 633610347 633610347 126110114 859097225 859097225 373926176 373926176 90139872 90139872 22235360 72610440 72610440 18474120 18474120 391242304 391242304 131162874 668917968 668917968 655236153 117451785 27443240 10617024 44111104 44111104 38282417 581968672 805898068 942219351 942219351 694158306 694158306 601632339 557149066 888186738 888186738 887511691 887511691 613628290 52802800 53606880 53606880 27465952 853981888 853981888 586241018 375390618 375390618 374493658 1039286318 1039286318 801903909 449577070 806092853 806092853 939953225 939953225 672493152 407154404 428357312 428357312 424882854 33131882 148643428 148643428 335546376 335546376 295083696 874288400 909564699 909564699 951445292 964163725 964163725 740004493 740004493 726872784 726872784 757919207 757919207 650735170 650735170 606077352 502317512 471368014 274498820 64512784 336525896 336525896 909673767 1030057023 1030057023 961760780 613037184 631952745 631952745 557369121 557369121 650827416 847126419 847126419 702415552 702415552 694714544 726457776 726457776 705072293 550302760 264863112 247463516 126013560 697827712 697827712 1034119940 1034119940 132735279 973145800 973145800 1009292464 1009292464 347727504 545391648 562697313 680003201 680003201 549458977 549458977 974129079 974129079 707005383 638847056 638847056 627259136 637216489 637216489 875700505 875700505 919736706 1050833854 1050833854 691536872 299823735 767270607 767270607 535690622 529395190 158098578 956386438 956386438 134981423 212898988 408486658 408486658 770136782 924863515 924863515 1012545635 1012545635 546049089 263506876 263506876 408985736 408985736 730470772 730470772 45594165 205504012 205504012 142904324 471888492 957579560 957579560 813744162 818307169 818411715 818411715 294567153 48501776 48445824 48445824 13160864 42564644 222868564 333993600 333993600 227727912 268645378 268645378 110700120 40539792 140296910 458628608 458628608 448056150 448056150 220600620 495580463 1024854157 1024854157 457973995 648417668 648417668 751828173 914681476 914681476 973389872 973389872 731990230 920411288 920411288 774439410 259918536 603062336 603062336 598686016 598686016 809529680 809529680 686261410 815530438 815530438 679219077 497551553 365167242 365167242 288294944 348917704 348917704 113996168 326192208 326192208 501094618 501094618 360061238 326494690 656359849 656359849 497808750 237835102 857237787 857237787 347417648 505424560 505424560 885295607 1012957184 1012957184 447746654 447746654 159924480 136889700 136579073 673186053 673186053 536941568 536941568 611252900 691097989 691097989 537848969 537848969 81214152 81214152 11854920 672581220 752746728 752746728 606849028 549447648 549447648 608120097 608120097 171708180 252035889 638133273 638133273 638149912 638149912 688239016 688239016 644486553 722374872 722374872 591298785 184399512 643340889 643340889 125946176 125946176 96395112 557145635 557145635 548747882 877472288 877472288 884284362 884284362 364128257 298529186 983376656 983376656 657068743 723241926 739719693 739719693 1008185872 1008185872 874117330 518041753 472516932 207887042 479635460 479635460 474205896 588780488 621855273 858809881 858809881 750958227 750958227 634973953 636087056 636087056 851490768 888744323 888744323 851817579 851579091 851579091 544003578 315284602 546622276 546622276 523621920 428581964 813087554 1057096363 1057096363 941772836 941772836 810606849 883085643 883085643 67520835 809568772 809568772 294988386 1063823152 1063823152 511931201 334760946 374358174 374358174 357061790 357061790 436361924 436361924 422045185 327761933 824289345 824289345 772959876 905806673 905806673 904827324 975959319 975959319 642567321 642567321 603979785 603979785 662958880 662958880 184562108 98588008 349052298 559944010 632423690 632423690 318843424 333119744 333119744 302396528 341679144 675540144 675540144 671475717 529990573 799323644 949005553 949005553 825109722 825109722 1021927901 1057612863 1057612863 787080143 750272640 388526141 748310479 748310479 523477243 523477243 658636952 658636952 553783329 104861881 629278792 629278792 763718181 763718181 700737389 673751716 77613056 252952832 252952832 403366712 403366712 278662722 278662722 236719644 965836811 965836811 872440423 896765214 896765214 294144624 976913548 976913548 779890337 867265959 867265959 970418672 1030116247 1030116247 722584127 871661809 871661809 1041059722 1041059722 711482950 201277428 460756762 460756762 672136197 740713736 740713736 713829876 560013729 1070270202 1070270202 276824130 55784178 359729632 613417358 925449776 925449776 731841919 739117125 739117125 625196192 630062441 631952745 631952745 701329644 753980973 753980973 751236408 51000608 51000608 53584144 53584144 133177616 133177616 113321216 289998475 611895177 611895177 581485473 740344077 740344077 904747836 904747836 326237620 552486607 694890634 957810747 957810747 967027772 967027772 1054965787 1054965787 394396989 70025224 688065405 742791309 742791309 699514672 63097984 63097984 54004752 36701872 268910762 268910762 325933064 360819554 372772530 372772530 360791488 360791488 286360954 50921696 86296324 278409876 295865290 526158556 526158556 256890649 793476969 793476969 235675496 440909210 440909210 991329546 991329546 730424253 604689417 484360718 343004000 965751074 966861159 966861159 792438169 792438169 650157938 509887703 509887703 327190766 993559190 993559190 816964419 790685936 790685936 572072991 572072991 808801604 808801604 1060995896 1064452052 1064452052 832778595 550619520 296039232 159578404 143695136 195910144 195910144 168443184 333268958 333268958 31392952 437051486 437051486 84426848 126225512 126225512 439322074 439322074 459045282 459045282 124995678 220349894 448831606 448831606 239109200 842875354 842875354 413150019 999368308 999368308 403776141 205599957 237832472 237832472 924849991 924849991 213450792 120401208 101002312 205892712 1011460503 1011460503 1011162381 1011162381 573679640 70639760 33558528 7205248 8247040 8247040 564224 8857216 18709696 22054560 22054560 17041440 26348288 26348288 156878912 916141883 916141883 810318852 1015104557 1015104557 952941731 692634789 440426472 747142404 1000077665 1000077665 637655898 681492045 985302070 985302070 546087014 675596421 696884817 847589561 931765299 931765299 596750434 101999480 45513808 45513808 672241016 672241016 111229517 186748384 186748384 12073892 4507776 168079508 168079508 87310776 159230592 210337116 210337116 148803196 164803448 164803448 168501008 264967504 264967504 231472716 544565861 544565861 240198300 692876073 692876073 149687748 199911620 199911620 687905197 687905197 240027848 742952897 742952897 219170152 219170152 223479688 295310306 295310306 481558904 481558904 217579744 356585688 356585688 360868570 360868570 319050306 432812144 432812144 218642117 519795166 876885279 1053264801 1053264801 1070577700 1070577700 439892382 439892382 723524399 928420762 928420762 765942092 765942092 302515218 302515218 127960896 127960896 521475506 521475506 89602728 188821048 188821048 178136604 102160920 239180504 405966864 452215762 452215762 310664072 145937112 48944136 33210880 310643968 313001298 313001298 281808066 730743490 830390519 830390519 601724449 601724449 563037074 1062945416 1062945416 990639159 350482890 852572066 852572066 250136022 250136022 520102024 520102024 140121732 140121732 706740588 706740588 366340842 906692690 906692690 898949225 1064509153 1064509153 813716646 1053181507 1053181507 1044650714 1044650714 944343136 944343136 513115215 466617078 556646785 695473155 695473155 492038021 889620860 915283035 915283035 1017561429 1017561429 700978218 739260612 739260612 594145430 812002451 1054975152 1054975152 107855240 226678972 226678972 222595180 919355456 919355456 894148763 481437565 356090304 366601962 366601962 537766987 537766987 375393466 915947523 915947523 613483009 346819842 470101000 470101000 346630982 407446092 818198723 818198723 352807298 497077287 877299135 877299135 736101103 937738519 937738519 727073752 683839236 683839236 617792553 1014632886 1060363577 1060363577 393860908 492434830 492434830 474324568 932327550 1003747445 1003747445 1043860207 1043860207 967836136 1023708101 1023708101 805603332 91349928 919669186 919669186 847620715 892508250 892508250 458455228 118563384 1114168 0 1245184 1257984 18022784 24327072 24327072 16777600 6291488 0 135266308 135266308 135653892 217312148 630850716 1031843651 1037982002 1037982002 979377124 274801026 815218850 900351528 900351528 577766289 577766289 823487592 823487592 805672258 621952115 621952115 545425507 465437719 819237697 819237697 818987715 617905035 608951048 608951048 414723584 994840797 994840797 741602608 593058439 941411847 941411847 879021316 296166000 296166000 271981314 491294168 491294168 411329040 411329040 957632964 957632964 851734064 904992182 904992182 618929051 618929051 998511715 998511715 318890034 318890034 80408601 286261700 490565472 490565472 663432917 718046832 995808055 995808055 940304156 940304156 652482916 652482916 165808329 137455792 58955956 1020297288 1020297288 851453446 672137733 1013392232 1013392232 439938908 111641948 210803532 313676484 483106330 483106330 428692008 228537960 55055008 389296354 389296354 39478864 39478864 626152105 626152105 743649933 822613554 822613554 239149212 437853457 437853457 558966306 806355459 806355459 522715839 575438986 614035274 614035274 373293210 340313226 340313226 71336962 54706608 350802203 633372833 633372833 623643761 648545625 648545625 639903624 772080528 772080528 1008263183 1008263183 406057734 357489834 486865432 486865432 538518384 598214001 598214001 731644844 731644844 484104137 383816186 383816186 305824192 395842426 395842426 176791124 403662226 403662226 280501376 344166230 411566407 1035996335 1035996335 981748089 981748089 627386793 230993401 206433420 1063871652 1063871652 980233623 310810624 1574400 401127104 618250457 618250457 352968736 843637833 843637833 370147866 273157482 66849970 633610347 633610347 604630137 859097225 859097225 373926176 373926176 196863166 196863166 1018712073 1018712073 1035319652 1035319652 501399911 643054788 643054788 633541147 668917968 668917968 646456057 117451785 27443240 19534112 44111104 44111104 38282417 551028209 805898068 942219351 942219351 867374084 694158306 601632339 557149066 888186738 888186738 887511691 887511691 613628290 529715838 56516894 209305996 209305996 853981888 853981888 586241018 397832928 375390618 97831080 1039286318 1039286318 801903909 449577070 759079006 868220787 868220787 672493152 672493152 407154404 407154404 408477390 766870755 766870755 164506284 495129868 495129868 810556020 810556020 1002443548 1002443548 314837202 314710016 991944730 991944730 677115019 491064991 50558992 50558992 50454576 588259360 588259360 699714208 699714208 569464992 594817528 594817528 86655376 336525896 336525896 509117976 509117976 840314682 840314682 613037184 631952745 631952745 557369121 557369121 650827416 847126419 847126419 702415552 702415552 688263296 175899013 158735268 158735268 156784544 247463516 247463516 864622355 864622355 910782224 997047755 997047755 889472234 889472234 666903273 1009292464 1009292464 869570323 869570323 592258133 680003201 680003201 577291611 686441536 974129079 974129079 737826426 737826426 638847056 627259136 637216489 637216489 674325320 674325320 827385570 970016500 970016500 691536872 265423836 309038508 535690622 535690622 529395190 545866890 956386438 956386438 952666791 212898988 408486658 408486658 381866838 506146832 506146832 288077916 534481864 534481864 421102418 421102418 408985736 408985736 730470772 730470772 45594165 205504012 205504012 142904324 471888492 1028233120 1028233120 359118203 359118203 126741624 721583181 721583181 40487040 24328320 24328320 20622848 151801728 151801728 333993600 333993600 172373212 302845418 302845418 402357692 498860254 498860254 458628608 458628608 179706708 179706708 185474100 185474100 646191867 646191867 457973995 648417668 648417668 751828173 751828173 721671864 721671864 536860990 713086432 713086432 702486134 702486134 683836352 683836352 691208033 716961621 716961621 291170404 331559154 686261410 686261410 961285287 961285287 958204195 819210855 563349540 288294944 348917704 348917704 113996168 326192208 326192208 312724072 133305336 133305336 81976816 394437908 497808750 497808750 336864512 126478360 347417648 347417648 505424560 505424560 885295607 1012957184 1012957184 615291244 780164887 780164887 773751325 136579073 673186053 673186053 536941568 536941568 611252900 691097989 691097989 537848969 537848969 323556224 81214152 4007456 672581220 672581220 134298657 0 43309840 203678256 208551428 222303272 222303272 204084492 151907364 635481152 635481152 18967592 248460460 248460460 254354748 254354748 215046408 101671648 93498016 226026644 226026644 191645984 191645984 266584416 796142550 853676499 853676499 877472288 877472288 884284362 884284362 364128257 918643072 918643072 713830203 713830203 356361385 559519418 559519418 1008185872 1008185872 885937426 472516932 472516932 207887042 479635460 482013452 482013452 278472258 90432962 219349536 219349536 760358312 760358312 556479777 577427602 577427602 851490768 888744323 888744323 851817579 851579091 851579091 665786937 908401413 908401413 698955778 337829992 337829992 813087554 813087554 140324484 941772836 941772836 810606849 883085643 883085643 144967872 809568772 809568772 294988386 1063823152 1063823152 511931201 461933622 374358174 374358174 287174178 315935442 436361924 436361924 239060048 160574252 153555552 153555552 473964682 838500483 838500483 904827324 975959319 975959319 532908258 887484815 985086222 985086222 662958880 662958880 253943868 251777340 251777340 19822784 277276736 277276736 34264080 34264080 34165776 29359968 29359968 544777985 544777985 529990573 529990573 799323644 949005553 949005553 825109722 825109722 955795043 955795043 902443491 750272640 750272640 594020344 748310479 748310479 523477243 523477243 497328774 497328774 416678945 749573233 784117621 784117621 789281141 789281141 786069845 745319924 522695940 522695940 430723120 403366712 405834328 405834328 280234838 236719644 236719644 228844548 626786995 896765214 896765214 556962099 537825178 650921305 650921305 671459716 961899042 970418672 1030116247 1030116247 923278104 871661809 871661809 1041059722 1041059722 711482950 201277428 460756762 460756762 394462116 308617424 602543601 602543601 520979386 523283705 580961939 712567322 712567322 1063002867 1063002867 925449776 925449776 879367563 640394256 640394256 625196192 630062441 630062441 607051017 605003776 605003776 224742496 224742496 94458744 51000608 53584144 88211264 88211264 67707912 67707912 70424832 79321672 79321672 119673144 790762024 790762024 904747836 904747836 326237620 326237620 177930617 957810747 957810747 967027772 967027772 1054965787 1054965787 394396989 238205100 688065405 742791309 742791309 699514672 143986296 106592416 66240096 76639576 268910762 303561896 327127730 360819554 372772530 372772530 360791488 360791488 302058530 50921696 285214850 285214850 295865290 526158556 526158556 78120264 84984616 158164104 158164104 119720288 620761739 991329546 991329546 881925054 881925054 484360718 877166890 877166890 958444169 958444169 875766085 792438169 650157938 509887703 509887703 275097408 993559190 993559190 816964419 790685936 790685936 572072991 572072991 808801604 808801604 1060995896 1064452052 1064452052 832778595 550619520 296039232 3281664 52461568 69883512 69883512 25203200 36701984 36701984 33720080 20751632 75984904 88655016 88655016 84407328 73999752 54243414 54243414 29700424 58769178 455950781 590313927 689566127 848388639 848388639 741672727 741672727 869992092 920204881 920204881 714121777 405490242 405490242 103034140 288424560 421863698 438769926 438769926 288623394 440911244 447754824 447754824 405129792 236595592 36099600 33558528 11147136 32706496 32706496 14039712 22368512 22368512 7571968 7571968 26723200 26723200 26348288 156878912 156878912 151993380 810318852 1005950228 1005950228 860145398 692634789 435230696 435230696 496188792 496188792 637655898 681492045 985302070 985302070 390552316 487377966 487377966 504930826 504930826 332672528 332672528 295098978 311466032 311466032 19298912 51383936 114035928 186748384 186748384 12073892 4507776 168079508 168079508 87310776 159230592 210337116 210337116 154452680 164803448 164803448 168501008 264967504 264967504 87354592 544565861 544565861 240198300 692876073 692876073 149687748 199911620 239239296 687905197 687905197 240027848 742952897 742952897 219170152 219170152 434709990 806365157 806365157 481558904 481558904 79171006 356585688 356585688 360868570 360868570 319050306 725151284 725151284 790868176 790868176 823701082 1053264801 1053264801 1070577700 1070577700 469719420 469719420 459606540 536979744 536979744 124846152 124846152 76818152 118917088 127960896 127960896 130778558 130778558 89602728 385882144 385882144 226564220 411449420 411449420 737039855 737039855 452215762 310664072 670850465 670850465 549079046 230736494 230736494 761129517 761129517 281808066 581577292 645474201 645474201 563037074 563037074 556406049 511754334 511754334 350482890 885039560 885039560 335634571 416747106 520102024 520102024 140121732 140121732 706740588 706740588 366340842 906692690 906692690 298769634 725750314 798940797 798940797 436853813 278272578 278272578 302313154 944343136 979212330 979212330 466617078 826797570 826797570 758556049 100019272 317067720 317067720 306973842 500038798 954017796 954017796 860955315 214209868 266787324 266787324 230985414 230985414 74133584 226678972 226678972 488515622 805077148 805077148 599263089 481437565 65509250 17074208 269511744 306726938 375393466 375393466 449103482 449103482 325863738 534548100 534548100 479774286 434128808 407446092 407446092 352911468 51244080 474340561 877299135 877299135 33884379 937738519 937738519 727073752 683839236 683839236 377976169 1014632886 1060363577 1060363577 470857988 470857988 346294602 329354516 932327550 1003747445 1003747445 872517877 805527933 287627559 268617824 946679231 1072267384 1072267384 1063904703 919669186 1000566188 1032857520 1032857520 910521297 928516275 928516275 846333873 846333873 400689145 324283296 324283296 271659778 47267794 576543072 817020739 817020739 135266308 135653892 593986435 630850716 630850716 954444653 979377124 979377124 531202942 531654014 900351528 900351528 577766289 577766289 258773680 307729954 307729954 621952115 621952115 245535590 465437719 819237697 819237697 818987715 617905035 544420737 427286288 427286288 304809382 304809382 53209024 441977360 441977360 308036740 386777543 386777543 403837446 746019901 746019901 435569248 411329040 411329040 957632964 957632964 893031314 856298547 856298547 618929051 618929051 998511715 998511715 802018580 802018580 631693118 301390818 500553538 531420152 531420152 493520518 493520518 422287188 422287188 426109350 652482916 652482916 371159544 371159544 272848966 526398392 526398392 463650820 463650820 329388402 439938908 439938908 111641948 210803532 313676484 483106330 483106330 428692008 21106848 55055008 389296354 389296354 114327744 90703712 626152105 626152105 743649933 822613554 822613554 239149212 674714224 674714224 558966306 806355459 806355459 522715839 575438986 614035274 614035274 373293210 348895306 327850154 378012018 378012018 350802203 633372833 633372833 623643761 648545625 648545625 111437886 754986266 754986266 1008263183 1008263183 392241594 315147474 774930571 774930571 538518384 598214001 905073740 905073740 641123254 428216374 419612702 459834610 459834610 369627208 369627208 102760728 377513296 377513296 59897280 344166230 411566407 1035996335 1035996335 981748089 981748089 954129178 954129178 389699229 560296246 843454611 843454611 649099723 1011231487 1011231487 804465322 378739128 378739128 375390232 375390232 336593418 337120770 406916762 520972696 520972696 604630137 604630137 140627848 559687972 559687972 580669040 580669040 1018712073 1018712073 1035319652 1035319652 501399911 643054788 643054788 639098393 639098393 654778009 654778009 119282353 35710032 35710032 9310688 27526144 28117024 28117024 286926164 462559014 867374084 867374084 572732097 457183799 539986400 539986400 486167248 486167248 491619300 529715838 529715838 296223296 288884514 209305996 624988536 624988536 397832928 397832928 88117824 97702632 97702632 64123048 54735024 88154280 759079006 868220787 868220787 621871204 717410517 717410517 623121440 250400220 766870755 766870755 164506284 495129868 495129868 810556020 810556020 1002443548 1002443548 1028269094 1028269094 1031144427 1031144427 677115019 491064991 474165390 907476481 907476481 588259360 588259360 699714208 699714208 569464992 594817528 594817528 86655376 304899600 304899600 509117976 555096609 840314682 840314682 756240397 756240397 745374229 745374229 752278939 773851649 773851649 351410419 285481201 688263296 688263296 542809477 707661569 707661569 678436148 195061792 966420160 966420160 864622355 910782224 997047755 997047755 889472234 889472234 666903273 398511803 743749634 869570323 869570323 592258133 592258133 546331621 577291611 686441536 686441536 717262931 737826426 833490674 833490674 671107378 634984392 634984392 674325320 674325320 639680793 970016500 970016500 542122557 542122557 471959964 940534786 940534786 511000375 545866890 837615619 1050585175 1050585175 800495325 1053925595 1053925595 839488910 839488910 710749725 922382955 1036274400 1036274400 421102418 421102418 195683700 313534306 313534306 165749858 845212902 845212902 574808328 1007290120 1007290120 1028233120 1028233120 359118203 539230388 621669795 721583181 721583181 103643584 22150688 20622848 20622848 151801728 151801728 365917760 525718370 525718370 370646718 370646718 402357692 498860254 498860254 311746064 202074120 296882534 296882534 17848630 363990282 363990282 84224064 84416160 164833320 164833320 206310540 658704512 658704512 524355198 872945006 872945006 363335903 261632068 261632068 683836352 683836352 691208033 716961621 716961621 706157568 331559154 331559154 160769664 961285287 961285287 958204195 819210855 563349540 17760930 28019648 325969232 325969232 55328834 77201728 77201728 133305336 133305336 81976816 94956096 319585914 336864512 336864512 381440794 381440794 33784400 280447306 287415136 385876026 385876026 405030010 615291244 780164887 780164887 773751325 807472180 992816439 992816439 461711824 328407490 386581040 386581040 270023808 338944640 855208511 855208511 373620512 1055984897 1055984897 684587969 684587969 675065420 623171633 590583648 645023217 645023217 222303272 204084492 717152085 786423637 786423637 716621961 760673996 760673996 735089624 710313957 644538064 228784257 727931852 793082776 793082776 191645984 191645984 266584416 796142550 853676499 853676499 791539005 975814215 975814215 147334918 720231198 918643072 918643072 837905304 713830203 356361385 559519418 995681916 995681916 885937426 885937426 912587659 912587659 214225152 618169314 618169314 482013452 549194544 632459785 860670833 918305929 918305929 760358312 625022379 625022379 577427602 572599897 639492177 639492177 831422600 831422600 805570563 665786937 908401413 908401413 698955778 1005841597 1005841597 967285158 967285158 731060341 731060341 1022648094 1022648094 323412609 319930867 144967872 682519113 682519113 19188000 20372704 29775360 461933622 461933622 297388916 297388916 268960768 268960768 41991488 239060048 239060048 228466284 228466284 360711277 852105409 852105409 838500483 1030685049 1030685049 612466752 612466752 887484815 985086222 985086222 547752784 547752784 253943868 251777340 338468994 541359498 805665874 805665874 269372418 273277970 273277970 268477584 7463808 34604052 125305552 471473744 471473744 244351308 321435138 342435872 357445622 665248952 955795043 955795043 902443491 143130749 594020344 594020344 725107433 725107433 681792278 483758314 497328774 497328774 416678945 749573233 784117621 784117621 789281141 789281141 786069845 745319924 522695940 522695940 430723120 253775168 405834328 405834328 280234838 205397608 205397608 234884444 487756388 487756388 556962099 556962099 537825178 650921305 884463978 884463978 961899042 961899042 57304768 923278104 923278104 87840787 278186092 487588398 528899398 528899398 515499606 488464906 72351188 260331656 260331656 602543601 602543601 520979386 523283705 580961939 712567322 712567322 1063002867 1063002867 957025056 879367563 879367563 745251904 640394256 554115321 116299992 104957232 104957232 74345176 749437596 749437596 575489168 224189344 158410916 158410916 207124016 239679040 239679040 67707912 115011672 115011672 79321672 119673144 790762024 790762024 85855237 84428352 84428352 67158024 67158024 167805960 168297492 591740948 591740948 511794193 221049264 221049264 238205100 238205100 85642496 111956184 143986296 143986296 106592416 118230072 118230072 96562784 303561896 327127730 327127730 123904152 93556186 290215426 302058530 302058530 41282448 285214850 383746716 383746716 230965844 230965844 209748572 129480320 230913452 230913452 269484160 620761739 963142298 963142298 881925054 933557416 933557416 877166890 1004882968 1004882968 958444169 875766085 547902411 309428608 309428608 61869024 275097408 383821200 383821200 658803060 658803060 195315897 27332866 2622720 52724804 142612804 193102848 952644336 952644336 193062692 225947012 225947012 187489396 244508280 244508280 218229824 193602308 193602308 186652000 33720080 20751632 22194440 88655016 88655016 73999752 106962980 258023868 499265552 499265552 278921538 455950781 590313927 919419386 919419386 848388639 741672727 741672727 869992092 920204881 920204881 714121777 405490242 405490242 152322900 288424560 421863698 438769926 438769926 288623394 270123618 447754824 447754824 405129792 7784448 8310656 12350368 32754784 32754784 87469832 341736080 369405882 369405882 353527730 279649298 269081232 302651696 302651696 295121506 422626116 422626116 542539810 542539810 542835398 542835398 864032448 864032448 596849265 727136949 727136949 458612116 458612116 465679796 465679796 147619524 147619524 156847476 186673380 273852576 332672528 332672528 295098978 311466032 311466032 705003872 705003872 114035928 207728232 207728232 557995392 557995392 82043113 171995984 173123588 173123588 158151000 47711952 154452680 154452680 121701584 92873832 46670008 24971584 38069448 122948280 122948280 25693600 76613336 76613336 33563776 54839600 239239296 239239296 199869552 199869552 159909764 159909764 152176001 160501799 434709990 806365157 806365157 443557074 443557074 153802020 153802020 34281616 5057664 27376400 27376400 725151284 725151284 1017475396 1017475396 759103274 56120157 803586812 803586812 198044916 469719420 469719420 785679181 785679181 683615780 683615780 635496784 178569480 24649088 41052544 482063892 482063892 421205858 505328174 505328174 387769908 387769908 483510554 483510554 737039855 737039855 137632524 33603600 670850465 670850465 549079046 230736494 230736494 761129517 860127774 891985161 891985161 645474201 816949440 1054634499 1054634499 736038093 968619879 968619879 608181669 885039560 885039560 524915995 416747106 416747106 425340528 441400470 441400470 326974566 802438953 802438953 807163818 903909307 903909307 890373867 798940797 798940797 592402536 512498007 512498007 809004830 809004830 979212330 979212330 1011861207 1011861207 903900610 903900610 821626104 1036991880 1036991880 1046300672 1046300672 954017796 954017796 860955315 146049303 763646585 901153389 901153389 816130499 987453396 987453396 255949948 488515622 488515622 453350974 541665290 670337154 670337154 96789080 279511154 341051699 861671091 861671091 911396663 911396663 325863738 534548100 534548100 479774286 434128808 415285446 941612935 954381182 954381182 940086526 382682432 246015324 229332308 665607004 665607004 647620185 647620185 622445689 35834633 64724176 1017099424 1017099424 667469607 667469607 562986817 1073597771 1073597771 786948884 480584620 607201675 607201675 268617824 437984256 946679231 1072267384 1072267384 1063904703 833755442 1000566188 1032857520 1032857520 910521297 928555392 928555392 926541627 846333873 400689145 868787296 868787296 287210147 287709216 576543072 817020739 817020739 19142225 14982130 593986435 593986435 509920795 954444653 954444653 333776853 531202942 560370239 789711818 789711818 612503625 612503625 1039869580 1039869580 71509895 269619744 269619744 17826306 570792 358838696 358838696 90788864 91564968 268593666 427286288 427286288 422527150 601400868 601400868 1010632207 1010632207 1041500304 1041500304 386777543 403837446 746019901 746019901 103944984 546110484 749806413 749806413 893031314 893031314 856298547 856298547 813694976 838960692 838960692 684311187 802018580 802018580 730973273 730973273 643152720 643734289 643734289 493520518 493520518 958997799 958997799 443411862 443411862 641649574 641649574 585840081 719325974 719325974 526398392 735887555 819513027 819513027 679495364 60429936 135926384 135926384 11694660 26217152 127481408 127481408 85598840 87302192 281075794 281075794 114327744 90703712 95958378 272818688 272818688 1024869678 1024869678 285776674 674714224 674714224 154996512 155004708 889577832 889577832 570787843 83986809 335931402 348895306 348895306 327850154 378012018 378012018 327453010 319706224 37884048 123994280 572858504 572858504 14983673 8413680 4194432 38912810 392241594 392241594 315147474 783398206 783398206 413664516 413664516 905073740 905073740 641123254 473956494 419612702 459834610 459834610 533918444 533918444 507655820 507655820 210459344 320576768 320576768 287345792 385927512 571247826 617366618 617366618 954129178 954129178 389699229 560296246 843454611 843454611 649099723 1011231487 1011231487 804465322 378739128 378739128 375390232 375390232 336593418 337120770 406916762 520972696 520972696 258008872 154454820 140627848 559687972 586321000 586321000 580669040 553697313 550027753 76827457 66634208 34603536 868226161 868226161 814723202 639098393 654778009 740046348 740046348 920125588 920125588 889454594 864032840 840045075 969419393 969419393 277428820 813769749 813769749 560997856 39330785 539986400 546303939 560600904 1057587083 1057587083 816967366 296223296 296223296 516190444 516190444 624988536 624988536 579864593 50397722 92354666 92354666 746995486 906968099 906968099 526852291 526852291 466034141 621871204 621871204 717410517 717410517 623121440 250400220 205170384 429613856 429613856 146265606 111859032 402181928 402181928 125093521 1030623524 1030623524 1028269094 1031144427 1031144427 271597084 474165390 820430778 907476481 907476481 87390621 367601130 367601130 202013004 49584084 145647809 552945349 552945349 304899600 304899600 994739776 994739776 829873059 741365934 756240397 756240397 745374229 745374229 752278939 773851649 773851649 351410419 285481201 285481201 542809477 542809477 707661569 707661569 678436148 195061792 966420160 966420160 314395125 325116568 429442410 496815726 521312788 521312788 205004590 789910940 789910940 453524091 411177386 567282181 567282181 889782560 889782560 829162296 811730068 726275218 726275218 833490674 833490674 671107378 206108084 206108084 292107430 724570664 724570664 639680793 778665990 778665990 542122557 539030708 940534786 940534786 511000375 417369474 837615619 1050585175 1050585175 800495325 1053925595 1053925595 839488910 839488910 710749725 922382955 1036274400 1036274400 0 0 152076868 213405059 213405059 165749858 845212902 845212902 795722006 1007290120 1007290120 75232522 795141128 795141128 539230388 621669795 621669795 296632709 103643584 13641792 28927264 28927264 34831652 233523776 365917760 525718370 525718370 370646718 370646718 361499754 259269120 248511708 248511708 177491472 296882534 296882534 26495172 363990282 363990282 84224064 84416160 164833320 164833320 206310540 658704512 658704512 524355198 872945006 872945006 363335903 261632068 261632068 179453697 598088049 598088049 193864741 706157568 813085315 813085315 956648817 956648817 540740515 557793057 557793057 539507232 269490176 393730 269490176 325969232 325969232 55328834 184497367 1024113091 1024113091 827061411 503759815 956992571 956992571 504890518 504890518 381440794 381440794 698533926 1034789068 1034789068 550986921 550986921 783034912 783034912 664087161 637805408 299570315 807472180 992816439 992816439 665328883 665328883 67878948 136076452 526247612 526247612 855208511 855208511 400803392 1055984897 1055984897 684587969 684587969 675065420 623171633 590583648 645023217 645023217 261156928 261156928 717152085 786423637 786423637 716621961 760673996 760673996 735089624 710313957 644538064 228784257 727931852 793082776 793082776 202684997 117180492 185804080 200677534 355652394 514350906 514350906 975814215 975814215 952699407 952699407 720231198 887562916 961882791 961882791 841577900 369647136 995681916 1037373292 1037373292 1045266347 1045266347 912587659 292454717 618169314 878370616 938773475 938773475 822891456 860670833 918305929 918305929 358473586 625022379 625022379 608247945 608247945 637933593 637933593 842191032 842191032 818207619 87680808 271459444 310760000 473232166 1005841597 1005841597 967285158 967285158 731060341 758236906 1022648094 1022648094 614513984 614513984 747177452 747177452 927456052 927456052 535593891 754044208 754044208 673568932 312525164 471649806 471649806 270092738 373608376 373608376 135334123 228466284 578580584 661577145 968971065 968971065 915487463 1030685049 1030685049 668152569 612466752 914912714 914912714 547307281 547752784 547752784 775693064 775693064 549356040 541359498 805665874 805665874 269372418 273277970 273277970 268477584 32979936 119149256 827664357 827664357 226453428 782073937 782073937 259773888 244091252 933222476 933222476 796918852 796918852 750323064 934454857 943380231 943380231 725107433 681792278 483758314 405086208 405086208 537582592 537582592 237552924 237552924 236790548 236790548 208798496 208798496 53613284 152618532 244875580 244875580 220861740 252975652 252975652 205397608 205397608 234884444 234884444 176537112 2164224 24311208 89369680 127176696 884463978 884463978 7791129 1033453408 1033453408 914877856 914877856 27390864 380968640 487588398 851797456 851797456 515499606 488464906 53242090 260331656 260331656 109776212 606418176 637911338 895867035 895867035 873912579 273155202 273155202 957025056 957025056 134217732 745251904 745251904 554115321 554115321 352509266 346773544 924343263 924343263 749437596 1046203846 1046203846 717608405 783934573 783934573 879831126 879831126 872579719 637915520 445279248 327201698 327201698 1000998978 1000998978 597826424 597826424 531053435 517290686 67158024 895210681 895210681 890089476 743269925 591740948 904383749 904383749 497681761 155662500 797378865 797378865 768132333 621855300 243876944 223479296 223479296 118230072 78194008 353445008 366819314 366819314 21695250 1184000 1049088 33835088 33835088 311004384 373385778 391767738 391767738 230965844 230965844 209748572 222533505 230913452 969800940 996036501 996036501 792323901 792323901 527297982 933557416 933557416 328508256 1004882968 1004882968 1059218876 1059218876 135497003 810734739 810734739 263267196 263267196 383821200 383821200 608518857 905080592 905547851 905547851 74483931 901465448 901465448 860548832 952644336 952644336 831598848 584082320 373054760 187489396 244508280 244508280 218229824 193602308 193602308 186652000 24834448 17620544 91525160 93196744 93196744 49603552 106962980 441789078 499265552 499265552 531441290 531441290 719473259 919419386 919419386 553783329 591664801 591664801 309043316 500395432 500395432 224160804 247842248 247842248 152322900 68207112 77863200 484836776 484836776 470551566 92831854 67422216 67666064 67666064 38454296 38415616 38415616 32754784 32754784 87469832 341736080 369405882 369405882 353527730 332697232 269081232 302651696 302651696 295121506 422626116 422626116 542539810 841637269 841637269 779809048 966514403 966514403 880837387 878778635 878778635 823512240 842007315 842007315 808214740 304898066 304898066 159469648 186673380 186673380 772940217 772940217 158544804 719979269 719979269 705003872 705003872 683333445 789874709 789874709 688235072 654491928 654491928 623063312 173123588 173123588 170410496 47711952 47711952 121701584 121701584 92873832 46670008 73246328 73246328 122948280 122948280 90235048 86106408 76613336 55347088 67946792 220465256 220465256 209979468 199869552 159909764 159909764 34659332 146277040 169869588 311435584 311435584 443557074 443557074 518571310 518571310 382606656 382606656 371234458 326049792 955749648 955749648 1017475396 1017475396 759103274 131072 135168 135168 135168 135168 43598096 785679181 785679181 683615780 683615780 635496784 178569480 117753912 66307440 482063892 482063892 421205858 505328174 505328174 490782946 486852654 483510554 483510554 396084470 69632260 213056028 213056028 171513416 7111424 284429856 287574882 429203817 429203817 860127774 891985161 891985161 417315391 816949440 1054634499 1054634499 796579109 1069991972 1069991972 848414576 899936619 1001096603 1001096603 724098916 419830086 425340528 441400470 441400470 438578582 802438953 802438953 807163818 903909307 903909307 890373867 352458786 592402536 592402536 512498007 512498007 833912966 833912966 896057512 896057512 1011861207 1011861207 903900610 903900610 821626104 1036991880 1036991880 1046300672 1046300672 862005938 862005938 843524824 843524824 763646585 901153389 901153389 816130499 987453396 987453396 512043102 344624222 352847162 352847162 541665290 670337154 670337154 96789080 279511154 341051699 861671091 861671091 911396663 911396663 345506834 323485928 323485928 290980000 415285446 415285446 941612935 954381182 954381182 940086526 382682432 246015324 229332308 665607004 665607004 647620185 647620185 622445689 35834633 64724176 1017099424 1017099424 713736320 713736320 562986817 1073597771 1073597771 786948884 513204754 607201675 607201675 740967452 958124305 958124305 487428152 487428152 396364034 833755442 833755442 434563176 434563176 668783858 928555392 928555392 926541627 339948296 339948296 868787296 868787296 287210147 287709216 287709216 271665280 6764928 858328208 858328208 809602096 809602096 329462130 554926539 554926539 147854746 377733434 560370239 789711818 789711818 612503625 612503625 1039869580 1039869580 306808637 899281219 899281219 166325444 314436443 940305539 940305539 881029193 607002051 828791584 828791584 186482742 778641695 778641695 601400868 1010632207 1010632207 1041500304 1041500304 88807496 88807496 353014600 353014600 368125496 546110484 749806413 749806413 241748733 541355402 875160843 875160843 813694976 838960692 838960692 560487735 560487735 684971084 730973273 730973273 643152720 643734289 643734289 221898540 412099933 958997799 958997799 443411862 448864598 641649574 1007354382 1007354382 719325974 719325974 369675295 735887555 819513027 819513027 679495364 60429936 135926384 135926384 11694660 25821224 127481408 127481408 85598840 87302192 87302192 76690224 354108768 354108768 581221203 778554368 1010568975 1024869678 1024869678 343992933 1005449013 1005449013 686557510 686557510 889577832 889577832 839142435 839142435 817393554 335931402 319297680 319297680 277100744 286069826 331763745 822538291 908963171 920922209 920922209 572858504 547690814 1031909267 1031909267 1028740549 503902908 598988532 598988532 917587463 917587463 411617678 411617678 487825574 487825574 487770560 473956494 408043542 437309762 437309762 533918444 533918444 507655820 507655820 416560624 320576768 320576768 100687888 385927512 385927512 295962978 122472522 508349598 508349598 328073236 192045032 299370210 441982132 441982132 49878432 115416768 115416768 361767954 361767954 310379008 310379008 281478202 64961786 219742256 219742256 168561793 608962093 608962093 104003977 739939593 739939593 586321000 93082577 804007768 804007768 713397474 713397474 977659794 977659794 868226161 814723202 285661187 247086349 740046348 740046348 920125588 920125588 889454594 864032840 840045075 969419393 969419393 498678626 813769749 813769749 560997856 399435730 291627426 546303939 560600904 1057587083 1057587083 816967366 237105546 52555954 516190444 516190444 398897560 579864593 579864593 322313010 291771024 578816320 746995486 906968099 906968099 526852291 526852291 938160544 938160544 594583588 594583588 429837890 429837890 405063942 141641538 474024072 474024072 336315540 373941402 461795034 461795034 115137774 1030623524 1030623524 892079403 138415535 343029986 343029986 348837066 820430778 820430778 194203657 377695583 844701448 1044097740 1044097740 683832272 145647809 552945349 552945349 51931517 951333424 994739776 994739776 829873059 741365934 689582592 689582592 638179685 916738560 916738560 102549803 655009136 655009136 556608801 189184644 620227345 620227345 140915488 158801084 588053536 588053536 576573105 711051402 711051402 411180288 403040262 212039531 563906199 721020885 729151910 789910940 1026041958 1026041958 995628190 771960175 771960175 889782560 889782560 829162296 811730068 726275218 726275218 285477011 423135398 423135398 206108084 206108084 157425948 724570664 724570664 607175209 778665990 778665990 621855497 539030708 908281102 908281102 711322005 711322005 571501444 0 0 335808512 335808512 725062294 862101891 862101891 809839877 722186241 320151649 891836465 127412258 379399770 1066675738 1066675738 1058277951 806724320 806724320 795722006 795722006 304312734 509849874 509849874 795141128 795141128 207643882 436856220 436856220 75344384 25691264 29360352 29360352 28927264 28818432 233523776 522357290 522357290 436609524 214044876 255413484 259269120 259269120 248511708 504448534 504448534 496257742 496257742 473169982 362856810 571134993 571134993 495982319 988485540 988485540 726416638 726416638 723387489 723387489 698552896 698552896 990873121 990873121 541113926 179453697 598088049 598088049 193864741 542048519 813085315 813085315 956648817 956648817 540740515 557793057 557793057 539507232 279049888 8578434 269490176 292685184 292685184 25297452 184497367 1024113091 1024113091 827061411 503759815 956992571 956992571 504890518 504890518 329126200 329126200 698533926 1034789068 1034789068 550986921 550986921 783034912 783034912 664087161 637805408 299570315 396498811 832898100 832898100 848246906 848246906 398343267 339481992 526247612 526247612 324601266 400803392 400803392 387042944 387042944 224047680 224047680 210488320 58069040 58069040 98937768 98937768 261156928 261156928 258398652 258398652 143054732 235583020 235583020 253664136 267538060 267538060 263552480 539158004 539158004 785638528 785638528 202684997 117180492 142761728 200677534 937476603 937476603 514350906 865381079 865381079 952699407 952699407 478543823 887562916 961882791 961882791 863914132 466157432 843247793 1037373292 1037373292 1045266347 1045266347 528544366 292454717 414618982 1037254044 1037254044 938773475 1070729709 1070729709 470127044 761796046 1059763332 1059763332 992084288 608247945 608247945 637933593 637933593 842191032 842191032 818207619 311545841 311545841 312920096 473232166 818217601 818217601 812946050 825839586 825839586 758236906 758236906 718741822 614513984 698516386 747177452 747177452 927456052 927456052 535593891 754044208 754044208 673568932 387312186 471649806 471649806 400376618 400376618 373608376 371757918 497263728 578580584 661577145 968971065 968971065 915487463 342419085 668152569 668152569 248059197 914912714 914912714 547307281 543237825 101724736 775693064 775693064 549356040 249724940 249724940 210520068 136409348 172840208 444207334 681656225 681656225 351481146 827664357 827664357 226453428 782073937 782073937 642969360 396502654 933222476 933222476 684294547 750323064 920785582 934454857 943380231 943380231 474715550 540902761 808052742 808052742 405086208 537582592 537582592 237552924 237552924 236790548 236790548 208798496 208798496 53613284 152618532 244875580 244875580 220861740 220861740 151126312 184813848 202007872 202007872 130106800 130106800 43844176 43844176 43003472 43003472 39074432 39074432 35922176 1033453408 1033453408 56017391 54525744 663753190 1047663519 1047663519 851797456 851797456 284724627 269095938 342361482 402999570 402999570 374199464 606418176 637911338 895867035 895867035 873912579 785122461 371783952 548412429 548412429 412689990 994599519 994599519 413928530 539237600 539237600 346773544 924343263 924343263 130984872 1046203846 1046203846 717608405 783934573 783934573 879831126 879831126 872579719 637915520 445279248 589443041 589443041 1000998978 1000998978 599917284 683763371 683763371 517290686 693781128 895210681 895210681 890089476 830771396 562036833 904383749 904383749 497681761 188082996 797378865 797378865 768132333 621855300 243876944 223479296 223479296 50397232 78194008 353445008 366819314 366819314 315652040 315652040 292655234 313854914 344649744 344649744 373385778 391767738 391767738 94162536 94162536 155399201 222533505 222533505 969800940 996036501 996036501 792323901 792323901 520178361 520178361 190306329 341031448 341031448 580003588 1059218876 1059218876 818789585 818789585 810734739 391185795 932775843 932775843 279300712 885522513 905080592 905547851 905547851 634988048 901465448 901465448 860548832 860548832 831598848 831598848 584082320 373054760 110872840 11458104 59714064 59714064 65606320 447362150 447362150 54117888 414182750 414182750 93196744 131749552 131749552 482919602 482919602 441789078 484841934 531441290 531441290 719473259 719473259 89157817 35528208 642777240 642777240 537920001 104858265 150117092 567940833 567940833 668355908 668355908 612405764 417782204 484836776 484836776 470551566 349250250 349250250 67666064 70699152 70699152 70259584 38415616 13618368 14889408 35786752 35786752 25921040 35153312 332697232 332697232 12405298 30382720 30382720 95487008 343410664 343410664 474397678 841637269 841637269 820793452 966514403 966514403 880837387 878778635 878778635 823512240 842007315 842007315 808214740 326650112 304898066 159469648 159469648 246502464 772940217 772940217 158544804 719979269 719979269 648945684 604916556 683333445 835344715 927695750 1062634894 1062634894 960809127 623063312 349225502 530682240 530682240 950083841 950083841 682039377 682039377 670474832 97833972 73246328 73246328 83935272 90235048 90235048 86106408 69337096 55347088 73975176 220465256 220465256 209979468 130883000 130883000 98736332 63881956 146277040 424317090 1004221591 1004221591 439394962 439394962 518571310 518571310 382606656 396776816 396776816 830298832 955749648 955749648 420211148 743863077 743863077 636821644 661686760 661686760 212387148 906739024 906739024 789113314 135792056 177096516 195557748 195557748 182260212 267829940 267829940 229842986 453096446 453096446 516237534 516237534 490782946 486852654 280880284 396084470 616638613 616638613 235201344 235201344 538758657 568609262 568609262 773885454 773885454 730098536 327155826 560506387 560506387 489395996 341132034 341132034 796579109 796579109 1069991972 1069991972 848414576 899936619 1001096603 1001096603 724098916 419830086 200156832 328210102 328210102 438578582 453958710 453958710 429539680 325402336 325402336 283648290 273228930 199303670 443089174 443089174 427819110 833912966 833912966 805457922 344547401 635328712 635328712 663905213 895360451 895360451 1021007799 1021007799 387996048 387996048 862005938 862005938 843524824 843524824 570560604 397728440 397728440 192305742 411418648 512043102 512043102 344624222 344191050 101291090 16777248 182289268 182289268 136373014 283394706 910460754 910460754 875875083 749619655 817975899 817975899 323485928 323485928 658574395 658574395 524626110 89918854 41233296 102294854 210274921 556550523 848578589 1014812495 1014812495 860914326 382216366 990478716 990478716 1041110353 1041110353 747000482 749081453 749081453 713736320 431214118 431214118 485609820 820261263 820261263 536181209 607256229 740967452 958124305 958124305 741875663 475666062 404561598 510880772 510880772 459937206 434563176 668783858 668783858 66586803 183637812 306320144 306320144 411314912 411314912 423833766 583220032 583220032 849258217 849258217 858328208 858328208 809602096 809602096 803038338 803038338 942833742 1025508114 1025508114 859923908 916247855 916247855 1021861019 1021861019 816919072 816919072 807741699 899281219 949800787 949800787 475638749 940305539 940305539 881029193 607002051 828791584 828791584 186482742 778641695 778641695 459620022 274741642 274801032 344965314 344965314 268999754 206215486 535300230 535300230 368125496 368125496 65881914 596396200 642253977 642253977 932786834 932786834 644187363 672627720 672627720 490733742 929723164 929723164 630835180 258779760 8726528 93914728 93914728 50930736 60759144 214382796 214382796 205787152 448864598 464056564 1007354382 1007354382 378367436 378367436 792839440 792839440 445278080 382595160 447272146 458802870 458802870 434766096 522421312 522421312 389936442 389936442 127309896 127309896 287691530 287691530 354108768 354108768 581221203 778554368 1010568975 1010568975 343502664 343992933 1005449013 1005449013 686557510 686557510 749735567 749735567 839142435 839142435 817393554 290328864 290328864 296268320 296268320 85705610 331763745 822538291 908963171 920922209 920922209 80290552 547690814 1031909267 1031909267 1028740549 1026371972 1026371972 598988532 917587463 917587463 350226484 403739096 403739096 487770560 487770560 408043542 408043542 437309762 437309762 155460132 155460132 173607968 416560624 416560624 64702018 25173152 402823504 402823504 184814654 528877736 528877736 508349598 508349598 328073236 192045032 299370210 441982132 441982132 153437048 153437048 115416768 361767954 361767954 99750120 41762536 34734592 114897536 114897536 147595316 257391292 608962093 608962093 265990332 739939593 739939593 713299480 767640053 804007768 804007768 713397474 713397474 977659794 977659794 849160436 33628176 2162704 9699584 11873088 318835282 722469242 722469242 270798855 302125074 302125074 192948496 192948496 498678626 498678626 488391532 399435730 399435730 291627426 164371364 482041968 482041968 331826628 310023298 325829456 325829456 317334096 398897560 398897560 278286498 322313010 322313010 291771024 578816320 578816320 81824600 128342320 128342320 622837152 1018601113 1018601113 873900804 873900804 822206499 429837890 405063942 141641538 474024072 474024072 336315540 482411092 482411092 461795034 296797026 296797026 165942914 244728494 244728494 343029986 343029986 140079620 9471520 29495520 194203657 377695583 844701448 1044097740 1044097740 683832272 68194816 68194816 67293192 67293192 951333424 951333424 817576391 951333424 951333424 542116672 542116672 78959452 976914220 976914220 193467651 655009136 655009136 834079238 834079238 620227345 620227345 140915488 51589680 810223370 810223370 611529609 711051402 711051402 489622830 489622830 412664134 563906199 721020885 729151910 729151910 1026041958 1026041958 995628190 771960175 771960175 289480832 705430809 951453201 951453201 709623936 705432597 40159632 594527636 594527636 589952040 606996133 606996133 208645133 678729649 678729649 607175209 689301024 689301024 671878149 148695989 556648531 711322005 711322005 571501444 185459827 402661924 562613335 562613335 725062294 862101891 862101891 809839877 722186241 184556085 19058976 127412258 379399770 1066675738 1066675738 1058277951 806724320 889917732 1040211082 1040211082 336089144 823123364 823123364 604247048 1027573949 1027573949 690392741 690392741 265309464 80120712 29360352 29360352 23048896 166724580 428022372 522357290 522357290 436609524 284203296 255413484 255413484 152352028 204683070 504448534 504448534 496257742 496257742 473169982 362856810 714529365 714529365 495982319 988485540 988485540 798097943 726416638 723387489 723387489 698552896 698552896 990873121 990873121 571893782 55579312 33605280 17302560 17301504 6569984 172028340 420481648 843687792 843687792 296246755 16908448 293409936 293409936 287718754 313424962 313424962 311376914 302839938 287701126 407233952 407233952 415377314 415377314 148771156 332666648 365878506 365878506 227204198 147718438 270846210 280292450 529466342 534978019 702730031 702730031 699323015 731808032 731808032 495180145 738328612 939524103 939524103 134217731 848246906 848246906 854535361 871490547 871490547 567371186 324601266 378751194 378751194 387042944 387042944 69318880 79291144 91060480 91060480 25993120 16498240 16498240 138543104 161482336 161482336 137889540 52429104 52429104 85595688 253664136 253664136 242406300 182924944 539158004 539158004 785638528 785638528 120341744 182289128 182289128 671930860 937476603 937476603 706446025 865381079 907942766 907942766 1011495045 1011495045 939599173 996147639 996147639 863914132 466157432 858441334 859886325 859886325 1019291272 1019291272 693109986 362807455 115942872 1037254044 1037254044 753872567 1070729709 1070729709 399542498 761796046 1059763332 1059763332 992084288 746678611 751267979 751267979 475056139 623166336 838195432 838195432 605801387 311545841 312920096 312920096 818217601 818217601 812946050 825839586 825839586 273814146 848739794 848739794 368333858 698516386 698516386 657272121 657272121 636807785 180847008 78779208 83467962 387312186 387312186 377753986 359909312 400376618 400376618 371447186 371757918 497263728 497263728 120327480 180363704 180363704 146762912 543465352 605738505 605738505 11535168 605296704 605296704 34128912 46661632 46661632 14421184 14421184 4752896 14633984 14633984 10485312 8959488 13574176 444207334 681656225 734267637 734267637 642653181 642653181 301824902 376501000 642969360 642969360 396502654 429526416 972307144 972307144 606874185 920785582 920785582 646394184 646394184 807986180 807986180 808052742 808052742 923677703 923677703 893973291 893973291 779091376 779091376 1042995671 1042995671 855277786 855277786 605267920 253887530 350934530 399644140 423373606 423373606 410138518 406324998 276264778 350132112 378352472 378352472 377768834 344030422 983291767 983291767 488781350 973236565 973236565 933009701 933009701 1046378773 1046378773 1047663519 1047663519 839616897 839616897 499257332 499257332 512561164 512561164 402999570 374199464 587735432 606978096 657272121 657272121 785122461 785122461 371783952 548412429 548412429 412689990 994599519 994599519 667832496 667832496 623263928 623263928 150994944 2622720 122428404 164511688 164511688 138684672 140583300 140583300 671684436 671684436 246031745 37101824 272040275 589443041 589443041 727320868 727320868 599917284 683763371 683763371 123266523 1018580834 1018580834 630321820 830771396 830771396 554227078 497751912 27377888 163415120 188082996 188082996 54651668 37871760 59270368 59270368 26269080 121995128 121995128 290514770 290514770 330728896 330728896 357163544 357163544 806987780 998713632 1049829376 1049829376 1041310239 587167074 336931338 337429508 337429508 584265800 584265800 205915825 760089252 760482477 910064111 910064111 440475706 520178361 520178361 449981016 341031448 440548006 580003588 580003588 648456792 818789585 818789585 441005066 441005066 932775843 932775843 415092504 885522513 885522513 462422508 742392424 742392424 666772425 666772425 579775537 98483064 98483064 77019648 129112648 129112648 110872840 128240128 128240128 84050000 61050976 447362150 447362150 54117888 414182750 414182750 77759000 131749552 131749552 482919602 482919602 330455664 484841934 484841934 646655984 646655984 794866068 794866068 655069241 654472249 642777240 948931529 948931529 373186284 579322857 579322857 668355908 668355908 612405764 417782204 417782204 263267196 343748156 349250250 349250250 67447370 70699152 70699152 70259584 13114272 57982832 129210176 129210176 272794808 323225778 323225778 275985210 298270914 298270914 379015448 379015448 352285986 298886890 327419164 474397678 474397678 293675106 820793452 820793452 402149420 402149420 319031346 54898178 48062080 48185040 50893360 326650112 326650112 55578098 187649360 187649360 246502464 246502464 31844832 31844832 147087652 169893942 531133490 531133490 227941400 835344715 927695750 1062634894 1062634894 960809127 245453464 349225502 530682240 530682240 950083841 950083841 682039377 777032636 777032636 254165633 219224240 77950440 77950440 75412376 66176336 69337096 69337096 18056232 73975176 130349328 130349328 256509420 256509420 249565612 153758176 236978277 258148681 424317090 1004221591 1004221591 439394962 567879393 902399113 902399113 1031399947 1031399947 396776816 867762802 867762802 865474912 548251808 743863077 743863077 679765701 679765701 661686760 523982582 906739024 906739024 789113314 210733014 274486112 408372982 483122766 483122766 267829940 267829940 243777034 453096446 453096446 516237534 516237534 101023942 27643904 27785568 319185234 616638613 616638613 429923082 429923082 538758657 568609262 568609262 849382400 849382400 730098536 572309552 555486753 489395996 489395996 341132034 341132034 335755282 335755282 302460938 302460938 514855066 514855066 201982740 343934102 420618102 441712688 441712688 328210102 328210102 178166052 453958710 453958710 429539680 325402336 325402336 283648290 273228930 199303670 673210419 726648196 810291383 810291383 941811719 941811719 344547401 1015867483 1015867483 663905213 895360451 895360451 530953397 296334388 387996048 1046491188 1046491188 1053167678 1053167678 455475298 643946921 800585817 800585817 1031324303 1031324303 802844788 313197904 313197904 52037536 52037536 543696290 676398902 676398902 136373014 283394706 910460754 910460754 875875083 749619655 817975899 817975899 372017246 512543838 821316021 821316021 524626110 228652727 876663906 876663906 438611299 897688625 900277579 1014812495 1014812495 877415459 625248424 990478716 990478716 1041110353 1041110353 747000482 749081453 749081453 330466240 330466240 250253480 283189257 820261263 820261263 643779738 607256229 953688579 953688579 892068644 741875663 585773384 585773384 510880772 510880772 459937206 390165572 390165572 26119856 28972896 183637812 306320144 306320144 411314912 411314912 423833766 817886864 853805523 853805523 849258217 868222080 868222080 328216163 945238470 945238470 803038338 942833742 1025508114 1025508114 859923908 916247855 916247855 1021861019 1021861019 690720614 687102722 807741699 807741699 949800787 949800787 475638749 272662984 351822080 351822080 115540818 2281728 2134016 2096640 2096640 1122816 706756368 706756368 374834311 344965314 344965314 268999754 263389528 535300230 535300230 328852448 35202128 35202128 874590304 885658885 971120757 971120757 932786834 563155985 672627720 824967201 824967201 998595961 998595961 630835180 258779760 111282232 211351360 211351360 259786356 259786356 439477014 544326558 544326558 939692560 939692560 606209805 606209805 647250188 828204037 828204037 792839440 254820052 175297428 447272146 458802870 458802870 434766096 976365407 1044078293 1044078293 995064792 127309896 127309896 549525057 821273216 821273216 809100002 809100002 302375280 302375280 321129094 321129094 315885762 299090464 299090464 17299488 301771264 334250896 334250896 332458146 278937808 278937808 36267008 114001288 296268320 296268320 85705610 58874160 58874160 67986928 78344368 78344368 80290552 80290552 352157720 352157720 120673730 1026371972 1026371972 443232803 1052939228 1052939228 438368860 438368860 134335066 174064020 174064020 172421794 270639302 333014240 333014240 404496966 404496966 288885636 296256736 296256736 68703144 25173152 402823504 402823504 184814654 528877736 528877736 340005954 169509596 169509596 164696100 190914996 227134332 227134332 153437048 153437048 18907200 95529888 95529888 93034280 40997504 74787720 114897536 250426808 250426808 257391292 257391292 231075408 265990332 265990332 713299480 713299480 767640053 767640053 203522573 151099734 431725394 448069170 562098209 562098209 807485474 807485474 782356572 1025569117 1025569117 478199886 890392597 890392597 817631043 871106658 871106658 98185712 104408856 232927116 232927116 228253536 228253536 164371364 164371364 164137092 156439744 306333058 310023298 325829456 325829456 317334096 272740530 278286498 278286498 271737376 11719488 34603536 574624016 574624016 104235024 104235024 349325730 870689402 1018601113 1018601113 1045825541 1045825541 939770144 939770144 842916417 842916417 433796203 85905002 85905002 482411092 713890802 891779883 891779883 870546018 420774858 420774858 244728494 846862272 846862272 1020140751 1020140751 907544091 907544091 987623127 987623127 676656455 957260245 957260245 546096193 690115044 690115044 84947228 1057832082 1057832082 575804049 951333424 951333424 588754998 542116672 157553240 976914220 976914220 523029822 704359888 876222219 876222219 834079238 403979107 379609092 360735376 681176024 810223370 810223370 611529609 542423048 542423048 489622830 489622830 412664134 339385700 229533040 682099288 682099288 728241841 800857708 800857708 228532029 92930576 9568376 100926544 951453201 993463205 993463205 870737598 870737598 594527636 594527636 760878765 760878765 606996133 208645133 678729649 678729649 573571857 689301024 689301024 671878149 18475557 0 0 457539634 457539634 185459827 402661924 562613335 562613335 282589056 559020673 591643305 605184560 605184560 303068202 904785387 44112240 44112240 701094052 701094052 324603872 324603872 889917732 1040211082 1040211082 336089144 823123364 823123364 604247048 1027573949 1027573949 695362688 695362688 265309464 80120712 12896448 12896448 26198048 166724580 428022372 428022372 174147712 284203296 284203296 22334112 61737976 84859944 325181464 325181464 470917968 470917968 153643316 202407938 422070652 714529365 714529365 462324135 847382547 847382547 798097943 445784605 444598816 546186958 621616234 621616234 570918458 571893782 571893782 771898585 771898585 642560116 642560116 604565028 172028340 420481648 843687792 843687792 868079393 868079393 807500977 547256754 287718754 313424962 313424962 311376914 302839938 287701126 407233952 657593145 665875421 665875421 466060184 806969761 806969761 395498106 227204198 517396982 517396982 678436756 907065792 907065792 702730031 702730031 699323015 731808032 731808032 495180145 738328612 1004021239 1004021239 512178270 920051540 920051540 854535361 871490547 871490547 567371186 374710272 378751194 378751194 99142952 86247720 69318880 82609760 91060480 91060480 60710128 60710128 48241312 213015424 213015424 686557404 686557404 657425721 657425721 537685773 73710008 80188696 251455532 251455532 761095628 761095628 647166297 647166297 254876121 564231120 591671985 671930860 671930860 706446025 706446025 401039439 907942766 908292749 1044062751 1044062751 1041970719 996147639 996147639 947333875 1011610767 1011610767 858441334 228102569 465650488 693109986 693109986 362807455 863552046 863552046 490622907 974362408 974362408 312236297 312236297 257456668 358575817 811970657 811970657 746678611 751267979 751267979 475056139 654922370 838195432 838195432 605801387 68093153 1383488 882688 23702560 551741730 551741730 321038635 321038635 273814146 925381691 925381691 607076016 673422913 673422913 657272121 657272121 636807785 948008709 948008709 854900786 854900786 303124946 368060456 368060456 284502978 116753440 116753440 79491600 92941376 505958408 505958408 197405336 197405336 671854824 671854824 935499643 1018708795 1018708795 585265491 240746765 785179348 785179348 46661632 711779784 711779784 537742144 180159364 169582292 169582292 169009300 173651072 408681575 408681575 734267637 734267637 537142760 373753169 301824902 376501000 376501000 376488858 384238084 418782150 972307144 972307144 606874185 575477792 575477792 646394184 892637396 892637396 807986180 504287515 504287515 923677703 923677703 893973291 893973291 779091376 779091376 1042995671 1042995671 855277786 855277786 605267920 253887530 350934530 399644140 423373606 423373606 437663293 867618911 867618911 695621485 684319941 684319941 377768834 344030422 983291767 983291767 488781350 973236565 973236565 933009701 933009701 1046378773 1046378773 985845975 985845975 1020426060 1020426060 499257332 499257332 512561164 512561164 310863066 142689283 889834249 889834249 657272121 657272121 622626730 889979691 889979691 303877650 303877650 70345490 387974160 387974160 667832496 818537667 828531841 828531841 874869888 874869888 1012506077 1012506077 210844217 207686494 928914402 928914402 441815797 852701534 852701534 1035703505 1035703505 536977713 26403664 87414824 87414824 791445784 791445784 384304525 687910431 1018580834 1018580834 538637926 538637926 279627052 497751912 497751912 152115272 263605060 263605060 154410768 51147892 11585344 156592240 156592240 189355872 189355872 121995128 290514770 290514770 286343912 289529986 357163544 357163544 806987780 998713632 1049829376 1049829376 1041310239 587167074 277803172 337429508 337429508 584265800 584265800 205915825 760089252 760482477 910064111 910064111 813722214 813722214 449981016 449981016 225923090 440548006 440548006 102181632 102181632 343270792 369697818 441005066 441005066 271549146 415092504 415092504 373083930 462422508 462422508 742392424 742392424 26214400 3009792 3009792 98483064 113019808 130598136 130598136 126824824 91150112 128240128 128240128 84050000 61050976 9638256 16986144 21050048 21050048 95015712 624109313 624109313 591975648 1006716383 1006716383 969081729 969081729 949097031 783560370 783560370 794866068 794866068 655069241 654472249 288057007 948931529 948931529 373186284 579322857 666281352 666281352 506635150 506635150 277229912 231117766 185672244 185672244 270936208 439360274 512756184 512756184 209715844 209715844 134527556 57982832 129210176 253087896 417546232 417546232 323225778 275985210 298270914 298270914 379015448 379015448 352285986 298886890 298886890 81561192 252919504 252919504 577883716 577883716 325248768 325248768 271580418 222048298 304685604 304685604 329181014 329181014 294817664 55578098 273248066 414010625 776276373 776276373 401424823 401424823 258061152 641046020 641046020 629984361 227941400 151968804 487450788 942082219 942082219 555845667 555845667 104857936 136840580 138937476 755499128 755499128 218629164 777032636 777032636 254165633 219224240 77950440 77950440 75412376 66176336 46302868 169233028 169233028 316517078 316517078 217739016 256509420 256509420 380119192 380119192 335612184 335612184 258148681 714912733 714912733 474282000 567879393 902399113 902399113 1031399947 1031399947 355186976 867762802 867762802 865474912 548251808 548251808 561910980 679765701 679765701 963114088 963114088 523982582 521648778 521648778 210733014 274486112 408372982 483122766 483122766 449451222 449451222 243777034 243777034 535120932 535120932 526698942 107759926 319386768 319386768 142855652 369837968 369837968 574496986 574496986 67634184 67634184 277513312 849382400 849382400 572309552 572309552 680622541 680622541 367186410 84696514 299992080 1011702341 1011702341 1013348444 1013348444 1039997307 1039997307 1003094819 1062786068 1062786068 441712688 441712688 187175408 187175408 174462272 56613744 56613744 52577024 17035296 26288864 26288864 12640320 12640320 673210419 726648196 810291383 810291383 941811719 941811719 606915849 1015867483 1015867483 740695070 402468858 696251274 737315980 737315980 469755778 1046491188 1046491188 1053167678 1053167678 873728523 655467362 800585817 800585817 1031324303 1031324303 802844788 313197904 313197904 75374472 75111296 671610933 676398902 710529572 710529572 895566266 895566266 867460476 584340970 584340970 518817497 371460378 372017246 512543838 821316021 821316021 209406565 273195218 876663906 876663906 438611299 897688625 900277579 900277579 910759081 910759081 642438297 342934410 609239280 841007693 841007693 769525855 787355645 787355645 604698029 330466240 226870532 417358016 417358016 643779738 1041874422 1041874422 981988442 981988442 1044390956 1044390956 742706343 592464027 650191522 1004985515 1004985515 738359804 377261120 811441232 811441232 827605698 827605698 304087056 849125104 849125104 141054225 817886864 853805523 853805523 95195208 868222080 868222080 328216163 945238470 945238470 166256100 352601548 352601548 281202882 538844864 549454017 549454017 346165250 450176266 450176266 441635478 13842134 135622736 177658452 336641668 446068806 475569672 475569672 351822080 115540818 345810944 345810944 440137334 562673670 562673670 706756368 706756368 374834311 308730264 252103754 734407377 734407377 533670931 533670931 328852448 718324225 718324225 874590304 885658885 971120757 971120757 213390245 211485586 101857344 824967201 824967201 998595961 998595961 604207180 65472528 111282232 211351360 211351360 259786356 609818770 908017179 908017179 849227275 939692560 939692560 606209805 606209805 647250188 828204037 828204037 254820052 254820052 175297428 652275773 652275773 196306400 654918473 976365407 1044078293 1044078293 995064792 227198220 682312820 682312820 821273216 821273216 1072457274 1072457274 302375280 419504166 419504166 433259666 433259666 407373010 404444688 162256998 418023426 418023426 334250896 307233426 49302450 328010896 328010896 297951280 297951280 31593792 285331968 299941952 299941952 44056832 44056832 12593424 12593424 3544592 3544592 2780688 37223184 169558356 169558356 720555716 1052939228 1052939228 438368860 500666856 500666856 234017772 521228680 521228680 519610510 519610510 416368596 404496966 404496966 288885636 296256736 296256736 68703144 23778720 29412352 30149856 67913736 67913736 211947656 211947656 169509596 404767558 404767558 277921792 273209700 273209700 309211418 309211418 290755456 345938530 345938530 367271306 391778586 391778586 353632280 486619210 486619210 346163772 199381200 150260004 44351764 73570304 73570304 38661264 138429696 141084036 141084036 151099734 431725394 448069170 562098209 562098209 807485474 807485474 782356572 1025569117 1025569117 478199886 890392597 890392597 817631043 871106658 871106658 484383370 339416088 327117704 357010208 357010208 281497058 298741792 298741792 7554256 45872976 49921824 49921824 51664736 51664736 49201536 133477016 133477016 113672440 113672440 98859176 654608504 654608504 574624016 539113929 104235024 821269481 870689402 1004999610 1004999610 1045825541 1045825541 939770144 939770144 842916417 842916417 433796203 85905002 85905002 207545656 713890802 891779883 891779883 870546018 694947237 420774858 370118795 856037472 856037472 1020140751 1020140751 907544091 907544091 987623127 987623127 826831619 957260245 957260245 664534649 690115044 690115044 84947228 1057832082 1057832082 700549930 624362867 624362867 695506490 695506490 616586088 157553240 116278094 523029822 704359888 876222219 876222219 904207482 904207482 768164013 950019497 978379732 978379732 839459923 839459923 146000900 146000900 11130176 210710296 210710296 825766690 825766690 622460948 944422913 944422913 800857708 800857708 714552164 680462702 902103437 902103437 826939764 993463205 993463205 870737598 870737598 808267011 519931707 760878765 760878765 551823972 104661832 254129972 572572160 573571857 617376569 617376569 189710756 152179829 569377233 989004359 989004359 691012148 65153142 303368240 303368240 268730882 188949444 559020673 591643305 605184560 605184560 363365192 904785387 42305984 42305984 701094052 701094052 324603872 324603872 272174946 135871542 23274624 0 0 839087360 839087360 461681459 152569012 695362688 695362688 156342033 21516288 29746592 29746592 26198048 26198048 8648000 320880674 320880674 33841684 30341312 141575332 141575332 135927300 325181464 325181464 478693888 480038478 480038478 511986256 511986256 694175828 694175828 302285328 302285328 630468672 660013842 1029770196 1029770196 620767561 620767561 63963888 151640208 209942326 530633158 832621156 832621156 642560116 672442797 721675547 947850919 1024597377 1024597377 907167929 868079393 868079393 807500977 547256754 805561475 805930243 841955344 841955344 16 106496 160189446 657593145 665875421 665875421 538581073 867195697 867195697 818202218 292779426 517396982 517396982 678436756 907065792 907065792 385351742 520095706 520095706 176428824 573429564 573429564 487481535 1004021239 1004021239 512178270 920051540 920051540 602910577 1019438898 1019438898 374710272 502389998 502389998 229921730 131925292 245414172 245414172 175297428 82609760 81281872 96556376 546835729 546835729 213015424 738215621 738215621 686557404 657425721 657425721 537685773 546042945 576691201 642164400 642164400 761095628 761095628 647166297 647166297 254876121 564231120 591671985 591671985 132830712 669172064 669172064 834815114 834815114 908292749 1044062751 1044062751 1041970719 881061963 947333875 947333875 1011610767 1011610767 359789139 735628558 735628558 182732175 132532670 438557639 863552046 863552046 490622907 974362408 974362408 830806399 846550835 846550835 722080821 722080821 612647346 459456621 335751236 335751236 82035046 654922370 654922370 569402905 569402905 268519985 306414752 306414752 819354849 830623168 830623168 623650480 623650480 114775744 925381691 925381691 607076016 673422913 673422913 471956616 471956616 198862949 948008709 948008709 854900786 854900786 303124946 368060456 368060456 390324840 390324840 357894608 588699721 588699721 977285995 977285995 904544349 904544349 814300168 941618308 941618308 1018708795 1018708795 585265491 240746765 785179348 785179348 637799001 711779784 711779784 537742144 180159364 169582292 169582292 169009300 173651072 324794020 324794020 462347626 537142760 813856288 813856288 45664080 45664080 43115088 43115088 76095761 103550232 139790756 232007744 232007744 108929672 48310828 532849765 892637396 892637396 371665633 404885766 404885766 269092100 274802596 537131008 537131008 536871040 25716192 25716192 179930336 181430100 183584084 184849536 184849536 135267188 78401216 78401216 33431520 437663293 867618911 867618911 695621485 684319941 684319941 644985748 644985748 788619400 788619400 725663925 692134445 606126345 606126345 975752118 975752118 678859582 693637515 693637515 1020426060 1020426060 605279241 571084804 476926876 476926876 223414364 529098860 889834249 889834249 537673728 628146345 628146345 889979691 889979691 731144260 714297933 722174029 722174029 369681242 354605543 818537667 828531841 828531841 874869888 874869888 1012506077 1012506077 941108437 984164167 984164167 928914402 853616837 852701534 852701534 1035703505 1035703505 875733955 580051809 388674686 1015682127 1015682127 791445784 568345758 687910431 687910431 35701008 495048197 899364459 899364459 543184270 152115272 152115272 263605060 263605060 154410768 84890872 33598976 156592240 156592240 189355872 189355872 44866752 36395200 33603600 33849632 33849632 19138848 18876416 18941984 18941984 17182720 16979968 16850976 16785408 0 962796926 962796926 650980569 682075732 682075732 651812094 651812094 753029524 753029524 813722214 826410179 826410179 536580408 432803490 772830666 772830666 102181632 102181632 343270792 369697818 369697818 476176665 977272983 977272983 343237444 614483999 614483999 44089680 108020424 560124192 637715145 637715145 598786929 122344416 122344416 130598136 130598136 91150112 91150112 69544200 12955464 60180784 60180784 412404022 412404022 66765472 424695230 424695230 624109313 624109313 591975648 1006716383 1006716383 969081729 969081729 949097031 783560370 783560370 638742496 660771797 660771797 1040269787 1040269787 160180484 160180484 141762192 778676373 890967370 890967370 834917222 834917222 443288982 443288982 421576998 421576998 270936208 439360274 512756184 512756184 209715844 209715844 134527556 17056096 118427648 253087896 417546232 417546232 252917298 221303048 221303048 100396672 100396672 94771560 18139680 27346976 81561192 81561192 252919504 252919504 577883716 701879612 701879612 438569238 438569238 222048298 437010592 437010592 329181014 329181014 186477152 6532930 273248066 414010625 776276373 776276373 613687618 875899659 875899659 641046020 641046020 629984361 417352316 261390790 487450788 942082219 942082219 555845667 555845667 470950594 519045340 519045340 417335414 599526049 599526049 678692004 678692004 91338773 88107080 102357896 687143613 687143613 46800400 743108461 743108461 169233028 316517078 316517078 937769200 937769200 790700349 975264063 1015261530 1015261530 335612184 458566326 470649568 474282000 474282000 193218238 367050752 367050752 155206126 76546136 57311568 61075824 61075824 602150304 602150304 572909841 166298916 16042944 540914288 963114088 963114088 437991284 436094692 436094692 210764364 210764364 77342284 47318416 313136836 449451222 449451222 184587474 50380848 535120932 535120932 526698942 277086280 319386768 319386768 341101194 369837968 369837968 574496986 574496986 97273952 75535488 75535488 25561120 546327809 546327809 471969540 680622541 680622541 348273608 348273608 288227330 1011702341 1011702341 1013348444 1013348444 1039997307 1039997307 1003094819 1062786068 1062786068 169779924 404689302 404689302 174462272 174462272 170473408 423282144 423282144 272242434 277670080 289530914 303900580 303900580 432695360 533346464 533346464 276213502 713694557 848138496 848138496 680403211 1055089616 1055089616 730250060 730250060 1070738411 1070738411 933509603 1020982987 1020982987 965878368 965878368 873728523 655467362 477106570 507976078 507976078 200686166 236065308 236065308 207105428 75374472 75111296 671610933 671610933 723648532 723648532 895566266 895566266 867460476 133597954 103039169 160219521 160219521 223085972 223085972 183009448 289027092 289027092 1066549748 1066549748 534959156 534959156 321422680 866961664 866961664 910759081 910759081 642438297 634524393 634524393 953680926 953680926 769525855 787355645 787355645 604698029 56712272 138420322 417358016 1009372172 1009372172 1041874422 1041874422 981988442 981988442 1044390956 1044390956 958450981 866976972 866976972 1004985515 1021707500 1021707500 817890432 817890432 811441232 957748836 957748836 431642277 849125104 849125104 141054225 135865860 1031793396 1031793396 95195208 368071592 368071592 52041264 395591532 701529087 701529087 699597256 1025714334 1025714334 461484212 461484212 439039254 708162313 708162313 471108115 609867848 879886979 879886979 812046723 812046723 473912072 475569672 475569672 343975552 348694858 562574251 562574251 830474312 830474312 562673670 727083157 727083157 742817802 815030796 815030796 734407377 734407377 583479536 583479536 414057420 718324225 718324225 417354408 763494883 763494883 109389912 109389912 101857344 335545386 335545386 352845834 352845834 103345408 151664956 151664956 109125720 543408601 543408601 67377184 684071149 908017179 908017179 849227275 521864680 704779808 704779808 688395809 538519041 450608240 810314775 810314775 867131110 884736955 884736955 819655124 196306400 654918473 797670454 797670454 738596877 227198220 227198220 682312820 682312820 412259648 412259648 1072457274 1072457274 297363984 419504166 419504166 433259666 433259666 407373010 404444688 162256998 418023426 418023426 328892450 307233426 46458832 328010896 328010896 297951280 297951280 22086144 285331968 299941952 299941952 42164224 38401472 42475904 42475904 104804872 104804872 457540902 457540902 355363058 355363058 720555716 720555716 454001399 394413284 500666856 500666856 234017772 521228680 521228680 519610510 519610510 416368596 124333722 165187522 165187522 491680104 491680104 336334602 309705384 309705384 511828062 511828062 361314464 211947656 478174844 478174844 404767558 404767558 277921792 273209700 454454948 454454948 309211418 290755456 345938530 345938530 372509272 391778586 391778586 353632280 486619210 486619210 346163772 263193468 263193468 72751604 73570304 73570304 38661264 56972064 626929824 626929824 36064649 37273056 37273056 33751040 33763344 33763344 42574160 42574160 292690040 349445080 349445080 291916464 337066362 348793858 402073722 501628330 501628330 377369380 327117704 357010208 357010208 281497058 298741792 298741792 445153280 445153280 311131456 311131456 14798930 10655744 24717056 133477016 133477016 607947913 650905946 814008387 814008387 654608504 554080290 554080290 567548513 821269481 821269481 1004999610 1004999610 397583710 162393444 403522148 718171142 718171142 191442052 191442052 71860864 122733240 962352394 962352394 152841876 308857744 694947237 694947237 370118795 370118795 856037472 856037472 470126203 400165107 400165107 546377796 704851989 704851989 826831619 826831619 979041595 979041595 424949684 147216389 186419060 573840168 700549930 700549930 311585076 336069284 695506490 695506490 616586088 262758536 262758536 449289256 599777076 924849207 924849207 904207482 904207482 768164013 1010382325 1010382325 978379732 839459923 839459923 862911650 862911650 26248736 26248736 21946528 825766690 825766690 622460948 944422913 944422913 493361866 714552164 714552164 680462702 902103437 902103437 1023552104 1023552104 401025147 606746634 808267011 808267011 336008457 112209680 112209680 106628488 104661832 104661832 52036400 52036400 617376569 617376569 65929440 152179829 569377233 989004359 989004359 691012148 65153142 163762404 163762404 139795012 188949444 188949444 65247712 96511480 363365192 363365192 841733834 135373153 603852787 968020839 968020839 965211910 857317056 857317056 231365005 134340612 322486788 322486788 839087360 839087360 461681459 177840853 576577860 576577860 77243504 59332168 29746592 29746592 26199552 184665396 195581204 320880674 320880674 38953092 167613120 167613120 198061876 198061876 273984790 273984790 478693888 480038478 480038478 511986256 511986256 694175828 694175828 510363351 900216723 900216723 660013842 1029770196 1029770196 620767561 620767561 1032992885 1032992885 873655861 873655861 832621156 832621156 161363913 672442797 721675547 947850919 1024597377 1024597377 907167929 358151691 292853539 117605683 63047954 805561475 805930243 841955344 841955344 327284659 315667154 315667154 315624560 657964960 657964960 538581073 867195697 867195697 818202218 292779426 292779426 408780780 408780780 106152802 385351742 971381223 971381223 863709517 438975326 573429564 680777256 763962477 763962477 757008415 757008415 524461364 705077825 705077825 1019438898 1019438898 698696210 502389998 502389998 229921730 190236576 245414172 245414172 175297428 248837584 248837584 184746308 546835729 546835729 238552656 738215621 738215621 549330753 549330753 213133912 213133912 546042945 576691201 642164400 642164400 626486608 240083232 240083232 113510616 113510616 193490848 395808554 395808554 447004870 669172064 862054681 862054681 834815114 638570545 677959109 686436401 686436401 975983798 975983798 672288783 949187473 949187473 665568080 735628558 735628558 182732175 466061510 466061510 952316103 952316103 254091008 254091008 115899204 830806399 970794020 970794020 722080821 722080821 835178610 835178610 754974765 340207637 323096754 536873377 643250841 643250841 569402905 268519985 306414752 306414752 819354849 830623168 830623168 623650480 623650480 475361174 475361174 518497176 518497176 466870854 323584600 471956616 471956616 397246374 491307414 493629310 493629310 385400244 385400244 317275224 317275224 390324840 390324840 357894608 1026624278 1026624278 977285995 977285995 904544349 904544349 814300168 941618308 941618308 875140097 872988683 787899667 676805253 782200476 782200476 637799001 637799001 156518757 42373856 57841600 57841600 28960608 28960608 142119666 423807569 990644231 990644231 575194509 813856288 813856288 109083184 563270296 576191121 819363987 819363987 837493982 837493982 365307137 108929672 162918772 162918772 868997593 868997593 684591142 430834950 206506374 173880724 541315860 829695249 829695249 537131008 201837725 249045707 484696518 484696518 880744966 880744966 670696304 117736134 437299986 504067444 523498302 523498302 352910944 352910944 293605408 293605408 272838786 310517968 644985748 721962528 788619400 788619400 725663925 941779825 1043733371 1043733371 975752118 975752118 856981666 729308690 693637515 471111067 605279241 605279241 571084804 503464946 526335952 526335952 529098860 529098860 413638952 609275528 628146345 628146345 622854441 731144260 731144260 714297933 722174029 722174029 207044873 232141541 692923557 705538181 721807413 721807413 420282376 420282376 343935000 941108437 984164167 984164167 853616837 853616837 67933984 52210776 393865146 875733955 875733955 856163379 670787547 1015682127 1015682127 568377825 568345758 568345758 915295992 915295992 495048197 899364459 899364459 543184270 431502824 88080648 233498624 233498624 84890872 84890872 48801104 47260176 47260176 46851344 46851344 44866752 33876048 33603600 81833880 378098952 378098952 286785968 929575350 929575350 857739424 704003601 874382688 874382688 496766574 962796926 962796926 785974415 785974415 754790349 964702122 964702122 753029524 753029524 699153847 826410179 826410179 536580408 432803490 772830666 942986945 942986945 277484610 278595138 278595138 344139272 476176665 977272983 977272983 1012959553 1012959553 1010329188 1002881704 970987848 970987848 637715145 637715145 915504522 924347680 924347680 831333107 633080752 380462720 62440960 62440960 33834080 65094320 65094320 412404022 412404022 66765472 424695230 424695230 131801072 537184768 537184768 578925076 680710725 680710725 574170897 574170897 668516600 768655904 768655904 751407756 660771797 1040269787 1040269787 605706049 605706049 359904914 778676373 890967370 890967370 834917222 834917222 802861853 443288982 421576998 421576998 149986304 548446291 548446291 579422996 681838084 681838084 257030968 257030968 118427648 118427648 307171560 307171560 122324098 104906904 34762888 273066304 341719938 341719938 153102850 498909734 498909734 92701838 563837605 563837605 463238992 918669066 918669066 438569238 438569238 454138584 454138584 672207264 693838116 693838116 172150704 34284688 37556048 149957778 412164678 412164678 613687618 875899659 875899659 304134665 205284966 883825622 1040324372 1040324372 554439810 750963938 750963938 201396244 248124636 613467996 681098205 681098205 547219441 599526049 599526049 678692004 678692004 219626028 138484392 102357896 687143613 687143613 46800400 743108461 743108461 543236481 196881720 918238672 937769200 937769200 790700349 975264063 1015261530 1015261530 303397012 458566326 470649568 470649568 465699870 465699870 367050752 367050752 226525768 76562540 57311568 61075824 61075824 602150304 602150304 572909841 274957202 41058480 540914288 889197032 889197032 437991284 436094692 436094692 210764364 210764364 211422560 221649708 366959152 469762038 469762038 341958412 478954520 478954520 354495586 337733978 337733978 44453888 386887650 386887650 341101194 343276704 851433720 851433720 97273952 75535488 75535488 25561120 269747522 554190656 554190656 356952360 95051274 348273608 352525504 352525504 288227330 10350144 360779912 360779912 25663586 98134026 350351976 350351976 172672448 169779924 404689302 404689302 140121348 170473408 170473408 423282144 423282144 272242434 277670080 289530914 303900580 303900580 432695360 533346464 533346464 303203858 713694557 848138496 848138496 680403211 1055089616 1055089616 1003682804 730250060 1070738411 1070738411 933509603 933509603 549797506 464640912 464640912 321323554 313611090 477106570 507976078 507976078 167831572 167831572 207105428 207105428 38409360 56978992 56978992 660480 723648532 723648532 134222133 570802432 570802432 721528896 721528896 362875095 151068708 222891076 222891076 539755708 539755708 352859157 1066549748 1066549748 963174533 963174533 548017473 548017473 548017473 592956073 592956073 633344512 866597713 866597713 953680926 953680926 454348432 454348432 437923184 437923184 56712272 22069920 277184843 1009372172 1009372172 950327691 966330987 1015123535 1015123535 730716260 958450981 958450981 866976972 866976972 664876460 1021707500 1021707500 817890432 817890432 587279984 957748836 957748836 431642277 808410304 808410304 418874515 575211172 1031793396 1031793396 752905146 934457096 934457096 52041264 395591532 701529087 701529087 699597256 1025714334 1025714334 460204252 460204252 439039254 708162313 708162313 814899017 814899017 879886979 879886979 812046723 844368791 844368791 745327194 482713094 413814538 348694858 562574251 562574251 830474312 947915776 948702279 962418343 962418343 948696135 815030796 815030796 571608436 958342840 958342840 583479536 414057420 414057420 245630153 94507368 21701888 34290888 109389912 352992418 352992418 500516715 585935381 709968513 709968513 681238149 571763276 151664956 109125720 543408601 543408601 67377184 684071149 684071149 467738640 467738640 521864680 704779808 704779808 877207715 877207715 739931934 810314775 810314775 867131110 884736955 884736955 819655124 557052081 478268936 797670454 797670454 738596877 659826866 22825611 191942288 876718726 876718726 610476041 608383113 626798663 977797527 977797527 828646870 191826384 191826384 196880352 196880352 168990276 14308820 322437200 322437200 326108240 326108240 42468274 19138848 272662528 286331650 286331650 272540160 272540160 37858434 11712192 608613465 608613465 676103876 676103876 605941257 457540902 576327812 576327812 772265492 772265492 674020369 842946298 842946298 188664304 172247364 80943480 88183368 257317608 257317608 241738444 226035088 150994980 340265928 448083402 491680104 491680104 336334602 309705384 309705384 511828062 511828062 361314464 138812640 478174844 478174844 323199314 323199314 244003932 244003932 454454948 454454948 256935082 29520160 400925744 400925744 372509272 372509272 278921538 102105296 102105296 81140424 167041473 689050149 689050149 100829889 218587148 797810229 797810229 763497569 748170792 761211908 761211908 578251044 169738496 169738496 154229216 689593573 689593573 42574160 139761552 143580228 462245140 462245140 351404816 381817050 381817050 501628330 501628330 377369380 39895440 159814128 281152512 281152512 155685044 182990992 445153280 445153280 311131456 311131456 66051824 66051824 320593490 320593490 79490312 607947913 650905946 814008387 814008387 646581304 836378219 836378219 630264547 630264547 351888265 676634958 676634958 223398735 769557244 769557244 718171142 718171142 675840645 675840645 457783172 410735108 962352394 962352394 152841876 308857744 308857744 289607954 421175824 421175824 280990308 423020518 841236706 841236706 61217922 616769876 616769876 465282954 465282954 792630691 979041595 979041595 424949684 147216389 685299008 685299008 1036264280 1036264280 462809718 821732132 821732132 692197273 54829456 262758536 262758536 449289256 599777076 924849207 924849207 316749057 357659314 511357918 1010382325 1010382325 177956833 435424166 728227904 862911650 862911650 43156704 63703776 64921312 64921312 43263056 43263056 203426900 244452664 651107544 651107544 646131801 199131217 762256599 762256599 1023552104 1023552104 516224663 878185632 878185632 668079033 668079033 628122673 613431840 613431840 50331936 50331936 52036400 52036400 51192384 56624208 56624208 328926002 328926002 299431858 299431858 279548928 26845488 48015504 48015504 270270480 270270480 54610066 51676944 51676944 7889552 72922130 841733834 135373153 603852787 968020839 968020839 965211910 1064049341 1064049341 793056291 793056291 371060250 861933610 861933610 624488089 214977278 214977278 576577860 576577860 208084048 59332168 28886880 26199552 26199552 184665396 195581204 195581204 47656448 38953092 167613120 167613120 198061876 198061876 134729444 279130114 279130114 343935128 374154370 374156442 419487757 419487757 411943213 510363351 900216723 900216723 470222904 758530060 758530060 198731904 198731904 1032992885 1032992885 873655861 873655861 985172334 985172334 339415435 240963228 240963228 144042564 144042564 601954290 601954290 313151570 313151570 63047954 63047954 46158514 20320160 573001842 573001842 327284659 315667154 315667154 315624560 657964960 657964960 538391808 2832897 553248504 553248504 122494249 271681600 302240170 302240170 115999058 325193142 971381223 971381223 863709517 438975326 604085436 1021088782 1021088782 944972002 973201882 973201882 549192405 705077825 705077825 698570066 698696210 698696210 446180988 446180988 375165980 468524840 468524840 244465684 244465684 248837584 248837584 184746308 184746308 238552656 238552656 238290688 238290688 739036252 739036252 213133912 213133912 8652864 134357184 134357184 230936144 230936144 240083232 240083232 113510616 137207968 597977860 597977860 395808554 447004870 640143708 862054681 862054681 553854272 740492656 797652093 797652093 686436401 975983798 975983798 672288783 303829525 665568080 665568080 622515753 272082023 115818660 466061510 466061510 952316103 952316103 315252848 236547224 674531904 721815665 970794020 970794020 707830850 707830850 835178610 835178610 754974765 340207637 622072504 622072504 643250841 643250841 109706193 540904240 540904240 294785794 294785794 444665588 444665588 481341466 481341466 475361174 475361174 518497176 518497176 48300052 323584600 323584600 277337980 397246374 491307414 493629310 493629310 386672218 386672218 266802326 424998658 424998658 301386290 308940642 1026624278 1026624278 480383060 480383060 481168384 481168384 480383310 597962804 875140097 875140097 872988683 787899667 676805253 575905877 114514585 42206280 49122384 49122384 42373856 57841600 57841600 14194368 9963072 7914304 423807569 990644231 990644231 575194509 719368736 719368736 109083184 563270296 576191121 819363987 819363987 837493982 837493982 586554417 85197312 390393435 902942545 902942545 868997593 599805933 607704720 607704720 1066929216 1066929216 829695249 829695249 438492833 201837725 249045707 484696518 484696518 880744966 880744966 670696304 117736134 437299986 504067444 523498302 523498302 230238014 144572987 404231748 883378147 883378147 808301020 808301020 721962528 721962528 597237952 597237952 941779825 1043733371 1043733371 631556040 856981666 856981666 729308690 231643472 276405332 304609554 440942042 440942042 503464946 526335952 526335952 328360672 776841769 776841769 774753281 610815145 622854441 622854441 101311512 252545060 252545060 712230152 712230152 69788053 768001636 768001636 756537388 738466696 282288011 744072909 1037276233 1037276233 343935000 310642770 206570124 206570124 96291696 123344880 123344880 393865146 648586960 856163379 856163379 670787547 640962057 640962057 568377825 327763185 357402696 915295992 915295992 656431309 656431309 279598596 431502824 431502824 228324972 228324972 170127636 233277480 233277480 138560576 138560576 11989824 11989824 39697728 44518992 389587344 389587344 81833880 378098952 378098952 286785968 929575350 929575350 857739424 704003601 874382688 874382688 496766574 309205926 309205926 785974415 785974415 754790349 964702122 964702122 208865972 208865972 190067596 90626472 529530896 1030901984 1030901984 963826599 942986945 942986945 277484610 278595138 278595138 840510464 840510464 465764902 960856105 1012959553 1012959553 1010329188 1002881704 970987848 970987848 634220009 634220009 915504522 924347680 924347680 831333107 633080752 380462720 340806056 269484208 304136920 304136920 65094320 93959800 93959800 81728536 279391104 309665858 843318489 843318489 617299160 616304457 607978305 540091137 203949324 600343600 600343600 794346749 794346749 756633816 555922053 237121864 205717848 605706049 605706049 386624400 546030537 641785107 641785107 442708374 802861853 802861853 688449556 723591345 723591345 411481616 548446291 548446291 887363218 1012674212 1012674212 1024594589 1024594589 96735336 239438360 323376308 520992778 520992778 508635806 504722202 273066304 344573890 344573890 153102850 498909734 498909734 92701838 563837605 563837605 463238992 918669066 918669066 641018649 790939965 790939965 813288320 813288320 693838116 693838116 41964562 284730576 314632722 444424209 714606165 987800791 987800791 386141118 517221337 517221337 205284966 883825622 1040324372 1040324372 554439810 750963938 750963938 55629382 248124636 613467996 681098205 681098205 598759684 598759684 199286232 174512532 219626028 219626028 138484392 254570057 648198204 648198204 124380600 619981384 619981384 1012055916 1012055916 918238672 918238672 322962379 239548572 898570420 898570420 962750604 962750604 610634500 610634500 390431013 465699870 671811305 1011360879 1011360879 281542702 767881545 870518384 870518384 830856945 830856945 582387953 537675953 537675953 584577680 584577680 889197032 889197032 889505835 1034044862 1034044862 427487036 427487036 416129942 416129942 366959152 469762038 469762038 384336066 478954520 564282739 564282739 374143418 933349642 933349642 868295139 386887650 572848665 572848665 851433720 851433720 559766112 17309696 554696704 554696704 75546697 554190656 624749832 634769128 634769128 99291144 352525504 352525504 349275658 82846144 360779912 360779912 282810048 98134026 350351976 350351976 172672448 67294940 140700672 140700672 138174468 145626948 145626948 4158468 272608768 272608768 291083680 291083680 270541600 286335522 295757440 295757440 268471936 303203858 308068882 919425416 919425416 335904344 935234032 1003682804 1003682804 380715107 261691300 261691300 194512500 194512500 320874752 320874752 321323554 321323554 502308902 502308902 176173462 169005588 168944148 175662428 175662428 385430088 385430088 274360960 539397761 539397761 574545040 574545040 912359818 912359818 576946612 885033150 905970128 905970128 151068708 222891076 222891076 539755708 539755708 604222536 604222536 519241939 963174533 963174533 548017473 548017473 548017473 592956073 592956073 578239226 866597713 866597713 601844040 96994536 96994536 13767360 411041792 411041792 271843940 204872014 162405732 273425417 950327691 950327691 966330987 1015123535 1015123535 346477829 25814112 67373064 136452096 136579332 136579332 139002240 139002240 90842500 538709505 587279984 587279984 151322624 178262788 808410304 808410304 418874515 575211172 575211172 752905146 752905146 934457096 934457096 852777554 852777554 323877616 312053968 959977864 959977864 946215303 946215303 424880929 340820606 785284136 785284136 814899017 814899017 304355354 402710534 779387414 844368791 844368791 745327194 482713094 413814538 339787914 364423400 364423400 5581440 947915776 948702279 962418343 962418343 948696135 22104256 286695817 405014756 958342840 958342840 402654291 415896658 614479258 948121671 948121671 719532227 50548931 415761606 415761606 416944880 500516715 585935381 709968513 709968513 681238149 664570945 664570945 230797952 613148693 613148693 39847056 514033359 593094321 593094321 559894048 510527664 852042284 852042284 877207715 877207715 739931934 739931934 524813502 524813502 376578276 802852888 802852888 557052081 478268936 478268936 437520918 659826866 659826866 176767525 584655312 876718726 876718726 610476041 608383113 626798663 977797527 977797527 828646870 444860112 444860112 408622724 408622724 168990276 331736018 331736018 325108146 326108240 326108240 313639122 313639122 315175378 315175378 300298800 271893410 314045184 314045184 303118978 608613465 608613465 676103876 676103876 605941257 74942345 576327812 576327812 772265492 772265492 674020369 842946298 842946298 404095594 49484480 80943480 80943480 257317608 257317608 226035088 226035088 150994980 340265928 448083402 448083402 332995392 332995392 110050392 101909720 14094872 43593728 43593728 101654608 269168144 269168144 4199040 34734720 38797968 38797968 299577522 299577522 285353682 29520160 400925744 400925744 336407562 289479050 210507206 111281256 111281256 502716956 502716956 689050149 689050149 100829889 218587148 797810229 797810229 763497569 748170792 761211908 761211908 737307968 737307968 189123585 154229216 689593573 689593573 191512800 177246308 153108784 462245140 462245140 351404816 381817050 381817050 326117904 324467464 324467464 259369108 244364520 281152512 322015952 322015952 268992848 205029552 454035318 454035318 237976860 237976860 214424818 320593490 320593490 79490312 350277602 350277602 68683272 646581304 646581304 836378219 836378219 630264547 630264547 351888265 676634958 676634958 365401640 769557244 769557244 638671266 588233612 795048960 795048960 457783172 410735108 559030303 692220045 843247651 843247651 778381725 778381725 421175824 472250857 472250857 423020518 841236706 841236706 61217922 616769876 955542533 989591511 989591511 674204370 611595312 994265398 994265398 543684993 685299008 994033551 1036264280 1036264280 462809718 821732132 821732132 707953200 707953200 735350277 736150005 736150005 463784310 847434102 847434102 277644305 638782756 758959917 758959917 211137813 179836704 63045872 47448088 89135784 139992276 207139992 207139992 206957196 173099032 43263056 43263056 722899476 722899476 651107544 651107544 646131801 199131217 762256599 762256599 992183214 992183214 773535261 878185632 878185632 842861832 842861832 632024705 632024705 613431840 86429888 84958528 549587121 549587121 57088192 546751009 546751009 863875491 863875491 330371104 573617571 573617571 571514915 283825602 848800273 848800273 983934229 983934229 313313280 570949969 570949969 798538820 798538820 0 172936342 253185214 1030231186 1030231186 1064049341 1064049341 793056291 793056291 862880352 862880352 861933610 624488089 214977278 902559464 902559464 250160604 208084048 28886880 28886880 11268160 11268160 63827184 64499920 64499920 47656448 44070400 25846160 32572384 32572384 75734392 75734392 279130114 279130114 343935128 374154370 374156442 374156442 372928600 371774122 392361504 392361504 321914128 347194308 758530060 758530060 611065457 669069816 862588409 862588409 416888745 363979626 985172334 985172334 339415435 240963228 240963228 144042564 144042564 601954290 601954290 375915930 313151570 132441635 15511264 589898849 589898849 572528833 572528833 553465728 553465728 51775761 30677056 582888656 839649672 853720328 853720328 539616513 378077258 44252360 271681600 302240170 302240170 382783296 382783296 507385012 507385012 306711398 171189996 604085436 1021088782 1021088782 944972002 973201882 973201882 679600416 679600416 698570066 698570066 263783698 393022600 446180988 446180988 375165980 468524840 468524840 244465684 244465684 92279388 34317448 101050392 543017217 543017217 265341576 571889109 571889109 739036252 746999633 746999633 549980565 739249241 745026121 745026121 717298136 679576513 679576513 619209325 790168260 790168260 734334476 681324905 264836681 104995096 622920992 622920992 553854272 697443616 740492656 797652093 797652093 754974976 510036025 339923082 272809984 344108848 419879308 419879308 358613418 399631010 399631010 425570394 465100128 465100128 315252848 315252848 588553504 676680021 676680021 679751462 679751462 565343536 887854433 887854433 803890601 406939654 406939654 622072504 622072504 319283696 319283696 87075168 540904240 540904240 44615809 272068832 272068832 173515296 452429908 452429908 416494278 416494278 181481942 148971972 83650516 83650516 152181788 371602980 371602980 285974466 207413282 207413282 386672218 386672218 322673056 424998658 424998658 310962200 344696475 344696475 403442694 429013335 765659695 765659695 761793783 761793783 268436931 782576153 782576153 385166471 583164372 583164372 548675008 81395777 42206280 34343952 194570420 194570420 47457952 40604832 180429596 180429596 190409470 295439970 864227778 864227778 855453651 719368736 719368736 431755110 431755110 1068221756 1068221756 396912965 620629748 620629748 586554417 81793728 390393435 902942545 902942545 856576392 889591393 889591393 607704720 1066929216 1066929216 476848956 950239366 950239366 755287337 218550528 218550528 252072240 252072240 171592204 143180868 16850976 140452368 140452368 110967844 98307816 144572987 144572987 404231748 883378147 883378147 808301020 808301020 717539541 717539541 597237952 597237952 591712049 672664208 672664208 631556040 634264257 634264257 598254727 748311140 748311140 841583939 1033174016 1033174016 13779488 126888584 126888584 241213757 776841769 776841769 774753281 633905472 631013633 222202412 101311512 614731640 678943001 712230152 712230152 676828673 768001636 768001636 756537388 738466696 348270356 744072909 1037276233 1037276233 817193147 381021018 218753138 598844661 598844661 123344880 123344880 569952225 569952225 375019227 270173683 270173683 299418088 824708264 824708264 296583586 114063266 357338473 400217850 656431309 656431309 255232054 98977472 164644352 228324972 469864992 469864992 279507712 335851784 346095694 346095694 378255438 408224902 408224902 144441490 389587344 389587344 38271120 340124720 340124720 302687274 305957986 305957986 263158712 148424388 101694728 101694728 98244216 637474714 888569387 888569387 264060964 264060964 118173488 118173488 88374668 307663937 981780567 981780567 679489437 1030901984 1030901984 964165665 964165665 456261889 173803201 75945024 69163072 840510464 840510464 601638240 683150713 761315757 761315757 732164572 732164572 94468492 65298817 10559808 18948416 18948416 58745152 58745152 58754176 58754176 340806056 340806056 269484208 304136920 304136920 58871792 93959800 93959800 81728536 279391104 309665858 843318489 843318489 617299160 650151116 650151116 543577509 267229829 600343600 600343600 794346749 794346749 756633816 237121864 312398864 351673290 351673290 442291204 442291204 19432756 138690560 138725508 151157224 151157224 688449556 688449556 723591345 808599825 957559335 957559335 318902322 887363218 1012674212 1012674212 1024594589 1024594589 493405614 360324740 323376308 520992778 520992778 508635806 504722202 331224402 344573890 344573890 460330608 460330608 247975004 480677256 480677256 178920922 24119168 728032684 728032684 641018649 790939965 790939965 813288320 813288320 288875652 407636258 407636258 301215490 314632722 444424209 714606165 987800791 987800791 855205384 630466593 547430721 164564132 578880688 864033925 864033925 694107813 694107813 408039077 599040 599040 170419456 170419456 47896272 598759684 661163184 661163184 170952601 134373556 85170288 131519208 254570057 648198204 688035173 688035173 757900553 757900553 1012055916 1012055916 890766496 890766496 878343175 878343175 898570420 898570420 962750604 962750604 610634500 610634500 595740875 688130151 688130151 1011360879 1011360879 628147113 767881545 870518384 870518384 830856945 830856945 582387953 537675953 537675953 584577680 584577680 794571908 794571908 889505835 1034044862 1034044862 532227804 427487036 416129942 416129942 395874822 395874822 287884578 384336066 384336066 564282739 564282739 374143418 933349642 933349642 868295139 868221171 868221171 892059393 892059393 644383024 644383024 71869641 554696704 554696704 546622016 86786825 624749832 634769128 634769128 91095240 91095240 349275658 349275658 364235106 364235106 358691042 286423808 17965600 78316608 78316608 9052160 73728 73728 136407296 138174468 406755330 406755330 4158468 272608768 272608768 291083680 291083680 19744738 299740640 299740640 295757440 98234658 603985672 603985672 919425416 919425416 775532280 935234032 935234032 771045641 837247309 987403556 987403556 754985057 754985057 654522620 206570124 206570124 48251462 502308902 502308902 176173462 169005588 168944148 175662428 175662428 385430088 385430088 274360960 539397761 539397761 574545040 574545040 912359818 912359818 938161195 938161195 905970128 1002475254 1002475254 853067475 716475203 645400141 490754154 604222536 604222536 627053981 627053981 451978782 500497574 500497574 359842350 212022126 69329160 406008582 406008582 439290920 439290920 291053444 96994536 13767360 112334932 360975228 360975228 204872014 224844204 253808700 253808700 631154893 631154893 161261100 144701444 144701444 138581092 138581092 155589220 155589220 671687584 685506944 685506944 44171345 562627649 562627649 546049025 151322624 302646272 581334912 581334912 442206659 306844932 867222112 867222112 179035464 126808200 807405322 852777554 852777554 60790459 627217219 959977864 959977864 946215303 946215303 699766805 699766805 785284136 785284136 291446435 519787412 519787412 402710534 543531018 543531018 402718978 402718978 286844840 339787914 339787914 609485057 609485057 807222920 807222920 940186629 940186629 684211205 974979159 974979159 717303902 488784554 830614697 880803886 880803886 415896658 614479258 948121671 948121671 719532227 88080416 415761606 415761606 416944880 416944880 226265216 259017756 261619772 575027676 664570945 664570945 230797952 706645333 706645333 681581961 681581961 593094321 593094321 559894048 510527664 852042284 852042284 768742443 202907653 541151492 1049269965 1049269965 705913221 705913221 64099056 187745076 724013667 964915463 964915463 437520918 437520918 338539776 176767525 584655312 682165060 682165060 282592962 459605552 761734354 761734354 461122530 461122530 444860112 444860112 408622724 408622724 154405668 331736018 331736018 325108146 325108146 463996500 463996500 413150982 695520305 695520305 649468761 870587084 870587084 554961310 922235061 922235061 34050048 42207296 42256464 42256464 33835088 35964944 35964944 35916048 13631744 15864768 361765382 404095594 404095594 521576524 521576524 526888890 526888890 147225850 56119116 20897568 44900466 288099618 288099618 311240722 311240722 110050392 269031432 370618448 370618448 85104408 133952770 133952770 269168144 269168144 85025664 354668570 354668570 163222208 400660310 400660310 285353682 21180576 378799032 378799032 495901806 495901806 210507206 111281256 111281256 502716956 502716956 578950256 578950256 248290717 42615584 26593824 18140160 621096576 621096576 19400992 19400992 737307968 737307968 189123585 169153572 169153572 191512800 191512800 177246308 252714972 274608040 274608040 520887542 520887542 326117904 326117904 324467464 324467464 328604274 328604274 244364520 884599827 884599827 323005188 882975969 882975969 454035318 237976860 237976860 711328821 711328821 302963348 1000528247 1000528247 750181346 808470051 808470051 67160320 814369800 814369800 562961505 628839586 628839586 764097606 764097606 365401640 661748942 661748942 638671266 588233612 795048960 795048960 203625384 411835840 411835840 692220045 843247651 843247651 778381725 778381725 679093072 679093072 472250857 496683700 496683700 400955571 400955571 195139607 955542533 989591511 989591511 674204370 721499168 994265398 994265398 696254565 567624464 994033551 994033551 631551445 631551445 598235484 598235484 707953200 707953200 735350277 736150005 847809240 1061307483 1061307483 453851167 75726936 638782756 758959917 779740592 779740592 519656393 710706684 710706684 216668921 571998225 571998225 207139992 727465085 727465085 115207896 165303401 722899476 722899476 542911652 588589617 741386384 741386384 660893213 505442910 992183214 992183214 773535261 388410705 388410705 842861832 842861832 632024705 632024705 586929792 86429888 114109648 549587121 549587121 464984950 546751009 546751009 863875491 863875491 499507834 573617571 573617571 571514915 283825602 848800273 848800273 983934229 983934229 313313280 650192140 650192140 798538820 798538820 139747385 674282116 674282116 1030231186 1030231186 1029490862 1029490862 812277023 742899530 862880352 862880352 103323992 80563840 108279184 902559464 902559464 67371280 67371280 62536808 29942336 28149280 28149280 63827184 64499920 64499920 46097792 44070400 31793696 32572384 32572384 49709056 49709056 69780800 75497544 84019392 96868584 96868584 372928600 372928600 385980370 385980370 367153386 75093896 79900872 367176929 367176929 611065457 669069816 872946753 872946753 416888745 176620792 637603200 637603200 401656457 802433019 802433019 722283829 717888867 717888867 375915930 375915930 300627426 306427120 306427120 589898849 589898849 572528833 572528833 553465728 553465728 51775761 30677056 582888656 839649672 853720328 853720328 539616513 378077258 42031808 39320208 9704784 24285712 382783296 382783296 131600712 131600712 74651528 105588744 105588744 85491936 303613064 389083784 389083784 325267890 679600416 679600416 672260613 268805601 263783698 393022600 393022600 8454144 10559808 149979428 149979428 30409184 209848160 209848160 197976228 199568596 543017217 543017217 265341576 571889109 571889109 648468744 746999633 746999633 549980565 739249241 745026121 745026121 717298136 679576513 679576513 619209325 790168260 790168260 734334476 681324905 435798758 172745876 216437078 955894822 955894822 697443616 697443616 827517762 842398647 842398647 545290606 891628329 891628329 645376015 570898842 576833756 1029872375 1029872375 749818031 1011130442 1011130442 21919680 21919680 20246208 588553504 799702357 799702357 624564009 177655165 565343536 887854433 887854433 803890601 406939654 446957910 562551090 562551090 319283696 319283696 64840624 60291696 282732192 301042306 301042306 166738052 173515296 511759036 511759036 390252874 368844942 236045096 236045096 395152732 407364238 407364238 371602980 467636688 484733082 484733082 354804174 340076682 457497870 457497870 244368874 49209408 310962200 344696475 558733909 795352613 795352613 833622643 967183628 967183628 942669844 896272747 782576153 782576153 854629899 854629899 981317126 981317126 345734097 130820364 595329416 595329416 554697124 235163816 235163816 197040380 197040380 304030110 454116951 864227778 864227778 1069132791 1069132791 351069024 431755110 679481632 1068221756 1068221756 569493985 569493985 187566556 215224808 215224808 140674536 677546304 677546304 856576392 889591393 889591393 544247944 640836803 640836803 48308688 950239366 950239366 755287337 218550528 218550528 252072240 252072240 171592204 143180868 260572544 260572544 195955452 220983793 1068464509 1068464509 1031642979 745984388 745984388 663173241 663173241 655355169 560078241 579883393 579883393 591712049 591712049 672664208 689610365 689610365 696879590 696879590 598254727 748311140 748311140 841583939 1033174016 1033174016 532861938 532861938 387150802 192635520 192635520 1608320 633905472 633905472 631013633 68928873 3985152 614731640 678943001 678943001 676828673 676828673 604514404 370204699 370204699 631128332 631128332 420952614 420952614 817193147 817193147 381021018 247205724 598844661 598844661 684057782 782315370 782315370 822715938 822715938 897172464 897172464 537146368 824708264 824708264 540741010 540741010 539297281 539297281 538783233 85011240 98977472 98977472 98423360 210904392 469864992 469864992 279507712 335851784 346095694 346095694 378255438 408224902 408224902 144441490 530422864 530422864 296516636 340124720 340124720 398859370 398859370 305957986 107102786 84798504 67586048 26814048 28252928 637474714 888569387 888569387 341641960 341641960 293714658 118173488 88374668 307663937 981780567 981780567 860762694 860762694 339546850 964165665 964165665 404100225 1020664903 1020664903 546836046 873207888 873207888 601638240 683150713 761315757 761315757 986976289 986976289 566451211 884383139 884383139 604517745 834701554 856179112 908148891 908148891 662892904 367235088 67393392 33554448 33554448 58871792 58871792 42207312 48370128 60158144 332584456 332584456 84850874 103027904 116268504 650151116 650151116 543577509 267229829 119211280 119211280 65672688 181409376 181409376 144703812 312398864 351673290 351673290 442291204 442291204 295334263 494266112 929328027 929328027 1071141607 1071141607 672265120 676516609 967848784 990064695 990064695 318902322 1009129106 1009129106 248195416 525539662 525539662 493405614 360324740 170019712 116546316 471680842 471680842 331224402 331224402 279588194 272629890 460330608 460330608 433488920 480677256 658449307 658449307 354139240 734029812 734029812 747839797 747839797 642851481 567625824 811936131 811936131 550347584 407636258 301215490 301215490 189279366 330351474 330351474 855205384 855205384 630466593 547430721 164564132 578880688 864033925 864033925 694107813 694107813 408039077 599040 599040 170419456 170419456 47896272 73393628 661163184 661163184 170952601 134373556 263322240 263322240 131519208 609040700 688035173 688035173 757900553 757900553 542625408 489479624 418872400 332011144 878343175 878343175 866491341 866491341 763447869 763447869 608824403 503891492 595740875 874125892 874125892 823532067 823532067 628147113 628147113 226278418 654885945 654885945 625578299 877181460 877181460 135728303 86773032 184296704 184296704 84761108 71828240 207894976 532227804 532227804 187243950 403834210 403834210 395874822 395874822 257814204 451743676 451743676 449629398 140642322 11195712 272473376 297346914 835773810 868221171 868221171 892059393 892059393 644383024 644383024 71869641 764674060 764674060 671410785 201443337 264192 96604552 96604552 91095240 91095240 293666954 301244648 364235106 364235106 354798560 338909736 67178496 67178496 21313696 532228872 532228872 138814976 138814976 137359108 406755330 406755330 296171874 298249442 298249442 295065888 300131394 300131394 299740640 299740640 292283584 292283584 603985672 603985672 539631368 775532280 775532280 690701745 771045641 771045641 837247309 987403556 987403556 754985057 754985057 654522620 152035996 232902888 232902888 68231688 68231688 1171968 83984936 83984936 2216192 2216192 1263872 36022272 40649472 40649472 1728000 1728000 35039744 35039744 549679428 938161195 938161195 405096617 1002475254 1002475254 853067475 716475203 713589420 668518137 490754154 185209908 627053981 627053981 294631556 500497574 500497574 359842350 212022126 740295461 740295461 472056888 1047598503 1047598503 777791166 824449029 824449029 993402420 993402420 360975228 181410830 224844204 253808700 253808700 631154893 631154893 161261100 144701444 144701444 138581092 138581092 155589220 155589220 671687584 685506944 685506944 8722432 562627649 562627649 546049025 24919392 302646272 581334912 581334912 442206659 410125456 867222112 867222112 727356752 594198885 72877704 23071104 23071104 96635296 688971951 738478502 852886373 852886373 789971611 1005030023 1005030023 599361412 599361412 872206323 872206323 911048984 911048984 514011486 921137492 1012379672 1012379672 414397254 404622784 44591632 609485057 609485057 807222920 807222920 940186629 940186629 684211205 974979159 974979159 717303902 488784554 488784554 880803886 880803886 142606365 641728580 641728580 892080500 892080500 596540906 109155640 51566616 68852656 102271352 226265216 259017756 261619772 575027676 575027676 682930600 682930600 706645333 706645333 681581961 681581961 37887056 470428456 470428456 99432646 268884168 268884168 299551874 299551874 289745962 1049269965 1049269965 705913221 705913221 64099056 187745076 724013667 964915463 964915463 923242016 735978327 338539776 705307008 705307008 695350549 695915939 695915939 592218720 761734354 761734354 593047184 676213352 936820095 936820095 900572235 900572235 772090061 580247708 784722141 814066220 814066220 463996500 463996500 574640208 695520305 695520305 649468761 870587084 870587084 801120976 922235061 922235061 583476333 596468832 802086141 802086141 678816645 678816645 731568749 1045685543 1045685543 164148029 753335071 753335071 529166406 529166406 521576524 526888890 526888890 297229346 368698252 368698252 181176436 297232736 432802178 432802178 314402096 314402096 305694202 370618448 370618448 302595664 318811036 318811036 403370384 403370384 373834770 354668570 354668570 163222208 400660310 400660310 164762340 164762340 10873152 364833348 495901806 495901806 519310302 519310302 147982850 179471176 217469340 578950256 578950256 248290717 252536388 601747185 629270161 629270161 684976361 684976361 724646608 724646608 685628272 189235349 180130544 982182595 982182595 180376960 368580594 368580594 276701058 276701058 520887542 520887542 155721784 170602514 170602514 308597538 328604274 328604274 211680128 884599827 884599827 402754480 882975969 882975969 379849786 95470440 327269936 711328821 711328821 302963348 1000528247 1000528247 750181346 808470051 808470051 345293066 814369800 814369800 562961505 628839586 628839586 764097606 764097606 203120710 98665960 357836488 373760016 476888714 476888714 473063176 143901002 411835840 533807504 533807504 435258318 414188358 69452454 68183552 679093072 679093072 125965205 496683700 496683700 614600152 883814153 883814153 525861773 525861773 312169488 279568996 800463640 831459707 831459707 696988773 134816772 486740030 486740030 631551445 631551445 598235484 767439744 908454295 908454295 710273297 710273297 847809240 1061307483 1061307483 453851167 144753591 1022446826 1022446826 827233069 827233069 541081682 710706684 710706684 332925368 571998225 571998225 42894912 727465085 727465085 115207896 165303401 824230179 824230179 790675977 286614039 1016332893 1016332893 939788295 734318837 505442910 448799630 426967040 856761009 856761009 51970227 71945568 125136552 654970962 810290307 881462403 881462403 874843624 874843624 464984950 464984950 404908614 985049526 985049526 499507834 469166244 434601220 228369836 184851488 646170644 646835289 646835289 469503990 855182480 855182480 671475544 758384956 758384956 139747385 674282116 674282116 774688029 954313946 1029490862 1029490862 944657665 742899530 742899530 416850955 438704406 1051203856 1051203856 585762818 392861112 301233248 301233248 270523906 277493312 364440706 364440706 339326304 278087616 278087616 272147080 57686384 57686384 39796368 100462872 100462872 25172880 26730648 88996472 88996472 96868584 96868584 305815672 305815672 385980370 385980370 367153386 75093896 79900872 79900872 629154368 629154368 537863168 872946753 872946753 571529290 235719708 637603200 637603200 510612802 802433019 802433019 722283829 717888867 717888867 457707138 602434456 602434456 306427120 306427120 45245312 29604640 31930848 547429568 547429568 547968160 547968160 24381568 24381568 275327112 275327112 274667272 35413896 42031808 42031808 83890064 276441000 326742538 326742538 382501490 382501490 287039432 59378578 166725632 166725632 100968086 303613064 303613064 814270152 814270152 395919785 357615614 371523790 405307870 405307870 419976316 419976316 342503706 413386218 413386218 339927236 58819840 209848160 209848160 197976228 199568596 246832604 246832604 263358144 263358144 167919628 172122776 172122776 180789652 203423888 203423888 216465752 216465752 202777104 135338648 29760608 29760608 150419816 150419816 264864694 488655898 734597762 734597762 604110857 955894822 955894822 651808980 651808980 827517762 842398647 842398647 545290606 891628329 891628329 645376015 570898842 576833756 1029872375 1029872375 749818031 1011130442 1011130442 8075136 45872976 45872976 540628992 799702357 799702357 913430163 913430163 408557440 408557440 508959390 1051599366 1051599366 979968338 853805267 853805267 838399554 838399554 573923344 573923344 282732192 813885778 813885778 849152022 944350811 1017706100 1017706100 390252874 368844942 236045096 236045096 395152732 407364238 407364238 236664348 467636688 484733082 484733082 354804174 340076682 457497870 457497870 272193106 272193106 324103728 324103728 558733909 795352613 795352613 833622643 967183628 967183628 942669844 896272747 673972362 265160888 854629899 854629899 981317126 981317126 345734097 130820364 595329416 595329416 554697124 235163816 235163816 197040380 197040380 304030110 454116951 454116951 632680364 1069132791 1069132791 1044715958 456618411 679481632 933148508 960086567 960086567 569493985 187566556 215224808 215224808 383933541 383933541 1046573500 1046573500 994165439 792104101 792104101 535523230 535523230 744675777 744675777 480416000 252334344 186828084 159518832 188125744 221549096 221549096 70255368 260572544 260572544 195955452 220983793 1068464509 1068464509 1031642979 745984388 745984388 663173241 663173241 655355169 560078241 559488193 3612672 855904674 855904674 600623616 689610365 689610365 696879590 696879590 479571503 234035986 428367908 428367908 502112202 502112202 532861938 532861938 457382608 453599395 805922485 805922485 538543745 536987649 536987649 757004304 771763829 771763829 666759792 253073924 704925965 704925965 604514404 174212701 215092000 631128332 631128332 287191108 1029322082 1029322082 384314960 384314960 247205724 247205724 242921192 684057782 782315370 782315370 875696744 875696744 897172464 897172464 567850898 537146368 302681856 540741010 540741010 539297281 539297281 538783233 12656768 93784384 98972716 230887532 230887532 269770960 269770960 201748700 247699468 247699468 182814596 142532484 43798996 34027536 38397072 530422864 530422864 296516636 119149376 298959976 398859370 398859370 667288755 667288755 663566969 1019489030 1019489030 684998276 920994118 920994118 399217995 457977940 457977940 293714658 151259272 101976600 101976600 734271802 734271802 860762694 860762694 822780048 822780048 977351328 977351328 1020664903 1020664903 546836046 873207888 873207888 819333400 553910642 293724258 926801952 986976289 986976289 569050462 884383139 884383139 604517745 834701554 856179112 908148891 908148891 662892904 367235088 342457840 342457840 285218904 285218904 9426400 101032328 283320352 386543818 386543818 333496818 340743400 581092608 581092608 571134993 213934368 236033264 236033264 255943216 255943216 77279868 267667128 267667128 201775116 159709404 159309732 214142824 422229510 422229510 407473942 494266112 929328027 929328027 1071141607 1071141607 678593296 678593296 967848784 990064695 995538851 995538851 1009129106 1009129106 526989370 892482453 892482453 219552300 170019712 406942648 406942648 403545152 403545152 281227458 265238614 93009000 92348520 92348520 433488920 433488920 411655590 658449307 658449307 377568040 734029812 734029812 747839797 747839797 642851481 567625824 811936131 811936131 550347584 285347104 50331600 48705408 227765845 646583385 646583385 554099017 266897440 266897440 159520449 159520449 607270888 607270888 203430267 997405623 997405623 470535993 470535993 148440779 1048830986 1054378269 1054378269 851369811 816994980 597142980 693388208 693388208 263322240 654323713 654323713 243954753 97019933 750954661 750954661 586539957 586539957 571676221 757671213 923277613 923277613 658686739 935150826 935150826 763447869 906493987 906493987 874383430 874383430 874125892 874125892 551299586 725831572 946914183 946914183 245925595 654885945 654885945 625578299 877181460 877181460 628356009 628356009 322599130 184296704 209327049 670579281 670579281 643506624 413154132 183120606 509095296 509095296 398035054 250405184 498690761 498690761 647324029 647324029 438774812 279466050 279086150 121566758 1065939324 1065939324 862105432 862105432 67729174 682164457 682164457 117974136 764674060 782566412 782566412 201443337 119818013 587365392 587365392 55653344 9520128 89826432 348099648 348099648 286214666 345649768 345649768 86586368 86586368 492443310 532228872 532228872 388818228 388818228 137359108 408580742 408580742 296171874 298249442 298249442 295065888 300131394 300131394 299505378 292343714 292283584 328606400 328606400 309979026 309979026 309568688 333785586 498021882 498021882 523291488 523291488 491870964 243583052 260509744 260509744 377703676 377703676 286243038 286243038 519168990 519168990 100712472 168431628 168431628 240870472 240870472 349666880 349666880 269844096 78704896 1728000 1728000 35039744 35039744 608385032 608385032 542093441 201901068 623833508 743255181 743255181 713589420 713589420 668518137 548950180 548950180 140674757 270981352 327397836 327397836 817199492 817199492 734671071 740295461 740295461 472056888 1047598503 1047598503 963846034 963846034 824449029 993402420 993402420 448141583 193463196 193463196 228720992 228720992 234431232 234431232 18129792 18129792 17841248 19618176 23591328 23591328 10939296 4194432 20067200 20067200 8722432 24126336 24126336 189868772 189868772 407126901 407126901 456994178 456994178 410125456 578764418 727356752 727356752 594198885 545303936 834594944 834594944 379130120 688971951 688971951 410340228 806486080 806486080 1005030023 1005030023 888158088 808137987 872206323 872206323 911048984 911048984 514011486 921137492 1012379672 1012379672 414397254 404622784 44591632 117489720 340577290 340577290 59335688 73089162 268442306 268442306 39245952 35008722 315664338 682714641 682714641 721063302 913100187 1026075008 1026075008 949201048 892080500 892080500 643250841 447349691 193801332 623443049 623443049 612839660 612839660 575834324 575834324 607158601 682930600 767144653 767144653 716529216 673618065 1022247552 1022247552 885570851 764887618 99432646 268884168 268884168 299551874 299551874 289745962 215036506 439488740 500042196 500042196 198842100 186144264 792191156 792191156 923242016 923242016 735978327 155398308 705307008 705307008 695350549 695915939 695915939 592218720 596116593 596116593 593047184 676213352 936820095 936820095 900572235 900572235 772090061 580247708 784722141 814066220 814066220 1000958932 1000958932 950852504 574640208 818966728 818966728 310399553 380709504 801120976 801120976 42207312 583476333 596468832 802086141 1029999254 1029999254 778177206 778177206 1045685543 1045685543 164148029 753335071 753335071 529166406 529166406 495588462 495588462 346405900 297229346 368698252 368698252 181176436 297232736 432802178 432802178 314402096 314402096 305694202 330531216 330531216 302595664 318811036 318811036 839442821 839442821 373834770 354480579 618751356 690562341 690562341 163644865 537660416 542720354 673473120 677124259 769843022 769843022 519310302 519310302 449336216 449336216 526406854 526406854 374739422 374739422 388436692 601747185 629270161 629270161 684976361 684976361 724646608 724646608 685628272 218509472 393643814 982182595 982182595 261100626 368580594 368580594 276701058 276701058 394971226 415500486 415500486 50403360 50403360 34027536 17178672 202409352 209207812 209207812 402754480 402754480 177217816 352923424 352923424 95470440 327269936 327269936 280495938 306844610 383909888 410935200 410935200 92652544 94946664 345293066 345293066 289085826 289085826 290475488 290475488 276869952 96057152 324138578 324138578 98665960 373760016 476888714 476888714 515040990 515040990 389494888 533807504 533807504 435258318 414188358 141507972 476583692 846735506 846735506 339739495 674011050 674011050 614600152 883814153 883814153 123990456 508262904 508262904 118642808 800463640 831459707 831459707 696988773 120592205 486740030 486740030 52494624 138644852 805076960 805076960 908454295 908454295 710273297 710273297 590292115 990518336 990518336 948176967 235004655 1022446826 1022446826 958455910 827233069 541081682 541081682 652771472 652771472 643958032 487655604 361573482 419759678 419759678 101589512 157324475 824230179 824230179 790675977 286614039 1016332893 1016332893 939788295 734318837 117479672 269488615 426967040 912751322 912751322 819466419 877448331 886403035 886403035 810290307 881462403 881462403 874843624 874843624 823270208 823270208 539126784 1022479032 1022479032 667233228 565859443 565859443 169711506 294988544 646170644 646835289 646835289 469503990 855182480 855182480 671475544 758384956 758384956 269492227 603524971 615072239 774688029 954313946 954313946 944657665 944657665 950918272 950918272 469429059 520932414 1051203856 1051203856 841091074 392861112 301233248 335835776 335835776 277493312 364440706 364440706 339326304 278087616 278087616 272147080 316802082 316802082 65672688 156980644 156980644 156436484 156436484 166350916 166350916 209808506 247898194 335354432 335354432 271527346 271322370 305172282 305172282 343272330 343272330 807722394 807722394 346673234 470002008 571529290 571529290 235719708 341050256 341050256 510612802 510612802 233602288 681008242 681008242 621607720 629330025 629330025 602434456 115809747 53281184 45245312 176530244 176530244 584261840 728905989 728905989 555746240 555746240 138885252 671752832 671752832 538709505 35413896 35413896 34862488 378923376 378923376 348652752 348652752 382501490 382501490 287039432 399581384 399581384 249112002 121112084 62124506 62124506 814270152 814270152 395919785 357615614 371523790 405307870 405307870 419976316 419976316 612384809 612384809 413386218 339927236 157385521 240503684 240503684 146140192 47899312 551568321 561530265 639929568 639929568 144027908 478365713 478365713 373411534 373411534 619482713 716113345 844374289 981412954 981412954 733552753 733552753 578365825 607407756 719356961 719356961 734597762 734597762 729234357 827228352 827228352 547388451 587446353 587446353 805538145 805538145 350542800 213958860 474110748 474110748 541159548 541159548 493082787 207848252 207848252 218102756 218102756 260127671 260127671 390032291 859879043 859879043 863371995 913430163 913430163 408557440 797248597 797248597 1051599366 1051599366 989645248 853805267 853805267 838399554 838399554 573923344 573923344 807513090 813885778 813885778 849152022 944350811 1017706100 1017706100 402178418 291850334 291850334 132022432 499401416 499401416 201900826 84635912 328549536 347439146 347439146 300953280 319528770 319528770 46920912 272193106 272193106 324103728 324103728 45138768 119155392 119155392 402135296 402135296 819989386 819989386 341836066 341836066 265160888 265160888 130245066 274785674 805375376 805375376 571264017 254633293 154165956 154165956 204711464 207751336 221480868 221480868 79959904 114371120 114371120 789267228 1044669084 1044715958 1044715958 598076190 598076190 1025543980 1025543980 1050434299 1050434299 515598029 652698217 652698217 383933541 383933541 1046573500 1046573500 1023410237 792104101 792104101 535523230 535523230 744675777 744675777 739118406 842662352 943856063 943856063 455229441 733606318 733606318 441067065 263758976 925755611 925755611 33653264 33653264 912608338 912608338 845546393 892987932 892987932 792858813 537992192 537992192 537271296 881119297 881119297 855904674 577030545 836780576 873491211 873491211 740344204 1013195261 1013195261 289167392 289167392 487339542 487339542 198494964 457382608 457382608 453599395 805922485 805922485 538543745 536987649 536987649 757004304 771763829 771763829 666759792 253073924 704925965 704925965 702950010 702950010 482345615 302539738 124257720 287191108 1029322082 1029322082 739599692 739599692 69249613 4759680 4759680 6987808 110138368 980652217 980652217 875696744 1072412486 1072412486 686187146 675147525 521251294 535857790 535857790 531904376 26157698 343069442 343069442 362903560 365218538 365218538 501145638 501145638 356896936 356896936 481036360 481036360 416408262 416408262 448317270 448317270 175403330 364745484 364745484 386958136 389996346 389996346 344290938 344290938 667288755 667288755 663566969 1019489030 1019489030 684998276 920994118 920994118 399217995 457977940 457977940 277884928 277884928 203323954 395832419 395832419 299350805 115681525 960713485 960713485 822780048 977351328 977351328 940049026 940049026 189404916 458234404 819333400 819333400 553910642 812819983 926801952 926801952 875561478 875561478 147682050 83161000 83161000 87379744 87379744 82338888 82338888 203591684 315459864 342457840 342457840 285218904 285218904 187206772 199020276 283320352 386543818 386543818 333496818 340743400 581092608 581092608 571134993 213934368 236033264 236033264 255943216 628625441 628625441 267667128 748730685 748730685 159709404 520096135 520096135 512742908 422229510 443047203 443047203 453182612 453182612 427236640 306218800 678593296 678593296 537055233 285347874 995538851 995538851 812676949 630741092 526989370 892482453 892482453 354585128 354585128 406942648 406942648 403545152 403545152 362944762 322374698 282997530 331424778 331424778 336381408 339769706 384811904 384811904 377568040 377568040 120660312 120660312 18499760 81041480 384225986 384225986 327704736 314664656 314664656 55056624 50331600 48705408 227765845 646583385 646583385 554099017 266897440 697308056 697308056 244986561 607270888 607270888 203430267 997405623 997405623 470535993 470535993 148440779 1048830986 1054378269 1054378269 851369811 816994980 597142980 693388208 693388208 158462560 654323713 654323713 243954753 97019933 750954661 750954661 586539957 586539957 571676221 757671213 923277613 923277613 658686739 935150826 935150826 607942810 906493987 906493987 874383430 874383430 748295757 551299586 697961984 939526670 946914183 946914183 284952811 357567395 357567395 784607267 1026095784 1026095784 628356009 628356009 322599130 51906096 209327049 670579281 670579281 643506624 413154132 183120606 509095296 509095296 398035054 376537780 498690761 498690761 713871380 713871380 438774812 543819392 543819392 121566758 1065939324 1065939324 862105432 862105432 773857536 682164457 682164457 555221384 696886032 782566412 782566412 143142401 119818013 587365392 587365392 34217280 280123392 280123392 348099648 348099648 286214666 355476288 355476288 86586368 86586368 492443310 492443310 262223462 388818228 388818228 35316240 408580742 411047972 430123330 430123330 285879490 273615010 273615010 28107424 292343714 292343714 30250912 328606400 328606400 309979026 309979026 309568688 309568688 205321504 285864260 523291488 523291488 338124872 243583052 161648564 161648564 377703676 377703676 352279174 286243038 519168990 519168990 106505880 168431628 168431628 338551760 338551760 349666880 349666880 269844096 78704896 20811936 545333952 545333952 542249601 608385032 720596100 720596100 553764994 865941750 865941750 865475187 626188496 290948854 445044903 680957319 680957319 813226416 972429837 972429837 327397836 817199492 817199492 734671071 974686753 974686753 304127890 304127890 945824096 963846034 963846034 490209679 679874320 679874320 448141583 193463196 227050564 258086612 258086612 204286092 144473600 144473600 25999712 33250048 33250048 20033312 16826368 59785280 59785280 42207936 33816656 33816656 8597568 59006992 189868772 189868772 407126901 407126901 456994178 456994178 328125703 578764418 578764418 6104192 545303936 545303936 834594944 834594944 662055496 662055496 1018301162 1018301162 806486080 806486080 249954616 888158088 888158088 808137987 610296856 610296856 64036883 12683208 128451928 128451928 125830432 125830432 128803936 128803936 42303528 117489720 347121232 347121232 59335688 41943120 13031616 39245952 270052416 270052416 315664338 682714641 682714641 746985708 913100187 1026075008 1026075008 949201048 888667115 1043728134 1043728134 447349691 804448519 942003197 942003197 612839660 612839660 575834324 643231272 643231272 678459752 767144653 767144653 716529216 673618065 1022247552 1022247552 885570851 764887618 93374184 73428520 11530496 223300868 223300868 195674228 195674228 193004352 193004352 198842100 198842100 186144264 792191156 792191156 729344814 729344814 490063797 155398308 661137564 661137564 620869633 620869633 556651684 556651684 723626377 723626377 543478791 543478791 439211087 420269094 420269094 141632388 172838084 280248862 280248862 548776835 690831672 1000958932 1000958932 950852504 818924444 818966728 839237694 1015457832 1041629866 1041629866 1037582480 1037582480 61793693 774936249 774936249 1029999254 1029999254 778177206 778177206 805704652 805704652 182588075 204535390 204535390 315282642 315282642 409474404 409474404 346405900 230322220 230322220 130931024 46056400 392360000 392360000 360646264 360710058 360710058 325767946 304609554 328249986 328249986 319154226 285245480 839442821 839442821 337773856 354480579 618751356 690562341 991462862 991462862 587481745 542720354 673473120 677124259 769843022 769843022 478958718 478958718 449336216 449336216 526406854 526406854 374739422 374739422 388436692 479116344 479116344 126847660 34765544 65771408 65771408 147784224 218509472 218509472 393643814 393643814 318116848 318116848 285476898 251661448 251661448 179121492 430188800 430188800 415500486 470862274 470862274 525535678 525535678 513530284 513530284 1066501167 1066501167 377040784 684778245 684778245 446497900 535299582 535299582 719977053 719977053 306844610 678931161 678931161 262903172 259166200 109762064 109762064 35312728 365279952 365279952 347694594 347694594 368513736 368513736 324138578 381748346 383387898 383387898 340349834 340349834 515040990 515040990 389494888 389494888 340098694 189057204 189057204 155568184 476583692 846735506 846735506 339739495 674011050 674011050 101976117 929747700 952170879 952170879 508262904 654525299 654525299 1057087578 1057087578 668851491 557767653 235471157 476213762 476213762 658334712 769361956 805076960 805076960 762448209 762448209 592069633 592069633 542132256 990518336 990518336 948176967 235004655 824422408 958455910 958455910 342888848 342888848 112354290 652771472 652771472 940114563 940114563 408686214 1003814374 1003814374 980694407 711665171 537003008 42205264 42205264 187760688 187760688 101976600 101976600 117479672 818172164 818172164 136480963 912751322 912751322 819466419 877448331 886403035 886403035 639776978 75771984 75896904 75896904 187571508 823270208 823270208 580687424 1022479032 1022479032 667233228 985139034 985139034 522992471 294988544 566577154 566577154 990120235 990120235 249907608 249907608 250668141 250668141 409767475 269492227 603524971 603524971 509423262 613325053 768509930 768509930 807592736 950918272 950918272 704834720 520932414 1010992544 1010992544 841091074 201331134 3155968 335835776 335835776 541942380 809085006 809085006 89145826 898127054 898127054 813405577 472523253 704593125 704593125 665450067 665450067 156436484 156436484 377932554 701224066 839872549 839872549 818704530 335446866 335446866 271322370 305172282 360218698 360218698 343272330 807722394 807722394 890251360 999563075 999563075 186887711 176449620 341050256 743310408 743310408 567418432 652286825 652286825 96069480 621607720 630502412 990435911 990435911 64306160 364237379 966387303 966387303 176530244 584261840 728905989 728905989 555746240 671944452 671944452 671752832 671752832 538709505 67895432 31202016 30284896 378923376 378923376 348652752 348652752 67945728 17876000 45682192 399581384 399581384 249112002 989016277 989016277 870089470 870089470 663255798 559541681 559541681 1013458968 1013458968 658770580 187959924 691537681 691537681 612384809 212653169 546309184 546309184 240503684 240503684 146140192 18351648 551568321 561530265 639929568 639929568 236711758 482174036 482174036 373411534 373411534 619482713 716113345 844374289 981412954 981412954 831675636 977325703 977325703 607407756 719356961 719356961 683949473 729234357 729234357 560613830 560613830 600156469 600156469 587446353 805538145 805538145 388344406 213958860 474110748 474110748 787909055 787909055 756396093 756396093 1000415607 1000415607 595863814 554640586 554640586 411097107 859879043 859879043 863371995 863371995 772556301 127741560 797248597 797248597 672670032 989645248 989645248 305474322 7711890 4572032 568951296 568951296 294778400 807513090 807513090 273141248 273141248 272149728 271085858 402178418 402178418 291850334 366745138 366745138 499401416 499401416 239438160 281787168 301780962 301780962 401870192 401870192 118414392 118414392 60291696 104656128 104656128 118306560 118306560 574016193 602550929 602550929 666184083 982531882 982531882 819989386 998246846 998246846 1019363783 1019363783 945943991 319530372 805375376 805375376 571264017 254633293 542577524 542577524 216212104 216212104 221480868 221480868 338690826 338690826 242012188 789267228 789267228 369594905 503470650 598076190 598076190 1025543980 1025543980 1050434299 1050434299 515598029 652698217 652698217 460195900 491023538 491023538 1023410237 1023410237 189429559 958010919 958010919 162223360 776002049 776002049 739118406 842662352 943856063 943856063 455229441 733606318 733606318 441067065 263758976 925755611 925755611 477417708 436683416 912608338 916459420 916459420 1054888316 1054888316 792858813 537992192 675401856 691534629 961307305 961307305 56887728 392317376 900609462 900609462 873491211 740344204 1013195261 1013195261 191427455 328721976 328721976 51963906 18172448 1108000 168853504 184813620 184813620 22635136 24390208 24390208 25012768 27310528 27310528 18509952 158784420 158784420 246862793 246862793 702950010 702950010 738844741 740893965 740893965 835121325 835121325 823990634 790653488 929835704 929835704 880355211 844785940 777567230 777567230 980652217 980652217 948435015 1072412486 1072412486 686187146 675147525 521251294 641038941 641038941 531904376 26157698 612434569 612434569 362903560 365218538 365218538 501145638 501145638 356896936 356896936 481036360 481036360 416408262 416408262 448317270 448317270 175403330 364745484 364745484 386958136 389996346 389996346 126306304 115540696 115540696 336363664 374131866 374131866 374965378 374965378 273204354 574637504 574637504 1048107144 1048107144 340973471 277884928 520426688 520426688 395832419 299350805 382860378 960713485 960713485 463027639 543572647 543572647 876662056 876662056 189404916 473957518 492045318 492045318 861143604 861143604 941786666 941786666 875561478 913171243 913171243 496729540 788004243 788004243 828018508 969483495 969483495 636035265 660944284 660944284 814434798 851550448 851550448 390078922 199020276 199020276 140681072 294287776 294287776 540961057 543457472 572650768 572650768 140958084 242318792 242318792 799880712 799880712 628625441 204473008 748730685 748730685 240181900 520096135 520096135 512742908 72222978 443047203 839946818 847384659 847384659 842031590 942686744 942686744 539017473 539017473 311583282 311583282 812676949 812676949 533264340 104808216 745068299 745068299 907296649 907296649 158680960 357504378 735255861 735255861 362944762 570303145 570303145 331424778 331424778 312133570 312133570 310903890 308557272 38836096 120269504 120269504 116967920 56672320 56672320 39342256 39342256 40601488 40601488 95392592 129694016 129694016 28972896 28972896 16931264 721558144 721558144 676596249 697308056 697308056 244986561 602406964 602406964 805428736 807353859 807353859 812450757 812450757 8179584 107706332 107706332 178258260 592290964 592290964 160091137 8572992 65188152 158462560 158462560 67326636 64007680 64007680 35409104 35409104 42066000 63802528 63802528 177073236 177073236 293304668 401863674 475329166 475329166 714119294 714119294 688655397 688655397 496637550 496637550 395188308 697961984 939526670 939526670 613469485 875038608 875038608 608206848 784607267 1026095784 1036577802 1036577802 838347338 838347338 672662528 793312830 793312830 463331082 463331082 112648526 114303402 114303402 448626754 448626754 376537780 771574476 771574476 713871380 713871380 190587093 543819392 543819392 27604992 75755136 92016552 607694388 773857536 773857536 146874449 146867588 555221384 555221384 136660736 772025884 772025884 238143769 33652800 29310816 34217280 280123392 359008192 360910632 360910632 285428008 355476288 355476288 331033674 331033674 310842968 452712992 452712992 37890006 37865856 35316240 275469702 411047972 430123330 430123330 285879490 274289360 299806130 299806130 315806418 315806418 298693906 315288672 315288672 346555722 346588522 346588522 362813390 362813390 285864260 285864260 237667644 237667644 345049152 345049152 76638738 109357576 352279174 352279174 138676356 68214784 106260544 106505880 106505880 147065028 338551760 338551760 284111616 145917508 135531012 604934325 604934325 613817040 613817040 542249601 202287136 720596100 720596100 732164469 967474951 967474951 865475187 818055202 818055202 808276311 680957319 680957319 813226416 972429837 972429837 362500486 809766788 809766788 825729154 974686753 977727446 977727446 561963542 945824096 969945651 969945651 949097031 949097031 563089446 31461633 131743932 227050564 258086612 258086612 172142484 144473600 144473600 137339908 33250048 33250048 168738976 191715536 191715536 143145952 143145952 139110784 33816656 8597568 59006992 59006992 50194368 43864064 58702048 140983088 156969380 156969380 153726852 99062856 99062856 95791224 40042272 69012992 96952680 662055496 746325069 1018301162 1018301162 753927117 609712289 609712289 575881436 575881436 894575266 894575266 873538059 873538059 620816666 125039512 125039512 304753448 304753448 83927408 80275394 80275394 325738746 347121232 347121232 41943120 380110672 380110672 336593418 398140146 530355445 864475251 864475251 256636614 746985708 746985708 620706133 695013480 753876429 753876429 1043728134 1043728134 838975808 838975808 942003197 942003197 549841089 545523777 545523777 643231272 643231272 63478016 63478016 235427648 235427648 243176324 243176324 472657882 472657882 181478100 129097940 136964420 220865924 223300868 245840960 245840960 520953982 523046410 523046410 102446616 943072848 1018432335 1018432335 943974778 943974778 749034902 749034902 408542057 182978004 135463168 137573124 137573124 12061188 640076087 723626377 723626377 543478791 543478791 439211087 420269094 420269094 190852980 196936116 280248862 280248862 203761932 690831672 690831672 382678098 814376090 818924444 818924444 839237694 1015457832 1041629866 1041629866 1037582480 1037582480 888199869 774936249 774936249 54538905 33556624 101714600 101714600 805704652 805704652 305746864 448788946 448788946 392719798 392719798 409474404 457770470 457770470 295821666 415660192 415660192 218910160 392360000 392360000 360646264 360710058 378542736 378542736 304609554 328249986 328249986 319154226 290549818 290549818 169918740 346199192 346199192 671174024 671174024 991462862 991462862 587481745 424152575 815598376 815598376 423913669 216256166 92567686 276898650 276898650 68013056 142764040 142764040 412365028 412365028 281796816 281796816 211776706 126847660 34765544 52186752 52186752 49686096 133738192 186188260 187826728 187826728 318116848 318116848 285476898 251661448 251661448 730884821 730884821 531898590 388161642 582931963 582931963 851310147 851310147 954290328 954290328 1066501167 1066501167 437619774 684778245 684778245 446497900 535299582 535299582 719977053 719977053 267396192 678931161 678931161 262903172 259166200 109762064 446304794 446304794 365279952 521064698 521064698 370610280 370610280 368513736 236955632 381748346 383387898 383387898 135791104 135791104 33714708 135168 55267496 517276203 700484343 970056423 970056423 620839630 84273192 785519818 785519818 1054886378 1054886378 818712846 753851853 929747700 952170879 952170879 224712831 654525299 654525299 1057087578 1057087578 668851491 557767653 245387540 476213762 476213762 983305815 983305815 788426696 788426696 762448209 762448209 592069633 592069633 690489125 690489125 574643202 34871883 914407515 914407515 891339051 891339051 358687360 342888848 908613216 908613216 334009337 940114563 940114563 530774328 1003814374 1003814374 980694407 711665171 1058163877 1058163877 652211657 472446732 472446732 255668028 468294794 1049605272 1049605272 931935793 931935793 923065762 895916201 108075825 288384822 422053158 956708286 956708286 1000608183 1000608183 807812177 300153570 965819300 965819300 831771142 580687424 578812289 578812289 985139034 985139034 958786317 958786317 707732759 799864775 990120235 990120235 802276044 802276044 738492748 761841069 761841069 191365352 245892444 245892444 245892444 1028293620 1028293620 306709152 807592736 807592736 704834720 808241863 808241863 794434898 733578636 753492286 1045506254 1045506254 341601856 77876098 541942380 809085006 809085006 89145826 898127054 898127054 813405577 472523253 704593125 704593125 665450067 665450067 69141192 69141192 377932554 701224066 839872549 839872549 818704530 335446866 335446866 113074256 101606192 360218698 360218698 648275691 914983217 914983217 890251360 999563075 999563075 296307286 296307286 1064015042 1064015042 743310408 567418432 652286825 652286825 766694253 978250509 978250509 990435911 990435911 120198336 364237379 966387303 966387303 157812132 274089604 274089604 958829827 958829827 671944452 944767116 944767116 876609675 823914066 868074088 868074088 29224928 27521376 27521376 19400744 119671370 119671370 94113450 94505482 277743402 277743402 48501354 989016277 989016277 870089470 1070416288 1070416288 559541681 559541681 1013458968 1013458968 658770580 187959924 691537681 691537681 676201912 1063820561 1063820561 555593104 594592689 594592689 465379170 465379170 196673570 195035508 195035508 170711140 236711758 482174036 482174036 448142166 448142166 414658704 408539796 306783378 183242196 286265830 831675636 977325703 977325703 903691804 903691804 595706300 513393242 185933570 1026992002 1026992002 717128528 717128528 600156469 169119313 442972656 442972656 388344406 1034219744 1034219744 166892427 787909055 787909055 756396093 756396093 1000415607 1000415607 595863814 554640586 771643798 771643798 857072950 857072950 455731763 550645715 564075942 719199957 968626610 968626610 425603872 425603872 146936004 1043484507 1043484507 560843714 560843714 564555457 822352993 822352993 886153809 1052828762 1052828762 914407908 824841507 731919458 110249392 106506746 366745138 438120148 438120148 241508822 239438160 439058260 439058260 413974974 413974974 401870192 177258708 177258708 226019244 226019244 168330168 118306560 118306560 574016193 602550929 602550929 666184083 982531882 982531882 690358780 998246846 998246846 1019363783 1019363783 945943991 397415584 397415584 85008936 856760472 856760472 823436352 542577524 216212104 216212104 175884124 175884124 338690826 338690826 1015225093 1015225093 564539403 193254270 503470650 503470650 227541612 905186156 1021128311 1021128311 242300235 283342992 290270370 290270370 460195900 491023538 1023574166 1023574166 992706707 930087221 958010919 958010919 705495094 776002049 776002049 621809572 829165793 829165793 578948611 783443414 783443414 960578126 960578126 635405417 398821654 477417708 477417708 436683416 784606916 916459420 916459420 1054888316 1054888316 695236258 695236258 675401856 691534629 961307305 961307305 518839406 566906011 900609462 900609462 901185115 901185115 1026383740 1026383740 601422064 900458785 900458785 708061710 404033040 336699946 475070650 475070650 457985172 457985172 252464168 67895328 72082688 74498480 133587856 133587856 124082416 168133352 246862793 246862793 230139920 230139920 738844741 740893965 740893965 835121325 835121325 790653488 790653488 929835704 929835704 880355211 844785940 777567230 777567230 631137758 666754162 948435015 948435015 862151329 578542922 578542922 170625813 976128913 976128913 514311512 13705920 612434569 612434569 71567496 71567496 12583104 21243008 30223584 30223584 67682304 67682304 67634184 34264080 34264080 34264080 34780688 47611136 49117712 49117712 126678528 126678528 275874632 356244793 615411544 615411544 522628956 522628956 647079832 647079832 561636774 677970824 777820047 777820047 1048107144 1048107144 399704596 524293182 524293182 520426688 517262046 517262046 382860378 509156050 509156050 463027639 543572647 543572647 876662056 876662056 284287902 473957518 492045318 492045318 861143604 861143604 941786666 941786666 342247692 913171243 913171243 496729540 788004243 788004243 828018508 969483495 969483495 636035265 660944284 660944284 814434798 851550448 851550448 390078922 181607616 42542160 42542160 284644896 284644896 540961057 560158450 572650768 572650768 405922566 405922566 242318792 799880712 799880712 639188908 639188908 309728670 319199265 588667194 588667194 273861050 0 0 354451752 839946818 847384659 847384659 842031590 942686744 942686744 539017473 550552512 569439105 569439105 325300352 325300352 19337386 72993076 745068299 745068299 907296649 907296649 158680960 158680960 735255861 735255861 141505556 570303145 570303145 30933632 30933632 8868864 711744 648192 648192 53030129 552968641 569434017 575031056 575031056 56672320 39342256 66811369 619389905 619389905 554319904 554319904 129694016 43502576 76681649 636147177 721558144 721558144 676596249 622070313 219549701 306354326 306354326 207880336 805428736 807353859 807353859 812450757 812450757 8179584 320690902 491577504 491577504 935345729 935345729 602087808 752963888 752963888 67108872 642356025 642356025 662634136 662634136 235951041 619821313 619821313 237075584 237075584 673523973 673523973 810220814 1017506127 1017506127 847538895 847538895 714119294 41864113 171982880 177999552 395188308 395188308 430182754 430182754 805214344 805214344 875038608 875038608 608206848 276373770 343483914 1036577802 1036577802 838347338 838347338 672662528 793312830 793312830 463331082 463331082 112648526 114303402 114303402 448626754 448626754 274282601 903749355 903749355 486548961 955718316 955718316 431372644 431372644 425134250 882371594 882371594 607694388 884314670 884314670 563294825 563294825 561513152 750813345 750813345 783401580 783401580 692109477 665372316 60837664 119800872 277068544 359008192 360921440 360921440 362815768 362815768 329987392 331033674 331033674 310842968 452712992 452712992 203306246 307536768 307536768 418891968 418891968 417898688 417898688 306530448 274289360 310072760 310072760 315806418 366361096 366361096 291976386 277612808 346555722 346588522 409092656 409092656 480383778 480383778 363157606 237667644 237667644 345049152 345049152 76638738 204759372 439928214 439928214 138676356 205130000 232030252 232030252 217369548 147065028 147065028 136317376 145917508 145917508 135531012 604934325 604934325 613817040 613817040 202287136 202287136 701808740 701808740 732164469 967474951 967474951 708188949 818055202 818055202 808276311 556356150 183748246 673856789 673856789 570783065 362500486 809766788 853574080 853574080 825729154 977727446 977727446 561963542 561963542 969945651 969945651 949097031 949097031 563089446 511756908 511756908 205182642 523771172 523771172 971959143 971959143 433012710 851690625 851690625 569777121 569777121 191715536 191715536 560354469 690794720 690794720 586036432 586036432 18896032 147157732 147157732 43537728 169784020 169784020 149987652 149987652 163073792 163073792 160729856 95791224 40042272 69012992 69012992 67182600 746325069 746325069 696003945 696003945 609712289 609712289 575881436 575881436 894575266 894575266 873538059 873538059 620816666 125039512 125039512 304753448 304753448 35009010 314476264 392616378 392616378 359722338 331085682 25285970 380110672 380110672 336593418 398140146 530355445 864475251 864475251 648551424 448433464 448433464 402819245 695013480 753876429 966292792 966292792 282276546 838975808 838975808 568456353 549841089 712796080 712796080 749202913 749202913 278922224 985190656 985190656 685562597 586029860 763802737 763802737 515503838 1041168601 1041168601 877283379 718312446 610981257 608078464 1001348395 1015842943 1015842943 755249486 523046410 450363934 943072848 1018432335 1018432335 943974778 943974778 749034902 749034902 408542057 275639682 563986665 563986665 626150088 626150088 988554146 988554146 525020598 525020598 1072787854 1072787854 37748880 190852980 190852980 918618811 918618811 884288331 884288331 981044106 981044106 743431317 945631006 945631006 874182295 537953287 709323424 772878541 772878541 688257874 888199869 888199869 654710841 559165983 423762103 574949894 709573347 801636557 801636557 512962802 512962802 505559062 505559062 473333784 392719798 363669098 457770470 654456081 654456081 415660192 415660192 218910160 832917754 832917754 622968801 580726353 591279417 846725066 846725066 361113688 318976050 109385834 427218735 847445673 847445673 432280133 432280133 671174024 671174024 606989577 553485131 307897611 418186985 815598376 815598376 897110560 897110560 138755112 138755112 102506496 68013056 142764040 231273552 412365028 412365028 242697904 492245574 492245574 89675072 105244824 129356160 162583136 162583136 133738192 186188260 320864562 420221478 420221478 305085714 318967072 335994256 335994256 730884821 730884821 531898590 304250910 582931963 582931963 851310147 851310147 954290328 954290328 340820178 340820178 437619774 437619774 290506920 219359840 43652688 88410144 215482476 267396192 267396192 257844360 257844360 33892368 67297472 80212032 446304794 446304794 206640816 521064698 521064698 370610280 370610280 267533022 236955632 236955632 5765760 475117868 475117868 390328078 457217074 457217074 430700034 517276203 700484343 970056423 970056423 620839630 329566578 461789567 677665274 1054886378 1054886378 818712846 753851853 728733795 68565211 559531784 559531784 811465891 811465891 142974471 696656421 696656421 245387540 245387540 243269724 214321808 983305815 983305815 577508949 539001401 621189673 621189673 661724809 661724809 690489125 690489125 574643202 377722129 914407515 914407515 915662744 915662744 656068689 656068689 908613216 923272251 923272251 616039202 530774328 530774328 472103442 472103442 471307140 504838541 1058163877 1058163877 652211657 472446732 472446732 255668028 468294794 1049605272 1049605272 931935793 931935793 923065762 895916201 336699938 336699938 422053158 956708286 956708286 1000608183 1000608183 881640705 881640705 965819300 965819300 831771142 27586224 193470564 193470564 221256964 489693971 958786317 958786317 707732759 799864775 799864775 722593956 802276044 802276044 738492748 761841069 761841069 435774875 798016125 798016125 465819131 1028293620 1028293620 1007755789 674436368 1039144970 1039144970 808241863 808241863 826473531 826473531 753492286 1045506254 1045506254 341601856 154577760 154577760 93853184 93853184 92409960 9044584 524864 268640280 369307674 369307674 100675586 200434644 200434644 188273940 188273940 285736966 402654242 453034038 453034038 303300562 303655426 303655426 124561592 336134656 336134656 283212528 648275691 914983217 914983217 629475849 822551362 822551362 296307286 617287068 1064015042 1064015042 537079809 537079809 169115284 587614164 766694253 978250509 1012665999 1012665999 977300927 631265573 1016661597 1016661597 788652093 843393171 843393171 650398385 958829827 958829827 604711692 944767116 944767116 876609675 823914066 868074088 868074088 29224928 27521376 352322592 352322592 353111082 353111082 94113450 268861156 425058918 450356950 450356950 454133010 454133010 468635810 1070416288 1070416288 518396382 262212848 73664904 4194816 17827840 17827840 26479124 293879958 676201912 1063820561 1063820561 905759640 959681172 959681172 465379170 465379170 421593154 195035508 427943463 596707670 596707670 479085971 479085971 448142166 483121951 483121951 408539796 306783378 183242196 839389571 839389571 328662293 701925637 903691804 1064617899 1064617899 928868088 934379901 1026992002 1026992002 717128528 717128528 160192868 869740918 869740918 159449094 621286714 1034219744 1034219744 576055953 861192645 861192645 639881542 523452788 523452788 436612752 442606818 465567606 771643798 771643798 857072950 955579792 955579792 850863959 564075942 719199957 968626610 968626610 878470242 1002924290 1002924290 1043484507 1043484507 560843714 560843714 564555457 822352993 822352993 886153809 1052828762 1052828762 1052852531 1052852531 858292663 1008730383 1008730383 793355602 844751600 844751600 810075267 749222931 771824755 771824755 721749584 504961124 256413716 177258708 177258708 226019244 226019244 168330168 93744128 60810568 127146912 127146912 103147800 9751104 36458528 71047344 305006144 305006144 845734290 845734290 807077745 807077745 397415584 397415584 85008936 856760472 856760472 823436352 198039988 198039988 211037356 211037356 106761288 106761288 368582736 1015225093 1015225093 901550681 901550681 763744513 1035247971 1035247971 569658094 569658094 267974499 206574990 856235109 856235109 497290256 497290256 304829850 1023574166 1023574166 889145458 930087221 930087221 705495094 705495094 622278161 586476540 621809572 829165793 829165793 578948611 783443414 783443414 960578126 960578126 635405417 494260576 494260576 368919227 801950973 801950973 674614550 687958522 687958522 859213341 859213341 695236258 402657024 402657024 303769394 1022154826 1022154826 566906011 991714338 991714338 901185115 901185115 1026383740 1026383740 710684820 900458785 900458785 708061710 404033040 336699946 475070650 475070650 457985172 457985172 252464168 67895328 72082688 74498480 133587856 133587856 134865924 168133352 168133352 225931240 249871008 249871008 214000320 37779740 427774824 427774824 751144966 751144966 272467856 272467856 182243028 476693060 476693060 175049858 101095553 890559365 890559365 870141073 862151329 862151329 578542922 578542922 1007079468 1028128621 1028128621 906034335 566067809 298872017 61091746 272892136 294208362 300231138 362550370 362550370 349919370 361817956 361817956 413409346 413409346 102391448 42391632 110840208 110840208 324523346 324523346 373813658 373813658 526664226 526664226 615411544 615411544 522628956 522628956 647079832 647079832 561636774 677970824 777820047 777820047 842796928 842796928 399704596 524293182 524293182 500730048 517262046 517262046 420604434 420604434 315182898 285091998 559749601 559749601 748806180 748806180 683706476 110177480 398985446 398985446 1026400416 1026400416 919667962 807682147 807682147 771280844 410023426 89992872 89992872 85568680 89212544 89212544 98590752 216088588 264598580 734936520 734936520 187328705 170084500 181607616 181607616 459588128 459588128 296752642 287728354 63746312 560158450 560158450 357435563 405922566 405922566 115236496 184851488 184851488 639188908 878027701 878027701 728853131 588667194 588667194 377200798 308963145 32803370 392349064 888966102 888966102 740955405 732087416 537921041 100663592 100663592 550552512 569439105 569439105 192166608 192166608 541342560 715598121 715598121 122209449 588553360 588553360 164222864 195769716 247541884 247541884 183051732 127933664 66299320 122311728 122311728 78283096 12089664 18615808 90802832 664325536 664325536 569434017 575031056 575031056 148030084 38062224 714614060 714614060 619389905 554319904 554319904 261237644 197842164 195076456 636147177 711964033 784916488 784916488 764795488 764795488 573637253 784399728 784399728 268603674 582876305 582876305 559541517 29915553 24810412 567193921 567193921 491577504 935345729 935345729 602087808 752963888 752963888 206189920 642356025 642356025 662634136 662634136 235951041 619821313 619821313 550538368 237075584 673523973 673523973 810220814 1017506127 1017506127 847538895 847538895 545015554 622888041 622888041 201498753 310229206 310229206 165258208 198467378 977816710 989910579 989910579 907299203 540463243 276373770 343483914 343483914 1015417486 1015417486 203690631 199315336 422915534 422915534 368690345 368690345 479742287 562364939 939814157 939814157 873253899 338217031 903749355 903749355 940579268 955718316 955718316 431372644 431372644 425134250 882371594 882371594 435608550 889533732 889533732 563294825 563294825 561513152 750813345 750813345 783401580 783401580 692109477 665372316 60837664 119800872 271266312 300097480 360921440 360921440 362815768 362815768 319740928 392840328 392840328 215345868 215345868 203306246 203306246 307536768 307536768 418891968 418891968 417898688 417898688 306530448 270012786 310072760 390335994 390335994 369104314 366361096 291976386 358223792 358223792 52699552 409092656 409092656 480383778 480383778 363157606 238626588 521283694 521283694 294833966 135939476 204759372 439928214 439928214 232791288 232791288 232030252 232030252 260695924 260695924 340584020 419284352 419284352 199349056 190001844 13445568 2671616 608609417 688345768 688345768 432598306 432598306 274867521 946654599 946654599 686707067 686707067 890434967 890434967 943484547 943484547 874008679 673856789 673856789 570783065 216406476 216406476 853574080 853574080 574050339 567704984 567704984 100847672 448931606 448931606 306206144 519064364 519064364 492097860 511756908 511756908 205182642 523771172 523771172 971959143 971959143 433012710 851690625 851690625 569777121 572954832 586268961 590471985 590471985 690794720 690794720 586036432 586036432 545328197 172498996 163708928 190810469 190810469 169784020 164238564 153101601 163073792 163073792 160729856 108340512 108340512 93532776 71316736 134088520 134088520 116384480 31458048 31458048 606409088 606409088 31656192 31656192 354591362 354591362 305195314 305195314 398046074 398046074 355890946 355890946 54518832 54518832 314476264 392616378 392616378 359722338 331085682 25285970 310974194 310974194 52593456 380276924 507957888 507957888 648551424 648551424 1020328008 1020328008 854729407 551640088 551640088 966292792 966292792 292627362 732625842 1072694340 1072694340 212992852 712796080 881543440 881543440 749202913 415407430 985190656 985190656 685562597 586029860 763802737 763802737 515503838 1041168601 1041168601 877283379 854775308 610981257 608078464 1001348395 1015842943 1015842943 755249486 497421129 450363934 755057340 755057340 395330283 678546428 678546428 914502529 914502529 350053514 275639682 563986665 563986665 626150088 626150088 1042301407 1042301407 525020598 525020598 1072787854 1072787854 938844819 938844819 931179160 931179160 918618811 884288331 884288331 981044106 981044106 743431317 945631006 945631006 874182295 537953287 709323424 772878541 772878541 646144461 591689744 654710841 654710841 559165983 542581384 574949894 709573347 801636557 801636557 766060481 766060481 750347017 744844820 473333784 923062481 923062481 363669098 654456081 654456081 113280624 830773266 830773266 832917754 832917754 622968801 580726353 591279417 846725066 846725066 611208522 930265251 930265251 1025704081 1025704081 1066736482 1066736482 487160057 487160057 373909990 966527944 966527944 359801675 563318120 563318120 688306246 897110560 897110560 163775600 163775600 414537924 484772294 484772294 348980366 519569606 519569606 649625763 649625763 492245574 628540053 628540053 129356160 197228196 197228196 543298061 543298061 351410204 995361867 995361867 520326066 520326066 438499594 335994256 333724132 67115150 270668034 374684568 374684568 100976664 72401544 84183712 362082080 362082080 421366370 471908622 471908622 356090678 304686354 91556768 91556768 113081648 422535026 422535026 171391764 334269434 334269434 393787210 393787210 120198456 320992266 320992266 59058288 59058288 37749440 42992160 42992160 22020768 327222464 327222464 323560626 475117868 475117868 390328078 457217074 457217074 430700034 437429332 437429332 291732400 446971940 446971940 329566578 151030102 0 729809374 729809374 929939688 929939688 977012160 977012160 559531784 559531784 811465891 811465891 142974471 696656421 696656421 94007912 183951168 269262028 269262028 244503132 244503132 196112864 817414528 817414528 619720030 661724809 661724809 286405125 268604928 67125440 810162130 810162130 358213218 915662744 915662744 888805080 878184075 817926650 923272251 923272251 616039202 109651032 616244344 941819105 1011876495 1011876495 444282774 444282774 61482214 131731704 155387840 580911104 580960593 580960593 823793187 823793187 331011954 345743672 345743672 352963594 352963594 501302110 574136650 574136650 717343197 717343197 258256213 881640705 881640705 164463016 187581760 187581760 27586224 234528072 234528072 221256964 221256964 205148460 205148460 51503664 587211376 595640433 722593956 722593956 541182709 176253044 291531248 314566968 435774875 798016125 798016125 465819131 383287216 1007755789 1007755789 186646787 1039144970 1039144970 474193877 474193877 826473531 826473531 651769426 156344348 156344348 272847168 482431114 554263938 759312462 759312462 415494342 635637902 635637902 608122569 362940730 736104901 736104901 379584848 200434644 188273940 188273940 857549331 857549331 849376432 809949315 643728922 61375200 55397816 124561592 336134656 336134656 269558274 837814402 867516825 867516825 353761632 822551362 822551362 587777073 617287068 660735121 660735121 537079809 537079809 278218023 754883427 905235435 1022372555 1022372555 1012665999 631265573 631265573 1016661597 1016661597 1008219360 1008219360 843393171 650398385 519213089 604711692 604711692 538654209 135007236 335547406 335547406 8554138 106649170 106649170 271370384 352322592 352322592 353111082 353111082 300290472 320594816 425058918 450356950 450356950 730457977 730457977 1039610300 1039610300 875306456 604051139 604051139 1059597216 1059597216 623181876 228214871 882037803 882037803 740202125 1015683117 1015683117 905759640 959681172 959681172 423037746 715931219 715931219 159458660 427943463 596707670 596707670 482622330 800517305 800517305 532904485 956405431 956405431 672786383 1026651029 1026651029 839389571 336077586 328662293 986130516 1064617899 1064617899 928868088 934379901 934379901 284486927 271779872 25962496 344335392 869740918 869740918 159449094 621286714 740371282 740371282 921711554 921711554 861192645 639881542 397445450 397445450 343863682 393105856 490134318 490134318 304689282 304689282 955579792 955579792 850863959 134742560 152569380 693817805 693817805 878470242 1002924290 1002924290 43465296 34818112 13388384 22546080 22546080 33216480 35032560 35032560 172692800 250273891 1052852531 1052852531 858292663 1008730383 1008730383 793355602 844751600 844751600 810075267 749222931 771824755 771824755 721749584 504961124 364120938 460392788 460392788 104857752 109522976 109522976 202424673 803062589 803062589 239726585 967422303 967422303 149122808 997589664 997589664 998255129 1007590261 1007590261 239777199 232402800 78758976 78758976 67305792 4222976 181474480 192777476 198039988 198039988 211037356 211037356 106761288 106761288 368582736 368582736 520429085 901550681 901550681 763744513 1035247971 1035247971 668847986 668847986 402682980 402682980 856235109 924991253 924991253 497290256 304829850 501507036 501507036 889145458 889145458 596713673 596713673 163743441 548479688 745541892 745541892 185730852 825294953 825294953 788664869 724263712 650324693 650324693 474954894 850977219 850977219 402849792 801950973 801950973 674614550 687958522 982612198 982612198 859213341 162419377 282796788 961549440 961549440 1022154826 1022154826 482086734 991714338 991714338 705876501 186720564 396571444 396571444 710684820 710684820 108024944 108024944 17448992 17448992 22022176 88351264 88351264 88613536 88613536 11398464 15222784 19735104 19735104 57323956 134865924 137098788 137098788 623983425 733260659 733260659 839188955 904926025 904926025 1039955563 1039955563 1033161327 930423712 930423712 974883461 974883461 901444256 375507344 375507344 890559365 890559365 870141073 1015022100 1015022100 915407451 506610458 1007079468 1028128621 1028128621 906034335 566067809 629673985 629673985 272892136 294208362 300231138 362550370 362550370 349919370 361817956 361817956 413409346 413409346 102391448 102335056 110840208 110840208 385911576 385911576 373813658 373813658 526664226 526664226 339772942 140035716 496686702 496686702 460888494 416420550 295045752 463470850 463470850 168925202 12953504 220784864 220784864 16802444 500730048 500730048 402762456 402762456 420604434 420604434 315182898 285091998 559749601 559749601 748806180 748806180 683706476 126971694 398985446 398985446 1026400416 1026400416 919667962 807682147 807682147 771280844 627378403 225091662 1065878587 1065878587 830474308 1019528287 1019528287 598246465 745014472 745014472 857792851 1033945468 1033945468 283714602 174113172 459588128 459588128 296752642 343178994 924252691 924252691 669746415 669746415 339848947 668287295 668287295 1070058528 1070058528 594957681 878027701 878027701 728853131 97558596 377200798 407406229 416420038 416420038 392349064 888966102 888966102 740955405 995672743 995672743 209764428 209764428 835716066 835716066 561021923 192166608 192166608 541342560 715598121 715598121 122209449 775034420 775034420 164222864 666077536 666077536 247541884 240930776 572155217 572155217 122311728 122311728 112247640 113111616 113111616 92873473 664325536 664325536 549718209 541657696 148030084 148030084 38062224 714614060 714614060 623616416 239498389 617887409 617887409 559614664 537920001 537920001 711964033 784916488 784916488 764795488 764795488 573637253 784399728 784399728 266914972 582876305 582876305 559541517 29915553 24810412 567193921 567193921 111596136 88248316 88248316 72039608 107028888 206189920 212996940 212996940 119802188 49333200 26772576 17991104 32955360 550538368 550538368 483308838 483308838 964777288 964777288 959121439 525461519 423921452 548281665 882384839 882384839 751305933 944508039 944508039 310229206 942672196 975701151 977816710 989910579 989910579 907299203 540463243 134291460 702554148 746860749 1015417486 1015417486 205467078 153103648 422915534 422915534 368690345 368690345 479742287 562364939 939814157 939814157 873253899 817166443 817166443 696757801 940579268 940579268 677917382 416482693 414535489 25911298 815792451 815792451 435608550 889533732 889533732 76054569 20177156 20177156 21512736 56672688 65277328 65277328 48809424 37998560 37998560 48366544 48366544 35614928 85866112 366749152 366749152 391779106 391779106 392840328 392840328 71865786 73877680 73877680 58640128 291799040 291799040 49350976 333488480 333488480 306307218 61424738 270012786 287440984 390335994 390335994 369104314 350095648 4243584 358223792 358223792 87039394 443189084 443189084 426609612 475914908 475914908 347678538 521283694 521283694 294833966 227195768 227195768 311055634 311055634 232791288 232791288 220237864 220237864 260695924 260695924 340584020 419284352 448570158 448570158 321073458 270423056 555621921 608609417 688345768 688345768 432598306 432598306 652695563 946654599 946654599 686707067 879380020 890434967 890434967 943484547 943484547 874008679 452047819 543850844 543850844 346706384 346706384 273681010 574050339 574050339 567704984 567704984 301634922 301634922 306206144 328091000 338090250 338090250 120245106 82479056 82479056 101188632 101918352 101918352 175721364 175721364 182912468 182912468 140352660 140352660 572954832 586268961 590471985 590471985 542060928 545325056 577057808 577057808 545328197 172498996 163708928 190810469 190810469 164238564 164238564 153101601 153101601 40773968 86243640 108340512 108340512 93532776 71316736 134088520 134088520 116384480 31458048 31458048 606409088 606409088 31656192 31656192 354591362 354591362 305195314 305195314 398046074 398046074 355890946 383732800 383732800 341745546 119361968 119361968 327565618 327565618 46103968 32666112 310974194 345031242 345031242 380276924 507957888 672404165 672404165 959376360 1020328008 1020328008 1035470703 1035470703 580940334 580940334 485237141 465704405 465704405 1072694340 1072694340 212992852 244502888 881543440 881543440 379771188 415407430 556061234 940726437 1002885906 1002885906 1027764015 1027764015 186104880 847513732 847513732 854775308 854775308 344197070 115316180 115316180 110050392 539230248 539230248 497421129 513131138 755057340 755057340 395330283 1019712814 1019712814 914502529 914502529 1011841821 1011841821 919600347 415857871 1009845186 1009845186 1042301407 1042301407 931597752 931597752 927014986 927014986 938844819 938844819 931179160 931179160 554230818 556320033 556320033 322488162 330985928 330985928 581224960 738564737 738564737 248278230 923536390 927466683 1023461299 1023461299 959447847 828656061 625227886 625227886 542581384 524685348 524685348 413360352 691013346 766060481 766060481 750347017 744844820 403235922 923062481 923062481 355391018 545808689 545808689 118097512 830773266 830773266 595775601 562337792 562221153 61791600 625927330 832688386 832688386 860716778 938660859 938660859 1025704081 1025704081 1066736482 1066736482 525183682 490971234 671281012 966527944 966527944 943849920 943849920 563318120 366792426 504122086 504122086 426514736 337251982 414537924 484772294 484772294 348980366 519569606 519569606 649625763 649625763 126604008 628540053 628540053 124830648 197228196 197228196 543298061 543298061 351410204 995361867 995361867 520326066 520326066 438499594 560411621 726524320 726524320 323486898 374684568 1004104340 1004104340 294315894 759827212 1064433080 1064433080 421366370 494963174 494963174 356090678 304686354 195564298 91556768 113081648 422535026 422535026 171391764 334269434 334269434 393787210 393787210 218747420 433194618 433194618 250848104 101970456 93564948 108409242 160789166 417710420 417710420 327222464 323560626 323610168 323610168 270132738 34297346 323818412 323818412 293518383 961407893 961407893 1024342170 1024342170 484779497 484779497 474557917 655122659 655122659 929939688 929939688 977012160 977012160 408227552 480887176 568347552 568347552 461533605 261644820 261644820 579275560 694434121 773229230 773229230 755631645 487411379 487411379 817414528 817414528 733290176 847981141 847981141 681204807 681204807 651199170 818418394 818418394 318379139 106565888 888805080 888805080 878184075 370671763 336593418 336593418 101254192 109651032 616244344 941819105 1011876495 1011876495 444282774 444282774 61482214 610262992 610262992 580911104 829307682 829307682 823793187 825788256 825788256 623903529 386715002 623496473 623496473 501302110 574136650 574136650 402769223 2097408 256 621364563 621364563 457224698 571075011 571075011 260552830 258249818 757204097 807063998 807063998 779092893 588911028 321000746 587211376 595640433 595640433 562137088 547457377 16884256 9560128 314566968 560529560 657007929 657007929 648493401 648493401 383287216 280369986 280369986 321263922 896153898 896153898 634016272 634016272 1014153988 1014153988 1064546486 1064546486 272847168 482431114 554263938 759312462 759312462 415494342 635637902 635637902 608122569 362940730 736104901 736104901 379584848 111280450 109909080 109909080 857549331 857549331 849376432 809949315 643728922 379913202 98043608 56929456 89790346 89790346 70657641 837814402 867516825 867516825 353761632 671793716 671793716 587777073 612901916 660735121 660735121 656622240 909640607 1066401851 1066401851 905235435 1022372555 1022372555 306910860 461910016 462107766 990254765 990254765 1008219360 1008219360 347131685 1015118337 1015118337 813119756 813119756 610744713 876873867 876873867 560896987 657545464 657545464 106649170 271370384 271370384 308827288 308827288 300290472 300290472 320594816 320594816 77511754 122160312 730457977 730457977 1039610300 1039610300 875306456 604051139 604051139 1059597216 1059597216 623181876 498862142 984936224 991430199 991430199 1015683117 1015683117 696534180 332481345 332481345 423037746 715931219 715931219 420104978 420104978 447807197 447807197 482622330 800517305 800517305 739812940 956405431 956405431 672786383 1026651029 1026651029 541148892 541148892 249077889 986130516 986130516 999118392 999118392 906421716 1017661830 1017661830 694635707 65205537 344335392 432076160 432076160 430650726 149933862 740371282 740371282 921711554 921711554 288621259 395067632 395067632 360641210 343863682 393105856 561834149 688163133 688163133 526090007 526090007 216037380 348736967 710581093 710581093 665978056 665978056 368730382 368730382 228713272 454099746 454099746 207650832 196100500 230116112 255327036 255327036 195424808 217589232 217589232 174068132 40371600 267453336 762908420 762908420 130884661 354698444 434949606 434949606 201584652 428856396 428856396 223097008 362682214 364120938 460392788 460392788 264355992 247537884 155579488 202424673 803062589 803062589 239726585 967422303 967422303 149122808 997589664 997589664 998255129 1007590261 1007590261 373948738 373948738 116004312 95126076 95126076 435766688 435766688 290661416 161166948 181150112 241970608 258082816 258082816 63314796 253902140 253902140 45167472 170852436 201983048 201983048 400866048 452095628 970222226 970222226 956551826 956551826 625281086 924991253 924991253 458039951 171585707 501507036 501507036 294879692 294879692 197341428 197341428 148058820 148058820 745541892 930536360 930536360 825294953 825294953 788664869 724263712 545974479 545974479 474954894 850977219 883418077 883418077 811072131 811072131 371460378 717459222 982612198 982612198 302068438 307444354 714751808 961549440 961549440 977540556 977540556 514084814 612428174 612428174 562667616 978394835 978394835 340573335 326299564 849549526 1040522982 1040522982 341377168 163465320 154538404 233971812 253045308 253045308 170461288 93325568 354625925 354625925 405225222 405225222 412637447 412637447 1004487420 1004487420 733260659 733260659 900923399 904926025 904926025 1039955563 1039955563 1033161327 930423712 930423712 974883461 974883461 901444256 375507344 375507344 459544600 459544600 524309474 1015022100 1015022100 915407451 677566670 988099713 988099713 977472531 977472531 713173443 650580642 629673985 93368578 76788424 84021288 84021288 78901248 220961606 363626562 363626562 373916804 474060294 480011982 480011982 442111638 176215634 385911576 385911576 89641520 89641520 351273744 351273744 585505233 756471497 885671295 885671295 562577632 416420550 295045752 463470850 463470850 269869074 269869074 197976196 412903536 482437234 511799022 511799022 407236288 407236288 385173668 259441578 286769656 357712386 357712386 266074466 220627366 490578552 490578552 512043102 512043102 395388396 433144314 433144314 187728236 187728236 11398464 627378403 627378403 359261610 1065878587 1065878587 830474308 1019528287 1019528287 598246465 745014472 745014472 857792851 1033945468 1033945468 283714602 174113172 71926172 88735880 287158240 343178994 924252691 924252691 669746415 669746415 339848947 668287295 668287295 1070058528 1070058528 727175919 835247696 835247696 870009216 921822171 921822171 407406229 685340594 685340594 239768671 655890024 741361162 741361162 995672743 995672743 209764428 209764428 835716066 835716066 920068587 1000390004 1000390004 968696782 968696782 873286930 873286930 848242531 833632320 125570457 666077536 666077536 224971745 240930776 572155217 572155217 73131256 112247640 112247640 113111616 113111616 92873473 656147032 656147032 541657696 541657696 227023432 671093424 689575053 689575053 623616416 713510360 713510360 617887409 617887409 613332144 559636041 537920001 593409536 600163473 600163473 668639313 668639313 53232816 25511345 65853136 65853136 48096752 48096752 31535424 31535424 12632256 27068992 41272448 68615884 245576028 502169614 502169614 642579579 642579579 315113082 315113082 157129266 402138894 774260207 774260207 759704568 594742465 506706153 1002782936 1002782936 964777288 964777288 959121439 678360252 678360252 548281665 882384839 882384839 751305933 944508039 944508039 178832724 942672196 975701151 975701151 608063894 537058048 537058048 490834476 134291460 702554148 746860749 746860749 281942857 205467078 153103648 135130116 92334724 947972814 947972814 420054819 333047538 459317748 459317748 406324106 817166443 817166443 696757801 890257862 948155401 948155401 764590699 687040423 687040423 294219776 294219776 152252964 152252964 26288708 89199104 89199104 201713676 940268702 940268702 587466900 422752326 806432608 833482083 833482083 550733408 390880250 313636712 313636712 366749152 366749152 391779106 391779106 307019792 281467266 311217234 311217234 99930299 902277811 902277811 597596001 567178579 567178579 62706835 817954000 830398371 830398371 593309361 846608907 846608907 622340616 277349802 297795810 297795810 292455336 203702296 443189084 443189084 426609612 475914908 475914908 347678538 347678538 255099150 255099150 227195768 227195768 128343168 180199116 180199116 40109104 201883964 201883964 186659180 153196876 226949712 226949712 448570158 448570158 321073458 270423056 555621921 555621921 373495976 373495976 308490642 436594710 652695563 758108541 758108541 567781474 879380020 879380020 792547424 743671468 715359952 715359952 682894032 944300890 944300890 346706384 346706384 273681010 394580592 394580592 325617634 251822964 301634922 301634922 266518738 328091000 338090250 338090250 206592644 82479056 306320530 306320530 138194796 531615635 531615635 674053125 720714705 720714705 701274832 710273685 710273685 184918033 175228852 722371617 722371617 672533185 13513088 4331776 29884608 29884608 19607616 19084704 136315328 147326148 147326148 27788448 27788448 91812544 91812544 76679168 76679168 67963968 67963968 29101952 202061292 202061292 745344392 745344392 673396037 227417196 227417196 88961028 59067792 301927296 301927296 76773400 76901032 307903608 307903608 383732800 383732800 341745546 335384608 335384608 39998560 39998560 32666112 32666112 41947728 345031242 345031242 276496882 429397619 672404165 1066177728 1066177728 959376360 511429913 1035470703 1035470703 580940334 580940334 485237141 465704405 465704405 581830678 581830678 436477265 244502888 554180641 554180641 50331696 319839008 807473189 940726437 1002885906 1002885906 1027764015 1027764015 607354257 847513732 937560484 937560484 878102940 878102940 777132048 707530005 864568593 864568593 478908490 253493844 513131138 907491867 923906571 923906571 1019712814 1019712814 805213862 805213862 1011841821 1011841821 919600347 415857871 1009845186 1009845186 808428692 808428692 931597752 931597752 927014986 927014986 55610320 64350960 193244832 193244832 967339598 967339598 907592733 112137921 140456452 140456452 581224960 738564737 738564737 673690885 960674463 960674463 1023461299 1023461299 959447847 828656061 625227886 625227886 402774051 268656674 413360352 413360352 157409700 138937476 172871040 172871040 167845908 167845908 141438336 52584512 27386208 33685536 118097512 118097512 105563353 545394753 819308089 904298057 904298057 847440714 625927330 625927330 573672568 860716778 938660859 938660859 236093972 236093972 311166488 525183682 525183682 490971234 671281012 671281012 381633251 943849920 943849920 620005420 620005420 419063622 426514736 426514736 337251982 286519842 119276040 170987080 214179984 214179984 208258468 204534540 136970284 36541344 176582032 176582032 143919684 183734000 183734000 64779220 298930508 298930508 502736144 502736144 308280190 280433408 414462885 560411621 726524320 726524320 541065345 541065345 1004104340 1004104340 294315894 759827212 1064433080 1064433080 942337837 942337837 494963174 647367221 647367221 487987758 197633140 239536178 574505675 574505675 86513036 875128031 875128031 239100004 841874227 841874227 531279952 621636191 621636191 277373100 312591786 312591786 797670657 797670657 417710420 602074735 602074735 339840016 370001970 370001970 386155816 386155816 355766584 306973722 961407893 961407893 1024342170 1024342170 484779497 484779497 474557917 673503232 673585413 673585413 671346693 954442901 954442901 408227552 537184256 568347552 568347552 461533605 799073028 799073028 579275560 694434121 773229230 773229230 755631645 487411379 487411379 296297309 296297309 733290176 847981141 847981141 833428442 681204807 651199170 818418394 818418394 919081104 919081104 610928531 503449370 503449370 416420550 336593418 336593418 808138255 808138255 103233816 133591641 658690233 658690233 231014885 682984521 682984521 1036602695 1036602695 722882329 829307682 869889450 869889450 825788256 825788256 623903529 386715002 623496473 1008915368 1008915368 270549568 881936105 881936105 719859040 492637178 889536789 889536789 457224698 571075011 571075011 260552830 258249818 757204097 807063998 807063998 779092893 1016042079 1016042079 344109147 27858224 562137088 562137088 547457377 2484545 312914688 312914688 560529560 657007929 657007929 648493401 648493401 383270529 280369986 280369986 321263922 896153898 896153898 694707255 671098119 1014153988 1014153988 1064546486 1064546486 295801056 295801056 286412864 286412864 159440968 159440968 609093408 609093408 874643568 874643568 545995890 579022929 579022929 658007420 758108525 758108525 531318377 531318377 41512017 101230488 379913202 379913202 307495658 351113706 351113706 301940706 346279456 629475336 629475336 352795179 352795179 413201054 844210912 844210912 646911000 773925885 773925885 656622240 909640607 1066401851 1066401851 513431474 513431474 360072374 360072374 306910860 104988704 707051041 707051041 755961358 755961358 890241579 1015118337 1015118337 813119756 813119756 610744713 876873867 876873867 560896987 657545464 657545464 51094560 23852448 111932760 111932760 109580000 109580000 64753392 122290432 404051468 404051468 361790237 430797823 502867950 711186043 711186043 658645288 577091841 780149272 780149272 680600133 924133163 924133163 984936224 991430199 991430199 328253846 696534180 696534180 155748453 182064680 236139036 1016669271 1016669271 926035528 898441500 229378624 244384980 244384980 182939988 693956824 739812940 809140964 809140964 713154975 780363716 780363716 740499679 740499679 249077889 318927206 318927206 999118392 999118392 858977107 1017661830 1017661830 806645311 806645311 492538584 686987697 686987697 430650726 149933862 593691024 937472456 937472456 908312834 908306603 889676274 395067632 360641210 328254066 179455140 561834149 691627552 691627552 639189549 921745839 921745839 348736967 746034688 746034688 654784569 603105880 368730382 368730382 228713272 454099746 454099746 207650832 196100500 230116112 255327036 255327036 195424808 217589232 315703381 1047065671 1047065671 1029919747 762908420 863283959 863283959 915499736 915499736 642797075 893279011 893279011 866356990 866356990 260317256 453977460 453977460 342496612 361318784 361318784 345026482 341361330 271862216 40368528 36965136 36965136 36719120 38355568 600572456 622144041 764751513 764751513 1001401182 1001401182 742484891 817898418 817898418 423727910 435766688 435766688 290661416 251724296 219424600 241970608 258082816 341771832 341771832 528748078 528748078 370485786 370485786 315818248 108776792 400866048 432056230 970222226 970222226 956551826 956551826 369697818 369697818 543769662 673760517 673760517 612987737 612987737 750261544 750261544 343602531 568525520 636682677 636682677 681654224 1039021073 1039021073 242160948 390728491 390728491 284687298 284687298 272887938 336474624 715153678 883418077 883418077 811072131 811072131 371460378 717459222 816983611 816983611 959253282 959253282 714751808 714751808 771889171 977540556 977540556 901963002 901963002 617795606 617795606 978394835 978394835 840740884 1063364719 1063364719 1040522982 1040522982 341377168 163465320 154538404 233971812 253045308 253045308 170461288 93325568 354625925 354625925 405225222 405225222 820888000 820888000 1004487420 1004487420 948551808 814425671 900923399 900923399 763474706 812352260 966821831 966821831 601862719 526899644 526899644 835511368 835511368 827116707 812157312 211910904 682262848 682262848 942674717 942674717 444693076 677566670 988099713 988099713 977472531 977472531 713173443 650580642 363356032 93368578 76788424 84021288 84021288 27991080 220961606 363626562 363626562 373916804 474060294 480011982 480011982 442111638 176215634 434417880 434417880 298277068 323000842 526796824 526796824 585505233 756471497 885671295 885671295 851470482 510988924 510988924 347478858 243466532 269869074 269869074 197976196 412903536 482437234 511799022 511799022 407236288 407236288 385173668 259441578 286769656 357712386 357712386 266074466 330773088 330773088 431952406 512043102 512043102 395388396 395388396 110150232 187728236 187728236 15204800 275112296 359261610 359261610 351326978 289068896 119820856 10087512 37816464 80282624 80282624 188746024 188746024 183271668 197152212 197152212 0 0 1904736 18208008 20925016 329667600 329667600 269640468 269640468 273573348 608662331 608662331 443308512 727175919 727175919 153160040 403822306 870009216 921822171 921822171 294213237 685340594 685340594 181125910 221435120 741361162 741361162 366218889 8462336 8462336 536879768 545268418 545268418 920068587 1000390004 1000390004 968696782 968696782 876481627 876481627 848242531 833632320 188218164 188218164 643942452 643942452 74223232 74223232 54429824 58836584 58978416 110971680 110971680 27130728 67636224 656147032 656147032 604904457 633491085 798019833 798019833 689575053 689575053 574619793 713510360 713510360 82099412 613332144 613332144 655952504 655952504 634129641 639182361 639182361 72682641 43881136 578453105 578453105 582557841 582557841 24206368 554734848 554734848 31535424 65574184 558012529 558012529 68615884 298246530 502169614 502169614 642579579 642579579 315113082 315113082 157129266 402138894 774260207 774260207 759704568 594742465 506706153 1002782936 1002782936 556427689 795031544 795031544 678360252 678360252 203473010 42227930 365039850 382076976 382076976 364065642 407557254 413770566 413770566 408031878 367821770 537058048 615613258 615613258 470042374 470042374 959958739 959958739 783015128 783015128 846601107 846601107 680792534 947972814 947972814 834145503 834145503 459317748 459317748 406324106 623661468 677330565 677330565 606759976 948155401 948155401 764590699 687040423 687040423 338741148 355711638 440926450 440926450 196949490 155324580 89199104 440970440 940268702 940268702 587466900 422752326 806432608 833482083 833482083 550733408 402890528 402890528 313636712 270036232 340108224 340108224 307019792 307019792 281467266 311217234 311217234 99930299 902277811 902277811 597596001 567178579 567178579 62706835 817954000 830398371 830398371 593309361 846608907 846608907 622340616 277349802 297795810 297795810 269274114 409731602 409731602 198305954 198780660 314074160 426369554 436798086 436798086 320303112 387238458 387238458 384082178 384082178 180199116 180199116 90741760 201883964 201883964 186659180 572981509 634444221 694600576 694600576 225759492 38173064 74760860 536912256 536912256 687998753 687998753 618448139 830785635 830785635 406890640 451707751 451707751 658689499 658689499 743671468 743671468 486583344 708346272 708346272 944300890 944300890 369935744 41389442 338054040 338054040 276895972 276895972 251822964 251822964 430853334 430853334 483188028 483188028 459723634 459723634 336648428 376051452 376051452 138194796 531615635 531615635 674053125 720714705 720714705 701274832 710273685 710273685 687018048 175228852 722371617 722371617 685238209 137090308 679502848 679502848 537461825 135081156 147761157 147761157 147326148 147326148 159139717 159139717 147956420 153951372 153951372 151164932 140546208 7308672 28711552 766601349 766601349 745344392 748868421 748868421 597545712 698108549 700468701 700468701 870384312 870384312 621355107 586286944 6500736 357983552 357983552 326869130 327664018 335384608 335384608 119088520 439612726 449107112 449107112 390425930 390425930 323129680 520302654 520302654 420812288 1066177728 1066177728 769781886 769781886 1037443033 1037443033 929392346 929392346 670157553 837237952 837237952 581830678 588174260 588174260 780460072 780460072 554180641 52429104 185214242 807473189 807473189 466754174 706146818 764934765 764934765 607354257 607354257 937560484 937560484 878102940 941382726 941382726 965264486 965264486 864568593 478908490 470436866 470436866 907491867 923906571 923906571 518350982 423771093 439786327 983421843 983421843 637617065 532136407 77951911 771041781 771041781 623810712 820841485 820841485 813966437 713622740 203555904 55610320 64350960 193244832 721718332 967339598 967339598 907592733 112137921 197039446 436262420 550454656 550454656 673690885 673690885 960674463 960674463 648005634 1058366178 1058366178 709279781 608188453 554437665 554437665 417174726 417174726 278614976 541750374 543356421 705634301 746355460 746355460 983189171 983189171 838983955 881465153 881465153 603543520 101717000 693594829 1024629258 1024629258 904298057 994397350 994397350 220016172 619601537 619601537 575199378 46767361 206490392 719882705 719882705 881994012 1036537816 1036537816 781065287 781065287 278668376 456024522 798615662 798615662 901089930 901089930 419063622 514420044 514420044 321010978 307502034 180762214 70790944 84224040 84224040 162021232 601678461 601678461 97443048 663055753 663055753 257465892 257465892 177213780 553666313 553666313 518770856 512877150 157021860 902673136 902673136 570445890 3291970 545523904 545523904 541065345 541065345 33926240 53687088 946272576 946272576 51510631 151258496 942337837 942337837 339301198 647367221 647367221 504955612 504955612 277198018 574505675 574505675 86513036 875128031 875128031 239100004 841874227 841874227 531279952 621636191 621636191 359452074 312591786 312591786 797670657 797670657 481945422 602074735 602074735 350797394 370001970 370001970 524163850 524163850 355766584 306973722 306973722 393325132 449888982 449888982 435513648 741132360 741132360 673503232 673585413 673585413 275176087 809696912 809696912 306170641 537184256 537184256 673450840 673450840 799073028 799073028 536961024 578814468 578814468 493093499 336469002 336469002 327599224 134402052 171914410 465900406 465900406 833428442 833428442 818556993 274127490 341628162 341628162 919081104 919081104 1051272102 1051272102 503449370 579478998 920650203 920650203 878060947 808138255 755312685 984746093 984746093 658690233 747710082 810075267 810075267 1036602695 1036602695 722882329 651232344 977814569 977814569 764527993 933306474 933306474 386475432 386602009 1008915368 1008915368 882054185 881936105 881936105 719859040 494150856 889536789 889536789 412164678 412164678 207192422 216531482 216531482 195167396 658543896 658543896 682249012 1016042079 1016042079 344109147 27858224 698655808 788895353 788895353 589029776 652605992 816593608 268536568 399895290 936623834 936623834 920200923 438653094 438653094 323096608 455291190 839434276 839434276 694707255 671098119 470347883 97211586 360899786 360899786 295801056 295801056 292587522 292587522 406891296 406891296 901532680 901532680 874643568 874643568 545995890 579022929 579022929 658007420 808638055 808638055 782393926 782393926 41512017 111019088 322964008 322964008 358620034 384896218 384896218 301940706 346279456 553775169 553775169 352795179 352795179 604389376 844210912 844210912 646911000 773925885 773925885 599344337 768806952 768806952 83895021 514888979 611899241 940196370 940196370 486748192 486748192 707051041 707051041 683831744 654147699 890241579 890241579 889266688 338157574 338157574 206646922 206646922 348168778 348168778 352859626 352859626 78189970 296247416 337690890 337690890 363070234 363070234 274203818 274203818 404051468 404051468 361790237 430797823 502867950 711186043 711186043 658645288 884056064 884056064 780149272 900899424 924133163 924133163 940563984 940563984 731534376 773375581 773375581 547925670 39748723 182064680 236139036 1023477376 1023477376 926035528 898441500 187706384 379391241 379391241 985927883 985927883 1011358246 1011358246 854928339 854928339 780363716 780363716 740499679 740499679 993050632 993050632 318927206 210012340 433150244 708178933 708178933 529770304 806645311 806645311 492538584 686987697 686987697 332163828 134876536 593691024 937472456 937472456 908312834 908306603 889676274 322971360 328254066 328254066 190781936 140896132 691627552 691627552 639189549 921745839 921745839 222169000 746034688 746034688 603105880 603105880 850157687 850157687 1039209745 1039209745 976765568 976765568 160250784 919055018 1031065365 1031065365 1008603896 590298417 590298417 1047065671 1047065671 1029919747 337317411 863283959 863283959 915499736 915499736 642797075 893279011 893279011 866356990 866356990 700871783 700871783 453977460 621134932 621134932 492626693 841376371 841376371 370004981 954469185 954469185 538200259 538200259 408558004 600572456 622144041 827021970 827021970 1001401182 1001401182 742484891 817898418 817898418 423727910 167957408 159450004 251724296 251724296 219424600 219424600 31988828 341771832 341771832 528748078 528748078 370485786 370485786 315818248 800988101 800988101 372520216 905994805 905994805 873064639 873064639 923322505 923322505 543769662 673760517 673760517 612987737 612987737 750261544 750261544 343602531 568525520 636682677 636682677 681654224 1039021073 1039021073 546374600 239993791 926556952 926556952 809187075 68309568 336474624 336474624 69536770 337644296 337644296 474222272 474222272 661983470 816983611 816983611 959253282 959253282 434381510 541327531 771889171 771889171 294032486 901963002 901963002 617795606 617795606 139487329 840740884 840740884 1063364719 1063364719 1018130471 198921321 198921321 62003792 54558976 126825008 126825008 96345960 99199656 99199656 13573984 13573984 8339328 11274272 820888000 820888000 946348292 1008227451 1008227451 814425671 686896979 746639528 746639528 303259858 966821831 966821831 601862719 526899644 980869952 980869952 835511368 827116707 812157312 491503060 682262848 682262848 538124864 982665301 982665301 975458583 815997510 824708761 824708761 382296487 289008512 363356032 363356032 68341576 89796320 89796320 79175944 93207144 337358400 354941226 354941226 89698088 87901864 46815312 46815312 46270016 46270016 434417880 434417880 298277068 323000842 526796824 526796824 622779945 622779945 150852206 1008486927 1008486927 510988924 914622555 914622555 243466532 749086543 749086543 338364652 370359488 370359488 289458336 59034248 101032456 101032456 58984560 58984560 391244368 391244368 374680218 336906762 336906762 330773088 431952406 431952406 360475154 360475154 239666416 115445636 478414664 478414664 377487482 102565930 352610818 352610818 351326978 289068896 8465480 9006080 37816464 80282624 80282624 480870630 480870630 241771932 241771932 197152212 161603940 59007508 130498024 380260184 380260184 302699538 131113368 131113368 515279108 515279108 360090244 360090244 322966908 322966908 290872962 290872962 60168816 993675901 993675901 1014880485 1014880485 664519907 990255159 990255159 942148219 884610891 588154391 203688204 511781120 511781120 536879768 536879768 349177472 717234318 807288891 807288891 902225536 902225536 876481627 876481627 534252792 534252792 628456392 628456392 643942452 643942452 156881888 141249728 54429824 58836584 58978416 110971680 110971680 52651376 67636224 118603833 621848112 621848112 633491085 798019833 798019833 50236793 721915268 721915268 566416497 554425500 627353077 627353077 780317697 780317697 655952504 634129641 639182361 639182361 658764273 658764273 592811601 578453105 582557841 582557841 21926992 554734848 554734848 29023408 65574184 558012529 558012529 98998712 298246530 298246530 364096106 364096106 704552834 949607663 949607663 170088194 170088194 364312350 364312350 413745900 539957426 694883765 741325962 816027716 816027716 795031544 795031544 1008244581 1008244581 670734122 660738489 608862289 999538548 999538548 941418377 469270486 971234468 1067117431 1067117431 892714626 459033200 615613258 615613258 726431452 726431452 959958739 959958739 783015128 783015128 846601107 846601107 680792534 877522059 877522059 834145503 834145503 606077193 606192909 606192909 623661468 677330565 677330565 335892484 335892484 134391818 812620457 812620457 342502887 939529484 939529484 1004220048 1004220048 527966692 609122473 639346713 990660618 990660618 996157660 996157660 900016491 182909536 110771340 160949280 160949280 402890528 402890528 300001104 250595264 282657746 282657746 290115680 294278256 294278256 82094104 90477408 90477408 56114048 38733600 38673552 15863632 65672128 65672128 318900528 318902322 820841586 820841586 811807107 553658368 553658368 286074880 286074880 336798594 336798594 409731602 446996724 446996724 38345522 314074160 426369554 436798086 436798086 407948590 497320446 497320446 490620608 384082178 306959878 167848196 491629614 491629614 111163968 143931745 572981509 634444221 694600576 694600576 908333670 908333670 618055901 553953696 553953696 687998753 687998753 801324954 830785635 830785635 363523434 451707751 656851648 656851648 456561825 456561825 144180760 650129220 708346272 708346272 80426184 369935744 369935744 341020690 338054040 338054040 347275792 347275792 495144784 495144784 430853334 430853334 483188028 483188028 459723634 459723634 336648428 376051452 376051452 43533248 43533248 13495488 37773760 40635792 61348752 176298720 176298720 687018048 687018048 43391568 546475717 685238209 685238209 574856208 706692993 707400981 707400981 135081156 147761157 242882188 242882188 58645908 201330728 201330728 147956420 153951372 153951372 234127520 234127520 23365796 28711552 766601349 766601349 539058592 748868421 748868421 597545712 698108549 700468701 700468701 870384312 870384312 621355107 586286944 6500736 357983552 357983552 389409594 389409594 998421471 998421471 965089383 916269179 916269179 449107112 390425930 1019296075 1019296075 887296858 887296858 700630083 1036684368 1036684368 769784138 769784138 1037443033 1037443033 929392346 929392346 1057835405 1057835405 837237952 181180516 588174260 610283673 780460072 780460072 117621808 52429104 52965696 1017294987 1017294987 466754174 1017156747 1017156747 957890074 957890074 442582660 442582660 809743431 809743431 941382726 941382726 965264486 965264486 277792848 344895562 486634570 486634570 340651146 610249450 625945793 625945793 328182816 702445333 983421843 983421843 691729718 532136407 282522723 771041781 771041781 623810712 1065818545 1065818545 738205707 874062163 874062163 423698924 423698924 577085833 721718332 721718332 893636676 893636676 604000264 604028937 604028937 552805640 338827714 338827714 370541178 445430392 789009958 789009958 1058366178 1058366178 608188453 608188453 554437665 554437665 417174726 417174726 286261794 541750374 543356421 705634301 746355460 746355460 983189171 983189171 838983955 881465153 881465153 603543520 173543556 693594829 1024629258 1024629258 550884476 994397350 994397350 330517384 619601537 619601537 575199378 40749974 142530076 719882705 719882705 881994012 1036537816 1036537816 822867233 822867233 657443927 848162865 848162865 798615662 951886568 951886568 935296004 935296004 514420044 321010978 429430276 429430276 320535906 137578294 84224040 320090112 601678461 601678461 97443048 663055753 663055753 257465892 257465892 177213780 563090753 735973492 735973492 688523972 688523972 902673136 902673136 570445890 283329410 548059938 564971456 564971456 972401733 972401733 53687088 946272576 946272576 489707010 476747982 476747982 444998236 339301198 496686636 496686636 504955612 504955612 277198018 248670878 160039616 160432740 160432740 571247373 748391824 748391824 556453921 556453921 554096673 359452074 359452074 109685234 71604008 178613526 235786000 481945422 481945422 366510126 350797394 350797394 246043004 524163850 524163850 174150256 140746756 140746756 531176178 536479226 536479226 244102324 741132360 741132360 615255369 498864626 479010076 133555688 10608960 14259072 142533824 514590439 643622755 673450840 673450840 235159553 536961024 536961024 578814468 1056964667 1056964667 637933593 1071024810 1071024810 134402052 206721676 206803596 206803596 885411408 885411408 818556993 372280272 372280272 341628162 279774625 597239138 1051272102 1060845038 1060845038 579478998 920650203 920650203 878060947 755312685 934160428 984746093 984746093 818687170 747710082 810075267 810075267 872989707 872989707 402875461 1007442016 1007442016 977814569 478373124 933306474 933306474 336172146 386602009 891949707 891949707 930069141 930069141 529787195 946954176 946954176 741617262 741617262 1006159863 1006159863 388666864 388666864 126563246 571916344 658543896 658543896 730330276 898469481 898469481 54047083 27312480 698655808 788895353 788895353 589029776 652605992 816593608 812449603 812449603 936623834 936623834 920200923 817377426 717087140 567753441 455291190 455291190 419653648 822198530 822198530 805355523 121235256 121235256 485631336 485631336 357564736 357564736 292587522 406891296 406891296 901532680 901532680 625000617 339829017 893438360 893438360 745308239 540559682 808638055 808638055 782393926 782393926 83892768 111019088 283251296 295835946 358620034 384896218 384896218 362142122 285353576 366047752 366047752 821085123 837933893 837933893 741695566 287406274 537337920 537337920 896228547 896228547 768806952 1026089230 1026089230 844384777 831177666 940196370 940196370 807776265 807776265 806039963 576881794 621204354 621204354 180746301 439376506 439376506 608998279 740988810 740988810 351562688 943270276 943270276 778638429 778638429 735626933 735626933 652370549 572732697 691446824 691446824 274203818 274203818 87896352 156240788 261064458 886131464 886131464 871409870 871409870 304663938 884056064 884056064 801440250 900899424 900899424 805558596 950348103 950348103 731534376 773375581 773375581 298386569 878707083 878707083 216073974 1072695133 1072695133 1015810308 892536367 497621328 1032862004 1032862004 985927883 985927883 1011358246 1011358246 854928339 854928339 728112790 728112790 371660631 812160808 993050632 993050632 350476752 350476752 486128748 486128748 428146688 428157030 490029888 490029888 451537182 516425826 516425826 332163828 311037230 393558696 393558696 528742784 528742784 489908894 391703508 322971360 300954304 403442946 403442946 284306308 136583168 136583168 136450308 416168452 550314054 550834913 550834913 112712252 231782452 231782452 850157687 850157687 1039209745 1039209745 976765568 976765568 160250784 919055018 1031065365 1031065365 1008603896 590298417 590298417 558488036 221232704 221232704 127949624 264729512 264729512 203316904 203316904 229282240 229282240 844718677 844718677 402866632 962612548 962612548 705291285 705291285 621134932 492626693 841376371 841376371 370004981 954469185 954469185 601379408 807930644 974917143 974917143 437379606 827021970 827021970 140920007 10506624 12767424 378757312 378757312 62218804 194187376 194187376 100688732 260253200 260253200 228202092 478490844 478490844 199896266 72161800 299435520 299435520 822165609 822165609 950327367 950327367 192255522 905994805 905994805 873064639 873064639 923322505 923322505 833133529 341227369 247418884 807677968 881802315 1016053764 1016053764 486753984 220972502 132887532 425722060 425722060 221250474 546374600 546374600 73536185 926556952 926556952 809187075 683697344 683697344 810173726 810173726 1008676870 1008676870 474222272 484838872 681711216 740827107 987767765 987767765 574823847 356980867 541327531 973343065 975965463 975965463 966617698 966617698 436495956 436495956 949322832 949322832 124016234 124016234 327204978 327204978 352295800 352295800 132190584 132190584 126825008 126825008 96345960 99199656 99199656 98700047 319951707 319951707 411579459 814559904 814559904 946348292 1008227451 1072185444 1072185444 721965923 746639528 746639528 303259858 303259858 176474196 595909744 714005589 980869952 980869952 200619932 242953204 347657758 491503060 995388180 995388180 538124864 982665301 982665301 975458583 3197515 247718045 247718045 193932136 313960865 810862081 810862081 839386131 839386131 646578433 586558936 310588498 511100604 511100604 354941226 312453376 504711942 504711942 474787478 403966470 217565394 323737020 323737020 306745700 50382640 58096568 522589775 622779945 622779945 35183673 1008486927 1008486927 875569480 914622555 914622555 220136734 749086543 749086543 338364652 289456290 333760530 333760530 59034248 101032456 101032456 384581784 552077641 579646302 769605357 769605357 482420095 782167090 857999667 857999667 386013339 952714500 1069123374 1069123374 341854918 478414664 478414664 377487482 102565930 84559432 68577920 75586056 75586056 8465480 26045536 81018560 81018560 4395080 480870630 480870630 241771932 241771932 201031444 258550396 258550396 226003944 380260184 380260184 302699538 131113368 131113368 515279108 515279108 354431630 354431630 322966908 322966908 290872962 290872962 188820976 993675901 993675901 1014880485 1014880485 953498274 990255159 990255159 942148219 884610891 711196944 203688204 511781120 511781120 549061804 549061804 349177472 717234318 717234318 285212706 285216768 285216768 552088576 552088576 539037889 734400820 734400820 628456392 167701348 167701348 156881888 141249728 69439912 2634752 2634752 101976080 101976080 52651376 67406609 572328976 621848112 621848112 553938081 553938081 186712208 186712208 721915268 721915268 688762985 688762985 667821289 667821289 780317697 780317697 113559768 113559768 112514376 81450696 658764273 658764273 592811601 557902720 51887888 51887888 32337792 551624416 557961569 557961569 39714080 57082936 57082936 98998712 98998712 83946320 364096106 364096106 704552834 949607663 949607663 1031100970 1031100970 944573024 944573024 413745900 539957426 694883765 741325962 816027716 816027716 730398996 730398996 1008244581 1008244581 670734122 915709702 947355999 999538548 999538548 941418377 469270486 971234468 1067117431 1067117431 892714626 388727256 388727256 443067642 726431452 726431452 655819808 655819808 295524960 295524960 277872706 478757120 478757120 280011788 254945260 678073864 678073864 606077193 606192909 606192909 150023389 602718345 602718345 629671017 629671017 363769137 812620457 812620457 342502887 939529484 939529484 1004220048 1004220048 527966692 609122473 639346713 990660618 990660618 996157660 996157660 959294887 844004160 927238985 1000150202 1000150202 216024404 300001104 300001104 295999448 295999448 282657746 290115680 294278256 304345362 327385440 327385440 52437651 861732995 861732995 845220499 841373075 872149667 872149667 813879363 853597824 853597824 820841586 811807107 583604969 583604969 305145042 286074880 336798594 336798594 294583584 446996724 446996724 66389520 159401188 159401188 463276262 463276262 715689413 715689413 686572885 724778421 724778421 306959878 168039220 491629614 491629614 774971661 774971661 738267449 186782004 152347494 279308610 908333670 908333670 618055901 553953696 553953696 360049081 629682228 801324954 801324954 560968663 343519751 187100608 656851648 656851648 168374304 703759892 703759892 650129220 650129220 212174021 105906010 342333536 342333536 341020690 309830232 309830232 347275792 531352638 531352638 495144784 316548326 533515518 533515518 526289484 244318480 244318480 448404928 448404928 5243520 16606912 16606912 970711155 970711155 862847459 865658176 865658176 176298720 134682640 134682640 43391568 576619648 576619648 574856208 574856208 706692993 707400981 707400981 6411541 139055488 242882188 242882188 58645908 201330728 201330728 87327236 70919200 83920904 234127520 234127520 32820096 32820096 99690856 99690856 77684992 624533832 624533832 77209248 72301704 81880320 81880320 41029008 8258432 303361050 303361050 339479016 339479016 369903546 389409594 389409594 998421471 998421471 965089383 916269179 916269179 545827980 545827980 1019296075 1019296075 887296858 887296858 700630083 700630083 628683557 769784138 769784138 559790128 188748920 679627030 988963724 1057835405 1057835405 919786203 1011796030 1011796030 610283673 610283673 97239216 97239216 36312336 121177632 1017294987 1017294987 149021124 1017156747 1017156747 957890074 957890074 853035540 853035540 840804548 840804548 811868433 674791506 674791506 908902418 908902418 757623085 757623085 944188460 1016069199 1016069199 625945793 625945793 829523286 829523286 702445333 691729718 719877128 719877128 838740325 1010592583 1010592583 704754186 1065818545 1065818545 738205707 874062163 874062163 423698924 423698924 708849024 708849024 159796463 893636676 893636676 604000264 604028937 604028937 552805640 812752287 812752287 428741244 864283749 864283749 789009958 573658625 747430352 747430352 721475628 427958294 427958294 399855998 399855998 286261794 171639318 144323008 446840934 446840934 348647486 348647486 500844526 500844526 203953882 151655460 173543556 236183752 236183752 257676468 257676468 247673052 79485556 48516496 487411184 487411184 343596982 483208398 483208398 217157078 116660188 283019536 480481050 646708940 749874485 977344652 977344652 908140827 848162865 848162865 484700622 951886568 951886568 935296004 935296004 282046334 272765058 429430276 429430276 363002426 511754334 511754334 320090112 320090112 296728446 296728446 161704224 164338496 181775492 233728468 233728468 563090753 735973492 735973492 688523972 688523972 606507337 592648338 592648338 283329410 548059938 569151718 902458729 972401733 972401733 251048077 46419924 511221614 511221614 481597544 867733613 867733613 470993258 813973505 813973505 185911860 409309892 409309892 620789889 620789889 218239020 751997997 751997997 748391824 748391824 556453921 556453921 554096673 239743841 217964108 183988372 126005784 770001673 770001673 327217220 927248865 927248865 90644768 88605864 325337280 325337280 171741074 70519560 70519560 100927562 531176178 536479226 536479226 174195812 476431794 496935008 498864626 1040863300 1040863300 312693001 302642564 1054259590 1054259590 810474203 861541952 861541952 680449593 251805785 633941736 633941736 142671872 1056964667 1056964667 637933593 1071024810 1071024810 274070720 274070720 266001476 442082980 885411408 885411408 307384064 372280272 372280272 344988552 324960330 396379578 429008712 1060845038 1060845038 431105930 404893716 304161042 520562404 889725098 934160428 934160428 818687170 930647928 930647928 866133709 518849366 518849366 44248400 675567840 1007442016 1007442016 142668288 563275892 579078225 579078225 577288147 617617203 856359402 856359402 930069141 930069141 529787195 946954176 946954176 750453856 959845225 1006159863 1006159863 388666864 388666864 126563246 571916344 571916344 644981560 730330276 898469481 898469481 832102147 842946499 946270145 946270145 51264864 51264864 193272848 193272848 812449603 812449603 550515648 552600513 817377426 817377426 717087140 567753441 608266284 608266284 419653648 822198530 822198530 805355523 152196405 383764974 485631336 485631336 357564736 357564736 1071049541 1071049541 869267182 869267182 270701413 698676837 971328311 971328311 979483373 979483373 981954927 981954927 451299338 920988122 1062414519 1062414519 994390719 982059248 337166514 313003008 313003008 376396994 376396994 272871872 366047752 366047752 821085123 837933893 837933893 741695566 287406274 287406274 91110673 896228547 896228547 762834853 1026089230 1026089230 844384777 831177666 627181410 742954213 807776265 807776265 806039963 576881794 994052884 994052884 612640782 177219910 841296658 1043194139 1043194139 740988810 608462105 943270276 943270276 778638429 778638429 735626933 735626933 652370549 572732697 691446824 691446824 201663336 201663336 162714468 169249136 222301085 886131464 886131464 871409870 967633228 967633228 476627130 562694054 801440250 801440250 848337226 848337226 950348103 950348103 753218195 435759078 152057326 298386569 878707083 878707083 216073974 1072695133 1072695133 1015810308 1043540046 1043540046 1032862004 1032862004 1016336952 1016336952 890773047 50894867 558190592 558190592 818223265 818223265 371660631 812160808 812160808 757597475 350476752 503687508 503687508 486128748 192221320 65355904 490029888 490029888 451537182 451537182 123045642 173616890 311037230 393558696 393558696 521719026 521719026 512494686 313590946 313590946 300954304 403442946 403442946 284306308 639184424 639184424 212929869 416168452 550314054 550834913 550834913 112712252 231782452 231782452 226891884 226891884 706224948 964544556 964544556 949751367 611769823 570689553 108447752 112338192 551824648 551824648 45229504 45229504 13811584 12834304 11608896 87541096 87541096 104720440 104720440 155486376 201478308 325663848 410862028 410862028 962612548 962612548 705291285 705291285 293888240 394313850 394313850 385925178 385925178 340576698 601379408 601379408 807930644 974917143 974917143 437379606 717300130 717300130 538171441 656548785 656548785 863179522 863179522 318640778 194187376 215484848 215484848 260253200 260253200 228202092 478490844 478490844 396761570 396761570 390658064 390658064 822165609 822165609 950327367 950327367 100847640 727491752 727491752 525369494 870975134 870975134 833133529 889349634 958133799 958133799 807677968 881802315 1016053764 1016053764 486753984 220972502 132887532 425722060 425722060 221250474 545595866 572547369 826462371 826462371 522957102 1070006436 1070006436 683697344 810173726 810173726 1008676870 1008676870 471604743 484838872 681711216 740827107 987767765 987767765 574823847 246289220 561453172 1011952591 1011952591 975965463 966617698 966617698 823722007 823722007 949322832 949322832 949045255 314127872 327204978 676404087 676404087 352295800 132190584 132190584 100927776 102833560 102833560 80286464 76942186 98700047 319951707 319951707 411579459 420299143 420299143 404873796 466092432 1072185444 1072185444 721965923 666010226 666010226 434258066 434258066 176474196 595909744 714005589 714005589 567554643 567554643 787846400 787846400 848900165 995388180 995388180 867392024 416397983 921879102 952365255 1016186569 1016186569 776549596 193932136 313960865 810862081 810862081 839386131 839386131 829007490 829007490 310588498 851521674 851521674 536870913 536870912 504711942 504711942 474787478 403966470 217565394 323737020 323737020 306745700 56098224 56098224 51415504 29392944 29360352 21020736 67210000 875569480 875569480 849346899 849346899 714289749 714289749 167780864 167780864 37802000 333760530 333760530 77644104 74467600 88342952 384581784 552077641 579646302 769605357 769605357 482420095 782167090 857999667 857999667 386013339 952714500 1069123374 1069123374 506793486 506793486 426055496 325194162 545292007 545292007 522879382 681871835 681871835 919129824 1029294695 1029294695 999030957 1017336392 1017336392 853988496 853988496 736125568 269752584 258550396 258550396 226003944 122265600 5317248 20201504 20201504 70667008 411312404 411312404 475086890 475086890 229689566 311162608 467146754 467146754 341442990 426852309 426852309 312475986 953498274 953498274 866605964 866605964 488833710 711196944 711196944 503365662 503365662 473615966 549061804 815997052 815997052 892483425 892483425 638583321 906049905 906049905 867572595 552088576 539037889 734400820 734400820 555745312 562694480 562694480 121717024 637930689 637930689 120568128 120568128 51187696 101399608 101399608 46859384 572328976 572328976 660391936 660391936 135216132 186712208 186712208 157360548 198519540 688762985 688762985 667821289 667821289 688559432 688559432 643751577 643751577 121112376 121112376 45256776 103858968 103858968 84310336 126174456 126174456 116681136 551624416 557961569 557961569 649331072 649331072 359523683 224990654 389145402 389145402 198496522 689827365 689827365 936254715 936254715 1031100970 1031100970 944573024 944573024 851324829 851324829 396360278 743439946 743439946 570291421 692046192 692046192 347878466 347878466 352194966 915709702 947355999 947355999 455283002 388116790 280437933 505419395 505419395 501549562 570696132 570696132 388727256 365516679 363930474 869155685 869155685 661619286 645576924 886950143 886950143 1063948690 1063948690 466492662 466492662 929825040 985795227 985795227 651695521 528812278 853600418 1040797147 1040797147 629671017 629671017 363769137 748867917 894415104 894415104 827260996 827260996 543562113 421533863 170758016 170758016 3459840 443867206 886542384 886542384 990661815 990661815 844004160 927238985 1000150202 1000150202 521146236 521146236 461245602 295999448 335853192 335853192 109308400 109308400 304345362 327385440 327385440 58785584 861732995 861732995 845220499 841373075 872149667 872149667 817889475 853597824 853597824 545538162 880287920 880287920 583604969 305145042 19976160 96322528 294583584 339077898 339077898 277593872 66389520 59106676 156608102 463276262 463276262 715689413 715689413 686572885 724778421 724778421 236130949 168039220 218175800 218175800 774971661 774971661 738267449 186782004 676130468 676130468 658311788 658311788 931931227 931931227 940253290 940253290 654322836 629682228 462036187 282633946 282633946 187100608 675375944 753418689 753418689 703759892 703759892 320997816 1038801603 1038801603 418847137 1033921889 1033921889 692054932 707108434 865623776 865623776 531352638 531352638 194467876 110498320 533515518 533515518 526289484 218108188 218108188 448404928 448404928 877996683 877996683 92420267 970711155 970711155 862847459 865658176 949558103 949558103 279340678 453497522 953736964 953736964 683939972 571922961 134666244 135942661 672013317 672013317 135400961 5290624 136995972 136995972 7527680 153917348 224395648 224395648 220469252 220600620 220600620 155322760 32820096 32820096 673499213 673499213 614836480 675436772 675436772 577244528 682707925 746828365 999694690 999694690 646657113 876715938 876715938 339479016 339479016 369903546 369903546 121654992 121654992 94747122 351703050 351703050 254019900 545827980 545827980 508170562 508170562 283251742 344663812 344663812 357573190 1030346988 1030346988 816790851 325715307 248900316 913394524 988963724 988963724 894434258 919786203 1011796030 1011796030 338351448 186810384 97239216 97239216 36312336 121177632 127018096 127018096 47328856 148380992 148380992 439315840 439315840 853035540 853035540 840804548 840804548 811868433 844718532 844718532 973650033 973650033 1015567692 1015567692 944188460 1016069199 1016069199 602027472 602027472 829523286 829523286 326324709 652358062 719877128 719877128 838740325 1010592583 1010592583 704754186 376384788 376384788 854147154 854147154 842612756 495009828 495009828 708849024 708849024 333776342 273260992 273260992 885753032 885753032 369538499 272685456 812752287 812752287 428741244 864283749 864283749 573658625 573658625 747430352 747430352 721475628 211905548 179088148 179088148 168770580 168770580 135397632 201725964 201725964 106413460 442347063 1007890915 1007890915 788393949 1035083060 1035083060 827409418 580297222 236183752 257676468 257676468 247673052 621551774 994913463 994913463 724306014 724306014 507846791 483208398 235048652 1008623120 1042550467 1042550467 937220187 867310203 977344652 977344652 908140827 1041029898 1041029898 967859561 683581697 408944768 339743780 453586534 453586534 283982084 286361674 363002426 363002426 511754334 511754334 239387668 237587802 296728446 296728446 252632124 252632124 181775492 233728468 233728468 118893176 234298412 234298412 637279224 637279224 606507337 592648338 592648338 752164453 752164453 876789389 902458729 902458729 675882117 631082283 727557344 727557344 1017789424 1017789424 867733613 867733613 470993258 813973505 813973505 447403750 409309892 409309892 620789889 620789889 218239020 751997997 751997997 285661360 285661360 288524336 318767154 318767154 917573458 917573458 183988372 445404997 963589175 963589175 845756051 1030166502 1030166502 282244514 282244514 408818676 464818320 464818320 192498544 286109604 286109604 150945732 159912340 418770724 418770724 462060506 496935008 496935008 1040863300 1040863300 312693001 302642564 1054259590 1054259590 839911534 861541952 861541952 680449593 251805785 633941736 633941736 595722776 380144166 412516728 412516728 451991746 451991746 344704256 274070720 266001476 442082980 442082980 821656097 821656097 305431808 344988552 344988552 625309345 915440073 915440073 829055286 957085294 957085294 934435870 372644634 381681882 889725098 981731415 981731415 655436904 930647928 930647928 866133709 518849366 518849366 353411754 675567840 797822517 797822517 671619086 671619086 579078225 844407297 844407297 617617203 771176283 887034026 887756235 887756235 609016203 957307332 957307332 750453856 959845225 959845225 847698762 847698762 341456662 196205224 196205224 621730857 644981560 644981560 722327253 722327253 832102147 842946499 946270145 946270145 752033308 580784960 776751944 776751944 387570816 391592634 391592634 391568058 391568058 762064446 762064446 742023588 787647748 787647748 719845845 604790822 604790822 597997419 578414108 772754864 772754864 154368216 103339216 939150308 1071049541 1071049541 869267182 869267182 369634578 698676837 971328311 971328311 979483373 979483373 981954927 981954927 451299338 920988122 1062414519 1062414519 994390719 982059248 337166514 285977480 285977480 376396994 376396994 94494784 75497536 287580840 343223178 343223178 89196834 87393608 189278680 189278680 54966416 56658608 223390120 223390120 104967892 493743246 686914304 686914304 337276966 337276966 271224714 682338808 689974187 689974187 994052884 994052884 984940613 984940613 882426954 1043194139 1043194139 873835225 873835225 281419779 269307930 144981534 84136096 84136096 115400704 115400704 104160080 132779146 386873426 386873426 271066480 162714468 169249136 222301085 725354805 725354805 791013167 967633228 967633228 310303764 562694054 787355197 787355197 848337226 848337226 540643520 753218195 753218195 485491662 570971892 806598345 806598345 612905531 279258336 279258336 394273212 394273212 1043540046 1043540046 773521496 773521496 1016336952 1016336952 890773047 50894867 558190592 558190592 818223265 818223265 345581130 345581130 68689986 201355764 201355764 503687508 503687508 255277884 192221320 65355904 69514248 287224660 287224660 254726014 178857824 390074464 390074464 373294600 373294600 521719026 521719026 512494686 271605760 271605760 56630160 56630160 246506773 246506773 639184424 710937488 710937488 324274736 1072312491 1072312491 1008873899 552076744 702596396 702596396 739008695 739008695 365430191 964544556 964544556 949751367 611769823 880547210 880547210 913978400 913978400 656224305 656224305 639221276 177609300 177609300 178048596 255498600 255498600 104720440 104720440 20004736 167776388 723801229 723801229 410862028 782761244 782761244 786400149 833759051 833759051 409134534 859656555 859656555 1027397734 1027397734 925123360 409469184 409469184 44620290 530601838 530601838 731829842 731829842 538171441 656548785 656548785 863179522 863179522 347234118 146152260 471255818 471255818 159851124 111466328 77596040 284431184 323230258 396761570 396761570 390658064 390658064 242541064 233647596 514081350 514081350 100847640 595066884 658539056 892359095 892359095 337774250 274728064 889349634 958133799 958133799 172240114 302063634 383208696 383208696 362583056 110364178 119608072 395518507 662780027 882000449 922867737 1065398495 1065398495 1002789172 841265512 1070006436 1070006436 544870532 927222450 927222450 843754253 843754253 940645131 940645131 655760082 745553456 745553456 407961732 425726321 425726321 561453172 1011952591 1011952591 1054428558 1054428558 636224073 823722007 823722007 706593378 949045255 949045255 825922118 732087575 708757877 676404087 30552528 83953912 100927776 100927776 102833560 102833560 84054888 103859184 103859184 43205072 43205072 309059764 417407430 417407430 404873796 466092432 466092432 321028752 843077091 843077091 666010226 732041589 1036653295 1036653295 597673812 185178448 313140673 597324953 614139571 856583304 856583304 848900165 848900165 867392024 867392024 416397983 921879102 952365255 1016186569 1016186569 797254744 753381245 578078720 578078720 574016465 809764995 809764995 958830668 958830668 899727723 851521674 851521674 536870913 536870912 101477632 101477632 102316176 102316176 58746368 107476960 124164632 648118643 648118643 371277874 950387880 950387880 444403039 444403039 440002326 555122722 807485808 849346899 849346899 1036331247 1036331247 1008800840 1008800840 321512754 321512754 304635936 275024544 275024544 350301155 920145849 920145849 64545320 209764428 436976704 436976704 369362970 389286714 389286714 1006649894 1006649894 470819850 508640550 508640550 506793486 426055496 325194162 545292007 545292007 522879382 681871835 681871835 919129824 1029294695 1029294695 999030957 1017336392 1017336392 973023304 853988496 736125568 269752584 121972920 212452244 212452244 122265600 248674664 248674664 231778324 305259044 444812070 444812070 841238931 841238931 558023570 736025687 736025687 467146754 441979025 374145442 374145442 616858828 616858828 477374833 440736944 488833710 506204328 506204328 442893708 503365662 697353128 697353128 473615966 815997052 815997052 892483425 892483425 638583321 906049905 906049905 1008283141 1008283141 370609114 576718129 576718129 555745312 562694480 562694480 121717024 637930689 637930689 120568128 120568128 51187696 105400520 105400520 54831776 54831776 54575280 660391936 688062472 696438885 696438885 872464399 872464399 607101818 607101818 692211039 692211039 160209165 118223928 612609744 643751577 643751577 647285337 647285337 607586880 103858968 103858968 84310336 126174456 126174456 116681136 74985480 74985480 72186864 649331072 649331072 359523683 224990654 389145402 389145402 198496522 689827365 689827365 936254715 936254715 970565277 970565277 808045791 808045791 851324829 851324829 511569822 743439946 743439946 903016586 903016586 570209764 501141536 734681412 734681412 611746679 571786378 571786378 455283002 388116790 365796936 559962244 559962244 501549562 570696132 570696132 365516679 365516679 641431446 869155685 869155685 721713114 645576924 886950143 886950143 1063948690 1063948690 466492662 581622840 929825040 1023580444 1023580444 1018883959 1018883959 853600418 1040797147 1040797147 845813139 870238895 895026159 895026159 894415104 894415104 827260996 827260996 543562113 421533863 314399745 638847513 638847513 839911434 839911434 882284788 990661815 990661815 430411881 455197110 455197110 222946476 521146236 521146236 461245602 240914634 335853192 335853192 109308400 109308400 61511024 11335072 58785584 288494370 290521378 290521378 66939730 280242002 587026242 817889475 817889475 814432721 572601616 572601616 880287920 880287920 815206320 119302547 70116704 291819002 304121400 339077898 339077898 372368154 372368154 45189146 331615266 369395636 369395636 242830458 43640400 737780914 926754703 926754703 454568869 69468448 989866022 989866022 570491649 603980312 603980312 204040608 676130468 676130468 658311788 658311788 931931227 931931227 940253290 940253290 654322836 467218994 402883670 236143690 676017285 743177861 743177861 753418689 753418689 645922713 633430533 633430533 1038801603 1038801603 569459308 1033921889 1033921889 692054932 707108434 865623776 865623776 390378490 390378490 336069642 468849654 528864386 528864386 222309058 134082552 59440792 327484682 327484682 877996683 877996683 279039491 281151062 296355526 425681621 829429521 949558103 949558103 279340678 731448307 953736964 953736964 709011654 43963972 134666244 713120769 719519189 719519189 544509653 537918465 149004481 136995972 241710624 241710624 224395648 224395648 220469252 220600620 220600620 155322760 90493060 86247720 673499213 673499213 614836480 675436772 675436772 577244528 682707925 746828365 999694690 999694690 646657113 876715938 876715938 119850920 119850920 293439840 293439840 475874993 757459245 757459245 698673453 660844873 660844873 887054762 887054762 603968865 603968865 858903318 858903318 867868135 867868135 1030346988 1030346988 816790851 325715307 248900316 913394524 913394524 907018779 380744450 451040090 451040090 436949236 186810384 186810384 997393417 997393417 274895900 1050235361 1050235361 682177819 63452224 1034101983 1034101983 439315840 439315840 553700380 776313201 776313201 677683329 603613242 844718532 844718532 973650033 973650033 1015567692 1015567692 344871299 216713478 108139416 66770928 66770928 548995476 707380072 707380072 652358062 652358062 493031897 815867264 815867264 525543868 525543868 209003137 607651593 854147154 854147154 439993162 495009828 495009828 346415162 346415162 333776342 273260992 618725441 885753032 885753032 649018008 641166928 279195970 279195970 368191800 368191800 315622098 328245306 394664058 394664058 293691624 211905548 211905548 291838266 291838266 170312596 355469866 355469866 206630172 403222286 403222286 442347063 1007890915 1007890915 788393949 1035083060 1035083060 852504656 637793479 637793479 683719401 683719401 147189867 768411138 994913463 994913463 920388111 724306014 675942210 485131512 485131512 1008623120 1042550467 1042550467 937220187 867310203 935789048 935789048 709239147 1041029898 1041029898 967859561 894241760 929587591 929587591 544318394 453586534 283982084 283982084 186911028 186911028 169943316 169943316 151003440 68606472 68606472 79465540 252632124 252632124 235078860 98771800 142738308 585370113 693470172 693470172 750985901 750985901 371319066 371319066 695471013 752164453 752164453 876789389 876789389 742880296 631082283 631082283 727557344 727557344 1017789424 1017789424 512043102 302512436 169813868 513940248 513940248 447403750 276008268 276008268 532966248 532966248 253263884 193480556 609389893 636603644 988095949 1028589459 1028589459 952696903 917573458 917573458 595752050 575285153 963589175 963589175 845756051 1030166502 1030166502 282244514 282244514 408818676 464818320 464818320 424300768 286109604 286109604 250107278 150945732 418770724 418770724 462060506 481684302 481684302 847802314 847802314 275071938 9824832 70639616 270593028 839911534 839911534 336187341 99893340 89621544 537182720 595722776 595722776 537135108 184950128 184950128 78384136 344704256 357515426 357515426 372486178 372486178 130567456 821656097 821656097 389433232 389433232 339846056 625309345 915440073 915440073 829055286 957085294 957085294 934435870 372644634 381681882 571810460 981731415 981731415 802457692 802457692 638157958 248054896 909724736 1043932959 1043932959 709378442 797822517 797822517 671619086 671619086 378947778 844407297 844407297 817693153 817693153 940846823 940846823 887756235 609016203 957307332 957307332 680736833 453164109 602113989 847698762 847698762 36827648 196205224 196205224 621730857 621730857 253756705 722327253 722327253 326470354 326470354 62356208 752033308 752033308 580784960 776751944 776751944 201651787 949960263 949960263 949800519 949800519 762064446 762064446 742023588 787647748 799279485 799279485 502541324 502541324 112456536 792960644 792960644 772754864 1007259148 1007259148 939150308 939150308 435989825 475782164 760808840 760808840 989867594 989867594 635208129 879019169 879019169 1051274458 1051274458 680947005 830603046 830603046 549832418 498412398 435538712 340035080 341359298 341359298 123790464 123790464 365052928 365052928 268468224 268484610 282147596 282147596 425136558 425136558 219156712 54966416 104980864 104980864 652758544 652758544 525325716 1024234730 1024234730 817292098 817292098 1040022190 1040022190 689974187 689974187 660406856 660406856 984940613 984940613 882426954 882426954 683005972 873835225 873835225 281419779 586078093 742202332 742202332 86247720 637528416 637528416 599206089 733685544 733685544 471868266 471868266 143180868 358138366 358138366 162148236 459388252 459388252 520095872 543096578 811671939 811671939 661137246 661137246 60421553 848516160 848516160 593621043 548879169 548879169 570971892 806598345 806598345 909724944 909724944 640995080 640995080 607180480 540412706 814744144 814744144 773521496 840614984 840614984 537135105 651840216 869261041 869261041 553859275 840376450 840376450 818517111 818517111 879866404 910518077 910518077 288697122 596196633 596196633 407395510 487823444 487823444 287224660 254726014 209543056 390074464 390074464 269224672 278219998 476966588 522840482 522840482 327256320 295985570 295985570 435849542 435849542 387200688 257950140 710937488 710937488 324274736 1072312491 1072312491 1008873899 707793452 724592686 724592686 739008695 739008695 365430191 365430191 134356056 685441096 775107755 880547210 880547210 913978400 913978400 819205392 656224305 884921347 884921347 874253835 889192491 1043602276 1043602276 743490050 1052905695 1072003389 1072003389 976376717 976376717 835892110 554451389 659828204 786400149 833759051 833759051 409134534 859656555 859656555 1027397734 1027397734 925123360 547275392 678616288 678616288 530601838 530601838 731829842 731829842 425448565 323632770 250394260 250394260 347234118 347234118 146152260 471255818 471255818 205096976 137424980 137424980 135766724 135766724 141904492 234892132 234892132 15049757 608010629 608010629 232549004 628893296 707790641 707790641 658539056 892359095 892359095 847822857 616612041 164676164 486703216 957695070 957695070 536103421 536103421 669129382 669129382 381292370 340009130 395518507 662780027 882000449 922867737 1065398495 1065398495 1002789172 841265512 654718259 319897299 544870532 927222450 927222450 843754253 843754253 940645131 940645131 655760082 1022234618 1022234618 1002570150 1002570150 748818692 748818692 634074345 902056967 1054428558 1054428558 772985223 882539039 882539039 433966634 433966634 825922118 825922118 732087575 708757877 420628339 26284912 85591680 85591680 46931792 35002896 25834440 84054888 110561818 283486466 283486466 174653900 497230910 969408936 969408936 740897927 684332229 178788193 630437830 843077091 843077091 721662340 756208173 1036653295 1036653295 597673812 185178448 242225997 597324953 614139571 856583304 856583304 415291462 990100608 990100608 174727127 320728626 320728626 497234286 497234286 797254744 797254744 753381245 722418247 722418247 574016465 809764995 809764995 958830668 958830668 899727723 897615634 897615634 369721856 446451736 446451736 102698704 102698704 102316176 58746368 58746368 53368816 648118643 648118643 371277874 950387880 950387880 773199916 773199916 689314341 555122722 555122722 394285420 539429326 1036331247 1036331247 1008800840 1008800840 321512754 369170562 474425526 474425526 365242880 350301155 920145849 920145849 440192810 896331622 896331622 631841088 480321870 667942116 667942116 1006649894 1006649894 819520587 551675710 508640550 468239862 346498058 269696032 30146560 21106848 97845376 97845376 38807656 37748880 36700944 568079444 568079444 208048108 973023304 973023304 176599212 236383960 236383960 50223360 212452244 212452244 87948056 248674664 248674664 231778324 305259044 444812070 444812070 841238931 841238931 558023570 736025687 736025687 447791959 998523398 998523398 138736340 616858828 616858828 477374833 440736944 440736944 506204328 741005366 790810941 790810941 697353128 697353128 443172395 740496141 740496141 585697240 334443780 380971866 380971866 335808522 1008283141 1008283141 1021471264 1021471264 555745312 52445720 69386528 69386528 84914568 113448872 187133976 240587028 240587028 38927084 208478904 496249256 496249256 740036109 991470689 991470689 723437141 723437141 986329568 986329568 872464399 607101818 607101818 692211039 692211039 415196252 118223928 545419321 616766624 616766624 647285337 647285337 607586880 649232881 649232881 29377144 588439553 588439553 74867232 74867232 611744105 611744105 573833672 598848137 598848137 82340584 82340584 108909760 108909760 67947528 503603264 503603264 1032949458 1032949458 306662660 306662660 85534370 269203472 412394968 511569822 511569822 510160838 903016586 903016586 501141536 501141536 891639262 1013227309 1013227309 571786378 571786378 341118162 341118162 365796936 559962244 559962244 84677752 462296168 462296168 306266832 306266832 708350289 962802045 1047262623 1047262623 598285231 573849680 479756546 479756546 409842752 409842752 581622840 581622840 1023580444 1023580444 1018883959 1060034598 1060034598 682505268 912786931 912786931 870238895 895026159 895026159 877208715 714141805 552312004 166402116 752165601 752165601 314399745 638847513 638847513 839911434 839911434 647030020 647030020 604505097 501227897 355755270 355755270 222946476 275674686 275674686 205790624 270667840 270667840 25572608 33032192 291930784 291930784 289836162 287464864 288494370 290521378 290521378 66939730 290372658 587026242 587026242 814432721 814432721 572601616 867249144 867249144 815206320 815206320 173064724 88654984 291819002 304121400 304121400 321623924 412213830 412213830 160820306 331615266 369395636 422838423 661441457 828409453 828409453 926754703 926754703 645933824 645933824 989866022 989866022 572260897 572260897 655436088 655436088 556091680 556091680 572804448 596165745 596165745 479002912 479002912 574890045 574890045 517617112 716838741 1051329034 1051329034 743177861 796938436 796938436 645922713 645922713 633430533 633430533 454275978 569459308 569459308 92537153 79954208 98830824 98830824 71537970 333622968 390378490 390378490 336069642 468849654 468849654 293210678 293210678 134082552 59460512 327484682 327484682 627708768 627708768 279039491 276402800 446368256 446368256 12980630 1061120 402653316 538968320 731448307 731448307 709011654 709011654 33615937 537270276 713120769 719519189 719519189 551263252 551263252 714553941 714553941 241710624 241710624 156354596 88919468 134486088 134486088 134348800 134348800 90493060 86247720 30890080 97484832 99786568 99786568 93276776 89200736 89200736 40117024 320221634 320221634 59948784 59948784 103023432 356337080 356337080 335144946 276850608 475874993 757459245 757459245 698673453 730438024 730438024 887054762 887054762 603968865 863538164 863538164 858903318 867868135 867868135 641790057 413869767 599855025 599855025 487273518 688103790 699000165 699000165 544334721 544334721 621334784 621334784 257968696 257968696 997393417 997393417 525887816 1050235361 1050235361 682177819 527643582 1034101983 1034101983 148254751 331360840 1065615655 1065615655 872656529 872656529 603613242 617211081 617211081 606875028 730272778 730272778 538087424 337940936 108139416 108139416 66770928 66770928 548995476 707380072 707380072 621405313 760354197 760354197 745566788 583691173 758213356 758213356 700779945 700779945 607651593 787521797 787521797 439993162 250202152 346415162 778290837 778290837 212557824 642068561 642068561 649018008 649018008 641166928 67503368 67503368 8052608 74918088 76097960 121058888 128059248 128059248 54800432 84091152 84091152 291838266 524489502 524489502 355469866 367146354 367146354 403222286 503426236 503426236 672212123 956156769 956156769 881676258 852504656 852504656 637793479 788487029 788487029 683719401 621485023 768411138 777060371 920388111 1061432395 1061432395 995434680 991166470 485131512 759514290 759514290 877618999 877618999 1010054029 1010054029 935789048 709239147 905231456 1028501929 1028501929 1053648144 1053648144 929587591 544318394 344795408 420749936 420749936 361048906 364723720 364723720 371430470 371430470 160163952 391290170 391290170 102899000 235078860 235078860 128623520 142738308 585370113 693470172 922993616 999608457 999608457 371319066 371319066 711332100 711332100 962596904 962596904 714330320 849181637 849181637 543047499 721995120 721995120 480273273 854385402 854385402 427912180 172491924 169813868 168346656 152879948 152879948 104857752 135007664 253263884 253263884 193480556 609389893 636603644 988095949 1028589459 1028589459 952696903 828698007 595752050 595752050 610312329 610312329 135865860 143131716 143131716 210898980 591277376 591277376 233444844 822486153 822486153 1012931084 1012931084 622339366 250107278 74173510 231197772 272291586 272291586 419248524 419248524 847802314 847802314 570548241 570548241 570548241 81009792 81009792 142824516 142824516 249015812 249015812 575827536 575827536 537135108 537135108 101113488 101113488 4638280 297830920 357515426 357515426 372486178 372486178 130760832 130567456 320079594 389433232 389433232 285482682 305398658 305398658 665886808 665886808 652838137 649193195 753944713 753944713 751116365 676661313 855975077 931201611 931201611 802457692 638157958 51945600 909724736 1043932959 1043932959 709378442 169304064 714387279 714387279 951259654 951259654 680953478 860142057 860142057 830142721 940846823 940846823 696994560 19009824 404890336 685510199 685510199 331350258 846533559 846533559 328318788 36827648 53774336 53774336 53527344 28338992 21632160 59248000 59248000 326470354 326470354 62356208 442059544 488962782 488962782 176759892 176759892 653840344 1035238290 1035238290 949800519 949800519 617426212 738829892 738829892 693726609 799279485 799279485 960665736 960665736 479869575 792960644 808582324 808582324 1007259148 1007259148 834005360 1041141506 1041141506 610964507 760808840 760808840 989867594 989867594 635208129 879019169 879019169 1051274458 1051274458 680947005 680947005 549832418 549832418 103813632 340035080 340035080 341359298 816276913 816276913 631468496 874672528 874672528 830492754 878719514 906168537 906168537 615885040 425136558 282767498 71845280 299940098 299940098 652758544 652758544 525325716 1024234730 1024234730 900626760 817292098 1040022190 1040022190 156666775 600517816 881139792 881139792 42019019 344755272 344755272 308563288 553420688 983428695 983428695 349436765 586078093 742202332 742202332 235931973 637528416 637528416 599206089 733685544 733685544 471868266 471868266 363671360 363671360 358138366 375692002 459388252 459388252 329060706 543096578 811671939 811671939 661137246 661137246 60421553 848516160 848516160 593621043 548879169 548879169 548230656 92274792 367534208 909724944 909724944 912068153 912068153 891031083 540412706 814744144 814744144 655264818 840614984 840614984 537135105 651840216 869261041 869261041 553859275 840376450 840376450 818517111 818517111 879866404 910518077 910518077 288697122 684654069 684654069 564198533 564198533 493716702 386321016 386321016 377827176 1033904307 1033904307 984810022 984810022 882903036 522840482 522840482 327256320 295985570 295985570 435849542 435849542 629932456 629932456 217923529 567656808 1041331321 1041331321 646113339 780662877 780662877 724592686 724592686 408081030 386915526 75893350 134356056 134356056 685441096 775107755 775107755 402465775 381618558 819205392 819205392 319021345 884921347 884921347 874253835 889192491 1043602276 1043602276 743490050 1052905695 1072003389 1072003389 976376717 976376717 835892110 511878744 511878744 240174588 240174588 855164892 1056893855 1056893855 806182963 598059123 598059123 547275392 705168721 705168721 678616288 152093441 35052048 35052048 1046479373 1046479373 781747602 781747602 776524944 42127440 42205712 42205712 282169946 282169946 433117284 433117284 381085706 376476466 296124834 311308636 366149354 366149354 352712444 674809940 778847597 778847597 628893296 707790641 707790641 453075210 541623952 847822857 847822857 616612041 625215657 768564913 957695070 957695070 536103421 536103421 669129382 669129382 381292370 340009130 362040584 362040584 662968332 956764197 956764197 731848817 994185668 994185668 587218944 124593280 198256152 600847736 781662813 781662813 373551258 491865628 491865628 331794664 1022234618 1022234618 1002570150 1002570150 748818692 748818692 634074345 634074345 711527398 772985223 772985223 882539039 882539039 433966634 433966634 159832164 159832164 142888992 880972318 880972318 302265920 378536448 378536448 379333208 379333208 75766016 69424064 110561818 283486466 283486466 174653900 918810864 969408936 969408936 740897927 684332229 178788193 652378212 652378212 493896157 721662340 756208173 756208173 578963576 619758537 619758537 550673025 587648625 587648625 378306562 378306562 659335689 1026400664 1026400664 845156367 809357755 809357755 470428227 367403286 973159672 973159672 573833809 1033440280 1033440280 1016215102 1016215102 910226819 940114773 940114773 318890034 897615634 897615634 630335020 693662508 693662508 633512968 208389640 77671880 70965000 92312504 92312504 80227544 76266864 278203672 278203672 277217366 773199916 773199916 941621528 941621528 396527978 394285420 310378578 20187936 565576864 743145740 743145740 724081149 724081149 474425526 474425526 365242880 464595512 480512334 480512334 440192810 896331622 896331622 631841088 480321870 667942116 667942116 649151788 819520587 819520587 551675710 468239862 468239862 355468288 355468288 820779159 820779159 487273518 780958763 780958763 914446120 966943199 966943199 648646898 1012396860 1012396860 951645704 937557491 783836060 275882268 185197620 224739964 224739964 167514084 114443166 267674574 267674574 358828834 358828834 269895712 68164178 37126336 98583516 199494132 897951004 897951004 998523398 998523398 948702279 965299267 965299267 951763521 951763521 713120002 673601538 741005366 790810941 790810941 852935232 852935232 478153419 478153419 128528848 128528848 38797456 38797456 34603536 13408976 95722362 302174226 1021471264 1021471264 28404669 52445720 714081601 714081601 186720564 617670949 617670949 240587028 240587028 131148976 208478904 496249256 496249256 740036109 991470689 991470689 820638244 820638244 986329568 986329568 718208114 718208114 436364966 422164700 422164700 415196252 554762776 554762776 616766624 644795192 644795192 634962529 571598521 649232881 649232881 229839480 588439553 588439553 110524464 27058024 611744105 611744105 193598580 598848137 598848137 228611400 353607642 353607642 261322172 230412712 503603264 503603264 1032949458 1032949458 306662660 306662660 85534370 269203472 740682374 740682374 464896281 784409167 1029824943 1029824943 619790950 372368154 891639262 1013227309 1013227309 861016195 861016195 328349296 944578153 944578153 1028603043 1028603043 328149331 738646244 738646244 1038172516 1038172516 708350289 962802045 1047262623 1047262623 598285231 573849680 479756546 479756546 457344008 457344008 407710854 494668396 494668396 310355872 619000196 1060034598 1060034598 682505268 912786931 912786931 223550068 669450800 784070493 784070493 714141805 552312004 166402116 752165601 752165601 373623785 924235769 929580315 929580315 650742929 1057375681 1057375681 604505097 501227897 349049046 526487514 526487514 327795792 35863600 50925576 270667840 337347624 337347624 288980352 358077994 358077994 289836162 287464864 4854912 326643840 326643840 56127106 290372658 601389298 601389298 537515297 54628738 329788210 867249144 867249144 317993427 173064724 461406794 461406794 185648828 366528234 366528234 493849064 493849064 412213830 386282712 854464849 854464849 459328604 661441457 828409453 828409453 817135924 1066404107 1066404107 645933824 580986969 608183320 608183320 572260897 655436088 655436088 556091680 739082496 739082496 596165745 596165745 318964816 318964816 574890045 574890045 517617112 716838741 1051329034 1051329034 648257984 796938436 796938436 746746604 178430546 42449444 454275978 918846167 918846167 871817031 841009073 841009073 605711736 786801520 786801520 555832472 180129108 180129108 163190082 268484610 273678850 293210678 293210678 59460512 59460512 382733040 382733040 369912377 369912377 482260790 848313536 848313536 834496022 834496022 599748130 599748130 538968320 538968320 274731974 543960960 543960960 546184768 546184768 537270276 134684677 76859428 786330632 786330632 737019104 737019104 232340513 232340513 153742148 163393380 204801060 204801060 224707300 224707300 67262752 67244040 30890080 70953888 99786568 99786568 93276776 80812032 80812032 64533632 320221634 320221634 42342480 27415600 103023432 356337080 356337080 335144946 276850608 113779440 400630266 400630266 364970354 730438024 730438024 745522885 1027973454 1027973454 863538164 863538164 721281011 429200148 641790057 641790057 117432424 599855025 599855025 487273518 688103790 699000165 699000165 544334721 544334721 621334784 621334784 257968696 257968696 397256680 525887816 525887816 393237252 393237252 446890728 527643582 527643582 282534375 434112984 1022650462 1065615655 1065615655 872656529 872656529 548020380 548020380 856768986 856768986 634914537 538087424 840179226 840179226 276301698 391023490 391023490 390254778 340675632 570569816 570569816 190849912 760354197 760354197 745566788 583691173 758213356 758213356 700779945 700779945 255084888 787521797 787521797 131162752 145870512 145870512 778290837 778290837 212557824 642068561 642068561 79870672 79870672 41337808 39730368 39730368 8052608 71641224 71641224 121058888 128059248 128059248 74455048 84091152 84091152 59785442 524489502 524489502 339861642 367146354 367146354 343157390 503426236 503426236 672212123 956156769 956156769 881676258 457344697 604114953 604114953 788487029 788487029 679159684 805441539 805441539 988679312 988679312 1061432395 1061432395 995434680 991166470 637267651 909641267 909641267 613430409 837464363 1010054029 1010054029 829446843 829446843 387135351 1028501929 1028501929 1053648144 1053648144 322930054 327161978 344795408 420749936 456403734 456403734 454364982 406359900 371430470 371430470 239248620 391290170 391290170 102899000 45015280 128623520 128623520 120411240 77764800 77764800 922993616 999608457 999608457 843260168 338101147 711332100 711332100 962596904 962596904 714330320 849181637 849181637 543047499 721995120 721995120 480273273 854385402 854385402 427912180 172491924 218368024 218368024 103581748 104857752 104857752 83047248 55837456 137888864 161743140 250972212 250972212 305301860 717657054 717657054 828698007 828698007 539091201 417707501 741220374 741220374 696414261 565896737 188545376 568063713 591277376 789851940 789851940 822486153 822486153 1012931084 1012931084 622339366 59254816 31592928 31592928 272291586 272291586 419248524 648054162 1054492635 1054492635 570548241 570548241 570548241 515639440 515639440 884787205 884787205 550317249 249015812 575827536 671203536 671203536 747546189 747546189 751832576 751832576 605274632 209864264 68683272 26654280 360397120 360397120 98478826 48781696 387733944 387733944 89596792 89596792 54391696 665566846 993687063 1043525151 1043525151 976612119 753944713 751116365 676661313 855975077 931201611 931201611 739789327 424987682 373818522 838910106 838910106 269264388 269264388 176267586 714387279 714387279 951259654 951259654 680953478 860142057 884615954 884615954 677242706 881837675 881837675 312475986 892018258 987114740 987114740 331350258 846533559 846533559 328318788 186397872 53774336 53774336 53527344 59837712 59837712 26788960 7828672 61559088 61559088 34147584 863232 534528 167838784 176759892 176759892 653840344 1035238290 1035238290 804424740 691611429 517207923 1019063433 1019063433 160996140 742387941 742387941 960665736 960665736 522656640 522656640 808582324 808582324 545885762 851235729 851235729 1041141506 1041141506 909234968 955908691 955908691 1012166310 1012166310 347505029 682414349 887322994 887322994 913309083 913309083 604519281 604519281 334570482 369745888 369745888 274665346 340015122 816276913 816276913 631468496 874672528 874672528 830492754 878719514 906168537 906168537 615885040 282767498 282767498 71845280 299940098 299940098 601019121 601019121 714579237 714579237 900626760 900626760 399623785 300389417 153901157 805608035 805608035 881139792 1019609325 1019609325 797317278 344755272 678767885 678767885 983428695 983428695 349436765 814773506 814773506 783915109 783915109 601120287 126366902 861104269 861104269 489945890 988963363 988963363 799588427 799588427 606310721 606310721 531660524 531660524 264417533 454759712 454759712 439427862 204548442 126728560 430652238 574151160 1019062965 1019062965 636093068 908088763 908088763 654221797 1002757103 1002757103 639223952 912068153 912068153 891031083 455291190 455291190 204122146 655264818 824892435 824892435 560630784 556455841 321690290 571099040 571099040 307240081 544516224 544516224 154190628 154190628 154567332 154567332 138276612 684654069 684654069 703100704 703100704 493716702 386321016 386321016 783773900 1033904307 1033904307 984810022 984810022 882903036 101447872 101447872 55665760 36292480 36292480 187141924 196951460 629932456 629932456 612771681 567656808 1041331321 1041331321 646113339 780662877 780662877 335049492 335049492 328763956 328763956 138436758 63605824 0 580027072 580027072 105255312 103821832 103821832 66815088 80986256 94926240 94926240 81907272 81907272 79422984 67231752 176136 0 0 440304272 440304272 409918854 167776388 116002262 511878744 511878744 252147032 270058142 855164892 1056893855 1056893855 806182963 598059123 598059123 343279114 705168721 891195658 958026967 958026967 929087931 929087931 1046479373 1046479373 781747602 781747602 776524944 474218628 474218628 1007682063 1007682063 282169946 845312195 1022761935 1022761935 376476466 296124834 311308636 650367115 923521276 923521276 739583152 778847597 890619942 890619942 470870571 912376880 912376880 862617992 862617992 239599879 541276200 625215657 768564913 768564913 146270724 171295264 171295264 282894546 282894546 28099136 283470466 406170125 991382279 991382279 956764197 956764197 731848817 994185668 994185668 149033143 124593280 198256152 600847736 781662813 781662813 371248514 269443595 538783233 538783233 272131329 661442978 661442978 450937220 556954670 556954670 359611466 673851276 711527398 930359794 930359794 1054512362 1054512362 647697931 412031567 994256007 994256007 142888992 880972318 923159142 923159142 848571457 617942672 379333208 379333208 75766016 80266440 88196834 122724493 377647177 377647177 918810864 918810864 371811895 561111969 672888357 672888357 989586592 989586592 493896157 488767934 180433114 578963576 578963576 619758537 619758537 550673025 587648625 587648625 378306562 378306562 659335689 1026400664 1026400664 845156367 809357755 809357755 470428227 839633522 973159672 973159672 729923600 1033440280 1033440280 1016215102 1016215102 910226819 910226819 805491330 673370373 338277391 630335020 630335020 693662508 693662508 633512968 208389640 68695040 70965000 92312504 92312504 631637171 631637171 384703962 878166167 878166167 1022626302 1022626302 941621528 941621528 311691589 976225047 976225047 514242007 565576864 743145740 743145740 724081149 724081149 373364736 373364736 324262586 464595512 480512334 1068499894 1068499894 828653770 949298953 949298953 136388868 384294354 384294354 447810136 447810136 435625176 226300282 343417166 343417166 355468288 360973408 820779159 820779159 487273518 780958763 780958763 914446120 966943199 966943199 648646898 1012396860 1012396860 951645704 937557491 783836060 275882268 185197620 224739964 224739964 167514084 160171396 301120464 301120464 382046732 395762298 395762298 550507273 550507273 795114281 795114281 897951004 897951004 731905653 806912051 948702279 965299267 965299267 951763521 951763521 713120002 673601538 584321681 584321681 667281657 852935232 852935232 478153419 765535085 948441252 948441252 762386981 826771049 826771049 361197096 361197096 362316058 935495488 935495488 605879896 40629648 714081601 714081601 235145244 617670949 617670949 119295044 71641224 131148976 131148976 394800264 394800264 101452890 380313000 380313000 820638244 820638244 721922736 721922736 718208114 718208114 702099875 408654437 455652692 455652692 554762776 717242884 717242884 644795192 776504672 776504672 571598521 692084025 692084025 229839480 229839480 110524464 110524464 27058024 53991440 160009336 193598580 532682994 532682994 228611400 353607642 353607642 261322172 317262399 450383168 493429219 504971824 782057243 782057243 511547912 762569709 762569709 740682374 740682374 464896281 784409167 1029824943 1029824943 830986661 830986661 571830953 485954389 283453890 861016195 861016195 328349296 944578153 944578153 1028603043 1028603043 328149331 738646244 738646244 1038172516 1038172516 639680634 543162753 702972706 702972706 251832320 251832320 403195410 437391362 457344008 457344008 984271766 984271766 702815342 702815342 511750081 910814968 910814968 667281657 985686808 1067757583 1067757583 432007993 204940104 204940104 99163680 88093184 74517640 74517640 341061440 373623785 924235769 929580315 929580315 650742929 1057375681 1057375681 884659523 1041371674 1041371674 882431330 882431330 523961912 523961912 165183504 243840964 337347624 337347624 288980352 512033524 512033524 415960328 415960328 361060403 640517483 908068089 908068089 835200056 601389298 849069394 849069394 816292466 578888192 813897352 813897352 419563772 419563772 461406794 461406794 185648828 366528234 438648142 493849064 493849064 386282712 386282712 854464849 854464849 459328604 459328604 692600968 692600968 755048493 1066404107 1066404107 246839640 226891884 608183320 608183320 39847073 23594400 84192648 605553642 902318531 902318531 676612284 676612284 318964816 318964816 42677328 76034072 356682690 356682690 95869800 323332388 648257984 648257984 818025765 818025765 917518932 917518932 747831834 918846167 918846167 871817031 841009073 841009073 605711736 786801520 786801520 555832472 460680110 440647846 440647846 283285648 273678850 305223808 309853074 309853074 49684610 382733040 382733040 369912377 369912377 482260790 848313536 848313536 834496022 834496022 809650176 809650176 675322178 675322178 413139270 683935815 683935815 546184768 546184768 537265152 102720001 1066982922 1066982922 1057013823 737019104 737019104 766184520 766184520 506463610 506463610 378013246 245631850 245631850 224707300 165810336 25172928 24162688 24162688 27744928 32506848 32506848 29034336 20140672 64533632 64533632 39794656 59914176 66044272 72956408 72956408 26602080 129608496 129608496 113779440 113779440 100273842 283719242 337358530 432283112 432283112 1027973454 1027973454 773460509 799199553 799199553 730113668 740856085 740856085 601432106 236186156 236186156 103810096 346285056 347727690 347727690 692085069 692085069 497755366 604692525 604692525 252223725 378172008 870029573 973212498 1073486497 1073486497 823399225 302195734 894669827 894669827 503608240 1022650462 1022650462 932498043 438297855 438297855 290454690 714973872 856768986 856768986 660861375 660861375 840179226 840179226 694810599 694810599 391023490 390254778 357602948 570569816 570569816 109776913 77812352 77812352 50362800 183371376 183371376 210020462 495274060 495274060 255084888 102761016 332482470 332482470 439427862 439427862 278722836 74833972 11196352 82487680 82487680 9740032 9740032 3565568 5581568 6689792 6689792 71641224 71641224 84749352 84749352 84485160 118554912 118554912 67373448 51520176 89178896 89178896 71566336 72092808 216335616 216335616 440699128 440699128 469762062 469762062 210305196 378135616 378135616 206834316 323292338 861414408 928064187 928064187 805441539 893919825 988679312 988679312 652805606 652805606 332931377 637267651 914081882 914081882 909641267 806429507 613430409 894616226 894616226 829446843 829446843 387135351 452946897 452946897 497361506 497361506 187370252 187370252 391127552 391127552 456403734 456403734 454364982 406359900 236810076 236810076 239248620 239248620 80353352 80353352 26338304 90366056 90366056 19058976 36856664 679649892 679649892 906253262 906253262 843260168 69283987 656878462 656878462 472979721 678789786 848446985 848446985 814908552 605201672 846581789 846581789 367974963 286514443 848132192 848132192 147399876 218368024 218368024 119555092 98599368 18950288 200904024 200904024 222036276 222036276 203776600 263792730 521766710 717657054 948825159 948825159 684500200 539091201 417707501 741220374 741220374 696414261 565896737 197658400 568063713 568063713 789851940 789851940 800136064 800136064 761216685 352021772 352021772 373670116 373670116 349241992 349241992 484028562 484028562 672694990 1054492635 1054492635 369382089 307414040 915193938 915193938 577130513 884787205 884787205 550317249 206047366 79283217 671203536 671203536 747546189 758326028 758326028 751832576 605274632 209864264 68157960 1838592 360397120 360397120 111966730 479953772 479953772 299906274 218233340 218233340 174539176 665566846 993687063 1043525151 1043525151 976612119 319122049 157624740 487704616 487704616 537710093 739789327 739789327 424987682 373818522 838910106 838910106 239127680 310968608 313033842 329979460 1003773088 1003773088 344790952 808049104 808049104 884615954 884615954 691534629 881837675 881837675 312475986 892018258 987114740 987114740 116808592 116808592 168371220 186397872 186397872 39722640 18800160 50952720 59837712 59837712 51557728 51557728 281153778 281153778 57347152 464333896 512101742 512101742 195691598 349710836 495080010 495080010 345149550 275030544 1047209802 1047209802 1019063433 1019063433 262837868 742387941 742387941 462392400 664029990 962633716 962633716 736396197 736396197 545885762 851235729 964463228 1007463955 1007463955 909234968 955908691 955908691 1012166310 1012166310 775165446 682414349 887322994 887322994 913309083 913309083 643134218 643134218 585290144 628375080 628375080 173644564 173644564 341022226 341022226 444615392 444615392 542411344 542411344 491889488 491889488 529586376 529586376 168898652 148947444 176177432 176177432 209829924 601019121 601019121 714579237 964848162 964848162 618933936 646464647 646464647 497692269 805608035 805608035 1037377602 1037377602 1019609325 923148391 903685655 903685655 911831064 911831064 719058645 616331280 851913162 851913162 783915109 783915109 746735744 121477181 861104269 861104269 489945890 988963363 988963363 799588427 921830850 921830850 606310721 833728744 833728744 634077986 454759712 570609681 570609681 204548442 126728560 430652238 614465872 1019062965 1019062965 636093068 908088763 908088763 654221797 1002757103 1002757103 620007224 339528963 59001355 546579064 864100467 864100467 621864554 101499962 319720482 560630784 560630784 556455841 581798736 581798736 571099040 470884878 537136789 704982160 1040261151 1040261151 682213509 682213509 704207303 704207303 286034016 703100704 703100704 252923452 708141344 708141344 783773900 783773900 231448693 181667456 181667456 81092072 148511440 148511440 49357776 49357776 35725472 35725472 195437652 676397400 676397400 612771681 551087432 551087432 889729595 990905914 990905914 789677934 914490570 914490570 447728706 447728706 446785678 132885832 683591368 683591368 746455470 824057379 824057379 477108463 320362352 320362352 346167837 950772247 950772247 942787719 1028578479 1028578479 894061852 572004872 621206281 677477155 943767687 1010920379 1010920379 730303362 436625490 252147032 252147032 758983558 758983558 168634487 959233876 959233876 478374103 287900720 343279114 697353344 891195658 958026967 958026967 929087931 929087931 542769177 704676248 704676248 569112033 404766846 512771152 512771152 1007682063 1007682063 55703597 845312195 1022761935 1022761935 1068684159 1068684159 965576627 730478627 923521276 923521276 739583152 739583152 890619942 890619942 625221780 912376880 912376880 977441825 977441825 405275030 423333177 641202969 946941497 1015075715 1015075715 942009962 795690634 446058066 915406939 915406939 860202226 488781739 991382279 991382279 728225798 728225798 840584025 840584025 371295824 115351034 338367282 603720728 603720728 573097233 910976793 910976793 540911616 538783233 538783233 272131329 661442978 661442978 562108308 867903072 867903072 776642882 673851276 673851276 930359794 930359794 1054512362 1054512362 647697931 551946480 994256007 994256007 127193648 268885580 923159142 923159142 848571457 617942672 88475944 88475944 85274792 80266440 88196834 122724493 377647177 377647177 600417418 600417418 587404001 561111969 856360192 856360192 989586592 989586592 245424436 557875432 557875432 718341016 773693148 773693148 612928540 232436796 232436796 667698464 667698464 622385896 495458798 495458798 185602984 185602984 296287194 296287194 271788734 839633522 839633522 729923600 729923600 976815032 1014563887 1014563887 505484304 141742980 805491330 805491330 673370373 338277391 201949456 201949456 45916172 2671616 69363200 75159432 75159432 93480344 93480344 105574840 631637171 631637171 384703962 878166167 878166167 1022626302 1022626302 741381746 971162735 971162735 986843059 986843059 888910982 886695813 751977740 747736216 719187669 380923968 380923968 373364736 324262586 515172632 567323238 1068499894 1068499894 828653770 949298953 949298953 885599176 472132419 1040956774 1040956774 789987201 452985142 486358130 486358130 343417166 316879938 360973408 360973408 273493122 365370386 365370386 392567210 392567210 266425540 266425540 183501780 441438550 441438550 171105828 432739770 432739770 253879660 74052988 211441400 211441400 242222304 242222304 301120464 301120464 382046732 395762298 395762298 550507273 550507273 795114281 795114281 822259286 822259286 731905653 806912051 806912051 255987900 721588580 721588580 723538198 723538198 538350004 584321681 584321681 667281657 667281657 390398048 942267750 942267750 948441252 948441252 762386981 826771049 826771049 496513580 361197096 362316058 935495488 935495488 605879896 142027548 243531840 243531840 260997280 260997280 181296348 200706940 200706940 84594284 259599624 426188040 426188040 680332935 708980945 708980945 518266264 307152231 820288256 820288256 592114710 816992293 816992293 408654437 739411008 739411008 638059545 717242884 717242884 755094693 776504672 776504672 448628122 692084025 953214833 953214833 665896114 202963224 211687492 911187612 911187612 518837154 971211512 971211512 459140125 266701074 106769308 300662688 300662688 317262399 443338134 493429219 1026892398 1026892398 782057243 511547912 820136322 820136322 616681415 410527304 168568896 75989056 75989056 756814920 830986661 830986661 576343845 485954389 283453890 420500376 420500376 303513856 297069352 824264936 953494219 953494219 229061237 70777608 148197678 297795810 1057100469 1057100469 543162753 754196806 875882713 875882713 813297100 116790168 116790168 96571464 406997018 984271766 984271766 702815342 883594634 883594634 910814968 910814968 667281657 985686808 1067757583 1067757583 432007993 278921246 181380552 286353986 353014312 353014312 347862506 279696232 279696232 84444682 34443290 153434486 620903786 620903786 1040890226 1040890226 1041371674 1041371674 882431330 882431330 523961912 523961912 165183504 243840964 243840964 187827740 28521312 512033524 512033524 415960328 415960328 361060403 640517483 908068089 908068089 835200056 575414979 849069394 849069394 816292466 967915526 967915526 813897352 704719492 693176436 168870000 168870000 321161684 321161684 438648142 438648142 287389794 336004418 336004418 321129824 364970498 364970498 319824072 33556560 33556560 0 93370368 356233472 361391618 446836578 446836578 419695712 419695712 968100711 968100711 836586657 902318531 905997062 905997062 729409461 729409461 570503268 729944181 729944181 807673145 807673145 1066308219 1066308219 846310671 846310671 818025765 818025765 917518932 917518932 811580812 536484143 440467540 440467540 187721836 187721836 159624072 164059486 463642790 463642790 460680110 440647846 440647846 283285648 303505224 305223808 309853074 309853074 142891336 73418752 303166328 303166328 289495146 664025666 664025666 565508384 565508384 28064321 809650176 816087072 816087072 675322178 413139270 683935815 683935815 595699201 580585045 580585045 777889999 1066982922 1066982922 1057013823 1038870132 321393766 766184520 1004771342 1004771342 906233883 378013246 245631850 245631850 165810336 165810336 25172928 25826400 27708672 27744928 27744928 86320768 86320768 68158368 68158368 33162536 25765088 83921984 83921984 67684480 63667440 63667440 129746712 129746712 49808208 48838160 100273842 283719242 337358530 835224832 836813283 836813283 773460509 773460509 799199553 799199553 989062400 989062400 740856085 601432106 422188278 389727060 103810096 235492840 235492840 226558120 692085069 692085069 17425440 604692525 604692525 256005492 378172008 870029573 973212498 1073486497 1073486497 823399225 466949706 894669827 894669827 503608240 503608240 512557574 512557574 503489546 939708423 939708423 940481562 940481562 917094995 660861375 660861375 790829216 790829216 694810599 694810599 259997628 357602948 357602948 575289336 575289336 723120533 723120533 560342928 703705297 703705297 523127242 834094637 834094637 495274060 404874022 271680768 332482470 332482470 439427862 439427862 278722836 150082496 150082496 149547584 50007232 34166480 9331984 9251904 8549376 36832256 36832256 34300672 68486688 84749352 84749352 84485160 118554912 118554912 69667208 74031426 418256078 418256078 335535210 320216578 320216578 289348950 440699128 440699128 541977729 579454611 579454611 491103801 876749957 876749957 762303120 861414408 928064187 928064187 829349283 893919825 893919825 932443874 932443874 652805606 548782263 548782263 914081882 914081882 806429507 806429507 923395131 1008312365 1008312365 638657049 739439238 877916811 877916811 995164863 995164863 580392166 187370252 187370252 437232912 437232912 151527430 120917272 151270456 235879452 235879452 118175780 128650560 128650560 117704760 28385736 28385736 73076936 73076936 21037088 578898160 679649892 679649892 906253262 917785448 917785448 429132086 872587996 872587996 934911320 934911320 886155660 886155660 605201672 605201672 850423943 850423943 367974963 286514443 848132192 848132192 182003412 216585548 216585548 226813560 226813560 198208256 200904024 200904024 222036276 766607556 766607556 712108529 712108529 521766710 948825159 948825159 684500200 550093186 364455779 346629450 950277987 950277987 950719335 1063798956 1063798956 669322349 669322349 695469072 800136064 800136064 761216685 742443016 682023336 373670116 373670116 349241992 349241992 484028562 484028562 850583323 850583323 572262914 881857729 881857729 915193938 915193938 577130513 403964032 403964032 336069642 206047366 34882432 4243472 269075968 271098368 758326028 758326028 218309161 220274824 220274824 138937476 304162592 335875072 335875072 298468864 479953772 479953772 299906274 218233340 218233340 617083049 617083049 201142004 609020582 618924489 908142718 908142718 828654124 828654124 879020427 879020427 640975506 22020152 105906840 536953389 536953389 1037213416 1037213416 934293734 313033842 827872163 1003773088 1003773088 313998162 808049104 916959528 916959528 691534629 961977952 961977952 952681671 663835175 663835175 574992465 574992465 508785876 798494249 798494249 120001064 120001064 119875896 44378448 71383840 110561440 110561440 51557728 51557728 281153778 281153778 57347152 464333896 512101742 512101742 474350128 474350128 304616576 304616576 214536964 275030544 1047209802 1047209802 757113824 639221779 639221779 575170853 575170853 70255890 664029990 962633716 962633716 906909867 736396197 352720938 923209770 964463228 964463228 332323529 778265077 778265077 731071441 445219472 775165446 850604883 850604883 585055953 585055953 315757266 582413744 643134218 932274520 932274520 628375080 628375080 491986466 273324034 623915539 623915539 553648664 606570544 606570544 943526914 943526914 697487973 697487973 268981863 220201065 757080105 757080105 597794901 209829924 209829924 155628708 737427232 964848162 964848162 466723400 646464647 646464647 497692269 754277283 754277283 1037377602 1037377602 1010024802 1044443775 1044443775 969484943 911831064 911831064 989567772 989567772 883379163 883379163 815668803 746735744 746735744 121477181 83701704 100922774 445349898 445349898 385712074 283907576 921830850 921830850 911950938 911950938 833728744 634077986 234740157 570609681 570609681 856623668 856623668 605345847 614465872 614760728 614760728 640829744 640829744 622254633 354454992 400820730 664060976 664060976 621432321 89670867 827211926 864100467 864100467 621864554 101499962 319720482 319720482 376213912 376213912 581798736 581798736 270336154 470884878 537136789 704982160 1040261151 1040261151 682213509 682213509 704207303 704207303 286034016 716372801 716372801 31198944 719061984 719061984 704416800 704416800 28486053 60305748 195202689 718224612 718224612 172758912 159118240 159118240 41944368 46565872 195437652 676397400 676397400 540955804 551087432 551087432 889729595 990905914 990905914 789677934 914490570 914490570 615187549 615187549 446785678 713487373 713487373 683591368 888693406 888693406 824057379 850932571 850932571 618450633 648567568 950772247 950772247 942787719 1028578479 1028578479 894061852 572004872 621206281 677477155 943767687 1010920379 1010920379 730303362 746882767 746882767 101786954 758983558 758983558 502008194 959233876 959233876 836501718 591008779 591008779 697353344 697353344 543556240 705167364 705167364 604558992 1040320658 1040320658 569112033 569112033 393274692 512771152 512771152 239198364 239198364 85557786 390230128 734110270 900947988 1068684159 1068684159 965576627 730478627 143094804 143094804 740814853 740814853 671349005 671349005 625221780 625221780 420046622 977441825 977441825 405275030 423333177 641202969 946941497 1015075715 1015075715 942009962 919880759 446058066 915406939 1022806144 1022806144 1018303311 722440451 722440451 728225798 728225798 840584025 840584025 371295824 41454736 338367282 603720728 603720728 573097233 910976793 910976793 818517542 818517542 682037293 267821096 620941332 620941332 562108308 867903072 897620101 897620101 618861580 110700120 35135560 99056115 325496316 825306432 832310883 832310883 977613264 977613264 859327654 859327654 269488148 378536538 378536538 534581458 534581458 479988792 85274792 1311264 17119232 17119232 50705792 50705792 589975552 589975552 587404001 51519504 856360192 856360192 580935995 245424436 245424436 557875432 557875432 718341016 773693148 903082745 903082745 926704572 926704572 906659315 906659315 663147424 330713552 330713552 133115240 133115240 114832336 114832336 108928920 86573224 621085192 621085192 568530753 976815032 1014563887 1014563887 774947365 774947365 136976418 425857446 481374986 481374986 299893218 158426692 556699780 567963648 567963648 160363872 75159432 93480344 93480344 611268841 611268841 96668096 369105544 869961907 869961907 451413462 451413462 741381746 971162735 971162735 986843059 986843059 888910982 886695813 751977740 747736216 719187669 610718784 674746378 674746378 236785417 515172632 567323238 567323238 697648731 860466974 860466974 885599176 885599176 472132419 1040956774 1040956774 789987201 452985142 486358130 486358130 300367362 320075938 393288016 393288016 302326346 365370386 365370386 392567210 392567210 266425540 266425540 183501780 441438550 441438550 171105828 432739770 432739770 253879660 206053656 211441400 211441400 242222304 242222304 335157226 335157226 446038474 446038474 359797392 359797392 96741724 306577475 312649218 536606644 536606644 433672700 433672700 255987900 580964352 721588580 721588580 723538198 867762674 867762674 841511539 637846065 278169801 390398048 390398048 942267750 983720540 996130471 996130471 515171536 490592442 496513580 496513580 211621898 94879256 254324208 254324208 157444596 142027548 142027548 3213316 260997280 260997280 181296348 200706940 200706940 86786080 259599624 426188040 426188040 680332935 708980945 708980945 518266264 307152231 820288256 820288256 543297921 816992293 1035879545 1035879545 739411008 958536879 958536879 655220024 715802816 755094693 1070424964 1070424964 915203463 448628122 953214833 953214833 665896114 202963224 211687492 911187612 911187612 518837154 1054510516 1054510516 942734626 667737521 1000774690 1000774690 300662688 296745174 443338134 443338134 1026892398 1026892398 511439623 511439623 820136322 820136322 683692928 695536738 695536738 356299187 356299187 1033175259 1033175259 764535405 576343845 287496474 287496474 843120685 843120685 524558866 357632851 357632851 814847184 991947467 991947467 481635150 481635150 905553800 1057100469 1057100469 384117592 754196806 875882713 875882713 813297100 116790168 116790168 243913219 811100795 848562771 848562771 662034390 883594634 1053055956 1053055956 1016026374 1016026374 1007557647 979603650 859514348 859514348 671303456 181380552 286353986 353014312 353014312 347862506 279696232 279696232 873822249 873822249 219085640 620903786 620903786 1040890226 1040890226 312628224 234163276 288649918 288649918 241695132 216320460 235200826 277975514 314229314 314229314 12508992 78285320 412160080 412160080 118410488 118410488 103173504 46648704 664653874 664653874 824835842 824835842 815223570 815223570 967915526 967915526 704719492 704719492 693176436 408670758 275375490 428442542 428442542 473530702 473530702 154666788 336004418 336004418 867443667 867443667 92548272 92548272 606218666 606218666 660603273 660603273 526979385 361391618 446836578 446836578 419695712 419695712 968100711 968100711 836586657 547635232 905997062 905997062 729409461 729409461 570503268 729944181 729944181 807673145 807673145 1066308219 1066308219 846310671 846310671 623450274 553890958 553890958 811580812 811580812 536484143 440467540 440467540 104994332 69885624 58646448 22847152 137677572 137677572 327317616 327317616 295033106 467834752 467834752 303505224 207111144 428016178 428016178 177418836 46520528 308651488 308651488 664025666 664025666 565508384 565508384 171953332 49204592 816087072 816087072 62128916 62128916 53784176 595699201 595699201 580585045 580585045 777889999 882698375 882698375 1038870132 1038870132 575266370 575266370 1004771342 1004771342 906233883 377488144 377488144 36700250 37230688 60952480 60952480 25826400 27708672 27708672 23792800 86320768 86320768 90300416 90300416 82836936 82836936 83921984 83921984 67684480 63667440 63667440 129746712 129746712 192591275 1048655775 1048655775 1004833269 1004833269 835224832 836813283 836813283 1007191132 1007191132 185453607 118344756 989062400 989062400 447775860 447775860 422188278 389727060 101893728 235492840 235492840 209457036 209457036 151519776 17425440 247533104 249544080 256005492 256005492 407246982 703280300 703280300 425269922 466949706 466949706 387263034 341222043 341222043 336848303 512557574 512557574 503489546 939708423 939708423 940481562 940481562 917094995 801186868 226645024 471142676 471142676 523305623 855640499 924530178 924530178 94243104 575289336 648761337 723120533 723120533 560342928 703705297 703705297 1049500767 1049500767 1041085535 516181231 516181231 271680768 352321883 994100565 994100565 1060031036 1060031036 251117788 251117788 210430480 210430480 102634520 105129608 115929304 115929304 36832256 84611880 84611880 91159720 91159720 102665016 102665016 101520400 67240456 69667208 74031426 418256078 418256078 335535210 320216578 489633098 489633098 346983742 360787143 541977729 579454611 579454611 491103801 876749957 876749957 762303120 762303120 622685226 622685226 829349283 829349283 374562854 998763579 998763579 620565337 548782263 548782263 434246118 678429032 877134475 877134475 923395131 1008312365 1008312365 638657049 739439238 877916811 877916811 995164863 995164863 580392166 145556112 403650198 437232912 437232912 302601494 406652706 422651224 422651224 235879452 118175780 141569220 141569220 117704760 28385736 28385736 73076936 73076936 543422592 578898160 717359701 717359701 713033822 917785448 917785448 429132086 872587996 872587996 934911320 934911320 886155660 886155660 271713792 479859770 850423943 850423943 44106512 44106512 79829128 182003412 182003412 183031124 210300052 226813560 226813560 198208256 231871212 231871212 168037456 766607556 766607556 754976111 754976111 729115181 729115181 517811934 842341820 842341820 781895805 597703543 1001849201 1001849201 950719335 1063798956 1063798956 669322349 669322349 695469072 695469072 139128973 742443016 742443016 682023336 183908308 191066500 191066500 222405253 222405253 370454096 850583323 850583323 572262914 881857729 881857729 914395276 985845975 985845975 406085642 406085642 739345158 739345158 114584337 718739984 718739984 739341582 1009824520 1009824520 673920261 539561988 220274824 220201260 355542296 355542296 298468864 298468864 69940488 69940488 67338592 32660328 108454545 617083049 617083049 201142004 609020582 618924489 908142718 908142718 828654124 828654124 879020427 879020427 1007817231 1007817231 872687626 791906367 791906367 1037213416 1037213416 962502992 962502992 956735175 827872163 808585827 461184225 637750700 916959528 916959528 821095382 961977952 961977952 952681671 882573459 885732555 885732555 630875368 508785876 798494249 798494249 268693506 243438182 243438182 44378448 71383840 379480072 379480072 269371394 270808576 273677442 284998080 284998080 348981920 348981920 145825700 528099152 528099152 304616576 1044476956 1044476956 848197569 848197569 757113824 757113824 639221779 639221779 575170853 575170853 570708388 734451957 893819931 906909867 906909867 463162794 352720938 923209770 923209770 848502826 848502826 778265077 778265077 731071441 985670383 985670383 942547203 850604883 585055953 585055953 315757266 364778570 364778570 932274520 932274520 39495426 491986466 491986466 956837148 956837148 623915539 553648664 606570544 940181509 943526914 943526914 697487973 697487973 790253608 790253608 757080105 757080105 597794901 44105788 607418513 747818957 747818957 737427232 360694586 821330686 821330686 834328419 834328419 754277283 754277283 1020113034 1020113034 1010024802 1044443775 1044443775 969484943 751282402 181662420 989567772 1019616910 1019616910 883379163 815668803 970700930 970700930 631414991 631414991 744678670 744678670 1019640907 1019640907 757781511 757781511 754323648 911950938 911950938 710663125 710663125 101361241 34079760 337510718 992803632 992803632 605345847 609607718 609607718 532005391 640829744 966528471 966528471 522454673 109890648 664060976 664060976 808091696 808091696 827211926 827211926 508205188 325243314 368561680 368561680 605647192 807919837 807919837 753722079 347661898 270336154 270336154 101048841 594666492 594666492 612665472 612665472 27683272 689470413 689470413 223781376 716372801 716372801 181177553 719061984 719061984 704416800 704416800 43603857 60305748 195202689 718224612 718224612 172758912 159118240 159118240 143966788 157772816 157772816 52828464 40389904 55796016 66959040 293886240 293886240 60062944 337660000 337660000 291635992 345410985 615187549 615187549 437088389 713487373 713487373 517302148 888693406 888693406 782796125 850932571 850932571 618450633 648567568 648567568 242211228 207097488 250269644 250269644 202560012 202560012 179564566 468677140 468677140 675075221 675075221 477941646 746882767 974081722 974081722 846287801 505951399 502008194 523337845 836501718 836501718 591008779 591008779 511481043 543556240 543556240 705167364 705167364 521727642 1040320658 1040320658 1038647392 1038647392 501278957 247874260 247874260 239198364 239198364 799767496 799767496 794643689 734110270 461795341 501692910 873077058 873077058 714104988 781973085 781973085 740814853 946298958 946298958 674708229 672139569 587411505 420046622 294654096 294654096 331522564 385195312 920012840 920012840 911269883 919880759 919880759 450545217 716647224 1022806144 1022806144 1018303311 241608647 124365984 879507738 879507738 399031874 399031874 370676794 366611640 366611640 289737392 107090328 369521307 641202969 641202969 818517542 936873177 936873177 896161849 708886573 897581116 1035993327 1035993327 897620101 897620101 885066881 291072874 227792128 196748605 787035521 825306432 832310883 832310883 1048484520 1048484520 859327654 859327654 208222149 879507814 879507814 534581458 534581458 759224845 759224845 67683336 151818911 604178564 709177737 709177737 288832290 666415383 666415383 870482352 870482352 839069715 603461315 555819297 1063338620 1063338620 490752761 580935692 580935692 903082745 903082745 926704572 926704572 906659315 906659315 663147424 330713552 330713552 40010752 40555920 83715520 108928920 108928920 609936680 609936680 73573129 101254040 485152206 485152206 953311287 953311287 774947365 432667766 425857446 481374986 481374986 299893218 158426692 556699780 567963648 567963648 160363872 18434944 18434944 67119112 611268841 611268841 117998168 369105544 869961907 869961907 451413462 451413462 464292684 859390388 859390388 618475209 173286493 75288456 198736938 198736938 204397836 610718784 610718784 1002082165 1002082165 394434522 394434522 394983304 819126705 870146282 870146282 860466974 569380066 633203273 633203273 277974112 277974112 574956840 849346570 849346570 324719472 300367362 337102256 393288016 393288016 348367960 253792260 253792260 406196836 406196836 369185118 138510446 99091944 99091944 43821676 139461672 139461672 353424938 353424938 281707176 488657218 488657218 498841150 498841150 373787392 335157226 446038474 446038474 337664808 337664808 16918944 54870032 595165571 595165571 536606644 713361123 713361123 591504033 580964352 580964352 937481075 937481075 867762674 867762674 841511539 637846065 278169801 731311520 758434605 758434605 983720540 996130471 996130471 136055103 350607456 350607456 268693506 1098240 1098240 143786624 207174148 207174148 77214980 212429904 212429904 34341916 136964256 158076324 158076324 153768320 138448300 86786080 325319696 325319696 44553706 378767560 378767560 319021866 187273142 277661056 277661056 65434192 65434192 1035879545 1035879545 320881180 958536879 958536879 751896768 562737824 595978353 1070424964 1070424964 915203463 785976284 785976284 625161139 133919976 537956864 537956864 554800640 554800640 553686017 1054510516 1054510516 942734626 919935872 1000774690 1000774690 474287107 474287107 316934610 715916423 715916423 373654865 906132509 906132509 126649465 683692928 683692928 695536738 695536738 356299187 356299187 1033175259 1033175259 462799794 462799794 287496474 287496474 843120685 843120685 524558866 380861150 357632851 814847184 991947467 991947467 481635150 481635150 905553800 905553800 429706608 513840346 513840346 215148442 505948506 505948506 23277984 398261978 398261978 811100795 848562771 848562771 627311795 361834345 1053055956 1053055956 1016026374 1016026374 1007557647 979603650 859514348 859514348 671303456 97367104 97367104 269830336 354281666 354281666 29442664 112788739 873822249 873822249 671193123 958526017 958526017 1010082146 1010082146 871740698 937113339 937113339 902770608 517746156 375163524 235200826 277975514 314229314 419549764 419549764 348611108 246618980 211179778 211179778 137069106 600883953 600883953 541708369 344086513 824835842 824835842 539428928 539428928 322081059 184614932 176234564 176234564 408670758 408670758 275375490 428442542 428442542 473530702 473530702 154666788 154666788 62097982 867443667 867443667 92548272 427269409 861157811 861157811 696125873 693107877 612846338 612846338 909402376 909402376 750815235 805585101 805585101 605949088 630203392 630203392 547635232 539150629 144876037 135340548 124961192 168042660 168042660 149418484 138708992 79756968 409119216 440716678 440716678 310632234 310632234 195411476 195411476 370157936 370157936 208729472 208729472 125326832 694841672 694841672 35083057 407636614 407636614 327317616 327317616 295033106 467834752 467834752 270156918 188667728 428016178 428016178 192436544 192436544 308651488 308651488 272423968 545383744 545383744 171953332 171953332 49204592 296616240 296616240 62128916 62128916 53784176 42186804 59793488 59793488 120561268 169274200 519909342 519909342 375136580 417112280 575266370 575266370 899419474 899419474 815008348 815008348 377488144 111149400 144703516 144703516 60952480 16779312 54939824 61214928 61214928 46287968 15238632 90300416 90300416 82836936 82836936 79041216 79041216 20713320 13581504 13581504 92108848 92108848 192591275 1048655775 1048655775 1004833269 1004833269 615921686 615921686 214379716 1048069271 1048069271 211490399 589956176 589956176 672741248 831238180 831238180 279513430 279513430 178381140 178381140 409225984 429916518 1046062045 1046062045 587728014 886638031 886638031 431648171 431648171 943982727 943982727 432284326 840026596 840026596 1050946480 1050946480 842564872 842564872 336848303 152070214 333108978 1030564998 1030564998 848974281 546553869 113771736 801186868 801186868 590065715 471142676 471142676 523305623 855640499 924530178 924530178 419844550 478554120 648761337 648761337 222169228 42754972 545925329 545925329 1049500767 1049500767 1041085535 516181231 516181231 787612316 787612316 994100565 994100565 1060031036 1060031036 251117788 251117788 210430480 253769544 253769544 105129608 192679860 192679860 193029760 193029760 84611880 91159720 91159720 102665016 102665016 101520400 50431504 50431504 72825600 73400712 193137700 193137700 307044536 489633098 489633098 346983742 411177092 444605014 444605014 469811426 469811426 407226396 303112722 326932010 326932010 622685226 622685226 373473760 50254362 374562854 998763579 998763579 483218774 458850690 355971313 434246118 882638962 882638962 877134475 607574793 917329225 917329225 814408731 604417818 554222625 874156586 874156586 351490434 351490434 145556112 403650198 403650198 168526354 302601494 406652706 422651224 422651224 137544260 108539336 141569220 141569220 86573184 90187560 90187560 87032616 54825008 665244072 665244072 717359701 717359701 303340400 698714423 698714423 565099719 570703648 570703648 446118486 784784342 784784342 190841268 306832678 479859770 1024987287 1024987287 123344568 995209368 995209368 943743028 8652864 103969472 103969472 36190856 102311448 102311448 231871212 231871212 160293472 597709940 597709940 754976111 754976111 729115181 729115181 517811934 842341820 842341820 781895805 597703543 1001849201 1001849201 195185428 150346692 41719876 213520908 213520908 246117960 246117960 572039508 572039508 233038636 213092968 144665472 105396736 105396736 9512320 84754442 286125090 843477266 843477266 664991835 599336817 599336817 914395276 985845975 985845975 406085642 406085642 739345158 739345158 114584337 718739984 718739984 739341582 1009824520 1009824520 673920261 539561988 531694698 515449824 515449824 372279122 372279122 102836066 484157004 484157004 140015588 129028408 401362098 401362098 71305472 145230496 162534884 166600164 575439335 971000977 971000977 437990969 207912338 875672076 1007817231 1007817231 872687626 791906367 791906367 233280750 266775270 962502992 962502992 956735175 613466230 461184225 461184225 637750700 848356257 848356257 821095382 248945564 442165948 849641098 882573459 885732555 885732555 630875368 512250494 288682872 268693506 268693506 243438182 243438182 172423192 239569052 474777636 474777636 269371394 285872992 285872992 284998080 284998080 382934288 382934288 42075328 528099152 528099152 205530373 1044476956 1044476956 848197569 848197569 476720548 476720548 1574400 16913952 71303624 71303624 570708388 734451957 734451957 323360588 463162794 463162794 169530900 169530900 829106916 848502826 968991478 968991478 366678797 734173794 985670383 985670383 942547203 787743892 787743892 784076637 606447197 864037851 864037851 821086706 821086706 380654211 283262032 222026656 956837148 956837148 56224779 541539256 576975277 940181509 940181509 1023871744 1023871744 88153999 790253608 790253608 234897424 61266288 735250588 735250588 607418513 747818957 747818957 578640540 360694586 821330686 821330686 890902059 907580091 907580091 879878795 998606910 998606910 894951512 894951512 14744307 880725276 951007671 983514983 983514983 1019616910 1019616910 677273059 637534185 970700930 970700930 631414991 631414991 744678670 744678670 1019640907 1019640907 757781511 757781511 754323648 976236548 976236548 949499718 710663125 214480157 537055233 537055233 992803632 992803632 559982856 641129241 641129241 561451728 561451728 966528471 966528471 522454673 321028434 565727488 565727488 808091696 808091696 180142918 302518112 302518112 325243314 628382338 628382338 605647192 807919837 807919837 753722079 920395671 920395671 341716185 146869762 56958400 56958400 77523080 272821224 283617730 344981888 344981888 187719280 681708128 681708128 181177553 160958052 545793060 556530241 556530241 43603857 36842832 36842832 25428992 159586560 159586560 427835396 427835396 422262054 422262054 297857042 144892994 144892994 12588432 66959040 293886240 313050114 313050114 344909584 344909584 291635992 357171306 357171306 344270922 34087040 38347920 517302148 517302148 172000468 172000468 37822608 37822608 7832592 35052048 107358740 242211228 242211228 537167593 537167593 63967840 695779857 724599920 991972340 991972340 860566224 952161222 952161222 477941646 342272056 974081722 974081722 846287801 505951399 296015160 128393572 178278164 178278164 351215918 351215918 170955072 406206944 406206944 403169350 521727642 521727642 944040320 1008829831 1038647392 1038647392 501278957 360517538 644244491 644244491 570434084 1066870013 1066870013 794643689 537500413 705380624 705380624 873077058 873077058 714104988 781973085 781973085 215081676 946298958 946298958 674708229 672139569 587411505 419525135 83453292 935668976 935668976 881902155 639522794 658167609 658167609 598225194 598225194 450545217 716647224 716647224 714599943 472084743 860109855 860109855 879507738 879507738 399031874 399031874 370676794 366611640 366611640 312512064 107090328 369521307 641202969 641202969 372314007 936873177 993744726 993744726 708886573 963118514 1035993327 1035993327 855708164 885066881 885066881 291072874 1069292836 1069292836 803808696 803808696 792215233 764361837 1048484520 1048484520 441671001 441671001 208222149 879507814 879507814 409605491 708068432 759224845 991741541 991741541 976799511 604178564 709177737 709177737 434162946 666415383 666415383 870482352 870482352 844260344 1054908755 1054908755 1063338620 1063338620 431252156 431252156 576643360 576643360 718383828 718383828 115658084 9486912 94406656 94685544 127146048 127146048 118581336 118581336 130794832 130794832 105627680 609936680 609936680 73573129 73573129 485152206 485152206 953311287 953311287 432667766 432667766 105066848 105066848 311511776 457525882 457525882 86048774 13105344 37096912 37096912 18434944 95081832 95081832 89415616 67979264 117998168 117998168 492046024 492046024 579800274 579800274 447725425 629302118 873840349 873840349 606200073 606200073 765504864 765504864 737606561 204397836 653580729 1002082165 1002082165 587116394 607774473 607774473 819126705 870146282 870146282 290762955 569380066 633203273 633203273 626346546 626346546 574956840 849346570 849346570 76326634 96928392 341627906 341627906 348367960 348367960 253792260 385944068 406196836 406196836 369185118 236511856 236511856 334864714 464046092 509692712 509692712 353424938 353424938 432206036 500408742 500408742 498841150 498841150 373787392 259150772 254935392 267782848 267782848 182749408 105129740 148927940 595165571 595165571 333447794 713361123 713361123 591504033 528343968 386007415 937481075 937481075 559576128 571068481 571068481 551678337 948531239 948531239 878255768 878255768 980913360 980913360 911275091 527876643 425819654 222646794 205207308 191721108 67884076 143786624 207388684 207388684 140550156 212429904 212429904 172351640 187424800 187424800 153768320 153768320 138448300 88082560 88082560 315424936 315424936 317235072 317235072 268986656 19235842 277661056 277661056 65434192 65434192 201327632 320881180 320881180 49316290 751896768 751896768 167813136 167813136 134340612 134340612 779920022 785976284 785976284 625161139 133919976 537956864 817762786 817762786 716394580 716394580 772328021 923845179 923845179 919935872 919935872 897369562 474287107 509134646 509134646 715916423 715916423 222626476 906132509 906132509 501536032 389078050 389078050 396249856 396249856 81669210 186011872 264442100 264442100 60064732 9824832 25829140 186769716 943580745 943580745 395907022 380861150 777333405 777333405 551611564 551611564 223199681 537205056 926869757 926869757 745014669 952796629 952796629 753422674 505948506 505948506 23277984 398261978 398261978 67271920 114171096 656293530 932134011 932134011 810329666 910551195 910551195 608223369 608223369 537397321 559218880 587500752 587500752 79857152 364932298 364932298 354281666 354281666 290296448 273566954 321802258 671193123 671193123 958526017 958526017 1010082146 1010082146 871740698 937113339 937113339 902770608 517746156 528779280 528779280 262450046 227615340 419549764 419549764 522460713 643211647 643211647 600134169 537329921 600883953 600883953 541708369 597655723 597655723 404127356 789713180 789713180 732961508 732961508 714080837 966459908 966459908 302064128 307815440 307815440 301990464 284189778 69804136 61291856 61291856 86508840 95073640 847791528 847791528 427269409 861157811 861157811 696125873 693107877 612846338 612846338 909402376 909402376 886330368 809803362 809803362 1060635057 1060635057 630481728 630481728 1021695007 1061194439 1061194439 719413671 719413671 4657200 805479715 805479715 42205408 409119216 440716678 440716678 191099316 503780671 696531617 696531617 589170537 632823408 632823408 556794080 556794080 694841672 694841672 716871096 716871096 708528672 296055574 179333216 269921026 271384832 271384832 271882240 271882240 271766274 270828032 192436544 313085697 313085697 302853138 711847875 711847875 976149783 976149783 602015591 544628609 557330994 805377796 855815188 857335347 857335347 562775108 310907460 52691968 120561268 736283591 904210923 904210923 884813643 884813643 722881930 807476611 899419474 899419474 829034947 815008348 595727205 691061541 691061541 160465076 713820612 713820612 557879088 169871488 191513425 718296997 718296997 802222312 802222312 546785856 546785856 677566913 677566913 152080833 629375209 629375209 552876376 587610760 587610760 26862176 60880680 139085028 139085028 627557044 794462337 794462337 1048069271 1048069271 715888469 589956176 589956176 672741248 859126579 859126579 975378000 975378000 540662115 540662115 976729908 976729908 1046062045 1046062045 673407495 886638031 886638031 431648171 431648171 943982727 943982727 432284326 840026596 840026596 1050946480 1050946480 842564872 892527419 892527419 858529787 858529787 1030564998 1030564998 848974281 546553869 113771736 178926704 993339508 993339508 805511741 328412465 927394640 927394640 505548931 890276137 890276137 671507368 478554120 14729664 25182624 25182624 12195648 12195648 8551872 50287232 50287232 13681168 0 787612316 787612316 242258613 92323944 258362176 258362176 204526308 234473488 234473488 253769544 253769544 39008660 192679860 192679860 193029760 193029760 118728480 86262824 86262824 85574576 102614104 102614104 60842512 60842512 72825600 79617864 111084880 490408021 966750591 966750591 822744099 643306162 411177092 932505713 932505713 823460491 823460491 471179781 543132160 978467858 978467858 813174880 813174880 373473760 316458240 316458240 297919968 297919968 166322402 800669916 909546279 909546279 882638962 882638962 903942608 903942608 917329225 917329225 814408731 357518506 278883840 278883840 374770320 374770320 340899888 68827392 170955008 170955008 21201152 179531892 179531892 202131224 202131224 243600524 247537884 247537884 120327480 120327480 90187560 90187560 87032616 36749976 665244072 665244072 117881457 688130884 688130884 684771415 684771415 565099719 570703648 570703648 446118486 526349908 946725089 946725089 418196934 1008338563 1024987287 1024987287 936903339 995209368 995209368 943743028 228359460 228359460 183365076 251236312 251236312 89654136 89654136 42371616 137354432 597709940 597709940 184979681 149021124 457983270 543460389 543460389 880284816 1060245007 1060245007 713756061 713756061 330098196 330098196 319134276 319134276 100763656 100763656 246117960 246117960 572039508 572039508 150260676 150260676 184527500 214174912 214174912 147882664 125376049 286125090 843477266 843477266 664991835 599336817 599336817 385070704 847883536 847883536 923058483 923058483 854465690 854465690 76808520 46270736 304768584 304768584 390829212 390829212 257492404 531694698 531694698 515449824 515449824 372279122 372279122 102836066 484157004 484157004 140015588 129028408 401362098 883070377 883070377 577506993 398596413 398596413 575439335 971000977 971000977 1031558344 1031558344 837919647 1006703191 1006703191 939743758 303335440 135422384 37019920 37019920 11017216 13418624 13418624 2097408 10572168 79950024 547707272 848356257 848356257 960132004 960132004 442165948 849641098 849641098 572149911 464024651 767070541 767070541 789212289 789212289 578893824 578893824 620906506 1044789267 1044789267 827142163 703197345 859428635 902959898 902959898 107174808 130289216 382934288 382934288 365364112 373243674 373243674 304616576 308416914 371856002 371856002 283647171 829690497 829690497 567280929 597052448 602031249 602031249 293209222 464932580 464932580 1024423777 1024423777 888991774 169530900 169530900 829106916 829106916 968991478 1042750712 1042750712 958990389 734173794 678236093 301999681 787743892 787743892 784076637 606447197 864037851 864037851 821086706 821086706 380654211 391057122 533622818 879699084 879699084 390735984 412952990 436975132 436975132 661563803 1023871744 1023871744 779871947 779871947 627081796 609166033 785259741 785259741 780270720 117920593 173692176 173692176 145995092 260460993 325378627 530482295 890902059 907580091 907580091 955515276 998606910 998606910 997572720 894951512 248619801 880725276 1049082512 1049082512 1047915183 764424556 1023611956 1023611956 411763240 411763240 352985640 364488194 364488194 95197544 95197544 26440512 21884064 21884064 28310880 225365792 976236548 976236548 949499718 136433158 214480157 537055233 537055233 145349093 559982856 559982856 641129241 641129241 561451728 561451728 783291309 783291309 745802637 719199477 719199477 692375977 582666681 880579248 880579248 53381449 116443569 287987576 628382338 628382338 605293065 538706952 644753408 742132420 920395671 920395671 815239298 815239298 417030812 79537856 617159360 617159360 283617730 382068954 382068954 146361920 456705846 456705846 189918598 730734468 730734468 330826436 330826436 997083399 997083399 950075382 973123536 973123536 159586560 427835396 427835396 422262054 422262054 297857042 144892994 144892994 59363680 29014320 281190656 313050114 313050114 344909584 386106722 386106722 357171306 571815027 571815027 121999547 879545747 879545747 872917299 641239571 291612315 371196186 829461305 829461305 901461865 921856018 921856018 275096962 537167593 537167593 63967840 695779857 724599920 991972340 991972340 860566224 952161222 952161222 236097716 644414121 873501290 873501290 815307834 889976657 889976657 807852291 876087051 889044575 1062993320 1062993320 86987040 430002496 430002496 496417578 496417578 391950899 944040320 1008829831 1008829831 221571063 561606817 561606817 907290689 907290689 570434084 1066870013 1066870013 305520706 305520706 705380624 705380624 673969413 555067445 776872764 776872764 163034516 228453996 794114048 794114048 71943600 578406288 578406288 254036392 82765620 935668976 935668976 881902155 691559724 642817573 415438937 415438937 656582908 656582908 590742366 984090702 984090702 763889714 860109855 860109855 644126889 292548753 292548753 336334104 336334104 329008482 312512064 312512064 2281728 68603904 70703880 70703880 67148544 1025479968 1025479968 993744726 536662014 963118514 963118514 855708164 855708164 785480243 684561097 671678332 1069292836 1069292836 803808696 962927168 972239847 972239847 84810792 654512436 654512436 186851385 573258968 573258968 369105276 455213398 708068432 708068432 991741541 991741541 976799511 384474458 384474458 164367588 479807898 479807898 587768929 587768929 563746448 844260344 1054908755 1054908755 904995819 732242331 924123969 924123969 636602551 576643360 199912513 815338781 815338781 917554011 917554011 879947746 879947746 312787840 118581336 118581336 130794832 130794832 105627680 100888320 100888320 37435152 37698566 403387398 403387398 403322384 193499320 193499320 319181824 319181824 110285400 311511776 457525882 457525882 86048774 13970112 22466080 22466080 16681640 95081832 95081832 610315777 610315777 298091746 298091746 492046024 537269903 579800274 579800274 447725425 629302118 965678255 965678255 606200073 606200073 765504864 765504864 737606561 481059232 653580729 653580729 326768562 587116394 607774473 607774473 403228376 454872630 454872630 65104854 59891824 567878576 567878576 626346546 626346546 360050163 390334672 390334672 76326634 96928392 1044911957 1044911957 405030182 1036099406 1036099406 869657331 902039787 1015390383 1015390383 952173647 952173647 625526822 513132624 513132624 511918134 511918134 168391304 432206036 500408742 500408742 163864442 462492734 533703622 533703622 254935392 30197504 15816576 21864704 105129740 148927940 244099272 244099272 57721776 234154164 234154164 266558888 266558888 376489474 376489474 559576128 559576128 544912640 596123744 596251761 948531239 948531239 878255768 878255768 980913360 980913360 916085060 916085060 962014113 962014113 784628152 784628152 566525988 449215544 449215544 207388684 140550156 205791380 205791380 252136576 256636092 256636092 151740548 151740548 151391616 90417892 357599752 357599752 349643752 317235072 317235072 384328792 384328792 302462994 285188592 285188592 279006112 836068491 836068491 391958202 560992017 979698618 979698618 971056983 871711493 983926012 983926012 658293940 1069654869 1069654869 231557320 113566444 269097280 817762786 817762786 716394580 716394580 24670069 498379190 776232300 776232300 897369562 897369562 490243868 509134646 509134646 537658485 847874264 1055197642 1055197642 779637657 779637657 551604509 551604509 775956978 775956978 1051573555 1051573555 1049733475 505892159 505892159 466540846 456937242 313306154 943580745 943580745 395907022 361007556 777333405 777333405 503523339 441560578 441560578 682088088 926869757 926869757 745014669 952796629 952796629 753422674 282807180 299599776 299599776 88859184 88859184 938507131 938507131 917640027 932134011 932134011 810329666 910551195 910551195 608223369 608223369 109577744 105956400 382337138 382337138 112761552 364932298 364932298 31759432 290296448 290296448 273566954 321802258 321802258 209717070 230003040 287756322 320935964 336871424 336871424 376229274 461933036 461933036 365988702 528779280 528779280 262450046 227615340 21094604 287654024 522460713 643211647 643211647 600134169 537329921 537329921 365469011 159477036 597655723 597655723 404127356 789713180 789713180 844105872 844105872 714080837 966459908 966459908 316531890 366486632 366486632 336659944 336659944 294252224 34118712 127160848 127160848 95073640 847791528 847791528 90759547 42160464 42078288 2281728 2281728 336596992 336728586 336728586 886330368 886330368 874567880 874567880 1060635057 1060635057 630481728 630481728 1021695007 1061194439 1061194439 719413671 719413671 8547376 805479715 805479715 35901728 276889856 276889856 329858276 971714042 971714042 696531617 947790552 947790552 632823408 632823408 556794080 556794080 551561089 903178756 903178756 716871096 708528672 671400316 671400316 573899116 538415364 723731277 723731277 741161741 741161741 713297749 178219153 718575429 718575429 302853138 711847875 711847875 976149783 976149783 602015591 544628609 557330994 805377796 855815188 857335347 857335347 562775108 310907460 8502096 108328033 736283591 904210923 904210923 884813643 884813643 722881930 827932688 827932688 829034947 829034947 595727205 595727205 691061541 691061541 160465076 713820612 713820612 557879088 169871488 191513425 718296997 718296997 802222312 802222312 546785856 546785856 677566913 677566913 152080833 629375209 629375209 567375057 587610760 587610760 949446743 949446743 822989951 781410859 635193149 794462337 794462337 726511549 726511549 715888469 280962279 680341059 988360374 988360374 859126579 975378000 975378000 540662115 540662115 976729908 976729908 912261648 912261648 673407495 671785809 671785809 134475780 134475780 201326604 615011532 738427649 738427649 227541612 1062447513 1062447513 583316150 892527419 892527419 858529787 858529787 831667905 965448750 965448750 520859725 470315026 419659798 1015619849 1015619849 805511741 564624862 927394640 927394640 505548931 890276137 890276137 671507368 671102109 609916560 205555716 107803860 606223601 606223601 715611861 715611861 705481749 189212225 189212225 844289664 844289664 818276547 974364375 974364375 949251424 73062024 300466702 300466702 376193420 442802672 442802672 80663948 103884176 401785722 401785722 519456982 519456982 530113110 530113110 102614104 162662584 411569524 474355854 474355854 381926166 445442334 507332310 966750591 966750591 903794704 903794704 278692483 932505713 932505713 823460491 823460491 471179781 543132160 994463232 994463232 813174880 813174880 348307379 402916946 465014602 622707975 622707975 1042876084 1042876084 909546279 909546279 901272362 901272362 903942608 903942608 50331696 50331696 357518506 357518506 280902320 301940706 374770320 374770320 340899888 41637060 170955008 170955008 62490624 179531892 179531892 143749220 194188316 243600524 247537884 247537884 120327480 120327480 67905568 86510080 86510080 33038464 25691232 570826865 583096323 1000793054 1000793054 506566981 779098410 779098410 745612173 528930818 528930818 361485254 946725089 946725089 418196934 1008338563 1008338563 936903339 936903339 692733578 692733578 572854276 228359460 228359460 183365076 251236312 251236312 258498620 258498620 109584320 218714340 218714340 786550793 786550793 197337684 457983270 728268817 728268817 880284816 1060245007 1060245007 760743597 713756061 330098196 330098196 319134276 319134276 258788412 85994856 85994856 50881128 185908504 264710540 264710540 178198604 242497192 242497192 214174912 147882664 125376049 73996032 74351689 75567913 87514112 91073408 91073408 385070704 847883536 847883536 923058483 923058483 854465690 854465690 46270736 46270736 74620936 74620936 75233160 75233160 104928128 104928128 167339336 312002556 312002556 302133776 302133776 271590146 473502536 473502536 94556824 94556824 31854259 883070377 883070377 577506993 398596413 948504128 948504128 926042373 926042373 1031558344 1031558344 837919647 1006703191 1006703191 1006963236 1006963236 409874580 409874580 136438020 707412016 707412016 1004163364 1004163364 898431314 904871403 904871403 821173715 821173715 960132004 960132004 347862858 907292490 907292490 892474123 464024651 767070541 767070541 789212289 931674660 931674660 578893824 620906506 1044789267 1044789267 827142163 703197345 859428635 902959898 902959898 303108184 303108184 273285144 383784730 383784730 373243674 373243674 539686035 539686035 375598992 375598992 587959051 829690497 829690497 567280929 597052448 602031249 602031249 586518128 586518128 464932580 1024423777 1024423777 958373053 269224962 269224962 381755526 381755526 55187374 1042750712 1042750712 1023749264 1061684415 1061684415 919079077 581835992 581835992 370707976 370707976 623327529 623327529 643915938 908140827 908140827 869873072 533622818 879699084 879699084 390735984 412952990 436975132 436975132 661563803 676529032 676529032 779871947 779871947 627081796 610388080 785259741 785259741 780270720 25390080 173692176 173692176 177280340 260460993 325378627 530482295 748609101 748609101 528746466 955515276 955515276 997572720 997572720 678437765 941650048 941650048 1049082512 1049082512 1047915183 601032625 1023611956 1023611956 693203833 411763240 623027240 623027240 631411713 671366120 671366120 142589708 142589708 21884064 276111082 276111082 225365792 150581329 547621635 547621635 554182132 554182132 359804974 537645136 691263349 691263349 671159300 155280240 30433888 201609681 783291309 783291309 745802637 719199477 719199477 692375977 582666681 880579248 880579248 111844088 359076872 861231378 861231378 933573217 933573217 740100723 749484244 749484244 773315086 773315086 815239298 815239298 417030812 373591362 617159360 617159360 128157890 382068954 673858338 673858338 456705846 456705846 189918598 730734468 730734468 407938848 426370470 997083399 997083399 950075382 973123536 973123536 14583168 271564176 271564176 168742214 151253028 145318048 29602064 59363680 59363680 47715712 281190656 281190656 25330050 304111664 386106722 386106722 59248650 571815027 571815027 121999547 879545747 879545747 872917299 641239571 291612315 371196186 829461305 829461305 901461865 921856018 921856018 275096962 272292096 73975688 537969536 537969536 70309120 193381140 193381140 11799360 859836947 859836947 236097716 644414121 873501290 873501290 815307834 889976657 889976657 807852291 876087051 889044575 1062993320 1062993320 86987040 430002496 430002496 496417578 496417578 391950899 744186109 744186109 601198201 486257188 561606817 561606817 907290689 907290689 529789566 529789566 296243550 305520706 305520706 304950546 310120338 310120338 555067445 823362358 823362358 989233978 989233978 757018945 757018945 637508788 637508788 254036392 1062314390 1062314390 622525800 654127065 691559724 861793971 861793971 464829076 464829076 953057708 953057708 813638561 984090702 984090702 763889714 489437311 453708056 289616034 268967040 273029250 273029250 21954690 21570720 106035240 106035240 45932480 271340115 584047809 584047809 192983223 1025479968 1025479968 536662014 994593793 994593793 675595408 675595408 524865590 538210304 538210304 794924088 794924088 694034085 266732861 962927168 972239847 972239847 729032997 749084856 749084856 555749758 573258968 573258968 726009997 726009997 807930979 807930979 799674498 1013187965 1013187965 809624347 809624347 738291482 786020653 786020653 1018192001 1018192001 413734528 284827958 504567919 904995819 904995819 600932709 924123969 924123969 675138178 675138178 441390469 815338781 815338781 917554011 917554011 879947746 879947746 312787840 110113240 59171760 74146880 74146880 71901312 88283296 663637217 663637217 51016112 504964638 504964638 764770317 764770317 261908132 360884906 376563720 376563720 330385714 683697107 683697107 215084770 561684512 586405141 678891909 678891909 153778441 566302028 621061164 621061164 298091746 298091746 340660800 537269903 537269903 275590530 434447046 434447046 965678255 965678255 371961389 545400836 545525764 545525764 48683472 481059232 481059232 185655294 38571136 70437792 122083512 570595048 570595048 454872630 726924817 726924817 572519093 567878576 838446096 871681011 871681011 622959993 622959993 598051608 65273914 33238432 1044911957 1044911957 491847772 1036099406 1036099406 869657331 902039787 1015390383 1015390383 952173647 952173647 625526822 928249497 928249497 839042456 839042456 790647169 1013007133 1013007133 879812621 544236646 496558774 533703622 533703622 55102176 30197504 15816576 21864704 71893576 71893576 204411722 204411722 228445928 301564266 301564266 363468296 363468296 298645348 1069550490 1069550490 846077431 544912640 596123744 596251761 596251761 958250304 975422545 975422545 970964395 970964395 916085060 916085060 962014113 962014113 816001347 784628152 566525988 449215544 449215544 93009000 242747868 242747868 207947912 252136576 256636092 256636092 160578056 160578056 232353860 232353860 453601492 453601492 349643752 180081152 180081152 384328792 384328792 302462994 294547728 840986737 840986737 881238450 963977257 963977257 721496951 979698618 979698618 971056983 918897465 983926012 983926012 418131582 1069654869 1069654869 967065441 967065441 162867731 148109462 28298404 228569098 238685699 659555001 904094659 904094659 860000305 354519978 490243868 490243868 238569262 287376384 537658485 847874264 1055197642 1055197642 779637657 779637657 556958182 556958182 775956978 775956978 1051573555 1051573555 1049733475 505892159 505892159 466540846 456937242 313306154 313306154 211918952 159402432 361007556 361007556 139724758 365289580 441560578 441560578 682088088 682088088 216485481 337118730 337118730 205070598 140722366 282807180 299599776 299599776 162337796 181040164 938507131 938507131 1047603503 1047603503 996671820 996671820 235170629 856974360 856974360 637569087 384147718 1070401206 1070401206 785705648 112761552 86116872 86116872 31759432 75527776 77531200 92423936 287242760 287242760 272062466 86196482 146893388 146893388 346721600 346721600 99149898 122275190 122275190 509960234 509960234 436332886 342147298 342147298 356449024 356449024 287654024 413079914 413079914 285623364 90402792 90411528 90411528 159477036 159477036 936149244 994630905 994630905 613078089 844105872 844105872 160497734 294650466 400305898 400305898 366486632 366486632 363347234 363347234 329481000 329481000 486562628 486562628 106187424 816885164 887358457 887358457 473433226 285327761 141632388 544215888 544215888 505598238 505598238 630929945 893924896 893924896 874567880 680137797 546737152 152077120 93513320 130469992 130469992 113265312 52380896 55603200 55603200 54983824 54983824 38087088 333525472 333525472 329858276 971714042 971714042 276174924 947790552 947790552 1054075344 1054075344 555029050 556802208 556802208 903178756 903178756 377729768 637878369 671400316 746975792 746975792 538415364 723731277 723731277 741161741 741161741 713297749 178219153 718575429 718575429 25154822 268603392 268603392 268484610 268484610 146938384 306526180 306526180 15338994 841877248 841877248 37632019 34647040 60872656 60872656 83377984 96868584 131988528 131988528 624403216 640565513 640565513 827932688 827932688 791025981 268962468 268962468 56626232 74190216 631942706 918027099 918027099 507127159 579568196 579568196 299927332 12759464 94495080 521564902 521564902 806266242 806266242 689178497 1025900553 1025900553 805966851 567375057 567375057 59908176 160241859 949446743 949446743 822989951 781410859 635193149 675305889 675305889 99827772 45089616 43068160 280962279 680341059 988360374 988360374 815404000 704385937 317201413 170968068 326372274 326372274 156687014 912261648 912261648 623903529 623903529 519123260 134475780 890268833 890268833 615011532 919437613 919437613 647228938 1062447513 1062447513 583316150 547430721 651953056 685702711 877210369 877210369 965448750 965448750 520859725 470315026 419659798 1015619849 1015619849 298260833 564624862 579022929 579022929 94951861 90515468 609866372 784474368 784474368 609916560 205555716 107803860 705564993 705564993 715611861 715611861 705481749 265463468 453743640 844289664 844289664 818276547 974364375 974364375 949251424 528848230 528848230 300466702 376193420 442802672 442802672 258327332 463433434 463433434 948097409 948097409 576770369 530113110 530113110 98118934 722028864 722028864 474355854 673612493 673612493 445442334 772834049 896139776 896139776 903794704 903794704 281069218 281069218 878221006 878221006 739246605 959540352 959540352 994463232 994463232 1042755523 1042755523 949292998 449333414 945324037 945324037 622707975 1042876084 1042876084 719882778 719882778 901272362 901272362 819340985 122302427 109976592 109976592 42802232 105251464 280902320 301940706 301940706 106856200 106856200 94513832 25439488 25439488 62490624 62490624 34603536 34759184 34759184 139773568 139773568 135007236 55847824 111683096 111683096 293184964 381744476 381744476 278606708 570826865 1026278535 1026278535 1000793054 967910247 779098410 853590381 966834384 966834384 528930818 268884094 107286064 107286064 94819750 94819750 873202240 873202240 661162422 276843523 280281152 280281152 566035289 566035289 351137226 761039595 761039595 403331224 403331224 304735506 931078145 931078145 786550793 1017512697 1017512697 214958796 728268817 728268817 799674848 799674848 760743597 760743597 601751141 601751141 223926636 553227921 739688752 739688752 635995853 564010593 713235812 730092352 730092352 696641637 562215008 242497192 242497192 122421304 122421304 102763808 69747200 23094048 117869712 117869712 91073408 123544088 319817224 319817224 304351506 36441360 36441360 6293648 4456448 7379008 11719488 11719488 73614848 75233160 75233160 71500288 71500288 70390916 1042366751 1042366751 413377096 807534663 807534663 1029738824 1029738824 714216774 316977302 316977302 504254996 540211888 540211888 649372425 948504128 948504128 826384450 702145265 660079841 660079841 550012645 550012645 744040077 1006963236 1006963236 409874580 409874580 136438020 707412016 707412016 1004163364 1004163364 898431314 904871403 904871403 821173715 821173715 742628654 733021878 347862858 941208342 941208342 892474123 406855974 235480092 235480092 218636376 1006706256 1006706256 731250772 998527629 998527629 947912775 315154524 243385554 84467744 390660800 390660800 303108184 319593912 319593912 383784730 383784730 124798194 350942504 539686035 539686035 375598992 375598992 587959051 587959051 299762369 299762369 557349600 562919681 562919681 586518128 586518128 336089496 262408572 958373053 958373053 269224962 834343432 984613719 984613719 328806256 731002698 731002698 1023749264 1061684415 1061684415 1016447074 751736385 581835992 467282883 818950391 818950391 623327529 643915938 908140827 908140827 869873072 399949832 399949832 908157269 908157269 551305670 551305670 795439504 795439504 793371837 786515296 132379128 132379128 610388080 610388080 574593065 112614024 25390080 59818616 239695656 239695656 238186780 178922068 756775116 756775116 266212873 236568956 528746466 528746466 413196672 148972352 148972352 941973525 1050937928 1050937928 534910950 312486491 240257694 601032625 601032625 693203833 693203833 430301282 623027240 623027240 631411713 671366120 671366120 288156036 288156036 613119010 613119010 969333402 969333402 713022673 547621635 547621635 554182132 554182132 634925320 634925320 691263349 691263349 671159300 155280240 81458824 127678280 127678280 80172624 14680512 28447584 28447584 69210112 69341448 301096514 550676091 550676091 359076872 861231378 861231378 933573217 933573217 740100723 749484244 749484244 746696852 315060225 248492124 314640450 342687746 373591362 373591362 348660042 20034304 51589680 673858338 673858338 688778277 688778277 35829045 674384900 674384900 540727041 426370470 444293926 722880354 722880354 430890967 283101188 195833664 271564176 271564176 407867830 407867830 286158242 187241746 187241746 59307104 47715712 47715712 18345744 16340608 33602576 33602576 5842560 5375104 4403328 16786736 53089776 92483696 277365784 308929938 308929938 50332192 50332192 21537184 21537184 90793376 90793376 69773576 21070112 642853489 649505640 649505640 551066597 212470836 193381140 193381140 696431188 696431188 650843724 210092460 234831852 257351192 257351192 248562396 102779600 87493296 143686804 143686804 69997848 63704304 247832252 247832252 39930368 154491280 154491280 142779118 377876754 434206614 434206614 467085030 502114308 502114308 136168506 619623780 770920736 770920736 210709628 210709628 932121372 1070121087 1070121087 310120338 339243688 492556078 823362358 823362358 989233978 989233978 412603135 184814889 637508788 637508788 82589519 1062314390 1062314390 622525800 654127065 654127065 861793971 861793971 464829076 464829076 953057708 953057708 879792148 966439905 966439905 463560593 403317924 403317924 289616034 189850976 273208450 275366018 289513890 365813992 365813992 970703589 970703589 693232293 584047809 584047809 315758374 369663261 497285228 889039582 994593793 994593793 675595408 978062487 978062487 895515319 895515319 794924088 794924088 694034085 415958272 160432740 689179173 729032997 729032997 822617152 830546019 830546019 532812072 849340234 849340234 726009997 807930979 807930979 799674498 1013187965 1013187965 809624347 809624347 738291482 786020653 786020653 1018192001 1018192001 683712896 809922562 809922562 513802590 514900316 514900316 505429184 505429184 675138178 675138178 441390469 263056764 263056764 44908588 61346216 61346216 64037488 110113240 110113240 50724968 74146880 74146880 71901312 88283296 663637217 663637217 780294747 780294747 504964638 764770317 764770317 945784972 945784972 1065826431 1065826431 998379639 998379639 818666716 245532414 561684512 586405141 678891909 678891909 153778441 566302028 623525903 623525903 807405443 807405443 770311752 486019816 841616654 841616654 772151325 356157982 356157982 313620298 849017360 849017360 504259653 48683472 48683472 361730180 361730180 332429232 58426098 839681536 840223251 840223251 943465178 943465178 726924817 899025596 899025596 841007458 841007458 871681011 871681011 622959993 622959993 598051608 425975467 970508007 970508007 806062628 491847772 599327744 599327744 598811505 304686961 813761298 813761298 294699107 595715634 595715634 928249497 928249497 839042456 839042456 790647169 1013007133 1013007133 879812621 544236646 496558774 478860366 140050312 228938856 228938856 73965812 49116304 71893576 71893576 204411722 204411722 228445928 426528358 494699493 494699493 363468296 298645348 1069550490 1069550490 908991871 537396515 424160480 366049002 562595361 958250304 975422545 975422545 562635873 545572929 545572929 472992604 932557674 932557674 816001347 559970560 559970560 65342881 74941672 79988480 242747868 242747868 207947912 241199540 241199540 410515370 410515370 301058958 297361608 232353860 453601492 453601492 170024132 288527616 288527616 211096300 211096300 253992698 822874112 840986737 840986737 881238450 963977257 963977257 914622660 914622660 883961078 918897465 918897465 643680777 591998988 135265284 287759360 823041062 967065441 967065441 325181637 148109462 28298404 869194710 869194710 659555001 904094659 904094659 860000305 354519978 209838871 288527010 372445982 1028787126 1028787126 286795545 221325332 394357252 394357252 323765346 556958182 556958182 765998886 765998886 350509478 350509478 272927176 101191716 250336656 250336656 117704760 120368168 706847297 706847297 374614950 1061487307 1061487307 521529918 521529918 92586222 45080904 602276916 699523941 699523941 906759195 943643947 943643947 591154692 32952610 31821344 162337796 162337796 239322598 450448814 450448814 1047603503 1047603503 996671820 996671820 235170629 856974360 856974360 637569087 384147718 1070401206 1070401206 785705648 73229986 52292160 43294064 39169560 110387992 114861528 114861528 287242760 287242760 272062466 86196482 67158056 67988128 346721600 346721600 94743720 99491304 99491304 509960234 509960234 436332886 342147298 342147298 356449024 356449024 283481542 634583109 634583109 619182537 613851049 613851049 307371610 443941444 443941444 936149244 994630905 994630905 613078089 730819109 730819109 160497734 294650466 400305898 400305898 104426954 259398102 363347234 363347234 329481000 329481000 486562628 486562628 826934419 826934419 887358457 887358457 833367248 833367248 661002681 661002681 544215888 935051066 935051066 630929945 893924896 893924896 680137797 680137797 546737152 152077120 28312416 34856968 39606456 40812560 40812560 118675128 118675128 122106360 122106360 318980568 384121000 384121000 327105142 327105142 602993475 602993475 470600718 642024599 1054075344 1054075344 88081024 556802208 608176129 608176129 931320413 931320413 771815834 637878369 746975792 746975792 211116620 68266052 68157508 29365216 29365216 16986144 35002896 456982400 543812307 543812307 305619266 973264069 973264069 671749125 183905041 839856580 971649953 971649953 956960646 960169764 960169764 691342628 289743172 65866912 83377984 200853492 688431476 693183141 693183141 624403216 218962840 808689593 808689593 742150658 742150658 785044701 785044701 481957710 631942706 918027099 918027099 507127159 579568196 579568196 299927332 681805109 681805109 673801253 595603476 806266242 806266242 689178497 1025900553 1025900553 805966851 893499035 910934059 910934059 889233616 75145904 236792328 267494376 267494376 231795584 201375756 161341164 99827772 52691776 59836520 134819332 138087876 138087876 815404000 815404000 704385937 317201413 381012296 381012296 326372274 156687014 825489065 825489065 623903529 623903529 621047477 564464608 890268833 890268833 1032093776 1032093776 919437613 647228938 647228938 113246369 341885322 373342394 651953056 685702711 877210369 877210369 932365183 932365183 353903722 353903722 473523822 473523822 395871028 259818082 50351788 537404089 537404089 627647913 677388313 677388313 784474368 784474368 720233113 720233113 100897629 705564993 705564993 216531520 612713145 612713145 348786934 453743640 453743640 306946066 270264468 242482744 295308144 325861396 528848230 528848230 363195864 363195864 46625032 258327332 258327332 463433434 463433434 948097409 948097409 576770369 1021882834 1021882834 663046520 722028864 722028864 446878038 673612493 673612493 237027612 772834049 896139776 896139776 691275045 294275377 281069218 281069218 878221006 878221006 739246605 959540352 959540352 893172621 356128550 1042755523 1042755523 949292998 449333414 945324037 945324037 93199464 641730048 643303065 643303065 689963083 829096664 892085603 892085603 665397595 665397595 822157347 856242179 856242179 929439931 929439931 906090896 40982976 109006828 188809616 229808224 235218972 235218972 246085896 246085896 207772668 259230860 259230860 192794532 260916176 260916176 609272457 609272457 537453241 381744476 381744476 278606708 508958454 1026278535 1026278535 967910247 967910247 621109519 853590381 966834384 966834384 713781812 713781812 549453185 267738237 94819750 94819750 90364044 661162422 661162422 276843523 280281152 280281152 566035289 566035289 351137226 761039595 761039595 403331224 403331224 304735506 931078145 931078145 398541680 1017512697 1017512697 883036321 199414528 235280621 255987900 255987900 201986808 717512828 717512828 601751141 223926636 553227921 739688752 739688752 635995853 564010593 713235812 730092352 730092352 696641637 562215008 263719192 263719192 118754748 73435232 73435232 60041504 129331168 129331168 117869712 84749736 123544088 319817224 319817224 304351506 303828498 303828498 109468680 109468680 102160920 47255760 114307392 114307392 40973656 50988928 50988928 19574808 91961256 1042366751 1042366751 413377096 872423496 872423496 1029738824 1029738824 714216774 732795618 981467031 981467031 540211888 540211888 649372425 707262209 826384450 826384450 702145265 584766193 323681827 382018760 382018760 404015622 404015622 822255668 822255668 497297871 283840908 849814640 849814640 949721794 949721794 706933460 673492864 551889345 663932635 742628654 993840951 993840951 489524103 1013113640 1013113640 842538624 857376821 857376821 642900633 554849527 1006706256 1006706256 731250772 998527629 998527629 947912775 709156932 595657945 638182425 822616640 822616640 121917360 319593912 319593912 74630810 40129664 40129664 36625680 1000906130 1000906130 507564401 646191480 646191480 622989609 353406794 353406794 13896384 17302560 540186320 540186320 102125097 897798226 897798226 669775353 612614146 253306428 834343432 984613719 984613719 730316522 731002698 731002698 970846160 970846160 1016447074 1016447074 751736385 467282883 467282883 818950391 824181027 878793523 878793523 322015401 638715409 638715409 974707948 974707948 908157269 908157269 551305670 551305670 909355806 909355806 793371837 786515296 156246593 139039280 108094288 117704760 117704760 112614024 84789800 121734384 239695656 239695656 238186780 75801837 756775116 756775116 266212873 626121442 972943335 972943335 557613893 557613893 941220544 941973525 1050937928 1050937928 312486491 483854288 483854288 268834818 522001178 522001178 245226320 430301282 430301282 345251424 904004587 904004587 769967840 1018962373 1018962373 696143365 696143365 1056116960 1060184895 1060184895 449755021 339988210 588977536 588977536 634925320 634925320 28710113 123178696 202545344 202545344 81458824 127678280 127678280 93642888 104942240 104942240 105121944 105121944 102394680 134238284 550676091 550676091 357437371 874266608 874266608 657586553 657586553 244333209 482859220 746696852 746696852 690356654 996706615 996706615 940787215 940787215 947105990 947105990 108957570 947723552 947723552 591108884 688778277 688778277 35829045 674384900 674384900 940713218 940713218 545088710 722880354 722880354 430890967 283101188 195833664 195833664 28952852 407867830 407867830 286158242 187241746 187241746 564746673 564746673 548749776 548749776 94420537 613905146 851843283 851843283 848038915 898112649 903574194 903574194 101446872 310433194 387164456 387164456 68182690 322963074 322963074 21537184 90793376 101375130 305061138 305061138 642853489 857648642 857648642 740612380 1014502661 1014502661 485354958 696431188 696431188 650843724 146968316 146968316 257351192 257351192 248562396 102779600 47708880 143686804 143686804 236065308 294327298 294327298 247832252 393274698 393274698 410511792 410511792 243001019 1043470235 1043470235 795051425 502114308 573608893 1030996907 1030996907 935502199 770920736 534226063 288149113 932121372 1070121087 1070121087 777004179 706208159 923011131 923011131 1049049183 1049049183 553789566 1031473922 1031473922 760167597 79050157 824234698 824234698 186437172 221882648 221882648 151729188 135145504 271844258 613539952 655360569 655360569 879792148 879792148 966439905 966439905 463560593 745618093 745618093 1006222488 1006222488 490555360 275366018 289513890 365813992 365813992 970703589 970703589 693232293 393012104 317457575 506305068 506305068 1021528846 1021528846 889039582 666546328 289409425 978062487 978062487 895515319 895515319 572780810 472366435 615595391 615595391 338375946 219029622 540544848 540544848 822617152 830546019 830546019 369621018 849340234 849340234 604761249 65428361 392824730 392824730 100309776 100309776 131124040 131124040 457006277 684255611 684255611 176701634 813475833 896160632 896160632 942778991 942778991 934283754 934283754 505429184 505429184 536621945 536621945 233905433 237079364 605390941 682658016 682658016 637747881 564343560 50332376 118819232 118819232 105859512 97218080 97218080 72454152 50581408 66644668 780294747 780294747 475245258 475245258 425229970 945784972 945784972 1065826431 1065826431 998379639 998379639 818666716 245532414 245532414 28386246 21045896 280465058 280465058 140276610 623525903 623525903 807405443 807405443 770311752 486019816 841616654 841616654 772151325 579076477 579076477 313620298 849017360 849017360 626573397 1029126831 1029126831 897790059 961317902 961317902 271528962 839681536 840223251 840223251 943465178 943465178 948374294 948374294 899025596 841007458 841007458 826591395 826591395 599223920 507913076 507913076 425975467 970508007 970508007 806062628 675943557 599327744 599327744 598811505 304686961 813761298 813761298 294699107 595715634 595715634 530370736 530370736 738240402 738240402 808059811 808059811 505632289 504488478 442597632 478860366 478860366 404377924 228938856 228938856 173602304 173602304 43854608 43854608 33953728 34474496 34474496 426528358 494699493 494699493 286525986 290210851 964855755 964855755 908991871 424160480 424160480 369998672 755557384 755557384 687939621 383081178 840297139 840297139 858376530 858376530 693159076 757223807 757223807 580931713 313200899 412758592 412758592 330084978 330084978 533719326 533719326 319092086 318784520 410515370 410515370 301058958 297361608 545922565 571160657 836940704 836940704 288527616 288527616 999657027 999657027 827203430 835183012 835183012 308281746 308281746 306972832 446693718 914622660 914622660 761291136 761291136 755097645 517178381 706332403 978214327 978214327 792387880 715138210 715138210 866706756 866706756 719340530 869194710 869194710 904533483 904533483 616235698 209386584 101410570 117986982 288527010 372445982 1028787126 1028787126 286795545 403736041 1039714287 1039714287 635438965 486146530 486146530 765998886 765998886 947941479 1006764067 1006764067 268525681 268525681 136907864 178511956 178511956 706847297 706847297 525529986 1061487307 1061487307 521529918 521529918 92586222 45080904 602276916 699523941 699523941 906759195 943643947 943643947 591154692 167551922 290958368 290958368 253155900 253155900 450448814 450448814 370686960 17509888 428163140 428163140 337667144 279569730 92866816 436997146 436997146 216895100 35078816 35078816 14094560 43294064 43294064 39169560 110387992 114861528 114861528 89968296 89968296 355676704 355676704 67158056 67988128 75385992 75385992 94743720 423758044 423758044 117440568 117440568 90211488 69794840 83665728 141567872 204601948 213786101 634583109 634583109 619182537 613851049 613851049 417630464 443941444 443941444 153239724 139067704 417131451 417131451 730819109 730819109 26282784 1386496 4522112 4522112 84033536 84033536 37830672 37830672 375589360 435404670 435404670 271410200 826934419 826934419 856217640 856217640 833367248 833367248 661002681 661002681 362284384 935051066 935051066 545679226 277382016 282642370 282642370 16296192 45106832 45106832 9500256 34856968 39606456 40812560 40812560 118675128 118675128 122106360 122106360 318980568 384121000 384121000 335144946 335144946 602993475 602993475 470600718 642024599 642024599 511626020 511626020 122553982 608176129 608176129 931320413 931320413 771815834 279308664 179819092 211116620 211116620 181447141 665971577 665971577 628880041 599619541 205658713 651092484 651092484 648309956 305619266 973264069 973264069 671749125 183905041 839856580 971649953 971649953 956960646 960169764 960169764 691342628 289743172 65866912 109323953 649955009 688431476 693183141 693183141 933856802 933856802 808689593 808689593 742150658 742150658 785044701 907774210 919526619 919526619 347913075 299172352 350298570 350298570 349242112 187212817 681805109 681805109 673801253 595603476 666288176 822137089 822137089 554779680 554779680 336692419 893499035 910934059 910934059 889233616 336121234 363720058 612879305 612879305 867873402 867873402 737407597 737407597 643226173 573747761 833954486 833954486 567542563 324276837 621750271 621750271 368252986 548540929 548540929 552810194 847774803 847774803 825489065 809623683 809623683 770112975 770112975 564464608 354412889 1032093776 1032093776 428740619 616820470 616820470 955149354 955149354 373342394 488387958 488387958 388514960 450084480 647972653 647972653 448616216 353903722 473523822 674308731 674308731 220201822 818507643 818507643 537404089 627647913 677388313 786122136 786122136 551120320 720233113 720233113 139670336 139670336 78787648 21104256 231568054 340744286 415867966 415867966 407102546 407102546 270264468 242482744 504359042 504359042 415931998 415931998 465305400 501404142 501404142 288395808 267589356 158510944 334631410 334631410 333583346 144707988 1021882834 1021882834 663046520 663046520 567495526 446878038 515806724 515806724 870892308 870892308 345408000 65012208 593494016 593494016 426819991 1023740135 1023740135 826591395 1029422604 1029422604 876422304 876422304 293416837 291504518 139723052 139723052 134219780 805306888 875835144 875835144 641730048 643303065 643303065 689963083 689963083 892085603 892085603 665397595 665397595 822157347 856242179 856242179 929439931 929439931 906090896 55009432 109006828 188809616 229808224 235218972 235218972 246085896 246085896 274776450 507880222 510732700 510732700 366561288 260916176 609272457 609272457 537453241 506012688 506012688 81904280 199853760 199853760 196084596 86127128 559546625 559546625 545292296 566231464 566231464 713781812 713781812 549453185 267738237 262144 313344 313344 7111424 14453568 14453568 151556132 151556132 151126948 306596752 306596752 430568596 430568596 217506014 127880928 526758592 539232260 587565163 1036167485 1036167485 883036321 883036321 199414528 235280621 235280621 783030101 783030101 717512828 717512828 580252516 110050392 235191381 246418369 246418369 74758380 203824741 203824741 97519712 84095016 84095016 118166336 263719192 263719192 242146716 263016488 263016488 60041504 129331168 129331168 37884048 55254576 55254576 18365104 18365104 346231410 346231410 336861186 371477274 371477274 116709978 71750280 114307392 281228352 281228352 273272320 50988928 359720074 359720074 340378538 340378538 478355528 872423496 1025823008 1025823008 1024343079 820721091 820721091 981467031 981467031 299003253 142820384 153167668 707262209 707262209 584743105 205256104 205256104 54715172 773000857 773000857 1008270471 1008270471 822255668 822255668 497297871 321395028 849814640 849814640 460194513 415771698 545988160 814619715 814619715 404884663 370915629 993840951 993840951 704701296 1047298688 1047298688 842538624 857376821 857376821 642900633 554849527 643138660 643138660 620013745 676146016 701803941 709156932 709156932 595657945 638182425 822616640 929861514 929861514 573836049 337350929 337113530 337113530 353907074 353907074 1003625745 1003625745 779748978 646191480 646191480 654625073 654625073 579518049 579518049 103814608 603327049 603327049 102125097 897798226 897798226 669775353 374253923 717945280 966050369 966050369 830997603 730316522 730316522 679412934 679412934 604412102 12897929 744222784 885381195 885381195 813160717 537080098 824181027 878793523 878793523 627250760 638715409 638715409 974707948 974707948 722002572 722002572 722000039 693066869 909355806 909355806 718869556 718869556 705972835 705972835 174336294 659187922 659187922 633645218 633645218 368735146 485164790 485164790 303564306 477610568 537135149 537135149 278723116 626121442 972943335 972943335 557613893 557613893 941220544 941220544 651198474 651198474 584084701 483854288 873990621 873990621 558961280 975331508 975331508 410113674 149988306 24546600 904004587 904004587 769967840 1018962373 1018962373 696143365 696143365 1056116960 1060184895 1060184895 552784833 552784833 588977536 588977536 567537361 363384543 689436068 731024980 731024980 202545344 55059564 0 93642888 93642888 104942240 104942240 105121944 105121944 102394680 102394680 118493888 357437371 819336611 874266608 874266608 657586553 657586553 568234890 1070216421 1070216421 642977688 690356654 996706615 996706615 1016074860 1016074860 947105990 947105990 362013672 996097698 996097698 946837767 816978211 698368114 699433957 699433957 559989217 940713218 940713218 730465894 545088710 282692227 181561728 181561728 38101376 38101376 47111376 68148520 317615282 317615282 300117184 300117184 564746673 564746673 548749776 548749776 94420537 613905146 851843283 851843283 848038915 898112649 903574194 903574194 421202708 421202708 396143184 387164456 211603280 322963074 322963074 61213944 107688152 186730260 305061138 305061138 339687946 857648642 857648642 740612380 1014502661 1014502661 804122109 804122109 1054343250 1054343250 214527006 214527006 154162944 154162944 337713938 337713938 418507972 535721742 535721742 534304310 486152142 294327298 174166714 393274698 393274698 410511792 410511792 243001019 1043470235 1043470235 795051425 435293320 573608893 1030996907 1030996907 935502199 534226063 534226063 288149113 802821885 802821885 777004179 777004179 706208159 923011131 923011131 1049049183 1049049183 569940530 1031473922 1031473922 760167597 79050157 824234698 824234698 520528201 458009913 205785088 174332336 268034882 487846446 794001555 794001555 655360569 844839961 844839961 696086521 696086521 632375877 745618093 745618093 1006222488 1006222488 844506892 465166465 439652988 755141746 823052421 823052421 784502967 750829773 604330113 100851805 506305068 506305068 1021528846 1021528846 992881110 992881110 671918121 672137733 710419085 710419085 694421128 694421128 292302632 615595391 615595391 338375946 219029622 540544848 540544848 538968321 293675106 545459232 545459232 537344001 97842896 97842896 67371008 67371008 9833536 10349352 95556456 95556456 94113384 347673740 684255611 684255611 283254148 813475833 896160632 896160632 942778991 942778991 934283754 934283754 427413979 377855916 536621945 536621945 243607644 243607644 605390941 682658016 682658016 637747881 564343560 50332376 118819232 118819232 105859512 97218080 97218080 93984360 30280232 60709456 60709456 55856784 51669712 47548976 47548976 0 117441066 303038994 353370168 353370168 1034242681 1034242681 165988320 562749536 562749536 552491333 963991267 963991267 140276610 560994854 560994854 417732459 359142368 359142368 298631854 283429314 612762176 612762176 579076477 579076477 162328840 571114572 626573397 626573397 1029126831 1029126831 897790059 961317902 961317902 780148757 302663768 302663768 519632728 519632728 380649548 948374294 948374294 210008075 71319752 88180824 296077602 303327272 1012056479 1012056479 507913076 144808196 407854348 612280966 675943557 675943557 205526592 1011352719 1011352719 819462991 807403779 714080886 780165213 780165213 503343822 1045485743 1045485743 738240402 738240402 808059811 917177754 917177754 988736788 988736788 411755666 411755666 407433652 187655104 187655104 173602304 173602304 2029184 1245760 10347520 10347520 18826596 146403140 146403140 218847756 218847756 227304544 826033664 827004736 827004736 104495888 369998672 369998672 755557384 755557384 687939621 1045667999 1045667999 964776359 866324962 866324962 693159076 757223807 757223807 580931713 313200899 412758592 412758592 330084978 330084978 533719326 533719326 319092086 318784520 152442376 152442376 272530924 272530924 545922565 571160657 942246688 942246688 593890903 726150182 999657027 999657027 827203430 835183012 1000504740 1000504740 925286424 1029234749 1029234749 575933073 454058699 931719340 931719340 956911763 956911763 706332403 978214327 978214327 792387880 881411231 881411231 871976077 1032684345 1032684345 788933226 788933226 904533483 904533483 616235698 836978976 836978976 355656024 355656024 656212374 1007436087 1007436087 450175703 1036896860 1039714287 1039714287 681930521 658765886 444914243 528352398 528352398 947941479 1006764067 1006764067 268525681 268525681 146312736 178511956 178511956 161603852 229818744 525529986 525529986 180697704 502088616 502088616 221571886 75448200 513290564 513290564 372979482 252781116 252781116 237316380 237316380 167551922 290958368 290958368 253155900 253155900 178547312 289780010 289780010 169322588 314705490 337667144 337667144 302443530 302443530 436997146 478239074 478239074 421833238 257262944 115799570 15558880 15558880 15132864 15132864 5369856 1409536 1409536 269500930 355676704 355676704 335565472 335565472 4194432 4194432 276957184 423758044 423758044 394363984 394363984 316165272 76007472 76007472 134217732 203444768 203444768 134820112 170530068 170530068 105245448 417630464 417630464 74875470 70149144 70149144 323653696 323653696 952149364 1006182791 1006182791 167579014 167579014 393466056 393466056 384438048 384438048 295276000 422800172 422800172 435404670 435404670 271410200 271410200 118380826 52482336 52482336 35819568 33689616 50595888 50595888 50595888 50595888 19466264 505294232 505294232 282642370 416883076 439935504 439935504 15777984 15777984 7340032 896 0 3789056 3789056 74566912 74566912 1389192 14951552 14951552 330182336 335144946 335144946 66973680 70340588 70340588 175673594 301863062 511626020 511626020 122553982 384567816 384567816 484842472 560729505 793648628 793648628 619345280 619345280 612754568 763650120 763650120 665971577 764093728 764093728 205658713 739206752 739206752 648309956 177944148 177944148 167956500 167956500 167882752 60397088 144231568 144231568 137024772 137024772 136181508 135056388 6608384 57309904 109323953 649955009 649955009 432164335 554251960 933856802 933856802 722307748 625338537 625338537 823213557 823213557 907774210 919526619 919526619 1025845551 1025845551 942195975 981484228 981484228 316868422 997648436 997648436 948747477 511109213 666288176 822137089 822137089 987817884 987817884 387808480 387808480 596253426 859843737 859843737 546183432 363720058 612879305 612879305 867873402 867873402 737407597 737407597 643226173 573747761 833954486 833954486 567542563 324276837 621750271 621750271 620828170 620828170 548540929 552810194 916033576 916033576 509301961 809623683 809623683 908856603 908856603 650780715 650780715 344131721 428740619 428740619 616820470 616820470 955149354 1030664936 1030664936 488387958 488387958 369633504 450084480 647972653 647972653 448616216 296069218 149472844 674308731 674308731 220201822 818507643 818507643 548341609 548341609 153303912 786122136 786122136 540330960 544525185 544525185 146593412 680807005 680807005 463206006 877570717 877570717 415867966 415867966 407102546 407102546 532177258 535137134 535137134 509409974 415931998 415931998 490599508 501404142 507885680 507885680 267589356 325334338 475675483 790069643 907305895 907305895 618629975 965385909 965385909 585365493 567495526 345501292 815323331 815323331 870892308 870892308 831046227 414206934 940622277 940622277 426819991 1023740135 1023740135 826591395 1029422604 1029422604 876422304 876422304 293416837 817179459 1015559142 1015559142 407259898 406991646 1010827023 1010827023 404961950 404961950 118358096 118358096 86050376 279511440 315172050 378340162 394856258 394856258 329327474 329327474 9451682 125862074 359100466 359100466 312948800 117713152 100731240 34603536 34867200 34867200 4210946 274776450 507880222 510732700 510732700 366561288 357081240 357081240 84983856 108276670 506012688 506012688 327180922 339225914 339225914 196084596 203159052 479936538 643831624 643831624 490370884 490370884 1048732218 1048732218 765686648 765686648 683671712 683671712 203951252 639372477 856742976 1003954011 1003954011 922641156 822888725 822888725 437030422 737561905 737561905 217506014 127880928 526758592 539232260 587565163 1036167485 1059385557 1059385557 671211525 671211525 612624468 824568019 824568019 783030101 590524172 1066765699 1066765699 457427113 748939312 809201923 809201923 539702529 413088100 819738731 891178878 920834523 920834523 623484486 373103300 465924792 465924792 263016488 263016488 36815872 74219856 109896776 109896776 43688536 90651048 90651048 89264184 346231410 346231410 336861186 371477274 371477274 116709978 71750280 299990880 299990880 281228352 273272320 70149888 488317966 488317966 548534121 548534121 478355528 478355528 1025823008 1025823008 1024343079 820721091 820721091 803970320 714037347 681756928 721420341 721420341 671352880 584743105 584743105 205256104 205256104 173729319 773000857 773000857 1008270471 1008270471 922687529 1067847399 1067847399 707206352 550121680 550121680 460194513 415771698 545988160 814619715 814619715 404884663 721453346 838918609 838918609 704701296 1047298688 1047298688 296766986 337412962 337412962 558025856 558025856 643138660 643138660 620013745 676146016 701803941 701803941 208169953 380142667 608733936 608733936 929861514 929861514 573836049 337350929 337113530 337113530 353907074 353907074 1003625745 1003625745 779748978 605298177 1009668588 1009668588 654625073 579518049 579518049 103814608 603327049 603327049 541726082 547767392 610611275 621504968 621504968 717945280 966050369 966050369 830997603 669775802 669775802 420201473 604412102 604412102 12897929 744222784 885381195 885381195 813160717 337955463 557842483 827536035 877797416 877797416 627250760 575286682 368914410 132853402 677309166 722000039 722000039 693066869 154980132 654497808 654497808 579912312 705972835 705972835 1051307075 1051307075 723575966 912285818 912285818 368735146 485164790 485164790 303564306 477610568 477610568 299843278 499692546 499692546 298046530 285837378 290403424 290403424 673309348 673309348 842682395 842682395 768109281 614865355 873990621 873990621 558961280 975331508 975331508 410113674 336859968 83707330 73285056 88006440 88006440 79317088 134217732 425726020 425726020 903009378 903009378 765011081 697930813 552784833 546848660 583612641 583612641 560081393 689436068 731024980 731024980 101388736 120611128 121359880 121359880 67378704 50640656 54215104 54215104 30678176 29560608 3304992 46010976 345117673 819336611 819336611 340063704 340063704 115502426 568234890 1070216421 1070216421 642977688 409289646 163578084 470945800 1016074860 1016074860 78165992 362013672 362013672 996097698 996097698 946837767 816978211 698368114 699433957 699433957 985137808 985137808 954729927 730465894 332289973 270266864 65535936 17601232 167919232 167919232 288259430 288259430 317615282 317615282 300117184 300117184 311485954 311485954 268960770 646834360 646834360 566618337 369471179 697175348 697175348 436541303 371556408 371556408 421202708 421202708 396143184 338519154 338519154 364847464 390389042 390389042 425213984 425213984 186730260 192487440 192487440 169992468 458943036 510582174 510582174 758715726 804122109 804122109 1054343250 1054343250 214527006 214527006 154162944 154162944 337713938 337713938 418507972 535721742 535721742 534304310 486152142 174166714 174166714 97099840 268564008 268564008 185721396 188277296 188277296 593494926 1014540903 1014540903 435293320 223974060 223974060 88755914 285612066 285612066 67409928 67403818 44089680 141822852 475271428 487811618 487811618 268748802 201664524 569940530 661298441 661298441 813875483 813875483 631262417 916507022 916507022 520528201 874731920 1044900027 1044900027 268034882 487846446 794001555 794001555 290586942 1048315032 1048315032 934807963 632375877 632375877 520588020 349434570 470432808 844506892 844506892 465166465 439652988 755141746 823052421 823052421 784502967 750829773 604330113 141932978 193452422 480592128 480592128 471282310 992881110 1041255140 1041255140 823435964 710419085 710419085 694421128 694421128 292302632 510987264 510987264 294193884 526200510 526200510 803580514 803580514 465855505 545459232 545459232 537344001 605770826 605770826 67371008 537795142 950670663 1041912663 1041912663 1006817295 390912603 366659689 541265932 542112897 623968043 825907104 825907104 358293568 343766744 312789330 378889176 378889176 146800660 18931752 11895648 100730948 243607644 243607644 741736633 759273632 759273632 728969233 728969233 701829705 606562288 579099420 579099420 152417444 156972736 156972736 46840520 59973180 777594499 777594499 458304726 402749082 470972454 670496876 750180969 1024643631 1024643631 672168285 1034242681 1034242681 453623184 562749536 562749536 568547424 963991267 963991267 419427654 560994854 560994854 701678568 1021461350 1021461350 971301203 971301203 471203281 145516349 698931573 698931573 665270769 718473532 718473532 145957056 1023286520 1023286520 755963049 531376394 780148757 780148757 82324670 239001372 519632728 519632728 377352090 648742720 648742720 269500416 269500416 37970272 37970272 82887000 1012056479 1012056479 507720342 101806856 876162304 913382987 913382987 448926674 202376835 1011352719 1011352719 909381538 909381538 714080886 780165213 780165213 391582379 1045485743 1045485743 356517920 471865606 471865606 917177754 917177754 988736788 988736788 304284102 407433652 407433652 187655104 187655104 59904720 59904720 33632336 33632336 43854208 43854208 42993024 146403140 337347585 344679943 344679943 412356941 826033664 826033664 344426570 344426570 451490480 451490480 127081393 784114139 784114139 1045667999 1045667999 964776359 1010895060 1010895060 450545616 512771468 512771468 118653360 27263328 26740320 18088800 19138848 21168192 21168192 112260624 135925520 135925520 359736234 359736234 341326210 228461856 306360768 306360768 942246688 942246688 819707908 726150182 726150182 684441600 684441600 720340134 1000504740 1000504740 925286424 1029234749 1029234749 781415988 781415988 931719340 931719340 956911763 956911763 675414666 100663320 622051566 739275487 881411231 881411231 871976077 1032684345 1032684345 453202951 445931200 42785286 563146777 664452118 836978976 836978976 933355899 933355899 656212374 1007436087 1007436087 450175703 1036896860 1036896860 922224603 681930521 658765886 324422050 973975638 973975638 545907777 443258276 822214208 840175728 840175728 146312736 146312736 43589232 25487904 190236832 200201364 200201364 77336552 502088616 502088616 404498182 386966676 353385992 357701806 357701806 222046106 129408576 129408576 344704064 344704064 268887304 7034888 85070216 85070216 178547312 178547312 169322588 169322588 314705490 314705490 119278592 302443530 302443530 81294728 478239074 478239074 421833238 257262944 115799570 50857008 42296432 38584856 112315352 112315352 102624792 72760456 269500930 338718848 338718848 335565472 335565472 137251908 126747768 422190404 422190404 117723192 394363984 394363984 316165272 677575141 677575141 163709164 203444768 559232128 559232128 555621921 555621921 554116128 21324416 71342344 71342344 70149144 70149144 426529866 828590372 952149364 1006182791 1006182791 167579014 180107854 393466056 393466056 384438048 384438048 295276000 422800172 532714654 532714654 268659330 270657568 935088137 935088137 75577120 78148712 155755700 155755700 286204986 286204986 226502804 643105496 723272696 723272696 505294232 281127108 416883076 439935504 439935504 15777984 15777984 9454344 9454344 3607208 23648168 73405032 74566912 85144544 96745704 96745704 354954506 354954506 44987928 497999844 497999844 285534658 193612342 213466846 213466846 162003300 152083648 89394664 123864236 130552236 197656917 560729505 793648628 793648628 619345280 619345280 612754568 763650120 763650120 562901161 764093728 764093728 67120141 739206752 739206752 624792772 176719488 176719488 173652948 139472276 46394128 60397088 144231568 144231568 135841284 135841284 61359408 61359408 53513844 57309904 134175140 153265068 296264930 683774076 760353453 760353453 722307748 838725896 859696435 976151037 976151037 904029528 904029528 636011992 881983616 1025845551 1025845551 942195975 981484228 981484228 316868422 997648436 997648436 948747477 409148110 536875392 536875392 912397248 987817884 987817884 387808480 387808480 863639856 863639856 546183432 546183432 4887040 5036160 5427840 5427840 67115776 72751752 72751752 1033712168 1033712168 391004033 297674562 180294596 1061488492 1061488492 855320529 855320529 620828170 851615985 851615985 916033576 916033576 509301961 523839294 657525020 908856603 908856603 650780715 650780715 391500466 391500466 373490336 373490336 485570816 485570816 1030664936 1030664936 451603594 532627326 532627326 453014104 453014104 390821798 194560068 194560068 149472844 203473164 392232962 392232962 277964114 277964114 548341609 548341609 153303912 622343757 622343757 184614960 6357396 146593412 146593412 680807005 680807005 911883091 911883091 877570717 779677928 274306608 690816012 690816012 695074859 695074859 974400776 974400776 392930452 175426452 490599508 499306734 507885680 507885680 111388768 325334338 475675483 790069643 907305895 907305895 618629975 965385909 965385909 585365493 483850617 345501292 815323331 815323331 698617730 831046227 831046227 440617494 940622277 940622277 381875682 507625558 680602244 680602244 757002823 967727246 967727246 695855013 662209922 904949600 1015559142 1015559142 516519586 437249590 1010827023 1010827023 269292032 302384770 302384770 440150296 440150296 641803995 641803995 666969889 666969889 823731747 849420755 849420755 833104153 833104153 625422522 359100466 312948800 117713152 235316324 263903100 263903100 255643324 255643324 244369964 234806764 294939696 294939696 223717708 357081240 606382835 845948795 845948795 335864914 327180922 468823504 468823504 339225914 1046912064 1046912064 925581603 643831624 643831624 706331763 706331763 1048732218 1048732218 857335347 857335347 1006109870 1006109870 690488613 808806723 856742976 1003954011 1003954011 922641156 822888725 822888725 437030422 737561905 737561905 278702696 188312418 430277162 430277162 743738797 743738797 1059385557 1059385557 868881651 1017515452 1017515452 824568019 824568019 593617329 568942892 1066765699 1066765699 1071944758 1071944758 809201923 809201923 539702529 413088100 819738731 891178878 920834523 920834523 623484486 373103300 465924792 465924792 89410248 99969832 99969832 98389464 109896776 118483048 118483048 122295480 339368384 339368384 85669416 341338320 341338320 73176826 33554448 33554448 33554448 299990880 299990880 16584002 153405572 153405572 488317966 488317966 548534121 705897796 778752853 778752853 946552257 946552257 771324932 771324932 803970320 803970320 714037347 681756928 721420341 721420341 671352880 178849268 21045408 100151916 105870396 173729319 230869287 230869287 537214657 922687529 922687529 1067847399 1067847399 707206352 587018193 965289041 965289041 671352324 671352324 416662788 416662788 822745398 822745398 838918609 986134743 986134743 661964368 882048973 882048973 1037870216 1037870216 558025856 558025856 256206396 256206396 202902524 542215368 818947858 818947858 788095473 421073610 421073610 817369906 817369906 896414610 896414610 104990513 110313048 110313048 121970456 121970456 0 0 655368 67769352 1009668588 1009668588 692372925 692372925 752534229 752534229 874787848 909053320 1067788406 1067788406 610611275 621504968 621504968 232775540 303875856 898160114 898160114 876091342 876091342 483726457 884177698 884177698 617137353 617137353 607306317 607306317 740344760 928142042 928142042 827536035 888304224 888304224 133398857 579474513 959995949 959995949 917762907 885619237 688900359 715495212 715495212 868619602 1070719743 1070719743 735606943 735606943 1051307075 1051307075 723575966 912285818 912285818 959910399 959910399 457429698 637135160 866002869 1005141757 1005141757 730865198 898095850 898095850 285837378 290403424 695481350 695481350 261805467 842682395 842682395 768109281 614865355 688294880 688294880 526552022 526552022 31305486 336859968 336859968 288196906 832812547 832812547 755499880 755499880 548145505 290473408 285151371 903009378 903009378 765011081 706068608 706068608 696318384 696318384 605298024 605298024 584458881 352215400 352215400 35939640 120611128 121359880 121359880 67378704 6427008 18927872 18927872 17616928 7921408 11240704 28320850 328736352 328736352 20922144 25614432 76333312 78384456 85729096 85729096 348430854 689973325 689973325 668279144 874643457 874643457 687538441 687538441 656015960 117576780 126627248 126627248 321882624 321882624 26473056 554836160 554836160 985137808 985137808 954729927 469377363 296956770 294049890 294049890 25552992 167919232 167919232 288259430 288259430 398426012 398426012 438371200 438371200 593850673 593850673 595430160 646834360 835110290 883390785 883390785 901909083 901909083 897581163 897581163 648020274 985512535 985512535 800022546 800022546 872860555 872860555 390389042 390389042 457364704 457364704 227392860 237069090 319936568 775107902 775107902 756879245 610418362 519038204 519038204 268727688 579715108 579715108 180051076 180051076 197109680 197109680 155802544 134531076 170131732 170131732 134266884 262702452 262702452 490309450 490309450 328437802 328437802 290767850 290767850 188277296 297458186 593494926 1014540903 1014540903 277336229 479274834 479274834 373469704 373469704 285612066 927530070 927530070 927313879 927313879 812855077 812855077 1016666175 1016666175 889650731 656429647 661298441 661298441 813875483 813875483 631262417 916507022 916507022 943930804 943930804 1044900027 1044900027 139212088 755048624 874616525 917427635 917427635 1048315032 1048315032 934807963 334711170 520588020 520588020 349434570 299686606 769553128 769553128 184606757 88692292 747482500 747482500 738568551 574812278 574812278 536870912 233576956 266813196 266813196 965611684 965611684 952115363 1041255140 1041255140 823435964 632268328 632268328 1010543198 1010543198 830920769 551016523 188119919 516297528 526200510 676347356 803580514 803580514 562245729 562245729 508547059 508547059 747393590 747393590 1001600951 1001600951 950670663 1041912663 1041912663 1006817295 1058802420 1058802420 621783397 542112897 830655202 830655202 825907104 133508088 133508088 126251680 67238058 877086886 946194575 946194575 989591511 989591511 1007510552 1007510552 741736633 759273632 759273632 728969233 728969233 701829705 606562288 579099420 579099420 152417444 156972736 156972736 46840520 108761456 777594499 777594499 458304726 402749082 470972454 670496876 750180969 1024643631 1024643631 672168285 740091410 740091410 453623184 453623184 433737422 568547424 958856614 958856614 419705390 1039206944 1039206944 942805767 1021461350 1021461350 971301203 971301203 471203281 170995556 698931573 698931573 665270769 752209565 752209565 646058803 646058803 229063020 516963250 531376394 531376394 818475456 818475456 906906054 906906054 176160852 176160852 425771430 778126914 937120689 937120689 116437120 385016570 385016570 411637350 411637350 102286872 38381208 876162304 913382987 913382987 876611410 515647695 537922297 537922297 909381538 909381538 847253722 847253722 22165507 17259008 58931296 520517688 520517688 436416534 495586873 818546239 818546239 195634548 939730364 1019424975 1019424975 638458909 638458909 792934432 792934432 168897056 33632336 33632336 43854208 43854208 42993024 7322944 337347585 344679943 344679943 412356941 412356941 273458754 344426570 344426570 451490480 451490480 127081393 784114139 855902259 855902259 691214788 298844898 1010895060 1010895060 450545616 512771468 512771468 454283558 454283558 145908544 478599466 478599466 255182594 514287966 514287966 481249504 481249504 359736234 359736234 341326210 156067365 986794433 986794433 967669671 819707908 819707908 604513400 728334353 728334353 642686401 801718680 881772780 881772780 832652304 187039356 262138164 781415988 781415988 761556371 889465237 889465237 508706982 562374815 612702793 612702793 277306514 283369904 283369904 624207072 935913158 935913158 843401888 845317137 845317137 563146777 664452118 664452118 541455360 933355899 933355899 446748317 85540096 85540096 86511616 927020444 927020444 391345175 222988070 139829681 84510883 973975638 973975638 545907777 172639442 822214208 840175728 840175728 59179026 43589232 43589232 25487904 190236832 200201364 200201364 389599026 422693920 422693920 404498182 386966676 353385992 404394496 404394496 370728482 370728482 295854436 344704064 344704064 268887304 249202908 249202908 181977468 102215712 110623320 168643592 168643592 43457108 19713312 50351376 99735016 99735016 81294728 81294728 58372992 58372992 57746064 57250608 50857008 42296432 40706208 112315352 112315352 102624792 72760456 72760456 287617152 292026786 292026786 179263072 179263072 126747768 422190404 422190404 253771820 67249480 227516709 550732945 677575141 677575141 163709164 163709164 584323084 584323084 555621921 639979556 639979556 151169305 278008004 415310022 478924894 478924894 449316054 828590372 828590372 282944610 282944610 410229556 410229556 369954168 369954168 341260938 341260938 210903300 242631574 532889828 532889828 268659330 270657568 935088137 935088137 75577120 78148712 155755700 155755700 286204986 286204986 226502804 643105496 723272696 723272696 269175556 281127108 281127108 46704144 46704144 5344256 16122496 16122496 9454344 5827584 23648168 73405032 73405032 85144544 96745704 96745704 354954506 354954506 44987928 497999844 497999844 285534658 193612342 213466846 213466846 152083648 152083648 139217068 434904104 522850654 522850654 190847026 7134656 13507776 550161804 550161804 165990888 215358024 215358024 76152904 16723012 16723012 10171968 10413376 46270592 48623492 176719488 176719488 173652948 139472276 46394128 46394128 52908560 52908560 135841284 135841284 60562180 60562180 53513844 33592032 134175140 636670537 636670537 683774076 760353453 760353453 541964976 838725896 859696435 976151037 976151037 904029528 904029528 871759242 881983616 916212256 916730235 916730235 388731745 100975696 44582994 993788708 993788708 809765907 409148110 536875392 536875392 912397248 912397248 805723393 326882083 98111560 863639856 863639856 312089913 379303594 379303594 655061017 655061017 884018922 884018922 708837525 708837525 1033712168 1033712168 1004547510 1004547510 828185316 1061488492 1061488492 855320529 855320529 849420627 851615985 851615985 848557635 702536600 702536600 877357225 877357225 1046876480 1046876480 851308371 1063600643 1063600643 969811183 428096661 940440681 940440681 268895000 501178984 501178984 421952222 532627326 532627326 497378390 497378390 768877313 768877313 658328137 916022451 916022451 924188932 924188932 556643044 864030548 864030548 649641900 392683346 392683346 278753368 184614960 80904640 73341888 75235520 75235520 180815407 911883091 911883091 862680367 779677928 545853451 690816012 690816012 695074859 695074859 974400776 974400776 93466814 480977624 480977624 138257992 169636384 250974756 250974756 226599396 226599396 181685000 293962006 293962006 405133644 532925822 532925822 503530120 322226994 113845464 311460488 311460488 304353712 589073554 827376291 834840739 836188899 836188899 381875682 903521312 903521312 885115744 885115744 967727246 967727246 96617032 662209922 904949600 904949600 680925765 990026331 990026331 915367547 605293065 551137991 551137991 302384770 440150296 440150296 641803995 641803995 666969889 666969889 823731747 849420755 849420755 833104153 833104153 625422522 48337712 48337712 88148908 235316324 263903100 263903100 255643324 281053602 281053602 234806764 526151598 526151598 567873173 567873173 606382835 885591587 885591587 1068160383 1068160383 495851873 468823504 552946530 1046912064 1046912064 925581603 292944412 641852103 706331763 706331763 453627959 588246707 1065406484 1065406484 1006109870 1006109870 690488613 808806723 808806723 682348777 682348777 625405388 274592270 483250340 483250340 293933850 293933850 278702696 188312418 430277162 430277162 743738797 743738797 521723859 521723859 868881651 1017515452 1017515452 858528047 708839840 43040774 43040774 571474449 571474449 1071944758 1071944758 1063515365 950104436 615083493 615083493 428057614 442049078 550399525 550399525 342378236 342378236 639131120 639131120 749251872 749251872 748986380 748986380 580452736 222347984 118483048 122295480 339368384 356235146 356235146 353912200 353912200 299125090 299125090 90101376 147283924 354599856 354599856 514130876 514130876 153405572 23113984 140299908 140299908 705897796 778752853 778752853 764035266 764035266 771324932 771324932 369298884 369298884 323309152 323309152 54643248 177507140 177507140 156361380 160143040 160143040 69357112 119346216 119346216 29993600 706025920 706025920 102372888 838081728 838081728 733338401 587018193 965289041 965289041 671352324 1019292358 1019292358 484721120 822745398 822745398 858603541 986134743 986134743 585299580 925386696 925386696 1037870216 1037870216 744787124 744787124 595714100 595714100 45990765 107505300 818947858 818947858 788095473 421073610 861277506 861277506 817369906 896414610 896414610 624963592 624963592 109192809 26547136 26547136 127161497 137794540 605689353 605689353 630435201 635121165 692372925 692372925 752534229 752534229 874787848 909053320 1067788406 1067788406 842874849 574484241 609221769 732784177 732784177 898160114 898160114 876091342 876091342 483939935 884177698 884177698 617137353 617137353 607404108 607306317 740344760 928142042 928142042 651297522 888304224 888304224 906358706 906358706 959995949 959995949 917762907 885619237 688900359 715495212 715495212 868619602 1070719743 1070719743 974826367 735606943 813826969 813826969 785198301 1036932097 1036932097 959910399 959910399 457429698 637135160 866002869 1005141757 1005141757 730865198 898095850 898095850 97675983 288148992 695481350 695481350 227879973 507663806 507663806 172022394 489707732 489707732 206832450 526552022 526552022 104176796 248998280 288196906 288196906 832812547 832812547 755499880 755499880 548145505 290473408 739432080 739432080 85622793 240202456 706068608 706068608 1039049240 1039049240 605298024 605298024 584458881 352215400 352215400 27004216 4504512 35914048 35914048 14090368 14936448 18927872 27789312 27789312 7921408 20050256 33207026 318344242 318344242 273554562 92873832 648711802 884997963 884997963 601360113 601360113 775219229 775219229 1004391910 1004391910 874643457 687538441 687538441 656015960 399193692 314052640 330682320 332814818 332814818 64574194 554836160 554836160 541114497 427819110 427819110 459290210 459290210 294049890 318251746 318251746 178578128 418611472 418611472 153367590 398426012 398426012 438371200 593500248 633475305 633475305 621945337 610077416 835110290 883390785 898762571 1032141437 1032141437 897581163 897581163 648020274 985512535 985512535 1008225408 1008225408 872860555 872860555 300210488 364008416 457364704 457364704 227392860 237069090 319936568 775107902 775107902 756879245 1028063277 1028063277 860911147 860911147 794940374 794940374 180051076 180051076 224695592 224695592 269136002 269136002 272158208 288935170 292443970 292443970 350799306 490309450 490309450 328437802 328437802 290767850 290767850 122298523 544998121 544998121 96305792 553805741 553805741 479274834 479274834 609519337 609519337 61984852 927530070 927530070 927313879 927313879 812855077 812855077 1016666175 1016666175 889650731 656429647 386837367 557859216 937744547 937744547 565053673 465851800 856138807 943930804 943930804 237182217 139212088 139212088 755048624 874616525 917427635 917427635 555324489 160434531 568659649 719000596 719000596 676281477 676281477 823821959 823821959 769553128 455652512 455652512 80144514 738568551 738568551 574812278 574812278 536870912 495226440 495226440 266813196 965611684 965611684 824057379 594494855 369410064 369410064 632268328 632268328 1010543198 1010543198 830920769 551016523 188119919 516297528 726305216 726305216 676347356 553933391 562245729 562245729 508547059 508547059 747393590 747393590 1001600951 1001600951 855708272 993785629 993785629 701337648 1058802420 1058802420 621783397 885393932 885393932 830655202 341180595 340769034 340769034 388653114 388653114 877086886 946194575 946194575 989591511 989591511 1007510552 1007510552 638105605 506470562 842207744 842207744 728900531 79978688 79978688 67495944 4738112 4738112 13496992 37492304 52724496 127249456 127249456 91048936 92274792 129769512 129769512 84807504 126541160 126541160 50842464 69371960 69371960 8597568 14944704 14944704 140718468 678838660 678838660 216193868 605640480 1039206944 1039206944 942805767 752914511 758252367 758252367 573582629 690815761 690815761 226618404 226618404 101526552 752209565 752209565 646058803 677419541 767738624 767738624 516963250 256385457 818475456 818475456 906906054 906906054 176160852 176160852 551815617 778126914 937120689 937120689 637154625 637154625 565458489 742860052 742860052 805592592 827665757 827665757 786032349 907101382 907101382 567029524 567029524 35128848 369098768 369098768 847253722 847253722 303601690 319679538 386180104 520517688 520517688 867704432 867704432 818546239 818546239 195634548 939730364 1019424975 1019424975 638458909 638458909 792934432 792934432 168897056 26740928 21156000 29771840 29771840 15695040 15695040 11871424 11871424 11797120 5768832 7080704 7080704 276093696 276093696 290837760 491127938 491127938 121096232 855902259 855902259 298844898 298844898 890373449 890373449 288391170 151126306 87036020 454283558 454283558 145908544 478599466 478599466 255182594 514287966 514287966 481249504 481249504 17071064 9751104 88513528 309737968 986794433 986794433 967669671 690261735 690261735 597027441 728334353 728334353 642686401 912246784 912246784 881772780 225086008 187039356 262138164 516642896 516642896 539177128 1025650833 1025650833 134232243 562374815 612702793 612702793 277306514 283369904 310967582 624207072 624207072 822397960 843401888 845317137 845317137 306198416 306198416 139018372 541455360 541587585 541587585 541606314 541606314 339421715 192022941 927020444 927020444 796371952 796371952 844056985 848223315 848223315 411226182 411226182 973919446 973919446 461499393 306256450 59179026 29561376 29561376 25416224 1376352 9700104 28347474 389599026 389599026 330860082 229494308 101460610 299032764 404394496 404394496 370728482 370728482 295854436 152236156 157456472 157456472 249202908 249202908 181977468 199768964 199768964 160400568 160400568 120464008 271322368 329705474 329705474 63126098 242292044 242292044 58372992 58372992 57746064 42131456 21046432 40706208 75547656 75547656 39173072 24115600 26164288 293408738 694983429 694983429 964430246 964430246 784316941 784316941 764885837 311664162 311664162 931695224 931695224 550732945 550732945 553649184 610812929 610812929 584323084 584323084 273830450 761731717 761731717 323479474 278008004 940357738 940357738 818418824 818418824 760185917 709681470 950250820 950250820 410229556 410229556 294261858 294261858 27334210 210903300 210903300 71915848 532889828 532889828 80596040 120586032 120586032 65986016 87703640 329838634 329838634 193544244 498634402 498634402 222299180 222299180 206883468 193208916 504287638 504287638 404152004 449184720 449184720 39895184 39895184 60867248 60867248 6062576 21575840 35067664 35067664 111146400 111146400 35199176 2294848 15223280 50212768 50212768 97565312 114608856 114608856 140669360 168128692 191221028 191221028 485527808 485527808 522850654 522850654 691061541 691061541 237615885 738376780 738376780 228908013 228908013 215358024 201801796 16723012 16723012 10171968 10413376 10413376 48623492 142469584 142469584 6557696 6557696 6081024 22335392 50876928 50876928 50380848 50732304 50732304 17320224 59546928 59546928 65690528 636670537 668684129 668684129 131563729 161117701 541964976 835715737 835715737 655458914 612926464 612970099 612970099 871759242 871759242 916212256 916730235 916730235 62624043 43008336 172239235 993788708 993788708 809765907 372784271 528882741 528882741 86849486 723517744 723517744 757600963 757600963 459325878 956489012 956489012 780645624 379303594 655061017 655061017 884018922 884018922 708837525 708837525 628427325 319363201 1004547510 1004547510 828185316 911555558 911555558 813052505 847579392 849420627 849420627 640031001 640031001 740575328 740575328 877357225 877357225 1046876480 1046876480 851308371 1063600643 1063600643 969811183 428096661 940440681 940440681 384420948 492484302 492484302 222820524 218503212 445229422 497378390 497378390 768877313 768877313 658328137 916022451 916022451 924188932 924188932 556643044 864030548 864030548 649641900 392683346 392683346 278753368 216598028 216598028 149863492 149863492 75235520 25766876 247842068 247842068 764387830 764387830 545853451 325209610 325209610 275653312 131459832 391338696 391338696 81179322 480977624 480977624 138257992 169636384 250974756 250974756 226599396 226599396 181685000 55001188 157759908 157759908 157759908 503530120 503530120 322226994 113845464 113845464 40256000 40256000 589073554 827376291 834840739 836188899 836188899 647497296 903521312 903521312 885115744 885115744 712350543 589073680 639705369 639705369 565463072 565463072 680925765 990026331 990026331 915367547 605293065 692192453 692192453 260052076 506309551 618948965 618948965 798175869 798175869 975538072 975538072 978320919 978320919 435965379 912718156 912718156 893527022 333814320 112345184 44807248 44807248 39997696 39997696 281053602 360728464 360728464 526151598 526151598 567873173 567873173 563382756 885591587 885591587 1068160383 1068160383 495851873 305979094 552946530 552946530 428369239 215895712 215895712 106749180 244843092 244843092 181932548 923959336 1065406484 1065406484 790323324 189290121 138937476 22030176 11839488 16439232 163765804 460131160 460131160 483250340 483250340 293933850 293933850 209979740 212076876 212076876 429989988 470893338 470893338 447605012 292688610 292688610 892016648 892016648 858528047 708839840 988850198 988850198 571474449 571474449 1043270314 1063515365 1063515365 950104436 835141742 881864970 881864970 442049078 550399525 550399525 888311997 1021385927 1021385927 639131120 749251872 749251872 748986380 748986380 580452736 222347984 70488912 93397608 93397608 356235146 356235146 353912200 353912200 299125090 299125090 90101376 147283924 354599856 354599856 514130876 514130876 139856256 410763394 410763394 437696258 537787216 827025857 827025857 764035266 807965156 995861831 995861831 588274227 316270290 323309152 323309152 180985044 290583252 419961556 419961556 160143040 160143040 61804144 185724608 185724608 145278276 706025920 706025920 150578112 786228432 786228432 733338401 620894556 620102217 615914441 215296212 1019292358 1019292358 484721120 484721120 310378578 858603541 858603541 585299580 585299580 925386696 925386696 667455600 822218787 822218787 744787124 633653481 595714100 547873905 845217943 845217943 476128966 429597530 429597530 861277506 861277506 653080841 323815066 602022113 637604080 637604080 571487120 62006568 62006568 736658672 736658672 605689353 605689353 630435201 673848960 673848960 95773453 824054912 827591331 827591331 730862157 369832986 842874849 842874849 574484241 669812952 732784177 732784177 592915240 592915240 236426039 320391330 483939935 789090909 789090909 146333235 607404108 607404108 581042393 650252769 650252769 518917333 651297522 834798280 834798280 906358706 1032868892 1073391317 1073391317 496769920 496769920 388574280 395008921 857110668 857110668 916022293 974826367 974826367 979261113 979261113 581737861 785198301 1036932097 1036932097 908572777 908572777 183963798 337848582 950325630 950325630 931463507 413563804 413563804 1021568864 1021568864 873464331 835694305 604164105 236390187 579568239 899179653 899179653 895518398 388553564 61132454 185641692 247464156 247464156 248998280 248998280 33825984 295881066 295881066 72736384 291021730 291021730 72059168 739432080 739432080 85622793 240202456 240202456 146241096 1039049240 1039049240 321112208 321112208 291977634 152457980 226789536 226789536 214223052 184732652 146199316 164240580 164369572 164369572 151128080 44434480 44434480 36520208 46304704 318344242 318344242 273554562 92873832 648711802 884997963 884997963 601360113 601360113 908687288 908687288 1004391910 1004391910 446920760 493759330 493759330 416219356 399193692 372246290 372246290 332814818 546833414 681381381 681381381 185245796 553649282 977322135 977322135 459290210 459290210 285910822 318251746 318251746 195253760 418611472 418611472 153367590 438991156 438991156 500178520 643592610 928328379 928328379 882835979 610077416 805775139 832113665 898762571 1032141437 1032141437 212033992 333814219 892844516 925533816 962685681 1008225408 1008225408 980670540 307893906 307893906 15897810 938209568 938209568 917165403 413160855 625148052 625148052 407179684 325071399 1028063277 1028063277 860911147 860911147 794940374 794940374 272917281 196794228 224695592 224695592 269136002 269136002 272158208 288935170 292443970 292443970 350799306 350799306 285394688 86256456 86256456 80876232 80876232 104733608 544998121 544998121 94803952 553805741 553805741 245908548 263771220 609519337 609519337 61984852 572539201 572539201 154435780 923555056 923555056 673667842 977496648 1025168943 1025168943 872513082 504050222 738534947 937744547 937744547 1017680936 1017680936 895491273 1007557647 1007557647 961413379 895484331 98879976 98879976 43196432 438735736 555324489 555324489 88663312 568659649 719000596 719000596 676281477 676281477 823821959 823821959 693769781 737932965 737932965 267951677 344141898 541093438 549921901 549921901 416581138 495226440 495226440 232993260 776567040 779017629 779017629 744522091 756097581 946819565 946819565 906132326 906132326 856482363 913351271 1021811380 1021811380 244775110 726305216 726305216 646196562 646196562 280043601 151594650 440732324 819205672 1066801791 1066801791 402264114 966197252 966197252 361844333 403349266 701337648 701337648 206351463 206351463 885393932 885393932 808224002 808224002 340769034 475110531 947544711 947544711 838970124 838970124 806474784 823861763 823861763 470874626 403574299 893867016 893867016 842207744 842207744 770599493 770599493 675830625 675830625 622379836 34373712 42732624 198475972 198475972 127249456 135939108 135939108 73864456 68416008 39111312 39111312 36064144 39991808 39991808 36788736 36788736 8597568 14944704 21480102 404175366 941824646 941824646 216193868 605640480 605640480 224215073 548028992 548028992 135305156 75681864 772937405 772937405 733677405 574654644 721701937 721701937 553000160 553000160 742662520 742662520 767738624 767738624 637736212 637736212 140839372 686424132 686424132 226297544 226297544 216542888 551815617 551815617 161008116 631257392 637154625 637154625 565458489 742860052 742860052 805592592 827665757 827665757 786032349 956305712 956305712 817246802 817246802 766509933 766509933 497025390 707269142 707269142 365168928 365168928 386180104 386180104 449048790 867704432 867704432 245108316 407650382 407650382 235424904 243795036 469812306 469812306 164636292 161170048 161170048 86122520 21167008 73869672 73869672 6855936 15695040 76032096 95757536 287900066 349965640 349965640 278317762 339609354 339609354 67765000 290837760 491127938 491127938 424603552 309159092 23333280 18876800 137888000 137888000 118494768 147882253 803226245 803226245 591397041 545259760 3513092 144026180 144026180 3990208 21570720 21570720 16254912 13726112 17560608 17560608 293519744 309737968 309737968 291104418 326902576 585148210 585148210 550116049 219124825 197202260 132662432 912246784 912246784 225086008 225086008 37361424 66434676 516642896 516642896 877867526 1025650833 1025650833 485720535 170594536 170594536 533419260 533419260 491385982 466136072 310967582 396995882 396995882 17507840 275725315 539244545 539244545 340947680 877099990 877099990 663087225 663087225 541606314 541606314 339421715 303624468 306093020 342361482 796371952 796371952 853747033 853747033 848223315 537797642 537797642 973919446 973919446 549458625 537929920 425570524 160820928 160820928 46635556 39881104 116933996 116933996 78995776 78995776 139829248 139829248 140035716 140035716 21542656 28500960 28500960 20707104 25740032 25740032 17892608 9331776 23099776 23099776 19795776 199768964 199768964 50830000 55784112 120464008 271322368 329705474 329705474 63126098 242292044 242292044 55309488 49387360 42131456 42131456 107885352 107885352 85803688 85803688 8388672 30159488 30159488 293408738 694983429 694983429 964430246 964430246 784316941 784316941 764885837 311664162 311664162 931695224 931695224 777128368 238192173 553649184 610812929 610812929 619065993 619065993 273830450 791148861 791148861 772894049 547042881 940357738 940357738 818418824 818418824 760185917 709681470 950250820 950250820 199856774 285393992 406100748 527437312 527437312 279392554 279392554 71915848 71915848 80596040 80596040 120586032 120586032 65986016 87703640 329838634 329838634 193544244 498634402 498634402 222299180 222299180 206883468 193208916 504287638 504287638 404152004 449184720 449184720 39895184 39895184 60867248 60867248 6062576 38983296 38983296 35067664 111146400 111146400 35199176 2294848 25167040 50212768 50212768 107115030 107115030 171831614 380061982 464593782 464593782 278024456 485527808 485527808 492034814 492034814 691061541 996059472 996059472 738376780 738376780 228908013 228908013 201801796 759310441 759310441 560208041 38339253 700597740 700597740 605079824 171150084 171150084 61029456 142619508 142619508 22335392 33571376 39716500 152492580 152492580 52354084 34341892 59546928 59546928 65690528 109097032 668684129 668684129 68711560 178536882 310724786 835715737 835715737 670265809 670265809 612970099 612970099 924445224 924445224 571639811 202356361 155463812 154502784 154502784 172239235 172239235 652413138 652413138 242295491 646302559 664013966 664013966 723517744 959203960 959203960 757600963 459325878 1030500144 1030500144 780645624 201958804 50980360 43074032 42470480 42730576 239261912 239261912 218141460 218141460 290478656 290478656 324194994 324194994 303132832 858170157 858170157 915940693 915940693 689718861 439150928 788386909 788386909 858248037 858248037 144752964 170983440 170983440 137437956 137499396 608174604 608174604 985056813 985056813 771132385 771132385 720040399 1058040738 1061807295 1061807295 693374900 183070534 135274532 120176712 76024904 76024904 122430344 141657968 141657968 126190120 100739760 100739760 96548912 137848136 206054724 225452780 225452780 216598028 149863492 149863492 112946700 151188861 584932257 687630461 687630461 799812415 799812415 899818088 899818088 757682543 757682543 615064028 615064028 459419306 299435140 299435140 1029276094 1029276094 558953474 618553952 809552275 809552275 916547881 916547881 318873702 399474092 399474092 369679956 369679956 245275278 116481180 107940248 116026690 269352497 310128304 310128304 579331281 579331281 648135297 928539962 928539962 1021169398 1021169398 847318008 951582749 951582749 639705369 665860307 665860307 565463072 622476936 928643643 928643643 406847238 406847238 692192453 692192453 260052076 506309551 618948965 618948965 798175869 798175869 975538072 975538072 978320919 978320919 435965379 912718156 912718156 893527022 333814320 112345184 109974624 395084954 395084954 342529514 380405082 380405082 360728464 425726058 515901082 515901082 664077753 664077753 458826714 458826714 990379574 990379574 60268087 47759568 961547458 987239003 987239003 264374805 215895712 520114379 520114379 352851675 386982499 923959336 923959336 790323324 790323324 540017429 540017429 850920759 850920759 540102340 681781604 681781604 550153311 550153311 242677288 245369192 245369192 209979740 212076876 212076876 429989988 429989988 418456518 418456518 377486620 377486620 357514410 512663478 512663478 443648276 988850198 988850198 760439050 760439050 841077308 841077308 282136469 835141742 835141742 881864970 881864970 831794819 822083619 547609156 888311997 1021385927 1021385927 274998717 86593608 77097920 74313096 358686622 358686622 168724240 117182424 100208376 304751000 304751000 358745026 358745026 397547370 397547370 331352152 83510920 261095908 261095908 99385840 149991328 149991328 23114144 410763394 410763394 437696258 858408466 858408466 827025857 273360081 807965156 995861831 995861831 588274227 566965473 558575842 289616034 180985044 290583252 419961556 419961556 21061952 21061952 61804144 216700736 216700736 145278276 340936584 340936584 224802064 786228432 786228432 620894556 620894556 620102217 615914441 215296212 806691038 806691038 736111648 736111648 331648163 571744672 571744672 494463072 492308142 418927394 427869600 427869600 822218787 1017295168 1017295168 729981304 729981304 547873905 845217943 845217943 476128966 429597530 567424276 821967035 821967035 653080841 323815066 544940520 637604080 637604080 571487120 120590720 553614016 736658672 736658672 593992721 99317256 99317256 673848960 780892409 780892409 824054912 827591331 827591331 491532823 395013480 1005245284 1005245284 545185665 669812952 669812952 75547136 75547136 562088532 562088532 244670569 796920436 796920436 194248829 100927512 121901344 121901344 74584968 74584968 586547218 882117195 882117195 399007360 708911253 708911253 1032868892 1073391317 1073391317 496769920 496769920 689409328 837564111 912054756 912054756 909194218 909194218 824254755 979261113 979261113 467279842 1068650904 1068650904 403223697 908572777 908572777 546054169 813890053 1040323153 1040323153 931463507 413563804 413563804 1021568864 1021568864 873464331 835694305 622491936 622491936 579568239 899179653 899179653 895518398 388553564 61132454 185641692 337096728 337096728 302305338 273228930 96154720 295881066 295881066 288727301 291021730 425350646 471488158 471488158 269194313 609855113 609855113 609748485 609748485 352515203 88109096 321112208 410652640 821294018 952999684 952999684 226789536 214223052 184732652 146199316 164240580 164369572 164369572 151128080 44434480 44434480 36520208 46304704 46304704 32129152 50332976 50332976 41943120 41943120 41943120 59773472 811754059 922846115 922846115 125543707 291656851 291656851 121321089 275056250 633364848 633364848 706004833 990762775 990762775 546833414 681381381 692419792 700759221 1000755363 1000755363 977322135 703309249 703309249 960660326 960660326 956535392 195253760 58361108 56628256 56628256 438991156 438991156 500178520 643592610 928328379 928328379 882835979 588646400 588646400 579874912 579874912 34865704 37174032 37174032 333814219 892844516 925533816 962685681 962685681 980670540 980670540 307893906 307893906 15897810 938209568 938209568 1014038810 1014038810 709960341 625148052 370259984 387151016 454389762 454389762 227854956 466617078 726289818 726289818 511542319 523160662 523160662 31515808 274105856 274105856 38800528 69553216 99415856 99415856 17176608 31278560 78567264 86256456 86256456 79145792 79145792 104733608 104733608 17092640 17092640 36189600 89437308 89437308 87081768 190335272 190335272 192419940 192419940 152492580 184832528 923555056 923555056 673667842 673667842 1025168943 1025168943 872513082 690968360 738534947 872546361 909035659 1017680936 1017680936 895491273 1007557647 1007557647 961413379 895484331 369514522 553997000 687544010 687544010 438735736 355998288 355998288 7628896 11459800 22837000 43305552 567591512 729957417 729957417 693769781 806469908 806469908 405934609 257761752 543037796 543037796 201786781 54617136 199067744 199067744 232993260 962687904 962687904 940757511 744522091 756097581 946819565 946819565 906132326 906132326 856482363 913351271 1021811380 1021811380 426461888 778173634 778173634 685204077 646196562 297022052 494935718 965360976 965360976 1066801791 1066801791 676136087 966197252 990198315 990198315 546266485 1034218310 1034218310 1059490099 1059490099 740694285 543346458 808224002 808224002 101766272 475110531 947544711 947544711 838970124 1043407650 1043407650 823861763 823861763 470874626 403574299 893867016 909776671 909776671 577671656 770599493 770599493 675830625 675830625 622379836 36314068 44472832 198475972 198475972 35670832 150372788 150372788 133240636 177542108 177542108 210764448 210764448 88680172 39991808 1027861220 1027861220 1012214346 480580110 623091878 623091878 941824646 941824646 475318926 475318926 547293505 622595625 622595625 548028992 85984865 75681864 772937405 772937405 733677405 574654644 721701937 721701937 612623072 580861521 742662520 742662520 648207232 648207232 637736212 637736212 91096125 686424132 686424132 550519977 226297544 216542888 216542888 161008116 161008116 189547700 189547700 224870832 786680336 786680336 210121565 362416344 362416344 322343380 847772281 956305712 956305712 817246802 817246802 766509933 766509933 497025390 707269142 707269142 365168928 365168928 877592899 877592899 614137614 614137614 494198283 853805523 1007422604 1007422604 796500336 796500336 469812306 637410076 639231513 642227840 642227840 86122520 21167008 73869672 113248656 113248656 118943440 118943440 95757536 287900066 349965640 349965640 278317762 339609354 339609354 67765000 118120592 118120592 424603552 424603552 870656363 870656363 870392307 870392307 824189425 584069368 658559705 803226245 803226245 591397041 545259760 0 77333160 322978432 322978432 82888242 87167784 112460104 112460104 282727970 320025138 320025138 293519744 191525508 170674470 326902576 585148210 585148210 550116049 219124825 172565652 316591602 316591602 128931395 128931395 881500440 881500440 96514552 346002116 346002116 877867526 877867526 872599563 769795410 635970902 203495776 533419260 533419260 491385982 466136072 271486088 353183850 353183850 335648778 329425626 539244545 539244545 340947680 877099990 877099990 663087225 663087225 310725355 285631648 303624468 303624468 306093020 342361482 1035389580 1035389580 853747033 853747033 1055074316 1055074316 673384718 818282498 876688011 876688011 637537410 425570524 275301762 160820928 46635556 320979418 320979418 320143924 275800244 318808694 318808694 256755238 256755238 292180920 425864196 481040980 481040980 422914854 387397892 117832024 111934496 20688896 26680384 93771040 93771040 125152184 125152184 85008936 290100752 358304780 358304780 208683672 311975202 311975202 173794374 434477602 451613286 451613286 180491856 122947240 122947240 107885352 85803688 85803688 65928800 50095920 50095920 27213408 156315044 552461568 552461568 654334852 654334852 702153705 702153705 148309048 161528836 745030748 777128368 777128368 238192173 202952428 671390085 675733632 675733632 707818132 707818132 791148861 791148861 772894049 633418760 633418760 264290556 264290556 415306774 955234788 955234788 533705214 533705214 432936880 432936880 406100748 527437312 527437312 279392554 344531072 344531072 319947936 399193338 399193338 341733960 120586480 124257720 124257720 54689440 54689440 309319778 309319778 162693808 182929844 182929844 138885252 148412928 148412928 147065728 276680644 276680644 275538112 14495424 14495424 1171648 8506432 8506432 38983296 38983296 115809552 115809552 32244544 31727872 20973760 25167040 31588640 31588640 107115030 107115030 171831614 380061982 464593782 464593782 323823040 278024456 138433098 492034814 492034814 551551425 996059472 996059472 672003313 686238177 686238177 19145408 76656873 759310441 759310441 622872937 169869361 700597740 700597740 666378516 171150084 171150084 61029456 142619508 142619508 37273600 33571376 39716500 152492580 152492580 52354084 34341892 40701616 40701616 26473056 55087248 55087248 1709568 1709568 178536882 310724786 778170521 778170521 670265809 670265809 608404877 489046562 924445224 924445224 571639811 802871037 895507799 942935426 942935426 270775510 130511272 774253942 774253942 699187438 699187438 664013966 664013966 448154938 959203960 959203960 354944554 372770586 1030500144 1030500144 697703616 28391448 134308096 134308096 42470480 42730576 48683328 48683328 190855888 190855888 314001505 825666134 825666134 411306054 279380102 858170157 858170157 915940693 915940693 689718861 973080576 973080576 788386909 858248037 858248037 577500561 263388882 260012087 512883674 512883674 1056431531 1056431531 985056813 985056813 771132385 771132385 720040399 1058040738 1061807295 1061807295 693374900 183070534 714679893 765297213 765297213 726138885 726138885 546761252 598822916 598822916 573309022 805835334 805835334 344642132 474826012 474826012 225452780 135496004 105792456 208592268 208592268 151188861 584932257 687630461 687630461 799812415 799812415 899818088 899818088 757682543 757682543 615064028 615064028 459419306 591790372 916395150 1029276094 1029276094 558953474 618553952 809552275 809552275 916547881 916547881 319459525 721470647 994595153 994595153 559944754 245275278 116481180 680697621 680697621 269352497 269352497 183274625 579331281 579331281 648135297 928539962 928539962 1021169398 1021169398 847318008 951582749 951582749 634000617 665860307 665860307 378149089 450026104 450026104 1060364860 1060364860 406847238 179907410 231262732 231262732 151729188 71316652 83886472 83886472 73400360 73400360 17176608 17176608 17176608 6176 0 61079872 61079872 60819504 101012776 109974624 395084954 395084954 369789256 380405082 380405082 293026722 425726058 425726058 218377454 664077753 664077753 546832401 546832401 990379574 990379574 311088210 110272080 961547458 987239003 987239003 726179572 726179572 600442517 520114379 352851675 386982499 906379706 906379706 111656420 520646542 540017429 540017429 850920759 850920759 540102340 681781604 681781604 575360415 575360415 242677288 818550237 818550237 461510766 621091883 621091883 520686692 730342417 730342417 418456518 377486620 377486620 357514410 512663478 512663478 545896664 545896664 712103324 760439050 760439050 841077308 841077308 948713564 948713564 294782688 831324802 831794819 831794819 1017985688 1017985688 750133771 590989744 590989744 693155913 693155913 621778376 751844844 751844844 558352780 168724240 117182424 100208376 304751000 304751000 358745026 358745026 397547370 397547370 331352152 83510920 261095908 261095908 99385840 149991328 149991328 96878664 58400260 172916742 588946049 858408466 858408466 584032691 805314624 805314624 832172102 832172102 566965473 961189155 961189155 958881732 678378885 678378885 432445121 675288068 675288068 170266689 39058368 216700736 1041613149 1041613149 979185303 340936584 224802064 789618912 789618912 596389008 598420721 612055225 890256769 890256769 1020070718 1020070718 736111648 736111648 331648163 598754915 598754915 532861182 680677658 1062770097 1062770097 769802730 465567990 1017295168 1017295168 729981304 729981304 212656833 75819656 134882868 171053844 186127648 567424276 567424276 375266970 294128744 269096474 559814064 622990888 622990888 120590720 120590720 553614016 552235105 593992721 593992721 782159032 782159032 801898805 801898805 780892409 1044874157 1044874157 680768590 996262291 996262291 1005245284 1005245284 906221841 764452431 557204529 717318200 725749941 755348888 758417602 899135663 899135663 796920436 592877925 206132480 608940108 608940108 635909065 635909065 1036128278 1036128278 882117195 291938374 618996268 618996268 534946533 1059578602 1059578602 483445358 483445358 689409328 837564111 912054756 912054756 909194218 1015386606 1015386606 421785894 421785894 858048819 1068650904 1068650904 107123583 905999961 905999961 816581955 816581955 1040323153 1040323153 303297042 316866112 316866112 614327872 614327872 94659400 673325312 673325312 671297541 336521925 514555590 514555590 165895024 49459536 49459536 299757296 337096728 337096728 302305338 273228930 96154720 96154720 82885760 288727301 288727301 425350646 471488158 471488158 524620598 609855113 609855113 609748485 609748485 385998906 205728518 339522746 410652640 821294018 952999684 952999684 241246620 241246620 66915948 35916048 51383408 51383408 60555776 60555776 64095920 64095920 4198960 37794858 37794858 879636635 879636635 394361762 651645514 651645514 846530594 846530594 811754059 922846115 922846115 741405989 717791942 717791942 210848601 275056250 633364848 633364848 706004833 990762775 990762775 395293281 319962151 692419792 700759221 1000755363 1000755363 589435185 703309249 703309249 960660326 960660326 956535392 182264004 445674880 445674880 416481616 330876896 330876896 303076852 92278784 124661240 124661240 72490264 620757808 922820729 922820729 564527646 564527646 504371553 37174032 170584376 240511644 240511644 226615404 226615404 134422528 805905569 805905569 72256554 646601742 676352322 676352322 1014038810 1014038810 709960341 371205007 370259984 387151016 387151016 927023622 927023622 1019689167 1019689167 1009203485 1009203485 1009203471 523160662 677431652 948393425 948393425 722254546 631243456 631243456 564077176 25431104 25706592 25706592 25216064 16826400 16809984 0 86526344 86526344 21777568 73712936 73712936 89437308 89437308 87081768 54572904 54572904 192419940 315971318 315971318 547166417 1024869092 1024869092 1021023739 1021023739 642815195 646691401 690968360 690968360 674821397 872546361 909035659 909035659 610817161 610817161 610455592 476236200 476236200 369514522 369514522 553997000 687544010 687544010 345899056 355998288 355998288 19287168 55222432 223662080 223662080 558979666 558979666 420901434 420901434 806469908 943963861 943963861 884292382 884292382 983719190 983719190 793841385 793841385 106030805 470097942 962687904 962687904 940757511 841752981 587470896 971317264 971317264 564524007 188793285 708766721 708766721 827628735 827628735 426461888 778173634 778173634 685204077 425337591 297022052 494935718 965360976 965360976 288629686 301668957 676136087 733165272 990198315 990198315 865284728 1034218310 1034218310 1059490099 1059490099 851984890 851984890 862348800 862348800 101766272 269504450 269504450 10750272 33554448 1043407650 1043407650 296758097 11799360 42106944 42106944 740297742 909776671 909776671 577671656 708969498 708969498 869031595 869031595 477629827 477629827 436995547 347607054 1002964232 1002964232 712382404 712382404 190936855 273278082 273278082 554714690 1033381579 1033381579 1019308015 1027861220 1027861220 1012214346 480580110 623091878 623091878 673415557 673415557 475318926 818377200 818377200 957628645 957628645 1035259304 1035259304 275461412 292169120 675911305 675911305 169465912 169465912 612623072 677170912 710225493 710225493 217067732 675681685 675681685 615456485 615456485 579944168 609814496 609814496 550519977 76299736 86542240 782757813 782757813 669378941 672660013 714139757 714139757 786680336 786680336 210121565 362416344 362416344 612372810 847772281 906183436 906183436 611465545 540344550 286273832 100797080 100797080 566235874 566235874 655759873 655759873 877592899 877592899 614137614 614137614 494198283 853805523 1007422604 1007422604 910794912 910794912 456188757 637410076 639231513 642227840 642227840 50528824 235939964 235939964 113248656 168210656 250210740 250210740 221516984 419204464 419204464 259657434 43812546 307675794 307675794 308325266 308325266 439986176 439986176 203118932 870656363 870656363 870392307 870392307 824189425 1057622472 1057622472 662827049 662827049 197009204 197009204 52185424 178820164 322978432 322978432 82888242 87167784 112460104 112460104 282727970 320025138 320025138 198774839 829547493 964186243 964186243 708188949 826021046 826021046 173015376 168420372 316591602 316591602 128931395 128931395 881500440 881500440 229497844 281814746 281814746 519738410 519738410 769795410 769795410 635970902 342171792 342171792 333644596 215281280 271486088 473889024 473889024 335648778 335648778 329425626 292676514 263416902 970139848 970139848 640156996 640156996 209715280 102958160 111622488 111622488 99366760 100276200 394015568 1035389580 1035389580 597954888 597954888 1055074316 1055074316 673384718 709767178 876688011 876688011 637537410 275301762 275301762 107536898 130083136 320979418 320979418 320143924 275800244 318808694 318808694 256755238 256755238 292180920 425864196 481040980 481040980 422914854 387397892 117832024 111934496 20688896 34608712 129506904 238751256 238751256 125152184 233571608 290100752 358304780 358304780 208683672 311975202 311975202 173794374 434477602 451613286 451613286 280028608 122947240 122947240 100925616 100925616 65928800 65928800 73598248 73598248 56047584 684204117 684204117 552461568 654334852 654334852 702153705 702153705 253997536 253997536 745030748 745030748 708858704 945965335 945965335 705072532 878722470 878722470 707818132 1042702339 1042702339 901835178 901835178 819735579 878037755 878037755 1011583772 1011583772 955234788 955234788 898159840 686069062 432936880 432936880 250499884 474308032 481365314 481365314 344531072 344531072 319947936 399193338 399193338 341733960 120586480 124257720 124257720 108763112 108763112 309319778 309319778 162693808 182929844 182929844 138885252 63844752 140670592 140670592 276680644 276680644 275538112 38664720 47997040 63473400 63473400 8506432 73982248 132720048 132720048 115809552 117903520 117903520 73403400 73403400 105122248 105122248 61510912 61510912 65704112 65704112 426911008 426911008 323823040 94421352 123937400 186135312 186135312 551551425 551551425 160958052 160958052 745568744 745568744 688011681 688011681 698675617 698675617 677644960 538714824 690030408 690030408 666378516 136840128 17833984 55123840 55123840 51126640 52530384 55875008 55875008 23238848 28573760 31493984 31493984 40701616 40701616 13496272 102868264 102868264 55186608 130910792 243140248 271792928 778170521 778170521 409992582 608404877 608404877 489046562 1035696738 1035696738 507492717 802871037 895507799 942935426 942935426 270775510 408811077 774253942 1040391583 1040391583 699187438 227069964 211738188 690442656 690442656 686971713 686971713 580375174 580375174 101639744 264255620 264255620 255212048 255212048 112423764 25412364 264292392 264292392 201328948 201328948 314001505 825666134 825666134 698388993 569412581 921933890 921933890 504852823 356989098 356989098 973080576 973080576 468848316 823306162 823306162 577500561 263388882 260012087 749724478 749724478 1056431531 1056431531 553255912 667232505 667232505 647038464 646521945 223918665 38945516 492344022 492344022 411263214 714679893 765297213 765297213 726138885 726138885 546761252 598822916 598822916 573309022 805835334 805835334 378135642 474826012 474826012 135496004 212058012 245848524 245848524 208592268 37789084 4194432 157636908 219219840 384313500 384313500 272115420 339028746 350899668 350899668 222562304 222562304 371229160 591790372 916395150 1001988726 1001988726 351019873 801388608 801388608 690436389 941865229 1034403943 1034403943 721470647 994595153 994595153 559944754 279168200 279168200 680697621 680697621 144806341 320798002 320798002 1070018258 1070018258 543849177 498014465 348127434 348127434 383893722 482976788 542043800 542043800 77480416 753149562 753149562 378149089 329109117 329109117 1060364860 1060364860 211625251 187434368 232110796 232110796 465979226 465979226 1069294571 1069294571 103883544 546674496 594999921 702217265 702217265 135749633 548733828 581370404 581370404 61343024 101012776 101012776 68155472 369789256 369789256 313733970 293026722 293026722 124780704 136577664 287051298 287090466 289007394 546832401 546832401 360659914 831268568 831268568 205339739 470518488 509208222 563730459 726179572 726179572 810266116 899380428 899380428 123741488 485361214 485361214 72649288 520646542 520646542 136452108 93397064 168624704 440666306 440666306 176160852 575360415 575360415 156179984 818550237 818550237 485229688 621091883 621091883 520686692 941822227 941822227 167845908 175108106 191108144 336143376 583591573 583591573 545896664 545896664 712103324 712103324 693244581 693244581 1058661951 1058661951 948713564 294782688 294782688 184758324 134230064 1017985688 1017985688 750133771 639557145 737040085 737040085 693155913 621778376 751844844 751844844 558352780 84696072 108267176 108267176 18481664 18486816 118101088 129644080 129644080 60839936 266113184 266113184 101160928 101160928 114117704 114117704 96878664 159890352 159890352 135377952 588946049 728140436 728140436 719971332 809058517 809058517 832172102 832172102 945980708 961189155 961189155 958881732 678378885 678378885 432445121 675288068 675288068 170266689 39058368 802358434 1041613149 1041613149 979185303 1068018301 1068018301 789618912 789618912 596389008 598420721 612055225 890256769 890256769 1036847902 1036847902 996157166 818767371 557135360 598754915 630059355 713761555 713761555 1062770097 1062770097 945948692 1020338895 1020338895 590390208 590390208 921272365 921272365 941553487 941553487 687962436 674960835 1024133225 1024133225 375266970 294128744 269096474 559814064 559814064 131546545 623326113 623326113 110830849 33570912 119589120 131474464 782159032 782159032 801898805 801898805 256452124 1044874157 1044874157 680768590 996262291 996262291 972114906 940512525 1016368689 1016368689 557204529 717318200 725749941 755348888 758417602 899135663 899135663 592877925 592877925 206132480 608940108 608940108 635909065 635909065 1036128278 1036128278 101188632 93588072 618996268 618996268 227978221 160954980 199414260 543594532 694206885 694206885 151411073 133609232 133609232 275416893 1015386606 1015386606 595908033 576243345 858048819 858048819 683324510 683324510 707512813 741713360 816581955 816581955 748505922 900862827 900862827 365684720 862510825 862510825 614327872 624064777 673325312 673325312 671297541 672087045 672087045 667392578 667392578 500558574 517456088 517456088 299757296 327616704 327616704 281801922 274588034 285662274 285662274 832341060 832341060 416301462 990942208 990942208 524620598 562631186 562631186 528691959 442114668 385998906 205728518 339522746 339522746 147198124 262024944 262024944 241246620 241246620 66915948 42281040 186603024 186603024 167248880 167248880 64095920 64095920 54865120 42468432 371799227 879636635 879636635 587609137 651645514 664815715 846530594 846530594 558937937 556282714 741405989 741405989 717791942 717791942 486066126 486066126 627489016 801629556 801629556 595672284 595672284 81363310 81363310 84745400 84745400 716963988 716963988 566870180 686848384 686848384 272700544 272700544 137487904 182264004 445674880 445674880 416481616 330876896 330876896 303076852 92278784 698767887 957648954 1048850807 1048850807 922820729 922820729 564527646 564527646 504371553 681891408 916097663 916097663 703480918 703480918 765617643 772543712 805905569 805905569 310494648 674098570 676352322 924844347 1068019419 1068019419 924091240 405873220 399810190 395737724 528744459 927023622 927023622 1019689167 1019689167 1009203485 1009203485 1009203471 36965136 677431652 948393425 948393425 722254546 631243456 631243456 564077176 287970594 287970594 360190882 360190882 298321866 364904674 364904674 348295368 86526344 21777568 73712936 73712936 31998976 21094560 42908288 42908288 18219600 22082400 315971318 315971318 823007072 1024869092 1024869092 1021023739 1038008551 1038008551 964770485 646691401 67422216 71561352 71561352 73400320 371517832 371517832 102809618 73400464 37822608 205897860 205897860 269206899 966390565 1030226971 1030226971 815727520 544578153 544578153 220458436 220458436 223662080 778175948 778175948 408655709 814953025 814953025 814879299 943963861 943963861 884292382 884292382 983719190 1050083594 1050083594 793841385 475648670 475648670 470097942 404266771 841752981 841752981 587470896 971317264 971317264 564524007 549383513 549383513 753419516 1002871080 1002871080 808557494 808557494 804490932 509864510 509864510 461168538 459865264 214633504 288629686 288629686 231086132 514142312 514142312 321196594 865284728 865284728 823927411 16058818 382208498 382208498 851984890 851984890 862348800 862348800 73405993 269504450 793513149 793513149 781714871 78867806 260724092 260724092 260179036 546824043 546824043 221738557 655497344 655497344 74586793 708969498 708969498 869031595 869031595 477629827 648319516 648319516 347607054 1002964232 1002964232 712382404 712382404 681445969 419665927 273278082 554714690 1033381579 1033381579 1019308015 1019308015 545325283 881209730 881209730 539367681 488642607 304345362 304345362 303822740 818377200 818377200 957628645 957628645 1071983499 1071983499 994088670 994088670 958490539 962707797 962707797 636146765 636146765 677170912 710225493 710225493 251660573 675681685 675681685 615456485 615456485 579944168 579944168 232137889 76299736 76299736 87590304 782757813 782757813 669378941 672660013 714139757 714139757 696519720 696519720 208858884 607635728 737579917 737579917 612372810 624111908 624111908 611465545 286273832 286273832 689963904 693109413 694685861 694685861 888738176 888738176 882587211 368650218 490343386 957184862 957184862 879473842 879473842 516423904 910794912 910794912 172500215 169348112 42208880 204741956 204741956 50528824 235939964 235939964 51303416 168210656 250210740 250210740 518185906 518185906 419204464 472700326 472700326 454708256 307675794 308325266 348185304 486854702 486854702 459096558 308386116 550666499 550666499 194456570 924121435 1057622472 1057622472 640355147 571886324 867618498 867618498 53511248 297684082 297684082 271581408 288147890 288147890 323374512 323374512 60653264 63839472 311629076 311629076 829547493 964186243 964186243 708188949 826021046 826021046 705827381 705827381 826877835 1044113026 1044113026 917062408 917062408 229497844 361444458 361444458 294508552 469779502 469779502 207244988 279583938 958733217 958733217 451366484 694534291 694534291 215281280 473889024 473889024 139719300 139719300 135268868 477234720 493491630 970139848 970139848 501766002 1005915818 1005915818 268830368 294311010 294311010 286982756 163867108 962258500 962258500 942078215 417302027 391299631 640330339 676509895 808112272 808112272 354031146 354031146 370959794 370959794 523321498 523321498 353215822 353215822 437514376 437514376 155374366 95982636 153590180 153590180 139275396 166228964 212387148 243334020 247912668 247912668 264510716 264510716 138321048 138321048 207669020 207669020 238751256 238751256 140400768 233571608 233571608 209630776 18133760 84512 1116416 3484416 277153856 277153856 40341008 280028608 280028608 34499856 50556928 100925616 122945792 328306156 395952356 395952356 322855068 322855068 684204117 684204117 539805120 575885917 575885917 692853161 692853161 253997536 253997536 104997956 566762689 708858704 945965335 945965335 705072532 878722470 878722470 651688665 1042702339 1042702339 901835178 901835178 819735579 878037755 878037755 1011583772 1011583772 693046773 898159840 898159840 686069062 431728548 431728548 230218638 474308032 481365314 481365314 338183336 338183336 368870728 368870728 122132968 122132968 92711128 103623960 104362952 108763112 164264036 177950548 268967936 269271618 269271618 8018242 4243584 4210816 6688832 10750272 13175808 13175808 78531072 180148113 717817029 717817029 709469853 714729045 714729045 550730132 550730132 712488925 712488925 705432597 176897425 176897425 114233564 114233564 116975902 116975902 236231518 297013870 426911008 426911008 530330806 530330806 467089778 467089778 379953650 427560870 658299356 945282565 945282565 745568744 745568744 688011681 971051878 971051878 825303939 677644960 538714824 538714824 234425421 225452064 136840128 17833984 12332864 51126640 51126640 52530384 55875008 55875008 23238848 48552000 61358784 61358784 64041040 64041040 62386768 102868264 102868264 55186608 279179728 327493746 327493746 287811922 288325796 409992582 495840648 495840648 206063430 1035696738 1035696738 507492717 270271868 361852506 633245788 633245788 270195559 408811077 1063936601 1063936601 1040391583 319932522 211738188 211738188 690442656 690442656 686971713 686971713 580375174 580375174 33874304 264255620 264255620 255212048 255212048 227805712 144042564 264292392 264292392 201328948 201328948 176489168 537987696 698388993 698388993 681642244 921933890 921933890 504852823 424740580 732439522 732439522 468848316 584125639 1016242833 1016242833 685366468 685366468 261361400 749724478 1068552683 1068552683 540809222 540809222 399166718 647038464 647038464 646521945 923936498 923936498 938909670 938909670 411263214 211822312 134875928 42992208 45036304 93063224 93063224 88241640 352720152 401554938 401554938 378135642 378135642 70473554 14166144 14166144 212058012 245848524 247224964 250086872 250086872 105547024 105547024 177013010 384313500 384313500 272115420 339028746 339028746 285726858 285726858 391964796 436343336 436343336 339297286 1001988726 1001988726 749800482 801388608 981467451 981467451 941865229 1034403943 1034403943 40501582 276825216 306473288 306473288 279168200 415745416 415745416 374623236 12065600 320798002 757183139 1070018258 1070018258 561148111 561148111 361968234 361968234 908921883 908921883 444599511 147620582 812212611 812212611 753149562 718942043 718942043 441521871 421607489 421607489 925897089 925897089 232110796 232110796 465979226 465979226 1069294571 1069294571 201725964 576391889 594999921 702217265 702217265 135749633 760416456 760416456 630981492 126616416 93068384 42160128 369615682 369615682 114426072 393212104 393212104 368928784 368928784 276824592 987500247 987500247 979669975 977982615 961257520 360659914 831268568 831268568 207765529 950452687 950452687 563730459 563730459 471735940 810266116 899380428 899380428 54670376 585011557 585011557 187616564 540736913 540736913 142112976 63250480 172040356 577334325 577334325 127243524 647252589 647252589 17080936 276827410 485229688 485229688 369164318 369164318 193463412 941822227 941822227 441333766 441333766 273027090 822454402 822454402 583591573 522430705 818991164 818991164 370443285 695992576 695992576 1058661951 1058661951 491394222 879536550 879536550 809758851 974067729 1013845064 1013845064 548304592 639557145 737040085 737040085 46407641 27035520 78267464 348128266 348128266 292035820 244786508 319300176 319300176 315305972 534720214 534720214 332945488 533632200 533632200 266113184 101160928 101160928 114117704 114117704 72252216 159890352 159890352 189223538 189223538 304037394 304037394 719971332 809058517 809058517 699454784 699454784 945980708 945980708 837293889 22278816 22278816 30529024 30529024 546175168 546175168 15786689 21300640 802358434 802358434 38587536 38587536 1068018301 1068018301 663822513 663822513 544403016 544403016 583795681 830078520 830078520 1036847902 1036847902 996157166 885603171 557135360 557135360 673750817 982218545 982218545 812522089 945948692 945948692 1020338895 1020338895 590390208 719554426 921272365 921272365 941553487 941553487 761478765 674960835 1024133225 1024133225 964181776 964181776 875765547 605954673 605954673 829430362 829430362 623326113 556943521 136633609 369280021 369280021 374916762 1061443302 1061443302 348648174 773849373 773849373 423848076 610127875 823175783 823175783 784202662 940512525 1016368689 1016368689 556768144 192516756 47604080 90984960 105939088 236197824 236197824 99261608 25560108 17701280 237361536 237361536 102927648 102927648 85841208 101188632 319047278 319047278 245157468 647639707 647639707 805640262 1003268839 1003268839 834391722 834391722 1010658439 1010658439 820131212 810799107 810799107 595908033 595908033 786639585 809187075 926169361 926169361 683324510 975846724 975846724 950274375 710461853 614984226 900862827 900862827 365684720 862510825 862510825 539165480 624064777 624064777 149636744 236310208 672087045 672087045 667392578 667392578 500558574 517456088 517456088 243664084 327616704 327616704 281801922 278784392 285662274 285662274 832341060 961676737 961676737 990942208 990942208 441616071 562631186 562631186 1061275318 1061275318 823370253 823390755 923266879 923266879 612818031 607880968 607880968 85132560 220640328 220640328 191855252 191855252 186603024 167248880 167248880 92224680 91428528 54865120 42468432 371799227 568532209 587609137 587609137 567335329 664815715 664815715 661861305 661861305 411715076 13161988 52470334 198804860 341926422 486066126 486066126 437363082 801629556 1004626293 1004626293 849477118 729273883 663019976 574788640 162435233 716963988 716963988 553390017 686848384 686848384 270555852 270555852 268587016 268587016 107461136 121061232 127062648 127062648 342069760 342069760 756580880 756580880 957648954 1048850807 1048850807 505536798 520342308 520342308 504826632 238236444 681891408 916097663 916097663 703480918 703480918 765617643 849582165 849582165 805570563 974706973 974706973 674098570 924844347 1068019419 1068019419 981475856 923875527 399810190 395737724 576406548 750813736 750813736 357094783 758013836 833018211 833018211 994112176 994112176 433098667 403506562 443825552 443825552 290768000 413171780 413171780 287970594 287970594 360190882 415761828 415761828 415236294 364904674 348295368 71323712 0 4014416 25452544 25452544 21094560 144643076 144643076 18219600 22082400 36944672 50380848 823007072 823007072 559400518 965442663 1038008551 1038008551 964770485 709521547 709521547 717482572 809945270 809945270 373477642 348602856 411866054 411866054 355953730 405080444 508126534 508126534 966390565 1030226971 1030226971 1029055492 895434411 544578153 358683722 358683722 275175466 778175948 778175948 408655709 814953025 814953025 814879299 839419464 839419464 1059867904 1059867904 1025169795 1050083594 1050083594 523355711 523355711 475648670 451599822 377917514 346505434 13108416 31945473 165339105 165339105 248391344 549383513 549383513 753419516 1002871080 1002871080 808557494 808557494 804490932 763559169 763559169 461168538 738263785 738263785 214633504 134811176 137372205 538254117 741608005 741608005 722748984 731426972 851721505 851721505 302136696 906101002 906101002 203046656 672755720 672755720 224201062 224201062 793513149 793513149 781714871 203817220 260724092 260724092 260179036 546824043 579342616 682234617 693700125 738407117 738407117 250311293 71884128 71884128 52693296 43025408 648319516 648319516 587218956 587218956 541196320 602212256 681445969 681445969 419665927 269911814 145367586 134316064 29434080 29434080 14680224 222503396 881209730 881209730 539367681 1059693953 1059693953 249063014 476526990 476526990 448399094 448399094 224854286 1071983499 1071983499 994088670 994088670 958490539 962707797 962707797 636146765 925208648 980146659 980146659 566322593 826277922 826277922 822218787 724045840 205798690 963054022 963054022 74635816 562625001 562625001 122258644 246219996 246219996 237767964 241698204 241698204 237627920 237627920 548931977 548931977 607635728 778742965 778742965 225727289 606603012 632928009 632928009 741673576 783562925 980880074 980880074 929243800 929243800 896197138 896197138 882587211 546690091 490343386 959033950 959033950 953136136 953136136 686628168 921206980 958398759 958398759 276562069 66270192 66270192 129219360 129219360 136643864 247464340 247464340 265576208 265576208 267796484 518185906 518185906 402220364 472700326 472700326 454708256 184705048 251781180 348185304 486854702 486854702 459096558 94494720 550666499 550666499 194456570 924121435 924121435 640355147 640355147 571886324 867618498 867618498 53511248 297684082 297684082 271581408 288147890 288147890 323374512 323374512 270252594 270252594 311629076 311629076 187347538 1003056598 1003056598 720671653 720671653 571347968 705827381 705827381 826877835 1044113026 1044113026 969519928 917062408 823106073 361444458 516353505 560260255 643962729 872102675 872102675 820708107 958733217 958733217 451366484 694534291 694534291 342234506 342234506 327595006 327595006 178550520 292539680 477234720 493491630 493491630 457388214 501766002 1005915818 1005915818 678116338 837363171 885309451 885309451 738682055 962258500 962258500 942078215 417302027 391299631 640330339 676509895 947935924 947935924 354031146 354031146 370959794 370959794 523321498 523321498 393033638 393033638 437514376 437514376 420553116 309923316 153590180 153590180 136484160 166228964 166228964 243334020 247912668 247912668 264510716 264510716 138321048 138321048 207669020 207669020 207144588 144476360 169865816 169865816 514884972 514884972 531482184 531482184 304794738 278365456 352255498 416817792 416817792 416944128 416944128 118259720 118259720 67785784 122945792 328306156 939775865 939775865 322855068 1047012579 1047012579 1029910455 725540656 725540656 534797518 435023334 592022676 820512195 820512195 501760451 278954156 262050220 712595404 712595404 541976705 604636160 604636160 143545253 169395360 169395360 126530092 206240884 206240884 197748748 176488564 218210972 218210972 436997160 436997160 480530472 480530472 431728548 431728548 401076986 230218638 122104006 293342210 338183336 338183336 368870728 368870728 307305120 307305120 92711128 103623960 103623960 86681248 164264036 440257366 448916096 448916096 304735306 217176462 74325384 136797184 424034434 424034434 409456648 208298506 290601786 372519688 717817029 717817029 709469853 714729045 714729045 550730132 550730132 712488925 712488925 705432597 176897425 176897425 114233564 114233564 116975902 549498129 654751921 654751921 562364888 336774592 530330806 530330806 467089778 467089778 379953650 544265412 891884712 945282565 945282565 547154625 811623111 953254275 971051878 971051878 825303939 777181665 777181665 227870728 558104832 558104832 132120928 132120928 12332864 38300928 58010176 58010176 20310368 11539424 8152192 48552000 61358784 61358784 64041040 64041040 62386768 48308672 48308672 55355586 279179728 327493746 327493746 565864417 565864417 306938722 602091989 602091989 206063430 161750848 582067520 582067520 126142584 361852506 361852506 353582122 353582122 312077635 1063936601 1063936601 830359368 830359368 778982056 982843998 984018628 984018628 609526313 709355841 872667845 963113197 963113197 703894464 175588312 68239904 227805712 227805712 144042564 135653892 172280112 172280112 157286820 176489168 176489168 957444419 957444419 753700461 753700461 483399021 634389225 1031804525 1031804525 919803087 483603049 584125639 1016242833 1016242833 685366468 685366468 366436362 366436362 1068552683 1068552683 540809222 540809222 495939190 503743666 503743666 212058116 923936498 923936498 938909670 938909670 260645200 211822312 208876588 219958056 219958056 3502240 18907136 18907136 21495888 21495888 28912016 220145020 220145020 193540940 77858688 97068264 200877416 200877416 247224964 250086872 250086872 197064564 113922178 290581490 315664496 315664496 503450648 503450648 360437976 360437976 285726858 391964796 436343336 747045394 747045394 707542452 749800482 749800482 1009585668 1009585668 981467451 622965049 646119827 646119827 700448997 700448997 346685669 343940532 343940532 885880911 885880911 735933999 540082165 826527991 826527991 878543918 878543918 561148111 968905187 1015223693 1015223693 908921883 908921883 885435624 885435624 812212611 812212611 561200425 718942043 718942043 517153987 486611022 941695239 941695239 925897089 227213644 549600800 643506776 643506776 240270064 240270064 201725964 576391889 576391889 658834064 658834064 116067544 760416456 760416456 630981492 126616416 93068384 88346680 369615682 369615682 114426072 409607330 434966532 434966532 368928784 457253124 987500247 987500247 979669975 977982615 1002032254 1002032254 675428926 675428926 537071696 950452687 950452687 512547485 512547485 471735940 438209732 312347216 281427984 57152928 585011557 585011557 187616564 540736913 540736913 142112976 63250480 172040356 577334325 577334325 266680424 890336719 890336719 493355184 975503889 975503889 251343660 251343660 193463412 193463412 163588224 163588224 441333766 510445712 510445712 986800748 986800748 707863088 1024682017 1024682017 818991164 479457870 695992576 695992576 923748618 923748618 889809982 1057417424 1057417424 809758851 974067729 974067729 837564856 1047302028 1047302028 940708359 370875541 67254408 67244040 71741514 348128266 348128266 329631904 244786508 319300176 319300176 315305972 534720214 534720214 343938486 533632200 533632200 336724544 296567210 296567210 364744960 364744960 122378320 145865176 145865176 189223538 844466039 844466039 1001063254 1001063254 468542130 970670627 970670627 815387906 815387906 837293889 837293889 555599776 555599776 30529024 30529024 546175168 581934097 581934097 33055200 64117104 64117104 6082176 538029185 538029185 480292428 222581230 222581230 544403016 551742144 551742144 830078520 830078520 772268378 333980357 885603171 885603171 440665088 464859700 673750817 982218545 982218545 71877768 454034364 454034364 423193688 423193688 830183778 830183778 719554426 270919938 664232376 761478765 761478765 412159321 605172237 894513578 964181776 964181776 875765547 641802944 641802944 840968288 840968288 565212000 556943521 162150688 369280021 369280021 374916762 1061443302 1061443302 348648174 773849373 773849373 423848076 610127875 823175783 823175783 784202662 784202662 883860751 883860751 556768144 192516756 47604080 38046960 78795072 236197824 240785136 240785136 64624284 17701280 237361536 541708425 541708425 119414328 587121473 587121473 612673888 612673888 278735480 647639707 647639707 928038361 1003268839 1003268839 834391722 834391722 1010658439 1010658439 820131212 810799107 810799107 681132364 607774473 786639585 786639585 926169361 985800931 985800931 984138820 982115415 982115415 547922198 101918744 101918744 268566784 340341960 340341960 365503882 365503882 422735980 422735980 149636744 236310208 266473980 266473980 403177472 403178502 403178502 155714724 298183780 298183780 302133474 314646738 314646738 278784392 83446090 73123048 640116054 961676737 961676737 763555142 783173390 967905326 967905326 764965352 1061275318 1061275318 823370253 823390755 923266879 923266879 612818031 607880968 607880968 131785968 386400446 386400446 292745216 232436672 385439676 385439676 283518282 92224680 273762194 273762194 316146064 316146064 131018000 5112192 542185988 675756165 675756165 611407732 661861305 661861305 454227457 391271278 1036149241 1036149241 915505842 973078551 973078551 437363082 442708374 1004626293 1004626293 874383882 874383882 663019976 583270433 387449595 407741920 430229862 969665536 969665536 406868231 270555852 270555852 268587016 268587016 107461136 107210136 362333802 398226778 398226778 342069760 756580880 756580880 958548794 958548794 387301463 505536798 505536798 201535500 218349600 218349600 175500180 155864972 135308572 120063288 120063288 711712208 849582165 849582165 831206499 974706973 974706973 1002744221 1002744221 467749243 981475856 981475856 923875527 402759891 134340612 576406548 990676182 990676182 840436796 965247682 965247682 833018211 994112176 994112176 638384694 891031083 891031083 792563007 610577258 610577258 557991329 964710470 964710470 269013376 415761828 415761828 415236294 134217922 4268160 16867712 18997536 18997536 17640672 21102880 27459360 151297412 151297412 30823968 152746532 287888934 671274870 671274870 334678817 100129996 1019673756 1019673756 411096272 851632104 851632104 722760306 722760306 809945270 809945270 373477642 348602856 411866054 411866054 355953730 405080444 508126534 508126534 413770910 33619968 1029055492 1029055492 895434411 212199567 358683722 358683722 275175466 544778256 544778256 336598882 798824060 798824060 554435584 839419464 839419464 1059867904 1059867904 1025169795 534387935 262500451 523355711 523355711 318780450 377917514 800872704 800872704 408228496 560019398 701447397 701447397 153856353 423597760 423597760 14319398 170565028 170565028 154031380 184399360 207985700 763559169 763559169 232414256 738263785 738263785 134811176 233124100 233124100 538254117 741608005 741608005 722748984 925421925 925421925 876613770 302136696 906101002 906101002 609487497 672755720 672755720 1010839903 1010839903 442630540 537923732 539367235 899030787 899030787 765337197 353373231 538383440 598188329 682234617 693700125 738407117 738407117 714481921 714676897 714676897 727769663 727769663 684330051 684330051 796021632 796021632 605192975 557977761 557977761 541249665 541249665 422167812 783591866 946413935 1022362893 1022362893 783360861 783360861 564469864 871180563 871180563 1059693953 1059693953 275823808 476526990 476526990 418550528 462439218 462439218 406847622 294724194 294724194 374636096 391044282 679911578 696853605 696853605 925208648 980146659 980146659 943017510 826277922 826277922 822218787 748240516 748240516 963054022 963054022 80619264 562625001 562625001 224210112 246219996 246219996 237767964 241698204 241698204 202224280 202224280 548931977 548931977 188117804 778742965 778742965 730328508 606603012 632928009 632928009 741673576 783562925 980880074 980880074 929243800 929243800 896197138 896197138 546690091 546690091 908844260 959033950 959033950 1036568688 1036568688 686628168 921206980 958398759 958398759 276562069 66270192 210838796 210838796 243822360 243822360 247464340 247464340 265576208 265576208 267796484 267796484 155637924 453011888 453011888 499433240 499433240 307186380 291729666 291729666 275691420 275691420 377572710 500536268 500536268 405416086 193048920 193048920 271711788 520819182 520819182 462605448 89405556 12098656 0 303567008 324671154 324671154 17465490 6556032 7095056 44019906 270252594 271810962 271810962 450651395 735223813 1003056598 1003056598 720671653 720671653 770442748 770442748 696858352 696858352 755155102 969519928 969519928 823106073 823106073 220716468 516353505 560260255 643962729 872102675 872102675 820708107 820708107 417747490 416036224 416036224 283123906 342234506 342234506 331710582 331710582 412132390 425478240 425478240 332167504 431216969 457388214 457388214 318849053 678116338 678116338 837363171 885309451 885309451 873381128 873381128 736862685 613417545 648610561 648610561 571024401 599175475 947935924 947935924 982433007 982433007 973683744 184575232 392708472 392708472 395760144 395760144 176088852 420553116 420553116 309923316 50915280 165707776 165724644 166983500 212387148 212387148 89712076 85618688 85618688 8388736 21630016 21630016 44860680 131386104 131386104 85057120 169865816 169865816 514884972 514884972 531482184 531482184 304794738 278365456 352255498 416817792 416817792 416944128 416944128 118259720 120003984 120003984 118749448 363960060 939775865 939775865 446244438 1047012579 1047012579 1029910455 725540656 725540656 534797518 435023334 592022676 820512195 820512195 501760451 278954156 893692827 893692827 712595404 672922061 594442236 594442236 11043796 655760653 655760653 343790482 211412556 534087774 781978312 781978312 662700153 637714852 455740254 455740254 70702110 62543172 374420536 401076986 484711920 484711920 122104006 293342210 293342210 294568034 294568034 273882080 307305120 307305120 39835024 26366464 26813952 26813952 427555926 440257366 458628074 458628074 387373922 272815108 346030410 413778312 424034434 424034434 409456648 241222044 290601786 372519688 372519688 130041064 572712488 572712488 539103489 137762848 162074132 162074132 205594764 205594764 742865320 742865320 55399688 80324936 80324936 549498129 654751921 654751921 562364888 75027936 75027936 161232648 161232648 152710248 318787963 544265412 891884712 891884712 627138574 608888234 811623111 953254275 953254275 268509186 707039264 777181665 777181665 262701756 558104832 558104832 211920848 132120928 11069056 38300928 58010176 58010176 20310368 11539424 16822464 16822464 15769120 30257536 30257536 28237152 21448160 48308672 48308672 55355586 55355586 31105008 318533904 565864417 565864417 332634226 602091989 602091989 308287828 304222482 582067520 582067520 705432597 718278925 718278925 423597726 388854295 664052067 664052067 344140291 830359368 1007001734 1007001734 982843998 984018628 984018628 613476652 709355841 872667845 963113197 963113197 721492240 231156612 231156612 219545772 219545772 147138756 31457760 172280112 172280112 157286820 165980032 165980032 957444419 957444419 897985278 897985278 483399021 634389225 1031804525 1031804525 919803087 605237769 633214061 747637631 747637631 660540987 679864389 748073480 748073480 335755424 227629748 516034296 516034296 495939190 441467124 441467124 64110802 524430598 524430598 175092056 399056282 399056282 123152080 208876588 219958056 219958056 3502240 62728704 62728704 4925304 12982464 224279400 224279400 220145020 193540940 77858688 97068264 200877416 200877416 183338908 183338908 197064564 197064564 137239812 290581490 353011736 353011736 503450648 503450648 360437976 360437976 281468072 281468072 161127346 747045394 747045394 707542452 533990142 399770116 1009585668 1009585668 924909572 622965049 635474184 635474184 700448997 700448997 432837390 432837390 343940532 885880911 885880911 735933999 653246765 826527991 826527991 508285024 700713097 751050853 968905187 1015223693 1015223693 671622247 701374916 885435624 885435624 625685673 625685673 157326668 859752185 859752185 569082851 569082851 941695239 941695239 607919060 95757682 549600800 643506776 643506776 774836993 779827101 779827101 182192020 191366580 191366580 38931840 38931840 37625616 133700320 133700320 787224 88346680 88346680 51957408 51957408 88502152 409607330 434966532 434966532 50331696 457253124 701239606 701239606 595722705 595722705 1002032254 1002032254 795884621 795884621 688132104 688132104 288639816 897598570 897598570 833162592 833162592 622229516 622229516 57152928 84023464 140386048 140386048 136134148 45151952 45151952 3330816 10807920 41210056 266680424 266680424 890336719 890336719 493355184 975503889 975503889 251343660 675362567 675362567 359270476 171954784 179571540 179571540 1043219795 1043219795 986800748 986800748 707863088 1024682017 1024682017 369448530 479457870 479457870 77620680 923748618 923748618 889809982 1057417424 1057417424 925689917 925689917 596163845 596163845 1047302028 1047302028 940708359 540742544 67254408 403150430 505294352 505294352 331373306 329631904 386470074 411116782 411116782 50503682 444466496 444466496 343938486 331646494 336724544 336724544 296567210 296567210 364744960 364744960 164062430 197757264 197757264 145110564 844466039 844466039 1001063254 1001063254 468542130 970670627 970670627 815387906 815387906 679000385 563764483 555599776 555599776 557545345 557545345 554932737 581934097 581934097 33055200 211304019 1043074335 1043074335 538029185 538029185 491748783 219633582 880199141 880199141 551742144 551742144 703935789 703935789 231325989 769728680 769728680 674030925 539230608 539230608 33850548 559287312 559287312 71877768 276578682 276578682 423193688 423193688 832991520 832991520 372135697 270919938 653050530 653050530 688918064 705432597 705432597 894513578 894513578 359465081 68421688 641802944 641802944 840968288 840968288 638853168 554640097 162150688 162150688 69640520 369571864 369571864 346118410 833388824 856163379 856163379 121684152 506621060 506621060 336235050 369318216 461679886 461679886 145036670 64783792 64783792 63363312 540974169 540974169 159827036 798543529 798543529 556578853 556578853 218334240 778313737 778313737 243343452 587121473 587121473 870343688 870343688 278735480 638070459 638070459 928038361 928038361 885332016 714216226 223071589 98286048 98286048 60945584 25243936 681132364 681132364 607774473 450292190 1046038301 1046038301 985800931 985800931 984138820 982115415 982115415 547922198 1010520651 1010520651 1049195598 1049195598 340341960 365503882 403712576 422735980 422735980 28963142 254424008 254424008 173749908 403177472 403178502 403178502 264242360 298183780 298183780 302133474 314646738 314646738 61449264 61449264 77956800 640116054 721447534 721447534 763555142 783173390 967905326 967905326 764965352 655609942 655609942 582864259 582864259 574227035 910498512 910498512 444983382 143566170 131785968 1010700773 1010700773 971179225 971179225 676385234 385439676 283518282 41255570 273762194 273762194 316146064 389096883 625935193 875309647 875309647 675756165 994970161 994970161 125878392 570458217 570458217 391271278 1036149241 1036149241 915505842 973078551 973078551 685839241 442708374 455904693 692183205 874383882 874383882 1007447688 1007447688 865013237 540152577 430229862 969665536 969665536 679223950 605916303 269853839 71307272 80572104 80572104 76156672 362333802 398226778 398226778 310914496 730071488 730071488 958548794 958548794 797980732 476440920 476440920 312747716 312747716 282964696 675845564 675845564 669989713 239829989 684329272 684329272 780584146 881642571 881642571 736587035 708954144 1002744221 1038665083 1038665083 978616404 978616404 583082193 402759891 671121504 671121504 990676182 990676182 840436796 965247682 965247682 613016649 344304225 353878574 638384694 891031083 959024036 959024036 610577258 610577258 557991329 964710470 983172742 983172742 948961380 973213719 973213719 704708672 268447808 29425856 29425856 18997536 17640672 21102880 27459360 151297412 151297412 33098752 152746532 287888934 671274870 954763623 985974999 985974999 1019673756 1019673756 174848141 851632104 851632104 722760306 722760306 471066775 327614756 153106546 126314728 197929828 197929828 183483168 183483168 2576308 402702757 962143159 962143159 603795425 903349995 903349995 704238662 336000846 553453156 609155912 609155912 544778256 334332092 798824060 813213126 813213126 554435584 531631849 333719807 983617275 983617275 1024634981 1024634981 205182989 205207308 205207308 159524712 800872704 800872704 408228496 560019398 701447397 701447397 585240673 488952804 731962314 731962314 170565028 735891189 813057922 958941584 958941584 812784993 612767817 612767817 609931456 609931456 16798696 233124100 233124100 738604634 849073755 849073755 608932525 925421925 925421925 876613770 274275986 932260583 932260583 790706318 790706318 706084864 1010839903 1010839903 442630540 537923732 539367235 899030787 899030787 765337197 353373231 538383440 598188329 1063889664 1063889664 729171155 714481921 714481921 714676897 714676897 727769663 727769663 684330051 684330051 796021632 796021632 605192975 323092873 134629509 541249665 541249665 422167812 783591866 946413935 1022362893 1022362893 783360861 783360861 564469864 871180563 871180563 659950192 590883625 801691572 801691572 727835061 989855799 989855799 462439218 756415731 756415731 617344643 374636096 391044282 679911578 696853605 696853605 723378710 926480778 943017510 1061965979 1061965979 1046650042 671219972 748240516 748240516 770387532 770387532 80619264 93862400 147625180 236768368 236768368 176818876 215368284 215368284 16912384 151134240 151203876 151203876 133522832 171825760 192172336 730328508 730328508 728793384 151626765 144201252 142301952 101737416 101737416 22021632 0 134283812 134283812 152051716 152051716 125976644 908844260 908844260 547555645 1036568688 1036568688 472155545 696780224 698877285 698877285 684458049 697567845 697567845 557920192 243822360 243822360 204278096 146639364 9529412 231151896 231151896 366579398 366579398 494288004 494288004 499433240 499433240 307186380 291729666 291729666 275691420 275691420 377572710 500536268 500536268 405416086 219698092 267920932 271711788 520819182 520819182 462605448 285609506 285609506 37279888 303567008 324671154 324671154 292442802 292442802 289589680 289589680 36733952 271810962 271810962 450651395 735223813 991438119 991438119 476282876 730819945 770442748 770442748 564319891 606539032 640166664 640166664 490841478 403503597 403503597 409261970 409261970 820383777 972836213 972836213 977445365 977445365 734424305 734424305 416036224 565249219 565249219 283123906 60294848 331710582 331710582 412132390 425478240 425478240 172745542 172745542 44741922 699506696 699506696 992748094 992748094 212091656 219418592 219418592 873381128 873381128 613417545 613417545 648610561 648610561 571024401 555682425 785899594 928278170 982433007 1020345894 1020345894 269754893 1387008 4458624 395760144 395760144 169904660 363180168 516194928 516194928 91112320 332472320 332472320 294126690 212387148 212387148 452584412 452584412 452186620 452186620 155846712 155846712 228306172 228306172 201451084 199542580 199542580 95425336 95425336 50468944 44249424 170048848 317386101 317386101 401234954 401234954 602051425 825353857 825353857 624947753 624947753 626685329 857890378 857890378 728006083 728006083 446244438 446244438 480472202 480472202 149872068 340635982 340635982 907855198 907855198 654644003 643875840 643875840 236066108 893692827 893692827 672922061 672922061 594442236 594442236 79711400 655760653 655760653 343790482 211412556 534087774 781978312 781978312 662700153 637714852 485982204 455740254 362326986 336004430 472566746 472566746 484711920 484711920 55512718 5841088 19441824 31490720 53477664 113314082 366291690 366291690 365174858 361048170 361048170 117013634 427555926 427555926 458628074 458628074 387373922 352445480 352445480 413778312 413778312 403945476 241222044 241222044 40380160 161232947 827582789 827582789 776305964 776305964 539103489 137762848 162074132 162074132 205594764 205594764 742865320 805946282 805946282 860171017 860171017 321809561 78160368 98656602 337764658 337764658 319256882 288755824 161232648 152710248 283777902 283777902 19398912 627138574 627138574 608888234 608888234 425857446 425857446 409080198 409080198 289411364 12632256 262701756 262701756 211920848 211920848 49358032 49358032 34153488 33358624 33358624 31198944 31198944 16822464 16822464 17975024 17975024 13782976 39477232 39477232 19954464 20322112 47558656 49757136 49757136 318533904 318533904 332634226 332634226 343221044 378800734 378800734 304222482 436798372 436798372 705432597 718278925 718278925 721518647 807452931 807452931 968835108 968835108 350119017 1007001734 1007001734 823300800 823300800 184013027 613476652 613476652 783685956 783685956 721492240 721492240 231156612 231156612 219545772 219545772 147138756 31457760 71567720 135531012 135531012 134547844 162081397 162081397 491783664 897985278 897985278 750858717 542753832 616575625 621483721 621483721 605237769 633214061 747637631 747637631 660540987 679864389 748073480 748073480 283433514 227629748 512010978 512010978 60076976 441467124 441467124 64110802 524430598 524430598 256819248 399056282 399056282 690037941 690037941 653001029 683493409 683493409 331211451 757478653 757478653 753665924 998390702 998390702 440156008 430506828 430506828 107314888 107314888 64577244 183338908 183338908 176690084 152244052 137239812 136738048 353011736 353011736 358425794 358425794 275270328 275270328 379837810 379837810 303951378 310826258 435181628 435181628 377886810 344770568 810814981 810814981 737415472 737415472 616562768 616562768 924424282 924424282 432837390 432837390 172645538 95073634 502857922 502857922 653246765 653246765 575309001 254458244 700713097 751050853 751050853 99300840 300492258 671622247 701374916 816059587 816059587 546122882 346631562 275524808 859752185 859752185 569082851 569082851 372247790 303412288 303412288 32580576 194449968 205339680 691061292 774836993 779827101 779827101 640829885 550582985 580127256 580127256 36490512 81600772 96502140 96502140 88906912 88906912 55761280 55761280 61172288 61172288 421535780 421535780 268509186 191105460 268701829 268701829 189139012 189139012 964479330 964479330 608993674 795884621 795884621 688132104 688132104 288639816 897598570 897598570 962254560 962254560 622229516 622229516 75497544 84023464 212154632 212154632 203688204 128753040 128753040 245312312 245312312 110934596 204506472 204506472 456660222 456660222 500598458 533508246 533508246 350423762 675362567 675362567 359270476 261035032 261035032 413890094 1043219795 1043219795 553961505 553961505 384034176 95020392 95020392 82151968 82151968 329025992 353111082 761973878 761973878 684187784 684187784 495962276 925689917 925689917 537469969 741198108 741198108 237301005 671633520 671633520 583157009 590952032 590952032 643726872 643726872 210787520 386470074 411116782 411116782 50503682 173149364 492045536 492045536 155851278 151147524 353520704 353520704 176244748 336275504 336275504 164062430 197757264 197757264 145110564 332094706 332094706 315902930 452960470 452960470 407971664 288499008 288499008 273632224 273632224 17675616 295405537 551219523 557545345 557545345 554932737 43306576 42692112 21573729 211304019 1043074335 1043074335 476892447 750897373 750897373 1071714306 1071714306 880199141 772508421 165254249 4403328 288022923 625743017 961469836 961469836 909063320 539230608 685733717 685733717 557164421 916155219 1025771823 1025771823 993789464 357529556 1040277974 1040277974 853831027 136785448 410608548 410608548 177314372 688918064 705432597 705432597 857026622 957876338 957876338 935466081 624370392 624370392 621021240 638853168 638853168 554640097 0 176160852 830850688 830850688 437839991 346118410 833388824 856163379 856163379 121684152 683723814 683723814 382787140 472403196 472403196 461679886 407343124 407343124 63363312 63363312 540974169 540974169 159827036 798543529 798543529 556578853 556578853 218334240 778313737 778313737 243343452 243343452 167830664 870343688 870343688 671352596 661855457 661855457 735722541 885332016 885332016 255069996 255069996 59306512 60945584 60945584 25243936 475325859 807452931 807452931 431032312 1046038301 1046038301 983097710 645972298 975694282 975694282 1019347987 1019347987 1010520651 1010520651 1049195598 1049195598 203479346 201590796 403712576 403712576 144221454 28459076 306839680 339744184 354418698 354418698 255309340 446318832 446318832 432100514 432100514 311360752 311360752 314905832 314905832 118700940 210248644 210248644 196215748 196215748 237513296 261544572 369018398 376985256 391254714 436392766 558327299 582864259 582864259 574227035 910498512 910498512 243346776 243346776 109999568 1010700773 1010700773 971179225 971179225 676385234 351602124 320605202 101602792 101602792 47005760 58985568 389096883 625935193 875309647 875309647 672342408 994970161 994970161 738320397 738320397 944390312 944390312 724795944 724795944 980525446 980525446 745612173 685839241 883724359 883724359 756496941 756496941 458736163 1007447688 1007447688 971899264 564009701 832442118 832442118 811375844 679223950 605916303 605857664 538300032 475803264 80572104 76156672 76156672 103145552 103145552 310914496 310914496 564333101 564333101 797980732 797980732 476440920 508638878 508638878 312747716 282964696 675845564 675845564 669989713 239829989 684329272 684329272 780584146 881642571 881642571 736587035 578963489 665372025 1038665083 1038665083 1021442503 456688347 237515005 470552068 671121504 671121504 688685074 996334699 996334699 688218238 897074854 897074854 344304225 634882188 863237989 991657507 991657507 959024036 414196230 940263366 940263366 719901825 983172742 983172742 948961380 973213719 973213719 704708672 268447808 29425856 29425856 23371776 96195080 96195080 84127232 84127232 33098752 33098752 28051264 82397864 564159846 954763623 985974999 1073254613 1073254613 977482644 560050758 819120492 819120492 742667956 948047943 948047943 604110926 153106546 63159424 197929828 197929828 183483168 183483168 120667352 402702757 962143159 962143159 977849287 985796823 985796823 704238662 608345516 608345516 950895651 950895651 677419320 418532258 453624050 813213126 813213126 531631849 826853870 1072549106 1072549106 983617275 1024634981 1024634981 883383977 494774766 412825158 453564030 453564030 247463234 380808008 589955610 730334325 730334325 585240673 488952804 904155192 904155192 464984860 735891189 813057922 958941584 958941584 812784993 612767817 612767817 609931456 609931456 70909952 70909952 445754043 928342614 928342614 849073755 1013428712 1013428712 501832445 274275986 274275986 932260583 932260583 790706318 790706318 706084864 515694440 475014024 475014024 412091398 412091398 278922306 278922306 346850632 346850632 288165120 288165120 1063889664 1063889664 788114385 788114385 99639445 45931748 45931748 144204882 311640704 311640704 379410620 506387742 506387742 266591290 96793344 708080264 1062404585 1062404585 209750156 209750156 185698488 9511040 13632064 13632192 20058144 20058144 89203106 559167301 559167301 590883625 801691572 801691572 727835061 989855799 989855799 168956436 756415731 756415731 617344643 324122290 324122290 441019970 966670904 966670904 723378710 723378710 453209875 1061965979 1061965979 1046650042 903089995 1060570612 1060570612 996746679 50528279 126959312 553653297 553653297 256392248 236768368 214173900 215368284 215368284 188879028 151134240 151203876 745832761 745832761 171825760 733601465 733601465 728793384 728793384 630144105 630144105 612510752 26663104 873136299 873136299 835908320 123212987 38323344 117654040 149241216 149241216 101756984 323753969 547555645 650121476 650121476 189620000 696780224 698877285 698877285 684458049 697567845 697567845 557920192 137891076 138153732 146639364 146639364 50466864 231151896 231151896 366579398 366579398 494288004 494288004 387320992 408421376 408421376 322795422 70422306 132663148 173064852 249999280 256034156 256034156 222983340 219698092 267920932 267920932 156625572 43580964 43580964 285609506 285609506 37279888 270665218 270665218 57803344 292442802 292442802 289589680 289589680 46248080 46248080 41079696 53995520 53995520 991438119 991438119 476282876 730819945 730819945 564319891 564319891 606539032 640166664 640166664 490841478 403503597 403503597 409261970 409261970 820383777 972836213 972836213 977445365 977445365 734424305 734424305 413454816 565249219 565249219 101303600 60294848 60294848 14435888 37004336 60903248 61738052 143400304 143400304 478664050 771449103 771449103 992748094 992748094 892055073 904754403 904754403 739010087 677079079 805306371 805306371 805306371 743625877 743625877 1054858452 1054858452 785899594 971159020 1020345894 1020345894 320359220 1387008 4458624 370278912 370278912 169904660 363180168 516194928 516194928 91112320 332472320 332472320 294126690 151536642 174849580 452584412 452584412 452186620 452186620 155846712 155846712 228306172 228306172 201451084 199542580 199542580 95425336 95425336 50468944 44249424 170048848 412355140 412355140 401234954 401234954 602051425 825353857 825353857 624947753 624947753 626685329 857890378 857890378 929540634 929540634 575561182 1020529867 1020529867 758330157 758330157 848344010 954204850 954204850 907855198 850579338 850579338 643875840 300304793 77826320 35942728 4752160 24692640 28362528 87316720 87316720 164110300 164110300 112908120 45501640 138937412 138937412 269883906 379465762 485982204 485982204 362326986 469719048 469719048 517670596 517670596 394914438 336548144 436907528 439354134 439354134 80216222 150250752 233171846 366291690 366291690 365174858 361048170 361048170 117013634 79736352 69070344 69070344 1288704 19158088 352445480 352445480 302589520 971293783 971293783 236497286 686000341 686000341 632782728 827582789 827582789 776305964 776305964 17617160 53676312 677684917 677684917 709489646 709489646 1011764219 1011764219 805946282 860171017 860171017 906625235 906625235 566440123 556077184 337764658 319256882 288755824 67437184 77336136 283777902 283777902 962773383 962773383 960680359 487368744 940061827 940061827 1016429262 1016429262 806791747 674317220 674317220 598802640 598802640 90767672 109093984 109093984 49358032 66571744 66571744 148700641 148700641 134225060 134225060 701885029 701885029 724304197 724304197 707531189 599353937 599353937 52736304 546226319 546226319 533848830 491385534 400108916 400108916 351805672 343221044 378800734 378800734 156567936 436798372 436798372 300431410 48883152 939788546 939788546 807452931 807452931 968835108 968835108 418332102 592338992 950059335 950059335 678852771 196388497 593908536 593908536 234947140 234947140 177252408 177252408 210055224 210055224 79110688 79110688 256074936 256074936 156028068 154715204 166125604 166125604 162081397 566889264 566889264 789251752 789251752 750858717 828300427 828300427 692878983 646619250 646619250 412284493 522202146 522202146 340116520 468448758 468448758 449429560 449429560 99082512 182885436 182885436 60076976 101969492 101969492 130875104 186009440 186009440 256819248 256819248 262481965 690037941 690037941 653001029 683493409 683493409 331211451 757478653 757478653 753665924 998390702 998390702 440156008 430506828 430506828 260329312 185689424 236812124 236812124 172703452 144042564 54999216 68401570 372503322 372503322 354096290 354096290 345190986 300156392 300156392 379837810 379837810 303951378 1061475457 1061475457 799983620 805621189 805621189 955396930 955396930 953365191 776147456 776147456 616562768 924424282 924424282 867718891 809785102 424463526 553249288 553249288 648549713 648549713 614650185 105530833 71881936 612963072 612963072 230167976 692593984 692593984 435749380 435749380 336011650 336011650 346631562 346631562 275524808 6365568 35132944 453009924 453009924 373384590 373384590 444825832 977359532 977359532 65222485 691061292 760062149 765495977 765495977 640829885 550582985 580127256 580127256 36490512 81600772 96502140 96502140 88906912 88906912 55761280 55761280 61172288 61172288 421535780 421535780 268509186 191105460 191105460 556534868 571350261 1066342645 1066342645 964479330 889237628 385475480 351485050 351133990 501541356 501541356 499985646 403336512 962254560 962254560 354078818 301092904 75497544 75497544 212154632 212154632 203688204 128753040 128753040 245312312 245312312 110934596 204506472 204506472 456660222 456660222 500598458 533508246 533508246 350423762 243234600 243234600 239211098 261035032 261035032 413890094 839083379 839083379 882529483 892007771 892007771 694743486 95020392 82151968 82151968 329025992 353111082 761973878 966908903 1017112066 1017112066 948512282 225998892 632276228 632276228 741198108 942291332 1021546607 1021546607 671633520 583157009 590952032 590952032 643726872 643726872 486596698 486596698 453193734 453193734 306192604 332928020 492045536 492045536 219678854 139870730 1067324947 1067324947 369172506 809778225 809778225 744934589 744934589 336923023 100831465 903055511 903055511 791129593 691052492 284164738 294871714 294871714 85664618 23377696 269473408 269473408 28865472 279699520 810728706 811091985 811091985 60247649 599285920 599285920 586803153 590650112 590650112 576819729 750897373 750897373 1071714306 1071714306 772508421 772508421 327799922 407425026 407425026 625743017 961469836 961469836 909063320 538774544 685733717 702328676 702328676 998241334 1025771823 1025771823 994532912 527383998 1040277974 1040277974 961452595 961452595 817275136 1049472043 1049472043 570156691 144485755 144485755 857026622 1044911112 1044911112 935466081 624370392 624370392 915212192 915212192 553783296 583091200 1040810515 1040810515 830850688 830850688 613572777 613572777 343941194 268484610 268484610 207169164 683723814 683723814 382787140 472403196 472403196 428605766 407343124 407343124 52006932 135030536 227805760 227805760 83888160 220728848 220728848 184622448 65806900 5442240 541198849 541198849 173022816 541624320 634055913 828973053 828973053 775217578 661855457 661855457 882378804 1004354275 1004354275 963510900 975701271 975701271 180689715 77209784 299454852 475325859 807452931 807452931 914967379 914967379 982661241 982661241 518185036 975694282 975694282 1019347987 1019347987 486544912 521803326 755832889 755832889 338745640 405196818 412283416 489226830 489226830 430986014 414897990 339744184 436521142 436521142 253611458 446318832 446318832 432100514 432100514 311360752 311360752 314905832 420845894 420845894 210248644 210248644 286803806 286803806 127834664 127834664 250774584 250774584 155390636 293799105 558327299 558327299 836258178 836258178 814744131 380243799 243346776 243346776 109999568 1047949344 1047949344 459725238 459725238 351602124 351602124 320605202 131616154 271860562 282658562 282658562 274309328 46221776 301612114 301612114 262648080 319448958 352362535 738320397 738320397 944390312 944390312 724795944 724795944 980525446 980525446 745612173 684897028 883724359 883724359 756496941 756496941 183500244 317630980 971899264 971899264 564009701 832442118 832442118 811375844 275090180 605857664 605857664 538300032 475803264 12233728 83742522 83742522 310191954 310191954 295576464 282159618 282159618 474666126 474666126 449404398 412129368 508638878 508638878 448660038 310516292 136318128 18874656 68589364 781221976 781221976 588942817 694683831 869010675 869010675 840452961 508872460 508872460 631343472 1021442503 1021442503 849482067 848101681 654438944 654438944 551435465 673464596 996334699 996334699 617383129 897074854 897074854 235930001 634882188 863237989 991657507 991657507 789928601 414196230 940263366 940263366 719901825 719901825 34603008 34603008 16777376 32051456 32051456 21176544 21176544 13107456 23371776 96195080 96195080 84127232 84127232 17067112 16173696 28051264 270947136 312725542 402765340 621466665 1073254613 1073254613 977482644 560050758 819120492 819120492 742667956 948047943 948047943 604110926 417206816 307632786 273815904 126847104 121643488 120667352 627071400 845181081 863218595 863218595 977849287 985796823 985796823 568390550 608345516 608345516 950895651 1044630407 1044630407 418532258 453624050 771288053 771288053 373441206 826853870 1072549106 1072549106 1008730383 1008730383 1031730286 1031730286 767134344 412825158 453564030 979370201 979370201 911344965 589955610 730334325 730334325 702975332 702975332 904155192 904155192 814203665 465955062 696623184 696623184 567464673 567464673 13668385 0 0 24122048 141169024 326276438 445754043 928342614 1055046605 1055046605 1013428712 1013428712 508347832 508347832 378136904 190261416 225579948 348330502 449618444 515694440 851555727 851555727 475014024 874782172 885538595 885538595 612240250 612240250 513673265 837142688 837142688 754974820 754974820 788114385 788114385 605388430 1035453915 1035453915 1013503496 1013503496 311640704 175418368 240732740 474305614 839090622 839090622 724966197 1062404585 1062404585 256377746 490472838 490472838 95209834 529321834 529321834 512018526 524810430 524810430 495576832 273813576 129171608 129171608 50857008 174851516 174851516 101452824 19997472 19997472 296822786 842539136 842539136 21294688 354180256 966670904 966670904 541188225 726939789 726939789 1009209898 1009209898 520239295 903089995 1060570612 1060570612 996746679 105263264 126959312 553653297 553653297 256392248 223087788 214173900 214173900 213127988 188879028 155724112 155724112 745832761 745832761 216790784 733601465 733601465 559292124 621269056 630144105 630144105 612510752 0 873136299 873136299 835908320 959539788 959539788 815851335 225237480 225237480 165749220 323753969 323753969 303312437 189620000 189620000 134217732 24118052 38013056 134646032 140693892 141907272 141907272 79507272 145038336 342826502 342826502 217581516 217581516 96758128 449643270 449643270 55308768 142095162 142095162 408421376 408421376 322795422 309661470 332999376 491071662 491071662 278931948 256034156 213206776 213206776 130544388 9299520 4058112 14323456 14323456 18652256 24907680 24939632 43440240 45670352 57803344 57803344 51565104 57936176 57936176 46248080 46248080 41079696 53995520 53995520 28330272 28330272 98176420 213261132 213261132 467514768 467514768 406983936 406983936 213310284 139665032 169013056 170221120 251814392 405979344 405979344 231764532 176284464 143950336 177209940 303598992 303598992 83886152 117499416 279651794 279651794 506135376 506135376 481507698 110695602 514731208 514731208 353437960 220201260 478664050 771449103 771449103 253139484 887667818 892055073 904754403 904754403 739010087 677079079 805306371 805306371 805306371 743625877 743625877 1054858452 1054858452 321966264 971159020 971159020 418246959 320359220 123733408 123733408 123379120 337926416 337926416 107065506 409450748 531729698 531729698 454407198 410934866 381890778 96592104 120744448 129581048 129581048 90489200 90489200 65810408 34345504 22334112 22334112 25227328 150166788 150166788 23068800 31134784 31134784 26099328 135995526 412355140 412355140 421453350 421453350 416162464 285422976 285422976 4939842 20058112 21627664 50463904 50463904 929540634 929540634 575561182 1020529867 1020529867 758330157 758330157 848344010 954204850 954204850 340617313 850579338 850579338 728594192 711204293 876662339 876662339 717204884 717204884 608287605 526968239 129671040 616435541 616435541 250874844 249563164 260115164 538714860 579339345 579339345 551291536 453025790 453025790 469719048 469719048 517670596 588460033 588460033 303714540 595208357 595208357 439354134 80216222 150250752 312033765 653911891 656484213 656484213 618757272 285503552 898355305 898355305 294633568 814601755 814601755 293650560 76096584 302589520 694435957 975752709 975752709 505820166 686000341 686000341 632782728 603740802 705705038 892933979 892933979 730518645 755879460 755879460 677684917 1065171140 1065171140 1011764219 1011764219 910186538 910186538 662311939 906625235 906625235 566440123 556077184 117651768 57936816 222376384 222376384 202010024 202953600 220690603 962773383 962773383 960680359 487368744 940061827 940061827 1016429262 1016429262 806791747 674317220 674317220 598802640 598802640 50921928 109093984 109093984 44961024 66571744 66571744 148700641 148700641 134225060 134225060 701885029 701885029 724304197 724304197 707531189 599353937 599353937 59544880 546226319 546226319 533848830 513214528 513214528 400108916 351805672 277287552 84935208 84935208 67373600 29786336 300431410 300431410 67297456 939788546 939788546 830841152 824494371 678469895 678469895 418332102 592338992 950059335 950059335 678852771 613575264 540539433 539490561 648086273 648086273 648020313 604029264 198326512 198326512 30809068 34941456 256074936 256074936 156028068 154715204 166125604 166125604 152739360 566889264 566889264 584155464 649327449 676846104 828300427 828300427 692878983 646619250 646619250 627094895 905521131 905521131 932784199 932784199 878014648 878014648 449429560 99082512 99082512 108856458 373654170 373654170 53635122 130875104 130875104 65257528 299150624 299150624 281843424 166594224 267848704 267848704 138795520 178890752 179096916 179096916 119561500 60952944 220993032 497431840 497431840 127822364 260329312 260329312 185689424 236812124 734003633 734003633 259014752 675031973 675031973 372503322 372503322 604461040 604461040 631471787 631471787 882197370 882197370 293724258 293724258 1061475457 1061475457 838997330 838997330 805621189 955396930 955396930 953365191 776147456 776147456 504535625 504535625 867718891 867718891 809785102 633472076 633472076 553249288 648549713 648549713 614650185 245936496 245936496 151175969 612401929 688984324 692593984 692593984 565537125 565537125 336011650 336011650 271136010 271136010 519119838 519119838 405238478 873016657 873016657 460800906 679211530 1062388107 1062388107 977359532 139608196 68280840 402764298 402764298 156424032 156424032 661409724 743441037 743441037 264800585 121425720 92180520 92180520 19306592 19567744 273338504 273338504 269173000 21045408 112926590 145768292 246558366 246558366 461640887 558107040 571350261 1066342645 1066342645 889237628 889237628 299670336 203008846 608900392 608900392 501541356 499985646 403336512 73957408 28775744 11156320 81219368 81219368 934324911 934324911 48730180 818723191 818723191 242353752 169140080 169140080 1058029779 1058029779 115782736 1016747491 1016747491 243007620 245284180 245284180 174233856 452723265 845449415 971270595 971270595 829098339 859832499 859832499 726048055 882529483 892007771 892007771 828509248 828509248 963194982 963194982 427432078 427432078 397149610 966908903 1017112066 1017112066 948512282 763853149 763853149 632276228 230798969 942291332 1021546607 1021546607 520873285 46333958 998371622 998371622 459366451 369328208 486596698 486596698 453193734 453193734 321598720 417923670 433062630 433062630 449451996 449451996 1067324947 1067324947 369172506 809778225 809778225 744934589 744934589 336923023 100831465 903055511 903055511 791129593 691052492 233493996 294871714 294871714 85664618 285214208 285214208 269473408 29532705 279699520 810728706 811091985 811091985 671297541 671297541 599285920 586803153 590650112 590650112 576819729 856282128 856282128 885643306 885643306 870411840 870411840 327799922 407425026 532820677 726003893 726003893 678160645 678160645 33898885 939590064 939590064 702328676 998241334 998241334 994532912 994532912 527383998 527383998 827892227 961452595 961452595 817275136 1049472043 1049472043 570156691 209765808 982520936 982520936 1044911112 1044911112 641744593 637608177 333580403 915212192 915212192 53493187 583091200 1040810515 1040810515 836579043 806761696 613572777 613572777 1058611465 1058611465 456656694 638077358 941359880 941359880 794364688 876533482 1042243343 1042243343 491895876 491895876 134859264 135030536 596378957 596378957 233325100 623239341 623239341 716945501 716945501 177432468 714753173 714753173 236774400 541624320 634055913 878683295 878683295 775217578 428831113 960454449 960454449 1004354275 1004354275 963510900 975701271 980357443 980357443 915216996 657417242 657417242 657169482 822842627 914967379 914967379 982661241 982661241 405565789 370160520 116416896 116416896 69345552 486544912 521803326 521803326 521802550 338745640 405196818 412283416 489226830 489226830 430986014 414897990 208425582 436521142 821828787 821828787 726407234 723820231 287970594 585620688 585620688 579388497 680710874 856949361 856949361 736387098 166916036 286803806 286803806 258788796 258788796 510549770 510549770 202254952 256117224 451987586 451987586 836258178 836258178 814744131 1007948379 1007948379 131168808 131168808 1047949344 1047949344 685855654 959924700 959924700 476391822 184815256 131616154 271860562 282658562 282658562 274309328 59381120 59381120 229639020 229639020 52463964 151125856 151125856 660037204 684079329 684079329 912499705 912499705 1016148033 1016148033 373972122 373972122 388157498 748364936 748364936 687266757 183500244 317630980 317630980 816221824 950278435 950278435 540665601 540665601 25030560 85324544 85324544 81488584 68344328 14530496 83742522 83742522 310191954 310191954 295576464 282159618 282159618 474666126 474666126 449404398 317311076 471207438 471207438 448660038 310516292 140189348 150710337 618148293 781221976 781221976 588942817 694683831 869010675 869010675 840452961 338958985 1028659279 1028659279 886495947 849482067 849482067 848101681 654438944 654438944 537006336 702096801 702096801 635014981 622193633 615147240 615388366 686816709 746761753 845598645 959224125 959224125 789928601 1059405976 1059405976 217075685 386289005 1050336837 1050336837 570949668 845809075 845809075 840959360 31664480 31664480 14880000 95225344 95225344 24612384 24420352 76933888 77594952 77594952 68996616 270947136 270947136 402765340 402765340 263385692 479948830 479948830 277199170 491883110 491883110 481653250 386083088 496380936 496380936 590522607 590522607 489159788 792187265 792187265 636991848 636991848 845181081 863218595 863218595 807803139 745423887 370937370 76933704 76933704 11433736 947187871 1044630407 1044630407 489751084 489751084 812444966 812444966 37943541 285322592 300231138 368378242 1008730383 1008730383 1031730286 1031730286 767134344 357686926 357686926 979370201 979370201 911344965 34379588 171757332 694604064 702975332 702975332 543220160 814203665 814203665 814123085 814123085 696623184 815910720 815910720 611336985 611336985 629868352 629868352 220758080 326276438 326276438 859825669 1055046605 1055046605 442275322 770408641 770408641 508347832 408513110 894775149 894775149 128729626 717698193 717698193 851555727 851555727 440393232 874782172 885538595 885538595 612240250 612240250 513673265 837142688 837142688 754974820 754974820 473655660 605388430 605388430 1035453915 1035453915 1013503496 1013503496 175418368 879045104 879045104 474305614 839090622 839090622 724966197 690285039 690285039 784411069 962858021 962858021 807747778 807747778 529321834 512018526 524810430 524810430 625097901 625097901 541853240 925504297 1064043755 1064043755 914493919 899681791 672155390 672155390 901122625 901122625 842539136 227250192 110638304 433129052 433129052 541188225 726939789 1040929198 1040929198 596839168 596839168 191575476 258157368 258157368 54341424 105263264 105263264 95782320 110172564 174347980 240081604 242680428 242680428 196586328 52607120 231219272 231219272 144192544 216790784 216790784 219581632 246764924 246764924 198421792 84182688 109787136 109787136 28354208 28354208 818090176 818090176 959539788 959539788 815851335 225237480 225237480 165749220 554371873 554371873 24122144 136907168 154141476 678428932 694157733 694157733 674251200 674251200 562039781 551855176 211704936 145038336 342826502 342826502 217581516 217581516 381446832 449643270 449643270 55308768 142095162 142095162 245085324 269705604 309661470 309661470 332999376 491071662 491071662 278931948 29890580 192624528 192624528 134539156 173039508 173039508 40241412 40241412 9983104 7265664 7265664 17831168 20190112 20190112 6430240 448512 36982784 36982784 26812992 26812992 26962976 26962976 87573674 286637578 293810274 408161536 408161536 228531748 502343436 502343436 406983936 406983936 205635586 207304332 230652796 230652796 493597020 493597020 358223072 358223072 176284464 143950336 177209940 303598992 303598992 83886152 83886152 279651794 279651794 506135376 506135376 481507698 110695602 514731208 514731208 353437960 220201260 248336870 759350425 759350425 883527986 883527986 832501018 738355228 532685128 733005877 776524764 776524764 358225563 391190126 638718977 638718977 487785560 487969918 487969918 34396432 34396432 171015628 383291904 383291904 374213530 374213530 343821242 337926416 325053586 409450748 531729698 531729698 454407198 503703582 503703582 96592104 411775552 428860494 487061550 487061550 356469572 146411008 146411008 136975620 8615264 88292856 133116072 133116072 56445536 56445536 224449072 224449072 17826336 293615815 402981569 421453350 421453350 560772417 560772417 552166217 640294669 774107421 774107421 813751720 813751720 853012474 853012474 777898212 490899018 689548418 944602669 944602669 748451943 647633192 254073032 238546976 226566252 728594192 728594192 711204293 876662339 876662339 717204884 717204884 608287605 526968239 129671040 616435541 616435541 251545608 251545608 260115164 538714860 579339345 579339345 551291536 453025790 453025790 293497036 293497036 200399768 588460033 588460033 155592064 816757088 822731811 822731811 39185040 710037568 710037568 653911891 656484213 656484213 618757272 285503552 898355305 898355305 294633568 814601755 814601755 293650560 386956520 386956520 694435957 975752709 975752709 505820166 664978176 664978176 663884409 512938590 705705038 892933979 892933979 730518645 755879460 755879460 605102601 1065171140 1065171140 851741417 851741417 910186538 910186538 662311939 96028256 347603744 347603744 292626730 297869570 297869570 277009064 222376384 202010024 202953600 338694144 338694144 348389834 406864002 470845518 470845518 219283974 160990244 160990244 547120884 547120884 202346572 256079000 256079000 84810792 71631040 48422032 48422032 44961024 37495872 34961552 59564272 59564272 29993056 32468624 63542944 63542944 46272720 47588048 47588048 64439120 64439120 64325264 487586862 487586862 513214528 513214528 495946842 495946842 369300034 369300034 351538122 832802322 832802322 680835604 504104802 169766056 169766056 830841152 830841152 824494371 678469895 678469895 268501440 551553281 551553281 230213964 613575264 613575264 540539433 539490561 648086273 648086273 648020313 604029264 33554432 2435328 27337328 34941456 34941456 45427536 45427536 138508096 138508096 44911440 44911440 554965553 554965553 584155464 649327449 649327449 582347601 723186718 723186718 632473177 632473177 627094895 905521131 905521131 932784199 932784199 878014648 878014648 419880320 35852074 316531632 316531632 373654170 373654170 268712448 39788000 39788000 32456160 299150624 299150624 281843424 539757825 639709593 639709593 577950609 577950609 406020247 699014473 699014473 778375660 1034829330 1034829330 497431840 423154292 423154292 161007204 161007204 187695924 734003633 734003633 259014752 675031973 675031973 662779393 649542489 644095553 604461040 631471787 631471787 882197370 882197370 390875138 390875138 269273480 73964072 838997330 838997330 748356893 748356893 674312990 797914412 1026558571 1026558571 931209339 539092995 736719981 736719981 491417987 633472076 675308804 675308804 543810945 543794561 543761793 245936496 247537884 247537884 612401929 688984324 688984324 634421476 634421476 654262233 654262233 503650247 671162373 675716300 675716300 519119838 999756627 999756627 1068058501 1068058501 679211530 1062388107 1062388107 805343716 979766196 979766196 682767074 136499877 156424032 774787221 774787221 743441037 743441037 382028482 682633620 864380946 864380946 284272032 284272032 273338504 273338504 269173000 21045408 112926590 145768292 246558366 432675880 461640887 568014485 568014485 171327564 891989729 891989729 814082718 1001918905 1001918905 976409367 965225569 965225569 560612320 560612320 540328772 150900160 88443008 81219368 81219368 934324911 934324911 48730180 818723191 818723191 242353752 169140080 169140080 1058029779 1058029779 163950048 1016747491 1016747491 243007620 168956784 174233856 196108354 452723265 845449415 971270595 971270595 829098339 859832499 859832499 726048055 589874481 681680001 729039632 828509248 828509248 963194982 963194982 427432078 427432078 397149610 364936026 364936026 496234009 582242417 763853149 763853149 289423807 1015021647 1015021903 1015021903 978950162 978950162 870756806 998371622 998371622 904092172 705149134 363010384 363010384 370677138 428873216 428873216 417923670 417923670 365429506 449451996 449451996 490869768 490869768 155882722 395006712 395006712 170941238 9960000 30882528 31441920 268881920 268881920 321933584 321933584 286446114 154273512 38092992 285278208 285278208 287065088 287065088 286575138 29532705 50380848 176873536 176873536 671297541 671297541 169005588 939973458 939973458 454311754 454311754 856282128 856282128 885643306 885643306 870411840 870411840 127091440 265441522 532820677 726003893 726003893 678160645 678160645 806888980 939590064 1003450350 1003450350 934746621 933500735 713490412 713490412 234870869 714114626 714114626 676136133 562341392 562341392 472599648 567124740 567124740 209765808 982520936 982520936 714741858 714741858 637608177 637608177 121899032 361435552 361435552 561773280 561773280 830850688 836579043 836579043 836579043 836579043 207618872 1058611465 1058611465 642777088 642777088 941359880 941359880 794364688 876533482 1042243343 1042243343 958980496 958980496 712565505 184288208 786221141 786221141 683475672 623239341 623239341 716945501 716945501 177432468 714753173 714753173 263326804 267702112 267702112 878683295 878683295 539963460 429156864 960454449 960454449 363904127 888407564 888407564 825303843 980357443 980357443 915216996 657417242 657417242 657169482 822842627 822842627 211946060 350890813 794004555 794004555 1011625921 1011625921 822267939 687907281 687907281 149298248 813030967 813030967 235145244 167807508 77334084 525879180 525879180 432571524 153108580 153108580 58343892 821828787 821828787 726407234 723820231 268599361 585620688 585620688 579388497 680710874 856949361 856949361 736387098 140738038 192621008 241282080 258788796 258788796 510549770 510549770 202254952 256117224 564758215 958358515 958358515 834676611 817178131 1007948379 1007948379 948939926 986668055 986668055 881059909 881059909 959924700 959924700 476391822 61326526 58993297 567354081 567354081 567354081 547221057 547221057 59381120 127938908 581045552 798759241 798759241 243280925 747168264 747168264 612368457 912499705 912499705 1016148033 1016148033 373972122 373972122 882020871 882020871 748364936 687266757 292428630 952017300 952017300 816221824 950278435 950278435 540665601 540665601 25030560 85324544 85324544 81488584 16503944 14530496 6760512 19271712 269880032 269880032 27022272 27022272 1065184 216606156 474286380 474286380 469296638 469296638 458604430 405146544 234956428 140189348 150710337 618148293 747539520 747539520 220471552 228216832 228216832 902699684 902699684 681985486 1028659279 1028659279 886495947 326897586 326897586 303438354 890909300 1022364517 1022364517 702096801 702096801 635014981 767830276 949626403 949626403 754887533 971095805 971095805 959224125 959224125 745295277 1059405976 1059405976 85208650 386289005 1050336837 1050336837 570949668 845809075 845809075 840959360 31664480 31664480 27403360 95225344 95225344 85047520 97724640 97724640 77594952 80667776 80667776 270307080 370749518 370749518 372474452 451121686 479948830 479948830 337654822 277199170 163289732 13451396 206763552 470857256 507495698 590522607 590522607 492599912 792187265 792187265 636991848 636991848 799171569 799171569 679043074 785563290 1050500167 1050500167 928587916 899169634 899169634 571974973 571974973 224230606 489751084 489751084 812444966 812444966 37943541 285322592 300231138 368378242 368378242 342885258 276510594 387818958 387818958 397289616 397289616 370578890 661951641 661951641 388782686 427871548 694604064 730372209 730372209 713169941 515923993 479468131 814123085 814123085 583825937 815910720 815910720 611336985 611336985 629868352 629868352 220758080 220758080 183029068 407935648 557943475 557943475 378802208 770408641 770408641 408513110 408513110 894775149 894775149 501453942 717698193 717698193 389747980 389747980 373455118 373455118 503875846 974569746 974569746 185123892 407371888 466093302 466093302 369427596 384924290 384924290 172318512 260580334 260580334 772402301 772402301 992009993 992009993 879045104 879045104 651551631 586641704 925933714 925933714 690285039 690285039 784411069 962858021 962858021 807747778 807747778 118505544 25396960 4532352 22155940 625097901 625097901 743052918 925504297 1064043755 1064043755 914493919 899681791 672155390 672155390 901122625 901122625 854075443 854075443 298663364 684133600 730016403 730016403 679728645 1040929198 1040929198 937489386 596839168 327420018 866190970 935145339 935145339 329780265 59119728 133600552 133600552 174347980 240081604 242680428 242680428 196586328 52607120 231219272 231219272 96707328 96707328 106481360 175657336 175657336 87687660 55577376 46659792 109787136 109787136 69012832 79427360 818090176 818090176 815275651 815275651 249088472 833988124 833988124 79612099 554371873 554371873 144827168 136907168 188785396 678428932 694157733 694157733 674251200 674251200 562039781 551855176 211704936 151791624 151791624 134219908 134219908 134217732 381446832 381446832 196033908 196033908 349210626 349210626 11057984 437715282 437715282 291378464 307042450 307042450 302252854 197511232 29890580 192624528 192624528 134539156 173039508 173039508 40241412 40241412 19944352 23081248 23081248 35863600 39056016 39056016 56443824 56443824 53267760 36982784 52344176 52344176 52548704 52548704 87573674 286637578 293810274 408161536 408161536 456472112 502343436 502343436 399283844 340522386 167859614 207304332 230652796 230652796 616926894 616926894 451923996 485324402 485324402 200944436 200944436 419938208 423389028 425851592 425851592 102671272 83968040 468378912 468378912 33658070 22094496 436658572 436658572 424051004 424051004 153538690 759350425 759350425 883527986 883527986 832501018 738355228 135364745 733005877 776524764 776524764 1060774139 1060774139 935401279 638718977 739279872 739279872 487969918 118199832 118199832 171015628 383291904 383291904 374213530 374213530 343821242 325053586 325053586 134816772 102041178 350084744 505044992 505044992 503703582 692508837 1062593765 1062593765 701183469 701183469 356469572 146411008 146411008 689581300 787749636 787749636 634183993 1008120046 1008120046 312523140 312523140 233243904 233243904 293615815 402981569 402981569 407245248 560772417 560772417 552166217 640294669 774107421 774107421 813751720 813751720 853012474 853012474 777898212 490899018 689548418 944602669 944602669 748451943 370879466 370879466 326799975 326799975 466572327 558597937 558597937 940875094 940875094 687082757 553132672 450448914 107826680 107826680 143793748 378800626 378800626 251545608 285737522 285737522 437729814 438778918 438778918 370519436 100779872 293497036 293497036 200399768 266009996 266009996 1060528664 1060528664 822731811 822731811 39185040 710037568 710037568 664177522 527173949 208803264 403856936 403856936 415697612 415697612 336382986 347382562 347382562 358662570 386956520 386956520 391954662 391954662 296354036 759250321 868556889 868556889 671343953 671343953 783467780 783467780 545902860 59605824 268578880 276824130 276824130 76102408 661264576 851741417 851741417 295049523 52740402 412844544 496649218 496649218 496231426 292626730 297869570 297869570 277009064 92928736 407990884 407990884 338694144 338694144 348389834 406864002 470845518 470845518 219283974 768245888 768245888 764073069 738771369 202346572 256079000 256079000 182998080 182998080 58720368 48422032 37495872 37495872 189630465 189630465 39989380 165343313 674583457 674583457 696912725 697044069 697044069 569498341 569498341 64439120 559117857 559117857 487586862 487307822 252799596 495946842 495946842 435682192 369300034 492047189 832802322 832802322 733027617 541389200 572995857 572995857 571707521 439634215 443947926 669265376 1031356077 1031356077 497103842 497103842 474293934 197431890 197431890 99878028 94405092 147865668 147865668 220621776 220621776 150345808 257556924 257556924 27054140 79335752 79335752 65328336 141886064 154185220 154185220 143329888 554965553 554965553 543867506 112987714 310630554 310630554 723186718 723186718 918084688 918084688 875961099 51908704 134283520 520782112 520782112 306184516 419880320 419880320 26152656 316531632 316531632 269091968 272765058 272765058 4871298 49850160 296973280 296973280 65176002 136720773 539757825 639709593 639709593 577950609 577950609 406020247 699014473 699014473 778375660 1034829330 1034829330 323411648 423154292 423154292 71148132 68157960 49672 49152 32800 49152 661430424 662779393 662779393 667263881 667263881 912092115 912092115 88795506 344771840 916455555 916455555 817906811 1061717793 1061717793 1004722143 1066657559 1066657559 750966354 674312990 797914412 1026558571 1026558571 931209339 539092995 539226369 539226369 143953440 143953440 675308804 675308804 627795305 543794561 675906009 675906009 247537884 598026953 598026953 219361836 219361836 731263533 821235102 821235102 788484993 503650247 950927368 950927368 675716300 520302890 999756627 999756627 1068058501 1068058501 500217596 573835735 805343716 949223572 979766196 979766196 682767074 593007537 593007537 774787221 774787221 726931133 483060381 412164930 822382616 864380946 864380946 315370146 284272032 271131906 268444704 14680512 18874400 18874400 36307424 65672432 432675880 432675880 568014485 568014485 270288928 891989729 891989729 814082718 1001918905 1001918905 976409367 965225569 965225569 560612320 560612320 540328772 150900160 88443008 68691752 75235584 309878986 309878986 10085952 272791234 272791234 76207176 241307968 245399776 311038026 311038026 163950048 334055794 334055794 201136600 201136600 89270764 196108354 276923252 276923252 417638882 417638882 292824132 67104 974700840 974700840 86033943 144746656 144746656 828679072 828679072 156625731 152320064 22506464 33679552 61261824 61261824 306338580 330727922 582242417 582242417 412371270 412371270 1015021647 1015021903 1015021903 978950162 978950162 870756806 870756806 904092172 904092172 705149134 365158698 295772514 270606698 428873216 428873216 135397748 188221236 344981824 402653260 402653260 913064341 913064341 237295534 769526153 769526153 649559164 470652222 470652222 136313380 907912165 907912165 846345716 846345716 386316448 386316448 296839440 296839440 285278208 287065088 355044138 355044138 354567482 331608306 331608306 269904624 941003319 941003319 842929457 992106064 992106064 554646561 619582514 619582514 384513498 317374936 317374936 109626786 313312274 313312274 71561352 64008824 52693296 544000304 635440409 635440409 806888980 833389923 1003450350 1003450350 934746621 933500735 813640346 813640346 517995596 748374488 748374488 950985735 950985735 538051396 614529107 614529107 733182377 866164808 866164808 242431048 118098744 118098744 56961312 119345930 271457538 341985458 358122128 561773280 561773280 109157626 290454690 822462144 836579043 836579043 245295190 414485078 414485078 642777088 642777088 292866978 813009063 813009063 487588398 487588398 958956898 958980496 958980496 712565505 184288208 786221141 786221141 683475672 549530433 780220160 780220160 578883729 12113600 537062997 537062997 263326804 177115368 35950608 35950608 4329600 134217728 932972840 932972840 797715540 870918153 870918153 1005518948 1005518948 952637863 34579112 100236600 100236600 93130016 93130016 148090809 148090809 211946060 350890813 794004555 794004555 1011625921 1011625921 822267939 687907281 687907281 377621746 813030967 813030967 800375525 800375525 229903356 525879180 525879180 432571524 283531394 277011782 964739686 964739686 288380869 416420550 416420550 404276742 404276742 324944102 310777938 324512346 324512346 516921704 516921704 163428092 321460814 321460814 189367508 250093712 250093712 73664904 73664904 97462428 564758215 958358515 958358515 834676611 817178131 928773819 928773819 948939926 986668055 986668055 881059909 881059909 383778996 497025390 497025390 229376268 229376268 567354081 567354081 567354081 547221057 547221057 38922321 127938908 581045552 798759241 798759241 243854416 747168264 747168264 612368457 253902880 337773128 721504415 823772935 823772935 312266322 882020871 882020871 329949011 801289725 801591855 952017300 952017300 560057767 560057767 412475973 616948590 616948590 1010117391 1010117391 807446723 293200996 702448293 702448293 739924256 739924256 360729314 269880032 263592828 222054978 116903400 216606156 474286380 474286380 469296638 469296638 458604430 405146544 108555392 136938880 136938880 140182852 743112713 743112713 220471552 280499566 673056524 902699684 902699684 942000271 942000271 502225278 954687980 954687980 937550331 419743782 890909300 1022364517 1022364517 272765355 165496648 218569672 767830276 949626403 949626403 754887533 971095805 971095805 530161800 641287450 641287450 574220049 571237193 355519945 116317656 373460346 373460346 316675464 316675464 300422594 272703904 19805568 25770400 29889536 68040544 85047520 85047520 97724640 97724640 13375496 80667776 80667776 81429120 370749518 370749518 372474452 451121686 451121686 337654822 337654822 324023300 324023300 962254503 990921767 990921767 911471259 911471259 335465562 492599912 497863024 666934348 886444515 886444515 561154256 369544044 842189536 842189536 1050500167 1050500167 928587916 899169634 899169634 667390204 667390204 513038107 962726596 962726596 1024498541 1024498541 849641617 742441101 609519621 537920001 941201246 941201246 948121671 948121671 686957442 397289616 397289616 370578890 661951641 661951641 388782686 427871548 534283318 732349604 959109479 963278187 963278187 425177750 293648482 258430096 258430096 628425004 628425004 567972656 567972656 163819520 163819520 163627236 151070016 518046174 518046174 457326640 457326640 193147680 346098344 346098344 343436008 387704872 400432890 400432890 501453942 501453942 72496900 153712932 304315056 304315056 346555722 503875846 974569746 974569746 185123892 185123892 125878392 125878392 239769812 239769812 181194896 128029292 260580334 260580334 772402301 772402301 992009993 992009993 832885320 651551631 651551631 586641704 925933714 925933714 441074306 1046741794 1046741794 493619244 493619244 265135028 475811394 475811394 307272922 307272922 260217096 255933504 265166076 743052918 743052918 497961446 497961446 688899296 688899296 419964944 1023427119 1023427119 472141618 854075443 854075443 369444831 684133600 730016403 730016403 791658376 791658376 937489386 937489386 606675398 327420018 866190970 935145339 935145339 329780265 120991544 133600552 192339468 263369788 263369788 223485168 223485168 109712472 88919160 185147464 185147464 27337768 106775400 106775400 41079696 246040096 246040096 151033376 115042480 17672832 27126440 69012832 79427360 79427360 237758240 265303248 265303248 249088472 833988124 833988124 79612099 155437456 155437456 144827168 135318336 188785396 188785396 40978304 35709200 41080992 217192520 217192520 84984360 84984360 151791624 346099266 346099266 134219908 368185858 368185858 205150134 530089022 530089022 349210626 349210626 11057984 437715282 437715282 268747398 268747398 302252854 302252854 1265664 1265664 5752832 5752832 5556864 91020712 91020712 356007466 356007466 88615008 77614408 351860042 351860042 276249474 283327490 312169216 312169216 53267760 20384832 52344176 52344176 52548704 52548704 36103952 103199040 361255612 361255612 430713462 456472112 456472112 399283844 399283844 340522386 447468624 447468624 348127434 258890609 977594882 977594882 546382943 547096271 583378733 583378733 405294309 741055573 741055573 425851592 913793275 913793275 50881376 468378912 468378912 285833514 213107532 436658572 436658572 482591070 484442574 653914702 653914702 78717768 650711626 650711626 274482818 1029729600 1029729600 11059245 1049088 1048576 1060774139 1060774139 935401279 891405582 891405582 739279872 459080105 219211276 219211276 102396984 102396984 61886464 135168 34734096 34734096 34222100 134816772 134816772 102041178 440819856 858348688 858348688 570443058 810148995 1062593765 1062593765 701183469 701183469 624613161 644105825 644105825 689581300 787749636 787749636 634183993 1008120046 1008120046 415526144 312523140 233243904 507590542 507590542 345641738 276241218 416236100 416236100 39643152 34206784 47923200 148344324 205434884 216849800 216849800 431096444 431096444 371331354 261100390 285395056 308916416 308916416 304398560 370879466 370879466 326799975 326799975 466572327 558597937 558597937 940875094 940875094 687082757 553132672 450448914 185205724 264640764 264640764 378800626 378800626 126228504 285737522 285737522 136450308 136450308 130028412 246907080 246907080 276823984 276823984 57022896 545010721 809253760 1060528664 1060528664 841222419 841222419 874134378 874134378 664177522 664177522 820807366 820807366 554704054 403856936 548045067 548045067 344642634 865844547 865844547 377061690 415815512 415815512 591541647 591541647 296354036 759250321 868556889 868556889 671343953 671343953 783467780 783467780 772518935 772518935 873262776 873262776 76102408 76102408 924205488 924205488 557239984 624014234 624014234 412844544 496649218 496649218 496231426 147021848 147021848 37847376 37847376 176842816 407990884 407990884 306069766 306069766 390426880 390426880 361777194 352617066 222112322 768245888 768245888 764073069 756156992 222763117 178914792 165859812 182998080 182998080 58720368 33689616 33689616 50399488 189630465 189630465 60242544 165343313 674583457 674583457 696912725 697044069 697044069 569498341 569498341 62981616 559117857 559117857 39978240 39978240 286073888 286073888 435682192 435682192 498081132 498081132 492047189 974029312 974029312 853176179 572995857 572995857 571707521 666850451 897790059 897790059 1031356077 1031356077 497103842 497103842 474293934 197431890 197431890 114580112 114580112 91432296 6414720 220621776 220621776 150345808 257556924 257556924 62025520 79335752 79335752 65328336 141886064 154185220 154185220 143329888 63116992 579636153 607237960 614280777 614280777 895537325 895537325 626000553 918084688 918084688 875961099 193118878 918205025 918205025 320873932 224097506 224097506 27028898 27028898 300994432 613862313 672141952 945166983 945166983 761927085 795047439 795047439 1028991663 1028991663 321280493 694985584 723238949 731092501 731092501 558592164 183072132 183072132 184102324 184102324 176711776 167240324 219919948 219919948 195557756 120820564 202357808 214343236 734343977 734343977 125306808 642700313 642700313 599205914 667263881 667263881 912092115 912092115 845448290 845448290 916455555 916455555 817906811 1061717793 1061717793 1004722143 1066657559 1066657559 750966354 437420036 437420036 303223314 137282134 210256998 210256998 92948834 364236294 364236294 694475492 694475492 627795305 627795305 246015324 675906009 675906009 337920 598026953 598026953 203937904 262218108 731263533 893708614 893708614 816718092 1016020047 1016020047 950927368 615103736 615103736 520302890 341977906 341977906 500217596 500217596 311472564 824402116 949223572 949223572 698417858 556073110 1046220488 1046220488 725228432 726931133 726931133 483060381 412164930 822382616 822382616 636345411 896090291 896090291 824530208 582203387 848747091 848747091 660327832 397796616 397796616 321390240 321390240 307771154 287977682 270288928 496279810 496279810 412015686 351451840 99917860 268544074 268544074 359981004 404025092 404025092 75006048 24202048 26070336 26070336 3189472 541748741 541748741 48845332 541589333 541589333 177145104 241307968 245399776 778575201 778575201 235639200 675293853 675293853 201136600 201136600 255991896 255991896 338792911 625102731 971845095 971845095 869166417 869166417 974700840 974700840 866313809 978099281 978099281 828679072 943119040 943119040 680548900 447089348 35674564 63556960 63556960 306338580 440698898 440698898 272917060 412371270 412371270 497735856 516705758 516705758 281398482 281325664 192987252 272758788 423895170 423895170 365158698 365158698 392237112 392237112 136840616 272110164 272110164 171053844 380638822 380638822 293738058 913064341 913064341 524265862 769526153 769526153 649559164 470652222 470652222 136313380 907912165 907912165 846345716 846345716 386316448 386316448 300942306 300942306 285247776 285247776 355044138 355044138 354567482 544108665 544108665 457492684 941003319 941003319 842929457 992106064 992106064 843319141 1038121128 1038121128 950532423 865025139 955712948 955712948 313312274 872550411 872550411 640717595 52693296 544000304 948306851 948306851 601373909 833389923 839413621 839413621 656659391 597864453 897654891 897654891 517995596 748374488 748374488 950985735 950985735 538051396 614529107 614529107 733182377 866164808 866164808 242431048 1034763352 1034763352 640157025 640157025 595592267 341985458 555577376 555577376 551737698 109157626 290454690 290454690 290454690 290454690 304357456 414485078 414485078 268739339 242263573 292866978 813009063 813009063 287580580 222347436 134481924 134481924 192415668 559220160 692660853 692660853 571475736 571475736 15803328 780220160 780220160 72493397 12113600 5279744 1088000 4326184 91362216 91362216 884876811 884876811 853754608 932972840 932972840 876579938 876579938 913910736 1005518948 1005518948 952637863 851984595 841343088 126692472 126692472 53153032 9049152 2453760 2337024 210305180 296456192 296456192 296346978 473433870 473433870 146809092 377621746 377621746 241372640 136853896 800375525 800375525 229903356 411471620 411471620 283531394 283531394 277011782 964739686 964739686 288380869 416420550 914616987 952149668 952149668 366211818 366211818 778447584 778447584 706690429 658243308 164014208 321460814 321460814 143274252 143274252 57804784 166674336 166674336 97462428 264585059 282642114 855882322 855882322 827067555 560339361 560339361 708385861 719064149 719064149 444875344 444875344 429316710 497025390 497025390 411168870 286417476 136653060 136653060 197725680 197725680 46760960 37490176 36906768 607135800 607135800 226566929 243854416 679798856 679798856 715759073 715759073 673219452 673219452 1019790543 1019790543 372279253 1039897746 1039897746 357049253 801289725 801591855 801591855 706119988 128950443 480277773 957341926 1028232812 1028232812 1010117391 1010117391 807446723 293200996 823659080 1024436001 1024436001 750669920 605026373 370197018 370197018 386585658 386585658 116903400 32604384 32604384 43371360 43371360 206059788 258857252 258857252 103109904 23098544 140182852 148912064 149423556 205700140 280499566 673056524 673056524 894709506 942000271 942000271 911278738 954687980 954687980 937550331 419743782 580176472 700135269 700135269 621445283 621445283 608578240 970374689 970374689 740503821 740503821 829023651 829023651 313541904 641287450 641287450 574220049 571237193 830603612 1059197247 1059197247 245370979 19401856 23333280 207966572 209812772 209812772 216623336 216623336 160117860 210838540 210838540 91203904 91203904 11097224 16173056 16173056 13649408 12183360 281227776 282067650 282067650 10806146 134380032 283375876 324023300 324023300 962254503 990921767 990921767 911471259 911471259 248636124 248636124 497863024 666934348 886444515 886444515 434144979 725141301 953331793 953331793 674051716 487201852 487201852 341530572 341530572 667390204 730743088 730743088 962726596 962726596 1024498541 1024498541 849641617 742441101 609519621 826400786 941201246 941201246 948121671 948121671 686957442 305904306 274823290 274823290 932244370 932244370 883036491 356650752 534283318 732349604 959109479 963278187 963278187 369781786 369781786 53291306 21440480 12324672 11272768 10747904 32210944 32210944 25691232 97027168 431539208 518046174 518046174 457326640 457326640 384568794 346098344 346098344 343436008 387704872 387704872 296482146 80568650 74875816 74875816 276587426 1034900488 1034900488 758572399 364370176 364370176 355417082 82200272 190288880 210363468 210363468 261512256 261512256 45560968 45560968 55055008 55055008 21136944 22679780 913425808 913425808 803271168 583145981 608403756 608403756 201400580 276668429 409733788 1046741794 1046741794 776512006 1051628055 1051628055 573724266 482244206 482244206 404678266 726959728 824590791 824590791 374093414 374093414 215482844 215482844 451874000 451874000 355500194 1023427119 1023427119 610535440 472141618 628629624 628629624 201439045 230901860 230901860 791658376 791658376 745536909 606675398 646106977 917964618 917964618 882902067 908331059 908331059 387964736 650583409 650583409 351900656 415683444 415683444 333310828 345370090 346416890 459020130 505936158 505936158 517949336 536650342 536650342 296298484 246040096 151033376 115042480 57763360 57763360 55928608 832311139 832311139 227783168 1072598068 1072598068 1057231548 1057231548 87203415 834853984 952911075 965008896 965008896 8388672 58246656 58246656 40978304 57934336 57934336 101369096 101369096 85008936 101254704 101254704 346099266 346099266 272116576 423427500 427170726 496439554 530089022 530089022 332960502 332960502 311088210 438964482 438964482 145135684 160617060 177465268 188006788 188006788 153434192 102407472 127630624 127630624 107229592 107229592 356007466 356007466 88615008 117793472 351860042 351860042 276249474 283327490 312169216 312169216 25974624 25974624 20384832 8432384 36947472 53560056 116383640 131882472 361255612 361255612 430713462 430713462 370242484 283066050 481590615 951208717 1041237781 1041237781 348127434 268759048 977594882 977594882 546382943 547096271 583378733 583378733 669781503 741055573 741055573 373618832 913793275 913793275 526942540 526942540 533886800 533886800 213107532 213107532 277910112 482591070 484442574 653914702 702685552 702685552 733557653 733557653 688465741 1029729600 1029729600 869979891 869979891 588419409 890934533 890934533 739295757 1032902161 1032902161 459080105 599353575 599353575 1034487495 1034487495 437955880 327287466 381817050 381817050 348165370 372601414 372601414 291790006 375658952 447107346 858348688 858348688 570443058 810148995 810148995 930750496 930750496 994367548 994367548 957608487 644105825 583407825 165974592 165974592 83329404 135168972 415526144 1072500483 1072500483 495782298 507590542 507590542 345641738 276255132 954090501 954090501 274127490 274127490 34988756 148344324 205434884 216849800 216849800 538017193 538017193 371331354 972134121 972134121 308916416 308916416 604549140 741012491 805791064 805791064 844324160 844324160 674830420 418260224 177439184 136352384 148447552 188072052 188072052 185205724 264640764 264640764 206438948 187834048 80352456 80352456 100289148 261946644 261946644 130028412 246907080 246907080 293675088 336248128 336248128 552339153 809253760 809253760 604365832 841222419 841222419 1026933665 1026933665 738043994 738043994 1010622015 1062951518 1062951518 265273788 548045067 548045067 344642634 865844547 865844547 377061690 415815512 415815512 877794026 877794026 264887560 60558960 113848753 594061064 850993419 850993419 570471494 570471494 772518935 779565981 873262776 873262776 843633680 755173390 924205488 924205488 906487211 906487211 874994962 733184626 988938857 988938857 1009919994 1009919994 1081344 35701632 67108872 176842816 176842816 268435458 306069766 701440289 701440289 809779328 809779328 692341445 692341445 500404042 500404042 985507710 985507710 771487725 770247005 703445704 33970920 115321456 115321456 43419952 48576784 53518496 59140864 60242544 60242544 34976064 170681360 170681360 42858304 45273936 141274144 141274144 66800836 62981616 62981616 274911618 274911618 55769744 286073888 286073888 270631680 270631680 505421596 505421596 583065862 974029312 974029312 853176179 516402521 839321218 839321218 666850451 897790059 897790059 1039112140 1070324843 1070324843 29398565 65315824 65315824 24133984 114580112 114580112 37094232 2167552 33603856 33603856 13690880 13690880 33554192 62025520 62025520 58904688 62572432 62572432 58689120 61926304 61926304 53736240 579636153 607237960 614280777 614280777 895537325 895537325 626000553 626000553 696319541 696319541 565479850 918205025 918205025 497616078 495186474 349857440 349857440 85066771 922747195 922747195 672141952 945166983 945166983 761927085 795047439 795047439 1028991663 1028991663 321280493 694985584 723238949 731092501 731092501 558592164 183072132 185690656 185690656 184102324 176711776 213225472 213225472 211954688 211954688 120820564 202357808 232140764 734343977 734343977 186782004 642700313 642700313 270924288 288832290 555999552 881039688 881039688 845448290 845448290 48759816 277349440 277349440 132376050 700535661 700535661 812310925 947986503 947986503 605167942 437420036 303223314 137282134 969046561 969046561 555365414 695068780 695068780 694475492 694475492 609243721 609243721 606377069 173675732 173675732 223136940 223136940 216870348 216870348 262218108 262218108 893708614 893708614 816718092 1023152079 1023152079 874978371 615103736 946881085 946881085 392217018 794566705 794566705 663187464 663187464 824402116 859976820 859976820 818274515 818274515 1046220488 1046220488 725228432 650557393 641045914 1022425108 1022425108 922172379 857010224 857010224 896090291 910792856 910792856 582203387 848747091 848747091 660327832 397796616 397796616 321390240 321390240 307771154 287977682 124587112 124587112 102309960 102309960 75555408 16829952 18689568 144210272 153285892 153875748 153875748 24202048 30183552 30183552 26139744 5872864 541748741 541748741 48845332 541589333 611493266 611493266 610894002 579506206 1072390345 1072390345 579166277 833788015 833788015 1003265442 1003265442 986236119 782097504 504050718 625102731 971845095 971845095 869166417 869166417 772590621 541180256 866313809 978099281 978099281 826196838 943119040 943119040 680548900 447089348 151005268 63556960 63556960 306732244 440698898 440698898 405076308 436605014 436605014 533334200 533334200 411966534 378410030 281325664 440972226 440972226 335325106 257571232 180355462 214557602 392237112 392237112 136840616 272110164 272110164 171053844 380638822 468821382 617274078 617274078 524265862 524265862 196101444 879654984 879654984 319031128 619290728 619290728 85534177 72426144 101879816 369066768 381953962 381953962 307371962 307371962 285247776 285247776 19139360 105705744 105705744 544108665 544108665 457492684 898777967 898777967 805306635 782111871 843319141 843319141 1038121128 1038121128 950532423 865025139 955712948 955712948 1012893614 1012893614 872550411 640717595 181063350 965122154 965122154 948306851 601373909 276824130 286205305 656659391 656659391 597864453 897654891 897654891 886725186 990776583 992002359 1025848373 1025848373 755948589 169755193 544264813 544264813 762219904 762219904 146278212 1034763352 1034763352 938311116 938311116 595592267 988281173 988281173 557096790 721320007 655229203 655229203 606458906 696601389 1032168030 1032168030 304357456 539169280 540091137 540091137 319816242 319816242 305169200 222347436 222347436 134481924 134481924 192415668 559220160 692660853 692660853 571475736 571475736 221571508 720712648 720712648 690557280 783869732 783869732 576798064 576798064 213140568 121849512 884876811 884876811 853754608 853754608 562182305 876579938 876579938 913910736 913910736 839859507 851984595 851984595 841343088 126692472 126692472 126283888 109163528 136438020 136438020 210305180 270794756 284170098 284170098 99296328 432603332 432603332 285811746 146810086 482697646 482697646 427033702 427033702 545791600 739415119 739415119 944656133 944656133 822347811 625794408 625794408 724835526 911661723 986391316 986391316 952149668 903922155 903922155 778447584 778447584 706690429 658243308 755511409 755511409 703544805 665685128 168746004 208518740 208518740 203971364 203971364 264585059 282642114 855882322 855882322 827067555 560339361 560339361 708385861 719064149 719064149 444875344 444875344 429316710 489759076 489759076 411168870 286417476 863814375 1004400375 1004400375 577723713 577723713 37490176 187302260 607135800 607195216 607195216 612795709 612795709 679559244 715759073 715759073 673219452 673219452 1019790543 1019790543 677717248 1039897746 1039897746 677475020 677475020 664187187 625637519 394445855 128950443 480277773 957341926 1057587352 1057587352 683991146 683991146 764273024 764273024 823659080 1024436001 1024436001 750669920 605026373 370197018 370197018 386585658 386585658 492153234 492153234 237841796 237841796 334156656 397362504 397362504 258857252 103109904 46407568 73934684 82417796 82417796 205700140 205700140 195651260 179442516 787614036 787614036 911278738 911278738 730688215 730688215 532614804 532614804 580176472 700135269 700135269 621445283 621445283 608578240 970374689 970374689 740503821 740503821 829023651 829023651 799614409 799614409 480822091 563937352 563937352 830603612 1059197247 1059197247 398082084 370283034 129538954 207966572 209812772 209812772 216623336 216623336 160117860 210838540 210838540 13144332 13144332 16777248 25707616 25707616 297828544 333472486 361403462 382429018 382429018 110992536 134380032 418528372 418528372 138801312 138801312 298368884 298368884 714898172 714898172 248636124 248636124 943811276 943811276 96839919 0 434144979 725141301 953331793 953331793 1016774930 1016774930 487201852 139453448 881823234 969460331 969460331 957632483 825343779 431254869 61113392 812656896 812656896 681672964 946161841 946161841 826400786 184568096 188294160 188294160 242242292 242242292 240597660 268760122 933681194 933681194 883036491 365467936 365467936 13108416 8653952 4458624 340889232 369781786 369781786 53291306 272365314 336087948 336087948 558314656 558314656 152707872 152707872 152643108 431539208 431539208 410568582 325613102 384568794 384568794 40893840 438679840 453169206 453169206 62791536 62791536 29310816 168903892 168903892 945818043 1034900488 1034900488 899946904 899946904 604554249 251728094 251728094 609217582 839309331 839309331 554590736 311481904 160576088 76616264 148574964 512418777 996798749 996798749 500895837 803271168 803271168 995562301 995562301 890601634 463834071 463834071 433387928 433387928 776512006 776512006 1051628055 1051628055 573724266 482244206 482244206 404678266 726959728 824590791 824590791 374093414 393352122 399393846 464833398 1023961848 1023961848 585934736 585934736 610535440 610535440 33818905 628629624 1028432103 1028432103 603807872 972555681 972555681 895649543 481414101 403876995 646106977 917964618 917964618 882902067 908331059 908331059 387964736 650583409 650583409 555228099 555228099 458295592 537136817 537136817 346416890 459020130 505936158 815482083 815482083 536650342 559580137 559580137 285480400 277103712 58041152 96811560 96811560 115198208 832311139 832311139 227783168 1072598068 1072598068 1057231548 1057231548 87203415 834853984 952911075 965008896 965008896 50521376 58246656 58246656 21038592 57934336 57934336 101369096 177736868 177736868 119033936 286034008 286034008 336678756 336678756 423427500 427170726 496439554 496439554 505385364 505385364 372536216 311088210 438964482 438964482 457484496 457484496 421650726 327509812 188006788 153434192 102407472 127630624 127630624 107229592 107229592 19941280 89219264 93373032 117793472 117793472 273948928 273948928 51249264 51249264 37993520 25974624 25974624 46068032 46068032 34624096 60558960 116383640 278054434 278054434 203424012 405063690 405063690 370242484 283066050 481590615 951208717 1041237781 1041237781 236067404 810083864 827961009 827961009 809786311 809786311 548195649 548195649 669781503 669781503 612764846 315333068 482775824 482775824 526942540 526942540 533886800 533886800 235409776 235409776 512918140 512918140 452158300 607662944 702685552 702685552 733557653 813770495 813770495 706816132 706816132 869979891 1066216350 1066216350 961323524 961323524 584180433 1032902161 1032902161 654154140 599353575 599353575 1034487495 1034487495 437955880 327287466 381817050 381817050 348165370 372601414 372601414 291790006 375658952 447107346 447107346 411693577 693378591 706130095 706130095 930750496 930750496 994367548 994367548 957608487 800891389 800891389 656857188 656857188 679661637 904816294 904816294 1072500483 1072500483 495782298 256907172 284832960 284832960 276255132 954090501 954090501 854095360 312703955 13780688 46310416 46310416 182867848 182867848 538017193 538017193 92200872 972134121 972134121 787741130 721945653 721945653 741012491 805791064 805791064 844324160 844324160 674830420 418260224 317227330 317227330 165709808 325592194 325592194 70349024 99800040 115585064 317855746 317855746 27037072 319642258 319642258 261946644 261946644 68460776 200585312 201423200 293675088 336248128 336248128 552339153 552339153 604365832 604365832 403565574 704988179 1026933665 1026933665 738043994 738043994 1010622015 1062951518 1062951518 265273788 309625224 370461210 370461210 357749418 357749418 101981402 220665290 220665290 877794026 877794026 1034199776 1034199776 393101568 537646102 880351360 1019686879 1019686879 620275419 592811310 779565981 779565981 843633680 843633680 755173390 755173390 974610200 974610200 906487211 874994962 733184626 988938857 988938857 1009919994 1009919994 171591624 65619304 67108872 179494856 247363522 487295928 487295928 701440289 701440289 809779328 809779328 692341445 692341445 965806824 965806824 985507710 985507710 771487725 770247005 703445704 227746816 227746816 115321456 43419952 50964512 53518496 59140864 59140864 52767024 16202688 170681360 170681360 42544896 45273936 62529024 62529024 50406224 50406224 51926962 274911618 512283986 512283986 363689580 363689580 320030776 270631680 505421596 505421596 583065862 583065862 866414599 866414599 912112412 912112412 839321218 642391824 642391824 611584905 1039112140 1070324843 1070324843 430303590 430303590 405988192 405988192 292192938 375496978 375496978 110163730 268978178 270896384 272113922 272113922 269032960 41481456 41481456 40933264 32049072 58689120 58689120 38440960 42166272 42166272 56021714 272690946 280495938 597336149 736150005 736150005 733354869 1073718538 1073718538 679760804 679760804 145278446 497616078 1029135786 1029135786 1016637706 349857440 85066771 922747195 922747195 958022680 1059197247 1059197247 757935232 757935232 541725185 1574400 1749504 1749504 17547328 26924640 26994272 26994272 26867296 26448992 185690656 185690656 27396160 186433632 213225472 213225472 211954688 211954688 203909384 156345092 232140764 232140764 137397184 186782004 186782004 621230642 621230642 321624619 571160674 571160674 62500770 585384224 824795521 824795521 583123842 584836786 584836786 700535661 700535661 812310925 947986503 947986503 605167942 1068525683 1068525683 823971363 969046561 969046561 555365414 695068780 695068780 542043949 542043949 234807276 606377069 672581205 672581205 176739456 223136940 223136940 607256857 795939833 795939833 661856403 750830261 984654888 984654888 1023152079 1023152079 404761802 625378696 946881085 946881085 1006068294 1006068294 976136176 663187464 663187464 660341901 949815500 949815500 818274515 818274515 881478393 881478393 714326404 816875720 880069515 1022425108 1022425108 922172379 857010224 857010224 302298264 910792856 910792856 318797360 283079554 538936232 538936232 230745672 218692558 418825934 418825934 443877312 443877312 372484890 441617094 441617094 415422102 310927908 257635836 6361456 26017792 27644224 157991776 157991776 4988928 72335584 82184224 82184224 73155136 270490962 270490962 125508160 275474258 611493266 811598041 811598041 579506206 1072390345 1072390345 579166277 833788015 833788015 1003265442 1003265442 986236119 782097504 679395791 504050718 952239563 952239563 846212823 846212823 478470188 478470188 391031616 391031616 302022660 165937536 165937536 136321344 35979456 151005268 151005268 34912384 15141840 306732244 306732244 134344708 405076308 444731392 444731392 533334200 533334200 415945926 378410030 413400244 440972226 440972226 335325106 257571232 100917636 214557602 387524154 420487744 427892838 427892838 414652932 414652932 404517732 468821382 617274078 617274078 398603267 354990816 354990816 879654984 879654984 127649344 619290728 619290728 85534177 24688256 101879816 369066768 381953962 381953962 399016064 399016064 32820186 20187904 67244200 105705744 150430332 150430332 147038180 345121308 898777967 898777967 805306635 559415944 797021813 797021813 554955297 218282045 808495236 947252103 947252103 138756867 1012893614 1012893614 457199796 457199796 427835952 965122154 965122154 945047606 945047606 711859623 709202112 944907160 944907160 864533095 353916315 353916315 886725186 990776583 992002359 1025848373 1025848373 884477033 1034859503 1034859503 544264813 762219904 762219904 478559280 699012453 699012453 938311116 938311116 286191106 988281173 988281173 557096790 735352400 655229203 655229203 606458906 722184814 1032168030 1032168030 637583385 637583385 540091137 540091137 403178124 808113033 808113033 193102132 1011389410 1011389410 1051329681 1051329681 603923401 653601753 653601753 662342069 662342069 221571508 173014164 268110472 690557280 783869732 783869732 576798064 576798064 213140568 121849512 599469345 599469345 132145504 562182305 562182305 128062304 58769968 43125264 37389328 37389328 47128464 84033896 84033896 42199056 126283888 126283888 109163528 136438020 305842850 305842850 270794756 284170098 284170098 293295266 432603332 432603332 521807414 521807414 482697646 482697646 638583683 638583683 545791600 739415119 739415119 944656133 944656133 822347811 625794408 625794408 724835526 911661723 986391316 986391316 720455094 903922155 903922155 342010115 306227268 306227268 669255688 755511409 755511409 703544805 665685128 202058180 208518740 208518740 203971364 203971364 352019444 477751182 477751182 457253046 457253046 767631597 767631597 741454245 825918740 871681011 1032949167 1032949167 903237376 903237376 267327400 245986194 438144348 863814375 1004400375 1004400375 596656432 596656432 54781889 187302260 187302260 607195216 607195216 612795709 612795709 679559244 679559244 579618065 453032410 461208358 461208358 1024457344 1024457344 702579975 555005076 677475020 677475020 664187187 625637519 394445855 8437824 8388800 4210752 1057587352 1057587352 937512351 683991146 764273024 764273024 1033112136 1033112136 269360130 287235112 287235112 428737536 428737536 209852450 149006710 492153234 492153234 291691114 291691114 495004176 495004176 397362504 338537360 220805408 90626472 90626472 82417796 82417796 76207176 195651260 195651260 179442516 787614036 787614036 772362412 772362412 872688399 872688399 739383888 739383888 649407321 45357350 260338724 260338724 100667392 131096 744134540 760399779 760399779 424335119 364012548 825309010 825309010 799614409 562267986 982995281 982995281 344595730 404394818 655652904 655652904 860790203 946632471 946632471 764754776 297740628 18948384 14165056 14165056 8980160 135819488 135819488 29591044 16777248 25707616 25707616 297828544 333472486 436387960 436387960 382429018 134792196 115185160 418528372 418528372 626332924 626332924 298368884 558073460 714898172 714898172 935990523 935990523 943811276 943811276 806606498 891839147 891839147 582249837 514880987 527569854 1016774930 1016774930 472646672 175425290 881823234 969460331 969460331 957632483 825343779 431254869 61113392 187320676 969914534 969914534 946161841 946161841 236503910 236503910 188294160 188294160 242242292 242242292 240597660 157688632 933681194 933681194 866799057 558533794 365467936 701222356 737013237 737013237 724420073 602147313 602147313 893501672 893501672 336087948 336087948 558314656 608562313 608963584 608963584 152643108 374981708 502688564 502688564 428991326 127374060 441309344 470496270 470496270 453169206 453169206 189607092 192954004 192954004 177345108 168903892 945818043 945818043 868659604 899946904 899946904 604554249 257740476 257740476 609217582 839309331 839309331 554590736 311481904 160576088 134758720 148574964 512418777 996798749 996798749 500895837 512168831 512168831 995562301 995562301 890601634 463834071 463834071 433387928 433387928 52767658 149368944 162868068 286336796 286336796 261670524 261670524 347153796 1030432538 1030432538 1028274539 1028274539 998574451 399393846 464833398 1023961848 1023961848 805308360 805308360 309201492 337532427 768157682 768157682 1028432103 1028432103 603807872 972555681 972555681 895649543 481414101 841541122 841541122 644325002 571538944 151463457 169493536 185782836 185782836 217187584 217187584 555228099 555228099 458295592 537136817 537136817 169992468 244322724 244322724 815482083 815482083 421841190 559580137 559580137 285480400 277103712 101609024 96811560 96811560 115198208 115198208 145926176 185560676 185560676 184862772 184862772 135696944 50878980 190186932 190186932 186695988 175346368 50521376 50521376 21143632 25343936 64144608 64144608 26317888 177736868 177736868 209924172 344746108 344746108 336678756 429308994 429308994 498856326 498856326 437600672 505385364 505385364 372536216 280154946 434902694 434902694 457484496 457484496 455416514 455416514 320084018 320084018 378621298 378621298 327007800 38083232 38083232 286130570 286130570 93373032 93373032 356876370 391694832 391694832 284952624 294686208 294686208 18738720 10478912 46068032 46068032 34624096 134287068 134287068 278054434 278054434 203424012 405063690 461919708 461919708 287745486 287745486 83149988 215659224 1047136774 1047136774 810083864 925310511 957698874 957698874 809786311 780192804 663489657 184861845 923503066 923503066 810547706 847385225 847385225 369795320 369795320 56657098 193200128 235409776 235409776 512918140 512918140 452158300 547905672 547905672 655958496 655958496 813770495 813770495 706816132 891578668 891578668 1066216350 1066216350 961323524 961323524 14280384 523762623 654154140 654154140 480328452 3806976 607734904 607734904 128193824 128893800 128893800 62310768 83675424 83675424 57672624 62989120 62989120 29706711 310897763 411693577 693378591 706130095 877745159 877745159 743834300 743834300 303951409 651712872 800891389 800891389 656857188 656857188 679661637 904816294 904816294 460272300 418887462 92217762 301007044 301007044 336797956 820248960 820248960 854095360 854095360 375145499 571170817 571170817 538709505 842017170 1057292632 1057292632 423629140 398671213 302287872 787741130 787741130 721945653 721945653 571347272 261131637 161633076 136763652 171055700 171055700 168880128 317227330 317227330 196641584 325592194 325592194 107025116 107025116 103823356 317855746 317855746 27037072 319642258 319642258 192946416 192946416 186874676 56660772 28565696 21255584 103810944 105383064 105383064 812798880 812798880 287758723 31740514 539932800 539932800 293640864 307626000 307626000 453120002 453120002 163627654 243520736 309625224 370461210 370461210 370198064 535716468 535716468 387455784 335675904 1064441858 1064441858 1034199776 1034199776 393101568 393101568 880351360 1019686879 1019686879 772377344 996135200 996135200 168216080 225098296 225098296 642583743 642583743 974610200 974610200 644938304 644938304 615564105 46154649 0 100691722 306048786 306048786 309430112 309430112 515426142 515426142 487295928 487295928 326313090 326313090 822188248 822188248 525500888 525500888 965806824 965806824 691817789 691817789 216119673 344525394 344525394 227746816 227746816 93071040 280199714 280199714 50964512 332361730 332361730 286335826 286335826 169097616 169097616 134677328 46270224 62529024 62529024 50406224 50406224 44115120 209189772 512283986 512283986 363689580 363689580 320030776 134361216 201326604 441652101 441652101 569706608 866414599 866414599 912112412 912112412 213358232 642391824 642391824 611584905 992054036 992054036 550781879 430303590 430303590 405988192 405988192 292192938 375496978 375496978 110163730 268978178 270896384 272113922 272113922 269032960 599040 599040 729088 729088 4740352 38440960 49818160 49818160 18169280 48756736 48756736 170323653 597336149 736150005 736150005 733354869 1073718538 1073718538 679760804 679760804 554695713 487886798 1029135786 1029135786 1016637706 141599008 33146080 19923744 19923744 958022680 1059197247 1059197247 757935232 757935232 541725185 755900205 755900205 61800560 136911472 698248740 698248740 680904773 589628980 178118932 178118932 178350400 179061184 198916256 198916256 206484672 206484672 203909384 203909384 156345092 156345092 43396 0 0 20783144 621230642 621230642 629715978 629715978 806089731 806089731 585384224 824795521 824795521 706274900 584836786 584836786 574763808 574763808 565962456 565962456 549066561 547430968 1068525683 1068525683 823971363 823971363 833114500 833114500 495578413 200554990 663696131 663696131 446633079 446633079 672581205 672581205 176739456 327617202 691350464 691350464 795939833 795939833 661856403 750830261 984654888 984654888 777364230 537783297 574238480 939307839 939307839 605106210 1006068294 1006068294 976136176 198182924 349505141 660341901 949815500 949815500 440696968 939659405 939659405 881478393 780278172 816875720 880069515 880069515 260588564 1065049702 1065049702 560253345 302298264 392485026 408332365 596978289 596978289 539744073 539744073 333421884 218692558 418825934 418825934 443877312 443877312 372484890 441617094 441617094 415422102 310927908 257635836 229455688 229455688 152066624 157991776 157991776 25740452 72335584 82184224 82184224 73155136 73155136 107423104 125508160 125508160 574758962 811598041 811598041 845181244 845181244 455737527 644023580 644023580 696463369 696463369 872755384 872755384 679395791 679395791 967341072 967341072 952239563 846212823 846212823 478470188 478470188 391031616 391031616 182732484 145039648 145039648 155662500 155662500 50754192 50754192 34912384 39789730 54875830 141677460 189186580 189186580 444731392 444731392 407520322 415945926 415945926 63542822 413400244 413400244 164033286 36650368 163720448 163720448 327279184 327279184 509084358 509084358 427892838 414652932 414652932 404517732 411379782 536915968 536915968 488324833 354990816 388993970 903914536 903914536 887360331 304533721 28529152 308909746 332111928 332111928 90350962 285804608 348962160 399016064 399016064 10780928 4474944 67244200 67244200 150430332 782515137 782515137 519256793 572731770 572731770 805315070 861995586 861995586 450502922 689643168 1029647535 1029647535 947252103 947252103 632034174 554413846 554413846 386450719 427835952 850842449 850842449 818859072 945047606 945047606 711859623 709202112 944907160 944907160 864533095 841304630 841304630 676759199 609609745 592299734 810872537 884477033 884477033 1034859503 1034859503 296736068 783550624 783550624 948181049 948181049 529081470 51320910 42542160 42542160 42532864 8699904 58910864 735352400 545786176 545786176 539757825 722184814 722184814 572859202 637583385 637583385 293777985 62193731 823164961 823164961 808113033 193102132 1011389410 1011389410 1051329681 1051329681 603923401 653601753 653601753 662342069 662342069 640595448 164175248 268110472 268110472 92478588 86644008 86644008 94445928 94445928 21177792 125944704 132145504 132145504 78664000 128062304 128062304 48367792 44850496 44850496 42067984 12347392 12347392 8773120 8689728 130832600 130832600 124759528 132120592 305842850 305842850 157960688 237767964 338362510 338362510 293295266 223531692 521807414 521807414 300151266 300151266 638583683 638583683 272894082 577981218 577981218 808843713 808843713 877737795 877737795 608834760 608834760 416786703 714689997 714689997 687915174 809500803 809500803 398841931 461465788 461465788 669255688 669255688 79709049 144725512 207536708 207536708 149612544 81148672 150000308 185589492 352019444 477751182 684073466 684073466 585699301 805779459 878357715 915456603 915456603 871681011 1032949167 1032949167 903237376 903237376 267327400 409480660 438144348 438144348 146702738 710125010 710125010 596656432 270542274 270542274 427952230 427952230 415250528 415250528 321136900 309204226 579618065 579618065 453032410 461208358 461208358 1024457344 1024457344 702579975 555005076 621467779 621467779 366916594 725643907 725643907 939383227 939383227 984654365 984654365 937512351 937512351 831387456 831387456 654436837 1033112136 1033112136 269360130 951409217 951409217 428737536 428737536 257109330 128488928 173442376 234932412 336255736 336255736 495004176 495004176 357477768 357477768 220805408 124147188 124147188 249926512 249926512 199517608 147424256 621169889 621169889 569639624 569639624 865686210 865686210 872688399 872688399 739383888 739383888 649407321 806862708 806862708 826795257 1041656368 1041656368 750377512 760399779 760399779 1014125065 1014125065 825309010 825309010 733081973 990086916 990086916 982995281 344595730 404394818 655652904 655652904 860790203 946632471 946632471 764754776 297740628 258432472 258432472 200283652 200283652 165205992 165205992 86915976 84286792 94341384 94341384 79808488 79808488 436387960 436387960 292343202 392546162 392546162 866681663 866681663 717234522 626332924 173273748 558073460 558073460 525383191 935990523 935990523 831176881 639664480 806606498 891839147 891839147 582249837 514880987 696919600 861878173 861878173 504417473 175425290 257052680 923178397 923178397 514230286 413682004 862114081 862114081 268734514 969914534 969914534 824181045 824181045 236503910 236503910 112249708 121703144 121703144 99873768 125287008 125287008 821256459 821256459 1002986740 1002986740 864195684 701222356 737013237 737013237 724420073 602147313 635374852 893501672 893501672 18164256 184752180 545005568 608562313 608963584 608963584 493829298 328504384 502688564 502688564 471111890 471111890 441309344 470496270 470496270 382117008 378034060 378034060 330876024 330876024 297082880 150415760 46209092 170004756 249567696 249567696 30671864 257739296 257740476 257740476 789591694 789591694 408041663 274146312 0 134758720 134758720 134222420 134222420 205652188 205652188 30421568 345035364 345035364 440490112 440490112 403776006 850244864 850244864 274199828 274199828 83007618 149368944 162868068 286336796 826274117 826274117 805779971 672023856 1030432538 1030432538 1028274539 1028274539 998574451 627607826 304367017 261621372 287411382 906020816 906020816 309201492 337532427 768157682 768157682 828632148 828632148 262353276 262353276 634193268 634193268 472662529 841541122 841541122 867097971 867097971 849257795 872579095 872579095 478676644 739120199 739120199 349939210 504431154 504431154 419957812 387785246 169992468 244322724 244322724 374478670 409611160 421841190 421841190 379080988 73447312 101609024 101609024 81863952 21656832 21656832 855400339 855400339 148726624 139681888 139681888 805474832 805515267 805515267 863683632 863683632 839785091 822084640 40315748 11105952 16781488 25343936 64144608 64144608 48589824 48589824 51045500 209924172 386856960 386856960 386475066 429308994 429308994 498856326 498856326 437600672 464153526 464153526 277879678 280154946 306599876 306599876 417741222 446902614 455416514 455416514 320084018 320084018 378621298 378621298 327007800 5692160 106716912 286130570 286130570 48402552 92654202 389011392 391694832 391694832 315150114 315150114 294686208 28845056 53369680 54104896 54104896 10398224 134287068 134287068 106702984 88866952 96994536 250451184 461919708 461919708 287745486 506815635 712563661 787699657 1047136774 1047136774 538590225 925310511 957698874 957698874 1040189076 1040189076 694158756 883821136 943331161 978470604 978470604 847385225 847385225 191025588 191025588 295859674 295859674 193013760 110281536 110281536 379752760 396546426 547905672 547905672 173044553 612524708 612524708 251741121 0 891578668 891578668 991325450 991325450 661287801 661287801 777200192 777200192 558959333 558959333 561587645 658770105 658770105 646320352 117624336 128975736 128975736 51955248 51955248 48267912 336143370 336143370 489161188 489161188 539582532 539582532 141186452 268470272 877745159 877745159 823407673 354200622 354200622 155336838 722215456 722215456 575481013 18951153 17351712 301684134 301684134 615538799 615538799 422699814 437699350 457564594 457564594 879870875 961812598 961812598 852135560 852135560 571170817 571170817 538709505 842017170 1057292632 1057292632 619249787 619249787 738772709 960188726 960188726 1055448379 1055448379 571347272 1034202224 1034202224 862068576 862068576 731693376 430592656 168880128 196641584 196641584 172565652 155264548 107025116 205640808 205640808 110251548 106670768 106670768 83365632 94497928 192946416 192946416 186874676 56660772 163604960 163604960 87704064 87704064 86693160 812798880 812798880 287758723 31740514 639785620 639785620 293640864 307626000 307626000 453120002 453120002 315643724 315643724 431198766 431198766 341577032 370198064 535716468 535716468 387455784 965263992 1064441858 1064441858 507404305 494114070 826908522 826908522 350191323 721532796 849880760 849880760 996135200 996135200 728949286 726548529 877087651 877087651 291945099 307180592 307180592 644938304 644938304 615564105 537436691 854664147 854664147 572614594 306048786 309430112 309430112 515426142 515426142 113419176 375076019 926100643 926100643 822188248 822188248 659816985 659816985 302915104 302915104 513219546 926777654 926777654 817194090 817194090 356202282 356202282 355855146 575848691 575848691 118839608 1036678778 1036678778 553679843 517997668 517997668 1061107789 1061107789 915553056 780272333 567850165 567850165 49997168 551641953 551641953 209189772 25688524 161657440 168841880 168841880 89346092 201326604 201326604 262345296 262345296 177614912 177614912 102530392 102530392 182988672 292138914 303232674 1036381132 1036381132 982052807 359777991 84301842 132096 660480 660480 1573888 1709568 34308688 34308688 269520128 269520128 4123138 2602848 27906304 27906304 599040 729088 729088 4740352 4740352 49818160 49818160 36111760 14625040 56808916 183161264 183161264 189392052 189392052 347004234 398461232 398461232 549684522 554695713 889952480 889952480 882434059 344785792 141599008 141599008 68314803 933368187 933368187 652353435 390994106 390994106 407506053 407506053 259658254 755900205 755900205 322162226 657630537 824600930 824600930 680904773 607977833 607977833 565230176 880892448 880892448 836053731 836053731 685142628 535439280 142201732 147508484 189732704 189732704 224705992 224705992 55862636 160226968 160226968 75759376 629715978 629715978 806089731 806089731 573694737 809559589 809559589 706274900 439039254 382296898 574763808 574763808 574754947 565962456 549066561 301096115 297616494 387489820 637195406 637195406 833114500 833114500 495578413 223902048 663696131 663696131 817465456 817465456 293899318 450238004 450238004 327617202 691350464 691350464 677772181 654491817 654491817 390070458 900184664 900184664 83435912 370534304 574238480 939307839 939307839 477137649 372629112 296432994 198182924 198182924 320430084 320430084 692312635 692312635 440696968 939659405 939659405 258291456 780278172 780278172 415715607 260588564 260588564 1065049702 1065049702 919651035 667507505 667507505 408332365 596978289 596978289 594592348 630221416 630221416 136001028 537938976 589089281 589089281 826607680 826607680 834935235 837028323 837028323 828769760 244122024 229455688 229455688 152066624 152066624 26851552 25740452 96735616 96735616 70190080 70190080 32085248 104408864 104408864 118563328 574758962 574758962 406423134 845181244 845181244 455737527 644023580 644023580 696463369 696463369 872755384 872755384 428421139 627163376 967341072 967341072 824749744 824749744 377472866 684055368 745747341 745747341 691472418 691472418 421632449 145039648 155662500 155662500 134588420 134569984 18041904 39789730 54875830 141677460 189186580 189186580 405348928 456658374 456658374 306446384 306446384 13998276 63474336 63474336 429430274 429430274 163720448 163720448 327279184 327279184 509084358 509084358 220478252 361080574 361080574 233042412 194749980 536915968 672990307 672990307 848303210 848303210 903914536 903914536 887360331 658539044 665435007 665435007 332111928 371438371 796441396 796441396 816431648 885137828 885137828 306934898 306934898 306918546 290180224 116915064 782515137 782515137 519256793 467338322 638260714 1009411381 1052891080 1052891080 450502922 689643168 1029647535 1029647535 505277982 632034174 632034174 554413846 554413846 471926552 338875146 850842449 850842449 432312640 538976944 538976944 942979382 942979382 603580401 452653959 298005764 841304630 841304630 852540288 852540288 815792451 475646624 694438184 742441101 742441101 900055083 900055083 783550624 783550624 948181049 948181049 254729532 359757269 359757269 305891074 553232211 735610306 735610306 302751828 79809914 325922226 325922226 537657600 537657600 907338058 907338058 580954650 580954650 344253305 823164961 1058088440 1058088440 1047221407 1047221407 460490343 197137030 145350208 145350208 226829836 600321352 600321352 738071544 738071544 732448801 706066404 706066404 776538692 776538692 742785380 742785380 257633812 257633812 659942449 659942449 170939932 590353045 590353045 233832612 155207856 155207856 48125824 49851840 49851840 37235008 37235008 68288532 163726532 265051372 265051372 250086884 182600080 356119748 417428006 417428006 338362510 338362510 140467588 110558508 200005204 290076432 300151266 300151266 287522816 16777248 21110016 21110016 817240256 817240256 562172001 877737795 877737795 616771785 608834760 416786703 714689997 714689997 879178153 879178153 829924099 398841931 461465788 461465788 895578198 895578198 801560829 801560829 598381764 207536708 140960196 140960196 132283320 263758916 343760056 370485786 684073466 684073466 585699301 805779459 878357715 915456603 915456603 638767641 638767641 297488411 411841432 453876808 453876808 409480660 409480660 433891824 433891824 955277034 955277034 666580857 389463905 270542274 427952230 427952230 415250528 415250528 321136900 309204226 365217216 365217216 346955082 242250192 438341648 438341648 329667968 466037370 466037370 621467779 621467779 742462435 742462435 725643907 939383227 939383227 984654365 984654365 628491882 408473748 831387456 831387456 654436837 898679403 898679403 115401674 951409217 951409217 340363054 257109330 362318216 362318216 361759338 37748880 336255736 336255736 333188850 131519498 357477768 357477768 140533108 140533108 124147188 249926512 249926512 240038080 152984824 621169889 621169889 569639624 569639624 865686210 865686210 826746388 682010832 682010832 280265046 430518858 806862708 806862708 826795257 1041656368 1041656368 750377512 750377512 694253100 1014125065 1014125065 807404072 733081973 733081973 990086916 990086916 202391623 44439888 34603536 740202260 740202260 738722829 738722829 269026048 269026048 84598432 258432472 258432472 200283652 200283652 165205992 165205992 86915976 84286792 94341384 100252424 100252424 79808488 342460064 342460064 292343202 392546162 449849046 866681663 866681663 760420980 1061384765 1061384765 882438239 668603611 755750040 966313525 966313525 906345523 639664480 639664480 399249697 407676968 407676968 352491390 1070846350 1070846350 861878173 504417473 201856256 257052680 923178397 923178397 514230286 413682004 864162017 864162017 864026961 864026961 142902176 185862708 1049658990 1049658990 610059044 673202490 673202490 661914234 193202228 170138388 163263760 821256459 821256459 1002986740 1002986740 864195684 277349376 822895654 822895654 977628468 977628468 635374852 635374852 142360301 18164256 184752180 288105642 288105642 172878624 977338413 977338413 328504384 654671160 728190237 739025285 780656661 780656661 1009216818 1009216818 833129539 791058742 378034060 330876024 330876024 297082880 211684900 882452163 882452163 779901328 885106995 885106995 627912105 91292025 377619160 789591694 1061487238 1061487238 536940128 295451156 328606289 931234859 995194615 995194615 990995373 990995373 881452107 881452107 901775595 901775595 801643671 1052037450 1052037450 961901300 779854291 779854291 784771326 784771326 61184317 287441170 826274117 826274117 883954752 883954752 186655042 182452530 687939724 687939724 627607826 627607826 304367017 261621372 261621372 906020816 906020816 311853592 36458576 911309404 952555719 1014227035 1014227035 397675386 397675386 634193268 634193268 195570921 10724680 572562530 996227568 996227568 849257795 872579095 872579095 478676644 739120199 739120199 738462377 738462377 504431154 945951531 945951531 500047430 312111858 314088054 616306391 616306391 110748184 591323049 591323049 432568876 368670336 81863952 81863952 21656832 21656832 855400339 855400339 200000548 200000548 148009712 805474832 805515267 805515267 863683632 863683632 839785091 822084640 32506848 200940660 308842912 311352402 311352402 273634576 73883384 73883384 80871096 80871096 487911448 487911448 468476462 468476462 325152046 325152046 289442048 403307916 403307916 336616706 336616706 297386528 297386528 291645824 291645824 180564018 283202836 283202836 137077522 46465744 42804288 107256344 107256344 7775232 106716912 121455944 121455944 48402552 48402552 389011392 389011392 294910480 315150114 315150114 28361568 101615128 101615128 54104896 117718800 117718800 111708416 113676954 297090034 297090034 294991106 291976450 115830032 105202706 386874432 506815635 712563661 787699657 1019986702 1019986702 222613204 136494114 261017652 449877264 1040189076 1040189076 912836056 912836056 943331161 978470604 978470604 515426142 253285862 191025588 191025588 425810970 491004040 491004040 503374180 503374180 413835012 523131252 523131252 699614088 734774997 734774997 326979698 326979698 198364912 163595488 448373698 991325450 991325450 490565173 230782805 777200192 777200192 558959333 558959333 561587645 658770105 658770105 646320352 87032808 128975736 128975736 51955248 51955248 48267912 336143370 336143370 489161188 489161188 539582532 539582532 341865648 279622094 637827628 823407673 823407673 354200622 354200622 155336838 789317640 789317640 135007317 229475592 229475592 153740580 112992380 615538799 615538799 422699814 437699350 457564594 457564594 879870875 961812598 961812598 852135560 852135560 335682257 42096666 33573376 1048576 0 0 619249787 619249787 738772709 960188726 960188726 1055448379 1055448379 539859294 1034202224 1034202224 862068576 862068576 731693376 430592656 41714112 65276400 65276400 61874464 193367120 193367120 205640808 205640808 177082576 177082576 106670768 83365632 138733600 163799296 163799296 142709344 177968872 177968872 163604960 389202682 887352242 887352242 414970117 414970117 55070512 572683264 639785620 639785620 1049208174 1049208174 378662954 848074322 848074322 560668192 315643724 894894291 894894291 654731102 867604277 867604277 1011538213 1011538213 965263992 965263992 906018944 369131776 469762062 826908522 826908522 350191323 721532796 849880760 849880760 436839296 728949286 728949286 726548529 877087651 877087651 304006675 335850240 374582201 621334371 821589313 821589313 545310594 854664147 854664147 572614594 150495560 190367076 240133392 240133392 209266572 113419176 375076019 926100643 926100643 575017552 575017552 659816985 659816985 403705446 403705446 513219546 926777654 926777654 817194090 817194090 356202282 356202282 914173329 914173329 817685320 118839608 1036678778 1036678778 553679843 517997668 517997668 1061107789 1061107789 915553056 780272333 567850165 567850165 49997168 551641953 551641953 7736064 239098752 239098752 240797720 240797720 148394124 148394124 209704612 209704612 252296872 252296872 240365150 248498521 950397255 950397255 730686880 965155285 1036381132 1036381132 982052807 805306371 540901418 87894824 270668034 288540458 288540458 339240458 339240458 68606210 269520128 272411138 272411138 304990560 304990560 42174880 42174880 52992848 62131056 62131056 56022048 56022048 40656256 41944272 65542016 65542016 183161264 692290373 692290373 674008485 675805317 688144448 688144448 679261316 679261316 889952480 889952480 882434059 807586560 807586560 85274306 68314803 933368187 933368187 652353435 390994106 390994106 407506053 407506053 152178696 152178696 87897384 322162226 657630537 824600930 824600930 5874369 607977833 607977833 565230176 880892448 880892448 836053731 836053731 685142628 535439280 103887760 72041860 189732704 189732704 658634905 658634905 651078328 651078328 618659465 654046536 654046536 592056544 51073137 573097488 573694737 573694737 548504513 518591321 439039254 372965766 342430675 574754947 574754947 318118866 806690667 947498368 947498368 809265826 764003364 197851920 75502696 816574444 816574444 769064206 895040784 895040784 817465456 817465456 293899318 450238004 450238004 538223088 592829205 592829205 591577264 654491817 654491817 537938112 566914464 566914464 558198784 593738112 593738112 595628952 595628952 963489257 963489257 881478176 881478176 465180534 465180534 302343696 417107640 417107640 370271762 260130314 258291456 258291456 237503772 474690702 742989022 742989022 584589293 817082776 919651035 919651035 667507505 667507505 475298116 475298116 169354173 594592348 746464458 785097083 785097083 686167941 589089281 714147856 826607680 826607680 834935235 837028323 837028323 828769760 49284048 175376512 175376512 146800836 4195328 4719744 27309632 96735616 96735616 131635472 131635472 96920336 96920336 55255552 55255552 102958219 404992030 475087830 579302720 579302720 342718489 688692636 861046963 899323985 899323985 860113035 275645491 411447565 639881280 639881280 317243931 979919826 1007008875 1007008875 684055368 745747341 745747341 691472418 835421569 835421569 10817860 270582018 270582018 268525824 134569984 1617664 2831616 2831616 12685248 277012608 321386818 405348928 456658374 456658374 306446384 306446384 150998132 188359716 198167732 429430274 429430274 37746810 6437912 204472368 204472368 154413112 157750832 157750832 361080574 361080574 233042412 194749980 573381760 672990307 672990307 848303210 957875318 957875318 848823891 658539044 658539044 665435007 665435007 287966224 371438371 796441396 796441396 816431648 885137828 885137828 306934898 306934898 306918546 348606590 461510742 528746622 528746622 501994636 467338322 638260714 1009411381 1052891080 1052891080 138478298 206705292 1032399644 1032399644 370132513 168642846 49468896 1019304496 1019304496 471926552 338875146 338875146 166229130 497283438 538976944 727199940 942979382 942979382 603580401 920726479 920726479 759700106 762327776 852540288 852540288 844137752 811090134 811090134 742441101 742441101 900055083 900055083 780159044 764186416 354515990 354515990 254729532 359757269 359757269 305891074 553232211 735610306 735610306 302751828 353093921 353093921 325922226 236991616 236991616 907338058 907338058 580954650 580954650 344253305 479900170 1058088440 1058088440 1047221407 1047221407 460490343 555583585 555583585 145350208 554870369 600321352 692865344 738071544 738071544 732448801 706066404 706066404 776538692 776538692 742785380 742785380 257633812 362806898 659942449 659942449 449008714 590353045 590353045 233832612 320268848 320268848 293041842 270741762 311443026 311443026 279839568 68288532 163726532 265051372 265051372 250086884 506927630 506927630 417428006 417428006 277748802 272107266 272107266 1171968 49597264 293694688 293694688 287522816 287522816 852140064 852140064 811278563 817240256 871287856 871287856 866698611 616771785 753535068 753535068 1040005607 1040005607 590822185 879178153 879178153 829924099 808216371 937781243 937781243 996872508 996872508 801560829 801560829 598381764 578864249 176308252 547732037 547732037 263758916 343760056 353047738 353047738 62668618 726549296 726549296 679403397 198316788 651296996 651296996 652937066 893499199 893499199 932535726 932535726 545582296 467840476 519980386 519980386 955277034 955277034 666580857 389463905 88123114 120544576 120544576 63540272 167905748 167905748 223232508 365217216 365217216 346955082 126781802 438341648 438341648 310565520 466037370 466037370 260477810 420903000 742462435 742462435 60174944 60174944 372399024 372399024 597854633 597854633 691187536 754702741 754702741 742656141 686632389 686632389 347466893 738823171 738823171 167698404 272629920 362318216 362318216 361759338 37748880 511576562 511576562 415147234 415147234 368650218 290649416 141197712 141197712 69315908 203613532 240038080 240038080 152984824 149850052 183699796 183699796 182790612 167846964 980162192 980162192 682010832 682010832 161964097 159905892 153366624 145176900 129110904 932520312 932520312 52084241 824287001 824287001 806556243 807404072 855753235 886520453 886520453 319268400 319268400 243640594 804093068 804093068 740202260 740202260 738722829 1040611342 1040611342 544527004 475006104 67422920 67422920 164910112 223919460 223919460 94640552 271058466 366470346 366470346 286127626 286127626 392275272 392275272 342460064 27266212 223194184 449849046 449849046 433004738 760420980 1061384765 1061384765 882438239 756286083 755750040 1008187101 1008187101 906345523 285222933 638335122 638335122 609172617 407676968 352491390 1070846350 1070846350 364049211 106184866 201856256 255721992 506659040 506659040 660480 285364386 864162017 864162017 864026961 864026961 407160966 193423698 1049658990 1049658990 610059044 673202490 673202490 661914234 193202228 170138388 163263760 104036656 600477824 600477824 599970033 43680960 186895670 822895654 822895654 977628468 977628468 166062336 166062336 154560037 413596742 413596742 1068066450 1068066450 588301580 977338413 977338413 359711658 654671160 728190237 739025285 780656661 780656661 1009216818 1009216818 833129539 791058742 9681076 23892512 29281856 211684900 211684900 882452163 882452163 779901328 885106995 885106995 627912105 129287480 377619160 377619160 1061487238 1061487238 536940128 295451156 328606289 931234859 995194615 995194615 990995373 990995373 881452107 881452107 901775595 901775595 801643671 1052037450 1052037450 961901300 779854291 851843353 851843353 911515872 919726931 1067152162 1067152162 471459342 883954752 883954752 439563030 996357925 996357925 687939724 873389347 873389347 1040206387 1040206387 295747690 492162396 890280842 1017191968 1017191968 911309404 952555719 1014227035 1014227035 1023801935 1023801935 923583408 923583408 32676337 10724680 35969384 996227568 996227568 456030466 456030466 180372758 49864388 156175936 156175936 738462377 738462377 156238500 945951531 945951531 500047430 312111858 314088054 616306391 616306391 354208362 591323049 591323049 432568876 368670336 121903104 126782376 126782376 90410304 41405056 46289216 200000548 200000548 148009712 451871632 451871632 277280900 188544948 329433204 422674630 422674630 32506848 200940660 308842912 311352402 311352402 273634576 73883384 73883384 80871096 80871096 487911448 487911448 468476462 468476462 325152046 492605540 492605540 403307916 403307916 336616706 336616706 297386528 297386528 193162820 268844496 268844496 449491348 449491348 436744064 436744064 316669058 317781072 317781072 36871808 310579712 310579712 291553280 302630882 302630882 327662104 327662104 294910480 294910480 273643490 119088696 205064312 220987980 220987980 128484864 128484864 255368188 255368188 297090034 297090034 294991106 291976450 237129204 256760822 386874432 386874432 140167900 204589396 204589396 222613204 222613204 84411968 261017652 440587284 643883320 643883320 912836056 912836056 979624675 979624675 936643990 936643990 871041290 808856495 753453542 425810970 491004040 491004040 503374180 503374180 413835012 523131252 523131252 699614088 734774997 734774997 925375087 925375087 892710703 892710703 738236162 448373698 956281620 956281620 633349428 788133085 788133085 708421836 145302852 145302852 27585572 98568680 98568680 87032808 87032808 3165968 103859456 110660320 110660320 209506188 238404920 238404920 446908740 446908740 737161716 737161716 532289406 532289406 285429877 260262101 156279472 156279472 257445100 789317640 789317640 550503056 246084796 246084796 153740580 112992380 85375040 85375040 774734938 774734938 355557679 274727434 472916364 487600804 863976522 890724736 890724736 325623266 814706759 814706759 620444934 971180492 971180492 821095890 821095890 960780421 960780421 554507545 554507545 140103012 605967820 742169033 742169033 673879365 673879365 149029248 717882900 717882900 584713284 65276400 25457216 193367120 193367120 172263536 172544176 177082576 177082576 57679776 171945732 171945732 167847908 163799296 151778788 177968872 177968872 136060436 389202682 887352242 887352242 414970117 539437360 874858568 874858568 867129442 579442032 1049208174 1049208174 672944250 848074322 966896181 966896181 873932338 894894291 894894291 654731102 867604277 867604277 1011538213 1011538213 514732414 514732414 167909674 6816000 6816000 19398704 329384752 329384752 180944622 578224586 578224586 654561545 658321209 658321209 593195912 608864426 608864426 806613248 806613248 374582201 621334371 821589313 821589313 545310594 346772502 499371402 499371402 495096470 388371238 388368584 408659494 408659494 292819198 112696242 398532402 398532402 339771904 348369472 512030870 512030870 403705446 403705446 399018648 277906954 277906954 267800064 267800064 127015456 315739347 914173329 914173329 817685320 590422833 590422833 317540554 410822878 410822878 8389136 34603072 34603072 11732480 11732480 18816544 18816544 18093600 34869520 751355085 751355085 751355085 239098752 533090058 533090058 349596476 349596476 701131341 701131341 373956260 508695198 545655519 545655519 950397255 950397255 730686880 965155285 965155285 844227219 805388947 805306371 540901418 87894824 270668034 288540458 288540458 339240458 339240458 68606210 2369024 272411138 272411138 304990560 304990560 42174880 42174880 52992848 62131056 62131056 56022048 56022048 24197008 41944272 65542016 65542016 160978865 692290373 692290373 674008485 675805317 688144448 688144448 679261316 679261316 693272981 693272981 806754819 807586560 807586560 405199110 276828930 412090950 412090950 162613282 2924800 17386784 18658336 18658336 18486048 18486048 2754048 2097152 3481600 3481600 3410688 7610368 7678848 7678848 7602304 5330176 2794112 4317312 4317312 4284800 248817040 248817040 38331228 110758456 110758456 658634905 658634905 651078328 651078328 618659465 654046536 654046536 355353195 355353195 828842690 828842690 356617193 708729295 708729295 448897239 406017434 840968128 840968128 586313032 507033696 806690667 947498368 947498368 809265826 764003364 598304934 999367287 999367287 816574444 769064206 895040784 895040784 584203557 889590973 889590973 859121989 859121989 814195058 951118115 951118115 409225254 409225254 538099840 538099840 566914464 566914464 558198784 593738112 593738112 595628952 595628952 963489257 963489257 881478176 881478176 465180534 465180534 457483860 457483860 218942642 189792948 133222421 772948176 772948176 752014029 474690702 742989022 949964032 951317319 951317319 659669691 659669691 814694088 814694088 807353859 517682643 145139758 156311872 746464458 785097083 785097083 740609672 740609672 714147856 714147856 152582368 152582368 194435700 194435700 38949748 167061716 167061716 146797764 152003716 152086752 152086752 30961376 27309632 90444264 131635472 172382164 172382164 96920336 148163546 506776350 506776350 404992030 475087830 579302720 579302720 457399710 688692636 861046963 899323985 899323985 860113035 907390631 907390631 639881280 639881280 839531840 979919826 1007008875 1007008875 628859683 628859683 611468704 611468704 835421569 835421569 7094658 270582018 270582018 268525824 54151968 54151968 54006144 346889350 495565694 495565694 355325088 355325088 315431718 169241994 281807488 395971180 489171160 489171160 198167732 226005052 435076738 435076738 654392421 654392421 207752124 657921833 657921833 528095258 78986148 62441328 625443315 625443315 612757370 871830394 871830394 277348416 957875318 957875318 848823891 444745319 515903712 515903712 29491422 287966224 355095608 355095608 802272172 802272172 426267519 505660544 562700403 562700403 1007239381 1007239381 958490375 705765690 528746622 501994636 404676102 363732330 507645428 507645428 261302136 247935604 529503798 1032399644 1032399644 921024689 921024689 49468896 1019304496 1019304496 947151584 874576509 913727443 913727443 743420581 525176422 727199940 727199940 654365129 654365129 920726479 936516350 936516350 795269565 762327776 844137752 844137752 811090134 811090134 622574356 809809050 809809050 545105816 545105816 469124079 143497436 143497436 604064176 604064176 603082889 584530641 985235510 985235510 563201920 852508593 353093921 897388288 897388288 236991616 236991616 629785705 629785705 204851200 184672308 820618738 919265980 919265980 731444252 1072255200 1072255200 298370786 555583585 555583585 22334112 554870369 554870369 692865344 692865344 572588516 572588516 183975316 639112884 639112884 720188760 720188760 563657120 253297736 362806898 362806898 25769480 449008714 449008714 188876884 51387236 320268848 320268848 293041842 270741762 311443026 311443026 279839568 46090048 91701208 91701208 162445672 185283126 506927630 506927630 372521422 347079498 347079498 272107266 289561680 318511114 318511114 293694688 293694688 577932608 819325923 852140064 852140064 812785216 817105763 871287856 871287856 866698611 551259842 753535068 753535068 1040005607 1040005607 453645358 453645358 632701897 808216371 808216371 937781243 937781243 996872508 996872508 562067979 538067072 578864249 578864249 176308252 547732037 547732037 247332200 247332200 91427640 91427640 147855300 726549296 726549296 679403397 198316788 651296996 651296996 652937066 893499199 893499199 932535726 932535726 545582296 467840476 519980386 519980386 519781020 921377834 935520723 935520723 75839584 323297642 323297642 292472836 406912480 442653400 442653400 490072410 490072410 308937194 308937194 407244800 407244800 269885456 269885456 279428934 281153730 281153730 273773416 73630208 22229664 21442720 285509632 335585280 335585280 551222600 691187536 754702741 754702741 742656141 686632389 686632389 347466893 269822466 477715106 477715106 287359246 487196072 487196072 357045674 357045674 511576562 511576562 415147234 415147234 470111872 470111872 215484734 141197712 69315908 82766224 141349860 141349860 181668564 181668564 40896836 38587536 66514176 66514176 980162192 980162192 941364768 138030608 973478420 973478420 153366624 145176900 129110904 1009226696 1009226696 52084241 824287001 824287001 806556243 622879559 855753235 886520453 886520453 319268400 319268400 243640594 804093068 804093068 548719425 625108753 625108753 1040611342 1040611342 544527004 475006104 16810560 26264160 407504918 407504918 223919460 471932334 471932334 366470346 366470346 286127626 286127626 392275272 392275272 530589292 530589292 432013744 416589337 1019303667 1019303667 847319693 411381984 970847915 970847915 756286083 744040077 1008187101 1041582225 1041582225 700465359 638335122 638335122 820580136 820580136 443905909 246503991 246503991 291680524 291680524 438375046 438375046 604705567 604705567 377173914 823378323 823378323 92323944 344195236 407160966 407160966 728446389 900337784 939578431 939578431 175297428 1061733526 1061733526 979002596 979002596 865165554 865165554 852033659 160189559 545705220 545705220 34412768 596071716 730043653 730043653 743399772 743399772 715905040 715905040 413596742 413596742 1068066450 1068066450 588301580 588301580 359711658 402688144 402688144 525411006 525411006 259105194 474137220 840671790 840671790 484982196 473708914 473708914 261830268 152582488 303973552 403375712 408630918 408630918 267262852 338457952 338457952 373610538 373610538 226758468 226758468 322503192 322503192 508667444 508667444 114302256 121700776 121700776 151557060 151557060 213636668 213636668 101868680 101868680 33941520 555794996 689146599 689146599 967606406 980071873 980071873 851843353 911515872 919726931 1067152162 1067152162 806073863 772637283 714528209 714528209 996357925 996357925 910213559 873389347 873389347 1040206387 1040206387 301572208 730476959 890280842 1017191968 1017191968 1034119447 1034119447 733102978 865388306 1023801935 1023801935 923583408 923583408 555376801 14411456 43221712 953687680 953687680 946892406 946892406 185616374 18923648 102862528 450783254 450783254 308407750 305603346 443617684 497425170 497425170 141711622 136391080 136391080 287558944 354208362 496269092 496269092 144233516 121903104 121903104 126782376 126782376 90410304 41405056 41405056 31541632 31541632 38571456 451871632 451871632 42517584 42517584 34394240 34394240 27808032 27808032 9098304 4380720 448512 126131976 126131976 110288168 63530064 52962240 6381952 236702608 236702608 95238168 61478256 277223936 492605540 492605540 448589944 448589944 423480362 136329580 136329580 163983600 163983600 268844496 268844496 449491348 449491348 436744064 436744064 316669058 317781072 317781072 36871808 310579712 310579712 291553280 302630882 302630882 327662104 327662104 180726352 180726352 680798977 680798977 643432632 643432632 220987980 207566360 207566360 255368188 255368188 675599792 675599792 644514444 237129204 237129204 256760822 256760822 101001314 279347644 485148738 485148738 143852418 139074588 177226832 177226832 168465000 643883320 643883320 659636369 693489544 979624675 979624675 936643990 936643990 871041290 808856495 753453542 381996232 381996232 35744084 35744084 136596852 136596852 61607280 100999496 100999496 557711349 715393365 925375087 925375087 892710703 892710703 805376595 437526852 1067955628 1067955628 633349428 788133085 788133085 708421836 475400302 380422806 328218048 328218048 101565960 92324944 72164632 59885800 103859456 245563148 245563148 209506188 238404920 238404920 446908740 446908740 737161716 737161716 532289406 532289406 319099936 319099936 488318874 488318874 426585510 551617793 551617793 550503056 613472528 756023853 757993076 757993076 195170676 85375040 856405542 856405542 403387414 403387414 472916364 588912057 863976522 890724736 890724736 325623266 814706759 814706759 620444934 971180492 971180492 821095890 821095890 960780421 960780421 554507545 554507545 194304628 605967820 742169033 742169033 673879365 673879365 149029248 717882900 717882900 584713284 40937552 40937552 9313344 50914320 50914320 17729568 38914208 57679776 57679776 171945732 171945732 167847908 151778788 151778788 136790016 136790016 136060436 235480092 236203520 236203520 403491397 564594720 1059416417 1059416417 867129442 688563447 688563447 915801093 915801093 386739258 966896181 966896181 873932338 582482769 262249005 522419438 558809658 558809658 712121482 897193663 897193663 354945825 830607459 830607459 865590499 865590499 329384752 329384752 180944622 226345668 835745600 835745600 690082853 690082853 593195912 593195912 89482761 806613248 806613248 91223179 343715314 401897848 501795642 501795642 346772502 499371402 499371402 495096470 388371238 388368584 408659494 470800928 495136878 495136878 398532402 398532402 339771904 391254714 391254714 482778196 482778196 119293976 135044840 277906954 277906954 184862764 134586416 345190986 345190986 270545736 571565072 571565072 590422833 1044401531 1044401531 166514148 313599120 313599120 931869517 931869517 916664436 773918989 554107701 554107701 40582288 538846097 751355085 751355085 751355085 180267499 1041302152 1041302152 509301679 988333172 988333172 701131341 373956260 508695198 545655519 545655519 69226786 164530132 164530132 733124000 733124000 716752725 714020165 412650896 412650896 3929856 3929856 3904256 3313664 321792 280576 2362368 2696448 2720256 8944128 8944128 64508416 64508416 7992832 19633072 39446160 50351616 52219440 52219440 24197008 34541312 327624274 327624274 66546688 311909072 330470354 330470354 308880786 355308698 355308698 512983902 512983902 444637324 209907790 268509186 478400588 478400588 405199110 276828930 412090950 412090950 162613282 306294918 307519636 307519636 168210576 189927576 189927576 85481778 320521778 320521778 806619395 806619395 7610368 627124393 627124393 565548256 891134976 899250240 899250240 837212643 559766884 403579876 248817040 38331228 110758456 256923548 256923548 210943436 210943436 163891624 8519696 581149448 581149448 355353195 355353195 828842690 844791248 844791248 708729295 868253938 868253938 812306846 840968128 840968128 586313032 507033696 481633377 154953503 50364416 582456576 598304934 598304934 999367287 999367287 959200932 819344099 363025120 569777121 584203557 889590973 889590973 1018944235 1018944235 814195058 992070483 992070483 706151585 569167205 538099840 727342065 727342065 573048081 573048081 588624032 588624032 46813360 237071462 388498746 388498746 403052550 403052550 475915400 475915400 457483860 457483860 500308762 500308762 227826970 772948176 772948176 752014029 774712605 774712605 949964032 951317319 951317319 850545030 850545030 814694088 911755361 911755361 517682643 591661125 591661125 289784333 549956291 550847169 740609672 740609672 690393252 193369189 168610836 570465281 570465281 563479073 553914560 167061716 167061716 146797764 152003716 152086752 152086752 30961376 15757376 15757376 200881176 200881176 172382164 111708536 148163546 506776350 506776350 226528222 128032864 1005076814 1005076814 710984101 641096506 844142739 844142739 410918790 696192650 907390631 907390631 621372459 621372459 839531840 890628238 890628238 981250300 981250300 699849573 699849573 138912737 8572992 274033536 274033536 7711362 36472840 106349880 123132600 123132600 54006144 346889350 495565694 495565694 361034736 361034736 315431718 169241994 169241994 395971180 489171160 489171160 159410724 226005052 435076738 493138918 654392421 654392421 526434750 657921833 657921833 528095258 172822672 172822672 625443315 625443315 612757370 871830394 871830394 750464612 750464612 332010738 793108143 819045436 819045436 467284057 309524899 313237572 355095608 355095608 887058330 887058330 426267519 505660544 562700403 562700403 1007239381 1007239381 958490375 705765690 348900104 404676102 404676102 471734528 507645428 507645428 185604256 247935604 554248800 600537921 600537921 921024689 921024689 200143856 877482872 947151584 947151584 874576509 913727443 913727443 743420581 206702908 206702908 386173771 654365129 654365129 171706241 936516350 936516350 795269565 314673456 314673456 271927256 708526649 708526649 622574356 809809050 912455476 933417339 933417339 913622780 973149332 1044768927 1044768927 1040521666 603082889 584530641 985235510 985235510 66339089 852508593 17826056 897388288 897388288 757387008 756819501 621931781 604000128 604000128 184672308 820618738 919265980 971662221 971662221 1072255200 1072255200 298370786 538070576 538070576 43255888 543019745 543019745 187876400 162666276 572588516 572588516 160041385 639112884 1048881912 1048881912 720188760 563657120 292108808 292108808 507984468 507984468 479442550 207904984 207904984 190114608 526426920 526426920 400205930 400205930 309015954 36732184 87985840 100861444 160794644 248437900 248437900 119282748 220146736 372521422 372521422 347079498 347079498 232338020 289561680 318511114 318511114 36115122 50911408 806617296 819325923 819325923 545190595 812785216 817105763 817105763 10880867 571473937 571473937 69280008 734476294 734476294 403126517 221054790 878450758 878450758 684460009 769205997 769205997 190847880 190847880 139986564 139986564 12354436 144560704 144560704 170807296 186978852 186978852 251808528 272820764 272820764 91427640 147855300 247464012 247464012 17826336 16794240 5591680 137384672 165859812 165859812 229299564 229299564 336740548 428787540 428787540 387189306 244894822 612105792 921377834 935520723 935520723 79950024 323297642 323297642 292472836 406912480 442653400 442653400 490072410 490072410 308937194 438061916 438061916 391506618 391506618 149908226 279428934 281153730 510466136 699306259 699306259 59564920 87582888 298639304 303916328 806680185 806680185 551222600 817238656 817238656 542848641 4813313 21016260 161345124 161345124 477715106 477715106 416071944 487196072 487196072 357045674 357045674 420792576 466028582 466028582 215882518 498479292 498479292 215484734 94495080 94495080 212108324 212108324 141349860 181668564 181668564 167804928 38587536 38587536 834666723 868225187 941364768 941364768 823999488 973478420 973478420 910756509 955319067 955319067 1009226696 1009226696 865677239 600583174 504004898 504004898 168635188 294445620 514729810 514729810 318637292 505571746 505571746 312746158 279346434 277940270 214314116 411890612 411890612 343174924 92064160 88265744 100846784 100846784 407504918 407504918 225202184 488659436 488659436 348514694 285212706 225294380 225294380 261877912 261877912 530589292 530589292 432013744 416589337 1019303667 1019303667 847319693 193314989 970847915 970847915 681168576 558515269 536944641 1041582225 1041582225 700465359 447865129 447865129 820580136 820580136 443905909 689127700 689127700 508668489 477341830 438375046 438375046 604705567 604705567 377173914 823378323 823378323 279056706 833299475 833299475 323733643 728446389 728446389 939578431 991353697 991353697 1061733526 1061733526 979002596 979002596 865165554 865165554 852033659 847251048 600928545 600928545 602616197 671947797 730043653 730043653 743399772 743399772 715905040 715905040 226843092 219678252 219678252 170919224 189742260 721882547 721882547 402688144 402688144 525411006 791158506 1057099839 1057099839 763235061 860986622 860986622 538435962 473708914 261830268 193586192 303973552 419542168 654925878 792813608 792813608 338457952 338457952 373610538 373610538 95690722 173807068 322503192 322503192 508667444 508667444 277615129 908066995 908066995 821954403 843193443 843193443 557939753 557939753 542452889 542237313 555794996 689146599 689146599 967606406 980071873 1031181292 1031181292 233986991 35913984 522207498 806073863 806073863 772637283 714528209 714528209 699475946 910213559 910213559 692096380 361499970 809018171 809018171 335562256 730476959 730476959 302964812 774944348 1034119447 1034119447 512803273 722616375 722616375 676623925 850868489 850868489 821636379 446727663 446727663 953687680 953687680 946892406 946892406 185616374 18923648 18923648 450783254 450783254 383210210 457442186 457442186 443617684 150346692 36712660 4800512 4842624 149284432 171305748 228228888 228228888 144233516 42078288 96862224 96862224 34001024 34001024 26132672 26132672 31541632 31541632 182375876 182375876 313594322 313594322 450904080 450904080 415152070 411166022 33677398 194664540 377521544 397151610 397151610 363333648 110288168 91752360 57669544 207693580 236702608 401595502 401595502 505525028 505525028 450189776 385858170 448589944 448589944 423480362 411094030 411094030 300795200 51343680 432446690 432446690 447463584 447463584 321020004 52519266 36289856 36289856 22481328 2103936 15839040 353360306 353360306 123116872 298216080 298216080 68683280 254973056 254973056 680798977 680798977 1054342346 1054342346 457815757 207566360 207566360 204859436 69532712 675599792 675599792 644514444 11801792 88624768 88624768 77904736 79511880 279347644 485148738 485148738 278841958 529551448 564139872 564139872 259862460 575678116 625361168 674250792 674250792 422832505 329701746 129362138 256543824 398907642 509755780 509755780 472006710 514107518 514107518 120430992 283350816 482244030 482244030 189779752 18157606 17138720 17138720 760801836 960496297 960496297 890274471 1018241871 1018241871 1067955628 1067955628 586822156 601482979 601482979 590523816 475400302 380422806 328218048 328218048 116213800 92324944 94533128 279555564 279555564 273102660 245563148 482926124 482926124 310890510 403672258 403672258 205604298 881504904 947913031 947913031 535302393 319099936 488318874 488318874 426585510 758322572 758322572 235799869 613472528 756023853 757993076 757993076 195170676 171579156 856405542 856405542 698557216 698557216 548549445 588912057 657274545 657274545 687407680 687407680 452994050 452994050 274009298 263201568 140512256 174378912 249359408 249359408 715505501 715505501 614716028 194304628 194304628 192954880 5367424 5891712 11024160 30069984 30069984 173593716 194761376 194761376 185796436 174155424 29673600 29673600 19778944 30642624 30642624 24126208 49283840 49283840 179583680 179583680 217309020 217309020 138602332 126884724 319765554 884696090 884696090 354444645 564594720 1059416417 1059416417 566449202 688563447 688563447 915801093 915801093 747643442 286328399 268959760 59904624 123084952 129903238 522419438 873407221 873407221 712121482 897193663 897193663 808455179 830607459 830607459 865590499 865590499 281564257 281564257 299847874 299847874 835745600 835745600 690082853 690082853 569335488 569335488 924800600 924800600 889803560 812471203 625918872 382887640 135002832 135002832 45823824 61679472 61679472 265864956 265864956 73532760 103957432 470800928 831554817 831554817 241566616 567501879 567501879 548001440 670917485 670917485 482778196 665075717 665075717 791356781 791356781 557392460 134586416 345190986 349207435 547879233 809486467 809486467 618585217 1044401531 1044401531 584849002 346556635 606672856 938611707 938611707 916664436 773918989 554107701 554107701 44968752 538846097 538846097 35655936 33689616 34803744 1041302152 1041302152 509301679 988333172 988333172 92515303 19138848 19138848 444732396 444732396 69226786 164530132 164530132 733124000 733124000 716752725 714020165 539864386 539864386 9372672 9372672 1623552 1623552 1337856 1337856 2362368 2696448 2720256 9420800 51622208 64508416 64508416 60548512 63500528 63500528 106959384 106959384 52219440 79103512 79103512 327624274 327624274 270650912 353302570 353302570 330470354 308880786 355308698 355308698 512983902 512983902 718514297 718514297 651855117 571879724 478400588 371778956 371778956 671137797 705806433 946894832 946894832 704682515 677319296 923332410 923332410 939647639 1024739753 1024739753 776214833 806619395 806619395 2959872 627124393 627124393 565548256 891134976 899250240 899250240 837212643 559766884 403579876 736953429 736953429 695823909 612463568 264498188 210943436 736106869 736106869 579076160 574693521 193011988 563096129 563096129 20155954 844791248 844791248 533291438 868253938 868253938 812306846 461122418 524903164 571489548 571489548 990304311 990304311 175114025 1062869637 1062869637 409342123 170207508 959200932 959200932 889280794 889280794 599849142 469854136 862798496 862798496 1018944235 1018944235 723608992 992070483 992070483 706151585 569167205 150850289 727342065 727342065 573048081 573048081 588624032 588624032 46813360 237071462 388498746 388498746 403052550 403052550 475915400 475915400 403966470 484988032 500308762 500308762 228311746 787712852 787712852 683943384 774712605 774712605 973032420 973032420 573756177 850545030 850545030 912064521 912064521 911755361 909132061 1051845547 1051845547 844620498 844620498 550847169 839045524 839045524 690393252 671856708 176260113 904660107 904660107 873601611 873601611 622854441 622854441 615050953 805929442 828293186 828293186 808621539 808621539 564151456 291449856 200881176 63761712 251479056 251479056 127463372 126927480 109316184 109316184 1005076814 1005076814 710984101 557891713 303223314 404245394 410918790 731910472 731910472 472389476 472389476 330437490 633001594 633001594 290564807 981250300 981250300 969853068 1025805188 1025805188 941547015 539203524 275859136 406121506 409748388 409748388 137923588 137383424 45139528 45139528 224518572 227623872 361034736 475095076 475095076 151102094 17891360 268712128 292225474 292225474 301154210 301154210 298060002 493138918 493138918 505735942 526434750 526434750 190654118 190654118 172822672 172822672 484999264 484999264 168894996 747649393 747649393 750464612 750464612 332010738 948057200 948057200 819045436 665556968 941117146 941117146 631505238 943351643 943351643 1057642906 1057642906 694505501 295830896 295830896 484974864 484974864 449365206 416086586 416086586 348900104 318914720 471734528 471734528 301757846 102401064 102401064 554248800 600537921 710073486 875022755 875022755 861995577 877482872 1058630483 1058630483 786546789 735316725 923304239 923304239 824230179 774390063 573048081 266099441 457090564 486877230 486877230 362246774 318890034 288637952 605053760 614588745 614588745 664871289 664871289 436307452 912455476 933417339 933417339 913622780 973149332 1044768927 1044768927 1040521666 546443841 538178560 577062576 577062576 446121152 554996067 340378657 826352523 826352523 921175515 921175515 621931781 604000128 896497314 1013453504 1013453504 809173348 971662221 971662221 461901923 461901923 324701317 815438928 815438928 551309873 551309873 187876400 187876400 162666276 162666276 138073860 97132160 282075328 1048881912 1048881912 268858024 269553792 292108808 292108808 507984468 507984468 479442550 449280720 207904984 444928072 526426920 526426920 400205930 400205930 310579664 381857984 381857984 100861444 160794644 248437900 248437900 119282748 220146736 227488100 227488100 172365972 232338020 232338020 252887092 252887092 13937084 188044208 188044208 806617296 806617296 273041282 32772211 0 0 1573888 1573888 616773152 616773152 69280008 544723920 997181525 997181525 221054790 878450758 878450758 684460009 769205997 769205997 928890048 928890048 676082870 705698896 705698896 732699981 732699981 245416284 691783217 691783217 251808528 272820764 426383272 426383272 276113574 700919007 700919007 1047411390 1047411390 882461281 882461281 322963864 509248898 509248898 624974382 756565132 756565132 428787540 420347942 285245616 612105792 612105792 284638146 284638146 283130368 79950024 59173896 86812800 199847952 199847952 467558136 467558136 270640004 270640004 438061916 438061916 391506618 510047056 510047056 176607356 176607356 510466136 699306259 699306259 130206632 94409546 298639304 303916328 806680185 806680185 386086888 817238656 817238656 542848641 492939272 566336 8388672 8388672 20864768 416071944 416071944 2670734 39060656 87558048 119539600 420792576 466028582 466028582 367002090 498479292 498479292 154119686 548700509 548700509 212108324 635746713 635746713 262908684 552404580 567283301 567283301 586703780 834666723 868225187 868225187 695206821 823999488 823999488 910756509 910756509 955319067 955319067 884155264 865677239 974589073 974589073 998716898 998716898 101526552 530673466 530673466 514729810 318637292 505571746 505571746 312746158 279346434 277940270 252932896 411890612 411890612 343174924 87374396 89752856 100846784 241132316 241132316 237023236 225202184 488659436 488659436 348514694 285212706 225294380 472324706 472324706 266547708 261247668 80306916 38104208 319118570 319118570 261941160 261941160 57778832 203014146 290337324 290337324 239723676 239723676 771827738 771827738 515959070 572526352 588776475 588776475 520258325 185881908 689127700 689127700 508668489 635906064 911636761 911636761 319031640 319031640 128501112 834208704 834208704 631768425 833299475 833299475 315235392 315235392 252123312 450322839 991353697 991353697 984459049 984459049 680574984 810190832 810190832 391709314 847251048 847251048 600928545 600928545 602616197 671947797 680136144 680136144 264822032 264822032 207981524 207981524 380149760 380149760 106939994 169306761 508455445 721882547 1054479372 1054479372 1049098335 978873559 819884221 1057099839 1057099839 790618351 860986622 860986622 538435962 235785048 193586192 193586192 180689024 419542168 654925878 792813608 792813608 241705236 241705236 225634608 106905240 41035904 82313520 276890984 276890984 50477624 118951984 277615129 908066995 908066995 821954403 843193443 843193443 557939753 557939753 542452889 542237313 235491017 809400627 809400627 766401099 766401099 1031181292 1031181292 806404611 965886477 965886477 891343682 503480956 294687252 163078432 56690560 699475946 774637437 774637437 707047731 335682836 837946177 887226912 887226912 472446790 541536401 541536401 436416518 436416518 402862102 402862102 976774976 976774976 676623925 850868489 999953711 999953711 605168459 446727663 591397040 665492537 816471482 816471482 410338578 410338578 406313584 286072696 383210210 383210210 457442186 457442186 258285942 150346692 36712660 94531738 283256234 283256234 256546570 374547028 374547028 356653654 356653654 377754826 394264698 394925056 394925056 29903888 55608048 55608048 41656304 182375876 182375876 313594322 313594322 450904080 450904080 415152070 411166022 33677398 194664540 377521544 397151610 397151610 363333648 91752360 91752360 101739036 207693580 207693580 401595502 401595502 505525028 505525028 450189776 162112116 355482572 365571886 365571886 411094030 411094030 449771830 449771830 444835030 432446690 447463584 447463584 407710854 155995490 75287056 102555152 102555152 93514736 93514736 353360306 353360306 309961152 298216080 298216080 68683280 254973056 254973056 344361056 345666686 1054342346 1054342346 457815757 177683028 144670228 135789060 655022340 655022340 170820661 89309312 304876560 304876560 268732994 269224962 461248227 855175255 948556691 948556691 1043603259 1043603259 564139872 1017469790 1017469790 575678116 631490784 674250792 689507117 741411605 741411605 577657477 577657477 435132915 509755780 998625329 998625329 834885763 1038192079 1038192079 862376317 996392621 996392621 543048711 298383048 498620314 991117900 991117900 960496297 960496297 890274471 1018241871 1018241871 884024139 884024139 159383776 138412164 892735492 892735492 41081147 316897659 608826355 874619595 874619595 400138401 400138401 279555564 522496466 522496466 179715084 482926124 482926124 310890510 403672258 621645099 630058089 881504904 947913031 947913031 934191756 438226694 438226694 591943742 874264875 874264875 758322572 606275848 237558092 237558092 120471626 227015082 614105031 614105031 616709638 616709638 941229650 941229650 878979868 878979868 836108952 967062393 967062393 687407680 303637441 420891348 460050818 460050818 758010123 758010123 388877634 817678353 817678353 715505501 706415396 556809777 721666612 721666612 35074612 135739908 188019716 188019716 711984308 711984308 694683568 194761376 189088164 189088164 195747312 195747312 186704276 154165252 154165252 151532548 175740308 175740308 179583680 236590652 236590652 217309020 138602332 196032588 319765554 884696090 884696090 790467685 151046920 101197061 437850184 437850184 227532291 220258609 593510800 761275574 761275574 957163121 957163121 681771076 1024670238 1024670238 1001640290 1001640290 873407221 136776073 857916549 857916549 808455179 621021225 621021225 505982172 331688178 331688178 281564257 299847874 299847874 277929505 277929505 39633136 61849152 61849152 547258882 924800600 924800600 889803560 812471203 625918872 382887640 141206694 375187610 375187610 139379552 203970120 318406228 318406228 494302052 494302052 297189376 831554817 831554817 85127208 567501879 567501879 548001440 670917485 670917485 589824796 665075717 665075717 791356781 791356781 557392460 33777744 33777744 349207435 547879233 809486467 809486467 618585217 667190520 667190520 584849002 346556635 606672856 938611707 938611707 373950305 303171474 319169746 319169746 61944080 31727713 596192561 625502193 1008785074 1008785074 877576196 676352013 455304243 1041271070 1041271070 704986386 313267304 202141318 686706723 686706723 902894051 978963543 978963543 845410707 462885009 675596550 675596550 584267330 539864386 9372672 9372672 1623552 1623552 1337856 4031744 4031744 2894080 2435328 9420800 51622208 51622208 13981120 60548512 132432648 132432648 124201376 106959384 13431440 79103512 79103512 65212848 19347744 270650912 353302570 353302570 288623394 86381066 103124400 243484424 267523068 267523068 718514297 718514297 793035008 793035008 344577590 371778956 371778956 671137797 705806433 946894832 946894832 704682515 677319296 923332410 923332410 939647639 1024739753 1024739753 776214833 776214833 17901601 2959872 5858816 268598272 269347842 269347842 95893864 95893864 96082752 96082752 203515273 736953429 736953429 695823909 612463568 264498188 555610928 736106869 736106869 579076160 574693521 193011988 563096129 563096129 16067520 7732672 480269956 480269956 199411566 296725736 296725736 461122418 461122418 571489548 571489548 990304311 990304311 175114025 1062869637 1062869637 503787634 717613872 717613872 832325999 889280794 889280794 846881200 845587397 612246089 587325958 561021861 465358710 465358710 129019774 118834172 190106292 190106292 83921564 51398688 17072688 16777248 19185664 19185664 2359296 62915296 210764576 210764576 369953184 480063054 480063054 850195753 850195753 361404768 498160226 502267374 502267374 346074244 787712852 787712852 456407871 456407871 956374008 973032420 973032420 145691592 531171899 531171899 1000402917 1000402917 909132061 909132061 1051845547 1051845547 928198812 928198812 278308865 839045524 839045524 671856708 1049581594 1049581594 904660107 904660107 873601611 873601611 622854441 622854441 893436032 893436032 828293186 828293186 808621539 808621539 564151456 291449856 134531844 134531844 251479056 257246118 264596401 640543163 640543163 212794386 774639642 1020020110 1020020110 281972786 324339286 454243102 523447062 731910472 731910472 689963168 929145061 929145061 633001594 633001594 290564807 969185828 969853068 969853068 1025805188 1025805188 941547015 539203524 275859136 406121506 409748388 409748388 156631936 156631936 208851470 416948458 416948458 227623872 421363960 475095076 475095076 503840348 515035998 515035998 292225474 435829878 435829878 529361342 529361342 419734664 667955429 667955429 248586436 1005584909 1005584909 390211478 285873186 258552222 998585835 998585835 282402956 751829057 751829057 347954758 347954758 498356932 948057200 948057200 793040141 665556968 941117146 941117146 631505238 943351643 943351643 1057642906 1057642906 694505501 514536786 983623029 983623029 915792030 735842037 604302922 454520284 454520284 318914720 318914720 992667560 992667560 443857583 814488099 814488099 936316946 936316946 710073486 769561696 861995577 861995577 1058630483 1058630483 735316725 735316725 923304239 923304239 824230179 774390063 573048081 272123922 457090564 486877230 486877230 362246774 472221448 472221448 605053760 614588745 614588745 993146236 993146236 436307452 823853184 823853184 810953899 810953899 644955708 1024505147 1024505147 546443841 546443841 538178560 538178560 466256576 466256576 440927382 395102120 826352523 826352523 921175515 921175515 158338848 540853125 896497314 1013453504 1013453504 809173348 1068134448 1068134448 643020087 625546353 804048381 815438928 815438928 551309873 567679713 567679713 58379072 140914884 568498752 568498752 162888845 1037331848 1037331848 730892562 696303717 571695296 240023336 240023336 324698144 324698144 449280720 449280720 168998930 444928072 523442226 523442226 304637186 310579664 310579664 381857984 381857984 61989744 61989744 44600368 60106288 60106288 6301968 239273600 239273600 161745252 161745252 192743352 252887092 252887092 13937084 188044208 290953734 290953734 182981872 282364128 806464114 806464114 54913200 54913200 54913200 616773152 616773152 169346580 169346580 997181525 997181525 337305500 831727119 831727119 324824328 617610441 617610441 928890048 928890048 793981629 705698896 705698896 732699981 732699981 245416284 691783217 691783217 185107200 677185174 806610256 866902610 866902610 847898855 832070375 1047411390 1047411390 961549043 882461281 806358723 893126818 962871328 962871328 756565132 756565132 420347942 900936555 900936555 635458562 635458562 828707217 828707217 283130368 307342722 384502482 384502482 383796466 275154256 467558136 467558136 91741138 49338032 194412912 194412912 435280212 510047056 510047056 71539582 58064936 40634888 40634888 130206632 284243968 284243968 397461400 397461400 386038344 386086888 386086888 769919469 769919469 492939272 930407418 945144182 945144182 1065410996 1065410996 64076138 469897230 469897230 269795850 325599934 325599934 274727690 411372034 411372034 367002090 208972088 525764133 1044921023 1044921023 656722230 196871760 635746713 635746713 402737670 552404580 567283301 567283301 586703780 586703780 152522352 876619160 876619160 841557267 621153944 621153944 687018543 687018543 839389745 839389745 1023410223 1023410223 974589073 998716898 998716898 964400462 530673466 530673466 130684152 135669984 249824828 249824828 19390912 60496924 230119524 252932896 252932896 136251572 136251572 87374396 89752856 89752856 241132316 409438610 409438610 40121604 63105152 292395236 326057394 326057394 504026142 504026142 472324706 296486992 457466066 457466066 193275966 319118570 319118570 261941160 261941160 57778832 57778832 67424420 155371528 155371528 391770677 391770677 768217221 768217221 572526352 588776475 588776475 585902155 322166192 563347581 563347581 539125920 635906064 911636761 911636761 319031640 890307464 890307464 886571122 886571122 638583531 488867548 488867548 331608306 555231777 555231777 252123312 859976117 959018033 959018033 864244557 864244557 844257194 844257194 391709314 617293009 617293009 601569009 601569009 34292352 34292352 24242640 46539840 264822032 264822032 105034432 227822204 380149760 380149760 270436032 270436032 508455445 739467852 1054479372 1054479372 1049098335 978873559 819884221 760473995 790618351 790618351 754504341 603936754 66165632 66165632 10959168 9055488 402653190 620838960 620838960 453092409 167913634 291241984 319959842 319959842 275854898 41035904 65737760 65737760 354914344 354914344 316894248 76952128 131008928 131008928 129709944 129709944 154945340 154945340 101640448 72012304 22009496 83267104 809400627 809400627 766401099 766401099 250274754 422592805 806404611 965886477 965886477 1031819780 1031819780 956465233 782274613 640729613 691036360 691036360 707047731 707047731 335682836 837946177 887226912 887226912 472446790 541536401 840701587 840701587 1013270983 1013270983 782463004 976774976 976774976 638686807 345642000 999953711 999953711 615015489 615015489 983638403 983638403 515975673 407699920 410338578 410338578 406313584 286223620 820758827 820758827 345071898 670681523 670681523 411160726 37990594 416299654 709023563 709023563 519571422 905974199 905974199 356653654 356653654 377754826 394264698 394925056 394925056 29903888 55608048 55608048 41656304 19399648 66718320 66718320 25413696 407040224 407040224 5306950 11544128 16454976 290588234 290588234 24909920 352324170 352324170 64562928 64562928 101739036 327569648 327569648 518621950 518621950 449262802 356783828 173799060 162112116 355482572 355482572 311484464 151676266 334375520 449771830 449771830 444835030 325430710 409230544 409230544 407710854 182791076 83628112 102555152 102555152 181470088 532230076 532230076 309961152 309961152 112763866 46146560 6414720 16026048 16026048 678666817 684167876 684167876 679876677 237050696 177683028 144670228 135789060 772431664 967280523 967280523 771698928 304876560 304876560 268732994 277748802 461248227 855175255 948556691 948556691 1043603259 1043603259 935754024 1017469790 1017469790 823733530 823733530 631490784 689507117 741411605 741411605 581960529 577657477 435132915 382073275 998625329 998625329 834885763 1038192079 1038192079 862376317 996392621 996392621 543048711 298383048 498620314 991117900 991117900 769704045 402686090 402686090 235667498 807412296 884024139 884024139 983176791 983176791 991874557 991874557 114858148 316897659 608826355 874619595 874619595 400138401 400138401 596462673 596462673 522496466 588235693 610014336 610014336 449346565 344721461 879085768 879085768 630058089 946740046 946740046 934191756 538613894 945606279 945606279 874264875 874264875 709430272 624501772 681075272 681075272 799052490 799052490 614105031 614105031 616709638 616709638 941229650 941229650 878979868 878979868 836108952 1041531173 1041531173 847506543 847506543 420891348 460050818 460050818 758010123 758010123 388877634 817678353 817678353 706415396 706415396 556809777 721666612 721666612 35074612 135739908 188019716 188019716 711984308 711984308 694683568 180981616 189088164 189088164 195747312 195747312 186704276 154165252 154165252 151532548 175740308 199094004 199094004 236590652 236590652 126944612 255663932 255663932 210028620 210028620 790467685 790467685 308677650 178683992 478624150 478624150 227532291 220258609 593510800 761275574 761275574 957163121 957163121 681771076 1024670238 1024670238 1001640290 1001640290 841081206 53666128 84426752 84460584 621019136 621021225 621021225 318835788 331688178 331688178 39391266 21587072 27083936 39098384 41189760 41189760 60673552 60673552 318902322 336684586 336684586 21147264 103880366 269657984 269657984 177363122 375187610 375187610 139379552 203970120 318406228 318406228 494302052 494302052 488483406 505953900 505953900 204023052 222369444 222369444 91234380 233444844 866390790 866390790 584192449 428345396 185598516 185598516 212126496 337013506 337013506 43054224 80638976 338642434 338642434 96868928 96868928 24729416 32580576 318316058 821887954 821887954 656094777 333451280 85328192 45101120 310844248 310844248 322839826 596192561 625502193 1008785074 1008785074 987890245 676352013 455304243 1041271070 1041271070 704986386 460829010 511910414 686706723 686706723 902894051 978963543 978963543 845410707 462885009 675596550 675596550 584267330 134710928 74012810 272325890 339099266 339099266 69386368 72918272 343858944 343858944 343655936 273800448 285844960 285844960 64865768 132407992 132432648 132432648 124201376 101036320 45231360 63967648 63967648 325059842 327273104 327273104 360159042 360159042 308332682 375020058 375020058 471743626 471743626 386466192 386466192 55839408 793035008 793035008 219940392 219948748 219948748 208472676 204998412 378828880 378828880 195560820 662260568 662260568 1009693978 1009693978 100860592 100860592 51384344 3149824 889267234 889267234 876087051 273336320 275740544 275740544 95893864 95893864 96082752 96082752 68141768 68141768 4983936 13930432 13930432 7789440 555610928 555610928 57798305 553063104 553063104 546308673 546308673 31268897 549793409 616247145 616247145 703916146 1005721127 1045933832 1045933832 297985552 309862866 309862866 772036630 772036630 619973577 191110685 624964800 624964800 503787634 717613872 717613872 832325999 832325999 846881200 846881200 845587397 612246089 594415814 1014945180 1014945180 625477583 407818274 609109916 609109916 581594064 581594064 582224721 582224721 553325152 586944448 586944448 572005968 64359248 152571840 200543220 369953184 480063054 1011689869 1011689869 850195753 361404768 498160226 502267374 502267374 346074244 99038228 153485852 456407871 456407871 956374008 956374008 1062494434 1062494434 1019200817 1019200817 1000402917 1000402917 231652811 168049096 203761932 244550452 928198812 928198812 8544771 33583120 34504720 34504720 1049581594 1049581594 344099905 361795784 361795784 278534080 23170664 13650464 893436032 893436032 45689922 1850368 1850368 13116544 19992800 51508312 159894056 161910820 234398824 257246118 264596401 640543163 640543163 212794386 774639642 1020020110 1020020110 610795656 1039866635 1039866635 920861627 891895043 541403820 689963168 929145061 929145061 729841848 342946132 342946132 134266884 173794417 711644565 711644565 729132133 729132133 771536392 771536392 703068645 68898797 85626504 156631936 156631936 208851470 416948458 416948458 398717140 487074554 487074554 320559410 503840348 515035998 515035998 264396374 435829878 435829878 529361342 529361342 419734664 667955429 857212467 943348319 1005584909 1005584909 727457832 285873186 439357876 998585835 1009393423 1009393423 998387925 998387925 843553306 235194393 790778028 790778028 793040141 793040141 438119958 345684830 689826328 756936237 989884180 1008730574 1027980065 1027980065 964899939 839516364 983623029 983623029 915792030 735842037 717182165 454520284 638841211 775189817 775189817 992667560 992667560 443857583 814488099 814488099 936316946 936316946 1062010943 1062010943 67862728 69764824 110625088 406890116 406890116 554945116 554945116 762389421 762389421 540862485 741373627 741373627 372529520 397286778 397286778 329171720 472221448 472221448 343687298 520211106 520211106 993146236 993146236 292552948 823853184 823853184 810953899 816783590 816783590 1024505147 1024505147 586372574 586372574 476451358 673289013 673289013 724721925 724721925 395102120 395102120 1017383609 1017383609 873566797 107896431 56807856 270944818 270944818 568330320 568330320 1068134448 1068134448 643020087 625546353 804048381 804048381 299386368 54711296 567679713 567679713 58379072 546309736 568498752 568498752 162888845 1037331848 1037331848 730892562 696303717 571695296 321929724 479290080 479290080 345444996 415326208 415326208 482509462 482509462 388334704 388334704 63624432 300011960 300011960 132161890 78270464 78270464 36709648 36709648 38011536 38011536 6301968 239273600 239273600 80262400 57762592 88180912 89393832 89393832 17614472 6241920 290953734 290953734 583456849 583456849 806464114 806464114 592971441 560779185 54913200 310405346 635257328 793246441 803526680 870445169 870445169 346232394 553950237 553950237 350397978 795385984 795385984 734507890 793981629 793981629 233636361 589053993 589053993 252395780 252395780 254237864 254237864 206156956 677185174 806610256 866902610 866902610 847898855 832070375 823919706 961549043 961549043 806358723 806358723 893126818 962871328 962871328 416835123 388687674 317300106 900936555 900936555 832569699 832569699 828707217 828707217 99095584 307342722 384502482 384502482 383796466 275154256 85979408 85979408 54003504 49338032 469074720 469074720 435280212 435280212 348193046 398775138 398775138 326158458 321524394 132852136 292492160 292492160 397461400 397461400 386038344 553691201 553691201 769919469 769919469 212928867 930407418 945144182 945144182 1065410996 1065410996 429112432 469897230 469897230 289446816 325599934 442289048 442289048 493003652 493003652 275215072 340943464 525764133 1044921023 1044921023 710165612 1024248879 1024248879 404004870 402737670 767943580 767943580 704434149 462161494 271518158 271518158 876619160 876619160 841557267 592583130 1003946559 1003946559 821240641 839389745 839389745 1023410223 1023410223 587021227 344990599 964400462 964400462 245794120 432922196 432922196 91122984 91122984 22459296 97239272 97239272 131886808 131886808 127710032 56445728 20032656 2423040 2306048 258048 4233472 409438610 409438610 123921624 123921624 295798048 326057394 327226472 504026142 504026142 399039876 377751642 457466066 457466066 193275966 269036690 323707072 404620592 404620592 418851968 418851968 144374470 22981792 68280840 391770677 675959080 768217221 768217221 391173632 391173632 1055105740 1055105740 322166192 563347581 563347581 539125920 719678500 719678500 843551736 843551736 890307464 890307464 886571122 886571122 638583531 488867548 488867548 331608306 555231777 555231777 96211241 859976117 959018033 959018033 864244557 864244557 844257194 844257194 646679784 884053907 884053907 612752593 601569009 596023653 698827093 728688080 728688080 209784840 142815300 142680132 227822204 227822204 107321564 270436032 475320512 748388550 748388550 739467852 307417746 584605856 693474499 973477911 973477911 913447445 624139217 877073709 877073709 864125977 864125977 405224838 1050864698 1050864698 843115041 843115041 828239523 589080470 303695266 385013910 495720926 495720926 422315768 422315768 394268834 354914344 354914344 327759416 327759416 293617160 131008928 129709944 129709944 38483912 41747968 41747968 89673744 122344632 122344632 452009512 452009512 492876352 492876352 243929602 408837526 408837526 429132322 429132322 1031819780 1031819780 956465233 1065371215 1065371215 775949664 775949664 352323874 352323874 69280008 69280008 133028368 133028368 91938576 660480 840701587 840701587 1013270983 1013270983 782463004 782463004 839148512 839148512 574410513 604030024 604030024 615015489 615015489 983638403 983638403 954467614 954467614 141084036 141084036 68732552 286223620 820758827 820758827 345071898 670681523 670681523 411160726 470438990 470438990 709023563 709023563 519571422 905974199 905974199 375265360 375265360 55873122 23233600 13243584 52826288 52826288 51167440 61654064 61654064 60445264 60445264 47221472 23203936 23203936 5123136 12389568 12389568 0 290588234 290588234 24909920 352324170 378205504 378205504 384971362 384971362 327569648 327569648 518621950 518621950 449262802 356783828 92923496 92923496 331736958 476462060 476462060 225450760 449411998 449411998 277781568 311991584 477470674 477470674 494279598 494279598 505598238 505598238 474893638 306448452 181470088 532230076 532230076 379437574 480789788 480789788 436169026 90419424 534893136 534893136 678666817 1036157110 1045641427 1045641427 450298305 164155884 240652588 240652588 772431664 967280523 967280523 771698928 173848144 146571604 416298460 416298460 385011608 385011608 0 4104 67244040 935754024 935754024 90205307 799099514 1010083335 1010083335 397934965 554247238 613689715 613689715 581960529 809764995 809764995 268435585 5291008 6291072 6291072 4194048 4194048 22093952 22093952 17826336 20055040 20055040 40445328 40445328 769704045 769704045 402686090 402686090 235667498 119815256 119815256 702094153 983176791 983176791 991874557 991874557 266682436 266682436 198324796 907020912 907020912 651340146 651340146 596462673 596462673 188506180 588235693 610014336 840783552 840783552 549769555 879085768 879085768 610919817 946740046 946740046 946322560 946322560 945606279 945606279 268846597 671682445 671682445 624501772 681075272 681075272 799052490 799052490 501321982 501321982 532043696 532043696 395313432 268435458 462161940 462161940 168037492 1051519572 1051519572 847506543 847506543 444596310 378720854 377487450 298021888 101518432 394833920 394833920 656458041 656458041 572813849 735388257 735388257 583860645 594152833 594152833 563815393 185561728 185561728 186477188 186477188 180981616 186944148 186944148 43910240 51780144 51780144 29265552 22515840 57633140 150710228 199094004 199094004 194888724 79176768 92549244 255663932 255663932 84382328 168555048 168555048 308677650 308677650 190179908 478624150 478624150 57885216 571818032 591470769 766312473 766312473 670640121 670640121 646980088 687660945 687660945 292214453 243336322 243336322 689029676 958268077 958268077 480685958 484996934 484996934 475487556 299301858 299301858 32668642 30324320 30324320 27083936 41189760 41189760 60673552 60673552 318902322 318902322 274608912 286267938 286267938 269657984 269657984 177363122 64419028 10621248 2562112 526336 181144080 181144080 149964502 475795842 488483406 891903753 891903753 446458914 866362707 866362707 967072612 967072612 866390790 866390790 546212608 778963112 957221743 957221743 600816396 337013506 337013506 284012995 619404545 640081681 640081681 537974785 605345041 605345041 67278592 318316058 821887954 821887954 656094777 335546114 335546114 371196186 371196186 310844248 648747817 666611521 666611521 763680890 987890245 987890245 251822615 188132108 193250168 459807354 459807354 460829010 511910414 511910414 436736874 63816898 34630800 58737424 58737424 44276800 47111376 47111376 38788416 78499776 78499776 272325890 339099266 339099266 69386368 343450626 343858944 343858944 343655936 344455936 344455936 344000392 272708738 132407992 132407992 67647616 67647616 45231360 45231360 63967648 63967648 325059842 327273104 327273104 372497264 372497264 363973050 375020058 375020058 471743626 471743626 386466192 797281149 797281149 578944229 219940392 219940392 222611884 222611884 860390235 1026616143 1040500332 1040500332 195560820 662260568 662260568 1009693978 1009693978 974985785 974985785 197665232 185935921 889267234 889267234 876087051 273336320 275740544 275740544 1026434 73018760 73018760 72487168 139569673 680649285 747730629 747730629 678848708 678848708 142563717 677780676 677780676 553063104 698197028 698197028 548324288 564924770 564924770 616247145 616247145 703916146 1005721127 1045933832 1045933832 280497910 305582912 305582912 975618390 975618390 619973577 446748951 510277084 510277084 478043192 1063319192 1063319192 437450900 15950658 439360276 439360276 313940934 589013104 594415814 1014945180 1014945180 625477583 952107142 952107142 609109916 581594064 581594064 582224721 582224721 553325152 586944448 586944448 572005968 64359248 88343098 88343098 306261528 324281728 1011689869 1011689869 678331016 742317837 742317837 139612557 168507880 168507880 531243164 531243164 520322826 389744015 389744015 814986995 1062494434 1062494434 1032660176 1032660176 442573206 442573206 305660165 983078455 983078455 962348839 570647334 823707171 823707171 816346835 288966117 713882464 713882464 570580954 570580954 543212042 877134883 877134883 595329832 57145776 279725232 346049650 597131339 814486802 849161811 849161811 589116672 277286176 159894056 161910820 161910820 110368092 222311960 222311960 673467676 673467676 732771578 732771578 610795656 610795656 1039866635 1039866635 920861627 891895043 541403820 160738242 841036761 841036761 729841848 415281817 415281817 1030235551 1030235551 711644565 711644565 729132133 729132133 771536392 771536392 703068645 171001948 171001948 85626504 81171820 157712572 211878432 398717140 398717140 487074554 487074554 295775202 289950360 395887152 395887152 264396374 277254346 277254346 133848144 302516018 319951410 420924967 857212467 943348319 943348319 865423237 796085630 496874415 441057950 484843059 1009393423 1009393423 998387925 998387925 843553306 386011194 790778028 790778028 576766353 504131678 1009754176 1009754176 689826328 756936237 989884180 1008730574 1008730574 964899939 964899939 839516364 889151441 889151441 466329341 717182165 717182165 178208340 638841211 775189817 775189817 303364237 336697388 800724800 800724800 222457629 671259800 671259800 1062010943 1062010943 689752109 883776635 948824591 948824591 950658407 950658407 554945116 762389421 762389421 578535195 741373627 741373627 973611648 978921111 978921111 328242868 328242868 343687298 343687298 520211106 520211106 444418178 790312509 790312509 485827289 1013689523 1013689523 816783590 816783590 729953186 425876261 598267700 598267700 476451358 673289013 673289013 724721925 724721925 381601378 381601378 1017383609 1017383609 873566797 172622848 172622848 172101780 578296328 578296328 877328436 1062022335 1062022335 943796337 943796337 239743816 299386368 299386368 54711296 557864384 557864384 624757769 624757769 546309736 221013732 161875756 299313408 299313408 363018562 363018562 312533488 473958912 479290080 479290080 345444996 415326208 415326208 482509462 482509462 388334704 388334704 63624432 122554688 122554688 50483640 78270464 78270464 61217136 46142256 39062160 155127216 155127216 144653892 84330668 198654708 198654708 152150576 152150576 96040408 96040408 150905796 150905796 155398308 583456849 583456849 571513568 592971441 592971441 560779185 171903756 202889984 635257328 793246441 803526680 803526680 428097720 346232394 170394900 440996682 440996682 795385984 795385984 299505026 299505026 27398144 27398144 27263328 170542096 252395780 252395780 254237864 254237864 206156956 273782920 273782920 269389876 453823542 453823542 823919706 823919706 664013433 386419299 612402284 671088645 671088645 214467593 72158336 24741952 24741952 125909312 125909312 826794232 832569699 832569699 634995178 634995178 332959003 355916088 566527569 566527569 406108004 406108004 407237153 673050117 673050117 575094659 575094659 469074720 559054975 840012780 840012780 981729858 981729858 362938766 362938766 132852136 292492160 292492160 276040578 276040578 118025856 553691201 595697804 801161469 801161469 432197862 576823469 576823469 499142264 605564871 605564871 429112432 459400740 459400740 289446816 341085864 528199842 528199842 520280988 520280988 275215072 340943464 340943464 122134628 710165612 710165612 1024248879 1024248879 437109256 247031688 767943580 767943580 704434149 692183205 718559567 1032065396 1032065396 678757970 809576981 809576981 1003946559 1003946559 821240641 591467386 605750827 749145550 749145550 587021227 474209352 416099526 152284986 179428646 432922196 432922196 163251396 150972448 10172096 97239272 128254208 131886808 131886808 170216580 201352708 201352708 54390544 96548192 122076360 155827588 155827588 262554656 262554656 138920032 388621440 388621440 327226472 327226472 378538496 378538496 377751642 269523008 9849346 109316184 268988546 898142233 898142233 823260713 428532456 563135073 563135073 511895089 673268781 673268781 675959080 980322964 980322964 175378569 132735249 1055105740 1055105740 843056188 843056188 415891710 287397262 719678500 719678500 843551736 843551736 806363240 806363240 1114115 123806128 123806128 123961776 123961776 67366920 54710680 50680080 50680080 33759232 33759232 159494224 167780596 811151430 811151430 646679784 646679784 884053907 884053907 612752593 736134596 736134596 698827093 728688080 728688080 209784840 142815300 142680132 406889036 406889036 183998538 483120184 483120184 815230563 827429463 979160727 979160727 918668832 693474499 973477911 973477911 913447445 803658707 877073709 877073709 864125977 864125977 1034815195 1050864698 1050864698 1042106880 1042106880 940362759 806898180 303695266 385013910 495720926 495720926 422315768 422315768 394268834 255988144 299501536 327759416 341324112 341324112 85209856 122170888 122170888 167864324 167864324 88486712 89673744 122344632 122344632 362733162 362733162 305541082 305541082 78978584 76732944 16986144 429132322 429132322 352863783 445130248 445130248 1065371215 1065371215 775949664 775949664 937464883 937464883 450968950 907064481 907064481 876988668 873709715 544623185 448994359 543276458 543276458 339970282 339970282 866776418 866776418 857801731 784713087 574410513 529097783 971389138 971389138 996376916 996376916 954467614 954467614 382781118 310962752 310962752 147041000 479314278 479314278 305992576 510684112 510684112 115718046 470438990 470438990 358737368 354197382 354197382 160356356 160356356 375265360 375265360 271194330 298195170 327942224 327942224 52826288 51167440 61654064 61654064 60445264 60445264 47221472 19529728 19529728 5123136 12389568 268968192 282540738 284895554 284895554 14953536 115151704 409803188 409803188 384971362 384971362 486950020 486950020 230474348 234158884 234158884 157187744 195038672 195038672 331736958 476462060 476462060 225450760 449411998 449411998 277781568 253725932 477470674 477470674 494279598 494279598 505598238 505598238 474893638 306448452 116148184 116148184 379437574 379437574 480789788 480789788 436169026 289652928 534893136 534893136 366094872 1036157110 1045641427 1045641427 450298305 140385924 240652588 240652588 222156852 121103060 182419412 182419412 173848144 313431424 416298460 416298460 350136467 665453451 893509803 893509803 874977087 874977087 1034491054 1034491054 799099514 1010083335 1010083335 397934965 823468898 823468898 567288416 949225120 949225120 809764995 644350220 1002475057 1002475057 809032787 984667079 984667079 857757309 856297817 966922279 966922279 868229400 868229400 829133864 829133864 692716688 288432416 404252166 404252166 286384674 272075665 836069409 836069409 559903107 992340513 992340513 266682436 266682436 264315132 907020912 907020912 651340146 651340146 483842708 483842708 280495758 280495758 416563254 840783552 840783552 653999071 984792924 1057514798 1057514798 914896162 914896162 946322560 946322560 613997785 652966614 652966614 578955417 572272024 242683969 128135544 128135544 63047316 470557908 592612261 592612261 884097802 884097802 395313432 1021450642 1021450642 799715917 891248483 1051519572 1051519572 613992009 463610144 463610144 383787122 381934798 515678784 515678784 397010298 394833920 656458041 656458041 572813849 735388257 735388257 583860645 594152833 725147520 725147520 38647588 153934688 153934688 174343908 174343908 186944148 186944148 43910240 51780144 403709996 404764296 404764296 444314380 444314380 204497698 50987424 189838080 189838080 152133872 270544896 336835336 336835336 168555048 168555048 25301120 143673568 190179908 190179908 270549767 270549767 571818032 591470769 766312473 766312473 670640121 670640121 143528656 251988032 251988032 167435409 922214149 922214149 689029676 958268077 958268077 686156229 969508621 1024723503 1024723503 811889570 811889570 820161632 820161632 552894272 293786736 58122864 58122864 60853584 60853584 33105888 52496000 274608912 286267938 286267938 204572412 227173736 227173736 273435778 273435778 35313168 35313168 374054684 506074398 527513248 527513248 128313720 891903753 891903753 446458914 866362707 866362707 967072612 967072612 842845971 543871568 546212608 778963112 957221743 957221743 600816396 111303634 82124312 340071176 619404545 640081681 640081681 537974785 605345041 605345041 300698227 648600593 651091161 867212586 867212586 366629504 335546114 371196186 371196186 310459232 648747817 825085026 825085026 630288259 873732505 873869620 1060449087 1060449087 985569307 864939123 235955779 218368044 86118696 91706392 122232824 122232824 86340768 22077888 26594144 26594144 10501120 19333216 19550218 287454122 336827656 336827656 270717090 92023936 84722690 343450626 343450626 341546626 338335360 344455936 344455936 344000392 272708738 83746624 48162960 67647616 67647616 99768120 99768120 106370536 106370536 115605776 355207528 355207528 372497264 372497264 363973050 276144272 7178546 29992352 161178048 206550497 797281149 797281149 578944229 202300932 74061305 222611884 222611884 860390235 1026616143 1040500332 1040500332 88917064 88917064 78447360 237484186 429737703 974985785 974985785 927213331 927213331 916761536 275856072 607780354 824853385 824853385 539959947 539959947 811123584 811123584 545791498 345148930 680649285 747730629 747730629 678848708 678848708 417518534 1013816720 1013816720 543625344 698197028 698197028 636787441 564924770 564924770 356418354 451969060 451969060 336858034 212168772 503840448 503840448 528621338 528621338 975618390 975618390 852553615 852553615 783884837 478043192 807352468 1063319192 1063319192 462664180 278321730 948580416 952067241 952067241 1018307740 1018307740 897952322 949463283 949463283 952107142 952107142 413401287 19596736 346360806 492843576 492843576 377232170 291571584 131216000 54004960 62915016 92671376 92671376 306261528 436324128 436324128 107793816 678331016 742317837 742317837 207882636 275057894 275057894 818574378 818574378 924902688 924902688 559472721 500245193 670903599 815513504 1032660176 1032660176 442573206 442573206 802278536 983078455 983078455 962348839 757374213 823707171 823707171 816346835 716923252 713882464 1027082031 1027082031 570580954 543212042 877134883 878878003 878878003 872421538 668878177 668878177 817653058 817653058 849161811 864749330 864749330 277286176 193194594 296024118 420628810 420628810 148898606 1071195903 1071195903 673467676 732771578 732771578 551852010 551852010 138813685 422668640 422668640 403911174 295882760 337826058 660808054 782238045 782238045 415281817 571109488 1030235551 1030235551 721962196 680002629 161681044 671332196 671332196 635442600 562448380 562448380 171001948 237559860 237559860 222934508 181369908 87123304 87123304 354311712 354311712 295775202 26528352 395887152 395887152 44946490 277254346 277254346 133848144 429249712 450838230 450838230 469688310 469688310 368807524 796085630 796085630 496874415 441057950 441057950 314447682 191516294 286310946 520229233 971434445 971434445 780554509 505747787 592979903 1035123772 1035123772 1009754176 675293627 604053513 990652541 990652541 665651267 746851401 746851401 838862187 876658827 876658827 1009642767 1009642767 116041402 188861904 288899520 407031942 743129132 743129132 558625953 800724800 800724800 222457629 671259800 671259800 906428134 906428134 689752109 883776635 948824591 948824591 1026630415 1026630415 614998167 516264995 578535195 578535195 504850309 849379332 973611648 978921111 978921111 747937419 954231633 954231633 391377594 391377594 579887873 579887873 790312509 790312509 485827289 1013689523 1013689523 834522116 832596023 729953186 425876261 598267700 598267700 259458737 333977778 333977778 615318254 615318254 134254420 445287109 445287109 852138596 852138596 688301253 172622848 543884800 578296328 578296328 877328436 1062022335 1062022335 943796337 943796337 890263847 890263847 7390720 538707816 631507305 631507305 624757769 624757769 249571644 249571644 161875756 505741424 505741424 497363310 402864462 312533488 473958912 507814576 507814576 487975470 299335712 299335712 325264296 396497274 396497274 10631002 88506952 103684408 110592088 110592088 93912112 61217136 61217136 46142256 89529000 155127216 155127216 144653892 84330668 198654708 198654708 152150576 152150576 135274624 96040408 150905796 190973248 197793012 197793012 165675492 165675492 159696996 159696996 155905124 171903756 202889984 398099898 398099898 378263808 831750463 831750463 407515410 678020547 678020547 446755552 350353857 455914292 587923490 674608321 674608321 190270721 710185753 710185753 260966728 260966728 153107664 153107664 64110228 700126006 762356874 762356874 635703426 238634239 335738264 1031656134 1031656134 465046755 631557132 671401989 770004882 770004882 598993204 448292971 296856746 291458187 291458187 341149065 373093723 373093723 634995178 634995178 909258336 909258336 566527569 566527569 406108004 406108004 407237153 673050117 673050117 575094659 575094659 337101322 559054975 840012780 840012780 981729858 981729858 463667252 732631155 732631155 34553536 572515801 572515801 276040578 118025856 547725338 770040267 820538845 820538845 432197862 432197862 107001946 191240628 191240628 200279028 200279028 459400740 459400740 177969690 341085864 528199842 528199842 520280988 520280988 83202486 122287660 277997061 277997061 701351518 701351518 1041495643 1041495643 890401802 304768828 463168996 463168996 430634948 692183205 718559567 1032065396 1032065396 672212613 913382032 913382032 906238089 872600715 872600715 409096584 471859470 877016200 877016200 802137515 802137515 617559259 330341899 850993296 850993296 816836145 632340809 632340809 552292737 616743113 648554561 648554561 611264081 611264081 201352708 539683737 539683737 96548192 122076360 605972864 832616135 832616135 917484919 917484919 1049244954 1049244954 310407168 310407168 372444434 372444434 371990826 371990826 441450534 441450534 406847622 898142233 898142233 823260713 428532456 563135073 563135073 511895089 673268781 673268781 162716990 980322964 980322964 523469717 699898911 699898911 803357102 1038275904 1038275904 975733204 618804478 812057078 831729948 884218816 1000673494 1000673494 818995329 818995329 609793544 330535688 478253644 478253644 418498096 418498096 229464620 229464620 194451572 161816912 764600320 764600320 159998589 260756604 260756604 109068396 76158024 28597232 61398080 736134596 736134596 562350177 63888624 182603044 182603044 33798176 33630276 406889036 406889036 343034576 483120184 483120184 815230563 827429463 979160727 979160727 940583591 940583591 657135835 657135835 803658707 803658707 682280412 605475762 605475762 350658267 1034815195 1034815195 932044803 1042106880 1042106880 940362759 806898180 67108872 297817384 297817384 216711372 220238244 305792016 305792016 33555986 299501536 299501536 341324112 932252313 932252313 823464619 873542027 873542027 536978305 623968793 623968793 556852129 939650110 939650110 813274307 749151000 489878684 340088374 340088374 348224712 348224712 562062064 893985963 948503725 948503725 1028145524 1028145524 383830491 469553142 937464883 937464883 450968950 907064481 907064481 876988668 873709715 832754019 448994359 543276458 543276458 339970282 339970282 866776418 866776418 857801731 784713087 785510632 785510632 971389138 971389138 996376916 996376916 511918258 428941926 382781118 310962752 310962752 288165216 829890317 829890317 500538756 948338507 948338507 80138386 71715776 71715776 894721121 894721121 174899418 588520213 588520213 356866296 390475960 390475960 298195170 327942224 327942224 13243584 528576 575488 35916800 165497524 165497524 306389138 306389138 174593456 310618272 445067350 445067350 282540738 449866326 449866326 394524912 328660094 409803188 409803188 201377122 55219328 486950020 486950020 230474348 234158884 234158884 280613058 280613058 286459136 286459136 351747018 357675986 357675986 35632818 33567232 135168 131072 4215808 293211152 322887474 322887474 172758886 13157568 150618576 150618576 116148184 139620864 139620864 137822696 423408172 423408172 410090826 354939178 289652928 159410562 153540900 505436228 505436228 86296872 86296872 35836176 44191808 50417920 58937408 288234002 288234002 17041440 321651986 321651986 313431424 313336850 350136467 665453451 893509803 893509803 874977087 874977087 1034491054 1034491054 740905687 578791580 170262836 305176920 823468898 823468898 567288416 949225120 949225120 644350220 644350220 1002475057 1002475057 809032787 984667079 988745605 1000741751 1004940145 1004940145 966922279 868229400 868229400 829133864 829133864 692716688 288432416 404252166 404252166 303669520 303669520 836069409 836069409 559903107 992340513 992340513 249606416 249606416 264315132 604006978 882240075 882240075 278233097 483842708 483842708 280495758 780763932 780763932 647371354 647371354 653999071 984792924 1057514798 1057514798 914896162 914896162 969641317 975101335 975101335 874640923 652966614 578955417 242683969 242683969 51125776 66196928 351672490 351672490 592612261 592612261 884097802 884097802 513138856 1021450642 1021450642 799715917 891248483 891248483 873471026 570476306 570476306 656568708 656568708 381934798 515678784 515678784 397010298 361289306 589569025 669667553 794949673 794949673 572843485 142440672 63181312 725147520 725147520 722650933 722650933 153934688 144048324 62439716 184853140 184853140 34552848 21572640 403709996 404764296 404764296 444314380 444314380 204497698 50987424 189838080 189838080 152133872 270544896 346685546 346685546 260324648 306524318 356847822 356847822 253022960 361976570 361976570 448971474 448971474 451965114 611320249 639894412 656482617 656482617 549591184 1016973628 1016973628 657516086 1020738255 1020738255 846524911 671416468 618732838 686156229 969508621 1024723503 1024723503 811889570 811889570 820161632 820161632 552894272 545838145 545838145 58122864 578348324 582127891 582127891 390739835 521404954 723589536 723589536 1017293896 1017293896 521650652 409640464 409640464 339252866 327629368 374054684 506074398 527513248 527513248 257322780 454066790 454066790 319193110 319193110 367708136 367708136 348854612 348854612 308302828 354059368 479370744 489970238 489970238 385368840 281167962 284164818 340071176 343816728 343816728 573395536 573395536 552394625 840435208 840435208 648600593 651091161 867212586 867212586 366629504 68584672 344260960 344260960 302057514 53267760 825085026 825085026 596503665 403886598 873869620 1060449087 1060449087 985569307 864939123 235955779 381868596 381868596 221745790 437329856 437329856 86340768 45570896 45570896 24899008 39587664 39587664 60739392 287454122 336827656 339746818 339746818 268502570 268502570 85983528 292754304 336695306 336695306 69258754 10220032 10032192 61599712 61599712 120281416 120281416 122614824 122614824 103453088 106370536 106370536 79447040 355207528 355207528 325633024 325633024 300738354 276144272 7178546 29992352 161178048 169967988 252626852 252626852 107020560 107020560 54596880 125833552 181613268 181613268 240394344 685559712 685559712 667682272 137176212 742228304 742228304 664094416 664094416 350093546 927213331 927213331 916761536 275856072 607780354 824853385 1043489310 1043489310 539959947 811123584 811123584 545791498 345148930 350843136 350843136 604782084 604782084 405026692 417518534 1013816720 1013816720 75326673 624617776 636787441 636787441 80141697 99330544 99330544 322844416 322844416 60157696 212168772 503840448 503840448 528621338 528621338 716086842 781240316 852553615 852553615 783884837 456733495 807352468 875981523 875981523 864432962 953105607 953105607 952067241 952067241 1018307740 1018307740 897952322 949463283 949463283 701498085 416885838 714378170 780453981 982270986 982270986 492843576 377232170 291571584 131216000 50207984 62914800 92671376 92671376 102769696 436324128 710960263 710960263 654364713 654364713 946508937 946508937 633541664 633541664 818574378 818574378 924902688 924902688 559472721 500245193 214958796 589983757 589983757 238160676 141361508 611978717 802278536 802278536 701252965 757374213 757374213 629525872 565379088 716923252 716923252 632825650 1027082031 1027082031 603997825 603997825 24265482 878878003 878878003 872421538 668878177 668878177 817653058 817653058 571947537 864749330 864749330 219956088 219956088 296024118 420628810 420628810 181302000 1071195903 1071195903 633094640 286672443 542699985 551852010 584450860 1045639839 1052979839 1057173567 1057173567 498193233 337826058 606224734 782238045 782238045 896254202 896254202 571109488 999856061 999856061 714041792 714041792 603340721 635442600 635442600 562448380 562448380 242633392 237559860 237559860 222934508 240159068 240159068 32831024 32831024 112983512 112983512 78777144 275119048 275119048 246289190 104778864 39507600 39507600 429249712 450838230 450838230 260495484 368807524 368807524 392259898 392259898 168759316 168759316 314447682 448507812 643737753 643737753 520229233 971434445 1035216191 1035216191 505747787 880830217 1035123772 1035123772 999175472 999175472 604053513 990652541 990652541 931399865 881401035 746851401 723049578 723049578 667555065 1009642767 1009642767 275924565 470587523 1036223829 1036223829 937325865 748326904 558625953 727712136 727712136 942834257 942834257 433346599 906428134 906428134 577257643 577257643 893387042 893387042 1026630415 1026630415 614998167 963211800 1065015231 1065015231 772400157 849379332 849379332 608627284 646909972 747937419 954231633 954231633 391377594 391377594 604607756 723535123 723535123 749012290 749012290 278906715 834522116 834522116 832596023 439497177 1046448605 1046448605 947397401 778882461 778882461 677398572 532295918 532295918 76156309 711726152 711726152 841599269 841599269 688301253 846869923 846869923 593506690 573251650 749376576 1040075062 1040075062 900908899 900908899 890263847 890263847 359174216 538707816 631507305 632923785 632923785 612975820 649333073 731647821 731647821 634662404 505741424 497363310 402864462 153350560 409091016 507814576 507814576 487975470 299335712 299335712 325264296 396497274 396497274 268624226 90988482 398492248 398492248 110592088 362344040 362344040 345495104 75705480 89529000 89529000 93327520 109125784 111655568 111655568 108417608 70513416 135274624 135274624 121979016 169912320 190973248 197793012 197793012 165675492 165675492 159696996 159696996 155905124 39433536 38743288 126881232 126881232 203760552 831750463 831750463 407515410 678020547 678020547 713540743 713540743 455914292 946611971 946611971 674608321 190270721 710185753 710185753 562802913 260966728 555277649 555277649 247886864 700126006 762356874 762356874 635703426 238634239 363719809 1031656134 1031656134 465046755 885726926 885726926 807280131 770004882 883861540 883861540 558737850 291458187 907018760 907018760 373093723 373093723 286618912 370704929 909258336 909258336 579672363 387588407 450691176 450691176 871653464 896920491 898350811 907093257 907093257 624246393 337101322 228614176 228663660 228663660 173027580 463667252 732631155 732631155 34553536 572515801 572515801 106703736 69272776 857264680 857264680 820538845 820538845 352914761 891827520 891827520 750621003 1030346564 1030346564 429772454 300645188 268501266 268501266 40001692 508031378 508031378 409166592 349387434 349387434 303806102 642250905 642250905 701351518 970748437 1041495643 1041495643 890401802 404296752 463168996 463168996 430634948 249161128 204104498 354837762 354837762 166035820 913382032 913382032 906238089 872600715 872600715 409096584 471859470 877016200 877016200 1020568100 1020568100 617559259 558132386 850993296 850993296 821576130 811733379 632340809 764657000 764657000 648554561 648554561 611264081 611264081 116792280 539683737 581959808 581959808 645954833 645954833 832616135 832616135 917484919 917484919 1049244954 1049244954 328939122 52143864 372444434 387258704 387258704 371990826 441450534 441450534 406847622 223120612 223120612 880943744 880943744 898129762 898129762 330875263 91817872 553648512 553648512 26215008 692653220 692653220 699898911 699898911 803357102 1038275904 1038275904 975733204 618804478 812057078 831729948 884218816 1000673494 1000673494 818995329 818995329 811775465 935370907 935370907 845288336 663803193 789159241 789159241 733362549 733362549 814729240 814729240 764600320 159998589 260756604 260756604 109068396 76158024 35392000 20228528 587361312 595191729 595191729 11492081 134442500 170520640 243533900 243533900 307595352 343034576 343034576 351575328 351575328 945137741 1012509439 1012509439 997262863 997262863 940583591 657135835 657135835 740171277 740171277 492718665 847452570 847452570 28691459 879031605 879031605 336120233 336120233 170732820 228564128 346112136 346112136 297817384 297817384 216711372 304616668 345113004 455475792 480647502 480647502 202675978 300943762 932252313 932252313 823464619 873542027 873542027 536978305 623968793 757131038 757131038 939650110 939650110 813274307 749151000 553077056 584456216 584456216 630752465 857473185 857473185 893985963 948503725 948503725 693642241 693642241 369970440 469553142 469553142 195769716 310421888 317057490 317057490 855661586 855661586 832754019 466293760 465641718 439088382 335719864 348189672 348189672 538841816 867848707 867848707 785510632 785510632 467723186 467723186 510235670 511918258 511918258 381804762 176624106 140124048 166576300 288165216 829890317 829890317 504403108 948338507 948338507 212382446 71715776 71715776 894721121 894721121 402790494 588520213 588520213 534052346 390475960 390475960 75546696 116110736 116110736 66325488 59368560 59368560 42016784 165497524 165497524 306389138 306389138 174593456 310618272 445067350 445067350 49748438 449866326 449866326 394524912 328660094 178865000 27837792 55219328 55219328 360157824 360157824 277261930 104780080 104780080 280613058 280613058 286459136 286459136 351747018 357675986 370646066 370646066 275126658 275126658 490029788 490029788 407217550 431675238 526785546 526785546 446349906 452713172 452713172 134556672 139620864 139620864 137822696 423408172 423408172 486875182 486875182 292016208 292016208 108186578 477549108 477549108 690361248 690361248 263377788 770986916 770986916 100962625 288234002 288234002 83470840 321651986 321651986 313336850 313336850 311311680 311311680 302135360 189668424 189668424 339766592 911736539 911736539 738301223 128872560 425312719 425312719 305176920 354756907 430783786 430783786 430389606 727724288 727724288 38207541 320078210 556410660 703015285 988745605 1000741751 1004940145 1004940145 588587681 565257057 21604209 35754144 315265922 315265922 61944336 65462992 65462992 303669520 303669520 289456784 269484544 269484544 268435458 256918018 255901884 249606416 104907096 604006978 882240075 882240075 482317102 720916133 720916133 311951838 780763932 919212416 919212416 836241138 836241138 638487665 807412037 807412037 830761330 830761330 969641317 975101335 975101335 874640923 614802185 565837864 565837864 93460105 91362216 105271752 351672490 351672490 231412732 231412732 177948872 513138856 513138856 556270968 556270968 88179704 130040896 821133824 821133824 820109763 570476306 656568708 656568708 646059270 582669634 367758080 281736728 906435545 906435545 669667553 794949673 794949673 572843485 736037652 738013013 738013013 734976997 722650933 722650933 727456912 727456912 173294208 185869696 185869696 168420368 172057908 172057908 166396144 29365344 20132640 52438944 151778340 151778340 36754068 118192100 261695100 261695100 346685546 346685546 260324648 306524318 356847822 356847822 253022960 361976570 768095469 851556147 851556147 756554661 756554661 760482445 765526069 765526069 692456293 1016973628 1016973628 657516086 1020738255 1020738255 846524911 671416468 566247724 753191373 753191373 902563656 902563656 604309644 604309644 76294208 76294208 134219780 545838145 545838145 25552992 578348324 582127891 582127891 390739835 521404954 723589536 723589536 1017293896 1017293896 521650652 409640464 409640464 339252866 327629368 327629368 468417198 468417198 73125344 257322780 471945280 471945280 319193110 319193110 367708136 367708136 348854612 348854612 308302828 354059368 354059368 489970238 489970238 434621006 434621006 284164818 499208893 916124617 916124617 573395536 573395536 665913264 840435208 840435208 76547673 426368 293732744 293732744 346845482 346845482 360716352 360716352 344406090 873851403 895410227 895410227 891684024 891684024 476045500 476045500 402655804 335593506 1027681767 1027681767 748733518 941334357 941334357 711948126 437329856 83738402 45570896 45570896 30835040 39587664 39587664 60739392 60739392 287486976 339746818 339746818 268502570 268502570 363614050 363614050 342748554 342748554 89704610 11908736 391073946 391073946 78851360 120281416 120281416 122614824 122614824 103453088 46962816 34512128 24570704 133965312 133965312 380110056 380110056 300738354 42826096 42826096 220338224 233312632 233312632 658368345 691824489 706555413 706555413 571454089 571454089 125833552 88215720 222302449 654971997 705896457 705896457 688914981 742228304 742228304 664094416 664094416 46732672 44249424 8603080 74000352 281412608 551639170 610148897 1043489310 1043489310 504468255 442762652 442762652 240173724 240173724 197262460 236626432 236626432 0 27804704 27804704 17335648 537664896 541590657 541590657 563759264 563759264 16699905 279218706 395845490 395845490 322844416 76546632 85069920 441655424 441655424 437391894 653417028 673715217 781240316 781240316 975439456 975439456 977830935 977830935 515465584 818467637 864432962 953105607 953105607 816023110 507720938 507720938 511775832 511775832 650987097 650987097 509125832 416885838 714378170 780453981 982270986 982270986 26288736 26288736 29570304 37693232 44048224 60036016 63462240 304267304 304267304 352387513 710960263 710960263 654364713 654364713 946508937 946508937 633541664 633541664 617161929 554378443 894984450 894984450 344515258 226046472 676965433 676965433 642592277 238160676 141361508 611978717 611978717 220723468 124185996 103335192 554370576 555431457 565379088 565379088 45179249 61867664 61867664 542670857 878216866 878216866 286446114 843225370 896932779 896932779 369641632 400418594 400418594 40486122 87241512 102891080 102891080 219956088 750780623 750780623 473507338 338675486 909650010 909650010 709166796 709166796 939657451 939657451 542699985 584450860 1045639839 1052979839 1057173567 1057173567 795935917 205133580 621016869 621016869 704349793 896254202 896254202 692213312 999856061 999856061 789604569 761064173 761064173 240087921 744270516 788519837 788519837 247390872 247390872 124404984 124404984 254265136 254265136 464932582 464932582 112983512 117568622 467197574 467197574 431963534 246289190 294266474 294266474 372633610 372633610 272229122 588882716 1025058351 1025058351 879570315 879570315 701826754 896869281 896869281 544218496 544218496 643737753 643737753 495764776 504678222 1035216191 1035216191 502375038 880830217 880830217 1011364744 1011364744 999175472 271395920 298069485 931399865 931399865 881401035 840509584 723049578 723049578 667555065 894644907 894644907 1031064801 1058684945 1058684945 1036223829 1044725136 1044725136 481325042 727712136 727712136 942834257 942834257 834338952 834338952 783745416 783745416 446693718 446693718 558035030 949121679 949121679 206819907 963211800 1065015231 1065015231 772400157 772400157 609553936 642327705 642327705 488704150 587017172 587017172 52170288 226653760 604607756 723535123 723535123 749012290 1011061768 1011061768 835483937 742801516 557816896 683073031 1046448605 1046448605 973341382 973341382 778882461 999123133 999123133 760305159 76156309 711726152 876107882 1023809583 1023809583 552678341 846869923 846869923 593506690 660639514 660639514 537133312 833881345 900908899 900908899 849405208 811153808 811153808 667211464 667211464 632923785 632923785 612975820 649333073 731647821 731647821 634662404 256246088 152044068 153350560 153350560 409091016 409091016 468313590 468313590 297869402 297869402 277891300 293635520 358481920 358489770 358489770 398492248 398492248 101453336 362344040 362344040 345495104 100796432 100796432 84091384 89133152 109125784 111655568 111655568 108417608 251696504 251696504 160237532 145985412 208463960 208463960 190887220 221389140 244003932 260954172 260954172 234881052 223349456 265833196 265833196 285215234 285215234 330105552 330105552 311765586 322567654 407056518 407056518 713540743 713540743 408518674 946611971 946611971 165316896 170268948 191234208 562802913 562802913 62266224 555277649 555277649 247886864 247886864 34461852 86331968 86331968 52590905 363719809 544063010 544063010 403387398 885726926 885726926 807280131 955962054 955962054 883861540 558737850 291454626 907018760 907018760 1025291366 1025291366 738297892 738297892 370704929 579672363 810086018 810086018 860319020 860319020 1006668964 1006668964 898350811 907093257 907093257 624246393 698123317 1057287416 1057287416 994388151 625031352 423833766 306380852 6623360 3258880 16181312 16181312 69272776 69272776 857264680 857264680 388227179 704185428 704185428 891827520 891827520 750621003 1030346564 1030346564 429772454 300645188 268501266 268501266 105284360 508031378 508031378 409166592 349387434 349387434 303806102 642250905 642250905 612438105 970748437 970748437 243536502 551028288 551028288 282272993 161868772 348113440 348113440 62160206 52896868 159988016 159988016 134829252 134829252 841023712 841023712 597897585 597897585 604053513 604053513 72352392 1020568100 1020568100 639382991 558132386 558132386 821576130 821576130 811733379 341005869 764657000 764657000 771421452 771421452 170621848 527359422 1023988034 1023988034 581959808 1024643631 1024643631 992501455 507822409 935880150 950543723 950543723 365499032 859387068 859387068 343158002 278929736 387258704 387258704 449038926 449038926 395330270 163627236 828817901 828817901 880943744 880943744 898129762 898129762 419371239 745667481 906068160 906068160 596968400 939631536 939631536 569143173 679316961 679316961 417878086 96501768 561390880 561390880 631177344 631177344 618737824 631378281 631378281 625000617 625000617 811775465 935370907 935370907 845288336 663803193 789159241 789159241 733362549 733362549 814729240 814729240 475175574 475175574 149521346 380206410 380206410 363329898 107914482 20228528 587361312 595191729 595191729 41304160 146038052 170520640 256553148 256553148 237295432 233864108 238423700 405732467 833213322 945137741 1012509439 1012509439 997262863 997262863 908684218 638715744 638715744 740171277 740171277 492718665 847452570 847452570 637601323 461677568 914694425 914694425 371256329 170732820 170732820 346112136 346112136 475529890 475529890 219991614 304616668 345113004 455475792 480647502 480647502 349678200 300943762 300943762 87177728 107095304 107095304 85464488 73541032 504898564 757131038 757131038 603984080 650252505 933501873 933501873 553077056 584456216 584456216 630752465 857473185 857473185 734663925 734663925 569058276 953280075 953280075 223872684 92279524 473956590 473956590 552243704 623834601 623834601 614964649 702810597 702810597 466293760 465641718 439088382 409616784 409616784 948572404 948572404 867848707 867848707 767290649 767290649 532458734 532458734 224016082 441295352 497412462 497412462 138936324 134492612 77061952 361567050 361567050 504403108 504403108 321650288 321650288 214214700 480637910 480637910 267832508 373867282 402790494 402790494 534052346 534052346 73935746 43306968 0 25767824 66325488 66325488 59368560 59368560 42016784 42016784 1108560 2369536 2435328 2435328 2368000 1049088 135266304 135266820 144450960 175705668 175705668 178865000 243523676 465297672 465297672 32663840 822593025 894343716 1036393957 1036393957 414099332 895927686 895927686 631507305 867661206 867661206 686503365 639731668 370646066 275126658 491984010 491984010 490029788 407217550 451379408 526785546 526785546 616844493 616844493 672087045 672087045 544160132 135211784 135211784 277395784 1013773506 1013773506 816540934 671435527 1023721546 1023721546 603996673 477549108 690361248 690361248 263377788 770986916 770986916 555583176 625476777 625476777 617612896 211169920 211169920 159494240 149321964 92707080 265427928 265427928 164888612 142608568 78983268 911736539 911736539 738301223 192758588 425312719 805612544 805612544 413477190 413477190 268503364 4268160 896076040 896076040 415767587 165152230 84418412 4991488 21757952 21761184 21761184 4205088 1638400 41456240 41472336 41472336 51475808 51475808 50752176 65462992 270283824 310994002 310994002 65840546 269484544 269484544 268435458 256918018 255901884 681848795 681848795 523838286 523838286 816287829 816287829 720916133 720916133 540488257 983733279 983733279 933784587 933784587 899752299 393422344 807412037 807412037 363413104 798895889 896273835 896273835 604054280 1015563284 1015563284 761130669 565837864 612681056 639139912 639139912 121308784 196364572 231412732 775604800 775604800 573638492 614278246 647569541 723518567 901065579 974160044 974160044 821133824 820109763 161611872 565313557 646059270 646066361 646066361 281736728 281736728 906435545 906435545 674408828 674408828 673605641 673605641 736037652 738013013 738013013 734976997 680179105 688225684 727456912 727456912 173294208 185869696 185869696 168420368 172057908 418021720 418021720 287855756 279581800 354419310 481957710 481957710 354948836 354948836 261695100 320098864 413157744 413157744 42613872 84378688 84378688 77201472 148641288 175177821 768095469 851556147 851556147 756554661 756554661 760482445 765526069 765526069 692456293 903955648 903955648 933961176 933961176 218382332 536872993 536872993 566247724 753191373 753191373 543972270 672060328 888024674 888024674 943130592 943130592 678441216 435994532 29928576 25552992 557859072 559989153 662367369 662367369 576191121 521012670 521012670 442634646 354561032 354561032 529483604 529483604 345622026 236631062 16834720 421084128 421084128 65488054 40108080 471945280 471945280 53028144 487150960 487150960 42518078 170021536 191939508 191939508 168432660 302551588 302551588 278413690 495859682 495859682 494289232 499208893 916124617 916124617 642811029 1053294734 1053294734 980123832 666456456 887232457 887232457 615914313 537668424 346845482 346845482 360716352 360716352 344406090 873851403 895410227 895410227 891684024 891684024 476045500 476045500 402655804 335593506 1027681767 1027681767 748733518 941334357 941334357 711948126 328944208 79536242 11267872 91699504 91699504 103497712 105132424 105132424 352843818 352843818 287486976 289957698 345080872 345080872 363614050 363614050 342748554 342748554 89704610 69188864 391073946 391073946 78851360 108942224 108942224 89444352 89444352 43961896 34512128 39555456 305702546 305702546 124847664 380110056 380110056 329252952 329252952 934720809 934720809 347517914 960393569 960393569 691824489 706555413 706555413 571454089 571454089 126570992 724247848 724247848 654971997 705896457 705896457 688914981 568141380 235939792 298322645 298322645 279259458 456998699 1072298599 1072298599 867958543 853961659 610148897 610148897 977338531 977338531 1063323690 1063323690 612632906 509175964 509175964 506783560 708190084 708190084 972188709 972188709 939862023 606957904 606957904 542249601 610752016 610752016 82990528 279218706 395845490 395845490 301990920 79268256 514562884 514562884 441655424 437391894 653417028 653417028 214325896 214325896 975439456 975439456 977830935 977830935 325707580 394744476 945057268 945057268 399892120 399892120 507720938 507720938 511775832 511775832 465161544 465161544 285544372 285544372 116164568 116164568 257441604 387974520 387974520 353843754 328611264 77083520 44048224 60036016 63462240 333108978 333108978 287880018 294790962 294790962 285230336 537068930 877278600 877278600 552141984 864229680 864229680 309022881 894984450 894984450 226046472 226046472 676965433 712781080 712781080 84070536 114187300 219156676 219156676 214235581 759743661 759743661 616669209 555431457 555431457 247934172 247934172 168518524 231742180 347228100 878216866 878216866 286446114 843225370 896932779 908659736 908659736 400418594 400418594 40486122 87241512 92977472 92977472 582750033 750780623 750780623 473507338 338675486 909650010 909650010 709166796 709166796 939657451 939657451 481329650 1053353320 1053353320 959599009 963307308 963307308 795935917 205133580 621016869 621016869 704349793 704349793 689635428 692213312 759169716 789604569 789604569 761064173 761064173 240087921 744270516 788519837 788519837 247390872 247390872 124404984 228633696 254265136 254265136 464932582 464932582 55624368 117568622 467197574 467197574 431963534 176046440 294266474 382782978 382782978 372633610 432836724 884526257 1025058351 1055674142 1055674142 916720402 916720402 896869281 896869281 578604910 821298528 821298528 948741666 948741666 805570563 605652750 136357888 134291460 134283264 812728328 1011364744 1011364744 872260224 866962803 392771226 392771226 454364232 840509584 840509584 776476764 890031646 1046841015 1046841015 446439311 1031064801 1058684945 1058684945 1027801237 1044725136 1044725136 481325042 419480664 419579374 537920001 630424365 834338952 834338952 783745416 783745416 776257951 879081856 879081856 949121679 949121679 206819907 369632512 957768472 957768472 943685543 506481166 706529794 706529794 656688710 743062176 743062176 779003344 779003344 649243464 649243464 980080940 980080940 935350040 1011061768 1011061768 835483937 742801516 557816896 683073031 873056843 950395079 973341382 973341382 653541915 999123133 999123133 760305159 0 503351120 876107882 1023809583 1023809583 805306387 992609283 992609283 712509467 712509467 660639514 890855529 890855529 936974496 936974496 849405208 811153808 811153808 667211464 667211464 648653080 648653080 546098241 187301976 229250412 229250412 256246088 380776854 380776854 138676356 341992270 405244748 432275470 434913326 494947822 494947822 368103364 503108326 503108326 421663014 358489770 371469552 371469552 63163040 63163040 4268160 96930364 148445252 194195060 194195060 174197316 244384280 244384280 53842336 59804576 73393856 251696504 251696504 160237532 145985412 208463960 208463960 190887220 221389140 244003932 260954172 260954172 234881052 223349456 265833196 265833196 285215234 285215234 330105552 330105552 311765586 322567654 407056518 407056518 407476934 407476934 1030528 192885728 194907988 198518068 198518068 173156020 253816108 253816108 214570188 214570188 237412556 237412556 34144652 164438054 273468546 698907648 698907648 48969168 579435400 836098317 971430375 971430375 838286307 838286307 955962054 955962054 477843502 533778992 533778992 482480334 898287115 1025291366 1025291366 738297892 738297892 331074976 335360554 810086018 810086018 860319020 860319020 1006668964 1006668964 369436698 369962010 369962010 232238660 698123317 1057287416 1057287416 994388151 625031352 423833766 551339989 551339989 136036352 715634689 715634689 32312096 51949488 548917265 548917265 61989744 704185428 704185428 136905984 137178372 145569348 145569348 164639332 164639332 164964964 177623848 177623848 105284360 220531508 222791988 222791988 230930644 230930644 134910884 135401988 406490794 406490794 703235944 703235944 944163614 944163614 551028288 411746404 161868772 348113440 348113440 62160206 31795252 155827236 155827236 134829252 134829252 841023712 841023712 597897585 597897585 604053513 604053513 72352392 896795752 896795752 957203982 957203982 701947331 701947331 434685408 1006731752 1006731752 548142920 548142920 771421452 771421452 316735938 527359422 1023988034 1023988034 580535422 1024643631 1024643631 992501455 507822409 935880150 950543723 950543723 501491894 859387068 859387068 343158002 318853312 328256232 328256232 515497414 515497414 395330270 163627236 828817901 828817901 766187023 609817608 379487571 379487571 419371239 745667481 906068160 906068160 695240580 939631536 939631536 569143173 679316961 679316961 501268974 1033536200 1033536200 961882915 961882915 809514411 809514411 608647305 608647305 625000617 625000617 69910817 85119528 543695512 543695512 105973121 780155804 780155804 136400759 837740567 837740567 706911226 706911226 596530288 447913233 380206410 857936457 857936457 898721456 898721456 993776993 993776993 586022901 689146592 689146592 146038052 256553148 256553148 237295432 280758602 280758602 405732467 833213322 934850628 934850628 854066643 676389948 775537407 775537407 437841821 656080144 740092934 740092934 580608070 457472571 637601323 637601323 461677568 1006635341 1006635341 371256329 842475146 842475146 726937374 454410762 475529890 475529890 528130778 528130778 308856210 308856210 132646392 349678200 349678200 268587442 858202913 858202913 826351779 828449187 828449187 610870945 610870945 559480840 431982356 603984080 751833863 941763843 941763843 125180331 388627086 388627086 759774734 1014634383 1014634383 734663925 734663925 569058276 953280075 953280075 223872684 254534012 473956590 473956590 996096648 996096648 880371823 867274797 702810597 702810597 461643719 188897284 191315351 409616784 409616784 948572404 948572404 860090547 977359880 1045165215 1045165215 532458734 532458734 529815646 529815646 497412462 497412462 132204694 77730048 63414432 361567050 361567050 283689066 283689066 42273984 214214700 214214700 480637910 480637910 292152738 373867282 373867282 320524210 357729066 357729066 314052626 314052626 112788800 112866048 371795300 522392318 534976052 534976052 181345492 193676388 193676388 319776646 319776646 195312624 308444784 437643798 1047648971 1047648971 485702362 485702362 435497958 1041837304 1041837304 536948737 810437026 833199553 833199553 894343716 1036393957 1036393957 414099332 895927686 895927686 631507305 867661206 867661206 686503365 639731668 229420608 208083180 491984010 491984010 371642902 371642902 451379408 451379408 71963788 616844493 616844493 672087045 672087045 544160132 135211784 135211784 162395624 1013773506 1013773506 816540934 671435527 1023721546 1023721546 603996673 474370244 620806184 620806184 207915220 590746600 590746600 555583176 625476777 625476777 617612896 75648736 75648736 22315296 29603584 34156752 165095040 165095040 39336564 71178048 78983268 258349732 258349732 189863652 192758588 657211400 805612544 817948308 817948308 604249962 431564646 1026236461 1026236461 896076040 415767587 370673070 743718028 743718028 969213205 969213205 947390343 869209809 573780753 573780753 41472336 41472336 51475808 51475808 50752176 62640192 270283824 310994002 310994002 280603714 307582008 307582008 308426542 409394770 409394770 681848795 681848795 523838286 872439979 872439979 816287829 630728312 882655250 882655250 983733279 983733279 933784587 933784587 899752299 487230792 809504784 809504784 712124613 701964300 896273835 896273835 467480310 1015563284 1015563284 761130669 219007673 612681056 639139912 639139912 121308784 196364572 196364572 775604800 775604800 573638492 614278246 647569541 723518567 901065579 974160044 1062585191 1062585191 694020391 694020391 565313557 565313557 881918136 881918136 307437795 130232618 115676825 665726681 674408828 674408828 673605641 673605641 694206885 719891013 723332661 723332661 54642192 54642192 35184816 35184816 17875488 33571968 50365456 54526128 55068080 418021720 418021720 287855756 279581800 354419310 481957710 481957710 354948836 393389848 393389848 320098864 413157744 413157744 260572284 319692850 438241446 438241446 110824060 329135130 329135130 200871160 283929862 710187653 710187653 619449801 628623824 628623824 305660578 971836982 971836982 1045744287 1045744287 959212069 778309901 778309901 149371110 149371110 543972270 543972270 887956070 888024674 888024674 943130592 943130592 678441216 562477488 62661329 62661329 557859072 559989153 929354058 929354058 910742931 875576726 875576726 688457531 589595040 354561032 529483604 529483604 345622026 387299944 387299944 431719800 431719800 245001622 409311380 972480855 972480855 336814674 974422297 1069629534 1069629534 932498043 729564923 724566837 915938648 915938648 920963547 920963547 716067982 495859682 494289232 494289232 411080102 642811029 642811029 1053294734 1053294734 980123832 666456456 887232457 887232457 615914313 537668424 281953938 387060282 387060282 386015002 372120858 875561739 915408731 915408731 922748464 922748464 594283953 594283953 85773864 134268440 134268440 84935840 458061952 525521598 525521598 328944208 328944208 79536242 178479120 224089300 224089300 213833124 213833124 205457028 352843818 352843818 275292544 289957698 345080872 345080872 77595584 70332928 84079144 84079144 69188864 69188864 83432608 95630184 95630184 114237152 114237152 104282904 104480520 104480520 39497616 39555456 305702546 305702546 124847664 323487792 323487792 329252952 329252952 934720809 934720809 347517914 960393569 960393569 566862940 17705701 2129928 638099457 638099457 652744169 724247848 724247848 107032773 92409960 54730968 186681404 237259052 237259052 298322645 298322645 279259458 456998699 1072298599 1072298599 867958543 853961659 453548261 200275784 977338531 977338531 1063323690 1063323690 612632906 520134814 855237645 1035088763 1035088763 826376675 972188709 972188709 939862023 606957904 954152356 954152356 610752016 831132771 831132771 562467906 395027778 395027778 330374024 330374024 514562884 514562884 303043720 310916472 792203694 792203694 680153792 850416207 850416207 914640372 942163457 942163457 502027073 815613389 945057268 945057268 994918172 994918172 340936704 341236362 456955546 456955546 465161544 465161544 285544372 526217216 526217216 498976742 498074478 387974520 387974520 353843754 328611264 121269128 20123840 20123840 18893842 333108978 333108978 287880018 294790962 505435674 505435674 237228288 370835742 370835742 553912448 864229680 864229680 768156111 287835426 89710656 197421760 197421760 134690832 712781080 712781080 168595904 148424388 219156676 219156676 214235581 759743661 759743661 616669209 553846456 337435598 337435598 462326558 462326558 231742180 347228100 347228100 553756578 676948063 676948063 620832008 926261688 926261688 577665018 374727490 538322393 641129241 806072090 806072090 582750033 787167476 787167476 754431169 688964133 103598713 10767364 403705368 504629790 504629790 314767458 883317668 1053353320 1053353320 520347815 411042148 446726162 446726162 335691814 194688058 231425680 231425680 219829356 172163504 961548544 1031324311 1031324311 588436017 425740704 504323655 772130061 772130061 213066100 686941996 686941996 1062643640 1062643640 398858490 388028864 204336396 51136176 51136176 34076688 36069632 48493008 48493008 46295232 340254232 340254232 382782978 382782978 285744256 432836724 884526257 884526257 1055674142 1055674142 916720402 916720402 536590878 535557630 578604910 821298528 821298528 948741666 948741666 805570563 975674193 975674193 366812026 582083091 812728328 812728328 872260224 872260224 866962803 392771226 541664323 541664323 454364232 776476764 776476764 890031646 1046841015 1046841015 994906682 994906682 957399591 54228247 38562316 144246528 144246528 184571204 184571204 60872132 537920001 630424365 681665116 681665116 255544032 776257951 776257951 879081856 879081856 876611584 260252540 437317710 855760913 957768472 957768472 943685543 506481166 706529794 706529794 656688710 743062176 743062176 779003344 779003344 649243464 649243464 980080940 980080940 935350040 891864363 740352120 432039096 278425664 284841922 284841922 39346754 3310352 40666880 40666880 15205840 812681001 812681001 624444291 179209887 888593355 888593355 351722443 1045978453 1045978453 992609283 992609283 712509467 712509467 630367008 890855529 890855529 936974496 936974496 339480330 352684392 352684392 651081737 651081737 648653080 648653080 603334905 785195101 785195101 566830305 539114640 380776854 380776854 47388828 341992270 405244748 432275470 434913326 494947822 494947822 368103364 503108326 503108326 421663014 203554858 371469552 371469552 122570622 228904732 485076956 485076956 390673008 194195060 194195060 174197316 244384280 246887236 246887236 110836700 134623192 169252480 169252480 142053188 171401808 181083792 181083792 232121216 232121216 229588596 162603876 131479012 150866584 150866584 103732580 366347232 366347232 33287808 56535296 56535296 52428720 147532432 414124992 414124992 545473223 545473223 140326288 554644341 554644341 198518068 198518068 173156020 690734373 690734373 214570188 538339969 538339969 237412556 35651856 164438054 273468546 698907648 969452761 969452761 579435400 836098317 971430375 971430375 900540650 838286307 654831204 959046951 1024045554 1024045554 533778992 482480334 304925204 262219616 262219616 489718092 921931487 921931487 335360554 335360554 359611818 614581219 614581219 567632705 540864416 369436698 283907412 869960946 869960946 529366781 212184636 212184636 145152324 218321980 218321980 551339989 551339989 136036352 715634689 715634689 105952112 109188272 548917265 548917265 86446160 574645217 574645217 50603120 50603120 45818352 45818352 40563488 40563488 32756128 23191968 23191968 24402692 220531508 222791988 222791988 230930644 230930644 134910884 651608889 651608889 733843480 733843480 703235944 944163614 944163614 478151361 505086052 505086052 781436727 785526869 785526869 950424734 950424734 490232879 605046592 605046592 555843712 592023888 599877371 1060807257 1060807257 1013649294 1013649294 753899278 558000744 957203982 957203982 701947331 701947331 434685408 1006731752 1006731752 229122120 229122120 61790161 336157576 336157576 280866156 963937936 963937936 375038401 137556612 685484160 685484160 390959658 324566686 152769720 440741358 501491894 501491894 26214528 338190304 338190304 520679356 520679356 517165062 515497414 432558492 431320068 431320068 163803264 686272724 839143751 839143751 697280821 697280821 438383719 167035840 695240580 695240580 750163648 750163648 208598185 293958669 293958669 501268974 1033536200 1033536200 961882915 961882915 809514411 809514411 610350120 609191337 609191337 929916818 929916818 855975987 855975987 851964880 35656960 556417456 575329425 575329425 906286126 906286126 900387155 706911226 596530288 447913233 99689448 857936457 857936457 898721456 898721456 993776993 993776993 586022901 689146592 689146592 8395776 8395776 136394560 136394560 280758602 280758602 304097930 489334722 934850628 934850628 918102590 918102590 812123351 986187139 986187139 656080144 656080144 580608070 580608070 457472571 228593162 431593194 904757840 1006635341 1006635341 633516280 960238266 960238266 803640878 454410762 480058326 480058326 528130778 528130778 385876026 385876026 132646392 132646392 25955424 25955424 858202913 858202913 826351779 828449187 828449187 610870945 610870945 974666590 974666590 463406855 751833863 941763843 941763843 106042008 388627086 388627086 759774734 1014634383 1014634383 341313496 312475986 368091426 368091426 210342400 194344744 574567160 672644609 672644609 996096648 996096648 880371823 867274797 537281537 860489776 860489776 831675091 297814115 203368638 600621208 868221632 868221632 814388759 977359880 1045165215 1045165215 785405082 819635344 819635344 529815646 471511554 471511554 359799322 300397064 222019168 56311088 35563072 190018876 190018876 101923120 159877884 159877884 92662000 80401408 292152738 292152738 320524210 320524210 357729066 357729066 314052626 314052626 112788800 112866048 371795300 522392318 534976052 534976052 181345492 193676388 193676388 319776646 319776646 195312624 308444784 437643798 1047648971 1047648971 485702362 691145312 691145312 1041837304 1041837304 536948737 810437026 833199553 833199553 828978176 26163200 558831624 604904457 620158601 620158601 614865225 286472960 286472960 276959298 231748336 231748336 73667926 19863976 8918080 9045056 21632160 194531470 332684530 332684530 474258530 751223500 751223500 740020225 71760525 81383616 210086048 210086048 153274688 289821034 629464104 629464104 415551488 469782656 469782656 474370244 648808528 648808528 688920413 688920413 595726449 188637189 75894456 105250936 105250936 75648736 75648736 442880 8492032 143136452 165095040 165095040 67832364 71178048 238772669 633988841 651813344 651813344 804581717 804581717 773152817 893325841 1032719116 1032719116 431564646 1026236461 1026236461 945815943 945815943 711071139 769276280 769276280 969213205 969213205 947390343 869209809 705188724 705188724 698519552 728637413 728637413 577161584 183535656 103679544 270119968 356515626 356515626 822946851 822946851 606874883 623630601 623630601 682231142 682231142 567069921 620667447 872439979 872439979 671213888 630728312 882655250 882655250 86856528 111218738 563058018 563058018 487230792 830935457 830935457 809504784 712124613 701964300 701964300 537920001 230761197 558459120 579652689 579652689 565108065 565108065 64065536 64065536 39400992 404055710 404055710 488610531 1060116633 1060116633 118303800 147916990 616837088 616837088 327199242 1062585191 1062585191 694020391 694020391 411638020 465511522 881918136 881918136 913705050 913705050 825627313 825627313 708873901 708873901 99358128 81685464 81685464 108694944 108694944 97239456 790609072 792846525 792846525 756884016 17875488 55218176 55218176 26132592 140823844 140823844 138431492 151142788 151142788 134252288 57746352 57746352 302584960 393389848 393389848 290190498 379304678 723117621 723117621 672950345 438241446 537398593 537398593 329135130 774577681 774577681 588199897 710187653 710187653 619449801 628623824 628623824 305660578 971836982 971836982 1045744287 1045744287 959212069 778309901 778309901 149371110 149371110 492880070 492880070 887956070 887956070 824748940 290714506 229012040 884998534 884998534 655078777 62661329 69099336 77056738 929354058 929354058 910742931 875576726 875576726 688457531 589595040 325124656 325124656 369693712 369693712 387299944 446741332 446741332 431719800 245001622 409311380 972480855 972480855 336814674 974422297 1069629534 1069629534 991476240 818834855 724566837 915938648 915938648 920963547 920963547 716067982 336673326 303602048 218368104 506216494 506216494 302125074 302125074 156373668 335745920 335745920 354308354 354308354 275271808 310789072 310789072 387060282 387060282 386015002 372120858 875561739 915408731 915408731 922748464 922748464 594283953 759188656 759188656 973613589 973613589 555770176 764200022 764200022 573757072 573757072 273699522 315343954 315343954 224089300 358774180 358774180 342496650 205457028 205457028 516800874 516800874 320865010 351537208 351537208 77595584 70332928 70332928 23200744 75749504 79166280 83432608 95630184 95630184 114237152 114237152 104282904 119328328 119328328 39497616 39497616 40411536 113592528 113592528 293161992 293161992 287835426 382391514 382391514 248422080 248422080 260525572 566862940 645508128 674663353 677317381 677317381 638099457 652744169 652744169 113820921 642900633 642900633 587251761 587251761 571626016 237259052 77609480 106497224 106497224 186756648 186756648 135375388 86139140 353046382 353046382 277480476 285877256 285877256 268637302 360786076 520134814 520134814 855237645 1035088763 1035088763 826376675 826376675 465133034 465133034 189298892 954152356 954152356 604460913 831132771 831132771 562467906 395027778 395027778 330374024 330374024 400226144 400226144 303043720 310916472 792203694 792203694 680153792 850416207 850416207 914640372 942163457 942163457 502027073 1040052207 1040052207 912794035 994918172 994918172 401800006 401800006 407945012 407945012 546443841 1028625119 1028625119 835909261 795204624 498976742 498074478 135404416 146049924 157011008 157011008 121269128 56072608 56072608 110339392 110339392 97773000 473761137 933702847 933702847 876821929 980336506 980336506 718477421 892145073 892145073 768156111 768156111 287835426 817964164 817964164 711384544 711384544 163017597 168595904 168595904 148424388 148412744 148412744 244437460 244437460 217179084 153511524 300074818 337435598 337435598 462326558 462326558 73465854 1005687481 1005687481 921854506 676948063 972021917 972021917 926261688 926261688 577665018 616105097 866944042 866944042 809577850 809577850 69569960 787167476 787167476 754431169 905491955 905491955 410743890 922224731 922224731 900726811 900726811 1023443648 1023443648 836829268 836829268 845173014 845173014 446726162 335691814 278921538 278921538 231425680 703615141 703615141 961548544 1031324311 1031324311 844221852 1010642703 1010642703 772130061 772130061 213066100 686941996 686941996 1062643640 1062643640 398858490 388028864 261925844 306501506 306501506 210851152 102896670 442312198 1031914623 1036544026 1036544026 839736435 587597346 106497130 84299304 85760040 85760040 644615577 644615577 172178246 753383517 753383517 536590878 535557630 875600170 875600170 614039656 614039656 555345441 450489057 975674193 975674193 366812026 582083091 582083091 466496970 466496970 655747641 655747641 717753907 910721351 910721351 900779284 293129123 643851275 643851275 1028912804 1028912804 994906682 994906682 957399591 243316957 777308829 779756800 779756800 771882133 416549574 628022461 628022461 474507426 658428815 658428815 341026324 341026324 386234660 386234660 996172000 996172000 358867626 810967734 855760913 914474007 914474007 277349442 823240454 823240454 568109256 568109256 612816969 612816969 688964493 688964493 771612656 771612656 167772180 159397664 121754424 185747320 185747320 154408144 278374752 284841922 284841922 39346754 3310352 40666880 40666880 15205840 593570048 593570048 736309749 513220250 888593355 888593355 685510341 1045978453 1045978453 113447616 115640344 274857996 292721566 325226930 1023427095 1023427095 694792714 930677122 930677122 921902208 921902208 651081737 651081737 559490192 603334905 603334905 785195101 785195101 566830305 539114640 174199428 178587864 178587864 275325888 275325888 150028556 150028556 148547080 208295402 362711818 362711818 277873218 277873218 127145826 125700906 67721616 122570622 228904732 485076956 485076956 390673008 138024708 83892012 168045324 238422464 246887236 246887236 216007168 216071872 216071872 169252480 139839232 171401808 181083792 181083792 232121216 342380034 513432960 513432960 338348630 326503462 326503462 108581698 366347232 366347232 365058330 121948344 317873418 317873418 142523844 414124992 414124992 545473223 545473223 176338048 554644341 554644341 512 271360 641024 690734373 690734373 158389140 538339969 538339969 8338960 35651856 126179584 126179584 92532840 969452761 969452761 576736006 576736006 423898021 900540650 900540650 681459183 654831204 959046951 1024045554 1024045554 510734890 480321870 304925204 262219616 262219616 489718092 921931487 921931487 528480264 944073135 944073135 359611818 607544762 607544762 540864416 283907412 283907412 869960946 869960946 529366781 17843200 51380784 96122152 96122152 77829464 25691232 87607080 87607080 125029064 125029064 105952112 109188272 109188272 69743600 86446160 86446160 37100304 50603120 50603120 45818352 45818352 40563488 40563488 32756128 25593984 17217600 18400832 71528528 88133840 88133840 73722896 126635928 126635928 651608889 675191550 733843480 1029095250 1029095250 497025825 355991154 711517140 711517140 505086052 781436727 785526869 785526869 950424734 950424734 490232879 605046592 605046592 551616729 592023888 599877371 1060807257 1060807257 1013649294 1013649294 803281943 656758757 656758757 296652185 505154174 505154174 505415006 757661738 757661738 404826639 404826639 122081817 615765649 615765649 582017831 966312770 966312770 838870336 137556612 685484160 685484160 554179760 122160000 219031821 219031821 805151324 851650012 851650012 399611050 338190304 520679356 520679356 517165062 432558492 432558492 431320068 431320068 264528137 686272724 839143751 839143751 697280821 697280821 696551425 696551425 679477317 555948160 555948160 223224432 50038188 178791832 178791832 191942580 191942580 950083329 950083329 717621585 1057167915 1057167915 887642785 609191337 1051382987 1051382987 929916818 855975987 855975987 1054983360 1054983360 556417456 759680199 759680199 906286126 906286126 900387155 952426359 952426359 79893280 99689448 99689448 66721776 66721776 26821024 178952800 178952800 18439392 137880788 146922112 146922112 36807220 213555216 213555216 87424292 244258652 244258652 569952225 969894679 969894679 918102590 918102590 812123351 986187139 1020680640 1020680640 227530443 332348658 401081368 401081368 326707762 326707762 904757840 931000251 931000251 796581520 960238266 960238266 803640878 410815644 480058326 480058326 477275882 477275882 390088080 461502730 478676046 478676046 222669434 323436208 323436208 57201050 100686368 161154860 161154860 210186286 439036687 974666590 974666590 463406855 603984080 603984080 227020387 1030073519 1030073519 393394217 493523374 493523374 1014323130 1014323130 573119155 556356106 328328988 235873192 499174946 974594188 974594188 911612571 575914506 644906042 644906042 357369241 537281537 860489776 860489776 966136340 966136340 203368638 941176414 941176414 814388759 814388759 605778540 266303662 785405082 785405082 819635344 819635344 273715362 471511554 471511554 359799322 300397064 222019168 39428880 36791952 190018876 190018876 101923120 159877884 159877884 92662000 111372880 304015799 997215245 997215245 833537251 957557551 957557551 577835910 503591316 503591316 308730258 366866068 1036099022 1036099022 1012470080 205521624 185733684 111290604 12927968 21020832 82923584 582811405 582811405 617288585 617288585 776631948 776631948 691145312 681974085 31795680 31795680 231284136 231284136 142453124 943736546 943736546 1023102925 1023102925 620158601 620158601 614865225 804513008 903075443 981802932 981802932 517480840 231224866 474095946 474095946 337065382 523120558 523120558 332684530 332684530 873090579 873090579 906610184 906610184 806529544 81383616 212656456 964944136 964944136 625590537 629464104 1014532846 1014532846 939527082 546705995 360615232 648808528 877843083 894075905 894075905 622068257 604910528 608652449 608652449 567859848 37788224 37788224 22775328 80919208 143136452 163845248 163845248 89135168 89135168 238772669 633988841 651813344 651813344 804581717 804581717 548407589 893325841 1032719116 1032719116 162055435 313211344 612762164 945815943 945815943 711071139 769276280 769276280 696453477 696453477 181284560 680133744 705188724 705188724 698519552 728637413 728637413 577161584 183535656 103679544 270119968 356515626 356515626 822946851 822946851 606874883 623630601 623630601 682231142 682231142 658844816 709732513 717289757 719845845 719845845 114295512 114295512 86856528 646451601 646451601 55051640 555750689 555750689 830935457 830935457 862217543 862217543 786760580 899155563 899155563 911425539 911425539 776200785 776200785 763001849 868326683 868326683 683092924 46194856 404055710 404055710 488610531 1060116633 1060116633 832383397 932562890 932562890 616837088 342467861 978625558 978625558 441747110 999056386 999056386 465511522 465511522 613486715 937759512 937759512 825627313 825627313 708873901 708873901 133624424 133624424 129618432 108694944 110386752 110386752 790609072 792846525 792846525 756884016 151657480 151657480 55218176 183129296 183129296 177083808 138431492 151142788 151142788 309337692 515184078 515184078 302584960 525212852 525212852 434742990 237208544 723117621 723117621 672950345 120001040 537398593 537398593 627703392 774577681 774577681 588199897 655938688 655938688 44304720 169610832 177473108 177473108 303837904 303837904 225091864 824902912 824902912 225116568 106968492 23199904 71303296 71303296 270543872 270543872 17237824 290714506 290714506 229012040 884998534 884998534 687919104 688001061 688001061 290208128 290208128 288046242 290405538 807086090 807086090 336494742 336494742 325124656 325124656 369693712 369693712 369201738 446741332 446741332 351803090 212079694 212079694 113693058 42281040 42281040 143374528 143374528 991476240 991476240 818834855 170398472 257373232 257373232 185076704 446421092 446421092 336673326 193120512 218368104 506216494 506216494 302125074 376983338 376983338 380809402 380809402 354308354 396383304 396383304 310789072 310789072 388481080 400009242 400009242 380633946 352714818 177342588 177342588 614469984 614469984 234930204 759188656 759188656 973613589 973613589 555770176 764200022 764200022 573757072 573757072 273699522 315343954 315343954 182706580 358774180 358774180 342496650 300756450 300756450 516800874 516800874 320865010 351537208 351537208 281092584 278082114 10556162 409993740 409993740 79166280 137364748 137364748 84810048 236852532 236852532 110150944 153650004 153650004 255462156 255462156 373233034 373233034 63123696 67399480 67399480 289175248 973792962 973792962 1042374851 1042374851 926151483 889971800 645508128 674663353 677317381 677317381 589435185 605656273 619599833 619599833 642900633 695935305 695935305 691012389 756221737 756221737 691026473 688859168 84876412 235162408 235441156 235441156 104630180 248566856 248566856 277480476 509162048 509162048 441586326 457272788 457272788 266612746 257769916 257769916 255539004 11154428 277094464 277094464 8456258 0 0 0 0 0 1015808 1015808 660480 100500120 100500120 126369664 126369664 94971240 56540296 12621176 196641400 217080924 384469272 384469272 267656562 237244928 237244928 184715408 225487939 1040052207 1040052207 912794035 912794035 1011349650 1011349650 543611265 1066554168 1066554168 546443841 1028625119 1028625119 835909261 795204624 520712896 488061486 135404416 146049924 157011008 562061061 727713234 948476983 948476983 489345412 954369368 954369368 856211536 933702847 933702847 876821929 980336506 980336506 718477421 892145073 892145073 90612017 954931208 954931208 834315563 817964164 908394792 908394792 747375693 425936239 67015136 1051207519 1051207519 195825679 966728939 1056120735 1056120735 1004741184 80831008 93849280 94376264 94376264 71438472 32653760 1005687481 1005687481 973078551 936968197 972021917 972021917 375216824 321202482 64039042 616105097 866944042 866944042 809577850 809577850 559823683 559823683 315917530 599416939 905491955 905491955 656624744 922224731 922224731 900726811 900726811 1023443648 1023443648 849655868 836829268 845173014 845173014 218842764 268961088 278921538 278921538 155210241 703615141 703615141 648562031 923293263 923293263 844221852 1010642703 1010642703 555290673 555290673 50340913 67261248 78828360 78828360 77775688 245703504 261925844 261925844 306501506 306501506 214960708 214960708 442312198 1031914623 1036544026 1036544026 839736435 587597346 335717994 364363786 640239634 640239634 275817272 397411194 488238354 746883404 808267591 808766211 808766211 875600170 875600170 614039656 614039656 555345441 450489057 432150070 97589112 97589112 27375552 27375552 40380464 251663781 251663781 412887220 919210102 919210102 910721351 900779284 293129123 214057249 742441100 1028912804 1028912804 988352479 988352479 802129219 583349478 777308829 779756800 779756800 771882133 416549574 628022461 628022461 474507426 658428815 658428815 341026324 341026324 386234660 388026576 1044809880 1044809880 358867626 810967734 810967734 591413805 591413805 477428515 823240454 823240454 562065450 891453636 891453636 675418245 769823121 769823121 771612656 771612656 177507932 173785576 121754424 380781762 380781762 154408144 294145408 294145408 445174107 582097475 716637087 979720542 979720542 538350419 213763922 213763922 736309749 513220250 513220250 685313220 685510341 1069703752 1069703752 1028119223 962255023 749948647 739768845 739768845 1023427095 1023427095 694792714 930677122 930677122 921902208 921902208 303052450 316226771 832189931 892341267 906115131 906115131 626710185 743664805 818278918 818278918 813990068 813990068 673356164 485176782 485176782 300907910 488158946 488158946 469933864 362711818 365492792 365492792 130842242 43569858 23631296 30802784 154141600 154141600 136714500 113903032 84809512 84809512 168045324 240126168 240126168 217059788 216007168 216071872 216071872 180474328 178783572 353987766 353987766 39509008 301271840 342380034 513432960 513432960 338348630 326503462 326503462 108581698 71958024 365058330 365058330 121948344 317873418 317873418 14511040 14511040 279635536 279635536 181074578 176338048 146461156 146461156 55889184 55889184 40348048 40348048 188114308 188114308 38011456 46432976 46432976 39341648 105644976 105644976 254574072 304609554 312695546 312695546 198204550 406686022 406686022 280514030 440983802 440983802 242936486 521397512 521397512 515115870 515115870 304161048 523269430 523269430 423532586 521790811 528480264 528480264 944073135 944073135 240381546 607544762 941394732 941394732 151986242 151986242 385380752 462213772 462213772 190005432 61985892 139502596 140945664 140945664 25281556 98607476 199314936 210200816 210200816 111467544 111467544 43269472 74322832 74322832 60307176 43662720 54984896 54984896 46805024 125504984 125504984 113764744 82511200 32378144 32378144 18400832 29812384 80536648 80536648 23186752 23186752 90181120 201248740 675191550 675191550 1029095250 1029095250 972162342 972162342 711517140 711517140 210780793 246156636 419589480 481295694 498732490 498732490 679002884 679002884 407422853 1070081582 1070081582 1053344991 479199822 479199822 470818880 803281943 803281943 656758757 904024128 904024128 505154174 505154174 505415006 539500560 539500560 806892758 806892758 247666321 615765649 615765649 582017831 966868816 966868816 839109493 988859186 988859186 947373539 806263434 916246107 919879542 919879542 805151324 902372933 902372933 399611050 82365130 117966720 117966720 195743879 693649429 693649429 698634912 698634912 264528137 593903888 599961604 599961604 143102053 145050721 722776640 722776640 729883461 729883461 223224432 223224432 257159868 257159868 114885320 245249348 245249348 950083329 950083329 717621585 1057167915 1057167915 887642785 548195649 1051382987 1051382987 470806743 535261800 713250402 1054983360 1054983360 493582773 759680199 759680199 426030347 314445288 587093222 952426359 952426359 95509810 380183898 855197443 855197443 935011568 935011568 996346753 996346753 730795937 730795937 697376384 146922112 36807220 213555216 213555216 87424292 244258652 244258652 569952225 969894679 969894679 661399361 661399361 658015646 658015646 1020680640 1020680640 227530443 134882032 401081368 401081368 326707762 326707762 1054311030 1054311030 796581520 796581520 6427012 167825716 167825716 185973328 313295696 313295696 243868764 390088080 390088080 461502730 478676046 478676046 421153440 323436208 323436208 57201050 49727232 45514048 87307104 87307104 439036687 869342911 869342911 496249559 958743913 958743913 268454912 1030073519 1030073519 912875576 912875576 739027898 1014323130 1014323130 573119155 556356106 516173888 516173888 499174946 974594188 974594188 911612571 575914506 575914506 878449224 878449224 818814147 453268212 420798054 966136340 966136340 377612346 941176414 941176414 85160571 54674072 184320 708632 34934928 106819224 184730264 184730264 105959476 42421040 12632256 212172544 212172544 77145484 61343616 61343616 55608016 123213728 123213728 94222024 33738768 578710928 665938438 665938438 997215245 997215245 833537251 957557551 957557551 577835910 503591316 503591316 308730258 366866068 1036099022 1036099022 1012470080 224927672 185733684 595002009 595002009 542848789 143337025 582811405 582811405 617288585 617288585 776631948 928062787 928062787 631389929 665131369 665131369 854132627 854132627 142453124 943736546 943736546 1023102925 1023102925 584989704 627184041 627184041 804513008 1050083015 1050083015 981802932 517480840 357372698 474095946 474095946 337065382 523120558 523120558 99418262 672814600 873090579 873090579 906610184 906610184 806529544 671613957 212656456 964944136 964944136 684897282 684897282 1014532846 1014532846 939527082 546705995 360615232 624614568 877843083 894075905 894075905 622068257 604910528 608652449 608652449 567859848 92810884 22775328 139331076 139331076 140381696 140381696 81205448 89135168 89135168 23665056 115949648 265892980 265892980 248153996 248153996 252233848 879532708 1027266351 1027266351 162055435 552341632 552341632 275257472 271457538 18489088 19799840 20336672 20633376 20633376 2266912 680133744 680133744 59381061 20044576 20044576 7678848 20441376 20441376 10116064 9498048 275639682 283403328 283403328 273493122 656752696 656752696 539355393 242063724 658844816 658844816 709732513 717289757 719845845 719845845 114295512 956644386 956644386 823837899 823837899 541088804 959172867 959172867 858226708 536872384 862217543 862217543 786760580 899155563 899155563 911425539 911425539 776200785 776200785 763001849 868326683 868326683 683092924 155328864 229680068 229680068 17041440 705699900 705699900 832383397 932562890 932562890 901517163 503843701 342467861 860651571 860651571 999056386 999056386 848887824 991439125 991439125 937759512 937759512 620170208 121910232 102152464 121700480 133624424 133624424 129618432 33419232 131615840 131615840 171608492 171608492 168448388 151224972 151657480 151657480 101243016 198053912 198053912 224836992 224836992 48597220 14680064 309337692 515184078 515184078 338337536 525212852 525212852 434742990 237208544 237208544 126376544 658169840 658169840 128258233 78193992 627703392 627703392 661845200 661845200 632891241 596643205 596643205 169610832 554172481 554172481 546054161 442787846 172720157 824902912 824902912 799085581 341967012 341967012 21483680 151579652 270543872 362682024 362682024 286918208 25645248 25645248 551555168 551555168 687919104 688001061 688001061 290208128 290208128 549467176 626197857 807086090 807086090 191494552 369583156 369583156 16959202 341884928 341884928 339972616 68317322 38683136 38683136 36576528 35799120 981757961 981757961 512227422 978964825 1019597398 1019597398 143549444 999761584 999761584 906368816 906368816 1025386515 1025386515 894144408 102784320 102784320 201942284 201942284 167556416 203398948 376983338 376983338 380809402 380809402 278020432 396383304 396383304 312959792 312959792 388481080 400009242 400009242 380633946 307630922 1048709063 1048709063 815792451 614469984 986395863 986395863 681748359 235929621 683630637 1034211887 1034211887 472458510 632489000 704979780 704979780 112272216 143704644 143704644 50357764 50357764 274844768 300756450 300756450 353461202 353461202 149946938 364004168 364004168 335728650 366059590 423926062 492231206 492231206 73926024 257609246 257609246 84810048 236852532 236852532 110150944 153650004 235180556 255462156 255462156 373233034 373233034 63123696 167810728 322163006 322163006 973792962 973792962 1042374851 1042374851 926151483 893773995 893773995 897447018 897447018 908920991 908920991 272800161 619599833 619599833 619320777 695935305 695935305 691012389 756221737 756221737 691026473 688859168 430699878 430699878 383828442 438094056 438094056 492045568 492045568 476072432 509162048 509162048 441586326 457272788 457272788 296557858 870764857 972903675 972903675 900520321 900520321 458865738 458865738 174734188 949173380 949173380 616039505 836505315 836505315 562595426 390875296 382769776 382769776 126369664 126369664 291521346 291521346 84467768 397518458 397518458 217080924 223134628 223134628 237244928 312150912 312150912 134226620 470336526 495209568 495209568 336192522 1011349650 1011349650 543611265 1066554168 1066554168 94820712 220627012 220627012 120321336 520712896 520712896 488061486 209335448 105227040 641738001 641738001 727713234 948476983 948476983 489345412 954369368 954369368 856211536 856211536 360136247 480981282 697835840 697835840 710969399 710969399 908118032 908118032 954931208 954931208 834315563 645948192 908394792 908394792 866462067 425936239 33404260 1051207519 1051207519 195825679 966728939 1056120735 1056120735 1004741184 268484930 268698638 268698638 419639334 419639334 117905586 888164860 973078551 973078551 936968197 508206480 375216824 375216824 321202482 64039042 87581192 279998448 323873970 323873970 313788849 559823683 559823683 352336456 599416939 599416939 656624744 656624744 548096924 366481124 794217528 794217528 604131353 849655868 849655868 231670904 172700828 218842764 230270508 247178786 490858010 532386470 532386470 548455456 553784852 553784852 673875825 673875825 798163989 798163989 999014919 999014919 555290673 765806876 765806876 708979064 867545316 867545316 437594646 259345940 259345940 131859504 252707376 315891668 315891668 346740034 363726944 363726944 151281488 289034752 335717994 335717994 364363786 758770110 758770110 526772013 397411194 488238354 844880299 953752274 953752274 808766211 685305300 685305300 655369768 705765909 705765909 503322140 503322140 403695858 445484224 445484224 170899204 195130776 239112736 239112736 16777248 919210102 919210102 463214507 44827984 44827984 44826640 742441100 806471449 970571143 988352479 988352479 802129219 748716484 748716484 749585856 749585856 672173604 672173604 564051836 767877121 767877121 652337625 537940496 110774328 85058088 109678548 388026576 1044809880 1044809880 291801167 574588708 574588708 591413805 591413805 503451678 727436634 727436634 562065450 891453636 891453636 1017984329 1017984329 769823121 667078905 566141268 456507858 173785576 397724346 397724346 380781762 118223928 294145408 385802202 445174107 1051857759 1051857759 979720542 979720542 712644373 574923012 574923012 209542738 0 0 537141760 538257921 1069703752 1069703752 1028119223 962255023 749948647 739768845 739768845 496269187 496269187 491762208 571490272 612827977 874129633 874129633 303052450 316226771 832189931 892341267 906115131 906115131 626710185 743664805 818278918 818278918 813990068 813990068 673356164 485176782 485176782 300907910 488158946 488158946 469933864 373201850 373201850 365492792 371161144 387299434 387299434 120785218 16908676 199761264 199761264 113903032 235415760 235415760 113509020 240126168 240126168 107111376 107111376 101716376 180474328 180474328 453069892 453069892 353987766 441634890 441634890 488252080 488252080 374545926 268834818 212472140 378015872 378015872 482984808 482984808 218689026 27576672 288456832 288456832 141791364 141791364 279635536 405470016 405724422 405724422 279655200 146461156 136464576 136464576 40348048 40348048 188114308 188114308 38011456 170683284 170683284 43066752 144908372 144908372 254574072 254574072 210890332 261886484 261886484 239865200 252299796 262363258 440983802 440983802 242936486 521397512 521397512 515115870 515115870 304161048 523269430 523269430 423532586 202836738 79773968 115466712 115466712 25604162 240381546 470686734 941394732 941394732 151986242 166290820 166290820 203229300 572899713 701023425 730646933 730646933 706765120 163096384 160317176 160317176 199314936 210200816 210200816 111467544 111467544 91691584 74322832 74322832 184556068 184556068 54984896 78133904 119671008 207940232 207940232 166936132 166936132 163050212 32378144 148693028 148693028 151578881 151578881 606605632 765460955 765460955 503317010 758211678 758211678 766583661 766583661 972162342 972162342 762428172 581030150 581030150 781398621 781398621 481295694 1009637216 1009637216 810075329 810075329 617104137 1070081582 1070081582 1053344991 479199822 479199822 470818880 273752064 273752064 268501632 904024128 904024128 42472704 746198548 752489101 752489101 737346676 806892758 806892758 258223508 246545954 463796724 463796724 966868816 966868816 839109493 988859186 988859186 947373539 806263434 916246107 919879542 919879542 778302316 902372933 902372933 249064420 99195776 641731754 993401655 993401655 693649429 693649429 698634912 698634912 426633670 593903888 593903888 690608228 690608228 853582870 853582870 722776640 729883461 729883461 186292900 605936720 653911965 726090809 792265517 792265517 629607756 202118872 202118872 169610772 68825608 68825608 81576480 81576480 76082376 70371360 70304520 70304520 11010240 15443008 807523093 807523093 553692817 553692817 290826785 314445288 314445288 289985298 289985298 269529504 380183898 855197443 855197443 935011568 935011568 996346753 996346753 730795937 730795937 697376384 55546032 54688944 54688944 1098240 1098240 1049088 155349944 254818812 487827990 487827990 182553936 518283338 518283338 971605543 971605543 891289899 891289899 921597375 921597375 515750337 162792180 162792180 1054311030 1054311030 729680472 769835048 769835048 816026498 816026498 187021648 185973328 247338218 247338218 88154290 88154290 331383906 331383906 421153440 421153440 282593408 282593408 59203152 59203152 202782740 202782740 140380230 377094401 869342911 869342911 496249559 958743913 958743913 697919173 270814210 270814210 912875576 912875576 739027898 1019488849 1019488849 942046800 942046800 964252735 964252735 1039032659 1039032659 824240620 824240620 709941394 709941394 878449224 878449224 822934533 466356772 466356772 438864196 324426272 588798466 625607320 625607320 722858740 776809985 1058954464 1058954464 343552267 754478984 754478984 812952143 812952143 888362951 888362951 965099041 965099041 675379272 119402040 119402040 204174364 204174364 627225713 627225713 728176384 728176384 665938438 665938438 381629422 249531911 84224040 383841042 383841042 4317312 68358664 68358664 129582648 129582648 126920480 137105552 224927672 224927672 174988692 595002009 595002009 542848789 143337025 240887000 240887000 246448720 246448720 741110804 928062787 958011407 958011407 665131369 665131369 854132627 854132627 84343984 84343984 37773500 650461782 650461782 508068766 627184041 627184041 577909314 1050083015 1050083015 898052940 357372698 357372698 232795132 173751592 273497282 437851270 437851270 496450158 731301422 731301422 252391949 377615684 671089664 681853708 681853708 138472393 778487834 778487834 684897282 684897282 468003318 468003318 402983114 302829792 103941434 103941434 63317162 277171234 277171234 150093764 164997092 164997092 205656204 205656204 92810884 9818720 139331076 139331076 140381696 140381696 81597640 81597640 25552992 42047680 135398132 265892980 602625729 719058453 719058453 252233848 740053627 740053627 292431020 479124558 552341632 1037177844 1037177844 878656253 1052717641 1052717641 942221636 658729352 551659533 175710577 735356448 735356448 688539329 676437348 689037861 689037861 559030592 185826232 82102728 82102728 275639682 283403328 628319553 824166961 874821472 874821472 539355393 679461910 679461910 160488151 634320442 634320442 415521199 652621645 936961387 956644386 956644386 1025691951 1025691951 551591106 959172867 959172867 858226708 604269585 604269585 684461253 684461253 672426622 478430746 525508646 525508646 432524914 516997854 516997854 210303510 71478284 115352024 243401184 358748450 361175149 1034105007 1034105007 887429193 555697345 800654422 901517163 901517163 503843701 268552404 860651571 860651571 274549892 285223090 848887824 991439125 991439125 681838130 589576417 589576417 94372256 553094432 652930705 652930705 606557985 561099753 662081136 662081136 621071561 608571848 95470440 143786112 215093828 215093828 101243016 101243016 198053912 198053912 224836992 341861326 341861326 418556936 418556936 370048754 338337536 338337536 352828104 370212408 391383832 391383832 637575841 637575841 658169840 658169840 558730856 558730856 97856232 82701768 661845200 661845200 632891241 596643205 596643205 144518724 554172481 554172481 823239958 959087015 959087015 694044043 799085581 799085581 341967012 341967012 17655936 151579652 151579652 362682024 362682024 298712650 298712650 229008556 830587174 830587174 684266512 763887653 763887653 277479850 277479850 560211392 626197857 878448267 878448267 191494552 369583156 369583156 16959202 341884928 341884928 394750410 394750410 498093286 501092046 501092046 363492014 981757961 981757961 512227422 978964825 1019597398 1019597398 56048304 999761584 999761584 906368816 906368816 1025386515 1025386515 894144408 122293056 251741232 251741232 201942284 167556416 203398948 210772352 210772352 119546488 49332696 236081540 236081540 76652096 312959792 312959792 299877474 300731874 375949432 375949432 447342818 1048709063 1048709063 815792451 744965926 986395863 986395863 681748359 235929621 683630637 1034211887 1034211887 586592370 632489000 704979780 704979780 322534914 322534914 196268916 425815324 425815324 393885082 242237034 395061064 401162400 401162400 379224320 379224320 364004168 335728650 366059590 423926062 492231206 492231206 73926024 408948108 408948108 44489040 44489040 112776816 125878392 125878392 235180556 235180556 235630592 237052188 237052188 29673696 167810728 322163006 322163006 583110968 583110968 993932514 993932514 822565129 893773995 893773995 897447018 897447018 908920991 908920991 659277160 659277160 628099401 628099401 606672608 549558249 414712390 414712390 234895360 402915358 418860704 430699878 430699878 383828442 438094056 438094056 492045568 492045568 503540420 503540420 348254538 348254538 290115380 296557858 296557858 870764857 972903675 972903675 900520321 900520321 458865738 458865738 308528520 949173380 949173380 616039505 836505315 836505315 562595426 390875296 382769776 382769776 131735008 41881624 291521346 291521346 108802224 397518458 397518458 365953232 365953232 112511832 112511832 312150912 312150912 410075185 976285419 976285419 559451405 336192522 310787939 230563692 230563692 923220484 923220484 760906455 893604053 893604053 827584286 827584286 294440034 294440034 209335448 976564412 976564412 891247252 891247252 289948857 63440112 172150932 172150932 184598580 796787826 796787826 360136247 881353740 881353740 697835840 710969399 710969399 908118032 908118032 865862742 482494317 598510104 632817513 632817513 866462067 866462067 403712838 953471174 953471174 814185056 814185056 812285163 87753067 225791972 225791972 268484930 268698638 268698638 419639334 419639334 117905586 356660968 896603947 896603947 780690446 780690446 252220619 846605229 882746785 882746785 871475043 720978786 720978786 743277096 743277096 284213936 352336456 352336456 314259282 244023814 208941507 548096924 548096924 306758802 794217528 794217528 164417785 58755168 231670904 231670904 172700828 268484992 268484992 247178786 490858010 532386470 532386470 548455456 548455456 447743124 173560182 16961568 17041440 553818144 999014919 999014919 554047521 765806876 765806876 708979064 867545316 867545316 437594646 231785196 231785196 127193288 252707376 315891668 315891668 346740034 556021227 642496452 969607969 969607969 572803664 290769570 303358826 758770110 758770110 526772013 585749825 778298887 844880299 953752274 953752274 551300186 685305300 685305300 655369768 705765909 705765909 774203934 774203934 403695858 445484224 445484224 170899204 195130776 239112736 239112736 238291740 238291740 688965223 1034209647 1034209647 457315495 457315495 270533147 365693765 970571143 1007786764 1007786764 503167911 748716484 748716484 718988877 718988877 672173604 672173604 564051836 767877121 767877121 652337625 613224759 604182047 549024320 549024320 279103756 295082102 295082102 279455092 574588708 574588708 441495053 615221424 615221424 503451678 466017692 466017692 977834054 977834054 1017984329 1017984329 490922376 445758272 456507858 456507858 124841520 397724346 397724346 44639800 118223928 281739040 385802202 405762435 1051857759 1051857759 607519367 712644373 712644373 574923012 1012998670 1012998670 946815943 946815943 806321728 806321728 955318212 955318212 894823083 42423035 480248134 613155652 613155652 483531947 203428168 414781538 634791704 634791704 296880763 109052656 354683178 354683178 295698720 27527520 27527520 39912448 39912448 35725584 35992336 36836112 36836112 18292736 43272536 100976664 256984300 256984300 219293768 244566056 295379608 373201850 373201850 349977370 371161144 387299434 412135728 412135728 53877552 199761264 199761264 253178448 253178448 235415760 137439352 126167160 112535936 249047896 249047896 101716376 167772180 167772180 453069892 453069892 328237672 441634890 441634890 488252080 488252080 374545926 355827056 355827056 378015872 378015872 482984808 482984808 218689026 336627200 336627200 4887234 141791364 141791364 16463808 405470016 405724422 405724422 279655200 175512468 175512468 136464576 58330112 58071984 66644320 66644320 17075920 170683284 170683284 43066752 144908372 166997808 180954324 197068116 245242372 261886484 261886484 239865200 252299796 252299796 229315856 229315856 537993729 537993729 441503028 441503028 300010422 412610106 412610106 419432448 769193676 769193676 437055549 733315875 733315875 304012561 572659582 572659582 424512815 378461274 378461274 166290820 166290820 197502233 572899713 701023425 730646933 730646933 706765120 163096384 160317176 160317176 29458556 53542056 88776944 88776944 91691584 91691584 82388424 82388424 184556068 184556068 29494752 78133904 119671008 207940232 207940232 166936132 166936132 163050212 21007648 148693028 148693028 746342980 752167629 752167629 765460955 765460955 611391272 758211678 758211678 766583661 992478248 992478248 762428172 762428172 581030150 581030150 781398621 781398621 480622566 1009637216 1009637216 810075329 810075329 617104137 995151978 1048826383 1048826383 399684281 554076284 872746031 872746031 832676192 832676192 297088867 521018430 973507168 978361161 981079959 981079959 979026967 979026967 607168031 482345166 912286941 912286941 106488320 106488320 812130904 1033481899 1033481899 543355744 543355744 744140892 744140892 899293524 899293524 66657831 194014056 249064420 249064420 202218608 643076272 993401655 993401655 279629429 0 281244036 426633670 426633670 199635461 457689394 690608228 690608228 853582870 853582870 555778053 671088645 671088645 186292900 605936720 653911965 726090809 792265517 792265517 629607756 885663541 885663541 673000965 1071986387 1071986387 279393192 76957773 858846763 858846763 801650348 688278985 408216453 173212080 807523093 807523093 553692817 553692817 585631466 585631466 368117011 289985298 289985298 269529504 272758050 296817122 296817122 277480928 277480928 171853888 173542436 173542436 180302180 180302180 84778220 163092280 163092280 94408244 112344612 218896556 218896556 254818812 267705276 267705276 119890596 76122326 449078344 971605543 971605543 891289899 891289899 921597375 921597375 515750337 162353248 124033524 51583880 729680472 729680472 769835048 769835048 816026498 816026498 187021648 185953712 247338218 473599808 473599808 316718288 455522490 455522490 320930440 120665450 130497344 130497344 59203152 62071664 202782740 202782740 140380230 277626496 277626496 151425376 151425376 698623904 700634021 700634021 692373093 692373093 70624648 22173700 21277060 1019488849 1019488849 942046800 942046800 964252735 964252735 1039032659 1039032659 878251588 878251588 709941394 736246294 736246294 822934533 822934533 466356772 466356772 438864196 324426272 588798466 722728021 822628976 822628976 776809985 1058954464 1058954464 343552267 754478984 754478984 812952143 812952143 888362951 888362951 965099041 965099041 675379272 119402040 268484642 268484642 204174364 627225713 627225713 728176384 728176384 700871864 700871864 381629422 246474688 84224040 383841042 812720393 812720393 422619814 422619814 1003827134 1003827134 596323336 596323336 540352080 174988692 254482720 254482720 107403672 218990624 556274548 556274548 240887000 648493056 648493056 741110804 995885610 995885610 958011407 663164548 663164548 241095931 241095931 743006521 743006521 751140929 751140929 650461782 588605010 831310947 831310947 180971763 286335522 297259216 309773202 309773202 90753024 90753024 924672 924672 793600 168962170 496450158 731301422 731301422 322386738 377615684 484624320 681853708 681853708 547717121 250569368 250569368 248616408 134545476 112462680 112462680 311824008 311824008 383539810 394187424 394187424 357749418 339121896 85013152 7866240 12584768 12584768 8650816 8650816 268288 17372840 89734184 235677240 235677240 92372164 110091864 110091864 61378480 146911476 178312421 602625729 719058453 719058453 131010980 740053627 740053627 292431020 479124558 479124558 1037177844 1037177844 878656253 1052717641 1052717641 942221636 658729352 551659533 175710577 735356448 735356448 688539329 676437348 689037861 689037861 559030592 661051561 661051561 101802200 573214944 573214944 640902641 824166961 985816377 985816377 929952312 791188859 921174850 921174850 634320442 1049049183 1049049183 652621645 936961387 936961387 778987739 1025691951 1025691951 551591106 551591106 571246601 906756108 906756108 604269585 407372934 407372934 275325188 209020216 137417612 25104768 188994796 188994796 43206888 278203044 278203044 115352024 243401184 358748450 533146034 1034105007 1034105007 887429193 567663776 567663776 543149328 543149328 386185886 268552404 268552404 193264948 224282060 236003868 252782376 362819144 362819144 659753497 659753497 589576417 94372256 553094432 652930705 652930705 606557985 561099753 662081136 662081136 621071561 608571848 474034310 474034310 328212218 534748222 534748222 626885613 626885613 290811221 103031499 766845526 766845526 550841025 549562945 370270378 326386234 652344297 652344297 352828104 391383832 391383832 637575841 637575841 683295428 826019619 826019619 558730856 941897382 941897382 1048196288 1048196288 926529011 593381193 587467072 350952664 337225600 38347920 823239958 959087015 959087015 694044043 1045152403 1045152403 1035610842 1035610842 557965481 278925510 278925510 71065064 767928673 767928673 298712650 537013608 830587174 830587174 751355072 763887653 763887653 615255369 782762317 782762317 658770043 878448267 878448267 695888693 574478744 472398210 460191412 449864726 449864726 394750410 547238331 909589275 909589275 876682128 363492014 363492014 310784082 612622723 1040486681 1040486681 877126874 483071432 177155608 80414684 80414684 435424664 536499848 536499848 122293056 829316955 829316955 711406304 711406304 712122897 712122897 529775229 509410910 559169570 618136713 1028133966 1028133966 298456488 822933937 868955379 868955379 392629241 629949835 629949835 842358817 842358817 429256182 264845967 744965926 744965926 956640518 956640518 155527332 281045280 284377584 320074290 586592370 586592370 61207808 191434912 322534914 322534914 196268916 425815324 524346014 524346014 242237034 401646256 401646256 401162400 379224320 397005456 397005456 314392250 348210250 348210250 269533698 202420364 67634184 408948108 408948108 153752868 153752868 152245512 125878392 137443644 137443644 19117056 235630592 237052188 237052188 168874276 254351696 254351696 174063252 174063252 430380928 993932514 993932514 603225381 938178700 938178700 1047744733 1047744733 1019631749 775981262 659277160 659277160 628099401 628099401 628758441 628758441 754153307 790889509 790889509 1009089056 1009089056 415624110 424321860 432406950 432406950 153668438 388006536 388006536 503540420 503540420 348254538 467142256 467142256 446485704 446485704 521588990 521588990 269633344 269633344 300711232 306316002 308528520 308528520 102556745 666102689 666102689 111884664 562437673 621417513 621417513 615134728 615134728 597034129 597034129 553125889 553125889 594904560 594904560 100681848 365953232 365953232 295773042 300958496 300958496 41338246 410075185 976285419 976285419 646263470 646263470 742069894 742069894 540160861 923220484 923220484 760906455 893604053 893604053 827584286 827584286 294440034 294440034 183562402 976564412 976564412 891247252 891247252 289948857 63440112 172150932 172150932 184598580 852104803 852104803 757597485 895485062 895485062 194366999 270178760 270178760 809816079 865862742 865862742 550815533 598510104 632817513 632817513 339480330 1055132477 1055132477 1026001796 953471174 897664297 814185056 812285163 885341856 885341856 883581024 86955816 31616416 35728032 57936816 57936816 36377344 160642911 896603947 896603947 780690446 780690446 252220619 846605229 882746785 882746785 871475043 720978786 720978786 743277096 743277096 340788903 1006386940 1006386940 771437269 244023814 105381973 333450450 588910583 826809890 826809890 1069554914 1069554914 937725356 52805668 166203664 166203664 268484992 268484992 180486388 180486388 322178468 322178468 582541889 582541889 911922614 911922614 757072173 790761789 790761789 617136257 622427721 745018657 766990444 766990444 508359970 508359970 168770580 180122028 231785196 231785196 226017308 238552860 245896524 245896524 205133580 556021227 642496452 983872194 983872194 572803664 380401715 829193992 829193992 304168977 449669084 585749825 778298887 778298887 538748794 538748794 401340572 401340572 294979139 295299682 295299682 691339266 774203934 774203934 182006304 182006304 142834164 59282032 121507076 264949568 264949568 238291740 264877232 688965223 1034209647 1034209647 666110841 666110841 611000640 612449721 612449721 1007786764 1007786764 503167911 346893642 40421204 718988877 718988877 679592448 679592448 540180608 565232481 565232481 613224759 613224759 604182047 549024320 813036548 813036548 1053973131 1053973131 949803073 949803073 626556986 276826306 615221424 615221424 652751061 652751061 103353486 977834054 977834054 616714540 490922376 490922376 680694738 680694738 99414626 124841520 264258460 380670418 380670418 123974648 123974648 108006104 168185860 168185860 284936970 617699084 617699084 143734849 203270934 1012998670 1012998670 946815943 946815943 806321728 806321728 955318212 955318212 151627374 8650752 480248134 613155652 613155652 483531947 203428168 414781538 634791704 634791704 296880763 384962121 384962121 380840495 965098471 1060319751 1060319751 1043273951 941695529 941695529 798163085 695391072 749172874 928338124 928338124 321735268 256984300 256984300 219293768 460051362 460051362 380277298 308021922 308021922 325094786 325094786 412135728 412135728 353689694 432211036 432211036 341378802 341378802 337192458 137439352 314910908 488647120 488647120 249047896 121686320 121686320 168134664 168134664 515211762 515211762 515335100 515335100 429109376 409428498 409428498 455154952 455154952 134423856 0 157286560 157286560 20971940 336627200 336627200 18817920 4144896 2761472 44245760 44245760 43127376 42410752 173537872 175512468 175512468 58330112 59704352 59704352 66644320 66644320 17075920 17075920 11542656 15803328 15803328 166997808 180954324 235078080 245242372 245242372 13436948 14556864 14556864 174630124 229315856 229315856 537993729 537993729 312295269 270028309 294592238 412610106 412610106 293324838 769193676 769193676 437055549 733315875 733315875 304012561 925721820 925721820 424512815 378461274 735001714 735001714 906966905 906966905 478028841 0 0 149955420 163907836 163907836 96345040 96345040 95564624 25825312 88776944 88776944 63001768 116350744 392676218 392676218 211500036 411179534 411179534 524583154 524583154 434694240 474327464 474327464 537174241 537174241 677825349 677825349 569586657 746342980 752167629 752167629 569480960 611391272 611391272 91890561 98847212 134266884 992478248 992478248 837528681 675549391 876225817 876225817 230688207 19923744 480622566 480622566 514871670 514871670 273887874 579148417 995151978 1048826383 1048826383 480122528 554076284 872746031 872746031 832676192 832676192 655074880 521018430 973507168 978361161 981079959 981079959 979026967 979026967 883299247 482345166 912286941 912286941 106488320 637824581 812130904 1033481899 1033481899 491698991 683187367 744140892 744140892 878931636 878931636 768204090 854069309 854069309 202218608 202218608 643076272 643076272 624967785 558022881 558022881 563456672 563456672 199635461 199635461 158864721 149193156 168396224 704965008 704965008 677454213 83102669 383384474 383384474 276478756 276478756 347991882 347991882 488784236 488784236 885663541 885663541 673000965 1071986387 1071986387 279393192 651854116 858846763 858846763 801650348 688278985 408216453 878892056 878892056 885572811 885572811 587515953 587515953 585631466 368117011 296534032 289542306 269104896 269104896 304763808 304763808 303260290 303260290 50855954 173542436 173542436 180302180 180302180 84778220 163092280 163092280 94408244 272644390 272644390 218896556 412608144 412608144 285996066 517785792 1051576394 1051576394 1051059021 1032945473 1032945473 682174527 682174527 339892651 321379314 96245162 182072612 255735340 255735340 85349964 188399620 188399620 183710676 183710676 185953712 185953712 315819674 473599808 473599808 316718288 455522490 455522490 339942050 339942050 274440608 274440608 71711128 119810208 119810208 103753984 113414488 336134160 336134160 151425376 151425376 629463304 700634021 700634021 692373093 692373093 60918688 328510554 623845160 966439429 966439429 713392836 915456603 915456603 712341474 712341474 635211977 878251588 878251588 634477250 736246294 823907783 823907783 705823424 957110288 958398759 958398759 433377843 433377843 722728021 822628976 822628976 679571574 811303108 811303108 448382337 12970176 8732800 72227976 85856782 677701446 677701446 615459054 615459054 222981031 100634132 268484642 268484642 16777248 285261826 285261826 770200648 770200648 700871864 1064912726 1064912726 618244449 279065552 1031485589 1031485589 812720393 839840216 917957635 1003827134 1003827134 596323336 596323336 540352080 239474844 254482720 708074781 708074781 578573353 740164821 740164821 711984021 711984021 648493056 544070016 995885610 995885610 924649254 679558148 151726793 737530994 737530994 743006521 743006521 751140929 751140929 353836592 588605010 831310947 831310947 180971763 286335522 305398536 309773202 309773202 235269238 235269238 202504216 137631298 414189376 414189376 285526050 305469780 322386738 322386738 631245608 631245608 605417281 607462989 607462989 205105777 522338364 522338364 471084711 471084711 432093573 311824008 311824008 383539810 394187424 394187424 728720788 728720788 570824848 678507432 678507432 671929797 559253508 26350176 26350176 148258836 194645236 235677240 235677240 92372164 110091864 110091864 61378480 146911476 146911476 60305696 260084044 260084044 433931874 433931874 323560626 323560626 73191048 341350424 369233946 369233946 399120508 399120508 430180916 430180916 231737340 172380504 38339616 55202448 55202448 34160144 34160144 29347264 50754112 50754112 661051561 661051561 101802200 573214944 573214944 640902641 722051876 985816377 985816377 929952312 791188859 921174850 921174850 608448726 1058271807 1058271807 470965463 647623712 990578781 990578781 912916672 912916672 367662579 367662579 336122352 906756108 906756108 510174233 935929083 935929083 633939464 370746906 345804800 62642512 333825474 479363376 479363376 278203044 415264964 415264964 411490436 411490436 533146034 533146034 257300864 257300864 567663776 567663776 543149328 628703592 628703592 551151297 266691568 266691568 159910448 108726672 108726672 131533616 131533616 659753497 659753497 539037952 614611201 614611201 613493769 605689353 545708097 545708097 288585793 274908194 77100908 407467140 474034310 474034310 328212218 534748222 534748222 626885613 626885613 290811221 802313256 802313256 766845526 550841025 549562945 830688032 830688032 652344297 652344297 24201617 16777376 89476266 292568834 292568834 683295428 954241152 954241152 559026663 941897382 941897382 1048196288 1048196288 926529011 368116467 350952664 350952664 337225600 6414720 4227840 3195008 553803852 763572333 1045152403 1045152403 1035610842 1035610842 557965481 278925510 278925510 71065064 767928673 767928673 743683848 743683848 755132420 755132420 751355072 751355072 671877197 615255369 782762317 782762317 940835248 940835248 874847121 695888693 574478744 480484141 460191412 449864726 576068241 576068241 547238331 909589275 1028065388 1028065388 936785077 901035151 631365993 612622723 1040486681 1040486681 877126874 721432924 575084576 676201812 676201812 435424664 536499848 536499848 896290146 896290146 829316955 711406304 711406304 712122897 712122897 529775229 509410910 559169570 618136713 1028133966 1028133966 298456488 822933937 868955379 868955379 392629241 629949835 629949835 842358817 842358817 276475658 502905204 502905204 422120480 956640518 956640518 251782809 281045280 366289514 366289514 972508178 972508178 703149989 685560692 191434912 789307449 789307449 1012204632 1012204632 696502966 310205248 401646256 1011677723 1011677723 707524533 707524533 711401434 965350503 965350503 730170646 269533698 74938762 204543496 272642698 272642698 153752868 153752868 152245512 104825136 137443644 255271500 255271500 244398908 239608324 239608324 239075484 254351696 322804982 322804982 101751212 712378830 813323331 813323331 603225381 938178700 938178700 1047744733 1047744733 1019631749 775981262 637665936 662515641 662515641 613830488 628758441 908841920 908841920 790889509 790889509 1009089056 1009089056 415624110 424321860 432406950 432406950 472649748 472649748 407521708 404362758 404362758 229782122 467142256 467142256 446485704 446485704 377188480 377188480 134640336 198540976 300711232 306316002 306316002 49016112 102556745 666102689 666102689 109250681 562437673 621417513 621417513 615134728 858270354 858270354 846931043 846931043 578953105 594904560 594904560 30517888 57782336 295773042 295773042 300958496 300958496 41338246 174754054 419283514 419283514 646263470 646263470 742069894 742069894 540160861 411154379 168561684 168561684 43966032 47989440 47989440 10015744 10015744 37781600 62963952 574619696 587220136 587220136 1061715976 1061715976 1010827407 294671429 673398951 673398951 852104803 852104803 847465627 1073460403 1073460403 810998213 624816045 624816045 1066849438 1066849438 623362122 623362122 988228796 988228796 810687251 1049239129 1055132477 1055132477 1026001796 897664297 897664297 985023361 985023361 885341856 885341856 883581024 86955816 52687152 52687152 57936816 454189352 527970622 527970622 527439422 252886146 347136842 454197830 454197830 74314078 288177490 288177490 408692308 408692308 515141150 515141150 270011858 340788903 1006386940 1006386940 771437269 411177287 587597843 824316195 824316195 826809890 895546609 1069554914 1069554914 937725356 827078887 799696971 1040969876 1040969876 407401858 16810016 11069056 15852480 153882561 582541889 582541889 911922614 911922614 757072173 790761789 790761789 617136257 676067213 756891265 766990444 766990444 474032398 474032398 75653196 354854186 354854186 209764576 226017308 361264448 361264448 372132104 632860642 632860642 354518017 983872194 983872194 549459201 380401715 829193992 829193992 617300488 617300488 1060348407 1060348407 885175244 812271454 812271454 947997802 947997802 852758166 852758166 375391821 452461794 452461794 354798198 615507869 615507869 324914132 1055885362 1055885362 554955297 264949568 596888192 640729105 727177932 727177932 654363456 666110841 666110841 611000640 612449721 1018096091 1018096091 331442185 636651228 636651228 753104665 753104665 750379269 750379269 679592448 540180608 565232481 644129348 787868637 787868637 1008212274 1008212274 813036548 813036548 1053973131 1053973131 949803073 949803073 626556986 276826306 348733530 587850960 837847328 962906535 962906535 939597831 939597831 616714540 220369097 317870661 680694738 680694738 495475938 129286936 292643682 380670418 380670418 134615552 123974648 108006104 181660621 745937753 745937753 676669380 676669380 540357008 203270934 677382145 677382145 36584158 486090702 486090702 485041614 800877384 800877384 572037756 768986661 768986661 764799597 228161865 364281035 364281035 286785982 317855638 607519248 890175568 890175568 384962121 380840495 965098471 1060319751 1060319751 1043273951 941695529 941695529 798163085 695391072 749172874 928338124 928338124 321735268 141141456 205183312 205183312 460051362 460051362 380277298 22176800 75801402 325094786 325094786 371575318 371575318 353689694 432211036 432211036 341378802 341378802 337192458 79765704 314910908 488647120 488647120 202451592 121686320 121686320 168134664 1014820217 1014820217 515211762 515335100 515335100 324163732 671089024 677380485 893514781 893514781 882333182 878123726 784707084 784707084 429778926 491591200 491591200 165840678 167448804 167448804 318005504 318005504 467078054 467078054 451755872 190425444 166274532 143074132 59704352 59704352 45718032 28401776 15514912 186995668 186995668 552940272 711163220 711163220 709267344 701312229 601629204 215092228 139202629 550378689 550378689 173742052 595239920 777533650 777533650 531492222 995034052 995034052 436030885 159256268 249454138 249454138 156428066 289280664 447026258 447026258 289557749 780399748 925721820 925721820 562561088 709625377 735001714 792251274 942198605 942198605 839724051 839724051 898753515 1004620435 1004620435 702295805 426778919 426778919 287376155 253306428 219161616 43636800 328713304 626160064 837158202 837158202 1065404407 1065404407 675387962 524583154 524583154 434694240 474327464 474327464 537174241 537174241 677825349 677825349 569586657 164292192 761053192 761053192 761195722 997668894 997668894 267402746 810888605 810888605 676195368 837528681 837528681 675549391 876225817 876225817 622231664 605453376 605453376 604192448 269917224 291422344 291422344 81573960 97639136 97639136 366976570 480122528 480122528 433859782 353460440 353460440 655074880 655074880 517997022 873234644 873234644 143316036 904536582 904536582 883299247 883299247 244776717 720900370 953816775 953816775 807084254 1010237793 1032532335 1032532335 1033252904 1033252904 683187367 561380182 908500787 908500787 768204090 854069309 854069309 227820032 256036064 256036064 244194396 46130524 656357320 656357320 563456672 563456672 136338229 549899217 559201825 569373845 701001041 704965008 704965008 692398245 88197133 383384474 383384474 276478756 276478756 347991882 347991882 488784236 488784236 341350664 486963364 486963364 202188344 202188344 82384929 651854116 689992393 689992393 656812272 656812272 84158901 878892056 878892056 885572811 885572811 587515953 858414210 858414210 296534032 296534032 306258435 575668881 575668881 386391833 813006227 813006227 599769363 599769363 572731665 64882512 584611705 584611705 559713512 621404816 621404816 975980584 975980584 634061090 494022508 412608144 457827510 457827510 612967497 1051576394 1051576394 1051059021 1032945473 1032945473 927147224 682174527 421659244 462487828 480716726 480716726 513425230 513425230 234553196 234553196 145366292 449419584 449419584 346146916 159957512 315819674 315819674 274681344 303112736 303112736 78355200 339942050 339942050 274440608 274440608 71711128 119810208 119810208 102971280 34079770 382063681 871315611 871315611 94297704 337091099 387913523 387913523 312002130 326840929 869372889 869372889 806278147 969197024 969197024 713392836 915456603 915456603 712341474 897789519 897789519 384618266 384618266 436576449 595313857 823907783 823907783 554622755 985947168 985947168 958398759 433377843 433377843 709121699 709121699 553828580 467456067 811303108 811303108 554459137 554459137 672160388 675414465 675414465 546762573 76810824 149603209 580969453 580969453 139142041 99710468 238585356 238585356 179967140 179967140 770200648 770200648 680262421 1064912726 1064912726 618244449 598222819 1031485589 1031485589 809570316 839840216 917957635 917957635 573089810 249963668 164893304 241621404 241621404 107528580 708074781 708074781 618568768 740164821 785122113 785122113 715313493 572253900 572253900 774674521 774674521 683806917 679558148 673712976 737530994 737530994 823199862 982262525 982262525 515900449 353836592 353836592 441191574 441191574 70812224 70812224 305398536 305398536 244318812 244318812 235269238 248588428 248588428 517998040 517998040 285526050 856960000 1018535428 1018535428 852751456 852751456 797652550 607462989 607462989 205105777 522338364 522338364 1040912566 1040912566 432093573 421005338 681577744 713821269 713821269 49028421 728720788 728720788 570824848 678507432 678507432 671929797 559253508 26350176 26350176 148258836 194645236 194645236 173540928 49409872 47711952 31647136 49726656 49726656 17865376 38655696 72841672 72841672 433931874 433931874 323560626 323560626 213334860 341350424 369233946 369233946 399120508 399120508 430180916 430180916 231737340 172380504 38339616 55202448 55202448 55465184 55465184 55186608 173958737 195011005 633194533 784454084 784454084 541188609 248701189 36154320 79700288 128625608 548359944 575218833 1040804570 1040804570 685559493 952250718 1058271807 1058271807 470965463 721453128 990578781 990578781 912916672 912916672 920650178 920650178 1011486727 1011486727 1032378944 1032378944 935929083 935929083 633939464 430474841 430474841 197206260 1027498497 1027498497 659932031 520163722 547432806 667354033 667354033 638804472 968892620 968892620 695210157 695210157 228868384 168172749 658954425 658954425 628703592 551151297 634546789 717496101 733666680 733666680 118440944 131533616 131533616 115691864 40969104 539037952 614611201 614611201 629543009 629543009 562347201 562347201 663474530 663474530 585594616 585594616 126894712 126878328 17901656 564224 36162708 141421956 174621952 174621952 802313256 802313256 228786345 641805428 641805428 830688032 830688032 911477368 911477368 441510469 447250754 459833731 834144099 834144099 834144099 954241152 954241152 700745089 16941601 6956032 109117640 839196952 839196952 340000904 280375888 280375888 101493898 35253776 867772358 1001940087 1001940087 763572333 763572333 484333957 423360294 157597314 72751752 68550784 4723712 656512 68973320 68973320 743683848 743683848 71004813 208896 208896 12288 0 0 541328512 541328512 940835248 940835248 257624115 120272184 480484141 480484141 53402928 53402928 576068241 576068241 479164426 479164426 1028065388 1028065388 936785077 1025295037 1025295037 307437596 504500766 782107672 782107672 721432924 575084576 676201812 676201812 424745438 424745438 389095218 896290146 896290146 319166514 646644774 646644774 277094415 0 0 270270502 1019511372 1019511372 470828195 344723008 290542528 287096136 27179808 119877914 305095024 310456704 316805586 316805586 485225934 485225934 502905204 502905204 359404214 663550506 663550506 487901697 876700854 876700854 423347636 972508178 972508178 703149989 686498160 583634160 789307449 789307449 1012204632 1012204632 696502966 637807112 637807112 1011677723 1011677723 847170834 905246187 905246187 965350503 965350503 730170646 518665946 392637486 312084848 272642698 272642698 44089680 44744976 44744976 315893138 315893138 314930440 314930440 244398908 239608324 258197760 258197760 319300710 322804982 322804982 896567952 896567952 813323331 813323331 489734958 658379274 658379274 1004951868 1004951868 969511271 1062144728 1062144728 662515641 662515641 627082792 624531049 908841920 908841920 421322476 421322476 524684542 524684542 438049690 299107120 299107120 306726050 472649748 472649748 460062748 461486498 461486498 170018938 90906752 90906752 396452308 396452308 389976300 512890962 512890962 298299582 390469818 390469818 261489274 191171852 458048664 580135064 580135064 109250681 935602696 935602696 646195714 851144353 858270354 858270354 846931043 846931043 578953105 38809857 63069424 63069424 29731392 57934112 57934112 35922480 35922480 18416976 64407280 64407280 1638400 1638400 105575432 105575432 134865496 214435020 214435020 101057880 233622482 422632486 487510886 492838446 492838446 142656110 134225220 76321564 946462744 946462744 744398343 1061715976 1061715976 1010827407 986876657 986876657 673398951 420017212 565631329 847465627 1073460403 1073460403 810998213 624816045 624816045 1066849438 1066849438 623362122 623362122 988228796 988228796 810687251 1049239129 1049239129 1029546053 1029546053 691259399 717257397 985023361 985023361 805515267 349512803 342176904 25992936 52687152 304160863 748683597 748683597 527970622 527970622 527439422 503879236 449963104 454197830 903545056 903545056 365031578 461481406 461481406 408692308 755830792 755830792 616263725 616263725 52391297 839707088 839707088 945867016 945867016 824316195 824316195 713427318 895546609 895546609 665658590 827078887 827078887 799696971 1040969876 1040969876 407401858 148619408 148619408 46171776 153882561 546152805 546152805 428640704 374639882 187034345 682937157 682937157 537604169 676067213 756891265 756891265 741470606 299049408 427379204 427379204 354854186 354854186 78717768 70724800 361264448 361264448 372132104 808982112 808982112 354518017 637905994 637905994 125763209 118244768 107268504 42433888 617300488 617300488 1060348407 1060348407 885175244 931164630 931164630 947997802 947997802 852758166 1051748162 1051748162 757597870 767558438 838749727 838749727 737013237 737013237 1055885362 1055885362 554955297 53789681 596888192 640729105 727177932 783865566 783865566 356067114 890102786 890102786 596668160 1018096091 1018096091 656593209 892248336 892248336 753104665 753104665 750379269 750379269 76620360 698363945 698363945 644129348 787868637 787868637 1008212274 1008212274 823091970 604571992 598767247 214356172 214356172 315057854 315057854 546307269 546307269 907180016 907180016 1057303069 1057303069 939597831 939597831 671955276 671955276 789090354 789090354 495475938 495475938 129286936 292643682 292643682 134615552 134615552 1185796 13242496 181660621 745937753 745937753 676669380 676669380 540357008 170309716 677382145 677382145 36584158 486090702 486090702 485041614 800877384 800877384 572037756 768986661 768986661 764799597 228161865 364281035 364281035 286785982 317855638 607519248 890175568 890175568 68951176 109709278 470407470 470407470 450178030 247712662 341988322 409030786 501127988 501127988 439400802 387837498 352670024 200960196 193023736 205183312 205183312 163611812 29996544 22176800 22176800 21139712 21139712 7390080 4638976 4638976 21106768 324288104 324288104 362096920 362096920 404030306 404030306 330632086 394815730 394815730 152080180 242288662 493169070 493169070 1014820217 1014820217 403040262 786907664 942699469 942934791 942934791 677380485 893514781 893514781 882333182 878123726 784707084 784707084 429778926 491591200 491591200 165840678 167448804 167448804 318005504 318005504 467078054 467078054 451755872 190425444 166274532 182042196 182042196 46047056 180872228 180872228 15729072 186995668 186995668 552940272 711163220 711163220 709267344 701312229 601629204 175189476 175189476 550378689 550378689 173742052 595239920 777533650 777533650 951233653 995034052 995034052 436030885 159256268 249454138 249454138 201621533 711005236 711005236 447026258 289557749 780399748 881629534 881629534 783431902 783431902 709625377 792251274 942198605 942198605 839724051 839724051 898753515 1004620435 1004620435 702295805 426778919 426778919 287376155 253306428 219161616 50447376 328713304 626160064 837158202 967617050 1065404407 1065404407 675387962 182489168 270615328 270615328 161166628 166909252 166909252 136315140 136317060 138676356 164292192 674238252 761053192 761053192 761195722 997668894 997668894 267402746 810888605 810888605 429255430 563276120 807002656 807002656 934462787 934462787 622231664 605453376 817337869 817337869 758569773 291422344 291422344 264615388 264615388 218241060 141042140 235472084 241173888 241173888 189752374 189752374 72787410 830111521 830111521 873234644 873234644 377120172 377120172 530653566 808977471 808977471 678698240 720900370 953816775 953816775 807084254 1010237793 1032532335 1032532335 1033252904 1033252904 681052278 681052278 908500787 908500787 570834954 760256736 760256736 230755392 256036064 256036064 244194396 46130524 656357320 656357320 129922101 51384832 136338229 549899217 559201825 569373845 701001041 701001041 692398245 692398245 621021576 559940001 926311792 926311792 98886004 125693880 125693880 139021116 289161796 289161796 252162092 252162092 202188344 202188344 84217608 537404416 537404416 794755572 795616288 795616288 403858952 403858952 703867429 907897436 907897436 856493739 892008506 892008506 600291785 562516656 306258435 575668881 575668881 386391833 813006227 813006227 599769363 599769363 572731665 64882512 584611705 584611705 606063762 844901898 844901898 975980584 975980584 634061090 494022508 591947798 961408167 961408167 612967497 612967497 732218748 732218748 1059209800 1059209800 927147224 454424956 454424956 462487828 480716726 480716726 513425230 513425230 234553196 234553196 145366292 449419584 449419584 346146916 275411136 15764096 36526384 36526384 38814496 38814496 78355200 78355200 75021408 102682984 102682984 56422440 35601936 60929216 61507968 73879928 382063681 871315611 871315611 545627407 545627407 749806414 749806414 347811149 326840929 869372889 869372889 806278147 969197024 969197024 921695301 822856894 308548756 606168486 897789519 897789519 568322528 384618266 251040358 11670336 11670336 11538432 187335684 985947168 985947168 575408560 554436608 554436608 428002435 428002435 962743301 998868274 998868274 285539330 554459137 554459137 672160388 675414465 675414465 546762573 76810824 216181984 580969453 981300874 981300874 315241658 315241658 238585356 507406897 765231823 765231823 973700829 999502455 999502455 636433324 598222819 598222819 282463104 282463104 74263944 74263944 4864264 159654126 589369570 589369570 499190236 499190236 241621404 117441549 721945653 721945653 618568768 618585801 785122113 785122113 715313493 572253900 572253900 774674521 774674521 683806917 672471660 673712976 937353596 937353596 908515979 982262525 982262525 1047616014 1047616014 819890588 819890588 687777414 687777414 634992352 761440904 761440904 276301450 244318812 168956436 248588428 248588428 517998040 517998040 282064256 856960000 1018535428 1018535428 852751456 852751456 797652550 312209360 228373700 956700484 956700484 613454667 1040912566 1040912566 597427094 421005338 681577744 713821269 713821269 49028421 13507776 72092808 76284096 76284096 67981952 11088992 27223424 27223424 13479488 8989696 4727936 39133376 49409872 49409872 47711952 40773120 43618176 43618176 15059472 47285184 72841672 72841672 79776832 79776832 146616132 146668364 213334860 213334860 241172892 241172892 241381788 241381788 208090096 32979936 32586464 30873600 30873600 39696000 59446976 59446976 55465184 55186608 271905088 271905088 633194533 784454084 784454084 581023989 581023989 659819244 717511380 913293609 913293609 450060060 1046856267 1046856267 685559493 952250718 952250718 916074997 916074997 721453128 721453128 744669354 744669354 861310361 920650178 920650178 1011486727 1011486727 1032378944 1044811316 1044811316 84411432 255489271 430474841 430474841 197206260 1027498497 1027498497 659932031 520163722 549525632 667354033 667354033 690443128 968892620 968892620 695210157 695210157 563352448 563352448 658954425 658954425 264372277 540180880 634546789 717496101 733666680 733666680 167712056 167712056 575159792 575159792 554308641 554308641 67121737 616638497 629543009 658843833 658843833 650611769 663474530 663474530 585594616 585594616 386320440 329322506 329322506 320557090 323956829 1026501311 1026501311 361178839 607657699 922433499 922433499 641805428 641805428 799141949 799141949 1006224069 1006224069 441510469 447250754 459833731 834144099 834144099 834144099 683154437 700745089 994447687 994447687 709046421 948995737 948995737 839196952 936455619 936455619 407905269 1031020869 1031020869 867772358 1001940087 1001940087 991942435 572837425 391408563 472580170 669687781 669687781 293785958 657099485 657099485 636365801 248141645 643627216 668043253 686445532 686445532 757177984 757177984 738611245 779137673 779137673 541328512 537660417 980156802 980156802 939920705 914495748 595126722 595126722 292390147 288044322 288044322 479164426 479164426 775948864 775948864 693440054 1025295037 1025295037 307437596 504500766 538968516 538968516 732248968 732248968 442376300 442376300 424745438 424745438 79168202 70385672 898405747 898405747 646644774 646644774 623650032 610274809 511231898 511231898 1019511372 1019511372 756603426 556355074 269300002 811693521 811693521 597811569 323147760 561840977 561840977 236764114 979490350 979490350 764620335 897445803 989121906 989121906 663550506 487901697 876700854 876700854 423347636 728410518 728410518 686498160 686498160 952246541 952246541 617190684 637925316 637925316 483505131 637807112 637807112 206916374 847170834 847170834 905246187 905246187 383828442 383828442 518665946 518665946 392637486 312084848 231352752 231352752 44089680 87660866 362806890 362806890 315893138 314930440 316687392 316687392 311078978 258197760 258197760 319300710 319300710 289686200 896567952 896567952 725928117 725928117 924993725 1016254824 1016254824 486965506 304250542 1017135542 1062144728 1062144728 553315465 627082792 627082792 438259542 438259542 304383360 421322476 421322476 418908102 438049690 438049690 360844672 299107120 46401968 347474084 365766722 460062748 461486498 461486498 230621124 183709682 427941990 427941990 396452308 389976300 512890962 512890962 298299582 390469818 390469818 277381798 277381798 458048664 458048664 47032448 776290757 935602696 935602696 646195714 851144353 851144353 630268520 546006139 911193984 911193984 601225537 543893808 65469472 44155072 57934112 58763616 58763616 35922480 35602692 187611856 187611856 50804912 67674796 218236032 218236032 134865496 214435020 214435020 101057880 233622482 422632486 487510886 492838446 492838446 142656110 134225220 130452728 946462744 946462744 884598603 773570649 773570649 814863824 986876657 986876657 349848178 349848178 284270570 308313434 308313434 273493122 579720597 579720597 942521136 942521136 837997539 922353779 922353779 868750716 751981001 301405871 914023664 1040396319 1040396319 1029546053 675739954 1003502260 1003502260 153032659 3146496 72627520 154183274 407008606 410133638 410133638 748683597 748683597 505273104 505273104 503879236 503879236 449963104 449963104 1006815944 1006815944 365031578 461481406 461481406 314139570 755830792 755830792 616263725 616263725 216630792 839707088 839707088 945867016 945867016 434673834 324409829 710574794 717769373 717769373 640153881 706756658 956334501 956334501 692765751 406847492 149594562 179781766 268626326 311800402 443615684 443615684 428640704 428640704 61081968 639637791 639637791 922029661 922029661 1047471774 1047471774 906606081 852846376 852846376 888408616 888408616 426723974 422690304 78717768 26896392 296591304 350821098 350821098 808982112 808982112 340178250 340178250 611281336 611281336 377162385 616174450 616174450 911899600 911899600 900908888 900908888 598938435 931164630 931164630 800330241 574425888 776069277 1051748162 1051748162 757597870 767558438 838749727 838749727 737013237 737013237 208114809 44175696 719649704 758194989 758194989 186831524 186831524 783865566 783865566 356067114 890102786 890102786 537214976 625698192 656593209 656593209 892248336 892248336 617702429 644604372 674254912 674254912 144104261 698363945 698363945 723904821 723904821 704752649 704752649 1060563055 1060563055 664322872 1024191181 1024191181 763861622 667942137 647860896 546307269 546307269 907180016 907180016 1057303069 1057303069 882974991 780638239 671955276 671955276 789090354 789090354 486588462 184774682 48797056 116710540 172476628 226804924 226804924 26478624 28838240 28838240 164103728 164103728 64422804 64422804 170309716 170309716 195349460 195349460 230696215 836912879 836912879 986919605 986919605 773878216 515498778 479236256 472522792 472522792 344275214 143266892 143266892 136315140 136315140 130679968 131734688 131734688 110365272 68951176 72224264 72224264 76031496 76031496 121320936 409030786 501127988 501127988 439400802 387837498 360535128 200960196 193023736 164136512 163611812 323080674 327333762 327333762 93016546 93016546 376488858 385667914 385667914 349311690 349311690 324288104 324288104 437847516 437847516 436741686 404030306 330632086 982159393 982159393 782734787 1046964730 1046964730 704995670 704995670 403040262 403040262 786907664 942699469 942934791 942934791 201462284 303118866 303118866 275198468 148898244 155189992 210764364 210764364 224448328 224448328 314573150 314573150 183974868 315179638 315179638 286417942 439088148 439088148 454742208 454742208 182042196 315671250 318920194 318920194 285710802 411913716 411913716 295347152 326891442 326891442 843128370 843128370 815392323 806252097 175189476 175189476 159415332 19132704 7434400 344146178 344146178 273490082 951233653 951233653 730682183 29433932 209764428 209821696 468064984 468064984 711005236 711005236 554052774 923541931 923541931 260523086 369497508 783431902 783431902 1010847546 1010847546 328518092 817941713 938568738 938568738 896099347 657721674 81524424 681080052 681080052 206045373 120587120 44863592 186785356 186785356 119996864 227027556 302597138 967617050 967617050 445212690 167805014 277332170 349054120 349054120 353446048 557952228 687945024 687945024 553844832 138676356 701199493 701199493 674238252 99667277 98537352 99766560 99766560 79116608 62173256 32268656 310676808 563276120 807002656 807002656 934462787 934462787 604677672 604677672 817337869 817337869 758569773 162694532 137893740 264615388 264615388 218241060 141042140 235472084 254269696 254269696 189752374 517483776 517483776 830111521 830111521 509637768 509637768 439088406 377120172 530653566 808977471 808977471 678698240 678698240 447125712 93375816 613967688 613967688 745662093 745662093 440980993 370896922 681052278 681052278 689962017 689962017 71955913 232019028 232019028 230755392 535118658 535118658 249777936 500478322 551043772 551043772 489688497 51384832 61882464 61882464 612779538 916381275 916381275 626953251 604414152 734371868 734371868 779700733 926311792 926311792 553906209 1015860303 1015860303 1015860303 817916000 345084076 408308876 408308876 133633000 133633000 621166304 621166304 209453484 794755572 795616288 795616288 403858952 403858952 703867429 907897436 907897436 856493739 948012484 948012484 841674864 841674864 455147830 655102154 655102154 822394880 822873123 822873123 1033318222 1033318222 832519779 25181699 17511456 859579220 859579220 844901898 844901898 483248051 540935750 540935750 91564968 591947798 961408167 961408167 269320421 364707840 364707840 561793594 1059209800 1059209800 250794949 454424956 454424956 384176888 384176888 70756796 168481812 168481812 168746004 372465464 453193782 453193782 190853506 275411136 275411136 85986752 96994608 96994608 37259520 15966912 19031880 20571936 69248552 69248552 67672192 56422440 35601936 118227640 118227640 325902568 325902568 390087378 470289000 1057251916 1057251916 865212599 795275447 347811149 183807520 679617040 711457173 711457173 660622841 921695301 921695301 822856894 308548756 308548756 162448133 568322528 568322528 542753892 289099507 814404675 814404675 297001922 568633058 948833413 948833413 810309831 826984514 826984514 412014823 319046871 962743301 998868274 998868274 285539330 271012896 52080272 52080272 49851072 145267204 145267204 12847296 216181984 237668682 981300874 981300874 315241658 315241658 85517368 507406897 765231823 765231823 973700829 999502455 999502455 910607060 910607060 358331576 358331576 992090169 992090169 424673298 324145768 866330907 866330907 589369570 499190236 499190236 248664284 117441549 721945653 721945653 615023872 598553973 774627589 788451285 788451285 166205925 88786925 544355200 544355200 227944965 672471660 672471660 937353596 937353596 908515979 701782398 582298457 1047616014 1047616014 819890588 819890588 687777414 687777414 649848656 761440904 761440904 375153758 375153758 135861266 298523898 361375290 361375290 440926444 440926444 832974278 832974278 279648341 0 128910848 128910848 170744692 228373700 956700484 956700484 613454667 361761412 597427094 806624559 806624559 536946637 1060543007 1060543007 797848367 525108662 525108662 553583429 714631408 714631408 694237320 694237320 27223424 13479488 12870800 43330128 43330128 42603344 44513616 45960576 45960576 43618176 43618176 15059472 47285184 47285184 66668832 66668832 28175712 20798032 20798032 15414720 34514976 34514976 32297664 32297664 111730952 290524482 290524482 60980248 323361394 373606440 373606440 357859344 307241120 319307776 319307776 271905088 330635520 330635520 276889920 276889920 581023989 811704835 811704835 717511380 913293609 913293609 1022043270 1046856267 1046856267 1046817472 320178402 622070000 916074997 1015021647 1015021647 1015021647 744669354 744669354 861310361 861310361 833753955 40407251 164627172 992763216 1044811316 1044811316 320755722 396964696 396964696 277613634 317602898 419824128 420878886 423832256 959847014 959847014 884240503 379969631 690443128 690443128 180392788 180392788 635504292 635504292 563352448 135801221 205707264 205785228 675614180 675614180 797605961 797605961 154535004 677446612 677446612 579936849 575159792 554308641 702164100 702164100 687998017 616638497 658843833 658843833 650611769 316115570 316115570 104869000 386320440 386320440 329322506 329322506 320557090 323956829 1026501311 1026501311 361178839 607657699 922433499 922433499 574037579 495051889 799141949 799141949 1006224069 1006224069 502890638 502890638 508618474 508618474 619217408 620283849 620283849 620283849 994447687 994447687 812629472 948995737 948995737 715202432 936455619 936455619 407905269 1032858214 1032858214 699737349 690488613 991942435 991942435 572837425 391408563 472580170 778301058 778301058 445390683 657099485 657099485 636365801 606912130 1045830303 1045830303 686445532 852926656 852926656 757177984 738611245 779137673 779137673 203560712 206050444 980156802 980156802 939920705 914495748 595126722 595126722 292390147 605028873 605028873 460663734 460663734 775948864 775948864 503458366 581994136 994636199 994636199 378849566 539886316 918868589 918868589 732248968 694937077 644117478 199874802 305100550 382082674 382082674 898405747 898405747 491517463 980163468 980163468 939137931 511231898 511231898 473357070 756603426 756603426 556355074 494920034 811693521 811693521 597811569 323147760 561840977 561840977 271641153 979490350 979490350 764620335 897445803 989121906 989121906 366926086 299757282 891289806 891289806 702546405 482345259 261259784 102946072 346771669 952246541 952246541 773907292 675898629 637925316 760021695 760021695 771961033 771961033 1056054838 1056054838 665918075 840172041 840172041 800726076 800726076 74263944 354057420 354057420 232818306 143668832 212472596 212472596 362806890 362806890 483871988 483871988 496206326 496206326 520923792 520923792 162078844 244317564 244317564 260454704 566526208 566526208 725928117 725928117 924993725 1016254824 1016254824 438718821 1066693779 1066693779 1017135542 585241041 1018332017 1018332017 451690610 438259542 438259542 300784850 300784850 286954122 463080916 533759114 533759114 360844672 275519594 46401968 100927512 365766722 365766722 187034256 230621124 230621124 249955012 427941990 427941990 216563778 386134582 386134582 240939528 494998554 494998554 216318350 277381798 277381798 297536847 617088201 617088201 776290757 1042861279 1042861279 416420550 416420550 630268520 630268520 546006139 911193984 911193984 601225537 568514912 65469472 44155072 44155072 58763616 58763616 25166448 35602692 187611856 187611856 242357148 757129759 757129759 748208674 748208674 310452306 637566488 953290125 953290125 807453452 557994960 666516026 666516026 152252964 168364928 168364928 868847552 884598603 984340750 984340750 370234574 779397036 779397036 667245173 349848178 349848178 284270570 308313434 308313434 355139248 579720597 579720597 942521136 942521136 837997539 922353779 922353779 868750716 751981001 616830208 914023664 1040396319 1040396319 675739954 675739954 1003502260 1003502260 153032659 3146496 12453648 154183274 407008606 410133638 410133638 403960326 403960326 505273104 505273104 352982058 945506090 945506090 736352067 1071477773 1071477773 312412235 709267122 727447221 727447221 727094993 415340476 415340476 216630792 216630792 805650760 805650760 776931414 776931414 369114437 717684581 751801437 751801437 640153881 640153881 792790074 956334501 956334501 692765751 405426320 145892804 268763648 269822466 311800402 443615684 546528289 546528289 464804026 464804026 639637791 639637791 922029661 922029661 1047471774 1047471774 956864061 852846376 852846376 888408616 888408616 426723974 422690304 102735936 102735936 78568776 125247056 125247056 538969248 553779208 553779208 575799960 827986978 827986978 377162385 616174450 644925754 911899600 911899600 856819234 1032856376 1032856376 487065422 800330241 800330241 574425888 776069277 776069277 562078772 562078772 936422109 936422109 708537887 365763436 298844898 43854672 44175696 719649704 758194989 758194989 679827652 752351949 1033639341 1033639341 873517205 288898444 354209876 537214976 537214976 359135658 889884874 889884874 496312629 107480472 743552169 743552169 701500003 958798119 958798119 596704100 966680544 966680544 471092018 582560369 1060563055 1060563055 664322872 1024191181 1024191181 763861622 697199616 647860896 944928803 944928803 67962968 143445060 143445060 113296844 44616964 136364292 136364292 150994980 218678280 218678280 47113296 48797056 48797056 148207616 172476628 226804924 226804924 34605392 34605392 58982448 164103728 164103728 64422804 64422804 154737296 154737296 195349460 195349460 1058054072 1058054072 836912879 986919605 986919605 773878216 515498778 231024704 472522792 472522792 459762154 185006486 168220692 286630742 305006602 520232778 520232778 495128770 284107538 319292466 338422434 338422434 37437264 252290136 252290136 184060826 470044116 470044116 370620954 370620954 360535128 115911360 74449096 112828760 112828760 323080674 327333762 327333762 168297492 187278560 376488858 385667914 385667914 349311690 423173304 443729952 443729952 498969902 534308062 534308062 390104676 295560092 982159393 982159393 981871544 1046964730 1046964730 704995670 704995670 213909708 789457424 789457424 1028850824 1028850824 609877027 711404202 1010047619 1010047619 555470911 841095555 841095555 877547604 877547604 847697332 644452718 1017038837 1017038837 704963157 405179058 405179058 286417942 785433417 785433417 833816760 833816760 697574058 315671250 318920194 318920194 285710802 411913716 411913716 295347152 326891442 326891442 843128370 843128370 815392323 806252097 25965568 11347265 569343617 569343617 9004032 538460928 548479809 613966435 825786440 825786440 423109096 29433932 209764428 465777344 468064984 983969426 983969426 548602833 946605345 946605345 928723966 928723966 923469020 747677924 747677924 1010847546 1010847546 1029735912 1029735912 938568738 938568738 896099347 788472948 788472948 699536229 681080052 664797297 664797297 213926072 213926072 186785356 119996864 915485258 915485258 554399288 872411452 872411452 709519844 277332170 349054120 349054120 353446048 557952228 687945024 687945024 553844832 31589792 701199493 701199493 226343652 79832264 79832264 93851408 128190840 128190840 288114016 288114016 47539840 102910472 917361968 917361968 380507234 881302072 881302072 604677672 353899041 352395818 888704886 888704886 429401614 508095390 508095390 345785612 82313472 82313472 254269696 254269696 152854528 517483776 519073342 519073342 321836988 509637768 509637768 439088406 371864242 523280128 549090844 564873762 564873762 447125712 447125712 403336758 613967688 613967688 745662093 745662093 563048902 566887859 622502440 622502440 689962017 689962017 206973539 831855244 831855244 208242048 535118658 535118658 249777936 500478322 551043772 551043772 489688497 133681880 443869349 480664391 612779538 916381275 916381275 626953251 604414152 734371868 734371868 779700733 779700733 686463855 553906209 1015860303 1015860303 1015860303 817916000 345084076 408308876 408308876 218115176 218115176 621166304 621166304 68751264 21309184 422061762 422061762 290526244 290526244 134402052 148934666 350224842 551559459 948012484 948012484 841674864 841674864 455147830 655102154 655102154 934815867 934815867 822873123 1033318222 1033318222 832519779 25181699 585111629 859579220 859579220 179375923 129678656 411354976 540935750 540935750 91564968 91564968 877208715 877208715 909151453 914441153 914441153 957891248 957891248 490864830 490864830 504399098 504399098 425322150 495514550 495514550 168481812 168481812 168746004 372465464 453193782 453193782 190853506 146923716 134753904 161057300 161057300 135807544 120588152 86288984 86106408 61910648 69248552 69248552 59647456 71835170 395856962 395856962 276886090 325902568 325902568 987365432 987365432 1057251916 1057251916 865212599 795275447 222653176 260614400 679617040 711457173 711457173 600227169 881178832 881178832 830539000 537187328 537187328 675465312 680186949 715698501 715698501 289099507 814404675 849977520 981672183 981672183 948833413 948833413 810309831 826984514 826984514 697225317 147594340 60069409 60069409 35212336 41987584 80717096 80717096 60242544 63198416 63198416 354765736 354765736 95430912 109190216 789691168 789691168 303764301 387558936 387558936 389564474 389564474 265685924 301444728 438295776 438295776 910607060 910607060 981708933 981708933 992090169 992090169 891818166 457311531 978326305 978326305 1060514364 1060514364 973409244 248664284 82057372 69731592 615023872 615023872 598553973 596192621 788451285 788451285 259046073 259046073 544355200 731518000 731518000 570895104 96598228 1033988886 1033988886 788762820 723943600 723943600 582298457 608135489 608135489 414890338 268706444 268706444 649848656 649848656 585393356 498810032 478064458 353380922 353380922 361375290 361375290 440926444 440926444 832974278 832974278 623545717 804069734 1021852812 1021852812 124265592 218176408 570388892 619443657 619443657 945981225 945981225 918162706 918162706 536946637 1060543007 1060543007 797848367 820961698 820961698 790488073 714631408 714631408 694237320 694237320 4268544 4268544 12870800 43330128 45616960 45616960 50196048 50196048 49782160 42207936 42207936 33738768 10012224 10012224 8406528 11983680 15632000 15632000 15414720 22227968 22227968 13682752 32297664 32297664 111730952 290524482 290524482 60980248 323361394 373606440 373606440 357859344 307241120 319307776 319307776 531679193 531679193 330635520 611471502 611471502 926081917 926081917 1065419636 1065419636 508266392 508266392 1022043270 1022043270 1046817472 1046817472 437561542 622070000 622070000 1015021647 1015021647 1015021647 566838496 566838496 637638313 637638313 593106609 593445760 593445760 580437585 63991002 320755722 320755722 396964696 396964696 463212150 823728845 830492344 830492344 708014358 959847014 959847014 983992328 983992328 701976716 581069692 881922627 881922627 754246633 635504292 557656045 589422897 589422897 266959421 675614180 675614180 797605961 797605961 262591889 677446612 677446612 579936849 183509381 186388020 702164100 765988548 765988548 895625721 912734619 912734619 356977419 311435290 106987024 106987024 331851258 331851258 128550120 109691400 376440560 376440560 363332970 261756540 261756540 135334276 135334276 136830736 136830736 152686908 152686908 140822916 140822916 111330608 502890638 502890638 508618474 834980067 872693992 872693992 620283849 620283849 456168400 253376239 812629472 812629472 581265482 715202432 715202432 308806812 1001915414 1032858214 1032858214 428408941 319300202 379390074 379390074 360976234 328803954 328803954 778301058 778301058 445390683 1047531520 1047531520 206916103 606912130 1045830303 1045830303 709632192 852926656 852926656 253735105 241384904 439845642 439845642 203560712 102422040 52619528 454088560 505954370 505954370 564794721 564794721 381499584 605028873 605028873 460663734 460663734 915350700 915350700 541656662 541656662 994636199 994636199 378849566 539886316 918868589 918868589 694937077 694937077 644117478 420301584 305100550 382082674 382082674 695703952 695703952 491517463 980163468 980163468 939137931 387321019 369886496 285744166 477106540 502763718 502763718 494920034 283871168 810675906 810675906 808986371 540823808 540823808 271641153 278595392 278595392 277349442 11010306 119589120 341904184 341904184 489947150 891289806 891289806 978411860 978411860 113906904 228119220 228119220 125905040 773907292 773907292 675898629 1060177332 1060177332 760021695 771961033 771961033 1056054838 1056054838 814815753 840172041 840172041 800726076 800726076 355345880 376998192 376998192 232818306 143668832 212472596 212472596 33555536 203538688 483871988 483871988 496206326 496206326 520923792 520923792 167837952 279193822 279193822 423692644 566526208 566526208 457228470 457228470 301358038 504779663 504779663 438718821 1066693779 1066693779 512345973 935261266 1018332017 1018332017 830872929 33787184 286272856 286272856 201149662 478677920 503058414 533759114 533759114 478419648 57823310 211193952 226630156 226630156 156239956 187034256 187034256 119851828 402922134 402922134 247863412 255918664 255918664 248424078 248424078 494998554 494998554 216318350 105243374 165152484 297536847 617088201 617088201 677003264 1042861279 1042861279 416420550 416420550 355628585 258560647 492475268 498536896 591920128 591920128 568514912 65126400 65126400 41992688 35651856 19775760 51161120 60261712 161440101 169978880 242357148 757129759 757129759 748208674 748208674 310452306 637566488 953290125 953290125 807453452 557994960 666516026 666516026 152252964 168364928 168364928 350263840 512153970 984340750 984340750 304234799 779397036 779397036 791239654 791239654 901775595 901775595 636892777 636892777 606747808 413483366 413483366 202645060 202645060 700635978 700635978 439750676 441970226 616830208 746853376 944466477 969982695 969982695 827691074 482556468 1011942249 1011942249 593695147 817049809 881158872 881158872 68651336 8788032 148041915 1066476159 1066476159 595024759 722241728 722241728 945506090 945506090 736352067 1071477773 1071477773 312412235 709267122 727447221 727447221 1022130268 1073739967 1073739967 592351562 262014252 334262660 650854896 1017161741 1017161741 291606738 717684581 751801437 751801437 705161733 839503268 839503268 792790074 220250412 757088257 757088257 39355398 268763648 269822466 269822466 152675365 546528289 546528289 464804026 464804026 370968282 610796937 610796937 248253384 797967552 956864061 956864061 63710352 63710352 62405776 62405776 44907552 336402458 336402458 371916800 371916800 125247056 125247056 612632904 612632904 553779208 575799960 827986978 827986978 285217186 352323624 644925754 810979288 810979288 856819234 1032856376 1032856376 487065422 303891812 497618742 497618742 235217900 491327026 491327026 206842892 936422109 936422109 708537887 883214667 883214667 783355430 973966921 973966921 864931187 641302601 679827652 752351949 1033639341 1033639341 873517205 909272361 909272361 665462057 665462057 605738633 889884874 889884874 648848784 559961845 743552169 743552169 745572681 958798119 958798119 420479847 966680544 966680544 471092018 545619270 956847731 956847731 580562652 301076963 862370962 862370962 697199616 182445269 944928803 944928803 67962968 143445060 143445060 113296844 44616964 136364292 136364292 150994980 218678280 218678280 235231256 235231256 2619648 148207616 148207616 141646208 31632420 91491168 91491168 193859688 193859688 159909472 144505428 174151716 174151716 169114164 152228388 60086864 1058054072 1058054072 1012219347 1012219347 728636887 665765893 238945000 238945000 367538380 459762154 459762154 185006486 168220692 286630742 305006602 520232778 520232778 495128770 386159585 806523339 917040388 917040388 212983187 252290136 252290136 67534032 792499713 792499713 1017069024 1017069024 736573952 447561140 189283968 41716112 41716112 39854816 60372352 142136720 168297492 187278560 187278560 285116160 285116160 47896272 423173304 443729952 443729952 498969902 534308062 534308062 390104676 109044752 109044752 384763866 981871544 981871544 476466248 476466248 213909708 213909708 789457424 872731714 1028850824 1028850824 773350932 773350932 1010047619 1010047619 775859482 841095555 841095555 877547604 877547604 847697332 644452718 1017038837 1017038837 704963157 495323194 405179058 556940060 785433417 785433417 833816760 833816760 697574058 216535932 64013504 249583452 465823936 465823936 12972278 63073809 568327905 568327905 568327905 28785504 598346577 598346577 558115904 25518496 569343617 569343617 564207873 902309091 902309091 613966435 825786440 825786440 481959522 481959522 80401608 465777344 465777344 983969426 983969426 548602833 946605345 946605345 928723966 993553561 993553561 747677924 747677924 16894061 282854382 1029735912 1029735912 346918510 390279354 390279354 788472948 788472948 699536229 596641324 664797297 664797297 213926072 216533108 216533108 331613696 915485258 915485258 554399288 872411452 872411452 709519844 213950604 212469316 116528088 57994504 541299520 541299520 550225024 550225024 23670880 569403392 569403392 556963393 548879169 98722648 113546208 128190840 128190840 288114016 288114016 48612736 835444818 917361968 917361968 820911555 881302072 881302072 653295792 919962223 955370357 988669824 988669824 429401614 508095390 508095390 345785612 150249196 217455564 217455564 176826192 152854528 198515860 519073342 519073342 437258392 437258392 325881074 526518144 526518144 336663694 549090844 917761349 917761349 708828479 1055132127 1055132127 637172825 637172825 452946242 1049927564 1049927564 1006591607 842989570 675964960 493858470 803283453 952526642 952526642 831855244 328649314 328649314 271969026 271969026 913308251 913308251 967081300 967081300 562219066 443869349 606145128 606145128 605063955 388108602 391383738 391383738 256149588 490924774 490924774 759504896 759504896 759433389 123754112 162730516 246787028 246787028 186501932 220021804 220021804 218115176 218115176 92608544 759182573 759182573 746528485 422061762 422061762 290526244 290526244 134402052 148934666 350224842 350224842 178307526 111223128 273225056 320868538 320868538 284233299 582295488 994130277 994130277 796326046 796326046 357702699 282993826 26816288 585111629 696387065 696387065 443021718 443021718 867048439 867048439 475815558 819175210 882913548 882913548 877208715 909151453 914441153 914441153 957891248 957891248 490864830 490864830 504399098 504399098 450937302 495514550 495514550 329388402 329388402 197655660 355011792 355011792 44686672 306826160 1006390286 1006390286 548211962 553951266 908118323 908118323 905990171 889426299 841004091 369660929 699239430 807141632 807141632 395856962 395856962 741415693 741415693 649045773 987365432 987365432 505059321 863897587 863897587 850921299 1069073733 1069073733 909502993 765731092 1000686841 1000686841 881178832 881178832 830539000 537187328 537187328 675465312 680186949 715698501 715698501 181020117 33694080 849977520 981672183 981672183 554203378 554203378 46665781 705302725 940311718 940311718 672680005 567854817 362611098 394572322 394572322 360843824 80717096 60242544 63198416 63198416 354765736 354765736 95430912 109190216 789691168 789691168 303764301 387558936 387558936 389564474 389564474 638320730 814484547 847511635 847511635 814220355 760215706 981708933 981708933 679104695 891818166 891818166 457311531 978326305 978326305 1060514364 1060514364 973409244 157324072 26350508 710038045 710038045 651166592 196215752 636142885 636142885 205309544 602729381 602729381 217416476 731518000 736436640 736436640 222655737 1033988886 1033988886 491086022 961886574 961886574 241584865 246150492 414890338 414890338 129375096 57631522 57631522 321598876 498810032 498810032 478064458 353380922 353380922 312481808 312481808 313134382 313134382 151126520 623545717 623545717 804069734 1021852812 1021852812 232118992 232118992 570388892 619443657 619443657 945981225 945981225 918162706 918162706 274204146 412128354 684646080 684646080 820961698 820961698 790488073 470811150 470811150 370883844 189087252 52047312 51981508 151072484 165941092 165941092 45616960 50196048 50196048 49782160 42207936 42207936 35776064 10966080 12647792 62413408 62413408 178595144 178595144 230477424 230477424 206908172 206908172 206906260 222888348 222888348 248911948 248911948 0 12585548 211026112 211026112 123732616 501285772 501285772 422891438 531679193 531679193 580930956 684197061 684197061 926081917 926081917 1065419636 1065419636 952705052 293154097 2696448 863503215 863503215 671353690 437561542 976224596 976224596 865462899 865462899 91785539 566838496 669752401 669752401 637638313 593106609 593445760 593445760 580437585 577059552 577059552 76072008 295405475 322744453 463212150 823728845 830492344 925124412 941411847 941411847 923795572 983992328 983992328 701976716 581069692 881922627 881922627 754246633 621938980 100745513 589422897 589422897 266959421 629928652 667013832 667013832 561475477 262591889 205756736 242146716 543494897 543494897 545395692 554769104 765988548 765988548 895625721 912734619 912734619 356977419 311435290 106987024 106987024 331851258 331851258 128550120 84460584 376440560 376440560 363332970 492438658 492438658 447480568 140981120 38254592 50464564 152686908 152686908 140822916 140822916 149163322 190680448 391243410 391243410 834980067 872693992 872693992 19449120 27280704 27280704 407142720 415549638 428132806 428132806 425745596 425745596 308806812 1001915414 1001915414 537199296 689514021 722747941 723381813 723381813 689196293 673564692 573453652 716916228 716916228 168159252 1047531520 1047531520 691079816 360032149 55103794 709632192 709632192 683985093 187742580 187742580 266444200 266444200 225803148 2410752 476702876 476702876 306589850 505954370 505954370 73887944 381499584 381499584 315172050 315172050 302779410 302779410 915350700 915350700 541656662 541656662 475079310 170595786 307502224 307502224 197706996 404653912 464191338 464191338 441809430 420301584 320930642 324023456 324477024 578378498 578378498 109168648 109168648 543691536 543691536 160963904 160963904 223089324 233079212 233079212 162437664 283871168 283871168 835242146 835323363 835323363 828306816 828306816 137004288 869209774 869209774 650116953 646137230 646137230 384890055 341904184 489947150 554995450 641992857 978411860 978411860 218538848 258939748 483194033 520711833 520711833 470336526 470336526 1060177332 1060177332 326941953 458814770 458814770 626118686 689397125 814815753 814815753 422383809 94086396 435051552 435051552 495856364 495856364 134217728 79960776 62869952 264141358 365169834 530092122 530092122 520809848 527848156 527848156 259175912 429656224 429656224 279193822 427903194 427903194 423692644 344213712 233098828 664585849 668058029 668058029 288401167 201782024 604805436 604805436 512345973 935261266 935261266 837698722 992430725 992430725 988300726 988300726 449888982 478677920 503058414 503058414 527172534 527172534 369475602 369475602 531964190 531964190 419589696 419589696 42992176 42992176 402922134 402922134 247863412 417608108 417608108 495817802 495817802 484592078 331224880 415372496 415372496 475825706 475825706 192416798 73975176 677003264 677003264 68817952 120198456 648550008 711282077 711282077 729792017 729792017 164787025 170053652 170053652 65126400 65126400 52636480 177914384 177914384 160416068 171705856 171705856 169978880 169978880 629224500 629224500 243963045 172708008 113320152 234922512 234922512 239108624 239108624 206619276 35185792 35251728 35251728 210609840 240183412 240183412 1068024889 1068024889 445170774 942343803 942343803 698599745 791239654 791239654 901775595 901775595 948241863 961940048 961940048 405532402 377534260 377534260 210484827 852920690 852920690 507005106 441970226 441970226 746853376 944466477 1054818015 1054818015 827691074 482556468 1011942249 1011942249 593695147 817049809 881158872 881158872 297740354 464131446 526654664 1066476159 1066476159 595024759 722241728 722241728 701126353 357602935 440476958 716290996 716290996 271583298 794769529 794769529 416074950 1022130268 1073739967 1073739967 942071518 1063630784 1063630784 918593396 1017161741 1017161741 403215432 403215432 1059261556 1059261556 705161733 839503268 839503268 639689029 407271878 757088257 757088257 268476550 414700226 414700226 3803650 3803650 402697830 419941414 421362272 421362272 389707416 371721498 371832064 371832064 171443988 113381592 223971068 934437159 944953139 944953139 944344097 944344097 678139682 336402458 371916800 371916800 329197680 297209890 612632904 612632904 268960770 570951312 570951312 56010512 69731328 352323624 352323624 123757856 123757856 83886120 104521760 222306836 222306836 101917304 226496540 226496540 69332656 69332656 77336136 206842892 286384348 689740462 703778341 883214667 883214667 783355430 973966921 973966921 864931187 641302601 641302601 429792870 429792870 305394450 540384289 909272361 909272361 665462057 665462057 605738633 593862969 648848784 648848784 559961845 559961845 539543304 745572681 745802637 745802637 252722832 223296684 133066968 453132378 546734694 847415315 847415315 503713832 503713832 862370962 862370962 638896665 638896665 638896665 528768040 528768040 454838900 467016408 467016408 667999442 959221263 1014890157 1014890157 222813839 151027724 423935150 423935150 156255104 281825474 281825474 240835836 169529108 259000948 259000948 228854732 193859688 191335508 191335508 174151716 174151716 169114164 152228388 60086864 590065664 958135468 1012219347 1012219347 728636887 665765893 385302418 306324500 306324500 151921874 246536252 246536252 150628248 150628248 248234072 248234072 192263777 386159585 386159585 872467780 917040388 917040388 912574875 912574875 885299621 885299621 792499713 792499713 1017069024 1017069024 736573952 447561140 189283968 16163348 175276800 175276800 172150932 179212608 179212608 34769940 43929296 285116160 406489156 406489156 446852830 446852830 121186104 419694392 419768358 419768358 303517768 455310577 775938015 775938015 712594643 707608579 707608579 1016963673 1016963673 694495653 713066587 872731714 872731714 823379017 773350932 773350932 870174418 870174418 775859482 775859482 191428826 191428826 152322388 152322388 249596516 467714390 467714390 495323194 495323194 92409960 556940060 556940060 548210394 548210394 400321191 216535932 322605362 367187694 367187694 465823936 465823936 278011722 356449032 568327905 568327905 568327905 480908622 912919772 912919772 558115904 543172993 560571264 560571264 564207873 902309091 902309091 564740715 814770019 823971363 823971363 746374828 141067712 419433772 419433772 387193010 420094564 420094564 453458064 956900353 956900353 993553561 993553561 558965001 558965252 558965252 542537862 943976960 943976960 542884403 860308208 860308208 214631542 604237833 973699083 973699083 854893954 208208240 208208240 216533108 227320072 331613696 331613696 397411194 397411194 509976632 509976632 453347734 240466140 240466140 115280320 115280320 166323684 166323684 143352164 558498048 698884160 698884160 679534980 556963393 548879169 898193115 898193115 519145143 506424213 862328096 967737173 967737173 922764458 922764458 900283770 820911555 820911555 653295792 653295792 919962223 955370357 988669824 988669824 27312584 19416832 153623752 153623752 150249196 217455564 217455564 176826192 147961096 147961096 114068800 440407040 440407040 437258392 73480270 526518144 526518144 272596284 272596284 917761349 917761349 708828479 1055132127 1055132127 637172825 637172825 452946242 1049927564 1049927564 1006591607 842989570 675964960 493858470 803283453 952526642 952526642 603726245 328649314 328649314 271969026 271969026 913308251 913308251 967081300 967081300 562219066 58809600 606145128 639415587 639415587 388108602 616856262 771982050 771982050 424075905 957823527 973459669 973459669 786434707 1012740816 1012740816 10500111 44106496 45089616 108596664 109652240 109652240 621876025 621876025 759182573 759182573 746528485 698351973 813176615 813176615 135927300 151259172 338429954 338429954 1051518324 1051518324 554644865 591789104 591789104 335612384 368316888 663758066 994130277 994130277 445582757 403322644 403322644 607367200 607367200 322757222 349451057 452630764 476788110 511457808 867048439 867048439 475815558 819175210 882913548 882913548 706364452 706364452 451937238 451937238 718149392 718149392 290564818 293675106 293675106 440418624 450937302 451068886 451068886 329388402 329388402 197655660 355011792 355011792 276957056 306826160 1006390286 1060773717 1060773717 553951266 908118323 908118323 905990171 889426299 841004091 369660929 699239430 807141632 807141632 232194088 263109311 741415693 741415693 649045773 272242434 708838404 708838404 863897587 863897587 850921299 1069073733 1069073733 909502993 882911538 1000686841 1000686841 626049064 124351928 379777810 379777810 53699472 685127472 709436565 715371693 715371693 147005005 126291848 301995184 306583698 457518226 806298814 806298814 234881052 234881052 940311718 940311718 682075505 567854817 654758973 663717409 663717409 663203417 655071273 229115244 770983300 782338295 782338295 357778347 234035974 485108001 799099752 799099752 654814835 654814835 646475371 85072740 1002082664 1002082664 814484547 847511635 994206945 994206945 407645951 425402478 751890967 751890967 510341438 118753190 155586448 155586448 55576608 168821268 168821268 157324072 203823372 203823372 710038045 710038045 651166592 196215752 636142885 636142885 205309544 602729381 602729381 248038620 216699152 736436640 736436640 222655737 262335372 262335372 491086022 961886574 961886574 246186009 606653893 606653893 104387985 972145830 994110839 994110839 1033506016 1033506016 487660990 410944646 307199374 286271158 227476008 227476008 290324532 390333570 390333570 773231157 773231157 880026498 880026498 405583964 753590528 753590528 327473200 906934293 906934293 461682192 600702305 600702305 119275984 425241222 425241222 960780544 960780544 813604519 444078356 444078356 470811150 470811150 370883844 189087252 52047312 51981508 151072484 165941092 165941092 42731648 25963732 7089408 38317120 38317120 35776064 44581696 44581696 34613376 62413408 62413408 178595144 178595144 230477424 230477424 206908172 206908172 206906260 222888348 222888348 373606742 373606742 266338812 412227754 495978560 495978560 123732616 501285772 501285772 422891438 422891438 223658282 688949766 942671479 942671479 747160077 747160077 405922566 952705052 952705052 443411862 853126934 853126934 277446721 173121668 589564172 976224596 976224596 865462899 865462899 91785539 57459496 669752401 669752401 72138880 61867952 51596256 62943696 572314448 577059552 577059552 27236464 426064246 426064246 372667922 925333848 925333848 925124412 941411847 941411847 923795572 923795572 172000847 79709516 141084036 141084036 94494756 149774688 149774688 69280008 70689152 139026176 139026176 629928652 629928652 215217257 1044677408 1044677408 879761366 879761366 641742091 543494897 799872081 799872081 554769104 330566170 330566170 401867002 852754834 931136251 931136251 890503715 902053928 902053928 318803088 318803088 39634082 359679146 359679146 327815412 492438658 492438658 447480568 140981120 8257536 8257536 19616272 168987652 168987652 241194872 241194872 232396524 391243410 391243410 168101420 872693763 872693763 285526050 738305482 738305482 679092869 586419155 586419155 688407870 1048710693 1048710693 969806694 860423353 860423353 537199296 689514021 722747941 723381813 723381813 689196293 673564692 573453652 716916228 716916228 536087550 536087550 691079816 839220780 839220780 55103794 173538004 173538004 204942142 204942142 187742580 266444200 505554630 505554630 248844096 513674266 513674266 518659532 518659532 302254098 260308994 294845640 294845640 315172050 315172050 302779410 302779410 692591698 911351944 911351944 959984667 959984667 726148474 341065544 341065544 448341858 448341858 174174048 174174048 411591552 411591552 320930642 320930642 908591454 908591454 578378498 109168648 573601310 573601310 222697516 222697516 219025206 223089324 223089324 209062540 154567820 151016448 822089985 835242146 835323363 835323363 828306816 828306816 272728096 869209774 869209774 650116953 646137230 646137230 836375143 935272051 935272051 554995450 815841603 815841603 814181649 635386245 754585764 754585764 650685665 724936026 724936026 521148731 824745507 899517246 1014677918 1014677918 741116910 741116910 965989469 965989469 921455520 288196867 334275126 435051552 435051552 495856364 495856364 79960776 79960776 62869952 264141358 365169834 530092122 530092122 520809848 527848156 527848156 464669982 536337534 536337534 315320772 427903194 427903194 130033880 130033880 233098828 664585849 668058029 941765276 941765276 908331291 472126739 879057559 879057559 1073345278 1073345278 837698722 992430725 992430725 988300726 988300726 449888982 449888982 423649710 450888168 527172534 527172534 369475602 369475602 531964190 531964190 419589696 419589696 246340956 59395980 397697840 409023214 409023214 417608108 417608108 495817802 495817802 484592078 369236522 415372496 415372496 488988762 488988762 192416798 73975176 709379142 709379142 411600021 120198456 648550008 711282077 711282077 729792017 729792017 164787025 170053652 170053652 8523840 52636480 52636480 177914384 177914384 160416068 171705856 186204513 186204513 183535149 188789983 292278703 743169238 743169238 495332393 717956800 1016829513 1016829513 604386318 608558224 910183582 910183582 470345278 470345278 432078902 240183412 1068024889 1068024889 445170774 942343803 942343803 399812962 274672070 774640468 810886627 810886627 948241863 961940048 961940048 405532402 377534260 377534260 210484827 852920690 852920690 591242416 591242416 360178958 336469002 1006058452 1054818015 1054818015 483932177 278922050 928125846 928125846 579078928 579078928 76640928 266412970 297740354 464131446 713382664 783545181 783545181 211407544 411660484 411660484 403960326 403960326 440476958 716290996 716290996 271583298 794769529 794769529 416074950 893576266 893576266 942071518 942071518 1063630784 1063630784 918593396 424214556 604164105 638730249 638730249 1059261556 1059261556 743637000 752093901 752093901 407271878 407271878 140652736 268476550 268476550 414700226 414700226 10783744 269103104 269103104 1123330 112272960 389707416 389707416 371721498 373966534 373966534 416847002 416847002 223971068 934437159 944953139 944953139 944344097 944344097 678139682 33561616 33561616 329197680 329197680 297209890 297209890 932726507 932726507 283938528 810685059 810685059 281287458 305454216 606064562 810172130 810172130 538251264 623048010 623048010 222306836 101917304 226496540 226496540 146089732 67895296 4983936 172791861 743614004 743614004 668303586 893700794 893700794 813779017 75557152 75557152 740043776 740043776 202561548 246340956 741680592 915314923 915314923 885100122 40239248 40239248 81094168 111693264 113107912 138113360 577904805 577904805 189928116 189928116 19155555 290068194 290068194 907797139 907797139 483785413 843816435 843816435 847415315 847415315 503713832 503713832 859332663 859332663 723599378 806937228 1011992072 1011992072 873740081 873740081 592632583 467016408 791905536 959221263 1014890157 1014890157 888990128 888990128 423935150 423935150 156255104 281825474 281825474 240835836 169529108 259000948 259000948 228854732 159647844 191335508 191335508 44562768 40644736 40644736 40532464 29976320 590065664 590065664 526855906 526855906 433852134 671167508 671167508 877206697 877206697 780940459 261886317 246536252 150628248 590277801 610608961 610608961 807533696 807533696 12583104 872467780 912932995 912932995 912574875 912574875 942147296 942147296 661406965 33875243 9797760 9797760 135201924 135201924 4989824 36918656 175276800 177116692 177116692 179212608 179212608 171804992 171804992 315357760 406489156 406489156 446852830 468510366 468510366 509085128 509085128 419768358 303517768 455310577 775938015 775938015 867171699 867171699 707608579 1016963673 1016963673 963653650 963653650 244400708 200876288 200876288 192555712 280215036 870174418 870174418 531852388 531852388 405810524 939525306 1057269234 1057269234 1060413952 1060413952 687346685 687346685 176626469 288694473 829807447 988224078 988224078 969915841 969915841 771313266 322605362 367187694 680605541 691221285 691221285 409204674 658546557 658546557 808734136 808734136 1023201231 1023201231 912919772 176998856 543172993 543172993 537795585 540613376 547818496 547818496 564740715 848195955 848195955 823971363 746374828 507959454 419433772 419433772 387193010 698525685 698525685 388102940 956900353 956900353 611791693 611791693 137573124 558965252 558965252 542537862 943976960 943976960 542884403 860308208 860308208 978946019 978946019 973699083 973699083 1007690010 1007690010 258524909 165691568 227320072 227320072 297339668 462163204 462163204 509976632 509976632 453347734 240466140 240466140 115280320 115280320 166323684 677552384 677552384 558498048 698884160 698884160 687417285 282845507 544869838 898193115 898193115 519145143 506424213 862328096 967737173 967737173 922764458 922764458 661504667 621276064 611455881 122892984 122892984 383041138 383041138 360423032 318257682 318257682 291030690 291030690 286278784 103306160 103306160 109512728 109512728 230946100 230946100 195654860 440407040 440407040 314512212 318453714 318453714 54599856 157490098 282752518 282752518 184329654 449987992 449987992 173433384 193672308 371182190 420520836 428393574 428393574 428337286 428337286 223945484 253531892 253531892 309766324 477148280 477148280 229516620 218694252 229952364 229952364 229952364 219060032 228356800 228356800 18001984 69210624 202065228 639415587 639415587 264636724 840329244 840329244 771982050 671211524 957823527 973459669 973459669 786434707 1012740816 1012740816 571085990 868817979 868817979 354419738 859575617 859575617 904540899 904540899 104466216 964507474 964507474 702546405 813176615 813176615 135927300 151259172 338429954 338429954 1051518324 1051518324 554644865 591789104 591789104 522207596 522207596 663758066 663758066 1070044037 1070044037 403322644 403322644 875129570 875129570 322757222 322757222 452630764 476788110 511457808 511457808 112131072 112131072 738537800 738537800 121770168 239648912 739115564 739115564 428660249 718149392 718149392 290564818 293675106 293675106 476581084 476581084 450491606 296435196 281981750 235928604 16822272 17035296 405045328 405045328 412877296 566891624 1060773717 1060773717 1025253904 1025253904 329779467 111883288 111883288 103862584 119673144 127603264 127603264 100687128 232194088 281039528 361943658 361943658 593168474 1004148439 1004148439 708838404 575145105 134742165 513033620 513033620 313016386 876905818 882911538 882911538 626049064 626049064 176940188 176940188 578953621 703468677 703468677 709436565 715371693 715371693 229465309 229465309 301995184 306583698 658627632 806298814 806298814 234881052 234881052 211897348 682075505 682075505 537293156 654758973 663717409 663717409 663203417 655071273 229115244 770983300 782338295 782338295 357778347 234035974 485108001 799099752 799099752 654814835 654814835 646475371 85072740 1002082664 1002082664 1047709525 1047709525 994206945 994206945 290005212 425402478 751890967 751890967 487748260 306583698 374740611 877270155 877270155 723750473 723750473 592859156 203823372 220860736 220860736 36881404 183311224 183311224 261157660 261157660 57333168 265744761 723516981 723516981 249091545 712322452 712322452 81570376 822608746 822608746 764937837 903739318 903739318 246186009 606653893 606653893 487783232 972145830 994110839 994110839 1033506016 1033506016 274457602 274457602 978054167 978054167 521839860 1049128469 1049128469 917279003 917279003 773231157 773231157 880026498 880026498 795943869 795943869 753590528 468677938 906934293 906934293 461682192 600702305 600702305 1027115850 1027115850 425241222 960780544 960780544 813604519 444078356 444078356 566124955 623463543 623463543 728304976 728304976 590097216 172297728 3220224 184559568 184559568 26288736 43083056 43083056 28132576 34653504 44581696 44581696 34613376 284099937 284099937 439656330 449336611 449336611 656316438 681201223 756948525 756948525 658513925 658513925 373606742 685650593 685650593 412227754 495978560 495978560 100728968 355803796 355803796 292840124 385875996 990904346 990904346 942671479 942671479 747160077 808052227 808052227 815792676 815792676 979945222 979945222 853126934 727804594 727804594 617876431 617876431 83102133 68182024 166732704 222315208 222315208 67845600 72138880 72138880 55908064 51596256 62943696 64991888 65584224 160622160 183965172 426064246 426064246 372667922 925333848 925333848 316018000 103816914 76810824 41943120 585369994 585369994 521437243 504365854 486928142 273492460 149774688 149774688 103709272 103709272 139026176 329483451 806024499 806024499 579585025 1044677408 1044677408 879761366 879761366 641742091 390599207 799872081 799872081 357573842 330566170 330566170 401867002 852754834 931136251 931136251 890503715 902053928 902053928 350333256 350333256 41280290 348472162 382763623 792772797 792772797 496031099 762364091 1049384891 1049384891 233779283 86474779 929636899 929636899 878577493 878577493 232396524 291323936 291323936 274591362 872693763 872693763 498074478 738305482 738305482 679092869 586419155 586419155 688407870 1048710693 1048710693 969806694 520665968 336393728 336393728 292740872 272006018 353945130 354454586 354454586 287607946 132880336 645332939 645332939 536087550 536087550 834779784 839220780 839220780 386169403 202765362 689094711 689094711 688996868 170793471 128990132 505554630 505554630 248844096 513674266 513674266 518659532 518659532 302254098 260308994 294845640 294845640 338240778 338240778 652740057 815860933 1048914015 1048914015 1013660961 959984667 959984667 726148474 873533970 873533970 448341858 448341858 315932266 322495542 322495542 183686114 91308136 274727320 908591454 908591454 675332485 748725712 748725712 573601310 648945584 648945584 587601969 223347372 764942220 764942220 753275726 480131458 822089985 826077955 826077955 811331491 806877699 805335169 422098368 820721063 820721063 740857734 740857734 547439928 836375143 935272051 935272051 371482018 815841603 815841603 814181649 635386245 754585764 754585764 701885120 724936026 724936026 521148731 580190944 899517246 1014677918 1014677918 741116910 741116910 965989469 965989469 921455520 288196867 334275126 492127324 492127324 104186736 180895564 180895564 33091304 33091304 140090182 140090182 99962280 212289188 212289188 401085550 401085550 464669982 536337534 536337534 344523100 344523100 199535726 148971972 97332484 254740972 254740972 177016576 941765276 941765276 908331291 472126739 879057559 995733667 1073345278 1073345278 827168754 957749799 957749799 482877822 482877822 1033683571 1033683571 708676390 1044229494 1044229494 328294960 328294960 201449996 201449996 67231752 132919468 519900926 519900926 461327644 461327644 409023214 409023214 383386072 383386072 117624888 235933696 369236522 369236522 218503212 160222308 488988762 488988762 579413073 579413073 709379142 709379142 555015091 772065309 772065309 733234024 1060375359 1060375359 643918735 622128417 987122246 987122246 456705846 456705846 448606038 448606038 8702016 311182662 447760020 457737366 457737366 317802356 188789983 292278703 743169238 743169238 495332393 717956800 1016829513 1016829513 604386318 608558224 910183582 910183582 470345278 470345278 432078902 234955020 452985914 452985914 415307856 415307856 513941596 513941596 274672070 774640468 774640468 113255072 113255072 73377366 513375368 513375368 101811892 101811892 220810004 220810004 41987473 591242416 604737596 793714864 793714864 1006058452 1006058452 707239921 368947695 1045533932 1045533932 418301460 907481532 907481532 868282994 815639600 134398708 134398708 713382664 783545181 783545181 81450696 411660484 411660484 403960326 637665560 637665560 539103489 112210713 223458149 699622060 699622060 369412394 893576266 893576266 344576171 880500690 880500690 388298521 117604496 88264872 604164105 638730249 638730249 619521216 610919817 743637000 752093901 752093901 256297149 230042480 62679200 62679200 49624240 60917808 60917808 277579350 277579350 447428436 447428436 404758530 404758530 933286328 933286328 814094403 373966534 567186612 713345109 713345109 847365212 847365212 530081650 381157898 381157898 378017378 358400512 358400512 344987968 344987968 131203256 122819256 932726507 932726507 283938528 810685059 810685059 281287458 281287458 606064562 810172130 810172130 538251264 623048010 623048010 21570720 42991632 168304976 168304976 146089732 135274752 124872364 140053036 743614004 939892932 939892932 952232007 952232007 813779017 413290757 404750598 740043776 740043776 413407498 413407498 741680592 915314923 915314923 885100122 290157424 103310272 15477840 139336836 150674260 150674260 577904805 577904805 189928116 189928116 67393536 290068194 290068194 907797139 907797139 483785413 843816435 843816435 990062668 990062668 993186607 993186607 859332663 859332663 723599378 806937228 1011992072 1011992072 873740081 873740081 592632583 202866180 791905536 791905536 573124241 842337584 888990128 888990128 32973924 144054852 144054852 246302252 246302252 124834136 5280048 1082112 176948272 176948272 159647844 193860692 193860692 151002228 142813232 61445232 543051041 543051041 537479200 926307741 944841351 944841351 820324803 820324803 671167508 877206697 877206697 780940459 571113621 132579948 123216233 590277801 610608961 610608961 807533696 807533696 74465731 687122369 912932995 912932995 717379839 968948737 968948737 942147296 809068002 586949078 582714118 996955328 996955328 325207364 156553296 158489424 189488644 189488644 177116692 42877760 159911536 189243940 189243940 315357760 315357760 324149954 324149954 468510366 494979464 516803384 516803384 225052684 225052684 422857150 422857150 657304458 867171699 867171699 553680112 1006633612 1006633612 963653650 963653650 177939620 200876288 200876288 659942320 659942320 741646780 817312613 950083655 950083655 496518688 939525306 1057269234 1057269234 1060413952 1060413952 687346685 920910548 920910548 866363643 933391189 988224078 988224078 969915841 969915841 771313266 258098584 115904936 680605541 691221285 691221285 409204674 658546557 658546557 808734136 943869967 1023201231 1023201231 411846165 250618716 250618716 554304864 554304864 556363777 556363777 547818496 547816530 848195955 848195955 547393906 507959454 707526664 707526664 278921264 278921264 698525685 698525685 388102940 318607953 318607953 265519000 107294728 67316120 67316120 92946178 355929386 363732330 908493884 1015138829 1015138829 734037508 978946019 978946019 751493873 665854193 1007690010 1007690010 258524909 246608672 246608672 182194292 182194292 462163204 462163204 423246370 415546084 450937986 450937986 313771670 404934918 404934918 693215776 693215776 695041637 703106113 703106113 689563297 687417285 160577536 540021312 547492161 959067136 959067136 510189624 510189624 18538438 7476240 35726336 35726336 621276064 845727123 845727123 646571097 646571097 383041138 625881824 626306225 626306225 318257682 291030690 291030690 286278784 103306160 103306160 87564992 203040136 230946100 230946100 195654860 195654860 162345584 314512212 318453714 467021746 467021746 448403286 416026326 416026326 192289138 449987992 449987992 173433384 385122608 447747118 447747118 168189074 205918776 428337286 428337286 175359156 710193681 710193681 309766324 793118849 793118849 509198990 509198990 317354382 281317826 1042419213 1042419213 806734128 806734128 583804266 271851272 305846034 305846034 118639882 537658400 840329244 840329244 671211524 671211524 406970502 406970502 278398530 375636380 948568258 948568258 571085990 868817979 868817979 354419738 859575617 859575617 904540899 904540899 40776928 964507474 964507474 702546405 458892307 424220646 18486816 18486272 660480 5120 0 466518046 466518046 503338326 503338326 522207596 522207596 310427730 603966288 1070044037 1070044037 297408354 297408354 875129570 875129570 313946224 62725106 58769984 58769984 16654656 34552848 112131072 112131072 738537800 738537800 157735332 239648912 739115564 1016496256 1016496256 158305910 183310852 183310852 233097708 467165890 476581084 476581084 453305156 437898422 437898422 391148188 391148188 17035296 405045328 405045328 412877296 566891624 566891624 471020094 1025253904 1025253904 882117195 883714939 917088635 917088635 270615825 688884076 688884076 540127490 490114818 428687145 604572195 696448549 746607172 1004148439 1004148439 713090098 843636984 1032373359 1032373359 961283105 313016386 304137306 286032184 278988344 278988344 142755017 176940188 176940188 578953621 703468677 703468677 210126725 565727145 565727145 763768154 865537644 865537644 284948418 1046231619 1046231619 1042637477 1042637477 726182945 726182945 448055793 21045408 21045408 21037088 17303584 17353728 17353728 17302560 17091584 4245632 92307650 92307650 86032680 86032680 275125546 581522560 811712977 811712977 614925432 938265349 962469543 962469543 907542808 1047709525 1047709525 610472598 545784897 545784897 957485607 957485607 538157591 273022992 306583698 940841901 940841901 933812400 1043775785 1043775785 903365592 903365592 220860736 220860736 545310085 545310085 141222224 690732484 709735625 709735625 626135917 780174841 780174841 617380289 712322452 712322452 467565174 822608746 822608746 764937837 903739318 903739318 461765722 461765722 487783232 487783232 461582454 329345906 380996374 435987480 435987480 415813510 704808096 978054167 978054167 977539328 1049128469 1049128469 917279003 917279003 898536416 898536416 880594827 791740544 795943869 795943869 743286792 468677938 468677938 337925488 148584132 452498239 1035208109 1035208109 1027115850 961830691 961830691 808342404 808342404 309466116 414089688 566124955 866854386 866854386 728304976 728304976 590097216 172297728 162271572 184559568 184559568 26288736 43083056 43083056 28132576 28132576 5638592 6201280 14729378 289456576 289456576 439656330 449336611 879942166 879942166 681201223 756948525 756948525 658513925 658513925 244959968 685650593 685650593 127826388 174377428 305430914 335554820 457506816 457506816 455213996 455213996 990904346 990904346 274731048 274731048 748814408 808052227 1007027311 1007027311 489560838 979945222 979945222 651805641 727804594 727804594 617876431 617876431 440461857 440461857 849127484 891832680 891832680 51315728 51315728 44171584 44171584 39796368 39796368 59520880 59520880 160622160 183965172 433068130 433068130 509939798 509939798 316018000 316018000 103816914 76810824 41943120 585369994 585369994 521437243 504365854 486928142 273492460 78137416 84713472 103709272 103709272 95018585 329483451 806024499 897253658 897253658 997344544 997344544 88220513 42078288 288489888 288489888 273814146 23073570 285280416 285280416 21241890 16777216 16777248 16777248 8421538 281018562 364955656 364955656 350333256 350333256 83140744 348472162 382763623 792772797 792772797 496031099 762364091 1049384891 1049384891 613944368 501620082 929636899 929636899 878577493 878577493 448924438 448924438 597971128 722475500 933255714 933255714 637534233 609355574 609355574 189282227 856687155 856687155 374871348 538969493 958527596 958527596 883300683 694147903 587528193 673015299 673015299 487452000 557110027 557110027 93142720 132880336 132880336 116492680 116492680 881573317 881573317 933896269 933896269 838932522 889641003 889641003 689094711 688996868 172067916 172067916 109341328 43436096 47232080 483811666 483811666 309522902 309522902 79674197 784264329 784264329 268999055 595741201 595741201 796277832 815860933 1048914015 1048914015 1013660961 814099335 814099335 616638620 873533970 873533970 720255830 603338476 553199844 693111700 693111700 464590704 277743810 91308136 100794944 675332485 675332485 748725712 748725712 317318549 949618752 949618752 941497863 223347372 764942220 764942220 753275726 480131458 181115078 556789286 956732455 956732455 805335169 805335169 422098368 820721063 882976065 882976065 740857734 410015629 135467384 42177332 50540592 594400400 594400400 594071169 594071169 562611297 562611297 136340785 701885120 701885120 593507744 593507744 580190944 699599505 699599505 598213088 205653144 278872648 1047640069 1047640069 830040140 675950737 802760266 802760266 492127324 104186736 180895564 180895564 16102400 17618944 140090182 140090182 12561954 212289188 212289188 401085550 478503512 478503512 437570070 389884030 344523100 344523100 304687598 265030908 411764018 760484585 760484585 48203348 200122848 200122848 914834143 914834143 866268837 995733667 995733667 562242849 562242849 8913984 756948368 756948368 809502934 1033683571 1033683571 708676390 1044229494 1044229494 328294960 332417184 332417184 269484546 368584898 368584898 519900926 519900926 461327644 461327644 37769658 322836336 383386072 383386072 255206686 190923682 336708458 336708458 160222308 160222308 160222308 268452929 881509827 881586515 881586515 781644080 732082990 772065309 772065309 1010516118 1060375359 1060375359 900267488 669812224 987122246 987122246 565474160 984666580 984666580 723820966 595801781 978542978 978542978 857343520 857343520 467981874 320522742 167299044 134374980 99210316 219316872 219316872 202441220 168281600 236854812 307029144 448866962 479273550 479273550 513018462 513018462 234955020 666968863 666968863 656567802 883509522 883509522 663009794 647391889 626446361 659748418 659748418 1007267341 1007267341 949044840 513375368 234882076 96816713 220810004 220810004 734790285 734790285 604737596 793714864 793714864 121083916 360111680 470159615 814879299 1045533932 1045533932 418301460 907481532 907481532 868282994 815639600 504742336 504742336 752204512 752204512 775975977 775975977 321355129 667336432 667336432 638059545 637665560 539103489 112210713 10559808 12761104 46524624 378968507 378968507 367423498 195072756 880500690 880500690 388298521 70965000 78448264 555868449 622344769 622344769 619521216 610919817 755196448 755196448 235956877 230042480 230042480 138558440 49624240 49624240 60917808 60917808 277579350 277579350 562692133 699926373 699926373 404758530 933286328 933286328 814094403 811604097 567186612 713345109 713345109 847365212 847365212 683713353 932238971 932238971 662832706 358400512 358400512 344987968 344987968 333317288 333317288 101056522 282086248 397971040 397971040 118822128 118687240 91010448 126225912 126225912 108317520 120198456 120198456 134788684 134788684 35775832 342903024 342903024 307833554 426803478 522470434 522470434 564150293 939892932 939892932 952232007 952232007 942763285 413290757 404750598 538986753 580952597 1033896261 1033896261 939526248 518433154 351103354 290157424 290157424 103310272 8148484 139336836 150674260 150674260 145913152 45892944 64357224 67393536 67393536 35047312 199547964 251289368 251289368 476511384 648338505 648338505 990062668 990062668 993186607 993186607 787666303 744124809 717774934 717774934 575766724 340264074 340264074 242197096 242197096 201252852 198230772 451800066 451800066 343212072 370451096 370451096 402745326 402745326 168014164 512513662 512513662 194512500 162447984 162447984 55700228 55700228 261484280 261484280 193860692 615126569 615126569 71178168 550502689 550502689 600229638 926307741 944841351 944841351 820324803 820324803 651679822 179571540 146824980 571113621 571113621 109491380 78152880 132170232 132170232 66602504 268435779 268435779 74465731 687122369 687122369 604408018 717379839 968948737 968948737 809068002 809068002 586949078 582714118 996955328 996955328 325207364 156789184 158489424 352874138 512608394 512608394 652003603 675756165 675756165 571982484 832577827 832577827 871764104 871764104 831661907 1010385565 1010385565 862184192 862184192 225052684 386348076 389336784 408841760 408841760 303161874 367002090 367002090 264785018 228903276 954976821 954976821 99397070 458566461 710601944 710601944 741646780 817312613 950083655 970082771 970082771 835196748 138905164 511697306 511697306 463596310 518279786 920910548 920910548 866363643 933391189 933391189 455973163 405985290 252673306 258098584 296223030 296223030 294649968 0 0 382805216 382805216 354657303 507681285 943869967 1006801031 1006801031 877271644 751207901 615113060 677380517 677380517 673186053 556363777 67274017 67274017 92684584 547393906 547393906 453116108 707526664 707526664 270532672 273293846 273293846 421841190 421841190 305512001 637945305 637945305 711334293 711334293 595274581 655494347 655494347 430890342 908493884 1015138829 1015138829 144741520 773902528 773902528 751493873 665854193 732178702 939205237 1005058551 1005058551 929041306 929041306 182194292 631009723 1007583334 1007583334 678633956 678633956 450937986 313771670 404934918 404934918 693215776 693215776 695041637 749832512 749832512 630924264 403053954 403053954 552834054 814867011 959067136 959067136 876479650 759181322 960704679 960704679 856313860 587428272 608298010 845727123 845727123 646571097 805389325 805389325 625881824 626306225 626306225 92400074 92400074 175409320 254853948 254853948 236556592 237246932 253813040 253813040 209859328 460403690 460403690 39063760 318246608 318246608 467021746 467021746 448403286 416026326 416026326 327428112 103121088 120885296 120885296 385122608 447747118 447747118 168189074 205918776 205918776 71465112 175359156 710193681 710193681 143840520 793118849 793118849 509198990 509198990 486303246 486303246 1042419213 1042419213 806734128 806734128 583804266 271851272 305846034 305846034 105267776 537658400 538445313 554303492 604925989 604925989 604502025 277404687 278398530 278398530 948568258 948568258 837353490 327290994 327290994 39458448 40899216 40899216 578290338 857872384 857872384 696398272 696398272 694231461 541659493 704251680 742135681 742135681 690007054 690007054 573067935 909510426 909510426 503338326 503338326 226627598 908641563 908641563 805359955 805359955 704786558 597100272 907485051 907485051 313946224 313946224 666986667 936796177 936796177 809046814 625923264 625923264 566369493 844904285 844904285 875668309 875668309 1069701649 1069701649 1016496256 856714882 856714882 595649336 624018898 624018898 467165890 453305156 453305156 437898422 437898422 391148188 391148188 142723532 31983072 200653232 325705985 325705985 371808042 371808042 369881722 889774641 889774641 883714939 917088635 917088635 270615825 688884076 688884076 540127490 490114818 428687145 604572195 696448549 746607172 746607172 713090098 713090098 843636984 1032373359 1032373359 961283105 851200858 866417296 866417296 613244808 613703072 613703072 100872216 100872216 33624072 671636944 671636944 619694821 619694821 218136749 790907928 865537644 865537644 284948418 1046231619 1046231619 1042637477 1042637477 846013632 846013632 594880790 547899398 777603968 777603968 685243077 718569349 718569349 712773525 69464328 607793792 607793792 537957509 136628484 136628484 359773357 581522560 811712977 908641912 908641912 938265349 962469543 962469543 257057888 610477379 610477379 610472598 1040760768 1040760768 957485607 957485607 629227685 671612970 671612970 940841901 940841901 933812400 1043775785 1043775785 903365592 903365592 104062634 109653040 545310085 545310085 141222224 690732484 709735625 709735625 626135917 780174841 780174841 617380289 572707089 742842464 768030957 768030957 760878765 760878765 668692149 424006962 461765722 461765722 380051784 873009177 873009177 882401576 882401576 674173954 415813510 415813510 975575172 975575172 406289047 977539328 977539328 391094272 648355124 648355124 898536416 1036346108 1036346108 538118656 538118656 743286792 743286792 142074396 777110413 777110413 330900402 452498239 1035208109 1035208109 413697216 961830691 961830691 948097670 808342404 309466116 414089688 491940948 866854386 866854386 313925024 313925024 293482928 140902932 162271572 177736368 177736368 59503728 59503728 22126640 39683392 59558992 59558992 35016512 14729378 289456576 289456576 299554530 301486336 879942166 879942166 168973995 126489672 109712472 201852072 201852072 50331696 50331696 197444960 197444960 446824780 446824780 335554820 457506816 457506816 469768246 469768246 640167049 640167049 615715356 756227929 756227929 748814408 1007027311 1007027311 489560838 729209124 1058440061 1058440061 855956247 622854749 622854749 247538414 440461857 440461857 849127484 891832680 891832680 118359480 118359480 96738800 42874064 39796368 44894272 59520880 59520880 28201568 53879478 437895495 437895495 517262046 517262046 265718635 948443146 948443146 908905755 713589019 713295957 960514965 960514965 947981108 832589607 548423048 349743816 89465056 89465056 107481144 114831952 114831952 89663384 897253658 897253658 747243355 747243355 405611076 405611076 351080128 483079374 483079374 739122189 739122189 564004997 557122569 801737997 840747025 903121003 903121003 864544995 822482979 558127106 2545920 365822416 365822416 331140666 329827698 509398686 509398686 308070344 416598150 416598150 842549354 842549354 501620082 673433280 673433280 650201128 650201128 448924438 448924438 597971128 722475500 933255714 933255714 637534233 609355574 609355574 189282227 856687155 856687155 371725107 538969493 958527596 958527596 883300683 694147903 587528193 673015299 673015299 535997320 557110027 557110027 509654402 509654402 962265812 962265812 379162978 881573317 881573317 933896269 933896269 838932522 889641003 889641003 201750583 169421360 172067916 172067916 135316672 62356960 47232080 177192848 177192848 309522902 309522902 79674197 784264329 784264329 268999055 595741201 595741201 988225058 988225058 699869941 819277943 819277943 814099335 852760654 852760654 714354376 720255830 720255830 603338476 553199844 693111700 693111700 464590704 335753338 335753338 323105762 100794944 9441304 0 948963392 948963392 949618752 949618752 941497863 1835527 142886528 403106000 805570563 998717350 998717350 556789286 956732455 956732455 735219622 735219622 718849749 807280131 882976065 882976065 417558957 136197259 362580256 362580256 881760795 881760795 984093460 984093460 637798969 562611297 562611297 592291968 592291968 8398577 593507744 593507744 570241152 575145345 598213088 643133972 643133972 487781630 1047640069 1047640069 830040140 675950737 802760266 802760266 284938296 284938296 256568578 256568578 207553060 208724576 208724576 287450624 287450624 57159684 189478068 306455556 478503512 478503512 437570070 389884030 313314642 518785238 518785238 416024014 411764018 760484585 760484585 48203348 200122848 200122848 914834143 914834143 143753348 555769970 713184535 713184535 562242849 135010820 756948368 756948368 809502934 809502934 528482339 147114180 265371932 265371932 239697988 332417184 332417184 269484546 368584898 368584898 278153056 69496096 86821128 86821128 52693296 121471760 390337792 390337792 255206686 190923682 336708458 497223774 497223774 465600564 325633458 280661126 881509827 881586515 881586515 781644080 732082990 657887131 97436679 1010516118 1010516118 900267488 900267488 669812224 911446923 911446923 565474160 984666580 984666580 723820966 721381842 978542978 978542978 872698169 872698169 606612348 732818805 732818805 675900685 682622277 704089216 704089216 151257604 441671818 441671818 361087692 448866962 479273550 479273550 513018462 513018462 495526786 666968863 666968863 656567802 883509522 883509522 663009794 647391889 626446361 659748418 659748418 1007267341 1007267341 949044840 234882076 234882076 96816713 210248309 210248309 734790285 734790285 259263420 259263420 160510408 324583704 360111680 470159615 814879299 814879299 692191974 358477482 358477482 374882042 374882042 368833466 504742336 504742336 752204512 752204512 775975977 926289388 926289388 853092051 667336432 867564406 986919639 986919639 823153389 809779822 869358211 869358211 637889224 637889224 1049111637 1049111637 849206984 735036048 695893252 695893252 206639952 555868449 622344769 622344769 573342401 700942452 755196448 755196448 551973629 551973629 251021908 623923649 623923649 183554164 158351776 158351776 10486016 144708197 562692133 699926373 699926373 269058052 408160902 408160902 811604097 833275068 833275068 513333897 412285636 713197139 713197139 683713353 932238971 932238971 662832706 96849624 344184962 386145464 386145464 333317288 333317288 101056522 282086248 397971040 397971040 118822128 96171160 127824096 127824096 84042016 84042016 68199968 588317217 588317217 134788684 630203705 630203705 342903024 307833554 426803478 522470434 828703773 828703773 692642610 692642610 610045024 942763285 959783477 959783477 638681660 674548485 750119689 1033896261 1033896261 939526248 5507712 22434992 23849888 23849888 36112704 36112704 10762512 12009536 12009536 11589888 11288768 19576064 19576064 21528576 21546144 21546144 6989056 32456160 371119504 371119504 294359402 469967360 469967360 1018111820 1018111820 1008081423 1021994448 1021994448 443741135 273245461 340264074 340264074 562907883 562907883 256295044 256295044 74990336 852938592 852938592 838864947 828938688 402745326 402745326 168014164 512513662 512513662 194512500 162447984 162447984 55700228 55700228 261484280 261484280 207025101 711579992 711579992 208278924 550502689 550502689 600229638 600229638 518967283 611982984 611982984 736348696 736348696 554832417 50992176 159436032 159436032 109491380 30034256 872206323 893699435 893699435 856736307 812109926 448147658 269517384 180404436 169766020 165974332 165974332 136971336 170053908 310919630 519702456 519702456 379769698 290084768 169420084 169420084 156789184 352874138 512608394 512608394 652003603 675756165 675756165 591855776 832577827 832577827 871764104 871764104 831661907 1010385565 1010385565 862184192 862184192 72753722 423861938 423861938 408841760 408841760 303161874 367002090 367002090 264785018 228903276 954976821 954976821 625500624 1006739907 1006739907 710601944 300627426 346479060 892912143 970082771 970082771 835196748 100669892 511697306 511697306 463596310 310233952 249483400 249483400 656166140 773506841 773506841 134759240 251834960 251834960 146277394 296223030 296223030 294649968 970187504 970187504 382805216 392872135 392872135 675901153 853038601 853038601 877271644 877271644 751207901 754736680 754736680 677380517 673186053 608661696 88080552 630288594 848427674 848427674 648316995 648316995 575408452 575408452 438567462 438567462 817367073 817367073 421841190 576731137 637945305 637945305 711334293 711334293 595274581 655494347 655494347 1012545862 1012545862 855000757 548734067 536944641 1024025266 1024025266 604818441 604818441 732178702 939205237 1005058551 1005058551 929041306 929041306 853331667 631009723 1007583334 1007583334 678633956 678633956 441451140 139461270 15205824 15205824 677675776 677675776 7621125 749832512 770507360 770507360 746401677 403053954 552834054 814867011 814867011 876479650 876479650 759181322 960704679 960704679 856313860 838257536 838257536 559326050 270668034 269009922 805389325 895558059 895558059 821765159 821765159 482875012 213419460 213419460 254853948 254853948 236556592 237246932 253813040 253813040 209859328 460403690 460403690 315623504 318246608 318246608 329130546 329130546 305085714 288180048 420359396 420359396 493554148 493554148 75256960 285245440 285245440 115501346 55941200 55941200 52155760 71465112 71465112 262675872 262675872 143840520 28708992 205523522 481705742 482154766 486303246 486303246 479838030 478661708 214931788 203928640 20334464 71387520 85119528 345297946 345297946 303465033 303465033 554303492 604925989 604925989 604502025 1054839941 1054839941 974270977 974270977 837353490 837353490 566243553 566243553 303381113 291058306 931869819 931869819 857872384 857872384 573645345 573645345 18950272 541659493 704251680 742135681 742135681 690007054 690007054 573067935 909510426 909510426 470947948 470947948 521044532 908641563 908641563 805359955 805359955 900613192 900613192 907485051 907485051 875491481 875491481 666986667 936796177 936796177 820370910 625923264 625923264 637818880 844904285 844904285 875668309 875668309 1069701649 1069701649 557617826 856714882 856714882 595649336 624018898 624018898 424848984 476311950 476311950 324777476 327725078 327725078 142723532 142723532 33603600 412836866 412836866 325705985 371808042 371808042 369881722 889774641 889774641 52219920 33571328 128830288 128830288 87220002 338694922 420456458 420456458 352874496 352874496 153733902 375593884 375593884 432777458 655433728 655433728 730550866 970379512 970379512 852104403 866417296 866417296 860659056 613703072 613703072 213962956 213962956 546936533 546936533 546845088 619694821 619694821 218136749 790907928 820538560 940253571 944766087 944766087 680925765 680925765 611356826 846013632 846013632 594880790 547899398 777603968 777603968 685243077 718569349 718569349 712773525 69464328 607793792 607793792 537957509 226390824 226390824 359773357 359773357 398739178 908641912 908641912 939508091 939508091 391939801 391939801 318428318 475681846 475681846 1040760768 1040760768 997263033 997263033 629227685 890504362 890504362 1012145443 1012145443 258507008 462729020 462729020 423612156 423612156 167470468 167470468 148005988 144909376 160761892 160761892 156392512 167123940 167123940 150339616 137503236 137503236 172444960 742842464 768030957 768030957 760878765 760878765 668692149 855762032 855762032 277677110 475877460 873009177 873009177 882401576 882401576 674173954 410850818 410850818 975575172 975575172 755424425 992362728 992362728 948048180 648355124 950011202 950011202 1036346108 1036346108 538118656 538118656 537344001 397778108 503908496 777110413 777110413 330900402 421290411 421290411 134792196 556533318 956098983 956098983 948097670 944049858 270010757 155342001 583172117 583172117 315038896 709437634 709437634 563949696 135215808 22091440 62010192 62010192 271714130 316723672 358646586 358646586 84460552 318292296 318292296 314622354 43630784 272026115 299554530 301486336 830736640 830736640 657071179 657071179 615464265 747938714 747938714 145752900 1045879424 1055182825 1055182825 765986157 446824780 603113698 857919795 857919795 679778730 967575572 967575572 779485652 739652112 959854163 959854163 648165184 430444902 430444902 537921540 589349169 1058440061 1058440061 1041305982 622854749 622854749 198431268 198431268 293716002 293716002 397165024 397165024 488915134 499318846 499318846 218245472 57509170 67285504 279663640 299194914 299194914 223690082 437895495 437895495 517262046 517262046 265718635 948443146 948443146 956884854 956884854 713295957 960514965 960514965 947981108 832589607 548423048 349743816 89465056 89465056 107481144 114831952 297351034 374551194 604112814 604112814 555951628 555951628 949298720 949298720 833827683 740633162 740633162 1018237572 1038746721 1038746721 823135074 801737997 840747025 903121003 903121003 864544995 822482979 558127106 144839136 425925058 425925058 331140666 330819523 592321713 592321713 498390363 767968655 1065508319 1065508319 842549354 363728672 483182412 483182412 940125417 940125417 407506758 407506758 536875272 858917657 858917657 891306004 959449425 959449425 833882709 278012717 386275386 386275386 250086876 776545040 776545040 437669333 895698368 895698368 646385369 198882235 200228340 535997320 535997320 520999906 509654402 509654402 962265812 962265812 379162978 876657636 876657636 689314341 690098469 690098469 595800177 595800177 169421360 655216426 775160956 775160956 135316672 227470092 227470092 139678808 152654616 152654616 140796168 159917416 159917416 313344 542114370 820776999 911486222 988225058 1014238781 1014238781 548425173 809902210 809902210 852760654 852760654 714354376 846733582 846733582 585901725 573121588 162598692 190881970 332603992 335753338 379670904 379670904 751903211 751903211 908673302 948963392 948963392 940837383 74767841 40675536 137188992 137188992 147368453 805570563 998717350 998717350 430255796 430255796 299237732 735219622 735219622 832098272 832098272 807280131 336069642 336069642 496545861 545276683 545276683 1007696431 1007696431 984093460 984093460 637798969 238291717 741417741 741417741 658813469 608571761 579098624 569313537 569313537 554047521 25957697 643133972 643133972 487781630 487781630 479780890 479780890 173192320 475799536 475799536 284938296 284938296 256568578 256568578 207553060 208724576 208724576 287450624 420537488 424247728 424247728 306455556 306455556 292238754 292238754 520484152 520484152 518785238 518785238 416024014 294535660 165675492 165675492 35526928 140507776 147323076 147323076 135164736 143753348 555769970 713184535 713184535 285775219 135010820 135662596 663762300 872842097 1058880158 1058880158 769510944 780741788 780741788 239697988 111996248 208455052 208455052 74190216 54031992 484381030 484381030 409096156 409096156 364133882 280132426 390337792 390337792 104028842 112857360 185220908 497223774 497223774 465600564 355668938 374507802 374507802 8597568 91719704 91719704 177331096 177331096 82973640 103156432 293098800 293098800 3923714 447923048 911446923 911446923 571999761 625493338 625493338 721381842 721381842 726807172 726807172 872698169 872698169 606612348 732818805 732818805 675900685 682622277 704089216 704089216 494765082 441671818 441671818 361087692 361087692 360763766 251833348 508691656 508691656 495526786 495526786 402326352 402326352 375472752 111151896 111151896 316119266 316119266 345381450 345381450 327660144 327660144 340877920 340877920 621157897 621157897 542552297 625551465 625551465 521684258 521684258 779183302 779183302 324583704 324583704 836428718 836428718 830161340 830161340 733503422 677153981 589096750 374882042 33587888 158429336 241308060 317269366 317269366 131545836 926289388 926289388 853092051 332873459 867564406 986919639 986919639 1027329105 1027329105 869358211 869358211 637889224 876223022 1049111637 1049111637 849206984 775622678 855695379 855695379 341328170 341328170 581469592 604937217 849769219 849769219 700942452 591569121 551973629 551973629 251021908 623923649 623923649 183554164 158351776 158351776 44106068 446177536 446177536 279450886 269058052 269058052 408160902 414796294 1071017188 1071017188 833275068 374851648 374851648 662773668 662773668 539441409 308055312 46798032 46798032 277530288 298980066 386145464 386145464 303372482 76161042 78947856 78947856 77971928 100663376 100663376 100925536 302053626 302053626 113455320 120836658 328962314 588317217 588317217 304796946 630203705 630203705 133280658 132704488 132704488 272840842 828703773 828703773 692642610 692642610 835309248 835309248 959783477 959783477 842115089 842115089 750119689 750119689 548719425 352953530 391646890 391646890 290226584 17081088 36112704 36112704 171066132 171066132 169245524 142820608 188548148 189179724 189179724 94083036 268022600 268022600 249070404 249070404 194836872 194836872 112997148 739459344 1007852609 1018111820 1018111820 1008081423 1021994448 1021994448 443741135 72549632 106029720 189803538 562907883 562907883 257065732 257065732 241172892 852938592 852938592 838864947 828938688 88870640 111602032 235936848 235936848 138547652 135827844 135827844 160581476 160581476 60781312 10583344 100991016 210255876 711579992 711579992 589567028 589567028 193200480 304480656 348394560 348394560 611982984 611982984 736348696 736348696 554832417 50992176 156382336 156382336 128553636 65810888 872206323 893699435 893699435 856736307 812109926 448147658 339518720 339518720 169766020 165974332 165974332 136971336 170053908 170053908 98046452 76317568 154168176 156377824 169420084 173155140 173155140 168572932 168572932 43924100 307671640 307671640 591855776 591855776 549548049 33554448 80748914 393290682 477176762 477176762 447283948 185074740 142738630 138435690 424247501 755838055 755838055 789424050 789424050 642022054 874250347 874250347 710880458 710880458 705130906 705130906 1006739907 1006739907 283902459 182716884 247205256 247205256 87957288 149291032 242364068 242364068 120536376 53551920 169411876 169411876 249483400 249483400 656166140 773506841 773506841 505654566 505654566 598798103 598798103 839786062 839786062 948161395 970187504 970187504 834618480 834618480 392872135 675901153 853038601 853038601 261616576 737222648 737222648 754736680 754736680 548386913 608661696 608661696 88080552 630288594 848427674 848427674 648316995 648316995 575408452 575408452 438567462 438567462 817367073 817367073 301500864 576731137 576731137 170274176 92132184 92132184 67022560 67022560 339873930 1012545862 1012545862 948836663 948836663 536944641 1024025266 1024025266 1008354850 755159085 1007866383 1007866383 333574527 427787416 427787416 853331667 853331667 546606298 211145296 332914850 332914850 806759703 806759703 644949522 518005006 348643658 348643658 1011488077 1011488077 829888522 948813451 948813451 746401677 681145481 681145481 561592069 608040877 755651688 755651688 163994308 163994308 555907201 555907201 838257536 838257536 816532914 600307953 386306257 369307674 895558059 895558059 891421322 891421322 482875012 213419460 213419460 97641192 139526424 242295684 242295684 141173308 141173308 61985616 154280744 320394024 343259866 343259866 341953866 99327330 482392144 482392144 475589922 420359396 420359396 493554148 493554148 75256960 94374816 115501346 115501346 55941200 55941200 115679640 115679640 108079168 24241056 22289056 28708992 79823682 79823682 337822090 337822090 78811330 71877064 282285312 282285312 273801858 80832450 335686018 364187864 364187864 345297946 345297946 889621658 889621658 762479535 762479535 276455855 942392648 1054839941 1054839941 974270977 974270977 717755607 707495379 566243553 566243553 508167230 813213736 931869819 931869819 832155483 816177264 346823050 346823050 18950272 19212576 689189120 689189120 539626117 90901024 338735250 484103084 484103084 394708096 394708096 400430376 521044532 805323808 805323808 766152726 766152726 900613192 900613192 373888480 608925056 875491481 875491481 63513840 673925574 820370910 820370910 352448703 379658330 637818880 637818880 247766136 429357624 571975178 571975178 890522672 890522672 269807129 83036704 72659248 344309804 428157030 490358886 490469166 490469166 437646854 437646854 514697258 514697258 76293398 33603600 412836866 412836866 303055207 288933440 336274490 336274490 825778801 825778801 571121208 571121208 28578137 35064160 87220002 338694922 420456458 420456458 805851744 832231011 832231011 722469429 722469429 432777458 512775334 534638334 657461536 970379512 970379512 852104403 852104403 860659056 860659056 395257617 209760793 274282114 314173634 546936533 546936533 327677890 327677890 265685005 265685005 509356495 820538560 940253571 944766087 944766087 680925765 680925765 446469193 318002546 318002546 40553314 297205920 305347008 508821346 508821346 426900990 329010388 20498208 20480000 574464 96745158 136007046 226390824 226390824 95093826 113724576 327520824 327520824 71987258 939508091 939508091 391939801 596805691 596805691 475681846 475681846 1040720208 1040720208 997263033 997263033 472458510 890504362 890504362 1012145443 1057625151 1057625151 757540252 757540252 311032916 311032916 538234761 538234761 148005988 144909376 681912645 682504845 682504845 676467720 167123940 150339616 570595056 570595056 540017409 744195218 1048543135 1048543135 928125627 928125627 201789694 855762032 855762032 401794240 475877460 475877460 955225256 955225256 365374144 366127436 410850818 487248942 487248942 755424425 755424425 992362728 992362728 948048180 938210811 950011202 989733153 989733153 745043718 745043718 272936544 397778108 397778108 503908496 503908496 216524820 267305612 623693097 704712365 1005645485 1005645485 956098983 956098983 944049858 944049858 830085536 947114655 947114655 818975239 365105899 709437634 709437634 563949696 135215808 46211280 62010192 62010192 271714130 316723672 358646586 358646586 84460552 318292296 318292296 314622354 268909384 272026115 280419138 280419138 353518787 571019306 657071179 657071179 615464265 747938714 747938714 145752900 1045879424 1055182825 1055182825 765986157 119032149 603113698 857919795 857919795 679778730 967575572 967575572 779485652 958013488 974861847 974861847 327496545 220599046 414193956 537921540 589349169 589349169 1041305982 1041305982 817930758 723607745 723607745 829858491 829858491 685034181 685034181 572342408 608436473 822481339 822481339 816123919 88875221 481577104 655588098 685645509 747103880 747103880 414780050 1060208316 1060208316 225084628 225084628 457232498 457232498 956884854 956884854 431504854 431504854 809585312 809585312 19922944 20980304 55117444 151586540 151586540 95494956 154838816 297351034 605135976 866776769 866776769 878839790 878839790 953691136 953691136 833827683 740633162 740633162 1018237572 1038746721 1038746721 823135074 504958668 419696164 419696164 407174230 278790022 278790022 17131872 144839136 425925058 527826050 527826050 330819523 592321713 592321713 504103150 767968655 1065508319 1065508319 363728672 363728672 403717697 404685588 940125417 940125417 283257910 59245680 536875272 858917657 858917657 891306004 959449425 959449425 833882709 807739583 807739583 822084880 822084880 776545040 776545040 652876249 895698368 895698368 646385369 940555841 940555841 221701848 680841465 680841465 469834320 511074832 523305537 523305537 551294259 551294259 427954278 688046336 690098469 690098469 595800177 595800177 293609754 655216426 775160956 848603456 848603456 435636027 660110277 692700265 692700265 627113988 403267824 533424741 540267169 540267169 585157212 820776999 911486222 911486222 1014238781 1014238781 868213689 688459754 604802182 909312178 909312178 671814218 846733582 962080035 962080035 864564374 990160772 990160772 329679856 329679856 379670904 379670904 751903211 751903211 908673302 908673302 627460585 627460585 451473908 451473908 681199232 681199232 945251856 978037267 978037267 855373779 855373779 688903411 675208965 285972512 187894580 832098272 872942858 872942858 539232513 538184449 496545861 545276683 545276683 1007696431 1007696431 119463480 554881024 558129548 795109805 795109805 741417741 708980773 708980773 604428297 642403353 642403353 7789192 571249936 571249936 335931592 335931592 169420308 847891050 882219763 882219763 786637480 786637480 133665198 285828048 285828048 65028258 21130528 135915396 135915396 271942658 420537488 424247728 424247728 291504546 235189516 235189516 186960180 520484152 520484152 240723612 240723612 172360836 143338472 55957448 55957448 35526928 45403712 45403712 402880131 711272853 711272853 709243365 709243365 600054897 805891361 805891361 548943443 663762300 872842097 1058880158 1058880158 769510944 780741788 780741788 99476040 99476040 198976572 198976572 71828616 66972680 484381030 484381030 409096156 409096156 364133882 280132426 346230338 372268686 372268686 159310404 338654439 959409507 959409507 889273650 889273650 383795227 383795227 873464010 873464010 872602638 317179529 317179529 719385112 719385112 697226401 977297030 977297030 825235440 825235440 571999761 571999761 625493338 625493338 545327970 545327970 726807172 726807172 569586657 290009410 279127202 289745058 289745058 479216736 483427010 483427010 494765082 494765082 407244956 407244956 324894336 360763766 360763766 374684972 446300160 446300160 447218362 447218362 402326352 402326352 313005656 67652512 101139386 316119266 316119266 345381450 345381450 327660144 327660144 340877920 340877920 621157897 621157897 542552297 625551465 625551465 521684258 521684258 779183302 779183302 694290769 694290769 929612357 929612357 830161340 830161340 920772936 920772936 820052924 297919490 327213186 327213186 306216976 241308060 78778844 540116544 540116544 975824151 975824151 465756487 473989656 954856017 954856017 1027329105 1027329105 485243894 304115344 392616378 876223022 876223022 827121411 671917357 994244540 994244540 855695379 341328170 416059410 581469592 604937217 849769219 849769219 317380050 322070608 322070608 40371120 63031760 63031760 48819632 38076752 38076752 52437072 282265088 446177536 996808247 996808247 558471155 510330689 294810780 1071686627 1071686627 1071017188 1061116296 1061116296 374851648 662773668 676890309 676890309 138603393 23683488 36226304 283205376 298980066 298980066 45567986 39141600 93251816 93251816 78947856 77971928 107354864 107354864 107354520 302053626 302053626 113455320 120836658 328962314 328962314 304796946 304796946 71457024 133280658 133280658 132704488 132704488 272840842 1004823828 1004823828 835579107 884226221 884226221 835309248 692984997 692984997 842115089 842115089 581788933 720421845 720421845 633612088 714352144 714352144 548498528 49072480 34674752 34674752 171066132 171066132 169245524 142820608 188548148 189179724 189179724 188893184 268022600 268022600 249070404 421580926 453624068 453624068 338699826 739459344 1007852609 1007852609 458193796 651309690 651309690 343487859 135959872 72549632 106029720 138629660 138629660 144148532 257065732 363004618 363004618 166987576 285360482 285360482 120849968 88870640 143717734 235936848 235936848 250123266 250123266 163115588 163115588 160581476 60781312 59859552 100991016 210255876 715580156 728242829 728242829 779765361 779765361 304480656 642884248 892726059 892726059 764537195 755097645 447185789 404101638 145905734 817948524 817948524 615062027 461645195 692584150 794872189 794872189 476553144 476553144 344547864 344547864 339518720 45097960 269665008 370196730 370196730 346462306 346462306 84836612 84836612 433469552 433469552 324551806 405275910 405275910 439025926 439025926 307988698 911088795 911088795 752788099 854330577 854330577 541329682 546117050 929247675 1069626587 1069626587 1012977735 1012977735 794916158 524736702 524736702 755838055 755838055 789424050 789424050 857768081 874250347 874250347 710880458 818276547 818276547 705130906 647563207 831918680 850673011 850673011 681770386 809898227 1015418319 1046484164 1046484164 987000340 987000340 810998403 811353631 1041371679 1041371679 33167328 644193795 644193795 1007043776 1007043776 992017890 992017890 598798103 839786062 839786062 948161395 948161395 806090339 834618480 834618480 593455089 593455089 809687703 809687703 742540436 756023853 756023853 770213061 770213061 673521701 210969544 210969544 67582920 621871872 621871872 540017512 349194538 116885856 351548146 351548146 292678074 292678074 277087008 301500864 301500864 58237184 126033016 126033016 128393256 128393256 125698112 125698112 298269383 910628690 910628690 948836663 948836663 1000640729 1000640729 1008354850 1008354850 755159085 1007866383 1007866383 333574527 675350032 1054813269 1054813269 376956633 376956633 217444944 332914850 332914850 806759703 806759703 644949522 747783045 747783045 687378058 1011488077 1011488077 829888522 948813451 948813451 836859107 767801315 683051401 561592069 608040877 755651688 755651688 287331202 218898222 101143272 101143272 68617864 816532914 816532914 600307953 386306257 369307674 469967108 469967108 891421322 891421322 362547820 362547820 425949392 425949392 254878524 242295684 242295684 43001440 61985616 107357408 315725306 320394024 343259866 343259866 341953866 176757262 482392144 482392144 475589922 318771406 318771406 264376572 496975470 496975470 220604226 27464672 381761674 381761674 71655536 115679640 115679640 295018920 295018920 282329912 80908440 79823682 79823682 337822090 337822090 335566144 71877064 282285312 282285312 273801858 80832450 335686018 364187864 364187864 325658034 72401544 889621658 889621658 762479535 762479535 276455855 942392648 1011130496 1011130496 973095059 973095059 707495379 707495379 511060894 511060894 508167230 813213736 826019619 826019619 558039403 99349793 690364784 690364784 154545352 803018548 803018548 689189120 539626117 239545528 534337444 534337444 484103084 394708096 394708096 400430376 400430376 361242905 302434339 766152726 766152726 588326642 872442776 872442776 859537593 877815561 877815561 827929776 827929776 237242652 245694596 344312080 379658330 379658330 336178594 533130482 533130482 571975178 571975178 890522672 890522672 598811906 543866232 810508074 932226394 932226394 490358886 490469166 490469166 437646854 437646854 514697258 514697258 469246756 469246756 137036450 303055207 303055207 288933440 336274490 336274490 825778801 825778801 571121208 571121208 34726416 35064160 43492176 43492176 108451656 689292320 805851744 832231011 832231011 722469429 722469429 689266816 302043312 302043312 657461536 657461536 638718489 75448200 105934120 117624888 117624888 100252880 55857538 274282114 314173634 314173634 437412436 437412436 327677890 265685005 265685005 509356495 509356495 657154527 657154527 574855317 1072189821 1072189821 694041488 821151140 821151140 818454820 838976470 838976470 234340624 234340624 197839532 228691244 228691244 240693036 240693036 207449244 163604204 212576544 212576544 269900872 345984032 387727088 387727088 364978410 274895872 432414102 692854110 993459026 993459026 593369984 923192641 1040720208 1040720208 487589127 204530130 208194100 208194100 17041184 723522826 1057625151 1057625151 757540252 757540252 514364646 514364646 538234761 732723392 732723392 688778277 681912645 682504845 682504845 676467720 210111117 684442289 684442289 657567785 610407169 744195218 1048543135 1048543135 928125627 928125627 746717785 746717785 703340850 401794240 376624026 620824699 955225256 955225256 1028675336 1028675336 406595236 487248942 487248942 750382159 750382159 228907276 653201516 938210811 938210811 775497501 1040778714 1040778714 745043718 745043718 265290492 265290492 42485484 217440196 217440196 216524820 216524820 623693097 704712365 1005645485 1005645485 726959230 455389270 447753415 830085536 830085536 947114655 947114655 818975239 365105899 63441328 63441328 59443456 46211280 50775040 51515952 60940912 60940912 28647840 48357840 56722832 65537520 65537520 11535168 26214688 268909384 268909384 210174180 210174180 492049160 492049160 286708480 286708480 271766274 84411504 84411504 127926648 127926648 71828976 53003280 336068896 371245338 610435338 643961241 643961241 132329976 132329976 1058017692 1058017692 958013488 974861847 974861847 786308829 1016732375 1016732375 907300928 649238596 752542735 1006641226 1006641226 864076722 723607745 723607745 829858491 829858491 685034181 685034181 572342408 608436473 822481339 822481339 816123919 88875221 481577104 655588098 685645509 747103880 1017073108 1017073108 1060208316 1060208316 503442661 304458189 959731420 959731420 812782467 1043157080 1043157080 1040614877 1002237994 1065452392 1065452392 714368700 411404312 151586540 151586540 179085600 179085600 155283584 605135976 866776769 866776769 1013580844 1013580844 953691136 953691136 552221827 958333217 958333217 607651593 2621961 257954030 504958668 504958668 297487798 425523830 425523830 411189700 424150182 429917632 429917632 97319734 527826050 527826050 298004706 508349598 508349598 504103150 118538818 117737740 345508904 345508904 294260646 189796742 173015700 165100260 340461080 437271126 437271126 303084067 121010791 330351474 330351474 998843433 998843433 1061758143 1061758143 807739583 822084880 822084880 785722908 652876249 652876249 540771339 426606063 177858242 940555841 940555841 135271064 680841465 680841465 469834320 511074832 523305537 523305537 551294259 551294259 427954278 673462650 673462650 637607961 470860302 470860302 401703040 401703040 531669051 848603456 848603456 565381888 660110277 692700265 692700265 627113988 403267824 533424741 540267169 540267169 585157212 604504269 604504269 740670936 869305418 869305418 868213689 688459754 561193096 909312178 909312178 386411030 386411030 962080035 962080035 864564374 990160772 990160772 941000416 941000416 554764370 554764370 546835556 280012064 186212902 460343222 460343222 285946914 451473908 451473908 681199232 681199232 948971156 983322835 983322835 855373779 855373779 688903411 675208965 574475526 574475526 543997505 872942858 872942858 539232513 538184449 817806952 817806952 354468138 562317104 1062286075 1062286075 688144640 688144640 795109805 795109805 644037053 742508997 742508997 616704009 642403353 642403353 560600481 571249936 571249936 335931592 335931592 277021766 847891050 882219763 882219763 786637480 786637480 423478232 388341874 285828048 69465696 134795758 275643822 354697486 492915072 492915072 405349558 186062596 286864514 393680958 393680958 186960180 264889596 516077798 516077798 240193036 244197648 244197648 31589536 31589536 25988960 25988960 109081408 402880131 711272853 711272853 709243365 709243365 600054897 805891361 805891361 548943443 548406081 241968025 202713612 202713612 262483324 262483324 131649364 98107944 97553992 198976572 198976572 71828616 66972680 254657884 254657884 109730376 260384412 383173282 383173282 609318033 627609527 627609527 659079371 659079371 959409507 959409507 889273650 889273650 537123852 537123852 1069845632 1069845632 990417135 317179529 317179529 719385112 719385112 697226401 977297030 977297030 825235440 825235440 345708299 443215396 528359358 528359358 447244032 441965681 576149905 576149905 290009410 788324018 788324018 684731077 1019572035 1019572035 954320199 703071360 703071360 525324 358433827 609610377 626897545 626897545 366917179 374684972 428083302 474030492 474030492 740453376 740453376 577763200 802751648 802751648 666331168 185388464 111863376 649012681 649012681 726928053 755707052 755707052 724226489 724226489 96469224 183295484 183295484 323106848 323106848 310851666 178722896 577149888 694290769 852186596 929612357 929612357 454071702 454071702 920772936 920772936 820052924 308905746 327213186 327213186 306216976 452072050 452072050 540116544 540116544 975824151 975824151 465756487 424334502 954856017 954856017 458596836 747537993 747537993 304115344 392616378 611414275 611414275 810209972 810209972 994244540 994244540 738439349 504155166 771774673 771774673 378227736 918137857 918137857 249025302 48952016 763453901 763453901 115708272 646889797 646889797 151070724 165750784 165750784 282265088 436281971 996808247 996808247 558471155 510330689 402688414 1071686627 1071686627 1022944364 1061116296 1061116296 908906555 908906555 795604101 843917376 843917376 828730739 868542488 868542488 633375465 541046368 272378178 377793626 377793626 93251816 272768192 313133616 313133616 107354864 107354520 127155112 369157152 369157152 360228538 631434 842056065 842056065 322781336 930172259 930172259 115207896 115207896 307914736 307914736 1004823828 1004823828 835579107 884226221 884226221 268962768 245631324 245631324 1056262208 1056262208 818202819 720421845 720421845 868950190 868950190 714352144 548498528 375703952 109470424 109470424 51853872 105185968 105185968 72424224 152053264 185148468 247141608 247141608 188893184 196683636 196683636 421580926 453624068 540050995 540050995 268944454 967472421 967472421 876111743 651309690 651309690 747361720 747361720 853267142 853267142 852542163 586200184 429209620 429209620 365543528 365543528 10670400 285360482 285360482 113382752 47383152 143717734 143717734 98750952 250123266 250123266 163115588 163115588 52806992 157090704 157090704 73942064 255553257 715580156 728242829 769841136 779765361 779765361 939540480 939540480 892726059 1051334488 1051334488 755097645 591446193 868271281 868795635 868795635 817948524 615797024 461645195 692584150 794872189 794872189 476553144 476553144 344547864 344547864 276374104 215572036 269665008 370196730 396496914 396496914 346462306 176523366 189055684 433469552 433469552 324551806 405275910 405275910 439025926 439025926 307988698 911088795 911088795 752788099 854330577 854330577 541329682 546117050 929247675 1069626587 1069626587 1012977735 1012977735 794916158 524736702 524736702 508349598 508349598 411568938 848611923 857768081 857768081 699585381 974580340 974580340 818276547 835274285 835274285 831918680 850673011 850673011 681770386 809898227 1015418319 1046484164 1046484164 987000340 987000340 810998403 811353631 1041371679 1041371679 122438724 691265912 691265912 1007043776 1007043776 992017890 992017890 775172740 775172740 584712341 928042524 928042524 826967561 826967561 539646208 593455089 593455089 809687703 809687703 742540436 756023853 756023853 770213061 770213061 673521701 166792097 91465856 74778728 621871872 621871872 540017512 94710856 48284576 98032464 114475512 114475512 98478712 98478712 59381776 50388576 55186608 58329328 58329328 128393256 128393256 125698112 125698112 580005620 726874301 726874301 966969874 966969874 1000640729 1000640729 943872500 943872500 698104579 698104579 536925696 962682113 962682113 1054813269 1054813269 105666368 217444944 217444944 182661588 6489044 6291840 6291840 4194816 747783045 747783045 687378058 687378058 403735045 687456960 824476143 836859107 836859107 767801315 683051401 544427524 471990948 275330858 287331202 291768450 291768450 638326345 638326345 392837704 826162848 826162848 637952433 637952433 667455659 667455659 644076633 839234230 839234230 362547820 362547820 425949392 425949392 258642328 258642328 267674628 267674628 226935844 213357760 315725306 557960737 557960737 854797504 854797504 238392708 456395254 456395254 200541988 1064350840 1064350840 553795381 717886677 962545776 962545776 407210580 407210580 381761674 77924680 73507264 45113784 295018920 295018920 282329912 80908440 21843968 7866048 12373824 335566144 335566144 10630538 7029760 7029760 541696 541696 73548544 114295576 114295576 275046800 275046800 338166706 338166706 352867368 539542594 539542594 103408920 1011130496 1011130496 673354113 673354113 547565829 467297925 139469750 73728 285286568 807667744 824181027 824181027 558039403 105212256 690364784 690364784 782094352 803018548 822083619 822084899 824706339 824706339 534337444 534337444 396274250 316183848 316183848 354518016 361242905 361242905 302434339 612669473 612669473 322155010 872442776 872442776 859537593 877815561 877815561 827929776 827929776 397071738 1064331005 1064331005 1000680618 1000680618 490853745 533130482 533130482 739815189 739815189 441042884 598811906 598811906 543866232 810508074 932226394 932226394 474367080 474367080 336743694 160464996 160464996 151638132 434746276 469246756 469246756 213104042 282284424 282284424 31500194 24150560 24150560 324024073 929772987 929772987 904270778 904270778 294277297 790824934 950274930 950274930 700558060 766890703 957275531 1027655875 1027655875 1002537159 861234343 302043312 302043312 289837266 506923826 923942896 923942896 917243219 813551363 813551363 384795481 43473728 148713156 184227972 184227972 437412436 437412436 66690070 190000324 190000324 323315808 387252757 657154527 657154527 574855317 1072189821 1072189821 694041488 821151140 821151140 818454820 838976470 838976470 517208830 517208830 462870382 329801532 228691244 240693036 240693036 207449244 163604204 212576544 212576544 269900872 345984032 387727088 387727088 364978410 274895872 432414102 692854110 993459026 993459026 593369984 923192641 923192641 670145159 234899480 122733240 240174500 558416672 721995671 721995671 508613283 544875049 544875049 522381220 514364646 514364646 206596276 732723392 732723392 688778277 199352820 264635336 264635336 193860797 210111117 684442289 684442289 657567785 610407169 620344962 761089424 761089424 139897597 149946885 746717785 746717785 703340850 288326772 143054916 620824699 734464532 797026921 1028675336 1028675336 406595236 406595236 336527878 204521644 204521644 558246194 558246194 319148177 339279895 775497501 1040778714 1040778714 4799832 261013888 265290492 265290492 42485484 217440196 217440196 191168552 191168552 119365828 131528440 512025860 512025860 455389270 455389270 447753415 626741898 626741898 891822504 891822504 810099843 349190651 23469698 63643936 63643936 2899568 50775040 51515952 279039872 317515744 317515744 274825816 200904464 237899544 455905624 455905624 446878038 336883460 414528038 434577988 434577988 492049160 492049160 335815464 335815464 455460742 455460742 240142545 240142545 593852827 593852827 390205482 1028802802 1028802802 610435338 643961241 834943417 834943417 901848504 1058017692 1058017692 865211536 865211536 826283105 826283105 1016732375 1016732375 907300928 823313169 752542735 959074741 959074741 864076722 443669730 443669730 179921422 470886166 650151445 780665061 780665061 486803502 486803502 382019802 382019802 72665736 1040361688 1040361688 178430051 252919841 1017073108 1017073108 847410685 847410685 503442661 315731254 959731420 959731420 812782467 1043157080 1043157080 1040614877 1002237994 1065452392 1065452392 714368700 411404312 25698892 786432 179085600 179085600 423656626 668111130 812896869 812896869 1013580844 1013580844 901790123 673513703 552221827 958333217 958333217 607651593 347355528 940193126 940193126 297487798 424733156 468763638 468763638 411189700 424150182 429917632 429917632 217049468 217049468 169921856 13272880 31979440 331878280 397675386 397675386 401266650 401266650 395237234 373049376 373049376 372769074 165100260 340461080 437271126 437271126 303084067 121010791 330351474 330351474 998843433 998843433 1061758143 1061758143 180627163 55839408 785722908 785722908 229717469 101885248 412189396 412189396 177858242 111751064 80798280 80863944 81290240 381698256 381698256 49613508 180772060 237626652 890606553 890606553 220754766 563520240 789812021 789812021 676130895 676130895 610572506 862053252 862053252 253010183 565381888 565381888 23661397 62962128 209822252 209822252 249302748 249302748 196185020 254583732 254583732 307142470 368847090 740670936 740670936 831681077 831681077 840986981 840986981 518382179 1053045502 1053045502 919630788 919630788 808389827 808389827 461950662 714388644 941000416 941000416 554764370 554764370 546835556 280012064 186212902 164287156 164287156 31675264 139630564 139630564 685294720 685294720 948971156 983322835 983322835 169016403 443915714 443915714 409943430 574475526 574475526 543997505 577376576 577376576 18824992 20609057 817806952 817806952 556484353 562317104 1062286075 1062286075 688144640 688144640 610670985 623008025 623008025 742508997 742508997 616704009 587710513 560600481 560600481 158337584 169290264 206844544 277021766 277021766 105926920 528924750 528924750 466921242 466921242 423478232 388341874 269814512 208548104 151949728 275643822 354697486 492915072 492915072 405349558 191303870 701606193 701606193 409086338 852693891 852693891 516077798 516077798 240193036 546329650 826410552 826410552 907286488 907286488 595558200 337295168 410673292 410673292 309535874 310427938 328914546 573383680 573383680 37695248 112537104 583997466 583997466 304044331 435942972 534107572 534107572 486632976 98107944 93135888 131083840 131083840 51162424 41010432 74345280 109730376 109730376 79839280 383173282 383173282 609318033 627609527 627609527 659079371 771047478 771047478 719788565 719788565 235629412 537123852 881204776 1069845632 1069845632 990417135 934603820 336041361 155849892 155736576 193149104 193149104 185458004 182776720 345708299 345708299 443215396 528359358 836387328 836387328 441965681 576149905 576149905 148956901 788324018 788324018 684731077 1019572035 1019572035 954320199 703071360 703071360 374211714 373557402 609610377 626897545 626897545 366917179 366917179 476389480 476389480 474030492 740453376 740453376 577763200 802751648 802751648 666331168 185388464 582077289 649012681 649012681 726928053 755707052 755707052 724226489 724226489 96469224 490360675 490360675 839260720 839260720 310851666 204698136 568642017 693540225 852186596 852186596 445678325 924927400 924927400 883454843 276334208 308905746 308905746 50595888 162671040 415248592 951850881 951850881 607298830 607298830 885207243 885207243 353522141 904899797 904899797 640391069 864223477 973582880 973582880 1032995933 1032995933 937204136 1034551621 1034551621 810209972 575058565 438692118 975654562 975654562 946414983 906201177 906201177 922706034 922706034 931411840 931411840 763453901 763453901 115708272 646889797 646889797 151070724 165750784 307439488 307439488 49610114 49610114 140299652 428056705 428056705 402688414 402688414 1022944364 1022944364 966986935 967084471 967084471 908906555 795604101 843917376 843917376 828730739 868542488 868542488 633375465 541046368 272378178 377793626 377793626 314558384 314558384 313133616 313133616 20971680 20971680 24118176 369157152 369157152 360228538 34450048 842056065 842056065 390408456 930172259 930172259 323642290 337676160 908248346 908248346 340288907 814339657 814339657 360885379 621293111 621293111 245631324 245631324 1056262208 1056262208 818202819 384410013 513879514 868950190 868950190 379605136 379605136 375703952 125864136 109470424 51853872 105185968 105185968 72424224 196047108 196047108 247141608 247141608 163003896 196683636 196683636 141645172 439943716 540050995 540050995 87557928 967472421 967472421 876111743 322129972 524087935 747361720 747361720 853267142 853267142 852542163 661925952 429209620 429209620 389888024 389888024 309938210 283238850 66061762 47457232 47457232 127434784 127434784 16826400 174608384 174608384 40570068 172136756 172136756 157090704 157090704 73942064 255553257 255553257 213827700 769841136 769841136 176425044 939540480 939540480 117759328 1051334488 1051334488 557875216 591446193 868271281 868795635 868795635 615797024 615797024 704153384 1073740172 1073740172 627886326 829474592 829474592 250835672 178440560 215572036 215572036 248562396 248562396 396496914 396496914 176523366 307232784 307232784 397941344 397941344 181585342 180201796 179184944 179184944 193033264 193033264 76962584 84154592 84154592 313744688 325715720 325715720 394822456 394822456 346145832 346145832 172496084 196100604 407508088 407508088 373312516 1073083269 1073083269 411568938 848611923 956434504 956434504 699585381 974580340 974580340 477429898 835274285 835274285 403743711 212922734 385982489 948993319 998561863 998561863 927389883 984288311 984288311 875296011 875296011 369678858 369678858 264554748 145302852 691265912 691265912 100857894 189216948 389995138 389995138 775172740 775172740 584712341 286262274 537006144 826967561 826967561 539646208 539646208 596664976 596664976 315826419 64525520 64525520 43065936 209825992 209825992 31877604 91465856 91465856 74778728 85338336 85338336 94710856 94710856 34479712 98032464 114475512 114475512 98478712 98478712 76022336 76022336 29892704 42562656 55309488 55309488 52613424 52613424 42546507 580005620 726874301 726874301 966969874 966969874 299868608 299868608 832612358 949696071 949696071 698104579 536925696 962682113 962682113 661573251 816413294 882715089 882715089 922069723 922069723 839188503 852566739 852566739 780219074 653484552 111408525 209892612 371739864 371739864 283429314 444021654 444021654 283762260 177102352 177102352 420558468 420558468 270818054 484257486 484257486 335691460 638326345 638326345 392837704 826162848 826162848 637952433 637952433 667455659 667455659 644076633 839234230 839234230 490807470 167150600 42543560 150549792 258642328 258642328 267674628 593148957 593148957 213357760 577746129 577746129 557960737 854797504 854797504 238392708 454167522 454167522 200541988 1064350840 1064350840 553795381 717886677 962545776 962545776 407210580 407210580 77924680 96858528 96858528 346397064 346397064 69347522 54196384 23341200 75203394 75203394 83208648 83208648 348385600 348385600 271201666 270074178 270074178 74235080 268584066 359367424 359367424 343554088 275046800 128634690 303710834 876744843 876744843 836821454 1021362663 1021362663 765665452 946545927 946545927 759419811 456361195 391318618 192679860 325921410 590244160 590244160 545742193 355388490 352692345 923986059 923986059 996459791 996459791 822083619 822084899 824706339 824706339 781132728 773593461 570669872 570669872 316183848 191114964 132877632 93381208 34726416 34726416 170996134 322155010 322155010 151345588 65612736 78193992 553678096 616104699 616104699 397071738 1064331005 1064331005 1000680618 1000680618 490853745 257467003 257467003 739815189 739815189 401658163 666178089 666178089 122633400 86916992 730990026 894503147 894503147 1032582918 1032582918 110113866 110113866 95466060 434746276 434746276 81815404 213104042 282284424 649594529 837128640 837128640 836798864 836798864 929772987 929772987 904270778 904270778 294277297 790824934 950274930 950274930 700558060 766890703 957275531 1027655875 1027655875 1002537159 861234343 269382275 185461265 689835541 706352661 923942896 923942896 917243219 813551363 813551363 644299161 608982944 305796882 316545362 316545362 321202482 321202482 60743280 190000324 190000324 158085034 158085034 53815614 466050178 466050178 413799434 229806996 540411304 690753400 690753400 702547928 702547928 555805648 517208830 517208830 462870382 329801532 713116865 713116865 710528408 787654988 787654988 213373732 213373732 141466080 287783202 317143442 317143442 396824872 396824872 23730512 492713400 492713400 450574038 456395574 456395574 670145159 670145159 911845567 911845567 240174500 558416672 721995671 806405664 806405664 673931776 673931776 538568193 977212017 977212017 733062774 640753744 757861677 757861677 602979913 602979913 543050416 188095284 82843900 795167960 795167960 778908673 705897545 705897545 761089424 761089424 139897597 81169144 81169144 84897352 288326772 514952958 514952958 514443136 335662822 357269182 357269182 72122512 403250096 429602268 856433722 856433722 244464111 558246194 558246194 513810655 1052836190 1052836190 920254227 920254227 347982816 384671503 561827511 847106125 847106125 383783680 944842887 944842887 503644830 546702915 546702915 375200910 34153488 102825144 653527168 653527168 551674305 83395449 891822504 891822504 810099843 349190651 23469698 63643936 63643936 42102352 42102352 10617360 305331776 317515744 317515744 313527696 200904464 237899544 455905624 455905624 446878038 336883460 414528038 434577988 434577988 380313558 380313558 335815464 335815464 455460742 455460742 248381792 248381792 593852827 593852827 390205482 1028802802 1028802802 302193567 723258672 834943417 834943417 901848504 919210306 919210306 865211536 865211536 941098109 941098109 705708292 705708292 823313169 823313169 722092662 694915828 696829376 696829376 249092828 246560924 188614256 265961724 650151445 780665061 780665061 486803502 486803502 382019802 382019802 72665736 1040361688 1040361688 457981598 457981598 444798176 444798176 193553758 288407846 315731254 315731254 371496164 460510134 467204070 467204070 464213968 266032988 231492844 144769616 222881292 222881292 211353696 252192264 252192264 114107944 652991356 728777573 728777573 812896869 812896869 884618841 884618841 884423533 884423533 714022919 762192364 762192364 513353310 513353310 940193126 940193126 534295146 534295146 468763638 468763638 263800062 173573088 97712936 145449312 217049468 217049468 169921856 11502880 35313728 331878280 397675386 397675386 401266650 401266650 395237234 373049376 373049376 372769074 128858130 312029802 312029802 119810152 119810152 606101504 606101504 799015232 799015232 796917885 437129340 462698121 901984491 901984491 711068688 711068688 581711804 827656354 827656354 642777753 205771276 205771276 316870976 468431282 468431282 377577552 384393946 384393946 355120400 355120400 890606553 890606553 307021922 563520240 789812021 789812021 676130895 884360056 884360056 862053252 874292528 874292528 848874944 552970344 678579813 1034106869 1034106869 915215134 410345584 470055464 470055464 254583732 254583732 647632473 995771309 995771309 786666199 831681077 1011310757 1011310757 930568972 930568972 1053045502 1053045502 919630788 919630788 852442323 1041189563 1041189563 525119069 382828110 277082178 277435392 277435392 301876512 301876512 368884170 368884170 309375648 309375648 288387488 288387488 685294720 685294720 694882368 703595493 970655237 970655237 843281153 977322135 977322135 41869200 316754560 316754560 536932609 536932609 18824992 20609057 554780704 559859817 559859817 556484353 539836952 248331416 644439516 644439516 759498929 759498929 625367229 112622817 46787536 46787536 93210184 93210184 122540456 122540456 71768200 118493736 118493736 105926920 105926920 231099008 231099008 247673456 518182502 518182502 209634396 275384810 275384810 151949728 35256688 190121012 337716608 403754500 403754500 223140002 701606193 701606193 409086338 852693891 852693891 119875896 579284992 579284992 546329650 826410552 826410552 907286488 907286488 595558200 337295168 410673292 995672213 995672213 949950023 976168967 976168967 853858658 855112659 920648595 920648595 978173641 978173641 545597505 545597505 534107572 675298910 874039814 874039814 162360244 296832672 296832672 294962562 294962562 241819654 349266512 420503620 420503620 130207992 71979560 85103752 85103752 357076528 771047478 771047478 719788565 719788565 649398216 649398216 974949306 974949306 870225997 934603820 934603820 697126037 642956560 642956560 591335780 193149104 185458004 182776720 145864272 146487108 452530568 470422542 836387328 836387328 290807840 172230804 172230804 138596484 180400260 180400260 37863492 6151872 479401678 479401678 298915520 374211714 374211714 373557402 210242774 17324032 17324032 233085484 531386360 531386360 476389480 361812592 547523592 547523592 480035380 34603904 125894656 125894656 31925545 582077289 582077289 113387497 715060836 715060836 262833497 187178289 187178289 537135105 537135105 672610940 873675305 873675305 276871267 619733140 754000845 754000845 693540225 685246149 445678325 924927400 924927400 883454843 832049073 832049073 576792003 576792003 162671040 415248592 951850881 951850881 607298830 612544584 885207243 885328746 885328746 904899797 904899797 640391069 864223477 973582880 973582880 1032995933 1032995933 937204136 1034551621 1034551621 575058565 575058565 438692118 975654562 975654562 946414983 906201177 906201177 922706034 922706034 931411840 931411840 321252544 24454720 26078304 26078304 19468080 52438256 52438256 319956544 319956544 66664002 314466304 314466304 428056705 428056705 274158115 61342070 61342070 545396352 545396352 967084471 967084471 841044208 841044208 822743280 822743280 12768531 4875280 4194432 37913984 40803600 73924736 73924736 69731592 314558384 314558384 41185296 74611816 119851320 119851320 335618058 335618058 319542138 319542138 301602786 301602786 310068434 390408456 390408456 325058994 323642290 337676160 908248346 908248346 340288907 814339657 814339657 371583258 621293111 713374335 713374335 508707094 508707094 419455488 620308946 620308946 610271625 1046229520 1046229520 622330488 622330488 125864136 125864136 42146304 42146304 43290624 52487536 52487536 196047108 196047108 146611180 163003896 210274736 210274736 207988732 443032866 443032866 473544248 473544248 437858082 495191072 495191072 503058414 503058414 467405818 544277548 544277548 767636965 767636965 661925952 661925952 108108024 108108024 389888024 389888024 309938210 283238850 66061762 94741320 128057732 494491630 494491630 513823756 513823756 356681028 40570068 172136756 172136756 56651808 165718192 165718192 40030608 110079432 111074904 111074904 135676416 167907348 571083908 571083908 540548752 549718209 549718209 321802081 296815904 592631028 592631028 53117265 552209088 552209088 704153384 1073740172 1073740172 627886326 829474592 829474592 267149172 267149172 184959076 184959076 76158024 262280552 262280552 243404892 142968948 307232784 307232784 338171904 338171904 403182858 405275910 405275910 335680780 193033264 193033264 83572680 206373076 206373076 313744688 325715720 581249361 855996467 855996467 581433681 346145832 296224098 911157378 933368187 933368187 578818346 1073083269 1073083269 312966012 630340467 1021335681 1021335681 1054085643 1054085643 204863646 272693268 403825158 870425286 870425286 814839573 270677829 948993319 998561863 998561863 927389883 984288311 984288311 875296011 875296011 889511849 889511849 664849981 683548485 683548485 698756093 698756093 690193876 563517192 563517192 139761825 120457252 286262274 704766484 704766484 600551085 772869193 772869193 720788201 720788201 788292168 788292168 180038496 180038496 683238545 683238545 160029984 272988514 272988514 268748802 72716352 9711754 28052832 284103586 299122432 333093618 333093618 319838224 63971712 34160848 60395560 76022336 76022336 35535888 35535888 93680160 93680160 94894440 94894440 130964336 623480388 623480388 604973180 851222312 851222312 1000996485 1000996485 999477879 949696071 949696071 667391923 86173448 426668468 661573251 661573251 816413294 882715089 882715089 991020178 991020178 839188503 852566739 852566739 780219074 739984642 541645312 671149184 671149184 371739864 1006520486 1006520486 765769495 405873609 914465311 914465311 647618636 539789420 635178093 687874944 687874944 335691460 359452074 359452074 70552840 291505888 291505888 375391480 375391480 371200008 321556668 459982088 459982088 490807470 490807470 306747650 472264928 472264928 257024700 243176756 168110100 593148957 593148957 61396528 577746129 647706952 930352059 930352059 426686812 426686812 368259954 182291126 977593216 977593216 202639360 196743544 412751430 449558868 449558868 268822530 351414594 351414594 290584864 290584864 379695368 380198938 380198938 304542744 4233488 75203394 75203394 83208648 278108800 348385600 348385600 342921736 342921736 270074178 74235080 268584066 359367424 359367424 401504442 401504442 130671864 130671864 876744843 876744843 874714538 1021362663 1021362663 765665452 946545927 946545927 949905274 949905274 431685857 192679860 794058897 872079890 872079890 545742193 561563331 561563331 923986059 923986059 996459791 996459791 572624270 404037924 404037924 781132728 781132728 773593461 570669872 570669872 191114964 191114964 132877632 93381208 15662400 53177248 306021760 313281634 313281634 65612736 65612736 78193992 400835810 400835810 419692592 419692592 388270530 388270530 287327392 287327392 375396652 457578678 870489452 870489452 663313552 560204193 666178089 666178089 122633400 86916992 730990026 894503147 894503147 1032582918 1032582918 144389700 144389700 46280900 43652688 38974720 41543568 41543568 16806912 649594529 837128640 837128640 836798864 836798864 364142667 54749696 54749696 22205088 26924640 32932224 279725398 279725398 491296842 750821414 750821414 956972226 1008480207 1008480207 730146933 386353821 185461265 689835541 706352661 805408812 885277339 885277339 697473957 697473957 644299161 608982944 564218661 943556934 943556934 580581697 558756434 297657284 202376752 103138316 288467978 288467978 418963104 466050178 466050178 233832696 229806996 540411304 690753400 690753400 702547928 702547928 555805648 86180852 86180852 114506952 114506952 713116865 713116865 710528408 787654988 787654988 213373732 213373732 141466080 287783202 317143442 317143442 396824872 396824872 53005408 492713400 492713400 470553258 470553258 448504280 448504280 440821892 911845567 911845567 21554208 23643776 191938582 806405664 806405664 673931776 673931776 538568193 977212017 977212017 733062774 640753744 757861677 757861677 602979913 602979913 636544381 636544381 249582485 795167960 795167960 778908673 705897545 705897545 961027706 961027706 1070015033 1070015033 81169144 84897352 207365176 514952958 514952958 521216574 522248960 522248960 986975238 986975238 809599618 1002512631 1002512631 856433722 638916669 700827926 700827926 631706058 1052836190 1052836190 920254227 920254227 513921072 384671503 561827511 847106125 847106125 383783680 944842887 944842887 503644830 546702915 984691714 984691714 774448413 740881049 653527168 653527168 854691185 854691185 848306705 144450306 406206070 406206070 941560326 941560326 830473296 188175936 137648160 185714688 305331776 305331776 313527696 313527696 156026276 156026276 446825716 446825716 413188422 272730458 172474376 172474376 302817939 1048311179 1048311179 983502055 994203615 994203615 694614297 694614297 248381792 664783829 664783829 450968910 450968910 755178400 755178400 723258672 955006212 955006212 452538982 670509946 670509946 856429088 860622003 941098109 941098109 618401481 300434964 864076418 864076418 967323970 967323970 462985013 225436200 246560924 246560924 188614256 100736844 136152708 201925644 201925644 151520292 612892933 612892933 749130592 993155409 993155409 429289200 457981598 1012675792 1012675792 797444282 397613600 363930330 391887274 391887274 165163308 165163308 83572680 62914976 266032988 266032988 266338592 266338592 247464156 222881292 201924628 252192264 252192264 221915001 652991356 992298770 992298770 990460820 863084784 884618841 884618841 884423533 884423533 714022919 714022919 314647180 513353310 513353310 485585716 485585716 534295146 534295146 387073726 239652044 275367144 487138350 487138350 432599460 228725100 27911520 27911520 11502880 35313728 35313728 25301088 85462288 114295032 114295032 51389776 51389776 82718464 82718464 60696664 81824224 81824224 59592448 390169073 606101504 1059654546 1059654546 799015232 796917885 696256672 462698121 901984491 901984491 711068688 746128732 746128732 827656354 827656354 642777753 205771276 205771276 316870976 468431282 468431282 377577552 384393946 384393946 355120400 355120400 294440034 268852482 307021922 307021922 287190736 287190736 317052184 884360056 884360056 611546616 874292528 874292528 848874944 316059863 678579813 1034106869 1034106869 915215134 410345584 470055464 679981604 703624048 703624048 647632473 995771309 995771309 786666199 516419915 1011310757 1011310757 930568972 930568972 860303009 860303009 791720482 907053216 907053216 1041189563 1041189563 747432500 747432500 714720320 537185904 633112364 633112364 301876512 368884170 368884170 309375648 309375648 288387488 288387488 141707072 141707072 694882368 703595493 970655237 970655237 843281153 977322135 977322135 149471366 414175216 415002562 415002562 269209632 269209632 20602144 22699041 559859817 559859817 156276333 4491368 75659301 109785424 784409801 784409801 759498929 625367229 578256921 596237696 596237696 555271713 550951617 550951617 106315865 19523432 8402944 11608896 15645152 31874496 155287552 155287552 155238564 518182502 518182502 209634396 275384810 275384810 231315936 231315936 190121012 237739192 403754500 403754500 223140002 86478337 555078488 670039545 670039545 129178176 119875896 579284992 579284992 538257921 75573888 81005256 81005256 15728768 220230780 253768084 253768084 995672213 995672213 949950023 976168967 976168967 853858658 855112659 920648595 920648595 978173641 978173641 545597505 545597505 1069957830 1069957830 874039814 874039814 162360244 296832672 296832672 294962562 294962562 241819654 391650424 420503620 420503620 387633842 541590657 926216843 926216843 574170393 881800962 881800962 76139688 910783587 910783587 649398216 974949306 974949306 755899437 96218692 697126037 697126037 642956560 642956560 591335780 34222624 40908160 128135544 169554192 170078484 452530568 470422542 470422542 290807840 290807840 172230804 172230804 138596484 180400260 568662384 574828689 574828689 301466944 301466944 46796832 220860452 220860452 403182863 539103497 976355329 976355329 429486643 531386360 531386360 294555908 361812592 387898938 563499313 563499313 786165264 786165264 593538584 241895360 607261472 607261472 110352384 715060836 715060836 599938760 599938760 545427200 537135105 537135105 672610940 873675305 873675305 403269050 619733140 754000845 957638048 959314055 959314055 917627721 917627721 791700478 769340192 832049073 832049073 576792003 576792003 194302072 515970208 515970208 21635294 0 612544584 612544584 885328746 885328746 825724565 426512132 426512132 290720418 290502180 153091620 25691232 43271442 305190930 305190930 321962802 321962802 119062544 85460520 42149968 42149968 42270792 100872216 110102648 126104128 126104128 35442192 185475392 185475392 24454720 24454720 50856052 192947492 192947492 153101552 319956544 319956544 305136802 314466304 314466304 275847056 290460642 290460642 268435458 806367810 806367810 815993620 1003029733 1003029733 841044208 912813209 912813209 851444992 851444992 839232952 916459001 916459001 552110274 293814706 274904338 274904338 308414768 308414768 293081920 293081920 119851320 119851320 335618058 335618058 319542138 319542138 309710736 301602786 471839888 471839888 442058002 442058002 440063766 460395956 824911394 824911394 587949995 392317232 392317232 508856522 508856522 713374335 713374335 508707094 508707094 419455488 620308946 620308946 610271625 1046229520 1046229520 622330488 622330488 622235674 622235674 549769322 130312896 43290624 623107331 623107331 552463809 548258147 564602649 580004017 580004017 210274736 207988732 604143625 637763894 637763894 943455795 943455795 708686594 708686594 503058414 503058414 472565427 809534867 809534867 542824617 772016157 772016157 450227145 377927660 377927660 980554647 982229595 982229595 912835995 585865760 659028153 659028153 557504288 494491630 513823756 513823756 356681028 15283666 188743760 188743760 138412164 165718192 165718192 205742537 215849409 687607512 687607512 739034629 739034629 819617905 819617905 784672022 549718209 723783813 952961700 952961700 592631028 831563362 831563362 816540675 552209088 569395046 615514953 615514953 251727837 239627023 648314343 692345389 692345389 656468172 439123236 413271352 262280552 371331354 371331354 335812930 279380084 279380084 134760722 158949252 403182858 405275910 405275910 335680780 463288412 463288412 775330573 775330573 722758113 612626505 175455913 581249361 855996467 855996467 581433681 539321152 296224098 911157378 933368187 933368187 578818346 411174023 411174023 116085775 278804312 1021335681 1021335681 1054085643 1054085643 406302785 1058807774 1058807774 870425286 870425286 867238599 164660756 17941600 17941600 12697696 29409504 29409504 979518924 979518924 316831125 889511849 889511849 664849981 683548485 683548485 698756093 698756093 690193876 563517192 563517192 139761825 120457252 764589626 764589626 704766484 600551085 772869193 772869193 720788201 720788201 788292168 788292168 722653749 722469429 722469429 683238545 139001280 272988514 272988514 268748802 365166912 365166912 214238250 284103586 299122432 333093618 392173544 392173544 308319520 332924658 332924658 313656816 93065008 35535888 35535888 93680160 93680160 95820648 95820648 130964336 623480388 623480388 604973180 851222312 851222312 1000996485 1000996485 999477879 836452852 667391923 667391923 100786200 426668468 575739825 575739825 788587264 788587264 340337802 991020178 991020178 403702315 275252608 269553664 739984642 739984642 541645312 671149184 671149184 1055145259 1055145259 1006520486 765769495 850429061 914465311 914465311 647618636 881704966 881704966 687874944 687874944 292344712 359452074 390904312 390904312 348091426 336035338 375391480 375391480 371200008 327860798 459982088 459982088 441861580 405437860 405437860 472264928 472264928 257024700 243176756 168110100 160839744 34352176 34352176 105172018 647706952 930352059 930352059 854115778 426686812 368259954 182291126 977593216 977593216 937476603 604906693 716053845 716053845 648305670 264264316 351414594 351414594 290584864 290584864 379695368 380198938 380198938 304542744 14833088 15372736 15372736 13896384 278108800 278108800 76272840 342921736 342921736 13243584 74835648 74835648 80912968 80912968 401504442 401504442 338739978 338739978 912860571 912860571 938541187 938541187 383082059 615650121 615650121 497751588 949905274 949905274 431685857 65875440 794058897 872079890 872079890 277365282 561563331 898420070 898420070 430754923 299969732 299969732 288623394 404037924 404037924 315623120 315623120 24399344 23778720 65438736 65438736 102406208 102406208 110007826 311567562 311567562 306021760 313281634 313281634 41049554 48539216 48539216 556030544 925468456 925468456 419692592 574590624 784600029 784600029 380652469 699433543 699433543 870489452 870489452 541067552 560204193 560204193 142157700 142157700 141633156 204482850 204482850 182714922 523241732 523241732 487004284 487004284 92745752 281749152 440967200 440967200 486219832 486219832 619844866 619844866 599273730 566615810 875037155 875696907 896710539 897316267 897316267 288431145 759678116 942340654 942340654 491296842 750821414 750821414 765533526 1008480207 1008480207 814942832 814942832 961399458 961399458 37299984 738632124 885277339 885277339 806693379 697473957 577606632 564218661 564218661 943556934 943556934 580581697 558756434 297657284 202376752 103138316 288467978 288467978 418963104 418963104 233832696 233832696 143968624 66899504 89654660 165675492 569809120 569809120 189963201 100729516 408592 207163032 207163032 134743044 472487062 944834954 944834954 895672349 341775811 894522368 894522368 268436033 876949504 877009035 877009035 805987735 805987735 497716257 161434304 470553258 610403388 707920667 711005769 711005769 869219571 869219571 310865011 8431762 0 990455046 990455046 589300017 688144648 688144648 371787885 699928336 699928336 18684480 607487528 621569169 621569169 609328945 636544381 636544381 249582485 135094560 135094560 177305312 177305312 654312619 961027706 961027706 1070015033 1070015033 961522817 961522817 431355233 359204714 359204714 521216574 522248960 522248960 986975238 986975238 809599618 1002512631 1002512631 638916669 638916669 700827926 924967837 924967837 631706058 759169197 759169197 731237034 530684884 571226022 571226022 549927105 549927105 786604259 786604259 144377110 312360534 448477201 1015717953 1015717953 1059553751 1059553751 709026858 585944529 854691185 854691185 848306705 815540496 448989508 448989508 941560326 941560326 830473296 188175936 137648160 185714688 185714688 62020880 293263712 300865250 300865250 155837604 155837604 155780228 272730458 272730458 219154832 140539907 302817939 1048311179 1048311179 983502055 994203615 994203615 694614297 694614297 252521532 808654518 808654518 989014981 989014981 755178400 808470584 808470584 955006212 955006212 452538982 670509946 670509946 659295827 244320788 985924119 985924119 300434964 300434964 864076418 864076418 967323970 967323970 771934956 771934956 230822180 230822180 134441736 416066722 763761197 763761197 947922944 1016094727 1016094727 814865007 814865007 993155409 993155409 295875779 952589152 1012675792 1012675792 797444282 397613600 363930330 391887274 391887274 145437120 300117188 300117188 179643256 179643256 165075684 266338592 266338592 247464156 153093452 172548388 172548388 62662448 221915001 243828111 992298770 992298770 990460820 863084784 609029531 609029531 420616611 671232529 904003842 904003842 621286627 613037269 1051792816 1051792816 485585716 100663272 364685082 364685082 239652044 275367144 487138350 487138350 432599460 228725100 397241522 397241522 330114162 111004256 311999282 313733970 335297696 335297696 114295032 51389776 51389776 68991600 68991600 60247560 36088560 36088560 64574744 390169073 390169073 1059654546 1059654546 726144604 714145816 941236293 941236293 352530474 545333390 700657893 746128732 979378395 979378395 566337968 734561525 734561525 684221345 684221345 452551570 808429565 808429565 106959872 67262216 326218256 326218256 46876480 12104912 42991680 42991680 43800320 46270304 58333104 58333104 359016232 359016232 252807068 252807068 267356204 267356204 218165856 848450091 848450091 503581304 503581304 220636314 679981604 703624048 703624048 779042205 779042205 488711596 488711596 340286624 743764500 743764500 655442726 732247721 860303009 860303009 791720482 907053216 907053216 603981456 603981456 747432500 747432500 714720320 537185904 633112364 633112364 86970936 85595688 63578864 23193800 19073552 93623488 93623488 605880448 605880448 569361024 569361024 557194017 188847697 149810628 172878996 445427888 445427888 455343636 455343636 415002562 269209632 269209632 20602144 20602144 18919360 766214564 766214564 589332953 589332953 109785424 784409801 784409801 612512004 578887761 578256921 605926904 605926904 583871697 578943041 591241105 591241105 540960048 173618076 173618076 102185496 73576552 248121408 248121408 241747356 263552980 263552980 314962824 314962824 95361064 231315936 682680943 834210058 834210058 675589505 688575525 688575525 556832516 693305645 693305645 670039545 622033898 342534274 342534274 348194882 583414730 583414730 552194522 868864992 868864992 680382180 475507228 253768084 122750768 521831708 780935426 795277409 795277409 708572465 708572465 282521483 218892644 223880814 475137698 475137698 478492740 1069957830 1069957830 524652661 153619898 153619898 363604480 368051178 368051178 364136682 96699392 391650424 391650424 387633842 387633842 541590657 926216843 926216843 574170393 881800962 881800962 567610548 910783587 910783587 184591105 762252544 762252544 623660205 53003568 121144344 121144344 96080896 96080896 84018288 36177168 40908160 40908160 951525835 951525835 737623029 634438377 634438377 438982352 438982352 946976887 946976887 941664407 941664407 625013554 574828689 574828689 301466944 301466944 100794600 100794600 96473112 403182863 539103497 976355329 976355329 429486643 429486643 272286080 272286080 6346498 2113536 563499313 563499313 786165264 786165264 593538584 241895360 607261472 641788648 641788648 638205704 638205704 599938760 599938760 545427200 69386597 81307276 230662738 386524218 386524218 403269050 660435956 683358021 1034858533 1034858533 959314055 1066426962 1066426962 791700478 769340192 769340192 118765309 126012020 352939586 352939586 515970208 946601991 946601991 422103424 614776142 772378925 772378925 920211930 920211930 1006139619 1006139619 290720418 290502180 153091620 25691232 26215936 112363776 112363776 1003643666 1003643666 492715709 492715709 944734138 944734138 676853959 103332365 183867604 909056164 1032582255 1032582255 750200882 191392256 166461924 166461924 155714724 192947492 192947492 153101552 153101552 305136802 305136802 280110656 280110656 275847056 290460642 290460642 268435458 806367810 806367810 840643138 1003029733 1003029733 855880256 912813209 912813209 851444992 851444992 839232952 916459001 916459001 552110274 293814706 274904338 274904338 308414768 308414768 293081920 293081920 44910432 105928320 105928320 71751816 71751816 309710736 498237478 498237478 471839888 471839888 442058002 442058002 440063766 671331368 824911394 824911394 689607230 689607230 324558359 508856522 508856522 487686152 411148532 332399346 332399346 291015234 269821706 382045396 382045396 407369936 407369936 373560024 373560024 622235674 622235674 549769322 130312896 59254784 623107331 623107331 552463809 548258147 564602649 580004017 580004017 250225292 202424844 604143625 637763894 637763894 943455795 943455795 708686594 708686594 701220244 701220244 472565427 809534867 809534867 683823149 772016157 772016157 679625517 377927660 377927660 980554647 982229595 982229595 912835995 585865760 659028153 659028153 557504288 379445064 310413616 329253234 329253234 169993318 188743760 188743760 161744164 161482752 161482752 205742537 215849409 687607512 698142309 763334756 822617024 819617905 819617905 784672022 190576308 723783813 952961700 952961700 290884231 831563362 831563362 816540675 627126739 661135810 991605577 991605577 119172646 287122186 648314343 692345389 692345389 656468172 439123236 413271352 251794812 371331354 371331354 335812930 296459796 279380084 134760722 158949252 158949252 135167812 153093754 441977694 463288412 463288412 775330573 775330573 722758113 675422272 675422272 203546892 597740044 597740044 597027441 948703078 948703078 555096128 555096128 463542288 463542288 411174023 411174023 186646836 278804312 673746958 673746958 544213963 406302785 406302785 1058807774 1058807774 696779877 867238599 867238599 716387157 995315989 1002680471 1002680471 874561803 874561803 979518924 979518924 800246058 800246058 373443518 232567416 250541756 250541756 285838820 307095838 482555190 482555190 911640766 911640766 907690043 764589626 764589626 408680070 408680070 709322821 709322821 589520084 617742781 617742781 722653749 722653749 722469429 722469429 630740592 76459136 76459136 142680132 352363008 365166912 365166912 214238250 215744704 215744704 91276200 392173544 392173544 308319520 332924658 332924658 313656816 151788578 24629672 24629672 27324672 83939584 95820648 95820648 33689792 59790440 127829560 127829560 111690816 111690816 176297810 176297810 129974104 129974104 768390907 768390907 246144102 359584160 719699129 719699129 788587264 788587264 561918369 561918369 611061545 611061545 86302472 6484352 70978824 70978824 438381440 573182982 637934993 1055145259 1055145259 848873043 848873043 850429061 850429061 283793346 346155074 881704966 881704966 682173765 203972673 381774896 381774896 390904312 390904312 348091426 336035338 312002128 367526316 439914718 439914718 438736376 441861580 441861580 405437860 405437860 170431260 170431260 56887600 56887600 213051500 575767857 575767857 34352176 538830962 538830962 44201123 854115778 854115778 807663112 481133644 1006845991 1006845991 937476603 937476603 922165143 922165143 776333469 748568272 101262360 113585304 113585304 348406784 348406784 542198785 542198785 39485184 543300497 543300497 70852482 342570378 343529546 343529546 816889603 884942728 884942728 619373771 617760192 214992064 214992064 137810952 49519184 49519184 271635402 338739978 338739978 912860571 912860571 938541187 938541187 383082059 615650121 615650121 33628176 75749716 207664820 207664820 140107540 140107540 106844208 600737352 600737352 331798873 1030015499 1030966532 1030966532 417315502 804674549 804674549 963848482 963848482 661741569 728954257 739677329 739677329 640683824 103460144 103460144 102406208 110007826 311567562 311567562 284517474 110414424 289660504 289660504 54735024 273419394 564534690 925468456 925468456 353994154 1006722874 1036252143 1036252143 530108159 761303753 761303753 504400576 236949756 388783512 529361936 529361936 948299847 948299847 650938447 583871697 606470144 618011337 928809328 928809328 487004284 487004284 92745752 281749152 440967200 440967200 486219832 486219832 786591361 786591361 674682000 674682000 875037155 875696907 896710539 897316267 897316267 654336185 759678116 942340654 942340654 540209280 540209280 514330864 664928626 675418532 675418532 814942832 814942832 961399458 961399458 592233148 1007862926 1007862926 807109281 806693379 577606632 577606632 99773841 39030784 276848784 277873218 278057282 278057282 214132224 257611416 257611416 337335616 449912890 449912890 109498900 123865496 143968624 143968624 229687732 229687732 186910789 678337568 678337568 554063872 135451164 102893336 211822408 216923464 216923464 472487062 944834954 944834954 895672349 341775811 894522368 894522368 809252482 876949504 877009035 877009035 805987735 805987735 497716257 808236344 900326763 900326763 707920667 711005769 711005769 869219571 869219571 331366465 863027347 909149073 1009853981 1009853981 589300017 688144648 688144648 371787885 699928336 699928336 69312288 607487528 621569169 621569169 609328945 168853508 168853508 64012704 189842676 216693828 234472104 234472104 214748364 965133756 965133756 909547483 649849050 961522817 961522817 807702820 359204714 377800528 377800528 991446627 991446627 653888707 957835135 957835135 523639614 523639614 357710742 623026448 623026448 924967837 924967837 424673958 224118130 612963633 612963633 530684884 571226022 571226022 549927105 549927105 786604259 786604259 906117915 906117915 605567838 1015717953 1015717953 1059553751 1059553751 709026858 572048913 572048913 588842611 815540496 975513676 975513676 723976359 426194148 415240272 415240272 67108872 81920 16814336 19032064 19032064 293263712 300865250 300865250 155837604 155837604 452178764 452178764 313150370 219154832 107223748 235931776 235931776 79822848 79822848 0 67108864 112478484 179052904 252521532 808654518 808654518 989014981 989014981 965812803 965812803 808470584 543951504 320476722 395969962 395969962 659295827 659295827 244320788 985924119 985924119 178918740 166236160 134255252 553373973 671674976 727847409 771934956 771934956 230822180 323650044 323650044 416066722 763761197 763761197 947922944 1016094727 1016094727 814865007 814865007 444660312 617963886 617963886 952589152 952589152 120033768 120033768 86192424 286923376 286923376 302584344 302584344 300117188 300117188 194107872 194107872 169005588 209863852 209863852 198706932 153093452 172548388 172548388 62662448 151723728 151723728 593408724 700220642 837900327 837900327 329088950 320215602 152566308 444811856 904003842 904003842 621286627 613037269 1051792816 1051792816 354971552 524552750 524552750 502915440 189533364 189533364 83363784 410220162 410220162 281584922 397241522 397241522 330114162 111004256 311999282 313733970 335297696 369243722 369243722 87449920 87449920 85621032 68991600 127411872 365407762 365407762 345263562 805424976 849200979 849200979 726144604 726144604 600977596 941236293 941236293 600912024 545333390 700657893 700657893 979378395 1032437065 1032437065 1034513554 1034513554 684221345 684221345 452551570 808429565 808429565 211885552 322691762 322691762 330962944 330962944 284171682 298448946 298448946 294666344 355896152 355896152 277229616 283095176 283095176 52194192 52194192 174414336 174414336 23554272 260352880 260352880 503581304 503581304 537290592 537290592 692299540 692299540 779042205 779042205 704949904 704949904 354066091 793101476 793101476 655442726 732247721 732247721 685272853 153157942 622611484 723009596 723009596 503366684 503366684 189679292 92018524 119862784 119862784 102956104 86970936 85595688 63578864 23193800 19073552 93623488 93623488 605880448 605880448 569361024 569361024 557194017 349777610 281979682 281979682 445427888 873304106 873304106 805570563 615652170 52609090 17900032 19498272 19498272 544353033 766214564 766214564 589332953 589332953 771760128 771760128 613681944 613681944 783690348 783690348 605926904 605926904 583871697 578943041 591241105 591241105 540960048 173618076 173618076 102185496 73576552 248121408 248121408 241747356 263552980 472332558 472332558 314962824 95146756 95146756 682680943 834210058 834210058 675589505 688575525 688575525 620443113 693305645 693305645 682832257 682832257 675490260 852465728 906689683 906689683 583414730 552194522 868864992 868864992 680382180 511660622 511660622 601065859 601065859 780935426 795277409 795277409 758310610 758310610 987562768 987562768 223880814 723607621 742506928 742506928 724254608 1004482053 1004482053 841948018 173477538 363604480 368051178 368051178 364136682 82905160 42829152 83987546 448282788 448282788 299769570 299769570 77145672 101827664 101827664 92480016 567610548 709798901 709798901 184591105 762252544 762252544 623660205 201989008 21546144 67768976 67768976 41420312 40445328 40445328 42672920 42672920 951525835 951525835 737623029 634438377 634438377 438982352 438982352 946976887 946976887 941664407 941664407 929637389 1002051447 1054396543 1054396543 975836999 1023411112 1023411112 149967676 503042074 503042074 223556260 150546372 150546372 147956676 310497760 310497760 297510498 330300786 330300786 311424448 49090176 62239992 112782584 112782584 116649344 641788648 641788648 638205704 638205704 70377760 75571616 75571616 678565760 678565760 672013317 151094820 18735656 68545032 660435956 683358021 1034858533 1034858533 310427730 1066426962 1066426962 889892472 889892472 325446066 325446066 1057756291 1057756291 352939586 337160248 946601991 946601991 422103424 614776142 772378925 772378925 920211930 920211930 1006139619 1006139619 176658033 705686711 960504391 960504391 483934911 846751340 846751340 1003643666 1003643666 964624308 964624308 944734138 944734138 751497932 754340165 754340165 909056164 1032582255 1032582255 750200882 191392256 166461924 177247232 185287236 193003780 193003780 167846992 167846992 25756996 39395472 45626368 45626368 179926305 301142498 301142498 274735936 568340896 593634881 840643138 840643138 855880256 855880256 844801792 297750432 297750432 65243008 65243008 326918320 326918320 51083200 33369136 17057824 53392656 53392656 63444112 63444112 85334568 129293272 129293272 122735824 99788736 71751816 284140132 498237478 715326109 715326109 320491274 320491274 128291531 128291531 671331368 788652093 788652093 890384553 890384553 544933284 320207664 528556158 528556158 323679436 51648512 285477584 285477584 35163216 107440208 107440208 76675848 128659328 128659328 359975850 897238344 897238344 42468432 59520024 101387376 101387376 46735680 275299716 275299716 259107840 259107840 250225292 250225292 202424844 67240752 67240752 51392520 218764332 907350316 907350316 227743144 701220244 701220244 199991798 54665540 49284656 683823149 776487740 776487740 679625517 184733748 130451660 30079040 38798992 38798992 37913872 37913872 6629760 6629760 3474304 147678676 310413616 329253234 329253234 169993318 147453056 161744164 161744164 161482752 161482752 39948680 101111832 776248032 776248032 763334756 822617024 0 0 9438020 136315140 677406564 690537568 690537568 595591281 595591281 584510129 580911313 857416024 857416024 991605577 991605577 926723964 926723964 491918176 491918176 347473884 347473884 218536784 66578912 161006192 198865264 198865264 296459796 296459796 237933092 237933092 121514540 143596340 143596340 185921792 441977694 441977694 313006068 313006068 523797356 523797356 837154992 837154992 203546892 597740044 735725629 735725629 948703078 948703078 555096128 631805282 631805282 553783336 224465160 224465160 560423302 956749863 956749863 414121601 863776356 863776356 461246131 177720338 138289478 457509794 691916433 691916433 716387157 995315989 1002680471 1002680471 874561803 874561803 446841105 560904678 800246058 800246058 165959480 149081864 149081864 219004736 219004736 92681408 92681408 480368816 911640766 994637538 994637538 677000376 677000376 781959908 781959908 684852969 720158809 720158809 704924877 59789808 176821332 236602964 236602964 235455516 159383648 92344582 421732842 488670114 488670114 353493546 353493546 19253408 196238352 196238352 91276200 501398424 501398424 318593478 172906594 286133284 286133284 151788578 69716264 38135952 124010976 124010976 95342024 92483688 63459464 50896928 17846816 10934592 304147012 304147012 852708483 852708483 583845075 464929872 768390907 768390907 246144102 359584160 719699129 719699129 608441347 608441347 561918369 561918369 611061545 611061545 86302472 6484352 70002176 70002176 438381440 573182982 637934993 644225433 847363993 848873043 851591936 851591936 413266122 283793346 673808453 739002476 739002476 632097864 632097864 381774896 381774896 357164202 300751914 98606272 312002128 312002128 367526316 439914718 439914718 234117166 249217344 264947900 264947900 232832400 232832400 229220864 80216872 80216872 213051500 575767857 575767857 211561272 538830962 621544082 933967227 933967227 807663112 961874386 961874386 1006845991 1061702850 1061702850 638078052 922165143 922165143 776333469 748568272 504742792 338950040 96951008 348406784 348406784 542198785 651749065 651749065 543300497 543300497 76256448 342570378 343529546 343529546 816889603 884942728 884942728 619373771 617760192 502512489 502512489 477778880 362580832 412402028 412402028 872859675 1065502788 1065502788 403301508 842096492 1066400895 1066400895 488036910 488036910 279179586 754424022 754424022 699951958 699951958 1040723097 1040723097 921219776 853726474 959760692 1030015499 1030966532 1030966532 417315502 804674549 804674549 963848482 963848482 661741569 728954257 739677329 739677329 640683824 103460144 103460144 45139384 330846842 330846842 284517474 344423848 391141032 391141032 289660504 54735024 273419394 564534690 849246272 849246272 353994154 1006722874 1036252143 1036252143 530108159 761303753 761303753 504400576 758322676 758322676 651765465 529361936 948299847 948299847 650938447 583871697 991046272 991046272 928809328 928809328 329582880 329582880 44362754 25428048 22785964 228547500 228547500 202250404 786591361 786591361 674682000 703601004 703601004 682364229 195161028 691175216 691175216 654336185 654336185 558989848 828092678 828092678 540209280 514330864 934359920 934359920 910305260 747116174 747116174 1023545379 1023545379 642777753 1007862926 1007862926 896526248 611859083 182881877 605892384 605892384 561253281 548664466 837045699 1000710276 1000710276 214132224 257611416 257611416 337335616 449912890 449912890 109498900 123865496 240672364 240672364 800555332 800555332 705955633 678337568 678337568 665846649 665846649 102893336 211822408 216923464 216923464 205750548 205750548 270553112 595516898 749941581 749941581 809252482 809252482 890444832 890444832 874327563 640080153 640080153 229247036 808236344 900326763 900326763 176244031 559218944 559218944 309672609 823461152 823461152 863027347 914934938 1009853981 1009853981 841049414 841049414 651785307 339794229 412824326 572590624 572590624 688592900 952378674 952378674 657561300 657561300 569954335 1032128468 1032128468 1017664656 976673559 597825736 522584896 965133756 965133756 909547483 649849050 848168556 848168556 807702820 314624098 377800528 378571282 991446627 991446627 653888707 957835135 957835135 964763751 964763751 926811374 623026448 623026448 503466127 323035446 113633496 132643320 371251698 371251698 297795810 386140376 386140376 117774410 114426744 174204978 614501907 906117915 906117915 605567838 447284315 41951232 41951232 705169472 705169472 172212534 33687304 104470296 104470296 975513676 975513676 886104809 886104809 626211566 587472976 278446402 278446402 427817472 427817472 329654674 304649226 357702058 357702058 135435300 319890440 452178764 452178764 421833735 421833735 463061652 463061652 1017103063 1017103063 1003178167 1003178167 822482979 641920346 936908003 936908003 645326409 1037082791 1037082791 574753522 965812803 965812803 684720664 684720664 854725587 854725587 320476722 904147081 904147081 163002324 163002324 178918740 178918740 75498908 134255252 203676764 551513529 551513529 189977804 545398841 545398841 323650044 956301669 956301669 822087680 822087680 272924672 343973952 343973952 68471304 76654656 444660312 617963886 903282961 903282961 760410258 851607952 851607952 547414547 547414547 213842918 607904061 607904061 407374990 336255896 362087632 362087632 169005588 209863852 209863852 198706932 180409488 56295728 56295728 58794096 167503093 564868449 564868449 718588052 837900327 837900327 710713237 710713237 462735990 591489735 729359217 729359217 296363972 710088425 710088425 354971552 354971552 524552750 524552750 502915440 184887376 151520292 83363784 410220162 410220162 483459444 483459444 147940690 91954210 91954210 278384704 278384704 282943042 369243722 369243722 133033088 133133968 269195546 269195546 127411872 365407762 365407762 345263562 805424976 849200979 849200979 923153858 940184583 940184583 563484212 900804688 900804688 497203563 474349798 654606381 654606381 1032437065 1032437065 1034513554 1034513554 335652354 335652354 149423296 149423296 211885552 211885552 322691762 322691762 330962944 330962944 284171682 298448946 298448946 294666344 444502624 444502624 332713602 283095176 283095176 176815316 565029088 565029088 187053440 581970784 718873402 877143578 877143578 580326993 551233920 551233920 561599936 707175000 791124893 791124893 967999340 967999340 434894310 793101476 793101476 560040367 560040367 268435600 268435600 153157942 826644338 877166285 877166285 503366684 522074190 522074190 431279484 431279484 119862784 75874608 51489824 51489824 41501584 64013040 105431552 105431552 17072288 22070272 550047657 550047657 31008480 349777610 349777610 281979682 281979682 294922048 873304106 873304106 805570563 615652170 350695426 348649928 98301416 98301416 544353033 614671776 615075249 615075249 587995193 771760128 771760128 613681944 613681944 783690348 783690348 582224721 133972680 553719088 570833825 570833825 78021337 144795496 144795496 76415108 140153864 140153864 106026504 106026504 37871760 122191330 472332558 472332558 96054862 507252416 517997022 517997022 470835412 194561652 194561652 51920964 613586153 712762308 712762308 672346629 682832257 682832257 675490260 852465728 906689683 906689683 372245274 372245274 371367370 371367370 223920644 511660622 511660622 601065859 601065859 575561651 530639905 450174550 974312497 974312497 987562768 987562768 912102843 912102843 742506928 742506928 724254608 1004482053 1004482053 841948018 373151706 124769816 124769816 73492688 181367763 1029684373 1029684373 672855695 833624201 833624201 306283271 554177057 554177057 977372853 977372853 839250566 839250566 323193989 29384768 29384768 604607872 604607872 627050928 627050928 621055289 102269056 102269056 71828616 67633280 40445328 42672920 42672920 255591390 332143906 522016268 956824631 956824631 337058313 337058313 857677864 922955835 922955835 550016613 929637389 1002051447 1054396543 1054396543 975836999 1023411112 1023411112 149967676 503042074 503042074 230688184 150546372 220848428 235500986 310497760 310497760 297510498 362841120 362841120 376423856 376423856 321376576 321376576 112782584 119993472 119993472 105443896 68187416 36727568 36727568 543440032 561637281 678565760 678565760 766824514 809579649 809579649 240363061 702121410 725404063 943679159 943679159 230431662 863768226 863768226 889892472 889892472 325446066 325446066 1057756291 1057756291 262714624 262714624 206337160 206337160 152620672 152620672 220476952 220476952 673480209 673480209 554509057 571947537 571947537 705686711 960504391 960504391 483934911 846751340 846751340 727925008 844457370 964624308 964624308 678693396 443899482 751497932 754340165 754340165 136620512 368338216 439304898 439304898 373780016 222561324 177247232 260379676 260379676 193003780 167846992 167846992 25756996 26214464 45618176 45618176 32441888 301142498 301142498 274735936 33031298 24118176 31715808 826958944 851533939 851533939 844801792 297750432 297750432 65243008 65243008 326918320 326918320 22752496 12689600 12689600 8896640 3404576 45745088 45745088 85334568 129293272 129293272 323134618 390184226 390184226 284970634 271344192 715326109 717466129 717466129 320491274 128291531 128291531 292433599 292433599 426378910 890384553 890384553 822616580 271783587 528556158 528556158 323679436 210883196 285477584 323028380 514770416 518854680 518854680 454708246 285537640 236478888 359975850 897238344 897238344 868654401 331138554 297692938 555825411 555825411 462099554 715862845 715862845 542418600 538042881 183542101 98701672 696291349 696291349 989589859 989589859 907350316 907350316 557917754 721421756 721421756 643825796 1034453423 1034453423 965345349 776487740 776487740 262177949 151556132 216688653 781561101 784180161 784180161 563816953 839224466 839224466 642087195 606150016 37828752 304223504 304223504 275301778 40721794 6630528 6630528 9122880 48296088 69509192 76499209 101111832 776248032 776248032 160986789 426786960 71452281 599827677 785593053 794117309 794117309 690537568 690537568 595591281 595591281 584510129 580911313 857416024 857416024 937989823 937989823 1022055816 1022055816 805496392 805496392 883655788 883655788 390344208 390344208 35970624 198865264 233135892 268847748 278137410 471943780 471943780 302008360 143596340 143596340 185921792 642909203 642909203 455749531 455749531 941705536 941705536 837154992 837154992 757933856 592672940 735725629 735725629 447758877 565028306 565028306 631805282 631805282 553783336 299818278 438531109 560423302 956749863 975294913 975294913 863776356 863776356 461246131 177720338 63961588 27036000 545724801 545724801 720634929 720634929 587406228 257264252 257264252 571666433 571666433 347653962 347653962 629348584 667427944 667427944 99019048 160912224 160912224 404757898 404757898 455853456 516560094 994637538 994637538 677000376 828899007 828899007 781959908 742525786 742525786 720158809 704924877 76101649 109651068 206579425 756023853 756023853 659760784 677452032 685973505 700629733 700629733 747844173 766628648 766628648 709999230 960617202 960617202 501398424 501398424 318593478 384253602 384253602 110428720 210067236 258216664 258216664 124010976 273691042 273691042 92483688 292794450 292794450 53118256 52144128 305294098 311183168 852708483 852708483 583845075 464929872 570790678 570790678 451441798 451441798 619840732 884925025 884925025 505622561 1122816 324552582 324552582 628108867 848378195 848378195 651653184 476526794 113772126 550440470 625869676 625869676 491033494 491033494 851591936 851591936 415020412 415020412 673808453 739002476 784384221 784384221 632097864 444338070 135579026 351950018 351950018 126492536 126492536 353148130 353148130 107087928 237404792 237404792 249217344 249217344 159025784 232832400 232832400 229220864 80216872 80216872 42530128 239153392 239153392 211561272 211561272 621544082 933967227 933967227 326828800 961874386 961874386 943555904 1061702850 1061702850 303319318 473956416 505058708 505058708 504742792 504742792 338950040 96951008 367329664 367329664 81077272 651749065 651749065 608759113 608759113 76256448 358519592 954375618 954375618 947439495 86136495 226806368 226806368 418537262 502512489 502512489 477778880 362580832 672956666 807555549 872859675 1065502788 1065502788 625976503 842096492 1066400895 1066400895 488036910 488036910 379793754 754424022 754424022 699951958 699951958 1040723097 1040723097 921219776 853726474 959760692 959760692 367315434 213913798 213913798 33597504 42330192 223101392 223101392 233696204 248793992 248793992 219303576 121293432 65716584 43884424 850692164 850692164 586797654 836125820 836125820 544293702 991042487 991042487 925041806 925576524 925576524 540371272 274936194 274936194 1026293250 1026293250 1021313487 1015285839 1015285839 379017818 379017818 758322676 758322676 651765465 621163885 621163885 130023560 130023560 319165568 991046272 991046272 381945480 381945480 339760648 387782250 387782250 646952043 646952043 982388868 982388868 223403253 637703237 637703237 215427456 703601004 703601004 682364229 90704109 139363468 139363468 4817920 202899980 486682762 828092678 828092678 281000633 281000633 934359920 934359920 910305260 272565802 272565802 1023545379 1023545379 642777753 642777753 896526248 896526248 611859083 426453636 605892384 605892384 561253281 548664466 837045699 1000710276 1000710276 427520544 165024242 159909090 477631006 477631006 417476950 391839942 383780512 240672364 240672364 800555332 800555332 740835200 740835200 688704549 665846649 665846649 89441553 139201668 139201668 604558551 604558551 709596582 1029922954 1029922954 749941581 832053536 832053536 817440579 896820992 896820992 874327563 640080153 640080153 902485227 902485227 536886584 622584451 960377015 960377015 846997313 846997313 843261186 843261186 573319330 914934938 914934938 600311025 841049414 841049414 679280681 1065040031 1065040031 767503945 630236685 688592900 952378674 952378674 940758016 805983815 569954335 1032128468 1032128468 1017664656 976673559 597825736 522584896 805317120 805317120 719688398 719688398 445712898 595886240 595886240 557893649 303300634 378571282 378571282 249316952 249316952 940903429 940903429 964763751 964763751 926811374 979614198 979614198 503466127 844480786 844480786 334891810 384865904 384865904 362933794 555509697 555509697 543116805 816195970 816195970 299043238 421213399 808616541 881728587 881728587 950768436 1024907823 1024907823 705169472 667732304 667732304 377635360 170000434 888871894 888871894 886104809 886104809 626211566 836477655 836477655 278446402 943008836 943008836 868584659 814338483 595665009 617134923 934242152 934242152 319890440 436795504 436795504 421833735 463061652 463061652 1017103063 1017103063 1003178167 1003178167 822482979 641920346 936908003 936908003 645326409 1037082791 1037082791 188822188 685113582 685113582 684720664 684720664 854725587 854725587 307957883 904147081 904147081 92546656 92546656 167879456 167879456 112833420 232876180 232876180 551513529 551513529 126038136 587796624 587796624 558576801 956301669 956301669 822087680 822087680 277603394 343973952 343973952 346030410 346818560 346818560 536871937 903282961 903282961 760410258 851607952 851607952 547414547 547414547 213842918 607904061 607904061 522883220 522883220 362087632 362087632 179755860 187095476 187095476 223439356 223439356 56295728 248529228 248529228 167503093 564868449 564868449 718588052 718588052 44148359 710713237 710713237 462735990 591489735 729359217 729359217 296363972 710088425 710088425 331562342 135266304 266286416 266286416 172829844 158084372 158084372 88683924 232448688 232448688 483459444 483459444 147940690 49696210 393742266 393742266 278384704 269822466 332481608 332481608 133033088 133133968 269195546 269195546 17028784 321535754 321535754 654253505 654253505 898958539 932736642 932736642 940184583 940184583 562437737 900804688 900804688 497203563 197615898 208076928 591758549 591758549 631465278 657026064 657026064 587343257 587343257 185217112 666447941 666447941 143664960 19126772 135874052 135874052 21119168 201213428 201213428 171779620 151905040 444502624 444502624 332713602 631269737 631269737 818800024 839199816 839199816 427927607 581970784 718873402 877143578 877143578 915575546 915575546 551233920 561599936 707175000 791124893 791124893 967999340 967999340 751796856 751796856 683413648 685352082 685352082 658876667 637798425 323310633 826644338 877166285 877166285 474752756 522074190 522074190 431279484 431279484 112181856 101065512 86577464 86577464 41501584 64013040 105431552 105431552 17072288 22070272 134294020 948513872 973768215 973768215 973868055 973868055 12323415 313455648 313455648 185069650 405196832 588435747 588435747 557124128 557124128 98301416 98896896 98896896 615075249 615075249 587995193 622234024 639912097 639912097 641575280 641575280 130646761 670579368 670579368 569140177 616745097 616745097 587735504 587735504 28255568 145241220 145241220 214434956 215341576 215341576 108579400 108579400 26479200 213058048 269489092 507252416 517997022 1011260065 1011260065 768605421 768605421 739245069 739245069 712762308 712762308 767569972 767569972 1184256 34119712 865073872 865073872 851927699 372245274 372245274 67207680 106244760 129303520 129303520 17751072 25877984 575561651 575561651 368859098 450174550 974312497 1028528303 1046352635 1046352635 912102843 912102843 733545692 733545692 628171689 244066037 515940376 515940376 373151706 124769816 273565248 273565248 181367763 1029684373 1029684373 672855695 833624201 833624201 306283271 554177057 554177057 977372853 977372853 839250566 839250566 323193989 230431202 165956332 604607872 604607872 627050928 627050928 621055289 240293660 537007768 541201428 541201428 37884048 48025296 71487953 802443675 1070204207 1070204207 956824631 956824631 337058313 337058313 857677864 922955835 922955835 607007052 753050664 891762987 891762987 525140390 501758262 315098464 389174130 389174130 497194398 497194398 230688184 127951076 220848428 235500986 235500986 73104010 72301704 362841120 362841120 376423856 376423856 321376576 321376576 244386912 188965268 121500240 769490604 769490604 36727568 36727568 543440032 738657456 793553981 793553981 789503037 809579649 809579649 526838695 702121410 1059154877 1059154877 990193719 990193719 863768226 863768226 823836339 330540856 330540856 487561648 487561648 339366730 480564992 480564992 206337160 206337160 152620672 476848512 476848512 224479684 673480209 673480209 554509057 571947537 571947537 570764341 759780033 759780033 310903890 870842722 931135913 931135913 844457370 844457370 678693396 678693396 337641472 337641472 6291840 6291840 371154212 371154212 368338216 406896874 497051128 497051128 477978904 477978904 260379676 194498160 145343700 145343700 31871008 14993856 45822816 45822816 61890800 61890800 20119008 32101392 32101392 23084384 40245648 826958944 851533939 851533939 60430064 60430064 53832256 54695584 288146256 322575954 322575954 47395008 316296432 316296432 299764402 18757138 20449056 20449056 36156848 55855792 103549874 323134618 390184226 390184226 284970634 271344192 209977920 717466129 918336376 945388965 945388965 789075128 789075128 660264633 270409218 387582008 822616580 822616580 271783587 378671706 378671706 656067203 842033474 846588819 859482259 859482259 841821459 841821459 841607113 841607113 236478888 401910490 401910490 868654401 868654401 592628577 297692938 555825411 555825411 462099554 715862845 743622824 743622824 538042881 248829592 111314020 696291349 696291349 989589859 989589859 852104403 760093825 760093825 721421756 721421756 643825796 1034453423 1034453423 965345349 529310008 107553165 151556132 151556132 567975178 781561101 784180161 784180161 563816953 839224466 839224466 642087195 606150016 302520338 371770386 371770386 369400080 44911696 33883200 34042128 44378448 48296088 69509192 150242968 150242968 74188628 167777804 167777804 249239212 71452281 599827677 785593053 794117309 794117309 572507212 114865812 55577852 4593792 597688480 597688480 549527896 549527896 937989823 937989823 1022055816 1022055816 805496392 805496392 883655788 883655788 390344208 390344208 194662800 194662800 233135892 268847748 278137410 471943780 471943780 319202194 319202194 273858888 479330970 642909203 642909203 455749531 455749531 941705536 941705536 591221963 757933856 1024896384 1031534511 1031534511 558636460 443100582 565028306 697856261 697856261 486687844 769205965 1065551025 1065551025 724193286 1066475015 1066475015 975294913 353970488 585806786 585806786 265900073 807285649 807285649 711499604 545724801 720634929 720634929 587406228 14184576 814934816 814934816 571666433 347653962 347653962 629348584 667427944 667427944 17838144 104613308 141320150 404757898 404757898 584742477 584742477 705381076 705381076 944034705 944034705 828899007 945011383 945011383 742525786 729954180 729954180 201851145 657983261 657983261 756023853 756023853 659760784 677452032 685973505 700629733 700629733 747844173 766628648 766628648 709999230 960617202 960617202 457278070 281467572 299901954 384253602 384253602 110428720 210067236 258216664 258216664 128129400 273691042 273691042 69470472 292794450 292794450 53118256 52144128 305294098 311183168 344903698 378014808 378014808 337296408 303426066 101668362 811737235 811737235 872786546 884925025 884925025 963658152 963658152 977683514 977683514 628108867 848378195 848378195 651653184 619787535 619787535 550440470 625869676 625869676 491033494 580784767 1027433557 1027433557 958920999 415020412 566238563 709641382 784384221 784384221 513838613 444338070 387733784 351950018 351950018 126492536 126492536 353148130 353148130 467013366 467013366 345806126 116153198 131063629 131063629 304119174 416816223 514753109 514753109 55235760 55235760 864748693 864748693 502078194 540157713 827537184 827537184 326828800 326828800 323695794 943555904 943555904 294806127 654328434 879510247 879510247 782237957 988579268 988579268 124046080 327621754 327621754 367329664 367329664 328471728 79956632 604817472 608759113 608759113 87924194 358519592 954375618 954375618 947439495 951671496 951671496 230065098 801130604 801130604 366399070 366399070 110810712 672956666 807555549 807555549 644746633 625976503 625976503 116121325 74035929 59781808 59781808 37486736 379793754 379795530 379795530 348141696 348141696 235839622 536497324 536497324 482086734 462029736 462029736 354822508 425890176 432557094 432557094 130441180 130441180 55873488 245909692 248793992 248793992 219303576 23625856 205563884 205563884 850692164 850692164 586797654 836125820 836125820 544293702 991042487 991042487 925041806 925576524 925576524 540371272 312283508 274936194 1026293250 1026293250 1021313487 1015285839 1015285839 379017818 379017818 1023755306 1023755306 672001029 621163885 1030355086 1030355086 499306734 596189070 596189070 573958929 511020761 483656856 339760648 387782250 855772697 916325472 916325472 982388868 982388868 223403253 637703237 637703237 235026256 165427296 165427296 140195460 210102348 210476032 210476032 4817920 202899980 224434464 224434464 221532460 74713992 154936228 154936228 416953022 416953022 272565802 272565802 110574168 162803412 212602188 435202758 435202758 288363840 426453636 426453636 14894272 17640672 168752772 439761536 439761536 427312006 427520544 427520544 315228324 315228324 477631006 477631006 417476950 391839942 383780512 217059608 217059608 215084664 215084664 740835200 740835200 688704549 568291941 557842593 215098824 215098824 149607752 604558551 604558551 872538280 1029922954 1029922954 738439311 832053536 832053536 817440579 896820992 896820992 543088257 420518766 637963506 902485227 902485227 830660898 622584451 960377015 975299020 975299020 846997313 843261186 843261186 809552035 809552035 634462953 634462953 341045898 341045898 679280681 1065040031 1065040031 767503945 630236685 672695813 672695813 940758016 940758016 805983815 8929283 0 944569040 944569040 88605120 88605120 22342816 953163101 953163101 942668520 942668520 445712898 595886240 595886240 587492404 508634430 508634430 620798613 755541959 1050986847 1050986847 652823878 155609680 155609680 811074342 979614198 979614198 256301244 844480786 844480786 369260482 384865904 384865904 362933794 555509697 555509697 691077205 816195970 816195970 576106509 871647102 871647102 1070078722 1070078722 950768436 1024907823 1024907823 923324667 667732304 667732304 415243112 415243112 888871894 888871894 977695132 977695132 396415061 836477655 836477655 671346693 943008836 943008836 868584659 814338483 595665009 617134923 934242152 934242152 436792720 436795504 436795504 97567464 97567464 43517520 100180152 100180152 168592128 168592128 154273876 188765568 188765568 187356468 422176038 422176038 223811814 710095070 717361365 717361365 134662353 113510616 88870056 387714210 387714210 287575954 287575954 21759008 37434160 112928404 112928404 112833420 262647808 262647808 369412502 373398448 373398448 587796624 587796624 558576801 358030640 302530560 551605568 551605568 541725825 336532480 336532480 346030410 346818560 346818560 536871937 536871937 78741760 75523584 79267136 79267136 78119240 78119240 0 2353424 111405072 522883220 522883220 87549416 87549416 179755860 187095476 187095476 223439356 223439356 45614484 248529228 248529228 49467392 182072260 182072260 155585938 450517382 450517382 270406678 457608354 457608354 444645462 56356928 56356928 399613128 412100364 522330858 522330858 350357144 350357144 266286416 172829844 168819732 168819732 88683924 323451158 323451158 246398136 365480346 365480346 317156552 393742266 393742266 320351792 117586056 332481608 332481608 93919016 93919016 88297184 67898376 103813912 348654794 348654794 654253505 654253505 898958539 932736642 932736642 845037336 845037336 562437737 560072928 560072928 233279977 69366100 208076928 591758549 591758549 631465278 657026064 657026064 587343257 587343257 185217112 666447941 666447941 95056136 95056136 66298336 21119168 155209920 155209920 152117796 152117796 195314464 195314464 60181634 60181634 631269737 631269737 818800024 839199816 839199816 588095536 558195745 696576196 793794636 793794636 915575546 915575546 52402416 642319060 647563079 647563079 533759567 924967332 924967332 808575747 751796856 347135135 685352082 685352082 658876667 637798425 323310633 302950544 302950544 579766303 579766303 656327708 656327708 337524328 627942728 648947588 648947588 86577464 86577464 35045896 5655040 109853360 109853360 97252584 97140320 556460585 948513872 973768215 973768215 973868055 973868055 272115618 313455648 872422920 897258979 897258979 588435747 588435747 557124128 557124128 76254625 98896896 98896896 81579720 547377760 557977761 622234024 639912097 639912097 641575280 641575280 310903890 670579368 670579368 569140177 616745097 616745097 587735504 587735504 215763724 215763724 145241220 214434956 215341576 215341576 185363360 410003916 410003916 474203798 474203798 387166158 88288770 1011260065 1011260065 768605421 958808754 1006159863 1006159863 717940386 717940386 767569972 848364098 848364098 554832417 865073872 865073872 851927699 651720968 67207680 362916386 362916386 221604120 442912540 442912540 525972734 525972734 441438490 441438490 303344136 966675428 1028528303 1046352635 1046352635 666920021 530890483 746003760 746003760 954274845 954274845 889693312 889693312 555219309 348127434 675431561 675431561 167154694 139992480 52742448 34636352 889049740 889049740 206761931 27263328 150995268 675283108 675283108 672477328 672477328 681690594 681690594 611510380 758590852 758590852 611648609 611648609 238736788 240293660 537007768 541201428 541201428 37884048 59298624 71487953 802443675 1070204207 1070204207 840959020 354396842 775780412 1057971696 1057971696 946653283 946653283 881244288 881244288 495791164 525140390 525140390 685690967 685690967 680138112 389174130 529040747 679527517 680051781 815809830 815809830 16777248 2081840 51903024 211100752 1041657408 1041657408 1041533624 1014683535 1014683535 856584900 244386912 188965268 121500240 769490604 769490604 141476237 168297748 172108708 738657456 793553981 793553981 789503037 547993991 841049904 841049904 692659365 1059154877 1059154877 990193719 990193719 436535329 278186562 390629340 390629340 330540856 487561648 487561648 339366730 480564992 480564992 412174260 280273796 139742852 476848512 476848512 320638558 320638558 202698252 673462790 805315219 872432389 872432389 373696018 373696018 357766144 870842722 931135913 931135913 1031601381 1031601381 948155724 286821130 337641472 645422862 645422862 750786223 809542589 809542589 290921837 406896874 497051128 497051128 477978904 477978904 194498160 194498160 113771736 113771736 80351320 117932376 117932376 108015776 108015776 90383248 87650592 90302225 90302225 23084384 553009905 836441056 836441056 287832354 836177618 836177618 575836434 575836434 805442176 805442176 574898352 574898352 316296432 316296432 299764402 36722976 302433072 318799904 318799904 320392289 320392289 109838387 554853929 554853929 100743256 166037056 209977920 305830394 918336376 945388965 945388965 789075128 789075128 660264633 270409218 495453290 822751748 822751748 353016578 377057800 377057800 656067203 842033474 846588819 859482259 859482259 841821459 841821459 841607113 841607113 112027330 401910490 401910490 362666192 593132746 890740905 890740905 625726497 561684324 697600869 731143945 743622824 743622824 663240328 601307889 111314020 572184137 671373060 671373060 611637881 611637881 760093825 760093825 893396666 893396666 836437474 1035281703 1035281703 1052793758 1052793758 539092322 182374845 70533216 567975178 567975178 1050432996 1050432996 867077209 436865025 369495298 406374864 444727644 444727644 371770386 463898930 463898930 296517974 59645040 34042128 198471188 198471188 41169104 150242968 551974401 551974401 735820228 735820228 756351928 119222948 240285360 594690208 594690208 784827993 784827993 742211460 742211460 700653036 597688480 597688480 549527896 549527896 66593171 542743954 810932736 810932736 805319311 168819732 168819732 196264788 196264788 164733560 245057416 463094032 463094032 189734854 323430640 445076144 475328640 475328640 319202194 273858888 479330970 479330970 303305284 196653696 394408824 858460450 858460450 591221963 504073102 1024896384 1031534511 1031534511 776356656 776356656 697828504 856895493 856895493 339265290 769205965 1065551025 1065551025 833482083 1066475015 1066475015 784234780 784234780 585806786 585806786 526927149 807285649 807285649 711499604 142613332 142613332 143036628 185612472 236188188 814934816 818515077 818515077 203473164 579502288 579502288 123279096 395841464 395841464 359002784 303763534 485869668 485869668 584742477 584742477 705381076 705381076 944034705 944034705 508091830 945011383 945011383 258802062 729954180 729954180 201851145 657983261 701694032 701694032 185677220 207491468 207491468 152306432 152306432 87071400 87071400 203561504 1008163556 1008163556 151079624 455185240 455185240 423208674 423208674 239038308 188279872 96212332 485367780 485367780 465773192 252786080 127086968 75108056 69470472 79972032 79972032 15466624 15466624 4197824 279203408 977984661 977984661 977982615 386392720 442635727 442635727 811737235 811737235 872786546 1008757346 1008757346 963658152 963658152 977683514 977683514 271895298 270668034 270668034 418391048 619787535 619787535 476788488 463016746 428425072 428425072 580784767 1027433557 1027433557 958920999 463690402 463690402 127029824 127191672 373065754 373065754 387733784 387733784 285787170 285664840 285664840 354738256 480215275 480215275 467013366 467013366 869441217 869441217 491667593 437390072 304119174 485995652 871095274 871095274 94508331 663324136 864748693 864748693 502078194 540157713 827537184 827537184 822557306 561125393 350493137 637542459 923869754 923869754 818393338 879510247 979783893 979783893 988579268 988579268 209039074 327621754 327621754 354946392 354946392 605028873 907564673 926469865 926469865 570719576 540091720 286147880 286147880 1122816 81167687 951671496 964321252 964321252 801130604 925108539 925108539 436675471 290591394 537921024 756322120 756322120 698533316 698533316 630197596 640294442 829166199 885079515 885079515 539630039 393679771 683954185 683954185 603995416 603995416 244648132 536497324 536497324 482086734 462029736 462029736 927669413 943804547 943804547 547533250 202115428 246956108 252583724 252583724 245909692 201474092 201474092 47896272 205563884 205563884 883023264 883023264 470797189 62690212 846897404 846897404 691051943 691051943 247475852 55542288 749913320 807056366 807056366 239162048 676575880 676575880 635875975 925959057 925959057 372915584 372915584 1023755306 1023755306 672001029 405995944 1030355086 1030355086 499306734 596189070 596189070 573958929 511020761 483656856 361536224 276960339 855772697 916325472 916325472 895146616 895146616 504705199 92348536 235026256 235026256 212811084 165427296 140195460 210102348 640063169 640063169 743684748 743684748 757609608 757609608 740557704 740557704 98369724 195898740 195898740 193291608 102483432 102483432 256433824 546179804 579069601 579069601 551793440 110612720 84292424 544843456 544843456 9585728 177042052 282544646 407895174 407895174 285347648 61510496 315228324 315228324 181600852 180880384 394839532 394839532 292271842 391538746 457661698 530980078 530980078 257933338 287015292 343946508 343946508 284574730 567036036 567036036 557591973 555883382 559681185 872538280 872538280 738439311 738439311 688046255 271701891 560534784 580613649 580613649 420518766 420518766 364251956 438618390 830660898 830660898 521979648 521979648 975299020 975299020 633923865 495543404 704743636 809552035 809552035 729375473 634462953 162843328 145302852 138479040 135432204 201609732 201609732 222311316 419582192 419582192 790189313 790189313 440217125 664669111 1055778156 1055778156 994497448 994497448 668371400 483579536 953163101 953163101 942668520 942668520 965159478 965159478 587492404 587492404 508634430 508634430 620798613 755541959 1050986847 1050986847 652823878 14754240 115418920 811074342 970580009 970580009 364994802 364994802 330400064 369260482 369260482 87609130 104022872 104022872 630777132 691077205 691077205 740760280 740760280 871647102 871647102 1070078722 1070078722 568593295 923263522 923324667 923324667 400854546 400854546 415243112 415243112 390011310 316741914 977695132 977695132 392562837 268593190 588601908 671346693 671346693 460725169 423793940 718361564 1061626463 1061626463 666156249 809424121 809424121 409282950 348205632 452719190 487821940 650543372 763997568 763997568 195085188 168592128 154273876 188765568 984671397 984671397 422176038 837266439 837266439 710095070 717361365 717361365 631246312 543690001 555222561 555222561 387714210 582487731 582487731 53551920 330373426 330373426 67155760 62163424 262647808 262647808 1005349435 1005349435 389462180 745595877 745595877 456404146 1032365132 1032365132 875128107 551605568 743217484 761498915 761498915 86717736 965289222 965289222 564134241 78741760 973155579 973155579 870392307 793932870 686426535 686426535 212548912 585630909 585630909 518131028 518131028 535042344 535042344 88088036 140066224 140066224 93706288 249749008 249749008 37290048 37748880 41992976 42328576 42328576 155585938 450517382 450517382 270406678 457608354 457608354 444645462 77049448 77049448 399613128 399613128 522330858 522330858 350357144 350357144 237372448 235626920 235626920 221222188 186742212 323451158 323451158 246398136 365480346 365480346 317156552 374416026 399590946 399590946 230803676 503695502 503695502 160243764 160243764 284772314 284772314 215267308 426832834 426832834 404719016 98156386 94851992 94851992 51367048 34152656 34152656 277422336 277422336 63818192 63818192 54732928 23204256 22247776 827421696 827421696 452267400 452267400 278054788 125319080 179491408 213463100 213463100 95056136 95056136 142206852 157605668 157605668 185082964 198328020 198328020 195314464 414368116 414368116 868460696 868460696 266409431 42016784 676105268 676105268 588095536 558195745 541065345 680865988 680865988 675982021 675982021 18474528 642319060 647563079 647563079 663871652 924967332 924967332 808575747 788784713 1025268839 1025268839 470294636 294200418 294200418 67707912 446371922 1042218524 1042218524 579766303 656327708 656327708 337524328 627942728 648947588 648947588 71619152 71619152 35045896 5655040 109853360 109853360 97252584 97140320 556460585 556460585 33216832 345285706 345285706 272115618 272115618 285729282 872422920 897258979 897258979 298986528 611347336 611347336 90221217 20447784 75109544 75109544 97006984 97006984 25171546 131277730 131277730 347340896 347340896 310903890 310903890 319048992 319048992 52529712 125495640 125495640 65929568 147470536 215763724 215763724 203256128 201879108 201879108 272971910 494054080 494054080 410003916 474203798 474203798 423749564 356576048 833504298 833504298 482532272 958808754 1006159863 1006159863 717940386 871764111 871764111 965800663 965800663 559104052 545498784 545498784 651720968 932293081 932293081 582045441 613977970 613977970 442912540 442912540 525972734 525972734 441438490 441438490 303344136 728635662 810473603 944147591 948585474 948585474 530890483 746003760 746003760 954274845 954274845 889693312 889693312 555219309 348127434 675431561 675431561 448267065 1017644139 1017644139 566263867 889049740 889049740 477034691 1010227983 1010227983 675283108 840813094 1000175831 1000175831 681690594 681690594 611510380 758590852 758590852 756613148 756613148 219677733 155814568 37934104 656002592 656002592 51932137 584086572 796664484 796664484 873094059 873094059 561464425 354396842 775780412 1057971696 1057971696 946653283 946653283 881244288 881244288 495791164 302066794 357072438 685690967 685690967 680138112 327290594 529040747 679527517 680051781 913343174 1050722893 1050722893 174220809 51903024 211100752 1041657408 1041657408 1041533624 1014683535 1014683535 856584900 92346000 125628936 125628936 695325224 695325224 141476237 168297748 172108708 621295764 776187973 776187973 713048781 547993991 841049904 841049904 311003776 389041938 588710519 999307825 999307825 373573336 278186562 437698944 437698944 208611460 160432740 160432740 263996520 263996520 412174260 412174260 280273796 321479986 410280704 410280704 320638558 808064259 981152135 981152135 975356036 872432389 872432389 589807233 863604159 863604159 691536557 723308519 1022888783 1031601381 1031601381 948155724 899655426 899655426 808267011 645422862 750786223 809542589 809542589 1017332542 1017332542 153658156 155263140 155263140 90650924 25646752 25646752 113771736 113771736 80351320 117932376 117932376 108015776 108015776 90383248 87650592 90302225 90302225 84418560 658284336 836441056 836441056 598239656 836177618 836177618 575836434 575836434 805442176 805442176 574898352 574898352 270716976 275126658 275126658 288674320 302433072 318799904 318799904 320392289 320392289 109838387 889227592 889227592 877184139 109381632 147637960 475922662 475922662 156326231 956735701 956735701 832428675 738332940 738332940 700985997 860408544 860408544 353016578 377057800 377057800 109846736 2004992 4507776 4507776 2232576 2232576 16777216 77072000 98074824 98074824 55101032 541123496 623977257 623977257 890740905 890740905 625726497 561684324 697600869 731143945 731143945 663240328 663240328 601307889 96272473 94282208 67360840 5901824 5243520 56499888 56499888 541272448 893396666 893396666 836437474 1035281703 1035281703 1052793758 1052793758 539092322 182374845 8523808 546964992 546964992 1050432996 1050432996 867077209 436865025 39197328 406374864 444727644 444727644 430229544 463898930 463898930 310956114 310956114 302849072 285811746 271296576 41169104 146610660 551974401 551974401 735820228 735820228 756351928 119222948 240285360 594690208 594690208 784827993 784827993 742211460 742211460 700653036 408104996 429003366 830472736 830472736 66593171 542743954 542743954 18548387 511656 81450696 105139072 196264788 196264788 164733560 245057416 513570526 513570526 354269376 323430640 323430640 475328640 475328640 140820586 1436160 559218340 559218340 591974525 672174145 814797109 891552043 891552043 550653473 550653473 911707702 911707702 873253899 776356656 776356656 697828504 882911036 882911036 916989108 916989108 1041015164 1041015164 833482083 796943909 796943909 828568140 828568140 630810045 630810045 553648471 553648471 810099777 810099777 176750720 405406336 418586519 418586519 415692848 800804474 818515077 818515077 282249257 579502288 661787082 912461872 912461872 395841464 359002784 303763534 485869668 485869668 239674524 239707292 637608584 637608584 134234112 134234112 70781968 70781968 765887757 772297053 772297053 162412612 162412612 60576708 701694032 701694032 579863045 553624261 685915076 688255425 688255425 694405669 694405669 687526789 1008163556 1008163556 836821352 836821352 875037911 1017756746 1017756746 374592153 342358410 96212332 807082145 807082145 838350975 871121272 871121272 489396050 69544200 276775794 276775794 34927120 46432386 282102226 282102226 977984661 977984661 977982615 386392720 442635727 442635727 151736188 670988381 670988381 1008757346 1008757346 1059228032 1059228032 878331315 878331315 590762970 590762970 640214784 640214784 418391048 206419604 116717592 1008753524 1008753524 980628483 578639872 963093806 963093806 919571153 912402541 912402541 772035077 306233490 373065754 373065754 335875912 391648904 391648904 391242426 285664840 354738256 512360600 512360600 210507852 317851880 869441217 869441217 491667593 766690172 848959059 848959059 871095274 871095274 94508331 663324136 663324136 172700821 377848536 651554337 651554337 822557306 822557306 561125393 350493137 637542459 923869754 923869754 818393338 818393338 979783893 979783893 810425499 724973338 209039074 77145672 77145672 36177168 298844395 605028873 907564673 926469865 926469865 570719576 540091720 465751118 760192168 760192168 89029805 902738923 964321252 964321252 611666311 925108539 1024173504 1024173504 290591394 714478516 756322120 756322120 698533316 698533316 630197596 640294442 829166199 885079515 885079515 539630039 393679771 683954185 683954185 603995416 603995416 359932628 323693208 510114156 510114156 963148030 963148030 927669413 943804547 943804547 547533250 202115428 246956108 252583724 252583724 144231936 136087872 136087872 199250112 199250112 72983064 883023264 887230763 887230763 357863904 846897404 934005806 934005806 691051943 995589710 995589710 823477652 909558427 909558427 799171428 799171428 676575880 1058864992 1058864992 925959057 911260080 840710256 1024094846 1024094846 590720064 810424486 810424486 579076118 848038995 848038995 979912581 1014498527 1014498527 789182544 381945978 461914174 461914174 537433664 537433664 895146616 977614589 977614589 742585075 742585075 212811084 212811084 552854808 680779589 739455489 739455489 686515737 743684748 743684748 757609608 757609608 740557704 740557704 170014785 195898740 233726444 233726444 214659381 214659381 256433824 598074716 615984569 624900976 624900976 133946704 745052781 745052781 544843456 31780128 177042052 314036944 314036944 285347648 285347648 61510496 61510496 181600852 181600852 178992512 394839532 394839532 337210024 391538746 457661698 932214016 932214016 755160688 689541499 689541499 812789830 812789830 965890370 965890370 806142976 806142976 559681185 877453824 877453824 485620738 482752654 147638512 147638512 560534784 580613649 580613649 446798076 446798076 314337804 463347318 463347318 219540012 219540012 821634890 821634890 507842383 203688204 202637316 704743636 704743636 729375473 729375473 190607926 950383751 950383751 763067545 462545526 201609732 999428727 999428727 302649431 671822131 790189313 790189313 613109748 664669111 1055778156 1055778156 994497448 994497448 668371400 483579536 259289224 185753908 185753908 151679344 965159478 965159478 164893348 164893348 158916072 302148920 338401206 338401206 222927590 181429000 49018320 626656384 626656384 601376508 970580009 970580009 364994802 640356892 640356892 290570944 128049546 268646400 288860192 288860192 630777132 630777132 1009094690 1009094690 740760280 929058678 929058678 181011868 838214408 877116299 877116299 277873218 721719810 721719810 637786184 151253028 510011514 510011514 316741914 371597778 371597778 159383652 368124351 414442326 414442326 406289600 406289600 423793940 718361564 1061626463 1061626463 666156249 809424121 809424121 402653190 348205632 452719190 487821940 1033699826 1033699826 1001525639 1001525639 980322504 138159856 170023808 984671397 984671397 369539271 837266439 837266439 805702163 805702163 631246312 888507289 888507289 555222561 555222561 315960018 582487731 582487731 53551920 330373426 330373426 67155760 60912504 42075456 42075456 1005349435 1005349435 389462180 745595877 745595877 868818950 1032365132 1032365132 875128107 609319298 743217484 761498915 810027457 810027457 965289222 965289222 809241519 970785549 973155579 973155579 870392307 793932870 686426535 686426535 212548912 585630909 585630909 518131028 518131028 535042344 535042344 89235740 140066224 140066224 93706288 249749008 249749008 57813988 159856740 266132980 266132980 148180156 221578188 221578188 252791320 252791320 163668048 163668048 96857608 77049448 77049448 33281016 147354200 259252736 259252736 134221196 237372448 237372448 235626920 235626920 221222188 222529708 222529708 258686072 260432024 260432024 255889200 109134184 109134184 495976484 495976484 448006818 503695502 503695502 160243764 160243764 284772314 284772314 215267308 426832834 426832834 805832713 805832713 561512875 890208554 890208554 889735177 881061952 288030722 277422336 271114274 421943428 700889381 700889381 939606535 939606535 827421696 816050499 688416038 278815552 295825666 295825666 414667364 414667364 157471140 167661120 167661120 157605668 157605668 185082964 198328020 198328020 142870596 414368116 414368116 868460696 868460696 585294074 868824424 868824424 855814408 813752434 813752434 597705632 680865988 680865988 675982021 675982021 18474528 540050048 543211905 543211905 829538560 829538560 487137564 788784713 788784713 1025268839 1025268839 862939478 694366629 694366629 26068994 581888017 1042218524 1042218524 344245837 0 50659328 50669616 50669616 116753088 116753088 73264776 71619152 68195344 106473640 129066504 129066504 67707912 93575392 93575392 72146624 33216832 26796544 25967616 6690176 6691200 6691200 4622080 71455936 567160616 567160616 632767840 635572713 635572713 627316841 620757033 628697001 628697001 580155680 600258801 883360528 883360528 36962880 36962880 25446136 100925704 100925704 52008984 52529712 125495640 125495640 122369208 97431696 97431696 203256128 203256128 178179716 178179716 272971910 494054080 494054080 383856312 843629715 843629715 558744195 558744195 833504298 952210560 952210560 936372972 936372972 705506325 278881455 1031143685 1031143685 965800663 965800663 630203248 545498784 545498784 89408001 932293081 932293081 667755712 613977970 613977970 268894464 186762548 188007728 188007728 68034205 606832803 606832803 356741779 881667147 906249291 948585474 948585474 705506325 973224161 973224161 0 0 0 272782400 272782400 9080962 3671808 17437184 448267065 1017644139 1017644139 566263867 332645693 854657677 854657677 1010227983 1010227983 584426743 844474064 1000175831 1000175831 574812721 685269532 685269532 575742609 138478101 756613148 756613148 219677733 155814568 102446089 656002592 656002592 725856801 725856801 796664484 796664484 163354564 223041781 243846260 243846260 93221480 93221480 145875680 145875680 73372044 698762745 698762745 682849688 802314717 802314717 644914324 298585314 327290594 327290594 86041184 86041184 66078120 913343174 1050722893 1050722893 174220809 562370 0 25306144 137566832 589764248 589764248 234752477 240127288 240127288 125628936 125628936 69070344 40150936 0 0 1184260 168996900 722579688 722579688 265883749 63685164 84124820 420531338 420531338 239925300 588710519 999307825 999307825 450367126 450367126 437698944 806786695 806786695 454338966 806420997 806420997 263996520 352774660 352774660 277460112 321479986 321479986 184733748 184733748 808064259 981152135 981152135 975356036 38070400 573355312 589807233 863604159 863604159 691536557 723308519 1022888783 1022888783 432197862 432197862 899655426 899655426 808267011 459017910 459017910 263401820 635398884 1017332542 1017332542 260656294 408786724 423718580 423718580 237655200 237655200 203450632 203450632 83888428 36700944 45548880 45548880 31612640 35774937 640137161 640137161 555861344 84418560 658284336 658284336 300188096 598239656 598239656 346051944 346051944 126916682 126492867 126492867 50731056 12982464 12996800 12996800 50647232 288674320 288674320 38994032 41105626 345256928 345256928 99356136 889227592 889227592 877184139 213437232 213437232 475922662 721608930 721608930 956735701 956735701 832428675 738332940 738332940 830604320 860408544 860408544 311431747 64506002 305703426 541443585 807720322 808328451 808328451 607725321 876170121 876170121 836021385 836021385 98074824 55101032 914393208 914393208 623977257 615294954 587986681 23101696 23101696 21020832 90146472 107456037 107456037 206779020 220276164 233472196 745886477 821561560 986322135 1049237535 1049237535 977672343 695504559 695504559 546781760 546781760 22354337 294914658 333711152 333711152 667352848 667352848 894834923 894834923 761733929 761733929 848636499 943319025 943319025 889847077 401798139 788535627 788535627 430229544 430229544 153881892 398865024 398865024 302849072 285811746 271296576 54285488 34105904 184995588 184995588 115336008 115336008 221335068 26214400 26215008 952074896 988806615 988806615 310155732 310155732 239579168 50331680 922746962 922746962 830472736 830472736 814953990 840077842 974311959 974311959 726874599 691303901 485706758 485706758 307546770 419187698 460588304 513570526 513570526 432050602 307286452 61649648 317131218 317131218 442006748 442006748 931683124 931683124 591974525 672174145 957797034 1012926863 1012926863 550653473 550653473 911707702 911707702 873253899 625609259 152502788 154861572 882911036 1001492902 1001492902 916989108 447823626 815537743 815537743 796943909 796943909 828568140 828568140 630810045 630810045 553648471 968958183 968958183 859899046 859899046 845735331 845735331 418586519 415692848 1037948201 1037948201 291102235 578718298 652875225 661787082 912461872 912461872 611063113 611063113 55784112 174837478 456562115 456562115 491827769 696979736 696979736 565429756 446451318 446451318 550121053 765887757 785157873 785157873 722177184 722177184 695861841 695861841 692199472 692199472 553624261 685915076 821310978 954130119 954130119 694405669 687526789 1006731492 1006731492 836821352 836821352 875037911 1017756746 1017756746 374592153 342358410 541331136 807082145 1008214668 1008214668 871121272 871121272 489396050 69544200 276775794 276775794 34927120 46432386 282102226 282102226 281076352 340539080 340539080 338433112 338433112 262700580 262700580 44188068 640100548 765886061 765886061 1059228032 1059228032 878331315 878331315 590762970 590762970 640214784 640214784 584352704 600218708 600218708 1008753524 1008753524 1005720829 578639872 604648194 604648194 653594962 912402541 1010993815 1010993815 504241182 587782191 587782191 86294418 391648904 391648904 391242426 106673978 112473276 512360600 677516868 677516868 317851880 317851880 96736210 316145808 766690172 848959059 848959059 615974482 823303976 823303976 598513507 304613721 585173841 806725816 806725816 651554337 368671706 555719203 555719203 390353808 390353808 388131826 388131826 628562800 628562800 176647104 176647104 108067890 298083658 303059554 388535074 388535074 129858856 129858856 66062064 851896320 851896320 606258432 648858969 648858969 465751118 760192168 760192168 831842310 991044165 991044165 444617335 277153824 277153824 1024173504 1024173504 971663812 971663812 714478516 221939973 48683472 48683472 148947408 160564576 461379914 461379914 504383232 504383232 312813906 312813906 335667210 335667210 359932628 359932628 327555186 510114156 510114156 963148030 963148030 84687263 660480 426328164 426328164 363062502 141434244 141945732 189341760 189341760 236868824 236868824 199250112 199250112 64232784 41442132 887230763 887230763 357863904 805586539 934005806 934005806 554368436 995589710 995589710 823477652 909558427 909558427 799171428 799171428 499961070 1058864992 1058864992 911260080 911260080 840710256 1024094846 1024094846 997609128 997609128 814478403 814478403 848038995 848038995 979912581 1014498527 1014498527 789182544 381945978 461914174 855773235 889996005 889996005 161406564 977614589 977614589 742585075 742585075 593892839 492874826 941134912 941134912 739455489 739455489 686515737 686515737 89791108 694125608 694125608 19145476 29360352 170014785 170014785 233726444 233726444 643609536 643609536 178913772 598074716 615984569 624900976 624900976 158739432 745052781 1036040576 1036040576 809910313 550508225 417597894 955778792 955778792 858795008 416415232 416415232 382305300 382305300 358633970 341551070 337210024 337210024 294669768 360501162 932214016 932214016 950732150 950732150 689541499 812789830 812789830 965890370 965890370 953423267 806142976 137548548 877453824 877453824 79753384 92532840 92532840 329190754 329190754 313995826 940224866 940224866 446798076 314337804 463347318 463347318 219540012 219540012 821634890 821634890 706299520 706299520 202637316 174328464 646128079 784935176 784935176 999245558 999245558 950383751 763067545 462545526 70601340 999428727 999428727 302649431 671822131 671822131 607513146 613109748 613109748 138621620 89705636 90323236 189074232 189074232 259289224 259289224 168862166 415055920 415055920 995246598 995246598 570687809 65964800 158916072 458157344 458157344 197429720 278154618 646999749 646999749 952142454 952142454 498124708 812221769 812221769 766027172 703071717 702613058 307246171 553125683 847092761 847092761 840022259 590577920 691284049 1009094690 1009094690 1032204655 1032204655 929058678 945984151 945984151 877116299 877116299 507551814 721719810 721719810 637786184 151253028 510011514 510011514 490015196 490015196 471224442 471224442 368124351 414442326 414442326 538773588 714679893 714679893 705485684 705485684 50334037 403740288 403740288 281726740 307532368 309991314 309991314 322681264 1033699826 1033699826 1001525639 1001525639 980322504 165895952 170023808 170023808 34027544 216627264 389576838 626447322 805702163 805702163 619022683 1007190284 1007190284 481583311 147006598 148323012 407179842 407179842 12062208 12062208 8664832 10750224 41943120 42075456 42075456 11146560 96727272 96727272 610704888 627571113 868818950 868818950 474793110 609319298 829702564 829702564 522873194 810027457 810027457 684529196 433005130 809241519 970785549 970785549 124322448 145382596 145382596 36226320 128835840 128835840 115569032 119802168 119802168 100829220 105757132 105757132 134699808 286702790 286702790 140539152 302744902 302744902 57813988 159856740 266132980 268634650 268634650 221578188 320369806 320369806 260576312 163668048 163668048 109182984 47984640 39710352 46222912 142495544 259252736 259252736 138914816 42743492 35122704 9090068 174749748 174749748 285498332 519994706 519994706 260432024 260432024 159959716 159959716 592448422 728852634 728852634 740354226 880884759 923432971 1036688527 1036688527 986060879 415702133 547535890 715568822 715568822 805832713 805832713 561512875 890208554 890208554 889735177 881061952 288030722 277398594 271114274 545858688 700889381 700889381 939606535 939606535 816050499 816050499 688416038 278815552 295825666 295825666 414667364 414667364 157471140 167661120 167661120 138593284 138596484 188750848 188750848 142934304 142870596 142870596 296093826 840964376 840964376 585294074 868824424 868824424 855814408 813752434 813752434 603324608 618750776 618750776 572458112 575090817 575354001 643645492 763024445 763024445 829538560 829538560 539121839 539121839 476685710 476685710 862939478 862939478 694366629 694366629 12848165 581888017 842282358 842282358 822762830 973350466 973350466 136573707 603781944 603781944 561012388 85063864 13841088 92416384 106473640 129066504 129066504 65340648 37636592 22126976 22126976 26796544 26796544 19102976 19102976 2281728 10644032 10644032 71455936 567160616 567160616 632767840 635572713 635572713 627316841 620757033 628697001 628697001 580155680 600258801 883360528 883360528 353633184 353633184 529567126 529567126 335809024 335809024 261354108 261354108 122369208 203740104 212193052 212193052 208278924 206184784 182584464 182584464 145364292 504054276 504054276 344473817 843629715 843629715 851200000 851200000 587257873 952210560 952210560 936372972 936372972 705506325 278881455 1031143685 1031143685 591567336 630203248 630203248 131178912 540033272 540033272 67374280 667755712 667755712 349045041 268894464 268894464 186762548 253542456 253542456 101187620 606832803 606832803 356741779 881667147 906249291 906249291 705506325 705506325 973224161 973224161 881399856 881399856 718157032 813027495 813027495 452275234 678469225 678469225 536632606 320338710 320338710 479400456 479400456 854657677 854657677 538393089 516008054 583786001 844474064 844474064 593008400 574812721 685269532 685269532 575742609 138478101 594842457 594842457 205592320 75152140 102446089 622210101 622210101 729630720 729630720 79959840 93984360 93984360 688129545 688129545 152586252 559391405 559391405 106306696 206215785 206215785 698762745 698762745 775374045 802314717 802314717 781652884 42867792 107328272 107328272 69065292 795700897 795700897 572817737 996263559 996263559 345761608 345761608 138003384 740364864 1067350618 1067350618 589764248 889223710 889223710 434911590 247990716 275098110 567067828 761286497 761286497 722570697 722570697 547066609 722579688 722579688 635589929 635589929 627081224 627081224 420531338 558113482 885078067 885078067 592325248 450367126 450367126 244585630 806786695 806786695 454338966 806420997 806420997 7348480 113942080 492168522 492168522 527491498 527491498 76494278 532918700 532918700 362990342 377559994 377559994 384902008 384902008 112508640 375669818 375669818 343424292 371698008 1012474114 1012474114 432197862 432197862 394410356 347471114 444155528 459017910 459017910 184965762 151907364 224734282 260656294 437026832 437026832 423718580 423718580 426410252 426410252 203450632 203450632 120498564 358353576 358353576 293152138 358280712 371801688 640137161 640137161 628184049 628184049 621282912 591136264 600968650 600968650 354342739 318914625 318914625 46264361 126492867 866462067 866462067 602319186 48683472 43109040 43109040 273858848 289530018 289530018 286624384 345256928 384100611 384100611 359976915 653838297 653838297 320390635 692109477 692109477 943829209 943829209 352499378 605181464 605181464 964929564 1011471079 1011471079 830604320 63102627 17718144 19188882 305703426 541443585 807720322 808328451 808328451 607725321 876170121 876170121 836021385 836021385 14544576 30976210 914393208 914393208 907674651 615294954 613340593 613340593 578863185 578863185 164370919 637718553 637718553 709301849 709301849 233472196 901759136 901759136 986322135 1049237535 1049237535 977672343 951010379 951010379 826615115 826615115 814290371 814478403 862898650 862898650 826294472 826294472 894834923 894834923 761733929 761733929 848636499 943319025 943319025 889847077 401798139 788535627 788535627 466223940 183407936 153881892 398865024 398865024 71618560 513131380 513131380 97014824 149413292 149413292 92374792 92374792 113770544 113770544 266421388 266421388 952074896 988806615 988806615 310155732 539657216 539657216 50331680 922746962 922746962 892863297 892863297 814953990 840077842 1040113647 1040113647 864340083 949126195 949126195 667305190 316546298 419187698 460588304 460588304 432050602 432050602 307286452 221661728 317131218 317131218 442006748 442006748 931683124 931683124 179437760 894878000 957797034 1012926863 1012926863 506661268 238759600 238759600 173402772 173402772 721453242 721453242 524828743 276356121 1001492902 1001492902 625557999 843911984 975307035 975307035 724650917 261218940 916472978 916472978 871932200 808452867 429916773 968958183 968958183 859899046 859899046 845735331 845735331 560473282 964167591 1037948201 1037948201 291102235 578718298 652875225 652875225 643965504 303248416 611063113 611063113 352268774 311569824 456562115 456562115 491827769 696979736 696979736 565429756 446451318 446451318 550121053 550121053 785157873 785157873 722177184 722177184 695861841 695861841 692199472 692199472 176186464 176186464 821310978 954130119 954130119 691845729 30503746 479889507 824692940 946003035 946003035 811862307 826351873 909381937 909381937 637811283 541331136 541331136 1008214668 1008214668 207169027 4989440 2146560 0 309363328 309363328 3146514 2146560 40143488 281076352 341764288 341764288 340539080 240302484 240302484 262700580 990988148 990988148 640100548 765886061 765886061 884649238 884649238 453835429 862370466 862370466 453674450 453674450 584352704 584352704 600218708 600218708 713913902 1005720829 1005720829 251924943 695730221 873508133 873508133 893929353 1010993815 1010993815 504241182 587782191 587782191 118560138 89371008 121635000 121635000 103811850 129500832 244198413 922689529 922689529 405016891 904272725 904272725 278020357 681715743 681715743 615974482 615974482 823303976 823303976 598513507 304613721 585173841 806725816 806725816 70354944 70642440 70642440 71736088 390353808 390353808 657940721 657940721 630648947 628562800 579863121 689306609 689306609 565235940 303059554 388535074 388535074 129858856 129858856 101093448 851896320 851896320 606258432 648858969 648858969 8684825 1233408 671305728 831842310 991044165 991044165 692109407 967195392 967195392 1015797392 1015797392 971663812 971663812 529873984 39995456 48683472 136512336 148947408 148947408 43536592 43536592 482477072 482477072 194249636 583414019 583414019 532725400 737759691 737759691 327555186 363376924 363376924 973401420 973401420 947988493 1019529397 1019529397 847421586 363062502 188920920 205546284 205546284 231480020 236868824 236868824 233861520 233861520 172399456 1045189264 1045189264 143000224 42092736 42342480 824184268 824184268 342760135 565351106 565351106 701489854 701489854 304386520 547724120 547724120 352762323 464109510 464109510 411890804 546951782 801557713 801557713 450421997 997609128 997609128 814478403 814478403 819672771 819672771 274782147 6114306 298861186 298861186 276955648 436209670 855773235 889996005 889996005 785678463 713606229 651390141 687190906 687190906 631977321 631977321 941134912 941134912 664054465 580240985 352982058 488366596 488366596 137363456 959484680 959484680 829702472 829702472 280320241 126612600 126612600 705389440 705389440 45138768 45205072 45205072 617644188 671687685 671687685 566795614 1036040576 1036040576 809910313 550508225 417597894 955778792 955778792 858795008 416415232 416415232 382305300 382305300 358633970 401538766 401538766 339606100 370455606 370455606 618935432 618935432 950732150 950732150 808452866 271581955 351410994 594230288 953423267 953423267 455666999 455666999 137548548 167298722 218682380 218682380 218475523 562206963 562206963 323652803 940224866 940224866 843319443 839123072 981516653 981516653 371433356 371433356 842177038 956711995 956711995 706299520 908101192 908101192 646128079 784935176 784935176 999245558 999245558 968921986 848435683 136741329 67248200 67248200 71548600 100705288 100705288 67715096 67715096 36490512 2713616 69086976 156928264 207609780 207609780 189074232 118827576 168862166 168862166 433103524 433103524 995246598 995246598 570687809 672170468 672170468 461859097 458157344 419646184 473588172 646999749 646999749 952142454 952142454 498124708 812221769 812221769 766027172 703071717 702613058 307246171 553125683 847092761 847092761 840022259 595350833 691284049 749153388 755971861 1032204655 1032204655 1048158560 1048158560 945984151 383839064 983614227 983614227 483146276 496897758 496897758 411548184 431317684 444021654 490015196 490015196 515281194 515281194 221286690 60820816 416417856 538773588 714679893 714679893 704652821 451971077 451971077 816975175 816975175 650301657 650301657 577159509 572893835 572893835 322681264 151430626 71039760 129137920 163822456 165895952 177848708 177848708 46867644 90777000 90777000 657206320 657206320 912863448 912863448 1007190284 1007190284 481583311 345245770 414254790 414254790 407179842 57415664 433530194 433530194 146357076 40705260 161861076 172870812 172870812 96727272 96727272 610704888 627571113 635454757 635454757 214484172 210283984 829702564 942607188 942607188 755228142 1057157154 1057157154 143732728 258739644 258739644 134029892 213975524 213975524 145382596 218109340 218109340 128835840 115569032 119802168 119802168 109216824 109216824 105757132 240193506 301228700 301228700 140539152 302744902 302744902 135927332 75498204 265952424 268634650 268634650 260094188 320369806 320369806 260576312 142741572 179150008 179150008 103427532 83128720 98980512 172501300 172501300 174401916 174401916 101409144 154995804 244068132 244068132 174749748 285498332 519994706 519994706 139249032 136889604 159959716 159959716 592448422 728852634 728852634 740354226 880884759 923432971 1036688527 1036688527 986060879 415702133 547535890 715568822 715568822 410393296 829722624 829722624 72931082 630251136 630251136 614127177 277398594 558548322 820122051 820122051 683757156 683757156 697820260 697820260 27782401 164627140 164627140 13977216 13977216 1997824 6508288 24106368 24106368 21911716 134792196 138593284 138596484 188750848 188750848 92816608 92849256 92849256 23969992 75521120 97379560 97379560 29537280 76142048 76237280 76237280 603324608 603324608 593233664 572458112 572458112 575090817 575354001 643645492 763024445 763024445 760207532 258145837 539121839 539121839 476685710 476685710 813808039 813808039 114688 0 0 587956529 842282358 842282358 822762830 973350466 973350466 736860600 603781944 603781944 561012388 85063864 29500032 110250416 110250416 91346984 103697752 103697752 48177928 22126976 22126976 18651392 21632736 21632736 26325792 31771104 31771104 14295408 118048560 121972920 121972920 296558746 296558746 544333792 923648674 923648674 837037225 837037225 323079315 103301928 373664490 373664490 353633184 353633184 529567126 529567126 335809024 335809024 261354108 261354108 121635000 203740104 212193052 212193052 208278924 206184784 182584464 182584464 270671170 504054276 504054276 420333832 420333832 487860596 851200000 851200000 184551444 184551444 0 0 0 131072 135168 450035986 450035986 285343748 595732554 595732554 131178912 540033272 555552258 890249792 890249792 914817040 914817040 776967404 448884900 138478592 253542456 253542456 473074688 473074688 359587242 1053724526 1053724526 271531072 271531072 407581830 407581830 365442240 711727447 881399856 881399856 718157032 813027495 813027495 457641474 678469225 678469225 536632606 396900538 396900538 479400456 479400456 711085326 711085326 805311616 810161283 810161283 811369152 838374305 846210770 846210770 642810441 642810441 130571336 123472128 594842457 637244269 739681672 739681672 650939449 650939449 608799089 729630720 729630720 793794596 793794596 766857268 768822072 768822072 152586252 559391405 559391405 105016842 222840872 347290990 347290990 617734236 832371462 832371462 781652884 781652884 388405530 385067912 107328272 69296736 795700897 795700897 572817737 996263559 996263559 345761608 345761608 138003384 740364864 1067350618 1067350618 546228848 889223710 889223710 434911590 247990716 275098110 567067828 761286497 761286497 722570697 722570697 652299336 652299336 633029480 635589929 635589929 627081224 627081224 68492401 558113482 885078067 885078067 306381313 172297408 172297408 143295616 437863440 437863440 208207968 350842382 350842382 223946216 223946216 492168522 492168522 527491498 527491498 168377428 532918700 532918700 362990342 377559994 377559994 384902008 384902008 304552914 375669818 375669818 305336464 371698008 874473472 1005722113 1005722113 467929590 938384890 1035266975 1035266975 648643169 574885553 594031537 818623105 818623105 714167746 437026832 437026832 191559328 389682220 426410252 426410252 86097964 120498564 120498564 358353576 358353576 293152138 358280712 371801688 371801688 119273016 628184049 733659593 829949859 829949859 840699411 928400507 928400507 919229393 292082656 88162312 80790528 866462067 866462067 602319186 48683472 43109040 43109040 273858848 289530018 289530018 286624384 280051771 384100611 384100611 359976915 653838297 653838297 320390635 692109477 692109477 943829209 966328864 966328864 808518417 890769676 964929564 1011471079 1011471079 563356226 865985155 865985155 861842944 17486880 16815104 559276544 559804065 591405256 591405256 377703673 114208858 126378016 126378016 25685984 544095200 544095200 907674651 907674651 329726322 613340593 613340593 578863185 578863185 169545748 772728448 772728448 709301849 709301849 762208304 901759136 901759136 878632587 878632587 832974025 832974025 951010379 951010379 826615115 826615115 814290371 814478403 862898650 862898650 826294472 826294472 628147113 628147113 545271938 276959298 276959298 276959298 269224962 302779410 302779410 389546484 466223940 466223940 398066044 398066044 287743576 64962288 71618560 513131380 513131380 472886734 472886734 403847176 92374792 92374792 93079496 96340432 271158632 357073928 626001248 789851966 789851966 761005649 809712933 809712933 674108423 674108423 403316501 892863297 892863297 684332724 684332724 1040113647 1040113647 864340083 949126195 949126195 667305190 316546298 96917568 377895684 377895684 70915848 70915848 221661728 221661728 185647668 185647668 104123160 157433960 715834764 715834764 247121365 894878000 926157239 976411028 976411028 506661268 238759600 990969882 990969882 474333373 721453242 721453242 524828743 433706130 121940798 172922308 625557999 843911984 975307035 975307035 261218940 261218940 916472978 916472978 871932200 808452867 702620982 29442565 411813542 826512515 826512515 679654436 403280067 560473282 964167591 964167591 414712033 53084113 856336363 856336363 301576594 119555258 342009344 342009344 352268774 352268774 311569824 54925488 54925488 456214030 585688312 585688312 247480822 311476818 396361942 396361942 318767252 139205100 164622228 164622228 56393296 140694304 148058196 151200484 151200484 176186464 176186464 1171968 1697280 1697280 9353920 14113856 344459264 616687808 946003035 946003035 811862307 826351873 909381937 909381937 856875129 739320908 739320908 681366280 891153604 891153604 890514048 204835592 373551744 373551744 309363328 3146514 2146560 40143488 45652496 341764288 341764288 270078656 178446365 253429637 253429637 990988148 990988148 495198637 310999408 310999408 884649238 884649238 453835429 862370466 862370466 849044404 688493008 34597904 34597904 33942032 543205930 543205930 875152012 962457381 962457381 767372933 873508133 873508133 893929353 952373278 1063687599 1063687599 369668152 369668152 335705664 89371008 344195922 346700888 346700888 320406322 244198413 922689529 922689529 405016891 904272725 904272725 278020357 681715743 681715743 584290961 175041501 175041501 5247104 5247104 37103872 334832226 871495595 871495595 589224025 70642440 114245602 655114462 815944007 951488834 951488834 961704602 961704602 885232129 885232129 689306609 689306609 587109776 93607312 235615260 260448572 260448572 109728784 575799465 593370801 593370801 614623353 758711631 841159015 849561955 849561955 671305728 849797141 849797141 824232993 692109407 967195392 967195392 396496521 690972287 690972287 573510324 573510324 779813488 779813488 731329077 136512336 45101316 287048746 287048746 170803792 170803792 194249636 775584391 775584391 532725400 737759691 763464255 763464255 363376924 1026685031 1026685031 973401420 947988493 1019529397 1019529397 847421586 193015926 188920920 205546284 205546284 231480020 231480020 205663896 233861520 233861520 172399456 1045189264 1045189264 39999839 42092736 42342480 42342480 113323968 906728472 906728472 582280809 701489854 895534917 895534917 396362106 540038312 621806121 876811273 890378137 893649538 893649538 840971120 840971120 823399018 823399018 363139907 549054273 609942875 819672771 819672771 623437169 566619025 663839338 663839338 324014688 436209670 575145105 722258562 785678463 785678463 713606229 801296479 801296479 631387016 631977321 860608315 901226917 901226917 493172654 627378601 627378601 540286215 540286215 423885962 959484680 959484680 829702472 829702472 508631823 345556452 345556452 705389440 705389440 45138768 70984324 138417280 750355525 895677061 895677061 703691354 703691354 369648842 369648842 819254803 819254803 620395806 1070944980 1070944980 659842317 659842317 528585856 752143849 752143849 491702600 401538766 339606100 473592034 473592034 618935432 670167635 670167635 808452866 808452866 682107975 849777776 849777776 773584708 935171928 935171928 455666999 223869612 223869612 230777580 230777580 527261088 562206963 868392384 868392384 843874451 843874451 1041345369 1041345369 981516653 981516653 522664254 487418022 842177038 956711995 956711995 370510479 1055701160 1055701160 877623651 336369992 336369992 958683104 968921986 968921986 848435683 564236500 806826755 806826755 190914996 1007825070 1007825070 1041048095 1041048095 682965361 546058476 201581336 156928264 207609780 207609780 88940440 146605768 146605768 9963072 834222705 834222705 1045787830 1045787830 542513477 672170468 672170468 636173730 924846394 924846394 713956444 783302978 783302978 392877672 392877672 226143244 425843220 425843220 326581170 326581170 169271718 113321544 113321544 275649040 855073234 855073234 595350833 595350833 769240853 769240853 1007112475 1007112475 1048158560 1048158560 415753797 383839064 983614227 983614227 483146276 496897758 496897758 411548184 431317684 444021654 444021654 303074110 515281194 515281194 154173546 33755136 416417856 570493570 844442259 844442259 977537750 977537750 451971077 816975175 816975175 707603733 810268437 810268437 572893835 572893835 201664080 1015794824 1015794824 956692583 940744036 163822456 177848708 177848708 46867644 90777000 90777000 657206320 657206320 912863448 912863448 887397403 537941835 345245770 345245770 414254790 414254790 50071698 57415664 433530194 433530194 146357076 107047096 161861076 172870812 172870812 142113212 792444824 792444824 184196945 990091051 990091051 214484172 649213004 853484757 942607188 942607188 763955261 1057157154 1057157154 1024902319 1024902319 757608387 163329377 213975524 213975524 93197628 218109340 218109340 246702684 246702684 152185576 152185576 109216824 214223052 220126172 240193506 413664123 628249439 1067160403 1067160403 920666815 920666815 651216905 265952424 507174954 507174954 925319907 925319907 864312282 793850036 793850036 210919576 210919576 103427532 156580177 156580177 172501300 172501300 590249249 671298117 716880469 716880469 554309025 554309025 138025472 867700109 867700109 251015644 442106000 442106000 402842880 37857880 504841672 504841672 500171502 500171502 246791316 246791316 136242832 240699036 240699036 67654276 33689616 46634660 410393296 410393296 829722624 829722624 294221897 339845283 814302315 814302315 831308867 831308867 820122051 820122051 683757156 683757156 942754247 942754247 156986021 292481441 810451170 810451170 418517702 404507682 408418148 408418148 142542208 141813632 141813632 6549888 3144960 12588160 84410568 160490533 546907713 575961641 575961641 597425849 597425849 625189008 625189008 559486729 559486729 555204993 24726401 48462352 48462352 35013888 35013888 35838208 36540672 44959824 44959824 40561920 36038928 34104592 34081792 12648896 281635654 569558244 813808039 1007800046 1007800046 626664548 626664548 738837569 738837569 285856320 750882670 750882670 741356996 736860600 382966760 382966760 393637922 393637922 328719066 328359304 328359304 74694160 282425977 282425977 350013114 396151363 906513083 906513083 881886139 881886139 559676993 571741009 808193266 877897528 877897528 876874147 548993224 300151240 296558746 826704000 923648674 923648674 837037225 837037225 861520248 861520248 373664490 373664490 329337720 101835354 126921024 126921024 119030272 119030272 88080552 121634984 121635000 121635000 8421376 134271760 170940864 170940864 209723088 241049244 270671170 270671170 124520112 420333832 765725037 765725037 487860596 479496580 379358489 538968321 538968321 124552666 829287478 829287478 710455166 509616294 509616294 198182996 595732554 595732554 109556265 95120552 555552258 890249792 890249792 914817040 914817040 776967404 448884900 210385088 210385088 150995584 473074688 1017044559 1017044559 1062259629 1062259629 970142439 970142439 958010919 958010919 942775311 942775311 446876118 446876118 174101586 480667108 480667108 457641474 486943640 486943640 396409048 396900538 396900538 371291226 414861212 414861212 544660353 805311616 810161283 810161283 306233490 838374305 846210770 846210770 576926097 130571336 130571336 123472128 117316208 637244269 739681672 739681672 650939449 650939449 608799089 554198945 541107308 793794596 793794596 766857268 768822072 768822072 521586440 521586440 105224368 105016842 222840872 347290990 347290990 381154040 832371462 832371462 202189961 388405530 388405530 385067912 103813400 69296736 289423256 379057546 379057546 101312200 132564200 339235656 339235656 328576002 328576002 109868642 34581064 17118240 127270944 140062724 140062724 212863068 219849264 219849264 253285904 260885628 260885628 126460492 652299336 652299336 640222344 640222344 96501800 101123240 109526120 663215353 663215353 97622177 982329493 982329493 315440214 315440214 172664144 580226071 580226071 444344530 941450691 941450691 531966846 531966846 471604052 471604052 403344968 403344968 168377428 205667636 248335712 248335712 87607080 112319704 112319704 304552914 304552914 318126354 318126354 269892352 314798242 314798242 1005722113 1005722113 467929590 938384890 1035266975 1035266975 648643169 574885553 594031537 818623105 818623105 714167746 174739110 25186272 262803664 262803664 104898688 104898688 83886120 62914776 0 512 1049088 261919424 261919424 226825044 226825044 39458448 946757335 946757335 829949859 829949859 840699411 928400507 928400507 919229393 523161775 697918176 697918176 604499520 91751272 95422440 95422440 31457440 25544808 9511488 15307800 107176392 107176392 307379866 363413338 363413338 360778472 360778472 94372200 214155916 214155916 103317568 708652821 966328864 1037577325 1037577325 890769676 890769676 698669891 698669891 563356226 865985155 865985155 861842944 330244400 315102272 56160192 4718720 591405256 591405256 377703673 114208858 126378016 126378016 25685984 566501906 566501906 539367681 329726322 329726322 312547360 59380800 59380800 822348320 822348320 772728448 772728448 651325632 651325632 762208304 762208304 392535981 109056340 350362952 499034700 499034700 910855434 923197647 923197647 72230816 95486080 95486080 102211152 606010504 606010504 610361888 628147113 628147113 902897769 902897769 276959298 679526888 679526888 677906107 302779410 992480573 992480573 229803248 398066044 398066044 287743576 63507696 17251408 110941906 351067134 472886734 472886734 403847176 88377473 566250541 701238501 701238501 469922702 469922702 626001248 626001248 601151274 761005649 809712933 809712933 674108423 674108423 950842643 950842643 648547091 204607748 976421656 1006841871 1026634019 1026634019 806429187 185606199 106583200 106583200 377367986 377367986 102372526 510097620 510097620 460484192 460484192 430051686 430051686 312743972 157433960 715834764 715834764 612569607 612569607 308341062 976411028 976411028 605415945 605415945 990969882 990969882 617427107 361634922 681273587 681273587 433706130 42916944 42916944 861709322 861709322 571233858 815415235 821349315 821349315 100747143 698975199 731971877 731971877 702620982 838561760 899948427 899948427 895574178 895574178 813768771 823799417 823799417 637933593 616193346 376364442 856336363 856336363 604513921 604513921 342009344 622330905 645667924 645667924 1035970467 1035970467 866969523 456214030 585688312 634945864 989855798 989855798 311476818 239806672 239806672 232358540 232358540 164622228 676638785 708451348 726139605 726139605 562246689 587956368 728957526 728957526 823063206 823063206 143402401 15731370 344459264 958275111 1002577669 1002577669 719458773 318804354 862109746 862109746 856875129 739320908 739320908 681366280 891153604 891153604 890514048 204835592 373551744 373551744 379705672 379705672 8669274 3467776 284795264 284795264 368264744 368264744 221873760 253429637 253429637 472148719 1019417784 1019417784 897825933 897825933 191580614 30105218 437709701 437709701 849044404 849044404 688493008 539324432 585428532 589546324 589546324 674532229 875152012 962457381 962457381 767372933 767372933 157893324 270011252 952373278 1063687599 1063687599 942931987 838863623 335705664 78914136 344195922 529337344 529337344 320406322 421047092 421047092 466507900 978422504 978422504 720162261 149927381 82536576 608580480 608580480 337666825 667194240 905200633 995131783 995131783 666110841 871495595 871495595 589224025 137677572 210425412 655114462 815944007 951488834 951488834 961704602 961704602 885232129 885232129 563833849 587109776 587109776 351404888 419439224 419439224 260448572 68346368 575799465 593370801 593370801 614623353 758711631 841159015 849561955 849561955 413580357 849797141 1054696234 1054696234 984459662 984459662 680193528 680193528 457182857 258292932 573510324 690301021 779813488 779813488 731329077 589303861 167915536 287048746 287048746 160493146 129095502 177192820 775584391 775584391 514607504 692170987 763464255 763464255 322042470 1026685031 1026685031 128242470 113322130 159383664 327233732 327233732 289431778 193633792 193633792 73732848 218630176 218630176 205663896 159799512 156290848 227413084 908727476 908727476 878842016 878842016 341835803 606447660 695410879 906728472 906728472 582280809 177393674 895534917 895534917 396362106 540038312 621806121 876811273 890378137 893649538 993211191 993211191 982462379 823399018 885064456 885064456 549054273 609942875 652211731 652211731 623437169 588869184 663839338 663839338 324014688 324014688 575145105 575145105 558831142 558831142 601555761 801296479 801296479 226993452 1008935089 1008935089 1046997328 1046997328 864397757 864397757 627378601 540286215 540286215 423885962 766490440 766490440 872846048 872846048 508631823 345556452 639410908 684584133 784123793 784123793 604627977 241169092 750355525 895677061 895677061 703691354 807739693 1013264420 1013264420 819254803 819254803 998184651 1070944980 1070944980 659842317 659842317 528585856 752143849 752143849 491702600 367645326 53900804 473592034 473592034 468447688 670167635 670167635 427929658 682107975 682107975 849777776 849777776 773584708 935171928 935171928 650116953 223869612 223869612 230777580 230777580 527261088 527261088 868392384 868392384 289836195 368100330 1041345369 1041345369 727026693 727026693 522664254 487418022 403659543 404793603 404793603 374541082 1055701160 1055701160 877623651 375712337 420157958 958683104 958683104 383588976 988099255 988099255 806826755 806826755 445194884 1007825070 1007825070 1041048095 1041048095 805788737 963634903 963634903 854120496 892676907 892676907 676305816 433059544 344567962 545713408 834222705 834222705 1045787830 1045787830 542513477 542513477 262069884 636173730 924846394 924846394 713956444 875615887 875615887 480463722 514925039 995775239 995775239 544945425 578500497 940035990 940035990 311570001 844708867 844708867 855073234 855073234 572716419 590762788 769240853 769240853 1007112475 1007112475 1012545219 1012545219 415753797 211124872 436239182 436239182 416852104 205435988 268939280 302303250 302303250 318978452 386927130 386927130 456310884 456310884 1051510374 1051510374 850542245 978962135 978962135 844442259 977537750 977537750 312479058 312479058 415175251 707603733 810268437 810268437 208980556 806670225 806670225 1015794824 1015794824 956692583 940744036 238978752 238978752 71314738 788352675 903922155 1032016912 1032016912 799166180 799166180 250509660 970448106 970448106 907404941 907404941 439967376 833294001 833294001 43591056 45089728 45089728 45089616 107047096 109094928 109094928 741476901 741476901 792444824 792444824 739307544 990091051 990091051 298456290 649213004 853484757 853484757 843450515 763955261 874575880 874575880 1024902319 1024902319 757608387 537137192 224531489 306557746 994606645 994606645 215432776 246702684 554754381 554754381 152185576 58906720 214223052 220126172 220126172 413664123 628249439 1067160403 1067160403 920666815 920666815 651216905 237897040 900770426 900770426 925319907 925319907 864312282 793850036 793850036 210919576 210919576 36977312 276068882 276068882 138748676 972437076 972437076 684534981 716880469 716880469 554309025 554309025 300418530 867700109 867700109 317383296 442106000 442106000 483069390 483069390 794888540 1005396200 1005396200 583305682 867254623 936452859 936452859 945603099 945603099 323537845 645915066 645915066 645859506 560429347 812717985 822706433 822706433 809500674 814302315 814302315 831308867 831308867 697250976 697250976 675463905 675463905 942754247 942754247 156986021 292481441 810451170 810451170 418517702 404507682 408418148 408418148 142542208 141813632 141813632 6549888 6549888 167827680 167827680 160490533 546907713 575961641 575961641 597425849 597425849 625189008 625189008 559486729 559486729 555204993 573229440 573229440 547698640 47414912 575721552 576317073 576317073 581083344 583326657 583326657 616046210 616046210 572806595 539217930 281635654 569558244 701317703 1019452266 1019452266 626664548 626664548 828005600 828005600 967655944 967655944 750882670 401672507 174437526 382966760 382966760 393637922 393637922 328719066 328359304 328359304 109223866 291384872 291384872 350013114 396151363 906513083 906513083 881886139 881886139 559676993 571741009 808193266 877897528 877897528 876874147 548993224 300151240 86930304 826704000 826704000 12970176 38020592 568700208 861520248 861520248 78653187 398657608 398657608 8652866 149487956 149487956 129017576 170959352 170959352 161554916 125829956 83886120 261187800 261187800 254018368 182637824 209723088 241049244 241049244 101468372 105157320 281619887 765725037 765725037 426847745 379358489 379358489 538968321 538968321 124552666 829287478 829287478 710455166 509616294 509616294 725103088 725103088 577945232 563448581 563448581 122233376 657342104 781860033 781860033 990846508 990846508 673726166 989138704 989138704 134946448 341934157 1017044559 1017044559 1062259629 1062259629 970142439 970142439 958010919 958010919 942775311 942775311 445780566 445780566 409377842 66835712 64037616 37767072 486943640 486943640 396409048 1045057539 1045057539 874772963 757187035 757187035 544660353 570708880 839858378 839858378 638889993 639184914 639184914 54629730 61980848 61980848 0 0 2113664 6340992 16843904 23717024 25788496 43835952 43835952 11172288 35492800 72173936 72173936 194555653 556629369 976471279 976471279 651955418 651955418 143221953 584573862 584573862 671053178 1024784827 1024784827 932375134 439653058 439653058 111317896 107305048 46184656 46184656 289423256 379057546 379057546 358220490 336686210 307586848 356116266 356116266 328576002 270701866 270701866 122670592 323689434 429464606 429464606 246417484 530327074 530327074 253285904 260885628 741188672 741188672 80219037 71303304 640222344 640222344 50992176 118092816 118092816 663215353 663215353 286080530 982329493 982329493 315440214 315440214 172664144 580226071 580226071 532228744 941450691 941450691 531966846 531966846 261051338 94058088 95484456 115680672 115680672 50582504 111040272 111040272 87607080 593073321 593073321 283058666 920862427 920862427 269892352 851179347 867858033 867858033 629674552 467455734 467455734 233702242 246867084 451004136 451004136 432978054 181391394 302010148 406718228 406718228 315000498 251136222 262803664 342557908 439252300 439252300 136763652 118662788 375148696 375148696 373595266 308710570 330524020 340472970 342870272 342870272 946757335 946757335 484986180 557375090 557375090 1002986076 1002986076 612567866 612567866 702930880 702930880 627650336 91751272 95422440 344669202 344669202 45097536 70667392 70667392 107176392 107176392 307379866 363413338 363413338 360778472 360778472 82438628 214155916 214155916 169218992 708652821 708652821 1037577325 1037577325 716276607 816395135 1018372457 1018372457 563356226 563356226 313661475 330244400 330244400 545042978 809027553 809027553 567092227 567092227 15590016 106359640 106359640 26459968 26459968 566501906 566501906 573098498 573098498 96605490 120099529 618169331 618169331 984127799 984127799 752695836 752695836 651740889 536905432 612040716 612040716 892942259 892942259 386015531 499034700 499034700 970245264 970245264 923197647 72230816 893520715 893520715 364062442 832973561 849515955 858476882 858476882 638657192 902897769 902897769 275776386 679526888 679526888 677906107 280240728 992480573 992480573 172492336 134217732 4 0 0 0 89272328 89272328 82176456 160204812 226545380 226545380 566250541 701238501 701238501 469922702 469922702 749038030 749038030 1039717389 1039717389 865116994 316692336 316692336 805444865 950842643 950842643 343019520 343019520 976421656 1006841871 1026634019 1026634019 806429187 885133408 885133408 890914313 890914313 623257096 623257096 510097620 510097620 460484192 460484192 430051686 430051686 312743972 233373012 538968336 579180357 612569607 612569607 853960671 853960671 579077806 605415945 605415945 721537084 721537084 617427107 361634922 681273587 681273587 325982860 617058858 779425033 861709322 861709322 571233858 815415235 821349315 821349315 52159952 52159952 12138048 143131716 143131716 838561760 899948427 899948427 895574178 895574178 813768771 823799417 823799417 637933593 910773352 910773352 899419755 883437219 902366787 902366787 629534338 622330905 645667924 645667924 1035970467 1035970467 866969523 442032654 562668760 634945864 989855798 989855798 455099168 455099168 409469288 232358540 232358540 152996244 676638785 708451348 726139605 726139605 562246689 587956368 728957526 728957526 823063206 823063206 544409792 610617317 661404421 958275111 1002577669 1002577669 908334400 915283035 915283035 598378779 587251761 68422152 385629786 385629786 92550112 92550112 365691946 365691946 395183720 395183720 379705672 379705672 60969336 302631954 302631954 284795264 400738280 400738280 362936392 362936392 51341392 64128672 1019417784 1019417784 995141741 897825933 68945945 122880 12681408 33554448 268509824 284316992 284316992 539324432 585428532 589546324 589546324 674532229 692174888 692174888 301007938 893985376 893985376 746240741 746240741 852397384 852397384 942931987 942931987 838863623 182452692 198969120 198969120 1026623345 1026623345 832833053 832833053 421047092 570471704 978422504 978422504 720162261 149927381 105475744 856721528 856721528 337666825 667194240 905200633 995131783 995131783 666110841 666110841 122775756 122775756 137677572 210425412 282336064 408909130 408909130 225669418 231394340 281467074 407728712 420307654 420307654 146168428 351404888 351404888 419439224 419439224 120664608 69746816 49808672 49809360 49809360 42991776 42991776 26486784 26486784 293996544 293996544 293736546 1054696234 1054696234 984459662 984459662 772801248 772801248 457182857 318767154 267074028 690301021 690301021 671097140 589303861 589303861 167915536 176292928 182634730 281859766 353025066 427978262 427978262 403002532 21558976 144007440 145234608 290592004 310516034 413417878 484448466 484448466 168951940 425726408 425726408 327233732 289431778 218433548 193633792 259750176 259750176 217328264 230846860 230846860 147196960 227413084 908727476 908727476 878842016 878842016 671166469 671166469 847388765 847388765 496316954 699616806 876134701 876134701 510168420 493166608 186608134 286450852 956974592 956974592 685714245 993211191 993211191 982462379 622275427 885064456 885064456 268737730 71322010 71322010 552010048 552010048 588869184 588869184 38160416 54710448 189667504 189667504 189453492 173047808 173064852 601555761 601555761 116463040 298129464 1070608750 1070608750 1046997328 1046997328 955542894 955542894 626648745 347899079 679542784 679551045 766490440 766490440 872846048 872846048 26401155 24322656 639410908 684584133 784123793 784123793 604627977 241169092 241169092 180557264 307217739 307217739 807739693 1013264420 1013264420 777292432 710736466 998184651 1060668018 1060668018 179065126 195378432 195378432 753404966 753404966 476748832 393278914 393278914 145255220 145255220 45236224 45273936 137920840 211338828 380290568 380290568 524019264 530715006 530715006 665216544 665216544 760427488 1029112067 1029112067 29602528 46392512 53169233 292177107 851481923 851481923 914524234 914524234 1048880136 1048880136 971534477 826093347 826093347 1041112095 1041112095 322831290 466601334 1031554616 1031554616 788667377 581283001 375712337 420157958 420157958 290517500 383588976 988099255 988099255 296036672 272050690 445194884 551269475 990668932 990668932 985661655 805788737 963634903 963634903 854120496 892676907 892676907 676305816 433059544 344567962 545713408 545713408 195129372 235118964 235118964 176820552 262069884 389023016 425074128 425074128 925140144 925140144 875615887 875615887 480463722 514925039 995775239 995775239 544945425 578500497 940035990 940035990 323635552 844708867 862380065 862380065 10335297 574966512 574966512 859182651 859182651 781853940 610362377 1007494731 1007494731 211124872 211124872 678587209 977408472 977408472 815932095 688003586 492835384 492835384 356851980 386927130 693158565 693158565 456310884 1051510374 1051510374 850542245 978962135 978962135 677241045 977460870 977460870 947944514 947944514 649151048 649151048 1016871433 1016871433 984274263 806670225 806670225 617535112 353374826 365290736 365290736 238978752 238978752 180437260 788352675 903922155 1032016912 1032016912 799166180 799166180 500176440 970448106 970448106 907404941 907404941 439967376 833294001 833294001 187211424 187211424 158105248 150994980 54617228 40708148 57938096 741476901 741476901 791710608 791710608 787655915 787655915 957089941 957089941 298456290 195505558 707824452 707824452 1047004820 1047004820 899339499 899339499 617619639 968888446 1011488828 1011488828 333353679 994606645 994606645 295298658 234971186 554754381 554754381 58906720 58906720 105044992 160326552 160326552 294417936 294417936 443024790 443024790 269877588 12244800 249090844 249090844 1041885918 1041885918 792062817 691711536 691711536 68171840 75631232 75631232 122025986 122025986 603472402 603472402 27329008 972437076 972437076 684534981 684534981 560495845 313430468 313430468 300418530 1047467988 1047467988 317383296 317383296 275783900 483069390 483069390 794888540 1005396200 1005396200 583305682 867254623 936452859 936452859 945603099 945603099 323537845 645915066 645915066 645859506 560429347 812717985 822706433 822706433 809500674 809500674 293636422 293636422 289853570 286088231 31977765 7879104 553363968 553363968 547204929 546711073 20995233 20762400 11195712 11195712 28760944 28760944 22712064 41356448 41356448 40104336 29637072 21632160 167827680 167827680 188850324 188850324 4243584 159853580 159853580 111221016 547687752 547687752 95208777 70332160 143026256 573229440 573229440 547698640 144331920 575721552 576317073 576317073 581083344 583326657 583326657 616046210 616046210 572806595 539217930 278447682 213332774 701317703 1019452266 1019452266 342276170 537594116 828005600 828005600 967655944 967655944 688196713 896343268 896343268 52521152 54599856 54599856 54534144 75714592 75714592 29776376 109223866 291384872 291384872 358687146 366011200 366011200 274327170 274327170 21294082 33312 0 16780352 16780352 58197936 117450544 636621267 636621267 878137994 878137994 846418545 932970170 932970170 646393971 568700208 647561746 838928002 838928002 398657608 406987042 489481206 489481206 185681828 185681828 170959352 161554916 125829956 83886120 261187800 261187800 254018368 183722904 183722904 181933780 182983572 182983572 245669884 245669884 211648860 179445872 179445872 275626764 497550702 497550702 491594766 478682590 549073012 582550640 582550640 193016912 46610640 725103088 725103088 577945232 563448581 563448581 49430376 657342104 781860033 781860033 990846508 990846508 673726166 989138704 989138704 423678372 407031814 407031814 312367650 239079088 239079088 482309276 489035902 489035902 427007430 432422236 432422236 445780566 445780566 409377842 331490564 142251350 192058500 192058500 169755182 415958210 1045057539 1045057539 874772963 757187035 757187035 116141094 282592537 839858378 1041568032 1041568032 789527613 783301212 219933788 620883317 620883317 35047064 76454800 645178256 645178256 740631464 740631464 80063108 12667232 0 0 36928 274933650 274933650 272579712 556629369 976471279 976471279 810814083 651955418 470607986 584573862 584573862 671053178 1024784827 1024784827 932375134 439653058 439653058 305483840 305483840 35942480 35942480 10314816 107258024 358220490 358220490 336686210 307586848 356116266 356116266 387203658 387203658 352249648 691572559 691572559 471283876 471283876 1038812274 1038812274 1036458320 1036458320 839355541 839355541 1069344293 1069344293 1049700985 572851665 572851665 27472224 118092816 118092816 33554448 33554448 286080530 307375760 307375760 196174854 196174854 177307462 137627648 172298128 532228744 532228744 468003318 238026836 102036304 102036304 296729752 382049512 382049512 115680672 131072760 131072760 127781552 127781552 593073321 593073321 283058666 920862427 920862427 589491249 851179347 867858033 867858033 629674552 277642410 349052306 407113784 407113784 250909304 472784142 472784142 435966920 144885764 406718228 498078854 498078854 293509306 272765058 342557908 439252300 439252300 136763652 118662788 375148696 375148696 373595266 329555808 330524020 340472970 898496082 898496082 807372725 807372725 402430677 557375090 557375090 1002986076 1002986076 612567866 612567866 702930880 702930880 627650336 129180032 129180032 344669202 344669202 438626310 438626310 459325878 459325878 255552748 255552748 105817104 331944298 331944298 80781384 80781384 62005552 169218992 402480864 402480864 385215706 681137444 681137444 716276607 816395135 1018372457 1018372457 598741349 599728400 599728400 590556432 37855376 545042978 809027553 809027553 599859251 599859251 128732816 128732816 894354243 894354243 544791712 544791712 832569699 832569699 573098498 623430049 623430049 618169331 618169331 984127799 984127799 752695836 752695836 651740889 751046749 751046749 611911168 892942259 892942259 730915432 981235057 1050931551 1050931551 1040923240 1040923240 169699931 893520715 893520715 364062442 832973561 849515955 858476882 858476882 638657192 638657192 1053933760 1053933760 1049698847 510915072 510915072 322696594 320753330 320753330 357483578 357483578 236066560 236066560 461374550 461374550 345773434 516241528 516241528 479400506 336738444 226545380 215269984 210764364 210764364 298945832 352186314 749038030 833735978 1039717389 1039717389 865116994 316692336 621718532 805444865 805444865 472522812 721531192 798077119 798077119 1067483456 1067483456 556937394 771887200 885133408 885133408 890914313 890914313 623257096 623257096 277308304 277308304 245840220 245840220 206891508 152443428 192599988 233373012 243203080 579180357 579180357 87167784 853960671 853960671 881642594 1062579679 1062579679 608971825 201521696 308280978 588144640 588144640 183429824 325982860 617058858 856405927 856405927 604024925 946467255 946467255 193742049 432150750 514312424 514312424 1065082477 1065082477 821842980 948119399 948119399 945692295 945692295 840745971 50076855 18096128 18164256 622354609 910773352 910773352 899419755 883437219 902366787 902366787 629534338 68496640 34474048 17041440 663110840 663110840 63986385 664517328 664517328 562668760 85652504 131196592 455099168 455099168 409469288 96469364 50694320 50694320 17063968 565453152 565453152 134762496 134927364 545260640 545260640 688913445 688913445 598745352 544409792 612242534 661404421 781711965 781711965 610319316 908334400 915283035 915283035 598378779 587251761 10559808 10559808 210246592 210246592 170056148 365691946 365691946 395183720 395183720 329911480 329911480 140906756 302631954 302631954 66534384 400738280 400738280 362936392 508799881 508799881 169457344 705735816 995141741 995141741 563208247 517507150 517507150 698279285 698279285 578553426 578553426 538369810 310480208 275452240 43035984 43035984 552921896 552921896 473474819 301007938 893985376 893985376 746240741 746240741 852397384 852397384 721698988 721698988 182452692 182452692 255140576 255140576 1026623345 1026623345 832833053 832833053 73078315 570471704 607863824 607863824 367650282 365395926 365395926 856721528 856721528 511877200 301554840 714278832 714278832 930837471 930837471 735257051 560420226 1025139279 1025139279 957536004 573283633 408909130 408909130 1010827023 1010827023 231394340 997537808 997537808 643826073 643826073 549718360 277092560 87464458 144703972 144703972 180415683 811124355 811124355 811124355 614068249 646549417 909579501 949226055 949226055 427482406 796969747 796969747 893746642 893746642 672370410 772801248 772801248 394301533 318767154 267074028 267074028 172415124 172415124 178275328 178275328 44614992 238885916 238885916 281859766 353025066 427978262 427978262 403002532 21558976 153364772 153422116 290592004 310516034 413417878 484448466 484448466 526458152 526458152 425726408 189864170 348626948 521526922 521526922 339958122 441592492 441592492 230846860 230846860 140903904 153093604 1021448372 1021448372 541143377 178258052 671166469 671166469 847388765 847388765 496316954 699616806 876134701 876134701 493166608 493166608 186608134 186608134 956974592 956974592 685714245 565804102 13219584 13219584 8523840 8523840 3578624 2154496 2220288 3627520 3627520 65792 269746186 269746186 70256648 336610050 336610050 541904001 588008481 588008481 975176212 975176212 988757463 988757463 572785032 1070608750 1070608750 1044869260 1044869260 955542894 955542894 626648745 347899079 679542784 679551045 679551045 427885088 368189800 163786924 163786924 495006208 495006208 334237840 241828752 241828752 203036172 36966748 11275264 285347840 307217739 307217739 177418836 477981884 904378854 904378854 864431770 864431770 721539712 721539712 390090508 992423235 1051527671 1051527671 870977580 420218317 526917640 526917640 321988394 346104138 346104138 132711930 77594952 168347140 276955456 530673766 530673766 530715006 533174016 533174016 782473912 782473912 1029112067 1029112067 327491798 155717284 416860258 416860258 8804400 25614432 914524234 914524234 1048880136 1048880136 971534477 826093347 826093347 1041112095 1041112095 835877140 466601334 1031554616 1031554616 788667377 671297541 438788347 582891266 582891266 351676873 324219592 324219592 296036672 296036672 486573068 486573068 209722404 965704900 965704900 428900900 428900900 152666726 10098432 17888900 155923620 155923620 156909056 156909056 431137828 798742788 1016710046 1016710046 324249258 235118964 600746425 637534185 637534185 758256422 827985710 925140144 925140144 758039046 758039046 366168298 351771720 411391092 411391092 101116674 91683120 277328784 317719506 323635552 323750064 862380065 862380065 273491984 574966512 574966512 859182651 859182651 781853940 610362377 1007494731 1007494731 160287085 221636908 678587209 977408472 977408472 815932095 688003586 492835384 492835384 356851980 356851980 693158565 693158565 330560485 570145253 732904821 732904821 726140085 726140085 672406016 672406016 848139782 947944514 947944514 649151048 705027865 1016871433 1016871433 984274263 341436042 341436042 336553544 88105896 83812296 210215436 210215436 253747232 253747232 298950188 298950188 805180176 805180176 217636789 333119112 500176440 500176440 462291702 517212748 517212748 312840404 437592064 437592064 187211424 187211424 158105248 150994980 69027400 69503144 112251272 439344026 439344026 495334084 502515976 787655915 787655915 957089941 957089941 541270145 541270145 707824452 707824452 1047004820 1047004820 899339499 899339499 617619639 968888446 1011488828 1011488828 586407686 931756824 931756824 295298658 234971186 211363404 244851648 244851648 42016776 105044992 160326552 160326552 294417936 876961857 969093351 969093351 948632199 958533927 958533927 249090844 1041885918 1041885918 1017359415 1017359415 691711536 688258056 582408832 216523600 122025986 275112768 603472402 836291746 836291746 674834181 271485777 58128998 378870696 378870696 1030549303 1030549303 785183930 1047467988 1047467988 469426340 469426340 446927730 271455354 371853610 371918778 371918778 351157578 312762928 312762928 352372874 352372874 352421108 352421108 319299634 319299634 459039610 459039610 328110926 824334976 824334976 891779401 891779401 631873665 293636422 293636422 286088231 286088231 556355781 556355781 679515393 679515393 547204929 706266645 733007429 733007429 557615392 179753776 179753776 28760944 22712064 59085792 59085792 40104336 29637072 21632160 79839360 97340552 247812253 604317705 604317705 579112025 640323873 640323873 547687752 548855109 548855109 706164756 706164756 672798768 169938196 144331920 144331920 175631300 178561556 178561556 146817280 40818576 48104000 48104000 35837696 3518592 3206784 6845312 16499328 96540968 219327336 219327336 342276170 342276170 420017256 420017256 482422986 482422986 688196713 896343268 896343268 381630864 381630864 323403186 323403186 377282114 377282114 288339208 90334248 394830923 394830923 358687146 366011200 645972011 864839921 899722875 899722875 569515777 575151569 820006962 891084248 891084248 849074747 636621267 636621267 878137994 878137994 846418545 932970170 932970170 646393971 382730970 647561746 838928002 838928002 344126040 406987042 489481206 535326524 535326524 324347724 207708180 127650376 127650376 187518736 242218764 251226668 251226668 183722904 214305616 214305616 182983572 182983572 245669884 245669884 211648860 179445872 179445872 275626764 497550702 497550702 491594766 478682590 549073012 582550640 582550640 193016912 42755329 179409969 179409969 22749360 63483296 63483296 15079872 40505472 442309848 442309848 332073016 379399770 379399770 303249344 423678372 423678372 407031814 407031814 312367650 389553368 389553368 482309276 729130537 729130537 427007430 1027685537 1027685537 477027726 477027726 331490564 1067022185 1067022185 235406364 768614499 768614499 415958210 415958210 82609608 753083854 753083854 788529508 1049897889 1049897889 371072538 1041568032 1041568032 789527613 783301212 644723448 620883317 620883317 35047064 76454800 645178256 645178256 740631464 740631464 80063108 44616112 44616112 9313344 855620622 914973642 914973642 782940283 1029799104 1029799104 810814083 810814083 650331882 650331882 105676980 0 473476922 473476922 389891854 0 113287192 280440914 305483840 305483840 102522440 102522440 310780784 310780784 347145536 347145536 337192458 272442912 286599714 320620592 387203658 387203658 352249648 691572559 691572559 471283876 471283876 1038812274 1038812274 1036458320 1036458320 839355541 839355541 1069344293 1069344293 1049700985 575131984 575131984 555984256 597783032 597783032 97037160 121752816 121752816 274054690 274054690 196174854 284469058 412634054 412634054 277162050 434405024 434405024 238026836 238026836 168338384 168338384 296729752 382049512 382049512 21497432 131072760 131072760 127781552 127781552 111887424 582237256 582237256 903938442 903938442 589491249 384618683 62226752 291531369 548660955 548660955 635868408 818022525 818022525 698614066 472784142 472784142 435966920 144885764 278139472 498078854 498078854 293509306 272765058 269075424 111892464 111892464 328134360 328134360 351963042 351963042 337041696 337041696 253075144 1059408984 1059408984 898496082 807372725 807372725 768531710 768531710 334310467 182592638 182592638 392263880 392263880 340651176 83139840 89863808 196140294 326633394 326633394 269440276 438626310 438626310 459325878 459325878 255552748 255552748 185880157 185880157 167316516 147593513 815872136 885133515 885133515 447423326 447423326 385215706 730927726 909776667 909776667 682495835 689252901 689252901 598741349 599728400 599728400 590556432 316586258 49732560 271502722 324626896 599859251 599859251 394154770 659946835 894354243 894354243 544791712 544791712 832569699 832569699 65854192 623430049 623430049 619470088 288411088 39849200 130218208 572118021 572118021 243299556 751046749 751046749 575425049 575425049 730915432 1030793746 1030793746 1050931551 1050931551 1040923240 1040923240 888014523 888014523 641913689 641913689 928023098 928023098 373552826 339961226 336601704 336601704 1053933760 1053933760 1049698847 510915072 510915072 322696594 320753330 320753330 357483578 357483578 252481302 252481302 461374550 461374550 345773434 516241528 516241528 479400506 336738444 220284057 716244913 716244913 546295649 741082671 741082671 288623394 833735978 833735978 644948889 644948889 320080434 621718532 806903356 974870297 974870297 721531192 798077119 845317004 1067483456 1067483456 518008869 640422752 640422752 564155313 89967105 6605056 37195952 177528024 277308304 277308304 245840220 245840220 206891508 238349200 238349200 179356636 243203080 267421284 267421284 157545184 176660940 189819202 881642594 1062579679 1062579679 1058545738 1058545738 1007348879 1007348879 588144640 311434402 983350504 983350504 856405927 856405927 542938112 946467255 946467255 193742049 432150750 514312424 534519450 1065082477 1065082477 821842980 948119399 948119399 945692295 945692295 840745971 443133906 173540320 65020608 213747422 213747422 42806352 101983304 101983304 1049088 325422104 337929018 850674576 850674576 816726664 816726664 663110840 63986385 689202741 689202741 583288480 85652504 85652504 725688976 725688976 578048768 144148612 172799124 172799124 736356513 736356513 200932468 200932468 687865904 687865904 537743396 688913445 688913445 151170049 337920 678750796 678750796 428482441 501888385 501888385 946255074 946255074 862570885 822926355 822926355 817120363 820649056 1027213475 1027213475 308183795 484591452 484591452 402653728 402653728 531896964 531896964 407637126 405013888 40506768 38357248 164924080 164924080 229003339 508799881 508799881 169457344 462178141 462178141 460340728 460340728 517507150 517507150 698279285 698279285 578553426 578553426 538369810 310480208 275452240 10906304 3333184 552921896 552921896 82652616 82652616 76350880 32278632 25774080 15812640 26480034 361530986 361530986 389222720 411218227 707846661 737783063 737783063 446817138 405074038 405074038 427225424 427225424 334896114 957987315 957987315 844981764 844981764 709132291 709132291 511877200 511877200 195215892 714278832 714278832 930837471 930837471 735257051 560420226 1025139279 1025139279 957536004 573283633 364552488 158600100 1010827023 1010827023 294908514 997537808 997537808 643826073 643826073 549718360 377967672 381349128 381349128 144703972 180415683 811124355 811124355 811124355 614068249 646549417 909579501 949226055 949226055 427482406 796969747 796969747 893746642 946009857 946009857 776688836 776688836 783236445 1064034469 1064034469 583635957 583635957 732033428 732033428 586399244 148744912 245855112 245855112 269883906 470947798 470947798 692063367 692063367 425463014 806092833 806092833 762939803 214790094 766092934 766092934 668861615 1005034872 1005034872 819134613 819134613 969998749 969998749 525147658 525147658 484577742 441592492 695770964 695770964 580010932 252708520 1058197860 1058197860 1018168068 1018168068 881853003 855326859 1069823520 1069823520 245576028 593637468 810550437 1033012433 1033012433 728861745 763178925 763178925 218366888 218366888 204689455 763412971 763412971 695712169 879829899 879829899 541563136 91473448 360236970 360236970 578104632 915441993 915441993 664297538 70256648 470981948 470981948 939911175 939911175 588008481 975176212 975176212 988757463 988757463 937626040 937626040 379137546 1044869260 1044869260 839174163 801503812 760666797 884463947 884463947 562292998 427885088 427885088 368189800 231911592 231911592 495006208 600839160 600839160 684067329 684067329 673321221 644782049 987189188 987189188 533754219 450366726 320742022 477981884 904378854 904378854 864431770 864431770 721539712 721539712 537795707 992423235 1051527671 1051527671 870977580 581570889 526917640 526917640 330042224 355468074 355468074 476121226 476121226 168347140 168347140 530673766 718189233 718189233 533174016 930692858 930692858 940921357 940921357 685313861 685313861 578209153 852121554 852121554 812779091 306928434 218426576 646481050 713367877 713367877 497823014 967006243 967006243 998740498 998740498 835877140 103809639 214196744 766389540 766389540 671297541 562564388 616606008 616606008 351676873 324219592 324219592 380818248 380818248 486573068 486573068 553948781 553948781 977317888 977317888 907235911 966583955 966583955 872809640 1012085391 1012085391 587644444 360061968 431137828 798742788 1016710046 1016710046 324249258 123925936 600746425 637534185 637534185 758256422 827985710 827985710 566234496 758039046 758039046 240229628 214215992 4443010 276705440 276705440 36004112 299467616 317719506 317719506 323750064 323750064 273491984 273491984 573029696 573029696 36307488 36307488 2147328 221085952 221085952 220588332 91548584 221636908 221636908 844104668 844104668 504371648 504371648 272521398 456788916 456788916 423414166 423414166 423366438 419066756 419066756 320976498 314849408 675481810 675481810 986911426 986911426 819235539 540090885 540090885 503718739 873710855 873710855 917212249 917212249 851051857 851051857 805752656 88105896 165284420 225776480 227091564 253747232 253747232 871408991 1049691809 1049691809 695288760 62263098 333119112 333119112 482607124 482607124 1049963243 1049963243 224553208 704973245 704973245 252555920 252555920 56982160 69027400 69027400 86116760 112251272 537385665 615840025 615840025 602628856 602628856 486581132 237484884 541143169 993743683 993743683 912913810 986784471 986784471 666445140 401298650 586187856 866661499 866661499 215098783 387373337 586407686 931756824 931756824 537762668 767293293 767293293 244851648 244851648 109422624 130472184 130472184 75946424 22720141 876961857 969093351 969093351 948632199 958533927 958533927 21661063 32768 42139648 1017359415 1017359415 688258056 688258056 582408832 216523600 125833640 275112768 459550256 836291746 836291746 674834181 395911946 58128998 378870696 378870696 1030549303 1030549303 785183930 653458116 653458116 469426340 469426340 446927730 271455354 371853610 371918778 371918778 351157578 87235954 80029896 80029896 88605864 88605864 302515218 319299634 319299634 459039610 459039610 899314189 899314189 895089672 891779401 891779401 290006178 290006178 287935648 19713312 2361600 556355781 556355781 679515393 679515393 620937488 706266645 733007429 733007429 557615392 179753776 179753776 29627712 23993760 59085792 59085792 135579140 135579140 19868960 146399012 146399012 247812253 604317705 604317705 579112025 640323873 640323873 252405013 548855109 548855109 706164756 706164756 672798768 143148113 139062400 173163265 173163265 6636224 589697056 688402997 688402997 546777409 1010747287 1010747287 552892921 552892921 805674115 805674115 601918387 601918387 653736921 653736921 633538337 571214865 13861649 553783648 604246376 604246376 470139046 470139046 381630864 381630864 323403186 323403186 377282114 377282114 288339208 90334248 394830923 394830923 388170370 372892768 645972011 864839921 899722875 899722875 569515777 575151569 820006962 891084248 891084248 849074747 615247304 328234872 117962808 301615456 301615456 301209522 315671250 315671250 296273250 296273250 324608320 324608320 283182322 284494808 284494808 535326524 535326524 386337166 386337166 440396420 470346842 470346842 520907842 520907842 466912926 466912926 444641762 535961696 535961696 486906434 356353640 356353640 342411720 93588072 378265482 378265482 296794720 25900128 27837792 27837792 20538112 20538112 3147776 50799924 52723281 52723281 57744288 197155141 562498245 562498245 15079872 575673024 575673024 577114773 711721236 711721236 574490768 574490768 546575556 373037640 319003714 319003714 303710722 389553368 465437722 490433788 729130537 729130537 191654076 1027685537 1027685537 477027726 477027726 295926666 1067022185 1067022185 414113094 768614499 768614499 48641417 688435433 688435433 660698537 399443590 788529508 1049897889 1049897889 371072538 371072538 371072538 378543168 644723448 644723448 130604792 130604792 106432152 216137729 216137729 258147100 258147100 673396129 673396129 575406193 732433643 732433643 855620622 1064435811 1064435811 782940283 1029799104 1029799104 779492253 851492872 851492872 822429819 620830746 528881790 1024269109 1024269109 990605077 927651003 927651003 890361104 33589328 79741448 102522440 102522440 310780784 397298898 397298898 347145536 337192458 387912936 387912936 287122994 303104554 303104554 69131400 14713472 14713472 356565024 723584440 723584440 258516245 824735124 824735124 295399445 471565611 613561414 876103024 876103024 575131984 575131984 555984256 597783032 597783032 97037160 121752816 121752816 148141636 148141636 183552662 284469058 412634054 412634054 277162050 434405024 434405024 166708580 166708580 168338384 383852832 383852832 60642304 60642304 43310336 114812544 114812544 99286376 114955992 625643353 625643353 598409256 772767988 772767988 563346904 132349453 497423585 497423585 548660955 548660955 635868408 818022525 818022525 698614066 101862272 44356064 44356064 34128912 34128912 115654944 115654944 82189384 21663872 80398304 111892464 111892464 328134360 328134360 351963042 351963042 337041696 394981352 394981352 1059408984 1059408984 295570753 450595334 619004423 772004116 971106805 971106805 807606297 364980459 392263880 392263880 340651176 83139840 15079872 196140294 326633394 326633394 396643344 396643344 487358604 487358604 468871056 468871056 525631722 525631722 212288044 113173512 147593513 815872136 885133515 885133515 447423326 447423326 109712216 730927726 909776667 909776667 682495835 689252901 689252901 538917990 404035360 44830800 316586258 316586258 301147266 301008336 568469216 586291091 586291091 394154770 659946835 659946835 126388600 124700440 553009274 553009274 912957320 912957320 606602499 619470088 619470088 200228308 200228308 194949472 46550912 46550912 114436736 114436736 549719040 558232689 558232689 55165088 1030793746 1030793746 161480768 291125231 291125231 699340352 888014523 888014523 641913689 641913689 928023098 928023098 370876578 363596762 363596762 344078976 542839624 942802831 942802831 288933666 288933666 285754376 285754376 340848128 340848128 118261250 252481302 252481302 246349888 246349888 176883028 176883028 225384664 225384664 218759976 220284057 716244913 716244913 546295649 741082671 741082671 288623394 421833382 421833382 644948889 644948889 320080434 604177408 806903356 974870297 1006649344 1006682127 1006682127 851501179 845317004 738226336 489999150 489999150 675601096 675601096 573361425 644924489 653281560 653281560 214043220 214043220 212386908 212386908 76129828 238349200 238349200 179356636 134291460 687386361 687386361 199989004 610585729 610585729 589617700 615795753 615795753 1058545738 1058545738 1007348879 1007348879 553601312 553601312 983350504 983350504 531120365 238027548 171558232 837075394 837075394 583322593 546646593 478232590 534519450 596186139 927193233 927193233 219244560 219244560 448512 121674912 443133906 443133906 659892921 659892921 638134715 548878370 548878370 773513645 773513645 831037657 902121600 902121600 850674576 850674576 816726664 816726664 558682321 29432497 689202741 729900560 734651637 734651637 193975893 725688976 725688976 578048768 144148612 172799124 174412880 736356513 736356513 545852564 713222213 713222213 687865904 195637476 195637476 19235940 145278276 145278276 678750796 678750796 251183013 493169070 493169070 946255074 946255074 862570885 822926355 822926355 817120363 820649056 1027213475 1027213475 940184486 484591452 484591452 773594600 779223965 779223965 543948801 825859718 945741447 945741447 705680226 387017960 387017960 298393826 290006178 230888094 198118484 60503664 127245930 127245930 63908432 177734016 184027092 282004688 419116998 419116998 314262336 34272274 199778292 199778292 158347316 158347316 536897152 536897152 28135169 76350880 76350880 25774080 25774080 6414416 36193984 36193984 276841802 389222720 411218227 707846661 737783063 737783063 446817138 697682548 697682548 859386133 859386133 830871651 957987315 957987315 844981764 844981764 709132291 709132291 480297739 575206963 575206963 986441164 986441164 650278895 670073337 756733470 756733470 550589092 174129231 842343223 871476121 948626578 948626578 279732262 297220962 301567424 301567424 488979062 488979062 137885732 360927232 377967672 381349128 381349128 92935272 221927908 221927908 22540448 292211872 296797890 404736486 404736486 286463622 193929062 175774980 225653700 246033224 392503578 946009857 946009857 776688836 776688836 783236445 1064034469 1064034469 583635957 583635957 732033428 732033428 586399244 205242104 245855112 245855112 269883906 470947798 470947798 695211405 695211405 542658466 806092833 806092833 867559508 938568378 938568378 766092934 668861615 1005034872 1005034872 819134613 819134613 969998749 969998749 525147658 525147658 484577742 495588462 695770964 695770964 580010932 443154896 1058197860 1058197860 1018168068 1018168068 881853003 855326859 1069823520 1069823520 245576028 593637468 810550437 1033012433 1033012433 797578365 763178925 763178925 962599080 962599080 947052934 947052934 763412971 695712169 879829899 879829899 595922000 91473448 360236970 360236970 578104632 915441993 915441993 664297538 457437366 470981948 677260838 939911175 939911175 525430335 537993474 698024097 713174101 713174101 937626040 937626040 379137546 904187516 931711906 931711906 801503812 872416164 884463947 884463947 939886598 939886598 226640512 226640512 249707395 1052051831 1052051831 600839160 833634389 833634389 684067329 673321221 644782049 987189188 987189188 533754219 450366726 320742022 404727908 404727908 404658194 404658194 42963206 503895982 503895982 537795707 537795707 394264698 817633410 1005717484 1005717484 540017937 540017937 926096183 926096183 640815897 537137280 476121226 312545376 421770546 421770546 718189233 718189233 1054945301 1054945301 930692858 940921357 940921357 685313861 685313861 578209153 852121554 852121554 855401505 855401505 845285593 646481050 713367877 744686920 744686920 967006243 967006243 998740498 998740498 826567636 128693744 599727138 732952087 732952087 562564388 562564388 1067491884 1067491884 990727588 738224808 1005650040 1005650040 380818248 273514906 273514906 776297098 855755403 977317888 977317888 914990176 966583955 966583955 872809640 1012085391 1012085391 790739204 790739204 749013832 252925768 252925768 230341596 230341596 123925936 153522700 153522700 35180508 100263912 240934030 370015954 380615942 380615942 313474386 313474386 310521088 335922088 335922088 396342424 396342424 299467616 299467616 314338818 314338818 443097152 443097152 426362982 573029696 637169811 637169811 267671460 1021743802 1021743802 791663761 704887085 437981281 328389234 324276652 136480436 821430288 1041503592 1041503592 283119936 456788916 456788916 423414166 706165269 706165269 419066756 600823765 713692245 737341205 737341205 675481810 986911426 986911426 819235539 547458640 540090885 808012040 873710855 873710855 1017732173 1017732173 1007102477 1007102477 805752656 872539686 946543909 946543909 761840556 675599489 675599489 1034450830 1064254911 1064254911 871046701 767050345 927342564 927342564 534561822 534561822 1049963243 1049963243 484069932 704973245 704973245 252555920 252555920 56982160 85695288 85695288 105148600 512100778 993411188 993411188 693014007 734529137 997639227 997639227 673321221 675567232 993743683 993743683 931830819 986784471 986784471 740132597 401298650 630672464 866661499 866661499 791002933 58395601 269272896 498983424 498983424 537762668 767293293 767293293 230902297 124728560 124728560 196793124 196793124 244339832 244339832 685019936 688050213 688050213 815794446 815794446 397232721 404173322 404173322 219075880 219075880 219031544 219031544 21976448 21976448 125833640 125833640 396820883 933681531 933681531 799279485 799279485 452642691 623875918 725999007 881853003 881853003 654620372 710744068 710744068 689982449 64523536 85902752 92459112 247534352 524685518 683751448 683751448 646123737 574828593 466704433 454544690 459140790 487425764 487425764 252183612 194196084 387708744 424307299 899314189 899314189 895089672 89968296 70494016 290006178 625227205 625227205 155249740 214748364 609060332 609060332 141159725 93104424 620937488 657069369 657069369 86088001 44952912 44952912 29627712 29627712 35991568 35991568 2496768 135579140 135579140 24614464 146399012 146399012 228447052 228447052 44952912 237217884 237217884 113557576 130539152 550849532 790749501 790749501 595315600 595315600 143148113 139799172 173163265 708143632 748057245 748057245 688402997 688402997 688409832 1010747287 1010747287 552892921 552892921 805674115 805674115 601918387 601918387 653736921 653736921 633538337 571214865 98377224 553783648 604246376 604246376 79752512 79752512 112980448 117729304 295836664 391592634 391592634 113746248 113746248 51094024 355202346 388170370 388170370 372892768 372892768 315663952 315663952 54013554 61102336 61102336 27447648 28840672 36559384 124242440 559425211 559425211 854831658 854831658 393106539 640702346 643640985 842272313 863316915 863316915 818215347 563552418 8388672 239364472 335834832 335834832 147106224 742876741 742876741 440396420 544072465 787889219 787889219 520907842 466912926 466912926 444641762 535961696 553648693 553648693 356353640 356353640 964690023 1031340263 1031340263 932514983 932514983 911683335 911683335 960248889 960248889 857726496 1065718588 1065718588 1032324207 843042912 243011856 197155141 562498245 562498245 12847296 575673024 575673024 577114773 711721236 711721236 574490768 574490768 546575556 84250352 84250352 4771968 43024896 43024896 465437722 490433788 490433788 303226352 303226352 291469990 412836806 412836806 389459446 389459446 295926666 192943394 414113094 414113094 313298964 172108306 688435433 688435433 660698537 654417945 654417945 662961017 662961017 256994041 675356600 757873997 757873997 378543168 664864668 664864668 626096556 106432152 216137729 216137729 258147100 258147100 673396129 673396129 575406193 732433643 732433643 610440407 1064435811 1064435811 523222090 745611758 745611758 612630602 851492872 957399040 974244391 974244391 810023043 1024269109 1024269109 990605077 927651003 927651003 890361104 56318080 67220496 67220496 12591168 28700032 397298898 397298898 65627448 97790688 387912936 387912936 391908738 391908738 303104554 316666256 775417911 775417911 106951320 723584440 723584440 1041310666 1041310666 935047277 935047277 802321319 501867158 876103024 876103024 625478936 636717632 636717632 80154944 80154944 58033200 58033200 25352560 62172576 62172576 58577392 39873808 39873808 310198080 310255506 401694850 401694850 365878506 40319376 361885394 383852832 383852832 40968208 339841056 339841056 357362760 357362760 106228368 114955992 625643353 625643353 598409256 772767988 772767988 774457067 774457067 497423585 497423585 159283283 155398308 140892448 424285350 424285350 407113954 510937782 526392984 526392984 266507500 266507500 232037356 361370720 361370720 323078392 323078392 125986772 177159252 522353580 522353580 484913930 269409282 96395112 394981352 471937280 543558984 952632519 952632519 450595334 619004423 883696721 971106805 971106805 886385355 612055271 767339884 767339884 683013193 632784040 632784040 100650728 100650728 108898208 396643344 396643344 487358604 487358604 468871056 468871056 525631722 525631722 212288044 33029088 557391498 557391498 548900616 548900616 307568834 281094802 102768704 117786064 117786064 207154344 350080760 350080760 416684724 416684724 404035360 55050496 334505010 334505010 865570819 865570819 568469216 568469216 807548034 807548034 543761793 926705941 926705941 578026026 578026026 835048093 912957320 912957320 606602499 488508872 488508872 445419580 262911456 194949472 735370141 735370141 114436736 634653057 634653057 558232689 558232689 282935153 1027386417 1027386417 858130468 858130468 286099764 35182470 385982496 431026488 431026488 320934048 73658760 489851735 489851735 423624870 423624870 845389753 845389753 942802831 942802831 833159897 833159897 355475600 713032189 713032189 340848128 119835530 119835530 140509572 272357232 467739126 467739126 176883028 220262712 220262712 218759976 218759976 242972564 242972564 264598452 806404096 806404096 806355459 806355459 806355459 419817510 956628006 957275175 957275175 604713993 604713993 1006649344 1006682127 1006682127 851501179 541517955 303094001 489999150 505643049 675601096 725538327 991878711 1025416687 1025416687 851991280 339876808 399507506 399507506 363877342 497305918 497305918 364370332 138817820 89157712 687386361 687386361 199989004 610585729 610585729 589617700 615795753 615795753 569787905 226908336 143675953 4991616 553601312 553601312 228708420 228708420 238027548 238027548 171558232 837075394 837075394 583322593 973611627 973611627 580597329 596186139 927193233 927193233 300296232 526387658 526784958 526784958 121674912 250217780 659892921 659892921 638134715 548878370 548878370 773513645 773513645 831037657 902121600 902121600 382618583 952240837 952240837 840297809 840297809 538153553 538153553 729900560 734651637 734651637 193975893 182243028 171983234 317967556 317967556 193949360 174412880 174412880 172318532 545852564 713222213 713222213 56364709 195637476 195637476 19235940 145278276 145278276 538210432 1009569039 1009569039 946641235 921049563 629238623 883961725 883961725 489689886 740589930 740589930 824349962 824349962 940184486 940184486 757767277 481330612 773594600 779223965 779223965 543948801 825859718 945741447 945741447 705680226 387017960 387017960 298393826 290006178 230888094 198118484 60503664 378716294 406901338 406901338 65510572 160239928 192073186 213835596 505639424 505639424 454298166 454298166 693359525 693359525 187776100 536897152 599413308 747650445 747650445 594913785 609316680 609316680 555819297 537977632 92275544 92275544 127696944 198868776 198868776 196346560 39873364 184821344 697682548 697682548 859386133 859386133 830871651 315094181 168432660 43670532 980436804 980436804 875702007 530155597 575206963 575206963 986441164 986441164 650278895 670073337 756733470 756733470 733591042 733591042 842343223 871476121 948626578 948626578 341580512 297220962 301567424 301567424 134350340 134350340 94017120 363209236 363209236 176369748 176369748 100402716 221927908 284287746 294897186 294897186 296797890 411150886 411150886 24472736 198311552 198311552 188219172 188219172 392503578 392503578 320158680 504728250 504728250 241340736 241340736 121796736 324392556 404911660 404911660 225352356 198101296 235211104 235211104 255609232 255609232 211424844 347472192 695211405 695211405 550063106 427624466 708143710 867559508 938568378 938568378 385084057 607145158 742466231 742466231 810553362 810553362 693379158 599785713 629290067 885597387 885597387 495588462 495588462 486020000 443154896 443154896 148504672 722723121 722723121 194123392 705693013 705693013 552174100 168846785 32506848 32506848 32506528 571682993 797578365 797578365 596849265 596849265 962599080 962599080 947052934 947052934 324083896 324083896 20001282 595922000 859119154 859119154 129119017 378757490 378757490 300707248 312853968 450457154 457437366 457437366 886875410 886875410 570499089 875637208 875637208 608248077 649607962 878815669 878815669 406289120 1063201407 1063201407 931711906 931711906 562316174 872416164 872416164 469813254 939886598 939886598 335874860 339857186 339857186 1052051831 1052051831 466026547 833634389 833634389 604553472 92801236 92801236 451428476 451428476 289616034 289616034 288324224 404727908 404727908 288650644 288650644 42963206 503895982 503895982 485613338 970064992 970064992 817633410 1005717484 1005717484 540017937 540017937 926096183 926096183 640815897 537137280 268700168 312545376 421770546 979670152 979670152 711408028 1054945301 1054945301 134844692 136541204 136541204 270665730 270665730 6560256 275190018 288330995 855401505 855401505 845285593 632691561 680012928 744686920 744686920 562785440 562785440 964993538 964993538 428222133 128693744 599727138 732952087 732952087 543823233 500469215 1067491884 1070073252 1070073252 738224808 1005650040 1005650040 853606865 853606865 664281506 776297098 855755403 942479561 942479561 935154029 914990176 201522700 201522700 194616004 89725472 790739204 790739204 749013832 252925768 252925768 206377256 206377256 83959848 153522700 153522700 93098788 256116924 256116924 370015954 380615942 380615942 313474386 313474386 310521088 335922088 354544514 396342424 396342424 326839754 282069586 20497632 268931522 443097152 443097152 426362982 426362982 637169811 637169811 267671460 1021743802 1021743802 791663761 704887085 437981281 328389234 324276652 238138864 821430288 1041503592 1041503592 283119936 280255520 138167716 138167716 706165269 706165269 201300769 600823765 713692245 737341205 737341205 579648644 579648644 173162497 939560466 939560466 706666005 808012040 808012040 639902471 1017732173 1017732173 1007102477 1007102477 474445839 872539686 946543909 946543909 761840556 754812105 675599489 1034450830 1064254911 1064254911 871046701 767050345 927342564 927342564 534561822 534561822 378329274 484069932 484069932 480170708 480170708 146896016 99453200 49839616 85695288 85695288 310696004 512100778 993411188 993411188 720636885 734529137 997639227 997639227 673321221 675567232 805831744 805831744 931830819 931830819 740132597 740132597 76360776 630672464 651549377 791002933 896614019 896614019 704575374 704575374 498983424 548448824 758121613 758121613 560595324 124728560 124728560 196793124 196793124 244339832 244339832 578000058 1029404105 1029404105 815794446 815794446 465596383 404173322 404173322 219075880 219075880 219031544 219031544 66957864 62777888 70413600 124037162 396820883 933681531 933681531 799279485 799279485 519965480 623875918 725999007 881853003 881853003 507719838 710744068 710744068 689982449 61131120 570877285 570877285 247534352 524685518 683751448 683751448 646123737 599923428 599923428 931341247 1033970307 1033970307 811672497 356774638 794005898 794005898 612001712 406008582 570179913 570179913 294126690 286073808 583466785 625227205 625227205 258081420 722677836 722677836 609060332 141159725 71396352 71396352 35787024 35787024 128549952 128549952 42603600 22171152 4102112 35991568 35991568 39660160 39660160 66473568 66473568 97833728 113337560 113337560 50975144 44952912 16271312 143210116 143210116 36816456 550849532 790749501 790749501 595315600 595315600 135325824 139799172 139799172 708143632 748057245 748057245 543822424 653789145 688409832 688409832 159679657 13189420 284474636 284474636 292082592 331929474 331929474 285799554 316413816 316413816 300263154 300263154 98377224 336275594 336275594 89923968 89923968 19598592 17250336 295836664 391592634 391592634 113746248 113746248 51094024 41898384 84462208 86229008 327365904 327365904 42809410 31801344 31844832 31844832 15613600 12633472 12633472 36559384 124242440 559425211 559425211 854831658 854831658 393106539 640702346 643640985 842272313 863316915 863316915 818215347 563552418 380586514 380586514 335834832 335834832 311242392 742876741 742876741 169891596 544072465 787889219 787889219 372811338 80209742 272516306 272516306 171305748 553648693 553648693 415050268 438658278 964690023 1031340263 1031340263 932514983 932514983 911683335 911683335 960248889 960248889 857726496 1065718588 1065718588 1032324207 843042912 243011856 22793904 6590976 10950848 11934528 11934528 8788032 37638208 37638208 16702272 35340928 42343488 42343488 111498752 111498752 61976456 30223584 57495408 402289216 402289216 559222245 559222245 303226352 962359315 962359315 399207122 399207122 389459446 785524091 785524091 480258380 792821105 792821105 311252098 278956098 273264640 273264640 654417945 654417945 662961017 735283600 735283600 697361156 757873997 757873997 716178360 670043421 664864668 626096556 249189912 249189912 56623648 56623648 38797968 36700544 581503032 581503032 579677353 132392041 605692662 605692662 523222090 523222090 696690245 1023832199 1023832199 974487609 974487609 974244391 974244391 810023043 810023043 378013544 585401528 841271571 841271571 601238096 56318080 67220496 67220496 74641960 74641960 36234472 134151904 134151904 58932282 343882586 359400858 391908738 391908738 271845520 316666256 775417911 775417911 470393870 550720326 762112295 1041310666 1041310666 935047277 935047277 802321319 599026005 537734009 769352755 769352755 636717632 636717632 601018144 601018144 62914416 62914416 11994176 28469344 89391232 89391232 396952802 396952802 371793962 313604138 401694850 401694850 365878506 291359984 361885394 361885394 314613976 330330715 596356187 596356187 378628995 562399771 812482805 812482805 715654485 581505281 418940910 431685810 521225914 774457067 774457067 846889303 846889303 459473538 852514414 852514414 662322792 662322792 562147640 510937782 526392984 526392984 266507500 266507500 232037356 361370720 361370720 323078392 323078392 125986772 177159252 522353580 522353580 484913930 269409282 236279164 188095284 471937280 543558984 952632519 952632519 939778048 939659271 883696721 941148295 941148295 886385355 612055271 767339884 767339884 1017697856 1017697856 821710320 457036214 457036214 108898208 426414056 457888950 466520128 466520128 415812684 415812684 486587722 486587722 271846146 271846146 676857377 761929786 761929786 548900616 900194694 900194694 515981719 958727325 958727325 141674546 350080760 828658019 828658019 573604016 593564050 593564050 334505010 334505010 865570819 865570819 834863776 834863776 842006963 842006963 543761793 926705941 926705941 778507904 957663783 957663783 835048093 547788538 769144821 769144821 724698000 445419580 335676432 321388570 735370141 735370141 298386176 634653057 634653057 246416296 282935153 480264234 1027386417 1027386417 858130468 858130468 862061124 862061124 982627120 982627120 447068874 513813413 956534830 956534830 489851735 423624870 423624870 845389753 845389753 710570372 739247781 833159897 833159897 355475600 713032189 713032189 278137410 119835530 119835530 140509572 272357232 467739126 467739126 115630308 220262712 220262712 189573556 158011580 242972564 242972564 264598452 806404096 806404096 1034540517 1034540517 806355459 946338183 956628006 957275175 957275175 738924719 738924719 610672653 880079177 880079177 692506825 677708788 677708788 576725260 576725260 607817492 725538327 991878711 1025416687 1025416687 851991280 339876808 399507506 399507506 363877342 497305918 497305918 364370332 147130560 134818820 160054372 204261380 204261380 225073060 225073060 171220688 171220688 79611336 80073728 555240961 555240961 45911552 45911552 9659473 228708420 228708420 636691017 636691017 165588013 434219206 717596272 717596272 973611627 973611627 580597329 580597329 643983469 643983469 763728281 763728281 526784958 526784958 88213782 250217780 250217780 96604392 481444005 905106411 905106411 509896912 281742162 941222935 941222935 521166856 521166856 952240837 952240837 840297809 840297809 538153553 986718341 986718341 689430720 706315376 706315376 842285060 953551828 953551828 683461332 683461332 174459140 174459140 0 0 16976000 21444768 21444768 23142176 23142176 71403016 71403016 6070472 222578083 1009569039 1009569039 946641235 921049563 629238623 883961725 883961725 27527520 27527520 153274180 824349962 824349962 918852391 918852391 757767277 124392808 650513988 807016341 905847799 905847799 41292052 137178372 209531844 209531844 164314064 227011536 227011536 179114804 179114804 139035888 504100048 504100048 406901338 406901338 273204354 147461788 192073186 213835596 505639424 505639424 454298166 454298166 693359525 693359525 187776100 537133056 599413308 747650445 747650445 594913785 609316680 609316680 555819297 537977632 92275544 92275544 127696944 127696944 552386613 552386613 541378689 672262852 672262852 809635971 809635971 989990967 989990967 465444709 550386756 558051489 980436804 980436804 875702007 530155597 746121126 746121126 542349073 683674458 683674458 506387742 464782140 464782140 733591042 733591042 452984886 452984886 82982504 341580512 341580512 291116042 292651520 292651520 291009314 282251426 1709568 363209236 363209236 176369748 176369748 100402716 196166282 284287746 294897186 294897186 296939106 496925342 496925342 295378566 198311552 198311552 188219172 188219172 323248544 323248544 304474386 23169202 14895452 241340736 241340736 294143276 294143276 254460810 115627600 61505048 85941768 235211104 235211104 255609232 336480778 336480778 283821066 227938140 550063106 550063106 826362624 826362624 87670792 630039848 975146425 975146425 954080967 607145158 244367964 244367964 106080590 557851090 599785713 629290067 885597387 905752065 905752065 1011813254 1011813254 949298886 59650100 148504672 156898980 194123392 194123392 43127376 148918276 148918276 61756465 34382480 59937528 249507992 571682993 571682993 198130932 117965880 143579760 168625852 168625852 209457036 209457036 324083896 324083896 20001282 40383024 859119154 859119154 129119017 378757490 378757490 300707248 312853968 450457154 450457154 395633719 886875410 886875410 533792165 875637208 1059660987 1059660987 1034426508 1034426508 878815669 406289120 1063201407 1063201407 511869462 511869462 205881618 225845652 456415900 456415900 293912682 397446448 884215275 884215275 658853883 658853883 46400408 75632712 177746448 604553472 604553472 92801236 671614464 671614464 459212582 949299587 949299587 1015554670 1048576095 1048576095 557452586 431627860 26740320 26740320 319295488 319427634 970064992 970064992 737682301 375457703 783157852 783157852 469772592 469772592 337382922 337382922 229123930 223960594 346220304 346220304 979670152 979670152 841138384 843503763 843503763 317722466 858949856 858949856 587550883 857160243 857228835 857228835 596478128 326817714 326817714 302676944 59193456 680012928 680012928 546708100 676497664 678878085 678878085 582492948 205521036 234006605 758643501 758643501 213969198 941789451 941789451 916736560 1070073252 1070073252 715737206 532774975 532774975 853606865 853606865 664281506 756614668 756614668 942479561 942479561 935154029 898609562 137178372 96469224 96469224 21541960 117807792 117807792 97773664 72751752 72361096 265477616 265477616 239124636 239124636 104099984 93098788 256116924 256116924 54254476 599040 409479252 415635654 415635654 294340640 294340640 354544514 354544514 326839754 548282625 548282625 547972545 543974849 543974849 149485765 146748439 712779765 712779765 605233112 605233112 86508568 86508568 101188904 200307392 200307392 120021612 238138864 238138864 198969836 123803256 89839460 89839460 43663568 138429316 138429316 187536128 187536128 160418180 168032452 192671412 192671412 164811492 192285392 192285392 721258629 939560466 939560466 706666005 875264320 875264320 246951748 246951748 475006080 475006080 471336462 273243788 269393922 269393922 606727488 754812105 754812105 213645132 230424288 230424288 180761088 180761088 175712148 175712148 173869312 97384184 254615272 254615272 14890324 243832568 243832568 18962248 99453200 99453200 36967872 41947392 50405424 310696004 310696004 638852072 720636885 720636885 704907285 704907285 425345760 411751494 138938006 303055062 496799318 496799318 459195122 459195122 55887474 30673632 41945776 41945776 596519936 896614019 896614019 709829373 704575374 676217487 676217487 758121613 758121613 560595324 125963968 125963968 97165832 31193248 148464098 148464098 937303803 1029404105 1029404105 790361661 770950610 465596383 427167264 502925382 502925382 253665164 235541532 86377632 66957864 62777888 70413600 70413600 120411266 836672070 836672070 656300063 648201369 519965480 614614560 614614560 378651448 424751962 507719838 507719838 702461844 702461844 89986720 570877285 570877285 296493136 296493136 672085213 672085213 298720482 599923428 599923428 931341247 1033970307 1033970307 811672497 387999562 794005898 924916657 1048450891 1048450891 669653259 570203123 570203123 331694873 583466785 666116842 784798505 784798505 725878965 722677836 698687898 494412875 341393962 809182898 997930645 997930645 128549952 128549952 36377952 36377952 27693072 58859728 58859728 39660160 39660160 66473568 66473568 56721488 94154744 116894040 116894040 61515032 79900872 143210116 143210116 38215688 210241896 229188972 229188972 79836116 166219697 724332389 724332389 141631629 138535437 785892108 785892108 732328313 653789145 653789145 1023574673 1023574673 543654066 897851808 897851808 353782394 353782394 323145906 289333026 316413816 316413816 300263154 300263154 97631626 92512296 92512296 89923968 89923968 24238240 26877920 293768576 293768576 277323136 52772960 52772960 29489632 23482784 54742288 61448752 327365904 327365904 42809410 19229056 21045408 21045408 15613600 7843328 56202672 66866784 66866784 88167056 356630608 356630608 386540930 386540930 295846432 382256346 382256346 334896114 360719018 381220210 381220210 383674770 383674770 304165592 311242392 311242392 459850548 459850548 344212820 344516932 344516932 314837202 407877074 408994182 582606800 942143751 942143751 423330094 423330094 415050268 438658278 438658278 392217018 982556882 982556882 980493207 980493207 924467493 1060111167 1060111167 1029778109 475613027 15305728 10498128 50052032 50052032 3144960 10988032 15153600 15153600 6521408 1327104 36440064 36440064 39603984 47320720 47320720 18204864 111498752 111498752 61976456 30223584 57495408 198060162 411768182 559222245 559222245 451926054 962359315 962359315 399207122 399207122 191549772 785524091 785524091 480258380 792821105 792821105 311252098 278956098 273264640 659571353 659571353 642810553 642810553 735283600 994259018 994259018 736223309 731117689 716178360 670043421 621382968 340052106 295345896 249189912 219688101 220048460 220048460 672323201 672323201 581503032 709238170 709238170 621120749 621120749 399331402 757512647 757512647 1023832199 1023832199 974487609 974487609 839733409 839733409 591543434 4243584 4227072 0 0 308346898 308346898 307162016 307162016 86021424 74641960 74641960 36234472 134151904 134151904 86530352 61131816 371825880 371825880 310642514 93392714 75497536 108674736 257491634 470393870 550720326 762112295 762112295 252247307 323258792 323258792 599026005 599026005 537734009 769352755 769352755 546035440 539913040 601018144 601018144 64700368 64700368 54819056 578756529 578756529 587756834 898936464 898936464 371793962 313604138 826347898 826347898 652423641 831755241 831755241 282289043 314613976 330330715 596356187 596356187 378628995 562399771 812482805 812482805 715654485 95811359 760228626 760228626 521225914 722526605 970156444 970156444 846889303 583422746 852514414 852514414 662322792 662322792 562147640 116635632 102638832 119758408 119758408 108837736 108837736 102847664 87431792 84600352 84600352 89260680 445248137 781217991 781217991 763125193 879396781 1026593902 1026593902 233882604 490362050 548527432 939778048 939778048 939659271 882900555 882900555 244379159 281044555 281044555 88640737 99034852 1017697856 1017697856 821710320 520159508 520159508 354492714 495382702 495382702 466520128 466520128 0 0 130223801 254349439 271846146 271846146 676857377 761929786 761929786 423938214 900194694 900194694 806126698 958727325 958727325 810848274 566364289 828658019 828658019 573604016 593564050 593564050 42665312 23205120 23205120 306189409 834863776 834863776 842006963 842006963 774163768 774163768 388621626 778507904 957663783 957663783 806103678 798566013 769144821 769144821 724698000 438314862 335676432 321388570 371204810 371204810 322436432 118627232 246416296 246416296 100692224 480264234 656855370 805516036 939732999 939732999 979489669 979489669 1049987684 1049987684 447068874 513813413 956534830 956534830 671114648 671114648 335846816 335846816 710570372 710570372 739247781 739247781 310977618 310977618 310977618 299106464 278137410 122160312 308948484 490684206 490684206 136122658 445251888 445251888 84485160 84485160 63742240 186886672 186886672 164082452 71078976 807313504 1038417735 1038417735 1034540517 691614787 946338183 946338183 495248522 625731040 738924719 738924719 610672653 940851776 940851776 591233764 1004595061 1004595061 576725260 576725260 170967828 171974928 171974928 69046784 509115440 509115440 307235280 332534514 345395872 345395872 335708350 151257604 151257604 216163736 216163736 399975038 399975038 217015628 532896782 532896782 319423794 319423794 276697624 338103040 555240961 555240961 104560320 130239632 130239632 108153352 108153352 636691017 636691017 165588013 434219206 717596272 717596272 755262584 755262584 558756572 558756572 643983469 643983469 763728281 921551598 921551598 395784188 764408686 780809064 780809064 94305800 481444005 905106411 905106411 146985156 165104776 941222935 941222935 521166856 521166856 461883940 713895168 713895168 537396225 172742784 986718341 986718341 957472898 956255799 706315376 842285060 953551828 953551828 683461332 683461332 174459140 174459140 162882276 146677572 197856484 197856484 260894760 538485393 592975636 592975636 625927724 625927724 552186620 195621204 265389032 502957302 502957302 869875704 889456683 889456683 768759232 1039422697 1039422697 958697998 958697998 675596421 675596421 1024464186 1024464186 650513988 807016341 905847799 905847799 853389013 853389013 745615300 745615300 154809480 227011536 227011536 425741238 425741238 211356764 504100048 504100048 340807298 340807298 412729362 503573340 503573340 211307544 137385040 238222416 238222416 191051984 9884260 3156544 46457040 537133056 537135105 537135105 537135105 537135105 16805376 18738720 76302192 128560184 128560184 88965128 88965128 88958100 552386613 552386613 541378689 672262852 672262852 908202267 909246976 989990967 989990967 465444709 938965948 938965948 694038019 694038019 237243994 244767324 746121126 746121126 542349073 918260823 918260823 513080372 464782140 464782140 283899330 689574044 689574044 557899807 557899807 556039316 508173256 508173256 292651520 292651520 291009314 282251426 270021736 233517674 93823468 76885024 17926688 17926688 151085708 508703598 508703598 467375006 297405064 496925342 496925342 497584014 497584014 421425910 343307098 521778596 521778596 472457438 304474386 472679436 472679436 182531230 176188064 427835688 427835688 369140240 369140240 67353992 85941768 107176192 107176192 121951528 336480778 336480778 283821066 541887283 541887283 839897185 839897185 826362624 87670792 630039848 975146425 975146425 1068689818 1068689818 939020638 968736048 968736048 867912357 867912357 555985240 922249229 922249229 905752065 1011813254 1011813254 949298886 273952896 17961312 17961312 8425664 15913920 16693248 46828352 46828352 25223584 55840808 106306200 249507992 249507992 198130932 198130932 117965880 438051974 438051974 467734190 467734190 82314696 333521912 333521912 274801106 870582848 870582848 559490177 241263297 207931708 197143932 117260072 170203828 170203828 363979626 363979626 723616494 723616494 1066062975 1066062975 1059660987 1059660987 1034426508 1034426508 364199264 364199264 889605320 889605320 843945711 511869462 251941782 270637604 456415900 456415900 319048572 397446448 884215275 884215275 1019706200 1019706200 974721272 974721272 918239067 781202200 781202200 37422933 671614464 671614464 459212582 949299587 949299587 1015554670 1048576095 1048576095 629542963 431627860 268699648 268435458 297295922 297295922 576782578 576782578 517567734 517567734 783157852 783157852 589041152 653531394 653531394 367270499 400559081 400559081 346220304 390566978 548417554 593987680 841138384 843503763 843503763 361173128 858949856 858949856 587550883 857160243 857228835 857228835 596478128 326817714 326817714 302676944 59193456 956512292 956512292 696653925 696653925 678878085 678878085 1025518274 1025518274 771042285 758643501 758643501 213969198 941789451 941789451 870604982 786811365 715737206 715737206 134320712 209828466 445968958 445968958 328364068 562581554 982708443 982708443 863849778 863849778 214669435 222890308 222890308 564031761 564031761 639412884 789533464 789533464 256166076 230765256 265477616 265477616 239124636 239124636 120615856 627704201 627704201 88728744 524753123 524753123 409479252 415635654 415635654 285611057 884738337 897419977 906617656 906617656 548282625 548282625 547972545 543974849 543974849 812247350 812247350 712779765 712779765 605233112 605233112 244260168 244260168 44220480 508979860 508979860 340900488 340900488 187904820 187904820 224654620 224654620 169248432 169248432 138429316 138429316 262648456 262648456 191518292 168032452 192671412 192671412 164811492 192285392 192285392 721258629 721258629 576824836 549005121 875264320 875264320 246951748 650789513 978388949 978388949 947379087 414948108 609415564 881951497 881951497 138827396 16563397 681961797 681961797 542622021 710386309 710386309 734951249 734951249 713210912 97384184 229154368 229154368 156526136 168371220 168371220 50567908 21501696 36964352 36964352 88574104 88574104 369438976 369438976 491836352 491836352 675334288 704907285 704907285 38060165 20971680 991318064 991318064 731939697 731939697 946627746 969180708 969180708 6476160 572977568 572977568 596519936 596519936 709829373 709829373 371424155 676217487 676217487 392616378 392616378 315231071 249302377 125963968 197262132 197262132 148464098 148464098 937303803 937303803 913878877 790361661 770950610 807312370 807312370 726944506 725009565 663159939 858130675 858130675 834764067 997262212 997262212 272992880 120411266 836672070 836672070 801344421 796315261 694736952 694736952 630484222 630484222 442845719 382501058 462193044 702461844 702461844 544917988 544917988 178435324 296493136 296493136 235029536 12632256 29376544 29376544 169873408 170004756 170004756 154882748 387999562 387999562 734705602 924916657 1048450891 1048450891 669653259 570203123 570203123 331694873 331694873 666116842 784798505 784798505 725878965 698687898 698687898 494412875 916629840 916629840 997930645 1058747967 1058747967 926629456 178262804 151546160 61996928 58859728 58859728 13372608 13435904 23256384 23256384 8646720 94154744 116894040 569376273 569376273 560425361 87218713 100864008 100864008 730614709 730614709 580242912 707372004 707372004 724332389 724332389 316064428 860131392 860131392 785892108 732328313 523394874 523394874 1023574673 1023574673 543654066 897851808 897851808 353782394 353782394 388117880 388117880 289333026 121798016 351012082 358589480 358589480 355809440 355809440 335394130 335394130 91740816 111438072 111438072 324230544 324230544 318485056 318485056 41461202 41461202 969532647 969532647 304474339 682758453 682758453 693946021 693946021 571655169 571655169 943048818 943048818 943280736 943280736 584298352 392498834 356630608 386540930 386540930 275403096 382256346 382256346 334896114 360719018 360719018 311180528 383674770 383674770 304165592 124855352 306774224 801390761 801390761 389024528 594812753 594812753 377762130 637907608 878442123 878442123 1034344815 1034344815 534968649 1046163993 1046163993 659314349 763961579 806979571 982556882 982556882 980493207 980493207 924467493 1060111167 1060111167 1031556689 1031556689 1055016335 1055016335 806549584 243426880 3144960 10988032 15153600 15153600 6521408 15205824 36440064 77252680 125993920 125993920 85561080 117393832 117393832 68088184 61369592 88748672 88748672 198060162 411768182 457936454 457936454 451926054 451926054 394524418 394524418 373981408 191549772 372908156 1015040207 1015040207 982281368 982281368 908910683 908910683 581888287 659571353 659571353 642810553 642810553 365451296 994259018 994259018 736223309 726095149 107793613 362225512 362225512 340052106 295345896 95967053 219688101 220048460 220048460 672323201 672323201 256058468 709238170 709238170 621120749 621120749 399331402 757512647 757512647 893608495 893608495 480727377 604114953 839733409 839733409 903798507 946653330 946653330 971864150 1073237809 1073237809 912385330 307162016 307162016 86021424 67652608 72012936 88644872 88644872 86530352 86530352 61131816 371825880 371825880 310642514 252976988 805163677 805163677 114603422 428028006 584894633 584894633 504234856 504234856 389988610 326136008 180387840 2146560 35799888 53023696 226092724 226092724 75039888 226570212 226570212 251137788 251137788 167005628 578756529 578756529 647518960 898936464 898936464 861995024 811809017 826347898 826347898 652423641 831755241 831755241 864027562 864027562 822181929 275931769 900075584 900075584 884177139 106015024 52781720 286626171 461880230 760228626 766634512 766634512 722526605 970156444 970156444 789631311 583422746 424634742 424634742 359396778 290311274 290311274 90626472 27746368 130257816 130257816 108837736 108837736 102847664 94716288 84600352 365876816 365876816 445248137 781217991 781217991 763125193 879396781 1026593902 1026593902 63024032 105024103 548527432 548527432 132353802 390087801 882900555 882900555 244379159 235950108 235950108 134531076 101223452 582664 67683360 67683360 520159508 520159508 354492714 495382702 495382702 294093458 294093458 332475000 332475000 324086128 227684310 227684310 168367632 168367632 167849492 940403716 940403716 294136850 806126698 806126698 410435632 810848274 810848274 566364289 566364289 325108146 325108146 276857328 60998976 314177298 314177298 63094928 17302560 13108416 413156372 413156372 699098246 774163768 774163768 205991310 393720956 495977070 806103678 806103678 798566013 529861635 293798266 260780136 260780136 205893224 122745008 238440228 326088608 326088608 86684624 168206392 252697088 252697088 257793388 662489026 805516036 977746071 977746071 979489669 979489669 1049987684 1049987684 408369798 408369798 437293236 437293236 671114648 671114648 335846816 859345297 859345297 1022472927 1022472927 795942916 795942916 310977618 669075369 669075369 270057916 491047086 491047086 490684206 490684206 448984468 445251888 447603890 447603890 367282526 130556038 186886672 281403704 415625098 415625098 807313504 1038417735 1038417735 881180811 541186059 365291754 495248522 495248522 940122404 940122404 942509734 942509734 940851776 940851776 591233764 1004595061 1004595061 477424432 711405061 711405061 610796937 503923974 503923974 455681334 691345447 691345447 603987976 827724326 827724326 534662384 534662384 648905800 648905800 598040731 399975038 399975038 217015628 532896782 532896782 319423794 319423794 276697624 538083465 745834112 745834112 679354245 537617152 197633808 26239920 27262560 44776768 60552816 60552816 25777456 86009888 103320232 103320232 195398357 201455577 201455577 811889664 811889664 351037732 921551598 921551598 395784188 764408686 780809064 916195336 916195336 188879573 1005976416 1005976416 816496634 993326067 1007867982 1007867982 234102626 546620399 546620399 713895168 713895168 537396225 172742784 537977472 957472898 957472898 956255799 409108864 409108864 684351314 684351314 441583313 177985556 177985556 723069685 723069685 554222132 554222132 197856484 260894760 538485393 625420556 625420556 625927724 625927724 707523072 731628117 731628117 605738236 273360290 869875704 889456683 889456683 768759232 1039422697 1039422697 958697998 958697998 681878663 681878663 1024464186 1024464186 540579299 908117507 943210830 943210830 853389013 853389013 786973725 745615300 99231104 99231104 114418392 425741238 425741238 211356764 211356764 201578040 340807298 525235380 525235380 503573340 503573340 211307544 137385040 137385040 190865936 190865936 690129317 690129317 544631168 544631168 181921413 153601764 153601764 44157728 542984488 562350025 610083176 610083176 128560184 88965128 88965128 58270840 158381888 164361444 229681672 229681672 660985462 1007342607 1040823541 1040823541 852381728 852381728 938965948 938965948 447670358 447670358 237243994 495852654 495852654 469284744 444546966 918260823 918260823 513080372 440715086 440715086 453579556 847304506 847304506 557899807 557899807 556039316 508173256 508173256 287235720 287235720 2134596 270021736 270021736 412275414 412275414 275829702 271990788 211028304 216664544 508703598 508703598 467375006 297405064 297405064 297871592 497584014 497584014 421425910 343307098 521778596 521778596 472457438 115992896 472679436 472679436 182531230 176188064 427835688 427835688 369140240 369140240 67353992 67353992 107176192 107176192 121951528 121951528 230209364 230209364 541887283 541887283 839897185 839897185 826360131 826360131 143936736 418766052 811788206 1068689818 1068689818 939020638 968736048 968736048 867912357 867912357 828986832 922249229 922249229 876851241 876851241 192816468 289820484 289820484 15897344 15897344 8425664 4887680 16693248 16693248 80796945 83001489 541578184 608247945 608247945 248844328 667520249 747565193 747565193 646540362 755312685 755312685 467734190 731243255 731243255 672713769 889194075 889194075 870582848 852615411 406137734 607956226 1038895953 1038895953 829688739 651869282 363979626 363979626 904521195 904521195 1066062975 1066062975 754155583 768083181 768083181 542916697 364199264 364199264 889605320 889605320 843945711 222900351 251941782 448025184 448025184 393774214 319048572 319048572 338478250 338478250 1019706200 1019706200 974721272 974721272 1053950812 1053950812 781202200 170018544 201606216 885311584 893386923 893386923 1070334093 1070334093 761400634 700584165 629542963 439223752 633871454 633871454 390718650 390718650 192557146 864291323 878971819 878971819 673712675 589041152 609487336 653531394 760353212 792988137 792988137 400559081 363508234 390566978 390566978 283851074 363601056 363601056 361173128 361173128 88346808 88346808 119843208 119843208 119449128 119449128 22231080 894241369 894241369 845491857 670382459 956512292 956512292 696653925 696653925 411526373 852818056 1025518274 1025518274 771042285 282394927 268484610 32770 990689520 990689520 1015694462 1015694462 856652022 687257731 789311576 789311576 581559633 581559633 328364068 739361324 982708443 982708443 749208065 749208065 705902024 222966072 222966072 564031761 564031761 639412884 789533464 789533464 256166076 230765256 93645680 78151776 78151776 245417001 782373725 782373725 627704201 88728744 524753123 843748438 843748438 713605781 672137733 403836931 884738337 897419977 906617656 906617656 306213888 31906272 25194944 11008320 138932402 812247350 812247350 325078129 17826064 411745298 411745298 244260168 244260168 44220480 508979860 508979860 340900488 340900488 187904820 187904820 224654620 224654620 169248432 176505332 176505332 148229108 262648456 262648456 191518292 53838644 67716120 67716120 2917632 3983872 3983872 3688960 269778946 549004033 549005121 549005121 518875804 518875804 650789513 978388949 978388949 947379087 414948108 609415564 881951497 881951497 753153664 153813089 682308933 682308933 542622021 710386309 710386309 734951249 734951249 729657472 778162784 778162784 229154368 156526136 168371220 168371220 50567908 21501696 60950976 60950976 88574104 88574104 369438976 369438976 491836352 491836352 340934726 166090794 565235338 964566951 964566951 998051920 998051920 731939697 731939697 946627746 969180708 969180708 41945136 572977568 572977568 551156105 249796517 0 65552 448875776 748278422 748278422 392616378 392616378 315231071 576754128 576754128 573186129 552154129 540203154 1019302311 1019302311 605164041 558997996 558997996 551965121 809502784 809502784 726944506 725009565 663159939 858130675 858130675 834764067 997262212 997262212 272992880 329809106 903088494 1047178951 1047178951 945779965 698099137 698099137 653888944 638535907 1006313331 1006313331 1044707852 1044707852 621659300 621659300 544917988 487223686 487223686 449478800 822149323 822149323 495001710 940525610 940525610 691288719 1046557341 1046557341 588861658 385471808 385471808 844628802 844628802 286802610 34658706 77889536 77889536 45402960 998902128 998902128 899682732 959609722 959609722 845490579 845490579 572647529 916629840 916629840 923997615 1058747967 1058747967 926629456 178262804 151546160 61996928 63406832 63406832 59842576 59842576 23256384 23608480 58842208 58842208 52284769 569376273 569376273 560425361 152048492 152048492 100864008 730614709 730614709 580242912 707372004 707372004 704974148 704974148 316064428 860131392 860131392 425061030 425061030 523394874 523394874 355481742 338989988 81873828 344283600 344283600 109189778 93752048 388117880 388117880 121798016 298417384 351012082 358589480 358589480 355809440 355809440 335394130 335394130 91740816 111438072 111438072 324230544 324230544 318485056 318485056 150360116 150360116 969532647 969532647 304474339 682758453 682758453 693946021 693946021 571655169 603219390 943048818 943048818 943280736 943280736 584298352 392498834 322009178 325873392 325873392 76662728 39598352 593920 734208 276362480 276362480 77587970 72665736 77426184 249588308 249588308 169609960 801390761 801390761 440677112 594812753 594812753 377762130 637907608 878442123 878442123 1034344815 1034344815 577286146 1046163993 1046163993 659314349 763961579 806979571 891904254 891904254 337582228 302724114 335178692 416206580 416206580 1031556689 1031556689 1055016335 1055016335 806549584 678283525 170839237 575164229 575164229 3390405 67478408 609314440 609314440 761539188 761539188 633603624 668516868 668516868 117393832 68088184 61369592 88748672 88748672 43126912 43126912 123697656 123697656 41034304 108097690 394524418 394524418 373981408 90131328 683968752 1015040207 1015040207 982281368 982281368 908910683 908910683 581888287 518846361 211728654 203949324 212128272 365451296 365451296 140982332 861220225 861220225 979742326 979742326 753576378 173035688 247886128 247886128 44688720 32870064 152624424 152624424 139654600 139654600 241097088 241097088 128573584 253232700 253232700 222267800 607253424 607253424 176209988 851640630 851640630 979906966 1069559205 1069559205 946653330 946653330 971864150 1073237809 1073237809 912385330 54154512 54154512 67652608 67652608 72012936 88644872 88644872 10622120 54922176 389698130 389698130 134290148 508233030 508233030 805163677 805163677 675669694 827926179 827926179 584894633 517198998 504234856 389988610 326136008 483515468 483515468 465362554 465362554 226092724 226092724 125575776 226570212 226570212 251137788 545259522 581993298 632342085 632342085 647518960 677579330 861995024 861995024 811809017 811809017 353698747 310513746 620789952 620789952 864027562 864027562 822181929 275931769 900075584 900075584 884177139 807518408 893766341 893766341 873504781 461880230 766634512 766634512 572565767 458605146 20187264 537895072 813591856 860224571 916818459 916818459 131231307 134548648 134548648 27746368 130257816 202160340 202160340 201901068 256409776 256409776 15177296 371397912 371397912 454782226 530069034 530069034 50856518 0 0 0 0 0 728654176 728654176 635825653 617085129 371800088 1040384068 1040384068 914567259 235684888 721110222 739005202 948980352 948980352 807419928 256742260 304161042 304161042 453706718 453706718 294093458 294093458 514140510 514140510 412158456 398724832 400687866 400687866 357311456 311101525 983988231 983988231 419761413 818820579 818820579 451421395 586539330 861299447 861299447 939821284 939821284 581382624 594615138 594615138 314177298 314177298 63094928 831201408 831201408 690180580 940222212 940222212 699098246 205991310 205991310 393720956 495977070 580202498 788928573 788928573 496179993 341582090 341582090 260780136 205893224 269615874 340399242 340399242 326088608 26214768 168206392 252697088 252697088 257793388 662489026 662489026 977746071 977746071 794082850 794082850 683781339 683781339 430229862 430229862 279323588 404750607 621553833 621553833 185453185 859345297 859345297 1022472927 1022472927 795942916 795942916 126952056 669075369 669075369 270057916 491047086 491047086 427066120 448984468 448984468 279520578 447603890 447603890 367282526 130556038 55100592 281403704 415625098 415625098 94020160 94020160 94022144 94022144 341850368 341850368 340211850 151194794 940122404 940122404 942509734 942509734 691851015 569198853 569198853 948773440 948773440 673204039 778609305 778609305 610796937 503923974 503923974 537198632 691345447 691345447 603987976 827724326 827724326 534662384 534662384 648905800 648905800 598040731 695667836 695667836 479768441 483034666 483034666 913476618 963826599 963826599 724353199 745834112 745834112 679354245 537617152 197633808 54601600 57789104 57789104 4491824 74420520 75348128 75348128 338285536 338285536 312957386 340225992 340225992 811889664 811889664 557918403 557918403 587399360 587417713 587417713 391637425 916195336 916195336 949301852 1005976416 1005976416 816496634 993326067 1007867982 1007867982 498600546 764487020 764487020 555499521 570499089 948037265 948037265 816655047 816655047 845768480 845768480 547614610 295587814 940220304 940220304 593384241 544271296 177985556 723069685 723069685 554222132 554222132 161178821 54710448 537744497 625420556 625420556 547694060 695210872 707523072 731628117 731628117 605738236 220800300 220800300 110208108 192967768 637951796 637951796 620663417 944557191 944557191 681878663 681878663 577371602 448864628 329326962 908117507 943210830 943210830 787072465 787072465 786973725 714934280 223358056 219346336 219346336 120279320 120279320 184581252 184581252 218849280 218849280 525235380 525235380 84810792 49394104 44871760 44871760 48490432 184924788 184924788 690129317 690129317 544631168 544631168 181921413 153601764 334829986 390958298 542984488 562350025 610083176 610083176 69280008 276688066 321157150 321157150 162714468 17498916 229681672 952142436 952142436 1007342607 1040823541 1040823541 852381728 852381728 623964299 863048482 863048482 754983421 754983421 874038837 874038837 679488059 444546966 1064569526 1064569526 834996501 637796827 511655838 511655838 847304506 847304506 203497740 203497740 296020274 296020274 58833160 287235720 287235720 135357384 140632452 269013892 412275414 412275414 275829702 271990788 211028304 216664544 231879452 231879452 63623816 104584400 104584400 269745736 269745736 89246666 7463808 9701952 357773680 357773680 52564010 4458624 4718752 16778272 85983232 107331608 107331608 75856104 96910408 96910408 39860656 39860656 44816624 51115056 77541664 77541664 230209364 230209364 177898200 177898200 578962197 816924896 826360131 826360131 728299701 559664257 811788206 811788206 229389505 229389505 853222012 853222012 477381669 444826934 828986832 828986832 623180049 876851241 876851241 148506146 289820484 289820484 16592512 16592512 16439232 16439232 8345088 12091392 80796945 83001489 541578184 608247945 608247945 860554141 860554141 747565193 792456990 792456990 755312685 1042436947 1042436947 731243255 731243255 672713769 889194075 889194075 852615411 852615411 483134670 607956226 1038895953 1038895953 829688739 651869282 239817520 262999975 904521195 904521195 861459595 855373779 754155583 768083181 768083181 542916697 168067121 203186105 740745037 740745037 654817281 483754804 483754804 569600969 569600969 95193000 143131716 143131716 620077767 620077767 404040198 744285323 744285323 287973352 1053950812 1053950812 170018544 257297436 257297436 885311584 893386923 893386923 1070334093 1070334093 677889096 449084596 439223752 439223752 633871454 633871454 390718650 923993699 923993699 864291323 881066251 881066251 673712675 416946662 609487336 609487336 760353212 792988137 792988137 363508234 363508234 338281610 336802314 287989600 90386856 90386856 28232768 28232768 35654432 35654432 119843208 119843208 119449128 119449128 694034857 894241369 894241369 943132579 943132579 360972594 360972594 350692328 74642346 929223099 929223099 852818056 916488344 916488344 837737955 837737955 92859392 990689520 990689520 1015694462 1015694462 856652022 687257731 789311576 789311576 737293317 737293317 103883792 739361324 740860417 740860417 749208065 749208065 724702377 222966072 247486936 758547185 758547185 445404822 244537804 244537804 115493136 127240608 127240608 257392120 340380764 365940848 782373725 782373725 793944829 793944829 777126065 843748438 843748438 757334152 757334152 403836931 257820020 94902304 75205944 306213888 540015873 540015873 537355521 549785729 549785729 723850688 723850688 703669221 703669221 696587696 696587696 44695824 44695824 25430112 162266468 162266468 162198884 160624388 149377472 188774320 188774320 222340270 508396586 508396586 507897218 460189064 296649122 296649122 157551908 157551908 251701628 251701628 343937664 400166480 400166480 156879092 269778946 269778946 47714576 545733313 545733313 538524305 686428545 686428545 552377792 552377792 537214981 542380708 553906209 753153664 753153664 550202245 682308933 682308933 159598193 145802052 145802052 714134644 729657472 729657472 778162784 778162784 199660296 131041116 147835220 147835220 224731592 224731592 60950976 60950976 19274448 6549888 207855872 215371976 243454044 948343325 974263060 974263060 685806809 964566951 964566951 998051920 998051920 1034822978 1045171679 1045171679 873234882 362337315 362337315 362333802 432802427 1007679382 1007679382 712888449 761535533 842588820 842588820 748278422 244841052 244841052 170462296 830772696 830772696 664842547 587818017 629162889 1019302311 1019302311 605164041 524300895 434348332 431088486 809502784 809502784 413064774 413064774 328522874 218664034 16961568 16924672 2932736 2932736 47096626 329809106 903088494 1047178951 1047178951 945779965 852880083 698099137 653888944 638535907 1006313331 1006313331 1044707852 1044707852 742014848 986644327 986644327 832712166 832712166 467730488 822149323 822149323 857743892 940525610 940525610 691288719 1046557341 1046557341 588861658 473093325 385471808 844628802 844628802 656825641 656825641 581370400 822682659 822682659 998902128 998902128 899682732 959609722 959609722 845490579 845490579 572647529 286189639 986036254 986036254 316593773 43348560 43348560 43124736 15613312 45339872 63406832 63406832 59842576 59842576 44041296 36411840 61421936 92613048 92613048 55923056 3283496 607521336 607521336 152048492 613720320 613720320 143184580 0 166522404 197414644 704974148 704974148 411381816 411381816 669562228 676381317 676381317 521133721 327510066 293675106 83894346 42246920 344283600 344283600 109240722 109142248 57272680 55389360 71417920 360353696 360353696 19088578 4719744 342637512 342637512 285922338 91738058 25215552 25215552 17826336 186882464 186882464 191963604 191963604 163587488 163587488 138753248 162019360 162019360 134218368 167772804 888752664 888752664 520883262 603219390 603219390 542386694 542386694 146869412 354049144 354049144 322009178 325873392 325873392 311242880 315497682 373423458 373423458 354418986 276362480 311381704 370564626 370564626 369750608 249588308 169609960 376227776 376227776 440677112 440677112 345777802 122763114 568003024 633475305 805834786 972031495 972031495 577286146 330559571 323084466 330339818 515539960 515539960 458884154 337582228 337582228 302724114 335178692 416206580 416206580 323356320 302136850 281296624 56303904 697650640 697650640 170839237 575164229 575164229 6095360 539544192 609314440 609314440 761539188 761539188 633603624 668516868 668516868 62050024 51694128 17860624 72364032 72364032 43126912 69268048 69268048 37954520 41034304 116532864 116532864 316677906 316677906 90131328 683968752 683968752 541589605 676093952 676093952 42757205 13372608 12708864 77153028 203949324 203949324 848610115 848610115 813872522 813872522 861220225 861220225 996969046 996969046 753576378 443357508 443357508 249247452 249247452 147625236 234812516 234812516 115903072 115903072 241097088 241097088 213207330 496099950 496099950 421824802 421824802 176209988 176209988 851640630 851640630 979906966 1069559205 1069559205 87430734 280299850 282408366 282408366 20059808 270196736 285571520 285571520 54138672 70980992 70980992 77301832 77301832 28959368 54922176 389698130 389698130 149763864 508233030 508233030 170125060 105195672 675669694 827926179 827926179 594909241 594909241 558427143 257856201 301266840 531484844 531484844 915344691 915344691 209459520 409019474 409019474 276301316 429393242 429393242 545259522 604028997 632342085 632342085 438845562 677579330 865075234 865075234 329255469 503579498 503579498 469775416 626259158 626259158 80429713 101761560 650851915 841028674 841028674 836466193 807518408 807518408 893766341 893766341 873504781 557440603 557440603 721033800 721033800 344131688 593529384 593529384 855124417 860224571 916818459 916818459 505330544 505330544 167482500 167482500 264596640 264596640 202160340 201901068 256409776 256409776 122228256 371397912 371397912 454782226 692454485 772151325 772151325 891304813 892776462 892776462 440584214 359960762 728654176 728654176 635825653 617085129 606208009 1040384068 1040384068 914567259 142618655 881637020 881637020 948980352 948980352 807419928 256742260 256742260 236632100 236632100 219329480 219329480 283125916 514140510 514140510 412158456 398724832 400687866 400687866 357311456 311101525 983988231 990694455 990694455 818820579 818820579 451421395 586539330 861299447 861299447 939821284 939821284 581382624 594615138 594615138 64277328 149766384 149766384 831201408 831201408 690180580 940222212 940222212 813917249 474422439 512104542 1019936422 1019936422 1007558171 1007558171 822292515 153236007 341582090 341582090 883889421 883889421 497944900 542075555 542075555 283044168 134604804 187549708 589266525 589266525 169159188 177612989 551595802 551595802 382465242 794082850 848081050 848081050 812535765 997937951 997937951 638513918 103517272 125506360 125506360 39358992 56214672 56214672 62525808 62525808 194109588 194109588 126952056 198803644 198803644 133284160 133284160 306720194 306720194 382805316 382805316 180158506 441040902 441040902 314679398 41968822 38315252 188751908 535888912 535888912 384502290 384502290 94022144 94022144 863252946 863252946 20447369 572574592 572574592 1004841048 1004841048 423215106 292866944 149504288 294699842 948773440 948773440 673204039 778609305 778609305 643049729 643049729 541033996 655385656 655385656 67248161 399360 143147616 210785968 210785968 197873736 197873736 181070944 1313280 695667836 695667836 479768441 483034666 483034666 913476618 963826599 963826599 724353199 403937288 75376128 67624448 67624448 36500368 54601600 74241408 90853032 90853032 74420520 75348128 75348128 338285536 338285536 457206166 457206166 379534470 569169217 569169217 557918403 557918403 587399360 587417713 587417713 391637425 329555642 244525639 1067171287 1067171287 532676862 1069810268 1069810268 1051200989 1026033648 567329128 764487020 877194253 877194253 570499089 948037265 948037265 816655047 816655047 845768480 845768480 987992643 987992643 950538646 940220304 593384241 544271296 149162048 148490692 48284112 55590976 144908916 169369488 231590016 231590016 198371520 632028360 632028360 695210872 695210872 240573084 549995649 549995649 804397708 804397708 535545026 356533367 356533367 158794649 234046200 506520276 989776886 989776886 433102513 822182536 894558891 894558891 703602817 214075469 881483218 881483218 410959129 211692436 223358056 223358056 237807620 237807620 239392924 239392924 184581252 184581252 218849280 218849280 218813484 86938924 84810792 49394104 12112896 12112896 48490432 48490432 5310280 49119000 49119000 101595592 101595592 82048384 35405840 334829986 390958298 390958298 352922498 352922498 269558304 91540392 276688066 321157150 321157150 719686805 719686805 949262148 952142436 952142436 719329110 267819756 558110764 558110764 735058451 735058451 863048482 863048482 754983421 754983421 874038837 874038837 679488059 462948044 1064569526 1064569526 834996501 637796827 511655838 511655838 575090680 575090680 203497740 255127984 255127984 109439412 81869448 81869448 75571272 135357384 140632452 140632452 75227416 175699856 175699856 70511304 70511304 385557772 385557772 520672098 520672098 205635608 339766436 412564038 412564038 504500766 504500766 222315030 357773680 503494664 503494664 503595070 503595070 23439494 92275112 107331608 107331608 75856104 96910408 96910408 9431040 25405800 123839592 132721760 132721760 165345080 165345080 114479832 114479832 35685168 578962197 578962197 7521236 728299701 728299701 559664257 675208545 946536678 946536678 877598371 853222012 853222012 477381669 942522288 942522288 1045557519 1045557519 886646475 886646475 180473700 180473700 33261696 17075810 17075810 819073731 819073731 32463203 8345088 13894784 548537344 548537344 303882824 1040614602 1040614602 993463358 993463358 792456990 792456990 719323605 1042436947 1042436947 706908812 419482122 419482122 341093552 313025984 313025984 470329426 483134670 483134670 148687374 147799236 519601976 524986496 524986496 440328096 494598286 494598286 381939930 477192364 477192364 350555912 483503126 483503126 358755808 203186105 740745037 808011022 808011022 483754804 483754804 569600969 569600969 448521586 143131716 143131716 620077767 620077767 404040198 744285323 1049300595 1049300595 751831047 185893136 139860512 257297436 257297436 686620712 686620712 566830305 702933477 806125921 806125921 449084596 493753640 493753640 16982194 322081826 336822521 923993699 923993699 819728067 881066251 881066251 37093396 654058948 654058948 72951432 294080674 382915470 382915470 385679162 385679162 382250440 287989600 287989600 90386856 90386856 312992994 312992994 894314252 894314252 588454436 353436680 1050922856 1050922856 811771179 747053038 137176728 943132579 943132579 762461046 762461046 302444060 302444060 929223099 929223099 776324353 916488344 916488344 837737955 837737955 285278531 1040232496 1040232496 792963086 792963086 770109661 238268925 698954048 698954048 737293317 737293317 65159732 587317312 587317312 572556433 570426752 724702377 724702377 255364192 247486936 758547185 758547185 445404822 194340000 194340000 115493136 127240608 127240608 257392120 340380764 365940848 365940848 599843340 793944829 793944829 820052226 820052226 958556011 958556011 757334152 257820020 742788689 742788689 611582600 611582600 540015873 540015873 537355521 549785729 549785729 141173829 90703272 703669221 703669221 696587696 696587696 44695824 50611280 125490712 125490712 65831408 65831408 54738192 185142468 188774320 188774320 222340270 508396586 896378903 896378903 460189064 307758738 296649122 907927824 1030224303 1047898831 1072118191 1072118191 696683152 696683152 156879092 166274308 166274308 47714576 545733313 545733313 538524305 686428545 686428545 552377792 552377792 548065536 542380708 553906209 553906209 550202245 550202245 151468068 151468068 145802052 145802052 145802052 714134644 714134644 146315377 137630436 199660296 199660296 131041116 147835220 147835220 224731592 224731592 95559760 43391568 36066048 246542800 246542800 207855872 243454044 948343325 974263060 974263060 685806809 686693829 686693829 269420619 147073420 1034822978 1045171679 1045171679 873234882 397985027 980600122 980600122 1044042195 1044042195 1007679382 807329283 761535533 842588820 842588820 839455060 675491973 868258091 868258091 830772696 830772696 664842547 587818017 629162889 815950565 815950565 703851362 695210018 695210018 976224832 976224832 878056672 931025133 990545709 990545709 714735729 839171587 839171587 948160516 948160516 269703760 317203555 561555955 838651875 838651875 852880083 852880083 741354240 738535437 730383477 730383477 725215029 725215029 606925280 742014848 986644327 986644327 832712166 832712166 467730488 467730488 951531090 951531090 857743892 825235547 310061871 332161154 407899600 473093325 473093325 404887152 621938057 641734921 656825641 656825641 581370400 822682659 822682659 976816686 976816686 758383481 758383481 636011214 925756731 925756731 627641557 1066986807 1066986807 986036254 431385429 915207712 915207712 183539412 160375520 10362432 34014272 34677264 34677264 44041296 44041296 52551984 61421936 92613048 92613048 602133105 602133105 607521336 607521336 102973969 613720320 613720320 551600900 545664996 692551620 692551620 184549332 200825460 411381816 411381816 1057540198 1057540198 990430263 523932425 327510066 293675106 270663898 270663898 327254264 327254264 109240722 109142248 57272680 55389360 26757792 360353696 360353696 335867936 335867936 285487136 285922338 395932754 395932754 117440632 117440632 111098472 269571732 333725170 333725170 301254404 163587488 163587488 987759063 987759063 279581971 558895493 827726423 888752664 888752664 793815613 793815613 618433573 731187064 837363171 837363171 544065634 230859604 286870648 286870648 77465216 311242880 315497682 373423458 373423458 354418986 270651282 311381704 370564626 370564626 369750608 152101232 152101232 376227776 376227776 93915874 10036800 827097091 827097091 131406234 867576506 867576506 972031495 972031495 652862064 926283129 926283129 845151891 806472376 515539960 339788468 107664792 108139416 209333800 278275600 329518215 649858905 649858905 302136850 545626373 545626373 697650640 697650640 65170485 62515856 696243489 696243489 681678600 539544192 251097905 251097905 71565832 110969360 110969360 62050024 128049520 128049520 17860624 72364032 72364032 122032384 122960304 292225282 292225282 329777408 401740738 401740738 371622050 384353754 384353754 989880394 989880394 885811380 885811380 346064920 346064920 950265956 950265956 647543631 647543631 11015688 1008997679 1008997679 813872522 813872522 829677024 829677024 996969046 996969046 477300045 443357508 443357508 249247452 249247452 180790096 266658420 266658420 173045136 173045136 82372700 82372700 899467573 899467573 496099950 454187022 882588254 882588254 559807074 480356644 256056237 261495420 261495420 673789792 702416600 702416600 282408366 282408366 220203776 270196736 285571520 285571520 74244624 74244624 70980992 77301832 119876584 119876584 46420688 46420688 109389820 207687344 207687344 170125060 583306409 583306409 253526500 723829397 723829397 594909241 594909241 558427143 578863104 578863104 531484844 531484844 915344691 915344691 608660415 409019474 940909119 940909119 429393242 429393242 219825111 856195072 856212531 856212531 255860784 205594764 865075234 865075234 579077908 556870177 521475113 559359890 671352837 671352837 623241394 623241394 650851915 841028674 841028674 836466193 608941826 621021328 621021328 320949322 523849683 682039769 731380341 733279999 880332071 880332071 867643381 867643381 855124417 855124417 699211908 713565549 789169800 789169800 167482500 167482500 264596640 264596640 117287724 92984424 184952016 184952016 122228256 122228256 282259474 282259474 692454485 772151325 772151325 891304813 892776462 892776462 440584214 359960762 703957153 703957153 317582802 606208009 606208009 173757716 173757716 138911108 138911108 881637020 881637020 543728102 60882608 53205888 193262750 392029178 426063342 426063342 500848554 500848554 440976534 438704406 438704406 438311104 12583104 10617216 6956468 32389398 275592514 814368932 990694455 990694455 136770659 415122720 415122720 679684518 679684518 564154528 551735745 139510565 45591488 45591488 27585104 64277328 149766384 149766384 142673312 169365536 186308148 688096784 813917249 813917249 1020547208 1020547208 1019936422 1019936422 1007558171 1007558171 822292515 895494414 895494414 456859276 883889421 883889421 497944900 542075555 542075555 283044168 134604804 187549708 589266525 589266525 791225040 791225040 581633976 735764179 961611510 961611510 848081050 848081050 812535765 997937951 997937951 748622696 471896320 471896320 469946382 105550352 105550352 52437024 60607840 60607840 194109588 194109588 36996952 198803644 198803644 133284160 133284160 306720194 306720194 382805316 382805316 180158506 441040902 441040902 596116669 596116669 525086258 681379959 681379959 535888912 384502290 384502290 83836872 79568712 863252946 863252946 20447369 572574592 572574592 1004841048 1004841048 359517189 594356482 594356482 585105873 692667015 692667015 599920881 599920881 182108321 745804809 745804809 705040384 705040384 655385656 549866944 593893808 593893808 589562672 114333184 93344952 569020072 796011523 796011523 915423106 915423106 688773671 792132616 907752987 907752987 609606787 570425361 843319693 843319693 770469277 770469277 667575672 488058912 374523344 118174776 354526344 354526344 285473802 123926330 85365152 58995792 281364706 457206166 457206166 379534470 379534470 190106292 605037056 605102089 605102601 605102601 260953212 260953212 191234412 704797280 1067171287 1067171287 532676862 1069810268 1069810268 1051200989 1026033648 567329128 617087944 877194253 877194253 520709166 520709166 268960770 162850528 435643269 735033127 735033127 987992643 987992643 950538646 304087314 285620132 185368320 185368320 671629953 671629953 588809284 588809284 578863600 231590016 231590016 198371520 632028360 632028360 556793121 145261896 97535796 549995649 549995649 804397708 804397708 535545026 356533367 356533367 158794649 94582800 506520276 989776886 989776886 433102513 822182536 894558891 964891730 964891730 311046247 881483218 881483218 410959129 211692436 92412140 120399744 237807620 237807620 239392924 239392924 173948036 173948036 138609292 138609292 168586000 527501748 527501748 361740390 139275528 217596228 217596228 70655684 5399552 72087168 72087168 72086664 34528256 34095104 35405840 35405840 33818640 33818640 287016736 287016736 55199184 91540392 153551236 153551236 140332945 719686805 1018871642 1018871642 949262148 975659031 1023674816 1023674816 864344318 864344318 735058451 735058451 518746015 477973453 232745971 285519058 378874468 378874468 357040828 710459984 725663925 868557413 868557413 658877667 295223944 269296948 612673468 612673468 193539425 255127984 469166306 469166306 156615640 311894240 394903138 394903138 342033610 502797586 502797586 470980290 514442060 514442060 251330700 385557772 385557772 520672098 520672098 448815968 448815968 412564038 412564038 504500766 504500766 227185728 293738668 503494664 503494664 503595070 503595070 109821168 92275112 115394952 115394952 128102888 128102888 107118816 97237464 103245224 123839592 157736068 157736068 165345080 165345080 114479832 264422912 264422912 210541664 65660400 25106912 169474552 169474552 210442728 210442728 946536678 946536678 877598371 614200905 886697249 886697249 942522288 942522288 1045557519 1045557519 886646475 886646475 824732579 817220416 33261696 27633888 27633888 819073731 819073731 32463203 3969985 654762849 654762849 623481249 623481249 1040614602 1040614602 993463358 993463358 725036252 894639854 894639854 793299365 457613077 729162827 927389883 927389883 890862739 890862739 592710321 592710321 71318905 1031866048 1031866048 649320483 634317745 597636028 524986496 440328096 943901679 943901679 904587247 881513547 711565182 405340648 479464014 496440014 500245230 500245230 112279104 808011022 808011022 204893713 330711786 330711786 448521586 448521586 367820552 127258598 281836164 281836164 69205516 496905901 1049300595 1049300595 751831047 279424832 47789972 174330932 250481008 686620712 686620712 566830305 702933477 806125921 806125921 374002842 870202205 870202205 664149197 664149197 322081826 555222561 574233042 819728067 819728067 284431749 37093396 654058948 654058948 173375004 294080674 382915470 382915470 385679162 385679162 382250440 84026496 88632232 88632232 89306336 312992994 312992994 894314252 894314252 588454436 1008732936 1050922856 1050922856 811771179 1009266712 1009266712 907491923 907491923 762461046 762461046 302444060 302444060 276750210 281847040 281847040 517218624 517218624 547422432 547422432 296169858 1065488592 1065488592 792963086 792963086 770109661 740448732 758011085 759304365 759304365 576427049 576427049 164152548 164151524 578834900 743113965 743113965 622190661 766847853 766847853 696356361 219794753 179565396 194340000 194340000 115293912 281797124 503654430 503654430 480915014 138009494 665684767 665684767 624038697 359805547 895721827 895721827 958556011 958556011 930906458 839174163 742788689 742788689 611582600 611582600 118414648 343666314 343666314 103162200 843077128 843077128 90703272 614667298 614667298 313008258 313008258 159432804 92852332 452124790 452124790 65831408 65831408 59120864 185142468 185142468 167984672 84207716 77621252 896378903 896378903 307758738 307758738 157021860 907927824 1030224303 1047898831 1072118191 1072118191 696683152 696683152 461553248 461553248 182748800 182748800 35466768 35466768 719376 2281728 2281728 13108544 548065536 548065536 94942504 269360130 537668108 537668108 882885227 882885227 689078100 689078100 599330920 599330920 201327979 186128490 828126940 957351538 957351538 399709312 118079752 118079752 70669328 101024512 101024512 95559760 60939216 60939216 246542800 246542800 255077856 507646684 507646684 276878528 307022994 541754514 541990017 541990017 67899529 20480 4491648 4491648 175636800 175636800 397985027 980600122 980600122 1044042195 1044042195 916927495 807329283 975434379 975434379 839455060 839455060 675491973 868258091 868258091 522614883 26090592 86120696 896459968 896459968 815950565 815950565 703851362 695210018 695210018 1040187720 1040187720 878056672 931025133 990545709 990545709 714735729 839171587 839171587 948160516 948160516 269703760 268513856 550315296 568592865 883788673 893251371 893251371 741354240 738535437 730383477 730383477 1069716764 1069716764 696256536 797182077 797182077 100925541 983597448 983597448 514073920 916827432 951531090 951531090 632155497 329337119 235438080 332161154 407899600 407899600 389621562 404887152 404887152 277631298 397722952 397722952 342362850 342362850 464813644 933349156 933349156 933376300 933376300 900206204 925756731 925756731 972661310 1066986807 1066986807 212084549 431385429 915207712 915207712 183539412 160375520 37625168 35860752 34677264 34677264 19140304 36230144 52551984 57836032 61885232 65411568 602133105 602133105 556823456 556823456 35528208 536903680 551600900 551600900 545664996 692551620 692551620 179506405 187563720 668879805 668879805 1057540198 1057540198 990430263 523932425 621647524 621647524 616520914 944446663 944446663 829057822 279003600 47178736 47178736 73190978 73190978 59035258 268859402 335867936 335867936 285487136 285487136 395932754 395932754 117440632 117440632 117893208 269571732 333725170 333725170 301254404 157966196 263737736 987759063 987759063 279581971 558895493 827726423 827726423 745095968 793815613 793815613 618433573 731187064 837363171 837363171 544065634 109071096 300347624 300347624 283110386 277192656 130622504 130622504 76244056 126642016 126642016 108351000 108351000 103875616 103875616 152101232 514202652 514202652 481172098 336992778 336992778 827097091 827097091 131406234 867576506 867576506 708448989 1043598111 1043598111 926283129 926283129 845151891 806472376 253395612 107664792 107664792 108139416 209333800 252456108 329518215 649858905 649858905 162339961 545626373 583957845 583957845 573885201 686798548 686798548 696243489 696243489 681678600 230373613 540653140 726794524 726794524 549029320 567731308 567731308 128049520 128049520 5832960 19018272 68407296 122032384 122960304 537002497 537002497 445519908 785388507 785388507 371622050 384353754 956631192 989880394 989880394 885811380 885811380 709648464 346064920 950265956 950265956 647543631 647543631 538972160 1008997679 1008997679 949929864 949929864 829677024 829677024 661652469 548158338 548158338 78249179 19105420 51486852 211896088 211896088 266658420 266658420 260935388 173045136 82372700 333112370 899467573 899467573 454187022 454187022 882588254 882588254 559807074 480356644 256056237 261495420 608360640 673789792 702416600 702416600 154147912 220203776 220203776 129147296 39573264 95164240 95164240 74244624 34214928 51380320 119876584 119876584 100866960 65481000 74462120 207687344 207687344 92537272 593122017 594117832 594117832 723829397 723829397 487591978 487591978 966603352 966603352 578863104 357700266 357700266 291035792 608660415 608660415 361572798 940909119 940909119 739621905 683429913 423137288 856195072 856212531 856212531 730334612 709362220 709362220 579077908 579077908 556870177 521475113 559359890 671352837 671352837 623241394 623241394 351798896 597838282 597838282 933124545 933124545 846217867 621021328 308913852 373337545 682039769 731380341 733279999 880332071 880332071 867643381 867643381 571262337 699211908 699211908 713565549 789169800 789169800 234695448 153928044 183153408 183153408 102259092 92984424 241270972 241270972 90488988 90235896 282259474 282259474 331404376 360894570 360894570 351149514 351149514 101107154 27531960 354161024 468646324 468646324 317582802 317582802 193928998 154343076 154343076 138911108 138911108 270578266 270578266 122168800 9311016 19959336 418435892 418435892 426063342 534322188 534322188 500848554 440976534 438704406 438704406 438311104 146243680 181498330 457368548 457368548 275592514 1009725114 1009725114 745770759 745770759 522089594 522089594 679684518 679684518 40173589 0 0 0 0 69632 208896 4726832 57159696 600515969 600515969 460416209 439468422 119144721 119144721 1020547208 1020547208 750966921 739645965 739645965 1050551322 1050551322 895494414 895494414 456859276 456859276 221914122 490019436 490019436 141838850 70304520 70749440 70749440 625978872 625978872 791225040 791225040 581633976 735764179 961611510 961611510 830391346 336797880 811328710 811328710 748622696 748622696 471896320 488623798 488623798 105550352 105550352 122684088 122684088 60607840 83478144 125650872 125650872 57269824 131018488 290310936 290310936 273943170 273943170 312740680 312740680 161747442 408947970 408947970 596116669 596116669 525086258 681379959 681379959 346819914 875824484 1033637487 1035734895 1035734895 1033637487 553723264 17834240 538970880 538970880 985719848 985719848 412943942 861750822 948464276 948464276 692667015 692667015 599920881 599920881 182108321 745804809 745804809 707139861 705040384 549866944 549866944 621602856 647922129 647922129 557607809 549439585 569020072 796011523 796011523 915423106 915423106 850983386 792132616 907752987 907752987 609606787 570425361 843319693 843319693 770469277 770469277 667575672 488058912 374523344 345957928 354526344 354526344 285473802 123926330 602687057 602687057 308482180 417477068 450040988 939729625 939729625 797516925 1024090680 1024090680 605102601 605102601 1114121 383129600 383129600 704797280 731171445 731171445 246149708 451775948 665197726 729944181 729944181 537052800 6291840 73664770 339738762 339738762 270533760 268960770 467208326 467208326 190352102 38274192 38274192 189464836 189464836 198209984 198209984 185368320 185368320 671629953 671629953 588809284 588809284 578863600 163082340 678432161 678432161 676787913 676787913 542088984 646106112 646106112 59770784 190858272 251934936 251934936 189527220 122192024 122192024 67109944 25199744 138953056 138953056 134217984 126890168 261145884 261145884 964891730 964891730 545818178 314259282 910864257 910864257 647895872 647895872 79891840 79891840 79827144 290535126 290535126 388440804 388440804 362286884 357005826 357005826 527501748 527501748 361740390 178451164 217596228 217596228 145848256 145848256 72087168 72087168 72086664 172022977 172022977 211483086 992679919 992679919 946971392 857908251 805503904 805503904 540546953 331298569 657878517 995012790 995012790 1018871642 1018871642 965115495 975659031 1023674816 1023674816 864344318 864344318 623233422 623233422 477973453 477973453 232745971 38564400 38564400 25518128 59294832 710459984 725663925 868557413 868557413 899541971 899541971 262515549 642888332 1006269609 1006269609 895742379 688547214 469166306 378951768 378951768 394903138 394903138 342033610 502797586 502797586 470980290 514442060 514442060 251330700 518473526 518473526 253802084 401782334 448815968 448815968 184936500 184936500 505957102 505957102 248664438 293738668 293738668 60037248 38347920 321668520 321668520 283529600 115394952 365855520 365855520 400449456 400449456 97237464 103245224 103245224 157736068 157736068 230195776 230195776 72544680 264422912 264422912 210541664 178122324 49556932 169474552 169474552 654508589 654508589 399640999 407637126 556706664 614200905 886697249 886697249 469794954 960630148 960630148 826859938 608173897 824732579 824732579 817220416 29714784 271980864 271980864 24176928 30127904 30127904 811296512 811296512 654762849 627485985 627485985 556618152 915973395 915973395 1009068303 1009068303 894639854 952880437 992816439 992816439 867976020 927389883 927389883 890862739 890862739 592710321 592710321 112797528 1031866048 1031866048 649320483 634317745 597636028 167248864 369516857 943901679 943901679 904587247 881513547 771083176 405340648 479464014 496440014 500245230 500245230 831549031 974382106 974382106 201869193 255589752 754148012 943477793 943477793 933902187 808928393 882156264 882156264 89131588 360126500 417932742 417932742 281092480 279424832 47789972 167695984 167695984 205261760 205261760 154066212 154066212 215651104 374002842 374002842 870202205 870202205 689030692 689030692 847255136 847255136 555222561 351247722 865753924 865753924 205920396 205920396 197924089 589243117 589243117 731182760 731182760 85559480 122806968 122806968 70972576 75924800 76146656 89306336 89306336 145665492 870848068 870848068 211631180 1008732936 1008732936 473177158 411962126 1014892534 1014892534 907491923 907491923 356846294 436017404 511391636 511391636 444006205 1062941496 1062941496 1037617174 616563392 539091658 539091658 296169858 1065488592 1065488592 654622907 654622907 549507421 740448732 758011085 759304365 759304365 576427049 789837461 789837461 798089433 798089433 743113965 743113965 622190661 766847853 766847853 721980225 721980225 658365330 419089446 419089446 179031574 281797124 503654430 503654430 480915014 277534852 665684767 665684767 624038697 359805547 895721827 895721827 279394626 930906458 930906458 839174163 468191469 222891008 112666224 104756552 118414648 343666314 343666314 54126376 843077128 843077128 838931616 684466234 684466234 899891331 899891331 159432804 92852332 843617938 846002016 846002016 839153792 839153792 542390976 137062708 137062708 84207716 353177058 353177058 419504166 419504166 425547476 425547476 324982960 449104086 449104086 352616700 507779268 507779268 278844406 461553248 461553248 182748800 182748800 551102145 574452113 574452113 720759381 720759381 187069365 86721896 546836077 566244588 566244588 609501317 609501317 882885227 882885227 689078100 689078100 600507221 599330920 933692159 933692159 828126940 957351538 957351538 774506136 707542452 795578165 795578165 788397852 184181376 31973408 60939216 251151820 251151820 201511104 412882226 511914524 920392915 920392915 808026452 742498393 742498393 717886677 440959363 333820292 935766368 935766368 626548296 626548296 135927300 135927300 203070568 607574540 635972920 653263901 749825765 975434379 975434379 298526189 153132400 153132400 401039464 401039464 369878426 274400458 96607226 896459968 896459968 361928706 747954314 952178403 955779015 955779015 1040187720 1040187720 406865354 519864452 519864452 101192024 42603600 42855504 320553474 320553474 277607490 268988480 270631937 874705671 925627659 925627659 1062984875 1062984875 795189134 306572168 206500522 442228146 1069716764 1069716764 765067801 797182077 1032593002 1032593002 983597448 983597448 595742722 916827432 965853797 965853797 950592295 808766523 522815778 522815778 241962612 222343772 116605440 116605440 30686208 4391936 525312 525312 118370120 540699393 689560867 940307463 940307463 933376300 933376300 900206204 900206204 837918849 972661310 972661310 865198680 865198680 862457187 630516298 105320024 132713976 132713976 98776240 35860752 11348224 29036352 331346752 331346752 312736784 280186688 281154848 281154848 65411568 303038994 303043090 303043090 271059008 46014288 134250624 159810116 159810116 27031876 179320277 179506405 187563720 695539640 695539640 417776624 229099274 333323370 333323370 621647524 621647524 616520914 944446663 944446663 829057822 279003600 274244608 273801858 73190978 73190978 59035258 88086994 109456546 109456546 22341328 22341328 119627872 119627872 110694152 110694152 117893208 197335648 197335648 123723784 466428549 872767079 966705863 966705863 941811187 941811187 562856614 562856614 895552301 895552301 792011816 792011816 185921360 303882714 447768486 453599636 453599636 407857910 407857910 331746754 331746754 279556512 103909544 103909544 107942800 107942800 94145184 111944032 111944032 103875616 103875616 117447592 514202652 807013851 807013851 350232512 350232512 662704440 662704440 947533760 947533760 708448989 708448989 1043598111 1043598111 670843030 391641786 391641786 206637064 206637064 5579396 67117704 67117704 17115168 17115168 50926848 50926848 65153744 65153744 66848448 583957845 583957845 573885201 686798548 686798548 43123392 687626880 687626880 18535397 540653140 726794524 726794524 549029320 567731308 567731308 126064744 44823896 41943040 41943040 265995508 265995508 411379782 537002497 537002497 445519908 785388507 785388507 585316608 585316608 956631192 956631192 142606404 591478985 709648464 1020799517 1020799517 913431286 913431286 1027187747 1027187747 1020843471 1020843471 538053377 949929864 949929864 742742344 685466745 661652469 548158338 548158338 78249179 19105420 148203632 211896088 211896088 177126636 260935388 260935388 780718097 780718097 333112370 1006447297 1006447297 455131446 136687360 698687572 698687572 658847021 224461001 224461001 76019784 608360640 608360640 547569984 547569984 44040528 60964864 60964864 46467264 39573264 95164240 95164240 45869896 54735024 63053888 63053888 100866960 100866960 65481000 130351244 163782724 239165516 616986740 616986740 594117832 594117832 681981739 681981739 487591978 487591978 966603352 966603352 553814082 951153910 951153910 957717937 957717937 587415956 455095039 638265372 739621905 739621905 683429913 423137288 423137288 522323841 730334612 730334612 722856501 722856501 572148824 572148824 538579969 306893970 322982310 519185162 519185162 166725550 351798896 351798896 597838282 597838282 933124545 1072266639 1072266639 784025135 339764001 787494568 787494568 356726747 403375618 518858610 518858610 436552656 551736578 571262337 572875281 572875281 110127369 411165814 411165814 260573188 96994536 502102064 502102064 304338214 252393900 329475408 392695160 392695160 237772880 29901024 29901024 25215072 54839472 300194968 351149514 351149514 101107154 386014328 386014328 291777946 277082178 317192368 317192368 292051168 302548306 302548306 305796034 305796034 67154952 279315088 279315088 66341642 607801745 975229413 975229413 552476097 552476097 664261136 664261136 623112489 555919625 790999084 790999084 756133936 756133936 721629752 457368548 128918968 1009725114 1009725114 745770759 745770759 522089594 522089594 726928608 726928608 986861603 986861603 829852448 829852448 50754066 50754066 308363314 308363314 173253536 600515969 826677730 826677730 554107059 202701354 202701354 422821900 830611502 830611502 713039936 704716821 1050551322 1050551322 707138073 707138073 390406205 369169776 1009068303 1009068303 732501358 575548419 277835080 221295220 221295220 625978872 625978872 579127377 572468740 713898117 713898117 638200989 911224969 911224969 692176053 692176053 105244824 171370426 279224286 279224286 488623798 488623798 363220842 363220842 234943536 239198364 239198364 354648238 354648238 157807680 436086790 436086790 290310936 290310936 273943170 273943170 312740680 312740680 281888292 428681458 428681458 298944176 520212130 520212130 461972598 415621340 535374068 875824484 1033637487 1035734895 1035734895 1033637487 159976235 134219812 538970880 538970880 985719848 985719848 412943942 861750822 948464276 948464276 838869169 205898833 17560608 704716080 704716080 673499397 707139861 707139861 117932053 9679960 67757064 621602856 647922129 647922129 628058016 628058016 73269249 83750856 83750856 311001744 850983386 850983386 69720320 6291840 7623680 7623680 2022912 207909888 207909888 29595408 61266272 348435776 348435776 124733482 345957928 345957928 89768736 1037903847 1037903847 1017179599 1017179599 308482180 417477068 450040988 939729625 939729625 798891028 1024090680 1024090680 337402945 340013274 340013274 383129600 383129600 382730970 171981828 504186700 504186700 563909968 746062703 746062703 562221891 562221891 471847917 472132686 472132686 339738762 111723864 538968064 538968064 467208326 865507187 865507187 726028503 683725397 683725397 417383764 417383764 41542656 41542656 41636752 301151954 301151954 553679361 553679361 163082340 678432161 678432161 676787913 676787913 542088984 646106112 646106112 384831255 524168585 524168585 899136837 899136837 672560175 649017805 976318306 976318306 858792591 958484260 958484260 937517843 937517843 806400357 806400357 556279325 545818178 582400579 948255320 948255320 749744653 647895872 79891840 244916764 244916764 290535126 290535126 455480900 455480900 362286884 357005826 357005826 276228840 265100888 265100888 407998144 679044100 808646720 808646720 815716288 815716288 853984008 853984008 545692817 172022977 211483086 992679919 1045598744 1045598744 857908251 805503904 805503904 540546953 331298569 657878517 995012790 995012790 515531803 882675720 965115495 965115495 973262871 973262871 722651255 714394197 457611362 457611362 336149196 336149196 70791714 109689936 369632336 421045346 428917350 966313028 966313028 722321645 832432725 899541971 899541971 262515549 642888332 1006269609 1006269609 895742379 688547214 280704834 378951768 378951768 330866026 330866026 288738146 287484448 237876973 725191305 725191305 678593461 778353097 778353097 668991993 668991993 695382064 695382064 591397041 482436677 482436677 505957102 505957102 462864948 77093414 529452594 638360677 638360677 413932880 413932880 537116728 537128961 617204304 617204304 561747691 400449456 106954392 625162592 625162592 772652368 772652368 230195776 230195776 107672088 122082560 122082560 178122324 178122324 49556932 138172164 649203766 654508589 654508589 805843682 805843682 783783197 858421557 858421557 939556878 939556878 960630148 960630148 826859938 141560390 283380162 283380162 16128256 59145008 271980864 331303539 858956193 858956193 30206563 815739139 815739139 536900048 627485985 627485985 647597328 915973395 915973395 1009068303 1009068303 829458976 952880437 992816439 992816439 867976020 292305608 130847336 366046938 366046938 345802400 319852776 291423378 361837708 389157690 449359446 449359446 392690106 280070048 399803168 399803168 327424370 428788964 771083176 771083176 916799236 916799236 448437298 62066952 94510832 831549031 974382106 974382106 201869193 113262400 754148012 943477793 943477793 933902187 808928393 882156264 882156264 98381544 360126500 417932742 417932742 281092480 144212480 10114688 73728 18874656 152338944 171653944 171653944 154066212 215651104 224709036 662626344 959436233 959436233 780730119 689030692 847255136 847255136 649327184 652973433 865753924 865753924 205920396 213061136 213061136 589243117 589243117 731182760 731182760 197805288 122806968 122806968 585745930 585745930 865454248 865454248 662637937 955119815 955119815 811406497 811406497 244203340 501487097 856951347 856951347 1014892534 1014892534 973417331 915745371 915745371 717445032 511391636 511391636 444006205 1062941496 1062941496 1037617174 616563392 629454706 629454706 805880840 805880840 444931251 673332617 674478481 674478481 1055214174 1055214174 619545937 606150921 560608717 789837461 789837461 798089433 798089433 690032896 690032896 536883245 204960164 227092480 721980225 982032388 982032388 419089446 419089446 179031574 308388800 308388800 407925738 407925738 457725738 457725738 554903588 554903588 360755723 415670356 415670356 279394626 602400824 607599401 932919770 932919770 353895978 661263192 839422331 839422331 619000080 619000080 67446800 100800512 838931616 894697512 965792299 965792299 899891331 899891331 522500120 522500120 843617938 846002016 846002016 839153792 839153792 542390976 45735360 82636164 130856212 353177058 732895729 732895729 419504166 425547476 484316270 628624160 738332685 767566111 1071854079 1071854079 736111744 736111744 13378032 160241364 160241364 143565072 551102145 574452113 574452113 720759381 720759381 610669065 610669065 546836077 566244588 697251110 697251110 609501317 282872899 155241188 566772448 600507221 600507221 242686648 933692159 933692159 673845274 593241497 774506136 774506136 707542452 795578165 795578165 788397852 184181376 97431008 332608338 332608338 258717612 164336588 412882226 511914524 920392915 920392915 808026452 742498393 742498393 717886677 440959363 333820292 935766368 935766368 626548296 626548296 688001061 688001061 137569977 682295757 682295757 653263901 749825765 749825765 648870722 1022818248 1022818248 848018623 899851588 899851588 369878426 274400458 365695040 365695040 361928706 361928706 747954314 952178403 955779015 955779015 680136779 680136779 406865354 519864452 519864452 101192024 60038144 144110336 320553474 320553474 278087712 278087712 270631937 874705671 925627659 925627659 1062984875 1062984875 795189134 431787296 431787296 442228146 966609930 966609930 765067801 765067801 1032593002 1032593002 780541056 996598328 996598328 886258639 965853797 965853797 950592295 808766523 657069369 1034040047 1034040047 610613225 189404933 805974849 805974849 946668688 946668688 756827151 461591060 540699393 979640578 989990967 989990967 893032996 69679368 547384397 717498736 717498736 615066804 573433232 865198680 865198680 862457187 630516298 105320024 132713976 132713976 98776240 29237856 29237856 29036352 331346752 331346752 312736784 280186688 281154848 315239000 315239000 303038994 303043090 303043090 271059008 185206068 185206068 159810116 159810116 27031876 153033076 153033076 34861584 695539640 695539640 288782420 355392810 574217018 574217018 539091201 476409740 476409740 56264482 305853488 305853488 274244608 274244608 273801858 34355856 54316848 54316848 90944536 124208952 124208952 38834160 58010544 58010544 34300952 100773904 100773904 95764364 95764364 140373664 198601886 466428549 872767079 966705863 966705863 941811187 941811187 562856614 562856614 895552301 895552301 792011816 792011816 480477716 480477716 384869934 453599636 453599636 407857910 407857910 331746754 331746754 279556512 95133192 95133192 107942800 107942800 94145184 111944032 111944032 98618112 76503624 117447592 117447592 807013851 807013851 472383724 472383724 662704440 662704440 947533760 947533760 570025953 570025953 900590955 900590955 422646056 498067566 499258880 499258880 240539868 22069920 344058536 344058536 277137474 244917852 461909827 924464505 924464505 142937915 596325441 596325441 558903377 564973697 564973697 554427553 688293476 688293476 703592960 703592960 550426944 222636320 101279360 103858968 103858968 11641448 51413248 51413248 41943040 41943040 265995508 265995508 411379782 411379782 378806812 172101780 251604808 251604808 585316608 585316608 552150465 138844162 276846724 591478985 679510212 1020799517 1020799517 503694405 886695936 1027187747 1027187747 1020843471 1020843471 716313442 614521097 742742344 742742344 264304781 639904320 639904320 238692341 259305380 268257888 268257888 148203632 189648416 224347316 224347316 116516184 780718097 780718097 111166740 1006447297 1006447297 754539029 754539029 698687572 698687572 658847021 291584330 816111784 816111784 807612675 283398345 119908480 119908480 92409960 92409960 113510592 113510592 56175888 56175888 70728600 70728600 54735024 63053888 84938824 92409960 92409960 51648528 130351244 163782724 239165516 625408152 625408152 786795240 786795240 459956192 459956192 445958742 335606294 335606294 302713985 553814082 951153910 951153910 957717937 957717937 587415956 455095039 327328498 500284156 500284156 209776746 698521003 941806863 941806863 876265908 694173999 722856501 722856501 240857144 68223508 101335178 306893970 322982310 519185162 519185162 166725550 525213328 525213328 334190616 334190616 811475942 1072266639 1072266639 811102575 606651630 787494568 787494568 614723913 614723913 680528457 680710400 806989635 806989635 506480128 506480128 951274578 951274578 993575238 993575238 260573188 96994536 502102064 502102064 304338214 252393900 329475408 392695160 392695160 237772880 314201634 314201634 271391848 523331114 523331114 353055786 353055786 252462750 386014328 386014328 442905628 442905628 317192368 344473760 344473760 302548306 302548306 327071952 327071952 290551956 290551956 414881724 414881724 607801745 975229413 975229413 552476097 552476097 664261136 664261136 623112489 555919625 790999084 790999084 756133936 756133936 721629752 254944016 214693573 668706477 714711683 843137560 843137560 608749264 365428802 731402274 731402274 986861603 986861603 829852448 829852448 402838129 165145569 723765489 723765489 674235141 973447779 973447779 959797586 554107059 403727174 403727174 422821900 948236366 948236366 679733573 396634444 618011164 618011164 707138073 707138073 390406205 285486750 1009068303 1009068303 732501358 607543296 607543296 696268180 696268180 671367232 679790661 679790661 572468740 713898117 713898117 638200989 911224969 911224969 692176053 692176053 727186085 727186085 578988676 169534056 359200050 359200050 363220842 363220842 234943536 239198364 239198364 354648238 354648238 157807680 436086790 436086790 442380576 442380576 354496350 354496350 527695990 527695990 281888292 428681458 428681458 822091911 822091911 520212130 882940385 882940385 562434312 605311767 605311767 402253818 402253818 402253818 232649740 637536257 637536257 335839296 856974410 856974410 840508947 371060250 731474495 838869169 838869169 613493330 709952028 709952028 704716080 673499397 241963416 761154872 761154872 759727768 90182928 537969152 537969152 23358720 628058016 628058016 2628608 2628608 1082880 1082880 338733952 338733952 69720320 6291840 7623680 877512732 877512732 338091908 1009058050 1009058050 207804421 275114226 275114226 268443120 268443120 343072264 1009129530 1037903847 1037903847 1017179599 1017179599 231244710 294690950 357115050 471926180 798891028 798891028 688023568 868150886 868150886 1004418397 1004418397 301989906 46322754 172245169 688179237 709811205 725928117 725928117 746062703 746062703 562221891 562221891 471847917 472132686 472132686 247867446 341909898 538968064 538968064 146148325 865507187 865507187 848556547 683725397 683725397 701562948 711587780 711587780 197267604 134414624 301151954 301151954 55260448 274772064 274772064 374483906 380898138 380898138 340137162 286019178 494408575 494408575 384831255 524168585 524168585 958665420 958665420 905321451 999679889 999679889 976318306 858792591 958484260 958484260 937517843 937517843 1050785988 1050785988 912710043 372509466 582400579 948255320 948255320 749744653 604070468 246197464 244916764 244916764 236004956 236004956 455480900 455480900 139087912 139087912 264545528 264545528 265100888 265100888 407998144 679044100 808646720 808646720 815716288 815716288 853984008 853984008 1009520734 1009520734 277650715 683185736 1045598744 1045598744 140169861 174944388 174944388 136526228 145637472 153193696 153193696 515531803 874517863 874517863 370134043 873696814 873696814 747927739 128064146 149045545 457611362 457611362 1058328733 1058328733 404138580 462768759 538758759 840188517 999342691 999342691 966313028 987500247 987500247 43830983 290475088 323010738 323010738 320389874 230287212 531665744 531665744 394289996 171009842 85969928 85969928 18035232 136994852 177620149 237876973 725191305 725191305 678593461 778353097 778353097 712509333 712509333 695382064 695382064 670638608 738217557 891032660 891032660 462864948 462864948 386291770 529452594 638360677 638360677 413932880 413932880 537116728 537128961 617204304 617204304 561747691 345675520 106954392 625162592 625162592 772652368 772652368 157544868 141236656 134745508 171729296 171729296 134402052 134402052 1540100 268471304 649203766 649203766 453120857 805843682 805843682 783783197 858421557 858421557 939556878 939556878 807610756 757979560 646301936 1045816719 1045816719 722157462 722157462 198823284 154838004 331303539 858956193 858956193 30206563 815739139 815739139 554048640 544734081 544734081 647597328 647597328 890767586 890767586 871316979 829458976 363158810 291943618 271058178 271208450 271208450 573698 0 345802400 345802400 319852776 291423378 361837708 389157690 449359446 449359446 392690106 280070048 399803168 972513816 972513816 428788964 723834269 750739642 916799236 916799236 448437298 162129252 791625021 791625021 657004548 41944576 787452608 787452608 1043618591 1043618591 775896861 75141016 346062528 382705808 382705808 98381544 98381544 76951680 22237216 22237216 41686196 171363936 194619392 194619392 149386276 171653944 228605084 228605084 111705459 111705459 908512271 959436233 959436233 780730119 683723365 676931205 630667881 649327184 652973433 652973433 613941648 485364548 506398916 506398916 35402572 18894944 104424020 197805288 576607753 576607753 340430480 642925056 809534104 865454248 865454248 662637937 955119815 955119815 811406497 875613232 875613232 501487097 856951347 856951347 993076023 993076023 973417331 915745371 915745371 717445032 270126406 243833946 373812556 674925024 855118835 855118835 511140571 629454706 629454706 805880840 805880840 444931251 673332617 674478481 674478481 1055214174 1055214174 619545937 606150921 560608717 740299944 740299944 189269520 189269520 690032896 690032896 3039525 673532224 679600197 679600197 982032388 982032388 281141442 340288778 340288778 308388800 308388800 407925738 436371584 457725738 790495017 790495017 554903588 365282258 892243009 892243009 392640954 602400824 607599401 932919770 932919770 673739191 661263192 839422331 839422331 769860404 769860404 464520046 464520046 241174314 894697512 965792299 965792299 889682185 889682185 526463259 522500120 212745384 274894114 274894114 568748402 812612658 812612658 60226336 556049216 830874434 830874434 732895729 732895729 162137060 343012138 553708493 976572762 976572762 767566111 1071854079 1071854079 736111744 736111744 283436032 547647488 549670336 549670336 49421056 48097168 54340272 55814736 576310272 610669065 610669065 560301728 814760962 1008963169 1038463343 1038463343 1029824943 889388522 889388522 604554249 352333873 302773266 268435734 637535494 671683206 671683206 977293190 977293190 422388998 456970038 456970038 246171016 133098018 97431008 332608338 332608338 258717612 164336588 328758406 328758406 437912780 437912780 147554326 181268500 181268500 46595136 293623828 713519263 713519263 356763800 1025914893 1025914893 959447847 959447847 875561767 682295757 682295757 151198992 527762882 527762882 821047878 1022818248 1022818248 957054155 957054155 899851588 129842448 129842448 365695040 365695040 342100362 127725088 127725088 40223648 40223648 35774736 152182344 152182344 143937024 143937024 176604228 176604228 60038144 144110336 196363060 196363060 287315232 287315232 18397194 337629700 471620650 471620650 335734796 335734796 201916928 431787296 431787296 239750796 239750796 185377788 710719816 868499529 1048840287 1048840287 493930428 996598328 996598328 886258639 364192226 117629552 564924953 564924953 657069369 1034040047 1034040047 705705748 1001002359 1001002359 805974849 946668688 946668688 877664764 461591060 461591060 979640578 989990967 989990967 404754737 155001492 24716720 717498736 717498736 615066804 370072602 571278336 596674480 596674480 553485264 369852848 7013952 22222312 75761736 124248240 124248240 73580680 80313490 99095696 297805184 378089754 378089754 315239000 315239000 69728520 70287656 162561404 162561404 185206068 185206068 60873796 25068928 69206280 148156228 159589041 159589041 669724577 669724577 357499174 355392810 885216558 885216558 810311949 837921900 837921900 1014694159 1014694159 556007598 278071936 278374338 278374338 282172098 282172098 85453640 348367690 348367690 124208952 38834160 58010544 67300112 67300112 100773904 100773904 106721564 188875932 222958764 222958764 370279668 370279668 382068954 382068954 286345976 158423856 197206576 197206576 3164208 17089544 486626334 486626334 497829056 497829056 225646642 20506284 507528928 507528928 293028462 52689266 65425472 83844424 83844424 22674784 69789256 69789256 18359136 26672384 98618112 98618112 76503624 123698808 507443556 507443556 163190628 472383724 472383724 231212428 524418 272630784 552575141 552575141 568300426 900590955 900590955 860070263 498067566 499258880 499258880 447625110 22069920 370188824 370188824 329615650 329615650 461909827 924464505 924464505 454033268 727095370 727095370 665965369 828061347 828061347 555564963 688293476 964640679 964640679 703592960 900407456 900407456 381675610 277382656 103858968 17051920 52337920 101304944 129960040 129960040 121334896 10809408 10809408 546063377 546063377 411954246 547542357 547542357 814721490 843313299 843313299 546085072 276846724 974667793 974667793 1045220511 1045220511 681560587 473438321 369164848 922757162 922757162 716313442 716313442 614521097 730042632 730042632 521080998 639904320 639904320 238692341 292726670 292726670 268257888 252306492 189648416 224347316 242428532 242428532 135809924 152080338 294947878 937249335 937249335 754539029 754539029 170528276 824028534 824028534 658973845 816111784 816111784 807612675 543433057 545349696 545349696 149264788 149264788 117563448 117563448 67875912 174314200 184826660 184826660 131238116 264438008 264438008 174084992 130023648 8652864 126095464 171532068 171532068 625408152 692923033 786795240 803215476 803215476 663492213 621853489 724247557 724247557 663698553 663698553 685153481 685153481 184549920 181527252 572979859 1035401659 1035401659 954687354 799969714 253140899 698521003 941806863 941806863 876265908 825054470 849210451 1041556051 1041556051 948726990 1011422255 1011422255 792740919 252425361 227476052 118015032 525213328 525213328 679624417 830232261 830232261 576056684 811102575 811102575 606651630 606651630 604103910 614723913 614723913 680528457 680710400 806989635 806989635 506480128 506480128 951274578 951274578 993575238 993575238 488383518 248258598 81827168 81827168 88790088 88790184 88790184 32130344 11059560 121905408 314201634 314201634 703496301 771508985 771508985 550687425 550687425 798174592 798174592 1044898908 1044898908 948236183 337120270 344473760 662750163 662750163 330486217 1033937511 1033937511 891284232 1031262182 1031262182 414881724 378981440 44220992 353504038 659549288 659549288 1007218214 1007218214 843156362 861855411 861855411 707087735 653671153 427838276 427838276 254944016 214693573 668706477 714711683 843137560 843137560 608749264 365428802 731402274 731402274 852918624 852918624 820120081 552901442 402838129 165145569 723765489 723765489 674235141 973447779 973447779 964761633 689969253 689969253 403727174 1016086612 1016086612 948236366 679733573 424815492 424815492 341910084 341910084 946865732 946865732 606703452 606703452 561901473 581493351 607543296 755261504 755261504 696268180 671367232 742834244 742834244 571743744 576065089 687875744 713631264 713631264 419181091 186315557 832102826 832102826 727186085 578988676 458852386 385876026 385876026 16842898 6299912 65536 73728 75264 1639936 1639936 1574400 39544064 328929874 442380576 442380576 354496350 354496350 527695990 527695990 455643570 273205772 219972764 822091911 822091911 402999328 882940385 882940385 562434312 605311767 605311767 402253818 402253818 402253818 232649740 637536257 637536257 335839296 856974410 856974410 840508947 371060250 731474495 731474495 584106501 613493330 709952028 709952028 272711804 172766280 241963416 761154872 761154872 759727768 622988089 622988089 670617297 670617297 659594913 659594913 90227385 76164698 966071998 966071998 849970771 849970771 1062571327 1062571327 844442259 877512732 877512732 338091908 1009058050 1009058050 351394864 275114226 275114226 268443120 519339796 519339796 1009129530 1009129530 319211277 418415872 418415872 231244710 294690950 357115050 855689248 855689248 839125011 621080642 868150886 868150886 1004418397 1004418397 678102451 902191246 902191246 688179237 948903136 960569511 960569511 949354925 949354925 735062710 596447235 596447235 134953288 247867446 285477248 341909898 341909898 578678672 578678672 852738003 852738003 848556547 42192977 554747232 701562948 711587780 711587780 197267604 134414624 48935984 48935984 32556000 274772064 274772064 374483906 380898138 380898138 119746872 119746872 131862264 131862264 101976600 587994808 587994808 958665420 958665420 905321451 999679889 999679889 747498573 747498573 939630774 939630774 949346918 956432775 1050785988 1050785988 912710043 372509466 486987640 486987640 201664524 202401620 246197464 246197464 164630432 145558612 350632474 350632474 241172892 372322662 372322662 309936298 353104464 353104464 357271048 357271048 271294866 776075600 776075600 243438347 4719744 4707968 4209536 371327324 1009520734 1009520734 277650715 683185736 683185736 705462786 705462786 543095078 543095078 482516262 482516262 822514027 822514027 883996330 883996330 874517863 428075840 873696814 873696814 747927739 128064146 149045545 149045545 307307154 1058328733 1058328733 404138580 462768759 538758759 840188517 999342691 999342691 794083502 987500247 987500247 925632922 644091179 323010738 365474472 690577504 908699409 956916746 956916746 394289996 303174128 303174128 285618178 406985574 413270564 413270564 177620149 717152085 717152085 605555709 605555709 677954064 712509333 712509333 938058668 938058668 670638608 738217557 891032660 891032660 411442716 411442716 386291770 386291770 377800794 348263234 201974796 327771226 327771226 109101144 111092306 111092306 94328162 27568960 17949216 21570976 21570976 19310724 157544868 157544868 141236656 134745508 190098992 190098992 140723744 146839248 237107742 439935310 447638608 447638608 797043227 797043227 1029837231 1042485550 1042485550 275737664 741106208 741106208 832907619 913949457 913949457 1045816719 1045816719 722157462 722157462 528026814 528026814 489001128 941102226 941102226 821236323 821236323 554048640 554048640 56623536 38416864 44040528 64960368 270806160 286087106 340226656 340226656 343970240 369336370 369336370 279451074 273435010 273168992 26288736 71426184 327180538 327180538 147559064 128183812 54892912 57937312 57937312 55389360 38288400 68866065 972513816 972513816 690180260 690180260 543285633 292467125 241356038 162129252 162129252 791625021 791625021 857842947 857842947 787452608 787452608 1043618591 1043618591 775896861 753177053 753177053 670935666 670935666 42074162 33472416 33472416 22237216 22237216 41686196 171363936 194619392 194619392 175297428 175297428 228605084 228605084 111705459 451808768 908512271 908512271 747994212 301998719 170141988 623394624 630667881 630667881 623302953 623302953 485364548 485364548 506398916 506398916 665364833 896421289 899064760 899064760 576607753 576607753 340430480 642925056 809534104 809534104 297997395 109051992 46153944 41992272 291521162 875613232 875613232 488961102 578287864 585601775 907940895 907940895 404628041 276104156 110266704 110266704 64000352 64000352 663099132 673088329 673088329 632341353 634462953 634462953 11624489 34179456 34343952 643624916 783101277 783101277 147129753 749361356 749361356 826338442 826338442 580949621 665347768 665347768 1043888490 1043888490 560439757 560439757 145444260 721606328 721606328 679600197 676543176 754740829 951897544 951897544 340568774 336371712 336371712 239046448 436371584 436371584 790495017 790495017 262737517 365282258 892243009 892243009 895496318 895496318 584260326 638075027 673739191 673739191 196703893 415797564 415797564 769860404 1068470566 1068470566 1049574495 932879900 932879900 674252487 759228456 889682185 1038432586 1050751067 1050751067 813061858 813061858 1002714853 1002714853 812612658 812612658 824312164 824312164 830874434 830874434 111179116 185332788 185332788 343012138 553708493 976572762 976572762 586363699 836813283 836813283 289444195 283436032 283436032 547647488 549670336 549670336 49421056 48097168 54340272 55814736 576310272 576310272 560301728 560301728 814760962 1008963169 1038463343 1038463343 1029824943 955903904 941618440 860348552 352333873 302773266 504297687 504297687 671683206 847412309 977293190 977293190 848752258 848752258 817744600 817744600 114536010 109185096 165177088 190318260 193135132 193135132 235942004 235942004 437912780 437912780 306732118 306732118 183356500 203738252 203738252 981605090 981605090 356763800 1025914893 1025914893 959447847 959447847 908853676 922106079 922106079 206081255 527762882 527762882 821047878 821047878 799730044 957054155 957054155 599801952 837404099 837404099 635807171 664224323 664224323 638268441 711533973 711533973 572105109 496989212 496989212 825366177 825366177 779095176 779095176 542904193 914037103 1017219370 1017219370 955511751 539064582 287315232 40879760 337629700 337629700 69021192 335734796 335734796 302174226 270134272 313913112 345354330 345354330 338427968 776372604 868499529 1048840287 1048840287 493930428 493930428 76562934 4642944 4642944 89034752 455314728 455314728 71063862 18164256 462623232 705705748 1001002359 1001002359 815836438 883546715 883546715 877664764 229301160 453005704 748985870 748985870 723145381 188285204 663364384 663364384 793445338 793445338 425037635 648192 571278336 571278336 398820440 398820440 369852848 283392514 283392514 337784832 337784832 327431442 327431442 308515170 308515170 297805184 378089754 378089754 291312080 291312080 322781946 322781946 353611370 353611370 186596916 186596916 52502036 35651856 69206280 122213365 159589041 159589041 669724577 669724577 357499174 300172520 885216558 885216558 810311949 837921900 837921900 1014694159 1014694159 556007598 278071936 278374338 278374338 282172098 282172098 85453640 348367690 348367690 133853912 133853912 118635432 129710864 129710864 52797968 52797968 106721564 188875932 222958764 222958764 377922059 778531455 862138803 862138803 819095015 819095015 723566742 723566742 714911437 714911437 713489934 713489934 497829056 497829056 225646642 20506284 507528928 507528928 293028462 52689266 65425472 93947360 93947360 20022208 69789256 69789256 51034440 83798680 90171008 90171008 44578016 123698808 507443556 738378075 738378075 265427978 452599891 452599891 294158545 159506532 552575141 952316103 952316103 417403335 860070263 860070263 834088547 996712564 996712564 447625110 18420480 370188824 370188824 329615650 329615650 431459014 431459014 454033268 454033268 727095370 727095370 665965369 828061347 828061347 555564963 297671339 964640679 964640679 565914951 900407456 900407456 820531593 820531593 629828488 629828488 52337920 101304944 129960040 129960040 166773732 166773732 425865718 546063377 546063377 424090854 547542357 547542357 814721490 843313299 843313299 546085072 270032580 974667793 974667793 1045220511 1045220511 905425591 905425591 594888539 712254340 712264085 794853673 794853673 755008293 755008293 167845908 521080998 521080998 236461348 236461348 292726670 292726670 252306492 252306492 167775264 229181793 833069477 833069477 736975725 727761941 727761941 681873153 476187417 952309556 952309556 690060837 824028534 824028534 771764769 771764769 29673696 376422802 543433057 545349696 558487249 680352789 680352789 709411989 709411989 571892066 599126306 599126306 648858714 798014330 798014330 264438008 174084992 130023648 63475440 63475440 171532068 171532068 172717080 692923033 692923033 803215476 803215476 663492213 621853489 763706636 763706636 663698553 663698553 685153481 685153481 184549920 181527252 996556536 1035401659 1035401659 954687354 926136904 926136904 589732754 850055548 941805831 941805831 825054470 849210451 1041556051 1041556051 948726990 1011422255 1011422255 792740919 373558414 465738274 664164399 799947760 799947760 687718753 830232261 830232261 596984401 596984401 289932211 275072690 275072690 336068608 336069642 336069642 212770396 212770396 302265154 302265154 237254210 302562518 302562518 210241176 534324404 534324404 488383518 346622406 223194312 455732568 455732568 254166044 319426776 419436660 419436660 222824880 96519304 228872485 703496301 771508985 771508985 550687425 550687425 798174592 798174592 1044898908 1044898908 948236183 337120270 337120270 662750163 662750163 330486217 1033937511 1033937511 891284232 1031262182 1031262182 79071617 618025729 786465169 786465169 659549288 659549288 1007218214 1007218214 843156362 861855411 861855411 707087735 653671153 651538520 651365320 111158168 76718112 13811840 13811840 571483146 1011330246 1011330246 798151293 843224215 843224215 852918624 852918624 827353163 809838723 385340249 53570080 331645442 331645442 412606004 597680210 964761633 964761633 689969253 689969253 689388069 1016086612 1016086612 406174326 406855770 710018897 710018897 1012740051 1012740051 946865732 1059324027 1059324027 931137855 690065216 698216037 698216037 755261504 755261504 227803696 227803696 742834244 742834244 110892056 538844744 687875744 713631264 713631264 419181091 186315557 832102826 832102826 253878572 458852386 458852386 410143654 385876026 417477954 417477954 123484820 123484820 208341804 304813314 304813314 241918272 434717078 434717078 499052760 533237630 533237630 275502298 126541226 455643570 455643570 273205772 492096362 492096362 428146734 356085660 340002342 205065226 340131920 210527300 219217096 219217096 138584576 92873832 92873832 109315104 109315104 86018134 402669624 914407515 914407515 771244373 639731177 639731177 299370210 293601378 503357570 503357570 272711804 256852288 29106256 28774384 56656048 592106920 622988089 622988089 670617297 670617297 659594913 659594913 90227385 734070608 966071998 966071998 849970771 849970771 1062571327 1062571327 844442259 876880012 876880012 383297241 533685875 1022668392 1022668392 613377814 89178792 122569516 519339796 519339796 722829192 866291033 866291033 485377264 485377264 416995014 109320596 109320596 855689248 1048969332 1048969332 621080642 596321289 537925716 359530677 678102451 678102451 902191246 987248867 987248867 948903136 960569511 960569511 949354925 949354925 735062710 596447235 596447235 91823688 120466898 285477248 417333702 954599168 954599168 578678672 101920025 808653122 808653122 814809603 814809603 554747232 19522305 16843328 40460720 40460720 283390050 283390050 26617984 116719808 341471696 341471696 112220450 79391562 271267074 338399874 340972170 676774107 676774107 779679312 779679312 973144512 973144512 444414295 144912214 806363192 806363192 622379991 180407829 296790528 949346918 956432775 956432775 857871176 857871176 119428640 233115320 595384176 747510861 747510861 637875284 164630432 164630432 65570940 350632474 350632474 241172892 372322662 372322662 309936298 353104464 353104464 357271048 357271048 271294866 776075600 776075600 718682055 822041480 906419474 906419474 377637632 470158659 481330265 505994008 505994008 409378069 705462786 705462786 543095078 615055500 615055500 551961568 822514027 822514027 883996330 883996330 81056424 428075840 478224896 478224896 275254604 275254604 275629388 275629388 16850976 298134082 298134082 5317248 174597920 174597920 438026616 438026616 388003192 388003192 516213205 925632922 925632922 644091179 360370192 365474472 690577504 908699409 956916746 956916746 215602106 303174128 303174128 285618178 406985574 413270564 413270564 538347576 538347576 598350356 704786336 704786336 794296804 794296804 649594713 938058668 938058668 542147994 542147994 411832862 411832862 310943304 310943304 110397610 74449800 639324407 639324407 493041304 352456714 914624874 914624874 908331291 830784035 918211200 935990523 935990523 886087139 852499858 920551960 920551960 117440568 92038016 4525312 190098992 190098992 140723744 146839248 237107742 439935310 939555872 939555872 797043227 797043227 1029837231 1042485550 1042485550 974588504 974588504 738257262 832907619 913949457 913949457 414501184 629044961 629044961 417468742 528026814 528026814 489001128 941102226 941102226 859706373 821236323 541740544 56623536 56623536 40381072 110889810 354824682 354824682 351158530 375059528 375059528 343970240 369831202 369831202 279451074 273435010 273168992 26288736 71426184 327180538 327180538 302113906 178124020 282989746 282989746 286593186 291645184 291645184 286002210 262223875 826519897 826519897 690180260 543285633 292467125 241356038 219184826 392135212 392135212 124052052 857842947 857842947 1032321135 1032321135 627297692 956092359 956092359 753177053 955977509 955977509 881077352 42074162 33472416 33472416 8420480 27431424 27431424 62801156 62801156 176137780 176137780 175966784 175966784 160356192 61479280 451808768 451808768 747994212 747994212 664029728 198256692 668826692 668826692 618477129 623302953 623302953 773841620 773841620 906370434 906370434 665364833 896421289 899064760 899064760 113510616 109236312 109236312 579928202 650777323 650777323 379269168 662798547 1010559043 1010559043 397215895 893382672 957447683 957447683 662515126 569763056 639705369 639705369 393031385 377540636 377540636 94385430 192438208 200546729 1013711997 1013711997 673088329 632341353 634462953 1023743766 1023743766 968769063 523322991 643624916 783101277 783101277 435092959 435092959 305417034 893216049 893216049 872867548 872867548 597718533 1043888490 1043888490 560439757 560439757 145444260 721606328 721606328 639627793 676543176 754740829 951897544 951897544 340568774 480640780 480640780 239046448 239046448 89206280 89206280 807883872 807883872 985587543 985587543 413310429 895496318 895496318 797967644 638075027 1038139864 1038139864 661803752 563786324 607700745 607700745 1068470566 1068470566 1049574495 932879900 932879900 674252487 674252487 643939243 1038432586 1050751067 1050751067 813061858 813061858 1002714853 1002714853 143960528 422708288 824312164 824312164 396581166 396581166 489075066 489075066 185332788 185332788 330350930 820404654 820404654 378647378 378647378 69390600 67129600 4452480 6814080 6814080 8760800 21854688 30029408 33523088 49147536 49932240 81281152 800908188 800908188 643992529 643992529 480576231 616015721 630054920 955903904 955903904 941618440 860348552 713216205 713216205 1043184389 1043184389 1018180042 878618437 847412309 811425363 848752258 848752258 817744600 817744600 114536010 109185096 135846114 135846114 206574588 234989172 235942004 235942004 307965584 328917236 328917236 306732118 183356500 203738252 203738252 981605090 981605090 612710504 612710504 249038120 249038120 148445172 908853676 922106079 922106079 206081255 81865008 81865008 562626640 562626640 13181281 537002176 579289411 579289411 837404099 837404099 635807171 664224323 664224323 638268441 711533973 711533973 572105109 496989212 496989212 825366177 825366177 779095176 779095176 542904193 914037103 1017219370 1017219370 955511751 539064582 81403400 40879760 40879760 975360 33941520 305326336 305326336 302174226 313808522 313913112 345354330 345354330 338427968 776372604 776372604 329259730 730162011 730162011 274014852 230128558 796226585 796226585 452804076 632095399 632095399 812856195 812856195 967945833 967945833 160696932 566169873 815836438 883546715 1028698584 1028698584 1001649015 522597380 748985870 748985870 723145381 218932545 663364384 663364384 793445338 793445338 594027821 516098500 755280060 755280060 558145936 558145936 236106384 283392514 283392514 411186568 411186568 327431442 327431442 399013996 472592752 472592752 328427752 332900720 332900720 92558906 322781946 391590224 391590224 353611370 186596916 186596916 52502036 94869296 94869296 376916866 376916866 466997492 466997492 314042634 314042634 300172520 295821666 277153856 277153856 9934528 13251136 13251136 6170624 81484616 99158144 99158144 93347816 93162632 93162632 78382152 83986440 83986440 133853912 133853912 118635432 129710864 129710864 109528848 26296352 127070264 127070264 67182600 215237146 448801478 778531455 862138803 862138803 819095015 819095015 723566742 723566742 714911437 714911437 713489934 713489934 110939736 125421648 125421648 50399096 103875248 103875248 13631880 0 61109056 122498480 122498480 119080480 119080480 125571000 356126280 356126280 344234424 98301672 195744256 241430940 241430940 738378075 738378075 523638200 452599891 452599891 546976388 546976388 419693731 952316103 952316103 417403335 856021174 856021174 834088547 996712564 996712564 151315908 277354752 316377970 316377970 325304674 325304674 301989906 61424050 51503664 343910816 343910816 20283274 5243520 640 0 541644800 609938631 609938631 411373193 294134028 742475874 742475874 820531593 820531593 629828488 629828488 62271888 19957696 40258096 51125040 166773732 166773732 425865718 425865718 450226902 450820758 450820758 411000326 143011156 38409360 721486928 721486928 169919123 169919123 850357792 850357792 831787126 905425591 905425591 594888539 712254340 712264085 794853673 794853673 755008293 1047514868 1047514868 965960310 965960310 625845056 546054645 213770916 213770916 227736084 227736084 171057836 229181793 833069477 833069477 736975725 727761941 727761941 681873153 476187417 952309556 952309556 690060837 693317820 693317820 771764769 771764769 276766018 376422802 376422802 378927123 558487249 680352789 680352789 709411989 709411989 571892066 599126306 599126306 648858714 798014330 798014330 3211776 32132592 61789328 63475440 63475440 56416832 1887744 685917128 685917128 620301057 748063060 748063060 578895245 540573209 763706636 763706636 663557425 663557425 584004668 584004668 141706072 141706072 996556536 996556536 768617716 768617716 926136904 926136904 589732754 831231184 941805831 941805831 621466278 923610171 923610171 914975849 882590668 882590668 475404942 169761438 373558414 465738274 664164399 799947760 799947760 687718753 687718753 545259584 596984401 596984401 289932211 332450430 577129029 577129029 413930292 872990015 872990015 533767522 359953224 359953224 237254210 77489216 77489216 210241176 534324404 534324404 346622406 469803202 495575244 495575244 455732568 483247544 483247544 514098192 514098192 222824880 57573572 210109538 474618218 474618218 815939228 1043831007 1043831007 245191459 173975828 471651004 471651004 278315136 377503946 377503946 342900786 323011352 544356684 544356684 502755985 324084402 270599088 459932046 459932046 618025729 786465169 786465169 230060840 122030424 122030424 626837960 626837960 65878416 632623193 632623193 651538520 651538520 651365320 251764788 251764788 583226053 583226053 546506437 1011330246 1011330246 798151293 843224215 843224215 706904680 827353163 827353163 809838723 385340249 685687905 730524864 733558720 733558720 597680210 597680210 405038407 20717077 135932180 689388069 689388069 184754481 903349995 903349995 865803651 824850488 1012740051 1012740051 674496525 1059324027 1059324027 931137855 690065216 698216037 698216037 624994852 624994852 537993729 591921341 671096516 684596428 684596428 538844744 571289616 571289616 589350128 589350128 61818865 55100576 55100576 200886336 200886336 410143654 410143654 140761088 417477954 417477954 123484820 144351272 208341804 304813314 304813314 241918272 434717078 530061110 530061110 533237630 533237630 275502298 57292038 36454512 349482736 349482736 492096362 492096362 428146734 255717180 239944608 341846386 341846386 210527300 219217096 219217096 138584576 92873832 92873832 161482240 362545532 446696046 446696046 914407515 1011920255 1011920255 1023950867 1023950867 531375320 531375320 684042320 684042320 443023344 256852288 214506632 214506632 86518952 118166912 599841505 601656337 601656337 65798673 592845984 592845984 49546513 734070608 734070608 701047476 793001992 793001992 840974464 851741067 851741067 1015874633 1015874633 383297241 533685875 1022668392 1022668392 613377814 532083610 391119546 301076824 24389384 261653120 866291033 866291033 702590685 702590685 416995014 478483292 478483292 264975612 1048969332 1048969332 891689259 398587955 526116991 526116991 114937429 575020736 580388433 987248867 987248867 902112277 660867513 660867513 890976086 890976086 355746347 354732330 143383748 196106936 196106936 109577630 417333702 954599168 954599168 540942081 572786961 808653122 808653122 814809603 814809603 598737777 598737777 573117296 29316832 29316832 283390050 283390050 26617984 116719808 341471696 341471696 112220450 79391562 271267074 338399874 340972170 676774107 676774107 779679312 779679312 973144512 973144512 973603863 973603863 806363192 1049968560 1049968560 843760295 556371011 556371011 311550546 1065903190 1065903190 874253424 119428640 233115320 595384176 747510861 747510861 637875284 105335936 197183976 197183976 225534120 251660680 262480188 262480188 137650696 13912424 244392576 244392576 147849924 216369292 216369292 44861456 718682055 718682055 822041480 906419474 906419474 616665168 714264836 714264836 505994008 505994008 480664200 480664200 343824796 343824796 615055500 615055500 551961568 551961568 285514963 428238114 428238114 421533958 421533958 478224896 478224896 275254604 275254604 911945632 1016925007 1016925007 789977661 1059584319 1059584319 449088230 696541094 696541094 28824101 545947904 562036833 562036833 216716748 216716748 198842100 360370192 364618394 364618394 305374698 71845506 25199456 25199456 272662656 282760130 282760130 140687460 140687460 144068340 597975825 643484581 758256429 758256429 786567645 794296804 794296804 649594713 481682023 481682023 965739846 1067241589 1067241589 857358344 243418182 24675888 54877248 435657744 639324407 639324407 493041304 352456714 914624874 914624874 908331291 830784035 918211200 935990523 935990523 886087139 852499858 920551960 920551960 55913136 34922656 49152 32768 131072 1085504 37378064 43910416 103423824 939555872 1010340168 1010340168 1007606799 722993924 589825329 220566805 974588504 974588504 713411371 944110531 944110531 414501184 414501184 629044961 629044961 277162050 277162050 454823478 454823478 704893488 859706373 859706373 826769185 826769185 30210435 19673024 40381072 110889810 354824682 354824682 351158530 375059528 375059528 297294192 369831202 369831202 277530882 38285840 34800784 6456800 21128018 21128018 302113906 302113906 178124020 282989746 288755072 288755072 291645184 291645184 286002210 262223875 826519897 828837931 828837931 669929612 669929612 545221916 219184826 392135212 771617899 771617899 942034215 942034215 1032321135 1032321135 470415732 956092359 956092359 699024995 955977509 955977509 881077352 430482852 430482852 490774630 494224776 494224776 135324960 62801156 170557824 176137780 176137780 175966784 175966784 42765380 61479280 61479280 45879120 613715252 664029728 664029728 198256692 668826692 668826692 618477129 44329753 62268640 773841620 773841620 906370434 906370434 808566467 808566467 652435672 806088979 806088979 878107275 907899522 907899522 882963299 882963299 815002371 812871808 1010559043 1010559043 397215895 893382672 957447683 957447683 662515126 569763056 639705369 639705369 244318812 377540636 377540636 302006414 333982032 333982032 1013711997 1013711997 491656897 335682754 994907820 1023743766 1023743766 968769063 523322991 803479694 803479694 646710952 435092959 435092959 305417034 893216049 893216049 872867548 875933201 875933201 834594921 510536100 541281528 554093953 554093953 644614656 644614656 69731592 845864414 845864414 907854338 1011936721 1011936721 746850440 746850440 677623319 677623319 374601906 289949862 855791634 855791634 985587543 985587543 413310429 912262296 912262296 797967644 591429722 1038139864 1038139864 661803752 563786324 607700745 932938178 1058041457 1058041457 891296110 891296110 522935719 375481432 375481432 578459420 578459420 707417352 707417352 481684505 416092226 416092226 199399056 311587318 421560421 421560421 698401540 822317800 927950702 927950702 613045641 613045641 322142145 124924116 840970995 840970995 477902083 471138378 971346595 971346595 360112194 21453858 554379424 556020096 556020096 668153353 668153353 639944985 639944985 665903664 800908188 800908188 643992529 643992529 263737713 484935846 630054920 630054920 485156972 594723508 594723508 713216205 713216205 1043184389 1043184389 1018180042 878618437 201668544 217980876 355802316 420817446 420817446 424008708 424008708 296199010 492897190 492897190 414763786 414763786 431692156 431692156 307965584 328917236 328917236 63445232 141426944 164042212 164042212 692134408 692134408 612710504 925370488 925370488 249038120 549182408 549182408 530579838 530579838 132103450 487435602 487435602 1004763086 1004763086 611946674 611946674 537002176 302916609 10098240 11528000 613787752 613787752 576532113 576532113 370914828 402737814 402737814 307505290 234954780 234954780 355994768 688457728 688457728 486549960 486549960 66456178 25428864 16908320 20218656 20218656 285772320 285772320 269797890 2658050 271083776 271083776 272074240 313808522 313808522 137564244 130938688 149434004 564298685 564298685 449066562 730162011 730162011 295559150 295559150 796226585 796226585 452804076 632095399 632095399 812856195 842187668 967945833 967945833 783200852 783200852 739235935 807869186 1028698584 1028698584 1001649015 881418685 881418685 555831300 889767936 889767936 603701416 603701416 741536173 946045808 946045808 830513219 891459822 891459822 558145936 558145936 425779728 236106384 201339472 939532553 939532553 711473520 956762211 956762211 688202043 472592752 498152106 638510962 638510962 619796272 619796272 391590224 391590224 147568262 33956944 42933824 42933824 440212773 497550702 497550702 376916866 466997492 814820896 872423211 872423211 440249303 763189997 763189997 851179347 851179347 716242370 807526659 807526659 807518215 497438084 740827625 740827625 225005572 225005572 86172136 83986440 537391464 604232864 604232864 75462256 127901576 127901576 109528848 26296352 127070264 218669724 218669724 215237146 448801478 448801478 323710070 378284508 378284508 196746560 196746560 177085524 25774740 512261744 512261744 302373892 269293272 269293272 125421648 523313982 523313982 152953542 285764128 285764128 287384864 287384864 122498480 119080480 119080480 125571000 356126280 356126280 344234424 98301672 304246980 438879510 438879510 80809224 523638200 523638200 463808886 463808886 546976388 546976388 419693731 314941490 278921538 149958894 404920516 404920516 357020674 308086512 308086512 297144074 345011200 345011200 316377970 325304674 325304674 454173748 454173748 441183872 343910816 605173388 726872757 902152189 902152189 828481955 690857067 690857067 686773058 686773058 294134028 742475874 742475874 344785184 9695808 54622288 114039632 121962512 121962512 127263000 127263000 125748656 44209232 44687616 413256384 450226902 450820758 450820758 411000326 38409360 38409360 721486928 721486928 54581489 763891712 763891712 972701958 1072044543 1072044543 825352995 825352995 460180227 443073942 844678292 844678292 843629715 1047514868 1047514868 965960310 965960310 625845056 546054645 529979010 529979010 227736084 227736084 228539040 228539040 223417108 170182932 170182932 79990728 212126028 678876936 678876936 788054637 788054637 780192301 539363905 674828368 681716321 681716321 841237283 841237283 595640433 297963603 676070064 723258933 723258933 756813357 756813357 153473628 153473628 161794404 161794404 50878008 152109388 152109388 82224260 82224260 5938176 8308500 135282688 178555664 685917128 685917128 240425089 144968020 144968020 0 0 0 0 570880512 571812369 571812369 570894353 1181696 169562112 235013168 235013168 359174824 359174824 964218800 964218800 208266636 1024505102 1024505102 557578017 775945713 1016334927 1016334927 914975849 9392137 302123012 436606998 436606998 395860062 391169568 512002806 983110400 983110400 335168855 680079392 991040489 991040489 921613728 921613728 697766092 697766092 577129029 413930292 872990015 872990015 533767522 359953224 359953224 382256346 382256346 433201332 525336634 525336634 419766524 419766524 469803202 495575244 495575244 76554752 483247544 483247544 514098192 514098192 10799424 88377792 146824624 581584009 644797273 815939228 1043831007 1043831007 974920136 974920136 1065102958 1065102958 815072335 377503946 377503946 665603449 665603449 550171404 579033556 579033556 653098172 653098172 565584692 459932046 456189508 241287632 241287632 230060840 122030424 122030424 86275560 65878416 65878416 603412128 603412128 587985969 43825761 51233056 251764788 251764788 583226053 583226053 546506437 538636368 788353412 788353412 560623005 248546461 143821364 193104449 722917941 722917941 204616565 704782352 730524864 733558720 956659797 956659797 698710594 698710594 565816085 495003968 495003968 470287374 580205610 903349995 903349995 865803651 824850488 710224533 739510797 739510797 674496525 624377741 673760517 779344064 779344064 610550153 624994852 624994852 537993729 591921341 671096516 684596428 684596428 567879393 672369705 672369705 589350128 589350128 556926720 556926720 55100576 59421536 59421536 57816992 26614544 74718696 229846880 229846880 50921520 144351272 144351272 203641344 203641344 201328064 204084492 530061110 530061110 505225480 505225480 381036462 381036462 36454512 349482736 349482736 374656072 374656072 255717180 255717180 270169664 341846386 341846386 815129961 815129961 356257578 493353390 493353390 485721410 603982849 603982849 446696046 446696046 618660096 1011920255 1011920255 1023950867 1023950867 531375320 531375320 684042320 684042320 443023344 202060812 214506632 214506632 86518952 118166912 118166912 557892816 557892816 34611232 34611232 37883040 37883040 794317498 794317498 857872226 857872226 559029773 840974464 851741067 851741067 1015874633 1015874633 335609864 335609864 268509186 258123808 532083610 532083610 391119546 301076824 243271548 261653120 261653120 1000097984 1000097984 702590685 337123336 478483292 478483292 588811848 901654016 901654016 891689259 398587955 526116991 526116991 114937429 786078927 786078927 752487438 902112277 1057832061 1057832061 692459685 432146323 662726449 662726449 951977634 951977634 476218242 476218242 149523464 149523464 69544200 59386408 540387208 578774088 578774088 49492944 595189328 596691761 598737777 598737777 573117296 50783504 46663696 46622240 46622240 313322304 373992642 373992642 389412704 389412704 363072024 363072024 356091792 600296782 713087683 713087683 759209038 759209038 239600796 818752584 973603863 973603863 632569047 1049968560 1049968560 843760295 580701777 580701777 1025576455 1065903190 1065903190 874253424 659624715 679971846 943541888 953855232 955418115 955418115 538285444 360961328 197183976 120392608 251660680 262480188 262480188 137650696 47292792 170985992 256116924 256116924 107950436 56344514 61681008 344714264 344714264 289420672 340824146 616665168 616665168 714264836 714264836 311827026 311827026 480664200 480664200 437798408 68716054 11801600 11932992 821052288 821052288 469971726 469971726 201523202 421533958 421533958 432258736 432258736 317874194 317874194 911945632 1016925007 1016925007 963785028 1059584319 1059584319 695213536 696541094 696541094 28824101 545947904 562036833 562036833 216716748 216716748 198842100 198842100 99243568 123225744 123225744 20132640 64815856 271984640 272662656 282760130 282760130 62398224 62398224 56224993 597975825 643484581 758256429 758256429 820110212 820110212 530151355 269066536 673473046 981919837 981919837 1067241589 1067241589 857358344 106566408 24675888 54877248 435657744 435657744 193282714 265848994 265848994 300070792 332657394 913965408 937039611 937039611 118150200 818159210 818159210 575718033 282100498 282100498 55913136 50391840 37038864 55698096 137693424 144198740 178799636 204786510 213553434 213553434 1010340168 1010340168 1007606799 579409951 545382465 8429569 0 0 688929558 944110531 944110531 399951044 399951044 384828378 467065590 467065590 378970058 454823478 454823478 467732981 467732981 545940576 826769185 826769185 357117579 941362726 941362726 594543377 775506141 775506141 900031138 900031138 743490200 297294192 259223764 33968400 38285840 38285840 320014816 320014816 289780578 289780578 116681706 326421426 326421426 284459266 288755072 288755072 203886860 264766716 264766716 275825582 347085604 828837931 828837931 669929612 669929612 545221916 514442868 514442868 771617899 771617899 942034215 942034215 397286778 470415732 470415732 407105670 407105670 412478022 412478022 419725548 419725548 430482852 430482852 490774630 494224776 494224776 426443842 28819456 170557824 198996948 281751136 322633872 322633872 143112740 136714500 162928960 162928960 152044068 142606944 15076256 33468608 33468608 32992064 37101312 37101312 11835728 40205440 43610640 43610640 43065936 808566467 808566467 652435672 806088979 806088979 878107275 907899522 907899522 882963299 882963299 815002371 812871808 211677440 211677440 856594788 856594788 698670416 496551534 559991024 832869200 832869200 866944887 866944887 731171445 956605190 956605190 458754438 458754438 409395190 304558292 335682754 335682754 994907820 994907820 900540219 818822531 368185850 803479694 803479694 378542644 433137840 433137840 375209680 373397018 614503753 830908682 875933201 875933201 834594921 536978184 541281528 554093953 554093953 539026433 539026433 311960841 845864414 845864414 907854338 1011936721 1011936721 746850440 746850440 677623319 677623319 374601906 319836179 855791634 855791634 446410656 878796937 979898295 979898295 912262296 907543974 893911307 603980033 603980033 272570382 526784982 526784982 932938178 1058041457 1058041457 967460686 894297429 894297429 978285723 978285723 719920209 707127573 707417352 707417352 143005764 416092226 437878641 559908432 735786741 735786741 571049632 698401540 822317800 927950702 927950702 613045641 613045641 322142145 124924116 840970995 840970995 852204246 852204246 971346595 971346595 557611205 729585680 729585680 556020096 556020096 668153353 668153353 639944985 639944985 665903664 665903664 190126112 236328500 236328500 30968988 143408224 143408224 427191013 679152558 770181336 770181336 314708042 646125786 646125786 682100037 682100037 16538693 201668544 217980876 217980876 72926856 72926856 424008708 424008708 304390416 492897190 492897190 414763786 414763786 431692156 431692156 205594764 205594764 142091264 206181516 206181516 86453556 46211216 692134408 799287793 799287793 925370488 925370488 986561213 986561213 549182408 530579838 530579838 132103450 487435602 799475912 1004763086 1004763086 611946674 905667051 905667051 345082867 843673499 843673499 635994339 613787752 576532113 576532113 866061947 866061947 865340019 445264463 404306258 995438851 995438851 688457728 745283732 745283732 849479841 849479841 848334850 829737891 548496338 126882458 325205682 325205682 269797890 269167618 271083776 271083776 270657024 2426112 137564244 137564244 45163344 149434004 149434004 211670504 449066562 449066562 174014100 295559150 295559150 103944984 242097564 272289796 272289796 221120438 460047648 842187668 842187668 840259851 783200852 783200852 774648090 942688536 942688536 769724843 723587224 881418685 881418685 144766116 889767936 889767936 236722736 691478358 741536173 946045808 946045808 830513219 891459822 891459822 470361102 441971108 425779728 414392412 414392412 939532553 939532553 711473520 956762211 956762211 688202043 361652730 541426436 638510962 638510962 619796272 619796272 6549888 12611904 12611904 8652864 37848532 37848532 440212773 497550702 497550702 362532941 676179584 814820896 872423211 872423211 440249303 763189997 763189997 851179347 851179347 716242370 872415243 872415243 807518215 497438084 740827625 876609675 876609675 811598859 807929091 880061352 880061352 604232864 604232864 126801992 76054576 76054576 51357904 51357904 93637172 218669724 218669724 88968840 42003008 199821536 199821536 29631988 170132736 188013428 188013428 177085524 202794318 512261744 512261744 302373892 269293272 269293272 109778482 523313982 523313982 340058338 340058338 327155826 327155826 326108264 133728504 133728504 109611120 109611120 163002172 214829292 214829292 96897120 304246980 702560095 702560095 85344326 680960339 680960339 463808886 603904598 603904598 494725995 705451824 705451824 255970817 498258798 498258798 800175091 800175091 907914626 907914626 360503898 345011200 345011200 316122354 672227333 672227333 454173748 975135026 975513879 975513879 692863044 726872757 902152189 902152189 828481955 690857067 753353988 753353988 686773058 479083524 673466443 673466443 554035529 554035529 634000096 634000096 121962512 121962512 127263000 127263000 125748656 18994290 310055250 310055250 169237778 49468308 37933200 413571712 413571712 15929540 558179536 558179536 469240881 763891712 1060759359 1060759359 1072044543 1072044543 825352995 825352995 460180227 443073942 844678292 990660888 990660888 765739310 765739310 616451471 770873668 770873668 448322400 529979010 529979010 265335328 265335328 228539040 257761781 943663113 943663113 797826173 797826173 664534421 678876936 678876936 788054637 788054637 780192301 714194212 717629780 717629780 681716321 841237283 841237283 599801904 599801904 676070064 723258933 723258933 756813357 756813357 689211950 689211950 639769098 634608046 649175134 649175134 187229768 187229768 82224260 47611552 47321808 135282688 178555664 574020424 574528920 574528920 157156568 793302380 803473917 803473917 756468428 756468428 779638529 779638529 571812369 570894353 176852616 176852616 941558542 941558542 406400908 651803402 964218800 964218800 246015324 1024505102 1024505102 557578017 775945713 1016334927 1016334927 706737242 446759946 446759946 436606998 436606998 395860062 391169568 512002806 983110400 983110400 379123121 680079392 991040489 991040489 921613728 921613728 697766092 697766092 100798488 117056456 117056456 67707912 42016848 42016848 178501850 518319046 518319046 482849730 525336634 525336634 419766524 515973268 515973268 337115842 76554752 76554752 1376832 0 147286168 147286168 105232580 88377792 119539921 581584009 644797273 644797273 607932880 542648961 974920136 974920136 1065102958 1065102958 815072335 315105894 140510880 665603449 665603449 550171404 579033556 579033556 653098172 653098172 565584692 120587200 120587200 84103208 173461952 173461952 26663520 26663520 25959040 25959040 789504 1507840 1507840 47120416 47120416 51233056 53527344 149148484 149148484 177751296 177751296 175482748 167177328 167177328 160624940 266670296 266670296 166694232 704922240 704922240 194341612 704782352 704782352 701567904 956659797 956659797 719226933 719226933 565816085 629946160 629946160 470287374 580205610 588850737 588850737 675811948 710224533 710224533 739510797 739510797 624377741 624377741 584987660 779344064 779344064 86811049 891007274 891007274 354582057 268484992 281141442 550613066 613626441 613626441 672369705 672369705 555944224 555944224 556926720 556926720 44579472 44579472 33078208 33078208 23333280 24453632 24453632 50921520 50921520 4329472 4329472 203641344 203641344 201328064 201328064 215171628 282076660 499798136 499798136 381036462 381325002 435854578 435854578 501026526 501026526 574386111 574386111 352641842 352641842 897437457 897437457 815129961 815129961 356257578 493353390 493353390 485721410 603982849 603982849 364380196 201916514 618660096 618660096 69222857 32776 50348036 151814192 151814192 465952802 465952802 130359794 130359794 51751584 106512456 106512456 595660993 595660993 587253392 587253392 131308945 131308945 113540272 113540272 794317498 794317498 857872226 857872226 755310132 755310132 776087598 776087598 236323337 609561224 609561224 910512701 910512701 259943058 388498746 558502426 615132360 615132360 350123298 620730338 634076099 1000097984 1000097984 642546022 337123336 810627088 810627088 672906931 588811848 354697512 268748802 86018346 43958545 74828621 75504320 786078927 786078927 752487438 755738800 1057832061 1057832061 692459685 432146323 662726449 662726449 951977634 951977634 476218242 476218242 211845508 211845508 140525900 140525900 540387208 578774088 578774088 133469570 129395128 129395128 101444106 286576960 355625218 355625218 346153290 348357130 348357130 313322304 373992642 373992642 389412704 389412704 363072024 421367452 421367452 864907278 864907278 713087683 579733508 353305698 353305698 983387848 983387848 843104403 408528405 706620596 706620596 541458101 580701777 580701777 1025576455 1025576455 696883714 696883714 659624715 679971846 943541888 953855232 955418115 955418115 538285444 360961328 107995544 103011328 42448128 251720240 251720240 156510828 47292792 259220688 259220688 256116924 107950436 61816176 61816176 344714264 344714264 289420672 340824146 651608024 651608024 614865432 335679498 311827026 580654220 785783517 785783517 776210954 776210954 408224535 378802204 821052288 821052288 469971726 469971726 201523202 768 71901672 432258736 432258736 317874194 317874194 314695890 254012010 43065408 963785028 963785028 1000549668 1000549668 695213536 777310548 777310548 852186577 852186577 816442515 410332038 410332038 240758590 152166948 145681816 145681816 123225744 82387528 82387528 272303104 272303104 66620144 295619776 295619776 63684912 63684912 87751936 239097428 677573224 677573224 820110212 820110212 207152455 269066536 673473046 981919837 981919837 531898654 531898654 379061850 247989326 71902344 71902344 842538324 842538324 842529555 839371473 14698897 6291840 6291584 913965408 937039611 937039611 547725377 818159210 818159210 575718033 383470230 383470230 201449484 135580164 135580164 140058112 140058112 144198740 178799636 204786510 213553434 238547316 497291014 1020888654 1020888654 1003517167 367142390 367142390 302437296 302437296 285661218 318773304 318773304 176696294 384828378 384828378 467065590 467065590 378970058 318281620 280864610 467732981 467732981 64561606 541606659 541606659 615006408 941362726 941362726 594543377 775506141 775506141 900031138 900031138 743490200 299173892 433271542 433271542 145230658 564684114 564684114 564576592 289780578 588683554 891788665 891788665 326421426 371540250 371540250 916457194 916457194 753665894 264766716 424935448 424935448 423025446 423025446 155406982 107796892 492634908 625490707 625490707 170133780 210022560 796366051 796366051 740709530 813389660 813389660 779849491 779849491 672524805 932485661 932485661 540158306 484006632 484006632 430844994 488393614 488393614 426443842 280417954 279446850 198996948 281751136 322633872 322633872 143112740 136714500 162928960 162928960 152044068 142606944 12032704 63397232 63397232 55811888 55811888 52170288 62377728 62377728 43610640 338425098 347810058 347810058 345525194 608678082 609290051 609290051 102307385 336343568 1033902620 1033902620 490084883 471210830 203362598 200676404 142805920 856594788 856594788 698670416 496551534 496551534 832869200 832869200 866944887 866944887 731171445 956605190 956605190 458754438 458754438 915776607 915776607 771765318 771765318 771822848 771822848 741158157 741158157 203559180 203559180 839191265 839191265 1015753680 1015753680 375209680 373397018 614503753 920238139 920238139 208468660 903801801 909124434 909124434 667736409 667736409 669915360 669915360 311960841 75621971 484967515 905970126 905970126 0 0 0 540672 538581174 542525955 542525955 693055154 693055154 446410656 878796937 979898295 979898295 907543974 907543974 893911307 603980033 603980033 87032616 87032616 69521168 89959634 228474716 967460686 967460686 894297429 894297429 1034792406 1034792406 1030499461 1044314793 1044314793 547756112 547756112 170530129 437878641 559908432 735786741 735786741 571049632 545394753 160073281 572970368 572970368 484456138 60464522 60464522 546312776 546312776 243476208 852204246 852204246 707000856 707000856 557611205 729585680 729585680 137840849 135516932 205995196 219851688 219851688 62180208 58482720 546626204 691273285 746510085 746510085 388762083 904108039 904108039 694319524 708970618 770181336 1007345379 1007345379 646125786 646125786 806929923 806929923 233841835 568508560 568508560 95081544 97450884 496955594 536276640 536276640 748760853 748760853 478238997 380926249 404614662 547440102 914638147 939330667 939330667 930756122 930756122 795483060 795483060 692069818 548211265 799287793 799287793 339153573 752087757 986561213 986561213 603137544 921672537 921672537 110223960 122708192 799475912 799475912 199620829 105320499 905667051 905667051 345082867 843673499 843673499 635994339 107445761 24476160 347537713 866061947 866061947 865340019 500674676 500674676 995438851 995438851 302136382 745283732 745283732 849479841 849479841 848334850 829737891 548496338 126882458 325205682 325205682 269167618 271333408 287313186 287783202 287783202 327706522 327706522 37908992 39332408 113349288 113349288 211670504 211670504 84733224 379150251 1033161035 1033161035 805048317 638895588 0 306319640 351003633 595204017 595204017 972956785 972956785 471010304 774648090 774648090 942688536 942688536 769724843 142799467 127697890 127697890 644016576 644016576 236722736 236722736 691478358 691478358 404101638 404101638 319258926 1035627022 1035627022 940661945 940661945 1036126756 1036126756 414392412 471863556 872624234 872624234 136314884 136314884 543662336 675731589 675731589 541426436 146565700 299543640 395312186 395312186 95356074 71997360 8652864 4926144 4082944 10657792 10744128 282944288 633348954 676179584 886694816 900203883 900203883 211678251 307726678 915269704 915269704 1015370494 1015370494 872415243 872415243 335544321 566693984 604505218 876609675 876609675 811598859 807929091 880061352 880061352 370772144 370772144 579047969 579047969 94102592 547006115 547006115 306184338 85493866 219154478 726714976 1011027622 1011027622 755046381 884682770 884682770 142476832 158210916 429851044 429851044 202794318 255624970 285551956 285551956 178815778 226609196 226609196 218423404 340058338 340058338 327155826 327155826 326108264 133728504 133728504 109611120 109611120 163002172 466483378 466483378 143266884 345964724 702560095 702560095 85344326 680960339 680960339 410817124 603904598 603904598 494725995 705451824 705451824 255970817 498258798 498258798 800175091 800175091 907914626 907914626 360503898 97013280 91636736 32014849 708934738 708934738 277526068 975135026 975513879 975513879 692863044 692863044 566756577 565805123 217096582 469880840 753353988 753353988 743506186 611378061 673466443 673466443 554035529 554035529 634000096 634000096 112749688 112749688 24153792 27018816 27018816 20229472 310055250 671362307 671362307 413403138 537264965 537264965 554840357 629248389 1017798774 1017798774 837432696 648729896 1060759359 1060759359 742722640 470957809 470957809 1001299908 1001299908 833769751 571980563 990660888 990660888 648286258 648286258 616451471 770873668 770873668 272374804 272374804 186992340 265335328 265335328 215750186 257761781 943663113 943663113 797826173 797826173 763536889 763536889 617530127 768853726 768853726 669566208 714194212 717629780 717629780 831265254 831265254 412517312 599801904 599801904 462718611 692947584 692947584 567882454 55833264 689211950 995602838 995602838 634608046 757145901 757145901 479206437 288236132 47611552 47611552 47321808 30878308 196579844 671808640 681189328 681189328 690171988 793302380 803473917 803473917 756468428 756468428 779638529 779638529 145859557 26053504 176852616 176852616 941558542 941558542 406400908 651803402 651803402 509234292 509234292 704848904 704848904 547615041 486848879 531124046 531124046 433819658 446759946 446759946 138750084 966088911 966088911 343296686 616874945 642830064 642830064 618790249 1025701057 1025701057 566661190 59647984 132207440 171850156 171850156 100798488 117056456 117056456 95020392 66440112 66440112 178501850 518319046 518319046 482849730 236008088 140234808 273950856 515973268 515973268 340185312 361054722 361054722 239254720 239254720 147286168 147286168 105232580 77859144 106565122 380033370 380033370 342266842 309411934 747432200 747432200 718958853 759568557 759568557 378739871 140510880 140510880 83644360 538272324 538272324 176808528 40701392 53553712 53553712 35511840 35511840 22192704 84103208 168055200 168055200 26663520 26663520 55320592 55320592 29885664 29885664 68157960 68179528 120833400 120833400 109825888 149148484 149148484 177751296 177751296 175482748 167177328 243429928 243429928 266670296 266670296 237667760 794922636 794922636 139202589 559670800 559675041 714018241 714018241 711631813 719226933 719226933 730528781 730528781 666507316 606343800 705761297 705761297 220151340 205396000 107817932 229911528 648359708 648359708 258486353 258486353 85141124 102896680 102896680 12656832 891007274 891007274 354582057 268484992 281141442 550613066 613626441 613626441 365491715 273096610 342612768 342612768 279746528 83492960 48760272 48760272 49523392 49523392 32588528 84493256 177714048 177714048 8179460 152241536 158475908 158475908 138576256 138576256 136499460 74552320 74552320 10085760 114428360 114428360 381325002 435854578 435854578 501026526 501026526 574386111 574386111 352641842 352641842 897437457 897437457 0 0 788560 42468432 419539344 419539344 308634662 364380196 806683883 827765926 827765926 818332109 955646414 955646414 886047435 965061382 965061382 918915108 138741944 100737624 101216272 101216272 106512456 106512456 595660993 595660993 587253392 587253392 131308945 131308945 113540272 113540272 107086128 586826140 776898901 776898901 755310132 755310132 776087598 776087598 236323337 609561224 609561224 910512701 910512701 259943058 388498746 558502426 615132360 615132360 350123298 620730338 634076099 634076099 642546022 642546022 749855660 810627088 810627088 672906931 564655400 354697512 308807058 125354220 125354220 27825580 164762820 164762820 116693000 202115340 755738800 755738800 473977237 449054934 197208098 451699042 523290462 523290462 496509166 496509166 406306726 390568270 390568270 140525900 140525900 75288456 44445464 133469570 133469570 129395128 129395128 352322656 352322656 355625218 355625218 346153290 348357130 348357130 109331296 275607330 275607330 65910728 120585528 120585528 421367452 421367452 864907278 864907278 579733508 579733508 872750127 872750127 983387848 983387848 843104403 408528405 66135905 732483440 732483440 454169696 446170710 439992392 439992392 234980104 163190628 577249344 577249344 170504917 953824452 953824452 180994432 180994432 146474320 34623488 41451672 70829832 135851888 156510828 156510828 134974688 259220688 259220688 155899044 119140016 411751494 512642910 512642910 479991598 414615618 289895808 651608024 651608024 439618326 1048842012 1048842012 580654220 785783517 1042552916 1042552916 911687692 605448833 603981440 729267876 834678354 834678354 691801893 568224704 408208102 135065892 88074242 197206260 197206260 125334870 812252221 812252221 512500818 63964682 825590598 1000549668 1000549668 840185879 840185879 777310548 852186577 852186577 962933732 962933732 683286832 868071482 868071482 543426364 386821218 386821218 336246035 332853498 598522099 598522099 14324416 295619776 295619776 86461810 931281809 931281809 303415354 905569909 944881990 944881990 431023752 431023752 481300328 481300328 406104892 873975312 873975312 375162449 363888866 352867176 71902344 71902344 842538324 842538324 842529555 839371473 479789523 441189778 347158506 564204928 564204928 547725377 615293696 615293696 341312074 13633088 383470230 383470230 201449484 135580164 135580164 140058112 140058112 45872976 175945864 203964736 203964736 238547316 675052972 1020888654 1020888654 1003517167 666931152 431759486 431759486 849994768 849994768 995231493 995231493 668392185 629572240 384303712 384303712 316719570 435961966 435961966 280864610 273229706 8480832 10487200 274747875 929236187 929236187 1032577197 1032577197 775451266 309699792 309699792 280809282 444620873 444620873 976798546 976798546 963302823 694845442 806396720 806396720 564576592 540107538 588683554 891788665 891788665 304474386 371540250 371540250 916457194 916457194 862848773 908365138 908365138 608462590 911861403 911861403 835059363 753554088 125250151 625490707 625490707 155394614 210022560 796366051 796366051 740709530 813389660 813389660 779849491 779849491 672524805 932485661 932485661 540158306 484006632 484006632 430844994 488393614 488393614 289671330 280417954 814349089 814349089 561124257 826458816 826458816 301323681 564762657 566640896 566640896 809261184 809261184 299292512 299292512 63397232 55811888 55811888 52170288 62377728 62377728 4140544 338425098 347810058 640673105 640673105 337714138 382536704 907873352 907873352 973348886 1033902620 1033902620 490084883 471210830 203362598 200676404 142805920 144468776 361591816 361591816 341062380 341062380 231934602 536210430 536210430 476127334 476127334 454099096 454099096 436260914 436260914 915776607 915776607 771765318 771765318 343606602 704914712 741158157 741158157 353715886 353715886 839191265 839191265 1015753680 1015753680 404163596 404163596 38774928 920238139 920238139 208468660 903801801 909124434 909124434 667736409 667736409 669915360 669915360 322456513 405700294 739358851 947984132 947984132 873728523 539107330 539107330 604375067 638979075 638979075 542525955 693055154 693055154 285747830 122880 402653184 402653184 6 486539895 781321021 781321021 1041598616 1047570502 1047570502 1002628172 653030447 364201383 483886135 483886135 856116801 856116801 1034792406 1034792406 1030499461 1044314793 1044314793 548077824 547756112 990321732 990321732 155361556 537858836 570507744 570507744 545394753 160073281 279160326 279160326 619672806 619672806 65778361 546312776 785131405 785131405 1007205542 1007205542 424625167 10398112 31465728 31465728 36047520 36047520 59847297 599920881 599920881 548793153 773999433 773999433 574762604 691273285 746510085 746510085 388762083 904108039 904108039 694319524 708970618 708970618 1007345379 1007345379 461174476 461174476 806929923 815538255 815538255 568508560 568508560 550243139 945098219 945098219 658354030 536276640 748760853 748760853 478238997 903250850 903250850 646497913 914638147 939330667 939330667 930756122 930756122 795483060 795483060 692069818 415763104 678430624 678430624 339153573 328160370 382029936 596584448 603137544 921672537 921672537 110223960 122708192 705645848 779042205 779042205 628029597 634087168 634087168 106473129 97013728 98261992 98261992 129907802 129907802 361806614 361806614 237032148 237032148 500674676 500674676 325437480 105856152 295056926 295056926 207161440 201834512 201834512 169139736 5034112 5057664 268839040 268839040 40820768 40820768 288624322 288624322 287783202 287783202 327706522 438274900 438274900 304434050 288013872 182726404 139046656 449666834 449666834 406209814 1033161035 1033161035 873577850 1053487673 1053487673 306319640 351003633 595204017 595204017 972956785 972956785 441936914 441936914 503636758 503636758 521456190 521456190 334741516 248746984 248746984 644016576 816365888 816365888 193073268 690391156 690391156 883374411 883374411 640245025 1035627022 1035627022 940661945 940661945 1036126756 1036126756 109316184 981470235 981470235 872624234 799618085 797652223 797652223 675731589 675731589 510117151 771977652 842601152 842601152 395312186 341107568 71997360 13234242 14815636 14815636 452667365 452667365 510662955 633348954 1023781037 1023781037 900203883 900203883 211678251 205397772 915269704 915269704 1015370494 1015370494 659038736 626599593 34669753 566693984 609309061 609309061 204731148 149066504 90928320 897843832 897843832 538115315 382096387 579047969 579047969 94102592 547006115 547006115 306184338 106710192 219154478 726714976 1011027622 1011027622 755046381 884682770 949364439 949364439 682623890 682623890 906859551 906859551 957894218 957894218 285551956 178815778 307572452 307572452 218423404 293699584 293699584 51454512 51454512 123291888 123291888 85568112 71853056 71853056 43271744 514704638 514704638 388477757 936847307 936847307 704637463 704637463 544712805 464777426 464777426 436012414 371102256 116672248 116672248 45076392 108119000 108119000 375558420 494011170 494011170 312050186 86075624 97013280 97013280 91636736 36050960 708934738 708934738 268678855 268573712 176324612 696785190 696785190 327582885 174113172 13648212 482427396 482427396 469880840 743506186 743506186 611378061 338718730 545366400 545366400 810900032 810900032 542774913 289226208 289226208 27721280 27018816 27018816 134300292 134300292 671362307 671362307 447556950 537264965 589325332 589325332 629248389 1017798774 1017798774 837432696 648729896 648729896 742722640 742722640 877768862 1034445323 1034445323 1001299908 833769751 571980563 718545227 718545227 657224325 721340046 721340046 335332662 327364404 327364404 455518846 455518846 331644516 491504874 491504874 488315008 488315008 243847272 59830352 678000064 763536889 763536889 257829193 150156228 669566208 669566208 705633108 705633108 545268084 831265254 831265254 412517312 548981314 548981314 462718611 692947584 692947584 567882454 248633556 248633556 995602838 995602838 1042877811 1042877811 757145901 479206437 288236132 67909784 40138792 58867840 58867840 196579844 671808640 681189328 681189328 690171988 690171988 567205089 680040933 680040933 547357889 565416000 565416000 562627520 562627520 29175648 601301152 601301152 553656093 1001718600 1001718600 329139105 509234292 509234292 848653396 941147655 941147655 419447904 531124046 531124046 236290414 1043667749 1043667749 438054674 966088911 966088911 343296686 616874945 616874945 32902010 618790249 1025701057 1025701057 566661190 497898224 497898224 352228586 352228586 227290246 122951920 122951920 95020392 198949744 198949744 153211632 113388120 31099408 55072400 140234808 516499024 516499024 104926938 152317594 340185312 361054722 361054722 367057376 367057376 206242278 208514316 208514316 77859144 59906576 59906576 45644032 45644032 4175616 747432200 747432200 746941784 746941784 707314965 583144648 638059545 651041969 651041969 596116593 987524094 987524094 589856292 589856292 251726108 251726108 205978892 762837605 833653669 833653669 892471899 892471899 815743076 815743076 747564617 638534745 537408585 582353408 582353408 658842168 658842168 132385944 75469864 75469864 51316576 51316576 77138928 77138928 243429928 243429928 199870140 178293620 650161600 794922636 794922636 139202589 559670800 559675041 714018241 714018241 703681973 187415264 698141413 730528781 730528781 666507316 606343800 726937052 726937052 220151340 205396000 134482496 229911528 648359708 648359708 258486353 258486353 731306613 731306613 540481084 417650977 545993793 545993793 362114281 138474370 201449484 201449484 13068300 1037216904 1037216904 206459435 5046912 5046912 16110720 38740288 48760272 48760272 49523392 49523392 42127440 84493256 177714048 177714048 305921228 305921228 293685132 421320232 421320232 171766804 148971840 148971840 141083204 415696810 415696810 513728094 513728094 439255880 174458864 158385060 174319236 174319236 54534916 622936850 622936850 1048815314 1048815314 337461556 524152638 524152638 424992628 424992628 170308314 272662688 272662688 806683883 827765926 827765926 818332109 955646414 955646414 886047435 965061382 965061382 918915108 130115672 100737624 101216272 101216272 36319536 36369712 36369712 50425920 109162544 109162544 110640144 127087224 127087224 76712424 104760832 128049440 128049440 44630720 201328652 201328652 169093120 474304602 940034068 940034068 186855732 400625870 692291796 692291796 103310561 135825772 399408819 550081585 854232962 854232962 386591840 388775375 506011414 506011414 749855660 749855660 967121299 967121299 564655400 308965391 340263065 840045895 970858187 970858187 900727659 704140746 186026112 186026112 117726276 103688584 54278272 847925498 847925498 956211403 956211403 817938627 817938627 1037779609 1037779609 606509810 606509810 539017473 308800144 604234504 620287632 620287632 71592896 39000232 27527520 352322656 352322656 371228674 371228674 314846016 18121216 18121216 1327648 55619122 290270370 353244266 353244266 384640110 447556950 447556950 311966710 863769440 925769023 925769023 872750127 875311118 1016671759 1016671759 906037275 777180684 777180684 732483440 732483440 663477680 663477680 798364777 798364777 642621594 650646517 650646517 582642817 987842912 987842912 978213188 978213188 676218452 410224768 36999872 41451672 70829832 167614384 167614384 143181908 134974688 134974688 111235124 119140016 119140016 411751494 512642910 821568007 821568007 414615618 567086345 567086345 344812552 439618326 1048842012 1048842012 344201297 780278090 1042552916 1042552916 911687692 605448833 603981440 729267876 834678354 834678354 691801893 568224704 408208102 155227256 155227256 197206260 500273152 500273152 812252221 812252221 512500818 151729188 900064256 900064256 691292816 840185879 840185879 567413556 623383118 623383118 962933732 962933732 683286832 868071482 868071482 543426364 386821218 386821218 646812304 646812304 640227472 878066569 878066569 1034192768 1034192768 140926091 931281809 931281809 303415354 905569909 944881990 944881990 651793573 431023752 481300328 672018981 672018981 873975312 873975312 375162449 363888866 352867176 67823492 38977552 581783776 693313061 740779543 740779543 697565089 889490489 889490489 844359219 657090977 657090977 805899314 805899314 878662912 878662912 620443589 673111557 674791168 674791168 42839168 706083600 706083600 551551425 675219481 675219481 649959364 9191936 675052972 675052972 650964929 666931152 666931152 732913718 816766275 1051719943 1051719943 995231493 995231493 668392185 629572240 337453872 383379162 383379162 435961966 435961966 405829075 452096981 452096981 315303622 274747875 929236187 929236187 1032577197 1032577197 775451266 673904278 855373779 855373779 444620873 444620873 976798546 976798546 963302823 694845442 806396720 806396720 274968320 540107538 613601352 613601352 537920001 387361843 269337698 269337698 892128952 892128952 938116940 938116940 908365138 616666810 911861403 911861403 835059363 753554088 414398436 375069110 1065591776 1065591776 864426099 735062153 478612033 276897858 276897858 178274326 43335686 416072274 416072274 281666754 213277096 470422542 470422542 356961444 162434184 162434184 140220936 289123328 289123328 814349089 814349089 829145216 829145216 826458816 301323681 564762657 699191620 699191620 809261184 809261184 299292512 299292512 140600384 15620928 26384704 26384704 29159936 29159936 4140544 345382474 345382474 640673105 640673105 337714138 382536704 907873352 907873352 973348886 973348886 310957434 490733742 1024145286 1024145286 1032783343 1032783343 338177294 894096673 894096673 714195620 746683490 746683490 627635374 830849619 830849619 847301603 847301603 579190850 287458336 40845456 48292368 365008416 365008416 299497184 343606602 343606602 337786530 337786530 353715886 353715886 308848756 308848756 306522258 270889858 404163596 456982294 456982294 424147110 216529356 216529356 507566274 507566274 125491202 11620440 64609360 64609360 322456513 322456513 405700294 739358851 947984132 947984132 873728523 539107330 539107330 604375067 638979075 664649467 752281093 752281093 462791714 454282150 986211798 986211798 600908529 853609458 853609458 781321021 781321021 1041598616 1047570502 1047570502 1002628172 1030062750 1071014826 1071014826 483886135 856116801 988090368 988090368 555858419 306902146 893536579 893536579 548077824 537082993 990321732 990321732 537018416 537858836 537858836 819082086 819082086 435434405 309283794 948568001 948568001 619672806 180609044 269015040 785131405 965155914 1007205542 1007205542 891555134 550900549 550900549 708144304 708144304 194179537 162202788 599920881 599920881 548793153 773999433 773999433 574762604 235130856 235130856 964430046 964430046 671154348 671154348 631581033 490998377 473464714 557169195 557169195 555246400 555246400 749996877 815538255 815538255 547956033 530790867 550243139 945098219 945098219 658354030 275555074 275555074 304390416 304390416 903250850 903250850 646497913 281825259 205193776 205193776 169225276 584401376 584401376 289963272 297535204 415763104 593064756 593064756 571999761 328160370 360436684 746947734 746947734 408785184 408785184 59892336 120289704 705645848 779042205 779042205 628029597 624036736 624036736 76874416 128789880 128789880 95768696 129907802 129907802 361806614 361806614 237032148 237032148 306037152 325437480 325437480 105856152 295056926 295056926 155863324 155863324 116270338 399242738 399242738 330566514 330566514 268839040 40820768 40820768 288624322 290331810 290331810 289545250 285347874 438274900 438274900 304434050 288013872 182726404 23389424 449666834 449666834 406209814 406209814 959097800 959097800 1053487673 1053487673 810676256 810676256 348508026 286747672 517210746 517210746 943926292 950441533 950441533 503636758 521456190 521456190 692592800 732746821 785275228 785275228 816365888 816365888 731482453 690391156 690391156 883374411 883374411 1068775806 1068775806 816587852 789848068 692453512 717624842 717624842 392174199 981470235 981470235 799618085 799618085 797652223 797652223 792017626 792017626 510117151 771977652 842601152 842601152 341107568 341107568 122076264 67786992 44302852 169428316 452667365 452667365 510662955 590424877 1023781037 1023781037 323045533 329946078 969215404 969215404 682373800 682373800 1024858671 1024858671 659038736 747772747 747772747 607417349 609309061 609309061 482624935 428645611 213801314 897843832 897843832 730710663 672689168 570583219 570583219 344815760 303943178 303943178 118062736 106710192 102400624 125845968 587402828 587402828 259997230 680467570 949364439 949364439 682623890 682623890 906859551 906859551 957894218 957894218 337121082 341929120 341929120 307572452 209783452 209783452 271604464 322343682 322343682 308021008 85568112 85568112 80315072 80315072 509097668 514704638 514704638 388477757 936847307 936847307 704637463 704637463 544712805 464777426 464777426 436012414 632307051 651259281 651259281 623700115 756914624 929080331 929080331 874037634 125539448 85725888 350873474 350873474 8030600 15037764 269389825 269389825 35205136 144000098 564135474 715132766 715132766 696785190 327582885 309445361 309445361 482427396 482427396 963777190 963777190 754062285 754062285 338718730 545366400 545366400 810900032 810900032 542774913 289226208 289226208 27721280 25789732 25789732 142215990 308186342 308186342 447556950 447556950 406058097 589325332 589325332 144790854 180568504 180568504 35718080 35718080 11535168 9572928 792107568 877768862 1034445323 1034445323 988843461 194706640 142475904 209281421 594213761 657224325 721340046 721340046 335332662 327364404 327364404 455518846 455518846 331644516 491504874 491504874 488315008 488315008 756678652 756678652 569325524 569325524 555097392 555097392 52890113 48834000 26095232 559949664 559949664 139779584 562107428 562107428 418040128 418040128 460095570 460095570 662463032 662463032 283965889 248633556 248633556 179606480 881071408 1042877811 1042877811 252252775 35333964 67909784 67909784 40138792 58867840 58867840 54562816 23503328 23503328 6691200 6772000 6772000 21681312 21681312 17338496 545160448 545160448 19273984 576529792 576529792 29175648 601301152 1010891159 1010891159 1001718600 1001718600 329139105 1050339115 1050339115 892220894 1009389561 1009389561 857486083 857486083 1008493172 1008493172 1043667749 1043667749 474253644 672337051 672337051 229774188 397679584 462898040 462898040 171254762 176108850 176108850 134100582 497898224 497898224 352228586 352228586 297413248 272633428 122951920 45366608 198949744 198949744 153211632 39601152 31099408 55072400 416294628 516499024 529345180 529345180 299370210 286659144 286659144 229490700 367057376 367057376 206242278 208514316 208514316 29673696 27447648 61068160 61068160 150235520 211703360 211703360 115195544 746941784 746941784 735765556 758281079 949097031 949097031 817905735 815321731 987524094 987524094 589856292 589856292 251726108 251726108 205978892 762837605 833653669 833653669 892471899 892471899 815743076 815743076 747564617 638534745 537408585 624610936 624610936 658842168 658842168 132385944 49108416 28608600 47584592 57090032 482810042 501606600 501606600 469024210 337242916 178702176 818567522 822837950 822837950 396321898 656427581 656427581 984079233 984079233 720660208 720660208 705208912 178873448 253804860 253804860 174763472 726937052 726937052 218640013 588032553 588032553 769469708 769469708 613814784 265948144 265948144 731306613 731306613 675635865 872497359 872497359 831673057 1020416321 1020416321 606407712 679719630 764225769 1037216904 1037216904 362129129 341009360 341009360 334581904 105267920 36906688 28520928 22427232 34863680 42127440 60143760 151764800 151764800 305921228 305921228 293685132 421320232 421320232 171766804 148971840 148971840 141083204 415696810 415696810 513728094 513728094 439255880 95090996 54397440 193351478 1030494983 1065637513 1065637513 622936850 1048815314 1048815314 503428670 524152638 524152638 424992628 424992628 241751530 374308238 692396353 692396353 622893316 876961421 876961421 813348655 673187712 673187712 964763734 964763734 42248212 17139728 49152 73486336 73486336 36319536 36369712 36369712 67704864 126224392 126224392 110640144 381984122 381984122 132986368 347412904 396884346 396884346 101918728 606570013 606570013 137938692 708736975 940034068 940034068 481086798 481086798 692291796 692291796 482480334 908853318 908853318 550081585 854232962 854232962 612197447 612197447 645596470 966003303 966003303 873515870 967121299 967121299 273170688 275301762 340263065 840045895 970858187 970858187 900727659 704140746 186026112 186026112 118758768 61737528 54278272 847925498 847925498 956211403 956211403 817938627 817938627 1037779609 1037779609 606509810 709953492 1043696405 1043696405 910694297 651181464 651181464 71592896 39000232 27527520 353695760 353695760 371228674 371228674 74754896 123749048 123749048 389181216 389181216 290270370 353244266 353244266 384640110 447556950 447556950 311966710 863769440 925769023 925769023 480908622 875311118 1016671759 1016671759 940301142 777180684 940479581 966152742 966152742 877270409 863378090 798364777 798364777 642621594 650646517 650646517 582642817 987842912 987842912 978213188 978213188 676218452 410224768 36999872 36999872 57597360 167614384 167614384 245817488 245817488 111226940 88432928 88432928 87460488 69907048 547220468 821568007 821568007 338351370 567086345 567086345 344812552 982651406 987894423 987894423 338041098 704781322 776339472 776339472 33626525 575676736 575676736 14917700 591748740 591748740 147596149 185247984 185247984 156041394 230895658 230895658 500273152 931283172 931283172 509929861 316928466 300185648 900064256 900064256 321916944 321916944 280366128 285649170 623383118 956307526 956307526 658941779 346869066 346869066 331479760 331479760 339882208 339882208 646812304 646812304 640227472 878066569 878066569 1034192768 1034192768 255871744 408193490 1062750934 1062750934 299386177 445130647 850482297 850482297 192074676 203424012 738401565 738401565 244280420 576684592 576684592 567349696 243004160 243004160 64370396 96797904 693313061 693313061 693260801 697565089 889490489 889490489 844359219 657090977 657090977 805899314 805899314 878662912 878662912 620443589 673111557 681619968 681619968 181461077 706083600 706083600 551551425 675219481 675219481 649959364 71427400 740784512 740784512 257765052 717816560 717816560 732913718 816766275 1051719943 1051719943 908515611 308281746 308281746 290540784 337453872 383379162 383379162 378800912 236403228 405829075 452096981 452096981 315303622 19679488 776058044 776058044 590538080 775071362 775071362 673904278 855373779 855373779 40399427 65094912 587431618 587431618 278643984 319851778 864453888 864453888 847626555 847626555 925921633 925921633 537920001 387361843 269337698 269337698 892128952 892128952 938116940 938116940 344254904 616666810 803804186 944180351 944180351 414398436 414398436 375069110 1065591776 1065591776 864426099 735062153 1043403139 1043403139 379246170 817154883 817154883 136405416 230967904 827490924 993022240 993022240 283164704 283164704 162434184 162434184 140220936 289123328 289123328 275385696 280969026 829145216 829145216 813110212 165287652 165287652 699191620 699191620 537822212 685693686 685693686 573224784 585189824 585189824 26384704 45260480 45260480 35904960 40687568 345382474 345382474 342789704 342789704 379037914 379037914 394489354 394489354 77456992 570409288 570409288 788741544 1024145286 1024145286 1032783343 1032783343 338177294 894096673 894096673 714195620 746683490 746683490 627635374 830849619 830849619 847301603 847301603 579190850 296413384 365242602 365242602 365008416 365008416 285268672 271236616 93578080 81838536 27293288 204784688 204784688 43812668 27631794 270889858 270889858 402900492 456982294 456982294 424147110 216529356 216529356 507566274 507566274 126973144 44040528 44040528 43312048 59665984 59665984 40102208 42993496 115358168 115358168 134242472 206692468 206692468 184586792 135726155 664649467 752281093 752281093 194510934 623523992 986211798 986211798 701308560 853609458 853609458 447873810 447873810 927491742 931632577 931632577 846721868 1053034719 1071014826 1071014826 633813225 663510441 988090368 988090368 143152195 727753088 727753088 434461926 397263247 397263247 603693286 603693286 537018416 463488593 961334439 961334439 970782372 970782372 561269280 948568001 948568001 410316416 808901379 808901379 607836931 965155914 1041419987 1041419987 891555134 550900549 560815116 708144304 708144304 612184192 612184192 204095980 206660488 206660488 12728384 89163040 196103656 196103656 179083348 964430046 964430046 666371961 516165543 300424354 526653908 526653908 478299462 478299462 555246400 591081472 591081472 677422084 677422084 692668229 692668229 267489981 236676156 238609084 406851888 406851888 795250773 795250773 227491421 473942887 959548190 959548190 858334515 858334515 956969277 959649054 959649054 1041761823 1041761823 704779786 353648181 593064756 593064756 710472609 710472609 383923644 974137486 974137486 408785184 408785184 545489702 987427751 987427751 522261196 522261196 665399633 665399633 652085880 652085880 583569896 128789880 109915480 109915480 104423240 84299560 208046144 231809772 231809772 84631584 23594400 14811232 210240588 210240588 176686172 235440476 235440476 116270338 399242738 399242738 330566514 330566514 123019722 18012448 22937856 271457792 290331810 290331810 289545250 285347874 25170962 44175696 44175696 38166992 36096256 15001744 38475200 48755917 568298880 568298880 959097800 959097800 704592259 537610304 810676256 810676256 777517725 777517725 627818773 568348608 943926292 950441533 950441533 143275264 136597556 59292676 692592800 732746821 785275228 785275228 287310082 731482453 731482453 406533944 674554651 674554651 255729468 1068775806 1068775806 674498220 692453512 756814496 756814496 721718276 392174199 291645502 291645502 241316240 241316240 428945798 428945798 792017626 792017626 690623781 690623781 344700080 344700080 109056096 302352384 302352384 67786992 44302852 169428316 214621328 370239778 370239778 187730488 458261044 775032708 775032708 949587341 969215404 969215404 1030307847 1030307847 1024858671 1024858671 865540146 985087075 985087075 607417349 538440982 717505980 717505980 428645611 213801314 604637964 730710663 730710663 672689168 374629896 374629896 344815760 303943178 303943178 118062736 102400624 102400624 538988872 587402828 587402828 259997230 506212728 506212728 148114784 148114784 7538144 42577152 42577152 704742056 704742056 337121082 341929120 341929120 269715578 117962808 84086848 271604464 322343682 322343682 343228770 343228770 368576488 368576488 302929318 509097668 509097668 197282176 81098958 984669434 984669434 972067693 972869607 972869607 782517844 782517844 428055194 632307051 651259281 651259281 623700115 756914624 929080331 929080331 874037634 210966166 257337600 350873474 350873474 222726284 222726284 269389825 808886723 971214625 971214625 827086608 827086608 715132766 455675127 848012818 920627811 920627811 600099057 401053946 963777190 963777190 812688008 811598211 808575747 808575747 336934528 336934528 336185856 336185856 91254344 98928352 98928352 114670048 114670048 142215990 308186342 592862759 592862759 435175202 580923285 580923285 455647348 144790854 531539230 1002850684 1002850684 803086077 803086077 705876045 792107568 792107568 786980820 786980820 194706640 194706640 142475904 142475904 29409952 175006592 175006592 37149456 49054016 49054016 110191328 110191328 83633376 83633376 64234712 1736704 156337922 424372134 979544614 979544614 569325524 569325524 555097392 555097392 52890113 48834000 137220592 198130932 198130932 168700692 953941574 953941574 418040128 418040128 460095570 460095570 424938150 310899062 275776386 166326608 145187264 381512062 1052521000 1052521000 932330551 354421872 478456336 478456336 42034284 15114816 16055168 22842848 22842848 602366804 602366804 593500468 36523268 575655060 575655060 678415637 678415637 541639809 570994945 570994945 576529792 576529792 27325696 541213952 1010891159 1010891159 1002473992 1002473992 881778676 1050339115 1050339115 892220894 1009389561 1009389561 857486083 943119111 1008493172 1008493172 691594232 1013024777 1013024777 474253644 411091014 229774188 595107777 595107777 671537157 673208576 673208576 176108850 140548884 140548884 158808492 184701248 297413248 297413248 272633428 73792 8388672 25735424 52094176 78989154 348237570 348237570 311026770 442048662 442048662 529345180 529345180 307233932 446244954 446244954 193259628 193259628 343702252 475400072 475400072 124518784 105269408 105269408 61068160 94390512 150235520 211703360 746970456 746970456 544271549 594961288 1019681410 1019681410 949097031 949097031 817905735 815321731 671137797 892905217 892905217 666525202 772190820 772190820 101711888 517378048 517378048 336663188 587446954 587446954 335813132 335813132 584880320 584880320 537165521 624610936 624610936 84465921 124938656 124938656 49108416 120653464 120653464 57090032 482810042 501606600 501606600 469024210 337242916 178702176 818567522 822837950 822837950 396321898 656427581 656427581 984079233 984079233 720660208 720660208 705208912 58680208 145608212 145608212 174763472 174763472 187763093 187763093 588032553 588032553 769469708 769469708 712418201 540066332 265948144 622318848 697825893 697825893 872497359 872497359 831673057 1020416321 1020416321 606407712 679719630 764225769 764225769 541461643 552860641 556172672 556172672 547070656 547070656 62999232 28520928 22427232 21693184 21693184 28634336 151764800 151764800 134451968 134451968 2781188 134219392 151126176 151126176 4329476 530994456 530994456 428792934 361582944 361582944 187159912 187159912 95090996 159698692 193351478 1030494983 1065637513 1065637513 840684056 202109964 739268388 503428670 503428670 163366292 369618376 369618376 241751530 566999432 692396353 692396353 622893316 876961421 876961421 961594402 961594402 673187712 964763734 964763734 595878152 67446792 112280104 128240928 128240928 94402784 46798048 23277984 99823848 126224392 126224392 118300432 381984122 381984122 132986368 347412904 396884346 396884346 101918728 606570013 606570013 137938692 708736975 708736975 336597080 481086798 481086798 547259738 547259738 482480334 908853318 908853318 850135468 318909237 318909237 612197447 612197447 645596470 966003303 966003303 873515870 873515870 563534432 641129021 848974097 848974097 352846890 352846890 944918146 944918146 804686074 538265603 646168778 860451112 860451112 656802286 997132350 997132350 135823832 222822808 222822808 187172148 541065344 541065344 236960879 709953492 1043696405 1043696405 910694297 651181464 651181464 61897234 118965064 118965064 353695760 353695760 34064938 107164992 107164992 123749048 123749048 389181216 389181216 285218848 268834818 268701698 313562866 313562866 316850304 316850304 537134081 537134081 691405074 691405074 430592107 430592107 940301142 1002019678 1002019678 940479581 966152742 966152742 877270409 863378090 760768762 760768762 986448000 986448000 982256727 460181216 460181216 301763862 194449428 38847232 38847232 15004096 4665536 35790360 103122456 244994328 244994328 254590028 254590028 165828796 100896860 88432928 98202878 402837510 547220468 547220468 338351370 338351370 286739344 591400208 591400208 982651406 987894423 987894423 338041098 704781322 704791818 704791818 614787728 738570841 738570841 724548068 724548068 614519992 669099612 669099612 185247984 156041394 536129512 536129512 263232758 931283172 931283172 509929861 316928466 300185648 314841376 314841376 829169281 990776515 990776515 585898166 302705526 956307526 956307526 841724033 841724033 710204296 710204296 633497396 339882208 339882208 897791955 897791955 865516339 865516339 813570184 825755403 825755403 255871744 844137283 1062750934 1062750934 299386177 445130647 850482297 850482297 192074676 203424012 738401565 738401565 244280420 576684592 576684592 567349696 243004160 243004160 97338580 96797904 178813436 178813436 34244112 5427744 51926160 320814642 320814642 326879026 541062058 541062058 370464771 85455360 71285256 67366920 8100232 681619968 681619968 181461077 560319136 560319136 32023569 44013376 183179904 446742870 446742870 740784512 740784512 484651490 717816560 717816560 641992857 386800698 1018149950 1018149950 1066217670 1066217670 679477300 679477300 378587656 378587656 444596804 444596804 372783722 379598114 379598114 296326470 302969922 807478273 807478273 784986460 590538080 592630449 592630449 510133965 602570697 615259997 616873177 616873177 587431618 746365442 746365442 673063488 864453888 864453888 847626555 847626555 925921633 925921633 663038073 662773881 807341944 859310530 859310530 701891690 701891690 507282214 430261822 430261822 803804186 944180351 944180351 155198579 799971903 799971903 750830366 750830366 868865015 868865015 1043403139 1043403139 918553492 817154883 817154883 45402450 230967904 827490924 993022240 993022240 948299235 948299235 814676738 309664770 39920016 311676288 311676288 298500192 559343744 559343744 814077888 814077888 165287652 165287652 162319716 293786918 537822212 685693686 685693686 573224784 585189824 585189824 553518401 539645193 570729600 779378396 779378396 847624258 847624258 550975892 340211850 379037914 379037914 394489354 548811856 548811856 1043715478 1043715478 788741544 788741544 741562408 830738624 971446854 971446854 279079365 33554448 71896664 513411816 513411816 469620912 229116956 229116956 65400528 272001600 277872448 296413384 365242602 365242602 298798632 285268672 285268672 342070154 343044490 368599360 368599360 156765724 228076688 401003836 531027074 531027074 447556950 402702342 402702342 76843590 88501704 88501704 82679976 320862970 532285374 532285374 467419112 181567304 181567304 156034276 156034276 197396520 197396520 260255868 260255868 256121340 256121340 290369662 378485850 378485850 113416200 361259058 361928728 361928728 623523992 623523992 701308560 701308560 515126011 515126011 447873810 447873810 927491742 971049864 1033185903 1033185903 1053034719 1053034719 658647635 633813225 663510441 663510441 566977954 811782531 811782531 727753088 627148052 627148052 397263247 603693286 603693286 688802688 688802688 961334439 961334439 970782372 970782372 561269280 285000900 408976576 408976576 808901379 808901379 607836931 417123959 1041419987 1041419987 261495420 216019876 560815116 604795977 604795977 612184192 612184192 8552704 8624320 8624320 12728384 89163040 196103656 196103656 179083348 73271316 5817984 500286730 500286730 300424354 526653908 526653908 553784833 553784833 300731874 629603097 741392648 741392648 677422084 692668229 692668229 918741717 1067501127 1067501127 952186292 406851888 795250773 795250773 227491421 473942887 959548190 959548190 858334515 858334515 956969277 959649054 959649054 1041761823 1041761823 704779786 353648181 353648181 109232312 710472609 979784216 979784216 974137486 974137486 796292004 338870328 545489702 987427751 987427751 587841872 599785713 665399633 665399633 652085880 652085880 583569896 91850128 109915480 109915480 104423240 84299560 208046144 231809772 231809772 32232108 50907692 223743880 223743880 253891480 253891480 235440476 235440476 139118794 127538808 236157292 311969538 311969538 324328354 390064690 532346788 532346788 314366096 522729078 522729078 361358442 353296386 279764322 312352080 312352080 52750624 21800352 38475200 48755917 568298880 568298880 818308652 826549312 826549312 537610304 985984412 985984412 827399352 827399352 993074056 993074056 436471808 944800504 944800504 176950356 696780849 696780849 0 0 730076207 730076207 705207400 705351977 705351977 360874290 658481562 743705229 743705229 224664131 591057220 674498220 674498220 756814496 756814496 721718276 117574320 117574320 147849924 147849924 116523740 525338696 525338696 993013618 993013618 690623781 690623781 363426248 363426248 357164202 357164202 302352384 42967184 42967184 44513616 447661680 448995390 508768926 508768926 213958860 882036892 882036892 949587341 949587341 834682914 1030307847 1030307847 1024459311 1024459311 865540146 985087075 985087075 538440982 538440982 717505980 812778902 1053033381 1053033381 673139504 673139504 1028160203 1028160203 185599632 887389042 887389042 614356842 614356842 546936544 649729881 649729881 538988872 538988872 669008700 672334166 672334166 345401954 965774933 965774933 688998323 813817923 998853027 998853027 581315637 445526513 606678093 606678093 193798192 25467520 116382416 116382416 96069480 397699888 397699888 343228770 368576488 368576488 302929318 302929318 197282176 310092546 435345769 984669434 984669434 972067693 972869607 972869607 782517844 782517844 249696732 249696732 166149272 21632160 144315972 377086176 397936506 397936506 391787626 391787626 360891272 360891272 475945514 475945514 354730636 204452864 808886723 971214625 971214625 827086608 827086608 469443247 455675127 848012818 920627811 920627811 834018147 524089668 544242643 812688008 812688008 811598211 919605330 919605330 900744010 336934528 343098376 846898803 846898803 618934272 650277361 670138565 670138565 583406224 583406224 592862759 592862759 435175202 580923285 580923285 727028821 773941817 790938776 1002850684 1002850684 803086077 803086077 705876045 705876045 566496372 25514496 25305120 20062304 20062304 22052864 143476968 258065996 258065996 237027612 89128104 448220262 448220262 110191328 474739986 474739986 333544524 348160234 797700937 797700937 432893802 979544614 979544614 858441389 785894864 785894864 749529105 934727183 934727183 670016565 709990196 709990196 700267589 953941574 953941574 408707267 284823392 294932450 294932450 39738643 134743044 304847121 464399691 671215762 671215762 1052521000 1052521000 932330551 354421872 478456336 478456336 52293168 52293168 52638000 52638000 33880352 602366804 602366804 593500468 50533504 575655060 575655060 678415637 678415637 541639809 570994945 570994945 174058885 116750736 29834848 32580576 538714252 739110400 1002473992 1002473992 881778676 881778676 167682156 258813372 466217024 466217024 500210153 943119111 943119111 691594232 691594232 1013024777 1013024777 717638673 717638673 714344661 595107777 595107777 671537157 673208576 673208576 84285480 140548884 140548884 158808492 184701248 184701248 148898244 140636580 40169664 40169664 174197104 174197104 154931440 383460874 383460874 379135578 530178174 530178174 360599728 307707020 426895362 446244954 446244954 193259628 302422292 343702252 475400072 475400072 235688080 105269408 105269408 42880304 94390512 141734320 254558804 746970456 746970456 885426048 885426048 1019681410 1019681410 654085206 385371737 396853688 556990246 671137797 892905217 892905217 666525202 772190820 772190820 142891796 552656629 606602505 606602505 587446954 587446954 848147634 848147634 585033361 584880320 546636289 546636289 548550200 600345504 600345504 124938656 70344200 120653464 120653464 82072362 531576018 531576018 118483252 68050944 68050944 85331000 85331000 29446752 277661792 277661792 296764160 296764160 62341376 62341376 11926384 9824832 4465280 64817888 64817888 37633088 169909376 169909376 34095524 172040320 711004872 783496029 783496029 712418201 712418201 540066332 232444844 622318848 697825893 697825893 548322693 967171912 967171912 898646119 898646119 301691362 549823552 549823552 550333121 550333121 552860641 556172672 556172672 547070656 547070656 62999232 8719344 5904000 21693184 21693184 28634336 28634336 147801204 399505288 485772964 485772964 421391872 421391872 151126176 176821332 530994456 530994456 428792934 361582944 361582944 186902824 417301074 417301074 200423432 483955110 483955110 580935523 840684056 840684056 202109964 739268388 0 0 136314880 323018212 323018212 166641842 822662534 822662534 738858371 939694349 939694349 880563077 961594402 961594402 409503621 371245355 595878152 595878152 67446792 112280104 128240928 128240928 109115392 46798048 126453088 126453088 99823848 118300432 118300432 117102552 111443976 130948344 130948344 31857120 71436664 71436664 204349716 410205964 410205964 273903622 607479888 607479888 149469449 139510404 4456452 51664409 470944065 1001886375 1001886375 850135468 344040664 344040664 739197453 739197453 925767068 925767068 565025782 565025782 161776464 671748096 682100037 1042549021 1042549021 683803875 683803875 1031498666 1031498666 804686074 947407880 947407880 860451112 860451112 656802286 997132350 997132350 565367649 944489503 944489503 911230145 541065344 777569931 777569931 637898912 637898912 90849376 82626248 81714888 61897234 61897234 118965064 118965064 78774538 78774538 2502656 107164992 107164992 323723658 323723658 120829184 285218848 285218848 339364968 339364968 337122562 405448292 436941846 511922866 511922866 341934962 691405074 691405074 442501288 268855330 303560776 1002019678 1002019678 341641791 205530546 259522804 649748434 769681288 769681288 386666522 986448000 986448000 982256727 465577664 182498224 194449428 194449428 38847232 38847232 38422528 38689152 38689152 103122456 257690800 257690800 254590028 256963816 256963816 100896860 67806984 98202878 402837510 761865482 761870262 761870262 217724816 935668827 935668827 591400208 851969162 851969162 845678035 644503705 821202755 877973000 877973000 614787728 738570841 738570841 724548068 724548068 614519992 669099612 669099612 431039616 431039616 536129512 536129512 263232758 341865732 543823278 682112077 825154671 825154671 413482439 508106286 829169281 990776515 990776515 585898166 261199452 515720292 515720292 841724033 841724033 710204296 710204296 633497396 90483096 281296897 897791955 897791955 865516339 865516339 813570184 825755403 825755403 458318462 844137283 844137283 816857747 683223936 708874215 708874215 183583525 53551920 35651856 587202852 587202852 194119748 193266528 193266528 214152240 214152240 213991540 97338580 89128104 775054233 775054233 617110718 636410249 889716027 889716027 860750001 940945983 940945983 541062058 970661328 970661328 788959749 788959749 294797152 775026720 775026720 734212833 679477317 679477317 585454673 585454673 608184208 608184208 446742870 899752347 899752347 484651490 710977733 710977733 283324866 386800698 1018149950 1018149950 1066217670 1066217670 684445894 679477300 448254666 378587656 444596804 444596804 372783722 379598114 379598114 296326470 302969922 807478273 807478273 784986460 1052801398 1052801398 666135021 666135021 602570697 615259997 616873177 616873177 529804984 746365442 746365442 673063488 579410842 890396777 890396777 841761171 844445361 844445361 663038073 662773881 807341944 859310530 859310530 708468596 693256679 650117337 604456858 604456858 818065412 818065412 931754009 931754009 892243362 892243362 750830366 750830366 868865015 868865015 767725840 918553492 918553492 666014155 486478058 378667648 449190102 1044789442 1044789442 829169077 948299235 948299235 814676738 309664770 68199328 311676288 311676288 298500192 559343744 559343744 814077888 814077888 176759892 187179360 187179360 293786918 293786918 276842594 308022930 707796008 707796008 553518401 553518401 847418754 847418754 779378396 779378396 847624258 847624258 550975892 340211850 76457170 281640202 310927432 548811856 548811856 1043715478 1043715478 1062680362 1062680362 741562408 741562408 971446854 971446854 366032345 366032345 651266154 873490498 873490498 329796592 329796592 65400528 65400528 37874928 34174720 40157696 41420688 85173224 85173224 335670056 335670056 342070154 343044490 368599360 368599360 156765724 228076688 401003836 531027074 531027074 447556950 402702342 402702342 245944348 399931960 464718486 464718486 320862970 532285374 532285374 467419112 181567304 181567304 156034276 156034276 197396520 218169408 260255868 260255868 256121340 256121340 290369662 378485850 378485850 113416200 361259058 361928728 361928728 294914658 570498128 826636322 826636322 781524825 781524825 759544254 742645160 742645160 971049864 1033185903 1033185903 519441366 117649464 611138936 655409721 655409721 551118072 566977954 811782531 811782531 557842720 627148052 627148052 229313584 229313584 93064840 688802688 691077460 691077460 939655175 939655175 850123296 1004917909 1004917909 570554560 803042269 803042269 8788032 1002679237 1002679237 941789735 941789735 303828498 69109018 2807040 13456512 13456512 8742656 8742656 8552704 655551161 655551161 246259256 673425413 732121184 732121184 795220413 795220413 711828952 711828952 666830852 700431682 809175170 809175170 553784833 553784833 314970666 629603097 741392648 741392648 301599054 236083752 508138063 918741717 1067501127 1067501127 952186292 326361604 463550544 463550544 934965858 934965858 291108362 291108362 876672380 876672380 621660583 537534487 370911266 462507568 462507568 461532704 316789076 262836734 1019830687 1019830687 979784216 979784216 723843211 796292004 796292004 1068765588 1068765588 411085412 275899266 965214940 965214940 615068001 615068001 78717137 132649568 133895584 806358009 806358009 363337512 943550730 1032449799 1032449799 774608468 739046542 754894437 754894437 226369452 567418700 845629046 845629046 716495183 765177618 765177618 127538808 236157292 311969538 311969538 324328354 390064690 532346788 532346788 314366096 522729078 522729078 361358442 353296386 279764322 312352080 312352080 52750624 21800352 21800352 19870080 16908448 537890816 542112897 826549312 838975536 838975536 985984412 985984412 827399352 827399352 993074056 993074056 436471808 944800504 944800504 176950356 860842113 860842113 985577733 985577733 952816839 730076207 705207400 705351977 705351977 764246866 764246866 743705229 743705229 631275768 631275768 228423560 228423560 123062830 1053985466 1053985466 449214648 449214648 365248754 475164890 475164890 525338696 1062537954 1062537954 1040656899 1040656899 1002911991 363426248 363426248 357164202 357164202 290013192 93827568 42716416 44513616 447661680 448995390 508768926 508768926 213958860 882036892 882036892 872959624 810863235 624724353 294249570 872677888 873728523 873728523 805642760 805642760 138221056 414867008 414867008 304661778 812778902 1053033381 1053033381 722078153 673139504 1028160203 1028160203 805570272 887389042 887389042 973598598 973598598 842619122 842619122 649729881 62394379 317817079 669008700 672334166 672334166 851657846 965774933 965774933 814220290 813817923 998853027 998853027 581315637 445526513 606678093 677559152 677559152 595772080 595772080 116382416 96069480 397699888 402196018 402196018 16790232 292729136 292729136 52646818 84996780 310092546 508105250 508105250 420496742 420496742 411037218 717853857 717853857 105911108 249696732 249696732 166149272 95626560 95626560 377086176 397936506 397936506 391787626 521787082 521787082 360891272 475945514 475945514 354730636 69351592 89704104 411533952 495926382 929917254 1041410179 1041410179 87216519 871794944 871794944 834018147 834018147 758931558 729880079 434561732 805322786 805322786 919605330 919605330 900744010 609414144 343098376 846898803 846898803 618934272 650277361 670138565 670138565 583406224 583406224 176163060 64487664 138061184 138061184 566756577 727028821 773941817 790938776 790938776 140613764 190216740 190216740 164762340 248665636 261031676 785981684 785981684 727050933 58010544 578103536 578103536 258065996 258065996 237027612 89128104 448220262 448220262 173912580 474739986 474739986 333544524 348160234 797700937 797700937 432893802 517738206 858441389 858441389 785894864 785894864 749529105 934727183 934727183 670016565 709990196 709990196 700267589 945898886 945898886 284656391 284321510 284321510 553943941 553943941 134743044 304847121 464399691 671215762 671215762 451701844 378927363 364002598 294791545 143600340 143600340 52293168 52293168 52638000 52638000 33880352 112361760 555768521 595327268 700956549 700956549 138412164 556056852 591661233 591661233 223441652 703313772 703313772 585110592 161706800 32580576 32580576 32040448 55095936 79230584 79230584 79929024 167682156 258813372 492574958 492574958 356599490 356599490 297322338 651215412 651215412 75501161 579394704 717638673 717638673 714344661 86148274 224353254 224353254 335756896 498665188 498665188 459631408 364773146 480511676 480511676 175140754 414182420 414182420 134222112 134222112 174197104 174197104 154931440 383460874 383460874 379135578 530178174 530178174 360599728 307707020 426895362 426895362 405535498 315836484 302422292 335679882 335992204 335992204 235688080 228262538 16777488 8388672 8388672 141734320 254558804 254558804 512188368 885426048 885426048 522519694 522519694 466884634 466884634 112074072 352567664 352567664 331462848 331462848 16830464 126222956 142891796 142891796 552656629 606602505 606602505 492686238 440510989 848147634 848147634 585033361 80426184 546636289 546636289 548550200 600345504 600345504 63712240 70344200 89846536 89846536 82072362 531576018 531576018 428101836 356964522 187617698 158614016 412622866 950113383 950113383 326897442 438529223 828633683 828633683 679189077 679189077 672921093 562434784 193363428 163711472 35458704 59552800 59552800 737016277 737016277 711004872 783496029 783496029 675774520 751980788 751980788 714154581 714154581 229637484 229637484 837363021 967171912 967171912 898646119 898646119 158910372 549823552 549823552 550333121 550333121 829059137 829059137 319765554 596632592 816696355 816696355 299896241 60127906 60127906 838953234 838953234 570689553 570689553 660635680 660635680 485772964 421391872 421391872 292067176 486663908 486663908 498195296 498195296 401776910 298887378 206406464 417301074 417301074 200423432 483955110 516738270 516738270 663904400 663904400 769140460 769140460 555719375 555719375 801689098 1027420793 1027420793 579078225 822662534 822662534 738858371 939694349 939694349 880563077 536871690 956321314 956321314 387465765 370412058 286312800 127926304 54526128 10764352 109115392 109115392 23963648 126453088 126453088 102191304 97666352 287052328 287052328 343094386 359797674 359797674 282191954 533883234 533883234 495336564 495336564 410205964 405194008 675928838 675928838 149469449 139510404 940736788 940736788 892506509 1001886375 1001886375 942581989 786235611 910166109 937136236 937136236 925767068 925767068 807900396 879193079 879193079 671748096 682100037 1042549021 1042549021 683803875 683803875 1031498666 1031498666 531079743 947407880 947407880 264520659 176735476 13681344 843343820 843343820 1061993786 1061993786 944489503 911230145 713032866 940346716 940346716 916504923 722124814 604789097 82626248 81714888 31264488 7290240 25600256 27785568 27785568 15099264 2230528 105165120 105165120 323723658 323723658 134643625 134643625 229990772 339364968 339364968 337122562 405448292 436941846 511922866 511922866 1070006680 1070006680 866210072 805989530 805989530 553103318 553103318 537734145 531278771 903534315 903534315 894071736 894071736 769681288 156315781 837952454 837952454 700741171 465577664 160928528 16178112 139797632 146091284 178816896 178816896 38689152 38689152 22183328 257690800 257690800 139529256 256963816 256963816 8437824 8437824 36605024 36605024 761865482 761870262 761870262 217724816 935668827 935668827 348130760 851969162 851969162 845678035 644503705 821202755 877973000 877973000 374459672 374459672 124357368 373474002 373474002 68216672 68216672 197372784 431039616 431039616 272941976 250644516 887690683 962623816 962623816 682112077 825154671 825154671 882378179 882378179 616564418 234150680 944882320 944882320 261199452 515720292 515720292 466954998 466954998 332203524 234945440 105661696 90483096 59474401 655045505 655045505 806261441 806261441 626299016 633093799 633093799 458318462 832621313 832621313 461373558 683223936 708874215 708874215 183583525 53551920 35651856 587202852 587202852 167772177 3806065 585840160 585840160 201950248 317445589 317445589 344651226 775054233 775054233 617110718 636410249 889716027 889716027 860750001 940945983 940945983 674678016 970661328 970661328 788959749 788959749 294797152 775026720 775026720 734212833 679477317 679477317 585454673 585454673 608184208 608184208 600382472 899752347 899752347 335678658 69654820 283324866 283324866 292214178 292214178 646275544 810161283 810161283 684445894 495820020 448254666 328204914 327699984 42746944 42746944 4329856 5971168 42128704 44711168 44711168 606093376 614515017 1052801398 1052801398 666135021 666135021 514529238 514529238 513353310 281426562 529804984 529804984 117597030 292335426 579410842 890396777 890396777 208311395 844445361 844445361 413526342 607335686 607335686 548897096 708468596 708468596 702940957 679815237 655679765 614800408 818065412 818065412 931754009 931754009 892243362 892243362 541115218 921223796 1030800303 1030800303 708466442 708466442 433617790 486478058 486478058 378667648 449190102 1044789442 1044789442 374017041 3932800 40930440 87884184 358766624 358766624 342149514 301193226 277955682 406905826 423175974 423175974 413535232 321912886 790630701 790630701 307626146 627050637 627050637 308022930 707796008 707796008 657231520 859313241 859313241 847418754 316300432 316300432 46927056 37362624 814388307 814388307 276861970 642422800 885921227 885921227 873223587 205175202 404867120 1062680362 1062680362 609900068 494151181 564249280 929505522 929505522 366032345 651266154 873490498 873490498 329796592 329796592 422126886 422126886 287346656 287346656 459954444 535483902 535483902 494949776 335670056 335670056 76017952 90676136 90676136 70378824 86509344 86509344 277233968 277233968 277235810 277235810 302531874 346165578 346165578 512304222 512304222 464718486 424549542 213902314 59486368 59486368 56759648 42082800 415397989 415397989 375818870 568635491 568635491 849611044 874701243 874701243 377553101 975918763 975918763 86627380 605767659 605767659 228176702 623525160 623525160 826636322 826636322 999317537 999317537 759544254 742645160 994949646 994949646 956161600 568436256 519441366 250010468 611138936 655409721 655409721 551118072 463544694 455480977 557842720 557842720 543162753 322601090 322601090 125598200 93064840 285632576 691077460 708659365 708659365 603960916 850123296 1004917909 1004917909 570554560 803042269 803042269 271716464 1002679237 1002679237 941789735 941789735 919322135 483661429 783666128 783666128 587278577 587278577 579774464 117458744 655551161 655551161 246259256 673425413 732121184 732121184 795220413 795220413 711828952 711828952 666830852 700431682 809175170 809175170 404145666 314970666 314970666 203360086 214047448 301599054 301599054 236083752 436677012 503382030 503382030 319299706 319299706 316920100 590865188 590865188 934965858 934965858 893104051 893104051 876672380 876672380 380368218 380368218 134340612 337166560 337166560 239287640 613179160 613179160 1019830687 1019830687 932242099 932242099 85457448 289579804 687022222 1068765588 1068765588 411085412 275899266 965214940 965214940 602481968 890320379 895549995 895549995 833300136 806358009 806358009 363337512 943550730 1032449799 1033538823 1033538823 1016995407 754894437 754894437 226369452 567418700 845629046 845629046 716495183 765177618 765177618 143240240 143240240 33816640 17039616 2435328 19933728 69247872 72475272 72475272 14385408 7026048 49841664 49841664 42030544 2144000 2695168 6361088 21369856 21369856 23663681 568975841 568975841 1023077602 1023077602 838975536 838975536 822157347 571918352 33686033 448512 264192 1973760 436471808 436471808 874186306 874186306 860842113 860842113 1029703552 1029703552 1000741239 630328094 951215862 951215862 796067260 796067260 764246866 1033686639 1033686639 631275768 631275768 228423560 246920432 246920432 1053985466 1053985466 482671323 547684743 557299759 694174625 694174625 634397669 1062537954 1062537954 1040656899 1040656899 1002911991 327557253 586968128 586968128 541369860 108214600 93827568 42091012 42091012 988058609 988058609 451753125 966670897 966670897 840094227 872959624 981731476 981731476 624724353 755183661 755183661 420030179 596713590 884584160 884584160 138221056 136788228 909641109 909641109 518393658 632296943 722078153 722078153 961055460 961055460 805357638 805570272 805570272 731687142 973598598 973598598 842619122 842619122 283445768 283445768 173040644 173040644 145776754 432062694 851657846 851657846 814220290 814220290 558433505 153230720 325652502 325652502 194773680 539545013 677559152 677559152 595772080 595772080 11016224 2232576 37361442 402196018 402196018 347283914 347283914 327044004 327044004 156204788 482221902 508105250 740549873 825820437 973621053 973621053 1054003728 1054003728 998212688 426909311 344962332 859139702 859139702 463477889 95046928 262328440 262328440 391120584 521787082 521787082 253793988 253793988 207788864 207788864 149964768 89704104 411533952 495926382 929917254 1041410179 1041410179 87216519 871794944 871794944 713821269 822221942 822221942 970553632 970553632 812058063 686477986 541065345 808502144 808502144 609414144 279517184 351806370 351806370 564334632 564334632 556040256 23395233 60261104 280108320 280108320 64487664 64487664 60359344 60359344 24038304 254181912 254181912 139860612 140613764 190216740 202349240 654836793 797019660 797019660 785981684 785981684 727050933 58010544 642191056 642191056 791546653 791546653 963858070 963858070 219495568 219495568 189885732 441815718 441815718 395343752 395343752 99632952 172627092 302515472 443159958 443159958 1031852616 1031852616 1018169123 1018169123 575193392 575193392 255379117 568934496 569451489 569451489 945898886 945898886 284656391 284321510 284321510 553943941 1032079724 1032079724 772423733 472881163 897773800 897773800 96718955 71438472 71438472 67108872 169954024 169954024 97820956 110634568 110634568 97079720 63338656 126097544 555768521 595327268 700956549 700956549 138412164 556056852 591661233 591661233 595084736 703313772 703313772 585110592 161706800 4957312 80504904 80504904 55095936 79230584 79230584 79929024 123156392 413729380 492574958 762513043 762513043 1023614584 1023614584 741051615 418948365 264165740 264165740 243436488 595106628 595106628 580007537 817039670 833956707 833956707 554831444 498665188 459631408 364773146 480511676 480511676 175140754 414182420 414182420 190629268 190629268 11934528 61610624 61610624 57864768 57864768 317961036 317961036 479270353 522398818 715040011 715040011 243312984 315836484 315836484 706878239 706878239 203559180 946005653 946005653 228262538 147855884 147788816 119653648 95145184 100330048 115719048 115719048 635933088 635933088 612755529 923473529 923473529 466884634 436983832 380117284 503654430 778980478 803600861 803600861 788319725 748652224 61547280 35860752 34867728 337267474 337267474 426645940 477760518 477760518 169707122 80426184 276804418 276804418 384323400 384323400 279123608 37699344 41045376 41045376 29558944 29558944 21246176 428101836 428101836 356964522 187617698 158614016 412622866 950113383 950113383 326897442 438529223 828633683 828633683 679189077 679189077 672921093 562434784 193363428 163711472 18466464 59552800 59552800 737016277 737016277 610181444 610181444 209082521 794249757 794249757 751980788 714154581 747309005 747309005 671687685 1023610017 1023610017 343503884 419736102 757676329 757676329 884393954 884951115 884951115 819847209 829059137 829059137 813817923 813817923 816696355 816696355 299896241 319195360 319195360 838953234 838953234 570689553 570689553 660635680 660635680 587708856 93111296 292067176 292067176 486663908 486663908 498195296 498195296 401776910 298887378 206406464 222871860 222871860 178516308 146318176 516738270 516738270 670230288 670230288 769140460 769140460 555719375 555719375 801689098 1027420793 1027420793 579078225 579078225 684257494 684257494 689227562 689227562 942771887 942771887 956321314 956321314 983671544 983671544 815014008 127926304 158368464 199632896 199632896 253837638 463898894 494956894 494956894 314806438 314806438 287052328 361250342 361250342 359797674 422940487 436600897 533883234 533883234 857791290 857791290 443434080 405194008 675928838 1013787484 1013787484 240535758 940736788 940736788 892506509 892506509 942581989 942581989 786235611 910166109 937136236 937136236 476716044 413718538 807900396 879193079 879193079 411490374 411490374 411490374 372147548 425731492 425731492 1059722559 1059722559 1037026729 1037026729 698365451 698365451 630629187 630629187 1004193238 1004193238 1061993786 1061993786 822336595 713032866 713032866 940346716 940346716 916504923 722124814 604789097 33763344 99537184 342169432 342169432 349942602 349942602 343459722 7363626 2230528 105165120 105165120 90322488 90322488 134643625 168247384 229990772 253541653 586301736 883838787 883838787 48928993 850107026 850107026 1070006680 1070006680 866210072 805989530 805989530 553103318 553103318 537734145 531278771 903534315 903534315 894071736 894071736 833353059 833353059 837952454 837952454 700741171 808240641 808240641 437698119 806626496 806626496 551528016 445808192 12635392 6572416 4770048 202260480 202260480 660480 209993728 209993728 8437824 8437824 1497600 1497600 169609216 169609216 45664736 66874864 109390872 109390872 348130760 379594114 379594114 323292594 321136816 282858568 282858568 7130496 60952440 74634120 74634120 54129712 54129712 17872456 96469224 176190432 176190432 59294832 151495494 239191224 887690683 962623816 962623816 409417999 1040449740 1040449740 882378179 882378179 616564418 304958931 944882320 944882320 942691920 644859198 206286340 536948608 545001345 545001345 607087649 607087649 543313065 573136136 573136136 19276800 19276800 988208736 988208736 768923685 14835181 722534448 722534448 442525726 680346183 680346183 452207981 971130214 971130214 838996101 838996101 727716325 685837136 730146933 730146933 721690688 585840160 201950248 317445589 317445589 344651226 344651226 606803063 606803063 117053400 841431498 841431498 1007287310 1007287310 674678016 674678016 36054784 36054784 51459600 177416224 177416224 729882688 729882688 596754993 596763249 596763249 60876289 33670536 73416008 268507210 600382472 600382472 335678658 335678658 272779698 304296210 304296210 292214178 847630416 847630416 805779459 464350718 495820020 801330253 801330253 768133428 768133428 754992244 125648036 175449880 181011240 181011240 581361329 581361329 606093376 614515017 778299989 778299989 542562945 466300960 514529238 514529238 513353310 276862976 276862976 318767058 318767058 304189250 314963456 314963456 316744256 316744256 309330834 337066506 337066506 557856162 557856162 541727649 788794116 788794116 702940957 679815237 655679765 614800408 641191593 641191593 553456130 553456130 493804643 203678148 73746564 921223796 1030800303 1030800303 708466442 708466442 977137345 977137345 555548933 193170912 866564562 866564562 845249024 845249024 1043500399 1043500399 833526074 529869980 529869980 342149514 521181284 521181284 406905826 423175974 960006964 960006964 741474412 790630701 790630701 775998927 775998927 799328794 799328794 244243548 92406857 657231520 859313241 985928744 985928744 766166718 766166718 606264904 851331022 851331022 814388307 276861970 642422800 885921227 885921227 873223587 269412096 288289284 604237833 609900068 609900068 148679616 564249280 929505522 929505522 110952640 400329944 400329944 399584848 312846490 284287938 422126886 422126886 287346656 287346656 459954444 535483902 535483902 497732936 494236500 316674066 303305410 368315178 368315178 359082792 75109760 75109760 369266712 369266712 277235810 277235810 67667002 346165578 346165578 512304222 512304222 461182798 424549542 220551470 485761568 485761568 76054672 161196768 415397989 415397989 375818870 568635491 568635491 849611044 874701243 874701243 788987960 975918763 975918763 168463804 873012364 873012364 393158779 623525160 623525160 723988704 723988704 999317537 999317537 441191574 491093256 994949646 994949646 337347900 337347900 447105036 447105036 417575576 417575576 415426758 463544694 463544694 814000711 814000711 442262020 949562449 949562449 322601090 146544248 146544248 285632576 545626178 708659365 708659365 696374358 696374358 315104917 144574788 144574788 682329700 682329700 554431521 310167218 310167218 338464062 919322135 919322135 483661429 783666128 783666128 587278577 587278577 579774464 117458744 117458744 113333336 110187520 122557440 961340902 961340902 801711357 914481443 914481443 122818593 1623552 1623552 269051134 269051134 262121592 466138043 466138043 176296020 214047448 769208377 769208377 835219938 898533025 898533025 504395013 971186391 986833286 986833286 735052533 590865188 840257290 1060205326 1060205326 893104051 672712197 651924605 380368218 380368218 134340612 374364922 374364922 116502524 613179160 613179160 521325010 858524674 858524674 623954640 47498025 289579804 289579804 272662720 272662720 113381592 381833352 381833352 297816170 268435458 890320379 895549995 895549995 833300136 325748032 286080864 286080864 892246572 958973223 1033538823 1033538823 1016995407 165551844 251135076 707302492 707302492 616956088 616956088 663429368 925565184 925565184 604635668 604635668 470966398 329326626 321458962 321458962 199600262 199600262 130410626 218679430 218679430 84460584 83920224 42676592 36774240 31655392 52560336 52560336 23731296 23731296 568975841 568975841 1023077602 1023077602 804727516 804727516 852686879 852686879 694143166 775103375 775103375 743749059 743749059 262617665 874186306 874186306 612577353 140947986 1029703552 1029703552 1000741239 639055572 951215862 951215862 907936467 796067260 724862031 1033686639 1033686639 312022144 318976370 320074290 355623192 355623192 140284016 194203760 482671323 547684743 557299759 694174625 694174625 634397669 1061926595 1061926595 625000617 275802999 243607644 45039876 586968128 586968128 541369860 25297248 25297248 42091012 145667152 988058609 988058609 451753125 966670897 966670897 840094227 805433872 981731476 981731476 345701085 755183661 755183661 420030179 596713590 884584160 884584160 682098836 682098836 909641109 909641109 738610332 632296943 772077280 958385569 961055460 1023661410 1023661410 687264006 710480640 710480640 570812433 329729626 311997138 311997138 283445768 283445768 69476930 247062745 247062745 88163085 729931856 730107136 730107136 712298038 672450580 168086021 276111622 276111622 194773680 308374486 308374486 221402664 190398016 190398016 55268256 6033024 384382808 384382808 312616890 347283914 347283914 327044004 327044004 156204788 482221902 482221902 740549873 825820437 973621053 973621053 1054003728 1054003728 998212688 426909311 763673157 859139702 859139702 561898356 718683777 718683777 840308340 840308340 328902978 328902978 274252802 349735970 349735970 299631240 359930089 359930089 358815561 209453832 790233447 790233447 634354383 343761720 343761720 338438112 713821269 822221942 822221942 970553632 970553632 812058063 630411619 541065345 808502144 808502144 303476123 279517184 856057011 856057011 359170634 556040256 700453476 700453476 816125280 816125280 280108320 9848896 9848896 30720704 569509345 569509345 538183777 537920001 34998720 31461937 14620864 202349240 654836793 797019660 797019660 755309160 755309160 13703840 161300948 642191056 642191056 791546653 791546653 963858070 963858070 219495568 253492360 253492360 441815718 441815718 395343752 730473912 730473912 368846306 302515472 443159958 932188381 1031852616 1031852616 1018169123 1018169123 826852515 475012288 323803875 159986756 792923337 792923337 857377886 857377886 503694605 552032554 583166365 583166365 1032079724 1032079724 885527511 885527511 897773800 897773800 1012977370 1012977370 991624620 991624620 210095224 210095224 97820956 110634568 110634568 109591328 109591328 126097544 126097544 77786224 120536376 126980608 126980608 129771920 129771920 91614120 595084736 595084736 115902289 82854480 75666856 4957312 80504904 80504904 50410560 68954744 68954744 215556104 215556104 413729380 413729380 762513043 762513043 1023614584 1023614584 741051615 418948365 264165740 264165740 243436488 595106628 595106628 580007537 817039670 833956707 833956707 554831444 440088342 152844594 2671872 737280 46080 16786432 17376288 174714288 190629268 190629268 11934528 61610624 76546434 351347658 401629802 401629802 317961036 479270353 522398818 774055476 774055476 375693470 839896464 839896464 706878239 706878239 203559180 946005653 946005653 147855884 147855884 147788816 119653648 95145184 100330048 537123432 537123432 635933088 635933088 612755529 923473529 923473529 532990206 436983832 380117284 503654430 778980478 803600861 803600861 788319725 748652224 35860752 35860752 34867728 337267474 337267474 80560712 351779562 351779562 391209960 391209960 276804418 276804418 384323400 384323400 279123608 37699344 41045376 41045376 15086266 15086266 21810688 21810688 21081344 354268826 354268826 76746856 85058088 85058088 16703680 25116464 31652944 31683296 54335072 55078080 55078080 97635768 97635768 58865232 82083128 82083128 109810136 109810136 110204136 141663748 141663748 109603736 209082521 794249757 794249757 617628676 679090053 747309005 747309005 671687685 1023610017 1023610017 695216426 695216426 757676329 757676329 884393954 884951115 884951115 819847209 347241960 571167826 813817923 813817923 288314881 37141408 48255248 319195360 319195360 57491840 554307728 554307728 71556128 107579577 587708856 587708856 93111296 27711840 40912192 40912192 415730896 415730896 343175056 302289802 394965342 394965342 313835032 310051586 188241440 381337606 381337606 66208032 670230288 670230288 653907345 598245504 294984 663499384 663499384 245085837 558544019 558544019 968463938 968463938 684257494 689227562 689227562 942771887 942771887 626338485 594764417 983671544 983671544 905981952 259016796 259016796 241248916 241248916 253837638 463898894 494956894 494956894 314806438 314806438 226496726 361250342 361250342 130684856 422940487 436600897 436600897 514071048 857791290 857791290 443434080 277369409 539050176 1013787484 1013787484 240535758 306348266 306348266 222430619 539936896 650566777 668372350 668372350 452764638 410406916 410406916 285514544 252991332 252991332 149460932 259788636 259788636 152357412 339369276 339369276 92274776 316591069 1059722559 1059722559 1037026729 1037026729 698365451 698365451 630629187 630629187 1004193238 1004193238 492646062 493953966 493953966 971540624 971540624 864469358 486965324 486965324 131251815 739148621 739148621 620223321 598968504 342169432 349942602 349942602 343459722 19165064 280234818 280234818 280202818 269139210 269139210 425131306 425131306 210237516 210237516 586301736 883838787 883838787 537952920 850107026 850107026 367601152 981496864 981496864 241585432 241585432 139121796 153691428 1025254952 1025254952 925885758 953121227 953121227 813338850 833353059 833353059 679321922 679321922 550827349 808240641 808240641 437698119 806626496 806626496 551528016 445808192 309489936 35975424 88080168 202260480 256319644 256319644 209993728 209993728 43947112 105304280 105304280 125214368 125232424 223554472 223554472 156582472 113803416 23456160 72451218 301999306 323292594 323292594 321136816 308068978 308068978 286672522 368057448 368057448 74634120 270045394 301340240 301340240 290465536 437818370 502416538 502416538 445197410 407242932 239191224 843092066 843092066 469899323 1040449740 1040449740 213911583 451730446 451730446 449215442 449215442 942691920 942691920 970238423 1025184781 1025184781 545001345 545001345 607087649 607087649 543313065 573136136 573136136 19276800 19276800 988208736 988208736 768923685 51038304 722534448 722534448 242255908 680346183 1042773596 1042773596 971130214 971130214 838996101 838996101 727716325 685837136 730146933 730146933 721690688 320876914 428486712 428486712 276379232 461373558 461373558 912902158 912902158 229954981 872007450 872007450 1007287310 1007287310 402898250 634439138 975697699 975697699 556947809 754404652 754404652 744669493 744669493 610548220 610548220 596763249 137341184 119801088 119801088 268507210 550772242 874001922 874001922 272779698 542893826 892073641 929575049 929575049 852547545 847630416 860791968 860791968 638518688 801330253 801330253 768133428 768133428 754992244 125648036 175449880 181011240 181011240 581361329 581361329 249488348 249488348 1014037462 1014037462 1050825485 1050825485 366107226 409225670 409225670 336072264 336072264 318767058 337988170 337988170 605441856 605441856 577291667 477228248 710678926 910824217 910824217 877470859 557856162 541727649 788794116 788794116 39325341 242328164 242328164 132170232 252751764 386483876 553456130 553456130 215209325 286260512 286260512 826611950 1053251527 1053251527 720019888 720019888 977137345 977137345 721677525 732029301 866564562 866564562 845249024 845249024 1043500399 1043500399 833526074 529869980 529869980 300540560 521181284 521181284 770427950 770427950 960006964 960006964 741474412 741474412 551951354 943118080 943118080 799328794 799328794 244243548 402654224 642274484 642274484 985928744 985928744 766166718 766166718 606264904 851331022 851331022 281506882 114035928 114035928 76287048 76287048 134217732 269412096 288289284 288289284 420537506 420537506 280817444 144896516 10621248 9605952 445419424 445419424 421539186 399584848 312846490 285553462 82752108 204999688 204999688 137628420 421111592 471908622 497732936 497732936 494236500 316674066 303305410 368315178 368315178 367662570 97654890 230183588 369266712 369266712 404545308 521802082 521802082 319294810 270797058 187046196 201772324 406889756 406889756 220551470 485761568 485761568 258440548 187589980 161196768 158775264 12583648 0 0 268509188 268509188 788987960 788987960 411295744 373189488 350506896 873012364 873012364 674937366 674937366 655902041 1053742863 1053742863 625740969 489642417 441191574 441191574 272108436 737896248 867362692 867362692 447105036 469827860 469827860 417575576 415426758 507640228 507640228 814000711 814000711 442262020 949562449 949562449 243928440 185993556 154440364 232851360 232851360 177757060 843789494 843789494 696374358 998855796 998855796 454703297 682329700 682329700 554431521 407856418 896132523 896132523 662261792 224134378 154667904 154667904 142870596 260952100 260952100 189088784 576290832 576290832 113333336 593423040 593423040 961340902 961340902 801711357 914481443 914481443 752589212 712186444 685053080 685053080 642729612 262121592 466138043 466138043 176296020 176296020 769208377 769208377 835219938 898533025 898533025 504395013 971186391 986833286 986833286 875152495 875152495 304292631 1060205326 1060205326 929687298 519795364 519795364 381220172 1067431959 1067431959 818974731 1012170886 1012170886 143389764 521325010 521325010 858524674 858524674 904814500 1027481391 1027481391 968908989 968908989 801456374 1049175135 1049175135 381833352 297816170 839508219 839508219 271853712 339163914 354210432 894004395 894004395 466130068 466130068 260182140 725014863 725014863 403837446 321313074 886063378 886063378 707302492 616956088 616956088 663429368 925565184 925565184 604635668 604635668 470966398 329326626 321458962 321458962 296265736 287018784 362468970 362468970 236084022 84460584 176628852 176628852 36774240 31655392 61347216 183177520 183177520 151134468 159648868 540577384 540577384 497238726 804727516 804727516 852686879 852686879 694143166 775103375 775103375 743749059 743749059 892309605 892309605 344031810 156418098 507768990 816125272 906968091 949889940 949889940 639055572 907936467 907936467 724862031 844746145 844746145 727571569 727571569 318976370 320074290 890008709 890008709 664447808 664447808 421237272 520741950 520741950 240299686 134617092 430084 4358272 4358272 0 0 360448 387072 387072 4270624 18025184 25297248 25297248 41039552 145667152 145667152 446959104 446959104 402655298 546108742 546108742 43771446 954019332 954019332 345701085 228198920 336088124 336088124 226492524 226492524 19399968 1063394805 1063394805 728111482 738610332 738610332 606442520 923103282 958385569 958385569 1023661410 1023661410 821593152 710480640 710480640 570812433 497073878 108877546 350885322 621306280 621306280 781271568 781271568 809640092 881004634 881004634 820647943 820647943 811646291 672450580 648447113 702157905 969857622 969857622 493656258 573283512 611184009 938836410 938836410 316534482 316534482 384382808 384382808 371735536 371735536 300030442 300030442 43070404 156501792 156501792 72319416 72319416 626295336 840976827 840976827 940230248 940230248 176309188 675970564 763673157 763673157 580916101 561898356 718683777 718683777 978509987 978509987 408019590 600450725 738219588 738219588 768481633 768481633 959708068 962916164 962916164 702875653 790233447 790233447 634354383 343761720 343761720 338438112 965919168 965919168 650331807 209152792 768729837 956435305 956435305 360606115 977448255 977448255 354217002 204806726 856057011 856057011 359170634 382079450 700453476 700453476 816125280 816125280 272598642 317511538 322880432 322880432 569509345 569509345 538183777 799113516 799113516 157986840 207213404 207279896 207279896 87863400 65014088 10706496 56039728 56039728 161300948 161300948 208647682 287970594 287970594 495530316 495530316 375692062 253492360 253492360 207287460 211860000 221723972 730473912 730473912 528427760 528427760 241168294 932188381 932188381 245854072 869810768 869810768 826852515 475012288 323803875 159986756 792923337 969097752 969097752 857377886 798502502 798502502 583166365 583166365 534796870 534796870 885527511 885527511 842126537 834413027 1012977370 1012977370 991624620 991624620 335958380 305461380 86399552 42405584 51198480 109591328 232031052 232031052 571609961 619091316 690887981 690887981 244486637 661030404 661030404 622854441 774930892 774930892 736910341 587960352 226071696 5977728 5977728 1769600 8388608 121653698 121653698 281576868 324585138 388776396 388776396 241179160 773778904 773778904 486860409 269290562 324120696 324120696 201887936 214619340 214619340 485407788 485407788 235339062 235339062 61865328 10824000 161464800 428592612 428592612 445866244 457029766 457029766 323240084 141793408 141793408 61025920 61025920 32085680 173825488 351347658 401629802 401629802 285246072 232431444 232431444 774055476 774055476 375693470 839896464 839896464 506746372 506746372 475530894 373446278 272662544 69728520 69728520 34622464 42500912 140789904 161781792 537123432 546754561 546754561 269412984 944983040 982788119 982788119 532990206 383314010 656669176 656669176 600519921 595678560 123768672 119876360 112068840 116338696 362705536 362705536 374627120 378245218 378245218 352395306 118571568 391209960 391209960 87089746 82912200 82912200 42068232 108392840 108392840 60487008 60487008 131867000 131867000 23359496 90700200 90700200 354268826 354268826 122149944 122149944 92734816 92734816 128443472 128443472 187993172 187993172 40787808 84422892 202880092 202880092 196471668 218276700 218276700 170135824 109810136 110204136 110204136 109603736 109603736 100704544 28386144 617628676 617628676 234602540 234602540 210248140 558813286 558813286 67108872 695216426 695216426 482253134 482253134 336666050 347309130 347309130 347241960 347241960 546393353 891864363 891864363 667048978 151345380 308717696 316670418 679652818 679652818 554307728 591941760 591941760 122558481 105042072 48858144 32433520 301710216 301710216 509324980 509324980 343175056 343175056 302289802 394965342 394965342 313835032 310051586 188241440 381337606 381337606 127579168 127579168 20452056 672712197 672712197 678127693 746960261 746960261 245085837 500657596 500657596 968463938 968463938 861051424 861051424 625239861 811362698 811362698 626338485 594764417 823597465 905981952 905981952 259016796 259016796 255474816 255474816 108266412 55445400 21444768 4391072 122060800 122060800 117772480 117772480 86118696 86118696 275935488 479465996 479465996 514071048 773722432 784076637 784076637 538583856 868464163 868464163 285299651 33554448 33950992 52698144 52698144 31407840 32844768 78287864 107039944 107039944 123588250 285514544 285514544 159299136 159299136 176851508 176851508 430964070 430964070 524984624 524984624 319431718 319431718 411299910 411299910 344656154 344656154 147682596 658716528 658716528 127656049 533720760 533720760 621818666 647672569 647672569 971540624 971540624 864469358 486965324 486965324 131251815 902177130 902177130 620223321 598968504 127975800 338329602 338329602 69915912 19165064 280234818 280234818 280202818 269139210 269139210 425131306 869426619 899604075 899604075 485677812 391198611 583452680 1035128167 1035128167 753013197 824886510 981496864 981496864 902832740 902832740 467090166 209986426 1025254952 1025254952 925885758 953121227 953121227 642894482 260756604 619439168 619439168 967583648 967583648 497563233 306357454 306357454 412001538 412001538 165540192 309489936 309489936 71437208 88080168 92908504 256319644 256319644 120010208 51178656 98047104 105304280 105304280 125214368 125232424 223554472 223554472 156582472 312508498 347685970 347685970 125870730 125306808 317600786 317600786 308068978 395600584 395600584 368057448 368057448 55422192 270310784 301340240 301340240 290465536 437818370 502416538 502416538 445197410 634768125 634768125 843092066 843092066 486821423 786581864 816054744 918700180 918700180 738332994 682881152 682881152 677380573 743360362 970238423 1025184781 1025184781 767991129 591604129 138676356 138676356 136651136 119925048 113837517 258613363 365564073 365564073 537120192 537120192 1019739125 1019739125 867195491 867195491 470171962 1042773596 1042773596 974782848 90363648 107762588 320790178 616307713 616307713 468790300 885008844 885008844 789863441 958712095 1059529198 1059529198 814953027 814953027 912902158 912902158 229954981 872007450 872007450 972367975 972367975 553862865 634439138 975697699 975697699 556947809 754404652 754404652 744669493 744669493 610548220 610548220 226387764 201950720 119801088 119801088 81796104 550772242 874001922 874001922 319967786 542893826 892073641 929575049 929575049 852547545 805734411 860791968 860791968 885467202 885467202 590142041 584840913 553718440 553718440 72759377 12859552 13904224 63938208 551309200 551309200 549767361 550106737 1014037462 1014037462 1050825485 1050825485 366107226 537966869 548541249 548541249 689459352 780589149 780589149 772890432 1046667673 1046667673 577291667 477228248 839980507 910824217 910824217 877470859 280431945 740491629 740491629 577047649 229453164 745261213 745261213 730990625 252751764 759456452 816326402 816326402 824303907 824303907 286260512 826611950 1053251527 1053251527 720019888 720019888 950873792 950873792 729572631 732029301 732029301 572701733 546049089 141038829 142495500 354325018 354325018 378966016 378966016 333978408 286896776 698183852 770427950 770427950 632155497 269823105 916800537 916800537 105382474 943118080 943118080 438500880 438500880 428401470 428401470 642274484 642274484 917289675 917289675 252654889 215093964 101156804 82352128 550154377 550154377 302462994 816394586 914778595 914778595 288015797 256556292 761399615 761399615 850812801 850812801 1020384257 1020384257 955828167 68850127 445419424 983640404 983640404 889391107 889391107 687083729 648152004 228928014 228928014 270797678 270797678 242485272 121969984 280331032 295733154 295733154 116529200 311578112 367662570 367662570 97654890 750683985 750683985 453282428 968365069 968365069 889192564 713168959 860740817 860740817 558075923 805330994 809500803 843190288 843190288 258440548 258440548 187589980 428120065 428120065 516044222 779014431 779014431 821857450 1041180299 1041180299 968149863 795550315 795550315 966162688 966162688 921475100 921475100 866603875 655902041 1053742863 1053742863 908053074 908053074 318945284 268465769 439472201 737896248 965759982 965759982 138622008 469827860 469827860 441003138 441003138 507640228 507640228 437029394 303582724 303828498 328866644 328866644 243928440 185993556 154440364 232851360 232851360 554222625 843789494 843789494 553697313 998855796 998855796 958599169 338833672 137383424 187885450 756907659 896132523 896132523 662261792 202541899 112259937 81220424 108505144 260952100 260952100 189088784 576290832 576290832 93796968 593423040 593423040 220596889 55329200 34237768 77967360 752589212 752589212 712186444 685053080 685053080 642729612 0 135680 34214416 34214416 39339536 39339536 5948544 169088 42079744 664385624 914641139 914641139 247472151 212338152 875152495 875152495 472925754 472925754 929687298 929687298 619660327 751474022 751474022 1067431959 1067431959 818974731 1012170886 1012170886 1053108947 1053108947 642641472 642641472 550657761 904814500 1027481391 1027481391 968908989 968908989 801456374 1049175135 1049175135 369407125 117722264 839508219 839508219 271853712 339163914 354210432 894004395 894004395 466130068 906891560 906891560 858524979 725014863 403837446 321313074 886063378 886063378 50466176 271794180 406057734 406057734 312340050 312340050 165886976 165886976 155607040 24488864 27599488 296265736 296265736 287018784 362468970 362468970 236084022 51305216 176628852 176628852 59351120 21643376 61347216 183177520 183177520 151134468 613540425 613540425 815888743 815888743 623114762 693899942 693899942 365353985 344197194 353833501 714996287 714996287 704692059 976637739 976637739 858803824 773758045 1063123027 1063123027 488340046 949889940 966977657 966977657 480679013 753182162 753182162 844746145 844746145 727571569 727571569 659241596 659241596 890008709 890008709 664447808 664447808 415510222 737675253 747196165 771718197 771718197 110012105 1030930906 1030930906 1072714202 1072714202 654443369 220014409 548479680 548479680 542449796 15015312 16587664 41039552 139474565 592263297 592263297 446959104 829069925 829069925 705323205 705323205 977655858 977655858 537526466 202529792 336088124 336088124 226492524 226492524 19399968 1063394805 1063394805 984924737 984924737 561129090 297246906 923103282 923103282 230787113 790631629 821593152 821593152 674018469 674018469 497073878 497073878 578410435 578410435 621306280 621306280 781271568 781271568 809640092 881004634 881004634 820647943 820647943 811646291 648447113 648447113 702157905 969857622 969857622 604828720 604828720 611184009 938836410 938836410 316534482 316534482 315709184 324339626 487973640 487973640 300030442 300030442 77824292 516536454 516536454 268510259 705167921 705167921 840976827 840976827 620757033 305136443 176309188 675970564 675970564 576717201 34153488 134874256 172101780 318935060 978509987 978509987 408019590 600450725 738219588 738219588 768481633 768481633 959708068 962916164 962916164 702875653 563273445 420635160 203023884 758193496 758193496 663148665 965919168 965919168 176706151 174638484 768729837 956435305 956435305 360606115 977448255 977448255 838514786 444002997 861483120 861483120 418080918 940598261 940598261 351179424 351179424 308557210 341608570 341608570 322880432 322880432 125344240 631151140 756728941 799113516 799113516 304375890 304375890 207279896 207279896 541894344 605646201 605646201 330669970 330669970 475211152 475211152 28173909 761715085 761715085 735357572 735357572 441999962 441999962 214557900 228094200 376129620 463861044 758631136 758631136 1058668334 1058668334 1000889161 160566531 214990876 551674305 551674305 342707722 342707722 510656811 510656811 217839564 544084547 969097752 969097752 482479440 798502502 798502502 628399136 628399136 612030345 534796870 374903452 242486170 244452540 244452540 108658806 367678220 367678220 335958380 335958380 305461380 44222088 117053400 119636920 119636920 232031052 232031052 571609961 619091316 690887981 690887981 244486637 661030404 661030404 622854441 774930892 774930892 736910341 587960352 226071696 31384416 31384416 25809032 12244864 127345602 127345602 405629164 535619006 535619006 388776396 952305733 952305733 773778904 605551498 484239837 946122463 946122463 717527813 717527813 621676637 268968032 294200418 294200418 235339062 318124612 442837398 442837398 428592612 428592612 445866244 457029766 457029766 323240084 141793408 169696770 436327942 436327942 404276742 302497300 173825488 169481748 146050656 272894177 272894177 300541410 300541410 450904289 450904289 551559296 551559296 607257489 607257489 475530894 879259853 879259853 181449720 181449720 166012560 42500912 151028064 161781792 161781792 546754561 546754561 775951376 944983040 982788119 982788119 391949951 383314010 656669176 656669176 600519921 595678560 453246988 210841364 210841364 171778636 395514538 395514538 374627120 378245218 378245218 352395306 337698824 307681912 307681912 275064354 309454480 385476866 399247410 399247410 367609314 367609314 321373090 321373090 131867000 34744770 93524482 93524482 76376264 76864352 122149944 122149944 291422947 567205089 609366673 609366673 999693799 999693799 665322873 665322873 783495437 783495437 196471668 651376652 651376652 603331232 38612704 36177168 74842184 74842184 100704544 100704544 28386144 556864768 556864768 556414433 567940833 567940833 134451904 152887296 152907300 671909412 671909412 160506784 280169984 280169984 16777152 26711008 277058065 848421459 848421459 891864363 926643218 926643218 571129200 308717696 316670418 679652818 679652818 600455315 600455315 705510624 705510624 1049054866 1049054866 397645376 314449746 301710216 509324980 509324980 506719984 190194354 264235584 264235584 218904616 216607568 216607568 126544512 119925048 373379378 373379378 127579168 45703042 672712197 672712197 678127693 746960261 746960261 163303661 880899160 880899160 948072550 948072550 861051424 861051424 168607780 168607780 252521504 252521504 1044071572 1044071572 511097739 396971028 396971028 218178540 255474816 255474816 108266412 153929766 153929766 441227628 486555706 486555706 478412824 478412824 287310114 312353394 312353394 479465996 479465996 454001411 805977118 805977118 784076637 697668567 938484275 938484275 919261277 919261277 1054871231 1054871231 1072666714 1072666714 925867489 925867489 869275825 402449928 118803000 207232393 207232393 159299136 159299136 176851508 176851508 430964070 616269728 914551013 914551013 947933847 947933847 948961863 948961863 839909460 147682596 202535772 658716528 658716528 555982896 282954334 289419028 661696441 1025606660 1025606660 510397854 449727766 187046500 643694593 643694593 63228144 902177130 902177130 568627089 540660232 127975800 127975800 126635264 282142112 295907618 295907618 346429538 346429538 2177098 268766208 268766208 869426619 899604075 899604075 627658944 627658944 663673977 1035128167 1035128167 753013197 824886510 824886510 733088012 902832740 902832740 467090166 209986426 278215360 361759528 361759528 286925608 105056640 105056640 125779896 125779896 174976404 967583648 967583648 497563233 625297933 625297933 617757922 881481924 881481924 165540192 71710976 71437208 71437208 75160672 123996600 123996600 61725240 77759904 98047104 98047104 93459048 89411224 117999392 117999392 108188568 128168082 399074810 399074810 356575834 349743402 349743402 339943552 339943552 385764610 395600584 395600584 362087898 54864048 55422192 270310784 270310784 10222578 269054880 269054880 282223172 282223172 177166176 634768125 634768125 505032229 877678728 877678728 742431731 816054744 918700180 918700180 738332994 682881152 682881152 677380573 677380573 572700517 737031276 767991129 767991129 694719713 138676356 138676356 178395481 699210241 699210241 258613363 768536976 843193435 843193435 820826476 1019739125 1019739125 867195491 867195491 531628680 531628680 974782848 974782848 927958307 932109691 932109691 616307713 616307713 468790300 885008844 885008844 789863441 958712095 1059529198 1059529198 814953027 872686730 872686730 743255557 912211909 968512931 968512931 972367975 972367975 553862865 553862865 194882304 152213972 182017904 263570368 628388128 748053237 748053237 647107161 226387764 226387764 654849089 662765633 662765633 545394752 6166848 4588096 319967786 319967786 282751264 839324987 839324987 615782793 615782793 805734411 805734411 604453009 885467202 885467202 862768563 862768563 665149353 665149353 10670400 12603648 13049792 38333056 551309200 551309200 596296020 596296020 562087152 168297492 29623025 163787281 345232478 537966869 548541249 548541249 689459352 780589149 780589149 772890432 1046667673 1046667673 954603975 445118492 839980507 839980507 221447524 819733224 819733224 751701223 740491629 577047649 533333365 745261213 745261213 730990625 551336450 759456452 816326402 816326402 824303907 824303907 643404759 553096399 984708950 984708950 964790574 1027080767 1027080767 950873792 843269239 843269239 53212464 236198062 1041106981 1041106981 109714080 354325018 354325018 71627032 333978408 333978408 92127520 698183852 951653384 951653384 766995279 472706801 916800537 1016994568 1016994568 692455109 872937228 872937228 764785967 428401470 428401470 571681376 1046311071 1046311071 659218489 210578508 210578508 141057480 82352128 550154377 550154377 302462994 816394586 914778595 914778595 288015797 256556292 761399615 761399615 850812801 850812801 1020384257 1020384257 955828167 845369168 943296169 983640404 983640404 889391107 889391107 687083729 648152004 228928014 344827188 344827188 270797678 242485272 162406808 378340200 378340200 42619818 499589484 499589484 339872040 339872040 89789034 750683985 750683985 453282428 968365069 968365069 889192564 713168959 860740817 860740817 711137302 805330994 809500803 843190288 843190288 147100800 143580228 17186948 428120065 428120065 516044222 779014431 779014431 821857450 1041180299 1041180299 968149863 795550315 795550315 966162688 966162688 921475100 921475100 866603875 807728516 721660588 1047756703 1047756703 908053074 80690376 1041544834 1041544834 776993949 965759982 965759982 138622008 430077400 430077400 510469514 510469514 185016342 437029394 437029394 303582724 303828498 328866644 328866644 188352820 185902936 133688904 99214824 88847308 554222625 747820648 747820648 692227245 553962181 958599169 958599169 338833672 137383424 187885450 756907659 851578894 851578894 696416507 188209512 221563692 255479452 255479452 536891980 599887985 599887985 787056088 787056088 592541104 592541104 129433225 279267914 279267914 96694504 274928898 274928898 34537472 34537472 15544064 308860050 308860050 105934992 453351475 453351475 152569380 152569380 748343961 748343961 906222594 906222594 755041873 914641139 969214032 969214032 805956326 541189670 298927904 472925754 472925754 570492170 619660327 977956372 977956372 751474022 371848147 309506228 189915828 526721346 526721346 1053108947 1053108947 642641472 642641472 550657761 550657761 637097856 637097856 386808157 315987588 120535080 120535080 300920882 300920882 100612328 118634672 118634672 57211986 269290768 304923394 317932160 340340196 340340196 906891560 906891560 858524979 67525675 326109200 326109200 292817826 289703682 894189736 894189736 539757697 539757697 134263554 799953822 799953822 727319878 18911488 16961568 2248992 16801792 16801792 16801792 16900128 16900128 16961568 16961568 48251024 59351120 59351120 15278528 15279552 15279552 15213440 144262157 613540425 681077288 815888743 815888743 623114762 693899942 693899942 365353985 344197194 404910480 404910480 422081968 422081968 976637739 976637739 858803824 773758045 1063123027 1063123027 567625216 866440358 966977657 966977657 480679013 753182162 753182162 119816464 330045450 816534320 908957235 908957235 659241596 355017552 127311008 424309258 424309258 343857855 737675253 747196165 771718197 774504632 774504632 1030930906 1030930906 1072714202 1072714202 654443369 220014409 548479680 548479680 542449796 3613440 36839232 36839232 173089060 592263297 592263297 420946357 829069925 829069925 705323205 705323205 977655858 977655858 597188046 597188046 227578006 227578006 629735441 759540745 759540745 940071463 940071463 984924737 984924737 849913992 849913992 1057004210 1057004210 304686354 790631629 790631629 684541603 684541603 676720387 542501505 377645352 578410435 578410435 94144352 675620940 675620940 109441193 100754632 100754632 570687856 570687856 1001499761 1001499761 127993308 413663512 512230494 512230494 161746398 604828720 604828720 369356826 369356826 318265570 318265570 430943186 431088486 431088486 487973640 487973640 220416586 214106188 77824292 516536454 516536454 268510259 705167921 876767281 876767281 357996688 893553067 893553067 125497144 619359523 619359523 303746050 355173112 737735220 737735220 544921473 727231796 727231796 35313168 193500266 920569910 920569910 935690630 935690630 799129785 711460245 711460245 302779410 420635160 420635160 203023884 758193496 758193496 663148665 859927364 859927364 517032797 751013369 751013369 546172619 927957944 927957944 841192571 841192571 838514786 444002997 861483120 861483120 418080918 940598261 940598261 530665824 457483506 378412122 341608570 341608570 82205194 125344240 125344240 631151140 756728941 756728941 444976955 304375890 304375890 437830560 437830560 541894344 605646201 605646201 607611741 607611741 475211152 587155625 587155625 761715085 761715085 735357572 735357572 661255297 441999962 595860575 595860575 376129620 463861044 758631136 758631136 1058668334 1058668334 1000889161 162812186 69940488 551674305 551674305 342707722 342707722 510656811 626213221 626213221 544084547 953514633 953514633 451259912 451259912 210088196 628399136 628399136 612030345 846088597 1028578479 1028578479 666011598 1021710387 1021710387 71975424 786666391 786666391 113757536 113757536 611068608 611068608 609360157 557133248 766066000 766066000 598626076 118413892 738380904 738380904 203281928 638925844 643299993 643299993 28711776 123585472 123585472 84474816 28629800 31384416 31384416 69279744 341847272 341847272 127345602 405629164 535619006 535619006 344206361 952305733 952305733 845753792 843192256 843192256 946122463 946122463 884349979 956570707 956570707 945471149 294200418 294200418 72473088 318124612 858590273 858590273 422946006 832436353 832436353 171589796 300006034 422262036 832191639 832191639 436327942 693049063 693049063 302497300 33624592 41979920 84759616 272894177 272894177 300541410 300541410 450904289 906772520 906772520 889523343 821488279 820435395 206620308 879259853 879259853 181449720 181449720 166012560 110745432 151028064 151028064 599904616 599904616 44208201 775951376 775951376 34677904 110691000 110691000 88146632 176163006 365168874 365168874 453246988 453246988 210841364 210841364 171778636 395514538 395514538 289690224 104974600 270606594 352355480 352355480 323536050 131121842 275064354 346231640 385476866 399247410 399247410 367609314 367609314 361755152 361755152 343573928 343573928 390603216 390603216 335728650 385990690 385990690 311636474 291422947 697910480 742895677 742895677 999693799 999693799 665322873 665322873 783495437 783495437 158800941 651376652 651376652 603331232 646337032 646337032 128353384 42992192 15845952 33104833 600058929 600058929 556864768 556414433 577417809 577417809 674498634 674498634 210013260 671909412 671909412 434819022 280169984 335828416 341885322 351044674 351044674 848421459 848421459 874112523 926643218 926643218 571129200 293927937 822544515 822544515 732033024 682096965 600455315 705510624 705510624 1049054866 1049054866 397645376 314449746 279790656 388601802 506719984 506719984 126351480 128139560 218904616 218904616 216607568 216607568 11608896 52752610 373379378 373379378 347738584 45703042 66891664 433868062 565821546 565821546 603553832 603553832 880899160 880899160 948072550 948072550 253784228 253784228 168607780 168607780 252521504 252521504 1044071572 1044071572 511097739 396971028 396971028 218178540 218178540 82973640 106322322 153929766 153929766 441227628 486555706 486555706 478412824 478412824 377508466 312353394 312353394 230387659 269871618 454001411 952862170 952862170 910203277 910203277 938484275 938484275 919261277 919261277 1054871231 1054871231 1072666714 1072666714 925867489 925867489 869275825 811647505 893395746 893395746 370213040 133359428 133359428 750834368 750834368 224430573 674061804 914551013 914551013 947933847 947933847 948961863 948961863 839909460 142684936 202535772 637900597 637900597 555982896 374867201 661678496 661696441 1025606660 1025606660 510397854 449727766 187046500 643694593 643694593 922510840 922510840 276879440 276879440 50875472 43959376 43566672 37845632 282142112 295907618 295907618 346429538 346429538 272543426 342936580 342936580 561564970 694732197 694732197 627658944 627658944 663673977 663673977 661376993 295701129 159663184 294218968 294218968 121157384 123418296 389293968 389293968 845101862 845101862 964165856 964165856 632865771 901082004 901082004 718177559 990686069 990686069 910167040 910167040 871190036 871190036 617757922 881481924 881481924 350457216 350457216 34485568 42992208 102550424 123996600 123996600 115144008 77759904 77759904 33704000 34507840 89411224 117995952 117995952 55578040 128168082 399074810 399074810 356575834 349743402 349743402 339943552 339943552 385764610 385764610 397079768 397079768 356379090 356379090 282455882 315655904 315655904 8895200 114528976 123941304 177166176 177166176 92586048 84150312 67158024 877678728 877678728 829666057 829666057 850559772 850559772 689048448 355916586 359700608 359700608 889734156 889734156 697086318 766253247 766253247 694719713 473956483 118361385 587442264 699210241 699210241 120859181 768536976 843193435 843193435 1042145420 1070402276 1070402276 747660319 747660319 531628680 531628680 842283545 842283545 927958307 932109691 932109691 682363912 325058704 325058704 478812884 478812884 491483048 491483048 419292230 419292230 1037217876 1037217876 872686730 743255557 912211909 968512931 968512931 846065043 390388555 419547540 419547540 324409936 326051616 326051616 263570368 718457980 748053237 748053237 647107161 101050392 545525824 654849089 662765633 662765633 545394752 9049152 3590304 596272656 596272656 576251044 839324987 839324987 615782793 615782793 343350145 337604098 280512834 279217986 363859153 862768563 862768563 665149353 665149353 131203121 50479504 50479504 47252992 17516240 16912672 596296020 596296020 562087152 168297492 134234836 181436420 345232478 379462926 379462926 429941030 844382008 844382008 910608107 910608107 675375820 954603975 954603975 984052038 984052038 1050416021 1050416021 829949203 819733224 751701223 576327856 576327856 533333365 360322986 702101682 702101682 551336450 551336450 683992007 809653632 809653632 807978243 643404759 553096399 712835016 712835016 964790574 1027080767 1027080767 726675829 843269239 843269239 155838693 236198062 1041106981 1041106981 424934948 357829290 358815576 459316398 459316398 449121790 513322821 683417572 951653384 951653384 766995279 472706801 287293122 1016994568 1016994568 755927296 872937228 872937228 922933694 922933694 141735248 571681376 1046311071 1046311071 659218489 210578508 210578508 310194066 401632570 401632570 367183274 344955114 334286322 422238390 422238390 196452490 195173360 159476248 736743740 736743740 764008082 861029003 861029003 845369168 845369168 943296169 943296169 285479016 285479016 160901318 421855388 421855388 185197620 413280532 413280532 103181638 210095504 409124204 409124204 384674056 384674056 499589484 499589484 339872040 339872040 89789034 768213584 908465193 908465193 768740011 461406824 461406824 10621248 2146560 711137302 711137302 560955392 560955392 90319392 90319392 18157992 16519104 46811600 151388160 151388160 54743204 38407680 294240732 434143998 434143998 530186870 530186870 497567546 372294426 288361614 476566164 757640488 757640488 807728516 807728516 749395328 1047756703 1047756703 811449870 742576269 1041544834 1041544834 776993949 424578570 424578570 402886932 430077400 430077400 510469514 510469514 185016342 151569424 151784484 151784484 135365120 27736416 26812160 5843472 34944128 34944128 31836360 88847308 98058636 747820648 747820648 692227245 553962181 411441889 220672956 220672956 330028048 488553818 488553818 851578894 851578894 760217634 760217634 480130696 480130696 255479452 765360108 765360108 599887985 787056088 787056088 690937701 592541104 558584449 549810952 279267914 96694504 274928898 274928898 19138848 19138848 23596160 308860050 308860050 105934992 453351475 453351475 152569380 152569380 748343961 748343961 906222594 906222594 755041873 847320783 969214032 969214032 805956326 541189670 511211158 511211158 1012945439 1012945439 705765909 977956372 977956372 960852260 960852260 897913134 897913134 1042489978 1042489978 406588682 406588682 365765958 293619400 202262184 618384556 618384556 88215976 88215976 73205248 120535080 120535080 69608760 114176240 124392120 124392120 317824240 317824240 359678650 359678650 867911081 867911081 512846916 512846916 447246158 463224897 562826337 562826337 397949753 292817826 957473576 957473576 894189736 539757697 539757697 466916732 799953822 799953822 727319878 139263349 22278816 11415680 293613352 293613352 269698400 278683498 278683498 170849566 14296864 193076260 193076260 66794320 66794320 16848304 176895728 176895728 135340036 135340036 681077288 681077288 686032710 811339395 811339395 223874415 248112348 522402158 753447100 803609085 901381069 901381069 972005480 972005480 480497016 108932450 517020384 567625216 567625216 809985338 809985338 661577145 386904481 622898328 622898328 119816464 554023712 816534320 908957235 908957235 631763872 679916793 770079449 770079449 630829312 205994704 214614520 214614520 106448192 774504632 774504632 634930112 599580489 77876560 56665224 37748496 66288576 66288576 22160768 13924992 9835664 36839232 36839232 173089060 174137748 270821522 270821522 416050628 416050628 319559057 816191811 830276404 830276404 807535441 706529928 408051224 244072460 629735441 759540745 759540745 940071463 940071463 887507740 887507740 849913992 849913992 1057004210 1057004210 877888506 528650456 593626186 684541603 684541603 676720387 542501505 538969154 521326295 452777596 94144352 675620940 932018063 932018063 876798736 891962374 891962374 570687856 1001499761 1001499761 985923906 846743632 846743632 754979512 754979512 673523632 673523632 286646445 293438784 318265570 318265570 459343646 459343646 431088486 496509096 496509096 171357464 271619874 271619874 285926658 522733426 522733426 422625800 876767281 876767281 357996688 893553067 893553067 125497144 619359523 619359523 303746050 355173112 737735220 737735220 544921473 727231796 727231796 262093660 637725813 920569910 920569910 935690630 935690630 799129785 871002162 871002162 302779410 302779410 529561667 529561667 618138652 618138652 575963703 575963703 517032797 517032797 751013369 751013369 546172619 927957944 927957944 486621359 525013277 525013277 1017507054 1017507054 366962697 645559312 645559312 530665824 530665824 472585918 472585918 245043758 275758656 530694176 530694176 772821109 772821109 364172094 924635143 924635143 213126024 526704108 526704108 916033261 916033261 376893535 376893535 713459908 713459908 192639048 587155625 587155625 435808198 435808198 357118716 661255297 661255297 307109010 595860575 595860575 244057312 192729012 19528372 552419238 552419238 427895330 993279766 993279766 554382369 526582533 434389266 434389266 121915960 262841904 722471508 722471508 114270117 1040515856 1040515856 510995358 510995358 210088196 865150270 865150270 750257997 846088597 1028578479 1028578479 666011598 1021710387 1021710387 5798104 786666391 786666391 387035836 274925404 611068608 611068608 609360157 557133248 766066000 766066000 598626076 118413892 738380904 738380904 175981312 638925844 643299993 643299993 236518036 236518036 254848008 254848008 37504176 37504176 130320128 130320128 377556280 436840633 706789653 748173637 816701054 816701054 280920832 850900033 850900033 845753792 843192256 843192256 573981851 808588035 884349979 956570707 956570707 945471149 268863553 954130499 986705607 986705607 858590273 858590273 409282950 832436353 832436353 416995014 441007346 441007346 832191639 832191639 294914754 693049063 693049063 172274448 172274448 140656276 230577748 230577748 418103784 502526958 502526958 910066790 910066790 906772520 889523343 821488279 820435395 341609728 146196618 115761864 37223184 33462256 110745432 110745432 94376464 151132836 599904616 661076217 661076217 588086464 953616013 1012160223 1012160223 324292247 420578876 615028096 615028096 728422244 728422244 498803060 498803060 445228604 379426074 379426074 367927042 83388400 102777624 102777624 352355480 352355480 323536050 285745440 78775648 346231640 346231640 76632280 76632280 70257376 70257376 361755152 361755152 343573928 877080803 877080803 845469713 845469713 823558930 839349163 839349163 375035578 697910480 742895677 742895677 689600744 607477093 588926625 587251761 44565840 784673944 784673944 782958685 782958685 547648049 646337032 646337032 189791412 193128472 193128472 49094840 600058929 600058929 77908296 75792640 655730232 655730232 674498634 674498634 641710873 713010692 713010692 434819022 276496326 335828416 341885322 351044674 351044674 270671360 571650624 578936913 578936913 489839198 302428531 272679202 822544515 822544515 732033024 899748126 899748126 537333760 537333760 437942936 222476050 21681312 23763008 25393632 25691232 92668160 137512240 137512240 168303040 183377364 183377364 104704740 251864928 251864928 121446744 108008896 347738584 347738584 822233483 889755657 889755657 565821546 565821546 603553832 603553832 280048560 978863634 978863634 464500131 154720788 154720788 201426740 892690517 914696283 964609660 1059338880 1059338880 1058013759 679103624 125045016 125045016 74258056 74258056 107621768 107621768 168171540 168171540 201512976 235044940 235963536 377508466 377508466 118980668 218441772 218441772 269871618 417988164 952862170 952862170 910203277 910203277 876923019 110605011 585778244 1002963970 1002963970 861979045 587760002 195874164 781263355 825754982 825754982 811647505 893395746 893395746 370213040 105925264 34128912 750834368 750834368 224430573 674061804 674061804 570425744 570425744 317788165 311562834 402657876 402657876 190944916 190944916 537408512 539494042 539494042 374867201 661678496 914400524 941015081 941015081 864336587 604687433 423796999 542554834 542554834 922510840 922510840 655068093 734054248 734054248 333023274 333023274 356584322 356584322 360985320 360985320 67836704 89487240 272543426 342936580 352097738 1034041220 1034041220 826327203 608242112 902159849 902159849 609485154 609485154 988148142 988148142 294218968 294218968 121157384 123418296 389293968 389293968 845101862 845101862 964165856 964165856 632865771 901082004 901082004 718177559 990686069 990686069 910167040 910167040 871190036 871190036 488894766 477747434 345820746 350457216 350457216 118313456 114951112 114951112 102550424 115144008 115144008 110237336 110237336 109183064 21496448 244318857 796005037 796005037 753030981 582520720 224133408 82693248 111112320 111112320 843061588 843061588 833073266 997991670 997991670 923435548 397079768 356379090 356379090 354217368 435504960 435504960 360986826 360986826 123941304 237012278 237012278 536920065 626488969 889751587 889751587 637535379 829666057 829666057 657531705 689048448 689048448 411222825 654474326 654474326 889734156 889734156 697086318 766253247 766253247 650812557 610296040 589416527 587442264 587442264 580908724 580908724 267833328 267833328 109525080 1042145420 1070402276 1070402276 683726014 683726014 517022430 517022430 842283545 842283545 210584196 210584196 682363912 682363912 325058704 325058704 478812884 669432449 669432449 280419138 1028817806 1028817806 1037217876 1037217876 479428841 1006767106 1006767106 575181891 621845086 621845086 390388555 222075660 222075660 324409936 326051616 326051616 735932140 735932140 718457980 205834380 244635992 244635992 545525824 545525824 12976129 12583104 10535232 65735104 65735104 596272656 596272656 576251044 734107216 734107216 437009812 572726200 572726200 737606655 880968568 880968568 331861184 594216928 594216928 591895193 591895193 131203121 50479504 56027440 56027440 17516240 542720352 542720352 56631861 734647365 734647365 134234836 181436420 181436420 580774981 1002199865 1002199865 844382008 1030388280 1030388280 910608107 604017027 604017027 404824134 984052038 984052038 1050416021 1050416021 903219913 897845355 363997217 576068264 968756533 968756533 976226183 976226183 356127529 353255080 539798498 539798498 809653632 809653632 807978243 506885553 506885553 360574890 352186314 883721856 883721856 975619723 975619723 651058328 651058328 912412676 912412676 815924553 830935299 830935299 822347811 659865656 459316398 459316398 449121790 513322821 857811243 857811243 891626418 891626418 287293122 287293122 710167297 755927296 755927296 773510410 773510410 922933694 922933694 177035623 386452594 386452594 358684633 491942705 946489200 946489200 978530967 1034060336 1034060336 367183274 344955114 334286322 422238390 422238390 196452490 195173360 227853317 736743740 736743740 764008082 861029003 861029003 297746274 755708366 755708366 542587521 580060115 826417406 893518345 914690736 914690736 365273800 413280532 413280532 27281664 210095504 409124204 423045246 423045246 384674056 475387428 475387428 337285794 337285794 0 768213584 908465193 908465193 768740011 461406824 488687900 488687900 335593662 705266694 809247274 809247274 895839234 895839234 891486636 211555720 211555720 177883940 175822420 156418180 218766902 524337342 524337342 434143998 434143998 530186870 530186870 497567546 372294426 599958472 599958472 757640488 757640488 348272640 946318542 946318542 749395328 991373118 991373118 742576269 709148825 709148825 874884645 874884645 622709888 504345690 504345690 378461274 329566578 329566578 297643500 297643500 147498196 425280740 425280740 181936454 251782064 251782064 247566912 161827432 92135908 76204288 143138080 161880420 229261412 429853740 429853740 421527078 363347526 304629138 330028048 709543981 971820184 971820184 755325348 956465314 956465314 480130696 621164576 621164576 765360108 765360108 696082692 545054433 690937701 690937701 562512836 558584449 549810952 78213704 78213704 79104000 79104000 19138848 19138848 23596160 68641792 68641792 79092384 90112808 90112808 75755592 69641440 64888560 64888560 389427250 389427250 241537784 288375878 288375878 269497986 394262969 394262969 511211158 511211158 1012945439 1012945439 705765909 243690292 203891022 960852260 960852260 897913134 897913134 1042489978 1042489978 160546302 264064664 264064664 204311728 202262184 685753504 685753504 549562829 371996117 369231028 304486784 304486784 296159482 270803200 124392120 124392120 317824240 317824240 359678650 359678650 867911081 867911081 512846916 640341516 707789589 707789589 562826337 562826337 397949753 762274866 957473576 957473576 209530764 209530764 118827052 466916732 578251412 975182229 975182229 535893066 535893066 23327136 293613352 293613352 269698400 311950434 311950434 170849566 70459392 193076260 193076260 66794320 66794320 41951232 176895728 176895728 164692720 229634380 606086957 631427433 686032710 811339395 811339395 223874415 350249410 522402158 753447100 803609085 901381069 901381069 972005480 972005480 480497016 269165632 709630147 709630147 537151710 922780675 922780675 818422951 998244471 998244471 820117680 868430067 868430067 848230784 67348520 631763872 631763872 679916793 770079449 770079449 630829312 775881521 775881521 640104709 108178465 106448192 634930112 634930112 599580489 656450561 656450561 256715964 256715964 222145824 222145824 13924992 18297248 174266816 187510304 187510304 46961888 46961888 34553984 23992672 30094336 319559057 816191811 816191811 865355746 865355746 706529928 1020213456 1020213456 244072460 143071232 137319185 998351674 998351674 688864293 189205061 675661955 675661955 598050870 877888506 877888506 537551000 994710981 994710981 734223414 331737330 538969154 538969154 604028937 762102141 762102141 1017245390 1017245390 932018063 876798736 891962374 891962374 566780658 566780658 985923906 985923906 846743632 846743632 754979512 754979512 673523632 673523632 286646445 305042944 305042944 54600050 459343646 459343646 251145574 496509096 504805400 504805400 369578508 271619874 464134174 522733426 522733426 422625800 404864866 303689498 72639002 4194432 358883330 358883330 95684840 95684840 115347512 115347512 512966606 526194804 526194804 707063085 707063085 711486742 849470277 849470277 869574088 869574088 284475905 413729067 1046581407 1046581407 1010978781 1010978781 662852312 823193796 873374745 873374745 1051048071 1051048071 1026604064 1010016367 585874172 209272234 964558016 964558016 919152880 919152880 870949336 443640244 1017507054 1017507054 740370349 645559312 645559312 941498019 941498019 848706019 1050017829 1050017829 974652951 974652951 674760541 965215252 965215252 814612739 924635143 924635143 708726272 526704108 526704108 916033261 916033261 376893535 376893535 713459908 713459908 706863381 162492149 200817028 200817028 357118716 528909336 528909336 277223678 88343592 194226240 196268200 196268200 192729012 67306136 961611275 961611275 287835426 993279766 993279766 690623781 526582533 574220049 784718805 784718805 638243865 773116552 773116552 755836101 1040515856 1040515856 737496057 737496057 684173896 865150270 865150270 750257997 234506249 67890689 311449888 489811368 489811368 424140028 424140028 523265382 523265382 387035836 274925404 539045824 539045824 51866816 51866816 173018944 173018944 580010604 580010604 564826112 564826112 216320648 573048388 617382156 617382156 236518036 236518036 254848008 254848008 98730440 98730440 130320128 130320128 377556280 436840633 706789653 748173637 874335358 874335358 764193093 850900033 850900033 818493216 818493216 329201351 714359360 714359360 814557251 814557251 857059009 979253760 979253760 954130499 986705607 986705607 545735830 48798176 165600996 312108994 461948500 461948500 441007346 441007346 442757892 445896404 445896404 477699870 477699870 343374092 172274448 140656276 230577748 230577748 418103784 502526958 502526958 910066790 910066790 607274800 594318873 93637224 341609728 341609728 159991856 159991856 137549092 26086976 101585768 101585768 94376464 151132836 151132836 661076217 661076217 588086464 953616013 1012160223 1012160223 324292247 420578876 615028096 615028096 728422244 728422244 798693277 798693277 445228604 379426074 379426074 641309405 641309405 265643396 994707513 994707513 71486208 285745440 285745440 36909840 37357312 37357312 75439338 289141986 289480866 289480866 66398426 577782451 577782451 886864625 886864625 845469713 845469713 823558930 839349163 839349163 375035578 418774922 418774922 907186362 907186362 607477093 588926625 587251761 44565840 784673944 784673944 782958685 782958685 245892380 245892380 241573484 189791412 193128472 193128472 49094840 67159288 621633836 621633836 766518041 766518041 655730232 621570453 621570453 641710873 713010692 713010692 153167296 230427716 230427716 10276352 8388672 270671360 573813843 573813843 714345045 714345045 671088645 763519097 763519097 570683409 538992658 386437131 899748126 899748126 576767012 576767012 450701629 436251696 364217936 278762474 278762474 458616516 466120048 466120048 445102278 445102278 419851354 531148404 531148404 429297926 253242512 343222540 343222540 316934184 316934184 822233483 889755657 889755657 545820800 943756484 943756484 818708482 818708482 978863634 978863634 486516638 269524657 269524657 479557181 892690517 914696283 1018055807 1059338880 1059338880 1058013759 1019397552 290363666 125045016 166518544 166518544 431248066 431248066 323619508 168171540 351196630 517495576 517495576 235963536 203997672 71582080 73714056 476338176 476338176 403052550 410992518 410992518 309409174 309409174 273102978 52445296 969409536 1002963970 1002963970 835192053 805307540 805307540 320122698 628408672 628408672 555502041 71336496 139925185 139925185 136089668 145519957 743000736 743000736 294074466 770256953 770256953 706267123 706267123 860973004 860973004 809723431 655894286 958502549 958502549 770323013 770323013 364640106 390285264 390285264 914400524 941015081 941015081 864336587 604687433 423796999 385012380 385012380 333806800 293316640 655068093 734054248 734054248 333023274 333023274 356584322 356584322 360985320 360985320 69257504 89487240 89487240 345715276 352097738 1034041220 1034041220 826327203 740355844 902159849 902159849 934617935 934617935 988148142 988148142 351028592 352471650 916107709 916107709 442440118 647173315 647173315 80621452 306414608 707834133 707834133 473645568 966935113 966935113 274072128 54118272 285833218 285833218 352889888 352889888 72991466 68224592 129738360 129738360 118313456 118313456 114951112 114951112 101326296 113246424 113246424 110237336 110237336 109183064 53163376 244318857 796005037 796005037 753030981 582520720 528082878 528082878 521265322 272670722 843061588 843061588 833073266 997991670 997991670 923435548 299442864 299442864 354217368 354217368 435504960 435504960 435894246 435894246 410328160 1067849177 1067849177 536920065 626488969 889751587 889751587 874590553 874590553 867582550 867582550 832956771 411222825 411222825 654474326 654474326 838470533 838470533 687302624 185291008 302031216 610296040 610296040 589416527 260378652 486822598 580908724 580908724 701897676 884241879 884241879 382460893 382460893 562223488 650252505 658764225 745918777 745918777 641127032 641127032 761344085 986810065 1014556240 1014556240 922351475 747160653 747160653 669432449 669432449 588263912 1028817806 1028817806 903022242 903022242 609822345 1006767106 1006767106 575181891 321421920 321421920 888557547 888557547 741967604 1058580526 1058580526 699018248 746941773 746941773 622060133 206672012 750202976 750202976 547135489 547135489 543775296 617598408 617598408 133972872 133972872 551036464 551036464 622498944 622498944 428529366 1058195058 1058195058 798004065 798004065 880968568 880968568 72401544 823969104 823969104 373853537 32940032 42339424 42339424 56027440 56027440 64495312 542720352 542720352 56631861 734647365 734647365 63611093 239231830 369198170 580774981 1002199865 1002199865 287506504 1030388280 1030388280 806629810 472117518 351458250 351458250 676479235 676479235 612767817 903219913 903219913 897845355 286546440 576068264 968756533 974734653 976226183 976226183 838930690 838930690 539798498 539798498 290370019 408862836 839012706 839012706 878780440 878780440 871745603 671401676 671401676 975619723 975619723 651058328 651058328 912412676 912412676 815924553 830935299 830935299 822347811 659865656 285328498 269363778 359235600 359235600 857811243 857811243 891626418 891626418 388157754 352489738 353031210 353031210 151568388 271242754 840443606 840443606 599879776 177035623 132930439 358684633 358684633 491942705 946489200 946489200 978530967 1034060336 1034060336 113999000 316387096 350673354 402363122 488473042 523380912 523380912 530816244 530816244 450053456 579388167 579388167 624953376 624953376 1072045781 1072045781 830214051 580060115 826417406 893518345 914690736 914690736 365273800 391569680 391569680 220253952 202746760 514928012 514928012 423045246 349480856 475387428 475387428 337285794 337285794 77990437 798823029 886835321 886835321 810829412 810829412 488687900 488687900 335593662 674300470 809247274 809247274 895839234 895839234 891486636 709275541 709275541 528531582 528531582 287742300 546030600 546030600 763565437 766181669 766181669 755709052 218883360 439444188 523975923 876010251 876010251 580488788 1014702074 1014702074 946318542 946318542 559831072 991373118 991373118 577563537 709148825 709148825 874884645 874884645 622709888 509731230 504345690 461365006 161795032 193478964 345055436 345055436 213983818 425280740 425280740 204543248 251782064 267631356 267631356 161827432 151779944 68759304 574637017 609274419 898632555 898632555 475259345 475259345 363347526 304629138 472289686 709543981 1019529466 1019529466 755325348 956465314 956465314 226825772 723191376 723191376 614342217 696082692 696082692 545054433 137674625 17689632 290653706 290653706 71612936 72755720 72755720 339477890 339477890 7476096 7476096 20706432 68641792 68641792 79092384 90112808 127975784 127975784 65377776 93389656 93389656 43423272 16377792 126316520 144846276 298327104 298327104 27465056 285288836 390354226 390354226 285899162 285899162 411705360 411705360 352579626 449876518 460872752 460872752 312733778 522824092 522824092 1023809583 1023809583 885458889 1045696263 1045696263 708004583 727514606 742398245 742398245 738246669 990403722 990403722 969870719 329391026 329391026 630786425 630786425 294724194 655950201 655950201 865797665 865797665 45614928 640341516 707789589 856839580 1031325615 1031325615 437452443 762274866 762274866 117498640 136130232 136130232 37326108 350559314 578251412 975182229 975182229 535893066 535893066 23327136 244007100 244007100 262683396 311950434 311950434 69341952 70459392 70459392 10300992 7866240 41951232 41951232 55775904 164692720 164692720 229634380 606086957 631427433 631427433 374790810 374790810 133225810 350249410 357042578 357042578 289137446 252678180 403728012 403728012 201850886 134312072 269165632 709630147 709630147 1004365926 1004365926 922780675 818422951 998244471 998244471 820117680 868430067 868430067 848230784 67348520 111682752 111682752 77253640 78186304 78186304 604198848 775881521 775881521 640104709 184549420 1024054230 1024054230 800508741 800508741 656450561 1043949418 1043949418 360769073 222145824 222145824 146542404 81401544 174266816 187510304 187510304 46961888 46961888 34553984 23992672 23992672 15631520 806865216 806865216 865355746 865355746 822608931 1020213456 1020213456 815071752 127741560 127741560 998351674 998351674 747176047 556407797 782743612 782743612 335915157 335915157 667370324 878971275 994710981 994710981 734223414 331737330 853059586 853059586 725880918 762102141 762102141 1017245390 1017245390 478225646 279062352 463097496 463097496 566780658 566780658 551912880 704176476 824517599 824517599 287886125 957690892 957690892 997044343 997044343 882827919 738614530 254935700 293675442 293675442 238512240 238512240 504805400 504805400 369578508 101976376 497298184 497298184 335850568 404864866 404864866 303689498 72639002 57592976 358883330 358883330 95684840 95684840 115347512 115347512 138098436 443841688 443841688 914705986 915720795 915720795 849470277 849470277 805889355 570544002 419430438 419430438 1046581407 1046581407 1010978781 1047687884 1047687884 1041119460 1041119460 873374745 1051048071 1051048071 1026604064 1010016367 585874172 213287765 964558016 964558016 919152880 919152880 870949336 826394242 615136189 1061794760 1061794760 417899305 858840030 941498019 941498019 848706019 1050017829 1050017829 974652951 1023488704 1023488704 965215252 965215252 814612739 814612739 708726272 708726272 471860370 327483768 283453890 248260868 248260868 138535044 645132808 706863381 706863381 263684864 263684864 453072578 453072578 528909336 698705953 698705953 498405054 676785339 676785339 114639484 276671936 277922370 961611275 961611275 287835426 287835426 690623781 690623781 33352725 574220049 784718805 784718805 802173760 802173760 773116552 755836101 873065625 873065625 737496057 737496057 684173896 691804188 758720301 758720301 639237136 639237136 296706176 486608926 568933363 568933363 424140028 873785451 873785451 111194792 88264480 34417680 633016956 633016956 577743968 776471140 776471140 580010604 580010604 234357369 730460364 759423021 759423021 573048388 216576304 216576304 686193948 686193948 644762256 163551164 98730440 70390536 17314688 112207428 160510168 160510168 99039392 874335358 874335358 764193093 406085651 135039544 277621044 277621044 542265728 714359360 714359360 185062002 814279206 814279206 979253760 979253760 268942871 188739382 812923719 812923719 547572739 408154758 408154758 461948500 461948500 461005140 457673232 895841842 895841842 878632587 477699870 477699870 343374092 33848320 38605600 613728136 613728136 953785120 1022937039 1022937039 812614703 812614703 607274800 594318873 93637224 93637224 117842384 159991856 159991856 137549092 104196888 109676296 109676296 219181578 419688486 501344774 501344774 104877908 229337270 481626416 481626416 406677864 319418376 170726406 139741463 612595095 612595095 336692788 798693277 798693277 364975772 217966584 217966584 641309405 641309405 265643396 994707513 994707513 289276858 269298306 102248322 305738834 305738834 85991752 85991752 289141986 340944682 340944682 88123656 577782451 577782451 886864625 886864625 618136306 125869656 125869656 122626224 278309592 932478432 932478432 829201996 907186362 907186362 767422317 666045369 666045369 660604729 627521961 193081464 621031548 621031548 632106281 633358688 633358688 25301088 53550368 53550368 30290576 541863057 621633836 621633836 766518041 766518041 456274180 286368550 127926336 127926336 233578936 435046374 435046374 230422380 270413122 270413122 20714784 271824193 573813843 573813843 714345045 714345045 671088645 763519097 763519097 571556156 571556156 428003430 428003430 205559422 576767012 576767012 450701629 436251696 364217936 278762474 278762474 458616516 466120048 466120048 445102278 445102278 419851354 531148404 531148404 429297926 253242512 343222540 343222540 338160464 325375584 282083298 323229040 575442201 545820800 943756484 943756484 923799612 818708482 588800672 692659365 692659365 558441633 269524657 479557181 529117688 529117688 1018055807 1018055807 740580756 1019397552 1019397552 290363666 255216188 166518544 166518544 431248066 431248066 323619508 164489522 351196630 517495576 517495576 274862414 416858958 416858958 233550024 476338176 476338176 424719374 410992518 410992518 542264626 593494449 593494449 487666354 969409536 969409536 876609675 977272974 977272974 933553005 394022368 628408672 628408672 586238032 671835076 671835076 177419284 177419284 145519957 173822017 173822017 294074466 770256953 770256953 706267123 706267123 860973004 860973004 809723431 655894286 958502549 958502549 770323013 843552720 843552720 565299424 820504377 820504377 382848616 955880831 955880831 734030805 220513905 206626312 37484304 731501092 983402774 983402774 516237736 167880256 40820112 1445008 121063760 121063760 92355432 62023992 69257504 69257504 67158024 345715276 345715276 497751112 497751112 604889088 895755693 1020004559 1020004559 957140021 957140021 812944050 441885328 1037598952 1037598952 916107709 916107709 447021805 647173315 647173315 80621452 310351120 707834133 707834133 473645568 966935113 966935113 274072128 22516320 128073864 132591384 132591384 268961672 268961672 123811312 123811312 59246032 94582432 94582432 84738072 84738072 100992280 100992280 47070288 103093696 103093696 59315296 53163376 71038000 71038000 67158024 87034928 133711480 528082878 528082878 521265322 272670722 272670722 47721312 57486768 327288832 382454524 382454524 299442864 299442864 310957094 310957094 40834308 316577344 435894246 435894246 410328160 1067849177 1067849177 419701838 419701838 109128777 276898819 874590553 874590553 867582550 867582550 832956771 727000469 383472629 1007835959 1007835959 604761160 604761160 589414672 185291008 593731728 593731728 555929889 537270273 537270273 528901204 528901204 491211166 701897676 884241879 884241879 382460893 382460893 562223488 650252505 658764225 745918777 745918777 641127032 641127032 761344085 986810065 1014556240 1014556240 922351475 747160653 747160653 717621496 588263912 588263912 560196385 746377101 903022242 903022242 743629959 809504768 809504768 1008377903 1008377903 820038727 888557547 963973510 963973510 1058580526 1058580526 699018248 746941773 746941773 622060133 206672012 750202976 750202976 547135489 547135489 543775296 617598408 617598408 133972872 133972872 551036464 667757529 667757529 622498944 33745708 1058195058 1058195058 798004065 798004065 877512192 877512192 593821744 823969104 823969104 373853537 92350472 48570528 41483088 52174272 52174272 64495312 64495312 60463200 55077408 41014048 54648896 54648896 239231830 369198170 478761818 478761818 447815768 352846890 346239274 996894109 996894109 676125076 981114097 981114097 454425009 511103705 511103705 415441492 421671398 421671398 416815554 272371458 744219764 974734653 974734653 706941888 838930690 838930690 548056289 806771233 809653632 809653632 839012706 839012706 878780440 878780440 871745603 671401676 671401676 636276201 487139535 69255432 69255432 69255432 76336200 293162792 487446894 487446894 387318626 387318626 285328498 204013646 359235600 359235600 477680316 477680316 892715361 892715361 388157754 352489738 353031210 654233505 936937504 936937504 840443606 986441393 986441393 924398659 924398659 833063358 2184448 67136 79848466 269227658 312340050 312340050 302303250 320332338 320332338 350673354 402363122 488473042 523380912 523380912 530816244 530816244 438865766 947460564 947460564 624953376 624953376 1072045781 1072045781 1031749551 262017503 219163584 219163584 193202292 170984004 210838340 296889212 296889212 309074180 523753222 523753222 514928012 349480856 349480856 859979459 859979459 809574531 283803456 137829125 798823029 886835321 1025092655 1025092655 810829412 607390362 610086537 610086537 303858315 643573272 656778131 656778131 612233097 559730337 709275541 709275541 528531582 528531582 287742300 546030600 546030600 763565437 766181669 766181669 755709052 218883360 506462464 523975923 876010251 876010251 580488788 1014702074 1014702074 188023744 267506134 482472010 811458522 811458522 511877403 893388529 893388529 424119222 443333984 509731230 509731230 479540620 461365006 350232604 350232604 345055436 345055436 213983818 420673778 420673778 409922152 409922152 267631356 267631356 151779944 151779944 68759304 574637017 609274419 898632555 898632555 475259345 475259345 345059840 438704128 472289686 472289686 1019529466 1019529466 693524715 679878656 646010981 394301484 723191376 723191376 587248085 183547445 168018980 570533040 570533040 554762097 290653706 290653706 71612936 72755720 72755720 339477890 339477890 20522784 387998896 387998896 395626288 395626288 18989440 395346256 395346256 127975784 350682642 350682642 93389656 43423272 33686016 126316520 126316520 298327104 298327104 27465056 29602816 29602816 86418488 285899162 285899162 411705360 411705360 440502404 449876518 449876518 312733778 312733778 311685714 103044211 1023809583 1023809583 885458889 1045696263 1045696263 708004583 727514606 742398245 742398245 738246669 990403722 990403722 969870719 329391026 329391026 630786425 630786425 294724194 655950201 655950201 907576832 907576832 805847580 402702342 201326604 1058674227 1058674227 1031325615 689622309 1006325926 1006325926 793212002 707167144 373083908 374088794 374088794 63357330 55450800 56807856 56807856 2134192 1098240 1098240 1081344 1024 525312 525312 525312 41039248 41039248 10300992 40371152 66793504 66793504 45623104 134217728 134217732 563628421 563628421 424692130 832865447 832865447 59264720 59264720 29656224 126833688 648663303 648663303 413412784 633692343 633692343 527012552 527012552 523289966 523289966 521699584 1004365926 1004365926 613049688 613049688 135927300 156836416 307542000 307542000 24336738 19732896 43764080 43764080 9801024 234175440 254852312 254852312 755975376 794746469 794746469 727616333 359153985 1024054230 1024054230 800508741 832932160 832932160 1043949418 1043949418 360769073 1040461196 1040461196 1010368588 406203430 406203430 154998560 341055114 352618272 352618272 354770090 354770090 291484800 349983945 349983945 293719360 806669856 822608931 822608931 872550411 957352499 957352499 353444450 705169454 800208447 800208447 1045578633 1045578633 782743612 782743612 574914816 335915157 667370324 878971275 878971275 707281215 479952849 328967330 853059586 853059586 725880918 449986964 552014721 552014721 478225646 478225646 284768592 475308656 475308656 977372804 1065356556 1065356556 679817156 659292168 1007169288 1007169288 957690892 957690892 997044343 997044343 882827919 738614530 362076192 254935700 203946276 240291886 486691484 520098140 520098140 480252258 454295824 497298184 497298184 335850568 395838522 395838522 241961982 84821672 124312608 133746480 779473267 779473267 506673468 613424213 613424213 138098436 950872598 950872598 914705986 915720795 915720795 842606355 908140544 908140544 908067099 604114953 604114953 970204272 970204272 766324077 1047687884 1047687884 1041119460 1041119460 629935209 185813512 185813512 268197020 268197020 126783236 213287765 213287765 738468176 738468176 570774745 826394242 826394242 291104169 1061794760 1061794760 101220698 858840030 858840030 979304904 979304904 177477876 279387216 279387216 1023488704 1023488704 182006383 9573396 146148048 146148048 171971472 241567760 241567760 100667672 80044224 248260868 248260868 987549399 987549399 481011152 1053043820 1053043820 792732312 453072578 453072578 187510068 698705953 698705953 530931998 676785339 676785339 497209922 405738228 773302302 773302302 428852347 70564522 2097152 498307680 498307680 295582470 92572930 0 0 802173760 802173760 126974992 714533317 873065625 873065625 693708453 1043660573 1043660573 691804188 758720301 758720301 738234429 639237136 124673844 423814614 568933363 568933363 401214984 873785451 873785451 517852846 517852846 484823032 633016956 633016956 577743968 776471140 792772720 792772720 243816076 234357369 730460364 759423021 759423021 128651445 216576304 216576304 686193948 686193948 644762256 163551164 41359000 45891400 127716304 127716304 223424757 609752145 609752145 584127193 693179975 693179975 613157961 885792588 885792588 638581595 638581595 865739596 1002685621 1002685621 319517046 728770486 846970691 846970691 591250289 591250289 842777748 842777748 547572739 408154758 408154758 450577778 461005140 461005140 457673232 895841842 895841842 878632587 127662081 302205464 302205464 19658016 712607776 712607776 613728136 953785120 1022937039 1022937039 819987876 812614703 953544581 953544581 842198827 372008737 372008737 786215317 786215317 194830884 194830884 159960928 109676296 219181578 419688486 501344774 501344774 104877908 229337270 481626416 481626416 436739848 319418376 170726406 291897378 491523246 589770906 673711365 673711365 364975772 364975772 142621896 179921860 179921860 121607496 189531902 374215312 722543645 722543645 638657689 634389553 564339960 305738834 85991752 85991752 74317920 340944682 340944682 113906904 307491976 307491976 378802368 618136306 618136306 125869656 862402098 862402098 400132712 932478432 1053935164 1053935164 829201996 767422317 767422317 744695628 666045369 660604729 664613044 664613044 624620969 624620969 632106281 633358688 633358688 185745824 163626048 187204440 197994432 541863057 587467808 587467808 535686654 1051664327 1051664327 815970321 916908418 916908418 711962424 711962424 435046374 230422380 270413122 270413122 177674516 271824193 540956739 540956739 548744001 548744001 631383889 631383889 829538745 829538745 637551254 631801777 631801777 205559422 746688512 746688512 571977813 541152976 279618880 279618880 311330116 311330116 253924550 231611628 167827508 306756772 306756772 236410082 151041632 144273472 180403760 180403760 338160464 338160464 325375584 282083298 282083298 4136576 857747710 857747710 923799612 923799612 679496197 679496197 692659365 692659365 558441633 209715276 295241812 529117688 529117688 409654662 132342910 4589568 98890216 98890216 287559680 287559680 287383842 59483460 197275040 308952192 308952192 164489522 22007908 249053704 249053704 274862414 416858958 416858958 233550024 406582918 424719374 424719374 1040597401 1040597401 542264626 593494449 674238976 978322076 978322076 744488971 876609675 977272974 977272974 933553005 1016120001 1016120001 1017357508 1017357508 719565280 671835076 177419284 177419284 139933760 49787472 49787472 34834640 49693776 419496194 419496194 269025568 287860550 403178496 403178496 158711044 572014774 962119335 962119335 843552720 843552720 565299424 820504377 820504377 382848616 955880831 955880831 734030805 220513905 206626312 118684176 731501092 983402774 983402774 214318016 214318016 69217608 101349888 101349888 59978352 59978352 101835288 101835288 36036616 86411552 86411552 84805728 750337622 906832923 906832923 895755693 1020004559 1020004559 957140021 957140021 812944050 441885328 1037598952 1037598952 763005357 447021805 856498602 856498602 467152561 106839760 310351120 346730378 346730378 268451914 340824000 340824000 22516320 22516320 835861555 835861555 379726810 317000977 317000977 123811312 355210435 622989609 622989609 117446009 92800104 84738072 578816720 619187416 619187416 103093696 103093696 59323616 37884048 179534105 781003869 784234237 784234237 558074072 231678644 231678644 211688736 118406688 625995444 625995444 618528328 672729078 871469952 871469952 200435392 287294080 287294080 58597478 167563236 167563236 160795052 310063028 755786970 755786970 117730307 419701838 419701838 826052442 826052442 806921339 806921339 746897640 769476324 769476324 727000469 649696656 1007835959 1007835959 789254190 877666875 877666875 231163914 593731728 593731728 555929889 537270273 537270273 528901204 528901204 398923498 312281598 139848324 203424012 811671594 893648930 893648930 874319019 1062677242 1062677242 616589995 872726709 872726709 327473554 347378828 367401718 382655706 721038850 721038850 717621496 717621496 549532684 549532684 153916713 746377101 746377101 340528266 743629959 809504768 809504768 1008377903 1008377903 820038727 820038727 963973510 963973510 961566436 767203895 733770925 733770925 705770261 756549229 756549229 689441860 238610012 238610012 128611896 662977384 842337918 842337918 504488478 531650066 531650066 667757529 667757529 100325352 310907670 577372412 577372412 587460657 587460657 660721928 660721928 671687685 824288263 824288263 828612640 828612640 758235713 758235713 580183889 547705776 206298497 206298497 122417341 624310528 624310528 727357472 727357472 564359761 32624864 731955616 731955616 562194988 352846890 241646076 996894109 996894109 676125076 981114097 981114097 454425009 511103705 511103705 415441492 515974659 537960797 543810945 811623426 811623426 586982735 430252282 689448176 805700451 805700451 548056289 806771233 809653632 809653632 808246395 705532253 579087698 579087698 546570351 1036141708 1036141708 540585257 206375985 616843400 707564837 863671589 1064748703 1064748703 622643937 647368289 647368289 642666200 517913620 517913620 144288180 276216438 477680316 477680316 892715361 892715361 293417674 871367667 871367667 654233505 936937504 936937504 834982297 986441393 986441393 924398659 924398659 1056274661 1056274661 886311627 964545586 975039978 986974935 986974935 974019160 320332338 320332338 286620208 225790644 225790644 242296064 297690768 297690768 128972544 58462400 947460564 947460564 882922744 661301155 950025960 1031749551 1031749551 221907227 219163584 219163584 193202292 170984004 210838340 296889212 340836560 340836560 523753222 523753222 468776974 456147806 357208602 859979459 859979459 809574531 571754240 571754240 609365633 609365633 1025092655 1025092655 708657564 607390362 610086537 610086537 303858315 643573272 643573272 119098529 174408204 174408204 132154284 995176592 995176592 894080056 894080056 236194332 287901538 436823366 436823366 497276412 497276412 200994926 506462464 514855810 514855810 422861142 890663134 890663134 906017464 906017464 1033926941 1033926941 978396040 251715865 379061850 893388529 893388529 678134960 678134960 539828372 479540620 479540620 835526945 835526945 900115160 900115160 187167438 1015620256 1015620256 420673778 545286661 545286661 231034928 796291753 796291753 44053000 23568544 50331696 590463184 590463184 586228689 184688670 289591458 289591458 992270369 992270369 841222419 841273622 841273622 957665610 957665610 646010981 394301484 750949588 750949588 713077169 711574005 163252320 570533040 570533040 554762097 55707393 53349792 36304896 36304896 35736992 349512064 379860888 379860888 387998896 387998896 395626288 395626288 18989440 395346256 395346256 473430798 473430798 806102917 806102917 269164255 1016428978 1069905559 1069905559 958511274 958511274 541418792 825107598 825107598 503917244 503917244 459237986 517248634 517248634 440502404 483667504 483667504 323535368 85085040 344720728 344720728 112729602 76677632 135889408 309954368 309954368 472465920 472465920 107499552 770329904 770329904 369993776 356539560 286968888 286968888 318689514 318689514 344212160 695830894 695830894 270059010 907576832 907576832 846967715 878961546 878961546 1058674227 1058674227 689622309 689622309 1006325926 1006325926 793212002 707167144 470471696 470471696 989350353 989350353 569691105 438061350 433428327 368559416 6414720 243904668 243904668 246104868 362524946 362524946 110897160 118436384 118436384 87068690 87068690 85983416 157947198 436864810 507586326 507586326 563628421 563628421 424692130 832865447 832865447 518135262 408723136 281855266 281855266 648663303 648663303 434875562 633692343 633692343 527012552 527012552 523289966 523289966 521699584 521699584 96964690 613049688 613049688 135927300 156836416 307542000 307542000 47318128 47318128 72024104 72024104 130793176 234175440 254852312 254852312 755975376 794746469 794746469 727616333 629674040 359153985 232899657 385925178 832932160 1013473688 1013473688 843703443 402752661 1040461196 1040461196 1010368588 406203430 406203430 154998560 341055114 352618272 352618272 354770090 354770090 291484800 349983945 349983945 354150762 554617345 554617345 503320597 872550411 957352499 957352499 362683938 914372444 914372444 800208447 1045578633 1068092488 1068092488 902311283 574914816 286414872 397183092 780408214 780408214 602415724 479952849 328967330 315571410 4316242 2696448 7020800 7020800 42999586 328803730 328803730 629908344 629908344 475308656 977372804 1065356556 1065356556 942918162 707213589 1007169288 1007169288 1040453376 1040453376 236728724 347609152 347609152 362076192 362076192 262466712 267596636 267596636 486691484 520098140 520098140 480252258 470098558 533987374 533987374 379292098 379292098 465707002 465707002 385971284 124312608 133746480 779473267 779473267 506673468 613424213 876650780 876650780 950872598 950872598 749012388 995714608 995714608 710411932 1031958369 1031958369 908067099 604114953 604114953 457390161 84009000 473998800 473998800 541298688 541298688 159873 0 0 163578104 268197020 268197020 126783236 676065868 767871213 767871213 143010889 166014020 183237780 183237780 8388672 689505520 689505520 864591877 864591877 780683602 979304904 979304904 85406520 584136942 870662849 870662849 439574730 814504208 814504208 587804849 587804849 559103505 538257472 241567760 100667672 50594928 48204000 489058112 987549399 987549399 481011152 1053043820 1053043820 792732312 168887556 37304064 37304064 472585984 530931998 530931998 231685356 497209922 497209922 405738228 773302302 773302302 1073686928 1073686928 1044595098 1044595098 498307680 463214673 958010919 958010919 963253671 963253671 1052932636 1052932636 714533317 714533317 693708453 693708453 1043660573 1043660573 642964120 642964120 738234429 738234429 792846629 792846629 682909850 526904572 526904572 401214984 496949030 496949030 517852846 631373088 631373088 126008856 44246960 44246960 40220384 792772720 792772720 615063648 615063648 548406081 68157769 63640688 63640688 16850976 4268160 46806096 46806096 101712528 101712528 117384648 117384648 127716304 127716304 223424757 609752145 609752145 584127193 693179975 693179975 613157961 1045840164 1064754111 1064754111 804620731 865739596 1002685621 1002685621 559219936 728770486 846970691 846970691 591250289 591250289 842777748 842777748 288672546 153666852 153666852 137645600 124100904 46157416 119088696 119088696 120975730 668126802 668126802 803796805 803796805 255204156 788149436 788149436 947740240 947740240 841073317 819987876 819987876 689284534 953544581 953544581 842198827 372008737 372008737 786215317 786215317 194830884 194830884 159960928 70643320 112935160 112935160 96020328 35796600 783840 8405248 8405248 436739848 436739848 372659472 372659472 291897378 491523246 589770906 673711365 673711365 784204192 784204192 712607469 712607469 791995053 899078801 899078801 356581937 722543645 722543645 638657689 634389553 564339960 323035192 369107066 369107066 9306714 143155472 143155472 119382184 821829385 821829385 282202818 106339920 624580520 624580520 862402098 862402098 845660984 400132712 1053935164 1053935164 747689283 745352589 745352589 744695628 193147509 88741032 779438680 779438680 781387229 781387229 618003421 252774944 252774944 198170868 163626048 187204440 197994432 197994432 540592807 540592807 535686654 1051664327 1051664327 815970321 916908418 916908418 711962424 711962424 155489348 184822416 184822416 199251320 245992888 245992888 382915290 382915290 63387888 290440274 631383889 631383889 829538745 829538745 882500805 882500805 631801777 122234360 746688512 746688512 571977813 541152976 279618880 328043858 328043858 377538650 377538650 231611628 167827508 306756772 306756772 236410082 562586931 562586931 785451184 811991486 811991486 68325428 38906760 627973936 627973936 235344473 857747710 857747710 876609788 876609788 679496197 679496197 649643865 110351433 176821272 209715276 558016040 575241781 575241781 752103755 752103755 1061830054 1061830054 846000387 846000387 758289167 811858885 817050435 817050435 323159142 323159142 298530018 638508617 657787280 912018419 912018419 882937762 406503840 406503840 365969504 358089354 408354967 1040597401 1040597401 475532544 475532544 674238976 978322076 978322076 443548202 443548202 494928429 494928429 720914272 1016120001 1016120001 1017357508 1017357508 719565280 146860672 146860672 75072472 113516240 113516240 72376866 387410430 691764593 691764593 492897706 784889409 784889409 301991980 386415662 386415662 572014774 962119335 962119335 697440465 42476112 47030852 176376768 176376768 198274784 198274784 56262032 56262032 43628736 118684176 283213854 389724852 389724852 485295524 485295524 362447464 361787498 361787498 353457408 279185730 288655616 288655616 101835288 36036616 86411552 339085324 339085324 750337622 906832923 906832923 782973285 78907712 273943170 273943170 165290248 512384094 512384094 888651212 888651212 290981538 659765634 856498602 856498602 467152561 106839760 106839760 346730378 652543031 989528059 989528059 793232864 272973032 278211138 835861555 835861555 379726810 317000977 317000977 122563752 355210435 622989609 622989609 117446009 92800104 55903120 578816720 619187416 619187416 72350152 77727184 644637849 644637849 685524608 781003869 784234237 784234237 615806900 615806900 772096116 772096116 118406688 625995444 625995444 618528328 672729078 871469952 871469952 338337930 270582192 270582192 407937732 407937732 167563236 401323708 401323708 755786970 846811576 846811576 419431494 419431494 826052442 826052442 381439779 188534580 265938684 769476324 769476324 649696656 649696656 256000395 997233651 997233651 877666875 877666875 231163914 407118026 407118026 442794078 1019400804 1019400804 478712832 478712832 466762982 396218544 25765568 203424012 811671594 893648930 893648930 874319019 1062677242 1062677242 1036258385 872726709 872726709 425779345 317069778 167837696 167845908 167845908 621021376 621021376 203756428 799084336 799084336 772177941 772177941 654431008 654431008 540389645 374538785 159168960 882237348 882237348 95426059 165549664 214435020 961566436 961566436 767203895 733770925 733770925 705770261 756549229 756549229 689441860 238610012 238610012 128611896 662977384 842337918 842337918 504488478 531650066 531650066 331036530 100325352 100325352 310907670 310907670 285218526 89784686 680672352 680672352 671878149 671687685 824288263 824288263 828612640 828612640 758235713 758235713 580183889 547705776 206298497 206298497 122417341 740449296 774688029 774688029 727357472 564359761 32624864 731955616 731955616 562194988 516948656 909709646 909709646 177873451 684720132 684720132 594192754 670645632 961553824 961553824 796156863 659655420 537960797 543810945 1007034734 1007034734 716380699 357318287 414191282 414191282 285884512 281730018 291137222 303814932 303814932 799050841 799050841 579087698 579087698 834134797 1036141708 1036141708 806602888 516022662 616843400 707564837 863671589 1064748703 1064748703 758599780 758599780 647368289 642666200 517913620 517913620 412291508 412291508 408736398 252019282 484046914 524350614 524350614 871367667 871367667 545446352 708272171 708272171 834982297 834982297 715599219 715599219 868164693 1056274661 1056274661 886311627 964545586 975039978 986974935 986974935 974019160 986500311 1049574439 1049574439 566925390 225790644 519400014 519400014 437201600 886517427 886517427 89312491 932139291 932139291 661301155 664673917 664673917 743448364 743448364 701887316 701887316 1020603249 1020603249 119834984 110101328 340836560 793698951 793698951 517676972 517676972 1052884999 1052884999 357208602 313523538 313523538 943063040 943063040 271846931 52637360 594558208 646603512 646603512 559675041 572805564 572805564 789234460 862282636 930447650 930447650 879619467 848556627 1055560215 1055560215 995176592 894080056 894080056 563742240 563742240 539152513 585290193 659051880 659051880 200994926 72563584 514855810 567540644 567540644 890663134 890663134 906017464 906017464 1033926941 1033926941 978396040 314304928 314304928 593843473 593843473 678134960 678134960 539828372 127116792 127116792 835526945 835526945 900115160 900115160 957530356 1015620256 1015620256 948664500 545286661 545286661 231034928 796291753 796291753 215436776 215436776 585370584 590463184 590463184 586228689 369172852 369172852 952307775 992270369 992270369 841222419 889473179 889473179 957665610 957665610 547952877 547952877 750949588 750949588 713077169 711574005 570950725 713225332 713225332 695612112 841945611 841945611 656020152 90932240 268646528 349512064 379860888 379860888 284373504 344141898 378732560 378732560 1049088 201400331 271628811 473430798 473430798 806102917 806102917 269164255 1016428978 1069905559 1069905559 958511274 958511274 541418792 825107598 825107598 503917244 503917244 459237986 517248634 517248634 438158580 483667504 483667504 323535368 63839472 344720728 515676955 818544027 818544027 571533063 976506463 976506463 613231689 667845648 964955337 964955337 950233103 950233103 872888331 872888331 467277451 461846646 940910623 940910623 695830894 695830894 312501561 773915184 980066620 980066620 878961546 878961546 813246339 728427091 728427091 387323855 115230337 204107110 706642296 706642296 470471696 546079956 989350353 989350353 570541760 570541760 433428327 368559416 146133380 243904668 243904668 246104868 362524946 362524946 110897160 118436384 136438692 136438692 344158344 344158344 255988718 436864810 507586326 507586326 402653190 138075776 138075776 475683184 518135262 518135262 408723136 281855266 281855266 283736356 434875562 491173226 491173226 432087270 432087270 383686656 383305434 469082070 469082070 414491610 414491610 751380124 751380124 508166149 63472704 298488640 298488640 60923040 60923040 72024104 72024104 130793176 162078288 177730188 177730188 632494272 632494272 623038961 629674040 629674040 229286352 440402134 440402134 509608218 1013473688 1013473688 843703443 402752661 14292672 248704056 248704056 247791628 151325316 97792768 79248032 79248032 74055712 83886120 83886120 83902976 83902976 5716608 354150762 359823010 359823010 270786632 270786632 70519560 11675152 362683938 914372444 914372444 497289537 262675548 1068092488 1068092488 902311283 570575106 515557829 515557829 780408214 799719900 799719900 677026837 677026837 559159025 545542177 274935840 304788642 304788642 291659842 260571964 260571964 629908344 629908344 461373366 539042370 754281419 942918162 942918162 707213589 562137152 554035233 1040453376 1040453376 756288045 756288045 1030515474 1030515474 344774414 344774414 354956652 465118834 465118834 462424538 346417482 346417482 470098558 533987374 533987374 379292098 379292098 465707002 465707002 385971284 73475200 105063661 691543956 691543956 804586258 804586258 876650780 876650780 686478977 749012388 749012388 995714608 995714608 714154572 1031958369 1031958369 892479497 419748498 876624616 876624616 571775864 473998800 473998800 541298688 650777845 650777845 656208068 762761345 762761345 657950533 205609996 106799660 676065868 767871213 767871213 143010889 166014020 965247046 965247046 338178218 689505520 689505520 864591877 864591877 780683602 780683602 817561868 817561868 584136942 870662849 870662849 781953932 814504208 814504208 727275797 587804849 559103505 538257472 9178176 50594928 50594928 337827344 489058112 882403758 882403758 793245885 255926460 255926460 244580740 180841522 461896916 461896916 387611676 387611676 252056590 252056590 462442550 462442550 385589632 581108644 748118758 1073686928 1073686928 1044595098 1044595098 126431462 463214673 958010919 958010919 963253671 963253671 1052932636 1052932636 712182284 712182284 5057664 610959154 928377531 928377531 369162908 410484506 659939985 659939985 792846629 792846629 682909850 443809974 289720544 33554448 166052236 166052236 155388052 631373088 631373088 597978928 58258448 58258448 204510572 204510572 796916681 796916681 615063648 651089293 741004765 741004765 74111133 235202624 235202624 617574544 637703240 637703240 116265664 117384648 117384648 70984328 75182724 177276332 177276332 218313924 411771520 411771520 269558274 134217732 1045840164 1064754111 1064754111 804620731 818123264 819061443 819061443 559219936 547171905 408298632 282930882 282930882 164244006 694066385 694066385 535356216 326238486 706034181 706034181 34687632 46157416 119088696 120074515 540410187 668126802 826737371 826737371 803796805 255204156 788149436 788149436 947740240 947740240 841073317 740851984 740851984 705102788 705102788 291198584 291198584 181004038 333075124 333075124 268567792 112585560 112585560 109340768 109340768 262000842 534324990 534324990 423350974 448655190 448655190 504282912 504282912 362944590 372659472 372659472 285218080 679292805 679292805 566767659 973799688 973799688 784204192 712607469 712607469 791995053 899078801 899078801 206858446 5571072 1049088 373358768 403378734 596379671 596379671 369107066 581125215 925357151 925357151 431718932 431718932 821829385 821829385 400219058 873698979 873698979 624580520 582956160 845660984 845660984 562990145 694280993 694280993 686563400 745352589 745352589 149437504 172959876 172959876 779438680 779438680 781387229 781387229 618003421 183580120 198170868 198170868 51145776 186522180 186522180 144055860 436290564 436290564 439124254 443093326 443093326 498636992 505866046 505866046 220555072 421396954 421396954 155489348 278648834 278648834 245992888 245992888 382915290 382915290 63387888 305548280 358540274 358540274 687123244 687123244 882500805 882500805 93864163 75899736 75899736 68156424 124351416 124351416 56515992 328043858 328043858 377538650 377538650 122034360 386249274 386249274 532758982 532758982 562586931 562586931 785451184 811991486 811991486 653108953 653108953 627973936 673857344 673857344 53838028 217358384 728076492 728076492 665319801 649643865 649643865 170249477 193143864 210375756 558016040 648975465 648975465 752103755 752103755 1061830054 1061830054 846000387 846000387 758289167 811858885 817050435 1002317728 1002317728 323159142 402783680 638508617 657787280 912018419 912018419 882937762 423175520 423175520 365969504 471124494 471124494 474382976 474382976 475532544 475532544 240124968 436470018 436470018 270534678 304612626 304612626 272630792 720914272 720914272 551456436 551456436 843094614 843094614 146860672 146860672 75072472 113516240 113516240 72376866 452779108 691764593 691764593 492897706 784889409 784889409 301991980 980420129 980420129 580687634 580687634 421529669 555375232 682127876 682127876 412829952 176376768 148949712 148949712 45508372 185234448 185234448 440669204 440669204 389724852 389724852 485295524 485295524 362447464 361787498 361787498 353457408 279185730 288655616 288655616 28625760 3679008 16786176 339085324 339085324 990188815 1001008503 1001008503 276956026 942287622 942287622 538918401 406131975 512384094 956148489 956148489 1033388546 1033388546 897526075 897526075 386147241 653274171 653274171 523713609 683346014 683346014 989528059 999951232 999951232 292422903 278211138 320813866 382473472 566759264 934616057 934616057 403054726 704647174 704647174 570560529 105383064 113271944 113271944 79814856 107374856 107374856 72350152 124343632 644637849 644637849 685524608 768206061 768206061 241757348 615806900 615806900 772096116 772096116 128196608 97386568 97386568 120225000 314813802 314813802 338337930 338337930 318767154 318767154 407937732 484716206 484716206 401323708 401323708 583542126 846811576 846811576 357773994 363932451 583082681 583082681 188534580 520627262 520627262 265938684 93406356 974201957 974201957 256000395 997233651 997233651 830521961 830521961 446720306 61196614 482682996 482682996 1019400804 1019400804 454214359 466762982 466762982 396218544 621414540 621414540 491324452 688399400 1062995631 1062995631 407771168 1036258385 1036258385 453657617 425779345 425779345 74614064 172121816 172121816 167845908 621021376 621021376 746275969 799084336 971339608 971339608 931177318 654431008 654431008 1006880288 1006880288 873493551 882237348 882237348 95426059 165549664 214435020 934609093 934609093 683686671 192939008 643831296 730467177 765200909 765200909 701238501 701236453 700974309 125830301 0 2099776 9699584 11799360 11799360 9699584 7806976 7806976 272777304 272777304 230760080 230760080 156312228 770850400 770850400 671878149 759349793 1041815213 1041815213 462690941 557056470 557056470 20244544 779210416 779210416 252250684 654489608 654489608 740449296 774688029 774688029 179339968 179339968 569410148 569410148 196133793 374221356 516948656 909709646 909709646 417215990 684720132 684720132 594192754 670645632 961553824 961553824 796156863 714211860 338764018 71302920 1007034734 1007034734 716380699 357318287 414191282 539557888 539557888 28023584 20824096 169524752 304190268 799050841 799050841 153931044 489871616 834134797 834134797 822393187 806602888 516022662 516022662 384129944 108108546 970496724 970496724 758599780 758599780 552125889 1062921797 1062921797 925627707 754199004 754199004 666929954 666929954 266062720 524350614 524350614 127179196 545446352 545446352 708272171 708272171 314232360 809517368 864166429 864166429 840910203 968988742 968988742 499410085 546744288 546744288 420238912 46247120 438210193 986500311 1049574439 1049574439 1053169887 1053169887 830525842 1043247675 1043247675 886517427 886517427 473551972 1000285188 1016946263 1016946263 664673917 664673917 743448364 993365056 993365056 701887316 1020603249 1020603249 1017211150 1017211150 705043016 793698951 793698951 517676972 517676972 1052884999 1052884999 439261456 439261456 480550750 943063040 943063040 863463221 863463221 223654237 751764948 751764948 792788201 960615105 960615105 928438971 862282636 930447650 941492057 941492057 848556627 1055560215 1055560215 912995739 631107576 631107576 716310088 755119293 755119293 585290193 659051880 659051880 226930992 191027276 232155213 567540644 753277389 753277389 973294393 973294393 441915572 441915572 185024582 230484888 314304928 314304928 91177562 541591254 541591254 318866520 318866520 320473768 320473768 120184320 299047298 393251186 393251186 957530356 957530356 948664500 948664500 251913985 157721116 171806336 395937746 395937746 215436776 215436776 999643576 999643576 508609182 993646128 993646128 533137191 952307775 952307775 897843234 493953966 889473179 889473179 944818221 944818221 547952877 547952877 225394092 163854544 559670097 570950725 575402160 713225332 713225332 695612112 841945611 841945611 656020152 322447888 272894082 273037696 273713536 273713536 271895298 102531474 402287026 402287026 108336464 357581346 357581346 123209400 315306602 315306602 87041792 121376568 121376568 39661200 64171936 64171936 55051440 55051440 130211138 392957370 392957370 360759402 469783390 469783390 416285248 403751040 407896710 407896710 523370954 523370954 123529472 515676955 818544027 818544027 981417871 981417871 976506463 697555455 725092149 964955337 964955337 951516537 950233103 872888331 872888331 742764837 461846646 940910623 940910623 389049738 389596986 389596986 773915184 980066620 980066620 789148988 789148988 202915982 728427091 728427091 387323855 574618682 1026393660 1026393660 1020389140 571773382 546079956 848943909 848943909 570541760 570541760 315089218 315089218 463535030 463535030 459704116 186651924 287937984 287937984 304796000 320956016 426979590 463667652 463667652 541197255 692244543 692244543 628692417 655168492 655168492 502667660 312220434 312220434 147098436 928564162 928564162 613582568 34285802 283736356 283736356 491173226 491173226 362858168 383686656 383686656 383305434 678135325 678135325 896443248 896443248 751380124 751380124 573341698 537783297 572803872 572803872 555035169 545614848 65601376 65601376 114582648 166565120 166565120 71975196 565393728 565393728 151191841 689784396 689784396 654200150 654200150 770444569 770444569 374137516 374137516 222635688 222897324 898163340 940572748 940572748 287888978 287888978 66531584 290596994 290596994 86543786 270828034 275828618 356305056 356305056 73975176 78867850 336681154 336681154 280181058 298025794 299206944 299206944 2177056 816262404 816262404 816794677 816794677 1042473224 1042473224 924861707 570575106 515557829 680697460 908900053 908900053 870010127 832495203 832495203 852086801 852086801 279903569 304788642 304788642 291659842 350586986 400451818 619953081 619953081 390093698 539042370 754281419 754281419 877908754 934320522 934320522 721574664 892508526 951083612 951083612 756288045 1030515474 1030515474 344774414 344774414 354956652 465118834 465118834 378671946 346417482 370233392 411228726 411228726 197019552 372359988 372359988 371718426 54292528 76620360 76620360 101783400 774940562 1033565131 1033565131 804586258 979517440 979517440 465346290 569176640 569176640 972692343 972692343 714154572 714154572 892479497 892479497 1006571686 1006571686 876624616 571775864 335795390 432661734 680628965 680628965 650777845 953978590 953978590 762761345 695070117 719072529 719072529 555626810 829473699 829473699 285329513 500363102 965247046 965247046 338178218 587411696 587411696 549454017 736646087 736646087 729419124 817561868 817561868 321342210 419674150 419674150 781953932 781953932 727275797 727275797 321262467 176226608 365544686 365544686 530629076 530629076 442515886 436212202 767264970 793245885 888612386 888612386 741084429 104334533 180841522 461896916 461896916 387611676 449184968 449184968 252056590 462442550 462442550 298357432 484312144 484312144 278995266 361551764 511465942 511465942 510716134 484042446 116738262 106435952 379330120 379330120 213649658 190866528 945054986 947685645 947685645 941959431 928377531 928377531 318821523 489349272 489349272 326108082 318890034 508873014 508873014 336031228 336031228 255384098 412406112 412406112 155388052 598754224 603317233 603317233 563742929 58258448 204510572 204510572 796916681 796916681 573757204 706345561 741004765 741004765 572291889 572291889 235202624 617574544 637703240 637703240 242836920 582589001 582589001 70984328 80361192 177276332 177276332 218313924 411771520 411771520 269558274 916777104 916777104 338820376 369388830 381365302 818123264 819061443 819061443 692237801 763461860 763461860 344133642 253306428 177357988 711066501 711066501 535356216 344458312 706034181 706034181 423403185 82633856 484411820 484411820 540410187 752749184 826737371 1043123251 1043123251 565306209 565306209 667472864 667472864 412090457 529277552 740851984 740851984 705102788 966343968 966343968 966714817 966714817 427244454 883363593 883363593 163153124 219204128 219204128 110526512 262000842 534324990 534324990 423350974 448655190 448655190 504282912 504282912 362944590 270932226 285218080 356650446 679292805 679292805 566767659 973799688 973799688 618533146 739907085 739907085 440933424 797974107 797974107 1023489568 1023489568 868221171 868221171 864289899 608775322 596379671 255988776 581125215 925357151 925357151 431718932 431718932 254299052 400219058 400219058 873698979 873698979 675310802 675310802 260703361 125477960 617826144 694280993 694280993 685559493 634430156 31272672 546967552 546967552 172959876 720927088 720927088 723308501 731245173 731245173 243539536 243539536 110776092 257476284 267404608 267404608 236796656 500255628 507540490 507540490 443093326 443093326 498636992 505866046 505866046 220555072 421396954 421396954 214676508 278648834 278648834 255320072 257558239 659810427 835021733 1001864055 1001864055 831818600 358540274 424706440 424706440 910730808 910730808 564674622 225024252 619346932 650712069 650712069 597853212 597853212 26156224 610850281 610850281 336986802 748295757 763905589 763905589 713032181 713032181 309884912 558180513 558180513 662739116 662739116 653108953 653108953 625344681 673857344 673857344 53838028 217358384 728076492 728076492 665319801 728025525 728025525 181668032 725653884 786616797 799162528 925895178 925895178 634850686 634850686 833749038 833749038 538132330 660480 602112 402655232 402991110 1002317728 1002317728 412299846 814582150 814582150 1035403476 1035403476 99169132 203031246 423175520 423175520 475424705 508560030 508560030 575870623 575870623 201568269 139598606 240124968 869613969 869613969 165479274 304612626 304612626 402130321 660112908 660112908 651478949 651478949 848184071 848184071 135549636 135549636 15006092 209924172 209924172 140693892 452779108 580833921 580833921 455238400 681592023 681592023 459317300 980420129 980420129 580687634 580687634 421529669 555375232 682127876 682127876 412829952 395968632 395968632 94621752 462936904 462936904 256279858 440669204 440669204 308457980 308457980 338542664 338542664 75558154 9445888 26295648 369565464 369565464 103757858 94623576 43365152 43036008 69219936 69219936 287055618 990188815 1001008503 1001008503 555754250 942287622 942287622 538918401 896143077 896143077 956148489 956148489 1033388546 1033388546 1026492468 983828876 983828876 653274171 653274171 523713609 683346014 765387328 765387328 999951232 999951232 292422903 32715744 1015547693 1015547693 833095168 934616057 934616057 569720711 704647174 813744195 990924961 990924961 718410453 113271944 672981304 802271312 802271312 69702664 607078664 607078664 90487840 118322344 118322344 27451744 27451744 541696 541696 39731192 128196608 128196608 56568496 56568496 52472912 55304352 55304352 69292314 270561570 318767154 318767154 407921066 484716206 484716206 399233444 399233444 319231390 319231390 303223314 303223314 363932451 583082681 583082681 156248516 520627262 520627262 15803328 63644832 974201957 974201957 614053504 676340991 676340991 276955142 446720306 446720306 520163606 520163606 644090496 644090496 776729757 776729757 257476284 257476284 311966753 621414540 742725155 742725155 688399400 1062995631 1062995631 407771168 407771168 251707452 321143808 321703218 321703218 490126272 490126272 222838690 678034029 678034029 283894442 746275969 746275969 971339608 971339608 931177318 587452688 842675756 1006880288 1006880288 873493551 957371399 957371399 695210563 695210563 156799972 934609093 934609093 683686671 222430273 643831296 730467177 765200909 765200909 757335444 799540605 799540605 578289817 1049297896 1049297896 930299224 505201902 505201902 403007826 313658034 336774080 336774080 272777304 244847836 244847836 156312228 770850400 770850400 671613957 759349793 1041815213 1041815213 815799072 473138935 884527553 884527553 779210416 779210416 743034396 743034396 654489608 542427777 212227480 198622832 181958036 231433671 1022920266 1048134639 1048134639 566827150 374221356 544750316 544750316 417215990 538974768 538974768 547974928 547974928 640124466 640124466 714211860 714211860 236598357 71302920 147491144 537814869 781650040 781650040 600135885 545882560 539557888 283177128 355941198 355941198 1006836062 1006836062 514232335 287758626 235832638 0 0 0 0 0 8520192 9572928 927157024 927157024 72092808 929121384 929121384 552125889 1062921797 1062921797 925627707 754199004 754199004 666929954 666929954 189194193 702978433 962593100 962593100 955124943 955124943 845829905 794209744 794209744 824035760 864166429 864166429 1070208255 1070208255 968988742 499410085 277352616 84067808 406297328 406297328 113421110 71303304 71438336 1046608192 1053169887 1053169887 830525842 1043247675 1043247675 833494345 833494345 815649312 1000285188 1016946263 1016946263 645976177 645976177 577342272 993365056 993365056 780565454 780565454 304951020 1017211150 1017211150 895939967 705043016 265758056 240573084 106470404 221353760 221353760 439261456 439261456 480550750 480550750 2954775 863463221 863463221 252101768 751764948 751764948 792788201 960615105 960615105 928438971 539543256 616089417 941492057 941492057 799949674 165031700 278871618 446717458 446717458 422618952 716310088 755119293 755119293 51565104 51565104 226930992 226930992 191027276 191027276 134221920 753277389 753277389 973294393 973294393 749990733 1056365535 1056365535 952238552 295907380 441608050 441608050 594093680 815596279 815596279 723848448 405258404 405258404 834722977 834722977 925213059 925213059 646132602 646132602 630768131 555271713 604559365 604559365 202251276 797762545 797762545 419958308 419958308 999643576 999643576 442363542 993646128 993646128 690488613 690488613 897843234 897843234 493953966 1023819908 1023819908 893835435 520129040 218531886 80481480 80481480 163854544 163854544 35113856 575402160 671753041 671753041 152576865 6272 37166768 322447888 335679626 335679626 335679498 383388666 383388666 353852648 338196776 402287026 402287026 108336464 357581346 357581346 484829646 484829646 890153903 890153903 303487767 984411922 1000083063 1000083063 992644754 992644754 905592850 905592850 660183396 392957370 260853846 469783390 469783390 420778762 449525442 449525442 332698422 523370954 523370954 438704164 224822485 642725816 642725816 981417871 981417871 614325503 697555455 725092149 725092149 951516537 951516537 292026786 662259249 742764837 742764837 356130364 904889355 904889355 389049738 389596986 389596986 328352152 420479224 420479224 789148988 789148988 523900724 943215925 943215925 1001509653 1001509653 1026393660 1026393660 1020389140 571773382 718075505 718075505 996709826 996709826 696657396 315089218 315089218 463535030 463535030 459704116 88088952 287937984 287937984 304796000 320956016 426979590 463667652 463667652 541197255 692244543 692244543 628692417 655168492 655168492 502667660 312220434 312220434 507959454 928564162 928564162 613582568 373331848 8396224 8396224 80165980 362858168 387143792 387143792 64876272 181639140 678135325 678135325 896443248 896443248 304161042 573341698 573341698 537783297 572803872 572803872 555035169 545614848 65601376 65601376 46437488 593304305 697789525 705766964 705766964 565393728 152083105 689784396 764478114 764478114 654200150 770444569 770444569 547267329 374137516 439273238 439273238 898163340 940572748 940572748 287888978 287888978 66531584 290596994 290596994 271585696 270828034 275828618 356305056 356305056 88239008 78867850 336681154 336681154 814846979 814846979 299206944 299206944 43916880 856557202 856557202 816794677 816794677 1042473224 1042473224 924861707 268963902 168838660 680697460 908900053 908900053 1034604770 1034604770 868398641 852086801 852086801 300623074 332473074 543201681 543201681 374952216 405831708 619953081 619953081 390093698 505758221 842394387 842394387 877908754 976527647 976527647 721574664 892508526 951083612 951083612 621045010 505235460 19256496 76954128 109125720 109125720 319436112 319436112 295772514 111748440 370233392 370233392 50504218 58771456 58771456 59506688 59506688 60647456 126465136 126465136 101783400 774940562 1033565131 1033565131 795308688 979517440 979517440 465346290 569176640 569176640 972692343 972692343 380633946 559153557 572655936 572655936 1006571686 1006571686 771918044 771918044 996471037 996471037 878829963 680628965 619921630 953978590 953978590 756606503 695070117 731760028 1043162997 1043162997 829473699 829473699 285329513 500363102 738238820 738238820 690583313 690583313 587411696 549454017 736646087 736646087 729419124 729419124 69995784 755387080 755387080 701682405 607043865 607043865 971861425 971861425 321262467 54526128 365544686 365544686 530629076 530629076 442515886 440671880 759433389 759433389 1054348201 1054348201 741084429 104334533 151071784 269412962 885174331 885174331 449184968 449184968 584632549 584632549 443867200 451011030 451011030 479147358 485182994 485182994 511465942 511465942 510716134 484042446 116738262 282331298 379330120 379330120 695786343 695786343 945054986 947685645 947685645 941959431 857166725 589737523 136001028 537446400 537660417 537660417 318890034 858079556 858079556 546476949 546476949 415027088 956162791 956162791 99947320 707939716 707939716 603317233 659631369 659631369 599032416 599032416 577540736 90806088 218089609 706345561 706345561 186263021 572291889 572291889 134617092 244515352 588386897 588386897 242836920 582589001 582589001 36068208 80361192 102004848 102004848 110296752 392142458 392142458 135092312 982174856 1053169887 1053169887 785128139 381365302 381365302 677979525 692237801 692237801 763461860 763461860 344133642 177357988 569457121 711066501 711066501 405418944 344458312 361275567 423403185 423403185 358977128 484411820 484411820 454682148 752749184 752749184 1043123251 1043123251 615723104 615723104 421102919 412090457 412090457 529277552 596714827 596714827 294597610 966343968 966343968 966714817 966714817 427244454 883363593 883363593 163153124 219204128 219204128 110526512 77482528 126883176 126883176 94709808 28365376 28365376 68264488 147362400 147362400 209823752 958565809 958565809 356650446 343941182 967049575 967049575 235145244 618533146 739907085 739907085 344326380 797974107 797974107 1023489568 1023489568 868221171 868221171 864289899 608775322 239339680 138750084 36078592 36078592 177683028 330704392 490211118 490211118 392337450 392337450 491161028 491161028 675310802 675310802 260703361 313338922 839847698 850206087 850206087 639107080 639107080 789059081 789059081 546967552 176213084 720927088 755539576 755539576 731245173 731245173 243539536 243539536 201426744 257476284 267404608 267404608 258598332 500255628 510168332 510168332 310272298 342988318 343274022 409519930 409519930 453776445 453776445 308948134 846988335 846988335 721223107 721223107 558503073 702626599 1013006957 1013006957 1011140751 831818600 613342281 610540129 854657448 910730808 1033979714 1033979714 765665364 800372146 800372146 650712069 687179565 687179565 26156224 610850281 610850281 147641353 748295757 763905589 763905589 713032181 713032181 250571168 558180513 562163749 562163749 746586189 746586189 719425668 719425668 248198364 757055004 753076259 753076259 501641829 430389606 430389606 728025525 728025525 450104022 857122570 857122570 799162528 925895178 925895178 634850686 634850686 833749038 833749038 865000563 865000563 634552859 994151659 994151659 650455257 580708055 481805003 814582150 814582150 1035403476 1035403476 957283104 687016032 362350730 362350730 475424705 508560030 508560030 575870623 575870623 404087692 404087692 208759302 869613969 869613969 165479274 277349578 277349578 402130321 660112908 660112908 651478949 651478949 848184071 848184071 425035928 243706774 236243484 209924172 209924172 140693892 140693892 139889412 250160510 357302306 474546492 474546492 459317300 459317300 1058014354 1058014354 450267652 450267652 307681938 182900002 138854688 288255560 395968632 395968632 94621752 462936904 462936904 256279858 272033698 272033698 247027316 277336264 277336264 414027458 414027458 342467464 342467464 369565464 386433410 386433410 339832248 94836256 94836256 69219936 69219936 77342824 93983744 965148775 965148775 555754250 741742884 741742884 290797728 896143077 896143077 842317810 682799426 682799426 1026492468 1026492468 983828876 983828876 685904202 612706377 799227420 799227420 765387328 765387328 714312449 714312449 284355746 437002562 1015547693 1015547693 833095168 833095168 605030400 569720711 289284747 813744195 990924961 990924961 718410453 437798067 672981304 802271312 802271312 69702664 607078664 732851376 732851376 717758592 751136156 751136156 255988884 615714724 615714724 597009809 146644948 109260888 118721240 124678360 124678360 97065200 97065200 46803280 52457728 54284080 128994152 390458264 390458264 237135328 115708860 450521352 450521352 366883368 328242696 312002064 312002064 399360 399360 13762728 110694384 110694384 15803328 63644832 307238458 545773239 614053504 1007748213 1007748213 939551313 603979785 603979785 740784136 740784136 925722934 925722934 1061367999 1061367999 257476284 257476284 311966753 788534068 788534068 742725155 777070242 889456884 1012337856 1012337856 777130631 945161349 945161349 872696996 321703218 490126272 490126272 222838690 678034029 678034029 283894442 371089285 371089285 363468138 353376064 390205418 587452688 842675756 1026319271 1026319271 889421834 957371399 957371399 738596814 695210563 470160396 806259619 806259619 404101638 337904336 249696732 620889120 620889120 189274449 757335444 799540605 799540605 578289817 1049297896 1066071217 1066071217 505201902 505201902 403007826 1009169857 1009169857 470600718 554599061 554599061 412295690 626000585 788721677 788721677 705946141 252981262 423032832 815799072 848706738 967488496 967488496 884527553 564190541 545912049 743034396 743034396 591112201 728505780 728505780 641961237 542389253 646966402 1022920266 1048134639 1048134639 566827150 275850184 544750316 732481139 732481139 741904994 816355104 816355104 303325296 640124466 640124466 768213945 768213945 730290201 787063261 787063261 678906304 781650040 781650040 600135885 545882560 18824512 283177128 355941198 509704880 1006836062 1006836062 514232335 959115290 959115290 908540789 954677307 954677307 864520352 462450814 462450814 815827100 944789804 944789804 72092808 929121384 929121384 385928034 134663468 134663468 171369346 991837222 991837222 718544995 968215255 968215255 702978433 962593100 962593100 955124943 955124943 845829905 794209744 815908291 824035760 824035760 595656632 1070208255 1070208255 903964340 559989153 1004769682 1004769682 406297328 406297328 260442155 663016541 727439035 727439035 1069682943 1069682943 894901338 894901338 459253888 828689347 828689347 815649312 874258184 874258184 129651979 43918144 711536468 711536468 358925628 527727270 780565454 868173664 868173664 906317392 906317392 895939967 787403279 787403279 353644186 371905562 849742165 849742165 739135275 152178948 774479967 774479967 176745728 8963136 243317180 610257160 610257160 591813105 129585593 397157268 905081942 905081942 667032051 216496533 143000576 305491492 305491492 279118920 338375946 338375946 112743770 866772240 866772240 76033192 684003008 684003008 211630964 211630964 38086512 218120192 218120192 236250152 236250152 335581231 632494147 947912775 947912775 1056365535 1056365535 952238552 285335924 441608050 441608050 594093680 815596279 991117974 991117974 405258404 405258404 834722977 834722977 925213059 925213059 616987408 616987408 36802792 127926552 604559365 604559365 202251276 797762545 797762545 653598975 653598975 605932448 442363542 448086728 448086728 573210010 690488613 690488613 428215318 856359648 856359648 1023819908 1023819908 893835435 890247202 923570328 923570328 558843236 573892496 573892496 52827824 52827824 594682528 594682528 559857537 559857537 554428833 542534560 335679626 335679626 335679498 383388666 383388666 353852648 338196776 364854952 364854952 281141442 229054827 348977667 484829646 484829646 890153903 890153903 303487767 984411922 1000083063 1000083063 992644754 992644754 905592850 905592850 660183396 282603224 374606490 374606490 420778762 420778762 449525442 517210240 517210240 512760542 438704164 438704164 218545030 642725816 805384708 877988406 877988406 614325503 194765951 73728 443991720 477698336 477698336 524640490 524640490 38873184 58772096 58772096 212956228 594357681 594357681 541917488 406225985 410178438 531339241 531339241 422260939 1053373918 1053373918 1040196804 943215925 1001509653 1001509653 738263060 738263060 359427207 454768182 718075505 718075505 996709826 996709826 696657396 377784858 377784858 42941520 218833020 218833020 260048300 260048300 127991976 26251280 34676992 36700944 220767138 273163324 273163324 101805348 101805348 986945308 986945308 169869588 169869588 174064020 174064020 507959454 507959454 238191384 373331848 373331848 302241154 302241154 275689682 57070058 387143792 387143792 358678234 358678234 370869888 370869888 278196992 278196992 76002 278987776 279520578 279520578 810025232 810025232 311780979 299221616 66326160 23069088 35416545 593304305 697789525 705766964 705766964 540140289 756285440 756288045 764478114 764478114 321630848 321630848 547267329 547267329 342963472 440542758 440542758 184956000 184956000 168560680 138419228 65061360 65061360 46844960 271585696 271585696 2760224 3985152 3985152 88239008 88239008 18861856 18861856 539247648 814846979 814846979 297693698 268722624 43916880 856557202 856557202 600311025 822202368 822202368 541120513 268963902 268963902 39076288 561778691 561778691 575495280 1034604770 1034604770 868398641 597494995 581955712 300623074 332473074 543201681 543201681 374952216 405831708 405831708 119891616 610567704 610567704 842394387 842394387 611435275 976527647 976527647 411437870 411437870 270685344 272664864 285611042 385978416 385978416 474965510 474965510 475724368 475724368 319436112 381251852 381251852 238193810 280749330 280749330 69895498 199980064 199980064 165957012 157812132 126465136 126465136 108907104 743191413 776004921 776004921 795308688 795308688 664601032 97567464 666015288 666015288 872673572 881012811 881012811 393820923 354756872 354756872 625882104 625882104 771918044 771918044 996471037 996471037 878829963 761376936 761376936 665603424 740926977 774688029 774688029 731760028 1043162997 1043162997 42468432 49203968 49203968 27398496 738238820 738238820 765282809 765282809 235542121 289409248 289409248 492443310 492443310 237280356 649205988 755387080 755387080 701682405 1049829510 1049829510 971861425 971861425 449392611 151520292 254971944 254971944 154157876 104074008 440671880 440671880 759433389 759433389 1054348201 1054348201 738329300 190053608 348254740 348254740 885174331 885174331 327555724 327555724 584632549 584632549 443867200 451011030 451011030 479147358 485182994 485182994 272403872 76420584 78386984 78386984 75762752 282331298 318905030 318905030 695786343 695786343 694788640 694788640 677913856 857166725 857166725 589737523 577723856 577723856 537660417 537660417 159992099 858079556 858079556 546476949 546476949 430726944 956162791 956162791 678303120 707939716 707939716 576642705 659631369 659631369 599032416 599032416 577540736 238535036 238535036 218089609 676513164 787274241 787274241 180356305 134617092 231335136 231335136 169591408 114479832 126023976 126023976 116754624 100108704 167776541 751960673 763575013 763575013 433205891 433205891 982174856 1053169887 1053169887 912513823 282596199 701691968 701691968 268484610 755704401 755704401 529674940 224926828 263856912 569457121 633348961 908389614 908389614 680913487 465684225 410889092 410889092 358977128 420375364 420375364 191189014 176870470 186273840 186273840 168478260 615723104 615723104 294655779 143189764 364012368 364012368 180765542 180765542 294597610 409341294 409341294 356081674 426127462 426127462 425209318 159872098 159872098 89692264 129446240 129446240 113522384 127538808 127538808 94709808 28365376 28365376 68264488 341832970 476394088 476394088 958565809 958565809 334027824 234881052 967049575 967049575 235145244 816318954 816318954 759433131 854990539 854990539 84562881 98824680 817976400 817976400 369626282 520161308 797354517 797354517 138750084 855142343 1038513557 1038513557 508831734 508831734 490211118 392337450 392337450 607160297 607160297 551608912 551608912 119669189 872291098 985532895 1038367955 1038367955 903157138 903157138 789059081 789059081 683676213 683676213 176213084 755539576 755539576 687290189 246485541 217381020 203730556 203730556 196731176 245820920 258598332 258598332 67994624 510168332 510168332 203715210 207171356 237572616 237572616 168693761 453776445 453776445 308948134 846988335 846988335 721223107 816341376 816341376 838098572 1013006957 1013006957 1011140751 853541331 863504625 863504625 854657448 854657448 1033979714 1033979714 765665364 800372146 800372146 196151945 740043556 763698885 763698885 544347009 97487776 260231868 260231868 227050168 215516708 118982380 250571168 250571168 48430916 630133800 630133800 746586189 746586189 719425668 744883712 746463117 757055004 753076259 753076259 501641829 430389606 430389606 358025716 450104022 450104022 857122570 857122570 653909399 724925772 773849373 773849373 242715781 169144852 169144852 865000563 865000563 634552859 994151659 994151659 650455257 580708055 953468624 953468624 309602195 309602195 957283104 957283104 687016032 275451778 277496642 421297702 421297702 336635778 136339588 136339588 404087692 404087692 208759302 203507736 203507736 368124298 368124298 261169788 341910506 341910506 708326840 708326840 706367300 985423829 985423829 425035928 243706774 243669324 238420568 236979096 71776392 282064880 364764368 364764368 357302306 474546492 474546492 302726638 370673178 1058014354 1058014354 450267652 450267652 307681938 182900002 339220604 339220604 399190696 399190696 475093732 475093732 162992650 202325004 367717066 475930018 475930018 277336264 277336264 414027458 414027458 342467464 342467464 289406754 386433410 386433410 339832248 94836256 94836256 19337216 223624332 361571690 361571690 189935068 392168376 392168376 269484546 92424256 290797728 367728968 842317810 842317810 271098627 22026560 338034968 338034968 503519448 685904202 685904202 612706377 939863322 939863322 529241360 529241360 316878222 287200930 284355746 448586242 448586242 292290644 852101232 852101232 831238202 831238202 1001106436 1001106436 934404987 873038038 696836637 437798067 211547724 218666468 218666468 22821000 577376632 732851376 732851376 717758592 751136156 751136156 637543781 783296101 783296101 597009809 146644948 115299976 118721240 257999292 257999292 709301412 709301412 613289120 308466066 308466066 351793548 419019552 419180536 419180536 227477262 450521352 450521352 366883368 328242696 312002064 344275272 344275272 342309858 226504804 226504804 22094496 66938272 66938272 231596250 545773239 545773239 1007748213 1007748213 939551313 603979785 603979785 740784136 740784136 925722934 925722934 1061367999 1061367999 118673976 195096700 195096700 788534068 788534068 680022740 777070242 889456884 1012337856 1012337856 777130631 945161349 945161349 872696996 420628076 420628076 412090950 198708852 161219746 80924904 98360984 115626018 363468138 363468138 353376064 216931788 201799692 372698045 1026319271 1026319271 889421834 889421834 821054467 738596814 470160396 470160396 513807918 513807918 404101638 337904336 249696732 190060136 540546752 551686593 551686593 151179680 234885680 234885680 617732985 1066071217 1066071217 750799904 750799904 61145088 1009169857 1009169857 470600718 554599061 554599061 412295690 626000585 788721677 788721677 705946141 413848902 423032832 423032832 848706738 967488496 967488496 467815776 640509844 640509844 637969316 637969316 591112201 728505780 728505780 641961237 542389253 646966402 806175404 806175404 33316944 261407056 261407056 364249700 732481139 732481139 741904994 816355104 831524102 831524102 626008480 626008480 768213945 768213945 730290201 787063261 787063261 678906304 223937192 179335440 179335440 160143376 9548640 11331146 339593480 509704880 509704880 418687993 1031556024 1031556024 959115290 908540789 954677307 954677307 864520352 1020614855 1020614855 815827100 944789804 944789804 432735296 809032331 809032331 385928034 134663468 134663468 171369346 991837222 991837222 718544995 968215255 968215255 959781959 959781959 729360309 407446662 670305484 679501824 679600197 815908291 815908291 684246213 478726360 620257120 903964340 903964340 559989153 1004769682 1004769682 102435284 239883848 260442155 663016541 727439035 727439035 1069682943 1069682943 894901338 894901338 365541211 828689347 1041285654 1041285654 1009447447 874258184 129651979 43918144 711536468 711536468 924862219 924862219 630367089 868173664 868173664 839383059 1030008334 1030008334 787403279 787403279 353644186 480793630 849742165 849742165 739135275 536954569 774479967 774479967 204448528 169446604 32228772 610257160 610257160 591813105 658210907 818688881 905081942 905081942 667032051 768083293 845955845 845955845 546480162 395192232 916610786 970488739 970488739 923651275 866772240 668698458 777714845 777714845 211630964 211630964 188753088 218120192 218120192 236250152 236250152 335581231 537084003 947912775 947912775 508617425 563523639 563523639 501346994 501346994 413664582 717889712 717889712 991117974 991117974 173181664 274803024 274803024 544884104 544884104 625197816 625197816 593592354 593592354 591454355 411263161 288084264 134917124 195613828 626903081 653598975 653598975 605932448 500770542 500770542 448086728 654149566 654149566 630345010 630345010 856359648 856359648 830656570 830656570 883563201 890247202 923570328 923570328 981034244 981034244 698395940 305608738 305608738 462866176 462866176 559857537 559857537 554428833 542534560 4985858 278797824 278797824 274609218 269629568 17714880 17714880 277971584 281141442 281141442 5268034 1155840 2146560 352730848 352730848 102766720 102766720 46155840 46155840 61088112 75898400 75898400 285803576 285803576 73755256 282603224 374606490 374606490 218106528 218106528 131960940 517210240 517210240 512760542 421663286 394526880 470202611 956688423 956688423 844665499 844665499 393495809 928043625 1014107359 1014107359 699681372 578863623 524640490 565463049 986011977 986011977 285831875 420991493 594357681 594357681 541917488 406225985 410178438 847904809 847904809 422260939 1053373918 1053373918 1040196804 893631827 893631827 740205032 884188456 884188456 825770288 825770288 454768182 441732292 483199658 483199658 66322560 377784858 377784858 21868930 218833020 218833020 260048300 260048300 59403712 59403712 310499618 327642426 354692364 354692364 696703077 696703077 633676029 986945308 986945308 660302613 305216788 499329672 499329672 228540012 835930850 948082218 948082218 65658498 302241154 302241154 275689682 57070058 61002800 339961872 358678234 358678234 897346155 897346155 837304954 837304954 270861761 557138352 572546353 572546353 810025232 810025232 596831312 583287696 66326160 44650064 60708560 134393088 137362692 723203972 723203972 593494449 756285440 756288045 756288045 747295821 747295821 295607373 946093143 946093143 816733274 740967236 740967236 159469832 159469832 259086500 259086500 139658664 139273728 139273728 71428992 21049760 21049760 7021856 3985152 71138880 71138880 27404450 298964706 539247648 539247648 297693698 297693698 268722624 41494416 860377120 860377120 764135571 822202368 822202368 55569584 55569584 39076288 39076288 220992396 220992396 575495280 575495280 567034960 567034960 581955712 581955712 288019811 58855536 58855536 130545912 130545912 32132144 38382344 38382344 610567704 610567704 454828325 305481728 305481728 968437533 968437533 411437870 411437870 915164576 915164576 642757322 385978416 385978416 474965510 474965510 475724368 475724368 486090894 486090894 505173968 505173968 307028550 280749330 145462608 199980064 199980064 418740592 418740592 857238651 857238651 806450763 514634710 514634710 349461345 349461345 664601032 664601032 97567464 666015288 666015288 872673572 942411015 942411015 393820923 1052914870 1052914870 625882104 863877333 863877333 655174713 655174713 468460009 419430438 761376936 982572378 1022025263 1022025263 774688029 774688029 274278115 825765417 825765417 1007106063 1007106063 487897329 315377978 567091584 612699009 765282809 765282809 717992796 699086353 790687516 790687516 790693438 790693438 649205988 649205988 471939766 471939766 1049829510 1049829510 562000998 562000998 576717141 688662888 688662888 473759818 514459956 514459956 459588374 440196542 361665948 474481254 474481254 678957596 678957596 200414248 348254740 348254740 193167582 55624368 55624368 43566672 52216338 462506598 462506598 402975330 315884242 321654048 321654048 275208432 268904512 23204256 23204256 32642016 32642016 539774625 560737319 946146816 946146816 21047328 694788640 694788640 676072581 676072581 822846727 822846727 577723856 808209413 808209413 673963095 185361441 308911810 308911810 281018562 415935972 430726944 430726944 678303120 833432931 850539797 850539797 735229632 42803952 576500544 576500544 80524520 688983885 730731276 730731276 585274880 676513164 787274241 787274241 180356305 89129640 231335136 738444297 738444297 114479832 618045913 618045913 116754624 100108704 167776541 751960673 763575013 763575013 433205891 433205891 139534980 984798039 984798039 912513823 282596199 701691968 701691968 268484610 755704401 755704401 285212706 311952978 311952978 263856912 338726192 908389614 908389614 680913487 465684225 410889092 410889092 283732258 184614210 778947723 778947723 815684641 929988774 929988774 763412484 763412484 470302731 87597376 75818856 364012368 364012368 71336512 71336512 65543552 65543552 23514496 23514496 5313664 21667368 75255048 79170312 79170312 89692264 129446240 129446240 113522384 127538808 127538808 89921744 72926856 72926856 84149004 341832970 476394088 476394088 409992654 354965740 92274792 79900872 443418826 443418826 201340060 816318954 816318954 759433131 858447978 858447978 386435027 380669624 905454186 905454186 350290161 306184338 797354517 797354517 137835144 855142343 1038513557 1038513557 671123782 789315791 789315791 850319571 850319571 832706571 607160297 551608912 551608912 119669189 872291098 985532895 1038367955 1038367955 960039739 1058294331 1058294331 729559105 683676213 683676213 666110481 666110481 761533093 761533093 643023840 69511204 203730556 203730556 196731176 127282684 78086036 319058624 319058624 482039112 482039112 544476033 544476033 947137050 947137050 475216776 756103718 756103718 334322223 264505596 264505596 238572448 816341376 816341376 838098572 838098572 557589675 813827058 853541331 863504625 863504625 576458385 578856001 578856001 204023052 684423560 684423560 1024692782 1024692782 740043556 763698885 763698885 544347009 114937856 260231868 260231868 560072692 734101629 734101629 349755235 542069268 782551061 782551061 630133800 493501694 576323900 576323900 744883712 746463117 746463117 164239428 164239428 128636768 128636768 123473592 576807344 576807344 592830609 592830609 584555808 584555808 1063743881 1063743881 807292847 374760747 1015399170 1015399170 990896896 505550396 505550396 463870326 355067178 395323008 479732404 953468624 953468624 47762119 428940688 428940688 427431846 115037520 115037520 80925384 233086816 233086816 6905992 2923520 274029704 274029704 480920902 480920902 342674826 320336934 492528364 492528364 26215008 873538816 873538816 708326840 708326840 706367300 985423829 985423829 414548933 243669324 243669324 238420568 236979096 71776392 282064880 580668895 580668895 361317438 1034175593 1034175593 303256087 708915489 958033703 958033703 814914114 945815943 945815943 276863185 339220604 339220604 399190696 399190696 475093732 475093732 162992650 491339580 522216084 522216084 475930018 250511596 250511596 405012896 405012896 304901042 236751196 236751196 113645784 228024748 228024748 68631048 68631048 466561694 466561694 361571690 448926932 511582454 511582454 395575546 395575546 321386802 321386802 295907682 808535298 817087491 817087491 555452296 338034968 718539477 718539477 761332844 761332844 364723327 939863322 939863322 686510366 219615414 513126049 513126049 296044031 448586242 448586242 142234322 852101232 852101232 831238202 831238202 1001106436 1001106436 934404987 473014551 383788962 211547724 211547724 218666468 218666468 39321848 93849192 93849192 575244464 575244464 546096217 637543781 637543781 783296101 783296101 194585112 81272025 115299976 115299976 257999292 257999292 709301412 723922997 723922997 715908337 577190289 807884191 807884191 763105197 791129472 791129472 143094324 606259976 932460048 932460048 941294166 941294166 344275272 344200464 344200464 271195138 168842294 554638352 1039551646 1039551646 504442408 390375966 408234630 408234630 165647434 447354198 447354198 50983270 0 0 693558415 1032695852 1032695852 630643305 559310428 458412726 458412726 321987232 483731760 483731760 328794156 102360178 469819004 469819004 453252858 215537870 386437686 420628076 420628076 412090950 276864014 560123303 560123303 488395690 862337808 862337808 573122939 307692928 216931788 157077156 157077156 151348864 352077838 821560268 821560268 478683074 478683074 293202848 343889450 343889450 288807264 85350408 85350408 74836872 70578056 540546752 551686593 676072128 677380485 677380485 617612293 356434484 356434484 324161830 954336920 954336920 113771143 78775872 306249792 314646738 314646738 176230520 310652992 352725036 352725036 430681156 430681156 413848902 355517928 152293636 155447460 155447460 137018848 138915920 640509844 640509844 637969316 637969316 151033088 606209056 606209056 537785609 53036801 10166320 121448546 358616730 359670704 359670704 248588784 237349788 97992724 76681800 448795264 529539584 831524102 831524102 293966397 10715190 33632824 87228984 87228984 134242836 265815804 265815804 223937192 62132232 62132232 25495904 9548640 12008256 339593480 356929824 950030984 950030984 1031556024 1031556024 713186916 780306461 780306461 418431279 612620430 1020614855 1020614855 577220686 630221200 630221200 432735296 809032331 809032331 966609847 966609847 958859391 645101439 539498624 34603136 34603136 25168224 843061318 959781959 959781959 788729387 788729387 670305484 670305484 207424831 564709312 567854817 567854817 614632416 620257120 620257120 437650760 437650760 268748802 59138898 427289336 427289336 239883848 22668960 120530720 120530720 138693672 190851356 237546984 707523768 707523768 627365021 1041285654 1041285654 1009447447 420988717 263267196 129049464 18564440 10341147 924862219 924862219 630367089 707238091 707238091 819623035 1030008334 1030008334 608038665 844890229 844890229 480793630 708974803 708974803 683721920 810082826 810082826 805880835 204448528 169446604 146800780 738561061 738561061 852916657 972599429 972599429 818688881 370172723 516069447 768083293 1000909688 1000909688 1047957203 1047957203 971136490 971136490 970488739 923651275 668698458 668698458 777714845 777714845 710199957 705718172 239404572 233308504 188796584 222596156 222596156 437324884 437324884 454682166 849106980 849106980 478179329 370808346 501346994 501346994 413664582 717889712 717889712 327410752 331399410 331399410 274803024 274803024 921297216 930137019 930137019 625197816 593592354 593592354 591454355 411263161 288084264 134917124 195613828 195613828 9963072 565013032 565013032 500770542 500770542 698441806 698441806 776570202 776570202 630345010 361943658 324538546 830656570 830656570 883563201 883563201 351850482 316485330 981034244 981034244 698395940 371452018 371452018 462866176 462866176 426492114 334520752 324482994 275326082 4985986 278797824 306973008 306973008 289591458 289591458 269185184 286979266 286979266 280623232 291141504 291141504 20899488 338892000 338892000 102766720 102766720 46155840 46155840 270985352 270985352 82069578 100721938 100721938 283384776 283384776 159449496 302563700 443286994 443286994 354020566 482207714 488500782 488500782 460635576 423712988 470202611 956688423 956688423 792880144 792880144 393495809 928043625 1014107359 1014107359 699681372 578863623 462471974 565463049 986011977 986011977 285831875 420991493 420991493 121687048 121687048 83886208 83886208 916652768 930296763 930296763 30421339 996362090 996362090 893631827 893631827 740205032 884188456 884188456 825770288 825770288 34128912 41034176 44043200 44043200 66322560 287071840 287071840 21868930 32452704 32452704 323532256 323532256 375887944 375887944 310499618 327642426 354692364 354692364 696703077 696703077 633676029 432685540 660302613 660302613 305216788 499329672 499329672 390196470 835930850 948082218 948082218 418423544 40555920 40555920 52864128 52864128 34002960 339961872 339961872 38389066 897346155 897346155 837304954 837304954 270861761 557138352 572546353 572546353 40570977 596831312 596831312 583287696 85705248 85705248 117123409 800019801 800019801 723203972 723203972 593494449 254282769 927238104 927238104 747295821 1062545421 1062545421 946093143 946093143 855280264 740967236 740967236 520336566 393574176 393574176 360495618 358448802 352505480 352505480 71428992 85532832 85532832 68552072 87236904 87236904 71138880 27404450 298964706 543356514 547838850 547838850 16307424 30066624 30066624 860377120 860377120 764135571 761054413 587368002 587368002 314746958 314746958 28101984 494443804 494443804 399474090 399474090 567034960 567034960 654649401 654649401 587011730 321098512 903017891 903017891 322935480 478098452 478098452 123164712 689870644 956518668 956518668 807469314 807469314 968437533 968437533 1055776800 1055776800 915164576 915164576 868111563 911903890 911903890 121796640 546049620 638896665 638896665 710052052 710052052 941005488 941005488 307028550 145462608 145462608 65437796 174512532 418740592 418740592 857238651 857238651 806450763 514634710 514634710 349461345 349461345 900975342 900975342 268558338 755669134 755669134 740101142 942411015 942411015 628289890 1052914870 1052914870 168371220 863877333 863877333 851648716 713565287 892079403 892079403 728001064 982572378 1022025263 1022025263 686452143 551102145 274278115 825765417 825765417 1007106063 1007106063 487897329 315377978 378539296 378539296 76669512 717992796 717992796 699086353 790687516 790687516 790693438 790693438 612767817 612767817 471939766 471939766 848371810 848371810 316342211 549724675 576717141 688662888 688662888 473759818 514459956 514459956 459588374 440196542 699736833 804790953 804790953 767035245 213962885 213962885 255497176 256155114 1036682847 1036682847 101195288 102533686 587682311 587682311 462506598 402975330 268560386 57239120 275208432 275208432 268904512 84211880 52831024 125982928 125982928 539774625 560737319 946146816 946146816 812695554 407760263 407760263 676072581 676072581 941705346 941705346 548379904 808209413 808209413 983299671 983299671 840726596 280461330 688575713 688575713 329643826 709304725 709304725 833432931 850539797 850539797 790191900 199706741 134389049 612661008 798897676 798897676 730731276 730731276 585274880 553300421 676490097 676490097 232145404 113964764 134859800 738444297 738444297 106551812 618045913 618045913 89242864 75743880 138416656 169476224 173676180 173676180 173676180 5768832 5768832 173590164 189891584 190441140 190441140 177422972 177422972 21123712 394395896 394395896 285212706 311952978 311952978 961600583 961600583 965018934 965018934 851443923 644425099 1058629512 1058629512 934457687 116068432 778947723 907563139 907563139 929988774 929988774 982700631 982700631 907467291 926140041 1037646908 1037646908 881502002 881502002 846777416 71041744 29583840 29583840 5383296 14545600 19896352 19896352 8130432 78027008 78027008 84697032 93849192 187826354 511357846 511357846 434365414 448191318 448191318 327083790 327083790 296228644 433081966 960286327 960286327 387771358 461447286 581369901 581369901 755965018 799488381 799488381 721667148 858447978 858447978 499439654 499439654 905454186 905454186 350290161 309106898 445216502 445216502 384643416 456181724 982276825 982276825 671123782 789315791 789315791 850319571 850319571 891329011 891329011 488703146 488703146 272783048 537708776 537708776 627065690 634963637 960039739 1058294331 1058294331 257036988 422576150 606231368 666110481 666110481 761533093 761533093 790551940 790551940 620840244 118456456 127282684 127282684 537688305 537688305 529204368 956434171 956434171 544476033 544476033 947137050 947137050 475216776 756103718 944433316 944433316 711242893 269965338 269965338 316326520 316326520 972591144 972591144 510561764 813827058 828559779 828559779 575458449 583975953 583975953 601362649 601362649 268866512 808518797 1024692782 1024692782 539152641 227633704 549158501 549158501 548124464 114937856 924229391 924229391 734101629 892391266 892391266 542069268 782551061 782551061 553818224 579666288 579666288 576323900 220531985 220531985 656418245 889271421 889271421 359323582 332043346 521553487 576807344 576807344 592830609 592830609 538233345 183604949 1063743881 1063743881 1043333919 1043333919 1040236575 1040236575 1009245266 505550396 505550396 463870326 1008590890 1008590890 479732404 479732404 176953856 42281040 428940688 428940688 427431846 111902160 285114576 386897376 386897376 316355328 374213640 374213640 336084352 340862722 480920902 480920902 342674826 320336934 492528364 492528364 445903446 873538816 873538816 353375376 353375376 359396778 811668136 811668136 490410179 46552458 13767232 11907988 102790096 102790096 69544200 975875245 975875245 392690106 1034175593 1034175593 303256087 708915489 958033703 982794660 982794660 945815943 945815943 602836116 543426608 272894096 12373824 231116328 231116328 69472396 117779866 491339580 522216084 522216084 230997634 125830160 92800104 34078840 74084896 74084896 54532200 113645784 113645784 92668080 50177344 68631048 68631048 466561694 466561694 149430212 448926932 511582454 511582454 395575546 395575546 321386802 335988816 335988816 295907682 817087491 817087491 555452296 624530944 718539477 718539477 761332844 761332844 364723327 160634722 686510366 686510366 28650336 513126049 513126049 296044031 20759552 60919352 109159272 564282064 851014008 864810099 864810099 195069408 178918740 178918740 67108872 401771270 401771270 251026036 186696896 85220204 96819992 113719512 224277704 251927168 562036816 562036816 151061536 59245680 59245680 101731968 101731968 68704920 69072896 106588972 255429228 255429228 675882416 723922997 723922997 715908337 577190289 807884191 807884191 763105197 791129472 791129472 276856894 606259976 932460048 932460048 941294166 941294166 179962199 344200464 344200464 312924498 168842294 554638352 1039551646 1039551646 662584249 617822939 617822939 408234630 298264087 447354198 874537230 874537230 715163730 715163730 693558415 1032695852 1032695852 630643305 559310428 484647288 458412726 445956224 445956224 328794156 328794156 261364324 469819004 469819004 453252858 520148138 520148138 357220414 629327140 674394987 674394987 819586829 941977744 941977744 1038356749 1038356749 955385582 325458354 325458354 1014228687 1014228687 644638793 644638793 415387087 948453384 948453384 542549038 293202848 343889450 366609582 427413036 955933668 955933668 688119341 221663688 221663688 16254912 676072128 677380485 677380485 617612293 609126729 609126729 568870517 954336920 954336920 113771143 823304329 823304329 449248278 805732569 805732569 223031664 223031664 94309152 78329160 11155720 161961828 161961828 50934996 167372772 167372772 162801540 801552660 801552660 605078025 52310528 622982656 622982656 606209056 606209056 537785609 53036801 10166320 121448546 358616730 359670704 359670704 248588784 518034372 1043464285 1043464285 907170314 907170314 806519314 788752924 1051297822 1051297822 967761255 889558348 158517328 158517328 35804112 59872704 59872704 31304272 10931488 4148992 4148992 12008256 12008256 276589600 950030984 950030984 510457191 18844054 101843032 101843032 12616320 12714624 145125772 145125772 224428160 224428160 403048490 689205412 877904429 877904429 499125505 966609847 966609847 1021071660 1021071660 539498624 411640213 326493877 996411831 996411831 593826873 593826873 1055012307 1055012307 569707118 956089735 956089735 564709312 813485955 821838274 821838274 614632416 157571841 437650760 507025920 597049783 597049783 451201494 427289336 339923082 1013084162 1013084162 956371232 138693672 151292052 151292052 707523768 814089591 814089591 543519801 500960966 551292609 551292609 263267196 129049464 103906148 222033708 798193500 798193500 536920065 158393128 661924178 819623035 819623035 1020579549 1020579549 844890229 844890229 147109441 708974803 708974803 273009228 810082826 810082826 805880835 166085618 328644244 643497648 738561061 902429916 902429916 972599429 972599429 298164984 370172723 516069447 516069447 1000909688 1000909688 1047957203 1047957203 971136490 971136490 690565388 690565388 633898792 737222697 737222697 710199957 710199957 705718172 239404572 233308504 188796584 222596156 222596156 453277265 910858799 910858799 907027464 907027464 685454027 685454027 530560302 530560302 468864416 945942160 945942160 680661573 559300672 437905472 437905472 591661921 921297216 930137019 930137019 634734947 897654891 897654891 633552896 883081419 883081419 620773481 346220401 672542213 823470627 823470627 1010994348 1010994348 426581666 890267023 890267023 956799456 956799456 469577718 469577718 434111008 434111008 575373888 575373888 132657224 65247080 114295512 375890136 479986701 479986701 466826223 419486774 419486774 849426026 849426026 811952200 324482994 270073520 55739330 40179872 306973008 306973008 289591458 289591458 269185184 286979266 286979266 280623232 291141504 291141504 373992658 373992658 354877896 354877896 339485442 70386434 335683842 335683842 270985352 82069578 297735298 297735298 302812432 302812432 159449496 302563700 443286994 443286994 354020566 482207714 488500782 488500782 460635576 423712988 423712988 277017062 134220448 51974304 25059328 134217729 671088645 688535369 968531370 1044646435 1044646435 462471974 1008932907 1008932907 124861328 102495392 864736371 864736371 864736371 1062546022 1062546022 532245058 916652768 930296763 930296763 211547724 211547724 303088146 427984950 427984950 523782158 523782158 287604568 365719868 365719868 311158610 311158610 353523352 353523352 290117360 290117360 55465296 55465296 394713240 394713240 327469170 811148931 811148931 807332739 296682190 1027064805 1027064805 796795905 796795905 638717963 812651799 812651799 527112472 527112472 249437916 369521238 390196470 390196470 169275532 196641754 447670722 447670722 40555920 40555920 52864128 52864128 51250394 285870216 285870216 297323112 297323112 352144544 354233898 354233898 291677160 67132520 21285024 107517168 107517168 53771056 53771056 33105888 85705248 85705248 117123409 800019801 800019801 674459904 674459904 34344097 254282769 927238104 927238104 643579983 1062545421 1062545421 363855210 855280264 855280264 80745369 520336566 520336566 393574176 393574176 366998709 1049438815 1049438815 788249537 346795242 272145568 272145568 357434656 357434656 271058216 103193984 103193984 129578656 543356514 547838850 547838850 54094592 179110372 179110372 174097552 256264883 761054413 761054413 587368002 597600416 597600416 314746958 177443280 494443804 494443804 399474090 399474090 297629162 547415410 654649401 654649401 587011730 321098512 903017891 903017891 322935480 478098452 728340652 1057625151 1057625151 1044337321 956518668 807469314 807469314 741232526 741232526 1055776800 1055776800 902808024 868111563 868111563 911903890 911903890 35183628 788561516 788561516 638896665 710052052 710052052 941005488 941005488 363675912 294513762 220416314 193598580 174512532 174512532 53613284 53613284 68722696 91146248 91146248 342993256 342993256 416945248 900975342 900975342 268558338 755669134 755669134 740101142 740101142 566021985 628289890 632166474 632166474 489369880 489369880 851648716 851648716 713565287 892079403 892079403 728001064 728001064 1008850994 1008850994 149736900 149736900 23104612 38061952 386155720 386155720 284690370 113771290 46193856 126719552 126719552 114267128 76669512 99705088 99705088 345131720 345131720 474079374 855171088 855171088 967324931 967324931 730972867 848371810 848371810 694222996 694222996 177209552 177209552 176185648 176185648 152830820 55379208 240167824 248586553 699736833 804790953 804790953 767035245 213962885 213962885 148823748 256155114 1036682847 1036682847 101195288 102533686 587682311 587682311 113369608 113369608 47309520 57239120 119673144 119673144 113469768 84211880 52831024 125982928 125982928 76970352 24358912 684711907 812695554 812695554 407760263 429155042 831667782 831667782 941705346 941705346 410597893 142418311 544877077 983299671 983299671 840726596 277439268 688575713 688575713 329643826 709304725 709304725 331350258 334942708 790191900 790191900 946803761 957035559 957035559 798897676 798897676 618972848 618972848 197140828 553300421 676490097 676490097 232145404 113964764 134859800 148227822 148227822 106551812 526261878 526261878 512046704 492265606 431421711 983550367 983550367 810328085 324080775 324080775 139341024 1033658335 1045703263 1045703263 949361223 744431184 576335439 508055770 723658025 723658025 369807988 201834926 160351634 961600583 961600583 965018934 965018934 851443923 644425099 1058629512 1058629512 934457687 441846492 674667474 907563139 907563139 581206288 549739158 982700631 982700631 907467291 926140041 1037646908 1037646908 935216264 881502002 846777416 100687104 29583840 29583840 8611840 14545600 19896352 82887112 82887112 79970312 78027008 84697032 93849192 187826354 511357846 511357846 434365414 448191318 448191318 327083790 327083790 221043592 861815248 960286327 1062897840 1062897840 879590759 581369901 581369901 755965018 799488381 799488381 721667148 738217984 935469465 935469465 711176369 711176369 415302086 625013000 866160072 866160072 370723708 384643416 422646268 422646268 242309446 59259944 92483688 298460496 298460496 845660380 1032163586 1032163586 507540406 507540406 272783048 537708776 537708776 627065690 634963637 634963637 956089748 956485671 993579267 993579267 707396821 748904912 748904912 740344077 596882809 790551940 790551940 620840244 211226092 211226092 201625732 537688305 537688305 529204368 956434171 956434171 449316002 155923620 222329900 222329900 4507776 4243584 944433316 944433316 711242893 1059727001 1059727001 851453446 946938759 1027683938 1027683938 1045889668 1045889668 981259871 993532017 993532017 951277319 839279174 601362649 601362649 361275510 808518797 808518797 920228828 920228828 764692865 740338212 549158501 548124464 152112744 924229391 924229391 655248388 892391266 1050889496 1050889496 539356452 562949217 562949217 663292248 697181793 697181793 664144229 664144229 656418245 889271421 889271421 359323582 332043346 521553487 521553487 947945582 1027653711 1027653711 501530639 547698816 547698816 836927549 1043333919 1043333919 1040236575 1040236575 1009245266 422893814 424729472 424729472 1008590890 1008590890 390942418 390942418 583726040 608438409 608438409 556075251 335342756 335342756 285114576 437994114 437994114 316355328 374213640 374213640 336084352 340862722 342963074 342963074 281296268 945825399 1001464695 1001464695 932824332 1007683492 1007683492 805307551 459351987 990974282 1055597584 1055597584 490410179 2136896 15927808 15927808 102790096 102790096 79065984 975875245 975875245 392690106 822954051 822954051 321912114 237498524 410515654 1063804392 1063804392 691312736 602836116 602836116 543426608 304639288 304639288 426428456 450215562 450215562 276375426 320920224 423287436 423287436 369500208 253863028 253863028 429863984 429863984 121306674 498974620 498974620 347664218 195451404 195451404 87004672 87004672 78700640 86192424 222544524 222544524 206631084 100676152 105906840 105906840 37765144 335988816 335988816 362053152 362053152 22151296 284140162 624530944 624530944 623112489 169306941 168569876 168569876 405536000 405536000 488547830 488547830 499386144 499386144 338248106 687120626 818153862 945930688 993560007 993560007 864810099 864810099 798606649 798606649 178918740 370673178 985154212 985154212 949239809 896692991 600955896 495452174 495452174 298397792 251927168 600115784 600115784 537731481 537731481 179941149 205349393 651968665 651968665 551037009 551037009 585715080 641548377 785174116 785174116 597063491 718379099 959335951 959335951 357664023 286939178 2827884 87607080 276856894 292222330 292222330 273155202 273155202 512492100 512492100 269126992 312924498 943050519 943050519 39789936 604520368 662584249 662584249 653797249 747635277 747635277 298264087 1040978512 1040978512 874537230 715163730 715163730 505990235 270023278 270023278 449180932 484647288 484647288 110256356 445956224 445956224 282191926 327283200 475140694 475140694 232186546 215668428 520148138 520148138 357220414 629327140 674394987 674394987 819586829 941977744 941977744 1038356749 1038356749 955385582 325458354 325458354 1014228687 1014228687 644638793 644638793 415387087 948453384 948453384 542549038 296506794 296506794 366609582 427413036 955933668 955933668 763367469 629543180 689051713 689051713 548541249 229170445 20187936 672171656 672171656 1050324490 1050324490 546566722 546566722 613442106 823304329 823304329 449248278 805732569 805732569 224416208 241336352 241336352 78329160 11155720 161961828 161961828 144838980 167372772 204679169 741743373 801552660 801552660 792680212 792680212 781373557 622982656 54088713 109101144 578937049 683761744 683761744 676349957 536906436 18882560 18948384 18948384 518034372 1043464285 1043464285 907170314 907170314 806519314 687927299 1051297822 1051297822 967761255 889558348 203834128 158517328 47958144 47958144 31304272 31304272 10931488 3712768 12164482 291090122 291090122 288594538 404929040 880483855 908856754 908856754 840172761 130161329 825361011 825361011 852787227 852787227 583057617 847833278 847833278 689205412 877904429 877904429 459772791 527078838 527078838 1021071660 1021071660 411640213 411640213 326493877 996411831 996411831 593826873 593826873 1055012307 1055012307 865207424 956089735 956089735 558983716 813485955 1058089422 1058089422 488612501 347789130 1048744484 1048744484 597049783 597049783 451201494 147125498 339923082 1013084162 1013084162 956371232 157435052 190992644 190992644 176214051 814089591 814089591 500960966 500960966 551292609 551292609 197470452 795933413 795933413 729466012 798193500 798193500 238158525 158393128 640325560 1063013657 1063013657 1057625151 1020579549 415896774 415896774 268567748 683968592 683968592 6069957 941011738 941011738 1052153233 1052153233 330247669 643497648 716167977 902429916 902429916 545828553 370461210 526310376 945469358 945469358 513872899 791948990 791948990 99133973 71701976 588133064 588133064 690565388 690565388 633898792 737222697 737222697 198445812 198445812 170942720 170942720 54805896 128992976 128992976 125995840 453277265 910858799 910858799 907027464 907027464 685454027 685454027 530560302 530560302 531017644 945942160 945942160 680661573 559300672 437905472 437905472 591661921 591661921 129501993 558152617 738394277 897654891 897654891 633552896 883081419 883081419 620773481 583025088 672542213 823470627 823470627 1010994348 1010994348 426581666 890267023 890267023 956799456 956799456 584746600 1064882265 1064882265 952637389 713741397 479081487 562436409 562436409 505698504 226662556 479986701 479986701 466826223 419486774 419486774 849426026 849426026 811952200 301992224 270073520 271000448 281652994 281652994 64227344 64227344 33819376 33819376 352565280 352565280 88686762 260503190 260503190 373992658 469970958 469970958 485041164 485041164 70386434 335683842 335683842 275867648 541411977 541411977 297735298 843285203 843285203 687876196 262848665 566804580 566804580 613991135 811227218 968264759 1022135216 1022135216 81054040 518402576 518402576 134220448 73009976 657733256 657733256 671088645 688535369 968531370 1044646435 1044646435 338004846 1008932907 1008932907 126894644 177785348 864736371 864736371 864736371 1062546022 1062546022 558443747 774129961 1002229623 1002229623 968148599 540774878 1000062117 1000062117 427984950 1058005259 1058005259 139137312 365719868 365719868 311158610 311158610 353523352 353523352 290117360 290117360 55465296 55465296 394713240 394713240 327469170 811148931 811148931 807332739 283314867 1027064805 1027064805 796795905 796795905 638717963 812651799 812651799 354159384 354159384 115816624 115816624 47080648 225878684 225878684 146627316 447670722 447670722 37655506 36051216 17828746 51250394 51250394 285870216 285870216 297323112 297323112 352144544 354233898 354233898 291677160 67132520 19363072 107517168 127470088 127470088 120060216 69712184 101439784 101439784 45678656 655434297 789528117 789528117 554542257 623404333 623404333 765160092 765160092 766870985 872649833 872649833 341448330 341448330 197211142 554800900 554800900 117998984 275154828 733222334 733222334 1049438815 1049438815 788249537 346795242 272145568 272145568 357434656 357434656 271058216 103193984 103193984 129578656 129578656 152711988 152711988 54094592 179110372 179110372 174097552 170183572 187434912 187434912 173279892 714697184 714697184 194889153 269693442 306381712 306381712 6340864 6340864 6291840 16842752 16850976 16850976 16842752 81318880 112329000 112329000 300198558 421914918 728340652 1057625151 1057625151 1044337321 541587881 403966470 403966470 403098000 79814856 670378108 902808024 902808024 686593690 301134480 996837366 996837366 530040115 788561516 788561516 580910673 444601074 444601074 156373668 363675912 363675912 295954722 295954722 193598580 188485428 464137940 464137940 931538075 931538075 875899171 107340637 234918560 297951261 416945248 416945248 125829120 125829240 558827160 655833657 655833657 975415826 975415826 974910519 632166474 632166474 489369880 489369880 562301190 973941006 973941006 18893863 16826400 67115628 160832100 236339208 236339208 197181748 144736500 440934884 440934884 413476598 522716478 522716478 432537784 332202798 257765052 505959216 505959216 302411992 230714976 54856168 356649345 356649345 346165578 884345345 884345345 967324931 967324931 995116754 995116754 446201891 722815121 839412768 839412768 603015608 603015608 176185648 144223312 118945024 240167824 240167824 164111232 164111232 143793344 140250756 141296896 148823748 148823748 234881048 234881048 155295914 50430058 144085606 144085606 370411634 416397934 416397934 373320658 385155656 385155656 282202818 268905152 16790400 24327072 24327072 41992273 536870913 536870913 833344995 833344995 674680614 536870913 679552070 831667782 831667782 672186885 566264548 273204736 274253442 274253442 425329794 425329794 277439268 277439268 183426516 183426516 158076324 158076324 732903857 732903857 176870484 835768817 835768817 946803761 957035559 957035559 486567046 972639591 972639591 564701650 723257350 723257350 97367056 113510064 113510064 89264808 101057168 148227822 148227822 68881044 526261878 526261878 512046704 492265606 431421711 983550367 983550367 810328085 324080775 324080775 139341024 1033658335 1045703263 1045703263 949361223 744431184 576335439 508055770 723658025 723658025 409142682 389185844 389185844 788670091 788670091 1022369990 1022369990 757671213 636603220 849457504 852574707 852574707 1002574576 1002574576 206838422 581206288 581206288 820023297 820023297 321411656 321411656 861093433 861093433 935216264 935216264 116661344 116661344 100687104 85599528 93017608 93017608 60128136 105627472 105627472 82887112 79970312 76841024 80675976 80675976 106363992 106363992 16900128 83978848 93661800 148510924 494405376 494405376 70026316 861815248 861815248 1062897840 1062897840 879590759 419563010 419563010 270012454 538445313 538445313 545923128 738217984 935469465 935469465 711176369 711176369 128448888 625013000 866160072 866160072 385797920 370723708 388785668 388785668 564782433 659379173 789977661 789977661 722232648 166546944 1032163586 1032163586 507540406 507540406 502436324 432017748 267524048 267524048 247599324 187697100 956089748 956485671 993579267 993579267 707396821 748904912 748904912 740344077 596882809 55235760 55235760 51439888 211226092 211226092 201625732 201625732 391684160 466200170 466200170 101802038 155923620 155923620 249653800 249653800 200592372 366342662 750817871 750817871 525677317 1059727001 1059727001 851453446 1054213082 1054213082 1070596568 1070596568 1045889668 1009779471 1009779471 993532017 951277319 839279174 744414861 898999574 948890947 948890947 654241759 920228828 1001528154 1001528154 740338212 63568408 152112744 152112744 260724616 260724616 824713504 824713504 1050889496 1050889496 889267501 872490342 1024271627 1024271627 697181793 697181793 664144229 731589696 731589696 940691602 940691602 632549757 185815681 921945006 921945006 947945582 1027653711 1027653711 652216376 759511364 759511364 193273924 193273924 142682228 142682228 294080883 325094627 325094627 342434259 637607961 769864187 1006706703 1006706703 390942418 983375124 983375124 608438409 624733250 1000073990 1000073990 50802080 437994114 437994114 6574208 6574208 809216 3917056 7444224 7444224 5977728 265839115 945825399 1001464695 1001464695 932824332 1007683492 1007683492 805307551 894416613 990974282 1055597584 1055597584 347177014 258355466 180433728 180433728 105191168 105191168 79065984 338220176 386556298 386556298 334485890 334485890 465915716 465915716 410515654 1063804392 1063804392 467705529 489574234 489574234 270798712 304639288 304639288 426428456 450215562 450215562 307497618 320920224 423287436 423287436 369500208 341370432 350079730 429863984 429863984 358396960 498974620 498974620 347664218 345776952 345776952 330116466 124702290 217907172 393926586 499729012 499729012 355517746 355517746 324477594 324477594 115497906 370282480 391910312 391910312 362053152 8861440 284140162 284140162 671671365 683110213 683110213 674760453 746874576 746874576 702592528 702592528 488547830 499386144 499386144 338248106 687120626 818153862 945930688 993560007 993560007 549979974 660112808 798606649 798606649 170401866 370673178 985154212 985154212 949239809 896692991 600955896 495452174 495452174 592445985 622136368 622136368 600115784 655172777 655172777 549103897 613920856 651968665 651968665 551037009 551037009 585715080 641548377 785174116 785174116 713042101 848662749 1025572501 1025572501 943410432 1000469879 1000469879 723883398 201510016 594593600 807539032 807539032 302170576 807421651 807421651 649270818 834741618 943050519 943050519 846790913 359098315 662577081 662577081 653797249 747635277 747635277 706343653 1040978512 1040978512 866412829 866412829 304678986 1016357383 1016357383 957301760 1034194246 1034194246 406049464 370168080 278212120 278212120 186661384 479658206 479658206 475140694 232186546 215668428 291457996 411941520 411941520 366482958 366482958 235964414 274253442 673202576 825755565 908067099 908067099 79301131 37566032 368185168 397748754 927336682 927336682 581217409 355488160 363531624 363531624 154761770 296506794 296506794 296328680 296328680 577782216 763367469 763367469 629543180 689051713 689051713 548541249 229170445 740559144 740559144 672171656 1050324490 1050324490 546566722 546566722 820596624 844154547 844154547 427388258 427388258 579738705 805700677 1067413297 1067413297 916486161 916486161 908189979 288384204 810283459 990943933 990943933 960852666 741743373 189472917 792680212 792680212 781373557 54088713 54088713 109101144 679477717 683761744 683761744 676349957 551862500 61114688 300756578 300756578 276686464 276686464 318787930 318787930 297486112 393741618 505021012 505021012 368625642 368625642 269518312 203834128 65835552 47958144 47958144 15136624 2461696 2619648 12537664 12537664 291090122 291090122 288594538 404929040 880483855 908856754 908856754 840172761 130161329 910202175 910202175 852787227 852787227 829033342 847833278 847833278 843918483 479998421 479998421 457650160 418058270 422446832 954647234 954647234 924112091 35836176 311592176 311592176 279179586 169085298 994855220 994855220 865207424 865207424 926772340 926772340 941949223 941949223 1058089422 1058089422 998842454 892999366 1048744484 1048744484 708219296 708219296 12718208 12718208 817066712 817066712 304733859 400387668 400387668 216030536 216030536 169869588 649649976 960516206 960516206 842142483 857141956 857141956 197470452 795933413 795933413 729466012 182575572 539022144 678609396 678609396 640325560 1063013657 1063013657 1057625151 907532036 846646025 553534912 566103154 574886996 574886996 494165990 1016388422 1016388422 1052153233 1052153233 637570761 614533472 614533472 869278793 869278793 518324741 456001524 884253840 945469358 945469358 843327012 843327012 909936747 909936747 1022665672 1022665672 1018719170 601712028 1056997650 1056997650 189375024 197558457 197558457 785950972 785950972 239160052 239160052 128992976 131089408 192959072 192959072 168332200 491270230 514917222 514917222 508334148 474868878 215136086 192962082 531017644 531017644 325843872 325843872 306447076 306447076 135007236 151468068 472491850 472491850 558152617 738394277 738394277 818225451 818225451 1033073066 1033073066 583025088 583025088 42453168 42453168 42281040 38323344 130600128 130600128 97144008 973612080 973612080 993164989 993164989 1064882265 1064882265 952637389 713741397 479081487 940137623 940137623 505698504 805546256 841406739 841406739 60161587 44879184 17748272 24813584 315681200 315681200 301992224 21957760 288628610 288628610 281652994 118232216 402400754 402400754 6678912 352565280 352565280 90744832 260503190 260503190 269161610 469970958 469970958 485041164 485041164 3146496 205562756 205562756 275867648 541411977 541411977 275110400 843285203 843285203 687876196 262848665 566804580 566804580 613991135 811227218 968264759 1022135216 1022135216 81054040 518402576 518402576 137547784 137547784 942370632 942370632 79541511 171966224 238529228 238529228 219217988 202824204 202824204 127217956 126894644 178594886 304876818 304876818 856770192 856770192 818799747 558443747 560151590 1002229623 1002229623 973415975 555822294 1000062117 1000062117 872668105 1058005259 1058005259 46586064 39032848 39713360 276917568 276917568 42726464 42726464 293601536 293601536 289671330 289671330 400709832 400709832 298244322 272245008 272245008 116369802 751505340 751505340 145493316 766838400 766838400 376648602 726927156 726927156 523778110 470296880 115816624 226847774 378116854 378116854 374540356 146627316 146627316 36211984 36211984 34477072 37099008 37099008 36045056 9371968 9371968 52676128 52676128 33663080 27518056 14844544 15734024 15734024 19363072 68297568 127470088 127470088 120060216 117553424 117553424 101439784 114607432 655434297 789528117 789528117 558423376 623404333 623404333 822319577 858709299 858709299 872649833 1026531694 1026531694 930818063 930818063 554800900 554800900 269489950 275154828 872099224 872099224 360314491 290683032 84935208 486015812 486015812 166725446 24375552 203630924 203630924 246842820 246842820 250039696 250039696 8404992 8389760 13108416 13108416 160744928 160744928 189383077 563438581 563438581 556657681 714697184 714697184 64958690 269693442 808248305 808248305 622979064 841074065 841074065 843883681 843883681 831554384 831554384 302571424 85760432 122932272 254635024 254635024 237712668 135414272 134402052 1085956 402655744 403966470 403966470 487083790 488710446 802111394 802111394 598634880 600698097 600698097 996837366 996837366 592753313 319402132 235590684 247362768 907655110 907655110 894877866 894877866 104440330 369173780 369173780 207298750 193094268 464137940 464137940 931538075 931538075 875899171 270862824 344041650 344041650 300001781 300001781 382532258 382532258 625383144 779406237 881641655 975415826 975415826 974910519 606346216 1041972795 1041972795 288831808 813954200 973941006 973941006 1007815689 1007815689 675705648 721555509 847874618 847874618 197181748 144736500 440934884 440934884 413476598 522716478 522716478 467808440 332202798 257765052 505959216 505959216 302411992 230714976 54856168 356649345 356649345 346165578 884345345 884345345 71229192 324059662 995116754 995116754 446201891 722815121 839412768 839412768 603015608 603015608 255395400 255395400 188761444 147207652 112423968 164111232 164111232 148254344 161709772 161709772 149674692 128746640 186674400 751942877 751942877 738886760 738886760 617468037 655798353 655798353 570574912 373320658 385155656 385155656 282202818 268905152 92451448 56859120 74586784 74586784 536870913 536870913 833344995 833344995 674680614 536870913 679552070 692617890 692617890 672186885 566264548 301500548 274253442 274253442 425329794 425329794 281959332 281959332 302303234 403425938 442120966 442120966 732903857 732903857 410481430 835768817 835768817 70317584 103494936 103494936 35373832 972639591 972639591 564701650 723257350 723257350 738601092 738601092 597201484 781923933 781923933 262093965 383466212 383466212 39003770 186058848 186058848 139596420 99681016 151521968 152383188 152383188 49349552 49349552 22590784 156395412 171975344 171975344 92979800 92979800 241010816 241010816 262747438 409142682 409142682 389185844 389185844 788670091 788670091 1022369990 1022369990 757671213 807403792 849457504 852574707 852574707 1002574576 1002574576 355517354 811223233 811223233 820023297 820023297 321411656 321411656 861093433 861093433 627537723 630182465 630182465 556832808 73614184 85599528 93017608 93017608 60128136 105627472 105627472 72453184 40708032 15921984 16566848 33947856 145647042 455196542 479322702 479322702 528795774 528795774 494405376 494405376 70026316 218909032 218909032 1081344 1065472 487269388 487269388 676438661 676438661 353982121 979043498 1057173567 1057173567 748820856 855783710 855783710 434119042 434119042 33621424 33621424 1021179587 1021179587 536673900 1024808709 1024808709 573312273 659379173 941951121 941951121 722232648 668061716 431637669 488821536 488821536 502436324 502436324 432017748 267524048 267524048 247599324 422175358 422175358 1070162636 1070162636 974357985 974357985 275439744 158049361 110313864 645262592 681096645 785676472 785676472 248325740 248325740 144458940 768116937 768116937 331894428 818189801 818189801 571349585 185022608 882311807 882311807 200592372 366342662 750817871 1023410304 1027604655 1027604655 652873071 846464259 1054213082 1054213082 1070596568 1070596568 995234487 1009779471 1009779471 913617314 913617314 744414861 917056260 917056260 948890947 948890947 525488044 525488044 1001528154 1001528154 386159237 638372293 638372293 186831156 741544710 909877375 909877375 824713504 440423868 889267501 889267501 872490342 1024271627 1024271627 597897585 569641953 599002993 731589696 731589696 940691602 940691602 632549757 614465865 921945006 921945006 567370240 567370240 652216376 652216376 759511364 759511364 870319091 967885671 1024201947 1024201947 853122216 853122216 325094627 342434259 637607961 769864187 1006706703 1006706703 1045008141 1045008141 983375124 642253977 642253977 1000073990 1000073990 50802080 335269810 335269810 274610248 357171256 376048672 376048672 276263554 283223426 283223426 273712348 242246656 252192700 879272174 879272174 285267911 208822446 756748360 894416613 894416613 551323574 551323574 347177014 258355466 220351756 220351756 130533880 130533880 503312544 665065243 665065243 459275958 871334725 871334725 465915716 465915716 313143716 197464714 552043331 552043331 564372020 564372020 553773600 402958740 140515504 310280736 310280736 307497618 307497618 302389266 302389266 38052018 341370432 341370432 350079730 350257338 358396960 358396960 133698312 133698312 121506768 345776952 345776952 330116466 124702290 356258080 393926586 499729012 499729012 355517746 355517746 324477594 324477594 116528360 370282480 391910312 391910312 92553376 8861440 160136456 203625317 671671365 774840340 774840340 751856473 751856473 746874576 702592528 702592528 156397589 134860545 134860545 21799989 441549640 441549640 944269296 944269296 863305904 863305904 660112808 1033111119 1033111119 604554249 537445385 537445377 471146528 487852590 487852590 341056174 105906840 105906840 592445985 637796512 637796512 637607961 655172777 655172777 577182136 613920856 618231377 618231377 570696272 545787848 545787848 646045913 734864576 734864576 713042101 848662749 1025572501 1025572501 943410432 1000469879 1000469879 723883398 252700114 594593600 807539032 807539032 578998656 807421651 807421651 649270818 834741618 844511184 846790913 846790913 42642969 662577081 907354194 949029517 949029517 741486613 706343653 923772536 1058177303 1058177303 866412829 742029576 1050719326 1050719326 978589281 1034194246 1034194246 1065435643 1065435643 278212120 443954612 443954612 751839828 991560430 991560430 312026706 200592372 397596662 411941520 411941520 1017184586 1017184586 455611750 455611750 519586140 519586140 235929888 234103308 234103308 71641224 826811145 826811145 927336682 927336682 490619258 501060076 501060076 475407099 869233888 869233888 910808840 910808840 616306284 577782216 577782216 136889604 194020384 194020384 158335300 218105876 218105876 740559144 740559144 677823380 677823380 676746629 543562113 187236852 820596624 844154547 844154547 427388258 427388258 579738705 805700677 1067413297 1067413297 916486161 916486161 908189979 336873252 810283459 990943933 990943933 960852666 230807540 590542572 787031517 787031517 714546684 796991613 796991613 773138973 773138973 679477717 601901924 601901924 551862500 61114688 300756578 300756578 276686464 276686464 318787930 318787930 297486112 393741618 393741618 367019434 368625642 368625642 269518312 118506928 33603600 9289792 29902400 31476544 31476544 29136896 20405024 12537664 31208384 31208384 30547520 73401088 222691872 696648204 696648204 974925012 974925012 960444271 910202175 774523088 829033342 829033342 637734235 843918483 843918483 479998421 479998421 326899192 418058270 422446832 954647234 954647234 924112091 853489347 843288994 327184624 279179586 169085298 994855220 994855220 843027295 843027295 926772340 926772340 941949223 941949223 698351973 998842454 998842454 892999366 892999366 572038080 708219296 708219296 62179968 106275426 817066712 817066712 304733859 400387668 458086207 795561875 795561875 137775663 649649976 960516206 960516206 842142483 857141956 857141956 219961056 242276092 242276092 157606604 182575572 539022144 678609396 678609396 184566081 731441995 731441995 907532036 907532036 846646025 606413402 606413402 873986571 873986571 527979510 1016388422 1016388422 784867161 784867161 637570761 614533472 614533472 869278793 946094087 946094087 720501015 884253840 922611675 922611675 843327012 843327012 909936747 909936747 1022665672 1022665672 1018719170 601712028 1056997650 1056997650 189375024 261244480 261244480 785950972 785950972 239160052 239160052 92554096 131089408 192959072 192959072 168332200 226627692 514917222 514917222 508334148 474868878 215136086 270809536 416116356 416116356 285747942 280467266 280906560 280906560 178784357 691760660 691760660 472491850 900066154 900066154 545333313 818225451 818225451 1033073066 1033073066 821691841 821691841 285913103 344977154 344977154 244960204 702382146 856550451 856550451 973612080 1057612987 1057612987 993164989 663900415 897296910 897296910 748057478 399907022 940137623 940137623 1040196013 1040196013 1042945311 1042945311 353358687 177138516 177138516 558439016 560944504 560944504 301274096 38649024 288628610 288628610 118232216 145434636 402400754 402400754 239462556 285840546 333485512 333485512 337905930 337905930 192285554 415962310 415962310 68969736 69403904 69403904 337848578 337848578 70522112 272891906 272891906 32256642 268511392 268511392 362624 122880 19070976 19070976 186457016 186457016 122916148 396970548 527771150 533848830 533848830 638886333 638886333 793129688 942370632 942370632 217085518 277979650 464657511 464657511 494696331 494696331 414899266 414899266 524676330 524676330 304876818 304876818 790219340 790219340 536939621 148709845 560151590 957614631 973415975 973415975 885168265 766663103 872668105 872668105 680429097 298260693 541815440 572907120 572907120 287984864 331615858 331615858 51153538 293601536 293601536 289671330 323824672 400709832 400709832 298244322 538896403 668773385 668773385 764486253 764486253 747771724 246094939 847977990 847977990 924131602 924131602 523778110 470296880 105720944 226847774 378116854 742147838 1056101343 1056101343 1016264258 275904210 269924480 34477072 37099008 37099008 36045056 11625216 11625216 52676128 52676128 33663080 27518056 14818528 15734024 15734024 121202720 121202720 100666880 100666880 69738104 117553424 117553424 69228968 114607432 114607432 54187824 52951344 558423376 558423376 608872864 822319577 858709299 858709299 389952538 1026531694 1026531694 930818063 930818063 538972478 453596464 453596464 304243552 872099224 872099224 504366630 685729478 685729478 486015812 486015812 366478606 288659948 496917513 656757737 778430877 778430877 646605196 250039696 237777220 237777220 53354128 144999428 160744928 160744928 189383077 563438581 563438581 556657681 172219088 172219088 160222308 59488276 808248305 808248305 622979064 841074065 841074065 843883681 843883681 831554384 831554384 302571424 85760432 122932272 476849962 506326302 695031053 695031053 459937206 808548625 808548625 440662294 308466066 487083790 488710446 802111394 802111394 1037948433 1037948433 874464370 514757722 1057673233 1057673233 319402132 235590684 247362768 907655110 907655110 894877866 894877866 79933664 369173780 369173780 207298750 193094268 186769716 178968576 113224952 113224952 83548104 270862824 344041650 344041650 279168384 279168384 923451968 932845179 932845179 779406237 881641655 881641655 697745505 697745505 636486633 1041972795 1041972795 1031015343 831104396 831104396 807947526 1007815689 1007815689 755188419 721555509 847874618 847874618 455732340 394312151 394312151 974576151 974576151 437670449 715566874 905312633 1023764450 1023764450 453124400 52498486 8388608 2648288 33142528 33142528 91809220 211123884 342677774 342677774 88344744 324059662 324059662 322068022 322068022 275286690 316239248 316239248 163382896 82864904 255395400 255395400 188761444 147207652 65924592 146691220 148254344 148254344 161709772 161709772 149674692 128746640 186674400 751942877 751942877 738886760 738886760 617468037 655798353 655798353 570574912 80181544 66456472 86772192 120925728 120925728 92451448 56859120 74586784 74586784 71303040 208896 680186944 690594816 690594816 402874661 420136066 420136066 425771430 425771430 415373508 436646150 436646150 174846610 469389056 469389056 305950400 305950400 302303234 403425938 442120966 442120966 454084130 454084130 410481430 390960262 118438968 325406402 325406402 103494936 123370000 336572378 336572378 462775282 462775282 235089948 738601092 738601092 663232876 781923933 781923933 1045116118 1045116118 491259054 481312470 820062487 820062487 495456532 495456532 353945722 495559724 495559724 193074368 189081780 184551472 107914296 107914296 150736836 150736836 143180740 148830972 148830972 194511988 194511988 320341554 337527982 337527982 605164648 605164648 939589706 939589706 919675975 919675975 807403792 237048845 631928081 738885988 738885988 355517354 811223233 811223233 274863305 480696654 480696654 402031284 387768154 383971041 627537723 630182465 630182465 556832808 61511360 11067456 11134272 11134272 15864768 15864768 13962752 13962752 22315808 25462880 25462880 33947856 145647042 455196542 479322702 479322702 528795774 528795774 227428226 421318182 421318182 375406872 700129318 700129318 237377820 487269388 487269388 676438661 676438661 520175675 979043498 1057173567 1057173567 748820856 855783710 855783710 434119042 434119042 884484216 962813008 1021179587 1021179587 536673900 1024808709 1024808709 573312273 573312273 941951121 941951121 668061716 668061716 431637669 488821536 488821536 507664576 507664576 146018144 296012481 296012481 251712580 422175358 899229291 1070162636 1070162636 974357985 974357985 707470080 158049361 110313864 645262592 681096645 785676472 785676472 248325740 248325740 184617529 768116937 768116937 804594297 818189801 818189801 730949776 743778957 882311807 882311807 863374277 863374277 410192721 1023410304 1027604655 1027604655 652873071 637933593 554899547 420099781 4329600 4325504 157686052 157686052 210011000 210011000 5243520 172017152 917056260 917056260 347079624 651319202 651319202 525488044 540800769 540800769 197351917 638372293 638372293 496494284 805371525 909877375 909877375 822991106 1060670535 1060670535 951387420 1030006828 1030006828 597897585 597897585 569641953 569641953 589243396 589243396 139096064 614465865 614465865 614465865 637669712 692694486 692694486 610337024 610537817 610537817 243665153 941916329 941916329 1025556783 1025556783 1024201947 853122216 853122216 109051992 217056148 217056148 549453888 549453888 781713497 1045008141 1045008141 951229466 642253977 642253977 472433344 472433344 430374668 335269810 335269810 345756986 357171256 376048672 376048672 276263554 337732938 337732938 273712348 1012119103 1012119103 676001541 327291040 61498007 1027154992 1027154992 941233963 380756826 664915243 664915243 789666970 789666970 638194713 220351756 597721554 858128512 858128512 665065243 665065243 532813512 871334725 871334725 178558360 313143716 313143716 371827120 552043331 552043331 564372020 564372020 553773600 402958740 88641704 88641704 38797824 38797824 289472672 289472672 268509186 120359074 54051120 54051120 69457200 69457200 118114576 118114576 35951672 4732928 18622800 44371488 52954416 71397680 285470376 356258080 356258080 337518090 282189034 86556928 86556928 84411432 65748240 116528360 116528360 58793480 604778450 604778450 557133762 82195810 549722114 630652969 821240803 821240803 849584563 849584563 628356009 609870601 608302208 134357504 134357504 134218240 25280832 1059188176 1071965464 1071965464 960078360 982524416 982524416 621070377 1033111119 1033111119 1067730701 1067730701 891554091 873445665 873445665 941963914 941963914 406982790 406982790 268503202 637796512 637796512 637607961 289472699 577182136 577182136 68231688 385941642 570696272 570696272 352321538 352321538 646045913 646045913 698689893 701255053 738584589 738584589 476141216 476141216 266551892 218682916 147578244 260461714 260461714 393240472 393240472 578998656 578998656 479727757 552532240 1060245246 1060245246 400350461 400350461 547839015 547839015 907354194 949029517 949029517 741486613 672380209 672380209 1058177303 1058177303 884602293 742029576 1050719326 1050719326 978589281 630614684 896539141 1065435643 1065435643 233846371 443954612 443954612 751839828 991560430 991560430 312026706 201926448 397596662 397596662 112218896 1017184586 1017184586 589431212 455611750 203424600 235929888 235929888 234103308 234103308 208734056 826811145 826811145 632891241 628949312 539756290 539756290 501060076 475407099 869233888 869233888 910808840 910808840 616306284 587981836 587981836 549724436 204968168 204968168 158335300 764675084 764675084 630982729 630982729 677823380 677823380 784672889 924135993 924135993 502845551 413630004 413630004 807000372 807000372 439128101 711754880 711754880 716752085 716752085 668260049 757078822 757078822 339763652 339763652 313886928 1029020727 1029020727 912127790 912127790 787031517 714546684 796991613 796991613 773138973 773138973 62131056 62131056 53740480 294501120 294501120 32106080 285297994 285297994 98350824 283259618 283259618 292524818 292524818 327062432 327062432 363400480 363400480 398504048 398504048 330581904 103557856 64070272 64070272 31476544 29136896 20405024 18727712 282201802 354619690 366133696 366133696 243193573 696648204 804533705 974925012 974925012 960444271 839912748 775821707 630918805 737555221 737555221 471143080 716127224 716127224 598434204 598434204 455082294 455082294 847298643 847298643 853489347 853489347 843288994 327184624 573593920 588565041 695011180 785715145 785715145 989804894 989804894 675217491 675217491 295961060 665134656 665134656 321987378 187967494 67108872 4563080 571450856 656104665 656104665 623569608 638816419 638816419 947466990 947466990 500377479 922668608 1016384595 1016384595 937634202 1067136286 1067136286 594653753 885174965 885174965 730618972 730618972 674660544 674660544 100330805 163816616 163816616 63963888 64645808 77598056 95733256 323719432 323719432 316375554 806684928 806684928 873986571 873986571 527979510 527979510 470295888 72426120 72426120 178759936 245885904 245885904 296188131 946094087 946094087 720501015 706648787 622364950 752577030 776156165 776156165 422576942 290591044 147985092 17707748 8151168 4768000 4768896 130597888 130597888 750442036 750442036 251733564 192464796 192464796 59247728 263877372 263877372 555010616 679296860 679296860 37487936 135274916 135274916 251227940 251227940 69740224 270809536 281227458 281227458 275715010 39763074 21013892 169179684 958743045 958743045 691760660 590001164 900066154 900066154 223272487 155574444 155574444 880132502 880132502 821691841 821691841 285913103 344977154 344977154 244960204 702382146 856550451 856550451 923581467 1057612987 1057612987 663900415 663900415 897296910 897296910 748057478 399907022 486547298 486547298 1040196013 1040196013 1042945311 1042945311 353584929 177138516 177138516 558439016 560944504 560944504 33185568 38649024 40385536 40385536 70322060 145434636 239611540 239611540 239462556 800832513 800832513 673843235 776737197 776737197 593894643 471132686 471132686 754499788 754499788 753927117 743585088 337848578 73478272 814682243 814682243 281091842 809642851 809642851 679846020 87099393 620718956 620718956 765267267 765267267 807454007 989332832 989332832 533848830 533848830 638886333 638886333 793129688 793129688 284365815 217085518 733063760 733063760 464657511 494696331 494696331 414899266 414899266 524676330 729862240 729862240 648229209 790219340 790219340 563618373 148709845 673810690 742883205 742883205 885168265 885168265 436707220 780528878 780528878 680429097 150195791 541815440 572907120 572907120 287984864 331615858 344838680 344838680 282642114 272655362 104923674 323824672 349900920 349900920 43517520 538896403 668773385 668773385 764486253 764486253 747771724 246094939 847977990 891429648 924131602 924131602 471079181 240521906 105720944 105720944 101206104 742147838 1056101343 1056101343 1016264258 405853056 303731136 2002944 44718864 44718864 10625792 11625216 11625216 10682880 16879232 22933152 22933152 7814016 107691424 107691424 121202720 121202720 100666880 100666880 67768184 98975936 98975936 54792576 54792576 38269681 549827553 550639489 550639489 590218824 639022393 656120945 664148601 951620181 951620181 864687123 282838498 364246219 1009807436 1009807436 453596464 775632678 942204229 942204229 364041066 504366630 806533638 806533638 404181507 366478606 366478606 619178976 619178976 656757737 778430877 778430877 735618025 735618025 237777220 237777220 113967848 144999428 144999428 156249408 156249408 456971557 456971557 380610446 380610446 582888913 785807535 792471459 946144403 946144403 866267728 866267728 587970699 627369257 898977680 898977680 49934976 119808208 119808208 103436962 476849962 506326302 695031053 695031053 459937206 808548625 894832808 894832808 308466066 439252768 439252768 422114910 361329731 1037948433 1037948433 874464370 514757722 1057673233 1057673233 412804324 412804324 30978276 277929474 277929474 223974112 349634028 349634028 479351402 479351402 108036184 41112592 114291544 114291544 113224952 113224952 108792296 169633356 169633356 92899088 226672188 226672188 923451968 932845179 932845179 422744227 385618394 554096705 697745505 702546018 1007232015 1007232015 1031015343 1031015343 831104396 831104396 281749134 407132291 755188419 755188419 666580049 84798088 778223696 778223696 394312151 394312151 974576151 974576151 437670449 715566874 905312633 1023764450 1023764450 454640254 454640254 303040272 208145960 100927648 74634120 74634120 137690412 161080580 161080580 164576484 164576484 164484096 176948500 176948500 22590756 19024000 164442584 164442584 114775748 173023744 173023744 1225364 34916880 34916880 655769405 655769405 209221160 405554127 753997156 753997156 495842382 571144872 571144872 687360448 687360448 720230277 720230277 713815125 164202496 164202496 46406272 88867520 88867520 86772192 32530176 43465840 61198752 61198752 36037648 36037648 572534546 825270531 825270531 690602337 402874661 402788358 735776213 735776213 455549459 806861444 852712002 975513879 975513879 539151874 469389056 305950400 449918212 449918212 169810868 169810868 19078436 185371680 185371680 390960262 390960262 280680258 325406402 325406402 88782056 123370000 336572378 336572378 462775282 462775282 115992024 993625038 993625038 958831730 958831730 588190818 1045116118 1045116118 491259054 481312470 820062487 820062487 495456532 495456532 353945722 495559724 495559724 367002766 320265234 320265234 400573688 400573688 150736836 150736836 143180740 148830972 148830972 194511988 194511988 184057472 337527982 337527982 353998406 353998406 1026159371 1026159371 919675975 919675975 830547410 830547410 631928081 753012844 753012844 319033824 822478955 822478955 696523126 917904239 917904239 1060733622 1060733622 381603386 394139104 394139104 507874580 507874580 243328192 252256684 252257340 252257340 16915484 116946504 155971400 254740684 254740684 138674208 82621152 19432064 8388672 15611560 67722184 71679200 93288520 162256324 227428226 421318182 746529420 746529420 700129318 773692818 976673559 976673559 721588321 721588321 429544451 520175675 935403764 935403764 228215487 172700820 172700820 329064835 397618881 397618881 884484216 962813008 962813008 218270214 156502692 18874368 271399186 271399186 450152874 604015443 604015443 279766865 271156930 384889328 384889328 199902634 770940774 770940774 146018144 296012481 837190976 837190976 814488273 899229291 899229291 856741683 856741683 707470080 707470080 114098392 78815376 117366744 117366744 104792896 104792896 220485476 220485476 184617529 538536701 571843737 804594297 804594297 314700387 730949776 743778957 743778957 711990225 863374277 863374277 901849323 1019421387 1037251311 1037251311 859861805 600195602 600195602 234493932 648058756 648058756 704837675 1009117455 1009117455 210011000 5243520 172017152 374422164 374422164 868098600 868098600 651319202 977213918 996097719 996097719 705037616 705037616 496494284 496494284 805371525 805371525 281679042 822991106 1060670535 1060670535 951387420 1030006828 1030006828 221409022 573374656 757539869 757539869 167636964 540986144 139096064 139096064 139060356 103359768 516810033 692694486 692694486 610337024 610537817 610537817 536875100 941916329 941916329 1025556783 1025556783 885277847 817774251 678586690 399918249 356882522 612569009 612569009 351601346 537080930 537080930 951229466 951229466 656332083 1055015668 1055015668 785055010 430374668 746879237 746879237 690405592 690405592 658695229 641978537 544324229 408488323 347942730 1061176762 1061176762 1012119103 822641752 822641752 61498007 1027154992 1027154992 941233963 380756826 664915243 664915243 789666970 789666970 638194713 36100368 597721554 858128512 858128512 302665982 532813512 532813512 491143570 83662556 396361782 396361782 236656900 371827120 371827120 398332752 472813530 472813530 205346472 259684024 259684024 89693992 23858728 271374210 289472672 289472672 268509186 303515129 429341286 429341286 905631723 905631723 585892947 691734757 840577573 897598859 897598859 604250155 604250155 722468868 722468868 285470376 76218704 39446416 69345536 69345536 356328336 356328336 6431552 30020560 50017376 324191548 604778450 604778450 557133762 268547420 549722114 630652969 821240803 821240803 849584563 849584563 628356009 609870601 608302208 305981280 305981280 60762112 76546632 1059188176 1071965464 1071965464 960078360 982524416 982524416 68946716 213680713 638371397 1067730701 1067730701 891554091 873445665 873445665 941963914 941963914 406982790 474356394 705964583 705964583 503777834 336992778 579801449 579801449 548476176 612442185 612442185 609448001 542237313 538274368 583370816 583370816 42207440 41018256 41018256 22077744 269742080 476141216 476141216 266551892 320996432 320996432 295720034 373964786 393240472 393240472 578863120 578863120 479727757 552532240 1060245246 1060245246 400350461 400350461 547839015 1038633924 1038633924 862913810 671502464 554437665 554437665 746586189 746586189 884602293 884602293 137600092 507809840 507809840 244453980 443609096 443609096 389805882 389805882 40527210 181273476 860231728 860231728 387000352 404229140 404229140 201926448 305145354 446359000 446359000 378682590 589431212 589431212 770184377 770184377 1028129798 1028129798 914907289 914907289 224518572 622331300 632891241 632891241 889456683 889456683 539756290 335931402 336620032 336620032 68606472 69574720 69574720 22080480 587981836 587981836 549724436 262326220 262326220 122302828 764675084 764675084 630982729 775166732 775166732 685842885 784672889 924135993 924135993 502845551 758288511 876874507 876874507 807000372 439128101 711754880 711754880 716752085 716752085 668260049 945430886 945430886 688877867 1008939279 1008939279 1029020727 1029020727 912127790 912127790 744838030 957172225 957172225 1029918331 1053633759 1053633759 490842188 746711208 1050755510 1050755510 294501120 98271560 285297994 285297994 98350824 283259618 283259618 292524818 292524818 327062432 327062432 363400480 363400480 398504048 398504048 330581904 103557856 64070272 64070272 18934032 18697760 25827648 25827648 282201802 354619690 412225024 412225024 243193573 600340000 870050722 870050722 397365088 1057328180 1057328180 953543193 829513673 737555221 737555221 471143080 716127224 716127224 598434204 598434204 455082294 711068192 830637104 830637104 168296572 746722860 746722860 712143033 712143033 588565041 1024885225 1024885225 591623502 989804894 989804894 675217491 675217491 444670544 541657349 541657349 326437467 635511273 880173361 920029133 920029133 773460056 656104665 623569608 661795489 875758416 947466990 947466990 796257213 922668608 1016384595 1016384595 937634202 1067136286 1067136286 594653753 885174965 885174965 730618972 730618972 678778572 678778572 156121824 138512632 155275796 674628305 674628305 868405491 868405491 837913955 122188684 549658128 806684928 806684928 576720774 570689553 323858539 886075331 886075331 682149189 682149189 778829840 778829840 172020036 180404436 224706608 224706608 170918016 170918016 622364950 622364950 489686371 477106498 422576942 705956373 721422885 721422885 680002213 680002213 101502077 130597888 657556508 750442036 750442036 179464153 192464796 192464796 59247728 263877372 263877372 555010616 679296860 679296860 24453624 290505746 290505746 196381324 221179712 221179712 410154052 410154052 466494022 466494022 271068306 271068306 839235619 958743045 958743045 590578993 590001164 890706987 890706987 873580586 918872251 918872251 880132502 880132502 419895038 235016220 633999907 1042318007 1042318007 942703222 324016272 324016272 268442372 268442372 299108966 793253404 793253404 962156886 962156886 405326464 405326464 283300487 291323914 291323914 855731867 855731867 627974162 627974162 353584929 20266368 21054176 21958144 21958144 16816128 25202752 32959104 32959104 93009960 93009960 82732840 98965992 223700624 223700624 800832513 800832513 673843235 776737197 776737197 593894643 471132686 471132686 754499788 754499788 753927117 743585088 202978820 73478272 814682243 814682243 281091842 809642851 809642851 679846020 87099393 620718956 620718956 765267267 765267267 807454007 989332832 989332832 461390726 155638166 447007062 447007062 853559360 853559360 895715102 895715102 733063760 733063760 139022665 147781192 147781192 212174936 212174936 42094848 729862240 729862240 648229209 749930017 749930017 563618373 575804049 710017028 710017028 272759820 276424578 892349590 892349590 930735803 930735803 794635965 540354520 540354520 333458197 286007324 100729872 40770960 344838680 344838680 299219042 327738066 327738066 293736546 293736546 270803522 59647760 59647760 63191312 63191312 231611628 266151952 266151952 26359808 310512672 891429648 891429648 541133207 471079181 240521906 327494344 327494344 275850114 481558578 481558578 322961586 405853056 405853056 303731136 7387968 62097313 583391889 584407377 584407377 539757825 539757825 588000424 588000424 551340585 617949897 617949897 552188400 93730928 93730928 87636992 69559624 54145336 86171424 86171424 30414880 39726560 39726560 549827553 550639489 550639489 590218824 639022393 656120945 664148601 951620181 951620181 864687123 282838498 364246219 1009807436 1009807436 304892678 820770296 992933331 992933331 355087207 159762790 806533638 806533638 619860008 84054985 2146560 619178976 619178976 220629280 594832436 636569333 735618025 735618025 556855809 711008661 711008661 689963301 689963301 618456680 156249408 456971557 456971557 380610446 380610446 582888913 785807535 792471459 946144403 946144403 866267728 866267728 587970699 627369257 898977680 898977680 63888624 119808208 119808208 80612976 431396622 492051586 492051586 403713196 153420032 488302338 894832808 894832808 241278771 439252768 439252768 422114910 279569730 352890370 387632064 387632064 400864252 400864252 140389548 412804324 412804324 30978276 277929474 277929474 216784900 349634028 412768332 479351402 479351402 185806026 41112592 87167176 87167176 110549368 110549368 108792296 39437616 51128240 51153968 170971652 170971652 436077824 436077824 417859014 151575076 162170148 162170148 138411392 702546018 1007232015 1007232015 515131428 515131428 449849970 422871380 314436256 272654216 272654216 125602786 779392016 779392016 778223696 778223696 1047503954 1047503954 220302699 1436160 4039232 153675844 153675844 290792734 410378576 587793431 772277273 788530729 788530729 688914981 750649396 750649396 677426524 679847624 765932180 765932180 164576484 164484096 173744304 190087168 190087168 194410112 194410112 204791380 204791380 173023744 253939820 253939820 193793276 193793276 655769405 655769405 342255662 539431908 753997156 753997156 495842382 571144872 616749192 687360448 687360448 1041429531 1041429531 713815125 458389001 458389001 758169877 758169877 593398024 593398024 561564212 693801352 790283940 790283940 185244344 675283077 675283077 825270531 959059015 959059015 170468628 311103814 735776213 735776213 455549459 806861444 852712002 975513879 975513879 539151874 173241232 160812772 449918212 449918212 275935394 308534180 410220560 410220560 157371680 339851208 339851208 280680258 105976984 278904938 284011546 312816458 341256656 341256656 238608158 520880846 534125310 993625038 993625038 958831730 958831730 977633336 977633336 348397770 348195018 348195018 136388868 92873832 172297762 172297762 138495110 182823138 367002766 367002766 320265234 320265234 400573688 400573688 36227984 44885640 76360776 80546032 92822336 92822336 47254216 184057472 184057472 99317492 128648848 219771470 1026159371 1026159371 654326027 578838640 830547410 830547410 218710077 753012844 753012844 557979698 822478955 843452481 843452481 917904239 917904239 1060733622 1060733622 463432408 394139104 394139104 507874580 507874580 243328192 252256684 252257340 252257340 18399520 116946504 155971400 254740684 254740684 138674208 82621152 15403776 5396000 15611560 67722184 67901608 73698728 158027916 202062464 911611697 911611697 842535432 842535432 773692818 976673559 976673559 721588321 831038464 831038464 830595171 470099982 1049553031 1049553031 313136466 313136466 973808897 973808897 302335162 502685432 502685432 643309639 643309639 418923052 610279565 996476078 996476078 923066199 604015443 604015443 279766865 271156930 384889328 384889328 199902634 770940774 948965574 948965574 324171574 837190976 837190976 814488273 523347714 589622106 953844567 953844567 200810375 155665168 114098392 78815376 117366744 206770700 206770700 68952288 227679236 227679236 216531828 92800104 209718340 209718340 96477360 556085944 556085944 735374308 735374308 588394552 324348594 1006665931 1006665931 1019421387 1037251311 1037251311 859861805 830944624 1023463592 1023463592 995805099 995805099 985805112 1009117455 1009117455 767786576 767786576 1057455786 1057455786 642682112 868098600 868098600 589484357 977213918 996097719 996097719 705037616 705037616 318475728 318475728 411712208 411712208 281679042 35202576 294915888 294915888 593589650 699771696 699771696 221409022 573374656 757539869 757539869 167636964 540986144 44175385 635839818 887037922 888020427 888020427 372902873 344981760 745277084 745277084 748028821 748028821 536875100 504552106 334926380 483760718 483760718 426254835 493908616 493908616 356882522 612569009 612569009 351601346 537080930 537080930 244553825 656332083 656332083 1055015668 1055015668 785055010 396746456 746879237 746879237 690405592 690405592 658695229 641978537 544324229 408488323 347942730 1061176762 1061176762 872972475 822641752 822641752 644367125 644367125 878965193 878965193 513541002 917822118 917822118 665771385 56309424 209981194 467874294 467874294 466622354 280497190 517808462 517808462 491143570 491143570 354746550 481681656 481681656 85216846 269518570 366513896 366513896 361251424 97846336 280801376 288561544 288561544 89693992 71042056 271374210 271374210 125031168 276872784 303515129 429341286 429341286 905631723 905631723 585892947 691734757 840577573 897598859 897598859 604250155 604250155 722468868 722468868 302638098 363940912 363940912 303016706 136376950 356328336 376705288 376705288 120074282 74714960 324191548 1042086474 1042086474 195470395 531319946 531319946 244053084 244053084 279520578 279520578 292165026 292165026 224969004 279467778 305981280 305981280 97226272 76607104 411577984 471344678 471344678 421068840 421068840 421003264 68946716 85984272 360711720 360711720 159383596 109712464 240124000 265290492 265290492 466813644 466813644 474356394 705964583 705964583 503777834 336992778 579801449 579801449 68879632 612442185 612442185 609448001 639969761 837036443 837036443 583370816 579661625 579661625 58461232 102893336 102893336 87085576 84984360 415100742 415100742 320996432 479611048 479611048 373964786 387405920 783212318 790925293 790925293 848937602 848937602 318318546 1057187330 1057187330 1038348783 1038633924 1038633924 671502464 671502464 554437665 554437665 746586189 746586189 338713036 390358866 390358866 378044016 814589975 814589975 777468504 777468504 637024193 871378913 871378913 555027790 860231728 860231728 957755008 957755008 404229140 280100632 280100632 446359000 747776077 747776077 689111101 763365481 770184377 770184377 1028129798 1028129798 956639439 956639439 938069633 938069633 319922355 925641729 925641729 889456683 824625035 846812171 926524682 926524682 801334113 928624096 928624096 627599392 348948296 132653168 132653168 262326220 262326220 90181864 78854544 78854544 196483664 775166732 775166732 685842885 685842885 344244802 604383832 604383832 758288511 876874507 876874507 945296836 1025823177 1025823177 934348975 998892567 998892567 630677977 945430886 945430886 688877867 1008939279 1008939279 626290820 359101064 854966439 854966439 744838030 957172225 957172225 1029918331 1053633759 1053633759 490842188 746711208 1050755510 1050755510 87730656 202428292 202428292 191003492 122945832 253379204 306355840 306355840 447486128 467142390 467142390 217390800 357459456 357459456 58770464 58770464 63465712 63465712 46968992 1326656 9122880 25827648 25827648 4071520 16845056 412225024 412225024 203948164 600340000 870050722 870050722 402842520 1057328180 1057328180 953543193 829513673 589048503 589048503 516571976 516571976 238560046 466617078 466617078 245631772 711068192 711068192 910197860 1070122239 1070122239 746722860 712143033 712143033 621279273 1024885225 1024885225 591623502 591623502 564998216 410985476 444670544 444670544 169357138 394076412 394076412 635511273 880173361 920029133 920029133 773460056 335475034 583124728 933473329 933473329 875758416 830615371 796257213 796257213 976538391 976538391 686679397 686679397 605176261 605176261 623436132 623436132 204640672 223396524 678778572 678778572 547035260 196294505 155275796 674628305 674628305 868405491 868405491 837913955 122188684 549658128 549658128 576720774 576720774 570689553 430315952 886075331 886075331 682149189 682149189 778829840 778829840 434688168 180404436 224706608 224706608 77908296 172531536 326647684 363670890 363670890 368389098 368389098 705956373 721422885 721422885 680002213 680002213 101502077 84426816 657556508 657556508 93446248 93446248 8597568 8597568 37038864 42854832 662482848 662482848 164578872 164578872 86192424 290505746 290505746 196381324 263005828 263005828 410154052 410154052 466494022 466494022 271068306 271068306 839235619 839235619 140284182 438044694 438044694 268500992 873580586 873580586 918872251 918872251 546308673 419895038 419895038 139598175 633999907 1042318007 1042318007 942703222 591397041 361760908 361760908 640549760 643702425 793253404 793253404 962156886 962156886 1045628066 1045628066 536879171 571475968 571738641 855731867 855731867 856272426 856272426 17611425 332688032 332688032 324063826 324063826 51664482 294358560 294358560 293619712 93009960 629924681 629924681 623482665 684100769 684100769 208200068 750935924 750935924 743855529 255987900 255987900 176920268 243490868 813752960 813752960 473957391 202375202 22152320 7745664 7745664 10760192 11542528 11542528 9511232 9511232 28270144 28270144 25863008 53340496 482667704 482667704 453517350 448813424 698499561 698499561 977490159 977490159 920986372 920986372 895715102 895715102 713050216 713050216 801221356 801221356 674825996 850158974 850158974 517002198 617765380 617765380 580394057 880938535 880938535 764592745 764592745 710017028 710017028 914336828 946865031 946865031 912097691 930735803 930735803 794635965 639534624 639534624 573121809 537069768 100729872 35858240 35858240 285588672 299219042 327738066 327738066 295833954 295833954 270803522 59647760 391213434 391213434 365143578 496050798 496050798 479207456 26359808 310512672 345375427 345375427 368912908 368912908 285286434 327494344 327494344 294988386 578560230 708837525 895756604 895756604 19988960 33599632 167564065 188990064 587202513 587202513 584407377 572010064 539830849 732699776 732699776 551340585 617949897 730497164 730497164 690082792 632230952 76933704 118671424 118671424 97961992 97961992 130342096 130342096 39726560 6129488 4194432 30793824 604655096 639309545 639309545 1054970071 1054970071 636012452 636012452 274865050 505022770 964433432 964433432 194775777 820770296 992933331 992933331 657113189 657113189 407305972 716217089 716217089 220733468 706932804 706932804 220629280 244564416 594832436 594832436 299927260 794140800 794140800 711008661 711008661 834789603 834789603 618456680 32621060 290550305 472135684 472135684 797947496 797947496 51609803 734112752 955359891 955359891 297871594 297871594 92586000 47499984 335299360 335299360 63888624 110795904 110795904 104648472 431396622 492051586 492051586 941745443 941745443 825905825 755957908 755957908 511938322 511938322 152566308 860715701 860715701 943920129 943920129 894518414 894518414 744457355 939533041 969409767 969409767 315233490 315233490 323348658 409508020 409508020 412768332 412768332 355127486 244542564 63252464 81996864 450506761 981866583 1047401299 1047401299 891040211 891040211 335256265 96101616 82523592 895368555 895368555 68818440 889770531 889770531 152068224 214794820 214794820 567086596 567086596 669067584 669067584 54870496 314436256 314436256 302516840 744984169 744984169 779392016 779392016 746512269 602964755 1047503954 1047503954 956613930 692705480 692705480 671154312 671154312 28126560 647528718 792216403 792216403 788530729 788530729 1049170448 1049170448 750649396 677426524 679847624 765932180 765932180 427761562 408192480 188803072 190087168 190087168 194410112 194410112 204791380 204791380 128045296 253939820 253939820 193793276 193793276 97914312 754999680 762097069 762097069 539431908 834193251 834193251 694715575 616749192 616749192 542298916 1041429531 1041429531 1010617995 458389001 458389001 758169877 758169877 593398024 593398024 561564212 693801352 790283940 790283940 185244344 675283077 675283077 671347329 959059015 959059015 570425361 570425361 559326514 559326514 829495444 829495444 716282688 716282688 282589767 173241232 173241232 179442516 179442516 275935394 275935394 308534180 410220560 590063409 590063409 135350632 546454879 871743730 1054480095 1054480095 807293449 983115782 983115782 927328470 866312476 902826150 902826150 534125310 777394590 777394590 237452061 977633336 977633336 679588073 427023060 427023060 651661137 651661137 533774376 533774376 181004184 255411932 255411932 44093456 44093456 37933200 38558720 38558720 6940032 69855232 103934248 103934248 92805688 61318744 46737104 68233568 68233568 53551920 128648848 536895521 536895521 279514144 578838640 578838640 570442864 570442864 696653925 947912741 947912741 557979698 558108755 843452481 843452481 476262842 476262842 339808256 463432408 463432408 70604848 70604848 86284296 153258784 153258784 152093220 67801612 18399520 18399520 18925088 154830016 154830016 30369892 24076768 24076768 15403776 9218016 9218016 7962400 1709568 528896 60886120 610741552 911611697 911611697 1019738734 1019738734 773161392 976004375 976004375 454227233 831038464 831038464 830595171 470099982 1049553031 1049553031 313136466 313136466 973808897 973808897 302335162 502685432 502685432 643309639 643309639 418923052 699350373 996476078 996476078 923066199 753019283 552648997 143032976 677589188 677589188 336528853 15453278 374489298 948965574 948965574 945300952 682636752 682636752 1001339489 1001339489 850056531 953844567 953844567 435449344 435449344 240316060 182095064 76695816 206770700 206770700 82185032 227679236 227679236 234949177 689252901 790310941 790310941 671951877 795198593 795198593 255023885 588394552 588394552 672475653 1006665931 1006665931 1002493063 1002493063 650857501 830944624 830944624 1023463592 1023463592 995805099 995805099 985805112 985805112 193011828 1000050488 1000050488 1057455786 1057455786 642682112 762212578 762212578 796015034 796015034 557280356 1026723628 1026723628 708583300 708583300 470406148 470406148 537396225 975876871 975876871 571597329 294915888 1061241954 1061241954 966801256 358220386 281154448 216274972 216274972 156543844 185672372 947066670 947066670 887037922 888020427 888020427 372902873 591462400 745277084 745277084 748028821 748028821 504552106 873894323 873894323 483760718 898638484 898638484 782609298 493908616 248008740 185300544 121644108 60083776 60083776 43781712 121066384 121066384 79245560 94783832 111618232 111618232 989498526 989498526 205195405 944058422 944058422 159334308 159334308 152910496 20775936 340788298 408049280 1012060866 1012060866 882377427 550147548 644367125 644367125 878965193 878965193 513541002 917822118 917822118 665771385 774526841 774526841 467874294 701580388 739113372 739113372 517808462 517808462 93389824 346292834 354746550 481681656 481681656 8462400 270117124 366513896 366513896 361251424 97846336 280801376 288561544 288561544 71042056 71042056 57676114 57676114 16551186 346606346 346606346 311112786 311112786 79444762 33805824 33805824 22573232 272976034 307100800 307100800 318911488 318911488 269526544 302638098 302638098 363940912 363940912 303016706 400255378 400255378 376705288 458393852 531972662 531972662 510268204 1042086474 1042086474 647973621 531319946 888093848 888093848 598891501 472450508 472450508 422228260 861550378 861550378 806454938 71253768 97226272 97226272 76607104 8717888 471344678 471344678 421068840 421068840 421003264 28052824 289145314 397674928 397674928 268960770 268960770 268960770 268959744 265290492 466813644 466813644 381758118 50733194 4466816 4532352 19931648 78321280 79304520 274206376 327425376 353973826 407842348 639969761 837036443 837036443 576727457 579661625 579661625 356264548 368199146 531629182 981128221 981128221 749608269 749608269 579780892 479611048 479611048 388761106 439217430 783212318 858005039 858005039 848937602 995961526 995961526 1057187330 1057187330 1038348783 1025112813 609428434 609428434 283965903 276197914 162505074 245110926 318194848 643950894 774316453 774316453 378044016 814589975 974395918 974395918 777468504 637024193 871378913 871378913 744437815 744437815 688399392 957755008 957755008 189746888 396852600 396852600 386324538 747776077 747776077 689111101 763365481 763365481 554444092 392963424 438304788 956639439 956639439 938069633 938069633 319922355 925641729 925641729 574667536 824625035 846812171 1019149718 1019149718 801334113 928624096 928624096 627599392 608757257 366341859 588044034 588044034 542248626 114496416 128000376 128000376 130023672 593927016 593927016 570679968 577952033 577952033 624083370 676573221 879210666 879210666 810887427 945296836 1025823177 1025823177 934348975 998892567 998892567 570499089 261629209 214976082 270754150 406892846 492931500 492931500 268407688 266215164 266215164 233074662 132197814 65660400 288949664 288949664 297577536 297577536 324536008 341536826 361938784 361938784 202428292 436977718 480301851 906895985 906895985 634891329 475027969 654748032 660861369 660861369 773459419 773459419 875540632 875540632 286770880 90003648 63465712 46968992 22397072 17566752 18728736 18728736 294987010 295698786 295698786 488892982 505804482 505804482 234619148 402842520 402842520 275229504 275229504 210026842 237542960 985682563 985682563 516571976 815663395 815663395 410596418 471993096 471993096 570458169 570458169 910197860 1070122239 1070122239 220365432 615583852 621191168 621279273 621279273 42075200 269106192 269106192 410985476 410985476 369693324 340993124 563685716 563685716 394076412 574753445 574753445 102518956 632305504 632305504 604713993 583124728 933473329 933473329 830615371 830615371 378768006 385391046 976538391 976538391 686679397 686679397 605176261 605176261 527351898 527351898 1067189886 1067189886 1054394279 1054394279 648017440 647378856 647378856 107193712 75097803 937551239 986212151 986212151 15928711 46847184 409158992 409158992 642776340 642776340 430315952 325658034 638739152 641728665 919820494 919820494 611190729 434688168 203724048 331531444 474270858 474270858 426399012 892774983 892774983 548496276 660812217 1023686930 1023686930 173152960 173152960 177859428 177859428 158436240 798935152 798935152 707276504 686867428 686867428 108217149 18885108 143518788 231109480 762547928 762547928 657482220 657482220 86192424 86192424 735763440 735763440 631847217 631847217 620760385 620760385 620374664 177542716 142607400 228589940 228589940 170856276 140284182 438044694 438044694 573198869 771840266 771840266 549675604 549675604 542249601 312783858 324397746 324397746 66238786 13243584 829555666 829555666 841037986 841037986 361760908 640549760 643702425 643702425 301601730 651658536 917044723 1045628066 1045628066 536879171 571475968 571738641 571738641 375052849 856272426 856272426 17611425 604253251 604253251 437583920 324063826 773375517 789433933 789433933 546200673 546200673 629924681 629924681 623482665 684100769 684100769 208200068 750935924 750935924 743855529 651090789 651090789 481035945 470556482 813752960 1036043374 1036043374 738738274 23803296 27235520 27235520 10760192 21189440 21189440 29886432 29886432 28911456 28270144 25811264 53340496 482667704 482667704 453517350 403178502 698499561 698499561 977490159 977490159 920986372 920986372 303479455 1031481066 1031481066 771751965 801221356 801221356 772801053 850158974 850158974 517002198 617765380 617765380 713625348 880938535 880938535 764592745 764592745 587674140 587674140 914336828 946865031 946865031 912097691 671872166 131911416 131911416 639534624 639534624 573121809 537069768 50208720 50208720 337372296 337372296 274219522 352457928 352457928 295833954 351594152 351594152 30739648 391213434 391213434 365143578 496050798 496050798 479207456 210160716 295767084 867898588 867898588 522587070 527702334 527702334 310381074 517737852 517737852 578560230 708837525 895756604 895756604 13970832 33599632 167564065 188990064 587202513 587202513 575005888 572010064 539830849 732699776 732699776 703295564 703295564 730497164 730497164 690082792 632230952 16826400 118671424 118671424 97961992 97961992 130342096 130342096 103050772 138202884 174116500 174116500 604655096 639309545 639309545 1054970071 1054970071 411042525 194019844 274865050 505022770 948453386 948453386 848172372 950323527 950323527 955702215 955702215 861186993 952580295 952580295 716217089 678609797 706932804 706932804 539136560 244564416 244564416 104980632 639672705 794140800 794140800 679477317 679477317 834789603 834789603 403845314 685363846 685363846 472135684 472135684 797947496 831628014 831628014 759219151 955359891 955359891 318804574 318804574 425137300 592395928 1016295501 1016295501 868565997 830246561 214441931 244505174 768742907 768742907 427583609 941745443 941745443 825905825 211022412 504213000 511938322 511938322 346249346 860715701 860715701 943920129 943920129 894518414 894518414 744457355 939533041 969409767 969409767 562139862 839796658 855975987 1015102570 1015102570 436805270 341344910 328994418 328994418 63252464 81996864 450506761 981866583 1047401299 1047401299 891040211 891040211 335256265 96101616 82523592 895368555 895368555 68818440 889770531 889770531 152068224 214794820 626311846 626311846 567086596 696799142 696799142 233834053 158752932 302516840 302516840 959364524 959364524 841250878 942411015 942411015 1066666594 1066666594 956613930 956613930 692705480 692705480 671154312 671154312 313265490 647528718 792216403 792216403 789061245 789061245 1049170448 1049170448 338191222 882883374 882883374 417966923 478811214 478811214 408192480 188803072 76178560 185090304 185090304 181613748 131871112 131871112 128045296 128045296 74703752 59770136 73666752 568748773 766609697 766609697 762097069 292876232 834193251 834193251 694715575 584895449 196481473 542298916 819616622 1010617995 1010617995 437965588 437965588 134877188 71569048 554861752 554861752 51140281 0 0 13770816 19924992 20187936 562568480 563221089 563221089 546248821 570425361 570425361 559326514 988805988 988805988 829495444 868795635 868795635 970903488 970903488 274608662 179442516 179442516 171844644 171844644 137024772 166350512 590063409 590063409 40596160 546454879 871743730 1054480095 1054480095 807293449 983115782 983115782 927328470 866312476 902826150 902826150 482422872 777394590 777394590 881084480 881084480 679588073 679588073 1034281067 1034281067 651661137 651661137 533774376 533774376 181004184 255411932 431523626 431523626 295486402 311723906 400412472 400412472 47184848 113630536 113630536 118759488 118759488 61318744 46737104 68233568 122291504 122291504 125509032 536895521 536895521 279514144 554452323 554452323 570442864 570442864 696653925 947912741 947912741 365179008 583469162 583469162 583272657 4196433 474228740 474228740 314777672 130193780 324085704 402579450 456899364 456899364 153258784 252424416 252424416 197373980 50906160 50906160 154830016 234259624 234259624 143222752 86749544 87106344 87106344 70527008 73682176 73682176 70069408 68757000 610741552 610741552 380729036 1019738734 1019738734 921794922 363164501 363164501 608486071 608486071 1006897167 1016335079 1016335079 960759975 566307502 258321824 414617072 414617072 389284160 389284160 238256948 238256948 178544956 202441244 202441244 699350373 699350373 772026382 772026382 753019283 218105295 808068224 808068224 677589188 503607488 505538760 505538760 448893406 945300952 945300952 682636752 682636752 1001339489 1001339489 850056531 840168467 581169235 435449344 435449344 240316060 182095064 202576920 202576920 164238048 164238048 82185032 227379288 595690216 733004661 790310941 790310941 706506757 795198593 795198593 255023885 555014304 555014304 672475653 826536837 826536837 966895878 966895878 279044418 307706514 667990227 1065407162 1065407162 1007850305 1007850305 858919731 607256634 16912416 1000050488 1000050488 523464917 714211460 714211460 986710593 986710593 949097031 796015034 459038134 1026723628 1026723628 708583300 708583300 470406148 470406148 537396225 975876871 975876871 571597329 145869536 1061241954 1061241954 966801256 358220386 343428796 343428796 341755774 323442214 323442214 947066670 947066670 808063371 553721889 1013056550 1013056550 591462400 879892230 879892230 643830186 204735120 781338689 873894323 873894323 814142085 898638484 898638484 782609298 159663484 159663484 70736164 45882936 60083776 60083776 43781712 121066384 121066384 86491136 94783832 111618232 111618232 989498526 989498526 722175393 944058422 944058422 675289345 671352837 537934725 543444320 903764783 903764783 1012060866 1012060866 882377427 680992306 680992306 437070870 437070870 666304394 721846013 721846013 557788977 606120749 774526841 774526841 40319376 701580388 739113372 739113372 103209240 133012376 257499624 257499624 260046972 419194758 419194758 950532611 950532611 872902665 679686213 679686213 211028513 809963725 809963725 697312992 894253674 894253674 135168 4096 1311232 409747467 409747467 311112786 311112786 790675773 889250093 889250093 474161837 197203136 589882980 589882980 740868445 926077755 926077755 672355870 69937008 397977888 397977888 325548546 400255378 400255378 139121796 458393852 531972662 531972662 510268204 492311884 647973621 647973621 370005546 888093848 888093848 598891501 472450508 472450508 422228260 861550378 861550378 806454938 384978632 384978632 50729800 74263976 82651528 92278792 92278792 121668784 289195282 289195282 28052824 289145314 397674928 397674928 268960770 268960770 268960770 268959744 410383036 410383036 95375688 452205002 524674036 524674036 521838730 390086800 390086800 391792960 391792960 327425376 703998127 1027939301 1027939301 461979400 461979400 914231770 914231770 579895328 579895328 536969251 554222625 981128221 981128221 749608269 749608269 579780892 403052550 388761106 388761106 439217430 758991654 858005039 858005039 510856366 995961526 995961526 612567112 644689305 672123281 672123281 745012929 745012929 637997303 757624832 1027428473 1027428473 318194848 643950894 774316453 1047671350 1047671350 928379196 974395918 974395918 437391494 437391494 688067718 688067718 744437815 744437815 608306319 492766726 407479368 189746888 396852600 396852600 386324538 384080688 47450832 4333568 4333568 1048576 1049088 3738504 73215624 153101198 668552136 668552136 735578247 747219013 747219013 69320960 574667536 574667536 749323788 1019149718 1019149718 746769747 810323266 810323266 608757257 608757257 366341859 588044034 588044034 542248626 114496416 128000376 128000376 97702632 97702632 32975392 570679968 577952033 577952033 822085898 822085898 879210666 879210666 810887427 816244774 816244774 71342080 72352392 244871788 244871788 242992560 204711256 220862340 220862340 111350100 174072284 186192806 590874155 590874155 266215164 816995783 816995783 555621912 1002834545 1002834545 918556495 752995099 752995099 772115393 772115393 563350113 269535331 436977718 480301851 906895985 906895985 634891329 887466462 887466462 660861369 660861369 773459419 773459419 875540632 875540632 511659692 90003648 38997648 40092464 157593024 162080100 162080100 160357476 294987010 423400800 423400800 488892982 505804482 505804482 403643506 403643506 358137468 358137468 292665634 309568128 309568128 985682563 985682563 408897734 815663395 815663395 410596418 471993096 471993096 570458169 570458169 506613813 243305593 220365432 723043893 723043893 674388324 674388324 896780696 896780696 310636626 711115699 711115699 423022098 423022098 398904852 735257377 763643136 843766701 843766701 666750582 21677536 632305504 632305504 604713993 99672418 295814120 470383346 575346482 575346482 672867332 672867332 71963145 369687098 369687098 764887680 764887680 437172150 673117316 673117316 1067189886 1067189886 1054394279 1054394279 648017440 647378856 647378856 377300674 301651200 937551239 986212151 986212151 70251416 70251416 651389952 651389952 642776340 705434592 705434592 408787648 931643648 931643648 919820494 919820494 722298504 190105133 203724048 331531444 474270858 474270858 426399012 892774983 892774983 548496276 660812217 1023686930 1023686930 173152960 542510213 542510213 177859428 158436240 798935152 798935152 707276504 686867428 686867428 117270016 117270016 196420432 231109480 762547928 762547928 657482220 657482220 272761634 272761634 735763440 735763440 631847217 631847217 620760385 620760385 620374664 177542716 117572000 278134809 926026083 926026083 322697010 456127744 607917568 758415915 771840266 771840266 662435769 140557159 831270321 831270321 324397746 324397746 674391685 713740917 713740917 794895485 841037986 841037986 646571916 607985776 607985776 728509056 728509056 301601730 112922352 112922352 190502580 689262248 689262248 169487891 34025494 303231008 864223911 864223911 978555486 978555486 604253251 496814089 228331116 773375517 789433933 789433933 546200673 635409540 748137065 748137065 205710564 217291400 217291400 4851468 1171968 598491584 598491584 651090789 651090789 481035945 470556482 479199970 1036043374 1036043374 738738274 23803296 27235520 27235520 10629952 21189440 21189440 29886432 29886432 28911456 17419584 25811264 25811264 126438846 330933890 346923450 346923450 306212930 306212930 302125074 614810400 870037833 870037833 181832917 1031481066 1031481066 771751965 772277789 772801053 772801053 890446535 890446535 612577524 612577524 604257598 775568460 939603747 939603747 320090673 857094659 934160504 934160504 869091705 342429866 889468938 889468938 563575986 104902224 93129736 123341176 123341176 103026576 369954306 369954306 284103106 337372296 337372296 274219522 352457928 352457928 292196354 351594152 351594152 30739648 834485539 834485539 817960641 562611297 1062211598 1062211598 516997178 516997178 867898588 867898588 1016989993 1016989993 908920228 302263268 517737852 517737852 489688826 150998610 362285854 496699106 496699106 279786064 54822432 576060100 576060100 575005888 575005888 134959825 5834192 3026888 111498344 703295564 703295564 165121032 165121032 73689160 73689160 37798864 48301024 48357840 88081760 88081760 33426824 151349793 555034660 555034660 174116500 174116500 801229032 801229032 230703300 230703300 134604936 147923652 576989956 812691558 812691558 754084545 962907091 962907091 950323527 950323527 955702215 955702215 861186993 952580295 952580295 678609797 767951276 767951276 638851153 539136560 256378044 189793800 104980632 639672705 639672705 623135257 681574725 1012930732 1012930732 530974950 403845314 685363846 855780738 906770834 906770834 805905425 831628014 831628014 759219151 1009305220 1009305220 408438799 318804574 425137300 673332034 1016295501 1016295501 868565997 830246561 298980566 244505174 768742907 768742907 193472868 193472868 380223010 380223010 307626842 406982790 406982790 381946882 365800928 346249346 283976042 537001984 537006081 776761016 776761016 660327445 701533909 701533909 986187296 986187296 896274679 855975987 1015102570 1015102570 872802315 853700705 853700705 736626165 701237520 56435344 303444648 352321578 357566080 357566080 5767808 120080288 120080288 84864936 84864936 86526856 86526856 22859424 634148228 634148228 612769289 102767324 626311846 626311846 596641845 696799142 789088941 789088941 744005772 177609300 177609300 959364524 959364524 841250878 942411015 942411015 1066666594 1066666594 219300504 219300504 143385564 251258844 379104468 957448887 957448887 636485764 746463117 746463117 789061245 789061245 707748353 707748353 981472044 981472044 974177758 885921780 885921780 478811214 79950024 143897668 143897668 177485392 177485392 135188784 131871112 131871112 85041704 85041704 127255092 127255092 187134576 568748773 766609697 766609697 489015850 356067114 468788498 468788498 438829808 71963434 293078946 354850191 1009179918 1009179918 609829646 437965588 437965588 705716869 705716869 554861752 792404253 792404253 743916804 743916804 678468108 183642272 183642272 562568480 563221089 563221089 151147584 151147584 315752549 855943270 988805988 988805988 463205830 868795635 868795635 970903488 970903488 274608662 181907476 181907476 171844644 403702278 403702278 304780166 278154960 180389764 180389764 818528336 818528336 672825864 672825864 301388104 301388104 282600010 292367778 368379464 368379464 268834818 299518410 356042538 623765122 881084480 881084480 360918058 558655650 1034281067 1034281067 447563245 295910318 230255642 422440230 496620854 496620854 481752568 431523626 295486402 311723906 400412472 400412472 135451140 139716356 139716356 134601772 134601772 203618580 203618580 152187916 122291504 142172416 146336340 245679072 312493224 312493224 269533698 300429586 300429586 185639021 185639021 419565860 450238470 793784836 920060052 920060052 583272657 499262346 499262346 474228740 327225692 214010288 324085704 402579450 456899364 456899364 74519312 252424416 252424416 197373980 124466616 124466616 121094040 234259624 234259624 143222752 86749544 87106344 87106344 76778624 73682176 73682176 70069408 176387348 656309032 977536040 977536040 409244352 921794922 921794922 982890594 982890594 608486071 675342357 1006897167 1016335079 1016335079 960759975 566307502 258321824 414617072 414617072 389284160 389284160 238256948 238256948 178544956 231504114 424321654 483394254 483394254 165505044 207618444 549528600 549528600 851777868 851777868 617023553 503607488 505538760 505538760 949602319 949602319 67463188 445253015 711509397 711509397 671088900 860301379 860301379 951065266 951065266 805457556 40555800 109654744 202576920 202576920 164238048 164238048 81580896 227379288 595690216 733004661 733004661 629568461 706506757 706506757 555061760 559368084 589822257 589822257 326698708 501303406 1032651790 1032651790 279836151 180564180 307706514 667990227 1065407162 1065407162 1007850305 1007850305 1058013041 1058013041 220104788 559351018 740414267 740414267 714211460 714211460 986710593 986710593 949097031 660376616 660376616 638321328 708840472 708840472 239413896 239413896 175368104 193850484 193850484 157624740 157624740 145869536 253574528 492057822 492057822 354420980 343428796 343428796 341755774 323442214 323442214 53578764 154951704 154951704 87556904 1013056550 1013056550 446828935 879892230 879892230 643830186 782240641 782240641 792124312 1017121208 1017121208 811870588 811870588 695305074 159663484 229572452 229572452 255852348 255852348 184549660 333640256 425511970 425511970 86491136 139215108 140423488 242360776 477614868 477614868 809958246 1035258735 1035258735 757591143 689888805 537934725 543444320 903764783 903764783 761677836 550645871 550645871 680992306 680992306 437070870 437070870 666304394 721846013 721846013 625379381 336176646 471560800 471560800 22316034 147035700 461720838 461720838 103209240 133012376 257499624 257499624 87360260 419194758 419194758 950532611 950532611 872902665 679686213 679686213 538200784 809963725 809963725 697312992 894253674 894253674 411888834 184782420 244438320 409747467 1053809846 1053809846 738811065 835359947 889250093 889250093 605686352 605686352 589882980 611963528 764445487 926077755 926077755 746606806 69937008 397977888 397977888 325548546 307286560 16961666 17302560 323682096 371016586 371016586 303135046 303135046 261147420 265810668 273005580 484377438 484377438 291190434 300487084 300487084 346621698 441200710 441200710 358322754 496514054 496514054 532752342 532752342 423102150 402991110 250148146 401260612 401260612 341067036 25766016 30466616 68401896 378470618 378470618 194797168 329391650 401389840 410383036 410383036 117158608 452205002 524674036 524674036 521838730 390086800 390086800 391792960 391792960 96151520 703998127 1027939301 1027939301 998712945 998712945 914231770 914231770 579895328 579895328 536969251 554222625 570459184 800620578 800620578 504791376 504791376 403052550 295583400 295583400 142651110 450184946 589044132 589044132 607857337 607857337 575145105 587127881 644689305 672123281 1017912413 1017912413 745012929 637997303 757624832 1027428473 1027428473 596263160 511927449 398793415 1047671350 1047671350 928379196 1020322886 1020322886 516166720 516166720 492179582 847907890 847907890 776088258 492766726 492766726 425145230 880778955 880778955 755374125 618460740 573639561 576156457 576156457 1029902889 1029902889 1010307206 408420878 157616588 157616588 362072682 767297390 767297390 747219013 747219013 657566112 626030888 626030888 749323788 749323788 202958157 18948448 18948384 71303168 71303168 97058824 97058824 2361600 105582600 105582600 72426272 104462032 126072768 126072768 566346361 566346361 562212936 823601929 1027278994 1027278994 822085898 623118633 68293128 156713929 816244774 816244774 841132318 841132318 639509321 336261123 194512500 204711256 220862340 220862340 111350100 174072284 255910771 1037206028 1037206028 249306966 816995783 836502440 836502440 1002834545 1002834545 918556495 752995099 752995099 772115393 772115393 563350113 269535331 357565098 357565098 261264126 261264126 315365312 887466462 887466462 391292464 151199808 285212706 385227768 385227768 511659692 511659692 440725002 490990196 490990196 474206358 479464014 479464014 342194790 335628736 423400800 423400800 276240098 426616258 443049376 443049376 413914214 413914214 358137468 292665634 309568128 309568128 401479258 401479258 352897234 271399426 271399426 305942450 305942450 386973992 386973992 506613813 506613813 243305593 251823720 723043893 723043893 674388324 674388324 896780696 896780696 310636626 711115699 711115699 423022098 423022098 398904852 735257377 763643136 843766701 984931302 984931302 846661201 838109238 833279331 833279331 625865985 565372649 470383346 709030710 709030710 809595424 809595424 743649933 917090589 917090589 886695627 789357561 514665822 673117316 673117316 732943156 732943156 606464265 373941402 373941402 304230644 377300674 377300674 301651200 94454036 266350052 619447032 619447032 614072925 683196997 683196997 679908076 705434592 705434592 535828754 931643648 1049747957 1049747957 722298504 722298504 190105133 155429608 520788064 520788064 564450396 564450396 1057390964 1057390964 883349835 490782894 678531969 678531969 138311940 570808592 572764417 597860545 597860545 12847201 119885200 119885200 84749352 105728696 117270016 137676548 196420432 196420432 421170930 421170930 351553438 225579948 272761634 272761634 271108446 271108446 445202550 445202550 227068164 260588824 708330844 708330844 111698288 413616396 926026083 983288400 983288400 456127744 607917568 758415915 758415915 662435769 952192685 952192685 831270321 831270321 821206346 817815363 674391685 713740917 713740917 794895485 794895485 646571916 646571916 593594324 598725356 728509056 728509056 215488260 112922352 112922352 190502580 689262248 689262248 414279622 599864518 599864518 864223911 864223911 978555486 978555486 613342454 986843259 986843259 581359953 581359953 294353249 268936208 635409540 748137065 748137065 613212180 648629277 648629277 583291141 583291141 911129870 1011693914 1011693914 430593024 430593024 286295588 495476772 495476772 407448620 496870604 496870604 290054816 826632393 826632393 271941698 947191303 947191303 697561696 697561696 631454985 686009497 869845626 869845626 905222840 905222840 560186676 992027689 992027689 704716858 740295740 870037833 870037833 986710743 986710743 651215223 705692181 705692181 380129045 378280068 890446535 890446535 612577524 612577524 604257598 788588548 1044576517 1044576517 945261207 857094659 934160504 934160504 869091705 342429866 889468938 889468938 563575986 104902224 93129736 123341176 123341176 103026576 369954306 369954306 284103106 284714946 284714946 33286018 278447746 294640640 294640640 292196354 16912416 26669155 834485539 834485539 817960641 562611297 1062211598 1062211598 516997178 516997178 409075802 743055266 1016989993 1016989993 908920228 534062326 471600228 471600228 361759338 315284722 525232764 525232764 496699106 279786064 187977825 576060100 675806276 675806276 576650257 138424769 138424769 3026888 248274745 248274745 242788012 242788012 681101172 681101172 623854744 37798864 48301024 48357840 48357840 10584208 6291840 151349793 555034660 555034660 725615252 725615252 801229032 801229032 130337016 646974272 646974272 147923652 576989956 812691558 812691558 754084545 962907091 962907091 542488576 741548306 741548306 377803400 377803400 133241704 592271232 735458416 767951276 767951276 638851153 256378044 256378044 189793800 44224848 309350564 309350564 623135257 681574725 1012930732 1012930732 640825337 659422505 659422505 998761778 998761778 906770834 805905425 805905425 1041294208 1047602079 1047602079 1009305220 408438799 268969236 497480006 673332034 673332034 511268580 531780220 531780220 298980566 51644976 273417906 273417906 33828408 117778488 149455424 181755908 318508496 318508496 381946882 381946882 365800928 156502688 142534672 683973265 683973265 776761016 776761016 663749632 664274553 664274553 986187296 986187296 896274679 354023514 354023514 872802315 872802315 853700705 853700705 736626165 701237520 455816502 404358401 1048188831 1048188831 1027212187 862131595 862131595 343018169 84864936 84864936 807756230 807756230 764461677 764461677 634148228 612769289 149944772 149944772 252005752 596641845 678759552 789088941 789088941 744005772 134266884 134266884 134250496 61754624 549503232 583321809 783698292 867535746 867535746 685089713 219300504 995547495 995547495 898723357 957448887 957448887 857261619 992000057 992000057 939854150 755171344 948492912 948492912 981472044 981472044 974177758 885921780 885921780 828639671 828639671 635486697 606099892 195452996 195452996 151148576 151148576 134481952 134481952 152441460 152441460 127255092 187134576 209933336 209933336 683802497 683802497 729019713 729019713 709022785 438829808 555762689 555762689 354850191 1009179918 1009179918 658628089 679967792 679967792 705716869 705716869 139485329 792404253 792404253 743916804 743916804 678468108 183642272 183642272 179381076 164569008 144139620 680526896 713154645 713154645 855943270 855943270 463205830 463205830 415089094 415089094 437364736 437364736 43728966 181907476 181907476 43972694 403702278 403702278 304780166 562850865 562850865 180389764 818528336 818528336 672825864 672825864 537741068 964233036 964233036 546433798 951178042 951178042 612025422 871487320 871487320 810672771 623765122 349922435 282433056 687689606 952159744 952159744 295910318 295910318 50351644 422440230 496620854 496620854 481752568 148321796 148321796 140233408 12586752 11296128 135451140 139716356 139716356 140292440 140292440 203618580 203618580 152187916 110799468 142172416 146336340 245679072 312493224 391173074 391173074 335283504 335283504 271876832 196894976 419565860 450238470 793784836 920060052 1006632975 1026585408 1026585408 770437504 629708020 629708020 263522100 263522100 176450160 132434424 115649344 74519312 102965328 116400648 116400648 124916664 124916664 121094040 103018776 37557512 27897600 27897600 10885728 76778624 76778624 9720448 9720448 4842624 248041572 656309032 977536040 977536040 409244352 392720784 590929542 982890594 982890594 559188097 675342357 675342357 258044364 841140528 841140528 413502928 255406900 255406900 180612308 107500852 112142672 112142672 110968624 79978656 231504114 424321654 763205077 763205077 592954445 295918539 549528600 549528600 851777868 851777868 666645892 666645892 331955708 331955708 949602319 949602319 67463188 445253015 711509397 711509397 647438041 946391623 946391623 951065266 951065266 805457556 682629904 682629904 571255296 141308928 163788512 163788512 14878052 200100288 200100288 83886120 83886120 26114192 156833332 555061760 689117136 689117136 589822257 589822257 292111984 990684256 1032651790 1032651790 279836151 587202624 595591281 595591281 693158810 693158810 436503632 562320508 1058013041 1058013041 752597094 559351018 740414267 740414267 574860747 574860747 323707524 475653774 654465164 660376616 660376616 638321328 708840472 708840472 168963072 336607242 336607242 59863460 159632656 159632656 343337002 365596556 429528678 492057822 492057822 354420980 480112206 480112206 440043598 438513942 257976008 956566304 956566304 538183942 806015242 806015242 1042859295 1042859295 375948693 712622209 712622209 782240641 782240641 541065301 1017121208 1017121208 432386800 432386800 192948960 173353620 350604226 350604226 322250986 255852348 578904402 671709522 671709522 912590881 1042120973 1042120973 789399105 789399105 694288809 477614868 821703414 1035258735 1035258735 757591143 689888805 201932200 827111808 827111808 618961259 618961259 550645871 550645871 545510058 369449056 203831973 203831973 842549792 842549792 625379381 625379381 237651872 270664704 326041930 326041930 239211680 440657664 440657664 90582584 442244908 442244908 305011986 386981098 386981098 94388530 137921536 137921536 135841284 135283712 33555472 538200784 538200784 29569248 50401488 423978052 423978052 411888834 184782420 244438320 370548848 1053809846 1053809846 738811065 835359947 835359947 621532801 605686352 605686352 407408676 611963528 764445487 910348443 910348443 746606806 515258700 515258700 129854842 307286560 307286560 105850634 193961814 323682096 371016586 445814212 530842024 530842024 261147420 265810668 387976616 402130938 402130938 291190434 347239374 347239374 291705834 291705834 141945732 419484036 496514054 496514054 532752342 532752342 423102150 402991110 250148146 401260612 401260612 341067036 59254288 35193968 68401896 378470618 378470618 43833552 329391650 401389840 401389840 337607536 117158608 117158608 390692448 390692448 355428394 355428394 339231114 335690578 83387208 96151520 266876744 575019184 575019184 998712945 998712945 740559117 740559117 692588374 609828918 391136432 487273518 966989319 966989319 800620578 1019383746 1019383746 500178662 500178662 142651110 524501216 671137350 962229414 962229414 977842900 977842900 877998292 575145105 612193268 612193268 1017912413 1017912413 752216781 377848415 138547276 335768578 596263160 596263160 511927449 125911616 125911616 118612536 411586688 1020322886 1020322886 516166720 516166720 492179582 847907890 1061159324 1061159324 1009262763 1009262763 425145230 880778955 880778955 755374125 703684729 912250371 912250371 846338178 1029902889 1029902889 1010307206 408420878 457236638 457236638 368625642 767297390 767297390 433588372 657566112 657566112 626030888 662207544 662207544 275212946 377763531 544075137 900639682 900639682 566195721 566195721 272841315 562921122 585825730 585825730 52467432 104462032 126072768 126072768 566346361 566346361 562212936 823601929 1027278994 1027278994 894049315 894049315 890388523 1052707837 1052707837 443989792 841132318 841132318 639509321 336261123 543830304 683219764 683219764 180041556 76947004 141710216 255910771 1037206028 1037206028 991603317 991603317 836502440 836502440 445783844 445783844 264192 8390656 8652864 8652864 16654272 24486152 197241078 357565098 357565098 598090926 1010546011 1010546011 800313262 918570309 918570309 666448643 623588649 816285067 816285067 743781858 307790498 440725002 490990196 490990196 474206358 479464014 479464014 342194790 335628736 392581608 496122016 496122016 434695526 443049376 449593840 449593840 432013542 312594704 189453492 30036832 53741152 53741152 3445792 35967776 35967776 50300788 305942450 305942450 171053844 171053844 289040492 289040492 207300114 251823720 251823720 177919572 142222404 181414612 181913012 181913012 70949252 90492328 102834456 132752320 132752320 123242296 123242296 54201744 563637622 984931302 984931302 846661201 838109238 833279331 833279331 625865985 804171222 816888453 864075891 864075891 809595424 840966459 840966459 917090589 917090589 886695627 789357561 649705173 514665822 316886527 1057836606 1057836606 1061395134 1061395134 537660032 537660032 537606784 6417880 115728769 568413573 702817789 702817789 638107752 614072925 683196997 739775032 739775032 719602145 719602145 596530505 1069861119 1069861119 1049747957 556110907 556110907 512173394 512173394 520788064 520788064 564450396 564450396 1057390964 1057390964 883349835 827598994 707808020 707808020 140113476 570808592 572764417 673644689 673644689 962129748 1029268789 1029268789 788080605 827707097 827707097 821373891 137676548 344021602 421170930 947137945 947137945 476763530 608719107 608719107 433193604 433193604 936974326 981475375 981475375 245925653 708330844 708330844 111698288 413616396 428349054 983288400 983288400 251911685 420297330 420297330 127062648 85348472 952192685 952192685 410098726 821206346 821206346 817815363 563343778 136921572 150115268 190982104 190982104 109539248 11639296 11639296 16912416 26870592 168957032 168957032 110101012 630297069 630297069 510867500 414279622 414279622 599864518 599864518 477608205 839724051 839724051 304210194 937607617 986843259 986843259 621053733 581359953 294353249 268936208 738773717 738773717 617611480 617611480 648629277 648629277 583291141 583291141 911129870 1011693914 1011693914 388284572 84182192 286295588 495476772 495476772 407448620 496870604 496870604 290054816 826632393 826632393 681975882 947191303 950400397 1006858250 1006858250 631454985 765694225 980412906 980412906 1041298072 1041298072 781241863 992027689 992027689 704716858 740295740 740295740 620564266 986710743 986710743 827359625 705692181 705692181 279446552 279446552 101197122 9511488 42679872 352727544 363934100 788588548 1044576517 1044576517 945261207 492970174 492970174 656437752 656437752 455920950 455920950 202082368 41949488 26237792 26237792 9875808 36649472 36649472 19205424 16777728 3355392 3355392 2220288 29206176 277023042 294640640 294640640 62467136 62467136 62264064 50787248 18810880 37657756 209641356 209641356 213571404 213571404 20994028 409075802 409075802 394921318 243343452 534062326 534062326 471600228 471600228 361759338 315284722 525232764 525232764 401793186 273854272 187977825 187977825 675806276 675806276 576650257 540657024 580977281 681380305 681380305 248274745 242788012 242788012 681101172 681101172 623854744 30144416 46241280 56100528 56100528 12558208 129546344 129546344 788586564 788586564 725615252 725615252 135364757 222404804 222404804 646974272 646974272 577767681 678934972 756511364 756511364 589558065 411220001 321128754 401821846 741548306 850530608 850530608 377803400 268957698 834460706 860409649 860409649 749756745 202383904 218177580 687919980 687919980 173188752 309350564 309350564 285476980 331614670 581177524 640825337 640825337 659422505 659422505 998761778 1046545612 1046545612 766314801 766314801 1041294208 1047602079 1047602079 9438208 36291072 665693293 665693293 497480006 470625294 240761937 240761937 204348684 251152499 251152499 991826993 991826993 362953794 128397752 149455424 181755908 407391106 407391106 289854672 327204978 327204978 293634160 176969760 683973265 1012325025 1012325025 253103118 978696704 978696704 664274553 823676483 823676483 526006275 354023514 780175376 780175376 746899533 243533824 283774434 411195298 455816502 455816502 404358401 1048188831 1048188831 1027212187 862131595 862131595 343018169 92015488 92015488 807756230 807756230 764461677 764461677 679047205 679047205 149944772 149944772 137763588 503629534 680799552 680799552 243877402 307758770 307758770 270108306 963088908 963088908 976403254 976403254 583321809 867535746 867535746 685089713 123947127 995547495 995547495 898723357 898723357 857261619 857261619 992000057 992000057 939854150 327476759 948492912 948492912 840468563 725583464 592280049 743979050 743979050 828639671 828639671 635486697 606099892 195452996 195452996 151148576 151148576 134481952 134481952 152441460 152441460 43870800 43870800 44565060 44565060 683802497 683802497 729019713 729019713 709022785 402669568 555762689 555762689 567578752 567578752 658628089 732710405 732710405 679967792 236462232 60229504 51912736 229124928 237813516 237813516 125441976 181288656 181288656 599134001 631376297 936696785 936696785 680526896 713154645 713154645 405008405 694292730 694292730 103809816 349454400 349454400 173843494 170797312 447514960 447514960 281693462 276959298 271911746 268644354 5318080 562850865 562850865 26499584 271720450 555480609 555480609 537741068 537741068 964233036 964233036 546433798 951178042 951178042 612025422 871487320 871487320 810672771 443609475 282433056 282433056 687689606 687689606 98682593 88154280 218376328 218376328 7711360 238336512 240505216 240505216 238500636 200843620 200843620 19508912 35733140 173662356 173662356 169708860 226968412 226968412 105450068 46699968 78693192 78693192 130818592 130818592 116133336 115614032 391173074 391173074 335283504 335283504 271876832 758391028 758391028 174698445 650212820 753992969 1006632975 1026585408 1026585408 770437504 629708020 629708020 263522100 263522100 176450160 132434424 115649344 28650336 49419216 68870672 74564648 124916664 124916664 86994944 74437896 17141128 16591464 70189224 74260104 74260104 16791904 22043336 22043336 74874408 248041572 696337000 738281037 984197495 984197495 800385565 800385565 740681997 556177452 629565699 629565699 757344553 757344553 841140528 841140528 503727488 503727488 533530898 533530898 52964734 112142672 112142672 151984644 256940052 256940052 251845296 763205077 763205077 592954445 295918539 181479719 181479719 826948429 826948429 666645892 666645892 331955708 331955708 587407578 755097645 755097645 546612837 542839381 647438041 647438041 946391623 946391623 137478272 543739717 543739717 682629904 682629904 571255296 135369732 163788512 163788512 178902928 200100288 716794832 716794832 686082501 705015061 705983493 705983493 708119632 708119632 723029044 728827539 980741399 990684256 1048601793 1048601793 1071842703 1071842703 595591281 999174288 999174288 693158810 896159774 896159774 578604432 752597094 752597094 514235994 840917272 840917272 437033228 437033228 323707524 475653774 475653774 222695604 222695604 176300204 176300204 191837312 191837312 336607242 336607242 148465056 170614560 170614560 343337002 365596556 429528678 429528678 224471154 224471154 480112206 480112206 440043598 438513942 249121436 956566304 956566304 538183942 806015242 806015242 1042859295 1042859295 976409367 976409367 712622209 306657426 306657426 272877584 609225196 609225196 462794848 462794848 393265552 393265552 350604226 350604226 322250986 248048896 578904402 671709522 671709522 912590881 1042120973 1042120973 789399105 789399105 694288809 354613143 821703414 821703414 782387072 185717124 138716292 138716292 827111808 827111808 155398144 406921380 554700800 554832417 554832417 369449056 203831973 203831973 996665904 996665904 947000199 337303210 337303210 270664704 470462642 470462642 405664476 248769798 90582584 90582584 442244908 442244908 305011986 386981098 386981098 236990953 719528245 719528245 679085701 715385685 715385685 609713888 609713888 575828676 700093526 978015584 978015584 55170228 439889684 439889684 136143170 781723188 781723188 654340690 660418089 660418089 77410169 807120040 807120040 412521955 313482898 313482898 299339464 389662522 389662522 515258700 515258700 129854842 479293576 479293576 105850634 193961814 256463526 256463526 445814212 530842024 530842024 128975736 128975736 387976616 402130938 402130938 1011671171 1011671171 819748866 946178127 1050322233 1050322233 419484036 484909376 999771258 999771258 559710056 559710056 88850528 88850528 75423624 104659488 131057120 131057120 55576200 55576200 43089992 1384448 7453952 65036800 65036800 42705136 66921552 66921552 63175384 390692448 390692448 355428394 355428394 339231114 355941162 355941162 378217744 1023713141 1023713141 526197438 958603243 1026318800 1026318800 977272599 905572323 905572323 688502307 688502307 966989319 966989319 573218586 1019383746 1019383746 500178662 500178662 227495488 524501216 1023769200 1023769200 962229414 977842900 977842900 877998292 600195594 532668350 532668350 919762966 919762966 752216781 740728064 740728064 335768578 335768578 739119512 739119512 942493605 944033027 944033027 1024393275 1024393275 474819650 815598146 885471435 885471435 445260373 1061159324 1061159324 1009262763 1009262763 268871906 562430150 755288109 755288109 703684729 912250371 912250371 846338178 672062469 1031948776 1031948776 593156860 1058462335 1058462335 845600639 560649633 499156740 407772294 504622873 610715690 610715690 665025193 938971867 938971867 585224682 554372272 900639682 900639682 566195721 566195721 272841315 562921122 585825730 585825730 262815900 262815900 195609972 172923360 98996248 551821760 552674241 552674241 134349312 611582250 894049315 894049315 890388523 1052707837 1052707837 155118884 263169884 263169884 134792772 134792772 543830304 683219764 683219764 129240696 129240696 121651296 253985452 627514752 627514752 991603317 991603317 893261536 233506639 818490780 818490780 901581109 901581109 897845355 937566715 937566715 890741033 530981194 866259315 866259315 851714130 1010546011 1010546011 800313262 918570309 918570309 666448643 623588649 816285067 816285067 743781858 79113668 171676512 424005860 430890342 457680262 457680262 444596310 460677608 460677608 441635478 496122016 496122016 434695526 434695526 449593840 449593840 432013542 327173248 327173248 137123542 151919200 151919200 39433332 53031952 53031952 163446884 163446884 271939712 271939712 184463734 289040492 420677276 420677276 201854520 159855740 159384512 745711417 745711417 105459728 235424384 264511980 755084593 755084593 36515088 84282398 457225270 763978936 931668487 931668487 977218327 977218327 670119799 693581923 693581923 273696384 509921694 804171222 816888453 864075891 864075891 846504874 846504874 840966459 759371321 959059239 959059239 649705173 649705173 654917902 654917902 1057836606 1057836606 1061395134 1061395134 537660032 537660032 537606784 285097858 270325184 568413573 702817789 702817789 638107752 118146072 118146072 739775032 739775032 719602145 719602145 596530505 1069861119 1069861119 623284694 407630850 505905772 512173394 512173394 518034632 518034632 620440308 620440308 456205110 684964305 827598994 983233623 983233623 707808020 140113476 170200836 549857297 673644689 673644689 962129748 1029268789 1029268789 788080605 827707097 827707097 821373891 77273291 344021602 348467850 947137945 947137945 476763530 608719107 608719107 433193604 433193604 936974326 981475375 981475375 134774807 44580948 43486288 94820712 195436864 245490012 245490012 548783388 985189141 985189141 783375714 799737404 799737404 1025659672 1025659672 2560 0 0 15830210 290102130 323003474 331011376 331011376 241724400 109539248 159197216 159197216 227466348 230030436 230030436 168957032 111411428 630297069 630297069 563103932 256148065 252299960 252299960 151332900 378872013 839724051 839724051 1018509677 1018509677 937607617 758137696 758137696 738948145 792008449 792008449 756738857 738773717 619746792 619746792 543426296 241962396 202145124 309000384 309000384 237207718 388284572 388284572 486811670 486811670 55068712 23363716 18923808 8939808 8390656 8390656 1331968 2545920 681975882 681975882 950400397 1006858250 1006858250 407738503 765694225 980412906 980412906 1041298072 1041298072 781241863 781241863 488833493 604271872 1007277109 1007277109 620564266 368091883 887096135 887096135 655360569 922894584 1069994490 1069994490 1001839191 888176812 844240958 844240958 654766612 644137244 644137244 285243543 151253028 151253028 16912416 281825408 422612496 455920950 455920950 154033232 154033232 58038224 58038224 21640064 21640064 23835648 321398018 321398018 311538674 314585282 314585282 313025856 29206176 38846976 38846976 62467136 62467136 62264064 844764449 844764449 554961411 862064659 862064659 821057474 294671114 424149414 424149414 637546760 773915101 773915101 656408672 24192592 424157248 424157248 268599424 268599424 26247200 26247200 14495424 24412848 58199728 58199728 36393728 35251728 41494416 540657024 580977281 681380305 681380305 588359776 242682076 242682076 38397072 116928024 116928024 39248304 46241280 56100528 56100528 157075748 192685704 192685704 788586564 788586564 595855457 751270621 751270621 629186573 722468929 722468929 577767681 577767681 918364094 918364094 756511364 271731312 293603664 321128754 321128754 396480798 928326437 928326437 469854906 469854906 906008700 906008700 860409649 749756745 263776128 263776128 687919980 687919980 173188752 394670320 394670320 438830358 503316502 505939230 505939230 244855570 67305560 51189936 131529720 1046545612 1046545612 766314801 766314801 765324332 765324332 701509197 608755849 546506580 691585397 867189825 867189825 470625294 273216454 240761937 204348684 807143678 807143678 1071121975 1071121975 362953794 184750452 184750452 138836060 407391106 407391106 289854672 327204978 327204978 293634160 236275808 236275808 1012325025 1012325025 416908352 978696704 978696704 805188838 843875844 843875844 637623539 487901742 780175376 780175376 762411844 895885411 895885411 923207706 923207706 263597688 273656868 534262348 534262348 502796780 152764672 118905048 47897152 92015488 92015488 35836984 638149165 652373869 676765632 679047205 679047205 138936576 190783140 190783140 543536677 680799552 708355616 708937020 708937020 307758770 270108306 963088908 963088908 976403254 976403254 646578957 646578957 143773328 779176868 779176868 981664428 981664428 636555355 201400645 89654952 525476384 822810638 822810638 362165875 974421026 974421026 1043120515 1043120515 915162303 15516079 492071564 492071564 207494926 27263040 136772928 136772928 50906160 134876176 134876176 26049636 135473760 143594564 143594564 9722404 1575488 8963136 43934272 43934272 10112512 408975168 416623302 416623302 734916548 734916548 728013729 728013729 699680839 567578752 563534433 732710405 732710405 640694268 60229504 60229504 51912736 229124928 237813516 237813516 133580080 133580080 127159376 599134001 631376297 936696785 936696785 400969946 270145026 270145026 908364042 908364042 694292730 103809816 349454400 349454400 437364736 437364736 447514960 447514960 281693462 276959298 271911746 268644354 6310144 9951360 26499584 26499584 271720450 271720450 368191242 368191242 342789792 293078402 293078402 433804508 602972603 602972603 468483174 468483174 810026115 810026115 661741616 734007941 734007941 601986805 593056228 813575596 916720746 916720746 266058272 407821446 407821446 533382232 533382232 238500636 212126028 200843620 19508912 35733140 173662356 173662356 169708860 226968412 226968412 240536612 240536612 230227044 210627660 136135072 181267668 243654688 243654688 124295040 124295040 37701752 21244896 60368553 758391028 793643881 793643881 650212820 753992969 753992969 65688729 62555616 28467968 33555472 33555472 34078736 37029328 48769808 73468328 73468328 69607504 116528088 116528088 125310112 125310112 121368872 100672168 74437896 38617120 21634464 70189224 74260104 74260104 4992104 22043336 22043336 74874408 131253712 696337000 738281037 984197495 984197495 926873307 926873307 740681997 556177452 629565699 629565699 757344553 757344553 306200608 323076146 503727488 503727488 533530898 533530898 162647720 162647720 68187148 151984644 256940052 256940052 251845296 176208428 176208428 152681896 120794576 70308680 70308680 785411028 785411028 542148672 542148672 289737826 316249620 587407578 755097645 755097645 704791952 745392473 745392473 546258257 588918044 588918044 579934240 579934240 571793920 41410048 41410048 11137152 135369732 135369732 135183104 178902928 178902928 716794832 716794832 686082501 705015061 705983493 712429185 712429185 708119632 723029044 728827539 980741399 980741399 1048601793 1048601793 1071842703 1071842703 497289949 999174288 999174288 559153761 896159774 896159774 578604432 578604432 558940544 47399585 840917272 840917272 108990083 37969536 0 0 210109444 210109444 105283024 176300204 176300204 191837312 191837312 179803332 179803332 148465056 170614560 170614560 152722100 145869536 167480548 523555996 523555996 417128652 417128652 294398410 294398410 480053014 480053014 134386818 560204193 560204193 442683798 442683798 575145105 911234333 976409367 976409367 806503842 306657426 714498648 738719757 738719757 609225196 462794848 943921956 943921956 778374579 324012060 324012060 755590108 755590108 509852687 931857839 931857839 803734852 365178361 202417582 153013848 194171508 194171508 193146996 261633728 344082104 344082104 50786506 883740288 883740288 826212099 558957348 558957348 555087973 554700800 763958278 763958278 130361592 654344902 940960263 996665904 996665904 947000199 1009480047 1009480047 480016010 727964620 1071885651 1071885651 1053082929 777169591 777169591 464815583 545021108 1013817622 1013817622 602865856 602865856 719528245 719528245 679085701 715385685 715385685 609713888 609713888 581480321 700093526 978015584 978015584 176199058 439889684 439889684 294044704 6241920 331590704 654340690 660418089 660418089 77410169 807120040 807120040 412521955 840730578 840730578 318262803 379283930 379283930 131600320 424045120 474269838 479293576 547360803 547360803 909568744 909568744 626075728 27355720 93824000 93824000 14001488 8630784 276861952 276861952 269218818 1011671171 1011671171 819748866 946178127 1050322233 1050322233 321203034 484909376 999771258 999771258 559710056 559710056 229693182 348299714 348299714 286353574 286353574 131057120 55576200 55576200 275629498 275629498 53998664 280635520 387252570 387252570 273219552 273219552 114934352 306551640 371595546 371595546 347719280 93815928 355941162 355941162 378217744 1023713141 1023713141 769565494 958603243 1026318800 1026318800 977272599 905572323 1064593142 1064593142 688502307 613991456 613991456 286806574 338296864 386933202 386933202 329332322 227495488 227495488 1023769200 1023769200 357631587 405281018 405281018 701853048 701853048 532668350 532668350 770600017 770600017 905024812 905024812 740728064 244091317 165675492 739119512 739119512 942493605 944033027 944033027 1024393275 1024393275 474819650 815598146 885471435 885471435 445260373 751239245 751239245 378733210 872876073 872876073 562430150 755288109 755288109 543044800 543044800 190070001 146966049 672062469 1031948776 1031948776 593156860 1058462335 1058462335 845600639 560649633 407772294 407772294 504622873 610715690 610715690 665025193 938971867 938971867 585224682 554372272 554372272 469607887 172445288 172445288 104514704 210322584 250209756 250209756 262815900 262815900 195609972 220274988 780552309 780552309 674506824 613601865 300038027 300038027 606474625 606474625 224148364 180975997 3794688 2679552 110134104 110134104 68157960 68157960 54401376 185081124 185081124 129240696 129240696 121651296 253985452 253985452 345111782 345111782 893261536 893261536 233506639 818490780 818490780 901581109 901581109 897845355 937566715 937566715 890741033 530981194 866259315 866259315 851714130 931796542 931796542 610398544 650252505 650252505 492302414 492302414 312575440 444607136 444607136 79113668 462192282 462192282 430890342 457680262 457680262 444596310 460677608 460677608 441635478 184606562 457302192 457302192 433111782 433111782 201144976 201144976 327173248 327173248 138725508 151919200 151919200 39433332 53031952 53031952 163446884 163446884 271939712 381817720 381817720 292553634 420677276 420677276 112791640 159384512 779732564 779732564 745711417 212611408 235424384 264511980 755084593 755084593 1017670081 1017670081 457225270 763978936 931668487 931668487 804460149 484396924 924392464 924392464 369914426 369914426 273696384 269009922 623013900 623013900 353988397 846504874 846504874 592519840 722108757 959059239 959059239 586686198 402785136 654917902 689769785 788579101 788579101 763906321 742763440 275651970 379074244 379074244 285097858 270325184 156112836 164108016 207503612 207503612 253396512 253396512 138056844 209321896 371639410 371639410 506851236 506851236 1013878105 1013878105 599583777 843055251 843055251 397738794 397738794 141652140 620440308 648044902 672619172 964709110 979444119 983233623 983233623 687319555 42861377 147133376 549857297 549857297 578227184 578227184 296104081 25301088 172105731 223053015 230736108 230736108 96061420 273159424 348467850 919251672 919251672 847562835 847562835 813818073 813818073 272855170 573224860 833405085 833405085 797675372 797675372 733373756 220495684 235372821 873000007 873000007 781995549 985189141 985189141 814563587 907128139 907128139 1025659672 1025659672 925231369 622119465 835903697 835903697 564276210 323003474 331011376 331011376 241724400 50578028 159197216 159197216 227466348 230030436 230030436 156389500 111411428 171854064 563103932 563103932 951922503 1013476123 1013476123 853590483 714400340 714400340 271043375 1018509677 1018509677 366035004 758137696 758137696 738948145 792008449 792008449 756738857 205632021 619746792 619746792 903202312 1059739643 1059739643 580145457 1005877837 1005877837 946359328 946359328 491202596 491202596 1037567976 1037567976 1015553324 1015553324 487461508 289631808 828443113 828443113 968683049 968683049 470531236 288350696 296298862 296298862 254019900 413502730 518807726 521153180 521153180 222300786 442549292 671969661 671969661 1007277109 1007277109 937427243 876614057 887096135 887096135 655360569 922894584 1069994490 1069994490 1001839191 888176812 844240958 844240958 912301086 912301086 644137244 469878855 151253028 321491066 321491066 1042736440 1042736440 367711722 367711722 266210880 188670016 188670016 154732368 21640064 21640064 27734128 321398018 321398018 311538674 314585282 314585282 320510560 320510560 38846976 38846976 21291184 58945680 58945680 844764449 844764449 554961411 862064659 862064659 821057474 294671114 424149414 424149414 637546760 773915101 773915101 656408672 318845636 315961832 306348378 147222552 122901224 348784856 370068562 370068562 332809952 2097408 36393728 36393728 35251728 41494416 571998976 571998976 544285569 588359776 588359776 62922800 62922800 45789696 45789696 50418992 50418992 43258944 43258944 181527172 181527172 415318502 415318502 542174921 542174921 721807413 751270621 751270621 629186573 826340522 952731859 952731859 276905621 918364094 918364094 421112923 479974824 919191518 919191518 575217499 358202897 928326437 928326437 469854906 469854906 906008700 906008700 644001801 644001801 263776128 263776128 762874537 762874537 224530860 785714953 785714953 438830358 503316502 505939230 920663436 952742081 952742081 466408770 576207572 576207572 419553318 935124602 935124602 765324332 765324332 701509197 608755849 554955873 691585397 1062925521 1062925521 748746140 681583882 684215335 684215335 807143678 892128555 1071121975 1071121975 169936660 317792768 317792768 138836060 277646560 289456290 289456290 190717092 181718752 181718752 236275808 236275808 247196924 375928474 416908352 416908352 587106994 805188838 843875844 843875844 637623539 487901742 683379850 683379850 762411844 895885411 895885411 923207706 923207706 296036706 263597688 534262348 534262348 502796780 120971664 120971664 95981920 71475096 71475096 35836984 638149165 652373869 652373869 542242412 138936576 353315238 353315238 190783140 543536677 543536677 708355616 708937020 708937020 403752870 477787554 639205813 773041733 773041733 583017096 646578957 646578957 660886748 779176868 779176868 653331607 730017909 875573584 875573584 1044972590 1044972590 907553840 907553840 362165875 974421026 974421026 1043120515 1043120515 915162303 707924757 707924757 553771668 860207601 860207601 829800865 690774192 688795765 749346073 816645479 816645479 615114057 143594564 420069958 420069958 691461904 713816132 713816132 412436552 953193606 953193606 550392035 567679203 734916548 885248491 885248491 728013729 699680839 572723660 650048107 650048107 725710032 725710032 699297921 59221264 54624288 276006390 276006390 137117892 133580080 133580080 127159376 659328041 659328041 889196801 934858784 934858784 42992208 579911712 908364042 908364042 736268799 736268799 499165394 714123952 987199490 987199490 414882196 134631184 175004932 175004932 5046400 1427328 9304320 13011136 19187232 26201600 540152577 549462185 549462185 368191242 331627889 314708178 284433736 419824030 705809236 879730145 879730145 471986941 999409718 999409718 899691530 734007941 734007941 601986805 822686030 822686030 916720746 916720746 363773450 407821446 407821446 533382232 533382232 517996826 338170030 437256726 437256726 413434468 186960180 107793964 1592448 112067904 118229468 240536612 240536612 230227044 210627660 136135072 181267668 243654688 243654688 123315072 123315072 60814816 54017856 60368553 661519028 793643881 793643881 605762308 632537924 632537924 633873792 633873792 661251513 760841828 760841828 149423168 195068064 195068064 207423908 207423908 154445576 134669108 116528088 125310112 125310112 121368872 100672168 155958656 155958656 155468032 88383232 20850688 7151008 12705984 12705984 15081152 15467008 267758508 752960744 752960744 235982252 712077118 926873307 926873307 548979463 411205632 411205632 186695988 228632640 228632640 306200608 323076146 499216070 499216070 472361170 504205294 504205294 303685672 34805536 86447200 86447200 58044816 39920016 9963072 42092384 62569264 92868176 605417096 611455881 816982473 816982473 807741699 300687360 289737826 718348352 771803796 771803796 235145244 704791952 745392473 745392473 546258257 588918044 588918044 611895177 611895177 607594616 626698304 626698304 619684888 65239336 65239336 5575168 73275584 245249352 605301525 605301525 68422152 675652416 675652416 712429185 712429185 540911169 570054976 570054976 563313313 25419937 229911157 626013492 626013492 539966721 265717155 911818960 911818960 585363921 585363921 866158685 866158685 558940544 558940544 556057601 725761087 725761087 156159022 352630986 352630986 144521286 274044456 319867890 456177442 456177442 438424192 69342888 69342888 141235856 141235856 257960104 257960104 88408508 107502890 107502890 167480548 523555996 523555996 417128652 417128652 342115532 342115532 480053014 480053014 25242049 560204193 560204193 155466149 296649570 339947658 695850660 695850660 838914177 838914177 638129687 714498648 738719757 947995092 947995092 1021719114 1021719114 943921956 778374579 663960854 439300729 755590108 755590108 509852687 931857839 931857839 921771906 855061347 855061347 682885441 682885441 674370309 532403903 699180981 699180981 582885246 82780104 883740288 883740288 873924522 560262700 677121669 901269412 901269412 763958278 815780013 815780013 654344902 940960263 940960263 578012962 372892336 1009480047 1009480047 480016010 727964620 1071885651 1071885651 1053082929 1062921920 1062921920 815622868 815622868 1013817622 1013817622 602865856 602865856 601730102 374420378 374420378 97201890 546907984 546907984 577866688 581480321 581480321 410141958 441064598 441064598 278726208 315609378 443556369 697690725 697690725 1066191374 1066191374 864035650 864035650 306815584 689415865 689415865 840730578 871317784 871317784 636139755 663773204 764535405 764535405 714187389 680600133 549520073 547360803 909568744 909568744 626075728 27355720 318951090 318951090 309803522 409184578 409184578 321158964 422607662 460431760 460431760 351433678 1014034742 1014034742 1001765491 1001765491 661652409 850763102 850763102 520010309 1018087632 1018087632 348299714 348299714 286353574 286353574 61969248 61969248 42192720 275629498 275629498 53998664 280635520 387252570 387252570 273219552 273219552 114934352 306551640 371595546 371595546 347719280 93815928 93815928 378060000 378060000 437853202 437853202 920849244 920849244 800176448 864723874 1027908691 1027908691 1064593142 1064593142 288691130 66464212 286806574 286806574 338296864 386933202 386933202 329332322 330080290 330080290 680260716 1028782851 1028782851 585874670 982118534 982118534 701853048 622588033 780981833 786971976 786971976 905024812 905024812 569934846 179138480 38863120 38863120 31208256 27930240 501681424 501681424 428552414 206519300 206519300 461965682 834087036 834087036 304159641 751239245 751239245 378733210 872876073 872876073 374813053 297498509 374780952 543044800 543044800 460787187 606619756 832643427 832643427 272765058 996166256 996166256 955567047 947703687 947703687 356418661 126456064 508817404 508817404 163345334 98076320 98076320 68191296 68732424 76842048 76842048 112797528 783887520 783887520 87032616 197821856 261280380 261280380 109500084 78040216 75929352 220274988 780552309 780552309 674506824 613601865 300038027 300038027 606474625 1032849389 1032849389 287519010 155378340 155378340 247209628 247209628 279205186 279205186 554364544 561381456 561381456 312500256 312500256 300507522 300507522 627234188 627234188 476583045 614281217 614281217 567295241 955389930 955389930 505479282 403711182 270017090 279996224 293941504 293941504 102009144 102009144 715979896 758459181 758459181 570425344 891417276 959458151 959458151 470868379 277223490 277184576 444607136 444607136 289989640 462192282 462192282 233757044 162003300 120795960 416083600 416083600 529789566 529789566 522116104 457302192 457302192 433111782 433111782 201144976 201144976 172494354 393301376 393301376 302028256 55506584 133883912 133883912 118687768 145512342 316070610 423429090 423429090 381817720 486212114 486212114 112791640 431567674 443786825 779732564 779732564 543736181 543736181 212611408 604228632 604228632 578814029 1017670081 1017670081 195338491 610897925 635072886 804460149 804460149 611213224 924392464 924392464 369914426 369914426 541115394 704957657 704957657 623013900 353988397 716675234 716675234 423642198 855982360 855982360 1058960416 1058960416 932059685 274212480 689769785 689769785 763906321 763906321 742763440 48998676 272683200 272683200 19006416 245397780 744947717 744947717 239548572 259930932 259930932 567712876 727063221 778779677 778779677 724702005 264905914 874893425 1013878105 1013878105 608208296 843055251 843055251 631301856 574400092 782015444 782015444 648044902 672619172 964709110 979444119 979444119 677375748 404631056 34711760 147133376 147133376 136456388 738199841 770968557 770968557 754326477 754326477 269617615 230736108 230736108 96061420 202108092 202108092 919251672 919251672 847562835 847562835 813818073 910431232 910431232 573224860 833405085 833405085 797675372 797675372 733373756 220495684 235372821 873000007 873000007 781995549 950799687 950799687 814563587 907128139 907128139 849840153 925231369 925231369 622119465 835903697 835903697 564276210 135475716 145761028 187701096 199305468 199305468 178873712 178873712 142663956 138986628 145633517 560601249 625692837 625692837 419252304 671426385 951922503 1013476123 1013476123 853590483 714400340 714400340 702047972 562348260 333573076 318996992 33865728 33865728 34269200 34288656 34288656 1081856 88829960 895797032 895797032 903202312 1059739643 1059739643 580145457 1005877837 1005877837 946359328 946359328 491202596 491202596 1037567976 1037567976 1015553324 1015553324 487461508 289631808 828443113 828443113 968683049 968683049 835055885 703019493 893907275 921387140 921387140 501868994 501868994 521153180 521153180 628234165 673875631 673875631 671969661 352739618 937427243 937427243 876614057 481246413 395313280 395313280 307249428 410043270 410043270 497757836 497757836 283456664 107553234 912301086 912301086 563407581 977272966 977272966 468502938 468502938 1042736440 1042736440 367711722 538876544 559078944 559078944 188670016 154732368 137025796 7537696 142062720 190335780 195772516 195772516 191447076 176769504 434020278 434020278 180145824 312903554 312903554 36893936 66685696 66685696 281873602 281873602 298988194 298988194 58213504 60941680 354517018 354517018 124371376 226160668 235938696 318845636 318845636 315961832 306348378 197302592 122901224 348784856 370068562 370068562 332809952 167814608 721469728 721469728 543297921 716322772 716322772 571998976 544285569 568954081 568954081 62922800 62922800 45789696 65626432 65626432 66169104 66169104 50397312 181527172 416548898 416548898 415318502 535118024 537104418 721807413 746852409 746852409 545517633 826340522 952731859 952731859 927067021 927067021 183183210 215368025 479974824 919191518 919191518 575217499 358202897 406880816 573947922 573947922 560032533 414364544 484919672 484919672 240852964 488379182 488379182 762874537 762874537 224530860 785714953 824775911 824775911 167323620 116401828 920663436 952742081 952742081 986465362 986465362 610584589 412597658 935124602 935124602 584846840 768019497 768019497 226891884 554955873 554955873 1062925521 1062925521 748746140 681583882 684215335 684215335 688949295 892128555 1057421856 1057421856 185420048 450953674 450953674 768491348 768491348 956483094 956483094 954766512 580540866 580540866 235635220 592164421 592164421 227837288 39993440 65196528 143596528 143596528 906630171 906630171 810699791 810699791 683379850 683379850 527790862 527790862 288359202 288359202 296036706 296036706 262617468 262617468 221118820 221118820 219185888 120971664 95981920 67785184 228759324 228759324 226635328 226635328 224967448 223684904 246754442 430441208 430441208 120139536 340143374 340143374 192666544 242299048 403752870 403752870 477787554 591000224 792899976 792899976 650273465 584128101 584128101 660886748 709208040 709208040 653331607 730017909 875573584 875573584 1044972590 1044972590 907553840 907553840 810364035 810364035 146547102 911281226 911281226 641770202 707924757 707924757 553771668 860207601 860207601 829800865 690774192 688795765 749346073 816645479 816645479 615114057 70116369 420069958 420069958 691461904 713816132 713816132 412436552 953193606 953193606 550392035 567679203 733174655 885248491 885248491 569410507 569410507 1003990551 1003990551 650048107 725710032 1007157387 1007157387 493417864 493417864 364916722 364916722 1008800260 1008800260 620932860 205800088 659328041 659328041 630620769 934858784 934858784 889717977 641896593 641896593 615175563 736268799 736268799 552960708 714123952 987199490 987199490 414882196 63513840 311764464 311764464 286142882 286142882 285487970 285003776 14940256 5031104 540152577 549462185 549462185 331627889 331627889 314708178 185123892 196297116 705809236 879730145 1051401000 1051401000 999409718 999409718 899691530 942577602 942577602 839435283 822686030 822686030 303113504 303113504 363773450 363773450 151657020 178405686 517996826 517996826 338170030 437256726 437256726 413434468 205698460 205698460 209870012 209870012 151001288 110235752 91541088 111462744 111462744 131871280 131871280 117317592 93733104 63542864 63542864 60814816 55027088 55027088 661519028 661519028 624621188 605762308 632537924 632537924 633873792 633873792 661251513 760841828 760841828 149423168 195068064 195068064 207423908 207423908 154445576 134669108 108249488 108249488 106956680 106956680 91617184 155958656 155958656 155468032 88383232 20850688 7151008 12705984 12705984 4743296 89380408 267758508 752960744 752960744 235982252 718569562 932268956 932268956 344455242 411205632 1008828416 1008853263 1008853263 878714021 878714021 692456839 692456839 522264894 522264894 504205294 504205294 303685672 101401336 208933772 208933772 58136176 59966016 59966016 42092384 62569264 92868176 605417096 611455881 816982473 816982473 807741699 735068709 597733908 718348352 771803796 771803796 593203296 646119513 646119513 659074625 659074625 731732201 743297656 743297656 611895177 607594616 626698304 705071104 705071104 153696405 85439728 140384896 244871728 245249352 245249352 108273744 136873992 136873992 135284240 44877328 44877328 49045184 570054976 570054976 563313313 21444768 24023776 24023776 539966721 539966721 265717155 911818960 911818960 585363921 745411712 866158685 866158685 765142664 765142664 556057601 725761087 725761087 630855273 613981032 352630986 144521286 274044456 319867890 456177442 456177442 438424192 185304468 185304468 592514833 672734753 672734753 800063577 800063577 511323440 589403187 589403187 942556674 950074461 950074461 632028453 786472177 786472177 955256012 955256012 167903362 440537238 440537238 440537238 440537238 339947658 339947658 339947658 840125058 840125058 1014383880 1014383880 812647299 947995092 947995092 1021719114 1021719114 273953089 663960854 663960854 439300729 208143756 176787552 176787552 619990578 921771906 921771906 855061347 855061347 682885441 682885441 1056147968 1056147968 699180981 699180981 837488448 837488448 614404937 873924522 873924522 560262700 677121669 901269412 901269412 678200650 815780013 815780013 537553440 436289034 578012962 578012962 372892336 372892336 71760672 34939456 34939456 285737984 285738018 956466106 1062921920 1062921920 815622868 815622868 277410882 277410882 281234432 281234432 277410882 337923722 337923722 34074896 539013376 539013376 577866688 577866688 180564560 180564560 441064598 441064598 278726208 315609378 443556369 697690725 697690725 1066191374 1066191374 864035650 864035650 969990883 969990883 876987725 876987725 871317784 871317784 636139755 663773204 764535405 764535405 714187389 738263040 738263040 366687978 366687978 344073888 90449704 119287264 318951090 318951090 309803522 409184578 409184578 321158964 422607662 959571463 1013586592 1065554455 1065554455 1014034742 1020538299 1020538299 802161405 850763102 850763102 520010309 1018087632 1018087632 304388356 182742232 279658756 279658756 129587048 129587048 121242392 109316928 26705408 26705408 18485760 17125888 17826336 51523680 59968112 303528032 303528032 47395536 361027112 361027112 396180768 396180768 378060000 378060000 202646912 251400156 920849244 920849244 326365586 864723874 1027908691 1027908691 393521167 389360442 475037696 475037696 67031216 67031216 333632656 333632656 323603328 323603328 330080290 442409148 469820568 1028782851 1028782851 585874670 982118534 982118534 622588033 622588033 780981833 786971976 786971976 40969104 14993856 168576012 168576012 132228024 224228066 449713390 449713390 501681424 501681424 906040325 906040325 483223626 543129680 543129680 427000290 427000290 675947205 675947205 616378185 362611911 830270828 830270828 811161387 488194223 487261228 563820129 568013669 690033344 832643427 832643427 541721057 996166256 996166256 955567047 947703687 947703687 816317763 919873770 950864437 950864437 554763264 314065344 325108146 325149472 325149472 427308043 427308043 320006043 783887520 930726538 930726538 197821856 261280380 261280380 140120692 78040216 75929352 75929352 65723920 65723920 104272890 104272890 78791098 156184228 156184228 1032849389 1032849389 287519010 155378340 155378340 336467914 546884475 546884475 279205186 565221701 565221701 561381456 312500256 312500256 672789516 887878530 887878530 829681636 608419365 608419365 887173456 1063455771 1063455771 1059925311 512110584 512110584 390609460 279996224 293941504 293941504 102009144 102009144 715979896 758459181 931896778 931896778 891417276 972426162 972426162 739519233 288704605 207865024 67749026 289989640 289989640 69838792 69838792 62779248 209954816 255539004 255539004 201955132 529789566 529789566 522116104 220377152 220377152 290794146 952436809 952436809 474030222 213923840 393301376 675954960 675954960 760378705 760378705 688980748 672186885 1057810373 1057810373 1015946319 879526479 879526479 486212114 722746200 1007099479 1007099479 859838936 859838936 372380442 543736181 663048688 663048688 604228632 684786881 684786881 37774592 89230662 503181294 503181294 970141527 970141527 611213224 611213224 1042419939 1042419939 950856262 682460926 990194868 990194868 704957657 721124467 951570298 951570298 832099270 817305459 967761111 967761111 1058960416 1058960416 932059685 547098368 283387308 283387308 269347842 142965592 142965592 48998676 381472032 381472032 38526002 245397780 744947717 744947717 239548572 259930932 259930932 567712876 727063221 778779677 778779677 724702005 474953792 874893425 874893425 611919753 611919753 608208296 631301856 631301856 574400092 782015444 782015444 637735016 34588956 578486528 578486528 171854100 171854100 48048128 37861248 135004672 135004672 47450837 738199841 770968557 770968557 754326477 902836656 902836656 16843547 400640 2886912 7115072 14864832 14864832 206227604 743068236 743068236 835782864 910431232 910431232 310562898 310562898 119802168 135265552 135265552 51031344 104463424 169118976 378595862 378595862 111852114 585516362 883112953 901252971 923033707 926805819 926805819 934358026 934358026 336941427 320325632 324962322 324962322 289366850 294200544 294200544 199305468 199305468 178873712 178873712 185388084 185388084 145633517 560601249 625692837 625692837 243531429 671426385 671426385 185872020 185872020 182306624 184929364 702047972 702047972 562348260 65573264 737295072 737295072 730017909 596849701 87557928 87557928 420739155 597586061 895797032 895797032 428212884 541104494 541104494 17437653 1074176 812544 1674240 176956496 176956496 142683156 323558400 432938214 432938214 226834658 18776480 52563712 66442896 133453442 133453442 835055885 835055885 703019493 893907275 921387140 921387140 501868994 501868994 423932805 477535647 628234165 673875631 673875631 637965732 713081972 1061297471 1061297471 795807009 595734648 622854441 622854441 862040450 862040450 151216210 151216210 283456664 297505378 297505378 854121984 854121984 519923353 977272966 977272966 468502938 468502938 427819014 73662730 19154984 538876544 559078944 559078944 193131684 193131684 137025796 135266820 142062720 190335780 195772516 195772516 191447076 176769504 434020278 434020278 180145824 312903554 312903554 58210896 66685696 66685696 281873602 281873602 298988194 298988194 45088936 170918680 170918680 165836004 153206888 226160668 235938696 235938696 232823156 232823156 197302592 197302592 99525624 99525624 242785924 242785924 160792996 193086197 721469728 721469728 705716625 716322772 716322772 168423745 4743184 11194564 141034884 566646725 566646725 679328484 679328484 550759680 66169104 66169104 50397312 50397312 416548898 416548898 291357674 226308012 386951148 437330454 870278002 981467031 981467031 543584015 99272684 712811884 927067021 927067021 211366066 215368025 215368025 462107766 462107766 871562712 902172339 902172339 819358303 573947922 560032533 414364544 484919672 484919672 229674980 488379182 488379182 153745796 153745796 110964312 119156288 824775911 824775911 643425945 116401828 403728231 669624313 669624313 986465362 986465362 816482180 816482180 95479711 428868260 428868260 768019497 768019497 298405234 585398576 839816259 839816259 55010177 45488912 45488912 20314704 9572928 688949295 891603243 1057421856 1057421856 715461128 715461128 450953674 768491348 768491348 956483094 956483094 954766512 721424096 721424096 191197761 592164421 809060836 881185481 905733857 1007817231 1007817231 458660725 906630171 906630171 810699791 810699791 634417660 634417660 720580861 720580861 347156520 288359202 230298414 435696928 435696928 300602858 96406700 239044752 239044752 572183865 581621337 813395914 813395914 898505804 898505804 721911917 721911917 231025512 586493029 702202794 868356339 958411162 958411162 120650556 120650556 64028816 167772500 241283456 390222523 913478067 913478067 792899976 650273465 618859228 576327173 576327173 709208040 709208040 707352084 655908625 655908625 893412186 893412186 590405908 1066255988 1066255988 966003303 966003303 470886505 981323162 1046029973 1046029973 1037702895 1037702895 638847065 533132872 533132872 345708798 303449174 168874554 8437824 8437824 264192 9178128 41943120 41943120 34344000 41969744 41969744 8559120 145956995 312792339 808324374 810144310 810144310 564456192 761348220 761348220 585228753 569410507 1003990551 1003990551 105750552 105750552 1007157387 1007157387 493417864 493417864 516621358 516621358 1008800260 1008800260 620932860 205800088 215484108 637228984 637228984 652263682 889717977 889717977 641896593 641896593 832737392 981676225 981676225 716546752 716546752 174967208 174967208 75760502 63513840 311764464 311764464 286142882 286142882 285487970 285003776 89917376 6881472 6881472 21472192 484812994 484812994 304854720 408474960 408474960 196297116 510688841 619702082 1051401000 1051401000 919865874 1008767512 1008767512 1001574919 942577602 839435283 812325036 818358273 818358273 541407298 318886587 554484281 571919901 974674958 974674958 235929744 173147320 168894996 168894996 155312292 638929801 638929801 764175252 764175252 604604228 41420688 65018672 65018672 57281488 57281488 28979392 52900864 53211136 53211136 58581296 58581296 55027088 55027088 40093216 39801856 39801856 28312416 16304064 31118272 31118272 16024224 57870640 65769584 65769584 73898688 130701480 130701480 129110904 40640232 4317312 33563904 40420752 103334032 103334032 100712472 70568712 70568712 17915904 5795392 11909312 12008256 12008256 9036864 13400448 13400448 89380408 119188136 621040584 621040584 130100841 718569562 932268956 932268956 520790034 344455242 1027240808 1027240808 1008853263 878714021 878714021 692456839 692456839 522264894 522264894 254069052 254069052 221572336 101401336 208933772 208933772 61478744 59966016 764799597 764799597 622234221 876177102 879889795 879889795 543570206 986236119 986236119 735068709 597733908 597733908 560669396 89272992 593203296 614270288 620332241 659074625 659074625 731732201 743297656 807477507 807477507 335573043 203641108 764182558 764182558 451861974 451861974 332239780 244871728 244871728 648000101 648000101 139668248 676069444 676069444 542396161 542396161 537993729 692015077 692015077 550687425 567086177 567086177 79994348 570104264 570104264 201714664 277747416 841449498 841449498 745411712 745411712 671632683 765142664 765142664 377758563 628207793 630855273 630855273 613981032 13767360 13767360 142738436 142738436 193177792 193177792 172960964 185304468 185304468 592514833 672734753 672734753 800063577 800063577 996527066 996527066 589403187 942556674 950074461 950074461 632028453 786472177 786472177 955256012 955256012 167903362 865785459 865785459 440537238 440537238 272633876 807965348 807965348 840125058 840125058 1014383880 1014383880 812647299 878707208 878707208 330698866 330698866 441723859 441723859 408958646 408958646 718614176 718614176 691104293 705774381 705774381 589064268 203688204 203688204 203348876 150869132 1056147968 1056147968 404230225 466500384 837488448 837488448 614404937 430702950 430702950 429919590 429919590 693438089 693438089 887925637 887925637 537553440 837727880 837727880 813688775 485963686 223594024 915832595 915832595 836330714 836330714 785057872 746595331 956466106 956466106 513018462 612378834 738811285 1054503366 1054503366 816002370 897323316 897323316 292678400 292678400 131568034 539013376 539013376 42152016 539426896 539426896 177344580 177344580 181407744 181407744 48401156 415318112 421792038 889192638 889192638 708837525 508101163 823206784 1002206689 1002206689 876987725 876987725 1024975359 1024975359 552094721 575145012 692060325 734528693 734528693 738263040 738263040 554181633 778871524 778871524 714924264 198124804 174896512 56625704 403833600 403833600 279191670 200584778 138860676 959571463 1013586592 1065554455 1065554455 610870665 1020538299 1020538299 1013188144 1065095103 1065095103 481192536 481192536 310149710 182742232 182742232 313602624 313602624 129587048 129587048 121242392 109316928 26705408 48836232 48836232 39198866 54082064 108990298 310257626 310257626 303528032 346456392 920647131 920647131 396180768 875335184 875335184 607335177 457213114 1073560274 1073560274 792238577 970858215 975658727 975658727 792800168 792800168 292815703 501236114 501236114 456107642 456107642 188509358 392188180 392188180 810327330 816765506 816765506 469820568 469820568 411323396 436249630 503922710 503922710 258793752 258793752 162599040 162599040 43123236 46239056 175418256 175418256 208965576 215748492 224228066 449713390 449713390 447036524 447036524 906040325 906040325 483223626 543129680 543129680 427000290 427000290 675947205 675947205 616378185 362611911 830270828 830270828 811161387 488194223 487261228 563820129 568013669 690033344 690033344 541721057 541721057 142778028 142778028 693871192 693871192 227283796 816317763 919873770 950864437 950864437 554763264 314065344 325108146 1027349638 1027349638 568728033 427308043 320006043 766054660 930726538 930726538 545537322 662654578 662654578 151963188 185464116 185464116 166358116 193623060 195215416 195215416 111293600 78791098 88410154 103380354 103380354 343292160 343292160 92407776 92407776 336467914 546884475 546884475 194811178 565221701 565221701 55962288 63394464 63394464 672789516 887878530 887878530 829681636 947017320 947017320 887173456 1063455771 1063455771 1059925311 521473792 512110584 390609460 270942752 277259336 277259336 174203957 753874347 753874347 434186391 931896778 931896778 631134667 972426162 1008562521 1008562521 288704605 931515002 931515002 913318074 148236996 148236996 69838792 62779248 209954816 255539004 255539004 201955132 55069804 61344160 61344160 164885328 310707764 429731430 952436809 952436809 474030222 213923840 203622502 675954960 675954960 760378705 760378705 688980748 672186885 1057810373 1057810373 1015946319 1002196704 979419543 309827553 722746200 1007099479 1007099479 859838936 859838936 799052576 799052576 692224408 692224408 772137684 772137684 684786881 976519649 976519649 503181294 503181294 970141527 970141527 647192016 566164528 1042419939 1042419939 950856262 682460926 990194868 990194868 654320523 721124467 951570298 951570298 832099270 817305459 1037008970 1037008970 754265037 647393309 547098368 622621476 622621476 823267875 932053553 932053553 719868002 913766827 913766827 902633220 38526002 51507440 424106982 424106982 45300080 73540412 149297604 481744096 481744096 470757034 482870478 482870478 474953792 296746593 559164712 611919753 611919753 918582795 918582795 390478481 1000193024 1000193024 1007897064 1007897064 187875211 954970378 954970378 954820178 848116869 848116869 188082704 568225812 568225812 152836104 195167760 195167760 726140441 726140441 902836656 902836656 985190231 985190231 145791043 143005764 367754634 367754634 213947968 743068236 899219527 899219527 835782864 633739716 702681573 702681573 654183996 135265552 135265552 51031344 52383404 337967621 782956801 1009165663 1009165663 585516362 883112953 901252971 923033707 926805819 926805819 934358026 934358026 661137714 620549776 402639448 324962322 289366850 294200544 294200544 33231520 174301488 174301488 174772084 185388084 185388084 3435316 86897920 86897920 157874468 157874468 156187812 156445024 185872020 185872020 182306624 184929364 193741920 193741920 147892757 65573264 797711837 797711837 730017909 596849701 540238376 722448905 722448905 597586061 810102273 810102273 428212884 541104494 541104494 590499122 590499122 647406736 647406736 426998662 424024624 495531094 1028927114 1028927114 927804603 807277118 356655808 188752056 21045856 19155040 139104544 147535044 147535044 8666244 89198088 89198088 153103112 226492524 582501380 730333804 931161549 931161549 784868417 386524345 637965732 713081972 1061297471 1061297471 976284580 603290354 827849379 827849379 862040450 862040450 771752136 151216210 335421520 335421520 387320896 854121984 854121984 508036998 838860826 838860826 33556259 427819014 427819014 280895298 553691810 553691810 172151872 197132532 197132532 193131684 180884096 180884096 101332968 101332968 158008120 253755708 253755708 135792544 135792544 58247764 57080928 61548448 61548448 58210896 57600768 33468256 33468256 28069152 28508784 28508784 45088936 170918680 170918680 147850228 153206888 153206888 221442368 221442368 245708800 245708800 75698464 75706440 75706440 67809736 242785924 242785924 227041488 227041488 592646577 592646577 705716625 705716625 678477972 707892548 707892548 706949397 179425857 566646725 566646725 679328484 679328484 550759680 11799360 35128000 35128000 156763844 156763844 147326884 304704768 304704768 386951148 437330454 870278002 981467031 981467031 543584015 99272684 712811884 712811884 285532621 211366066 412218552 412218552 462107766 462107766 871562712 902172339 902172339 819358303 345209117 810557457 810557457 728038225 728038225 199044852 199044852 182991316 608321569 608321569 88215720 921770017 921770017 644957440 643425945 638666120 1014555417 1029866351 1029866351 606606080 687363905 816482180 816482180 95479711 962080392 962080392 235194396 841023656 841023656 585398576 839816259 992371304 1055947367 1055947367 59941166 20314704 841331639 997419283 997419283 891603243 989984824 989984824 715461128 68299093 0 699403444 699403444 197954405 28362784 721424096 721424096 164831280 230221836 809060836 881185481 905733857 1007817231 1007817231 918659516 745200908 745200908 787137561 787137561 634417660 634417660 720580861 720580861 347156520 275776386 230298414 435696928 435696928 300602858 96406700 239044752 239044752 572183865 581621337 813395914 1008897160 1008897160 898505804 721911917 721911917 231025512 586493029 702202794 868356339 958411162 958411162 424430368 502860168 502860168 420428838 350684924 390222523 913478067 913478067 721604661 775972992 775972992 576327173 576327173 63288928 707352084 707352084 341630979 372298954 893412186 893412186 671640704 1066255988 1066255988 966003303 966003303 470886505 981323162 1046029973 1046029973 1037702895 1037702895 1071781806 1071781806 533132872 345708798 655536725 1016258826 1016258826 855672403 855672403 581094769 70073441 319624822 319624822 682144020 714283124 714283124 455537932 404881672 808324374 810144310 810144310 683123193 761348220 761348220 585228753 495487045 672204354 672204354 320151632 320151632 524635286 524635286 88419496 88419496 516621358 516621358 119087384 119087384 86057784 122684473 133815436 637228984 637228984 544302449 119561785 30017904 40770960 915210960 915210960 981676225 981676225 941981782 716546752 1028188786 1028188786 441778438 441778438 242425742 172964696 115545640 89929192 89929192 89917376 89917376 6881472 553738497 553738497 537135105 484812994 307591701 408474960 991429174 991429174 916504923 916504923 875886666 1011194655 1011194655 1008767512 1008767512 1001574919 516034782 755381507 812325036 818358273 818358273 541407298 354011552 554484281 571919901 974674958 974674958 317460434 888144642 888144642 483825868 731058764 731058764 638929801 764175252 764175252 604604228 39930320 111417640 111417640 66978048 60342976 60342976 34824336 34824336 34426144 0 39593984 39593984 21155072 21155072 27923968 28312416 28312416 16304064 31118272 31118272 16024224 57870640 65769584 65769584 73898688 130701480 130701480 156296324 156296324 157686180 157686180 56807856 103334032 103334032 100927512 87216936 206173576 206173576 147444512 95771112 87822120 87822120 67370784 13400448 76181152 88830512 88830512 648625168 648625168 125307217 45132064 456899364 520790034 520790034 393604410 1027240808 1027240808 563887400 878807492 878891403 878891403 717707666 371335252 422175270 992551457 992551457 809091123 809091123 669033311 759433861 759433861 578666017 764799597 764799597 622234221 876177102 879889795 879889795 885129482 986236119 986236119 559255474 480411478 480411478 248067274 709485717 802013261 802013261 989628374 989628374 462545526 912438253 912438253 807477507 807477507 335573043 973688304 973688304 764182558 451861974 451861974 332239780 47944272 47944272 648000101 648000101 139668248 676069444 676069444 542396161 542396161 537993729 692015077 692015077 550687425 567086177 572654900 920459681 920459681 570104264 558326181 523051952 841449498 841449498 599923078 599923078 577521937 812278161 812278161 811936131 34407827 0 68426096 68426096 34999872 52353136 63182944 63182944 43329696 186052404 186052404 171389844 156854576 168002048 168002048 79038464 79038464 476066060 996527066 996527066 573143094 573143094 393471132 393471132 381885776 381885776 144914616 772045769 772045769 410715364 865785459 865785459 361833066 361833066 231413382 807965348 807965348 556972715 51105953 117747462 738353546 738353546 625010827 618967296 402663986 402663986 441723859 441723859 408958646 591998176 718614176 802246308 802246308 705774381 705774381 589064268 383774998 124778302 119551248 264282796 565262830 565262830 594759185 840183237 1027541252 1027541252 755503048 755503048 232804105 273154794 351112618 693438089 693438089 887925637 887925637 496050922 837727880 837727880 813688775 485963686 144844866 915832595 915832595 836330714 836330714 785057872 746595331 594288802 945333160 945333160 878257803 738811285 1054503366 1054503366 816002370 897323316 997434661 997434661 971449589 716913637 716913637 187446785 189399729 586809473 715129173 715129173 597300612 160698724 160698724 151389792 178520183 244124386 889192638 889192638 708837525 508101163 707274276 1002206689 1002206689 37984817 520730158 1024975359 1024975359 552094721 715129990 715129990 734528693 919448275 1007294189 1007294189 680136687 778871524 778871524 714924264 198124804 439475242 439475242 403833600 403833600 279191670 200584778 138860676 1065726532 1065726532 924244539 941891615 941891615 584901300 593874777 1013188144 1065095103 1065095103 229801692 138934404 827099772 827099772 797871736 816913252 816913252 691484738 279118912 51130160 51130160 50380112 48836232 48836232 52698384 54082064 108990298 310257626 310257626 43197826 346456392 920647131 920647131 274454034 875335184 875335184 607335177 457213114 1073560274 1073560274 795382145 970858215 975658727 1059553583 1059553583 798210558 798210558 501236114 501236114 456107642 456107642 188509358 392188180 826140968 826140968 816765506 816765506 402777314 402777314 432115910 436249630 503922710 503922710 258793752 258793752 441144330 441144330 253870248 447967258 447967258 175418256 208965576 215748492 215748492 131310816 131310816 155400356 235017380 235017380 223464744 223464744 372871762 378867550 394031342 394031342 279784338 415497860 999472276 999472276 264384700 726256244 726256244 205967240 219991676 219991676 215407308 69477136 36768008 215745348 215745348 142739460 142739460 693871192 693871192 233233808 233233808 229164396 706183516 706183516 234257857 196245412 156186348 1027349638 1027349638 858260787 659694041 405316115 348247426 874711323 874711323 545537322 662654578 662654578 151963188 185464116 185464116 166358116 193623060 195215416 195215416 111293600 16850976 16850976 16810112 75567200 343292160 343292160 92407776 92407776 1026503480 1026503480 193189498 960070214 960070214 320057693 55962288 63394464 63394464 906625426 906625426 308286491 118803000 947017320 947017320 276825504 820520162 820520162 521473792 1068931676 1068931676 202775327 62779248 565531329 565531329 770490636 770490636 753874347 434186391 669990901 669990901 670645519 783561544 1008562521 1008562521 134600239 931515002 931515002 913318074 292649028 148236996 43821300 61978720 61978720 35121892 19212576 287572106 287572106 373067338 373067338 339323792 339323792 544474624 544474624 484442574 578825360 578825360 270532866 276824356 276824356 252711044 81858700 81858700 80876232 365200770 365200770 1002196704 1002196704 979419543 165091104 651571012 651571012 646322265 375923496 647049413 799052576 799052576 692224408 692224408 772137684 772137684 661201829 976519649 976519649 191434043 489963937 489963937 647192016 647192016 121750505 82685672 26713448 92503176 101434368 607793466 607793466 654320523 654320523 134951940 134221988 436115126 531029751 1037008970 1070646015 1070646015 1057381056 420423798 622621476 622621476 823267875 932053553 932053553 719868002 913766827 913766827 902633220 333504712 513513206 881836869 881836869 102883608 102883608 85516960 793283992 793283992 726404277 257782313 333578274 333578274 590136137 590136137 572133946 572133946 918582795 918582795 390478481 1000193024 1000193024 1007897064 1007897064 187875211 954970378 954970378 954820178 848116869 848116869 188082704 662847888 662847888 652528633 652528633 640298480 726140441 726140441 548426676 817023577 985190231 985190231 145791043 143005764 367754634 367754634 213947968 840532512 899219527 899219527 256381619 977799190 977799190 758155563 758155563 705697459 122286404 68157960 68157960 337967621 782956801 1009165663 1009165663 174643480 877491299 877491299 358641896 298650594 295795442 364514658 661137714 661137714 620549776 402639448 133324800 84371008 84371008 38263704 14478208 75465160 182783824 200225100 260311164 260311164 262286480 262286480 122306020 157874468 185776820 195782000 195782000 192758048 192758048 420259586 420259586 294183466 423626952 427868262 944522057 944522057 797711837 826987327 826987327 540238376 722448905 722448905 839099103 839099103 651539657 360442842 915761783 915761783 590499122 590499122 647406736 647406736 426998662 424024624 495531094 1028927114 1028927114 927804603 807277118 356655808 188752056 62574688 66128832 139104544 147535044 147535044 164962532 164962532 69274348 94373932 144968004 582501380 730333804 931161549 931161549 784868417 386524345 476095923 476095923 369485850 976284580 976284580 603290354 827849379 827849379 651684400 771752136 771752136 9531712 335421520 335421520 387320896 387320896 854919171 854919171 314122998 220278284 220278284 513734976 513734976 280895298 819481768 819481768 559633985 548586340 197132532 190451012 180884096 180884096 101332968 101332968 158008120 253755708 253755708 135792544 205659496 249337248 249337248 61548448 61548448 24780192 24780192 33468256 33468256 28069152 17702432 14629920 3343328 5452416 5452416 13643840 13643840 76161024 221442368 221442368 245708800 245708800 75698464 75706440 75706440 67809736 67809736 86766888 227041488 227041488 184701344 150492800 179930624 179930624 138502800 707892548 707892548 706949397 179425857 9459008 9459008 7463808 62676608 62676608 29966208 56048160 56048160 156763844 198817778 198817778 304704768 306358533 355632730 539231890 1028142905 1031614383 1031614383 754936843 313366987 679586001 883591545 883591545 453100748 645157420 864016423 864016423 944528424 944528424 764082758 637353613 555937929 883123083 883123083 810557457 728038225 728038225 199044852 268655618 268655618 608321569 608321569 88215720 921770017 965235329 965235329 638666120 638666120 1014555417 1029866351 1029866351 606606080 687363905 808083313 808083313 835505379 962080392 962080392 748555389 841023656 841023656 321549801 641773856 992371304 1055947367 1055947367 429154506 59980082 841331639 997419283 997419283 580184837 989984824 989984824 957372416 446118486 943153686 943153686 672055397 672055397 564413504 139980544 187356388 187356388 565351777 740464680 740464680 690276645 688067924 918659516 918659516 745200908 812373709 870540408 870540408 576975249 470876178 236003868 328607598 328607598 423768806 423768806 282202818 13635586 0 0 67121152 105341952 105341952 125167832 125167832 1008897160 1008897160 262669659 179569492 205587264 217129932 217129932 238936620 417124038 417124038 424430368 424430368 502860168 502860168 420428838 350684924 223420436 891429182 891429182 589509025 775972992 775972992 76959137 12405840 63288928 299271968 299271968 864212256 864212256 864086978 864086978 671640704 675670149 675670149 625372308 625372308 292865350 292865350 449752279 737744797 908856503 908856503 1071781806 1071781806 204023052 565835261 774946021 1016258826 1016258826 855672403 855672403 581094769 838387683 838387683 393514073 682144020 714283124 714283124 455537932 404881672 60045616 60045616 544461280 683123193 683123193 373401685 822414440 822414440 497180675 294914658 889362849 889362849 419829934 419829934 274471950 89591438 224138432 224138432 948708200 948708200 653143676 143753928 737480833 737480833 186573761 573259163 573259163 356435386 344139338 915210960 915210960 897379632 941981782 941981782 859890033 1028188786 1028188786 441778438 441778438 291679096 291679096 288158306 297531234 297531234 280642816 24986304 24986304 553738497 553738497 985946762 985946762 936540063 162694262 991429174 991429174 916504923 916504923 875886666 1011194655 1011194655 760717570 449318944 449318944 516034782 516034782 378248330 378248330 345797888 354011552 354011552 251972784 251972784 394549160 394549160 317460434 888144642 888144642 483825868 731058764 731058764 610386860 610386860 99658168 99658168 39930320 111417640 111417640 66978048 60342976 60342976 34824336 34824336 34426144 24517536 52351872 54530560 54530560 44301776 63201504 63201504 42672624 4793472 46346624 64307728 64307728 63282464 44192016 52512048 52512048 70096392 70096392 156296324 156296324 157686180 157686180 56807856 87071360 100927512 100927512 87216936 206173576 206173576 147444512 95771112 87822120 87822120 71118600 71118600 76181152 88830512 88830512 648625168 648625168 593592448 596648321 596648321 580763744 400742496 400742496 393604410 921049563 921049563 878807492 878891403 878891403 717707666 474343566 422175270 992551457 992551457 809091123 809091123 669033311 759433861 759433861 578666017 597811569 597811569 619139096 619139096 138547332 744958208 885129482 885129482 878975436 950816257 950816257 480411478 217834632 709485717 802013261 802013261 989628374 989628374 475667590 912438253 912438253 158711419 302388736 302388736 973688304 973688304 140581248 141084036 141084036 67070716 112858128 287197576 501350792 501350792 429010112 354029710 538702793 605610287 605610287 275829992 951091972 951091972 630643305 630643305 696627822 920459681 920459681 558326181 840255694 840255694 462802095 551606472 599923078 599923078 577521937 812278161 812278161 811936131 666686552 666686552 664074777 579374600 34999872 52353136 52353136 56361984 56361984 186052404 186052404 171389844 159716021 555671073 580639393 580639393 813899591 813899591 476066060 506389258 573143094 573143094 393471132 393471132 137890724 917900747 917900747 856664640 856664640 410715364 410715364 296956770 361833066 361833066 231413382 86087560 340495112 340495112 273493122 271490 0 0 618967296 618967296 402663986 402663986 342132896 31865076 729888032 729888032 695745412 802246308 802246308 481111374 481111374 428138362 383774998 124778302 119551248 264282796 565262830 565262830 594759185 840183237 1027541252 1027541252 755503048 957186274 957186274 232804105 433397570 433397570 346691844 475675151 753863910 753863910 416549026 417944652 417944652 339921376 144844866 405223686 437989712 437989712 316879958 240173724 240173724 342270854 945333160 945333160 878257803 269038523 402075154 402075154 307569592 154228913 997434661 997434661 971449589 716913637 716913637 561784640 661819705 661819705 715129173 715129173 597300612 227539208 160698724 151389792 369748840 842226737 842226737 380633946 547365859 547365859 811859120 811859120 655521944 559271587 1013470701 1013470701 455255118 196269422 877725738 945771197 945771197 919448275 1007294189 1007294189 680136687 675024645 231523964 231523964 178271992 439475242 439475242 382644114 305993896 307311258 374257208 394324546 1065726532 1065726532 924244539 941891615 941891615 584901300 593874777 1037911732 1037911732 903111101 229801692 609526280 827099772 827099772 797871736 816913252 816913252 691484738 308155072 299577616 355074602 355074602 401954522 401954522 317988498 306750848 306750848 64163920 64163920 38871696 633739352 633739352 876441728 876441728 819617475 341187210 353900544 353900544 761792060 761792060 795382145 812667728 812667728 1059553583 1059553583 882914080 798210558 742523364 507806075 336017418 336017418 69269762 294401130 826140968 826140968 88630880 273413250 307249682 374091404 432115910 432115910 427987492 450076386 481997554 481997554 441144330 441144330 512439448 512439448 462128210 462128210 354432288 354432288 7390720 26715200 42782704 99606328 99606328 123550992 223464744 223464744 233868600 233868600 941744391 948211203 948211203 539812419 1006802509 1006802509 264384700 726256244 726256244 205967240 205967240 24548868 69477136 286827338 501575520 501575520 486725102 486725102 467661994 467661994 424796878 533485069 874512651 875200809 875200809 235853920 238532861 997583981 997583981 1012864062 1012864062 858260787 659694041 609511270 640817097 755433762 755433762 780804686 780804686 135725584 198136608 198136608 167243236 43775952 180511344 184706340 184706340 67787510 49643944 49643944 117943594 351399384 351399384 96033736 96033736 127402072 1026503480 1026503480 463740183 960070214 960070214 780431158 453222768 453222768 46009170 906625426 1054731088 1054731088 917904219 917904219 1055941575 1055941575 820520162 820520162 1066453488 1068931676 1068931676 998639886 849354775 849354775 565531329 770490636 770490636 414237510 414237510 424858166 446320364 670645519 670645519 839110165 839110165 111099919 37582160 512613706 512613706 292649028 166859748 143106656 281305508 472973692 472973692 275780376 287572106 287572106 373067338 373067338 642095139 1006856560 1006856560 562562285 562562285 638443732 638443732 270532866 547405888 649103200 738358361 738358361 759095085 759095085 745673613 745673613 738458221 294497130 876973104 888617931 888617931 651571012 646322265 871504148 871504148 647049413 621851640 621851640 608451984 608451984 108005713 91759872 91759872 117718080 117718080 75319896 71567496 113577288 113577288 52638080 746160624 746160624 144871757 101434368 519786784 519786784 935535668 1017853144 1017853144 833226234 700876280 531029751 989347526 1070646015 1070646015 1057381056 858180114 680772181 430338125 254420324 143349412 305136146 373833904 373833904 352896042 333504712 333504712 513513206 881836869 881836869 291845158 274952194 273032834 793283992 793283992 726404277 420126368 333578274 333578274 590136137 860398218 860398218 660168874 442115654 797229884 797229884 697383018 5964568 4268160 4202624 4194432 11265856 684310340 715171396 715171396 48871380 39454097 662847888 727453800 727453800 690943945 640298480 624682029 558586512 224604588 147584196 147584196 424418348 424418348 417782214 260738490 688401890 688401890 895591906 895591906 856286259 104857688 977799190 977799190 805576265 805576265 705697459 757254181 757254181 777194676 777194676 554014265 345911830 773041293 773041293 605381909 574729108 471805044 471805044 364852996 847398715 847398715 929715996 929715996 940184719 1027901711 1073473751 1073473751 946663111 955178439 955178439 554036594 450718070 450718070 334347744 467826456 467826456 122306020 141252304 218518344 218518344 195782000 193251444 192758048 420259586 420259586 294183466 423626952 427868262 944522057 944522057 766035309 826987327 826987327 475193312 413713734 716540438 839099103 839099103 651539657 360442842 915761783 915761783 905745888 713294068 937828821 937828821 725694958 86721554 14926496 69375368 69375368 17965312 67310120 67310120 200945220 200945220 171041556 171041556 195373428 195373428 164962532 164962532 69274348 234962952 234962952 771796996 771796996 657088776 657088776 539525504 541639809 541639809 369485850 369485850 390184975 587276337 809574587 809574587 653714312 651684400 385941506 277154912 277154912 97332456 365503722 365503722 293605640 854919171 854919171 454035280 372539450 220278284 513734976 513734976 279975968 819481768 819481768 559633985 548586340 190451012 190451012 55708976 264504012 264504012 261360168 227709420 227709420 170265256 170265256 212064065 650088257 650088257 600743889 577335488 560435745 560435745 561059712 561059712 557451009 557451009 589373745 599878136 599878136 264435828 264435828 138498080 138498080 76161024 185184328 263111740 263111740 75509096 120725840 120725840 46810920 207119780 207119780 192005020 177216452 719199957 719199957 43270545 572104849 572104849 683885088 701756133 701756133 28029701 687753441 687753441 716452452 716452452 585901776 47299328 56048160 56048160 61485920 198817778 198817778 215581064 910455052 910455052 539231890 1028142905 1031614383 1031614383 754936843 313366987 679586001 883591545 883591545 573646675 645157420 864016423 864016423 944528424 944528424 764082758 637353613 555937929 883123083 883123083 787859970 450706266 288523424 288523424 274324096 274324096 27201056 45855520 45855520 305798208 965235329 965235329 510197928 510197928 873506049 873506049 258644984 835135792 835135792 808083313 808083313 835505379 835505379 677403698 748555389 748555389 692371735 321549801 334465401 334465401 392229506 472023100 472023100 264740924 264740924 973599318 973599318 646590494 714235907 957372416 957372416 446118486 943153686 943153686 672055397 672055397 564413504 139980544 187356388 205656512 565351777 565351777 236951004 708358920 708358920 12262002 307311413 877432964 1007606799 1007606799 870540408 470876178 470876178 866395609 866395609 410204806 423768806 423768806 700856449 700856449 566020811 424454152 661677233 661677233 604770153 604770153 865404834 987274064 987274064 815318211 746198475 536925953 217129932 738561217 868487588 868487588 925145408 925145408 458019392 182619566 125878392 230771648 230771648 268857508 285261858 543219795 543219795 77625464 584321521 584321521 96912136 544294481 544294481 887182368 887182368 864212256 805847210 845226249 845226249 574619731 621315326 625372308 625372308 218992809 135332364 202383876 739327492 739327492 202312201 65840637 65840637 204023052 565835261 774946021 982995222 982995222 623977257 391962755 580396458 838387683 838387683 393514073 348520880 999606903 999606903 816470175 816470175 951829622 951829622 574381429 574381429 893911842 893911842 822414440 822414440 497180675 248633554 889362849 889362849 419829934 419829934 274471950 181926612 224138432 224138432 948708200 948708200 653143676 143753928 737480833 737480833 52060384 573259163 573259163 356435386 344139338 361420800 897379632 897379632 554677882 859890033 859890033 542130544 324357186 324608818 324608818 291679096 291679096 288158306 297531234 297531234 280642816 84390784 24986304 31870273 546589184 985946762 985946762 936540063 813752733 519119838 517166334 404117764 608669954 740368653 1066803965 1066803965 946174273 440849440 440849440 281414224 318818550 449593952 449593952 215493456 111743048 111877713 572003357 572003357 634130436 634130436 210504780 703071712 703071712 756174952 756174952 708421245 778770417 778770417 700721389 656785924 125126336 125126336 30409440 7346528 47275200 47275200 13542096 151552 33734688 33734688 52351872 54530560 54530560 44301776 63201504 63201504 42672624 4793472 179976020 179976020 64307728 163142208 163142208 153491748 79216784 89959760 171524880 184862772 220761368 220761368 53601072 50881440 56328976 56328976 34632464 34632464 79971136 79971136 20852736 20852736 17511456 69535232 71118600 71118600 12051208 11636608 11636608 11533632 586297857 593592448 596648321 596648321 580763744 400742496 400742496 390644922 921049563 921049563 638131392 616896649 585709721 474343566 474343566 110624150 34685700 705249548 705249548 609544249 536871684 136315425 17826304 553937232 597811569 597811569 272349185 773084314 978659991 978659991 744958208 1020416405 1020416405 950816257 950816257 1052483600 1052483600 965994199 965994199 692635264 243477216 475667590 475667590 697648938 697648938 326844082 562440178 761320765 761320765 790889891 790889891 408220108 408220108 338074252 112858128 287197576 501350792 501350792 429010112 354029710 538702793 605610287 605610287 275829992 951091972 951091972 630643305 630643305 696627822 696627822 587202582 587202582 840255694 840255694 322986130 322986130 101175304 413302972 413302972 188354758 383465050 620917009 666686552 666686552 664074777 579374600 241313942 239674524 441072648 441072648 301999062 433612720 433612720 63598592 159716021 555671073 580639393 580639393 813899591 813899591 606485768 904707272 960397824 960397824 675846307 494614446 494614446 917900747 917900747 856664640 856664640 412614658 412614658 144180804 144180804 268437062 268437062 86087560 340495112 340495112 744036494 744036494 169874740 459479444 459479444 975430336 975430336 197134592 197134592 31865076 729888032 729888032 695745412 695745412 604580432 169624576 169134612 202165260 202165260 100663320 100663320 117514296 117514296 517842276 517842276 726295228 726295228 634135201 634135201 957186274 957186274 746866405 698962533 698962533 366670144 475675151 753863910 753863910 405086242 28911456 23102496 23102496 17318304 1045558045 1045558045 774603586 711199888 171167908 207997868 207997868 539099392 539103489 539103489 104491328 130023288 130023288 87713720 57273064 41287712 1196032 25167888 33816672 33816672 561784640 661819705 661819705 112788865 76072008 227539208 227539208 111286992 87015976 369748840 842226737 842226737 380633946 547365859 547365859 811859120 811859120 518377516 559271587 1013470701 1013470701 383186722 135927300 877725738 945771197 945771197 794151068 399081506 176662400 176662400 200570148 200570148 178271992 178271992 177708080 299953070 411952588 430490982 513424566 513424566 1031992862 1071958527 1071958527 947034927 900033350 900033350 856686929 571476524 1037911732 1037911732 914375411 752788800 609526280 609526280 496509248 496509248 414713670 354488294 350693506 308155072 299577616 355074602 355074602 401954522 401954522 317988498 306750848 306750848 126617760 64163920 38871696 633739352 839515825 876441728 888209611 888209611 886151587 827092403 582685870 943851202 943851202 368575925 812667728 812667728 914372132 914372132 882914080 742523364 742523364 507806075 443612126 532278734 532278734 136858636 541797096 822719561 822719561 605859426 307249682 339924026 339924026 101339192 156103490 450076386 481997554 481997554 80952450 80952450 512439448 512439448 462128210 462128210 354432288 354432288 203085324 129221560 129221560 99606328 99606328 123550992 256403200 256403200 233868600 233868600 941744391 948211203 948211203 967065956 1006802509 1029231375 1029231375 630462981 331218592 331218592 771074728 771074728 925707579 925707579 923018496 501575520 486725102 486725102 467661994 467661994 424796878 533485069 874512651 875200809 875200809 235853920 718602712 997583981 997583981 1012864062 1012864062 523340235 609511270 609511270 640817097 679022743 679022743 780804686 780804686 105342864 198136608 198136608 167243236 43775952 180511344 184706340 184706340 67787510 49643944 49643944 117943594 351399384 351399384 96033736 96033736 127402072 311309614 463740183 630261024 698272280 780431158 780431158 453222768 453222768 238448740 272196610 1054731088 1054731088 917904219 917904219 1055941575 1055941575 610296584 542237313 1066453488 1066453488 998639886 998639886 849354775 849354775 56885344 48499152 70888888 70888888 282125208 386610234 386610234 581081552 581081552 839110165 839110165 590655147 537893504 729736354 729736354 166859748 166859748 143106656 281305508 472973692 476295932 476295932 342265024 346740042 346740042 340084480 642095139 1006856560 1006856560 562562285 562562285 638443732 638443732 362333699 547405888 649103200 738358361 738358361 847507539 847507539 745673613 745673613 738458221 622409984 876973104 888617931 888617931 442514479 619580946 871504148 871504148 519208970 460506056 366481480 608451984 608451984 108005713 91759872 91759872 117718080 117718080 73244496 73244496 54813616 54813616 52638080 746160624 746160624 952172561 952172561 468918302 468918302 1051796126 1051796126 1017853144 833226234 700876280 251685988 989347526 989347526 918096684 918096684 858180114 680772181 641760000 151126082 143349412 874710753 1051372802 1051372802 729193911 605865916 52880434 27484256 451942864 451942864 291845158 274952194 273032834 301090116 301090116 553960754 553960754 576062946 853019175 853019175 860398218 860398218 660168874 442115654 797229884 797229884 697383018 646187097 646187097 714392981 743686485 743686485 698065360 684310340 169286277 49733392 49733392 121786992 727453800 727453800 690943945 170256660 369754382 369754382 224604588 407695640 407695640 424418348 424418348 417782214 430100838 845212721 845212721 895591906 895591906 421609523 319364240 311861125 518832490 805576265 805576265 228251950 757254181 757254181 777194676 777194676 593243696 593243696 773041293 773041293 605381909 574729108 471805044 471805044 364852996 847398715 847398715 929715996 929715996 940184719 1027901711 1073473751 1073473751 946663111 955178439 955178439 554036594 450718070 450718070 334347744 467826456 467826456 109485520 109485520 218518344 218518344 193251444 193251444 93620796 17302016 17302016 416843467 416843467 147621079 755008832 766035309 766035309 707269905 931660300 931660300 634929707 138504071 275456961 837932823 977987126 977987126 250849854 905745888 905745888 713294068 937828821 937828821 725694958 402690676 402690676 299893218 46211700 424805692 424805692 394794736 200945220 200945220 255527798 255527798 977809545 977809545 730957505 1069881035 1069881035 1034946592 506540383 771796996 771796996 723006512 539066752 808091666 1008407574 1008407574 942671388 682632485 390184975 587276337 809574587 867293986 867293986 844554838 844554838 715274610 277154912 97332456 365503722 365503722 350234688 268698370 530129340 530129340 466462678 216187148 216187148 279975968 279975968 288416714 288416714 47992128 11455616 919808 154742528 154742528 264504012 264504012 261360168 227709420 227709420 170265256 170265256 212064065 650088257 650088257 725794740 725794740 572522001 560435745 561059712 972504039 972504039 557451009 589373745 599878136 853606855 964960495 964960495 287392049 717443074 717443074 708939962 263111740 263111740 180962356 179842496 120725840 46810920 207119780 207119780 192005020 177216452 719199957 719199957 174900096 572104849 572104849 168705749 52856036 175236896 192125588 687753441 687753441 716452452 716452452 585901776 62947504 52338144 52338144 22754464 166850720 166850720 215581064 910455052 910455052 421644456 486884392 944596144 944596144 757550516 757550516 558080256 866600337 866600337 573646675 186374192 186374192 50787892 472606886 472606886 98827720 345594298 345594298 516333900 516333900 417720774 164553474 288523424 341516232 358430464 358430464 338759594 338708736 336879754 273660160 406008066 834218510 834218510 600445545 895287415 895287415 843129088 843129088 835135792 84864675 877663232 878319243 935397371 935397371 512282780 512282780 114504408 136359979 484556921 484556921 799035877 799035877 472023100 264740924 804807005 804807005 370192706 1059812161 1059812161 731052048 731052048 1028862606 1028862606 604642440 604642440 285625350 151180324 407667942 407667942 205656512 205656512 236951004 236951004 708358920 708358920 221588268 221588268 877432964 1007606799 1007606799 808077653 808077653 585105691 933760453 963584757 963584757 866743412 866743412 700856449 700856449 566020811 424454152 661677233 661677233 604770153 604770153 951153354 987274064 1011680333 1011680333 772368071 606205449 205304512 738561217 868487588 868487588 925145408 925145408 458019392 182619566 125878392 230771648 230771648 268857508 285261858 543219795 543219795 94443824 584321521 584321521 545843200 544294481 544294481 887182368 887182368 805847210 805847210 845226249 845226249 806388491 806388491 760269027 1015104262 1015104262 812173927 542953091 761605254 824643210 824643210 432227012 927407088 927407088 778986697 192813531 84158472 84224040 90442024 90442024 88418472 34603536 105906560 348520880 348520880 999606903 999606903 948339192 955025351 955025351 951829622 574381429 574381429 893911842 893911842 753984503 746606495 405690695 248633554 815279509 815279509 867034402 937628263 937628263 181926612 421269030 852495029 852495029 712320717 712320717 653905540 890577020 890577020 355331370 302097322 343109760 343109760 337811722 337811722 287928362 291576384 345171074 345171074 336879616 124646040 124646040 93975032 34811240 90426656 101583032 101583032 81266376 81266376 84390784 84390784 71632016 573605520 573605520 546589184 527517008 817569960 981071063 981071063 517166334 461424512 608669954 740368653 1066803965 1066803965 946174273 440849440 440849440 278437412 318818550 449593952 449593952 215493456 111743048 111877713 572003357 610537256 639763801 762582689 762582689 696254565 94897792 756174952 756174952 983573378 983573378 778770417 700721389 656785924 125126336 125126336 118767672 353176066 353176066 127174704 302270514 302270514 33734688 33734688 18780208 17967936 17696352 9120000 16377792 25174048 25174048 11608896 179976020 179976020 53218608 163142208 163142208 244238472 244238472 181015764 171524880 184862772 220761368 220761368 21494928 85480360 85480360 13495488 29370400 94453952 94453952 79971136 25615384 121243768 127142520 127142520 90517496 90517496 69373216 75526624 75526624 78634792 78634792 106152472 114242200 480033900 480033900 329203450 96957178 528194388 528194388 638131392 638131392 616896649 779158281 783680016 1053129171 1053129171 941689669 941689669 841557267 841557267 536871684 593741748 593741748 104626827 892421641 964855377 964855377 773084314 978659991 978659991 712122625 1020416405 1020416405 572386142 782362271 1052483600 1052483600 965994199 965994199 681242864 410893345 555630292 555630292 865499532 865499532 378602840 562440178 761320765 761320765 790889891 790889891 408220108 408220108 338074252 86168704 294274242 366481474 366481474 89442984 89442984 84825728 79043400 210510216 210510216 93863936 68416034 542662744 542662744 587342984 1040204406 1040204406 957517867 411172867 88344744 941769501 941769501 1048631400 1048631400 671121488 188354758 383465050 383465050 381224650 57218512 373359914 373359914 502739496 502739496 441072648 441072648 301999062 433612720 433612720 185047604 147836389 157559987 319653958 356948670 356948670 903967209 903967209 904707272 960397824 960397824 675846307 494614446 670679931 1071673520 1071673520 554268289 457839798 412614658 412614658 195658356 195658356 268437062 268437062 592451512 659235505 659235505 744036494 744036494 169874740 459479444 459479444 975430336 975430336 35845600 23139280 27472224 721770032 721770032 700513476 700513476 604580432 436478550 436478550 402982422 319875236 726737584 1002447805 1002447805 1046482437 1046482437 563872294 726295228 726295228 270374177 49078464 564456256 764952865 764952865 698962533 703997153 703997153 73828906 9596000 10552864 28911456 28911456 549499139 549499139 425088740 1045558045 1045558045 774603586 711199888 232413384 359347222 404864650 404864650 236583700 506947970 506947970 207036928 151130148 84017164 159425553 722845989 722845989 679805189 722241989 722241989 550374800 672851136 672851136 715129173 715129173 569617188 201550808 259892264 259892264 138154628 411022154 411022154 81314056 390669560 390669560 130082290 518377516 518377516 422075334 772115208 808141643 808141643 690037002 690037002 270537487 794151068 794151068 231965064 162788196 95630184 200570148 200570148 76169312 177708080 177708080 299953070 411952588 430490982 513424566 513424566 1031992862 1071958527 1071958527 947034927 935855355 856686929 856686929 587801649 571476524 914375411 914375411 752788800 611797141 623637577 968471598 968471598 815344300 1071448676 1071448676 179307796 179307796 146278212 143266560 26875488 93984360 106909856 106909856 126617760 126617760 396573688 396573688 368246874 839515825 873223040 888209611 888209611 886151587 827092403 851330964 943851202 943851202 920575707 920575707 577916234 970461583 970461583 152764507 1019822491 1019822491 487146368 487146368 532278734 532278734 368249410 541797096 822719561 822719561 605859426 323486960 349130466 349130466 101339192 302187306 302187306 31618136 162144640 407065934 407065934 216007116 285413498 285413498 42583122 188477752 264849381 264849381 196670633 152447716 582831965 737871545 737871545 707631629 730266656 730266656 784914985 784914985 982041316 982041316 967065956 967065956 1029231375 1029231375 630462981 331218592 331218592 771074728 771074728 925707579 925707579 923018496 616870667 616870667 812888718 856157163 1042370903 1042370903 922913297 935120820 935120820 262094460 262094460 718602712 718602712 224606421 550765518 550765518 446694183 545669409 545669409 136383392 136383392 180694004 180694004 709245541 709245541 139854500 106567320 106567320 94024736 231409224 231409224 230871276 104384280 104384280 75801504 75801504 21366784 77400384 77400384 10759752 101318912 942778956 942778956 780982383 630261024 490682201 386158392 386158392 229141854 238448740 238448740 230112108 153977625 249428580 265544872 597414949 610296584 610296584 542237313 740405896 740405896 683722276 652659119 652659119 634395591 290493131 48499152 70888888 70888888 282125208 386610234 386610234 581081552 581081552 48784784 590655147 590655147 537893504 729736354 729736354 10072132 9961984 67317768 229892872 229892872 476295932 476295932 523797278 523797278 411438216 874893314 874893314 270917769 6553600 7938304 607732224 607732224 605078025 362333699 288069546 346129168 366003770 366003770 847507539 847507539 382620321 85933608 622409984 622409984 605042386 605042386 598872945 153753604 449184578 449184578 541304175 942244051 942244051 921472699 921472699 123607115 935991659 935991659 546375176 546375176 363329898 363329898 401411508 401411508 675486962 889327659 889327659 562245899 952172561 952172561 694732197 728891860 1051796126 1051796126 1012011362 29934592 356389380 356389380 948814117 948814117 918096684 918096684 515845247 641760000 641760000 961570143 961570143 874710753 1051372802 1051372802 729193911 605865916 398588678 462644862 509203006 509203006 433482054 433482054 145137376 300435172 300435172 553960754 553960754 728301891 853019175 853019175 821022592 821022592 8191427 0 0 107812418 215411023 646187097 646187097 714392981 743686485 743686485 698065360 543735953 550683153 550683153 169513533 169513533 687100496 687100496 744739321 744739321 633524457 608079840 170630296 407695640 407695640 432409836 432409836 409344390 430100838 980166916 980166916 725840355 309822720 859856964 859856964 585899575 887250180 887250180 241965288 241965288 442419680 456705846 676406432 676406432 709239830 906088583 1044922399 1046757453 1046757453 105383064 105383064 118362320 118362320 97258728 46275640 971734816 975504891 975504891 890889771 881988171 881988171 439427926 439427926 371417370 839038664 839038664 54925626 36250896 116458764 161746660 161746660 243600460 243600460 67805552 67805552 261465648 261465648 434422754 434422754 416843467 416843467 408472744 907280497 907280497 206022188 657003937 931660300 931660300 634929707 138504071 275456961 837932823 977987126 977987126 587326641 539001120 178381140 178381140 291522594 291522594 285261858 402690676 402690676 299893218 102891544 424805692 424805692 394794736 493021198 493021198 422936962 255527798 977809545 977809545 730957505 1069881035 1069881035 1034946592 506540383 506540383 723006512 723006512 523285048 808091666 1008407574 1008407574 942671388 682632485 261194865 634290688 722751050 867293986 867293986 844554838 844554838 715274610 18486816 291116704 291116704 452212418 452212418 334561524 530129340 530129340 466462678 291978608 422811670 436229648 436229648 86265824 91173928 130551100 130551100 28709500 154742528 154742528 255930652 255930652 146090820 224395680 224395680 126518848 126518848 140640404 140640404 55607696 966001666 966001666 698093157 268962407 548743526 972504039 972504039 581446288 581446288 575800147 853606855 964960495 964960495 287392049 717443074 717443074 708939962 587928621 243979356 634208120 634208120 590822609 585629184 585629184 67801184 75781408 184159760 192814388 192814388 180692164 180692164 47459924 52856036 52856036 175236896 192125588 192125588 193892448 193892448 59564400 62947504 62947504 39739584 64560756 146977844 458912868 458912868 397074733 699132119 1062570401 1062570401 1061600559 957875751 944596144 879616357 879616357 457113275 841591189 996672951 996672951 932234267 932234267 704290496 724568942 724568942 385879066 345594298 345594298 516333900 516333900 417720774 295755808 295755808 341516232 358430464 358430464 339831424 339831424 336879754 280171398 406008066 834218510 1037267911 1037267911 942735639 895287415 843129088 843129088 642269587 880350353 880350353 878319243 935397371 935397371 296285419 322048818 429781294 826741898 826741898 484556921 799035877 799035877 350386960 246582008 804807005 804807005 370192706 1059812161 1059812161 974125857 974125857 1028862606 1028862606 441266735 335950876 726164708 726164708 567012517 436575351 2098896 49809360 231511800 231511800 105583048 674513894 908405195 908405195 376779707 359607194 612929568 808077653 808077653 585105691 933760453 963584757 963584757 866743412 866743412 509684914 468583326 272709220 272709220 188424296 172586356 172586356 509277256 951153354 951153354 1011680333 1011680333 772368071 606205449 205304512 205304512 204969832 184985796 439829262 439829262 226071000 502905228 502905228 405798150 340241546 230771046 38203804 21874952 105288880 105288880 63975504 545843200 545843200 597712304 597712304 628073272 628073272 576642705 351740464 351740464 743704696 806388491 806388491 760269027 1015104262 1030934272 1031345855 1031345855 761605254 824643210 824643210 432227012 927407088 927407088 1002387346 1002387346 1045298810 1045298810 652824129 274527251 614149930 887989475 887989475 356451561 348438816 354207008 354207008 948339192 955025351 955025351 367186410 524509524 524509524 424165408 439945004 524029758 524029758 201628230 196504660 720520075 720520075 867034402 937628263 937628263 210478208 421269030 852495029 852495029 712320717 712320717 653905540 890577020 890577020 355331370 302097322 343109760 343109760 547508961 547508961 564042337 564042337 595333041 599448033 672264284 672264284 779473728 779473728 638336456 135572136 71418632 73354120 73354120 23536000 23536000 75644930 268472392 573605520 573605520 527517008 527517008 817569960 981071063 981071063 810527042 810527042 551585473 494133515 159383652 751635716 751635716 232732156 43127376 43127376 38328000 8433728 64771320 109373368 109373368 110424472 110424472 610537256 639763801 762582689 762582689 696254565 89146317 688930912 688930912 983573378 983573378 172615146 517881178 517881178 263310194 89950352 118767672 353176066 353176066 127174704 302270514 302270514 34899968 37897744 42763904 42763904 4329600 4489152 16377792 35955216 35955216 175642304 175642304 53218608 53218608 15270928 43256400 244238472 244238472 187098896 187098896 54254468 123118120 123118120 21494928 85480360 85480360 13495488 13911880 94453952 94453952 26476672 25615384 121243768 127142520 127142520 90517496 90517496 69373216 75526624 75526624 78634792 78634792 238303820 238303820 480033900 480033900 329203450 164217336 528194388 684325015 684325015 381107034 468335525 881733770 881733770 1053129171 1053129171 941689669 941689669 841557267 841557267 555539472 893176897 893176897 808588035 892421641 964855377 964855377 655549246 817810305 817810305 205599496 653266453 653266453 572386142 782362271 782362271 742437968 337285705 681242864 1070650052 1070650052 555630292 555630292 865499532 865499532 378602840 38013018 350298570 350298570 304363602 304363602 111284482 6556032 88512640 88512640 294274242 366481474 366481474 352395306 352395306 796509463 796509463 685641583 299982568 956866692 956866692 910419001 910419001 738210586 1040204406 1040204406 1060245663 1060245663 402801211 991068343 991068343 1048631400 1048631400 671121488 109183544 118493272 118493272 271859200 285550626 419377006 419377006 502739496 502739496 78854374 17303552 17566752 157343412 185047604 185047604 164034976 223399104 319653958 356948670 356948670 903967209 903967209 427430308 2097408 10518528 10518528 8437824 670679931 1071673520 1071673520 554268289 751912398 152706288 193060980 195658356 195658356 260550784 260550784 592451512 659235505 659235505 593764657 503615550 323145906 324483762 605265801 605265801 305919762 305919762 23139280 27472224 721770032 723248436 723248436 700513476 848872470 848872470 839968851 675082002 319875236 726737584 1002447805 1002447805 1046482437 1046482437 685034181 685034181 17353409 635892213 635892213 564456256 764952865 764952865 631800288 703997153 955796321 955796321 885514696 885514696 280673090 296235362 549499139 549499139 425088740 949093317 949093317 668752719 668752719 232413384 708624217 708624217 714461816 714461816 506947970 506947970 606017053 606017053 572531752 572531752 722845989 722845989 679805189 722241989 722241989 550374800 672851136 672851136 715129173 715129173 569617188 211359288 259892264 259892264 152870924 411022154 411022154 78888640 273163634 273163634 54218976 457827510 457827510 414237510 772115208 808141643 808141643 690037002 910982652 910982652 542688897 393117922 393117922 643168965 643168965 902095272 902095272 558218344 263217728 84105352 102844928 102844928 10660112 149853508 149853508 4507776 915561170 915561170 1014499103 1014499103 692126933 587801649 587801649 122498232 323497191 568411337 777599534 777599534 623637577 968471598 968471598 815344300 1071448676 1071448676 268509186 302198612 370486014 426705282 426705282 358745514 388675472 388675472 377096704 393099706 396573688 396573688 668186944 668186944 560388480 560388480 95020392 95020392 17998464 851330964 851330964 616488772 920575707 920575707 577916234 970461583 970461583 190842128 1019822491 1019822491 487146368 487146368 280003520 368249410 368249410 277685290 277685290 320517810 320517810 323486960 349130466 349130466 26740320 302187306 472913034 472913034 361216842 407065934 488313004 518173266 518173266 485020096 378233760 474072156 474072156 776211792 776211792 152447716 582831965 737871545 737871545 707631629 730266656 730266656 784914985 784914985 982041316 982041316 965003367 954573191 954573191 347841098 347841098 137763588 2567172 158673584 467731462 467731462 738533810 885795681 885795681 616870667 812888718 856157163 1042370903 1042370903 922913297 935120820 935120820 437291868 262094460 782294480 782294480 38271120 38271120 45611552 45611552 545669409 545669409 714166980 714166980 180694004 180694004 709245541 709245541 139854500 264842452 264842452 256912124 235938368 234987548 230871276 104384280 104384280 75801504 75801504 11994880 129364280 129364280 80302608 78653004 942778956 942778956 780982383 606600489 490682201 386158392 386158392 229141854 35128848 34079232 153977625 153977625 249428580 249428580 597414949 597414949 64192981 33554448 133904840 683722276 683722276 652659119 652659119 634395591 608407649 538413280 538413280 35199985 656341369 864156352 869765747 869765747 312243073 807754945 807754945 635357074 887362932 887362932 1020350116 1020350116 610011532 404554052 338439960 379864192 425800496 425800496 523797278 523797278 411438216 874893314 874893314 270917769 216716748 216716748 717032210 717032210 605078025 422600965 292128554 292128554 12134208 914240304 944973995 944973995 557730911 233907180 884090380 895096491 895096491 76947179 457048200 460066230 460066230 431358954 541304175 942244051 942244051 921472699 921472699 190323814 935991659 935991659 546375176 546375176 363329898 363329898 401411508 401411508 675486962 889327659 889327659 562245899 632005005 694732197 1066938584 1066938584 770704365 1012011362 1012011362 70568712 356389380 356389380 948814117 948814117 549248000 549248000 344663304 496065034 509620737 961570143 961570143 590979655 567411696 295858400 304793848 315369850 398588678 462644862 509203006 810874014 935842617 935842617 1001659046 1001659046 594561411 566286343 566286343 728301891 728301891 593586741 821022592 821022592 643737253 948176967 1071417295 1071417295 736263993 736263993 111859032 113381488 122753128 122753128 173053317 543735953 550683153 550683153 205132320 205132320 687100496 687100496 744739321 744739321 633524457 608079840 222872748 267287836 267287836 432409836 528615512 528615512 256850078 980166916 996352403 996352403 440218289 859856964 859856964 860521767 887250180 887250180 897073481 897073481 783194039 783194039 877844652 877844652 709239830 906088583 1044922399 1046757453 1046757453 570529412 497065236 818288428 818288428 280629969 147752226 971734816 975504891 975504891 907779712 910551195 977582235 977672343 977672343 371417370 839038664 839038664 321275918 321275918 287568162 269769644 161746660 243600460 243600460 177997848 228402796 261465648 261465648 434422754 434422754 9250304 298100266 408472744 907280497 907280497 290632544 825455197 973420066 973420066 891341902 891341902 257399847 950862758 950862758 728301844 673427712 673427712 503345266 146244420 517216632 517216632 467929590 427870608 59786752 42517584 102891544 361935264 361935264 378643168 493021198 493021198 422936962 229753712 229753712 431278950 625189216 625189216 622916025 123732408 193272248 193272248 567741196 598162648 765182216 765182216 587461652 587461652 221372516 221372516 270658336 634290688 634290688 92980424 90232122 392718490 392718490 187429120 186740966 291116704 435998694 452212418 452212418 404799750 404799750 258159036 462424676 462424676 422811670 521179178 521179178 338317390 129373600 130551100 130551100 28709500 197142816 197142816 255930652 255930652 48760432 224395680 224395680 126518848 126518848 180852609 660432341 959262143 966001666 966001666 698093157 566237953 288560102 972558082 972558082 581446288 581446288 575800147 424677563 31457760 411395138 411395138 780909706 780909706 587928621 587928621 179515533 634208120 634208120 590822609 585629184 585629184 206779020 201538980 201538980 192814388 192814388 180692164 180692164 59518368 27263328 27472224 47481024 50864416 50864416 9826656 33672320 33765648 33765648 57388384 61754528 64560756 146977844 458912868 458912868 397074733 699132119 1062570401 1062570401 1061600559 957875751 946538158 879616357 879616357 332201296 841591189 996672951 996672951 932234267 932234267 704290496 724568942 724568942 385879066 131976256 294252296 294252296 15273728 14214336 295755808 295755808 268558664 268558664 17137794 339831424 339831424 1048576 280171398 435278400 687976974 1037267911 1037267911 942735639 897518649 897518649 359459887 598906696 880350353 890917088 890917088 618725587 159981612 686891364 686891364 723077888 826741898 826741898 430360719 392376762 511021402 511021402 267524088 267524088 521542086 521542086 471735822 651941950 974125857 974125857 941692216 504050751 168770660 327942150 726164708 734110017 734110017 436575351 72355008 139986060 200279780 200279780 87145024 674513894 908405195 908405195 376779707 359607194 437984930 437984930 220475542 499846394 499846394 110642584 157421988 297947841 543650004 567653368 888193995 888193995 886148911 594741141 594741141 172586356 559943809 720526808 740085261 740085261 745833793 745833793 573836049 100944985 45928272 143835287 175235988 853623367 853623367 671099392 502905228 502905228 405798150 340241546 251426754 829461259 829461259 673540860 673540860 616759585 660905608 660905608 597712304 597712304 638061129 638061129 643177177 811728937 822782611 822782611 775741776 408347772 324679604 901370816 1030934272 1031345855 1031345855 390901023 108928920 1009371384 1009371384 363049366 722762030 1002387346 1002387346 1045298810 1045298810 930427384 930427384 875357464 887989475 887989475 528223191 605280145 605280145 1042416447 1042416447 657113963 743011378 743011378 959045678 959045678 822100017 985212561 985212561 524029758 304400658 304400658 481620436 705168405 705168405 437592618 437592618 210478208 210478208 42603600 39440512 43005648 43005648 33554432 281090112 281090112 206571521 206571521 10887397 157370413 547508961 547508961 564042337 564042337 595333041 599448033 672264284 672264284 779473728 779473728 638336456 135572136 71418632 4524040 1049088 1049088 72148416 75644930 268472392 817631043 817631043 1065037901 1065037901 306853065 742606338 742606338 895541002 895541002 627972523 543327574 686957314 686957314 542589624 232732156 41358012 255959652 255959652 203168796 203168796 109373368 135307524 137586464 137586464 797491756 797491756 739365980 149082764 677397312 677397312 248039401 203157824 367649940 367649940 317285552 334883060 334883060 263310194 224224780 123735236 215287788 215287788 16802336 16802336 6742928 34899968 37897744 42763904 42763904 6102144 4801024 12969536 36081664 36081664 175642304 175642304 140525744 144573300 187704916 191345108 191345108 61409572 262366520 262366520 256471868 136364292 134759728 6295680 70914944 70914944 15913920 31528616 96051976 96051976 92611720 81402072 111450752 111450752 44288448 44288448 38746816 30358192 8837184 2701056 27601280 29360352 238303820 238303820 454682166 454682166 320691218 164217336 335722187 684325015 687601292 687601292 684978885 881733770 881733770 686368197 844440588 844440588 504570710 504570710 413212998 555539472 893176897 893176897 808588035 808588035 557499920 841641494 841641494 817810305 817810305 182856140 653266453 653266453 445255195 344725580 916984087 1057379297 1057379297 306337438 1070650052 1070650052 975177280 975177280 851971620 851971620 604514077 868297906 889530483 889530483 633675819 941756679 941756679 787745757 787745757 642345492 642345492 345116736 345116736 352395306 358097754 796509463 796509463 685641583 345366986 956866692 956866692 937637765 937637765 738210586 738210586 489771279 1060245663 1060245663 402801211 991068343 991068343 563367964 431412020 388850634 306048298 306048298 300734968 300734968 352132722 419377006 421342274 485042980 485042980 452331788 452331788 442050198 446053568 446053568 164034976 164034976 223399104 223399104 76336200 77385288 209151712 427430308 427430308 409108898 88495172 801409344 1070460235 1070460235 398508170 339788026 393454266 751912398 152706288 181668564 184404436 184404436 124572580 80949960 572064128 572064128 306511890 503615550 503615550 406538534 800407254 800407254 718153318 305919762 305919762 34832480 25195024 405554306 723248436 723248436 683657573 848872470 848872470 839968851 675082002 454318329 454318329 871244944 871244944 603702221 391746935 685034181 685034181 392227914 635892213 635892213 548246088 695740197 695740197 752879493 752879493 955796321 955796321 885514696 885514696 280673090 296235362 296235362 268960770 416878848 416878848 409344390 668752719 668752719 177489008 708624217 708624217 714461816 714461816 109886624 136196216 606017053 606017053 572531752 572531752 545268500 58030080 48503264 48503264 27007040 63577280 63577280 52368336 52368336 76440624 125952120 211359288 211359288 201510924 152870924 38847120 38847120 28377600 28377600 48301040 48301040 200273692 486083020 486083020 446382478 586450008 611399561 611399561 910982652 910982652 646322518 646322518 932152642 1013659023 1013659023 902095272 902095272 558218344 263217728 76194824 294704974 457328132 457328132 450368982 154405668 981256028 981256028 915561170 1014499103 1014499103 570425361 201326604 871457058 871457058 786539038 583474393 777599534 777599534 344532136 445653596 479801058 522202522 522202522 298792820 316014612 316014612 370486014 426705282 426705282 358745514 388675472 388675472 377096704 393099706 393099706 133255344 668186944 668186944 297036768 281360578 124855224 124855224 71369264 47138448 47138448 143019620 282496914 282496914 275958482 480693596 480693596 262932836 423643258 423643258 122930352 122930352 536871936 536871936 22005921 31289216 31289216 270858816 270858816 51781186 34859520 37449728 37449728 207368738 472913034 472913034 361216842 93694626 488313004 518173266 518173266 485020096 378233760 474072156 474072156 776211792 776211792 105959568 48445016 68239872 68239872 67231752 101302356 177777752 624297998 624297998 977914076 977914076 740329964 954573191 954573191 576833672 454536863 743906970 885658827 885658827 958924071 958924071 738533810 885795681 885795681 352325353 0 0 2097152 2097408 33554688 245369078 437291868 437291868 62963952 782294480 782294480 38271120 38271120 45611552 45611552 62988720 717431712 717431712 714166980 149430304 150607812 150607812 20971648 53521984 264842452 264842452 256912124 235938368 234987548 101279752 103917048 103917048 72993536 55928552 6890880 129364280 129364280 80302608 60690496 8527472 438407224 488894766 488894766 338540048 338540048 456172306 456172306 522248262 522248262 498079598 219569468 219569468 110264832 195286224 195286224 148424932 148424932 138190580 72225900 181802768 241197752 241197752 608407649 608407649 538413280 538413280 105951680 656341369 864156352 869765747 869765747 312243073 807754945 807754945 635357074 887362932 887362932 1020350116 1020350116 610011532 404554052 338439960 379864192 425800496 425800496 315351250 129222146 94771560 94771560 83763144 241983192 241983192 684175372 717032210 883179776 883179776 422600965 820167976 878715889 878715889 914240304 944973995 944973995 910037022 1033280029 1033280029 895096491 895096491 76947179 457048200 460066230 460066230 385917400 467788278 467788278 428738228 428738228 602016840 661527993 661527993 537790464 537531393 34052129 17560608 379474384 379474384 483392718 483392718 145752900 196089828 196089828 228136368 934219736 1066938584 1066938584 488309376 278921792 278921792 70568712 70568712 12378888 12183360 43966032 372956478 372956478 109779532 496065034 496065034 407586370 407586370 297841156 295858400 295858400 130765816 63680112 50872048 107717008 914280055 914280055 935842617 935842617 1001659046 1001659046 594561411 566286343 974130130 974130130 824187399 824187399 574623105 827277203 827277203 948176967 1071417295 1071417295 1002998315 1002998315 352843818 367079866 367079866 359805226 363556946 363556946 361327130 303710944 410655264 448895502 448895502 348712092 204704756 164297788 529016190 529016190 222872748 306556292 306556292 272629890 528615512 958960408 968544308 968544308 996352403 996352403 1021314653 1055393247 1055393247 860521767 860521767 608568608 897073481 897073481 783194039 783194039 1028800936 1028800936 327475336 327475336 71428338 14180480 853859396 853859396 699276645 982286465 982286465 280629969 147752226 144944224 201372512 229897068 907779712 910551195 977582235 977672343 1028594705 1028594705 655833657 979518848 1028231186 1028231186 861553048 861553048 794677664 1313280 1313280 177997848 228402796 228402796 117778036 25437184 25437184 12322048 28672352 28672352 568801761 568801761 544370688 825455197 973420066 973420066 891341902 891341902 257399847 950862758 950862758 619951565 673427712 673427712 503345266 146244420 517216632 517216632 467929590 427870608 190367412 190367412 183568244 183568244 50352378 344741984 353031210 353031210 497740168 497740168 588206215 1027587905 1027587905 630209838 739246509 739246509 871450254 871450254 594591857 718459704 765182216 782188125 782188125 736901496 221372516 221372516 1049625768 1049625768 160958043 92980424 90232122 392718490 392718490 187429120 186740966 407119952 448864470 448864470 264579334 404799750 404799750 312615120 462424676 462424676 436342916 521179178 521179178 338317390 129373600 129373600 90082016 90082016 197142816 197142816 182790612 33554448 39335772 153292804 153292804 126358952 249692768 251600389 660432341 959262143 996150177 996150177 566237953 566237953 288560102 972558082 976099171 976099171 452275180 794952608 870584583 1002703095 1002703095 597690758 780909706 780909706 236003868 236003868 249247452 249247452 243283584 13245888 67248772 206779020 206779020 201538980 201538980 151996420 151996420 186933072 186933072 186392576 186392576 169469460 169469460 140649856 22156416 47200624 47200624 41494416 54925488 57388384 61754528 61754528 54546976 318888578 318888578 42867792 503437176 503437176 571532961 571532961 946538158 946538158 172802170 172802170 332201296 838926832 838926832 824248354 388411826 388411826 285261858 293250512 293250512 302950154 302950154 117271042 346002394 351653304 351653304 342363306 287885744 288928864 371072528 371072528 320413866 343357696 343357696 305777424 435278400 676609929 676609929 915152036 915152036 897518649 897518649 544730555 359459887 182439134 890917088 890917088 729809013 729809013 711303480 711303480 723077888 723077888 672665888 763621485 763621485 681739324 511021402 267524088 267524088 521542086 521542086 853831126 879509584 879509584 941692216 941692216 894867114 688180800 688180800 581200128 734110017 734110017 426112419 172353684 586819389 586819389 776812600 776812600 197403069 567620224 567620224 647010309 647010309 539027488 1062036853 1062036853 499846394 499846394 110642584 157421988 297947841 543650004 567653368 888193995 888193995 886148911 791379548 791379548 185218896 559943809 720526808 740085261 740085261 745833793 745833793 573836049 100944985 679575556 679575556 335753226 853623367 853623367 671099392 68366477 102201888 205130710 742744576 742744576 829461259 829461259 673540860 673540860 616759585 660905608 660905608 30716721 571293201 638061129 638061129 643177177 811728937 822782611 822782611 775741776 441006660 324679604 901370816 901370816 505450641 488230174 386673794 386673794 1009371384 1009371384 363049366 834928851 985028720 985028720 272442752 330344483 930427384 930427384 875357464 831126610 831126610 528223191 605280145 605280145 1042416447 1042416447 657113963 743011378 743011378 959045678 959045678 822100017 985212561 985212561 302039157 304400658 304400658 281284377 705168405 705168405 437592618 629272083 629272083 955987574 955987574 718465634 1058345949 1058345949 830693420 830693420 567597766 487647240 487647240 290226922 94504992 335713098 335713098 281151786 337660160 337660160 352387072 352387072 51589680 55705760 101991008 101991008 96917640 104755304 104755304 87192272 21705888 75373064 75373064 78955531 817631043 817631043 1065037901 1065037901 306853065 742606338 742606338 895541002 895541002 627972523 562300161 686957314 686957314 542589624 168175768 205682804 255959652 255959652 203168796 203168796 109171881 135307524 137586464 137586464 797491756 797491756 739365980 149082764 677397312 677397312 248039401 203157824 397435103 830730339 830730339 654058827 743530126 743530126 224224780 123735236 451938526 451938526 232029280 461341234 461341234 17848480 36570496 39458176 39458176 30091680 30091680 32971392 36081664 36081664 40229120 135610948 140525744 163643908 187704916 191345108 191345108 183759828 262366520 262366520 256471868 136364292 134759728 40933040 70914944 96130496 97141600 97141600 96051976 96051976 92611720 81402072 111450752 111450752 63294240 63294240 38086800 16478080 8837184 2701056 58371736 118626600 118626600 37135000 73922952 73922952 69339528 69339528 68157960 548949600 687601292 687601292 684978885 608228616 608228616 172175508 645939500 755042380 755042380 679761980 662884473 480681016 797688082 891312345 891312345 661152794 369681467 841641494 841641494 537539606 311421072 173284562 713205837 713205837 605081925 339484227 916984087 1057379297 1057379297 264275036 244450856 851086596 975177280 975177280 851971620 851971620 604514077 868297906 889530483 889530483 633675819 941756679 941756679 787745757 787745757 642345492 642345492 311092050 285470754 146509336 358097754 361565888 361565888 79955136 345366986 379347539 902300907 937637765 937637765 678994845 259449973 259449973 369430914 574906470 1017563151 1017563151 1016628791 431412020 431412020 388850634 306048298 306048298 300734968 300734968 352132722 364389192 421342274 485042980 485042980 452331788 452331788 442050198 446053568 446053568 62713264 62713264 539075953 883766312 883766312 1015284012 1015284012 963906981 963906981 625906895 1015422849 1015422849 1070460235 1070460235 757694870 404229906 393454266 856859746 745022673 745022673 245440860 237036252 645595985 645595985 572064128 671809536 671809536 185474333 119701560 406538534 800407254 800407254 718153318 51055906 37299248 416523828 601521858 601521858 546251905 537469953 551936290 551936290 405055876 405055876 499206912 499206912 454318329 871244944 871244944 603702221 391746935 290216274 392227914 392227914 276773240 171816264 548246088 695740197 695740197 752879493 758153485 758153485 880820968 880820968 365200328 867697552 867697552 856431680 856431680 867893392 867893392 579348160 312020416 163373408 77502672 84431816 84431816 753403584 753403584 117742776 592322704 592322704 88440841 9301056 39427600 39427600 54956592 54956592 34790224 51429936 51429936 64760640 64760640 39197328 201984544 256378044 256378044 992444 220894720 220894720 33941520 42162240 42162240 22118912 15847936 15847936 200273692 486083020 832131515 832131515 896023593 896023593 753861780 753861780 617099677 646322518 646322518 932152642 1013659023 1013659023 322446970 291710292 68191840 68191840 68867592 294704974 457328132 457328132 450368982 170460180 981256028 981256028 855724915 855724915 448839894 497070320 497070320 871457058 871457058 793184260 854290461 1001125239 1001125239 344532136 445653596 479801058 479801058 281480420 281480420 316014612 316014612 61527408 61527408 47757424 98588832 98588832 10487040 346674496 346674496 24793642 133255344 305904392 305904392 297036768 824725968 824725968 281055722 340283480 562303328 562303328 44831490 282496914 282496914 275958482 480693596 480693596 356608257 423643258 423643258 972809687 972809687 536871936 536871936 22005921 31289216 31289216 270858816 270858816 103078416 103078416 100942632 100942632 125997136 125997136 76146496 101356848 101356848 449996404 449996404 58962674 101237288 101237288 95090136 143658285 669895425 669895425 802378161 802378161 142197448 137413380 730628716 730628716 639944768 249324752 642633877 642633877 555576109 233097708 562306488 745280957 745280957 454536863 743906970 885658827 885658827 958924071 958924071 731480640 731480640 571008053 545304913 671834448 680076357 705237081 705237081 604114953 548015040 621349781 621349781 194589417 659629909 659629909 220229644 247644893 247644893 613454596 613454596 717431712 717431712 167257029 17958852 1049088 20971648 20971648 129040448 129040448 31466424 149041560 149041560 65476844 8792576 290819138 290819138 89426696 352898026 352898026 302007954 302007954 289880848 346512480 346512480 812653147 812653147 488894766 706233881 706233881 520514610 456172306 522248262 623130894 623130894 669482729 669482729 477359022 579683748 906043419 906043419 194617467 481936936 481936936 831656402 831656402 611881480 290066768 107698544 107698544 90434272 105951680 105951680 99085296 44089680 838107248 838107248 37453824 33921776 47739456 80094816 90128040 90128040 78365760 483151312 483151312 310969720 314586362 386048250 386048250 290476416 290476416 91411368 91411368 83763144 241983192 241983192 782518656 782518656 883179776 904824650 904824650 825754979 878715889 878715889 828589961 717394666 910037022 910037022 1033280029 1033280029 548479809 908602649 908602649 817105731 967903128 996881453 996881453 1002112787 1002112787 817500491 720372693 720372693 689440293 689440293 864027377 893684931 893684931 281343385 878920737 878920737 483392718 483392718 145752900 196089828 196089828 228136368 934219736 934219736 488309376 829349541 829349541 571170068 71318054 434373642 434373642 165675492 448116800 448116800 283046740 181532372 183343684 183343684 171334592 173781252 173781252 148051284 145677636 144013056 41078040 70624132 205834380 914280055 916624334 1046401207 1062073655 1062073655 1049414751 925902757 549841089 974130130 974130130 824187399 824187399 574623105 827277203 827277203 413015622 989353348 989353348 1002998315 1002998315 352843818 367079866 367079866 359805226 363556946 363556946 361327130 303710944 410655264 448895502 448895502 348712092 119304204 164297788 529016190 529016190 190459500 306556292 321146002 321146002 408815364 958960408 968544308 968544308 870538926 823602705 1021314653 1055393247 1055393247 981601616 761397517 761397517 823292048 903988084 903988084 998937579 1028800936 1028800936 1025279116 378824813 842271507 842271507 853859396 853859396 699276645 982286465 982286465 1001728395 1001728395 719749018 789095284 808002819 808002819 1029989600 1029989600 957216416 1028594705 1028594705 655833657 979518848 1028231186 1028231186 861553048 861553048 794677664 261382268 261382268 152578124 152578124 94143592 77385288 19433576 12322048 12322048 3181568 3265056 20584224 544370688 544370688 544334721 542188449 766367022 766367022 939867233 939867233 1036024554 1036024554 424893563 376074626 376074626 207831190 10621760 12767616 12767616 197776176 197776176 190367412 190367412 183568244 183568244 34083968 344741984 353031210 353031210 497740168 497740168 588206215 1027587905 1027587905 630209838 739246509 739246509 871450254 871450254 594591857 721616980 721616980 782188125 782188125 736901496 574619648 574619793 1049625768 1049625768 647706168 647706168 118200105 90887592 422693650 422693650 460663874 460663874 448864470 448864470 352321794 352321794 312615120 415397380 415397380 436342916 436342916 222433314 184549416 120062584 120062584 63138224 428319546 428319546 231754124 381100542 426971808 426971808 441451270 456139286 456139286 425730992 249692768 251600389 636555591 726013997 996150177 996150177 327323602 327323602 160762528 952578082 976099171 976099171 452275180 794952608 870584583 1002703095 1002703095 692583533 82582600 640173224 663612537 663612537 249247452 556946192 574052945 575853393 638095936 638095936 246823944 261081612 261081612 157478500 162603876 186933072 186933072 186392576 186392576 169469460 169469460 140649856 22156416 47200624 47200624 46132416 54925488 54925488 34279808 54546976 173793796 318888578 318888578 42867792 328210554 328210554 110673920 203424012 925065730 925065730 278137410 278137410 543498240 543498240 590607378 590607378 60582492 155263140 517753308 517753308 293250512 1041953109 1041953109 815344035 815344035 351653304 351653304 633619032 789392445 789392445 857577137 857577137 581115736 581115736 547666384 305777424 300089412 414294244 414294244 915152036 915152036 886200648 886200648 544730555 476576172 794121146 794121146 585298101 729809013 729809013 711303480 711303480 647152600 647152600 672665888 763621485 763621485 681739324 190841268 256366888 256366888 103040176 344816083 853831126 879509584 879509584 681616754 894867114 894867114 688180800 992889058 992889058 571176357 571176357 426112419 215040576 586819389 647716508 776812600 776812600 197403069 42275112 134626308 647010309 1045694499 1045694499 1062036853 1062036853 606097301 250361288 889660477 889660477 800638845 540009984 264977324 264977324 661211300 774580037 791379548 791379548 185218896 348428816 847512150 847512150 947980228 947980228 746399636 746399636 887280075 887280075 679575556 335753226 743609040 788687216 788687216 61182013 0 0 742744576 742744576 233343072 233343072 208457100 71401760 71401760 57354656 38458512 5977728 304275968 316089152 316089152 302096384 302039058 307029874 362661264 441006660 441006660 321495954 391790936 503579974 503579974 488230174 438128536 438128536 669335408 669335408 525840687 959605688 985028720 985028720 533460322 533460322 330344483 849502273 849502273 347173459 347173459 114430680 83047368 366703552 366703552 314083056 344982088 485507664 485507664 654576014 728015137 728015137 692109572 612631808 612631808 280283970 280283970 420059908 420059908 169253424 285409282 629272083 629272083 955987574 955987574 718465634 1058345949 1058345949 830693420 830693420 567597766 487647240 487647240 290226922 216093125 539415201 559288897 559288897 558897425 590632753 590632753 690830364 690830364 782949404 782949404 582585692 239396896 197706030 514280902 514280902 226961610 500118030 500118030 473912866 381692370 381692370 183051732 786039808 786039808 223970147 500180010 500180010 425722278 627460160 803385807 803385807 1061276085 1061276085 553900216 546523648 218218568 218218568 73143896 73143896 83935232 83935232 110117928 125944176 129623928 129623928 38855768 250684064 563151740 563151740 121717160 58950310 553788688 830730339 830730339 654058827 743530126 743530126 458088754 403768694 451938526 458841396 458841396 461341234 461341234 330570690 330570690 307037186 307037186 283117824 283117824 32971392 62434080 62434080 10376464 50944768 134418496 163643908 163643908 156188576 178735744 183759828 183759828 72466712 72466712 128740440 128740440 40933040 33769376 96130496 215152112 215152112 157356752 210432344 212539484 212539484 208672084 208672084 199361268 162580656 166384676 166384676 154338096 39782932 191371596 228277628 228277628 225394870 413064774 413064774 350852190 226973748 414405186 548949600 893995208 893995208 285559139 608228616 608228616 172175508 172175508 755042380 830480444 830480444 721494069 461381699 438362397 891312345 891312345 661152794 369681467 870226631 951849403 951849403 72854728 147171600 713205837 830476944 869405427 869405427 205129999 365168148 1001410884 1001410884 952276333 952276333 851086596 445735112 445735112 518554874 518554874 483467982 340338184 281356482 281356482 279711042 279711042 241959318 46171524 46171524 311092050 311092050 246145368 146509336 366774560 366774560 283825602 324354314 324354314 116140328 548599609 553438909 762727901 762727901 227670893 649994073 649994073 586187428 1017563151 1017563151 1016628791 282641456 282641456 92016552 280476288 305115786 305115786 118039608 118039608 364389192 364389192 285811746 153685412 70254912 45286784 179962580 179962580 56223408 176965184 176965184 539075953 883766312 883766312 1015284012 1015284012 963906981 963906981 1015157957 1015422849 1015422849 993802277 757694870 757694870 625446225 625446225 856859746 745022673 745022673 245440860 237036252 645595985 713156061 713156061 671809536 671809536 922882107 922882107 664376319 1016516580 1016516580 467003751 821546160 821546160 827585187 827585187 847460466 847460466 995716241 995716241 551936290 852959298 852959298 576068241 672210947 672210947 270164132 59448512 768056065 768056065 784768877 784768877 124524429 752503808 752503808 753076656 753076656 726137013 589607621 758153485 872498344 880820968 880820968 365200328 867697552 867697552 856431680 856431680 867893392 867893392 579348160 697596133 697596133 157626948 572786485 572786485 753403584 753403584 117742776 592322704 700822192 700822192 584622800 584622800 542577908 55969952 54956592 49304896 62083552 62083552 64760640 64760640 39197328 201984544 256378044 256378044 992444 220894720 220894720 33941520 66765792 66765792 56907744 58807360 58807360 177714236 436613156 832131515 832131515 896023593 896023593 753861780 753861780 617099677 172367965 338980232 338980232 243998800 322446970 322446970 644022488 644022488 234894616 111871992 110637376 66097488 54526128 170460180 170460180 76701732 577332799 855724915 855724915 646144816 646144816 497070320 92471584 201363723 935330308 935330308 1001125239 1001125239 192938576 192938576 302017096 302017096 171674472 447692596 447692596 422987126 512975738 512975738 416741970 340506640 340506640 231221472 398525442 401687088 401687088 350347722 305904392 847942811 847942811 824725968 824725968 329649250 340283480 589300056 589300056 652263976 652263976 651166425 542117976 417851261 638847216 638847216 634389225 123181744 972809687 972809687 312233560 881344746 881344746 874186345 886572747 910296976 910296976 103078416 103078416 100942632 100942632 125997136 125997136 76146496 101356848 101356848 449996404 449996404 58962674 101237288 101237288 357729800 357729800 669895425 669895425 802378161 802378161 674768512 137413380 730628716 730628716 639944768 249324752 642633877 642633877 400850966 233097708 562306488 745280957 745280957 328128179 189530156 189530156 732693361 732693361 545784897 556795744 556795744 545304913 545304913 671834448 680076357 705237081 705237081 604114953 548015040 621349781 621349781 194589417 659629909 659629909 220229644 247644893 247644893 613454596 613454596 549061952 556270373 705691925 705691925 699942113 718400921 718400921 267435552 267435552 241701894 440278046 440278046 466993032 466993032 450620356 290819138 89426696 352898026 352898026 302007954 302007954 289880848 346512480 346512480 812653147 812653147 370018832 706233881 706233881 520514610 303005202 270215778 623130894 623130894 669482729 669482729 477359022 590356692 906043419 906043419 714187701 672260613 649086982 831656402 831656402 611881480 290066768 73713176 90434272 90434272 118557368 605565577 877167040 877167040 869795571 986471668 986471668 868947344 868947344 945432983 945432983 791099709 916795792 916795792 761317539 933406992 933406992 375494094 304876818 302814736 302814736 118001442 598366648 598366648 670572145 738325705 782518656 782518656 717524039 904824650 904824650 825754979 578949409 828589961 828589961 717394666 984704512 984704512 889212242 763272978 764937837 936379189 936379189 829949859 967903128 996881453 996881453 1002112787 1002112787 817500491 921831363 921831363 689440293 689440293 864027377 893684931 893684931 820154835 878920737 878920737 651217206 933105530 933105530 912788419 499790584 499790584 931105338 931105338 848710512 848710512 829349541 571170068 416064832 434373642 434373642 431379296 448116800 448116800 283046740 181532372 183343684 205594752 205594752 171334592 141265884 145677636 145677636 144013056 52217376 70624132 205834380 205834380 916624334 1046401207 1062073655 1062073655 1049414751 925902757 806371638 806371638 784576893 1072111851 1072111851 544611201 391389874 391389874 311920784 284422882 723562698 723562698 607126281 607126281 593093021 772615197 781596802 781596802 367662570 552435243 552435243 205047296 205047564 205047564 123247056 115608904 114163712 168463376 255129628 255129628 190459500 321146002 321146002 408815364 457777837 457777837 353377153 353377153 103944984 344142024 344142024 981601616 981601616 761397517 761397517 823292048 903988084 903988084 998937579 998937579 1025279116 1025279116 396939638 842271507 842271507 646228381 646228381 1014515239 1014515239 295766767 1001728395 1001728395 777278480 789095284 808002819 808002819 1029989600 1029989600 449656895 437838349 470884878 470884878 341963780 341963780 102405142 201334912 227560772 248070236 261382268 261382268 244743784 166428024 189668532 193984896 193984896 62326880 45005600 45005600 86780105 625322057 625322057 612368457 612368457 294617356 766367022 766367022 939867233 939867233 1036024554 1036024554 424893563 376074626 376074626 420858414 420858414 383822770 357668094 357668094 336105552 173541012 173541012 148035156 336069962 336069962 369787920 369787920 281575506 346740042 346740042 110784978 242068008 317575552 421841190 449594540 449594540 245367132 134311988 713601404 721616980 721616980 885486115 885486115 790080127 790080127 574619793 574619793 22217848 647706168 925380905 925380905 587934500 789124254 789124254 460663874 490359670 490359670 224395692 433377042 433377042 273921554 415397380 415397380 332522226 339265290 339265290 285386342 285386342 120062584 336051320 428319546 428319546 359697040 450218858 450218858 426971808 441451270 456139286 456139286 425730992 216271792 250615808 250615808 151993380 151993380 150929440 417288498 417288498 294821476 291513236 33554448 184813584 184813584 52816340 226951336 226951336 692583533 692583533 84100416 640173224 663612537 663612537 243189893 556946192 574052945 575853393 638095936 638095936 246823944 261081612 261081612 157478500 162603876 162603876 153802020 153802020 22058884 21619872 58051328 58051328 54599856 36530336 23804672 46132416 46132416 48444176 48444176 39178260 173793796 189349920 189349920 30593760 151061008 571736592 571736592 203424012 925065730 925065730 671400535 671400535 1001471520 1001471520 839207075 839207075 60582492 155263140 517753308 517753308 267678716 1041953109 1041953109 815344035 835520147 835520147 313363422 633619032 789392445 789392445 857577137 857577137 581115736 581115736 547666384 271683846 300089412 693492623 693492623 573843930 890938237 948934223 948934223 803711469 839190261 839190261 794121146 585298101 508873374 508873374 476155768 476155768 80259712 240705048 620027852 620027852 209768456 209768456 67749320 82371592 89947956 207849008 207849008 240000156 293602564 681616754 773681425 773681425 87170085 715339904 992889058 992889058 770255144 721808256 721808256 215040576 89232888 888219398 888219398 751305933 1050221575 1050221575 918642695 365977819 1045694499 1045694499 203132650 606097301 606097301 881232041 889660477 889660477 836784213 836784213 510929082 605078296 648667160 851045944 851045944 371256889 170022976 178571604 847512150 847512150 947980228 947980228 850343242 850343242 995099319 995099319 853717232 712171786 712171786 788687216 788687216 686073924 686073924 997757558 997757558 699755617 700214001 700214001 755113312 755113312 140719424 80960592 16597568 16597568 316947520 316947520 316089152 96518376 291858768 838205595 838205595 432574202 552671419 984289662 984289662 741585467 839989027 842862483 842862483 725140405 725140405 996578054 996578054 959605688 959605688 809685123 533460322 533460322 285266282 599994641 856711426 856711426 490211703 490211703 627444526 627444526 772589717 772589717 486140839 707788813 707788813 1057260302 1057260302 857735475 425781344 612631808 612631808 537133139 449128470 1040205912 1040205912 772089885 537921025 285409282 875244242 875244242 124656649 101858096 335682600 335682600 365781632 365781632 98379340 98379340 86615969 87241512 216093125 539415201 559288897 559288897 558897425 590632753 590632753 690830364 690830364 782949404 782949404 582585692 239396896 197706030 514280902 514280902 226961610 500118030 500118030 473912866 535824088 535824088 183051732 786039808 786039808 218226732 425721856 425722278 1006667934 1006667934 803385807 803385807 1061276085 1061276085 553900216 630724685 630724685 236859304 581699185 581699185 674350044 674350044 701085289 701085289 194715684 206574101 622546989 736647053 736647053 563151740 237024020 138411780 553788688 590034225 590034225 427835652 295747938 458088754 458088754 403768694 403768694 524902204 524902204 314561014 282200064 330570690 330570690 307037186 307037186 283117824 283117824 31198016 62434080 62434080 137647168 137647168 134287368 202310156 202310156 156188576 104333376 104333376 243666204 243666204 46911504 41104272 35462528 29945696 84518696 84518696 215152112 215152112 157356752 210432344 212539484 212539484 208672084 208672084 199361268 162580656 166384676 166384676 154338096 45920272 191371596 228277628 228277628 225394870 413064774 413064774 350852190 226973748 414405186 475023564 893995208 893995208 548947456 923653710 923653710 722081125 722081125 662779377 830480444 830480444 774078725 774078725 396361338 412353829 412353829 695781285 695781285 870226631 951849403 951849403 810224480 318144846 318144846 830476944 869405427 869405427 745539303 450895354 1001410884 1001410884 1020888477 1020888477 594043943 777483644 777483644 532911212 906178587 906178587 899376309 899376309 555431457 279711042 881103558 881103558 677548357 646583385 604693016 431596120 331080566 110712106 366774560 366774560 317576000 324354314 324354314 117644032 548599609 553438909 762727901 762727901 622869052 649994073 649994073 871923438 1014368975 1014368975 535957777 600364686 613610486 613610486 320987442 305115786 305115786 371300920 371300920 356892722 289855650 298703010 426496256 426496256 137499396 179962580 179962580 175462016 176965184 176965184 60644352 144867648 226492524 958138856 958138856 262019151 39846288 1015157957 1015157957 675552330 647507616 65061360 548463520 625446225 625446225 164013085 1021457464 1070207167 1070207167 172109872 400578005 713156061 713156061 172024596 393630171 922882107 922882107 664376319 1016516580 1016516580 467003751 821546160 821546160 827585187 827585187 847460466 847460466 995716241 995716241 747449421 852959298 852959298 576068241 943541507 943541507 1001813664 1003173111 1003173111 768056065 784768877 803269800 803269800 773934176 752503808 753076656 753076656 726137013 589607621 696303876 872498344 872498344 814362100 814362100 200086595 144911108 174853504 977541300 977541300 140381859 154218020 697596133 697596133 157626948 572786485 572786485 142297348 41247252 54764688 537409568 700822192 700822192 584622800 584622800 542577908 55969952 11717024 49304896 62083552 62083552 232770124 232770124 265425660 265425660 189668532 189668532 70388916 70255368 257324976 257324976 485495490 485495490 63288992 293109016 387781530 387781530 436613156 436613156 408065110 408065110 851592720 851592720 442139603 409994118 172274512 482365086 841331530 841331530 746264127 321064971 644022488 644022488 396952872 361367192 117573416 80794360 99664072 127082904 127082904 76701732 227799660 681599009 681599009 646144816 969024378 969024378 549458127 507642458 935330308 935330308 410129286 908925474 908925474 415246662 415246662 587514126 696420730 696420730 470637624 426074632 512975738 512975738 416741970 340506640 340506640 231221472 398525442 401687088 401687088 350347722 637218640 847942811 847942811 625082504 329649250 329649250 67557800 589300056 589300056 652263976 652263976 651166425 542117976 142610976 638847216 638847216 634389225 624089132 624089132 554960049 312233560 881344746 881344746 874186345 886572747 910296976 910296976 384227648 384227648 71573200 35313168 78820416 78820416 45831256 38962192 38962192 269510272 269510272 61439538 15592896 27650400 357729800 357729800 95947008 78193160 706274736 706274736 674768512 674276996 568943457 228786289 227971648 227971648 77874520 131513460 131513460 176226860 757864692 757864692 248383833 40506768 189530156 189530156 658966780 658966780 599793824 159458484 159458484 206850048 335708424 478289156 478289156 446831616 446831616 287314246 136975398 48284112 30408928 53483828 222434744 251661920 251661920 245108316 144184332 607257920 607257920 549061952 556270373 705691925 705691925 699942113 718400921 718400921 267435552 267435552 241701894 440278046 440278046 466993032 466993032 450620356 167111780 167111780 135096740 138227460 228125032 228125032 14684960 122683956 122683956 184680460 184680460 135168 33718272 51563024 51563024 68921952 270215778 1015142408 1015142408 151415887 404815958 404815958 590356692 703669221 714187701 714187701 672260613 649086982 649086982 448545464 448545464 205861400 205861400 73713176 83184464 118557368 605565577 877167040 877167040 869795571 986471668 986471668 993679123 993679123 945432983 945432983 791099709 916795792 916795792 761317539 933406992 933406992 375494094 370833746 370833746 302814736 465707758 598366648 598366648 670572145 738325705 738325705 715147520 715147520 578063120 578063120 550502528 747422078 747422078 479665176 650009702 984704512 984704512 827539397 763272978 764937837 936379189 936379189 829949859 745611431 553129034 553129034 344590273 37889669 273684250 921831363 921831363 508042448 508042448 490868850 586481680 820154835 820154835 560254198 651217206 651217206 933105530 933105530 912788419 499790584 499790584 931105338 931105338 848710512 848710512 343163566 416064832 416064832 270229664 524837556 524837556 431379296 534100222 534100222 497771982 505252276 505252276 205594752 71792732 69950400 69950400 46953384 52217376 52217376 76332874 360084546 553189729 933992268 933992268 834791115 834791115 772130877 319046167 806371638 806371638 784576893 1072111851 1072111851 910441346 910441346 851844071 851844071 289449360 945897479 945897479 607126281 607126281 593093021 772615197 781596802 781596802 367662570 552435243 552435243 502018536 502018536 487349354 301088904 172022672 201375756 201375756 255129628 255129628 108077464 481568872 481568872 210576170 457777837 457777837 353377153 353377153 828377955 828377955 748761546 899883044 899883044 344072946 516227176 516227176 943827962 943827962 770975212 410832774 123260270 813204435 813204435 562072032 543476097 475564294 609637130 1014515239 1014515239 295766767 892541353 892541353 777278480 777278480 738969560 401290746 961637416 961637416 903598143 903598143 466041078 890587349 890587349 662270162 662270162 1033150220 1033150220 681035948 70466320 244743784 244743784 166428024 189668532 193984896 406112082 406112082 166600512 101205346 400556538 625322057 625322057 612368457 612368457 650303978 650303978 251852923 78433608 520760721 520760721 899494998 924060219 1031044010 1031044010 420858414 420858414 458867130 458867130 357668094 336105552 309510832 313157264 313157264 336069962 336069962 369787920 369787920 281575506 279711896 36441360 17748272 14729664 156417584 156417584 148362340 46822468 792809565 792809565 713601404 859212272 859212272 885486115 885486115 790080127 790080127 987267303 987267303 424202432 861030065 925380905 925380905 587934500 789124254 884125414 884125414 688913445 537782408 351488870 433377042 433377042 262760760 121390664 121390664 86510418 339265290 339265290 285386342 285386342 30333184 336051320 336051320 471908656 471908656 450218858 450218858 372298392 372298392 350257472 81838530 107078040 107078040 248195360 248195360 151993380 151993380 150929440 417288498 570696611 570696611 429170324 814358277 814358277 184813584 47547138 24431520 29528064 29528064 75488448 89838280 640750184 640750184 84183200 596920448 596920448 82922120 99272256 99272256 210522724 210821772 210821772 92365864 35686448 35686448 191246032 196923252 196923252 172590244 172590244 189499552 189499552 54645888 54645888 22990848 22990848 44451264 48444176 48444176 33738768 33738768 305439122 305439122 37541936 354685234 571736592 657498117 657498117 254927676 193987188 681648755 681648755 1001471520 1001471520 839207075 839207075 510321112 885972138 907040955 907040955 795390588 762633850 762633850 609940622 835520147 835520147 233383404 251717072 251717072 857515056 857515056 50941491 17051680 30003440 50129112 109658088 109658088 693492623 813124782 813124782 890938237 948934223 948934223 803711469 839190261 839190261 385558685 240057848 767871213 767871213 476155768 476155768 224936916 79292232 158815476 726358616 726358616 692665436 224452228 253900200 253900200 207849008 207849008 240000156 594875241 594875241 773681425 773681425 138687872 715339904 751597261 770255144 770255144 721808256 721808256 144746609 951296233 951296233 888219398 751305933 1050221575 1050221575 918642695 209797847 193011828 516699250 516699250 440780998 440780998 881232041 881232041 817025859 836784213 836784213 834929366 834929366 648667160 851045944 851045944 607224147 250009800 316171020 823598625 823598625 740783567 740783567 850343242 850343242 995099319 995099319 1024655866 1024655866 712171786 163696656 227600800 686073924 686073924 1012976214 1017841877 1017841877 747973197 700214001 755113312 755113312 140719424 80960592 16597568 16597568 316947520 316947520 109942760 25420128 396269888 838205595 838205595 432574202 552671419 984289662 984289662 741585467 839989027 842862483 842862483 725140405 725140405 996578054 996578054 943872790 809685123 826466946 826466946 309416738 309416738 77730120 856711426 856711426 490211703 490211703 627444526 627444526 772589717 795918560 795918560 707788813 707788813 1057260302 1057260302 857735475 899973598 899973598 537133139 537133139 449128470 1040205912 1040205912 772089885 679287270 806693379 889204771 889204771 873863691 141824399 335682600 335682600 16912416 28209824 67982440 67982440 11464800 11464800 16220368 16220368 6997632 35911616 49731920 49731920 15952768 60956768 60956768 28793728 24183456 24183456 13642688 19139360 19139360 200752 50405424 167981088 296719692 369485850 535824088 918893239 918893239 387789182 699947149 699947149 405009428 455082294 1006667934 1006667934 574933137 134305927 148872848 210424908 545353789 706398257 706398257 236859304 581699185 581699185 674350044 674350044 770221504 770221504 264839577 206574101 622546989 736647053 736647053 541884608 237024020 138411780 990010869 990010869 657054894 657054894 713026488 713026488 517999706 247826732 247826732 524902204 524902204 282200064 282200064 37098194 283122432 283122432 63312098 52564192 69952296 69952296 94110976 94110976 137647168 470071320 470071320 278063628 412389212 412389212 374742302 374742302 292952994 254653310 278847042 368416830 368416830 142578562 142578562 84518696 84517384 84517384 14206656 14206656 35072 2410752 2410752 7390080 7390080 10623232 10623232 11214096 45920272 45920272 42877696 12632256 113528976 113528976 33947800 202683136 202683136 136835524 470946379 512301301 571169348 822413347 822413347 923653710 923653710 875040887 875040887 662779377 629217586 763564644 774078725 774078725 396361338 421943361 545691942 695781285 695781285 268748802 268748802 810224480 810224480 318144846 557503937 575327521 666275405 745539303 745539303 450895354 876794087 876794087 1020888477 1020888477 568946592 777483644 777483644 532911212 906178587 906178587 899376309 899376309 555431457 371460378 881103558 881103558 677548357 646583385 604693016 431596120 331080566 855911291 855911291 876284178 876284178 829363659 909028851 909028851 855697752 120164592 224848402 622869052 622869052 632365929 632365929 871923438 871923438 828266562 828266562 738512429 613610486 613610486 320987442 288597848 131985144 371300920 371300920 356892722 289855650 298703010 426496256 426496256 137499396 141967744 175462016 175462016 167996992 167996992 564671863 564671863 749608269 958138856 958138856 635976768 635976768 295175778 756166338 823995623 823995623 717047633 701528925 164480273 191559612 191559612 1021457464 1070207167 1070207167 201917944 400578005 807982756 807982756 167384359 393630171 569777121 730102992 730102992 305523474 305523474 563304210 563304210 15291105 12792256 41967744 41967744 149127634 184946724 184946724 747449421 747449421 556193476 356814484 943541507 943541507 1001813664 1013634447 1013634447 607158764 607158764 803269800 803269800 773934176 662773812 662773812 767667201 767667201 537677316 696303876 696303876 481608645 814362100 814362100 854861684 854861684 982011072 982011072 999986727 999986727 567094976 445711556 181905620 58021428 141557124 167948948 167948948 58686624 172106416 172891284 175253008 175253008 39002896 40948096 40948096 39112864 52877616 62208112 62208112 46417952 232770124 232770124 265425660 265425660 189668532 189668532 70388916 70255368 257324976 347678538 485495490 485495490 63288992 293109016 387781530 387781530 358868656 632032617 632032617 260213853 851592720 851592720 442139603 715022020 1063935445 1063935445 860501427 841331530 746264127 886903278 886903278 396952872 396952872 361367192 117573416 113320248 99664072 297997600 297997600 283657450 67235840 681599009 681599009 253993557 969024378 969024378 549458127 507642458 521669281 521669281 410129286 908925474 908925474 415246662 415246662 587514126 696420730 696420730 470637624 426074632 426074632 287084750 295636066 295636066 403248666 445385800 445385800 127451176 127451176 112265464 637218640 637218640 45955049 67801320 67801320 4772032 0 0 34768128 34768128 11584320 77741018 112528704 409758347 517151513 517151513 452002627 624089132 624089132 175968289 276868674 276868674 17097760 280134400 280134400 342243528 342243528 384227648 384227648 109835432 109835432 76590602 279443778 339736970 339736970 66895152 360944872 360944872 61439538 294050890 294050890 356910136 356910136 95947008 28885024 706274736 706274736 674276996 674276996 568943457 253411456 253411456 172016692 160383208 160383208 159948028 121767284 757864692 757864692 1072641070 1072641070 581775673 77988881 472717638 599793824 599793824 386482434 386482434 349547880 349547880 478289156 478289156 446831616 446831616 304418893 988358103 988358103 971514055 507644114 699024297 699024297 251661920 569859289 569859289 892897154 892897154 805831683 413664513 134743044 134743044 144732424 144732424 146272264 216381732 216381732 152054464 67111616 30673384 498385416 498385416 432046310 167111780 167111780 281310272 281310272 441133392 441133392 290241064 386220176 386220176 948142163 948142163 335753732 655843853 655843853 370773530 303088186 211155464 1015142408 1015142408 672727853 672727853 536348670 536348670 925183002 925183002 708937755 579094663 756443522 1037300463 1037300463 711062064 346136840 205861400 49140432 43855440 43855440 14729488 72162848 858437218 858437218 599341938 599341938 993679123 993679123 791510280 791510280 721604661 432302248 432302248 281288828 444668024 444668024 309087658 370833746 840061652 840061652 632328718 465707758 759706881 759706881 409623408 252406953 218619988 181210812 578063120 668909081 668909081 747422078 747422078 684687554 684687554 704025058 827539397 996196791 996196791 819549165 819549165 631415648 631415648 774049878 774049878 553129034 571675454 821171139 942805909 942805909 283119623 173032896 46828232 390077562 586481680 586481680 46731009 12718272 21889600 227937352 327424046 327424046 89281648 486684216 486684216 449558850 297065152 297065152 153405732 343163566 343163566 152706338 270229664 524837556 524837556 343761364 534100222 534100222 497771982 505252276 505252276 206043276 206043276 221954372 221954372 155079408 155079408 102714184 102714184 360084546 553189729 933992268 933992268 834791115 834791115 772130877 319046167 419432654 419432654 882306091 882306091 641023763 910441346 910441346 851844071 851844071 655493277 945897479 945897479 631069217 238295896 238295896 151421492 335552432 335552432 6700202 516474224 516474224 502018536 502018536 487349354 301088904 172022672 201375756 214075592 214075592 205705356 59016244 481568872 481568872 210576170 17689632 153094664 153094664 90976226 828377955 828377955 748761546 899883044 899883044 595857509 516227176 516227176 943827962 943827962 770975212 410832774 123260270 813204435 813204435 569166220 804113529 804113529 183764153 3146496 3146496 407149408 432197862 852286662 868270323 868270323 714576980 714576980 424596522 1057134820 1057134820 903598143 466041078 890587349 890587349 662270162 662270162 1033150220 1033150220 681035948 66376216 53525296 53953328 93648128 93648128 79617864 406112082 406112082 166600512 101205346 400556538 822676771 822676771 631279925 1021980873 1021980873 885463680 937168635 937168635 937175441 937175441 899494998 924060219 1031044010 1031044010 375882660 300063888 458867130 458867130 276947010 68694256 309510832 313157264 313157264 34809184 352337952 352337952 151159856 151159856 101921304 102445744 102445744 56309424 403025389 992662055 992662055 911229563 928538751 1016796240 1016796240 859212272 859212272 201551878 1007694979 1007694979 800272801 987267303 987267303 424202432 861030065 861030065 72617224 270010880 543426569 884125414 884125414 688913445 537782408 351488870 379898202 438225256 438225256 225991324 102665684 335974386 335974386 133431880 133219000 93718064 30018304 8527936 222783258 471908656 471908656 336352290 336352290 116091282 350257472 472648964 472648964 384224464 245766212 245766212 630644939 935161335 935161335 851131669 408606342 570696611 846436012 846436012 814358277 814358277 753150343 753150343 24431520 29528064 29528064 75488448 89838280 640750184 640750184 657230756 657230756 596920448 148949092 20990848 12877996 50856112 210821772 219928100 219928100 173626880 173626880 191246032 196923252 196923252 172590244 172590244 189499552 189499552 54645888 54645888 18824736 27147168 32906208 66980480 66980480 61268304 56309424 305439122 305439122 37541936 354685234 1025773589 1025773589 657498117 450210710 450210710 681648755 681648755 546573611 546573611 251717889 251717889 738899972 885972138 907040955 907040955 795390588 762633850 762633850 198124929 695290835 695290835 331285673 895493912 1068240255 1068240255 857515056 571608209 555782432 601371376 601371376 109658088 109658088 272013920 813124782 813124782 806777305 806777305 515346774 571663873 743832021 743832021 242814044 242814044 767871213 767871213 737800192 737800192 224936916 145526416 158815476 726358616 726358616 692665436 282757680 282757680 273807618 171779616 171779616 167986464 594875241 594875241 421900256 138687872 138687872 689491428 751597261 751597261 692099600 731234417 731234417 520142910 951296233 951296233 398850772 216667596 545535491 830745731 830745731 827188464 193011828 516699250 516699250 440780998 440780998 172425244 172425244 437778966 437778966 275040843 834929366 834929366 503439631 424780321 607224147 607224147 270347778 543434418 823598625 823598625 93930579 93930579 945697346 945697346 716967765 716967765 1024655866 1024655866 167805384 794821092 794821092 544658309 806487176 1012976214 1017841877 1043964937 1043964937 257313889 40186560 54967360 54967360 26172528 15390144 28482432 100297816 352058842 352058842 331912034 396269888 396269888 372226880 372226880 69209864 69209864 696544181 696544181 139840340 99740920 260948628 260948628 741410149 741410149 667772488 936657563 936657563 911248123 911248123 309416738 871034883 871034883 564843873 885020074 885020074 354387362 331175416 835356774 953587787 953587787 871554247 870987159 365547837 127927496 127927496 113281374 899973598 899973598 728782148 728782148 441984562 268458616 268458616 210189396 679287270 806693379 889204771 889204771 873863691 141824399 118762096 118762096 94845288 77704296 67757384 31261064 28625760 1574400 16220368 16220368 6997632 35911616 49731920 49731920 181098564 183901973 183901973 173295501 803235949 803235949 655671829 655671829 847394675 847394675 734737883 690730030 368699622 369485850 369485850 918893239 918893239 474678822 873439683 873439683 405009428 455082294 1024727717 1024727717 341131882 721494050 721494050 646117493 545353789 706398257 706398257 63513840 171507732 251659796 652259436 652259436 778068496 778068496 571565373 127467585 538468888 542205633 542205633 541884608 537993729 572235501 990010869 990010869 657054894 657054894 713026488 713026488 517999706 247826732 247826732 66637544 147606802 284722674 315673170 335436610 335436610 278934162 310513746 310513746 290483746 290483746 378645466 378645466 283921810 470071320 470071320 278063628 412389212 412389212 374742302 374742302 292952994 261120488 278847042 368416830 368416830 497954152 497954152 293420266 276812320 206611120 158452984 164416976 164416976 148113988 148113988 179181844 179181844 145099296 185862708 189577280 189577280 46910660 46910660 500245230 500245230 340302494 480321870 480321870 99649542 281284624 470946379 512301301 571169348 822413347 822413347 748963548 641728665 875040887 875040887 491194483 939590208 939590208 763564644 814016804 814016804 949098823 949098823 785646228 785646228 153092388 613866631 919323952 919323952 640741633 605079056 575327521 666275405 731124312 731124312 519796724 519796724 294509890 367824488 557359400 607774473 607774473 444773390 444773390 370283032 806523920 806523920 1041423515 1041423515 760403671 626659909 503876127 145142164 170088516 425618968 425618968 481855234 855911291 855911291 876284178 876284178 829363659 909028851 909028851 855697752 393652592 393652592 488061486 831066116 965424231 965424231 134677723 638658572 828266562 828266562 738512429 415404103 341487992 128060136 128060136 131985144 131985144 44386216 17893792 17893792 11996928 11996928 145975744 145975744 141967744 150182852 150182852 167996992 167996992 564671863 564671863 749608269 749608269 396892215 665192857 665192857 472646694 797049164 823995623 823995623 717047633 701528925 593942961 629911496 629911496 872564832 898029675 898029675 593256117 662623297 807982756 807982756 167384359 226936312 226936312 730102992 730102992 442869892 449459606 563304210 563304210 15291105 12792256 41967744 41967744 159387984 412506484 412506484 648595752 648595752 556193476 874057200 874057200 806490785 874607748 1013634447 1013634447 677525508 543500673 70069512 247472152 247472152 662773812 662773812 767667201 767667201 537677316 680840993 680840993 481608645 739805529 739805529 854861684 854861684 982011072 982011072 999986727 999986727 567094976 445711556 195740848 195740848 141557124 167948948 167948948 58686624 172106416 172891284 175253008 175253008 39002896 40948096 40948096 39112864 52877616 62208112 62208112 46417952 77488744 85709456 110285400 110285400 109700184 109700184 31510936 50283680 85866034 347678538 470396824 470396824 457566390 327542838 56115570 518972272 518972272 632032617 632032617 355362370 498745433 498745433 296509930 715022020 1063935445 1063935445 860501427 836327676 546988680 886903278 886903278 303194768 130684160 130684160 285742594 285742594 270636232 338852394 368856770 368856770 431483758 527269332 527269332 801540529 801540529 673316975 920662267 920662267 898211404 898211404 892417897 740294925 237242385 151069764 139060356 138454016 396386356 396386356 295772182 424112904 424112904 287084750 295636066 295636066 403248666 445385800 445385800 309911856 292562914 289470754 643337130 643337130 547742800 868391776 868391776 402294691 401266194 549640704 836420456 836420456 575311952 305291419 606541657 919889307 919889307 812122453 812122453 546115282 818225669 818225669 718950532 818240449 818240449 685822917 612455499 645861368 645861368 52548496 52548496 109835432 109835432 76590602 279443778 339736970 339736970 288781920 360944872 360944872 345705672 316826746 294050890 356910136 356910136 50336928 27153472 20375840 40724944 40724944 208845680 208845680 253411456 253411456 136719740 176824340 255941854 813961702 813961702 750833096 480690506 1072641070 1072641070 581775673 1040660511 1071980815 1071980815 695182538 797071788 797071788 349547880 349547880 319729178 365829596 365829596 256280726 304418893 988358103 988358103 971514055 507644114 699024297 699024297 248851164 569859289 569859289 892897154 892897154 805831683 698877024 698877024 673186053 537462213 20979809 2581248 2581248 3184896 85011302 480512334 480512334 498385416 498385416 432046310 289424858 222470768 281310272 447402886 447402886 441133392 290241064 386220176 514069180 948142163 948142163 420774400 655843853 655843853 370773530 311429632 490842190 490842190 630149120 672727853 672727853 828713379 828713379 925183002 925183002 708937755 579094663 756443522 1037300463 1037300463 711062064 411042232 121258760 121258760 44359016 46940208 646328728 646328728 85548576 85548576 211804676 211804676 498171936 498171936 791510280 791510280 721604661 315618080 642439362 683671749 948293800 948293800 104899104 34652688 840061652 1038140232 1038140232 237704464 759706881 759706881 525219125 252406953 230987808 383064674 383064674 668909081 668909081 601047381 346412049 684687554 684687554 446388435 688591312 996196791 996196791 958354353 958354353 631415648 631415648 774049878 774049878 515737007 571675454 821171139 942805909 942805909 508036356 438489108 438489108 390077562 886580162 886580162 852659470 1049938527 1049938527 634930924 296135732 230106640 252381780 255204156 255204156 252630696 297065152 297065152 86902944 269093408 318810422 410393608 499628548 499628548 398109754 404540934 404540934 238306586 93649280 70935552 182908416 206043276 206043276 221954372 221954372 155079408 155079408 102714184 102714184 106762200 113131288 361311624 361311624 109325352 109325352 66414672 84191752 119808232 119808232 882306091 882306091 281210176 888897089 888897089 2829960 546580360 655493277 709112947 709112947 631069217 958875914 961721739 961721739 939781434 939781434 315742426 1005315273 1005315273 493775772 112362268 112362268 77863892 73975176 71567496 214075592 214075592 205705356 75777320 361814048 361814048 414064265 963677093 963677093 833519879 842468205 842468205 755053308 573712441 587606140 595857509 617750740 617750740 454033974 643047542 865775295 865775295 975368501 990113847 990113847 429479819 763487232 804113529 804113529 397700878 397700878 404545678 470043720 470043720 852286662 868270323 868270323 714576980 714576980 424596522 1057134820 1057134820 790178366 368354460 315487754 318322578 318322578 375060018 470603840 470603840 66342960 184815376 208696908 208696908 155882736 174037644 174037644 169960680 60428896 47727424 526927056 526927056 822676771 822676771 778117533 1021980873 1021980873 885463680 937168635 937168635 937175441 937175441 822158076 606478324 936468842 936468842 387506464 387506464 363909246 363909246 276947010 8413186 19005472 159843244 159843244 256387176 352337952 352337952 151159856 151159856 101921304 102445744 102445744 76254422 441153004 992662055 992662055 911229563 928538751 1016796240 1016796240 736248209 736248209 1032914587 1032914587 1007694979 800272801 800272801 272629890 566326626 891400025 933771114 933771114 347512970 893671945 893671945 84281352 100927532 167907348 278956056 379898202 438225256 438225256 254704308 254704308 335974386 446435752 446435752 316462504 316462504 95378274 57305280 222783258 534847070 534847070 336352290 344458314 357224688 436318224 472648964 472648964 384224464 245766212 245766212 630644939 1044662803 1044662803 851131669 847778259 706962310 846436012 846436012 514888542 514888542 753150343 754000845 983875006 995033505 995033505 322242330 113506883 113506883 665357088 665357088 657230756 217353789 148949092 219431400 219431400 256861716 256861716 219928100 219928100 173626880 173626880 38654688 50466864 50466864 15476368 20457344 56954144 137430964 137430964 53560960 53751600 53751600 144146416 144146416 158741252 158741252 187672884 187672884 137200304 32535248 87438218 1025773589 1025773589 503479090 450210710 450210710 290792419 708841700 708841700 546573611 677184912 708127509 742301123 742301123 380588799 94811644 296431429 460976737 460976737 198124929 695290835 695290835 1025630572 1025630572 1068240255 1068240255 571608209 571608209 555782432 601371376 601371376 288887192 287182848 52957056 616821536 616821536 806777305 806777305 321964547 809684944 809684944 743832021 537142232 537142232 740043781 740043781 737800192 737800192 62569272 163366656 286725956 287819670 287819670 139456256 282757680 282757680 273807618 171779616 171779616 167986464 420351560 421900256 421900256 21551264 21551264 134258816 134258816 134438948 859853046 859853046 731234417 910612622 910612622 626319529 398850772 102017096 697049176 830745731 830745731 827188464 382458072 46682201 381817050 541250704 885658827 885658827 820144336 820144336 849600818 849600818 352363266 352363266 566234080 566234080 555550330 698156129 698156129 952927786 952927786 548054386 93930579 93930579 945697346 945697346 775297565 775297565 707803180 707803180 564343137 794821092 794821092 839311384 839311384 878319243 878319243 1043964937 1043964937 281592384 313729922 313729922 280084752 12944528 15390144 28482432 28482432 352058842 352058842 331912034 353576992 584499145 584499145 498052162 666033907 1033087486 1033087486 696544181 594476129 458025696 458025696 440451222 902685835 902685835 1045594286 1045594286 936657563 911248123 911248123 84119849 871034883 871034883 564843873 885020074 885020074 299748874 352698400 835356774 953587787 953587787 871554247 870987159 699408467 286369718 463515811 463515811 723550597 723550597 728782148 728782148 186392120 546663193 546663193 186181244 760222227 760222227 425199270 418911336 418911336 115605960 1010237733 1010237733 632534030 874151212 874151212 337402114 270589480 3992360 14561728 14561728 3398144 7468800 8124288 345028886 345028886 570506310 652594261 987759063 987759063 803235949 655671829 655671829 847394675 847394675 734737883 690730030 518597214 518597214 841000746 841000746 601886347 474678822 873439683 873439683 114880856 501052090 1024727717 1024727717 848965189 980566751 980566751 646117493 251768832 244033909 122358968 63513840 944744614 944744614 655062308 409094726 778068496 965598402 965598402 481052942 854934200 854934200 556862565 537985024 537993729 739584704 739584704 735673881 499550233 518794576 518794576 210335320 353182162 353182162 340543498 244689664 488228134 488228134 315673170 335436610 335436610 285148482 310513746 310513746 290483746 290483746 378645466 378645466 283921810 220827108 408018712 408018712 333091564 333091564 115085732 392824208 392824208 261120488 261120488 510752400 510752400 497954152 497954152 293420266 276812320 206611120 158452984 164416976 164416976 148113988 148113988 179181844 179181844 145099296 185862708 189577280 189577280 143675844 140422784 500245230 500245230 340302494 480321870 480321870 370219496 370219496 281284624 505800990 505800990 411361684 951845064 951845064 471965902 536895144 536895144 402917382 939590208 939590208 690479427 814016804 814016804 949098823 949098823 785646228 785646228 153092388 613866631 919323952 919323952 640741633 605079056 73400712 73400712 38929288 166733000 519796724 519796724 392361758 392361758 817689654 817689654 607774473 444773390 444773390 697044069 726667336 726667336 1041423515 1041423515 760403671 626659909 503876127 120202240 529348992 529348992 425618968 917628787 917628787 574355217 574355217 67108864 67108864 34578472 118223928 367977290 393652592 393652592 93081680 831066116 965424231 965424231 134677723 638658572 840763462 840763462 714679893 861528254 861528254 323396816 287660448 103066144 306049608 376901394 376901394 404626070 452336598 452336598 405089092 145975744 143688020 143734608 143734608 161119328 161119328 169152628 169152628 6456192 582137030 945183391 945183391 718417657 472646694 797049164 1009652788 1009652788 618306464 618306464 638298738 638298738 629911496 872564832 1003013367 1003013367 898630255 767186794 848954916 848954916 152573523 226936312 226936312 174988692 442869892 442869892 449459606 590687008 593881521 602974912 602974912 30501376 20201984 159387984 412506484 412506484 1064337772 1064337772 246416220 874057200 874057200 344359149 928150452 1008853263 1008853263 677525508 543500673 70069512 128406548 128406548 94372188 86525304 86525304 612649992 612649992 612417609 537396232 67634177 33296288 33296288 29624544 29624544 8421536 8278144 27445044 42940964 145277204 145277204 195740848 195740848 54748932 1445888 1445888 4984832 139466880 139466880 12811800 116329640 116329640 91893032 355768834 355768834 280206624 345154376 345154376 357464874 498908428 498908428 490724802 409102028 86923552 204474376 221250348 221250348 151309064 19997472 470396824 470396824 457566390 341780814 341780814 518972272 518972272 484493640 484493640 355362370 378117836 378117836 296509930 451955108 451955108 404132234 464400678 464400678 161983348 110580396 350574920 366443370 396442416 396442416 285742594 285742594 270636232 338852394 368856770 368856770 431483758 527269332 527269332 801540529 801540529 673316975 920662267 949045907 949045907 898211404 892417897 1064952506 1064952506 159485105 435421800 537647940 948259882 948259882 338577552 329863742 482052756 482052756 222233730 282201584 282201584 322438976 322438976 309911856 292562914 289470754 643337130 643337130 547742800 868391776 868391776 402294691 401266194 1064978068 1064978068 836420456 925554592 925554592 606541657 919889307 919889307 812122453 812122453 546115282 818225669 818225669 718950532 818240449 818240449 685822917 612455499 645861368 645861368 349385418 281002752 71306752 42091280 42091280 35690464 80773120 80773120 288781920 288781920 345705672 345705672 316826746 67169258 339836928 339836928 136854163 205167980 205167980 68758069 68758069 208845680 264315132 717824545 717824545 136719740 910310095 910310095 813961702 813961702 750833096 480690506 983713798 983713798 581359953 1040660511 1071980815 1071980815 695182538 797071788 797071788 395596832 245654382 128190856 250087636 250087636 224398420 224398420 134222016 230817792 230822124 230822124 985746933 985746933 149808612 778603693 778603693 539002880 680002629 1034028395 1034028395 1009258757 673186053 537462213 361482665 361482665 349495491 275448810 494630952 494630952 480512334 476506214 475386600 289424858 289424858 222470768 222470768 447402886 447402886 274287864 365511522 365511522 514069180 514069180 475661056 420774400 319909398 319909398 383820838 383820838 490842190 490842190 630149120 654979345 671101111 828713379 828713379 176226609 163692736 163692736 339873930 339873930 165859812 239222918 411042232 411042232 172314968 121258760 99743936 105720864 646328728 646328728 85548576 85548576 211804676 211804676 870964554 893906816 893906816 835002496 835002496 603543185 642439362 683671749 948293800 948293800 268644738 885716067 885716067 1038140232 1038140232 306450770 585113603 585113603 525219125 230987808 230987808 383064674 383064674 520651326 520651326 512018526 512018526 306743636 246133135 908412231 1051204009 1064222853 1064222853 958354353 958354353 918127738 918127738 597433037 530302510 515737007 332928898 276436866 281679394 508036356 508036356 438489108 438489108 308831774 886580162 886580162 852659470 1049938527 1049938527 634930924 296135732 230106640 369233594 369233594 358793784 329173682 292162640 92291406 335593680 381681882 422112826 422112826 499628548 499628548 398109754 404540934 404540934 292007136 292239464 292239464 70935552 54193568 63001880 452002618 452002618 249639120 378085882 378085882 218309752 305137566 305137566 369635984 369635984 418789830 418789830 214065880 333474266 340132322 340132322 358652682 358652682 73909160 338648714 338648714 6029952 109847624 109847624 147146948 147146948 136941588 958875914 961721739 961721739 939781434 939781434 315742426 1005315273 1005315273 578947117 578947117 234175188 1009732505 1009732505 862636816 367617474 792741020 1021734949 1021734949 707663912 739907920 956962616 963677093 963677093 833519879 842468205 842468205 699017560 733513817 753222941 753222941 617750740 646185818 808717059 808717059 865775295 865775295 975368501 990113847 990113847 563676673 822207491 822207491 723602021 641007720 806683147 806683147 608930983 608930983 810548352 1011874959 1011874959 759521574 759521574 399557370 370620512 935481866 935481866 361117966 281494464 318322578 318322578 7414656 199633884 199633884 103827824 184815376 208696908 208696908 155882736 174037644 174037644 431247730 431247730 151509840 526927056 526927056 745120852 778117533 778117533 753142221 753142221 608316753 436878681 1036659154 1036659154 964763751 378021034 427889440 427889440 398066892 387506464 1068618235 1068618235 584632994 759843850 759843850 303699504 781651164 935539371 935539371 876820814 925695368 1038496084 1038496084 338431242 338431242 204213516 457516474 457516474 441153004 445780566 445780566 286075940 139498228 16777248 276824536 726745540 1032914587 1032914587 468280297 603985444 603985444 563189297 588411697 891400025 933771114 933771114 687343106 893671945 893671945 763008513 763008513 629066560 602997528 635037417 847406778 847406778 254704308 254704308 29471748 446435752 446435752 316462504 316462504 95378274 287932496 287932496 534847070 534847070 146569188 344458314 357224688 436318224 446167062 446167062 372153244 49132752 130234461 539658315 1044662803 1044662803 847778259 978862933 978862933 706962310 816338813 816338813 804947965 802371139 754000845 997453690 1043222611 1043222611 612664476 709805445 709805445 740869389 740869389 259016001 647792220 647792220 736414197 736414197 544531572 256861716 214114948 164051172 58126912 58126912 38654688 50466864 50466864 21540288 830409235 991828768 991828768 839103875 959497895 963006471 963006471 951019079 951019079 967897431 967897431 864000004 187672884 137200304 63342096 87438218 348048168 348048168 28711776 29759712 287445218 429341340 708841700 777075910 777075910 677184912 708127509 742301123 742656832 894679928 894679928 291933118 674426908 688169100 724483692 724483692 289194536 1025630572 1025630572 926644848 993535604 993535604 340128272 357223728 357223728 339787914 288887192 287182848 126749242 78769768 269115690 269115690 819705792 819705792 809684944 875171089 976830249 976830249 537142232 130889529 78971656 87425056 87425056 153130112 163366656 423953404 423953404 239926054 135825556 145629956 145629956 35080432 35080432 31883728 50780208 125967008 125967008 90310400 28584072 21793128 145404640 145404640 429634886 859853046 859853046 433275041 910612622 1050951680 1050951680 2232576 2232576 697049176 697049176 644373880 382458072 382458072 371586420 381817050 541250704 885658827 885658827 820144336 820144336 849600818 849600818 352363266 352363266 566234080 857800994 857800994 698156129 698156129 952927786 952927786 411125601 203364192 74449800 74449800 325452399 775297565 775297565 707803180 707803180 564343137 669012515 981768595 981768595 839311384 242882460 941604616 941604616 811729926 281592384 313729922 313729922 280084752 3210112 4452480 22295808 84660632 84660632 38664976 119348072 332925266 584499145 584499145 498052162 666033907 1033087486 1033087486 594476129 594476129 458025696 458025696 440451222 902685835 902685835 1045594286 1045594286 823165568 823165568 122390264 94867712 866547121 866547121 375590386 600735147 600735147 365366952 365366952 352698400 273078402 134496300 84199464 699408467 699408467 382009980 463515811 463515811 451671399 319966564 52244016 99012104 99012104 546663193 546663193 722430686 760222227 760222227 425199270 418911336 418911336 708253730 1010237733 1010237733 632534030 874151212 874151212 337402114 672473357 672473357 907654123 1006376308 1006376308 870244083 566836242 886749308 931806412 931806412 652594261 987759063 987759063 605105444 554655913 268460876 352047338 352047338 481555948 481555948 518597214 518597214 841000746 841000746 160449479 576606400 651375321 651375321 1054224986 1054224986 797013166 922996832 922996832 980566751 980566751 581918088 653489633 653489633 553671298 977415495 977415495 944744614 655062308 640235044 640235044 965598402 965598402 481052942 854934200 854934200 677478468 677478468 547439941 739584704 739584704 537993729 468530176 518794576 518794576 502904314 502904314 383779290 380905844 244689664 488228134 488228134 109657216 214904017 948554629 948554629 671796823 947322117 947322117 243146652 243146652 847466941 1021537667 1021537667 861957538 408018712 333091564 333091564 115085732 392824208 392824208 297293568 185388084 510752400 510752400 164245854 3459840 228639704 238244916 670585338 778244886 778244886 721236386 769065914 769065914 108941700 293608544 598346832 832704498 832704498 692062928 692062928 596413506 140422784 10300992 523891168 523891168 370663962 370219496 370219496 219177658 1046530333 1046530333 448791834 951845064 951845064 167555019 536895144 536895144 402917382 638597120 638597120 595809680 595809680 863912882 863912882 416161186 416161186 231349413 776346136 776346136 945570857 945570857 347227225 658555857 658555857 623952169 94372200 94372200 102438480 238477096 392361758 392361758 817689654 817689654 442683798 487593488 487593488 697044069 726667336 726667336 639161889 192942628 264377428 264377428 108248632 140481336 529348992 529348992 329328473 917628787 917628787 844902690 844902690 571903107 828238521 828238521 661861305 931935251 931935251 604385723 834457891 884239387 884239387 868270323 286894139 92874282 856194048 907666971 911654016 911654016 861528254 323396816 287660448 103066144 306049608 376901394 376901394 404626070 452336598 452336598 405089092 174102292 174102292 167826496 148163284 186279168 690102310 898642182 898642182 985897228 985897228 945183391 945183391 718417657 1018053573 1018053573 1009652788 1009652788 595868832 812596521 812596521 638298738 425004479 478168249 1003013367 1003013367 977925268 977925268 848954916 848954916 173773854 679184273 679184273 161354756 55328416 55328416 60866640 590687008 593881521 602974912 602974912 30501376 20201984 17927394 296582498 296582498 1064337772 1064337772 584844519 540978624 1035294273 1035294273 953226497 1008853263 1008853263 647909569 791854357 791854357 667828348 667945356 667945356 552987585 772977161 772977161 741295872 612417609 419531873 136848491 33296288 33296288 29624544 29624544 8421536 8278144 21155936 21155936 156393476 156393476 153564288 153564288 35253268 41767728 41767728 37526144 139466880 190188496 190188496 165809840 116329640 270503840 355768834 355768834 299618304 345154376 345154376 357464874 498908428 498908428 490724802 409102028 90805216 204474376 221250348 221250348 151309064 374990490 374990490 119366194 135603856 341780814 469577718 481163786 481163786 484493640 484493640 83237832 83237832 108498256 108498256 348180000 366743274 366743274 464400678 464400678 182692048 182692048 350574920 366443370 396442416 396442416 90362280 61055192 94413200 119131256 122997432 122997432 53527344 125586768 125586768 122871504 122871504 281547648 281547648 949045907 949045907 542435928 528293528 1064952506 1064952506 486563977 542668330 589901593 948259882 948259882 453093548 453093548 482052756 495116066 495116066 282201584 282201584 322438976 322438976 310454480 310454480 318379986 318379986 44172930 371562904 371562904 99015144 125750898 472254566 1064978068 1064978068 277926528 925554592 925554592 512035091 201400332 201400332 247903312 247903312 34067584 280076560 311476818 311476818 42936258 277938946 284466568 284466568 338086280 349385418 349385418 281002752 71306752 10633728 10633728 344214570 369315570 369315570 300920874 300920874 340137600 381353656 390189912 390189912 339836928 339836928 136854163 205167980 992616334 992616334 318382364 318382364 348176586 717824545 717824545 243327556 910310095 910310095 801243210 801243210 927145282 963167655 983713798 983713798 581359953 404760838 405078278 405078278 35201344 278193786 395596832 395596832 315695826 128190856 457197376 457197376 453766594 522441978 522441978 409703870 451637686 451637686 985746933 985746933 149808612 778603693 778603693 811545603 941436423 1034028395 1034028395 1009258757 633408556 482683978 361482665 361482665 349495491 275448810 494630952 494630952 404787212 404787212 342850954 342850954 234306540 234306540 167037924 426039716 467464646 467464646 448394910 365511522 533632884 533632884 503587072 503587072 201326642 202124860 383820838 383820838 223192532 218902668 620832780 620832780 524822680 524822680 441265302 920739020 920739020 438472819 40118288 33630592 33892368 211685632 211685632 172314968 172314968 99743936 99743936 105720864 604904545 604904545 596251658 914685954 914685954 330068033 870964554 893906816 893906816 835002496 835002496 603543185 601542688 273863346 58904688 201852140 268644738 885716067 885716067 553878635 278992778 391250378 776077380 776077380 596366393 208525544 630382881 630382881 472501860 675454991 675454991 538560295 512018526 580154113 580154113 908412231 1051204009 1064222853 1064222853 925896108 925896108 918127738 918127738 1016290049 1016290049 943982727 943982727 698139339 626754625 873576234 873576234 238372438 249760864 585912444 605668096 605668096 385570633 354648506 359916714 359916714 428928680 428928680 525058874 525058874 358793784 329173682 488739164 488739164 335593680 381681882 422112826 422112826 214312516 490138824 490138824 296889122 292007136 292007136 292239464 292239464 16767242 374948096 374948096 452002618 452002618 249639120 505616802 505616802 323739918 305137566 305137566 369635984 369635984 418789830 418789830 214065880 333474266 340132322 340132322 552259651 552259651 357113482 617747779 873727808 879496587 879496587 601724169 981967014 981967014 707925580 707925580 545865498 431370024 496975470 496975470 399358838 198321136 762661845 762661845 720677805 234175188 1009732505 1009732505 862636816 367617474 792741020 1021734949 1021734949 707663912 739907920 956962616 956962616 121147194 41141586 430043986 649313138 649313138 733513817 753222941 753222941 596641600 646185818 808717059 808717059 552109026 646260825 646260825 889235056 889235056 860103744 822207491 822207491 889512574 889512574 889260067 889260067 608930983 608930983 810548352 1011874959 1011874959 759521574 759521574 477227384 477227384 935481866 935481866 336761083 112936496 369528282 383916504 385802202 385802202 301178088 106634984 67288896 125660008 128390848 128390848 120526432 120526432 431247730 431247730 151509840 420226394 420226394 428169257 478623822 715204760 753142221 753142221 608316753 436878681 1036659154 1036659154 964763751 694321613 578934250 910970288 910970288 876888069 1068618235 1068618235 584632994 940152848 940152848 1050347768 1050347768 935539371 935539371 876820814 925695368 1038496084 1038496084 338431242 338431242 245303868 520749684 520749684 665532283 1040163475 1040163475 1056978959 1063281024 1063281024 689358884 689358884 689134085 823291425 853251707 874391770 874391770 563189297 588411697 588411697 536626029 536626029 687343106 763396814 763396814 763008513 763008513 629066560 602997528 635037417 847406778 847406778 532415270 415604422 304839002 291696000 293170466 385792512 385792512 92307584 287932496 287932496 84460584 354037796 354037796 369174788 369174788 214514773 1046428895 1046428895 913120905 1017364551 1017364551 482888129 226515300 294846480 328413810 978862933 978862933 435922645 816338813 816338813 804947965 802371139 696773153 997453690 1043222611 1043222611 671238979 913850870 913850870 740869389 740869389 270075400 647792220 647792220 736414197 736414197 544531572 34685968 135451140 168039060 173185552 173185552 37295680 37295680 83893842 361105210 830409235 991828768 991828768 839103875 959497895 963006471 963006471 951019079 951019079 967897431 967897431 864000004 411609168 411609168 274648736 274648736 834110003 834110003 165817262 384041096 384041096 429341340 683098905 777075910 777075910 806422114 806422114 115306869 742656832 894679928 894679928 291933118 674426908 688169100 724483692 724483692 628312880 628312880 926644848 926644848 993535604 993535604 327952384 357223728 357223728 159155572 162349740 162349740 126749242 78769768 1023625527 1023625527 819705792 819705792 806002419 875171089 976830249 976830249 244059205 650252505 704396505 704396505 544839972 166994880 166994880 423953404 423953404 388453432 388453432 368059624 393223914 393223914 114350840 242276148 242276148 329092808 498823844 498823844 28584072 21793128 145404640 145404640 429634886 696492064 696492064 548159569 642832796 1050951680 1050951680 1016352784 440832577 902301888 902301888 977947101 977947101 751167693 705199186 443196808 443196808 336125000 336125000 362556002 362556002 323365986 458755903 458755903 942409110 1069919904 1069919904 857800994 540354954 540354954 411041928 536878225 536878225 240322844 240322844 683485824 683485824 538607690 512552590 512552590 888672202 888672202 944130508 981768595 1040189461 1040189461 325124375 941604616 941604616 307984459 608547026 608547026 312992856 312992856 817300545 817300545 312445184 312445184 84660632 53338640 119348072 119348072 95082544 92409960 468222940 510161418 510161418 813993621 813993621 591970886 643066553 643066553 628971555 656912889 928416230 928416230 572592840 572592840 388084528 388084528 357854304 357854304 289406234 301451146 301451146 293880576 365366952 365366952 478532260 478532260 206716936 84199464 156625572 382009980 382009980 268484610 719458773 719458773 1006379729 1006379729 557843364 35128848 685613664 685613664 722430686 722430686 521721472 421034691 299246490 259839348 708253730 1019222466 1019222466 550900619 144841475 68605952 203538689 672473357 672473357 907654123 1006376308 1006376308 870244083 566836242 886749308 931806412 931806412 618108564 269410532 684475413 684475413 674423328 674423328 812079403 812079403 644969127 621111800 393241430 114559704 584141696 584141696 118522281 914894936 914894936 906630171 1054224986 1054224986 797013166 922996832 922996832 743269578 685843520 204940749 653489633 653489633 553671298 977415495 977415495 969811762 969811762 789359798 789359798 496383833 13765834 6365568 103047220 137372864 677478468 777338801 777338801 649273057 411250758 461376110 461376110 411114008 281211468 502904314 502904314 383779290 380905844 302434316 486094610 486094610 457814273 885858646 948554629 948554629 671796823 947322117 947322117 351249000 293527458 847466941 1021537667 1021537667 1058534995 1058534995 963017050 183765972 358090410 358090410 297293568 297293568 420954246 420954246 829783029 829783029 397940266 994450667 994450667 670585338 778244886 778244886 721236386 769065914 769065914 108941700 293608544 598346832 832704498 832704498 692062928 692062928 596413506 277481138 376988726 523891168 523891168 370663962 272928904 291848258 291848258 1046530333 1046530333 994914225 859574241 859574241 656970194 903893002 903893002 772351005 772351005 743942536 743942536 721292480 863912882 863912882 705746483 898797550 898797550 776346136 776346136 945570857 945570857 546542737 658555857 658555857 667418772 688079038 688079038 253162587 253162587 923707233 923707233 994388119 994388119 705575877 889326080 889326080 295312010 328470138 328470138 652085329 652085329 264377428 626919648 626919648 694533577 928246652 928246652 50562080 50562080 288072208 844902690 844902690 571903107 828238521 828238521 661861305 931935251 931935251 604385723 834457891 884239387 884239387 868270323 333810112 92874282 856194048 907666971 911654016 911654016 400291578 400291578 320046280 30609472 8450176 8450176 4786176 4794496 173709312 173709312 168168000 174102292 174102292 167826496 148163284 186279168 690102310 898642182 898642182 985897228 985897228 812539948 783060293 576723982 1018053573 1018053573 602546248 602546248 595868832 812596521 812596521 573350784 576290105 428517354 428517354 208925580 977925268 977925268 428497992 389480985 173773854 679184273 679184273 161354756 55328416 55328416 30476308 29495520 14729664 14860544 20093632 25465632 27629696 27629696 296582498 536696822 536696822 584844519 584844519 540978624 1035294273 1035294273 953226497 953226497 870963289 647909569 791854357 791854357 667828348 771890037 926293351 926293351 772977161 908906083 908906083 884836136 884836136 684498661 684498661 160439872 160439872 22296064 22296064 16270336 40007008 58909648 156393476 156393476 153564288 153564288 51115056 66807840 66807840 98373768 98373768 269404002 352932488 352932488 355661738 355661738 300212258 300212258 299618304 358065288 358065288 277015232 93866688 93866688 88203432 90805216 90805216 87006024 87006024 196995892 196995892 374990490 374990490 417333702 417333702 329787654 469577718 469577718 369147930 418537624 418537624 167672876 440789124 445037110 445037110 458685350 458685350 455081526 449146578 449146578 418228038 408518530 197657844 197657844 401186292 401186292 376488858 474224028 474224028 525303774 525303774 424861122 398626306 398626306 392635088 323451722 143673552 281547648 281547648 596123707 992490158 992490158 777656317 677728972 677728972 754133316 754133316 589901593 644588980 644588980 453093548 453093548 17425440 495116066 495116066 275295026 275295026 59580800 50604144 310454480 310454480 318379986 318379986 364382058 371562904 371562904 294783496 356651872 472254566 490376388 490376388 857410665 857410665 1055019344 1055019344 583298335 404040198 404040198 808217296 808217296 711199125 541276436 311476818 42936258 277938946 277938946 277160896 16277664 98539368 98539368 85131616 90248520 92010408 92010408 344214570 369315570 369315570 300920874 300920874 340137600 381353656 390189912 390189912 296031240 296031240 694083284 694083284 992616334 992616334 318382364 318382364 348176586 348176586 172015760 243327556 243327556 343937040 801243210 801243210 927145282 963167655 963167655 502318062 502318062 484027104 470787576 470787576 747266610 747266610 633165664 355852944 315695826 94118746 457197376 457197376 453766594 522441978 522441978 505413918 505413918 451637686 468206820 468206820 57508080 404050656 725390164 811545603 941436423 941436423 451217361 16986916 15217920 15205824 69799936 82883976 82883976 74679048 8520460 350961800 404787212 404787212 342850954 342850954 268748802 268748802 167037924 426039716 467464646 467464646 448394910 136535814 533632884 533632884 503587072 503587072 374680618 386990090 386990090 334529064 46432744 218902668 218902668 151445576 524822680 524822680 441265302 920739020 920739020 438472819 107554200 107554200 90776888 211685632 266289184 266289184 249560796 120159044 117667264 613375744 613375744 604904545 596251658 914685954 914685954 330068033 371920810 570494211 570494211 10608960 10608960 115401312 115401312 80302824 42124496 201852140 201852140 480821288 480821288 430441830 278992778 541459171 857411202 892974419 950707492 950707492 1053227121 1053227121 707714578 944245900 944245900 538560295 243847173 580154113 580154113 188745896 294606238 605208229 895052048 895052048 682814554 512629854 298942972 1016290049 1016290049 943982727 943982727 698139339 626754625 873576234 873576234 560151936 560151936 585912444 585912444 570548241 39907217 210279660 210279660 145980416 428928680 428928680 525058874 525058874 90959534 51929760 488739164 488739164 284961230 201251316 201251316 214312516 248389184 490138824 490138824 296889122 216609216 216609216 323479064 323479064 305681146 381430288 381430288 25582880 36556816 36556816 505616802 505616802 323739918 36250896 33628176 92539152 193081656 193081656 130296176 132178376 132178376 131952264 131952264 552259651 552259651 357113482 617747779 873727808 879496587 879496587 601724169 981967014 981967014 707925580 707925580 545865498 480939026 496975470 496975470 409027432 486589182 762661845 762661845 720677805 385913090 76591320 556115332 556115332 216080844 582041856 582041856 146408522 296932194 839916386 839916386 302945793 504464508 504464508 310562898 401353016 401353016 344752838 344752838 596641600 596641600 574104241 351347658 917512337 917512337 646260825 646260825 889235056 889235056 860103744 537445376 537445377 889512574 889512574 889260067 889260067 335552520 95234080 546975296 546975296 283037725 301994802 303038982 477227384 1049977987 1049977987 920773083 920773083 112936496 821657926 951263568 951263568 985157120 985157120 545859776 199295776 125660008 128390848 128390848 120526432 120526432 38505664 38505664 14680512 14680512 106972345 428169257 478623822 574761183 574761183 204872460 165151432 94115176 206377384 206377384 694321613 694321613 578934250 910970288 910970288 876888069 876888069 390283419 536874098 940152848 940152848 1050347768 1050347768 207042279 143590448 21208148 67401864 222882840 222882840 163190628 245303868 245303868 520749684 520749684 665532283 1040163475 1040163475 1056978959 1063281024 1063281024 689358884 689358884 689134085 823291425 853251707 874391770 874391770 348201152 379108506 379108506 365748776 365748776 151276130 878196 1435712 217336416 217336416 208948484 208948484 201399564 204349452 532415270 532415270 415604422 304839002 433237100 433237100 385792512 385792512 92307584 92307584 111893504 111893504 354037796 354037796 369174788 369174788 403189764 1046428895 1046428895 913120905 1017364551 1017364551 958924103 892543843 892543843 631251458 344479450 344479450 738250896 825873263 825873263 547092033 893244678 893244678 475042945 1021187313 1021187313 671238979 913850870 913850870 536387993 335618058 270075400 0 0 0 139481216 139481216 174720272 174720272 181932420 181932420 181015764 39980868 34341232 83893842 361105210 361105210 305661496 86061866 225654326 353184810 1046974770 1046974770 944292999 587915285 153686932 153686932 327047046 411609168 411609168 292751936 292751936 834110003 834110003 319064722 397280976 397280976 172333175 683098905 683098905 673974684 986974864 986974864 692429807 443548566 443548566 305399940 34992132 33738768 35387924 591241080 660709529 660709529 628312880 747931854 747931854 557572720 557572720 472916294 472916294 256936342 448976444 671468893 671468893 874506536 874506536 1023625527 1023625527 901651432 901651432 806002419 568341224 230949650 518860012 518860012 650252505 704396505 704396505 544839972 166994880 179318544 179318544 310369834 388453432 388453432 368059624 405140566 405140566 431497030 431497030 259990154 329092808 498823844 498823844 298532240 294200944 98844680 98844680 80645208 66794640 621007875 621007875 647024777 1040613896 1040613896 1016352784 539249685 902301888 902301888 977947101 977947101 751167693 705199186 443196808 443196808 336125000 336125000 353384586 353384586 309406981 458755903 658770046 942409110 1069919904 1069919904 418709528 0 0 104990732 659214697 659214697 634541596 673202912 683485824 683485824 538607690 813012526 878959563 888672202 888672202 944130508 944130508 1040189461 1040189461 325124375 680944724 680944724 307984459 608547026 608547026 312992856 312992856 817300545 817300545 312445184 312445184 53338640 53338640 5574480 3437312 101333632 107477400 107477400 399010080 399010080 823068395 823068395 998282166 998282166 643066553 628971555 656912889 928416230 928416230 682858014 682858014 388084528 388084528 357854304 575981689 575981689 396320314 908215051 908215051 349800482 349800482 478532260 478532260 206716936 286396618 300970338 300970338 765030728 765030728 719458773 719458773 1006379729 1006379729 557843364 165249140 685613664 685613664 696711062 696711062 308609687 420663846 502567096 502567096 670306542 1019222466 1019222466 550900619 877438372 877438372 894084872 894084872 672851215 338301440 702175036 702175036 663671897 663671897 580910673 811341544 811341544 618108564 269410532 684475413 684475413 674423328 674423328 812079403 812079403 644969127 621111800 317505722 317505722 584141696 584141696 375652658 914894936 914894936 906630171 643747971 375071881 801950950 839338061 839338061 739994178 685843520 204940749 165187932 241837400 259097792 412131908 429467238 969811762 969811762 789359798 789359798 474284416 1039467952 1039467952 310379016 310379016 659105512 777338801 777338801 649273057 873463819 873463819 487638351 615303980 758154288 758154288 348127434 348127434 433362480 433362480 302434316 201644050 700558730 885858646 885858646 581246019 437126657 1027233032 1027233032 365054685 293527458 364727940 680128100 680128100 1058534995 1058534995 963017050 183765972 358090410 358090410 321081960 321081960 420954246 420954246 829783029 829783029 440181157 994450667 994450667 762934340 762934340 245053020 474821848 1065297502 1065297502 630936483 540053505 194380629 34802784 34802784 166185076 166336832 170201588 277481138 376988726 412228088 412228088 142616032 142616032 291848258 291848258 345082592 994914225 994914225 744743105 656970194 656970194 903893002 903893002 772351005 772351005 743942536 743942536 721292480 721292480 719273685 705746483 898797550 898797550 682494650 648156124 449053819 815871040 815871040 608432273 635605209 667418772 688079038 688079038 604089400 253162587 923707233 923707233 994388119 994388119 890771273 890771273 889326080 295312010 328470138 328470138 652085329 652085329 96733416 626919648 626919648 694533577 928246652 928246652 850628616 931344648 931344648 808484945 667204072 613752010 576415450 909334097 909334097 914015746 914015746 566150944 28445985 298143762 298143762 333810112 333810112 32686080 352704608 352704608 336204498 295310360 400291578 400291578 320046280 54763792 54763792 103191568 103191568 149573780 176215232 176215232 168168000 176161792 176686164 176686164 144838980 144838980 8651008 2099264 344465664 694227378 694227378 783060293 783060293 418125497 380371446 380371446 602546248 602546248 320843330 306876600 726453861 726453861 576290105 721586440 791075133 791075133 757356861 1059461421 1059461421 986833586 1033553511 1033553511 801313002 407720168 454072854 457833922 817437685 817437685 406536704 327865458 306338176 25465632 27629696 27629696 24603168 536696822 536696822 353837808 468162940 468162940 322895520 491414194 491414194 870963289 870963289 600198492 784112381 784112381 738197517 1059270975 1059270975 926293351 657411137 908906083 908906083 884836136 884836136 684498661 684498661 416981718 999329844 999329844 815432304 815432304 853055600 853055600 569578672 291692944 36600768 42055152 51115056 66807840 66807840 98373768 98373768 269404002 356718080 356718080 355661738 355661738 300212258 300212258 30458690 358065288 358065288 368768586 368768586 362929128 362929128 286670280 90326976 90326976 77156384 196995892 196995892 149060112 352661224 417333702 417333702 467453540 467453540 415236294 369147930 418537624 418537624 167672876 440789124 445037110 445037110 458685350 458685350 455081526 449146578 980718369 980718369 552858561 583272657 583272657 569448231 602665361 602665361 565383745 474224028 552780162 777535930 777535930 398626306 398626306 392635088 323451722 143673552 288936710 556963510 596123707 992490158 992490158 777656317 677728972 677728972 754133316 754133316 236366527 522341170 522341170 174238128 174238128 118953742 292334542 292334542 131878570 283367370 300814754 300814754 293128018 104993618 370283034 370283034 364382058 364382058 108205962 294783496 356651872 356651872 207090308 755896012 857410665 857410665 1055019344 1055019344 718019804 875376781 875376781 808217296 808217296 711199125 541276436 273468546 876674 135168 4481280 92309832 92309832 98539368 98539368 85131616 90248520 92010408 92010408 30442016 128419792 128419792 82309608 113778288 113778288 76765856 68732424 100023008 100023008 138170377 773904217 773904217 571238273 571238273 261361680 261361680 227684940 650646585 650646585 46798032 640287177 640287177 504490048 600072519 640013492 906679323 906679323 502318062 502318062 484027104 470787576 470787576 747266610 747266610 633165664 61561408 58806208 62963952 116146384 218112748 218112748 169307904 493369496 505413918 505413918 281886968 999148881 999148881 325779568 837231751 837231751 671362208 688620193 688620193 622473319 696327786 696327786 692796906 890648352 890648352 470860490 481030154 481030154 415961544 350961800 341517066 341517066 269218818 268748802 268748802 4983936 144456384 282229814 282229814 78169416 219730748 219730748 187342806 187342806 123544450 374680618 386990090 386990090 336596810 130867864 369278360 389879638 389879638 1050279675 1050279675 624542247 480608827 864215146 864215146 690189459 471351076 1003262126 1003262126 888574210 455096712 249560796 120159044 117667264 615819264 615819264 116000641 839283088 839283088 583346194 817711504 817711504 590351824 590351824 817902514 817902514 897192130 897192130 80302824 25165920 438514698 438514698 480821288 480821288 430441830 441507410 747839511 857411202 892974419 950707492 950707492 1053227121 1053227121 707714578 944245900 944245900 853022580 853022580 346493056 404629666 498999150 498999150 422538484 422538484 470607282 512629854 512629854 59058288 59058288 357634304 359871402 359871402 403872166 403872166 295071726 409577358 690100504 690100504 769233542 769233542 646980825 276383761 350214658 415640586 415640586 341181004 297567032 297567032 270943832 384896116 384896116 369186072 350460194 284961230 201251316 201251316 123492308 248389184 248389184 18832540 208191006 397122330 397122330 323479064 350788740 522191166 522191166 381430288 177805764 177805764 166708420 166708420 186864944 262804404 262804404 135426560 167491028 167491028 226756340 226756340 180497064 28528800 97693120 97693120 84084432 103623960 103623960 57749392 71908176 71908176 42023456 126522048 126522048 97423368 411321370 411321370 246173776 480939026 480939026 235313416 409027432 486589182 486589182 318783692 385913090 385913090 77919240 556115332 556115332 216080844 249810960 249810960 831521055 831521055 839916386 839916386 745538445 795221791 795221791 580911441 1062015636 1062015636 344752838 344752838 476963479 554706817 554706817 351347658 917512337 917512337 118005329 424961904 975385380 975385380 352329728 354691195 354691195 1057011314 1057011314 695156133 695156133 491639051 95234080 546975296 546975296 283037725 902718123 902718123 708886677 1049977987 1049977987 920773083 920773083 36855296 821657926 951263568 951263568 985157120 985157120 545859776 199295776 130658728 130658728 59868480 64020592 64020592 68855344 76953368 82722632 82722632 226511152 226511152 304534486 339917582 339917582 204872460 165151432 420680844 420680844 400763562 225047942 440427712 889367864 889367864 730899603 841082215 841082215 271044774 536874098 536874098 681152676 681152676 1012339926 1028275863 1036729602 1036729602 567086240 604053506 604053506 296224098 296224098 287709474 287709474 349844048 481954208 481954208 434130976 434130976 182931860 135267072 135267072 198677204 198677204 188769508 416751164 416751164 346196298 282179456 114478544 345592346 345592346 319080498 302113346 302113346 798059295 798059295 217336416 450906814 726154034 726154034 941258254 941258254 200049732 200049732 289686726 433237100 433237100 374169738 374169738 348636176 348636176 251737374 497808750 497808750 386809878 386809878 342049188 403189764 403189764 341348632 237060748 0 958924103 958924103 892543843 892543843 631251458 344479450 344479450 738250896 825873263 825873263 547092033 893244678 893244678 475042945 189143220 598625289 615435388 615435388 685728037 685728037 778349892 778349892 751062601 751062601 591923889 576733360 576733360 174720272 174720272 443061442 443061442 439538454 311347650 852156051 852156051 865601139 865601139 767231208 767231208 542120381 353184810 1046974770 1046974770 1038261753 1038261753 706514448 721421314 721421314 189402114 24072704 292751936 292751936 272027986 319064722 319064722 397280976 397280976 166429736 162298312 503389010 503389010 986974864 986974864 692429807 443548566 521639657 947910264 947910264 389819617 89378021 591241080 660709529 660709529 502268910 747931854 941560064 941560064 768442984 768442984 665061480 774209788 774209788 671468893 671468893 874506536 874506536 815292488 678504838 901651432 901651432 568341224 568341224 230949650 518860012 518860012 198781024 175186836 217717120 217717120 52237840 179318544 179318544 174352152 346407448 346407448 339862066 405140566 405140566 431497030 431497030 259990154 96417712 96417712 298532240 298532240 294200944 98844680 98844680 336915170 336915170 621007875 621007875 647024777 647024777 338431242 539249685 539249685 875893578 875893578 768682607 641301961 451612896 498857838 498857838 344587400 281417922 275135720 353384586 353384586 309406981 326369851 658770046 658770046 514854535 717555712 717555712 741610383 741610383 514117892 659214697 661698120 661698120 673202912 673202912 417980512 436023270 813012526 878959563 878959563 349643075 13082944 968978792 968978792 504627367 656474354 656474354 483428700 483428700 310740544 310740544 271445826 42341440 43719936 43719936 45641088 45641088 45949824 60851104 61169792 86045488 101333632 107477400 337694612 399010080 399010080 823068395 823068395 998282166 998282166 176717890 542213138 593020593 763185996 763185996 682858014 682858014 128524552 128524552 312743242 575981689 575981689 396320314 908215051 908215051 323623152 312266322 316797426 316797426 57701184 286396618 545260096 545260096 765030728 765030728 415469653 449983174 449983174 281747988 267916576 165249140 749500008 749500008 696711062 718421248 718421248 420663846 787908844 787908844 670306542 670306542 606940425 606940425 877438372 877438372 894084872 894084872 672851215 999059324 999059324 738372487 663671897 663671897 580910673 572421825 1032332470 1032332470 230761851 224448388 628221800 628221800 616064589 557391945 150092685 182644308 182644308 317505722 461759868 461759868 879272837 879272837 389335866 170477734 642105049 642105049 370072719 915914433 915914433 739994178 739994178 278246925 740603388 740603388 634012420 660630627 989980899 1026370863 1026370863 760143021 977722447 977722447 474284416 1039467952 1039467952 310379016 310379016 713821700 713821700 267461628 267461628 873463819 873463819 612912992 615303980 758154288 758154288 348127434 348127434 433362480 433362480 214094030 478672064 700558730 700558730 581246019 581246019 596771200 1027233032 1027233032 742656141 742656141 364727940 680128100 680128100 512092254 512092254 159353938 289092872 289092872 275126658 321081960 321081960 511440348 511440348 505813326 791586282 945893591 945893591 367887469 762934340 762934340 245053020 474821848 1065297502 1065297502 630936483 540053505 683680016 966068870 966068870 537359680 554832082 554832082 187651448 187651448 152846100 135079428 142616032 142616032 78668104 86262952 345082592 345082592 731450000 731450000 701312229 538714921 366076498 848852585 848852585 645116675 645116675 348642376 158620336 240664242 240664242 332324082 332324082 299287402 773221761 773221761 344621122 815871040 815871040 608432273 635605209 635605209 589948209 604089400 604089400 193028176 815064342 815064342 449350336 649867417 890771273 890771273 564863498 252710918 11670336 11670336 9573184 9572928 1052736 134352944 184549428 184549428 352502335 781291533 850628616 931344648 931344648 808484945 667204072 613752010 576415450 909334097 909334097 914015746 914015746 7544384 20165936 39047216 62680464 62680464 43517520 32686080 32686080 42165328 105490168 105490168 102411416 102411416 25367392 54763792 54763792 103191568 103191568 149573780 176215232 176215232 180881040 180881040 176686164 176686164 176291844 135139412 673186054 939524183 984222003 990385587 1058538683 1058538683 504382472 504382472 380371446 380371446 346047802 346047802 320843330 306876600 726453861 726453861 380260656 721586440 791075133 791075133 757356861 1059461421 1059461421 986833586 1033553511 1033553511 801313002 407720168 454072854 457833922 817437685 817437685 406536704 327865458 306338176 7749888 7749888 154147600 154147600 138939312 140616240 140616240 266032892 266032892 247702088 247702088 168420372 190284480 692981612 692981612 784112381 784112381 738197517 1059270975 1059270975 453971209 389223178 803996996 970084038 970084038 564521313 432148710 432148710 426247590 999329844 999329844 815432304 815432304 853055600 853055600 569578672 291692944 20847776 31361216 31361216 26608288 26608288 30714208 30714208 15940096 356718080 356718080 69170176 70703880 277195266 277195266 30458690 30458690 8775744 368768586 368768586 362929128 362929128 286670280 90326976 90326976 155888160 155888160 44600032 197447088 197447088 65290772 168627376 467453540 467453540 420866662 173048468 192156656 192156656 54673920 152435536 489564284 489564284 403516422 138725508 434113203 824280450 980718369 980718369 552858561 583272657 583272657 569448231 602665361 602665361 565383745 153479936 552780162 777535930 777535930 277036992 264424016 376030615 747382025 873337053 873337053 556963510 556963510 845152659 845152659 287870309 451985911 451985911 724822460 800237183 800237183 902821578 902821578 121709270 525911742 525911742 421691710 421691710 489666690 489666690 300814754 487295978 487295978 474467078 474467078 426152168 426152168 332798672 308351106 308351106 95685344 207090308 714544224 755896012 755896012 855335576 855335576 485552971 718019804 875376781 875376781 421356672 310800770 272739328 305581208 312964514 312964514 296098146 284312610 277694232 277694232 367018192 367018192 93861152 93861152 68941320 69432040 76179208 342508280 351721904 351721904 38650480 76765856 76765856 71376968 100023008 100023008 138170377 773904217 773904217 571238273 571238273 497129964 497129964 227684940 650646585 650646585 492305070 640287177 640287177 504490048 390592698 255232636 534076118 534076118 231835898 209909252 220459308 220459308 102310564 588965889 588965889 355153194 575789427 575789427 211590140 92800104 92800104 1059400172 1059400172 722611718 689253718 736969106 736969106 999148881 999148881 467796084 837231751 837231751 304649552 205173218 587888766 622473319 696327786 696327786 692796906 890648352 890648352 470860490 481030154 481030154 415961544 285018572 480461772 525728078 525728078 142354562 142354562 155613204 323341028 982941877 982941877 78169416 219730748 655414994 655414994 988431266 988431266 822910529 624579002 640413929 640413929 558620849 800687480 800687480 389879638 1050279675 1050279675 624542247 480608827 864215146 864215146 690189459 471351076 1003262126 1003262126 888574210 455096712 163845953 692065173 712396693 712396693 615819264 687076293 959478203 959478203 967133540 967133540 1003348267 1003348267 1004538000 1004538000 817902514 897192130 897192130 638719162 1066628659 1066628659 714646113 617502729 1013204164 1013204164 738565257 915411904 915411904 912396699 843272795 660288483 371963401 325080168 562111334 827793728 827793728 853022580 853022580 843518357 404629666 498999150 498999150 704786517 704786517 1020151987 1020151987 855692599 855692599 908192449 908192449 904896462 904896462 950138398 950138398 14341824 409577358 690100504 690100504 769233542 769233542 646980825 940998480 940998480 796963242 796963242 341181004 334922640 315689318 270943832 384896116 384896116 369186072 444612978 444612978 90227112 316196290 336637080 336637080 289520528 489085888 489085888 397122330 404227590 404227590 372319516 522191166 522191166 85486318 508911446 508911446 166708420 166708420 471562294 471562294 262804404 204555016 204555016 167491028 226756340 226756340 180497064 117379824 70770528 84084432 123634408 123634408 103623960 61217136 71908176 71908176 244724256 244724256 126522048 97423368 97423368 128304504 151178252 202166308 202166308 33917972 63037680 63037680 588428369 588428369 26863200 313066752 942530883 942530883 899884045 899884045 1063302259 1063302259 831521055 831521055 825320300 553675444 745538445 795221791 795221791 580911441 1062015636 1062015636 498758605 279631170 243418626 203473424 829423904 829423904 810549891 621028112 118005329 424961904 975385380 975385380 239343904 354691195 354691195 1057011314 1057011314 695156133 832893289 832893289 612874498 546005057 572198530 614988105 902718123 902718123 708886677 1048642583 1048642583 929611872 921175515 94942651 69989640 109821952 109821952 44298576 10877696 16055744 115299984 130658728 130658728 59868480 64020592 64020592 68855344 76953368 82722632 82722632 226511152 226511152 304534486 304534486 125718584 142738444 142738444 420680844 420680844 400763562 225047942 436783124 889367864 889367864 714630054 841082215 841082215 795986940 476481782 538838617 538838617 457837782 1012339926 1028275863 1036729602 1036729602 567086240 604053506 604053506 530435678 314500480 530960300 530960300 426436262 481954208 481954208 413862284 498547566 498547566 398012996 110065256 193202292 193202292 315687008 332276698 346196298 346196298 114478544 114478544 345592346 487281678 487281678 445900342 444596254 798059295 798059295 162529636 471897492 726154034 726154034 941258254 941258254 200049732 200049732 135421060 135421060 128313720 374169738 570566761 570566761 394727496 924932185 924932185 497808750 495125274 386809878 936527275 936527275 720655555 720655555 442609348 964436901 964436901 688951971 203944012 649741528 649741528 907479642 907479642 1122816 205205884 205205884 286999224 286999224 765494566 979326839 979326839 808203488 898376850 898376850 685728037 685728037 778349892 778349892 751062601 751062601 591923889 576733360 576733360 140019584 76459264 443061442 443061442 439538454 830739076 852156051 852156051 865601139 865601139 767231208 767231208 542120381 445649786 902874837 902874837 1038261753 1038261753 956859426 956859426 940082208 324154882 324154882 319865394 65265056 25452816 52706144 52706144 108303012 220336428 260559644 260559644 211237452 503453720 684069186 684069186 546968833 413024142 521639657 947910264 947910264 677892603 404227590 404227590 403702784 137610786 502268910 502268910 941560064 941560064 768442984 768442984 665061480 774209788 774209788 203716628 203716628 222067792 425922658 678504838 678504838 134628320 117624888 271271504 271271504 159040446 138223776 198781024 198781024 139148528 145302852 145302852 203754496 203754496 174352152 228374336 346407448 346407448 339862066 51130658 35946752 36051216 75497992 75497992 115029720 295450776 295450776 106831546 27337440 98003304 98003304 336915170 336915170 302110274 538577798 681189253 681189253 802297520 802297520 752881933 814745892 814745892 768682607 641301961 603077776 498857838 498857838 241625410 302039042 302039042 337515560 337515560 126095362 118492240 545530048 612901576 612901576 717555712 717555712 928134106 928134106 514117892 514117892 661698120 661698120 278397956 278397956 531583584 531583584 933845142 933845142 835790801 302989522 302989522 968978792 1023547447 1023547447 956700711 656474354 1041898887 1041898887 844020234 844020234 308336169 307918544 814889537 814889537 309175632 309175632 41462880 60851104 61169792 271745818 271745818 825319811 825319811 969077552 969077552 420878998 420878998 663376780 663376780 609752721 644324375 1014231951 1014231951 403075473 102111768 69281144 128524552 128524552 47360720 47360720 33821184 34660880 34660880 323623152 323623152 312266322 316797426 424024230 424024230 401697245 545260096 667943160 667943160 675129001 675129001 186646068 747624985 747624985 396431586 257354320 749500008 749500008 547574100 718421248 718421248 46198501 787908844 787908844 665587065 558681096 606940425 606940425 564280424 19606148 139801888 543121409 604953609 999059324 999059324 738372487 885930523 885930523 927206672 927206672 1032332470 1032332470 889833904 869057243 492782188 492782188 413234086 413234086 143075840 143075840 150334404 242552608 461759868 461759868 1016666129 1016666129 389335866 766995761 766995761 642105049 595872467 915914433 915914433 373867674 706950688 706950688 740603388 740603388 685489092 808042594 989980899 1026370863 1026370863 760143021 977722447 977722447 260561013 699904684 703209096 703209096 207105768 713821700 797513461 797513461 267461628 570427432 570427432 612912992 612912992 435422342 515749516 515749516 439438232 439438232 278215212 214094030 478672064 478672064 554047524 1023594543 1023594543 861016326 627196467 802084018 802084018 793021775 910883719 910883719 666274432 1038616047 1038616047 760166722 289092872 289092872 275126658 103260656 103260656 511440348 511440348 168903198 791586282 945893591 945893591 422626086 1002968814 1002968814 897140406 285421602 687940103 687940103 927205380 927205380 683680016 966068870 966068870 537359680 554832082 554832082 187651448 187651448 118481848 118481848 57406896 56853504 27788864 19923744 275300777 350742594 731450000 731450000 701312229 487877902 487877902 848852585 848852585 645116675 645116675 551740561 551740561 725766176 823841205 823841205 809027331 57348691 773221761 773221761 674459446 688058908 688058908 199215845 199215845 656536564 670469022 670469022 290632262 545319804 545319804 611549444 854591523 956629673 956629673 462422644 989071405 989071405 732496003 778987026 778987026 420120071 838931995 838931995 806039610 520172565 218870388 202138700 126884976 877393400 877393400 257778831 573981696 953975583 953975583 617747145 470158023 470026254 569343712 569343712 26867712 39047216 177292212 193987188 193987188 22206412 26773088 195158376 195158376 230112828 230112828 170829396 25367392 75171840 78090432 78090432 336383242 346310666 346310666 373034778 373034778 337808914 302175234 336086034 344508442 344508442 673186054 939524183 984222003 990385587 1058538683 1058538683 690496821 504382472 67142680 67142680 715916357 715916357 357826948 521142846 521142846 942968685 942968685 314976927 747844173 747844173 603140977 603140977 589513301 735175140 735175140 713094049 713094049 422864680 494130602 494130602 439843364 152550166 18979680 31457536 31457536 24429760 25596256 154147600 154147600 138939312 140616240 140616240 266032892 266032892 247702088 247702088 168420372 591919165 692981612 692981612 537960100 546708033 546708033 45749809 934287266 934287266 684721017 830475814 970084038 970084038 564521313 432148710 432148710 426247590 847032324 847032324 154289008 177474132 179868416 179868416 65045296 63139888 63139888 59909280 46034640 52589696 52589696 74023432 74023432 271164354 364171400 364171400 72408098 70703880 336394571 546621515 817448515 817448515 538727048 341155338 283819936 886205962 886205962 816108801 816108801 616698986 675286738 675286738 552618758 452462146 452462146 300158902 69468556 495758782 495758782 420866662 173048468 192156656 272778888 273025410 273025410 489564284 489564284 403516422 239121422 434113203 824280450 913375626 913375626 803148473 803148473 320898722 320898722 49284048 45785344 180979142 306844818 456315680 456315680 277036992 277036992 2543616 376030615 747382025 873337053 873337053 190325210 287835122 845152659 845152659 594673843 627316588 627316588 724822460 800237183 800237183 902821578 902821578 121709270 525911742 525911742 421691710 421691710 489666690 489666690 150994884 487295978 487295978 474467078 474467078 426152168 426152168 56693810 308351106 308351106 60885618 39916016 714544224 714544224 591073248 834354113 834354113 444999891 380826070 112490892 421356672 421356672 310800770 246350678 305581208 312964514 312964514 296098146 284312610 277694232 277694232 367018192 367018192 93861152 373331384 373331384 288019746 107156722 342508280 351721904 351721904 30726464 30726464 8564832 71376968 77602880 204978412 204978412 157744752 166197732 535971948 535971948 497129964 497129964 205082902 205082902 424890020 492305070 492305070 306268240 390592698 390592698 303385242 29786242 159708200 163239780 209909252 1020032917 1020032917 150973174 588965889 588965889 355153194 575789427 575789427 211590140 92800104 92800104 1059400172 1059400172 722611718 689253718 736969106 736969106 413058256 385537786 467796084 467796084 304649552 304649552 147181056 70956296 70956296 1171968 6692360 6692360 67511816 68696576 68696576 69544200 69952388 285018572 404030342 480461772 525728078 525728078 142354562 142354562 155613204 323341028 982941877 1045989956 1045989956 1015470159 655414994 655414994 988431266 988431266 822910529 624579002 640413929 640413929 558620849 800687480 800687480 91800104 91800104 141566976 141566976 590724 268444672 269034498 269034498 269034496 67741250 295569556 425862176 444148838 444148838 692065173 712396693 712396693 666765736 687076293 959478203 1072202208 1072202208 1000153679 1057540579 1057540579 1004538000 1004538000 809506035 508744890 508744890 638719162 1066628659 1066628659 812658908 812658908 1013204164 1013204164 738565257 915411904 915411904 912396699 843272795 660288483 371963401 733480005 733480005 708363817 245416784 416712599 843518357 843518357 308390160 278251728 279431168 704786517 707632010 1020151987 1020151987 855692599 855692599 908192449 908192449 904896462 904896462 950138398 950138398 574957713 75755592 209736964 371819782 410463064 575840896 575840896 940998480 940998480 796963242 796963242 339772072 417588222 417588222 390320514 285571694 23399118 184103256 444612978 444612978 138969097 316196290 336637080 575717397 694684621 694684621 489085888 341419312 885626967 885626967 372319516 1046410883 1046410883 186340514 508911446 508911446 322574130 256411144 495653466 495653466 241122972 204555016 204555016 190842660 190842660 99738280 117379824 117379824 70770528 76553200 123634408 133033464 133033464 61217136 61217136 28744768 244724256 244724256 142624804 153102400 462475290 462475290 229235560 379674878 379674878 184087624 184087624 140109444 985897627 985897627 1052139204 1052139204 942530883 942530883 899884045 899884045 1063302259 1063302259 604000615 825320300 825320300 456110640 726049416 807343311 807343311 245939521 818129526 818129526 498758605 279631170 243418626 203473424 829423904 829423904 810549891 908199009 917698203 972755595 972755595 218568160 650056749 650056749 258944852 610510400 610510400 786683069 832893289 832893289 612874498 546005057 572198530 614988105 614988105 928604747 928604747 988729180 988729180 929611872 921175515 133231656 654519124 998846952 998846952 973368400 973368400 582607616 138300384 115299984 45614928 111707216 111707216 37275408 42500928 168222980 168222980 216418328 262372532 262372532 241698204 150285252 150285252 5268804 17566752 27301920 27301920 56900080 56900080 54604192 576887318 860030107 860030107 378160694 795986940 795986940 479274001 538838617 626271872 626271872 457837782 340977858 519066708 519066708 189582516 414503044 530435678 530435678 314500480 530960300 530960300 426436262 280194560 308292184 328599830 498547566 498547566 398012996 110065256 193202292 193202292 315687008 332276698 332276698 339910017 821366483 821366483 617297097 628365712 628365712 549560520 551922576 551922576 376751070 156410180 471897492 471897492 397252192 397252192 279631170 291523298 291523298 301737794 301737794 293339498 335689880 570566761 570566761 394727496 924932185 924932185 495125274 495125274 135043496 936527275 936527275 720655555 720655555 442609348 964436901 964436901 688951971 89595816 649741528 649741528 907479642 907479642 10098240 205205884 205205884 334672528 334672528 765494566 979326839 979326839 808203488 898376850 898376850 432775186 432775186 446081620 446081620 44664032 102536992 102536992 67632920 75960072 76459264 76459264 37820736 38221968 38221968 830739076 830739076 140514560 140514560 139072644 135402124 206705156 487723267 807539246 902874837 902874837 824755601 824755601 956859426 956859426 940082208 324154882 324154882 319865394 65265056 287655586 288099618 288099618 272345634 270553856 260559644 260559644 211237452 503453720 684069186 684069186 881142084 881142084 402917707 535096778 677892603 677892603 481518210 919851136 919851136 915481179 17824800 137117824 142249124 142249124 216237556 680534828 680534828 308084894 308084894 903815915 903815915 1003107036 1003107036 700617746 840859684 840859684 898155627 898155627 627197322 446768322 446768322 314581124 53292336 139148528 145302852 688217878 982884968 982884968 943133732 1036057660 1036057660 419920844 419920844 464642934 811547395 895020390 895020390 916755574 916755574 360126000 360126000 339550368 339550368 2293280 87908848 87908848 44989944 271581312 538577798 681189253 681189253 802297520 802297520 752881933 620759040 620759040 106302577 603077776 603077776 604655250 604655250 647249928 647249928 302039042 286081056 361355062 361355062 919232659 919232659 612901576 612901576 542713473 319096034 928134106 928134106 173590164 1044843813 1044843813 959872602 952291527 685282818 531583584 531583584 933845142 933845142 835790801 803635944 803635944 862247308 1023547447 1023547447 956700711 541069440 1041898887 1041898887 844020234 844020234 308336169 307918544 814889537 814889537 309175632 309175632 74045768 17566240 77009800 271745818 271745818 825319811 825319811 969077552 969077552 818946607 818946607 701711922 717341340 717341340 644324375 1014231951 1014231951 403075473 843986961 843986961 537746192 67802136 491338790 491338790 286238136 286238136 127046254 253735356 253735356 365581124 840349890 840349890 480057729 858260936 858260936 667943160 667943160 675129001 675129001 186646068 747624985 747624985 396431586 257354320 326106750 326106750 199329632 199329632 573345600 573345600 624351784 624351784 87743097 22006696 13029504 3825152 85066920 85066920 69326249 609059075 904521107 904521107 822487299 314728914 885930523 885930523 936904443 936904443 539042322 889833904 889833904 869057243 571943952 492782188 413234086 413234086 143075840 143075840 150334404 242552608 392807620 392807620 1016666129 1016666129 322362162 766995761 766995761 211122810 595872467 595872467 366350950 366350950 706950688 706950688 551891664 722114868 722114868 808042594 809665925 834979943 834979943 912741632 912741632 985959456 985959456 814541053 726262965 703209096 156287652 104039220 797513461 797513461 369361047 369361047 151259728 830227362 830227362 810935205 924145783 924145783 931829832 931829832 386874426 386874426 292528921 352505898 554047524 1023594543 1023594543 861016326 627196467 802084018 802084018 793021775 910883719 910883719 666274432 1038616047 1038616047 760166722 719587581 719587581 356829354 388873482 843583877 843583877 406254400 162706194 313644039 371669274 1059428725 1059428725 1002968814 1002968814 897140406 549902529 687940103 687940103 927205380 927205380 333447747 290269824 290269824 256992562 106381852 232418978 274568910 357042570 357042570 283300290 283300290 97508744 104886704 104886704 275300777 641141705 641141705 249266100 544781405 544781405 812762114 812762114 544810881 537416912 550709185 551740561 551740561 725766176 823841205 823841205 809027331 57348691 432485196 674459446 674459446 688058908 688058908 752535176 797122245 797122245 670469022 670469022 739907085 739907085 545319804 611549444 854591523 956629673 956629673 390535791 989071405 1059363109 1059363109 778987026 778987026 823304256 838931995 838931995 806039610 680562899 836018851 836018851 585949377 841606419 841606419 707767041 707767041 953975583 953975583 650886877 990982607 990982607 807642856 573745700 573745700 565375796 177299936 193987188 193987188 147910672 111623220 195158376 195158376 230112828 230112828 170829396 137540224 75171840 78090432 78090432 336383242 346310666 346310666 373034778 373034778 337808914 302175234 336086034 344508442 344508442 279200768 646188304 646188304 94989600 591963368 690496821 690496821 542728193 775530001 775530001 775472142 775472142 369642922 521142846 521142846 942968685 942968685 441206814 747844173 747844173 603140977 603140977 589447243 735175140 735175140 722385974 722385974 422864680 494130602 494130602 907227435 907227435 954604226 954604226 954567136 24429760 25596256 28653824 28653824 3968000 21866496 21866496 20804608 20804608 154238096 184472496 386581712 591919165 663623672 871503033 871503033 546708033 546708033 186551826 934287266 934287266 684721017 830475814 830475814 18605280 679433701 679433701 270750020 270750020 847032324 847032324 826879104 826879104 814781184 814781184 730219652 407223424 197570276 143243296 46034640 52589696 52589696 74023432 74023432 271164354 364171400 364171400 268889600 269274114 336394571 546621515 817448515 817448515 545292352 341155338 889796930 889796930 886205962 816108801 816108801 616698986 675286738 675286738 552618758 452462146 452462146 300158902 143822352 495758782 495758782 112323136 112323136 108110744 272778888 273025410 273025410 322938880 352253266 352253266 239121422 409187698 409187698 913375626 913375626 803148473 803148473 320898722 320898722 49284048 45785344 952156231 952156231 552506372 955230082 955230082 164878880 143742496 323980228 323980228 2242820 2242820 134291460 134291460 134291460 360808773 594673843 627316588 627316588 497864140 292395176 444855310 444855310 344716362 270636160 4875522 88405248 681975757 681975757 311359670 685976432 685976432 622015017 238748776 300024802 826470432 876180015 876180015 546559622 46337176 99381382 469668014 479942654 547422220 547422220 270256129 510678072 942789638 942789638 808403855 403514670 419500212 419500212 336015360 336015360 307501080 307501080 173348900 173348900 373138048 373138048 212440838 29495520 390148592 390148592 373331384 373331384 288019746 107156722 75755592 59785256 59785256 76052168 76052168 30519464 27053248 76342024 204978412 204978412 157744752 166197732 535971948 535971948 184227234 453660800 453660800 141083960 141083960 105518232 445841648 445841648 378774086 336906786 303385242 29786242 74261184 79433544 79433544 1020032917 1020032917 260255844 570046817 570046817 462855142 313395838 781324224 781324224 713818437 600329769 885686540 885686540 599075120 599075120 303825168 413058256 413058256 385537786 385537786 304031344 304031344 289780784 206546950 473074852 473074852 404750598 470398722 470398722 68001792 68001792 67947528 2435328 3027968 141962242 404030342 404030342 403966470 269432324 48099024 71038728 694875957 694875957 672029069 1045989956 1045989956 1015470159 762446614 773866111 773866111 816497085 816497085 73535880 115737072 115737072 62728000 368207660 416019654 915806817 915806817 353686256 202273802 436365582 637580352 814239761 814239761 366489625 745158534 966858132 966858132 444148838 444148838 386541836 67158024 311952986 666765736 666765736 648971429 1072202208 1072202208 1000153679 1057540579 1057540579 672672674 672672674 150994980 508744890 508744890 511959066 511959066 142741572 812658908 812658908 837997539 837997539 483865575 842211594 842211594 272629890 699450205 699450205 396387944 1062322733 1062322733 777361379 719323316 807950116 807950116 418652864 308390160 216716748 216716748 288472288 707632010 707632010 741268749 741268749 538964807 482087112 410918790 379456590 310716498 815131264 815131264 574957713 100796624 209736964 209736964 172635012 575840896 575840896 4657681 4194432 269059096 339772072 339772072 479601168 512178270 512178270 285571694 190186620 129375176 129375176 185652368 185652368 190890420 190890420 575717397 694684621 694684621 679925829 679925829 885626967 885626967 346724518 1046410883 1046410883 186340514 233312990 322574130 322574130 256411144 495653466 495653466 241122972 122244380 143432840 190842660 190842660 110150424 110150424 68757160 68757160 76553200 105759232 133033464 133033464 48783720 108396816 108396816 256040072 256170128 256170128 223430440 462475290 462475290 229235560 379674878 379674878 239321528 184087624 140109444 985897627 985897627 1052139204 1052139204 916254217 884483656 721426330 694366629 260685840 485171584 683734059 683734059 413526342 857427258 857427258 807343311 807343311 562010800 818129526 818129526 134887073 406414602 923275770 952316103 952316103 275927571 380430936 908199009 917698203 972755595 972755595 647099422 650056749 650056749 672665017 672665017 610510400 786683069 786683069 753475944 199777764 136200960 175212436 246245588 246245588 928604747 928604747 988729180 988729180 556329702 231748512 133231656 654519124 998846952 998846952 973368400 973368400 582607616 138300384 90213792 81236520 132162480 132162480 95207784 248397208 248397208 168222980 216418328 262372532 262372532 531737894 531737894 258515576 122224300 164647416 236344804 323798016 323798016 61781022 459538779 940307463 940307463 860030107 439079826 749289631 749289631 479274001 479274001 626271872 626271872 542176912 542176912 39400081 48385728 48385728 105547264 105547264 72877704 84084768 307954880 307954880 72166536 946080135 947193887 973146648 973146648 950201189 950201189 624532332 809365251 1014949049 1014949049 752421185 898226164 898226164 821366483 821366483 617297097 628365712 628365712 549560520 551922576 551922576 376751070 257978450 255337392 255337392 209121556 209121556 279631170 291523298 291523298 301737794 301737794 293339498 335689880 335689880 74123328 276826136 276826136 185336856 185336856 70550152 70550152 7605120 4058496 107178368 107178368 270542080 403514374 403514374 285899298 206309284 227476612 227476612 134289476 134289476 10098240 16409536 16409536 334672528 814462256 866173299 866173299 314757330 495722968 495722968 471978134 471978134 290216022 75626970 171545444 248105276 248105276 103254032 37026316 625517513 625517513 622444577 574884498 333022016 333022016 297855010 38586656 921487844 921487844 894983627 894983627 908478526 908478526 850528554 807539246 607786761 376063633 185181600 190964148 190964148 57420064 37749024 19664160 23235584 23235584 357283775 706789653 706789653 487252525 882950222 882950222 1048628452 1048628452 702128968 502342220 502342220 881142084 881142084 402917707 405283076 405283076 481518210 481518210 919851136 919851136 915481179 815498794 629403753 993699748 993699748 684909777 680534828 680534828 657525336 657525336 903815915 903815915 1003107036 1003107036 700617746 840859684 840859684 898155627 898155627 627197322 446768322 446768322 314581124 191351476 191351476 278881528 688217878 982884968 1007146796 1007146796 1036057660 1036057660 419920844 419920844 464642934 811547395 895020390 895020390 916755574 916755574 388015160 360126000 339550368 339550368 22931616 76105392 118489656 926491184 926491184 558630547 1053566025 1053566025 396100150 396100150 540017409 620759040 620759040 106302577 570025504 570025504 604655250 604655250 647249928 647249928 286081056 286081056 361355062 361355062 919232659 919232659 596176158 596176158 407397610 402484730 364970514 364970514 68606472 1044843813 1044843813 959872602 952291527 685282818 423909888 316329136 449580246 449580246 151030036 803635944 803635944 765122861 1011392316 1011392316 716195188 716195188 541069440 49436176 320297040 320297040 96471096 46401744 274415104 274415104 133808376 133808376 124354664 16043456 77009800 77009800 20269096 50466864 102813992 102813992 34808328 818946607 818946607 701711922 717341340 717341340 605712460 605712460 344227928 344227928 843986961 843986961 537746192 241906324 491338790 491338790 286238136 286238136 133728176 386401028 515903722 515903722 840349890 840349890 480057729 858260936 858260936 77595137 659578960 659578960 195560981 151519232 184549424 259211428 259211428 224916836 224916836 177884724 177884724 198949060 573345600 573345600 624351784 624351784 561850432 569903073 569903073 42726193 85066920 85066920 69326249 609059075 904521107 904521107 822487299 314728914 839042144 869322875 936904443 936904443 394857203 578883018 578883018 571943952 854460882 854460882 952079823 952079823 702600097 729462288 729462288 185371736 263663348 267010056 453506800 453506800 322362162 241934014 239625680 211122810 458684620 458684620 240523932 146150088 36836112 556010720 556010720 722114868 722114868 719244288 703931953 744585484 744585484 912741632 912741632 985959456 985959456 939622173 939622173 491905710 659121048 1013523855 1013523855 991174727 925632823 481297230 481297230 830227362 830227362 810935205 924145783 924145783 931829832 931829832 386874426 386874426 292528921 292528921 439460146 947549957 947549957 829739521 580157820 443193113 519377614 519377614 394047432 414442174 414442174 985710722 985710722 508304460 719587581 719587581 434131716 388873482 843583877 843583877 246660376 1011078014 1011078014 503111962 1059428725 1059428725 823916067 615795136 615795136 909370675 909370675 258228704 258228704 178596180 750854384 750854384 406882385 256992562 157461320 232418978 274568910 357042570 357042570 283300290 461069696 461069696 104886704 338167050 362815818 641141705 641141705 249266100 706740757 706740757 812762114 812762114 544810881 276005914 276005914 55186608 865784432 865784432 1030226382 1030226382 746243261 965940892 965940892 1002482324 1002482324 371558696 371558696 752535176 797122245 797122245 613475921 604557828 739907085 739907085 420378916 420378916 512963166 512963166 852704094 852704094 690374975 1059363109 1059363109 193190468 386011296 823304256 823304256 872670234 872670234 680562899 836018851 836018851 822655540 953659441 953659441 977514081 977514081 306446591 191904167 650886877 990982607 990982607 807642856 573745700 573745700 565375796 177299936 246489948 246489948 147910672 111623220 113575976 113575976 113247448 94107240 137540224 249381672 249381672 28080960 3443200 3443200 3410432 3410432 3148032 2099456 2099456 4211712 4211712 557184 0 10489258 549979264 549979264 180355284 735167628 907600523 907600523 789612093 790152765 790152765 775472142 775472142 369642922 369642922 423886868 868746483 868746483 441206814 441499668 488901818 488901818 218120496 694395921 694395921 369529387 722385974 778051636 778051636 810883331 810883331 907227435 907227435 954604226 954604226 954567136 16513984 12533696 12533696 18741888 27184800 31992992 31992992 22483072 22483072 154238096 184472496 386581712 393589816 663623672 871503033 871503033 630720105 630720105 555460103 555460103 1012232772 1012232772 642287957 787271133 787271133 679433701 679433701 270750020 270750020 188938438 697810128 826879104 826879104 814781184 814781184 730219652 581271553 197570276 700494885 700494885 678693952 695994149 695994149 615580929 688064172 688064172 1014753162 1014753162 544910219 623273408 623273408 32328928 545292352 545292352 612631202 889796930 889796930 354518312 30618336 30216000 30216000 16512960 135284880 152176304 152176304 39099408 143822352 143822352 34932480 36515088 101778768 101778768 79243080 100800512 100800512 170033744 193972992 246662132 246662132 170287456 260252012 580522021 580522021 1008145146 1008145146 724640128 324284709 711003667 711003667 441977010 952156231 952156231 943090432 955230082 955230082 422631168 143742496 383478805 610991487 899010233 899010233 810786602 810786602 160982004 801149257 801149257 458355124 266404562 413348108 531314046 531314046 386977814 415884558 415884558 362347028 649011319 681975757 681975757 353645475 685976432 685976432 622015017 335679498 335679498 826470432 876180015 876180015 546559622 308283794 392948624 469668014 479942654 547422220 606641417 606641417 510678072 942789638 942789638 808403855 674573061 1043695069 1043695069 1017705925 948217408 948217408 346893642 271183202 173348900 373138048 411608182 411608182 402146424 402146424 390148592 350360010 308514970 10642450 124860112 275916744 391283016 391283016 76052168 76052168 103268272 103268272 76342024 95654560 95654560 238521864 322559252 322559252 305443752 305443752 453660800 534896798 534896798 500820504 500820504 445841648 445841648 429002276 429002276 316485784 492991012 492991012 382612884 406869510 406869510 345683532 260255844 260255844 462855142 462855142 323766414 781324224 781324224 713818437 722830648 885686540 1060481755 1060481755 984632998 955852743 576204306 440322660 440322660 393189882 393189882 312949074 31761760 206546950 473074852 473074852 404750598 470398722 470398722 68001792 68001792 67947528 67811840 69738248 78721088 279083140 417984710 417984710 405252610 283077034 87207810 694875957 694875957 672029069 672029069 623823330 592677369 762446614 773866111 773866111 916489915 916489915 291367368 324639832 324639832 662878232 662878232 569143576 915806817 915806817 353686256 202273802 436365582 637580352 814239761 814239761 423969796 745158534 966858132 966858132 270141100 884084863 884084863 399559416 399559416 513728094 513728094 383836118 957721298 957721298 584696368 281593026 558335222 558335222 573384978 573384978 334182358 314665260 583139058 1015144527 1015144527 975352831 771115022 837997539 960846361 960846361 842211594 842211594 1009927127 1009927127 699450205 636865464 1062322733 1062322733 789351574 719323316 807950116 807950116 421517794 421517794 404128818 404128818 331927876 658236978 658236978 922165842 922165842 960157776 960157776 508227735 706052208 706052208 704981013 791029993 791029993 279059921 280760450 280760450 312075858 650895062 920105172 1049698496 1049698496 1048643038 1048643038 480355012 479601168 512178270 512178270 265360094 190186620 99055808 99055808 185652368 185652368 240649884 240649884 207669008 21152824 670207548 679925829 679925829 209317021 173412112 35787024 141640080 168944148 168944148 328587444 478199886 478199886 439928598 439928598 29883566 254276600 258733500 258733500 98702192 98702192 110150424 110150424 115316248 115316248 65239744 105759232 105759232 650232393 655232152 655232152 646971993 256040072 641313004 641313004 610339385 786078920 786078920 731714512 731714512 239321528 239321528 68683272 263558416 263558416 223257184 188767676 188767676 411077536 411077536 6817152 840974416 840974416 742932555 683734059 683734059 413526342 857427258 857427258 721588577 721588577 562010800 388403419 773982908 773982908 406414602 923275770 952316103 952316103 344381514 380430936 554431521 1066463640 1066463640 647099422 647099422 619627784 669009909 748233167 748233167 216208368 682815301 682815301 199777764 1057099871 1057099871 491917308 418746310 299714468 173217324 245872452 245872452 221106612 231748512 231748512 100708416 67460288 73400712 74831104 74831104 49624144 49624144 115149456 115149456 81236520 132162480 132417288 132417288 248397208 248397208 88824004 313344 313344 313344 531737894 531737894 258515576 122224300 164647416 236344804 323798016 323798016 243333398 459538779 940307463 940307463 137414028 439079826 749289631 1019289608 1019289608 952107207 521141766 849160826 849160826 806428679 415341684 415341684 170086676 277979064 453514390 453514390 350258568 307954880 307954880 345725056 946080135 947193887 1007523078 1007523078 950201189 950201189 624532332 809365251 1014949049 1014949049 752421185 898226164 898226164 173070292 244498562 272683612 410267466 410267466 341174922 279183404 347318928 347318928 257978450 255337392 255337392 209121556 209121556 73825720 416795074 416795074 370284330 379326026 379326026 180432008 805306377 805306377 335544330 760882049 760882049 421601574 322464200 322464200 563140275 563140275 217891408 675975895 675975895 406978716 403514374 269298690 206309284 344619018 344619018 470414574 470414574 224316044 7308674 274727042 1008252718 1008252718 866173299 866173299 314757330 448945202 453909558 471978134 471978134 290216022 75626970 171545444 248105276 248105276 138186040 138186040 625517513 625517513 622444577 574884498 333022016 333022016 297855010 38586656 921487844 921487844 894983627 894983627 908478526 908478526 850528554 666423408 607786761 707005078 707005078 190964148 190964148 409225748 409225748 307800980 307800980 181618502 357283775 869282230 869282230 529076861 882950222 882950222 1048628452 1048628452 739838996 739838996 610271622 751633734 751633734 768576354 768576354 741488652 813278931 1042444814 1042444814 771752228 815498794 815498794 629403753 993699748 993699748 684909777 589431816 589431816 657525336 657525336 85070376 76595784 80774984 83363784 83363784 74190216 395344952 395344952 400568728 406008414 406008414 242963818 151143876 191351476 191351476 278881528 278881528 237470726 1007146796 1007146796 228677956 228677956 260764192 260764192 134684720 368501728 1061227378 1061227378 273094784 388015160 388015160 183373276 239418508 239418508 207155084 207155084 421036194 961900210 995215618 995215618 1053566025 1053566025 699958213 942966284 1009828623 1009828623 769743661 286967605 145231520 145231520 361511056 361511056 114138192 114138192 288899328 288899328 302542896 302542896 310446112 310446112 387143358 387143358 402484730 402484730 364970514 364970514 460877988 460877988 287375718 495031564 495031564 423909888 423909888 135659750 176823408 331406406 331406406 207117748 207117748 573837552 805870481 805870481 885170786 885170786 600892507 49436176 89383456 285246136 285246136 273226306 118629416 118629416 133808376 133808376 124354664 54097960 18190880 303491594 353428233 824433723 824433723 921055076 921055076 183944944 625836334 625836334 490373435 486687878 838869609 838869609 930607224 930607224 885588064 291787936 200842740 546889761 546889761 863789876 863789876 230318652 619709620 890900757 992220739 1065380677 1065380677 991415800 991415800 862669551 862669551 617662661 659578960 680988789 680988789 178706240 758107145 758107145 283847370 224916836 320415366 320415366 177884724 198949060 539870592 539870592 36965200 547144464 561850432 569903073 569903073 42726193 143531076 143531076 66942352 137837316 493437916 493437916 464444790 413273410 389154314 389154314 585163864 585163864 318265114 578883018 936260482 936260482 854460882 854460882 952079823 952079823 702600097 729462288 729462288 185371736 263663348 263663348 724225847 724225847 336992778 847793489 847793489 340761898 885187411 885187411 386098288 333582258 57018768 877595666 877595666 621945552 24880864 804885922 1049883231 1049883231 803876863 713312349 755948552 755948552 205425694 1051895563 1051895563 876172127 659121048 1013523855 1013523855 991174727 925632823 481297230 481297230 397676354 231213594 220690456 470898262 470898262 770872718 770872718 102304551 42866392 105720984 840904602 840904602 917968611 917968611 625086633 586696030 586696030 585155025 426263462 394047432 414442174 414442174 985710722 985710722 950190485 950190485 726377075 434131716 379753298 481832984 481832984 187280508 1011078014 1011078014 503111962 740422442 823916067 823916067 579023314 817947841 909370675 909370675 258228704 833937916 924912131 924912131 750854384 406882385 216007116 216007116 180644740 162353144 298324360 404907118 404907118 461069696 493147860 493147860 338167050 362815818 403999576 403999576 244960538 706740757 706740757 588320899 588320899 471356168 473055742 473055742 907712210 907712210 952275508 1030226382 1030226382 746243261 965940892 965940892 1002482324 1002482324 719827910 719827910 614230064 630989009 630989009 613475921 416928505 1057698879 1057698879 799604850 967280772 967280772 780229438 852704094 852704094 514071302 988660691 988660691 193190468 386011296 824708386 824708386 872670234 872670234 537395712 55724064 50746564 822655540 953659441 953659441 977514081 977514081 306446591 504579978 504579978 435819612 440930540 440930540 10174464 10174464 6297088 149497528 246489948 246489948 167272544 142206852 113575976 113575976 113247448 94107240 126710352 249381672 249381672 75985664 90346274 335808522 352585994 352585994 374217882 375005074 375005074 308942226 346835346 378175578 378175578 312499472 352587122 352587122 180355284 735167628 907600523 907600523 789612093 790152765 790152765 814945041 814945041 283772272 154141476 806881938 868746483 868746483 4301216 441499668 441499668 1009041444 1009041444 891554091 694395921 1007573544 1007573544 778051636 778051636 810883331 810883331 473956377 336992906 421937664 421937664 138594816 147505408 147505408 140547520 24711168 27184800 31992992 31992992 22483072 22483072 22545056 132519480 348395552 348395552 473452452 473452452 419484742 630720105 630720105 555460103 555460103 1012232772 1012232772 642287957 787271133 787271133 603161284 220000964 220000964 55132816 55132816 163333184 163333184 8913984 189312128 189312128 679051332 679051332 50482500 700494885 700494885 678693952 695994149 695994149 615580929 688064172 688064172 1014753162 1014753162 544910219 623273408 623273408 84675624 606110816 606110816 612631202 612631202 354518312 354518312 90826152 563812587 563812587 584039314 584039314 566654834 424153314 424153314 274076870 235310284 479554782 479554782 114085784 236555528 236555528 275188096 355128234 355128234 310489124 246662132 246662132 123733000 123733000 580522021 580522021 1008145146 1008145146 658573882 592268338 711003667 711003667 441977010 840774197 840774197 943090432 943090432 692900740 422631168 55315744 383478805 610991487 899010233 899010233 810786602 810786602 160982004 801149257 801149257 967353418 967353418 736980201 736980201 531314046 386977814 702550467 702550467 499696260 649011319 649011319 603011190 947264391 947264391 805441539 805441539 514512222 514512222 339837264 339837264 283124034 604612624 604612624 414480308 392948624 85595688 442266022 606641417 606641417 78561384 151560192 151643172 538289412 674573061 1043695069 1043695069 1017705925 948217408 948217408 346893642 304136352 86066840 305693632 411608182 411608182 402146424 402146424 356601960 308514970 365000264 365000264 325109368 325109368 391283016 391283016 37098608 61692448 103268272 103268272 626628713 690345997 690345997 338745835 338745835 478488652 478488652 518833172 518833172 534896798 768594771 768594771 844712197 941655239 941655239 847378064 847378064 316485784 492991012 1016090113 1016090113 406869510 406869510 447255398 447255398 376582672 1003578158 1003578158 738214636 914695242 914695242 410553694 799109018 799109018 1060481755 1060481755 984632998 955852743 576204306 443720720 440322660 393189882 393189882 312949074 149493942 271371522 279136774 279136774 404276742 404276742 358257934 363732066 363732066 298326346 406324998 406324998 274923846 413348166 417984710 417984710 405252610 283077034 320415282 320415282 294648708 381615758 623823330 623823330 592677369 726434684 734265511 756598317 916489915 916489915 803258877 923334459 923334459 662878232 662878232 569143576 397268282 449144774 449144774 403208806 403208806 641931971 915745922 915745922 944332950 944332950 588125469 588125469 270141100 884084863 884084863 399559416 494142752 513728094 872321782 872321782 957721298 957721298 584696368 281593026 558335222 558335222 573384978 573384978 429178858 314665260 583139058 1015144527 1015144527 1049370774 1049370774 928006805 960846361 960846361 516077238 819407514 1009927127 1009927127 636865464 845291952 845291952 822292515 789351574 707053845 191193249 5033088 421517794 421517794 404128818 404128818 331927876 658236978 810268384 922165842 922165842 960157776 960157776 508227735 706052208 706052208 704981013 791029993 791029993 279059921 280760450 280760450 312075858 650895062 920105172 1049698496 1049698496 1048643038 1048643038 480355012 499907020 499907020 319647888 390595770 511378364 511378364 57784152 148935661 220358897 240649884 240649884 595013037 744294277 765085091 931329611 931329611 1034952491 1034952491 35787024 864997401 864997401 287294370 328587444 478199886 478199886 439928598 439928598 165620068 254276600 258733500 258733500 105190904 179746816 179746816 154135344 115316248 115316248 65239744 87795648 87795648 650232393 655232152 655232152 646971993 231812824 641313004 641313004 610339385 786078920 786078920 731714512 731714512 190914996 50397684 68683272 263558416 263558416 223257184 188767676 188767676 951190816 951190816 19403591 840974416 840974416 742932555 268458530 268458530 286687234 286687234 279211412 600310032 600310032 556575968 539757825 773982908 773982908 336914607 687506899 687506899 167138619 344381514 356448296 951052872 1066463640 1066463640 607117916 401789946 548594447 669009909 748233167 748233167 622989609 682815301 682815301 38592740 1057099871 1057099871 491917308 418746310 299714468 138934404 239702532 239702532 101662228 71052560 71052560 69324544 53662496 53662832 53662832 45213264 49624144 49624144 131668464 131668464 89140136 74844744 132417288 132417288 201447504 227072272 227072272 216572016 216572016 86432040 259542280 399379260 399379260 378012762 238320400 376566568 376566568 28684698 243333398 438812764 438812764 24907680 17613696 0 1024672798 1024672798 1019289608 952107207 521141766 849160826 849160826 806428679 931074996 931074996 900685163 914199152 914199152 453514390 350258568 247517776 106154576 345725056 345725056 376178194 1007523078 1007523078 227926860 227926860 85193256 85193256 85193256 76574816 27263328 27263328 134223577 786044637 788971647 788971647 272683612 204958563 260063252 695272369 695272369 218106178 37953592 51664912 51664912 589208724 589208724 571391620 416795074 416795074 370284330 379326026 379326026 369098782 805306377 805306377 340337802 760882049 760882049 421601574 378097984 322464200 563140275 563140275 217891408 675975895 675975895 406978716 191366560 191366560 140621872 344619018 344619018 470414574 470414574 224316044 7308674 640295897 1008252718 1008252718 520250046 107832825 707546481 707546481 145628546 334011808 470322310 470322310 199926266 1033472 783360 783360 147448708 158414308 158414308 21505920 551078144 551078144 142133121 35950544 41469392 41469392 44304720 44304720 134648433 580818485 580818485 822480897 822480897 810961539 810961539 974164614 974164614 710934677 710934677 576716804 409225748 307800980 307800980 181618502 412000836 869282230 869282230 529076861 549454606 1022362575 1022362575 580124672 739838996 779012963 998674549 998674549 949361223 949361223 912964986 741488652 813278931 1042444814 1042444814 433069936 142640388 142640388 168289684 168289684 153430232 225161480 225161480 93463576 42996616 85070376 85070376 76595784 80774984 83363784 83363784 74190216 98960600 283273224 381358400 381358400 332010506 67125640 29378632 76792136 96207976 284774296 747477264 813442204 813442204 839927904 889137512 889137512 286303434 286303434 134684720 573936583 1061227378 1061227378 848870216 848870216 475417434 685602752 685602752 690299696 690299696 207155084 421036194 961900210 995215618 995215618 777791278 777791278 699958213 1008881487 1009828623 1009828623 769743661 380227437 742515832 742515832 554856663 1020925647 1020925647 995340364 450516014 288899328 209984686 484505566 484505566 347626352 55737554 46659792 46659792 44580624 38847120 115963572 460877988 460877988 456749996 456749996 424408230 409085106 409085106 525472446 525472446 331406406 331406406 69417956 137974240 169741844 428002868 432731818 885170786 885170786 600892507 42611224 375014408 375014408 285246136 273226306 348198912 348198912 77478538 67215376 87668784 101038352 111661096 303491594 353428233 824433723 824433723 921055076 921055076 488612198 625836334 625836334 490373435 486687878 838869609 838869609 930607224 930607224 885588064 427290772 107162056 546889761 648119710 863789876 863789876 565450000 619709620 890900757 992220739 1065380677 1065380677 991415800 991415800 862669551 862669551 617662661 550527625 680988789 680988789 178706240 758107145 758107145 283847370 218586352 760174936 760174936 626505032 183308560 539870592 583532753 583532753 547144464 560587169 560587169 580963088 580963088 573687120 143531076 8719364 137837316 493437916 493437916 464444790 413273410 389154314 389154314 751965332 751965332 318265114 318265114 936260482 1000765231 1000765231 152443379 76612608 664945012 664945012 525761507 1060483760 1060483760 197463240 196785452 724225847 724225847 336992778 847793489 847793489 340761898 885187411 885187411 386098288 333582258 57018768 877595666 877595666 621945552 321268529 804885922 1049883231 1049883231 944919183 944919183 268746839 310740496 411441222 1051895563 1051895563 967099751 967099751 406467395 821377613 821377613 638845197 638845197 695487248 695487248 220690456 1015414907 1015414907 825890595 825890595 260779584 94112304 365203474 365203474 840904602 840904602 917968611 917968611 625086633 586696030 586696030 585155025 521000432 521000432 484915662 293836488 915134308 915134308 950190485 950190485 726377075 306237933 379753298 874513363 874513363 350072227 921479626 921479626 354264394 596190825 596190825 545259585 551568842 817947841 817947841 811261402 811261402 833937916 924912131 924912131 868599233 868599233 768427492 768427492 637583610 357119094 416269348 416269348 404907118 268558338 493147860 493147860 125779896 125779896 403999576 403999576 244960538 453815414 453815414 207408650 1051942846 1051942846 504935537 643318784 907712210 907712210 952275508 952275508 769130655 345154761 894637648 894637648 409044237 409044237 719827910 719827910 465617142 465617142 412878538 302532680 416928505 1057698879 1057698879 799604850 967280772 967280772 780229438 415765650 415765650 443564500 988660691 988660691 316101045 570661411 824708386 830545489 840638978 840638978 814224529 44943296 567303921 858177760 858177760 812343475 810734211 411041800 289977064 584524125 584524125 209066892 138563396 164486340 539349156 546441252 546441252 148163268 78507336 167272544 209530764 209530764 138424584 138424584 140509572 141660292 141660292 139719300 70290792 75985664 90346274 335808522 352585994 352585994 374217882 375005074 375005074 308942226 346835346 378175578 378175578 583673424 583947426 583947426 805831683 805831683 546956005 705175718 726728768 726728768 597951777 814945041 814945041 537004308 537004308 838862881 838862881 729550773 168312834 268469268 268469268 1009041444 1009041444 891554091 738214181 1007573544 1007573544 674267942 611373569 692060177 692060177 336992906 336992906 421937664 421937664 138594816 147505408 147505408 140547520 28597120 82503912 82503912 80789504 72352392 83363784 385490762 385490762 352454832 352454832 1020711324 1020711324 883085643 419484742 956965920 956965920 939732999 1071845906 1071845906 1017192783 253037427 96284520 67381352 67381352 268701746 268701746 83066954 266878746 356459028 356459028 531887754 531887754 679051332 923809147 923809147 729809253 226566153 553088768 553088768 552465408 552465408 3764992 3385088 1648392 69415176 69426184 352415072 352415072 84675624 606110816 606110816 277141313 29360352 92493088 92493088 548145504 563812587 563812587 584039314 584039314 566654834 424153314 424153314 274076870 370437976 479554782 479554782 457755084 236555528 245305608 275188096 355128234 355128234 310489124 261797028 260686580 260686580 196433612 488773466 537928768 665728396 665728396 306650102 592268338 592268338 461358309 411768096 408651204 1011318654 1011318654 144212640 144212640 26287908 55774898 497037078 497037078 127214238 431436182 431436182 950535495 950535495 948044103 914481243 967353418 967353418 837618755 837618755 664673913 1001731613 1001731613 986355476 499696260 1028263300 1028263300 628887011 947264391 947264391 805441539 805441539 514512222 949918483 949918483 641097287 283124034 604612624 604612624 568686912 856962155 856962155 769502847 901812074 901812074 595517361 392892497 381729408 428565506 428565506 269071462 269071462 42867792 275517584 305011986 305011986 304136352 203596060 305693632 315147474 315147474 363896896 363896896 337641578 293725018 365000264 365000264 325109368 325109368 109084730 104384280 41944920 69489200 69489200 110141720 626628713 690345997 690345997 338745835 366377416 478488652 478488652 518833172 625491072 625491072 768594771 768594771 844712197 941655239 941655239 928074492 847378064 713048240 700498149 1016090113 1016090113 34677264 217081094 1037602979 1037602979 780309972 1003578158 1003578158 738214636 914695242 914695242 410553694 799109018 799109018 401096997 112723074 319103696 319103696 443720720 443720720 437222368 407864802 278152386 200727490 149493942 271371522 279136774 279136774 404276742 404276742 358257934 363732066 363732066 298326346 406324998 406324998 274923846 413348166 413348166 145959110 160515646 160515646 320415282 979242341 979242341 381615758 381615758 576952384 576952384 726434684 734265511 756598317 756598317 803258877 803258877 923334459 923334459 575877777 72383776 272075752 272075752 449144774 449144774 847367513 847367513 641931971 915745922 915745922 944332950 944332950 520687672 520687672 979892630 979892630 271007893 99947776 494142752 494142752 872321782 872321782 807717123 98045635 86032680 133045752 387840258 387840258 295057282 429178858 488695284 488695284 1020338895 1020338895 176172612 1049370774 1049370774 928006805 928006805 833907052 813744195 155749603 134481924 262147248 262147248 845291952 845291952 822292515 56693139 22152192 152712387 289088195 407898052 407898052 561298037 722129973 722129973 588742388 865530617 877356987 877356987 881136859 881136859 845311035 602817078 515073122 400824512 400824512 115802540 8256 68309120 445289100 445289100 310903890 228335290 469965270 516862754 516862754 457091934 457091934 499907020 499907020 319647888 390595770 511378364 511378364 258163732 258163732 759693436 759693436 220353464 595013037 744294277 765085091 931329611 931329611 1034952491 1034952491 45952848 864997401 864997401 832498658 831136234 1051416384 1051416384 260080128 314325028 537995776 878717184 878717184 885332000 885332000 732162496 396404144 154135344 97848832 68503200 23118562 344605858 344605858 328731584 541334672 541334672 84437680 85058088 762561172 762561172 604468973 604468973 168371220 234629804 234629804 239800300 239800300 155004708 155004708 137567264 561901473 561901473 762337835 951190816 951190816 135580193 1448448 415753216 493111430 698549477 698549477 342462668 897668651 897668651 532580302 742882921 742882921 539757825 706584581 706584581 432375864 687506899 687506899 885582135 885582135 569377761 951052872 951052872 713853224 799589757 799589757 417472925 677380485 843257092 843257092 622989609 622989609 243840209 788504 100928516 100928516 171443988 171443988 138532928 138934404 239702532 239702532 146616580 146616580 137209664 69324544 53662496 53662832 53662832 37980288 48643600 48643600 131668464 131668464 89140136 74844744 70571368 19965256 201447504 227072272 227072272 216572016 216572016 86432040 259542280 399379260 399379260 378012762 238320400 376566568 376566568 236062552 236062552 416620980 687594551 687594551 889328524 889328524 1024672798 1024672798 747320980 747320980 638137037 571367699 573435669 573435669 931074996 931074996 900685163 914199152 914199152 82056152 67652736 371680336 371680336 343550273 812782467 845481795 845481795 281422601 625510785 625510785 625525576 815827299 815827299 808289833 684720837 830904442 830904442 786044637 788971647 788971647 244582108 204958563 260063252 695272369 695272369 134518960 83902728 51664912 51664912 589208724 589208724 571391620 40149680 193074624 216006984 341837184 411119682 411119682 444955782 444955782 377536602 373322526 351723286 378097984 378097984 109270106 74689488 302221271 543758485 582415733 582415733 597931219 692109489 692109489 658665639 423838384 845024432 845024432 687920133 687920133 89130504 640295897 640295897 520250046 520250046 617644747 707546481 983582660 983582660 621314780 481554042 470322310 375232656 131475832 53574494 40159260 147448708 158414308 723932773 723932773 696703077 692782272 187483200 35950544 806207892 806207892 598248852 637446836 637446836 543170524 283429314 268834848 772813341 810961539 810961539 974164614 974164614 710934677 711272448 711272448 481840066 481840066 482389314 482389314 478546717 478546717 438046230 438046230 549454606 1022362575 1022362575 603259008 580124672 779012963 998674549 998674549 949361223 949361223 912964986 547614769 559577112 559577112 544872312 433069936 47920848 65298448 386140182 386140182 236259932 277814942 298135112 298135112 529224374 529224374 246986336 407397390 407397390 239635704 32247264 430606383 1011321173 1011321173 591860243 591860243 332010506 344314024 344314024 96589914 145828538 284774296 747477264 813442204 1004800503 1004800503 966380110 966380110 555860074 644882951 644882951 573936583 848220307 848220307 848870216 848870216 475417434 685602752 685602752 690299696 690299696 35684912 190332976 269330980 632142262 632142262 928951560 928951560 958798119 1008881487 1008881487 983064109 267651763 550200338 851628243 860555869 860555869 1020925647 1020925647 995340364 450516014 236458192 241808652 484505566 484505566 436257216 436257216 420004870 357292678 525864602 525864602 240649884 488186034 488186034 456749996 456749996 424408230 140866728 1030421541 1030421541 896291119 688085000 688085000 69417956 137974240 169741844 428002868 432731818 432731818 291181642 243414032 243414032 655425789 655425789 470888020 177993300 1067114537 1067114537 321604920 321604920 87668784 118717232 118717232 111661096 69650200 322912050 322912050 346869066 437111914 488612198 488612198 448465692 154963764 67261222 428872008 428872008 51115112 142821222 427290772 427290772 695051468 695051468 648119710 648119710 480849166 565450000 565450000 381294426 381294426 276432218 155848998 27853440 67767738 427475380 427475380 137573064 232065552 232065552 193857328 193857328 168660068 221649668 773024061 773024061 760174936 760174936 758978365 183308560 557858912 583532753 583532753 181929685 135594628 135594628 580963088 580963088 573687120 63463568 548875073 548875073 163736070 93083368 563221515 563221515 363371584 1023677580 1023677580 827202723 406111284 406111284 808550532 1000765231 1023841494 1023841494 838109393 749115488 749115488 525761507 1060483760 1060483760 415666312 196785452 208467174 493518100 493518100 312235300 312235300 119007288 127277688 127277688 283252978 283252978 62009056 601887648 601887648 542387368 321268529 321268529 100341976 904571088 944919183 944919183 136050180 310740496 411441222 411441222 874603548 967099751 967099751 1029321450 1029321450 821377613 638845197 638845197 695487248 695487248 991040416 1015414907 1015414907 923585314 825890595 260779584 232540373 365203474 365203474 1029839542 1029839542 829834582 829834582 1015845958 1015845958 924995987 857735475 595925266 521000432 484915662 447937808 261009009 261009009 61529953 827870179 827870179 804644401 804644401 1044417254 1044417254 968942411 968942411 921479626 653146185 596190825 596190825 203723334 610762114 610762114 146134261 811261402 811261402 696816318 330365496 350251386 868599233 868599233 768427492 768427492 637583610 357119094 517425322 517425322 45212496 285389682 371429708 371429708 283589058 293020418 405807440 405807440 201082172 141051520 236738332 389122311 1051942846 1051942846 504935537 643318784 643318784 307546306 925650762 925650762 307233600 614007345 614007345 578449978 632639976 1050956796 1050956796 578297131 465617142 465617142 302532680 302532680 425081860 425081860 544664003 544664003 965382353 965382353 583290304 306852996 308163584 308163584 307571346 316101045 316101045 570661411 570661411 830545489 840638978 840638978 814224529 806867091 806867091 858177760 858177760 812343475 975338114 975338114 449054934 584524125 584524125 209066892 179855236 179855236 539349156 546441252 546441252 177286312 266079996 266079996 209530764 258999152 258999152 221967932 221967932 199262720 199262720 250848004 250848004 26310632 16134656 16134656 24284416 24284416 22470400 320440624 320440624 269009922 34455682 1542288 14113280 583673424 583947426 583947426 805831683 805831683 546956005 705175718 726728768 859379676 859379676 597951777 681837696 681837696 547097093 838862881 838862881 548018208 191391753 1041607819 1041607819 657810192 657810192 1028744992 1028744992 813744778 674267942 674267942 611373569 692060177 692060177 592474953 723662440 942425889 942425889 542747012 14317376 14317376 28597120 93984008 93984008 82503912 80789504 72352392 332020265 642580737 816841539 816841539 594155256 1020711324 1020711324 1039717180 1039717180 956965920 956965920 939732999 1071845906 1071845906 1017192783 898183540 934372202 934372202 67381352 268701746 268701746 83066954 468642240 468642240 356459028 531887754 531887754 592622340 923809147 923809147 729809253 226566153 163406944 163406944 552465408 563660736 972472614 972472614 1011621250 1011621250 811093379 270047968 342551425 878627976 901755562 901755562 888731075 888731075 627244553 547751745 548145504 548145504 294017443 58857152 289702032 319080498 319080498 319080498 319080498 370437976 370437976 457755084 457755084 230154320 245305608 257343232 257343232 394461442 394461442 261797028 413173442 413173442 392762508 455291190 537928768 546907713 869014880 869014880 845287827 576918359 411768096 411768096 408651204 1011318654 1011318654 765732293 765732293 751777284 557721217 497037078 573711416 635122859 840699411 877870268 950535495 950535495 948044103 914481243 914481243 595975325 843780144 843780144 789674389 1001731613 1001731613 986355476 460456652 1028263300 1028263300 628887011 816060787 816060787 813695043 813695043 402667881 949918483 949918483 641097287 320160904 571753414 987165289 987165289 856962155 856962155 769502847 901812074 901812074 595517361 519143441 381729408 740828165 874512651 874537367 1013309701 1013309701 945105291 647293468 305011986 203596060 203596060 388157808 411218694 411218694 363896896 363896896 337641578 293725018 70330226 34127960 285218160 285218160 93983160 101000744 101000744 89876672 96917736 110141720 110141720 61282368 79960128 98798192 366377416 366377416 408960344 408960344 625491072 625491072 129082989 361532698 361532698 415236294 928074492 928074492 713048240 713048240 700498149 205028880 872791312 940387335 940387335 1037602979 1037602979 780309972 780309972 348799136 206064264 206064264 252479488 252479488 252232764 393478232 393478232 302358944 319103696 324276000 324276000 306170258 407864802 407864802 278152386 200727490 967633153 967633153 728590259 592035988 418927813 1036681287 1036681287 1023559471 881902155 274253515 1017269582 1017269582 543563394 11799360 11799360 127341696 127341696 4864632 0 979242341 979242341 334631922 393285818 539222936 539222936 176977531 924321912 924321912 301991122 301991122 285738018 285738018 268435488 67495944 50067408 79135616 79135616 302694672 302694672 847367513 847367513 451724865 575874072 575874072 71381912 308416784 308416784 285387032 979892630 979892630 774113565 855653157 855653157 743005318 578759175 1001076087 1001076087 19787040 20943360 20943360 26754816 27736416 43438752 43438752 488695284 488695284 1020338895 1020338895 117176280 852703136 852703136 425960507 833907052 833907052 813744195 155749603 144968768 262147248 262147248 861938572 1058087487 1058087487 954019527 954019527 294202336 683877668 683877668 407898052 561298037 722129973 722129973 588742388 865530617 877356987 877356987 850252227 850252227 845311035 602817078 515073122 400824512 400824512 157432818 499319218 499319218 470024334 470024334 530322520 530322520 445517552 68747912 230243032 230243032 290988924 550086537 696005535 832177256 832177256 781345821 781345821 704897600 744612237 759693436 759693436 695353893 695353893 224405668 354272146 354272146 220210972 185163776 426774636 426774636 859338346 859338346 832498658 831136234 1051416384 1051416384 260080128 314325028 537995776 878717184 878717184 885332000 885332000 732162496 396404144 119565928 97848832 68503200 34751164 344605858 344605858 958448453 958448453 991991806 991991806 752249291 762561172 762561172 829112946 829112946 575440449 559084689 556133088 239800300 239800300 155004708 155004708 612006953 625789096 625789096 762337835 762337835 144185030 135580193 1448448 688989731 688989731 698549477 762805733 762805733 897668651 897668651 532580302 742882921 742882921 391891732 706584581 706584581 432375864 432375864 678562687 885582135 885582135 569377761 781260157 781260157 961458520 961458520 799589757 853676486 853676486 929112466 929112466 566322300 711743353 711743353 459333296 1026463981 1026463981 326484180 326484180 282775572 18469992 67892232 142749696 336830804 336830804 271352324 57259264 303969188 310361842 310361842 192581734 168426532 168426532 280355024 280355024 279560256 38134144 5378688 17190016 17190016 21020832 29479008 76124192 118705816 118705816 126349640 378376664 382686554 382686554 62066784 62066784 51843168 236062552 236062552 391298285 687594551 687594551 889328524 889328524 789019616 639657207 879100224 879100224 638137037 820085127 951584583 951584583 380778789 110832672 127277688 702478189 702478189 780282124 780282124 716242435 943380231 943380231 812782467 845481795 845481795 844569933 844569933 1021176175 1021176175 815827299 815827299 808289833 684720837 830904442 830904442 742668028 689590916 315774484 159524384 159524384 290593346 290593346 71410088 90284968 90284968 91316648 91316648 58772768 58772768 52595860 120375490 140913200 216006984 341837184 482878534 482878534 444955782 444955782 377536602 373322526 373096778 373096778 303940882 303940882 68374288 302221271 543758485 582415733 582415733 597931219 692109489 918841742 918841742 423838384 845024432 845024432 934335864 934335864 906604059 906604059 821035971 841729287 989017047 989017047 617644747 983582660 983582660 621314780 523841222 507337930 375232656 207548700 53574494 40159260 53077696 64277232 723932773 723932773 696703077 692782272 274610818 284741426 806207892 806207892 598248852 637446836 947953927 947953927 643011398 1021313413 1021313413 840077958 271712786 505751562 706814084 708911509 711272448 711272448 481840066 481840066 482389314 482389314 478546717 478546717 438046230 438046230 424281223 424281223 603259008 603259008 141051257 205521036 205521036 607000704 610796937 610796937 606737673 4984073 9572928 42597260 181135216 181135216 247910425 774161165 949342291 949342291 607648521 607648521 298135112 739311769 739311769 615040329 615040329 480798150 512280940 957121881 957121881 564855203 1011321173 1011321173 591860243 591860243 361038912 353184810 344314024 320663744 320023282 257296174 257296174 371584069 1004800503 1004800503 966380110 966380110 555860074 644882951 644882951 409728390 415916352 415916352 269519360 269731330 269731330 269483010 202109964 705784976 705784976 672976789 1071399603 1071399603 956835427 963038090 963038090 928951560 958798119 958798119 792495672 792495672 466216182 550200338 851628243 860555869 860555869 486591673 135880472 135880472 85143728 225080868 241808652 409531286 409531286 436257216 436257216 420004870 357292678 525864602 525864602 240649884 488186034 488186034 106187776 106187776 409306112 409306112 1030421541 1030421541 896291119 1007072332 1007072332 524022819 515764062 218973042 909596512 909596512 706555413 224031972 243414032 243414032 655425789 655425789 470888020 177993300 1067114537 1067114537 321604920 321604920 117922720 118717232 118717232 26888032 26888032 322912050 545928752 545928752 130882144 130882144 277879386 277879386 841766672 841766672 822097255 1049439327 1049439327 424320063 415884486 243827884 695051468 695051468 795501662 1027142179 1027142179 562697313 967837507 967837507 679612485 758130971 758130971 853688739 853688739 539285510 427475380 137573064 232065552 232065552 193857328 614938953 750793797 750793797 773024061 773024061 220800300 758978365 758978365 593568177 557858912 557858912 360361598 90729180 555779988 555779988 142082449 191403072 191403072 147852928 689433269 689433269 432107638 432107638 563221515 563221515 1039460174 1039460174 1023677580 996975256 996975256 406111284 678655882 678655882 1023841494 1023841494 838109393 749115488 749115488 437289008 436507172 436507172 415666312 48419280 208467174 493518100 493518100 170717104 530108664 530108664 402911498 493336364 493336364 283252978 229650140 366019762 366019762 227122396 352007593 1009714191 1029966879 1029966879 904571088 809549955 748470853 684307544 684307544 869975344 869975344 304210194 823946259 1029321450 1029321450 1024657505 663958524 420817446 420817446 1026296616 1026296616 991040416 923585314 923585314 825152000 232540373 232540373 122607840 114300464 1029839542 1029839542 829823104 978531823 1015845958 1015845958 924995987 857735475 595925266 245157468 447937808 447937808 261009009 582178188 582178188 827870179 827870179 804644401 804644401 1044417254 1044417254 968942411 968942411 759393981 795210604 795210604 470421568 470421568 610762114 610762114 389032642 389032642 346429770 58101912 330365496 330365496 255935114 226813068 227805508 227805508 202416616 200137704 517425322 517425322 148022188 285389682 285389682 164311708 283589058 293020418 405807440 405807440 201082172 126652284 236738332 389122311 875826951 875826951 386713720 395451974 859007392 859007392 925650762 925650762 835817939 954246016 1070027967 1070027967 1069694191 1050956796 1050956796 578297131 201891621 134521860 588269600 588269600 735209048 735209048 567594971 867849763 965382353 965382353 675283077 868286517 868286517 713741397 713741397 542762145 438203476 409991379 280154946 280154946 20797024 26498512 68163144 806867091 806867091 595268505 595268505 510589246 975338114 975338114 449054934 834826293 834826293 792275479 792275479 904904642 904904642 1005773510 1005773510 953450407 953450407 1058971547 1058971547 936564492 263754544 221967932 236172884 236172884 199262720 250848004 250848004 26310632 16134656 16134656 1315328 1315328 1313280 1048576 73728 38600978 68552578 68552578 67244040 571951202 571951202 293911057 402788358 402788358 675287662 938484013 938484013 859379676 859379676 550765376 681837696 681837696 547097093 813959925 813959925 334700451 191391753 1041607819 1041607819 657810192 657810192 1028744992 1028744992 813744778 610584648 668997952 668997952 535855395 535855395 592474953 723662440 942425889 942425889 542747012 158647106 435268066 435268066 276058890 95885696 347997560 369746970 369746970 332020265 642580737 816841539 816841539 594155256 583107667 572089832 1039717180 1039717180 613939785 282224288 547621698 547621698 420688422 898183540 898183540 934372202 934372202 221094516 212407136 212407136 195557748 468642240 468642240 150994980 150994980 167772208 536944641 882906767 945521995 945521995 552010144 562509921 562509921 140896836 563660736 972472614 972472614 1011621250 1011621250 811093379 831854240 836371041 878627976 901755562 901755562 888731075 888731075 627244553 547751745 547751745 279186435 69208456 0 289702032 319080498 319080498 319080498 332831328 332831328 43795536 282720976 282720976 162411400 397063820 397063820 167903248 394461442 394461442 211821920 413173442 413173442 392762508 455291190 945463780 946869557 946869557 869014880 845287827 576918359 971263863 971263863 680633928 94991833 627709353 765732293 765732293 751777284 956813718 963900327 963900327 732804121 840699411 877870268 877870268 391844904 391872154 1005899346 1005899346 481157296 843780144 843780144 789674389 506706436 858408662 858408662 765722880 755370327 323256940 875829307 875829307 816060787 813695043 873470479 873470479 323671218 575964012 575964012 320160904 571753414 987165289 987165289 666894585 919988635 919988635 523382030 894951061 894951061 572176844 1016236746 1016236746 874512651 874537367 1013309701 1013309701 945105291 647293468 240189588 230728060 230728060 388157808 411218694 411218694 305903058 299728904 299728904 287100450 102302256 102302256 285218160 285218160 77149376 101000744 101000744 89876672 96917736 96917736 582482025 582482025 563542865 323422275 323422275 88215720 111514968 304392584 882978258 882978258 551510115 575742609 575742609 455244597 587565139 587565139 860972672 860972672 725216769 447552336 872791312 940387335 940387335 236394011 396436552 396436552 814223064 814223064 557787197 529347065 293605186 835283968 835283968 393478232 393478232 302358944 302358944 324276000 324276000 155715492 155715492 158860452 158860452 2410752 967633153 967633153 728590259 592035988 546476449 1036681287 1036681287 1023559471 881902155 552247040 1017269582 1017269582 543563394 270015812 272705696 369296900 369296900 472559506 472559506 321740714 807667971 979405683 979405683 972080103 558907718 1036798921 1036798921 924321912 967607583 996460821 996460821 593527188 386727738 131577504 125337288 91661048 273259994 273259994 395162965 531141919 818337987 818337987 783741203 575874072 342897816 342897816 583870597 583870597 752696904 752696904 774113565 892341975 981478403 981478403 578759175 1001076087 1001076087 963257652 39236224 415618324 415618324 301467618 301467618 445635394 445635394 484399034 484399034 108077976 74975112 852703136 852703136 425960507 150276672 671102220 704781365 722345013 722345013 275791590 275791590 861938572 1058087487 1058087487 954019527 954019527 828900493 683877668 683877668 283189440 705569930 705569930 549332290 306630198 306630198 389758648 389758648 360517636 89687556 55896762 365929016 365929016 128201780 312582224 394348634 499319218 499319218 470024334 470024334 530322520 530322520 445517552 316506338 316506338 326221118 326221118 550086537 696005535 832177256 832177256 781345821 921513435 921513435 744612237 744612237 742779021 742779021 695353893 19267840 17176608 2097408 2097408 67108864 426774636 426774636 750665080 750665080 637042930 637042930 522553912 522553912 234232812 984153412 984153412 134545536 134545536 38867124 134629184 194902016 194902016 184691296 23382144 122733256 122733256 901775595 901775595 958448453 958448453 991991806 991991806 752249291 881881963 881881963 829112946 1007490350 1007490350 559084689 556133088 62005760 25870176 70519560 70781736 612006953 625789096 625789096 810729288 875961099 875961099 747291849 747291849 688989731 688989731 355240010 762805733 762805733 347783664 490707116 490707116 240032040 240032040 391891732 391891732 207125640 207125640 638982681 678562687 678562687 197484728 186334581 781260157 781260157 961458520 961458520 576936276 853676486 853676486 929112466 929112466 561924429 711743353 711743353 459333296 1026463981 1026463981 326484180 326484180 282775572 18469992 67892232 101183560 336830804 336830804 271352324 56655904 303969188 310361842 310361842 192581734 168426532 168426532 280355024 280355024 279560256 87125344 87125344 277178594 350102058 350102058 76621034 103113858 308983954 308983954 126349640 378376664 382686554 382686554 254620988 227286092 283783076 283783076 330182230 391966004 391966004 234170318 195413720 789019616 789019616 581249040 879100224 879100224 150234059 820085127 951584583 951584583 846301916 846301916 618301984 702478189 702478189 780282124 780282124 716242435 943380231 943380231 750121546 545937812 720372693 844569933 844569933 1021176175 1021176175 418870246 418870246 719077988 719077988 661933033 742668028 742668028 940757511 940757511 542347427 467734962 908426142 908426142 419479590 419479590 307336914 639088651 639088651 533959152 533959152 353470048 511629924 511629924 420615586 420615586 482878534 482878534 413540038 378888794 378888794 313688078 373096778 373096778 303940882 303940882 109363266 41992272 4419792 3523328 3523328 403481600 403481600 918841742 918841742 287933547 223421626 306485400 934335864 934335864 927683338 906604059 821035971 841729287 989017047 989017047 484115341 173541012 947585590 947585590 755735119 507337930 1026351279 1026351279 690271416 690271416 579110914 134964444 242179484 242179484 208451856 274610818 274610818 284741426 311224322 399361562 399361562 111815234 969940296 969940296 643011398 1021313413 1021313413 840077958 44106064 44048720 572264320 572264320 291579748 291579748 162080354 78234304 95666180 151130148 151130148 218968184 218968184 305183962 342234403 887414035 887414035 369172507 336268048 349514442 349514442 607000704 610796937 610796937 757144944 757144944 835373946 921828606 921828606 181135216 247910425 774161165 949342291 949342291 607648521 776241336 1057277989 1057277989 739311769 615040329 615040329 480798150 512280940 957121881 957121881 564855203 837405920 837405920 104865162 361038912 361038912 353184810 320663744 320663744 320023282 13222642 0 8 67108872 67108872 67108864 82157888 822100864 822100864 434234186 409728390 980535849 980535849 773336668 613063189 421992865 987775188 987775188 705784976 1047452687 1047452687 1071399603 1071399603 956835427 963038090 963038090 840958227 742391565 1043822635 1043822635 792495672 466216182 864631898 1016144463 1016144463 400444377 400444377 693751353 693751353 591491240 591491240 57085088 768674036 768674036 610348809 241510812 734212420 734212420 695612296 197272164 64165824 42870932 162603876 273588036 289530018 409306112 409306112 67915912 671486016 679876677 1007072332 1007072332 791538376 1034419781 1034419781 909596512 909596512 706555413 104867984 165134432 206705292 206705292 130077300 53515104 53515104 115809856 269042760 369304856 369304856 129553936 392292378 392292378 278625026 855891792 855891792 560544689 545928752 159721424 446765010 461309574 461309574 841766672 841766672 822097255 1049439327 1049439327 424320063 415884486 223706442 668296612 668296612 795501662 1027142179 1027142179 973737302 967837507 967837507 679612485 758130971 758130971 853688739 853688739 539285510 202824616 202824616 106217712 106217712 36376248 614938953 750793797 750793797 497154098 497154098 304732546 708903204 741096347 977285144 977285144 946949636 946949636 759033243 725650048 725650048 710215093 736392852 736392852 147852928 689433269 689433269 432107638 432107638 940315210 940315210 1039460174 1039460174 671297541 996975256 996975256 797349381 797349381 686066834 810767694 810767694 671418652 900874836 974229506 974229506 857785147 590381066 152193046 33867792 98483036 321246746 321246746 361071676 530108664 530108664 402911498 493336364 493336364 229650140 766035297 766035297 211909952 227122396 352007593 1009714191 1029966879 1029966879 674328246 748470853 748470853 759169648 759169648 869975344 869975344 572730386 823946259 823946259 1024657505 1024657505 738459719 738459719 1037838926 1037838926 1026296616 1030951069 1030951069 825152000 825152000 665895992 771278829 771278829 619221985 377885625 277484610 693504415 1059135580 1059135580 877399179 586421355 356537952 356537952 302101968 502885816 502885816 141038464 593058712 593058712 224425681 104343352 214222080 214222080 657597400 657597400 622524404 803862441 803862441 795210604 795210604 470421568 470421568 344800328 344800328 389032642 389032642 784804852 784804852 874513201 977611693 977611693 870419892 667420084 703356638 703356638 200137704 237127813 237127813 212861772 212861772 164311708 164311708 192088564 192088564 218893928 727238381 727238381 97569320 587499885 587499885 875826951 875826951 487463982 487463982 859007392 859007392 609722392 835817939 835817939 954246016 1070027967 1070027967 1069694191 1019235413 1019235413 772066434 671401989 675620997 675620997 588269600 735209048 735209048 567594971 867849763 867849763 284051537 675283077 868286517 868286517 820696515 820696515 542762145 554112161 554112161 297637184 287079970 20797024 295883776 295883776 504765756 504765756 663748680 663748680 423853056 357020674 362429866 430749547 834826293 834826293 792275479 792275479 904904642 904904642 1005773510 1005773510 953450407 953450407 1058971547 1058971547 936564492 263754544 211257200 236172884 236172884 93920640 93920640 30699112 29286240 26136288 14815680 14815680 6718464 87521456 355202600 369786010 369786010 69478298 68552578 67244040 67468042 574675481 936702146 936702146 856928945 675287662 938484013 938484013 341835794 249173365 1036262944 1036262944 1020925647 510657438 780536791 780536791 83891581 9818027 676397495 676397495 617350849 617350849 647632473 647632473 311350859 79950089 668997952 668997952 632444530 632444530 627709353 566289480 566289480 220406569 87171460 158647106 435268066 435268066 276058890 131123340 505188916 513463902 513463902 268877834 106465486 114820824 575276424 575276424 338760843 639982746 894381163 894381163 613939785 307405488 329540483 420317221 420317221 850236520 850236520 817628001 699139148 221094516 212407136 212407136 195557748 237507272 377696908 377696908 433709066 471892100 753088316 882906767 945521995 945521995 754820616 562509921 562509921 898401794 898401794 357589665 356554144 356554144 17341322 828769728 831854240 836371041 836371041 269664257 876544234 876544234 536981536 562075169 562611297 562611297 274635522 274635522 29754464 294142080 294142080 303677506 312290898 436968452 436968452 41280896 282720976 282720976 162411400 397063820 397063820 249247452 510785680 510785680 486693504 486693504 417611912 417611912 250249454 945463780 946869557 946869557 657001763 170002596 593044196 971263863 971263863 680633928 458687348 835980003 835980003 416948335 437705238 956813718 963900327 963900327 732804121 488586798 488586798 688526373 940224609 940224609 1005899346 1005899346 1020635568 1020635568 574680878 639175308 639175308 606666001 765722880 909515547 1070913924 1070913924 875829307 875829307 475269317 371202225 1006764566 1006764566 587879739 356069824 356069824 235167821 418459848 969104769 969104769 666894585 919988635 919988635 523382030 894951061 894951061 572176844 1016236746 1016236746 476345694 476345694 154207672 285923118 285923118 373301492 373301492 503431678 503431678 88154280 275057386 275057386 112731264 299728904 299728904 287100450 436996940 436996940 234882376 234882376 311312146 311312146 223416466 327497850 327497850 269822466 582482025 737293308 737293308 658579481 658579481 138485933 121637928 369170105 882978258 882978258 697142738 821948355 821948355 708346643 708346643 587565139 860972672 973479380 973479380 1001062908 1001062908 847719000 449844204 449844204 783329076 810554182 814223064 814223064 557787197 738924562 738924562 835283968 835283968 858840419 858840419 948319076 967786119 967786119 814679346 426586594 322054722 331519874 333153094 333153094 320447712 320447712 558405382 558405382 546476449 21140864 19449120 20584224 28450496 552247040 552247040 270556672 413401602 478810890 478810890 369296900 369296900 472559506 472559506 690260160 807667971 979405683 979405683 972080103 757385517 1036798921 1036798921 983075095 967607583 996460821 996460821 593527188 560454488 902416115 902416115 895076250 384877530 308264264 395162965 531141919 818337987 818337987 783741203 772798852 772798852 342897816 583870597 583870597 752696904 752696904 742464576 892341975 981478403 981478403 468477719 547920691 963257652 963257652 135354065 540942340 545558032 552414657 677972036 677972036 445635394 489200591 855440295 855440295 299462049 886887033 886887033 870017466 870017466 822817827 704781365 722345013 722345013 676727312 275791590 389928623 744771474 744771474 807667971 828900493 828900493 628758031 628758031 338757393 705569930 705569930 436281360 539452950 574545681 859745953 859745953 779972401 909806525 909806525 751829140 482345718 1032880797 1032880797 680624622 680624622 538984760 340314318 373774530 373774530 562937893 562937893 743509028 743509028 740065412 340200704 340200704 235484252 777784432 777784432 732303082 921513435 921513435 788602941 788602941 742779021 742779021 231798932 230363420 321165434 321165434 180118048 354438490 509361004 509361004 440349786 682049787 795378342 795378342 890290994 890290994 537086534 984153412 984153412 891751936 891751936 924700848 924700848 592817472 535135012 184691296 157401476 157401476 122733256 901775595 901775595 816890643 365694186 426515983 426515983 396481628 881881963 881881963 761998129 1007490350 1007490350 453116953 62005760 62005760 30796576 30796576 33231200 33231200 93949960 93949960 944378218 944378218 875961099 747291849 747291849 545783873 424673965 226828360 487588454 487588454 98566632 98566632 83886120 83886120 386205186 459122720 459122720 441497746 441497746 638982681 640977060 858046809 858046809 944426039 944426039 352785433 57436336 539539728 576936276 694313201 694313201 237052188 237052188 229696112 167776344 344201036 418083920 418083920 279345984 279345984 43302912 51743312 51743312 204072196 204072196 520986917 520986917 385978417 929492403 929492403 895409835 895409835 20971680 629474585 629474585 352717680 909975281 909975281 366546912 340001920 340001920 350102058 350102058 88944832 103113858 308983954 308983954 103179178 269147400 269147400 254620988 254620988 227286092 283783076 283783076 473445088 473445088 391966004 234170318 916464258 916464258 911284713 911284713 413538311 168099982 168099982 134218052 134218052 788833432 846301916 846301916 618301984 464567298 347062909 28838912 28838912 109029328 109029328 87216936 87216896 107311760 107311760 73664512 73664512 14680512 14680512 8389056 15204928 719077988 719077988 154700885 41943616 135413763 940757511 940757511 688076096 688076096 908426142 908426142 556375173 794882432 944050913 944050913 639088651 533959152 533959152 353470048 511629924 511629924 420615586 420615586 439039364 439039364 781548317 781548317 378888794 562414377 562414377 314717058 341537284 341537284 719009827 719009827 944767623 944767623 283509026 730201223 899723317 899723317 185572645 172171588 929127816 929127816 908691967 927683338 927683338 575228411 815400172 815400172 397535838 379045765 759353517 759353517 947585590 947585590 987641552 987641552 1026351279 1026351279 690271416 690271416 579110914 134964444 242179484 242179484 208451856 208451856 114413904 114413904 94448160 394071722 875368026 875368026 969940296 969940296 512466305 512466305 546544471 546544471 733204944 914724442 914724442 588193872 852498528 852498528 361048450 361048450 341885066 290532008 27689280 96218928 96218928 376420688 376420688 887414035 887414035 933298505 933298505 622196632 558940480 807668611 807668611 820513458 820513458 757144944 835373946 1040913206 1040913206 94096016 55833152 145937220 145937220 390381762 390381762 1020348554 1057277989 1057277989 682160140 682160140 245557628 266725884 306694412 344231976 344231976 365308392 837405920 837405920 822724673 657307899 342753432 338164872 389669690 393100282 393100282 424071214 424071214 394543661 907059219 907059219 878191338 878191338 822100864 822100864 684819072 287835426 980535849 980535849 783476590 613063189 421992865 987775188 987775188 486315143 1047452687 1047452687 914055352 914055352 950936398 950936398 840958227 840958227 742391565 1043822635 1043822635 624591791 614022199 949495549 1016144463 1016144463 848311159 463713045 1000378433 1000378433 591491240 591491240 2622720 768674036 768674036 610348809 348270864 734212420 734212420 695612296 509814526 514334092 514334092 162603876 273588036 289530018 289530018 88664202 744279693 744279693 679876677 679876677 831521568 831521568 1034419781 1034419781 955302137 955302137 185598864 185598864 165134432 206705292 1040607501 1040607501 685849056 313862994 666201003 666201003 369304856 369304856 272956048 392292378 392292378 278625026 855891792 869868115 869868115 924597057 924597057 446765010 461309574 461309574 967464900 967464900 775995549 345493955 695992180 716792928 716792928 296881990 52085112 122283192 525536592 525536592 973737302 973737302 941885703 748295757 748295757 606079810 219415261 168073316 168073316 315634758 315634758 257110716 479407346 479407346 182012004 157378576 137628420 369374692 497154098 497154098 304732546 437008160 741096347 977285144 977285144 946949636 946949636 759033243 725650048 725650048 710215093 736392852 736392852 34316400 29151072 20762400 21222656 280687144 940315210 940315210 1028600333 1028600333 671297541 402671636 504140293 797349381 797349381 686066834 686066834 467720178 612450896 900874836 974229506 974229506 857785147 590381066 381599958 33867792 98483036 98483036 118150200 361071676 361071676 180633242 199649624 199649624 111516148 33774432 766035297 766035297 240912341 779306592 783301821 783301821 705427096 705427096 737474100 737474100 563438209 759169648 759169648 647046828 331300722 572730386 572730386 319501362 631329952 631329952 740074732 792558399 1037838926 1037838926 814812840 1030951069 1030951069 679138107 665895992 665895992 771278829 771278829 619221985 377885625 308882566 210315890 1059135580 1059135580 877399179 854888728 854888728 356537952 302101968 567711105 567711105 174743613 593058712 593058712 751422281 751422281 214222080 214222080 657597400 657597400 622524404 803862441 803862441 168881028 638247801 638247801 146672964 95081832 565999841 565999841 210963368 784804852 784804852 874513201 977611693 977611693 870419892 667420084 703356638 703356638 499641024 499641024 355997388 388707642 388707642 694228368 694228368 192088564 192088564 267701244 727238381 727238381 261170336 587499885 606081101 606081101 420136968 487463982 711868942 711868942 337420177 105002130 276481080 747134734 747134734 446763298 446763298 331941024 1019235413 1019235413 772066434 671401989 675620997 773144245 773144245 657818769 753833417 753833417 562672068 975514771 975514771 697861876 407525524 281492804 820696515 843261970 843261970 580849105 580849105 297637184 287079970 568491736 568491736 555943266 811747098 965165557 965165557 663748680 836516973 836516973 756472365 339354117 339354117 337715466 286661154 845194972 845194972 271969026 271969026 155502756 155502756 246413728 246413728 188548912 188548912 213602640 213602640 121752020 244631668 244631668 143968124 82331628 29286240 69994850 355671274 364198506 364198506 123120290 355202600 369786010 369786010 69478298 34603536 34603536 34738176 574675481 936702146 936702146 856928945 311648578 106955160 855640002 892868217 892868217 1036262944 1036262944 1020925647 349702340 488638574 1050681420 1050681420 0 498607196 824386346 824386346 504569716 647632473 647632473 548073512 548073512 339841472 339841472 632444530 632444530 627709353 600027974 282272352 107631752 107631752 37265448 1609856 9568832 12867976 131123340 505188916 513463902 513463902 475529893 859837499 859837499 836307113 575276424 1047689326 1047689326 919551195 894381163 545597505 307405488 307405488 495776354 495776354 68156424 353708586 353708586 210393170 210393170 194637024 260885354 260885354 106792294 377696908 377696908 433709066 471892100 753088316 753088316 164310060 754820616 754820616 720372208 720372208 898401794 898401794 357589665 124424336 291804680 291804680 828769728 828769728 278464995 280036928 280036928 622040098 622040098 830913443 830913443 928433914 928433914 806486154 561302657 648187858 648187858 576227754 303677506 382005520 436968452 436968452 41280896 183660612 436028164 436028164 278848908 278848908 249247452 513459722 513459722 486693504 486693504 417611912 417611912 248597981 198943530 455082631 657001763 657001763 148643988 593044196 921133144 921133144 623476863 458687348 835980003 835980003 456482595 946370722 946370722 828232403 662767304 662767304 874591674 874591674 688526373 940224609 940224609 462285271 462285271 1020635568 1020635568 574680878 639175308 639175308 606666001 629561943 909515547 1070913924 1070913924 698663405 698663405 475269317 134217732 1006764566 1006764566 587879739 356069824 356069824 206169228 418459848 418459848 148688580 357470640 357470640 216158754 194462480 194462480 226433128 475994760 475994760 414282658 476345694 476345694 254882228 285923118 285923118 373301492 373301492 503431678 503431678 88154280 275057386 275057386 352601776 352601776 714993237 817695305 817695305 715442517 715442517 262704169 687051169 687051169 995129990 995129990 816059158 272446673 617220947 737293308 839246096 839246096 807741699 386261305 386261305 369170105 369170105 228618002 697142738 821948355 821948355 708346643 708346643 440588518 807420290 973479380 973479380 1001062908 1001062908 847719000 944139833 1031724975 1031724975 810554182 810554182 575668881 442025622 738924562 738924562 536922357 591661233 858840419 858840419 948319076 967786119 967786119 814679346 426586594 322054722 331519874 333153094 333153094 1017742331 1017742331 930898155 1029228207 1029228207 614515017 945701005 945701005 738321860 738321860 1018122569 1018122569 614528014 478810890 478810890 271064802 385269748 385269748 354326914 690260160 690260160 806428721 832643427 832643427 757385517 1022625717 1022625717 983075095 844366980 647776129 647776129 554296785 560454488 902416115 902416115 895076250 384877530 308264264 996996728 996996728 746586189 921707853 921707853 772798852 772798852 180296193 1007585480 1007585480 952816839 348837063 136938016 83905856 332137152 332137152 587230864 986616405 986616405 837429200 270061653 540942340 545558032 552414657 677972036 677972036 32709908 489200591 855440295 855440295 299462049 886887033 886887033 870017466 873110537 889840683 889840683 645181079 676727312 990257040 990257040 610829347 610829347 444089533 272630924 272630924 493958437 628758031 628758031 338757393 304292631 436281360 436281360 539452950 574545681 859745953 859745953 779972401 909806525 909806525 751829140 482345718 1032880797 1032880797 680624622 680624622 608436224 606378121 81846400 85741940 562937893 617439812 743509028 743509028 740065412 340200704 604051715 1019460545 1019460545 875685888 257995908 177337197 853859130 853859130 1026402594 1026402594 721032900 675485729 675485729 724218085 724218085 264181556 991153431 991153431 509361004 660914941 682049787 795378342 997010090 997010090 944292999 537086534 607899968 607899968 891751936 891751936 924700848 924700848 592817472 842302611 842302611 309898932 874547674 874547674 784338368 382484800 382484800 176474196 589139680 589139680 583131345 177283140 177283140 724045392 724045392 168499240 168499240 84292916 46305728 30796576 30796576 33231200 74232113 74232113 64336489 944378218 944378218 878872144 855806001 681330245 664148601 592949426 285476898 822625319 822625319 323622066 523652748 523652748 101051320 386205186 459122720 459122720 441497746 441497746 382699084 640977060 858046809 858046809 944426039 944426039 352785433 277170326 543834528 554357793 554357793 70295584 86241576 223962928 223962928 617634972 715054677 715054677 577274717 317661723 320773988 322561842 396715572 396715572 280232286 204072196 520986917 520986917 385978417 929492403 929492403 895409835 965677972 965677972 872230899 629474585 352717680 909975281 909975281 366546912 340001920 340001920 92538984 88944832 88944832 6495656 208960 12325952 12325952 27531104 28969312 28969312 9046848 9046848 789504 10557440 473445088 473445088 989105607 1040986993 1040986993 1036038957 1036038957 911284713 747903232 976502449 976502449 903423723 658077348 658077348 646613716 424118230 874408819 874408819 397253864 392828346 282267256 958816514 1006868589 1069200450 1069200450 819965758 819965758 409210119 830579597 830579597 521141310 228847980 426263547 635884120 638620559 638620559 674958180 794843876 794843876 296135168 688076096 688076096 741105665 741105665 556375173 794882432 944050913 944050913 705253394 705253394 326057285 307545440 506501252 506501252 503715870 579936827 579936827 203108748 781548317 840473190 840473190 668899441 668899441 269218818 667170354 667170354 719009827 719009827 944767623 944767623 283509026 730201223 899723317 899723317 185572645 172171588 929127816 929127816 908691967 329527357 389474256 389474256 815400172 815400172 492169902 492169902 759353517 759353517 910819459 910819459 987641552 987641552 872590683 236086251 52961680 52961680 379341264 379341264 54790400 38153344 105284930 312818138 312818138 283162768 94448160 394071722 875368026 875368026 673202208 673202208 182200544 182200544 214972892 459293094 733204944 914724442 914724442 588193872 852498528 852498528 361048450 361048450 341885066 290532008 216554252 214774988 166924196 376420688 376420688 271572320 271572320 933298505 933298505 622196632 558940480 807668611 807668611 820513458 820513458 487402542 688454162 1040913206 1040913206 415027496 140566977 743052429 1028941733 1028941733 608450859 1020348554 1020348554 811694603 810590236 952705108 952705108 697674101 697674101 793529889 793529889 539619475 868869363 868869363 822724673 791799391 791799391 1050725725 1050725725 393100282 393100282 424071214 716507992 1040451615 1052027223 1052027223 878191338 878191338 668517621 684819072 921594625 921594625 674470858 783476590 931402966 931402966 346348605 300599542 354422542 354422542 991525204 991525204 914055352 914055352 649104433 649104433 610323905 115177736 143287597 863190925 960394649 962816138 962816138 949495549 949495549 848311159 848311159 463713045 1000378433 1000378433 155003276 1042115740 1042115740 846465939 383853018 383853018 348270864 955060538 955060538 384187414 509814526 514334092 514334092 52638000 52638000 33956128 2885634 5275919 744279693 744279693 483343566 1019433834 1019433834 831521568 1020271653 1020271653 955302137 955302137 185598864 185598864 994195002 994195002 1040607501 1040607501 685849056 313862994 666201003 666201003 513046532 378794586 272956048 272956048 39307394 178979972 542709200 869868115 869868115 924597057 924597057 287294926 287294926 374383642 967464900 967464900 907151360 907151360 695992180 716792928 716792928 493487704 52085112 122283192 122283192 227934408 1014177214 1014177214 791093525 791749437 791749437 373303495 148115496 207753612 207753612 430986120 430986120 257110716 479407346 479407346 246237292 733880181 815830911 815830911 1047845902 1047845902 787588996 959764132 959764132 738250246 792592170 792592170 739381773 689981072 693446832 693446832 673982640 673982640 134890608 166821124 690299377 690299377 629725458 825136705 903752205 1020790479 1020790479 268742790 402671636 402671636 973390671 973390671 424184908 370730780 425112036 467720178 467720178 367697610 379113612 379113612 232570926 381599958 381599958 109868256 288347784 288347784 217772336 321704464 321704464 246860540 218553260 218553260 208143756 208143756 643735248 643735248 240912341 779306592 783301821 783301821 833896962 833896962 737474100 737474100 634134764 634134764 277425656 277425656 805579683 805579683 310394913 599502592 631329952 631329952 758225000 876700809 876700809 616694872 718933609 718933609 714253335 884561478 884561478 337117515 850706562 850706562 772542193 416437225 378499680 378499680 923147784 923147784 586156624 854888728 854888728 846378898 292083624 892231809 892231809 174743613 228560901 228560901 751422281 751422281 690350373 690350373 220259361 773323293 773323293 740844677 740844677 236167385 638247801 638247801 84785472 289972538 565999841 565999841 474508202 712759229 712759229 507359220 307613962 309265202 309265202 234894366 354947336 354947336 521279078 521279078 355997388 388707642 388707642 694228368 694228368 130158840 153783840 267701244 267701244 261170336 261170336 249038556 606081101 606081101 70179073 70179073 711868942 711868942 965424231 965424231 895454572 1008055740 1008055740 543185321 1030370813 1030370813 763310336 1041109121 1041109121 673192518 673192518 1015551529 1015551529 673235205 753833417 753833417 833326097 975514771 975514771 848232404 426055138 426055138 706920868 963784725 963784725 808868102 808868102 780619920 931786224 931786224 877464840 877464840 811747098 965165557 965165557 746432990 836516973 836516973 756472365 339354117 422586134 422586134 1007232015 1007232015 851652305 851652305 730004066 730004066 705377301 1044659147 1047270915 1068050548 1068050548 213602640 213602640 121752020 244631668 244631668 143968124 82331628 26829568 69994850 355671274 364198506 364198506 123120290 106009760 106009760 73140226 73140226 69470472 69470472 82262858 82262858 339740674 339740674 815924353 815924353 340076682 855640002 892868217 892868217 941491368 991037065 991037065 498766251 498766251 1050681420 1050681420 190596122 498607196 824386346 824386346 587992113 316332506 603980872 603980872 548073512 150074124 150074124 137503192 611402252 611402252 600027974 556835842 135816605 120067132 13943074 301280226 301280226 269517762 73828544 271241472 271531266 271531266 475529893 859837499 859837499 836307113 559069040 1047689326 1047689326 919551195 567214138 714014724 730469493 730469493 495776354 495776354 68156424 353708586 353708586 210393170 210393170 186183208 493590888 505630922 505630922 197576896 197576896 113727088 212005160 771844092 771844092 704389257 145903692 160567908 720372208 720372208 167780816 816064640 816064640 405351479 291804680 291804680 553922880 556088257 556088257 544549761 301919904 622040098 622040098 830913443 830913443 928433914 928433914 806486154 561302657 648187858 648187858 576227754 90751688 382005520 382005520 335264050 298115584 285860898 436028164 436028164 278848908 278848908 211473996 513459722 513459722 487522444 492587196 492587196 382163148 184612708 184612708 184710196 184710196 168206336 168294420 677606060 921133144 921133144 821708160 821708160 140633799 818585164 818585164 946370722 946370722 828232403 662767304 882252363 882252363 983382186 983382186 438248084 588923840 1006632975 1006632975 1003521826 354962160 173065400 138543760 138543760 205835268 418776704 418776704 740841856 740841856 380399677 451436442 1042713600 1042713600 437126059 877023983 877023983 915481345 915481345 606285987 537823528 140182508 148688580 150962464 193288944 945009300 945009300 185781856 189022416 189022416 222417024 222417024 406450980 406450980 254882228 39339100 64018144 517580392 517580392 386426578 386426578 91284904 100704408 100704408 352601776 352601776 714993237 817695305 817695305 715442517 715442517 491815300 687051169 687051169 995129990 995129990 816059158 272446673 617220947 617220947 839246096 839246096 807741699 386261305 386261305 872475232 872475232 803473874 803473874 304271634 304271634 442503872 442503872 823322784 823322784 825453155 825453155 821158851 167374886 575736704 944139833 1031724975 1031724975 753855471 575668881 715367634 1009513743 1009513743 1009501575 946390407 868247035 286336841 171452292 844305410 844305410 310792851 282733136 28530384 37467888 37467888 36488324 88392051 1017742331 1017742331 930898155 1029228207 1029228207 614515017 950186056 950186056 738321860 738321860 1018122569 1018122569 614528014 749731593 749731593 788708680 788708680 636324295 602952172 910033221 910033221 775005408 775005408 1071837481 1071837481 633807551 604145869 235016220 351799128 647776129 647776129 554296785 642568512 653139417 653139417 250353860 103421208 827138772 996996728 996996728 746586189 1044095131 1044095131 741283146 741283146 172689797 1007585480 1007585480 952816839 348837063 803878478 950287181 950287181 835528341 587230864 986616405 986616405 587224583 975261840 975261840 691356038 691356038 334631248 435900250 435900250 324438918 645259245 645259245 277523640 576311979 832739752 832739752 915916488 915916488 889840683 645181079 191497620 990257040 990257040 610829347 610829347 444089533 356049954 356049954 891618570 891618570 422095240 271131906 271131906 270795666 303045920 325897526 425598630 425598630 505829430 526434750 526434750 481174572 206834108 206834108 155549820 153108676 17090592 608436224 608436224 606378121 184856640 1066899972 1066899972 617439812 617439812 432801661 432801661 209755179 774296436 1019460545 1019460545 875685888 257995908 177337197 853859130 853859130 1026402594 1026402594 721032900 675485729 675485729 724218085 724218085 264181556 991153431 991153431 264260592 660914941 660914941 620765897 997010090 997010090 944292999 474580673 607899968 607899968 15705233 15470016 34729138 320171170 320171170 842302611 842302611 309898932 874547674 874547674 784338368 382484800 755515703 851443923 851443923 694206838 583131345 903191003 903191003 724045392 963448035 963448035 389945097 84292916 61382576 61382576 581943329 595455921 595455921 554316128 130831592 700182277 878872144 878872144 855806001 681330245 664148601 592949426 285476898 822625319 822625319 323622066 523652748 523652748 554427457 554427457 499741638 600524223 600524223 274127490 541554819 874933199 874933199 1026031887 1026031887 872418316 537397281 843078704 843078704 558735617 554357793 681074917 681074917 207631533 215503384 617634972 715054677 715054677 577274717 317661723 320773988 322561842 396715572 396715572 671314277 1007928929 1007928929 539772966 271870060 1023449600 1023449600 69710977 965677972 965677972 872230899 175258727 313344 84740872 84740872 74522912 84489610 353055786 353055786 288535298 80989930 111502466 328593202 328593202 113075818 296882920 296882920 262812028 262812028 205858956 205858956 169082856 462039028 462039028 989105607 1040986993 1040986993 1036038957 1036038957 700120126 747903232 976502449 976502449 903423723 658077348 658077348 646613716 387129174 874408819 874408819 444466002 444466002 539367681 958816514 1006868589 1069200450 1069200450 819965758 819965758 409210119 830579597 1057963664 1057963664 228847980 426263547 426263547 638620559 638620559 674958180 794843876 954254275 954254275 703828711 780350837 780350837 609221769 609221769 727855114 793077299 793077299 791743518 705253394 801516884 801516884 506501252 506501252 619816211 669086673 669086673 168770580 1032151595 1032151595 890349679 668899441 668899441 269218818 667170354 667170354 622484704 274534080 138554624 11417604 14889408 347145516 510044352 510044352 283970892 56637950 120067332 120067332 281444504 281444504 389474256 389474256 363016949 912478383 912478383 812648967 976679257 976679257 678445377 475439136 967630298 967630298 591866008 1011165327 1011165327 892415649 890774318 379341264 235659804 239334556 239334556 312818138 330563995 634788585 649464689 649464689 550767297 1064567834 1064567834 1023994029 856162727 858858774 858858774 286534196 582749456 582749456 548252176 54002720 59581280 59581280 29108928 87416684 209005508 216554252 216554252 214774988 166924196 223765290 223765290 271572320 271572320 304104770 610057490 610057490 296978434 291594594 24591264 23069088 23069088 3545760 278790720 278790720 415027496 415027496 140566977 743052429 1028941733 1028941733 608450859 882035414 882035414 811694603 810590236 952705108 952705108 925378015 925378015 793529889 793529889 539619475 868869363 868869363 769230130 791799391 791799391 1050725725 1050725725 314150802 314150802 303495808 716507992 1040451615 1052027223 1052027223 785486079 785486079 668517621 675203001 921594625 921594625 674470858 266634540 931402966 931402966 346348605 300599542 337813668 779686280 924054649 981676119 981676119 786085223 530028158 530028158 370673178 569068230 569068230 863190925 960394649 962816138 962816138 832410416 832410416 759705505 759705505 674440261 455127197 205891380 155003276 1042115740 1042115740 846465939 556140706 556140706 350823640 955060538 955060538 711293537 35202576 35202576 458176538 511485192 511485192 311655138 522452666 522452666 276560556 138244392 483343566 1019433834 1019433834 840502346 882697027 882697027 931923003 931923003 597526321 103202282 994195002 994195002 42281040 42281040 6437760 1122384 276706408 513046532 513046532 378794586 269105680 269105680 35066882 323489250 536275212 562444018 562444018 533377085 313400658 313400658 478414926 823002786 823002786 443338134 974839434 974839434 476579214 476579214 493487704 493487704 155135576 584659998 584659998 827800227 1014177214 1014177214 791093525 791749437 791749437 398528938 378741296 207753612 207753612 430986120 430986120 128975736 128975736 246237292 246237292 733880181 815830911 815830911 1047845902 1047845902 787588996 959764132 959764132 738250246 438299953 739381773 739381773 438416955 1010150288 1010150288 673982640 673982640 396677342 396677342 690299377 690299377 905243776 905243776 903752205 1020790479 1020790479 483013768 268742790 167570460 973390671 973390671 138436882 156576420 156576420 146433440 158170388 158170388 350282472 350282472 180235876 180235876 158347744 175920676 320746752 320746752 217772336 217772336 246860540 246860540 224007468 260053244 260053244 208143756 193728949 205834248 205834248 614648133 621322953 653599397 833896962 833896962 677773388 677773388 634134764 947972252 947972252 579035778 805579683 805579683 832195136 832195136 599502592 127289380 758225000 876700809 876700809 616694872 718933609 718933609 826656847 884561478 884561478 337117515 850706562 850706562 810306455 710445313 647460321 642514321 920913115 920913115 586156624 574569489 846378898 846378898 292083624 892231809 892231809 151688512 189861208 776802540 776802540 536988004 690350373 690350373 316195014 830612050 830612050 565322676 565322676 236167385 379750910 379750910 925421491 925421491 823089184 823089184 553911090 469592348 507359220 507359220 307613962 537531393 849155723 849155723 559165094 354947336 521279078 521279078 534758441 534758441 52967141 692262745 692262745 604242565 243193637 224051900 674521905 674521905 68947464 709624349 709624349 541065600 875172608 875172608 682896709 798699620 965424231 965424231 895454572 1008055740 1008055740 543185321 1030370813 1030370813 855179920 1041109121 1041109121 673192518 673192518 1015551529 1015551529 673235205 676520881 676520881 833326097 833326097 848232404 848232404 426055138 426055138 854712546 963784725 963784725 808868102 808868102 780619920 931786224 931786224 877464840 877464840 780513454 780513454 746432990 746432990 677549133 336669696 336751112 941537598 941537598 523582477 1007232015 1007232015 851652305 851652305 730004066 730004066 705377301 1044659147 1047270915 1068050548 1068050548 365178226 365178226 151863552 503612568 503612568 488686682 266079174 424288768 424288768 369345104 245538072 52712748 35227696 106009760 106009760 73140226 271713024 278921538 316704130 316704130 315692562 339740674 339740674 815924353 815924353 340076682 340076682 234232812 342370202 821564747 991037065 991037065 575184250 575184250 397296785 281992258 190596122 492096174 625756726 625756726 587992113 542791178 603980872 603980872 300045216 290164928 150074124 738273801 738273801 620591653 620591653 644449420 644449420 605794320 40399104 301280226 301280226 269517762 76067360 382664392 382664392 283317378 269680988 222958764 277119780 431283074 431283074 421943910 877960456 877960456 906110184 906110184 730469493 730469493 287001103 287001103 682767204 759745113 936779402 936779402 134743272 134743272 493590888 505630922 505630922 447606102 197576896 168574992 212005160 798918311 798918311 823151373 984664696 984664696 260459408 711983294 711983294 816064640 816064640 795740080 795740080 854768417 854768417 815008705 815008705 811731587 541069378 301919904 5402178 1049600 1049600 4594176 4594176 21235840 21235840 20971680 17041408 17041408 264224 0 335264050 530898148 530898148 438085974 410432182 512659024 512659024 235920398 478245944 487137302 487522444 487522444 492587196 492587196 396019973 396019973 270845962 270845962 697699959 697699959 172396583 677606060 677606060 639888946 821708160 821708160 1021387215 1021387215 950018184 832129862 588933908 786184840 786184840 882252363 882252363 983382186 983382186 438248084 588923840 1006632975 1006632975 1003521826 354962160 51120160 165270752 165270752 834217827 834217827 418776704 831047703 873083348 1055466975 1055466975 1042713600 1042713600 437126059 877023983 877023983 991523629 991523629 843765568 843765568 565024800 565024800 838971672 838971672 945009300 945009300 212261196 259033476 296782736 355928838 355928838 406450980 406450980 203980854 387898970 387898970 517580392 517580392 386426578 386426578 477637644 477637644 443057302 282084992 244116280 453010216 463293930 463293930 367832694 276497888 491815300 491815300 776099748 776099748 369138312 362859074 362859074 332161104 721428788 721428788 304472081 142625204 885321168 885321168 872475232 872475232 803473874 803473874 304271634 304271634 442503872 442503872 823322784 823322784 825453155 825453155 821158851 91700136 91700136 72360200 72360200 818194832 818194832 71377032 715367634 1009513743 1009513743 1009501575 946390407 868247035 286336841 957952529 957952529 995013126 995013126 627895258 263226880 75048840 75048840 37374984 476128196 476128196 477814158 477814158 345161352 345161352 210355588 950186056 950186056 620954216 620954216 429453409 347707406 541064516 749731593 749731593 788708680 788708680 636324295 602952172 910033221 910033221 775005408 775005408 1071837481 1071837481 633807551 604145869 1056786057 1056786057 210799508 537134105 537134105 818564130 911088795 942576870 942576870 48418874 827138772 827138772 731650783 372369245 1044095131 1044095131 706785410 512963166 512963166 949182432 963505575 963505575 1036688006 1036688006 950287181 950287181 939118399 437518688 437518688 177538466 823709812 975261840 975261840 691356038 720413014 720413014 674634324 435900250 329390092 324438918 377882200 377882200 405106804 832739752 832739752 915916488 915916488 875173131 784471148 784471148 712649189 287946881 611809827 624669995 624669995 874376715 874376715 891618570 891618570 422095240 322097970 322097970 37098008 69735952 335078128 335078128 20805376 88191104 88191104 250008072 250008072 206834108 846371014 846371014 539034565 539034565 1055187077 1055187077 1044931874 1044931874 1066899972 1066899972 815342180 815342180 432801661 432801661 92849256 774296436 903368165 903368165 782371930 251684112 988292162 988292162 757600872 757600872 595720016 189527220 189527220 185222624 50864464 2622720 2171136 16797824 21156000 21156000 423150502 568836256 620765897 620765897 426792870 153227556 176214368 176214368 6438928 30772928 30772928 34729138 154422708 510341669 808325795 808325795 909115859 909115859 1041083588 1041083588 906832923 904684955 851443923 1072201368 1072201368 1052904991 1052904991 903191003 528866448 963448035 963448035 530908790 530908790 415805548 364115408 581943329 595455921 595455921 673409508 673409508 549894056 763748501 763748501 260611320 630097153 630097153 167304856 214484172 795630377 795630377 220550300 239175804 239175804 554427457 554427457 499741638 600524223 600524223 396508474 541554819 874933199 944418896 1026031887 1026031887 872418316 537397281 843078704 843078704 841747731 1009704207 1022337525 1022337525 612532485 612532485 842508612 918104406 1044199171 1044199171 650395978 140896644 8828736 294905964 294905964 671314277 1007928929 1007928929 539772966 85728876 1023449600 1023449600 606784002 741596206 741596206 740368653 676899156 249351900 641100257 641100257 286295170 287326464 353055786 353055786 288535298 80989930 293208904 328593202 328593202 113075818 296882920 296882920 272482440 262812028 205858956 357380776 357380776 462039028 462039028 284831796 377126920 377126920 94489168 700120126 700120126 699075708 878136409 878136409 613647955 476342272 544324085 544324085 387129174 150864404 168694590 444466002 444466002 539367681 539367681 811008240 811008240 35002896 338212144 338212144 123941304 874480386 1057963664 1057963664 171372568 373986608 373986608 495994304 495994304 473444386 473444386 954254275 954254275 703828711 1004934614 1020050477 1020050477 707213589 727855114 793077299 793077299 791743518 675993742 801516884 1026089314 1026089314 692964154 619816211 669086673 669086673 240333232 1032151595 1032151595 890349679 511317918 511317918 276765416 198390516 59555380 675748593 675748593 168436804 717295975 717295975 347145516 464077520 526986308 526986308 363200676 533208498 533208498 382081242 226953320 282630376 282630376 363016949 912478383 912478383 812648967 976679257 1068763487 1068763487 970931943 970931943 591866008 592719131 1011165327 1011165327 892415649 1033930244 1033930244 564183936 239334556 239334556 134263824 330563995 634788585 649464689 649464689 550767297 1064567834 1064567834 1023994029 856162727 858858774 858858774 592471552 699524481 699524481 672457285 538519041 554731552 554731552 29108928 17934368 1962496 1881600 1881600 1789440 181031120 223765290 510241138 510241138 490610556 922026925 922026925 844520243 852682785 852682785 817903749 324930853 444598016 444598016 599207220 849613062 849613062 330360848 39512860 209550732 209550732 141563608 336749184 882035414 882035414 362856810 362856810 625579131 625579131 925378015 925378015 430725974 445120598 445120598 822550818 873447784 873447784 833568099 502817677 854617550 854617550 404089350 404089350 235490842 4235776 5366400 5366400 14771144 78709696 701793360 701793360 546490894 707714325 707714325 266634540 363370760 363370760 346195360 290347384 932134011 932134011 779686280 924054649 981676119 981676119 786085223 530028158 672034272 672034272 569068230 569068230 444677745 164502756 335908936 335908936 832410416 907506304 907506304 930534079 930534079 455127197 709022097 709022097 806936705 978688119 978688119 888205884 888205884 350823640 350823640 711293537 711293537 500875204 440916816 458176538 511485192 511485192 389722524 522452666 522452666 486539798 486539798 437256238 280051744 840502346 840502346 882697027 882697027 931923003 931923003 597526321 103202282 1042466842 1042466842 191314356 1064461090 1064461090 429917998 429917998 276706408 173815862 484973866 484973866 269105680 396494208 459684428 536275212 822021088 822021088 533377085 313400658 313400658 478414926 823002786 823002786 443338134 974839434 974839434 418565203 915572690 915572690 447819936 155135576 584659998 584659998 827800227 1010772529 1010772529 525337248 252848562 398528938 1029906471 1029906471 1022566886 686887137 679596744 493440006 82701768 401056450 401056450 105714184 105714184 459941786 459941786 238285596 327299562 327299562 236713500 168049924 168049924 258936472 258936472 186123828 319629618 1010150288 1010150288 276071424 324813742 396677342 396677342 291705974 291705974 905243776 905243776 411424470 411424470 483013768 942556224 942556224 318033616 527535590 527535590 437289606 437289606 433762272 433762272 464352452 464352452 407794018 407794018 180235876 455477730 455477730 175920676 320746752 329134512 329134512 166997272 372802204 480258602 480258602 347417418 288368744 366776450 366776450 205834248 270132738 614648133 621322953 1056494060 1056494060 329416893 84013384 554822113 554822113 947972252 947972252 579035778 321664968 329991969 832195136 832195136 420402758 816548031 816548031 285213730 258717112 115632870 37564176 143791560 826656847 826656847 748855360 615482368 809288914 810306455 810306455 710445313 647460321 642514321 594019761 584090576 300455584 330442706 531601278 531601278 446991404 439626542 439626542 395838992 767304545 776802540 776802540 685562522 529924245 449577926 316195014 830612050 830612050 565322676 565322676 189880801 254536960 254536960 925421491 925421491 823089184 823089184 553911090 457407374 650871364 747917633 747917633 537531393 849155723 849155723 559165094 273614918 286538048 286538048 823575514 823575514 761480007 692262745 692262745 925364610 925364610 504968379 674521905 674521905 489212680 709624349 709624349 975686420 975686420 875172608 881728075 881728075 798699620 639108633 159594109 14756896 61551984 140392844 140392844 236523815 855179920 973736670 973736670 731387430 614207049 223611564 223611564 203162784 671645824 675857541 675857541 427111248 162464258 431964006 479771238 481346382 854712546 854712546 733028758 733028758 184925320 776574262 812484729 812484729 802261598 802261598 743499768 816334936 816334936 1013256711 1013256711 957804839 957804839 941537598 941537598 1036897012 1036897012 458330018 721839362 721839362 706924821 455917670 455917670 442037462 144319108 204682776 204682776 365178226 365178226 291792052 503612568 503612568 488686682 266079174 424288768 424288768 369345104 245538072 223541750 223541750 144614320 69245010 75845650 271713024 278921538 316704130 316704130 315692562 315692562 283707078 146936198 143331846 110439320 128785932 234232812 279318678 779360272 779360272 23069088 845845984 845845984 397296785 118889016 33049179 929877435 929877435 929877435 1021100228 1021100228 718459614 718459614 585864469 585864469 583185494 939216472 939216472 834665248 834665248 644449420 644449420 605794320 191650708 192101152 192101152 119571336 76067360 382664392 382664392 283317378 214331546 178045276 277119780 431283074 431283074 748930633 877960456 1011019817 1011019817 1071140558 1071140558 805458591 932717322 997076765 997076765 1055845492 1055845492 936779402 298652924 126158912 273675456 275584326 447606102 447606102 226608752 226608752 139494709 798918311 798918311 823151373 984664696 984664696 260459408 711983294 711983294 918823740 918823740 795740080 795740080 854768417 854768417 815008705 815008705 811731587 554856770 301063011 624668808 624668808 277989123 935517882 935517882 557111457 557111457 646595538 646595538 575668410 212530560 412026252 412026252 530898148 530898148 438085974 410432182 512659024 512659024 478938794 478245944 487137302 487137302 447011720 447011720 173691014 396019973 396019973 270845962 270845962 697699959 697699959 172396583 165969972 165969972 639888946 792329668 792329668 1021387215 1021387215 950018184 832129862 310090848 786184840 786184840 387908729 705500397 764031493 764031493 849880158 849880158 301049379 61949884 912068364 912068364 231367204 231367204 328708836 834217827 834217827 429255270 831047703 873083348 1055466975 1055466975 782506514 437555732 303300620 957689871 957689871 991523629 991523629 843765568 843765568 565024800 565024800 838971672 914392091 914392091 812091800 1058424838 1058424838 782704664 864234026 864234026 288577672 276084792 116279484 387898970 387898970 127277688 110309976 110309976 271065864 477637644 477637644 443057302 282084992 530105079 735897643 982590039 982590039 780494175 780494175 777831484 777831484 789144324 789144324 243827657 362859074 362859074 545858625 721428788 721428788 597733642 608680058 885321168 885321168 669354313 669354313 918676994 918676994 826152161 826152161 287703168 332975042 994272788 994272788 945990608 945990608 818975958 197140406 40930432 40930432 38805504 818194832 818194832 945770713 945770713 335871645 902444702 961143975 961143975 682873440 826373445 957952529 957952529 995013126 995013126 627895258 263226880 75048840 75048840 37374984 476128196 476128196 477814158 477814158 345161352 548050890 548050890 676413440 676413440 620954216 620954216 429453409 688363244 688363244 232421413 202563848 693167874 693167874 473932288 473932288 70290362 237021226 237021226 39895440 302127148 302127148 852769420 852769420 1056786057 1056786057 362771014 606109765 606109765 818564130 911088795 942576870 942576870 294175842 600809433 600809433 758213698 758213698 288498552 347519358 623327296 623327296 512963166 949182432 1036311115 1036311115 1036688006 1036688006 451539230 939118399 939118399 363875270 281808066 177538466 823709812 823709812 571740433 571740433 720413014 720413014 674634324 409595526 329390092 314284284 377882200 377882200 405106804 832731144 832731144 876436378 876436378 378516442 784471148 784471148 712649189 942272261 942272261 805643139 624669995 874376715 874376715 827369610 321490482 302258524 468908542 468908542 434479558 244810522 335078128 335078128 20805376 20805376 37036544 37036544 11543376 75825550 846371014 846371014 539034565 539034565 1055187077 1055187077 1044931874 1044931874 847730728 847730728 815342180 815342180 26240611 80322720 92849256 92849256 67683336 182877380 251684112 251684112 988292162 988292162 757600872 757600872 545863237 185775168 732102737 732102737 713066773 713066773 429085773 853943229 853943229 485891022 893493927 893493927 728759733 728759733 426792870 252734542 176214368 176214368 6438928 30772928 30772928 166032124 242533668 510341669 808325795 808325795 909115859 909115859 1041083588 1041083588 906832923 1051780457 1051780457 1072201368 1072201368 1052904991 1052904991 528866448 528866448 323174437 323174437 530908790 530908790 415805548 364115408 282420938 339483032 480661088 673409508 673409508 549894056 763748501 763748501 260611320 260611320 251842620 251842620 218776592 214484172 248447428 248447428 121566308 65539696 0 0 0 337313584 396508474 396508474 529332856 529332856 944418896 944418896 752179107 752179107 537399552 841910690 841910690 841747731 1009704207 1022337525 1022337525 612532485 612532485 842508612 918104406 1044199171 1044199171 650395978 273821508 516924862 516924862 492422732 337963106 85669416 201900362 823183364 823183364 621304329 606784002 939790476 939790476 741596206 740368653 676899156 249351900 641100257 641100257 286295170 287326464 287326464 217105356 210899528 210899528 293208904 293208904 205689864 139835524 416946892 416946892 272482440 86896866 219779880 357380776 357380776 373527168 373527168 833817299 833817299 564012595 566554144 566554144 869360849 869360849 878136409 878136409 808372736 808372736 389046114 318824990 37781680 37781680 0 0 683673953 683673953 48889504 595766752 595766752 592970944 338212144 338212144 123941304 874480386 874480386 274710331 171372568 171372568 33805844 495994304 495994304 473444386 473444386 391184730 268509186 239170078 1004934614 1020050477 1020050477 707213589 172062853 136628484 152117796 152117796 136430368 327700300 1026089314 1026089314 692964154 231000300 210201433 210201433 240333232 796968415 796968415 367448027 511317918 973956935 973956935 988129608 988129608 885131856 675748593 168436804 717295975 717295975 307463474 464077520 526986308 526986308 363200676 533208498 533208498 382081242 97165482 282630376 282630376 277057856 36415328 135291848 219202092 219202092 1068763487 1068763487 970931943 970931943 567285766 592719131 592719131 708395310 708395310 1033930244 1033930244 564183936 16990848 16990848 95416160 841021576 872028147 872028147 200328180 969560052 969560052 969283815 957876038 996935185 996935185 555286581 592471552 699524481 699524481 672457285 538519041 554731552 554731552 104269328 104269328 210141132 210141132 202719372 222692420 222692420 192358784 510241138 532750672 532750672 922026925 922026925 844520243 852682785 852682785 817903749 434709990 444598016 444598016 599207220 849613062 849613062 76933144 46037568 9547840 280258928 327204978 392202434 392202434 337905930 362856810 362856810 698024280 698024280 259235468 234386160 430725974 719290917 862682528 862682528 873447784 873447784 833568099 468212435 854617550 854617550 404089350 404089350 235490842 715410810 1062521535 1062603567 1062603567 770102095 770102095 701793360 332194585 332194585 895863529 895863529 513797054 473117676 609498190 814270922 932134011 932134011 507768990 899816103 899816103 595884492 373659999 175081002 672034272 866084019 866084019 668638441 668638441 642812974 642812974 335908936 333670944 907506304 907506304 930534079 930534079 924985688 1003284634 1003284634 593685740 978688119 978688119 888205884 888205884 299266064 441177128 441177128 500875204 500875204 440916816 442257392 442257392 310040466 389722524 389722524 369473358 486539798 486539798 437256238 398668770 347800325 806794307 954201153 954201153 675992709 148835104 223318281 223318281 1042466842 1042466842 767783861 1064461090 1064461090 733097317 656639388 240699898 173815862 484973866 484973866 327229554 396494208 459684428 459684428 822021088 822021088 616956184 102766793 436733120 448790742 448790742 248023297 248023297 722786920 722786920 577148304 915572690 915572690 179442516 111202828 277412488 277412488 492646062 1010772529 1010772529 252848562 252848562 103024672 1029906471 1029906471 1022566886 686887137 679596744 493440006 123157028 401056450 401056450 105714184 105714184 459941786 459941786 410321152 410321152 387078178 373416990 689279118 893786283 927415483 927415483 358264357 203308856 36226320 35701008 35701008 35684352 32768 16384 32768 420027936 420027936 491978310 890983116 890983116 613662877 942556224 942556224 848446154 848446154 713039188 815172178 815172178 440018417 440018417 464352452 815701061 815701061 703466801 703466801 679349792 455477730 38297012 289838084 424463526 424463526 417124038 417124038 480258602 480258602 347417418 288368744 366776450 366776450 250529876 270132738 270132738 266033148 1056494060 1056494060 710006798 710006798 474366097 468188460 468188460 381367048 373146690 373146690 329991969 666400512 666400512 420402758 816548031 816548031 285213730 258717112 115632870 37564176 143791560 629947736 629947736 615482368 615482368 685953477 685953477 446432139 336760338 336760338 278424288 299145902 679609953 679609953 373966056 608776370 831103257 831103257 887296499 887296499 615070279 767304545 808272928 808272928 807770373 529924245 262949582 293675568 414427293 414427293 790762253 790762253 259134396 254536960 254536960 252057660 67289640 120115200 477975072 477975072 457407374 869318760 869318760 747917633 614334590 345709729 465578200 465578200 492050690 492050690 404820114 823575514 823575514 761480007 609696393 609696393 925364610 925364610 504968379 366061558 302007396 489212680 500549701 500549701 975686420 975686420 856983972 881728075 881728075 512367492 441191574 989124562 989124562 919251164 919251164 1046614431 1046614431 319691816 973736670 973736670 731387430 614207049 135929856 706794752 706794752 690606357 690606357 554173473 427111248 709691584 709691584 479771238 481346382 918085851 918085851 92873832 841752665 841752665 776574262 776574262 378498682 802261598 899976785 899976785 816334936 816334936 1013256711 1013256711 957804839 957804839 779136410 907617819 1036897012 1036897012 309890692 721839362 721839362 706924821 864561060 864561060 442037462 144319108 204682776 204682776 184647744 197519604 291792052 291792052 25215072 25215072 26614368 26801184 160584512 160584512 80070006 223541750 223541750 144614320 69245010 75845650 75845650 11608896 12657088 12657088 275952320 275952320 6291456 136255488 136255488 148998912 148998912 484850729 1047791258 1047791258 910230067 546647890 845845984 845845984 280681993 118889016 429793840 929877435 929877435 929877435 1021100228 1021100228 718459614 718459614 585864469 585864469 583185494 939216472 939216472 834665248 834665248 220323976 220323976 171695164 191650708 192101152 192101152 107483840 107483840 101706028 74866778 68157960 450688589 450688589 1020697418 1020697418 1020314319 748930633 748930633 1011019817 1011019817 1071140558 1071140558 805458591 932717322 997076765 997076765 1055845492 1055845492 746656880 298652924 278952154 278952154 141459458 67766086 10011978 335579656 335579656 303072330 42518538 35651584 173835904 173835904 140248704 140248704 134481924 279448782 977283952 977283952 903162031 747241496 747241496 920534985 920534985 817575747 817575619 558043625 875257002 895010475 895010475 277989123 935517882 935517882 557111457 557111457 646595538 646595538 575668410 482488714 482488714 412026252 302523700 190891032 190891032 185332788 441957510 478938794 478938794 534840960 534840960 461474432 39119606 82356456 82356456 231589796 231589796 219957260 160706380 245706068 245706068 169413456 165969972 165969972 157370748 679648356 679648356 125118540 270086400 1031574693 1031574693 339139338 259316092 1034765050 1034765050 705500397 764031493 764031493 849880158 849880158 301049379 476137336 912068364 912068364 231367204 231367204 328708836 328708836 429238786 429255270 429255270 512063912 1050986847 1050986847 782506514 437555732 202582070 957689871 957689871 859967667 426640384 426640384 210763996 219333712 562300320 804852948 914392091 914392091 589703545 1058424838 1058424838 1015096132 864234026 864234026 288577672 276084792 253841260 221569660 495704948 495704948 378806838 110309976 35721296 134250532 134250532 38323344 25232896 530105079 982624151 1004274335 1004274335 780494175 964065880 1031057662 1031057662 856293148 789144324 243827657 243827657 285237900 715145470 715145470 669273372 696302746 696302746 608681328 379734816 669354313 669354313 918676994 918676994 826152161 826152161 276307955 311726465 994272788 994272788 945990608 945990608 818975958 670923128 838059096 838059096 808403494 890566963 890566963 945770713 1052493002 1052493002 902444702 961143975 961143975 682873440 826373445 826373445 556367940 364400762 384988520 384988520 54699392 15848848 9486912 8966720 525312 272913664 275175810 275175810 296307104 548050890 753655844 753655844 629891145 606696645 606696645 948815398 948815398 806304262 806304262 805644291 693167874 693167874 676146792 676146792 94282624 738521493 738521493 987226519 987226519 738963780 852769420 852769420 567175111 567175111 649609240 649609240 908190673 908190673 903364602 903364602 279871552 294175842 600809433 600809433 758213698 758213698 117885553 347519358 623327296 919607380 919607380 681540327 1036311115 1036311115 1008934573 1008934573 501006628 683721664 683721664 15777989 25363264 25363264 11546720 305971524 305971524 277640336 408654994 408654994 409595526 409595526 33965184 849010389 849010389 168159252 168159252 832731144 832731144 876436378 876436378 378516442 677120688 677120688 593240194 942272261 942272261 805643139 565310518 562168880 818943154 818943154 178260292 302258524 468908542 468908542 434479558 279970680 75288754 43941712 66369968 66369968 37036544 135465478 268908546 377795076 604197468 718412489 718412489 685005721 614988105 149397893 73708464 426087272 483916494 483916494 805307563 882381521 985863061 985863061 723760395 708413214 708413214 1022594008 1022594008 529800104 529800104 732559624 732559624 798938454 798938454 526645771 732102737 732102737 713066773 713066773 479302776 853943229 853943229 485891022 893493927 919584494 919584494 728759733 533907593 811598021 811598021 302616933 578387354 928195600 928195600 1016709338 1016709338 790791725 790791725 772614446 1063381751 1063381751 1005101436 1005101436 1019372002 1051780457 1051780457 705976718 187187200 187221300 187221300 109068736 115466712 115466712 67199376 41005336 36836112 42472336 282420938 282420938 339483032 480661088 600119396 600119396 238748064 619940672 619940672 260309116 664195937 664195937 251842620 241795148 774051229 774051229 248447428 174288928 242705612 714222389 714222389 308345426 818404483 818404483 224647744 529332856 529332856 692269504 967573861 967573861 820853927 810359058 673914916 37566627 725892071 725892071 310777938 306446418 1065878760 1065878760 614999271 357761825 37223184 1022671736 1022671736 281020467 516924862 516924862 512167416 861546771 861546771 740401827 823183364 823183364 621304329 892938433 939790476 939790476 1021821314 1021821314 754184271 202152328 202152328 90472448 98754344 98754344 217105356 217105356 210899528 210899528 209863688 209863688 205689864 139835524 690430101 690430101 313235416 612957847 612957847 492782386 535541374 535541374 720572774 833817299 864112003 864112003 853590483 566554144 869360849 869360849 809496747 925121171 925121171 842278075 646096897 646096897 384526378 384526378 419876298 419876298 683673953 683673953 42979700 595766752 595766752 592970944 31069920 31069920 17223360 20186528 68295602 392432058 392432058 303400584 145220162 281126982 281126982 182901204 268443648 268509186 268509186 168597538 17198100 0 0 136558592 136628484 136628484 58720368 58720368 114295512 303945276 303945276 336048232 352846890 352846890 117811280 117811280 855712205 855712205 431229798 431229798 1067112063 1067112063 973956935 988129608 988129608 885131856 76029696 107354520 107354520 173015700 173015700 169134612 451217460 451217460 480383310 480383310 478285902 478285902 369157584 369157584 283503042 97297688 978928942 978928942 367315434 451166268 451166268 754342664 754342664 611720073 1010074252 1010074252 105139999 915980874 915980874 497566305 406602758 432705478 432705478 280302272 280302272 841021576 872028147 872028147 688915269 969560052 969560052 969283815 957876038 996935185 996935185 159385877 545809424 578936913 578936913 537249361 34638865 33826832 144119768 144119768 487361804 512896416 512896416 389356736 452872036 452872036 192358784 412164502 532750672 532750672 352979050 163058614 207477408 207477408 341034568 341034568 434709990 434709990 409732928 312268864 312268864 310189824 310189824 100897024 110574168 328263510 328263510 420481332 439623544 1033371970 1033371970 517113182 943871429 943871429 831000626 788813332 788813332 719290917 862682528 1048610523 1048610523 743729469 948490822 982780503 982780503 785499029 983343831 983343831 672694738 715410810 1062521535 1062603567 1062603567 770102095 770102095 774433699 774433699 343027626 895863529 895863529 513797054 473117676 609498190 814270922 890888602 890888602 743396523 658562655 595884492 595884492 373659999 396283210 809189084 866084019 866084019 668638441 668638441 642812974 642812974 310642770 310642770 310642770 530626858 530626858 924985688 924985688 1003284634 1003284634 593685740 180359190 415549638 627318844 627318844 360792377 441177128 441177128 59416762 50923560 203007064 442257392 442257392 437965056 439879446 439879446 369473358 954987975 954987975 418204757 542316099 572396053 939564085 954201153 954201153 675992709 145587264 223318281 223318281 801323008 801323008 767783861 787497317 787497317 733097317 656639388 371510532 371510532 523620700 523620700 418307526 141858370 562442274 893916897 893916897 616956184 616956184 540511953 447720761 680389701 987761090 987761090 684714579 722786920 722786920 577148304 577148304 320676352 451331288 451331288 413524762 626270756 898639459 898639459 428028006 428028006 104071568 103024672 188950734 411120524 411120524 155337410 405893328 405893328 162780932 162780932 62881456 263300580 263300580 245649416 370867738 410321152 410321152 387078178 478275734 689279118 893786283 927415483 927415483 711352586 374693011 352620192 352620192 304188032 304188032 373196478 373196478 452909186 452909186 420027936 491978310 890983116 890983116 791863309 791863309 618782836 848446154 848446154 738726030 815172178 815172178 866739568 866739568 296427846 815701061 815701061 703466801 703466801 679349792 375951806 375951806 352339290 424463526 424463526 417124038 417124038 150448136 417021932 417021932 270128876 345117258 345117258 479773286 479773286 82388424 41152984 474628560 514512222 710006798 710006798 474366097 266451456 381367048 381367048 373146690 373146690 125977152 666400512 725715156 725715156 632810305 539795232 756696617 992486587 992486587 57746352 989794662 989794662 629947736 723895440 723895440 685953477 774289240 788127545 788127545 824828657 824828657 896106616 896106616 679609953 373966056 608776370 831103257 831103257 887296499 887296499 615070279 721692446 808272928 808272928 807770373 475562592 455960232 455960232 428180384 428180384 790762253 790762253 259134396 131748202 373818522 630195875 868401232 868401232 810866897 810866897 363628658 869318760 869318760 997071400 997071400 935803131 935803131 810951288 492050690 492050690 404820114 544203896 544203896 563158600 609696393 872614912 873413643 873413643 269366283 269095938 108045064 251732024 251732024 117514300 168835628 168835628 856983972 856983972 828917112 512367492 441191574 989124562 989124562 919251164 919251164 1046614431 1046614431 471667728 471667728 152310832 50989604 135929856 135929856 706794752 706794752 690606357 690606357 554173473 89934105 709691584 709691584 209789004 99615720 918085851 918085851 92873832 841752665 841752665 354662508 999281750 999281750 954352615 899976785 926633899 926633899 897365819 360022432 375465802 397984592 607453619 957796445 957796445 372670770 965741157 965741157 185517328 603134004 603134004 864561060 864561060 279651446 381362762 464131948 464131948 184647744 117809308 474244568 474244568 411615590 411615590 26614368 26614368 140599456 421839668 421839668 324583952 186437172 146648944 49705184 33489872 277097936 309927698 309927698 280732434 275952320 275952320 272668676 146491974 141822852 148998912 148998912 998245576 1047791258 1047791258 910230067 842703111 842703111 666796776 666796776 284940082 429793840 445594710 466565718 467090166 467090166 449500374 449500374 335548928 226517160 761426241 761426241 950764958 950764958 492799956 1042174479 1042174479 744794505 610422804 18680470 191891058 191891058 268437632 272894082 272894082 74866778 68157960 450688589 544424452 1020697418 1020697418 1020314319 1005143252 822532131 975624615 975624615 843503763 524812832 322438962 322438962 471806484 471806484 369888282 202914318 76940344 76140562 278952154 278952154 247239244 473567560 473567560 371117054 335579656 425771047 803399847 919075035 919075035 658119903 658119903 605065934 772938034 772938034 977283952 977283952 903162031 823698290 905521131 920534985 920534985 883084235 883084235 837849704 875257002 895010475 895010475 893522091 901013099 901013099 822627368 324015416 109989232 354570568 394974362 482488714 482488714 289655276 484491726 484491726 265548540 265548540 265548540 362891992 362891992 534840960 534840960 134914892 202658028 230853132 230853132 231589796 231589796 219957260 160706380 245706068 245706068 169413456 146850360 157370748 157370748 679648356 801136277 801136277 953982465 1031574693 1031574693 370685616 259316092 1034765050 1034765050 320482898 245170725 327364722 327364722 177406502 75620424 476137336 476137336 98591488 97356352 147463650 308943908 308943908 944316467 944316467 792529631 426914011 225273148 101173256 42201168 173121684 173121684 591400962 859967667 859967667 369102290 369102290 803626000 803626000 763008493 804852948 804852948 187577620 187577620 172641720 1015096132 1015096132 439556864 439556864 271999826 271999826 253841260 302337282 495704948 495704948 378806838 93552816 321003896 360761688 360761688 288408160 288408160 272187392 982624151 1004274335 1004274335 425612196 964065880 1031057662 1031057662 927987668 927987668 829350291 785753055 450966912 715145470 715145470 669273372 696302746 696302746 608681328 587500464 827705881 926015827 926015827 566329793 555770112 540545184 55443808 55443808 27270320 21377440 552885508 552885508 546456660 670923128 838059096 838059096 808403494 890566963 890566963 599405667 1052493002 1052493002 157056371 77203552 25165920 167634608 167634608 163792176 42638452 126059048 126059048 112366528 112366528 15848848 9486912 10845190 74093959 950061193 950061193 944379015 825352995 825352995 900412779 900412779 894058571 878829963 606696645 948815398 948815398 894659746 894659746 805644291 607226116 674750212 1008932614 1008932614 196563552 738521493 738521493 987226519 987226519 738963780 738963780 595648706 595648706 947408574 947408574 649609240 908190673 908190673 903364602 903364602 879084441 577017209 554588299 446361092 446361092 221574672 234930204 302023186 302023186 919607380 919607380 672563914 617294980 746985549 746985549 674024844 751305933 751305933 683721664 526319637 526319637 371007630 995332850 1004414146 1004414146 425931462 291891618 836112608 836112608 835850147 673974966 849010389 849010389 992258417 992258417 958879970 726489460 726489460 575415539 168695472 552260084 552260084 683335012 683335012 564843873 25182240 25182240 17452864 66103426 159385376 189931774 189931774 108291536 121109304 279970680 310903890 330335494 420528678 420528678 534230318 534230318 468681958 387044828 377795076 764561126 764561126 718412489 685005721 614988105 149397893 73708464 319523492 644471830 644471830 805307563 882381521 985863061 985863061 723760395 908285721 908285721 1022594008 1022594008 1063455552 1063455552 591700210 699317617 798938454 846462166 955070789 955070789 942457986 119435412 479302776 501748136 501748136 92495620 172269736 569948324 919584494 919584494 724254260 533907593 811598021 811598021 302616933 578387354 928195600 928195600 1016709338 1071141227 1071141227 790791725 772614446 1063381751 1063381751 935633728 298444002 1019372002 1021973967 1021973967 1015156815 1015156815 872018621 872018621 518958680 518958680 115466712 114499925 450380662 450380662 422625884 399918917 754207181 922667337 922667337 711377673 711377673 569803132 619940672 619940672 260309116 664195937 774092328 774092328 241795148 774051229 774051229 174288928 174288928 242705612 714222389 714222389 455801298 818404483 818404483 224647744 902882333 1008256527 1008256527 967573861 967573861 820853927 810359058 673914916 37566627 725892071 725892071 476646798 306446418 1065878760 1065878760 614999271 526529225 241193759 1022671736 1022671736 351700464 185741286 512167416 512167416 861546771 861546771 740401827 476349001 341436042 164625636 892938433 965298255 1010617359 1021821314 1021821314 754184271 350225280 344982090 90472448 98754344 100157164 159908964 234097636 234097636 354554154 354554154 189852610 399084764 478676046 690430101 690430101 424099404 612957847 612957847 492782386 535541374 535541374 720572774 720572774 864112003 864112003 853590483 559787890 50930736 659517602 809496747 925121171 925121171 842278075 646096897 692180141 692180141 691102508 691102508 686233061 686233061 553520137 9965824 12195648 440172393 1067086655 1067086655 1066402431 117129161 857715319 857715319 392432058 535002460 980142667 980142667 617376075 639758090 639758090 997296798 997296798 589697292 589697292 178478005 677800264 775946397 775946397 216043720 242499908 242499908 179571540 67224332 180876996 797641912 797641912 551264808 895934476 895934476 225844212 855712205 855712205 445104964 445104964 1067112063 1067112063 741673793 767559785 767559785 597688832 8530000 42941520 64300146 315830994 322322882 322322882 451217460 451217460 480383310 480383310 478285902 478285902 369157584 383504464 383504464 97297688 978928942 978928942 402851692 451166268 451166268 192945076 192945076 358744288 1010074252 1010074252 641993553 915980874 915980874 558006528 946344006 946344006 432705478 424650916 280302272 877170896 877170896 686851090 688915269 688915269 921176520 921176520 791063974 791063974 686341284 851830995 851830995 578936913 941081153 941081153 675419651 748221134 748221134 438037466 487361804 512896416 512896416 389356736 452872036 452872036 457296468 457296468 383914332 383914332 381294426 161691748 159854948 159854948 132782460 228615372 384279876 409732928 409732928 144440144 144440144 310189824 310189824 236360205 570738705 1058030947 1058030947 706232585 1009653773 1033371970 1033371970 517113182 953547986 979243012 979243012 788813332 788813332 956189249 956189249 1048610523 1048610523 437425938 948490822 982780503 982780503 954232722 983343831 983343831 672694738 177062160 171769200 245634408 245634408 738685573 762430480 774433699 774433699 343027626 343027626 220800300 220800300 341651082 341651082 72042176 890888602 890888602 743396523 658562655 154468845 142729284 142729284 396283210 809189084 809189084 728651968 732480885 732480885 571388282 818334082 818334082 952242375 952242375 864108751 263227976 684003494 684003494 688608709 688608709 407273602 180359190 415549638 627318844 627318844 360792377 533567552 533567552 515968198 776155223 776155223 417551846 429121778 531702940 531702940 446951766 212384346 954987975 954987975 418204757 542316099 572396053 939564085 939564085 595646480 595646480 642209296 642209296 560723212 801323008 801323008 145540256 258759076 258759076 176953600 68638464 371510532 371510532 523620700 523620700 418307526 503279448 562442274 893916897 893916897 405095673 540511953 540511953 843056515 843056515 987761090 987761090 684714579 684714579 428970144 276836960 320676352 320676352 451331288 451331288 798002923 798002923 898639459 898639459 669762775 493786024 269758822 40284440 860308025 860308025 714432895 976514044 976514044 405893328 162780932 259751016 259751016 263300580 611638941 639028045 639028045 546486556 256186064 120125048 478275734 478275734 305788816 778076319 778076319 711352586 941773970 1009378575 1009378575 917104978 917104978 454582438 513658378 513658378 452909186 600311536 600311536 801848029 801848029 791863309 906703899 906703899 809649432 809649432 938100202 938100202 367564283 866739568 952388932 952388932 686563879 428476818 428476818 200154612 300419474 375951806 375951806 352339290 288132104 322089332 423447398 423447398 208522360 417021932 417021932 270128876 345117258 345117258 479773286 479773286 288601082 71775296 474628560 514512222 1044997100 1044997100 823375224 823375224 327461841 154694256 119000600 306528322 306528322 928613890 928613890 725715156 632810305 608587432 874418081 992486587 992486587 57746352 989794662 989794662 621674916 723895440 723895440 412346906 774289240 788127545 788127545 824828657 824828657 896106616 896106616 424334502 563661040 563661040 438195989 187831092 250086876 250086876 1059660072 1059660072 369688608 857014207 857014207 406720884 951762920 951762920 737933301 428180384 882673644 882673644 952674157 952674157 728891880 630195875 868401232 868401232 810866897 810866897 363628658 363628658 603226954 997071400 997071400 935803131 935803131 810951288 47524560 190849028 190849028 361358442 451085710 747262128 747262128 872614912 873413643 873413643 269366283 269095938 369755836 476653336 523061397 913173915 996261905 996261905 772787205 715686403 728324040 798225021 798225021 99664264 881205504 881205504 268140419 497128359 1071315780 1071315780 648545694 648545694 447353104 947411240 947411240 695131557 622853933 623261341 727412525 745603665 1023742608 1023742608 495336962 495336962 504763348 504763348 421512458 421512458 404754516 461463568 461463568 999281750 999281750 954352615 353634858 926633899 926633899 897365819 621303714 375465802 397984592 397984592 957796445 957796445 599180160 965741157 965741157 854300387 854300387 282893476 681887077 681887077 279651446 381362762 464131948 464131948 138617992 138617992 474244568 474244568 411615590 411615590 20973856 20973856 140599456 421839668 421839668 324583952 186437172 146648944 85724712 77695818 277097936 309927698 384352344 384352344 308477970 279634194 272668676 275637638 409159430 409159430 456131072 998245576 998245576 661161024 656458041 842703111 842703111 666796776 666796776 323229778 429599714 719187664 975121137 975121137 967051623 449500374 550207492 550207492 901804477 901804477 974660307 974660307 964759749 492799956 1042174479 1047922776 1047922776 792842340 191176964 269497680 269497680 275458648 275458648 476938068 476938068 406408078 404612688 544424452 1042547680 1042547680 1023159679 1015359567 869840606 975624615 975624615 869392653 869392653 761524307 548020893 289407744 824213842 1015096082 1015096082 801777256 468916540 231684072 72092808 485364044 485364044 473567560 422922530 422922530 858071555 858071555 971055591 971055591 721219122 658119903 605065934 772938034 772938034 560465313 889225873 889225873 823698290 905521131 905521131 836045625 883084235 883084235 837849704 88203432 11980928 92719299 893522091 901013099 901013099 822627368 271846146 271846146 354570568 394974362 394974362 237556210 164300864 484491726 484491726 399432954 399432954 386084922 386084922 362891992 344921114 222909830 457708534 457708534 275258416 471030864 471030864 67108864 27901696 20445728 12548192 27254784 27254784 45750176 83073808 83073808 85681992 801136277 801136277 953982465 953982465 745475972 943003500 943003500 1024914813 1024914813 618434952 205594764 397375666 968678662 968678662 964038821 964038821 625087849 600078852 244173332 209716952 286131713 837419491 944316467 944316467 792529631 426914011 225273148 101173256 42201168 173121684 173121684 198427156 805453920 805453920 134366273 547935801 803626000 803626000 763008493 602493821 875127938 875127938 728286537 926322970 1050024276 1050024276 1048614967 866308732 522187832 522187832 67122224 302337282 302337282 372093322 372093322 93552816 321003896 360761688 360761688 288408160 288408160 272187392 95445088 93421920 294700296 355590954 365267906 365267906 83126720 927987668 927987668 829350291 785753055 450966912 450966912 7090646 329728 268636416 581358376 934546299 934546299 917299729 926015827 926015827 874597411 857735475 304648321 373686443 624029153 624029153 304211840 135807792 187221300 187879200 187879200 807640100 807640100 552647908 639972474 639972474 599405667 456884754 894332796 964791503 1036116207 1036116207 155230231 163792176 163792176 121855376 130917600 130917600 112366528 113879488 113879488 42168328 10845190 74093959 950061193 950061193 944379015 825352995 825352995 900412779 900412779 894058571 878829963 543896705 564066144 564066144 894659746 894659746 604102665 607226116 607226116 1008932614 1008932614 196563552 236721780 236721780 173371924 381159258 381159258 336143370 595648706 595648706 947408574 947408574 361261257 261544484 288375178 873505704 879084441 879084441 577017209 554588299 420600436 420600436 221574672 234930204 522391634 522391634 228663660 1010238914 1015811151 1015811151 269490703 678297902 678297902 751305933 751305933 884053776 884053776 526319637 371007630 995332850 1004414146 1004414146 425931462 291891618 836112608 836112608 835850147 673974966 583479383 583479383 992258417 992258417 958879970 726489460 726489460 575415539 168695472 552260084 552260084 683335012 683335012 721827474 778721468 778721468 839396076 839396076 837043354 189931774 189931774 458701092 458701092 237765698 310903890 330335494 420528678 420528678 534230318 534230318 468681958 387044828 244328648 764561126 764561126 420773895 290918044 106717316 386224160 386224160 507369472 644471830 644471830 492653329 503943824 503943824 577624620 577624620 908285721 908285721 314050386 346620533 1063455552 1063455552 591700210 699317617 699317617 846462166 955070789 955070789 942457986 1711104 235013432 501748136 501748136 262706846 262706846 623051704 623051704 562960224 1062523212 1062523212 211995327 72563304 847622708 847622708 899813560 899813560 373964940 1071141227 1071141227 636485657 636485657 824296184 935633728 935633728 289965082 784449616 784449616 721543221 1015156815 1037710417 1037710417 872018621 847938330 518958680 83358630 114499925 450380662 450380662 422625884 399918917 754207181 922667337 922667337 711377673 711377673 569803132 694458248 784860381 784860381 105782325 774092328 774092328 202910728 202910728 111284568 214036884 214036884 139240896 139240896 228027492 455801298 455801298 181030632 186666412 902882333 1008256527 1008256527 606857291 606857291 152787493 560938401 733483652 733483652 979121364 979121364 847869657 847869657 906532047 906532047 526529225 948080015 948080015 589862810 974051009 974051009 943348367 1069273288 1069273288 793992616 793992616 647866064 922781417 922781417 604660771 675489286 965298255 1010617359 1010617359 338440200 1029896448 1029896448 344982090 72616156 27837792 100157164 159908964 234097636 234097636 354554154 354554154 189852610 399084764 478676046 478676046 218992294 424099404 424099404 135266304 188933152 188933152 16839344 576409856 576409856 55623808 55623808 60434499 857685555 857685555 903777905 903777905 560541993 638571441 638571441 576940084 692180141 716444064 716444064 691102508 753538592 753538592 107170745 171667818 993363830 993363830 1067086655 1067086655 1066402431 117129161 857715319 857715319 195742378 535002460 1001412620 1001412620 915794523 678806804 678806804 997296798 997296798 625074345 891552857 891552857 677800264 775946397 775946397 630830957 630830957 671827648 802454608 802454608 818573968 818573968 797641912 551264808 895934476 895934476 431658690 805741205 805741205 601847364 445104964 341205472 182849444 182849444 28974184 10486848 73577808 79950040 79950040 92524752 315830994 322322882 322322882 33628176 371528498 371528498 85408296 87296808 299228106 299228106 383504464 383504464 67220770 560990086 560990086 410518433 381368154 512568414 512568414 141693828 243531992 1018429738 1018429738 730630847 713736513 289949154 558006528 946344006 946344006 923964379 922767769 663290630 877170896 877170896 763934057 697368619 651800656 948171911 948171911 791063974 791063974 852083387 852083387 851830995 567879795 941081153 941081153 675419651 748221134 748221134 438037466 330156032 330156032 62425112 330675720 416590734 416590734 457296468 457296468 383914332 383914332 381294426 211856862 385961382 385961382 132782460 228615372 384279876 384279876 373555214 373555214 245310810 210962960 104944896 236360205 570738705 1058030947 1058030947 706232585 1009653773 1009653773 552372171 597056166 953547986 979243012 979243012 538351648 708218977 956189249 956189249 893949016 893949016 590224689 284792898 284792898 954232722 954232722 404753924 450867794 450867794 449289976 487226500 487226500 408480296 408480296 762430480 762430480 1057957417 1057957417 219480064 219480064 203388454 220409992 941947672 941947672 784484497 533601103 257705000 975465427 975465427 715477771 715477771 540179078 661826435 814489462 814489462 732480885 854366710 854366710 818334082 818334082 952242375 952242375 864108751 263227976 684003494 684003494 688608709 978692641 978692641 660075041 457592984 233761821 233761821 411051540 533567552 533567552 515968198 776155223 776155223 417551846 429121778 531702940 531702940 446951766 113268170 11535168 25236544 25899104 25899104 20181792 20181792 269167394 714700656 1057314833 1057314833 642209296 560723212 560723212 1071394882 1071394882 943094389 943094389 897997245 893260242 339106042 105047786 304177696 304177696 297869538 503279448 911569680 911569680 972981228 972981228 673091381 306607970 843056515 902350059 902350059 507419637 309194130 408134788 408134788 145377380 145377380 104868048 81789384 35324672 798002923 798002923 432727866 669762775 669762775 493786024 269758822 40284440 860308025 860308025 714432895 976514044 976514044 60506536 60506536 259751016 259751016 255028669 611638941 639028045 648884818 648884818 256251712 418021816 418021816 157295532 442260870 778076319 778076319 373366938 941773970 1009378575 1009378575 917104978 917104978 454582438 513658378 513658378 528846974 1032227908 1032227908 308661888 308661888 605644032 906703899 906703899 323622066 468221980 938100202 938100202 734070020 734070020 952388932 952388932 987874320 987874320 596085424 601802212 601802212 300419474 50449440 27449620 168186144 322089332 423447398 423447398 208522360 338553700 367130414 367130414 158653489 975609765 975609765 294565299 944614387 997199743 997199743 766865399 1044997100 1044997100 823375224 823375224 738362256 738362256 641250872 306528322 306528322 928613890 928613890 325370842 604270689 608587432 874418081 874418081 703607597 762702093 762702093 541836108 768286792 799375408 799375408 143448512 209462872 209462872 185421216 385020032 397665472 1028215593 1028215593 727921160 563661040 709229763 745520536 745520536 990134669 990134669 1059660072 1059660072 934228684 934228684 857014207 379311074 951762920 951762920 737933301 279185730 882673644 882673644 952674157 952674157 728891880 405426704 860149776 860149776 286263459 269930546 7789440 64215352 76804680 545067096 569339721 569339721 567165692 567165692 349635813 239492334 249889977 690227493 690227493 747262128 747262128 743101588 743101588 238098864 253234460 1010966053 1010966053 476653336 793970181 913173915 996261905 996261905 772787205 926044447 926044447 910594236 798225021 437674081 303459206 866324915 866324915 497128359 1071315780 1071315780 648545694 648545694 447353104 947411240 947411240 695131557 622853933 623261341 727412525 745603665 1023742608 1023742608 495336962 495336962 512018820 512018820 421512458 421512458 404754516 461463568 461463568 929574298 929574298 839011118 489984019 353634858 53005440 621303714 621303714 554942066 605428233 605428233 581962008 620779608 620779608 599180160 585766353 854300387 854300387 417502369 949552948 949552948 308620065 65077664 65012208 29829184 138617992 199661052 340696976 340696976 242876964 242876964 156502564 303566452 303566452 282942470 162148896 162148896 104042166 85724712 85724712 385323408 385323408 343349770 384352344 384352344 308477970 279634194 272349442 275637638 409159430 409159430 456131072 456131072 661161024 661161024 656458041 656458041 545278392 294986418 294986418 323229778 429599714 1002180466 1002180466 975121137 988821169 988821169 550207492 550207492 901804477 901804477 974660307 974660307 964759749 427246734 427246734 1047922776 1047922776 792842340 191176964 286113522 322790192 322790192 275458648 841469789 921412930 921412930 747697225 545597505 1042547680 1042547680 1023159679 1015359567 869840606 869840606 728811507 869392653 869392653 761524307 548020893 286811002 824213842 1015096082 1015096082 801777256 468916540 377283134 377283134 485364044 485364044 452202138 422922530 422922530 858071555 858071555 971055591 971055591 721219122 915857518 988506593 988506593 882649103 560465313 745222188 745222188 693420165 606093604 369221658 293610048 293610048 286335522 93491426 280697352 350434666 350434666 367792202 367792202 366513386 269486336 271846146 271846146 277485408 359158440 359158440 197284496 5801572 5243392 332023816 399432954 399432954 510112304 510112304 344921114 364988592 364988592 457708534 457708534 356430576 471030864 471030864 215008868 127926392 127926392 109076816 187388468 187388468 65127728 101587992 115807128 115807128 81803152 546253632 546253632 745475972 745475972 943003500 957106647 1024914813 1024914813 618434952 528725581 428236206 968678662 968678662 964038821 964038821 625087849 600078852 244173332 209716952 279320898 837419491 880216435 880216435 750521815 672204197 698022725 718629896 718629896 138721892 138721892 402665558 842544912 842544912 828127392 828127392 790135040 790135040 227171860 263667940 875127938 875127938 728286537 926322970 1050024276 1050024276 1048614967 866308732 522187832 522187832 67122224 34353744 65315456 65315456 29326592 33631408 33631408 30069984 59331616 59331616 26215040 470990848 470990848 93421920 294700296 355590954 365267906 538969334 736413943 989865075 989865075 286048478 516286686 516286686 717838632 717838632 639565244 268636416 581358376 934546299 934546299 917299729 591203353 874597411 881378379 881378379 878724416 878724416 624029153 731848628 731848628 726269029 726269029 187879200 187879200 807640100 807640100 338764554 639972474 639972474 495597409 456884754 894332796 964791503 1036116207 1036116207 155230231 114280528 114280528 121855376 130917600 130917600 84496464 113879488 113879488 85984288 40383944 33867792 33867792 33646592 543443340 740387085 740387085 475822209 270267906 270267906 536870913 540033184 1016234688 1016234688 1011011727 952291527 952291527 683448136 683448136 404381517 336216836 103734552 81156240 81156240 53643168 381159258 654029972 773326365 773326365 671339149 235258629 209103852 201499280 261544484 369258504 369258504 570844560 570844560 864647617 864647617 18948384 30417651 629281063 629281063 965870113 965870113 228663660 1010238914 1015811151 1019938408 1019938408 961753767 678297902 406371783 335921320 884053776 884053776 22268491 642290048 779765145 779765145 775423773 152252964 152252964 27868160 27868160 134546778 385946628 385946628 12685666 847456688 847456688 268702728 342883722 342883722 336547018 145228936 145228936 149558606 338086158 338086158 721827474 778721468 778721468 839396076 839396076 837043354 398732464 365760530 458701092 458701092 237765698 237765698 93148226 225970092 225970092 211887840 66655328 207961828 268699650 402915330 402915330 920327205 920327205 311302306 580270511 580270511 955518667 955518667 890702890 840643391 1012012032 1012012032 503943824 577624620 577624620 806354360 806354360 524214078 524214078 203806850 404799750 404799750 402911238 478363720 478363720 339872072 274982728 274982728 214033734 519169820 519169820 493136968 493136968 475235120 623051704 805293237 805293237 1062523212 1062523212 974630593 277015108 847622708 847622708 899813560 899813560 796926766 1059152031 1059152031 1006641964 1006641964 824296184 824296184 588267697 588267697 784449616 784449616 721543221 658628793 1037710417 1037710417 948830246 948830246 338828132 422286510 422286510 280149728 66276976 66276976 45424720 45424720 34726416 34726416 9313344 20731344 64412400 694458248 784860381 784860381 105782325 82406640 105120984 231395736 231395736 111284568 214036884 214036884 139240896 139240896 228027492 228027492 104289324 120750008 252343224 254673196 254673196 862004644 862004644 864424341 864424341 37100304 733483652 733483652 979121364 979121364 847869657 847869657 906532047 906532047 830595171 948080015 948080015 589862810 974051009 974051009 943348367 1069273288 1069273288 793992616 793992616 647866064 922781417 922781417 604660771 213536546 4974432 462848 462848 827355638 1029896448 1029896448 420041317 152098498 152098498 11535168 7340224 30474880 269889224 417144014 417144014 175113108 502531592 502531592 903743311 903743311 513429202 605237763 605237763 1063760514 1063760514 710099143 709891589 709891589 719139316 719139316 687652243 857685555 857685555 903777905 903777905 790827124 722855581 722855581 244885736 244885736 716444064 716444064 84009000 753538592 753538592 107170745 171667818 993363830 993363830 839720740 36958992 99672064 99672064 41800824 115866072 115866072 19553752 1001412620 1001412620 915794523 678806804 678806804 383839169 625074345 923439894 1067936985 1067936985 245158473 156894520 623391236 630830957 630830957 671827648 802454608 802454608 818573968 818573968 111121518 91310504 66309058 319814706 431658690 432712866 601847364 601847364 264712804 170918868 182849444 182849444 28974184 211750212 211750212 211068504 79950040 136441920 168089604 193233700 193233700 162530116 236268192 236268192 116392920 78924792 275814554 275814554 396011192 396011192 393543186 560990086 560990086 410518433 743172023 743172023 556851034 556851034 558171617 1018429738 1018429738 730630847 881984068 881984068 939544611 939544611 923964379 923964379 922767769 663290630 663290630 763934057 763934057 697368619 651800656 948171911 948171911 809660416 809660416 852083387 852083387 507429260 507429260 572280337 572280337 247722204 608180947 608180947 406189510 604064261 604064261 137628672 330675720 330675720 831848719 831848719 537781698 703120840 703120840 166464746 211856862 385961382 385961382 218154160 330251344 451368396 451368396 485042176 509946270 509946270 431264576 104944896 87400928 21235872 155490352 906152414 906152414 878333888 878333888 552372171 597056166 868646946 868646946 810881103 538351648 708218977 708218977 465191480 893949016 893949016 590224689 284792898 284792898 268699650 444702532 444702532 450867794 450867794 449289976 487226500 487226500 408480296 785718539 785718539 84790066 1057957417 1057957417 271608706 271608706 203388454 293262854 941947672 941947672 784484497 533601103 257705000 975465427 975465427 715477771 715477771 540179078 661826435 814489462 814489462 692924608 854366710 854366710 681691584 68835981 187374725 567374893 567374893 1017823389 1017823389 585825537 574086921 978692641 1010180656 1059535167 1059535167 824318381 844413827 844413827 411051540 312026706 173737558 240202940 272864472 272864472 505334922 505334922 414725888 411250758 289641894 886155223 886155223 325850409 763539247 763539247 692287391 692287391 714700656 1057314833 1057314833 663767163 963715850 963715850 1071394882 1071394882 943094389 943094389 897997245 893260242 347317578 212800238 373429150 414986956 414986956 198519544 911569680 911569680 972981228 972981228 673091381 170639960 699320978 902350059 902350059 507419637 856056887 856056887 197854836 194988756 194988756 463477024 463477024 333584720 36386064 51214732 70916466 327035126 470581836 470581836 420554846 90515896 306200832 306200832 438323772 438323772 105217288 238374064 238374064 216312588 58267896 170483712 170483712 268611856 855662696 855662696 392426715 418021816 418021816 516611136 516611136 442260870 73535880 36195672 113564112 113564112 80005320 520734192 520734192 25715838 8405088 155680888 528846974 1032227908 1032227908 949414639 309330792 309330792 62499202 403622150 403622150 323622066 618833112 618833112 734070020 734070020 947175379 947175379 987874320 987874320 596085424 601802212 601802212 346564954 351341466 351341466 168186144 193783972 325370208 325370208 74482366 338553700 367130414 367130414 341057284 975609765 975609765 294565299 944614387 997199743 997199743 766865399 749791349 600408103 618687493 618687493 738362256 738362256 641250872 28441624 65251688 907499571 907499571 395735440 604270689 604270689 297120096 629034468 703607597 762702093 762702093 541836108 768286792 799375408 799375408 143448512 209462872 209462872 185421216 62423368 183617273 1028215593 1028215593 727921160 583590276 709229763 745520536 877393035 990134669 990134669 743974588 743974588 934228684 934228684 717640657 347478858 910387154 910387154 815538383 1011999375 1011999375 278136264 343484298 433850904 847366424 847366424 860149776 860149776 286263459 269930546 7789440 348889352 348889352 962594074 962594074 797152088 797152088 567165692 512230530 512230530 249889977 690227493 690227493 373820694 19317925 743101588 743101588 671488005 671488005 1010966053 1010966053 73741568 793970181 793970181 4071168 3279872 104600 926044447 926044447 910594236 437674081 437674081 303459206 866324915 866324915 439597833 67373064 113582288 113582288 36386176 42542160 139248816 184813620 184813620 36324612 170237728 170237728 137169708 412300614 412300614 362022520 362022520 512018820 512018820 265345876 394585008 394585008 422188326 422188326 164625636 839011118 839011118 642177177 642177177 170164829 902354747 902354747 933851128 933851128 605428233 581962008 746676599 910221492 910221492 455742774 568989110 568989110 417502369 949552948 949552948 423101846 511533406 511533406 441446364 414595978 414595978 510805760 510805760 372807324 242876964 156502564 303566452 303566452 282942470 4211712 8413184 33796176 33796176 8601600 385323408 385323408 343349770 301994112 46211280 46211280 33562816 5439744 7331200 7624192 7624192 408749065 681062080 681062080 701958728 759642285 759642285 96778349 84199464 68280992 70593160 199197394 1002180466 1002180466 857025075 988821169 988821169 794591420 745099690 742991117 553742346 538968321 542209458 542209458 214430412 214430412 206494860 112113868 178516308 178516308 286113522 378022576 378022576 326608866 841469789 1051231064 1051231064 747697225 545597505 545597505 513997822 848039968 848039968 938709333 938709333 852744111 852744111 1030337612 1030337612 403711397 286811002 370673178 370673178 369624090 364905712 91685102 377283134 377283134 449462642 449462642 368049348 413180396 413180396 279451440 933552188 956237073 956237073 478052994 915857518 1040389177 1040389177 1002383980 1002383980 863453567 863453567 834409302 1029228207 1029228207 740312688 274784882 21185754 382939866 382939866 350434666 350434666 367792202 367792202 366513386 286818736 286818736 284478402 284478402 487943738 487943738 407394786 407394786 156900516 207074540 207074540 379121746 510112304 510112304 226865332 370270400 382730970 382730970 356430576 356430576 48353186 215008868 215008868 127926392 127926392 109076816 193074224 193074224 143131716 156502692 182325172 1008353248 1008353248 892207168 942418496 942418496 1053936472 1053936472 957106647 988056615 988056615 605569134 528725581 428236206 428236206 427935850 392914018 370933920 26615712 76892192 76892192 68054664 279320898 346700106 346700106 750521815 750521815 672204197 698022725 718629896 718629896 138721892 138721892 402665558 842544912 842544912 828127392 828127392 148115588 133714776 227171860 263667940 263667940 217292728 256930912 256930912 58953840 58953840 42825216 35372048 35372048 26737248 1566720 33677328 65315456 65315456 29326592 58667248 58667248 42388640 46845376 46845376 32505920 495078849 785465559 785465559 707291765 507793133 1022741264 1022741264 961847734 989865075 989865075 286048478 516286686 516286686 717838632 717838632 639565244 205691832 572751505 572751505 192750308 154412496 112765056 399016113 881378379 881378379 878724416 878724416 540283456 731848628 731848628 726269029 726269029 993953143 993953143 908657165 588721201 588721201 337644650 926823777 926823777 592659578 1017432399 1017432399 926842744 807487752 336599552 336599552 302699538 325470662 325470662 141101354 141101354 75632712 85984288 85984288 40383944 474445953 747032719 747032719 675762305 740387085 940667023 940667023 970158955 970158955 497238510 158335050 1016234688 1016234688 1011011727 952291527 952291527 683448136 683448136 404381517 336216836 227775586 227775586 46289104 328914810 626719432 654029972 773326365 773326365 705875996 583053377 681108097 681108097 630411445 630411445 602968700 789052101 789052101 970913844 970913844 843979923 843979923 629281063 629281063 965870113 965870113 675596301 138895492 137628546 1019938408 1019938408 961753767 480650575 779630429 779630429 712049474 876613763 876613763 642290048 779765145 779765145 775423773 256583083 212032530 687136912 860988615 1048777860 1048777860 385946628 992801861 992801861 966733538 966733538 435988163 284126466 284126466 872812971 872812971 637672229 715166212 715166212 402956608 402956608 71341712 178438232 178438232 398732464 398732464 365760530 278466672 320550450 320550450 319562768 319562768 225970092 225970092 457429828 457429828 503524290 503524290 402915330 450111916 920327205 920327205 625946386 625946386 614148425 955518667 955518667 890702890 840643391 1012012032 1012012032 173704327 106745496 106745496 272284043 473191472 524214078 524214078 961815840 961815840 921012804 921012804 947934405 947934405 834205537 577353698 577353698 214033734 519169820 519169820 493136968 493136968 475235120 59718096 805293237 805293237 385546780 974630593 974630593 277015108 277015108 128174560 126093344 109051992 796926766 1059152031 1059152031 1006641964 1006641964 290554466 584082057 588267697 713031765 713031765 390543546 759240727 759240727 134742272 136840452 948830246 948830246 338828132 422286510 422286510 280149728 40944768 40944768 37226256 37226256 34726416 34726416 9313344 155065112 739131964 739131964 127854840 769529408 769529408 584449411 334791667 347779936 347779936 260145568 266530984 524825852 524825852 424293748 158558216 158558216 135763504 160391488 252343224 807261539 839247891 862004644 862004644 864424341 864424341 56427952 315670674 315670674 270008870 270008870 161145380 152252964 143224894 830595171 971510656 971510656 956989135 352376848 352376848 268699650 794870302 794870302 462424535 87345960 227527727 763397313 763397313 749070570 669034602 669034602 509413258 1059729902 1059729902 827355638 827355638 716436309 420041317 152098498 294463970 295649186 295649186 287253056 350034464 417144014 508577038 508577038 518653586 518653586 903743311 903743311 532650102 605237763 605237763 1063760514 1063760514 710099143 858215700 957213735 957213735 719139316 687652243 950192515 950192515 804639053 790827124 1042436862 1042436862 722855581 559150540 764073069 764073069 626716569 757200805 757200805 629322916 629322916 260460578 999272046 999272046 1006485671 1006485671 972479463 903796882 903796882 867802688 133045752 356651178 356651178 880853067 906348014 906348014 649136450 1042335950 1042335950 923439894 1067936985 1067936985 245158473 156894520 97381472 97017856 226494544 226494544 135684232 156760740 280857264 280857264 499461378 499461378 248172838 283776450 1067528334 1067528334 856163379 657778013 657778013 657771321 657771321 772351005 772351005 763810372 763810372 211068504 101185560 136441920 168089604 193233700 193233700 162530116 236268192 236268192 116392920 113543528 275814554 275814554 396011192 396011192 393543186 421285234 421285234 233716714 1056454586 1056454586 686343621 584188312 558171617 558171617 376345882 46793872 881984068 881984068 939544611 939544611 419463171 139132928 491374467 623494292 623494292 576287752 431646210 612893769 612893769 616772713 616772713 809660416 809660416 16916512 16916512 0 442193418 507764888 507764888 247722204 608180947 608180947 406189510 604064261 604064261 277994072 478225312 816604488 831848719 831848719 537781698 703120840 703120840 495151874 495151874 101331056 101331056 218154160 330251344 451368396 451368396 485042176 509946270 509946270 431264576 95888248 162611093 785109456 785109456 906152414 906152414 839270489 551171540 551171540 623697151 920128714 920128714 899333835 489358603 489358603 1038112788 1038112788 877824521 877824521 595860251 272499966 518091079 518091079 444702532 444702532 808501312 808501312 15728768 470975354 470975354 399867676 785718539 785718539 319679538 576282883 576282883 271608706 271608706 505012356 505012356 293262854 77646048 90442152 92706132 235573384 853541331 853541331 719342035 402760200 477676804 477676804 578838545 939597904 939597904 663579702 109125720 888297032 888297032 989284379 989284379 281051993 1017823389 1017823389 585825537 574086921 742472815 1010180656 1059535167 1059535167 824318381 844413827 844413827 209808064 209808064 190436084 864187459 864187459 272864472 505334922 505334922 261511860 289641894 289641894 886155223 886155223 325850409 763539247 763539247 692287391 692287391 75628736 77796616 663767163 663767163 963715850 963715850 957378840 237312140 509501762 515837404 515837404 443961936 482087552 482087552 373429150 414986956 414986956 198519544 535052552 676660301 929541986 929541986 169638403 638383934 638383934 850510988 850510988 962688139 962688139 856056887 735193872 716299189 427033242 463477024 756418593 756418593 33761536 51214732 207890220 327035126 470581836 470581836 420554846 260697036 306200832 306200832 438323772 438323772 126432000 238374064 238374064 216312588 215879552 153354760 917195341 917195341 926420044 926420044 392426715 316481430 416731858 516611136 516611136 979246569 979246569 282276546 891351062 979435951 979435951 896827779 700602658 461923432 508298422 508298422 270519296 270519296 949414639 949414639 362684352 397455336 397455336 403622150 403622150 241490692 618833112 618833112 618256640 618256640 192184676 192184676 23650432 191317668 191317668 35946848 121160210 346564954 351341466 351341466 61871172 198849060 400189088 522283832 522283832 470147356 352395306 429516390 429516390 426593216 177259092 109731044 46171688 34358288 34079760 33555456 4194304 554549320 618687493 618687493 204249781 188140840 85450280 323527498 323527498 73696576 85156000 395735440 395735440 329611370 379634010 379634010 373461440 131533360 58769680 209405200 209405200 179515856 179515856 106159000 107794688 107794688 113968984 307323320 307323320 312066672 312066672 302050704 583590276 583590276 545680586 877393035 877393035 483685396 483685396 731856146 842583450 842583450 717640657 347478858 910387154 910387154 815538383 1011999375 1011999375 1073278089 1073278089 831082216 847366424 1052788385 1052788385 403750421 445450422 445450422 282877760 348889352 348889352 962594074 962594074 797152088 797152088 464688464 512230530 512230530 247464156 207882636 710935848 710935848 992479234 992479234 671481856 671488005 671488005 221917448 73741568 73741568 476621973 720985539 779519537 779519537 776210073 776889113 776889113 574753425 169242676 716489472 716489472 606143464 265359380 695370328 695370328 731330160 731330160 195571012 175253412 175253412 38379668 182585392 182585392 137478416 121405204 137169708 412300614 412300614 362022520 362022520 158998452 265345876 265345876 395885720 395885720 422188326 422188326 164625636 164625636 475598328 642177177 705966943 783426077 902354747 902354747 933851128 933851128 593873003 422930426 746676599 910221492 910221492 1004242337 1004242337 283670263 960504532 960504532 807412736 423101846 511533406 511533406 441446364 414595978 414595978 510805760 510805760 372807324 170182932 170182932 179568496 179568496 177205072 177205072 87773874 87773874 79950024 79950024 270715242 362939306 362939306 371377160 371377160 304616850 268890514 273421314 273421314 273298562 341225090 341225090 681062080 832123497 832123497 759642285 759642285 297795810 361767704 361767704 107756680 1065120 571711748 719327509 736101749 736101749 794591420 963203456 963203456 742991117 637534660 518522641 558961155 558961155 512930506 512930506 829415640 829415640 784010476 197684432 197684432 378022576 378022576 326608866 55892746 1051231064 1051231064 351930372 455364192 455364192 66472536 848039968 952260706 952260706 938709333 920193680 920193680 1030337612 1030337612 403711397 950974536 950974536 903646874 130456870 68027936 68027936 439236950 439236950 90852864 139826032 170021008 170021008 54000432 558205201 933552188 956237073 956237073 361553915 464716396 1040389177 1040389177 1002383980 1002383980 863453567 863453567 929079725 1029228207 1029228207 840704922 915490521 1007373036 1007373036 382939866 340261200 283111842 314908010 314908010 487799412 487799412 286818736 284478402 284478402 487943738 487943738 407394786 407394786 299545826 299545826 207074540 379121746 379121746 371889496 371889496 370270400 382730970 382730970 374650816 376822546 376822546 280578744 193556800 193556800 53030004 178777136 193074224 193074224 143131716 156502692 182325172 1008353248 1008353248 892207168 942418496 942418496 1053936472 1053936472 946301868 739907950 723083376 776640428 776640428 176651461 139195524 68121732 68107272 13896384 13896384 76892192 76892192 70003524 145295780 223611564 223611564 209774828 209774828 72961700 54061584 193416020 193416020 170650960 170650960 53729760 56581840 56581840 118955528 118955528 101210520 133714776 133714776 125305272 57672688 130148304 256930912 256930912 69257496 237909544 237909544 60348184 110344816 110344816 69127216 69127216 57352320 57352320 27998144 58667248 58667248 42388640 46845376 46845376 32505920 495078849 785465559 785465559 707291765 711892437 1022741264 1022741264 961847734 659926781 847333937 935452774 935452774 79896776 79896776 11366528 11366528 108391832 108391832 36549120 111952200 112765056 343283986 343283986 103361546 351950536 353667496 353667496 274729810 332999040 332999040 688688673 688688673 993953143 993953143 908657165 588721201 588721201 540057612 926823777 926823777 592659578 1017432399 1017432399 960856236 960856236 783106217 881806772 881806772 325470662 325470662 298132800 174766408 174766408 119780456 119780456 49264008 474445953 747032719 747032719 675762305 614613444 940667023 963327823 970158955 970158955 834164416 834164416 550672227 15470016 342378434 342378434 881086215 881086215 941534484 1051267328 1051267328 227775586 227775586 46289104 328914810 677460932 677460932 622242921 705875996 705875996 583053377 681108097 681108097 630411445 630411445 602968700 789052101 789052101 970913844 970913844 843979923 843979923 931285690 931285690 660607500 675596301 675596301 417333702 142741890 2565446 411831366 411831366 480650575 779630429 779630429 712049474 876613763 876613763 348910794 615778776 762327212 762327212 256583083 212032530 687136912 860988615 1048777860 1048777860 419377262 992801861 992801861 966733538 966733538 435988163 284126466 284126466 872812971 872812971 637672229 715166212 715166212 134352900 492937194 492937194 453336322 453336322 593771575 593771575 567789260 567789260 539684167 1009191941 1009191941 676089101 899559105 1032801589 1032801589 642420912 827246321 827246321 557967858 450111916 450111916 335492896 625946386 625946386 614148425 613366857 225404536 261995516 261995516 239607960 638583301 638583301 168561172 242469266 409728402 409728402 1008029312 1008029312 961815840 961815840 921012804 921012804 1002107761 1002107761 840753691 590138673 577353698 649702240 649702240 579972912 483007150 88822094 57517160 63839280 63839280 49944528 109404536 109404536 49672144 32806824 542836580 581461924 582467856 582467856 573776741 112536408 732271228 1015193660 1015193660 604012674 596953713 596953713 713031765 713031765 571474053 759240727 1044854943 1044854943 839545437 800826513 161110088 91835832 91835832 157433288 157433288 6161856 44089680 54042704 725250037 725250037 564687920 564687920 685999477 739131964 894605393 945423512 1065488511 1065488511 584449411 461035446 839043696 839043696 725741506 725741506 524825852 524825852 424293748 148147552 158726980 158726980 160391488 160391488 807261539 839247891 839247891 810592912 437058900 543144480 961963601 961963601 315830994 315830994 565166402 839405669 950761848 950761848 404564648 971510656 971510656 956989135 713719992 713719992 563165527 335872532 411967610 411967610 794909362 869830579 869830579 763397313 749070570 669034602 669034602 509413258 1059729902 1059729902 771825693 987352424 987352424 212125155 71836160 294463970 295649186 295649186 287253056 350034464 350034464 508577038 508577038 518653586 518653586 250880114 532650102 532650102 501351386 430217858 430217858 290074592 945966384 945966384 957213735 957213735 451276051 415668485 950192515 950192515 804639053 603253671 1042436862 1042436862 439257916 562173425 764073069 903030530 903030530 757200805 757200805 629322916 629322916 260460578 999272046 999272046 1006485671 1006485671 972479463 903796882 903796882 867802688 311783462 356651178 356651178 880853067 906348014 906348014 649136450 1042335950 1042335950 599001969 468172791 733795971 733795971 97381472 697042496 697042496 689179173 799018496 799018496 632365153 692430112 692430112 499461378 499461378 272701252 283776450 1067528334 1067528334 935198930 657778013 672475309 672475309 657771321 772351005 772351005 763810372 763810372 135532544 101185560 101185560 42405912 184935176 255068988 603027893 603027893 259521468 539163368 713216085 713216085 114158808 227865536 227865536 557747337 710356772 710356772 233716714 1056454586 1056454586 686343621 619827625 392436816 584500651 584500651 545834049 953293666 990435887 990435887 727765929 727765929 739645329 739645329 864951411 864951411 504814110 504814110 1062472383 1062472383 616772713 616772713 495376494 417653729 365990505 810298509 929818027 929818027 839049236 201726172 939728900 939728900 239866460 1009850844 1009850844 513030156 491865924 478225312 816604488 816604488 336591882 336591882 409138636 409138636 495151874 495151874 17379460 203897100 360655772 388836666 452804634 452804634 208635402 50804784 130155344 130155344 216659772 216659772 785109456 785109456 237183900 704377264 704377264 551171540 551171540 623697151 920128714 920128714 899333835 1015600174 1015600174 1038112788 1038112788 877824521 877824521 595860251 448827394 518091079 518091079 440035078 440035078 808501312 808501312 377752008 377752008 291864252 490746316 490746316 285829888 319679538 470548482 470548482 487776040 487776040 505012356 505012356 411866976 319870228 319870228 174211634 180355335 853541331 853541331 719342035 201381141 477676804 477676804 578838545 939597904 939597904 663579702 109125720 888297032 888297032 989284379 989284379 335916032 935878856 935878856 529142910 529142910 580337268 580337268 570101426 417806710 438046230 829237698 829237698 983471323 983471323 899245291 889955579 864187459 171471884 171471884 137479960 201703192 261974896 261974896 254594364 45387340 148084588 148084588 473784940 473784940 230626248 302126304 327684372 327684372 208473384 208473384 164103396 345375296 345375296 509501762 515837404 515837404 443961936 482087552 482087552 385878496 385878496 337787930 344007496 382439562 676660301 929541986 929541986 169638403 638383934 638383934 850510988 850510988 962688139 962688139 735193872 735193872 716299189 472398118 427033242 756418593 756418593 496732288 496732288 285599210 418931118 418931118 142397312 260697036 260697036 154198452 21021476 223429804 223429804 201689644 201689644 99739616 215879552 215879552 153354760 917195341 917195341 926420044 926420044 985733407 985733407 527784382 797741189 797741189 979246569 979246569 322572158 891351062 979435951 979435951 896827779 700602658 461923432 508298422 508298422 270519296 270519296 147343942 362684352 362684352 397455336 397455336 362602450 26688096 64379664 64379664 56936880 56936880 40126592 40126592 23650432 83493264 93285872 93285872 15328704 110414624 111149432 111149432 60297208 61871172 198849060 400189088 522283832 522283832 470147356 352395306 429516390 462245235 673308933 673308933 352628727 993003019 993003019 824967959 692345265 894341195 1065484685 1065484685 755849245 755849245 738731041 573086776 323527498 323527498 109578624 332188624 332188624 296577746 319287632 379634010 379634010 373461440 18876416 19138848 45500896 45500896 179515856 179515856 48444244 107794688 107794688 113968984 372172824 372172824 231775923 576661140 939834917 962857383 962857383 233524713 233524713 646968472 646968472 171994004 865946676 865946676 399321121 240772764 367001322 367001322 278986954 713366786 984298839 984298839 1073278089 1073278089 831082216 831082216 1052788385 1052788385 855815189 559108833 559108833 282877760 342641959 752878029 752878029 881267881 881267881 995097783 995097783 464688464 305013170 342491557 342491557 710935848 710935848 992479234 992479234 625804187 622874656 622874656 829492741 829492741 749300453 809335693 864520694 864520694 811114625 811114625 776889113 776889113 365421262 365044248 716489472 716489472 606143464 265359380 695370328 695370328 731330160 731330160 195571012 175253412 175253412 38379668 182585392 182585392 137478416 163614800 163614800 135604740 2062852 84970560 352873128 366792426 366792426 102759960 395885720 471340240 517083870 517083870 988197916 988197916 1003228407 1003228407 820985283 1009589389 1009589389 805709633 805709633 25439336 75497544 427897290 427897290 375593312 553694497 1004242337 1004242337 552162416 960504532 960504532 840982547 438584437 182497140 42754672 162565428 279576602 369384792 370056090 493932698 493932698 357171382 170182932 179568496 302989664 302989664 295355750 270566212 179526500 193945860 193945860 270715242 362939306 362939306 371377160 371377160 304616850 268890514 273421314 273421314 273298562 341225090 341225090 79879424 832123497 832123497 350959746 299843298 297795810 361767704 361767704 107756680 215010215 384264911 1069009790 1070984831 1070984831 808408060 963203456 963203456 637534660 637534660 203948700 558961155 750662664 1045536410 1045536410 829415640 829415640 784010476 471649806 208892560 85229764 340901594 819906770 819906770 555913580 927894618 927894618 986125174 986125174 870737650 1051331438 1051331438 952260706 912376969 920193680 920193680 842480526 842480526 631277787 950974536 950974536 903646874 130456870 290009440 290009440 439236950 439236950 53492128 139826032 284439260 312551628 312551628 558205201 1003682504 1003682504 612324358 612324358 484651470 939726038 939726038 574700043 741489828 1004431714 1004431714 969473643 969473643 490277245 840704922 915490521 1007373036 1007373036 340261200 340261200 278856288 194341394 161665380 487799412 487799412 438323712 438323712 574899093 574899093 194495556 146516486 194836548 442309744 457302198 457302198 887920820 887920820 609557376 609557376 223673204 223673204 290074762 374650816 376822546 376822546 280578744 193556800 193556800 135567220 178777136 178777136 50449716 59903816 120462648 120462648 952740241 952740241 890314975 202281540 250861390 250861390 946301868 946301868 739907950 885084288 897795107 897795107 432365889 224969124 432745576 432745576 301084680 84351680 84351680 74142024 156747488 156747488 223611564 508143674 508143674 219472828 384837584 384837584 402662662 468787510 468787510 170650960 485570920 485570920 645220689 645220689 136365572 136365572 148034852 554622124 636799977 636799977 165583349 785916484 785916484 578922872 244132124 237909544 176988664 253075988 253075988 223724040 69127216 62395920 62395920 34345024 40815200 40815200 6854656 6854656 5406848 22157206 457835680 607005787 647420505 647420505 711892437 711892437 599853956 599853956 659926781 847333937 935452774 935452774 470768000 470768000 11366528 11366528 108391832 135963008 135963008 48829956 48523720 343283986 343283986 328941232 351950536 351950536 313243344 81491376 406928564 406928564 426710500 426710500 548934996 779256724 779256724 604164105 774013840 774013840 540057612 243352201 381698520 381731034 673194359 960856236 960856236 783106217 881806772 881806772 287884578 298132800 298132800 174766408 174766408 119780456 119780456 84594920 377561178 510024138 510024138 417165892 333143708 333143708 963327823 963327823 956375079 834164416 834164416 637643158 637643158 631674265 25769161 881086215 1007196427 1007196427 1051267328 1051267328 204481536 204481536 3813888 3813888 677460932 677460932 760283744 760283744 551036030 551036030 43041969 173096992 674330512 674330512 574849178 807415056 807415056 839724051 839724051 752359704 752359704 931285690 931285690 660607500 660607500 417333702 417333702 407901696 407508102 511731832 511731832 245179954 404626118 404626118 159195392 212336120 212336120 457984998 615778776 771714765 824017891 824017891 822083619 1011775997 1011775997 635817889 965654749 965654749 568294945 823834178 823834178 631890600 631890600 553125825 29175648 70575208 70575208 23069088 23069088 2097312 53233792 492937194 492937194 453336322 453336322 593771575 593771575 567789260 973611628 973611628 1009191941 1009191941 676089101 899559105 1032801589 1032801589 642420912 827246321 827246321 557967858 607405340 784119068 784119068 594302994 594302994 545301096 230555756 225404536 261995516 261995516 638233126 638583301 638583301 855916979 855916979 409728402 409728402 1008029312 1008029312 689046722 689046722 904793380 904793380 1002107761 1002107761 840753691 590138673 108285496 649702240 649702240 579972912 79391104 79391104 57517160 63839280 63839280 49944528 42229760 42229760 17900064 27276128 542836580 581461924 582467856 582467856 573776741 530506782 732271228 1015193660 1015193660 604012674 596953713 596953713 173015700 571474053 571474053 490575580 1044854943 1044854943 839545437 800826513 637835560 637835560 486392628 486392628 826133637 826133637 461024828 396492820 725250037 725250037 564687920 564687920 693695891 693695891 1020363155 1020363155 1065488511 1065488511 513820311 461035446 839043696 839043696 725741506 994062427 994062427 913747951 847363748 432900532 432900532 158726980 151517220 147307234 404626950 437261686 548548257 548548257 451268978 543144480 961963601 961963601 315830994 315830994 565166402 839405669 950761848 950761848 582281191 1071681975 1071681975 666505478 713719992 713719992 942556162 942556162 428386699 411967610 794909362 869830579 869830579 328289838 488415858 488415858 285531453 646832749 646832749 965786775 1000751967 1021984368 1021984368 675913740 675913740 279472010 338247040 338247040 276442632 287260330 287260330 88881162 343365128 343365128 268748802 140239282 204941952 386095542 386095542 430217858 856038016 856038016 945966384 1055838858 1055838858 601360113 451691680 328012576 191989094 655135062 655135062 599421993 585250485 306377169 439257916 953834018 953834018 903030530 903030530 662835321 556152936 1059440717 1059440717 861671558 861671558 42207312 42207312 544076722 544076722 536077718 536077718 416428912 311783462 311783462 277088322 176283732 176283732 299880578 344191050 455084615 599001969 599001969 468172791 733795971 733795971 84224672 697042496 697042496 689179173 799018496 799018496 632365153 692430112 692430112 928102131 928102131 705585236 705814132 731447404 935198930 935198930 826354899 826354899 672475309 491797114 717484982 717484982 704748476 704748476 126186364 184758324 184758324 50595888 596200221 596200221 790128845 790128845 259521468 539163368 713216085 713216085 59822469 227865536 683672036 683672036 710356772 710356772 220754744 422773522 521682974 619827625 619827625 391137577 584500651 584500651 545834049 953293666 990435887 990435887 727765929 727765929 739645329 739645329 896531883 1059159227 1059159227 1023483951 1062472383 1062472383 478595310 854108687 854108687 529844862 529844862 810298509 929818027 929818027 839049236 542197336 939728900 939728900 349601998 1009850844 1009850844 740426512 491865924 330835390 671318164 861742232 861742232 995792612 995792612 953153122 478939820 478939820 402668858 402668858 360655772 388836666 526876850 526876850 208635402 89338536 526262786 526262786 470849540 343983710 477661044 477661044 179516244 283423558 283423558 279089026 279089026 210096656 319292538 726271510 726271510 1015600174 1015600174 907543669 638194334 638194334 1049121674 1049121674 519970782 519970782 477875226 405349388 304620110 304620110 578297545 640258161 917568746 917568746 490746316 490746316 287267856 473072910 473072910 470548482 487776040 487776040 461509924 461509924 411866976 319870228 319870228 174211634 51381170 30540480 182583760 182583760 470943620 470943620 520803204 571027728 571027728 1061538276 1061538276 990130361 990130361 1030571427 1030571427 715901114 335916032 336118794 361272350 529142910 529142910 683613169 683613169 870130976 870130976 788122506 788122506 384381770 983471323 983471323 899245291 889955579 827406344 513358664 264036704 264036704 201703192 261974896 261974896 254594364 205281344 205281344 148084588 473784940 473784940 474489096 474489096 346035406 327684372 245694968 245694968 420675914 420675914 345375296 411850816 411850816 403362822 249277568 504455236 504455236 385878496 398800014 398800014 379748960 382439562 531453778 531453778 134848516 101042324 23469712 57548208 801995996 801995996 336667146 336667146 353904672 353904672 472398118 472398118 408815148 431551714 495124366 496732288 496732288 285599210 418931118 418931118 36965136 74451736 74451736 183501344 193987188 223429804 223429804 201689644 201689644 99739616 99739616 70928072 30216960 319823396 447096172 447096172 466959926 985733407 985733407 527784382 797741189 797741189 234372356 254292530 322572158 691559911 691559911 376293192 605166491 605166491 286971426 354019356 354019356 157054340 157054340 274046984 274046984 210051922 210051922 369598464 369598464 65266234 109718608 109718608 62432160 62432160 38814336 38814336 18458784 83493264 93285872 93285872 15328704 99644144 99644144 72633000 80036032 80036032 50208720 253914320 253914320 233831916 41208720 191405904 195170676 462245235 673308933 673308933 352628727 993003019 993003019 824967959 692345265 894341195 1065484685 1065484685 755849245 755849245 738731041 573086776 43910720 109578624 109578624 332188624 332188624 296577746 319287632 319287632 110051960 123538960 123538960 57414480 45500896 45500896 41343888 37417864 105959576 105959576 112378520 119544680 876848609 876848609 703564128 703564128 939834917 962857383 962857383 384953667 753082186 795229201 795229201 991430199 991430199 910242135 910242135 240772764 367001322 367001322 368321010 713366786 984298839 984298839 611214790 817483469 817483469 614221910 445195350 855815189 855815189 559108833 686547169 686547169 342641959 752878029 752878029 988638628 988638628 995097783 995097783 305013170 305013170 342491557 415941966 564691420 564691420 557860149 470336526 271073548 768501957 768501957 829492741 829492741 749300453 809335693 864520694 864520694 811114625 811114625 196425829 365421262 365421262 365044248 365044248 119611704 119611704 71641224 84263776 84263776 81216232 94642520 115419328 125852616 125852616 116629808 50860704 54414640 103455888 187490732 225290516 521774394 521774394 345032440 352873128 366792426 366792426 189437108 189437108 473867600 517083870 517083870 988197916 988197916 1003228407 1003228407 820985283 1009589389 1009589389 805709633 805709633 809237972 849674883 849674883 967885671 967885671 806546449 808661763 808661763 552162416 833180688 840982547 840982547 438584437 182497140 61620688 162565428 279576602 369384792 370056090 493932698 493932698 357171382 55866546 177421904 302989664 302989664 672821344 672821344 554864692 193945860 674666788 725571845 725571845 182740176 182740176 152891536 584478992 584478992 549788368 14783104 14783104 74108544 74108544 79879424 79879424 72215688 14280384 23152320 23152320 39846064 39846064 39710352 630286634 817154883 1069009790 1070984831 1070984831 1039110760 744646049 864609292 864609292 554247201 554247201 771416095 984028214 1045536410 1045536410 640683676 829028644 829028644 882201753 882201753 181473274 340901594 819906770 819906770 555913580 927894618 927894618 986125174 986125174 870737650 1051331438 1051331438 912376969 912376969 731069010 731069010 447097337 587257212 631277787 631277787 477634449 21759136 21823872 290009440 290009440 420885128 420885128 117633576 117633576 284439260 312551628 312551628 37075376 1003682504 1003682504 866396236 866396236 484651470 939726038 939726038 795292472 741489828 1004431714 1004431714 969473643 969473643 848360018 537079809 311673427 321002864 321002864 163003236 278856288 278856288 320067726 320067726 825526407 942688151 942688151 899957791 899957791 574899093 194495556 730891968 730891968 726189237 457302198 457302198 887920820 887920820 609557376 609557376 240488976 223673204 239508224 239508224 124865328 100116544 84312360 246358024 246358024 305816098 305816098 194242320 169981716 169981716 422659172 447398934 952740241 952740241 679022475 463915458 418349314 968732234 968732234 742919814 742919814 885084288 897795107 897795107 761280517 229051560 675945480 675945480 633340137 632295552 632295552 122951760 156747488 212085096 222045508 508143674 508143674 219472828 384837584 384837584 402662662 468787510 468787510 152314336 485570920 485570920 645220689 645220689 136365572 136365572 148034852 554622124 636799977 636799977 165583349 785916484 785916484 578922872 244132124 252271652 252271652 253075988 253075988 223724040 52999408 62395920 62395920 52315072 40815200 40815200 11667840 14831296 16138304 22157206 457835680 457835680 127277688 127277688 301602786 301602786 341508490 341508490 274793544 67633544 786957626 786957626 470768000 470768000 82940172 174252224 180635860 180635860 135963008 48829956 45794560 13500960 328941232 328941232 54527760 53158416 53158416 37818496 406928564 406928564 184580612 184580612 65784736 779256724 779256724 604164105 774013840 774013840 672369364 1045480095 1045480095 1021624733 240413407 738246669 738246669 526499999 446791742 446791742 333896180 333896180 304504956 46178304 113311936 113311936 75755592 84594920 84594920 80746248 417165892 417165892 333143708 333143708 904046940 956375079 956375079 830087283 708985783 637643158 637643158 820719458 820719458 761158529 1007196427 1007196427 915478016 915478016 68687104 47920848 47920848 35783274 282057810 353969706 760283744 760283744 551036030 572047360 643372940 778233497 778233497 951495500 951495500 817277767 807415056 839724051 839724051 752359704 796896693 852684552 852684552 413655878 471095844 744962445 744962445 407901696 1003591232 1003591232 882451581 874021104 874021104 404626118 69392186 212336120 212336120 457984998 457984998 771714765 824017891 824017891 822083619 1011775997 1011775997 635817889 965654749 965654749 822666979 837506914 837506914 631890600 896607147 896607147 649143129 913421075 913421075 795079629 795079629 640922092 229272248 208439040 314526724 314526724 554827776 554827776 1028468280 1028468280 973611628 973611628 655957631 369849616 369849616 302512146 68332058 122912978 382362202 382362202 365429994 394136592 607405340 784119068 784119068 594302994 594302994 545301096 230555756 169659924 169659924 294601728 638233126 638233126 553912478 855916979 855916979 304381997 243195804 553798928 553798928 739501260 952890567 952890567 478311657 132301208 201939584 207617676 207617676 22094496 292569632 292569632 311825614 311825614 304492524 461848310 525607614 525607614 528862358 528862358 210846938 325452204 325452204 271709660 50944128 50944128 5692032 167776582 530506782 530506782 563727912 563727912 884686082 884686082 583008465 854664147 854664147 363176091 490575580 490575580 327181104 327181104 219667052 637835560 637835560 486392628 486392628 826133637 826133637 461024828 396492820 396492820 368566250 368566250 157869828 693695891 693695891 1020363155 1020363155 534552705 444934230 429916518 429916518 326181588 185071668 863248228 994062427 994062427 913747951 847363748 432900532 432900532 172964704 144849364 147307234 404626950 437261686 437261686 159369764 451268978 451268978 445447552 445447552 270257778 315121300 376536856 376536856 525938415 579078225 582281191 1071681975 1071681975 604733606 205182732 138012420 942556162 942556162 935403664 935403664 897581163 1061596610 1061596610 671416564 671416564 487811108 285531453 646832749 646832749 965786775 1000751967 1021984368 1021984368 675913740 675913740 352019650 352019650 683751175 683751175 366438788 554171239 554171239 505347380 595843269 804184421 1038110858 1038110858 386095542 386095542 360024848 856038016 1045955956 1045955956 1055838858 1055838858 790646230 451691680 432505699 687065473 967012518 967012518 599421993 585250485 306377169 102385140 953834018 953834018 822220096 833095011 916549977 916549977 1059440717 1059440717 861671558 861671558 815289922 840301691 840301691 1026161683 1026161683 289830540 289830540 207329442 51380784 148406964 148406964 139493616 269656648 344191050 344191050 298188928 336281162 396579598 396579598 61112996 84224672 84224672 50399020 119011896 196801724 196801724 218971148 218971148 1018744854 1018744854 928102131 892797646 705814132 731447404 731447404 636364002 923816098 923816098 530890937 382183694 717484982 717484982 142834688 200083464 200083464 184758324 184758324 50595888 596200221 596200221 790128845 790128845 542112640 542112640 194669169 19847232 28237152 87657824 683672036 683672036 228431625 228431625 681267117 681267117 521682974 688018248 688018248 358923856 358923856 711954308 711954308 776249123 776249123 553816608 672186372 672186372 192964680 276848978 896531883 1059159227 1059159227 1023483951 956366856 149483214 343354154 854108687 854108687 529844862 529844862 470235150 470235150 135402508 336196108 542197336 542197336 637799004 680526405 850336205 920200923 920200923 886941642 458870606 671318164 861742232 958479706 995792612 995792612 953153122 793264436 889257356 959359399 959359399 771538259 771538259 839465112 839465112 787168429 622342299 526262786 526262786 642303129 937051711 937051711 718831762 718831762 564560681 283423558 628360132 628360132 251724702 946081001 946081001 682893956 750587648 750587648 33557360 33949712 33949712 1049121674 1049121674 519970782 519970782 477875226 405349388 911545467 911545467 578297545 640258161 917568746 917568746 436586900 457722484 457722484 473072910 473072910 343328076 288771844 288771844 461509924 461509924 176691568 61645840 428717344 462421110 462421110 764811849 764811849 680919873 470943620 470943620 520803204 520803204 555904371 1061538276 1061538276 990130361 990130361 1030571427 1030571427 715901114 939175114 939175114 636301514 636301514 515301596 683613169 683613169 870130976 870130976 788122506 788122506 384381770 384381770 50422576 50422576 86193186 513358664 513358664 264036704 264036704 76914752 76914752 70304520 3943168 205281344 205281344 70568712 345722792 345722792 474489096 474489096 455807494 455807494 320669984 320669984 487791072 487791072 477370338 477370338 435556574 390205626 403629108 504455236 504455236 382157470 398800014 398800014 379748960 379748960 261824790 204257056 940158083 940158083 576169472 680076357 974766674 974766674 951446343 951446343 1039867904 1039867904 544279599 506927521 409152052 743442465 743442465 11019136 45155872 54526128 262722572 262722572 180314544 197782300 197782300 225460608 225460608 193987188 148752512 144254532 96734408 96734408 85795872 54854960 58852144 58852144 56760960 12388416 27101024 137380690 449626198 449626198 442552214 300950228 138546896 138546896 122752048 122752048 18164256 18164256 268960256 286807554 286971426 286971426 88653824 337457160 337457160 274046984 274046984 98837072 98837072 369598464 369598464 382010704 382010704 109718608 88608448 62432160 38814336 96249616 96249616 77137096 1500192 1912320 3496960 67403808 84240424 84240424 80036032 80036032 149947332 253914320 253914320 233831916 180620716 191405904 257519168 439356192 439356192 441151694 441151694 373188414 373188414 363408792 358331732 358331732 457888780 524337342 524337342 304176296 202063104 50403408 113314584 113314584 56112432 92966248 103717544 317173672 317173672 285101706 252327076 252327076 172118224 172118224 188261940 236979836 236979836 176183636 105959576 136707408 172888656 172888656 876848609 876848609 703564128 703564128 688003220 688003220 570886449 384953667 753082186 795229201 795229201 991430199 991430199 910242135 910242135 233122284 476709140 476709140 440927382 975798786 975798786 941744391 577831111 377602625 381281452 381281452 427918298 539150644 725898532 725898532 686547169 686547169 258369629 896620552 896620552 988638628 988638628 173713472 847255046 847255046 699585381 699585381 415941966 470336526 470336526 470336526 470336526 271073548 768501957 768501957 736898244 943887220 1072743423 1072743423 586204149 364032013 255926460 881134901 881134901 1017068097 1017068097 832384611 559623325 621764780 621764780 788652668 788652668 730073376 186910856 83953728 75497544 125852616 125852616 116629808 90625968 133830648 133830648 187490732 225290516 521774394 521774394 345032440 345032440 342254978 273602638 189437108 397285120 473867600 473867600 491223724 491223724 121703544 724506876 755400847 912310683 912310683 371212417 195639084 195639084 809237972 849674883 849674883 967885671 967885671 843570064 909251355 909251355 374610096 543340672 544428673 644810033 644810033 61620688 61620688 42241840 37038864 338912840 338912840 173759680 181015764 181015764 167821332 167821332 16404 19923744 716326916 716326916 554864692 59319408 674666788 725571845 725571845 192464820 192464820 65731524 584478992 584478992 549788368 7413760 7413760 5376128 74361864 74361864 89233512 89233512 27000928 95300416 95300416 75706440 89223584 89223584 630286634 817154883 817154883 280944450 1039110760 1039110760 744646049 864609292 864609292 554247201 554247201 771416095 984028214 984028214 595931310 640683676 829028644 829028644 882201753 882201753 181473274 145826312 63638800 548937280 548937280 547875232 547875232 613008136 613008136 630203915 635910633 635910633 384198554 240907932 425522844 483104306 955955162 955955162 977314082 977314082 269081001 369445092 369445092 252381678 157224224 420885128 420885128 117633576 117633576 153230144 179407972 200257364 200257364 35243776 2306304 866396236 866396236 264806904 32056800 795292472 795292472 676596357 129446653 841010842 1024463103 1024463103 848360018 537079809 681349341 977673382 977673382 454803392 454803392 378385054 320067726 421635062 825526407 942688151 942688151 899957791 899957791 346611550 460401486 730891968 730891968 852522594 852522594 592180401 372275720 372275720 521264104 521264104 449903612 203796748 203796748 138553752 70687552 70687552 82231848 246358024 268496896 305816098 305816098 194242320 169981716 169981716 422659172 447398934 447398934 405127442 463915458 463915458 821633347 968732234 968732234 742919814 742919814 269000779 16777248 761280517 761280517 229051560 675945480 675945480 633340137 632295552 632295552 122951760 242371924 571431121 571431121 550262390 902981831 935538939 1016238707 1016238707 952365255 990978389 990978389 910279813 821578366 46989712 46989712 39857360 661504 515072 709632 2099232 19138848 19138848 19136800 117606472 301133890 301133890 208716028 252271652 470356900 470356900 459547968 96096688 96096688 58248880 58248880 52315072 32115120 8031488 11667840 14831296 16138304 16138304 249501353 722857053 734788445 734788445 778166685 778166685 659067292 659067292 707462649 776505177 776505177 238195405 238195405 211919680 149328064 174252224 180635860 180635860 144892560 243466392 243466392 308954866 308954866 292082866 54527760 310432210 310432210 281020256 307442832 307442832 280498688 292684289 837289443 837289443 872204280 872204280 611715179 880803915 880803915 1045480095 1045480095 1024516667 1024516667 738246669 738246669 577536264 606112908 606112908 333896180 333896180 304504956 201753600 201753600 82047432 203509956 203509956 272151114 272151114 275525760 275525760 2622720 404200791 404200791 134999604 221423106 921207196 921207196 547492161 547492161 820719458 820719458 761158529 278770127 134426628 270608722 270608722 174651792 174651792 47920848 69969544 282057810 951901309 951901309 825153570 752487255 752487255 689506994 930350769 930350769 951495500 951495500 817277767 978106190 978106190 239608139 766431571 796896693 852684552 852684552 413655878 927049978 929206825 929206825 873008259 1003591232 1003591232 882451581 874021104 874021104 33818672 33818672 222128448 222128448 97349928 232589764 232589764 149171948 149171948 415453556 494068268 494068268 256872594 354555188 354555188 822666979 837506914 837506914 744903041 896607147 896607147 708133481 913421075 913421075 795079629 795079629 640922092 229272248 259878392 833381760 986186967 986186967 805637639 1028468280 1028468280 657271593 657271593 596388692 596388692 684852445 684852445 170530068 187884800 622973592 622973592 910201832 910201832 394136592 384320904 389866368 389866368 343418754 72012936 71447313 952316637 952316637 877802123 453584497 814224565 868223099 868223099 360972530 360972530 281297533 799571296 799571296 739501260 952890567 952890567 985878975 985878975 790641905 790641905 390937827 495274606 581706314 727894268 727894268 405805970 304492524 461848310 525607614 525607614 528862358 528862358 210846938 325452204 325452204 271709660 64727216 64727216 5692032 52240000 118090800 506259206 723258112 723258112 884686082 884686082 732380952 854664147 854664147 625311752 641031521 641031521 13575041 19009824 36637760 36637760 42554416 51029072 51029072 33603600 33603600 33603600 33587200 63146778 368566250 368566250 99565552 48475904 62865264 723486572 723486572 534552705 444934230 967984103 995412800 995412800 185071668 863248228 863248228 328356208 828255585 843010003 843010003 570801232 717716929 717716929 714476981 676481524 790469980 790469980 738834540 794157288 794157288 445447552 445447552 289316496 289316496 376536856 398596666 398596666 387322106 217000390 951071768 951071768 205182732 205182732 138012420 138012420 545342464 935403664 935403664 897581163 1061596610 1061596610 828116199 828116199 361172505 236533918 135307332 170508820 977063364 977063364 610626076 610626076 136163269 476448962 476448962 352019650 683751175 683751175 366438788 554171239 680501648 680501648 595843269 804184421 1038110858 1038110858 603842856 603842856 255164790 255164790 1045955956 1045955956 615649255 790646230 790646230 119181661 432505699 687065473 967012518 967012518 219276946 786512381 786512381 241342654 371382849 568014561 822220096 833095011 916549977 953681278 953681278 904081899 904081899 894255548 815289922 840301691 840301691 1026161683 1026161683 874647819 969472313 969472313 692379176 692379176 526429128 139493616 139493616 268657664 268657664 348168608 348168608 396579598 396579598 367559040 367559040 86254600 98810884 216986328 216986328 155730016 210396184 246216392 1018744854 1018744854 892797646 892797646 527910911 206411950 206411950 899159200 923816098 923816098 530890937 897269600 897269600 737689914 728641268 728641268 200083464 213057780 213057780 803980420 803980420 156786025 20046748 225637012 542112640 542112640 802880093 802880093 133717733 223057896 745491396 745491396 701949029 604041580 681267117 681267117 546022213 688018248 688018248 313628290 1073418032 1073418032 711954308 443379591 325529274 2672896 539264260 539264260 370117604 511105950 511105950 203718780 459733680 459733680 327561422 610441330 753525101 753525101 302779410 302779410 469882880 470235150 470235150 411776070 411776070 235118202 60242544 821309490 821309490 850336205 920200923 920200923 886941642 458870606 367902957 809876768 958479706 958479706 922840373 922840373 793264436 889257356 959359399 959359399 771538259 771538259 839465112 839465112 787168429 622342299 414844371 414844371 642303129 937051711 937051711 718831762 718831762 564560681 269506699 628360132 628360132 251724702 946081001 946081001 682893956 1065168048 1065168048 901980545 763810062 774035575 774035575 637796372 738461709 738461709 204776723 204776723 911545467 911545467 218836434 9189440 35877908 136573188 436586900 457722484 457722484 398335992 412537344 412537344 411306054 671663109 671663109 572657671 589883683 589883683 956693628 956693628 708536321 764811849 764811849 680919873 402653896 419610788 419610788 351056092 555904371 983514743 983514743 1053403081 1053403081 885328050 601268850 601268850 939175114 939175114 636301514 688354390 864865395 864913523 864913523 864364659 188559156 1024321450 1024321450 472828426 472828426 50422576 50422576 50438928 233906240 233906240 170354976 171757332 171757332 168068864 83921952 83921952 151640064 151640064 151020580 345722792 345722792 481039900 515641182 515641182 455807494 320669984 320669984 487791072 487791072 477370338 477370338 435556574 390205626 450411860 497945366 524587706 524587706 521194802 521194802 271562656 271562656 254643544 353917480 940158083 940158083 576169472 680076357 974766674 974766674 951446343 951446343 1039867904 1039867904 544279599 506927521 409152052 743442465 743442465 515165022 164158694 475343502 475343502 359091598 359091598 290767482 290767482 265554442 252726072 200114676 362594652 504160468 504160468 229125356 229125356 203694176 306449522 521175252 521175252 364407392 364407392 744024179 744024179 463564438 847531013 847531013 75701372 156038358 307042902 562416667 562416667 374934632 877447343 877447343 437433354 470545426 470545426 429207998 429207998 501354990 501354990 140207362 252680346 427748110 427748110 382010704 382010704 379061850 488571228 488571228 167117728 165183200 165183200 77137096 26817384 26817384 81809984 81809984 362618474 362618474 337066538 268968162 284085154 284085154 274700388 343795736 389394424 415552292 415552292 530180944 530180944 507375390 441151694 470502442 470502442 71476398 169894032 169894032 52513936 53267760 53267760 51286272 55295056 55295056 113314584 113314584 56112432 92966248 103717544 317173672 317173672 285101706 252327076 252327076 172118224 172118224 188261940 236979836 236979836 176183636 41376272 136707408 172888656 172888656 373835112 373835112 594438452 594438452 688003220 688003220 684864012 684864012 616636617 366751981 412549619 412549619 653860974 999858336 999858336 987358935 476709140 476709140 440927382 975798786 975798786 941744391 577831111 377602625 381281452 381281452 755537565 755537565 725898532 725898532 556445985 407339236 437821458 896620552 896620552 803691451 34071029 454266082 847255046 847255046 699585381 959484547 959484547 871514518 592445808 592445808 228660612 228660612 209826112 209826112 212033612 943887220 1072743423 1072743423 586204149 364032013 473889212 881134901 881134901 1017068097 1017068097 832384611 559623325 621764780 621764780 788652668 788652668 730073376 186910856 83953728 75497544 55888560 96561176 96561176 90625968 133830648 133830648 137358968 137358968 187795520 187795520 97813864 206065160 206065160 88345432 102777112 397285120 397285120 370805370 400996884 400996884 63913200 724506876 755400847 954765727 994726261 994726261 204663572 602261749 636348140 636348140 850249171 850249171 635890161 843570064 909251355 909251355 374610096 374610096 89379456 644810033 866714643 866714643 934028648 934028648 153232488 211439872 280094408 280094408 520204578 520204578 167821332 550147317 964873857 976202818 976202818 716326916 134516853 579472944 579472944 194586228 194586228 192464820 192464820 178645332 178645332 177497152 9151424 9330688 9330688 6546304 74361864 74361864 196816996 196816996 27000928 143946084 143946084 176492760 205994124 247631948 100796485 780539997 780539997 245827933 243607644 773891708 773891708 472679690 749226122 749226122 348916938 882431502 882431502 882427467 815663784 915046941 915046941 351347658 354427616 354427616 31130032 31130032 78910056 548937280 548937280 547875232 547875232 613008136 613008136 541662568 635910633 871002624 871002624 1021036470 1021036470 863682982 955955162 955955162 977314082 977314082 513575488 513575488 369445092 252381678 157224224 402790050 402790050 6922240 138262960 153230144 179407972 200257364 200257364 12243380 2306304 29573380 264806904 264806904 32056800 388110756 1023892642 1038922699 1038922699 1036390628 1024463103 1024463103 851956826 659589368 681349341 977673382 977673382 454803392 454803392 378385054 175489492 421635062 421635062 416860308 969934580 969934580 570738705 346611550 460401486 460401486 315002581 852522594 852522594 677675825 837964096 837964096 805619715 626430725 647114817 789590412 789590412 196223420 266732144 266732144 8831616 14031552 268496896 268496896 42256464 277094464 277094464 16777248 268673504 300077538 940287457 940287457 434295270 155787458 821633347 821633347 548444684 949793888 949793888 1028653743 1028653743 1025089132 1025089132 201339139 92405920 79827144 90181984 96508640 96508640 249075260 249075260 571431121 571431121 752667884 902981831 935538939 1016238707 1016238707 952365255 990978389 990978389 910279813 821578366 505228350 645770577 645770577 136941828 136941828 412796516 412796516 632065516 632065516 585925078 497599854 394448885 301133890 208716028 1064703420 1064703420 739967991 601237444 549121025 96096688 589321777 589321777 19399104 19399104 20582912 549720129 549720129 14192480 538217097 538217097 722857053 734788445 734788445 778166685 778166685 659067292 659067292 707462649 776505177 776505177 238195405 238195405 165896228 149328064 136628484 111094860 102342428 144892560 243466392 243466392 308954866 308954866 292082866 34846098 310432210 310432210 281020256 284301058 284301058 280498688 324200306 837289443 867433856 872204280 872204280 611715179 880803915 880803915 395975739 907020824 1024516667 1024516667 1065461978 1065461978 577536264 606112908 606112908 474048516 474048516 403040262 201753600 201753600 82047432 203509956 203509956 272151114 272151114 268435458 268435456 182359964 404200791 404200791 876061058 876061058 921207196 1034031170 1034031170 747536892 747536892 900566279 900566279 881851467 876368459 839016152 839016152 352231370 340128714 340128714 69969544 945592798 951901309 951901309 825153570 821307024 821307024 689506994 930350769 930350769 661873150 820224401 820224401 978106190 978106190 239608139 766431571 766431571 650347656 650347656 78311720 927049978 929206825 929206825 873008259 550073923 303752737 248580240 239973104 497458978 497458978 491034954 577244437 577244437 489458534 762103941 762103941 165948192 165948192 415453556 870650122 870650122 663299193 439987475 728767246 913276440 913276440 600146256 744903041 770814105 770814105 708133481 677380485 201720224 263579916 263579916 196938688 196938688 259878392 833381760 986186967 986186967 805637639 862719780 862719780 657271593 657271593 596388692 596388692 684852445 684852445 170530068 894488618 894488618 622973592 910201832 910201832 296260258 362811904 362811904 343418754 343418754 47841938 71447313 952316637 952316637 877802123 453584497 814224565 868223099 957367143 957367143 360972530 340530401 924606724 924606724 909893713 668208616 236189576 985878975 985878975 790641905 805574746 805574746 742398098 581706314 727894268 727894268 405805970 326653156 164267954 100535304 67903464 67903464 18664992 17596928 54152464 113515072 113515072 64727216 642568424 642568424 98068168 232484612 232484612 723258112 723258112 27601248 187030645 732380952 732380952 249893640 625311752 641031521 693654725 693654725 177620100 177620100 641384712 641384712 371733393 306839832 865924757 865924757 466292332 370258016 908260473 908260473 364455786 705661751 705661751 941805831 941805831 694085379 550274593 777637441 967984103 1044973989 1044973989 624402292 729615182 729615182 493044496 828255585 843010003 843010003 747719093 717716929 717716929 714476981 676481524 790469980 790469980 738834540 794157288 794157288 275446032 275446032 307630608 307630608 63449138 398596666 398596666 387322106 3745536 951071768 951071768 328803954 897311866 897311866 543888803 807064785 810025072 810025072 1027735580 1027735580 859967667 841487931 828116199 533990107 451937892 594478759 594478759 1006744993 1006744993 806921743 610626076 897582694 897582694 476448962 9930602 33245698 136364292 136364292 408961448 680501648 685359936 694089233 694089233 823258275 823258275 603842856 603842856 268443984 877250240 881926731 881926731 615649255 463944054 463944054 378221658 378221658 478601738 924707249 924707249 219276946 786512381 786512381 241342654 371382849 568014561 568014561 363079232 772987033 953681278 953681278 904081899 904081899 894255548 621583414 1023517368 1023517368 914411856 914411856 874647819 969472313 969472313 692379176 692379176 526429128 432225988 261562586 81043146 81043146 348168608 348168608 338253130 338253130 367559040 367559040 183511348 183511348 253505960 253505960 155730016 210396184 246216392 550473612 648018952 698415232 698415232 789080314 789080314 481945422 899159200 910050000 910050000 582610642 1022938328 1022938328 737689914 728641268 728641268 89442984 213057780 213057780 803980420 803980420 700444169 629343329 629343329 682049092 684042248 802880093 802880093 133717733 223057896 745491396 745491396 701949029 604041580 679206921 679206921 740055305 740055305 721793796 678368265 1073418032 1073418032 340346701 325529274 373608994 1025654971 1025654971 570560663 805437456 805437456 511105950 260885628 260885628 306199488 327561422 610441330 753525101 753525101 926781219 926781219 996103830 996103830 271568172 411776070 851444243 882377410 882377410 923009112 923009112 172939280 671578134 671578134 244032962 214431948 214431948 204226816 404883848 474355854 474355854 471990408 203555240 203555240 153092388 568014212 568014212 282592994 16777376 488249102 488249102 349317004 185385280 185385280 302039058 302039058 575541192 575541192 340167502 340167502 225064196 485235778 485235778 125494352 129464598 631944138 631944138 1065168048 1065168048 901980545 763810062 774035575 839211010 848049220 943902858 943902858 818854467 818854467 548613456 302380779 545375331 594149723 594149723 541274532 21116068 529568246 529568246 302138436 412537344 412537344 411306054 671663109 671663109 572657671 589883683 589883683 956693628 956693628 708536321 708536321 657711901 637637396 353872398 136609944 269550506 351056092 433710219 983514743 983514743 1053403081 1053403081 885328050 601268850 1044767796 1044767796 192997020 269238288 688354390 864865395 864913523 864913523 864364659 228808819 1024321450 1024321450 472828426 772868653 772868653 326682546 830209665 830209665 233906240 170354976 171757332 171757332 168068864 83921952 101017608 101017608 151020580 151020580 364403712 364403712 481039900 515641182 515641182 367276430 288148770 211602240 211602240 146538308 143531076 335222668 431622289 1012830459 1012830459 643627849 628575768 524587706 521194802 521194802 237235078 316838996 724845761 724845761 438698022 951979013 951979013 311178768 459761362 459761362 342083504 141157764 85201248 85201248 345430222 365975860 372245274 372245274 515165022 515165022 164158694 530059660 530059660 484631762 918929603 918929603 897869981 265554442 596435027 596435027 864586858 885342477 885342477 804577885 789986113 789986113 780077616 521175252 521175252 364407392 364407392 744024179 744024179 463564438 847531013 847531013 508006536 508006536 456856864 562416667 562416667 526614462 877447343 877447343 472068366 470545426 470545426 429207998 429207998 501354990 501354990 140207362 252680346 427748110 427748110 308754834 379061850 379061850 488571228 488571228 167117728 165183200 165183200 30975616 76141920 76141920 81809984 81809984 362618474 362618474 337066538 317894024 531328034 531328034 274700388 343795736 389394424 415552292 415552292 530180944 530180944 507375390 517670701 665272163 828742467 1050637790 1050637790 528903978 861275514 992925882 992925882 606622141 893944252 893944252 281029002 122494330 45427536 370248170 370248170 339172602 339172602 450994250 450994250 298336548 20971680 656605437 656605437 206394788 711315289 711315289 29986048 30641728 79184264 590795224 590795224 958357050 958357050 722302997 566306888 566306888 914366827 914366827 616636617 366751981 602666481 602666481 508216789 999858336 999858336 987358935 961054924 153802020 153802020 891355409 891355409 672703238 270218842 841354162 1047037514 1047037514 755537565 755537565 98903596 556445985 556445985 823707171 823707171 454430227 684014274 684014274 440846517 553961505 553961505 170873712 0 959484547 959484547 871514518 814021444 814021444 362359404 362359404 901894251 901894251 1052350318 1052350318 801652857 801652857 711036003 711036003 473889212 493102616 493102616 419824672 419824672 72420362 257374908 257374908 52309660 67961632 67961632 56669240 56669240 54981080 41173280 55888560 77136032 98379944 98379944 58753720 107893920 207985608 247091104 247091104 204757448 161929572 206065160 206065160 148080780 102777112 268632896 346213136 346213136 931329949 931329949 929772987 929772987 864179173 954765727 994726261 994726261 887174920 887174920 636348140 636348140 850249171 850249171 589263168 589263168 272765058 345809144 345809144 329119616 329119616 361259075 866714643 866714643 934028648 934028648 153232488 211439872 280094408 280094408 520204578 520204578 139862709 550147317 964873857 976202818 976202818 710422373 46407296 579472944 579472944 734490069 734490069 31623376 36991776 178645332 584538000 584538000 548149776 9330688 9330688 10302592 13300096 42871472 196816996 196816996 18535968 143946084 143946084 176492760 205994124 247631948 614294297 780539997 780539997 581885265 581885265 773891708 773891708 472679690 749226122 749226122 841132193 1048877410 1048877410 882427467 816549404 915046941 915046941 351347658 797709209 797709209 240918114 350424642 829031426 903422307 903422307 384198296 384198296 75619672 116019136 280679402 819008611 871002624 871002624 1021036470 1021036470 863682982 863682982 809675133 1053317339 1053317339 940049415 939675736 513823072 513823072 428479590 28360966 68854104 127803000 138262960 138262960 36226836 33914016 777652151 777652151 753197554 730201269 709729013 1003132249 1003132249 1041203347 1041203347 1038922699 1038922699 1036390628 268057408 851956826 851956826 659589368 659589368 230310216 421139556 421139556 469277368 469277368 183025866 44096774 829688739 829688739 969934580 969934580 947927353 947927353 709519554 1014141989 1014141989 496154764 496154764 677675825 837964096 837964096 805619715 626430725 647114817 789590412 789590412 196223420 266732144 266732144 160898368 124993888 306541904 402856780 402856780 277094464 277094464 36885264 36885264 44639568 940287457 940287457 434295270 429153974 567713030 567713030 548444684 949793888 949793888 1028653743 1028653743 1025089132 1025089132 226369452 1025901218 1025901218 625363529 625363529 620284332 249075260 249075260 40898480 40898480 752667884 752667884 122693648 89467560 33882808 1052672 1497856 2097408 74128790 505228350 505228350 645770577 645770577 537411904 136941828 412796516 412796516 632065516 632065516 585925078 521717310 394448885 288014891 142253984 1064703420 1064703420 739967991 601237444 549121025 507727296 589321777 589321777 245503420 245503420 214619340 549720129 549720129 355469056 538217097 538217097 88345288 100309696 100309696 20203584 18473120 61919872 86075152 86075152 32032224 93503648 164010176 165896228 165896228 170011844 192565412 192565412 61537568 61537568 37798032 50758848 50758848 36180992 346621712 347153290 347153290 101323928 130553104 130553104 13112896 310054912 324200306 324200306 867433856 867433856 512827998 610803944 656088096 656088096 646205504 763384122 763384122 441868876 1065461978 1065461978 536914208 459306152 459306152 474048516 474048516 403040262 135127046 14759936 15079872 15079872 73609608 73609608 30351776 121168656 121168656 182359964 221638920 288760064 876061058 876061058 766828458 1034031170 1034031170 747536892 749464748 900566279 900566279 881851467 876368459 839016152 839016152 352231370 340128714 340128714 195522272 945592798 945592798 509789813 300157410 821307024 821307024 643371786 692812463 692812463 521987346 820224401 820224401 210417035 201363072 364567380 364567380 179754858 87081768 87081768 17842944 63366160 261594316 261594316 281682016 294740644 348673238 348673238 239973104 497458978 497458978 491034954 577244437 577244437 489458534 762103941 762103941 165948192 165948192 337850216 870650122 870650122 663299193 439987475 728767246 1060176536 1060176536 389189664 353710088 67119650 729827640 729827640 52822141 11698184 11698184 67130176 67130176 11698184 0 12589088 29759712 378368138 408995500 408995500 514327008 1035014332 1035014332 517223235 490476046 484826986 347329938 316332866 894488618 894488618 71229192 271731722 271731722 17465536 362811904 362811904 16924906 2097408 2097152 2097152 134217792 293666820 293666820 420021248 501555438 501555438 957367143 957367143 340530401 453543540 924606724 924606724 909893713 668208616 236189576 612090126 612090126 522929509 805574746 805574746 966569063 1065769215 1065769215 966183606 966183606 326653156 498899198 498899198 531258646 531258646 518522878 154789362 322503692 322503692 663624484 740171348 740171348 642568424 542378872 739359037 739359037 796884044 796884044 596775537 679614484 716325636 716325636 715338133 717275349 717275349 693660369 693654725 177620100 177620100 641384712 641384712 371733393 306839832 865924757 865924757 466292332 370258016 908260473 908260473 364455786 705661751 705661751 941805831 941805831 694085379 594045452 796782525 796782525 1044973989 1044973989 741674752 741674752 729615182 493044496 673048372 674614508 747719093 747719093 992835191 992835191 387814206 556229200 556229200 591692866 591692866 405139556 405139556 159639814 278018848 307630608 307630608 368135048 368135048 320080858 1000003191 1000003191 815431606 974795751 974795751 897311866 897311866 543888803 912287972 912287972 303072007 1030894192 1030894192 907153947 841487931 614205419 533990107 451937892 594478759 594478759 1006744993 1006744993 806921743 577781764 897582694 897582694 386613218 386613218 1033714093 1033714093 340211850 1031541805 1031541805 685359936 694089233 694089233 535455066 535455066 312779544 875561736 875561736 877250240 881926731 881926731 406128276 463944054 463944054 473771790 473771790 172106958 2176 4458624 100952464 100952464 69593352 73523592 304505458 304505458 363079232 363079232 772987033 1056284883 1056284883 442522440 951846289 951846289 1059044391 1059044391 1023517368 962327239 351604576 471055022 471055022 436207638 436207638 218106424 432225988 432225988 261562586 63082828 12705984 18938016 18938016 56628100 196151988 200155924 200155924 183511348 183511348 253505960 253505960 139724976 145644424 145644424 550473612 648018952 698415232 698415232 789080314 789080314 481945422 521448036 910050000 910050000 582610642 1022938328 1022938328 596280878 208143756 222508320 222508320 244425984 244425984 142276288 700444169 700444169 629343329 706632228 706632228 684042248 684042248 208916840 620769804 620769804 206265736 206265736 157567744 219441580 219441580 158649252 740055305 740055305 721793796 935729403 935729403 784205734 191228340 219214218 373608994 1025654971 1025654971 570560663 805437456 805437456 619665655 619665655 950143903 950143903 1005703683 1005703683 676230841 444987395 926781219 926781219 996103830 996103830 88609832 88609832 851444243 882377410 882377410 923009112 923009112 440462456 440462456 348392469 350487616 350487616 950303823 950303823 291590009 291590009 571246621 738332685 1040324752 1040324752 810458242 604818435 1007839968 1007839968 548628708 619320777 619320777 567951687 249615918 449873559 705168405 705168405 541065879 472648974 472648974 762650413 762650413 511197914 511197914 81823232 838354084 838354084 497634093 485352758 485352758 1014858350 1014858350 585164611 839211010 848049220 943902858 943902858 818854467 818854467 548613456 373287834 545375331 594149723 594149723 541274532 21116068 529568246 529568246 302138436 440419744 440419744 163104566 188257056 188257056 136482820 136482820 134426628 94711860 236234772 236234772 134217732 134217732 353872398 353872398 136609944 269550506 623362360 623362360 193901832 146800452 128974200 181753854 181753854 261294842 1044767796 1044767796 856586364 269238288 886340323 886340323 966445060 966445060 1032641859 1032641859 1010885990 1010885990 157004714 772868653 828607872 828607872 830209665 830209665 110653496 106518704 106518704 103075032 101056976 101712408 229072956 229072956 191255600 191255600 364403712 364403712 423187632 423187632 413922630 431511328 431511328 488975704 488975704 146538308 143531076 335222668 431622289 1012830459 1012830459 725135408 725135408 152381988 152381988 304307636 424537254 424537254 724845761 724845761 438698022 951979013 951979013 466154790 339245496 296359266 282996888 161676192 161676192 85201248 93588072 274243720 274243720 93903136 93903136 362306408 362306408 530059660 530059660 484631762 918929603 996180308 996180308 714621363 596435027 596435027 864586858 885342477 885342477 804577885 789986113 789986113 780077616 303570944 303638034 303638034 522454902 522454902 506725956 167579060 200583232 497514708 508006536 508006536 456856864 456856864 423697970 526614462 526614462 472068366 472068366 69741316 270455810 270455810 341099018 341099018 336644746 336644746 371362072 371362072 343851520 377112082 377112082 660480 266888 52108288 117649464 117649464 122806968 122806968 113819744 76141920 25173312 25173312 90499240 90499240 51939240 317894024 531328034 531328034 187564068 36576560 189046036 195349168 195349168 200278548 200278548 177209940 517670701 665272163 828742467 1050637790 1050637790 981119607 861275514 992925882 992925882 606622141 893944252 893944252 312741760 122494330 45427536 370248170 370248170 339172602 339172602 450994250 511791198 511791198 951620483 951620483 656605437 206394788 711315289 711315289 822687986 990651097 990651097 590795224 604521480 958357050 958357050 786482693 566306888 566306888 914366827 914366827 981337759 981337759 884660043 884660043 723189063 1011494897 1011494897 961054924 961054924 725614389 725614389 891355409 891355409 677573953 270218842 841354162 1047037514 1047037514 430490694 411544656 428672732 430581826 440939664 823707171 823707171 454430227 684014274 684014274 440846517 553961505 947247895 947247895 138799236 815184519 815184519 759378093 814021444 814021444 362359404 429395680 901894251 901894251 1052350318 1052350318 801652857 1064594581 1064594581 1065556993 1065556993 677326029 941100193 941100193 805517451 763375343 727068301 760303236 760303236 646911232 646911232 631946496 207674296 108793752 38014848 36389512 77136032 98379944 98379944 58753720 107893920 207985608 247091104 247091104 204757448 161929572 99934644 148080780 148080780 76887088 309402168 346213136 480676444 931329949 931329949 929772987 929772987 864179173 864179173 620234450 620234450 887174920 887174920 713635403 881017038 928179937 928179937 926398898 926398898 372642050 372642050 605622856 605622856 820718641 820718641 327754866 310387744 76642250 292467938 467613288 467613288 176375104 77644104 140128448 229440804 229440804 32631908 198256672 699662884 710422373 710422373 63005792 539763856 539763856 734490069 734490069 42581344 574760705 574760705 584538000 584538000 548149776 9006528 9006528 10302592 13300096 13300096 8954368 6488960 15209344 44959360 49683408 49683408 10784832 8753216 614294297 614294297 547625280 581885265 581885265 137592344 111479824 40454216 298150016 333834738 841132193 1048877410 1048877410 816549404 816549404 537526275 537526275 403639304 797709209 797709209 240918114 350424642 829031426 903422307 903422307 560269898 560269898 103176496 858692226 858692226 872446595 872446595 321437746 838878515 838878515 657726058 657726058 589699377 1053317339 1053317339 940049415 939675736 513823072 513823072 428479590 42586448 68854104 141475940 158069888 453030380 455602520 455602520 777652151 777652151 753197554 730201269 709729013 1003132249 1003132249 1041203347 1041203347 506078505 552999365 955795206 955795206 884475402 884475402 417894336 230310216 230310216 421139556 421139556 469277368 469277368 421529000 535379702 829688739 829688739 950306154 950306154 947927353 947927353 709519554 1014141989 1014141989 389583602 389583602 547510399 547510399 488724010 479909454 172171776 37954068 74461492 84026780 103494936 103494936 160898368 160898368 124993888 342382656 402856780 402856780 268836864 268836864 36885264 36885264 44639568 56064688 56064688 429153974 429153974 567713030 567713030 285030887 141830020 634401376 634401376 694824969 694824969 206120743 226369452 1025901218 1025901218 625363529 625363529 620284332 196089624 220336428 573921821 573921821 835054440 929063851 929063851 926122939 563998305 568014401 568014401 831384675 831384675 823954752 20043808 20043808 537444896 537444896 16803328 16803328 491267466 560555300 560555300 521717310 594973454 1044288403 1044288403 856163379 906022424 906022424 368265259 408347280 507727296 507727296 477268594 477268594 245503420 245503420 214619340 423401834 423401834 355469056 355469056 342493312 26740320 91523208 91523208 20203584 18473120 61919872 163643488 163643488 136577136 93503648 181590180 181590180 151925056 170011844 192565412 221434876 247685512 247685512 234197640 241059346 404328650 404328650 346621712 347153290 347153290 526098402 526098402 384435250 25165920 310054912 310054912 15231506 333071890 333071890 303601394 610803944 610803944 476886464 646205504 646205504 377204502 102760728 98092776 536914208 536914208 459306152 459306152 374561032 374561032 503391260 503391260 303381028 113588992 140944708 140944708 30850176 30983904 30983904 26789216 11406144 440759087 440759087 293251281 839071024 895764741 895764741 794847314 824504514 824504514 749464748 604659912 550101185 406813510 344543766 277181188 277181188 247714012 247714012 195522272 921487260 921487260 628623273 803488333 809823697 809823697 696325972 701755075 701755075 500495727 551708889 551708889 505253849 854412696 854412696 756316756 288846704 87081768 87081768 55651680 63366160 261594316 261594316 218105388 294740644 348673238 348673238 236659734 353017240 461452002 1036899538 1036899538 270868996 270868996 525407739 618666383 767951689 767951689 697028869 697028869 105079155 906174611 906174611 638591798 1060176536 1060176536 353710088 353710088 218540592 729827640 729827640 682188800 186847328 134357420 246428588 645196072 761340333 761340333 709504084 709504084 961031174 961031174 344175738 892906472 1035014332 1035014332 517223235 526746047 537257985 537257985 485077255 273943170 991221302 991221302 996674333 996674333 991743544 339776608 355599066 364089360 364089360 272741062 404350162 404838264 404838264 327688714 327688714 501555438 501555438 397421450 351030410 183536660 453543540 453543540 441764502 270027924 227670396 251867196 251867196 201515056 137699966 396626298 396626298 966569063 1065769215 1065769215 966183606 966183606 334679496 498899198 498899198 531258646 531258646 518522878 154789362 322503692 322503692 663624484 740171348 740171348 137889540 542378872 739359037 739359037 796884044 796884044 596775537 679614484 716325636 716325636 715338133 717275349 717275349 693660369 675636644 262997732 262997732 47702560 48548400 51023296 63501552 63501552 64685808 64685808 36533536 55756576 55756576 40102432 61420928 61420928 38086800 38086800 33613952 594045452 796782525 796782525 338563516 584782050 741674752 741674752 801663310 801663310 673048372 713885914 892440305 892440305 992835191 992835191 438346278 438346278 970846519 970846519 654173166 891363212 891363212 90367086 286329664 303329872 303329872 368135048 368135048 320080858 1000003191 1000003191 815431606 974795751 974795751 381026834 379593080 379593080 912287972 912287972 707844246 1030894192 1030894192 907153947 496505973 134743044 151408144 161251940 295556468 295556468 177825330 442555008 442555008 437831190 319030192 329068146 386613218 386613218 1033714093 1033714093 340211850 1031541805 1031541805 509022811 607249813 607249813 117221057 110784392 757999298 875561736 875561736 876144361 876144361 568402401 885047931 885047931 911213211 911213211 473771790 374663950 477218830 477218830 474005646 237036634 1067492149 1067492149 521104872 561775129 561775129 538899984 893436075 1056284883 1056284883 770626760 951846289 951846289 1059044391 1059044391 962327239 962327239 732529468 732529468 1008029769 1008029769 844239507 542251034 509341960 212971600 212971600 63082828 67287184 67287184 35909912 33763408 33235296 31535056 55588784 56834416 56834416 54726784 28257760 33431520 33431520 28055872 34096944 67551746 354867498 383831546 383831546 126508208 179889268 521448036 521448036 506455446 506455446 516619312 516619312 237188580 237188580 222508320 222508320 244425984 244425984 776813728 776813728 749320524 776291009 776291009 706632228 265536184 265536184 208916840 620769804 620769804 206265736 206265736 157567744 219441580 219441580 158649252 151219780 159098970 427302749 935729403 960631482 964183585 964183585 739414171 404185252 404185252 421618080 430235650 507084966 507084966 627119970 627119970 994900356 994900356 1005703683 1005703683 676230841 444987395 761160656 805766472 805766472 482973070 88609832 88609832 946353029 946353029 926361400 926361400 713259094 1032311937 1032311937 941847550 941847550 350487616 950303823 950303823 371851268 371851268 571246621 738332685 1040324752 1040324752 810458242 604818435 1007839968 1007839968 548628708 619320777 619320777 672678460 845186499 845186499 705168405 705168405 541065879 681252315 681252315 762650413 762650413 511197914 511197914 81823232 838354084 838354084 604283232 538968321 495288601 1014858350 1014858350 585164611 550912000 772707023 772707023 570953792 377252368 380924506 380924506 373287834 79757064 84768032 84768032 69255432 19551272 109861644 109861644 74190684 440419744 440419744 275849860 578433287 578433287 939648019 939648019 523021856 523021856 959757757 959757757 162305108 170559241 170559241 146096416 224518572 224518572 623362360 623362360 602416516 602416516 546272609 557807389 895067776 895067776 695391016 856586364 856586364 734994282 886340323 886340323 966445060 966445060 1032641859 1032641859 1010885990 1010885990 67641345 541786273 828607872 828607872 597378184 597378184 634381121 634381121 604356232 657821178 890593803 890593803 568371211 912187035 949657955 949657955 543356990 317473620 408735366 509024466 509024466 431511328 431511328 488975704 488975704 234673172 520758666 520758666 394060288 394060288 623081328 725135408 987653966 987653966 31947232 304307636 424537254 503639656 503639656 334063664 334063664 283954626 517216832 517216832 339245496 296359266 417273910 417273910 316121516 188325964 391933860 391933860 439388366 439388366 358175690 362306408 684914101 684914101 170251332 189024823 713140555 996180308 996180308 890560812 890560812 241295772 241295772 238110648 668535308 734346485 734346485 206376960 320481918 320481918 511781890 511781890 522454902 522454902 506725956 304161042 295464450 50686256 50686256 29579728 2410752 2146560 2146560 201326592 221561608 221561608 302121748 302121748 184998484 184998484 341099018 341099018 336644746 336644746 371362072 492920724 492920724 377112082 377112082 395502594 487944740 487944740 159582940 159582940 135931632 122806968 113819744 24870752 25173312 87443810 292146762 292146762 291947490 114420160 244428128 244428128 187564068 36576560 189046036 195349168 195349168 200278548 200278548 177209940 441976070 441976070 70041718 861029518 1059254933 1059254933 593848492 593848492 638328254 638328254 419450899 358782088 312741760 66852082 70124624 93586864 283453656 283453656 55651442 0 511791198 511791198 951620483 951620483 649130080 896678713 896678713 374148574 822687986 990651097 990651097 176560833 604521480 617644576 786482693 936660243 936660243 434690287 603898160 685113555 981337759 981337759 884660043 884660043 723189063 1011494897 1011494897 1000555221 759867137 759867137 725614389 617924818 677573953 677573953 153915938 682803684 837043526 837043526 411544656 411544656 428672732 430581826 440939664 440939664 430711234 430779750 448806162 822292642 822292642 672315906 947247895 947247895 952107207 952107207 540144672 540144672 187767824 271556738 277091846 429395680 943925856 943925856 253663075 847614912 847614912 1064594581 1064594581 1065556993 1065556993 677326029 941100193 941100193 805517451 763375343 727068301 760303236 760303236 646911232 646911232 631946496 207674296 116392920 38014848 13108032 11535552 8989440 27866872 108139416 108139416 87114256 97752360 97752360 69474792 120186168 120186168 119779688 119779688 76887088 309402168 337763392 480676444 480676444 848354504 848354504 575329425 186647196 818414500 818414500 543736367 253329421 713635403 776520861 881017038 928179937 928179937 926398898 926398898 508418879 757471533 757471533 1053940497 1053940497 820718641 562697313 509174339 647116326 647116326 467613288 467613288 176375104 314393410 314393410 229440804 229440804 146491297 847286550 847286550 600949476 961241111 961241111 574625808 539763856 810235011 810235011 268972161 574760705 574760705 16641984 15411776 10922880 8436992 8436992 6106752 9834000 37226288 191180324 191180324 31457760 172936164 172936164 143979448 221680172 221680172 27275862 456340278 456340278 457129782 479938672 479938672 306186305 566495443 902040033 902040033 1004332642 1004332642 332924582 528589572 528589572 463743898 447481158 534186736 534186736 287905298 157942304 157942304 37748880 879791867 879791867 560269898 560269898 103176496 858692226 858692226 872446595 872446595 313656512 313656512 293865570 657726058 657726058 589699377 550182191 516157662 516157662 447771528 339812490 27928010 21106720 42586448 44229712 141475940 158069888 453030380 455602520 455602520 85088278 482160462 482160462 463885312 463885312 707939070 707939070 556435937 394174516 394174516 552999365 955795206 955795206 884475402 884475402 451949662 536733008 536733008 500047086 495662110 338167120 406601912 462736060 535379702 535379702 251535324 234480576 231736044 231736044 180453440 277123276 805042774 805042774 909465309 998557815 998557815 933392136 646878210 540746560 649175111 672785925 806936910 806936910 138470760 72082596 3588712 93620864 93620864 342382656 342382656 151879014 268836864 311344676 446692950 446692950 469762038 469762038 181144578 173810036 173810036 28651104 32464800 32464800 78755528 634401376 634401376 694824969 694824969 683519616 99755680 84542240 84542240 31008424 45701264 59674928 196089624 220336428 771662360 771662360 835054440 929063851 929063851 926122939 563998305 568014401 568014401 831384675 831384675 823954752 37894240 25628816 537444896 537444896 44102896 55248656 491267466 560555300 560555300 897458091 897458091 1044288403 1044288403 856163379 906022424 1047616262 1047616262 934478680 625281427 320223788 588454029 588454029 171053844 171053844 288251784 832208299 832208299 367218410 879424385 879424385 33113952 33113952 77971624 77971624 77957896 116995736 163643488 163643488 136577136 22129616 181590180 181590180 118875416 105906840 64217920 221434876 247685512 371014586 412478022 412478022 404328650 404328650 244583004 244583004 1030689807 1030689807 785161516 879886411 879886411 757072173 282208167 179842132 390874090 680571023 680571023 953899080 953899080 856439010 856439010 536282540 377204502 102760728 98092776 101744906 274047626 403446786 492882304 492882304 374561032 503391260 503391260 303381028 113588992 140944708 140944708 30850176 30983904 38325456 38325456 86495296 440759087 440759087 293251281 839071024 895764741 895764741 794847314 824504514 824504514 818603409 818603409 887247130 887247130 814209118 370234632 277181188 387605944 387605944 177150906 921487260 921487260 628623273 910201176 910201176 809823697 696325972 744913308 744913308 1029756160 1029756160 551708889 505253849 854412696 854412696 756316756 702958439 945786789 945786789 753640237 1047154472 1047154472 454127214 454127214 219218444 281857218 948372704 948372704 892818240 461452002 1036899538 1036899538 603632910 489814378 525407739 618666383 767951689 767951689 697028869 697028869 772139037 1043323288 1043323288 499846522 542862415 542862415 680924498 680924498 218540592 280823618 682188800 682188800 587223380 646086712 646086712 645196072 761340333 761340333 709504084 709504084 961031174 961031174 94409984 892906472 892906472 879807017 747860608 526746047 537257985 537257985 485077255 230977554 991221302 991221302 996674333 996674333 991743544 969412720 1064322856 1064322856 400115072 272741062 446203805 1026713359 1026713359 774443770 774443770 451215588 451215588 611134857 611134857 634398357 634398357 256485198 162611704 221588268 227670396 251867196 469816377 469816377 427196695 645707662 744462612 744462612 448183138 609540352 609540352 915457171 915457171 844153848 370541368 293883618 271370576 13947976 98978440 98978440 63443696 749714184 749714184 164391009 220468972 220468972 219991596 219991596 221775660 221775660 195874164 195874164 202326068 202326068 219102960 246205788 247247776 247247776 95855568 262997732 262997732 61241744 61241744 55980768 51023296 26350176 28957280 36533536 36533536 55756576 55756576 139341092 139341092 61420928 31198944 596515240 596515240 232525045 148249284 427561104 457056054 584782050 689383712 689383712 801663310 801663310 617211081 723078908 892440305 892440305 156330993 366186812 438346278 438346278 970846519 970846519 737296532 891363212 891363212 536703246 303969904 335628906 335628906 85860314 64730016 140260484 140260484 372051608 372051608 275126658 146167684 1000634836 1000634836 1002516343 1002516343 707844246 707844246 553557891 367134601 945303730 948695697 948695697 10068594 856506880 856506880 587515953 28459362 28459362 306335042 311705730 319030192 319030192 54162512 308220306 308220306 293433810 136524036 541032836 541032836 862258734 862258734 607249813 481034570 481034570 838968064 838968064 607773302 341377226 341377226 274269314 885047931 885047931 911213211 911213211 370164610 374663950 477218830 477218830 474005646 237036634 1067492149 1067492149 521104872 561775129 561775129 538899984 893436075 893436075 770626760 770626760 308119589 617223369 617223369 567105737 776334589 776334589 732529468 732529468 1008029769 1008029769 844239507 542251034 509341960 450029312 212971600 33876292 67287184 67287184 35909912 33763408 33235296 31535056 55588784 56834416 56834416 54726784 62601072 62601072 45543696 45543696 34644288 45667856 45667856 34603536 30330176 14052736 27551040 27551040 48234960 75776144 243580928 243580928 235192592 237188580 237188580 130548984 127013496 225212556 225212556 776813728 776813728 749320524 776291009 776291009 545208497 62113996 103621908 255565100 603865836 603865836 135224320 143389764 143389764 208753164 208753164 72502664 122663296 219365692 377845668 377845668 960631482 964183585 964183585 739414171 676458886 878928512 878928512 954204615 1021448200 1021448200 627119970 627119970 994900356 994900356 469861993 384826842 604645976 604645976 618478249 805766472 805766472 482973070 266408440 266408440 946353029 946353029 926361400 926361400 832195602 1032311937 1032311937 941847550 941847550 499697313 826937254 826937254 371851268 371851268 253756235 129505560 252525980 252525980 188953614 201459464 477649700 477649700 282084418 282084418 500727814 1001638120 1001638120 845186499 592919217 592919217 315491024 1037962061 1037962061 493764258 494899503 728521853 728521853 483608032 206577988 659796125 659796125 538968321 495288601 381010012 381010012 550912000 550912000 538629633 570953792 570953792 46145169 34726416 39440144 39440144 79757064 125231026 125231026 157463720 157463720 290040900 438660310 438660310 318097430 412095106 412095106 578433287 578433287 939648019 939648019 771777956 771777956 959757757 959757757 705158157 170559241 698509477 698509477 563115844 678449729 684977056 684977056 602416516 602416516 631787816 631787816 895067776 895067776 695391016 695391016 796122392 796122392 188095284 188095284 286834690 286834690 219004930 487451694 536937480 673458338 673458338 248519372 579672400 579672400 554392945 554392945 634381121 634381121 604356232 657821178 890593803 890593803 568371211 912187035 949657955 949657955 543356990 317473620 408735366 509024466 509024466 497836452 230071536 230071536 234673172 418259762 520758666 520758666 408051338 394060288 749017460 775488544 987653966 987653966 136642560 202116108 202116108 503639656 835545060 940743665 940743665 732431733 773799660 773799660 703743623 1004453999 1004453999 436345020 921045664 1069953285 1069953285 391933860 439388366 675798201 675798201 843532876 843532876 684914101 170251332 211044370 713140555 713140555 948699232 948699232 890560812 241295772 241295772 238110648 748748973 748748973 553861608 553861608 538980364 320784032 511781890 511781890 474981064 311685714 304161042 304161042 295464450 151401250 207974204 207974204 457585312 457585312 423528482 459296190 459296190 325428390 425773076 425773076 522194206 522194206 471520298 381190196 277485830 277485830 354568624 492920724 492920724 260640916 365466690 395502594 487944740 487944740 249703268 249703268 178823424 31974720 31974720 67134496 67134496 87443810 292146762 292146762 291947490 114420160 244428128 337719794 337719794 297926752 331354160 331354160 323561288 383854016 383854016 294126272 439145293 883739935 1065489777 1065489777 1059254933 1059254933 593848492 1040273671 1040273671 638328254 855671174 855671174 76416848 320864738 320864738 299376490 376350728 376350728 357649304 352885418 336089128 336089128 315659136 313783120 649130080 896678713 896678713 608575624 659036264 659036264 591737113 639895329 639895329 617644576 914414189 936660243 936660243 886321324 966212199 966212199 519095262 823734502 823734502 470216975 651183758 651183758 1000555221 1000555221 759867137 759867137 272701942 272701942 854854994 854854994 507472458 507472458 478694592 478694592 293964676 291578274 143789312 2403908 275126336 283115970 430711234 430779750 814744576 822292642 822292642 672315906 672315906 943718593 952107207 952107207 540144672 540144672 275080320 275080320 271556738 135595232 943925856 943925856 253663075 847614912 858261616 858261616 44434803 278925934 353501602 353501602 629633736 629633736 231285996 253097144 253097144 100733976 168753176 184681556 184681556 135010424 386440098 386440098 193069564 476094222 476094222 361789802 361789802 464775488 464775488 457241158 284861568 426779058 426779058 271096192 319172912 319172912 38953408 38953408 27374224 12784096 12735809 753698758 753698758 541119240 541119240 206623394 818414500 818414500 543736367 253329421 692610144 776520861 805898296 805898296 390296960 390296960 181478388 508418879 757471533 757471533 1053940497 1053940497 718906916 562697313 509174339 647116326 647116326 316938282 316938282 64161928 314393410 314393410 113049360 193221283 317534099 957513330 957513330 815800545 961241111 961241111 940122240 306970627 810235011 810235011 268972161 25604802 325668002 325668002 310006320 11962384 8436992 8436992 7771904 9834000 37226288 191180324 191180324 31457760 172936164 172936164 243038664 243038664 222750964 53140239 1058803263 1058803263 1049937455 1016070735 680002629 721437765 939573301 939573301 939573255 1004332642 1004332642 743896025 743896025 564300893 447481158 447481158 534186736 534186736 308699762 308699762 260645322 666706232 666706232 270059010 350801528 350801528 33677328 42033152 42033152 13124168 81389256 313656512 551650097 551650097 603234496 603234496 543297921 713138254 909065499 909065499 682273116 403084556 403084556 218153068 433770754 433770754 73012872 35774736 40269056 49252448 57406896 805937485 885511115 885511115 463885312 463885312 187918714 187918714 142608032 142608032 22436452 18400800 18258944 7075200 277902236 530332150 530332150 536733008 536733008 500047086 495662110 354422674 406601912 462736060 462736060 390630990 505623858 505623858 213948396 213948396 336314652 915863162 915863162 805042774 909465309 998557815 998557815 933392136 646878210 540746560 649175111 672785925 806936910 806936910 199878132 178873844 178857300 158607464 56471312 276900736 276900736 471877632 472698126 472698126 517166264 517166264 469762038 469762038 272138264 272138264 173810036 28651104 32464800 32464800 20372256 540148992 540148992 540017409 683519616 683519616 1030758285 1030758285 1009985545 638006329 638335989 782771156 782771156 244340252 782786884 782786884 727448673 290055330 88708354 70510080 45425248 54067872 55192688 55192688 50859584 50859584 52438144 52438144 56888016 56888016 44102896 316699384 316699384 197890286 237110380 897458091 897458091 440720806 546969153 546969153 472949532 1047616262 1047616262 934478680 849099075 521527314 1040662559 1040662559 201396274 171053844 406885324 832208299 832208299 367218410 879424385 879424385 149886446 33113952 213380224 213380224 145699780 145278276 148826884 148826884 192636572 240247792 240247792 118875416 118875416 105906840 55714128 307335410 307335410 371014586 412478022 412478022 323986638 323986638 244583004 244583004 1030689807 1030689807 785161516 879886411 879886411 757072173 744542815 744542815 472940879 920676943 920676943 1016431067 1016431067 856439010 856439010 855682595 855682595 305070080 305070080 467499822 467499822 501421052 501421052 492882304 240764990 245053020 245053020 109058776 133306800 133306800 25601856 25089664 7375360 69912968 69912968 86495296 104161112 883857696 883857696 487226408 740815918 740815918 143398145 730233036 730233036 818603409 818603409 887247130 887247130 814209118 370234632 302796576 387605944 961381183 961381183 522838396 1020585936 1020585936 910201176 910201176 696385903 990061591 990061591 744913308 1029756160 1029756160 275069882 405324800 438305286 455886706 455886706 702958439 945786789 945786789 753640237 1047154472 1047154472 454127214 454127214 34128912 281857218 948372704 948372704 892818240 119545182 648683636 648683636 603632910 489814378 489814378 437161300 250400220 250400220 405475430 606363924 772139037 1043323288 1043323288 499846522 542862415 542862415 680924498 680924498 191066247 280823618 280823618 270569806 587223380 646086712 646086712 700539864 742004893 742004893 328109296 328109296 890193808 890193808 594055207 863136056 1046882832 1046882832 747860608 729083664 613195100 71487624 6556032 589695168 589695168 425890002 409389554 715801765 715801765 969412720 1064322856 1064322856 400115072 213599048 446203805 1026713359 1026713359 774443770 866845091 866845091 463520114 611134857 611134857 634398357 634398357 256485198 208233876 407970438 687417350 754321927 754321927 708298121 469682480 730698850 767369732 851739087 851739087 609540352 609540352 915457171 915457171 844153848 370541368 293883618 271370576 127452792 106448776 98978440 12820712 749714184 749714184 566419621 751225484 751225484 640865049 640865049 224955884 782290492 782290492 752159053 752159053 647243436 219102960 219102960 98442984 76103520 76103520 59688240 59688240 61241744 61241744 55980768 32893560 26350176 884680409 884680409 560437505 185238912 589255547 589255547 716945866 716945866 310580722 1033004211 1033004211 715054101 364685549 427561104 580390233 580390233 959535344 1054602975 1054602975 614041624 617211081 723078908 723078908 19215266 547336338 789736565 789736565 670315401 492177641 737296532 737296532 187702057 536703246 536703246 330996992 335628906 335628906 64837488 64730016 177375093 566630625 566630625 393422483 720900150 720900150 1000634836 1000634836 1002516343 1002516343 692064256 692195493 692195493 962777511 1013109165 1013109165 948695697 694705669 976538485 976538485 939657840 939657840 539400466 42470848 283618352 290583200 290583200 54162512 308220306 542927088 660041617 660041617 773461681 773461681 862258734 862258734 219240693 481034570 481034570 838968064 915406857 915406857 553701523 553701523 289456704 298844898 598917930 659690169 659690169 74453297 341316910 404799750 404799750 237618450 213411354 213411354 109101144 109101144 69214480 67716168 36505600 21090960 123771528 489883932 489883932 360989342 115005144 115005144 147036384 147036384 96942312 91997960 743095694 743095694 413336772 505143306 505143306 505512088 505512088 409387158 371703940 80016000 70697304 79774080 79774080 13632320 13632320 13505536 743971701 743971701 79338144 690723881 690723881 219062284 244675936 244675936 968813059 968813059 266079996 582515915 582515915 454463678 473409662 473409662 503561796 503561796 518706492 518706492 294037852 122160312 122160312 127013496 183847272 183847272 155079204 219406888 672268576 672268576 235928604 235928604 62113996 559522913 559522913 693350528 693350528 235967068 798181400 798181400 627545260 208753164 87138736 122663296 219365692 437037727 561991211 826803363 826803363 437618327 420800785 707127829 878928512 878928512 954204615 1021448200 1021448200 383202059 71959684 560255516 560255516 692459685 692459685 604645976 604645976 618478249 618478249 692103872 692103872 415880770 415880770 281272902 273711296 669648232 669648232 832195602 832195602 925028818 925028818 357047811 499697313 826937254 826937254 571261076 676072581 676072581 507644064 507644064 491069738 293084646 435029922 477649700 477649700 219121098 156808248 260714612 1001638120 1001638120 576916256 592919217 592919217 373489928 1037962061 1037962061 493764258 494899503 728521853 728521853 483608032 206577988 927384094 927384094 693508773 798567469 798567469 549503169 790784033 906303892 906303892 877055364 748877273 573397385 613150570 663209337 663209337 93474152 125231026 130500824 157463720 157463720 290040900 438660310 438660310 329785808 412095106 412095106 143266884 139014336 242036124 242036124 771777956 777861656 777861656 705158157 705158157 658280421 698509477 698509477 563115844 678449729 692229284 717078533 717078533 690178104 690178104 657358129 570999873 642641588 642641588 424194155 796122392 796122392 965608251 965608251 817414699 369021353 558925568 612158345 612158345 673458338 673458338 543298945 579672400 588870792 588870792 652407224 652407224 115434584 544852224 614688721 614688721 303560761 175293516 175293516 142559488 173439944 173439944 273237266 273237266 158773558 497836452 497836452 230071536 292158956 292158956 418259762 418259762 408051338 408051338 297789341 749017460 775488544 775488544 169707821 151003921 223036448 223036448 206181516 835545060 940743665 940743665 732431733 773799660 773799660 703743623 1004453999 1004453999 436345020 921045664 1069953285 1069953285 376686809 363034878 675798201 675798201 843532876 843532876 71598603 38325840 738727360 807899587 807899587 948699232 948699232 788652093 755048562 366078026 229476907 748748973 748748973 553861608 570431504 570431504 320784032 394786922 394786922 244967004 546383597 546383597 13895952 964215143 964215143 207974204 207974204 457585312 722824997 722824997 459296190 644062499 644062499 425773076 425773076 522194206 522194206 471520298 381190196 107035516 175512468 175512468 106043596 260640916 260640916 68404976 126427676 156328484 189080052 249703268 249703268 178823424 61476096 61476096 76285952 76285952 31263200 31263200 158646097 158646097 239257820 239257820 557944481 557944481 297926752 331354160 543892272 543892272 383854016 824534947 824534947 1059383542 1059383542 1065489777 1065489777 1040981054 381057362 381057362 1040273671 1040273671 623034374 855671174 855671174 55121705 320864738 320864738 299376490 376350728 376350728 357649304 352885418 336089128 336089128 547430723 857939987 857939987 901956609 901956609 931743851 931743851 912800845 912800845 639895329 639895329 444908330 914414189 914414189 580700424 886321324 966212199 966212199 1015065040 1015065040 823734502 470216975 379959042 138762256 181662420 912733828 912733828 386096586 272701942 272701942 854854994 854854994 507472458 507472458 696555012 696555012 261141356 187172196 411678744 411678744 859568582 987430423 987430423 173428423 814744576 815269443 815269443 690961701 836627282 836627282 315046018 315046018 302945680 679938496 714248912 714248912 398583222 398583222 360950340 777768066 777768066 579685589 858261616 858261616 387329160 375107634 553709090 553709090 629633736 725708860 725708860 520347669 311480860 110223960 168753176 184681556 184681556 135010424 386440098 386440098 193069564 476094222 476094222 463454800 361789802 464775488 464775488 457241158 284861568 426779058 426779058 271096192 319172912 319172912 582739541 582739541 906067338 906067338 812006180 753698758 753698758 962075022 962075022 624828201 808976407 1023443869 1023443869 987943924 987943924 880918535 880918535 879339750 879339750 850041929 479272116 479272116 289800484 17861152 566470200 566470200 710611464 710611464 278024845 370243142 370246386 370246386 356843568 63185088 4366336 21278752 55667744 193221283 317534099 957513330 957513330 815800545 815800545 940122240 940122240 922611675 922611675 385875930 354534490 818837361 818837361 325668002 310006320 11962384 4151296 3985152 79608264 79608264 70335104 73530056 73530056 70416264 68723592 75653256 243038664 243038664 222750964 53140239 1058803263 1058803263 1049937455 1016070735 680002629 721437765 939573301 939573301 939573255 342278357 631766888 743896025 743896025 606803054 271459468 402403882 465116882 465116882 448010784 308699762 260645322 666706232 810902058 810902058 818355696 818355696 356570496 887884282 887884282 816369635 816369635 565995665 849448642 849448642 603234496 603234496 543297921 713138254 909065499 909065499 682273116 403084556 403084556 218153068 433770754 433770754 245096968 193578084 321071132 321071132 285297788 805937485 1046611599 1046611599 533405410 537368385 574688414 574688414 541139073 447911932 447911932 553780513 738333952 742854685 742854685 594116092 530332150 261469780 357438660 357438660 354422674 354422674 206586506 275268624 285848272 333108978 505623858 505623858 481931370 481931370 1016243458 1016243458 922865770 853446006 867679799 867679799 663402699 663402699 604300036 682908997 682908997 539418189 341329214 341329214 220964256 220964256 178857300 158607464 124441992 9195944 109625432 471877632 472698126 472698126 517166264 517166264 466057654 1009139517 1009139517 272138264 487187502 802332533 802332533 403123379 991589940 991589940 540148992 991707413 991707413 810114710 1030758285 1030758285 1009985545 756993452 638335989 782771156 782771156 244340252 782786884 782786884 461915561 290055330 337720322 471016878 471016878 821216898 821216898 194542699 489620584 489620584 480696654 656412417 656412417 142198436 170403028 316699384 685607745 685607745 823984241 838866954 838866954 1009421008 1056890847 1056890847 47241103 115816920 115816920 849099075 849099075 521527314 1040662559 1040662559 201396274 3595008 406885324 753270785 753270785 738931725 738931725 674716150 674716150 479334990 848432090 848432090 476716617 781600326 781600326 574412892 909164822 909164822 664011528 304349816 25304368 382156610 382156610 664052585 664052585 356980250 587359007 587359007 234981948 234981948 275177512 681826813 956301653 956301653 25305184 890315048 890315048 833692515 744542815 744542815 472940879 920676943 920676943 1016431067 1016431067 743975832 985797456 985797456 855682595 413275283 799872465 799872465 467499822 501421052 501421052 422498630 459118900 487926318 487926318 276551564 133306800 133306800 25601856 25089664 22027424 69912968 69912968 58145712 460448411 883857696 883857696 487226408 740815918 740815918 143398145 743126220 743126220 685258437 685258437 304051457 340789888 340789888 354339365 910100283 910100283 961381183 961381183 522838396 1020585936 1020585936 277514287 696385903 702023341 990061591 990061591 604329026 604329026 738523968 738523968 916260400 916260400 455886706 455886706 164226276 164226276 143172708 42403860 230870020 230870020 177116188 177116188 67108872 8 68960256 128576306 480354578 495461498 495461498 336134154 281193820 528297918 834210957 834210957 583550040 408932506 489623100 639500432 639500432 581366033 601925953 601925953 690299076 690299076 67373072 67373072 59017224 83918952 83918952 67158056 75513864 92531681 620157897 700539864 742004893 742004893 328109296 328109296 619220960 619220960 594055207 863136056 1046882832 1046882832 729083664 729083664 965040247 965040247 1032614002 1032614002 589695168 424231721 476511648 476511648 340147280 406902400 406902400 353688116 106567320 58213128 93971104 211338828 211338828 760292026 866845091 866845091 463520114 691022252 691022252 668500937 902644746 902644746 607597764 677256837 809056840 809056840 754321927 708298121 922276125 922276125 767369732 954428163 954428163 637429008 637429008 67393616 76202008 76202008 116392920 132553816 132553816 127452792 106448776 95946600 224139392 234525736 566419621 566419621 751225484 751225484 640865049 640865049 224955884 782290492 782290492 752159053 752159053 647243436 94772928 94772928 71878152 67438848 118201032 118201032 71787056 8523840 279195698 279195698 108296522 108296522 884680409 884680409 560437505 185238912 589255547 589255547 716945866 716945866 310580722 1033004211 1033004211 715054101 798499536 798499536 580390233 580390233 959535344 1054602975 1054602975 973302409 949799751 203509251 156354284 135619096 547336338 789736565 789736565 670315401 492177641 739418880 739418880 187391604 476390248 476390248 330996992 81338968 386214472 386214472 40512512 177375093 566630625 566630625 393422483 720900150 720900150 143412477 535823358 535823358 910983892 910983892 964960098 964960098 963677645 1013109165 1013109165 694705669 694705669 976538485 976538485 939657840 939657840 539400466 34885648 334115952 334115952 90366394 110960176 583934152 612140401 660041617 660041617 773461681 785597912 785597912 696767784 40399253 14031552 180281172 248517512 915406857 915406857 992073526 992073526 546509386 546509386 636881820 659690169 659690169 584554813 584554813 176234580 178372864 316178527 760105727 760105727 1025846140 1025846140 445164002 39621579 36505600 955002883 955002883 808244489 624720676 360989342 269884300 115005144 147036384 147036384 96942312 91997960 743095694 743095694 168370332 168370332 269768320 505512088 505512088 409387158 371703940 80016000 70697304 79774080 79774080 161294740 161294740 193471344 743971701 743971701 79338144 690723881 690723881 398682506 398682506 244675936 968813059 968813059 266079996 582515915 582515915 454463678 473409662 473409662 503561796 503561796 518706492 518706492 294037852 122160312 254522660 254522660 181218516 142468972 155079204 609477985 754129608 754129608 724952285 722077068 722077068 620660752 620660752 693350528 693350528 235967068 798181400 798181400 627545260 205713832 141621292 195625744 195625744 437037727 561991211 826803363 826803363 437618327 722216232 722216232 707127829 503380631 274927744 315691840 383202059 383202059 419295174 547522897 547522897 692459685 692459685 849851492 849851492 858780726 1000630647 1000630647 692103872 415880770 415880770 281272902 273711296 601232049 849087249 849087249 296627536 975402278 975402278 344292257 208995265 51413578 678564741 678564741 681315909 714083344 877010086 1028403733 1028403733 592579552 1038173609 1038173609 70244325 156808248 156808248 780141940 844667921 844667921 846201345 846201345 438304950 438304950 1006646206 1006646206 420743718 421577093 826278051 826278051 420820227 474515503 1007351469 1007351469 761739693 798567469 809221017 809221017 790784033 950952074 950952074 877055364 748877273 573397385 613150570 663209337 663209337 554658825 554658825 538703361 538149888 159105500 223995312 223995312 329785808 329785808 432851888 432851888 405098944 405098944 481610574 481610574 839076612 839076612 777861656 687277853 608537644 658280421 668819521 668819521 693350960 708886677 708886677 717078533 717078533 690178104 690178104 657358129 747200549 747200549 638006326 593401408 511079576 511079576 965608251 965608251 817414699 671256777 671256777 645791033 645791033 656077728 656077728 543298945 564932513 588870792 588870792 652407224 652407224 597252440 596350168 596350168 668411606 776204445 776204445 829046007 1027042091 1027042091 707193670 512657928 512657928 461376992 523356118 523356118 244138360 292158956 292158956 192148404 111516396 67178827 822814748 822814748 198512760 253242408 589391520 589391520 631312620 631312620 223036448 206181516 942781776 942781776 827067555 827067555 284985773 241437084 409655328 409655328 246829060 113303768 113303768 8726656 17113088 100780088 100780088 178614128 178614128 834947536 834947536 305286610 247799628 738727360 807899587 864416217 1062697102 1062697102 788652093 755048562 366078026 229476907 140806345 755742912 755742912 570431504 570431504 516657298 516657298 394786922 244967004 546383597 546383597 13895952 964215143 964215143 174933056 160262868 312293664 722824997 722824997 405213472 644062499 644062499 252320252 614013521 630643305 630643305 259429196 294659043 543236481 543236481 206285040 1013481766 1013481766 792728601 680211457 562749540 173749908 195765396 196683636 196683636 103290224 61476096 61476096 76285952 76285952 20729920 29286240 158646097 158646097 239257820 239257820 557944481 557944481 173089332 795422808 795422808 666055952 666055952 824534947 824534947 1059383542 1059383542 478335002 289434240 68280840 381057362 381057362 478603786 622937926 1016742585 1016742585 924910039 102826627 270533266 270533266 119283984 119283984 37097232 55053216 291537794 291537794 285376770 547430723 857939987 857939987 901956609 901956609 931743851 931743851 912800845 912800845 541492416 288507828 444908330 444908330 222710446 940689536 940689536 942719751 953810207 1015065040 1015065040 612124364 210766669 80907408 551856491 551856491 912733828 912733828 597288561 597288561 507973647 105050652 747119396 1051812665 1051812665 696555012 696555012 406970624 406970624 411678744 411678744 859568582 987430423 987430423 706236049 583174055 959632167 959632167 690961701 836627282 836627282 315046018 315046018 833112544 836691555 836691555 714248912 398583222 398583222 360950340 777768066 777768066 579685589 501227603 448452438 448452438 375107634 553709090 553709090 236957700 725708860 725708860 520347669 311480860 171158584 171158584 101592864 154155040 154155040 117853368 117853368 82363848 82363848 463454800 463454800 54871328 40758672 24167328 195566624 195566624 85592504 308383280 308383280 287100450 272230146 582739541 582739541 906067338 906067338 812006180 609361016 609361016 962075022 962075022 624828201 652609460 1023443869 1023443869 987943924 987943924 880918535 880918535 879339750 879339750 850041929 479272116 479272116 289800484 17861152 566470200 566470200 710611464 710611464 316154400 370243142 370246386 370246386 356843568 25180288 4335808 42108064 55667744 119218210 370808346 370808346 270610736 426247232 426247232 314574034 447053018 922611675 922611675 789940019 521920332 818837361 818837361 840216656 840216656 540865296 30215584 354091521 815929347 878193547 878193547 816023875 816023875 639247961 651756185 651756185 642933337 872432710 949035591 44557176 85334568 396024376 396024376 362419818 763894890 763894890 604262672 685939080 685939080 342278357 684844504 684844504 606803054 606803054 500961006 402403882 465116882 976015849 976015849 157110058 107818392 613752642 810902058 810902058 818355696 818355696 356570496 887884282 887884282 816369635 816369635 565995665 849448642 849448642 61283520 61283520 57222576 329553120 329553120 302438418 310827090 310827090 42352642 8519712 129045808 245096968 245096968 240532108 321071132 321071132 285297788 303226684 1046611599 1046611599 533405410 537368385 574688414 574688414 541139073 447911932 447911932 553780513 738333952 742854685 742854685 594116092 47067648 217452448 271455596 271455596 964763751 964763751 325664883 529531471 529531471 1062942399 1062942399 1062942399 796917881 796917881 1016243458 1016243458 922865770 853446006 867679799 867679799 447744146 474117966 740056752 740056752 756580880 756580880 341329214 341329214 220964256 220964256 122838392 132182208 132182208 116897208 344855818 352865280 475529216 475529216 350563170 297372736 488661842 1009139517 1009139517 356040872 487187502 802332533 802332533 403123379 991589940 991589940 826905733 991707413 991707413 810114710 423554307 536926464 756993452 756993452 615329761 229211168 64347772 46321872 17090592 59785680 59785680 210746182 337720322 471016878 471016878 821216898 821216898 194542699 489620584 489620584 480696654 656412417 656412417 142198436 170403028 170403028 821851024 821851024 823984241 838866954 951008336 1040966991 1056890847 1056890847 1007653401 1007653401 1032079394 1032079394 320053431 240384156 1057009827 1057009827 68567296 326652476 439374966 439374966 680190024 738931725 738931725 674716150 674716150 479334990 848432090 848432090 476716617 781600326 781600326 574412892 909164822 909164822 664011528 304349816 367295866 382156610 382156610 664052585 664052585 279631170 587359007 587359007 504631816 234981948 329339536 681826813 956301653 962855178 962855178 890315048 890315048 833692515 288047884 539002121 539002121 478370646 478370646 876872593 876872593 743975832 985797456 985797456 680329669 413275283 799872465 799872465 507840670 535693538 535693538 422498630 459118900 487926318 487926318 276551564 128053552 128053552 19075280 17241664 22027424 51366384 51366384 165283355 460448411 712014485 999811052 999811052 881930056 881930056 960569511 960569511 743126220 729281390 685258437 304051457 271105042 170595344 354339365 910100283 910100283 699276928 699276928 687349477 791531542 791531542 515414835 1032345024 1040727229 1040727229 927241817 604329026 604329026 738523968 738523968 916260400 916260400 132563932 132563932 634043777 844932853 844932853 710934933 855574530 855574530 518331924 234306556 176476236 463076904 768692882 915454518 915454518 495461498 495461498 336134154 281193820 528297918 896174477 1036934246 1036934246 952984105 676869527 676869527 639500432 581366033 601925953 601925953 1043112962 1043112962 759518739 759518739 92413708 834169446 834169446 765645165 417487222 213276145 682149189 682149189 420003911 268468518 268468518 815022356 815022356 619220960 849385608 849385608 225639299 349348640 349348640 160393252 965040247 965040247 1032614002 1032614002 778567959 778567959 606610050 543688065 372686859 962124288 962124288 762484264 302525098 302525098 298077665 816286187 816286187 626489145 939277275 939277275 716301849 716301849 691022252 668500937 902644746 902644746 607597764 677256837 809056840 809056840 135336772 171581521 922276125 922276125 671550805 954428163 978839615 978839615 909269555 909269555 927701904 927701904 346034144 344302922 296636840 28576608 95106408 95106408 264787728 264787728 234525736 108792096 144563980 192973544 192973544 114608856 262991336 262991336 246899908 205184468 208001544 208001544 119025688 180786416 180786416 120347544 118201032 118201032 71787056 57145776 279195698 279195698 108296522 108296522 296034344 296034344 958580992 958580992 491372275 498648942 498648942 222992226 20713248 258361104 614494864 653521881 798499536 798499536 536877056 537270273 629415088 650777817 973302409 973302409 949799751 338228354 338228354 135619096 442053132 442053132 813730446 813730446 138412164 739418880 739418880 320793680 476390248 476390248 66582596 252203090 477502350 477502350 273559026 285641768 357440682 755194639 755194639 577476482 924138415 924138415 957090855 957090855 910983892 910983892 1034344815 1034344815 963677645 741528333 204397836 481580148 481580148 732862726 732862726 421432837 161092370 50363424 50363424 334115952 334115952 397663234 397663234 655573704 879860480 879860480 850866368 850866368 785597912 785597912 780666512 750967117 750967117 949289412 949289412 638532633 638532633 992073526 992073526 733733505 546509386 826280125 826280125 422984395 669010196 669010196 548523814 670599683 670599683 760105727 760105727 1025846140 1025846140 445164002 79558728 28887649 955002883 955002883 808244489 624720676 269884300 269884300 86321448 134623436 134623436 6100484 69381902 680337984 680337984 676416395 412640781 273402694 439327888 439327888 106658718 72681472 42088512 42088512 9914384 22489188 161294740 161294740 193471344 193471344 135725840 2232576 134222084 253197848 398682506 516213296 516213296 450549462 426497574 214003816 608845801 608845801 114987076 129038200 517141396 1053562552 1053562552 1036255385 948193480 231261316 164372712 254522660 254522660 181218516 96942312 186651568 609477985 754129608 754129608 724952285 722077068 722077068 626953605 736936016 736936016 120480933 82133120 8388800 8388800 234895624 234895624 170342676 195625744 195625744 430932164 430932164 400625834 1027818922 1027818922 913518359 722216232 822816812 822816812 535442599 447292758 284200790 283503042 419295174 419295174 407694374 370738202 370738202 849851492 849851492 858780726 1000630647 1000630647 143137025 143780064 143780064 39676452 35165776 601232049 849087249 849087249 558112800 975402278 975402278 558104608 558104608 908077699 908077699 977832085 977832085 973603863 877010086 1028403733 1028403733 592579552 1038173609 1038173609 831270017 668215554 1005923319 1005923319 844667921 844667921 846201345 908331313 908331313 438304950 691012375 691012375 556638709 538456711 826278051 826278051 420820227 759365771 1007351469 1007351469 761739693 239215720 809221017 809221017 483582346 950952074 950952074 818569171 671204992 671204992 307788242 305605824 702436852 702436852 554658825 538703361 538149888 159105500 277878848 277878848 269947394 323273732 432851888 432851888 680474245 680474245 481610574 481610574 839076612 839076612 206679065 174661857 174661857 86169624 18295333 600519537 693350960 708886677 708886677 676352673 193281569 193281569 889464170 889464170 750142540 747200549 750307149 750307149 812948738 812948738 661708005 661708005 430847643 671256777 671256777 645791033 645791033 656077728 656077728 222730444 222730444 547233825 630464041 714672221 714672221 647758360 596350168 596350168 668411606 776204445 776204445 829046007 1027042091 1027042091 707193670 512657928 512657928 512598808 523356118 523356118 376574874 349832528 273863298 273863298 370160212 371392856 822814748 822814748 611871764 724204064 724204064 589391520 631312620 699800288 699800288 203666480 942781776 942781776 827067555 964296932 964296932 275794791 808504083 808504083 840093698 840093698 803213380 803213380 662884473 141194288 141194288 769131481 769131481 806402689 806402689 706540826 706540826 717226120 717226120 864416217 1062697102 1062697102 499264352 144180460 17437216 22154368 22154368 760076352 760076352 138969088 302063744 516657298 516657298 244130894 246027472 246027472 65169168 65169168 286892768 286892768 170342676 170342676 312293664 312293664 153509398 0 65330188 252320252 252320252 614013521 630643305 630643305 299420340 299420340 543236481 543236481 206285040 1013481766 1013481766 792728601 680211457 1067974780 1067974780 522190878 196683636 343546600 343546600 29101410 347214570 347214570 337992768 343964256 343964256 84139304 20620040 2435328 69871624 671750288 671750288 63190021 795422808 795422808 666055952 666055952 83895061 50608384 375855395 824588698 824588698 52746448 31592928 376835888 376835888 264571618 556963020 1016742585 1016742585 924910039 102826627 16782368 17432608 102568584 102568584 117512704 117512704 291537794 291537794 285376770 26915090 326659826 326659826 115597408 309547400 586922950 763762685 789110929 789110929 608736265 76202121 256188114 432235236 432235236 940689536 940689536 942719751 953810207 953810207 612124364 612124364 327870934 224690404 551856491 551856491 888556480 905189712 905189712 597288561 507973647 417416196 967176726 1051812665 1051812665 678590376 739708271 925425166 925425166 148919296 148919296 858228882 991940535 991940535 706236049 583174055 959632167 959632167 181928646 729960993 729960993 169922672 169922672 833112544 836691555 836691555 543418664 347625216 1058372162 1058372162 294049890 294049890 30767746 889364522 889364522 607378305 607378305 814781408 814781408 580009996 658641081 658641081 101806609 68176136 229933221 604293129 649072833 651559352 651559352 912966403 912966403 255221137 524997494 524997494 398560029 545075073 947562889 947562889 585225202 211017898 202004296 308383280 308383280 287100450 247149056 267444796 267444796 60270736 211093040 211093040 609361016 609361016 760328028 760328028 247292589 134251544 699941753 699941753 769671408 957945813 957945813 265481340 784977057 784977057 679792900 679792900 304999337 689178917 689178917 550531594 574812200 802886496 802886496 719458773 649269340 365307090 111618072 84159360 59023488 12935168 42108064 42108064 119218210 370808346 370808346 270610736 379137056 379137056 407383040 407383040 306323842 789940019 789940019 521920332 376890914 376890914 840216656 840216656 540865296 30215584 354091521 815929347 878193547 878193547 816023875 816023875 639247961 651756185 651756185 642933337 872432710 949035591 0 0 0 849413120 849413120 763894890 763894890 230951000 281553596 350039754 648097113 684844504 699476973 699476973 500961006 500961006 273288806 98164556 976015849 976015849 500840242 282397880 392571984 392571984 306448536 276897858 316564370 363174992 363174992 60832448 60832448 31580640 16352352 39062416 42991680 61283520 165910596 165910596 363895778 487012894 487012894 330707774 462293372 462293372 220870416 461906034 461906034 218098584 240532108 240532108 128674492 110611000 118015032 118015032 219823152 219823152 197609324 197609324 151294436 224412944 224412944 159753412 147899076 8749700 9511424 142896320 147639492 183613700 183613700 137049348 217385899 964763751 964763751 468104835 529531471 529531471 1062942399 1062942399 1062942399 796917881 796917881 932196884 932196884 890409526 940617827 940617827 538178049 818483202 818483202 740056752 740056752 756580880 756580880 171874384 171874384 208642884 208642884 121914256 132182208 132182208 116897208 344855818 478676224 478676224 475529216 350563170 297372736 488661842 488661842 133492344 356040872 383100796 439789172 439789172 288422060 973078551 973078551 826905733 826905733 575272070 457322939 762516909 762516909 774231352 774231352 717413541 769993240 769993240 223820460 672985385 839388344 839388344 1014368143 1014368143 826536099 823317027 852100251 852100251 556019568 707266178 707266178 489480530 443366740 359204982 170517780 170517780 149996484 821851024 821851024 272107968 772792395 951008336 1040966991 1040966991 696279673 1007653401 1007653401 1032079394 1032079394 621992833 240384156 1057009827 1057009827 147065860 326652476 439374966 439374966 891323592 891323592 486859864 486859864 145626776 250160604 250160604 414328840 414328840 210203990 77688092 7982868 7728000 134250496 235144448 235144448 367295866 367295866 338045704 618999650 618999650 866876006 866876006 504631816 526429348 526429348 447545756 329339536 478153152 962855178 962855178 883499307 883499307 815317288 815317288 627594883 717394399 717394399 416694528 317016450 413212998 413212998 403063556 403063556 141609344 141609344 431313252 431313252 507840670 535693538 535693538 390302040 390302040 78378312 201871756 201871756 320175776 418205588 418205588 22090304 29383168 70553448 70553448 165283355 165283355 256116924 999811052 1070072936 1070072936 900730647 960569511 960569511 729281390 729281390 485410904 131288040 131288040 170595344 170595344 168176920 523995000 699276928 699276928 687349477 791531542 791531542 515414835 1032345024 1040727229 1040727229 319476786 319476786 113345744 113345744 67414016 103089176 103089176 56096488 69062244 634043777 844932853 844932853 710934933 855574530 855574530 519445470 519445470 322665126 463076904 768692882 915454518 915454518 167930372 167930372 325156248 325156248 139182390 896174477 1036934246 1036934246 952984105 964976838 964976838 453331172 478430153 532156817 532156817 1043112962 1043112962 759518739 759518739 92413708 834169446 834169446 765645165 417487222 213276145 989506177 989506177 420003911 492925996 960026230 960026230 815022356 197341428 849385608 849385608 822023525 822023525 546158593 546158593 755060797 773219008 773219008 740893965 778567959 778567959 606610050 543688065 436883106 962124288 962124288 762484264 390604064 390604064 298077665 816286187 816286187 626489145 939277275 939277275 716301849 716301849 316432721 138970155 788594998 788594998 940057602 940057602 706355857 1052915287 1052915287 311434329 276668816 279151120 313783122 313783122 978839615 978839615 909269555 909269555 927701904 927701904 346034144 344302922 296636840 41016144 552601417 552601417 264787728 264787728 119935528 539088912 587849941 717238320 717238320 114608856 711075800 748369485 748369485 205184468 143100000 143100000 119025688 688674153 749264436 749264436 731714357 575696608 150014592 57145776 57145776 52693696 69251168 126820697 901187401 901187401 958580992 958580992 672891771 672891771 704370250 704370250 332663030 950329655 950329655 653521881 653521881 729875072 743485796 743485796 572999952 484990340 1034148904 1034148904 850918545 338228354 682171465 949913931 949913931 572440124 813730446 813730446 338380155 606075973 750482181 826124396 826124396 296983220 66582596 252203090 477502350 477502350 273559026 285641768 357440682 755194639 755194639 577476482 924138415 924138415 957090855 957090855 791827597 791827597 1034344815 1034344815 507937265 838662602 838662602 735574773 100396494 189504468 272111437 853806859 853806859 572524562 369277954 310642770 310642770 397663234 397663234 655573704 879860480 879860480 850866368 850866368 637489137 780666512 780666512 1024641573 1024641573 949289412 949289412 638532633 638532633 768137070 768137070 733733505 289763361 826280125 826280125 277231894 669010196 669010196 775504752 775504752 735052679 533748807 39388848 320497106 320497106 307526930 307526930 291553698 222839112 222839112 163661220 73415072 413415745 942619271 942619271 810878855 683672390 39987536 69381902 881702937 881702937 1007130692 1007130692 707262490 476971266 444936056 444936056 291046476 124585384 124585384 123504824 100953728 8552960 22596224 168048544 746205513 746205513 112680536 630097501 630097501 483309596 516213296 516213296 450549462 220137970 214003816 608845801 608845801 114987076 129038200 517141396 1053562552 1053562552 1036255385 948193480 527763128 527763128 134858848 71438472 93399976 93399976 186651568 219586112 227066988 227066988 209717504 598704504 626953605 626953605 736936016 736936016 154738977 238688028 626235712 626235712 541395040 234895624 205328148 205328148 182329044 182329044 491595262 491595262 1027818922 1027818922 913518359 537271308 822816812 822816812 814231746 814231746 541299841 364986369 391151936 391151936 191418721 191418721 137618180 137618180 571836949 582216773 707754321 707754321 680881540 680881540 194568708 720656753 720656753 22945328 37748880 555695776 558112800 558112800 541403265 558104608 558104608 908077699 908077699 977832085 977832085 973603863 67947535 305471389 689701896 689701896 423431850 831270017 831270017 668215554 1005923319 1005923319 204826393 271163822 369428743 908331313 908331313 346106009 346106009 556638709 942850438 1023525925 1023525925 493943976 897390978 897390978 876621997 876621997 147373696 753705668 844065773 844065773 483582346 610707008 1049661888 1049661888 671204992 671204992 2058113 60107376 702436852 702436852 25471233 45467760 45467760 18899744 277878848 277878848 269947394 299466080 299466080 9836738 680474245 680474245 145957728 145957728 713740293 713740293 564446705 564446705 730645280 730645280 543780180 600519537 600519537 146129392 676352673 676352673 193281569 193281569 889464170 889464170 750142540 833663394 833663394 750307149 812948738 812948738 240076296 172878996 201465928 201465928 91452260 22918312 22918312 162273060 162273060 222730444 222730444 547233825 630464041 714672221 714672221 647758360 95678777 34734968 8585220 142680132 155428868 178156964 196826960 196826960 113262884 470286340 470286340 512598808 512598808 376574874 376574874 349832528 273863298 273863298 370160212 371392856 371392856 611871764 708052224 724204064 724204064 543372956 616303977 699800288 699800288 142449157 787199029 787199029 961639711 964296932 964296932 275794791 808504083 808504083 840093698 840093698 803213380 803213380 662884473 570263072 190890420 769131481 769131481 410690916 410690916 706540826 706879828 717226120 717226120 201344269 159451328 701245444 701245444 144180460 138412160 138412160 22154368 760076352 760076352 155293728 343982154 499204244 499204244 344904792 275303688 740304353 740304353 225702048 694493825 694493825 170342676 170342676 104116504 858845185 858845185 302377234 607414553 607414553 232915336 223352908 198205572 687183214 687183214 365299798 365299798 309934244 309934244 761942528 1006755855 1006755855 421646592 1067974780 1067974780 522190878 349045866 343546600 343546600 29101410 347214570 348564864 348564864 343964256 343964256 151931089 151931089 178579540 237709053 671750288 671750288 63190021 671813744 730408053 730408053 175866965 50608384 50608384 914864634 914864634 824588698 801569471 739735584 376835888 376835888 216387224 110021476 194828448 194828448 21037728 21626912 21626912 19272704 102568584 102568584 117512704 117512704 104931504 117490184 117490184 51953744 92571688 92571688 115597408 309547400 586922950 763762685 789110929 789110929 608736265 440669260 990053130 990053130 432235236 737878820 1012984797 1012984797 959056195 408211269 215195034 327870934 327870934 224690404 371317122 371317122 888556480 905189712 905189712 356892682 356892682 417416196 967176726 967176726 951339809 678590376 739708271 925425166 925425166 148919296 148919296 286560405 991940535 991940535 602237859 556281412 433850976 423888946 806912320 806912320 404916736 421322514 421322514 833789920 833789920 289845955 346163208 346163208 1058372162 1058372162 888443577 298133683 547625952 889364522 889364522 607378305 875567914 875567914 814781408 580009996 658641081 658641081 416387508 370147468 261402760 604293129 765463272 765463272 654215853 912966403 912966403 255221137 524997494 524997494 398560029 545075073 947562889 947562889 585225202 347393568 347393568 579829341 579829341 456604470 320113446 334204987 1059012159 1059012159 352840880 294651520 414865532 790938438 790938438 762948692 762948692 929605484 929605484 339134501 300173206 957945813 957945813 265481340 784977057 784977057 1053885828 1053885828 1008252727 1029386647 1029386647 476771759 574812200 879965883 879965883 872485186 872485186 127283888 111618072 84159360 59023488 60033440 60033440 65293474 238890531 1046225613 1046225613 916467119 901517163 249833530 407383040 407383040 306323842 890319230 890319230 920892247 920892247 780967729 986035875 986035875 563285600 16128640 642260577 642260577 273356218 82059272 82059272 71702664 108139416 116609944 116650968 116650968 75498120 75498120 271450206 522524946 522524946 849413120 849413120 755236893 755236893 688130085 281553596 350039754 648097113 648097113 699476973 878707120 922746939 922746939 291343466 503119342 503119342 500840242 500840242 357569274 392571984 392571984 306448536 276897858 316564370 363174992 363174992 112574544 60832448 23684768 20210208 16533632 33027042 33027042 165910596 165910596 363895778 487012894 487012894 330707774 462293372 462293372 220870416 461906034 461906034 275253952 280760130 280760130 379617722 379617722 380769114 380769114 320472424 6427008 6545408 151294436 151294436 160788160 160788160 159753412 147899076 8749700 12951952 142896320 147639492 183613700 183613700 137049348 320235912 723930112 723930112 711796840 711796840 527540909 397171904 397171904 392352186 503846484 503846484 329945452 890409526 890409526 940617827 940617827 538178049 818483202 818483202 639811227 695240476 695240476 865605388 865605388 758552150 188141576 77352384 77352384 35734368 35734368 235901920 235901920 478676224 478676224 217579854 103024920 117702944 117702944 582726329 795063637 795063637 143782828 439789172 439789172 288422060 269034498 272774144 272774144 4793472 134268036 457322939 762516909 762516909 774231352 774231352 717413541 769993240 769993240 223820460 672985385 839388344 839388344 1014368143 1014368143 826536099 823317027 852100251 852100251 556019568 707266178 707266178 489480530 866445843 866445843 339487756 339487756 1039594278 1039594278 477484563 873413643 873413643 503771149 201507860 201507860 55596216 273586228 469897230 469897230 621992833 621992833 87607424 621550633 621550633 147065860 446748816 446748816 905994067 905994067 891323592 620157897 620157897 539251400 484577742 1033977070 1033977070 210772757 785673414 785673414 130603199 159832252 348360775 798164200 798164200 127010352 338045704 338045704 1035376652 1035376652 866876006 866876006 303259441 526429348 526429348 447545756 973490515 973490515 388035012 551837029 551837029 541626560 815317288 815317288 627594883 806391187 806391187 416694528 181852884 413212998 413212998 838534948 838534948 991001158 991001158 705168405 521019277 487926318 696484504 696484504 364923368 493520356 1010850288 1010850288 844546811 731435754 418205588 418205588 299575394 290534464 70553448 70553448 125588584 125588584 48370128 48370128 1070072936 1070072936 900730647 206997076 206997076 30561448 184818308 949863504 1057087551 1057087551 520057823 288107558 286298738 523995000 523995000 891153963 891153963 743286409 701313065 750065901 750065901 1014398813 1014398813 753013197 753013197 463510256 591641642 591641642 800073716 800073716 256922544 256922544 206512416 254548440 254548440 404095212 404095212 367271244 519445470 519445470 322665126 322665126 462769770 480872222 480872222 282397858 282397858 325156248 325156248 139182390 244334884 668992360 668992360 77627881 964976838 964976838 704932039 704932039 532156817 532156817 618830849 618830849 529271934 391523488 160905828 792198776 792198776 552825920 746325592 746325592 989506177 989506177 985047173 985047173 960026230 960026230 675301846 983701927 983701927 967054503 967054503 822023525 546158593 546158593 755060797 755060797 740893965 740893965 288033370 288033370 210787120 170418230 436883106 436883106 285640720 303962914 390604064 390604064 93871050 357474088 357474088 281020488 283912426 283912426 697078416 799029403 799029403 134707594 788594998 788594998 940057602 940057602 706355857 1052915287 1052915287 311434329 276668816 112772378 310501458 310501458 233005846 217067876 110414424 101299968 52495872 9988208 36873456 53001408 53001408 537026465 556548417 556548417 74256776 119935528 119935528 539088912 587849941 717238320 717238320 659083373 711075800 748369485 748369485 171084677 117508760 222624256 549256956 688674153 749264436 749264436 731714357 575696608 150014592 7789440 270022322 321286712 396357170 396357170 901187401 901187401 827630131 537358738 672891771 672891771 704370250 704370250 332663030 950329655 950329655 782390121 782390121 911434514 951250292 951250292 749410069 786192023 1054380168 1054380168 449418437 43614237 682171465 949913931 949913931 572440124 581153561 613720372 613720372 606075973 750482181 826124396 826124396 789126471 733213684 733213684 367658036 340280810 298844842 457852092 457852092 167773644 922719904 922719904 374488546 374488546 148375236 148375236 144212160 650137689 676513152 676513152 1052919022 1052919022 838662602 735574773 554247168 189504468 272111437 853806859 853806859 665879264 369277954 310642770 310642770 42349840 66973680 115345200 115345200 98640360 468743312 468743312 334082940 700853344 700853344 1024641573 1024641573 869023260 436351772 436351772 859083124 859083124 823136772 823136772 671354312 671354312 432676118 277231894 373295130 373295130 775504752 775504752 735052679 320766739 847731184 847731184 843097632 821422145 821422145 835401056 835401056 805972163 275061123 287383842 413415745 942619271 942619271 810878855 683672390 544986565 638862856 881702937 881702937 1007130692 1007130692 707262490 476971266 444936056 444936056 291046476 124585384 124585384 123504824 100953728 136579332 187290244 187290244 746205513 746205513 112680536 630097501 630097501 483309596 397214128 397214128 278397822 675512824 695464869 943943747 943943747 565392225 87139528 33081312 14198688 320938290 392522016 392522016 527763128 527763128 84050160 71438472 172081488 172081488 154430240 738985037 738985037 594839192 712263160 712263160 749404181 749404181 786971868 786971868 747245968 238688028 626235712 626235712 541395040 188221808 205328148 205328148 182329044 198271231 903475131 1033401279 1033401279 850079512 504131616 537271308 591489213 591489213 814231746 814231746 541299841 364986369 602456289 602456289 421142129 421142129 137618180 549532869 571836949 582216773 707754321 707754321 683600668 680881540 194568708 720656753 720656753 221840881 219430400 796004608 796004608 540288482 286736568 551819523 551819523 1022422336 1022422336 675054037 807179394 807179394 119444012 354566658 689701896 689701896 423431850 423431850 730858472 730858472 114559127 912269362 1006709037 1006709037 570802485 319565068 809501186 809501186 731121825 586416215 942850438 1023525925 1023525925 493943976 897390978 897390978 339649421 786102060 786102060 753705668 978734569 978734569 437594646 437594646 1049661888 1049661888 571396358 409980179 709569812 1007106691 1007106691 1026691202 1026691202 604817544 604817544 349729418 349729418 29679840 237093474 368982430 368982430 338167050 293874952 669091036 699008289 699008289 539677953 625266588 625266588 698679680 730645280 730645280 543780180 180930784 152691108 146129392 177009604 177009604 26139744 26139744 25575712 27804992 27804992 833663394 833663394 550761153 268509218 268509218 705876501 705876501 275774643 739660333 739660333 776817333 776817333 724562997 662900640 232016300 25186400 19995968 657532936 658245481 658245481 624111632 95678777 34734968 8585220 142680132 155428868 178156964 196826960 200401908 200401908 470286340 470286340 336069642 167788864 178307412 178307412 160195612 188485428 209370684 209370684 174322068 147117029 593588384 708052224 757484821 757484821 654459176 616303977 738674837 738674837 190695961 239785116 640410658 961639711 961639711 722276196 832707617 832707617 749996877 749996877 379921989 210955870 588642820 588642820 570263072 190890420 200005236 200005236 943393189 943393189 591587923 945533087 1019434710 1019434710 909676818 873619205 820384647 701245444 58722360 138412160 138412160 5217316 608977120 608977120 875144339 875144339 343982154 795939921 795939921 761038833 761038833 740304353 720707696 720707696 809508179 809508179 630058345 630058345 858845185 943508999 1045767473 1045767473 808600083 601919921 493929390 742671288 742671288 687183214 571350033 571350033 571350033 456264775 761942528 1006755855 1006755855 285388813 71307520 436736316 436736316 391153120 391153120 241191756 75288456 75288456 348564864 348564864 87351328 87351328 151931089 151931089 178579540 565632352 612945473 612945473 259072956 671813744 730408053 730408053 177353480 86378896 40114472 914864634 914864634 801569471 801569471 1041645869 1041645869 908835564 908835564 588421729 810212485 810212485 51806369 51806369 50336928 50336928 72821664 72821664 68557320 69410944 69410944 36281672 51953744 51953744 43566672 60503664 160886784 411130393 620943391 620943391 616878165 574668945 536887440 569693222 990053130 990053130 819599043 819599043 1012984797 1012984797 959056195 904446209 904446209 216416732 216416732 217358928 239616920 310790552 538221066 538221066 368085019 356892682 356892682 138248708 270149488 328129650 328129650 1021572764 1021572764 167499111 75150760 177526912 177526912 591432850 591432850 410593158 410593158 139461684 190582304 190582304 806912320 806912320 404916736 421322514 553830401 833789920 833789920 562239840 545961248 389017512 695618520 888443577 888443577 328675342 547625952 547625952 154190628 661084564 875567914 875567914 544434986 419451464 434168428 434168428 416387508 370147468 261402760 606365952 765463272 765463272 654215853 234638940 648809496 696708457 696708457 789044345 789044345 252006977 85199368 260128860 260128860 347393568 347393568 579829341 579829341 456604470 595788288 595788288 1059012159 1059012159 761141342 761141342 633208935 790938438 790938438 762948692 762948692 929605484 929605484 339134501 300173206 300173206 224530440 469862518 780479500 780479500 1053885828 1053885828 1008252727 1029386647 1029386647 476771759 722020002 879965883 962070183 962070183 872485186 811204642 811204642 43067888 43067888 60033440 60033440 65293474 414216289 1046225613 1046225613 916467119 1013720050 1013720050 466357494 174146824 174146824 890319230 890319230 920892247 920892247 780967729 986035875 986035875 563285600 18770592 642260577 642260577 817572371 817572371 812176779 812176779 608748681 608748681 608594073 608594073 819969026 985347927 287638897 587606045 697179261 898505839 898505839 977541130 977541130 688130085 50337792 1058738417 1058738417 995099611 995099611 878707120 922746939 922746939 576783313 503119342 1069627529 1069627529 357569274 357569274 129233784 129233784 94437904 94441920 94441920 88289448 112574544 112574544 22660416 35703600 35703600 22282496 31475520 31475520 59368704 59368704 110631224 110631224 42735936 42735936 389427530 389427530 102049280 338763802 338763802 306973842 280760130 280760130 379617722 379617722 380769114 380769114 320472424 114460240 46371056 105345144 105345144 76562560 76562560 30199328 30199328 2459360 12951952 288535298 288535298 289622272 289622272 211717636 320235912 420657733 420657733 711796840 711796840 527540909 909746769 909746769 607192841 610818779 610818779 405975140 673204557 673204557 1024920236 1024920236 819202755 341661185 639811227 639811227 695240476 695240476 865605388 865605388 758552150 190113420 253062024 253062024 172305592 130948344 235901920 436320682 478676224 484577070 484577070 255195336 376876088 486059214 582726329 889528071 889528071 466519354 838526015 838526015 873869321 873869321 497169430 890765979 890765979 616859406 531418110 531418110 697340364 697340364 578863185 688638781 749572612 749572612 152566308 596294677 596294677 945551658 945551658 863239554 258073020 242223236 582979884 582979884 641977792 1058628622 1058628622 427855046 866445843 866445843 462159940 811141166 1039594278 1066591353 1066591353 873413643 873413643 503771149 1007177766 1007177766 757224497 757224497 754162589 702751546 702751546 473002137 669322685 669322685 760498350 760498350 657512576 446748816 927732439 927732439 567593478 880695693 998514260 998514260 484577742 1033977070 1033977070 927532971 785673414 785673414 130603199 159832252 348360775 798164200 798164200 301341666 396761126 401744311 1035376652 1035376652 961290417 610902475 610902475 369141680 369141680 303857796 973490515 973490515 172493250 551837029 551837029 675548039 675548039 72654637 652232332 806391187 806391187 850192389 850192389 848509401 848509401 838534948 838534948 991001158 991001158 705168405 521019277 487926318 696484504 696484504 364923368 493520356 1010850288 1010850288 844546811 731435754 563126368 299575394 299575394 290534464 37885424 37885424 253814611 253814611 257297148 267439855 267439855 869532992 869532992 864060427 864060427 809549955 84165120 949863504 1057087551 1057087551 554382369 554382369 286298738 293689354 293689354 891153963 891153963 818427814 881456524 881456524 750065901 1014398813 1014398813 753013197 753013197 463510256 591641642 591641642 800073716 800073716 313617488 362359672 362359672 79055408 34219008 404095212 404095212 367075818 361894506 361894506 315764096 315764096 462769770 494234780 494234780 282397858 282397858 89510432 135138460 135138460 802366855 802366855 814790091 919678719 919678719 679567540 704932039 1058287736 1058287736 994474639 994474639 529271934 529271934 391523488 616770177 616770177 552825920 552825920 746325592 746325592 684492993 684492993 985047173 985047173 952504822 952504822 675301846 983701927 983701927 967054503 967054503 286531792 177153060 188814576 188814576 46662864 13108416 16067148 210054400 210054400 135950336 135950336 56487348 191440308 191440308 170634656 25471808 82739560 97216992 357474088 357474088 354677034 338274624 383879194 383879194 799029403 799029403 134707594 410364039 628556724 717558288 717558288 674110725 776739037 776739037 716705105 585498881 4756608 4756608 10551296 100707072 110414424 110414424 102097344 52495872 15111504 61350512 61350512 59835760 537026465 556548417 556548417 133461992 133461992 34202640 60857680 60857680 620895668 659083373 659083373 607787145 236860496 201620164 201620164 177186200 222624256 549256956 549256956 77573401 3119104 2410752 939264 6685696 7216512 270022322 321286712 396357170 396357170 300977720 483201668 483201668 122473656 201901068 449843412 449843412 203561152 549886400 549886400 751997133 782390121 782390121 911434514 951250292 951250292 749410069 786192023 1054380168 1054380168 816380372 816380372 504741643 0 28843312 755518588 755518588 725641513 725641513 186731081 85609508 278569033 789126471 789126471 957367232 957367232 901251878 1054098347 1054098347 478421013 1043088678 1043088678 922719904 922719904 845185867 845185867 344147259 148375236 144212160 748292618 748292618 668342455 1052919022 1052919022 499683551 554247168 637996040 637996040 442642513 586155113 665879264 665879264 23085592 2097408 269009200 308852992 308852992 86849488 820770181 820770181 584106937 458228666 334082940 283599936 584863128 905842273 905842273 869023260 436351772 436351772 859083124 859083124 823136772 823136772 671354312 772151325 772151325 411505089 464788964 464788964 205002715 8392704 845104539 845104539 847731184 847731184 918700312 918700312 843254153 843254153 835401056 805972163 275061123 287383842 287383842 275784352 294655490 584074512 584074512 544986565 638862856 638862856 689607984 689607984 507750932 507750932 249038028 249038028 206373952 106030248 120947200 120947200 2483200 2483200 136579332 187290244 187290244 173743152 168171412 73833600 106880664 466888704 466888704 397214128 397214128 1007957127 1007957127 695464869 943943747 943943747 565392225 518181342 518181342 629560248 629560248 615200073 539752220 180041556 257311292 257311292 547357931 547357931 294294630 929434153 934975710 934975710 594839192 712263160 712263160 874329692 874329692 786971868 786971868 747245968 240460572 240460572 177118552 89414316 16909408 16909408 8913984 260872506 340772950 903475131 1033401279 1033401279 850079512 657593145 545919648 591489213 591489213 566362504 832922561 832922561 833234752 833234752 807085698 421142129 421142129 552601541 811140421 811140421 544373405 544373405 683600668 683600668 606151168 25814112 647892560 647892560 221840881 219430400 796004608 796004608 540288482 553713760 553713760 551819523 1022422336 1022422336 675054037 961843238 961843238 723390515 768230426 768230426 667223262 822163209 910834884 910834884 752223008 809509323 912269362 1006709037 1006709037 570802485 340265090 809501186 809501186 731121825 586416215 482702247 627013864 756280461 756280461 739772161 691820033 633729737 786102060 786102060 561089364 978734569 978734569 437594646 437594646 508602887 571396358 571396358 409980179 709569812 1007106691 1007106691 1026691202 1026691202 604817544 604817544 361996872 361996872 353860538 320025138 368982430 368982430 338167050 690242641 690242641 699008289 699008289 539677953 625266588 625266588 698679680 698679680 31735888 31735888 65795568 65795568 50466864 50466864 58745553 994104933 994104933 319418487 808105063 808105063 492009801 606390537 606390537 904652414 904652414 705876501 705876501 275774643 739660333 739660333 776817333 776817333 724562997 662900640 233029960 233029960 218103852 704846452 740167233 740167233 638965784 638965784 88919208 107881560 107881560 95155560 134841056 194594176 200401908 200401908 480280720 480280720 384393566 118029466 190928500 190928500 190016704 151394340 209370684 209370684 238068004 238068004 593588384 694413340 757484821 757484821 654459176 557114284 738674837 738674837 640031001 640031001 306200646 547578932 547578932 816528416 841034880 841034880 675683569 172097541 279645527 279645527 256967345 256967345 575164712 575164712 153387904 153387904 943393189 943393189 591587923 945533087 1019434710 1019434710 909676818 873619205 820384647 469893389 340790352 626278601 793547814 936514299 1004012753 1004012753 1003209411 875144339 338400090 795939921 795939921 761038833 761038833 589225341 720707696 720707696 809508179 809508179 630058345 630058345 411133496 943508999 1045767473 1045767473 808600083 601919921 493929390 742671288 742671288 571350033 571350033 571350033 571350033 456264775 471916929 832790555 832790555 543228372 543228372 541213092 423657900 391153120 391153120 379062912 75288456 336660802 336660802 352811976 352811976 283554152 23632288 31555456 67388488 565632352 612945473 612945473 259072956 637539080 725815945 725815945 231969725 319096930 614795469 614795469 740331792 740331792 652587996 1041645869 1041645869 908835564 908835564 588421729 810212485 810212485 545673328 122209049 315655610 315655610 115366064 16728000 16728000 80160130 312939722 344563034 344563034 601131667 642140169 642140169 474224421 474224421 620943391 620943391 616878165 720371805 720371805 569693222 569693222 811996628 819599043 819599043 454738069 427868262 613026890 904446209 904446209 649609965 649609965 263807505 736684186 845163738 845163738 619973577 613755483 850717689 1027154265 1027154265 980159895 851824565 328129650 1021572764 1021572764 979374208 850695012 177526912 411556628 591432850 591432850 410593158 410593158 567051411 567051411 451987414 615006730 615006730 741119499 741119499 941221381 941221381 562239840 826817410 826817410 630273602 401355226 459461046 969952514 969952514 972067479 972067479 154190628 661084564 661084564 544434986 544434986 80089088 80089088 24431520 64114960 64114960 139815893 736430117 736430117 560204193 241982221 241982221 648809496 696708457 696708457 789044345 789044345 538089481 604164105 1065668700 1065668700 330616324 330616324 236876474 469448694 834548048 834548048 595788288 478811214 478811214 761141342 761141342 633208935 240799764 388210808 388210808 683077684 722630699 932328140 932328140 859198168 859198168 349963084 469862518 780479500 780479500 1015230810 1015230810 706740501 360919311 149455036 812332208 812332208 722020002 962070183 962070183 561723297 811204642 811204642 323039840 11709120 7694848 9773120 14779136 414216289 731110951 897491541 897491541 1013720050 1013720050 954468807 847512299 854528451 854528451 136593239 136935040 136935040 13217668 12982464 9572928 18770592 18770592 15088736 364840921 817572371 817572371 812176779 812176779 608748681 608748681 608594073 608594073 819969026 985347927 287638897 587606045 697179261 898505839 898505839 977541130 977541130 335939735 73338572 1058738417 1058738417 995099611 995099611 659975336 305786129 576783313 576783313 188883008 1069627529 1069627529 502870614 272638976 16826400 16826400 16416 94441920 94441920 88289448 93415424 93415424 14696608 35703600 35703600 31746496 30583968 30583968 59368704 59368704 110631224 110631224 42735936 42735936 120456488 120456488 102049280 309856024 309856024 512042308 512042308 277905904 277905904 236986136 8390672 53646184 114460240 114460240 149479648 165746320 165746320 76562560 76562560 30199328 30199328 2459360 80428296 288535298 288535298 289622272 289622272 211717636 282640128 420657733 695838262 695838262 672690885 953174745 953174745 909746769 607192841 610818779 610818779 405975140 673204557 673204557 1024920236 1024920236 819202755 469014020 501223590 501223590 423756270 812274110 812274110 107252788 190113420 190113420 253062024 253062024 172305592 130948344 191138032 436320682 478676224 484577070 484577070 255195336 376876088 486059214 486059214 889528071 889528071 466519354 838526015 838526015 873869321 873869321 775823333 890765979 890765979 728657936 728657936 531418110 586793780 781165624 781165624 66196464 158957408 158957408 152566308 596294677 596294677 960634634 960634634 863239554 503424791 503424791 582979884 582979884 641977792 1058628622 1058628622 427855046 103585392 103585392 462159940 811141166 811141166 1066591353 1066591353 909433774 909433774 561987349 1007177766 1007177766 757224497 757224497 754162589 702751546 702751546 473002137 669322685 905185688 905185688 760498350 657512576 491522944 927732439 927732439 420251768 880695693 998514260 998514260 428085743 906240538 927532971 927532971 211423667 512624120 512624120 195035508 128319508 121513994 341640962 341640962 396761126 448675466 866466231 961290417 961290417 610902475 610902475 593422349 777834141 777834141 391122968 391122968 306369282 333873398 333873398 675548039 675548039 119429632 652232332 706773533 772979841 850192389 850192389 848509401 848509401 642863386 584631480 774152830 834005859 834005859 454706237 407969062 690556432 690556432 452987087 640519556 873883635 873883635 278599271 563126368 563126368 292693312 142221188 158520736 158520736 135971840 253814611 253814611 257297148 267439855 1063808748 1063808748 869532992 864060427 864060427 809549955 519591578 69128276 115134168 553767936 554382369 554382369 1284112 9437760 269684642 475846306 818427814 818427814 881456524 881456524 366483562 335368896 335368896 386536506 386536506 377668704 36347632 36347632 109104040 109104040 313617488 523678752 523678752 354352690 354352690 92819530 12323336 329927242 329927242 251847288 315764096 332465846 332465846 494234780 494234780 468528630 353645346 353645346 402964524 402964524 802366855 802366855 814790091 919678719 919678719 625074221 625074221 1058287736 1058287736 994474639 994474639 67697359 763609588 763609588 616770177 616770177 550633521 550633521 771325497 771325497 147065028 836592452 836592452 813871863 952504822 952504822 557305863 686099697 686099697 779748070 779748070 338204539 801803044 801803044 201901068 202411558 202411558 1030271984 1054867167 1054867167 1048775687 827879315 427392049 137391524 22157458 293540018 293540018 334681410 334681410 352892072 354677034 354677034 338274624 398622936 398622936 558036288 568927713 568927713 91349928 167839573 585830293 674110725 674110725 545200784 716705105 716705105 585498881 596902657 596902657 695356209 695356209 126915432 112511832 102097344 117645488 117645488 86717384 108213448 108213448 563593904 618792961 618792961 133461992 133461992 34202640 60857680 60857680 50804784 565875152 565875152 683673612 683673612 616827081 202861652 202861652 190258740 790507392 790507392 699182548 721924405 721924405 583014624 172501440 440838528 517270166 517270166 95785438 86192424 85120696 35565544 154276644 162011432 162011432 449843412 449843412 203561152 549886400 549886400 41943184 56681172 209915972 236981252 415156500 415156500 479958284 479958284 839167560 839167560 816380372 816380372 678208796 1050142083 1050142083 791520115 755518588 725641513 725641513 864170737 864170737 1022089314 1022089314 4581004 957367232 957367232 901251878 1054098347 1054098347 478421013 1043088678 1043088678 832388978 832388978 845185867 845185867 441789078 441789078 47052144 748292618 748292618 668342455 1018344356 1018344356 701121504 625026278 678497683 678497683 644614598 482609358 148637194 324537954 324537954 304966194 360517272 360517272 355760824 358073762 820770181 1019290023 1019290023 525936318 563000989 1029141570 1029141570 905842273 905842273 774378365 629611850 604977250 824303880 891498940 891498940 75736290 75736290 772151325 772151325 411505089 464788964 876752010 876752010 421768765 845104539 845104539 646800936 388369074 918700312 918700312 843254153 843254153 809705731 891416961 891416961 627526180 275251746 762353455 1019944975 1019944975 817700807 817700807 909397202 909397202 857582660 689607984 1035373046 1035373046 470984338 528074128 528074128 377243794 286573336 120947200 64554096 42307152 42256464 42256464 48443856 73274376 73274376 67772040 71584288 466888704 466888704 403060876 403060876 1007957127 1007957127 82973640 670052894 670052894 481460314 518181342 795636717 795636717 629560248 615200073 539752220 390254778 320489096 257311292 547357931 547357931 294294630 929434153 934975710 934975710 510694915 555271322 703759845 874329692 874329692 715311004 715311004 682414166 240460572 240460572 177118552 89414316 16909408 16909408 8913984 260872506 340772950 376180122 376180122 598941768 657593145 657593145 545919648 545919648 831065678 831065678 832922561 832922561 833234752 833234752 807085698 57198000 413206148 941806851 941806851 852187279 778381828 778381828 710548184 715457360 715457360 147403776 689285121 689285121 60445028 138024708 682431268 682431268 439126382 606915768 606915768 545259585 394739862 298092082 396356618 961843238 961843238 723390515 768230426 768230426 667223262 822163209 910834884 910834884 752223008 809509323 809509323 721445265 71385772 944763289 944763289 809669409 964839842 966138471 966138471 556139334 627013864 756280461 756280461 739772161 633729737 634936384 634936384 562429441 240447892 240447892 156531640 235946584 613946445 780279301 780279301 679608912 281670354 349587076 416994378 416994378 14945344 9177536 8397760 8397760 361996872 361996872 353860538 320025138 218689848 218689848 252980445 690242641 690242641 675370336 114598652 763365865 763365865 619832572 822526690 822526690 697961504 697961504 411751666 426542498 426542498 300093808 276996882 994104933 994104933 319418487 808105063 808105063 492009801 606390537 606390537 904652414 904652414 255261968 255261968 574886816 574886816 663751093 663751093 76543304 214799464 214799464 233029960 233029960 682437957 704846452 740167233 763967247 823321203 823321203 605077515 822448844 1016470095 1016470095 1043200797 1045707419 1045707419 832476868 480280720 480280720 384393566 516012914 516012914 282762912 346196400 346196400 117839928 68701696 238068004 238068004 73714056 694413340 797374860 797374860 746295896 682622277 702984320 702984320 640031001 729110788 729110788 942144458 942144458 816528416 841034880 841034880 675683569 797586917 797586917 705176860 693576208 256967345 575164712 575164712 16730996 25984628 840089744 840089744 585620866 678024961 711669141 711669141 623159114 623159114 386141555 311167656 658512620 977309904 977309904 936514299 1004012753 1004012753 1003209411 907556928 257642732 182051432 919611948 919611948 212861772 212861772 209715968 276889664 276889664 268511232 268511232 268509186 822656012 822656012 778117158 778117158 419504541 90177960 428991078 692179892 692179892 190706261 839653477 839653477 529017136 529017136 529513497 832790555 832790555 543228372 543228372 541213092 423657900 440419968 440419968 379062912 127437416 336660802 336660802 352811976 352811976 283554152 7375496 9187936 27483168 536910848 541606273 541606273 12792000 660680952 725815945 781218485 781218485 319096930 614795469 965159154 965159154 740331792 142746892 271105584 271105584 27227410 303666962 303666962 26264160 545673328 545673328 122209049 315655610 315655610 115366064 16728000 16728000 80160130 312939722 344563034 344563034 601131667 642140169 642140169 482256856 474224421 414452550 414452550 636616720 720371805 720371805 137363749 64374617 706745700 706745700 596251761 427868262 1042436140 1042436140 990492935 990492935 649609965 649609965 263807505 736684186 845163738 845163738 619973577 613755483 850717689 1027154265 1027154265 980159895 851824565 843057106 843057106 979374208 979374208 850695012 174467348 411556628 411556628 181412416 334631922 334631922 567051411 567051411 451987414 615006730 615006730 741119499 741119499 941221381 941221381 570093568 826817410 826817410 630273602 264901931 459461046 969952514 969952514 972067479 972067479 71575711 862184196 862184196 290591394 905126662 905126662 619977124 568503108 568503108 60302080 601869509 736430117 736430117 792429180 792429180 994595875 994595875 765645165 856281137 856281137 738655305 538089481 604164105 1065668700 1065668700 501277978 501277978 911720861 911720861 853016296 853016296 950308839 950308839 687266757 597420536 240800464 638962841 638962841 388210808 388210808 921729337 921729337 932328140 932328140 859198168 859198168 349963084 219370180 621854952 621854952 1015230810 1015230810 706740501 360919311 149455036 812332208 812332208 723288976 723288976 410316258 313269607 90246696 323039840 323039840 94673184 120023456 120023456 103645218 318833664 318833664 846150042 846150042 615660293 954468807 954468807 847512299 854528451 854528451 984838355 984838355 848337637 564420469 708005632 708005632 24633155 20310816 902977600 902977600 835259640 89538408 89538408 225831668 225831668 109462928 109462928 80315776 80315776 105512880 0 0 0 0 449580552 449580552 823930016 823930016 89162272 520733424 520733424 317140982 659975336 659975336 305786129 465117922 465117922 210566328 484514864 502870614 502870614 355067600 355067600 338772778 320080928 320080928 78563930 87930208 113468048 113468048 52767024 548519941 548519941 199600724 677506449 677506449 697300549 707788053 707788053 141733521 57412753 555745569 839798131 839798131 554089104 118351978 285863010 512042308 512042308 168169284 335716438 481710548 481710548 472101720 472101720 43127376 149479648 165746320 165746320 114072776 46919816 11618816 2148416 1047552 80428296 80428296 83670464 269719488 269719488 79272140 282640128 962814944 962814944 754026648 842529682 953174745 953174745 805570563 805570563 428993092 131533370 386998842 1001421086 1001421086 542559211 763416263 763416263 856719628 868222083 868222083 1050596824 1050596824 812274110 841512610 841512610 77975404 783370224 783370224 771327561 566576792 47329504 168066388 235233664 235233664 197889080 125180856 203479320 245903076 266215164 266215164 95541328 95541328 97475676 609848713 609848713 570381532 775823333 775823333 695303285 728657936 728657936 65469680 586793780 796975413 796975413 543875004 618038564 618038564 191415728 191415728 185634825 960634634 960634634 605421376 503424791 503424791 207894673 131016024 131016024 129520760 686207702 885471435 1009918567 1009918567 828639651 454044048 454044048 788704295 788704295 909433774 909433774 582990336 674683653 674683653 302034978 377535424 439427862 439427862 76415320 106770072 106770072 905185688 905185688 255996356 255996356 491522944 491522944 178258260 178258260 360188896 360188896 228235466 9456612 46939220 147138756 587865092 587865092 545851517 545851517 797910204 801846525 801846525 801125376 341640962 174942732 448675466 508171904 508171904 996179758 996179758 608787624 593422349 777834141 777834141 391122968 775950727 775950727 1023415079 1023415079 840226524 512184878 512184878 44137880 342863896 841099486 841099486 512967525 287556504 628491136 721624541 861237729 861237729 834005859 834005859 454706237 814495155 814495155 690556432 452987087 640519556 978911760 978911760 278599271 385231216 385231216 305205738 296272821 296272821 567963141 567963141 135971840 21610656 210667808 213138764 1063808748 1063808748 283252496 344463320 344463320 519591578 845861525 845861525 507301662 507301662 539416833 539416833 573115683 814421041 814421041 554700896 270991054 751280452 805518465 805518465 366483562 335368896 335368896 386536506 386536506 377668704 293810274 39458448 89657400 358100684 358100684 523678752 523678752 377745498 354352690 142758484 12323336 329927242 329927242 251847288 251847288 332465846 332465846 468525396 468528630 468528630 449030778 353645346 402964524 528242566 528242566 404209836 410384688 410384688 455363101 625074221 625074221 620874339 672276865 930516799 930516799 91812785 763609588 763609588 553674005 553674005 550633521 550633521 771325497 771325497 445648004 836592452 836592452 813871863 161481303 187719700 187719700 327324700 512568414 779748070 779748070 338204539 801803044 801803044 210386290 476451932 499845533 1030271984 1054867167 1054867167 1048775687 827879315 427392049 301651938 414892291 414892291 424549542 538582528 538582528 470192292 409949241 386246782 386246782 914549999 914549999 558036288 568927713 568927713 367335765 367335765 67176716 136653060 203694088 203694088 538579232 538579232 257950140 596902657 973081142 973081142 743306885 743306885 909239291 934323167 1067484004 1067484004 440942824 388498746 268719960 563593904 618792961 662790952 662790952 638211625 638211625 631940408 631940408 176276816 565875152 574009792 683673612 683673612 616827081 202861652 202861652 194439552 790507392 790507392 699182548 721924405 721924405 583014624 172501440 440838528 517270166 517270166 95785438 86192424 96637384 96637384 154276644 162011432 162011432 219465028 219465028 37069312 698663892 698663892 636598701 731038357 731038357 323327019 323327019 789592945 952016477 952016477 707126045 211102284 698233924 698233924 678208796 1050142083 1050142083 791520115 497642815 370163714 535754391 864170737 864170737 1022089314 1022089314 822119459 822119459 692568198 894863236 894863236 637567296 52725800 396128624 598568706 623606026 623606026 304909377 408004800 441789078 632342550 1068764031 1068764031 1051099672 654837402 1018344356 1018344356 701121504 625026278 678497683 678497683 1007242605 1007242605 583827600 583827600 324537954 304966194 360517272 360517272 355760824 358073762 358073762 1019290023 1019290023 525936318 563000989 1029141570 1029141570 427600292 498794888 629611850 629611850 604977250 824303880 891498940 891498940 29593936 13753472 13149888 16336256 548552648 612706377 876752010 876752010 421768765 614123352 614123352 571683345 277351728 900009282 900009282 621356072 161754241 738451599 891416961 891416961 627526180 275251746 762353455 1019944975 1019944975 817700807 817700807 909397202 909397202 857582660 594057858 1035373046 1035373046 470984338 528074128 528074128 377243794 286573336 64554096 64554096 42307152 42256464 42256464 48443856 60760512 60760512 31000576 71584288 93375208 160732352 403060876 403060876 638456344 638456344 68631048 68631048 172167281 172167281 106959760 795636717 795636717 477287310 477287310 411226994 390254778 320489096 55084176 40688768 57148848 444127288 444127288 236589062 220369668 157607680 157101732 23102720 3817888 3459840 7293824 45727552 45727552 178706964 178706964 171995220 550585361 550585361 184703044 572120164 684352835 684352835 992527671 992527671 793489155 607987650 697642595 697642595 674443016 1010635055 1010635055 562659848 878200235 878200235 556467403 150577780 57198000 167435924 941806851 941806851 852187279 778381828 778381828 710548184 738341184 738341184 633130848 689285121 692402360 770048904 770048904 768741504 768741504 711464400 606915768 764233712 764233712 394739862 274726530 396356618 396356618 332262642 266338828 499646590 499646590 327425688 327425688 98829840 192025348 306470912 306470912 721445265 721445265 207618234 944763289 944763289 896665499 964839842 1015169101 1015169101 985883588 842350456 842350456 532441662 836698442 878392971 878392971 634936384 613601865 350372739 89924256 89924256 235946584 613946445 780279301 780279301 679608912 8727040 349587076 416994378 416994378 494707298 494707298 96535400 80217288 90702026 359079370 359079370 350823882 304902670 369008918 399505740 399505740 637620281 637620281 114598652 763365865 763365865 619832572 822526690 822526690 697961504 697961504 411751666 426542498 426542498 300093808 322536660 331475232 331475232 440863780 440863780 269012032 216023360 216023360 255125120 258813372 258813372 255261968 255261968 1006962718 1024924213 1024924213 814804694 964991567 964991567 1021887819 1021887819 891876292 682437957 682437957 260331097 763967247 823321203 823321203 605077515 822448844 1016470095 1016470095 1043200797 1045707419 1045707419 832476868 257159868 287499372 287499372 516012914 516012914 282762912 346196400 346196400 117839928 68701696 118374696 118374696 56758704 246483853 797374860 797374860 746295896 682622277 702984320 702984320 173402772 729110788 729110788 942144458 942144458 732503922 824260674 864762116 1034824735 1034824735 797586917 705176860 693576208 198181732 191240628 185118740 157785364 157785364 840089744 855755894 855755894 678024961 711669141 711669141 563912706 734539440 734539440 697643565 697643565 977309904 977309904 255901884 255901884 563367558 1067703333 1067703333 362791372 824273549 919611948 919611948 676602504 680839621 680839621 684612513 842161190 976446349 1060032447 1060032447 1065479337 1065479337 990505488 778117158 419504541 448918293 663884409 933284779 933284779 579787857 839653477 839653477 529017136 529017136 529513497 784429477 849707136 849707136 463112160 463112160 410552078 440419968 440419968 232919206 127437416 127437416 83778976 93397608 93397608 87519432 27263328 27263328 16851264 536910848 541606273 541606273 12792000 660680952 688922649 781218485 781218485 556093888 572987541 965159154 965159154 778227924 778227924 959332869 959332869 635004332 635004332 563659369 890411381 890411381 580276326 4735104 25693792 99517568 99517568 8016680 9580864 25892384 25892384 25691424 35478160 630114706 938087931 938087931 482256856 297950294 414452550 414452550 712903788 733421517 1051934531 1051934531 515846555 863427110 863427110 596251761 446077766 1042436140 1042485881 1042485881 990492935 627114510 627114510 481314339 144721536 901629744 901629744 704383868 704383868 395577978 796397798 1003935971 1003935971 682636016 843057106 843057106 440678946 706026003 706026003 848560343 965847744 965847744 944560849 717015604 144446272 350439010 378017632 378017632 63624432 63624432 64624368 64624368 21549648 8646720 570093568 570093568 11016192 62717024 393580754 393580754 314928890 314928890 541065680 969162918 977619125 977619125 862184196 290591394 905126662 905126662 640815897 640815897 568503108 72207600 601869509 601869509 266365076 792429180 792429180 994595875 994595875 765645165 856281137 856281137 738655305 524583574 524583574 456518198 311550536 501277978 501277978 911720861 911720861 853016296 853016296 950308839 950308839 709309326 709309326 340079936 745598986 745598986 395523859 395523859 921729337 921729337 319167264 159543382 109187160 543294313 543294313 398611106 621854952 621854952 990028780 990028780 709568432 986838695 986838695 932361987 983679762 983679762 858629243 747384470 917440798 917440798 649083274 87562256 94673184 120023456 120023456 103645218 501821571 501821571 846150042 846150042 615660293 274086763 222562476 429688272 538218844 538218844 984838355 984838355 848337637 564420469 708005632 809909344 809909344 316152992 902977600 902977600 835259640 89538408 89538408 225831668 225831668 112404288 112404288 88314336 88314336 105512880 256113573 640944921 640944921 456205110 1070741267 1070741267 823930016 823930016 537257042 520733424 520733424 317140982 641850258 641850258 68158224 123617812 210566328 210566328 373890672 373890672 355473042 355067600 355067600 338772778 320080928 320080928 284231344 322462464 322462464 113468048 195535204 548519941 548519941 199600724 677506449 677506449 697300549 707788053 707788053 572584465 572584465 555745569 839798131 839798131 554089104 118351978 285863010 285863010 93939802 73728 335716438 481710548 481710548 472101720 472101720 216786584 216786584 102052880 114072776 114072776 46919816 4424704 10171008 10171008 8646720 273937026 274051842 274051842 71093762 79272140 214329160 962814944 962814944 754026648 842529682 845625747 845625747 805570563 805570563 3933955 131533370 281227458 1001421086 1001421086 542559211 763416263 763416263 856719628 918033336 918033336 1050596824 1050596824 782163549 841512610 841512610 77975404 783370224 783370224 771327561 566576792 61871168 168066388 235233664 235233664 197889080 109651032 203479320 203479320 224578480 224578480 171446608 131357744 131357744 125432240 125432240 69255432 2510856 52882803 814693443 850591446 850591446 202379650 288503722 796975413 1034291462 1034291462 1061511233 1061511233 743514541 780647068 780647068 683755548 672186885 679286432 802832116 802832116 626458796 704384992 704384992 392248732 686207702 885471435 1009918567 1009918567 1002242037 1002242037 892652331 892652331 788704295 449839830 430457636 582990336 674683653 674683653 226962384 207710517 639175976 639175976 374089105 514001590 572201877 757414002 757414002 694037644 694037644 478058152 945592371 945592371 275169668 810046337 834183168 834183168 327816306 467344370 530948065 1060107517 1060107517 545851517 718553217 797910204 801846525 801846525 801125376 415842168 174942732 168013452 508171904 508171904 996179758 996179758 623142294 1072254308 1072254308 866913651 375948574 775950727 775950727 1023415079 1023415079 840226524 512184878 905195687 905195687 527386771 841099486 979442831 979442831 287556504 287556504 721624541 861237729 861237729 408759942 515513600 515513600 814495155 814495155 813997391 265622671 174204750 978911760 978911760 136525068 385231216 385231216 305205738 296272821 296272821 567963141 567963141 23836001 22070400 12914112 11569472 10012224 1049088 283252496 283252496 57053570 96917680 845861525 845861525 507301662 507301662 539416833 539416833 573115683 814421041 814421041 554700896 557588917 751280452 805518465 805518465 894961323 894961323 760254131 727808345 824471816 824471816 369098778 335544336 400598634 400598634 362365434 282910236 377745498 377745498 469766528 469766528 344995498 371298552 483266978 483266978 40756296 275814267 811317593 811317593 619322619 565911381 565911381 467035443 155951542 528242566 688344864 688344864 895899955 895899955 623186367 559975710 550983834 620874339 672276865 930516799 930516799 743576205 261836146 701613664 701613664 720896453 720896453 135954949 215487128 215487128 445648004 445648004 198263508 181445364 50979888 155050208 155050208 327324700 512568414 512568414 230018802 281031665 654998436 858511559 858511559 483362005 499845533 502347200 502347200 685454899 685454899 572571921 494576298 301651938 414892291 414892291 424549542 538582528 538582528 470192292 801399894 810396871 810396871 914549999 914549999 552652883 552652883 290134894 367335765 367335765 609863297 611968905 691631656 691631656 538579232 538579232 53395728 404264964 973081142 973081142 743306885 743306885 909239291 934323167 1067484004 1067484004 440942824 388498746 268719960 149076265 149076265 662790952 662790952 638211625 638211625 631940408 631940408 176276816 125994088 639633672 704643089 704643089 250018248 749089876 749089876 198163077 66812352 563866193 563866193 171301540 586827812 586827812 585487809 433499120 855214436 855214436 755303167 696902757 625399035 943489345 943489345 982392563 982392563 544379850 902272600 902272600 698663892 737321681 737321681 731038357 731038357 323327019 405901198 789592945 952016477 952016477 707126045 446045782 698233924 698233924 554437708 250449140 191196264 190850368 28175712 182241536 354757704 354757704 114377242 356304111 554357775 822119459 822119459 692568198 553680900 779100632 779100632 249635737 1008122094 1008122094 645348249 645348249 375253752 375253752 578050604 632342550 1068764031 1068764031 1051099672 968020839 865126421 785605661 785605661 915030545 915030545 395910583 1007242605 1007242605 588976000 588976000 69312576 99107528 282199656 282199656 273367312 274911618 274911618 153100460 223039660 271189132 271189132 208547176 427600292 427600292 498794888 498794888 437206798 422773326 65196816 126272937 835198505 893928545 893928545 878264864 878264864 548552648 612706377 612706377 787514608 787514608 614123352 675287749 675287749 573758609 604241968 654575673 654575673 50857993 1024 0 8192 4870184 18527368 21136808 22565128 186148500 186148500 172655248 345607176 345607176 80498602 121450296 121450296 99664872 99664872 78753024 68470352 118549056 118549056 78407456 14740240 34967248 47302016 55619360 55619360 623840705 623840705 48470488 718172685 718172685 521407082 521407082 942618915 942618915 274860033 1009160199 1009160199 515138113 33689616 33685520 579124816 579124816 572257809 302125358 302125358 240817826 85198872 319390252 906964241 906964241 444127288 996543551 996543551 683935362 483538665 845210660 965509187 965509187 849043274 560286056 645734730 645734730 106005488 171995220 580118232 580118232 550585361 184703044 572120164 684352835 684352835 992527671 992527671 793489155 607987650 697642595 697642595 674443016 1010635055 1010635055 1010934790 1010934790 878200235 556467403 763454061 763454061 535728081 439638742 707292226 707292226 202344861 719142552 719142552 738341184 738341184 633130848 633130848 1059061823 1059061823 770048904 768741504 768741504 1017786589 1017786589 1041347751 1041347751 361104465 152626724 360744970 360744970 310709600 304406722 274733872 317595090 527312424 527312424 200740758 332342818 332342818 930419600 1050534554 1050534554 937624600 937624600 716482722 896665499 896665499 1015169101 1015169101 985883588 842350456 842350456 532441662 836698442 878392971 878392971 613601865 613601865 350372739 81300832 32358888 20471936 6358144 6358144 152058724 277162498 285690594 352486050 352486050 437892732 494707298 494707298 374468856 314605778 122250338 359079370 359079370 350823882 304902670 369008918 399505740 399505740 10486080 133641272 133641272 118176760 118176760 40904240 90864776 90864776 62766752 27209328 221290764 221290764 159385032 117247368 322536660 331475232 331475232 440863780 440863780 269012032 216023360 216023360 252772744 252772744 195067120 195067120 219743362 1006962718 1024924213 1024924213 814804694 964991567 964991567 1021887819 1021887819 891876292 425981484 222897324 149152600 149152600 119223864 655417432 655417432 330159921 85058088 145530700 145530700 96917736 298340544 298340544 30081570 287499372 287499372 202020322 201442528 25703424 25703424 38722704 68427288 68427288 139120548 174501424 174501424 139324548 211980300 211980300 126714652 219488904 222608084 638044252 643115673 655708672 655708672 322251570 732503922 801313332 801313332 1005065537 1034824735 1034824735 603037666 709635239 1056539205 1056539205 752511739 553852844 311165024 278528180 566269680 855755894 960497275 960497275 968585822 968585822 898642285 734539440 734539440 697643565 697643565 801425661 801425661 273126502 404118036 404118036 1067703333 1067703333 362791372 824273549 824273549 676602504 676602504 680839621 680839621 684612513 842161190 976446349 1060032447 1060032447 1065479337 1065479337 990505488 357208064 357208064 627705750 663884409 933284779 933284779 579787857 928416050 928416050 514072872 514072872 849864836 978835927 978835927 849707136 447403350 447403350 237503772 501747824 501747824 272765058 185107618 72877704 75698720 100615336 227649376 227649376 167372708 94173833 266937852 266937852 178365524 621871524 657459276 657459276 331473138 331473138 321177902 556093888 564259297 784392296 784392296 778227924 778227924 959332869 959332869 635004332 635004332 563659369 890411381 890411381 580276326 124784568 357093258 357093258 76324616 4196840 11153192 97455874 301760434 301760434 329558096 713936908 938087931 938087931 536879512 1010420254 1010420254 808770431 808770431 733421517 1051934531 1051934531 811380800 975516054 975516054 581714439 446077766 1015421204 1042485881 1042485881 990119018 990119018 817374436 560996865 370315684 901629744 901629744 895890504 886298942 886298942 724592819 1003935971 1003935971 682636016 806359552 806359552 440678946 706026003 706026003 848560343 965847744 965847744 944560849 717015604 68802298 350439010 566756059 566756059 379098736 664153258 664153258 254281046 254281046 372417796 829355490 829355490 806803971 612894016 393580754 393580754 314928890 359188826 359188826 969162918 977619125 977619125 371276195 105011384 490746410 610667152 640815897 640815897 76893457 72207600 72207600 213087204 266365076 266365076 92274792 607270464 607270464 864559921 864559921 1062242360 1062242360 518096322 422988372 422988372 138592334 367380584 367380584 29457166 33669192 67166282 642883850 671521616 671521616 709309326 709309326 340079936 745598986 745598986 665018560 665018560 572707089 321912864 321912864 128852290 109187160 543294313 543294313 398611106 398611106 96518376 990028780 990028780 709568432 986838695 986838695 932361987 983679762 983679762 858629243 984278087 984278087 917440798 649083274 332922880 5242880 5292032 5292672 72939426 501821571 901653377 901653377 275985282 984521138 984521138 688839717 715169103 715169103 538218844 768425064 768425064 410472137 281807632 281807632 809909344 809909344 352618600 353196274 395252832 395252832 344896530 344896530 73729288 73729288 112404288 112404288 88314336 88314336 43005480 946894784 948696135 948696135 456205110 1070741267 1070741267 541385314 541385314 839120251 839120251 484748090 452889000 641850258 641850258 887395512 887395512 743580302 191661808 309011520 309011520 318923282 318923282 59343106 292301170 292301170 56175586 284231344 322462464 322462464 53551856 195535204 195535204 151359696 147088164 142961636 135610944 54543488 54543488 676598528 676598528 572584465 46679489 54751424 54751424 33880208 9701952 14716160 187174884 187174884 163873488 163627236 198106356 198106356 184245748 184245748 216786584 216786584 204086280 204086280 68202376 68202376 8292608 10171008 10171008 74946824 273937026 274051842 274051842 101816464 253429432 253429432 473490440 473490440 192130918 631776556 704716821 704716821 842815358 842815358 391068851 372767514 343497872 267638924 267638924 194435700 402718756 457270154 1053861808 1053861808 918033336 683841857 683841857 281467074 843871632 843871632 567282289 567282289 66666849 83976096 83976096 61871168 75820056 210203088 210203088 109651032 109651032 134268288 134268288 75379476 171446608 171446608 131357744 131357744 594055137 594055137 866536032 866536032 839859219 814693443 850591446 850591446 202379650 743403747 863165957 1034291462 1034291462 1061511233 1061511233 743514541 780647068 780647068 683755548 672186885 679286432 802832116 802832116 626458796 704384992 704384992 392248732 454220120 454220120 579544200 635646441 1002242037 1002242037 892652331 892652331 690241752 449839830 397309304 64581072 64581072 203910036 203910036 108342168 639175976 639175976 374089105 514001590 572201877 757414002 757414002 694037644 694037644 156423400 945592371 945592371 759899785 810046337 834183168 834183168 556892901 467344370 689983493 1060107517 1060107517 316328681 780803218 780803218 344458314 344458314 415842168 415842168 125571000 397932435 581960529 581960529 217919017 925519325 925519325 1072254308 1072254308 866913651 996153639 996153639 595578891 78648424 443387696 443387696 768579554 905195687 905195687 1020067763 1020067763 979442831 979442831 720113109 443353995 278932106 278932106 144494148 332213490 515513600 974143656 974143656 813997391 813997391 743506960 743506960 921375073 921375073 136525068 527779712 527779712 179636160 715380992 715380992 542357216 542357216 137097984 22070400 11569472 11569472 273678336 273678978 541065858 541065858 659941244 659941244 382939866 711778710 711778710 652091097 848564808 848564808 478295283 705757799 705757799 177737431 936041507 1013239896 1013239896 1008865551 894961323 894961323 760254131 755288132 824471816 824471816 369098778 335544336 400598634 400598634 362365434 44748370 181653826 181653826 469766528 469766528 344995498 976825063 976825063 964218994 964218994 336704366 811317593 811317593 619322619 565911381 565911381 467035443 224929064 744515620 744515620 688344864 895899955 895899955 623186367 824181425 824181425 810969231 608768175 775029136 775029136 743576205 699450213 701613664 701613664 720896453 720896453 172696612 538972289 538972289 157467440 723015169 723015169 188761728 188761728 838394102 838394102 683862503 438603839 339861642 92785322 278147120 654998436 858511559 912604625 912604625 604651098 553265624 502347200 596858210 596858210 494576298 494576298 410642310 917025174 917025174 152507263 35076624 35022944 27298944 801399894 810396871 810396871 386468053 411142152 411142152 67395654 22562176 160653570 352572557 609863297 611968905 691631656 691631656 167802896 167802896 53395728 872425472 872425472 699893752 811154493 875127739 875127739 843128979 75497536 107085888 115343832 129288736 129288736 111149400 553731456 553731456 123954456 123954456 690676484 690676484 705945361 705945361 596922941 639633672 704643089 704643089 250018248 749089876 749089876 198163077 52798400 563866193 563866193 558704368 586827812 586827812 585487809 61464785 855214436 855214436 755303167 696902757 625399035 943489345 943489345 982392563 982392563 544379850 902272600 902272600 682650385 737321681 737321681 709264081 648186250 276900038 405901198 469615544 469615544 406423500 406423500 446045782 536745228 536745228 214639816 225387852 225387852 278373602 431134830 431134830 354757704 474182282 474182282 207827340 218288172 218288172 411041862 689047746 689047746 828421026 984617277 984617277 1008122094 1008122094 837151362 863241906 863241906 594495096 594495096 578050604 537812453 328503661 968020839 968020839 865126421 1015134742 1015134742 915030545 915030545 395910583 959452377 959452377 588976000 588976000 39532176 31850496 272630400 272630400 273367312 274911618 274911618 52466016 331301816 331301816 235719954 137364520 137364520 90179118 168069636 168069636 422773326 422773326 86032680 126272937 835198505 893928545 893928545 878264864 878264864 170336635 329462004 1069036728 1069036728 787514608 202999329 675287749 720297429 1053348964 1053348964 1011451128 713828353 713828353 1011666063 1011666063 627954947 606072070 359831298 342467458 341542920 69994240 79291168 296747458 345607176 345607176 291278272 121450296 377073240 401703482 401703482 324048506 334511874 334511874 299611120 78407456 49207776 34967248 47302016 55619360 55619360 623840705 623840705 48470488 718172685 718172685 521407082 944116256 944116256 942618915 436471700 1009160199 1009160199 655434297 662897787 924456507 924456507 697875408 697875408 380658426 380658426 140800608 140800608 319390252 906964241 906964241 409395614 996543551 996543551 683935362 483538665 845210660 965509187 965509187 849043274 560286056 645734730 645734730 106005488 106005488 580118232 580118232 72358481 67898376 67111936 60082800 293734708 422761254 481172334 743363084 947313543 947313543 530835953 202900492 232521952 232521952 1010934790 1010934790 456395007 811609813 811609813 763454061 596107620 439638742 707292226 884217302 884217302 719142552 719142552 675620997 610885580 610885580 70780673 1059061823 1059061823 819349699 819349699 704906260 1017786589 1017786589 1041347751 1041347751 663951064 829133987 923428024 923428024 310709600 304406722 240156940 192679860 527312424 527312424 329121992 332342818 434967639 930419600 1050534554 1050534554 937624600 937624600 716482722 375659824 1023973948 1023973948 693161517 470471694 470471694 453707788 127745087 68560508 605428297 605428297 270918848 270918848 291692736 291692736 21394720 198747952 580953221 599523189 599523189 540635392 285690594 352486050 352486050 437892732 437892732 374468856 374468856 314605778 149021316 209109376 354908418 354908418 263980352 520996610 520996610 304127776 170781972 170781972 133641272 295300178 391108874 436710274 436710274 284465682 404856898 404856898 232325686 134775916 117247368 117247368 83898328 83898328 433878528 433878528 414641670 348258636 750808528 795684285 795684285 997015439 997015439 543626249 425667734 957415557 957415557 1044391079 1044391079 827533846 827533846 443832227 154866690 425981484 747196485 747196485 149152600 636556335 1032554211 1032554211 655417432 839990782 1012561775 1012561775 1061621373 1067585919 1067585919 749465904 224061090 501953006 501953006 315992738 315992738 275145088 276250624 276250624 56525344 56525344 139120548 634255745 634255745 553783329 211980300 211980300 158335908 753013353 753013353 638044252 643115673 643115673 489855472 489855472 440500526 801313332 801313332 1005065537 1005065537 451441855 603037666 709635239 1056539205 1056539205 752511739 553852844 311165024 468981213 566269680 567464673 960497275 960497275 968585822 968585822 898642285 651302625 122162352 380419600 641882212 801425661 801425661 700626468 700626468 868093960 868093960 581486024 276152720 194983876 147135184 97848616 89655872 571507360 571507360 591036753 591036753 185216048 185216048 222982444 844163360 978504353 978504353 561370241 372774049 929731212 929731212 672563849 654612987 535970746 928416050 928416050 445544545 498506858 896727530 978835927 978835927 885597387 447403350 447403350 237503772 501747824 501747824 272765058 185107618 72877704 72877704 100615336 227649376 227649376 167372708 94173833 266937852 266937852 178365524 621871524 657459276 657459276 331473138 331473138 321177902 268865744 281020482 935340768 935340768 919931787 123867050 123867050 286805136 320918920 320918920 94259032 272107416 395333480 395333480 124784568 357093258 357093258 93723240 93723240 16127232 97455874 301760434 301760434 329558096 713936908 713936908 656148204 931170889 1026691887 1026691887 841617891 808770431 40770960 964959747 964959747 811380800 975516054 975516054 869211620 458753751 402821398 271981075 839386160 990119018 990119018 817374436 560996865 908108662 908108662 895890504 903000027 903000027 886298942 724592819 154528548 822196992 939732999 939732999 806359552 675293184 303905840 303905840 281520130 726702688 726702688 55982133 239124500 239124500 997030611 997030611 697645172 794771133 794771133 858016153 858016153 642307257 372417796 919792730 919792730 873301602 873301602 182727155 115376808 1047156684 1047156684 676481114 783998923 783998923 663961773 663961773 373766298 490746410 748849590 939285821 939285821 713561837 1067652622 1067652622 753767536 830336730 830336730 557902112 607270464 607270464 864559921 864559921 1062242360 1062242360 340542549 422988372 422988372 138592334 262617468 262617468 193014160 574619708 721494069 776228881 776228881 302385897 278260290 9521154 0 0 168 665018560 665018560 572707089 321912864 321912864 270123586 63987810 63440112 26755728 54526336 54526336 54542468 184598580 184598580 87410916 37430112 37430112 174462464 539425604 539425604 696828122 984278087 984278087 332924658 332924658 332922880 119021920 96089440 94639112 94639112 75500832 901653377 901653377 275985282 984521138 984521138 924092476 924092476 998910828 998910828 923345979 618445702 437570132 865340834 865340834 51182611 722730748 722730748 376145505 936716179 936716179 874294417 847372371 847372371 912734619 912734619 640731323 578429625 296416777 573162578 946894784 948696135 948696135 901589321 654221970 708106120 708106120 541385314 928371162 928371162 501440523 452889000 831026843 1054815835 1054815835 887395512 743580302 83372040 309011520 309011520 306275456 306783378 306783378 19373504 20611360 20611360 1758720 27284256 27284256 24382048 21266736 571248197 571248197 147088164 699266421 699266421 735281701 735281701 676598528 676598528 547823296 832266657 832266657 575193040 575193040 9701952 9964544 187174884 282370640 368698090 368698090 198106356 198106356 184245748 184245748 189445824 189445824 204086280 204086280 68202376 68202376 10518592 10518592 10147392 74946824 74946824 113058560 113058560 101816464 253429432 253429432 470397696 470397696 192130918 631776556 704716821 704716821 1050448906 1050448906 416429161 372767514 343497872 106712732 121642912 328944878 402718756 457270154 1053861808 1053861808 643226265 643226265 609388560 281467074 843871632 843871632 567282289 597811569 652593601 652593601 598014960 36421880 8265616 31949536 134504652 134504652 220087424 220087424 202752160 202752160 245155952 245155952 235218972 189624616 594055137 594055137 866536032 1008344874 1008344874 605591561 354469903 268584972 268584972 743403747 863165957 863165957 658620856 173367896 958785576 958785576 666943737 666943737 606002697 606002697 68683272 126303856 126303856 554301760 554301760 57530497 50401952 226007044 226007044 209641356 172279956 172279956 33573268 40371600 47965136 47965136 37884048 183268481 183268481 165421476 165421476 587999493 587999493 571212064 571212064 243146652 550814244 675842336 675842336 612368265 708247244 708247244 210377172 156423400 110294513 759899785 759899785 599479120 599479120 985806368 985806368 689983493 689983493 36038928 36004112 780803218 780803218 508420123 449373406 412160280 396046728 400740858 400740858 581960529 581960529 217919017 925519325 925519325 542933504 542933504 270066305 996153639 996153639 717508662 717508662 851560353 851560353 963530420 963530420 820019087 1020067763 1020067763 729986261 729986261 831657108 831657108 941371429 941371429 832532005 421379585 966860677 974143656 974143656 738347400 738347400 743506960 743506960 615548033 679923557 820171203 820171203 668994900 632214403 724566166 724566166 722080911 722080911 496048043 496048043 133231105 126790548 273678336 742703280 742703280 577225190 659941244 659941244 1011549403 1011549403 996438612 873094313 873094313 848564808 348195337 8921280 8922240 8922240 936041507 1013239896 1013239896 1008865551 759717096 681753697 1067001366 1067001366 814269840 814269840 327290994 332213490 332213490 304556256 503794190 503794190 181653826 309913240 404980562 404980562 308335938 976825063 976825063 964218994 964218994 336704366 176683108 176683108 687720028 761698725 761698725 137544389 224929064 744515620 744515620 739266088 739266088 793513149 793513149 824181425 824181425 810969231 608768175 894863414 894863414 777179805 1012991089 1012991089 830572276 132227912 799572428 799572428 740960296 657380641 157467440 995808947 995808947 325015043 722937873 838394102 838394102 683862503 438603839 339861642 92785322 345582301 709186363 941801538 941801538 912604625 685026428 685026428 224817706 596858210 885555272 885555272 766153986 891111022 917025174 917025174 1032797295 1032797295 1021574148 1021574148 1015166005 1015166005 684495207 604282929 604282929 858176633 858176633 1041549524 1041549524 991581416 338735172 141038988 409873722 409873722 392102555 538613763 645307785 872425472 872425472 699893752 811154493 875127739 875127739 843128979 941098140 941098140 421528760 338167050 277907480 249568776 750152632 750152632 123954456 123954456 690676484 690676484 705945361 705945361 772304513 772304513 605858389 546404109 50045005 549741076 549741076 77080265 95135992 95135992 53822496 558704368 571828641 583533777 583533777 34079760 352388102 352388102 481076046 481076046 109114990 512752734 512752734 420195482 298394850 307233426 307233426 274203664 89847660 165904576 165904576 21328480 8739520 2122240 3269376 3269376 3269376 20973568 20973568 160697956 160697956 152717984 214639816 225387852 225387852 278373602 431134830 431134830 139935718 474182282 474182282 411355206 218288172 306446482 411041862 689047746 689047746 828421026 984617277 984617277 450767695 395916824 837151362 863241906 863241906 594495096 594495096 537812453 667207794 1013376673 1013376673 663180295 714563788 1015134742 1015134742 646395993 457582525 738502816 738502816 123522744 123522744 122733240 122733240 86279736 76156328 360266410 360266410 341448456 341448456 210240588 495794040 495794040 453450032 137364520 137364520 83886884 168069636 168069636 326322242 326322242 366352520 377794792 377794792 42991876 179307348 322963100 322963100 282116802 329462004 1069036728 1069036728 202999329 202999329 182080436 720297429 1053348964 1053348964 1011451128 713828353 713828353 1011666063 1011666063 627954947 606072070 359831298 342467458 341542920 69994240 75767200 296747458 296747458 291278272 291278272 118747704 377073240 401703482 401703482 356275432 334511874 334511874 299611120 49207776 49207776 13928768 13928768 3720960 28949696 115723984 115723984 7239048 13065360 54649008 394598470 944116256 944116256 671486468 538184193 436471700 337226498 655434297 662897787 924456507 924456507 818190616 697875408 380658426 380658426 140800608 140800608 60950288 60950288 50331680 168039456 168039456 352322048 352322048 312821824 312821824 393629834 393629834 69209376 116675040 116675040 31624152 31531232 31531232 538719936 571942913 571942913 60131920 603974248 603974248 540132755 422761254 578887897 743363084 947313543 947313543 530835953 288236454 288236454 222347432 612369672 800597986 1051868555 1051868555 811609813 596107620 596107620 305488706 467879970 884217302 884217302 713165263 675620997 675620997 541338629 624428832 624428832 622985504 622985504 972300114 972300114 541429888 563743429 563743429 457752978 663951064 663951064 829133987 923428024 923428024 283132368 283132368 85204032 93984360 93984360 329121992 329121992 79699570 434967639 434967639 1024985013 1024985013 733396396 733396396 307019778 375659824 1023973948 1023973948 693161517 470471694 807241736 874112523 874112523 773664285 773664285 605428297 592522996 814744131 951190289 951190289 191498241 571229204 675917829 675917829 599523189 540635392 415472866 328442482 328442482 449948916 449948916 72877696 72877696 149021316 149021316 209109376 354908418 354908418 227824132 520996610 520996610 304127776 294817344 286186530 276675874 295300178 391108874 436710274 436710274 284465682 404856898 404856898 232325686 518783638 518783638 373032204 316802510 82710924 433878528 433878528 414641670 348258636 750808528 795684285 795684285 997015439 997015439 543626249 425667734 957415557 957415557 1044391079 1044391079 827533846 827533846 705143972 626318120 626318120 747196485 747196485 154104552 636556335 1032554211 1032554211 304887768 839990782 1012561775 1012561775 1061621373 1067585919 1067585919 749465904 224061090 501953006 501953006 315992738 315992738 275145088 276250624 276250624 90866408 88814760 96944680 634255745 634255745 553783329 120994616 62470080 158335908 753013353 753013353 45343336 326222752 422042176 489855472 489855472 927367288 939972615 939972615 939972615 616768610 730286565 730286565 619648017 891066905 891066905 110775239 29691972 30408112 468981213 468981213 413520205 357475093 896869145 896869145 857347282 857347282 651302625 122162352 380419600 616569348 785519325 785519325 752671444 752671444 868093960 868093960 581486024 276152720 87370536 97848616 97848616 89655872 25490560 25490560 6917856 63470660 185216048 185216048 181019552 844163360 863316915 863316915 561370241 372774049 929731212 929731212 672563849 654612987 458790642 458790642 539230724 539230724 717391113 896727530 896727530 885597387 885597387 882793217 546232620 434815206 434815206 474518916 474518916 15324526 281666754 425178762 499460334 499460334 354090692 476448906 476448906 28848736 83894880 83894880 76620360 913424454 913424454 423732187 121757880 819011664 819011664 344139786 935340768 935340768 919931787 339872162 339872162 23946240 4243584 5243008 5243008 4194944 18919704 122981664 122981664 107474944 107474944 93723240 93723240 77991648 72645888 12805184 53686272 334043153 837762531 837762531 741906337 931170889 1026691887 1026691887 841617891 689510517 695805453 855647282 855647282 563085921 563085921 869211620 869211620 961677600 961677600 737428225 839386160 839386160 822085971 363137226 363137226 908108662 908108662 987896060 987896060 903000027 367028698 367976451 726404277 822196992 939732999 994982070 994982070 860815877 554239493 554239493 672115943 726702688 726702688 558568996 541243460 239124500 997030611 997030611 697645172 794771133 794771133 858016153 858016153 642307257 67863776 919792730 919792730 873301602 873301602 316099450 237133968 1047156684 1047156684 676481114 783998923 783998923 663961773 663961773 373766298 281708760 748849590 939285821 939285821 1029053111 1067652622 1067652622 933199491 830336730 830336730 557902112 554296353 109835352 575304272 642912921 1065488305 1065488305 1010306830 1051722591 1051722591 571507152 302157964 262617468 193014160 574619708 721494069 776228881 776228881 555471233 288164870 1021400966 1021400966 321905637 315542030 822791139 822791139 626540577 290578483 286310946 369205944 370722330 370722330 285827640 119062752 119062752 118539032 104498256 43139152 43139152 43041360 8639920 6852704 8646720 59754624 63649008 103874248 103874248 76557152 128595896 128595896 119021920 96089440 94639112 94639112 75500832 93896640 278271144 344469322 344469322 644928257 924092476 924092476 998910828 998910828 923345979 544677103 437570132 865340834 865340834 51182611 722730748 722730748 642996288 936716179 936716179 874294417 847372371 847372371 912734619 912734619 640731323 578429625 296416777 573162578 924551448 924551448 901589321 901589321 654221970 708106120 708106120 285311584 928371162 1025717126 1025717126 569630735 831026843 1054815835 1054815835 719495627 719495627 315146822 277160112 277160112 313558002 313558002 306783378 444015298 444015298 408680070 408680070 423627040 423627040 48460420 135450884 571248197 571248197 134555652 699266421 699266421 735281701 735281701 540625381 547823296 547823296 832266657 832266657 575193040 575193040 294522530 54579202 87566336 282370640 368698090 368698090 88980914 115427688 115427688 89084064 89084064 79536128 79536128 41975872 43668544 43668544 11097344 11097344 10147392 12361728 12361728 113058560 113058560 110181376 110181376 308676277 470397696 779020175 779020175 917392753 917392753 1020006901 1050448906 1050448906 856487440 856487440 242727984 135223436 333546608 333546608 334182230 419656474 834704462 991392149 1045138957 1045138957 692502599 692502599 545588232 665322873 665322873 650075328 652593601 652593601 598014960 55437632 78091864 78091864 134504652 134504652 220087424 220087424 202752160 202752160 245155952 245155952 235218972 189624616 53125296 190113732 190113732 1008344874 1008344874 605591561 354469903 268584972 268584972 562270218 639787704 639787704 595412756 761857313 958785576 958785576 666943737 666943737 606002697 606002697 193537140 529471534 529471534 554301760 741265728 741265728 145771078 489675020 489675020 209641356 172279956 172279956 33573268 40371600 47965136 47965136 37884048 183268481 183268481 165421476 165421476 587999493 587999493 571212064 582027168 582027168 550814244 675842336 675842336 612368265 708247244 708247244 239602840 220725756 29468008 29468008 6443936 509751808 509751808 985806368 985806368 671543609 671543609 453677896 453677896 711568478 711568478 508420123 449373406 412160280 396046728 400740858 400740858 826920480 826920480 135643247 551462524 738779280 738779280 708960405 110174808 110174808 54543072 717508662 717508662 851560353 851560353 963530420 963530420 400973050 696439872 696439872 729986261 729986261 831657108 831657108 941371429 941371429 832532005 809943082 966860677 966860677 881614891 881614891 738347400 549988188 615548033 615548033 852347724 852347724 824534227 856111155 856111155 724566166 724566166 722080911 722080911 496048043 496048043 133231105 126790548 145081327 742703280 742703280 577225190 577225190 541071636 1011549403 1011549403 1069423722 1069423722 873094313 126288839 249733179 808142897 808142897 313468138 610865525 610865525 471260516 514386714 514386714 505266786 1067001366 1067001366 500882195 102052936 337546264 337546264 269246018 294681300 503794190 503794190 278415040 309913240 337715466 337715466 242347410 251843692 256562364 256562364 172775464 139983940 176683108 176683108 687720028 761698725 761698725 864379086 957647055 957647055 232241364 739266088 739266088 793513149 793513149 324288550 324288550 319916546 994903210 994903210 894863414 846233895 1012991089 1012991089 830572276 794002044 799572428 799572428 740960296 657380641 151175536 995808947 995808947 325015043 722937873 722937873 709243153 425731619 425731619 158076324 153355392 345582301 709186363 941801538 941801538 803793987 685026428 980417578 980417578 869934286 944408704 944408704 766153986 891111022 891111022 698161859 1032797295 1032797295 1021574148 1021574148 1015166005 1015166005 684495207 604282929 604282929 858176633 858176633 1041549524 1041549524 991581416 285922338 285922338 606338057 606338057 922799288 922799288 645307785 645307785 605942168 660128304 1045972539 1045972539 737181843 826294428 941098140 941098140 421528760 338167050 277907480 249568776 750152632 750152632 585667041 554776080 554776080 587744544 587744544 570947601 772304513 772304513 605858389 677828549 683590528 683590528 549741076 444631060 973228818 973228818 711886980 711886980 403100247 318043255 403178438 403178438 691997540 691997540 832679945 832679945 629276491 648933261 648933261 581640039 581640039 553041402 872681520 872681520 562176385 562176385 547621185 567779778 567779778 427812866 427812866 295821666 8581986 287884352 287884352 285246080 160697956 152717984 156025710 345629930 345629930 591790668 739742430 739742430 1050958026 1050958026 740448438 411355206 827849379 848687669 848687669 613679424 666319817 666319817 779104466 779104466 450767695 62992982 93469736 351481402 351481402 50141120 50208720 381846896 667207794 1013376673 1020817621 1020817621 561711233 705768071 705768071 542276737 764202093 764202093 738502816 123522744 123522744 122733240 122733240 86279736 76156328 360266410 360266410 341448456 341448456 210240588 495794040 495794040 453450032 67109912 427165202 427165202 156568004 156568004 415565974 415565974 366352520 377794792 633995731 633995731 181539540 181539540 154749279 282116802 297829056 297829056 151142624 591434860 638059545 638059545 629441689 625241577 88418593 25417024 17612832 23074208 23074208 19306880 4862976 70964992 70964992 79346048 80306632 80306632 75767200 99354088 357596168 358951338 358951338 82713576 83025864 83025864 356275432 356275432 121171130 119464648 279338528 295853570 326307904 326307904 134982788 43514448 163097940 614613065 614613065 90333792 769586893 769586893 394598470 800224326 800224326 854065611 854065611 744753287 744753287 575253032 599795912 599795912 818190616 818190616 520357950 856301949 856301949 461835320 562393233 562393233 193463412 548377881 548377881 201620528 352322048 352322048 235246100 479177828 503731210 503731210 746593370 746593370 708449530 789200922 789200922 671749125 671749125 571942913 571942913 521602586 603974248 603974248 540132755 399862601 915877083 915877083 478950730 581887707 581887707 413725028 292847621 698401121 698401121 1010353643 1051868555 1051868555 980332156 886572747 704957042 723781941 723781941 656673081 656673081 266602553 643776153 643776153 750658188 750658188 624428832 1023484079 1023484079 972300114 972300114 459270948 459270948 457752978 457752978 311715698 311715698 275352194 314639376 314639376 283132368 284164416 284164416 270941376 316154128 378801744 378801744 72751752 72751752 49282512 58348106 407749884 733396396 733396396 877699811 877699811 561693451 558144172 893456407 893456407 807241736 874112523 874112523 773664285 773664285 471336644 927734058 927734058 951190289 951190289 991401992 991401992 675917829 675917829 204997764 415472866 415472866 328442482 328442482 449948916 449948916 391123864 391123864 304087314 124331042 71303304 71303168 17115392 17115392 63454384 63454384 294817344 294817344 286186530 276675874 60108544 112658984 112658984 53503280 320821936 320821936 180371872 396750936 518783638 518783638 373032204 316802510 82710924 291340932 291340932 135168 71434248 75841664 76019784 76019784 362281032 362281032 362146410 319819824 319959484 319959484 657622292 674944773 674944773 705143972 705143972 901968096 901968096 352843304 215042784 154104552 163819752 222454408 222454408 68157608 67108864 314903184 314903184 204824268 59891728 248810188 248810188 33579244 226600716 242821020 268005920 268005920 54335968 84092256 90866408 111562440 128486784 128486784 117802432 117802432 120994616 161300180 170267156 192025524 199434816 199434816 45343336 326222752 326222752 33620164 146800836 927367288 939972615 939972615 939972615 831299584 730286565 730286565 619648017 891066905 891066905 293742694 298063040 361789128 361789128 211453640 25165920 25165920 17302592 680686640 680686640 584057553 584057553 622468742 622468742 616569348 785519325 785519325 752671444 752671444 648861192 286589008 13896384 13896384 9439360 7678848 10696064 25852544 25852544 25490560 7822816 19301856 170258985 796045751 913998751 923143347 923143347 908170768 908170768 723142175 723142175 440959878 440959878 989071616 989071616 258134460 579503444 579503444 717391113 717391113 116284928 883841728 883841728 882793217 546232620 434815206 434815206 474518916 474518916 205901836 281666754 425178762 499460334 499460334 354090692 476448906 476448906 1061661558 1061661558 829895587 413284799 935633435 1051722468 1051722468 334563438 819011664 819011664 378949835 854614154 854614154 906100824 925043904 925043904 288174354 274801026 336012312 336012312 276541368 335465952 335465952 119017120 119017120 107474944 89932104 89932104 77991648 72645888 22020768 384707348 384707348 837762531 837762531 781164526 960834185 1056930101 1056930101 811331207 689510517 695805453 695805453 635174289 774632733 774632733 339491454 683497469 961677600 961677600 820078784 847620227 853805523 853805523 581175427 537135105 537135105 747526802 987896060 987896060 279237410 367028698 367976451 726404277 726404277 1009560090 1009560090 994982070 860815877 554239493 554239493 672115943 672115943 558568996 558568996 541243460 144607364 140319840 168837248 173064852 173064852 198181620 841149328 841149328 265523315 201775116 27302252 89704104 100645184 316099450 316099450 237133968 396156918 396156918 120897928 120897928 290456353 575226920 575226920 519321208 519321208 150012544 178540680 542580838 1029053111 1029053111 933199491 933199491 503964702 58838566 219282553 219282553 85070376 85070376 64935404 1065488305 1065488305 1010306830 1051722591 1051722591 571507152 329552554 304116252 912541503 912541503 889579678 474049611 639151204 639151204 892688322 1021400966 1021400966 1036757152 1036757152 866319447 822791139 670037000 670037000 123232824 369205944 370722330 370722330 285827640 119062752 126877824 126877824 141558660 141558660 525070832 525070832 81460094 184201760 245314668 245314668 187573864 91625320 95557992 111689264 111689264 9933376 9933376 2129856 27582080 82573986 352374658 352374658 278271144 344469322 344469322 644928257 644928257 615825689 403997264 1032884314 1032884314 589693041 426771090 962408103 962408103 296611170 296611170 642996288 642996288 612539691 374686218 374686218 340904474 306283648 285470754 285470754 50521138 320071520 329437554 329437554 924551448 924551448 614954740 269545632 290665122 771835658 771835658 86678461 360718704 1025717126 1025717126 915317963 916455003 1035939371 1044246303 1044246303 315146822 315146822 277160112 277160112 313558002 313558002 270168274 444015298 444015298 408680070 408680070 423627040 423627040 310463264 446904576 446904576 303231124 324422388 324422388 134488064 30532320 138948128 145885040 145885040 61866864 332531312 332531312 512510830 512510830 294522530 535053678 535053678 87566336 295715600 444456496 444456496 435187512 441671064 441671064 149712528 8560896 42914576 42914576 43107392 43107392 11097344 11097344 9437760 12381504 12381504 110133312 110133312 110181376 233183724 308676277 843235458 843235458 779020175 1055490309 1055490309 1020006901 1020006901 392849754 856487440 933131373 991007966 1070472447 1070472447 798446120 348886266 342619530 834704462 991392149 1045138957 1045138957 692502599 692502599 545588232 665322873 665322873 650075328 220472396 159706880 159706880 145351704 78091864 78091864 58790992 58790992 42542160 50906160 79996352 79996352 88103760 131324744 131324744 108639760 108639760 49697968 28426504 69528096 832799011 832799011 824209762 843319459 843319459 811436089 945196686 945196686 595412756 823247534 823247534 538181634 559157760 559157760 742723141 742723141 600258801 790763625 790763625 563489520 741265728 741265728 145771078 1067750040 1067750040 187683138 462236790 650312886 650312886 240468509 377712960 377712960 411447380 411447380 10826832 4755840 4378752 697568704 697568704 58213880 628122344 628122344 239108105 110987204 28250836 188620596 188620596 239602840 263697680 263697680 254570269 798879157 798879157 676277669 600841940 354486176 389157690 671543609 844053651 844053651 453677896 896496304 1006891023 1006891023 1006891023 833977255 833977255 821559287 687872456 826920480 912059932 912059932 558386332 738779280 738779280 708960405 940497927 940497927 339309343 114344664 549732491 549732491 390707834 390707834 400973050 400973050 883983088 883983088 382231505 278020660 847298800 876609675 876609675 681088515 805339747 958286407 958286407 629458156 1023899752 1023899752 860290107 1062373011 1062373011 962188715 852347724 852347724 824534227 856111155 856111155 881803240 881803240 155917504 292164944 292164944 78762304 78762304 68366856 71417856 71417856 120082543 120082543 243868764 1057304950 1057304950 612800243 1069423722 1069423722 766526017 974191030 974191030 1068021837 1068021837 1023765063 881003544 881003544 694604100 694604100 92544459 557527689 557527689 544934496 544934496 538230976 337546264 337546264 269246018 56160352 56160352 253280508 278415040 278415040 274751618 270034776 375636689 538057713 728796769 728796769 553918244 126148914 940496698 949011015 949011015 714051290 1072706359 1072706359 957647055 957647055 232241364 608707719 608707719 307824128 654902966 676931205 867182915 867182915 994903210 994903210 404228505 846233895 1036895356 1036895356 794002044 794002044 598979009 171319577 167958632 75896912 36779408 177217616 177217616 33952016 33952016 2886912 967348581 967348581 830191218 859437044 859437044 310110592 555636726 701074724 701074724 830134179 830134179 980417578 980417578 869934286 944408704 944408704 633866479 633866479 625599659 625599659 476760390 614787530 614787530 485434840 756192276 895300912 895300912 443521935 338635786 338635786 319041324 415820248 415820248 277440322 285922338 285922338 606338057 606338057 922799288 922799288 66668785 587738776 588868659 660128304 1045972539 1045972539 592306846 40135121 15593920 19567680 19567680 41099680 41099680 542593417 573651264 585667041 594928785 594928785 593217680 573232401 570947601 570947601 675810432 675810432 545695108 677828549 683590528 683590528 444631060 444631060 973228818 973228818 1051555918 1051555918 403100247 318043255 403178438 403178438 691997540 691997540 832679945 832679945 629276491 648933261 648933261 581640039 581640039 553041402 872681520 872681520 562176385 562176385 547621185 567779778 567779778 427812866 427812866 295821666 8581986 287884352 287884352 285246080 16287616 163731392 163731392 345629930 345629930 591790668 739742430 739742430 1050958026 1050958026 939919443 939919443 827849379 848687669 848687669 609663046 681044488 681044488 392507858 581905144 1041186523 1041186523 1033733700 710342580 721020885 721020885 257691324 936908899 936908899 858403244 1020817621 1020817621 168432660 1031870708 1031870708 906250248 764202093 764202093 772366612 772366612 661339384 661339384 94971072 94971072 38413584 38413584 44774736 57619856 65289632 65289632 33623176 392299282 458620954 458620954 488179098 488179098 221788348 221788348 415565974 415565974 320203314 63275698 633995731 633995731 181539540 296670440 296670440 249087708 793283640 793283640 647761497 637293933 638059545 638059545 629441689 625241577 88418593 25417024 17612832 17612832 5413504 5413504 4378752 73555840 73555840 79346048 80306632 80306632 12289992 77270400 357596168 358951338 358951338 286344448 286344448 84310050 70687392 78259840 83047368 83047368 279338528 295853570 326307904 326307904 139329604 43514448 163097940 614613065 614613065 90333792 769586893 769586893 408596848 800224326 800224326 854065611 854065611 744753287 744753287 575253032 599795912 599795912 541065624 780734730 780734730 856301949 856301949 461835320 562393233 562393233 482660468 548377881 548377881 201620528 201594884 235246100 377688088 479177828 503731210 503731210 746593370 746593370 708449530 789200922 789200922 671749125 671749125 244320324 521602586 521602586 603936361 603936361 554318890 338661427 915877083 915877083 478950730 631292265 1034994021 1034994021 664555378 698401121 698401121 1010353643 1010353643 980332156 980332156 886572747 871418255 871418255 756025746 656673081 656673081 266602553 643776153 643776153 750658188 750658188 1019509777 1023484079 1070133478 1070133478 638601103 825284273 825284273 810793330 984477015 984477015 771352557 771352557 810042860 810042860 242075578 455607058 455607058 520584136 520584136 478362062 478362062 129729390 261205093 605176537 605176537 541861115 541861115 559637705 877699811 877699811 561693451 1023071916 1023071916 1012060815 723458230 1032323624 1032323624 1025583215 958472487 953159399 953159399 927734058 623429797 623429797 991401992 991401992 487665205 204997764 204997764 38366336 147416064 147416064 33582208 52217360 93187176 391123864 391123864 404037676 404037676 339495424 289054570 289054570 217946700 476750962 478967040 478967040 462366850 271260944 281593392 297559504 297559504 284312642 284312642 409142146 409142146 405493312 405493312 396750936 346682482 321725926 184914778 48160464 293748690 293748690 39396736 419299782 620447440 660861369 660861369 666100579 799794307 799794307 487110197 725721615 929820475 929820475 1007461328 1007461328 549005121 615221281 901968096 901968096 352843304 142816960 69435076 90309408 90309408 24118176 67113472 67113472 314903184 314903184 48289922 298989248 298989248 285811746 22946530 39850272 60075600 120740648 120740648 54335968 94535768 94535768 119832840 128486784 128486784 125914496 125914496 119334048 161300180 170267156 192025524 199434816 199434816 118052480 118052480 251693088 251693088 193059488 311843496 752327310 752327310 831299584 831299584 788966575 604346777 657323410 912348477 912348477 526792727 298063040 361789128 361789128 327777427 327777427 102693912 457500825 563672214 571474112 584057553 584057553 622468742 622468742 866662502 1032637551 1032637551 826574028 535115002 303375346 286589008 463156854 463156854 709226303 709226303 545061112 854514859 912550235 912550235 631752425 631752425 597433936 796045751 913998751 923143347 923143347 908170768 908170768 723142175 723142175 1009911444 1009911444 989071616 989071616 327862134 579503444 579503444 123415481 116284928 116284928 889071880 889071880 272520108 482678062 482678062 15208648 15782122 207904750 269387914 269387914 204336396 22884000 351927452 351927452 468944875 468944875 1061661558 1061661558 829895587 658448930 935633435 1051722468 1051722468 845996392 845996392 378949835 378949835 854614154 854614154 906100824 925043904 925043904 288174354 274801026 336012312 336012312 276541368 335465952 335465952 119017120 119017120 87972704 89932104 89932104 27883904 27883904 26164400 384707348 384707348 374947668 320605746 781164526 960834185 1056930101 1056930101 811331207 692277296 692277296 424666739 939557769 939557769 813136375 813136375 683497469 812851410 812851410 820078784 847620227 975699987 975699987 581175427 674966530 674966530 747526802 747526802 369545768 369545768 384592592 707772366 858993459 858993459 1009560090 1009560090 474748984 423892486 319891124 181165076 444935232 444935232 287723908 21136768 21136768 86933093 608504921 608504921 959758882 991872534 991872534 886451168 886451168 265523315 338412418 338412418 273597930 282708258 282708258 90855728 113928088 651894958 957452197 957452197 756997677 756997677 575226920 1011889522 1011889522 804993021 1044944409 1044944409 400313112 126927480 506024032 506024032 439879446 439879446 387817764 756295813 756295813 626773280 623038761 539513896 5120 0 22528 448512 68160296 329552554 329552554 579346880 912541503 912541503 889579678 474049611 639151204 639151204 892688322 892688322 424831857 1036757152 1036757152 866319447 614110795 670037000 670037000 55749392 55749392 51506584 89178948 89178948 288678055 721652397 721652397 630829529 700110693 700110693 525070832 250677914 357862344 357862344 1067060870 1067060870 980212472 637409568 633027945 554063928 57571552 13295776 163315720 163315720 136634248 352374658 420090916 420090916 15282306 105386968 116524184 116524184 655361326 655361326 1037686347 1037686347 901097357 355749707 962408103 962408103 326631830 326292402 291406866 612539691 612539691 638080537 638080537 881555283 881555283 587874339 587874339 582661953 582661953 379634010 649818178 198949193 1060277474 1060277474 620857128 620857128 771835658 771835658 86678461 53252256 71491640 832254120 915317963 916455003 1035939371 1044246303 1044246303 275786823 56125786 569493859 812567525 854963456 854963456 23593984 231375232 231375232 191255624 402788754 738725944 738725944 873134815 873134815 446904576 303231124 324422388 725448133 725448133 429181542 687370912 687370912 676726773 35526432 332531312 332531312 512510830 512510830 373818416 535053678 535053678 62654496 295715600 444456496 444456496 435187512 441671064 441671064 149712528 106111784 81780480 42914576 43107392 43107392 4071168 4071168 9437760 12381504 12381504 110133312 110133312 83743524 233183724 233183724 843235458 843235458 350408843 1055490309 1055490309 746743239 1036478328 1036478328 632636305 933131373 991007966 1070472447 1070472447 798446120 382330074 285814968 574885425 989079244 1018892821 1018892821 97028034 225057966 356786346 500271110 500271110 877029374 877029374 424607809 159706880 145351704 67017552 67017552 71971880 71971880 110939992 110939992 109577232 74187408 109317520 109317520 87107424 108639760 108639760 142827844 221762376 823509038 832799011 832799011 994556165 994556165 843319459 959971468 959971468 945196686 475343502 823247534 823247534 680821248 679854149 559157760 742723141 742723141 600258801 790763625 790763625 563489520 751091756 870697033 870697033 1067750040 1067750040 1052514056 988207575 988207575 650312886 682239197 901403384 901403384 511005574 411447380 61975249 199494132 199494132 697568704 697568704 58213880 628122344 628122344 605334836 707852664 707852664 631977321 731830536 731830536 263697680 263697680 254570269 798879157 798879157 676277669 600841940 354486176 389157690 390534931 844053651 844053651 246153060 896496304 1006891023 1006891023 1006891023 833977255 833977255 821559287 687872456 687872456 912059932 912059932 558386332 250924956 573948379 573948379 940497927 940497927 339309343 126574176 842764877 842764877 1018838446 1018838446 700816492 700816492 1067356719 1067356719 675378189 675378189 886588494 886588494 876609675 681088515 805339747 958286407 958286407 720248277 1023899752 1023899752 860290107 1062373011 1062373011 962188715 546541865 596765673 596765673 86401817 640298242 924332379 924332379 688529166 688529166 527046313 527046313 190315188 190315188 173271669 650652908 650652908 289440859 243868764 1057304950 1057304950 612800243 612800243 1028445286 1028445286 974191030 974191030 1068021837 1068021837 1023765063 881003544 881003544 694604100 694604100 346295564 557527689 557527689 544934496 544934496 538230976 93718728 274149218 279018418 300140338 300140338 270058672 6341776 337668264 389064354 389064354 375636689 538057713 728796769 728796769 553918244 375165656 940496698 949011015 949011015 714051290 1072706359 1072706359 900080636 900080636 582450657 608707719 608707719 307824128 654902966 676931205 867182915 867182915 370745831 855138912 855138912 486049691 1036895356 1036895356 659222135 743860748 743860748 586209492 597157105 597157105 196119076 848413811 848413811 329185783 544847505 590100817 967348581 967348581 830191218 859437044 859437044 310110592 555636726 701074724 701074724 830134179 830134179 717633860 391965978 302675114 302675114 289271586 289271586 18874656 77872196 1014513856 1018742607 1018742607 616007503 615988041 503922126 895300912 895300912 443521935 338635786 338635786 319041324 415820248 415820248 277440322 162172964 86545762 17466664 354574370 869085434 869085434 66668785 587738776 587738776 356655304 273152130 577044624 577044624 306229488 15593920 19567680 19567680 41099680 41099680 542593417 542593417 104073824 594928785 594928785 593217680 583139840 584192721 691688165 780114193 780114193 730410473 104470296 104470296 82965712 485792584 485792584 407031942 503352342 1051555918 1051555918 382034954 336177370 121834580 226558352 547631968 547631968 404096261 289214758 289214758 251669024 251669024 305744904 423208710 423208710 374874296 374874296 114525280 144739088 144739088 138709764 164167824 164167824 53654624 53654624 48601072 46850880 29373120 25366528 16287616 163731392 163731392 23004480 31294752 31294752 273959040 273959040 294830786 805329028 939919443 939919443 822269956 956713191 956713191 834961765 681044488 681044488 392507858 581905144 1041186523 1041186523 1033733700 808457347 808457347 721020885 264771474 936908899 936908899 970538157 970538157 683094432 511974962 1031870708 1031870708 906250248 801686781 898128013 898128013 772366612 661339384 661339384 94971072 94971072 73409536 268960002 268960002 915281401 915281401 634264975 612974710 392299282 458620954 458620954 559940973 559940973 591275168 591275168 879959849 879959849 859445043 625108699 600019376 554702080 554702080 296670440 296670440 249087708 793283640 793283640 647761497 1042075167 1042075167 880334113 728649124 497131911 497131911 263369545 606809925 606809925 1025195628 1025195628 810949184 353309096 356512554 356512554 345202592 70965000 569832675 604985545 604985545 899102635 899102635 825303328 889217057 889217057 818062059 669417171 669417171 83047368 82645312 540119841 540119841 272748680 272748680 47168576 166969412 639875176 639875176 604649424 40471672 408596848 408596848 315209506 293342242 373295152 564142270 564142270 151062865 587761672 587761672 152062505 335601992 780734730 780734730 268476744 268476744 77676546 593731792 593731792 581274490 581274490 401996634 679672445 679672445 278453856 991318042 991318042 956436519 981651748 981651748 881844316 738425916 33562672 67113472 67113472 554045472 554121249 554121249 537147425 537135105 554318890 554318890 338661427 586602880 637061097 637061097 631292265 1034994021 1034994021 664555378 120127776 118896131 923610171 927808109 927808109 512803422 849779406 871418255 871418255 756025746 867541024 867541024 560000956 560000956 550712001 225190432 677449293 1019509777 1019509777 1070133478 1070133478 638601103 825284273 825284273 810793330 984477015 984477015 771352557 771352557 810042860 810042860 242075578 455607058 511051840 520584136 520584136 478362062 478362062 166174060 458438064 605176537 605176537 541861115 952513680 952513680 611224476 706401813 706401813 1023071916 1023071916 1012060815 503532161 1032323624 1032323624 1025583215 958472487 953159399 953159399 477959268 1033493726 1033493726 711040960 711040960 639666473 639666473 122957105 315928418 315928418 269871618 344374022 344374022 170142360 270069578 270069578 404037676 404037676 339495424 289054570 289054570 217946700 476750962 478967040 478967040 462366850 419931942 307218848 457575302 457575302 284312642 284312642 409142146 409142146 405493312 405493312 51244420 18751008 18751008 164840308 164840308 309382210 309382210 304405826 419299782 620447440 660861369 660861369 666100579 799794307 799794307 487110197 725721615 929820475 929820475 1012114576 1012114576 349553796 496322158 496322158 157345386 15747200 69731592 144313256 144313256 91363598 24121922 335545258 335545258 291899808 291899808 48289922 298989248 298989248 285811746 50520866 50520866 60075600 60075600 67157104 122079432 122079432 94535768 119832840 121946112 121946112 125914496 125914496 119334048 101543472 544036001 544036001 149615045 176415877 176415877 118052480 890634803 890634803 832508440 832508440 752327310 906700166 906700166 788966575 788966575 604346777 657323410 912348477 912348477 891676971 560581850 189199476 181760123 327777427 327777427 102693912 457500825 563672214 563672214 325267890 325267890 224407582 539725999 866662502 1032637551 1032637551 826574028 482287081 243415598 243415598 463156854 463156854 709226303 709226303 545061112 854514859 912550235 912550235 631752425 631752425 597433936 787110652 787110652 991288468 991288468 780834883 780834883 398644966 562610721 1009911444 1009911444 912922011 911775275 459276726 745147488 851875953 851875953 378849882 888696088 889071880 889071880 880169544 880169544 482678062 147017348 435311046 435311046 478681996 478681996 227941922 208940172 479347320 479347320 329326322 277875232 595169552 630860121 658448930 658448930 578692657 917563738 917563738 845996392 845996392 597130106 637008625 637008625 39786744 98442984 98442984 89470016 37311488 41164944 52401312 54419104 54419104 85394176 92225448 92225448 18330368 27271904 27271904 11644064 27883904 27883904 27928480 49546832 314258480 320605746 320605746 269222656 301415394 301415394 134604804 134604804 692277296 692277296 642928760 939557769 939557769 813136375 813136375 163951224 812851410 969311137 969311137 871385200 975699987 975699987 144745047 674966530 674966530 1051836949 1055051023 1055051023 1043630903 1043630903 954784710 954784710 986120686 986120686 474748984 474748984 985797952 1021462863 1021462863 444935232 444935232 287723908 21136768 21136768 86933093 608504921 608504921 959758882 991872534 991872534 886451168 886451168 49270329 338412418 338412418 273597930 282708258 517541801 517541801 212179468 651894958 957452197 957452197 774815876 842041608 1070731972 1070731972 1011889522 959086917 1044944409 1044944409 587037070 969283783 969283783 726239951 439879446 439879446 387817764 756295813 756295813 626773280 623038761 539513896 734017651 734017651 695390944 788976259 987105932 987105932 230182900 579346880 579346880 33554448 33554448 145626576 651942964 651942964 434633122 434633122 320729344 284813250 146301062 298076384 298076384 44878944 63690800 331890160 383611036 655723409 655723409 294955722 697395243 721652397 721652397 630829529 700110693 700110693 618953961 618953961 610615656 610615656 1067060870 1067060870 980212472 637409568 633027945 554063928 77108272 149427826 402315262 402315262 504028064 504028064 429670720 429670720 111938904 111938904 674548037 674548037 655361326 655361326 1037686347 1037686347 995680645 178946102 443209110 443209110 326631830 326292402 291406866 270797058 289046281 638080537 638080537 881555283 881555283 587874339 587874339 582661953 582661953 379634010 649818178 131136 1060277474 1060277474 620857128 620857128 557442849 563127072 563127072 86489096 86489096 142627328 177363020 243669084 243669084 67551316 278927376 282544908 479503058 569493859 812567525 854963456 854963456 614764758 614764758 522373603 191255624 402788754 738725944 738725944 873134815 873134815 415739337 278447364 466620948 725448133 725448133 429181542 687370912 696894816 696894816 42361584 42361584 153127248 153127248 373818416 373818416 520751690 520751690 63839472 105678426 369101016 369101016 9695808 9695808 20856340 188037764 188037764 155390752 30971136 58784000 58784000 4071168 36183360 42342480 42342480 26886736 71058272 71058272 48601920 113928592 284744665 647943040 647943040 617516674 479863256 479863256 86969518 1036478328 1036478328 632636305 860363256 860363256 553001140 553001140 382330074 382330074 427697270 427697270 989079244 989079244 420174807 97028034 225057966 356786346 500271110 500271110 949629320 949629320 476649833 226809950 295549832 295549832 374836426 374836426 327944722 327944722 302785176 380478154 380478154 336355328 109317520 98953704 95625216 621437441 621437441 374739908 823509038 823509038 772041477 1000622277 1000622277 839385251 959971468 959971468 892815107 889241643 889241643 680821248 967647984 967647984 280309733 413328298 611342972 645972057 645972057 369131587 82923937 751091756 870697033 870697033 548743645 1052514056 1052514056 988207575 988207575 648357196 682239197 901403384 901403384 511005574 400660608 61975249 199494132 199494132 153110661 153110661 57216720 61106368 61106368 605334836 707852664 707852664 631977321 731830536 731830536 126067020 70804768 70804768 19482152 11078112 702677760 702677760 127856512 127856512 113559768 93342384 246153060 246153060 129229564 134966400 134966400 139026048 139026048 68231688 177776760 395415692 395415692 74073254 182052564 256714284 256714284 312103474 851235508 851235508 437150613 427657010 295711018 842764877 842764877 1018838446 1018838446 700816492 700816492 1067356719 1067356719 775957632 775957632 886588494 886588494 759845578 751757911 839566849 839566849 739482175 720248277 720248277 65460720 548180080 548180080 4195393 545390720 546541865 596765673 647109024 845677403 845677403 924332379 924332379 688529166 688529166 527046313 527046313 190315188 190315188 173271669 650652908 650652908 298617342 453034038 494962512 494962512 227282028 428526767 1028445286 1028445286 75681864 77615360 93397608 228438788 228438788 90004768 90004768 121799944 484906164 484906164 288085608 202937316 250229856 250229856 280249568 280249568 279388096 281020768 300140338 300140338 270058672 259571948 337668264 389064354 389064354 228510214 329388322 461677810 461677810 411641330 375165656 375165656 1012680342 1012680342 745855627 680858198 680858198 900080636 900080636 772373576 772373576 1024370690 1024370690 680669911 303078532 303078532 427297280 427297280 855138912 855138912 538129571 434709990 404904720 252954860 752138828 752138828 588549536 597157105 597157105 196119076 848413811 848413811 329185783 544847505 590100817 590100817 726453429 726453429 450995272 134481924 77930828 908740634 977542182 977542182 350243834 321567840 869308450 955729954 955729954 419619372 419619372 289271586 18874656 614523908 1014513856 1018742607 1018742607 616007503 615988041 82455433 738436400 738436400 157583748 157583748 138482076 76072008 79276112 79276112 403462484 403462484 338566144 805376003 805376003 632686945 293032097 339947658 604766984 877568666 877568666 640555394 539542785 306704498 322961586 322961586 19449104 19449104 384692048 384692048 452097004 452097004 22351872 53818144 58303232 58303232 583139840 584192721 691688165 780114193 780114193 730410473 104470296 104470296 415526402 485792584 485792584 438647168 914582603 914582603 844004755 844004755 581828936 0 145697804 422264068 422264068 211892522 508373824 508373824 251076792 220225836 220225836 227193428 227193428 214433988 214009516 214009516 198197920 143849684 236957764 236957764 42074624 53654624 53654624 48601072 46850880 29373120 25366528 17725600 32687112 32687112 336593418 336593418 573051436 831822166 907286152 912917599 912917599 957242535 957242535 822269956 956713191 956713191 891864363 304644153 66331524 66331524 376709568 376709568 340599578 982827938 982827938 808457347 264771474 264771474 529668298 529668298 970538157 970538157 511974962 511974962 990666946 990666946 734915829 801686781 898128013 898128013 726612308 659233840 659233840 119939200 119939200 131688280 268960002 268960002 915281401 915281401 634264975 612974710 314470814 90965480 224402856 559940973 559940973 591275168 591275168 879959849 879959849 859445043 625108699 932101449 932101449 890641162 890641162 771634474 771634474 364908362 364908362 571494086 1042075167 1042075167 880334113 823793187 497131911 497131911 263369545 606809925 606809925 1025195628 1025195628 810949184 353309096 356512554 356512554 345202592 719503048 1004507701 1004507701 992125024 992125024 899102635 825303328 889217057 889217057 818062059 669417171 669417171 87795608 87795608 540119841 540119841 272748680 272748680 165383552 166969412 639875176 639875176 604649424 45015392 208359564 315209506 417442837 823995811 850726519 850726519 846286720 846286720 587761672 587761672 339805087 339805087 622820529 622820529 871551737 871551737 527582906 593731792 593731792 597837995 597837995 495063156 679672445 679672445 278453856 991318042 991318042 956436519 981651748 981651748 881844316 740011278 680178250 680178250 739676685 739676685 580193817 554121249 537147425 537135105 306799931 306799931 124310936 586602880 637061097 637061097 70304520 70304520 134761224 134761224 120127776 804332020 804332020 605028873 802261476 802261476 472121362 507560704 708057734 809632119 867541024 867541024 560000956 560000956 540591873 225190432 225190432 831541880 831541880 127042147 224494112 288973492 288973492 461096382 461096382 524158548 524158548 377488004 214908108 235782192 235782192 185927684 167772160 521659824 521659824 79959144 79959144 166174060 166174060 458438064 746398779 746398779 473219403 952513680 952513680 611224476 706401813 706401813 671351872 839778371 839778371 915888201 915888201 570890788 722543157 722543157 152451089 477959268 477959268 1033493726 1033493726 632606940 938438281 938438281 676332165 676332165 593632052 315928418 269871618 344374022 344374022 170142360 245502080 245502080 77859144 81053952 81053952 6310048 19818656 19818656 19353728 458854053 558966291 558966291 537225217 537225217 868374592 868374592 652187149 795519533 821684161 821684161 824303907 824303907 740975364 740975364 18751008 164840308 164840308 309382210 309382210 304405826 343619336 343619336 82861440 116103304 116103304 466839172 471477478 813835080 813835080 279977987 233519074 1012114576 1012114576 693109824 496322158 496322158 157345386 69208992 69731592 144313256 144313256 269484640 269484640 335545258 335545258 268763136 80175304 318814562 318814562 274692306 311477872 311477872 287488880 99416344 48581720 67157104 300496000 384312720 384312720 108887744 121946112 121958008 121958008 108594256 35915752 172507360 544036001 544036001 149615045 684282960 684282960 545461269 890634803 890634803 832508440 832508440 807852291 976301973 976301973 544858191 499508615 499508615 267254973 833432052 891676971 891676971 560581850 46314520 80340168 80340168 68783304 68783304 79259736 260587520 268609414 268609414 533271396 533271396 227686526 491062364 491062364 421856516 421856516 781911670 781911670 507986801 455539528 111419456 250988056 498121792 844762512 963435715 963435715 663235516 402653190 402653190 306229252 134376328 272669864 991288468 991288468 172943927 307832466 307832466 360943720 360943720 1034457906 1034457906 455090295 459276726 745147488 873944876 873944876 378849882 888696088 888696088 816375874 880169544 880169544 278580930 147017348 435311046 477137896 478681996 478681996 227941922 208940172 479347320 479347320 329326322 34943152 595169552 595169552 277489635 34390144 65015152 65015152 61604336 111403008 359556304 597130106 637008625 637008625 891955946 891955946 830933338 830933338 60915056 69961736 69961736 73829792 100870288 100870288 51869328 118267656 118267656 30873952 30873952 29704256 29704256 22661024 27928480 27928480 390336772 526784958 526784958 541478866 541478866 914120598 1036541219 1036541219 633916284 633916284 642928760 642928760 207666060 169918740 187728128 220201484 220201484 969311137 969311137 871385200 871385200 868811507 42033553 583886228 671951877 1051836949 1055051023 1055051023 1043630903 1043630903 954784710 954784710 986120686 986120686 806359712 442771840 985797952 1021462863 1021462863 412686352 43392582 7296128 7296128 131868816 131868816 98067280 98067280 740330432 740330432 634460376 805636107 805636107 552322401 22622210 913659258 929619731 929619731 883127040 517541801 374027418 374027418 504602524 774815876 774815876 842041608 1070731972 1070731972 1038758046 959086917 959086917 592726029 1066512227 1066512227 969283783 1055196869 1055196869 65660400 460940015 460940015 270602372 353419818 474384678 474384678 991138303 999585987 999585987 912574875 987105932 987105932 230182900 544604544 545135136 545135136 594058848 594058848 651942964 651942964 594561248 856244882 856244882 367050858 546593680 585114513 585114513 629532000 629532000 331890160 383611036 687989576 687989576 294955722 697395243 848742460 848742460 661002681 213860172 213860172 618953961 618953961 610615656 610615656 558159200 84138768 76603528 128975736 261757452 261757452 226532448 226532448 402315262 402315262 504676904 504676904 455530806 429670720 111938904 503579970 674548037 811207199 811207199 532709832 683737376 995680645 995680645 42219399 571472913 571472913 577691025 581442753 603509889 603509889 549479616 549479616 1138688 5252490 446694724 446694724 45774336 174294484 463687680 463687680 303706984 224047453 603580401 873103409 888383179 978890715 978890715 813636486 563127072 161514368 498184296 537047786 537047786 972725643 972725643 953935503 920248001 688035548 479503058 479503058 17961504 806975778 816448035 816448035 964985300 964985300 466702235 16627702 537999052 550913864 611245449 611245449 338606467 270625604 672664400 672664400 844440726 844440726 693513088 696894816 696894816 42361584 598377521 885660835 885660835 766433354 478203982 282106974 63839472 63839472 105678426 377818728 377818728 194212210 526438384 526438384 288482082 296586594 311418416 812492003 812492003 556136480 830420897 850604291 871128689 871128689 558698705 562785824 836764131 926474056 926474056 284744665 809813323 809813323 917354024 917354024 597625213 151028776 102659401 268728064 272629506 860363256 860363256 553001140 563145483 563145483 495191102 957284911 957284911 517669142 1016869013 1016869013 426100904 426100904 158180684 596674603 596674603 949629320 949629320 649932032 649932032 356059776 295549832 374836426 374836426 327944722 327944722 302785176 380478154 380478154 336355328 98953704 98953704 95625216 621437441 621437441 374739908 374739908 347478990 574649250 1000622277 1000622277 839385251 624955571 759566476 759566476 889241643 889241643 107240016 967647984 967647984 280309733 413328298 611342972 645972057 645972057 702832965 702832965 46197712 1026927368 1026927368 965855615 1057013823 1057013823 44597375 109841616 109841616 103024920 398381880 398381880 124809904 124809904 331033954 331033954 47444688 302057938 302057938 36024912 61106368 278208880 278208880 291765442 297941354 455989548 455989548 121528348 24981408 143517892 226839396 251676948 409494566 719185492 853946308 853946308 711304615 711304615 1046792607 1046792607 434135208 743489548 792844909 792844909 873791031 918816987 918816987 671617518 671617518 395415692 1007137588 1058327103 1058327103 256714284 578814905 851235508 1046989826 1046989826 905660186 295711018 375515186 375515186 540787072 943200914 943200914 535204686 535204686 218276268 775957632 775957632 336228410 646532172 751757911 751757911 1042077370 1042077370 995353365 995353365 602618334 826421666 918896632 918896632 633138985 633138985 817682898 817682898 647109024 845677403 845677403 738342693 148323012 781716357 781716357 64663408 64663408 80740992 85508200 85508200 4317312 621338859 621338859 453034038 497893758 847775472 847775472 730859999 839689356 839689356 765669741 765669741 873975077 873975077 976770845 976770845 398464840 845452482 845452482 841584768 288085608 202937316 141144260 141144260 300056576 300056576 279388096 281020768 281020768 348192995 348192995 291628400 974865787 974865787 845886867 228510214 297031305 297031305 590492873 590492873 49602882 307571346 1012680342 1012680342 745855627 680858198 680858198 273223811 897726564 1006970895 1023491127 1024370690 1024370690 680669911 303078532 303078532 427297280 427297280 198977206 538129571 538129571 404904720 404904720 252954860 752138828 752138828 588549536 334360354 334360354 23069088 379389672 379389672 291389970 122704808 404306784 404306784 376229274 450995272 450995272 140020480 140905732 908740634 977542182 977542182 350243834 321567840 869308450 955729954 955729954 419619372 764927181 764927181 883826025 1018113068 1018113068 684842379 873466434 1007817231 1007817231 939591377 738436400 738436400 692195493 620888204 138482076 76072008 79276112 79276112 403462484 403462484 338566144 805376003 805376003 632686945 293032097 339947658 604766984 877568666 877568666 640555394 539542785 244244886 322961586 322961586 19449104 19449104 384692048 384692048 594293549 594293549 227292304 686177973 686177973 583968961 151181008 36699408 713843545 713843545 689187697 798826477 798826477 1039995008 1039995008 415526402 147336260 438647168 914582603 1040234692 1040234692 844004755 849226951 849226951 336346136 631968774 631968774 501745690 508373824 508373824 245138130 190416564 190416564 227193428 227193428 214433988 214009516 214009516 198197920 143849684 236957764 236957764 42074624 25432592 21072000 17312448 20909600 20909600 17725600 27395776 32687112 32687112 336593418 336593418 573051436 831822166 987441732 987441732 912917599 957242535 957242535 761007789 893891373 893891373 891864363 609255625 475104326 271144397 376709568 376709568 475544628 982827938 982827938 732880245 732880245 413274412 413274412 360710250 184681126 166920572 281327619 281327619 361009766 361009766 591564973 591564973 309251324 726612308 726612308 114235777 26754280 119939200 119939200 131688280 131688280 81339976 43009672 22069920 548345992 980342198 980342198 463737175 441768246 441768246 415188688 173221508 173221508 442522768 442522768 440266518 436605394 932101449 932101449 890641162 890641162 771634474 1014890438 1014890438 364908362 948978249 948978249 824186624 824186624 823793187 849348930 849348930 580985169 23684424 90777000 353375008 430385568 430385568 281566528 342156096 342156096 173223828 719503048 1004507701 1004507701 992125024 992125024 853603183 853603183 401728506 401728506 323654176 323654176 316728014 316728014 261837810 50907136 51121200 62292992 62292992 165383552 165383552 163052388 181340884 181340884 46728596 208359564 208359564 417442837 823995811 850726519 850726519 846286720 846286720 199852512 222562471 339805087 339805087 622820529 622820529 871551737 871551737 561173409 575024656 575024656 678625854 678625854 550648609 495063156 193073262 33554432 33554432 8388672 10485824 10485824 8652864 740011278 740011278 680178250 762764960 762764960 739676685 728926816 533024998 580641649 580641649 596568345 596568345 864141250 864141250 796490140 476223775 476223775 70304520 134761224 157822080 157822080 804332020 804332020 605028873 802261476 802261476 472121362 507560704 788828816 809632119 850692293 850692293 150208521 752092125 779094669 779094669 676931205 831541880 831541880 951905084 951905084 614938953 945552149 945552149 833827694 343983602 516743798 516743798 214908108 437705238 437705238 386957974 386957974 521659824 521659824 350688780 339950618 339950618 400216808 402628088 746398779 746398779 725760416 599984580 881332635 1009994413 1009994413 1034234927 1034234927 839778371 839778371 915888201 915888201 839387154 839387154 537660417 302253075 120135992 120135992 1005313758 1005313758 632606940 938438281 938438281 676332165 676332165 593632052 184277278 368820202 433391472 499333330 499333330 300010090 300010090 401815394 401815394 280130018 280130018 224413354 215484108 80236996 458854053 558966291 558966291 538606208 965062183 965062183 868374592 652187149 795519533 821684161 821684161 824303907 824303907 740975364 740975364 359752844 155572390 39323392 39323392 8456480 27601248 27601248 27536992 23468448 43357636 176160660 176160660 176056848 813835080 813835080 279977987 233519074 874664768 874664768 693109824 292079010 292079010 134521092 69208992 69208992 24555904 151302244 269484640 269484640 29360896 29360896 80175304 80175304 318814562 318814562 122761418 311477872 311477872 287488880 99416344 48581720 53317960 300496000 384312720 384312720 108887744 108887744 121958008 131976496 131976496 38054744 172507360 172507360 18399232 18399232 684282960 700458112 700458112 390088240 390088240 830800432 830800432 807852291 976301973 976301973 672015424 672015424 104806517 44975976 319132980 436606998 436606998 187430196 187430196 378012762 378012762 404714078 404714078 480145230 480145230 290648260 290648260 533271396 533271396 227686526 491062364 491062364 421856516 421856516 781911670 781911670 518085169 455539528 435169114 779994611 779994611 844762512 963435715 963435715 412979479 564530215 873392425 873392425 753263639 423630606 423630606 674943089 674943089 307832466 307832466 360943720 360943720 1034457906 1034457906 455090295 420916008 826652810 873944876 961286986 961286986 608622729 278039243 277639624 277639624 269957634 166933476 166933476 223892804 477137896 477137896 97819022 77188328 93688352 93688352 98324144 98324144 55143088 309571312 309571312 540409617 587202609 587202609 311525083 378102410 887048456 890792736 890792736 916381275 916381275 894913778 891955946 830933338 830933338 101318656 101318656 100798488 73829792 100870288 100870288 77223072 118267656 118267656 76261544 30873952 83760160 99294792 99430816 99430816 23346096 390336772 872366067 872366067 553837587 541478866 1044680094 1044680094 1049676822 1049676822 889766955 889766955 346930228 207666060 908845131 908845131 554428676 1059461439 1059461439 711191166 1001488646 1001488646 576823376 76669512 116515544 116515544 116474000 116474000 37749392 37749392 606631890 919859931 919859931 720142088 806359712 806359712 552406428 552406428 1014959821 1014959821 412686352 807290112 807290112 546087488 546087488 131868816 1026895755 1026895755 867798171 998582391 998582391 805636107 805636107 552322401 523504020 913659258 929619731 929619731 883127040 30075488 374027418 374027418 373490688 370226482 376345216 376345216 294785670 1038758046 1038758046 666845049 417679938 417679938 1066512227 1066512227 366267114 1055196869 1055196869 65660400 460940015 460940015 223615125 223615125 519393934 519393934 991138303 999585987 999585987 912574875 777149190 20185216 0 544604544 545135136 545135136 594058848 594058848 115799176 594561248 594561248 856244882 856244882 367050858 546593680 585114513 585114513 629532000 629532000 348331018 411326540 1033851650 1033851650 902773995 902773995 848742460 848742460 1037324510 1037324510 213860172 216878292 748251020 748251020 292078657 1059601450 1059601450 892811972 787744660 740688996 740688996 226532448 226532448 223483204 223483204 504676904 504676904 455530806 353119914 353119914 503579970 503579970 811207199 811207199 532709832 634389209 634389209 275068246 275068246 571472913 571472913 577691025 581442753 603509889 603509889 549479616 549479616 268636224 1013610459 1013610459 639653193 639653193 177418845 1003229888 1003229888 537368623 224047453 722518581 873103409 888383179 978890715 978890715 813636486 203232298 543805064 547237101 739008065 739008065 972725643 972725643 953935503 920248001 688035548 242375320 645323673 845660603 925491586 925491586 816448035 964985300 964985300 466702235 28089532 537999052 537999052 216603733 364330030 364330030 197573456 672664400 672664400 844440726 844440726 693513088 693513088 564804481 588853488 598377521 885660835 885660835 766433354 478203982 515901584 914491503 914491503 439633864 1028705132 1028705132 986500311 940766161 539880705 686714500 686714500 810871360 812492003 812492003 556136480 830420897 850604291 871128689 871128689 558698705 562785824 836764131 926474056 926474056 41142730 809813323 834486026 917354024 917354024 849593951 1018809442 1018809442 353527317 272629506 818481459 818481459 454642085 744064366 744064366 864157115 957284911 957284911 705564198 1016869013 1016869013 450498518 937076896 937076896 879020427 596674603 891907368 891907368 649932032 649932032 356059776 27416640 27416640 48895440 117066320 117066320 101731136 101731136 120851016 120851016 57936744 31726944 50990440 113773216 113773216 190206656 826577814 826577814 548541249 318890034 579676272 839509011 839509011 759566476 759566476 366921287 666168045 666168045 341536774 710759840 710759840 709770517 686772197 597898192 597898192 702832965 702832965 539322497 1026927368 1026927368 965855615 1057013823 1060970871 1070934783 1070934783 637873564 721954077 721954077 625499536 451323036 413559770 413559770 331033954 48833746 302057938 302057938 42711248 36024912 278208880 278208880 291765442 297941354 455989548 455989548 130409688 130409688 143517892 226839396 251676948 409494566 719185492 853946308 853946308 711304615 711304615 1046792607 1046792607 434135208 743489548 792844909 792844909 873791031 918816987 918816987 794435006 794435006 2097156 1007137588 1058327103 1058327103 240878138 638982963 930507036 1046989826 1046989826 905660186 283719570 633088085 767961228 970221508 970221508 943200914 535204686 535204686 218276268 545412640 844287017 898265179 898265179 541621385 576378513 1042077370 1042077370 995353365 995353365 602618334 826421666 918896632 918896632 633138985 633138985 817682898 817682898 607976489 562975969 738342693 738342693 158604576 781716357 928462653 974906060 974906060 856340197 1024087725 1024087725 356312387 950641799 950641799 686242245 686242245 847775472 847775472 730859999 839689356 839689356 1008817638 1008817638 873975077 873975077 976770845 976770845 398464840 845452482 845452482 841584768 88856232 88856232 87094664 87094664 300056576 300056576 270843968 232818212 232818212 348192995 348192995 291628400 974865787 974865787 980436708 980436708 855847362 855847362 785503364 785503364 645631705 270523409 709081228 783516561 783516561 1019884623 1019884623 675285696 897726564 1006970895 1023491127 1023491127 264505596 264505596 239725664 156022500 156022500 46198116 31592928 124499112 256230508 256230508 63246576 54584928 54584928 45913600 59652480 59652480 53053808 322252080 322252080 43330128 65599200 65599200 188732464 753956068 753956068 634502073 634502073 624147289 179129181 140905732 52767092 17016928 17016928 142781716 187204608 187204608 203725216 416099659 764927181 764927181 883826025 1018113068 1018113068 684842379 873466434 1007817231 1007817231 939591377 675807401 692195493 692195493 620888204 142790724 61416816 239971280 252830268 252830268 272230146 355436070 405595394 405595394 385430904 116982224 116982224 33554576 74596932 74596932 203928628 975240014 975240014 433266995 471550892 487248942 487248942 455689774 153237394 594293549 594293549 533726948 686177973 686177973 583968961 508036236 517997910 713843545 713843545 252514908 798826477 798826477 1039995008 1039995008 618326259 618326259 351161472 715714130 1040234692 1040234692 744168136 849226951 855363293 855363293 631968774 631968774 698840208 782537960 782537960 85846776 154772864 154772864 133421224 133421224 102539976 102539976 80335568 128017016 128017016 95991648 81876320 30880544 52893920 52893920 56808320 56808320 24338592 24338592 27395776 27395776 21755040 8550112 159267744 159267744 440793110 987441732 987441732 667718782 793400381 857367060 957084711 957084711 431675238 609255625 609255625 475104326 271144397 701691637 701691637 696209912 769623190 830134255 830134255 732880245 413274412 413274412 360710250 907300881 907300881 802067661 644162408 644162408 730122101 730122101 901552165 901552165 874063371 627048873 627048873 561079432 10069952 9454016 16803584 20571936 20571936 552864705 552864705 547225729 980342198 980342198 463737175 441768246 599050769 599050769 590353184 590353184 824786017 986106267 986106267 788396107 551849832 744753828 744753828 623903529 762174153 1014890438 1014890438 360920611 948978249 948978249 831260064 831260064 820251075 849348930 849348930 580985169 577873472 231858924 1037124204 1037124204 940123752 520290892 520290892 297812058 297812058 137899196 882636363 882636363 1019782223 1019782223 853603183 853603183 401728506 401728506 339273360 323654176 316728014 316728014 353367546 920551007 920551007 1046903720 1046903720 800976765 642930068 642930068 616905728 616905728 46728596 160065172 178942820 185742644 185742644 178263360 58720368 171491696 171491696 170403092 170403092 671696128 671696128 221216692 221216692 560993920 561197985 561197985 575024656 575024656 692198127 692198127 550648609 671847139 671847139 330772288 771302810 771302810 694178533 940777540 940777540 676850592 676850592 614697914 762764960 762764960 728926816 728926816 611503704 611503704 580641649 599419712 599419712 864141250 864141250 796490140 803465316 803465316 969220705 969220705 633415798 157822080 480280791 480280791 350569611 777579528 888734217 888734217 640729881 949279632 949279632 547389952 547389952 150208521 752092125 779094669 779094669 759840808 676931205 881752750 951905084 951905084 614938953 945552149 945552149 833827694 430456246 516743798 516743798 471515742 471515742 437705238 386957974 386957974 306201136 404752406 404752406 441063430 441063430 400216808 490960940 490960940 725760416 725760416 586081508 881332635 1009994413 1009994413 1034234927 1034234927 991999917 941497863 941497863 436601353 839387154 839387154 1040785436 1040785436 805831683 329757116 329972852 371881168 396484986 396484986 350774448 184598580 184598580 188050196 188050196 368820202 535306736 535306736 499333330 300010090 300010090 401815394 401815394 280130018 280130018 224413354 215484108 80236996 320199842 406798086 406798086 538606208 965062183 965062183 835241187 127108506 1070186348 1070186348 508930460 508930460 431152582 431152582 359752844 359752844 308303088 337905672 337905672 428266370 428266370 413585478 413446336 603005937 603005937 596979721 686956560 686956560 986860418 986860418 940702341 940702341 874664768 874664768 812548230 962206533 962206533 873443846 499669572 24555904 139587872 151302244 406864642 406864642 295707426 295707426 271845696 31930848 32774528 32774528 345652768 345652768 57439712 59247648 59247648 43992136 76804680 110342696 110342696 59140896 111210600 111210600 101024040 131976496 131976496 99214056 170501613 573121809 573121809 394533239 776948785 776948785 700458112 92276745 513766409 513766409 475425186 475425186 83696596 250295772 672015424 720146073 720146073 715991952 715991952 436606998 687352766 687352766 452721652 378012762 378012762 404714078 404714078 480145230 480145230 290648260 290648260 134749828 445986000 445986000 408499350 385421872 429917976 429917976 944649391 944649391 518085169 326098814 435169114 779994611 779994611 302720338 447329835 579842945 579842945 1013193929 1013193929 873392425 782371976 423630606 423630606 674943089 861030989 861030989 777113513 777113513 568291323 986517322 986517322 295548477 420916008 826652810 826652810 961286986 961286986 835789163 900155466 900155466 277639624 363235496 363235496 166933476 223892804 341886464 341886464 232424842 77188328 185275588 193038640 193038640 592282897 593617329 593617329 837221393 837221393 587202609 885704658 885704658 859534073 887048456 890792736 914331952 916381275 916381275 894913778 378211634 273558530 289931442 339937554 381762592 381762592 56943008 90608816 90608816 77223072 68057096 76261544 76261544 59249904 318378802 318378802 286794336 286794336 322615874 322615874 889358916 889358916 781863485 476467423 1044680094 1044680094 1049676822 1049676822 889766955 909639781 909639781 111763762 908845131 908845131 554428676 1059461439 1059461439 722584041 1001488646 1001488646 278137410 278137410 649110110 649110110 707116548 707116548 821215483 821215483 789746197 919859931 919859931 720142088 720142088 538577102 552406428 552406428 1014959821 1014959821 419045893 807290112 807290112 546087488 546087488 16553952 1026895755 1026895755 867798171 998582391 998582391 672211461 672211461 181941457 523504020 622015018 622015018 603723097 537339904 437912585 764860828 764860828 635304347 554558008 1008865287 1008865287 604114953 682236108 876223743 876223743 1006112105 1006112105 200020304 200020304 13816512 558289520 558289520 20610370 334054672 334054672 259186954 474081036 519393934 519393934 475179998 185749652 185749652 239126708 239126708 100703632 255987008 255987008 229772576 36934784 69353984 115799176 115799176 105434952 105434952 100256312 100256312 220850304 305385812 329969558 329969558 470468618 470468618 348331018 411326540 1033851650 1033851650 902773995 1039796522 1039796522 848491708 1037324510 1037324510 602026536 553389681 748251020 748251020 559532416 1059601450 1059601450 892811972 787744660 740688996 740688996 22960300 157815218 436868118 436868118 319476638 152995362 351586360 503508872 503508872 394035450 470347248 470347248 284841700 421663086 466203878 466203878 275068246 275068246 176621794 167775956 320912418 320912418 173148800 157885860 354513186 354513186 673370373 1013610459 1013610459 639653193 679817408 679817408 1003229888 1003229888 537368623 152720401 722518581 722518581 722518581 722518581 682614821 682614821 82499016 543805064 547237101 739008065 865431274 865431274 389839954 389839954 271796760 242375320 242375320 645323673 845660603 925491586 925491586 71387008 818942916 818942916 434594050 434594050 631898176 631898176 450895903 364330030 364330030 568369306 568369306 782754302 782754302 570995744 199373200 564804481 564804481 588853488 588853488 176210004 176210004 317247954 317247954 515901584 914491503 914491503 439633864 1028705132 1028705132 986500311 940766161 539880705 686714500 686714500 810871360 810871360 49298274 13681344 13681344 13755072 19006400 19006400 29520608 29520608 7386016 121779724 260759412 260759412 137135792 933571193 933571193 849593951 941206294 1018809442 1018809442 943041399 429679585 577102298 609298450 609298450 744064366 744064366 864157115 864157115 784865621 705564198 889719657 889719657 850320723 937076896 937076896 879020427 521033141 347669402 347669402 299443000 483150234 483150234 345023282 317733114 386536506 386536506 389234904 389234904 340610008 385232408 385232408 57936744 58787872 60500672 638005653 638005653 1030124669 1030124669 826577814 548541249 318890034 579676272 839509011 839509011 268461073 128590924 250363731 666168045 666168045 341536774 710759840 710759840 709770517 686772197 541679488 541679488 688941701 688941701 539322497 141885925 21325856 796621314 994649271 1060970871 1070934783 1070934783 637873564 721954077 721954077 625499536 451323036 413559770 413559770 275777424 306000066 306000066 47390226 47153360 288062752 288062752 293890136 293890136 126563448 132174072 132174072 130583976 130409688 58255104 65214482 292858450 292858450 299244258 299244258 472999876 511187250 511187250 186013450 107691400 259157344 259157344 196350076 196350076 505188903 605935785 607414931 794435006 794435006 681345596 760828046 760828046 387012248 325648400 638982963 930507036 1012696209 1012696209 843285370 619872912 633088085 767961228 970221508 970221508 931632168 572243153 697495387 697495387 788645218 844287017 898265179 898265179 606796552 338744587 338216202 152076546 219813420 404397572 717771970 717771970 1047258569 1047258569 180697181 415548048 415548048 539518784 675669185 675669185 185664768 198183292 198183292 537350441 928462653 974906060 974906060 856340197 1024087725 1024087725 874528696 950641799 950641799 686242245 686242245 407945862 657838018 657838018 596713495 428160551 1008817638 1008817638 741133386 444907634 444907634 420220440 333586232 373850522 373850522 470524476 470524476 155971588 156935396 156935396 87514016 270843968 270843968 96750274 473958082 904220352 904220352 287058496 287058496 93831946 980436708 980436708 855847362 855847362 785503364 785503364 770069483 770069483 709081228 783516561 783516561 1019884623 1019884623 738458184 628876853 598014429 598014429 1040841693 1040841693 994912296 994912296 872553628 172856484 705293716 705293716 564520257 865276225 865276225 868244496 868244496 271273648 46352576 66770928 321082210 321082210 324781136 364498378 364498378 325909451 938352123 938352123 753956068 753956068 634502073 634502073 727259722 998367351 998367351 809825655 809825655 503578890 459514358 1057579018 1057579018 809885838 416099659 741617069 741617069 623454053 426457575 426457575 344722506 344722506 294126690 810116288 810116288 537395225 152191272 220291848 220291848 142790724 61416816 239971280 252830268 252830268 272230146 355436070 405595394 405595394 385430904 116982224 116982224 268501280 268501280 74596932 543165272 975240014 975240014 433266995 471550892 487248942 487248942 455689774 423224100 423224100 533726948 533726948 517737614 517737614 449316054 508036236 517997910 517997910 495453294 495453294 512364556 512364556 486127457 800631893 800631893 618326259 308332820 715714130 715714130 80099848 184221704 585911881 855363293 855363293 278869958 142875338 698840208 782537960 782537960 230295828 230295828 191433604 191433604 161952812 236487764 236487764 76290136 128017016 139727632 139727632 81876320 46976208 64620352 64620352 56808320 56808320 24338592 24338592 19997472 2314784 4346496 4346496 3151872 138094176 138094176 27207428 264192 270056448 270056448 857367060 957084711 957084711 661062078 839389241 839389241 296797026 296797026 701691637 701691637 696209912 696209912 830134255 830134255 233620448 408159536 538055176 605028425 907300881 907300881 802067661 644162408 644162408 730122101 730122101 901552165 901552165 874063371 627048873 627048873 561079432 36733056 15246144 10567936 16867872 16867872 552864705 552864705 547225729 563875777 563875777 54663472 54663472 599050769 599050769 590353184 590353184 824786017 986106267 986106267 788396107 877534347 877534347 880803723 880803723 703187278 703187278 480568805 891568059 991035515 991035515 1054267105 1054267105 820251075 848383427 848383427 577873472 577873472 380805530 1037124204 1037124204 940123752 520290892 520290892 297812058 297812058 735603448 882636363 882636363 1019782223 1019782223 445736946 445736946 164627174 339273360 339273360 306252432 508420696 508420696 403359022 920551007 920551007 1046903720 1046903720 800976765 642930068 642930068 616905728 616905728 445333522 411185172 178258020 195769716 195769716 52107508 697356917 697356917 715768500 728352181 728352181 671696128 671696128 711160581 711160581 560993920 561197985 561197985 566756992 566756992 692198127 692198127 541967745 671847139 671847139 330772288 771302810 771302810 694178533 940777540 940777540 676850592 676850592 614697914 97664512 97664512 80486416 97991400 718692770 718692770 441924246 599419712 599419712 638956968 638956968 397736759 803465316 803465316 969220705 969220705 633415798 638435472 638435472 516693082 516693082 777579528 888734217 888734217 640729881 949279632 949279632 592611474 295717539 61081968 715297632 715297632 759840808 759840808 542315712 919212641 919212641 311670480 727257221 727257221 538993078 1019013695 1019013695 1011475599 708354438 471515742 471515742 407241984 436250786 436250786 287312256 404752406 404752406 441063430 441063430 323349664 490960940 835379585 835379585 946045120 946045120 541329537 771960861 771960861 631883113 991999917 991999917 941497863 941497863 774009096 790870793 790870793 1040785436 1040785436 805831683 329757116 441130384 935854181 935854181 539587761 544136592 572755985 572755985 552430912 188050196 15688128 535306736 535306736 157463966 25391188 5931648 4900032 8963136 9590272 9590272 0 403707876 403707876 281690164 707148373 707148373 299840801 836013568 836013568 835241187 987905013 1070186348 1070186348 936540972 936540972 954130119 954130119 852647793 308303088 959128624 975311127 975311127 446870881 683427943 683427943 540156929 603005937 603005937 596979721 686956560 686956560 986860418 986860418 940702341 940702341 918830046 497212030 812548230 972293637 972293637 873443846 499669572 80764672 139587872 139587872 406864642 406864642 295707426 295707426 271845696 107154200 296429794 296429794 345652768 345652768 287926136 275113346 94824490 112192856 112192856 368380144 368380144 280492808 111210600 111210600 79975360 82053576 82053576 99214056 170501613 679600242 679600242 544476294 776948785 893927972 893927972 1008300160 1008300160 513766409 475425186 475425186 83696596 250295772 616333056 720146073 720146073 715991952 715991952 380970605 687352766 687352766 452721652 359574264 371744336 371744336 251593352 251593352 40842186 106578852 137703172 137703172 445986000 445986000 408499350 385421872 429917976 429917976 944649391 944649391 298350412 298350412 185149388 253619772 253619772 302720338 447329835 579842945 579842945 1013193929 1013193929 782371976 782371976 155880720 459277954 594075699 861030989 861030989 777113513 777113513 568291323 986517322 986517322 295548477 339438024 339438024 284859396 346899691 560327073 835789163 900155466 900155466 281903592 363235496 363235496 418928686 418928686 359813486 341886464 363386848 363386848 416808804 416808804 193038640 592282897 593617329 593617329 837221393 837221393 559401682 885704658 885704658 859534073 859534073 876804459 914331952 914331952 390339888 390339888 228986966 273558530 289931442 339937554 381762592 381762592 56943008 90608816 90608816 77742384 78433608 78433608 65241352 59249904 318378802 318378802 286794336 286794336 322615874 322615874 889358916 889358916 844141876 844141876 771785299 1017125464 1017125464 905988367 573183249 909639781 909639781 867241486 991797787 991797787 616392549 554486652 722584041 722584041 266395660 266395660 278137410 278137410 649110110 649110110 707116548 707116548 821215483 821215483 789746197 748473933 748473933 317497432 317497432 887034584 887034584 539100745 539100745 419045893 419045893 286366017 286366017 96881800 220304464 220304464 97069700 47041632 50981872 50981872 27328784 58794096 63059088 63059088 34079760 16946304 15729600 89756298 437912585 437912585 764860828 764860828 635304347 554558008 1008865287 1008865287 642781422 682236108 876223743 876223743 1066534450 1066534450 894984173 894984173 224542824 967741104 967741104 500409123 429127691 295817348 286458004 533064676 533064676 511524683 1068234111 1068234111 940752701 822084142 822084142 105119940 255987008 255987008 229772576 36934784 69353984 69353984 30667488 46807784 79597768 100256312 100256312 220850304 220850304 86251156 0 470468618 470468618 135142404 276852810 612426297 621096057 621096057 1039796522 1039796522 767475919 710967101 646766737 602026536 553389681 629261288 629261288 559532416 559532416 87564456 24591456 208194304 208458284 208458284 234349380 234349380 436868118 436868118 319476638 152995362 351586360 503508872 503508872 168778144 470347248 470347248 386193036 421663086 500558574 500558574 301202126 143031174 409650624 409650624 287381444 293561450 293561450 157885860 354513186 354513186 673370373 1020462468 1020462468 990231359 814343235 679817408 713212160 715264341 815784701 267999812 267999812 124779960 124779960 124779960 45836132 52181552 52429104 52429104 277153928 277153928 865431274 865431274 389839954 389839954 271796760 315426600 315426600 642901960 642901960 712011219 712011219 506056477 904662884 904662884 781521989 434594050 631898176 631898176 450895903 187040140 187040140 568369306 568369306 782754302 782754302 585863328 692712145 692712145 165186016 165186016 692447521 692447521 560412897 537475424 317247954 394793958 394793958 248513244 248513244 102505052 9493720 8394752 8523840 8523840 296304098 296304098 297206736 837251635 837251635 589402448 859112241 859112241 848161427 840542065 556384497 863425938 863425938 857857352 857857352 260759412 137135792 933571193 933571193 335890704 941206294 941206294 943041399 943041399 588359128 588359128 609298450 609298450 428721444 428721444 423747750 784865621 784865621 374214313 831403447 831403447 850320723 850320723 656160288 873281600 873281600 807403779 347669402 872421208 872421208 483150234 345023282 317733114 386536506 386536506 389234904 389234904 340610008 385232408 385232408 68227280 58787872 65012384 638005653 638005653 1035682013 1035682013 591413090 709152935 897712331 897712331 310415521 227148827 787090545 787090545 914886188 914886188 945385861 945385861 943248083 805926033 570730660 898697374 898697374 607199508 893509652 893509652 367219338 367219338 366271210 97884330 351351104 351351104 339870568 129040872 37224848 87304704 123027984 123027984 74272384 21031224 2171136 275777424 306000066 306000066 940770843 940770843 320956720 719763833 774305982 1065416037 1065416037 623712420 623712420 740856296 740856296 699035940 683150034 831264768 831264768 299244258 395519232 395519232 386930176 386930176 431613814 431613814 430964070 291372172 250951512 172705624 378375204 378375204 250500732 511976132 681345596 681345596 760828046 760828046 876176573 876176573 807929091 484156275 272103680 272103680 619872912 619872912 344507466 597413040 890847560 931632168 931632168 572243153 697495387 697495387 788645218 864655473 864655473 845702760 845702760 338744587 338216202 152076546 219813420 404397572 717771970 717771970 1047258569 1047258569 548965708 620383773 652235693 652235693 675669185 675669185 625593219 625593219 319622189 138178661 11670336 11670336 10426112 1522176 5292672 471337094 874528696 874528696 767546447 646473096 646473096 65061360 593723848 610480521 610480521 606556308 606556308 230917125 434423348 444907634 444907634 420220440 333586232 373850522 373850522 470524476 470524476 155971588 156935396 156935396 87514016 87514016 73833376 472960552 473958082 1037937611 1037937611 217377519 1020986707 1020986707 866580823 866580823 759790885 759790885 784120428 784120428 1020842729 1020842729 1012085391 135353032 1051788250 1051788250 738458184 738458184 628876853 598014429 598014429 1040841693 1040841693 994912296 994912296 872553628 303632688 705293716 705293716 564520257 865276225 865276225 868244496 868244496 271273648 46352576 66770928 321082210 321082210 324781136 364498378 364498378 325909451 938352123 938352123 462580924 462580924 692252708 1035689309 1035689309 998367351 998367351 857000499 809825655 503578890 459514358 1057579018 1057579018 809885838 414768128 414768128 228054210 698781600 698781600 355096749 344722506 344722506 294126690 810116288 810116288 537395225 152191272 698536576 698536576 83984472 83984472 245798408 405741316 405741316 227443214 137437956 136645120 36590160 286187058 333267706 927668466 927668466 587268112 587268112 947083497 947083497 213117591 491259054 491259054 412606794 206874574 105420408 431056004 507537276 507537276 26288736 148972100 148972100 141108192 447751584 447751584 297271816 495453294 495453294 512364556 512364556 486127457 886287924 886287924 693184253 784062292 784062292 715137152 715137152 250213333 1007840606 1007840606 514691599 135168 135168 80330880 430810704 430810704 230295828 230295828 191433604 191433604 161952812 236487764 236487764 76290136 100027108 139727632 139727632 51520000 50540592 64620352 64620352 23054032 30841280 30841280 25489088 25489088 10906464 12391488 12391488 163851040 163851040 460465010 460465010 140524228 591661364 591661364 392003087 392003087 661062078 907150702 907150702 839389241 296797026 296797026 383256472 383256472 347918154 347918154 22302476 153373288 233620448 233620448 540034368 605028425 605028425 538217536 631515177 631515177 246707580 246707580 260491100 260491100 85798440 85798440 84810792 127161088 127161088 36733056 15246144 24437120 24437120 16867872 13782208 23514624 23514624 301973602 301973602 94495592 281450784 343212810 343212810 339615498 348208642 543185760 610116836 610116836 278523791 877534347 877534347 880803723 880803723 677337761 148376523 100350541 891568059 991035515 991035515 1054267105 1054267105 614072872 614072872 483730254 483730254 478257158 380805530 380805530 304756800 306579650 306579650 110363266 69605640 167945124 735603448 796794813 796794813 548606830 868090833 868090833 512526173 436209190 666894870 666894870 672314581 672314581 512311319 403359022 282063268 413802784 646508768 646508768 614755168 893290857 893290857 310964752 445333522 445333522 411185172 178258020 195769716 195769716 558106785 697356917 725776740 725776740 728352181 728352181 577531344 577531344 711160581 711160581 66842896 18486816 22755232 566756992 693128256 693128256 557359940 541967745 134360704 14923616 28440416 28440416 42470464 54138672 54138672 61877616 61877616 31954752 31954752 745119872 745119872 787216336 787216336 756813357 718692770 441924246 570774447 570774447 870840819 985892943 985892943 977613338 977613338 676145797 676145797 574729230 638435472 638435472 516693082 516693082 595264404 595264404 1038408494 1038408494 414341357 592611474 592611474 295717539 61081968 715297632 715297632 28461024 79642440 79642440 919212641 919212641 173740100 1016351788 1016351788 538993078 1019013695 1019013695 1011475599 1045337233 1045337233 346178138 407241984 436250786 436250786 454567940 454567940 290661382 169358596 196348180 196348180 276366963 835379585 835379585 946045120 946045120 730733685 771960861 771960861 770438637 770438637 583247014 1012626842 1012996028 1012996028 790870793 790870793 708053781 842845971 842845971 288638001 441130384 935854181 935854181 539587761 544136592 572755985 572755985 552430912 395709482 395709482 364710740 364710740 147460804 155755312 155755312 472896910 472896910 350808810 350808810 297327364 403707876 403707876 281690164 707148373 707148373 962540581 962540581 692971141 722422784 987905013 987905013 981119797 1022923848 1022923848 954130119 954130119 852647793 823306112 959128624 975311127 975311127 446870881 683427943 683427943 540156929 540156929 315075600 315075600 444460438 444460438 847744986 882152397 882152397 918830046 918830046 497212030 553720234 972293637 972293637 679477410 165440064 167590020 167590020 167053284 167053284 158591040 158295840 141680928 107154200 107154200 296429794 296429794 129568744 287926136 287926136 275113346 314926992 314926992 300891618 368380144 368380144 280492808 93375072 93375072 79975360 82053576 82053576 121634672 121634672 679600242 859573621 859573621 692578402 893927972 893927972 1008300160 1008300160 339101248 339101248 272736528 2171136 2171136 616333056 616333056 184948788 208147352 208147352 29429536 29429536 16592832 159549580 358028462 358028462 270773166 111131348 111131348 40842186 288887170 288887170 287048032 287048032 284041088 49281680 390977872 390977872 356590616 101261482 69255432 22670760 85322280 93667496 96469224 99378400 99378400 144936288 149558724 149558724 135369408 140534916 234891288 236079676 236079676 459277954 473094982 473094982 128008298 275837712 371602466 417713806 473966668 473966668 276784768 339438024 339438024 284859396 284859396 270289290 282095304 282095304 67430304 281903592 281903592 291155654 418928686 418928686 359813486 211032430 363386848 363386848 416808804 416808804 680218720 680218720 640137392 615133641 289769547 540286094 1014634383 1014634383 987695859 896607147 333455961 343089182 503395210 503395210 390339888 390339888 337517076 235018762 68947464 35654408 376837634 376837634 103208336 103208336 84199464 353187972 353187972 512584256 512584256 105262236 252062812 252062812 357839520 357839520 290525474 523206723 523206723 196483828 844141876 844141876 771785299 753681441 905988367 905988367 573183249 353933377 867241486 867241486 991797787 991797787 616392549 554486652 554486652 173844549 172353684 152071060 137502720 138543404 138543404 643007504 643007504 231559228 457262046 457262046 610667948 748473933 748473933 317497432 317497432 887034584 887034584 280503305 496310654 526781111 976559896 976559896 546173357 607086792 607086792 220304464 1023834579 1023834579 1015024003 1027258235 1027258235 950617424 131282040 175322004 175322004 881762104 881762104 907529040 907529040 85030528 352847394 352847394 401054459 401054459 363517290 88080552 642781422 642781422 348130110 617615666 1066534450 1066534450 894984173 894984173 224542824 967741104 967741104 502626930 639650091 639650091 286458004 533064676 533064676 903153037 1068234111 1068234111 940752701 865777941 822084142 530489284 201461240 79745292 210241016 210241016 171316880 203665576 203665576 190071760 265867276 265867276 211051824 253920440 253920440 247891004 197314640 180647148 168366168 132385272 142753901 612426297 621096057 621096057 555084321 767475919 767475919 710967101 646766737 178627036 192692364 193036852 193036852 138243248 37029056 178863940 217493676 217493676 152228388 156192416 234349380 234349380 224642340 224642340 151216740 151179272 31495776 188896288 188896288 93390400 84485160 35407224 386193036 403390558 500558574 500558574 301202126 143031174 409650624 414840998 414840998 293561450 293561450 474064656 474064656 261682980 370235096 1020462468 1020462468 990231359 814343235 720639557 713212160 715264341 815784701 267999812 267999812 124779960 124779960 124779960 45836132 52181552 52429104 566341440 608022369 620570441 649136881 649136881 625821505 625821505 606651657 315426600 315426600 892339834 980397207 980397207 801855673 801855673 913096865 913096865 809426691 283547537 147271140 812460321 812460321 430643334 860830342 860830342 352991416 862661904 862661904 996357729 996357729 704993492 718630165 718630165 692447521 692447521 560412897 537475424 31666656 151075680 467470497 467470497 424635639 141191302 100736188 23407008 20147104 333473912 933406882 933406882 834753203 837251635 837251635 589402448 859112241 859112241 848161427 840542065 642979657 863425938 863425938 857857352 857857352 83886120 414199552 546909030 564207969 564207969 335890704 277087042 277087042 185706768 588359128 588359128 329517844 677122004 677122004 428721444 423747750 1065683044 1065683044 906043419 728769410 728769410 35701008 656160288 656160288 873281600 873281600 807403779 487607046 872421208 872421208 280616392 317672898 374920546 374920546 355079466 123491072 96758056 96758056 109521480 109521480 166833732 166833732 65012384 243738516 252058112 1035682013 1035682013 591413090 709152935 897712331 897712331 310415521 286791936 787090545 787090545 914886188 914886188 945385861 945385861 943248083 805926033 570730660 898697374 898697374 607199508 893509652 893509652 367219338 367219338 366271210 97884330 351351104 351351104 339870568 113059024 113059024 103884184 82394136 16138040 58620458 333909114 333909114 326372274 301818054 305788691 940770843 940770843 320956720 719763833 774305982 1065416037 1065416037 623712420 623712420 740856296 740856296 714212176 714212176 831264768 831264768 287647336 395519232 395519232 386930176 386930176 431613814 431613814 430964070 291372172 250951512 172705624 201427804 201427804 250500732 250500732 256520444 256520444 793314988 793314988 876176573 876176573 842510873 842510873 638810899 272103680 114855450 341361458 344507466 401392112 401392112 370039464 393091704 393091704 467666412 467666412 216265164 864655473 864655473 845702760 845702760 1010388141 1010388141 655860154 267559952 862208928 862208928 931894546 931894546 915704224 915704224 620383773 652235693 652235693 130828080 174088832 625593219 625593219 446440967 520400738 817676997 928563394 928563394 895484331 1028267705 1028267705 781980687 931816121 931816121 646473096 646473096 65061360 593723848 610480521 610480521 606556308 606556308 230917125 154317872 72062768 36343840 84444160 84444160 118014720 118014720 126371056 126371056 114295896 114295896 67118592 277545032 277545032 275780258 472960552 472960552 1037937611 1037937611 217377519 1020986707 1020986707 866580823 866580823 759790885 759790885 784120428 784120428 1020842729 1020842729 1012085391 556712288 1051788250 1051788250 884073291 884073291 887144907 887144907 673569152 673569152 273084600 273084600 493966232 493966232 303632688 303632688 63491794 94404680 94404680 47315808 105268376 105268376 65888256 65888256 560128 308345856 308345856 8075136 24709568 24709568 31305088 31305088 251740328 251740328 238952220 692252708 1035689309 1035689309 871623791 857000499 857000499 520015416 320928726 290532276 510542414 510542414 379502980 379502980 1050983327 1050983327 951850758 951850758 830752231 830752231 954914734 954914734 761791917 746245265 647419049 632001705 698536576 698536576 83984472 83984472 245798408 405741316 405741316 227443214 137437956 878221219 878221219 867357001 333267706 927668466 927668466 692455726 692455726 1072286064 1072286064 987837926 987837926 780930141 716704520 105420408 105420408 491798811 995787993 995787993 611472463 533235398 396563686 449909218 449909218 271261892 125830762 252707388 515116814 515116814 242473768 242473768 886287924 886287924 693184253 784062292 784062292 965027943 965027943 648019545 1007840606 1007840606 983309145 472519950 410989894 783991828 948025592 948025592 227905680 227905680 144006204 158634992 158634992 168559628 168559628 41943120 33554496 0 58336896 58336896 55391888 55391888 53945088 23054032 30841280 30841280 25489088 25489088 15074248 15074248 354561058 354561058 616891232 1025849568 1025849568 154862382 591661364 591661364 495248069 495248069 321439026 907150702 907150702 824180259 435690279 298967778 708756628 708756628 237027450 151520292 1016736204 1016736204 809698952 293363233 740349253 740349253 623778312 623778312 631515177 631515177 604354560 604354560 87608616 87608616 85798440 85798440 138095812 147212800 147212800 149497988 149497988 160953860 160953860 155799044 149996484 160483268 405855792 405855792 301973602 116582928 340472384 349701834 349701834 339615498 348208642 546309924 698877285 698877285 288359202 1006633866 1006633866 356780045 608782340 608782340 336100490 342328942 342328942 227151360 26739724 25451744 4904064 614072872 614072872 344196905 276070784 269797890 142000912 47000784 306389504 306579650 306579650 244646230 240320936 240320936 154212546 435547110 435547110 548606830 868090833 978879328 978879328 941886215 941886215 666894870 672314581 672314581 512311319 37900424 16777248 153446724 646508768 791112544 791112544 893290857 893290857 183122452 183122452 177608148 144834772 182653316 182653316 174272916 558106785 579211504 725776740 725776740 147065028 147065028 188821728 188821728 588813461 724185616 724185616 682280129 564699492 22755232 693128256 693128256 561840673 134360704 134360704 151552644 151552644 72878220 141413956 141413956 54138672 673972338 691186530 691186530 707400514 745119872 750132045 787216336 952242375 999371160 999371160 131072760 570774447 570774447 870840819 985892943 985892943 977613338 977613338 420938528 420938528 410006022 410006022 353196426 403230124 680342668 680342668 151138393 1038408494 1038408494 414341357 548556833 548556833 27693504 27693504 681875456 681875456 757108008 757108008 677531013 604708264 125571895 320215602 1016351788 1016351788 373298248 944315606 944315606 818752707 1045337233 1045337233 650729951 369584906 160058944 308796672 1073437590 1073437590 1003492435 567413506 270537728 177071424 177071424 271528256 584596993 870945876 870945876 730733685 700843152 552288300 770438637 770438637 583247014 1012626842 1012996028 1012996028 721601760 88163809 593595266 842845971 842845971 288638001 27472224 314650064 314650064 66919376 107241424 111205184 111205184 36448618 395709482 395709482 364710740 364710740 147460804 155755312 155755312 472896910 472896910 350808810 350808810 297327364 297327364 24529024 295607815 671147268 671736837 962540581 962540581 692971141 722422784 973887124 973887124 981119797 1061799279 1061799279 863093728 863093728 823306112 823306112 956717636 956717636 142872644 142872644 147776 10621248 270366994 311822099 543942793 543942793 444953216 444460438 847744986 847744986 501227684 346104138 351323082 368083458 807406246 807406246 959490945 959490945 430530592 167590020 676110529 697403425 697403425 158591040 536990977 536990977 27617600 62992144 62992144 20323104 60689520 60689520 33738768 283036864 314926992 314926992 300891618 300891618 116327576 116327576 52478256 52478256 131048864 131048864 54526176 121634672 121634672 558629474 859573621 859573621 1070072016 1070072016 856249376 856249376 973129238 973129238 687116934 488592662 1015190752 1015190752 618610377 579006820 579006820 765015740 765015740 811820062 811820062 422313124 422313124 366173484 82671460 347664672 347664672 294901322 68282888 288887170 288887170 287048032 413139010 413139010 154706276 390977872 390977872 433061950 433061950 69255432 22670760 85322280 93667496 96469224 99378400 99378400 144936288 149558724 679712841 679712841 1020503644 1020503644 570995270 236079676 294410334 673057379 673057379 469815808 1040613379 1040613379 70604304 69805320 215425860 276784768 306823570 308552320 308877954 308877954 273852288 90539936 73509416 67430304 69312384 208038280 208038280 149991492 135483584 135483584 293898240 293898240 10226274 24240128 302223863 680218720 680218720 640137392 1038657790 1038657790 891227485 1014634383 1014634383 987695859 896607147 1042285543 1042285543 1046566306 1046566306 420883320 420883320 337517076 326369822 196353466 66198834 376837634 376837634 103208336 103208336 84199464 353187972 353187972 512584256 512584256 105262236 484582838 484582838 357839520 357839520 290525474 523206723 523206723 196483828 779623909 779623909 205706350 497208390 798018667 798018667 644017888 501060484 501060484 178842740 809476990 809476990 622494505 588989553 1026201388 1026201388 520151950 551807084 551807084 389577864 389577864 388472330 388472330 231559228 269541120 346866970 506321170 716122374 716122374 171431232 178331988 178331988 115345056 115345056 496310654 526781111 976559896 976559896 546173357 607086792 607086792 100916688 1023834579 1023834579 1015024003 1027258235 1027258235 950617424 450104406 328536802 334045650 881762104 881762104 907529040 907529040 349494986 822264152 822264152 296098564 414323558 445663870 479513166 512000528 512000528 8859840 4458624 121840824 404340484 593940150 593940150 223368040 966657953 966657953 502626930 639650091 639650091 149472708 172327766 370011162 903153037 903153037 468282418 865777941 865777941 530489284 530489284 201461240 113590652 210241016 210241016 171316880 203665576 203665576 190071760 265867276 265867276 211051824 253920440 253920440 247891004 420507648 420507648 168366168 0 8662188 155519700 181011464 181011464 127929280 586419448 586419448 7651744 18090528 18090528 21547936 21547936 23904928 23904928 18876448 178863940 217493676 217493676 152228388 141213824 141213824 85981320 85981320 81855392 76099400 31495776 31495776 120389936 120389936 93390400 84485160 35407224 112589936 112589936 260767358 260767358 247826530 164650052 181612964 414840998 414840998 30533218 333553890 474064656 474064656 432197862 710541837 1046623441 1046623441 907141591 907141591 720639557 537417414 537417414 466433542 888801191 888801191 833235660 833235660 821899203 800514925 406984918 230112108 566341440 608022369 620570441 649136881 649136881 625821505 625821505 785399597 785399597 527100298 892339834 980397207 980397207 1040844350 1040844350 913096865 913096865 809426691 283547537 609357224 812460321 812460321 430643334 860830342 991766061 991766061 862661904 862661904 996357729 996357729 704993492 718630165 718630165 593548592 197255184 226287260 226287260 205021076 161222244 467470497 467470497 424635639 141191302 915963556 1037555967 1037555967 1029623919 933406882 933406882 834753203 812871922 46178336 101253184 111674712 111674712 645658370 645658370 642979657 116546177 279316034 279316034 179047764 179047764 414199552 638848817 834407529 834407529 179930702 277087042 277087042 185706768 185706768 329517844 329517844 677122004 677122004 188744384 937172992 1065683044 1065683044 906043419 728769410 728769410 604840284 1058090478 1058090478 626592760 914696283 914696283 966649946 966649946 489249006 280616392 317672898 374920546 374920546 355079466 72039242 46872328 85755824 85755824 148244512 166833732 166833732 52889888 243738516 252058112 252707388 330438158 330438158 436207744 436207744 175561778 302907392 302907392 484576592 484576592 445716036 445716036 34677264 34677264 47719776 47719776 8987712 9135168 9172032 9172032 8900672 8900672 27656704 28711776 28711776 16463808 84022208 84022208 73731712 113059024 113059024 103884184 82394136 75525568 81665736 333909114 333909114 326372274 301818054 305788691 548062020 882925906 882925906 620830761 76030049 115869144 119588288 119588288 595905536 628681801 628681801 714212176 714212176 43285298 287647336 294445256 294445256 491805295 621417513 691558281 691558281 558534692 126868828 126868828 153092180 153092180 724830064 724830064 723289397 986197469 986197469 390813178 793314988 838095428 838095428 594277527 842510873 842510873 856961433 856961433 840045784 840045784 378291618 378291618 353032264 370039464 393091704 393091704 467666412 467666412 174539464 174539464 109890648 805213063 822819386 1010388141 1010388141 655860154 267559952 862208928 862208928 931894546 931894546 915704224 915704224 604557194 604557194 936381163 936381163 876990083 383944625 446440967 446440967 520400738 817676997 928563394 928563394 895484331 1028267705 1028267705 781980687 931816121 931816121 623607168 233820621 187429680 187429680 219076648 219076648 637895044 673885013 673885013 643785116 94011448 52276808 129036048 129036048 118014720 118014720 236455020 236455020 269804568 269804568 219219508 277545032 277545032 275780258 288359202 288359202 214381728 214381728 206153152 206153152 40680464 55729232 658896944 658896944 768021324 768021324 606229389 373455689 91627347 1000131242 1000131242 960890983 881893632 884073291 884073291 887144907 887144907 812889472 681849031 681849031 792048000 819342054 819342054 438905654 711181078 711181078 574624657 816124865 860018385 860018385 594028752 302747248 65888256 54260496 323391120 323391120 7939200 7939200 6691200 275106977 826826819 826826819 868543816 868543816 811841952 811841952 291762594 288387256 339485704 520015416 520015416 320928726 290532276 510542414 510542414 459452486 459452486 1050983327 1050983327 951850758 951850758 830752231 830752231 954914734 954914734 761791917 746245265 647419049 632001705 612540872 123908992 123908992 131236568 131236568 386567216 386567216 335992842 161946478 878221219 878221219 867357001 125879065 897009640 897009640 705825580 705825580 1072286064 1072286064 987837926 987837926 780930141 716704520 647695129 647201614 647201614 995787993 995787993 611472463 533235398 396563686 449909218 449909218 271261892 125830762 252707388 515116814 515116814 242473768 242473768 458502585 458502585 322244904 1070840402 1070840402 965027943 1016947530 1064270975 1064270975 1022490065 983309145 480641280 480641280 783991828 948025592 948025592 227905680 227905680 52965276 158634992 158634992 134481924 77213744 135341804 222794420 222794420 101570960 152469652 152469652 62656368 151529004 151529004 127888760 117173112 67518792 67518792 83489290 339938056 354561058 354561058 616891232 1025849568 1025849568 352530474 495116919 974370467 974370467 581917009 1036831854 1036831854 824180259 824180259 435690279 298967778 708756628 708756628 164095398 142764172 1016736204 1016736204 809698952 293363233 740349253 740349253 623778312 623778312 554566912 604861960 604861960 604354560 615477313 615477313 69591808 738840097 738840097 403997712 412741012 412741012 435226964 435226964 413284276 183125121 584746917 818945575 962987153 962987153 835863265 591038144 369848576 349701834 349701834 45561690 49285392 546309924 698877285 698877285 288359202 1006633866 1006633866 818498281 485493704 945580933 945580933 502433935 680350187 1009704803 1009704803 503028736 32531360 271851746 548520388 548520388 431022149 517424046 517424046 295673256 306389504 306389504 276044754 244646230 240320936 240320936 639634099 639634099 421898586 779414450 779414450 978879328 978879328 941886215 941886215 902584772 250111814 250111814 100712472 330035556 410190580 410190580 50466864 875763300 1071255711 1071255711 1058157375 281032768 406074626 406978560 406978560 182653316 182653316 174272916 143671988 558020720 558020720 142606660 46991445 176497057 589500612 598379681 598379681 724185616 724185616 682280129 564699492 58720336 548744001 561840673 561840673 89688969 152077876 152077876 789643341 789643341 141413956 551285621 551285621 673972338 691186530 691186530 707400514 707400514 750132045 750132045 952242375 999371160 999371160 970644263 970644263 213042627 897604894 897604894 716809667 558158380 675385504 675385504 668237912 576985633 576985633 353196426 736620649 736620649 680342668 579127377 647039464 647039464 160563204 548556833 548556833 27693504 147119140 681875456 681875456 757108008 757108008 677531013 604708264 125571895 320215602 320215602 96482986 373298248 944315606 944315606 818752707 649994433 650729951 650729951 369584906 225158380 308796672 1073437590 1073437590 1003492435 567413506 270537728 177071424 177071424 44353872 398758650 545374272 545374272 580251712 580251712 549527745 76063945 25723936 25723936 19522848 18978562 291718498 835293270 1065881599 1065881599 1000123221 722854069 264850051 30544458 329964032 329964032 335170760 335170760 111205184 111205184 33682448 47186048 47186048 392439568 392439568 35440032 58855472 59469296 450914468 450914468 32849922 162849316 403493954 427199584 427199584 465863472 465863472 418821284 418821284 403442694 280538131 319054850 319054850 268550146 268550146 1061799279 1061799279 863093728 863093728 552444657 813729618 956717636 956717636 597891121 320253443 555663683 555663683 823675906 823675906 543942793 543942793 949928596 949928596 732161072 732161072 979176991 979176991 427590659 806014616 807406246 998956082 998956082 995062962 430530592 164601152 676110529 697403425 697403425 403817860 536990977 536990977 21371040 21371040 20323104 20323104 37655584 286918048 335156146 335156146 283036864 274544728 395056858 395056858 84413498 111406312 111406312 101263928 131048864 131048864 55156096 129426360 189083296 558629474 558629474 287837298 1070072016 1070072016 755064993 755064993 973129238 978952298 978952298 501076498 1015190752 1015190752 1051470145 1051470145 974968211 974968211 765015740 840598731 840598731 568369696 568369696 548480418 395903090 347664672 347664672 294901322 68282888 216025608 336104068 346819914 413139010 413139010 154706276 237027612 237027612 433061950 631378281 935271991 935271991 742252879 742252879 448536897 449251340 449251340 559061121 559061121 679712841 679712841 1020503644 1020503644 570995270 261670524 294410334 673057379 673057379 473722432 1040613379 1040613379 98726406 226519402 239987868 400712624 415276436 415276436 474606618 474606618 275917320 287531912 287531912 275046944 269933058 269928450 268748802 149991492 99717152 79876488 293898240 293898240 16202688 27268002 222385388 222385388 23277984 201510924 1038657790 1038657790 891227485 457443037 112594741 381874211 381874211 1042285543 1042285543 1046566306 1046566306 420883320 420883320 326369822 326369822 196353466 66198834 60033888 60033888 54661296 54661296 54661296 84420736 88943784 88943784 354358002 504764958 504764958 484582838 155261064 319630456 319630456 284265774 402176664 402176664 228116076 228116076 205706350 605032048 798018667 798018667 644017888 501060484 725680930 971518643 971518643 671383307 682892316 950087943 1026201388 1026201388 520151950 551807084 551807084 554833440 554833440 589933968 840224017 840224017 564590858 965159799 965159799 961059031 1039064559 1039064559 732399898 178331988 737153027 737153027 182328698 332479156 968570368 968570368 584518156 207733856 184117660 56413872 172343872 172343872 173738444 173738444 141170068 450104406 450104406 328536802 334045650 334045650 307269794 307269794 349494986 349494986 822264152 822264152 602046715 414323558 445663870 479513166 746853084 746853084 281018562 394530936 1031800351 1031800351 629972204 629972204 73605165 143502692 143502692 69731592 534806578 534806578 478987892 460890906 370011162 370011162 240951942 144786624 202377760 218368044 218368044 88906924 26740320 113590652 113590652 103147692 140787040 188766324 188766324 450101922 450101922 994316065 994316065 326946738 860248719 860248719 958667678 958667678 855919529 688964133 932296168 932296168 755478185 834007998 834007998 140218180 172280164 172280164 657982628 657982628 612641721 198220564 198220564 142008272 65986032 89314880 137003136 141219204 164288004 164288004 141213824 28959168 81855392 91076256 91076256 225185376 231218852 288424408 288424408 162408198 162408198 493114024 493114024 356516010 470811300 470811300 247826530 164650052 181612964 292098054 292098054 419571104 419571104 484122466 507898014 512120986 710541837 1046623441 1046623441 1021698568 907141591 408265618 683745296 683745296 304853154 888801191 888801191 833235660 833235660 821899203 800514925 589348961 589348961 539094032 539094032 548226251 548226251 574104766 574104766 148898244 785399597 785399597 527100298 554832417 627054465 627054465 1040844350 1040844350 809653907 809653907 388420752 597986873 609357224 609357224 302834008 121920938 633864924 991766061 991766061 793846461 793846461 332408960 150646448 142680132 6964352 15621344 30179652 135284976 226287260 226287260 205021076 161222244 152700140 135712864 89657440 610784688 915963556 1037555967 1037555967 1029623919 266028927 219105120 219105120 102830752 124990392 124990392 22159640 12705984 6373568 4194432 9327840 281188448 281188448 28461136 179047764 179047764 149165076 638848817 834407529 834407529 632171115 632171115 873749099 873749099 842139259 881575156 881575156 675367309 675367309 188744384 937172992 937172992 586220953 586220953 626336432 809307932 809307932 1058090478 1058090478 229755703 914696283 914696283 966649946 966649946 61174336 61174336 42330192 54766496 54766496 111460208 159065908 159065908 88021680 205922556 245251096 245251096 219157576 219157576 186611316 125155872 143808172 228589656 228589656 436207744 436207744 4332566 302907392 302907392 596116593 904039671 904039671 985011509 985011509 977409783 974250451 860521233 574915700 901609246 901609246 606772308 606772308 560736372 29624544 30618336 84813992 84813992 293087136 301610088 301610088 548408337 548408337 81530880 583877849 583877849 105679337 586271241 586271241 567944832 567944832 268960832 599941336 882925906 882925906 620830761 76030049 115869144 733373464 733373464 595905536 628681801 628681801 680173701 680173701 663171909 573954896 294445256 294445256 491805295 621417513 691558281 767073692 767073692 658119737 658119737 721815056 732566901 732566901 724830064 723289397 986197469 986197469 974487858 974487858 838095428 838095428 594277527 926151483 926151483 856961433 856961433 840045784 840045784 378291618 378291618 66896730 63100120 275389640 275389640 12980618 56623536 56623536 69109530 69109530 531120260 531120260 401131002 221425968 481796876 481796876 416372010 631428602 895767195 895767195 817497232 368443976 604557194 604557194 936381163 936381163 876990083 882036562 891420868 891420868 390493862 1034963608 1034963608 417893186 1046761090 1046761090 255340759 542058280 1024684714 1024684714 573565988 218116492 218116492 187429680 219076648 219076648 781243020 781243020 753415244 753415244 215596288 52276808 573015057 573015057 68191256 570437161 570437161 421012022 311478336 311478336 604098659 604098659 361808490 979819151 979819151 326409634 467462324 467462324 263561648 263561648 259552828 259552828 658896944 658896944 768021324 768021324 606229389 373455689 900030308 1000131242 1000131242 960890983 1051722329 1051722329 446899968 470433868 812889472 812889472 681849031 681849031 792048000 819342054 819342054 438905654 711181078 711181078 574624657 816124865 860018385 860018385 594028752 302747248 52154800 54260496 323391120 323391120 32792576 42363024 42363024 275106977 826826819 826826819 868543816 868543816 811841952 811841952 291762594 288387256 273237126 273237126 136586544 598330359 598330359 431477426 953635521 953635521 1057108308 1057108308 811098394 866184858 866184858 229890220 389698682 389698682 286519842 286519842 275037088 131908624 77746688 125318592 125318592 123908992 131236568 131236568 386567216 386567216 335992842 161946478 69121024 345382352 579444618 579444618 294265080 624668950 705825580 705825580 393266106 393266106 505152060 527959998 673723068 673723068 647695129 647201614 647201614 236077632 236077632 231785800 122851872 129298148 141130506 141130506 136975620 120588088 285231168 428820336 428820336 221426036 237689676 523105132 523105132 447767404 1070840402 1070840402 710348685 1016947530 1064270975 1064270975 1022490065 780106973 480641280 480641280 376486154 411019240 411019240 193122420 205266852 205266852 232560140 232560140 221401456 221401456 135341804 227338288 227338288 101570960 152469652 152469652 62656368 151529004 151529004 127888760 117173112 67518792 67518792 83489290 339938056 339938056 357967392 903880290 903880290 352530474 478679784 495116919 974370467 974370467 581917009 1036831854 1036831854 688388133 688388133 143518788 561280256 677820833 677820833 677256837 139645572 139645572 227145184 227145184 83617124 20498208 20498208 84675624 537711105 537711105 604861960 604861960 77832776 615477313 615477313 69591808 738840097 738840097 412416134 416191826 416191826 435226964 435226964 413284276 183125121 584746917 818945575 962987153 962987153 835863265 591038144 369848576 47049762 864909305 894257707 938618291 938618291 687222856 946214413 946214413 885308104 818498281 818498281 485493704 945580933 945580933 502433935 682728665 1009704803 1009704803 990718662 600674256 271851746 548520388 548520388 449597636 982457813 982457813 541186712 592553184 592553184 222238400 222238400 198568692 177472064 639634099 639634099 421898586 779414450 779414450 810021510 810021510 723782917 902584772 902584772 622987905 1004644215 1004644215 848364220 848364220 598218263 385016362 913494128 1071255711 1071255711 1058157375 613543088 736153719 736153719 685863012 305279312 146931940 143671988 597950657 597950657 596660529 596640369 46991445 687988773 687988773 598379681 598379681 686007332 686007332 199962864 199962864 191440176 170411044 170411044 18998816 34128912 152077876 715199093 789643341 789643341 142660116 551285621 551285621 421011124 421011124 250157208 312689490 471192084 1061040404 1061040404 170073919 439553338 439553338 970644263 970644263 683870260 897604894 897604894 633867368 663856199 769155761 781553208 781553208 576985633 576985633 201906257 736620649 736620649 579127377 579127377 647039464 647039464 255123988 142645696 140958084 56655992 147119140 158782592 158782592 142550796 542646625 542646625 118524104 104337842 642062362 978668032 978668032 585118795 585118795 814228224 814228224 879470612 879470612 251283243 231212268 225158380 225105324 20669068 67182600 268591456 268591456 160445792 33628176 168270196 168270196 609807625 609807625 559052848 803417849 803417849 717686481 79342848 371450393 823712257 823712257 796913924 796913924 835293270 1065881599 1065881599 1000123221 722854069 589846344 1018303311 1018303311 910333988 335170760 335170760 123077744 176342784 176342784 355820154 355820154 392439568 392439568 320083722 190122444 67174762 450914468 450914468 32849922 293863936 403493954 427199584 427199584 465863472 465863472 407279492 407279492 956281220 956281220 942140800 942140800 268550146 268550146 931663515 931663515 320337874 552444657 562891465 813729618 823662849 823662849 597891121 889359944 889359944 555663683 823675906 823675906 540196416 318512336 949928596 949928596 732161072 732161072 979176991 979176991 427590659 806014616 806014616 998956082 998956082 995062962 322887474 152908758 301076384 301076384 276210946 403817860 403817860 143262816 81604296 81604296 86352832 86352832 119968808 286918048 335156146 335156146 276959232 276824130 395056858 395056858 84413498 120920320 120920320 101263928 211626836 211626836 135809348 207637528 218420969 218420969 297147234 297147234 404156258 1037861405 1037861405 755064993 899017834 978952298 978952298 501076498 452747898 878148240 1051470145 1051470145 974968211 974968211 615711776 840598731 840598731 568369696 568369696 548480418 450991502 508220574 508220574 514863942 514863942 216025608 336104068 346819914 346819914 76025426 51752752 51752752 268438556 268438556 941744391 941744391 935271991 742252879 742252879 448536897 449251340 571021872 571021872 786752876 786752876 724634045 613580808 613580808 261670524 261670524 163219440 461636706 473722432 473722432 366101650 366101650 103418432 226519402 239987868 400712624 415276436 415276436 474606618 474606618 275917320 287531912 287531912 329462130 346668682 346668682 375572672 375572672 345120201 811339395 811339395 882770976 882770976 902831329 1010775447 1010775447 372267383 617710581 617710581 370810568 178258985 178258985 112594741 381874211 381874211 877042291 880853067 880853067 861178616 468581874 406561990 408832528 408832528 377542292 399152292 399152292 457443510 457443510 202113210 226367772 226367772 112001456 139472092 354358002 504764958 504764958 289800892 411314184 411314184 319630456 99664872 402176664 402176664 94580578 91108968 91108968 605032048 670176249 670176249 122814785 158056560 725680930 971518643 971518643 671383307 682892316 950087943 1015613376 1015613376 414713833 540541614 540541614 808192258 808192258 589933968 840224017 1062265556 1062265556 965159799 965159799 961059031 1039064559 1039064559 732399898 544211841 862716443 862716443 978322185 978322185 968570368 968570368 738858532 207733856 184117660 56413872 69172704 73761484 173738444 173738444 141170068 141170068 168562064 168562064 378940544 378940544 59322378 64397392 64397392 42031856 268621880 602046715 602046715 363884548 238644764 238644764 746853084 746853084 281018562 394530936 1031800351 1031800351 629972204 629972204 568140818 563874913 143502692 68996619 537412785 537412785 511762028 533809870 533809870 583306725 583306725 260900180 1032656689 1032656689 513939128 513939128 266507244 266507244 262342320 51979824 140787040 188766324 188766324 450101922 450101922 994316065 994316065 326946738 860248719 860248719 958667678 958667678 855919529 688964133 932296168 932296168 755478185 916337261 916337261 1050723109 1050723109 945911205 657982628 657982628 612641721 587228257 592710321 592710321 577053472 96848652 156915368 205446668 234806540 234806540 92822848 167342514 455673694 455673694 441450782 436471830 436471830 288424408 288424408 162408198 162408198 493114024 493114024 356516010 470811300 470811300 21229728 288965796 409783686 410310150 410310150 419571104 419571104 484122466 507898014 512120986 512120986 480578560 1021698568 1021698568 408283613 978627794 978627794 683745296 304853154 134766594 403301382 403301382 403301382 403301382 318767154 640074018 640074018 604379145 539094032 548226251 548226251 473024000 270033550 49492944 49492944 315163530 342893778 342893778 921879062 1021497805 1021497805 489310764 809653907 809653907 388420752 597986873 597986873 537302273 537302273 401366120 399016027 921624027 921624027 328542834 332408960 332408960 30083828 24674944 5916640 15467872 30179652 264504614 373219098 526341490 526341490 475982424 308664352 877757440 877757440 839516928 839516928 581826951 136652611 278546 349210720 366305282 366305282 276824130 398723322 398723322 22884954 113525786 619633746 646356313 658642001 851462257 851462257 310806593 79741000 92456488 92456488 288802152 630317411 630317411 632171115 632171115 873749099 873749099 842139259 881575156 881575156 806608956 806608956 522314046 522314046 545524608 899940385 899940385 884998347 809307932 809307932 309089674 124407842 88264952 438998512 438998512 390087402 408124454 408124454 298345408 126412704 532267336 532267336 270565672 159065908 475475808 475475808 406849676 406849676 245251096 219157576 219157576 225555932 225555932 222945512 228589656 228589656 133696972 512166734 512166734 43360608 466116788 596116593 904039671 904039671 985011509 985011509 977409783 974250451 860521233 950410308 950410308 977040984 977040984 918400603 560736372 981791319 981791319 994412010 994412010 391852616 391852616 322774536 548408337 711985220 711985220 583877849 694005380 694005380 586271241 586271241 567944832 567944832 452620694 599941336 599941336 658031768 1040303146 1040303146 69771340 733373464 733373464 256935478 538968736 538968736 680173701 680173701 663171909 573954896 196781026 196781026 241753604 241753604 241714432 767073692 767073692 658119737 658119737 721815056 732566901 732566901 263983137 605047872 605047872 855711795 974487858 974487858 689361437 689361437 575912480 926151483 926151483 907051280 98706488 323774562 323774562 113806624 393162058 393162058 376443072 376443072 341364672 484710068 484710068 198730704 198730704 429996042 429996042 253162236 357625370 357625370 481796876 593703345 978284108 978284108 895767195 895767195 825018987 825018987 368443976 598342924 598342924 572659969 568556705 882036562 891420868 891420868 390493862 1034963608 1034963608 631378280 1046761090 1046761090 255340759 542058280 1024684714 1024684714 573565988 218116492 218116492 52688692 45089616 210782208 781243020 781243020 753415244 753415244 546340096 549453633 573015057 573015057 50673720 570437161 570437161 421012022 311478336 370278464 604098659 604098659 361808490 979819151 979819151 326409634 467462324 467462324 263561648 263561648 259552828 259552828 134351364 134351364 497058794 497058794 226509612 111974622 900030308 1055602143 1055602143 921314649 1051722329 1051722329 446899968 470433868 620865133 620865133 430936486 854928339 854928339 603846691 539991442 184716454 51515952 3745536 40379648 41420688 41963904 41963904 55345152 55345152 22493856 22493856 268451970 268451970 348227584 348227584 91578408 354716544 354716544 348399787 616603747 616603747 427862215 830859331 830859331 923050619 992240929 992240929 874376715 874376715 866185425 866185425 953635521 953635521 1057108308 1057108308 811098394 866184858 866184858 160516194 136439812 143665920 207465388 213952864 213952864 319818769 319818769 295249506 305409755 372904953 572526296 606475457 606475457 78677769 1042369847 1042369847 848823891 848823891 585004970 585004970 294265080 624668950 829248515 998238342 998238342 757059319 881753757 881753757 776944797 575537309 575537309 716577030 716577030 978588319 1034161867 1034161867 501307945 501307945 134721824 136975620 417870288 417870288 375637718 428820336 428820336 239372444 239372444 523105132 523105132 447767404 762358288 762358288 710348685 693034149 405723527 338140444 135877142 238369560 238369560 244413332 244413332 109560092 145111364 254200164 254200164 205266852 232560140 232560140 221401456 221401456 177898108 227338288 227338288 100963560 100963560 76025520 29151072 70041336 70041336 66657120 32042688 19329024 12112384 12592520 12592520 26750056 357967392 903880290 903880290 767567403 478679784 478679784 755017204 755017204 390066667 741227856 815588441 1006807138 1006807138 52780711 686571787 686571787 677820833 677256837 219991372 807566056 902313736 902313736 343672384 284820033 682397537 682397537 622595073 83889441 19260680 70516512 77832776 604121089 604121089 68928520 605350401 605350401 412416134 416191826 416191826 189827248 189827248 697926577 697926577 599288453 317103698 317103698 574643622 836644418 836644418 751754765 751754765 864909305 894257707 938618291 938618291 687222856 946214413 946214413 885308104 210307104 411680972 415236294 415236294 211445382 274306702 682728665 682728665 990718662 990718662 600674256 71512200 321128754 449597636 449597636 982457813 982457813 541186712 592553184 592553184 527751886 527751886 492904458 492904458 234883108 251726508 251726508 205792864 730371082 730371082 395806408 723782917 723782917 622987905 622987905 1004644215 1004644215 848364220 848364220 598218263 385016362 913494128 913494128 889444135 248496867 613543088 736153719 736153719 685863012 305279312 24269504 24269504 597950657 597950657 596660529 596640369 588276096 687988773 687988773 578447233 625640611 686007332 876847146 876847146 592483248 606208259 606208259 370401802 590542081 590542081 463798680 715199093 715199093 549594497 430075588 462149954 462149954 727880404 727880404 676944372 457230739 545124225 1061040404 1061040404 694732197 694732197 478972309 931009627 931009627 683870260 478445255 806472704 806472704 663856199 769155761 781553208 781553208 573249044 160414876 160414876 209977600 209977600 25231680 86147144 226874152 255123988 255123988 91361416 91361416 56655992 64476752 107018048 260922024 266350152 542646625 542646625 281707530 281707530 642062362 978668032 978668032 1057022407 1057022407 447221669 447221669 879470612 879470612 785615919 332359194 332359194 123418160 814903854 964874343 964874343 954785408 33628176 137494912 168270196 168270196 609807625 609807625 559052848 803417849 803417849 717686481 79847816 371450393 823712257 823712257 976213407 976213407 928772726 995359031 995359031 996620727 996620727 989932791 1018303311 1018303311 910333988 667741260 405235602 405235602 176342784 176342784 355820154 355820154 354295338 354295338 320083722 288030720 67656832 306679032 306679032 298593506 294391010 293930658 51388562 50647348 173050289 173050289 712127477 712127477 956281220 956281220 942140800 942140800 575736585 575736585 477049615 998279392 998279392 546358472 562891465 562891465 541641056 541641056 100088808 889359944 889359944 365474083 6697410 16849664 18741512 67411336 67411336 78289352 78289352 310127475 850500819 850500819 870979059 870979059 644056298 391489545 617736929 617736929 269330152 282116802 554206947 701521825 701521825 39453940 590898353 590898353 81604296 81604296 370059674 370059674 291886720 311087370 311087370 390135994 390135994 372583554 372583554 360396714 343484298 937496011 937496011 903365419 893912235 893912235 366324351 360759594 614031997 614031997 356948046 753306053 753306053 1037861405 1037861405 159493364 675357256 675357256 634339480 260723957 235263204 878148240 878148240 337465364 299010242 299010242 318426586 318426586 301520770 277740192 277740192 450991502 450991502 508220574 508220574 514863942 514863942 279183682 279183682 216531008 173230468 179516244 179516244 246205788 476333266 476333266 941744391 941744391 895525309 682627904 688985992 688985992 361493697 677328388 677328388 786752876 786752876 724634045 783717120 783717120 68947464 104780048 163219440 220595968 437701362 437701362 350259118 222611628 123114004 17557664 65986032 186824773 403269277 403269277 611874307 611874307 42033664 277378840 277378840 954875044 954875044 938419867 792048150 652221448 806953354 811339395 811339395 882770976 882770976 902831329 1010775447 1010775447 372267383 617710581 617710581 370810568 130819836 792018768 792018768 560435546 560435546 1000745779 1000745779 684769989 516322604 525299858 525299858 408832528 408832528 407200612 399152292 402785344 457443510 457443510 252707388 252707388 226367772 112001456 139472092 139472092 4194432 225706948 225706948 411314184 411314184 301180296 301180296 59343120 59343120 31485696 29706752 25859680 25859680 31592928 31592928 6241920 676016704 676016704 148386192 176556352 176556352 61677056 170659092 1015613376 1015613376 289410208 269224962 270797058 808192258 808192258 659038864 754810368 1062265556 1062265556 630492635 397914150 281217058 604359210 604359210 844104472 844104472 862716443 985450680 985450680 978322185 758329388 758329388 738858532 407781468 263488820 33740380 136359280 136359280 48359716 135738160 138816914 460707618 460707618 275248386 378940544 378940544 336075034 336075034 375662866 375662866 268621880 353706392 353706392 353444608 269445280 416189600 416189600 550600769 550600769 144303684 462455396 952738503 952738503 568140818 568140818 563874913 331607641 83887723 537412785 537412785 511762028 533809870 533809870 583306725 583306725 260900180 1032656689 1032656689 513939128 513939128 266507244 266507244 262342320 192679860 191146996 155011572 470686782 470686782 163452432 73400344 73400344 38355088 104412696 104412696 192156288 192156288 399866104 399866104 494675398 743613414 885446859 916337261 916337261 1050723109 1050723109 945911205 644597285 538241280 587228257 587228257 592710321 592710321 577053472 185128864 185128864 205446668 234806540 234806540 179094884 179094884 455673694 455673694 441450782 436471830 436471830 142613778 79007136 498740492 498740492 370474218 190410310 96210440 96210440 272445186 272445186 288965796 409783686 410310150 410310150 402837510 140685698 11797380 181403844 983703284 983703284 692849015 419692853 294123600 294123600 978627794 978627794 739615845 718521032 773022196 773022196 636670953 586885089 586885089 318767154 640074018 640074018 604379145 279527976 1015579566 1015579566 614550603 614550603 468191987 1025349474 1025349474 405503521 405503521 921879062 1021497805 1021497805 489310764 489310764 354422916 202545344 183765972 151833636 537302273 537302273 401366120 399016027 921624027 921624027 34488779 189145120 545760144 545760144 194662193 61173872 61173872 42780816 264504614 373219098 526341490 526341490 936017706 936017706 877757440 877757440 841253008 841253008 581826951 405818836 414564550 414564550 490816416 490816416 573194755 573194755 398723322 609225416 918836691 918836691 845844627 845844627 851462257 851462257 832737440 832737440 289947682 289947682 279513120 280569666 281627138 339577610 339577610 352642472 352642472 303930824 303930824 260412608 806608956 806608956 522314046 522314046 545524608 899940385 899940385 884998347 109839910 309089674 309089674 124407842 88264952 438998512 438998512 513226384 513226384 408124454 298345408 504963606 532267336 532267336 270565672 141361532 506273884 506273884 406849676 406849676 122246184 125477800 125477800 225555932 225555932 222945512 132197640 132197640 69206380 512166734 512166734 66588464 466116788 466116788 394973378 643975758 913066472 913066472 604294761 401696220 401696220 950410308 950410308 977040984 977040984 918400603 282587802 981791319 981791319 994412010 994412010 391852616 391852616 322774536 76554368 711985220 711985220 578854929 694005380 694005380 306596786 323589250 451687586 452620694 452620694 698330716 698330716 980993078 1040303146 1040303146 365446176 629440618 629440618 692899305 692899305 690493833 36215428 211595812 211595812 177944148 157264594 157264594 241753604 860281383 860281383 721878065 1067565323 1067565323 1060149817 695768960 695768960 688050213 546571521 605047872 715476236 715476236 705463641 707603733 707603733 202178841 4507776 356829354 907051280 907051280 61222048 391516010 391516010 331625920 393162058 393162058 376443072 376443072 521523426 521523426 484710068 318861664 420544550 429996042 429996042 407908474 407908474 357625370 355090038 593703345 978284108 978284108 250209756 785410664 825018987 825018987 350145187 598342924 598342924 572659969 307233968 307233968 107303105 583776713 583776713 552887881 631378280 631378280 559448441 127852081 72414216 750879433 750879433 266795089 567985343 874832585 874832585 36774672 9773888 210782208 243569472 243569472 239499520 245860752 546340096 549453633 553698560 553698560 612405881 612405881 278152704 93468768 93468768 370278464 370278464 202375684 113902216 290981584 290981584 226020129 794068223 794068223 250898271 850053453 850053453 610665748 869667828 869667828 612649677 819643915 819643915 896552659 896552659 1055602143 1055602143 957621907 957621907 818618261 818618261 674981372 714729045 1032817079 1032817079 854928339 854928339 603846691 539991442 504756276 504756276 65589074 176603812 176603812 276320304 276320304 274207232 26258080 26258080 22933152 268451970 268451970 348227584 348227584 91578408 354716544 354716544 348399787 616603747 616603747 427862215 830859331 830859331 923050619 992240929 992240929 874376715 874376715 866185425 866185425 186687858 186687858 60933428 73728 289685926 461475762 461475762 433612416 286599984 192538548 183776624 60901968 55181872 319818769 319818769 295249506 305409755 538579200 572526296 606475457 606475457 78677769 1042369847 1042369847 848823891 848823891 585004970 585004970 330528638 348422964 829248515 998238342 998238342 757059319 881753757 881753757 776944797 575537309 575537309 716577030 716577030 978588319 1034161867 1034161867 501307945 501307945 164171904 474616974 474616974 417870288 397462040 397462040 433154912 433154912 473949499 588773937 589265969 589265969 838937645 855716906 855716906 690697260 338140444 562152036 562152036 351946999 238369560 398593192 398593192 491204832 491204832 255013692 254200164 138939444 138939444 58197936 58197936 177527320 177898108 177898108 75309484 80187732 152706300 152706300 46450896 178267412 178267412 48397064 48397064 69126984 69126984 35041688 269952138 356103778 356103778 354888200 767567403 767567403 291623296 348173791 1014154089 1014154089 370461210 529848386 1038519417 1038519417 1006807138 54677777 694230433 694230433 656723289 656723289 552571904 807566056 902313736 902313736 343672384 284820033 682397537 682397537 622595073 102760728 102760728 127461232 127461232 75651912 51230008 68562944 404703784 404703784 403983376 403983376 170131568 189827248 572859840 697926577 697926577 599288453 406897712 406897712 574643622 836644418 836644418 751754765 751754765 714969246 21091840 22229664 22423552 82254400 82254400 220232448 220232448 228910336 411680972 415236294 415236294 217179084 274306702 274306702 75088076 71352456 67667072 4333576 71512200 71512200 71512200 67178624 61834376 126351480 388022392 388022392 401806256 527751886 527751886 492904458 492904458 654313609 1036255891 1036255891 354104874 730371082 971211838 971211838 179108673 156911918 460114234 460114234 317380050 317380050 277512592 321402048 333656562 747647062 747647062 773015428 773015428 962525454 962525454 503570407 196231172 134255476 28473012 161634240 192938896 192938896 14178816 5168256 588276096 588276096 574536497 578447233 578447233 625640611 625640611 876847146 987763719 987763719 606208259 606208259 370401802 1041140077 1041140077 966258068 966258068 626288386 430060160 430075588 462149954 462149954 727880404 727880404 676944372 564096321 564096321 545124225 599323813 694732197 694732197 478972309 931009627 931009627 570610718 81379865 806472704 920683736 920683736 799123267 89252520 573249044 646534777 646534777 682324065 682324065 201591275 314910963 868559058 868559058 650441448 288526880 288526880 295879072 458397152 458397152 238112896 260922024 266350152 266350152 185353536 281707530 281707530 613106830 613106830 780698891 1057022407 1057022407 578254160 578254160 673219655 785615919 785615919 332359194 332359194 123418160 814903854 964874343 964874343 954785408 156434976 138621060 139596420 139596420 138024708 138024708 151029728 151029728 14536260 79847816 79847816 82260672 92035656 92035656 976213407 976213407 928772726 618395604 738705850 996620727 996620727 989932791 380347097 346729323 667741260 667741260 627624382 480791290 313475954 27317056 34622208 34622208 2886912 2886912 288030720 436912390 436912390 522960896 522960896 1046552863 1046552863 293930658 297840915 681914548 939782439 939782439 712127477 712127477 678807893 836807948 836807948 440092755 847306762 847306762 477049615 998279392 998279392 501938269 363168197 473956494 473956494 138461194 10535232 832094784 832094784 282693795 56056786 26399328 51972368 51972368 10317377 10317377 21513952 692732932 850500819 850500819 870979059 870979059 472514813 85519066 617736929 1042859295 1042859295 423203773 556102693 701521825 701521825 135824576 590898353 590898353 14730496 363402752 370059674 370059674 291886720 311087370 311087370 390135994 390135994 372583554 372583554 360396714 343484298 937496011 937496011 903365419 893912235 893912235 366324351 360759594 614031997 614031997 462543912 753306053 753306053 181234900 181234900 764139696 764139696 668069541 668069541 333077673 324010674 324010674 650954266 650954266 935534779 935534779 907065562 907065562 641565777 910237978 930578826 930578826 165713068 106505880 161282156 214082780 238367144 279183682 279183682 216531008 173230468 179516244 179516244 246205788 476333266 476333266 326373672 806396694 806396694 706863381 688985992 688985992 361493697 689783512 689783512 471656735 660652473 660652473 875610473 875610473 68947464 204521544 204521544 220595968 437701362 531301524 531301524 358797738 135168230 201837072 252756540 252756540 403269277 403269277 1043485710 1043485710 811210269 371772271 716195872 954875044 954875044 938419867 792048150 652221448 806953354 806953354 72032264 813697728 838093731 838093731 682987847 159522981 296325984 930095768 965221157 965221157 130819836 792018768 792018768 560435546 560435546 1000745779 1000745779 684769989 298884360 525299858 525299858 545508597 545508597 555154512 757037387 757037387 605719117 353115680 353115680 862140500 862140500 816511584 816511584 378079898 425980326 480665912 480665912 325429344 325429344 378095762 378095762 59343120 59343120 31485696 23138016 583840 545259536 578814033 579085009 584395473 676016704 676016704 847708182 847708182 551709579 712226024 991479351 991479351 701260393 369366185 269224962 304087314 459411874 459411874 709104681 709104681 216492137 209450892 685840649 685840649 343007742 604359210 604359210 844104472 844104472 571214601 985450680 985450680 750784392 750784392 522849166 522849166 407781468 263488820 234917076 136359280 214451300 214451300 135738160 138816914 460707618 460707618 275248386 214016770 214016770 336075034 336075034 375662866 375662866 106171032 353706392 353706392 353444608 269445280 416189600 416189600 550600769 550600769 144303684 39604787 952738503 952738503 289434742 253516372 331607641 331607641 83887723 54913024 60297848 105646084 105646084 108607164 151445664 177507308 209789004 209789004 13906892 10885440 17701920 53209360 103547564 192679860 192679860 191146996 155011572 470686782 470686782 516161728 537922947 537922947 432117316 776071215 776071215 1046111900 1046111900 856907825 856907825 855846963 940998673 940998673 885446859 972263816 972263816 266568291 741093916 741093916 748011017 748011017 697592913 32167392 32167392 45015360 185128864 185128864 135865860 245432512 245432512 234959356 179094884 259072956 259072956 254280876 182237288 76262912 76262912 79007136 498740492 498740492 370474218 413401408 413401408 289514432 289514432 272445186 282551908 431477030 431477030 409035684 405976704 405976704 303005218 278818612 983703284 988773351 988773351 419692853 433845827 563437619 945630855 945630855 847539894 718521032 773022196 773022196 636670953 586885089 586885089 369116272 658220618 658220618 616744593 616744593 1015579566 1015579566 614550603 614550603 468191987 1025349474 1025349474 405503521 908086289 908086289 472827166 1042566165 1042566165 276307346 202545344 202545344 183765972 151833636 151833636 249301596 249301596 722055374 968937547 968937547 529194055 889272224 889272224 586828673 718805028 718805028 684071109 540710896 182490772 146588448 175112864 322427820 936017706 936017706 712009036 1058934016 1058934016 841253008 485859548 485859548 414564550 920470450 920470450 866189705 853060880 573194755 357868168 609225416 918836691 918836691 845844627 845844627 25493920 813846912 832737440 832737440 289947682 289947682 272722208 272722208 273115138 339577610 339577610 352642472 352642472 302059664 813899970 813899970 354521185 689574723 994259127 994259127 446706403 1024206113 1024206113 390388224 831454726 831454726 285511533 213904882 213904882 358533090 358533090 513226384 899700236 933799172 933799172 507201258 558937686 687543111 687543111 497814894 506273884 506273884 1057624630 1057624630 559108856 493810878 511368972 511368972 389448032 251796436 40579996 50671376 51454512 51454512 66588464 66588464 29771648 29771648 107401648 643975758 643975758 362807658 998792596 998792596 333463824 333463824 326202000 326202000 34775778 14815680 40568704 40568704 15534976 15729088 323925824 323925824 68557664 624246632 624246632 588502000 572598608 572598608 570704024 570704024 616864745 1071430869 1071430869 980328118 183459526 698330716 698330716 980993078 980993078 684246477 417341442 629440618 629440618 692899305 692899305 690493833 36215428 211595812 447282710 462775906 462775906 157264594 468732630 860281383 860281383 721878065 1067565323 1067565323 1060149817 563610784 575866753 796369589 796369589 163368773 715476236 715476236 705463641 707603733 707603733 590662449 888667859 888667859 850596242 850596242 632844953 659599346 659599346 331625920 546836066 546836066 545259585 336368754 1007490560 1007490560 625086638 318861664 420544550 420544550 243524784 407908474 407908474 355090038 355090038 337577396 492871292 829688198 829688198 972525035 972525035 697902693 758054922 758054922 555400556 965149986 965149986 834567333 815993035 815993035 583776713 552887881 571890389 778846272 778846272 711595413 104915401 750879433 750879433 266795089 567985343 874832585 874832585 135558674 430107934 430107934 577816112 842388179 842388179 572686412 591397872 591397872 553698560 553698560 612405881 612405881 496015644 496015644 60217712 422593900 675547229 675547229 327746152 763538021 951378625 951378625 886206301 794068223 832209033 850053453 850053453 817369119 869667828 869667828 612649677 819643915 1010062032 1010062032 896552659 853312427 632035846 957621907 957621907 818618261 818618261 674981372 714729045 1032817079 1032817079 605041187 222224172 165297030 990694025 1026863495 1026863495 862363438 223042606 246054332 276320304 276320304 274207232 54153744 26258080 22933152 43392432 348594400 348594400 64234448 64234448 10750272 6952320 13319296 15605184 85202368 85202368 29362400 29362400 16777248 16777248 185140392 239149212 870327682 1044415826 1044415826 1021460489 1021460489 813939148 692332684 811537096 961402380 961402380 433612416 286599984 192538548 183776624 46562224 55181872 320341776 320341776 28574944 26739040 538579200 538579200 37798032 182108752 182108752 168481812 168956436 168956436 408830236 476892558 476892558 433376716 348422964 432148710 458232400 458232400 143657172 143657172 206841438 206841438 306915486 306915486 170728324 170728324 379068358 379068358 392567528 392567528 454084886 510663614 510663614 474616974 158100542 518183100 518183100 433154912 433154912 473949499 588773937 589265969 589265969 838937645 1031679008 1031679008 690697260 667949073 650018880 650018880 351946999 234903736 398593192 398593192 491204832 494341144 494341144 186197556 201335364 260572284 260572284 260572284 621975056 621975056 741608720 741608720 733929333 152706300 152706300 46450896 178267412 650651272 650651272 619868928 619868928 70439688 70416392 269952138 356103778 356103778 232449862 232449862 291623296 291623296 270614858 1014154089 1014154089 370461210 529848386 1038519417 1038519417 687934464 687934464 694230433 694230433 685725184 684058821 552571904 162463552 162463552 161678020 161678020 640460313 640460313 84547616 604017177 604017177 102760728 567404221 567404221 702032869 702032869 587886501 753175721 753175721 443832784 590615507 590615507 295658324 677285605 677285605 453937154 453937154 425457318 429161988 429161988 407127568 298937538 516105428 533444830 533444830 882154593 882154593 692259343 631973958 631973958 558393860 558393860 228910336 228910336 217056268 217056268 217179084 222422188 537986995 539232027 1009787032 1009787032 810489416 868664635 868664635 543162753 482919630 977783035 977783035 784521282 784521282 781771468 446438868 240002998 141558660 262537538 654313609 1036255891 1036255891 354104874 436350296 971211838 971211838 179108673 156911918 460114234 460114234 1069082439 1069082439 592238785 321402048 1067899263 1067899263 968781166 968781166 1058981106 1058981106 962525454 950848455 715397333 708224720 272164800 161634240 192938896 797082961 797082961 742983597 576421053 643714885 643714885 370115050 565712112 565712112 880505514 880505514 987763719 987763719 236131348 320355676 984712664 1041140077 1041140077 966258068 966258068 764527621 456837444 456837444 591100805 591100805 815726435 815726435 440018752 988543686 988543686 997815383 997815383 599323813 1035104313 1035104313 615727961 856595042 856595042 450385038 453577304 920683736 920683736 799123267 89252520 126094448 646534777 699427180 699427180 682324065 680246077 371676739 868559058 868559058 650441448 288526880 288526880 295879072 458397152 458397152 238112896 238112896 91016616 91016616 85907752 310117648 310117648 807077378 807077378 576658195 558072064 558072064 578254160 578254160 409485314 409485314 272646276 422158758 422158758 84757920 5189504 3603872 32252896 156434976 180828372 180828372 137571268 143533840 143533840 142406724 175545424 240455318 474733898 474733898 391685290 299443552 978144477 978144477 693472906 699489006 699489006 883635020 940679047 940679047 1036068410 1036068410 428353934 428353934 400809045 627624382 627624382 480791290 420376176 420376176 143317306 366743806 366743806 103689346 854038719 854038719 436912390 538997006 774406400 1046552863 1046552863 440500240 297840915 681914548 939782439 939782439 636095032 678807893 850886986 850886986 400673914 400673914 847306762 847306762 245020806 620758184 620758184 476873745 117506350 115084376 291244128 291244128 111690162 832094784 832094784 282693795 56056786 26399328 51972368 51972368 4194432 12750336 12750336 692732932 692732932 834680728 935016315 935016315 453779486 453779486 340126069 1042859295 1042859295 423203773 556102693 556102693 135824576 135824576 199488848 199488848 15658536 363402752 363402752 75425986 88344648 88344648 23730528 31461408 31461408 54211360 54211360 44114256 74516728 130294664 302039058 373399688 373399688 264766296 264766296 158861220 64593456 563480498 841606419 898153618 1069702958 1069702958 854632980 764139696 764139696 668069541 838995584 940199477 970323111 970323111 970197187 684549831 935534779 935534779 907065562 907065562 641565777 910237978 930578826 930578826 444656726 444656726 412535164 412535164 238367144 238367144 250644792 250644792 226429172 226429172 195034740 45819968 101125440 326373672 614736344 806396694 806396694 706863381 315428766 513620144 513620144 689783512 689783512 471656735 660652473 660652473 875610473 875610473 198776432 204521544 204521544 820104849 820104849 531301524 709991175 709991175 268986624 201837072 252756540 252756540 106924724 39391360 1043485710 1043485710 811210269 371772271 716195872 716195872 377671770 377671770 53118474 85663840 276958345 885923019 902427201 902427201 1027787405 1027787405 428305903 428305903 968795661 968795661 965221157 965221157 121971651 363981656 395762516 922952613 922952613 956819907 956819907 759817389 710811385 805997095 805997095 943525955 943525955 555154512 757037387 757037387 605719117 353115680 661112130 862140500 862140500 816511584 816511584 378079898 425980326 480665912 480665912 325429344 325429344 378095762 378095762 105721448 389910040 389910040 113609208 119350112 558958544 578814033 579085009 691395456 691395456 137640722 847708182 847708182 682496324 712226024 991479351 991479351 738398544 369366185 153433628 460327824 460327824 459411874 709104681 709104681 448839870 1069838929 1069838929 897180823 897180823 675365004 744803991 744803991 824740397 824740397 655150358 826855359 938789310 938789310 797183385 663617760 151130148 234917076 234917076 177735252 214451300 214451300 136106944 179182932 241533704 241533704 173138580 33754004 24312720 24312720 36833280 53612064 103736760 106237224 118555080 118555080 137437956 137437956 136380928 133309256 123736672 123736672 14737728 14737728 26602080 26823680 35442192 54843904 88001712 88001712 110964312 110964312 51455064 105646084 239188380 239188380 139944784 139944784 12607892 67451520 76693960 180215424 180215424 177418836 244769820 244769820 166550884 188396004 247957304 247957304 46927056 516161728 537922947 537922947 432117316 776071215 776071215 1046111900 1046111900 856907825 856907825 855846963 976326657 976326657 313524182 972263816 972263816 940755746 902170217 741093916 1006793998 1006793998 1033533935 1033533935 1017392960 1017392960 491922146 822133152 921820154 921820154 1022803624 1022803624 582368600 383393982 350496822 295513210 319103614 319103614 346727500 346727500 454928294 462301830 462301830 413401408 413401408 289514432 295883106 295883106 283554018 431742246 431742246 426996902 426996902 405976704 303190050 278818612 956248164 988773351 988773351 827571944 433845827 563437619 945630855 945630855 847539894 269823490 461793980 461793980 403227654 151520292 480561042 659782744 659782744 658220618 632292201 616744593 600580514 600580514 630134344 630134344 313616912 654528530 654528530 521074750 908086289 908086289 472827166 1042566165 1042566165 624838209 624838209 446585136 709134537 709134537 12632256 44040528 48235840 722055374 968937547 968937547 545394753 889272224 889272224 586828673 718805028 718805028 684071109 540710896 182490772 268532066 424414374 424414374 169346064 100191636 535038133 1058934016 1058934016 567413817 485859548 485859548 314886640 920470450 920470450 866189705 853060880 398723322 863113802 908871955 908871955 875351307 68021256 68021256 355336 327680 25296896 25296896 32620384 33216480 33216480 25433856 4507776 91876544 93661800 93661800 89343368 379341723 813899970 813899970 919847347 919847347 994259127 994259127 446706403 1024206113 1024206113 1012819348 1012819348 980811480 980811480 816709532 317877792 358533090 841109745 884610891 899700236 933799172 933799172 507201258 558937686 687543111 687543111 497814894 497814894 146453494 1057624630 1057624630 913268415 966212199 966212199 511368972 594811529 594811529 774112776 774112776 607206692 51454512 60296128 60296128 29771648 29771648 107401648 285774976 362807658 362807658 998792596 998792596 499357644 954239334 954239334 861315978 938772649 938772649 393496148 785313485 785313485 990648568 990648568 323925824 391708648 624246632 624246632 588502000 620882024 620882024 547692800 170201662 616864745 1071430869 1071430869 980328118 438989056 631508552 631508552 307022994 736136551 736136551 809518518 809518518 983048858 983048858 579863495 754000716 754000716 154980132 447282710 462775906 462775906 297879232 468732630 468732630 451201476 280821544 111671640 365449304 563610784 563610784 575866753 796369589 796369589 549762269 568076272 907140674 931845642 931845642 577242513 648278361 888667859 888667859 850596242 850596242 655361993 659599346 659599346 293865570 546836066 546836066 545259585 596036616 1007490560 1007490560 625086638 88415474 88415474 311092336 312352338 312352338 291954840 291954840 383993817 905897763 905897763 890701926 1002513395 1002513395 972525035 697902693 758054922 758054922 559981988 965149986 965149986 834567333 815993035 815993035 679172621 679172621 708982913 778846272 778846272 711595413 168125712 539316428 653845348 653845348 405315557 422439715 422439715 419949312 430107934 430107934 577816112 842388179 842388179 572686412 787748224 787748224 593363737 593363737 86631720 358350952 705066837 705066837 247712033 422593900 675547229 675547229 327746152 763538021 951378625 951378625 886206301 788664381 832209033 832209033 377494727 817369119 817369119 303173704 378536538 378536538 1010062032 1010062032 295345409 345117258 873601032 873601032 398335866 853585634 853585634 860014442 860014442 823329289 823329289 605041187 996198192 996198192 990694025 1026863495 1026863495 862363438 223042606 246054332 246054332 151923240 54153744 54153744 18225696 18225696 268451970 354935040 354935040 346075562 67446792 353519744 353519744 342555435 806280195 806280195 487402159 810297579 810297579 1058926143 1070892589 1070892589 1041836619 1041836619 1044415826 1044415826 1021460489 1021460489 813939148 692332684 811537096 961402380 961402380 139633122 15080896 62957568 62957568 16814816 39731954 324012627 324012627 281024643 39456851 923016897 923016897 601119385 596039793 476238222 686463437 686463437 284489164 949860179 949860179 483023422 433376716 286735032 392376762 502557314 502557314 235856708 235856708 211616414 211616414 236986448 236986448 211886412 180684444 379068358 379068358 392567528 392567528 454084886 510663614 510663614 373424200 356245418 518183100 518183100 428994528 461686902 461686902 465826038 465826038 673178172 906496037 1031679008 1031679008 667949073 811242434 811242434 650018880 268454400 234903736 363626760 363626760 456079074 494341144 494341144 335974780 405421226 861673249 861673249 260572284 814794062 814794062 741608720 741608720 733929333 112743238 294143746 294143746 77956160 650651272 650651272 619868928 619868928 135636617 210515532 545862733 634371282 931393659 931393659 501326955 832658420 832658420 865298240 865298240 597540114 922341873 922341873 734717588 585741473 687934464 782299456 782299456 723068469 685725184 684058821 227071745 162463552 162463552 161678020 161678020 640460313 640460313 94527320 604017177 604017177 67957768 567404221 567404221 702032869 702032869 587886501 753175721 753175721 443832784 590615507 590615507 295658324 677285605 677285605 706543744 706543744 655698489 429161988 873345434 873345434 817680195 678054699 1022118971 1022118971 882154593 882154593 692259343 631973958 631973958 558393860 558393860 7375588 7340928 5311616 27263744 27263744 136577680 537986995 539232027 1009787032 1009787032 810489416 868664635 868664635 543162753 482919630 977783035 977783035 784521282 784521282 781771468 446438868 144998708 421544256 421544256 494928528 554762265 554762265 273166880 632783681 708860832 708860832 704472469 719930435 830694576 830694576 1069082439 1069082439 592238785 710433167 1067899263 1067899263 968781166 968781166 1058981106 1058981106 962472415 950848455 715397333 708224720 272164800 160596676 177226581 797082961 797082961 742983597 576421053 643714885 643714885 638841369 324905483 1051135999 1051135999 880505514 434241868 434241868 328612450 437405720 984712664 984712664 700395250 700395250 764527621 764527621 456837444 456837444 591100805 591100805 815726435 815726435 440018752 988543686 988543686 997815383 997815383 448591767 1035104313 1035104313 615727961 856595042 856595042 503873562 503873562 453577304 882037994 882037994 923042816 923042816 912460179 912460179 699427180 680246077 1040732200 1040732200 436917303 436917270 237112382 33849344 186782004 186782004 194153668 194153668 158934948 158934948 91016616 619455065 619455065 394658286 394658286 846795454 1025053887 1025053887 675286403 665491105 726179874 726179874 409485314 409485314 403260384 422158758 422158758 5497216 5632384 6605184 13667136 145959360 180828372 180828372 150543620 143533840 143533840 142406724 175545424 240455318 474733898 474733898 391685290 299443552 978144477 978144477 693472906 699489006 699489006 883635020 940679047 940679047 1036068410 1036068410 428353934 432339578 432339578 274659880 274659880 138511612 420376176 448400498 448400498 366743806 366743806 103689346 854038719 854038719 302724114 538997006 774406400 1011425294 1011425294 692383748 692383748 444629312 444629312 412258662 267244364 267244364 850886986 850886986 400673914 994479752 994479752 670467731 915583310 915583310 687205317 172281623 859883742 859883742 291244128 291244128 111690162 831520834 831520834 805864194 834194496 834194496 555128896 302029840 268475538 42516528 50905200 986233892 986233892 964697302 964697302 935016315 453779486 453779486 369101058 303900964 598547306 845677971 845677971 185405686 185405686 186647316 199488848 199488848 85437760 289016704 398309112 398309112 290068128 290068128 46193850 354616616 354616616 338314410 338314410 302869024 396631931 579742539 823008291 823008291 1055534903 1055534903 377490967 417515722 718553417 718553417 841606419 898153618 1069702958 1069702958 854632980 695690308 695690308 274472576 838995584 940199477 970323111 970323111 970197187 857244055 361532999 79827528 97962696 97962696 381794768 381794768 113345562 376319106 444656726 444656726 412535164 412535164 35142664 80691408 250644792 250644792 226429172 226429172 267942084 267942084 245231196 238391108 614736344 614736344 90177724 111149632 609632092 609632092 513620144 708856520 708856520 628545177 666295161 666295161 630604161 109291088 198776432 198776432 166268400 820104849 820104849 280282256 709991175 709991175 270877828 270877828 67274120 136524041 340944129 440063766 440063766 874174357 874174357 357204120 677023888 943112467 943112467 954223814 954223814 596502496 596502496 885923019 902427201 911843914 1027787405 1027787405 468226915 428305903 968795661 968795661 345205266 542029251 542029251 363981656 363981656 922952613 922952613 956819907 956819907 900726123 710811385 805997095 805997095 943525955 943525955 292992016 421521422 421521422 387573306 463083126 661112130 661112130 229512379 367329312 367329312 342622348 306233490 505741866 505741866 201591260 521636074 521636074 114818680 105721448 389910040 389910040 113609208 123896472 558958544 565314288 565314288 691395456 691395456 720686037 720686037 715516245 715516245 708852877 782311773 782311773 738398544 310848770 310848770 460327824 856201763 856201763 1008082152 1008082152 615199944 1069838929 1069838929 897180823 897180823 675365004 744803991 744803991 824740397 824740397 655150358 826855359 938789310 938789310 797183385 663617760 430164332 216356996 200806788 177735252 186142360 186142360 136106944 179182932 196026400 196026400 141116932 141116932 36300048 2496768 36833280 36833280 103736760 106237224 118555080 118555080 99689448 292551524 292551524 274421476 678576193 678576193 144389700 65847475 958185015 958185015 847152819 943318503 943318503 592572290 110964312 110964312 51455064 105808968 239188380 239188380 139944784 139944784 78881616 78881616 114131736 180215424 180215424 177418836 244769820 244769820 166550884 188396004 247957304 529287598 529287598 395185274 319556842 354158728 354158728 169745940 169745940 256301244 286577332 352370730 352370730 291249442 976326657 976326657 313524182 646887745 940755746 940755746 902170217 615176537 1006793998 1006793998 1033533935 1033533935 1017392960 1017392960 491922146 822133152 921820154 921820154 1022803624 1022803624 582368600 568802908 350496822 295513210 319103614 319103614 346727500 346727500 454928294 462301830 462301830 159383618 159383618 26215552 295883106 295883106 283554018 431742246 431742246 426996902 426996902 303190050 303190050 275786164 453249078 453249078 827571944 861598928 861598928 583709409 583709409 311976641 269823490 269823490 151349932 403227654 403227654 151520292 480561042 659782744 659782744 632292201 632292201 240201996 782435334 782435334 889327659 889327659 206050471 654528530 654528530 521074750 521074750 302063744 302063744 135451140 1083154 624838209 624838209 446585136 709134537 709134537 12632256 44040528 48235840 145912652 943841828 943841828 545394753 620993666 620993666 33571889 6580480 4522368 8716608 46206080 155167458 268532066 424414374 424414374 257243064 257243064 149947332 669106728 669106728 77178461 373293208 373293208 314886640 314886640 85992666 524560564 659567225 659567225 863113802 908871955 908871955 875351307 541871355 849442243 861085923 861085923 831557632 831557632 289609634 289609634 344167840 344167840 281880298 292060298 340930986 340930986 288927456 379341723 379341723 95630184 1040576560 1040576560 1049263384 1049263384 68379511 908084360 975899663 1012819348 1012819348 980811480 980811480 816709532 469248042 148900564 841109745 884610891 884610891 572766202 421576998 916120090 916120090 697512549 697512549 468932420 684740992 907662125 907662125 809540032 913268415 966212199 966212199 698159744 594811529 594811529 774112776 774112776 607206692 54003504 51391216 16891936 176588497 692999397 692999397 685397127 992716800 992716800 848771779 827800227 818269955 954239334 954239334 861315978 989970473 989970473 393496148 785313485 785313485 990648568 990648568 361499754 391708648 391708648 11296768 35684392 620882024 620882024 118434305 170201662 355941162 521283860 521283860 438989056 438989056 308159170 225862792 307022994 736136551 736136551 809518518 809518518 983048858 983048858 834667693 834667693 754000716 827332288 827332288 625171243 625171243 297879232 336097422 460096678 967358254 1019053330 1019053330 511445862 365449304 551588520 551588520 364057851 493381584 549762269 549762269 907140674 931845642 931845642 854204321 648278361 648278361 366291690 366291690 815268984 815268984 601887321 865141370 865141370 604053513 369307674 387155546 596036616 596036616 357305465 352470020 352470020 58789376 311092336 312352338 455723168 455723168 101096744 383993817 905897763 905897763 890701926 1002513395 1002513395 968390220 149752224 201375756 559981988 559981988 762601737 762601737 626654656 626654656 712947292 712947292 679172621 708982913 708982913 37838868 168125712 168125712 149767088 653845348 653845348 494718043 551844371 551844371 419949312 381141250 381141250 213140768 277361090 277361090 212199756 787748224 787748224 593363737 593363737 86631720 257354025 705066837 705066837 628171689 628171689 152763100 152763100 134919276 226524788 226524788 555092508 788664381 788664381 557748727 1042813981 1042813981 640156953 614484289 614484289 747635277 979919749 983378779 983378779 722551620 722551620 919915746 919915746 398335866 853585634 853585634 860014442 894859586 894859586 607715902 497737022 996198192 996198192 89044010 352930984 352930984 104858674 23296608 31779008 31779008 16044032 13162816 13162816 9301056 29545504 268451970 354935040 354935040 346075562 67446792 353519744 353519744 342555435 806280195 806280195 487402159 810297579 810297579 1058926143 1070892589 1070892589 1041836619 1041836619 159496480 352454071 352454071 208278924 157814824 84859944 58851064 294672896 294672896 150420420 43256400 62957568 62957568 4276704 4852224 324012627 324012627 281024643 688938524 923016897 923016897 674284293 674284293 476238222 686463437 686463437 607034779 949860179 949860179 635669602 350794920 295956834 213983436 502557314 502557314 235856708 255433104 255433104 330069342 330069342 236986448 211886412 180684444 179969232 179969232 176425044 212603968 212603968 225349844 236635854 356245418 356245418 410832774 410832774 428994528 461686902 461686902 654050053 654050053 673178172 906496037 906496037 635588104 635588104 811242434 811242434 268454400 268454400 158110880 69721092 281783140 433723110 458988176 458988176 335974780 405421226 861673249 861673249 197674084 814794062 814794062 632083776 515426142 515426142 112743238 294143746 294143746 16961568 16924672 9701952 72879172 202115208 202115208 210515532 545862733 634371282 931393659 931393659 501326955 832658420 832658420 865298240 865298240 597540114 922341873 922341873 734717588 585741473 380776826 782299456 782299456 723068469 438858018 724857621 724857621 224469420 72536712 85627168 87178880 104531224 104531224 100938008 118131968 118131968 108319160 67957768 20181904 38397344 163209232 163209232 325765072 325765072 193980562 144318832 439375922 439375922 323545229 613164250 706543744 706543744 655698489 416964141 873345434 873345434 1072196877 1072196877 1022118971 1022118971 689624110 395752432 395752432 345597642 281642762 281642762 297474338 297474338 283142784 23407712 27263744 27263744 136577680 136577680 350506152 473468066 473468066 320863794 460853392 460853392 423237414 377896312 377896312 434817250 443115902 480512334 501535596 535960252 535960252 421544256 421544256 403704246 554762265 554762265 290665320 632783681 708860832 708860832 704472469 719930435 830694576 830694576 195026508 520654464 573951516 710433167 974649879 974649879 863116675 996393149 996393149 550329051 550329051 899054802 899054802 541532930 733486373 733486373 192938100 538612829 878894121 878894121 865475187 959025478 959025478 924004923 823341603 1051135999 1051135999 120615032 819733291 819733291 404814424 506608238 756342882 1039475658 1039475658 906700172 1021938760 1021938760 482985030 407446662 407446662 949931040 966712935 966712935 467178007 411217590 294130710 269083650 33695920 50487552 54999216 302301192 369362970 704696333 704696333 503873562 503873562 161597665 1026185103 1026185103 923042816 923042816 937966730 937966730 212690388 640283504 1040732200 1040732200 436917303 436917270 237112382 241225774 520093758 520093758 136448290 140941610 213276908 213276908 121037840 619455065 619455065 394658286 394658286 846795454 1025053887 1025053887 948453430 948453430 726179874 726179874 558375092 403260384 403260384 8929344 8929344 5497216 5632384 6605184 135399680 145959360 145959360 150543620 150543620 146093700 146093700 40253648 40253648 38158480 38158480 27527520 27527520 295368164 295368164 268571684 421976358 562896968 621546537 621546537 121260769 159460928 252723876 996508532 999557751 999557751 990184041 990184041 563288796 533004672 454392282 450332906 450332906 272679042 272679042 345378818 345378818 531279992 531279992 446694684 505488640 1011425294 1011425294 711033107 868601971 868601971 445012213 412258662 586215605 638397658 695345663 695345663 994903130 994903130 994479752 670467731 915583310 915583310 687205317 720421974 859883742 859883742 206610881 206610881 818690304 831520834 831520834 809703456 834194496 834194496 555128896 302029840 432322448 432322448 50905200 986233892 1005900220 1005900220 964697302 903487273 211421735 612633352 612633352 610437150 935132472 935132472 861488418 861488418 606021131 514393692 638348433 682924973 682924973 636029248 636029248 588683872 290068128 290068128 46193850 354616616 354616616 338314410 338314410 302869024 396631931 579742539 823008291 823008291 1055534903 1055534903 377490967 417515722 718553417 718553417 673591384 927634875 927634875 332016377 395141086 695690308 695690308 452707020 917015104 917015104 794928885 549766326 857244055 857244055 261622368 861034928 870847955 939151323 939151323 33157115 358772424 358772424 407705100 407705100 101526552 101526552 111536472 144342128 144342128 188042164 188042164 146149632 267942084 267942084 245231196 238391108 202377224 711199125 774654217 774654217 609632092 609632092 200952333 708856520 708856520 628545177 666295161 666295161 630604161 6562193 135319632 164696660 164696660 47620960 311260628 311260628 307763072 212154776 270877828 270877828 135480860 136524041 340944129 440063766 440063766 874174357 874174357 25189648 677023888 943112467 943112467 954223814 954223814 596502496 596502496 832231011 832231011 956414768 956414768 854176582 854176582 894018018 894018018 615040329 299984043 671059139 671059139 824669459 824669459 594164330 594164330 551322390 900726123 900726123 853804158 1059115157 1059115157 305319671 508348572 508348572 620932897 620932897 624687196 624687196 505887032 520754238 781972804 781972804 598012756 473465064 473465064 505741866 505741866 201591260 521636074 521636074 174047440 174047440 311868464 311868464 107928984 123896472 555382032 555382032 89854393 135714064 580350340 720686037 720686037 715516245 715516245 667558356 119763981 115683476 126118700 310848770 310848770 437653782 856201763 856201763 1008082152 1008082152 615199944 230329192 183519594 280234506 280234506 377992786 377992786 135320692 135320692 520600284 520600284 389887166 495118162 495118162 487962690 430692558 430164332 216356996 164039684 156511328 451291438 451291438 283538204 283538204 101884240 221459392 388463374 388463374 49137936 213912204 213912204 42799664 42799664 26493504 28385568 28385568 30409440 292551524 292551524 274421476 678576193 678576193 441629558 441629558 958185015 958185015 847152819 943318503 943318503 592572290 277873218 311241408 454590530 454590530 437658816 438286360 438286360 235906256 78881616 84043336 114131736 114131736 125886768 125886768 26813984 55624368 60588848 66850800 151945854 529287598 529287598 395185274 319556842 354158728 354158728 169745940 169745940 256301244 286577332 352370730 352370730 224428090 118415748 167942928 206080356 206080356 174862784 618711457 618711457 615176537 41635854 513998528 513998528 9470400 9470400 9923776 9923776 59319432 1042821276 1042821276 277905334 345905183 568802908 568802908 235415628 235415628 207129792 207129792 13387404 9843328 65538400 65538400 30672256 30672256 29959264 26215552 10486080 10486080 10534912 27312480 27312480 153802020 153802020 136975620 402460640 402460640 125165088 554729396 554729396 861598928 861598928 583709409 907863690 907863690 151896591 139995810 151349932 960495399 960495399 406716199 490190257 490190257 654508048 654508048 640758393 240201996 782435334 782435334 889327659 889327659 337002648 307681938 108278688 108278688 107836208 302063744 302063744 3154194 1392640 76766208 77459016 77459016 165538424 165538424 700851389 700851389 146325620 759935241 943841828 943841828 757806084 620993666 620993666 673594528 678364448 683790565 683790565 540182064 405027858 272771504 272771504 447951354 814275586 1044923598 1044923598 527549198 375980119 375980119 373293208 951132999 951132999 1040539780 1040539780 963462452 963462452 659567225 348262602 613907107 613907107 549712065 541871355 849442243 861085923 861085923 831557632 831557632 289609634 289609634 344167840 344167840 281880298 292060298 340930986 340930986 288927456 344599648 836899534 836899534 1040576560 1040576560 1049263384 1049263384 68379511 73780228 1044673560 1044673560 596031322 596031322 464445937 469248042 469248042 383846582 383846582 467493464 873063068 873063068 421576998 916120090 916120090 697512549 1042493650 1042493650 840053518 907662125 907662125 495982184 495982184 301991426 941960460 941960460 507326213 10559808 52962624 234138572 234138572 192939560 192939560 159196200 176588497 692999397 692999397 685397127 992716800 992716800 848771779 827800227 818269955 818269955 816095415 772924017 989970473 989970473 145088939 90565032 108004248 141910460 342117440 361499754 361499754 552635208 552635208 556458560 631828913 631828913 617127424 670937193 670937193 652214745 321159218 184325570 308159170 308159170 647912502 666685083 666685083 279478351 948726968 948726968 253958428 620757033 834667693 834667693 1035434896 1035434896 909746803 785280198 625171243 271116432 271116432 460096678 967358254 1019053330 1019053330 511445862 143034202 146281472 681706436 681706436 539035189 61875585 46158560 547487862 617858456 854204321 854204321 314449746 552207290 623118633 623118633 815268984 1035469765 1035469765 943724335 883952330 613156876 369307674 387155546 562464866 562464866 1016624870 1016624870 387655498 459680596 459680596 35651856 455723168 535656594 535656594 379976574 661452145 661452145 576006433 907414960 1064103488 1064103488 14788812 201375756 214196428 214196428 420363854 566792840 566792840 410400769 853296791 853296791 457337752 540820225 540820225 37838868 34153488 250144417 544173953 544173953 166141273 494718043 551844371 625264809 625264809 381141250 605878864 605878864 574348889 302932739 15937088 15937088 572442296 572442296 593797800 593797800 557194017 121891737 624192896 628171689 628171689 91521344 134919276 134919276 14292672 677487813 677487813 309742658 557748727 880179458 1042813981 1042813981 810806661 810806661 614484289 809411563 979919749 983378779 983378779 722551620 722551620 919915746 919915746 868749033 655379057 309350539 309350539 894859586 894859586 1004719602 1004719602 405193890 537414830 927594521 927594521 911123486 911123486 205740046 266786796 266786796 189121912 62519248 62519248 57642944 57642944 29545504 25301088 25301088 11336416 11336416 10811584 77080704 80225280 80225280 75565568 75565568 84873312 121802796 172015764 173797044 189192372 203384504 203384504 216493350 317563362 317563362 246109338 84859944 84859944 58851064 144073504 150420420 150420420 43256400 43256400 59263840 59263840 51648480 294667796 294667796 196874036 688938524 688938524 779741312 779741312 775687965 411209035 528175789 607034779 607034779 879754635 879754635 635669602 350794920 530199976 530199976 339384604 461770768 461770768 593645937 951507235 951507235 905352051 905352051 706485254 706485254 673062045 909641499 909641499 510138140 380973854 380973854 372123268 865083359 865083359 287832354 549958123 549958123 436718690 443957712 920147661 920147661 782171663 976211829 976211829 936135770 936135770 967853682 967853682 854175878 854175878 242251202 237806890 324797094 425597744 458988176 458988176 106395326 67117064 36439320 179969848 228463444 646481988 646481988 547406145 456525059 382076027 227020025 59173634 319027280 319027280 604326936 604326936 646727376 646727376 671220748 671220748 1045160210 1045160210 445760346 892507822 948966011 948966011 625311524 625311524 841171306 841171306 798180602 798180602 540129072 858358561 858358561 552130649 552130649 679608321 679608321 724857621 724857621 683197252 675447173 607211624 231455240 203060552 203060552 152964408 118131968 118131968 118021656 645531621 645531621 234364108 783549833 783549833 325765072 325765072 193980562 813768963 813768963 439375922 832645763 832645763 300606930 300606930 184762640 184762640 434192600 522314046 1072196877 1072196877 598811624 647039452 647039452 395752432 395752432 345597642 300005610 281642762 297474338 297474338 283142784 23407712 23407712 15729536 30673312 30673312 350506152 473468066 619546905 826893763 826893763 484112850 813303627 813303627 377896312 434817250 443115902 612317032 686462309 686462309 633756968 320285078 91626408 356128784 369624112 384637770 384637770 386234944 386234944 320223266 320223266 121298712 443376376 443376376 287384592 520654464 520654464 212402622 0 0 984973366 996393149 996393149 566316158 959176974 959176974 899054802 541532930 733486373 733486373 192938100 538612829 878894121 878894121 865475187 959025478 959025478 924004923 823341603 823341603 704615278 702285111 819733291 819733291 412624470 506608238 756342882 1039475658 1039475658 906700172 1024565803 1024565803 605873218 385671284 314383134 949931040 992533524 992533524 467178007 411217590 294130710 269083650 33695920 285628927 509997276 751278167 751278167 546564638 836236003 1070854911 1070854911 189947979 1026185103 1026185103 844383912 844383912 937966730 937966730 1004411656 1004411656 640283504 455816502 455816502 455816502 251946438 241225774 520093758 520093758 136448290 140941610 213276908 213276908 121037840 178233288 215431884 215431884 108451560 108451560 100815344 43127376 948453430 948453430 541164566 558375092 558375092 978931210 978931210 307320926 307320926 190529202 415569742 1012553030 1012553030 739881280 148994950 15233792 138128704 146093700 146093700 40253648 40253648 109072722 373684554 373684554 367026202 295368164 295368164 968570407 986352806 986352806 971955687 971955687 183426538 647062240 647062240 996508532 999557751 999557751 990184041 990184041 563288796 533004672 454392282 529651712 529651712 330527084 351322138 564197428 564197428 647109497 1003524837 1003524837 733880181 733880181 814786259 814786259 868601971 868601971 965435461 965435461 959397159 638397658 695345663 695345663 994903130 994903130 868162801 321301913 821101008 821101008 405079124 720421974 720421974 438305431 13664264 17984 929859984 929859984 57464219 809703456 809703456 23280259 158401316 158401316 432322448 432322448 292553634 341617928 1005900220 1005900220 571774913 571774913 783056965 1017955862 1041943647 1041943647 1029789044 1029789044 861488418 861488418 821573786 795420093 638348433 682924973 682924973 728131660 728131660 734568125 768573440 768573440 41943120 41943120 10637312 9064768 61476920 104501546 395416594 395416594 517677334 517677334 385476556 608956835 608956835 991269650 991269650 673591384 945112085 945112085 927634875 332016377 395141086 395141086 452707020 452707020 917015104 917015104 679066806 638936049 944892130 944892130 341688967 861034928 870847955 939151323 939151323 33157115 358772424 358772424 407705100 407705100 101526552 147813224 159045540 159045540 144342128 188042164 188042164 41025920 210834304 250684380 250684380 110365272 110365272 711199125 774654217 774654217 206623744 114838884 198450524 198450524 61841392 732431221 732431221 149947492 612371069 612371069 251918956 251918956 188762978 854720645 854720645 311260628 1019048467 1019048467 167893708 136094470 138936712 138936712 137889540 68362776 645238672 645238672 551341633 551341633 542692937 106900881 31736736 31736736 28744192 294638208 294638208 31642080 31642080 956414768 956414768 854176582 854176582 967917626 967917626 615040329 474516630 671059139 671059139 824669459 824669459 347952990 629179667 629179667 594313028 853804158 853804158 1059115157 1059115157 305319671 975379285 975379285 834743110 620932897 624687196 849071378 952801095 952801095 990568937 990568937 1051331578 1051331578 971580903 971580903 605085882 411657362 411657362 168297492 174047440 174047440 311868464 311868464 107928984 107928984 27527520 598743401 598743401 789966900 789966900 173794576 547091269 547091269 667558356 667558356 119763981 115683476 126118700 126118700 83894896 321391104 321391104 994634792 994634792 57469742 252547006 252547006 419693604 421527846 421527846 11995430 11744064 87881576 87881576 20904176 47000784 117119752 117119752 135155712 135155712 135056388 186784092 186784092 156511328 156511328 451291438 451291438 309727564 283538204 142611940 221459392 388463374 388463374 236917760 436619526 436619526 393725402 393725402 102506050 306272904 306272904 273821848 39650384 39650384 172565108 172565108 164970112 441629558 441629558 159750260 377961182 377961182 188786932 188786932 270027842 277873218 328466576 454590530 454590530 437658816 438286360 438286360 235906256 106022208 106022208 89196480 89196480 125886768 125886768 109804828 109804828 79977388 189668532 189668532 215959530 215959530 373997732 373997732 472457706 505613460 505613460 174666126 174666126 179372740 179372740 524529960 527029540 527029540 167942928 206080356 206080356 174862784 22741472 50470352 533474318 533474318 513998528 513998528 677523594 677523594 509616961 256444284 256444284 1042821276 1042821276 712075930 508824222 508824222 396912304 235415628 235415628 206445708 84147264 76284800 76284800 74076224 19752448 19752448 18214176 18067072 18332258 287520994 287520994 283400706 408962502 408962502 409654662 409829218 469314294 469314294 402460640 125165088 554729396 554729396 438399034 438399034 1067531408 1067531408 907863690 785420358 785420358 2949128 960495399 960495399 406716199 872785164 872785164 892580116 892580116 640758393 134748680 134748680 474874624 847587411 878773463 1009519887 1071917952 1071917952 55833264 280610818 280610818 302990528 302990528 39846288 300342432 333060602 384829440 384829440 165538424 700851389 700851389 146325620 759935241 759935241 757806084 757806084 149116098 587744276 673594528 678364448 683790565 683790565 540182064 405027858 272771504 272771504 447951354 814275586 1044923598 1044923598 527549198 375980119 375980119 306905600 951132999 951132999 1040539780 1040539780 963462452 963462452 897829002 717888729 659175799 388759961 281227440 382199928 382199928 102936848 69508000 79901184 97941344 97941344 82320960 17782080 11143808 6165504 6165504 5507712 1973760 4918848 344599648 876662659 876662659 812239927 812239927 808306372 808306372 240639443 878194000 1044673560 1044673560 927736903 1041371679 1041371679 881360268 116779992 504267817 921688815 921688815 873063068 873063068 541628781 264454216 550568465 550568465 1042493650 1042493650 840053518 840053518 471335310 1012932939 1045176342 1045176342 941960460 941960460 701373669 606084152 799196184 799196184 700739480 192939560 192939560 159196200 65904640 65904640 51041328 595088560 595088560 303735745 285830274 311626560 311626560 304560402 8852178 40510928 113699264 113699264 77068872 77524488 77524488 68471304 68435968 21106848 80167360 552635208 552635208 556458560 631828913 631828913 617127424 681745885 681745885 652214745 748216917 748216917 284332309 727107989 727107989 666685083 666685083 562942252 973326438 973326438 253958428 572731665 572731665 746816961 1035434896 1035434896 909746803 785280198 275175810 235030942 134742020 815375456 815375456 320006764 377886810 902956624 902956624 390076059 681706436 1040262181 1040262181 974130916 748750697 547487862 547487862 570632294 941497313 941497313 552207290 623118633 623118633 859330017 1035469765 1035469765 943724335 883952330 613156876 276897858 294666274 562464866 562464866 1016624870 1016624870 387655498 459680596 459680596 35651856 30024930 535656594 535656594 379976574 661452145 661452145 576006433 907414960 1064103488 1064103488 479586894 272030784 560487628 562771041 562771041 946636480 946636480 410400769 853296791 853296791 457337752 540820225 540820225 204315776 31909200 250144417 598901105 598901105 471110149 756267866 756267866 625264809 625264809 648229209 648229209 639507993 919130754 919130754 604048832 604048832 617947392 617947392 593797800 593797800 708421200 787612197 787612197 697587249 624807649 85319433 54092688 31680512 31680512 677487813 677487813 309742658 809011126 880179458 880179458 742694817 810806661 823656576 823656576 809411563 924553195 924553195 360847313 109525768 150293900 334807905 868749033 868749033 655379057 372809112 1056909381 1056909381 633618707 1004719602 1004719602 967493827 967493827 927594521 927594521 911123486 911123486 205740046 266786796 271380816 332648544 332648544 62519248 57642944 57642944 28782688 14749824 16915904 16915904 33543944 98168296 98168296 71450984 71450984 3022080 73018368 73018368 121802796 172015764 173797044 189192372 663860889 905466119 905466119 675356805 686112961 686112961 386450002 386450002 302251762 302251762 461299638 461299638 280466752 191050164 186268464 59263840 286324592 294667796 294667796 196874036 560225050 839127048 839127048 779741312 979149060 979149060 847114131 470427541 367865338 367865338 155225784 155225784 141170800 530199976 530199976 339384604 461770768 461770768 593645937 951507235 951507235 905352051 905352051 706485254 706485254 673062045 909641499 909641499 510138140 380973854 380973854 372123268 952646112 952646112 287832354 549958123 549958123 436718690 452072406 920147661 920147661 782171663 976211829 976211829 936135770 936135770 967853682 967853682 854175878 854175878 356915370 356915370 326108052 425597744 473730976 473730976 475137674 475137674 890522407 890522407 504026142 646481988 846077331 846077331 1010223022 1010223022 526798142 377268224 319027280 319027280 604326936 604326936 646727376 646727376 671220748 671220748 1045160210 1045160210 445760346 892507822 948966011 962077104 962077104 856494571 856494571 841171306 850213004 1013018935 1013018935 982394369 982394369 322231089 220122184 942198027 942198027 142611012 683197252 683197252 675447173 607211624 231455240 203060552 203060552 152964408 102160432 118021656 118021656 645531621 645531621 234364108 783549833 783549833 512024484 512024484 195308162 813768963 813768963 43781712 832645763 832645763 324942114 324942114 857339528 857339528 566907506 566907506 776069950 776069950 694536617 502614316 502614316 481851208 481851208 344340896 300005610 23189602 19054880 22172096 40632576 40632576 15729536 15729536 30673312 30673312 268698360 432047519 619546905 826893763 826893763 484112850 813303627 813303627 198820822 162416228 191164528 612317032 686462309 686462309 633756968 202945544 471061066 471061066 356128784 384637770 384637770 386234944 386234944 320223266 320223266 121298712 267590076 349584507 621612073 1013728993 1013728993 525135313 288082681 733282581 984973366 984973366 566316158 566316158 959176974 959176974 416855394 416855394 62003152 62003152 159924548 159924548 212864588 212864588 768905796 768905796 472518726 805701762 805701762 581607249 599244518 702285111 702285111 412624470 412624470 472986369 707975605 707975605 818012355 819243520 1024565803 1024565803 605873218 385671284 311467634 311467634 992533524 992533524 427757239 427757239 188755607 140878944 1026224209 1026224209 663264267 842069049 978628722 978628722 843530919 1070854911 1070854911 189947979 436472866 436472866 638878180 638878180 413985721 888267027 1004411656 1004411656 411689168 679932325 699141477 699141477 671805706 513371210 513371210 513638962 513638962 445668922 209879590 19432960 28071472 593053385 662420017 662420017 108451560 108451560 100815344 43127376 300438292 987394786 987394786 956637287 558224700 978931210 978931210 307320926 307320926 190529202 415569742 1012553030 1012553030 739881280 148994950 140953664 15513280 15513280 13707200 14815680 14815680 109072722 373684554 373684554 367026202 310694712 372251322 968570407 986352806 986352806 971955687 971955687 283935218 647062240 647062240 357602081 478250080 486359164 486359164 481976508 481976508 321200380 149318614 529651712 529651712 342180178 513512320 564197428 564197428 647109497 1003524837 1003524837 733880181 733880181 814786259 814786259 705718359 705718359 965435461 965435461 959397159 444939609 98764512 98764512 545275056 545275056 345894474 805677264 821101008 821101008 749594884 749594884 1040502040 1040502040 381978654 88476840 929859984 929859984 927500338 847880442 380405627 380405627 964548389 1035499738 1035499738 770966652 357953462 357953462 341617928 509887326 757635175 927075416 927075416 1017955862 1041943647 1041943647 1029789044 1029789044 653468096 821573786 821573786 795420093 563614024 563614024 144104004 728131660 728131660 734568125 768573440 768573440 8913984 10637312 10637312 28927584 61476920 78120264 78120264 68673616 68673616 120186168 199254200 608956835 608956835 1008075804 1008075804 840834579 945112085 945112085 608555678 871991384 871991384 313299888 152823038 393162960 928239322 928239322 679066806 805644291 944892130 944892130 341688967 272765592 340663434 880800529 880800529 807407921 807407921 570974464 320858328 294829170 167323620 186601044 186601044 159045540 106102092 59242608 21778804 41025920 210834304 250684380 250684380 203694924 110365272 102042496 145768452 145768452 85412360 111692528 111692528 143578548 143578548 732431221 732431221 149947492 612371069 612371069 537977737 514132876 275204177 854720645 854720645 886523462 1019048467 1019048467 706337932 272127244 348535130 348535130 309466002 104076866 645238672 645238672 551341633 551341633 542692937 550161608 605821833 605821833 561830736 561830736 302028267 31642080 31642080 778338652 778338652 460248764 460248764 967917626 967917626 902788505 474516630 482467968 814776556 814776556 285319875 713755888 759984365 759984365 594313028 673949720 673949720 293122628 293122628 1021716818 1021716818 975379285 834743110 864810099 864810099 849071378 952801095 952801095 990568937 990568937 1051331578 1051331578 971580903 971580903 605085882 411657362 523920536 523920536 86734216 307471872 393352690 393352690 381681882 96208360 96208360 598743401 598743401 789966900 789966900 173794576 547091269 547091269 758150428 758150428 117704760 537689148 537689148 386222122 386222122 319764554 805574929 1048149040 1048149040 1030411695 928111012 288456864 419693604 421527846 421527846 401847034 486252198 511833076 511833076 20904176 47000784 117119752 117119752 170850624 170850624 205762756 205762756 243289188 243289188 135552088 172531588 309727564 309727564 184027612 184027612 143131716 313532678 313532678 236917760 436619526 436619526 393725402 393725402 102506050 306272904 306272904 273821848 13881920 13881920 8915456 8915456 8589312 8652864 8652864 1049088 8520192 8520192 16640 373293056 373293056 84967698 328466576 328466576 50997328 50997328 52363584 52363584 21129216 106022208 106022208 89196480 89196480 40478328 55038272 109804828 109804828 79977388 189668532 189668532 215959530 215959530 373997732 1004125979 1004125979 505613460 676331529 1068921004 1068921004 986911063 809540117 945275801 972609657 972609657 712422736 712422736 684510405 597716896 548735249 548735249 533474318 533474318 707867649 707867649 677523594 677523594 509616961 256444284 256444284 389597359 789441597 789441597 1032661884 1032661884 909379384 187067628 206445708 206445708 122841368 122841368 76284800 74076224 19752448 19752448 18351648 18351648 30894848 287520994 287520994 283400706 408962502 408962502 409654662 409829218 469314294 469314294 513777998 1043363475 1043363475 1025740213 1025740213 447254426 1067531408 1067531408 516924741 962957542 1011863021 2949128 70069512 220769536 220769536 875897148 1043720971 1043720971 892580116 123018576 123018576 111616712 315038475 847587411 878773463 1009519887 1071917952 1071917952 85730456 280610818 280610818 302990528 302990528 39846288 300342432 333060602 384829440 384829440 260768572 239825956 181352644 147863700 194891568 293601378 293601378 168767890 159123844 149116098 48535680 46796016 46796016 291508466 291508466 57467104 268527872 268527872 55132386 310199824 310199824 273468546 48142849 552414657 565861617 565861617 1071290281 1071290281 444596310 444596310 344597458 904335786 980104523 980104523 659175799 646197577 629212256 629212256 382199928 22238128 57905824 79901184 79901184 16431936 16431936 23471264 99494376 99494376 99191424 86106408 83556296 83556296 80437896 876662659 876662659 812239927 812239927 808306372 808306372 240639443 878194000 878194000 927736903 927736903 1041371679 1041371679 881360268 116779992 504267817 921688815 921688815 637795211 622269948 818037565 1031925950 1031925950 797025106 222363808 222363808 222504356 291517588 689979920 1012932939 1045176342 1045176342 1026499030 1026499030 701373669 606084152 799196184 799196184 700739480 51380784 66693056 66693056 194325585 681918933 708941909 708941909 623612548 460583862 460583862 447986102 717410517 993746401 993746401 920762677 920762677 907560123 169658051 95948552 95948552 187466516 372302152 379399770 379399770 320701256 86152960 797525573 797525573 582106569 541904001 681745885 681745885 638240648 748216917 748216917 284332309 727107989 924486696 924486696 562942252 562942252 989884086 989884086 467527847 239438984 275123288 939565068 939565068 872538123 650098055 777509728 777509728 729193122 729193122 815375456 815375456 159932613 167956500 902956624 902956624 744129586 744129586 1040262181 1040262181 974130916 748750697 260051524 260051524 32768352 941497313 941497313 620103104 620103104 72751752 859330017 859330017 487789668 270606594 270658124 270658124 211149058 294666274 294666274 343974112 358306858 358306858 89846984 89846984 84105101 625347449 1029341509 1029341509 254989257 323880708 323880708 1061059950 1061059950 899379855 899379855 479586894 485187552 681697540 681697540 562771041 743343272 991445491 991445491 1044202954 1044202954 404896030 453141388 683773232 728516640 728516640 916656580 1039310180 1039310180 989107164 989107164 756267866 756267866 607210320 300944691 648229209 648229209 648594777 919130754 919130754 716452949 716452949 617947392 617947392 546238057 546238057 708421200 787612197 787612197 697587249 630033969 579346785 579346785 151659836 537060705 537060705 268281684 268281684 809011126 809011126 426247058 590416690 688983808 823656576 865075392 865075392 554222625 554222625 172012300 109525768 150293900 150293900 144580436 241617684 372809112 372809112 1056909381 1056909381 551123889 620447950 620447950 967493827 967493827 715575588 151643172 151643172 57222576 59639856 59639856 271380816 332648544 332648544 15279552 25256000 25256000 4297056 25167168 25167168 16915904 33543944 98168296 98168296 71450984 126107400 126107400 90003008 90003008 122134496 122134496 130308520 380211132 663860889 905466119 905466119 675356805 686112961 686112961 613041625 613041625 808417630 958231434 958231434 461299638 280466752 197396724 186268464 11508816 286324592 286324592 268446620 302783288 302783288 839127048 839127048 676456148 979149060 979149060 847114131 624087849 826722219 924626577 924626577 705838750 172363904 168036372 68207480 530467822 530467822 421928080 333844854 333844854 339104574 339104574 155230876 161874224 161874224 142873856 136265612 211824656 211824656 9177864 79302210 301406343 952646112 952646112 600020144 600020144 371197522 371197522 452072406 452072406 513592926 513592926 344846704 344846704 111977888 134352688 166409648 166409648 155527332 285616172 356915370 460311208 460311208 377362956 473730976 473730976 475137674 475137674 890522407 890522407 995521584 995521584 846077331 846077331 1010223022 1010223022 762342684 447927126 447927126 430589488 217957916 98404544 98404544 205570188 616579289 616579289 1007387909 1007387909 796926321 796926321 755052820 962077104 962077104 856494571 856494571 805989281 850213004 1013018935 1013018935 982394369 982394369 322231089 220122184 942198027 942198027 784091729 784091729 604640172 760349984 760349984 604378701 604378701 71535424 764516540 764516540 128450217 874537295 874537295 905202163 905202163 868653232 315366314 512024484 512024484 313854496 29316224 40489248 43781712 578311321 578311321 324942114 324942114 857339528 857339528 566907506 566907506 776069950 776069950 694536617 427049280 427049280 533668818 533668818 484804162 360236098 306272928 306272928 317332112 317332112 40632576 15231232 11814336 427380468 482360016 487375540 487375540 471225560 268699912 268699912 511725664 511725664 25329758 19697664 19848480 19852584 135279112 201535500 473113358 473113358 219601452 471061066 471061066 354418218 213931968 29565920 92009856 92009856 23774112 23774112 9551872 267590076 349584507 621612073 1013728993 1013728993 525135313 451686925 830930353 830930353 736283890 430718210 859804327 1002644702 1002644702 737460429 676692436 621807413 621807413 159924548 159924548 366133440 366133440 768905796 781209777 781209777 908067099 908067099 832198337 832198337 455027764 948860420 948860420 319666787 445820936 513153630 517306972 818012355 819243520 819243520 403441505 1056982879 1056982879 866146372 980846452 980846452 821057824 703714036 773848292 773848292 606794765 1026224209 1026224209 663264267 842069049 978628722 978628722 843530919 52305456 52305456 185074740 756209492 756209492 703288977 703288977 558691816 803737457 803737457 910821360 910821360 679932325 699141477 699141477 671805706 513371210 513371210 513638962 513638962 506757444 229900822 47187088 105729784 593053385 662420017 662420017 375299682 376624922 376624922 514920786 547500253 987394786 987394786 956637287 549094298 549094298 184960709 205803680 205803680 84070440 67272736 67289096 67289096 136261524 175321232 175321232 180478164 188807332 188807332 144438868 151480404 157747408 157747408 62931360 61239776 310694712 372251322 427746836 560948688 978236066 1028652207 1028652207 845372895 704711737 704711737 42533701 478250080 486359164 486359164 481976508 481976508 485231394 485231394 414078212 414078212 342180178 513512320 1058021604 1058021604 1018168143 433062272 541262222 630403689 630403689 95432961 274878720 274878720 268570626 268570626 59342880 329286752 329286752 295248824 466092724 466092724 615410800 663062179 836329723 836329723 707101767 749594884 749594884 1040502040 1040502040 381978654 88476840 117605808 927500338 927500338 847880442 380405627 551557568 964548389 1035499738 1035499738 770966652 357953462 357953462 549306435 549306435 757635175 927075416 927075416 638880048 155297056 236194324 590873265 652920768 652920768 726271639 726271639 434924672 591891957 591891957 144104004 144104004 135042624 86051776 113534312 113534312 82362520 58724624 9617408 28927584 169103116 169103116 102924392 102924392 68673616 58783752 199254200 914982476 976298775 1008075804 1008075804 998249620 998249620 658657859 608555678 871991384 871991384 313299888 152823038 340717936 928239322 928239322 604448850 805644291 805644291 390621194 390621194 537566632 537566632 880800529 880800529 807407921 807407921 570974464 468309266 468309266 318114624 318114624 186601044 142268292 22416784 175815300 175815300 237361164 238534992 238534992 238476060 216521100 216521100 102042496 145768452 145768452 157028004 219187376 219187376 143578548 143578548 57335088 143528948 143528948 550813905 550813905 537977737 514132876 275204177 686558096 686558096 886523462 886523462 718296655 706337932 272127244 581179601 581179601 309466002 136387852 675549773 675549773 38716437 14688064 583888896 583888896 605821833 910340415 910340415 778357911 778357911 969594087 969594087 778338652 778338652 460248764 460248764 473583920 930225865 930225865 883174751 883174751 814776556 814776556 671188056 713755888 759984365 759984365 573468644 573468644 357017860 293122628 966034976 1021716818 1021716818 874805316 815138316 864810099 931556896 931556896 916190811 361235562 389989956 444194376 838402854 838402854 372839170 471925418 491020546 491020546 523920536 523920536 255902424 307471872 393352690 393352690 381681882 96208360 96208360 103821184 103821184 182588036 182588036 170080080 170080080 542683264 758150428 758150428 545968705 545443905 537689148 936704520 936704520 919513321 844707987 1048149040 1048149040 1030411695 928111012 588186951 588186951 445319440 445319440 410845272 622810751 622810751 531209824 856555639 856555639 111624404 111624404 170850624 170850624 205762756 205762756 243289188 243289188 135552088 326801454 449857496 507777158 529799412 529799412 141110768 236069660 236069660 31983072 215501724 215501724 25726160 33964096 42391632 42391632 8427536 52564272 52564272 41957488 200959748 200959748 153629872 412895222 412895222 168937540 361891470 361891470 262263348 391218458 391218458 399581946 399581946 424701712 439796320 439796320 446094632 446094632 211814992 89008448 129359520 129359520 115091096 115091096 77972624 55038272 232973608 232973608 174532048 261703900 377013180 377013180 98635824 1004125979 1004125979 321877078 676331529 1068921004 1068921004 986911063 809540117 945275801 972609657 972609657 712422736 712422736 684510405 597716896 548735249 548735249 436153350 436153350 707867649 707867649 540687428 540687428 406062861 642778662 642778662 478226225 789441597 789441597 1032661884 1032661884 909379384 72694912 107818392 107818392 122841368 122841368 45678368 45678368 17010592 17826080 18351648 18351648 30894848 30894848 15901408 1571328 15741216 24183584 147058884 149247364 149247364 258215142 513777998 1043363475 1043363475 1025740213 1025740213 447254426 658851171 658851171 551894104 962957542 1011863021 1507617 71242240 220173857 220173857 875897148 1043720971 1043720971 268485120 123018576 123018576 118432088 111616712 134951940 134951940 138750084 174337824 174337824 85730456 86507640 86507640 44949696 46670864 184089626 389191310 498369102 498369102 260768572 260768572 396819226 396819226 340508222 340508222 458845008 458845008 281092290 271589824 48535680 48535680 16408064 39191410 291508466 291508466 284297152 56557058 55260336 37123506 310199824 310199824 305571376 305571376 552414657 565861617 565861617 1071290281 1071290281 470885128 444596310 344597458 904335786 980104523 980104523 646197577 646197577 629212256 629212256 139569596 46192592 57905824 179954072 179954072 221522276 221522276 164694240 164694240 99494376 99191424 86106408 83556296 83556296 80437896 70337736 59806112 83909264 87579968 87579968 39895440 140530848 258659680 258659680 162510176 228811880 233647596 233647596 220218172 127513244 120210296 187945984 263157776 263157776 92288520 818037565 1031925950 1031925950 797025106 709128424 709224597 709224597 783544502 783544502 897060608 897060608 893651115 1026499030 1026499030 342834325 248329624 80327476 54316848 40267696 145633400 187858920 187858920 194325585 681918933 708941909 708941909 623612548 460583862 460583862 447986102 717410517 993746401 993746401 920762677 920762677 907560123 720617926 975262572 1015021647 1015021647 963938240 379399770 379399770 320701256 86012768 797525573 797525573 582106569 682304404 682304404 71700057 114523840 114987968 114987968 303487506 303487506 924486696 924486696 826195698 636312865 989884086 989884086 757222051 501673366 391620202 939565068 939565068 872538123 650098055 1052373681 1052373681 828472743 729193122 829737891 829737891 271871907 167956500 421168690 421168690 1006671458 1020925647 1020925647 350488082 350488082 14428388 687301379 687301379 295078150 276927047 82751022 620103104 630324256 630324256 850081117 850081117 643301692 773915542 773915542 747645792 28639821 27607104 92496992 343974112 343974112 210459662 217974657 217974657 653942575 653942575 1029341509 1029341509 254989257 323880708 473991869 1061059950 1061059950 899379855 899379855 615504904 685953477 685953477 681697540 249465989 743343272 991445491 991445491 1044202954 1044202954 464047336 464047336 683773232 728516640 728516640 916656580 1039310180 1039310180 989107164 989107164 626184369 626184369 124385344 596449593 596449593 604004688 648594777 648594777 305027147 740357124 740357124 606989577 706924821 706924821 546238057 246515145 666434840 666434840 630033969 630033969 579346785 579346785 151659836 537060705 537060705 268281684 268281684 233940508 879018135 994576778 994576778 688983808 688983808 865075392 865075392 554222625 554222625 271801098 296624192 365121946 365121946 290067618 290067618 41737624 603625488 603625488 6293120 19942144 19942144 16779264 17041440 17041440 50335760 50335760 58729520 58729520 27488288 308366032 308366032 40027712 40027712 43134736 50869824 50869824 4297056 25240064 25240064 13243232 28420480 28420480 100904704 100904704 126107400 126107400 90003008 90003008 122134496 122134496 130308520 380211132 487053926 487053926 805804770 862936103 862936103 304522657 613041625 613041625 808417630 958231434 958231434 192289716 197396724 197396724 142976432 9963072 23797826 268446620 268446620 302783288 427824728 427824728 169691584 723803604 723803604 657491007 1030225934 1030225934 826722219 924626577 924626577 973959277 973959277 869657331 864549619 530467822 580174672 736116916 736116916 432460384 885053594 885053594 857000499 684207890 684207890 1013837199 1013837199 811003907 336896513 336896513 205775360 217350664 866860408 866860408 600598704 658917754 658917754 828387715 828387715 824316195 547989088 69624940 1070323995 1070323995 35860752 58859792 58859792 263373988 263373988 488627160 491255982 491255982 460311208 259243302 526067336 526067336 354487514 340263320 340263320 379584858 995521584 995521584 971385124 818098371 758070573 762342684 762342684 447927126 447927126 430589488 67744352 98404544 98404544 205570188 205570188 227170030 546866266 622989626 796926321 796926321 755052820 919358906 922796091 922796091 768909452 768909452 498838983 81595598 135531012 135531012 17305124 4984832 5119104 515950160 540826190 784091729 784091729 756177160 760349984 760349984 604378701 673240334 694505617 764516540 939659870 939659870 874537295 874537295 905202163 905202163 868653232 315366314 287111888 313854496 313854496 46733572 444924372 457644882 546646970 614151753 646947017 718572185 718572185 710224533 507716518 507716518 283922360 283922360 221299500 466990608 466990608 533668818 533668818 484804162 360236098 313838122 306272928 317332112 317332112 15231232 15231232 24417824 427380468 482360016 487375540 487375540 630458985 630458985 540355433 511725664 814301293 814301293 80894006 121929922 121929922 1027121732 1027121732 952204552 952204552 219601452 361875052 361875052 354418218 282592818 353093282 366327840 366327840 282917970 282917970 42993496 519875282 519875282 109421008 1068526152 1068526152 847587789 843385311 843385311 830930353 736283890 430718210 859804327 1002644702 1002644702 737460429 788046732 788046732 752303641 525753542 610081325 610081325 366133440 366088938 781209777 781209777 908067099 908067099 832198337 832198337 339994420 948860420 948860420 319666787 445820936 513153630 517306972 517306972 843383179 899491359 899491359 1056982879 1056982879 866146372 980846452 980846452 542154270 703714036 773848292 773848292 891781264 891781264 463712456 124072460 67032100 49492944 49492944 49486544 28055472 16850976 16850976 756209492 756209492 703288977 880530082 880530082 803737457 803737457 910821360 910821360 314978610 314978610 312975282 278192464 297952176 297952176 206614880 506757444 506757444 264783024 264783024 185437988 267236388 632206835 632206835 375299682 376624922 376624922 514920786 547500253 932522619 932522619 915085947 549094298 1034299437 1034299437 279130434 251988246 200618898 470026254 942891406 942891406 552905092 175321232 175321232 180478164 188807332 188807332 144438868 151480404 157747408 157747408 62931360 61239776 47487512 83965736 427746836 427746836 978236066 1028652207 1059868572 1059868572 704711737 889853976 889853976 864100467 460661300 460661300 438632476 477177920 485231394 485231394 457277914 452258522 452258522 207954972 1058021604 1058021604 1018168143 989031066 919075035 539390872 819335882 819335882 571080707 571080707 422057026 268570626 54002268 159482667 696861771 931676209 931676209 722752003 722752003 815711745 836329723 836329723 814793283 902561801 902561801 759958694 756024641 635437196 230966796 54790192 24712192 379979417 848698835 912439930 912439930 552798720 552798720 534387865 502792473 321415589 321415589 766029783 766029783 638673680 638673680 371982583 141084036 308945022 528553362 590873265 590873265 531638175 726271639 908279610 908279610 674566957 674566957 225477025 82926017 709019792 776755485 776755485 696518008 82362520 59782720 9617408 2410752 169103116 169103116 244024693 941095433 941095433 556773433 1040658515 1040658515 976298775 976298775 970547335 998249620 998249620 584974475 660101746 660101746 75761346 117706868 484496428 484496428 949209386 949209386 368201760 16946154 67650560 390621194 390621194 537566632 537566632 596295744 596295744 330701682 276465748 374086683 468309266 468309266 867266292 867266292 720371157 695208148 128728316 175815300 175815300 237361164 238534992 238534992 238476060 216521100 216521100 12047120 90850200 141559824 157028004 219187376 219187376 101313384 101313384 53951280 76222328 76222328 76794008 76794008 105951832 105951832 78120264 78120264 311931208 311931208 37241370 35393040 75963719 945939723 945939723 686558407 841366749 841366749 948569110 948569110 375131662 371033246 583888896 583888896 671091730 910340415 910340415 778357911 778357911 969594087 969594087 785121620 785121620 171903857 815975942 815975942 930225865 930225865 883174751 883174751 917134690 917134690 671188056 913885083 913885083 815117699 463799085 538258960 538258960 21309600 966034976 966034976 823383040 823383040 831131361 831131361 931556896 931556896 916190811 964294317 964294317 513859215 513859215 612815901 839001099 1033897520 1033897520 491020546 242536200 242536200 255902424 363868544 363868544 275984808 275984808 52564610 1577448 15303808 81907936 81907936 80629280 8908160 8908160 542683264 547018305 547018305 726274242 726274242 512263878 936704520 936704520 919513321 844707987 504968329 810313779 810313779 534095912 588186951 588186951 445319440 445319440 410845272 622810751 622810751 531209824 856555639 856555639 429393510 429393510 532861192 532861192 425898422 213798106 183396922 396384038 396384038 326801454 449857496 507777158 529799412 529799412 141110768 141110768 140035088 265204740 514331486 514331486 291245730 291245730 59319408 282120392 324141752 324141752 52564272 41957488 200959748 200959748 153629872 412895222 412895222 168937540 361891470 361891470 262263348 391218458 391218458 399581946 399581946 424701712 439796320 439796320 446094632 446094632 211814992 99424232 129359520 129359520 115091096 115091096 77972624 36490512 232973608 232973608 174532048 261703900 377013180 467686304 467686304 267748320 267748320 235268124 204734608 168886288 1048838360 1048838360 96782568 226902180 226902180 16781312 20977792 20977792 3934208 11147424 16784480 19205030 436153350 436153350 415769926 272110726 71932864 72876928 72876928 642778662 642778662 478226225 90777192 105582096 105582096 73537816 41368464 72694912 107818392 137316608 137316608 109555716 81692568 81692568 39665608 26948384 48497616 48497616 30747296 29754176 20355520 19261440 31887360 31887360 34466368 45140288 45140288 62794848 195890176 195890176 57939156 311569384 311569384 292934268 486588490 551894104 551894104 716126889 716126889 564986376 564986376 220173857 456180020 456180020 755099914 755099914 536870928 268762656 118432088 118432088 77805824 134951940 134951940 138750084 174337824 331632056 331632056 84050624 44949696 44949696 46670864 184089626 389191310 498369102 498369102 38928640 192009088 396819226 396819226 340508222 340508222 458845008 458845008 281092290 271589824 51755872 54451376 54451376 27163056 45972800 284297152 284297152 56557058 55260336 270540800 270606594 270606594 311773520 311773520 276690562 276982016 276982016 211472840 470885128 470885128 439419392 439419392 438378774 415994568 346813770 987980015 987980015 885864089 885864089 640553954 640553954 297660499 549316674 705986560 808928518 808928518 808137987 539211840 280689856 9564928 8036608 8058240 15914624 15914624 14377152 14377152 43898576 43898576 49961280 84584200 161117184 161117184 94873276 162510176 210010336 210010336 220218172 220218172 127513244 81615360 277145346 314449746 314449746 405749654 454793244 454793244 271193346 188953950 709128424 709224597 709224597 783544502 783544502 897060608 897060608 893651115 136388868 207955972 248329624 248329624 80327476 54316848 40267696 145633400 187858920 187858920 44416144 44416144 127403872 460464746 460464746 368057274 368057274 206907596 671297541 672751473 672751473 463991127 463991127 610009932 720617926 975262572 1015021647 1015021647 963938240 351203056 351203056 297222688 17351712 25614432 143018276 143018276 682304404 682304404 650646976 650646976 605313673 537173840 537173840 303487506 599581150 826195698 1008302866 1008302866 711297160 757222051 757222051 581510481 581510481 792914156 792914156 565957336 386422127 1052373681 1052373681 828472743 383812317 829737891 829737891 271871907 255118140 742425968 742425968 1006671458 1020925647 1020925647 944405838 1027609474 1027609474 687301379 687301379 295078150 276927047 82751022 82751022 630324256 630324256 850081117 850081117 802382134 802382134 773915542 747645792 806095875 806095875 554812451 286338648 286338648 210459662 217974657 217974657 653942575 653942575 348861642 858524436 858524436 1008174595 1008174595 992126540 992126540 845275539 541940741 615504904 685953477 692738600 692738600 958926702 1000218231 1000218231 899550007 892603179 564475275 1022360817 1022360817 468710740 984149132 984149132 650914886 650914886 644936537 644936537 459639104 626184369 626184369 574652592 864585977 864585977 321953027 52580953 562829637 589332548 740357124 740357124 606989577 706924821 706924821 172089492 172089492 666434840 666434840 57162272 87829976 87829976 92878280 92878280 134228768 164901704 164901704 286390274 610699316 879018135 994576778 994576778 929041514 929041514 849617269 849617269 455740534 879137286 927915195 927915195 669142983 526785161 325058994 325058994 212076798 665613456 776072701 776072701 612490456 612490456 493413516 445450318 288148770 118786570 755028484 755028484 972131802 972131802 941753384 941753384 843089536 843089536 542645760 560215680 560215680 545928544 539689505 539689505 555486753 555486753 68422152 100904704 537483049 556110105 556110105 33633472 42177632 641220852 774275948 774275948 645970749 645970749 221332825 805804770 862936103 862936103 405296658 171102996 280019778 322179462 322179462 277607974 462269888 462269888 5840992 55145632 55145632 39056016 42114683 210919504 210919504 427824728 427824728 165549608 723803604 723803604 657491007 1030225934 1030225934 699182348 576710463 549806606 973959277 973959277 869657331 864549619 171601761 677135632 736116916 736116916 432460384 885053594 885053594 857000499 684207890 684207890 1013837199 1013837199 811003907 752139729 609481353 609481353 606426888 606426888 876492863 876492863 658917754 1002519399 1002519399 871375347 824316195 829424866 924884063 1070323995 1070323995 166588734 151332900 174656952 263373988 263373988 488627160 491255982 491255982 259243302 259243302 526067336 526067336 354487514 278921240 59843370 379584858 972512004 972512004 971385124 818098371 153426407 478089608 534552454 534552454 801750354 801750354 405590071 108860304 115224174 505748824 505748824 499595502 546866266 546866266 453120175 1017118736 1017118736 919358906 922796091 922796091 414016458 414016458 415223076 415223076 635835629 704403941 704403941 701690093 136840452 472795208 631915106 755635017 755635017 756177160 756177160 434110562 270857828 673240334 694505617 694505617 939659870 939659870 572395539 278666804 278666804 224543488 224543488 107926008 121656784 290237426 447999968 447999968 444924372 466101254 546646970 614151753 646947017 718572185 718572185 710224533 701704248 314581282 486785374 530772204 530772204 466990608 466990608 347214144 355351210 355351210 313838122 313838122 66781296 53538560 53538560 46826240 10275264 24417824 24417824 38045104 53951280 100997441 630458985 630458985 540355433 310852386 814301293 814301293 350149686 647230530 892363331 1027121732 1027121732 952204552 952204552 523640044 523640044 247864540 472162808 472162808 367408546 367408546 366327840 282917970 282917970 42993496 519875282 519875282 648408189 1068526152 1068526152 847587789 843385311 843385311 560816679 186795536 186795536 156575032 558704189 558704189 727737940 788046732 788046732 752303641 525753542 610081325 610081325 337776906 974911260 974911260 520648195 564822262 564822262 327290994 535257605 535257605 479089953 824010354 824010354 547907654 439583047 681260034 850518867 850518867 1046059423 1046059423 277103052 423169896 423169896 682766987 870921930 885069312 885069312 648879116 574175008 934688585 934688585 242305319 124072460 762458655 762458655 454181122 857678966 857678966 838286307 19820611 378870154 378870154 940415004 940415004 880530082 307182738 954211705 954211705 737109312 604713993 759469357 960975150 960975150 297952176 474057246 474057246 287051298 76054554 264783024 264783024 185437988 267236388 267236388 380699846 400565144 400565144 369356826 163848772 277555424 932522619 932522619 915085947 409894952 1034299437 1034299437 279130434 251988246 200618898 470026254 942891406 942891406 552905092 6560194 4532352 6629760 6629760 6691200 36596096 52751472 143493168 159924224 159958116 213286948 213286948 83965736 232446909 581700945 974799531 974799531 1059868572 1059868572 965325392 889853976 889853976 864100467 1007382659 1008077621 1008077621 576856732 240656890 457277914 457277914 452258522 452258522 440697120 503847134 503847134 989031066 989031066 919075035 1056201069 1056201069 910437343 571080707 571080707 422057026 300280290 1021130847 1021130847 696861771 931676209 931676209 722752003 722752003 815711745 841954704 919372803 919372803 902561801 902561801 759958694 756024641 635437196 230966796 105284368 97108994 379979417 848698835 912439930 912439930 552798720 552798720 534387865 502792473 321415589 321415589 766029783 766029783 638673680 638673680 371982583 761833074 761833074 790823895 790823895 991560771 991560771 531638175 908279610 908279610 674566957 937431041 937431041 164497700 709019792 776755485 776755485 696518008 59782720 59782720 9100096 10521152 10521152 67948298 244024693 941095433 941095433 556773433 1040658515 1040658515 705417799 970547335 970547335 705639936 705639936 584974475 902348960 1026558181 1026558181 807164002 865245020 865245020 949209386 949209386 935806402 935806402 875684923 837288864 371072538 371072538 189440138 596295744 596295744 306321444 306321444 941938722 941938722 690098469 867266292 867266292 720371157 695208148 493021130 447554418 336284428 111227080 207034624 207034624 113155656 113155656 16304064 14571776 15091712 15091712 4590080 107619464 107619464 99901064 99901064 52098880 69740600 69740600 605383121 605383121 584180433 420553148 402908765 573416540 682704986 882325702 1022374083 1022374083 982767314 945939723 945939723 686558407 841366749 841366749 948569110 948569110 572731665 572731665 216306756 543027144 671091730 876857510 876857510 591630631 393507115 138212318 577705584 785121620 785121620 303192148 815975942 831975749 999924343 999924343 956766275 537724949 917134690 917134690 817314627 913885083 913885083 815117699 607518785 538258960 538258960 75632712 957817544 957817544 903096501 903096501 831131361 831131361 288498208 744294922 744294922 964294317 964294317 513859215 513859215 612815901 839001099 1033897520 1033897520 475474436 511782336 511782336 391193784 363868544 363868544 275984808 275984808 83955952 83955952 36840344 81907936 81907936 80629280 10485312 10828288 43399177 128751304 128751304 726274242 747692492 747692492 970014821 970014821 71487595 40503312 102181256 373502490 373502490 113641504 373699456 373699456 214171912 292292616 525212674 525212674 306468372 306468372 386597058 386597058 429393510 429393510 532861192 532861192 425898422 213798106 183396922 396384038 396384038 272267066 286335522 296689472 509612342 509612342 316022130 347229698 347229698 449294756 514331486 514331486 291245730 291245730 283928962 283928962 324141752 324141752 82907264 82907264 58991232 58991232 46138000 37748928 37299600 8973840 33628720 50929664 50929664 112905664 129337968 129337968 98689064 98689064 122692936 122692936 92342552 83283912 99424232 99424232 99058056 133059328 133059328 112237952 71900352 36490512 12983488 25168848 58462128 129507216 293783414 467686304 531508216 1055722041 1055722041 235268124 608182805 864337984 1048838360 1048838360 841039978 941704249 953223321 953223321 737198113 737198113 688695974 594313456 432597619 275903922 520093758 923079169 923079169 362000068 362000068 364905004 420553254 420553254 353709970 101002140 101002140 105582096 105582096 73537816 88344744 88344744 86241576 137316608 137316608 109555716 81692568 81692568 39665608 38360848 48497616 48497616 30747296 29754176 20355520 19261440 31887360 31887360 34466368 45140288 45140288 3977856 195890176 597933377 597933377 566476149 566476149 292934268 842084374 842084374 429199658 429199658 295258338 564986376 564986376 371300430 456180020 456180020 405799686 536870928 536870928 378741362 110740562 144707690 344195158 917444048 917444048 728054089 192953621 331632056 331632056 139130052 148816192 148816192 177164304 177164304 49612368 151161344 151161344 382255300 382255300 192009088 158409636 154190628 185148932 443965168 443965168 137111780 137111780 51755872 54451376 54451376 42487426 311336882 311336882 326945968 326945968 323400882 315707456 270606594 270606594 311773520 311773520 276589186 111326992 146356008 153802020 187913308 210973260 439419392 439419392 438378774 453919838 453919838 987980015 987980015 885864089 885864089 640553954 640553954 297660499 549316674 705986560 808928518 808928518 808137987 539211840 337842570 337842570 268457536 109626320 45139136 40489744 36462720 558689953 558689953 37038864 555940401 562611458 832569699 832569699 562379508 1051467033 1051467033 876384414 827357632 827357632 784244400 385916612 277145346 314449746 314449746 405749654 605095561 605095561 414509986 414509986 746684653 746684653 707922524 765472788 765472788 1072836854 1072836854 659619945 173415037 918952440 918952440 88742233 43554304 172674276 188203008 188203008 179534740 167117540 182789940 182789940 176623680 176623680 103544088 103544088 76207176 76207176 9486912 69747264 69747264 37013624 32084992 138664688 138664688 823312472 823312472 244731931 119544236 119804544 119804544 33950464 610733773 697280388 697280388 551515617 570957825 606215185 650646976 650646976 763379956 763379956 729882821 181406416 599581150 643445717 1008302866 1008302866 735851810 735851810 706949397 581510481 581510481 90988312 599717238 762029455 1027698857 1027698857 887746640 877153304 822668571 650382587 852074662 852074662 664480993 898590921 911596266 911596266 278587120 692717028 944405838 1027609474 1027609474 672724837 561414848 138826496 29858496 78994240 78994240 11623912 275064352 430475932 508888404 802382134 802382134 802271961 802271961 806095875 806095875 679511084 943980757 986259472 986259472 126498888 126498888 254556662 348861642 348861642 858524436 858524436 1008174595 1008174595 992126540 992126540 845275539 789996097 789996097 443400424 692738600 692738600 958926702 1000218231 1000218231 899550007 892603179 564475275 1022360817 1022360817 468710740 984149132 984149132 650914886 650914886 644936537 673092305 681320081 681320081 574652592 574652592 864585977 864585977 321953027 52580953 562829637 589332548 691033348 691033348 584604177 584604177 567544545 172089492 724485124 724485124 622393489 603930609 98899481 667163777 667163777 92878280 653127929 653127929 715317184 715317184 610699316 776329531 776329531 528830780 929041514 929041514 849617269 849617269 739284118 942684038 942684038 927915195 711071130 881329629 881329629 818024971 818024971 811242883 776072701 776072701 618542856 618542856 493413516 445450318 288148770 167821332 755028484 755028484 972131802 972131802 941753384 941753384 843089536 843089536 542645760 560215680 560215680 557949344 557949344 539689505 555486753 555486753 68422152 179835796 537483049 556110105 584196272 639173457 639173457 641220852 774275948 774275948 771228864 645970749 694474829 694474829 722809828 722809828 601842148 613367437 613367437 578770824 582330888 582330888 462269888 462269888 195696064 195696064 58749488 322978706 322978706 845353006 845353006 340466485 55991506 190669300 712511776 712511776 711070101 301520503 336094044 336094044 259630314 13698560 308040624 424306306 845801918 845801918 592212520 677135632 677135632 436281366 436281366 369369088 369369088 252711108 252711108 248742468 248742468 739712081 752139729 752139729 609481353 609481353 606426888 606426888 876492863 876492863 102765056 1002519399 1002519399 871375347 817889475 829424866 924884063 924884063 386810930 386810930 302618666 216017376 392691950 392691950 88080552 76669512 127453784 127453784 111251000 69206280 86247720 92540256 301992224 301992224 244568736 972512004 972512004 673871141 673871141 729022965 830196065 956442127 956442127 801750354 801750354 630676014 630676014 813237890 813237890 505748824 499595502 499595502 408944908 408944908 1017118736 1017118736 603422728 603422728 574361361 414016458 414016458 415223076 415223076 635835629 704403941 704403941 701690093 136840452 472795208 631915106 755635017 755635017 824875427 824875427 272019268 834260387 834260387 123608760 152982312 192074676 570298076 952926209 952926209 1041896991 1041896991 716833559 472569102 472569102 505762904 505762904 647364679 647364679 466101254 466101254 425803517 304554608 1022532226 1022532226 1014496143 701704248 645535885 794960077 794960077 690124297 607659557 536946176 70504704 70504704 352846536 352846536 297879082 88711778 79718592 79718592 67914752 10275264 16519104 273432612 390365060 390365060 122776216 73564424 73564424 123145126 192876968 223872684 350149686 350149686 882102336 892363331 892363331 677499179 420111197 129589132 523640044 523640044 491889766 472162808 472162808 367408546 367408546 348609610 75846848 75846848 65601724 224596072 224596072 648408189 755245059 755245059 671220326 719388825 1026371119 1026371119 781791949 867572595 867572595 457085468 1020366844 1020366844 372501646 421610066 421610066 191855564 311664780 311664780 288587796 974911260 974911260 520648195 826152106 826152106 697512549 697512549 535257605 479089953 824010354 824010354 547907654 439583047 681260034 850518867 850518867 1046059423 1046059423 534181096 937471702 999955137 999955137 870921930 885069312 885069312 648879116 574175008 934688585 934688585 524454168 524454168 762458655 762458655 454181122 857678966 857678966 838286307 452146772 467197398 467197398 940415004 940415004 452887131 307182738 954211705 954211705 737109312 604713993 759469357 960975150 960975150 423749756 474057246 474057246 287051298 152356848 152356848 67683856 38797968 38797968 254279874 380699846 400565144 400565144 45538128 163848772 277555424 352325704 352325704 409894952 409894952 355933986 355933986 348133762 277089504 85643816 85643816 95149384 134621892 134621892 37460752 146767488 197533332 197533332 187500612 145628484 200746708 200746708 513057898 513057898 487199790 427230878 426043732 484969068 581700945 974799531 974799531 809763648 965325392 965325392 866542199 522788411 252323126 1007382659 1008077621 1008077621 576856732 403441072 403441072 296756196 199230228 440697120 440697120 179170644 1044144713 1044144713 863307484 863307484 1056201069 1056201069 910437343 586101026 421374388 449896018 449896018 1021130847 1021130847 713065872 812155337 812155337 927473181 927473181 1058255923 1058255923 919372803 919372803 685907016 1013450127 1013450127 395316317 105120560 202117376 202117376 97108994 337843872 337843872 49987862 49987862 27111110 616480556 616480556 725975187 879050752 879050752 677519683 624595601 718993372 718993372 629715501 761833074 761833074 790823895 790823895 991560771 991560771 293478306 407510884 407510884 838795230 937431041 937431041 329263462 519902272 519902272 361980842 396699482 396699482 86041162 287648034 287648034 423127068 423127068 237077252 203181596 169117260 79822848 80873984 146937480 146937480 671090624 687343557 687343557 118495024 491569406 902348960 1026558181 1026558181 807164002 865245020 865245020 707659382 621074287 935806402 935806402 875684923 837288864 371072538 630825595 630825595 692597919 692597919 667017465 409734534 941938722 941938722 690098469 622947363 361943888 235334712 493021130 493021130 447554418 336284428 743249309 743249309 207034624 709304157 709304157 141041756 540462337 540462337 679123032 756423213 781156597 781156597 676980357 704844692 704844692 75896904 94078308 605383121 605383121 584180433 497663840 402908765 822128776 822128776 882325702 1022374083 1022374083 982767314 604897288 604897288 274339712 274339712 136250050 537266696 542579097 572731665 572731665 543108736 537006081 14851328 876857510 876857510 591630631 756419641 756419641 577705584 1036513676 1036513676 564760648 841786743 841786743 999924343 999924343 956766275 422959216 437883655 817314627 817314627 379646224 379646224 607518785 607518785 473374773 294417408 923585567 957817544 957817544 903096501 903096501 354118159 571126562 1001064422 1001064422 972875523 972875523 908697906 908697906 98849768 415767812 494077564 494077564 475474436 475474436 511782336 511782336 391193784 369767602 369767602 344006792 344982090 395416656 395416656 115049080 129206160 129206160 111435728 111435728 73545744 73545744 105832852 542772608 542772608 747692492 747692492 970014821 970014821 654891018 654891018 169093639 570508833 570508833 231248540 540055569 540055569 456594860 456594860 525212674 810572221 810572221 287494434 714611449 714611449 139203136 410943376 410943376 334565424 310481024 314831058 314831058 308374566 488165664 493912382 493912382 110114384 110114384 296622786 316022130 347229698 347229698 449294756 449294756 329517426 137327622 58769520 283928962 283928962 105788504 80291648 82907264 82907264 49950400 46138000 46138000 37748928 37299600 8973840 33628720 50929664 50929664 13316160 47462976 51957424 51957424 43041360 43098640 82364432 82364432 49824968 14470848 13231296 26311968 133059328 133059328 25789248 25789248 23842432 27347840 27347840 58462128 129507216 129507216 441269750 531508216 1055722041 1055722041 232230636 608182805 864337984 864337984 841039978 841039978 941704249 953223321 953223321 737198113 737198113 688695974 594313456 432597619 275903922 520093758 923079169 923079169 501423330 501423330 364905004 420553254 420553254 525403812 693963314 742391949 742391949 308809862 342644496 342644496 217327808 217327808 199678452 71610728 11154452 14938560 15851584 15851584 38360848 40634688 40634688 34552848 48504080 48504080 46475472 46475472 46475472 15803328 15953280 15953280 38442576 38442576 597933377 597933377 671317393 671317393 184027092 842084374 842084374 429199658 429199658 352929994 478568730 478568730 891710494 891710494 807089185 806718218 1041656354 1041656354 378741362 103569720 1051193634 1051193634 917444048 917444048 985800694 985800694 563876774 176929000 215700420 215700420 148816192 177164304 177164304 519046110 519046110 399329550 532211390 532211390 399474906 399474906 314259014 185148932 443965168 443965168 425502628 425502628 44249152 33437888 33437888 42487426 311336882 311336882 326945968 326945968 323400882 315707456 2131232 0 314987040 332712690 332712690 79258112 146356008 153802020 278037324 472043790 472043790 339367238 280105794 453919838 453919838 906555346 906555346 504764452 504764452 207230604 90562580 36177168 774760600 1046872201 1046872201 407372934 407372934 342900736 337842570 337842570 268457536 109626320 45139136 40489744 577646033 577646033 558689953 37038864 555940401 562611458 832569699 832569699 562379508 1051467033 1051467033 876384414 827357632 827357632 784244400 385916612 554175857 554175857 546049089 574097169 605095561 1001345365 1001345365 989565203 746684653 746684653 724755088 968032757 968032757 1072836854 1072836854 729160629 729160629 918952440 918952440 621386825 563482848 559681185 557846016 188203008 179534740 167117540 182789940 182789940 176623680 440610966 440610966 440610966 283165122 283165122 548749457 747938373 747938373 493390395 493390395 600432724 600432724 823312472 858166132 994595532 994595532 490744500 490744500 433431252 610733773 697280388 697280388 692362180 752259589 752259589 599038217 62363985 763379956 763379956 729882821 181406416 490106368 490106368 287153006 298394850 894641900 894641900 182596072 336398220 556796040 592744617 599717238 762029455 1027698857 1027698857 887746640 877153304 822668571 822643782 852074662 852074662 664480993 898590921 911596266 911596266 417580942 305722924 438531862 438531862 472707758 472707758 280279364 484666532 484666532 351139456 87155496 79747968 275064352 430475932 508888404 508888404 499214903 1032419160 1032419160 822608931 822608931 679511084 943980757 986259472 986259472 509283741 455223236 692261460 692261460 1010861833 1010861833 872939760 872939760 863044992 863044992 810734211 810734211 789996097 789996097 598662513 598662513 286233546 751698063 1043410398 1043410398 558898046 349085209 429800462 429800462 420676578 420676578 390279354 404881443 404881443 835979895 835979895 673092305 681320081 681320081 651900633 540755467 291022081 129237568 641209352 641209352 640973677 640973677 691033348 691033348 692125712 725688501 725688501 688035653 724485124 756044012 756044012 603930609 197678712 667163777 667163777 324150070 653127929 653127929 715317184 715317184 151408736 690423852 690423852 335835464 335835464 442906940 442906940 931230148 931230148 942684038 942684038 785925448 711071130 881329629 881329629 818024971 818024971 811242883 236086175 33568768 618542856 618542856 14761984 12970176 167788544 167821332 554599064 622813888 622813888 78686377 345688532 345688532 306091667 377224003 813001744 838978307 838978307 564065120 564065120 552250081 12590721 33556496 33556496 671895088 722782773 722782773 584196272 639173457 639173457 137898824 163980636 771228864 771228864 162358506 694474829 694474829 722809828 722809828 601842148 613367437 613367437 578770824 582330888 582330888 409940292 409940292 195696064 195696064 58749488 322978706 322978706 845353006 873298061 873298061 355259841 311878768 978039442 978039442 740918560 740918560 667722085 667722085 631927817 537050150 594549667 1013213615 1013213615 845801918 592212520 676051745 676051745 536906765 690219668 710245672 710245672 53493280 53493280 112437832 112437832 76903256 10674944 10773568 10773568 8391688 67188864 67188864 14889408 13446336 102765056 827326552 827326552 329533706 329533706 812056982 815920210 815920210 426820518 426820518 316351232 316351232 392691950 392691950 279710930 39338090 408285700 408285700 347665368 347665368 472408386 472408386 1044249136 1044249136 1039264603 899753423 826489586 826489586 673871141 729022965 830196065 956442127 956442127 659871114 659871114 630676014 630676014 813237890 813237890 522556579 346764618 529237349 751007957 751007957 788664381 788664381 772306973 1042454877 1042454877 357765902 848844213 848844213 83510088 247541208 247541208 170160792 170160792 99022948 161895616 162455328 162455328 139363042 824875427 824875427 426920644 834260387 834260387 857999667 857999667 594283953 594283953 952926209 952926209 1041896991 1041896991 716833559 579044165 562058279 562058279 975225111 975225111 755370002 1045959723 1045959723 425803517 329260706 1022532226 1022532226 1014496143 671236360 980572041 980572041 794960077 690124297 756101376 756101376 424276876 429052386 429052386 352846536 297879082 88711778 79718592 79718592 67914752 36178256 20836128 273432612 390365060 390365060 122776216 73564424 73564424 123145126 158663076 158663076 138487940 707690548 882102336 892579912 892579912 863937363 126021627 124192486 329512608 491889766 491889766 332518130 332518130 9462336 9462336 1671680 86583840 86583840 65601724 212411724 212411724 86322436 755245059 755245059 671220326 719388825 1026371119 1026371119 781791949 867572595 867572595 457085468 1020366844 1020366844 534823976 534823976 203538630 191855564 328464395 908735745 908735745 907561292 964652434 964652434 914493019 1010010833 1010010833 847476239 502144494 790116050 790116050 539831553 326105139 839989888 839989888 116515800 116515800 111141709 12937679 534181096 937471702 999955137 999955137 505155102 505155102 629606716 629606716 807481650 998517431 998517431 524454168 524454168 419762086 419762086 887903241 887903241 298787002 571349457 571349457 467197398 467197398 161431140 161431140 158012608 284609738 284609738 273365512 273365512 238041506 161819836 151380020 423749756 423749756 403177556 403177556 192944752 192944752 182487044 182487044 247353156 247353156 243144960 243144960 338052882 338052882 45538128 129493042 129493042 352325704 352325704 273949194 69902474 355933986 355933986 348133762 277089504 9738368 9738368 153356736 164156420 164156420 144230848 163949796 197533332 197533332 187566672 195710356 200746708 200746708 513057898 513057898 487199790 427230878 426043732 484969068 484969068 322887474 430599830 809763648 809763648 726025104 1070061166 1070061166 882363405 338698536 338698536 375525682 375525682 403441072 403441072 141297766 141297766 139201732 309371344 309371344 1044144713 1044144713 620444246 620444246 832949957 860702742 860702742 586101026 421374388 449896018 449896018 911525474 911525474 713065872 812155337 812155337 927473181 927473181 1058255923 1058255923 877977611 877977611 685907016 1013450127 1013450127 559539168 559539168 547881764 675976928 804950250 804950250 830555871 831366090 831366090 1057119743 1057119743 1037333193 819658597 879050752 914631383 914631383 624595601 718993372 718993372 629715501 691134961 776528909 776528909 613280583 558915875 558915875 293478306 407510884 407510884 838795230 838795230 729078351 329263462 519902272 519902272 361980842 396699482 396699482 272172040 287648034 287648034 423127068 423127068 237077252 949854805 949854805 656746809 806877775 971514180 971514180 671090624 687343557 687343557 316893138 479598493 687886344 687886344 430227488 430227488 243681072 243681072 173279296 275254856 384378330 384378330 363722970 360919146 273483346 630825595 630825595 692597919 692597919 667017465 490733704 742965404 990381111 990381111 640365849 649084501 743027664 743027664 191892880 191892880 800340645 800340645 743249309 237512457 709304157 709304157 141041756 540462337 540462337 679123032 756423213 781156597 781156597 676980357 704844692 704844692 158346720 158346720 143126796 144177732 497663840 497663840 151485036 1033437412 1033437412 166388303 212097600 212097600 280633411 604897288 604897288 186447848 475720264 475720264 974403854 974403854 309788827 543108736 543108736 537006081 182920460 179014533 444813760 497562948 756419641 1048267660 1048267660 1036513676 1036513676 564760648 841786743 841786743 723332384 556794657 556794657 424547328 424547328 354229474 520941416 816261468 816261468 782242929 782242929 473374773 294417408 923585567 923585567 746589262 746589262 621628952 478939786 571126562 1001064422 1001064422 972875523 972875523 908697906 908697906 98849768 1032451088 1032451088 302513647 494294334 494294334 473170706 253776434 288048296 369767602 369767602 344006792 344982090 395416656 395416656 125969536 129206160 129206160 111435728 111435728 73545744 604644609 624266645 706379304 706379304 336992794 994488332 994488332 218321421 654891018 654891018 776576525 776576525 693631653 667858472 540055569 540055569 470554502 470554502 443687486 810572221 810572221 127144512 714611449 714611449 313913144 410943376 410943376 336842856 310481024 314831058 314831058 308374566 488165664 493912382 493912382 483000968 483000968 71877768 97177640 97177640 75546696 54581264 86505768 127955552 127955552 64562720 90465344 90465344 86426720 50997616 46426112 49950400 49950400 37968304 22035840 9641664 34104320 34104320 25366528 25366528 13841504 13251168 47462976 51957424 94726856 119073992 127927489 633719761 633719761 627345969 864864883 864864883 548181448 362263698 362263698 97082512 881483906 881483906 361836865 817299618 817299618 554769984 360329000 137702148 155138788 217221504 232230636 776333697 776333697 772221720 772221720 749263616 573612561 703967236 703967236 675307233 1005070405 1005070405 983877975 983877975 552601472 552601472 15605184 317072712 379658586 501423330 559415488 559415488 274599460 942714408 1026420015 1026420015 1007193416 742391949 914224396 914224396 880321632 217327808 217327808 199678452 107196696 35349568 39837464 40341256 40341256 7397376 40634688 40634688 34552848 48504080 48504080 46475472 46475472 46475472 178706500 178706772 178706772 171863108 199700308 199700308 166313056 671317393 671317393 184027092 554123253 579295288 579295288 352929994 352929994 1536 52693044 891710494 891710494 807089185 806718218 1041656354 1041656354 109494866 103569720 1051193634 1051193634 713348373 537570447 985800694 985800694 563876774 176929000 215700420 215700420 49468368 49468368 140896858 519046110 519046110 399329550 532211390 532211390 399474906 399474906 314259014 73915272 73915272 271379840 425502628 425502628 22554560 33437888 33437888 25852096 292758290 332534514 335512050 335512050 332262642 390856506 390856506 343563914 336923402 332712690 570464777 613552713 613552713 489861391 489861391 472043790 472043790 339367238 479253580 654510427 654510427 531351039 677547857 677547857 542264505 694661618 694661618 701023054 774760600 1046872201 1046872201 943142411 943142411 895037506 85021512 12705984 12705984 36815872 36815872 26282592 577646033 577646033 548021457 37175408 307656848 307656848 93362090 147902656 673220512 673220512 220878093 8388672 8388672 8388608 163788804 435693664 554175857 554175857 546049089 574097169 574097169 1001345365 1001345365 989565203 824106531 704464344 724755088 968032757 968032757 933236784 688279920 729160629 729160629 726907680 621386825 621386825 563482848 559681185 557846016 143993412 143993412 17900064 17900064 135168 82250078 440610966 440610966 440610966 283165122 283165122 548749457 747938373 747938373 493390395 493390395 600432724 600432724 545370150 858166132 994595532 994595532 490744500 490744500 433431252 635208072 635208072 38445025 692362180 752259589 752259589 659651104 659651104 109054129 134310448 160746084 160746084 430244162 430244162 419565632 428475458 894641900 894641900 703216614 833365733 833365733 592744617 616650479 616650479 154887942 419583379 419583379 419966238 822643782 822643782 574991588 574991588 482941572 521067582 521067582 417580942 417580942 305722924 438531862 438531862 472707758 472707758 280279364 484666532 484666532 351139456 87155496 83124808 365207952 365207952 215081676 215081676 184285140 1032419160 1032419160 822608931 822608931 269749283 269550082 269550082 509283741 774320550 938616073 938616073 692261460 1010861833 1010861833 872939760 872939760 654344411 916742276 916742276 660602402 660602402 579687463 598662513 598662513 219888210 751698063 1043410398 1043410398 807176608 807176608 429800462 429800462 420676578 877793346 877793346 671088707 671088707 835979895 835979895 118413466 572973202 869578803 869578803 540755467 550350386 550350386 641209352 696112720 696112720 640973677 688070672 721555509 721555509 725688501 725688501 688035653 688035653 756044012 756044012 168853945 197678712 653583613 711930933 711930933 672873928 252878174 252878174 159551654 151408736 690651276 690651276 378511776 413447612 413447612 159965984 931230148 931230148 403350009 785925448 785925448 73007561 47186048 47186048 7340880 1009947036 1009947036 338896152 913027672 913027672 860074688 860074688 552285633 614364832 627970064 627970064 796577894 796577894 617798224 1054380068 1054380068 182769226 638283968 813001744 838978307 838978307 564065120 564065120 563390097 588912177 691802745 691802745 681071685 722782773 722782773 587739969 654520625 654520625 729989492 729989492 733230560 792160147 897600096 897600096 363243766 278234272 278234272 466836050 466836050 463516866 298195170 298721104 298721104 409940292 409940292 156449172 156449172 148934944 148934944 162559165 780814553 873298061 873298061 864248055 982433861 982433861 978039442 740918560 862520000 862520000 838991018 838991018 780313144 780313144 1013213615 1013213615 655686298 120011064 120011064 929314828 1011091599 1011091599 710245672 710245672 253808418 118762912 118762912 75215296 543475393 552110017 552110017 540542721 540542721 555296145 725688501 725688501 661729441 661729441 969042884 969042884 329533706 591415360 812056982 814219504 814219504 426820518 426820518 316351232 316351232 309007676 407446806 407446806 159983102 408285700 408285700 347665368 347665368 472408386 472408386 1044249136 1044249136 1039264603 899753423 826489586 826489586 452800470 600445456 673715809 673715809 671088645 35787029 0 268435458 268435458 365693226 522556579 522556579 346764618 529237349 751007957 751007957 788664381 788664381 772306973 1042454877 1042454877 357765902 848844213 879743155 879743155 894250155 894250155 857860251 857860251 491045409 798082658 798082658 677318806 158240992 296147298 426920644 426920644 479815850 558968720 857999667 857999667 594283953 594283953 411843904 411843904 318923104 312734034 579044165 579044165 802209876 802209876 975225111 975225111 755370002 1045959723 1045959723 151654020 329260706 671416192 741417741 741417741 671236360 980572041 980572041 621966597 657475089 756101376 756101376 424276876 434071056 434071056 405444454 155878452 227017836 462688272 462688272 352196434 342625040 79567624 69410304 36043984 51417008 51417008 36176768 7512704 24768640 24768640 25800992 152230886 859721222 859721222 892579912 892579912 863937363 244055388 96210792 96210792 100503592 100503592 32739304 273381536 347153794 361837162 361837162 87877026 86583840 47998160 47998160 52707360 52707360 413401344 413401344 205652096 205652096 142291968 142291968 109122608 175294204 175294204 967435713 1013347516 1013347516 864206312 864206312 579230199 666270621 666270621 908735745 908735745 907561292 964652434 964652434 914493019 1010010833 1010010833 847476239 514422333 1063425926 1063425926 657460839 600509042 839989888 839989888 603251678 603251678 464040166 464040166 71838532 985869288 985869288 369910189 505155102 505155102 337379348 141767556 807481650 998517431 998517431 438250864 438250864 317565984 317565984 887903241 887903241 298787002 571349457 571349457 200295392 200295392 136880 14169424 308835472 328339802 397952496 397952496 380504090 380504090 128415336 128415336 398596128 398596128 403177556 403177556 347619592 347619592 360206106 360206106 247353156 247353156 325897650 384719922 384719922 350174922 350174922 341779978 312156330 100859904 235381770 235381770 182056966 388065438 388065438 95028512 49091600 2365056 8265600 153356736 164156420 232708968 232708968 163949796 163949796 187566672 187566672 195710356 195710356 153617764 178308960 178308960 325578060 477416334 477416334 627683343 627683343 507646110 969191627 969191627 726025104 726025104 1070061166 1070061166 882363405 1025950543 1025950543 966157991 813895718 133839812 288949412 288949412 164102434 289671330 309371344 309371344 282116866 272630278 50339968 54599856 591783020 860702742 1040752722 1040752722 592322754 592322754 566231265 538512432 717170722 717170722 1032576707 1032576707 935516049 477906602 206328990 270193922 877977611 877977611 579685448 428882262 536888225 559539168 602148660 602148660 675976928 804950250 804950250 830555871 831366090 831366090 1057119743 1057119743 1037333193 967361895 501772781 998678096 998678096 957924903 470222848 304846098 148510404 351502535 776528909 776528909 613280583 589477320 558915875 561008275 561008275 838351434 838351434 653080662 432483388 348240518 293852294 84801478 296366072 319325202 395847714 395847714 67643138 26847584 119563304 236569606 236569606 949854805 949854805 656746809 806877775 971514180 971514180 649087032 649087032 649872949 649872949 856999904 856999904 687886344 738527786 738527786 875446330 998210158 998210158 876436470 876436470 347739978 294211424 271969026 407220250 407220250 491500588 755635358 755635358 511914237 490733704 742965404 990381111 990381111 640365849 649084501 743027664 743027664 439741206 500666872 800340645 800340645 552603920 711917645 711917645 212974289 44118152 12628480 2113792 2110976 3880704 130613784 249471216 249471216 124980520 124980520 158346720 158346720 79691592 79691592 314347376 314347376 94971240 1033437412 1033437412 92420612 210545740 210545740 280633411 280633411 604709400 604709400 475720264 475720264 974403854 974403854 309788827 272530178 171757332 182920460 312266322 312266322 444813760 497562948 497562948 1048267660 1048267660 1015073606 189184435 170468482 460131718 723332384 723332384 556794657 556794657 424547328 424547328 573303751 573303751 816261468 816261468 782242929 782242929 1050678290 1050678290 988353053 988353053 855841219 746589262 478939786 478939786 248529608 617644556 710627975 716469931 716469931 499178391 262352872 101661720 1032451088 1032451088 302513647 494294334 494294334 473170706 253776434 118104072 118104072 75641968 130232856 130232856 110104752 110104752 125969536 125969536 47280640 47280640 110398032 110398032 604644609 624266645 706379304 706379304 671426581 994488332 994488332 638766680 638766680 588434529 776576525 776576525 693631653 667858472 385890164 472280364 472280364 470554502 443687486 437592860 187050928 124659024 344916144 371930400 371930400 317314942 336842856 336842856 301277814 404129924 407163396 408174592 408174592 407896710 467830504 483000968 483000968 411095942 411095942 419549294 514715994 514715994 469896198 469884942 243329872 243329872 385394370 385394370 86426720 112585560 112585560 112050688 33362208 46227712 60467522 323511042 327151634 327151634 41418946 48184528 48184528 279768914 294727232 294727232 309069392 309069392 775101940 775101940 633719761 627345969 864864883 864864883 548181448 362263698 362263698 97082512 881483906 881483906 361836865 817299618 817299618 554769984 360329000 93887472 93887472 217221504 217221504 776333697 776333697 772221720 772221720 749263616 573612561 703967236 703967236 675307233 1005070405 1005070405 983877975 983877975 858899762 552601472 577504688 577504688 873278475 873278475 559415488 931922057 931922057 942714408 1026420015 1026420015 1007193416 721324665 914224396 914224396 880321632 211310408 211310408 107196696 107196696 35349568 39837464 40341256 40341256 52638448 63971632 63971632 60817776 60817776 33892368 34045968 34045968 33738768 178706500 272107266 282836114 282836114 295980066 440755424 440755424 137049348 271751026 312912914 312912914 579295288 579295288 392873146 392873146 1023566874 1023566874 1010984122 1010984122 709620885 621281280 621281280 537398280 51125264 51125264 586817492 586817492 616146098 1000409365 1000409365 369958479 698505256 698505256 77270148 214972364 214972364 189754096 189754096 64504960 64504960 64094624 29586208 364184256 364184256 33370080 340323904 340323904 25086624 134825984 134825984 4355648 32189440 32189440 26447968 40904832 292758290 332534514 335512050 335512050 332262642 390856506 390856506 372034842 372034842 386520992 570464777 613552713 613552713 1022386670 1022386670 430969606 443057558 443057558 479253580 654510427 654510427 531351039 677547857 973139566 973139566 694661618 694661618 701023054 701023054 956482247 956482247 943142411 943142411 895037506 349440714 349440714 282068864 151382500 151382500 44403072 144739412 144739412 61681008 37175408 276829968 986228274 986228274 697561701 673220512 822877046 822877046 806782614 841002976 841002976 674456752 435693664 435693664 409616320 293604610 293604610 385232312 467351286 542787746 824106531 824106531 313525632 612831456 612831456 933236784 975221276 975221276 798026678 798026678 726907680 50604064 50604064 1049088 188491540 188491540 19010080 193069328 193069328 162078484 162078484 184625716 184625716 134555652 134555652 134488064 78117192 7768064 142249408 215026896 243903164 243903164 217910352 162205636 248776632 257215164 257215164 100682404 254288644 254288644 189826208 705169204 705169204 602588513 178200177 566649232 566649232 659651104 659651104 699399525 699399525 160746084 160746084 218903586 419565632 419565632 428475458 428475458 700213317 703216614 833365733 833365733 739510305 616650479 616650479 846038280 846038280 845661591 845661591 845275539 774433963 688179237 1050177649 1050177649 780739677 780739677 637748292 16924704 16924704 0 2097152 232122945 551797735 551797735 227586535 492589637 492589637 617164808 617164808 853156443 955683095 955683095 509524177 1014510887 1014510887 645964482 338470799 612747661 612747661 21309600 216271036 269495810 774320550 938616073 938616073 523737871 265016154 33670040 163627236 671233560 781867013 916742276 916742276 660602402 660602402 537445377 526302382 479789690 479789690 212053984 58001680 329652594 807176608 807176608 563977569 563977569 102551064 877793346 877793346 704922183 704922183 330694880 309730194 66601664 572973202 869578803 869578803 44331202 550350386 550350386 556342400 696112720 696112720 713739617 713739617 721555509 721555509 160137332 47086341 588651365 661040112 661040112 646982488 649462296 649462296 653583613 711930933 711930933 672873928 521030735 958651423 960556328 960556328 690651276 750465351 866406511 866406511 731956056 731956056 923293060 986335888 986335888 394255116 940084935 940084935 815444229 176862093 269533698 1009947036 1009947036 538063508 913027672 913027672 860074688 860074688 552285633 614364832 627970064 627970064 796577894 796577894 617798224 1054380068 1054380068 856389267 856389267 661503032 860300323 860300323 23339298 22760545 563390097 588912177 691802745 774002952 774002952 681071685 638660624 638660624 654520625 654520625 729989492 729989492 733230560 792160147 897600096 897600096 312970704 312970704 278234272 49051986 18874656 6820256 7218432 7218432 34343952 34343952 26807808 40116240 54936832 148934944 148934944 418005350 418005350 612848052 864248055 864248055 982433861 982433861 847856304 836364003 862520000 862520000 838991018 838991018 780313144 780313144 473014286 473014286 834408291 834408291 460318391 929314828 1011091599 1011091599 526147238 526147238 289531042 118762912 118762912 60843264 543475393 552110017 552110017 540542721 540542721 555296145 725688501 1014791202 1014791202 991250546 991250546 969042884 565525022 832926403 847323302 1053831735 1053831735 373547740 302088240 416374818 416374818 319834422 407446806 407446806 159983102 318122544 318122544 292713658 397724600 397724600 122694178 691385452 691385452 130080093 163632288 730862704 730862704 144216096 599266320 958419943 958419943 671088645 35787029 367481868 616785678 616785678 823636898 823636898 321055856 88529064 88529064 33619968 33628176 33628176 725631408 725631408 1027274030 1027274030 890816043 726680405 879743155 879743155 894250155 894250155 857860251 857860251 491045409 798082658 798082658 677318806 248892128 158240992 145542468 140249444 215567520 215567520 221385516 221385516 873657360 873657360 429854793 965057605 965057605 730211081 730211081 102973787 802209876 802209876 176210685 710148868 710148868 224795054 459674294 459674294 201331360 671416192 778210760 778210760 714005589 539097622 539097622 422461757 375076506 559518953 559518953 114937322 434071056 884580461 884580461 995098656 995098656 529165578 529165578 384301530 342625040 681564164 681564164 584750912 168577344 102212098 874127881 874127881 607439625 974008983 974008983 874424648 935460846 935460846 582929573 728550837 730862965 735990268 735990268 96210792 173254014 173254014 357652520 357652520 347433994 361837162 361837162 367902856 367902856 125680724 462419166 462419166 138742974 413401344 413401344 344072616 205652096 285757578 285757578 234055534 384483506 384483506 967435713 1013347516 1013347516 947321324 947321324 753241025 701547237 701547237 398875167 394873246 424538052 424538052 248812946 341773162 341773162 782528393 782528393 650296035 1063425926 1063425926 979547350 979547350 410252166 807181350 807181350 899219497 899219497 563188449 714240940 985869288 985869288 469955958 981858773 981858773 757459434 572780817 152077297 147009732 146866372 438250864 438250864 314747460 303128944 272896170 283165122 283165122 207786259 291560145 291560145 190090740 545803463 545803463 328623648 328623648 397952496 1007157622 1007157622 992488970 824975864 824975864 544161700 349373480 298886258 312730848 347619592 347619592 360206106 360206106 292166384 292166384 325897650 384719922 384719922 643567257 643567257 552895561 520464171 520464171 248167766 726139317 726139317 1021845896 1021845896 791217274 22933152 139986304 158199204 158199204 74803876 232708968 232708968 136416516 85199400 85199400 69080096 18939904 18948384 90887170 503444110 529484602 529484602 477416334 477416334 627683343 627683343 507646110 969191627 969191627 396383456 686502496 686502496 26424773 472158155 1025950543 1025950543 966157991 813895718 7414656 288949412 288949412 293080220 293080220 289671330 206111372 818677133 1015918295 1015918295 443892678 591783020 850374006 1040752722 1040752722 592322754 592322754 566231265 500234202 717170722 717170722 1032576707 1032576707 935516049 840323589 206328990 270193922 1051659397 1051659397 12002134 9185284 168298224 168298224 602148660 602148660 20188929 67154432 68416008 111919438 782562022 782562022 142055245 565730126 967361895 998678096 998678096 998678096 998678096 957924903 46042423 11190528 440063872 440063872 974222741 974222741 672854257 833858135 977070672 977070672 911494374 949677038 949677038 653080662 432483388 471094061 947110867 1000728951 1000728951 786735274 395847714 395847714 287926818 288998946 288998946 288932608 11570944 152045688 258738704 258738704 199532140 88551616 179750964 649087032 649087032 698485312 709237505 860232121 866439863 1066402431 1066402431 814762815 875446330 998210158 998210158 876436470 876436470 294211424 294211424 271969026 407220250 831132881 831132881 755635358 941278722 941278722 653410968 545707602 572786961 572786961 841253120 841253120 170193182 432124922 439741206 500666872 500666872 136843400 552603920 711917645 711917645 212974289 44118152 537428801 537428801 538886088 612319113 660684373 660684373 614674761 776216972 776216972 193863496 193863496 238158889 238158889 314347376 314347376 590505233 590505233 235536488 490898696 490898696 376070898 376070898 269038726 604709400 604709400 236225036 236225036 100935680 100935680 34997248 11878464 11878464 43592192 312266322 312266322 337505802 370508312 370508312 68683272 371400704 371400704 137101328 170468482 460131718 524331203 524331203 353050638 970523753 970523753 738199474 737553436 730806998 558242122 558242122 340209800 419430838 1050678290 1050678290 988353053 988353053 855841219 354181716 354181716 147884038 248529608 617644556 710627975 716469931 999604446 999604446 538727488 538727488 665209881 665209881 548590401 545424128 487624860 505874820 505874820 504314910 174136778 281542848 323109008 323109008 97104000 97104000 390750210 390750210 114547930 46138520 110398032 110398032 47276248 48025296 823553826 823553826 671426581 671426581 308807056 638766680 638766680 588434529 588434529 219077676 470071816 470071816 402968590 472280364 472280364 337066506 102640162 117972656 124659024 124659024 344916144 371930400 371930400 317314942 317314942 231689388 456350490 456350490 407163396 408174592 408174592 407896710 213913928 213913928 175707780 411095942 411095942 440473600 514715994 514715994 469896198 469884942 305739538 243329872 385394370 385394370 69558536 112585560 112585560 112050688 25629744 46227712 60467522 323511042 327151634 327151634 41418946 48184528 48184528 279768914 294727232 294727232 309069392 309069392 775101940 775101940 847003592 847003592 1007423880 1007423880 351278111 269274114 269274114 212807116 609753216 609753216 4589193 5419776 7460752 36196480 85880144 85880144 22118200 235429456 235429456 201490432 201510924 201510924 17081104 53865264 62655584 563719264 693252641 693252641 31445344 31445344 13468192 858899762 858899762 537166856 577504688 577504688 873278475 873278475 369419371 931922057 931922057 776736952 776736952 931318538 931318538 721324665 721324665 300896294 300896294 220045228 217130496 480805152 480805152 495479374 495479374 361046018 297861824 297861824 63971632 63971632 60817776 60817776 35667072 25436256 25436256 29503616 29503616 272107266 282836114 282836114 295980066 440755424 440755424 24228740 271751026 312912914 312912914 311512304 323012114 536936704 539042049 1023566874 1023566874 1010984122 1010984122 709620885 621281280 621281280 537398280 51125264 51125264 586817492 586817492 616146098 1000409365 1000409365 369958479 698505256 698505256 164865184 259879468 259879468 189754096 189754096 64504960 64504960 64094624 50732720 352682752 352682752 36753792 340323904 340323904 25086624 134825984 134825984 8413696 32189440 32189440 28878176 40904832 58380344 105720984 269634584 301914642 301914642 383465178 383465178 372034842 372034842 386520992 386520992 384431874 363272844 1022386670 1022386670 138844483 443057558 443057558 402834578 402834578 200953924 107397374 528752266 1062050448 1062050448 388346154 388346154 742527232 742527232 956482247 956482247 407130113 297872878 276435648 349440714 349440714 282068864 164143456 151382500 44403072 538971413 538971413 168561684 163713252 687002051 986228274 986228274 697561701 856742144 856742144 822877046 806782614 841002976 841002976 674456752 425893300 748236167 880281483 880281483 633890043 633890043 552803453 552803453 404409393 1036043877 1036043877 680913477 680913477 724730428 975221276 975221276 904388921 798026678 184795505 612731033 612731033 586994592 583797969 569564976 19010080 193069328 193069328 162078484 162078484 220124736 220124736 208295052 196136516 152300348 157610920 220400772 220400772 144104004 144104004 217910352 669670465 669670465 240713772 781225588 781225588 703643685 794094725 794094725 147440608 705169204 705169204 691803436 595041600 595041600 581938408 592313124 592313124 699399525 918621259 918621259 830056165 830056165 353362025 734043430 734043430 338114916 700213317 700213317 647378010 739510305 739510305 457506975 688403628 846038280 846038280 880714648 956166087 956166087 774433963 688179237 1050177649 1050177649 879679322 879679322 637748292 482078764 135956410 121684152 390390186 390390186 961096576 961096576 562579680 562579680 492589637 617164808 617164808 853156443 1018315411 1018315411 509524177 1014510887 1014510887 645964482 614097026 612747661 612747661 21309600 277086346 277086346 674111658 674111658 58930983 69280008 69280008 102826792 120587064 671233560 781867013 868593685 868593685 602250387 558357417 558357417 526302382 479789690 479789690 60163906 337193763 337193763 456270086 704752028 704752028 604455068 904171700 904171700 474005608 704922183 704922183 240259674 330974114 330974114 396375144 396375144 61271536 587994624 587994624 546443841 556342400 583533312 583533312 713739617 713739617 252186628 160137332 160137332 234745836 588651365 661040112 661040112 646982488 649462296 649462296 256562912 239108860 248531228 248531228 521030735 958651423 960556328 960556328 415420614 750465351 866406511 866406511 731956056 731956056 579425810 986335888 986335888 419381190 940084935 940084935 815444229 372483658 608740864 672158234 672158234 977469659 1048974047 1048974047 566035017 566035017 28708960 43464224 111445640 111445640 58253632 566363658 566363658 305860624 383397913 856389267 856389267 661503032 860300323 860300323 563088384 29495105 14815680 54784176 194856112 774002952 774002952 587605301 638660624 638660624 29558952 556817729 556817729 675119865 675119865 699285963 874940692 874940692 453907984 453907984 273413250 304293138 308807090 321004546 321004546 331754432 331754432 135933120 453249078 453249078 140838928 161925078 458229554 458229554 435406288 612848052 612848052 722080812 722080812 847856304 847856304 836364003 823206435 823206435 549453952 138937476 138937476 138937476 170529168 170529168 834408291 834408291 460318391 693144632 777834141 777834141 254040081 289531042 289531042 236988580 104097680 186965052 186965052 146049824 161236992 161236992 28312416 70329272 122761176 1014791202 1014791202 991250546 991250546 776444629 565525022 832926403 847323302 1053831735 1053831735 373547740 302088240 416374818 416374818 319834422 319834422 35128848 66422112 318122544 318122544 292713658 397724600 397724600 184353682 691385452 955387490 955387490 832217635 730862704 730862704 144216096 189081968 958419943 958419943 26254370 26254370 367481868 616785678 616785678 823636898 823636898 321055856 262206300 361988471 750917573 750917573 1019315437 1019315437 450449606 1027274030 1027274030 890816043 726680405 825367804 825367804 397287393 281805190 281805190 250424796 1000827600 1000827600 417495420 417495420 248892128 140679556 138547332 140249444 140249444 99156320 221385516 756297126 873657360 873657360 429854793 965057605 965057605 730211081 828678497 828678497 514140264 167895545 843486103 843486103 673437713 906491929 1040263211 1040263211 688255013 688153849 778210760 778210760 714005589 771877646 771877646 864132543 864132543 653231467 559518953 114937322 423585744 884580461 884580461 995098656 995098656 529165578 529165578 384301530 168673604 777781204 777781204 584750912 572950084 104450888 874127881 874127881 607439625 974008983 974008983 874424648 935460846 935460846 582929573 728550837 730862965 735990268 735990268 70660560 173254014 173254014 357652520 357652520 347433994 345845322 298665162 367902856 367902856 125680724 462419166 462419166 138742974 205597026 344072616 344072616 765666637 766195053 766195053 234055534 384483506 384483506 713335261 987193180 987193180 947321324 947321324 753241025 701547237 1054831450 1054831450 602944447 424538052 424538052 317435172 341773162 341773162 782528393 782528393 650296035 647319984 800400931 979547350 979547350 454244396 807181350 1006723112 1006723112 899219497 659312784 714240940 714240940 219859852 469955958 981858773 981858773 757459434 673403264 675405957 976265800 976265800 360759301 360759301 314747460 323223594 383781073 387975611 387975611 546080769 546080769 291560145 190090740 545803463 545803463 328623648 328623648 1045896544 1045896544 1007157622 992488970 824975864 824975864 544161700 349373480 35056720 83275136 83275136 357682576 843125993 843125993 306653392 825690371 825690371 574176881 574176881 643567257 643567257 552895561 1037746304 1037746304 591650956 726139317 726139317 1021845896 1021845896 791217274 105906968 139986304 158199204 158199204 74803876 138542088 138542088 166929484 166929484 239137208 239137208 148058820 126259932 154591072 503444110 529484602 529484602 484104718 185412660 536004672 536004672 342611054 28475466 396383456 396383456 358088906 358088906 296747874 296747874 340520682 340520682 79386922 132391172 336275524 336275524 253701694 293080220 293080220 206111372 206111372 818677133 1015918295 1015918295 443892678 375468037 850374006 850374006 319904784 979878342 979878342 859881651 567045347 567045347 455686972 725553795 725553795 840323589 840323589 137046482 171313438 1051659397 1051659397 1040193545 440728096 440728096 406896774 831072388 831072388 700674628 700674628 980944791 980944791 787608321 787608321 768140527 768140527 224214566 998678096 998678096 957924903 700827680 528691280 528691280 284734682 525985320 525985320 974222741 974222741 672854257 833858135 977070672 977070672 911494374 949677038 949677038 692167189 692167189 718284309 947110867 1000728951 1000728951 786735274 352444458 352444458 336063234 288998946 288998946 288932608 103809328 152045688 152045688 119278372 350247846 350247846 196493524 396362482 1027670394 1027670394 784015869 860232121 866439863 1066402431 1066402431 814762815 439577136 352864532 352864532 94473002 398559152 398559152 183454302 289444354 534517386 831132881 831132881 446293620 941278722 941278722 676352563 635488208 635488208 739511184 841253120 841253120 243270549 222311008 222311008 215167692 581042613 581042613 557449629 216564684 216564684 205604425 112170329 537428801 537428801 538886088 612319113 660684373 660684373 614674761 776216972 776216972 201267860 201267860 567984216 606126345 606126345 152667432 590505233 590505233 969961637 969961637 928710810 604714549 539006132 691667429 993914679 993914679 159775476 987052049 987052049 707923717 707923717 185419875 165864230 174064972 174064972 128450672 128450672 168842584 213571404 213571404 260129745 827030753 827030753 719710275 989899460 989899460 524331203 486354894 970523753 970523753 738199474 824710404 824710404 558242122 558242122 340209800 286270519 746272423 1069094197 1069094197 798026637 798026637 627398025 953581571 953581571 407132322 799333807 799333807 693799418 999604446 999604446 746996047 1005849343 1005849343 665209881 548590401 545424128 323224630 505874820 505874820 504314910 174136778 281542848 323109008 323109008 21546144 76153080 390750210 390750210 114547930 57097476 106802832 330381069 841557331 1031999613 1031999613 823553826 289454179 308807056 308807056 337401280 337401280 812154865 812154865 1024512109 1024512109 893663238 402968590 316442630 491937552 491937552 424623270 424623270 374477056 157619864 59711744 59711744 7256304 4750464 4750464 83943936 456350490 456350490 287100450 287100450 155849892 155849892 134348960 154145024 154145024 65012340 135296 440473600 440473600 308566672 308566672 305739538 305739538 44230482 42173200 18806048 36032576 44513616 44513616 62454336 62454336 62385584 161070848 161070848 408918148 408918148 142921478 166757024 166757024 327951990 327951990 433620212 433620212 411133158 411133158 894661004 894661004 847003592 1007423880 1007423880 351278111 778461076 778461076 886257730 886257730 885131970 358356609 815693362 815693362 574943808 399674828 237676132 72334380 235429456 238358665 710976789 772600325 772600325 800973316 800973316 599601009 563719264 693252641 693252641 966939396 966939396 957224359 957224359 829079298 829079298 537166856 1012529084 1012529084 910412307 373543425 628236968 628236968 553857057 455481654 931318538 931318538 562158484 580333883 759967910 825296184 1052778939 1052778939 1041236511 790890813 790890813 495479374 548407818 553397576 553397576 14688896 11219328 11219328 35667072 35667072 4587664 0 21379072 146635076 146635076 136370004 150095040 283330560 283330560 168760514 140666256 198230272 198230272 180066160 47761104 570425856 570425856 556074386 318981836 521928606 521928606 534509310 534509310 218411090 160043589 701961473 701961473 12673604 834702807 834702807 423698598 751502480 751502480 491991206 491458734 402724520 164865184 259879468 259879468 92379516 55002720 49129472 18751008 20842768 50732720 50732720 173546676 173546676 59010656 63912560 63912560 169260560 169437712 169437712 51704784 51704784 103464440 103464440 527559166 527559166 269634584 301914642 301914642 114553560 127349944 127349944 129559608 340748241 590429835 809620365 809620365 543761793 543761793 71634185 134352900 136714244 349014392 816771825 816771825 330029138 1053729811 1062050448 1062050448 832971296 326220267 742527232 742527232 791056701 791056701 154161229 25823328 31308192 31308192 28856704 164143456 164143456 25232452 53415232 538971413 538971413 185332788 163713252 687002051 687002051 182462130 51509136 856742144 856742144 688950547 566366433 566366433 438510071 425893300 425893300 748236167 880281483 880281483 633890043 633890043 552803453 552803453 404409393 1036043877 1036043877 680913477 680913477 724730428 830616233 904388921 904388921 126248968 126248968 612731033 612731033 586994592 583797969 569564976 50772736 44175696 59248672 59248672 28619040 220124736 220124736 208295052 196136516 152300348 157610920 220400772 220400772 92935272 166862813 777213073 777213073 669670465 179050536 781225588 781225588 703643685 794094725 794094725 147440608 147440608 691803436 696853605 753278121 753278121 645956049 592313124 592313124 648542553 918621259 918621259 830056165 830056165 353362025 734043430 734043430 529192062 692659649 932641106 932641106 396523811 277535204 205586572 688403628 688403628 275985755 880714648 956166087 956166087 446808517 446808517 865629002 865629002 879679322 879679322 540627494 496084962 354026386 354026386 390390186 390390186 961096576 961096576 562579680 562579680 390115401 399053211 399053211 380285330 1018315411 1018315411 242784234 564750038 564750038 614097026 614097026 692606672 731042421 731042421 277086346 942070023 942070023 1000478240 1000478240 135397683 69280008 102826792 120587064 537923896 545411073 545411073 602250387 602250387 558357417 558357417 344076659 337716992 337118730 125323360 704491064 870268361 1062938005 1062938005 731170152 731170152 904171700 904171700 474005608 707035957 1016334656 1016334656 977586257 899733658 669714809 669714809 73523592 587994624 587994624 788050040 796070869 796070869 673388440 255471416 252186628 252186628 184735028 167960864 234745836 234745836 158484900 158484900 154141580 151103608 390000931 676913151 676913151 987800254 987800254 1006964812 1006964812 1012070089 1012070089 277484610 997735071 997735071 629594127 827301428 1043980157 1043980157 1011589442 507735788 419381190 713556764 713556764 586401367 372483658 608740864 696920598 696920598 977469659 1048974047 1048974047 235554109 235554109 32459208 59824256 59824256 3641360 37088016 277179216 277179216 268773378 273678848 273678848 3197570 5523456 538986496 563088384 563088384 29495105 14815680 54784176 599606472 763206017 763206017 820665938 820665938 390211658 890971768 890971768 598153456 598153456 862401742 862401742 432550369 453511454 453907984 463996278 463996278 407975558 407975558 321004546 321004546 331754432 334499938 334499938 453249078 453249078 140838928 161925078 458229554 458229554 435406288 134217732 1041249903 1041249903 722080812 784371848 856801955 868901371 868901371 568862171 572104723 843163035 843163035 701060264 170529168 170529168 142680132 787645712 787645712 752539341 777834141 777834141 254040081 58597296 236988580 236988580 104097680 186965052 186965052 146049824 161236992 161236992 6588160 96069264 105384952 105384952 119013504 119013504 88919208 88919208 88919208 621805584 655360569 655360569 826840244 826840244 448918479 88026538 39734048 39734048 61849588 198780660 198780660 135478752 295070496 295070496 462832342 462832342 276138770 439668902 955387490 955387490 832217635 198626711 152648304 152538532 402702082 402702082 275278022 4818048 6078610 105163538 105163538 362887264 362887264 338041098 211894395 262206300 361988471 750917573 750917573 1019315437 1019315437 450449606 450449606 935558305 975876221 975876221 418792477 418792477 184830650 241183808 497148270 887253985 1000827600 1000827600 901942520 804717735 804717735 27924834 87689540 87689540 499769828 499769828 362402980 756297126 756297126 1047664232 1047664232 965215335 764220603 557986215 828678497 828678497 514140264 886740680 886740680 843486103 673437713 906491929 1040263211 1040263211 688255013 688153849 667812178 515507962 452158080 812459664 812459664 864132543 864132543 653231467 422147872 403886598 164177124 356086348 356086348 927580082 927580082 806693379 629071785 806158707 806158707 777781204 777781204 572950084 572950084 104450888 104450888 115343064 115343064 35944392 71900552 71900552 20762536 74448264 74448264 116779992 181516864 181516864 70660560 70660560 62954016 53498544 55739184 55739184 429140620 429140620 428932290 428932290 218995306 30411296 139462716 139462716 192227634 526672246 526672246 457238538 765666637 766195053 766195053 75749613 134217732 247638220 507574290 507574290 386800698 501014168 501014168 118168872 264025572 1054831450 1054831450 602944447 88804971 85535792 317435172 317435172 565504664 741976973 741976973 243805025 409294960 467923446 467923446 227619098 454244396 454244396 1006723112 1006723112 927469628 659312784 659312784 441451158 456528194 456528194 298060002 867173238 867173238 832569699 675405957 976265800 976265800 360759301 360759301 477419654 477419654 672154496 672154496 387975611 546080769 546080769 49858512 49858512 614829976 614829976 658505814 658505814 1045896544 1045896544 33820672 133136 33820672 33820672 35258376 50299936 86411152 86411152 83275136 357682576 843125993 843125993 809245952 825690371 825690371 821133440 574176881 374399672 374399672 332255818 1037746304 1037746304 771858874 771858874 222897324 222897324 257983708 326389202 411307764 411307764 97831656 97831656 82628040 82628040 68694976 166929484 166929484 239137208 239137208 148058820 137491264 154591072 154591072 190609972 484104718 484104718 185412660 536004672 536004672 342611054 137373248 342439106 342439106 358088906 358088906 348003394 348003394 340520682 350494346 350494346 369492100 508173726 510007710 510007710 438510232 149423824 136579332 109451352 145225136 673275948 673275948 622903593 533540094 533540094 464490486 319904784 979878342 979878342 859881651 626782351 626782351 455686972 995350240 1003537143 1003537143 551473568 517796254 517796254 874721794 1040193545 1040193545 440728096 440728096 406896774 831072388 831072388 700674628 700674628 980944791 980944791 787608321 787608321 768140527 893514795 893514795 845501202 845501202 700827680 700827680 555861417 623593192 623593192 525985320 568357396 907846627 907846627 773823853 767904901 707139861 626863232 626863232 424156522 565704656 692167189 692167189 718284309 718284309 131869880 329025392 329025392 352444458 352444458 336063234 3396096 138428612 138428612 103809328 139888660 139888660 365406378 389297024 389297024 196493524 592184168 1027670394 1027670394 784015869 582745603 506651210 506651210 252123436 439577136 501383180 501383180 300077538 158576974 398559152 398559152 183454302 289444354 534517386 534517386 557863788 754111437 754111437 996331959 996331959 706859487 635488208 739511184 739511184 678726364 243270549 222311008 222311008 215167692 581042613 641502160 641502160 216564684 216564684 609326984 609326984 80170257 21239752 85204392 85204392 51138952 37770512 184162576 184162576 174075668 201267860 201267860 567984216 606126345 606126345 954910556 954910556 413804454 969961637 969961637 928710810 604714549 539006132 691667429 993914679 993914679 39259575 987052049 987052049 810493505 707923717 431830305 598546994 598546994 983648856 983648856 128450672 302865434 302865434 213571404 260129745 827030753 827030753 719710275 989899460 989899460 887321350 486354894 486354894 684730030 684730030 824710404 824710404 357279592 357279592 164084822 286270519 746272423 1069094197 1069094197 798026637 798026637 627398025 953581571 953581571 407132322 1015026886 1015026886 693799418 203555313 746996047 746996047 1071667254 1071667254 154851108 272883056 450362070 450362070 439585216 133394632 221772136 221772136 21734570 356918304 356918304 17174656 31235748 315940004 315940004 57097476 57097476 19373444 330381069 841557331 1031999613 1031999613 805319746 388633706 388633706 428499512 428499512 337401280 812154865 812154865 1024512109 1024512109 893663238 369721998 316442630 491937552 516484976 516484976 424623270 374477056 157619864 366090376 376878616 376878616 515442548 515442548 516570458 516570458 514474768 514474768 409747744 409747744 305791046 84018472 221906184 221906184 188767272 482514190 482514190 436603982 436603982 472274462 490260270 490260270 135958826 35770368 35770368 36032576 44513616 44513616 62454336 62454336 62385584 161070848 461189046 461189046 431605968 142921478 166757024 166757024 327951990 327951990 433620212 433620212 411133158 940166913 940166913 894661004 949956937 949956937 891879658 891879658 778461076 778461076 955784654 955784654 885131970 544623048 815693362 815693362 574943808 399674828 237676132 621880141 621880141 662866548 710976789 772600325 772600325 800973316 800973316 651256817 138531268 562414049 562414049 966939396 966939396 957224359 957224359 829079298 829079298 645878889 1012529084 1012529084 910412307 727922469 727922469 388969384 707854991 707854991 740397871 740397871 575160164 674256372 759967910 825296184 1052778939 1052778939 1041236511 790890813 790890813 355205429 548407818 553397576 553397576 166789284 163652324 155005984 31407840 16464160 22072224 22539936 22539936 146635076 280793734 281666754 281666754 283330560 283330560 279586066 140666256 198230272 325108352 325108352 324092560 570425856 570425856 556074386 262400 2361600 52431136 52431136 322175024 805830674 807144963 807144963 701961473 449161953 834702807 834702807 734528757 734528757 688790565 688790565 697310240 697310240 487764032 487764032 469149388 288063720 288063720 425408132 425408132 208707260 511979696 511979696 338836236 338836236 292522898 260919240 260919240 318985520 416416896 416416896 188794596 198714848 198714848 103464440 527559166 527559166 309149798 182766036 123258424 184999352 230041452 230041452 94314412 340748241 590429835 809620365 809620365 543761793 543761793 375704578 509792670 509792670 348477934 816771825 816771825 340333260 1053729811 1053729811 891679994 891679994 443064271 240378596 635556192 638962425 638962425 140693769 22305092 17046080 28856704 28856704 8986688 17343968 17343968 53415232 193680752 193680752 186290320 186290320 151652032 165226212 165226212 161022080 8913984 35178000 63702544 63753456 187069092 187069092 285611316 420268432 505801762 505801762 506801448 506801448 459106860 494643932 517677816 517677816 265412858 265412858 200439330 327286912 327286912 314574962 310798448 311794256 311794256 286737008 46549040 54706560 54706560 54600304 54600304 50772736 44175696 59248672 59248672 23128272 221897840 221897840 147877260 147877260 96284520 145002144 228903276 228903276 88655016 166862813 777213073 777213073 771850488 771850488 719381101 206120076 656942420 656942420 580912709 580912709 557862560 557862560 696853605 753278121 753278121 645956049 110134944 113829644 551166172 551166172 160233125 136997888 136997888 688754658 688754658 437499432 529192062 529192062 932641106 932641106 462851526 462851526 1010827407 1010827407 908067489 621414184 704774144 704778261 704778261 4117 0 283222126 283222126 228705570 228705570 496084962 496084962 354026386 492966318 492966318 459934862 352061655 83955206 704047205 704047205 414250286 414250286 399053211 984432970 984432970 967641647 896813704 896813704 882911751 477286735 201999810 692606672 731042421 731042421 251302645 942070023 942070023 1000478240 1000478240 612626505 612626505 153830054 335544516 335544516 543166612 543166612 327221313 534779944 534779944 451287510 428150270 337716992 337118730 125323360 704491064 870268361 1062938005 1062938005 731170152 736102914 736102914 624969740 853934273 853934273 1016334656 1016334656 977586257 899733658 669714809 669714809 73523592 55181608 176943380 788050040 796070869 796070869 673388440 50898704 201855028 201855028 184735028 167960864 120670752 120670752 94376608 94376608 45096448 109411602 390000931 706351115 774944931 987800254 1066875757 1066875757 1006964812 1012070089 1012070089 277484610 997735071 997735071 629594127 827301428 1043980157 1051874661 1051874661 489549102 564542371 830459496 830459496 314505009 144365124 279363965 696920598 696920598 377495618 402923644 595669111 861810711 861810711 32459208 59824256 649081872 649081872 812340739 812340739 631716201 631716201 814520643 814520643 569198560 569198560 553648161 563086369 567428641 567428641 23083648 26579648 599606472 763206017 763206017 820665938 820665938 390211658 890971768 890971768 598153456 598153456 862401742 862401742 432550369 453511454 453511454 463996278 463996278 407975558 407975558 294664018 294664018 16909296 334499938 334499938 323010738 323010738 170128818 35955268 150285252 151055804 258850852 258850852 1041249903 1041249903 428418150 784371848 856801955 868901371 868901371 1007682386 1040786896 1040786896 843163035 942949462 942949462 822092551 784376293 787645712 848365877 848365877 644096525 1068315802 1068315802 937107292 339481514 221906208 202300424 202300424 7302125 139535232 692128480 692128480 135587969 628859941 687640929 687640929 661718345 948183058 948183058 710108741 617727508 579256537 579256537 205542108 1059699071 1059699071 448918479 408461348 247629164 521251458 521251458 393339834 486914638 486914638 382153178 416572190 462832342 462832342 370425992 480385364 480385364 200382388 200382388 198250736 270666050 270666050 402702082 402702082 1004156764 1004156764 643384857 527455271 270848018 362887264 490051690 490051690 456573236 287765280 419526924 472784212 472784212 279784562 428195158 428195158 286137378 935558305 975876221 975876221 418792477 418792477 469762080 469762080 497148270 887253985 887253985 901942520 901942520 940510530 940510530 698352738 698352738 225724839 499769828 700483081 700483081 539377292 539377292 1047664232 1047664232 965215335 764220603 478617602 478617602 460028254 460028254 886740680 886740680 242128605 101501976 201987084 201987084 70392892 256530142 294785634 515507962 515507962 452158080 812459664 812459664 561202361 193636792 691705417 691705417 403886598 164177124 356086348 356086348 927580082 927580082 806693379 629071785 806158707 806158707 709468037 709468037 168497093 140948752 73920265 842323905 842323905 548868625 809236227 910059084 910059084 1051170518 1051170518 837840679 837840679 751862257 751862257 543463380 113463896 85845122 85845122 364487018 364487018 429140620 429140620 428932290 449634326 449634326 50659328 440401926 440401926 192227634 526672246 526672246 457238538 405446724 67326218 1057538060 1057538060 405159099 483210316 507574290 507574290 386800698 501014168 965391161 965391161 605642065 605642065 381687366 381687366 29819938 21524034 158949828 413266182 565504664 741976973 741976973 611403398 434247017 434247017 602589129 602589129 303306788 806917158 806917158 927469628 927469628 805346468 805346468 441451158 456528194 456528194 298060002 867173238 867173238 832569699 463471167 849805962 849805962 761278979 276203724 477419654 477419654 672154496 672154496 117053400 502520608 502520608 414261639 1060323135 1060323135 614829976 658505814 658505814 453319504 453319504 952766083 952766083 832649696 832649696 583612996 380142800 86411152 86411152 75963259 644362787 644362787 809245952 809245952 806490627 821133440 821133440 37755097 374399672 546325841 855163793 855163793 730534802 771858874 771858874 250164651 294306276 659063116 659063116 896825661 896825661 751780704 751780704 216153992 226064032 226064032 88981152 27228520 145813568 145813568 137573124 137491264 137491264 150078724 150078724 14758336 11658048 141560640 141560640 22078500 135300576 137373248 137373248 10552640 20611848 20611848 348003394 348003394 271990146 350494346 350494346 369492100 508173726 510007710 510007710 438510232 149423824 380537362 380537362 284857354 673275948 706096788 706096788 533540094 533540094 890241122 890241122 898484989 898484989 449113097 626782351 626782351 353628714 995350240 1003537143 1003537143 873544388 873544388 517796254 713130770 951149381 951149381 253573408 253573408 162106432 137192740 29928772 22164352 88168448 88602792 90363936 90363936 89194624 486790827 893514795 893514795 746793134 760032429 760032429 555861417 555861417 623593192 623593192 56235040 626758835 907846627 907846627 773823853 767904901 707139861 446374662 446374662 424156522 565704656 565704656 713957234 713957234 713308721 907640949 907640949 702286642 113320152 113320152 41501912 37786368 138428612 138428612 9488448 139888660 139888660 365406378 817892179 817892179 812911491 592184168 592184168 569409925 160481892 542806745 542806745 506651210 1041533242 1041533242 979200371 979200371 836505315 281793228 374508928 374508928 202424844 202424844 152428616 281969204 557863788 754111437 754111437 996331959 996331959 706859487 363034731 620139157 620139157 128066256 220274988 220274988 170985320 93504196 233886216 641502160 641502160 167445733 113246424 609326984 609326984 80170257 2228224 2228224 233472 258048 4265472 205534272 214643916 214643916 240726324 240726324 113189893 102903433 102903433 954910556 954910556 420685592 440833600 465901108 465901108 327397456 327397456 306686182 39135888 542638790 987573975 987573975 810493505 810493505 698297649 431830305 598546994 598546994 983648856 983648856 755573805 755573805 738673869 848466038 848466038 327678870 166030112 166030112 82487448 887321350 920405624 920405624 853018323 199807188 981978133 981978133 925269840 925269840 843713371 765905527 306294809 304057602 381290312 381290312 307803472 281278112 145509960 302286350 302286350 402935816 1015026886 1015026886 512037651 114113020 162021252 162021252 1071667254 1071667254 649468761 649468761 602869812 450362070 439585216 99060492 221772136 221772136 88654552 356918304 375224344 375224344 344775874 139774626 43990608 43990608 47644888 50138000 80886464 80886464 268435712 270532866 363468088 388633706 388633706 428499512 428499512 488955632 488955632 415102282 290914320 223226976 205520904 205520904 212672914 505490756 516484976 516484976 157306224 157306224 80094336 366090376 376878616 376878616 515442548 515442548 516570458 516570458 514474768 514474768 409747744 409747744 305791046 436604182 459936828 459936828 188767272 482514190 482514190 436603982 436603982 472274462 490260270 490260270 135958826 66457344 66457344 46916048 37960704 40695232 40695232 36211472 51946672 51946672 461189046 461189046 431605968 48590480 48590480 37849408 327508016 327508016 48349504 48349504 167994983 940166913 940166913 532507737 949956937 949956937 891879658 1066423052 1066423052 845677971 955784654 955784654 881197634 1024047342 1024047342 787620245 386029123 543254764 613017197 744079524 744079524 662866548 696655385 742009109 742009109 720697877 653347805 901841288 901841288 832643427 758481676 1008004461 1008004461 404343366 485973800 485973800 542430088 645878889 645878889 107481848 112651720 727922469 727922469 388969384 707854991 707854991 740397871 740397871 824806696 824806696 674256372 19449120 252812400 252812400 375975096 523029822 523029822 329259118 297176354 835009461 835009461 186782004 556399137 556399137 156909476 184697744 184697744 22539936 22539936 141190950 280793734 281666754 281666754 183100500 279586066 279586066 178393268 458764724 458764724 325108352 324092560 570525776 570525776 283313392 1072407026 1072407026 738907149 534771533 527359422 805830674 807144963 807144963 425528643 524429440 524429440 700484369 734528757 734528757 688790565 688790565 697310240 697310240 487764032 487764032 469149388 288063720 288063720 425408132 425408132 208707260 511979696 511979696 338836236 338836236 292522898 260919240 260919240 318985520 416416896 416416896 188794596 198714848 198714848 56363760 24008608 309149798 309149798 182766036 123258424 184999352 230041452 230041452 103494936 181526584 531749928 531749928 314249220 314249220 269831684 375704578 509792670 509792670 348477934 481431663 566440673 752883939 752883939 468052351 891679994 919724763 919724763 494373463 635556192 638962425 892259731 892259731 844029075 616073392 386482522 386482522 367888944 367888944 199165488 199165488 150607812 58358480 186290320 186290320 190047206 434368870 434368870 311963990 296015426 281233792 63702544 63753456 63753456 58704000 306583698 420268432 505801762 505801762 506801448 506801448 459106860 494643932 517677816 517677816 265412858 275210392 275210392 346423488 346423488 314574962 310798448 311794256 311794256 286737008 303284274 303284274 275823248 22202768 33604048 33604048 26479008 135650112 135650112 33178596 221897840 221897840 71919276 96284520 96284520 145002144 228903276 228903276 85684752 21833288 236243464 265603836 771850488 771850488 719381101 206120076 656942420 656942420 580912709 580912709 557862560 557862560 594678705 594678705 92393849 654698553 654698553 113829644 551166172 551166172 1019985857 1019985857 896629758 837217064 954732231 954732231 87298848 87298848 554294088 557066089 738248104 738248104 1010827407 1010827407 908067489 852353207 852353207 698484528 698484528 313608325 313608325 295700834 295700834 923651464 923651464 787072106 23643552 290494124 492966318 492966318 459934862 352061655 100826040 829004221 829004221 558391225 558391225 228075276 984432970 984432970 967641647 896813704 896813704 882911751 659868200 659868200 644238000 310811017 325354354 325354354 477335690 477335690 604104193 604104193 612626505 612626505 153830054 335544516 416029808 536940608 604049720 604049720 534779944 534779944 451287510 444897024 444897024 108075528 108075528 160831612 995832376 995832376 554324544 554324544 736102914 736102914 624969740 853934273 853934273 530580318 514851198 2402320 35774736 70185992 70185992 2435328 34479120 34479120 745641000 745641000 67109056 67109056 50898704 50898704 36226320 153863448 153863448 120670752 120670752 56762304 73261240 73261240 49317416 380848529 706351115 774944931 774944931 1066875757 1066875757 1025806624 1025806624 288408871 277484610 153092388 425862644 464205174 464205174 433182542 1051874661 1051874661 489549102 564542371 830459496 830459496 439744560 144365124 279363965 646004741 646004741 377495618 402923644 595669111 861810711 861810711 134481924 141824768 649081872 825915881 876426633 876426633 631716201 631716201 814520643 814520643 569198560 569198560 553648161 563086369 567428641 567428641 545867745 588192944 588192944 571381840 662405380 662405380 370945083 240090326 647328544 841534912 841534912 754905690 673893616 730081314 999155172 999155172 331483204 457578678 457578678 321913888 305661714 34652688 324721424 324721424 307154754 320881024 451410390 451410390 432331014 432331014 150472644 151055804 258850852 343379914 428934512 428934512 356724906 379910476 379910476 278066954 505082796 1007682386 1040786896 1040786896 170394900 942949462 942949462 822092551 784376293 646187097 848365877 848365877 644096525 1068315802 1068315802 937107292 339481514 175438252 202300424 202300424 541092192 541092192 692128480 692128480 548243233 628859941 687640929 687640929 661718345 948183058 948183058 710108741 625013156 579256537 579256537 205542108 1059699071 1059699071 422452518 518137548 518137548 521251458 521251458 468477604 486914638 486914638 382153178 416572190 450827780 450827780 370425992 480385364 480385364 198780128 198780128 173084816 270666050 270666050 23891968 29923250 1004156764 1004156764 933248040 933248040 270848018 191591490 490051690 490051690 461230382 304529712 436371716 472784212 472784212 279784562 434669412 434669412 489833462 489833462 315680664 401037034 530854143 922820667 922820667 469762080 585418184 585418184 275825180 274892320 689593544 940510530 940510530 698352738 704986268 704986268 508447781 700483081 700483081 675419333 675419333 623646176 669440505 733388140 878524097 878524097 269630076 788779619 788779619 893997274 893997274 581145872 581145872 42152016 51033104 270505928 377203762 377203762 303161874 71919368 242430236 679572161 679572161 561202361 258573756 691705417 693992062 754379653 754379653 342384893 396679537 906647421 906647421 929328938 929328938 707077473 707077473 709468037 709468037 689283124 689283124 73920265 842323905 842323905 548868625 809236227 910059084 910059084 1051170518 1051170518 837840679 837840679 751862257 751862257 543463380 113463896 85845122 85845122 364487018 364487018 296910072 39763570 0 449634326 449634326 179706708 440401926 440401926 57154476 33867792 78170128 405446724 933295161 933295161 1057538060 1057538060 405159099 483210316 538993237 584428524 735349945 735349945 965391161 965391161 605642065 605642065 381687366 725560881 725560881 95159476 188626464 413266182 563358769 563358769 611403398 611403398 554230581 434247017 602589129 602589129 495453696 806917158 806917158 604012590 558776332 805346468 805346468 464712042 674399668 674399668 594678705 823413527 977733669 977733669 970191521 952772471 849805962 761278979 247503232 247503232 90231012 101472648 117053400 382505536 416428631 416428631 414261639 1060323135 1060323135 935320128 935320128 790741452 790741452 453319504 952766083 952766083 832649696 832649696 583612996 380142800 117619864 117619864 124310936 644362787 644362787 638834848 559349273 538709505 628256536 908460497 908460497 584025970 584025970 855163793 855163793 730534802 692806805 678117383 250164651 294306276 659063116 659063116 896825661 896825661 751780704 751780704 216153992 226064032 226064032 88981152 91752328 159232936 159232936 158471076 153983236 16308100 15582464 15582464 10554944 11658048 141560640 141560640 8597568 8597568 10485760 10486080 10486080 9607104 9607104 16302208 16302208 136256 8913984 8913984 9122880 504923280 504923280 484177614 349820618 148162446 380537362 380537362 284857354 284857354 706096788 706096788 56623536 56623536 890241122 890241122 898484989 898484989 574877632 119377576 119377576 39719952 39719952 39271056 476328726 873544388 873544388 523998353 892523307 951149381 951149381 813502737 813502737 399880146 311762128 311762128 34523216 593299643 593299643 742820878 742820878 797901926 797901926 407909924 688142052 688142052 760032429 760032429 634260577 634260577 58916864 58916864 56235040 626758835 927929429 927929429 432088458 526910910 623587479 726659246 726659246 439107856 447704568 447704568 713957234 831851000 831851000 907640949 907640949 702286642 113320152 113320152 41501912 37786368 38978192 38978192 3459840 2506752 1179648 310716481 817892179 817892179 812911491 194029828 569409925 569409925 160481892 542806745 605454368 789698874 1041533242 1041533242 979200371 979200371 1032314404 1032314404 777976894 223880734 202424844 202424844 152428616 281969204 840148000 857396787 857396787 827040259 618774917 618774917 402718794 620139157 620139157 514003038 514003038 523327232 523327232 364904785 585241041 585241041 104469768 104469768 565563105 565563105 45717952 46841280 46841280 623872160 623872160 574370473 39506489 205534272 214643916 214643916 240726324 240726324 546831528 783763432 783763432 1027412436 1027412436 569020420 866765941 866765941 831969891 831969891 685228118 588276931 588276931 542638790 987573975 987573975 466997130 276639618 34738704 260703852 260703852 63704048 1025718378 1025718378 755573805 755573805 1027889556 1027889556 848466038 416494278 416494278 166030112 164902436 164902436 920405624 920405624 853018323 507622962 981978133 981978133 925269840 925269840 843713371 765905527 306294809 940860768 940860768 367923479 942211338 942211338 942146823 772048071 809764995 809764995 743463617 683120070 698969116 725350197 782939808 782939808 540055648 540055648 649468761 684720325 799352881 799352881 659430941 718735473 718735473 636882993 545853584 88654552 375224344 375224344 344775874 459184692 459184692 56233606 77753280 300066700 300066700 283951112 283951112 228380070 79216832 294557104 294557104 329410068 329410068 488955632 488955632 415102282 294546788 433712228 433712228 357828218 357828218 505490756 505490756 345409880 345409880 317256628 176981888 176981888 30792008 107457216 107457216 95684896 95684896 61146976 279186734 279186734 338430486 338430486 145752240 436604182 459936828 459936828 370673178 366363730 366363730 343955592 281315522 119955050 384849658 384849658 50122496 345924770 345924770 80968776 105860232 124422296 124422296 76593760 76593760 184684596 184684596 280403718 280403718 169233044 343222230 343222230 302867028 375464346 375464346 206351382 136367886 137019652 261231500 261231500 509619832 671072698 690507855 1066423052 1066423052 845677971 82043276 134922372 706301957 1024047342 1024047342 787620245 386029123 543254764 613017197 780713984 780713984 748839692 748839692 547606016 8271169 6940032 6940032 901841288 901841288 832643427 758481676 1065534126 1065534126 404343366 485973800 493948718 493948718 330705763 503441678 503441678 868473537 868473537 694820358 589200512 587569328 587569328 249594840 135315972 824806696 1040698352 1040698352 961553068 632818029 632818029 409824644 523029822 523029822 685831722 685831722 835009461 835009461 186782004 556399137 556399137 156909476 184697744 184697744 21052128 30875808 30875808 43995920 43995920 176906880 176906880 165680308 178393268 178393268 458764724 458764724 167973762 17121360 570525776 570525776 558104657 1072407026 1072407026 738907149 534771533 872227136 872227136 17826336 546444640 807700245 807700245 524429440 733204744 733204744 949371345 949371345 882147943 219142188 135866020 411816572 411816572 265352230 30409440 21037568 10598016 10598016 30593760 30593760 28332416 29364784 38928592 38928592 37748880 22618160 4269696 66060416 66060416 61866864 61866864 106692712 106692712 254807380 254807380 225844140 225844140 181341028 268175984 268175984 168432660 103494936 201502736 201502736 187969328 29341248 29341248 20261632 17901896 74400704 77216008 77216008 481431663 566440673 752883939 752883939 468052351 583297546 919724763 919724763 961278017 961278017 909374478 909374478 892259731 844029075 616073392 386482522 386482522 367888944 367888944 199165488 199165488 150607812 58358480 58358480 184997040 809706242 809706242 434368870 311963990 837870530 837870530 584089602 279257138 558266368 558266368 549699824 333457440 291932306 291817890 286296960 24699392 24699392 88672824 88672824 307034544 307034544 302963730 275210392 346423488 346423488 271948706 271948706 64301216 60086784 276059056 303284274 303284274 275823248 168449300 168449300 194119408 194119408 158179232 158179232 145148132 135205108 54808996 39618816 180245064 186373944 186373944 181319177 188050152 188050152 695029533 695029533 656152657 718569181 718569181 675367329 675367329 40666448 49073616 560319645 640248108 650716377 803278092 803278092 594678705 556537120 654698553 654698553 792789192 792789192 740231184 1019985857 1019985857 896629758 837217064 954732231 954732231 343736430 343736430 554294088 557066089 738248104 738248104 700230501 700230501 688927144 852353207 852353207 698484528 698484528 313608325 698971301 698971301 1058572446 1058572446 923651464 834315082 404318116 360726818 360726818 310919216 310919216 211314690 453696653 829004221 829004221 558391225 558391225 117576344 179590688 306497813 407935557 584296836 835750043 835750043 659868200 659868200 644238000 917805665 917805665 570691914 477335690 477335690 785963640 785963640 518431432 963302032 963302032 551284651 977255168 977255168 678551942 678551942 747758162 747758162 1069024639 1069024639 819487556 819487556 283318616 342464613 995832376 995832376 900367045 900367045 713262436 604078400 682952994 721447743 721447743 530580318 514851198 288460088 288460088 658604473 658604473 73999752 100228920 190860020 190860020 787072944 787072944 606627048 168481812 210289740 210289740 219202340 219202340 120666024 120666024 56762304 73261240 73261240 71211298 434392032 434392032 229612488 734498036 960704679 960704679 1025806624 1025806624 288408871 277484610 153092388 425862644 464205174 464205174 429490726 429490726 333022208 445208084 445208084 52469526 682025472 964940621 964940621 503612031 151257120 151257120 227816008 227816008 981994742 981994742 559357049 134481924 141824768 141824768 825915881 876426633 876426633 22981984 295838440 565338920 837473763 837473763 811782531 820030880 820030880 562728864 562728864 563084240 588192944 588192944 249054080 662405380 662405380 370945083 349061458 647328544 841534912 841534912 990152131 990152131 732320162 999155172 999155172 136516820 136516820 321913888 321913888 305661714 34652688 324721424 324721424 307154754 290065392 451410390 451410390 432331014 432331014 150472644 150472644 150810564 343379914 428934512 428934512 356724906 379910476 379910476 129513012 318358610 1007292574 1007292574 286802706 286802706 453075968 464431396 464431396 454507894 154875684 738208078 746913807 746913807 344066633 347344968 347344968 175438252 175438252 153332672 153332672 541092192 688922816 688922816 872222070 872222070 980233623 980233623 719331655 673975557 324347831 618790916 625013156 625013156 50331696 41951784 87176288 370153996 422452518 422452518 518137548 518137548 357061768 357061768 468477604 468477604 521377858 521377858 438448342 450827780 450827780 176699442 141492276 141492276 693843121 693843121 662839509 190448660 109256849 0 16813440 16813440 7094304 933248040 933248040 790626621 790626621 547373064 461230382 461230382 304529712 436371716 436371716 54657552 63440112 434669412 434669412 489833462 489833462 136419888 401037034 530854143 922820667 922820667 244067520 585418184 585418184 907021086 907021086 689593544 689593544 243734690 333250694 704986268 704986268 508447781 591963234 591963234 675419333 675419333 623646176 82056461 733388140 878524097 878524097 269630076 875258488 982127703 982127703 893997274 581145872 581145872 42152016 51033104 270505928 377203762 487330334 487330334 370496948 370496948 679572161 679572161 258573756 258573756 416164252 693992062 754379653 827668518 827668518 396679537 906647421 906647421 929328938 929328938 707077473 707077473 661157297 661157297 689283124 689283124 73901160 88605864 88605864 41554008 187880244 188551220 188551220 109197012 219917064 219917064 220989724 235144248 253831476 253831476 185933884 169085460 196774204 196774204 72238528 56649664 60417648 134350480 177764016 179706708 179706708 195508596 195508596 190034946 404885766 411515090 411515090 933295161 933295161 754978908 754978908 422579588 402991110 538993237 584428524 735349945 735349945 711722484 206976336 543309057 543309057 195895852 725560881 725560881 160718880 214969036 214969036 563358769 563358769 190948660 554230581 554230581 494966432 494966432 495453696 495453696 479725134 478328902 503499163 720314497 751559773 1056831705 1056831705 1007654263 1007654263 809138046 823413527 1071106637 1071106637 970191521 952772471 516036805 516036805 470268640 495137322 495137322 138886086 26607984 382505536 382505536 530339790 530339790 595199744 595199744 935320128 935320128 790741452 790741452 182452692 300942347 552280065 552280065 540218187 865939059 865939059 542334497 668816433 668816433 575780488 638834848 638834848 559349273 538709505 786945 908460497 908460497 584025970 584025970 549923269 717208021 717208021 683777041 370229842 580944456 580944456 402681949 371335488 153126754 144737120 160473412 160473412 149913700 91037632 91037632 71352456 91752328 159232936 222830624 222830624 153983236 33285088 161551780 161551780 28996484 19707809 142539456 151737445 151737445 683305472 683305472 682100037 682100037 677586112 13353794 875278403 875278403 272871810 346377546 346377546 277297218 504923280 504923280 484177614 349820618 286015970 323901776 323901776 207008804 207008804 252851865 252851865 134617092 134617092 610653313 623167785 767314697 767314697 749473101 545607909 545607909 504805908 773679754 880283205 880283205 545397006 590021653 778577068 892523307 892523307 807032377 813502737 813502737 399880146 311762128 311762128 34523216 593299643 593299643 742820878 742820878 797901926 797901926 676066885 676066885 718996678 718996678 546975328 634260577 634260577 648741408 648741408 113358128 560645344 927929429 999027781 999027781 526910910 623587479 756470900 756470900 439107856 447704568 447704568 566826748 831851000 831851000 512414814 372224378 372224378 107873264 338913754 338913754 332564544 414786572 414786572 84935208 172476468 172476468 404841142 458647654 458647654 558166782 558166782 399545227 157845504 605750792 605750792 605454368 789698874 789698874 489154108 792743004 792743004 1032314404 1032314404 777976894 4593792 77019720 273702922 273702922 390137000 840148000 857396787 857396787 827040259 469860674 402718794 402718794 335548488 469970958 514003038 514003038 523327232 523327232 364904785 585241041 585241041 104469768 104469768 806679514 806679514 918868723 918868723 296695297 824757065 829725601 829725601 946608997 946608997 554203776 554203776 756048940 756048940 546831528 783763432 783763432 1027412436 1027412436 569020420 866765941 866765941 831969891 831969891 685228118 632509851 632509851 427475817 427475817 531907307 711248277 711248277 369233946 369233946 934884920 934884920 1025718378 1025718378 648481025 430389565 1027889556 1027889556 420772634 420772634 416494278 297869538 911653146 911653146 247333756 460669421 895068536 895068536 522191008 522191008 501400510 501400510 415810824 71877768 39692304 940860768 940860768 367923479 942211338 942211338 942146823 843486238 1011226767 1011226767 743463617 694689450 698969116 725350197 782939808 782939808 154141476 546382112 546382112 684720325 799352881 799352881 659430941 718735473 718735473 636882993 545853584 21907626 85069332 189792948 454168706 459184692 459184692 76819072 77753280 346075848 346075848 303614936 303614936 228380070 336618696 348262818 348262818 527453302 527453302 243318998 783389019 783389019 842727437 842727437 675612739 1026581229 1026581229 950059335 693243839 693243839 692741996 692741996 176981888 176981888 30792008 107457216 277160056 277160056 95684896 61146976 61146976 28846448 69534208 106365192 121350344 121350344 45744154 370673178 370673178 366363730 366363730 343955592 324702224 324702224 384849658 384849658 117489720 345924770 345924770 237523060 121676720 152299244 152299244 76593760 197378772 197378772 184684596 280403718 280403718 169233044 343222230 343222230 302867028 375464346 375464346 206351382 136367886 136367886 261231500 261231500 509619832 671072698 690507855 690507855 636011561 54658048 54658048 840696074 894042354 894042354 99953640 99953640 69323488 8437824 8437824 780713984 780713984 748839692 797118225 797118225 763245932 585381193 720129057 1025867885 1025867885 616841581 287490624 1065534126 1065534126 960030422 960030422 493948718 493948718 330705763 503441678 503441678 868473537 868473537 694820358 589200512 587569328 587569328 249594840 135315972 820289992 1040698352 1040698352 961553068 632818029 632818029 409824644 409824644 509922526 685831722 685831722 479101765 473977480 135201280 185955376 185955376 2306304 42152016 51578880 51578880 30875808 165051364 165051364 308317252 308317252 176906880 180925488 180925488 51070164 52564272 52564272 42000384 17121360 276922672 558104657 558104657 774431412 774431412 628697001 628697001 977651213 977651213 35727651 546444640 807700245 807700245 473991812 733204744 733204744 1020030149 1020030149 898180203 197730547 111486588 411816572 523011806 523011806 464944616 464944616 412899828 412899828 217655244 522558928 522558928 339881996 339881996 291054786 105599836 144968004 285968868 438564352 438564352 185026852 159383744 159383744 106692712 254807380 254807380 244132956 244132956 181341028 268175984 268175984 168432660 141180312 233191172 233191172 189305432 20310080 9699072 11697152 12447552 74400704 77216008 77216008 89042116 227490924 227490924 184623204 212191448 428132768 582541748 803438702 961278017 961278017 909374478 909374478 511236011 386548252 302669852 236831762 135007236 142658624 158199204 158199204 139384484 703340565 703340565 16917472 591797137 809706242 809706242 13632192 277963330 837870530 837870530 584089602 830557104 830557104 558266368 549699824 333457440 6427008 7381376 7381376 24699392 24699392 88672824 88672824 307034544 307034544 397235482 397235482 56754224 65629200 100435928 100435928 64301216 22489808 17828352 399360 59870048 65061120 168449300 168449300 194119408 194119408 174927252 174927252 145148132 135205108 113299736 153803792 180245064 254617748 254617748 239963316 222061192 188050152 695029533 695029533 656152657 718569181 718569181 675367329 675367329 551856180 711702533 711702533 640248108 650716377 803278092 803278092 709300369 709300369 639639945 646519197 792789192 792789192 768809280 700154683 831624480 831624480 805441539 158903206 606310928 606310928 343736430 539505920 539505920 366170436 202124448 700230501 700230501 201331744 436942962 874268676 874268676 276862475 276824130 984061524 984061524 1058572446 1058572446 834315082 834315082 455131544 522225460 522225460 268963592 268963592 507825202 507825202 457198134 784861072 784861072 83556008 117576344 136316740 306497813 407935557 584296836 592915098 592915098 531671092 286885750 873699152 917805665 917805665 1044646047 1044646047 686184487 1060274518 1060274518 815023120 963302032 963302032 551284651 977255168 977255168 678551942 678551942 747758162 747758162 1069024639 1069024639 819487556 819487556 283318616 342464613 570762797 570762797 999327976 999327976 713262436 911280929 911280929 721447743 721447743 405106980 405106980 315740562 315740562 658604473 658604473 73999752 247401744 346165702 346165702 787072944 787072944 606627048 308457622 383432760 443469794 484985996 484985996 88386660 42846240 67066112 67066112 64612080 71211298 434392032 434392032 229612488 734498036 960704679 960704679 590782958 590782958 142669511 166888754 449888982 449888982 145965766 420553876 429490726 429490726 146278212 445208084 445208084 52469526 951236880 964940621 964940621 503612031 237408348 889738355 889738355 839393877 981994742 981994742 965477947 965477947 561047105 561047105 344179611 294844035 325216633 402302010 896675041 896675041 837473763 837473763 832589984 832589984 820030880 562728864 562728864 563084240 563084240 263394864 613333080 613333080 287519010 349061458 349061458 290870152 290870152 964276902 990152131 990152131 732320162 971382946 971382946 409976896 409976896 264570958 871469302 939553774 939553774 1028621466 1028621466 394592376 981600176 981600176 962733735 962733735 792944939 845269406 845269406 200593330 321816246 422786852 422786852 405931318 258680448 258680448 172561344 172561344 93325220 590939149 590939149 286802706 949281828 949281828 621617671 437726521 155022854 738208078 797839384 797839384 722616117 755885456 755885456 17648232 59862720 153332672 453280103 581224785 688922816 688922816 872222070 872222070 980233623 980233623 719331655 673975557 340370570 86857856 126493170 328602642 389886498 389886498 380769114 353736050 344386672 325611184 486547514 486547514 190853038 526933938 526933938 308429488 521377858 521377858 438448342 362940756 362940756 326903534 50269122 667651880 821294019 821294019 662839509 914404993 940307463 940307463 311699232 328794634 880280262 880280262 682633990 790626621 790626621 547373064 420491268 420491268 51577378 421536292 421536292 54657552 63440112 63440112 44101952 120848688 136419888 193008704 193008704 176497460 132197452 314713756 491259054 491259054 421036730 956844068 956844068 277644301 277644301 998612146 998612146 970179761 517609214 483431037 273852156 847816122 847816122 346081195 916114002 916114002 1020529094 1020529094 516039383 426063036 875258488 982127703 982127703 143315968 570508368 570508368 439354134 439354134 185137148 463593846 512987944 512987944 370496948 370496948 228436986 149672792 144703812 144703812 845849860 845849860 845838258 971194243 971194243 404167095 1032769070 1032769070 914806875 914106141 914106141 626371973 119629984 119629984 424075906 424075906 321380544 321380544 317593890 317593890 187880244 310363138 310363138 285409970 109197012 267085288 313042204 487200546 487200546 388443028 185933884 169085460 196774204 196774204 58897568 56649664 60417648 134350480 185081908 185081908 156631760 156631760 305474322 305474322 404885766 411515090 411515090 318881840 318881840 510539580 510539580 529200624 529200624 436217872 436217872 182323416 66140912 66140912 46211048 184355737 606408737 781263453 781263453 546830913 546830913 768674541 768674541 765106921 765106921 826779360 826779360 697119424 697119424 494966432 242944244 164875212 275483538 275483538 503499163 720314497 751559773 1056831705 1056831705 1007654263 1007654263 809138046 626868546 1071106637 1071106637 446631373 414973150 781570590 781570590 871320801 871320801 691618631 544931974 825099827 825099827 584527043 584527043 530339790 462209762 419398776 724889294 724889294 681500229 869548672 869548672 300942347 552280065 552280065 540218187 865939059 865939059 542334497 668816433 906038712 906038712 829238691 589671963 589671963 639886873 639886873 365991656 365991656 39272570 611496904 611496904 575267985 575267985 720012626 720012626 774600196 774600196 613810221 371335488 682794817 682794817 608406660 608406660 228702436 147375300 155502756 155502756 152866472 69773608 222830624 222830624 135772772 154829696 161551780 161551780 28996484 19707809 142539456 151737445 551715968 683305472 683305472 682100037 682100037 677586112 13353794 875278403 875278403 272871810 346377546 346377546 277297218 338893962 338893962 282377794 274500416 286015970 323901776 323901776 132564832 131057760 252851865 252851865 134617092 134617092 610653313 623167785 767314697 767314697 749473101 545607909 545607909 504805908 773679754 880283205 880283205 545397006 590021653 778577068 794245821 794245821 192363453 487149665 837948387 837948387 707015825 707015825 589695764 679331257 679331257 600408909 405473294 227630013 303105126 676066885 676066885 718996678 718996678 398459130 357565008 569235104 648741408 648741408 113358128 560645344 560649633 999027781 999027781 409029935 388446522 756470900 756470900 218648480 135843244 298675626 339265290 363933758 512414814 512414814 372224378 372224378 107873264 338913754 338913754 332564544 414786572 414786572 84935208 172476468 172476468 404967701 600103331 600103331 681629700 681629700 858986799 858986799 773077532 773077532 664609835 664609835 682789046 871816179 871816179 663574471 453315824 453315824 115004654 50628280 118594220 445723210 445723210 742430381 742430381 758870297 908755254 908755254 788393949 788393949 284059879 798772833 798772833 964997380 964997380 866254878 111149120 109085016 109085016 100712472 568595536 669711193 806679514 806679514 918868723 918868723 296695297 824757065 829725601 829725601 946608997 946608997 554203776 554203776 756048940 756048940 223863652 223863652 181810692 222363748 222363748 47226880 57424000 459757252 459757252 318645746 290382898 642494512 642494512 629403753 1051992435 1051992435 711248277 711248277 369233946 369233946 934884920 934884920 592728161 592728161 551762113 366884872 849282976 849282976 420772634 420772634 292745632 297869538 911653146 911653146 247333756 460669421 895068536 895068536 342365382 315106376 472128514 472128514 615553675 615553675 445552009 952199927 952199927 71429549 913454224 913454224 906833075 843486238 1011226767 1011226767 696359059 696359059 694689450 205810549 592615333 592615333 154141476 546382112 546382112 143131716 143131716 143340612 144128848 144128848 36976672 116808900 233183228 272269396 276437262 276437262 454168706 454168706 391284334 235051698 76819072 346075848 346075848 308611346 303614936 292780256 336618696 348262818 348262818 527453302 527453302 321092118 783389019 979705746 979705746 842727437 675612739 1026581229 1026581229 950059335 693243839 693243839 692741996 692741996 47014832 58142480 58142480 75792448 277160056 277160056 363272522 363272522 94278730 363856746 363856746 389637890 389637890 392070674 392070674 277218880 126912224 303600752 303600752 35276304 324702224 324702224 298484930 117473280 117489720 117489720 341392986 341392986 122706336 290343138 290343138 166237328 456072500 456072500 304972486 152785236 414897990 414897990 193282770 298244322 298244322 289855650 289855650 40969104 137706905 1009465231 1009465231 763312957 656503161 654360633 654360633 636011561 636011561 1058844119 1058844119 840696074 894042354 894042354 1058477759 1058477759 403294564 686312616 686312616 654118089 654118089 772670553 797118225 797118225 763245932 585381193 763939185 1025867885 1034699979 1034699979 417542279 880939279 997077351 997077351 960030422 482352168 23142816 23142816 4260128 690753102 690753102 484181925 16768 6340992 267257490 375110094 392828346 392828346 991242544 991242544 811083400 811083400 67699723 541799553 707998725 707998725 577975185 1003998488 1003998488 774021935 100156113 53478192 53478192 44900052 51644976 676595253 731981152 731981152 671232117 694919767 842467270 842467270 844167893 844167893 810436418 329542678 329542678 290373958 151124112 151124112 30614240 276922672 276922672 60842562 774431412 774431412 628697001 628697001 977651213 977651213 377623050 538968320 538968320 473991812 473991812 633652866 633652866 1020030149 1020030149 898180203 469584022 881073386 1036985783 1036985783 544762160 464944616 464944616 412899828 412899828 217655244 522558928 522558928 339881996 339881996 291054786 105599836 144968004 285968868 438564352 438564352 185026852 159383744 159383744 9584256 172831764 211893392 244132956 244132956 175638356 149104024 149104024 145229124 141180312 233191172 233191172 189305432 99760608 99760608 33344320 115772808 115772808 116926616 116926616 439196215 631131193 686012067 686012067 440476043 971055522 971055522 676964349 956506496 956506496 28646116 998557815 998557815 1047593740 1047593740 948505474 948505474 515416692 515416692 865602295 980721060 980721060 979638006 421736768 591797137 972723824 972723824 26484677 32241984 32241984 566822594 832268115 832268115 830557104 57974883 66422962 273762578 302254098 371575692 371575692 223496868 223496868 220672684 451736600 451736600 285212706 397235482 397235482 111783026 65629200 281125378 281125378 13656288 47270512 324012576 324012576 323225778 303301280 19342224 17560608 26849824 150468144 174927252 174927252 147467328 181697744 181697744 153803792 190460352 254617748 254617748 239963316 222061192 100663320 35750200 96994536 96994536 721659000 721659000 564947025 564947025 551856180 711702533 711702533 566433060 232884864 577055100 577055100 709300369 709300369 639639945 639639945 674673589 768809280 768809280 700154683 949503767 949503767 709195269 689973442 606310928 606310928 34951433 539505920 539505920 88670252 202124448 202124448 201331744 201331744 134352900 874268676 874268676 276862475 276824130 1000936818 1000936818 567973952 567973952 426788574 455131544 455131544 522225460 522225460 317330180 164677304 507825202 507825202 457198134 784861072 784861072 279757216 907559011 907559011 1011669159 1011669159 523405713 237472144 531671092 531671092 286885750 873699152 873699152 387016251 1044646047 1044646047 686184487 1060274518 1060274518 1041502847 1031850677 988718129 549212042 549212042 118143799 52767024 235529244 542114356 1010934929 1010934929 336659133 125840512 125840512 283324676 283324676 235942246 240010172 999327976 999327976 676620999 911280929 911280929 417719494 417719494 405106980 479384142 479384142 315740562 310828992 308365168 69685146 437291530 437291530 346165702 152065768 473965238 473965238 458626032 383432760 443469794 484985996 484985996 88386660 21759776 67066112 67066112 64612080 64612080 439310155 571406057 692109477 692109477 127538808 864913935 864913935 626231369 626231369 264268476 972410048 972410048 951676871 852979537 832577060 331441654 407181504 411734084 411734084 337892630 951236880 951236880 251842620 251842620 237408348 889738355 889738355 1040638545 1040638545 566231187 965477947 965477947 561047105 561047105 344179611 922755072 922755072 648094041 896675041 896675041 569365019 368506178 832589984 832589984 29528419 31873344 553474913 553474913 542688897 875177811 875177811 855216906 287519010 287519010 353894984 383139592 383139592 964276902 964276902 26349267 169309460 169309460 306895170 448979044 448979044 348132354 871469302 939553774 939553774 1028621466 1028621466 394592376 981600176 981600176 962733735 962733735 792944939 845269406 845269406 363468138 321816246 422786852 422786852 405931318 258680448 258680448 250798294 416924254 416924254 590939149 590939149 218687284 949281828 949281828 621617671 488637734 488637734 377778868 797839384 797839384 722616117 755885456 755885456 73573960 120283896 131486896 453280103 581224785 857883475 979432210 979432210 671475717 30008544 147925924 147925924 340370570 340370570 589691140 589691140 560189956 389886498 389886498 380769114 353736050 344386672 325611184 486547514 486547514 190853038 526933938 526933938 267198728 171268772 195170676 280891936 362940756 362940756 1054392825 1054392825 667651880 821294019 821294019 545433503 914404993 940307463 940307463 311699232 328794634 880280262 880280262 682633990 272433652 31580640 403942454 403942454 448017254 448017254 328414070 307232800 199299718 140706244 44101952 44101952 42127440 141404204 229012216 264275116 264275116 545264665 1040335981 1040335981 923321403 890031658 956844068 956844068 840223261 605570164 998612146 998612146 970179761 578887730 588308609 588308609 847816122 847816122 346081195 916114002 916114002 1020529094 1020529094 889448461 889448461 779781000 793400472 1059267903 1059267903 927093119 927093119 439354134 439354134 425661948 463593846 512987944 512987944 358051222 358051222 788646105 788646105 287078616 144703812 845849860 953325351 953325351 971194243 971194243 404167095 1032769070 1032769070 914806875 914106141 914106141 626371973 406439712 404046260 424075906 424075906 332847428 460959286 460959286 317593890 41368464 310363138 310363138 285409970 65285348 407244944 407244944 487200546 487200546 388443028 239864988 240000188 256642236 256642236 58897568 53508000 53508000 40625296 185081908 185081908 136523408 136523408 305474322 305474322 299129318 210739626 210739626 318881840 318881840 290335362 290335362 529200624 529200624 118485560 182323416 182323416 37791552 37791552 360031313 360031313 865542811 865542811 781263453 546830913 546830913 768674541 768674541 765106921 765106921 826779360 826779360 697119424 697119424 242944244 242944244 178996352 164875212 52164144 174016448 217455564 217455564 217455564 204608268 204608268 497259016 497259016 118363160 709395536 709395536 414973150 414973150 781570590 781570590 871320801 871320801 691618631 797366564 825099827 825099827 584527043 1025712238 1025712238 890440971 481953287 724889294 724889294 681500229 869548672 869548672 394793228 394793228 83042952 102474872 102474872 126449176 126449176 77385288 906038712 906038712 829238691 823392424 903445547 903445547 847434867 365991656 365991656 658641081 658641081 611496904 586441161 586441161 720012626 720012626 774600196 774600196 613810221 537191716 682794817 682794817 608406660 608406660 228702436 147375300 155502756 155502756 152866472 224395784 224395784 202656300 202656300 154829696 154829696 149566176 21508192 31926880 31926880 2960640 551715968 551715968 6658052 679813632 679813632 3388485 2622720 14293888 14293888 10356352 10356352 10127488 14098496 14098496 11986432 15372608 29137664 29137664 24645602 277088322 298617858 298617858 271845120 343518250 343518250 17748384 4702880 96992704 289519744 350298570 350298570 287318080 273154242 404871436 404871436 476190784 476190784 334112192 940708388 940708388 794245821 794245821 192363453 487149665 837948387 837948387 707015825 707015825 673266692 679331257 679331257 600408909 405473294 259544116 303105126 303105126 140059138 310977582 398459130 398459130 357565008 120796032 268550154 268550154 71943464 618214762 875246859 875246859 280561174 439563030 439563030 433136358 963641826 963641826 1067099265 1067099265 651571866 691485939 888645355 891812192 891812192 96270464 374456832 374456832 69658000 77459016 83784064 83784064 71862792 200343552 200343552 404967701 600103331 600103331 681629700 681629700 858986799 858986799 773077532 773077532 664609835 664609835 734228600 871816179 871816179 705242133 840758301 840758301 604686866 67182600 118594220 445723210 445723210 742430381 742430381 758870297 908755254 908755254 788393949 788393949 284059879 798772833 798772833 964997380 964997380 866254878 64562928 362391345 609297409 609297409 568595536 669711193 669711193 825856322 825856322 27494211 395126224 636694218 636694218 342138281 67892232 120063288 651094844 651094844 131725069 270773668 270773668 223863652 181810692 121775104 33702960 8985248 277659376 304057104 318645746 318645746 290382898 642494512 642494512 629403753 1051992435 1051992435 302063634 327226162 327226162 313660242 67321050 564439408 592728161 592728161 551762113 377618778 849282976 849282976 288917130 851771785 851771785 581230451 570045617 600490472 600490472 822660098 822660098 393774112 315106376 315106376 355508338 355508338 615553675 615553675 639686022 952199927 952199927 898638986 913454224 913454224 491906192 476708916 673417262 879227265 879227265 696359059 435415273 693135706 966530642 966530642 854466202 906759983 906759983 357176517 688260660 702681573 703860433 703860433 739135937 739135937 558931968 272269396 276437262 276437262 428900372 428900372 391284334 264383028 264383028 282193984 308611346 308611346 272814210 292780256 312475986 330748826 330748826 438428208 438428208 321092118 412360794 979705746 979705746 512558981 17132896 50333816 75761736 218132584 218132584 109283412 101446680 189453492 189453492 323434696 323541240 323541240 281764920 310801416 363272522 363272522 94278730 363856746 363856746 389637890 389637890 392070674 392070674 381294426 381294426 53007306 345118354 373309594 373309594 298484930 337978394 337978394 219957660 400722138 400722138 341392986 122706336 290343138 298224176 497058258 497058258 456072500 304972486 146913154 414897990 414897990 512926102 512926102 298244322 289855650 289855650 258216722 404217934 1009465231 1009465231 763312957 656503161 654360633 869647285 921573105 921573105 1058844119 1058844119 506569370 457819583 457819583 1058477759 1058477759 403294564 686312616 686312616 654118089 654118089 830866434 830866434 752824485 940103426 940103426 763939185 763939185 1034699979 1034699979 417542279 880939279 997077351 997077351 621940321 524299916 526454175 526454175 214634276 690753102 742470980 742470980 951383050 1051146591 1051146591 775348802 392828346 392828346 991242544 991242544 811083400 811083400 67699723 541799553 707998725 707998725 577975185 1003998488 1003998488 774021935 141131524 139888768 149187008 149187008 51644976 676595253 731981152 731981152 671232117 694919767 842467270 842467270 844167893 844167893 810436418 411370898 411370898 428679504 428679504 290307426 59714672 302723184 302723184 299504368 685569162 918349911 918349911 11179584 927777154 927777154 537923585 563270144 563270144 539119971 817137970 907809094 907809094 537436230 738320397 738320397 469584022 881073386 1036985783 1036985783 544762160 450162300 287099936 287099936 52191232 327255216 327255216 334054832 334054832 148779680 148779680 17628288 30199008 30199008 30593760 51774144 51774144 36056096 36056096 13245696 9706176 107808256 107808256 178243280 243011484 243011484 212407828 147799236 80093272 105641112 105641112 74787720 99760608 99760608 33344320 115772808 314988754 380687058 380687058 488082478 631131193 686012067 686012067 440476043 971055522 971055522 308346971 1055640275 1055640275 816690608 998557815 998557815 1047593740 1047593740 948505474 948505474 515416692 515416692 865602295 980721060 980721060 979638006 993800336 993800336 1002108370 1002108370 195212672 426707170 426707170 566822594 832268115 832268115 539247504 577428466 577428466 273762578 302254098 371575692 371575692 356941826 356941826 293771392 466884680 466884680 199821248 369789048 398206816 398206816 311962624 311962624 281125378 289770114 289770114 324012576 324012576 323225778 303301280 172039380 172039380 160638400 160638400 424763249 424763249 405314130 405314130 404514135 711689942 711689942 197759501 1012072792 1012072792 934618797 592186545 403246137 32985353 256038881 721659000 721659000 669292372 712468608 712468608 680006300 680006300 246548769 209846348 270610690 270610690 205728198 580127492 580127492 444917966 444917966 729842236 729842236 613466697 949503767 949503767 709195269 1032041532 1060538185 1060538185 861183063 994365474 994365474 335587749 231489888 557058853 557058853 304093252 579502166 909917891 909917891 898839601 854664147 1000936818 1000936818 978035992 805859174 1042951672 1042951672 790209105 790209105 317330180 747920679 747920679 716553438 287710118 287710118 319030034 961231847 961231847 907559011 907559011 1011669159 1011669159 523405713 196092468 196092468 89419244 368545408 368545408 52089872 67686400 210145288 210145288 135188044 546341002 1041502847 1041502847 1031850677 988718129 549212042 549212042 143132620 52767024 235529244 542114356 1010934929 1010934929 1046110752 1046110752 871509578 971841597 1016074015 1016074015 862813048 862813048 614826896 614826896 173573988 315435720 417719494 603988265 603988265 613442121 613442121 540514656 8652864 35009296 69685146 437291530 437291530 376214792 512641170 512641170 458626032 458626032 189221606 26789472 327616272 327616272 24802688 36550160 60707984 60707984 14910816 27803072 439310155 931550247 931550247 692109477 603599275 864913935 864913935 626231369 626231369 264268476 972410048 972410048 951676871 852979537 832577060 1070884869 1070884869 411734084 595614313 595614313 538003476 546517587 546517587 889647683 889647683 626152048 572621486 1040638545 1040638545 964138485 964138485 736150676 737133713 737133713 562306226 922755072 922755072 892427226 858733875 577187762 913561571 913561571 554180875 554180875 345018146 31873344 553474913 553474913 542688897 875177811 875177811 855216906 495299568 1062013465 1062013465 383139592 383139592 862184016 862184016 538091810 1068043370 1068043370 957316262 495020284 495020284 348132354 348132354 268989582 268989582 143360000 143360000 46401744 46401744 47395536 458699532 458699532 364329834 448270908 448270908 363468138 222142242 185720852 185720852 138084644 199489284 199489284 250798294 416924254 416924254 332905080 332905080 356550762 1040673395 1040673395 421841190 558299203 591935784 925578555 925578555 913784237 905777980 1019042604 1019042604 937918995 711344672 460986080 279406992 170954946 857883475 979432210 979432210 671475717 273618082 147925924 147925924 280896336 286912336 589691140 589691140 560189956 37057600 37057600 17469696 17689632 24420352 135331889 593960485 692401057 692401057 673933092 267198728 686743192 686743192 626169597 612658777 612658777 541197755 1054392825 1054392825 580961999 1041270558 1041270558 556811347 482879740 482879740 957721410 973941783 973941783 689084271 1046614431 1046614431 979493271 1042309256 1042309256 403942454 687260167 687260167 450751074 555797717 555797717 140706244 14680512 813615070 953180021 990732740 990732740 1042284063 1042284063 821452186 1040335981 1040335981 923321403 890031658 890031658 840223261 840223261 605570164 605570164 356645000 578887730 578887730 608335145 608335145 603684065 603684065 582681840 650974756 751766988 751766988 673722277 889448461 889448461 779781000 779781000 1059267903 1059267903 927093119 927093119 105906840 417358592 425661948 425661948 74296778 27087142 358051222 358051222 1040744673 1040744673 642852292 642852292 539228441 953325351 953325351 407175362 806733896 806733896 571492376 638847513 638847513 67371537 829260308 829260308 406439712 404046260 423305984 423305984 420090918 460959286 460959286 147570418 187571508 415537076 415537076 195841842 95621728 407244944 407244944 204736516 256388904 256388904 239864988 240000188 256642236 256642236 54054520 228276356 228276356 40625296 170913028 170913028 171539344 171539344 208896 208896 16986112 25520256 29409504 30263904 30263904 16482048 16661440 57926656 139824176 190441140 190441140 61737300 37791552 37791552 360031313 360031313 865542811 897831044 897831044 362017386 746646698 746646698 744414861 617161929 617161929 1016548360 1016548360 298679400 420514816 420514816 178996352 178996352 433723110 433723110 378406463 773898525 1042862621 1042862621 742250627 576840081 497259016 590059177 600190211 600190211 416371291 533722982 723645240 723645240 73400336 73400336 42352960 218153024 797366564 797366564 723517749 501250048 1025712238 1025712238 890440971 685552070 685552070 745264264 745264264 1009080494 1009080494 778253685 778253685 519779074 908723531 908723531 116279553 666556281 666556281 652221609 269551643 386263568 823392424 903445547 903445547 847434867 357729960 357729960 658641081 658641081 128217861 586441161 586441161 688935044 688935044 875666216 875666216 869525655 537191716 537191716 110500440 243683665 247857733 547801557 547801557 686479700 686479700 613686976 224395784 224395784 202656300 202656300 137937796 30561600 30561600 25866308 31926880 31926880 545522245 545522245 154824480 6658052 679813632 680546821 680546821 9280900 554310433 554310433 32116320 32116320 13317536 14098496 14098496 30487424 30487424 29485984 29485984 24675360 277088322 298617858 418411364 418411364 389274538 343518250 144705268 144705268 246465628 289519744 350298570 350298570 287318080 273154242 275402114 275402114 162051332 467882480 467882480 940708388 940708388 439620401 677307446 677307446 589701428 589701428 575973808 575973808 328488613 673266692 673266692 574947749 566253940 566253940 259544116 247536169 798106189 798106189 684985029 248395429 588129848 629679905 788181568 798119056 798119056 693634725 618214762 875246859 875246859 426246146 439563030 439563030 433136358 963641826 1040746030 1067099265 1067099265 856351976 856351976 888645355 891812192 891812192 386874426 386874426 374456832 346373594 346373594 323244992 323244992 71862792 200343552 200343552 301080962 303284890 396597626 422364860 422364860 588452691 638632473 746215320 746215320 604606832 604606832 734228600 734228600 661076409 705242133 840758301 840758301 604686866 154923276 185500840 185500840 88115224 72352392 75137808 168216624 289688580 289688580 38722704 194239648 194239648 143913540 149996484 152737248 152737248 65737472 64562928 362391345 609297409 609297409 560322473 294920418 815462529 825856322 825856322 539899715 656462393 656462393 636694218 440196584 707447421 707447421 651094844 651094844 926861956 926861956 270773668 149156292 199476584 199476584 87630788 14857776 277659376 296477826 313008388 466416742 466416742 198977039 599481154 599481154 159182501 875976633 995936918 995936918 505881904 505881904 307306496 302851344 302851344 20060704 377618778 377618778 390408378 390408378 288917130 851771785 851771785 581230451 570045617 600490472 600490472 822660098 822660098 393774112 331424872 341836170 341836170 20449146 112345218 305398296 639686022 639686022 349311690 898638986 898638986 491906192 491906192 476708916 673417262 879227265 939923068 939923068 934544251 693135706 966530642 966530642 854466202 906759983 906759983 456395415 1033897012 1033897012 792597192 792597192 739135937 739135937 558931968 268386300 303202848 303202848 239728256 236065308 131500180 264383028 264383028 419680300 434358710 434358710 128425382 54198568 37753664 298297920 298297920 178274308 278988854 528492816 618948971 618948971 578265738 1011077575 1011077575 1007097877 1007097877 925050327 891884843 794347197 794347197 541597868 189453492 323434696 323541240 323541240 281764920 310801416 310801416 81752192 81752192 298519840 367998050 367998050 383039872 383039872 272708696 381294426 381294426 53007306 345118354 373309594 373309594 32903456 337978394 442912984 442912984 400722138 449494592 449494592 77520456 77520456 593506853 593506853 731575684 731575684 574861732 574861732 981676119 981676119 893611086 893611086 456013110 456013110 359959428 359959428 404217934 558763568 575804049 575804049 554835193 503154308 869647285 921573105 921573105 704906510 210774050 152117796 470210574 470210574 269507084 357930664 357930664 294963680 523061052 523061052 991169046 991169046 830866434 329068146 940103426 940103426 394602618 394602618 411846668 411846668 276873472 665333390 685312533 685312533 621940321 524299916 827066816 827066816 666905799 559227951 742470980 742470980 951383050 1051146591 1051146591 775348802 34128960 42483728 92536904 406375410 406375410 807486756 807486756 470875947 426895428 426895428 289135010 198042848 446663780 514874264 514874264 139888768 149187008 149187008 38430464 198728840 198728840 72484660 53601072 10601936 48816448 672163840 672163840 409175442 181209478 411370898 484626894 484626894 428679504 290307426 110531160 302723184 302723184 299504368 685569162 918349911 918349911 11179584 927777154 927777154 537923585 563270144 563270144 539119971 967344660 967344660 907809094 537436230 236857432 814530219 814530219 79718082 337241610 363029576 363029576 611929479 612633739 813875386 813875386 530502384 327255216 268439474 138098436 205034504 205034504 248694032 248694032 145047696 30593760 30593760 20066400 17368608 17368608 13245696 9706176 107808256 107808256 178243280 243011484 243011484 212407828 147799236 80093272 105641112 105641112 46240840 44823888 332204018 332204018 301527602 314988754 380687058 380687058 488082478 488082478 460814838 461921746 461921746 373506330 373506330 261375197 1055640275 1055640275 848872160 538722517 434652770 434652770 495230332 598101636 598101636 438306832 438306832 406061830 635179814 635179814 130155848 993800336 993800336 1002108370 1002108370 195212672 426707170 426707170 589948817 589948817 640558608 640558608 592839056 577428466 434046272 320476722 320476722 389085840 389085840 359086506 293771392 466884680 466884680 374941338 374941338 398206816 398206816 367789312 367789312 394265192 394265192 289770114 277088928 3603424 136560436 147241796 172039380 172039380 160638400 160638400 424763249 424763249 405314130 405314130 404514135 711689942 711689942 197759501 1012072792 1012072792 934618797 592186545 403246137 32985353 256038881 719979417 719979417 669292372 822309802 822309802 629259040 629259040 286431523 209846348 270610690 270610690 205728198 580127492 580127492 273951647 707629411 878602112 878602112 906723239 906723239 447555846 447555846 1032041532 1060538185 1060538185 861183063 994365474 994365474 663604761 662473048 557058853 557058853 969093659 982537808 982537808 909917891 898839601 854664147 758657787 978035992 978035992 921830198 1051272472 1051272472 790209105 790209105 179966338 747920679 747920679 716553438 824606216 824606216 127905030 961231847 961231847 487823889 847515976 847515976 425009068 905509076 905509076 859948173 859948173 810148995 368545408 546836610 546836610 210145288 210145288 135188044 217324501 716619916 716619916 642372396 642372396 263558805 547892689 547892689 97616002 375939434 375939434 338948874 338948874 1046110752 1046110752 871509578 971841597 1016074015 1016074015 862813048 862813048 614826896 614826896 330641760 330641760 291709410 603988265 603988265 613442121 613442121 540514656 277027978 269197184 72503432 67190976 0 376214792 512641170 512641170 402950464 402950464 165798082 165798082 420916230 420916230 62337940 57309104 60707984 60707984 27917952 35021928 403871968 931550247 931550247 624225651 603599275 603599275 276997735 453509800 453509800 621833790 700448869 811798337 811798337 23091808 23091808 1070884869 1070884869 364517412 595614313 595614313 213402966 546517587 546517587 889647683 889647683 626152048 371096452 842672816 842672816 964138485 964138485 736150676 737133713 737133713 606079440 629675681 892427226 916941569 916941569 577187762 913561571 913561571 84025096 345018146 345018146 52902192 52902192 33866752 33866752 227862384 817375715 817375715 495299568 1062013465 1062013465 128325912 38416400 862184016 862184016 538091810 1068043370 1068043370 957316262 495020284 495020284 343017488 910953434 979114068 979114068 774323804 774323804 237574539 717117522 717117522 514693470 514693470 910558960 910558960 870848926 286592616 222142242 476368142 476368142 438939958 438939958 403895088 105915176 41705880 131527312 332905080 332905080 356550762 1040673395 1040673395 335927876 558299203 591935784 925578555 925578555 913784237 905777980 1019042604 1019042604 937918995 711344672 460986080 432160820 322186226 466764452 466764452 422001158 301077798 281245088 281245088 50555312 280896336 286912336 286912336 33494784 33494784 25664480 27648068 176553988 176553988 158733316 135331889 593960485 692401057 692401057 705719900 777569981 777569981 686743192 626169597 612658777 612658777 541197755 939005032 939005032 456687766 1041270558 1041270558 556811347 706404647 706404647 957721410 973941783 973941783 959595142 1046614431 1046614431 979493271 1042309256 1042309256 417373428 687260167 687260167 450751074 555797717 811779586 811779586 821236049 821236049 953180021 990732740 990732740 1042284063 1042284063 821452186 1011351728 1011351728 604054039 705591835 705591835 570999825 50906160 50906160 33987616 32 132547665 567527745 608335145 608335145 603684065 603684065 582681840 650974756 693183141 693183141 673722277 682625856 698559712 698559712 419456750 757085230 891511949 891511949 548557668 548557668 417358592 417358592 436781136 436781136 343934188 520888546 520888546 1040744673 1040744673 642852292 642852292 793513650 793513650 643253945 960807469 960807469 838897787 499175609 440549448 581044224 1070885426 1070885426 829260308 856540708 856540708 945589798 945589798 420090918 302875056 292416930 288156832 187571508 415537076 415537076 195841842 95621728 93549368 204736516 405608072 405608072 405024828 102636172 204596132 204596132 128584944 54054520 228276356 228276356 40471632 174272976 174272976 171539344 258400754 371297626 371297626 350322766 142811282 466616364 466616364 282593762 525151422 525151422 523452918 196115418 196115418 263028244 263028244 143426880 147742788 147742788 937272858 937272858 897831044 897831044 362017386 746646698 746646698 744414861 617161929 617161929 1016548360 1016548360 968890090 968890090 429526048 128848076 191443312 433723110 433723110 378406463 773898525 1042862621 1042862621 742250627 576840081 980353399 980353399 600190211 600190211 416371291 533722982 755333736 755333736 560338306 723702069 723702069 325131585 1020345467 1020345467 492171994 605632451 605632451 538778240 538778240 685552070 685552070 745264264 745264264 1009080494 1009080494 778253685 778253685 667806969 908723531 908723531 208290180 666556281 666556281 652221609 489500203 489500203 438692118 537184257 537184257 537184257 667344605 761626043 761626043 367536390 367536390 956860350 956860350 779150535 688935044 875666216 875666216 869525655 359596571 83317453 110500440 243683665 247857733 547801557 547801557 686479700 686479700 613686976 222110880 222110880 148517604 158008612 159070116 159070116 137053792 25866308 23614885 29058912 684590272 684590272 154824480 0 0 680546821 680546821 9280900 554310433 554310433 32116320 32116320 13317536 10750272 1313280 30487424 30487424 29485984 29485984 24675360 24675360 21866656 418411364 418411364 389274538 149833030 144705268 144705268 246465628 246465628 44565840 121110752 121110752 54526520 15153600 291115137 554605091 554605091 858785843 858785843 58331186 173329044 677307446 677307446 820380770 820380770 853149489 853149489 547840006 629191752 797521013 797521013 778240444 778240444 653178680 620023177 798106189 798106189 684985029 248395429 588129848 629679905 788181568 798119056 798119056 693634725 560486016 1011562969 1011562969 914774766 690227493 793244964 793244964 897417263 1040746030 1040746030 635160042 856351976 856351976 338690826 338690826 64806032 386874426 386874426 116336970 346373594 346373594 323244992 323244992 52438720 15399360 164749974 301080962 303284890 396597626 422364860 953192816 953192816 991040065 991040065 539690482 539690482 558935424 558935424 458091702 458091702 471250540 471250540 339512168 406113030 406113030 512279646 512279646 253871162 988951193 988951193 969891153 289688580 818644519 818644519 218915888 194239648 276583632 423938214 756529486 877536652 877536652 371200602 303133336 69464328 560322473 560322473 294920418 815462529 815462529 539899715 539899715 656462393 887227498 887227498 880805003 880805003 707447421 694679973 1062363962 1062363962 926861956 455395638 455395638 422791202 402674016 153268848 14857776 15238160 296477826 313008388 466416742 466416742 198977039 599481154 599481154 599251968 875976633 995936918 995936918 941296931 505881904 307306496 666513187 666513187 877528824 877528824 563284115 375525786 375525786 316605122 376292544 376292544 289853816 306455232 398273226 398273226 304957274 281616792 366027498 366027498 341836170 341836170 83363034 112345218 125098362 291934008 310382658 310513746 310513746 42016848 42016848 286824052 651171425 651171425 276628092 939923068 939923068 934544251 566977559 566977559 503811606 775996318 775996318 772801053 456395415 1033897012 1033897012 881110527 881110527 664275000 664275000 662402628 662402628 303202848 303202848 76750552 436347782 436347782 215803968 215803968 474405018 474405018 434358710 227567282 184363112 21420192 362314080 362314080 405143406 405143406 528492816 618948971 618948971 578265738 1011077575 1011077575 1007097877 1007097877 963050303 963050303 911076559 794347197 541597868 48021504 51216976 59451520 59451520 54916640 54916640 44369632 44369632 25319552 271755720 367998050 367998050 13899808 17338960 37015216 62966160 62966160 37798624 19008480 19008480 32903456 32903456 302137604 442912984 442912984 442254528 449494592 449494592 113295792 94372200 593506853 593506853 731575684 731575684 574861732 574861732 981676119 981676119 893611086 893611086 456013110 456013110 359959428 359959428 306197195 901841586 901841586 575804049 952513592 952513592 503154308 537266086 537266086 336069669 210774050 152117796 470210574 470210574 292735874 292735874 272235424 118259884 523061052 523061052 991169046 991169046 721748241 721748241 591444900 149974000 609026057 883770447 883770447 809766083 746586189 545333248 148510404 148510404 244979292 254023824 827066816 827066816 666905799 452868621 280234818 280234818 137774970 220315964 220315964 416177990 416177990 174907306 174907306 778617143 778617143 980136371 980136371 470875947 426895428 985933399 985933399 198042848 446663780 514874264 514874264 122743502 1054174175 1054174175 491349366 624844657 624844657 72484660 168178532 717741430 717741430 514323614 573186896 1021333836 1021333836 336151624 484626894 484626894 237031626 110531160 110531160 101849680 10559808 15929984 168464384 335562316 335562316 311427666 646263056 646263056 875615072 875615072 320494872 320658718 967344660 967344660 828256501 828256501 738471819 1007183496 1007183496 904667872 904667872 876424971 770285947 611929479 612633739 813875386 813875386 530502384 264941630 221721172 147395616 205034504 205034504 248694032 248694032 151066660 38536432 38536432 21238960 40795280 92324344 92324344 189605940 190461752 227805804 227805804 217581516 217581516 80154688 80154688 248154256 248154256 204186876 157980960 128184696 332204018 332204018 301527602 279340072 303448736 313557986 313557986 128061816 353147342 461921746 461921746 266503610 258532772 234391628 176989816 848872160 848872160 538722517 434652770 843097984 843097984 724569268 724569268 545001345 438306832 406061830 635179814 635179814 611804166 611804166 479667875 355360328 355360328 74787720 91569560 91569560 589948817 589948817 640558608 640558608 592839056 434046272 434046272 320476722 320476722 389085840 389085840 359086506 156432948 232935888 276459812 374941338 374941338 119808688 119808688 367789312 367789312 394265192 394265192 83886290 23370112 3603424 136560436 147241796 147241796 142894660 142894660 10070516 180753088 180753088 150521796 177491344 177491344 616118792 616118792 704797056 704797056 675823696 879306123 879306123 741212317 219086119 294175842 516523224 516523224 727499108 822309802 822309802 609608193 540330753 496665962 815204954 999107703 999107703 618998217 938570377 938570377 693213726 707629411 878602112 878602112 906723239 906723239 570812794 422173104 422173104 185219696 582353216 582353216 590881832 663604761 663604761 662473048 237817112 237817112 969093659 982537808 982537808 317837891 147590340 549475360 566940897 566940897 359869792 921830198 1051272472 1051272472 439952764 271581358 790156292 790156292 764204396 764204396 824606216 1070260394 1070260394 906846450 906846450 918602563 918602563 958457288 958457288 916169161 916169161 859948173 859948173 810148995 642261146 668522635 668522635 144408064 144408064 143796036 149285316 170644888 698232424 805959047 805959047 263558805 547892689 547892689 512218830 375939434 450475622 450475622 338948874 750117137 750117137 575958512 575958512 388621645 313124116 912337008 912337008 388088448 388088448 330641760 330641760 291709410 291709410 141174848 96807144 344153288 344153288 277027978 269197184 73482640 272765442 272765442 168347158 185338408 185338408 402950464 402950464 363629900 165798082 420916230 420916230 62337940 57309104 57309104 15037360 27917952 68353522 403871968 535958526 535958526 536730878 536730878 513450430 425569924 453509800 453509800 621833790 972096545 972096545 811798337 941677634 941677634 412489808 412489808 364517412 439881064 439881064 213402966 188356404 671171216 671171216 901275719 901275719 619335726 619335726 302840658 440841924 883043998 883043998 731528932 731528932 722982620 722982620 1036742133 1036742133 934172014 934172014 587532681 587532681 128062073 56404224 53476656 52902192 52902192 33866752 33866752 342813730 342813730 183616856 209866940 209866940 390903322 390903322 351668978 351668978 250873922 455977812 455977812 310414374 335929546 335929546 294261858 487273604 910953434 979114068 979114068 774323804 774323804 237574539 717117522 717117522 514693470 540672256 910558960 910558960 870848926 120611000 120611000 476368142 476368142 438939958 438939958 403895088 105915176 31397376 302268672 304400658 310395106 1025507470 1025507470 218155055 12867776 503388608 923795974 923795974 595068849 56624641 20932384 992406772 992406772 163056803 53520388 432160820 432160820 335833984 290590864 290590864 150999060 884633865 884633865 880002315 662845625 847067961 847067961 316909777 810800904 810800904 936125304 936125304 914536507 914536507 628535568 288884512 41764548 16720480 15799104 705719900 777569981 777569981 713944585 126751592 667055032 742590065 748814877 748814877 791381075 791381075 614524104 614524104 606699785 706404647 706404647 272888754 854696662 854696662 959595142 959595142 929120901 576256306 506367494 506367494 417373428 268691648 268691648 283055462 323120322 811779586 811779586 821236049 821236049 44159123 34151040 196356160 196356160 14036912 318096460 575267954 742990989 742990989 1015742086 1015742086 681500260 698226261 698226261 922340315 922340315 131714962 131714962 124305080 37858192 118900264 118900264 75134104 120567968 154399524 154399524 160596448 424675456 494313548 494313548 67317768 1009391080 1009391080 968884455 548557668 548557668 498112810 498112810 436781136 436781136 499713058 525338352 525338352 765006024 765006024 693843621 420428838 793513650 793513650 643253945 960807469 960807469 1040339184 1040339184 583147626 865119332 1070885426 1070885426 336111328 856540708 856540708 945589798 945589798 302875056 404038722 412566896 412566896 8417120 334561522 334561522 334486770 334486770 120976416 130146552 405608072 405608072 405024828 102636172 50147280 104605488 133695480 133695480 48260352 95804800 146981344 218629164 218629164 164251024 258400754 371297626 371297626 350322766 142811282 466616364 466616364 287065952 525151422 525151422 523452918 288051496 196115418 263028244 263028244 153826596 147742788 351340097 937272858 1033648684 1033648684 1025523850 1025523850 815978761 815978761 679561478 968180841 968180841 614494022 953484366 968890090 968890090 429526048 65545216 191443312 191443312 149889172 304365576 371509530 371509530 613022857 613022857 518104024 980353399 980353399 118929824 95161704 281654220 429316710 755333736 755333736 560338306 723702069 723702069 325131585 1020345467 1020345467 492171994 605632451 605632451 283387466 271648386 537078152 547389632 751321473 751321473 476349453 325330566 630091920 667806969 667806969 547410688 812663361 812663361 208290180 121844216 289120694 489500203 489500203 438692118 438692118 150026753 425422012 667344605 761626043 761626043 367536390 367536390 956860350 956860350 779150535 866673634 866673634 734977269 734977269 694539524 724285945 724285945 201504772 201504772 81920392 81920392 67129544 203820100 203820100 222110880 222110880 148517604 158008612 159070116 159070116 137053792 20882976 6444160 27825504 684590272 684590272 680166400 679551045 679551045 13446336 13446336 8916740 10355648 12586240 12586240 10621248 2753600 0 0 1048832 3146496 3146496 3146496 32243718 415834854 445754070 445754070 418116854 418116854 330209572 145702740 145702740 86774560 317857328 365039850 365039850 278541048 374618074 374618074 351997578 554605091 554605091 864293744 864293744 558143441 592580785 592580785 326899120 820380770 820380770 853149489 853149489 547840006 629191752 797521013 797521013 778240444 778240444 653178680 620023177 616923924 260315196 173015616 173015616 43322004 45088832 45088832 725250512 725250512 414716062 512778830 1011562969 1011562969 914774766 690227493 793244964 793244964 897417263 897417263 1022628749 1022628749 962131144 962131144 824779044 897394144 897394144 345629024 98701800 83350440 111259416 111259416 95930896 95930896 52438720 15399360 137863204 137863204 282069608 344197194 563088340 953192816 953192816 991040065 991040065 981700766 981700766 558935424 558935424 458091702 458091702 471250540 471250540 339512168 406113030 406113030 512279646 512279646 253871162 988951193 988951193 969891153 247857092 818644519 818644519 218915888 95309636 276583632 423938214 756529486 877536652 877536652 538834433 555084321 555084321 543297921 543297921 318312099 579058540 669514233 669514233 859541105 859541105 887227498 887227498 883364863 916732107 916732107 694679973 1062363962 1062363962 918887619 855975987 855975987 579326050 402674016 153268848 16921136 34560224 46654640 46654640 33827888 164151460 164151460 870959600 870959600 599251968 599251968 759293068 941296931 941296931 226370956 226370956 666513187 666513187 877528824 877528824 608174217 375525786 376117056 376117056 351733336 289853816 289853816 272509290 398273226 398273226 304957274 272663434 366027498 366027498 335545856 335545856 84969984 94901152 114187464 913969060 913969060 427186849 910041608 1007378457 1007378457 286824052 651171425 793268328 793268328 614695003 918642878 918642878 882981247 882981247 581145454 775996318 775996318 772801053 1026943791 1026943791 510083098 881110527 881110527 664275000 664275000 662402628 662402628 510789470 376586182 236464780 436347782 436347782 382280922 215803968 474405018 474405018 356835976 352398992 377360026 377360026 362314080 362314080 405143406 405143406 296085858 410441954 682309336 684690949 684690949 362903722 1025473752 1025473752 963050303 963050303 911076559 410651052 410651052 48021504 282402824 287025256 287025256 4904064 31794176 273265866 273265866 29027530 93418600 93418600 283577858 283577858 336547112 336547112 29048320 317172850 317172850 114196792 327651186 354943832 354943832 303170962 258626380 512225356 512225356 369498138 319101472 362072682 362072682 226597550 128975520 180040976 180040976 36048896 436283442 436283442 285217296 515132526 515132526 436194098 427951028 229388360 269486918 306197195 901841586 901841586 378270810 952513592 952513592 843055251 843055251 881379711 881379711 271846146 557770526 791884605 826502078 826502078 353438250 353438250 285813028 588614983 941113893 941113893 405622391 799777055 799777055 975274769 975274769 843039123 883770447 883770447 952926438 952926438 545333248 479136258 479136258 471075342 471075342 634717582 940448775 940448775 274929780 280234818 284262274 311702224 327229554 327229554 416177990 416177990 174907306 174907306 778617143 778617143 980136371 980136371 367785447 271524137 985933399 985933399 980483045 980483045 954963911 526609887 426099110 1054174175 1054174175 578588233 624844657 624844657 56033312 539543560 717741430 717741430 812743874 812743874 1021333836 1021333836 520236080 520236080 376489804 440320970 440320970 18869168 54155360 54155360 324905632 364705220 364705220 1039309764 1039309764 1031665473 1031665473 875615072 875615072 320494872 320658718 773201695 773201695 828256501 828256501 738471819 1007183496 1007183496 904667872 904667872 934807964 934807964 480779817 21632160 42344010 377638422 377638422 332812092 332812092 505628572 507048624 507048624 147009696 151066660 151066660 142612672 136576820 174815956 197197904 197197904 92324344 239749884 267491848 267491848 227805804 217581516 217581516 80154688 80154688 248154256 248154256 204186876 197764368 128184696 126195968 17376256 279340072 279340072 303448736 477385660 477385660 406114956 453433426 453433426 249610716 258532772 258532772 264977987 658995027 658995027 653674053 106172947 1063369453 1063369453 1036698339 1036698339 724569268 545001345 189530933 790648021 790648021 422576996 691349354 904909705 904909705 923234520 923234520 177750184 255233232 255233232 133103504 133103504 59787888 59787888 54187808 303314480 437526720 437526720 169419572 193071326 340940954 499423828 861946291 861946291 497507286 728971428 782279459 782279459 668289129 810879547 880093979 880093979 903391968 903391968 280028624 184633984 422523330 422523330 422055398 422055398 416582224 416582224 283200336 306143891 306143891 299747731 299747731 258139193 681990904 704797056 906234053 986254364 986254364 940059666 940059666 219086119 294175842 516523224 516523224 1024950326 1024950326 607892505 607892505 884414044 884414044 823995939 999107703 999107703 618998217 938570377 969875489 969875489 426585510 846531316 846531316 430705331 570812794 570812794 908206952 908206952 596578901 236457243 280101970 280101970 39062000 78381076 123781744 233608508 233608508 70044936 33554448 33554448 604508168 604508168 549475360 566940897 566940897 84749352 123081232 123081232 34740920 824320291 824320291 790156292 962773927 962773927 855744560 557986221 1070260394 1070260394 906846450 906846450 918602563 918602563 958457288 958457288 916169161 916169161 827822017 903049794 903049794 829424128 829424128 668522635 506141700 506141700 430193766 361635936 740629583 872728587 872728587 805959047 224272390 512736426 512736426 512218830 322975856 450475622 450475622 6952320 440185333 440185333 848860738 848860738 722657804 546566721 912337008 912337008 941224468 941224468 201692500 201692500 147455168 147455168 141174848 81975560 92427368 92427368 561146337 561146337 591931105 591931105 409470852 1061159182 1061159182 941096987 694429865 694429865 778668300 778668300 443073710 443073710 49885138 39888784 39888784 4443136 24197184 68353522 315776136 916381275 916381275 849809449 931670699 931670699 425569924 822576435 822576435 602696782 1033508366 1033508366 541766466 941677634 941677634 857155595 857155595 471153730 562566153 773923928 773923928 873014283 873014283 671171216 901275719 901275719 675917207 619335726 653751808 653751808 883043998 883043998 731528932 731528932 722982620 722982620 1036742133 1036742133 934172014 934172014 587532681 587532681 574363225 574363225 15802656 26479200 50932816 50932816 316575984 342813730 377263560 377263560 270846210 311936288 390903322 390903322 351668978 351668978 366209232 455977812 455977812 310414374 335929546 335929546 294261858 487273604 487273604 144580296 360719470 360719470 10329760 98309152 666783408 666783408 541852736 541852736 540672256 174077749 96292288 120611000 278573648 278573648 46532818 33738768 37939360 71358480 75531866 303613458 431754234 431754234 304400658 1025507470 1025507470 666919101 666919101 662997987 923795974 923795974 660090621 660090621 822093556 992406772 992406772 978356636 773252012 506549136 948241729 948241729 407011476 407011476 412141003 884633865 884633865 880002315 662845625 847067961 847067961 316909777 810800904 810800904 936125304 936125304 914536507 914536507 628535568 288884512 553856385 553856385 647018249 647018249 652552665 713944585 713944585 570474513 667055032 742590065 748814877 748814877 791381075 1008215992 1008215992 995165639 998900019 998900019 351442202 46864336 854696662 854696662 818554228 75731830 515924634 515924634 506367494 506367494 511980266 682584977 682584977 283055462 585669875 807732158 807732158 276034434 307221772 307221772 894740729 894740729 901873063 901873063 1009339297 1009339297 887145751 787064013 1015742086 1015742086 701026525 757469469 815974543 922340315 922340315 647415937 566237896 22155936 22155936 6816128 6816128 166126324 166126324 154399524 154399524 160596448 160596448 413635780 543317290 622928169 1009391080 1009391080 968884455 99226895 287982984 498112810 498112810 258091504 487402540 499713058 525338352 525338352 765006024 765006024 693843621 693819045 693819045 337646064 337646064 367108226 515934322 1040339184 1040339184 583147626 865119332 865119332 984721702 984721702 956998993 59425889 278527906 434505668 467141730 467141730 412566896 412566896 303299792 291762594 35857152 334486770 334486770 120976416 130146552 212996792 212996792 135933952 135933952 71437980 104605488 133695480 133695480 35838528 143359560 146981344 218629164 218629164 96917736 255205016 255205016 40390876 83937320 124439448 124439448 287065952 506473536 515714910 515714910 447778326 341428894 95085794 139162656 153826596 153826596 19989828 351340097 351340097 1033648684 1033648684 1025523850 1025523850 815978761 815978761 890013224 968180841 968180841 614494022 953484366 953484366 701237446 466070352 466070352 245745836 413919254 413919254 351474030 371509530 371509530 302495232 302495232 204101386 235996160 235996160 12324680 71044872 71044872 68207112 75530816 75530816 138561012 556970080 556970080 167831572 167831572 74433176 261049282 274676852 585184793 585184793 303577307 295028952 547389632 751321473 751321473 476349453 437289784 1073394484 1073394484 942224725 784701219 812663361 812663361 417030418 654520872 654520872 588645742 588645742 405871392 473867272 473867272 1661708 4640 5253136 54999216 626147750 1025722123 1025722123 727996198 727996198 866673634 1046355092 1046355092 775645410 694539524 1064587197 1064587197 201504772 201504772 679614929 679614929 541347920 545446276 545446276 78131584 78131584 76599048 72666816 14812160 14812160 280134276 415012672 415012672 407180550 407180550 940157060 940157060 679551045 807378368 807378368 282905217 10226368 19537888 19537888 19530112 16777248 15340992 17830848 17830848 13720576 13945536 14937728 14937728 32243718 415834854 445754070 445754070 418116854 418116854 330209572 162190692 162190692 260231004 317857328 365039850 365039850 278541048 374618074 374618074 351997578 340410320 8427648 864293744 864293744 558143441 592580785 592580785 326899120 554636018 554636018 305273089 598028576 598028576 34564464 33554480 33554480 2745600 666469032 666469032 583034321 583008465 673653009 673653009 264657473 713238616 713238616 345097146 1044505308 1044505308 414716062 512778830 512778830 765208429 765208429 33955621 169869488 169869488 692458348 692458348 1022628749 1022628749 962131144 962131144 824779044 897394144 897394144 345629024 283981898 293929218 293929218 285421602 285356066 285441698 285441698 274575392 20761344 268568773 943790245 943790245 563088340 604990006 817800265 817800265 979395910 981700766 981700766 304897367 959404291 959404291 876279128 876279128 50536480 50536480 17351712 84534272 84534272 67683336 83886120 83886120 68602112 149591244 149591244 156053532 186410504 186410504 95309636 157604964 217240524 228692512 228692512 32676193 538834433 555084321 555084321 543297921 543297921 318312099 579058540 669514233 669514233 859541105 859541105 737286584 737286584 883364863 916732107 916732107 699973059 478833379 918887619 918887619 855975987 855975987 579326050 51580960 51580960 16921136 41666304 275248514 309325876 464205174 464205174 189232820 870959600 870959600 543424451 340404412 759293068 759293068 648034608 874974507 874974507 613157961 817889475 817889475 661197128 608174217 69087056 376117056 376117056 351733336 89806224 89806224 117584744 117584744 90019168 51152648 352330904 390144186 390144186 302596608 80217288 135831227 993412567 993412567 913969060 913969060 793665170 1011803055 1011803055 1007378457 661519508 644336081 793268328 793268328 614695003 918642878 918642878 882981247 1008732268 1022306796 1022306796 67905545 678789290 1060900671 1060900671 1037306917 736365045 552737756 119537872 119537872 239111954 510789470 510789470 376586182 236464780 236464780 382280922 382280922 97704376 277346390 277346390 418464034 418464034 377360026 377360026 387796024 387796024 302198802 246992424 246992424 410441954 885524310 1014898575 1014898575 810484557 1025473752 1025473752 199422308 264290556 477803680 477803680 307926672 307926672 282402824 287025256 287025256 58814496 58814496 273265866 273265866 29027530 93418600 93418600 283577858 283577858 336547112 336547112 283258882 317172850 317172850 114196792 327651186 354943832 354943832 303170962 258626380 512225356 512225356 369498138 335577322 366129172 374568064 809607197 809607197 1058033666 1058033666 397215410 673637753 993890212 993890212 712953095 167898292 49431040 49431040 7901648 269486918 270946564 820705755 820705755 485720394 704906773 817889360 843055251 843055251 881379711 881379711 859709043 859730233 1044115845 1044115845 826502078 744316557 631601168 631601168 588614983 941113893 941113893 405622391 799777055 799777055 975274769 975274769 843039123 828411078 828411078 952926438 952926438 71958538 684202496 684202496 790519372 790519372 634717582 940448775 940448775 530467522 530467522 284262274 311702224 327229554 327229554 93061682 85798440 87032616 1000375616 1000375616 874830396 993137463 993137463 632326895 592894641 384894773 558851704 980483045 980483045 954963911 626213251 426099110 946520317 946520317 621948936 621948936 707856276 740559117 740559117 539543560 105726556 812743874 812743874 251534488 139420940 520236080 520236080 376489804 440320970 440320970 119783648 119783648 54155360 324905632 364705220 396662989 1039309764 1039309764 1031665473 1031665473 673204233 722583584 722583584 705765909 596369973 579548241 725649905 725649905 277357508 277357508 555805152 555805152 292504167 943106789 1046087835 1046087835 776492184 776492184 726848644 377638422 332812092 332812092 505628572 507048624 507048624 256762572 130341540 142612672 142612672 136576820 174815956 197197904 197197904 37772976 239749884 267491848 267491848 174137748 175712148 175712148 71448576 71448576 168189968 170154212 197764368 197764368 29984130 306258098 306258098 269033522 352659498 352659498 477385660 477385660 442947754 453433426 453433426 254726748 485713694 485713694 380242812 658995027 658995027 1058015216 1058015216 1063369453 1063369453 1036698339 1036698339 886383809 570832036 941471155 941471155 790648021 422576996 691349354 904909705 904909705 923234520 923234520 177750184 255233232 255233232 133103504 133103504 121716128 121716128 60831056 269552640 437526720 437526720 286074400 286074400 340940954 499423828 861946291 861946291 497507286 728971428 782279459 782279459 668289129 810879547 880093979 880093979 903391968 903391968 280028624 418832364 422523330 422523330 422055398 422055398 416582224 416582224 283200336 306143891 306143891 374351470 511885584 1014108544 1014108544 681990904 906234053 1019069413 1019069413 940059666 940059666 834222968 834222968 1051199472 1051199472 1024950326 1024950326 607892505 607892505 884414044 884414044 823995939 588386865 588386865 267393982 440355887 969875489 969875489 426585510 632394088 768109993 768109993 862528728 862528728 908206952 908206952 596578901 236457243 280101970 565568640 704956961 708609280 708609280 147338676 147338676 786898277 786898277 689152784 689152784 604508168 537531393 147249760 214317088 214317088 542543966 571544168 571544168 824320291 824320291 809017899 962773927 962773927 855744560 557986221 557986221 844755702 884531337 884531337 722478049 547880992 547880992 496083410 420633219 969252132 969252132 903049794 903049794 829424128 829424128 653400995 506141700 506141700 430193766 361635936 740629583 872728587 872728587 324026772 414526278 414526278 307368594 307368594 726991307 726991307 461997110 461997110 440185333 520850139 848860738 1007195870 1007195870 546566721 546566721 823496786 941224468 941224468 212745792 67881804 25588768 25588768 81975560 81975560 92427368 92427368 561146337 561146337 591931105 591931105 409470852 1061159182 1061159182 941096987 694429865 694429865 948175035 948175035 443073710 650854737 819533819 819533819 599562033 599562033 576715475 878598800 878598800 916381275 916381275 857464458 931670699 931670699 107757714 822576435 822576435 602696782 1033508366 1033508366 98041990 291377668 291377668 857155595 857155595 471153730 562566153 1024551942 1024551942 873014283 873014283 615351520 421937565 675917207 675917207 545773404 653751808 653751808 702615657 702615657 788039713 898155860 898155860 227609607 773604503 773604503 545653161 545653161 563087680 563087680 831862190 831862190 969147650 969147650 170472732 170472732 431112932 431112932 889212208 1030351379 1030351379 1015291107 649524587 182981833 182981833 110176192 742649631 1039849978 1039849978 982942573 704068280 213393096 235558116 235558116 203956064 203956064 27195140 203241512 211634952 315923722 315923722 617241824 617241824 541852736 114885122 302007914 302007914 105185946 281365712 386884746 386884746 319706674 331560740 331560740 75531866 303613458 431754234 431754234 287605104 373328584 373328584 666919101 666919101 662997987 662997987 541139073 660090621 660090621 822093556 822093556 978356636 978356636 773252012 573636300 948241729 948241729 407011476 407011476 412141003 619365447 686343621 686343621 409575491 359269632 141562862 10227264 10227264 26214400 26214400 4457152 8652864 14682496 21699040 29444544 553856385 602554016 647018249 654397873 654397873 131839261 563168072 570474513 720637480 720637480 714933201 199316320 587387093 1011990538 1011990538 995165639 998900019 998900019 335733455 10016 20522784 28154884 134964484 146776132 515203112 515203112 180425762 180425762 511980266 682584977 682584977 269423378 585669875 807732158 807732158 684698316 307221772 307221772 894740729 894740729 901873063 901873063 1009339297 1009339297 887145751 787064013 910811220 1019741391 1019741391 757469469 815974543 815974543 647415937 647415937 566237896 93035632 22984864 22984864 195995732 195995732 188854624 57416992 551341761 678741091 837099718 955967367 955967367 770913261 1029710058 1029710058 631977540 677515653 677515653 280654224 280654224 491469130 491469130 487402540 437586450 488178178 488178178 268699650 576229428 693819045 693819045 337646064 337646064 367108226 515934322 818036944 818036944 346079562 346079562 312492056 984721702 984721702 956998993 737675253 737675253 713606048 467141730 467141730 53511106 303299792 303299792 291762594 39916544 305487924 305487924 501860100 525068134 525068134 212996792 135933952 184770888 184770888 125174712 86259476 82388424 35838528 143359560 143359560 67366920 207521232 246864732 246864732 121896416 113633496 113633496 52545536 474356292 474356292 506473536 515714910 515714910 447778326 341428894 74017666 35833172 35833172 144879936 144879936 220556800 220556800 364266624 364266624 93325384 94636392 564398376 564398376 890013224 890013224 623166788 873464331 873464331 347607018 347607018 466070352 466070352 245745836 413919254 413919254 351474030 351474030 378165832 574030795 574030795 204101386 1041970207 1041970207 172407588 172407588 403726852 454107986 454107986 1026142778 1026142778 1024030028 586907748 583744197 569622756 194517924 194517924 100730889 585184793 585184793 303577307 295028952 323043953 334334395 334334395 761801672 761801672 1073394484 1073394484 942224725 784701219 365544432 417030418 417030418 654520872 654520872 679961631 679961631 405871392 473867272 473867272 518258062 897244323 897244323 799169722 626147750 1025722123 1025722123 605868984 321359641 304145769 1046355092 1046355092 775645410 494461266 1064587197 1064587197 179704597 179704597 679614929 679614929 541347920 545446276 545446276 14864832 14329728 14329728 9441984 14812160 14812160 280134276 415012672 415012672 407180550 407180550 940157060 940157060 275082309 807378368 807378368 282905217 10226368 19537888 19537888 276699938 276699938 18617856 285531682 285531682 19339040 19339040 289140994 289140994 23106592 403990276 442049206 442049206 325232772 213904748 213904748 162190692 162190692 260231004 260231004 34771008 68222072 68222072 88121864 88121864 69941505 572945041 572945041 37911233 586219587 850539123 850539123 587344241 54136321 823073091 823073091 305273089 598028576 598028576 115880232 587739193 587739193 28278592 666469032 666469032 583034321 601656657 673653009 673653009 264657473 713238616 713238616 345097146 1044505308 1044505308 795521686 795521686 484313809 1013778820 1013778820 851327679 647565590 647565590 925326168 925326168 831644259 531942270 531942270 415500712 343238190 293880992 293880992 223298742 283981898 293929218 293929218 285421602 285356066 285441698 285441698 425448192 425448192 272727046 943790245 943790245 541960325 604990006 840438800 840438800 979395910 979395910 686531364 396738851 959404291 1001998185 1001998185 876279128 493478110 280235264 505792782 505792782 437990934 437990934 245912642 341045964 341045964 271110964 97781760 97781760 130733272 130733272 56810200 76583112 76583112 28877600 73580080 73580080 84722728 109291544 663467362 808113475 808113475 61236323 586359180 586359180 485259327 92987336 85909032 642742705 642742705 601684881 652258550 699973059 842284459 1050473434 1050473434 851659594 851659594 339197077 433298000 433298000 135612928 14849472 41666304 275248514 309325876 464205174 464205174 639446553 639446553 792454724 792454724 813687258 813687258 648034608 926206482 926206482 874974507 829687504 866987379 866987379 823136578 823136578 812855578 812855578 74265280 74265280 83456352 83456352 91265696 91265696 90019168 39387328 352330904 390144186 390144186 358173352 89433770 352322824 993412567 993412567 311954913 276844129 793665170 1011803055 1011803055 661519508 661519508 644336081 157190292 941934208 941934208 504611880 848930358 1007191296 1008732268 1022306796 1022306796 489593922 489593922 1060900671 1060900671 1037306917 736365045 552737756 697879556 740694285 759224736 759224736 344992388 344992388 464824336 464824336 431804262 431804262 97704376 277346390 277346390 418464034 511532016 511532016 372503322 387796024 387796024 418536092 440215138 477741438 477741438 885524310 1014898575 1014898575 810484557 658847042 658847042 786308309 1058773853 1058773853 477803680 307926672 307926672 228558432 119109704 127215152 127215152 58814496 19244608 27002176 27002176 92934504 127448416 127448416 123393656 109496200 86505768 283258882 934937465 934937465 479488910 801253207 833619538 833619538 710149237 655396377 491798571 436513451 830597727 830597727 805363813 693886986 809607197 809607197 1058033666 1058033666 397215410 991089678 993890212 993890212 712953095 622969926 431101380 431101380 7901648 11342848 195851408 195851408 348499628 485720394 1048618303 1048618303 755614954 487376906 751175778 1015421007 1015421007 859730233 1044115845 1044115845 744316557 744316557 1024344144 1024344144 554892188 66196464 605528308 605528308 162888504 162888504 140563202 408031878 426246220 426246220 982018448 982018448 1055069371 1055069371 684202496 684202496 790519372 790519372 713644558 656397877 675676229 718810784 718810784 303648288 302356064 27263296 129698656 129974136 531258136 531258136 1000375616 1000375616 874830396 993137463 993137463 807177126 807177126 504889565 376963354 376963354 71194380 626213251 626213251 289339170 946520317 946520317 983557620 983557620 707856276 740559117 740559117 237765649 262144 262144 251534488 251534488 129012264 129012264 78166032 112196952 112196952 115572184 119783648 119783648 50668112 153390388 763547875 763547875 658159897 981086620 981086620 873310752 873310752 722583584 722583584 705765909 596369973 579548241 725649905 835419250 1036702959 1036702959 555805152 555805152 292504167 943106789 1046087835 1046087835 776492184 776492184 726848644 251940928 251940928 8554556 0 194086664 256762572 256762572 130341540 24991808 53362932 53362932 52407728 52407728 120085320 120085320 93247400 93247400 85933608 85933608 67581960 73940352 73940352 2630912 138997824 138997824 65281376 65281376 65009904 306258098 306258098 269033522 352659498 352659498 321083560 189055280 442947754 442947754 359369514 254726748 485713694 485713694 380242812 256820174 25299200 1058015216 1058015216 372579000 508702994 541528110 886383809 886383809 570832036 941471155 941471155 271846944 362284584 362284584 60104952 93898344 284509578 284509578 302040834 302040834 286191800 376482610 376482610 331289280 331289280 60831056 269552640 286535168 286535168 286074400 286074400 268444704 278321824 864688320 864688320 11719488 478384164 478384164 363160042 365242602 545587384 545587384 305146155 261661576 261661576 155469444 502662572 502662572 416549574 416549574 354812966 505678156 505678156 418791764 788800290 788800290 374351470 511885584 1014108544 1014108544 642904702 884506633 1019069413 1019069413 965149597 965149597 834222968 941221383 1051199472 1051199472 888161373 841007192 792740905 792740905 822150144 822682659 822682659 588386865 588386865 320013344 318837264 318837264 128977600 128977600 632394088 768109993 768109993 862528728 862528728 503129104 503129104 464926034 256268418 403070484 565568640 704956961 708609280 708609280 147338676 147338676 786898277 786898277 689152784 689152784 61976800 147249760 147249760 214317088 214317088 542543966 571544168 571544168 281552394 678457390 809017899 809017899 502936868 537474870 799918972 799918972 755939676 884531337 884531337 722478049 547880992 547880992 141100833 420633219 969252132 969252132 562667595 562667595 909656064 909656064 568466944 145436708 161481060 161481060 151130432 134283264 59105360 42066032 324026772 414526278 710443139 990431366 990431366 726991307 726991307 461997110 461997110 300775142 520850139 580392064 1007195870 1054818015 1054818015 915029715 774491223 439261549 353219944 413210086 413210086 164958088 97928200 96915692 349043938 349043938 86908200 359217282 551688672 551688672 37748866 301989906 436470810 504106014 504106014 340265108 141298826 948175035 948175035 363206976 650854737 819533819 819533819 683129952 683129952 962676762 962676762 878598800 915168250 915168250 876269121 510462611 95778328 95778328 194764808 199619692 199619692 295613104 295613104 64616474 355940660 355940660 134616330 103097098 103097098 481896270 1024551942 1024551942 504694619 615351520 615351520 421937565 23501278 10486080 605569344 605569344 775861488 775861488 734212341 788039713 898155860 1007909994 1007909994 792313199 788652093 357887526 357887526 355218030 418908102 831862190 831862190 969147650 969147650 170472732 170472732 431112932 431112932 906779874 1030351379 1030351379 1015291107 649524587 614805724 614805724 769838528 769838528 1039849978 1039849978 982942573 704068280 107249784 87584432 136501772 203956064 203956064 83927552 203241512 211634952 315923722 664533616 664533616 617241824 293387243 114885122 302007914 302007914 105185946 281365712 386884746 386884746 319706674 331560740 331560740 213156080 168821268 405045524 405045524 377520736 373328584 373328584 311741568 577837296 577837296 383984280 383984280 536936576 541139073 541139073 291706696 96520640 96520640 215107588 573636300 573636300 147200196 147200196 272642432 272642432 270741762 376746397 849615780 849615780 885138024 885138024 314849681 811665384 811665384 935412856 935412856 929637819 929637819 607631184 280738336 33419232 602554016 602554016 654397873 654397873 131839261 563168072 563168072 720637480 720637480 714933201 386998842 386998842 1011990538 1011990538 684798597 684929733 684929733 1001416052 1001416052 733721494 709481749 548427542 146776132 146776132 94382896 94382896 86057256 319165326 319165326 231061716 231061716 495181402 495181402 684698316 684698316 626320632 626320632 244579921 130750116 246103048 246103048 34414720 12651600 281097298 803370032 910811220 1019741391 1019741391 514652119 872784706 872784706 642114385 380914651 131814856 93035632 22984864 56631328 195995732 195995732 188854624 159164484 551341761 678741091 837099718 955967367 955967367 770913261 1029710058 1029710058 692191624 692191624 683806917 562175018 898505835 916328632 916328632 457778356 437586450 437586450 184682040 268699650 750009710 791780107 791780107 235058358 1032847983 1032847983 399644111 893572398 893572398 419572000 355334404 355334404 1026174177 1026174177 858289221 750129436 737675253 713606048 185224640 284874116 288701872 288701872 35466768 417626516 417626516 415436672 415436672 501860100 525068134 525068134 91792462 71750152 184770888 184770888 168908816 137418856 137418856 136190548 136190548 79853460 202901004 207521232 246864732 246864732 94445344 113633496 113633496 40290976 474356292 474356292 383130330 474332554 474332554 355603242 355603242 93442914 146823236 160190752 160190752 201679624 220556800 220556800 364266624 364266624 93325384 94636392 564398376 564398376 539003904 755861774 755861774 873464331 873464331 349766214 349766214 145358848 145364292 145364292 529732 71327808 350683794 350683794 378165832 574030795 574030795 274899898 1041970207 1041970207 285218834 285218834 403726852 454107986 454107986 1026142778 1026142778 1024030028 586907748 583744197 569622756 194517924 194517924 28512864 273224000 274152066 274152066 4727808 590976 125902992 266600596 761801672 761801672 784857309 784857309 467950814 769296647 769296647 984159134 1029855231 1029855231 652875720 709102438 983699533 1042684191 1042684191 943550941 943550941 897244323 897244323 799169722 579019166 408488536 605868984 954878434 954878434 550278755 603363704 841777999 841777999 1004031431 1004031431 732202807 441863467 272801024 11174912 11174912 9098304 2151488 246016 6356992 14329728 14329728 2129920 9494784 9494784 15856194 150132421 404626181 404626181 268435458 13904448 12648513 525312 1572864 685507649 685507649 144610308 551425665 551425665 276699938 276699938 286316096 286316096 285531682 27214176 27214176 289140994 289140994 22041956 403990276 442049206 442049206 325232772 52767024 52767024 52902192 109854728 109854728 34771008 34771008 68222072 68222072 88121864 88121864 69941505 572945041 572945041 37911233 586219587 850539123 850539123 587344241 54136321 823073091 823073091 297211635 268910089 268910089 125849736 587739193 587739193 117913704 78475112 176213296 176213296 601656657 601656657 83870936 134587496 153215268 153215268 112222844 65045584 59360384 795521686 795521686 665531769 1013778820 1013778820 851327679 647565590 647565590 925326168 925326168 831644259 531942270 531942270 403600462 238408400 306901948 306901948 223298742 168688652 13182144 11934528 11934528 24907680 24907680 272052128 425448192 425448192 272727046 421382180 421382180 948206340 948206340 840438800 840438800 702630004 702630004 405319877 787466354 916783269 1001998185 1001998185 809312452 518627570 441272990 505792782 505792782 437990934 437990934 245912642 341045964 341045964 271110964 97781760 97781760 18090528 18090528 17900032 26342976 26342976 28877600 73580080 73580080 564144385 564144385 663467362 808113475 808113475 61236323 586359180 984008708 984008708 158341590 537822056 691183360 691183360 743076009 743076009 498121160 842284459 1050473434 1050473434 851659594 1022575876 1022575876 733894126 433298000 135612928 121647224 133255928 133255928 41998608 41998608 195167709 639446553 639446553 792454724 792454724 813687258 813687258 637583385 926206482 926206482 450981145 864815829 866987379 866987379 823136578 823136578 812855578 812855578 316588352 316588352 83456352 83456352 91265696 91265696 8389696 72958976 269525896 337979304 393481448 393481448 337450538 352322824 352322824 287835426 285212928 474911804 503995790 503995790 91676072 973871616 974788119 974788119 157190292 941934208 941934208 504611880 700715012 1007191296 1007191296 1009914917 1009914917 972015079 765815375 561402701 275790528 550073568 550073568 696661317 697879556 740694285 759224736 967548643 967548643 417805284 464824336 912933651 912933651 646066856 855660106 855660106 121508576 92876392 511532016 511532016 334495218 131102242 337975648 418536092 440215138 477741438 574032941 574032941 775455704 1047565045 1047565045 658847042 658847042 964777910 1058773853 1059821853 1059821853 960016476 228558432 228558432 118174776 127215152 127215152 58798784 64624368 64624368 216022852 216022852 245938756 245938756 223149316 181753060 204749032 357113957 934937465 934937465 479488910 801253207 833619538 833619538 710149237 835805848 1012962705 1012962705 830597727 830597727 805363813 693886986 207353484 221459244 757405060 757405060 136841857 991089678 991089678 589711822 1018400883 1018400883 431101380 431101380 290036718 16038534 333840336 333840336 272858404 272858404 1048618303 1048618303 755614954 487376906 751175778 1015421007 1015421007 335593482 997723690 997723690 994203795 994203795 1024344144 1024344144 302770691 650073123 874593889 874593889 830595171 614568532 917046617 917046617 715129173 426246220 982018448 982018448 1055069371 1055069371 620996642 620996642 412258304 713644558 713644558 656397877 675676229 718810784 718810784 303648288 302356064 251842588 255116860 255116860 531258136 531258136 351013230 713589967 713589967 372430681 500585317 807177126 807177126 504889565 339467344 381282138 381282138 381282138 109078274 113469408 266919006 367450602 983557620 983557620 237447068 237447068 677063560 677063560 704650068 704650068 672663045 78249985 142841784 218537360 241816792 248959588 248959588 219595152 14231232 13157568 185435392 185435392 763547875 763547875 658159897 658159897 590736177 873310752 873310752 783321140 621611608 219948049 218377520 1069944532 1069944532 835419250 1036702959 1036702959 840912448 840912448 1005413462 1005413462 973262871 223722111 403724820 466015974 466015974 222262120 429699386 429699386 460998232 460998232 454797028 176293204 167645201 467963777 467963777 452909010 540564609 558369509 595643569 676081313 676081313 593047732 188067456 729967077 729967077 455063356 311398988 186039976 273162392 302960694 399112158 441916118 441916118 398084766 275365954 420785380 420785380 152064512 152064512 151179300 153405732 153405732 152121612 338280484 421578248 421578248 410756515 624578607 689557541 1026162731 1026162731 559943808 750848080 776284317 776284317 735195885 839260294 839260294 727211265 271846944 362284584 362284584 60104952 93898344 284509578 284509578 302040834 302040834 286191800 376482610 376482610 331289280 331289280 294454290 295240818 295240818 287257712 43058960 61615842 285883570 315169888 864688320 864688320 386665530 478384164 478384164 363160042 365242602 365242602 338960541 177292747 538756105 538756105 14188736 502662572 502662572 416549574 416549574 354812966 505678156 505678156 418791764 788800290 788800290 247513308 247513308 74482516 0 14696768 14696768 336414416 428486466 1024733678 1069412223 1069412223 941221383 941221383 202458920 387523112 688104362 792740905 873332283 873332283 646379819 860133693 950535495 950535495 461557878 461557878 547234485 547234485 495286885 934884456 934884456 558383606 558383606 598554901 862149636 862149636 557528583 557528583 420303111 973939094 973939094 727213610 238609692 185689352 152152096 120587064 120587064 189891088 189891088 156590564 175659072 194900368 194900368 125767984 125767984 402653190 402653190 1014912552 1014912552 272132194 349250250 830869964 830869964 799918972 799918972 755939676 755939676 847824320 854066643 854066643 653910400 653910400 475564570 886110344 886110344 562667595 562667595 909656064 909656064 831103523 471402676 471402676 438210134 378085376 649263519 888840507 888840507 344258039 344258039 710443139 990431366 990431366 587743378 587743378 618544385 618544385 207967932 207967932 555547008 945727689 1054818015 1054818015 915029715 774491223 439261549 353219944 413210086 413210086 164958088 97928200 96915692 349043938 349043938 86908200 553716001 553716001 541940352 541940352 322310400 665001830 790177341 790177341 852362593 1065954654 1065954654 205336332 205336332 285478448 414518592 414518592 683129952 683129952 962676762 962676762 682926447 728173697 876269121 876269121 510462611 202238988 167879896 76967464 57933568 214224420 410188280 410188280 397640488 531604350 531604350 134616330 337677573 337677573 481896270 672146313 672146313 552784833 552784833 820306305 820306305 752109632 346869066 605569344 605569344 775861488 775861488 734212341 228500524 337594880 1007909994 1007909994 792313199 788652093 295740765 273102978 355218030 418908102 418908102 235003932 235003932 486662190 486662190 528482430 528482430 369098852 906779874 906779874 386954633 119746872 119746872 614805724 614805724 769838528 769838528 800535912 800535912 375278751 126110464 126110464 87584432 87584432 548831082 932381714 932381714 554865440 554865440 91626408 863873170 863873170 857141819 857141819 672841653 657681920 657681920 208725948 56391376 56391376 65577712 227164428 227164428 213156080 213156080 376553710 376553710 377520736 377520736 335546458 780534954 780665949 780665949 577837296 555810976 555810976 557916577 557916577 541139073 396642866 396642866 116901258 215107588 964022584 983619120 983619120 147200196 272642432 276897858 513816762 758437291 849615780 849615780 885138024 885138024 314849681 811665384 811665384 935412856 935412856 929637819 929637819 607631184 280738336 568715745 568715745 565213417 624952305 624952305 80232472 789136464 789136464 151015589 679805080 679805080 386998842 386998842 371994126 578356019 578356019 315193314 416982019 1001416052 1001416052 733721494 709481749 548427542 705494944 705494944 537944294 490067112 490067112 293960310 290912752 80781704 187926304 187926304 26809276 606863336 606863336 626320632 626320632 244579921 168481812 168481812 55239700 690792613 737034741 737034741 803370032 803370032 665388529 646078984 646078984 872784706 872784706 642114385 622279209 537273688 117506096 117506096 56631328 56631328 147239424 159164484 163086948 163086948 145303136 836788720 836788720 438935715 322200438 837675886 1035258735 1035258735 692191624 683806917 562175018 898505835 916328632 916328632 90248704 361040748 361040748 348198755 628490729 750009710 924918434 924918434 235058358 1032847983 1032847983 399644111 893572398 893572398 795284576 795284576 457332872 1026174177 1026174177 858289221 750129436 179620692 36706388 193485600 284874116 288701872 322586800 322586800 417626516 417626516 518291548 518291548 436470606 522109752 522109752 531415144 531415144 166908900 168908816 168908816 137418856 137418856 136190548 136190548 169250020 202901004 202901004 152459780 89084510 386939494 386939494 375205530 121734538 121734538 89054376 354324938 474332554 474332554 413601218 366421188 202114984 208762436 208762436 160190752 201679624 201679624 874586570 885328621 970007271 970007271 766774125 898959981 898959981 539003904 755861774 755861774 672204841 433932899 412095626 412095626 215619276 432796902 432796902 355113962 355113962 385505128 385505128 69746824 115032778 115032778 274899898 274899898 93196392 285218834 285218834 525312 67109120 69206280 111677704 111809880 145363288 145363288 35133760 3542864 10748480 147655876 427822306 427822306 345811466 345811466 314166984 245417434 245417434 675419598 700737136 700737136 784857309 784857309 467950814 769296647 769296647 984159134 1029855231 1029855231 255220120 709102438 983699533 1042684191 1042684191 943550941 943550941 337061126 512773466 512773466 867403324 882326091 925903726 954878434 954878434 550278755 603363704 841777999 841777999 1004031431 1004031431 732202807 441863467 272801024 11174912 11174912 9098304 2151488 246016 6001152 6001152 5731456 28386336 28386336 26755936 269578820 269578820 404626181 404626181 268435458 404272448 949151556 949151556 547111489 685507649 685507649 144610308 551425665 551425665 22855680 1706656 286316096 286316096 26807360 27214176 27214176 19443744 16850976 28164992 28164992 10808736 39877120 50534656 52767024 52767024 52902192 52902192 274352656 274352656 26265186 51455088 51981824 52302928 52302928 57868720 57868720 63363312 63363312 50569664 52488560 52488560 39121296 16777248 57340016 65111600 65111600 38001344 25396424 125849736 125849736 117913704 117913704 225200808 225200808 176213296 148362160 148362160 45562704 525371434 525371434 149156292 989388953 989388953 680583414 620778361 547373252 665531769 832320684 1020738255 1020738255 343809506 522601648 776964166 776964166 1016590853 1016590853 1007155215 657505078 238408400 306901948 306901948 212587526 338285246 338285246 254804796 341780540 341780540 388446704 388446704 270105378 407819620 407819620 94756802 548978699 948206340 948206340 690319927 321218666 702630004 702630004 405319877 787466354 916783269 916783269 487859540 518627570 518627570 441272990 256378426 235136524 321533386 321533386 63087232 63087232 111723688 111723688 94073856 68837480 52125408 120175840 120175840 116268504 111266440 101596520 127765520 127765520 564144385 564144385 545435744 545435744 8511488 10624320 11407616 984008708 984008708 1049151318 1049151318 907582319 901127019 920796077 920796077 65467892 615128825 615128825 678335433 678335433 1022575876 1022575876 733894126 66647896 41649216 121647224 133255928 133255928 27752744 38805856 57100848 109310040 111931480 623106848 623106848 245346313 245346313 597318961 915357042 915357042 450981145 864815829 864815829 663749241 665018632 665018632 280248530 303503872 316588352 316588352 9304576 16926784 27958624 27958624 103394776 103394776 336110216 337979304 393481448 393481448 337450538 417700417 962368293 962368293 285212928 474911804 805722244 805722244 738201863 973871616 974788119 974788119 640292995 715260194 801507063 801507063 703830007 700715012 840062110 1009914917 1009914917 972015079 765815375 561402701 330425202 550073568 550073568 696661317 701118040 701118040 387203874 967548643 967548643 516497754 132863646 1001936066 1001936066 646066856 855660106 855660106 303622602 124046808 38413824 131015920 131102242 131102242 337975648 337975648 418170958 418170958 574032941 574032941 775455704 1047565045 1047565045 299071414 457257902 964777910 964777910 1059821853 1059821853 960016476 514175352 117662240 118174776 118174776 63112392 58798784 64624368 64624368 216022852 216022852 245938756 245938756 223149316 181753060 231875146 472986284 483110350 832340836 942460167 942460167 136991872 140558724 140558724 835805848 1012962705 1012962705 266294879 18552838 151630960 1038242334 1038242334 628797961 186380837 173041636 163190628 822292898 822292898 707441977 1018400883 1018400883 413308102 413308102 317212288 350784972 350784972 333840336 302775796 399446438 399446438 390669498 344621122 344621122 402702354 402702354 858260504 1059062079 1059062079 997723690 994203795 994203795 670175540 670175540 445771872 650073123 874593889 874593889 830595171 614568532 917046617 917046617 715129173 459314196 306721924 407290974 507982870 507982870 437070110 17006880 18997248 18997248 19268712 93953456 93953456 44347408 326998320 326998320 284954562 251842588 255116860 255116860 254729004 312649948 333795784 467928572 518524398 518524398 740294157 740294157 439489339 902895665 902895665 622115603 558705825 890666874 890666874 704359702 704359702 594544007 646379244 646379244 635335193 296118542 878634886 1034855457 1034855457 704650068 672663045 614152448 552557004 218537360 241816792 248959588 303484538 457112192 457112192 459485440 459485440 326752384 0 0 571760928 590736177 590736177 723556648 783321140 783321140 621611608 219948049 218377520 1069944532 1069944532 769210822 4842624 119522330 840912448 840912448 1005413462 1005413462 973262871 852497103 852497103 466015974 466015974 222262120 429699386 429699386 460998232 460998232 454797028 176293204 167645201 467963777 467963777 452909010 540564609 558369509 595643569 676081313 676081313 593047732 188067456 729967077 729967077 455063356 311398988 459435512 459435512 419479590 419479590 822866979 822866979 398084766 309008051 942998928 942998928 576007959 188577065 165847589 218153004 605270565 605270565 338280484 421578248 421578248 410756515 624578607 1023596110 1026162731 1026162731 872863755 872863755 961689267 961689267 735195885 839260294 839260294 727211265 725147322 725147322 518758487 98501224 360766120 360766120 86034208 125652736 315846464 315846464 105567384 280237408 298590544 298590544 294454290 295240818 295240818 287257712 51974144 61615842 285883570 315169888 562888832 562888832 386665530 386665530 887955529 922234315 922234315 438378246 963539267 963539267 802940448 802940448 229302574 483761702 483761702 448404826 448404826 200154930 536611000 536611000 328171684 1033749280 1033749280 529605246 529605246 1063905200 1063905200 703170295 274290268 336414416 428486466 1024733678 1069412223 1069412223 117514296 1014292504 1014292504 299099346 299099346 170017704 873332283 873332283 646379819 860133693 950535495 950535495 898257227 461557878 635974887 635974887 616487811 934884456 934884456 827170951 578931912 598554901 862149636 862149636 557528583 557528583 420303111 973939094 973939094 727213610 268477444 185689352 152152096 121716760 136413600 189891088 189891088 245444760 329429158 329429158 325139464 292029858 467849904 467849904 482458764 1014912552 1014912552 678638469 134830017 830869964 830869964 646231910 646231910 1002891172 1002891172 984086871 854066643 854066643 653910400 790765152 790765152 710932977 710932977 650356945 650356945 647747232 831103523 831103523 471402676 471402676 438210134 378085376 649263519 888840507 888840507 344258039 344258039 453982340 557790096 590503953 590503953 581885265 618544385 618544385 1040733211 1040733211 240224278 315895373 773678741 1046207053 1054132959 1054132959 446087853 152228388 82563144 139861888 139861888 13681344 13681344 26026560 26026560 4928640 553716001 553716001 541940352 541940352 322310400 665001830 790177341 790177341 852362593 1065954654 1065954654 305351953 772450071 772450071 455611660 176036010 123990456 1044593552 1044593552 173897093 573144489 639624267 639624267 566853426 202238988 204140732 204140732 438994170 447370362 447370362 410188280 410188280 397640488 531604350 531604350 411127640 472403484 472403484 207692172 712580500 712580500 552784833 672354376 820306305 820306305 752109632 413798720 413798720 279486272 279486272 208739072 740710788 740710788 695728900 427907592 412564038 755109933 755109933 528784473 636030331 799894673 799894673 970992169 970992169 235003932 486662190 486662190 528482430 857098369 857098369 336609946 744763314 744763314 845228971 845228971 975111559 975111559 776344192 776344192 706092434 939977620 939977620 540685842 132713112 132713112 482348124 548831082 932381714 932381714 554865440 554865440 91626408 863873170 863873170 857141819 857141819 672841653 657681920 657681920 208725948 56391376 56391376 55774176 227164428 227164428 175544500 186835010 376553710 376553710 315638538 388078160 406851972 944773282 944773282 780665949 555615680 555810976 625714010 625714010 557916577 541139073 396642866 396642866 116901258 86417288 964022584 983619120 983619120 692195648 692195648 276897858 513816762 758437291 758437291 560513872 560513872 16222353 9700096 27525344 27525344 27000832 26215008 24301984 51261456 51261456 269518978 568715745 568715745 565213417 624952305 624952305 585630540 789136464 789136464 208159316 110686226 297623104 631818089 631818089 747446368 747446368 613758560 289572546 289572546 462689335 462689335 149497600 332426098 332426098 705494944 705494944 537944294 490067112 490067112 293960310 290912752 199686924 199686924 187926304 26809276 606863336 606863336 28802089 5635848 421388546 421388546 168481812 101312008 690792613 737034741 737034741 384959672 665388529 665388529 646078984 646078984 714289733 714289733 622279209 622279209 537273688 117506096 117506096 38797968 196149332 196149332 246006373 770743112 770743112 468553177 836788720 836788720 921886390 921886390 837675886 1035258735 1035258735 556424294 556424294 485775755 357357480 308429960 308429960 101712408 101712408 94175256 348198755 954994542 954994542 924918434 924918434 23598592 23598592 195044540 195044540 592128116 592128116 795284576 795284576 457332872 457332872 166666678 362992526 362992526 197542004 453912146 453912146 273072740 273072740 322586800 322586800 319133218 403540806 518291548 518291548 436470606 522109752 522109752 531415144 531415144 166908900 98211332 80420944 178074936 178074936 18801748 11667008 169250020 200987312 200987312 152611516 265104688 386939494 386939494 375205530 121734538 121734538 46186704 354324938 354324938 413601218 413601218 366421188 212874496 212874496 208762436 136628484 19660832 296893993 874586570 885328621 970007271 970007271 829887523 898959981 898959981 826019855 826019855 421127718 686851822 950589069 950589069 812001088 423682018 432796902 622530275 622530275 363367360 545264203 545264203 80910152 78779208 744704020 947174430 947174430 763710064 1012703374 1012703374 226822256 226822256 125832452 111677704 117979480 191419604 191419604 59319408 42349872 65388896 147655876 427822306 427822306 345811466 579388497 579388497 390778940 658665585 675419598 931135488 931135488 386040661 893002508 893002508 865714437 531236197 503451678 169232816 255220120 255220120 208045884 403709184 403709184 549466624 549466624 383784266 384439770 512773466 512773466 867403324 882326091 925903726 950667097 950667097 17437728 115344128 115344128 121684152 121684152 72091592 77728384 77728384 71233664 4401280 4401280 1230208 3907712 3907712 6001152 6001152 17419264 28386336 28386336 26755936 269578820 269578820 271651712 279970626 279970626 404272448 949151556 949151556 547111489 405359680 405359680 138974720 15515712 23381376 274993538 277929376 277929376 27050530 25636898 17899618 25183746 294748866 294748866 296434949 296434949 184515719 735761523 736885428 736885428 809557298 809557298 323032567 715097331 715097331 26265186 843264113 843264113 310784080 310784080 57868720 57868720 63363312 63363312 50569664 52488560 52488560 54603792 54603792 182550852 182550852 65111600 149675420 149675420 230868076 230868076 229299564 130940396 225200808 225200808 148981120 148981120 33339576 112061784 525371434 525371434 395420436 989388953 989388953 680583414 620778361 861305755 861305755 858272650 1020738255 1020738255 773291882 367923102 367923102 763980633 1016590853 1016590853 1062270172 1062270172 389409594 1044902028 1044902028 418580445 1001887594 1001887594 987085493 627693736 627693736 504870548 504870548 165920992 407819620 407819620 932812617 932812617 548978699 980815469 980815469 744785354 967200871 967200871 861654129 963285334 963285334 988665158 988665158 538663304 437831724 372294426 256378426 58320568 321533386 321533386 63087232 84904744 120761240 120761240 79701688 104862888 104862888 120175840 120175840 122325824 122325824 101596520 127765520 127765520 51173744 45292336 17948784 277088322 277088322 304009746 979386634 979386634 347078789 1049151318 1049151318 907582319 1007682317 1007682317 920796077 740701449 740701449 198520109 974390225 974390225 473807598 487546308 487546308 89137280 89137280 22057600 22057600 110060608 110060608 38714824 13513816 580221457 594293657 594293657 685448504 685448504 245346313 625378585 643825305 643825305 265271809 584388812 663749241 663749241 665018632 665018632 610877864 610877864 113790992 8388608 29782144 29782144 27958624 31751072 103394776 103394776 336110216 336110216 47515648 47515648 322972048 417700417 962368293 962368293 280402161 412929141 805722244 805722244 738201863 472028561 107004312 640292995 640292995 715260194 801507063 801507063 703830007 675185158 840062110 840062110 206728122 425334438 425334438 290554320 330425202 330425202 44427600 329963399 701118040 701118040 387203874 387203874 516497754 516497754 132863646 1001936066 1001936066 539122505 110938113 303622602 303622602 383238368 386998842 386998842 304358682 79874512 287314304 289542306 289542306 724442900 724442900 440235875 555238116 984646055 984646055 841532691 316777741 680117140 773400093 773400093 176969041 514175352 514175352 254789992 23517416 79822896 79822896 60383856 38220764 163317828 163317828 145672740 200487924 200487924 183904324 159383652 257364592 472986284 472986284 832340836 942460167 942460167 282607880 351848394 560988306 667469049 818533505 818533505 680221237 717361365 730538560 1038242334 1038242334 951719751 574619968 574619968 552600513 822292898 822292898 754462877 677497889 606866697 373616849 317212288 317212288 350784972 350784972 278998650 302775796 399446438 727976373 977550661 977550661 299716069 402702354 572263953 858260504 1059062079 1059062079 503891233 409256216 57152770 420134916 420134916 445771872 445771872 237458022 117440568 117440568 370722090 370722090 326682546 459314196 600420353 600420353 407290974 753483823 753483823 503654430 478361882 818983008 818983008 742494823 644301189 982651998 982651998 552506833 853722514 853722514 35180816 461613314 461613314 161746804 431980611 612979833 612979833 518524398 518524398 740294157 740294157 439489339 902895665 902895665 622115603 558705825 890666874 890666874 704359702 704359702 594544007 588166613 635335193 635335193 296118542 878634886 1034855457 1034855457 678309056 614152448 614152448 552557004 112396512 112396512 104450408 303484538 457112192 457112192 459485440 459485440 326752384 1005125717 1005125717 859147522 859147522 833425216 725969330 621545748 688980680 688980680 1019814265 1019814265 700192092 949360677 949360677 334122945 187694388 270154666 270154666 892346684 943983172 943983172 1019220179 1019220179 247728367 215483604 215483604 337702400 507347750 507347750 171704698 169349268 169349268 138543476 138543476 14025024 10028130 420029030 420029030 419962948 154150656 16870336 26528352 26528352 84029488 84029488 93603328 101262360 459435512 459435512 419479590 419479590 822866979 822866979 309008051 309008051 942998928 942998928 576007959 421810194 758353996 758353996 1031037829 1031037829 876531979 1027119249 1027119249 590349700 703257764 1023596110 1023596110 765362183 872863755 872863755 961689267 961689267 671169046 723904928 723904928 691697671 725147322 725147322 693282484 845595811 909431257 909431257 905302072 374606474 374606474 315846464 105567384 334534874 334534874 322048818 8458240 8597568 9248768 51974144 51974144 8561968 4719744 5656641 546049089 546049089 428347462 739116103 887955529 922234315 922234315 438378246 963539267 963539267 802940448 802940448 229302574 483761702 483761702 448404826 448404826 391823648 536611000 536611000 328171684 1033749280 1033749280 728351449 529605246 1063905200 1063905200 1020027908 668755732 668755732 229212541 716202809 716202809 564740620 1027351661 1027351661 1014292504 967078596 816835443 271581954 320864816 320864816 317196752 317196752 472212741 898257227 898257227 421606409 635974887 635974887 616487811 180141671 827170951 827170951 578931912 474153037 736396932 736396932 407581830 407581830 21094560 47739296 157992658 268477444 268477444 75835464 121716760 121716760 136413600 136413600 102834460 502792202 502792202 335546350 325139464 292029858 476906764 476906764 482458764 625489708 678638469 678638469 134830017 430601752 680071730 680071730 230768076 1002891172 1002891172 984086871 570962112 570962112 235879452 790765152 790765152 710932977 710932977 650356945 650356945 647747232 114034240 114034240 214046780 214046780 173972980 211176812 211176812 293709414 293709414 251786556 251786556 1003258775 1003258775 590503953 590503953 575955108 977439367 977439367 1040733211 1040733211 576837648 746362780 883491872 1046207053 1054132959 1054132959 834728252 834728252 419537698 419537698 201508544 202374156 202374156 270145698 270145698 627518336 627518336 288044259 93796968 80812192 278134992 283318560 298133730 298133730 46557024 46557024 305351953 305351953 772450071 772450071 455611660 123990456 548492318 1044593552 1044593552 720526203 786788709 786788709 639624267 566853426 50669616 204140732 204140732 438994170 447370362 447370362 372063090 372063090 276564444 336872024 411127640 411127640 472403484 635807270 635807270 712580500 906967705 906967705 672354376 672354376 209971357 482869640 538449796 821696451 821696451 890456737 890456737 878115112 740710788 695728900 427907592 412564038 755109933 755109933 528784473 636030331 799894673 1068778548 1068778548 970992169 805965971 805965971 55444640 55444640 857098369 857098369 336609946 744763314 744763314 1046690953 1046690953 975111559 1011367624 1011367624 855289872 860880051 939977620 939977620 540685842 132713112 132713112 482348124 844925442 844925442 174687188 37316240 37316240 4664480 21412000 21412000 21424128 21424128 0 0 118807168 118807168 13041080 33081312 33081312 32265296 61167200 61167200 86876972 261423384 315638538 315638538 388078160 641648120 944773282 944773282 459687354 555615680 665605187 665605187 625714010 326710041 934457875 934457875 842206497 842206497 610355392 945078880 945078880 943414309 692195648 692195648 824415954 824415954 87737817 281018562 281018562 114323946 114323946 9700096 27525344 27525344 24684576 24684576 24301984 51261456 51261456 269518978 320864562 320864562 324800178 847251254 847251254 699926373 908627383 908627383 896617175 244392393 297623104 663611443 663611443 747446368 747446368 613758560 289572546 289572546 329804130 329804130 853353602 853353602 53501745 9910848 5556040 70749512 78852936 201443456 201443456 548031821 548031821 199686924 615429381 809018884 823317333 823317333 865735718 865735718 853878523 853878523 909327875 909327875 797028902 322324274 384959672 384959672 130146624 92102904 8457448 90112568 183618900 204804136 228730068 228730068 104739172 91740416 91740416 38797968 196149332 196149332 246006373 770743112 770743112 991522476 991522476 777866907 921886390 921886390 766250349 362845901 438869980 556424294 556424294 485775755 357357480 874517610 874517610 101712408 270627152 313237858 313237858 954994542 954994542 659104953 437528591 23598592 23598592 195044540 195044540 592128116 637676604 1045264581 1045264581 793058380 793058380 205943004 362992526 362992526 197542004 453912146 453912146 273072740 308354484 308354484 197683956 199592164 403540806 403540806 270827648 268468352 86135080 25042848 67116968 151652256 151652256 73684996 205179932 260756296 260756296 233757588 233757588 211904076 155782016 155782016 152611516 265104688 265104688 179121492 829196001 829196001 797707542 638101048 638101048 146237216 146237216 1031408001 1031408001 212874496 713457072 713457072 701080773 743036328 743036328 605936201 621987747 621987747 829887523 829887523 540811520 403635200 826019855 826019855 702619851 702619851 950589069 1012065958 1012065958 423682018 294648930 622530275 622530275 542115968 674930063 674930063 679134985 679134985 744704020 947174430 947174430 763710064 1012703374 1012703374 226822256 226822256 125832452 69805320 117979480 191419604 191419604 59319408 42349872 65388896 155722960 193011828 193011828 239109325 579388497 579388497 390778940 1031880816 1031880816 931135488 931135488 815437418 893002508 893002508 865714437 738923274 738923274 526347659 526347659 477297631 846087444 847700227 847700227 682828115 754990664 754990664 384439770 384439770 75739848 746527508 746527508 723233274 723233274 594463876 1042549023 1042549023 535072715 535072715 378421686 378421686 318693330 982770669 982770669 800595501 745006340 653893056 653893056 553415044 11905280 11905280 26494976 26494976 8773856 6699170 23997762 147982977 271651712 279970626 279970626 554602453 682873920 682873920 731380341 731380341 601808704 49251732 574360721 574360721 274993538 277929376 277929376 295458656 295458656 17899618 281106048 294748866 294748866 888370664 909062538 909062538 735761523 736885428 736885428 809557298 809557298 382471386 715097331 715097331 392015032 843264113 843264113 310784080 310784080 3281664 41498464 65078896 65078896 2662608 21205024 21213824 54603792 54603792 182550852 182550852 54885504 149675420 149675420 292018562 292018562 229299564 147595688 614388911 614388911 412800516 714106633 875192592 875192592 816890691 409027129 395420436 395420436 346165578 1015078159 1015078159 861305755 861305755 858272650 874647819 981556512 981556512 767091251 767091251 763980633 763980633 95421288 1062270172 1062270172 389409594 1044902028 1044902028 418580445 1001887594 1001887594 987085493 627693736 627693736 504870548 504870548 280719714 280719714 447754248 932812617 932812617 222897324 980815469 980815469 744785354 967200871 967200871 861654129 963285334 963285334 988665158 988665158 538663304 409202332 453271590 453271590 238035718 226734448 226734448 66147064 84904744 120761240 120761240 79701688 104862888 104862888 64374880 111595120 122325824 122325824 45510208 45510208 46392720 46392720 37337808 9808144 277088322 277088322 304009746 979386634 979386634 641335598 1043859231 1043859231 999445835 1007682317 1007682317 405344926 740701449 740701449 198520109 974390225 974390225 250460900 249855324 249855324 105074160 105074160 123143256 123143256 130619520 130619520 38714824 17320128 580221457 594293657 594293657 685448504 685448504 57597360 625378585 682619737 682619737 257917141 123872728 123872728 120928649 87131001 94921144 610877864 610877864 113790992 34313424 29782144 539262977 549237057 549237057 545695552 33554608 33554608 341311491 567809129 567809129 635330538 635330538 300602850 340605576 340605576 397904088 397904088 336219136 370428802 370428802 107004312 339906712 351408282 351408282 284431938 498828138 515060574 515060574 465123702 184323354 206728122 425334438 425334438 831658305 831658305 406720022 35991842 146368325 146368325 365047978 365047978 719525420 719525420 1004185513 1004185513 466146799 537093185 639243801 639243801 573049608 51126618 383238368 386998842 386998842 364310378 277060968 378037358 515300190 515300190 724442900 724442900 440235875 555238116 984646055 984646055 841532691 316777741 680117140 773400093 773400093 176969041 176895060 254789992 254789992 128192776 79822896 79822896 60383856 38220764 163317828 163317828 215171120 265548540 265548540 184655904 206846604 257364592 444018715 444018715 404988550 835449602 835449602 624076163 478075079 884626784 884626784 826312608 818533505 884700957 884700957 730538560 1009910440 1009910440 951719751 780274450 780274450 674508816 673661501 1049886766 1049886766 912590293 606866697 399413489 279655746 36385730 64579456 116339424 260227900 260227900 189597717 727976373 977550661 977550661 299716069 557996949 572263953 572263953 641864704 927636539 927636539 753015123 596246810 1059606926 1059606926 979370391 945869043 834801891 599632905 632560177 917953026 917953026 326682546 388501864 600420353 600420353 165759464 753483823 753483823 503654430 478361882 818983008 818983008 742494823 644301189 982651998 982651998 552506833 853722514 853722514 578863567 461613314 461613314 161746804 431980611 612979833 612979833 436208663 436208663 404016612 259078752 259078752 460986294 522914182 522914182 477423630 474220686 340361076 1051605440 1051605440 169393276 643087868 643087868 404488320 280105354 760466310 760466310 4327880 4327880 82194560 82632264 82632264 79059784 82589640 351281224 351281224 83169282 473088 21303456 269352960 269352960 1005125717 1005125717 859147522 859147522 848456198 820911555 710433095 762921041 762921041 1019814265 1019814265 700192092 949360677 949360677 334122945 385507713 827640483 827640483 722618432 943983172 1052806783 1052806783 1019220179 941361822 941361822 389358378 466177632 524649606 524649606 201925644 201925644 413697088 413697088 138543476 932971820 932971820 671220550 567420868 567420868 544278437 537528065 537131076 24413504 546009441 546009441 333080280 282951288 299736904 299736904 296128206 487216488 727354482 727354482 988301956 988301956 408158321 273711172 421810194 421810194 758353996 758353996 1031037829 1031037829 876531979 1027119249 1027119249 590349700 703257764 948213187 948213187 684769989 150245761 14732368 419898498 711671714 711671714 723904928 723904928 691697671 691697671 693282484 693282484 845595811 909431257 909431257 905302072 374606474 374606474 290179634 286609794 334534874 334534874 322048818 287047730 274479778 332414496 332414496 43201104 1283200 4719744 5656641 546049089 977536048 977536048 739116103 739116103 224184872 372962654 372962654 131386104 43414072 38871696 20261296 70603946 286860834 286860834 203727232 428816768 428816768 391823648 416888516 416888516 644011961 728351449 895290354 895290354 537447880 1020027908 1020027908 668755732 1006649414 1006649414 881905689 881905689 564740620 1027351661 1027351661 967078596 967078596 816835443 271581954 320864816 447142230 447142230 144986130 136361000 136361000 84558084 136352808 950613312 950613312 941767751 139522044 139522044 860129968 860129968 708018709 724853641 724853641 966787075 966787075 285550626 961886816 961886816 824158926 86051168 75835464 226938316 226938316 153868064 252246292 252246292 502792202 502792202 335546350 257171684 104074068 476906764 476906764 352321800 1062082101 1062082101 785612024 785612024 745063821 680071730 680071730 402578314 402578314 243777676 981020610 981020610 570962112 940096880 940096880 110623320 110623320 127536416 127536416 60661352 106497088 106497088 232132272 232132272 214046780 173972980 211176812 211176812 293709414 336352124 336352124 331485426 1003258775 1003258775 924697400 924697400 575955108 977439367 977439367 578165649 578165649 576837648 746362780 883491872 883491872 927853755 927853755 834728252 834728252 419537698 419537698 223698948 218675968 218675968 270145698 270145698 627518336 627518336 288044259 93796968 544473920 861065939 861065939 16850976 293307426 293307426 290497696 318325392 331347122 331347122 280534096 206190168 206190168 548492318 922317691 922317691 720526203 786788709 786788709 791513408 791513408 111682849 50669616 241172568 241172568 120384872 124067984 124067984 203559180 203559180 122207232 245231696 245231696 140029056 860927793 860927793 702033717 906967705 906967705 762146730 707328257 921229720 921229720 878881795 878881795 821696451 890456737 890456737 1042416090 1042416090 689519136 911301467 1042614468 1042614468 343950496 343950496 285280432 362875346 1068778548 1068778548 252223485 805965971 805965971 71745592 71745592 306241697 306241697 324011052 487029792 677120701 1046690953 1046690953 527774681 1011367624 1011367624 855289872 860880051 860880051 146428810 146428810 82112760 82112760 66660336 844925442 884224841 884224841 853050600 853050600 286538763 827062946 827062946 861138971 861138971 674936117 623428512 623428512 151148972 524142126 524142126 374483240 495643654 495643654 453658750 486902638 486902638 378791962 380846938 380846938 641648120 641648120 400869882 400869882 323971488 867443378 867443378 289469171 128809570 934457875 934457875 842206497 842206497 610355392 945078880 945078880 943414309 675492192 675492192 831230866 972609635 972609635 459302599 328035444 114323946 114323946 10897984 10897984 12389376 12389376 19490688 23142880 23142880 11108480 40149329 309657824 1005230315 1029228207 1029228207 847251254 699926373 908627383 908627383 896617175 758646573 244392393 663611443 663611443 206095500 860652636 881902155 881902155 147360223 329804130 329804130 853353602 853353602 690346597 580507492 587482212 587482212 78852936 78852936 87106344 548031821 548031821 187468344 615429381 809018884 823317333 823317333 865735718 865735718 853878523 853878523 909327875 909327875 797028902 176298240 137886468 285213826 391056384 391056384 369832986 286013496 183618900 204804136 228730068 228730068 104739172 91740416 91740416 22284960 176140256 409129926 418369856 418369856 163965156 991522476 991522476 872752253 513331413 155066148 155066148 19016580 64955444 178743488 178743488 337405074 337405074 874517610 874517610 107165624 270627152 313237858 376252747 870061505 1005787175 1005787175 921513435 921513435 876441488 998852984 998852984 1028550021 1028550021 1045264581 1045264581 793058380 793058380 265503416 265503416 192268760 179642800 10939364 52693296 182604176 308354484 308354484 38068512 199592164 281230808 327242030 327242030 268468352 301226652 408557066 501929036 501929036 151652256 73684996 205179932 260756296 260756296 233757588 233757588 211904076 144998720 228619208 228619208 161310674 468712950 964615030 964615030 829196001 797707542 638101048 877983538 877983538 321666505 1031408001 1031408001 105502013 713457072 713457072 701080773 743036328 743036328 94909960 613180934 1016457807 1016457807 268668162 403635200 403635200 279737870 225968192 702619851 702619851 689565892 1012065958 1012065958 275630056 27904322 1050240 4194432 542115968 674930063 674930063 679134985 679134985 541741835 171641100 792963864 792963864 118853400 118853400 71303200 84683144 84683144 86265584 110629184 110629184 37410456 37302704 140055652 140055652 169489636 193011828 193011828 174241100 478974298 478974298 379735118 1031880816 1031880816 536883267 815437418 815437418 537055233 621998923 621998923 738923274 738923274 526347659 526347659 477297631 846087444 847700227 847700227 772738068 772738068 754990664 520452468 518943808 518943808 746527508 1053478279 1053478279 723233274 594463876 1042549023 1042549023 535072715 535072715 378421686 378421686 510887082 982770669 982770669 800595501 745006340 653893056 653893056 553415044 409963798 271694464 145042048 26494976 24852320 24496778 359711562 359711562 147982977 153012788 229558958 554602453 554602453 571825668 731380341 731380341 601808704 448726292 574360721 574360721 315885568 295438656 314087714 314087714 295458656 281363136 281106048 281106048 273680386 888370664 909062538 950651364 950651364 567163300 567163300 271983637 340861128 382471386 382471386 392015032 392015032 143922196 143922196 101724180 101724180 52305456 85519184 85519184 266353336 266353336 165839072 98790336 21213824 312693170 312693170 191422692 467702470 467702470 497820746 497820746 379722798 147595688 147595688 614388911 614388911 412800516 714106633 875192592 875192592 816890691 436801546 763404734 805306371 805306371 1015078159 1015078159 219991596 697878117 947995648 947995648 981556512 981556512 767091251 767091251 386170884 520407102 704940414 704940414 604102944 622854441 622854441 365897417 49598410 389153850 389153850 360686310 360686310 312694642 148424776 151964804 280719714 423183716 447754248 474190100 474190100 481796940 502995478 502995478 220728940 220728940 234754444 406989380 500244766 520883262 520883262 511256478 511256478 409202332 453271590 453271590 238035718 321990682 321990682 99058624 99058624 88080168 15293160 12255360 14366400 14366400 218248940 218248940 82072352 138491136 138491136 180524180 180524180 185948209 679717008 688090277 698203825 698203825 567618273 706457600 706457600 641335598 1043859231 1043859231 999445835 822132771 621838891 699073772 699073772 610480521 788529213 788529213 489587946 1039338351 1039338351 418888264 746221065 746221065 625083945 650134265 666943737 666943737 657299817 717859061 717859061 594563233 576856720 192166225 204242309 238150428 240184281 733267305 759537789 801705025 801705025 638265225 625221464 87131001 665551113 665551113 84137288 84137288 74516736 74516736 539262977 549237057 628525440 628525440 66033585 640835680 640835680 567809129 567809129 635330538 635330538 300602850 340605576 340605576 397904088 397904088 336219136 339382528 339382528 34652688 49578000 49578000 415948696 415948696 244450960 79691976 201326788 201326788 581058848 696271187 696271187 733122833 831658305 939745778 939745778 469939249 469939249 593543601 593543601 365047978 719525420 719525420 1004185513 1004185513 466146799 537093185 639243801 639243801 573049608 339163210 61803642 345560640 364310378 364310378 303400760 378037358 515300190 515300190 624128072 624128072 60738135 327681238 991958614 991958614 677638158 677638158 358764931 179015606 773722456 773722456 547123252 129375096 128192776 128192776 68423088 48160944 48160944 43518080 50906160 252758464 252758464 265548540 265548540 184655904 206846604 206846604 444473238 466226016 466226016 835449602 835449602 624076163 478075079 884626784 884626784 826312608 544895108 884700957 884700957 411156566 411156566 774780250 774780250 780274450 780274450 757209010 757209010 1049886766 1049886766 912590293 755895356 399413489 443837572 443837572 366589152 454446740 454446740 515524876 515524876 139469840 57221664 57221664 154304512 557996949 597334836 597334836 641864704 927636539 1025019976 1025019976 596246810 1059606926 1059606926 979370391 945869043 834801891 599632905 632560177 917953026 917953026 311039058 388501864 388501864 21671336 67914048 67914048 10783752 184328 67141632 79023776 79023776 76802368 272478592 272478592 339395848 339395848 817599490 817599490 578863567 243861277 352659498 442444026 442444026 260756604 260756604 251843636 404016612 512789568 739941075 739941075 618045560 697625828 697625828 477423630 474220686 410841098 1051605440 1051605440 1043907135 643087868 721733653 721733653 426258570 824754056 959774185 959774185 674088776 540556032 612537804 612537804 80632320 80632320 351281224 351281224 495926360 523972406 523972406 411640944 402666576 37755968 47062224 268461460 848456198 848456198 820911555 710433095 762921041 762921041 358197966 447849472 510970782 905297662 905297662 878583435 625198739 827640483 827640483 722618432 722618432 1052806783 1052806783 559416478 941361822 941361822 389358378 558450233 651814617 651814617 536944641 536944641 413697088 413697088 757336365 932971820 932971820 865607986 567420868 567420868 544278437 537528065 537131076 56887728 546009441 546009441 333080280 282951288 299736904 449164608 449164608 487216488 727354482 727354482 988301956 988301956 408158321 582426226 582426226 161894185 522781582 522781582 609768744 609768744 34264080 54056484 246115656 246115656 328825062 948213187 948213187 684769989 589230712 589230712 329649320 844163098 914282251 964652159 964652159 743882119 869983905 869983905 805703875 839254016 839254016 357699890 357699890 86167848 290179634 338450816 338450816 286609794 309130896 309130896 287047730 274479778 332414496 332414496 43201104 33686032 272299778 272299778 19351650 977536048 977536048 252056026 252056026 224184872 372962654 372962654 131386104 43414072 135027376 135027376 56299988 154276644 154276644 464224352 464224352 428816768 359969894 416888516 416888516 31457760 31457760 895290354 895290354 561078956 711352561 827102169 827102169 1006649414 1006649414 881905689 881905689 499241060 562237611 562237611 971420192 971420192 469193789 181541730 302156100 447142230 447142230 293857608 293857608 766281743 766281743 367873513 950613312 950613312 941767751 195790334 368909411 1035058051 1035058051 778177269 724853641 724853641 966787075 966787075 285812484 961886816 961886816 824158926 359232140 202630025 614130601 614130601 761213545 761213545 544025544 332197594 332197594 257171684 257171684 117981219 910738743 996722103 1008764088 1062082101 1062082101 785612024 785612024 745063821 576762234 417121953 402578314 812046723 812046723 981020610 981020610 507366108 940096880 940096880 226494540 226494540 134283344 176472132 176472132 113295408 219710104 232132272 232132272 58725428 1089600 170190480 207212592 226332804 398835360 398835360 331485426 331485426 318480968 924697400 924697400 471971166 906363412 906363412 515324766 515324766 438475610 504484966 812179958 812179958 123814567 100255272 100255272 228886596 228886596 223698948 223698948 218675968 218675968 87085952 87085952 559282312 559282312 22191297 14231232 564398384 861065939 861065939 16850976 293307426 293307426 290497696 318325392 331347122 542905984 542905984 698235393 698235393 697252965 689962497 689962497 971212993 971212993 792680289 792680289 791513408 203564512 105905292 241172568 241172568 187225492 157304912 124067984 55364784 122207232 254846208 254846208 151137148 276360336 860927793 860927793 702033717 702033717 762146730 762146730 707328257 921229720 921229720 878881795 951371608 951371608 924642831 826887659 1042416090 1042416090 689519136 911301467 1042614468 1042614468 456668334 456668334 122022072 122022072 40233352 69778536 69778536 117495944 117495944 109367520 122034360 122034360 544118314 661990695 661990695 487029792 446959224 446959224 18874656 81014208 81014208 233764012 233764012 205698340 205698340 61562488 61562488 92935272 232030196 232030196 884224841 884224841 853050600 853050600 391579048 827062946 827062946 861138971 861138971 674936117 623428512 623428512 347755898 524142126 524142126 374483240 495643654 495643654 453658750 486902638 486902638 378791962 380846938 380846938 277080600 339976816 400869882 400869882 323971488 867443378 867443378 860301920 80789755 16992256 16992256 16992256 12599296 209165440 209165440 568994084 568994084 41137280 41137280 831230866 972609635 972609635 823284165 934755066 934755066 591968497 591968497 817925512 817925512 890783608 890783608 938216955 938216955 655698656 326369794 320384402 1005230315 1029228207 1029228207 613746041 613746041 539569976 222323953 758646573 817103376 956399977 956399977 369098778 369098778 860652636 881902155 881902155 745025495 378874458 326350802 969016852 969016852 690346597 580507492 587482212 587482212 64469904 64469904 130105184 232956480 232956480 168696852 241005872 935260240 935260240 856389756 856389756 226931735 446030854 802991368 802991368 394258167 298146546 178116792 144653892 285213826 391056384 391056384 396365840 396365840 245367050 143851648 143851648 4391040 4391040 4268160 4259840 155332672 155332672 409129926 418369856 620896457 897716331 897716331 872752253 965021795 965021795 331922432 331922432 104905598 851091362 851091362 436110998 554374640 824657130 824657130 402588720 419583692 419583692 75564528 376252747 870061505 1005787175 1005787175 921513435 921513435 876441488 998852984 998852984 1028550021 1028550021 1035722821 1035722821 647828622 405460230 405460230 505793350 505793350 179642800 297036274 297036274 292393636 332059890 681916402 681916402 601094274 311550546 935844868 935844868 635278525 301226652 408557066 612404672 612404672 564709445 538074380 213261132 153797736 213977080 213977080 192942592 213689968 213689968 228619208 228619208 204349248 468712950 964615030 964615030 568877224 615114057 615114057 877983538 877983538 321666505 280754688 99429592 99429592 86550088 86550088 19992576 56892496 381165457 381165457 613180934 1016457807 1016457807 278947460 419030982 419030982 211838856 956330372 956330372 416359110 416359110 30965926 423765728 423765728 290025472 290006178 74531619 70288041 136610189 608856329 738324609 738324609 751099205 751099205 792963864 792963864 688265253 588896000 144965424 72132712 72132712 86265584 93071696 93071696 34942480 13755940 140055652 140055652 169489636 169489636 105125136 105125136 1027688540 1027688540 908225787 908225787 503488044 503488044 495723178 68194114 813664 277455936 277455936 269068544 413139270 447696932 447696932 396078916 303179358 303179358 378541104 772738068 772738068 738921520 520452468 1055775186 1055775186 1030033799 1053478279 1053478279 675418245 588363033 588826161 647102720 649204569 649204569 875719807 875719807 510887082 915145057 915145057 766515773 564137051 100921368 9618398 409963798 409963798 271694464 145042048 24852320 24852320 24496778 359711562 359711562 97634848 97634848 229558958 229558958 192187350 490999952 490999952 260093282 448726292 448726292 444909654 444909654 315885568 295438656 314087714 314087714 281363136 281363136 80863368 289571560 289571560 287738154 279793126 950651364 950651364 567163300 567163300 697382784 697382784 380044060 761009801 761009801 169847370 617444955 617444955 310652520 402745882 403252230 403252230 403243008 266353336 266353336 165839072 98790336 306188946 312693170 312693170 191422692 467702470 467702470 497820746 497820746 456113156 456113156 426604814 201397340 201397340 180232020 243800840 243800840 130760812 436801546 436801546 763404734 805306371 805306371 289014027 226011562 238267818 238267818 947995648 947995648 884999849 884999849 832704867 297406467 477158036 520407102 704940414 704940414 604102944 826473895 826473895 1072553470 1072553470 1063176073 1054095779 1054095779 806166573 598938738 148424776 151964804 151964804 423183716 423183716 219163852 219163852 481796940 502995478 502995478 220728940 358968228 402685138 402685138 360231314 520883262 520883262 511256478 511256478 288629896 306307218 306307218 121189282 321990682 321990682 103481728 99058624 88080168 86455232 86455232 13556928 19913984 218248940 218248940 82072352 138491136 138491136 180524180 180524180 651704080 679717008 688090277 698203825 698203825 622281733 807939092 807939092 540024639 540024639 616748926 626049705 626049705 829424672 872286085 872286085 738074613 788529213 1032958296 1032958296 1039338351 1039338351 418888264 746221065 746221065 625083945 650134265 666943737 666943737 657299817 717859061 717859061 594563233 576856720 192166225 647008152 647008152 585368017 733267305 1040921631 1040921631 801705025 638265225 625221464 853298107 853298107 822353206 822353206 662684160 269547192 74516736 72214536 92922984 628525440 628525440 66033585 640835680 640835680 112392161 25288800 138549380 180755612 180755612 492854982 711857984 793743168 892277832 892277832 878866602 878866602 34652688 37639376 37639376 1021317453 1021317453 593544124 987021590 987021590 761448674 581058848 696271187 696271187 733122833 733122833 939745778 939745778 469939249 469939249 593543601 606176520 606176520 343417251 963250120 963250120 874974175 376570035 120587064 42763440 59010090 339163210 339163210 127325016 127325016 85460520 302606338 303400760 385282404 387096894 387096894 436261434 972148790 972148790 1045533492 1045533492 1071966924 1071966924 677638158 358764931 179015606 773722456 773722456 547123252 47580904 154980132 191701700 191701700 98004188 160621812 160621812 236461924 252758464 252758464 232833900 232833900 72790248 161554568 161554568 444473238 980448572 980448572 826013475 466060231 78908232 78908232 10467144 189170032 544895108 705409024 705409024 705217557 168828944 169347664 169347664 168821268 411568388 411568388 757209010 757209010 308767714 432612582 755895356 755895356 514462278 513868234 513868234 366589152 454446740 454446740 515524876 515524876 461096871 461096871 191384230 191384230 806145795 806145795 742990989 742990989 423625262 1025019976 1025019976 1011950223 1011950223 734187765 930620419 930620419 749990733 173671264 39372432 319217786 394385458 394385458 358375434 358375434 270328360 492102674 492102674 446742806 446742806 145875482 216271376 216271376 76650696 272478592 346756235 346756235 820165826 820165826 817599490 548623329 310924528 352659498 442444026 811780114 811780114 669391353 575411577 671888424 671888424 739941075 739941075 618045560 697625828 697625828 273395714 273395714 410841098 410841098 1043907135 1043907135 340837640 721733653 721733653 426258570 824754056 959774185 959774185 674088776 540556032 612537804 612537804 80632320 80632320 344049736 344049736 495926360 523972406 523972406 441136278 441532884 563107898 915855963 915855963 612762159 891355571 891355571 187510068 541600181 541600181 358197966 917164090 917164090 905297662 905297662 878583435 625198739 367547088 594858772 979644372 979644372 973352916 973352916 309595026 458560602 458560602 408623796 558450233 651814617 651814617 536944641 536944641 412213830 412213830 757336365 757336365 865607986 1001063248 1001063248 460853349 172254368 197246212 197246212 56887728 75563584 91842272 91842272 99932528 268785940 449164608 449164608 436638675 436638675 435181857 561346531 561346531 328738630 858866816 858866816 834789429 683271021 801511677 824835293 824835293 906773087 906773087 1066055332 1066055332 360671778 716387489 716387489 625135785 589230712 589230712 329649320 844163098 914282251 964652159 964652159 743882119 869983905 869983905 805703875 839254016 873212194 873212194 857933074 86241576 86241576 338450816 338450816 268558338 54632594 62840688 62840688 61508096 56550960 56550960 33686032 33686032 272299778 272299778 19351650 737543120 737543120 252056026 252056026 33677328 884908303 884908303 440299786 343027298 634856733 634856733 72682988 368883256 368883256 464224352 464224352 478537806 478537806 352442398 283779758 795469245 795469245 919070652 919070652 561078956 711352561 827102169 827102169 778609206 881509965 881509965 679733044 1069025151 1069025151 796220309 971420192 971420192 168304038 168304038 565043745 565043745 444084864 444084864 293857608 808951266 826925088 826925088 360746447 209772869 214365728 576771084 576771084 1035058051 1035058051 778177269 702585205 6610821 168437042 285812484 285812484 39152288 175458786 359232140 359232140 202630025 756701484 756701484 761213545 761213545 544025544 332197594 855721644 855721644 660399807 477424135 910738743 996722103 1008764088 1008764088 503644506 499491926 499491926 576762234 576762234 994049164 994049164 812046723 812046723 809019204 809019204 864863159 864863159 789362844 729858165 780242045 780242045 765469809 765469809 720535600 720535600 588460741 570495488 188880952 189008052 189008052 207212592 226332804 534461802 534461802 319133810 277807316 180621754 652984344 845486649 845486649 906363412 906363412 515324766 579936691 579936691 655949964 812179958 812179958 936668695 1034805379 1034805379 873713436 184965976 226941036 226941036 207075232 207075232 33466144 16912416 4268160 661103313 661103313 659624209 659624209 578814033 586306353 586306353 577560593 577560593 596987777 596987777 552516128 542905984 542905984 698235393 698235393 697252965 689962497 689962497 971212993 971212993 792680289 792680289 262604800 262604800 105905292 180803856 187225492 187225492 157304912 70774528 155262548 155262548 254846208 254846208 151137148 276360336 357904226 357904226 397414624 397414624 233243492 233243492 210781508 211338828 613467716 613467716 951371608 951371608 924642831 826887659 975440900 975440900 532317555 513153630 513153630 501687598 456668334 456668334 122022072 122022072 40233352 69778536 69778536 17351686 419430438 419430438 1032194302 1032194302 544118314 927540411 927540411 378495988 446959224 446959224 381810974 81014208 81014208 233764012 233764012 205698340 205698340 70901924 61562488 92935272 232030196 232030196 352034680 352034680 323348658 86947354 391579048 391579048 101092496 23087104 36988944 36988944 34233504 221353382 347755898 347755898 151053172 349627592 349627592 95544168 418438604 418438604 296746338 103131200 103131200 80600712 80600712 928969867 928969867 540524986 567521888 567521888 860301920 860301920 423961190 818229643 1034230572 1034230572 879965067 749077324 434438252 583283013 583283013 696743280 696743280 944031879 944031879 868901167 868901167 934755066 934755066 813483282 832309777 832309777 817925512 890783608 890783608 938216955 938216955 655698656 326369794 840450643 840450643 19270464 629162557 756453996 756453996 706091541 717262356 717262356 817103376 956399977 956399977 369098778 369098778 208094622 207144588 879234312 879234312 879063626 714045493 969016852 969016852 560822944 59812864 59812864 27506016 27506016 8409288 130105184 687464341 687464341 168696852 538280733 935260240 935260240 856389756 856389756 638500401 857343032 857343032 941086066 941086066 633148230 178116792 144653892 524235400 524235400 132593650 396365840 396365840 245367050 153207652 153207652 22229504 22229504 21106816 21106816 155332672 155332672 143659136 226558183 620896457 897716331 897716331 692191438 965021795 965021795 894745634 548050379 972997237 972997237 851091362 1003137716 1003137716 961704038 961704038 402588720 419583692 500600798 500600798 349127378 340356970 170467716 417440152 417440152 423601222 423601222 436330812 436330812 354418986 316753158 305931308 305931308 404780032 405460230 405460230 505793350 505793350 197967348 297036274 297036274 292393636 332059890 681916402 681916402 601094274 311550546 935844868 935844868 635278525 264766716 264766716 683127840 683127840 564709445 538074380 213261132 75631364 48031344 50956596 147440300 213689968 213689968 204998452 204349248 204349248 227289056 605882828 678691132 678691132 615114057 617777233 703007644 703007644 47219944 541200513 541200513 170924309 694117124 694117124 836675363 836675363 665007864 885585034 885585034 618131904 643947482 643947482 627533064 419030982 140083522 956330372 956330372 880617800 618819840 618819840 536872520 423765728 290025472 537412610 537412610 879412352 879412352 608856329 809028736 809028736 751099205 751099205 697164740 697164740 688265253 588896000 144965424 61186912 61186912 44378448 11221504 11221504 10490848 21826912 21826912 134743296 134743296 134742272 105125136 105125136 1027688540 1027688540 908225787 908225787 503488044 503488044 495723178 68194114 813664 833624932 833624932 20204295 435956359 447696932 586991233 586991233 672261944 672261944 546379317 849286186 849286186 253508935 497252810 1055775186 1055775186 1030033799 675360768 675418245 675418245 653297108 788056029 788056029 649741005 649204569 895814526 895814526 739162862 915145057 915145057 564137051 564137051 317533650 206645132 746586189 746586189 479924810 623044938 623044938 812565059 878341960 878341960 33107904 33107904 68947464 151749310 503589532 503589532 490999952 490999952 54618368 54618368 413475584 413475584 160729440 170318224 170318224 462602384 462602384 269516800 269516800 80863368 289571560 358633579 547712395 772614595 772614595 911332545 911332545 435454270 697382784 697382784 380044060 761009801 761009801 722393601 758486794 1008932620 1008932620 402745882 942792193 942792193 403243008 956461709 956461709 20771008 66179938 306188946 306188946 288407794 308884242 308884242 415834540 415834540 244127112 456113156 456113156 426604814 652425535 652425535 452425108 613070555 887620380 887620380 851493075 380278153 678437460 678437460 585179601 350297861 350297861 289839155 307928577 877175950 877175950 884999849 884999849 860496976 826740936 725334112 725334112 70989576 985013219 985013219 845952436 845952436 1072553470 1072553470 1063176073 1054095779 1054095779 806166573 598938738 400165674 525665684 525665684 150114592 19739568 54707664 54707664 68967520 93508200 183504200 183504200 358968228 472033592 472033592 410830090 391208994 385949754 259700388 259700388 219711036 118150200 118150200 103432492 108964272 108964272 103481728 50666288 84992800 86455232 86455232 105460552 105460552 87946120 87946120 33040992 33040992 96807144 96807144 93466280 651704080 651704080 629901502 978696771 978696771 924758635 807939092 807939092 605870850 605870850 960512032 960512032 946390407 829424672 872286085 872286085 738074613 708094030 1032958296 1032958296 923128840 654856388 256325820 756320928 756320928 33565257 763441492 763441492 654385209 134615300 134615300 2435328 35921936 63981568 63981568 647008152 647008152 585368017 538059641 1040921631 1040921631 476322334 476322334 624352010 853298107 853298107 822353206 822353206 807239835 915466451 915466451 713039960 1023416487 1023416487 394723810 384182499 590569472 647633704 697177628 697177628 689439836 689439836 180755612 492854982 711857984 793743168 892277832 892277832 878866602 878866602 876873867 769993197 769993197 1021317453 1021317453 593544124 987021590 987021590 808751495 536870913 941654164 941654164 417480743 465626156 748176972 748176972 689521824 689521824 273694890 606176520 606176520 825234260 963250120 963250120 874974175 376570035 63642514 42763440 333072626 333072626 39059472 428132774 428132774 85460520 339290928 386665530 386665530 385282404 345503322 507024906 972148790 972148790 1045533492 1045533492 1071966924 1071966924 543269327 71410080 71410080 512738876 512738876 499412768 370608528 154980132 191701700 191701700 206250136 206250136 160621812 236461924 236461924 206671848 232833900 232833900 236241424 243321780 243321780 73400712 980448572 980448572 826013475 466060231 78908232 78908232 10467144 677824448 677824448 1045546948 1045546948 705217557 277898936 287860861 992281820 992281820 846217126 899025738 899025738 1001660987 1001660987 964765713 964765713 917177978 514462278 513868234 513868234 186782212 261768146 261768146 192071412 483183700 483183700 461096871 191384230 191384230 806145795 806145795 742990989 956400256 956400256 657797799 759226914 1011950223 1011950223 991682557 930620419 930620419 749990733 978900468 978900468 507233329 394385458 394385458 358375434 358375434 499373278 499373278 492102674 446742806 446742806 179464212 216271376 216271376 76650696 135514512 346756235 346756235 820165826 820165826 272733632 9622080 310924528 310924528 399034316 811780114 811780114 669391353 650958654 962197083 962197083 869405427 270214385 405398790 405398790 269028352 273395714 357484800 357484800 136713610 424974344 424974344 340837640 344982024 344982024 335753226 25148448 280699530 280699530 75151368 269204672 348665418 348665418 79957504 79957504 78381512 343326920 343326920 363643520 441136278 441136278 441532884 563107898 924979515 924979515 612762159 907203121 907203121 187510068 541600181 541600181 214749196 917164090 917164090 832883043 386061659 111303801 91337145 887259017 887259017 979644372 979644372 716770382 785124096 1020265167 1020265167 681142466 408623796 505679104 533283430 533283430 205594764 270623688 412213830 412213830 114376862 0 949491490 1001063248 1001063248 572402976 572402976 52393857 28723792 859887026 859887026 75563584 76570696 119443064 277902164 493130488 493130488 186046790 313709394 313709394 177373446 839724676 839724676 858866816 858866816 834789429 683271021 801511677 824835293 824835293 906773087 906773087 1066055332 1066055332 360671778 716387489 716387489 625135785 354173578 166353589 201381590 470344766 470344766 406545630 406545630 88313858 471398678 471398678 654311473 654311473 873212194 873212194 857933074 86241576 86241576 67627296 20571936 20571936 19457536 9193536 38930946 318769682 324145842 324145842 301127122 301127122 41686722 576573267 576573267 301575794 539258129 539258129 33677328 184624816 884908303 884908303 655621451 351485058 884198947 884198947 101332588 368883256 368883256 318572740 318572740 478537806 478537806 352442398 283779758 795469245 795469245 919070652 919070652 471707530 471707530 1006551339 1006551339 670184525 705018961 995577132 995577132 1069025151 1069025151 796220309 796220309 269502903 654612638 654612638 1049325087 1049325087 444084864 444084864 35353248 808951266 826925088 826925088 126501586 376936192 376936192 620231194 620231194 808810886 808810886 934153030 934153030 841110597 41473493 42517584 53445392 60242544 60242544 40934976 40934976 122078216 756701484 756701484 743269228 743269228 553132420 480110345 855721644 855721644 660399807 477424135 402669728 423674022 423674022 931746389 931746389 499491926 499491926 397220774 397220774 994049164 994049164 908251419 908251419 663761889 663761889 864863159 864863159 729858165 729858165 780242045 780242045 765469809 765469809 720535600 720535600 588460741 570495488 188880952 189008052 189008052 210661312 349463508 534461802 534461802 277807316 277807316 180621754 652984344 845486649 845486649 808474451 874049746 874049746 857808947 862978835 862978835 966264423 966264423 936668695 1034805379 1034805379 873713436 336906762 226941036 226941036 207075232 207075232 16912416 16912416 43271104 661103313 661103313 659624209 659624209 566231265 586306353 586306353 577560593 577560593 596987777 596987777 578547363 1066661478 1066661478 93583369 671223813 702622755 820911555 820911555 49375462 69462016 204600936 204600936 262604800 262604800 251675008 257999292 257999292 16425148 70774528 70774528 155262548 161802868 161802868 63752060 254085908 482949900 482949900 436849224 436849224 397414624 233243492 233243492 210781508 211338828 613467716 613467716 873497736 878549133 878549133 574910447 975440900 975440900 766313246 766313246 513153630 603934700 603934700 392945250 512030873 512030873 822292944 1055003007 1055003007 980295490 980295490 928256210 1032194302 1032194302 924110931 927540411 927540411 219048664 170123568 920426907 920426907 1005808658 1005808658 897434794 1024699767 1024699767 379721462 379721462 318701386 21241410 294495040 294495040 352034680 352034680 323348658 41062936 41062936 101092496 101092496 23087104 136579332 150200900 571719889 571719889 277484610 816907545 816907545 349627592 746276060 746276060 587046793 906376598 906376598 540453270 911173144 911173144 372524352 928969867 928969867 540524986 567521888 567521888 227870822 423961190 423961190 818229643 1034230572 1034230572 879965067 749077324 517452724 583283013 583283013 696743280 696743280 944031879 944031879 868901167 868901167 720958966 606650944 813483282 832309777 832309777 932282657 932282657 605816426 605816426 396102475 53292672 39652960 840450643 840450643 233358828 629162557 756453996 756453996 706091541 717262356 717262356 796902675 796902675 598042680 566611374 566611374 917389977 917389977 879234312 879234312 879063626 714045493 714045493 561521876 57633952 44283156 147473604 159416388 159416388 140666096 58745328 687464341 687464341 145319460 538280733 538280733 397925764 136823322 557434496 638500401 857343032 857343032 941086066 941086066 633148230 505545352 505545352 524235400 524235400 487559934 511836304 511836304 175651666 161669412 161669412 151130148 22229504 21106816 24379872 146937892 146937892 273813510 411041862 411041862 283515330 405613952 405613952 709275671 894745634 894745634 548050379 972997237 972997237 575837891 1003137716 1003137716 961704038 961704038 100663552 230330758 500600798 500600798 349127378 340356970 305951344 303902226 337047040 337047040 254954008 254954008 224081580 224081580 203493924 499690656 499690656 82447622 83935272 190471864 190471864 197967348 197967348 64119504 64119504 145095408 179912884 549868452 549868452 701907124 701907124 546695745 216308069 105132796 205521036 205521036 683127840 683127840 230753956 230753956 67151168 80324176 258008428 258008428 147440300 147440300 204998452 254808968 254808968 163843108 227289056 605882828 678691132 678691132 617994672 617994672 703007644 703007644 177571861 583674816 583674816 537400273 694117124 694117124 836675363 836675363 665007864 885585034 885585034 618131904 643947482 643947482 627533064 84555008 86462538 566589858 880617800 880617800 618819840 618819840 536872520 285741578 285741578 537412610 537412610 879412352 879412352 335770369 809028736 809028736 269656457 170046340 170046340 47199424 47199424 37249808 54687968 54687968 49332368 28923344 38125248 38125248 38673552 38673552 28421296 57211120 57211120 53341488 53853986 288295328 288295328 671620135 702948037 702948037 699625061 699625061 835789024 835789024 1062743104 1062743104 833624932 538995232 538995232 435956359 586991233 586991233 672261944 680244522 680244522 849286186 849286186 253508935 279582018 792197458 792197458 758781741 688694640 793298109 793298109 653297108 788056029 788056029 649741005 613942857 895814526 895814526 739162862 739162862 380374362 380374362 317533650 317533650 780537556 780537556 1071302589 1071302589 888670155 623044938 812565059 878341960 878341960 287100450 349117152 349117152 151749310 503589532 503589532 113645814 148966452 148966452 440787012 440787012 315753348 437572288 437572288 404523906 462602384 462602384 269516800 269516800 89247040 336564712 358633579 547712395 772614595 772614595 911332545 911332545 435454270 384314384 307959066 361034728 361034728 593830265 722393601 758486794 1008932620 1008932620 573260288 942792193 942792193 357687978 956461709 956461709 20771008 555418112 555418112 273212416 831780080 831780080 821678883 838070929 838070929 575854242 65524208 65524208 330602386 652425535 652425535 452425108 613070555 887620380 887620380 851493075 380278153 678437460 678437460 585179601 890295472 890295472 289839155 554324631 978490401 978490401 474563723 933302768 933302768 826740936 725334112 725334112 711476592 985013219 985013219 845952436 845952436 693971587 441717159 705700673 705700673 328940124 369755526 441320888 441320888 525665684 525665684 332883810 19739568 360316098 360316098 300146882 292395872 271637800 271637800 213785594 472033592 472033592 473015734 473015734 208736822 259700388 259700388 118150200 87065384 35680264 60183888 100894256 121049376 121049376 87871272 87871272 84992800 82787296 105460552 105460552 186879764 186879764 56652768 145490240 145490240 178651156 178651156 218712153 218712153 629901502 978696771 978696771 924758635 580126995 270948883 605870850 1008762915 1008762915 960512032 1040204941 1040204941 672140337 672140337 688736567 688736567 408945030 923128840 923128840 1018836043 1018836043 979986945 756320928 607525641 763441492 763441492 654385209 1065517850 1065517850 206570124 638106768 638106768 582472289 579938821 671485957 671485957 767758627 987894231 987894231 1000415607 1000415607 112235728 91936680 112238058 1028316546 1028316546 807239835 915466451 915466451 713039960 1023416487 1023416487 394723810 384182499 590569472 647633704 697177628 697177628 689439836 689439836 173075680 173075680 801639976 801639976 415492290 310783044 676263964 876873867 876873867 769993197 769993197 706431109 586355658 586355658 503319135 808751495 808751495 539230230 941654164 941654164 542122624 542122624 748176972 748176972 1007161860 1007161860 39323280 806946444 806946444 825234260 825234260 566830307 319489239 302198802 60426944 60426944 333072626 333072626 39059472 428132774 428132774 407335364 403699202 386665530 386665530 359387698 345503322 507024906 507024906 198202264 353526052 353526052 14793790 0 0 413437096 413437096 123265814 79860992 370608528 370608528 37548288 40358240 180852384 206250136 206250136 134125604 91626408 74521328 119415216 148152392 239421448 239421448 243321780 243321780 287971118 313131104 313131104 489809532 489809532 339312901 339312901 155966468 677824448 677824448 1045546948 1045546948 460295868 370756736 287860861 992281820 992281820 846217126 899025738 899025738 1001660987 1001660987 964765713 964765713 917177978 218309808 510669724 510669724 380277780 380277780 261768146 192071412 483183700 879513348 879513348 722792228 722792228 406751781 264246240 864552051 956400256 956400256 657797799 296903269 915806811 991682557 991682557 812132053 758658480 465712482 978900468 978900468 507233329 309530968 358614184 358614184 338339850 873636615 873636615 312337104 918768981 918768981 179464212 179464212 174449492 676184209 676184209 138420816 138420816 11993505 831487970 831487970 350224842 380725226 396936570 399034316 557991129 557991129 870902012 870902012 962197083 962197083 869405427 751924461 802760445 802760445 612050668 366689661 366689661 357484800 889909003 889909003 898257870 898257870 344982024 344982024 347948360 560295211 560295211 838856072 838856072 605152642 348665418 348665418 79957504 79957504 78381512 343326920 343326920 363643520 363643520 285397026 12772002 552677576 924979515 924979515 354422843 907203121 907203121 593807793 593807793 875170971 875170971 814573932 832883043 832883043 696392349 672045732 672045732 887259017 887259017 823793187 640943744 716770382 785124096 1020265167 1020265167 681142466 401434619 505679104 533283430 805669212 805669212 394651737 270606594 270606594 315181049 356319898 949491490 949491490 537804192 572402976 572402976 603890418 603890418 859887026 859887026 62805411 50683168 155189376 277902164 493130488 493130488 140427714 451812822 451812822 324018020 839724676 839724676 451767702 451767702 177784404 181651924 181651924 722302112 722302112 274827476 274827476 176517266 40370384 215398908 215398908 132683728 144937860 144937860 13816512 201381590 470344766 470344766 406545630 406545630 88313858 471398678 471398678 300932306 95202736 352661770 352661770 130240720 130240720 112642160 394990520 394990520 315106514 302963794 164942820 164942820 318769682 324145842 324145842 301127122 301127122 147399922 576573267 576573267 301575794 539258129 539258129 1592320 184624816 368649006 655621451 655621451 351485058 884198947 884198947 101332588 169158724 169159188 177013312 177013312 24120544 15728896 241226240 425756200 425756200 534583618 534583618 437205088 471707530 471707530 1006551339 1006551339 670184525 705018961 995577132 995577132 682284357 682284357 186692672 168001773 168001773 654612638 654612638 1049325087 1049325087 361364870 10012224 9775680 75959040 75959040 96936960 126501586 376936192 376936192 620231194 620231194 808810886 808810886 934153030 934153030 841110597 158466529 406447878 438624262 438624262 438095382 334012256 191040660 191040660 122078216 174853524 174853524 553132420 553132420 480110345 1016890302 1016890302 419971232 786311383 786311383 602815674 1047411016 1047411016 931746389 833666933 833666933 880690776 880690776 971674830 971674830 908251419 908251419 153195775 34154176 237043072 730829972 730829972 568994301 779191096 779191096 254807396 191111292 191111292 23318592 247704396 247704396 166474136 166474136 157947300 210661312 349463508 349463508 312504646 780088968 780088968 643202816 375079960 873938761 873938761 292996106 874049746 874049746 857808947 862978835 862978835 966264423 966264423 34623319 529531120 529531120 336906762 336906762 455907794 455907794 308654720 304564514 291920832 284477730 43271104 282345970 593865152 593865152 50364720 50364720 52445232 52445232 27264048 36226320 271417664 578547363 578547363 1066661478 1066661478 692214961 692214961 702622755 1009701837 1009701837 957180204 957180204 898884424 898884424 236436312 241498140 759506237 759506237 257999292 120587488 120587488 128893912 132749592 161802868 161802868 28929024 254085908 482949900 513355274 513355274 480781076 245995266 514148680 738906390 750553413 750553413 914499931 914499931 445753546 878549133 990906260 990906260 1072008335 1072008335 766313246 766313246 335212727 603934700 603934700 392945250 516047016 1042841854 1042841854 1055003007 1055003007 980295490 980295490 928256210 1019524260 1019524260 924110931 924110931 343808714 540750592 540750592 920426907 920426907 1005808658 1005808658 897434794 1024699767 1024699767 914068607 872444672 345723922 115029450 294495040 294495040 287393056 287393056 51006978 281203728 281203728 272926208 8946496 16012864 136579332 504006346 571719889 571719889 277484610 816907545 816907545 882996352 882996352 746276060 587046793 906376598 906376598 540453270 911173144 931325490 931325490 103469144 121986112 315109344 326518120 326518120 94935986 365330570 365330570 479688780 479688780 263580540 432161552 517452724 517452724 191033720 121729428 676216832 680411328 680411328 676256901 894121131 894121131 351799242 606650944 606650944 588777905 590349105 932282657 932282657 633145857 827345264 827345264 649906320 301440064 5837056 139759464 233358828 233358828 96225924 633529641 684623449 684623449 415369798 812943113 812943113 1003249827 1003249827 566611374 917389977 917389977 837562172 837562172 701151073 445643862 445643862 135320528 476006158 476006158 214941892 159416388 159416388 352387194 352387194 164103396 377479906 377479906 67750984 397925764 397925764 136823322 333744808 333744808 269023242 161543500 161543500 207175692 207175692 505545352 505545352 348668688 487559934 487559934 511836304 511836304 151191872 436277258 436277258 226701420 274733192 337451274 354203882 354203882 347919406 273813510 411041862 411041862 791554168 791554168 784412925 770354397 770354397 45678376 254845648 374390692 374390692 159335066 653060842 653060842 387147539 283056256 170315820 94799112 176949612 176949612 79678848 372117161 903163811 937039611 937039611 129292260 219977480 632895146 955438023 955438023 817662031 817662031 990300818 990300818 921874305 644994568 190471864 332839840 332839840 446544434 461772918 497105176 497105176 562274048 562274048 701907124 727124192 727124192 703867397 536875285 205521036 205521036 171085152 562992480 564151552 564151552 202780228 202780228 258008428 258008428 128093320 128093320 21497128 254808968 254808968 83506404 47617056 90491304 90491304 105567384 617994672 617994672 602068481 705102421 705102421 583674816 583674816 708394005 708394005 42701552 27837792 34155008 34938880 34938880 34677264 33563136 21760160 21760160 21531776 21531776 17615904 10493952 10559808 25381408 28379520 30747360 30747360 277938816 810656386 810656386 83979810 77908296 140814720 140814720 537371520 537371520 138621056 170046340 170046340 6935440 52431328 52431328 57264736 57264736 49332368 57745952 57745952 38125248 38673552 38673552 28421296 22343424 38974592 53341488 53853986 288295328 288295328 671620135 702948037 702948037 699625061 777919201 835789024 940882118 1069893254 1069893254 778636728 538995232 538995232 362317386 362317386 564270448 564270448 680244522 680244522 313536693 637407852 788805969 788805969 341907561 180134734 688694640 965436083 965436083 898551907 898551907 1062257343 1062257343 882378315 882378315 954603776 954603776 738404551 601034790 380374362 414788392 414788392 263982972 780537556 780537556 1071302589 1071302589 888670155 542305456 92747880 327097995 873907034 873907034 401350232 349117152 34976912 136132744 136132744 113645814 148966452 148966452 440787012 440787012 315753348 437572288 437572288 404523906 294166788 435070032 435070032 262506998 249579540 336564712 492854961 1055283615 1055283615 604424014 604424014 552340929 631787297 631787297 611895177 361034728 361034728 476540318 476540318 1033504320 1033504320 573260288 573260288 386734862 437094900 465195946 465195946 323564216 566797120 566797120 555418112 79356841 831780080 831780080 821678883 838070929 838070929 575854242 65524208 380149760 380149760 375389850 375389850 333660306 299335106 299335106 99536600 32032224 58516040 100691584 269224962 337647384 890295472 890295472 806929923 806929923 978490401 978490401 449056792 959015215 959015215 602433230 534776360 711476592 711476592 571412308 840356100 840356100 186071604 1047595930 1047595930 671426565 376710047 133247392 369755526 1056553761 1056553761 540878459 675659009 675659009 547220384 360316098 360316098 802816101 802816101 271637800 748748060 784303089 784303089 441517344 473015734 806463237 806463237 727713556 727713556 221824812 221824812 68806152 99041492 99041492 121049376 121049376 118096248 87871272 4830272 10873152 13454656 26775136 186879764 186879764 132668520 145490240 145490240 178651156 178651156 585506576 585506576 539103648 184948853 101614737 895325125 895325125 545350356 844278804 1027362588 1027362588 423731346 1040204941 1040204941 1041146000 1041146000 808968465 980150211 980150211 972679143 664108310 1018836043 1018836043 979986945 556139048 607525641 607525641 84941089 0 1065517850 1065517850 206570124 638106768 638106768 582472289 579938821 671485957 671485957 767758627 987894231 987894231 1000415607 1000415607 642097392 642097392 633678057 1028316546 1028316546 278581063 270026904 483915842 806578415 806578415 650890513 650890513 636725684 636725684 538623352 538623352 223105812 80767088 151277660 151277660 364434370 801639976 801639976 1073224330 1073224330 1002363315 877207627 894204289 894204289 753501517 753501517 985718988 985718988 973447452 69470472 210000268 539230230 853708702 853708702 542688833 999343788 999343788 919078107 1007161860 1007161860 39323280 806946444 806946444 980354884 980354884 299646704 698351619 939532775 973173287 995357367 999525056 999525056 9699392 277411014 407335364 407335364 403699202 49168848 359387698 359387698 238889096 1050516924 1050516924 198202264 353526052 485207442 485207442 472097876 472097876 476645504 476645504 437857812 411127166 176283832 176283832 526878686 526878686 503922228 404241930 404241930 239550488 239550488 336922120 404023464 404023464 239421448 239421448 202375176 201883784 287971118 672691271 798367019 798367019 538070593 633109753 633109753 622780705 622780705 475300225 475300225 460295868 460295868 370756736 33656492 341337984 341337984 171317584 243795036 378931662 378931662 201195874 487591256 487591256 202900668 218309808 510669724 510669724 380277780 380277780 69242944 69242944 391925761 879513348 879513348 722792228 722792228 597826588 264246240 864552051 864552051 609230880 93581928 93581928 800377725 800377725 690383131 690383131 261161658 261161658 655102372 655102372 902046042 902046042 358614184 358614184 463447382 873636615 873636615 312337104 918768981 918768981 350690508 441686994 441686994 676184209 676184209 809684356 809684356 672448096 831487970 831487970 350224842 380725226 396936570 396936570 557991129 557991129 870902012 870902012 714023210 82952 424903291 751924461 802760445 802760445 612050668 392841724 392841724 340207911 889909003 889909003 898257870 898257870 805925064 614368907 347948360 560295211 560295211 838856072 838856072 605152642 349614600 340473410 340473410 336407562 14718346 99565216 338234154 338234154 304149582 436322452 440719590 552677576 607261449 607261449 587320130 719309222 719309222 593807793 593807793 875170971 875170971 226509420 302781674 696392349 696392349 672045732 672045732 563139289 312592698 174383484 74449800 33892368 83889696 102311448 102311448 53241976 843318296 843318296 524853798 805669212 805669212 642826498 527173781 270606594 315181049 356319898 840477815 840477815 537804192 537804192 151788549 687193664 687193664 570292960 869489553 869489553 303613458 155189376 155189376 150994980 277659120 483471114 537043242 931971103 931971103 572015844 572015844 566609925 566609925 177784404 181651924 181651924 179305812 23547424 286634496 434519860 434519860 300030864 310749940 310749940 206985764 422546126 422546126 251845376 303219914 303219914 170980500 125027840 85761128 78586120 78586120 74634120 91870456 91870456 288109578 288109578 130240720 130240720 275122722 394990520 394990520 374347856 302963794 466705764 466705764 404296096 200314420 200314420 41438032 139022246 147399922 169905936 169905936 63490336 316929908 316929908 890468395 1033774447 1033774447 144748224 30127780 156356612 163968389 565058913 565058913 658790179 955861259 955861259 881727319 881727319 738391200 738391200 1019806255 1019806255 918234712 918234712 707936029 589370018 284163522 284163522 265878858 74804732 20971552 473579816 473579816 139060356 169877696 169877696 140509456 35651972 104014352 410143786 410143786 568684050 592903450 592903450 369421472 543221386 816891592 816891592 373279928 373279928 116968432 555977216 569118177 872679947 872679947 658375430 680974631 972454759 1002794967 1002794967 672097347 577055121 715700504 715700504 250271196 191040660 478511178 478511178 503367008 503367008 211568453 1003396828 1016890302 1016890302 685943541 786311383 786311383 602815674 1047411016 1047411016 446299504 833666933 833666933 880690776 880690776 471075342 1055717825 1055717825 1055016270 1055016270 1053529485 1053529485 730829972 730829972 1042064555 1042064555 779191096 647348736 191111292 634708197 634708197 742662572 742662572 205856008 304775390 304775390 142935680 210749508 312504646 312504646 780088968 780088968 643202816 375079960 873938761 873938761 845565456 292996106 145802052 292569721 529531903 529531903 913080973 913080973 389977369 483267500 483267500 152968740 172971028 455907794 455907794 308654720 304564514 291920832 284477730 37884480 547441553 547441553 600074720 601113105 601113105 589564209 571887633 571887633 587723649 587723649 547036784 59325826 751966838 751966838 692214961 692214961 226297224 1009701837 1009701837 957180204 957180204 898884424 898884424 410539463 385748864 759506237 759506237 405019412 495399264 495399264 128893912 132749592 132749592 97808288 618565769 676393128 977128965 977128965 709567377 709567377 1015408911 1015408911 738906390 750553413 750553413 914499931 914499931 270797058 270797058 990906260 990906260 1072008335 1072008335 643626564 168461353 37484304 65042144 179123916 179123916 516047016 1042841854 1042841854 830472260 830472260 908329974 908329974 353739844 475236492 650189858 650189858 343808714 972475999 972475999 901146794 901146794 905800416 905800416 422453890 141139137 625250492 914068607 914068607 872444672 345723922 118064712 118064712 387319896 387319896 348004250 376194400 376194400 281203728 272926208 157286404 157286404 170918676 504006346 504006346 197196628 129054300 353396250 353396250 882996352 882996352 541005505 643575996 835499807 1061003573 1061003573 397678385 931325490 931325490 103469144 277984546 315109344 315109344 345580070 345580070 291778822 291778822 463824066 515759922 515759922 381607770 249966804 249966804 734351445 734351445 21289136 680411328 680411328 676256901 894121131 894121131 727896855 815672689 856626896 856626896 330438784 56584098 633145857 633145857 827345264 827345264 649906320 322752192 41801744 425385762 425385762 171628308 76184168 23299232 23299232 90771456 90771456 812943113 812943113 1003249827 1003249827 992968953 992968953 622891619 837562172 837562172 815101859 815101859 1069354934 1069354934 476006158 476006158 214941892 13210768 88200344 352387194 352387194 54176864 377479906 377479906 88222784 377539984 377539984 37014288 333744808 333744808 269023242 161543500 161543500 207175692 207175692 205570188 46170128 138485892 192953572 192953572 168696852 165618416 285212680 436277258 436277258 411239168 287520590 337451274 354203882 354203882 347919406 223531150 278944203 278944203 791554168 791554168 784412925 770354397 770354397 652080582 508118739 508118739 187869547 164637378 653060842 653060842 387147539 283056256 170315820 105552200 176949612 285459503 678163845 979171388 979171388 937039611 937039611 287571980 222562476 893992064 955438023 955438023 817662031 817662031 990300818 990300818 921874305 644994568 184521306 332839840 1033030415 1033030415 461772918 644789138 890031147 890031147 562274048 541381068 727124192 727124192 703867397 536875285 163191140 210054252 210054252 562992480 564151552 564151552 202780228 202780228 51950872 193398700 193398700 156262228 198969780 198969780 149169208 182068872 182068872 173139276 173139276 165196496 598655616 598655616 563350113 705102421 705102421 621024008 634727145 708394005 708394005 97617224 300011994 300011994 122170760 36680130 335864122 385926608 385926608 380179898 369669352 369669352 365628424 77790570 97846120 356846216 356846216 347111848 279089344 279089344 810656386 810656386 82116675 1014327560 1014327560 336194309 276627332 276627332 271901960 2286720 115876552 115876552 54735392 54735392 87472192 128264568 128264568 122079344 57745952 182611026 413073446 436910662 436910662 431954982 469561050 469561050 362144362 250010076 250010076 295960642 423808426 423808426 206402698 777919201 777919201 940882118 1069893254 1069893254 788867133 576028813 489448486 362317386 362317386 328582506 724267550 724267550 934885654 934885654 637407852 788805969 788805969 341907561 196093040 352502852 965436083 965436083 898551907 898551907 1062257343 1062257343 882378315 882378315 954603776 954603776 738404551 613943680 322046514 414788392 414788392 263982972 550589122 805564419 805564419 294868545 542305456 606224442 606224442 402817551 873907034 873907034 401350232 380620530 382221066 382221066 289868972 30069984 223250508 223250508 172230676 168036500 168036500 181721280 191842704 294166788 294166788 435070032 435070032 262506998 249579540 191415732 492854961 1055283615 1055283615 604424014 604424014 552340929 631787297 631787297 611895177 97010529 198648095 507629487 507629487 1033504320 1033504320 734295020 734295020 386734862 437094900 465195946 465195946 323564216 566797120 566797120 20980609 6890880 285851712 356622730 356622730 380805744 380805744 335643146 337839464 380149760 380149760 375389850 375389850 315095250 315095250 34310290 25503776 285255026 420266012 869641681 869641681 337647384 588391839 805340672 806929923 806929923 844629651 844629651 320340740 959015215 959015215 602718096 435228355 235309152 885385419 955350049 955350049 840356100 724872711 1047595930 1047595930 776022929 776022929 493449602 493449602 1056553761 1056553761 540878459 675659009 675659009 547220384 357108842 348503754 802816101 802816101 160601812 748748060 784303089 784303089 470910336 470910336 806463237 806463237 727713556 1011875858 1011875858 275940746 275940746 99041492 393110794 393110794 118096248 118096248 193293849 193293849 156422820 156422820 555756197 555756197 246985825 132668520 691700800 691700800 683842440 683842440 749388172 796428856 796428856 280367618 369165010 895325125 895325125 1024307774 1024307774 1027362588 1027362588 423731346 526582930 526582930 1041146000 1041146000 808968465 980150211 980150211 972679143 567905793 828539538 828539538 676877056 676877056 606341673 685918212 685918212 557865425 460591478 1061313468 1061313468 929438139 637987233 273476487 631349600 631349600 547430721 714605181 714605181 656016632 393555514 633605153 642097392 642097392 633678057 579084472 820468444 820468444 310750422 483915842 806578415 806578415 650890513 650890513 636725684 636725684 645349785 645349785 223105812 132835592 558057489 558057489 364434370 364434370 610575727 1073224330 1073224330 1002363315 990363876 894204289 894204289 753501517 753501517 985718988 1040913618 1040913618 713305687 713305687 885336267 885336267 853708702 542688833 999343788 999343788 919078107 875620106 875620106 853337251 1058498693 1058498693 980354884 980354884 299186771 698351619 960496356 973173287 995357367 999525056 999525056 438356252 438356252 149519300 136217728 136217728 49168848 113195806 411567174 504307006 1050516924 1050516924 872366806 771926508 771926508 485207442 695097416 893402299 893402299 525238043 1016252672 1016252672 723549766 380290682 526878686 526878686 503922228 404241930 404241930 239550488 239550488 336922120 404023464 404023464 156305428 139249292 201883784 201883784 243269901 672691271 798367019 798367019 538070593 633109753 633109753 622780705 622780705 416424418 434759142 434759142 386950796 386950796 378061914 341337984 341337984 294724056 109626456 109626456 15981328 69931544 388181920 388181920 167999020 85181088 385568912 451563604 451563604 520774946 520774946 207659294 530048592 530048592 639935651 639935651 777269444 777269444 549589185 168366080 609230880 609230880 93581928 93581928 800377725 800377725 690383131 690383131 261161658 261161658 87819304 604843064 902046042 902046042 105257136 298915972 463447382 525892296 525892296 149661008 443560660 443560660 350690508 441686994 441686994 719390790 861480627 861480627 809684356 672448096 672448096 337706240 608827976 637662953 650241275 650241275 379306037 729638340 729638340 995342431 995342431 559352409 556600601 679725760 679725760 485141478 485141478 392841724 392841724 337041930 508446356 508446356 8585280 809627852 1016473659 1016473659 130341571 478044416 478044416 475917966 484397312 484397312 413376392 340473410 340473410 336407562 141236556 99565216 485500272 485500272 454047676 436322452 440719590 343839083 647150722 921950896 921950896 719309222 799938958 799938958 262962497 815040768 815040768 93508770 302781674 302781674 21156000 335708330 335708330 96154920 73400832 74449800 91236096 91236096 88679592 83102664 83102664 79814856 843318296 843318296 292111496 292111496 642826498 642826498 527173781 383617352 199798742 967435492 1005425013 1005425013 579484821 324247717 151788549 687193664 687193664 62730096 869489553 869489553 303613458 195584512 195584512 132735500 438605824 483471114 537043242 931971103 931971103 726752503 725925937 725925937 566609925 166973861 734045941 734045941 544306549 542078213 286634496 434519860 434519860 300030864 310749940 310749940 206985764 422546126 422546126 251845376 303219914 303219914 170980500 85761128 85761128 31097736 12035840 45823824 91870456 91870456 378342858 378342858 106314600 311507234 311507234 304678560 374347856 393598776 393598776 519311566 519311566 404296096 444145840 444145840 41438032 17665280 420553232 538298529 538298529 171969282 575215619 575215619 890468395 1033774447 1033774447 144748224 697087108 697087108 998188926 998188926 625338537 658790179 955861259 955861259 881727319 881727319 738391200 738391200 1019806255 1019806255 918234712 918234712 707936029 589370018 434546150 434546150 468209094 468209094 200080240 435333888 445167245 1050374683 1050374683 576278923 265289905 265289905 781201562 781201562 695225874 590533138 592903450 690561677 690561677 543221386 816891592 816891592 768229856 768229856 691144488 680572141 157378981 872679947 872679947 658375430 680974631 972454759 1002794967 1002794967 672097347 577055121 715700504 715700504 312377560 1049186756 1049186756 478511178 545464560 545464560 130340666 1003396828 1003396828 810881336 685943541 685943541 130749533 315721492 529081470 529081470 485966168 338107536 225085804 498940760 498940760 183743754 1055717825 1055717825 1055016270 1055016270 1053529485 1053529485 562350177 539677953 1042064555 1042064555 647348736 647348736 33866192 634708197 634708197 742662572 742662572 205856008 304775390 304775390 142935680 210749508 215358156 215358156 68575296 68575296 8493576 69734912 87887280 845565456 845565456 584174880 584174880 575926929 314070610 320476722 902994864 902994864 389977369 483267500 483267500 269577218 94327898 321878398 321878398 226342078 158855976 272107968 272107968 29411552 547441553 547441553 600074720 601113105 601113105 589564209 571887633 571887633 587723649 587723649 547036784 956863007 956863007 751966838 146801182 173683176 173683176 832196944 980896057 980896057 412539462 805492738 805492738 410539463 385748864 463002536 463002536 405019412 495399264 495399264 68822088 74023560 356533674 886587400 886587400 782101904 977128965 977128965 709567377 709567377 1015408911 1015408911 616352338 700347689 700347689 827724271 941674660 941674660 828510627 852044292 852044292 705694128 643626564 643626564 778098757 778098757 483798725 483798725 79027437 263784895 516122384 1052932301 1052932301 830472260 908329974 908329974 353739844 475236492 815422626 815422626 554051073 972475999 972475999 901146794 901146794 666200632 84091948 226571304 226571304 143266884 302076424 302076424 839083673 839083673 450094228 450094228 387319896 387319896 554642488 826023474 826023474 131204580 156898980 157286404 157286404 463112848 986199921 986199921 697650693 470289188 362835556 362835556 558010120 558010120 725022930 753819123 835499807 1061003573 1061003573 397678385 19736576 52174864 52174864 277984546 277984546 277470208 345580070 345580070 476210088 476210088 463824066 515759922 515759922 381607770 261957934 261957934 734351445 734351445 62927392 62927392 294390882 563314434 563314434 727896855 727896855 815672689 856626896 856626896 330438784 96527423 705463623 705463623 537531043 565056275 565056275 563154784 72417432 425385762 425385762 196999008 196999008 181312532 290770474 290770474 101062732 203425804 203425804 9210127 516287823 992968953 992968953 622891619 622891619 420921954 815101859 815101859 1069354934 1069354934 166592576 153858272 136306260 178028116 178028116 144122880 34885632 0 2041152 11091456 88222784 88222784 364106498 364106498 95184520 409265978 409265978 132834208 494560670 494560670 283320326 144857032 137527308 138485892 192953572 192953572 168696852 165618416 310378568 310378568 411239168 411239168 287520590 70791714 21834912 19708032 2545920 22069920 22069920 19811200 688587104 694304232 694304232 705377349 719450120 988331662 988331662 853435532 853435532 619570673 280876538 843864506 843864506 578893866 151468148 105552200 268693506 371950872 678163845 979171388 987279728 987279728 964425639 699065376 699065376 893992064 943853703 943853703 711070101 711070101 73799936 101062680 101062680 72618640 11083264 457485872 1033030415 1033030415 305320722 644789138 890031147 890031147 541381068 541381068 698805040 821592521 821592521 127225610 153619236 568535049 568535049 144229956 144229956 11703556 10486080 42074528 42074528 193398700 193398700 156262228 198969780 198969780 149169208 182068872 182068872 173139276 173139276 165196496 598655616 598655616 646736048 646736048 244287364 621024008 634727145 962408614 962408614 423833255 300011994 300011994 122170760 36680130 335864122 385926608 385926608 380179898 369669352 369669352 365628424 77790570 97846120 356846216 356846216 347111848 279089344 279089344 544227712 544227712 686285632 1014327560 1014327560 336194309 276627332 606520328 910701707 910701707 713754880 955816226 955816226 596003184 470508106 309037080 333244432 333244432 37570016 182611026 413073446 436910662 436910662 431954982 469561050 469561050 362144362 320684064 303951378 293739668 423808426 423808426 281534538 369325138 780742694 780742694 769459920 788867133 788867133 576028813 832673806 832673806 328582506 328582506 724267550 724267550 934885654 934885654 797261220 705283773 865615760 865615760 261670524 766536252 766536252 795717421 795733437 831723189 831723189 235061732 235061732 178393428 15217992 192186464 947505812 947505812 695103116 502144494 446517510 798191488 798191488 805564419 805564419 294868545 225702308 606224442 606224442 402817551 278568850 310269506 380620530 380620530 382221066 391041712 391041712 30069984 223250508 223250508 172230676 168036500 168036500 181721280 299516758 422285376 438710662 438710662 284205812 226558010 467929590 467929590 333670638 333670638 3786504 69780744 299406302 299406302 380378752 562175150 562175150 270845475 310686302 507629487 507629487 865944376 865944376 833849652 873566677 873566677 429543538 152340424 590641949 590641949 540086688 589704258 589704258 723728020 723728020 320996545 193536370 407511269 628658443 964715823 964715823 456361673 581485334 581485334 539203412 315095250 315095250 299175378 43337792 285255026 420266012 869641681 869641681 357059518 588391839 589013012 589013012 541959349 297499347 1046025675 1052901559 1052901559 688791280 688791280 435228355 235309152 885385419 955350049 955350049 523101737 724872711 724872711 671146501 956568357 980914373 1039201217 1039201217 963232460 330051076 423894098 815206546 815206546 889902123 889902123 943902855 943902855 403838470 864608798 864608798 155959853 549734950 549734950 775685160 775685160 402687278 254296713 1011875858 1011875858 503482267 275940746 74620088 393110794 393110794 94012832 102554192 193293849 193293849 156422820 156422820 555756197 555756197 246985825 111987776 691700800 691700800 683842440 683842440 749388172 796428856 796428856 280367618 369165010 369165010 347514754 1024307774 1024307774 948269987 948269987 252223496 185197620 2671872 170474108 211335032 764606032 764606032 43673697 42677328 27597872 2097408 206979224 676877056 676877056 86298628 688135180 688135180 557865425 460591478 1061313468 1061313468 929438139 826425478 541638820 805964465 805964465 783234429 771887400 714605181 656016632 393555514 633605153 633605153 341006347 471793032 471793032 820468444 820468444 908402844 946080135 946080135 503654430 802431786 802431786 940783560 940783560 645349785 645349785 638982681 132835592 558057489 558057489 176322624 310050960 548853187 548853187 834686142 990363876 990363876 687894937 717238441 717238441 614601033 808222742 1040913618 1040913618 713305687 713305687 885336267 885336267 337662920 336802314 908189979 908189979 908189979 875620106 875620106 853337251 1058498693 1058498693 943853703 573443488 573443488 433588096 960496356 960496356 499761319 499196142 443064632 438356252 438356252 149519300 136217728 136217728 20876832 113195806 411567174 504307006 847453468 872366806 872366806 771926508 771926508 484875621 695097416 893402299 893402299 525238043 1016252672 1016252672 723549766 380290682 449541780 449541780 122171966 131465232 131465232 63191280 168635412 168635412 135610892 135610892 134564024 138725508 148637312 148637312 9176144 67108872 278368898 278368898 80079048 831201788 958949223 958949223 296834440 416424418 434759142 434759142 386950796 386950796 378061914 272630312 294724056 294724056 125345634 309725330 309725330 76290608 357871880 359396778 359396778 371284282 388157754 451563604 451563604 520774946 520774946 319930768 530048592 626306232 924758690 924758690 1019746945 1019746945 981992535 880944263 880944263 1031103216 1031103216 871064433 871064433 415560970 415560970 471340298 944434248 944434248 414443172 414443172 21039376 84223264 84223264 41783296 135520885 173989524 431339734 431339734 656935608 656935608 579862696 667943673 667943673 719390790 861480627 861480627 405284277 479082955 542282240 542282240 608827976 637662953 761890628 761890628 678049669 729638340 729638340 995342431 995342431 848817416 727540049 957692070 957692070 485141478 847539849 847539849 864068898 864068898 566157153 508446356 613049260 809627852 1016473659 1016473659 392448418 683023823 683023823 764970894 1006644810 1006644810 413376392 212219268 212219268 281226496 284040642 345769442 485500272 485500272 454047676 417947990 417947990 343839083 647150722 921950896 921950896 400723939 799938958 799938958 678353152 815040768 815040768 757301636 757301636 625209513 559149729 559149729 755650881 755650881 190891104 261402620 261402620 140306852 801204477 801204477 83102664 79814856 962666679 962666679 522248600 994059039 994059039 405594722 405594722 383617352 889793826 967435492 1005425013 1005425013 580268693 324247717 6308736 47719122 273491474 318448770 318448770 269301186 298915568 474087856 474087856 40298542 466958672 466958672 346704616 691218286 731726139 731726139 725925937 725925937 29519940 707371063 734045941 823756276 823756276 733538021 697515845 819977925 819977925 627041348 521717310 444629848 52954416 195100816 259524540 259524540 57746444 98397672 98397672 90054312 90054312 89835520 79074816 10121224 62131632 62131632 378342858 378342858 106314600 311507234 311507234 304678560 304678560 393598776 393598776 519311566 519311566 280691382 444145840 444145840 18993408 142778976 428917396 538298529 538298529 510114764 575215619 575215619 408986718 276498576 276498576 136588822 697087108 697087108 998188926 998188926 625338537 539575456 634319088 688132678 831920739 831920739 738594147 822284510 822284510 523244577 144975364 144975364 145122880 290582688 443928324 443928324 468209094 468209094 200080240 269527158 445167245 1050374683 1050374683 576278923 265289905 265289905 781201562 781201562 740956368 590533138 590533138 690561677 690561677 210573604 210573604 540838892 768229856 768229856 691144488 680572141 157378981 828251212 828251212 844794500 974052375 975572663 997510071 997510071 292721796 275793828 518919180 518919180 461628342 1049186756 1049186756 944712616 911440761 713891848 780930141 780930141 810881336 810881336 678618772 678618772 123781560 315721492 529081470 529081470 485966168 370485786 370485786 498940760 498940760 311328224 311328224 271305906 271305906 44679424 153370949 562350177 562350177 539677953 539677953 178667108 610534696 610534696 23940481 7175304 74399112 74399112 34255112 36599952 138891344 208847764 208847764 204809996 149834624 209834056 705038940 748085404 748085404 143937124 771105780 771105780 700104821 700104821 994164550 994164550 868475168 329687198 310513746 208849783 863187777 863187777 818954800 818954800 298702336 321878398 321878398 226342078 158855976 280512738 280512738 60971460 298091786 298091786 260885628 173032052 173032052 182485504 182485504 243319612 243319612 316037805 316037805 956863007 956863007 293655216 705542408 705542408 173683176 832196944 980896057 980896057 670965753 941660153 941660153 419744551 404015622 854474683 854474683 275711730 330704384 481962100 481962100 473691598 356533674 886587400 886587400 782101904 813492109 813492109 721035100 721035100 439890818 581046784 581960529 581960529 997623440 997623440 964248295 1032876729 1032876729 852044292 852044292 819735798 819735798 848618503 848618503 778098757 483798725 483798725 490073942 490073942 516122384 1052932301 1052932301 924318267 328041689 386083936 670532114 670532114 1034421615 1034421615 1033921223 545932880 545932880 204738188 247728468 730170626 730170626 689854182 226571304 578698944 626076498 732668163 839083673 839083673 450094228 450094228 204497804 664909824 664909824 826023474 826023474 22020768 14550496 12901568 144351232 463112848 986199921 986199921 697650693 470289188 362835556 362835556 292574760 358348458 1064390700 1064390700 869901760 869901760 1035400018 1035400018 912710043 667146994 106432152 121707552 121707552 62339848 340161112 340161112 476210088 476210088 468130564 427226346 435465028 435465028 261957934 261957934 248512558 137242308 62927392 62927392 22554448 54248832 175210288 175210288 306930656 306930656 690094375 690094375 90380668 96527423 705463623 705463623 537531043 565056275 565056275 563154784 494396126 284313792 284313792 196999008 196999008 181312532 290770474 290770474 101062732 704269285 704269285 224858275 820324803 820324803 300163105 895265952 895265952 941164171 944816775 944816775 391761112 391761112 308027102 308027102 143518788 178028116 178028116 345552962 345552962 97552208 340542506 340542506 81742152 99908674 364106498 364106498 95184520 409265978 504241182 504241182 494560670 494560670 283320326 210764416 147866136 356725384 380830234 380830234 70386406 126038792 448880884 448880884 458392390 535958382 535958382 475368094 520407902 520407902 484862142 225636940 404689227 558148941 780110540 780110540 239470996 705377349 719450120 994070529 994070529 859573937 859573937 825232155 280876538 843864506 843864506 578893866 120361176 120361176 268693506 371950872 371950872 270741762 987279728 987279728 964425639 876988683 876988683 942001568 942001568 678304919 688914981 688914981 712927888 712927888 916090266 916090266 482856986 482856986 510659320 510659320 305320722 534536012 534536012 22020768 16843776 693436740 693436740 821592521 821592521 127225610 71438472 568535049 788996112 788996112 222718861 77695236 141442764 141442764 101860152 88129704 57853112 88647184 88647184 74467080 78695832 112425816 112425816 541646938 915072074 915072074 350786770 311302147 646736048 646736048 581282896 684009645 684009645 962408614 962408614 423833255 829542464 829542464 669681088 51090864 275294400 331360306 331360306 312916032 327973058 327973058 277752226 20700000 24128032 284426688 284426688 272640384 17044352 23087200 536871552 543482305 686285632 686285632 137776645 137776645 137487108 606520328 910701707 910701707 713754880 955816226 955816226 596003184 470508106 309037080 333244432 333244432 37570016 29256224 134885252 137104644 281282816 298674754 298674754 38562864 320684064 320684064 304425060 304425060 271393562 409739102 409739102 795905243 795905243 954621975 954621975 860932220 910661696 910661696 832673806 940587016 940587016 812130505 731850609 687426112 687426112 797261220 797261220 723609416 865615760 1027080648 1027080648 766536252 766536252 795717421 1072117826 1072117826 831723189 822793509 745123905 486749634 352477494 352477494 947505812 947505812 695103116 502144494 446517510 798191488 798191488 761192109 761192109 721944885 721944885 198182654 1026704430 1026704430 868651352 868651352 105782424 303568008 303568008 391041712 391041712 89571460 357174304 357174304 16780480 236290072 236290072 169138880 299516758 422285376 438710662 438710662 284205812 265350396 467929590 467929590 333670638 846465939 846465939 741654979 856165143 856165143 600493392 600493392 562175150 270845475 310686302 840292434 840292434 865944376 865944376 833849652 873566677 873566677 537546888 654426249 654959673 763212613 763212613 589704258 589704258 723728020 723728020 320996545 193536370 407511269 628658443 964715823 964715823 579347036 581485334 581485334 539203412 121692320 299175378 299175378 272416676 416836128 416836128 414297112 221611216 357059518 604243083 604243083 808544351 808544351 378077958 1046025675 1052901559 1052901559 688791280 688791280 177997984 44633172 126466064 282105411 633604329 633604329 706916355 706916355 671146501 956568357 980914373 1039201217 1039201217 963232460 799821081 799821081 815206546 815206546 889902123 889902123 943902855 943902855 602490731 864608798 864608798 369656439 549734950 549734950 775685160 1006666078 1006666078 313050003 913854494 913854494 503482267 206444036 68177328 133083680 133083680 117477624 81138760 81138760 84579624 84579624 93276192 134481920 134481920 76496208 144718920 144718920 24938912 24938912 67634184 92873416 92873416 80815208 84496064 84496064 51649776 323496848 323496848 117854740 40904728 252223496 252223496 185197620 2671872 606966016 606966016 280890689 833358667 891104811 891104811 923977147 923977147 805664901 805664901 622103584 622103584 688135180 688135180 111936817 440833620 789601958 789601958 826425478 826425478 541638820 805964465 805964465 783234429 771887400 603472928 603472928 586204113 578339793 65049506 835916048 835916048 810510401 843319443 918571155 918571155 946080135 946080135 239151387 802431786 802431786 940783560 940783560 727735965 638982681 638982681 94244936 75636328 75636328 160057260 595990496 595990496 197816382 326413720 423624720 671252538 687894937 717238441 717238441 614601033 33759577 8446016 4378752 402744832 402744832 480187978 480187978 337662920 282251970 79881738 573080841 573080841 349209688 340910730 357884122 417024241 943853703 943853703 638632473 638632473 541384847 542239747 542239747 560111171 565888008 565888008 139727360 155485540 155485540 30990256 47994864 47994864 51709488 51709488 6678912 34602000 174137472 207003072 212629180 212629180 118448284 100786200 203682060 476620986 568080098 568080098 479420418 268546638 262862512 449541780 449541780 433820492 470814954 500171392 500171392 168635412 353381036 429669036 429669036 134564024 138725508 223445641 745113741 745113741 715444782 1034781433 1034781433 80079048 831201788 958949223 958949223 229791273 716725453 716725453 424467108 475740322 475740322 943769897 943769897 341399458 125345634 125345634 309725330 309725330 76290608 357871880 359396778 359396778 371284282 388157754 388157754 478152348 478152348 475538508 475538508 319930768 626306232 924758690 924758690 1019746945 1019746945 981992535 880944263 880944263 1031103216 1031103216 871064433 871064433 535331284 535331284 471340298 944434248 950935077 950935077 817919104 696110080 558030624 84223264 70020480 184778224 184778224 431339734 431339734 803736380 803736380 579862696 667943673 667943673 688914649 688914649 551551045 136453540 479082955 542282240 542282240 96357952 96357952 761890628 761890628 717940032 678049669 162568192 353603602 848817416 925317360 925317360 957692070 957692070 428783591 847539849 847539849 864068898 864068898 941289990 941289990 613049260 613049260 950054658 950054658 392448418 683023823 683023823 764970894 1006644810 1006644810 228819238 403585284 403585284 281226496 489228646 489228646 351148104 32506848 34681648 35782944 36973456 1029067601 1029067601 863148781 365381440 365381440 71706801 734737489 734737489 678353152 348626058 757301636 757301636 625209513 568370293 568370293 755650881 755650881 796549869 796549869 261402620 140306852 801204477 801204477 790630636 790630636 962666679 962666679 522248600 994059039 994059039 764008480 764008480 470377570 889793826 912097464 993538532 993538532 589342580 731838036 731838036 183160752 273491474 318448770 572314945 572314945 345219018 474087856 476102934 476102934 466958672 466958672 346704616 691218286 731726139 839225392 839225392 425865872 996324246 996324246 707371063 823756276 823756276 733538021 697515845 819977925 819977925 627041348 521717310 444629848 52954416 195100816 259524540 259524540 57746444 98397672 98397672 90054312 90054312 89835520 79074816 38989968 102249624 115933320 115933320 71966888 114897992 114897992 28058672 327125600 394340816 394340816 161794404 499414380 499414380 240268316 183514560 15401940 18993408 335941664 428917396 428917396 510114764 510114764 350608202 408986718 912396699 912396699 605756235 1044339993 1044339993 966898862 416901838 347711310 640134807 640134807 464118097 688132678 831920739 831920739 738594147 822284510 822284510 950534180 950534180 832521383 958804324 958804324 443928324 443928324 62701974 140364080 157179552 157179552 178056208 178056208 140719936 178657380 178657380 48566592 79991024 740956368 740956368 227221904 255410844 255410844 745558304 745558304 77627720 77627720 24155680 24805376 24827808 88135552 545277177 557843600 557843600 844794500 974052375 975572663 997510071 997510071 941748663 941748663 616235364 616235364 461628342 368613520 944712616 944712616 989663890 989663890 780930141 780930141 174619625 73592892 678618772 678618772 839198739 839198739 523094542 523094542 295333748 370485786 370485786 477170218 477170218 311328224 311328224 193537140 193537140 179080016 179080016 84749352 96432416 96432416 102918928 111362816 610534696 610534696 23940481 7175304 74399112 403751834 403751834 239552024 503872262 503872262 208847764 204809996 108787608 209834056 705038940 748085404 748085404 143937124 771105780 771105780 700104821 700104821 994164550 994164550 868475168 329687198 310513746 208849783 863187777 863187777 818954800 818954800 298702336 357361098 357361098 81905032 342114508 342114508 293126496 187566688 298091786 298091786 260885628 112892708 83121736 182485504 182485504 174098864 174098864 170918676 102438400 750802677 750802677 238804996 705542408 705542408 163446197 607189417 607189417 668232964 804907005 941660153 941660153 588700209 956385649 956385649 1008806411 1008806411 1048278929 1048278929 647616017 550382272 550382272 285993988 285993988 597334937 874629381 931032953 931032953 913838098 778458065 581046784 581960529 581960529 997623440 997623440 964248295 1032876729 1032876729 711622841 711622841 819735798 819735798 848618503 848618503 716778910 880491292 880491292 490073942 801424942 801424942 890952451 924318267 924318267 920785167 920785167 670532114 680078573 1034421615 1034421615 1033921223 964296343 964296343 204738188 247728468 730170626 730170626 689854182 972380695 972380695 626076498 732668163 732668163 199696451 10411584 70728456 337393720 664909824 664909824 889718601 889718601 877842967 1021072551 1072958463 1072958463 452460583 990481611 990481611 861703760 83889819 359164058 359164058 292574760 358348458 1064390700 1064390700 869901760 869901760 1035400018 1035400018 912710043 849877296 109635384 329242194 329242194 315004970 353687798 353687798 504560380 504560380 468130564 427226346 435465028 435465028 36015830 50956832 50956832 29500224 24327072 9439184 38307392 54248832 189947408 189947408 413384934 413384934 285621890 139136208 172891284 952959014 952959014 713240661 288099030 288099030 338024540 494396126 494396126 284313792 284313792 30314848 325716803 545953747 545953747 434820530 464161732 704269285 1002050899 1002050899 820324803 820324803 605381330 895265952 895265952 941164171 944816775 944816775 391761112 391761112 308027102 308027102 143518788 176979028 176979028 345552962 345552962 97552208 340542506 340542506 81742152 99908674 347552874 347552874 86963316 144080878 504241182 504241182 294261858 294261858 219882062 210764416 270010028 356725384 380830234 380830234 99614856 114559728 448880884 448880884 458392390 535958382 535958382 475368094 520407902 520407902 484862142 381216442 404689227 570262294 780110540 780110540 312697920 312697920 304400658 994070529 994070529 907051139 911213211 911213211 104074008 544152832 575283608 575283608 120361176 120361176 113397048 322517495 695941029 695941029 872169264 997196727 997196727 953155952 876988683 942001568 942001568 678304919 688914981 688914981 712927888 946024839 946024839 916090266 482856986 482856986 750606431 750606431 101090178 674129994 1036148199 1036148199 823031971 693436740 693436740 569715681 612632649 612632649 130177569 259332668 788996112 788996112 222718861 97530816 141442764 141442764 150994980 178398240 178398240 88647184 88647184 74467080 88065456 112425816 112425816 541646938 915072074 915072074 350786770 311302147 311302147 680005190 680005190 684009645 1059986524 1059986524 402851870 402851870 829542464 829542464 669681088 58982802 304248192 331360306 331360306 312916032 327973058 327973058 4491394 3747584 3747584 15009024 15009024 8651328 274187266 274187266 538566656 538566656 270033027 1049088 577463702 577463702 438309648 438309648 2621824 274727424 308281746 308281746 101876106 101353736 312751520 312751520 119729472 119729472 49636800 171035970 442024822 459851190 459851190 298674754 298674754 400377434 400377434 491784840 491784840 411150712 411150712 409739102 409739102 795905243 795905243 954621975 954621975 860932220 910661696 910661696 352520206 940587016 940587016 812130505 731850609 160455216 464603715 759032133 759032133 723609416 213173556 1027080648 1027080648 891603968 729744321 709835925 1072117826 1072117826 822793509 822793509 943270353 943270353 366044092 397275938 972815410 972815410 319217719 985067266 985067266 954420887 1034969351 1034969351 970981575 721944885 721944885 198182654 1026704430 1026704430 973134510 914801224 0 33571888 33571888 173169304 182520784 506203422 506203422 464128996 464128996 397772782 397772782 363595048 363595048 187351972 178114240 234594572 234594572 265350396 265350396 187172148 150244951 846465939 846465939 741654979 856165143 856165143 961880602 961880602 225480169 210004332 257988874 840292434 840292434 634583899 303039750 303039750 557859712 557859712 537546888 654426249 654959673 763212613 763212613 731579168 357056456 357056456 1047925016 1047925016 155923620 155923620 83992768 96518376 272703760 579347036 579347036 143664451 369712464 369712464 126436738 289588040 289588040 416836128 416836128 414297112 302957058 239684388 604243083 604243083 808544351 808544351 413663778 798492505 798492505 561517311 286404860 572971281 572971281 888398466 888398466 574379081 633604329 633604329 706916355 993577008 993577008 423369735 344459266 331203912 454681417 741417741 799821081 799821081 714233201 714233201 568911120 543356162 442050198 602490731 602490731 671662692 671662692 553936915 868534515 935799299 935799299 1006666078 1006666078 620893928 879252011 879252011 507410878 507410878 68177328 333449114 333449114 117477624 99614720 197881857 197881857 210948684 210948684 717960549 717960549 212608341 245704768 688502596 688502596 748717124 748717124 565404640 581043668 581043668 190853712 190853712 41940376 323496848 524288671 524288671 334977674 334977674 634441859 634441859 568407493 914786338 914786338 280890689 833358667 891104811 891104811 923977147 923977147 805664901 805664901 770055840 770055840 759423757 743580480 406896774 946128896 946128896 789601958 939544586 939544586 135274788 48509984 216677804 373098784 435295206 603472928 603472928 586204113 580732038 187360169 835916048 835916048 810510401 843319443 918571155 918571155 648285378 648285378 894736836 894736836 769022091 616962249 727735965 727735965 608822409 608822409 98220577 599922913 599922913 50331744 595990496 595990496 68280840 326413720 326413720 390774092 390774092 379967922 379967922 426042560 426042560 8446016 273121290 398981368 398981368 480187978 480187978 379331080 379331080 70520026 105450632 105450632 317292928 943841566 943841566 880926795 202376395 236210181 638632473 773346436 773346436 664923857 630912042 643805563 643805563 998746393 998746393 704611937 704611937 736626165 736626165 542819248 187870708 164184860 164184860 180254964 560816821 560816821 212564296 212564296 467958266 760065344 1006649391 1006649391 790175294 986783399 986783399 598539750 405981296 405981296 77784844 433820492 470814954 500171392 500171392 152381988 353381036 429669036 429669036 98279016 137301820 223445641 745113741 745113741 715444782 1034781433 1034781433 906733712 926231355 926231355 800227808 679855668 716725453 716725453 424467108 475740322 475740322 943769897 943769897 341399458 325950106 85988480 83924008 289631554 289631554 278826410 330116466 330116466 315349986 315349986 370906760 478152348 478152348 475538508 475538508 195219828 274868352 274868352 23259200 34646272 34646272 417464401 977798295 977798295 617685705 626206409 979164187 979164187 688464933 535331284 546084448 675945636 950935077 950935077 817919104 696110080 558030624 70020480 70020480 184778224 253492549 736035436 736035436 803736380 803736380 183766493 124781184 119537976 688914649 688914649 551551045 294785634 286446114 286446114 278284384 85737290 383923580 890376224 890376224 717940032 560865780 637744424 637744424 571159569 925317360 925317360 798234904 781587365 777394845 660877897 464525913 501099272 642078828 941289990 941289990 225840289 552632736 950054658 950054658 306973699 511244736 511244736 314203984 352247314 352247314 423850086 423850086 435105448 435105448 489228646 489228646 351148104 146225908 146225908 521263126 521263126 1029067601 1029067601 863148781 313660406 851443923 851443923 851443923 838708710 838708710 348626058 362063882 362063882 324014170 568370293 568370293 502586254 502586254 1016350664 1016350664 851181652 411319090 680633045 1065630827 1065630827 790630636 629767520 629767520 349877440 630685382 747584589 764008480 764008480 681403173 470377570 912097464 912097464 136424855 589342580 731838036 731838036 183160752 284160930 386756626 572314945 572314945 345219018 345219018 476102934 476102934 161077620 161334385 596778469 596778469 435612481 839225392 839225392 425865872 996324246 996324246 157504951 141170052 34283924 33505248 460934400 460934400 37594528 114029784 228996220 228996220 82237896 19787776 116875100 116875100 90320164 30344800 70472736 85248552 89813064 89813064 80249224 70455560 121067416 121067416 313432178 313432178 114897992 300595922 300595922 327125600 394340816 394340816 357168952 499414380 499414380 362943800 294851184 399917410 399917410 335941664 335941664 367217568 479552394 479552394 103267744 308676617 912396699 912396699 668451830 1044339993 1044339993 996453554 996453554 690875685 640134807 870914314 870914314 263059539 128264568 911086760 911086760 882975051 698351686 950534180 950534180 832521383 958804324 958804324 426959362 275775972 210201800 210201800 88652652 140264592 146640900 722436449 722436449 723976673 723976673 551329888 559804065 735701009 735701009 225050704 633340244 633340244 745558304 745558304 160563556 605068516 769452992 769452992 771042285 771042285 545277177 557843600 557843600 536870913 457184278 457184278 456699926 705803970 941748663 941748663 616235364 616235364 289722508 537577728 539892993 816235777 989663890 989663890 410792787 262850868 433488404 659810328 959447847 959447847 989517783 989517783 705209532 705209532 270138468 181644888 178798856 243844188 245403092 441273588 441273588 290306324 438244696 505564686 505564686 372089924 96432416 96432416 268986750 268986750 802425184 802425184 796005309 796005309 58984560 403751834 403751834 239552024 503872262 503872262 144703812 144703812 141232540 108787608 162828768 162828768 144575444 104454416 104454416 103175824 103175824 4259840 8320 0 0 0 303467106 303467106 58904688 161389330 405157646 405157646 237566300 465142556 465142556 463480118 342114508 342114508 293126496 187566688 187566688 195434868 195434868 179176480 94374272 94374272 59001600 174098864 174098864 170918676 223924832 223924832 150033292 101724716 252988664 600148740 673150897 673150897 991701032 991701032 804907005 804907005 766610141 588700209 956385649 956385649 1008806411 1008806411 1048278929 1048278929 647616017 864826385 864826385 412243108 412243108 1004845732 1004845732 931032953 931032953 913838098 778458065 512072797 512072797 181852884 261804693 261804693 109068520 109068520 18150608 38497848 97068264 121709752 564760688 697014161 697014161 716778910 880491292 880491292 419431518 801424942 801424942 585762286 611398188 611398188 920785167 920785167 402871748 680078573 680078573 380944478 723966261 964296343 964296343 771119940 224518180 286355716 286355716 6668171 972380695 972380695 538128897 613263858 613263858 268960770 473860100 473860100 750274333 750274333 825939747 889718601 889718601 877842967 1021072551 1072958463 1072958463 1028653743 1028653743 990481611 861703760 900219352 979911143 979911143 805897274 98599139 264356084 580512621 759281322 759281322 814277666 832731243 849877296 849877296 109635384 329242194 329242194 315004970 353687798 353687798 504560380 504560380 416058946 416058946 80863944 521758936 521758936 447131158 129588582 93338696 93338696 52953968 52953968 38925456 189947408 189947408 413384934 413384934 862064945 862064945 402862086 1044652057 1044652057 713240661 840780391 840780391 554094081 136714500 500320474 1000772467 1000772467 733161714 457861734 545953747 545953747 434820530 464161732 464161732 1002050899 1002050899 805355523 805355523 652315006 844114506 844114506 545523450 989169425 989169425 119682409 718240793 718240793 676400781 322204602 212444429 404317250 404317250 642549497 769753509 803550700 803550700 225912336 408245912 408245912 288884514 270066978 269034498 168127564 168127564 256586940 256586940 206078984 206078984 270010028 270010028 336068742 336068742 247890104 114559728 119933624 119933624 91362216 77036152 104209176 104209176 33867792 33867792 37770514 381216442 381216442 570262294 907367903 1006811275 1006811275 312697920 304400658 840096514 840096514 907051139 911213211 911213211 380121002 860724314 860724314 309516802 488267572 488267572 424549414 424549414 695941029 695941029 974837343 1050334743 1050334743 980175671 907152112 907152112 605465565 605465565 555028560 555028560 675950084 946024839 946024839 850986132 289154864 335050944 750606431 750606431 330116466 674129994 1036148199 1036148199 823031971 536986626 29941984 560329089 612632649 717357145 717357145 574619793 696373269 696373269 665969529 133280753 670463428 670463428 655569465 655569465 588416617 588416617 552010056 552276097 552276097 537598720 623014577 623014577 599823336 18624544 11793216 9882880 2444544 680005190 680005190 254155812 1059986524 1059986524 402851870 402851870 28386368 306861232 306861232 58982802 304248192 304248192 61739232 331654624 331654624 303827394 303827394 284690370 16261056 282265024 282265024 281752770 281752770 274187266 538566656 810133569 951206850 951206850 812333652 812333652 438309648 954572032 954572032 761537642 761537642 1041812328 1041812328 542402800 474380762 312751520 297862144 297862144 49636800 171035970 442024822 459851190 459851190 290228500 425477528 493746334 493746334 491784840 491784840 411150712 411150712 414646876 414646876 371669274 450888150 450888150 571473984 571473984 546833985 42698833 546199056 546199056 35141633 186261264 186261264 258087708 258087708 141299076 165152484 609443241 609443241 701108948 891603968 891603968 172366948 231525648 681892873 755798380 755798380 762070184 943270353 943270353 1047004575 1047004575 972815410 972815410 528482430 985067266 985067266 954420887 1034969351 1034969351 970981575 590407361 590407361 161022478 356516010 973134510 973134510 914801224 400276666 786714226 786714226 728287390 182520784 800399728 800399728 700778909 979445079 1068280799 1068280799 728057365 663290925 539763760 171365136 36838480 42867792 42867792 35784448 87911040 157904788 426257843 426257843 120393697 776593751 776593751 961880602 961880602 658276504 235154889 168124497 205311756 545032117 976750359 976750359 844103966 557859712 588845320 625476777 625476777 811553086 902676035 902676035 731579168 357056456 1043931480 1047925016 1047925016 965289539 965289539 617457668 687408719 687408719 1008147458 1008147458 994550434 994550434 369712464 329019234 329019234 289588040 345000018 345000018 302957058 457361618 521212118 521212118 505611804 611212237 611212237 413663778 296813910 1015067848 1015067848 973329097 862138803 1000432135 1000432135 888398466 601985842 151520292 151520292 16962564 993577008 993577008 498335746 512788591 748996957 760076104 760076104 162670692 223572772 575449456 575449456 237450540 237450540 105086216 303154096 392167866 392167866 549521408 637659216 868534515 935799299 935799299 179953761 620893928 898184330 920360259 920360259 507410878 507410878 202706972 333449114 333449114 238308268 218942288 217630668 197881857 210948684 210948684 717960549 717960549 572266780 572266780 688502596 688502596 748717124 748717124 565404640 581043668 581043668 190853712 190853712 378857314 378857314 524288671 524288671 539038096 539038096 781708695 781708695 568407493 914786338 914786338 457687894 941114048 941114048 602980385 696180640 696180640 557319969 206429449 770055840 770055840 759423757 743580480 459565950 946128896 946128896 698257592 939544586 939544586 734144593 734144593 216677804 974668587 974668587 435295206 344906826 717214606 794189438 994599768 994599768 577368227 572683153 818073795 818073795 273400449 799540960 936936793 936936793 894736836 769022091 616962249 145827077 124466352 608822409 608822409 126772000 599922913 599922913 272437794 962211380 962211380 796848036 929043080 929043080 793752582 793752582 625008919 621519135 622038424 754811608 811083449 987760500 987760500 398981368 205815374 295307834 379331080 379331080 335753226 577529241 1011614860 1011614860 943841566 1041623583 1041623583 336113173 451160342 451160342 773346436 773346436 664923857 630912042 643805563 643805563 998746393 998746393 704611937 704611937 736626165 736626165 542819248 187870708 164184860 164184860 180254964 560816821 599848449 599848449 258624772 467958266 760065344 1006649391 1006649391 790175294 986783399 986783399 598539750 405981296 714903660 805966851 805966851 679686213 681803782 941639888 941639888 418578734 418578734 335482904 151907364 134317056 27624592 57462192 662192280 662192280 303822354 906733712 906733712 926231355 926231355 44319127 679855668 679855668 622716172 4272160 21106848 21106848 335660162 335660162 325950106 325950106 120064384 120064384 336456714 336456714 370040120 370040120 330116466 384736566 384736566 513966184 513966184 428029158 428029158 199447902 195219828 274868352 274868352 434115207 434115207 350355887 417464401 977798295 977798295 617685705 626206409 979164187 979164187 752225166 752225166 546084448 555145761 555145761 177301160 261397720 261397720 244287500 244287500 67577572 267312636 702390744 736035436 809570432 1067453023 1067453023 883318215 371905818 553305664 553305664 450515927 450515927 363096004 363096004 286446114 885364067 885364067 1010848328 1010848328 953340615 560865780 560865780 637744424 637744424 772945152 775497501 798234904 798234904 1042810143 1042810143 660877897 1023029141 1023029141 1030147625 1030147625 1008525194 930519987 930519987 552632736 23086017 8388672 416553244 416553244 314203984 796950537 796950537 637534281 555892912 958403177 958403177 866792523 866792523 741822010 741822010 504406790 521263126 521263126 8913280 735584624 735584624 706352661 851443923 883520890 883520890 838708710 838708710 224503177 362063882 362063882 324014170 354457194 354457194 502586254 502586254 1016350664 1016350664 851181652 411319090 411319090 1065630827 1065630827 625632872 735059543 1043822163 1043822163 807633865 772400157 772400157 681403173 681403173 1018249973 1018249973 981494353 764972591 671162373 219686441 208418244 208418244 284160930 386756626 386756626 357957250 413160768 413160768 420533040 420533040 168035874 164424256 596778469 596778469 435612481 412156385 955331329 955331329 457388214 457388214 280961780 558635924 722942517 722942517 954996833 954996833 819599043 575234420 327779504 327779504 82237896 40156352 116875100 236314980 236314980 223746732 203425032 68947464 152702668 152702668 209862088 222906504 222906504 121067416 313432178 313432178 102164488 300595922 300595922 301143456 301143456 357168952 446742870 446742870 362943800 362943800 294851184 399917410 399917410 372160378 386183258 386183258 479552394 479552394 387049904 387049904 705423877 860635267 860635267 778533663 778533663 996453554 996453554 690875685 214277133 870914314 870914314 263059539 128264568 911086760 911086760 882975051 383108755 423154212 423154212 433410082 433410082 427522530 426959362 275775972 240135500 210201800 222119236 222119236 210572052 722436449 722436449 723976673 723976673 551329888 559804065 735701009 735701009 225050704 633340244 633340244 197325568 197325568 160563556 605068516 769452992 769452992 771042285 771042285 544705448 423097916 327938732 352869604 449742022 449742022 431917078 431917078 407930950 198497778 366402444 366402444 306836018 537577728 539892993 816235777 881699280 881699280 577764753 651215577 651215577 659810328 959447847 959447847 989517783 989517783 705209532 705209532 204624448 108025412 235952732 243844188 277683264 441273588 441273588 290306324 438244696 575006865 762119384 762119384 84996364 84761840 268986750 604542501 802425184 802425184 796005309 796005309 697228389 697228389 688308804 212786508 212786508 169296780 169296780 144703812 141232540 105133508 162828768 162828768 144575444 101753757 765073005 765073005 407372997 586573827 586573827 346704571 998183576 998183576 986574039 831592995 831779427 831779427 587570195 405157646 515697524 515697524 465142556 935787189 935787189 768833710 683720901 568258848 188717756 241907100 241907100 179176480 163892344 163892344 125208092 106955160 94127768 94127768 223924832 223924832 150033292 134629388 252988664 600148740 673150897 673150897 991701032 991701032 69581723 0 134349060 134349060 203430216 402723080 402723080 311611986 311611986 455081526 530509366 864826385 864826385 622135524 751903437 1004845732 1004845732 760556205 708388629 708388629 880440858 1072285603 1072285603 741800669 255357685 232634524 113413412 109068520 18150608 38497848 97068264 121709752 564760688 697014161 697014161 318083870 713106962 713106962 381633221 876556760 876556760 246205788 246205788 377487956 515124104 515124104 341386890 341386890 215812166 136998752 135266820 152043552 771119940 771119940 518835678 518835678 956333805 956333805 834700898 1002229623 1002229623 511714056 280305478 268960770 473860100 473860100 750274333 750274333 825939747 825939747 302664296 302664296 949800136 1011876495 1028653711 1028653743 1028653743 822132913 822132913 900219352 979911143 979911143 805897274 98599139 600892368 612453105 612453105 554647955 393334818 393334818 326134458 285264792 58398112 17575824 33650736 63414320 314661084 314661084 236255414 429678144 432707170 432707170 285254144 521758936 521758936 447131158 253103688 253103688 93338696 52953968 52953968 483365160 483365160 184842244 307506224 307506224 862064945 862064945 402862086 1044652057 1044652057 285218828 840780391 840780391 554094081 437993472 500320474 1000772467 1000772467 733161714 588880324 679893975 679893975 426224679 386754616 386754616 741990476 741990476 684963783 684963783 652315006 652315006 390449691 551641953 989169425 989169425 568516704 718240793 718240793 676400781 322204602 212444429 774719648 774719648 642549497 769753509 803550700 803550700 292075136 408245912 988724273 988724273 649598818 649598818 506676053 791713634 1019351247 1019351247 642254782 985188183 985188183 821297380 187735500 255754748 255754748 93374536 532113628 532113628 338078274 256057588 256057588 206908044 174434436 240282012 240282012 264336980 264336980 457748928 907367903 1006811275 1006811275 376967608 376967608 424813799 424813799 455607716 455607716 944842805 944842805 860724314 860724314 309516802 488267572 488267572 424549414 424549414 281553170 647016652 974837343 1050334743 1050334743 980175671 907152112 907152112 387324703 12125760 1060636192 1060636192 967494247 49252959 41869200 189070192 189070192 335050944 632688547 632688547 330116466 330116466 840040464 840040464 822083619 536986626 29941984 560329089 560329089 717357145 717357145 574619793 696373269 696373269 665969529 133280753 670463428 670463428 655569465 655569465 588416617 588416617 869727331 869727331 552276097 537598720 623014577 623014577 885879698 885879698 346079562 156607436 430555453 430555453 587039899 587039899 578291177 536290045 324012682 324012682 593965370 922817792 922817792 320934242 277606690 59558576 61739232 331654624 331654624 321774048 321774048 298620000 26820192 282265024 282265024 281752770 281752770 273235968 273408130 810133569 951206850 951206850 812333652 812333652 551236096 954572032 954572032 761537642 761537642 1041812328 1041812328 715624708 780230941 780230941 620902480 297862144 14754240 14754240 16328640 32199520 32199520 29126304 425477528 493746334 493746334 354681100 354681100 120693102 496782644 496782644 414646876 418389270 418389270 271131906 571473984 571473984 572235776 572235776 572184081 546199056 733219701 733219701 186387605 767848573 767848573 775020901 780111248 780111248 609443241 739247164 739247164 172366948 186123000 231525648 681892873 755798380 755798380 666372772 254695582 346105465 1047004575 1047004575 716513408 716513408 591922353 591922353 323486898 882650208 882650208 853153491 853153491 1028393150 1028393150 648098419 851258417 851258417 450608117 590450000 590450000 786714226 786714226 728287390 101161220 800399728 800399728 700778909 979445079 1068280799 1068280799 728057365 663290925 539763760 134603268 134603268 70340488 8167680 8167680 87911040 157904788 243134372 243134372 75607872 92629192 685785860 685785860 658276504 658276504 239618644 234743930 351088074 405275153 976750359 976750359 844103966 122795251 588845320 625476777 625476777 811553086 902676035 902676035 655754026 279314627 1043931480 1043931480 272573158 965289539 965289539 1001204173 1022159941 1022159941 1008147458 1008147458 994550434 994550434 289704512 329019234 329019234 316009170 316009170 310216000 100964626 457361618 521212118 521212118 505611804 611212237 611212237 264298924 372461655 1015067848 1015067848 973329097 862138803 1000432135 1000432135 819196611 601985842 269408816 824512001 824512001 584435713 835793346 835793346 830440547 748996957 760076104 760076104 622294936 622294936 592321713 592321713 663409280 663409280 668448213 668448213 429989560 429989560 375605264 845528462 988547351 988547351 1042493790 1042493790 501961182 898184330 920360259 920360259 322062129 202706972 202706972 5818880 238308268 238308268 218942288 217630668 101275108 59956000 59956000 225249548 225249548 572266780 572266780 624565289 624565289 537073673 220597409 19873056 80090784 80090784 78852936 130603920 378857314 378857314 605618884 1038197117 1038197117 539038096 781708695 781708695 549454017 487451174 487451174 457687894 941114048 941114048 602980385 595694016 131616 524288 374289168 881944454 881944454 204767707 365705062 459565950 734881132 734881132 624643768 907027167 907027167 734144593 823017846 823017846 974668587 974668587 520142910 352794666 844465780 844465780 994599768 994599768 876617728 876617728 302564370 302564370 310427730 799540960 936936793 936936793 354418986 354418986 354418986 286262024 124466352 157967684 157967684 126772000 268384976 268384976 272437794 962211380 962211380 811010761 929043080 1062090916 1062090916 844560385 844560385 621519135 693138341 754811608 811083449 987760500 987760500 354492714 354492714 327753754 807065091 807065091 807065091 896491592 1011614860 1011614860 806716416 1041623583 1041623583 776498712 978845849 978845849 1008066054 1008066054 934271709 593750368 593750368 61075824 58900832 671272160 671272160 30199813 24118176 24118176 14080704 29786656 29786656 93248616 93248616 167867392 599848449 599848449 258624772 258624772 227674952 897558888 897558888 680858261 496992640 496992640 277189648 387238458 714903660 805966851 805966851 679686213 681803782 941639888 941639888 418578734 418578734 660956856 660956856 625066297 896632010 896632010 836425443 662192280 578532555 583792395 583792395 384465856 495128888 495128888 338936864 338936864 157188129 445487014 445487014 305095168 938893801 938893801 94013976 94013976 120064384 120064384 336456714 336456714 370040120 402721970 402721970 384736566 384736566 513966184 513966184 445131906 473281580 473281580 469497846 397775166 331894160 434115207 434115207 350355887 858000888 858000888 373952635 102913753 932676318 932676318 706079258 752225166 815162336 1012108585 1012108585 1009296685 1009296685 877241380 261397720 244287500 244287500 67577572 267312636 702390744 702390744 809570432 1067453023 1067453023 883318215 371905818 553305664 553305664 847474902 990040215 990040215 1026664201 1026664201 885364067 885364067 1010848328 1010848328 953340615 682699077 682699077 715922566 715922566 990786602 990786602 961488559 961488559 1042810143 1042810143 654846330 1023029141 1023029141 1030147625 1030147625 1008525194 930519987 930519987 328462962 571923136 877847413 877847413 637569667 695079718 796950537 796950537 637534281 555892912 958403177 958403177 866792523 866792523 741822010 741822010 504406790 504406790 358634112 793964643 793964643 1044640478 1044640478 1044455583 883520890 883520890 403329605 810379640 937952763 937952763 218834976 218834976 853151767 853151767 673551062 971302156 971302156 696900786 223912326 226088604 1056336762 1056336762 295916209 295916209 735059543 1043822163 1043822163 807633865 772400157 772400157 627164613 627164613 1018249973 1018249973 981494353 764972591 671162373 686438948 686438948 709635843 709635843 946611119 946611119 695732133 695732133 839705795 839705795 420533040 168035874 164424256 701960816 719248887 983848144 983848144 955331329 955331329 457388214 457388214 280961780 558635924 722942517 722942517 954996833 954996833 819599043 575234420 327779504 327779504 67163360 358177424 439565700 439565700 236314980 223746732 203425032 286969952 411173838 411173838 229380456 416321092 416321092 346470980 275500416 287445282 287445282 277166370 362292386 362292386 341320330 323258276 446742870 446742870 319630462 319630462 59443808 377359616 377359616 374477466 386183258 386183258 357597742 357597742 387049904 387049904 705423877 860635267 860635267 961327293 961327293 605948035 945032156 945032156 349884364 349884364 344084818 344084818 67108872 70258952 70258952 338576420 338576420 253920770 222429732 222429732 72487560 224136876 224136876 240135500 240135500 103852852 222119236 222119236 210572052 678361524 678361524 587876868 587876868 597983584 597983584 572387121 249825144 249825144 579788268 579788268 161496160 161496160 749019278 810197803 810197803 420633351 86192790 256197356 256197356 374347418 374347418 341410816 341410816 284613104 128707376 128707376 108085552 118551328 519768192 519768192 492119886 696923520 696923520 340587896 881699280 881699280 577764753 651215577 651215577 360349905 317802576 317048254 502843374 502843374 259194894 207753696 120205328 480469026 480469026 265947532 512836512 512836512 302474246 302474246 243556557 575006865 762119384 762119384 84996364 84761840 138355749 604542501 604542501 601806592 688311744 688311744 697228389 697228389 688308804 228404844 228404844 345852248 378720858 915463053 915463053 186510900 578203957 578203957 260469792 260469792 765073005 765073005 443943123 586573827 823654465 883406115 998183576 998183576 986574039 866167105 831779427 831779427 587570195 310675521 515697524 515697524 94607840 935787189 935787189 768833710 683720901 568258848 193351256 241907100 241907100 209499040 209499040 184023380 125208092 106955160 67371008 58983936 241380224 241380224 134629388 134629388 80036016 80036016 256344652 256344652 221766188 335563424 335563424 248223272 248223272 135641899 405879618 405879618 1029927332 1029927332 873648651 834801891 834801891 806429027 275159036 622135524 751903437 751903437 760556205 760556205 974963344 974963344 880440858 1072285603 1072285603 741800669 262294656 262294656 306714225 969375861 969375861 569460837 193416624 959778066 959778066 576747522 203212041 350852296 743135813 743135813 502526958 876556760 900837887 900837887 914821090 914821090 772814030 546843273 303368400 649071413 649071413 754535010 754535010 962112292 1024007508 1024007508 518835678 518835678 956333805 956333805 834700898 1002229623 1002229623 593707233 965804850 965804850 323893426 342756552 914830771 914830771 914758753 386056210 555374296 860494043 877452321 877452321 648036359 648036359 395624607 848316098 848316098 822101138 822101138 620807240 128041216 128041216 848856900 848856900 612453105 554647955 393334818 393334818 326134458 285264792 64463200 64463200 60107376 63414320 314661084 314661084 236255414 429678144 432707170 485347918 485347918 389120280 458265612 458265612 253103688 253103688 178923108 178923108 145823092 483365160 483365160 184842244 206594808 206594808 171102996 252912284 255204776 255204776 285218828 285218828 130488382 374809734 437993472 437993472 478597210 478597210 201744922 68244460 588880324 679893975 690185225 690185225 386754616 386754616 741990476 741990476 247548632 217097380 217097380 119994112 119994112 551641953 551641953 562568070 568516704 568516704 247245836 237604776 237604776 187172148 774719648 774719648 51659920 38308400 72679536 287540352 292075136 378496934 988724273 988724273 649598818 649598818 506676053 791713634 1019351247 1019351247 642254782 985188183 985188183 821297380 201492992 255754748 255754748 35409280 532113628 532113628 338078274 256057588 256057588 206908044 174434436 240282012 240282012 463536430 463536430 457748928 457748928 755215356 755215356 757938959 757938959 437791905 424813799 455607716 455607716 944842805 1022700495 1022700495 221371339 887243564 887243564 71858840 77729152 134057176 766632813 766632813 349859542 349859542 1016725973 1016725973 85334568 87298304 87298304 12125760 1060636192 1060636192 967494247 49252959 52952096 189070192 189070192 279128272 279128272 895598632 937685499 937685499 840040464 840040464 806490627 63001266 44073232 270623104 543170691 721971120 721971120 605112873 768725753 768725753 105330992 105330992 58145712 58992454 456994614 456994614 582390866 582390866 869727331 869727331 550638273 329331635 44053456 566439906 885879698 885879698 346079562 156607436 437165308 437165308 587039899 587039899 578291177 536290045 324012682 324012682 593965370 922817792 922817792 320934242 277606690 59558576 59558576 49882064 49882064 321774048 321774048 298620000 26820192 26820192 31210272 31210272 30544608 273235968 273408130 275523776 277752721 584455059 585239937 585239937 928144553 928144553 1015735071 1015735071 871417931 897618257 897618257 715624708 780230941 780230941 620902480 184942608 43503632 43503632 42195456 17076768 17076768 5243520 284780704 381996770 381996770 203949324 500450496 500450496 496782644 496782644 411504020 451136350 451136350 341300110 371130021 998587983 998587983 572235776 572184081 542511604 733219701 733219701 186387605 767848573 767848573 778569117 780111248 780111248 574933024 739247164 739247164 134531201 186123000 186123000 204396736 204396736 765976352 765976352 456841014 456841014 143183307 143183307 492937582 492937582 621724757 621724757 982582238 982582238 973119522 713549300 713549300 1028393150 1028393150 648098419 851258417 851258417 450608117 590450000 590450000 443552786 511260420 511260420 506988318 528257176 528257176 424568226 424568226 419639334 311241782 506538552 506538552 397360506 397360506 364838266 321522264 211038168 211038168 256909844 256909844 437602579 692898089 692898089 363422555 685785860 685785860 725108177 725108177 239618644 234743930 351088074 671649630 691217727 691217727 251491025 388205732 388205732 589373745 589373745 1034806652 1034806652 896043228 655754026 279314627 498080362 498080362 422106984 272573158 644838630 1001204173 1022159941 1022159941 147432771 114282768 263475970 337328114 345012162 345012162 306568418 316009170 316009170 310216000 89879660 144881588 144881588 386529652 1015464194 1015464194 305305606 149340784 372461655 372461655 584766506 584766506 549077200 176361748 176361748 555050769 555050769 269408816 824512001 824512001 584435713 835793346 835793346 830440547 571639976 327292266 577897361 622294936 622294936 709362704 709362704 690826520 736413120 736413120 668448213 429989560 429989560 380599980 845528462 988547351 988547351 1042493790 1042493790 165392555 78902088 126906672 126906672 69940488 69940488 132593016 132593016 62547992 32380896 30592720 133450552 133450552 64150432 109316120 109316120 0 5242880 5243520 739313024 762389901 762389901 137897645 164563332 229377892 229377892 221983148 138945768 130603920 272831619 810184834 1038197117 1038197117 254881823 576234700 576234700 998254465 998254465 967836519 1034065583 1034065583 488264513 158609208 687982128 687982128 639038397 374289168 881944454 881944454 677383296 1041109151 1041109151 734881132 734881132 624643768 907027167 907027167 437530808 823017846 823017846 716102997 520142910 520142910 352794666 844465780 844465780 937962105 937962105 876617728 983816861 995354834 995354834 905106411 905106411 564183393 1040216151 1040216151 354427433 438623788 550499096 550499096 89995153 104388528 104388528 57807792 57807792 90836272 846404136 846404136 811010761 764618300 1062090916 1062090916 844560385 844560385 900826537 900826537 693138341 735216322 735216322 721559848 488678802 354492714 327753754 807065091 807065091 807065091 896491592 896491592 204160235 806716416 903116838 903116838 776498712 978845849 978845849 1008066054 1008066054 934271709 744714653 656598520 579022929 572709073 671272160 671272160 692472944 709498005 709498005 556632592 158593956 44707552 137573124 153707844 213438360 213438360 109887456 84021288 84021288 131112 442550384 442550384 442548336 442548336 261231228 670586416 728810421 728810421 753452493 753452493 155899044 484491908 484491908 219169222 138461316 266203656 660956856 660956856 892834528 896632010 896632010 836425443 578532555 578532555 583792395 583792395 384465856 495128888 495128888 770404344 770404344 514799497 519611586 519611586 305095168 938893801 938893801 384868122 94013976 60358770 495044844 495044844 154352012 323661824 402721970 402721970 168424676 174318236 174318236 445131906 462034038 473281580 473281580 469497846 397775166 331894160 331894160 276713632 62130288 972030951 972030951 746266991 746813324 932676318 932676318 883739972 883739972 815162336 1012108585 1012108585 1009296685 1009296685 877241380 340045722 441173524 441173524 94758096 400181630 400181630 538970928 588515889 657758345 784734429 784734429 210899532 770741228 770741228 847474902 990040215 990040215 1026664201 1026664201 805831683 787364634 787364634 838426688 838426688 682699077 682699077 834370978 834370978 990786602 990786602 961488559 961488559 553664656 654846330 654846330 205798018 644365248 644365248 331193635 248462556 320975140 328462962 655323144 655323144 877847413 877847413 637569667 695079718 695079718 463622297 381710838 807485980 945889671 945889671 134283651 525874372 525874372 234811174 120588712 84749352 70703880 793964643 793964643 1044640478 1044640478 1044455583 688119932 684933190 403329605 810379640 937952763 937952763 457903122 908021940 908021940 853151767 991628228 991628228 971302156 1032767864 1032767864 624774157 1056336762 1056336762 383931484 749274831 749274831 221866592 221866592 554949933 554949933 287094442 713564822 713564822 940886535 940886535 717335250 177810947 285947121 990526134 990526134 709635843 709635843 946611119 946611119 695732133 978837750 978837750 839705795 145069126 145069126 136575248 701960816 719248887 983848144 983848144 448508930 448508930 164172832 404100672 404100672 55916368 55916368 131838960 208033972 237642908 237642908 32329264 67490216 67490216 93990776 358177424 439565700 439565700 218012204 99828040 99828040 286969952 411173838 411173838 229380456 416321092 416321092 400560116 400560116 287445282 287445282 277166370 362292386 362292386 341320330 449035040 449035040 386792370 485006200 485006200 173932694 377359616 377359616 374477466 245502300 245502300 148969880 122457112 122457112 101469368 135001092 672784436 722727477 961327293 961327293 677315370 945032156 945032156 349884364 349884364 363895668 504500320 504500320 121246192 121246192 371343474 413997888 431121542 431121542 280192518 288337730 355132746 355132746 286034248 72215688 50332472 117220784 193593916 193593916 678361524 678361524 687897925 687897925 597983584 597983584 572387121 249825144 587223993 587223993 635695029 644218764 644218764 749019278 810197803 810197803 420633351 86192790 256197356 256197356 374347418 374347418 341410816 341410816 284613104 128707376 128707376 108085552 118551328 519768192 519768192 492119886 746499496 1058436513 1058436513 550429019 550429019 374549266 538412754 571536865 991319073 991319073 949322743 972080103 972080103 735127271 704151568 120205328 480469026 480469026 265947532 512836512 512836512 330530608 513795538 513795538 457778358 474554536 703922516 703922516 760716004 760716004 563343969 100763409 622823904 688311744 688311744 620253625 375820270 375820270 262718844 262718844 345852248 378720858 915463053 915463053 186510900 578203957 578203957 260469792 260469792 737025525 737025525 443943123 571635585 894047945 894047945 883406115 847646254 866167105 866167105 705434624 247728348 247728348 514729264 514729264 151593014 72131584 77722720 692186464 692186464 26804992 32911136 193351256 209241996 209241996 209499040 209499040 184023380 118341848 118341848 70027480 44060632 241380224 241380224 204961920 204961920 618877356 632679273 756299305 756299305 723773493 335563424 335563424 248223272 248223272 615302961 615302961 805469277 1029927332 1029927332 873648651 834801891 834801891 806429027 33094880 331369106 423889062 683424662 730807413 730807413 974963344 974963344 550764569 550764569 236997072 44378828 262294656 262294656 439843633 969375861 969375861 844371719 328853556 959778066 959778066 1059817418 1059817418 404836356 743135813 743135813 502526958 536015854 900837887 900837887 914821090 914821090 772814030 546843273 524813016 926417202 926417202 754535010 754535010 962112292 1024007508 1024007508 254739888 448252682 471284238 876836362 876836362 737007788 788562154 788562154 965804850 965804850 373034778 1027087944 1027087944 914830771 999735390 999735390 891080235 860494043 877452321 877452321 648036359 648036359 395624607 848316098 848316098 822101138 822101138 7340928 128041216 128041216 848856900 874430933 1071414276 1071414276 1009749895 925254489 925254489 792482008 461584272 461584272 413016852 532103394 532103394 335992842 350518096 350518096 328865394 485347918 485347918 389120280 458265612 458265612 128894568 128894568 178923108 178923108 154297204 341002748 341002748 448248276 448248276 171102996 322680534 479966980 479966980 291639714 291639714 890704464 990328887 990328887 739297339 480213067 496014920 1006914051 1006914051 967881390 579924485 599802622 690185225 690185225 566264318 173565304 245686428 247548632 287384832 287384832 217097380 119994112 119994112 458041858 772569316 772569316 344377261 624737721 742917653 742917653 438067758 195299700 250386720 411882698 411882698 136889604 899355135 944246213 944246213 275951885 1010190351 1010190351 902981136 902981136 371506363 310903890 48907218 439522904 439522904 79168454 211030432 366743530 366743530 201492992 79486272 269096385 890376747 890376747 590222617 648429825 648429825 505700438 616022042 619321825 619321825 588726736 885241512 885241512 854407796 854407796 841235014 757938959 757938959 437791905 1059758336 1059758336 1007682067 1007682067 1022700495 1022700495 759191937 887243564 887243564 445140292 212463636 212463636 766632813 766632813 349859542 349859542 1016725973 1016725973 939704619 755549229 658818100 998710628 998710628 798766355 1051661449 1070406265 1070406265 728703870 271916692 279128272 279128272 895598632 937685499 937685499 650162491 552747216 552731072 44077585 44073232 6471808 571311121 721971120 721971120 605112873 768725753 768725753 566249600 293355664 616613536 616613536 867122547 867122547 385844091 952780731 952780731 546729744 911854339 911854339 852098826 852098826 638583896 294457066 350488038 493119980 493119980 437165308 483855582 483855582 199376662 89442984 89442984 72535672 160318480 164103396 164103396 143193136 35989504 35651856 10823952 10486080 4194752 4195584 11032384 55496816 55496816 52265440 45187010 271445250 275098754 275098754 268905474 281034400 281034400 352990248 353319978 547193346 928144553 928144553 1015735071 1015735071 871417931 385892352 385892352 86049128 94495080 94495080 11212560 44701680 62925488 62925488 54862400 17076768 17076768 5243520 284780704 381996770 381996770 84150312 500450496 500450496 404276742 283296904 305051602 840213345 840213345 726670886 860496846 998587983 998587983 569967580 300615305 372658954 372658954 570630800 570630800 841115311 841115311 778569117 778569117 628522493 574933024 591397041 678581816 678581816 797622933 797622933 772968516 196663360 765976352 765976352 456841014 818072072 818072072 353112131 290981538 407557666 621724757 621724757 982582238 982582238 1005177941 1005177941 713549300 500611253 861606769 874200786 874200786 289407936 350343146 394350107 892420026 892420026 511260420 511260420 506988318 479966418 337363304 580292032 580292032 578475921 724516177 1008686097 1041149044 1041149044 397360506 364838266 321522264 211038168 211038168 256909844 256909844 437602579 692898089 692898089 363422555 363422555 560778112 725108177 725108177 281038447 966332121 966332121 928893496 691217727 691217727 251491025 388205732 388205732 769668690 769668690 1034806652 1034806652 914687159 147480960 147480960 208173120 422106984 671877168 721945653 966175037 966175037 171532570 269212500 269212500 508494472 508494472 337328114 345012162 345012162 293709680 117450152 132910584 153462200 153462200 144881588 144881588 386529652 1015464194 1015464194 154374144 227791148 227791148 101802588 562102368 562102368 448995397 448995397 323761200 556666835 556666835 31066816 14723072 14723072 13497344 14292672 21982368 28051240 28051240 131072392 577897361 577897361 223945613 709362704 709362704 690826520 736413120 736413120 621230121 621230121 271080271 380599980 380599980 317520200 118564880 643236552 643236552 398636669 1065496702 1065496702 963221351 158492579 190038676 190038676 146047232 149275456 164633152 164633152 133450552 133450552 64150432 109316120 204490508 221250348 573610268 675439009 739313024 762389901 762389901 227420744 164563332 229377892 229377892 221983148 138945768 371558450 419528170 810184834 810184834 549496770 152044520 576234700 576234700 998254465 998254465 967836519 1034065583 1034065583 488264513 334680720 851512578 851512578 832628935 458204609 237109382 637665286 1015153007 1041109151 1041109151 442634646 423860351 234022048 908717049 908717049 437530808 604669498 706005525 716098187 937122106 937122106 1065279423 1065279423 845578365 937962105 937962105 287359266 983816861 995354834 995354834 949596519 905106411 585824724 1040216151 1040216151 666240091 696063921 696063921 550499096 216372452 216372452 104388528 149584292 149584292 436722918 846404136 846404136 940781014 940781014 370818507 222369828 151426216 621009536 900826537 900826537 645936380 645936380 454590856 488678802 488678802 205571104 96116560 96116560 9313344 542298112 808059204 955178439 955178439 735834727 903116838 903116838 644738326 843656848 843656848 531035777 531035777 744714653 744714653 656598520 585756112 572709073 572709073 545275905 692472944 709498005 709498005 556632592 158593956 44707552 137573124 153707844 213438360 681083985 681083985 851185491 851185491 409362439 888025154 888025154 515333021 944919194 944919194 670586416 728810421 728810421 753452493 837249382 877066573 944017994 1022548466 1022548466 775021341 783544377 783544377 772741689 892834528 892834528 708152528 332065840 680509011 680509011 544420489 544420489 101461464 285786656 492634582 770404344 770404344 514799497 519611586 519611586 248376540 98574380 384868122 384868122 295124080 295124080 495044844 495044844 154352012 154352012 319045768 319045768 168424676 174318236 174318236 330966180 462034038 462034038 176560212 176560212 163844272 28837728 135530134 299368776 299368776 972030951 972030951 746266991 746813324 746813324 705928296 883739972 883739972 792338645 681547081 616357121 616357121 202562070 308991378 340045722 441173524 441173524 299211474 400181630 853206609 853206609 579462225 974424088 974424088 784734429 621171361 770741228 770741228 763437773 298131508 399248944 506326548 506326548 202687258 787364634 812408408 812408408 126167160 259236606 468382102 834370978 834370978 353376264 353376264 33867792 33867792 637567112 849357001 849357001 841296147 126887155 307161048 315307218 954769906 954769906 47712546 655323144 655323144 394395873 826354697 826354697 490537412 490537412 162530087 105955992 807485980 945889671 945889671 683799692 613028937 435909577 830063302 830063302 360002952 360002952 664983627 664983627 321128754 303368866 294233927 521878569 805871912 805871912 268443648 268484610 268733488 457903122 908021940 908021940 457344185 991628228 991628228 857470515 1032767864 1032767864 1041420301 1041420301 882451527 882451527 749274831 749274831 613426245 339739298 554949933 816278291 816278291 713564822 713564822 940886535 940886535 726215020 726215020 475269187 990526134 990526134 459120165 304012818 512034850 512034850 227024422 978837750 978837750 465697431 384353754 31407840 59251780 327205056 327205056 322961586 953967111 953967111 943039362 941362759 941362759 946865921 946865921 942801792 589564065 208033972 725981372 725981372 709001377 762098788 762098788 249899484 288545352 288545352 155032288 373299784 373299784 206906138 189273856 189273856 170394900 149297604 178387088 178387088 400560116 676792615 676792615 439134786 833543619 833543619 274406164 274406164 449035040 1013768541 1013768541 1070862336 1070862336 605998690 388579938 388579938 460360612 460360612 343286038 343286038 123877484 92747880 92747880 772364325 772364325 710152854 402837510 202965180 694891941 694891941 945815943 945815943 941363072 1021349964 1021349964 936778491 936778491 235406364 1017693058 1017693058 704697282 704697282 838015210 838015210 563260264 430231328 286034248 221135336 221135336 117220784 117220784 149599589 149599589 147656677 687897925 687897925 195035508 552412704 552412704 709427824 709427824 587223993 635695029 644218764 644218764 92880613 21454312 8339328 362791616 362791616 48234960 48234960 62444272 64538352 64538352 38099056 38099056 56215744 60632688 60632688 8654436 437471256 490475310 490475310 746499496 1058436513 1058436513 818074242 550429019 374549266 741378970 741378970 991319073 991319073 949322743 972080103 972080103 735127271 704151568 189445992 586738047 586738047 169351268 947724759 947724759 330530608 513795538 513795538 873164089 873164089 703922516 703922516 760716004 760716004 563343969 100763409 622823904 622823904 648944985 648944985 965253178 994576449 994576449 471859470 463998432 463998432 958120997 958120997 135276816 199805088 199805088 22153712 171576596 171576596 135269380 135269380 568856936 894047945 894047945 594532659 594532659 354531442 981625457 981625457 962992706 805345986 805345986 514729264 372252918 372252918 943909877 943909877 955414624 955414624 564909728 159500516 30470788 201347072 201510924 201510924 84176016 118341848 118341848 70027480 61081968 58477904 150318424 204961920 204961920 618877356 632679273 756299305 756299305 723773493 310140028 315282642 371852434 380159322 615302961 615302961 805469277 805469277 751437283 584230361 584230361 848365367 848365367 425730500 373489810 423889062 683424662 886305483 886305483 567431208 881456688 881456688 663822969 516434667 722032604 722032604 681749172 439843633 859711879 859711879 844371719 328853556 542188161 792306077 1059817418 1059817418 404836356 404836356 243886092 243886092 107681160 369888530 369888530 349488728 349488728 378607104 482747528 524813016 926417202 926417202 479481189 539265280 562661906 728610186 728610186 520357950 495631380 471284238 876836362 876836362 1017144656 1017144656 958188959 855485431 809247635 373034778 1027087944 1027087944 607574793 999735390 999735390 895910890 895910890 832301102 832301102 934531272 934531272 678292869 866962803 866962803 614502668 614502668 346216399 890706802 890706802 205637184 874430933 1071414276 1071414276 1009749895 925254489 925254489 792482008 826475412 1007820806 1007820806 532103394 532103394 335992842 350518096 350518096 328865394 466160740 858334746 1050615068 1050615068 981870350 981870350 616222984 268843652 154297204 154297204 341002748 341002748 448248276 448248276 667009196 667009196 780288156 814070139 814070139 291639714 890704464 990328887 990328887 739297339 480213067 496014920 1006914051 1006914051 967881390 293088920 1001268400 1001268400 1011166508 1011166508 463655286 463655286 468298705 468298705 335586560 335586560 889981995 889981995 867265929 867265929 850441507 779222773 624737721 742917653 781027609 781027609 195299700 250386720 411882698 411882698 136889604 899355135 944246213 944246213 275951885 1010190351 1010190351 929073054 902981136 478156751 899790400 899790400 636647113 851972840 1067112063 1067112063 538367596 438996740 81926792 34213304 269096385 890376747 890376747 590222617 648429825 648429825 505700438 616022042 619321825 619321825 588726736 885241512 885241512 854407796 854407796 841235014 723125266 536870982 536870982 1059758336 1059758336 1007682067 1007682067 617096855 759191937 759191937 182514440 445140292 445140292 263455936 264862024 1068040544 1068040544 67641344 67641344 874533898 939704619 939704619 755549229 658818100 998710628 998710628 798766355 1051661449 1070406265 1070406265 769944802 271916692 128528248 572539145 654893080 654893080 917603963 917603963 639799305 639799305 608342017 42111089 558312610 571311121 571311121 34442400 63466496 63466496 566249600 566249600 293355664 616613536 616613536 867122547 867122547 837682447 952780731 952780731 725044836 943571123 943571123 853073162 908971858 908971858 294457066 350488038 493119980 493119980 363587020 365705450 365705450 109520384 71851760 71851760 72535672 274947562 274947562 382310464 382310464 314870290 314870290 23101584 555762001 555762001 841058736 842594753 842594753 552568289 64876769 45187010 556084768 569946305 569946305 542907264 281034400 281034400 821239987 821239987 562036833 907072099 907072099 600869263 888329058 888329058 847255811 875959120 875959120 848465932 848465932 613585474 169870160 62925488 134422102 312290898 312290898 313529090 313529090 182526018 492835054 492835054 211289580 211289580 327232712 327232712 76366432 173624404 840213345 840213345 746484072 860496846 860496846 619196661 569967580 468193664 468193664 388227344 570630800 797996064 841115311 841115311 759836964 708522572 583087168 545993793 529500926 696407924 696407924 797622933 797622933 772968516 160757341 639226921 789930583 974052375 974052375 914768972 353112131 290981538 407557666 905971720 905971720 839125011 687748089 1005177941 1005177941 1004117769 1004117769 861606769 874200786 874200786 1040414372 1040414372 394350107 910251016 910251016 118763418 351041064 479966418 479966418 291652052 580292032 580292032 578475921 724516177 1008686097 1041149044 1041149044 201378344 201378344 188055600 179555092 179764564 179764564 61227492 233549744 233549744 193622068 193622068 160031072 145090884 251937152 251937152 281038447 966332121 966332121 928893496 638108313 346647680 346647680 319359970 861154706 1032070307 1032070307 952674269 914687159 914687159 147480960 147480960 208173120 208173120 671877168 721945653 966175037 966175037 782930771 782930771 646860061 508494472 508494472 502590694 355500576 355500576 106558064 106558064 132910584 153462200 211428370 512963166 512963166 402060136 752969690 752969690 304252127 227791148 410194091 913650493 913650493 614799715 614799715 972166772 972166772 834344659 572451488 589484337 589484337 587874336 13497344 14292672 23722144 28051240 28051240 131072392 131072392 17566752 557844608 557844608 155238401 563144835 701889222 701889222 621230121 621230121 271080271 551760321 551760321 277423170 652943368 652943368 907759772 907759772 1065496702 1065496702 963221351 158492579 190038676 190038676 217347680 217347680 164633152 164633152 57563217 596133585 596133585 161119801 554757825 554757825 573610268 675439009 675439009 646358773 646358773 546449056 771922424 771922424 565352000 235344304 81937512 371558450 419528170 629152624 794854364 794854364 216532428 573545196 661345969 741516477 741516477 783903149 806578928 806578928 341260938 334680720 851512578 851512578 1032614080 1032614080 703910391 932305306 1015153007 1015153007 742391867 442634646 423860351 234022048 908717049 908717049 755503416 707400981 437782038 716098187 965626674 965626674 1065279423 1065279423 845578365 504542909 270853021 251217336 195035508 991256288 991256288 984023447 717226725 717226725 1026457373 1026457373 858984822 858984822 837185232 202673600 572056001 572056001 132252808 621625609 621625609 436722918 551060546 607702592 940781014 940781014 849889691 948638808 948638808 893420283 1016315905 1016315905 879378792 678298369 678298369 587092816 323618440 205571104 187616937 825148477 873258539 873258539 808059204 955178439 955178439 735834727 715577685 571660033 571660033 304392320 578654099 578654099 175118434 149106048 92568952 585756112 585756112 547600769 547600769 162307521 17250816 10465152 13044288 13044288 9783488 9941056 9941056 14587072 67238400 681083985 681083985 851185491 851185491 1009853199 1009853199 1025946020 1025946020 944919194 944919194 642947547 786052556 786052556 528578830 837249382 877066573 944017994 1022548466 1053839798 1053839798 783544377 783544377 772741689 586734192 708152528 708152528 546042945 680509011 680509011 339347920 766832269 766832269 285786656 285786656 393530298 393530298 741534400 741534400 218169832 148971972 98574380 96700456 96700456 334724352 334724352 97094170 32296416 116403046 116403046 129515638 129515638 532678398 532678398 238195252 73553632 189600652 253700948 253700948 84545976 364381272 364381272 398066552 398066552 299368776 83625570 222422592 759700512 759700512 742791309 705928296 798879357 798879357 792338645 685215184 645048320 645048320 113413400 113413400 107362368 337163968 337163968 299211474 169136155 853206609 853206609 579462225 974424088 974424088 133453889 621171361 621171361 90313128 676512160 676512160 298131508 506326548 506326548 645688912 654910521 906292553 906292553 181193940 181193940 173845152 159656000 159656000 285409298 323162800 323162800 353513704 637567112 849357001 849357001 841296147 748691264 935383631 935383631 954769906 954769906 33554448 33554448 33554432 17302560 1053369522 1053369522 757803109 768620813 907199478 907199478 146994312 218029188 683799692 949226055 949226055 435909577 830063302 830063302 360002952 360002952 734197184 734197184 996746661 996746661 958997799 988381600 996688119 996688119 743196953 778430877 778430877 510463645 508873374 137494532 137494532 353725576 457236715 592710838 592710838 868670717 1041420301 1041420301 882451527 882451527 260768360 613426245 613426245 339739298 375403144 816278291 816278291 575834113 652554268 713606229 713606229 726215020 726215020 475269187 303149184 1019243701 1019243701 650314403 703797064 1011352719 1011352719 227024422 296520206 384353754 384353754 31407840 679785217 754320200 754320200 952140544 953967111 953967111 943039362 941362759 941362759 946865921 946865921 942801792 589564065 71598352 725981372 725981372 709001377 762098788 762098788 249899484 193523112 527832146 527832146 373299784 373299784 206906138 419561792 421663014 421663014 161481062 178387088 178387088 283694212 676792615 676792615 439134786 833543619 833543619 446049152 446049152 343022546 1013768541 1013768541 1070862336 1070862336 605998690 388579938 1057714659 1057714659 460360612 899400095 899400095 999151673 999151673 1053305033 1053305033 956856351 710152854 402837510 443232658 694891941 694891941 945815943 945815943 941363072 1021349964 1021349964 962220472 962220472 367579663 1017693058 1017693058 704697282 704697282 838015210 838015210 563260264 430231328 148922244 221135336 221135336 18148888 102615584 161603940 253156348 253156348 247228608 247228608 851812610 851812610 643925256 709427824 778113444 778113444 945425255 945425255 719524036 719524036 484232910 484232910 967002055 967002055 760248265 703230944 361471914 361471914 320834080 320834080 289669456 88421696 117766504 117766504 90361600 437471256 471333390 471333390 708000599 708000599 818074242 818074242 313449810 640138432 818022472 818022472 759172967 339513160 315149746 740869507 740869507 477238158 828102025 828102025 657730575 657730575 460930050 947724759 947724759 310642770 394304614 394304614 873164089 873164089 220334265 220334265 598755147 598755147 954867938 954867938 889825225 779527144 779527144 648944985 965253178 994576449 994576449 471859470 463998432 463998432 958120997 958120997 728546352 199805088 199805088 28950368 171576596 698874213 698874213 422233923 422233923 201277428 570556684 594532659 594532659 354531442 981625457 981625457 962992706 805345986 805345986 557243169 889568032 889568032 943909877 943909877 955414624 955414624 564909728 280674733 343809930 627488230 694342222 892495366 1023413901 1023413901 627977613 815421247 815421247 788215989 642734376 642734376 230226636 718480048 718480048 726967193 726967193 760547887 760547887 315282642 536746436 536746436 488163588 488163588 565186656 565186656 240665492 537408261 801833883 848365367 848365367 425730500 909031846 909031846 870576474 886305483 886305483 567431208 881456688 881456688 663822969 516434667 722032604 722032604 681749172 118150200 111070440 94809944 163926564 163926564 742391892 744755280 744755280 615663881 213983436 213983436 112399252 37750288 49024464 369888530 369888530 349488728 349488728 378607104 482747528 882216400 882216400 50094154 970244 951374560 951374560 728610186 728610186 520357950 495631380 210272324 153642104 843334348 1017144656 1017144656 958188959 855485431 942670127 942670127 790630974 909531452 909531452 607574793 1020084741 1020084741 895910890 610412572 479550797 1022352439 1022352439 993966926 866962803 866962803 759716696 614502668 660868361 890706802 890706802 152966753 612670069 612670069 95033148 547557928 562146050 562146050 464726316 826475412 1007820806 1007820806 402657794 151228552 202554260 243146274 243276616 401027136 466160740 984613112 1050615068 1050615068 981870350 981870350 616222984 268843652 155353428 67078864 387698188 387698188 283206464 283206464 667009196 741362769 1068012044 1068012044 1023809583 577513988 577513988 471108169 471108169 437282961 437282961 211309130 209050760 492222136 492222136 293088920 1001268400 1001268400 1011166508 1011166508 463655286 463655286 468298705 468298705 335586560 335586560 889981995 889981995 867265929 867265929 850441507 779222773 399359478 399359478 781027609 781027609 335887626 573185290 573185290 337776920 8913344 50332208 50332208 22875840 26288736 767944042 929073054 929073054 577267010 527176990 899790400 997751568 997751568 851972840 1067112063 1067112063 538367596 438996740 36490512 36490512 23628560 28312416 28312416 17827872 17827872 67289088 67289088 67244040 67244040 67244040 53256 70656 734208 734208 734208 723125266 857343074 857343074 536870982 657980194 657980194 193460045 462686073 823140795 823140795 762450460 762450460 624161216 263455936 263455936 264862024 1068040544 1068040544 1040390186 891812139 891812139 705240576 705240576 671489557 348785287 1023753880 1070281983 1070281983 879281547 879281547 873262223 769944802 60891616 60891616 598845809 654893080 654893080 917603963 917603963 639799305 845857986 845857986 809521539 558312610 558312610 591487232 593833233 593833233 593832240 52699152 52699152 50595888 537579604 537579604 118174776 118174776 837682447 837682447 566090060 725044836 943571123 943571123 853073162 908971858 908971858 1837568 325323774 325323774 535298482 535298482 365705450 365705450 373502820 422973640 422973640 467326710 467326710 323754656 382310464 382310464 314870290 523408142 523408142 555762001 555762001 841058736 842594753 842594753 732244341 501541155 329596296 556084768 569946305 569946305 542907264 344462018 282150208 821239987 821239987 581613696 907072099 907072099 655828777 888329058 888329058 847255811 875959120 875959120 874666078 848465932 613585474 372700256 106450480 201625600 312290898 312290898 393561112 393561112 295224930 533726602 533726602 521160710 403441330 361565322 266152084 434244560 434244560 421213734 746484072 746484072 426872613 347091448 132318026 41943184 468193664 468193664 388227344 388227344 797996064 797996064 759836964 759836964 583087168 583087168 545993793 225624096 696407924 696407924 179881121 171312372 223752244 223752244 249357556 789930583 974052375 974052375 914768972 668864149 395593978 358350993 905971720 905971720 839125011 572590994 870607952 1000003191 1004117769 1004117769 753741545 639769024 639769024 1040414372 1040414372 833447274 910251016 910251016 744760896 412621211 792308982 877164584 877164584 646511794 803597232 876485098 876485098 151778340 136577584 168894996 402835460 402835460 290946436 62725376 62725376 23685856 169113624 237324908 237324908 193622068 193622068 138792372 138792372 174263272 174263272 269393558 693999216 693999216 676974234 638108313 346647680 346647680 319359970 861154706 1032070307 1032070307 986026355 986026355 685402469 685402469 343957511 77982024 143458440 611649850 611649850 335970464 838547817 848247891 848247891 865462942 865462942 852806355 784661078 355500576 355500576 201536420 201536420 212811392 212811392 246686308 512963166 512963166 493504272 752969690 911515655 911515655 761279496 1040777375 1040777375 913650493 614799715 614799715 972166772 972166772 834344659 575772704 589484337 589484337 587874336 8944736 3144960 23722144 23722144 109099177 660050656 660050656 794042000 794042000 557844608 701024388 701024388 562826337 973079813 973079813 807411987 807411987 683804364 1009936870 1009936870 652943368 652943368 907759772 907759772 790287949 772486771 881417566 881417566 210444904 618245881 618245881 255116264 230766740 230766740 187795912 596133585 596133585 161119801 554757825 554757825 227838188 542740544 565947725 646358773 646358773 546449056 771922424 771922424 565352000 235344304 81937512 80351640 250479664 629152624 794854364 794854364 216532428 573545196 661345969 741516477 741516477 783903149 1071673384 1071673384 397484922 210730868 623376200 623376200 1062914929 1062914929 715379232 994079322 994079322 680733273 340394876 511840264 820521728 820521728 560215506 755503416 755503416 707400981 437782038 437782038 965626674 965626674 874281643 818009823 434222740 434222740 331011954 251217336 714648308 846960929 984023447 984023447 717226725 717226725 669060604 454017047 858984822 858984822 837185232 662753292 615195696 603986432 211163724 621625609 621625609 40371600 551060546 607702592 874829530 874829530 849889691 948638808 948638808 893420283 1016315905 1016315905 879378792 678298369 678298369 587092816 107519928 107519928 187616937 825148477 873258539 873258539 891658383 891658383 549659002 1007362107 1007362107 667367675 623648179 623648179 592774201 578654099 416624198 300941636 63940848 544230016 544230016 541204993 541204993 17250816 26778784 26778784 6020160 18047616 25288800 29442144 29442144 29360352 67238400 113722880 580098590 949165719 949165719 1009853199 1009853199 1025946020 1025946020 553124440 553124440 445396829 786052556 786052556 528578830 803592616 803592616 304241142 981502542 1053839798 1053839798 600342976 747052649 747052649 648572765 473049617 274227585 909812118 909812118 285043082 285043082 766832269 766832269 212395132 295210854 949118058 1057937865 1057937865 814686094 988858872 988858872 473725782 434764962 96700456 334724352 334724352 422701382 422701382 430842384 430842384 86948696 153759748 532678398 532678398 238195252 571107919 571107919 298917338 972698543 972698543 364381272 570966672 887653721 887653721 1066145818 1066145818 901908708 901908708 867905910 742791309 642618016 659130448 659130448 685215184 685215184 893527432 893527432 319076505 527891046 527891046 312945502 386990142 386990142 74237600 374486112 374486112 633080458 633080458 552240451 643304968 643304968 375653963 318075446 676512160 676512160 297890166 391474146 957949988 957949988 654910521 906292553 906292553 775737245 775737245 344999219 161384450 144309286 285409298 323162800 323162800 373293148 650182720 1048585423 1048585423 1015545943 748691264 935383631 935383631 797001004 797001004 527433150 527433150 873992976 873992976 1053369522 1053369522 916391972 916391972 907199478 907199478 381971138 553911568 553911568 949226055 987799099 987799099 449016967 840520900 840520900 38323344 734197184 734197184 996746661 996746661 965971571 988381600 996688119 996688119 755795984 806145027 806145027 614207049 672927305 672927305 606471204 499127368 893027842 893027842 293782112 293782112 268587616 268587616 50332704 50332704 260768360 260768360 127218772 96542952 96542952 642157257 642157257 575834113 866866927 954057927 954057927 1069828719 1069828719 780892818 593288226 1019243701 1019243701 650314403 703797064 1011352719 1011352719 84031160 182096649 339670095 807619850 807619850 679785217 754320200 910173343 952140544 952140544 416034186 480822606 480822606 140510596 140510596 717882192 717882192 35989776 102869264 102869264 102793216 574464 34571472 104907760 124822004 236031508 527832146 527832146 341698560 430908262 430908262 419561792 421663014 421663014 161481062 519943918 519943918 873327578 873327578 177531951 1053252778 1053252778 806445687 676410045 676410045 343022546 148977818 111276952 101701724 314944380 314944380 376780990 1057714659 1057714659 272894082 899400095 899400095 999151673 999151673 1053305033 1053305033 956856351 1028923530 1028923530 1004745167 443232658 134743044 69329160 929073280 929073280 730120271 526573997 962220472 962220472 367579663 941829334 941829334 321007648 650591188 650591188 179203357 200844434 389008946 389008946 359364410 304888040 61915136 87208524 161603940 253156348 253156348 747139590 747139590 851812610 851812610 643925256 643925256 778113444 778113444 945425255 945425255 719524036 719524036 484232910 484232910 967002055 967002055 760248265 703230944 361471914 376253488 376253488 320834080 289669456 88421696 117766504 117766504 90361600 150989028 220081574 220081574 708000599 708000599 313973586 313973586 313449810 640138432 994348043 994348043 759172967 466208111 85213597 740869507 740869507 477238158 828102025 828102025 657730575 657730575 460930050 460930050 36753424 310642770 394304614 394304614 782980596 782980596 738112412 738112412 598755147 598755147 954867938 954867938 889825225 779527144 779527144 796219016 796219016 960384101 960384101 503322832 503322832 289855650 289855650 861294082 861294082 156551844 436409360 436409360 189886500 698874213 698874213 690905476 545246693 201277428 631545256 927229173 1050808671 1050808671 1009129591 956436519 757502841 757502841 663110488 557243169 889568032 889568032 126521931 78940928 834937473 834937473 549250113 280674733 343809930 627488230 694342222 892495366 1023413901 1023413901 627977613 815421247 815421247 788215989 642734376 642734376 230226636 718480048 718480048 726967193 726967193 760547887 760547887 891835146 891835146 891060251 891060251 488163588 827871150 827871150 494700195 185970135 801833883 801833883 1050083960 1050083960 909031846 909031846 870576474 295392418 0 0 0 0 0 0 185337108 191531180 191531180 414141893 809758851 872780971 872780971 521351224 742391892 742391892 676731525 548628881 548628881 110823116 250351068 250351068 103209240 384882690 472942840 472942840 18663190 379846914 379846914 882216400 882216400 748078313 748078313 951374560 951374560 184104039 853067475 853067475 813763921 147504192 537991572 843334348 843334348 1021333865 1021333865 847530768 942670127 942670127 790630974 909531452 909531452 607376904 1020084741 1020084741 610412572 610412572 479550797 1022352439 1022352439 993966926 669647761 759716696 759716696 611059756 660868361 660868361 955601318 955601318 783807750 1021924616 1021924616 547557928 547557928 464726316 464726316 428030992 463022340 463022340 151228552 443842982 443842982 425741206 360309716 494982014 494982014 984613112 984613112 130024279 1067520 1344000 152638736 155353428 155353428 67078864 387698188 387698188 283206464 283206464 260299516 741362769 1068012044 1068012044 1023809583 577513988 944316672 944316672 471108169 437282961 437282961 510043790 510043790 121346432 121346432 27992864 127604320 127604320 60695056 205596992 216271308 216271308 179774168 140514140 62573104 87035912 87035912 126895552 126895552 98144880 681324084 681324084 342362930 258770094 691088980 691088980 335887626 573185290 573185290 704907925 704907925 592710528 672739073 672739073 236647789 753329836 753329836 610353156 577267010 527176990 527176990 997751568 997751568 219412457 217696268 217696268 380920054 380920054 238650144 71084096 335933953 834620211 834620211 577902593 777871449 777871449 477686990 773576014 773576014 644597533 183013784 281023810 736892100 736892100 593893809 593893809 857343074 857343074 441888258 657980194 657980194 805128473 808855508 1062408487 1062408487 868356418 868356418 624161216 262717968 262717968 95411221 992818469 1040390186 1040390186 891812139 891812139 705240576 705240576 671489557 348785287 1023753880 1070281983 1070281983 446341178 475397260 475397260 409134712 302897612 60891616 598845809 598845809 16974842 889056178 889056178 592120145 845857986 845857986 809521539 274807938 274807938 591487232 593833233 593833233 593832240 65052912 65052912 297683024 589855926 589855926 885108874 959686095 959686095 841618707 951430954 951430954 538184193 986306758 986306758 370245918 380759970 380759970 325323774 325323774 535298482 535298482 89008296 256794764 373502820 422973640 422973640 467326710 598477914 637896972 637896972 707952758 707952758 587306768 523408142 315676634 289519328 424247392 587357570 732244341 732244341 501541155 329596296 339528130 343284618 343284618 344462018 344462018 282150208 88115816 362728616 937860810 937860810 619572681 655828777 785754961 785754961 715338069 692583074 874666078 874666078 439769417 372700256 372700256 897803517 897803517 653427123 653338174 520431749 687433755 767444975 767444975 556979741 950387472 950387472 996820714 996820714 434244560 434244560 786834367 916011481 916011481 369624847 381826126 418054469 754979282 967901547 967901547 823146207 610800905 610800905 651703664 651703664 303178346 538640537 538640537 854610963 854610963 666424676 666424676 627185057 750802708 750802708 223752244 249357556 249357556 287075338 344329350 668864149 668864149 395593978 358350993 358350993 988725470 988725470 848058114 870607952 870607952 511738320 511738320 1009240458 1009240458 874770699 737432470 1011304205 1011304205 915809552 1072983251 1072983251 608602020 820349154 877164584 877164584 646511794 935334640 935334640 876485098 387406704 531098774 531098774 402835460 509556960 509556960 262296980 262296980 234930204 243503708 243503708 237324908 125882628 151015480 237172036 237187356 237187356 188290172 241205772 319907710 319907710 715884689 715884689 42781776 541283777 541283777 558423937 558423937 333779953 986026355 986026355 887748299 814902755 890602086 890602086 351332842 611649850 808635058 813531923 838547817 848247891 848247891 865462942 865462942 852806355 784661078 190093556 190093556 201536420 201536420 212811392 212811392 246686308 246686308 493504272 493504272 309515198 911515655 911515655 761279496 1040777375 1040777375 858001813 323763352 536874145 536874145 915944860 915944860 575772704 9474592 95257156 229608524 229608524 210352140 91543396 91543396 109099177 660050656 660050656 794042000 794042000 662128696 701024388 701024388 562826337 973079813 973079813 807411987 807411987 683804364 1009936870 1009936870 812288176 910788256 910788256 285937670 285937670 580391972 881417566 881417566 485176782 618245881 618245881 274210910 235992498 418700174 418700174 838651875 838651875 808895780 703406361 600855593 600855593 709632 709632 21410112 21410112 10705056 113697240 279293166 279293166 248207728 273078738 273078738 323918282 325508570 354965648 354965648 96470360 103809816 103809816 102041112 102041112 97959324 1071673384 1071673384 873812645 873812645 727372313 271087762 1062914929 1062914929 715379232 994079322 994079322 889326027 889326027 943269604 943269604 820521728 560215506 650385585 650385585 583082193 268960770 289025698 374403490 874281643 874281643 818009823 434222740 434222740 331011954 478392820 714648308 714648308 681707814 535772670 535772670 669060604 707935080 797255805 797255805 610845888 662753292 662753292 615195696 603986432 211163724 157212736 136356084 151011428 151011428 115225452 115225452 253324020 253324020 89195168 113750212 248295536 248295536 232953220 172777744 172777744 150604096 141481044 204736516 204736516 38673552 9818352 617373784 746999886 891658383 891658383 549659002 1007362107 1007362107 667367675 623648179 623648179 592774201 416624198 416624198 300941636 27608384 544230016 544230016 541204993 541204993 148509248 26778784 34067152 39672400 51656912 63388288 63388288 29442144 29360352 73257480 113722880 580098590 949165719 949165719 474337921 75497544 1623112 1049088 553124440 993773814 993773814 969283815 432412919 316934610 988164124 988164124 1001266528 1001266528 139624946 139624946 600342976 747052649 747052649 648572765 473049617 292816294 909812118 909812118 788055836 788055836 676449653 676449653 546492993 295210854 949118058 1057937865 1057937865 814686094 988858872 988858872 473725782 434764962 277679810 103853912 104164672 422701382 422701382 430842384 430842384 90314496 153759748 153759748 254180168 487860412 571107919 571107919 298917338 972698543 972698543 599146554 599146554 887653721 887653721 1066145818 1066145818 901908708 901908708 867905910 254169540 642618016 642618016 388302561 652533770 652533770 893527432 893527432 319076505 527891046 527891046 410623394 410623394 386990142 313548017 885926451 885926451 841818072 633080458 552240451 643304968 643304968 487772964 487772964 318075446 660071204 778443165 852635905 957949988 957949988 451226070 927064210 927064210 775737245 833056418 833056418 569634182 569634182 544734081 411860820 138461316 373293148 650182720 1048585423 1048585423 1015545943 716708745 208801671 353633990 797001004 797001004 527433150 527433150 873992976 873992976 870743420 911259288 916391972 916391972 886118699 381971138 381971138 553911568 837148371 837148371 987799099 987799099 449016967 840520900 840520900 38323344 329800000 329800000 858344818 864760947 965971571 965971571 983624005 983624005 939708423 806145027 806145027 614207049 672927305 672927305 606471204 499127368 893027842 893027842 739935789 293782112 919229973 919229973 735151191 281881794 549988355 612403921 612403921 118016536 575832225 575832225 64888560 52072992 866866927 954057927 954057927 1069828719 1069828719 780892818 593288226 731437300 731437300 416505392 454310930 454310930 238939932 422618396 422618396 623969564 807619850 879296660 879296660 642588698 910173343 910173343 648882818 549672516 672712197 975576578 975576578 178390596 956133969 1064812681 1064812681 102930448 102930448 562758376 632167785 632167785 628582528 124822004 236031508 406324992 406324992 341698560 430908262 430908262 416733894 151444710 136240644 153041306 519943918 519943918 873327578 873327578 549079905 1053252778 1053252778 806445687 676410045 676410045 380107098 936156507 936156507 847589058 831122745 597172544 376780990 376780990 279258402 272894082 4856834 62996560 62996560 21094560 50557424 50557424 396872666 1028923530 1028923530 1004745167 835665123 835665123 704692245 929073280 929073280 717623535 692097444 547467697 392827044 246027612 941829334 941829334 829885890 901429094 901429094 922861914 922861914 389008946 389008946 359364410 304888040 61915136 209800824 209800824 182241284 182241284 747139590 747139590 748791964 822117000 894485163 894485163 648020313 718869908 718869908 268699650 496284448 496284448 274468482 282594944 291096256 366577378 366577378 286810938 61883378 376253488 376253488 52251882 10486080 48944864 64209824 64209824 58885652 150989028 220081574 220081574 214601742 541856072 644783257 644783257 608647305 608647305 994348043 994348043 466208111 466208111 69764156 139052490 139052490 73426054 185982000 185982000 389070258 588865179 588865179 579505553 579505553 424889074 297537378 152570338 782980596 782980596 738112412 738112412 639790192 639790192 305229546 288998914 288998914 189363257 593674041 1066961592 1066961592 710105027 258095149 503322832 503322832 289855650 289855650 861294082 861294082 822087953 822087953 436409360 189886500 732555748 732555748 690905476 545246693 48572880 631545256 991037266 1050808671 1050808671 1009129591 956436519 757502841 807604778 807604778 581046609 631525450 631525450 302670145 286610208 286610208 33094560 13023456 805865728 805865728 23430723 20021792 8581184 10735872 10735872 2138880 3871488 3871488 1648128 98191560 215978976 562144860 562144860 222507180 782397600 782397600 100042696 270409218 891835146 891835146 891060251 891060251 799703568 866438423 866438423 774598865 820049035 846082565 846082565 1050083960 1050083960 584978696 717426664 1069691888 1069691888 1045627515 996410873 996410873 195960180 316804336 327420768 678639016 757580096 757580096 414141893 809758851 872780971 872780971 521351224 695644973 695644973 918764155 918764155 1048952158 1048952158 871528358 341362314 636486899 741887950 741887950 551586359 525107484 911336159 911336159 876086770 876086770 827065652 827065652 1037550128 1037550128 310415413 853067475 853067475 848304224 147504192 537991572 1002451125 1002451125 1021333865 1021333865 847530768 847530768 1017143810 1017143810 749855565 607376904 607376904 965161796 965161796 973674676 973674676 959567514 959567514 960932482 960932482 810230352 591844416 149814574 249562500 249562500 568784331 955601318 955601318 783807750 1021924616 1021924616 630024098 994196211 994196211 470994983 861123504 906568754 906568754 461034652 461034652 443842982 425741206 386141252 494982014 494982014 445189210 592220263 592220263 808278618 808278618 708161536 420294052 120809148 284334912 475480712 475480712 342311820 281100352 281100352 302030946 654664296 654664296 555035169 742848150 944316672 944316672 437355921 437355024 437355024 510043790 510043790 355783984 899717680 899717680 502068928 553885248 553885248 491363363 84796296 143467650 143467650 294131216 352038450 352038450 898765401 898765401 890450475 398921251 558124648 771289182 771289182 520987948 691088980 691088980 355995738 829603954 829603954 812779449 704907925 737975924 737975924 672739073 946396244 971556327 1002324683 1002324683 117446755 8523840 2097408 2097408 206827128 206827128 217696268 217696268 380920054 380920054 238650144 71084096 335933953 834620211 834620211 577902593 777871449 777871449 477686990 773576014 773576014 644597533 825234098 843382561 843382561 736892100 593893809 593893809 290067603 290067603 337289348 475788942 475788942 805128473 808855508 1062408487 1062408487 868356418 868356418 579006774 212124640 220949776 220949776 939703296 940495936 1032001536 1032001536 1023545391 940180520 403254294 336473606 877542593 877542593 737416927 730902441 730902441 607415013 799947720 799947720 302897612 67899016 69544712 120652328 120652328 566534808 566534808 130421241 273322370 276034690 276034690 5445632 4536448 592505216 592505216 52502912 52502912 65052912 65052912 297683024 589855926 589855926 885108874 959686095 959686095 841618707 951430954 951430954 538184193 986306758 986306758 370245918 380759970 380759970 307552930 113345120 171976964 191112592 191366580 256794764 484547724 484547724 243326092 218441772 598477914 637896972 637896972 707952758 707952758 725775878 725775878 723566645 723566901 833111125 833111125 547547426 494213858 494213858 96715720 555296744 611268905 632743528 632743528 24494720 27807264 88115816 840355850 937860810 937860810 647310656 647310656 719514546 719514546 692583074 692583074 189069881 122050568 105121944 85176370 86073385 897803517 897803517 998268160 998268160 883214667 687433755 767444975 767444975 556979741 950387472 950387472 996820714 996820714 427317086 427317086 786834367 916011481 916011481 369624847 409075972 604643466 754979282 967901547 967901547 823146207 610800905 610800905 546443841 303178346 612966944 612966944 680575232 854610963 854610963 666424676 759342768 759342768 750802708 750802708 119279704 119279704 105975472 81290896 81290896 35148304 35131600 55103024 320244768 755260452 988725470 988725470 848058114 559061036 559061036 559159369 559159369 1009240458 1009240458 874770699 633199043 1011304205 1011304205 915809552 1072983251 1072983251 966628996 891261622 891261622 461387933 512887374 935334640 935334640 865390855 387406704 531098774 531098774 378607724 509556960 509556960 262296980 262296980 234930204 243503708 243503708 145103172 142872832 151015480 237172036 237187356 237187356 188290172 177209940 319907710 319907710 715884689 715884689 41294736 541283777 541283777 558423937 558423937 333779953 316060193 887748299 887748299 1015054752 1015054752 890602086 351332842 548454530 1029245926 1029245926 813531923 985229318 985229318 301288503 240039162 240039162 357021612 357021612 305591648 235253960 235253960 204727292 204727292 199357220 322573130 322573130 535499246 535499246 367210986 97858186 354462888 354462888 364904682 364904682 247279452 446703198 446703198 915944860 915944860 555197197 680578089 721859188 721859188 229608524 210352140 91543396 131335296 131335296 80993296 115456112 234895128 234895128 662128696 662128696 8842752 751075529 751075529 149996484 170033476 175117268 570441985 604129447 812288176 812288176 910788256 910788256 210273420 252863229 957373071 957373071 986596012 986596012 933158523 274210910 274210910 235992498 418700174 812720839 838651875 838651875 863913193 863913193 600855593 600855593 691984576 691984576 1034750805 1034750805 981334640 542445876 866187422 866187422 402655232 402655232 273078738 323918282 325508570 354965648 354965648 265661114 20729784 69010960 100737800 100737800 67444240 69143984 69143984 873812645 873812645 727372313 1016789526 1016789526 493595061 52683032 768631336 768631336 889326027 889326027 943269604 943269604 833343511 833343511 1040737754 1040737754 552574917 299902083 361147600 374403490 1025552690 1025552690 694403576 276688770 510268830 510268830 478392820 710292352 710292352 809640880 809640880 680526405 193850484 707935080 797255805 797255805 245572221 86167220 59307120 717697220 731076756 731076756 554386641 554386641 151011428 151011428 115225452 115225452 253324020 253324020 89195168 113750212 248295536 248295536 331912208 331912208 281444496 335944836 335944836 318937160 302266450 474048624 474048624 617373784 617373784 873310210 873310210 683847104 683847104 225033601 119537984 9240720 76951616 746587749 746587749 55838960 724566757 724566757 547047648 566566465 566566465 696320164 696320164 692161728 592249536 592704096 592704096 192987252 188879028 188879028 164152464 164152464 139100176 139612888 566167408 806354950 806354950 671892972 671892972 563087913 300009156 993773814 993773814 969283815 978753016 978753016 988164124 988164124 1001266528 1001266528 174080210 417423750 417423750 411582864 138503252 320900128 320900128 292816294 814339530 814339530 788055836 788055836 676449653 676449653 546492993 38207728 403348062 483480822 483480822 48284112 349200920 389231418 389231418 277679810 277679810 223101396 180464936 104164672 100272928 100272928 16782344 90314496 90314496 75117224 254180168 487860412 487860412 98110310 60823424 339349744 375528330 599146554 599146554 618824264 618824264 67125389 851837100 851837100 652066949 652066949 851562038 851562038 545572929 526926241 310587226 501403652 974164729 974164729 168982528 135843416 297830272 410623394 410623394 326354212 326354212 885926451 885926451 864340083 864340083 279760194 952803138 952803138 670107022 487772964 17138336 660071204 778443165 852635905 852635905 557855267 451226070 927064210 927064210 682872536 833056418 833056418 716219568 716219568 554559829 554559829 537256084 536895492 167805136 12583936 704644176 704644176 714212581 714212581 638982681 416811562 416811562 998505596 998505596 455531702 870743420 870743420 911259288 911259288 615784330 615784330 268828672 269606040 595201994 837148371 837148371 584974563 30515416 126927480 126927480 73561544 288085256 0 0 65536 73728 268233559 673534224 983624005 983624005 939708423 151729188 151729188 119273016 789787704 789787704 616685641 616685641 328794190 739935789 739935789 475667286 919229973 919229973 735151191 281881794 549988355 612403921 612403921 215075400 575832225 575832225 114159112 81195216 10016368 276844032 276844032 277236468 433214022 705691782 710070933 710070933 572656787 308807043 104816388 238939932 238939932 422618396 422618396 623969564 623969564 879296660 879296660 440149021 1648128 337652232 337652232 549672516 672712197 975576578 975576578 981766355 981766355 1064812681 1064812681 250937880 668308864 668308864 632167785 632167785 628582528 70621756 241191124 406324992 406324992 248803114 208741248 310150528 310150528 405702528 405702528 51678768 106086040 392368152 513185818 549079905 549079905 675285350 675285350 290826870 18161967 350999952 380107098 936156507 936156507 847589058 831122745 597172544 38483120 957281439 957281439 258468156 995449271 1002272388 1002272388 860018817 975629825 975629825 844957975 722523360 1013109135 1013109135 835665123 835665123 704692245 704692245 572690692 692097444 692097444 547467697 170127589 71951424 372284258 570543204 829885890 901429094 901429094 922861914 922861914 335347962 18300960 66855776 119587368 119587368 209800824 209800824 725540661 725540661 646516060 646516060 249635292 822117000 894485163 894485163 648020313 744296281 744296281 1048576095 1048576095 919418842 919418842 606779809 606779809 748782527 748782527 586212012 10511136 399583232 399583232 130102520 130102520 91098536 91098536 34865440 44565840 44565840 36175936 25133344 918358097 918358097 644783257 644783257 608647305 608647305 665423114 739831271 739831271 864291571 864291571 697061330 681361740 363334058 674811245 674811245 389070258 969861321 969861321 579505553 579505553 424889074 420837378 420837378 559874668 567172448 591347352 632290665 639790192 639790192 273833088 273833088 92013770 77222696 77222696 1066961592 1066961592 864664226 1003766256 1003766256 805839878 805839878 525312 524288 572653603 822087953 822087953 266675052 266675052 770715136 770715136 585643813 568961793 229188972 229188972 991037266 991037266 915874997 915874997 297163632 297163632 807604778 1069944050 1069944050 702956511 631525450 302670145 286610208 603530001 603530001 574693521 805865728 805865728 722330554 722330554 844202002 1058159837 1058159837 624338221 832192959 832192959 778201941 711878244 711878244 562144860 562144860 109073257 782397600 782397600 100042696 100042696 872482896 872482896 614994204 799703568 799703568 866438423 866438423 774598865 820049035 846082565 1027804361 1027804361 874579548 584978696 717426664 1069691888 1069691888 1045627515 996410873 996410873 916071430 916071430 327420768 678639016 757580096 757580096 158807328 548931393 548931393 611674376 611674376 617842841 617842841 918764155 918764155 1048952158 1048952158 871528358 341362314 636486899 741887950 741887950 551586359 525107484 911336159 911336159 239149110 334055931 827065652 827065652 1037550128 1037550128 310415413 427954278 848304224 848304224 51780099 42336768 1002451125 1002451125 526115896 707035189 707035189 576170144 1017143810 1017143810 814694929 814694929 621014693 965161796 965161796 973674676 973674676 959567514 959567514 294831110 810230352 810230352 491787784 253362718 138412164 20971524 52429952 55050424 748657152 748657152 120748741 550510665 630024098 994196211 994196211 470994983 861123504 906568754 906568754 461034652 461034652 217158600 355093100 487987758 536085494 536085494 500044398 592220263 592220263 808278618 808278618 708161536 420294052 120809148 284334912 475480712 475480712 342311820 281100352 755069520 755069520 774786356 796579773 796579773 742848150 742848150 752228091 820960707 820960707 437355024 521697550 690274857 742380210 899717680 1044856728 1044856728 838936209 728476279 728476279 908112528 908112528 805708822 294131216 352038450 352038450 898765401 898765401 890450475 398921251 558124648 771289182 771289182 648842459 486065502 604276245 842565137 842565137 829603954 812779449 608749816 737975924 737975924 186123780 946396244 971556327 1002324683 1002324683 828407850 440713590 440713590 1054900272 1054900272 192504128 192504128 192276948 192276948 147972804 146842112 28015008 28015008 59534688 288113744 437009302 437009302 430882112 430882112 444672256 444672256 322863618 825234098 843382561 843382561 23203537 12207936 14997184 282681856 282681856 274727024 324538738 549062450 549062450 556794658 925942587 925942587 367059387 401703056 401703056 212124640 220949776 220949776 939703296 940495936 1032001536 1032001536 1023545391 940180520 471610938 336473606 877542593 877542593 737416927 730902441 730902441 607415013 799947720 799947720 103226752 67899016 591981265 591981265 120652328 566534808 566534808 579339345 588210784 588210784 542190113 18172448 21484032 592505216 592505216 574890144 555810960 23076880 546888417 845976832 901356753 901356753 655137912 679306380 679306380 612476425 571596909 801235197 801235197 88729053 778305792 778305792 543788180 325718946 325718946 38871696 287059218 287059218 191366580 191366580 484547724 503473178 514305044 514305044 336184654 268717084 210964536 92333632 404459696 725775878 725775878 723566645 723566901 833111125 833111125 717751316 494213858 494213858 323672826 555296744 611268905 632743528 632743528 335825282 269480961 805570563 840355850 840355850 887922131 887922131 840450216 719514546 719514546 961285287 961285287 165249273 45879120 378807120 378807120 362313496 91829140 252318780 998268160 998268160 883214667 452372327 534460258 534460258 428553318 380128768 380947290 684430395 684430395 570430755 570430755 464995102 464995102 202375576 250351068 409075972 604643466 975306760 1067097364 1067097364 366660304 843340402 843340402 545312801 899175513 899175513 612966944 680575232 680575232 538050572 583612108 759342768 759342768 206247136 170923316 195171280 195171280 525312 525312 525312 525312 525312 524288 189678736 755260452 755260452 799153936 799153936 559061036 559061036 559159369 823057443 823057443 224580302 883239168 883239168 1014861933 1014861933 962994663 344134472 966628996 1020880077 1020880077 891261622 798363328 940049424 940049424 568332226 438095312 262345176 227002400 227002400 107628892 72215688 113651136 113651136 96628512 29632640 94471528 145103172 178187628 178187628 260930544 260930544 115731844 82145616 82714056 134101288 221633392 221633392 146017092 142658304 7711168 9497536 20572528 34128912 256157248 256157248 323609778 397780330 836059682 1015054752 1015054752 23085135 87081376 877736601 1029245926 1029245926 280454411 985229318 985229318 301288503 240039162 885641960 885641960 357021612 305591648 235253960 235253960 161554788 215548720 218189720 322573130 322573130 535499246 535499246 617882733 617882733 674344694 1050764701 1050764701 712583061 247279452 247279452 266080524 608447812 608447812 576258960 680578089 721859188 721859188 65682924 71291392 71291392 131335296 131335296 604181313 604181313 562336201 263462769 613728905 635836905 1030578467 1030578467 836359303 954414145 954414145 574828945 728982990 728982990 688662461 688662461 457494792 560262464 706715813 707859802 957373071 1015781282 1015781282 986596012 933158523 240955504 168832028 170088832 170088832 812720839 812720839 615055794 863913193 863913193 466617365 231911500 691984576 691984576 1034750805 1034750805 981334640 542445876 866187422 866187422 402655232 402655232 185342024 185342024 126142584 291059836 291059836 265661114 127789632 127789632 100737800 100737800 67444240 694847737 694847737 548312905 124965096 237502492 1016789526 1016789526 778759581 1014486917 1014486917 866556134 321308915 679526469 679526469 356635103 833343511 833343511 1040737754 1040737754 552574917 595678046 849774022 849774022 1025552690 1025552690 960802218 321399828 510268830 860174388 860174388 541141536 559155873 809640880 809640880 680526405 657406618 498862641 545005445 696500481 696500481 671550016 671892176 728228501 731076756 731076756 554386641 554386641 307093120 60443008 60443008 57486768 160057188 433365232 457222022 457222022 408808148 16811174 331912208 419578898 419578898 335944836 335944836 318937160 302266450 474048624 474048624 593245010 615963112 873310210 873310210 683847104 683847104 225033601 119537984 9240720 76951616 746587749 746587749 55838960 724566757 724566757 547047648 566566465 566566465 696320164 696320164 692161728 592249536 592704096 592704096 192987252 188879028 188879028 164152464 164152464 146833949 146833949 637414712 806354950 806354950 671892972 671892972 563087913 88951526 334260007 657245817 666759033 978753016 978753016 671174916 671174916 688133304 688133304 838859701 838859701 549458000 836512112 836512112 406924932 555733174 823197728 823197728 814339530 609928328 818802669 818802669 792660837 792660837 318816306 871292000 871292000 837237685 837237685 683097055 592777388 389231418 248538784 248538784 223101396 180464936 19661152 100272928 100272928 501743772 501743772 459758308 207218772 118604368 297330160 670123523 670123523 361571618 1035273887 1035273887 660032230 761667877 761667877 618824264 843727027 843727027 689363493 689363493 652066949 851562038 851562038 756035160 526926241 310587226 501403652 974164729 974164729 508517545 440527050 508227850 508227850 494546910 494546910 330511218 330511218 401965321 864340083 864340083 279760194 952803138 952803138 670107022 185988652 185988652 629259680 629259680 911493274 911493274 942785464 942785464 551936103 682872536 682872536 650532417 136926721 727510864 727510864 554559829 554559829 537256084 536895492 1050033670 1050033670 704644176 704644176 878717240 878717240 638982681 613156864 195257984 998505596 998505596 210413619 661377400 832977793 832977793 605032704 888452939 888452939 375830531 470953492 595201994 703761556 703761556 186569484 606741478 1049359455 1049359455 1020335686 288085256 1020191979 1020191979 432070884 497543493 497543493 268233559 147099165 562892661 562892661 151729188 151729188 119273016 789787704 789787704 616685641 616685641 328794190 328794190 475667286 475667286 528552128 528552128 437642284 200878068 185443514 134853864 215075400 215075400 85891272 114159112 114159112 81195216 60487616 276844032 276844032 277236468 433214022 810850506 810850506 809500803 932252568 932252568 601234161 747560200 919640411 947650581 1015811151 1015811151 807425311 548724315 1012642268 1012642268 853928403 853928403 875037003 875037003 341723014 877563393 944424855 981766355 981766355 749216968 749216968 250937880 668308864 668308864 627142097 63187241 113420400 113420400 241191124 402434044 402434044 414786496 414786496 301237536 301237536 405702528 405702528 23352102 106086040 392368152 513185818 513185818 209450892 219783840 219783840 574959564 728810421 728810421 90524976 90524976 851987680 851987680 108210048 50856992 38483120 957281439 957281439 258468156 995449271 1002272388 1002272388 860018817 975629825 975629825 844957975 722523360 1013109135 1013109135 701230502 240039396 50871792 114489428 145937220 185793394 366711048 366711048 387050506 387050506 372284258 372284258 286259664 300517090 300517090 268587072 268587072 354194258 362757738 362757738 320104944 119587368 135615032 135615032 725540661 725540661 705464718 705464718 606241855 249635292 96782584 451282433 576323952 744296281 744296281 1048576095 1048576095 919418842 919418842 822556066 606779809 748782527 748782527 586212012 360964260 399583232 399583232 130102520 179569668 179569668 203823812 242553060 242553060 283535624 283732168 283732168 918358097 918358097 103149707 866977169 866977169 648578177 864289349 973604920 973604920 864291571 864291571 753485252 753485252 604102665 1040582339 1040582339 420513468 969861321 969861321 978629335 978629335 322074756 420837378 420837378 285238016 219564780 208952292 209289764 209289764 98363944 98363944 97797856 29407872 134878977 561155973 561155973 454231520 864664226 1003766256 1003766256 931373130 931373130 732655656 889786655 889786655 620765216 369172506 318775336 266675052 770715136 770715136 585643813 568961793 229188972 651444484 800485325 920148575 920148575 908452837 866672693 866672693 1073093631 1073093631 1069944050 702956511 608899588 677712832 677712832 708149520 708149520 581425488 717752437 717752437 722330554 722330554 844202002 1058159837 1058159837 624338221 832192959 832192959 778201941 711878244 711878244 757110400 757110400 89338536 689042256 689042256 271849186 886715266 886715266 877017985 254058779 419600384 419600384 95309326 449202206 648875364 648875364 288098651 1027804361 1027804361 402917382 402917382 402917382 295764434 471474999 657143097 791351395 898695249 916071430 916071430 472392616 405537524 190409144 190409144 125760488 548931393 548931393 611674376 611674376 545517824 547406145 1023885806 1023885806 952890567 952890567 295871909 0 68682272 68682272 118489656 204489258 488162054 488162054 470336526 375692340 160042176 160042176 153370980 144752964 143374896 194080834 840032787 840032787 310382644 282792594 676687430 914496682 914496682 361687099 21444768 148185224 406939684 406939684 97894918 814694929 814694929 903164474 903164474 813664987 813664987 611184009 173342760 202189836 202189836 126563908 491787784 491787784 286718506 235995136 400097404 796952925 796952925 1057568853 1057568853 555207510 922462556 922462556 263463208 263463208 174319180 17502260 38673552 38673552 39532176 705905664 705905664 683065869 753326541 753326541 536085494 500044398 423106204 238554412 177081092 153664344 52291104 21274752 21274752 14299200 85091968 136588580 136588580 84465856 755069520 755069520 774786356 796579773 796579773 565743836 494948763 752228091 820960707 820960707 302462994 521697550 690274857 742380210 742380210 1044856728 1044856728 838936209 728476279 728476279 908112528 908112528 805708822 70782976 474065024 474065024 234898464 234898464 369997864 369997864 173238724 173238724 648842459 648842459 486065502 604276245 842565137 842565137 802062857 802062857 608749816 621843105 621843105 922378018 922378018 378181425 859363447 970084619 970084619 440713590 440713590 1054900272 1054900272 915516166 982829655 982829655 800648724 499696186 434379982 434379982 405738568 23573856 380309424 380309424 270356976 109150472 109150472 104968448 113913856 113913856 37884048 694446120 694446120 765460845 971262207 971262207 729858165 506514962 506514962 444387222 549062450 549062450 556794658 925942587 925942587 367059387 401703056 401703056 83258576 53865264 74879040 284854216 284854216 290770680 355354736 419572236 471610938 830151435 830151435 354630272 668934185 668934185 857107211 896389643 896389643 566437514 879370648 938685728 938685728 826877091 591981265 328242032 26839344 540305440 579339345 588210784 588210784 542190113 30212256 30212256 21484032 574890144 574890144 555810960 599929776 599929776 845976832 901356753 901356753 655137912 679306380 679306380 612476425 726782162 801235197 801235197 869606312 889241827 889241827 553856930 325718946 325718946 276089730 287059218 287059218 71567496 105668744 105668744 503473178 514305044 514305044 614572566 638302072 638302072 631866122 874176874 925396888 944560271 944560271 642200721 642200721 717751316 717751316 476804501 323672826 323672826 23658920 286420544 345369162 345369162 335825282 269480961 805570563 805570563 317043145 887922131 887922131 898889076 898889076 562605796 961285287 961285287 756892041 695233028 672663045 646006376 362313496 831228557 831228557 728446901 710793885 710793885 607221513 607221513 998333795 998333795 745921962 745921962 684430395 684430395 570430755 1046088330 1046088330 900775697 836376198 1026168111 1026168111 918365131 1006830865 1067097364 1067097364 475269774 843644642 843644642 810091603 899175513 899175513 549060616 549060616 246076764 246076764 109786200 179330540 228903808 228903808 213672704 195171280 195171280 22491552 66651904 66651904 43057776 51078256 51078256 189678736 189678736 38313140 33603600 299125278 705955848 1058410571 1058410571 838037728 885121771 885121771 883239168 883239168 1014861933 1014861933 962994663 92764416 965515978 1020880077 1020880077 798363328 998514272 998514272 940049424 438095312 566946690 566946690 227002400 227002400 107628892 72215688 16519168 34279440 34279440 28187712 94471528 94471528 178187628 178187628 260930544 260930544 115731844 82145616 82714056 134101288 221633392 221633392 146017092 142658304 44878608 39063168 15303136 17425440 745310001 745310001 822996003 822996003 836059682 836059682 583027647 583027647 273436026 878777411 878777411 777923420 1019555462 1019555462 536208383 136064224 118538808 885641960 885641960 223411644 223411644 202603288 202603288 215150944 215548720 218189720 218189720 511247546 511247546 143754720 617882733 617882733 674344694 1050764701 1050764701 712583061 360711392 155789580 266080524 608447812 608447812 576258960 263791660 193183532 234193632 234193632 239144324 239144324 16517888 45109512 604181313 604181313 562336201 263462769 225105324 635836905 1030578467 1030578467 836359303 954414145 954414145 574828945 728982990 728982990 688662461 688662461 432368241 560262464 706715813 707859802 707859802 1015781282 1015781282 293237839 716839124 716839124 310826757 445337796 445337796 672346551 1064895300 1064895300 362487402 860492368 860492368 205303212 557890049 557890049 732219765 805489680 805489680 430626150 37914102 20187936 209717248 276988012 276988012 286558250 286558250 471777906 471777906 77384320 127789632 127789632 42813016 21843412 50152633 694847737 694847737 548312905 124965096 237502492 237502492 199068523 778759581 1014486917 1014486917 866556134 0 564334760 564334760 1002561783 1002561783 210833920 462434482 462434482 453315314 595678046 849774022 849774022 890031147 960802218 960802218 341570730 508692010 860174388 860174388 856759077 856759077 581370941 401155578 657406618 689705547 758194989 758194989 696500481 696500481 671550016 671892176 728228501 728228501 578841264 410268386 307093120 307093120 60443008 60443008 54228612 160057188 433365232 457222022 457222022 408808148 167150948 192971782 419578898 419578898 377914564 377914564 167809038 119838920 283530057 540056515 540056515 615963112 615963112 585554385 370332186 858984682 858984682 851999234 609687186 609687186 894579106 894579106 30223584 155976736 550570116 550570116 541855153 541855153 187927857 65229476 16785504 8462400 151462097 151462097 160746084 160746084 680006208 680006208 46698520 146833949 672334296 672334296 741679749 741679749 629122465 629122465 612626505 565173571 523375022 523375022 818350526 818350526 438675866 319250574 602429709 688133304 688133304 838859701 838859701 549458000 836512112 836512112 841077333 841077333 823197728 823197728 782356957 269003392 818802669 818802669 792660837 792660837 525166974 871292000 871292000 837237685 837237685 683097055 592777388 520110266 477725272 477725272 111740160 115608704 115608704 120664344 120664344 501743772 501743772 459758308 207218772 118604368 297330160 670123523 670123523 361571618 1035273887 1035273887 660032230 761667877 761667877 806537002 843727027 843727027 689363493 689363493 734003445 734003445 756035160 756035160 111094856 282464528 282464528 593466594 593466594 508517545 440527050 508227850 508227850 494546910 494546910 330511218 330511218 522395301 782600269 782600269 778454955 778454955 570797338 570797338 185988652 543229285 629259680 629259680 911493274 911493274 942785464 942785464 551936103 610095140 610095140 202113685 987833668 987833668 727510864 403997184 402966534 688153102 688153102 1050033670 1050033670 824250412 824250412 1042476314 1042476314 623186826 613156864 71468424 619317602 619317602 397702213 661377400 832977793 832977793 846215364 888452939 888452939 375830531 470953492 470953492 703761556 703761556 817633682 817633682 1049359455 1049359455 1020335686 253821206 1020191979 1020191979 471124494 497543493 497543493 420921177 381597530 137104644 373234448 373234448 950666247 950666247 337906962 967248220 967248220 1015784010 1015784010 881424002 76079624 79430160 99291648 159070136 200878068 200878068 216828424 216828424 150536352 150536352 111218404 136761188 160487988 244229443 244229443 911103504 911103504 780829771 395524283 857160443 906320447 976517139 976517139 932252568 601234161 747560200 919640411 947650581 1015811151 1015811151 807425311 548724315 1012642268 1012642268 853928403 853928403 875037003 875037003 341723014 877563393 975225111 975225111 975225111 975225111 452722801 75926856 635828664 635828664 627142097 82642841 113420400 113420400 76825408 410060290 410060290 414786496 416213332 508959390 508959390 302100980 302100980 154754052 313976660 313976660 532763762 532763762 159383652 219783840 219783840 574959564 728810421 728810421 90524976 90524976 851987680 851987680 54851216 54851216 33554448 83831208 83831208 75158792 75158792 88119464 88119464 8144000 149116416 149116416 103483496 103483496 59058688 120993048 120993048 90475856 126232656 126232656 122032392 116616264 116616264 313865280 387050506 387050506 322605536 322605536 314628698 322171888 322171888 268587072 268587072 354194258 362757738 362757738 320104944 57671088 70369920 175755272 175755272 169481748 705464718 705464718 606241855 125851821 96782584 335679498 339744906 626398562 626398562 319161569 305535762 48891730 822556066 822556066 341342370 341342370 309402028 493290430 493290430 467796776 467796776 505414404 505414404 179569668 203823812 242553060 242553060 283535624 283732168 283732168 281949256 281949256 103149707 866977169 866977169 648578177 864289349 973604920 973604920 799015078 837371131 837371131 753485252 604102665 1040582339 1040582339 420513468 462981874 462981874 978629335 978629335 385975570 385975570 153970272 153970272 167299044 199336804 209289764 281163106 348901386 348901386 290000930 290000930 151529216 561155973 942937286 942937286 721333649 721333649 678153483 931373130 931373130 738721888 889786655 889786655 681789009 369172506 579233793 579233793 699476609 699476609 192227392 539694497 539694497 651444484 800485325 920148575 920148575 908452837 866672693 866672693 1073093631 1073093631 954430080 584790504 608899588 677712832 678169984 708149520 708149520 581425488 141187200 44175696 12855872 12855872 9508864 571568640 571568640 571281297 571281297 35990033 8572992 155820612 155820612 757110400 757110400 693806892 562021248 562021248 617489217 886715266 886715266 877017985 1020035782 1020035782 419979373 214635622 339119048 453517540 453517540 852077718 852077718 285599778 406476854 406476854 442047649 527304373 527304373 227554900 216275420 216275420 297274638 472392616 472392616 405537524 190409144 190409144 125760488 105130304 7528832 592480440 592480440 598223593 639132873 1023885806 1023885806 952890567 952890567 1008779535 1008779535 725140487 725140487 474499992 421527846 1030090566 1030090566 492831150 485683874 485683874 1064501508 1064501508 144752964 139763779 412090455 840032787 840032787 310423604 282792594 676687430 819961538 857276644 857276644 834807313 692466246 821125733 821125733 506577160 781287867 781287867 973144712 973144712 882118151 813664987 975795134 975795134 589833394 903349487 903349487 1017644355 1017644355 866215889 807403779 807403779 796952925 796952925 1057568853 1057568853 639855995 922462556 922462556 263463208 263463208 174319180 17502260 38673552 484085254 933080686 933080686 705905664 683065869 753326541 753326541 247015900 247015900 10759764 9049152 211339884 211339884 58011408 121780392 121780392 118101048 240414244 240414244 79921224 84465856 117945864 118889016 236374548 236374548 302041602 469955906 469955906 353690076 353690076 176608148 176608148 2686976 69339288 105124104 114369240 114369240 456204960 456204960 30409750 538445752 538445752 343933962 343933962 224994496 474065024 474065024 374163488 374163488 336456714 306228408 22546080 22546080 30933536 30933536 9437760 214434304 214434304 207094988 556449868 556449868 641783584 641783584 621843105 922378018 922378018 378181425 859363447 970084619 970084619 440927382 440927382 352324648 295794698 915516166 982829655 982829655 800648724 499696186 434379982 434379982 405738568 849772827 849772827 716626517 723897833 979945190 979945190 130267060 232473576 232473576 222872748 738972856 738972856 765460845 971262207 971262207 729858165 506514962 506514962 444387222 348524512 348524512 997706399 997706399 683450021 557132577 842925842 842925842 83258576 53865264 49366736 49366736 281872650 281872650 355354736 386738666 386738666 830151435 830151435 354630272 668934185 668934185 857107211 896389643 896389643 888816424 879370648 938685728 938685728 826877091 581591280 328242032 33628176 28937536 28967616 31085184 31085184 21551264 30212256 30212256 9304736 36989232 52478256 149350500 599929776 599929776 180577029 19473696 186702570 534724350 560867324 560867324 427454887 726782162 726782162 619709385 869606312 889241827 889241827 553856930 316910096 316910096 276089730 191194580 191194580 71567496 105668744 105668744 246140248 250404444 250404444 614572566 638302072 638302072 631866122 977806682 977806682 944560271 944560271 777326349 642200721 441074949 236856721 236856721 18713560 12660400 17975328 297978858 297978858 90858976 295015234 295015234 853359738 853359738 829151475 829151475 316725632 898889076 898889076 162567175 38847120 756892041 756892041 695233028 672663045 646006376 203139690 831228557 831228557 728446901 710793885 710793885 607221513 607221513 998333795 998333795 745921962 745921962 492109065 492109065 377364378 1046088330 1046088330 985146128 985146128 1026168111 1026168111 918365131 1006830865 1006830865 537921924 641769472 843644642 843644642 810091603 537396225 79813144 948198146 948198146 243010908 243010908 109786200 179330540 228903808 228903808 213672704 392542858 392542858 382153178 392368458 392368458 126359090 302065234 302065234 471085152 471085152 415373968 265689096 898632298 898632298 1058410571 1058410571 838037728 885121771 885121771 700520809 822218787 875759777 875759777 750532365 809107712 951719681 953287245 953287245 705300572 998514272 998514272 738332294 471211204 566946690 705421888 933754818 933754818 127667832 127667832 52003624 80703536 80703536 96710048 96710048 10153288 76047400 76047400 84552752 84552752 84449024 70542984 70642440 87943592 89975416 89975416 49602768 49602768 44878608 39063168 25731440 36300048 745310001 745310001 822996003 822996003 474285364 368364522 583027647 583027647 404622968 878777411 878777411 777923420 1019555462 1019555462 536208383 868473826 1060845018 1060845018 369591204 223411644 223411644 266401792 266401792 218380332 215150944 103254088 154545408 511247546 511247546 254516832 302342194 302342194 364162450 364162450 294650466 360711392 360711392 234885240 234885240 169946632 202638924 263791660 263791660 152134412 234193632 234193632 239144324 239144324 83412936 87880320 87880320 61529720 137647160 137647160 224844512 224844512 208052908 212988288 212988288 482377800 482377800 451937238 451937238 205685898 143824788 143824788 306560720 483467982 483467982 204995142 343433027 549213987 928371275 928371275 914831451 740946002 377213322 445337796 445337796 672346551 1064895300 1064895300 956656435 956656435 860492368 572081072 560588193 557890049 732219765 805489680 805489680 430626150 272008274 272008274 355527090 355527090 303042576 437481502 458692266 471777906 471777906 122165674 77384320 9837120 19016096 21913792 21913792 131410256 131410256 118976392 55386888 43930070 441973398 441973398 405141760 405141760 188210866 188210866 24384279 705696162 705696162 1002561783 1002561783 210833920 462434482 462434482 444670054 884486882 884486882 436732692 436732692 473160862 473160862 588640439 857500341 857500341 864090314 864090314 856759077 888739067 888739067 285093349 689705547 758194989 758194989 561095853 557483648 557483648 12206352 174320148 174320148 48751056 48751056 137409088 137409088 2484480 36167936 36167936 136484244 181393408 181393408 178393428 155507296 167150948 272629760 319602772 319602772 377914564 377914564 245405952 379885914 379885914 540056515 642126546 642126546 315758745 348675345 370332186 908692424 908692424 851999234 609687186 609687186 894579106 894579106 420753606 555484801 563686468 563686468 541855153 541855153 684984788 967392194 967392194 569906768 569906768 542774352 169022464 160746084 680006208 680006208 134427280 67261652 672334296 672334296 741679749 741679749 686217669 629122465 612626505 576860286 1024977634 1024977634 818350526 818350526 620703322 306448530 188928180 273187000 386450490 894063866 894063866 925762924 925762924 532167943 841077333 841077333 596963618 554524322 408468496 185336864 219534420 219534420 536227750 536227750 525166974 488451630 406848784 406848784 385925120 390169440 520110266 520110266 511439314 511439314 132122716 132122716 168968212 177115664 177115664 507642944 507642944 117512464 117512464 18997536 19188000 510111880 510111880 245705052 245705052 204912972 167858816 205792896 205792896 806537002 806537002 889929124 889929124 723640629 734003445 734003445 722749480 797182077 877727072 877727072 186911478 743706153 743706153 89720320 89728680 155837720 452245420 498522990 498522990 329652594 352526474 522395301 782600269 782600269 778454955 778454955 570797338 570797338 58769952 543229285 543229285 611735568 681630408 681630408 581425232 1034281161 1034281161 1033008515 877143297 568854753 987833668 987833668 1000548436 1000548436 402966534 688153102 688153102 239210652 654719154 824250412 824250412 1042476314 1042476314 867303411 867303411 633754848 924769939 924769939 397702213 304171156 542134034 542134034 846215364 846215364 722633714 722633714 443947986 443947986 391958202 391958202 817633682 817633682 439800861 176346820 176346820 96575688 1016515103 1016515103 471124494 471124494 420921177 420921177 381597530 137104644 373234448 921635838 950666247 950666247 644882319 967248220 967248220 1015784010 1015784010 881424002 457334646 457334646 853881366 973362592 986396514 986396514 808714001 216828424 153215268 150536352 138516336 179625268 549512836 584799632 584799632 911103504 911103504 780829771 684089864 857160443 1032294947 1032294947 976517139 907033152 515894878 593817232 593817232 569034983 746097493 746097493 77595573 23333280 291584728 331835786 331835786 426476288 426476288 336005440 883555658 883555658 975225111 975225111 975225111 975225111 711071360 236589076 561324784 561324784 540806913 82642841 106744528 106744528 376685712 410060290 410060290 311690816 416213332 508959390 508959390 77356758 154754052 154754052 313976660 313976660 532763762 1033627148 1033627148 515698479 209765448 553945458 773849373 876200941 876200941 870665579 313583779 130401610 293864288 293864288 271846146 83831208 83831208 75158792 75158792 88119464 88119464 8144000 140795264 140795264 134743556 103483496 59058688 120993048 120993048 232062980 232062980 126232656 202955448 202955448 135057988 393216954 450661690 450661690 444630230 413408420 314628698 383488136 383488136 376591320 376591320 24376082 11794472 57330440 67216720 67216720 107318536 175755272 537580545 728755377 728755377 926957721 926957721 71616648 71616648 233182705 637147144 882399008 882399008 742186247 220649772 204397008 64790304 812913824 962079186 962079186 531476998 531476998 493290430 494927982 494927982 505414404 505414404 75892688 181034805 192321341 192321341 80880652 716869637 788069845 788069845 784685005 784685005 763265824 42775808 42775808 562584305 562584305 656148152 922305441 936945635 982787473 982787473 772615197 316019586 350825492 442122056 442122056 413023778 413023778 293504578 385975570 951776650 951776650 435522865 195142244 199336804 199336804 281163106 348901386 348901386 290000930 290000930 151529216 151529216 942937286 942937286 721333649 982689364 982689364 243385408 738721888 738721888 33644800 681789009 681789009 152046284 579233793 579233793 699476609 699476609 192227392 710066608 710066608 691325121 575032105 575032105 383885608 566346146 566346146 262230473 230928204 101498796 101498796 741642240 741642240 77924352 678169984 678169984 6831109 6427392 12879056 14470800 26004576 48880656 48880656 571568640 571568640 571281297 571281297 35990033 21096672 19321056 11233568 612007972 693806892 693806892 562021248 562021248 617489217 617489217 276010059 211659300 1020035782 1020035782 419979373 423717113 734390527 734390527 879756171 879756171 852077718 285599778 406476854 406476854 442047649 527304373 527304373 197013005 421538412 421538412 495716446 495716446 266522583 516367480 1005989017 1005989017 891642290 891642290 817753923 930711800 930711800 598223593 639132873 639132873 547670337 547670337 739155202 1008779535 1008779535 1007325260 1007325260 604378380 954691698 1030090566 1030090566 492831150 485683874 485683874 1064501508 1064501508 429941186 429941186 412090455 428077158 428077158 310423604 978309652 978309652 807186049 857276644 857276644 834807313 692466246 821125733 821125733 528599110 781287867 781287867 973144712 973144712 882118151 389217074 975795134 975795134 589833394 903349487 903349487 1017644355 1017644355 866215889 807403779 807403779 785238339 785238339 432719348 639855995 639855995 104560504 304590882 304590882 220745148 326353502 326353502 403236618 484085254 933080686 933080686 789365475 789365475 664898107 631365993 419471695 247015900 46976208 175040924 216355092 216355092 58011408 556911400 754774892 754774892 546069644 613553676 613553676 536890912 536890912 629287593 629287593 627300777 539338217 159582413 991350042 1002671712 1002671712 805966163 805966163 310940994 680717707 787174018 878852929 969407721 1014512545 1014512545 981470780 981470780 1012774045 1012774045 882560652 339902544 339902544 323223554 374163488 374163488 372033140 372033140 185049148 185049148 613681967 613681967 271846214 363856427 389564967 389564967 758138908 758138908 641783584 641783584 117461592 334926110 334926110 1023073307 1023073307 0 218628282 440927382 440927382 352324648 478683480 478683480 147400130 618726665 618726665 67474116 80739528 142806672 1019106305 1019106305 849772827 716626517 723897833 979945190 979945190 390603296 232473576 827003665 827003665 738972856 738972856 927135251 927135251 378582622 34078720 203057436 203057436 352362112 352362112 268470828 997706399 997706399 683450021 916278014 916278014 842925842 284797124 46254816 103547600 103547600 281872650 281872650 82388424 386738666 386738666 310456384 115413186 276959738 302124032 380578370 380578370 338955018 888816424 888816424 609261433 806098000 806098000 30933664 50339136 61607280 61607280 40783120 31638592 31638592 31085184 24399264 35445024 38458512 38458512 152492820 152492820 169151376 547414528 722559509 984566720 984566720 985619783 985619783 560867324 560867324 350799306 350799306 357638826 357638826 823395192 823395192 329236534 329236534 221260332 221260332 447557504 474299532 474299532 178596180 136587668 82437576 246140248 268303484 349159644 349159644 262183026 419823904 419823904 977806682 977806682 780143325 777326349 777326349 883163138 883163138 728059975 728059975 453306487 392141496 392141496 297978858 366125730 366125730 304902944 295015234 853359738 853359738 829151475 829151475 499084098 499084098 791845546 791845546 881797070 881797070 426501689 109915224 109915224 68781072 75858464 93788808 93788808 31381060 226681956 226681956 219669348 146170440 147963968 147963968 295744004 1005225259 1005225259 377364378 1070897389 1070897389 915908624 1052533590 1052533590 731057814 731057814 604522628 743230605 743230605 610328658 641769472 641769472 583097497 311197888 616851552 616851552 948198146 974484245 987183127 987183127 438763969 47226320 59776034 276076034 276076034 392542858 392542858 881399707 881399707 555286592 563684961 563684961 302065234 994429520 1070006322 1070006322 857072259 940020356 940020356 956334199 956334199 873014536 875610891 875610891 700520809 292425376 271717122 883026562 883026562 809107712 951719681 953287245 953287245 705300572 944768668 944768668 738332294 471211204 563591328 705421888 933754818 933754818 448080640 422626086 407010108 190488176 190488176 96710048 96710048 89868288 127762616 127762616 79521672 84449024 84449024 70542984 70642440 70642440 69595008 26047200 10751552 10751552 43357520 43357520 25731440 36300048 36300048 145272046 393031098 474285364 474285364 272703618 272703618 150012742 404622968 681910925 681910925 900534006 1060399999 1060399999 666209422 868473826 1060845018 1060845018 369591204 204522252 143771596 266401792 417332934 513810526 513810526 457870192 311701150 311701150 319491316 520754238 520754238 424169598 514893658 514893658 281765380 191398964 191002748 234885240 234885240 203870328 227940972 247074096 247074096 168050432 109262880 109262880 155605760 155605760 230704168 243390073 657496857 657496857 622126041 699289417 699289417 224844512 481530598 481530598 224547212 482377800 482377800 451937238 451937238 205685898 143824788 143824788 306560720 337469506 337469506 102244000 343433027 549213987 928371275 928371275 914831451 740946002 377213322 377213322 443338562 443338562 379111002 715787068 956656435 956656435 572081072 572081072 560588193 57714193 304271634 819648226 819648226 301700803 440255954 440255954 355527090 355527090 303042576 437481502 458692266 458692266 404676102 122165674 121973888 121973888 19016096 22438120 22438120 131410256 131410256 167021632 167021632 120243288 441973398 441973398 405141760 469835790 469835790 521690290 521690290 824887069 824887069 265024764 707756085 707756085 185241856 177624764 442534656 884486882 884486882 788639489 820712181 820712181 785850064 588640439 857500341 857500341 864090314 864090314 164699122 888739067 888739067 431108628 774910375 774910375 4753792 4753792 557483648 557483648 47980416 47980416 39490112 270845186 270845186 288526848 288526848 28657762 33563488 42207312 42207312 438372116 438372116 407636932 407636932 140515744 272629760 272629890 461389876 461389876 406852166 313952644 379885914 379885914 346460178 642126546 807933040 807933040 604635208 604635208 908692424 908692424 866096936 866096936 288555136 549454439 549454439 420753606 555484801 563686468 563686468 318833650 858202499 858202499 967392194 967392194 569906768 589205344 589205344 576981393 968912803 968912803 706209425 408142967 203425545 569972629 569972629 658282037 686217669 766458208 766458208 576860286 576860286 1024977634 1024977634 879625620 917287275 917287275 304645982 1026296088 1026296088 386450490 894063866 894063866 925762924 925762924 977711680 977711680 822193320 1049418187 1049418187 893434912 810897920 544127744 440438352 62051184 434331480 526249662 526249662 406848784 406848784 378683658 477367182 477367182 474745998 511439314 511439314 132122716 132122716 168968212 177115664 177115664 507642944 507642944 297867310 208078852 208078852 216031628 335620438 335620438 312598866 417820124 417820124 167858816 205792896 205792896 346797764 894965568 894965568 889929124 808468753 934929797 934929797 722749480 797182077 877727072 877727072 186911478 743706153 743706153 89720320 406534246 406534246 460070752 498522990 498522990 329652594 371402168 371402168 368140400 362420144 620690008 977635747 977635747 496655093 168478690 238102928 358754132 358754132 627734444 627734444 612584965 1034281161 1034281161 1033008515 877143297 568854753 987718547 987718547 1000548436 1000548436 679608865 679608865 469766309 469766309 654719154 788643492 788643492 691274884 691274884 867303411 867303411 633754848 924769939 960253838 960253838 218368044 941675783 941675783 48240272 596957216 722633714 722633714 443947986 443947986 170955996 794746404 794746404 752631577 177066969 149082564 122197088 491294878 0 0 34816 313344 313344 882129734 882129734 740503821 355541202 921635838 921635838 674764305 644882319 832897246 832897246 750779152 750779152 286289553 457334646 457334646 853881366 973362592 986396514 986396514 808714001 696463712 673186053 603067377 603067377 179625268 549512836 584799632 847398304 847398304 560377938 616658057 684089864 684089864 1032294947 1032294947 907033152 907033152 2306304 457388288 457388288 583028722 878215795 878215795 291527261 264421396 439353752 439353752 331432130 331432130 147875994 344704768 883555658 883555658 552742152 409244224 671878084 711071360 711071360 617475273 626043785 665420201 665420201 648563432 648563432 114035280 376685712 376685712 16000896 311690816 311690816 276873282 276873282 7357378 7627136 7627136 107558896 207697890 524711352 1033627148 1033627148 671240724 704696324 704696324 773849373 876200941 876200941 870665579 595636081 623241513 623241513 552389160 388492442 388492442 274131168 276279936 276279936 3459840 3459840 2097664 140795264 140795264 134743556 16658948 16064896 16064896 109066368 232062980 232062980 74705600 202955448 202955448 135057988 393216954 450661690 450661690 444630230 413408420 192334464 383488136 383488136 376591320 376591320 24376082 11794472 57330440 67216720 73939520 107318536 176714056 537580545 728755377 728755377 926957721 926957721 71616648 71616648 233182705 637147144 882399008 882399008 742186247 290639020 340118976 340118976 812913824 962079186 962079186 531476998 531476998 400229470 494927982 494927982 211556742 186911304 161715080 181034805 565741344 565741344 80880652 716869637 798041696 798041696 784685005 784685005 763265824 42775808 553796649 562584305 709411899 709411899 922305441 936945635 982787473 982787473 772615197 1046480069 1046480069 442122056 722315463 722315463 562559073 562559073 345605224 951776650 951776650 763309604 216216012 550114500 598250687 998269040 998269040 38043816 2622720 5252608 142086401 142086401 439832768 439832768 573261878 982689364 982689364 748939496 720986101 720986101 205326941 579125280 579125280 152046284 261917736 261917736 775392576 775392576 687282641 710066608 710066608 691325121 575032105 1071042726 1071042726 857985136 857985136 514598388 514598388 889050796 889050796 857792565 767258728 767258728 570125964 612427497 699191012 699191012 26251392 25825088 26004576 48880656 48880656 34531968 560698656 560698656 543420801 21096672 21096672 19321056 28995712 82098560 88648064 88648064 67749024 551485568 551485568 567361409 567361409 612034369 612034369 85988416 164131974 423717113 734390527 734390527 879756171 879756171 580395518 580395518 426806909 432222272 432222272 432534980 432534980 339460000 733754174 733754174 697966433 495716446 266522583 516367480 1005989017 1005989017 891642290 920590787 920590787 930711800 930711800 287158570 366368042 472409165 876873867 876873867 856592441 800591784 800591784 1007325260 1007325260 604378380 954691698 954691698 899818922 805906560 450651916 450651916 414238542 181741402 429941186 429941186 186308624 136275028 169166868 169166868 978309652 978309652 807186049 994981986 994981986 272648384 272648384 423682660 528599110 528599110 186126072 470067892 470067892 264766716 683851762 783097126 783097126 547906198 547906198 1021177551 1021177551 271919874 271919874 225174286 225174286 158885024 398532614 432719348 432719348 315112786 315112786 599507825 932050505 932050505 838936912 326353502 326353502 474300413 546956865 902721093 902721093 1070996223 1070996223 956854972 956854972 419471695 537059310 657754780 657754780 977604406 977604406 722750352 556911400 776301221 776301221 546069644 613553676 613553676 536890912 536890912 629287593 729907344 729907344 767869317 767869317 991350042 1002671712 1002671712 805966163 805966163 342276394 680717707 787174018 878852929 969407721 1014512545 1014512545 981470780 981470780 1012774045 1012774045 882560652 339902544 339902544 236134145 741826973 741826973 673197325 487735131 918280236 918280236 848959059 973638663 1009255695 1009255695 460063796 389564967 1034176796 1034176796 595118001 595118001 117461592 334926110 334926110 1023073307 1023073307 690362661 667852554 327933540 360860840 377911463 478683480 806920648 888686285 888686285 618726665 134416080 182138580 182138580 1050699102 1050699102 889203272 889203272 831859299 718605865 390603296 390603296 842215444 842215444 827003665 549015782 549015782 927135251 927135251 625199756 485817147 476401976 476401976 352362112 352362112 248630168 537987802 653929108 653929108 916278014 916278014 729113624 284797124 144031760 161538864 161538864 127327120 127327120 91487000 83571544 132121080 543165745 543165745 383925888 648819067 648819067 380578370 338955018 561892584 609261433 609261433 580194411 636038698 892891056 892891056 591710385 591710385 549767361 540152577 540152577 24399264 590102561 590102561 593758641 593758641 581002528 177151200 177151200 169151376 722559509 984566720 984566720 985619783 985619783 957911680 957911680 913430039 958812649 958812649 811663631 163335379 800336578 800336578 655029658 281405634 221260332 447557504 474299532 474299532 178596180 136587668 65873920 167967620 268303484 349159644 349159644 262183026 419823904 419823904 77595458 108268808 108268808 337973000 339029258 883163138 883163138 728059975 997730294 997730294 876114592 876114592 976802199 976802199 759345978 686675856 693251896 693251896 659305960 659305960 280346478 751233429 751233429 875554590 875554590 881797070 881797070 426501689 709436565 709436565 168089728 927495723 930128571 930128571 401625159 485403123 485403123 86646824 86646824 147963968 147963968 295744004 1005225259 1005225259 193859616 1070897389 1070897389 915908624 1052533590 1052533590 731057814 731057814 317183129 377561178 610328658 610328658 604679440 640153881 640153881 311197888 616851552 616851552 604356931 974484245 987183127 987183127 724574949 724574949 717562592 276076034 276076034 322558218 363646314 881399707 881399707 555286592 983339524 983339524 714790485 994429520 1070006322 1070006322 857072259 940020356 940020356 747295821 957430799 957430799 875610891 875610891 623257608 292425376 271717122 883026562 883026562 611061193 338759170 849552505 849552505 998643831 1049561101 1049561101 558001835 1047567214 1047567214 566299298 1033216102 1033216102 448080640 461398104 567402736 700641497 701604040 701604040 217571488 217571488 127762616 127762616 29562472 59801168 59801168 52178400 27095728 41877888 41877888 40913216 40913216 46410368 46410368 43357520 23484704 32217568 32217568 134302884 134302884 595396513 595396513 990989040 990989040 697896811 504896529 681910925 681910925 900534006 1060399999 1060399999 666209422 261169788 244917852 244917852 204522252 205532704 224210604 224210604 417332934 513810526 513810526 457870192 311701150 311701150 319491316 520754238 520754238 424169598 514893658 514893658 281765380 191002748 191002748 386663126 386663126 295634800 295634800 392186034 392186034 412579072 448708294 466718502 466718502 360710250 490528888 490528888 657496857 657496857 622126041 699289417 699289417 204641357 481530598 790688629 790688629 579346449 579346449 1574400 456671238 599447072 761028837 761028837 564981792 342178402 102244000 102244000 321200800 321200800 385867800 385867800 575688896 575688896 972364976 1008730383 1008730383 532042876 532042876 613453949 613453949 152753700 246517929 628623273 698896392 698896392 603492624 819648226 819648226 301700803 490246688 490246688 403767610 403767610 504738304 504738304 335790848 253940280 253940280 121634944 121973888 121973888 64031024 64031024 61272688 101993584 101993584 167021632 167021632 120243288 208835228 220363496 392701364 469835790 469835790 521690290 521690290 824887069 824887069 926256221 926256221 707756085 940515867 940515867 303223336 453519888 833168739 833168739 820712181 820712181 785850064 749071415 273763378 286730132 307298904 348201162 348201162 605168321 605168321 897517344 897517344 774910375 637534233 583740105 560770337 550513057 183721216 183721216 272338164 272338164 270845186 288526848 288526848 28657762 58531392 58531392 157613492 438372116 438372116 407636932 407636932 140515744 139924594 302514288 461389876 461389876 406852166 313952644 268458056 277123995 604298440 604298440 807933040 807933040 604635208 604635208 51380224 51380224 866096936 866096936 847636563 844500753 844500753 48446626 6829008 54010754 299966898 834878147 858202499 858202499 867869426 867869426 590094144 590094144 589205344 576981393 968912803 968912803 706209425 408142967 203425545 569972629 569972629 658282037 772227208 772227208 766458208 660213300 542034799 423415590 879625620 879625620 917287275 917287275 521092622 1026296088 1026296088 877174005 588225903 669256185 669256185 873076847 977711680 977711680 569942634 1049418187 1049418187 893434912 810897920 544127744 440438352 360660906 434331480 526249662 526249662 404002832 404002832 281282728 477367182 477367182 474745998 474745998 269661190 16777248 24914944 24914944 151800168 151800168 133044728 297867310 297867310 208078852 208078852 216031628 335620438 335620438 312598866 417820124 417820124 203374092 203374092 209466304 209466304 894965568 894965568 687640953 1066388314 1066388314 934929797 298952298 121667544 39650464 39650464 375736832 375736832 59871168 59969310 406534246 406534246 460070752 460070752 448374512 448374512 437330454 371402168 738454987 738454987 620690008 977635747 977635747 496655093 168478690 737700584 737700584 358754132 627734444 627734444 612584965 77793602 159190970 189208894 462108184 462108184 441149653 672570432 810629315 810629315 679608865 679608865 469766309 469766309 461508726 788643492 788643492 691274884 691274884 589366697 635054049 635054049 603364185 960253838 960253838 169480208 941675783 941675783 602724597 596957216 810598680 810598680 240272000 240272000 419699028 794746404 794746404 752631577 177066969 379588738 379588738 491294878 1020926783 1020926783 327441912 152044068 760959954 918725535 918725535 992200856 992200856 298537884 320386466 337860482 541594388 541594388 214473729 556352640 556352640 36650256 45617134 503056208 964766494 964766494 564154185 1018031866 1018031866 696463712 673186053 603067377 603067377 702692808 702692808 252979599 847398304 847398304 560377938 616658057 616658057 236335148 378929700 528881790 528881790 418407921 418407921 501801838 819453404 1058836416 1058836416 919095990 919095990 750307021 723570089 563104721 331661875 391531658 391531658 344704768 344704768 404540934 404540934 381944670 671878084 687656640 687656640 678185860 626043785 665420201 665420201 648563432 648563432 114035280 438961108 438961108 82318178 436800884 436800884 339036250 339036250 81791618 148428484 148428484 145213314 141584386 66790808 177947685 299063424 671240724 704696324 765011565 765011565 1070909897 1070909897 640010011 595636081 623241513 623241513 552389160 388492442 836649989 836649989 276279936 594850737 594850737 594576036 594576036 584344065 651201277 782054920 782054920 773531128 707002661 631245128 782265109 782265109 939953240 939953240 292843061 69522946 340313226 759600160 973359111 973391895 1006667800 1006667800 352673952 342306288 342306288 117847568 117847568 14436184 47773512 78103000 78103000 73939520 176714056 185047572 263054356 263054356 136347650 311181640 313001298 313001298 686344664 686344664 645825693 473974274 473974274 290639020 340118976 340118976 283888914 283888914 52399376 528812046 528812046 310450374 310450374 483147264 483147264 378410832 692063569 692063569 565741344 565741344 288670496 293525026 798041696 798041696 689437324 689437324 318830521 855901584 855901584 553796649 931660932 1056975967 1056975967 963963270 963963270 369485079 605202203 1046480069 1046480069 923378701 923378701 722315463 895895898 895895898 877425833 877425833 763309604 763309604 216216012 550114500 598250687 998269040 998269040 355996586 277008450 277008450 21046016 21046016 406338752 496703566 567935494 1034458414 1034458414 959761191 959761191 993545106 993545106 579125280 579125280 96081768 96081768 91265480 775392576 775392576 687282641 581249361 183229573 71487624 562853328 1071042726 1071042726 857985136 857985136 514598388 630065148 889050796 889050796 861951340 834402147 834402147 828729795 809187075 699191012 699191012 592841237 592841237 998818534 998818534 809369394 955273741 955273741 631374185 954932999 954932999 883518603 873194763 640767762 824180756 824180756 588964262 902127462 902127462 618604932 567361409 567361409 612034369 612914189 903357856 903357856 1017878066 1017878066 319669072 340337802 340337802 813289056 813289056 426806909 432222272 432222272 432534980 432534980 339460000 733754174 733754174 697966433 76546632 522668848 522668848 121960606 863545224 863545224 920590787 920590787 828619608 828619608 872434052 872434052 472409165 876873867 876873867 856592441 800591784 800591784 147389876 144986432 143401024 143401024 412034244 805906560 805906560 450651916 450651916 414238542 181741402 179547072 157974084 157974084 8995904 13031616 43458624 43458624 38722704 302010368 994981986 994981986 298254900 346604136 346604136 249194820 249194820 186126072 260123316 264766716 264766716 683851762 783097126 783097126 547906198 547906198 1021177551 1021177551 293610048 286335522 225174286 225174286 158885024 558433373 558433373 262032816 568900145 568900145 599507825 932050505 932050505 838936912 254522194 285642352 474300413 546956865 902721093 902721093 1070996223 1070996223 956854972 956854972 229560301 537059310 657754780 657754780 977604406 977604406 722750352 546525772 776301221 776301221 651307012 651307012 147855469 608832864 608832864 78401345 729907344 729907344 767869317 767869317 702630101 119634534 274176348 274176348 342276394 342276394 400693672 400693672 269957986 222556800 375653080 375653080 308595866 421097508 421097508 181237446 194235984 194235984 155711148 236134145 741826973 741826973 673197325 487735131 918280236 918280236 848959059 973638663 1009255695 1009255695 460063796 338221741 1034176796 1034176796 595118001 660472448 660472448 655236153 240256140 571869220 690362661 690362661 914888715 914888715 952173772 952173772 1017209266 1017209266 888686285 888686285 482354691 134416080 182138580 182138580 1050699102 1050699102 889203272 889203272 831859299 718605865 297821308 297821308 842215444 842215444 304612626 304612626 301991168 67108880 625199756 625199756 485817147 476401976 476401976 441249168 248630168 248630168 237396428 237396428 591961936 591961936 180241077 135868420 135868420 144031760 161538864 161538864 127327120 127327120 91487000 83571544 132121080 543165745 543165745 383925888 648819067 648819067 634269584 356852257 42991626 663096320 663360633 663360633 636038698 892891056 892891056 591710385 591710385 549767361 540152577 540152577 538540032 590102561 590102561 593758641 593758641 581002528 177151200 177151200 86674812 5038480 229789080 613894654 613894654 591258500 957911680 957911680 913430039 958812649 958812649 811663631 398891774 800336578 800336578 655029658 281405634 21055682 20971680 34865328 34865328 92539456 117704808 117704808 58721376 58721376 277941568 277941568 274152192 274152192 219096856 1044394602 1044394602 1053633615 1053633615 1040460991 1027868799 700014661 326878416 997730294 997730294 876114592 876114592 976802199 976802199 759345978 686675856 693251896 693251896 659305960 659305960 165641240 751233429 751233429 875554590 875554590 116658269 126140611 878682664 878682664 709436565 168089728 927495723 930128571 930128571 401625159 485403123 485403123 137708020 86646824 76587336 134967410 273082070 454858258 458888886 458888886 320616558 285018672 191702980 123867576 433659456 718743430 718743430 720083075 844316231 920321867 920321867 604679440 640153881 640153881 495401070 797773884 797773884 717280426 604356931 593967537 735918804 735918804 724574949 717562592 105678296 80131850 322558218 363646314 830142832 830142832 94403209 983339524 983339524 714790485 730124928 730124928 722735332 722735332 709286037 747295821 747295821 957430799 957430799 675406092 675406092 623257608 67442985 277423936 879559434 879559434 611061193 612968204 612968204 781981226 998643831 1049561101 1049561101 558001835 1047567214 1047567214 566299298 1033216102 1033216102 276824130 461398104 567402736 700641497 701604040 701604040 217571488 217571488 99982296 123467448 123467448 45137952 21366736 21366736 35268864 41877888 41877888 42561152 42561152 46410368 46410368 996416 9362496 42556736 42556736 134302884 134302884 595396513 595396513 990989040 990989040 697896811 504896529 217303415 591668411 656408121 759897016 759897016 754270061 754270061 246403693 244023900 244023900 235503748 224210604 224210604 369662261 1062134187 1062134187 378410517 378410517 536612862 835874142 835874142 813953091 617252235 617252235 507528334 568722813 568722813 215162944 386663126 386663126 325544832 325544832 392186034 392186034 412579072 448708294 466718502 466718502 360710250 490528888 490528888 30864796 598769744 598769744 630341701 630341701 646501424 734254105 790688629 790688629 579346449 579346449 1574400 456671238 599447072 761028837 761028837 564981792 342178402 81110144 74713176 36574608 36574608 170742544 170742544 575688896 679506240 972364976 1008730383 1008730383 532042876 532042876 613453949 613453949 616591576 717455553 717455553 698896392 698896392 603492624 693785765 693785765 372835377 490246688 490246688 403767610 403767610 520740914 520740914 171010820 171010820 237109888 237109888 75825240 75825240 64031024 64031024 131822017 760910761 760910761 545481953 724702005 724702005 582111809 582111809 766632813 766632813 766632813 746933024 336593418 513829153 595688827 926256221 926256221 378537986 940777988 940777988 303223336 438872821 833168739 833168739 270258484 271147376 749071415 749071415 357811531 378642424 378642424 362185219 348201162 498410170 729557840 897517344 897517344 637534233 637534233 710029664 710029664 726176017 726176017 703124720 859482128 859482128 137722740 148333088 148333088 25678948 58531392 58531392 157613492 189134164 189134164 196399168 196399168 143792256 143792256 302514288 302514288 33722448 350486912 350486912 340002954 277123995 604298440 880355211 884581771 884581771 555145761 555145761 577166002 577166002 834114352 847636563 847636563 844500753 844500753 334045824 334045824 54010754 54010754 852502544 852502544 595010433 303376914 290465968 590094144 590094144 330172787 51414544 270912850 270912850 68445448 68445448 94428040 94428040 564317864 646131801 772227208 772227208 660213300 660213300 206342556 1004936172 1004936172 493211659 600131932 600131932 717759072 717759072 877174005 877174005 606838992 669256185 669256185 873076847 873076847 575939776 545092873 713810369 713810369 543578308 144262912 67058148 38175706 360660906 360660906 388836666 388836666 277428268 281282728 281282728 410962946 436477270 436477270 439544320 439544320 152505600 151655460 174922996 174922996 157714432 157714432 161660992 226972132 226972132 240549308 240549308 944709817 944709817 495116142 1009693995 1009693995 1066379005 1066379005 970726446 856436863 680555364 687640953 687640953 1066388314 1066388314 889840634 121667544 121667544 109316098 277112346 375736832 375736832 332274930 327588592 61621248 321160802 321160802 58264400 448374512 448374512 437330454 152839222 738454987 738454987 594355960 594355960 278449034 128330552 226838002 737700584 737700584 437219748 784430390 1009963791 1023956005 1023956005 880154016 1012274268 1012274268 462108184 421886767 90486305 39133348 191703188 279712272 279712272 900776811 900776811 261228568 305003833 305003833 657394464 906349084 916944593 916944593 635054049 937118680 937118680 919736465 1041793171 1041793171 912917696 711322005 711322005 810598680 810598680 352354768 188223376 419699028 419699028 703914463 703914463 387263034 958578820 958578820 645348249 1020926783 1020926783 327441912 152044068 760959954 918725535 918725535 992200856 992200856 298537884 320386466 320386466 541594388 541594388 277174578 556352640 556352640 377038688 51734400 503056208 964766494 964766494 473260512 1018031866 1018031866 506013857 379533935 82720792 293017342 702692808 702692808 600712404 805334724 805334724 549979250 710549792 710549792 427893761 427893761 528881790 653273846 653273846 418407921 1055908389 1055908389 1058836416 1058836416 919095990 919095990 750307021 723570089 563104721 428950102 487893050 487893050 340564666 885776334 885776334 636514507 596151857 381944670 448006998 678185860 678185860 146591489 71336104 71336104 19162336 33031456 33031456 438961108 438961108 349471514 436800884 436800884 339036250 339036250 81791618 148428484 152688330 485200558 485200558 1046676496 1046676496 299063424 659013050 659013050 765011565 765011565 1070909897 1070909897 640010011 381510049 90475530 305932656 305932656 61148946 836649989 836649989 309047682 594850737 594850737 594576036 594576036 584344065 651201277 782054920 782054920 773531128 707002661 631245128 782265109 782265109 939953240 939953240 302527524 69522946 340313226 759600160 973359111 973391895 1006667800 1006667800 352673952 342306288 342306288 117847568 292619818 292619818 304254016 304254016 78103000 249815428 249815428 109187160 168840864 168840864 136347650 311181640 313001298 313001298 686344664 686344664 645825693 487819800 487819800 102003246 10617360 60953072 283888914 283888914 202025608 528812046 528812046 310450374 310450374 483147264 483147264 378410832 692063569 692063569 960546768 960546768 288670496 293525026 1058870816 1058870816 689437324 689437324 318830521 855901584 855901584 876266528 931660932 1056975967 1056975967 963963270 963963270 369485079 605202203 613168603 613168603 923378701 923378701 578966632 895895898 895895898 877425833 877425833 732848389 732848389 624005101 624005101 176354696 88348840 355996586 355996586 277008450 341107730 341107730 1029811127 1064120200 1064120200 567935494 1034458414 1034458414 959761191 959761191 993545106 993545106 1059544212 1059544212 956558495 418938053 532201781 532201781 971628531 971628531 738672651 738672651 481737726 1000238258 1000238258 757482068 757482068 391029201 370137362 749787352 749787352 861951340 861951340 838860771 838860771 828729795 809187075 164458116 162546166 592841237 592841237 998818534 998818534 809369394 955273741 955273741 631374185 954932999 954932999 883518603 873194763 640767762 824180756 824180756 588964262 902127462 902127462 618604932 359675784 335577696 81454304 612914189 903357856 903357856 1017878066 1017878066 283690434 814032963 814032963 817219330 817219330 338005243 122987040 122987040 723444283 723444283 563221089 1014764284 1014764284 899413611 899413611 522668848 522668848 365866724 863545224 863545224 643570419 643570419 322963260 322963260 872434052 872434052 640917818 980993943 980993943 706690581 706690581 273226391 147389876 144986432 904796492 915017915 915017915 412034244 147405894 308147072 337715466 337715466 233811217 456052718 720803843 965744658 965744658 916420811 722895977 609101007 510429397 546835685 546835685 925414810 925414810 725694040 346604136 249194820 249194820 220649772 587806577 587806577 189866676 563287057 563287057 229688172 229688172 108815824 312337892 312337892 293610048 286335522 324018178 324018178 333756232 558433373 558433373 344784944 568900145 568900145 385906762 336253962 381281564 381281564 443473920 443473920 961877102 1053819615 1053819615 371612581 381847612 532960248 819072458 819072458 229560301 203346020 203346020 3146496 3146496 2265600 2134016 546525772 546525772 257242044 651307012 651307012 536904712 608832864 608832864 630458985 630458985 737177788 835113182 835113182 845552019 845552019 352715193 274176348 302128232 302128232 207119978 177609300 186780432 623104085 623104085 447819806 447819806 690733892 853017837 990454395 1037776072 1037776072 209935256 209935256 68495880 148067216 148067216 108269636 1063626024 1063626024 53328823 41994304 94685544 94685544 536875793 536875793 642333264 642333264 597958345 660472448 690362261 708447153 722472976 722472976 206475408 559696062 914888715 914888715 952173772 952173772 1017209266 1017209266 1047003982 1047003982 485548762 508756122 508756122 348320410 477600462 615847938 615847938 513844083 332541586 709902519 709902519 297821308 668017462 668017462 758769453 758769453 628344901 550427841 441907302 977583726 977583726 249189940 441249168 441249168 215365688 215365688 742023766 742023766 866534034 866534034 808701995 602050584 423055972 136638624 49428868 53345552 53345552 53244160 53358792 73444360 73444360 27639680 79337320 350759568 350759568 634269584 650975282 902509803 902509803 663096320 663360633 663360633 346955043 93401152 320255808 320255808 25301632 33246784 33246784 555065312 555065312 538540032 17605760 17605760 164644384 164644384 59930356 87364008 87364008 47856320 177488404 177488404 183241384 329408678 347505474 347505474 249923828 305159298 390971716 398891774 398891774 293823426 293823426 280437442 408107750 408107750 408045826 483449068 483449068 251719988 251719988 208572664 183654788 125872532 277941568 628233134 628233134 605160016 643647330 1044394602 1044394602 1053633615 1053633615 1040460991 1027868799 741887276 315949812 693419476 693419476 78524013 438507836 438507836 555910312 555910312 304603428 304603428 92541696 115482768 270544196 270544196 275126658 322559494 322559494 195572020 148444850 14231168 878682664 878682664 101489755 47043104 43061328 68681856 1049142310 1049142310 996202014 791582114 911686043 911686043 672667677 672667677 751342594 1048576135 1048576135 641729562 320616558 285018672 191702980 347213408 467278724 718743430 718743430 720083075 844316231 920321867 920321867 162005664 734012608 734012608 589484337 865722873 865722873 821013368 583139457 468454142 735918804 735918804 165088801 150045312 272669074 272669074 65428315 64272601 75390827 280065787 664248546 664248546 940152054 940152054 730124928 730124928 722735332 722735332 709286037 732108656 732108656 792464894 812130350 812130350 965215335 965215335 67447460 812295372 815907395 815907395 877312320 877312320 818376841 928125548 928125548 545403098 973607102 973607102 671605548 671605548 762616581 762616581 544525185 197267700 197267700 143729168 143729168 88096928 88096928 75546984 77335432 99982296 123467448 123467448 45137952 40405248 1789072 35268864 37699344 37699344 42561152 42561152 5342544 37877136 37877136 25686048 58954096 58954096 44476496 90491304 100475640 226545848 719964400 719964400 689228325 449979096 449979096 260081512 260081512 759897016 759897016 754270061 754270061 246403693 244023900 244023900 235503748 128308448 107266744 369662261 1062134187 1062134187 378410517 837559492 958736679 958736679 835874142 813953091 617252235 617252235 507528334 568722813 568722813 215162944 215162944 187295028 325544832 325544832 320000562 182901204 182901204 10436160 266984704 266984704 264754888 166192512 166192512 674287629 734805856 734805856 630341701 630341701 646501424 734254105 734254105 254980497 201981956 201981956 80352392 205671436 205671436 135168 110230152 110230152 46401744 74713176 74713176 36574608 36574608 170742544 170742544 925111912 925111912 679506240 985449280 985449280 947921478 1068126519 1068126519 523785575 616591576 717455553 717455553 671088645 67108877 591959984 595253169 595253169 372835377 124318874 338216202 338216202 302572806 520740914 520740914 407191564 176529694 237109888 237109888 75825240 75825240 56624416 56624416 131822017 760910761 760910761 545481953 724702005 724702005 582111809 582111809 766632813 766632813 766632813 746933024 202298134 513829153 595688827 1032820780 1032820780 915427419 940777988 940777988 168835591 436939110 436939110 430257174 430257174 119537208 416306324 416306324 357811531 378642424 643319477 643319477 537362584 703136736 729557840 729557840 542114433 50384640 52019488 710029664 710029664 726176017 726176017 703124720 859482128 859482128 137722740 137722740 479859592 479859592 417859014 472210836 472210836 231165336 231165336 196399168 196399168 188164962 320014390 320014390 16912416 84314656 411322990 411322990 340002954 302254194 373495569 880355211 884581771 884581771 555145761 555145761 577166002 577166002 651215825 651215825 815619138 815619138 286602624 334045824 334045824 45224784 332477040 852502544 852502544 868486051 868486051 275987139 539526656 996956274 996956274 978343893 987707350 987707350 418620086 418620086 94765172 237377820 564317864 646131801 646131801 155018012 129381173 590927868 590927868 1004936172 1004936172 493211659 793502720 793502720 918795934 1002488055 1046038471 1046038471 606838992 482357698 482357698 139197516 139197516 139016008 247182740 247182740 194391828 194391828 44954448 141609824 156586668 226700160 226700160 42892304 44990496 44990496 271356032 271356032 410962946 436477270 436477270 439544320 439544320 152505600 151655460 174922996 561300193 561300193 685524549 685524549 757551269 757551269 255633436 255633436 1000945993 1000945993 495116142 1009693995 1009693995 1066379005 1066379005 970726446 856436863 680555364 784875698 784875698 292248941 656573703 656934201 656934201 918635610 918635610 638321792 324503618 332274930 332274930 327588592 146340884 61621248 28387856 15279552 407045056 408557190 475699462 475699462 327043560 346061330 354225888 354225888 278449034 104379796 397116928 397116928 437219748 437219748 1014019297 1014019297 1023956005 1023956005 880154016 1012274268 1012274268 421886767 538444625 538444625 45893153 858103297 858103297 279712272 900776811 900776811 92322953 305003833 621282345 621282345 906349084 916944593 916944593 417902669 937118680 937118680 919736465 1041793171 1041793171 912917696 711322005 746863667 1003211797 1003211797 613458110 970056423 970056423 518874941 703914463 703914463 387263034 958578820 958578820 645348249 71997746 71997746 138412164 985869778 985869778 544087425 211028556 784094070 794538515 794538515 103941632 271592338 538917819 538917819 277174578 531199138 605882401 605882401 124832160 481912575 481912575 467232367 697735616 697735616 858866585 858866585 379533935 553912353 553912353 588389788 799039972 799039972 805334724 805334724 549979250 710549792 961411968 961411968 427893761 412680266 653273846 653273846 632390740 1055908389 1055908389 805230223 851969595 851969595 213385703 226869248 226869248 924387886 924387886 923093506 948054087 948054087 885776334 885776334 679527105 727191248 727191248 692373669 35967888 584370322 658041353 668254745 668254745 593284785 591743680 95163968 369962016 369962016 349471514 407144787 407144787 314021011 169684500 149830293 815615570 815615570 485200558 492938376 1046676496 1046676496 544802072 589948209 631579625 631579625 336333834 900055104 900055104 813525744 832587985 929632787 929632787 865810426 371241258 371241258 331491552 309047682 309047682 305059218 570687504 570687504 583034881 583034881 333521336 333521336 336667146 340853434 372908984 372908984 276326186 436965904 918638676 1011085455 1057073165 1057073165 793196733 454157990 454157990 423691138 423691138 58618770 104870048 104870048 299500032 299500032 292619818 304254016 304254016 105805400 249815428 249815428 109187160 168840864 168840864 267993576 468757608 500237026 1031847838 1031847838 872797900 872797900 810033171 487819800 364243818 364243818 285738018 285738018 274467488 202025608 155576484 67344456 67344456 11090048 47265824 169349826 169349826 342557018 739485663 966880975 966880975 964884829 964884829 1058870816 1058870816 893979405 557075757 557075757 636325225 636325225 876266528 876266528 599270288 942966396 942966396 460119355 317649114 144653892 145701958 356394454 967058584 967058584 578966632 578966632 543719240 651049161 652430948 732848389 794028272 794028272 624005101 691808929 773282344 773282344 242125116 21563520 341107730 341107730 1029811127 1064120200 1064120200 505415432 991953422 991953422 75042181 403705512 436994822 436994822 1059544212 1059544212 956558495 722990009 722990009 532201781 971628531 971628531 738672651 738672651 481737726 1000238258 1000238258 319719201 391029201 391029201 370137362 911259594 1051949033 1051949033 812878944 838860771 838860771 211717256 164458116 164458116 140356836 64037616 62914800 62914800 33554496 583016528 583016528 8454289 33024 15656896 16375232 16375232 15642112 389186208 389186208 274263064 394381986 394381986 11616512 13664448 88086336 88086336 81454304 145226052 289921476 289921476 197806588 197806588 258638012 814032963 814032963 817219330 817219330 414333804 343085924 343085924 723444283 821332042 829376749 1014764284 1014764284 899413611 899413611 337850412 365866724 579076465 579076465 416531217 416531217 159969511 514584801 514584801 526440097 526440097 640917818 980993943 980993943 706690581 931397740 931397740 740820237 878446729 904796492 915017915 915017915 263848856 682232908 707379208 707379208 337715466 233811217 456052718 720803843 965744658 965744658 916420811 722895977 609101007 510429397 546835685 546835685 925414810 925414810 725694040 88187018 171047784 220649772 220649772 587806577 587806577 60368496 711035542 999062924 999062924 1000779844 1000779844 1029796647 1029796647 859301575 859301575 717898995 717898995 1021351288 1021351288 338053600 344784944 395127930 395127930 748473933 890929207 890929207 906672362 923875512 923875512 961877102 1053819615 1053819615 371612581 778575131 810257603 810257603 326424003 326424003 632804138 718860056 718860056 851106550 851106550 709042704 451536561 252536892 252536892 210899532 536904712 536904712 171185723 898268889 898268889 779876253 737177788 835113182 835113182 845552019 845552019 621241140 527663473 302128232 786506452 786506452 657938341 186780432 623104085 623104085 447819806 447819806 690733892 853017837 990454395 1037776072 1037776072 504413096 504413096 914696581 1007961939 1007961939 523848135 1063626024 1063626024 846178852 589041395 732317765 732317765 637980994 536875793 642333264 642333264 597958345 602014369 690362261 708447153 722472976 757411377 757411377 613622493 650696856 735778284 744563085 744563085 258224417 947995020 1047003982 1047003982 485548762 508756122 508756122 348320410 477600462 615847938 615847938 513844083 350352770 709902519 709902519 192099040 668017462 668017462 758769453 758769453 628344901 550427841 441907302 977583726 977583726 244978782 244978782 150219458 72498764 138231454 742023766 742023766 866534034 866534034 808701995 602050584 423055972 141031812 141031812 136732800 53345552 53244160 53358792 53358792 26451152 27639680 77596240 104335128 104351576 112772952 650975282 902509803 902509803 641351297 548812810 548812810 346955043 355541802 355541802 537396225 567805025 567805025 559481505 559481505 555065312 91379593 561631777 561631777 723958656 723958656 171053844 204625336 204625336 206570124 206570124 140559112 183241384 183241384 347505474 347505474 249923828 305159298 305159298 271316226 271316226 293823426 293823426 280437442 408107750 408107750 408045826 483449068 483449068 251719988 251719988 208572664 183654788 125872532 29360352 628233134 628233134 605160016 643647330 852684282 852684282 358233732 466844720 466844720 741887276 741887276 370072602 929754423 929754423 873408896 878914825 1040835615 1040835615 709460002 676853899 676853899 979234455 979234455 681209542 270544196 275126658 322559494 322559494 287179777 806619651 806619651 591601155 344073801 584843299 584843299 117585433 813311704 1049142310 1049142310 996202014 791582114 911686043 911686043 672667677 672667677 751342594 1048576135 1048576135 641729562 249496584 249496584 76612812 347213408 467278724 467278724 274413186 140062666 975062173 975062173 1059068708 1059068708 1065261248 1065261248 736589124 865722873 865722873 821013368 917510784 917510784 608710885 572481232 595690064 595690064 272669074 272669074 128846856 128846856 87140472 926026096 926026096 1040214031 1040214031 940152054 1049297490 1068263844 1068263844 534983166 534983166 424569641 179094373 909716090 909716090 812130350 965215335 965215335 67447460 812295372 812295372 340227017 877312320 877312320 818376841 928125548 928125548 545403098 973607102 973607102 671605548 671605548 762616581 850474834 850474834 273228930 443500920 599970484 599970484 772681272 772681272 166478804 154173728 60140320 60140320 60082800 59868432 40405248 25728032 56018208 66385136 66385136 23491808 52251104 58231200 58231200 37877136 36577248 61758768 61758768 110866762 270194178 439603974 439603974 740265314 777019118 777019118 591970764 591970764 518278110 518278110 514060638 514060638 555621988 655292185 655292185 547126860 194281744 159392776 159392776 107266744 120129960 426646950 426646950 269555096 837559492 958736679 958736679 397620090 397620090 343999692 343999692 111198552 198447848 198447848 159007408 187295028 437862264 437862264 302328184 302328184 182901204 422322544 524228622 524228622 264754888 381096548 519626376 519626376 674287629 734805856 734805856 72450496 220775032 791823188 791823188 763908253 540673504 615729817 615729817 106574408 205671436 543686864 583795601 583795601 550386000 12792000 12792000 38086800 38086800 580988931 716769617 793521630 925111912 925111912 740625249 1062299334 1062299334 947921478 1068126519 1068126519 854592079 854592079 443770324 348311754 910311505 910311505 587732272 589960497 589960497 57278593 56896656 285347874 470913664 474214542 474214542 407191564 407191564 497946408 497946408 234622956 57545308 120095376 120095376 104435728 104435728 76547072 77071944 77071944 72034936 777761644 777761644 726940413 512880758 128190840 350464700 357690800 357690800 322049542 322049542 1032820780 1032820780 915427419 915427419 1049675824 1049675824 773065227 436939110 990516010 990516010 974788119 730919588 733489013 733489013 582049876 643319477 643319477 635538296 703136736 703136736 551158388 542114433 50384640 50384640 187204096 187204096 21509120 149112096 164361444 174280704 174280704 407221700 457094038 479859592 479859592 417859014 472210836 472210836 231165336 231165336 206059136 206059136 188164962 320014390 320014390 16912416 84314656 411322990 411322990 302254194 302254194 288360672 292817826 391191920 391191920 75636896 93193472 116687000 116687000 108555024 108555024 102567816 67110848 36904896 44821456 45224784 45224784 332477040 596968178 596968178 868486051 868486051 603245552 603245552 996956274 996956274 978343893 987707350 987707350 418620086 418620086 94765172 237377820 237377820 214010952 155018012 158934660 677705728 677705728 590927868 389805882 402403280 683152648 793502720 1012651200 1012651200 1002488055 1046038471 1046038471 828023950 213227024 213227024 201406620 201406620 172238676 108001884 14294544 194391828 194391828 44954448 141609824 156586668 226700160 226700160 121217832 121217832 127814744 271356032 271356032 236651136 14680512 265159288 265159288 143918080 144444996 144444996 28947040 561300193 561300193 685524549 685524549 757551269 757551269 255633436 255633436 1000945993 1000945993 572093472 227190025 145278276 145278276 214902792 214902792 732876044 732876044 784875698 784875698 910734140 910734140 935538939 935538939 918635610 918635610 881331264 378422296 101424338 71512200 146340884 146340884 287312402 287312402 41555856 407045056 408557190 475699462 475699462 339075928 339075928 402654182 402654182 104379796 478294072 478294072 397116928 371328843 434865102 1014019297 1014019297 416401952 618688618 618688618 497095317 259527886 71107848 663261106 810310035 853676499 858103297 858103297 287623794 287623794 71388080 71388080 79495545 621282345 621282345 627454384 627454384 309620384 309620384 120228104 727252996 865075257 865075257 77804894 860588678 860588678 746863667 1003211797 1003211797 613458110 970056423 970056423 621144105 621144105 433703290 108529560 305186826 305186826 348578576 71997746 71997746 138412164 985869778 985869778 544087425 211028556 784094070 794538515 794538515 123961752 271592338 538917819 538917819 273694386 273694386 605882401 605882401 124832160 481912575 481912575 890772538 890772538 967458051 967458051 1051993195 1051993195 553912353 553912353 943952794 943952794 799039972 552083808 306279626 379671114 379671114 961411968 961411968 278035573 49954752 564146736 632390740 632390740 507553625 312352338 336137226 703939036 703939036 451520495 226869248 226869248 924387886 924387886 923093506 948054087 948054087 545265774 497804074 679527105 727191248 727191248 692373669 360721356 584370322 658041353 668254745 668254745 593284785 591743680 288503872 351216616 357574658 357574658 407144787 407144787 314021011 169684500 316697042 815615570 815615570 422929501 1053903676 1053903676 866738322 544802072 589948209 631579625 631579625 336333834 336333834 813525744 813525744 832587985 929632787 929632787 865810426 371241258 542896997 542896997 196635908 590041585 590041585 570687504 570687504 583034881 616890428 738463848 773595288 773595288 706616853 643638808 901775905 901775905 878983674 918638676 1011085455 1057073165 1057073165 793196733 722942517 722942517 1025455618 1025455618 5977728 104870048 104870048 299500032 367174208 367174208 83092416 83092416 105805400 105805400 135869536 227029516 227029516 222398914 283402404 468757608 500237026 1031847838 1031847838 872797900 872797900 810033171 412045379 364243818 364243818 299409394 541235856 680307984 680307984 65204608 157799568 157799568 46745668 47265824 47265824 383020110 383020110 739485663 966880975 966880975 964884829 964884829 912296571 893979405 893979405 933044896 933044896 636325225 636325225 388640883 918610203 918610203 942966396 942966396 460119355 315513285 1009129743 1009129743 1043251539 1043251539 967058584 856471633 820574240 852971217 852971217 652430948 652430948 794028272 794028272 180778000 691808929 773282344 773282344 73728 73728 8396864 8396864 932291316 932291316 746980491 505415432 991953422 991953422 75042181 285476898 829993804 829993804 498552705 98672800 653465893 722990009 722990009 189895360 33818640 160827920 160827920 59789860 59165360 169884256 177079572 177079572 674530066 820960707 820960707 911259594 1051949033 1051949033 328291218 328291218 963336836 963336836 942460167 86658333 64037616 723660021 723660021 948970710 948970710 595664018 948115628 948115628 615719897 951972871 951972871 914900187 911183579 628466866 389186208 397740730 397740730 319953090 276109120 364655976 364655976 347713864 350172938 358612650 358612650 348356198 348356198 197806588 258638012 258638012 393741120 393852388 414333804 414333804 343085924 357658656 357658656 821332042 829376749 969942499 969942499 419448610 419448610 362072682 770251557 770251557 642703152 662984256 662984256 159969511 514584801 545982032 704664837 878968815 923537258 923537258 356188834 356188834 931397740 931397740 833432931 878446729 974127205 974127205 263848856 263848856 682232908 707379208 707379208 84935208 226264360 226264360 52429872 53100592 53100592 220680224 220680224 285806608 313259346 313259346 98117352 98117352 504666786 504666786 257577404 69867164 340549506 340549506 336733448 119537976 119537976 711035542 999062924 999062924 1000779844 1000779844 1029796647 1029796647 859301575 970981557 970981557 717898995 1021351288 1021351288 941821958 266345076 266345076 429526569 940201779 940201779 907024167 946996385 946996385 1014047631 1014047631 940845448 940577920 940577920 778575131 810257603 810257603 326424003 326424003 632804138 718860056 718860056 851106550 851106550 709042704 451536561 252536892 252536892 210899532 210899532 254879232 254879232 898268889 898268889 779876253 588745080 983820900 983820900 368354105 621241140 709208516 709208516 495108245 786506452 896471502 896471502 364688805 470048420 470048420 256975548 243930204 381862918 381862918 428394110 508715184 508715184 504413096 504413096 914696581 1007961939 1007961939 523848135 523848135 846178852 846178852 589041395 732317765 732317765 637980994 535059694 535059694 406436284 281805922 897588416 940913260 940913260 278215736 757411377 757411377 613622493 836061505 836061505 744563085 744563085 258224417 539304256 729911265 729911265 168894996 34129680 52650016 176201744 426082932 442622358 442622358 394815022 457180818 457180818 143180424 143180424 148723606 221748020 221748020 293708896 435684454 435684454 268363740 216655308 199273076 227338984 227338984 243701524 243701524 212465108 248059864 248059864 202662400 215001472 215001472 154144132 154144132 152586176 141031812 136732800 16874640 55499952 55499952 51592368 51565104 105381584 105381584 104335128 104351576 112772952 112772952 601958936 601958936 547565889 293744744 293744744 297272522 355541802 355541802 537396225 567805025 567805025 559481505 943322982 943322982 881468461 645121545 561631777 723958656 723958656 510006864 204625336 204625336 206570124 206570124 140559112 228548448 228548448 201848844 134346884 134346884 147224576 147224576 157996452 157996452 155161380 141034884 141501444 162076932 162076932 151198592 17043840 41943104 41943104 66796160 66796160 127894932 127894932 200401776 235620264 402132748 655773802 655773802 60982453 67245952 372913972 372913972 373555408 373555408 96266026 370072602 929754423 929754423 873408896 878914825 1040835615 1040835615 709460002 676853899 676853899 979234455 979234455 681209542 144427856 65012208 65012208 59426208 308087312 806619651 806619651 591601155 344073801 584843299 584843299 117585433 813311704 877722107 877722107 140004100 140004100 24827808 184666404 184666404 263467578 580556488 580556488 1022914041 1022914041 1014551141 1014551141 628367148 628367148 303500432 546492431 771822210 771822210 975062173 975062173 1059068708 1059068708 1065261248 1065261248 736589124 506647326 654484018 654484018 917510784 917510784 650503104 650503104 595690064 595690064 406896774 406896774 475005582 475005582 364704599 926026096 926026096 1040214031 1040214031 786933207 1049297490 1068263844 1068263844 534983166 534983166 424569641 179094373 909716090 909716090 639508785 362748002 362748002 478506926 821981070 821981070 279760194 279760194 445954307 445954307 335627443 274264066 766434669 960028303 960028303 633992421 531278668 847299538 850474834 850474834 681838917 681838917 677389524 599970484 772681272 772681272 166478804 154173728 95227746 287386986 287386986 282403050 361696682 361696682 98707650 66385136 361499754 364526370 364526370 291908648 98441760 98441760 81005256 67371712 61758768 110866762 270194178 439603974 439603974 740265314 777019118 777019118 591970764 591970764 518278110 518278110 514060638 514060638 605237836 655292185 655292185 547126860 213402716 159392776 265301424 265301424 163061988 869657331 869657331 273709417 820933307 883491331 910188743 910188743 642286623 512229447 302624776 1051234388 1051234388 539206069 1004216149 1004216149 1039942529 1039942529 717265951 696635463 555450588 422322544 524228622 524228622 330014816 381096548 519626376 519626376 202116108 689177673 689177673 79776736 220775032 791823188 791823188 763908253 540673504 615729817 615729817 106574408 269027840 543686864 583795601 583795601 550386000 283430848 12792000 116840896 116840896 580988931 716769617 793521630 793521630 588802151 740625249 1062299334 1062299334 606789890 873149451 873149451 854592079 854592079 384902106 348311754 910311505 910311505 587732272 589960497 589960497 405853956 405853956 97641192 470913664 474214542 474214542 230941276 374787460 497946408 497946408 234622956 119839096 120095376 130769240 130769240 104435728 705218641 705218641 558417057 687134005 777761644 777761644 726940413 784733945 784733945 878006056 878006056 357690800 310476850 692984997 692984997 757443023 944988231 944988231 1049675824 1049675824 774977626 774977626 990516010 990516010 974788119 730919588 733489013 733489013 710123216 530443902 530443902 635538296 724509209 724509209 109739400 560443105 560443105 165219108 542189248 542189248 597350197 597350197 687865893 704828180 704828180 447268964 457094038 457094038 110676554 519951280 519951280 126870934 76070012 386655288 520115204 520115204 38538368 39060496 159515152 159515152 81579648 115425562 272687360 278929544 350298570 350298570 16128960 101193992 101193992 59904624 93193472 116687000 116687000 108555024 108555024 102567816 67110848 10227264 15184704 16222144 17505362 317810336 825296147 825296147 805755139 552739875 603245552 603245552 601238337 435991782 435991782 328017890 948299847 948299847 750179341 750179341 12915244 215692856 215692856 589126041 589126041 677705728 958533927 958533927 389805882 402403280 683152648 683152648 1012651200 1012651200 969618663 969618663 828023950 828023950 236299852 236299852 303557194 349203468 349203468 108001884 14294544 35478800 35478800 6660352 6660352 63005686 508620862 508620862 425980326 463655286 463655286 182988864 388113806 388113806 481432398 481432398 288708736 237510040 237510040 222820324 548926700 548926700 211500929 5427840 557947168 557947168 558934304 558934304 544598913 35515920 572093472 572093472 861932439 861932439 418718263 418718263 570034821 732876044 946025881 946025881 769787371 910734140 910734140 935538939 935538939 847596754 881331264 881331264 455771670 455771670 329262896 329262896 157819296 287312402 287312402 181336496 181336496 630362065 868045066 868045066 1018611877 1018611877 769345255 666389435 147214896 483014936 483014936 390115886 821187376 821187376 812691546 456349056 416401952 275129952 274283648 95922858 557504289 557504289 856181697 856181697 853676499 853676499 559587651 287623794 841223059 841223059 96519025 314572809 314572809 45258960 350635620 350635620 277317188 290074016 410126764 727252996 865075257 865075257 143005963 874911812 874911812 355131457 381929698 403196868 403196868 87106344 606971400 621144105 812531819 812531819 99540456 810976706 810976706 694450976 176424188 176424188 51299460 114088128 121708728 121708728 255926460 344024152 344024152 134266884 123961752 123961752 90770744 54925488 139017268 139017268 53865264 26821712 109426544 307674952 386115096 890772538 890772538 967458051 967458051 1051993195 1051993195 460247781 450177750 943952794 943952794 335626387 304398936 304398936 379671114 379671114 347552586 672108545 672108545 394338426 774545535 774545535 606758696 850660179 850660179 850660179 920809770 920809770 451520495 173605476 1007264448 1007264448 490733576 550552300 886095885 886095885 497804074 497804074 435377884 406876230 948866724 948866724 536089370 536089370 140345506 331923824 331923824 327493744 327493744 353053890 353053890 462593060 462593060 469910466 469910466 52965458 30407904 316697042 807502208 807502208 45968899 1053903676 1053903676 273490080 51399452 220514604 238322224 238322224 110660352 106481304 106481304 50979784 50979784 107261280 130671864 130671864 36462000 542896997 542896997 307785634 590041585 590041585 343944280 343944280 279249346 616890428 738463848 773595288 773595288 706616853 643638808 901775905 901775905 878983674 878983674 739267369 982699553 1032637551 1032637551 722942517 722942517 1025455618 1025455618 790489376 790489376 352782506 352782506 367174208 367174208 349429832 349429832 68460544 188749396 221135176 227029516 227029516 222398914 283402404 394080186 394080186 378136338 438347189 598563026 687426261 687426261 412045379 172225104 299409394 299409394 541235856 680307984 680307984 172683460 157799568 157799568 134291604 144716964 152568758 383020110 383020110 373215988 373215988 360111018 772210334 772210334 1029262337 1029262337 872605317 933044896 933044896 377874522 388640883 388640883 918610203 918610203 419877152 492964078 492964078 315513285 1009129743 1009129743 1043251539 1043251539 950880571 856471633 820574240 852971217 852971217 297514880 120637216 791636184 791636184 685578901 575245844 78760496 232071924 232071924 38356048 344470706 344470706 243669068 746980491 746980491 381291690 832574087 832574087 496504836 910167813 931864444 1057053016 1057053016 1044423812 1038320040 1038320040 378553489 378553489 312026706 312026706 629148271 969778723 969778723 859390468 974495893 974495893 674530066 820960707 820960707 935074530 935074530 649073416 255212615 903743152 963336836 963336836 942460167 708522695 829633443 858928368 858928368 948970710 948970710 595664018 948115628 948115628 884969371 951972871 951972871 914900187 911183579 628466866 341909968 397740730 697118838 942157127 942157127 823849542 364655976 347713864 350172938 358612650 472507662 472507662 348356198 296841516 303203380 394790010 394790010 393852388 393852388 210476646 298329100 357658656 357658656 898506058 1007289609 1007289609 958600739 624055341 624055341 947034292 947034292 770251557 642703152 780865464 873576713 873576713 834854947 574083311 704664837 878968815 923537258 923537258 724054934 732053345 732053345 345479242 833432931 833432931 974127205 974127205 694492160 560729505 85198689 5776384 5776384 222997225 222997225 79102453 636621563 942687002 942687002 934730619 666163569 637948283 884035995 884035995 757925401 929997369 929997369 712268838 302783688 302783688 340549506 340549506 866656481 866656481 283191070 867437299 867437299 322248452 322248452 339493328 677706257 677706257 564532901 970981557 970981557 457310550 939667490 941821958 941821958 266345076 266345076 429526569 940201779 940201779 907024167 946996385 946996385 1014047631 1014047631 940845448 940577920 940577920 97488576 85193256 267540912 267540912 45305292 92795008 92795008 97865216 97865216 101442664 101442664 98925368 157434112 157434112 155373732 155373732 254879232 254879232 369150888 455398944 848206726 1072855741 1072855741 1004671774 1004671774 909450079 909450079 709208516 495108245 693947820 896471502 896471502 364688805 793576257 793576257 483262358 483262358 790799380 844255373 1010963095 1010963095 805457936 104951808 104951808 485051760 485051760 142398780 163325824 253583556 253583556 176033568 176033568 162924004 162924004 125437784 135403012 135403012 59806048 281805922 897588416 940913260 940913260 278215736 327552736 327552736 418035985 836061505 836061505 124652768 111284568 682146936 682146936 539304256 838927920 859309875 859309875 173658789 141754502 426082932 442622358 442622358 394815022 457180818 457180818 499655474 499655474 149431074 221748020 221748020 187063084 435684454 435684454 268363740 216655308 169085532 169085532 149269516 243701524 243701524 212465108 248059864 248059864 202662400 215001472 215001472 154144132 154144132 152586176 51564608 38727008 51260512 55499952 69700840 69700840 85924848 576698265 576698265 357379242 568205483 568205483 354092586 572627304 572627304 547565889 383738848 840884099 840884099 556592928 556592928 385889010 506268892 506268892 364952396 943322982 943322982 881468461 645121545 277383819 495393144 510006864 510006864 59055836 202510592 203036172 203036172 30196716 228548448 230037764 230037764 162779760 179502864 179502864 183337344 183337344 149495872 149495872 141034884 2757888 13111680 19467008 19467008 64559376 64559376 55691904 66796160 66796160 127894932 127894932 200401776 614389982 620497536 655773802 655773802 918159894 918159894 372913972 372913972 172218246 626058649 663271328 663271328 742527204 742527204 27790560 546250016 562245729 562245729 338948874 338948874 313285886 354295082 354295082 359482516 359482516 306032336 280749552 150994980 308087312 308087312 64767490 315724370 315724370 310765650 141321686 889272474 889272474 141840524 571389497 571389497 759871154 874112523 874112523 756183427 694683045 580556488 580556488 1022914041 1022914041 1014551141 1014551141 628367148 676657518 861710799 861710799 771822210 771822210 817950738 817950738 391671466 391671466 505471904 505471904 286548646 419244884 657096745 657096745 658600665 658600665 650503104 650503104 193316064 193316064 406896774 406896774 475005582 475005582 364704599 364704599 678491140 853736957 853736957 786933207 731457232 731457232 622373413 122629753 90177192 655174713 655174713 589970241 547491433 672346629 672346629 650430681 650430681 821981070 821981070 568328929 1039820196 1039820196 981842990 335627443 234493932 766434669 960028303 960028303 466342145 466342145 847299538 847299538 567194036 681838917 681838917 677389524 261658192 261658192 252210200 252210200 229181308 189012052 287386986 287386986 282403050 361696682 427557828 427557828 283453890 361499754 364526370 364526370 291908648 98441760 98441760 81005256 67371712 53089584 50702640 35313168 56160256 417120596 621292696 621292696 105710633 134759044 377801616 377801616 351273930 498332526 498332526 605237836 605237836 146463028 213402716 213402716 154149380 265301424 265301424 177097864 869657331 869657331 275092528 820933307 883491331 910188743 910188743 642286623 512229447 281567298 1051234388 1051234388 700498149 1004216149 1004216149 1039942529 1039942529 717265951 696635463 555450588 523314000 498089784 498089784 330014816 318043034 77039760 77039760 97156584 97156584 79776736 79776736 33603600 33603600 57184576 57184576 32646976 44238080 44238080 35271360 269027840 276751040 276751040 272959104 283430848 283430848 272629890 116840896 116840896 107802826 316798920 316798920 277897216 235153464 319097438 319097438 651247754 651247754 639848920 846788418 846788418 272664586 18907424 18907424 886309065 886309065 616619740 436864279 137904128 405853956 405853956 97641192 97641192 94630248 136558856 223002860 231215784 231215784 207143140 207143140 119839096 70238016 130769240 130769240 81408852 705218641 705218641 558417057 687134005 687134005 384310330 200795505 784733945 784733945 878006056 878006056 252248312 252248312 692984997 692984997 757443023 944988231 944988231 591835160 591835160 774977626 774977626 629613356 538968321 538968321 677542492 701819621 710123216 710123216 530443902 530443902 273293312 724509209 724509209 394330636 560443105 560443105 441586326 542189248 542189248 597350197 597350197 687865893 704828180 704828180 447268964 447268964 446508054 350368112 519951280 519951280 421527846 273634776 386655288 520115204 520115204 1697350 274050178 274050178 294348950 339720458 339720458 272958080 278929544 350298570 350298570 343264498 394383112 394383112 14319616 14583488 14583488 7620672 7620672 4009728 11148032 26288736 28829600 28829600 16222144 43127168 316580321 825296147 825296147 805755139 593134272 552739875 601238337 601238337 962807328 985062231 985062231 948299847 948299847 750179341 750179341 768410332 768410332 610045089 625793641 625793641 563795553 958533927 958533927 685769157 685769157 592679432 592679432 980522502 980522502 969618663 969618663 402513063 328592840 236299852 236299852 781849220 781849220 681117073 604509337 780665989 780665989 654607396 174377024 140578912 195080336 508620862 508620862 425980326 463655286 463655286 182988864 388113806 388113806 481432398 481432398 288708736 237510040 237510040 222820324 548926700 548926700 226016929 226016929 913694198 913694198 949253478 1003878263 1003878263 418593351 409620183 428612998 861932439 861932439 418718263 418718263 570034821 720129796 1009649700 1009649700 769787371 548057248 612005232 875201055 875201055 616858752 235610318 379155466 455771670 455771670 329262896 329262896 157819296 157819296 146522448 181336496 702707313 702707313 868045066 868045066 1018611877 1018611877 769345255 666389435 147214896 483014936 483014936 390115886 821187376 821187376 812691546 456349056 376634236 275129952 318933016 318933016 557504289 557504289 856181697 856181697 49152 49152 4194432 56363563 841223059 841223059 96519025 314572809 314572809 6586880 350635620 350635620 277317188 290074016 410126764 686953169 686953169 182678292 725857799 874911812 874911812 294335586 1033569285 1033569285 607135338 900801387 900801387 434159588 812531819 877230537 877230537 824682755 810976706 694450976 176424188 176424188 128325128 612237990 984862803 984862803 1071983103 1071983103 518373409 84492422 749211904 749211904 736323089 736323089 197780724 162530148 767698905 767698905 109426544 307674952 307674952 840394114 840394114 699994664 699994664 593180337 920787050 920787050 1000671663 1000671663 179587956 188576304 308533248 308533248 169910832 169910832 154264356 672108545 672108545 394338426 774545535 774545535 606758696 850660179 850660179 850660179 920809770 920809770 441884805 173605476 1007264448 1007264448 336150685 550552300 886095885 886095885 483521572 483521572 435377884 473160924 948866724 1038940220 1038940220 536089370 1063335030 1063335030 1032795141 1032795141 1016020047 1016020047 676006090 462593060 462593060 469910466 469910466 338875403 449562709 449562709 807502208 807502208 45968899 710165328 710165328 695577093 810625622 844178067 844178067 572811552 333734176 106481304 106481304 99108288 50979784 48842792 48842792 31925072 36462000 42577472 307785634 307785634 63801760 305417986 343944280 343944280 279249346 340306024 378013866 378013866 278533698 381224672 381224672 667943673 667943673 790631197 790631197 739267369 982699553 1032637551 1032637551 462775123 346555722 724323112 724323112 790489376 790489376 560469736 829726130 938886432 938886432 545285635 545285635 610191490 610191490 341497034 338986250 281022024 139774124 214452012 394080186 394080186 378136338 279193008 13182144 13181120 12459840 45095952 45095952 45239632 45239632 15126976 107002904 172683460 172683460 82498632 82498632 144703956 144716964 152568758 376588719 637323697 637323697 875902711 875902711 672770064 672770064 1029262337 1029262337 874520839 866389913 866389913 377874522 397513073 397513073 474079374 474079374 419877152 492964078 492964078 368320064 717489945 717489945 942441835 950880571 950880571 422115424 562349105 575570656 575570656 251692504 251692504 791636184 791636184 685578901 579671636 78760496 232071924 232071924 50961552 344470706 344470706 249295100 249295100 326121600 371330792 643571011 643571011 496504836 910167813 931864444 1057053016 1057053016 1044423812 1038320040 1038320040 378553489 378553489 312026706 312026706 629148271 969778723 969778723 919819240 974495893 974495893 812042731 812042731 685107528 935074530 935074530 649073416 457595159 903743152 903743152 936152638 936152638 708522695 829633443 858928368 858928368 38404704 38404704 15729600 172041108 589317984 884969371 884969371 393507438 587860820 587860820 584660833 49419216 200421488 697118838 942157127 942157127 823849542 271203170 99367208 362952032 362952032 472507662 472507662 296841516 304487680 304487680 394790010 394790010 371245338 419753098 419753098 428810154 428810154 159343406 898506058 1007289609 1007289609 958600739 1067082825 1067082825 947034292 947034292 158094334 33920 780865464 873576713 873576713 918766429 918766429 606729624 681699037 681699037 454925246 724054934 732053345 732053345 111221858 388971834 696985172 696985172 694492160 694492160 607399817 607399817 628871884 628871884 222997225 223167788 223167788 636621563 942687002 942687002 934730619 666163569 637948283 884035995 884035995 757925401 929997369 929997369 712268838 302783688 302783688 276959298 151082082 866656481 866656481 283191070 867437299 867437299 202114124 355009952 355009952 677706257 806912193 806912193 724845222 627089155 710088496 710088496 191443344 517080580 517080580 213404208 437420288 437420288 312908390 430083346 430083346 962562468 962562468 997572898 997572898 741247657 712973719 395772861 387071336 387071336 267540912 234224672 234224672 223160268 257228604 257228604 211870796 210319373 646521945 717438045 717438045 583346385 588352732 588352732 890689124 890689124 812387715 848206726 1072855741 1072855741 1004671774 1004671774 973425492 973425492 454684888 454684888 693947820 693947820 467199935 135266820 793576257 793576257 684100488 483262358 790799380 844255373 1010963095 1010963095 805457936 496022376 496022376 485051760 485051760 475838208 469486552 33419232 30842208 15188896 15188896 162924004 162924004 24250656 135403012 135403012 122555010 345703058 846989088 846989088 613470784 613470784 67680016 62650344 695766436 695766436 554198915 388345355 294575202 682146936 682146936 424402384 838927920 859309875 859309875 308352272 353969050 353969050 57105296 342380458 342380458 357869184 806032011 806032011 543831185 538136849 608383113 608383113 34079760 304195856 304195856 893974853 893974853 655001626 751574548 751574548 40424528 212336720 212336720 237061056 237061056 65620352 8390336 29434496 29434496 19142960 51564608 51564608 47528112 51260512 51260512 69700840 69700840 85924848 576698265 576698265 359000490 568205483 568205483 354092586 354092586 386245328 386245328 383738848 840884099 840884099 556592928 556592928 385889010 942797168 942797168 710834618 46395600 46395600 134750573 862866795 862866795 999213433 999213433 864029712 238028824 340075962 340075962 189009576 302979346 339619392 339619392 411242720 490445038 490445038 408813696 408813696 446636928 446636928 317380050 451103922 451103922 441846486 441846486 284221820 284221820 470149134 470149134 470128622 222214098 222214098 160248272 6001444 614389982 620497536 620497536 615833357 918159894 918159894 330743708 330743708 97458374 626058649 663271328 663271328 742527204 742527204 27790560 546250016 562245729 704353572 877867659 877867659 765776256 765776256 354295082 359482516 359482516 429788372 429788372 391829178 391829178 273684512 64767490 315724370 315724370 310765650 141321686 889272474 889272474 117440569 571389497 571389497 759871154 874112523 874112523 756183427 694683045 514879719 236713500 262365129 482496400 482496400 478988230 1022777528 1022777528 1001440119 872713009 706281990 706281990 319931578 319931578 391671466 391671466 505471904 505471904 286548646 419244884 771777408 771777408 658600665 658600665 573616520 113268128 193316064 193316064 182316756 182316756 178562944 106957056 857364608 857364608 855429075 469961444 151729392 1001929564 1072539967 1072539967 622373413 122629753 90177192 655174713 655174713 589970241 547491433 672346629 672346629 650430681 650430681 46481805 568328929 568328929 1039820196 1039820196 981842990 29495520 1032178344 1032178344 957559335 140211780 672673856 672673856 551702848 551702848 541114497 23469408 19797408 59328064 695790021 695790021 265811648 265811648 229181308 189012052 69930864 239284380 805916713 825472808 825472808 961693582 961693582 18874656 18874656 5259520 26611360 117456976 117456976 119725072 128732480 128732480 94654808 338240778 442618526 442618526 621292696 1014293997 1014293997 776361038 776361038 483084102 483084102 498332526 498332526 484020074 1073165294 1073165294 1038433788 98654156 154149380 244843260 244843260 177097864 400167472 400167472 398072554 411459690 514917398 514917398 340280332 340280332 358667442 510834542 918775248 918775248 700498149 700498149 270870786 270870786 497814850 497814850 472524692 523314000 523314000 498089784 498089784 391310066 391310066 31776874 42677328 42677328 18905424 28446208 28446208 11376640 8478720 4719744 13107264 13507776 16386368 16386368 14161088 270190472 270190472 272959104 272959104 373170944 373170944 370097178 338820954 41956545 542237313 886801105 886801105 788619147 788619147 319097438 664801551 664801551 651247754 444459984 846788418 846788418 820616000 947304130 947304130 886309065 886309065 832751172 436864279 450898480 450898480 421404198 466357442 466357442 323516338 465652466 465652466 294914658 294914658 287069248 153144584 78530852 125667752 125667752 49284048 49284048 52953248 98832738 350895170 394335518 394335518 384310330 139275396 303555196 303555196 219222584 363832522 363832522 409482184 409482184 480485850 480485850 455445096 197204740 591835160 591835160 638896665 638896665 706871296 706875669 706875669 580912648 580912648 281309954 281309954 173968464 273293312 273293312 140778484 394330636 394330636 277299584 368103804 441586326 441586326 294793860 369805084 369805084 978588325 978588325 479660052 479660052 1020387471 1020387471 1021432055 1067573475 1067573475 895643648 527111204 273634776 113689700 113689700 1697350 274050178 293613650 294348950 339720458 339720458 348991970 348991970 274582920 275040384 343264498 394383112 394383112 131546864 97498104 88849592 77978872 82854336 97308584 97308584 79740928 287028386 304593314 304593314 274700432 274700432 601901072 601901072 593134272 652421120 816017873 883349835 893822539 962807328 985062231 985062231 682719328 682719328 700309538 700309538 768410332 768410332 610045089 625793641 625793641 565407052 214536545 683806976 685769157 685769157 683745477 683745477 814262996 814262996 471978887 577044250 853071437 976122987 976122987 394506328 781849220 781849220 741083601 707265813 780665989 780665989 654607396 578289696 140578912 195080336 195080336 151332900 416187144 416187144 202464738 343985248 355897384 355897384 218393452 230000684 230000684 163776960 163776960 164577892 1051428602 1051428602 953824929 1056137143 1056137143 913694198 949253478 1003878263 1003878263 528055696 528055696 409620183 170187753 701568772 701568772 533990142 817698386 844674053 1009649700 1009649700 757649707 324199965 612005232 875201055 875201055 417493453 887175146 887175146 251713560 251713560 100993168 347789400 347789400 344121160 53839104 128135709 702707313 702707313 536875378 866259315 866259315 814764873 823185597 823185597 248826588 248826588 205525016 43290648 43201104 110301520 274727368 294196642 294196642 65615426 318933016 318933016 109423672 101615090 382223504 382223504 283791810 293240930 303038994 320640560 320640560 103290024 19923744 51861440 55974576 110119008 231910104 231910104 161031888 155403392 982617748 982617748 940988226 380326912 725857799 725857799 321630421 319025202 1033569285 1033569285 607135338 960036684 960036684 434159588 479021101 877230537 877230537 824682755 686469295 615390537 191237760 191237760 188356404 612237990 984862803 984862803 1071983103 1071983103 518373409 111812928 749211904 749211904 736323089 736323089 510198190 479356822 767698905 767698905 42677328 301134627 780091293 780091293 837419164 837419164 765268982 593180337 920787050 920787050 1000671663 1000671663 179587956 179587956 308533248 308533248 313807702 315751498 315751498 145270916 199574624 472433934 472433934 472206600 894209076 894209076 575194257 906085441 906085441 885104875 705928265 710669973 910327832 910327832 550031377 550031377 327730290 571521197 571521197 522470288 751459249 759600509 759600509 1038940220 1038940220 508321982 1063335030 1063335030 1032795141 1032795141 1016020047 1016020047 676006090 495327334 495327334 468358701 468358701 338875403 498871222 498871222 451600006 442474130 302997202 710165328 710165328 695577093 810625622 844178067 844178067 572811552 333734176 65586640 99108288 99108288 84721944 117448384 117448384 82973640 72357120 29529760 30582048 31580640 33129984 33129984 88639776 88639776 74239368 22069920 22069920 76390208 87436064 87436064 270961792 270961792 33448448 33448448 29175648 18430304 345006616 672812816 708205333 708205333 340138885 724323112 724323112 833620786 833620786 560469736 829726130 938886432 938886432 545285635 545285635 610191490 645530385 645530385 977060032 977060032 773096192 773096192 214452012 159457636 672991813 672991813 30419136 144589700 144589700 195286644 195286644 19426976 19426976 556634624 715823568 715823568 63083892 65717456 65717456 144703956 144703956 79644488 376588719 637323697 637323697 875902711 875902711 725877948 604315659 870434440 874520839 874520839 717876362 717876362 272663152 851380030 851380030 760636576 1056957983 1056957983 595498728 368320064 368320064 41551120 41605008 50893728 205613184 205613184 17074240 562349105 562349105 177741688 251692504 251692504 758586540 758586540 579671636 579671636 139003104 139003104 50961552 50961552 25846976 231374980 249295100 249295100 215092720 215092720 146749508 146749508 119157120 125380536 127701056 127701056 128168320 128168320 107440172 267596796 267596796 233187856 151729216 196105024 220635404 220635404 919819240 919819240 68008747 529462096 812042731 812042731 685107528 685107528 550625985 499294676 457595159 1023812490 1023812490 652656337 534346323 280054800 40758672 316466064 316466064 65605904 65605904 61212176 47322672 589317984 589317984 65574689 25301088 16912416 16912416 16912416 14680512 14811584 14811584 11810944 1126912 1257984 99367208 99367208 362952032 362952032 271457538 271457538 329041268 413652562 413652562 442652582 453937850 453937850 419753098 419753098 535957724 535957724 974456040 1071460095 1071460095 206120076 947488554 1067082825 1067082825 535989668 535989668 875994986 875994986 354310403 200203571 478713929 918766429 918766429 606729624 681699037 681699037 185598516 185598516 135915012 820056092 820056092 974731023 974731023 982461672 982461672 948048645 954494712 954494712 628871884 628871884 471654598 223167788 367794202 367794202 278956330 278956330 63228464 63228464 280569274 280569274 270997370 270997370 459609532 475150888 475150888 240392576 262279548 262279548 178927040 641213688 641213688 586687212 796592209 796592209 173019852 355009952 355009952 283664434 806912193 806912193 724845222 1057096993 1057096993 912789896 941752748 941752748 517080580 500698238 437420288 437420288 312908390 697325796 697325796 962562468 962562468 997572898 997572898 741247657 712973719 395772861 387071336 387071336 213624988 234224672 234224672 223160268 257228604 257228604 211870796 210319373 646521945 717438045 717438045 583346385 588352732 588352732 890689124 890689124 812387715 558625953 558625953 351763394 351347658 548464834 973425492 973425492 709960341 799839420 799839420 561187376 1023723788 1023723788 507291077 689098756 689098756 385014602 511083666 511083666 204877996 204877996 249660410 496022376 496022376 338844572 475838208 475838208 469486552 429126246 433845990 433845990 351573894 338763850 343933418 360849994 360849994 75567650 122555010 345703058 846989088 877691715 877691715 613470784 656634169 656634169 695766436 1030294693 1030294693 609069593 801134421 841417169 841417169 713399719 866261937 866261937 995808417 995808417 1046627999 1046627999 878633487 810524323 724574086 206257677 806032011 806032011 543831185 538136849 608383113 977699970 977699970 575457977 894168010 894168010 893974853 655001626 751574548 751574548 177764956 169860108 115220184 193666140 193666140 244958892 244958892 237408788 190054664 190054664 26937956 151418276 184854784 184854784 166539648 166539648 75574464 99192712 128712768 128712768 359000490 359000490 95461408 294873968 294873968 386245328 386245328 306299624 336778138 336778138 186262566 277411159 277411159 942797168 942797168 1057466291 1057466291 900425967 890121245 862866795 862866795 999213433 999213433 864029712 238028824 340075962 340075962 189009576 302979346 339619392 339619392 411242720 490445038 490445038 408813696 408813696 446636928 446636928 317380050 451103922 451103922 441846486 441846486 284221820 284221820 470149134 470149134 470128622 222214098 222214098 162714272 160984624 176602548 176602548 49158480 134487104 134487104 144736720 459589522 459589522 196905780 442778806 442778806 371461194 371461194 30223584 355298122 355298122 344117322 704353572 877867659 877867659 765776256 765776256 220242319 150534540 82787784 461259022 461259022 391829178 391829178 308950816 308950816 329517426 329517426 327551346 128141920 128141920 94844760 45448416 543823273 979513816 979513816 852178175 807477507 807477507 941621511 941621511 537920257 823267875 1063134114 1063134114 901105399 1022777528 1022777528 1001440119 872713009 706281990 706281990 299050703 75853028 621835840 629929065 629929065 73449792 265916024 265916024 771777408 771777408 119246696 119246696 113268128 113268128 248620773 248620773 450752214 450752214 528339854 806017498 857364608 857364608 855429075 956717989 956717989 1001929564 1072539967 1072539967 539413024 539413024 478088031 164853660 118410296 294793046 345246508 345246508 458389014 458389014 412616956 412616956 212672960 212672960 269122600 285624101 285624101 351435460 1032178344 1032178344 957559335 672190318 672673856 672673856 853551924 853551924 74888617 685310436 685310436 176435297 695790021 695790021 265811648 265811648 774404936 774404936 851278574 1020184349 1020184349 825472808 825472808 961693582 961693582 339854858 354211618 354211618 287731784 127805536 117456976 548443177 548443177 128732480 556356273 556356273 442618526 453663872 828090709 1014293997 1014293997 955352406 776361038 483084102 679929947 679929947 540342464 918265599 1073165294 1073165294 1060180337 790370056 790370056 244843260 244843260 292322338 400167472 400167472 434389898 434389898 54559476 134218888 436799488 436799488 538969109 538969109 918775248 918775248 694756773 694756773 287331874 589971761 589971761 835349248 839210224 839210224 477867004 477867004 274968576 391310066 391310066 110036296 210639116 210639116 18905424 136864004 144027408 144027408 171208468 175933972 175933972 45730436 45730436 12550144 5642880 270190472 339744026 339744026 115418200 382067522 382067522 370097178 338820954 76038466 542237313 886801105 886801105 788619147 788619147 521161024 664801551 664801551 388520340 916954588 916954588 944019850 946215303 947304130 947304130 494258391 832751172 832751172 770801090 572132053 602821505 684645905 690390709 690390709 734151269 734151269 465652466 727686321 727686321 564197733 666438312 666438312 253436832 253436832 72614144 118054968 545718561 545718561 350895170 359335080 694330759 978442830 978442830 1013714319 1013714319 862505020 534624462 534624462 409482184 409482184 480485850 480485850 455445096 436594710 961009670 961009670 638896665 638896665 706871296 706875669 706875669 580912648 580912648 281309954 281309954 244592476 46299780 140436954 140436954 405989780 405989780 277299584 108280216 92704872 427862096 453371958 453371958 126140534 978588325 978588325 722536704 722536704 1020387471 1020387471 1021432055 1067573475 1067573475 895643648 527111204 416208202 416208202 336111792 37871760 37871760 293613650 293613650 56882088 88440352 348991970 348991970 369713370 369713370 99737704 332813250 332813250 131546864 97498104 275058016 317872160 317872160 317328960 317328960 312219280 287028386 304593314 304593314 420640264 420640264 601901072 601901072 1039801054 1039801054 816017873 883349835 893822539 893822539 951572612 951572612 682719328 682719328 908969776 908969776 286742296 683268150 683268150 58006998 565407052 565407052 252461327 750833676 750833676 612893907 683745477 683745477 566345814 835243170 835243170 577044250 853071437 976122987 976122987 975750553 975750553 741083601 741083601 707265813 707265813 109577577 578289696 578289696 576766353 576766353 1021778922 1021778922 985371228 985371228 850283212 343985248 343985248 294654986 335753226 404959244 404959244 2306304 200704 1089536 1051428602 1051428602 953824929 1056137143 1056137143 575427421 263205147 223296684 193035088 528055696 553753627 553753627 403668068 701568772 719130485 719130485 817698386 844674053 844674053 268484610 268484610 324199965 324199965 598056963 598056963 805398897 887175146 887175146 172163632 172163632 100993168 347789400 347789400 344121160 179571476 136925964 136925964 50466864 536875378 866259315 866259315 814764873 823185597 823185597 541124692 1017516057 1017516057 959515431 1003717204 1003717204 846270692 294196642 294196642 61347826 308027264 308027264 303699474 101615090 382223504 382223504 283791810 293240930 303038994 320640560 320640560 103290024 57655184 57655184 55974576 110119008 231910104 231910104 161031888 186328452 982617748 982617748 940988226 380326912 559955976 559955976 128653696 319025202 403648561 403648561 587029322 960036684 960036684 500743872 938271750 938271750 464444703 168819732 167108400 318530304 327307545 899727723 899727723 882610539 882452043 939831146 939831146 749060352 749060352 706924877 646107141 262811978 534904890 534904890 510198190 479356822 474596192 137364688 52970072 301134627 780091293 780091293 837419164 837419164 765268982 526776272 989006856 1056915423 1056915423 515300190 515300190 509443870 220599282 216258670 313807702 315751498 315751498 122956710 151552298 472433934 472433934 472206600 894209076 894209076 575194257 906085441 906085441 885104875 705928265 710669973 710669973 982196755 982196755 550031377 438891958 571521197 571521197 531968588 751459249 759600509 759600509 302254098 294852672 284189376 270655746 11719488 469842948 469842948 336475146 336272394 505354129 505354129 916456210 929197043 929197043 999942292 999942292 498871222 451600006 442474130 302997202 57173458 975471062 975471062 976088166 976088166 817905986 817905986 246123376 156725996 227314260 259907716 259907716 545349633 545349633 620808544 620808544 547651624 30582048 31580640 33129984 68225280 88639776 88639776 74239368 22069920 22069920 76390208 76390208 607809889 607809889 813793579 836334583 836334583 864777078 864777078 438040086 1058252646 1058252646 708205333 340138885 332137645 332137645 833620786 833620786 864026674 864026674 625739905 70255496 307106644 419172294 419172294 645530385 645530385 977060032 977060032 773096192 773096192 339042432 159457636 672991813 672991813 30419136 144589700 144589700 195286644 195286644 39397008 39397008 556634624 715823568 715823568 63083892 65717456 294179154 294179154 407771168 407771168 290202468 280428578 434398432 434398432 725877948 725877948 456024127 870434440 870434440 624265598 1070672112 1070672112 845680499 851380030 851380030 760636576 1056957983 1056957983 595498728 213673892 155954725 683462665 752167629 752167629 218651308 205613184 17074240 102501968 102501968 177741688 177741688 144838980 628871208 628871208 172669968 172669968 139003104 139003104 65794528 97479744 118318320 118318320 42008768 42008768 114559104 187172376 195035508 195035508 119157120 125380536 125380536 109252704 128168320 128168320 107440172 267596796 267596796 233187856 151729216 151729216 220635404 220635404 216498152 216498152 206016840 184228388 184228388 352718548 524173182 524173182 499294676 499294676 387925460 1023812490 1023812490 702198931 702198931 542669849 40758672 316466064 316466064 65605904 65605904 61212176 176770364 659401448 826482146 826482146 296851710 541804836 564668097 564668097 44369569 145046272 702419366 964366983 964366983 877187894 369885338 118490506 337235024 377807124 389580672 533395062 533395062 471723534 413652562 442652582 453937850 453937850 440757332 415945926 535957724 535957724 974456040 1071460095 1071460095 243355718 807431744 807431744 116281323 1043423944 1043423944 875994986 875994986 692195493 1021247516 1021247516 478713929 586670879 592405044 592405044 780128594 780128594 492467007 235904934 820056092 820056092 974731023 974731023 982461672 982461672 948048645 954494712 954494712 357761912 471654598 471654598 222329960 367794202 367794202 278956330 278956330 274265216 269693442 280569274 280569274 119546144 109761624 116561560 250218148 250218148 240392576 262279548 262279548 178927040 547622824 586687212 586687212 383650995 266604734 1048773956 1048773956 734527491 734527491 407651712 407651712 208143756 1057096993 1057096993 912789896 941752748 941752748 663749054 661161518 340651749 813879363 1072785899 1072785899 830653106 825789825 956354065 956354065 704670019 800131846 800131846 304092701 940217856 940217856 768512304 365426922 487571658 487571658 409975176 371532310 371532310 432809174 432809174 740671802 990193719 990193719 990193719 460569857 655070754 655070754 417696260 417696260 351763394 351763394 351347658 135410126 863308070 863308070 709960341 799839420 799839420 415540718 1023723788 1023723788 507291077 689098756 689098756 553897984 553721889 1280000 81992040 81992040 143094416 171176532 203121456 203121456 442868834 445844932 445844932 429126246 433845990 433845990 351573894 338763850 343933418 360849994 360849994 293061592 392220890 392220890 272696298 877691715 877691715 606184130 656634169 656634169 591133746 1030294693 1030294693 985317524 985317524 1046473579 1046473579 713399719 866261937 866261937 995808417 995808417 1046627999 1046627999 878633487 810524323 724574086 257360550 123843504 1049088 16777728 16990336 16990336 977699970 993051935 993051935 894168010 894168010 649017267 543236481 171982940 177764956 177764956 169860108 115220184 193666140 193666140 244958892 244958892 237408788 206375228 190054664 75088904 151418276 184854784 184854784 166539648 166539648 93113448 111065688 655214761 655214761 305448104 562628371 562628371 54192560 54192560 92400144 551289432 551289432 548470864 548470864 186262566 149240020 196818804 196818804 561643646 1057466291 1057466291 1034361376 1034361376 778048701 536870913 121899193 157419028 157419028 227541024 227541024 120400676 120400676 137627688 272353584 272353584 406000544 406000544 454470634 454470634 462405330 462405330 47383056 55648944 428414864 428414864 174537108 176562624 176562624 41683216 243011484 250210880 471402496 471402496 162714272 451115410 451115410 285408064 447696514 507736174 507736174 214174728 524423612 524423612 459589522 405605730 442778806 752736845 752736845 410292134 993795735 993795735 572746108 763811949 763811949 262517009 762460787 800457616 800457616 721894415 539895816 454619104 461259022 461259022 103456864 46091280 805479971 965187893 965187893 428131181 662812719 662812719 891720970 891720970 933681035 933681035 979513816 979513816 852178175 807477507 807477507 941621511 941621511 537920257 823267875 1063134114 1063134114 901105399 368839110 69779846 204390704 712790045 712790045 965635092 965635092 212622420 621835840 629929065 629929065 690799460 723361829 723361829 564743456 145639792 65468368 58298800 18375456 18375456 248620773 248620773 450752214 450752214 800916664 806017498 806017498 753523417 753523417 956717989 956717989 611894718 1024133812 1024133812 752889678 539413024 478088031 553847872 772482681 772482681 619525088 345246508 458389014 458389014 412616956 412616956 212672960 418457278 418457278 511207398 511207398 351435460 876173707 876173707 838068066 838068066 449462373 449462373 853551924 853551924 74888617 685310436 685310436 459545590 713050444 713050444 465738121 421663014 774404936 774404936 851278574 1020184349 1020184349 225548165 137572612 277192512 277192512 339854858 354211618 354211618 287731784 127805536 27001360 548443177 548443177 118015552 556356273 556356273 192223764 453663872 828090709 828090709 955352406 955352406 600957681 328262224 679929947 679929947 540342464 918265599 918265599 1060180337 1060180337 790370056 790370056 109748496 109748496 292322338 292322338 91068610 434389898 845203668 845203668 736133539 731989119 512257277 656471416 656471416 802780012 802780012 711827648 704765973 287331874 848844000 861065907 861065907 839210224 839210224 292037256 91090344 280783136 351538122 373244034 373244034 342269720 210639116 672333509 672333509 149614980 593503013 593503013 541338144 541338144 45730436 45730436 606357955 606357955 636021754 636021754 577297545 829762467 829762467 811937560 335585800 335585800 276861194 904441896 935791801 935791801 914865916 952799872 952799872 670410893 790810941 790810941 916954588 916954588 944019850 946215303 946215303 743484812 298156648 341174922 770801090 770801090 572132053 602821505 689854530 984780019 984780019 734151269 734151269 559729434 727686321 727686321 564197733 666438312 666438312 393896033 253436832 72614144 118054968 545718561 545718561 86132872 313209405 694330759 978442830 978442830 1013714319 1013714319 862505020 671844391 671844391 529304031 958826931 993315639 993315639 1034493142 1034493142 961009670 961009670 474110009 680796759 680796759 582224131 582224131 315559379 706746064 706746064 538709012 272696450 272770176 272770176 140436954 405989780 405989780 374690192 316997968 316997968 427862096 453371958 453371958 126140534 286656562 559155242 722536704 722536704 468064758 468064758 371341438 457517238 503397772 503397772 474556600 482617706 482617706 369559656 293939298 294984226 294984226 57081586 118239520 118239520 19608864 19608864 369713370 369713370 99737704 332813250 332813250 47573712 22019232 275058016 317872160 317872160 317328960 317328960 312219280 38946864 53871408 360403344 420640264 420640264 545003763 802967039 1040811596 1040811596 551972192 305564039 539582144 539582144 951572612 951572612 674427221 217102904 908969776 908969776 286742296 683268150 683268150 625473705 664386209 664386209 252461327 750833676 750833676 612893907 537151552 778666452 778666452 835243170 835243170 1005163558 1005163558 921688222 859996273 975750553 975750553 595978353 870326585 949036381 950624360 1070719743 1070719743 943309249 654934537 654844951 1021778922 1021778922 985371228 985371228 850283212 231413952 202052206 294654986 335753226 404959244 404959244 275361578 236958232 215991582 671309844 671309844 504099368 201359424 209764428 209764428 223296684 223296684 193035088 193035088 553753627 553753627 403668068 495330128 719130485 719130485 255736461 607789076 607789076 204213516 204213516 252891708 508581664 598056963 598056963 805398897 805398897 179407616 179407616 121639176 121639176 201722040 201722040 179571476 179571476 136925964 610816417 610816417 120190241 33759264 424954343 739426849 849740656 849740656 828811425 1017516057 1017516057 959515431 1003717204 1056989302 1056989302 533410804 508109966 452141114 322122546 308027264 305043442 305043442 97075272 92416160 42282048 29239696 29239696 5671584 4330624 48557952 57655184 57655184 60558960 60558960 99590116 99590116 78254936 237203608 819158528 819158528 70893138 571646728 571646728 571134993 388014354 388014354 304169274 304169274 587029322 587029322 500743872 500743872 938271750 938271750 464444703 168819732 167108400 37972912 327307545 899727723 899727723 882610539 882452043 939831146 939831146 749060352 749060352 1046614467 1063972938 1063972938 834667426 834667426 1009779471 1009779471 667041910 137364688 154723966 504583200 504583200 3595008 341969856 345381450 718003715 718003715 989006856 1056915423 1056915423 748181462 665400569 959317054 959317054 94248552 121899996 260837744 473565336 473565336 115752090 744747428 1045482425 1045482425 1026943023 100994920 327461580 327461580 617747008 617747008 114169866 553753248 553753248 982196755 982196755 438891958 438891958 192563332 531968588 531968588 511906368 601855201 601855201 516568172 516568172 284189376 977604380 977604380 991836587 991836587 443497878 138878988 505354129 505354129 916456210 929197043 929197043 999942292 999942292 87225840 2171136 2171136 2162944 33622288 975471062 975471062 976088166 976088166 817905986 817905986 246123376 156725996 227314260 259907716 259907716 545349633 545349633 620808544 620808544 547651624 539036432 85224032 22619648 68225280 68225280 76113088 76113088 28174664 11043328 12109632 539308864 607809889 607809889 813793579 836334583 998847060 998847060 864777078 438040086 1058252646 1058252646 679477317 679477317 677380288 332137645 315622094 351276952 864026674 864026674 625739905 70255496 106517428 477016577 642387514 642387514 319571472 341084930 341084930 276072680 339042432 339042432 33300864 33300864 12592448 15275008 23545472 23545472 21619872 39022752 39397008 55935504 55935504 33650384 33650384 25298944 36450724 294179154 294179154 407771168 407771168 290202468 411972416 411972416 370368794 269230082 1008821804 1008821804 825617187 770229741 770229741 1070672112 1070672112 935010889 909260587 848376088 730101368 730101368 126326527 213673892 213673892 155954725 683462665 752167629 752167629 558141001 558141001 180128012 180128012 136577792 75766088 75766088 204505156 204505156 645103512 995276934 995276934 221139568 533144934 533144934 97479744 363758670 363758670 164026596 282611538 282611538 205694464 195035508 195035508 39929168 39929168 64172560 94645344 94645344 53481776 53481776 31457760 180425248 180425248 42079412 52041856 52041856 28454980 154215204 206016840 817535808 817535808 184228388 170732820 159428048 30466592 30466592 775726576 775726576 1041787057 1041787057 1039612911 833312658 596676998 853202643 853202643 852258880 291748160 277049728 31721952 176770364 659401448 826482146 826482146 296851710 541804836 564668097 564668097 392828922 354554920 702419366 964366983 964366983 877187894 371056912 121130728 349368880 377807124 389580672 533395062 533395062 471723534 272107266 272107266 225090180 440757332 440757332 415945926 80604360 374838096 374838096 418742543 418742543 264810387 273064002 951602372 951602372 1043423944 1043423944 676447118 692195493 692195493 1021247516 1021247516 298957104 298957104 446820738 446820738 780128594 780128594 492467007 790889855 790889855 840697549 957299751 957299751 725031144 725031144 389742744 228730952 228730952 75661668 214535200 222329960 222329960 223345664 223345664 205775880 274265216 274265216 356206336 356206336 119546144 119546144 71641224 313600664 373388184 373388184 374815312 378254682 378254682 341565570 884239906 884239906 852828817 622273385 252183612 1048773956 1048773956 734527491 734527491 357580857 357580857 305788986 826925843 826925843 340510388 340510388 663749054 663749054 661161518 340651749 1022152143 1072785899 1072785899 830653106 923669434 956354065 956354065 704670019 800131846 800131846 304092701 940217856 940217856 768512304 841353425 841353425 816229646 816229646 755292222 371532310 980762639 980762639 740671802 990193719 990193719 990193719 1010164768 1024533039 1024533039 556073987 556073987 793459616 1004759225 1004759225 1002439857 1002439857 861676702 166003980 782600444 782600444 661540049 656525924 656525924 272967810 272967810 667621628 928853739 928853739 336857837 207754124 211886472 211886472 10486080 203121456 203121456 176601052 140530240 150131652 150131652 9601412 20971520 20971680 92340256 96542952 96542952 66101760 293061592 392220890 392220890 828580178 828580178 816845480 374888027 101709320 651564232 651564232 614588745 446599134 985317524 985317524 1046473579 1046473579 411041862 411041862 442683798 707288468 707288468 694144145 694144145 121064373 375684016 375684016 257360550 571538093 692060821 692060821 910639657 910639657 672194870 993051935 993051935 830114583 808898877 1064428479 1064428479 691124803 771756177 771756177 138481929 673789572 676405893 759178948 759178948 800975312 800975312 788328172 75088904 75088904 117884184 131408037 801428093 801428093 759660753 661726137 661726137 655214761 655214761 305448104 630705240 630705240 911778057 911778057 857003680 857003680 551289432 548470864 838934547 899628657 899628657 939466130 939466130 918677389 918677389 894767812 1034361376 1034361376 870371643 790941988 790941988 707530005 705304832 61343088 52428800 353895978 490219278 490219278 272353584 272353584 406000544 406000544 454470634 454470634 462405330 462405330 47383056 55648944 428414864 428414864 304404944 304404944 295479476 295479476 243011484 283673168 471402496 471402496 408132074 515985684 515985684 383779290 806613507 894389705 1012850158 1012850158 681088325 681088325 754405484 1038804033 1038804033 891856467 752736845 472777517 993795735 993795735 965629232 763811949 798842180 798842180 762460787 800457616 800457616 721894415 539895816 454619104 454619104 529230856 529230856 499414062 805479971 965187893 965187893 444652912 662812719 662812719 891720970 891720970 933681035 933681035 604631888 453419468 214151108 214151108 205256460 203872524 203872524 295562318 295562318 294465122 522765630 522765630 460653652 310665870 97089706 712790045 712790045 965635092 965635092 236456932 586648404 588080561 588080561 690799460 723361829 723361829 564743456 159045540 151132448 58298800 18375456 26247824 180429012 229909356 229909356 246516216 800916664 800916664 744148168 744148168 30458592 480416928 556410926 725221753 1024133812 1024133812 752889678 449249400 449249400 553847872 772482681 772482681 619525088 42445056 73741108 74763144 137973132 137973132 81626568 418457278 418457278 511207398 511207398 135691600 249770460 249770460 838068066 993725090 993725090 437532439 421528230 155993392 56791604 14420928 459545590 459545590 713050444 713050444 465738121 421663014 142397316 560006716 560006716 923280758 923280758 615928714 969594087 969594087 819890724 2901376 4317312 22483328 104079912 104079912 38251040 117888368 117888368 60948536 152699072 184612524 184612524 208154872 208154872 143254596 558417010 851443923 851443923 647012601 285384706 285384706 1020746404 1020746404 894571179 469488404 510841758 510841758 504893666 358192568 358192568 322978712 614849185 614849185 904168361 904168361 845203668 736133539 731989119 512257277 1055744213 1055744213 864149619 711827648 711827648 832829056 832829056 848844000 861065907 861065907 323131123 292037256 292037256 91090344 280783136 351538122 373244034 373244034 342269720 7751744 672333509 672333509 149614980 593503013 593503013 541338144 541338144 62134832 62134832 606357955 606357955 636021754 636021754 577297545 829762467 829762467 811937560 139534980 276861194 276861194 904441896 935791801 935791801 914865916 952799872 952799872 670410893 790810941 790810941 910546242 913519387 913519387 756636043 934316472 934316472 285395140 474132682 485696100 679694632 738461709 774810029 774810029 984780019 984780019 729041143 480285637 559729434 966392000 966392000 458652327 562141114 562141114 393896033 199483576 48268688 595646688 595646688 122034528 854030650 854030650 376439706 376439706 993799964 993799964 680229967 680229967 692151454 692151454 567561451 958826931 993315639 993315639 1034493142 1034493142 573306129 357590949 911637446 911637446 788546167 683547927 683547927 698471654 835764963 835764963 547026514 272696450 272770176 272770176 14105280 14105280 374690192 374690192 316997968 316997968 226765532 283527454 335287546 335287546 1006259449 1006259449 889457312 571683345 642496795 642496795 644595903 778778013 996209706 996209706 474556600 482617706 482617706 369559656 293939298 294984226 306878512 306878512 118239520 118239520 43974568 291182784 291182784 84729762 67182600 134374256 263377788 263377788 136050180 440133188 440133188 155366610 19923744 2146848 2235808 291330210 291330210 360403344 360403344 270532610 545003763 802967039 1040811596 1040811596 551972192 557616512 557616512 792422427 792422427 780264239 674427221 595974595 1006969265 1006969265 790650896 790650896 548225473 625473705 664386209 664386209 378160259 378160259 281859300 281859300 973527063 973527063 778666452 709603985 803585385 1005163558 1005163558 921688222 674338452 970468909 970468909 792996921 870326585 949036381 950624360 1070719743 1070719743 943309249 654934537 654844951 687925824 965602407 965602407 334010704 231413952 231413952 197335240 304582796 304582796 280497962 280497962 275361578 236958232 230530836 848305678 848305678 512983165 421566806 421566806 329031646 502070990 502070990 306049886 745615074 745615074 539637328 830985373 830985373 503390238 783038608 783038608 753612237 734733477 813445351 813445351 586023412 586023412 1000755238 1000755238 326421656 326421656 274857226 179407616 151394348 121639176 354816040 354816040 352897024 69902336 69902336 610816417 610816417 816447832 816447832 226298528 226298528 849740656 849740656 1025615112 1025615112 902436075 935920869 935920869 1056989302 1056989302 533410804 508109966 452141114 322122546 94713033 323230891 323230891 290829219 538604417 553073601 823815393 824870147 824870147 285627233 285627233 294385441 296182273 296182273 60558960 52166720 3410688 1310976 237203608 283180052 283180052 70893138 571646728 571646728 891298315 891298315 388014354 340487250 574978344 574978344 853799379 853799379 338253888 759774691 759774691 612795746 917164685 917164685 651374699 711086352 711086352 682281989 686217669 686217669 739151136 739151136 677660736 706773405 1046614467 1063972938 1063972938 1048821868 1048821868 1009779471 1009779471 667041910 412790816 154723966 509970897 1015144527 1020004802 1020004802 204472320 949459397 949459397 661612890 661612890 748181462 748181462 687870213 959317054 959317054 55100592 57464496 407641704 473565336 473565336 465197582 744747428 1045482425 1045482425 1026943023 665445753 455689306 427893875 617747008 617747008 560989089 673456745 673456745 98522665 143005764 143005764 192563332 192563332 10608960 251950268 251950268 601855201 601855201 516568172 516568172 199599228 977604380 977604380 991836587 991836587 443497878 272637952 272765058 272765058 272765058 117707754 77859416 77859416 188096532 188096532 165870388 162550276 440738144 440738144 365429220 365429220 228589646 206046348 208045856 255843088 255843088 99406880 99406880 314066838 704726736 729874711 901849411 901849411 167780671 539036432 539036432 125612016 32506848 285009314 375491464 375491464 389554442 389554442 389959952 389959952 805909538 805909538 311230489 290605480 290605480 998847060 998847060 596182433 145883137 682758981 682758981 679477317 679477317 1067452448 1067452448 1050160716 823995499 548355393 548355393 814614119 814614119 677321034 862075923 862075923 642387514 538968321 653536594 987759317 987759317 803212170 86481856 103674340 191153812 191153812 171526964 61898532 61898532 27711840 62054496 62054496 55935504 55935504 117719784 117719784 77203480 149285316 149285316 145081420 470434032 470434032 123607762 411972416 411972416 95953920 839386996 1008821804 1008821804 825617187 770229741 770229741 485043631 935010889 935010889 909260587 995429096 995429096 650070116 650070116 646227584 72141102 99959752 212970336 212970336 201400332 558141001 558141001 238567748 238567748 136577792 167772180 236982276 236982276 204505156 699873588 995276934 995276934 669268456 669268456 533144934 235803736 403660110 403660110 745196700 818258259 818258259 541523972 341443270 142752852 329263606 329263606 46346448 339090986 339090986 111156880 111156880 143226244 322288549 322288549 428418150 428418150 418199575 418199575 1052256 0 817535808 986950666 986950666 624317047 624317047 619229833 619229833 775726576 775726576 1041787057 1041787057 1039612911 839958531 839958531 853202643 967448176 967448176 291748160 277049728 31721952 49044272 78882730 286051010 286051010 112105424 376133466 376133466 392828922 392828922 354554920 122819256 67776808 76586288 371056912 371056912 121130728 349368880 349368880 337723786 73408546 0 207278478 272107266 272107266 225090180 329544722 533620838 533620838 524601534 524601534 439133152 418742543 418742543 299893218 203998476 951602372 951602372 805954072 892490602 892490602 93354283 968161836 968161836 752701477 752701477 558920192 673528652 673528652 509712206 509712206 490385424 790889855 790889855 840697549 957299751 957299751 725031144 725031144 389742744 331343424 228730952 185985480 340287606 340287606 230700264 293757082 293757082 97763458 97763458 80748754 356206336 356206336 95983138 13688008 71641224 313600664 373388184 373388184 374815312 378254682 378254682 341565570 884239906 884239906 882862431 882862431 679662716 599372117 580019792 78127724 822607947 822607947 357580857 305788986 826925843 826925843 75038890 273364098 273364098 299818304 299818304 339920645 1022152143 1022152143 265428123 104961743 923669434 923669434 154811831 371538306 932532224 932532224 295420011 287128064 128271360 763848081 841353425 841353425 816229646 816229646 755292222 174697000 980762639 980762639 235314239 862719411 862719411 862719411 1010164768 1024533039 1024533039 956720485 956720485 793459616 1004759225 1004759225 1023359881 1023359881 861676702 236388674 782600444 782600444 901866491 901866491 835661031 835661031 1020588759 1020588759 980757447 980757447 336857837 545339780 742490504 742490504 146107332 242600652 242600652 278012114 278012114 149562964 436419844 436419844 304874874 250348014 501746854 501746854 272925416 272925416 393416890 393416890 66270192 828580178 828580178 643917689 374888027 850679625 850679625 651564232 614588745 446599134 615265544 615265544 193040484 402917440 411041862 411041862 442683798 442683798 268599700 51040388 572873096 576742671 908498972 908498972 525508134 571538093 692060821 692060821 910639657 910639657 822905476 743315072 743315072 543549825 808898877 1064428479 1064428479 691124803 771756177 771756177 138481929 673789572 676405893 759178948 759178948 800975312 800975312 788328172 145559012 145559012 147447812 147447812 801428093 801428093 759660753 661726137 661726137 121636921 120924984 111071714 630705240 630705240 911778057 911778057 857003680 857003680 329107634 329107634 838934547 899628657 939401211 939466130 939466130 918677389 918677389 894767812 746253317 870371643 870371643 790941988 790941988 707530005 705304832 352456746 243291136 353895978 490219278 490219278 252781568 314853632 314853632 283380162 9440002 442640644 442640644 430197698 177334390 46313668 135930960 169765892 304404944 304404944 295479476 295479476 152342306 283673168 344213314 408132074 408132074 515985684 515985684 383779290 806613507 894389705 1012850158 1012850158 681088325 681088325 754405484 1038804033 1038804033 891856467 765073080 765073080 123344493 965629232 965629232 522328930 798842180 798842180 739715681 415141452 186654988 381947724 444073878 444073878 430226952 529230856 529230856 499414062 436722740 453663826 822233348 822233348 444652912 239304756 239092000 257999292 696439120 696439120 453419468 453419468 554697665 982875003 982875003 632742719 632742719 576457452 791226173 1061783038 1061783038 522765630 460653652 310665870 195695988 340737122 357489834 362606656 575721461 575721461 236456932 190978480 537319425 597059680 597059680 699345857 699345857 585617268 151132448 51313952 8212528 59303844 249586164 249586164 210916196 233998672 233998672 83122024 744148168 744148168 30458592 480416928 556410926 725221753 725221753 715333803 715333803 670775289 459943767 645151464 645151464 227487517 146936516 319097992 319097992 287644094 331355374 331355374 157286820 276039178 276039178 261819468 261819468 248924088 249770460 1024263200 1024263200 993725090 993725090 437532439 421528230 625884872 625884872 548082241 672931329 672931329 1044279904 1044279904 689123877 689123877 782496093 782496093 914536848 914536848 615256429 615928714 969594087 969594087 819890724 14495424 13767360 82494336 104079912 285409290 285409290 544424209 544424209 45252696 1058259811 1058259811 106062356 208154872 369106968 369106968 740397090 851443923 851443923 794013757 211371968 211371968 1020746404 1020746404 894571179 946017637 1038751215 1038751215 748159074 358192568 358192568 476341084 614849185 614849185 904168361 904168361 713040008 713040008 600140868 600140868 1055744213 1055744213 864149619 570732867 570732867 832829056 844998818 844998818 625377419 108085955 108077976 89203368 89203368 84555392 52847376 52847376 13503376 71055488 143865684 143865684 212968964 212968964 66897840 66897840 164626532 711567684 711567684 591358769 62134832 52238704 52238704 915276346 915276346 564010593 465344530 465344530 139534980 234996424 234996424 228092428 567564496 676207749 676207749 895267876 1070388355 1070388355 810208511 810208511 177609300 139266824 709022593 709022593 677511316 934316472 934316472 920359918 926859135 981554984 981554984 738461709 774810029 774810029 431414118 687882240 687882240 480285637 571677216 966392000 966392000 938847083 894518643 894518643 199483576 199483576 126261536 595646688 595646688 669128993 854030650 854030650 809519177 809519177 993799964 993799964 939108825 452897087 692151454 692151454 567561451 135698053 41943120 364389248 364389248 347653007 1019462520 1019462520 927990459 911637446 788546167 683547927 683547927 698471654 835764963 835764963 547026514 40848608 76023112 76023112 142119556 462559284 462559284 447157062 404457716 404457716 435202188 435202188 387735270 335287546 1006259449 1006259449 889457312 1048669382 1048669382 864151632 864151632 778778013 996209706 996209706 86050816 120595496 436274016 436274016 368389798 41748978 469347704 517502176 517502176 504608454 504608454 360632544 360632544 305444760 225315750 134374256 437120022 437120022 136050180 440133188 440133188 334848482 329002000 329002000 282381984 291330210 291330210 307363968 307363968 270532610 278952708 478152724 675649923 675649923 612870154 607599298 607599298 792422427 1016480226 1016480226 345145171 959272862 1006969265 1006969265 790650896 790650896 548225473 609329793 609329793 609297033 381977872 381977872 751225442 751225442 973527063 973527063 709603985 709603985 648357267 767254716 767254716 420542417 674338452 970468909 970468909 878937950 792996921 623666321 181583965 181583965 575690135 575690135 409089155 959634366 959634366 588943403 836001207 836001207 554455194 214315172 34383112 324300984 324300984 257655450 188637780 188637780 168502540 251138882 848305678 848305678 576394535 963315120 963315120 836318439 831132771 677971043 675950725 894513092 894513092 563820547 830985373 830985373 446873753 783038608 783038608 753612237 734733477 813445351 813445351 613424328 613424328 1000755238 1000755238 326421656 326421656 318975392 323170490 323170490 151175920 354816040 354816040 352897024 67364864 67364864 15607264 115937344 816447832 834150897 834150897 50409747 304165128 390377880 1025615112 1025615112 391049637 235164544 418720710 510715992 510715992 0 42468432 42468432 42468432 94713033 323230891 323230891 290829219 538604417 553073601 823815393 824870147 824870147 285627233 285627233 294385441 296182273 296182273 557679266 658641081 658641081 88479912 268966066 830756224 830756224 878988474 878988474 337327626 891298315 891298315 797245662 830769403 830769403 574978344 853799379 853799379 290075076 759774691 759774691 612795746 917164685 989109586 989109586 941670017 941670017 682281989 686217669 686217669 739151136 739151136 677660736 338071813 406896774 406896774 798122143 1048821868 1048821868 1020297879 499352175 805548360 805548360 39863744 509970897 1015144527 1020004802 1020004802 44953670 949459397 949459397 916554434 916554434 644998041 586933466 687870213 959058182 959058182 211157100 211157100 407641704 407641704 177249560 465197582 465197582 424266978 1010598643 1010598643 665445753 455689306 427893875 573906850 573906850 560989089 673456745 673456745 98522665 143005764 159417096 512770112 512770112 490442588 490442588 957552503 957552503 206525212 206525212 601102737 601102737 126031488 648639640 648639640 1019419733 1019419733 272637952 272765058 272765058 919935072 927240562 927240562 798788143 798788143 503922423 599616886 599616886 633423093 633423093 573018264 811604229 1071661477 1071661477 885031107 551829504 285657856 99406880 99406880 314066838 704726736 729874711 901849411 901849411 304876818 304876818 295176922 125612016 62914768 285009314 375491464 375491464 389554442 389554442 389959952 389959952 805909538 805909538 565784683 319427266 308807058 851518785 851518785 596182433 21038592 160958052 160958052 159909472 577832656 1067452448 1067452448 1050160716 823995499 548355393 605882400 814614119 814614119 677321034 862075923 862075923 875351307 875351307 653536594 987759317 987759317 959562244 351478120 103674340 191153812 191153812 171526964 61898532 61898532 27711840 62054496 62054496 51488768 51694128 117719784 237126330 237126330 149285316 358203858 358203858 470434032 470434032 446573109 1023420453 1023420453 880553869 880553869 839386996 905496555 905496555 523513459 523513459 491414391 491414391 905257340 905257340 995429096 995429096 650070116 650070116 646227584 484599372 484599372 16333160 7512224 204220800 204220800 211813420 238567748 238567748 227265152 167772180 236982276 236982276 136715012 699873588 699873588 547437984 669268456 669268456 107022789 235803736 403660110 403660110 745196700 818258259 818258259 541523972 341443270 142752852 329263606 329263606 46346448 339090986 339090986 111156880 111156880 143226244 322288549 322288549 428418150 428418150 1048585400 1048585400 293874837 381682192 743974071 986950666 986950666 624317047 759446029 759446029 619229833 440420762 193206630 314726406 314726406 838860944 839958531 839958531 722868789 967448176 967448176 28363426 19386528 15414720 15414720 73240640 73240640 5977472 5977472 0 355218176 355218176 354369066 922256763 922256763 96909584 216599819 745868939 745868939 845261641 845261641 564916281 564916281 397908586 882976153 882976153 154887656 121161528 219779810 329544722 533620838 533620838 524601534 524601534 439133152 128290554 299893218 415514912 421527782 421527782 72417576 805954072 892490602 892490602 93354283 968161836 968161836 752701477 752701477 688123941 673528652 673528652 522974526 814951340 814951340 447185034 478672974 478672974 476472128 206574156 206574156 218956500 331343424 331343424 185985480 185985480 340287606 340287606 230700264 293757082 293757082 368454016 368454016 365680368 365680368 132232640 80019248 80019248 38797968 38920192 38920192 45252864 45252864 43176528 47449928 78905672 78905672 649143129 882862431 882862431 967450945 967450945 956392806 746783908 822607947 822607947 619757833 810656046 878755366 878755366 396637332 396637332 862292320 862292320 754369986 189792948 680413510 680413510 311068064 666586998 666586998 785319081 785319081 785124573 932532224 932532224 541598721 680303808 680303808 763848081 763848081 347073672 914851968 914851968 375546203 285003714 407159774 407159774 373867674 306184338 306184338 395906800 904214696 962076847 962076847 956720485 956720485 762246125 675794250 878753098 1023359881 1023359881 346767755 567753229 584260206 706851553 1056981334 1056981334 835661031 835661031 1020588759 1020588759 980757447 980757447 203830151 545339780 742490504 742490504 146107332 242600652 242600652 278012114 278012114 149562964 436419844 436419844 304874874 250348014 501746854 501746854 272925416 272925416 393416890 393416890 278607426 615309962 615309962 820948496 820948496 850679625 850679625 616205139 642254560 642254560 628936617 615265544 193040484 611328880 644470856 644470856 191474064 191474064 51040388 68100112 572873096 576742671 908498972 908498972 525508134 525508134 410567840 410567840 326899494 822905476 822905476 743315072 743315072 442587930 875193874 875193874 576458385 37942800 682527056 682527056 143531584 143531584 50595888 257689760 257689760 219942444 179044708 179044708 219416636 219416636 147447812 147447812 134341828 122175728 625658032 625658032 616771785 121504696 107744664 25614432 25614432 104981024 104981024 85058088 110729786 110729786 329107634 361047088 361249146 813439876 939401211 939401211 341049932 473369022 523638918 523638918 527630984 527630984 488949856 159520450 23668128 159524334 352456746 352456746 243291136 221350972 438567194 438567194 110665746 314853632 314853632 283380162 9440002 442640644 442640644 430197698 325896080 320476722 320476722 179897014 187721622 187721622 147713120 55641098 438879510 438879510 158431622 361798436 361798436 297808022 297808022 490840724 490840724 165058778 554994688 761592964 761592964 219279621 203349516 152882724 469304894 469304894 765073080 765073080 1072650127 1072650127 773720384 522328930 573899598 1052051744 1052051744 843360582 540336528 659245376 659245376 444073878 505487646 505487646 453428298 453428298 553700421 966819959 966819959 822233348 797401201 797401201 983931474 983931474 870766597 870766597 975198370 975198370 554697665 982875003 982875003 643072204 792496457 792496457 791226173 1061783038 1061783038 475285646 421906792 195695988 195695988 153499544 183587444 757631345 757631345 631250321 235313720 235313720 537319425 597059680 597059680 699345857 801905693 801905693 631807253 631807253 106843440 59303844 249586164 249586164 210916196 233998672 642216376 642216376 741859656 826346341 826346341 907333235 907333235 647350361 689380386 715333803 838737891 838737891 771689369 751710468 645151464 784339090 784339090 319097992 319097992 287644094 331355374 331355374 157286820 276039178 276039178 261819468 261819468 291727586 291727586 1024263200 1024263200 853677242 264314217 334641270 334641270 625884872 625884872 548082241 672931329 672931329 1044279904 1044279904 689123877 1006841932 1006841932 782496093 914536848 914536848 505814721 276719364 72561288 72561288 32219656 71541384 74641992 82494336 82494336 285409290 285409290 544424209 544424209 98994408 1058259811 1058259811 454386812 454386812 369106968 369106968 740397090 757256493 794013757 794013757 541343780 1017506127 1017506127 920963547 920963547 946017637 1038751215 1038751215 748159074 283394376 817926241 817926241 476341084 132194808 872448042 872448042 713040008 713040008 600140868 600140868 1008749904 1008749904 312609680 565318816 565318816 600056897 844998818 844998818 625377419 108085955 301992450 621883963 621883963 91826088 543376897 543376897 301071202 373863808 373863808 143865684 212968964 595423985 595423985 584238624 571844928 711567684 711567684 591358769 14031552 613321187 613321187 915276346 915276346 1045509450 1045509450 897622045 897622045 234996424 1011904104 1011904104 702357576 676207749 676207749 193855729 1070388355 1070388355 810208511 810208511 639144584 533483375 709022593 709022593 677511316 718989701 776334883 947146162 947146162 981554984 981554984 964929904 914807140 138769378 431414118 828773188 828773188 571813023 571677216 571677216 938847083 938847083 894518643 894518643 311340957 217257356 126261536 597346168 597346168 669128993 669128993 345117258 809519177 809519177 621150378 939108825 939108825 312137298 312137298 545308737 545308737 593759137 593759137 956414212 956414212 755663784 1019462520 1019462520 927990459 261910263 173829284 173829284 141483396 537328768 537328768 273596160 273596160 10503432 76023112 76023112 142119556 462559284 462559284 447157062 404457716 404457716 500506682 500506682 458176884 458176884 652099650 652099650 418260195 1048669382 1048669382 864151632 864151632 642255193 370008194 370008194 86050816 378014562 436274016 436274016 473961060 475269774 475269774 517502176 517502176 504608454 504608454 360632544 360632544 305444760 294332576 67474762 437120022 437120022 147459392 145628036 334848482 334848482 329002000 329002000 282381984 53860608 12739616 119277752 268566288 268566288 815823617 815823617 808606475 675649923 612870154 607599298 1020322208 1020322208 1016480226 1016480226 345145171 959272862 959272862 292119958 352354312 957392930 957392930 750357235 609329793 609297033 381977872 381977872 751225442 751225442 80489024 301998236 1017512620 1017512620 242588952 169733652 169733652 169266116 169266116 36576528 878937950 878937950 549252037 1006736966 1006736966 852742252 873595544 873595544 860930739 959634366 959634366 767298165 836001207 836001207 554455194 705274011 994392503 994392503 490901791 653518803 889398270 889398270 750700565 693285534 417994182 576394535 576394535 963315120 963315120 836318439 831132771 677971043 675950725 894513092 894513092 563820547 563820547 317188204 720318872 722768569 722768569 695606181 570481588 202377356 202377356 613424328 613424328 589175537 314221697 305259282 165823358 318975392 419893952 419893952 261372646 181539540 181539540 55449700 67364864 67364864 71475648 627135496 627135496 834150897 1041571200 1041571200 853546910 546381899 705116181 705116181 379775311 235164544 418720710 510715992 520631460 520631460 492831150 344130018 344130018 88244840 88244840 14206656 14206656 5276736 5017856 17466784 17466784 23614496 23614496 17302560 277367841 277373057 277373057 557679266 658641081 658641081 88479912 268966066 830756224 830756224 878988474 878988474 984892165 984892165 797245662 797245662 830769403 830769403 633133064 675233541 871960189 878319243 878319243 471982350 577907203 577907203 989109586 989109586 941670017 941670017 411041670 406447878 614187271 823531786 823531786 537270273 537270273 406896774 580002122 761491514 761491514 1020297879 1020297879 499352175 805548360 805548360 267654112 331234130 331234130 960406150 960406150 853227219 312223543 351396810 916554434 916554434 644998041 153649412 153649412 404750470 404750470 290216596 291639714 291639714 519985394 519985394 139499136 147612800 424266978 424266978 856018130 856018130 273584816 320654898 573906850 573906850 268435714 0 856666144 856666144 604592189 469840998 512770112 512770112 490442588 490442588 957552503 957552503 341517918 341517918 601102737 601102737 126031488 648639640 648639640 1019419733 1019419733 213655003 150801032 1128900 919935072 927240562 927240562 798788143 798788143 908185568 908185568 599616886 633423093 633423093 573018264 811604229 1071661477 1071661477 885031107 551829504 285657856 223490952 134849680 1061171248 1061171248 899816665 899816665 371655978 734079188 734079188 635709752 62914768 62914768 46187248 46187248 1098240 8511488 294748704 294748704 118928480 120401208 631360088 631360088 913842969 913842969 912388539 912388539 545945375 298987621 279503028 552603760 552603760 973668694 973668694 555819297 39854257 0 0 605882400 624834565 624834565 504760874 694962871 694962871 875351307 875351307 646982522 646982522 959562244 959562244 351478120 18027040 6410368 2306304 17361536 17361536 25385216 59920496 59920496 42391632 51488768 51694128 51694128 237126330 237126330 129574776 437009232 479407118 479407118 517304050 517304050 1023420453 1023420453 880553869 880553869 673278729 905496555 905496555 523513459 523513459 992773504 992773504 905257340 905257340 515877384 515877384 432231916 432231916 363788224 484599372 484599372 12173352 134529440 204220800 204220800 171868720 124435972 227265152 227265152 84020580 76684296 403838026 403838026 590766120 590766120 246913917 220206552 524748198 524748198 105591960 205729932 341850242 406984962 406984962 39985296 39985296 37888016 163841024 163841024 25165920 25165920 62654048 62654048 54272352 54272352 50866464 50866464 23593648 258048 258048 1048585400 1048585400 293874837 381682192 381682192 350039056 906560536 906560536 759446029 759446029 388157754 841284018 912384411 912384411 753760723 678114693 677971333 709548100 709548100 300384304 320447554 320447554 295088672 12995136 147608928 613796438 613796438 362675163 22707920 363541866 363541866 355218176 354369066 922256763 922256763 96909584 216599819 745868939 745868939 845261641 845261641 564916281 564916281 397908586 882976153 882976153 154887656 329180316 410601030 412576518 413194310 413194310 448848054 448848054 507082646 507082646 659400927 659400927 917416071 1065402495 1065402495 449323914 449323914 520327406 520327406 547436814 1015946753 1015946753 688123941 688123941 360890064 522974526 711082368 814951340 814951340 649225927 657362949 793958405 868449041 868449041 805771696 805771696 268881696 289210402 359709600 359709600 11700840 33595472 33595472 176522384 176522384 368454016 368454016 365680368 365680368 377838728 377838728 295352450 295352450 284428552 330180784 330180784 112443784 112443784 103113664 103113664 78905672 87302190 207186136 294674528 967450945 967450945 956392806 746783908 619234761 619757833 619757833 810656046 878755366 878755366 396637332 396637332 862292320 862292320 754369986 507557177 680413510 680413510 311068064 666586998 666586998 785319081 785319081 785124573 551051297 25374816 541598721 680303808 680303808 545679428 549454017 549454017 914851968 914851968 375546203 285003714 407159774 407159774 406618197 522996087 909953874 909953874 632216450 493187752 493187752 811122819 811122819 635914713 635914713 878753098 878753098 550237377 663095352 663095352 1057292386 1057292386 1056981334 1056981334 202122304 134553600 337920 70786840 70786840 43465360 46346448 246548748 246548748 145271044 15746304 140359680 140359680 314942144 314942144 13723858 6605184 6820072 275188712 275188712 276638338 276638338 269492738 98931690 131100512 131100512 278607426 615309962 872656331 872656331 820948496 812612617 823909675 823909675 642254560 642254560 628936617 655936689 655936689 655639776 644470856 644470856 125469592 89516712 219266712 219266712 170821896 170821896 269568132 470833938 470833938 440480792 440480792 410567840 156897956 156897956 18354820 658432 442587930 442587930 875193874 875193874 576458385 202486120 682527056 682527056 681252268 632079664 632079664 779954836 779954836 549719632 643862992 643862992 219416636 219416636 84253928 94981345 770376033 770376033 637359413 625658032 616771785 655173680 655173680 54081161 597616112 597616112 587282105 614040529 614040529 581659704 815468875 815468875 361249146 754237778 754237778 663765198 341049932 473369022 523638918 523638918 207359628 488975522 488975522 292032548 10885440 42080576 42080576 42078288 35934832 35441200 268780076 286361600 327950402 331263538 331263538 329962866 136631666 270665874 270665874 325896080 478712974 478712974 320476722 179897014 187721622 295528033 566963283 598365577 901067368 901067368 158431622 158431622 152166600 377612704 867746620 867746620 817240896 817240896 659166393 761592964 761592964 219279621 203349516 152882724 889537383 889537383 806406498 755097645 1072650127 1072650127 483916610 483916610 474881166 1052051744 1052051744 843360582 540336528 659245376 659245376 425852484 505487646 505487646 453428298 453428298 553700421 966819959 966819959 715394082 797401201 797401201 983931474 983931474 870766597 956356884 975198370 975198370 470058405 470058405 522570298 643072204 792496457 792496457 201851916 205595776 475285646 475285646 421906792 14197248 74451784 74451784 15805184 757631345 757631345 631250321 235313720 235313720 125043696 235015536 781762904 781762904 801905693 801905693 631807253 631807253 106843440 36547584 182452309 182452309 177482789 1003114262 1003114262 1049136209 1049136209 1021103434 1061773813 1061773813 907333235 647350361 447354383 447354383 838737891 838737891 771689369 751710468 540022032 784339090 784339090 323421412 222298284 222298284 95949216 95949216 85460520 68817064 134425648 173791092 941485575 1046268957 1046268957 312947970 853677242 853677242 724794725 334641270 629017913 629017913 616015708 738098336 738098336 177022868 161294468 177220116 177220116 1006841932 1006841932 479299088 955121834 955121834 505814721 323493376 499171566 499171566 413172136 354468136 354468136 301085218 299529312 93587680 90597760 96754152 98994408 107029328 521214390 521214390 454386812 454386812 887294291 887294291 862760254 862760254 997982724 997982724 541343780 1017506127 1017506127 920963547 920963547 780175502 69206280 205527468 205527468 283394376 817926241 817926241 981467835 981467835 872448042 872448042 705167360 822171880 1040660511 1040660511 1008749904 1008749904 548144131 565318816 565318816 600056897 600056897 929104360 929104360 914432091 914432091 879457576 621883963 369335610 543376897 543376897 301071202 373863808 604009672 604009672 89791440 595423985 595423985 584238624 594316384 594316384 550792432 550792432 25264129 613321187 613321187 607853398 721033173 1045509450 1045509450 897622045 944968409 944968409 1011961448 1011961448 877717300 877717300 280234273 814666017 814666017 46137552 927599618 927599618 639144584 567541894 567541894 293905045 575748336 719463136 724775733 947146162 947146162 705692181 964929904 964929904 914807140 203165196 203165196 828773188 828773188 571813023 523164901 80999112 318894706 885245274 885245274 681579551 311340957 217257356 112235840 597346168 597346168 548014753 894883969 894883969 291770368 621150378 621150378 619559113 619559113 312137298 312137298 545308737 545308737 593759137 593759137 956414212 956414212 1018308357 1018308357 500712914 644904054 1022923303 1022923303 683411377 544626945 297196386 836786402 836786402 548328002 270975328 2098176 15466496 15466496 326128304 326128304 270717186 355730904 355730904 500506682 500506682 458176884 458176884 652099650 652099650 483355904 834752544 834752544 865650928 869387891 869387891 370008194 370008194 69995784 378014562 378014562 302655838 473961060 475269774 475269774 173680248 416831920 416831920 375601482 375601482 340851722 340851722 371770522 440899220 476605272 476605272 281020160 281020160 271582658 176084740 176084740 143311632 46290432 46290432 17400448 11743232 11743232 69320961 815823617 815823617 808606475 620167170 147960256 147960256 1020322208 1020322208 1001750572 1001750572 790679142 471397832 963304085 963304085 887263743 957392930 957392930 750357235 578324377 493620529 654562216 654562216 687942198 687942198 411615419 627619496 1017512620 1017512620 466539818 466539818 170867988 170867988 148992768 44011904 78864720 101896728 101896728 1006736966 1006736966 852742252 873595544 873595544 909926786 909926786 728928236 767298165 767298165 473956494 473956494 705274011 994392503 994392503 490901791 653518803 889398270 889398270 750700565 693285534 174724500 174724500 227750508 227750508 176357888 20972184 19071744 19071744 17981952 17981952 1016417120 1016417120 317188204 431366480 840962998 840962998 722768569 616562505 14841545 134775296 135841284 168822816 237240852 305212436 406589190 406589190 262144272 337384720 419893952 419893952 261372646 214173900 214173900 154358080 154358080 130886085 635298529 790749501 900781938 900781938 1041571200 1041571200 853546910 702417629 705116181 705116181 795608960 979895599 979895599 824706339 709362854 520631460 492831150 344130018 344130018 88244840 88244840 20857730 284166897 593206481 593206481 840254833 841081107 841081107 557221683 586489248 586489248 322623282 322623282 92026792 118174776 386085890 386085890 302129170 772574464 772574464 747312129 747312129 984892165 984892165 474024348 100849692 304105746 304105746 633133064 675233541 871960189 878319243 878319243 471982350 471982350 468187508 207741324 413551782 94681060 207617676 207617676 165508748 165386624 823531786 823531786 537270273 537270273 367051242 616067808 995308029 995308029 811288328 887121847 999502455 999502455 958468317 267654112 331234130 331234130 960406150 960406150 853227219 312223543 351396810 749021388 1028354697 1028354697 750941101 693819373 808564134 808564134 290216596 291639714 291639714 519985394 519985394 139499136 751576070 890315474 890315474 856018130 856018130 775758852 635494829 635494829 809939091 809939091 1003141854 1003141854 856666144 772603984 809946756 815459151 815459151 739246605 739246605 471338266 471338266 341517918 341517918 16128960 70470312 120701756 125274236 125274236 529294396 529294396 342661512 840719626 840719626 466622920 466622920 845314740 845314740 736266616 908185568 908185568 250485768 250485768 104989076 790695944 790695944 254895056 254895056 62515064 75727032 798611089 798611089 198422776 1061171248 1061171248 899816665 899816665 371655978 734079188 734079188 635709752 326110048 34114098 337414690 337414690 374415898 399136426 399136426 384942482 384942482 294843290 631360088 631360088 913842969 913842969 912388539 912388539 545945375 403032630 403178761 552603760 552603760 973668694 973668694 111942241 705768731 705768731 497229915 70121234 172000906 504760874 504760874 671882156 671882156 850068416 850068416 943194712 943194712 231998679 150684116 69292864 106484420 191534516 191534516 173244692 48246948 81168744 81168744 59920496 72614488 94373184 94373184 86507856 88790184 88790184 133411752 437009232 479407118 479407118 517304050 517304050 410845942 576793232 576793232 555813089 381020956 590645796 958253233 958253233 201269379 992773504 992773504 683555586 683555586 515877384 515877384 87139664 154100528 160567908 160567908 239210512 239210512 134529440 134529440 171868720 171868720 237447652 237447652 202281864 190890420 459326720 459326720 403838026 590766120 735130119 735130119 717496946 717496946 524748198 356920778 239675596 341850242 839586054 839586054 805448726 805448726 286589070 241173136 342690162 342690162 125904120 310850658 310850658 105456792 83831744 50866464 273159713 273159713 281141442 281141442 557242627 557242627 243318876 253314588 253314588 185606690 906560536 906560536 622989609 622989609 388157754 841284018 912384411 912384411 753760723 678114693 706351745 709548100 709548100 588466752 579384368 320447554 295088672 61529536 147608928 613796438 613796438 592333072 682668708 682668708 363541866 540180504 600220957 668912348 668912348 141570036 141570036 264192 2048 53504 252741264 316580540 316580540 281491650 344204450 344204450 170517780 329180316 410601030 412576518 413194310 413194310 448848054 448848054 507082646 507082646 659400927 827150607 917416071 1065402495 1065402495 449323914 449323914 520327406 520327406 547436814 1015946753 1015946753 500171756 500171756 667306176 667306176 711082368 711082368 673936128 649225927 657362949 793958405 868449041 868449041 805771696 805771696 268881696 289210402 359709600 359709600 80413384 69219304 33595472 10231808 371721986 371721986 931262675 931262675 916715328 916715328 827061411 827061411 304690849 284428552 557854080 557854080 572401232 572401232 103113664 103113664 667696705 667696705 608280951 440352534 294674528 874693896 874693896 672696684 601539901 626789560 789906477 789906477 476296076 476296076 273948112 672663045 716304229 716304229 744247908 744247908 507557177 316380902 298575385 389367856 397090930 397090930 499215458 551051297 551051297 357440682 541385073 541385073 570804712 570804712 549454017 549454017 618844617 663526832 663526832 269009920 101295104 101295104 406618197 522996087 909953874 909953874 632216450 648553018 688351822 898814571 898814571 982092721 982092721 805886866 805886866 954098950 954098950 663095352 1057292386 1057292386 645302381 552914561 856674263 856674263 874032963 908752927 908752927 842007367 48038604 784020680 784020680 575146456 4572544 201944264 201944264 452708160 452708160 450996050 450996050 14922902 275188712 275188712 276638338 276638338 269492738 98931690 3985920 3985920 125985272 132219000 872656331 872656331 620227715 631772763 823909675 823909675 373833849 121373848 640469472 655936689 655936689 655639776 90673288 67634184 51506056 89516712 219266712 219266712 170821896 172012570 474407310 474407310 275274910 440480792 440480792 438981814 438981814 427709362 55381778 774310672 1007905295 1007905295 609588024 692659105 692659105 202486120 94594037 681252268 681252268 632079664 632079664 779954836 779954836 549719632 643862992 643862992 221064492 114220124 220590720 220590720 770376033 770376033 637359413 604537752 74056840 655173680 655173680 54081161 597616112 597616112 587282105 614040529 614040529 581659704 815468875 815468875 292633602 754237778 754237778 663765198 656936331 736889041 736889041 182531264 182531264 488975522 488975522 487856022 274597720 332533000 380394560 380394560 86294600 277613634 277613634 395059202 395059202 407995236 407995236 329962866 371222248 407682118 407682118 278745494 478712974 478712974 97653884 387519160 387519160 295528033 566963283 598365577 901067368 901067368 136318736 169610772 632294156 632294156 867746620 867746620 817240896 817240896 659166393 776437031 776437031 470336526 470336526 344490052 889537383 889537383 806406498 755097645 626217418 314000402 483916610 483916610 474881166 474881166 472417866 472417866 252003386 302366004 382594266 424943526 475480350 475480350 415367552 415367552 336062578 275739206 424885086 424885086 471211596 515194144 515194144 343179352 738519372 956356884 994892601 994892601 678350223 431202890 522570298 552966594 552966594 202658623 201851916 205595776 205595776 75622400 92303944 92303944 125927468 176283732 238461684 238461684 147770712 160451188 160451188 158505416 125043696 235015536 781762904 781762904 194041897 160173156 160173156 9099300 19162784 60829844 182452309 182452309 177482789 1003114262 1003114262 1049136209 1049136209 1021103434 1061773813 1061773813 723535298 723535298 645237261 770968500 770968500 719323605 890766433 890766433 732579810 732579810 821429729 821429729 813043625 813043625 840044794 840044794 256397084 109364956 220561312 360817350 941485575 1046268957 1046268957 714443516 548724740 724794725 724794725 636981144 636981144 629017913 616015708 738098336 738098336 453059676 516295902 548082946 951211281 951211281 663410279 887022326 955121834 955121834 815007085 815007085 499171566 499171566 413172136 408160900 408160900 605558828 696722624 696722624 756211720 809738958 809738958 107029328 107029328 119199288 119199288 117589504 887294291 887294291 862760254 862760254 997982724 997982724 306638891 604297369 874854697 874854697 765591961 765591961 56623536 138451108 138451108 163613940 177209824 177209824 981467835 981467835 805355785 805355785 705167360 822171880 1040660511 1040660511 1068677692 1068677692 797394045 548144131 200531121 43334435 272629890 929104360 929104360 914432091 914432091 879457576 382293288 369335610 308340792 308340792 281894088 111115330 604009672 604009672 84878561 71846088 120195472 120195472 594316384 594316384 550792432 550792432 25264129 123138040 123138040 314278972 515109726 515109726 438253840 523377393 944968409 944968409 1011961448 1011961448 877717300 877717300 674982608 814666017 999149217 999149217 927599618 927599618 373066442 567541894 567541894 670902173 670902173 719463136 724775733 724775733 976360215 976360215 673706836 1040785789 1040785789 388098382 252199992 683130047 683130047 602316510 582694480 582694480 572257809 37435152 37435152 211927516 211997056 211997056 192545508 781849876 781849876 541237248 894883969 894883969 272665536 272665536 358951584 394130138 394130138 271820520 294789210 294789210 278462072 287100450 337795128 537101312 537101312 1018308357 1018308357 500712914 644904054 1022923303 1022923303 683411377 544626945 297196386 836786402 836786402 548328002 283690434 350039754 350039754 238819934 354761614 354761614 507653304 507653304 269815056 269815056 73631004 15592896 15592896 951258130 951258130 483355904 511346722 511346722 865650928 869387891 869387891 371027824 371027824 59256128 67110400 191365640 191365640 237092076 237092076 235931100 514872578 514872578 268863504 454957666 454957666 340851722 340851722 371770522 440899220 476605272 476605272 281020160 281020160 271582658 2622466 6643840 20688128 46290432 46290432 18440704 21095552 21095552 411083010 411083010 14942336 203487881 666021957 666021957 576948305 972164030 972164030 1001750572 1001750572 790679142 738854436 963304085 963304085 887263743 756047904 756047904 541188225 541188225 688963628 688963628 654562216 687942198 687942198 411615419 822203216 822203216 638924577 466539818 466539818 255881232 170867988 148992768 45952848 78864720 101896728 101896728 281138360 1057716114 1057716114 762364845 326731581 1008936244 1008936244 728928236 728928236 526517111 216007116 216007116 72487748 2099200 3672832 3672832 2098944 655875620 655875620 164984813 63477970 356407086 781850203 781850203 906626698 906626698 1065878635 1065878635 601059045 601059045 426069956 1016417120 1027222337 1027222337 431366480 840962998 840962998 307885732 319053710 319053710 262926698 243298136 135841284 595405872 595405872 406589190 406589190 262144272 337384720 337384720 252323264 159515372 214173900 214173900 154358080 154358080 130886085 635298529 790749501 900781938 900781938 626208952 626208952 702417629 702417629 696583729 614730044 795608960 979895599 979895599 952420551 709362854 268444144 398462986 398462986 310557922 310557922 62789043 20857730 284166897 593206481 593206481 840254833 841081107 841081107 557221683 592464898 592464898 537778195 322623282 291155986 118174776 386085890 386085890 302129170 772574464 830504199 830504199 275331522 440564096 474024348 474024348 100849692 409377044 409377044 744645273 744645273 640104729 145191884 145191884 361808490 361808490 49316010 662703772 662703772 133471150 444780630 507332694 511409694 511409694 477064368 337652609 553648130 553648130 401130376 616067808 995308029 995308029 811288328 887121847 999502455 999502455 958468317 297071744 303361890 303361890 42235185 52650481 967175026 967175026 363305694 915178795 1028354697 1028354697 750941101 999982937 999982937 836243881 836243881 248141456 489610542 489610542 636729274 853329813 853329813 890315474 890315474 605128820 775758852 775758852 635494829 635494829 809939091 809939091 1003141854 1003141854 772603984 772603984 809946756 815459151 815459151 739246605 739246605 739247117 739247117 506170398 506170398 312930602 394371655 445975122 497619777 941687589 941687589 813154139 344998093 840719626 840719626 480248582 471032064 845314740 845314740 736266616 736266616 672970970 649051837 621317289 621317289 1010150478 1010150478 681623571 681623571 404243626 404243626 798611089 798611089 198422776 982696620 982696620 904956984 708057823 161957533 334760120 344982048 344982048 326110048 34114098 337414690 337414690 374415898 399136426 399136426 384942482 384942482 294843290 563737112 563737112 664920355 915712267 915712267 875635467 420859140 1008477199 1008477199 403178761 573449216 573449216 245568045 111942241 705768731 705768731 528765610 238506660 484698840 742963838 742963838 671882156 671882156 850068416 875716956 943194712 943194712 420528914 412255605 289468418 805401122 805401122 691059328 270547252 64153200 81168744 81168744 46143680 72614488 94373184 94373184 86507856 88790184 88790184 133411752 133411752 113214624 289669280 289669280 308284305 546638083 903176357 903176357 796966013 796966013 618272457 991579751 991579751 545942103 648174550 648174550 427269841 335773920 981582099 981582099 787382044 1012945176 1012945176 518222516 518222516 604004737 604004737 715348056 715348056 619360452 237447652 237447652 192009496 190890420 459326720 459326720 135559752 135559752 735130119 735130119 717496946 717496946 381223523 356920778 239675596 49482392 839586054 839586054 805448726 805448726 286589070 241173136 342690162 342690162 125904120 310850658 310850658 105456792 83831744 4858896 273159713 273159713 281141442 281141442 557242627 557242627 341819874 276865704 276865704 749811463 749811463 640165660 640165660 622989609 614762717 818334086 818334086 1021464603 1021464603 673321221 706351745 706351745 588466752 588466752 579384368 362733224 362733224 98499170 61529536 582655444 592333072 592333072 682668708 682668708 293751880 540180504 600220957 668912348 668912348 638970109 638970109 980446539 980446539 672139797 660998681 316580540 316580540 281491650 151377290 585593059 982537666 982537666 760764887 678869598 459848310 419356614 414653250 522124178 522124178 496425582 302786584 827150607 994582817 994582817 443098518 986235010 986235010 549553301 439846401 275725130 342761412 944965447 944965447 271691618 667306176 667306176 736654804 736654804 673936128 685953477 685953477 568742309 596252980 596252980 546184257 108407760 537003156 585277488 723468612 723468612 672537093 557975040 134481056 309379538 371721986 371721986 931262675 931262675 916715328 916715328 827061411 827061411 304690849 64780112 557854080 557854080 572401232 572401232 73446664 73446664 667696705 667696705 608280951 618470401 618470401 312101228 672696684 672696684 234801861 626789560 789906477 789906477 476296076 476296076 251994990 672663045 716304229 716304229 744247908 744247908 630879420 630879420 562787740 609959381 803022596 803022596 645029653 645029653 550260504 357440682 357440682 311056856 570804712 570804712 40709520 40709520 618844617 663526832 663526832 269009920 777544196 777544196 881377904 881377904 496026463 387341450 387341450 648553018 718811296 898814571 898814571 982092721 982092721 805886866 805886866 954098950 954098950 853242803 696313666 813731063 875626596 875626596 856674263 856674263 874032963 908752927 908752927 842007367 481304732 784020680 784020680 575146456 236192284 236192284 202381380 452708160 452708160 450996050 450996050 67499332 76161096 77671752 78971336 78971336 78066944 78066944 36446208 306315338 306315338 277335194 105329848 308868272 308868272 106012696 106012696 115233264 115233264 121373848 640469472 640469472 108658825 177891148 177891148 67634184 237508504 238810908 238810908 89984796 24033080 172012570 474407310 474407310 275274910 740626809 740626809 734624952 734624952 427709362 419896358 903295658 1007905295 1007905295 985951997 692659105 692659105 632734789 210872128 210872128 554552792 554552792 44973041 35423680 24642304 56226880 234226512 234226512 221064492 114220124 220590720 220590720 215353576 198494948 119296660 609475408 609475408 617628032 617628032 28385769 20013792 20013792 60317808 92846848 106042178 382692338 382692338 369658752 292633602 292633602 630013640 656936331 656936331 736889041 736889041 816317309 877397264 877397264 487856022 932790219 932790219 913973883 588659082 380394560 342658048 342658048 277613634 395059202 453787648 453787648 407995236 193133172 371222248 407682118 407682118 278745494 238434938 177085524 23316660 387519160 387519160 204022034 87970430 144838980 323757984 945696420 945696420 191837139 632294156 632294156 588317744 588317744 756394000 756394000 865926396 937620577 937620577 730106342 470336526 748997252 1008992964 1008992964 212860236 212860236 12632256 77288522 281146050 282297282 349283080 349283080 459344180 459344180 302162632 302366004 382594266 424943526 463035878 463035878 415367552 415367552 153207346 153207346 127089536 284180610 471211596 515194144 515194144 493339414 738519372 873785351 994892601 994892601 678350223 138986628 928396180 1025845551 1025845551 475483532 475483532 374881576 374881576 68397192 92303944 96628896 125927468 176283732 238461684 238461684 147770712 160451188 160451188 555877064 555877064 83763144 687865893 687865893 662735661 233892345 608641701 608641701 92043712 60829844 172163440 172163440 14884608 680265728 680265728 673450245 741611780 741611780 1028561592 1028561592 960646989 960646989 645237261 770968500 770968500 719323605 890766433 890766433 732579810 732579810 821429729 821429729 813043625 813043625 869681001 869681001 758385453 758385453 703742892 360817350 360817350 202469612 714443516 714443516 194036340 194036340 46831268 636981144 755613252 906287477 942983943 942983943 751685175 949307104 949307104 621830619 978428532 978428532 941622041 887022326 887022326 906495003 906495003 815007085 230165190 272692613 272692613 408160900 554208256 605558828 696722624 696722624 756211720 809738958 809738958 93532776 187900868 392276956 392276956 260515972 452998008 452998008 280177134 308067022 936320102 936320102 221718485 74061192 56845736 590632006 706050319 706050319 286211106 496893164 496893164 163613940 753731005 753731005 234128280 213404960 115827288 71398608 71398608 315133952 1003932436 1003932436 1068677692 1068677692 797394045 374865314 200531121 542053488 542053488 407966914 519095194 519095194 494454702 967394316 967394316 521094814 1064470122 1064470122 341136107 111115330 577467328 577467328 761845329 761845329 729286581 589042596 70442296 99794984 143672200 143672200 142397316 243550168 243550168 60802336 9572928 431840072 431840072 349724052 454507062 454507062 414452550 414452550 720062720 720062720 674982608 62690359 999149217 999149217 871885602 871885602 323569128 323569128 304545435 670902173 865886582 865886582 984621079 1014487207 1014487207 976360215 536939585 1040785789 1040785789 388098382 461863026 683130047 683130047 839778211 839778211 582694480 883953818 973214531 973214531 441582057 211997056 211997056 192545508 781849876 781849876 160284365 500063618 898759336 898759336 875825987 875825987 394422626 394422626 101937176 101937176 324172880 324172880 646187096 646187096 537101312 537101312 14800512 91267242 271704834 356598696 356598696 281039826 48125632 270429440 298024832 298024832 285193920 283690434 283690434 350039754 350039754 347001920 354761614 354761614 507653304 507653304 255853576 237244634 206053712 493488710 493488710 951258130 951258130 394473594 942744163 942744163 581287282 589398788 680323845 831374360 831374360 479847790 219153410 219153410 191365640 237092076 281423456 281423456 514872578 514872578 176739632 454957666 454957666 277789104 317238338 317238338 328738368 441008642 441008642 362644092 393080250 407407232 407407232 261743084 168838664 60755072 359861994 359861994 281593026 21095552 411083010 411083010 345768070 345768070 666021957 666021957 576948305 972164030 972164030 229063276 785841604 785841604 738854436 738854436 665458041 665458041 584057008 118491280 637534424 637534424 688963628 688963628 151109936 303075876 303075876 109445914 822203216 822203216 128841165 365102235 365102235 586944465 726270309 895490986 895490986 470942575 564269409 564269409 469354421 1057716114 1057716114 762364845 326731581 1008936244 1008936244 965031524 965031524 548175142 697304814 697304814 960365953 960365953 688198245 479457870 1073537145 1073537145 796437620 803133592 803133592 356407086 781850203 781850203 906626698 906626698 1065878635 1065878635 601059045 601059045 523884590 605493856 1027222337 1027222337 573898579 454694167 721466408 1011557561 1011557561 319053710 293725382 382271568 382271568 654624260 654624260 526307511 526307511 424040646 509621591 1041310239 1041310239 708709609 950215113 950215113 510657097 680732801 725730037 725730037 93324512 542113792 542113792 305147962 980811806 980811806 696583729 696583729 588778025 973082755 973082755 952420551 952420551 715372826 831141129 831141129 679613511 486675587 310557922 968518914 968518914 956785797 722006288 61956480 61956480 34276448 62144368 269096960 842482641 842482641 546123856 745416795 745416795 647239605 647239605 774244666 970985920 970985920 830504199 830504199 390748494 623009145 945968608 945968608 606079390 912687878 912687878 744645273 744645273 694455845 694455845 611336980 611336980 361808490 83202920 662703772 662703772 133471150 444780630 507332694 511409694 511409694 477064368 337652609 553648130 553648130 836239875 836239875 806356707 806356707 676860940 532367445 755815664 755815664 542167626 498773426 498773426 315310818 63179152 52650481 967175026 967175026 363305694 940328581 940328581 346080802 346080802 999982937 999982937 836243881 836243881 226497802 489610542 578616612 636729274 853329813 853329813 843563026 194204738 286364032 286364032 185325204 167302372 187684532 187684532 6494368 620826732 679686213 679686213 575607836 517479656 517479656 696421806 696421806 598922097 739247117 882016918 882016918 506170398 348775626 394371655 445975122 497619777 941687589 941687589 813154139 945459846 945459846 775202143 775202143 471032064 389978650 534576160 698293483 698293483 672970970 649051837 621317289 621317289 1010150478 1010150478 784384236 784384236 404243626 404243626 294707780 85529792 771753068 771753068 904956984 904956984 708057823 161957533 312482336 333711858 333711858 29099954 20451360 17831424 5904000 29610112 30553280 62776032 62776032 143140196 636044608 636044608 569550305 767715152 915712267 915712267 875635467 312855129 1008477199 1008477199 740827312 740827312 913899582 913899582 275002498 342175854 528765610 528765610 352780672 484698840 742963838 941889895 1052154348 1052154348 901923384 901923384 875716956 513054563 513054563 412255605 289468418 805401122 805401122 691059328 270547252 64153200 66177248 130713616 130713616 97443048 33953512 36176272 107873264 107873264 39848336 39848336 304623336 528301870 528301870 229052538 401809864 546638083 903176357 903176357 796966013 796966013 618272457 991579751 991579751 545942103 648174550 648174550 427269841 433671617 981582099 981582099 787382044 1012945176 1012945176 518222516 646007048 646007048 604004737 715348056 715348056 619360452 103836680 103836680 50816416 50816416 374254020 374254020 273750020 245766492 245766492 508377624 508377624 272434818 272434818 176870484 176870484 103607440 121682992 121682992 101984528 101984528 35981848 19464720 34612512 34612512 38535168 38535168 38014096 38013072 53033856 53687088 53687088 35796112 22955056 33132512 33132512 341819874 341819874 276865704 276865704 749811463 749811463 640165660 640165660 614762717 614762717 818334086 818334086 1021464603 1021464603 673321221 655529218 655529218 521978554 492391018 328876752 362733224 362733224 349834304 349834304 344012538 352067768 352067768 394495936 394495936 293751880 8388672 1049088 1049088 1313280 638970109 901806375 980446539 980446539 672139797 660998681 162892380 162892380 151377290 1059202500 1059202500 982537666 982537666 760764887 708262224 708262224 680526405 755246108 1067409971 1071598667 1071598667 803941544 1055057199 1055057199 1047058918 443098518 986235010 986235010 549553301 439846401 391794465 528666750 944965447 944965447 670270788 670270788 758363841 764535405 764535405 709960672 703635709 685953477 568742309 596252980 596252980 546184257 59777956 537003156 585277488 723468612 723468612 672537093 557975040 228070124 309379538 368370672 368370672 268765562 151265406 52028976 51380752 51380752 16777504 18874656 36700720 46815056 46815056 12846416 70148304 73446664 114352960 114352960 583956009 583956009 923532763 923532763 390398066 638520654 644429210 644429210 215770392 215770392 473222686 473222686 353650728 3595810 287309346 464334900 549289984 564544904 734034744 734034744 630879420 562787740 609959381 803022596 803022596 645029653 645029653 550260504 168855568 50786784 107217344 109316184 627717434 843128979 843128979 275714633 112987992 42960528 106003144 777544196 777544196 881377904 881377904 496026463 387341450 387341450 313692768 718811296 761845073 786880989 786880989 546785997 669708209 669708209 763460993 853242803 853242803 696313666 813731063 875626596 875626596 134299912 116566660 357735694 357735694 460871308 460871308 481304732 481304732 12133976 202377984 236192284 479989318 479989318 481927192 481927192 446186758 278399248 67499332 120722232 453183814 453183814 583082063 583082063 445068318 837567657 837567657 309176108 307681938 723248111 993830257 993830257 699285608 699285608 363333257 363333257 87871272 65183448 549128544 663537368 663537368 177891148 67624336 237508504 238810908 238810908 89984796 24033080 140769236 149824708 149824708 243594565 740626809 740626809 734624952 734624952 266523132 419896358 903295658 903295658 985951997 985951997 625659780 632734789 632734789 210872128 210872128 554552792 554552792 90227748 208143756 261940240 261940240 229547524 229547524 127775060 239392988 239392988 215353576 215353576 198494948 119296660 609475408 609475408 16312257 54792432 54792432 78307656 617407528 617407528 26949216 84616224 118507040 813850673 813850673 268508022 144722198 674540033 674540033 452999446 332871570 603458720 816317309 877397264 877397264 774701346 932790219 932790219 913973883 588659082 469765504 469765504 361040296 427823534 427823534 453787648 453787648 420245588 193133172 485499244 485499244 203700288 203700288 886900315 886900315 187695924 1026555931 1026555931 838671130 838671130 667628793 617161161 945696420 945696420 191837139 554369024 554369024 588317744 588317744 678028677 678028677 1019929541 1019929541 937620577 730106342 231417004 748997252 1008992964 1008992964 972691652 358042155 216965742 77288522 281146050 282297282 349283080 380891994 380891994 302162632 302162632 284680570 275759736 155747092 235608438 235608438 60429672 60429672 153207346 153207346 38987238 284180610 284180610 277326746 443808552 493339414 493339414 943144723 943144723 456136756 688442912 743705229 928396180 1025845551 1025845551 851903506 851903506 726548326 726548326 22911654 21415936 96628896 96628896 80804032 80804032 97785000 99239841 99239841 90968441 555877064 722809177 722809177 687865893 687865893 662735661 258454248 608641701 608641701 122392800 50914336 36472880 142705657 142705657 282995634 282995634 303390140 1029404233 1029404233 1028561592 1028561592 960646989 960646989 940656910 940656910 270961927 623958161 623958161 464180598 464180598 733484378 733484378 476972513 533332180 533332180 869681001 869681001 758385453 758385453 703742892 527877669 692590527 769562289 769562289 798002184 798002184 790290109 263109964 632642880 755613252 906287477 942983943 942983943 751685175 949307104 949307104 621830619 978428532 978428532 941622041 713040218 436294036 906495003 906495003 688390181 628233743 339869707 1008360968 1008360968 1023574568 1023574568 354140325 273413250 273413250 880526883 880526883 93532776 1032365900 1032365900 612387375 678722133 678722133 573949758 592956458 900305207 936320102 936320102 409783686 409783686 382280152 385887660 706050319 706050319 286211106 496893164 496893164 93661800 753731005 753731005 234128280 213404960 21884064 21884064 21275648 12718272 436768808 436768808 84096534 1294336 302837472 599377490 599377490 542053488 542053488 868303121 1002553826 1002553826 982540306 1020587854 1020587854 649931507 1064470122 1064470122 341136107 34280704 31592480 596806568 761845329 761845329 729286581 589042596 70442296 99794984 143672200 143672200 142397316 243550168 243550168 39885040 39885040 431840072 431840072 791523453 791523453 689979456 917277015 917277015 720062720 720062720 987332512 987332512 414310912 414310912 283855682 69281040 107184530 107184530 319070440 319070440 865886582 865886582 984621079 1014487207 1014487207 748160589 755246085 943410965 943410965 312184850 461863026 461863026 561851202 839778211 839778211 814621420 970807021 973214531 973214531 441582057 15762000 40911040 40911040 545337984 611974031 611974031 676128266 898759336 898759336 875825987 890657450 890657450 866576170 866576170 343534088 324172880 324172880 646187096 646187096 541329568 541329568 14800512 14800512 46257744 118682256 118682256 95568320 26912352 26912352 298024832 298024832 277414272 277414272 270634944 272420610 272420610 347001920 347001920 8749322 337641472 337641472 17995232 182725966 206053712 493488710 817327544 817327544 589958307 694736538 942744163 942744163 581287282 589398788 680323845 831374360 831374360 505439806 505439806 420553254 420553254 32506766 281423456 281423456 268547842 188230272 190113616 190113616 174570774 328947666 328947666 433838214 433838214 441008642 441008642 362644092 393080250 407407232 407407232 261743084 168838664 359584032 359861994 359861994 357377376 446770244 446770244 403032832 403032832 345768070 283232652 418963780 418963780 149547520 153092388 153092388 785841604 785841604 758509693 669685109 665458041 665458041 118491280 118491280 637534424 637534424 841011726 993186579 993186579 444633184 444633184 110274428 689794199 704678392 769968621 769968621 1061294527 1061294527 726270309 895490986 895490986 829811619 676618534 564269409 759857186 759857186 402669720 69809175 773858052 792615182 792615182 965031524 965031524 777729693 777729693 807255785 960365953 960365953 688198245 484126858 1073537145 1073537145 796437620 803133592 803133592 154122620 8572992 530860454 530860454 425257558 425257558 428418146 428418146 523884590 523884590 605493856 815786569 879509001 879509001 713143124 721466408 1011557561 1011557561 227234823 293725382 382271568 382271568 654624260 654624260 526307511 526307511 424040646 509621591 1041310239 1041310239 708709609 950215113 950215113 510657097 680732801 725730037 725730037 227593701 498165474 498165474 384838835 980811806 980811806 767952512 765337197 587333792 973082755 973082755 713367628 713367628 715372826 831141129 831141129 679613511 486675587 194566262 968518914 968518914 956785797 722006288 61956480 61956480 59129344 117903384 563610210 909728899 909728899 1045899035 1045899035 906048857 647239605 647239605 774244666 970985920 970985920 724093242 526942542 526942542 623009145 945968608 945968608 606079390 912687878 912687878 674496922 621282345 694455845 694455845 611336980 611336980 90194609 83202920 508909132 508909132 12712443 925243707 925243707 916561979 914806875 851927520 889494440 889494440 557842593 836239875 836239875 806356707 806356707 992856207 992856207 855248040 755815664 542167626 498773426 498773426 331453520 331453520 326345377 803865103 803865103 529090172 940328581 940328581 396437018 606168342 841179509 841179509 1032979830 1032979830 1006632975 471083273 578616612 578616612 187270336 181298880 200580992 273923156 286364032 286364032 4452480 290455936 290455936 2556578 2545920 3385856 3385856 604165152 604165152 517479656 517479656 696421806 696421806 598922097 329977155 882016918 882016918 344629968 348775626 721553168 782436719 897722948 897722948 564678961 614668601 945459846 945459846 775202143 775202143 389978650 546571554 815086348 815086348 252025096 252025096 15414720 79712384 606077193 606077193 164781461 784384236 784384236 225683920 656784929 656784929 620962969 771753068 771753068 768304207 507796701 507796701 471488462 471488462 333711858 333711858 29099954 20451360 17831424 5904000 29610112 29610112 69761032 676692832 676692832 658632752 754025433 754025433 767715152 781522996 781522996 170674064 614473773 614473773 543949825 740827312 740827312 913899582 913899582 848071690 848071690 558800750 581065491 1043612452 1043612452 774854486 941889895 1052154348 1052154348 901923384 989877939 989877939 513054563 513054563 58904688 567416480 567416480 30540417 67545368 67545368 120343280 120343280 130713616 130713616 97443048 94373184 94373184 107873264 163726946 163726946 234712812 304623336 528301870 528301870 229052538 401809864 446761362 446761362 267437052 267437052 146874564 854758216 952209843 952209843 657515683 420560900 420560900 259337148 433671617 433671617 298444002 408759436 408759436 227379844 211053196 646007048 646007048 740763800 740763800 149056604 211296112 211296112 165164132 165164132 154228608 374254020 374254020 273750020 245766492 377626116 508377624 508377624 272434818 272434818 176870484 176870484 103607440 121682992 121682992 87698944 87698944 77730120 77863104 77863104 35651728 38535168 65193424 65196528 65196528 55726256 53687088 53687088 41617104 66793664 66793664 58042240 44056320 44056320 29405152 276846153 890344043 890344043 538582859 556240385 556240385 432412794 198232988 355555345 926415675 926415675 670824441 670824441 612259978 612259978 609671689 555768616 14280384 8433152 394739808 394739808 344012538 575598145 575598145 734386980 734386980 81542288 576801144 620426889 620426889 233657654 922631097 922631097 901806375 463585350 463585350 413409418 413409418 207751174 6508828 1059202500 1059202500 824447374 656215326 1035676947 1035676947 708262224 680526405 755246108 1067409971 1071598667 1071598667 803941544 1055057199 1055057199 1047058918 421920678 311427666 535339362 535339362 391794465 391794465 528666750 528666750 402723109 670270788 670270788 758363841 764535405 764535405 709960672 703635709 236181672 236181672 780406840 780406840 245054984 245054984 104846732 90439208 147988776 211498572 481960742 481960742 335937578 335937578 368370672 368370672 698109399 698109399 377602688 719139818 817687411 817687411 290969809 66378464 585633424 605341001 921664480 921664480 351009824 114352960 295285496 360390114 360390114 923532763 923532763 485261652 893436100 893436100 644429210 549589185 404810388 473222686 473222686 353650728 160487535 1022962478 1022962478 811917382 876295947 876295947 734034744 539242116 87716216 126579416 126579416 67850648 67850648 64297248 191982572 191982572 53456680 87634849 632081769 632081769 863427507 863427507 562746465 977390287 977390287 329847904 850086162 850086162 128740625 26747904 26288736 25814112 268437024 268437024 556058913 761845073 786880989 786880989 546785997 669708209 669708209 656458041 198454928 198454928 18375988 13937856 25310272 25310272 9056352 17042432 41959488 111198552 111198552 102826256 214247576 214247576 10039052 67699720 104597272 479989318 479989318 481927192 481927192 446186758 278399248 40449184 120722232 453183814 453183814 583082063 583082063 445068318 837567657 837567657 309176108 307681938 723248111 993830257 993830257 699285608 699285608 363333257 363333257 108949664 108949664 549128544 663537368 663537368 19799552 0 2097664 3146496 3724032 3806976 3806976 9427136 9427136 34065632 58737744 58737744 17351712 17351712 16811008 574464 33792 1049088 1049088 1049088 558287696 597897585 597897585 138623528 159890792 603389344 603389344 554961441 90227748 208143756 261940240 261940240 235674656 229547524 133713648 239392988 239392988 199253824 199253824 178144148 156424240 606325200 606325200 13136001 54792432 54792432 78307656 617407528 617407528 588619792 84616224 118507040 813850673 813850673 435734554 435734554 674540033 674540033 167862819 53758756 597724964 597724964 771715313 774701346 774701346 623905840 32894834 464802224 939527168 939527168 469765504 727908837 901427360 914020251 914020251 699965230 420245588 153459744 485499244 485499244 524424410 524424410 886900315 886900315 853542320 1026555931 1026555931 838671130 838671130 667628793 617161161 848953792 848953792 641204916 554369024 725011906 725011906 353233930 977441322 977441322 1019929541 1019929541 149865932 136323108 136323108 278987592 336667146 972691652 972691652 411243311 216965742 69767176 69767176 5939328 283545112 380891994 380891994 283338752 283564482 283564482 15745024 12706368 192651540 192651540 408464792 408464792 423174288 423174288 133045752 139528704 139528704 209035900 388024708 451183360 451183360 943144723 943144723 409404464 688442912 743705229 743705229 886569675 886569675 1024861934 1024861934 726548326 726548326 276889792 276889792 77594184 96754888 96754888 84394528 75643592 37925568 38933136 49285568 537329832 722809177 722809177 659763897 659763897 100921368 258454248 258454248 122392800 122392800 45891040 33003145 142705657 142705657 782899221 782899221 303390140 1029404233 1029404233 567182269 508565644 303438354 878716997 940656910 940656910 911523620 911523620 1049709227 1049709227 943196131 733484378 733484378 476972513 533332180 533332180 365301632 365301632 119537976 119537976 54531240 527877669 692590527 769562289 769562289 798002184 798002184 790290109 263109964 632642880 632642880 480245824 480245824 773322856 773322856 643496505 544988862 544988862 337340937 48505858 100787800 436294036 436294036 560988932 688390181 688390181 628233743 578422193 1008360968 1008360968 1023574568 1023574568 940839528 940839528 689602570 889196806 889196806 90386856 1032365900 1032365900 612387375 678722133 678722133 573949758 592956458 900305207 900305207 309858319 409783686 409783686 382280152 600187210 929511867 935280123 935280123 926366523 349756977 61982416 47768432 47768432 389212322 389212322 301902130 116693266 116693266 114584464 874893052 874893052 1068672566 1068672566 1001990690 1001990690 599377490 20357376 805407648 868303121 1002553826 1002553826 982540306 1020587854 1020587854 649931507 564776577 564776577 52890784 537290896 537445665 596806568 761676553 761676553 404092931 860826625 860826625 71487624 424690880 500831982 793510542 977731394 977731394 132985583 198091776 1066068519 1066068519 982197089 982197089 755626053 917277015 917277015 564431152 564431152 987332512 987332512 414310912 414310912 283855682 109832328 107184530 579816536 583610696 583610696 764175610 772953168 823619761 823619761 554290433 748160589 755246085 1027186493 1027186493 719630229 719630229 866491461 866491461 806413312 814621420 814621420 970807021 1037053912 1037053912 1067077744 1067077744 558011572 682358085 682358085 611974031 611974031 676128266 880220842 880220842 542585411 890657450 890657450 866576170 866576170 868834387 868834387 589491522 669116656 669116656 658890937 548491336 850653888 850653888 844715776 844715776 619749760 336745280 120838080 34666624 25158400 278374978 278374978 314973392 314973392 314966016 272420610 342924928 488481068 488481068 369413392 369413392 125047056 120193682 63096640 342356832 819945342 819945342 499653929 694736538 694736538 309691151 327989504 327989504 87871272 87871272 134340612 505439806 534847728 534847728 466749862 466749862 412040262 412040262 268547842 195497600 195497600 194932004 287163604 328947666 328947666 433838214 433838214 414499968 337685444 337685444 227340078 357624392 357624392 72080064 72080064 359584032 359584032 357377376 357377376 446770244 446770244 498682216 498682216 159950258 4194304 22906656 149547520 149547520 256825708 256825708 705809156 758509693 758509693 82982696 104355585 104355585 633954456 641851633 641851633 901324879 901324879 993186579 993186579 963715955 1011426968 1011426968 791013693 791013693 769968621 769968621 1061294527 1061294527 492008940 690188288 829811619 829811619 676618534 577442234 979488955 979488955 660804361 873476661 873476661 923102265 976063522 976063522 660482901 777729693 777729693 807255785 807255785 278009960 484126858 484126858 408630918 270020740 88741032 9978088 8516112 159500288 159500288 120682620 67619704 0 0 0 0 89457568 89457568 69544200 540226305 879509001 879509001 713143124 713143124 604431056 358912852 698974488 985675063 1049275405 1049275405 751157261 207359024 207359024 275517108 275517108 347605962 347605962 270797058 311427228 311427228 240128530 242483580 262146972 262146972 147857760 227593701 498165474 679079173 679079173 640420504 767952512 767952512 765337197 626184873 626184873 913839571 913839571 713367628 624951328 624951328 320865456 275252610 271058178 285737248 691600704 691600704 44930405 41933264 41933264 15614976 59129344 117903384 563610210 909728899 909728899 1045899035 1045899035 906048857 284214210 236061760 169220628 135272464 68207112 68806152 526942542 526942542 480265662 476805546 476805546 342102268 342102268 279348044 542657465 621282345 790915224 837044607 837044607 324608496 324608496 342765090 342765090 340399242 12712443 925243707 925243707 916561979 914806875 851927520 889494440 889494440 557842593 557842593 553783329 553783329 255931048 992856207 992856207 855248040 776345757 784384769 784384769 548805441 331453520 331453520 330933384 626635517 665436162 1046585661 1046585661 396437018 396437018 606168342 841179509 841179509 1032979830 1032979830 1006632975 471083273 245231196 187270336 538954660 732786656 732786656 332530228 446338614 446338614 185259190 290455936 290455936 547831970 810941347 810941347 357223778 604165152 604165152 861210258 861210258 860468361 373915163 390632590 742527492 978522241 978522241 273883155 865904667 976695028 976695028 897722948 897722948 564678961 614668601 908438810 908438810 805389314 537519105 304701042 546571554 815086348 815086348 203835936 212845520 212845520 262206452 606077193 606077193 164781461 669908740 669908740 225683920 656784929 656784929 637874505 748237350 960665221 960665221 616670850 507796701 670041081 670041081 402000845 715001013 846469986 846469986 587767024 595202464 595202464 50874016 69761032 927320210 927320210 658632752 754025433 754025433 684130376 684130376 679477317 679477317 614473773 614473773 525149571 525149571 313631315 680083828 680083828 848071690 848071690 558800750 812946082 1043612452 1043612452 774854486 774854486 145662071 166096496 886624476 989877939 989877939 994725893 994725893 981516375 826986722 833853003 833853003 741374440 356929860 120343280 120343280 47224704 92493536 92493536 94373184 94373184 86509832 163726946 163726946 234712812 234712812 359714000 429429090 429429090 480444426 495845926 495845926 361581294 407925899 407925899 854758216 952209843 952209843 657515683 530251788 420560900 134849062 893804652 948369606 948369606 583063580 675836360 675836360 211053196 649465960 649465960 740763800 740763800 711593216 711593216 211296112 165164132 165164132 154228608 93081624 111195848 111195848 43966032 377626116 469946382 469946382 80028054 170669328 235875348 235875348 826086202 826086202 330200851 299469994 299469994 282603106 77863104 77863104 35651728 35651728 65193424 65196528 65196528 55726256 49420272 39847616 41617104 83636736 83636736 130409088 130409088 102467688 37852312 276846153 890344043 890344043 538582859 556240385 556240385 360851488 378610266 378610266 926415675 926415675 670824441 670824441 612259978 612259978 609671689 555768616 366386728 366386728 394739808 394739808 388759970 575598145 575598145 734386980 734386980 315116016 576801144 620426889 620426889 233657654 922631097 1040232893 1040232893 807708864 807708864 474220544 918552797 918552797 169216420 240153335 824447374 824447374 656215326 1035676947 1035676947 178026551 818937652 818937652 176428455 157021860 139490336 704909312 704909312 17242470 174020358 429239536 429239536 535339362 535339362 500235152 500235152 134743044 634900544 634900544 960669184 960669184 745657965 808625252 808625252 614039584 133342073 488916107 886869220 886869220 780406840 547752260 245054984 482682464 497363374 497363374 223872684 481960742 481960742 361502728 813769811 813769811 374874490 902366259 902366259 377602688 719139818 817687411 817687411 290969809 66378464 592453088 605341001 921664480 921664480 351009824 44163408 295285496 927220763 927220763 340399242 1026380278 1026380278 893436100 893436100 726201691 549589185 404810388 470625090 470625090 718602910 718602910 1022962478 1022962478 811917382 876295947 876295947 539242116 539242116 87716216 126579416 615154377 679176740 702945765 702945765 691805392 191982572 53456680 232553328 632081769 632081769 863427507 863427507 1070417440 1070417440 977390287 329847904 850086162 850086162 808295537 285407520 641717736 929554856 929554856 244080690 244080690 99132508 680833992 680833992 144624336 172940436 172940436 168869908 198454928 391953400 391953400 421047234 421047234 126761064 126761064 76287572 356189326 356189326 120446724 374989848 443097996 443097996 138750084 6564100 3936000 1007362123 1007362123 940120644 909140506 909140506 639813899 639813899 993133498 993133498 774898080 67641416 269090832 269090832 92341280 92341280 53620912 41091840 50463520 93879108 285089730 292949970 598755514 652270401 653687435 839069803 839069803 591427432 577342626 745242756 745242756 84070440 51310616 41286528 171421472 200934324 225405580 225405580 152293620 148862644 137882196 677798049 822550291 822550291 733687480 263987238 263987238 901124522 967759719 967759719 844605237 724039989 770826549 770826549 640921489 603389344 603389344 562223681 562223681 705781312 705781312 682415653 682415653 662455076 214325328 214325328 148120500 169951904 545050497 545050497 608831040 608831040 46204112 46204112 47033936 47033936 607945056 607945056 588619792 588619792 558798976 558798976 551735745 551735745 435734554 619088277 619088277 979688291 979688291 873728523 597724964 869172973 869172973 771715313 999108401 999108401 58702694 851072145 939527168 939527168 812123523 812123523 901427360 914020251 914020251 699965230 445954548 199707222 273115158 443533484 524424410 524424410 340855760 340855760 853542320 853542320 503939386 985910902 985910902 975175191 832345941 916991241 916991241 641204916 263511212 725011906 725011906 353233930 977441322 977441322 297207898 297207898 149865932 136323108 350234754 902606121 902606121 1033249476 1033249476 1020937511 964696044 471364774 471364774 287222594 284918210 349837634 349837634 336140618 283564482 307265792 307265792 386213946 386213946 362627648 408464792 408464792 423174288 423174288 382853850 382853850 341353552 302257446 302257446 451183360 451183360 421681370 386021940 409404464 917616992 924244539 924244539 886569675 886569675 1024861934 1024861934 446383616 446383616 276889792 276889792 88146240 96754888 96754888 84394528 627272521 627272521 239253936 697439513 697439513 627916440 245447216 187248768 23138464 23138464 35949568 36226320 36226320 21028912 19205408 157296120 157296120 148090928 782899221 782899221 135551608 248461614 756848610 867399563 867399563 674489755 731228868 731228868 690873605 911523620 911523620 1049709227 1049709227 943196131 446727211 865472639 865472639 621156393 621156393 604748861 707344954 707344954 660603321 601063596 487625910 487625910 267534414 467590902 467590902 186028770 434711182 434711182 531028350 531028350 614043689 614043689 773322856 773322856 643496505 544988862 544988862 337340937 48505858 100787800 276938772 475071805 475071805 241172892 241172892 761401773 761401773 578422193 179953432 179953432 621184032 940839528 940839528 689602570 889196806 889196806 19058976 422300768 430303590 430303590 429948928 757256618 904122661 904122661 112913584 947596984 947596984 474742207 478565110 478565110 793792318 929511867 935280123 935280123 926366523 349756977 291336024 341248056 341248056 389212322 389212322 301902130 116693266 116693266 114584464 874893052 874893052 1068672566 1068672566 1001990690 1001990690 20357376 20357376 805407648 822692288 822692288 753264899 483444302 483444302 802505495 802505495 168270497 547430721 547430721 537290896 537445665 537445665 201720196 404092931 404092931 860826625 860826625 71487624 424690880 500831982 793510542 977731394 977731394 579612517 700255313 1066068519 1066068519 982197089 982197089 755626053 906288402 906288402 564431152 564431152 688130085 688130085 588941029 573421024 109832328 109832328 46978256 745177222 745177222 980207392 980207392 844224772 844224772 823619761 554290433 554290433 554205729 1027186493 1027186493 719630229 719630229 866491461 881082433 881082433 806413312 338774314 353444394 1037053912 1037053912 1067077744 1067077744 558011572 682358085 682358085 67457733 143729220 417928384 549976002 549976002 864816111 864816111 607700745 817578043 817578043 868834387 868834387 589491522 669116656 669116656 658890937 548491336 850653888 850653888 844715776 844715776 619749760 336745280 355081802 355081802 288545168 278374978 278374978 314973392 314973392 314966016 172699284 342924928 488481068 488481068 455684112 455684112 441049344 459178438 459178438 342356832 819945342 939361437 939361437 960635520 960635520 1023410198 1023410198 841077532 841077532 760809054 760809054 423747750 534847728 534847728 466749862 466749862 412040262 412040262 176147232 195497600 195497600 194932004 287163604 287163604 146986752 146986752 414499968 414499968 412530704 412530704 184337750 339932696 339932696 72080064 72080064 381497002 398723322 398723322 228085160 414191264 475548556 498682216 498682216 292351350 451166820 451166820 417923456 187712578 467190625 634442473 634442473 224055493 974144552 974144552 395350869 368050227 633954456 641851633 641851633 901324879 972095568 972095568 963715955 963715955 1011426968 1011426968 791013693 791013693 771285928 918238005 918238005 488886093 488886093 690188288 690188288 690012453 335564951 577442234 979488955 979488955 660804361 873476661 873476661 1023410706 1023410706 976063522 804661297 804661297 672858882 672858882 271660037 1056768 1056768 1056768 96474176 96474176 88741032 9978088 212133068 214550860 214550860 262416910 387180474 387180474 374479434 448999634 448999634 440808978 474562190 474562190 145154568 350769000 478498908 538666568 604431056 604431056 358912852 698974488 985675063 1049275405 1049275405 751157261 742980949 344605346 161363556 161363556 136931585 678167957 684732123 684732123 997338095 997338095 739377840 739377840 537985045 571024401 643833992 643833992 679079173 679079173 640420504 640420504 92935272 608866888 626184873 626184873 913839571 913839571 597985592 432065002 876875048 941891983 941891983 1029719042 1029719042 691600704 730046501 730046501 671117424 41933264 15614976 15614976 7740288 17323296 539167056 915881105 1042888859 1042888859 284214210 284214210 118803000 118803000 101728272 68207112 68806152 251885152 251885152 260653388 260653388 100725852 742457357 742457357 738205837 738205837 244656732 790915224 837044607 837044607 324608496 324608496 540420112 573780753 573780753 609357982 974127639 978340375 978635415 978635415 538103808 541249665 541249665 537952416 335688490 838869522 838869522 628306618 938857642 938857642 574623816 776345757 784384769 784384769 548805441 297388288 330933384 330933384 152694892 665436162 1046585661 1046585661 747700753 647095896 587235424 799031377 799031377 620824941 653789145 653789145 546836864 578616612 726872757 726872757 732786656 732786656 419895488 446338614 446338614 342286024 342286024 771827206 877275266 877275266 810941347 686132723 686132723 276989160 861210258 861210258 860468361 467720751 394001571 742527492 978522241 978522241 273883155 936850226 976695028 976695028 369500066 546370050 546370050 638961672 638961672 805389314 805389314 537519105 648771640 648771640 76112186 122439104 177335776 212845520 212845520 262206452 262206452 9049152 8388608 14484128 34281136 248929012 253142200 637874505 637874505 467787242 960665221 960665221 616670850 170190507 670041081 670041081 402000845 715001013 846469986 846469986 587767024 595202464 595202464 50874016 50874016 927320210 927320210 466120916 672707838 672707838 432821954 814288896 814429251 814429251 407972924 407972924 68944882 68944882 1836032 672893019 672893019 506294033 353803136 353803136 812946082 812946082 357620355 72784674 34458912 52502832 166096496 166096496 194172528 427315683 994725893 994725893 981516375 826986722 833853003 833853003 741374440 356929860 208506888 14116824 7611872 75759616 75759616 78959976 86509832 86509832 67108872 17039392 22334112 22334112 359714000 429429090 429429090 480444426 495845926 495845926 361581294 407925899 565457223 565457223 454222348 638869211 791288122 791288122 201340542 78676737 893804652 948369606 948369606 583063580 675836360 675836360 228725100 781013568 781013568 689286708 689945985 711593216 711593216 86125632 77037904 104295968 104295968 93081624 111195848 111195848 826749464 826749464 811796720 54599856 1068500278 1068500278 690880969 930137019 930137019 826086202 604022688 631507200 631507200 282603106 13738624 14787264 14787264 16787840 16787840 27297888 27297888 26493424 54072928 58036528 58036528 83636736 83636736 130409088 130409088 102467688 44279416 76187048 76187048 19399968 345404736 345404736 105986184 360851488 378610266 378610266 297096370 50331600 39056016 53670016 825398304 825398304 296260464 296260464 366386728 366386728 75616770 384822544 388759970 388759970 374116648 350786960 350786960 315116016 70589552 50712960 98114128 222528430 736354440 1040232893 1040232893 807708864 984680964 1019249093 1019249093 918552797 906019759 240153335 459637493 1071130239 1071130239 533452761 559968051 559968051 966801123 1006702905 1006702905 889790939 889790939 707264560 822161494 948053332 948053332 429239536 429239536 346210624 346210624 500235152 500235152 415417012 700860993 700860993 960669184 960669184 745657965 808625252 808625252 559600555 436424454 488916107 886869220 886869220 612503625 612503625 629720169 629720169 897688066 897688066 223872684 358088710 361502728 361502728 813769811 813769811 374874490 902366259 902366259 509970652 509970652 186132394 31920448 25569952 551584352 592453088 592453088 352020992 352020992 25166336 25166336 208896 927220763 927220763 340399242 1026380278 1026380278 847636563 726201691 811498706 811498706 444683833 470625090 470625090 718602910 890569108 1063053982 1063053982 747902439 370875520 941251465 961790435 961790435 745846924 745846924 615154377 679176740 702945765 702945765 691805392 153489332 242224512 242224512 241956252 241956252 764905420 1071271607 1071271607 1070417440 353383625 184991754 17457184 808295537 808295537 302420496 641717736 929554856 929554856 244080690 244080690 99132508 680833992 711276601 733768557 733768557 711642501 689180949 677256401 677256401 391953400 421047234 421047234 126761064 126761064 76287572 386386432 386386432 342497160 509500438 509500438 443097996 436601040 436601040 544768967 1007362123 1007362123 940120644 909140506 909140506 639813899 639813899 993133498 993133498 774898080 887170453 887170453 535339126 914920713 914920713 329265544 329265544 307307336 93879108 285089730 292949970 598755514 652270401 653687435 839069803 839069803 1008843018 1041709599 1041709599 745242756 102834456 105122696 105122696 171421472 200934324 225405580 361081072 398477450 398477450 396038602 677798049 822550291 822550291 733687480 263987238 263987238 901124522 967759719 967759719 844605237 724039989 770826549 770826549 640921489 62914416 553930800 562223681 562223681 705781312 705781312 682415653 682415653 662455076 266913276 214325328 185894804 183701760 545050497 545050497 715433880 715433880 617475273 636648112 663967993 663967993 607945056 607945056 556959392 541977248 558798976 558798976 551735745 551735745 346552650 619088277 619088277 979688291 979688291 873728523 415390796 869172973 869172973 610668100 999108401 999108401 660783260 851072145 851072145 539233410 812123523 812123523 484938158 484938158 501842126 501842126 445954548 199707222 442133072 467955190 467955190 327681138 603659779 603659779 726692634 1057741972 1057741972 985910902 985910902 975175191 878410261 916991241 916991241 844317572 566694772 566694772 508400166 508400166 453260872 453260872 446172266 466263466 489411872 489411872 350234754 902606121 902606121 1033249476 1033249476 1020937511 964696044 471364774 471364774 436683654 409783686 475926790 475926790 410497792 410497792 307265792 307265792 386213946 386213946 362627648 362627648 62915058 329446866 329446866 382853850 382853850 341353552 302257446 302257446 188202280 307927302 974686507 974686507 961355409 961355409 924244539 924244539 467263526 874333741 974758071 974758071 743010473 743010473 689507171 689507171 566033024 281803072 170802324 183759828 627272521 627272521 239253936 697439513 697439513 627916440 189276145 187248768 82852064 36625680 63750400 63750400 29544672 57764720 57764720 157296120 157296120 148090928 245416216 245416216 315201994 515035998 916988746 916988746 1056831809 1056831809 639453704 690873605 690873605 539567361 527395162 777528705 777528705 395968724 446727211 865472639 865472639 621156393 621156393 604748861 707344954 707344954 660603321 601063596 487625910 487625910 267534414 467590902 467590902 186028770 434711182 434711182 531028350 531028350 614043689 890940943 890940943 411986962 1057842191 1057842191 586915052 954639492 954639492 1011884318 1011884318 509029280 509029280 241172892 241172892 761401773 761401773 187376793 763656192 763656192 210122276 210122276 367063942 367063942 909983355 909983355 388008200 570704484 939624451 939624451 538314753 757256618 904122661 904122661 112913584 947596984 947596984 474742207 478565110 478565110 793792318 916226341 916226341 923918907 923918907 202506424 291336024 341248056 341248056 106077368 10512384 293939680 293939680 180366166 291980680 291980680 76658594 22875284 332965938 621140771 621140771 1042398939 1042398939 231303016 1053951888 1053951888 753264899 483444302 483444302 802505495 802505495 379987194 547430721 608674290 608674290 590175905 584470505 584470505 201720196 71303304 71303304 71303168 0 0 0 0 13665984 13665984 629439172 982260415 982260415 910239295 910239295 784511501 587777073 583534368 721592582 769790445 769790445 688130085 688130085 588941029 573421024 18272896 15026304 15026304 745177222 745177222 980207392 980207392 844224772 844224772 539907987 268878440 362158698 362158698 279919938 413853700 413853700 817922816 821085123 881082433 881082433 335857674 338774314 353444394 689144768 880245604 880245604 35866656 175661856 189392052 692618524 692618524 538467918 549877002 811852042 873779488 873779488 864816111 607700745 103598604 103598604 663083472 663083472 369106194 562348392 562348392 302039074 335692834 335692834 608962778 608962778 308299393 278858922 281027328 355081802 355081802 288545168 130421312 49091584 49091584 48050752 80847624 102326808 237866928 404129442 404129442 455684112 455684112 442090728 459178438 459178438 257556034 249454242 939361437 939361437 960635520 960635520 1023410198 1023410198 841077532 841077532 760809054 760809054 423747750 271098518 208674954 89129088 17307840 30285024 147089416 264210816 264210816 170058352 169763860 162298648 229948548 270225504 270225504 74187012 74187012 412530704 412530704 271106588 506988318 506988318 412632402 336118794 381497002 398723322 398723322 231491368 414191264 475548556 475548556 292351350 345100975 737074613 737074613 695338565 794912459 794912459 634442473 634442473 224055493 974144552 974144552 395350869 847692778 847692778 638261306 638261306 358773619 972095568 972095568 48776137 894959804 894959804 738279685 988683735 988683735 771285928 918238005 918238005 488886093 743478055 743478055 487942191 466637796 894677714 894677714 858929117 858929117 737702522 737702522 1007682364 1023410706 1023410706 959190639 804661297 804661297 721960782 721960782 894636642 894636642 1016449549 1016449549 210594507 430100778 525449132 525449132 391912754 391912754 249600664 273859330 387180474 387180474 374479434 448999634 476709546 476709546 474562190 1024210468 1048718099 1048718099 1033018799 1033018799 538666568 675705414 675705414 534780100 885377531 885377531 1015612325 1015612325 742980949 344605346 161363556 161363556 136931585 678167957 684732123 684732123 997338095 997338095 940646400 980885771 980885771 1022454440 1022454440 967299951 361272589 170498624 14450700 100333192 100333192 80430120 120243280 120243280 1032635556 1032635556 583286952 210364588 876875048 941891983 941891983 1029719042 1029719042 687939621 730046501 730046501 671117424 11670336 11039552 3794688 67715400 67715400 608179840 915881105 1042888859 1042888859 335593482 335593482 680051318 956437526 956437526 453367138 453367138 965045697 965045697 260653388 260653388 151382052 742457357 742457357 738205837 738205837 245785376 1008730429 1008730429 989864388 583635141 583635141 540420112 573780753 573780753 609357982 974127639 978340375 978635415 978635415 538103808 541249665 541249665 537952416 335688490 838869522 838869522 628306618 938857642 938857642 574094097 471094338 698176785 1000138771 1000138771 311951475 854122632 873014283 881402891 881402891 960585733 960585733 747700753 698491712 698491712 629545032 679882785 773878337 773878337 604176384 604176384 578616612 726872757 726872757 316829264 419895488 419895488 350039682 75946056 342286024 342286024 771827206 877275266 877275266 342684798 686132723 686132723 113252816 315805881 841195817 841195817 830940595 866249322 866249322 882848384 882848384 805852864 936850226 936850226 881638353 918079323 918079323 844312922 807953706 657347720 605892105 100984337 277056602 648771640 648771640 652643832 652643832 122439104 94508064 94508064 95123232 654459653 654459653 222302465 191765549 191765549 248929012 786175681 786175681 546978781 145303812 61866016 816472692 816472692 37410640 17487664 16831488 16831488 2801696 313600 34816 0 43123040 43123040 156896256 156896256 605342624 605342624 466120916 743617312 743617312 547361565 814288896 814429251 814429251 622075920 615850000 842343238 842343238 948717382 948717382 457352584 457352584 515560752 519230430 1043127038 1043127038 894179103 942982926 942982926 239124628 239124628 174639032 72414208 55132312 24642720 25165920 58983784 58983784 134322372 214380928 251867380 251867380 208506888 14116824 129963608 129963608 94912448 94820224 84148224 87982216 218907210 218907210 261934204 261934204 99350888 426318818 531791934 531791934 122620152 122620152 131022072 281901056 565457223 565457223 478643010 638869211 791288122 791288122 196624492 353861674 554727659 554727659 272654466 357065284 357065284 228725100 228725100 781013568 781013568 203347485 167924656 167924656 148675780 105404580 207428964 207428964 161395368 33320204 75767628 110431344 826749464 826749464 811796720 54599856 1068500278 1068500278 690880969 930137019 930137019 604022688 604022688 631507200 631507200 72908960 18409920 17425440 20836128 53603760 53603760 50380816 50380816 41992272 65820000 65820000 58036528 125285200 125285200 281219360 317974288 336646432 336646432 370672403 808978179 808978179 816591412 816591412 1064701044 1064701044 860184883 678517287 638801728 569244932 1024159935 1024159935 825398304 829705106 829705106 809417904 8511424 11654784 38942256 46400448 46400448 32612912 18115296 50503440 54187824 54187824 20034792 250181121 250181121 222528430 830701150 830701150 652789209 946900115 984680964 1019249093 1019249093 906019759 906019759 223499311 134217916 1071130239 1071130239 533452761 671167520 671167520 966801123 1006702905 1006702905 889790939 889790939 707264560 822161494 948053332 948053332 809636913 809636913 112071480 560923459 560923459 348337202 834807793 834807793 700860993 25169984 102371704 254120560 254120560 313059124 436424454 436424454 427383310 170410466 606155072 612503625 612503625 629720169 629720169 897688066 897688066 269883906 277614784 501357422 501357422 17827052 398460448 398460448 534316584 534316584 782495746 782495746 235266953 31920448 25569952 551584352 551584352 92995688 92995688 270996810 270996810 94709920 346173640 346173640 338484392 338484392 73712952 121948344 367037852 403441864 811498706 811498706 444683833 0 0 37748880 890569108 1063053982 1063053982 747902439 370875520 941251465 961790435 961790435 745846924 745846924 557316897 554836273 554836273 215921656 255141724 255141724 756662824 756662824 701620965 701620965 764905420 1071271607 1071271607 75543807 86703626 310492986 809364010 809364010 844552851 844552851 302420496 269797890 105162544 221195937 221195937 156580913 572198704 711276601 733768557 733768557 711642501 689180949 677256401 677256401 553674305 553406612 717981476 717981476 81434336 35907104 386386432 386386432 369153042 509500438 509500438 45032658 436601040 436601040 544768967 578051806 1002452685 1002452685 925967163 213976055 106005400 39534592 46804992 390111392 390111392 887170453 887170453 535339126 914920713 914920713 329265544 329265544 307307336 74106816 82499016 82499016 213043892 213043892 629639776 629639776 472085337 1008843018 1041709599 1041709599 476261001 102834456 105122696 105122696 5901464 46677120 342928810 391209504 398477450 398477450 396038602 396038602 322057122 69611578 127271848 127271848 109254514 348718666 348718666 304019154 303614104 9701952 12583616 12583616 41951232 42016848 42016848 2171136 52599104 52599104 177151232 178331988 221548240 266913276 266913276 185894804 185894804 183701760 183701760 181478100 715433880 715433880 646236249 636648112 663967993 663967993 338548067 23987968 11439488 12767424 268694208 555464032 555464032 555724706 555724706 883104265 883104265 824660960 824660960 626180651 304485616 470861683 692593795 692593795 1007551251 1007551251 660783260 660783260 514986240 514986240 367527402 966937397 966937397 765862374 651289305 601084428 314122342 416891474 442133072 467955190 467955190 327681138 603659779 603659779 726692634 1057741972 1057741972 671216450 963851175 963851175 878410261 878410261 844317572 844317572 566694772 576716433 576716433 508400166 453260872 906964026 906964026 772015162 489411872 489411872 269044802 811606880 835789539 835789539 220775724 323003274 323003274 463206390 463206390 436683654 409783686 475926790 475926790 410497792 410497792 167846096 230944868 230944868 138567768 285663408 285663408 268435712 268435712 373015552 373015552 449161224 449161224 42391632 42391632 171583170 171583170 974686507 974686507 961355409 961355409 746997733 597449674 467263526 874333741 974758071 974758071 743010473 743010473 689507171 689507171 566033024 281803072 170802324 183759828 799391021 799391021 756909673 557428533 582433617 582433617 54464625 82852064 544178553 544178553 149884576 560740853 560740853 62383040 57764720 60251616 60251616 47087296 577503169 577503169 553645457 515035998 916988746 916988746 1056831809 1056831809 639453704 655721996 655721996 527395162 527395162 1031948606 1031948606 395968724 287609090 420354592 420354592 820909936 861145779 861145779 286773792 286773792 117563448 328738416 328738416 150826754 181159952 227066988 248418528 361628924 415371462 415371462 202057224 277675064 277675064 890940943 890940943 411986962 1057842191 1057842191 586915052 954639492 954639492 1011884318 1011884318 509029280 509029280 142283694 151808016 151808016 135300608 135300608 763656192 763656192 764295820 764295820 367063942 367063942 909983355 909983355 388008200 570704484 939624451 939624451 538314753 952550020 952550020 500644775 410333066 203251050 830883952 830883952 895990066 895990066 820647363 819596790 295193526 527559962 696099575 696099575 422810882 884557673 884557673 390469818 390469818 293939680 374185106 374185106 322070712 322070712 383856936 383856936 332965938 621140771 621140771 1042398939 1042398939 289303060 1053951888 1053951888 872763749 872763749 828832924 709811349 455001668 441745472 379987194 608674290 608674290 604394120 678841244 678841244 922955923 1063289648 1063289648 773005863 442024220 275252610 261621372 791667640 839584674 839584674 629439172 982260415 982260415 910239295 994807910 994807910 587777073 515218372 721592582 769790445 769790445 266585873 36413696 45328736 45328736 18272896 25552640 25552640 154789668 537428740 1006421911 1006421911 961060389 812275457 812275457 522209163 362158698 362158698 279919938 413853700 683087720 817922816 821085123 821085123 163867616 280075399 1065248866 1065248866 238414620 530605214 871041864 871041864 759853268 677115525 692618524 692618524 538467918 549877002 811852042 905529020 905529020 861273742 878420662 878420662 322912050 322912050 884739915 884739915 346677857 630871928 630871928 898142698 910345282 911001800 911001800 883459179 566479368 361705160 361654336 9603594 20441344 20441344 33868560 48050752 48050752 45114880 45114880 39587472 38111232 17006592 17035296 17035296 442090728 442090728 98105494 53379828 249454242 391925218 391925218 358662570 358662570 131068024 330160384 338842170 338842170 185004576 316366246 316366246 145404624 161349704 403134048 403134048 90228750 159541040 264210816 264210816 170058352 169763860 162298648 229948548 270225504 270225504 74187012 74187012 141884048 271003668 271106588 506988318 506988318 412632402 336118794 8407114 71827880 122947352 231491368 231491368 168838996 235281480 235281480 345100975 737074613 737074613 695338565 794912459 794912459 64270095 811614736 861979059 861979059 914864177 914864177 847692778 847692778 638261306 638261306 358773619 756585708 756585708 276333658 789054782 789054782 708848208 988683735 988683735 482155801 647892720 647892720 621789539 809728258 809728258 408613794 674254249 894677714 894677714 858929117 858929117 737702522 737702522 1007682364 1007682364 238157849 408685732 570594039 736576261 736576261 721960782 894636642 894636642 1016449549 1016449549 696974517 696974517 713021544 713021544 675206040 391912754 249600664 273859330 273859330 249017548 249017548 212359920 476709546 476709546 132986872 1024210468 1048718099 1048718099 1033018799 1033018799 303174162 675705414 675705414 534780100 885377531 885377531 1015612325 1015612325 202779572 56966704 147791300 147791300 273982752 326419362 326419362 275358246 223004340 192958356 940646400 980885771 980885771 1022454440 1022454440 967299951 361272589 266389176 80925384 100333192 100333192 92459112 92459112 86512904 1032635556 1032635556 700608771 210364588 745513016 745513016 743379973 623546604 623546604 541325153 538488421 84723120 84723120 40506768 48949664 66660336 67715400 833625202 856766161 856766161 977965203 977965203 911076507 911076507 680051318 956437526 956437526 453367138 453367138 965045697 965045697 148970708 148970708 979454261 979454261 1042547813 1042547813 345313556 345313556 1008730429 1008730429 989864388 816227850 583635141 895565337 895565337 542283343 48462241 595904625 595904625 579041393 578814033 367239376 887495050 887495050 568770795 1020079182 1020079182 92616460 516790312 516790312 574094097 574094097 389034993 698176785 1000138771 1000138771 311951475 854122632 873014283 881402891 881402891 960585733 960585733 61973297 698491712 698491712 629545032 706152797 773878337 773878337 604176384 604176384 568162661 631919425 631919425 282133344 283735936 350039682 350039682 75946056 75946056 75646976 813677104 813677104 177624779 153540900 67295488 98992360 480071304 480071304 829624154 829624154 830940595 866249322 866249322 595729808 805852864 805852864 854461569 854461569 881638353 918079323 918079323 844312922 807953706 657347720 338554122 79726464 274845922 586516784 598786929 652643832 652643832 111492688 97026088 88096024 220180784 654459653 654459653 222302465 571358360 571358360 553655825 786175681 786175681 1009433535 1039714164 1039714164 816472692 816472692 315307326 629330025 629330025 24009359 986451287 986451287 827875168 698385616 694812960 694812960 156896256 302123142 721571876 721571876 675731589 743617312 743617312 547361565 547361565 916404288 916404288 817113931 615850000 842343238 842343238 948717382 948717382 457352584 457352584 515560752 519230430 1043127038 1043127038 915720795 942982926 942982926 279218714 239124628 174639032 21497760 24642720 24642720 139293932 266579108 266579108 124531840 35653920 50595888 121401268 224914268 377958722 377958722 368107458 368107458 121684090 84148224 87982216 218907210 458550277 921962971 974039017 974039017 674499333 674499333 531791934 683239751 683239751 541996294 809646342 809646342 494577296 478643010 478643010 523273280 523273280 130402452 353861674 353861674 126562040 272654466 272654466 143723968 143723968 148373504 209756160 746932796 746932796 167924656 167924656 192050052 240958264 240958264 207428964 161395368 397171088 397171088 276076736 838165016 838165016 338432481 155191460 155451556 155451556 826331074 826331074 565972833 545835208 350282306 75779168 356379274 356379274 18409920 22875936 22875936 53603760 53603760 50380816 50380816 53135520 65820000 65820000 40350080 125285200 125285200 281219360 317974288 336646432 336646432 370672403 808978179 808978179 816591412 816591412 1064701044 1064701044 860184883 678517287 638801728 569244932 1024159935 1024159935 370296617 829705106 829705106 809417904 24846880 29031968 38942256 38942256 32612912 38280368 55444624 55444624 54187824 54187824 20034792 250181121 250181121 166988772 830701150 830701150 652789209 946900115 946900115 1033405892 1033405892 896582571 478431982 79661412 249296604 249296604 217578444 217578444 671167520 671167520 809549954 809549954 310510355 142606404 174248400 614938953 614938953 612405284 750317121 809636913 858034432 858034432 861726120 861726120 537918465 846864106 846864106 456738148 456738148 454869766 77290756 302748937 814744131 898701267 918239227 918239227 822739108 822739108 93227800 180809876 355721996 553523050 791869749 791869749 481721155 558892172 558892172 501357422 687577379 687577379 412140102 580014151 580014151 782495746 782495746 235266953 26924640 65854560 579756016 643309937 643309937 127286249 270996810 270996810 94709920 346173640 346173640 338484392 338484392 512271375 760139183 760139183 748801103 608495972 232106676 218221620 120400514 302588946 846531786 876509007 888154891 920149927 920149927 861280947 243392604 430014778 430014778 281992386 284098018 339109864 554836273 554836273 132206144 362152482 362152482 756662824 756662824 701620965 701620965 677605137 677605137 676343710 758121261 758121261 570453792 809364010 809364010 844552851 844552851 38801721 538243600 538243600 221195937 221195937 156580913 221131413 660290305 693057701 693057701 642452296 548992544 216577952 553674305 553674305 553406612 717981476 717981476 17973280 369536544 369536544 376102672 507540498 507540498 238322174 97201036 336901760 336901760 419277696 578051806 1002452685 1002452685 925967163 566462094 555376819 555376819 964928532 964928532 891449552 226178988 226178988 209764428 235430216 235430216 221979776 204162060 521400894 790639933 790639933 389464186 332290142 584632017 629639776 629639776 807430657 807430657 538289410 640164128 640164128 101405080 101405080 109069616 109069616 103015872 342928810 391209504 391209504 61460450 289284914 289284914 304090370 343674144 343674144 36513418 274610466 274610466 5642752 241589275 344625625 344625625 167907860 659762773 659762773 27091973 649636104 649636104 554675201 739920984 798754136 798754136 781400845 552509772 73326216 169154704 169154704 157349488 538968321 538968321 646201344 646236249 646236249 583820680 662228041 662228041 543347936 543347936 537025697 568591841 568852800 568852800 555464032 866568243 866568243 883104265 883104265 824660960 899409641 899409641 304485616 576339626 692593795 692593795 1007551251 1007551251 37748880 1623696 0 0 0 966937397 966937397 765862374 651289305 601084428 314122342 416891474 416891474 335774920 334957574 814067266 874444339 874444339 950747275 996605535 1015298319 1015298319 963851175 963851175 605795341 675521431 1046071080 1046071080 744731172 744731172 728116869 728116869 558242386 906964026 906964026 772015162 562309440 128253985 17368448 811606880 835789539 835789539 234153195 823239328 823239328 25374816 27745568 27745568 17486880 17437728 71048320 168556576 168556576 155978972 295525482 365249650 365249650 285663408 285663408 268435712 369136640 373015552 373015552 449161224 449161224 185807412 286824076 286824076 239157766 107738520 174033688 174033688 119673144 597449674 597449674 316559154 316559154 50930736 50414624 50479120 50479120 45273936 45273936 45578912 45578912 11670336 137818413 799391021 799391021 756909673 741706496 582433617 582433617 54464625 34214928 544178553 544178553 149884576 560740853 560740853 62383040 44399392 15732416 9997264 9997264 577503169 577503169 553645457 33751040 0 131072 135168 587532872 587532872 655721996 655721996 202926649 522489967 1031948606 1031948606 78811432 672532752 859572533 859572533 820909936 861145779 861145779 306264944 97991400 368053104 470625886 500655620 500655620 453215264 299002908 285261008 361628924 497764374 497764374 264565606 104018712 765331797 765331797 311992398 683532913 832600600 832600600 105894219 205677700 205677700 423176075 759169197 957475201 957475201 841942967 841942967 590632529 596946640 596946640 558302368 558302368 764295820 764295820 65811520 65811520 69329160 94459240 320697384 355446330 355446330 272369285 430039466 952550020 952550020 500644775 410333066 823487738 830883952 830883952 895990066 895990066 820647363 819596790 540509308 540509308 696099575 696099575 422810882 884557673 884557673 390469818 390469818 133959098 374185106 374185106 322070712 322070712 383856936 383856936 165301776 374672768 374672768 372844314 289303060 289303060 125633048 193251504 873854320 873854320 828832924 709811349 455001668 441745472 171211765 136117781 733332869 733332869 678841244 678841244 922955923 1063289648 1063289648 773005863 462021750 462021750 261621372 791667640 839584674 839584674 547033353 584545521 584545521 751827104 994807910 994807910 629399769 629399769 606126345 55974576 792054541 792054541 699846388 736882608 736882608 33142592 26978112 25552640 154789668 160517523 1006421911 1006421911 961060389 812275457 812275457 522209163 60291696 176621880 181033568 976465998 976465998 683087720 732471234 732471234 719061715 423279729 1065248866 1065248866 238414620 530605214 871041864 871041864 759853268 677115525 677115525 591096756 143053120 143189824 143189824 905529020 905529020 861273742 878420662 878420662 322912050 322912050 884739915 884739915 360726546 630871928 630871928 898142698 910345282 911001800 911001800 883459179 566479368 361705160 361654336 336759296 320131072 126271488 60853392 60853392 30785312 101245064 101245064 87280104 346727954 346727954 34417680 369942554 369942554 385641800 387337728 387337728 381945482 331896376 268229256 189437212 131068024 131068024 221444352 338842170 338842170 268870066 366188958 366188958 241226584 161349704 403134048 403134048 114714792 159541040 168990848 169005248 169005248 9847360 16795456 138375268 152103168 479477364 479477364 244857876 269285980 271003668 271003668 238027548 245489688 245489688 110101080 86016272 71827880 100690416 100690416 168838996 168838996 235281480 235281480 214949336 214949336 33624752 220201796 825296860 825296860 63187815 811614736 861979059 861979059 914864177 914864177 1072743593 1072743593 976783198 146503372 742609194 742609194 771678189 771678189 837566432 837566432 814295936 814295936 720055951 832376582 832376582 1065646402 1065646402 932974203 932974203 390939745 674254249 674254249 703177876 709099501 797236129 797236129 983960322 983960322 833494371 172365155 994523860 994523860 736576261 736576261 610861699 610861699 331855976 366817002 622209664 696974517 696974517 713021544 713021544 675206040 253498776 113660272 159861708 244805576 249017548 249017548 212359920 212359920 60379048 60379048 36774672 505852944 505852944 143282262 114298836 109889712 119849008 119849008 69470472 110755904 110755904 102372888 202779572 202779572 56966704 147791300 147791300 273982752 326419362 326419362 69993152 82652616 82652616 70320392 70320392 256 954358176 954358176 255232359 266389176 266389176 80925384 80925384 84134312 92459112 92459112 44709176 808449440 808449440 700608771 130854160 745513016 745513016 677638533 126497976 126497976 84546600 68131848 84723120 84723120 40506768 48949664 66660336 66660336 833625202 856766161 856766161 977965203 977965203 917497875 911076507 369142913 197673152 272629890 283964802 283964802 324009076 324009076 184890566 229191798 979454261 979454261 1042547813 1042547813 724021617 817031744 963985978 963985978 816227850 816227850 388370656 995898128 995898128 609697787 738559182 818801859 818801859 806218947 1007282637 1007282637 887495050 887495050 743584810 1020079182 1020079182 650711117 516790312 549680469 549680469 533801238 455873214 369762612 327296466 327296466 61604176 318838082 318838082 61551984 310378738 310378738 575278768 575278768 693687425 693687425 226430096 706152797 706152797 604103016 620965929 620965929 568162661 631986984 631986984 315502926 315502926 237377820 182704648 84841988 434249444 434249444 813677104 941917979 941917979 236768796 699238559 699238559 480071304 480071304 829624154 829624154 580296320 583582929 583582929 595729808 595729808 584918240 854461569 854461569 344773370 39606506 82504272 82504272 43349384 25231392 16826368 16826368 23069088 31457696 114050152 114050152 46662864 191196184 237889948 237889948 220180784 220180784 109781444 84223280 571358360 571358360 592251456 725625541 725625541 1009433535 1039714164 1039714164 522409609 950314368 950314368 669862774 976244596 976244596 986451287 986451287 827875168 797053053 797053053 738201968 40374848 302123142 721571876 721571876 675731589 943857862 943857862 45586506 315558860 916404288 916404288 817113931 381748317 172691804 203635260 260276544 260276544 207753992 624828201 624828201 207043212 921272518 921272518 915720795 1034949964 1034949964 550427566 841687448 843654291 843654291 879366443 896144811 896144811 321220853 321574328 321574328 230723068 527653268 527653268 490598586 377958722 377958722 368107458 368107458 121684090 39236280 75196456 187456948 458550277 921962971 974039017 974039017 674499333 674499333 818448902 818448902 683239751 541996294 809646342 809646342 5325312 239474972 239474972 167045208 167045208 540590721 769523949 769523949 547282497 801505469 801505469 143723968 233500096 233500096 209756160 843926598 843926598 159984768 159984768 282476256 328653426 328653426 283664304 131915736 397171088 397171088 276076736 838165016 1024532761 1024532761 499122414 1043333654 1043333654 965235031 826331074 565972833 749352836 758390537 758390537 547114368 356379274 89411424 89411424 22875936 43642864 43642864 26386528 26386528 53135520 53135520 11834304 40350080 40350080 25680736 25680736 86541608 86541608 19398944 85983272 102371848 119673368 892733188 1008209719 1008209719 777328135 471011753 285297636 769075406 769075406 624464410 624464410 370296617 292758176 85995906 73585024 24846880 29031968 29031968 28886880 28886880 38280368 55444624 55444624 40954112 40954112 44800464 119022320 119022320 118844632 99362336 99362336 88681760 382274632 805340800 1033405892 1033405892 896582571 145782380 145782380 317001164 317001164 292096050 217578444 559247648 559247648 809549954 809549954 310510355 142606404 174248400 201828790 612405284 612405284 632335207 632335207 858034432 858034432 861726120 861726120 537918465 846864106 846864106 456738148 456738148 454869766 96269920 302748937 814744131 898701267 1053812456 1053812456 822739108 1012007851 1012007851 896537231 896537231 553523050 791869749 791869749 481721155 558892172 558892172 485437442 687577379 687577379 412140102 809635911 809635911 641351816 578475921 37929280 323748178 323748178 579756016 643309937 648159320 648159320 553910536 50607744 28053056 297732417 297732417 561909928 611061129 611061129 760139183 760139183 748801103 608495972 232106676 218221620 159482564 302588946 920728016 920728016 888154891 920149927 920149927 861280947 243392604 430014778 430014778 281992386 284098018 339109864 361890474 361890474 75896904 362152482 362152482 197837696 197837696 98283868 12767424 344447878 344447878 676343710 758121261 758121261 570453792 576243345 576243345 614619848 614619848 103062104 538243600 538243600 328539490 95986474 38312688 64373904 64373904 784019632 784019632 642452296 550092928 629196445 629196445 237590937 123898664 123898664 104899744 104899744 369536544 369536544 376102672 507540498 507540498 238322174 137984590 432608356 432608356 1071880695 1071880695 684022001 1063523125 1063523125 876282078 555376819 589955488 964928532 964928532 891449552 420639862 349256324 349256324 213860172 178775944 11731664 156323994 521400894 790639933 790639933 811261762 953816775 953816775 888678341 223134596 807430657 807430657 538289410 640164128 640164128 356909538 101405080 377487554 377487554 352969770 352969770 293847058 277532706 106870784 352587640 352587640 304090370 343674144 359797312 359797312 366150770 369636984 369636984 343619466 344625625 344625625 167907860 659762773 659762773 44224848 649636104 649636104 554675201 739920984 798754136 798754136 781400845 552509772 73326216 263674956 263674956 217190852 538968321 538968321 538998016 538998016 324182802 324182802 129172216 282650690 543347936 543347936 537025697 568591841 568852800 568852800 276162370 866568243 866568243 352473395 338915360 635089600 899409641 899409641 781014032 781014032 637935208 637935208 1006049108 1006049108 992669595 276898230 681188290 682437957 908416625 908416625 413425436 265718234 262669692 239076832 32428676 333156966 335774920 335774920 334957574 814067266 874444339 874444339 950747275 996605535 1015298319 1015298319 745289238 745289238 723949073 723949073 1046071080 1046071080 744731172 744731172 728116869 728116869 558242386 507535336 507535336 562309440 562309440 416935144 95995976 619727816 619727816 537184257 345033665 823239328 823239328 453076944 453076944 441349670 405959648 405959648 427089522 427089522 422219764 215134400 295525482 365249650 365249650 100728992 34710018 335594824 380163074 380163074 385975840 385975840 312440122 312440122 307290674 307290674 461724004 461724004 401939089 568951615 692868981 692868981 321953210 426674293 633342681 633342681 666894585 666894585 806961826 850137699 850137699 575478704 300056672 189637716 189637716 143738740 184854628 741706496 741706496 671616884 740041217 740041217 203572732 203572732 178824164 178824164 141029408 141029408 102208464 181396624 181396624 181403744 181403744 241509405 241509405 947251207 947251207 369197850 337979521 503703582 1025280049 1025280049 205636144 375408138 705506325 861661058 861661058 826144396 823804197 823804197 859572533 859572533 680340043 731069706 731069706 338637429 97991400 368053104 470625886 500655620 500655620 453215264 299002908 289699016 440447094 497764374 497764374 264565606 318818866 765331797 765331797 311992398 683532913 832600600 832600600 105894219 584115568 584115568 547971073 759169197 957475201 957475201 841942967 841942967 590632529 674339276 674339276 661715233 661715233 578863185 648159621 1032005794 1032005794 799189348 799189348 275436994 76353027 272369285 272369285 217394124 211582317 553843048 553843048 302883888 823487738 823487738 306473414 1055762902 1055762902 944679088 944679088 540509308 540509308 371528207 202507928 172627092 213065592 213065592 71512200 71512200 248391204 248391204 231554284 116405864 269589156 269589156 399912956 399912956 731667891 900135244 900135244 743400059 721033173 755215501 893471200 893471200 1025178164 1025178164 823206435 991395441 991395441 397675386 397675386 733332869 733332869 583582505 583582505 375570704 419431104 419431104 428359730 462021750 462021750 133830648 133830648 68373816 118747584 118747584 584545521 584545521 751827104 751827104 578203348 629399769 629399769 606126345 55974576 792054541 792054541 699846388 736882608 736882608 33142592 26978112 25363360 36980672 66891472 312561104 312561104 306982196 307268148 307268148 923488547 923488547 866741607 1007186239 1007186239 976465998 354418218 732471234 732471234 719061715 423279729 701665478 701665478 420878886 138489872 441168220 441168220 312725368 201180788 406842136 406842136 88679592 88679592 62683122 400630352 400630352 265026748 265026748 109755628 75692040 67108872 53847008 360726546 360726546 87677816 343332994 343332994 316031032 378065378 387341082 387341082 321013784 321013784 336759296 336759296 320131072 126271488 60853392 60853392 30785312 101245064 101245064 87280104 346727954 346727954 52428336 369942554 369942554 385641800 387337728 387337728 381945482 331896376 268229256 137628420 103074072 237273088 244356708 244356708 166013412 268870066 366188958 366188958 241226584 412688388 412688388 303843010 205792324 440414368 440414368 168990848 186128564 186128564 135141528 397398946 397398946 479477364 479477364 340187274 302352410 385611330 385611330 270532866 381732874 381732874 316934610 86016272 15838240 100690416 100690416 151913964 151913964 73446272 60297416 367198811 779748793 779748793 703410145 825296860 825296860 885572811 981165583 981165583 539641011 668040206 668040206 1072743593 1072743593 976783198 357619716 742609194 742609194 771678189 771678189 837566432 837566432 814295936 814295936 720055951 832376582 832376582 1065646402 1065646402 932974203 932974203 537297280 537297280 445207134 703177876 709099501 797236129 797236129 983960322 983960322 833494371 172365155 994523860 994523860 451129686 140633132 641458684 641458684 476509144 476509144 622209664 622209664 1064961706 1064961706 270776269 277057194 277057194 57072048 388072354 388072354 57787904 21324296 59010420 527854298 527854298 286971426 562267191 562267191 387364660 581979715 581979715 227590764 456409432 456409432 687970325 687970325 369258690 1044586669 1044586669 65275064 53288224 54476592 68960080 341678072 341678072 372256536 372256536 96145960 89138412 503382172 503382172 309334774 954358176 954358176 810702276 406385609 262369360 63529052 51105168 32254024 32254024 100664338 338690058 943359750 943359750 839275289 218699905 139027588 334016626 334016626 247521396 520216950 520216950 251691160 29409504 15773984 19594240 26531904 26531904 17961504 278407520 378151051 854379987 854379987 917497875 917497875 206983232 197673152 312492148 312492148 401688832 1030808039 1030808039 705294221 184890566 229191798 229191798 109227386 358942324 358942324 939918376 939918376 963985978 963985978 830942208 852462699 852462699 995898128 995898128 609697787 738559182 818801859 818801859 806218947 1007282637 1007282637 551674305 301032160 743584810 743584810 650711117 650711117 396787960 1061198436 1061198436 765151387 755573805 674502461 188352789 185871360 61604176 724090337 724090337 200799444 591106465 591106465 575278768 575278768 693687425 693687425 691497016 691497016 579213393 579276841 620965929 658691223 719986736 719986736 977189932 977189932 621761676 237377820 182704648 84841988 434249444 434249444 475286052 941917979 941917979 236768796 699238559 699238559 279021800 279021800 51446467 137178372 580296320 583582929 583582929 583582929 584918240 584918240 372300496 372300496 900399274 900399274 34751441 46858072 386793896 386793896 372357946 318804976 284691169 841802451 891888779 891888779 884570195 884570195 599471706 757850878 757850878 578864386 578864386 564466850 237041044 237041044 592251456 725625541 725625541 1045815869 1045815869 613696210 591434276 950314368 950314368 669862774 976244596 976244596 749764958 794552217 794552217 797053053 797053053 738201968 591468320 551559872 427967684 411603042 501878794 943857862 943857862 778704285 778704285 1030032624 1030032624 902824683 902824683 1019152629 1019152629 711790960 711790960 550143304 624828201 760329449 760329449 813977954 813977954 874023976 1034949964 1034949964 825804579 1009305399 1009305399 908641563 879366443 896144811 896144811 821745260 876934642 876934642 868232282 868232282 527653268 490598586 302638098 471010072 471010072 306579602 319240242 319240242 70574874 68776580 153526152 153526152 68977572 158354952 158354952 271865920 818448902 818448902 538331462 538331462 269461186 282454722 282454722 289472768 289472768 46815200 46815200 540590721 769523949 769523949 547282497 801505469 801505469 436656690 436656690 471279716 471279716 975781901 975781901 1026641835 1026641835 693952606 328653426 328653426 871201689 871201689 572399121 937226301 937226301 172712964 1024532761 1024532761 953681607 1057421520 1057421520 965235031 521067582 410509278 749352836 758390537 758390537 547114368 97307880 89411424 89411424 17824800 25252448 25252448 26386528 26814048 50009088 50009088 6914480 39856768 39856768 85593384 353572384 353572384 354070016 387584010 387584010 858308899 858308899 892733188 1008209719 1008209719 777328135 471011753 285297636 769075406 769075406 567780705 345187305 292758176 292758176 85995906 336646792 343917098 343917098 373924496 373924496 365442562 365442562 336727592 394189824 394189824 40954112 330369896 330369896 140299283 456489950 885497415 885497415 960377770 960377770 805340800 949014726 949014726 889118667 805485447 760630938 760630938 588815338 690256442 690256442 576440418 175178240 79867908 79867908 21156612 153141540 153241893 411328945 509898766 642241283 642241283 632335207 487725099 88658728 862648033 862648033 382804698 582008209 582008209 272310066 92290626 96269920 96269920 252156614 815841603 841063251 1053812456 1053812456 997661219 1012007851 1012007851 896537231 896537231 1049723766 1049723766 897630315 912946002 912946002 485437442 485437442 403124580 403124580 201392256 809635911 943618064 943618064 845711360 845991315 845991315 323748178 47980256 540274912 648159320 648159320 553910536 272623392 71191466 10172544 5243520 561909928 611061129 611061129 151949888 151949888 139512320 138676356 173353620 280595200 511796762 511796762 920728016 920728016 511179678 619923727 619923727 661502912 661502912 904020122 904020122 310381546 264192 225184868 541140605 620300640 778117533 778117533 152175131 597943132 1033408851 1033408851 913424817 93009041 537609467 537609467 379061784 379061784 809305600 809305600 560213387 618674889 618674889 930222746 930222746 389165370 389165370 166641817 176160660 176160660 654222797 784019632 784019632 601882353 601882353 629196445 686169583 686169583 938238526 938238526 763679036 272814210 407552158 407552158 504939544 504939544 464491184 359230504 145348620 432608356 432608356 1071880695 1071880695 684022001 1063523125 1063523125 956437636 956437636 591474130 589955488 782927292 782927292 704509053 704509053 349256324 754438217 754438217 44073996 24449120 24449120 150876226 279314946 811261762 953816775 953816775 888678341 223134596 642870278 642870278 92037125 74897552 356909538 356909538 29409504 377487554 377487554 352969770 352969770 293847058 277532706 106870784 362296856 362296856 269170394 85078320 382940448 382940448 366150770 369636984 369636984 343619466 343619466 295381096 86314048 125864992 125864992 44224848 45857024 45857024 19737888 26018112 26018112 250001168 250001168 91060496 39612888 263674956 263674956 217190852 217190852 214962568 214962568 204501016 324182802 324182802 129172216 282650690 285740128 285740128 295318018 295318018 299501282 299501282 276162370 600867328 600867328 112198088 112198088 119537872 128975736 128975736 781014032 781014032 100806680 185405466 1006049108 1058146994 1058146994 351848394 904598262 904598262 908416625 908416625 1009463746 1009463746 442781569 247257464 140878768 140878768 127634960 91294068 7834656 597783152 597783152 795838477 795838477 715817849 715817849 566776917 745289238 745289238 1012727939 1012727939 813318955 813318955 812662574 206906403 856755240 856755240 379175290 507535336 507535336 814710274 814710274 416935144 622624202 896958920 896958920 816730192 817507664 817507664 467317776 467317776 453076944 441349670 405959648 405959648 427089522 427089522 422219764 215134400 215134400 188891872 188891872 91239296 91239296 335594824 380163074 380163074 385975840 385975840 329881666 329881666 325529376 325529376 461724004 461724004 401939089 568951615 692868981 692868981 321953210 426674293 633342681 633342681 666894585 666894585 806961826 850137699 850137699 575478704 300056672 189637716 189637716 614691433 656339561 656339561 671616884 671616884 740041217 740041217 203572732 700537565 700537565 178824164 719459861 799160381 799160381 197187760 197187760 181403744 774247284 774247284 738413328 947251207 947251207 369197850 671411076 671411076 1025280049 1025280049 206652544 375408138 705506325 861661058 861661058 826144396 823804197 823804197 641623388 641623388 773856074 773856074 793546653 793546653 868620531 868620531 796165420 475568740 475568740 491091658 491091658 289699016 440447094 440447094 193154316 91799600 378577192 378577192 328682866 327816306 186158796 501939548 501939548 174706822 584115568 584115568 635908626 655866753 678661012 678661012 288865041 537521284 537521284 674339276 674339276 661715233 661715233 578863185 648159621 1032005794 1032005794 799189348 799189348 275436994 74222856 74222856 2886912 2886912 10543872 553843048 553843048 114349465 350044208 350044208 306473414 1055762902 1055762902 944679088 944679088 767190252 767190252 687216053 687216053 390801208 746141717 746141717 132192718 71512200 248391204 248391204 231554284 161701920 37001248 143793536 399912956 399912956 731667891 900135244 900135244 743400059 721033173 755215501 893471200 893471200 1025178164 1025178164 823206435 991395441 991395441 397675386 397675386 108263650 12847296 715950861 894584400 894584400 831920739 773210726 209842436 209842436 9333912 20971680 234360668 234360668 19756946 119675793 224200596 224200596 534204703 645976379 645976379 151220236 151220236 876062892 876062892 829025608 841568560 996683027 996683027 683810240 331819216 25239968 32531264 34080992 66891472 312561104 312561104 306982196 307268148 307268148 923488547 923488547 866741607 1007186239 1007186239 945956183 410999956 982241094 982241094 437195031 16723024 354499340 463591222 997392930 997392930 979088192 307848444 264873618 832080056 832080056 150866176 3146496 385497024 385497024 135401984 311954800 380720076 380720076 155039852 503398674 503398674 103922376 284683090 284683090 87677816 37930432 44337504 44337504 53216160 109056064 109056064 103932696 103932696 62099000 33738272 54679552 57793008 57793008 42501152 57108640 57108640 65939248 65939248 55125168 55125168 52428336 52428336 18734096 838656 50857040 50857040 50645040 57035688 224811944 224811944 103074072 237273088 244356708 244356708 166013412 319426872 338167050 338167050 132793552 412688388 412688388 362120280 365438176 440414368 440414368 342459154 286311954 272385904 135141528 397398946 397398946 392516448 392516448 340187274 302352410 385611330 385611330 270532866 381732874 381732874 316934610 344285640 344285640 363643896 363643896 151913964 151913964 176037780 176037780 367198811 779748793 779748793 703410145 319563941 524023676 885572811 981165583 981165583 539641011 668040206 668040206 749433586 749433586 410787798 410787798 279577642 427847472 676069605 1057658091 1057658091 710415432 540911902 1007995935 1007995935 610108948 906797718 909760065 909760065 438963100 417751318 553229232 591942024 591942024 660791616 660791616 642912921 642912921 694178096 694178096 584752517 53282465 537331796 569654576 569654576 786311996 786311996 739130088 739130088 731880065 751612265 751612265 1064961706 1064961706 703473741 650101032 277057194 102839856 388072354 388072354 7398064 21324296 59010420 527854298 527854298 286971426 571491591 571491591 387364660 859309099 859309099 227590764 456409432 456409432 687970325 687970325 369258690 1044586669 1044586669 84418032 105395520 105395520 76219936 341678072 788108271 1027678383 1027678383 1037641455 1037641455 977417529 584058800 584058800 958551432 958551432 810702276 406385609 262369360 63529052 67497280 67497280 32254024 100664338 338690058 943359750 943359750 880051277 862452458 862452458 334016626 852152642 852152642 571026653 751305933 751330509 780190864 780190864 19594240 34163280 36564240 36564240 548899410 848955475 848955475 840908307 313377481 216495428 206983232 192955596 312492148 312492148 401688832 1030808039 1030808039 705294221 493055428 493055428 583808397 745171119 1007351109 1007351109 949449748 949449748 372637960 865615374 865615374 852462699 852462699 428386435 701361381 896356229 268435456 268435458 805306370 805306371 805306371 541065345 809771690 809771690 536958336 543946113 543946113 488391554 503058414 1061198436 1061198436 765151387 755573805 674502461 361305664 185871360 50374336 724090337 724090337 568715745 591106465 629840625 629840625 623885921 845333339 845333339 854975601 854975601 188306415 487301178 487301178 671240192 719986736 719986736 977189932 977189932 621761676 257343604 245012120 67108872 67108864 183012256 194825844 194825844 73785964 212682804 369997980 369997980 279021800 279021800 51446467 137178372 509125096 509125096 328518258 583889922 805380099 805380099 311985745 307991282 918097136 918097136 365338283 342223242 386793896 386793896 372357946 318804976 688131334 841802451 891888779 891888779 884570195 884570195 599471706 757850878 757850878 1040260404 1040260404 800007222 665776588 798489213 798489213 610177884 610177884 1045815869 1045815869 901959915 882081971 885539368 885539368 847896779 453494968 602634127 602634127 794552217 794552217 688190905 691274320 691274320 591468320 551559872 427967684 411603042 339090186 607698058 651372356 778704285 778704285 1030032624 1030032624 902824683 902824683 1019152629 1019152629 711790960 711790960 550143304 617211081 760329449 760329449 813977954 813977954 874023976 874023976 561140866 825804579 1009305399 1009305399 908641563 876751016 791775658 821745260 821745260 876934642 876934642 868232282 868232282 86464796 169147444 370680978 471010072 471010072 443562856 443562856 430438758 70574874 177265620 523473697 986000247 986000247 906457385 671099399 962611493 962611493 419947905 410297155 812033412 812033412 811818564 282454722 289472768 289472768 35029968 35029968 30412256 768039212 768039212 709124692 709124692 260077757 436656690 436656690 471279716 471279716 975781901 975781901 1026641835 1026641835 693952606 102401920 317451233 871201689 871201689 572399121 937226301 937226301 580090366 580090366 953681607 953681607 1057421520 1057421520 521067582 521067582 339877876 339877876 136840452 136839168 3281056 2019328 24462752 24462752 17824800 56842704 56842704 60667616 60667616 50009088 50009088 6914480 46548480 46548480 85593384 353572384 353572384 354070016 387584010 387584010 858308899 970490272 970490272 942195975 899977848 1050056115 1050317503 1050317503 435728544 536948550 703409637 703409637 495053985 354492714 90982536 336646792 343917098 343917098 373924496 373924496 365442562 365442562 336727592 394189824 394189824 38082912 330369896 330369896 140299283 456489950 885497415 885497415 960377770 960377770 450368769 949014726 949014726 889118667 805485447 760630938 760630938 588815338 690256442 690256442 886723072 886723072 807225895 807225895 1033990511 1033990511 872735047 872735047 755249248 717292961 703095284 276971904 811671938 811671938 862648033 862648033 809746344 582008209 582008209 100408618 344589056 344589056 20513066 176243422 815841603 841063251 841063251 997661219 997661219 654918698 406986881 731943956 817444709 1049723766 1049723766 897630315 912946002 912946002 291055266 28126560 475308815 686147913 753195469 942819850 943618064 943618064 917113048 845991315 845991315 75796544 67557384 540274912 540274912 100792376 272623392 272623392 71191466 32534657 389321651 389321651 623650080 930612882 930612882 883602794 883602794 765509997 454386500 454386500 511796762 511796762 779004160 779004160 511179678 619923727 619923727 661502912 661502912 1015546329 1015546329 700974309 700974309 700974309 541140605 678249268 778117533 778117533 947888518 947888518 1033408851 1033408851 913424817 93009041 537609467 537609467 379061784 379061784 809305600 809305600 560213387 618674889 618674889 930222746 930222746 389165370 389165370 166641817 176160660 176160660 654222797 654222797 598317952 601882353 601882353 80130400 686169583 686169583 938238526 938238526 763679036 272814210 407552158 407552158 504939544 504939544 466770804 466770804 167042112 271331520 271331520 97037536 105074718 406970502 406970502 230809836 956437636 956437636 591474130 570408896 782927292 782927292 704509053 992248272 992248272 754438217 754438217 641433777 627811686 838281487 838281487 757387362 757387362 732093851 732093851 562118752 562118752 97332456 97332456 185283636 185283636 137152916 137152916 90685448 111284624 343986368 367075818 367075818 40023194 29393568 315491440 362296856 362296856 81210386 25506488 382940448 382940448 279194184 279194184 327291896 327291896 95173024 95173024 86314048 125864992 125864992 17351712 77135656 77135656 36700944 84937560 84937560 74984376 74984376 250101344 250101344 51057556 37266208 95304552 95304552 217088016 250659804 250659804 111732480 113258840 113258840 83192320 285740128 287340816 304519218 304519218 277172306 271840002 541311249 916640066 928731153 928731153 314176682 876311682 876311682 851130195 699286824 773839293 773839293 610244800 487463982 1058146994 1058146994 351848394 904598262 1038878392 1038878392 382780122 1009463746 1009463746 442781569 264507288 140878768 140878768 127634960 91294068 125381264 597783152 597783152 795838477 795838477 745351220 715817849 852971430 852971430 672347812 1012727939 1012727939 621153696 812662574 812662574 290916586 856755240 856755240 379175290 379175290 354723434 814710274 814710274 812411018 877972107 896958920 896958920 816730192 817507664 817507664 467317776 467317776 312508672 58120212 4301184 4301184 11953344 11953344 9575096 167148008 167148008 19946580 44084168 91239296 554627857 554627857 747111501 747111501 347215282 622759420 622759420 537610771 419514038 1036067154 1036067154 724740734 118015032 100754464 440681124 440681124 189304848 189304848 419613394 419613394 307815954 345158682 345158682 345390736 345390736 133592232 133592232 65460480 365924626 614691433 656339561 656339561 595712264 640092433 640092433 573719065 59407616 700537565 700537565 214376896 719459861 799160381 799160381 742817844 658954425 184572045 774247284 774247284 752093253 752093253 240772360 240772360 671411076 671411076 135268944 176793736 206652544 340149390 340149390 620763151 620763151 476218380 660312993 660312993 641623388 641623388 773856074 773856074 793546653 793546653 868620531 868620531 796165420 475568740 475568740 491091658 491091658 227930150 156074116 16998580 193380452 193380452 378577192 806727505 806727505 529346430 581779795 945319168 945319168 600834801 1042368929 1042368929 635908626 655866753 910369224 955053295 955053295 820373955 556460516 556460516 166057249 32533344 32533344 13755072 12847168 14698784 29673696 154174456 255180604 255180604 270765825 270765825 275644290 275644290 538407203 538407203 589223696 589223696 562305121 1055532464 1055532464 1007050990 832157752 891168434 891168434 767190252 767190252 687216053 687216053 405410004 746141717 746141717 132192718 287375462 287375462 402729740 487858272 487858272 277187652 277187652 424678374 424678374 732108428 732108428 119607840 66270192 423731292 423731292 693261604 693261604 777891065 777891065 702072549 695186789 995630757 995630757 721982373 726624053 726624053 715950861 894584400 894584400 831920739 773210726 352411680 352411680 379174026 385166298 499639038 499639038 244824178 259019056 978713404 978713404 534204703 645976379 645976379 151220236 151220236 889845344 889845344 829025608 841568560 996683027 996683027 683810240 331819216 809897019 809897019 175880116 400290714 400290714 230234348 230234348 169453140 169453140 579817988 581587216 581587216 144104004 945956183 945956183 410999956 982241094 982241094 437195031 16723024 295011760 463591222 997392930 997392930 979088192 377225950 377225950 943835836 943835836 361292191 533981472 533981472 385497024 406464340 444805206 444805206 380720076 155039852 503398674 503398674 103922376 284683090 284683090 100195372 715837329 715837329 619544865 1043425733 1043425733 800054155 810726881 862815107 862815107 671272240 731415392 731415392 709101973 561255952 191322992 65836576 36177168 36177168 2787584 4053248 4053248 1436160 1375744 6055552 50857040 50857040 298839318 333004018 333004018 406110546 406110546 405655378 405655378 150222636 165589238 855759419 855759419 1000659730 1000659730 378999389 427932684 427932684 460867580 820068778 845693697 845693697 582533570 272385904 35004032 35004032 37752960 46417456 46417456 34605440 282760912 306844674 306844674 47760578 47760578 11551306 67757640 351899792 351899792 363643896 363643896 443649030 443649030 198537000 204933908 403907104 403907104 341973512 341973512 324409728 524023676 524023676 373347296 373347296 394264698 394264698 69682074 316135942 410032518 410787798 410787798 272892032 392610175 676069605 1057658091 1057658091 710415432 206571654 1007995935 1007995935 610108948 906797718 970751137 970751137 438963100 417751318 639798013 993076023 1059123218 1059123218 660791616 642912921 642912921 574175493 574175493 729387348 729387348 679691204 569654576 569654576 786311996 786311996 739130088 739130088 731880065 751612265 751612265 784730568 784730568 703473741 650101032 256542536 205352876 142102968 259184060 259184060 159347980 184877312 188127128 188127128 505549086 571491591 571491591 255379222 859309099 859309099 292736408 324047432 324047432 536922353 536922353 130369568 642385313 642385313 84418032 105395520 188952756 192427204 206722393 788108271 1027678383 1027678383 1037641455 1037641455 977417529 584058800 584058800 958551432 958551432 618304582 149249184 149249184 130239760 108998536 67497280 71309056 71309056 26215488 111149344 880051277 880051277 862452458 862452458 296515810 852152642 852152642 571026653 751305933 751330509 780190864 780190864 153381668 142950692 36564240 72608392 548899410 848955475 977721531 977721531 912015259 856355223 856355223 630300390 630300390 707395965 795396951 795396951 289508384 289508384 493055428 493055428 583808397 745171119 1007351109 1007351109 949449748 1021838799 1021838799 865615374 865615374 818154208 382664966 428386435 701361381 896356229 402990244 402990244 827083938 827116707 827116707 360911082 809771690 809771690 358652451 194196084 275424692 488391554 503058414 503058414 463452084 354769972 318925878 361305664 361305664 143962176 164066868 247918420 538758225 568715745 568715745 629840625 629840625 623885921 845333339 845333339 854975601 854975601 492120946 465265902 465265902 671240192 671240192 57192629 30418176 91849320 257343604 257343604 245012120 118663980 174229252 238575588 238575588 219813420 461479182 461479182 414897990 369997980 278806658 278806658 410335116 410335116 407838370 305449746 305449746 583889922 805380099 805380099 311985745 822738496 918097136 918097136 365338283 342223242 275583240 28486976 48929748 174332176 688131334 688131334 928794020 1011385751 1011385751 252449804 974917636 974917636 411119185 1040260404 1040260404 800007222 665776588 798489213 798489213 610177884 610177884 868569113 901959915 901959915 882081971 885539368 1044492430 1044492430 876992517 876992517 110988935 889245763 889245763 558926637 754257088 754257088 157551744 223913032 223913032 545149059 545149059 607698058 686506176 847197395 847197395 516298324 122558520 122558520 843073767 843073767 220588332 220588332 406619236 600051848 663099513 663099513 123765184 849760432 990792921 990792921 921846736 921846736 859445043 859445043 824915235 876751016 876751016 791775658 791775658 370434863 347375624 310985560 380383610 380383610 371416144 396425050 396425050 393156992 249380440 443562856 443562856 430438758 172051160 279312390 523473697 986000247 986000247 906457385 671099399 962611493 962611493 690086181 423723395 812033412 812033412 811818564 10885440 12607424 12607424 35029968 35029968 544926913 768039212 768039212 709124692 709124692 260077757 121819856 80741064 274002112 344257026 344257026 621956744 621956744 349999723 273286784 282215424 282215424 80918080 77250560 217081016 217081016 186855732 580090366 580090366 398328921 241771932 343953596 343953596 256016458 130420960 339877876 339877876 136840452 136839168 25895552 89364192 91247872 91247872 4206496 56842704 56842704 60667616 60667616 49492944 47714592 13817232 46548480 46548480 19620608 21334656 21334656 23600704 23600704 27829504 27829504 970490272 970490272 942195975 899977848 1050056115 1050317503 1050317503 430196863 536948550 703409637 703409637 495053985 625095730 625095730 537531416 21404064 21106848 361816544 361816544 31572586 283003012 405016102 405016102 298723816 323193734 323193734 437782384 437782384 419694630 457744026 457744026 369673242 585872656 585872656 99984680 86600680 119985436 176371792 176371792 1070024814 1070024814 642468124 651827403 886723072 886723072 807225895 807225895 1033990511 1033990511 872735047 872735047 755249248 717292961 703095284 276971904 811671938 811671938 274801027 809746344 809746344 808764952 808764952 503390238 503390238 491528382 212280910 176243422 351458250 699087048 762056109 936259037 936259037 557377185 557377185 677121696 781163777 781163777 709606040 709606040 262431196 197263572 214044778 214044778 475308815 686147913 753195469 942819850 942819850 917113048 917113048 977825262 977825262 584079488 736533252 736533252 116866008 116866008 49888258 555459203 555459203 874544169 874544169 866982865 866982865 930612882 1067926525 1067926525 990162199 765509997 454386500 454386500 420602654 403252230 779004160 779004160 675742657 674683653 383146432 510024410 959972096 1015546329 1015546329 700974309 700974309 700974309 427836551 678249268 678249268 578104209 947888518 947888518 691040174 691040174 322357780 193760796 193760796 116465960 423961888 423961888 153960938 33928512 42149952 369764800 369764800 341908498 125119416 336732880 336732880 42143554 23704816 19658016 18782528 91121376 99089128 99089128 80130400 95112204 221613224 221613224 225058180 235197880 235197880 58904688 168892432 304031796 304031796 168107232 466770804 466770804 167042112 167042112 30836608 7348480 105074718 406970502 578945632 588386865 588386865 832596288 832596288 387722400 374416026 433197798 433197798 992248272 992248272 557108001 641433777 641433777 627811686 838281487 838281487 757387362 757387362 732093851 739419204 739419204 562118752 97332456 97332456 185283636 192553144 374336122 374336122 256718168 396435666 396435666 367075818 367075818 278954866 278954866 315491440 315491440 285742626 320080096 320080096 306448386 328142744 328142744 53486178 40055568 40055568 37229616 53842976 53842976 51906096 44774736 44774736 77135656 77135656 50808608 84937560 84937560 74984376 74984376 250101344 250101344 51057556 34542592 140513344 140513344 217088016 250659804 250659804 113391320 113391320 110706752 83192320 397886024 397886024 321647922 321647922 372470202 372470202 541311249 916640066 928731153 928731153 314176682 876311682 876311682 851130195 699286824 773839293 773839293 722991669 967892997 967892997 0 0 58801428 1038878392 1038878392 430794899 430794899 834927096 834927096 627368072 178389720 127062608 127062608 86773032 125381264 566774976 566774976 560775233 745351220 745351220 587727488 852971430 852971430 941705236 941705236 52882355 621153696 621153696 302436886 290916586 290916586 84120585 961800655 961800655 354723434 555096609 555096609 812411018 877972107 877972107 550627464 278832210 302109184 302109184 305188610 312508672 312508672 274901888 274901888 269601600 467720896 467720896 467915508 467915508 192025524 45173364 44084168 48391448 554627857 554627857 747111501 747111501 140509572 622759420 622759420 537610771 419514038 1036067154 1036067154 724740734 350294272 350294272 440681124 440681124 412835952 412835952 176944212 138507328 109782530 345158682 880880256 880880256 345390736 133592232 133592232 65460480 365924626 365924626 90628896 90628896 60455232 109625088 120828472 212905316 212905316 71067256 769740013 769740013 232016332 232016332 742817844 742817844 658954425 184572045 36717280 742408512 752093253 752093253 207619976 625773280 674534713 674534713 226110697 567586709 567586709 549940864 549940864 475847306 475847306 313344 285475648 285475648 618045580 618045580 143675533 134742276 2661632 164479416 243527772 494455760 494455760 145482958 91090344 202176076 202176076 403058768 403058768 176617504 323167376 323167376 297896290 806727505 806727505 529346430 581779795 945319168 945319168 600834801 1042368929 1042368929 967317408 967317408 966542724 955053295 955053295 820373955 558564965 680721992 769875949 769875949 755143337 768116869 768116869 665681260 665681260 647289596 647289596 254078004 270765825 270765825 275644290 275644290 538407203 538407203 589223696 589223696 562305121 1055532464 1055532464 1007050990 832157752 891168434 891168434 416960124 416960124 393057154 317203666 405410004 405410004 495561760 495561760 290505378 308207250 402729740 487858272 487858272 415506678 277187652 424678374 424678374 1037156566 1037156566 883091619 795708171 708652237 255729468 693261604 693261604 777891065 777891065 702072549 825629475 995630757 995630757 721982373 726624053 726624053 606257328 606257328 443992806 443992806 135461056 352411680 352411680 435003476 443362710 499639038 499639038 436209940 436209940 978713404 978713404 154458675 927020096 927020096 103429387 117670064 889845344 889845344 617126561 617126561 839140368 843351170 843351170 574673129 809897019 809897019 175880116 400290714 400290714 303344722 303344722 311249426 311249426 579817988 581587216 581587216 12534548 138350996 141696528 141696528 23166112 543675520 543675520 23151152 41055792 161621796 161621796 62567888 48038336 709838837 709838837 959796780 959796780 604147846 533981472 533981472 385356958 406464340 996394715 996394715 843563986 799370988 799370988 77869968 131203432 131203432 100195372 100195372 715837329 715837329 619544865 1043425733 1043425733 800054155 810726881 862815107 862815107 671272240 731415392 731415392 709101973 561255952 191322992 65836576 35589776 35589776 52470960 52470960 50760752 50760752 17432080 12321536 12321536 9178176 298839318 333004018 333004018 406110546 406110546 405655378 405655378 150222636 269677064 855759419 855759419 1000659730 1000659730 378999389 427932684 427932684 460867580 820068778 845693697 845693697 582533570 47724744 47724744 43210808 23669264 53077296 125450120 125450120 38836096 342147328 342147328 340035722 15371530 8523840 44040384 351899792 351899792 32616256 33419232 443649030 443649030 198537000 204933908 403907104 403907104 341973512 341973512 324409728 308567602 306893970 373347296 373347296 394264698 394264698 69682074 68235632 68235632 6494976 6494976 272892032 272892032 251956272 251956272 895798064 895798064 846650259 756737831 407110284 255926460 826623166 970751137 970751137 269191769 344350873 639798013 993076023 1059123218 1059123218 389729268 389729268 265946264 574175493 574175493 729387348 729387348 679691204 167393216 65232984 65232984 31407840 31407840 27211488 215989732 215989732 59345920 235350192 280258450 280258450 256542536 376130410 376130410 142102968 259184060 308907520 309717906 452323356 452323356 346781264 505549086 505549086 405877272 286261794 286261794 292736408 292736408 324047432 324047432 323023394 323023394 180376184 282558680 282558680 180522622 164361444 188952756 192427204 192427204 180897296 112908120 112908120 3855448 9459464 123737424 123737424 77594952 77594952 609265472 609265472 149249184 149249184 130239760 108998536 8943624 89412864 101327002 353444394 456655742 456655742 1060241586 1060241586 448059400 174902676 435963034 435963034 322996010 322996010 164367588 68045996 220602628 220602628 142950692 28874148 72608392 72608392 441584521 977721531 977721531 912015259 856355223 856355223 630300390 630300390 707395965 795396951 795396951 246743197 246743197 425138720 425138720 662529275 788781465 828551497 923671611 923671611 1021838799 1021838799 244853012 818154208 818154208 382664966 242955611 329556626 811353631 402990244 437855766 827083938 827116707 827116707 826332852 608604161 537057417 708880000 710485781 710485781 706236564 318453714 887789104 1057198989 1057198989 1014055118 1014055118 98659248 143962176 164066868 247918420 247918420 253546044 253546044 161548800 77494744 304475136 304475136 638885512 638885512 492120946 492120946 812446988 946303276 946303276 218267964 459531670 986743564 986743564 762600296 105961552 92549504 118663980 174229252 238575588 238575588 219813420 461479182 461479182 414897990 271221316 278806658 278806658 410335116 410335116 802474665 802474665 366813040 825372289 825372289 100927560 576243345 822738496 902595163 902595163 42831891 575759386 628790370 628790370 596791838 803478134 803478134 576537233 928794020 1011385751 1011385751 219751424 974917636 974917636 478155845 482865636 734493948 734493948 231143101 748904960 748904960 773171144 773171144 658946920 23353960 994304060 994304060 844251267 1044492430 1044492430 876992517 876992517 412293808 889245763 889245763 561123021 754257088 754257088 564084288 564084288 282116802 545149059 545149059 271846146 686506176 847197395 847197395 362755407 122558520 122558520 843073767 843073767 1043591967 1043591967 901354612 600051848 663099513 663099513 228872496 849760432 990792921 990792921 921846736 921846736 859445043 859445043 824915235 824915235 584129218 284558721 763560762 763560762 565774496 811082467 903007544 903007544 371416144 396425050 396425050 393156992 265584931 828459773 828459773 541139073 536879232 606863360 606863360 662487088 691584417 691584417 672401925 977281685 977281685 939862023 423723395 2793728 10820352 10820352 10464704 12607424 12607424 12592128 9175744 544926913 550820481 681405124 681405124 547307073 537579008 474190986 505798660 505798660 938708537 1053912894 1053912894 621956744 349999723 604672201 609841227 609841227 80918080 613532170 613532170 948110046 948110046 794887666 794887666 865813669 865813669 304985611 269175767 440715414 440715414 311593316 224011400 25826208 25826208 25895552 89364192 91247872 91247872 5444608 5973184 24709440 24709440 14750976 35718528 55190928 55190928 65061360 65061360 52151344 52151344 23998176 54140112 54140112 2770947 43572354 197052083 440137494 455161288 455161288 346514484 613982754 948446383 1028195399 1028195399 874850571 874850571 276891944 625095730 625095730 537531416 364120968 360187818 361816544 361816544 352682962 352682962 405016102 405016102 298723816 323193734 323193734 437782384 437782384 419694630 299535519 1017102051 1017102051 895664946 895664946 560803072 657508251 657508251 319292689 600909674 1070024814 1070024814 642468124 651827403 693532888 798089853 798089853 605499989 508537918 508537918 470931978 274129166 225646296 261771996 261771996 542199808 542199808 23253408 51524640 290581272 337640970 808764952 808764952 503390238 503390238 491528382 473775212 503721791 734872325 1049462669 1049462669 948451140 948451140 959103138 959103138 760863625 796959009 796959009 814269507 814269507 816050433 816050433 413559212 214044778 588426148 706949397 921844189 921844189 655674273 899609140 899609140 977825262 977825262 751375496 974101091 974101091 451810755 197966400 449769042 555459203 555459203 874544169 874544169 866982865 866982865 912914704 1067926525 1067926525 1025093214 621854888 613016685 613016685 403252230 403252230 548251910 675742657 675742657 674683653 341705738 341705738 959972096 959972096 956826663 688786547 690227493 690227493 406063878 977117958 977117958 976799511 807978499 455327763 321647922 322357780 322357780 193760796 193760796 67707912 423961888 470387186 470387186 268562888 272684192 313288672 368381016 369236320 373692570 373692570 296129208 127444528 30698336 49004736 78058168 116735424 116735424 99089128 16103488 95112204 221613224 406970638 459877790 459877790 299107490 299107490 168892432 304031796 304031796 152333796 426195366 426195366 166454306 202187884 435028573 941753041 941753041 881590111 919072778 919072778 588386865 832596288 832596288 469871351 779724796 779724796 920986467 920986467 282117109 282117109 426109350 426109350 555486944 555486944 379062560 146936004 702955892 757335491 757335491 739419204 977117911 977117911 311501394 477628302 843580189 843580189 374336122 256718168 396435666 396435666 0 101221714 278954866 279426160 303597658 303597658 382482520 382482520 320080096 306448386 362415872 362415872 83504072 271259144 271259144 96765216 96765216 87244832 126561616 126561616 44774736 26249328 34338304 50808608 50808608 26019840 205587552 219499212 219499212 223344740 223344740 151372916 197942128 197942128 102413380 83558688 83548104 113391320 113391320 110706752 100373416 397886024 397886024 321647922 321647922 372470202 372470202 138434224 387150546 387150546 391788210 391788210 268574730 362373330 436842056 436842056 185866241 722991669 722991669 967892997 967892997 628097512 628097512 404174051 467867996 992814534 992814534 430794899 834927096 834927096 627368072 178389720 138520004 237008218 423575334 423575334 698698508 698698508 577905376 577905376 190916021 930845354 930845354 270021353 941705236 941705236 52882355 289818934 302436886 422712102 422712102 405195296 84120585 961800655 961800655 473307918 354554154 354554154 629170272 629170272 344045596 369320514 369320514 272125458 45178896 434063888 442547030 442547030 274901888 274901888 269601600 467720896 573664751 573664751 490373036 249047776 579090056 611198865 611198865 552213392 73709058 9361674 276840514 276840514 23203032 128851320 400433082 914102986 914102986 357329050 362365186 362365186 809678027 809678027 1019842803 1019842803 1015759937 1015759937 138507328 37822608 42016848 880880256 880880256 42517584 42517584 42483712 14864832 93772608 93772608 35050064 126507256 126507256 109625088 120828472 212905316 212905316 110761560 769740013 769740013 232016332 232016332 140977172 140977172 262688112 262688112 747354420 747354420 654721593 654721593 625018105 625773280 674534713 674534713 226110697 774645852 774645852 549940864 549940864 966657743 966657743 532203390 757613139 1041694800 1041694800 1016543823 629944557 370682971 559675051 967284128 967284128 947961927 597219684 48907026 157146896 157146896 151036928 403058768 403058768 334286322 323167376 323167376 297896290 270919024 272445186 387609354 387609354 353633152 526721960 526721960 517022430 948044868 967317408 967317408 966542724 301291090 301291090 166839152 558564965 680721992 769875949 769875949 755143337 768116869 768116869 665681260 665681260 647289596 647289596 288701168 118862212 56181904 36052864 13708864 13708864 74499104 87374632 87374632 59245680 249959376 249959376 33953808 512630864 512630864 155606082 130146552 92606852 92606852 370421664 370421664 232467342 495561760 495561760 290505378 308207250 308207250 332663538 415506678 415506678 55710384 373448808 373448808 1037156566 1063853143 1063853143 795807663 708652237 290163327 255729468 30223584 78413018 330227058 332374400 825629475 868011265 868011265 581310801 542655568 171217044 84865520 114463528 443992806 443992806 135461056 262114320 262114320 435003476 443362710 443362710 443352454 436209940 529531573 862100127 862100127 281160483 927020096 927020096 103429387 34153488 845980944 845980944 617126561 617126561 839140368 843351170 843351170 574673129 574673129 322138134 430534950 430534950 164920594 303344722 303344722 311249426 311249426 47785680 175831824 175831824 139021568 139021568 6814080 6814080 23166112 543675520 543675520 23151152 41055792 161621796 161621796 89837192 51992448 709838837 709838837 959796780 959796780 604147846 513866330 513866330 443614240 287128936 996394715 996394715 843563986 799370988 799370988 392450570 131731560 131731560 48465168 437677882 437677882 126880848 2560 269623296 271790594 271790850 470902056 470902056 336147756 461435648 461435648 12109632 36208704 57517680 57517680 25250720 35589776 36753696 52470960 52470960 50760752 62401600 62401600 162488208 163295376 193097428 193097428 180168704 302123776 305535762 305535762 149873156 135388612 135388612 269677064 269677064 135584268 202820100 202820100 17842688 25993354 365817066 365817066 926958714 926958714 379667416 379667416 313394048 47724744 43210808 36186128 53077296 125450120 125450120 312480848 342147328 342147328 340035722 282492954 108814152 68422152 10096136 379617664 385564918 459875766 459875766 992478519 992478519 945815703 693504643 756232232 756232232 169691268 315998998 315998998 679045578 679045578 644399745 620995848 320897488 392716352 392716352 240136668 240136668 141500396 139534980 136199300 1044820867 1044820867 927515835 927466683 927466683 773097995 773097995 255926460 805371912 805371912 714400476 850177993 850177993 169717639 104593176 104593176 109841496 599915280 599915280 565560241 72567504 72567504 4296832 35546040 113818056 113818056 161727340 161727340 101887720 176357364 176357364 96548584 84653000 84653000 91397816 280258450 280258450 130891480 376130410 376130410 274485508 376887578 376887578 309717906 452323356 452323356 346781264 347245144 347245144 286261768 286261794 341901344 341901344 291701130 274862466 271778096 271778096 236257324 180376184 282558680 282558680 180522622 164361444 111816928 6362368 175113809 753570247 1019249103 1019249103 734048469 1003090557 1003090557 768861717 658628692 878932028 878932028 158309737 158309737 358163256 376639216 376639216 107020896 107020896 101327002 353444394 456655742 574619925 1060241586 1060241586 741229625 28697744 652338080 652338080 780175937 780175937 683957261 742817984 742817984 220602628 136714500 21180576 21248128 21248128 4343040 4343040 2880768 2880768 152594764 152594764 135798472 135798472 239752752 239752752 142554624 133577148 129028648 425138720 425138720 662529275 788781465 828551497 923671611 923671611 690620702 166337082 121839188 640944056 640944056 552253917 631236560 631236560 102794256 186236962 437855766 437855766 437839382 826332852 826332852 608604161 537057417 708880000 710485781 710485781 706236564 342045066 887789104 1057198989 1057198989 1014055118 1014055118 389358136 35400384 46736592 66394321 600057777 600057777 561653329 594721265 932549107 932549107 892812857 544056129 402504555 514578565 944589915 944589915 946303276 946303276 218552364 459531670 986743564 986743564 762600296 61940592 45130592 567673641 567673641 621282345 621282345 671488555 671488555 218813484 950984556 950984556 884656045 884656045 857735475 699271878 802474665 802474665 400297714 825372289 825372289 965314640 965314640 860671155 902595163 902595163 300970801 575759386 628790370 628790370 596791838 803478134 803478134 576537233 979683251 979683251 514645313 757631390 757631390 679683682 734584283 734584283 734493948 734493948 569158912 569158912 208066908 773171144 773171144 658946920 926277481 994304060 994304060 844251267 486756911 457646212 252123202 412293808 412293808 543685537 543685537 786866757 786866757 752834976 564084288 564084288 282116802 349192200 349192200 346479240 813587394 821300163 821300163 24136003 50513200 50513200 109744160 193619819 1043591967 1043591967 901354612 457706756 145527862 228872496 228872496 98965992 139238506 935369124 935369124 750814232 750814232 650827476 650827476 630379113 632476521 632476521 763560762 763560762 565774496 811082467 903007544 903007544 86080792 86080792 20411392 305069184 305069184 828459773 828459773 541139073 536879232 606863360 606863360 830072874 830072874 691584417 672401925 977281685 977281685 939862023 174994323 2793728 279809472 279809472 275827586 14173762 11474816 11474816 13582080 16667776 550820481 681405124 681405124 547307073 537579008 474190986 505798660 505798660 938708537 1053912894 1053912894 841128865 841128865 624745347 609841227 609841227 37790427 613532170 613532170 948110046 948110046 794887666 794887666 865813669 865813669 304985611 269175767 440715414 440715414 311593316 24907680 25826208 25826208 30487552 30487552 20182240 26917984 27603584 27603584 15808256 15808256 14819584 14948800 55190928 55190928 65061360 65061360 52151344 52151344 23998176 67084272 67084272 37382976 52532768 197052083 440137494 440137494 138021644 205783352 205783352 948446383 1028195399 1028195399 874850571 874850571 289805634 281964576 281964576 364120968 364120968 360187818 86045538 343729568 352682962 352682962 406737382 411752262 411752262 44319524 44319524 159709552 405549452 405549452 299535519 1017102051 1017102051 895664946 895664946 560803072 657508251 657508251 319292689 600909674 600909674 364454641 447264132 447264132 693532888 798089853 798089853 756395256 756395256 718861893 571921151 571921151 898886250 898886250 1016070735 1016070735 542199808 23253408 51524640 290581272 337640970 337640970 305692192 271648778 428542988 428542988 473775212 503721791 734872325 1049462669 1049462669 948451140 948451140 959103138 959103138 760863625 796959009 796959009 814269507 814269507 816050433 816050433 413559212 36010256 588426148 706949397 921844189 921844189 383789312 846979280 846979280 824245025 227207645 751375496 974101091 974101091 451810755 197966400 449769042 449769042 236145856 341401616 374916762 374916762 847915547 847915547 583395537 1025093214 1025093214 621854888 1057539628 1057539628 491268257 412356336 412356336 313858952 81795208 809783685 809783685 1018186694 1018186694 907843151 942284545 1000841232 1000841232 858309939 436299045 977117958 977117958 976799511 807978499 455327763 321647922 319470052 319470052 121161528 191366232 420032652 420032652 470387186 470387186 268562888 272684192 313288672 368381016 369236320 373692570 373692570 296129208 127444528 33978848 49004736 78058168 116735424 116735424 89445024 90577320 90577320 174265738 406970638 459877790 459877790 299107490 299107490 135398934 381619270 481379470 481379470 426195366 426195366 393012020 211498572 435028573 941753041 941753041 881590111 919072778 919072778 810550144 1006633377 1006633377 469871351 779724796 892628842 920986467 920986467 718818876 327209382 426109350 442664542 508039572 508039572 903222294 903222294 702955892 757335491 757335491 261868860 977117911 977117911 973993354 996736413 996736413 843580189 193739544 193739544 109060160 66135632 66586608 113771304 113771304 279426160 279426160 270919946 382482520 382482520 275542786 84876458 366943338 366943338 84155496 271259144 282764384 299334272 299334272 87244832 126561616 126561616 30809632 30809632 33864512 43979424 116536624 116536624 205587552 219499212 219499212 223344740 223344740 151372916 197942128 259917396 259917396 172104652 172104652 316822730 316822730 92951088 276645024 638456589 638456589 188254866 626056889 626056889 138434224 138434224 168481924 886839321 886839321 391788210 349373122 362373330 954463237 954463237 558596864 200865729 148088113 724048706 724048706 628097512 628097512 631933904 660528825 992814534 992814534 417934647 121770168 121770168 159514624 159514624 163048712 237008218 423575334 423575334 698698508 943273133 943273133 996737949 996737949 930845354 930845354 913988096 246116982 710343557 710343557 561518592 561518592 753142221 1012927469 1012927469 793378989 793378989 600310213 681051745 681051745 585111625 447004729 1072060554 1072060554 613731102 369320514 272125458 43910402 434063888 442547030 442547030 418095392 139148304 403227654 403227654 573664751 573664751 490373036 249047776 579090056 611198865 611198865 658057577 658057577 772850205 772850205 276840514 604505164 604505164 543168145 970012598 970012598 811675778 811675778 362365186 809678027 809678027 1019842803 1019842803 1015759937 1015759937 648527193 46738577 629281192 629281192 904478352 904478352 866134184 68559906 45429504 374241440 374241440 317875034 317875034 338041098 338041098 333473912 333473912 432509113 1055052255 1055052255 860918636 42143168 42143168 140977172 637538576 637538576 262688112 747354420 747354420 654721593 705426092 705426092 721446521 721446521 661791416 661791416 774645852 774645852 319204055 513589642 966657743 966657743 532203390 757613139 1041694800 1041694800 1016543823 629944557 370682971 559675051 967284128 967284128 947961927 597219684 48907026 157146896 157146896 151036928 419660882 419660882 394401162 244128150 174991538 114947288 185617940 422360400 422360400 387609354 539305472 539305472 526721960 517022430 499179282 607389654 607389654 1062766112 1062766112 318813194 318813194 499196638 499196638 442157624 392591290 474988042 474988042 525911742 525911742 363350206 282589890 288701168 288701168 71776736 56181904 36052864 13708864 13708864 10238464 10238464 64553472 64553472 23593728 17568128 33953808 512630864 512630864 206517414 188812518 129569912 274320176 370421664 370421664 304341152 370709184 370709184 115048128 115048128 70743184 83237832 336927168 336927168 57672480 340007600 340007600 717556768 1063853143 1063853143 795807663 683412637 580985169 580985169 413499431 590128432 590128432 406380470 406380470 23206176 23206176 166380224 166380224 152308260 204256552 204256552 200068576 132275320 13933296 471465992 471465992 404362758 67114510 279277220 279277220 80927716 529531573 862100127 862100127 281160483 281160483 268900459 2189760 448512 887779072 887779072 898575514 898575514 859894840 859894840 826646705 826646705 290145888 322138134 430534950 430534950 226955948 259930492 259930492 679513104 713080917 713080917 720069459 979254800 979254800 440155348 680941825 943536448 943536448 539779713 536944641 4244736 6381568 6381568 89837192 89837192 51992448 121881900 174798228 409393328 409393328 283904736 283904736 443614240 443614240 287128936 442115422 442115422 44484864 36494288 392450570 392450570 131731560 131731560 48465168 486720323 1055802315 1055802315 929287873 493584783 493584783 428343602 470902056 470902056 336147756 567545385 795482464 795482464 723519573 546726560 164075984 25250720 58333680 58333680 36753696 16515616 26717792 62401600 62401600 162488208 163295376 193097428 298724086 298724086 448530672 448530672 342543768 342543768 463505594 463505594 372286496 744425921 744425921 899596288 899596288 697107618 286384674 365817066 858286930 926958714 926958714 572818922 572818922 609683537 609683537 647937040 811152074 811152074 343425610 343425610 312480848 312480848 125862008 375390290 375390290 130827584 401137090 401137090 379617664 385564918 459875766 589825820 992478519 992478519 945815703 693504643 756232232 756232232 402788358 315998998 315998998 1014501524 1014501524 644399745 620995848 320897488 392716352 392716352 363398578 356072360 356072360 306653312 364652136 1044820867 1044820867 927515835 927466683 927466683 773097995 773097995 69928924 281162329 513623600 714400476 850177993 850177993 623639489 942744327 942744327 947000199 947000199 599915280 565560241 591035825 591035825 555630200 657388304 657388304 34898176 161727340 161727340 151014624 176357364 176357364 96548584 84653000 84653000 91397816 186885108 186885108 184635944 205522048 205522048 559733821 559733821 423155126 609795775 609795775 306166792 306166792 268435180 264241800 109634674 222422538 341901344 341901344 291701130 274862466 271778096 633974819 633974819 476148514 617227833 617227833 260064222 235405620 182468724 182468724 408944984 753570247 1019249103 1019249103 734048469 1003090557 1003090557 768861717 658628692 878932028 878932028 158309737 158309737 358163256 376639216 376639216 107020896 107020896 84740888 236402952 236402952 574619925 574619925 741229625 741229625 267986956 652338080 652338080 780175937 780175937 683957261 742817984 742817984 134659200 134659200 21180576 91186824 91186824 207172096 207172096 134463592 5064832 167773920 167773920 135798472 135798472 159860832 159860832 142554624 135579676 135579676 421815776 421815776 411247168 363406698 572015306 593617329 593617329 387257472 302261856 121839188 640944056 640944056 552253917 631236560 631236560 659083260 40992 16900128 21078048 21078048 21045408 67404288 67404288 151077792 151077792 203505988 486040652 486040652 342045066 467974502 467974502 395054178 395054178 389358136 389358136 87032416 61422368 110312208 600057777 600057777 561653329 594721265 932549107 932549107 892812857 900152683 900152683 579213656 944589915 944589915 755740923 853895485 853895485 738725933 738725933 688121096 74473864 74473864 68396416 567673641 567673641 621282345 621282345 671488555 671488555 218813484 950984556 950984556 884656045 884656045 857735475 699271878 500208544 500208544 400297714 180429956 180429956 965314640 965314640 860671155 805662402 805662402 319039490 373464211 744174500 744174500 623379753 557838375 711992000 711992000 979683251 979683251 514645313 757631390 757631390 525341585 734584283 734584283 616789184 616789184 569158912 613396440 613396440 799927677 801483821 922534050 926277481 926277481 560123911 560123911 458228413 457646212 352585770 899017769 899017769 543685537 543685537 786866757 786866757 105272112 62576496 62576496 62002032 750161935 750161935 346479240 813587394 821300163 821300163 345136810 770766696 770766696 821462313 821462313 607146896 397071738 300195280 300195280 237903032 762862400 762862400 682022960 854204286 935369124 935369124 750814232 750814232 650827476 650827476 630379113 632476521 632476521 600386969 554746960 54098752 62695856 303170048 340486434 340486434 520597562 520597562 349117784 349117784 140619344 450153174 505186318 505186318 416025798 473482178 830072874 830072874 335579200 335579200 541368516 784613557 784613557 729756291 729756291 414089600 414089600 275827586 172376660 147458896 37656528 169563092 169563092 16667776 147335332 147335332 348423136 348423136 273894120 371333120 371333120 633748288 633748288 584094704 841128865 841128865 624745347 595888953 28201233 122880 10568704 216055808 216055808 227176672 505550156 520877118 520877118 209772666 186197556 186197556 63387888 194762752 194762752 135767684 19014144 32530808 117031672 117031672 110265368 122319000 122319000 69287216 118948144 118948144 86053312 121708592 121708592 17066112 48825522 48825522 66141488 166574470 451813142 451813142 432416662 448341846 719578578 719578578 978184663 978184663 280916949 205783352 205783352 214549564 241197176 344834242 1032759731 1032759731 289805634 631526736 631526736 613391824 6426752 19554560 19554560 49354560 49354560 32162854 406737382 411752262 411752262 334627760 60103122 314687696 405549452 405549452 178706772 470754136 470754136 122571448 351460040 351460040 353675864 353675864 133324752 235529244 294046096 312562016 447264132 447264132 317318610 60319250 283863414 756395256 756395256 718861893 571921151 571921151 898886250 898886250 1016070735 1016070735 829645859 829645859 875297419 875297419 70390536 877139843 877139843 456730422 456730422 261569148 261569148 369203284 369203284 269124085 356297858 914869779 914869779 539804953 539804953 292029858 155764998 671876101 671876101 819409537 819409537 424559100 527109804 527109804 155006896 155006896 423300384 423300384 383789312 382019802 768362530 768362530 688162981 689513485 689513485 531967798 531967798 398532858 582635156 1065353327 1065353327 861195029 861195029 355795891 298578171 622014186 622014186 633924696 633924696 85272761 1057539628 1057539628 952451414 577104273 773849373 773849373 273249731 952289488 952289488 1018186694 1018186694 907843151 942284545 1000841232 1000841232 858309939 809328658 626912568 787866791 787866791 761286479 742687777 652068477 629491776 285321780 95164308 191366232 420032652 420032652 131913746 90503552 90503552 80217288 80217288 91490800 274931970 274931970 626306193 626306193 63809352 537577041 537577041 588068769 832921600 890634579 890634579 822469784 90577320 31499432 111757424 111757424 77950248 58878280 43302960 64638642 381619270 481379470 481379470 322251570 393012020 393012020 211498572 420909642 420909642 282008274 310849250 957051696 957051696 810550144 1006633377 1006633377 283410594 546671459 892628842 901517163 995529920 995529920 327209382 282116802 442664542 508039572 589044604 903222294 903222294 697717490 697717490 254604924 261868860 288739368 973993354 973993354 996736413 996736413 510731666 510731666 193739544 337715594 337715594 119246960 119246960 113771304 303933968 303933968 341562882 341562882 355495210 355495210 84876458 366943338 366943338 84155496 288764032 288764032 299334272 299334272 583586497 583586497 22545568 599664705 666579432 666579432 576194193 116536624 643828464 643828464 608971705 612893769 653264784 653264784 13402672 10258644 259917396 259917396 181540416 181540416 316822730 316822730 15214016 404915563 900223238 900223238 188254866 626056889 924045502 924045502 784431103 223204564 886839321 886839321 387857970 349373122 349373122 954463237 954463237 558596864 200865729 709112757 709112757 578161569 600841593 600841593 631933904 660528825 660528825 642905593 759941161 759941161 677515344 677515344 151909416 259281108 259281108 249356944 249356944 134364292 943273133 943273133 996737949 996737949 615069426 913988096 913988096 246116982 710343557 710343557 561518592 561518592 753142221 1012927469 1012927469 793378989 793378989 600310213 681051745 681051745 585111625 534121178 1072060554 1072060554 613731102 363121002 363121002 268858384 310974226 440462614 440462614 418095392 139148304 403227654 960279015 960279015 726262965 726262965 577692717 135010692 12847296 105163976 658057577 658057577 772850205 772850205 198780660 604505164 604505164 543168145 970012598 970012598 811675778 811675778 173741440 42468672 42468672 478991858 803592684 803592684 648527193 1028216510 1028216510 749941581 629281192 904478352 904478352 866134184 99791592 92139432 374241440 374241440 317875034 317875034 338041098 338041098 333473912 333473912 432509113 1055052255 1055052255 860918636 579474513 189956157 623977257 637538576 637538576 35786761 90702664 97067432 646851777 705426092 705426092 721446521 721446521 661791416 661791416 714084028 714084028 319204055 248863364 318698180 486257236 486257236 479627398 479627398 246507804 511705360 511705360 168356700 79542400 153555872 211287628 225928672 225928672 378794808 378794808 91943690 91943690 419660882 419660882 394401162 244128150 210109788 103555392 203884612 422360400 422360400 261372060 712051680 712051680 668342833 499179282 499179282 607389654 607389654 1062766112 1062766112 318813194 318813194 499196638 588425273 588425273 235589740 769680506 949592065 949592065 525911742 456840220 406643094 1045823748 1045823748 561063476 186798224 3330048 5372672 6817152 76519200 99673784 99673784 64553472 236016640 236016640 112080716 67581960 206517414 206517414 188812518 458064100 487884802 487884802 485166738 407577478 370709184 370709184 253473984 115048128 70743184 83237832 336927168 336927168 57672480 400939840 400939840 278029884 282980034 377840960 706045020 706045020 681152211 580985169 508101448 590128432 590128432 586175312 850768001 850768001 807358977 686473760 686473760 65118228 204256552 204256552 407917126 407917126 135739908 471465992 471465992 434718800 456783190 456783190 457768222 499570926 507562472 507562472 237294464 237294464 77649280 48910424 2189760 448512 887779072 887779072 898575514 898575514 859894840 859894840 826646705 826646705 914680975 914680975 247628956 872960219 872960219 259930492 259930492 679513104 713080917 713080917 720069459 979254800 979254800 440155348 815437063 943536448 943536448 687982085 687915045 550175781 549482945 734012180 764610925 764610925 572338192 724147057 724147057 791067816 902007942 902007942 100278700 433397268 433397268 184687986 997659485 997659485 1012060815 1012060815 840068176 240369088 131073128 131073128 121376568 486720323 1055802315 1055802315 929287873 493584783 493584783 428343602 378610266 142809114 2097408 567545385 795482464 795482464 723519573 546726560 164075984 120900408 83149808 58333680 39371968 39371968 18604688 863232 68608 10849536 25235456 139006578 298724086 298724086 448530672 448530672 342543768 409873668 463505594 463505594 874645844 910952343 910952343 899596288 899596288 697107618 286384674 190441086 858286930 858286930 612401970 612401970 572818922 609683537 609683537 647937040 811152074 811152074 343425610 343425610 56239632 80740768 125862008 375390290 375390290 130827584 401137090 401137090 109756680 109756680 59245680 589825820 781715037 781715037 540608365 958663330 958663330 441107600 402788358 138485892 138485892 1014501524 1014501524 390160652 390160652 310445056 128483520 363398578 418981830 418981830 356072360 306653312 364652136 364652136 523666328 523666328 491052594 491052594 281018608 281018608 651074650 734058505 734058505 513623600 738011502 738011502 623639489 942744327 942744327 947000199 947000199 407900417 198893712 591035825 591035825 690264637 690264637 657388304 140678208 661320568 710461077 775538304 775538304 130335520 130335520 24298304 24298304 81891788 281282914 281282914 184635944 403456534 403456534 559733821 559733821 423155126 609795775 609795775 188902632 268435180 268435180 109634674 109634674 222422538 375399066 375399066 124822416 141829852 304775224 633974819 633974819 476148514 745488401 745488401 361270846 235405620 340821160 340821160 408944984 408944984 371925264 303038744 303038744 268620296 118018600 118018600 112736088 130183424 132243960 132243960 90912168 90912168 95524936 95524936 30673632 27599744 128138168 236402952 236402952 165946440 86127456 204231736 309663206 309663206 267986956 428606570 428606570 492575468 492575468 356638890 356638890 348889128 211762596 220861740 220861740 205090916 207172096 207172096 134463592 5064832 167936128 167936128 134242432 177634368 177634368 159860832 144494148 144494148 204213516 258680268 411247168 738557455 738557455 572015306 593617329 593617329 302261856 302261856 471939854 471939854 343287584 502990764 502990764 570069652 659083260 220013512 220013512 704303032 704303032 661263801 209663745 192306948 778230488 778230488 89831264 94443400 199336272 218497094 467974502 467974502 395054178 395054178 329255952 235016532 235016532 154211108 145302852 243841960 245726124 245726124 351887898 806750219 806750219 328409610 900152683 900152683 640470508 896313705 896313705 814148608 853895485 853895485 738725933 738725933 688121096 631750584 249136464 249136464 72929776 593038600 606975673 606975673 209969189 961645320 961645320 824714119 497586984 177783286 321439026 443176818 461130990 575459759 575459759 78255432 287780179 656408889 656408889 1064379327 1064379327 1024197700 1024197700 365415610 764109700 764109700 744174500 623379753 982268435 982268435 711992000 651179523 747511824 747511824 906853969 906853969 476689433 329388402 329388402 17302560 127933584 127933584 613396440 613396440 799927677 801483821 922534050 922534050 491806996 560123911 560123911 552634011 352585770 352585770 899017769 899017769 385231576 385231576 279569730 595150256 595150256 64513137 148579430 199484900 750161935 750161935 280283970 213137928 408165120 408165120 345136810 770766696 770766696 821462313 821462313 607146896 397071738 300195280 300195280 237903032 762862400 762862400 682022960 854204286 854204286 768366002 233753518 233753518 767821544 767821544 767443789 767443789 547233345 281731194 281731194 70044584 91540744 274335360 340486434 340486434 520597562 520597562 349117784 457479975 960554677 960554677 693422787 619823688 712769544 712769544 550783880 841755230 841755230 987572861 987572861 942787210 784613557 729756291 748160589 748160589 546374660 337117768 172376660 147458896 37656528 169563092 169563092 16194688 147335332 360604804 360604804 348423136 273894120 371333120 371333120 633748288 633748288 397740256 67594299 52828984 317660056 814587954 814587954 814105089 814105089 476369423 476369423 338099903 369563908 369563908 335992842 169143328 186197556 186197556 63387888 194762752 194762752 140562560 147134720 147134720 117031672 240863004 240863004 123981912 122319000 91888080 118948144 118948144 100927512 216277080 216277080 186650644 138578096 500054824 500054824 166574470 451813142 451813142 432416662 448341846 719578578 812266435 978184663 978184663 804013029 804013029 1028418082 1028418082 1000366227 1000366227 1032759731 1032759731 340536577 631526736 631526736 613391824 32130528 19554560 55053856 55053856 49354560 15845616 10562512 60893696 334627760 334627760 276041856 314687696 314687696 124048696 131389144 301635776 301635776 316221714 351460040 351460040 99739176 99739176 133324752 133324752 294046096 312562016 312562016 317318610 317318610 60319250 283863414 283863414 317440738 317440738 193037953 538319361 626791224 643695553 643695553 553783329 829645859 829645859 875297419 875297419 621164818 877139843 877139843 456730422 456730422 261569148 311188648 311188648 530816716 530816716 380294490 276823114 214628886 103095362 283453890 283453890 115685786 342492248 575536642 819409537 819409537 424559100 527109804 527109804 691902133 691902133 567750016 567750016 368326665 368326665 768362530 768362530 688162981 689513485 689513485 531967798 531967798 407113414 582635156 1065353327 1065353327 861195029 861195029 355795891 298578171 622014186 622014186 700533325 700533325 35401400 158301621 952451414 952451414 640470297 773849373 773849373 273249731 952289488 952289488 881117259 672395975 1045499964 1045499964 1021054671 723591477 809328658 889309223 889309223 787866791 787866791 1027553635 1027553635 1051479288 1051479288 327950944 95164308 131206908 360132352 360132352 313229930 394847512 394847512 335705776 550382001 550382001 364981754 646389978 646389978 626306193 19898808 537577041 537577041 588068769 832921600 890634579 890634579 822469784 91432768 71544960 75104904 134239680 209850444 220448004 220448004 161490176 188158024 188158024 168411656 236529180 236529180 117978556 97068264 499406159 856334293 856334293 580540795 957051696 957051696 827479266 827479266 397595094 120766793 120766793 75022400 79218504 995529920 995529920 682902452 225831852 225831852 618921992 618921992 589044604 106831512 597298376 597298376 243452333 203480284 288739368 658170810 893243059 1063201548 1063201548 779691829 510731666 425341024 337715594 337715594 119246960 119246960 73934728 303933968 303933968 341562882 341562882 355495210 355495210 274216009 274216009 142606404 625978919 625978919 288764032 731482288 731482288 583586497 583586497 22545568 639639588 666579432 666579432 576194193 553911512 643828464 643828464 608971705 612893769 653264784 653264784 114329724 96472680 87874656 79031112 181540416 181540416 55499952 25691168 291784608 404915563 1033111398 1033111398 576581265 576581265 924045502 924045502 784431103 223204564 223204564 206165016 269070346 269070346 67317768 155292128 155292128 5292672 199356480 709112757 709112757 578161569 600841593 600841593 239607541 230048016 262924740 262924740 759941161 759941161 677515344 677515344 226726092 259281108 259281108 444270078 444270078 424801186 344458314 344458314 152708356 152708356 202616844 223136396 223136396 158892174 226546994 529701630 529701630 506911518 329463674 137751300 137751300 173143684 203068444 203068444 143524032 184422688 184422688 534121178 534121178 417618384 288360522 363121002 363121002 341721648 310974226 325138878 325138878 314979636 427851982 427851982 960279015 960279015 726262965 726262965 577692717 109338001 606349824 606349824 546351304 574817729 581169489 581169489 93264248 115528152 350953144 391505034 391505034 397840850 397840850 320814642 419631935 945427311 945427311 507085066 803592684 803592684 245416284 1028216510 1028216510 749941581 45823824 45823824 214042676 214042676 99791592 92139432 58700008 54237648 31321824 46326016 46326016 51697808 51697808 22287296 43419008 49208784 690376868 690376868 579474513 714140353 772667173 772667173 164198105 181178544 258423228 258423228 646851777 646851777 218629356 560562320 792998913 792998913 37888401 408946658 408946658 449361682 449361682 318698180 486257236 486257236 479627398 479627398 203440204 511705360 511705360 141478622 159714532 214706344 214706344 23593472 262724916 378794808 378794808 303970992 303970992 392050256 392050256 285086594 285086594 1023770615 1023770615 203884612 588015222 588015222 573170961 712051680 712051680 668342833 1069582768 1069582768 1017432399 160555620 203499128 203499128 103403528 103403528 9751104 588425273 588425273 402756548 769680506 949592065 949592065 456840220 456840220 406643094 1045823748 1045823748 561063476 186798224 33647520 23287552 23287552 76519200 99673784 99673784 85912616 236016640 236016640 187501492 407731472 407731472 287801358 247802158 458064100 487884802 487884802 485166738 407577478 335565514 443768314 443768314 359320162 359320162 504764602 504764602 223350942 140484308 400939840 400939840 278029884 882375243 986710805 986710805 708766421 708766421 508101448 924110344 924110344 586175312 711381315 850768001 850768001 807358977 686473760 686473760 541200513 753010130 753010130 496632938 407917126 272105522 135739908 478799896 478799896 456783190 456783190 457768222 499570926 507562472 507562472 71315800 71315800 14680512 644391952 644391952 610394505 310553816 338248714 820274481 860175818 860175818 548207625 619523529 878788368 914680975 914680975 247628956 872960219 872960219 214484172 156163448 679044336 697828965 697828965 573247909 167875088 167875088 281563718 815437063 815437063 687982085 687982085 687915045 550175781 549482945 734012180 764610925 764610925 572338192 724147057 724147057 791067816 902007942 902007942 352370730 433397268 433397268 184687986 997659485 997659485 1012060815 1012060815 840068176 240369088 116631200 381817714 381817714 121376568 323121698 388222528 388222528 832198450 832198450 549877905 616749267 887427315 912384411 912384411 373774593 73646400 74318808 93488896 120900408 120900408 113672328 113672328 57953824 72173544 72173544 52817408 52817408 161682320 161682320 142920080 151838096 181817252 181817252 152340804 183246080 409873668 409873668 185685920 874645844 910952343 910952343 608472580 608472580 402933897 1082880 9437760 41975872 43041360 612401970 612401970 608716952 608716952 610094296 610094296 110931073 41436928 46895616 55775520 56239632 80003168 80003168 310378496 388530402 388530402 277398594 36488272 49073616 312656068 442634646 805917911 805917911 677439301 677439301 958663330 958663330 938087931 938087931 478248445 745994549 995207872 995207872 738243592 738243592 305260106 305260106 307757668 418981830 418981830 293484460 736824153 736824153 468331984 468331984 320623660 801245718 801245718 1019707831 1043675385 1043675385 922952271 895514996 967086151 967086151 329101547 556788821 729546147 806341440 806341440 369805022 278663704 620974702 620974702 554487972 690264637 690264637 128547781 442077266 661320568 710461077 775538304 775538304 130335520 225572700 225572700 97010328 232044052 281282914 281282914 79960136 403456534 403456534 272084156 272084156 3848323 203648000 203648000 378148696 378148696 211215968 257630352 357049416 411117280 411117280 375399066 382465520 382465520 304775224 550946739 550946739 271661560 745488401 745488401 361270846 67770250 584581697 584581697 575279306 747808367 747808367 734057373 886727345 886727345 418203477 556481220 661870350 661870350 330962802 322475890 95310826 356290256 374435504 374435504 52437536 52437536 128138168 168771328 168771328 186901312 186901312 326903706 326903706 309663206 224146118 428606570 428606570 492575468 492575468 356638890 356638890 348889128 211762596 220861740 220861740 205090916 143704644 43180048 9965056 9965056 167936128 167936128 145361700 196953824 196953824 170973828 173329044 173329044 204213516 445777518 445777518 738557455 979127949 979127949 481613842 235111545 711988331 711988331 633733865 668865677 966861180 966861180 502990764 427822624 427822624 220013512 220013512 704303032 704303032 661263801 209663745 192306948 778230488 778230488 141755524 57157056 199336272 199336272 158176256 155536100 161222244 161222244 160435200 235016532 235016532 154211108 145302852 18845184 18845184 17784608 16782080 304099874 304099874 60243968 361942904 631751778 640470508 896313705 896313705 814148608 814148608 753727872 682123634 682123634 631750584 631750584 249136464 249136464 538578061 593038600 606975673 781201677 781201677 961645320 961645320 900203462 630245167 808127659 858784563 858784563 730599238 575459759 575459759 509412882 509412882 656408889 656408889 1064379327 1064379327 1024197700 1024197700 487308039 764109700 971284266 971284266 693499459 982268435 982268435 431041748 651179523 747511824 747511824 906853969 906853969 476689433 329388402 875037963 875037963 361502000 361502000 855640163 855640163 328939122 328939122 385513002 484471057 484471057 550209399 552634011 623514539 623514539 672667218 672667218 232993525 933786886 933786886 576840081 595150256 595150256 64513137 148579430 199484900 331532034 403316788 403316788 184620038 134353920 201987084 201987084 148522914 85595688 521636056 521636056 387593608 294309104 42483954 16779272 67371040 67371040 10276416 660741192 664166370 664166370 739134438 739134438 245647919 767821544 951268929 951268929 922136369 922136369 907281674 907281674 92330336 91540744 91540744 291635898 291635898 230440008 388313362 388313362 457479975 960554677 960554677 693422787 619823688 799953344 1046866335 1046866335 841755230 841755230 987572861 987572861 942787210 397763346 545793612 748160589 748160589 546374660 337117768 83494306 83984448 92397672 92418728 92418728 13840512 100215020 360604804 360604804 80717196 160892192 499233319 899834569 899834569 677843596 916717648 1042700364 1042700364 317660056 915530354 915530354 911338377 875521865 476369423 498510820 498510820 369563908 476502282 476502282 675286532 678550213 678550213 11195040 141329796 141329796 140562560 147134720 164045689 797720573 797720573 689673432 689673432 13825056 725860480 788574312 788574312 764362980 583072824 583072824 186650644 138578096 500054824 500054824 259926344 288467484 306778498 306778498 118195458 85644840 812266435 854664851 854664851 804013029 804013029 1028418082 1028418082 1000366227 1000366227 965135823 510402126 340536577 418123736 418123736 297669546 238975990 276801768 365673562 388621626 388621626 336347440 109487056 335548464 335548464 298074914 276041856 276041856 27527520 27527520 10880352 301635776 301635776 316221714 316221714 301892482 12142306 11056208 18727632 50692384 50692384 11468976 20912928 20912928 44588160 44588160 271942546 271942546 329472738 329472738 285383202 285383202 626791224 643695553 643695553 553783329 880872024 880872024 342955450 621164818 621164818 269554688 269554688 336802314 372980754 372980754 311188648 353353730 530816716 1069947135 1069947135 1044925695 744522909 950307256 950307256 296273250 164484038 177715780 582498320 582498320 584119504 584119504 456321060 456321060 691902133 691902133 567750016 567750016 428167942 428167942 298109154 751184906 751184906 722376769 722376769 549478553 1025867253 1025867253 1060120478 1060120478 521139686 195184760 264352017 264352017 254698069 128694072 128694072 700533325 700533325 257435140 158301621 752312873 752312873 640470297 730208373 730208373 52863397 425181249 745783298 745783298 672395975 1045499964 1045499964 1021054671 495001710 912782778 1015884879 1015884879 716254255 716254255 1027553635 1027553635 1051479288 1051479288 327950944 426686032 426686032 204258994 313229930 313229930 394847512 394847512 653053401 653053401 550382001 364981754 646389978 646389978 599990442 923864858 923864858 46242915 174097104 199565540 199565540 715211794 1009009679 1009009679 677476390 742879658 742879658 536893702 569262118 569262118 161490176 473313554 506727198 506727198 403582742 511192064 511192064 163050636 499406159 856334293 856334293 580540795 119669218 831541472 831541472 827479266 826458851 817938627 120766793 75022400 79218504 79218504 682902452 682902452 225831852 461373984 618921992 618921992 741771837 741771837 629409897 763103719 763103719 693093442 693093442 843958467 1038737685 1063201548 1063201548 779691829 425341024 425341024 330310970 353775368 353775368 388406698 388406698 293912096 293912096 303223314 303794762 346177280 346177280 274216009 341448330 341448330 625978919 678664864 678664864 731482288 731482288 190015552 66721776 66721776 639639588 639639588 208670672 208670672 553911512 586104273 586104273 152077332 152077332 264242176 264242176 239879692 96472680 206558132 206558132 161965316 134626896 307777378 307777378 291784608 291784608 1033111398 1033111398 576581265 576581265 593781216 1009078220 1009078220 477196171 1071186105 1071186105 320875746 320875746 280315474 984346773 984346773 732369152 720810084 732022772 732022772 239141936 346310746 346310746 91931428 230048016 262924740 262924740 191515856 153249952 281683632 315671250 315671250 337989898 337989898 444270078 444270078 424801186 363382122 363382122 94901666 84674372 202616844 223136396 223136396 147288232 134229416 308908832 506911518 506911518 329463674 137751300 137751300 173143684 203068444 203068444 157942152 211944768 211944768 19013588 417618384 417618384 72779904 72779904 341721648 341721648 119300650 325138878 438899396 438899396 427851982 427851982 149384430 144890948 10604864 3095808 134233348 134233348 606349824 606349824 546351304 574817729 581169489 581169489 34429377 33818672 21496992 17375360 64841888 325659924 424477718 424477718 419631935 945427311 945427311 984024870 984024870 885402093 885402093 862023255 962725153 962725153 906043419 906043419 880877584 880877584 67109120 69778400 87855842 282173610 296452098 296452098 339138314 339138314 299579112 416786316 416786316 932336479 932336479 827883737 661209929 714140353 772667173 772667173 164198105 181178544 258423228 258423228 562991189 562991189 218629356 222823596 792998913 792998913 722470924 923876698 923876698 899875611 832831516 511045212 511045212 471124494 69728520 203440204 203440204 209748236 209748236 256986204 256986204 214706344 214706344 86249120 262724916 370072952 523132612 523132612 395577536 455742894 455742894 285086594 285086594 1023770615 1023770615 389190705 588015222 588015222 652420674 913971099 913971099 558442394 1069582768 1069582768 1017432399 998121468 998121468 781073780 1058894458 1058894458 495767204 495767204 283685986 461857314 461857314 150598146 135915012 135427072 164995168 164995168 139774596 67125536 67125536 33647520 33647520 23287552 23287552 21349376 31126760 85773864 85912616 105677504 250896612 250896612 407731472 407731472 287801358 247802158 315179794 385654852 413222032 451536342 451536342 455340342 455340342 443768314 359320162 359320162 504764602 504764602 269764612 140484308 273599664 273599664 252404984 882375243 986710805 986710805 1030614282 1030614282 284429003 924110344 924110344 461702306 711381315 711381315 424822369 537093504 537093504 539136962 541200513 753010130 753010130 496632938 520595852 520595852 334215482 478799896 478799896 445385814 277425474 277425474 145134664 541131216 641937561 641937561 577135944 583933137 644391952 644391952 610394505 310553816 338248714 820274481 860175818 860175818 548207625 619523529 878788368 878788368 72588322 75815192 587599377 587599377 512313554 512313554 805382242 805382242 692525073 552387283 841856997 841856997 594598533 594598533 538444944 538444944 37897729 4242432 4532352 34879616 34879616 27527520 34803712 118470952 401460762 401460762 409381892 490786946 490786946 352370730 268699650 311035922 311035922 278671362 353305648 353305648 64365482 40995024 40995024 116631200 381817714 381817714 62555712 323121698 323121698 279483808 832198450 832198450 549877905 616749267 887427315 912384411 912384411 373774593 66519072 127434752 127434752 10886256 78809632 113672328 113672328 57953824 72173544 72173544 63586880 52817408 161682320 161682320 142920080 151838096 181817252 181817252 152340804 57412404 199911376 199911376 443977632 614389898 614389898 438583816 945344142 945586378 945586378 569377736 581444175 581444175 386394492 552852570 552852570 608716952 614203537 614203537 610094296 849048282 849048282 273129618 273129618 34146312 80003168 80003168 299942008 388530402 388530402 335596640 335596640 121899192 312656068 442634646 936923923 936923923 677439301 677439301 540541574 594286666 938087931 938087931 478248445 745994549 995207872 995207872 738243592 738243592 305260106 305260106 302614272 483459778 483459778 293484460 736824153 736824153 468331984 468331984 285695374 801245718 801245718 1019707831 1043675385 1043675385 922952271 895514996 967086151 967086151 151344640 153091620 470901920 470901920 298110082 298110082 278663704 677105920 686892993 686892993 407846022 407846022 88129704 442077266 442077266 69805320 138937672 138937672 96478252 225572700 225572700 127452792 232044052 232044052 68802688 28733920 56495904 259507073 272084156 554612356 693496485 693496485 510109229 397287032 397287032 429716042 444597840 444597840 411117280 411117280 328212534 382465520 382465520 354444768 354444768 223171732 306892392 387450688 387450688 8389376 12583104 584581697 584581697 575279306 823893680 823893680 734057373 886727345 886727345 464230000 556481220 661870350 661870350 330962802 322475890 95310826 356290256 374435504 374435504 266365224 266365224 241172892 204802452 218112808 218112808 252121064 326903706 326903706 514459380 514459380 381622154 181418414 2233344 417370368 417370368 2752768 2752768 2138112 733440 135427316 135427316 160015008 160015008 155390096 9965056 143616864 198486996 198486996 196953824 246743044 246743044 173329044 226493460 226493460 445777518 445777518 420615782 979127949 979127949 481613842 235111545 711988331 711988331 633733865 668865677 966861180 966861180 145542468 427822624 427822624 17318024 88655016 88655016 218702892 218702892 137880936 284572240 587060498 587060498 141755524 17503904 17503904 158176256 474429582 491723054 491723054 472784142 412095744 244187984 151395940 724575605 724575605 687410708 700624512 700624512 179126596 824662208 824662208 818981067 520493631 631751778 747263092 823168599 823168599 777557727 753727872 753727872 682123634 682123634 147815533 35856656 81995376 599266792 599266792 538578061 53971292 781201677 781201677 543696193 900203462 900203462 630245167 808127659 858784563 858784563 730599238 236936144 440928988 509412882 509412882 507646110 507646110 163776578 453051572 453051572 349671102 487308039 487308039 971284266 971284266 693499459 961300903 961300903 975231266 975231266 156287875 830947202 830947202 700092464 600112374 260572284 875037963 1042810143 1042810143 950272149 855640163 855640163 1055602143 1055602143 385513002 484471057 484471057 621768738 621768738 623514539 623514539 672667218 1036393908 1036393908 933786886 933786886 576840081 171747846 572828448 588326912 588326912 289486226 289486226 403316788 457396800 457396800 407449746 4269718 324755858 408150944 408150944 521636056 521636056 632209627 632209627 275175810 858543259 990780862 990780862 697830697 998250217 998250217 894453112 894453112 759613446 682078708 682078708 951268929 951268929 922136369 922136369 907281674 907281674 92330336 106972344 273344288 291635898 291635898 120893464 388313362 388313362 73266988 192415668 192415668 144494148 451612916 799953344 1046866335 1046866335 269580274 322342948 977066274 977066274 376697054 880690102 880690102 520364634 247030273 247030273 577416684 976491595 1058740582 1058740582 527179670 527179670 502012908 502012908 343217816 343217816 404609816 425019716 499233319 899834569 899834569 677843596 916717648 1042700364 1042700364 315737240 1018430748 1018430748 911338377 875521865 756208684 767814543 767814543 621195937 621195937 500322444 675286532 678550213 805647681 805647681 416808230 140736000 403868166 677402692 677402692 797720573 797720573 689673432 788256189 788256189 725860480 788574312 788574312 764362980 583072824 583072824 11449724 25855586 404015622 404015622 259926344 288467484 306778498 306778498 118195458 85644840 126497336 210875760 460048852 460048852 333366482 302695958 101482664 164890416 248645492 510402126 510402126 122245604 418123736 418123736 297669546 238975990 276801768 365673562 388621626 388621626 336347440 461390176 461390176 335548464 328315056 328315056 288888386 288888386 218999148 218999148 292419714 292419714 320738000 320738000 70560618 36018240 144034496 185659076 185659076 152625680 4581504 7797536 17090592 541628737 541628737 49025376 298064066 329472738 548382792 658859602 658859602 303056592 303056592 878957114 878957114 880872024 880872024 312949056 644090265 644090265 636812489 636812489 336802314 372980754 372980754 270952706 353353730 353353730 1069947135 1069947135 1044925695 744522909 950307256 950307256 296273250 308849426 308849426 582498320 582498320 584119504 584119504 350904632 365444698 365444698 324866808 734020580 734020580 576037394 707203401 707203401 751184906 751184906 722376769 722376769 549478553 1025867253 1025867253 1060120478 1060120478 929190422 195184760 202591096 202591096 134994556 128694072 130552320 236061941 570425361 804135101 804135101 373952737 373952737 741220158 741220158 545210241 328229901 794946659 794946659 646483269 76022856 71338528 89442984 1030217186 1030217186 912782778 1015884879 1015884879 111674712 111674712 54036384 308276370 308276370 217556562 232169552 426686032 426686032 204258994 263595656 263595656 24773200 26120857 653053401 653053401 663364984 663364984 581440841 380698760 380698760 923864858 923864858 857626691 857626691 217530459 178645332 715211794 1009009679 1009009679 677476390 742879658 742879658 939857998 955174922 955174922 250313824 473313554 556865824 599531916 599531916 511192064 511192064 163050636 275303490 403623330 403623330 250911716 250911716 831541472 831541472 914358280 914358280 847249491 662708315 323585395 680648806 713148044 713148044 551208147 551208147 646988824 646988824 401398039 741771837 741771837 629409897 763103719 763103719 693093442 693093442 843958467 1038737685 1041088902 1041088902 365241994 365241994 290786314 330310970 371787968 371787968 388406698 388406698 293912096 373966930 373966930 349803728 349803728 346177280 82581250 341448330 341448330 470779392 678664864 678664864 569318391 327526209 190015552 66721776 66721776 651793920 669177049 669177049 127934256 545208088 586104273 586104273 552120337 669534129 669534129 591038448 239879692 63099724 206558132 206558132 161965316 134626896 307777378 307777378 269207818 514771985 619042127 1068018857 1068018857 789154829 761739693 1009078220 1032935729 1032935729 1071186105 1071186105 569091028 581857345 581857345 984346773 984346773 732369152 720810084 732022772 734867285 734867285 725361820 725361820 44353984 44353984 300811827 802691529 802691529 1007419402 1007419402 315671250 315671250 337989898 337989898 222620716 222620716 156418976 363382122 363382122 231709956 478971394 478971394 85199880 85199880 338386276 413907018 521287682 521287682 529624634 529624634 347795850 347795850 219674504 155259140 155259140 157942152 211944768 211944768 411081286 411081286 351848394 368462986 368462986 356651178 27188298 331915210 331915210 438899396 438899396 88289448 6635648 541200513 594280553 625700089 625700089 606651657 605633489 605633489 542207248 542999681 542999681 124701033 86691320 111189248 114806536 401052904 401052904 383686794 383686794 424477718 424477718 403322182 28447728 899262367 984024870 984024870 885402093 885402093 862023255 962725153 962725153 906043419 906043419 880877584 880877584 99021248 84202976 97641192 282173610 296452098 296452098 339138314 339138314 299579112 416786316 416786316 932336479 932336479 827883737 661209929 661209929 582825065 582825065 571683345 571683345 234975701 244580436 568674717 568674717 202361868 778431496 778431496 722470924 722470924 923876698 923876698 899875611 832831516 511045212 511045212 471124494 279668744 279668744 77641792 440682900 440682900 474538828 474538828 110635708 388498416 388498416 379850506 34377738 523132612 523132612 395577536 455742894 455742894 291543498 377103988 757574416 757574416 389190705 237893674 104954384 652420674 913971099 913971099 558442394 558442394 885377080 885377080 998121468 998121468 781073780 1058894458 1058894458 495767204 880887305 880887305 461857314 461857314 310746634 269533698 169733652 448992838 448992838 596970348 887534282 887534282 361749856 122824290 367252712 367252712 353019296 332589848 373609064 373609064 105677504 250896612 250896612 84749352 226576524 226576524 101826792 350815808 350815808 413222032 451536342 451536342 455340342 455340342 280544344 154059776 75884616 453822472 453822472 269764612 486409551 730813125 730813125 726197822 1005252270 1005252270 470132971 1030614282 1030614282 558129862 954584647 954584647 461702306 461702306 289941622 17701920 49986916 971716416 971716416 167975603 161025124 161025124 57672624 520595852 520595852 334215482 301806818 239464166 39653016 33926656 13407496 435932925 541131216 641937561 641937561 581392400 583933137 806168584 806168584 279054793 805339264 805339264 610894115 559957291 268592587 281567512 281567512 311282408 346632836 486152142 515613646 587599377 587599377 512313554 512313554 805382242 805382242 735623109 719389125 841856997 841856997 856299008 856299008 842184484 842184484 151044132 550021156 558181377 558181377 704854596 704854596 681843332 681843332 401460762 401460762 352370730 354609704 354609704 317119854 268699650 311035922 311035922 477754576 477754576 345003136 345003136 320961520 121868352 12218368 11599872 11599872 40894848 40894848 107487360 107487360 36766744 6292368 1049096 67108872 67108872 35692856 128821936 128821936 97890024 127434752 127434752 10886256 79922752 100452840 100452840 17566752 17566752 63586880 63586880 9012224 11956224 11956224 28801888 28801888 13658336 13658336 15767968 15767968 49289776 278135574 459311186 614389898 614389898 193220632 945344142 945586378 945586378 569377736 581444175 645737947 645737947 552852570 919938529 919938529 618018513 618018513 581526609 849048282 849048282 273129618 273129618 64697568 63054736 71352320 305397938 307232802 307232802 335596640 335596640 121899192 316774226 316774226 936923923 936923923 143911509 173691223 409348224 842776974 913835931 913835931 211212296 1021837743 1021837743 694685638 470099982 470099982 959332425 959332425 838864976 838864976 512287820 512287820 23703964 514275678 757281798 757281798 625476777 625476777 508824222 508824222 268723924 444645462 774822238 774822238 673330197 596263040 994583249 994583249 470901920 470901920 434245476 434245476 138969168 677105920 686892993 686892993 558080215 558080215 67108872 67108872 799073904 799073904 775472925 698204264 245696588 69377568 127452792 127452792 59769456 59769456 34291808 28733920 56495904 56495904 16790544 554612356 693496485 693496485 510109229 496050798 496050798 469911058 550040857 550040857 173200020 1057503145 1057503145 300037620 300037620 354444768 922882593 922882593 484110656 1042301233 1042301233 348152268 545051920 545051920 814089746 814089746 823893680 823893680 576243345 405922566 851346674 851346674 561437601 332454977 305153536 187696336 497045756 497045756 227853050 139543940 118868040 266365224 266365224 241172892 204802452 218112808 218112808 252121064 252121064 239214356 514459380 514459380 381622154 473544996 474164168 474164168 435592992 435592992 271236620 228256032 228256032 206548396 135427316 160015008 254813336 254813336 186381876 162458484 198486996 198486996 191290400 246743044 246743044 74836872 226493460 226493460 214578632 247628408 399659230 399659230 480285610 480285610 210791148 324093744 324093744 490089258 490089258 379715952 528879900 528879900 295962978 189825404 51046898 284114370 888781982 978970263 978970263 491097657 284572240 587060498 587060498 276368008 552077220 594413488 594413488 493105432 491723054 696257808 973212012 973212012 346688580 683686726 724575605 724575605 702360162 700624512 700624512 292386180 889334152 889334152 828848547 520493631 571907859 747263092 963385804 963385804 777557727 704955394 449217746 610484360 975832908 975832908 634223800 175773588 599266792 599266792 569347140 96994536 554238368 554238368 543696193 365225630 365225630 287092532 217350318 217350318 340100794 340100794 236936144 178393428 508889364 508889364 507646110 507646110 163776578 453051572 453051572 349671102 390432856 420078630 420078630 478233704 478233704 823432864 823432864 975231266 975231266 433755654 830947202 830947202 600112374 600112374 986445015 986445015 1042810143 1042810143 950272149 283427922 908088662 1055602143 1055602143 869270999 666556281 79857585 621768738 638060032 638060032 491361422 613554608 1036393908 1036393908 915969800 915969800 304876818 171747846 572828448 588326912 588326912 289486226 289486226 53089584 457396800 457396800 407449746 141332096 324755858 408150944 408150944 392873012 774406597 1061306689 1061306689 275175810 858543259 990780862 990780862 697830697 998250217 998250217 894453112 894453112 759613446 682078708 682078708 348397652 436392266 436392266 50454576 50454576 78210848 78210848 106972344 304631856 304631856 124486066 108370816 154748704 236903964 236903964 192415668 192415668 144494148 144494148 680661064 680661064 671488005 314705949 378520596 977066274 977066274 376697054 880690102 880690102 505758272 505758272 247030273 577416684 976491595 1058740582 1058740582 527179670 527179670 502012908 502012908 343217816 427160760 427160760 495901632 495901632 211377772 201394308 201394308 98621551 1044797925 1044797925 696241849 1018430748 1018430748 747331681 756208684 756208684 1053868693 1053868693 621195937 784599565 784599565 768903311 674973035 805647681 805647681 416808230 140736000 403868166 677402692 677402692 566707972 146586080 645948832 788256189 788256189 237676840 237676840 153098584 144912708 216582580 216582580 201070944 201070944 404015622 404015622 242313582 242313582 216931788 204953672 477575588 477575588 436671528 494306328 494306328 409638644 409638644 340448394 353391800 353391800 228076344 146343788 111677052 19997472 57538556 211163724 268168624 268168624 424960004 424960004 315975922 315686998 315686998 461390176 529580886 529580886 453149428 453149428 571547793 950871539 950871539 606670222 292419714 292419714 708867159 708867159 891527514 891527514 721089300 721089300 185659076 552779040 552779040 15477093 17090592 545691137 545691137 561063168 561063168 298064066 548382792 658859602 658859602 362307592 362307592 878957114 878957114 538444800 312949056 312949056 644090265 644090265 636812489 636812489 428117070 126645552 93704480 243845616 298913448 298913448 148823680 315923538 315923538 78187416 269839064 275318274 275318274 308849426 308849426 282530384 507586345 790120219 790120219 910880952 910880952 365444698 583935973 734020580 734020580 664929652 707203401 707203401 428153391 679600197 679600197 184027781 449736086 449736086 139195416 113320152 929190422 929190422 193510720 193510720 212845748 213958860 213958860 344719682 344719682 570425361 804135101 804135101 373952737 579939848 741220158 741220158 545210241 872624201 872624201 794946659 901367322 901367322 983652936 983652936 1030217186 1030217186 747185229 878210170 878210170 650438807 1012477825 1012477825 811149687 1041859480 1041859480 349184194 280540744 351451084 351451084 226772988 358549128 358549128 128659888 128659888 101326912 663364984 663364984 581440841 717675726 717675726 807935699 807935699 857626691 857626691 217530459 178645332 302033222 302033222 149529604 118241536 453122384 512703582 939857998 955174922 955174922 250313824 250313824 556865824 599531916 599531916 164185636 165433828 185269812 185269812 403623330 403623330 250911716 663299172 663299172 597980314 914358280 914358280 893522091 823165056 827376291 827376291 713148044 1063379391 1063379391 1020315213 791274813 646988824 450082414 530220960 530220960 231620656 403164046 516594536 516594536 459473344 459923910 459923910 174072028 91948318 365241994 365241994 290786314 290786314 371787968 371787968 371269914 290495464 295439970 373966930 373966930 349803728 349803728 383520477 506466503 506466503 417206465 955253511 955253511 949157831 806710933 603858129 169390769 699215205 699215205 692007057 692007057 669177049 579932289 84542689 50475592 630928984 630928984 669534129 669534129 591038448 33851024 92111360 95217888 95217888 33037248 18094528 13372544 25214640 25214640 514771985 619042127 1068018857 1068018857 789154829 761739693 761739693 1032935729 1032935729 757334831 280271635 569091028 581857345 581857345 575353856 5459600 35538564 35538564 175185956 734867285 734867285 725361820 725361820 261366301 753568940 753568940 802691529 802691529 1007419402 1007419402 42205200 8652864 8652864 136331940 136331940 17351712 135039012 135039012 231709956 231709956 478971394 478971394 153923724 206415148 338386276 413907018 521287682 521287682 529624634 672256073 672256073 818387456 818387456 167777385 798491773 965269063 965269063 649905785 595991394 1005197823 1005197823 831555428 368462986 356651178 285742056 331915210 331915210 92410448 92410448 109917528 396887162 541200513 594280553 625700089 625700089 606651657 605633489 605633489 646730440 646730440 639987268 717152085 717152085 659103289 659103289 643749012 643749012 694258582 957154483 979699988 979699988 403322182 28447728 342495371 539493633 690753761 690753761 806174199 806174199 965027934 965027934 681060473 178267408 136450308 351269803 665867641 922300971 922300971 628706089 628706089 899157699 899157699 877724296 2619648 17252640 163359285 707939921 707939921 729475037 785983197 785983197 643933412 567498624 571683345 571683345 234975701 244580436 568674717 789118980 789118980 778431496 778431496 600576120 600576120 177882180 177882180 146850752 403117270 403117270 138158742 419545764 419545764 279668744 210028620 440682900 440682900 474538828 474538828 535153906 535153906 395897648 482102436 482102436 342738792 68021256 30931680 213689572 217922934 291543498 377103988 377103988 142655556 142655556 784968804 784968804 578364701 1003222263 1003222263 484245123 390644922 885377080 943786024 943786024 703356344 703356344 235864264 397163016 397163016 880887305 880887305 944213197 944213197 780191890 780191890 323490047 448992838 448992838 596970348 887534282 887534282 361749856 361992962 367252712 367252712 353019296 505866156 505866156 789095649 789095649 939560342 939560342 84749352 1019498502 1019498502 646395993 751899006 768083181 768083181 696467656 214013132 214013132 9627008 154059776 154059776 424808148 453822472 453822472 365586830 486409551 730813125 730813125 726197822 1005252270 1005252270 1003843628 478198521 790334492 790334492 954584647 954584647 458548976 1002152869 1002152869 402788358 585579844 971716416 971716416 709896817 651601270 651601270 531195722 125306174 468298046 468298046 427632278 478741574 478741574 452296246 452296246 435932925 435932925 345541352 581392400 581392400 810822345 810822345 806168584 634020328 805339264 805339264 610894115 559957291 553697776 566539489 566539489 1006863238 1006863238 664186793 515613646 515613646 638528060 675852549 886704486 886704486 735623109 1011953300 1011953300 905609916 996802931 996802931 856299008 842184484 842184484 151044132 550021156 558181377 558181377 704854596 704854596 681843332 681843332 60177264 352337920 352370730 352370730 317119854 317119854 268732456 378017906 378017906 477754576 477754576 345003136 345003136 320961520 121868352 100687713 895918137 895918137 665981817 425771430 865256512 865256512 781771682 996221367 996221367 907299795 371196241 371196241 796979493 796979493 755754240 755754240 638076872 135841296 79922752 100452840 130549168 130549168 101531008 101531008 12706352 37506560 42661392 42661392 28678752 51667728 51667728 8788032 15767968 15767968 49289776 278135574 459311186 459311186 193220632 193220632 183455949 335545344 629737194 629737194 984621661 984621661 645737947 389812026 919938529 919938529 618018513 618018513 581526609 581526609 581299856 15934096 64697568 64697568 63054736 53480210 305397938 307232802 307232802 312444016 312444016 304819538 331941454 331941454 314204626 41469840 20463792 525312 433994912 842776974 913835931 922114967 922114967 1021837743 1021837743 694685638 167880081 381726322 959332425 959332425 838864976 838864976 512287820 512287820 599873617 599873617 757281798 757281798 1015153662 1015153662 875284591 885302976 885302976 444645462 774822238 774822238 673330197 596263040 994583249 994583249 296915575 296055854 434245476 797445730 915947617 1001932579 1001932579 963452314 963452314 561551319 107189069 412295254 799073904 799073904 775472925 698204264 245696588 202630164 202630164 197240412 197240412 174707684 174707684 203982096 203982096 141617441 727189173 727189173 694506929 725492148 725492148 496050798 496050798 469911058 550040857 550040857 173200020 1057503145 1057503145 451264782 300037620 273785800 922882593 922882593 484110656 1042301233 1042301233 348152268 1018300894 1018300894 814089746 940706867 940706867 869844723 869844723 950688643 950688643 851346674 603517232 728957154 728957154 136743236 497045756 497045756 227853050 105980568 125133520 125133520 27323280 117473592 117473592 125982184 125982184 63656006 511220610 511220610 342002618 380479264 380479264 473544996 474164168 474164168 435592992 435592992 271236620 228256032 228256032 206548396 136581504 40031488 254813336 254813336 186381876 162458484 95189016 95189016 45879232 48158864 68602776 74836872 74998620 81937408 533942546 533942546 216044384 36344940 302806272 302806272 189535110 324093744 324093744 490089258 490089258 446105222 528879900 528879900 442946484 470847504 255115537 756288045 888781982 978970263 978970263 947563847 947563847 921538783 969592997 969592997 552077220 594413488 594413488 493105432 307767400 696257808 973212012 973212012 346688580 960503972 960503972 702360162 702360162 418350946 418350946 292386180 889334152 889334152 828848547 494178262 571907859 571907859 963385804 963385804 704955394 704955394 331720711 502044884 975832908 975832908 634223800 175773588 550772808 569347140 619258776 619258776 681970284 681970284 600851633 600851633 524657585 245189166 525667088 525667088 455680682 233189556 233189556 137178372 521095928 521095928 449839094 296743206 69823650 155848756 168525920 181596816 309873632 309873632 306293124 405507526 405507526 146566452 807409280 807409280 806748807 433755654 195831152 562674820 579618836 579618836 986445015 986445015 672891602 537403781 643827921 643827921 908088662 908088662 869270999 869270999 666556281 835961763 835961763 638060032 638060032 272237851 344986608 344986608 31461954 360597128 360597128 52828464 52828464 33867792 23094244 161480944 161480944 145826276 165749156 165749156 151717376 151717376 171192336 171192336 166366760 189823312 431034421 774406597 1061306689 1061306689 1049102431 1049102431 612436082 923084859 923084859 501425144 438543098 642777524 642777524 331749659 272662528 348397652 348397652 533225694 533225694 348717080 491532212 491532212 366291178 366291178 355541802 304631856 50496786 414016326 414016326 381793596 505991294 505991294 324573882 126667896 228869396 680661064 680661064 671488005 390623752 378520596 378520596 253754940 636742568 636742568 242555372 505758272 505758272 337715466 156248962 156248962 494404036 494404036 366745322 246546564 246546564 260116990 339090688 427160760 427160760 495901632 495901632 753452493 753452493 470026254 470026254 1044797925 1044797925 696241849 600172785 455888045 455888045 558328144 558328144 1053868693 1053868693 315902899 784599565 784599565 956882946 956882946 541878278 944366727 944366727 961729191 961729191 19552263 4071168 148594177 687601605 687601605 794083541 794083541 637830168 637830168 718536707 785457885 799875738 799875738 807167886 807167886 697063496 161222244 529354411 592309425 592309425 390423104 548766610 548766610 732594713 988470621 988470621 681591882 430582004 340448394 353391800 353391800 228076344 480389434 480389434 259708860 415776656 415776656 365817066 268168624 424960004 424960004 315975922 101745176 101745176 117514648 529580886 529580886 453149428 453149428 571547793 950871539 950871539 718015701 718015701 736871938 982136483 982136483 891527514 891527514 721089300 721089300 72950280 703824128 703824128 702677677 552834721 545691137 545691137 852522066 852522066 399508218 399508218 84935218 620759216 620759216 362307592 319957641 1012834249 1012834249 984933733 741951293 732640629 732640629 987808215 987808215 428117070 690379680 776231641 776231641 745805961 555104994 488059498 367996930 284223874 284223874 281045760 274794498 274794498 269551746 269551746 11083776 507586345 790120219 790120219 910880952 910880952 229784857 583935973 754974720 754974720 664929652 170794260 80621568 755304904 755304904 762712549 765860205 765860205 10879021 853579396 853579396 939928605 939928605 577198536 577198536 649389513 871543281 871543281 860482968 348963354 104992920 373297290 373297290 411698572 579939848 579939848 887426351 887426351 872624201 872624201 613353202 901367322 901367322 983652936 983652936 941670663 906162517 650674332 878210170 878210170 650438807 1012477825 1012477825 811149687 1041859480 1041859480 349184194 495849711 966558145 966558145 290828545 860961433 860961433 732517043 965663847 965663847 781131027 1041782441 1041782441 717675726 717675726 807935699 836440736 836440736 811888067 709906496 672889378 666098425 678687621 678687621 135134212 453122384 512703582 604581913 652439369 652439369 14568000 14568000 7661760 148803652 148803652 164185636 165433828 185269812 185269812 151395660 96503288 437005457 663299172 663299172 623042601 922746880 922746939 922746939 847266011 827376291 827376291 459440877 1063379391 1063379391 1020315213 791274813 638235826 517698150 530220960 530220960 231620656 403164046 516594536 516594536 459473344 144250116 144250116 525348872 525348872 125042936 503393368 503393368 358097652 294210002 295092176 295092176 290495464 295439970 382601352 382601352 80612434 397705694 397705694 506466503 506466503 489085230 955253511 955253511 949157831 806710933 603858129 169390769 699215205 699215205 692007057 692007057 579932289 579932289 84542689 122355864 630928984 630928984 88093881 86525792 18396832 33851024 92111360 95217888 95217888 20472192 20472192 1387008 10425408 41990426 384294226 384294226 291873828 291873828 709578994 709578994 931219757 931219757 804792963 793371837 72658485 4231296 4231296 575353856 575353856 5527041 59910192 59910192 175185956 175185956 65342000 706020248 706020248 261366301 753568940 753568940 476580880 476580880 336528526 336528526 354954474 466112790 466112790 309991314 260982498 203288076 203288076 269664642 269664642 31493384 90227112 153923724 153923724 206415148 471607312 471607312 168043278 144777540 151060832 672256073 672256073 818387456 818387456 588899889 798491773 965269063 965269063 649905785 595991394 1005197823 1005197823 831555428 309249618 291244130 357570544 357570544 21895560 300243346 300243346 109917528 396887162 554814209 826126209 830237889 830237889 27633793 584845449 610012809 646730440 646730440 639987268 717152085 717152085 659103289 659103289 643749012 643749012 694258582 957154483 979699988 979699988 142680132 518628363 643953948 643953948 690753761 690753761 806174199 806174199 965027934 965027934 681060473 641470233 641470233 351269803 665867641 922300971 922300971 628706089 628706089 899157699 899157699 877724296 599040 134865956 163359285 707939921 707939921 729475037 785983197 785983197 710426832 567498624 567498624 553832481 111333720 549732760 648333657 789118980 789118980 654910521 687909184 687909184 667966861 667966861 610270857 989959308 989959308 437717042 171785862 419545764 419545764 210028620 210028620 99132652 99132652 112538364 259842256 535153906 535153906 395897648 482102436 482102436 349112234 104334016 104334016 280237514 280237514 80290696 126669461 522489928 522489928 883334260 883334260 816105795 773040595 1003222263 1003222263 484245123 749796377 749796377 943786024 943786024 556173392 556173392 537319425 537169920 973223000 973223000 773594256 944213197 944213197 780191890 780191890 323490047 398722520 398722520 288099618 115152488 115152488 291723200 361992962 361992962 136323472 136323472 505866156 505866156 789095649 789095649 939560342 939560342 150994980 1019498502 1019498502 646395993 751899006 768083181 768083181 696467656 214013132 214013132 9627008 107758554 107758554 424808148 424808148 349489866 365586830 529009274 529009274 122524704 861540598 861540598 1003843628 1003843628 478198521 790334492 790334492 598821074 598821074 247625944 1041302188 1041302188 950467188 950467188 838706019 709896817 709896817 651601270 651601270 531195722 320610432 468298046 468298046 439272902 478741574 478741574 452296246 452296246 412187622 412187622 21235840 21235840 553976480 810822345 810822345 97632939 634020328 634020328 663819714 663819714 878110171 878110171 566539489 566539489 1006863238 1006863238 664186793 441474841 441474841 864161856 864161856 886704486 886704486 156373920 1011953300 1011953300 905609916 996802931 996802931 248023391 247467108 256408216 256408216 185577632 135094840 168396344 168396344 66519344 159777796 159777796 210595014 273316492 903068131 903068131 512077806 1025070235 1025070235 711498618 789875469 789875469 750017241 712079168 794918936 794918936 711813013 558145460 895918137 895918137 665981817 425771430 865256512 865256512 781771682 996221367 996221367 907299795 371196241 620905282 796979493 796979493 755754240 755754240 638076872 135841296 96535024 96535024 130549168 130549168 116664776 101531008 98572008 51099072 195182992 195182992 126926300 151414256 151414256 87072300 28623456 25352768 22580288 82839568 311447128 336382986 336382986 183455949 183455949 289531016 964969930 964969930 1061224885 1061224885 519080819 609639498 609639498 586941648 585404353 548760192 548760192 71688385 10967296 10967296 12555584 12555584 9832448 9837120 15086400 15086400 19436304 312444016 312444016 304819538 331941454 331941454 828429301 995439411 1017250619 1017250619 760805229 760805229 909971419 922114967 922114967 887481988 887481988 945596037 945596037 450923616 505544774 505544774 450377054 450377054 378671256 378671256 599873617 599873617 599052514 727375270 1015153662 1015153662 875284591 885302976 885302976 1014683535 1014683535 556658865 556658865 734527984 734527984 595701940 548107280 539677953 495763520 797445730 915947617 1001932579 1001932579 963452314 963452314 561551319 107189069 412295254 412295254 133854960 133510272 93325904 93325904 202630164 202630164 197240412 197240412 278169698 278169698 203982096 375128730 375128730 951861408 951861408 694506929 797181978 797181978 79743099 169283588 169283588 243612288 308719628 308719628 283641500 451264782 451264782 209758546 457408540 457408540 452128922 452128922 282591942 282591942 258031248 1018300894 1018300894 698220596 940706867 940706867 869844723 870846663 950688643 950688643 722880513 709172404 728957154 728957154 320704336 320704336 320679474 181591420 181591420 251828496 251828496 197581044 228954204 228954204 228174296 228174296 221692696 511220610 511220610 514210236 514210236 380479264 330919272 245003964 245003964 222298284 222298284 208670180 165419716 160210724 158096516 136581504 63575280 180947008 267328884 267328884 137734780 245502180 245502180 242638108 228892620 220388092 220388092 265831120 265831120 533942546 533942546 513476314 177259672 338806918 653534031 653534031 421912886 813008283 813008283 446105222 446105222 826675463 826675463 442946484 642777461 255115537 756288045 905970132 905970132 902300907 947563847 947563847 921538783 969592997 969592997 424743042 1049311884 1049311884 622080890 1007106063 1007106063 111280904 112198488 112198488 960503972 960503972 925171919 809574531 809574531 671943682 144254212 682255845 682255845 452742062 494178262 494178262 500712172 500712172 797624574 797624574 747849459 907492487 907492487 907277315 270202377 48843408 25602440 550772808 669387896 669387896 627386793 681970284 681970284 600851633 600851633 524657585 245189166 525667088 525667088 455680682 182284126 76943840 91491240 521095928 521095928 449839094 426243554 69823650 68215072 27264480 182681744 274876117 717230853 847372371 847372371 284772661 422391078 807409280 807409280 837845728 990695297 990695297 562674820 864505418 864505418 132256248 443090066 679536065 928232333 928232333 669551903 303617878 983242326 983242326 932700441 932700441 835961763 835961763 805858618 805858618 541773976 882497072 882497072 831727003 831727003 820514448 820514448 658674425 563267601 560105568 560105568 161480944 145826276 165749156 165749156 137364480 137364480 171192336 171192336 167812224 167812224 431034421 828073288 828073288 740954430 1049102431 1049102431 612436082 923084859 923084859 337846470 457685320 460391167 600206079 927076537 927076537 549771306 6952320 533225694 533225694 348717080 491532212 491532212 366291178 366291178 355541802 315284264 315284264 414016326 414016326 381793596 505991294 505991294 324573882 329962866 515396196 515396196 495061735 390623752 390623752 253494442 495494972 1068185199 1068185199 744099658 739321552 503513710 337715466 748430593 748430593 585977410 940521876 940521876 947920791 947920791 246546564 76021832 902833993 902833993 940956812 966708558 966708558 797390973 797390973 797386781 882911574 927915195 927915195 635423395 661956786 761345148 761345148 626802191 514472198 152431140 57010532 831840650 831840650 351823114 956882946 956882946 541878278 944366727 944366727 961729191 964828487 964828487 941623140 825101829 692197540 687601605 794083541 794083541 706807821 704981013 718536707 785457885 799875738 799875738 807167886 807167886 697063496 161222244 529354411 592309425 592309425 390423104 548766610 548766610 732594713 988470621 988470621 681591882 430582004 161678946 159518820 23073220 4532352 480389434 480389434 259708860 415776656 480512334 480512334 311575166 336239818 336239818 337930804 337930804 218612386 218612386 117514648 430867440 430867440 141811294 128995380 44114058 716099968 718015701 718015701 736871938 982136483 982136483 565843809 142864452 211694724 211694724 72950280 703824128 703824128 702677677 630199400 630199400 624956453 852522066 852522066 399508218 399508218 84935218 620759216 620759216 563756728 395772186 1012834249 1012834249 984933733 741951293 732640629 732640629 987808215 987808215 248811301 690379680 776231641 776231641 745805961 555104994 488059498 547742210 547742210 540861761 806431299 851012306 851012306 309371922 846209233 846209233 46795720 378946088 378946088 327604338 649929496 789785963 789785963 754974720 754974720 480561486 752730752 1048384211 1048384211 897726536 762712549 765860205 765860205 493878683 853579396 853579396 939928605 939928605 724051353 577198536 649389513 1050436380 1050436380 860482968 604963005 604963005 961098935 961098935 968885577 968885577 558040374 887426351 887426351 854406373 854406373 613353202 200742582 499072878 499072878 436207638 436207638 399255658 399255658 160782570 328092392 328092392 256641984 398206684 660011799 660011799 388585532 649223881 649223881 966558145 966558145 290828545 860961433 860961433 732517043 965663847 965663847 781131027 1041782441 1041782441 547633562 547633562 315602571 836440736 836440736 811888067 709906496 672889378 666098425 678687621 678687621 455677234 455677234 807926019 807926019 652439369 652439369 649175385 649175385 567335840 567335840 33598737 15417952 587826497 587826497 801696506 984139095 1040247999 1040247999 820031502 665515208 623042601 922746880 922746939 922746939 847266011 502285181 502285181 387189329 387189329 450009204 534860548 534860548 516110026 517698150 517698150 358089704 242796444 406061344 406061344 177830374 141533440 144250116 144250116 525348872 525348872 279663668 503393368 503393368 358097652 294210002 295092176 373297608 373297608 363480946 382601352 382601352 84745370 397705694 397705694 450288476 489085230 489085230 420762376 4705024 7549824 16927744 17061920 40199808 53527344 53527344 58501056 658556176 658556176 104938288 104938288 609038808 665396601 665396601 88093881 16991012 135406148 137548548 152064288 152064288 16304064 20472192 20472192 163250724 163250724 198519632 384294226 384294226 534140792 534140792 709578994 709578994 931219757 931219757 804792963 931153470 931153470 278644419 227907816 541099008 541099008 19928598 438961414 438961414 405345158 831924517 831924517 692060357 374671202 792514140 792514140 634798609 565876942 684970164 894890530 894890530 354954474 466112790 466112790 309991314 260982498 203288076 421976736 421976736 269664642 419638540 419638540 441356510 441356510 513587502 513587502 471607312 221320574 144777540 492073146 492073146 305263956 574323894 588899889 588899889 260781180 260781180 201331788 502944924 502944924 39846272 325604864 325604864 309249618 291244130 357570544 357570544 25423976 300243346 300243346 48261360 110429953 554814209 826126209 830237889 830237889 572147073 584845449 610012809 610012809 642330841 642330841 209979468 671588452 671588452 1009963791 1009963791 326329071 311960146 2098002 35717152 35717152 142680132 518628363 643953948 859068118 859068118 728680533 587497616 558155937 235782552 370797154 557005880 641470233 641470233 118436641 112720728 112879744 117440472 117440472 62249696 62249696 49310528 49310528 6714384 134865956 152102404 152102404 194469892 558714424 608699529 710426832 710426832 705819281 705819281 634626669 672272901 672272901 648333657 648333657 346091003 697058476 697058476 687909184 667966861 667966861 610270857 989959308 989959308 437717042 470995470 470995470 191344932 470871362 470871362 99132652 194517432 194517432 112538364 72811888 72811888 350624016 350624016 349112234 349112234 329392218 104334016 284427184 337058586 377789234 377789234 522489928 522489928 883334260 883334260 816105795 773040595 540427278 808877766 808877766 749796377 749796377 407134538 407134538 792555010 792555010 683586050 683586050 982617728 982617728 672995471 105126493 587743776 587743776 386674170 41179024 398722520 398722520 325817014 458388914 458388914 105514240 105514240 352572192 371789860 371789860 359493898 359493898 172819372 171270432 52576788 168857904 168857904 150994980 134217760 37749280 63438928 63438928 41944304 851394387 851394387 844176560 69895632 355862000 355862000 55293146 349489866 914669787 914669787 765993646 765993646 831255651 1034991372 1034991372 402991110 402991110 786853543 786853543 419051280 35078806 198876792 247625944 1041302188 1041302188 950467188 950467188 838706019 479345456 479345456 438384434 438384434 365605760 445600848 445600848 440266518 439272902 213460812 242899156 761050045 761050045 571395639 1014380174 1041869469 1041869469 340924418 570787863 570787863 700492463 1020715040 1020715040 663819714 663819714 878110171 878110171 671154184 671154184 554994972 554994972 239599777 441474841 441474841 864161856 864161856 855638067 1033411943 1033411943 947520076 947520076 621315232 683820168 683820168 247467108 247467108 256408216 256408216 185577632 135094840 168396344 168396344 109321320 159777796 159777796 210595014 273316492 903068131 903068131 512077806 1025070235 1025070235 711498618 789875469 789875469 750017241 712079168 794918936 794918936 711813013 558145460 68588168 68588168 8782464 14031552 139598020 546316300 546316300 244392001 42016848 295764161 295764161 620905282 620905282 536883362 2670624 16827648 94376176 94376176 96535024 96535024 88419752 116664776 116664776 98572008 98572008 51099072 195182992 243533932 243533932 256718920 258978108 258978108 212659460 212659460 145901892 56639668 678590865 678590865 573018612 300086230 530851062 569222540 964969930 964969930 1061224885 1061224885 519080819 609639498 609639498 616637000 616637000 548760192 548760192 71688385 6453512 1297024 12555584 12555584 24325504 24325504 19794848 15086400 12755136 14741504 274887088 320969888 535751869 583847121 837915865 995439411 1017250619 1017250619 823621004 760805229 397419450 657990426 841335812 887481988 887481988 945596037 945596037 797754733 797754733 938216955 938216955 138155720 378671256 378671256 306973842 306973842 858656018 858656018 727375270 151261237 551377056 551377056 750411663 1014683535 1014683535 556658865 556658865 734527984 734527984 595701940 548107280 1040416878 1040416878 701626075 920231033 920231033 565182195 512591970 411140118 361074807 344211354 381755850 381755850 439625412 439625412 159714412 243341200 243341200 85197432 0 106170880 278169698 278169698 122733240 375128730 375128730 951861408 951861408 147372240 797181978 873383114 903285005 903285005 482306103 344589318 308719628 449136900 449136900 377671770 381845594 381845594 457408540 599677549 599677549 407964356 727355931 727355931 266518675 1034031471 1034031471 939944640 939944640 543967364 556929825 870846663 870846663 63469365 709172404 709172404 277282773 453354048 453354048 417885190 486862330 486862330 315264338 311169920 251828496 197581044 228954204 228954204 228174296 228174296 221692696 216333748 226189844 937910801 937910801 912843135 912843135 438153939 607788750 767815917 769022919 769022919 766120487 738538093 690343468 421881412 410557952 180947008 267328884 267328884 165100940 245502180 245502180 242638108 228892620 220388092 220910892 265831120 265831120 174748040 513476314 513476314 177259672 472114757 681177358 681177358 421912886 813008283 813008283 242523038 340271726 826675463 826675463 159435334 642777461 796301714 1024508463 1024508463 905970132 902300907 627107082 832833160 862194099 862194099 454690599 424743042 1049311884 1049311884 704978028 1007106063 1007106063 818232272 818232272 313922052 878714954 986134743 986134743 809574531 809574531 671943682 340602826 682255845 682255845 354087776 925392414 925392414 500712172 500712172 797624574 797624574 747849459 907492487 907492487 907277315 270202377 173028224 48118272 84884520 669387896 669387896 627386793 651749032 651749032 590364704 590364704 313363970 533227591 921528763 1021149883 1021149883 901080548 182334100 173219540 222647360 306661808 426243554 426243554 28796518 27264480 42996800 182681744 274876117 717230853 847372371 847372371 284772661 422391078 545537922 545537922 837845728 990695297 990695297 845194182 864505418 864505418 132256248 391165442 679536065 928232333 928232333 1048170954 1048170954 983242326 983242326 932700441 932700441 828256227 828256227 805858618 805858618 541773976 882497072 882497072 831727003 831727003 820514448 820514448 658674425 563267601 560105568 560105568 176210004 163083028 151729188 58794084 58794084 26542608 37224960 37224960 167812224 167812224 409702572 828073288 828073288 576894011 380769757 976885306 976885306 608078486 243792148 497341400 497341400 1034240038 1034240038 954987975 1000733710 1000733710 438830358 438830358 278987036 78192832 191197148 191197148 89777832 26247776 40766576 315284264 315284264 436254740 436254740 178930502 168498468 287353394 320160034 329962866 515396196 515396196 781472344 882138117 882138117 600145007 495494972 1068185199 1068185199 744099658 739321552 503513710 58001894 748430593 748430593 585977410 940521876 940521876 947920791 947920791 827720324 827720324 902833993 902833993 940956812 966708558 966708558 797390973 797390973 797386781 882911574 882911574 822715514 822715514 805306371 761345148 761345148 626802191 514472198 649946737 649946737 831840650 932259878 943558087 943558087 690350373 690350373 689215011 689215011 422597879 964828487 964828487 968918448 968918448 692197540 684069832 738468117 738468117 719686789 707652885 10486784 10535232 19417408 357550720 898966671 898966671 688316651 85460520 657214024 657214024 552660849 113295576 113295576 8495256 1377920 6106752 173804672 173804672 158163904 168171540 168171540 202116108 202116108 168299548 275431788 469823562 469823562 480512334 480512334 311575166 296147298 165691952 426764372 426764372 329099040 508474062 508474062 430867440 430867440 141811294 572522641 770516099 770516099 348193040 156043761 715703458 715703458 953752897 953752897 916655323 642611717 642611717 71977472 678437144 678437144 573769493 630199400 630199400 624956453 537055233 537055233 1184256 29364224 30409440 30409440 563756728 563756728 395772186 395772186 273102978 279723074 309332496 309332496 282358340 282358340 146849988 222298284 222298284 152062024 750862920 750862920 718277577 814498185 814498185 547742210 540861761 806431299 851012306 851012306 309371922 846209233 846209233 809863564 754232859 702546405 702546405 649929496 789785963 789785963 849385811 849385811 839846271 839846271 1048384211 1048384211 897726536 615807384 877614182 877614182 493878683 496505137 834377283 834377283 724051353 724051353 417058587 417058587 1050436380 1050436380 100767872 604963005 604963005 961098935 961098935 968885577 968885577 985222025 985222025 296693793 135198726 38156416 185667592 312544881 826093347 975628115 975628115 446977286 940231764 940231764 806535828 806535828 527870198 644321323 644321323 904015941 904015941 388585532 649223881 879465774 895278879 895278879 756328624 756328624 262267260 292087136 401356170 401356170 252387648 733197636 749917005 749917005 547633562 315602571 289488784 161212180 161212180 443564134 443564134 443095174 522997526 522997526 657420418 816716122 816716122 807926019 388755752 460113383 1019720745 1019720745 567335840 567335840 366510472 284210400 587826497 587826497 801696506 984139095 1040247999 1040247999 820031502 665515208 401057043 612480010 924893259 924893259 434901105 864397536 864397536 387189329 387189329 450009204 534860548 1061774724 1061774724 180437136 254296736 272291770 272291770 449432022 449432022 177830374 141533440 35916048 33829552 134785540 369659970 369659970 179832244 160953878 355755674 366935544 366935544 395091032 395091032 373260154 363480946 313957506 84745370 17511464 16790528 3148288 3148288 5710592 5710592 4329600 4593792 16927744 17061920 40199808 53527344 53527344 58501056 658556176 658556176 118503480 118503480 609038808 665396601 665396601 23266457 16991012 135406148 137548548 184687472 184687472 580274689 580274689 25592352 690028832 699800421 699800421 804833777 804833777 534140792 534140792 710762029 710762029 880991138 880991138 832192579 931153470 931153470 412367559 346489610 973647893 973647893 778196268 808998534 808998534 799572132 990186282 990186282 774972189 754975341 998530651 998530651 634798609 785958621 785958621 894890530 894890530 706833704 706833704 690598576 97564296 496996956 496996956 421976736 421976736 336380168 419638540 419638540 441356510 441356510 513587502 513587502 501047146 221320574 434446524 492073146 890128559 890128559 856035447 1065910323 1065910323 797607029 890947083 890947083 579474513 721671570 1070073087 1070073087 609751124 118491088 79172496 91997432 91997432 25701826 342434890 342434890 337920 1116288 4458624 4458624 16263472 596657040 596657040 572147073 49329424 544400091 642330841 642330841 818124570 818124570 671588452 1009963791 1009963791 414518619 758689612 758689612 805569920 805569920 138938624 26740320 299109090 859068118 859068118 728680533 431000419 476923618 650666542 650666542 581968149 687933560 687933560 363701059 585071673 585071673 320460611 16624898 389734920 863476264 872493066 872493066 277400328 280787208 280787208 844802201 844802201 558714424 608699529 608699529 693129376 705819281 705819281 634626669 672272901 672272901 634000617 634000617 346091003 697058476 697058476 500450376 507449780 507449780 268773378 268773378 416591418 416591418 470995470 470995470 448322838 470871362 470871362 374477466 374477466 268567192 92537984 92537984 271716608 350624016 350624016 307233922 329392218 329392218 127400568 284427184 337058586 377789234 488876456 513226984 513226984 478490904 478490904 446693718 540427278 540427278 808877766 808877766 240018955 149833619 407134538 407134538 792555010 792555010 683586050 683586050 982617728 982617728 794504368 794504368 718874325 386734138 386674170 421318626 421318626 464444790 464444790 458388914 458388914 105514240 105514240 352572192 371789860 371789860 359493898 359493898 885819881 885819881 1011083302 1011083302 168857904 874917922 874917922 765650969 596842658 853947594 853947594 851394387 851394387 889141547 889141547 451777863 355862000 43187506 335776776 914669787 914669787 765993646 765993646 831255651 1034991372 1034991372 220625439 360149516 786853543 786853543 403260628 312475986 312475986 168725826 134402052 42992736 42992736 53865264 330191428 492245100 492245100 119475834 257702916 257702916 445600848 445600848 321342450 321342450 213460812 213460812 761050045 761050045 571395639 1014380174 1041869469 1041869469 340924418 570787863 570787863 700492463 1020715040 1020715040 752894212 752894212 872943233 872943233 765160661 671154184 554994972 595103096 617925321 617925321 128731057 474353833 956565543 956565543 1033411943 1033411943 947520076 947520076 915574921 915574921 887247138 1000915582 1000915582 306218720 22020608 50331696 50331696 111542568 111542568 109321320 127062648 127062648 323586104 323586104 568674216 895043025 924370491 924370491 134496256 380248048 402530298 605942992 927503951 927503951 764965720 764965720 363004264 363004264 554122985 593738149 593738149 521615985 814815864 814815864 616698496 244392001 42016848 193020100 193020100 54649008 741712781 741712781 701100688 701100688 555893816 180355216 112868416 112868416 107952672 107952672 120133816 120133816 31387784 25955456 153785504 243533932 243533932 256718920 258978108 258978108 212659460 212659460 145901892 69329160 678590865 678590865 573018612 300086230 663285750 663285750 952732073 952732073 235119519 315925553 883805929 883805929 42050395 616637000 616637000 571613649 539001472 549182216 549182216 38187648 60598368 60598368 24325504 24325504 19794848 24174976 24174976 278167552 278167552 320969888 535751869 583847121 837915865 905395179 905395179 823621004 823621004 79233125 4387208 138969344 841335812 841335812 711543186 188744758 753602727 797754733 797754733 938216955 938216955 138155720 337247504 337247504 448097476 448097476 858656018 858656018 837553763 998241395 998241395 926480520 926480520 591640737 320634754 320634754 674104096 707078448 707078448 642976137 642976137 1040416878 1040416878 840538314 920231033 920231033 512591970 512591970 411140118 344211354 344211354 381755850 381755850 439625412 439625412 159714412 243341200 243341200 109059048 109059048 74331772 151716396 257691324 257896448 257896448 406603157 871609491 871609491 538655079 538655079 873383114 903285005 903285005 482306103 1015362333 1015362333 449136900 627307855 627307855 381845594 381845594 160163906 599677549 599677549 379506712 727355931 764824240 764824240 1034031471 1034031471 939944640 939944640 869343987 828327539 823581219 823541760 39459 348548100 348548100 314664580 453354048 453354048 417885190 486862330 486862330 315264338 311169920 23856000 23856000 51463040 56773136 187767784 187767784 44536284 97739448 97739448 937910801 937910801 912843135 912843135 438153939 607788750 767815917 769022919 769022919 766120487 738538093 690343468 421881412 410557952 217357260 218257056 218257056 165100940 154997740 140091668 57795504 92899624 167795656 220910892 220910892 257737388 257737388 221563420 83866376 70391236 472114757 828763570 828763570 748513287 748513287 694555879 438604168 507959454 507959454 208665996 208665996 120633856 796301714 1024508463 1024508463 369625200 627107082 627107082 451753130 451753130 554762530 554762530 623843796 623843796 704978028 704978028 1015021647 1015021647 818232272 818232272 498826094 910493594 986134743 986134743 979577601 979577601 675377924 340602826 140095182 706971050 1061942463 1061942463 925392414 749208600 799687422 936795757 956470323 956470323 873944752 612868304 176306372 176306372 173028224 48118272 48118272 571704577 571704577 619827232 651749032 651749032 96007792 538054338 861264811 861264811 921528763 1021149883 1021149883 901080548 182334100 173219540 222647360 222647360 364590954 491279978 514892852 514892852 261652508 261652508 156370344 419030854 419030854 976876746 976876746 208740561 545346080 545346080 298893569 307232548 845194182 845194182 55211240 262371332 262371332 419409280 419409280 608591982 608591982 1048170954 1048170954 844685981 844685981 931191577 931191577 63538657 331417632 331417632 38350114 13225426 815332962 829105091 829105091 830395763 830395763 290844993 22827136 22827136 16256272 176210004 176210004 163083028 151729188 135267144 237259288 237259288 119061288 379667502 379667502 244453980 312625173 877840147 920319937 920319937 965776312 976885306 976885306 608078486 243792148 497341400 604053600 1034240038 1034240038 954987975 1000733710 1000733710 438830358 438830358 374551042 148512814 191197148 377563800 377563800 309420530 99721722 86640568 86640568 436254740 436254740 316558866 291539424 287353394 320160034 429347454 487851610 495377484 781472344 882138117 882138117 600145007 438365224 438365224 270717186 501354308 501354308 987257530 987257530 953205447 681642944 681642944 187008085 414977476 672805574 672805574 827720324 827720324 592191415 516426107 425088132 673085168 673085168 300965312 290611140 290611140 398610592 398610592 822715514 822715514 805306371 39549632 40895376 68159704 68159704 649946737 649946737 129024174 932259878 943558087 943558087 690350373 690350373 689215011 689215011 422597879 674369227 674369227 968918448 968918448 596394016 684069832 684069832 727942224 727942224 707652885 537658399 108817451 100446120 357550720 914997264 914997264 919082034 919082034 657214024 657214024 552660849 415859368 744070804 744070804 925926569 996282807 996282807 622413456 406049038 244318812 244318812 202116108 202116108 168299548 275431788 469823562 469823562 219102252 219102252 156443052 407124608 407124608 426764372 426764372 329099040 508474062 508474062 162372104 162372104 287386760 572522641 770516099 841072644 841072644 577323970 846817043 846817043 953752897 953752897 916655323 642611717 642611717 625628856 757209549 757209549 199829021 721630188 721630188 576870028 537055233 537055233 941232642 941232642 400174818 808195992 808195992 651606755 655008764 655008764 778104915 820960489 820960489 665579827 665579827 999533935 999533935 815286284 815286284 609493516 750862920 750862920 718277577 814498185 814498185 363963698 270912514 274850178 274850178 72350856 885736664 907307203 907307203 809863564 754232859 702546405 702546405 320710064 320710064 289145419 849385811 849385811 839846271 839846271 519472323 724714045 724714045 615807384 877614182 877614182 403252233 496505137 872952627 872952627 423152409 521788165 1050056118 1050056118 813592412 539018536 538554152 302195200 302195200 12290 748687378 835128644 835128644 985222025 985222025 136906800 340018868 575476255 575476255 675574325 826093347 975628115 975628115 649352016 940231764 940231764 806535828 806535828 922841369 922841369 823202032 904015941 904015941 519359454 519359454 879465774 895278879 895278879 756328624 778169194 778169194 292087136 1061378729 1061378729 617162773 733197636 749917005 749917005 964394274 964394274 809699265 854386851 854386851 947441296 977947717 977947717 577914772 522997526 657420418 816716122 816716122 287574306 388755752 460113383 1019720745 1019720745 1032772719 1045804784 1045804784 284210400 870322432 870322432 868356339 912470427 912470427 117656803 593533234 593533234 619060353 619060353 924893259 924893259 434901105 864397536 864397536 90638592 224545152 224545152 519315674 1061774724 1061774724 333002860 333002860 368573266 465677374 465677374 449432022 408154758 327418596 327418596 323861200 188767744 369659970 369659970 104526904 99152600 355755674 366935544 366935544 395091032 395091032 373260154 323274874 323274874 130089168 398911564 440402070 440402070 421252022 524830264 524830264 8388480 7924096 22448160 22448160 185198624 187745076 220204664 220204664 692183509 692183509 208733248 118503480 124199664 124199664 700093260 700093260 668075144 668075144 173064576 184687472 184687472 580274689 580274689 25592352 690028832 699800421 812387418 921384411 921384411 393032235 308797570 710762029 710762029 880991138 880991138 832192579 768908324 618487146 412367559 346489610 973647893 973647893 823743140 808998534 808998534 799572132 990186282 990186282 774972189 754975341 998530651 998530651 541349060 785958621 785958621 450599073 206074028 706833704 706833704 690598576 152352672 496996956 496996956 343510208 343510208 336380168 337693962 337693962 270532866 101921304 479349192 501047146 501047146 192938792 434446524 434446524 890128559 890128559 856035447 1065910323 1065910323 797607029 890947083 890947083 579474513 721671570 1070073087 1070073087 609751124 332403386 332403386 271908914 337126184 337126184 342434890 392963480 392963480 394635553 648080193 648080193 289983680 596657040 596657040 35302369 69415176 89851808 89851808 315663064 818124570 818124570 285348896 20522784 59613475 414518619 758689612 758689612 805569920 805569920 318307932 218288172 299109090 908516104 908516104 841076051 841076051 476923618 650666542 650666542 581968149 739964929 739964929 641206873 585071673 585071673 559161520 559161520 389734920 863476264 872493066 872493066 277400328 280787208 280787208 844802201 844802201 576553233 576553233 573121809 87122304 5493376 5493376 1233408 1071104 592960 8726592 9184256 9327616 9327616 2803776 10535232 10797312 742446335 742446335 793288836 793288836 741118538 370948112 306029060 448322838 906008591 906008591 813848194 796000412 796000412 200019444 269564320 271716608 271716608 297143696 297143696 110102616 60603912 127400568 127400568 92684640 92684640 488876456 488876456 279197720 815552348 815552348 772205967 712764685 709957213 696529613 588639973 626731816 626731816 102895896 102895896 13242584 101188632 118918112 118918112 437696014 437696014 794504368 794504368 718874325 286606936 520130486 520130486 471057662 864433066 864433066 952260022 952260022 17642240 13507776 909541655 909541655 528529832 759786019 759786019 885819881 885819881 1011083302 1011083302 897984684 897984684 874917922 765650969 596842658 853947594 853947594 274213688 757213702 889141547 889141547 451777863 440829592 202401858 759759000 1062255803 1062255803 518406494 518406494 204751094 483006760 483006760 906823824 906823824 526139801 431303742 282762260 450153174 450153174 226367628 1031112728 1031112728 865900144 865900144 748772159 492245100 492245100 388541968 508196964 508196964 98863584 287797872 321342450 321342450 94839320 94839320 165101516 165101516 571309948 800948985 800948985 713166933 248767113 735092896 735092896 104123160 108430828 740048928 752894212 752894212 855616427 855616427 765160661 584516677 478296010 595103096 948435015 948435015 566256449 566256449 956565543 956565543 813273808 541724802 805831683 805831683 915574921 915574921 887247138 1000915582 1000915582 513559324 252480592 252480592 193757256 221299008 221299008 42224232 127062648 127062648 323586104 336272010 552267904 895043025 924370491 924370491 587089074 734839277 734839277 605942992 927503951 927503951 570906177 668984764 885533054 885533054 1022389610 1022389610 757090617 521615985 814815864 814815864 616698496 983675254 983675254 851583243 356668045 550969882 741712781 741712781 701100688 701100688 555893816 180355216 123763168 112868416 107952672 107952672 120133816 120133816 109132400 41488528 153785504 153785504 81826140 17799440 74043656 74043656 2146560 1130752 20013096 69329160 421671482 761485640 916751201 916751201 663285750 966797090 966797090 683492493 379563001 517542035 883805929 883805929 389103675 389103675 571613649 571613649 539001472 549182216 549182216 38187648 60598368 60598368 3959040 18304768 270819586 283138370 283566080 283566080 287311176 305432054 305432054 145310666 46931984 46931984 345057472 345057472 91302016 807658880 810161283 810161283 424273062 824713382 824713382 298090659 360325538 364855146 364855146 704032562 751542509 751542509 268491512 679888794 726247413 1007383405 1007383405 453511447 837553763 998241395 998241395 926480520 926480520 591640737 163305601 155780004 674104096 707078448 707078448 671166533 642976137 746620036 840538314 840538314 732693778 807444770 898768900 898768900 755605013 313584015 374600346 388691046 417517990 938175304 938175304 672137328 102252544 102252544 109059048 109059048 74331772 268591722 268591722 257896448 304702362 406603157 871609491 871609491 833219584 833219584 360176910 360176910 439941480 439941480 1015362333 1015362333 302127104 627307855 627307855 342358284 341804308 926950139 926950139 756375725 756375725 708944557 764824240 764824240 44652670 555622528 869787297 994404983 994404983 828327539 823581219 425123844 425123844 348548100 348548100 314664580 314664580 182100626 119735072 123876360 123876360 182521024 182521024 92416272 94069128 98765312 98765312 187767784 187767784 134111220 378203342 518627686 518627686 880686976 880686976 353466619 150589678 145523124 145523124 2361600 84774976 95155560 95155560 15633792 30562016 217357260 217357260 211456008 16455680 205107648 216279096 216279096 124832984 167543844 201347072 201347072 257950868 257950868 257737388 227036796 83866376 70391236 76871168 828763570 828763570 748513287 748513287 694555879 505630732 507959454 507959454 208665996 208665996 120633856 153093120 153617700 369625200 369625200 573081936 573081936 451753130 451753130 554762530 954368449 954368449 716387157 716387157 1063359084 1063359084 1015021647 286195329 351001862 498826094 910493594 910493594 727529676 979577601 979577601 675377924 813248420 956565543 956565543 1061942463 1061942463 912420528 749208600 799687422 936795757 987628607 987628607 873944752 792114704 792114704 765268784 765268784 25630600 100141032 100141032 57014832 567387344 567387344 103359768 103359768 538054338 861264811 861264811 339216138 405800194 405800194 66906096 125369996 155373748 327701040 327701040 364590954 491279978 514892852 514892852 261652508 261652508 268628769 741372557 741372557 1007694166 1007694166 208740561 545346080 545346080 825308133 825308133 559024256 559024256 305995556 305995556 262371332 419409280 419409280 741088640 742527117 742527117 775669898 775669898 628521728 897800813 925682747 1015116131 1015116131 683745477 683745477 313583889 815332962 829105091 829105091 830395763 830395763 290844993 66405168 66405168 54138208 25751552 5423616 14206656 210407552 505226754 505226754 306440928 525635740 525635740 379667502 329347476 329347476 877840147 920319937 920319937 965776312 965776312 465227578 644237334 644237334 720126631 720126631 604053600 255713808 57406896 57406896 293896264 293896264 374551042 374551042 297796704 298060002 377563800 377563800 309420530 99721722 86640568 86640568 383737488 383737488 316558866 291539424 136412545 269270652 429347454 487851610 646143163 646143163 223631972 491798568 491798568 718824467 718824467 217269972 501354308 501354308 987257530 987257530 953205447 711197541 681642944 437968245 437968245 414977476 303634317 723269266 793845941 793845941 660602553 660602553 638679593 425006652 370938889 290611140 290611140 269145090 4507776 14607450 370405914 370405914 107751497 472525263 1035211806 1035211806 1010504235 1010504235 439427862 278016534 9488448 685598912 685598912 298907296 814836454 972959073 972959073 598076600 598076600 572689653 177447973 167274436 224659408 224659408 727942224 727942224 979720193 979720193 163011364 1003789040 1003789040 914997264 914997264 919082034 919082034 612503625 575843847 553926773 424150182 856475797 856475797 925926569 996282807 996282807 941222948 406049038 328203858 379170000 379170000 98356968 93890720 81653448 415400416 415400416 294555770 481334370 481334370 407124608 407124608 396127860 396127860 194088314 3936000 137137436 137137436 105709768 521250693 868221171 868221171 841072644 841072644 577323970 846817043 846817043 865044400 865044400 591077593 591077593 625628856 625628856 757209549 757209549 199829021 721630188 721630188 576870028 204085106 414397423 941232642 941232642 400174818 808195992 882870832 882870832 807002403 655008764 778104915 820960489 820960489 665579827 665579827 1053795271 1053795271 1013239571 815286284 609493516 536969860 536969860 824985139 828239523 828239523 880594257 880594257 875162035 875162035 322782089 885736664 907307203 907307203 561899040 336685776 643907772 643907772 1002258460 1002258460 932810555 653570064 1011610767 1011610767 164949401 68454696 724714045 724714045 989862062 989862062 491126839 0 34199808 872952627 872952627 1001134119 1001134119 1050056118 1050056118 813592412 553700169 538554152 839515264 855773216 855773216 644431009 644431009 240001384 395884058 395884058 273383656 340018868 588606112 588606112 675574325 675574325 548829952 548829952 649352016 649352016 317997907 416979312 416979312 922841369 922841369 998732847 998732847 302343116 519359454 519359454 429557864 419899794 773330396 773330396 961483204 961483204 276242395 1061378729 1061378729 617162773 858381224 858381224 741405271 964394274 964394274 1018914021 1018914021 854386851 947441296 977947717 977947717 577914772 120400016 102775064 36257112 28119376 73929348 913148440 913148440 951494956 1017686070 1032772719 1045804784 1045804784 272332032 870322432 889270785 889270785 912470427 912470427 442688870 629715614 629715614 810210435 810210435 872548482 872548482 424083491 807477735 807477735 528832950 803320076 1034234223 1034234223 1009552612 341570728 387087202 387087202 368573266 465677374 465677374 408154758 408154758 327418596 327418596 539677953 539677953 539677953 93476116 114826808 114826808 967506583 967506583 924804110 924804110 823162380 359261610 359261610 810571691 810571691 501316246 501316246 440402070 1065413867 1065413867 974715561 974715561 949809857 949809857 48515561 185198624 187745076 220204664 580126084 692183509 692183509 208733248 61539608 120602768 120602768 700093260 700093260 668075144 668075144 266999292 202429828 185647168 270870534 270870534 10561536 403518212 403518212 812387418 921384411 921384411 315637385 348652746 348652746 344198272 761470863 837813219 837813219 768908324 618487146 985562990 985562990 689480739 823743140 823743140 623510028 623510028 219189775 406848608 406848608 10486080 10486080 537445440 537445440 541349060 717539541 717539541 450599073 369283098 369283098 84972082 261144832 261144832 469925896 485012940 485012940 425890254 291537286 275793070 497209710 497209710 178938996 178938996 375456376 375456376 234898816 340526544 340526544 201449484 201449484 134735004 191432128 191432128 246989512 246989512 230356304 294200224 294200224 307363890 307363890 58725090 332403386 332403386 271908914 337126184 337126184 73409536 392963480 392963480 394635553 648080193 648080193 561897984 561897984 600689361 600689361 586889169 611404538 611404538 561960001 858452258 881233979 936065035 936065035 920401144 920401144 381199976 381199976 320145792 320145792 318307932 218288172 294952491 908516104 908516104 841076051 841076051 456237498 421499094 1021310598 1021310598 880075487 739964929 641206873 190518793 93773280 559161520 559161520 37843617 22077968 37982752 37982752 2240768 1237760 796672 16816448 553044016 600831065 657069369 657069369 661532976 670080609 670080609 314665115 650455257 935755922 935755922 870991138 870991138 841000418 805934202 805934202 634462953 742446335 742446335 793288836 793288836 741118538 211277844 211277844 1041351512 1041351512 906008591 813848194 796000412 796000412 200019444 269564320 277942042 277942042 351979304 351979304 128640770 338776872 396924274 396924274 64665756 99039720 369371435 719393025 719393025 815552348 873067034 873067034 773554642 773554642 923601633 923601633 628501039 626731816 618803489 474836059 577623234 577623234 825708224 836576720 836576720 465784392 465784392 424777386 378221658 244127750 520130486 520130486 471057662 864433066 864433066 952260022 952260022 13507776 13507776 909541655 909541655 528529832 759786019 759786019 278014350 816235424 816235424 357023850 897984684 897984684 763701357 182833637 182833637 38701360 602856945 1031713911 1031713911 948190830 351901898 440829592 440829592 202401858 759759000 1062255803 1062255803 544070840 622228344 622228344 483006760 483006760 906823824 906823824 872028147 589894402 773944900 773944900 450153174 381197194 1031112728 1031112728 865900144 865900144 855570492 925285691 925285691 799793754 508196964 508196964 418674762 418674762 339900392 495915792 495915792 408285686 998537143 998537143 177814724 467242166 467242166 546832389 546832389 735092896 735092896 104123160 108430828 740048928 740048928 686149964 686149964 547121769 122645105 644028608 644028608 478296010 948435015 948435015 566256449 566256449 850130259 850130259 813273808 346566792 350433738 568363072 568363072 352365696 352365696 508674412 513559324 513559324 252480592 252480592 193757256 221299008 221299008 119799896 52858680 95503160 343940192 364747545 596985963 809243691 891888939 891888939 639157274 734839277 734839277 602948735 462515800 570906177 570906177 668984764 885533054 885533054 1061896888 1061896888 757090617 571732497 571732497 554877490 554877490 983675254 983675254 851583243 356668045 550969882 592685282 592685282 96925840 113395872 113395872 123763168 123763168 77969752 64479704 88943784 122647752 122647752 109132400 41488528 42863920 159393964 159393964 80029896 256449624 256449624 260348004 260348004 179968972 124557348 745947141 761485640 916751201 916751201 874723424 966797090 966797090 683492493 379563001 517542035 517542035 235935452 389103675 1030090984 1045632191 1045632191 384117032 373781330 416853056 442952214 454273574 454273574 427009058 408642980 408642980 283138370 323504504 367840330 367840330 393523394 432747327 899403009 1019776355 1019776355 753441377 753441377 450678230 807658880 810161283 810161283 424273062 824713382 824713382 635486570 381995243 364855146 364855146 704032562 751542509 751542509 268491512 1017700622 1017700622 1007383405 1007383405 822682659 542903937 573098512 573098512 557092369 573885185 573885185 163305601 972687810 972687810 679682053 679682053 671166533 261100544 924333570 924333570 732693778 756307565 898239085 898768900 898768900 755605013 313584015 374600346 388691046 581530640 938175304 938175304 672137328 163339904 163339904 139914912 139914912 139088224 268591722 268591722 105171096 304702362 304702362 33780104 176784 833219584 879144872 879144872 230320527 466856532 475429110 475429110 169289758 302127104 302127104 342358284 342358284 143667200 926950139 926950139 756375725 756375725 708944557 528917840 979532669 979532669 715732237 715732237 994404983 994404983 927470775 943853729 943853729 844652801 878306955 878306955 677085895 648774914 283374368 283374368 275864074 439465106 439465106 429994900 92416272 94069128 98765312 98765312 132497780 134111220 134111220 378203342 518627686 1064921421 1064921421 1008954570 1008954570 331140978 830703406 910569709 910569709 614724203 570206411 634170752 634170752 356958224 306959888 39332224 16455680 16455680 205107648 216279096 216279096 124832984 167543844 201347072 201347072 257950868 257950868 227036796 230857772 230857772 203734456 331413065 941263015 959648811 959648811 882131371 505630732 536093302 536093302 493105330 493105330 214157408 214157408 636794775 636794775 1068348670 1072244223 1072244223 706042604 1012946182 1012973967 1012973967 954368449 954368449 716387157 716387157 1063359084 1063359084 698037051 481341849 226051870 344566104 429255270 429255270 713424916 809902912 809902912 412371266 813248420 956565543 956565543 159197059 912420528 912420528 515779121 515779121 456722123 987628607 987628607 730272865 792114704 792114704 765268784 765268784 33620816 100141032 538262753 538262753 128582304 110127336 638902905 638902905 785908613 785908613 658357617 549971491 571945235 711579388 711579388 201327112 201327112 327701040 327701040 293181504 293181504 161292710 154228024 117440568 234918240 268628769 812237899 812237899 1044382006 1044382006 902717651 829373859 144780195 825308133 825308133 952674884 952674884 855838148 848429603 848429603 868048248 868048248 760341021 742527117 742527117 575014929 507270541 628521728 926285856 926285856 1015116131 1015116131 683745477 683745477 404856848 404856848 46981440 566097632 566097632 43049120 43049120 66405168 66405168 57267436 431199166 431199166 643344113 643344113 505226754 555041025 555041025 525635740 525635740 501064892 329347476 796949849 944374047 944374047 826483314 930494708 930494708 713018755 644237334 644237334 720126631 720126631 714418736 255713808 57406896 252560412 252560412 235675680 476004292 476004292 297796704 298060002 298060002 163580134 29360352 224 66560 1728640 1836736 10321536 10321536 136412545 136412545 335614024 335614024 344495194 646143163 646143163 16826400 890926400 890926400 843217739 718824467 585443793 217269972 388434618 636951464 830742109 1002965175 1002965175 411353957 437968245 437968245 243670914 303634317 723269266 793845941 793845941 660602553 660602553 638679593 518166473 944277319 944277319 485154119 602362310 602362310 524828729 287045154 836402699 836402699 472525263 1035211806 1035211806 1010504235 1071621226 1071621226 828979080 828979080 941483202 941483202 700676768 814836454 972959073 972959073 598076600 598076600 572689653 251976833 793384125 793384125 795485565 795485565 716126312 979720193 979720193 994234551 1003789040 1003789040 198362939 676857477 676857477 631587077 923306409 923306409 553926773 424150182 856475797 856475797 889660961 889660961 941222948 941222948 328203858 328203858 379170000 379170000 152381988 261467040 520438544 520438544 415400416 404842968 481334370 481334370 387081138 354423400 396127860 396127860 364916374 51192952 310659042 310659042 78169416 521250693 868221171 868221171 122242472 122242472 562046057 570261680 570261680 176449313 449389782 659042626 659042626 397192514 544155030 544155030 804392464 804392464 327801310 991355914 991355914 577766289 819073731 819073731 427949778 427949778 310810752 882870832 882870832 807002403 377099187 467266784 514454842 514454842 380167696 473378651 1053795271 1053795271 1013239571 472088385 541198981 541198981 536969860 824985139 828239523 828239523 880594257 880594257 875162035 875162035 812767123 621300106 892962481 892962481 1072786259 1072786259 643907772 698603477 1002258460 1002258460 932810555 653570064 1011610767 1011610767 390365304 390365304 604033186 604033186 989862062 989862062 491126839 395556533 940794994 940794994 688684124 1001134119 1001134119 914205124 932715552 932715552 915806811 357832729 839515264 855773216 855773216 676266187 676266187 479075342 1012529329 1012529329 855982643 855982643 622392481 588606112 273090546 273090546 193471094 304540230 765735760 765735760 429965670 429965670 356549558 289616034 574809090 998732847 998732847 967983126 967983126 1001938336 1001938336 419899794 773330396 773330396 961483204 961483204 113235060 1047560456 1047560456 302481742 858381224 858381224 741405271 686024004 518177640 1018914021 1018914021 942861792 942861792 319137043 269073616 1056636115 1056636115 571242827 571242827 28119376 1019818028 1019818028 913148440 951494956 951494956 590435176 718513937 718513937 555819297 556568480 889270785 889270785 503810659 1032159559 1032159559 629715614 629715614 810210435 810210435 285704224 63975264 424083491 807477735 887495808 887495808 803320076 1034234223 1034234223 1009552612 342091150 387087202 387087202 295224384 342149346 342149346 406066232 406066232 205181758 220486973 539677953 539677953 539677953 93476116 114826808 867104934 967506583 967506583 924804110 924804110 823162380 1034866151 1034866151 946341505 946341505 501316246 501316246 298387502 1065413867 1065413867 974715561 974715561 949809857 949809857 48515561 746659288 746659288 172810757 580126084 692061644 692061644 1024 525312 120602768 120602768 91276200 69779608 62692680 266999292 266999292 202429828 185647168 578270417 578270417 1832448 681221248 685381317 685381317 643115673 643115673 384381312 384381312 963334443 963334443 563220866 837813219 837813219 502590534 502590534 985562990 985562990 578340753 878280962 878280962 743625357 1023460364 1034848143 1034848143 406848608 167514084 199231473 701069873 701069873 578630577 714603093 714603093 445164065 369283098 1025472688 1025472688 917810414 288524336 233506296 485012940 485012940 425890254 343967688 343967688 497209710 497209710 466265558 466265558 375456376 375456376 234898816 234898816 185404588 170917140 303504018 303504018 91236488 273203392 277687318 277687318 296961650 296961650 290050594 307363890 340919024 340919024 298848922 268435458 76881928 301534272 301534272 58984560 335620200 374712434 374712434 287072648 537218241 561897984 561897984 600689361 600689361 586889169 611404538 611404538 561960001 858452258 881233979 936065035 936065035 920401144 920401144 381199976 381199976 314497120 314497120 129636216 505614907 505614907 134815765 549508038 917091687 917091687 456237498 421499094 1021310598 1021310598 880075487 542123789 594471240 621828137 621828137 657051432 657051432 861655219 861655219 35093307 101839394 280104712 294865448 294865448 276759944 287847240 600831065 657069369 657069369 661532976 670080609 670080609 383828432 650455257 935755922 935755922 870991138 870991138 841000418 805934202 805934202 634462953 580537320 225060026 167936 750248526 988213519 988213519 853734283 1041351512 1041351512 605366290 605366290 303259664 303259664 162451040 262780408 277942042 277942042 351979304 351979304 128640770 338776872 396924274 396924274 126161976 126161976 369371435 719393025 719393025 475637131 873067034 873067034 773554642 773554642 923601633 923601633 718280799 718280799 628436784 628436784 577623234 577623234 825708224 836576720 987018766 987018766 533406417 424777386 939524162 939524162 679477317 276824071 48103684 136322768 136322768 68941320 406971056 406971056 341704098 341200490 127672042 115269336 57301248 57301248 27391456 816235424 816235424 22334112 22334112 66509808 66509808 65230848 72378584 95412010 602856945 1031713911 1031713911 948190830 826400931 674572399 1065192265 1065192265 1073332168 1073332168 576244793 544070840 622228344 622228344 408048132 446091358 532584587 872028147 872028147 612369728 773944900 773944900 384273672 381197194 749339677 850822237 850822237 311297735 855570492 925285691 925285691 799793754 347512950 347512950 418674762 418674762 379665752 495915792 495915792 408285686 998537143 998537143 193660020 467242166 467242166 676338176 676338176 675682437 610308409 610308409 226494728 226494728 715462917 715462917 680848396 680848396 727186101 727186101 644028608 12988825 512 1048576 35684416 35684416 10608960 42033408 67634184 346566792 350433738 568363072 568363072 562304034 359540419 590151746 590151746 118489656 118489656 58780504 68537672 103335528 119799896 119799896 129253400 129253400 343940192 364747545 596985963 809243691 891888939 891888939 640112616 639157274 607126715 853606754 853606754 531997052 531997052 461865718 461865718 398657690 1061896888 1061896888 570597888 571732497 571732497 550761153 550761153 22556672 13764864 16202688 34906840 105978496 105978496 54672328 29602560 74481904 74481904 58737456 58737456 48241984 64479704 64479704 122647752 122647752 64037616 64037616 9251904 159393964 159393964 80029896 256449624 256449624 260348004 260348004 179968972 124557348 745947141 745947141 842051586 874723424 895511320 895511320 806462120 561348713 373613248 286327057 316606992 316606992 240880156 1030090984 1045632191 1045632191 271332500 280892944 416853056 442952214 454273574 454273574 427009058 408642980 408642980 44013136 323504504 367840330 373380256 393523394 432747327 899403009 1021290265 1021290265 753441377 753441377 674563552 674563552 271124960 271124960 212555236 612385128 635486570 635486570 539017520 228321902 986348036 986348036 563781343 354245994 354245994 1017700622 1017700622 992577394 992577394 977798295 542903937 542903937 123288317 185338411 508036238 596799092 799119574 972687810 972687810 289412160 289412160 243274888 207169028 924333570 924333570 438048823 756307565 898239085 898239085 966670402 966670402 445831190 102104603 33662464 581530640 581530640 170693632 170693632 163339904 163339904 139914912 139914912 139088224 139088224 43778368 274997362 274997362 207893545 417172641 510272470 510272470 879144872 981760058 981760058 798376023 475429110 575719441 575719441 263582244 772106761 772106761 167875392 337801406 399515776 399515776 373502106 398664392 583324322 583324322 979532669 979532669 715732237 715732237 580165303 542047398 927470775 943853729 943853729 844652801 878306955 878306955 677085895 648774914 283374368 283374368 275864074 439465106 439465106 429994900 200865236 155221012 194257588 194257588 133529884 241695480 241695480 157612144 64937712 1064921421 1064921421 1008954570 1008954570 331140978 830703406 910569709 910569709 614724203 570206411 634170752 634170752 356958224 306959888 225574844 123507064 133434360 133434360 110745992 110745992 142421268 142421268 70277504 149453744 176577396 176577396 211515512 345433682 345433682 203734456 331413065 941263015 959648811 959648811 882131371 351278447 536093302 536093302 493105330 493105330 464727962 1004561025 636794775 636794775 1068348670 1072244223 1072244223 921560112 1012946182 1012973967 1012973967 134250891 1048576 1048576 1049088 1000538936 1000538936 698037051 481341849 226051870 344566104 429255270 1008046405 1008046405 780356190 831874213 831874213 1036255980 1036255980 996166537 1043205787 1043205787 477631509 448011072 179486230 11223636 219548172 219548172 202641516 34031872 2527760 43464976 43464976 35370496 35787536 538262753 538262753 128582304 84021288 638902905 638902905 785908613 785908613 658357617 549971491 571945235 711579388 711579388 455606578 201327112 424318708 435850784 435850784 425488708 332517394 306420116 216455628 234918240 644058076 812237899 812237899 1044382006 1044382006 902717651 829373859 67035120 67035120 58924128 952674884 952674884 855838148 941828527 941828527 868048248 993601415 993601415 676260060 537580545 527947782 527947782 514851678 926285856 926285856 964727115 964727115 806414894 629270038 430711814 404856848 307771139 806348464 806348464 569502880 570609681 587345937 654524424 654524424 431199166 752006160 752006160 643344113 497025394 555041025 555041025 312176192 501064892 626244310 626244310 796949849 944374047 944374047 1064895675 1064895675 930494708 713018755 877570240 877570240 943551334 943551334 766376005 766376005 800945472 800945472 788709500 294389760 476004292 476004292 130590176 130590176 329452084 531689722 531689722 77634312 342924936 342924936 282987456 78564800 6446784 6764928 24092736 335614024 335614024 73127360 564305800 632690785 632690785 890926400 890926400 843217739 585443793 585443793 69533905 388434618 636951464 830742109 1002965175 1002965175 571329255 292668853 270658839 99443752 99443752 68272776 570854977 570854977 638194713 638194713 131212864 518166473 944277319 944277319 579093536 1066935775 1066935775 1015677511 1015677511 1010678113 1010678113 353746575 960513796 960513796 939755420 1071621226 1071621226 828979080 828979080 941483202 941483202 700676768 700676768 697426657 811365523 993418801 1018991275 1018991275 985131668 793384125 793384125 795485565 795485565 537144694 996250148 996250148 994234551 994234551 845714724 3147141 676857477 1028211238 1028211238 923306409 923306409 1030785458 1030785458 975624471 703778912 720363425 720363425 159928896 159928896 125978980 152827428 152827428 219381152 219381152 359170490 520438544 520438544 314703958 404842968 404842968 393681458 387081138 480778320 480778320 420832462 420832462 336448508 488933976 488933976 433416194 433416194 297577606 826810424 826810424 1042342161 1042342161 783920991 570261680 491268408 449389782 659042626 659042626 397192514 544155030 544155030 804392464 804392464 915191127 991355914 991355914 577766289 819073731 819073731 729944177 487130203 587777130 911468635 911468635 361576177 173621396 197848876 514454842 514454842 433250610 436419812 436419812 556674848 556674848 548220225 541198981 541198981 466717851 466717851 294988386 294988386 120845690 318901256 336144562 812767123 926273532 926273532 918868207 918868207 1072786259 1072786259 541656723 698603477 698603477 966864391 966864391 847580446 887491082 887491082 394476795 390365304 604033186 923048536 923048536 840043555 595643578 395556533 940794994 940794994 845152716 845152716 254968596 1028297056 1028297056 932715552 915806811 357832729 295573130 295573130 205529292 676266187 676266187 479075342 1012529329 1012529329 855982643 855982643 622392481 785675618 785675618 649253721 193471094 304540230 765735760 765735760 429965670 429965670 356549558 851652819 851652819 657774807 721819701 967983126 967983126 1001938336 1001938336 420743718 423680358 435295206 435295206 1069951020 1069951020 843395219 426849111 344671534 342898630 818253522 818253522 508725509 373867674 562497702 562497702 942861792 942861792 319137043 269073616 1056636115 1056636115 571242827 571242827 973132379 1019818028 1019818028 1019302434 583346722 583346722 541139073 876702338 876702338 838692321 838692321 556568480 359915904 241437084 1032159559 1032159559 977887401 809838198 953434207 953434207 285704224 463736937 463736937 432550226 887495808 887495808 627184041 372256668 372256668 151341858 344941064 344941064 295224384 295224384 342149346 342149346 511916408 511916408 493294600 319241300 316743780 135168 268288 268288 0 867104934 867104934 436740113 353545368 443115145 880815791 1034866151 1034866151 946341505 946341505 885597386 885597386 667420887 507778288 507778288 8990784 8990784 1497600 3246080 3246080 746659288 746659288 172810757 173026244 638127241 638127241 608633936 613028937 613028937 982269627 982269627 1073121113 1073121113 654836834 252573760 252573760 444672500 578270417 578270417 576586370 681221248 685381317 685381317 643115673 846333898 846333898 384381312 963334443 963334443 654369017 654369017 912961308 912961308 675818789 673846533 576839824 576839824 878280962 878280962 743625357 1023460364 1034848143 1034848143 144444898 167514084 391848088 701069873 701069873 578630577 714603093 714603093 445164065 320168888 1025472688 1025472688 917810414 522853510 256378044 206779020 206779020 102270198 343967688 343967688 434949606 440978566 466265558 466265558 133085658 81030708 223529760 223529760 279489854 279489854 417325750 988091143 988091143 444720148 444720148 277687318 855493638 870840819 870840819 819790852 819790852 679090053 621490444 283448352 283448352 274792898 93855754 58984560 335620200 374712434 374712434 287072648 80154944 31988832 46943568 50930736 50930736 121757880 130479768 130479768 130471672 113295576 103490960 346699048 346699048 301655560 310695280 331998746 348127464 348127464 314497120 288958222 505614907 505614907 155120224 218417196 917091687 917091687 937015540 937015540 604642368 741597513 741597513 742368476 742368476 732592713 621828137 657051432 657051432 861655219 861655219 35093307 101839394 280104712 294865448 294865448 276759944 287847240 287847240 20999104 29352017 579896000 713285078 846410643 846410643 403714453 335544330 221113644 338551970 338551970 461416114 603099266 603099266 476779643 390665644 383060751 1058457640 1058457640 988213519 988213519 853734283 675404674 991099583 991099583 689255184 773294612 773294612 150018909 150018909 75979092 537071861 723258933 723258933 561081573 197674213 555965216 555965216 715826977 882541933 963981946 963981946 798173454 470000096 470000096 942792704 942792704 417481784 495641550 651289168 718280799 718280799 628436784 628436784 512825199 97815688 282664226 383044148 987018766 987018766 542618624 138972420 939524162 939524162 759988621 341377834 341377834 827697318 989545359 989545359 654005174 406971056 341704098 957994653 957994653 398668602 862617201 862617201 434570499 874842659 874842659 345369162 483901976 483901976 339774893 532256319 883734347 883734347 464709422 464709422 872702850 872702850 826400931 674572399 1065192265 1065192265 1073332168 1073332168 428602470 490775076 619343081 619343081 729068356 729068356 84936748 223611564 1004438504 1004438504 863688627 727238390 1006364642 1006364642 708839234 23803296 6304800 0 1713156 135475716 221468824 221468824 218942508 218942508 310511036 310511036 379665752 533725560 533725560 409994118 193475700 260579344 260579344 227091564 140322336 676338176 676338176 675682437 610308409 610308409 226494728 226494728 715462917 715462917 748486764 748486764 727186101 730076564 730076564 136709841 345980490 471008290 680933069 680933069 447799662 800281444 966839103 966839103 809651343 755701255 946763949 946763949 966173072 966173072 590151746 311991566 412475398 479552132 479552132 211928588 103335528 347097644 504562018 504562018 332527872 132381610 59633730 323006378 451880788 892668720 892668720 809129713 662576025 853606754 853606754 208741260 308374908 308374908 398657690 398657690 397080112 958250084 958250084 722365685 554908831 521417301 22556672 22556672 134546316 226834284 235584780 261800316 263307280 263307280 29602560 22403744 22403744 54549728 54549728 48241984 44881936 44881936 41143920 57934016 64037616 64037616 49156960 47586000 117442640 117442640 122288216 122288216 78505096 92292456 92292456 560948456 560948456 618734025 618734025 608561289 895511320 895511320 392959376 352720938 890355787 890355787 316606992 316606992 873121883 934142290 934142290 659176736 984835041 984835041 275336466 876601355 876601355 695680292 695680292 155046060 155046060 44013136 302006656 405320904 508036396 508036396 459953168 700679338 1021290265 1021290265 1021313160 1021313160 706525612 992324365 992324365 393077131 608198827 880904360 880904360 618660009 618660009 344926272 986348036 986348036 914176970 914176970 354245994 305127730 316847872 992577394 992577394 977798295 100798488 150999040 1069232940 1069232940 508036238 596799092 799119574 799119574 33740048 65800272 588281508 588281508 584234008 637674520 637674520 202093597 176173124 277810252 428553318 966670402 966670402 778035776 778035776 546876564 705189204 708008533 708008533 564494608 157047584 24986448 60903488 60903488 41963520 392926963 392926963 356521178 621466529 621466529 417172641 510272470 510272470 414293325 981760058 1048659293 1048659293 1048142868 1041046597 861917114 475863142 772106761 772106761 469133626 349861018 544211899 557422141 1039679377 1039679377 862885186 862885186 991317144 991317144 834327607 341911840 356780202 356780202 354421024 335808522 19136810 17350656 17350656 17302560 250716996 250716996 193611000 193611000 208579040 208579040 200814356 200865236 200865236 155221012 194257588 194257588 133529884 241695480 241695480 373169682 898395810 898395810 841764786 1042858507 1042858507 277119157 276824140 378080364 378080364 92612712 53527344 94669396 94669396 173421524 225574844 225574844 123507064 133434360 133434360 110745992 110745992 142421268 157287944 225970092 225970092 117496372 56017552 147382576 345433682 345433682 59184936 126277752 423380384 423380384 292185140 270289268 270289268 246408222 0 145085071 298825907 464727962 1004561025 604086597 604086597 681609692 719587797 921560112 921560112 941121568 1025073703 1025073703 707371289 707371289 833331549 833331549 498803310 498803310 267650586 858816928 858816928 620806457 656458041 1008046405 1008046405 780356190 831874213 831874213 1036255980 1036255980 996166537 1043205787 1043205787 947237537 785520021 538839649 819992828 819992828 523130544 601541221 739686736 739686736 670056688 670056688 35370496 9437264 14158528 120263008 120795960 120795960 113279168 113279168 203063846 289357602 289357602 408100620 408100620 333465408 455606578 455606578 181552144 424318708 435850784 435850784 425488708 332517394 306420116 216455628 216455628 644058076 644058076 75497544 564396136 564396136 44895233 141345024 141345024 168943156 168943156 155398308 167895056 288098052 941828527 941828527 841797204 993601415 993601415 676260060 552845176 1040034131 1040034131 514851678 841360240 841360240 839155793 806414894 806414894 629270038 430711814 320864562 307771139 806348464 806348464 618433768 570609681 587345937 654524424 654524424 714212784 752006160 752006160 661990329 661990329 661990329 215013000 215013000 156125938 626244310 626244310 370899567 429974342 429974342 1064895675 1064895675 708362633 611005833 881101400 881101400 1069382119 1069382119 1044542217 884653156 832829790 800945472 788709500 467665334 309208822 272155184 237272864 376677004 376677004 531689722 531689722 176539170 342924936 342924936 282987456 78564800 23691744 11500864 24092736 110249314 110249314 261821748 564305800 632690785 632690785 835511313 835511313 639191878 914358363 914358363 885072075 885072075 610347865 852568882 956826048 956826048 571329255 337009736 790790428 790790428 17560608 17560608 17453088 538316312 638194713 638194713 414843980 443352427 443352427 281303313 579093536 1066935775 1066935775 1015677511 1015677511 1010678113 1010678113 353746575 960513796 960513796 216549332 282960908 282960908 282715842 944816775 944816775 423762500 538580480 558891681 558891681 811365523 993418801 1018991275 1018991275 985131668 214607580 258788600 258788600 33491720 84162624 996250148 996250148 185283636 1044502048 1044502048 372770460 372770460 1028211238 1028211238 960530027 960530027 1030785458 1030785458 975624471 703778912 720363425 720363425 513191512 513191512 421634408 529081470 529081470 310522924 219381152 359170490 359170490 51979824 270380446 396486076 396486076 149156292 157549340 480778320 480778320 420832462 420832462 336448508 488933976 488933976 433416194 433416194 614609361 826810424 826810424 1042342161 1042342161 783920991 963890492 963890492 675970236 322967735 973681823 973681823 610211380 388072097 679783097 772459608 915191127 915191127 765071411 830514629 830514629 729944177 729944177 487130203 587777130 911468635 911468635 361576177 173621396 307616592 307616592 294778546 433250610 436419812 695285233 695285233 688332532 548220225 19140193 2257432 103074072 103074072 100698368 36877568 75897368 150342468 150342468 491561718 926273532 926273532 918868207 918868207 1036018913 1036018913 541656723 687029854 687029854 966864391 966864391 847580446 899756714 899756714 394476795 538447053 756814885 923048536 923048536 840043555 595643578 190333556 126911808 126911808 845152716 845152716 254968596 1028297056 1028297056 814923950 814923950 272629890 272629890 404959494 428146890 428146890 167038354 242979408 486543982 486543982 115535404 259733436 423441532 785675618 785675618 649253721 951768903 951768903 892332343 892332343 797627593 797627593 580960344 851652819 851652819 657774807 721819701 721819701 667076748 673350093 673350093 420743718 423680358 435295206 435295206 1069951020 1069951020 1027670309 1027670309 344671534 426672620 1017535258 1017535258 508725509 373867674 373867674 536957008 752273552 752273552 132829758 281019546 281019546 1008541184 1008541184 394711317 973132379 973132379 1019302434 1068499839 1068499839 655673641 695466578 876702338 876702338 838692321 838692321 815582787 815582787 292079010 323485960 977887401 977887401 809838198 953434207 953434207 366559268 463736937 463736937 866235929 866235929 906523761 906523761 489491500 489491500 412049762 411872324 357391376 357391376 106164888 258553376 258553376 511916408 511916408 493294600 319241300 1060703241 1060703241 607126417 294094222 337245554 654378038 654378038 780214365 935392313 935392313 880815791 880815791 488431270 429255087 348652746 885597386 885597386 667420887 1016344245 1016344245 999419109 999419109 968808865 968808865 45876489 804075592 804075592 605097436 778110388 778110388 774046932 608633936 613028937 613028937 982269627 982269627 1073121113 1073121113 654836834 252573760 252573760 444672500 444672500 810291344 810291344 573222929 573222929 573183249 20897329 846333898 846333898 247472457 266300976 266300976 856086625 856086625 912961308 912961308 786041805 673846533 844887954 844887954 655091640 655091640 626317960 626317960 156795392 156795392 1030496546 1030496546 743255181 391848088 755511816 755511816 702510757 546781761 546781761 808452867 808452867 1045537083 1045537083 889254072 256378044 206779020 206779020 445001872 445001872 235085144 141297122 99489940 484054734 484054734 120739508 252109860 252109860 454074630 454074630 415061364 417325750 988091143 988091143 444720148 553231888 585155025 855493638 870840819 870840819 819790852 819790852 679090053 621490444 423957282 300748194 300748194 422625024 422625024 503151720 503151720 141450796 204923268 204923268 229209440 229209440 104492520 104492520 86819344 21889408 21889408 40371600 103490960 103490960 346699048 346699048 301655560 301655560 331998746 348127464 348127464 288958222 288958222 262231304 925025858 925025858 278450491 818441579 854528483 956889618 956889618 324125513 776496722 776496722 742368476 742368476 732592713 564447585 80485920 107187992 107187992 574571776 578583296 578583296 10731520 10731520 20315712 20315712 9892800 22356904 72578056 87134464 87134464 713285078 846410643 846410643 631316841 631316841 221113644 338551970 338551970 461416114 603099266 603099266 476779643 383060751 383060751 1058457640 1058457640 571961938 750854349 750854349 441621222 991099583 991099583 689255184 773294612 773294612 150018909 150018909 75979092 537071861 723258933 723258933 561081573 197674213 555965216 615386284 715826977 882541933 963981946 963981946 798173454 366080001 543861310 942792704 942792704 772089885 990956016 990956016 676541061 940798525 1062466239 1062466239 479625207 241206746 91595168 145444092 646553304 646553304 542618624 246942660 613154952 759988621 759988621 341377834 341377834 827697318 989545359 989545359 654005174 322623282 310520418 957994653 957994653 398668602 862617201 862617201 946018757 984033697 984033697 394973404 993123190 1023460235 1023460235 532256319 883734347 974280226 974280226 863551515 644982161 644982161 922029490 922029490 57803680 57803680 24118176 24118176 21632160 205346069 619343081 619343081 952252656 952252656 154684433 223611564 1004438504 1004438504 863688627 727238390 1006364642 1006364642 749105261 819481645 819481645 455217462 595671774 645139353 788526148 788526148 468810010 468810010 133978298 455456306 455456306 533725560 533725560 409994118 425370618 425370618 260579344 806503470 806503470 699925109 595723125 209734504 209734504 130056824 16778752 18351648 755500565 755500565 748486764 748486764 241506577 730076564 730076564 681440845 746938888 746938888 707026296 707026296 447799662 800281444 966839103 966839103 809651343 755701255 946763949 946763949 966173072 966173072 413221154 311991566 412475398 479552132 479552132 211928588 67192392 347097644 504562018 504562018 332527872 132381610 59633730 323006378 451880788 892668720 892668720 809129713 717111696 732272679 732272679 530656827 308374908 308374908 297660258 182214899 785974679 958250084 958250084 722365685 554908831 521417301 692273248 692273248 142882976 226834284 235584780 261800316 263307280 263307280 62819120 114387096 114387096 54549728 54549728 72616040 72616040 25989104 99901800 99901800 51710656 51710656 49156960 47586000 117442640 117442640 64246160 92410656 128326008 128326008 92292456 560948456 560948456 31474824 566534248 608561289 609772296 609772296 392959376 352720938 890355787 890355787 525278076 917587872 917587872 934142290 934142290 659176736 984835041 984835041 881383640 876601355 876601355 695680292 695680292 155046060 155046060 110710848 302006656 467894328 508036396 508036396 459953168 700679338 700679338 797189228 1021313160 1021313160 706525612 992324365 992324365 393077131 608198827 880904360 880904360 618660009 618660009 615240226 615240226 549786792 914176970 914176970 305127730 305127730 959042055 959042055 679068672 554849413 321251634 321251634 1069232940 1069232940 216102080 965884038 965884038 581327937 160174784 249637324 588281508 588281508 584234008 637674520 637674520 176173124 176173124 142618688 142618688 1082368 1623552 778035776 778035776 546876564 705189204 708008533 708008533 564494608 157047584 82716896 82716896 103933824 103933824 392926963 392926963 356521178 740298268 740298268 619389977 683045341 683045341 544257497 310446200 1048659293 1048659293 1048142868 1041046597 861917114 475863142 403178502 469133626 469133626 349861018 544211899 557422141 1039679377 1039679377 946277272 946277272 991317144 991317144 1005024487 1005024487 427876612 999066888 999066888 864059731 864059731 951855183 951855183 671562521 744705028 744705028 193611000 193611000 100948720 176504400 176504400 161203268 161203268 33836084 6106752 1212896 62730096 62730096 623519365 623519365 898395810 898395810 841764786 1042858507 1042858507 439299564 550761574 727447285 727447285 539481186 436219152 94669396 94669396 93199460 189599184 189599184 66653704 133695480 133695480 48894968 4194640 28985344 157287944 225970092 225970092 117496372 56017552 147382576 147382576 1049201843 1049201843 207297456 860246080 860246080 600453593 550459642 829048756 974311959 974311959 753644042 753644042 645970999 726007808 665920960 665920960 660080313 578423353 573971217 227000017 941121568 1025073703 1025073703 744262601 744262601 870344397 870344397 498803310 851443838 981467228 981467228 858816928 842377582 890290875 968214556 968214556 764537856 764537856 539878125 957440835 957440835 472967943 909506719 947237537 947237537 785520021 538839649 819992828 819992828 523130544 601541221 739686736 739686736 670056688 670056688 168736836 168736836 210888256 210888256 209373064 120795960 72903704 285865466 927463552 927463552 605086418 73849224 238193880 238857240 580809684 629409897 629409897 417867749 977610570 977610570 689515356 404571008 155259192 115404808 115404808 662838160 662838160 545994456 94777476 799325516 799325516 722283709 163654321 168943156 168943156 562157280 562157280 551708772 365063328 475845542 475845542 369698512 349176522 569915764 974792553 1040034131 1040034131 490675796 841360240 881082392 881082392 637586443 545834049 279494225 187381044 187381044 39847476 122819256 618433768 618433768 113919041 42570112 548591168 548591168 714212784 714212784 552927352 661990329 661990329 661990329 215013000 215013000 148774596 827227844 827227844 686831460 686831460 429974342 551473372 1021439821 1021439821 741513737 970804149 970804149 1069382119 1069382119 1044542217 884653156 832829790 764756172 764756172 467665334 309208822 272155184 237272864 376677004 376677004 304304138 303364502 176539170 64770672 18374560 47811024 47811024 23691744 11500864 23498916 96569569 96569569 261821748 560349730 720524435 720524435 835511313 835511313 733562830 914358363 914358363 885072075 885072075 610347865 852568882 852568882 671088640 671088640 337009736 790790428 790790428 17560608 17560608 33751648 33751648 306774930 385817554 414843980 414843980 309330432 270668034 307501968 307501968 422650662 422650662 828514392 828514392 722011250 454107999 454107999 352921123 352921123 806162613 806162613 864333913 944816775 944816775 287326469 538580480 558891681 558891681 416354309 986483206 986483206 954018966 840301520 686474437 686474437 739790357 739790357 541207804 653097582 653097582 765654389 1044502048 1044502048 606080898 606080898 947914279 947914279 960530027 987893135 987893135 795396572 658641081 571819185 571819185 537365888 622458693 767535149 767535149 529081470 646696337 646696337 774309560 774309560 658591532 121708728 121708728 149156292 149156292 405325062 527803138 527803138 367824170 419581600 419581600 403247032 403247032 240386372 178927280 178927280 614609361 614609361 331824058 336077896 574190358 625809973 963890492 963890492 675970236 322967735 973681823 973681823 610211380 388072097 679783097 772459608 772459608 344701353 872698941 872698941 1072309395 1072309395 526491957 317840659 542563034 861091384 861091384 935607108 935607108 913243873 913243873 530314878 530314878 463263193 695285233 695285233 688332532 97718948 140906756 543297737 543297737 212021580 311746250 311746250 75897368 76937928 684890688 945535359 945535359 597811569 802239305 802239305 604372996 738596877 738596877 379065440 671355376 736500213 832965733 832965733 899756714 899756714 374942250 538447053 756814885 756814885 696455752 198542896 409674886 409674886 253907236 44741234 343618306 424764130 742025066 742025066 720033349 814923950 814923950 272629890 373345290 404959494 428146890 428146890 167038354 370205196 486543982 486543982 521841162 521841162 453078448 648786572 648786572 596239473 951768903 951768903 892332343 892332343 797627593 797627593 580960344 68375728 886346000 886346000 345035354 436635890 436635890 764547296 764547296 763664452 757224228 757305893 863314852 863314852 707199024 1027670309 1027670309 783221128 783221128 1017535258 1017535258 747869400 70464264 336363528 536957008 752273552 987008669 987008669 645157513 638866522 1008541184 1008541184 206431370 940841035 940841035 926324836 1068499839 1068499839 655673641 695466578 858309706 858309706 639785088 831479312 831479312 815582787 432013542 1017430217 1017430217 147347948 574794838 1007003663 1007003663 1006987279 408809094 1009041890 1009041890 866235929 906523761 906523761 489491500 489491500 412049762 411872324 357391376 357391376 256933964 192854162 192854162 472846942 472846942 215933352 172833972 1060703241 1060703241 607126417 294094222 337245554 337245554 751973024 780214365 935392313 935392313 678010788 843537442 843537442 286177427 810554635 1052415588 1052415588 457604623 1016344245 1016344245 1002415769 999419109 968808865 968808865 807458154 807458154 804075592 653314593 1055663836 1055663836 774046932 688391205 59509872 59509872 34888324 416024212 416024212 168669362 21701136 136788640 141372804 153960356 153960356 810291344 810291344 805336576 18581155 30147104 30147104 460605732 460605732 62230466 194521108 194521108 856086625 856086625 689872438 786041805 786041805 556009761 844887954 844887954 654877882 654877882 604252712 604252712 206619276 483700243 1030496546 1030496546 743255181 740231526 755511816 755511816 702510757 546781761 546781761 808452867 808452867 1045537083 1045537083 889254072 386040362 419465232 419465232 445001872 691015651 691015651 816454410 816454410 484054734 723954396 1037515654 1037515654 694163623 694163623 660079514 506630330 655839062 655839062 440396550 426012306 553231888 585155025 585155025 870182643 870182643 408272130 408272130 293473286 423957282 423957282 300748194 409606816 422625024 422625024 1054703887 1054703887 283793002 958368653 958368653 229209440 654819504 654819504 682020101 762088728 762088728 609539032 611323612 611323612 59432240 327861352 327861352 382281168 382281168 382219424 382219424 312103618 29487378 8987712 9056256 925025858 925025858 867439708 588123511 815923208 956889618 956889618 324125513 776496722 776496722 706893405 591921216 600311025 600311025 596121777 587601969 107187992 574571776 578583296 578583296 32347040 32347040 31399968 33366112 78012288 78097408 78097408 153199499 236520859 756179134 756179134 777171572 1066439134 1066439134 629354509 763564193 763564193 586155459 586155459 235205248 240597660 387672820 387672820 261127750 739639384 739639384 750854349 750854349 482659128 482659128 167037862 220580372 220580372 242068172 242068172 46920912 46920912 12878024 260408792 260408792 119966728 590916912 590916912 615386284 702681573 702681573 463607493 382666597 382666597 366080001 543861310 742466720 772089885 772089885 990956016 990956016 761686324 940798525 1062466239 1062466239 479625207 241206746 119452344 145444092 145444092 785171065 785171065 246942660 246942660 567804032 567804032 546834273 95604920 95604920 555799761 1055193248 1055193248 1023933287 881876234 274709504 180564756 180564756 334565472 815804900 946018757 984033697 984033697 579600948 993123190 1023460235 1023460235 771552304 771552304 974280226 974280226 863551515 576922294 892872490 922029490 1001521304 1001521304 644941793 132130255 749244722 749244722 738647117 276514822 410332038 952252656 952252656 873238300 873238300 612369728 612369728 606602505 20971680 84607200 225542753 749105261 819481645 819481645 455217462 595671774 645139353 788526148 788526148 483797568 483797568 133978298 455456306 455456306 446219862 111114254 216420496 425370618 425370618 244948484 806503470 806503470 699925109 595723125 549004800 575301105 575301105 28046688 728761125 755500565 755500565 605552673 605552673 235406352 201850896 177146368 681440845 746938888 746938888 707026296 707026296 88365224 111333440 129066520 304963700 304963700 322971720 384117210 384117210 330365660 330365660 226480010 146817628 76555336 1648128 10085952 67192392 67192392 67633160 395423491 605552951 1032878173 1032878173 507436830 507436830 373539204 542163425 568116705 568116705 717111696 732272679 732272679 881541186 881541186 843069923 906268784 906268784 785974679 785974679 320000562 320000562 400469719 612560516 692273248 692273248 402919693 402919693 689112626 973288215 973288215 708071698 62819120 114387096 114387096 6324352 34734464 72616040 103072232 103072232 99901800 113422472 113422472 114768440 114768440 131146432 131146432 123020008 100928008 100928008 128326008 128326008 61234312 301509440 822160224 822160224 818806888 818806888 610406977 914135080 914135080 331006939 373180810 525278076 525278076 917587872 917587872 201974796 335810560 335943690 369659914 881383640 974948488 974948488 508854621 427382228 429866854 429866854 343583140 110710848 121726282 467894328 467894328 127785456 419448583 737345953 945960375 945960375 797189228 969128374 969128374 867628070 857611827 660537923 684963582 684963582 293874128 509876874 835524992 835524992 615240226 491824246 491824246 322651216 57853872 595235201 959042055 959042055 679068672 963021074 963021074 806419973 869323267 869323267 216102080 965884038 965884038 351410887 160174784 249637324 249637324 208560124 669410137 669410137 554763296 554763296 394791944 394791944 444596626 618699270 1050667909 1050667909 942640543 931479756 388931338 400023450 400023450 33953402 121785816 121785816 285421832 290935968 290935968 49401328 49401328 26235904 740298268 740298268 619389977 683045341 930673098 930673098 657723523 338055259 228925706 78304584 84415348 237130336 237130336 68207456 503617664 503617664 493230510 21156000 125895288 139661832 349266036 946277272 946277272 853881169 853881169 1005024487 1005024487 427876612 999066888 999066888 864059731 864059731 951855183 951855183 671562521 744705028 744705028 38438560 56672688 56672688 176504400 176504400 161203268 161203268 152907668 182599084 388014602 855562349 855562349 863500821 863500821 707871876 707871876 717451892 717451892 439299564 439299564 550761574 727447285 727447285 539481186 436219152 160987488 160987488 170579220 221684860 225561064 225561064 133695480 133695480 106316692 246420124 246420124 144984824 144984824 1741728 181538304 195084660 195084660 349721858 1049201843 1049201843 207297456 860246080 860246080 600453593 597878954 829048756 974311959 974311959 753644042 757137106 757137106 511845032 665920960 665920960 660080313 578423353 1036571322 1061340919 1061340919 681929733 874618956 880926979 880926979 870344397 870344397 980419479 980419479 981467228 981467228 842377582 842377582 890290875 890290875 588630929 573694737 232380038 491996108 537721646 537721646 408534400 408534400 542805682 542805682 331221889 4853760 29904896 51036160 331924986 331924986 238102792 415426502 415426502 302540616 302540616 168736836 476241968 476241968 428910792 509903134 509903134 338430352 940247196 940247196 605086418 90429572 159309754 238857240 580809684 629409897 629409897 417867749 977610570 977610570 689515356 404571008 197664804 197664804 202950156 662838160 662838160 545994456 94777476 799325516 799325516 722283709 163654321 183724544 183724544 562157280 562157280 551708772 564174853 564174853 420284451 420284451 349176522 569915764 974792553 974792553 950145351 990725490 990725490 881082392 881082392 637586443 980054130 980054130 321807922 321807922 598501937 598501937 590656416 590656416 600947249 600947249 553648161 514853945 540541046 540541046 606086505 606086505 575792400 575792400 575194752 522076236 522076236 827227844 827227844 686831460 687355405 687355405 551473372 1021439821 1021439821 1015063465 1015063465 970804149 934923843 281350550 281350550 49809360 148447508 148447508 74711304 57518224 138155408 138155408 505436544 505436544 243449870 2136268 17344 2887296 8437824 8437824 7999104 23614848 23614848 8979712 3026240 23232544 23232544 145802052 560349730 720524435 720524435 831452004 831452004 733562830 733562830 686129157 686129157 845751233 845751233 544999008 544999008 1052098831 1052098831 970626470 1035507534 1035507534 568117710 140533986 546400001 546400001 306774930 686289816 961924237 961924237 426855082 347508566 613854210 613854210 511223625 422650662 828514392 828514392 448071693 454107999 454107999 352921123 352921123 806162613 806162613 864333913 864333913 272629890 149736900 415499716 415499716 298193408 407377030 414455110 954018966 954018966 443628801 686474437 686474437 739790357 739790357 541207804 653097582 653097582 765654389 765654389 619615412 942671253 942671253 947914279 947914279 810045035 987893135 987893135 795396572 658641081 767710280 767710280 537365888 622458693 767535149 767535149 24382368 646696337 646696337 774309560 774309560 658591532 121708728 131937196 149156292 508566562 988408123 988408123 527803138 634049668 646343833 646343833 888458187 888458187 945023680 945023680 913861370 913861370 331824058 331824058 212140976 266611188 266611188 405152318 405152318 201401604 201401604 505649416 505649416 874905930 874905930 157547947 23704964 11015424 67637249 872698941 872698941 1072309395 1072309395 113264695 29624544 99664872 831495547 831495547 935607108 935607108 913243873 913243873 530314878 530314878 463263193 463263193 672143949 672143949 198745044 198745044 740159245 740159245 587758544 562202209 674693384 894312448 990434487 990434487 945535359 945535359 597811569 802239305 944958532 944958532 738596877 738596877 319954554 671355376 736500213 832965733 832965733 579355824 566280417 55084113 8913920 4752576 514885786 514885786 481627078 409674886 409674886 253907236 44741234 343618306 561022993 828819580 1033296495 1033296495 582566883 549992399 449557531 579985796 587359458 587359458 859014998 859014998 723571942 370205196 341476746 521841162 521841162 453078448 648786572 648786572 596239473 755109933 755109933 277873152 478335054 478335054 470702122 123263352 51169146 886346000 886346000 300290781 436635890 562431532 1015306272 1015306272 763664452 979210139 979210139 863314852 908803775 908803775 978070813 978070813 795667773 950726871 950726871 747869400 747869400 137983420 474447990 474447990 526654963 987008669 987008669 645157513 638866522 449054934 201375756 201375756 201461772 873654784 885093067 885093067 873851403 802304486 802304486 858309706 858309706 639785088 831479312 831479312 1024721346 1024721346 1017430217 1017430217 934521461 574794838 1007003663 1007003663 1006987279 408809094 1009041890 1009041890 305535762 927144794 927144794 381038779 252023728 252023728 126780424 422285948 465806372 465806372 473956494 473956494 472846942 494539124 520296712 520296712 373040256 373040256 128259352 128259352 355992634 355992634 751973024 751973024 738398285 934161504 1016942106 1016942106 843537442 508959390 949371477 1052415588 1052415588 457604623 714908774 1002415769 1002415769 466464327 296722788 418185573 807458154 807458154 734142808 653314593 1055663836 1055663836 688391205 688391205 59509872 59509872 298893910 437381188 459189346 459189346 430051686 430051686 172210102 444761876 444761876 273204354 805336576 805336576 18581155 30147104 30147104 460605732 460605732 62230466 194521108 194521108 180877524 109574232 863882092 863882092 747633741 747633741 141700425 21266944 21266944 16850976 73296642 469929450 469929450 831944144 1058234435 1058234435 743181453 740231526 435633126 353115698 653485528 878818257 878818257 108164035 297902130 297902130 481756712 481756712 386040362 419465232 419465232 369372376 691015651 691015651 950813966 950813966 303887545 723954396 1037515654 1037515654 694163623 694163623 660079514 506630330 831855648 831855648 823075040 273180928 853769090 853769090 843532965 870182643 870182643 701924902 956955777 958157956 958157956 492972196 492972196 409606816 409606816 207098414 1054703887 1054703887 407993172 958368653 958368653 142680132 654819504 654819504 682020101 762088728 762088728 609539032 611323612 611323612 371400728 639642947 639642947 382281168 382281168 382219424 382219424 361285218 361285218 276420352 307188346 932460547 932460547 867439708 588123511 1005532831 1005532831 883036491 290505378 398509036 758138228 758138228 591921216 600311025 600311025 596121777 587601969 86776233 55315632 38797344 25533408 32347040 32347040 31399968 33366112 78012288 78097408 78097408 153199499 236520859 756179134 756179134 777171572 1066439134 1066439134 629354509 763564193 763564193 885604721 885604721 932877890 932877890 993648762 1072119924 1072119924 747647932 879169943 879169943 1019518035 1019518035 482659128 301648768 301648768 298897160 242068172 242068172 190537108 190537108 614671541 614671541 602887241 602887241 590916912 590916912 67918136 561962913 848746233 848746233 644909698 37755520 63489264 103563399 1013763257 1013763257 656673833 555763864 761686324 902242636 902242636 811634901 480465998 294193526 294193526 119452344 93248616 122351749 785171065 785171065 134250769 566231616 567804032 567804032 840106530 840106530 129021241 555799761 1055193248 1055193248 1023933287 881876234 424021136 424021136 118308472 217129218 217129218 41300966 700713216 700713216 579600948 447783632 596853508 596853508 771552304 771552304 1029862714 1029862714 893956356 893956356 892872490 935404866 1001521304 1002051447 1002051447 728831815 749244722 749244722 809690435 809690435 819986883 819986883 719487006 898684175 898684175 606602505 227157298 531665460 531665460 903463478 903463478 672866350 388828538 388828538 288357666 385731638 483810500 483810500 436693204 483797568 483797568 71825544 180741200 180741200 142557060 77649736 148278156 576016145 576016145 244948484 244948484 635601997 635601997 549004800 549004800 575301105 707388693 721535189 728761125 728761125 175637536 51053152 51053152 42542160 109389504 177146368 177146368 105908468 6189056 147235926 513345102 513345102 272948228 108943364 235978916 235978916 322971720 384117210 441713142 483397772 483397772 226480010 178139720 483067844 483067844 410990348 384054608 360974442 360974442 395423491 605552951 1032878173 1032878173 507436830 507436830 373539204 542163425 568116705 568116705 556942963 556942963 495850764 881541186 881541186 843069923 906268784 906268784 719898069 719898069 445375777 459388180 459388180 612560516 612560516 550883395 402919693 402919693 689112626 973288215 973288215 708071698 51109440 51109440 0 6324352 34734464 34734464 103072232 103072232 96661728 113422472 113422472 132120752 132120752 131146432 131146432 123020008 113934360 113934360 100763984 103842024 103842024 301509440 822160224 834792864 834792864 818806888 610406977 914135080 914135080 331006939 645006675 645006675 585192186 899771874 899771874 965540896 965540896 688416813 774838311 774838311 974948488 974948488 907906397 907221623 550444982 534611654 534611654 370147866 89535572 266153724 266153724 218657622 447972396 737345953 945960375 945960375 671497219 969128374 969128374 867628070 857611827 848784002 780962451 810385659 810385659 629793897 835524992 835524992 870582771 870582771 584591652 584591652 57853872 595235201 595235201 55609424 144835009 963021074 963021074 806419973 950540606 950540606 936039675 936039675 1008019983 1008019983 368682439 285599778 267166042 127966600 669410137 669410137 554763296 554763296 394791944 394791944 444596626 618699270 1050667909 1050667909 942640543 931479756 901872586 901872586 894230625 894230625 896280056 896280056 285421832 290935968 290935968 352545509 416635687 416635687 123339433 258497923 638309552 638309552 930673098 930673098 657723523 1060253531 1060253531 979503850 979503850 846581190 358230220 413797932 503617664 503617664 493230510 727921077 745133011 973346760 973346760 381730956 294000738 375794480 753079631 753079631 765670660 765670660 518729764 518729764 144570578 198295724 198295724 110313788 110313788 226051620 226051620 200648952 200648952 264335696 264335696 138051460 183759828 183759828 163967060 182599084 388014602 855562349 855562349 863500821 863500821 514066782 454434146 563748910 563748910 344662647 319031346 319031346 698626242 698626242 819259632 819259632 941786384 941786384 843354643 1015352331 1015352331 996471219 996471219 597447426 782408522 782408522 743475350 743475350 684755650 79956168 181538304 195084660 195084660 349721858 512096816 512096816 247568450 32796656 32796656 357078328 597878954 597878954 202300428 202300428 227575276 757137106 757137106 728014848 127230337 127230337 850655074 850655074 1036571322 1061340919 1061340919 945382877 945382877 880926979 880926979 409438669 652288590 980419479 980419479 148111449 343169480 418750474 418750474 840962118 840962118 5232032 1016422536 1037099083 1037099083 207133964 483039882 483039882 794396925 794396925 687211912 687211912 609764740 1025769600 1025769600 577001008 391957684 238102792 415426502 415426502 302540616 525413960 525413960 476241968 476241968 428910792 509903134 509903134 505701478 940247196 940247196 67481752 105080840 138867112 138867112 70093636 216080844 216080844 256950972 256950972 56272196 106979688 106979688 197664804 197664804 202950156 202950156 228733144 879153606 1018158155 1018158155 314637327 153617700 285213958 961204995 961204995 810668128 810668128 811775746 811775746 769096867 683020865 967621889 967621889 968918363 968918363 717258002 424184781 990725490 990725490 892463880 892463880 465402471 980054130 980054130 822354465 822354465 598501937 598501937 590656416 590656416 600947249 600947249 553648161 540459160 540541046 1008995726 1008995726 984225111 984225111 974247825 575194752 522076236 522076236 355737106 682873961 682873961 687355405 687355405 236759720 1035037190 1035037190 1015063465 1015063465 996134543 996134543 732000810 741714340 741714340 820288348 820288348 338216202 338216202 647798947 647798947 505436544 505436544 794863859 794863859 195110978 926171707 926171707 31548928 51235344 51235344 25765088 2872448 33195428 33195428 27804697 251135964 834668035 834668035 347619342 388628984 965860968 965860968 623658697 686129157 686129157 845751233 845751233 618729409 618729409 1052098831 1052098831 970626470 1035507534 1035507534 986829266 986829266 546400001 814112635 916682525 916682525 961924237 961924237 426855082 347508566 613854210 613854210 511223625 348176586 818937027 818937027 587219984 554222625 366480944 810159176 885397707 885397707 797006866 797006866 310656057 576882866 824629539 985358384 985358384 154801956 285738833 574102214 574102214 588881738 824479362 824479362 381081178 384879106 384879106 370117698 328870224 328870224 511181336 511181336 108004248 942671253 942671253 536119172 810045035 810045035 614489264 614489264 585515104 602196120 767710280 767710280 109071240 212755712 212755712 210865996 212473164 212473164 117182424 117182424 492119474 492119474 106981452 206771168 206771168 667604217 988408123 988408123 514720943 634049668 646343833 646343833 888458187 888458187 945023680 945023680 913861370 913861370 669472945 669472945 363185114 363185114 973600791 973600791 798161128 647368740 795943869 795943869 693174552 874905930 874905930 822938739 822938739 176703540 176703540 193383481 629265412 864579601 864579601 113264695 29624544 99664872 99664872 67599328 59745392 60874992 63029616 696480064 696480064 751543397 751543397 340740350 602156609 602156609 415336142 415336142 740159245 740159245 587758544 562202209 674693384 894312448 990434487 990434487 903226518 539770381 120276625 604807180 944958532 944958532 415261188 675610850 675610850 562301025 683807924 683807924 579355824 1008465040 1033886894 1033886894 1068499479 1068499479 1061462358 1061462358 481627078 191449732 139765172 69420188 829123017 829123017 679989551 828819580 1033296495 1033296495 549992399 549992399 704684289 753464140 753464140 587359458 859014998 859014998 756283055 1030827753 1030827753 819902849 613333388 957544770 957544770 514463070 584282575 584282575 956433490 1050057989 1050057989 734752869 1042476514 1042476514 646993809 646993809 920834193 920834193 402577618 721604216 1015306272 1015306272 509380116 979210139 979210139 558115379 908803775 908803775 978070813 978070813 889530411 950726871 950726871 966987115 966987115 677760043 677760043 474447990 451880726 337707400 415238358 415238358 559734379 747319809 797194845 797194845 1006632975 1006632975 1024797155 1024797155 627387099 802304486 967134118 967134118 587635224 810863235 810863235 812645530 1024721346 1024721346 1045708933 1045708933 934521461 711924769 711924769 509570326 553721905 553721905 747660493 953345244 976409367 976409367 927144794 408081030 408081030 370577584 364369676 422285948 900652611 900652611 963708589 963708589 360070566 494539124 520296712 930359010 930359010 929637819 638716096 398201552 355992634 355992634 338166822 217389524 733483800 1059745945 1059745945 1016942106 255715970 508959390 949371477 949371477 848986336 424199380 170700008 221039916 221039916 20766988 1648128 8495168 60833824 60833824 763437088 763437088 740887108 740887108 562416729 662799649 665636217 665636217 298893910 437381188 459189346 459189346 430051686 430051686 172210102 444761876 811979011 811979011 856705952 856705952 145493316 673369884 783422301 783422301 769299402 769299402 971269474 971269474 538104403 538104403 863882092 863882092 747633741 747633741 141700425 274724354 727305763 727305763 646658945 646658945 554697249 831944144 1058234435 1058234435 698839693 410129286 353115698 573257040 653485528 878818257 878818257 108164035 634812393 634812393 617796297 455844170 344161580 426297588 983841236 983841236 926564087 407768068 950813966 950813966 794908704 287174178 671097350 671097350 533251326 561182716 561182716 268161953 875033766 875033766 844966097 548280769 853769090 853769090 843532965 843532965 469637682 701924902 956955777 958157956 958157956 492972196 492972196 164040108 166972556 199849894 423785588 423785588 407993172 353372398 353372398 499384874 542515720 801298448 801298448 33180661 397200762 480027994 570496009 570496009 371400728 639642947 639642947 87282530 270651696 310428202 357257456 361285218 361285218 276420352 307188346 932460547 932460547 670305249 571677552 1005532831 1005532831 622144041 290505378 721044640 758138228 758138228 665391404 604873177 604873177 76087297 69085504 60831752 576542256 601330544 601330544 84948192 84948192 81475272 2960640 2960640 19570688 88199688 221451338 645969714 673969413 997401133 1045030047 1045030047 815862160 702616000 702616000 962774832 962774832 885604721 932877890 932877890 993648762 1072119924 1072119924 747647932 879169943 879169943 1019518035 1019518035 264242120 301648768 301648768 298897160 483467536 483467536 399248634 380307536 614671541 614671541 602887241 602887241 61299889 7740288 234641290 561962913 848746233 848746233 644909698 254546770 384047156 384047156 1013763257 1013763257 656673833 606372156 344025338 902242636 902242636 811634901 296070655 294193526 294193526 93248616 93248616 546570472 626264745 669788105 670114017 670114017 566231616 557845217 840106530 840106530 129021241 496502650 598539540 598539540 328881121 374083584 424021136 424021136 136459232 217129218 690360738 824445219 824445219 700713216 827920101 955780465 955780465 1004653010 1004653010 823591182 1029862714 1029862714 893956356 893956356 387485000 935404866 935404866 1002051447 1002051447 728831815 805684497 805684497 809690435 809690435 819986883 819986883 719487006 898684175 898684175 227157298 227157298 531665460 531665460 903463478 903463478 672866350 847355986 847355986 382606554 407363818 407363818 10226176 10227264 147631108 147631108 47704128 180741200 180741200 83572680 83572680 99298792 576016145 576016145 119466520 119466520 635601997 635601997 216577512 160125088 178382657 707388693 721535189 721535189 542396801 542396801 690716677 690716677 159655572 159655572 172688608 700848339 944455746 944455746 818891972 818891972 513345102 272948228 108943364 235978916 235978916 237920720 287709474 441713142 483397772 483397772 67310160 407803392 483067844 483067844 410990348 488669294 488669294 360974442 396670216 396670216 69945722 6476160 2414720 43024976 43090512 43090512 13372608 334777510 423920434 423920434 369279016 375619642 375619642 373579826 706840750 706840750 719898069 719898069 445375777 459388180 459388180 77463720 622741824 622741824 346686790 346686790 596323516 596323516 323302453 65485296 65485296 17704464 49759168 49759168 49328704 49328704 12407152 12407152 6890880 38532240 38532240 132120752 132120752 50338336 33817136 33817136 113934360 113934360 100763984 103842024 103842024 877225224 877225224 834792864 834792864 358690339 358690339 68867592 337299496 856476704 856476704 826997899 585192186 899771874 899771874 965540896 965540896 857571899 857571899 774838311 436543504 907906397 907906397 907221623 550444982 534611654 534611654 370147866 277157958 144315972 369774160 470973440 470973440 447972396 838926562 838926562 857851971 857851971 369218946 441602690 848784002 848784002 780962451 810385659 810385659 629793897 365081634 439616229 870582771 870582771 584591652 584591652 292632440 376597074 376597074 337041930 443342304 443342304 263338092 263338092 950540606 950540606 936039675 936039675 1008019983 1008019983 368682439 285599778 267166042 179996864 221989344 440933390 440933390 229119016 393945624 432538854 777141505 777141505 812168849 812168849 582101496 623854904 901872586 901872586 894230625 894230625 896280056 896280056 850179123 132303712 132303712 352545509 416635687 416635687 123339433 258497923 638309552 638309552 115418048 115418048 151128676 1060253531 1060253531 979503850 979503850 846581190 358230220 413797932 413797932 293224224 292894914 727921077 745133011 973346760 973346760 723669981 437649721 338432127 753079631 753079631 765670660 765670660 518729764 518729764 133178838 198295724 198295724 110313788 110313788 226051620 226051620 200648952 243576888 268433932 268433932 202860036 567753013 567753013 583325008 583325008 341972150 864178363 864178363 163827842 514066782 514066782 802956379 802956379 935403771 935403771 816050499 816050499 805599552 698626242 819259632 819259632 941786384 941786384 843354643 1015352331 1015352331 996471219 996471219 597447426 947912776 947912776 743475350 743475350 684755650 79956168 142970992 185596980 185596980 172862000 825617097 825617097 247568450 1033006504 1033006504 999416407 917495914 1045435703 1045435703 1043229239 286754869 252313606 45598928 728014848 127230337 218386328 850655074 864585248 943412319 943412319 915202162 945382877 945382877 509929030 509929030 722518361 722518361 886050154 886050154 555876929 354849121 546589216 810863235 863801480 890128312 890128312 1016422536 1037099083 1037099083 207133964 808592516 808592516 794396925 794396925 687211912 687211912 609764740 1025769600 1025769600 577001008 391957684 153651364 145294848 519383760 519383760 525413960 525413960 382545654 122937736 478251744 478251744 428443934 505701478 505701478 703215093 703215093 473971986 173341666 173341666 658885840 658885840 654401641 381955289 873154658 873154658 600349064 394800144 34639016 15254976 9486912 9486912 238431884 879153606 1018158155 1018158155 377702532 153617700 977289296 977289296 961204995 810668128 810668128 811775746 811775746 769096867 824209701 967621889 967621889 968918363 968918363 717258002 424184781 988865915 988865915 892463880 892463880 465402471 847433174 847433174 822354465 822354465 272137328 352384041 609585169 656794265 656794265 113026080 644704065 644704065 605423104 1008995726 1008995726 984225111 984225111 974247825 428860120 428860120 557323320 565757793 682873961 682873961 218838060 701679196 701679196 1035037190 1035037190 880312974 1032373727 1032373727 996134543 732000810 741714340 741714340 820288348 820288348 338216202 338216202 647798947 647798947 202483556 202483556 794863859 794863859 337674762 926171707 926171707 367109448 299992640 90736352 25765088 11244672 33195428 33195428 27804697 251135964 834668035 834668035 347619342 347619342 965860968 965860968 876662691 1038356325 1038356325 956337442 683747219 618729409 691863889 691863889 111655993 923216914 923216914 923062329 986829266 986829266 416234157 814112635 916682525 916682525 968328450 968328450 150160517 19099576 253845544 253845544 104648472 343075872 360660906 587219984 587219984 554222625 109844528 810159176 885397707 885397707 632285656 632285656 143054916 576882866 824629539 985358384 985358384 154801956 285738833 574102214 574102214 588881738 824479362 824479362 381081178 384879106 384879106 370117698 304097856 178202536 178202536 479593490 483658446 497551318 497551318 461637750 400033922 637328352 637328352 372164459 608228564 619449801 761159088 761159088 716099440 212755712 746923713 746923713 212473164 734130993 734130993 745641856 745641856 624600032 106981452 206771168 206771168 667604217 667604217 608509144 713763033 713763033 320476722 320476722 270959892 425741186 665390550 665390550 387629738 340938458 669472945 669472945 363185114 363185114 973600791 973600791 798161128 647368740 795943869 795943869 693174552 950416675 950416675 822938739 822938739 555494501 566515764 667426017 667426017 650826969 600991103 958892899 958892899 659708091 598872945 386184912 653049792 788711321 788711321 904289506 904289506 751543397 751543397 340740350 340740350 125179404 415336142 415336142 604627568 604627568 116521162 313832890 313832890 312920418 131595000 903226518 903226518 539770381 120276625 604807180 604807180 415261188 415261188 675610850 675610850 562301025 591921344 591921344 591397041 1008465040 1033886894 1033886894 1068499479 1068499479 1061462358 1061462358 191449732 526000650 526000650 309858715 829123017 829123017 679989551 749352202 749352202 472585549 379598600 238027548 704684289 753464140 753464140 244900308 167837712 756283055 756283055 1030827753 1030827753 840479744 840479744 957544770 957544770 466175712 584282575 584282575 956433490 1050057989 1050057989 734752869 1042476514 1042476514 646993809 646993809 1054346458 1054346458 535594522 721604216 809534480 809534480 795402369 694775087 917013989 917013989 816054274 889785409 891363627 891363627 889530411 889530411 771751965 966987115 966987115 677760043 677760043 451880726 451880726 319876160 352857960 658409600 873761042 873761042 855834336 1000741230 1006632975 1051624855 1051624855 1024797155 627387099 521343591 967134118 967134118 540837250 810863235 810863235 603068241 582620145 965089894 1045708933 1045708933 688314405 711924769 711924769 509570326 553721905 553721905 747660493 953345244 976409367 976409367 621116331 408081030 408081030 370577584 364369676 364369676 900652611 1008068704 1008068704 963708589 360070566 375989658 375989658 930359010 930359010 929637819 638716096 398201552 120198456 120198456 47194640 18415632 733483800 1059745945 1059745945 482015523 255715970 102160920 180781132 848986336 848986336 220463365 285659994 686578800 686578800 461423431 291410916 408699941 919903874 919903874 763437088 763437088 740887108 822941026 875511051 875511051 665636217 665636217 355719520 615460618 615460618 546632016 120331104 183567408 183567408 957511744 957511744 811979011 856705952 856705952 437070870 673369884 783422301 783422301 769299402 769299402 971269474 971269474 538104403 538104403 350199370 648555824 648555824 578212275 84689050 274724354 727305763 727305763 646658945 646658945 554697249 988582704 988582704 671751616 528666750 528666750 346240463 573257040 573257040 792005094 792005094 782723965 634812393 634812393 758110312 758110312 344161580 742270952 983841236 983841236 926564087 521934368 673846800 794908704 794908704 814011334 814011334 921614939 934236024 934236024 922005083 374877122 875033766 875033766 844966097 831316048 575298576 564679152 573682112 573682112 295807505 293988450 270139044 424045188 424045188 422189514 135937100 203621444 203621444 199849894 744604569 744604569 359146016 609346087 609346087 499384874 499384874 801298448 801298448 33180661 397200762 480027994 480027994 288326968 185223796 422576208 422576208 95020672 276926724 532886418 532886418 37451282 142230080 142230080 136963332 64148208 64148208 59999408 7026048 7026048 71040 512 1049088 721044640 721044640 665391404 665391404 604873177 604873177 76087297 78569976 78569976 576542256 601330544 601330544 361242986 280342568 280342568 281153730 281153730 337293378 337293378 279057122 829448876 995308215 997401133 1045030047 1045030047 841094470 841094470 702616000 962774832 962774832 863639475 199054089 468439116 865644978 865644978 521171604 806486594 806486594 2097408 2097408 264242120 894968391 1056517980 1056517980 890714426 890714426 483467536 399248634 380307536 59187312 63252720 63252720 50881632 7440928 7740288 234641290 435209190 435209190 190717620 254546770 254546770 384047156 384047156 291522860 386714042 606372156 785919199 785919199 77680459 68012056 68012056 45163344 45163344 103834192 103834192 95227016 546570472 626264745 669788105 670114017 670114017 560794912 560794912 16519104 682132816 704692245 704692245 546440132 671630864 671630864 552769396 719984113 719984113 136459232 691681575 691681575 824445219 824445219 530326169 1062241851 1062241851 955780465 1004653010 1004653010 823591182 823591182 487253599 945464971 945464971 895761313 1031224239 1031224239 893439907 892979809 697782786 805684497 805684497 15269888 506453378 506453378 504095814 504095814 270929852 358254914 492243002 492243002 510180904 510180904 511079822 542180752 542180752 847355986 847355986 382606554 407363818 458262018 458262018 453805204 328468502 286313552 17826336 9962528 24364072 83572680 83572680 99298792 99298792 43285912 101995032 101995032 50331696 50331696 33619984 160125088 160125088 525316 34082816 34214928 542396801 542396801 690716677 690716677 159655572 159655572 190658240 700848339 944455746 944455746 818891972 818891972 0 406865280 406865280 403227814 292340070 453303206 453303206 522485884 522485884 305585104 476238532 476238532 407803392 208790412 318964016 488669294 488669294 260076344 396670216 646422021 788265455 788265455 315530393 423752624 423752624 554580161 855577053 855577053 50364464 369279016 371877298 939983018 1057487019 1057487019 757131556 757131556 503513123 503513123 534958590 859996493 859996493 84617472 622741824 622741824 197891543 944320854 1038682421 1038682421 862797195 566300530 65485296 45347664 49759168 49759168 49328704 49328704 114912136 114912136 117152912 117152912 108713880 51511808 117446680 117446680 76857632 76857632 78493896 78493896 99799872 99799872 75794728 877225224 877225224 350412234 613079464 613079464 622226744 622226744 391602017 856476704 856476704 826997899 743966348 1070645924 1070645924 523964990 605062913 857571899 857571899 738919680 738919680 536885005 228206337 345713994 345713994 529046058 529046058 335950068 444290136 444290136 369774160 470973440 470973440 569627121 838926562 838926562 857851971 857851971 218399168 52583332 258454852 258454852 76220856 538399460 538399460 161937989 300846646 300846646 430443956 430443956 186992570 292632440 292632440 866127873 866127873 337041930 443342304 1050783742 1050783742 976536580 687506282 828848277 828848277 268541066 268541066 803039569 803039569 686303349 753139793 753139793 690038389 552343396 189270020 229119016 393945624 432538854 777141505 777141505 554383067 554383067 269005568 603662632 603662632 435977282 435977282 448129878 554290771 909456076 909456076 675932107 223869845 721516113 721516113 151044132 969757837 969757837 397544792 689285558 780568657 780568657 686876911 338051347 857217760 857217760 476499148 476499148 342132904 342132904 293224224 293224224 292894914 295979072 301276672 800249060 800249060 723669981 437649721 202563800 604751944 604751944 376034948 376034948 259224334 334497778 385388978 395486200 395486200 101306600 286446114 290677290 290677290 829424547 829424547 604560203 268433932 202860036 567753013 567753013 583325008 583325008 341972150 965264543 965264543 912616569 580350227 580350227 802956379 802956379 935403771 935403771 816050499 816050499 805599552 17486880 147662144 147662144 418514116 470621842 470621842 375125658 709987958 709987958 664148601 673481328 947912776 947912776 714098755 412404292 412404292 257442524 257442524 22028820 70001064 85290176 825617097 825617097 301797730 1033006504 1033006504 999416407 917495914 1045435703 1045435703 1043229239 462768716 462768716 327812728 327812728 540453408 540453408 218386328 864585248 864585248 777175286 702678144 929471201 929471201 953814723 953814723 940313607 752689226 886050154 1033802760 1033802760 354849121 546589216 810863235 863801480 890128312 890128312 412699278 807667874 883343176 883343176 819304524 1007234087 1007234087 295269478 281090274 281090274 273171520 6365568 136581712 417879578 417879578 139431940 440383954 519383760 519383760 352801310 352801310 223421100 416383834 478251744 517384608 517384608 503915550 672676518 703215093 703215093 473971986 202524232 382763034 658885840 658885840 654401641 381955289 873154658 873154658 600349064 394800144 72097516 72097516 122352310 268436618 387491880 1017308744 1046602143 1046602143 377702532 317453778 977289296 977289296 952177556 952177556 192427012 639397496 990185995 990185995 824209701 824209701 146444932 87298632 153356580 221912584 419831920 419831920 529791304 1006723100 1006723100 571523091 385987275 163713088 427950114 427950114 386336256 386336256 609585169 656794265 809870106 843426195 843426195 819269465 605423104 481889865 483918614 483918614 449126614 449126614 126560424 126560424 557323320 565757793 565757793 218838060 218838060 701679196 701679196 420713930 225558924 627195418 1032373727 1032373727 300753125 241461844 380472592 516286686 516286686 513338376 34434712 7112576 89563264 89563264 1574400 3195648 336609546 337674762 337674762 340846082 367109448 367109448 299992640 90736352 31475264 11244672 4354496 19436576 30427560 140644740 156242720 156242720 537696066 537696066 894211809 894211809 876662691 1038356325 1038356325 956337442 46395600 346427049 796240126 1071904056 1071904056 923216914 923216914 959323159 959323159 722962484 714314777 421841190 421841190 502058478 968328450 968328450 275582980 92450858 156321126 484732554 484732554 354468384 360660906 360660906 822111536 822111536 818362385 818362385 722345013 722345013 632285656 632285656 468442502 433696482 813053106 813053106 300640560 321757010 321757010 181929684 295032912 320025138 320025138 280271552 274911618 16254912 16254912 123080170 132527642 178202536 178202536 479593490 483658446 748297909 748297909 461637750 731928985 731928985 705745329 705745329 717374732 740819285 761159088 761159088 716099440 556890080 746923713 746923713 165724644 734130993 734130993 745641856 745641856 624600032 141115832 422128906 422128906 247571088 68207112 608509144 713763033 853021217 853021217 338086002 905594910 905594910 504666095 1004596672 1004596672 874633814 263353088 352387688 353444394 353444394 350411634 350411634 281346112 385621410 395968570 395968570 367527130 950416675 950416675 734679104 555494501 555494501 566515764 667426017 667426017 650826969 600991103 958892899 958892899 659708091 598872945 386184912 653049792 788711321 788711321 904289506 904289506 667024643 612893769 72692529 644932505 644932505 111775832 111775832 68785913 594803529 616546121 891756937 891756937 912947524 912947524 851917011 747004346 70828544 70828544 0 369172708 470901284 470901284 898163276 898163276 927580699 927580699 847298643 591397041 541901384 570199653 570199653 322774550 401206310 401206310 164441316 499485058 526000650 526000650 309858715 493951206 676960088 734064861 749352202 860968667 860968667 644875161 644875161 519705815 346043222 814982592 1059807526 1059807526 428443169 303380480 583475922 583475922 840479744 840479744 273518980 466175712 466175712 402911238 402911238 321455704 378064436 406178342 481635150 481635150 440282110 215748970 281053824 1054346458 1054346458 709271344 709271344 809534480 809534480 795402369 694775087 917013989 917013989 553850122 374014315 218239020 964857568 964857568 895274667 725642525 536293242 536293242 736987442 736987442 321154549 391347712 391347712 352857960 658409600 873761042 873761042 855834336 1000741230 1000741230 1051624855 1051624855 829839933 829839933 909333812 909333812 886836939 602372672 602372672 603068241 603068241 582620145 382474318 742136385 742136385 562039784 801423420 801423420 79956168 79956168 169489416 169489416 338856204 961805091 961805091 621116331 509556358 72173872 72173872 30857952 498937710 498937710 1008068704 1008068704 473433870 473433870 456131382 456131382 317624706 317624706 115346904 147456868 932844731 932844731 59900987 558970067 971244220 971244220 940641815 1009670893 1009670893 858244305 763217705 742445476 854903648 854903648 719897937 285659994 732652736 732652736 461423431 433391872 493750952 919903874 919903874 606395146 573047880 573047880 822941026 875511051 875511051 403196982 453805062 453805062 615460618 615460618 546632016 410603536 825805895 825805895 983638914 983638914 718739474 314122966 314122966 437070870 437070870 220818026 420784502 420784502 270297750 537403425 537403425 536685532 545095151 545095151 369619112 464587538 467189946 467189946 357809688 259954976 735018032 735018032 125889160 298867504 988582704 988582704 462082428 528666750 528666750 153235472 576852324 576852324 792005094 792005094 782723965 807985468 807985468 758110312 758110312 569376132 742270952 742270952 100212493 521934368 521934368 673846800 772100909 772100909 916695257 916695257 921614939 934236024 934236024 922005083 374877122 573342608 573342608 831316048 831316048 575298576 818598017 818598017 564382147 815919168 815919168 20187936 295844352 295844352 228941326 228941326 203621444 203621444 188236068 744604569 744604569 359146016 609346087 609346087 732841841 732841841 653912025 653912025 676499350 676499350 1060652638 1060652638 959715189 898519849 522468355 522468355 119261807 276926724 532886418 532886418 488187438 488187438 336086068 314368718 314368718 574124489 929674809 929674809 927335196 927335196 772577045 772577045 982376187 982376187 659079185 139914961 601064260 601064260 623271169 623271169 537539192 59891008 917057851 917057851 629709801 614433986 280342568 281153730 815724803 815724803 555736129 880800544 880800544 995308215 995308215 914023363 914023363 841094470 841094470 310448593 311372944 448925910 917478741 976937686 976937686 865644978 865644978 861880271 806486594 806486594 475189902 99257980 576474884 894968391 1056517980 1056517980 890714426 890714426 60830464 34096346 324004882 324004882 128434394 86760816 890035736 890035736 945083776 945083776 975572128 975572128 190717620 190717620 116330192 179922918 510656909 976840753 976840753 948492994 948492994 806000284 242874718 832242114 832242114 273855503 514076746 514076746 103834192 773947980 773947980 442034783 732007528 732007528 596239264 596239264 560794912 349122634 682132816 704692245 704692245 546440132 671630864 671630864 552769396 719984113 719984113 166600164 691681575 691681575 461840790 332216002 332216002 1062241851 1062241851 786695019 609783168 594396601 367303067 257244660 257244660 945464971 945464971 895761313 1031224239 1031224239 893439907 673252934 673252934 544799237 855511686 855511686 1009531978 1009531978 168940590 168940590 270929852 358254914 492243002 492243002 764479165 764479165 691822901 758178317 758178317 167773469 539404736 539404736 700515600 700515600 561775529 547950008 328468502 286313552 193004244 168109764 243286832 243286832 152569380 138110044 742558757 742558757 170292532 220927020 537452593 537452593 234991672 168481312 140223536 717361365 750791933 750791933 701447397 594271488 53929572 43318880 43318880 38430304 190658240 190658240 290713602 290713602 275657126 405642518 405642518 406865280 406865280 403227814 293484132 453303206 453303206 522485884 522485884 305585104 476238532 476238532 203263360 208790412 208790412 321137824 321137824 305472544 305472544 915801362 918239593 924924667 924924667 623151807 457458075 554580161 855577053 855577053 18723047 128049179 373296300 939983018 1057487019 1057487019 757131556 757131556 711077906 503513123 534958590 859996493 859996493 749025535 273092677 235682223 235682223 944320854 1038682421 1038682421 862797195 813959235 813959235 701183205 701183205 462606966 940106528 940106528 807575184 842191824 842191824 544838272 108713880 30614048 117446680 117446680 76857632 76857632 78493896 78493896 66065168 52610240 52610240 65450416 545261825 545261825 613079464 613341409 622226744 622226744 554222720 554222720 542114433 743966348 743966348 1070645924 1070645924 115232 1048003044 1048003044 932706939 738919680 738919680 536885005 228206337 345713994 345713994 361914552 361914552 276627204 470664524 480092468 480092468 456779434 456779434 569627121 956982547 956982547 413926528 810414423 810414423 523009458 523009458 1047427328 1047427328 758772756 682242660 682242660 545967424 350213704 350213704 97515680 97515680 306690624 315806418 866127873 866127873 329388402 233706668 1050783742 1050783742 983354967 874007679 874007679 882165765 1017119055 1017119055 803039569 803039569 686303349 753139793 753139793 690038389 552343396 315949870 243346668 475010828 485099322 485099322 398198340 359347626 102471074 269005568 603662632 603662632 435977282 435977282 448129878 908325222 909456076 909456076 675932107 293209378 721516113 721516113 151044132 969757837 969757837 846758560 689285558 780568657 780568657 686876911 338051347 332513782 272531492 476499148 476499148 223878212 95312970 70924224 291800098 291800098 537306785 694010087 943856358 943856358 645400473 440794164 770561877 770561877 703936262 922357430 922357430 259224334 334497778 385388978 395486200 395486200 77264128 286446114 1039921287 1039921287 1020330735 829424547 604560203 428942612 428942612 440715360 943867936 943867936 310527154 310527154 965264543 965264543 912616569 600911610 600911610 789315599 789315599 528487462 890288826 923540809 923540809 395139440 151919652 563068388 943672915 943672915 719383840 702505151 702505151 979471996 979471996 664148601 673481328 673481328 874139149 906283035 906283035 478447350 261408812 261408812 22028820 33134176 85290176 85290176 301797730 301797730 292942400 616911088 650058145 665303417 763859739 763859739 453808240 462768716 462768716 327812728 327812728 540453408 540453408 21263233 436938884 777175286 777175286 196440068 524081652 873281544 953814723 953814723 940313607 752689226 760087370 1033802760 1033802760 478155135 478155135 486539310 486539310 398984442 398984442 866181996 866181996 1015343514 1015343514 819304524 1007234087 1007234087 295269478 281090274 281090274 273171520 49926400 141083136 417879578 417879578 147640772 440383954 440383954 305355796 352801310 352801310 340499614 416383834 416383834 517384608 517384608 503915550 770320558 770320558 386708895 341510934 344981643 805603523 805603523 683704449 570474653 164225300 315130526 316328130 648584832 648584832 638342080 270406216 122352310 268436618 1045516189 1045516189 1046602143 1046602143 544941337 406256413 317453778 593687286 952177556 952177556 803890929 803890929 990185995 990185995 494023397 428537958 422117896 429171067 1068098943 1068098943 841625125 841625125 666046506 1006723100 1006723100 834191491 834191491 163713088 805917827 805917827 386336256 386336256 302588032 302588032 809870106 843426195 843426195 819269465 604769289 481889865 483918614 483918614 449126614 731237996 731237996 1048674915 1048674915 811444782 811444782 579242772 579242772 882971560 882971560 420713930 894755334 894755334 408232248 925444156 925444156 829351480 380472592 516286686 516286686 606123569 606123569 71181096 814063951 814063951 201457684 142741548 1012925331 1012925331 455344754 890317707 890317707 28328064 28328064 31475264 31475264 15728064 4133376 12482784 30427560 94545600 94545600 561397896 561397896 658192432 658192432 830243838 830243838 890881728 890881728 956639719 956639719 811598211 796240126 1071904056 1071904056 884082428 490631528 959323159 959323159 882169656 882169656 605095067 605095067 579879135 728140040 728140040 275582980 92450858 156321126 533797809 1022312142 1022312142 976350297 976350297 822111536 822111536 818362385 990117894 990117894 722345013 539842934 539842934 468442502 565263136 813053106 813053106 565397104 321757010 323780496 323780496 295946666 320025138 320025138 114443288 316835024 372818386 372818386 337930240 337930240 63181256 125973492 217253628 217253628 748297909 748297909 242097564 731928985 731928985 705745329 705745329 717374732 740819285 740819285 256413108 188765489 556890080 556890080 167311905 677944224 677944224 267522181 231951136 231951136 141115832 141115832 489164062 489164062 676541061 676541061 608295469 553912353 853021217 853021217 763105197 905594910 905594910 504666095 1004596672 1004596672 874633814 366137858 366137858 337892098 268497056 98920952 98920952 312411736 385621410 509151390 509151390 367527130 277087488 734679104 734679104 236617760 404385386 404385386 344577542 167963724 173092932 173224596 173224596 224926568 224926568 180094704 128580824 128580824 289542040 309161344 309161344 667024643 667024643 612893769 363657242 644932505 644932505 357935762 357935762 88129288 594803529 616546121 891756937 891756937 912947524 912947524 851917011 747004346 572212016 580630121 580630121 369172708 819521024 819521024 905919480 905919480 927580699 927580699 998333780 998333780 541901384 570199653 570199653 504447724 504447724 401206310 528862444 932977165 932977165 964575549 964575549 710150805 710150805 734064861 734064861 860968667 860968667 863246520 863246520 1011923855 1011923855 814982592 1059807526 1059807526 708506752 810348256 849801491 849801491 321775984 835133123 835133123 563460165 405798150 423360294 423360294 489361696 507011612 507011612 481635150 481635150 440282110 842158419 842158419 853950482 853950482 945179514 945179514 779787705 896599703 896599703 538444265 417425903 553850122 553850122 374014315 218239020 964857568 964857568 895274667 725642525 434751205 38568195 948234452 948234452 321154549 391347712 391347712 27173434 22138640 64556320 64556320 49621968 102064848 102064848 98677728 209573666 829839933 829839933 909333812 909333812 886836939 602372672 602372672 808133248 808133248 382474318 441899670 742136385 742136385 562039784 801423420 801423420 521558770 248636156 309514768 309514768 408953256 408953256 337715466 509556358 509556358 86104286 72173872 30857952 498937710 498937710 924009236 1057417756 1057417756 473433870 856364114 856364114 651167521 651167521 278429760 147456868 932844731 932844731 59900987 558970067 971244220 971244220 940641815 1009670893 1009670893 858244305 763217705 742445476 854903648 854903648 719897937 544919107 732652736 732652736 433391872 433391872 493750952 493750952 806525984 806525984 412226583 311611986 514602794 514602794 497363310 461909272 453805062 842683472 842683472 176834179 277464768 410603536 825805895 825805895 983638914 983638914 718739474 680076357 675316891 417949957 1017474132 1017474132 811985283 668197473 943575667 943575667 633703222 536685532 545095151 545095151 369619112 464587538 467189946 467189946 357809688 259954976 735018032 735018032 247989468 689701735 689701735 823923165 823923165 332010738 380326293 933918545 933918545 576852324 789269104 789269104 748682829 807985468 936999560 936999560 569376132 705560709 705560709 732703201 973679334 973679334 689643060 472011787 774950221 774950221 916695257 916695257 806478339 827799986 827799986 785697501 270542850 270542850 195657780 195657780 84725912 134892885 818598017 956478112 1008865551 1008865551 815919168 20187936 295844352 295844352 450417184 500423490 500423490 404013222 323290598 371659382 408577590 408577590 402700558 268744518 732841841 732841841 653912025 653912025 676499350 676499350 1060652638 1060652638 959715189 898519849 543170400 543170400 119261807 72179048 72179048 137078704 488187438 488187438 336086068 314368718 314368718 574124489 929674809 929674809 927335196 927335196 772577045 772577045 982376187 982376187 659079185 139914961 601064260 601064260 623271169 623271169 537539192 11270496 917057851 917057851 629709801 897223873 897223873 25423968 815724803 815724803 810159106 880800544 880800544 724575766 507312951 588895370 679687185 679687185 579395605 167772180 311372944 448925910 917478741 976937686 976937686 839904777 861880271 861880271 592581297 475189902 475189902 477141792 1030636470 1030636470 780142814 780142814 280232106 280232106 36380704 34096346 324004882 324004882 128434394 86760816 890035736 890035736 945083776 945083776 975572128 975572128 487330040 372379126 438325472 438325472 907067931 976840753 976840753 948492994 1057895958 1057895958 983232000 983232000 832242114 642109025 642109025 669516488 669516488 773947980 773947980 442034783 732007528 732007528 596239264 596239264 349122634 349122634 409070370 421919174 421919174 403639716 403639716 35030304 105121384 167380208 167380208 166600164 153124904 203473164 203473164 186123828 186123828 155490312 222482604 609783168 609783168 594396601 53502001 327378280 337776906 890769516 890769516 431036490 475653774 475653774 405277504 817643653 952650966 989333463 989333463 855511686 1009531978 1009531978 451568968 451568968 149346756 149346756 163657960 163657960 764479165 764479165 691822901 758178317 758178317 167773469 539404736 539404736 700515600 700515600 561775529 547950008 194381508 194381508 193004244 168109764 243286832 243286832 152569380 138110044 742558757 742558757 542851337 220927020 702585861 702585861 234991672 168481312 140223536 717361365 750791933 750791933 701447397 594271488 455395362 208121738 296940802 296940802 270273480 270273480 290713602 290713602 275657126 405642518 405642518 325770674 406520320 406520320 962835971 962835971 420346626 562419367 562419367 813144005 813144005 710296260 710296260 574130558 253804862 386998448 415372214 415372214 305472544 915801362 918239593 924924667 924924667 623151807 457458075 191179188 58788544 58788544 41943072 835624221 887122028 887122028 1006900628 1006900628 867226602 867226602 711077906 379809796 513851742 662931538 749025535 749025535 273092677 616929136 616929136 847905154 994723364 994723364 762933228 813959235 813959235 701183205 701183205 462606966 940106528 940106528 807575184 842191824 842191824 646344032 646344032 60952928 115706000 115706000 71369792 95701688 111355664 111355664 66065168 73139088 73139088 98700448 545261825 545261825 114032800 613341409 613341409 556713928 554222720 554222720 542114433 738788908 738788908 377610330 1008107942 1008107942 1048003044 1048003044 932706939 174995756 174995756 230163054 276636142 276636142 197214376 153987450 3936000 3936000 470664524 480092468 480092468 456779434 456779434 411632602 956982547 956982547 413926528 810414423 810414423 523009458 523009458 1047427328 1047427328 758772756 682242660 682242660 545967424 350213704 350213704 97515680 97515680 311801992 315806418 315806418 21009010 68030956 233706668 943753844 983354967 983354967 874007679 874007679 882165765 1017119055 1017119055 295081421 256326824 288686998 288686998 180373696 180373696 315949870 315949870 243346668 475010828 485099322 686556801 686556801 91229344 91229344 649204624 649204624 944712581 944712581 1009602380 1009602380 908325222 908325222 430174491 293209378 293209378 288621890 349174986 349174986 374935736 846758560 846758560 662765912 662765912 552794864 552794864 251521784 217186944 217186944 416155906 416155906 16126984 70924224 70924224 31624960 31624960 537306785 694010087 943856358 943856358 147864304 440794164 770561877 770561877 703936262 922357430 922357430 105023616 121684152 121684152 110161952 110161952 77264128 810951425 1039921287 1039921287 1020330735 891999531 885500361 428942612 428942612 294276304 943867936 943867936 562263079 562263079 948564967 948564967 533259269 917775947 917775947 327563451 316027074 316027074 890288826 923540809 923540809 395139440 151919652 563068388 943672915 943672915 719383840 702505151 702505151 979471996 979471996 659753028 902175397 902175397 874139149 906283035 906283035 739509996 261408812 261408812 211071708 263155048 263155048 67933088 67933088 25212328 292942400 348648858 348648858 119107786 87221344 110646038 455699276 572788050 807035621 807035621 774297447 856797284 1020053713 1020053713 1065987592 1065987592 1058674239 819844639 684532969 542322713 579020829 579020829 727755458 728761269 728761269 1029050910 1029050910 544611201 478155135 486539310 839402164 839402164 827508351 866181996 866181996 1015343514 1015343514 217829607 719610320 719610320 348399994 348399994 170372010 158387272 49926400 141083136 176735316 176735316 147640772 142229272 242661844 305355796 307632786 332923026 458100744 458100744 97648672 128612288 128612288 481634506 770320558 770320558 386708895 26337888 344981643 805603523 805603523 683704449 671088645 503333080 503333080 316328130 648584832 648584832 638342080 443360514 248394496 392678430 1045516189 1045516189 975624471 975624471 730966040 406256413 931841120 960722807 960722807 752431284 1070608634 1070608634 333448434 438040086 826079037 826079037 422117896 429171067 1068098943 1068098943 841625125 841625125 666046506 586835098 899064157 899064157 834191491 474355854 805917827 805917827 319366800 319366800 890002001 890002001 581958929 644554321 644554321 609448976 429464018 429464018 192753588 248063196 659259034 731237996 731237996 1048674915 1048674915 811444782 811444782 579242772 579242772 882971560 882971560 35651856 894755334 894755334 440503943 925444156 925444156 829351480 893767066 893767066 543026106 757661990 757661990 661424030 814063951 814063951 201457684 143219312 1012925331 1012925331 455344754 890317707 890317707 336595560 275014528 269878656 277449920 277449920 136145828 294405728 405021606 405021606 299060934 561397896 561397896 658192432 658192432 830243838 830243838 890881728 890881728 956639719 956639719 830668976 851652819 917741879 917741879 884082428 1029861602 1029861602 690010470 882169656 882169656 605095067 605095067 579879135 728140040 728140040 286194080 98245320 153666437 533797809 1022312142 1022312142 976350297 976350297 674036949 331423986 375521372 990117894 990117894 256518311 213976352 723389632 723389632 565263136 565263136 565397104 565397104 280142114 323780496 323780496 295946666 295946666 114443288 114443288 316835024 372818386 372818386 337930240 337930240 242294912 242294912 100663816 266600456 266600456 219519948 246934324 261378108 261378108 243436120 190972500 190972500 16777248 16777248 33148672 74421248 542275464 542275464 164441316 677944224 677944224 267522181 231951136 231951136 157770048 157770048 489164062 489164062 676541061 676541061 608295469 553912353 545524101 758370057 763105197 763105197 350208326 350208326 81933396 243073832 243073832 366137858 366137858 337892098 268497056 72448010 284828160 312411736 341052042 509151390 509151390 340337802 784619577 785157368 785157368 646639764 646639764 960819831 960819831 1036136683 1036136683 612597976 217751576 217751576 121722724 39428496 128580824 299628258 299628258 289542040 275725698 358635384 358635384 316331730 363657242 363657242 73742096 357935762 357935762 269844770 288494370 288494370 129084426 485767491 485767491 496241262 496241262 367049490 572212016 580630121 720782628 919279576 919279576 957272246 957272246 905919480 872939640 872939640 998333780 998333780 486861977 250700560 250700560 504447724 504447724 215819282 528862444 932977165 932977165 964575549 964575549 710150805 813192478 813192478 796047260 435279571 205855534 863246520 863246520 1011923855 1011923855 691135269 656556962 708506752 708506752 810348256 849801491 849801491 321775984 835133123 835133123 563460165 363469880 423360294 423360294 489361696 507011612 507011612 51908096 32318336 74580043 842158419 842158419 853950482 853950482 945179514 945179514 779787705 896599703 896599703 538444265 815854051 815854051 608648612 672114821 683948033 683948033 155563261 8473924 1000836504 1000836504 950434160 950434160 948234452 145229572 437372460 437372460 398960170 635350720 635350720 595933266 851858048 1009511934 1009511934 420699390 420699390 260298227 403715382 604867714 822183051 822183051 903873003 903873003 808133248 808133248 130980390 441899670 545804320 545804320 201376368 201376368 521558770 521558770 248636156 309514768 309514768 408953256 628288165 944073094 944073094 822479047 823546497 823546497 738733349 567928617 1025892406 1025892406 1057417756 1057417756 324609714 856364114 856364114 651167521 651167521 278429760 100925632 100925632 4719744 524416 17107264 17107264 174401940 177277888 177277888 557363932 804197753 804197753 663393593 788844037 788844037 301372224 544919107 544919107 8390784 8390784 4456512 17175040 18225696 806525984 858803267 858803267 311611986 830804258 883374411 883374411 461909272 362206562 842683472 874920201 874920201 814946306 334931269 420742368 1058603566 1058603566 823443361 680076357 851546258 851546258 417949957 1017474132 1017474132 811985283 668197473 943575667 943575667 633703222 325139292 325139292 514204434 514204434 473636170 339097932 71649984 12740744 144961860 265331241 265331241 247989468 689701735 689701735 885658827 885658827 915067995 915067995 933918545 933918545 338694429 847536400 941756679 941756679 206870415 936999560 936999560 552842213 705560709 705560709 732703201 973679334 973679334 700507201 759829677 774950221 774950221 579118069 219583456 219583456 827799986 827799986 819911233 819911233 752684556 307832466 936188152 936188152 636025708 636025708 956478112 1008865551 1008865551 578888051 857981252 857981252 606289960 450417184 500423490 500423490 847654169 847654169 884837977 884837977 608484347 835748099 849482498 849482498 984034195 984034195 720581589 649762986 357850489 161296512 585479380 726818389 726818389 543170400 543170400 101035656 36226320 210353836 210353836 176735316 176735316 476094528 483517134 483517134 376545486 375464346 353773728 353773728 208092678 117583932 100665384 100665384 51638832 51581456 34787856 34750464 4951264 25688160 72315008 72315008 12159616 28521312 355906400 544643882 897223873 897223873 25423968 25423968 810159106 810159106 273494147 273227776 1010350828 1010350828 929889515 679687185 679687185 579395605 715785623 720026903 720026903 475420997 742791309 742791309 835689812 835689812 449545048 370138124 750915789 797757363 797757363 1030636470 1030636470 840436587 538706720 842008066 842008066 835265763 903414379 1006768236 1006768236 100737048 100737048 1026299268 1026299268 188874800 679086646 823528975 823528975 1038094982 1038094982 438325472 438325472 907067931 907067931 572025227 854366899 1057895958 1057895958 983232000 983232000 634407169 642109025 642109025 669516488 791858128 791858128 657459081 657459081 354157233 35931936 351347080 351347080 294988386 294988386 88457930 274257888 274257888 123029608 123029608 130131604 130131604 758475289 758475289 204811020 723781939 723781939 272971154 302988306 806329861 806329861 777814932 777814932 528994857 528994857 214170510 327378280 337776906 890769516 890769516 431036490 475653774 475653774 347352326 817643653 952650966 989333463 989333463 708406338 67136728 167979248 451568968 451568968 149346756 149346756 163657960 163657960 236505760 236505760 85870376 88080672 88080672 73400712 67907808 109721864 158007600 172700820 172700820 189942900 189942900 151576588 148473384 148473384 172045496 218764332 218764332 92714776 92714776 542851337 542851337 204470156 702585861 702585861 119658664 119658664 113402908 706465991 706465991 521335742 542369473 542369473 455395362 208121738 296940802 296940802 270273480 270273480 269223520 426390282 426390282 95108640 95108640 408894722 408894722 406520320 962835971 962835971 420346626 562419367 562419367 813144005 813144005 710296260 710296260 574130558 478725690 386998448 415372214 415372214 402659394 279185442 279185442 277223490 1522176 135594928 191179188 191179188 58788544 58788544 41943072 835624221 887122028 887122028 1006900628 1006900628 867226602 867226602 684871756 276865346 537067664 537067664 522227855 998348762 998348762 842581779 616929136 113320152 113320152 113254400 77766416 98953704 98953704 69415176 69415176 50393392 657838128 657838128 944428167 1061589281 1061589281 646344032 646344032 60952928 74472168 74472168 71369792 95701688 111355664 111355664 61316600 73139088 114202144 114202144 115859776 115859776 114032800 130296176 386523152 386523152 119654722 113380488 290750592 605816449 605816449 377610330 1008107942 1008107942 919270619 358693593 952446202 952446202 621347989 639178035 699609957 846406316 846406316 349717242 329279002 272242434 391140296 391140296 111566632 6427008 236597376 236597376 135168 77751860 210065544 210065544 489781180 506387742 506387742 237669766 237669766 213928664 346649876 520342608 520342608 600759537 676616713 676616713 862937979 862937979 546574800 904436065 923047161 923047161 367415300 428682063 870420462 870420462 475039994 475039994 983859355 983859355 603206487 513395400 256326824 239746060 676146309 676146309 591677989 559988496 143865604 137628420 55252784 176294672 686556801 910493208 1016408783 1016408783 872753163 872753163 944712581 944712581 1009602380 1009602380 676336855 667831909 315597017 488627892 488627892 1014862947 1014862947 539133059 765231141 765231141 591661487 662765912 662765912 326566971 820635024 820635024 1004683833 1072829439 1072829439 664863438 339423424 339423424 276510594 29385122 29385122 295707042 295707042 370460600 370460600 387448988 387448988 470897916 470897916 372119866 187489690 476163772 476163772 230768732 498598950 498598950 444114752 553792650 810951425 810951425 895604906 895604906 891999531 885500361 784895180 214713565 776241339 838883508 1023414285 1023414285 562263079 948564967 948564967 849074856 917775947 917775947 488448514 269484546 629633552 629633552 536993793 106727588 184385140 184385140 197228832 330779174 330779174 134681520 164777150 255383004 274245478 470884878 659753028 902175397 902175397 678300945 473447708 739509996 739509996 72353403 211071708 211071708 583526664 644877273 742259332 742259332 341158538 443979268 549585482 821893513 821893513 616462721 1001568284 1001568284 799803710 807035621 807035621 774297447 856797284 1020053713 1020053713 1065987592 1065987592 1068397296 1068397296 684532969 542322713 579020829 579020829 727755458 728761269 728761269 1029050910 1029050910 544611201 1028933775 1028933775 868933261 839402164 827508351 884931924 884931924 537022139 1060685471 1060685471 1008255727 594813598 524103660 348399994 394377546 394377546 107045640 453967888 453967888 420219942 318770196 4325632 81209856 81209856 5507712 71630880 458100744 458100744 92927920 363843160 386140218 386140218 987348824 987348824 381121733 601540320 601540320 298894563 549453956 671088645 671088645 503333080 503333080 76415576 243539972 243539972 443360514 443360514 248394496 392678430 437714966 948389392 948389392 730966040 730966040 256975548 931841120 975298839 975298839 855765301 1070608634 1070608634 333448434 438040086 826079037 826079037 427238696 499259246 737414768 737414768 735449065 735449065 838983596 838983596 899064157 899064157 456653622 474355854 704872593 704872593 118075418 84750466 890002001 890002001 581958929 934161394 934161394 1008020097 1008020097 429464018 192753588 248063196 659259034 702089976 702089976 635211501 738271245 738271245 558080041 846503038 846503038 990289418 990289418 369324075 800119614 800119614 563390507 536993793 544563211 544563211 893767066 893767066 543026106 757661990 757661990 661424030 266544616 264307328 240347788 168245268 388539918 388539918 298117672 298117672 336595560 336595560 275014528 269878656 277449920 277449920 136145828 822886689 822886689 405021606 547264519 547264519 538917664 995619563 995619563 965772133 811406140 811406140 654200803 631818936 631818936 830668976 851652819 1025977316 1025977316 933471148 1029861602 1029861602 261748582 261748582 73449614 405020416 405020416 138953218 278189828 286194080 286194080 98245320 174035080 262813860 609095352 609095352 750995732 805653493 805653493 384313512 384313512 423311142 917712206 917712206 166409700 723389632 729916241 729916241 602270193 602270193 566376001 834614465 834614465 576651762 292728352 298423130 298423130 118279520 118279520 67505024 49602184 48503360 67999722 310378578 436375926 436375926 331649080 266600456 219519948 246934324 246934324 509631114 509631114 412522770 174137748 176226692 413688994 413688994 690165256 690165256 686207309 550001389 164441316 587783757 587783757 548062640 548062640 209545477 554736228 687112552 687112552 229486056 255937612 255937612 109890648 141369801 750793037 782984669 782984669 905524132 905524132 142454538 173166644 173166644 8388672 41943600 41943600 35881296 18084384 284828160 284828160 177903814 177903814 206283221 920058255 920058255 785157368 785157368 646639764 646639764 1069846762 1069846762 1036136683 1036136683 650240217 808460446 808460446 399109710 399109710 282897820 306338288 355678978 355678978 275725698 538054660 816335508 816335508 847190054 1036100615 1036100615 801711357 794769599 794769599 346604874 630257758 630257758 597541188 485767491 496241262 496241262 685975328 685975328 127533896 720782628 919279576 919279576 957272246 957272246 923009707 923009707 872939640 864552051 634618171 639895088 639895088 637904944 24191568 140280964 385570450 443282838 443282838 595109768 595109768 455818551 117710256 813192478 813192478 796047260 443293148 238002236 508184272 508184272 414372678 834787932 834787932 267837527 671716240 671716240 187592453 823088912 823088912 60340851 848582208 848582208 10127955 23279264 23279264 11702272 26395232 35147072 51908096 51908096 32318336 32318336 4728448 102243328 102243328 10355224 212410520 224433384 224433384 121118248 121118248 144943520 815854051 815854051 608648612 672114821 683948033 683948033 205838492 205838492 1000836504 1000836504 950434160 950434160 447266372 134229698 437372460 437372460 398960170 635350720 635350720 595933266 851858048 1009511934 1009511934 606560945 606560945 260298227 602956065 604867714 822183051 822183051 903873003 903873003 556032256 618948968 618948968 583043236 583043236 545804320 201376368 201376368 126895116 426475684 453193782 453193782 370373546 269725744 628288165 944073094 944073094 822479047 823546497 823546497 738733349 567928617 1025892406 1025892406 390633218 390633218 324609714 815879376 815879376 310455217 662356171 843633121 843633121 564340185 564340185 505619805 1044266509 1044266509 887050020 984190055 984190055 1020258664 1020258664 804197753 663393593 303335968 303335968 28592064 679741664 679741664 678717605 429988192 429988192 493377896 493377896 337527338 858803267 858803267 307393698 830804258 883374411 883374411 312573985 362206562 604335688 874920201 874920201 1003851415 1003851415 291174356 1058603566 1058603566 1015291720 1015291720 851546258 851546258 275841152 369176274 546317328 546317328 379167211 407970438 839999509 839999509 325139292 1042892785 1042892785 514204434 473636170 339097932 150695104 82735872 144961860 202763204 246367244 246367244 244287960 104878155 885658827 885658827 915067995 915067995 696436215 696436215 845787364 847536400 953861570 953861570 823956002 956828514 956828514 416162240 416162240 186984756 589609028 589609028 621162521 700507201 759829677 759829677 579118069 618672198 940207311 940207311 738815562 944610176 944610176 819911233 847513683 847513683 936188152 936188152 636025708 636025708 758243336 758243336 578888051 578888051 857981252 857981252 606289960 304091442 286261634 858465866 858465866 847654169 884837977 884837977 608484347 835748099 849482498 849482498 984034195 984034195 720581589 274082135 22094496 60514528 60514528 153396368 153396368 62940596 101035656 101035656 36226320 210353836 403342394 403342394 251842620 492851488 492851488 483517134 376545486 526254981 828061347 845616643 845616643 772351005 772351005 770534989 770534989 760942997 736418501 577822756 577822756 569594337 623192512 623192512 12159616 898315371 898315371 886820075 886820075 300704192 361137568 824430657 824430657 630598912 1029819139 1029819139 1032757221 1032757221 929889515 809632769 809632769 441061511 715785623 720026903 720026903 475420997 742791309 966648050 966648050 835689812 449545048 370138124 750915789 797757363 797757363 622485379 840436587 840436587 538706720 842008066 842008066 835265763 903414379 1006768236 1006768236 669440505 669440505 1026299268 1026299268 796674104 796674104 823528975 823528975 1038094982 1038094982 656601489 656601489 248143578 248143578 374174518 374174518 327976658 327976658 405192524 498387822 498387822 76681800 786785270 830920803 830920803 791858128 657459081 657459081 354157233 428435646 498677378 820877570 828639651 828639651 28611616 274257888 274257888 123029608 123029608 130131604 130131604 758475289 758475289 204811020 723781939 723781939 520111638 520111638 806329861 806329861 777814932 777814932 528994857 675383477 675383477 196613872 975122690 975122690 313015846 221170058 626950465 626950465 502145999 428448550 674835015 674835015 673975557 671998208 482601358 515989548 515989548 126330952 126330952 101080488 101080488 19351288 914742171 914742171 997859741 997859741 288027137 541200564 617124521 617124521 702139288 731047773 731047773 559825208 189942900 50207220 37100304 67108872 172045496 218764332 218764332 215381584 215381584 206961884 205453000 205453000 137615492 117109612 119658664 119658664 17351712 16929808 8597584 42086464 42086464 29635136 29635136 26355776 26805952 26805952 160440704 160440704 150275680 426390282 426390282 160434688 95893696 408894722 408894722 24155648 23778720 6931744 17689632 18770560 18770560 540346370 678458053 713072655 713072655 793189069 793189069 503451678 319820560 402659394 973197671 973197671 917872736 587309675 929462415 929462415 408045979 436932306 436932306 58696864 843862566 843862566 455838854 455838854 405199110 222761376 134818376 340787686 914494108 914494108 617669325 537067664 118620208 998348762 998348762 842581779 846647435 846647435 122820619 138641479 794528358 794528358 573615953 579462225 630713393 630713393 657838128 657838128 944428167 1061589281 1061589281 51025193 129825680 129825680 44006920 56192656 56192656 61078320 105293360 105293360 79588128 63659432 114202144 114202144 113613848 111481120 111481120 130296176 399411258 399411258 96470368 323018610 329024200 605816449 605816449 525111700 977835519 977835519 919270619 893678528 952446202 952446202 1027417916 1027417916 699609957 846406316 846406316 828508653 691151207 744747405 744747405 619241977 663181091 761634251 761634251 808525842 813135136 813135136 778724065 735697262 489781180 506387742 506387742 237669766 237669766 92292904 346649876 520342608 520342608 600759537 676616713 676616713 862937979 862937979 546574800 904436065 923047161 923047161 367415300 428682063 870420462 870420462 284214210 393216035 983859355 983859355 603206487 513395400 349756380 536618762 676146309 676146309 591677989 559988496 40245648 55252784 55252784 365728034 365728034 910493208 1016408783 1016408783 872753163 872753163 540082432 346173761 489382064 676336855 676336855 667831909 733340288 733340288 488627892 1014862947 1014862947 539133059 765231141 765231141 591661487 591661487 566776113 495382842 820635024 820635024 1004683833 1072829439 1072829439 664863438 339423424 339423424 276510594 10628738 10092736 284606530 284606530 370460600 370460600 387448988 393063408 478495112 478495112 372119866 273818880 492592802 492592802 230768732 498598950 498598950 444114752 553792650 553792650 358093313 879788548 879788548 877257867 784895180 784895180 599835787 776241339 838883508 1023414285 1023414285 553817254 468117888 265072440 849074856 849074856 488448514 488448514 819537011 826368760 901824747 901824747 360974120 628672425 628672425 627048576 627048576 198906448 134236460 104003556 255383004 264440328 264440328 238664940 755102988 755102988 678300945 202584588 202584588 436782102 873515550 873515550 806145027 610320641 644877273 888570561 888570561 341158538 846466901 846466901 1004235777 1004235777 616462721 1001568284 1001568284 964960358 957418327 963341254 963341254 218114178 491071662 491071662 667512908 667512908 1068397296 1068397296 211592042 407608356 1000728010 1000728010 315663361 847774803 847774803 967579477 968754147 968754147 1028933775 1028933775 868933261 793804878 478289548 884931924 884931924 537022139 1060685471 1060685471 1008255727 594813598 524103660 334834674 394377546 394377546 107045640 453967888 453967888 420219942 318770196 167786056 207508164 351883908 361311658 361311658 286152376 286152376 92927920 363843160 386140218 399384832 987348824 987348824 381121733 601540320 601540320 298894563 153131109 143163908 849134864 849134864 110136922 382488088 664285264 664285264 551531072 387193432 15328704 134238816 1070987331 1070987331 948389392 615365859 752259870 752259870 723734562 975298839 975298839 855765301 551148924 110706688 110706688 104539544 488591392 488591392 471723534 499259246 794194424 794194424 858653746 858653746 838983596 838983596 751270152 445445765 189052096 189052096 59713616 277142688 277142688 125141466 125141466 82645690 807916808 934161394 934161394 1008020097 1008020097 67446031 21570720 13115488 84420608 761565336 761565336 635211501 738271245 738271245 558080041 846503038 846503038 990289418 990289418 506765588 800119614 800119614 563390507 536993793 134234113 4243584 790677248 790677248 175687572 200289370 311167006 311167006 366099012 366099012 240347788 168245268 194038592 194038592 31553284 161261828 161261828 165421572 165421572 144518112 6252096 273911872 282190530 822886689 822886689 461869488 547264519 547264519 353700737 995619563 995619563 965772133 409288796 654200803 654200803 631818936 631818936 743475797 743475797 1025977316 1054102222 1054102222 1027856513 1027856513 385894417 323324288 239598984 405020416 405020416 297651174 297651174 278189828 6849920 67328916 245341905 642606988 642606988 679359836 737458227 805653493 851739389 907553641 907553641 884483234 917712206 917712206 834725072 834725072 729916241 729916241 602270193 602270193 566376001 834614465 834614465 576651762 296458056 392951226 392951226 118279520 309606058 309606058 113417080 379588674 379588674 310378578 436375926 436375926 331649080 201326880 201326880 79010472 148914708 509631114 509631114 412522770 346768801 346768801 413688994 413688994 690165256 690165256 763238688 763238688 189797909 587783757 587783757 548062640 548062640 614225806 614225806 687112552 687112552 611461002 742506893 744279693 744279693 800242197 800242197 782984669 782984669 905524132 905524132 142454538 328518530 328518530 61034160 273891538 398610456 398610456 271056962 401671504 401671504 312361562 246671566 251429596 920058255 920058255 759432240 763890937 763890937 1065537663 1069846762 1069846762 625139825 650240217 650240217 808460446 808460446 399109710 399109710 282897820 306338288 355678978 355678978 112856554 538054660 816335508 816335508 847190054 1036100615 1036100615 801711357 794769599 794769599 346604874 630257758 630257758 597541188 162082384 62840688 126466824 685975328 685975328 109625357 81975096 314915680 326243250 326243250 882149600 923009707 923009707 577259664 634618171 715606100 715606100 800511496 800511496 478492428 478492428 476710718 443282838 878764269 878764269 716184540 575325772 575325772 79698505 76130346 443293148 443293148 238002236 508184272 986551720 986551720 834787932 834787932 289162081 690693173 690693173 564643873 823088912 823088912 579255219 848582208 888950031 888950031 709096772 949873423 949873423 1018082824 1018082824 45402960 45402960 11307856 3163200 42492944 42492944 1837120 11967040 212410520 212410520 176621636 121118248 159782320 262412604 262412604 258178424 258178424 216316156 216316156 105066636 205838492 205838492 14544576 14544576 14544576 447266372 447266372 134229698 35128960 35128960 40435712 40435712 7122816 62214512 62214512 25386880 108804328 606560945 606560945 120654656 602956065 602956065 86418752 92651912 92651912 553763072 556032256 618948968 618948968 583043236 583043236 177258716 71090856 51415652 79891432 426475684 453193782 453193782 370373546 92632042 612399872 612399872 140909472 163502468 163502468 146542404 9178176 32314368 32314368 22450720 69030176 69030176 68422152 129359936 129359936 123282979 662356171 843633121 843633121 564340185 564340185 505619805 1044266509 1044266509 887050020 984190055 984190055 1020258664 1020258664 325075186 1061067117 1061067117 303335968 286703744 679741664 679741664 678717605 429988192 630355682 630355682 627811659 627811659 825395048 825395048 564310050 381141034 384541082 384541082 307182272 314130528 322561842 322561842 428400673 1003851415 1003851415 291174356 494756492 494756492 1015291720 1015291720 689532142 689532142 848432075 848432075 693014445 693014445 379167211 407970438 839999509 839999509 457228470 1042892785 1042892785 636603339 636603339 618881482 805583552 805583552 82735872 343865728 357685336 357685336 118036968 118036968 27398144 153297154 419565606 428564550 696436215 696436215 845787364 845787364 953861570 953861570 823956002 956828514 956828514 55481200 62020784 62020784 736717152 736717152 190698977 478393904 478393904 926240994 926240994 618672198 940207311 940207311 738815562 944610176 944610176 719797591 847513683 847513683 616636584 562036833 509886885 509886885 683794629 683794629 332324060 338504970 338504970 304947458 356721088 356721088 456920886 858465866 858465866 491443374 885880392 885880392 810998403 897351945 897351945 617660911 742419627 742419627 1043138317 1043138317 511184896 60514528 60514528 51115056 67446856 74283272 74283272 75233160 75233160 7909384 403342394 403342394 251842620 492851488 492851488 426247470 352634854 526254981 828061347 845616643 845616643 772351005 772351005 770534989 770534989 760942997 736418501 580801828 593539889 593539889 623192512 623192512 9595947 898315371 898315371 886820075 886820075 625797192 625797192 824430657 846075312 973743175 1029819139 1029819139 1032757221 1032757221 776079441 809632769 809632769 570426992 570426992 706275861 706275861 542115380 434294004 966648050 966648050 523735521 213972460 213972460 399378220 399378220 310908706 292966834 291030690 159044332 181572928 318180538 318180538 273297586 75024264 717784085 717784085 705184981 669440505 518003051 518003051 796674104 796674104 229530121 151520292 1032246603 1032246603 656601489 656601489 683183427 844612097 844612097 523368504 442827012 442827012 405192524 498387822 498387822 76681800 786785270 830920803 830920803 723748144 53145653 978765381 978765381 428435646 822132897 822132897 828639651 828639651 342958986 833959168 833959168 778949084 809685710 847251600 847251600 163730148 163762404 182674036 182674036 286734882 520111638 520111638 280345956 733363973 743477124 743477124 1000083063 1000083063 847458387 958016563 987336403 987336403 563963396 700988454 700988454 941978092 941978092 851243239 494015212 494015212 487723054 416481798 482601358 515989548 515989548 489947908 148906732 101080488 101080488 19351288 914742171 914742171 997859741 997859741 288027137 541200564 617124521 617124521 702139288 731047773 731047773 559825208 200814216 200814216 167673740 91855964 105998632 105998632 182747952 221791824 221791824 537617729 537617729 205453000 696704781 696704781 147318096 147318096 190857636 727867527 727867527 440402070 593768913 593768913 465778914 224707850 353887274 382586554 382586554 236726746 279187586 317668818 478886666 516108790 516108790 237568134 495885984 495885984 538063009 831176194 831176194 622743114 622743114 874800015 874800015 808550977 713072655 793189069 793189069 503451678 201330706 461806964 973197671 973197671 917872736 911642720 929462415 929462415 841093143 574824834 436932306 58696864 843862566 990156878 990156878 900177126 985980198 985980198 134818376 549630115 914494108 914494108 617669325 774179645 905703004 905703004 903431521 903431521 852677331 886068817 902824064 902824064 794528358 794528358 573615953 579462225 630713393 630713393 538766534 538766534 1037490927 1037490927 837123329 919371154 919371154 337817984 44006920 113344656 113344656 320346714 320346714 348201162 378685848 378685848 70780416 70780416 69206280 111481120 111481120 84079008 399411258 399411258 40030608 323018610 329024200 429392588 429392588 525111700 525111700 43119040 893678528 893678528 832857236 759642285 1027417916 1027417916 255405871 497207431 828508653 828508653 691151207 744747405 744747405 619241977 663181091 761634251 761634251 808525842 1050843946 1050843946 778724065 735697262 218905320 218905320 148584132 102889384 92004632 92004632 54625352 63098040 74677488 83572680 346381568 346381568 276077442 275911554 306184338 937592832 937592832 321133826 677697761 677697761 840206066 840206066 298960630 284214210 875356160 987172354 987172354 558678200 403366272 536618762 536618762 152379052 135531520 135531520 84523176 30142080 87721032 365728034 553735619 865187962 965741159 965741159 466564757 540082432 540082432 480982978 489382064 489382064 416148420 416147520 733340288 733340288 280825715 35395344 79831462 327775872 369250442 369250442 339906586 35850360 495382842 495382842 151187716 151187716 287400864 287400864 85903924 235541532 441587424 441587424 277659938 277659938 15059168 15059168 38641840 285788412 298077986 506776350 506776350 478495112 478495112 250475428 354017972 492592802 492592802 34078720 34079760 34079760 77864224 249862588 299143391 868506941 879788548 879788548 877257867 987895209 994603923 994603923 541102210 541200513 541200513 743148024 743148024 703824824 703824824 553676135 553676135 964037386 964037386 819537011 826368760 901824747 901824747 417138204 628672425 628672425 627048576 627048576 265109872 265109872 618987193 691573213 775763973 775763973 560862625 755102988 755102988 403958327 202584588 202584588 436782102 873515550 873515550 806145027 610320641 382200067 888570561 888570561 185067460 846466901 846466901 1004235777 1004235777 560806226 856050448 965568001 965568001 957418327 963341254 963341254 33555036 210764364 287258628 361235562 818741776 818741776 488800393 211592042 407608356 1000728010 1000728010 978397381 1070910207 1070910207 967579477 968754147 968754147 551553694 457717256 457717256 444739730 478289548 478289548 462570688 482112614 482112614 319081688 319605810 319605810 247587036 247587036 218756276 218756276 69780744 58937348 430021272 430021272 397658908 305040482 305040482 449818636 449818636 383088952 383088952 437063172 437063172 210911696 210911696 422129910 590052182 591963909 591963909 564532656 564532656 235675182 544048576 1030270701 1030270701 849134864 169530900 382488088 664285264 664285264 551531072 387193432 169728328 247020816 1070987331 1070987331 380633502 359824190 752259870 752259870 625209513 629409897 629409897 817562122 817562122 523813120 532211574 924362010 924362010 488591392 488036712 488036712 794194424 794194424 858653746 858653746 675594129 751270152 751270152 445445765 189052096 189052096 59713616 277142688 277142688 125141466 901865475 901865475 807916808 807916808 910067033 910067033 566769060 747835701 764289825 764289825 800659209 800659209 761565336 610010905 64037104 751043232 751043232 516745205 406642070 304429614 304429614 506765588 506765588 436519702 849869139 849869139 985053405 985053405 790677248 790677248 1045744287 1045744287 725878480 725878480 366099012 366099012 197427452 168202084 194038592 194038592 31553284 21098080 35653520 35653520 45720992 45720992 36980738 273911872 282190530 335203088 425512614 461869488 461869488 350250826 499451114 499451114 489759846 409288796 409288796 261295008 261295008 483334078 483334078 409937521 409937521 612373460 1054102222 1054102222 974129670 786617306 385894417 323324288 537544001 537544001 293707872 568956139 568956139 96134376 213436236 218823356 246770170 642606988 642606988 679359836 1025951168 1047288847 1047288847 907553641 907553641 884483234 683428422 695494113 834725072 834725072 429230501 725415089 725415089 56381216 56381216 269746592 269746592 53555184 296458056 392951226 392951226 107084154 309606058 309606058 113417080 379588674 379588674 308333730 437798774 437798774 416809542 160842148 160842148 79010472 148914708 148914708 157438016 364949698 364949698 346768801 166207596 230032576 230032576 1025531946 1025531946 763238688 474251423 721420340 721420340 539283825 144884149 614225806 614225806 472025419 902809832 902809832 824428523 744279693 744279693 800242197 986968791 986968791 703877093 1024664257 1024664257 588802744 596939864 596939864 61034160 273891538 398610456 398610456 271056962 401671504 401671504 312361562 246671566 251429596 251429596 144968132 759432240 767559872 767559872 1065537663 1065537663 992401719 992401719 287467605 39911488 306861580 306861580 228208790 393615318 513564808 513564808 348397690 285635058 285635058 395973464 395973464 389495610 389495610 347957354 369498138 487248672 506074398 996529912 996529912 647987821 195964227 316554098 327772289 464332918 853982597 853982597 546068357 546068357 578187280 578187280 326243250 326243250 594987234 842437443 842437443 577259664 577259664 715606100 715606100 800511496 800511496 480526372 480526372 476710718 391193274 878764269 878764269 716184540 575325772 575325772 79698505 78209792 400761115 400761115 836086250 836086250 986551720 986551720 380844449 380844449 289162081 690693173 690693173 564643873 740626236 740626236 579255219 825002256 888950031 888950031 709096772 949873423 949873423 1018082824 1018082824 348652746 348652746 308667486 308667486 274539648 278766658 338860162 338860162 452067458 452067458 176621636 353641226 353641226 262412604 262412604 258178424 258178424 216316156 216316156 71583808 8726592 294554004 294554004 465163234 465163234 189646372 243869884 243869884 410633004 410633004 392808042 333039162 333039162 314363730 278453848 70702856 78914560 78914560 3875104 13895936 70172744 70172744 86418752 92651912 92651912 77793704 77793704 75860288 71581696 71581696 22069248 71090856 71090856 10242688 79891432 276927840 276927840 271657544 271657544 92632042 612399872 612399872 140909472 163502468 163502468 146542404 9178176 32314368 32314368 22450720 273872410 323098816 365767914 365767914 278193832 333287336 333287336 374369874 387585594 857211955 857211955 772177951 907533625 907533625 839065889 839065889 829452763 1008762397 1008762397 671217492 1061067117 1061067117 410906502 410906502 410078466 555913856 555913856 270009634 630355682 630355682 627811659 627811659 825395048 825395048 564310050 64897072 314278576 314278576 302515472 314130528 322561842 322561842 305743906 302795984 309103636 653820170 653820170 584977464 1032543593 1032543593 945366389 689532142 848432075 848432075 693014445 693014445 187438100 187438100 694264083 694264083 457228470 635437369 723898152 871579873 871579873 817624899 805583552 805583552 1034418543 1034418543 1042918445 1042918445 777921168 569268057 569268057 927578210 927578210 419565606 279151963 4445216 841547782 841547782 459214326 459214326 435033890 410134240 410134240 408597120 408597120 172008080 736717152 736717152 621070377 621070377 508244169 926240994 926240994 178897896 142655556 883439976 965737575 965737575 454242870 984727949 984727949 616636584 616636584 825407751 825407751 1022358949 1022358949 454958460 295241738 295241738 805409284 805409284 661732008 356721088 456920886 1066350749 1066350749 629475410 885880392 885880392 810998403 897351945 897351945 617660911 1007740283 1007740283 1043138317 1043138317 970112052 626042226 626042226 309068958 309068958 705447041 705447041 380780736 582418524 1008634428 1008634428 1069547775 1069547775 1061962188 408513290 239117020 346885964 370206106 370206106 369412122 102877442 48866752 684463188 684463188 595048465 597035329 597035329 580801828 593539889 593539889 68975112 68975112 2008064 2008064 72513288 72513288 283168874 625797192 625797192 336293057 846075312 973743175 1013394018 1013394018 1025640775 1025640775 776079441 730734239 270275620 570426992 570426992 706275861 706275861 542115380 328237281 688367643 688367643 938595138 938595138 735966197 892727549 892727549 741066156 323667362 291030690 90702218 24383616 158384656 158384656 722771173 722771173 724357052 724357052 705184981 626673534 982913125 994185399 994185399 613076237 883532649 883532649 93883916 81098025 314902516 314902516 683183427 844612097 844612097 637558972 704940424 704940424 717301330 717301330 360640386 360640386 1012601445 1012601445 786494358 992003105 994872682 994872682 978765381 272629890 822132897 822132897 818174120 815039113 1025507650 1025507650 833959168 778949084 809685710 847251600 847251600 261241144 261241144 182674036 182674036 176237060 170945332 435258256 435258256 733363973 733363973 721341385 1000083063 1000083063 847458387 958016563 987336403 987336403 563963396 1068927980 1068927980 941978092 941978092 851243239 494015212 494015212 819146947 819146947 416481798 815936343 815936343 948177191 948177191 647311646 815385766 815385766 305339738 40596488 339046664 344084864 344084864 96998312 68706560 50204400 86645088 224989316 224989316 119933024 200814216 200814216 167673740 91855964 116443312 305036497 871840755 929829891 929829891 608936648 815573698 815573698 696704781 696704781 827769520 827769520 561575873 727867527 727867527 574790672 593768913 593768913 465778914 224707850 353887274 382586554 382586554 236726746 279187586 317668818 478886666 516108790 516108790 357105900 495885984 495885984 538063009 831176194 831176194 637534233 622743114 874800015 874800015 808550977 271717122 271717122 758170478 758170478 516020023 461806964 813793476 813793476 911642720 911642720 809533731 841093143 841093143 574824834 330149358 106883616 447703719 990156878 990156878 900177126 985980198 985980198 92545752 549630115 730018482 730018482 416408134 774179645 905703004 905703004 903431521 903431521 852677331 886068817 902824064 902824064 285474818 399524034 471868010 535104728 560986480 560986480 538766534 538766534 1037490927 1037490927 837123329 919371154 919371154 337817984 47913074 113344656 118042536 320346714 320346714 348201162 378685848 378685848 70777608 30627952 30627952 126103552 126103552 76041488 19139072 25964320 25964320 44903776 44903776 17566720 23860352 27792193 543046355 887973715 887973715 895122467 895122467 759642285 773399879 876156724 876156724 1006837804 1006837804 268509186 72523968 76804680 93975232 93975232 75581096 75581096 68163104 160048158 1050843946 1050843946 354382083 102385706 260843890 472458510 472458510 113560772 176737768 176737768 449021104 449021104 301734999 581961681 955155769 955155769 609356297 647238274 647238274 937592832 937592832 125845530 677697761 677697761 600214961 703421597 703421597 215540748 415153095 987172354 987172354 779171641 779171641 768814753 768814753 618150632 230686956 135666408 84523176 30142080 87721032 87721032 553735619 553735619 670106202 670106202 886317123 939731374 939731374 480982978 480982978 416148420 534593018 534593018 416147520 131146408 131146408 114516060 914043569 914043569 450479578 450479578 571350033 571350033 893656278 967100777 968239323 968239323 668512503 993095345 993095345 761598298 441587424 441587424 277659938 287432706 287432706 287318018 46697778 285788412 298077986 506776350 506776350 326004254 326004254 250475428 354017972 354017972 286066944 292859650 292859650 221834024 272638498 272638498 299143391 868506941 868506941 197315219 322486575 987895209 994603923 994603923 915014744 915014744 799953947 743148024 743148024 899777092 899777092 945234876 945234876 1023878217 1023878217 673251938 562562634 613157961 613157961 449317023 417138204 260061560 260061560 104282524 265109872 265109872 618987193 691573213 775763973 775763973 560862625 455787534 478048022 478048022 704907268 1007518998 1007518998 941222402 941222402 237036059 554388176 554388176 653920512 653920512 185067460 185067460 173148644 424024226 424024226 134217732 319794194 965568001 965568001 456141058 702309783 702309783 218114178 491071662 541403814 609823369 818741776 818741776 433947386 977653492 977653492 648595940 648595940 978397381 1070910207 1070910207 967069443 237509071 171887184 488114612 488114612 457717256 444739730 92537598 100685486 340887774 482112614 482112614 445275166 445275166 254633048 254633048 247587036 218756276 218756276 69780744 416035888 430021272 430021272 397658908 305040482 351932736 449818636 449818636 383088952 383088952 437063172 437063172 210911696 370148150 422129910 590052182 1055093236 1055093236 354025889 289413830 674552410 798051453 1030270701 1030270701 156533231 169530900 269484194 269484194 212301620 442246316 442246316 433514658 433514658 285872868 128247338 128247338 64176794 654446816 654446816 625209513 629409897 966791342 966791342 817562122 523813120 532211574 924362010 924362010 963066279 963066279 488036712 918866139 992883053 992883053 902459134 652156564 652156564 497492105 804003091 804003091 489630983 924332059 924332059 35414666 132781842 901865475 901865475 550906995 350014746 910067033 910067033 566769060 747835701 764289825 764289825 800659209 800659209 763560569 763560569 240622158 751043232 751043232 791283629 998116737 998116737 308745233 443949379 750780621 842010313 975965463 975965463 985053405 985053405 949496322 949496322 1045744287 1045744287 744785638 725878480 110564086 318342916 318342916 261281024 572430897 572430897 157058980 712787253 712787253 185664132 185664132 282817856 307812098 307812098 278799698 413446246 523551639 523551639 840482820 889456683 889456683 756590925 489759846 272960160 207753612 343781982 343781982 715799425 715799425 569323968 4259968 612373460 900980982 900980982 476297725 214118604 457179318 457179318 537544001 537544001 293707872 568956139 568956139 96134376 213436236 218823356 246770170 402010240 402010240 1053158879 1053158879 1047288847 1047288847 411325707 589304602 890376747 890376747 683428422 684236264 757520685 757520685 725415089 725415089 40614576 35338496 353902475 875705216 875705216 356989738 84954282 140768556 140768556 17207802 380057946 380057946 353049610 296912068 308333730 437798774 437798774 416809542 155354018 104858200 104858200 142051588 302773266 326002114 364949698 950535556 950535556 430581189 757194792 757194792 1025531946 1025531946 958933672 958933672 721420340 721420340 649335593 496394733 694750762 694750762 626264745 902809832 902809832 824428523 639804578 546443841 546443841 986968791 986968791 529703887 1024664257 1024664257 588802744 596939864 596939864 555710177 81832576 596861385 596861385 596825337 859869584 859869584 1011431367 1011431367 872893517 634145992 144968132 724895804 767559872 767559872 659914801 891357366 992401719 1059184791 1059184791 788578397 943352190 943352190 206009968 458873166 513564808 513564808 348397690 351692128 351692128 669229820 669229820 663470084 389495610 776011973 776011973 369498138 506074398 996529912 996529912 647987821 539135744 539135744 327772289 464332918 853982597 853982597 546068357 546068357 578187280 578187280 537605121 570083617 594987234 842437443 842437443 556714448 677482305 677482305 548833156 538128897 75927812 480526372 480526372 407451190 303561158 279056706 267108666 582857600 643927889 840372761 840372761 840309267 78209792 71091618 836086250 836086250 742396202 742396202 677503365 44278725 586584064 586584064 819952217 915356763 915356763 740626236 164260100 164260100 419270786 638119496 638119496 77450890 415586496 415586496 249038548 348652746 348652746 308667486 353595072 353595072 278766658 338860162 338860162 452067458 452067458 72550644 353641226 353641226 274344882 274344882 258194456 400576902 400576902 417632484 465786998 465786998 356627746 531294010 531294010 465163234 427156560 357798412 243869884 410633004 410633004 392808042 333039162 333039162 314363730 278453848 70702856 78914560 78914560 13755072 15753472 15753472 5378688 8202880 8202880 16982400 20838432 27496736 27496736 71581696 71581696 28099648 29396320 29396320 26981888 344571818 344571818 289355568 342885456 342885456 435435932 672104222 760740525 760740525 626391725 693561349 693561349 633610981 537470987 872680456 894200354 894200354 893963427 622683659 665422529 665422529 333287336 557412192 639706594 639706594 857211955 857211955 772177951 907533625 907533625 839065889 839065889 829452763 829452763 671217492 671217492 897991114 897991114 410906502 410906502 410078466 580172242 580172242 827266722 827266722 387656624 387656624 611549184 611549184 308082786 341242858 341242858 312805616 363081320 363081320 295377650 329068146 329068146 305743906 678202517 678202517 653820170 759744436 759744436 1032543593 1032543593 985535777 1014836230 1014836230 685509251 168829649 76648460 74498952 53161984 254489638 352846890 352846890 297395478 723898152 871579873 871579873 817624899 280220168 326195933 1034418543 1034418543 1042918445 1042918445 777921168 706401813 569268057 927578210 927578210 336473123 279151963 562058625 971166183 971166183 459214326 459214326 435033890 192966002 907178305 907178305 747982797 747982797 628476913 947020102 947020102 621070377 857370932 857370932 930737901 930737901 711334293 883439976 965737575 965737575 622066690 1034573424 1034573424 611458998 330094593 825407751 825407751 1022358949 1022358949 454958460 295241738 295241738 805409284 805409284 661732008 371218448 338090250 1066350749 1066350749 1061479464 662687725 662687725 801829593 801829593 420617254 420617254 1007740283 1007740283 1018155974 1018155974 970112052 626042226 626042226 309068958 309068958 705447041 705447041 605003976 582418524 1008634428 1008634428 1069547775 1069547775 1061962188 408513290 178018244 436598272 436598272 430094372 170444052 170444052 311039312 721293910 851843537 851843537 597493283 819296614 819296614 552735681 552735681 11744065 7544896 18376800 18376800 819264320 819264320 79321963 96542952 96542952 79353672 160165892 722491411 1013394018 1013394018 1025640775 1025640775 627706694 295049835 284954916 176161088 974179728 974179728 705028119 687865893 186908805 688367643 688367643 938595138 938595138 735966197 892727549 892727549 741066156 359188490 359188490 120510520 370052566 370052566 320249114 722771173 722771173 724357052 724357052 476011016 626673534 982913125 994185399 994185399 613076237 883532649 883532649 624979341 325707186 543565097 543565097 142901630 209983596 209983596 637558972 704940424 704940424 717301330 944538754 944538754 1004536311 1012601445 1012601445 786494358 992003105 994872682 994872682 513196780 1028708892 1028708892 818174120 818174120 815039113 1025507650 1025507650 158729285 129110286 308564016 327190608 327190608 261241144 261241144 202650504 192407354 336851466 415556622 435258256 435258256 357714892 126667568 356410490 356410490 606233616 606233616 570634257 688271426 965163111 965163111 1068927980 1068927980 965404806 340208899 916418657 916418657 781403743 819146947 819146947 175121280 815936343 815936343 948177191 948177191 647311646 856708593 944422863 944422863 396628346 339046664 344084864 344084864 96998312 102657400 102657400 105628752 105628752 119933024 125635864 125635864 97747872 113369304 113369304 116443312 305036497 871840755 929829891 929829891 608936648 815573698 815751312 843431347 843431347 827769520 827769520 561575873 561575873 574790672 574790672 42152000 16304064 23610048 38407168 331625680 331625680 419964876 419964876 222303688 222303688 241776272 241776272 124859608 357105900 357105900 160103548 176801006 944332992 944332992 805306371 507560071 281153730 272679042 272679042 362358378 362358378 758170478 758170478 516020023 453681292 813793476 813793476 811997571 811997571 798624876 489685806 489685806 426023650 426023650 106883616 445136962 445136962 58320816 27644236 67244384 92545752 92545752 70179424 55389360 55389360 44318664 71253768 272900136 272900136 358249760 358249760 620806672 620806672 163325738 431828838 431828838 399524034 471868010 471868010 403185296 403185296 499313830 680248462 680248462 84094080 277569696 324880416 324880416 295457008 47913074 46049824 118042536 118042536 79701616 12511120 97111928 97111928 60050000 30627952 30627952 126103552 126876952 126876952 396789322 396789322 59810640 325323266 325323266 372810224 399452552 399452552 543046355 887973715 887973715 895122467 895122467 291573502 773399879 876156724 876156724 1006837804 1006837804 704068581 652693981 717893113 717893113 781003869 1008785697 1008785697 883140429 756032149 593314912 917589400 917589400 814033486 260843890 472458510 472458510 218284320 218284320 188430244 449021104 449021104 301734999 581961681 955155769 955155769 609356297 647238274 647238274 899933538 899933538 873240816 873240816 268730617 600214961 703421597 703421597 215540748 255647812 255647812 571587088 779171641 779171641 768814753 768814753 618150632 230686956 135666408 23733248 17351712 60817626 492066102 492066102 411732596 771093342 939862023 939862023 939731374 939731374 117575736 815929876 815929876 534593018 534593018 152145314 131146408 131146408 114516060 914043569 914043569 450479578 450479578 571350033 571350033 893656278 967100777 968239323 968239323 668512503 993095345 993095345 761598298 443782912 443782912 268681218 287432706 287432706 287318018 416030017 962805187 962805187 504527709 613570599 613570599 454606906 454606906 397446418 321415882 680108553 680108553 677218660 606430344 606430344 272638498 117532528 79218504 63458080 278173136 278173136 27971650 828514328 828514328 915014744 915014744 799953947 486817821 1043503762 1043503762 899777092 945234876 945234876 1023878217 1023878217 478810149 562562634 613157961 829999840 829999840 917268941 917268941 1017539848 1017539848 236102332 364204214 364204214 642850988 661332641 761970561 761970561 470824365 478048022 478048022 819251922 1007518998 1007518998 1049643999 1049643999 482114114 554388176 554388176 711157301 711157301 102374152 899861757 899861757 424024226 424024226 134217732 319794194 319794194 674823058 979041443 979041443 833041667 844567232 847587411 847587411 788664859 731458165 496677474 496677474 977653492 977653492 929849368 929849368 880283030 880283030 621561385 433596401 183178036 183178036 488114612 488114612 286275604 457783460 457783460 266153046 123608760 106239672 411751284 445275166 445275166 254633048 254633048 230242592 233049692 233049692 65635494 416035888 428188884 428188884 246127264 246127264 351932736 351932736 33833536 70337024 70337024 125829680 473172600 473172600 370148150 370148150 135528448 1055093236 1055093236 250664023 283690628 674552410 798051453 798051453 604554249 604554249 471385614 471385614 485880628 485880628 442246316 442246316 433514658 433514658 285872868 307171588 307171588 261274758 711172659 711172659 980042198 980042198 966791342 966791342 492966247 874005089 874005089 538472547 738796589 963066279 963066279 570028680 918866139 992883053 992883053 902459134 652156564 1013957025 1038798002 1038798002 804003091 489630983 924332059 924332059 35414666 840048899 840048899 324800178 279302850 290981234 290981234 281874336 648094417 663822793 663822793 635243576 177813029 143722509 763560569 763560569 240622158 465436990 728670006 791283629 998116737 998116737 473031438 473031438 750780621 842010313 975965463 975965463 950796368 717783516 949496322 949496322 949815473 949815473 744785638 189793828 189793828 318342916 318342916 261281024 572430897 572430897 157058980 712787253 712787253 185664132 185664132 282817856 307812098 307812098 278799698 413446246 523551639 523551639 840482820 889456683 889456683 756590925 486097030 73197992 14810688 343781982 343781982 715799425 715799425 569323968 22646480 22646480 900980982 900980982 476297725 411075584 457179318 457179318 322961542 280023520 27394880 12374368 166539264 212741356 212741356 143469636 20032580 96839007 613406307 1053158879 1053158879 805851635 975869540 975869540 589304602 890376747 890376747 694253412 684236264 757520685 757520685 695469176 695469176 105990496 601686752 665585536 875705216 875705216 356989738 84954282 140768556 140768556 98828512 380057946 380057946 353049610 457032214 457032214 408161828 300564690 300564690 81789296 104858200 104858200 82383752 302773266 326002114 326002114 1025371695 1025371695 430581189 1007789986 1007789986 949011015 1064871718 1064871718 958933672 727826954 894039811 894039811 815373760 694750762 694750762 626264745 826095166 826095166 639804578 639804578 323494873 47370960 13811792 11133442 17835842 17835842 279593488 303541568 308467859 555710177 555710177 289849763 596861385 596861385 779741264 859869584 859869584 1011431367 1011431367 872893517 634145992 88344744 724895804 724895804 659914801 1007545359 1007545359 891357366 1059184791 1059184791 788578397 943352190 943352190 432025672 458873166 458873166 119836752 119836752 351692128 351692128 669229820 669229820 663470084 644268682 776011973 776011973 223396276 223396276 564318028 582244433 582244433 539757825 539135744 563085921 565367777 565367777 31980289 99244368 120327480 121575456 121575456 537605121 570083617 570083617 559274632 166466948 151668832 677482305 677482305 548833156 538128897 211852160 211852160 114430680 243628936 243628936 203473164 247671516 677079636 677079636 840372761 840372761 840309267 210289408 134234624 988889670 988889670 742396202 742396202 677503365 44278725 586584064 586584064 819952217 915356763 915356763 544766370 427324477 427324477 984309005 984309005 638119496 640944921 1071204259 1071204259 887631430 71319872 30149856 21807200 376046096 376046096 311360978 311360978 306532354 44175442 179385484 179385484 107490576 153428736 274344882 274344882 258194456 400576902 400576902 417632484 465786998 465786998 356627746 531294010 531294010 427156560 427156560 357798412 143856256 131072760 131072760 121708728 121708728 99540456 99540456 80403944 2911432 2831616 139655892 139655892 53666192 157551172 157551172 29490464 49768488 98955720 247041084 247041084 119636040 145723428 145723428 34939152 40905088 40905088 142573380 344571818 344571818 818860227 818860227 860757171 860757171 672104222 760740525 760740525 626391725 801254108 801254108 734447728 734447728 872680456 894200354 894200354 893963427 622683659 665422529 665422529 334545906 557412192 639706594 639706594 119683410 322212864 322212864 52687152 442053940 442053940 323151266 323151266 276486018 140516388 140516388 56788256 671229859 671229859 705641395 705641395 580172242 887587643 887587643 827266722 548719425 639603097 639603097 577005080 310283363 911933576 911933576 313826336 363081320 363081320 295377650 329068146 329068146 278859824 678202517 695558052 695558052 759744436 759744436 707546377 1024721398 1024721398 1014836230 1014836230 685509251 168829649 76648460 271622718 271622718 253878588 996282807 996282807 796562707 928251711 928251711 946593675 946593675 820470088 820470088 205559040 418847154 418847154 540578068 706401813 706401813 537469953 629548138 749155184 749155184 236996646 562058625 971166183 971166183 409163235 409163235 302777362 276851264 907178305 907178305 747982797 747982797 628476913 947020102 947020102 536205940 994653216 994653216 977408151 930737901 711334293 711334293 590212401 590212401 922864832 1034573424 1034573424 394732398 308960564 308960564 822997476 822997476 706863381 988458431 993940959 993940959 833265374 436357904 436357904 371218448 338090250 304257592 1061479464 1061479464 945096705 945096705 780351603 780351603 88943784 141558660 372813386 372813386 1070590414 1070590414 715753332 715753332 308619666 308619666 167889294 78489600 605003976 605003976 48386944 48386944 146412672 149947332 149947332 473524016 473524016 455853514 451157574 451157574 430094372 170444052 170444052 311039312 721293910 851843537 851843537 597493283 819296614 819296614 290239877 64037616 108929464 108929464 59521153 588199009 819264320 819264320 386203785 823332993 823332993 79353672 462897952 722491411 722491411 857738114 857738114 627706694 742917252 809534729 809534729 1004587142 1004587142 974179728 705028119 687865893 186908805 174328212 134617092 134617092 17825824 51388208 51388208 86917380 510575288 510575288 359188490 120510520 370052566 370052566 320249114 213785488 502792230 502792230 747948621 962252395 962252395 954391494 954391494 339738762 69082632 809828356 1009563656 1009563656 423698598 681268684 741347849 874552067 874552067 728124842 427192594 427192594 208718346 435260472 944538754 944538754 1004536311 1004536311 880988604 851701971 851701971 71603200 457443358 513196780 1028708892 1028708892 610291720 610291720 749079489 749079489 205654528 801910937 801910937 539297468 588293124 588293124 214046212 202650504 202650504 192407354 336851466 415556622 415556622 369323736 829473699 829473699 828355359 548942321 582576031 1046165151 1046165151 688271426 965163111 965163111 165775796 965404806 965404806 1013458347 1013458347 916418657 781403743 776132072 864575873 864575873 514027887 197197890 79970344 79970344 954649784 954649784 987485389 987485389 617024115 617024115 142978252 80049568 743597765 743597765 210415624 803373137 803373137 233973224 177905836 168018048 101765944 113369304 113369304 103825576 73277064 73277064 73277064 100996880 100996880 605643408 815751312 843431347 843431347 825221315 581774673 30437297 29098496 29098496 14366400 15033472 15033472 23543936 25567232 86326808 127469864 419964876 419964876 321138032 321138032 371201334 396362042 396362042 131149888 421324424 462178920 462178920 944332992 944332992 805306371 411694215 281153730 272679042 272679042 362358378 363988163 818565122 818565122 116613680 100946066 438516951 725714119 811997571 811997571 859134681 946338183 946338183 548251116 426023650 100700520 590409929 590409929 66839160 620815681 620815681 86779800 86779800 70172160 40390544 539172117 605261312 974019357 974019357 677778056 458363658 877789481 877789481 778968477 957101280 957101280 431828838 346137458 346137458 308617456 403185296 403185296 499313830 680248462 680248462 840805514 840805514 324880416 324880416 299262146 299262146 327215712 327215712 280094930 335021552 335021552 293356706 282068048 60050000 42788800 57484304 155929621 155929621 126876952 396789322 660619065 717760373 717760373 692985921 712313253 788897981 788897981 705856812 712033173 753277376 753277376 291573502 291573502 364524072 473108270 473108270 526850993 704068581 973839406 973839406 717893113 717893113 781003869 1008785697 1008785697 933290963 756032149 593314912 917589400 917589400 814033486 481829114 481829114 371872448 371872448 218284320 188430244 228292332 264634752 264634752 175255692 157162020 102780600 102780600 118484066 296860178 899933538 899933538 873240816 873240816 595748256 238750328 210338624 210338624 205121292 193012780 790217772 790217772 571587088 164102816 164102816 219809224 219809224 117626553 117626553 103277432 103277432 102814409 492066102 492066102 887132960 887132960 939862023 939862023 886112263 538190031 344982090 815929876 815929876 65325552 910163994 910163994 582652389 936428283 936428283 660795506 660795506 540558680 819857710 819857710 230951472 402918854 402918854 286523776 319967296 319967296 508747700 508747700 243005340 443782912 443782912 67240706 0 0 18874656 416030017 962805187 962805187 504527709 613570599 1043144992 1043144992 631268578 935102057 935102057 759447659 680108553 677218660 606430344 606430344 149410974 355732266 355732266 256530010 523158694 523158694 493929390 828514328 839696637 869216266 869216266 1032459375 1032459375 1043503762 1043503762 809505567 857772708 980603799 980603799 660099763 926565779 926565779 667969096 849462978 849462978 917268941 917268941 1017539848 1017539848 236102332 405240559 877715475 877715475 777386004 761970561 761970561 470824365 441433220 441433220 819251922 819251922 984477015 1049643999 1049643999 482114114 660889016 660889016 916603011 916603011 383686266 899861757 899861757 761229576 295937984 196794228 42655057 274210689 674823058 979041443 979041443 833041667 844567232 847587411 847587411 788664859 731458165 496677474 496677474 845015146 845015146 929849368 929849368 880283030 880283030 875078122 433596401 183178036 183178036 193463412 315409842 315409842 457783460 457783460 277990446 265977992 415798474 415798474 411751284 182715290 249775392 249775392 230242592 233049692 233049692 57348172 139432960 304497162 304497162 230640540 301611330 528698880 528698880 455377694 374447680 374447680 468035612 476160593 1007755791 1007755791 1027277502 1027277502 591019303 591019303 863148502 866153072 866153072 81739464 546477640 604554249 604554249 546459656 471385614 485880628 485880628 444383656 521932350 521932350 398564274 256055976 307171588 369098752 369098752 856752320 856752320 980042198 980042198 633067448 584387272 381237999 874005089 874005089 361284714 738796589 898307142 898307142 570028680 102760728 173015364 1026335678 1026335678 552455489 1013957025 1038798002 1038798002 399526534 308464663 131002488 131002488 30934752 840048899 840048899 692007969 692007969 290981234 599280204 799053613 799053613 663822793 663822793 635243576 126956040 126956040 85394296 1026886432 1026886432 286526255 285476898 304357893 759003531 759003531 643558673 640544025 604053513 604053513 137364228 137364228 302515218 718612740 942771153 942771153 949815473 949815473 591670855 189793828 189793828 156763812 138314000 145576960 145576960 50331696 186681392 186681392 172752960 172752960 38578352 44200704 168315044 168315044 728638772 728638772 570999825 99664872 342411976 946626726 946626726 879617411 682967975 609223305 2281728 2281728 1315328 1315328 170704080 170704080 935468023 935468023 492381870 759804973 759804973 502650150 411616326 411616326 608195011 608195011 271131906 563098863 563098863 212741356 212741356 226909284 226909284 285429130 613406307 613406307 369591528 805851635 975869540 975869540 608681272 515651702 694253412 827327139 827327139 287444105 71180040 646489760 646489760 105990496 606223640 665585536 665585536 303047080 71304712 75239304 95161088 95161088 98828512 98828512 96469224 111860928 457032214 502056060 502056060 300564690 300564690 178053688 79696576 79696576 82383752 82383752 87108456 215238603 1025371695 1025371695 621661665 1007789986 1007789986 949011015 1064871718 1064871718 727826954 727826954 894039811 894039811 815373760 257875073 343984764 343984764 867353212 867353212 305797075 550097197 550097197 753493738 753493738 542971083 501208736 501208736 475661566 583179513 590273720 590273720 826875271 826875271 802065605 661887036 779741264 779741264 774702938 774702938 644139417 142958092 142958092 8913984 265317076 265317076 658867382 1007545359 1007545359 860406963 860406963 637567085 633652253 351334831 432025672 467146841 1013587897 1013587897 946830034 946830034 442150146 106516938 106516938 360499584 644268682 644268682 945881257 945881257 658125338 658125338 567113972 799161929 799161929 583008081 538382645 599572560 599572560 569273861 698097229 749426536 749426536 121575456 121575456 120647484 68164304 157566600 166466948 166466948 151668832 137943428 180919168 180919168 171967764 211852160 404098696 404098696 243628936 293026252 353231786 1013590222 1013590222 1013395615 605501203 1024802842 1024802842 210289408 134234624 988889670 988889670 718790088 718790088 745286221 745286221 366140121 212350566 138341816 565962824 731779640 731779640 680807140 1012621402 1012621402 992032405 940436487 749938575 1071204259 1071204259 887631430 335809930 335809930 331925270 376046096 376046096 311360978 311360978 306532354 475862534 475862534 253560500 302848310 302848310 186987412 186987412 150211524 150211524 145090884 494434768 530579070 530579070 137363776 137363776 126747016 73538232 73538232 235087304 256521492 256521492 115351904 121708728 121708728 99540456 99540456 80403944 77503688 92140736 139655892 139655892 53666192 157551172 157551172 29490464 49768488 98955720 247041084 247041084 119636040 145723428 145723428 126778544 69604112 82652552 142573380 142573380 446042944 818860227 818860227 860757171 860757171 371634063 554952424 587290124 601031305 801254108 801254108 734447728 734447728 274461704 557487744 557487744 325000602 325000602 113429768 301237824 334545906 349897472 349897472 330110752 544611201 895663025 895663025 644139417 644139417 645010329 645010329 642860977 593200819 550614162 569777121 845730386 845730386 671229859 705641395 705641395 370857746 887587643 887587643 548719425 548719425 639603097 639603097 577005080 363468138 911933576 911933576 313826336 289432786 76639642 324023008 324023008 33662064 59334672 59334672 695558052 695558052 511184537 671190272 671190272 1024721398 1024721398 1018291023 1016334927 1016334927 366556064 517286622 699807142 772277277 1007310353 1007310353 996282807 897426442 928251711 928251711 964807275 964807275 820470088 820470088 606602505 680655233 752754381 752754381 707789589 707789589 537469953 706705984 749155184 749155184 502434048 502434048 272782582 402866640 402866640 31533186 7682816 276851264 476205576 476205576 43115088 43115088 707749888 707749888 536205940 859853920 994653216 994653216 977408151 151201011 142607364 64936688 64937712 64937712 922864832 946306581 946306581 143669459 308960564 557336136 822997476 822997476 706863381 988458431 993940959 993940959 833265374 436357904 496113680 496113680 419743782 516836604 702252234 785906397 945096705 945096705 970129928 1036202223 1036202223 141558660 879658511 879658511 1070590414 1070590414 810290308 745996183 745996183 433217102 433217102 743577625 743577625 583801088 644383452 1062930092 1062930092 976750359 976750359 957547716 501868014 501868014 451157574 451157574 737074677 737074677 737074677 529177670 512673113 88135696 404611687 850943815 850943815 730518645 573097233 573097233 851168771 851168771 850684736 845127058 845127058 818672835 814226450 823332993 827469900 827469900 854595303 959033884 993047482 993047482 857738114 592710321 742917252 809534729 809534729 1004587142 1004587142 277425607 595714161 595714161 453327185 906404038 906404038 887359947 1015405275 1015405275 553393518 553393518 543654204 510575288 290533952 364065402 364065402 253427492 253427492 75665960 407792186 407792186 747948621 962252395 962252395 954391494 954391494 471908622 82854598 809828356 1009563656 1009563656 423698598 681268684 741347849 874552067 874552067 728124842 427192594 427192594 154924332 424853664 424853664 403837446 207095436 592102422 961053760 961053760 851701971 782016130 806788834 806788834 922230568 922230568 616302146 310411484 310411484 501219822 501219822 801910937 801910937 539297468 588293124 588293124 105265344 223583240 223583240 139198872 174329264 178295696 178295696 141819179 829473699 829473699 828355359 548942321 582576031 1046165151 1046165151 445666004 626955881 684371044 684371044 256592963 268599583 1013458347 1013458347 656666937 627803280 776132072 864575873 864575873 514027887 636561228 636561228 289616679 954649784 954649784 987485389 987485389 617024115 617024115 142978252 80049568 743597765 743597765 210415624 803373137 803373137 233973224 177905836 168018048 101765944 101765944 103825576 134143992 388984777 875302155 881599177 881599177 843655946 605643408 605643408 306676689 652758352 652758352 807403699 807403699 831165234 831165234 579235696 15033472 15033472 23543936 39068672 64647024 64647024 325846514 325846514 321138032 321138032 371201334 396362042 396362042 131149888 421324424 462178920 462178920 667732110 667732110 537069278 741157137 741157137 270587350 920355813 970998239 970998239 818565122 818565122 299496996 413671570 448256884 448256884 896820912 896820912 859134681 946338183 946338183 548251116 385293680 385293680 590409929 590409929 371622000 620815681 620815681 111853856 86779800 70172160 40390544 539172117 605261312 974019357 974019357 677778056 458363658 877789481 877789481 796657578 957101280 957101280 716417059 716417059 371207706 371207706 479773704 479773704 741436208 935269675 935269675 847830632 847830632 109153449 151501052 343765680 343765680 327215712 327215712 280094930 335021552 335021552 293356706 282068048 37241264 42788800 57484304 176817216 176817216 84444521 179242485 660619065 717760373 717760373 692985921 712313253 788897981 788897981 705856812 712033173 753277376 753277376 375527786 375527786 514627652 514627652 423367052 111492444 671103992 973839406 973839406 463277544 138640832 348910794 999822054 999822054 933290963 157902942 157902942 360729024 520489186 520489186 481829114 481829114 371872448 371872448 21665066 120980840 120980840 264634752 264634752 102961916 85066816 85066816 67171672 67171672 615152408 615152408 607804480 608476169 608476169 595748256 782576017 782576017 640271645 752621344 752621344 790217772 790217772 744084269 744084269 717818613 717818613 581047958 168226434 168226434 103277432 103277432 353370304 532742776 563093510 887132960 887132960 459286700 883288554 883288554 67437254 344982090 344982090 218269824 222746796 910163994 910163994 582652389 936428283 936428283 660795506 660795506 540558680 819857710 819857710 230951472 402918854 402918854 286523776 156799896 227364940 410563784 459950794 459950794 295366048 295366048 313893266 326478722 326478722 326421426 460070928 944172230 944172230 822808416 871898179 1043144992 1043144992 631268578 935102057 935102057 759447659 626289992 626289992 118262688 228196936 228196936 355732266 891353088 891353088 841747731 523158694 824402800 891355331 891355331 1007554806 1007554806 1032459375 1032459375 485627846 451287860 432538854 857772708 980603799 980603799 660099763 926565779 926565779 667969096 849462978 849462978 12583072 29364384 167780740 178258100 178258100 405240559 877715475 877715475 777386004 470047152 1057104521 1057104521 538941363 538941363 248799902 558498881 984477015 984477015 176948555 76145736 660889016 660889016 916603011 916603011 383686266 383686266 761229576 761229576 464426918 464426918 448202422 445719126 277938196 197039170 976786432 976786432 176631825 679741509 684460101 684461253 702162628 702162628 138556648 281483352 281483352 135530644 454903996 796690390 875078122 875078122 708932018 725872821 1023582362 1023582362 315409842 315409842 200539588 277990446 277990446 265977992 415798474 415798474 217455870 167660132 11109632 49018320 58720256 315097136 315097136 8389842 139432960 304497162 304497162 230640540 301611330 528698880 528698880 455377694 374447680 374447680 468035612 476160593 1007755791 1007755791 1027277502 1027277502 1011945001 1011945001 863148502 866153072 866153072 549631069 549631069 417098830 546459656 614197362 938609926 938609926 768297035 637638890 521932350 521932350 527982428 527982428 151209600 372317472 372317472 856752320 856752320 882225251 882225251 584387272 584387272 381237999 490923978 490923978 993429203 993429203 898307142 898307142 751499008 751499008 1038353197 1038353197 1026335678 552455489 552455489 738364424 877017219 877017219 639473673 639473673 903981211 903981211 609558833 421753361 692007969 692007969 170182164 688147229 799053613 799053613 607991472 1053505661 1053505661 991956014 991956014 847061428 1026886432 1026886432 410124454 285476898 304357893 759003531 759003531 643558673 759072881 759072881 787281604 787281604 199941781 388686201 718612740 942771153 942771153 812929926 968690065 968690065 302977939 351405050 378438312 378438312 145576960 570425361 570425361 186681392 684321045 684321045 23929856 63033700 142721460 168315044 168315044 832519639 832519639 570999825 736625592 736625592 946626726 946626726 879617411 682967975 609223305 550126629 514402066 977220974 977220974 698936768 698936768 969392597 1046437692 1046437692 941959431 759804973 502650150 687188481 761390541 806867938 806867938 273288298 563098863 563098863 152566308 145677636 667943065 667943065 285429130 632724649 632724649 673566341 673566341 265299312 608681272 764513544 764513544 657654633 827327139 827327139 287444105 109321272 125829240 125829240 74230513 606223640 606223640 553981960 290262192 660868127 660868127 166595748 628560617 975512616 975512616 974076951 911879703 337249873 684853885 802205364 802205364 622479600 622479600 79696576 79696576 78852936 78852936 27641664 30861056 278627296 286016097 621661665 621661665 269218818 673304854 673304854 760217752 760217752 281043521 275850114 47300946 0 59278892 343984764 343984764 867353212 867353212 621282944 787485173 787485173 753493738 753493738 542971083 501208736 501208736 475661566 583179513 590273720 590273720 826875271 826875271 802065605 1037125994 1037125994 1006765343 1006765343 957308646 957308646 846815818 846815818 698090505 705170056 705170056 89227920 689778213 689800321 689800321 637567085 637567085 872753224 872753224 749249632 749249632 1013587897 1013587897 946830034 946830034 442150146 106516938 106516938 657341676 657341676 469304502 945881257 945881257 658125338 732891552 732891552 851234643 851234643 588638769 588638769 602281680 602281680 647502532 698097229 749426536 783556090 1051004704 1051004704 1000921480 1000921480 780824868 419755252 230503672 230503672 137943428 180919168 180919168 171967764 189726912 404098696 479800412 479800412 301733506 445716217 1013590222 1013590222 1013395615 738660922 1024802842 1024802842 690303428 690303428 867350310 867350310 784778080 981681758 981681758 745286221 755303966 932038939 932038939 811806336 811806336 731779640 763775150 1012621402 1012621402 992032405 940436487 749938575 836959845 856972786 856972786 335809930 335809930 701509253 701509253 676559429 720736981 720736981 213703644 544116437 684225956 722543157 724379056 724379056 315950134 315950134 151018864 526050370 526050370 494434768 530579070 530579070 528120250 528120250 424641548 454693616 454693616 294787812 256521492 261203284 261203284 228282224 117133960 82597928 101108040 101108040 77503688 97178856 97178856 88302656 1497600 4477568 22573184 42524224 42524224 25670352 88805416 88805416 16901280 98461832 126778544 126778544 126142528 126142528 82652552 451186566 451186566 446042944 291787074 330962802 580035874 580035874 536993793 203998008 299386006 299386006 260836476 260836476 143530606 394698242 557487744 861888176 861888176 649307819 659300465 659300465 348145475 615314224 837487650 837487650 544611201 895663025 895663025 644139417 644139417 645010329 681196673 693021863 693021863 550614162 569777121 845730386 845730386 533859127 246583985 177826884 177826884 176359136 170271056 520351806 957079816 957079816 573170961 537960836 363468138 363468138 252842556 252842556 214488816 71836376 324023008 324023008 30420114 54005392 54005392 727844240 727844240 272113061 987873910 987873910 977102921 1018291023 1018291023 1016334927 1016334927 366556064 628513551 699807142 772277277 1007310353 1007310353 923809044 897426442 695485354 888458946 964807275 964807275 768105856 768105856 606602505 680655233 752754381 752754381 707789589 707789589 102385653 706705984 706705984 535175398 502434048 502434048 502861082 502861082 694614337 694614337 343394696 610429643 952424601 952424601 1050366815 1050366815 707749888 707749888 672983121 859853920 859853920 887223130 887223130 505467336 846199047 846199047 342760842 421696377 579830100 946306581 946306581 605957198 701403793 701403793 729811793 729811793 214700069 512106732 512106732 293810274 415442382 415442382 496113680 496113680 419743782 516836604 702252234 785906397 785906397 209717252 970129928 1036202223 1036202223 634478761 879658511 879658511 1014502078 1014502078 810290308 745996183 745996183 433217102 433217102 743577625 743577625 294904312 644383452 1062930092 1062930092 976750359 976750359 957547716 501868014 501868014 417510440 258586686 737074677 737074677 737074677 529177670 512673113 88135696 404611687 850943815 850943815 730518645 573097233 573097233 851168771 851168771 850684736 845127058 845127058 818672835 814226450 814226450 827469900 827469900 854595303 959033884 1002553849 1002553849 390727374 341971338 295191579 105285473 606963270 606963270 780219457 780219457 595714161 595714161 453327185 906404038 906404038 887359947 1015405275 1015405275 554750638 613624084 613624084 87698048 290533952 364065402 364065402 253427492 253427492 90912168 407792186 407792186 255975862 255975862 490956964 525701936 525701936 471908622 381780244 314622162 278033950 278033950 1023668172 1023668172 202650403 21434980 1036570885 1036570885 273611398 220849452 218663945 424853664 424853664 403837446 207095436 725749772 961053760 961053760 734452042 782016130 806788834 806788834 922230568 922230568 616302146 428345190 386695512 501219822 501219822 491066532 383651912 434119640 442306644 480902268 507764876 507764876 223583240 70265484 119381656 136318216 136318216 125310864 125310864 99680576 56573616 58008496 547140968 611320713 611320713 605297537 983203890 983203890 684371044 364953834 364953834 873018507 873018507 604578825 474023047 494929405 845677971 845677971 818057399 636561228 636561228 352869889 301719779 943772293 943772293 388645928 388645928 214496646 20547648 29882592 29882592 166074624 166074624 71353352 220795688 220795688 70276128 91988776 91988776 70398856 77183408 134143992 388984777 875302155 914958721 914958721 843655946 885590218 885590218 547316368 547316368 571085841 807403699 807403699 831165234 831165234 579235696 307190242 104322570 104322570 300396160 376898008 376898008 52564272 277875986 277875986 187373908 174218260 237162780 237162780 516164800 516164800 166661464 712805957 712805957 869070034 869070034 962501265 962501265 823012768 920355813 970998239 970998239 776585462 776585462 406052937 413671570 488040596 601295594 896820912 896820912 855189211 814027160 369233946 535869532 535869532 385293680 84415664 1002713165 1002713165 1024628623 1024628623 902877876 10554432 279416128 818861894 818861894 585527258 693720064 705596476 705596476 16850976 285745185 285745185 796657578 796657578 363591018 938476269 938476269 414722394 471284238 914820694 914820694 814289427 935269675 935269675 862995044 862995044 889716384 889716384 343765680 343765680 303663312 303663312 282980034 59362128 59362128 45352928 41436416 41436416 34901408 5016820 176817216 665721976 665721976 199474272 714881664 714881664 5648085 33628160 227091298 637905256 675494388 675494388 385350618 754468688 754468688 375527786 375527786 514627652 688329895 688329895 1034215978 1034215978 999462368 463277544 463277544 138640832 138640832 83886120 264232 0 0 171993744 360729024 360729024 264505732 334572070 334572070 521293872 521293872 487081474 165688654 128046224 189952992 243401728 243930204 243930204 102924800 103994136 103994136 615152408 615152408 607804480 608476169 608476169 543612905 782576017 782576017 640271645 752621344 752621344 705964036 782479332 782479332 744084269 717818613 717818613 581047958 168226434 852597066 852597066 817248915 817248915 532742776 563093510 563093510 545353793 746692673 883288554 883288554 549236794 549236794 870448817 870448817 469630446 275660550 155213924 155213924 296273250 811700928 811700928 47863440 47944336 144451704 197397032 197397032 156502200 200542664 200542664 156799896 227364940 258739644 459950794 459950794 295366048 295366048 313893266 326478722 326478722 326421426 460070928 944172230 944172230 822808416 871898179 871898179 798860675 810836576 810836576 554468002 554468002 44303560 562834720 562834720 705094681 705094681 245936519 986507642 986507642 841747731 808361994 824402800 891355331 891355331 1007554806 1007554806 954470006 485627846 485627846 451287860 432538854 549671360 787932597 787932597 757964585 674972464 352462528 148415110 317720058 317720058 401700634 401700634 377499908 377499908 178258100 40774580 472304002 675600441 675600441 470047152 1057104521 1057104521 638968320 538941363 248799902 718379794 954726855 954726855 948170823 951744259 951744259 805441539 570500152 298260705 336003202 336003202 336412370 336412370 464426918 464426918 448202422 468323297 468323297 297519942 976786432 976786432 176631825 679741509 684460101 684461253 702162628 702162628 138556648 281483352 570460160 570460160 454903996 997205956 997205956 504365598 708932018 725872821 1023582362 1023582362 465724736 465724736 195365352 486515942 486515942 214850840 138522760 138522760 38430520 225385920 225385920 224131928 311228180 315097136 397032952 397032952 48768194 46367184 57259088 108005288 108005288 78650336 103529512 103529512 72395024 104974488 104974488 121698664 121698664 26684160 897977950 897977950 1011945001 1011945001 844577427 863897056 863897056 549631069 549631069 417098830 172498945 614197362 938609926 938609926 768297035 637638890 491394222 491394222 527982428 527982428 106746888 372317472 372317472 363435249 907621753 907621753 641802393 613687881 613687881 361279002 848880821 848880821 993429203 993429203 600855353 610399176 751499008 943793190 1038353197 1038353197 763375392 352513250 337881256 738364424 877017219 877017219 892297186 892297186 903981211 903981211 609558833 268511488 711485264 955640775 955640775 688147229 688147229 631252271 1059652375 1059652375 1053505661 991956014 991956014 847061428 847061428 421654841 908243850 908243850 590629172 292850620 239413404 105306264 759072881 759072881 787281604 789586038 989991548 989991548 577516397 719984085 812929926 812929926 968690065 968690065 464518518 464518518 378438312 378438312 12752016 570425361 570425361 190891124 684321045 684321045 157600868 63033700 142721460 285091722 285091722 832519639 832519639 469897230 736625592 736625592 633636032 213676020 647769360 738584923 738584923 907651006 1034732843 1034732843 977220974 698936768 821554913 969392597 1046437692 1046437692 941959431 658833854 541208136 687188481 761390541 806867938 806867938 273288298 160945348 160945348 155691104 155691104 667943065 667943065 124004408 632724649 632724649 673566341 673566341 626200864 626200864 764513544 764513544 657654633 648340788 226495072 226495072 109321272 109321272 93199464 11285608 21705888 528240822 528240822 308356668 660868127 660868127 203688204 628560617 975512616 975512616 974076951 911879703 508974640 684853885 802205364 802205364 622479600 622479600 96936488 67795584 295883552 361764450 361764450 343934538 364858056 364858056 77340930 944012782 944012782 673304854 673304854 760217752 760217752 281043521 275850114 497083212 497083212 471871514 471871514 235969322 188656954 336906762 621282944 787485173 787485173 400691569 286922274 608156834 867901245 867901245 281959059 295037760 310989187 310989187 583912692 663348277 663348277 1037125994 1037125994 1006765343 1006765343 957308646 957308646 846815818 846815818 698090505 705170056 705170056 111202196 223995564 223995564 186163352 235677700 235677700 872753224 872753224 749249632 749249632 363646314 363646314 200162358 300419472 300419472 296512402 55377536 657341676 657341676 469304502 469304502 207329086 304990464 732891552 732891552 851234643 851234643 588638769 588638769 602281680 602281680 647502532 697508429 727817240 783556090 1051004704 1051004704 1000921480 1000921480 780824868 419755252 230503672 252066912 252066912 170411328 170411328 134978752 189726912 189726912 479800412 479800412 301733506 445716217 831983411 973079812 973079812 841483539 690043160 369826832 690303428 690303428 867350310 867350310 784778080 981681758 981681758 613358942 755303966 932038939 932038939 811806336 811806336 788066452 788066452 763775150 499915983 166479362 277875014 277875014 142348164 65538608 60036400 61341920 155768641 701509253 701509253 676559429 720736981 720736981 59250032 544116437 684225956 722543157 724379056 724379056 555502113 729023296 737152372 737152372 526050370 229181320 147766716 329846080 528120250 528120250 424641548 454693616 454693616 294787812 144826692 261203284 261203284 228282224 111040136 111040136 101108040 101108040 86476576 97178856 220482260 220482260 57086872 163403972 163403972 42524224 57054120 92039240 264801788 264801788 123966536 222689636 222689636 33579088 126142528 126142528 266357044 451186566 451186566 581877813 587615040 587615040 649558141 781817073 781817073 726076040 726076040 713167605 780665949 780665949 595858436 561572569 561572569 861888176 861888176 649307819 659300465 659300465 348145475 615314224 837487650 879135952 879135952 716030841 733603701 823979177 823979177 563869281 681196673 693021863 693021863 407710868 165810241 165810241 533859127 533859127 246583985 185596980 843303996 910213275 910213275 520351806 957079816 957079816 672804913 721489924 721489924 876867598 876867598 274256092 274256092 260153394 331036530 331036530 47938994 54005392 54005392 727844240 727844240 272113061 987873910 987873910 802871126 802871126 787092957 83437511 608776531 647434306 647434306 628513551 370678296 825348740 923809044 923809044 740836364 202165260 319032346 389860248 389860248 208962854 67913764 155527332 155527332 150285252 160569776 332688130 332688130 159689068 355533038 888194812 888194812 792350135 261902785 502861082 502861082 694614337 694614337 362281578 610429643 952424601 952424601 1050366815 1050366815 454425955 672983121 672983121 613886976 613886976 887223130 887223130 505467336 848291912 848291912 649720258 526385598 435705907 708559653 708559653 605957198 701403793 832580760 832580760 363801523 552414657 746691545 746691545 1040082252 1040082252 440738230 415709382 415733958 415733958 792842408 792842408 131257080 621565623 621565623 538249228 621910561 634478761 634478761 656565369 656565369 558384806 558384806 554061888 378847664 378847664 339515738 239230350 151557280 72754368 889550464 889550464 598300274 598300274 442577980 385352008 291325554 139461252 330240786 330240786 514171144 514171144 41992272 109293576 109293576 75761736 75761736 145858800 145858800 8130432 62484112 556463136 556463136 841611280 841611280 35915793 35915793 333102928 838454258 838454258 545263635 545263635 310493666 359817312 359817312 1002553849 1002553849 833230179 833230179 752877851 1025164015 1025164015 713105432 780219457 780219457 453551213 319366416 338351472 338351472 356774355 868334554 868334554 378549011 554750638 613624084 613624084 478137128 352598088 352598088 368590528 368590528 249699376 90912168 246323016 246323016 462469214 497270854 497270854 404856862 404856862 381780244 381780244 314622162 508749445 508749445 1023668172 1023668172 1000858044 1000858044 1036570885 1036570885 330367511 390468250 390468250 387892235 169492480 185778250 396546426 725749772 725749772 658505913 201461941 223117368 223117368 986824237 986824237 690126550 725355777 725355777 1073089805 1073089805 541329425 570425361 927736217 927736217 738661694 480902268 507764876 507764876 145104360 149350888 149350888 139580864 240945792 240945792 239076744 99680576 39559480 58008496 561306217 633472865 633472865 605297537 983203890 983203890 348492980 364953834 364953834 873018507 873018507 604578825 769705349 769705349 845677971 845677971 818057399 620546492 799568651 799568651 301719779 943772293 943772293 388645928 937501147 937501147 513006006 387150560 698590149 698590149 232821504 682840609 682840609 220795688 139944072 138852736 91988776 70398856 70592536 74818522 312937169 841034435 914958721 914958721 604307585 885590218 885590218 914482258 914482258 571085841 571085841 563135073 563135073 562054177 555222561 540752096 104322570 104322570 300396160 376898008 376898008 233647596 433141444 460532080 460532080 306595992 508300446 508300446 516164800 516164800 474124446 844203902 933546363 933546363 869070034 962501265 962501265 823012768 420717782 339238916 345104970 871367524 871367524 453641318 453641318 503403364 601295594 601295594 362462065 814027160 814027160 369233946 535869532 535869532 501891186 74059136 1002713165 1002713165 1024628623 1024628623 902877876 10554432 280444224 818861894 818861894 585527258 693720064 705596476 705596476 137638452 453642498 453642498 983826752 983826752 437859368 938476269 938476269 414722394 471284238 914820694 914820694 814289427 814289427 429362034 862995044 862995044 889716384 889716384 370810912 33689616 303663312 303663312 282980034 114303256 59362128 56848816 97490976 132830712 132830712 124308544 162368785 684539093 684539093 241977689 714881664 714881664 71561352 127059496 218557876 637905256 878520192 892701963 893251371 893251371 754468688 713743296 163713252 1036683892 1036683892 688329895 1034215978 1034215978 999462368 899103339 129154078 162654722 480196104 547216160 655737709 655737709 493236814 493236814 202473990 202473990 264505732 334572070 481561450 521293872 521293872 487081474 507129942 507129942 359203874 311056400 709627029 709676245 717489152 717489152 547894025 595732304 595732304 649858168 649858168 223283548 585029804 775051280 775051280 266921464 266921464 180183724 214643916 782479332 782479332 173294181 188547348 194086352 194086352 820309552 852597066 852597066 817248915 817248915 251715736 251715736 545353793 545353793 746692673 746692673 536971272 629441857 629441857 870448817 870448817 469630446 830472550 830472550 1071198471 1071198471 1027802084 1027802084 666002651 540615736 571236616 571236616 60817776 52429168 50331696 31143584 31143584 20654016 13801440 13801440 16146048 24602368 24602368 12093920 45505088 226887868 226887868 254534972 254534972 193229940 570900497 570900497 479485310 1037500758 1037500758 966212327 557146113 839927906 839927906 759105481 562834720 705094681 705094681 293867016 986507642 986507642 808361994 808361994 655122026 724994541 724994541 425594962 671225958 671225958 428216325 786057884 786057884 196578552 549671360 787932597 787932597 757964585 674972464 352462528 148415110 317720058 317720058 401700634 401700634 377499908 377499908 241308060 108648652 472304002 472304002 355887262 375540620 395505690 638968320 962025069 962025069 891142888 891142888 954726855 954726855 948170823 951744259 951744259 805441539 905969667 905969667 348389914 348389914 801380074 801380074 588999196 297828978 176498772 468323297 468323297 297519942 839013029 839013029 0 0 399360 399360 68167816 68167816 541292736 818053313 818053313 570460160 106770072 997205956 997205956 504365598 504414780 504414780 402964612 422526246 465724736 465724736 195365352 486515942 486515942 214850840 138522760 371262118 424681754 424681754 310443898 434888550 471434766 471434766 397032952 397032952 278456530 277808194 287646720 287646720 19274016 67898376 103529512 103529512 51570728 87437352 87437352 121698664 625209513 639733785 639733785 790367805 794570628 794570628 849612804 863897056 863897056 245997008 245997008 170781972 170781972 10790088 64631444 64631444 387205648 387205648 339767364 339767364 285675662 239785080 239785080 354627882 354627882 363435249 907621753 907621753 641802393 613687881 613687881 361279002 848880821 848880821 986252543 986252543 761482318 557299946 557299946 943793190 943793190 826331848 715340541 352513250 337881256 582693986 582693986 633122571 892297186 892297186 333830032 288884514 806199848 806199848 711485264 955640775 955640775 707792276 793061892 793061892 1059652375 1059652375 822461554 757966879 453064796 860179732 860179732 421654841 908243850 908243850 689913249 637750566 913831314 913831314 626424603 623276552 528681779 789586038 989991548 989991548 622204944 719984085 719984085 674622791 674622791 455437254 464518518 464518518 282283364 41460148 137384452 143249904 190891124 190891124 153987248 157600868 157600868 165802048 165802048 285091722 285091722 689508973 689508973 492450892 934940656 934940656 654836488 213676020 647769360 738584923 738584923 907651006 1034732843 1034732843 683671749 810042449 821554913 821554913 1039790118 1039790118 620369865 566813153 895123712 895123712 234038763 162788196 67568874 139393056 139393056 161216100 161216100 155691104 148101188 89338536 89338536 138939392 138939392 102360600 102360600 1063306362 1063306362 533319934 533319934 648340788 648340788 620004575 620004575 379984218 450937302 753143514 811091509 811091509 721435340 721435340 308356668 308356668 203425792 203688204 203688204 575618128 579805393 786050641 786050641 508974640 491572398 449858064 12656832 42272912 131072008 131072008 129499376 295883552 361764450 361764450 386044472 386044472 364858056 821349315 944012782 1010969537 1010969537 690461212 690461212 645701775 554419209 813732213 813732213 497083212 471871514 471871514 264628476 953034323 953034323 383567168 383567168 636539320 636539320 352298868 608156834 867901245 867901245 634235576 617435040 310989187 566236192 583912692 663348277 663348277 536944641 536944641 101314825 164373220 547095712 566756577 609225381 691275256 768617637 768617637 690816412 171215226 1036567791 1036567791 873144966 792838780 67454699 914628184 914628184 879808009 879808009 1067450175 1067450175 1057773396 1057773396 296512402 296512402 643359292 643359292 558891681 558891681 152047893 237895885 1039951292 1039951292 398890368 859324390 859324390 282032169 282032169 160105632 584659680 584659680 240656976 308811040 308811040 231479578 72227276 155457536 155457536 184105428 184105428 174885444 252066912 252066912 170411328 180934528 180934528 134978752 54925488 54925488 154221124 154221124 137963268 29310816 973079812 973079812 841483539 556823098 705815337 705815337 23306517 419696130 419696130 152569380 317496582 470167260 613358942 717152085 718330853 718330853 781056468 781056468 788066452 788066452 605286921 642523649 642523649 693906049 693906049 592935605 583518385 570595472 42614800 167777968 167777968 44565840 857865230 857865230 793480637 474372275 376770880 376770880 376439706 392564526 555502113 555502113 729023296 737152372 737152372 229181320 229181320 78131528 66650944 260449688 260449688 14506132 71377032 71377032 75497664 75497664 36868096 36868096 717584 111040136 111040136 67675136 68674560 86476576 86476576 220482260 220482260 57086872 163403972 163403972 22024320 57054120 92039240 264801788 264801788 123966536 222689636 222689636 105658128 105729248 105729248 266357044 266357044 199896996 581877813 587615040 587615040 649558141 781817073 781817073 726076040 726076040 713167605 780665949 780665949 595858436 561572569 561572569 91916104 628009281 628009281 100925696 100925696 268373392 268373392 405017860 879135952 898493547 898493547 976274199 1035621749 1035621749 352862677 537945608 538445313 999306961 999306961 46859895 36750096 60852752 153618432 176992352 185596980 843303996 910213275 910213275 812403743 824760484 824760484 689597108 721489924 721489924 876867598 876867598 518522322 518522322 493446624 331036530 331915746 331915746 282210848 710152837 730334485 730334485 206210216 690493904 690493904 802871126 802871126 787092957 83437511 608776531 647434306 647434306 533990142 533990142 825348740 825348740 740836364 740836364 202165260 319032346 389860248 389860248 208962854 187171216 187171216 155714724 113452152 160569776 332688130 332688130 159689068 482550104 888194812 888194812 792350135 662749305 662749305 287855483 295423778 362281578 362281578 387741834 387741834 341276768 341276768 163319652 445055588 445055588 400358004 400358004 153215268 153215268 5378688 446873832 848291912 848291912 649720258 526385598 149472708 708559653 708559653 603904122 647156313 832580760 832580760 1058028720 1058028720 746691545 746691545 1040082252 1040082252 440738230 415709382 415733958 415733958 792842408 792842408 774908823 704430301 621565623 605365862 735359741 826436190 826436190 408491716 345907720 558384806 558384806 635755174 635755174 361881875 755957160 755957160 151557280 72754368 889550464 889550464 103880409 442577980 442577980 408038710 488385272 1041200654 1041200654 741443102 514171144 596082855 596082855 551999937 486652011 486652011 388319414 388319414 308563479 442363316 858933460 858933460 50541088 58722659 832907619 832907619 315886290 333102928 838454258 838454258 832677636 832677636 548030255 715678157 972080103 972080103 946954274 833230179 833230179 752877851 1025164015 1025164015 713105432 713105432 285373448 285373448 596199552 596199552 841318402 841318402 614856794 614856794 725617956 725617956 233042393 478137128 478137128 352598088 352598088 368590528 512862126 512862126 232174920 262011932 262011932 462469214 497270854 497270854 468861278 975205356 975205356 886495947 886495947 508749445 957629494 957629494 564675629 1000858044 1000858044 430225834 304673884 330367511 390468250 443828127 443828127 564574241 1021015397 1021015397 833180352 833180352 738727305 738727305 223117368 223117368 986824237 986824237 690126550 725355777 725355777 1073089805 1073089805 557842440 624951465 927736217 927736217 738661694 207448024 207448024 134760924 145104360 149350888 149350888 139580864 240945792 240945792 239076744 125404624 363669706 363669706 561306217 633472865 633472865 60558960 769654792 769654792 719323637 719323637 685769157 100663773 185222208 199296325 769705349 769705349 706876476 188743860 134617092 629169884 799568651 799568651 553334721 935247401 935247401 346153522 937501147 937501147 513006006 387150560 698590149 698590149 232821504 682840609 682840609 202560012 139944072 138852736 73605128 12725312 392448073 923812281 923812281 839174818 709230228 709230228 541928577 541928577 1045219934 1045219934 914482258 748973703 309870848 563135073 563135073 562054177 555222561 540752096 31053376 31053376 21180576 103116068 233647596 233647596 433141444 460532080 460532080 306595992 508300446 508300446 383964506 474124446 474124446 844203902 933546363 933546363 400869467 381995226 407974404 420717782 420717782 328779378 115918296 871367524 871367524 453641318 453641318 503403364 941608476 941608476 915770071 853686895 853686895 348943625 436544328 501891186 873399097 873399097 1027904351 1027904351 61899808 45664080 580850513 580850513 980885892 980885892 705235207 705235207 68298798 302422560 302422560 379646072 453642498 453642498 983826752 983826752 459805048 1028001960 1028001960 991770531 991770531 695206821 411177030 411177030 1067592042 1067592042 389429764 389429764 79708296 370810912 370810912 343223178 343223178 111483216 114303256 114303256 49770816 56848816 97490976 132830712 132830712 124308544 182904644 684539093 684539093 445192902 173015700 429074644 429074644 419829798 793378896 793378896 878520192 892701963 893251371 893251371 721480837 721480837 222609633 1036683892 1036683892 261114883 714742928 714742928 899103339 899103339 557769424 694701440 694701440 586228689 655737709 655737709 602077367 929552738 929552738 891627819 675580104 331405654 481561450 481561450 277628436 469766598 507129942 507129942 359203874 311056400 709627029 709676245 965452081 965452081 645055827 645055827 595732304 649858168 649858168 497799692 585029804 775051280 775051280 82652548 82652548 160511148 558708800 558708800 743539564 743539564 67158024 81775466 124361089 820309552 820309552 554567536 556104226 556104226 462475840 251715736 172626008 214435020 717757585 717757585 514091303 629441857 629441857 448865734 176234580 545789248 830472550 830472550 1071198471 1071198471 1027802084 1027802084 666002651 540615736 571236616 571236616 42003552 25563328 36046928 36046928 50741728 59033712 59033712 50512208 47743888 62705280 62705280 578863177 578863177 226887868 698482813 698482813 268435511 193229940 358896741 438685065 479485310 1037500758 1037500758 966212327 557146113 839927906 839927906 759105481 891944694 891944694 461894718 293867016 483787448 483787448 362020474 41397768 1073102058 1073102058 122118359 425594962 425594962 422185076 735075868 1043760485 1043760485 589992120 632834640 632834640 228624444 177730964 177730964 177516492 177516492 82675600 316838352 316838352 201713676 245657804 245657804 241308060 108648652 218310528 218310528 116662292 312448538 395505690 979765504 979765504 962025069 891142888 891142888 600503414 537580948 336138335 865299987 879194280 879194280 905969667 905969667 490689082 381804760 801380074 801380074 588999196 297828978 430576998 430576998 323171764 138807520 143137892 143137892 683046157 683046157 77459016 76934728 778286405 778286405 604194368 919976665 919976665 914629211 881412360 881412360 762170913 762170913 738291004 738575903 778666640 778666640 159157236 164711200 236104148 236104148 202002456 354391844 354391844 371262118 460804400 460804400 479305934 479305934 471434766 471434766 385535712 385535712 278456530 277808194 287646720 287646720 50435872 20786208 54374176 57772848 57772848 18123696 3514624 38883897 625209513 639733785 639733785 790367805 794570628 870656499 870656499 865910611 808410161 644298185 644298185 498273782 581966519 991922867 991922867 633863307 920430322 920430322 134534360 142606212 180554832 239785080 239785080 221075928 286234440 286234440 276300738 276873282 276873282 122732696 131088552 131088552 41943120 46964688 131335696 761482318 761482318 839913673 844503699 844503699 840827523 775995549 1006954905 1006954905 874635531 21084315 281225418 365918784 365918784 273978400 1070615578 1070615578 807871509 806199848 1043145858 1043145858 707792276 707792276 793061892 793061892 742541350 997464044 997464044 405002658 405002658 860179732 860179732 622578584 608720918 689913249 689913249 637750566 913831314 926459529 926459529 623276552 811413123 811413123 79434094 622204944 622204944 847781767 847781767 846208339 172101780 172101780 172097536 138643280 405071816 405071816 142285652 137384452 54080320 135173376 135173376 136723712 142802020 165802048 165802048 185664820 273686996 689508973 689508973 492450892 934940656 934940656 654836488 205656504 222433452 222433452 95488984 560210308 560210308 955567047 955567047 810042449 810042449 549979329 1039790118 1039790118 620369865 566813153 895123712 895123712 830455106 830455106 343433389 343433389 344617226 344617226 291323554 404766468 538257473 538257473 89338536 679778249 679778249 693708453 693708453 1063306362 1063306362 533319934 533319934 352399060 945117406 945117406 620004575 379984218 450937302 753143514 811091509 811091509 721435340 721435340 307529168 607127301 607127301 210046308 659555045 983699506 983699506 787349853 786050641 239666574 868508763 868508763 667715644 583847121 559170610 131072008 129499376 128452472 316147410 316147410 386044472 386044472 360145483 821349315 826413152 1010969537 1010969537 811602333 811602333 717767425 603539733 813732213 813732213 387708686 511605040 511605040 264628476 953034323 953034323 665361264 665361264 636539320 636539320 352298868 352298868 268766930 634235576 634235576 617435040 596380785 831030371 831030371 789103729 789103729 575465702 449044930 514324830 950092264 950092264 246405625 609225381 691275256 768617637 783849012 783849012 193485072 1036567791 1036567791 873144966 792838780 67454699 914628184 914628184 879808009 879808009 1067450175 1067450175 1057773396 1057773396 896582345 593531248 921829744 921829744 558891681 558891681 311562776 237895885 1039951292 1039951292 398890368 859324390 859324390 624321901 681811728 739480093 739480093 574158368 1006552853 1006552853 992808354 992808354 729816366 928672992 928672992 614119420 369389656 147713220 243080088 248008036 248008036 180934528 180934528 159647968 86360396 205306580 205306580 177093460 177093460 694757109 883502193 883502193 622997541 622997541 705815337 705815337 598135191 960918640 960918640 604255520 604255520 775616892 791495109 791495109 894960139 894960139 662835440 881772576 881772576 298742889 605286921 642523649 642523649 932827759 932827759 592935605 591794272 591794272 42614800 194253717 651561025 855138775 919701478 919701478 793480637 1016996164 1016996164 376770880 376439706 392564526 493224128 493224128 25955424 24380064 103819176 103819176 142354900 142354900 66650944 260449688 260449688 214975504 249136860 249136860 249046748 135399576 182010600 233525064 233525064 101026992 112061784 112061784 67675136 67231752 101034312 101034312 41910608 41910608 7541392 22024320 22024320 66168320 66245808 90951720 90951720 28179872 72370920 105658128 105658128 105729248 105729248 142354456 162780052 162780052 109437112 775554816 775554816 169968412 169968412 620814868 620814868 188919841 693971544 693971544 547295757 674955920 728057709 728057709 797754225 797754225 688708845 708065056 708065056 611060176 611060176 287380484 738241638 898493547 898493547 976274199 1035621749 1035621749 247370581 764542128 987583629 999306961 999306961 415156153 191467331 263267911 263267911 616669715 706953429 791285982 791285982 1032357172 1032357172 824760484 824760484 689597108 689597108 676553944 185909355 347923522 518522322 518522322 493446624 289040192 331915746 331915746 282210848 710152837 730334485 730334485 810817334 810817334 142084865 675552624 684197061 952108329 952108329 890450992 890450992 455620929 533990142 533990142 598934224 598934224 774078984 860615542 860615542 501756456 501756456 980468182 980468182 594855486 187171216 405611944 453824764 453824764 151062864 151062864 48623776 482550104 678483876 691588225 691588225 662749305 662749305 287855483 295423778 295423778 342829392 368968474 368968474 341276768 341276768 163319652 281017120 294126690 294126690 86400970 88895584 119173032 119173032 39237912 724374800 724374800 68931501 98801632 98801632 76000584 364904376 603904122 647156313 647156313 431883716 1058028720 1058028720 327808321 333194928 333194928 75007024 135048908 135048908 71664768 71664768 100959111 774908823 774908823 772679726 856372275 856372275 735359741 826436190 826436190 779978695 779978695 392055940 392055940 635755174 635755174 361881875 755957160 755957160 76003536 105238976 846325648 846325648 293183584 355148489 408038710 408038710 488385272 1041200654 1041200654 741443102 434643365 596082855 596082855 860154273 860154273 549808289 607748739 607748739 569903073 569903073 858933460 858933460 312082498 830607459 832907619 832907619 315886290 322310624 322310624 63197696 832677636 832677636 548030255 715678157 972080103 972080103 946954274 382471386 773068970 781617853 781617853 759991949 734111288 734111288 285981752 655177790 655177790 596199552 841318402 841318402 614856794 614856794 725617956 725617956 233042393 149751040 105195672 105195672 90364440 93706484 512862126 512862126 260782084 262011932 262011932 699763325 713105493 713105493 468861278 975205356 975205356 886495947 886495947 505277982 957629494 957629494 501571787 355216227 932165838 932165838 638707216 282951249 440814724 443828127 443828127 564574241 1021015397 1021015397 833180352 946788642 946788642 773986720 354863178 751436942 751436942 243936761 695015098 695015098 343149450 774900212 832569699 832569699 624951465 624951465 355002322 355002322 374108216 374108216 281784072 27386208 121691992 121691992 115160208 87015632 87015632 125404624 125404624 363669706 363669706 339334154 869328377 869328377 24728106 769654792 769654792 827250690 981913715 990300215 990300215 973127703 881742919 984221735 984221735 956351793 654318012 654318012 629169884 644903657 644903657 553334721 40261184 49985752 111747560 125895696 125895696 82396048 82396048 66794336 183134320 183134320 254002036 254002036 202560012 117102552 117102552 34242440 370459290 392448073 923812281 923812281 839174818 818687155 709230228 541928577 541928577 1045219934 1045219934 801751599 748973703 309870848 510780318 510780318 361818136 914427531 914427531 844782792 844782792 662700153 626425955 680587479 786200718 786200718 322444876 455734610 455734610 417948854 128177798 209322860 242576268 337288248 530694407 859695660 859695660 395848260 395848260 882984266 882984266 695855013 1053360269 1053360269 997311347 351798533 351798533 304612166 271713536 941608476 941608476 915770071 853686895 853686895 461525152 436544328 487768930 873399097 873399097 1027904351 1027904351 1023809583 1023809583 580850513 580850513 980885892 980885892 705235207 705235207 807744548 807744548 554285958 379646072 379646072 360860037 769823967 769823967 677026405 1028001960 1028001960 991770531 991770531 695206821 411177030 411177030 1067592042 1067592042 797196820 1031277157 1031277157 651041822 430017170 343223178 379814160 379814160 304365912 327192840 329701746 400564472 400564472 3985152 33982528 38965060 182904644 182904644 445192902 445192902 173015700 429074644 429074644 419829798 793378896 793378896 818416135 826150470 951898269 951898269 721480837 721480837 269933058 647240934 666836932 666836932 940358465 940358465 585105105 585105105 557769424 694701440 694701440 586228689 586228689 188817588 602077367 929552738 929552738 891627819 675580104 331405654 258398652 258398652 90329876 459549496 476526990 476526990 403223856 403223856 397936506 748705406 965452081 965452081 645055827 645055827 329304026 731022584 731022584 1010395696 1010395696 302415364 565387837 565387837 732053605 732053605 558708800 558708800 743539564 743539564 69206280 81775466 250703348 250703348 320170608 554567536 556104226 556104226 683729336 822205055 919357647 964828365 964828365 837595460 1023518859 1023518859 448865734 448865734 176234580 545789248 545789248 42603600 42603600 11023504 6890880 180060370 286348096 286348096 50661392 50661392 42410048 42410048 36046928 36046928 50741728 59033712 59033712 50512208 47743888 62705280 62705280 578863177 578863177 198234660 698482813 698482813 714736160 714736160 358896741 438685065 514917268 514917268 191154612 191154612 834717888 834717888 806643343 740285592 891944694 891944694 461894718 867271621 867271621 900814108 900814108 686522437 1073102058 1073102058 697438821 697438821 348128437 542252246 735075868 1043760485 1043760485 660853320 632834640 632834640 337098102 357575674 357575674 323618160 323618160 177823814 316838352 316838352 109786200 203569748 203569748 21721656 128682784 128682784 101820320 116662292 312448538 312448538 979765504 979765504 453334150 648349082 714090963 714090963 730208374 730208374 913758369 913758369 879194280 379891521 490689082 490689082 381804760 505727758 514089232 514089232 273417124 430576998 430576998 323171764 138807520 143137892 143137892 683046157 683046157 77459016 76934728 778286405 778286405 604194368 919976665 919976665 914629211 881412360 881412360 762684196 952633511 952633511 759213124 778666640 778666640 422386048 422386048 236104148 236104148 272363988 473650442 473650442 472168222 472168222 460804400 479305934 479305934 79952730 67317768 39056016 39106560 40927248 40927248 136862728 221681164 221681164 135399216 194685200 194685200 166076020 232892652 232892652 212614481 212614481 146033092 278692118 278692118 592197570 950624466 950624466 865910611 808410161 644298185 644298185 520958126 581966519 991922867 991922867 633863307 920430322 920430322 134534360 123519668 180554832 180554832 45104944 297537378 297537378 323145906 323145906 332522226 332522226 127978376 131088552 268963408 268963408 105433162 1032344548 1032344548 612632649 839913673 844503699 844503699 840827523 775995549 1006954905 1006954905 874635531 174544196 55125168 126862976 220210300 542335328 1070615578 1070615578 807871509 307769107 1043145858 1043145858 418983747 404793238 453814908 524413001 742541350 997464044 997464044 978044055 956730517 503399446 622578584 622578584 608720918 876612110 876612110 427385737 555407108 926459529 926459529 527151399 811413123 811413123 590807865 794964906 794964906 940839379 940839379 846208339 821389619 821389619 401576946 401576946 405071816 405071816 142285652 59483424 54080320 59380848 59380848 66552016 66552016 20171876 162747892 185664820 536400892 550482896 1028004015 1028004015 909979419 909979419 119541920 205656504 222433452 222433452 98667240 841231120 841231120 955567047 955567047 839095360 839095360 601441408 549979329 419430438 719524349 973287710 973287710 853647837 830455106 830455106 343433389 343433389 344617226 344617226 291323554 404766468 538257473 772211928 772211928 748073849 737522013 716505877 693708453 253240576 709820592 709820592 644336254 352399060 945117406 1043954403 1043954403 273340332 513876782 513876782 376048340 376048340 323170482 376194902 376194902 607127301 607127301 210046308 659555045 983699506 983699506 787349853 671219724 239666574 868508763 868508763 667715644 583847121 559170610 88081130 4196544 24118048 24118048 24249120 24249120 19927968 19927968 12718272 826413152 826413152 774230733 811602333 811602333 717767425 603539733 693510758 818362563 818362563 586756163 586756163 588515824 588515824 443957670 665361264 899079286 899079286 773326365 269822466 269822466 268766930 113323402 275857880 297396939 596380785 831030371 831030371 789103729 789103729 575465702 449044930 514324830 950092264 950092264 246405625 537667112 537667112 25215072 783849012 783849012 193485072 193485072 162454884 159556372 738451528 738451528 679612485 537993282 537993282 137938692 168160154 168160154 522183186 896582345 896582345 593531248 921829744 921829744 343933002 440537228 776605882 1058934529 1058934529 805805927 272156418 587810594 587810594 1014993303 1014993303 739480093 739480093 797509328 1022834185 1022834185 992808354 992808354 729816366 928672992 928672992 614119420 369389656 210667668 243080088 248008036 248008036 132132576 159647968 159647968 86360396 205306580 205306580 177093460 177093460 725890977 883502193 950014840 950014840 899814927 899814927 582447745 896350472 960918640 960918640 620892193 715659460 775616892 791495109 791495109 894960139 894960139 247980224 881772576 881772576 298742889 554820129 608723465 608723465 932827759 932827759 592687797 591794272 591794272 9441024 194253717 798550170 855138775 919701478 919701478 834328419 1016996164 1016996164 559809825 571999761 709495312 709495312 696143265 602934452 602934452 550113552 142516048 142354900 142354900 25836736 213793804 213793804 214975504 249136860 249136860 249046748 135399576 182010600 233525064 233525064 101026992 112061784 112061784 35939400 86177832 101034312 101034312 28678672 5244936 5243520 5243520 20025504 66168320 66245808 66245808 36581424 10794496 17286304 17286304 4669056 4971840 11092608 142354456 162780052 674146352 675909685 775554816 775554816 16986112 16986112 561193232 561193232 188919841 61993860 547295757 547295757 674955920 728057709 728057709 797754225 797754225 688708845 708065056 708065056 611060176 611060176 287380484 287380484 169513574 285800532 404540934 782412338 1035467631 1035467631 764542128 987583629 987583629 846548423 846548423 703477159 644383692 263267911 616669715 706953429 791285982 791285982 1032357172 1032357172 641212936 640680729 206579384 206579384 134813320 134813320 12324672 10618624 283387715 564805089 810136513 836784288 836784288 700715268 136448229 16126464 789582893 810817334 810817334 742822813 675552624 684197061 952108329 952108329 890450992 890450992 455620929 764621421 764621421 693701775 945428103 945428103 860615542 924340439 932879126 932879126 1035605978 1035605978 976913966 555890969 656408889 656408889 581774673 581774673 511513167 48623776 156414304 678483876 794987065 794987065 615159748 943432412 943432412 869296042 159272618 79230938 21044930 90190314 131034912 131034912 116342232 320200076 429132390 429132390 153094978 88895584 119173032 119173032 39237912 724374800 724374800 902976051 902976051 799888375 573862017 563647240 201944298 609952104 875979969 875979969 567946110 567946110 425964622 338690266 338690266 229134324 229134324 272765058 272765058 178645332 587708496 723855669 944044149 944044149 856372275 856372275 520095776 953026713 953026713 779978695 779978695 692177924 672675328 553993372 922880263 922880263 617798584 1048478429 1048478429 647140033 846325648 908492467 908492467 864883193 659623361 659623361 574361090 574361090 109843033 329815922 329815922 328840816 334921731 860154273 860154273 549808289 607748739 607748739 569903073 569903073 596124336 596124336 312082498 830607459 830607459 54576931 280162754 280162754 269195122 63197696 63197696 404808952 502318062 502318062 970692489 970692489 857411753 857411753 830546019 781617853 781617853 759991949 734111288 734111288 285981752 655177790 655177790 647035060 302060608 812856195 812856195 620827237 723129909 723129909 708837888 708837888 207097728 252604972 252604972 93706484 247406596 247406596 260782084 260782084 147001729 699763325 713105493 713105493 254927676 805647184 1028032715 1028032715 872753163 592297787 544734081 302872996 320913714 355216227 932165838 991996640 991996640 282951249 440814724 440814724 120845112 361120532 1019968834 1019968834 281520613 946788642 946788642 773986720 368107462 751436942 751436942 1013777611 1013777611 769006307 723528225 774900212 832569699 832569699 613952632 727570460 765233204 765233204 406057448 406057448 281784072 27386208 121691992 121691992 115160208 82947936 82947936 35787024 19335680 20132640 20132640 390658480 869328377 869328377 30094560 439012934 439012934 827250690 981913715 990300215 990300215 973127703 881742919 984221735 984221735 956351793 676207749 654318012 624968180 733661791 864194675 864194675 397507210 397507210 307920968 307920968 283886440 283886440 357622338 357622338 283715010 1032612680 1032612680 840825979 434041285 73265672 69205512 294876562 370459290 370459290 353134136 307356306 818687155 818687155 601195603 583456986 558149269 558149269 806247434 856562739 856562739 587806722 437767036 437767036 361818136 914427531 914427531 844782792 844782792 662700153 626425955 680587479 786200718 786200718 322444876 455734610 455734610 417948854 180863008 209322860 242576268 337288248 565306970 612739230 856493359 856493359 798237439 882984266 882984266 695855013 1053360269 1053360269 997311347 478225901 747110543 747110543 905730022 905730022 838175427 482371683 414358054 461525152 461525152 470675376 527434686 527434686 58584078 1027336980 1027336980 1023809583 1023809583 372560693 9572928 842597632 842597632 671257221 671257221 807744548 807744548 554285958 450893362 17831730 328864832 570443043 570443043 702300685 702300685 602970872 772934189 772934189 544211841 555296289 555296289 661317136 797196820 797196820 1046439588 1046439588 748701126 1020380392 1020380392 382831546 379814160 304365912 327192840 329701746 400564472 400564472 111749728 111282776 92447840 32846848 55186864 55186864 17641056 17641056 579151908 729809013 993206169 993206169 763836525 818416135 826150470 951898269 951898269 901797926 509625757 269933058 983041994 983041994 666836932 940358465 940358465 135792260 135792132 49840196 679774032 679774032 178292288 178585600 178596180 178596180 50575424 50575424 317026738 317026738 220500112 258398652 258398652 209731902 459549496 476526990 476526990 425517224 425517224 397936506 748705406 748705406 414237510 647139865 647139865 545898569 731022584 747591698 1010395696 1010395696 221331069 565387837 565387837 732053605 732053605 726737097 696321197 746772305 746772305 590026925 791735208 791735208 250703348 215358156 1068770096 1068770096 810758787 805310480 822205055 985878708 985878708 964828365 992094528 1023518859 1023518859 354535777 534435582 534435582 777437780 777437780 404015627 709160351 709160351 484660233 484660233 629458129 629458129 558825969 579077344 579077344 42410048 42088576 12718272 12718272 8388672 8422464 8422464 525312 28480512 28480512 20221472 44040528 44040528 503451968 503451968 714736160 714736160 274650624 1026098690 1026098690 514917268 191154612 885005888 885005888 834717888 806643343 70654728 396530330 396530330 231934584 867271621 867271621 1012964491 1040212252 1040212252 688555181 826462240 826462240 734400600 734400600 579623670 579623670 575068305 660853320 660853320 247266408 337098102 337098102 357575674 357575674 323618160 323618160 278432864 280598096 280598096 109786200 203569748 252306492 258013036 258013036 214164196 68409864 245695876 245695876 5537592 269592576 767604463 767604463 648349082 714090963 714090963 730208374 730208374 913758369 913758369 662045689 303744000 303174162 233573868 265300284 265300284 219751980 102827828 149235952 164103396 164103396 25504900 18874656 6866304 268458384 302000000 309929874 846800530 846800530 844703379 660281273 661010105 661010105 727974156 727974156 754191841 762684196 762684196 952633511 952633511 759213124 759213124 359197472 422386048 422386048 189917216 161439870 272363988 473650442 473650442 475849992 475849992 359777946 482683086 482683086 378745238 309437206 135215362 524758870 524758870 131692792 143945004 405887808 405887808 444471936 472923904 472923904 438749446 438749446 287704364 212614481 212614481 146033092 278692118 278692118 584627393 950624466 950624466 671297941 145097632 145097632 520958126 520958126 130423032 417335856 417335856 523956686 523956686 385937998 385937998 510387934 510387934 304350316 304350316 297537378 297537378 323145906 323145906 332522226 332522226 127978376 127978376 268963408 287712724 466566390 1032344548 1032344548 833932041 833932041 247501261 253922392 253922392 1044381889 1044381889 1034589653 1034589653 869089328 495266060 495266060 448818296 542335328 542335328 651813588 685295301 685295301 438149680 438149680 361070800 447414940 453814908 453814908 458969904 458969904 978044055 978044055 956730517 503399446 935336947 935336947 867606611 876612110 876612110 386273819 155189412 155588772 199639520 385090800 385090800 590807865 590807865 794964906 816210974 940839379 940839379 931223835 931223835 821389619 697523988 967078692 967078692 165361536 165361536 153352068 163739188 163739188 160958052 147780336 152443668 152443668 162747892 164808332 735583261 735583261 1028004015 1028004015 909979419 909979419 309255570 309255570 239146758 537771595 537771595 841231120 841231120 581998421 581998421 884262762 884262762 601441408 545385103 545385103 719524349 973287710 973287710 853647837 606200073 594807096 333323201 29628258 361333568 361333568 187864350 187011120 581804342 772211928 772211928 748073849 737522013 716505877 675283077 522556228 709820592 709820592 644336254 541664385 900503915 1043954403 1068519920 1068519920 513876782 513876782 376048340 376048340 323170482 376194902 376194902 67016476 61606368 173148600 574701728 710969516 710969516 671219724 671219724 213960809 51469072 417366832 428132454 428132454 318777376 115613706 112288464 308404986 308404986 347095648 377536538 377536538 362082562 362082562 767589090 767589090 306413696 318996896 675325586 675325586 585416964 693510758 818362563 818362563 586756163 586756163 588515824 588515824 583744114 356290498 899079286 899079286 773326365 364978410 988752574 988752574 908210221 961156910 961156910 135272248 794838730 794838730 443057879 286787088 227115596 152166948 672785925 700115809 700115809 152214117 605063269 605063269 83241416 547656576 547656576 257249588 352621418 477193831 477193831 738451528 738451528 679612485 1009886854 1009886854 472908558 479989056 479989056 655483449 655483449 83026713 649089896 649089896 608190504 722472983 790106764 790106764 1058934529 1058934529 805805927 272156418 587810594 587810594 1014993303 1014993303 680806441 223884468 797509328 1022834185 1022834185 482557775 281745486 85276394 102188128 227866448 227866448 170256404 210667668 210667668 81072900 16060208 4197120 4197120 4195840 5768832 173286912 173286912 170739660 215835220 725890977 725890977 950014840 950014840 899814927 899814927 338240778 896350472 896350472 708188957 708188957 715659460 715659460 466808212 484971320 484971320 247980224 247980224 202410020 85248552 193075836 218239020 218239020 4243584 130158808 130158808 21156000 63062048 63062048 41943152 192742692 798550170 798550170 830512867 834328419 834328419 934137121 934137121 690662452 690662452 709495312 709495312 696143265 602934452 602934452 550113552 142516048 105022888 105022888 17190736 118554680 118554680 80294080 88758408 88758408 80147656 84316800 89822376 89822376 71336576 74781536 74781536 67231880 71394048 86177832 86177832 51228000 38234688 36393296 6716816 5243520 10745152 42522112 48371344 48371344 41499520 41698320 43457808 45561024 45561024 15086592 251208864 251208864 72123772 674146352 675909685 756581520 756581520 223791164 240383164 240383164 239719440 153165280 789970776 789970776 267650653 81604296 68696000 69593352 69593352 41079696 106334472 106334472 67371272 85492194 368067368 368067368 520914272 520914272 514115934 394248638 782412338 1035467631 1035467631 110552031 650361521 650361521 846548423 846548423 703477159 644383692 25693766 148510404 409739940 409739940 302111220 807056820 807056820 947091262 947091262 206579384 488117017 638860682 638860682 991568959 991568959 422055506 564805089 810136513 836784288 836784288 700715268 177950161 687083973 789582893 789582893 742822813 742822813 713067989 572137376 712642369 712642369 622070313 622070313 435403743 940098567 1007454216 1007454216 945428103 945428103 944788218 924340439 932879126 932879126 1035605978 1035605978 976913966 555890969 656408889 656408889 828333986 828333986 511513167 204197352 156414304 735651784 794987065 794987065 615159748 943432412 943432412 869296042 302724114 97972416 280483282 280483282 880756323 885800733 885800733 639600795 639600795 429132390 254596380 254596380 1069865158 1069865158 466382733 511735641 669792196 902976051 902976051 799888375 573862017 563647240 201944298 609952104 875979969 875979969 579482808 425964622 425964622 342891968 338690266 229134324 518122148 518122148 492182190 178645332 587708496 723855669 944044149 944044149 763366359 969155752 969155752 953026713 953026713 526017251 692177924 692177924 672675328 937124212 937124212 922880263 617798584 1048478429 1048478429 647140033 391316625 908492467 908492467 864883193 659623361 809769104 844066947 844066947 810417283 805803136 322295058 289976322 289976322 285249856 18634976 46304784 836800706 836800706 281166307 9445376 34800736 50992176 50992176 22020768 37756096 42867792 42867792 13816512 30587264 30587264 52596134 52596134 106616392 106616392 970692489 970692489 857411753 857411753 830546019 165164051 671089268 671089268 194029157 674115605 674115605 671347221 647035060 647035060 275776401 812856195 812856195 620827237 723129909 723129909 708837888 708837888 207097728 381851130 531886974 607615121 607615121 323036806 632780318 632780318 606390537 413030374 298967627 52114992 254927676 805647184 1028032715 1028032715 872753163 592297787 544734081 307139844 319105074 319105074 55100080 991996640 991996640 328993526 592451671 592451671 120845112 361120532 1019968834 1019968834 281520613 487138350 487138350 368107462 368107462 355632004 293288909 1013777611 1013777611 769006307 723528225 601166205 371792870 1008404910 1008404910 727570460 765233204 765233204 406057448 406057448 309497626 110500440 400242784 400242784 390672306 106175146 86493424 308703168 337897480 337897480 367653354 390658480 390658480 292492938 30094560 486029470 486029470 396786322 520353818 520353818 529007748 529007748 477922460 477922460 583798868 676207749 769046366 769046366 625289385 733661791 864194675 864194675 397507210 680597509 680597509 319951410 283886440 283886440 357622338 357622338 283715010 1032612680 1032612680 840825979 716805577 82047004 624968097 624968097 348907594 577596816 591446193 591446193 679588472 679588472 808927885 808927885 960569439 960569439 806247434 856562739 856562739 587806722 587243560 637657113 637657113 354548832 25684330 109465760 130337016 130337016 97567464 370076672 370076672 273745920 304726802 304726802 272698752 180863008 180863008 438567936 439094550 439094550 565306970 565306970 856493359 856493359 798237439 821381645 821381645 209715276 619823648 893740036 893740036 478225901 782320275 911254366 911254366 905730022 838175427 992395315 992395315 269564206 811872687 811872687 527434686 550209069 550209069 1005522532 1005522532 294626449 579057600 584658001 584658001 842597632 1001443846 1001443846 556380570 514482736 514482736 450893362 450893362 363121354 328864832 515526942 515526942 702300685 702300685 602970872 772934189 772934189 544211841 555296289 671369542 671369542 732955005 732955005 1046439588 1046439588 748701126 1020380392 1020380392 382831546 105752136 2139136 2747648 2747648 112408360 112408360 111749728 111282776 92447840 190640068 764390172 764390172 726079941 432674022 1011549638 1011549638 1028008132 1028008132 763836525 839828216 839828216 514067018 901797926 901797926 892312616 892312616 983041994 983041994 322046068 663273781 795759832 795759832 681084969 555097220 679774032 679774032 649396814 562147063 375464572 844771709 844771709 764522661 764522661 742054001 681928769 639773037 660619641 660619641 635532023 635532023 88198822 639133490 738647556 738647556 968065362 968065362 630780461 647139865 647139865 563246633 545898569 1062705022 1062705022 714001756 1060232792 1060232792 751010040 751010040 726737097 726737097 696321197 882122078 1069339501 1069339501 791735208 791735208 170003416 992482827 1068770096 1068770096 810758787 805310480 805310480 985878708 985878708 558757980 992094528 992094528 722012546 575155056 570492060 1027443751 1027443751 777437780 404015627 709160351 872943636 872943636 484660233 629458129 629458129 629256664 579077344 579077344 42088576 54734864 54734864 42562752 42562752 39442384 39442384 44221712 50632320 50632320 47587073 615652253 742391949 742391949 503451968 661766333 661766333 454952603 1026098690 1026098690 397360066 397360066 885005888 885005888 672591522 886021542 886021542 926204949 926204949 897489449 824090361 294739564 1012964491 1040212252 1040212252 943334409 853156516 853156516 977883717 977883717 692506830 579623670 575068305 945260612 945260612 789215768 789215768 527177276 527177276 444022678 265232514 278432864 413672454 413672454 336537626 452931810 504705610 504705610 273428096 273428096 214164196 36187408 245695876 245695876 414684166 415214594 767604463 767604463 411786308 375718620 702422757 702422757 582393440 582393440 80386313 620846977 628047273 628047273 233573868 265300284 265300284 305185040 305185040 149235952 164103396 254947220 254947220 244344308 244344308 268458384 477761304 477761304 846800530 846800530 844703379 660281273 661010105 661010105 727974156 727974156 689047040 337360709 321467528 149464604 149464604 479789382 479789382 359197472 210364548 189917216 189917216 135927300 458455720 458455720 371121690 475849992 475849992 481231124 482683086 482683086 521909946 521909946 405918840 524758870 524758870 131692792 404452464 405887808 405887808 444471936 472923904 523364656 523364656 438749446 287704364 70215944 122716792 122716792 53852192 53852192 31842816 543005472 547356225 687840929 687840929 145097632 496963168 496963168 368497902 417335856 417335856 523956686 523956686 385937998 385937998 510387934 510387934 457890314 304350316 292214178 300810002 300810002 332120464 332120464 301001424 333022242 333022242 332211872 337002906 466566390 626027073 626027073 833932041 833932041 575311184 575311184 253922392 1044381889 1044381889 1034589653 1034589653 869089328 495266060 495266060 448818296 737272821 972904747 972904747 849095171 849095171 590952960 590952960 254027556 989660643 989660643 240137558 539824172 575544356 575544356 598676809 598676809 493052756 935336947 1072849103 1072849103 360156118 328447062 390642142 701901800 798171609 798171609 1061097201 1061097201 990741023 990741023 448929146 816210974 816210974 549115713 931223835 931223835 279928939 697523988 967078692 967078692 389113840 165361536 153352068 163739188 163739188 160958052 147780336 152443668 152443668 996178229 996178229 887106905 887106905 318142147 478747370 478747370 887896496 887896496 1040401922 1040401922 537771595 537771595 633748202 638148636 638148636 581998421 884262762 884262762 635387625 545385103 545385103 402702754 289509610 277016790 226492806 594807096 594807096 498226636 498226636 361333568 414741320 414741320 425932324 581804342 581804342 439880787 421031698 513451892 789992214 804787269 804787269 522556228 352557472 352557472 541664385 900503915 900503915 1068519920 1068519920 442302040 255183306 115440296 115440296 114171096 114171096 72094912 61606368 180468400 180468400 574701728 814207018 814207018 774269436 774269436 484808999 357991064 291289090 299683554 318777376 318777376 115613706 112288464 308404986 308404986 347095648 377536538 377536538 362082562 631282473 767589090 948831372 948831372 875827374 875827374 675325586 328388752 552449256 625476777 625551424 625551424 8652864 567158370 583744114 583744114 356290498 402004168 402004168 241389934 364978410 988752574 988752574 908210221 961156910 961156910 681886331 955549090 955549090 443057879 286787088 227115596 152166948 672785925 700115809 700115809 152357412 605063269 605063269 83241416 547656576 547656576 257249588 352621418 477193831 477193831 85716973 152552036 152552036 1009886854 1009886854 472908558 479989056 479989056 655483449 655483449 83026713 649089896 649089896 608190504 722472983 790106764 790106764 456054717 456054717 675073165 675073165 479465710 479465710 723149847 723149847 978257093 978257093 701118675 665792229 268574112 479422504 479422504 338803272 197187796 197187796 227699614 227699614 65653196 143257724 143257724 123312228 106306200 65732920 58322320 259852672 260106386 304204290 499436014 499436014 262969526 262969526 76550720 77074440 77074440 210244616 210244616 695670640 695670640 708188957 708188957 341118600 716700501 716700501 659598241 462358663 462358663 268489346 268489346 85248552 193075836 218239020 218239020 4243584 130158808 130158808 21156000 63062048 63062048 48934544 192742692 192742692 142746672 8410176 8410176 549725184 934137121 934137121 690662452 690662452 363826000 363826000 352670704 576291665 576291665 676381317 676381317 703059365 703059365 46085365 142739968 177418836 726009060 726009060 582422352 181410000 26037440 838656 1171968 71336576 72401416 72401416 67231880 71394048 71394048 69320968 145936724 145936724 42197392 178270676 178270676 49357696 49357696 48371344 135086676 135086676 41698320 156762148 156762148 45561024 35742240 251208864 251208864 107569568 601845408 601845408 756581520 756581520 223791164 240383164 787216256 787216256 663165001 790362457 790362457 708996381 708996381 769275525 801975989 801975989 794303217 794303217 863012586 1021568725 1021568725 1003640120 368067368 520914272 520914272 514115934 394248638 629877280 629877280 613816905 637607961 637607961 332465867 337252910 337252910 134217732 96802192 198898820 198898820 35520752 142641844 341525466 807056820 807056820 958399998 958399998 656933685 656933685 638860682 638860682 991568959 991568959 855917076 855917076 814899269 572031428 572031428 196113025 177950161 687083973 687083973 32135936 358774026 713067989 713067989 572137376 712642369 712642369 622070313 622070313 389758736 940098567 1007454216 1007454216 248661680 944788218 944788218 931171848 634963836 634963836 335287339 193353776 386902378 488845594 522191166 1042878508 1042878508 828333986 204197352 204197352 134131672 735651784 735651784 380054602 503788800 503788800 319502642 319502642 302724114 97972416 280483282 280483282 880756323 885800733 885800733 639600795 639600795 136794893 254596380 254596380 1069865158 1069865158 466382733 511735641 669792196 669792196 621530352 335992842 488043923 918128565 918128565 780293345 187365109 579482808 913538906 913538906 586531800 815091402 891593200 891593200 518122148 518122148 492182190 122302006 121766781 686953413 748038357 763366359 763366359 969155752 969155752 763701325 763701325 637744156 673070108 673070108 504599702 937124212 937124212 481436687 190448700 634029280 634029280 604164105 613954480 613954480 842703170 842703170 661263801 809769104 844066947 844066947 810417283 805803136 65113552 313562816 313562816 559714785 827981827 827981827 836800706 836800706 558891681 558891681 545390608 545390608 299053794 864161907 864161907 36052432 304163250 304163250 36312336 28106768 52596134 52596134 106616392 106616392 423211846 423211846 894316186 894316186 575409297 323561507 571598356 671613957 671613957 674115605 674115605 671347221 479977940 479977940 156419748 156419748 163792454 184681010 184681010 595322144 671713156 671713156 156696570 381851130 531886974 607615121 607615121 323036806 632780318 632780318 606390537 1005151104 1005151104 637839629 319039773 211289676 734075593 734075593 727235037 1056893199 1056893199 917338454 917338454 731958033 731958033 989257666 989257666 440618896 592451671 592451671 472197390 789460275 925243428 925243428 677716327 680052653 680052653 622341580 233456104 233456104 86247720 622992040 738199661 738199661 247273682 310248750 371792870 1008404910 1008404910 272706573 165394112 414552070 414552070 361220280 361220280 110500440 400242784 400242784 390672306 193776756 304512272 308703168 337897480 337897480 367653354 367653354 292446912 152089132 152089132 486029470 486029470 396786322 520353818 520353818 331558970 228589974 477922460 477922460 430603929 430603929 932254420 1027813551 1027813551 406954329 663297073 663297073 404046172 948961319 948961319 864401139 864401139 17689632 23457024 492025295 492025295 832227140 832227140 716805577 716805577 425553440 624968097 624968097 651201800 651201800 591446193 591446193 605182562 605182562 808927885 808927885 960569439 960569439 109310040 67154000 890088286 1005399247 1005399247 992515140 668084186 668084186 43958816 348652258 631123520 891119267 891119267 646322897 1016239014 1016239014 525849108 304726802 155514306 409636880 415186758 438567936 439094550 439094550 979609056 998954103 998954103 566318167 755318937 755318937 730122357 653059469 553771041 893740036 893740036 940835166 1007176275 1007176275 911254366 806354952 339947658 992395315 992395315 402966534 811872687 811872687 218151354 550209069 550209069 1005522532 1005522532 591597312 579057600 584658001 584658001 464736692 1001443846 1001443846 556380570 514482736 514482736 379378110 379378110 363121354 53910498 144183700 144183700 91260568 130056856 583174668 708942058 829121095 829121095 445434966 671369542 671369542 14037829 25109506 343501174 815653292 815653292 512773997 274730664 396715272 396715272 348453520 348453520 375568594 375568594 301733352 36392896 58335104 58335104 190640068 764390172 1000561818 1000561818 432674022 1011549638 1011549638 1049891140 1049891140 785253849 993943102 993943102 843487603 810425987 528668668 892312616 892312616 560977032 689584213 689584213 663273781 795759832 795759832 681084969 555097220 508029824 649396814 649396814 562147063 491658414 844771709 844771709 764522661 764522661 742054001 681928769 639773037 660619641 660619641 635532023 635532023 518046174 639133490 738647556 738647556 968065362 968065362 981684288 981684288 563246633 563246633 550061473 1062705022 1062705022 714001756 1060232792 1060232792 751010040 751010040 700657893 828883597 828883597 882122078 1069339501 1069339501 743692000 743692000 118800324 992482827 992482827 977404910 977404910 277963708 655466514 655466514 558757980 558757980 465734770 722012546 722012546 575155056 570492060 1027443751 1027443751 621467809 265271036 210111688 872943636 872943636 617410976 617410976 629256664 629256664 105136545 78051584 12792000 54734864 71876968 82034632 82034632 70594176 39442384 44221712 50632320 56902464 56902464 615652253 742391949 742391949 387108987 661766333 661766333 454952603 608819761 608819761 397360066 397360066 269790328 672591522 672591522 886021542 886021542 926204949 926204949 897489449 824090361 294739564 681622950 879441291 943334409 943334409 853156516 853156516 977883717 977883717 692506830 109217988 562715932 945260612 945260612 789215768 789215768 527177276 527177276 459354286 371669032 371669032 413672454 455419180 455419180 452931810 504705610 504705610 273428096 273428096 17302560 5842560 70780672 135661834 414684166 415214594 415214594 411786308 411786308 391612714 702422757 702422757 582393440 582393440 870598165 870598165 807464876 807464876 1042082504 1042082504 837142849 973972860 973972860 162711484 151457656 254947220 254947220 244344308 244344308 110490188 477761304 477761304 713031324 713031324 508435614 88213384 556933928 556933928 455944032 689047040 689047040 337360709 321467528 149464604 149464604 479789382 479789382 210364548 210364548 195372000 295946336 405662982 458455720 458455720 371121690 371121690 285671576 481231124 481231124 281933972 521909946 521909946 405918840 347733780 228350220 228350220 430531584 430531584 356116266 105919136 105919136 523364656 523364656 259061770 157947300 177866017 177866017 600883253 1070088746 1070088746 789103677 961015430 961015430 690230961 687840929 677701448 677701448 876745355 1050297564 1050297564 199365108 199365108 132676876 72713096 97381608 370360720 457890314 457890314 166836224 292214178 300810002 300810002 332120464 332120464 301001424 333022242 333022242 332211872 337002906 337002906 626027073 626027073 326138343 744494392 744494392 1036556976 1049943631 1049943631 608178185 325456304 759564463 759564463 455381184 239077696 239077696 737272821 972904747 972904747 849095171 849095171 590952960 590952960 254027556 989660643 989660643 206021041 539824172 575544356 575544356 598676809 598676809 493052756 767066337 1072849103 1072849103 360156118 328447062 390642142 701901800 798171609 798171609 1061097201 1061097201 990741023 990741023 709962388 709962388 873538059 873538059 504114709 25179136 25900128 25900128 75584050 389113840 389113840 116645528 41493888 41493888 18485552 62288880 62288880 108683905 110355816 996178229 996178229 887106905 887106905 506079396 523671734 523671734 933442010 933442010 1040401922 1040401922 756289707 711999905 721469493 721469493 930616456 930616456 584389688 635387625 635387625 455330430 469978328 469978328 440403176 529007742 529007742 479855658 370808346 498226636 498226636 286883948 453529656 453529656 425932324 425932324 833669481 869909227 1072784173 1072784173 789992214 804787269 804787269 548384016 598137201 598137201 494279598 494279598 478473800 534754892 534754892 321553118 255183306 42152016 63571072 63571072 25757792 216276960 216276960 180468400 180468400 680337440 814207018 814207018 780469309 774269436 484808999 357991064 291289090 299683554 299683554 297101040 61866864 35725968 37748880 37822464 37822464 50745632 79610896 79610896 631282473 631282473 948831372 948831372 875827374 875827374 224403596 275532833 552449256 625476777 872604992 883899723 883899723 83963763 75583360 292321280 292321280 321159680 321159680 90362228 354069802 376835192 376835192 517474434 517474434 306368658 681886331 955549090 955549090 215482756 215482756 147849636 71618016 10487616 151030272 152357412 152357412 540017216 540017216 26452833 134222032 190603189 707887153 707887153 707163229 707163229 690338120 772434065 772434065 746721357 608469765 680603853 680603853 1045088066 1045088066 237074220 598831936 598831936 271827522 271827522 606208811 606208811 824218448 824218448 456054717 675073165 675073165 479465710 479465710 723149847 723149847 978257093 978257093 701118675 665792229 268574112 479422504 479422504 338803272 197187796 203377174 512595562 512595562 348364800 348364800 216113756 216113756 106306200 215354512 215354512 259852672 260106386 304204290 499436014 499436014 581985429 581985429 250337024 610522573 610522573 204648960 198313120 695670640 695670640 537596119 933771892 1016464616 1016464616 716700501 659598241 462358663 462358663 360915116 423833766 423833766 293712354 128501112 1035576464 1035576464 945292935 840570581 840570581 596807921 580141584 48934544 48934544 727281646 915903899 915903899 801884653 801884653 606348611 569376983 738738259 738738259 350848080 273237218 367637660 576291665 576291665 676381317 676381317 703059365 703059365 84748400 142739968 177418836 726009060 726009060 582422352 181410000 113916360 46840000 46840000 34205440 81473608 81473608 80185096 20432904 17041440 53965088 145936724 145936724 42197392 178270676 178270676 49357696 49357696 48067584 135086676 135086676 43869696 156762148 156762148 38148880 35742240 237595700 237595700 146874564 601845408 601845408 233741180 203505692 203505692 153108740 787216256 787216256 663165001 1033587059 1033587059 708996381 973175826 973175826 801975989 801975989 794303217 794303217 863012586 1021568725 1021568725 1003640120 84329252 590368891 590368891 561218934 949494746 949494746 629877280 613816905 637607961 818545040 818545040 520494931 389281881 795900048 795900048 198898820 198898820 35520752 438481012 438481012 341525466 614994274 958399998 958399998 656933685 990511234 990511234 285868068 285868068 11535168 855917076 855917076 814899269 714137652 714137652 330483737 343284650 1031176367 1031176367 536961070 929223301 929223301 53440688 359662504 359662504 286200874 352585770 389758736 389758736 39103664 362580488 740181653 740181653 125738026 1063523047 1063523047 688915320 857873904 857873904 595338793 587273636 791347997 791347997 1042878508 1042878508 50645040 55763680 55763680 25688160 25614432 755668276 755668276 650702867 771873177 771873177 763449652 304755802 304755802 128238472 128238472 336905736 336905736 839677956 941046791 941046791 160954980 160954980 28435296 1022273262 1022273262 897788729 290012430 256723328 502593605 502593605 335992842 488043923 918128565 918128565 780293345 187365109 153736160 913538906 913538906 586531800 815091402 891593200 891593200 354493220 479306206 479306206 529754814 529754814 686953413 748038357 748038357 575941977 575941977 537135132 671953444 671953444 637744156 673070108 673070108 118537232 118537232 676971745 676971745 199176910 634029280 634029280 604164105 613954480 613954480 536876472 661263801 809789696 809789696 808044931 2132995 41034130 269693442 269693442 313562816 328323248 559714785 827981827 827981827 53867378 50815377 558891681 866189601 866189601 545390608 299053794 864161907 864161907 851935731 546187395 546187395 65382403 538968416 557859200 557859200 38673552 44247116 552478927 835687597 894316186 894316186 794309654 894644907 894644907 671613957 671613957 169468433 186416950 302914578 345441822 411115590 411115590 427868262 687870062 687870062 159429229 145924160 137622276 134560728 134560728 236096812 236096812 221008412 222421164 222421164 168577556 168577556 168094116 1005151104 1005151104 855230698 803023447 499420907 734075593 734075593 727235037 1056893199 1056893199 917338454 917338454 731958033 731958033 989257666 989257666 440618896 545360645 545360645 472197390 789460275 789460275 499443713 677716327 680052653 680052653 622341580 492659906 655633068 655633068 584319057 177151633 76293340 47945428 146849988 146849988 264840444 264840444 187369104 165933184 414552070 468323394 468323394 361220280 81924552 362739616 362739616 268908546 193776756 304512272 304512272 1050673279 1050673279 256060604 1010296932 1010296932 884451231 318701833 172154892 994541758 994541758 658548888 658548888 375767074 467922398 467922398 961513470 961513470 768419069 932254420 1027813551 1027813551 406954329 347337008 347337008 404046172 948961319 948961319 864401139 864401139 808258069 808258069 492025295 492025295 832227140 832227140 637206538 790552125 790552125 717227698 717227698 651201800 907808514 907808514 645922865 605182562 605182562 379875540 1009650016 1009650016 996795831 996795831 232209132 890088286 1005399247 1005399247 992515140 668084186 668084186 43958816 348652258 631123520 891119267 891119267 646322897 1016239014 1016239014 525849108 303513992 221634312 409636880 415186758 415186758 409455302 403442694 979609056 998954103 998954103 566318167 755318937 755318937 730122357 755033167 1027703027 1027703027 1037954134 1037954134 1007176275 1007176275 299050664 339947658 361840132 361840132 294726262 402966534 526845998 526845998 393266106 393266106 68264370 21106848 591597312 591597312 574435089 573368832 573368832 314597904 314597904 289416610 95151176 303206928 303206928 240177172 69605384 131203672 131203672 96998744 96998744 91260568 221713084 800303072 800303072 829121095 829121095 315632969 813887506 849346131 849346131 747483159 927729238 927729238 959303037 966602298 966602298 396715272 396715272 348453520 348453520 375568594 375568594 301733352 96294560 58335104 58335104 157399489 231537055 1000561818 1000561818 528613641 973087966 973087966 1049891140 1049891140 785253849 993943102 993943102 843487603 842008343 475072396 475072396 415873720 560977032 863725872 863725872 391485699 490544590 524963426 524963426 440160802 508029824 508029824 498864492 498864492 491658414 169777784 500355640 503733852 503733852 438981848 173163540 830083364 842663567 842663567 310501458 514941568 518046174 518046174 396786442 396786442 471715198 1036026983 1036026983 981684288 921182393 921182393 550061473 550061473 94693697 612395817 677851169 677851169 661760868 679665824 700657893 828883597 828883597 750788355 671749125 222436585 160125005 582433617 582433617 197271620 337130772 977404910 977404910 759907723 759907723 164141296 281674898 465734770 734251204 734251204 716355424 363500002 363500002 195460216 195460216 265271036 265271036 1040461927 1040461927 537286829 617410976 617410976 224164112 157212324 146390432 120916108 120916108 195043548 537022817 537022817 560608160 564345216 564345216 28377920 19532320 56902464 56902464 50380848 172488852 213318548 213318548 259436952 259436952 24302496 177188008 246416220 246416220 962018416 962018416 814040387 814040387 955653639 955653639 227185255 287304526 287304526 1049175135 1049175135 613853513 613853513 1024472591 1024472591 723739174 723739174 457753782 463655286 463655286 90752424 562715932 680266831 680266831 277746877 508631950 508631950 459354286 459354286 371669032 371669032 67573018 455419180 455419180 406070152 406070152 224081580 224081580 136650668 136135172 15084164 135636224 137959936 137959936 8744704 3775232 300349584 329326962 391612714 391612714 867506000 867506000 811792322 870598165 870598165 807464876 807464876 1042082504 1042082504 837142849 973972860 973972860 174203372 507713300 507713300 447747820 163583184 33293352 11343552 303104008 303104008 713031324 713031324 207552437 673189888 673189888 270668034 455944032 697713314 697713314 912595271 912595271 105431176 683753978 1017931158 1017931158 514402308 156255392 195372000 295946336 405662982 405662982 80625104 98442984 100971176 441926936 441926936 236887548 407570768 407570768 202573170 347733780 347733780 360721402 360721402 531876664 531876664 452236996 286682646 362847134 362847134 348601328 422839900 422839900 177866017 580503792 600883253 1070088746 1070088746 789103677 961015430 961015430 690230961 553033573 677701448 756339580 876745355 1050297564 1050297564 414220754 414220754 76822902 527003803 690672933 690672933 795237611 795237611 166836224 166836224 291693056 291693056 943982804 958695618 958695618 830017186 830017186 595075366 272629890 163777136 163777136 84967988 220080392 744494392 744494392 1036556976 1049943631 1049943631 234001127 183851020 346282342 398827756 398827756 453939260 453939260 163601524 10486016 370002488 370002488 328786466 423691680 423691680 153986308 883674598 883674598 826605009 315092273 458554128 458554128 480615956 480615956 146228648 171305748 171305748 271477298 271477298 185783552 456405126 456405126 211172040 230367752 230367752 589719530 781535989 781535989 794619088 794619088 873538059 873538059 748161145 642704041 101066432 589832792 642525944 642525944 80887232 7866240 40969488 40969488 17301920 62288880 62288880 108683905 108683905 825387937 825387937 607192879 227299207 879558144 879558144 817179459 933442010 933442010 944097420 944097420 756289707 711999905 721469493 807928320 930616456 930616456 439420098 439420098 1042333785 1042333785 761804649 469978328 440403176 841124087 1001837952 1001837952 842716947 408565057 408565057 406398726 453529656 453529656 249144772 385143651 833669481 869909227 1072784173 1072784173 646522420 567354081 704900468 704900468 598137201 598137201 579390985 572043840 606076425 655027720 655027720 118015032 51445856 50803280 63571072 63571072 25757792 216276960 558912045 558912045 215619276 680337440 733794165 780469309 780469309 736358901 736358901 563485761 563485761 563946544 567093088 567093088 49882096 31457760 31457760 47198528 47382640 97781264 100814888 100814888 32904096 32904096 626067724 695544741 695544741 615984037 224403596 224403596 8650816 8650816 872604992 883899723 952022042 952022042 844779848 117204504 117204504 120373560 327453896 390644922 517505278 517505278 374342298 515940854 515940854 496575834 496575834 1049624629 1049624629 439014678 289069936 542117345 542117345 560290561 560290561 153105284 156633088 540017216 694569936 694569936 586468305 584352000 707887153 707887153 707163229 707163229 690338120 772434065 772434065 746721357 608469765 680603853 680603853 1045088066 1045088066 739300505 739300505 644440409 572662819 572662819 862184672 862184672 824218448 824218448 305012502 673992513 673992513 80217288 268468242 641731274 710550681 1060487237 1060487237 285221141 285221141 365901324 365901324 581088283 581088283 464722282 917987406 917987406 831096404 831096404 512562622 512562622 498768520 96155496 215354512 215354512 138663108 66265988 191489460 191489460 278335784 581985429 581985429 250337024 610522573 610522573 384566552 384566552 347954506 537596119 537596119 933771892 1016464616 1016464616 284338048 294211972 294211972 155329824 360915116 423833766 423833766 351729002 311504516 1035576464 1042682107 1042682107 840570581 840570581 836260931 822743504 66918228 537242721 727281646 915903899 915903899 801884653 801884653 606348611 979497408 979497408 738738259 168101903 273237218 367637660 367637660 433049700 495588462 495588462 294259796 109841496 84748400 17043872 17043872 54985520 54985520 53096576 113916360 113916360 78255448 79827848 98830208 98830208 81473608 80185096 69206408 69206408 106064128 106064128 74533776 5452416 4239872 4239872 3350656 5469056 48067584 48067584 43869696 43869696 42256464 38059008 38059008 33664 136413760 146874564 146874564 46613824 148088512 148088512 114504408 114504408 101372952 165927852 165927852 557900358 1033587059 1033587059 604768953 973175826 973175826 875351307 875351307 767986248 759773409 711536789 422684112 262848830 493432908 493432908 590368891 590368891 561218934 949494746 949494746 532879492 510007710 730815548 818545040 818545040 520494931 389281881 795900048 918176559 918176559 187489124 444893268 444893268 438481012 193155350 155279716 161587364 161587364 141705886 990511234 990511234 689562610 984098135 984098135 983138725 983138725 271350788 714137652 886506134 886506134 395078395 1031176367 1031176367 536961070 929223301 929223301 63394407 322614960 322614960 287045154 91221410 593349786 876906657 876906657 621282345 740181653 740181653 125738026 1063523047 1063523047 688915320 857873904 857873904 595338793 587273636 791347997 791347997 656474425 639774752 524569998 242238408 242238408 208774064 208774064 755668276 755668276 650702867 771873177 771873177 763449652 304755802 304755802 120523872 293936169 573048089 590154773 839677956 941046791 941046791 160954980 160954980 28435296 684108680 897788729 897788729 1031536869 1031536869 682904676 682904676 195035276 233853300 233853300 94798664 27531296 70926656 70926656 83896328 83896328 76022856 128223336 315433978 315433978 354493220 479306206 479306206 529754814 529754814 143373162 308358336 472062348 472062348 21180832 21180832 17053856 262104128 262104128 261520384 243997244 118537232 118537232 676971745 676971745 199176910 298748018 298748018 384359818 549598211 549598211 341133066 621557104 809789696 809789696 808044931 277792898 329649442 329649442 315411666 74441632 358853768 358853768 353377442 287884578 823004992 823004992 27023905 866189601 866189601 580694336 602173808 602173808 851935731 851935731 546187395 546187395 561023104 561023104 557859200 557859200 485367038 126360056 552478927 835687597 835687597 974127639 974127639 894644907 894644907 439981759 271631106 103488266 186416950 302914578 345441822 411115590 411115590 427868262 687870062 687870062 159429229 76746860 684085512 684085512 134560728 485679054 485679054 783975905 783975905 511021150 688688398 699271493 699271493 482306027 880820315 880820315 803023447 674529440 695520165 779209381 779209381 777118365 441013031 910922010 910922010 264704413 239709456 239709456 282453458 282453458 139847936 356498528 428566086 473721882 473721882 343002406 343002406 202252260 358026216 509453554 509453554 655633068 655633068 584319057 960526436 960526436 140355073 146849988 146849988 264840444 1018477286 1018477286 288489246 288489246 468323394 468323394 312246624 81924552 370967626 370967626 268908546 160018432 160018432 407120786 1050673279 1050673279 180041556 1010296932 1010296932 884451231 318701833 172154892 994541758 994541758 658548888 658548888 375767074 467922398 467922398 961513470 961513470 831156503 692708517 778430877 778430877 40964365 636571937 636571937 557265097 557265097 15464288 860493345 860493345 808258069 808258069 636441384 636441384 674991778 674991778 304545640 790552125 959010272 959010272 717227698 611614888 907808514 907808514 902319586 612942921 403294280 129320815 1009650016 1009650016 996795831 996795831 901984491 901984491 505955104 505955104 482345166 259942242 34076688 33821792 555091008 555091008 89704104 89704104 131008752 131008752 97650416 24823432 74713992 221634312 475060998 475060998 404472704 405101966 405101966 169533840 86427656 369818544 369818544 346705808 721549389 721549389 755033167 1027703027 1027703027 1037954134 1037954134 380120643 380120643 136970816 136970816 361840132 361840132 983689250 983689250 765612392 738351457 525337534 525337534 926213522 979757463 979757463 843224085 574012721 593528864 593528864 17133713 34664448 34738704 34738704 303206928 303206928 69605384 69605384 131203672 131203672 96998744 96998744 81806584 221713084 800303072 800303072 646254447 600706417 600706417 813887506 849346131 849346131 984994599 1028077743 1028077743 1010359365 966602298 966602298 374170048 110977128 48315840 48315840 101388496 101388496 96294560 96294560 20167144 39452356 138777984 138777984 935415062 935415062 528613641 973087966 973087966 779632136 779632136 678756809 551028417 503579420 842008343 842008343 1016186701 1016186701 975129664 377287960 863725872 863725872 816966069 1022786574 1022786574 426844836 339747160 339747160 201550768 201550768 399547864 399547864 357850112 687999253 919361951 919361951 1060555963 1060555963 830083364 842663567 842663567 596304509 596304509 437281348 444605668 562901098 706214421 784566984 1036026983 1036026983 808046960 921182393 921182393 65736803 464205132 464205132 143144026 677851169 677851169 661760868 644895065 235554748 674398885 953196127 953196127 830997603 455886036 201753201 582433617 835076147 849388144 849388144 327850701 421785894 811170888 811170888 856762448 856762448 679686213 909179690 909179690 421613779 574317112 574317112 947394719 947394719 562961505 186373346 1040461927 1040461927 679575936 679575936 311737045 224164112 157212324 146390432 120916108 120916108 568352832 568352832 537022817 560608160 564345216 564345216 5243520 554075169 554075169 552711105 600168785 600168785 626013064 626013064 259436952 259436952 24302496 177188008 246416220 314055432 962018416 962018416 814040387 814040387 964743330 964743330 417591750 417591750 843571036 1049175135 1049175135 613853513 613853513 1024472591 1024472591 723739174 723739174 457753782 436256768 436207638 268435478 268435458 49154 80874088 80874088 232283812 232283812 482400614 482400614 100827664 270146704 386140386 386140386 248454238 406070152 406070152 372731594 398651528 398651528 136135172 99110024 135636224 362924552 362924552 288154696 278054408 288655970 356256586 356256586 881254115 881254115 867506000 811792322 811792322 248562396 776825880 776825880 675332229 60368496 487589176 488702224 488702224 497689012 507713300 507713300 447747820 86194080 69281640 30420736 220941340 454399920 524817590 961164702 961164702 755500699 673189888 270668034 573579332 697713314 697713314 912595271 912595271 105431176 1005423816 1017931158 1017931158 514402308 164627172 31132484 280239680 280239680 278211138 288737208 288737208 101399466 441926936 441926936 404902972 423190416 423190416 203767790 149810628 230332182 360721402 360721402 531876664 531876664 452236996 286682646 362847134 362847134 348601328 422839900 422839900 75923064 593457168 593457168 553975936 558180513 558180513 139747968 136118560 50595888 676256856 676256856 756339580 756339580 231901693 225739204 414220754 414220754 502382814 527003803 690672933 690672933 1030491244 1030491244 637021924 815269443 946883587 998541637 998541637 958695618 958695618 830017186 830017186 595075366 992450741 992450741 699403874 859612832 859612832 544787078 893670845 893670845 690932021 704813344 704813344 113466760 554049721 554049721 398827756 453939260 453939260 983630229 994575543 994575543 675419186 451642820 719672657 719672657 153986308 883674598 883674598 826605009 315092273 458554128 458554128 274569688 274569688 191188036 260113680 260113680 271477298 271477298 203268364 456405126 456405126 211172040 230367752 230367752 160391872 781535989 781535989 794619088 794619088 789909093 777643677 748161145 642704041 101066432 589832792 642525944 642525944 6291584 6291840 6292512 17301920 17301920 32244256 32244256 69251328 634888640 634888640 607192879 607192879 1008591521 1008591521 879558144 835924200 835924200 644338539 820170817 1004933478 1004933478 853792770 254910987 807928320 807928320 486621458 439420098 671215819 1042333785 1042333785 761804649 247824667 539582534 841124087 1001837952 1001837952 842716947 408565057 408565057 406398726 324265626 324265626 249144772 249144772 155788452 717827276 717827276 637798425 572531696 703157494 704900468 704900468 331403700 579390985 785266775 785266775 606076425 655027720 655027720 498039398 482027562 482027562 300365748 277423170 388011990 496691564 558912045 558912045 215619276 215619276 733794165 733794165 731143041 736358901 736358901 563485761 563485761 563946544 567093088 567093088 49882096 31457760 31457760 47198528 47382640 97781264 100814888 110265921 622074385 622074385 165583584 210363468 478675106 478675106 231212268 294390882 294390882 403702278 811761980 811761980 952022042 952022042 887054129 887054129 654116377 620116520 327453896 390644922 517505278 517505278 374342298 515940854 515940854 496575834 496575834 1049624629 1049624629 439014678 289069936 542117345 542117345 560290561 560290561 153259172 156633088 156633088 694569936 694569936 586468305 584352000 25423968 145474592 145474592 162042016 162042016 157919392 157919392 137153796 542220840 542220840 800788716 800788716 206767929 739300505 739300505 644440409 572662819 572662819 862184672 862184672 540542721 51953697 36312852 302006274 302006274 33603600 276825799 953679938 953679938 1060487237 1060487237 797452880 797452880 365901324 365901324 581088283 581088283 464722282 917987406 917987406 831096404 831096404 512562622 512562622 498768520 87562936 87562936 4194432 4194432 218994410 218994410 506818186 508092296 508092296 281567946 231129948 163011572 274733626 384566552 384566552 432299262 432299262 347601738 267717216 333690435 669202509 669202509 575989929 302383962 252106766 578867229 578867229 729843765 729843765 311504516 960668534 1042682107 1042682107 569692961 836260931 836260931 822743504 66918228 537242721 537242721 983762976 1000814967 1000814967 457618855 459526218 979497408 979497408 692678192 734842101 734842101 818041452 818041452 269009020 761836031 761836031 189656244 189656244 637385856 637385856 147220977 539297348 718148052 718148052 185019140 186853352 236862976 236862976 98830208 98830208 77336168 73532416 84935336 84935336 106064128 233005140 233005140 45212432 181510356 181510356 15862672 15862672 12158800 137948740 137948740 38186496 200147188 200147188 44474832 724635777 724635777 125878392 750616729 750616729 607707629 612375448 612375448 224098373 101372952 709590893 709590893 778988574 848142868 926111735 926111735 604768953 822951688 875351307 875351307 518573323 604538071 604538071 422684112 262848830 493432908 493432908 237761476 93373032 93373032 439526042 532879492 532879492 510007710 730815548 730815548 488139503 108793752 204357263 433965067 1019511793 1019511793 523553598 444893268 444893268 996704726 996704726 806601180 806601180 609912102 709510543 709510543 870003684 949101734 984098135 984098135 983138725 983138725 304187682 806167810 886506134 886506134 875564718 875564718 219417383 259133540 421044277 421044277 532015442 609229352 609229352 885776833 885776833 935387515 935387515 876906657 839570451 807178768 314082496 314082496 13443536 52466720 52466720 36361488 19584560 73609088 73609088 203460660 203460660 186369596 524569998 524569998 378197082 458226870 458226870 524587440 524587440 433731536 339063582 509806618 509806618 319634482 102400122 114986216 381601586 381601586 573048089 590154773 704973866 704973866 196357088 196357088 158182300 151047660 151047660 374739140 476127630 1031536869 1031536869 682904676 682904676 530842618 530842618 1014399185 1014399185 802214845 802214845 717600889 613794891 805779778 805779778 538200480 666466802 666466802 75948856 64547520 113021272 113021272 61177984 61177984 57112864 86192616 86192616 21180832 21180832 17053856 143827972 261520384 261520384 376648668 401087834 401087834 151465594 271969144 537215075 537215075 932523784 932523784 870402209 379614538 341133066 621557104 621557104 650364491 849924236 849924236 740368653 329649442 637660804 637660804 546565225 358853768 547212292 547212292 823004992 823004992 27023905 44175696 580694336 580694336 602173808 602173808 562509921 56822225 4489216 4489216 561023104 561023104 65931910 485367038 485367038 506729044 506729044 1008707809 1008707809 974127639 974127639 945025671 945025671 192673716 845199252 861929907 1030231485 1030231485 808665497 302740992 335573002 335573002 285289024 546472548 672297537 672297537 684085512 684085512 144653760 485679054 485679054 783975905 783975905 511021150 688688398 699271493 699271493 482306027 880820315 880820315 666370709 674529440 695520165 779209381 779209381 777118365 441013031 910922010 910922010 264704413 239709456 743490064 743490064 132433952 41719024 32392304 428566086 428566086 424187412 343002406 343002406 249705484 92001816 509453554 509453554 378978979 1058691313 1058691313 960526436 960526436 559170084 529006651 623879704 623879704 1018477286 1018477286 987282053 987282053 464497940 576862371 576862371 791957228 791957228 370967626 244371576 160018432 171169088 407120786 407120786 171865392 180041556 180041556 45423620 149357700 149357700 134398148 134398148 4532352 21503016 134736000 134736000 117568684 55179288 273204579 831156503 831156503 692708517 778430877 778430877 303271976 636571937 636571937 809661401 829088129 829088129 310637298 309905234 423363588 423363588 696140325 696140325 674991778 674991778 903147336 903147336 959010272 959010272 900121150 611614888 897615370 902319586 902319586 612942921 403294280 129320815 236349966 1047316947 1047316947 830295284 1005198045 1005198045 708105649 708105649 482345166 475273064 34076688 20208160 555091008 555091008 89704104 89704104 202170052 202170052 264370416 479234782 479234782 72352392 475060998 475060998 404472704 405101966 405101966 344211712 723800727 723800727 850395987 850395987 911986203 911986203 105582666 327561442 930421051 930421051 799752475 799752475 413212998 613711892 875846747 919962905 919962905 983689250 983689250 765612392 738351457 704979456 705956373 926213522 979757463 979757463 843224085 574012721 593528864 593528864 60818448 300157122 300157122 42992208 344988964 519181278 519181278 516163806 516163806 452861314 145097582 356784296 356784296 336199818 618536649 646254447 646254447 862061424 999429521 999429521 226900830 346429061 984994599 1028077743 1028077743 1010359365 720423408 720423408 374170048 252989684 142009384 249454096 249454096 106577688 119329160 119329160 118747768 74612848 166440389 551589889 551589889 591608110 798493897 919601883 1044260550 1044260550 779632136 678756809 551028417 213385613 648824643 719724874 1016186701 1016186701 975129664 377287960 352969770 673968725 816966069 1022786574 1022786574 326369842 456837938 456837938 454475074 201550768 443976324 443976324 357850112 687999253 919361951 919361951 1060555963 1060555963 588777392 722473897 911361557 911361557 596304509 260133059 444605668 562901098 845321497 845338587 861049907 861049907 808046960 808046960 581055539 643961803 643961803 464205132 671662667 671662667 479741120 538988812 538988812 618667176 618667176 953196127 953196127 830997603 661121864 201753201 553797985 835076147 849388144 849388144 223105664 5409964 811170888 811170888 856762448 856762448 679686213 909179690 909179690 464773642 574317112 574317112 947394719 947394719 562961505 457247972 457247972 596320264 679575936 679575936 165756452 772337960 772337960 215468177 75499648 79956168 689977200 689977200 116988973 635495008 635495008 553750976 19337056 554075169 567417344 567417344 600168785 600168785 626013064 626013064 96498624 377594310 377594310 174410924 235406364 492575410 492575410 335943690 335943690 403627014 964743330 964743330 417591750 417591750 843571036 980677527 980677527 149548887 217285032 356206238 356206238 188784304 188784304 436256768 436256768 729940158 783471191 974130101 991304439 991304439 277217853 232283812 232283812 482400614 482400614 130580736 270146704 386140386 386140386 248454238 245526292 350386504 372731594 398651528 398651528 99110024 99110024 79991368 362924552 362924552 288154696 278054408 288655970 356256586 356256586 881254115 881254115 565486819 659652712 1007512583 1007512583 1000097473 1000097473 952706099 899245129 827663753 943269428 943269428 867051945 867051945 866983063 609693309 738789920 738789920 676443940 220941340 454399920 524817590 961164702 961164702 755500699 111288396 700527176 760480141 760480141 435186656 435186656 118778663 382992600 1005423816 1005423816 793792428 383117016 383117016 441567414 441567414 280239680 371135912 407097900 503320072 503320072 341723414 208064778 404902972 423190416 423190416 390594746 514392912 514392912 173284992 56865696 28496736 53008224 53008224 34334272 408605200 408605200 407630982 383266054 75923064 75923064 593457168 772841609 772841609 219416716 538708533 706563872 706563872 711138228 711138228 700494132 277905938 569662801 569662801 411582755 225739204 177826228 502382814 539233713 695094656 695094656 1030491244 1030491244 637021924 815269443 946883587 998541637 998541637 373146850 775878950 775878950 507315743 537135105 992450741 992450741 699403874 859612832 859612832 544787078 893670845 893670845 690932021 704813344 704813344 113466760 554049721 554049721 206550344 201590796 99302884 983630229 994575543 994575543 734844117 734844117 719672657 901869017 901869017 816319687 816319687 356198992 155646504 155646504 189428600 274569688 274569688 191188036 260113680 260113680 59763140 203268364 203268364 240816200 240816200 48634320 213566364 213566364 160391872 160391872 255083400 255083400 171155172 185514132 185514132 172889136 34343952 133110688 133110688 110632248 110632248 145228945 674760453 724177285 724177285 705168405 734545504 734545504 226017380 634888640 800030135 800030135 372285512 1008591521 1008591521 607419251 835924200 835924200 805323277 820170817 1004933478 1004933478 853792770 522578272 867461370 986712718 986712718 404873499 671215819 671215819 604584015 604584015 979544137 979544137 539582534 411149569 190106292 199674272 199674272 160715296 156238500 148423136 34794496 6605184 968989073 968989073 900457755 717827276 680040647 680040647 703157494 828070626 828070626 893501092 966473319 966473319 785266775 621809088 412021908 498039398 498039398 482027562 482027562 300365748 350224842 388011990 496691564 496691564 224189456 257036988 257036988 101905036 85144104 20265248 20265248 3410688 3545120 555489792 555489792 53488272 71631400 71631400 100672000 100672000 34681392 89207216 89207216 81373168 110265921 622074385 622074385 752749669 752749669 625209513 478675106 231212268 294390882 675874820 675874820 811761980 811761980 570940032 728184092 887054129 887054129 908464910 908464910 528351241 188928180 188928180 171041556 471941658 471941658 76464192 76464192 33888256 200472908 200472908 121804320 189988524 189988524 130219512 130219512 123261856 153259172 153259172 134582388 193077248 193077248 229426472 229426472 592433557 592433557 549325581 685480124 685480124 650749137 650749137 764130753 764130753 781283720 800788716 800788716 683701081 750816809 750816809 610197129 648503680 648503680 553199312 328467778 328467778 274774018 274774018 445646365 445646365 621043251 621043251 953679938 953679938 710601872 710601872 797452880 797452880 769257000 769257000 989272656 989272656 627125798 627125798 371995055 306742816 306742816 73418032 230723400 238291740 238291740 197634524 265698300 265698300 231139996 223272108 506818186 508092296 508092296 281567946 231129948 171212928 274733626 329519154 329519154 432299262 432299262 201376780 267717216 333690435 669202509 779172316 779172316 503681885 503580694 578867229 578867229 730893328 730893328 672927237 672927237 672927237 100847640 100847640 100847640 101225472 101225472 39522496 543858176 548854593 983762976 1000814967 1000814967 363733350 459526218 585288402 1039085554 1039085554 734842101 734842101 818041452 818041452 269009020 820802052 820802052 807501298 189656244 637385856 718246163 857946995 857946995 718148052 718148052 185019140 564764961 564764961 236862976 92419040 92419040 77336168 126878800 126878800 84935336 20975624 233005140 233005140 45212432 181510356 181510356 17825984 15862672 12158800 137948740 137948740 73300632 200147188 200147188 83746432 758136352 758136352 125878392 750616729 750616729 719745472 719745472 612375448 224098373 53410768 709590893 709590893 778988574 848142868 926111735 926111735 839126150 839126150 1038929391 1038929391 117102552 541303964 541303964 480900977 494569420 494569420 237761476 638603501 638603501 720103336 756711996 756711996 265913340 265913340 555799816 644711721 644711721 784599261 784599261 716046855 1041646933 1041646933 523553598 214063266 427294872 996704726 996704726 806601180 806601180 609912102 709510543 709510543 870003684 949101734 949101734 446110294 175717698 304187682 304187682 806167810 874825995 874825995 875564718 875564718 475239254 859403504 859403504 530068581 532015442 609229352 609229352 885776833 885776833 935387515 935387515 839570451 839570451 807178768 371360242 352040058 322624438 322624438 352355914 525262516 525262516 83904584 83904584 62671464 210797360 210797360 374117596 378197082 513849690 513849690 458226870 524587440 524587440 439026960 373083906 373083906 348574674 348574674 247339900 247339900 389464076 389464076 171180550 371334462 403956070 471147236 471147236 196357088 158182300 241558612 241558612 374739140 476127630 491087020 491087020 502551917 502551917 530842618 530842618 1014399185 1014399185 802214845 802214845 717600889 613794891 805779778 805779778 538200480 666466802 666466802 75948856 27288384 589840 40945996 40945996 642641049 743204061 743204061 684461161 684461161 576767124 469983278 469983278 201401348 285761666 376648668 401087834 430281272 430281272 865828366 865828366 537215075 932523784 932523784 870402209 854815851 769712276 551151297 611990978 848417600 849924236 849924236 740368653 182501844 637660804 637660804 546565225 161666925 547212292 547212292 702587331 702587331 823272512 823272512 831108800 831108800 590930289 590930289 825062530 825062530 557922770 557922770 590534928 590534928 584210417 556683904 444470686 506729044 506729044 1008707809 1008707809 943543282 726822411 945025671 945025671 421976838 845199252 861929907 1030231485 1030231485 808665497 302740992 335573002 335573002 285289024 546472548 672297537 672297537 672174144 257579120 257579120 186458124 255082172 261477592 261477592 200597504 556702753 556702753 185731876 192021024 586420340 599134581 666370709 729862129 729862129 264705984 264705984 537096544 572593569 691013057 691013057 169323177 220570389 743490064 743490064 277990546 277990546 148428532 275040678 424187412 424187412 307402146 249705484 249705484 92001816 104343827 1053478321 1053478321 1058691313 1058691313 537969668 559170084 559170084 529006651 623879704 623879704 584641074 584641074 987282053 987282053 464497940 576862371 576862371 791957228 791957228 334021626 204580036 204580036 444885782 444885782 660003099 794192148 1058486847 1058486847 904188767 876683403 785335364 785335364 822214755 822214755 581024120 581024120 529081482 336448800 224903492 212648206 374120916 374120916 517694820 517694820 312574006 303271976 303271976 281252352 809661401 829088129 829088129 310637298 309905234 423363588 455739778 696140325 696140325 235845180 462815900 903147336 1053907411 1053907411 1069916285 1069916285 316460754 332696138 686952448 686952448 873925573 873925573 985626169 985626169 1047316947 1047316947 695410656 1005198045 1005198045 708105649 708105649 670147400 475273064 90487928 90487928 545178640 598012841 656093529 656093529 202170052 202170052 264370416 479234782 479234782 289638888 430923742 469313632 469313632 333734660 344211712 344211712 723800727 723800727 850395987 850395987 911986203 911986203 102977811 273609488 273609488 132588866 799752475 799752475 619242120 619390620 875846747 919962905 919962905 840834579 839211715 700521017 762419569 762419569 705956373 706177717 727112373 797156497 797156497 655925273 64046832 211878160 766327820 1021784063 1021784063 904857922 344988964 519181278 519181278 516163806 516163806 452861314 154302790 356784296 356784296 336199818 336199818 285873186 282656768 862061424 999429521 999429521 246092632 842677592 842677592 490542083 297482082 192148270 138080764 241209472 252989684 252989684 142009384 249454096 249454096 106577688 119329160 119329160 118747768 74612848 166440389 551589889 551589889 591608110 903416615 949242423 1044260550 1044260550 940892762 439892673 147506388 217232384 1050791967 1050791967 719724874 677515653 327390266 352969770 884323656 884323656 850319875 461812452 461812452 326369842 456837938 456837938 454475074 1067095117 1067095117 517608908 1052655233 1052655233 411409366 411409366 552242540 552242540 510690568 510690568 911361557 911361557 218194562 219226216 360777359 360777359 845321497 845338587 861049907 861049907 630330211 577447768 388604193 829568696 829568696 269578314 671662667 671662667 479741120 538988812 742694308 742694308 618667176 732434921 736236021 736236021 661121864 147901316 157258724 157258724 678990530 739727110 739727110 343050654 343050654 442336395 872459988 872459988 860406963 557565002 1019232310 1019232310 559049892 297219974 297219974 169891056 541167320 541167320 457247972 596320264 596320264 89336320 600757173 772337960 772337960 670063997 630484544 105120748 689977200 689977200 119164548 635495008 635495008 553750976 19337056 547105857 567417344 567417344 68495880 594724912 594724912 938942997 938942997 943831456 943831456 912266007 912266007 671526289 671526289 335943690 973215120 973215120 946080135 232643332 232643332 387823978 845045375 845045375 584003670 584003670 867007302 867007302 428579537 674003907 674003907 450227136 450227136 729940158 783471191 974130101 991304439 991304439 797972256 773980776 89135264 85874920 130580736 130580736 119933040 102893824 102893824 93463872 87766824 26142016 26142016 23594400 23594400 23594400 9962464 73728 10635264 10635264 11658048 13789440 386045200 386045200 105414808 310903066 565486819 565486819 659652712 1007512583 1007512583 1000097473 1000097473 952706099 899245129 827663753 943269428 943269428 867051945 867051945 866983063 609693309 738789920 738789920 676443940 325124360 390144186 390144186 306192698 304087314 176295952 812982848 812982848 760480141 922348106 922348106 16040152 104074008 382992600 382992600 371196186 369468962 383117016 383117016 441567414 441567414 54274224 371135912 407097900 503320072 503320072 341723414 240784156 310513746 588960323 588960323 536222756 1049370533 1049370533 167503040 256259906 912995733 912995733 527619158 913814743 913814743 408605200 407630982 383266054 28596992 28596992 22387680 772841609 772841609 222039436 538708533 706563872 706563872 711138228 711138228 700494132 277905938 569662801 569662801 411582755 597196808 664323705 664323705 720354560 720354560 695094656 633925392 175435877 536905732 557850753 811075488 811075488 809829930 373146850 775878950 775878950 507315743 385876026 437783350 437783350 577527632 577527632 813353489 813353489 52698051 60822256 60822256 28862064 16128960 19108160 19108160 143365504 149021124 149021124 66098132 185787220 440634179 709728725 734844117 734844117 390381720 901869017 901869017 739050663 364064082 575184934 945088523 945088523 910738587 837275538 544271771 334124344 671123941 671123941 173377456 192363444 192363444 194919824 194919824 48634320 55128896 139231840 146825088 146825088 255083400 255083400 171155172 185514132 185514132 172889136 34343952 133110688 133110688 110632248 110632248 145228945 674760453 724177285 724177285 705168405 734545504 734545504 226017380 226017380 800030135 952946460 952946460 991162935 991162935 702020279 697561701 628736049 805323277 805323277 641728665 641728665 504811672 522578272 867461370 986712718 986712718 947912775 402739360 430039183 604584015 1048422342 1048422342 1015721318 794171266 790327906 559019894 605638696 605638696 160715296 156238500 269375760 340312190 432704612 968989073 968989073 900457755 400567358 680040647 680040647 621020418 828070626 828070626 893501092 966473319 966473319 759616577 759616577 342242267 237048386 84833848 72206784 76820184 283115528 350224842 350224842 86606272 659351565 777847957 777847957 267331596 706740581 706740581 717365445 717365445 647445081 152243477 152243477 58001937 539759040 539759040 71631400 100672000 100672000 75048840 89207216 89207216 81373168 81373168 126939992 562583368 752749669 752749669 697876837 679460517 695718689 695718689 675874820 675874820 538076345 994713059 1045524684 1045524684 1010993832 604977721 908464910 908464910 528351241 359711658 359711658 338248624 471941658 471941658 287762488 287762488 150997076 177181908 177722532 194036340 194036340 42760708 257378041 689452069 689452069 156143289 119051392 803057772 803057772 625367769 265789516 796483740 796483740 719859525 719859525 685480124 685480124 650749137 650749137 764130753 764130753 781283720 781283720 683701081 683701081 750816809 750816809 610197129 648503680 664392833 664392833 328467778 328467778 373776178 373776178 733322090 1008520719 1008520719 621043251 730235628 730235628 710601872 710601872 160193124 224944968 769257000 769257000 997034353 997034353 627125798 627125798 808394884 808394884 846200211 1044427930 1044427930 373690636 238291740 197634524 265698300 265698300 231139996 223272108 201085784 25182240 18907232 25477152 25477152 171212928 298844220 298844220 169362624 275416760 275416760 202398416 247912668 247912668 243605992 779172316 779172316 503681885 503580694 708970516 708970516 730893328 730893328 672927237 772139037 772139037 797578365 797578365 330452509 308451456 308451456 39522496 543858176 740294477 740294477 693091987 797505148 797505148 386039874 435158502 1039085554 1039085554 128207072 128207072 127185984 35002896 924388238 924388238 820802052 807501298 39087144 626375104 718246163 992609540 992609540 459853908 459853908 181492692 564764961 564764961 170393824 127025048 127025048 69736904 126878800 250874016 250874016 182852052 184310412 184310412 108012868 108012868 49365360 44730624 12670336 12705984 38002752 48933896 73300632 78633480 111583552 111583552 758136352 758136352 679510844 665895801 213246273 719745472 719745472 250930880 223995564 623576900 623576900 605053226 520325295 1008082964 1008082964 708890690 839126150 839126150 1038929391 1038929391 910947462 910947462 887197664 887197664 704384997 600572692 239337680 638603501 638603501 720103336 756711996 756711996 265913340 265913340 229115388 644711721 644711721 784599261 784599261 735511370 1041646933 1049674335 1049674335 142870596 213549328 506184348 506184348 276510594 637671361 738288536 738288536 879313396 879313396 284100372 446110294 446110294 175717698 46512128 46512128 1008748680 1008748680 706750745 335921291 811935880 811935880 859403504 859403504 530068581 412299370 536875408 538494465 650899539 877707915 877707915 361889887 285218308 370807176 371360242 371360242 352040058 322624438 322624438 433694148 525262516 525262516 450564198 441488292 441488292 210797360 210797360 33817612 312875346 513849690 513849690 446816598 413409728 439026960 439026960 373083906 373083906 348574674 348574674 247339900 437424176 437424176 389464076 435303328 435303328 411115590 471147236 471147236 139495528 42606592 241558612 246392604 246392604 222651860 198451908 156562036 226117856 226117856 168036372 54548516 190976096 213697628 213697628 100671968 100671968 120590736 120590736 122962808 122962808 56922672 56922672 90774040 90774040 126264296 126264296 42992224 642641049 743204061 743204061 684461161 684461161 576767124 738214029 738214029 742572196 742572196 623134960 411490364 430281272 430281272 865828366 865828366 493804974 517375856 587788240 854815851 854815851 769712276 551151297 611990978 848417600 848417600 438505623 646615112 901984491 901984491 897185961 1020364163 1020364163 692373669 289441120 702587331 702587331 823272512 823272512 831108800 831108800 590930289 590930289 825062530 825062530 557922770 557922770 590534928 590534928 584210417 556683904 48534976 26038112 27041856 27041856 242549958 313338170 313338170 85142256 299170964 421976838 490498058 490498058 460947720 456168074 104673048 356822864 356822864 344573958 344573958 277366376 160433184 152093220 201362120 257579120 257579120 186458124 152174592 152174592 21152000 538375696 556702753 556702753 185731876 192021024 586420340 599134581 599134581 810287246 810287246 539267237 420366735 537096544 830551444 830551444 691013057 449594048 220570389 550838280 550838280 277990546 277990546 148428532 275040678 421041300 421041300 237115100 237115100 135451140 131324236 104343827 1053478321 1053478321 822998234 537969668 545800194 814269507 814269507 813938115 987366742 987366742 181028723 157360548 157360548 166274532 166274532 157344832 193598580 193598580 230880612 230880612 204580036 204580036 444885782 458627766 660003099 929444820 1058486847 1058486847 904188767 876683403 785335364 785335364 822214755 822214755 581024120 581024120 529081482 336448800 224903492 295746640 374120916 374120916 153354424 2099712 24123424 387029888 387029888 281252352 281252352 285248320 285248320 268509186 18556704 139800082 455739778 455739778 235845180 235845180 462815900 477311886 1053907411 1053907411 1069916285 1069916285 592070352 547233345 930275308 1004062455 1004062455 873925573 985626169 985626169 893177643 893177643 209130280 378483696 378483696 457388214 670147400 670147400 319313459 824232787 824232787 545178640 598012841 656093529 656093529 749132109 749132109 743989184 427499746 427499746 289638888 289638888 469313632 512264476 512264476 345894474 168641118 69470720 69470720 24254728 24040352 24643488 24774400 24774400 3806976 544630784 544630784 787310147 787310147 619242120 619390620 843671371 843671371 840834579 840834579 839211715 700521017 762419569 762419569 624290601 624290601 717874389 797156497 797156497 655925273 64046832 262742166 887365066 1021784063 1021784063 904857922 273942018 282386066 728552165 728552165 428908832 843432451 843432451 676376832 755635245 755635245 568923757 676444679 676444679 598114329 598114329 246092632 1019203656 1019203656 842677592 490542083 297482082 192148270 138080764 138080764 48006784 17041440 17041440 10813760 10813760 10750272 51380352 51380352 13651104 22579328 22579328 99575346 886572762 886572762 903416615 973755495 973755495 940892762 940892762 690432309 690432309 721582073 1050791967 1050791967 878972080 878972080 615321891 383822475 884323656 884323656 1049226302 1049226302 1034688858 285612066 58927122 86205100 257548548 1067095117 1067095117 517608908 1052655233 1052655233 572789472 572789472 812159351 940176935 940176935 537486855 537486855 357086211 88728744 88727720 88203432 106185264 303596184 874005054 1062207671 1062207671 758195735 576876994 388604193 829568696 829568696 80506526 508824656 508824656 37976068 158230928 742694308 742694308 682105064 674781741 250759728 233232876 90177960 90177960 20107912 4412544 678990530 739727110 739727110 513489148 343050654 446174380 872459988 872459988 860406963 557565002 1019232310 1019232310 559049892 147231728 169891056 169891056 541167320 541167320 510452124 489284910 344566852 541515812 600757173 713801312 713801312 670063997 630484544 105120748 44225508 119164548 119164548 554828224 554828224 21496577 25503840 25503840 567378496 567378496 605280389 687813729 687813729 938942997 938942997 943831456 943831456 912266007 912266007 705460232 705460232 323508257 973215120 973215120 946080135 353380368 918080815 918080815 845045375 845045375 1068823740 1068823740 1023192141 1023192141 428579537 674003907 674003907 450227136 450227136 28588898 704647690 802684949 802684949 797972256 797972256 773980776 85874920 85874920 22975024 119933040 119933040 102893824 106459448 106459448 87766824 84319552 119537976 119537976 46557864 90150816 90150816 87426048 891195778 891195778 876133858 817479370 817479370 900337697 900337697 848958899 848958899 570726018 811564801 811564801 554826040 469812232 469812232 411927114 353955818 454821022 454821022 430710874 430710874 237436976 237436976 34027536 51522080 51522080 98051016 325124360 390144186 390144186 306192698 304087314 71303578 812982848 1064580299 1064580299 922348106 922348106 942461672 942461672 655193878 572787347 1045774414 1045774414 9824772 105457280 105457280 38809272 186420412 186420412 226797092 226797092 404751168 404751168 388300998 310513746 588960323 588960323 536222756 1049370533 1049370533 100927496 256259906 912995733 912995733 527619158 913814743 913814743 436769794 407543858 345250074 254528738 515657812 515657812 420804888 474008842 672499595 672499595 344010010 344010010 428300087 582365793 582365793 110204987 563273664 644141345 647497305 647497305 664323705 664323705 720354560 720354560 633925392 633925392 221634752 536905732 557850753 675332241 809829930 809829930 825121799 825121799 822413078 725430069 573717540 437783350 437783350 371985690 1007305957 1007305957 813353489 539088081 184394372 64351312 162008244 178430000 178430000 186995716 186995716 174708452 168568064 203551000 442741300 442741300 136405616 33953808 151528468 151528468 134939668 476120088 476120088 486803502 575184934 945088523 945088523 910738587 837275538 544271771 341712522 671123941 671123941 253326204 255542412 255542412 156280884 2607360 2607360 7585664 7585664 41248624 194285168 194285168 134365668 199655536 199655536 173981908 39197204 192903584 192903584 168767028 158023648 158023648 157943440 157943440 6291840 18967296 18967296 18948384 23069088 558105224 558105224 198180084 952946460 952946460 991162935 991162935 702020279 697561701 74973864 905992320 905992320 450103179 432197862 976783374 1068031971 1068031971 925504827 947912775 947912775 154202144 167821581 421715001 1048422342 1048422342 1015721318 794171266 790327906 559019894 605638696 605638696 77731688 69599688 269375760 340312190 432704612 912898932 912898932 864651320 958521639 958521639 805307488 805307488 626660099 626660099 85682990 136216070 697729163 759616577 759616577 487466358 487466358 197721528 442622338 442622338 350220500 350220500 401094178 401094178 1045496575 1045496575 777847957 267331596 706740581 706740581 717365445 717365445 647445081 152243477 152243477 58001937 539759040 539759040 120988664 612966473 612966473 75048840 103481433 548091201 600705441 600705441 570499089 135104577 677299877 697876837 697876837 679460517 695718689 695718689 537135105 214384205 37826352 994713059 1045524684 1045524684 1010993832 866589940 685035079 685035079 388049640 509398686 509398686 437110412 455647538 455647538 287762488 287762488 150997076 177181908 177722532 194036340 222311528 222311528 257378041 689452069 689452069 156143289 118158361 803057772 803057772 625367769 625829408 796483740 796483740 719859525 719859525 574982037 556859440 154699140 25763844 11008320 32108992 66479616 66479616 39537328 39537328 662740288 662740288 626678953 626678953 664392833 664392833 652354816 652354816 581579041 581579041 733322090 1008520719 1008520719 764805752 704649559 632852774 633471382 633471382 487885562 332677665 210767880 778264664 997034353 997034353 808024194 541714117 808394884 808394884 846200211 1044427930 1044427930 373690636 187124144 187124144 255026368 255026368 178620624 249996552 249996552 241287362 50454576 140839984 159646076 184710124 298844220 432162548 480778130 480778130 408453940 202398416 247912668 247912668 208154308 186856064 761512324 761512324 583321809 708970516 708970516 541464705 520266163 562159984 772139037 772139037 797578365 797578365 330452509 308451456 308451456 31721792 32107009 740294477 740294477 693091987 797505148 1006768143 1006768143 1040660511 1040660511 395346014 395346014 914964847 914964847 670657459 924388238 924388238 541121212 986134743 986134743 241644491 290525218 992609540 992609540 459853908 459853908 35152912 452990360 452990360 356884018 369808410 369808410 287835930 298067410 324471280 324471280 182852052 184310412 184310412 108012868 108012868 49365360 44730624 33883536 12705984 43371776 46120208 46120208 12423952 111583552 111583552 649467216 679510844 679510844 665895801 213246273 787903324 787903324 250930880 261748360 629935980 629935980 1059174554 1059174554 1008082964 1008082964 755184185 708890690 331399410 159840338 147052772 910947462 910947462 887197664 887197664 704384997 600572692 239337680 239337680 131739896 178536272 266024700 266024700 224274476 193672308 193672308 111278396 107390196 107390196 648502364 735511370 735511370 1049674335 1049674335 142870596 854229917 854229917 900753259 1002013038 1002013038 738288536 738288536 879313396 879313396 257196260 257196260 55448784 55448784 279758083 279758083 1008748680 1008748680 1004535889 335921291 811935880 811935880 928496556 979710728 979710728 412299370 536875408 538494465 650899539 877707915 877707915 361889887 285218308 326844852 541160448 541160448 147644004 724380981 724380981 433694148 825889312 825889312 823780899 823780899 728413652 521032768 135938164 357060316 357060316 432683506 514020734 514020734 413409728 413409728 34551504 71882568 321819688 516538066 516538066 336724510 437424176 437424176 137372160 435303328 435303328 411115590 278008032 278008032 3005664 42606592 42606592 246392604 246392604 222651860 157190112 157190112 189532276 197694612 197694612 54548516 130320420 213697628 213697628 107822144 107822144 83926144 105319800 105319800 76925632 76925632 58011912 90774040 90774040 126264296 126264296 42992224 34963632 693610916 693610916 593515197 593515197 674371981 738214029 738214029 742572196 742572196 671762966 671762966 411490364 400657536 336671930 255924593 255924593 931978896 931978896 588111769 588111769 79700577 8687616 430665036 828613810 828613810 438505623 887103771 901984491 901984491 897185961 1020364163 1020364163 692373669 540040668 718833545 718833545 651312160 651312160 55907040 554382497 554382497 30127905 554548320 554548320 543238272 543238272 543228288 181248 660480 80305676 80305676 44249424 244428816 244428816 243632960 243632960 520241216 520241216 85142256 64359064 56887728 460947720 460947720 205924912 104673048 356822864 356822864 344573958 344573958 277366376 229836160 132194808 201362120 201362120 146082888 196947828 196947828 177152624 101962088 538375696 555917584 555917584 553832481 52843297 185863460 625350928 625350928 810287246 810287246 539267237 420366735 337905898 830551444 830551444 742718104 742718104 248989809 216024124 216024124 169173200 187713008 187713008 432929860 432929860 426894246 313599010 237115100 384718476 384718476 344649800 604510254 957226023 1028538411 1028538411 826327203 814269507 814269507 813938115 987366742 987366742 426346278 469262710 597272407 597272407 577758133 700586224 1072107965 1072107965 956851374 467898458 467898458 184552272 278921318 458627766 458627766 929444820 929444820 889491769 889491769 282569451 625087104 625087104 610631424 63032144 58597296 104663792 352940384 352940384 346740042 295746640 295746640 384299078 384299078 224684872 224684872 387029888 387029888 124197208 314894546 577134763 577134763 290567616 290567616 717234519 717234519 157054112 225230250 269748738 696081226 769654509 769654509 685107909 685107909 592070352 592070352 547233345 930275308 1004062455 1004062455 940970240 940970240 366117459 893177643 893177643 209130280 378483696 830646856 830646856 588943362 588943362 319313459 824232787 824232787 300538722 300538722 276052034 549359116 749132109 749132109 743989184 135005228 135005228 25691232 135920516 135920516 512264476 512264476 345894474 253306600 777476279 777476279 826093347 826093347 901865611 901865611 97471555 291613984 835178786 962266945 962266945 543262082 148152898 15654336 640740816 640740816 164388612 162264420 593642112 593642112 875004548 875004548 139491595 423629368 423629368 283574338 283574338 1060845812 1060845812 1058543253 887365066 887365066 457648477 336073862 407700096 407700096 728552165 728552165 312790290 843432451 843432451 676376832 755635245 755635245 568923757 676444679 676444679 664063103 664063103 1051498086 1051498086 1019203656 960055361 960055361 586204653 713468497 848668522 848668522 246698212 246698212 155133160 266417168 266417168 132223720 132223720 125896760 101715192 92801200 22579328 99575346 886572762 886572762 868750468 973755495 973755495 173019844 413933603 690432309 690432309 721582073 721582073 642945898 878972080 878972080 615321891 533562366 868218125 868218125 1049226302 1049226302 1034688858 425463462 425463462 386476172 232510013 487570972 970134136 1071768301 1071768301 335737735 572789472 572789472 812159351 940176935 940176935 537486855 1055169829 1055169829 389709158 389709158 928777235 928777235 873989643 874005054 1062207671 1062207671 758195735 138487561 1708032 612042120 612042120 1043614996 1043614996 680544343 681596504 681596504 797053053 797053053 728517085 728517085 549458188 798687860 798687860 159013300 159013300 27078240 21655136 31223948 513489148 513489148 312165572 446174380 500696064 500696064 298844192 405834342 405834342 151117860 253325292 660896737 660896737 456841014 480363930 510452124 510452124 489284910 947915107 949744417 949744417 713801312 713801312 141000048 196268916 196268916 190046580 188793012 86644008 607671968 607671968 24675105 25503840 25503840 567378496 567378496 695400745 695400745 792390756 792390756 102609249 270370512 579604492 781065309 1023525902 1023525902 941419303 356287277 295972422 295972422 456112156 470203692 918080815 918080815 498209582 751416512 1068823740 1068823740 1023192141 1023192141 873882496 654053337 453846818 288959542 365640724 427343905 1056240939 1056240939 743198900 277423112 277423112 94966048 78848000 27394600 693408844 770984260 770984260 679168864 679168864 538466944 160947776 92909984 119537976 119537976 76270184 90150816 90150816 87426048 891195778 891195778 876133858 817479370 817479370 900337697 900337697 848958899 848958899 570726018 811564801 811564801 554826040 153061826 243376024 297812062 321520810 533336248 533336248 260705033 573444641 656934533 656934533 755238957 755238957 738855488 739849004 42533137 547956033 682112449 686429637 686429637 627574744 208671800 1064580299 1064580299 495650181 448602716 942461672 942461672 655193878 572787347 1045774414 1045774414 535644732 535644732 298245294 298245294 218375916 218375916 403953174 403953174 404751168 404751168 388300998 162400660 165076634 208015866 526520932 526520932 501814912 396177018 396177018 173075044 75941602 17170432 358443672 436769794 436769794 437465622 437465622 277152556 515657812 515657812 420804888 474008842 672499595 672499595 344010010 344010010 428300087 582365793 654377599 1066410041 1066410041 644141345 647497305 647497305 571494240 36208649 61681008 616628096 616628096 583527144 221634752 130505348 545353744 675332241 677658776 677658776 1007918356 1042757171 1042757171 725430069 573717540 439136308 439136308 151016461 1007305957 1007305957 539088081 539088081 184394372 64351312 162008244 178430000 178430000 186995716 186995716 174708452 168568064 203551000 442741300 442741300 656484777 847259001 847259001 161291330 627183510 627183510 476120088 486803502 486803502 75822 0 461686144 526569282 526569282 341712522 289276328 253326204 253326204 255542412 255542412 156814496 156814496 34718868 114610936 114610936 41248624 194285168 194285168 134365668 199655536 199655536 173981908 160357476 192903584 192903584 168767028 158023648 158023648 227323729 733265925 733265925 683974885 703933413 703933413 685975552 678166533 763629101 763629101 345768042 322987155 322987155 768717366 768717366 810765833 829608867 905992320 905992320 450103179 457147008 976783374 1068031971 1068031971 925504827 772221005 772221005 672381271 655500082 655360777 577425664 567383640 567383640 455307728 455307728 522851646 522851646 253756418 135168 4199424 4199424 838656 18056320 912898932 912898932 864651320 958521639 958521639 805307488 939594821 939594821 721430391 721430391 248234135 697729163 697729163 636265612 914806322 914806322 197721528 442622338 442622338 350220500 350220500 558277152 558277152 1045496575 1045496575 556010142 121189064 118569156 212996940 298857416 428941926 814294532 814294532 36701730 320021010 320021010 120988664 120988664 612966473 612966473 109258072 109258072 548091201 600705441 600705441 570499089 569580160 569580160 554231840 554231840 7866240 19188481 554746401 734236871 734236871 652471243 1044705438 1044705438 930244976 866589940 934968522 934968522 894379099 523767074 523767074 509398686 437110412 455647538 455647538 507333462 529118458 529118458 339026572 494829185 699846605 699846605 222311528 84400196 84935208 593594880 699492849 699492849 250028496 250028496 78329160 625829408 625829408 196414985 231599388 231599388 660671129 681320716 767558793 767558793 683951448 23404896 66479616 66479616 25194905 664796793 664846080 664846080 626678953 626678953 545265728 545265728 652354816 652354816 581579041 581579041 302314055 735338101 764805752 764805752 1022096847 1022096847 867795159 633471382 731254592 731254592 430564710 778264664 778264664 808024194 808024194 506860051 442647070 442647070 415310022 415310022 510784206 510784206 411738048 101627312 255026368 255026368 48971584 249996552 249996552 241287362 50454576 273009664 273009664 184710124 1067582379 1067582379 480778130 871400551 871400551 187433016 212126028 212126028 554770977 554770977 777789073 777789073 1065752703 1065752703 738465997 909498382 909498382 538104321 244003932 634852605 634852605 673503828 772725789 790793504 790793504 31721792 31721952 620873193 620873193 71470690 463751025 1006768143 1006768143 1040660511 1040660511 902047288 395346014 914964847 914964847 670657459 670657459 586639968 629338732 986134743 986134743 381624979 757399380 757399380 193073268 505557232 505557232 493098542 540719907 540719907 356884018 369808410 369808410 287835930 298067410 324471280 324471280 42603600 42603600 182494208 182494208 129181528 129181528 109056592 80063880 107538632 107538632 73681936 44140560 35723264 35723264 61063281 649467216 757438040 757438040 730155100 730155100 787903324 787903324 142736652 261748360 629935980 629935980 1059174554 1059174554 838938891 755184185 755184185 436740400 602974082 715178325 715178325 175203009 176809044 193486880 193486880 43367576 257021760 257021760 75424828 13632192 67242144 93723240 93723240 101712128 103809816 103809816 103809816 138919273 733004661 754313837 754313837 718324437 479180900 1060380442 1060380442 1065769255 1065769255 900753259 1002013038 1002013038 503527232 355270276 1015884879 1015884879 1015884879 957304103 957304103 562212966 562212966 279758083 424526880 1004535889 1004535889 838860824 838860824 991153026 991153026 979710728 979710728 308416298 628273832 628273832 558084769 661125561 923165058 923165058 280023332 67272968 571184832 571184832 169030976 724380981 724380981 325582064 825889312 825889312 823780899 823780899 728413652 521032768 180748804 357060316 357060316 432683506 514020734 514020734 134807936 267076628 267076628 226541676 321819688 516538066 516538066 336724510 269883906 268609456 268609456 442413746 442413746 271352256 301443984 301443984 51089384 90856008 90856008 72690312 80886528 80886528 157190112 157190112 189532276 358884229 358884229 472957710 472957710 804441257 804441257 1023548249 1023548249 554023385 636975249 869088274 869088274 864477987 864477987 593614728 304022768 121752144 130108252 130108252 983635531 983635531 942418130 593515197 593515197 964171904 964171904 688996907 608350727 462690309 671762966 671762966 400657536 400657536 899698206 971031015 971031015 931978896 931978896 931766941 965452766 965452766 919966723 816833222 739894797 959563557 1007731215 1007731215 887103771 788348152 788348152 819038218 1012087642 1012087642 540040668 718833545 901190386 901190386 651312160 340264826 340264826 560366176 560366176 560124321 551711169 27736416 29483008 29483008 27547712 83919136 83919136 98397408 98397408 244428816 244428816 445018552 445018552 520241216 520241216 368069452 125705368 125705368 107370392 126245336 126245336 385277768 385277768 303709888 111421848 180041556 229836160 229836160 132194808 132194808 201425564 245558114 380591678 380591678 532380240 532380240 480117824 588359985 1066327098 1066327098 153617700 340262952 625350928 625350928 618924686 618924686 474252494 277539904 277539904 809519116 809519116 809743497 809743497 772419160 1068651600 1068651600 274979104 187713008 187713008 432929860 435791136 435791136 398960970 398960970 384718476 384718476 344649800 604510254 957226023 1028538411 1028538411 826327203 545901659 785812615 953629383 1015590981 1015590981 752387801 469262710 597272407 597272407 778619852 778619852 1072107965 1072107965 956851374 467898458 467898458 212037930 278921318 278921318 302016084 302016084 107354520 850802960 850802960 61286715 625087104 625087104 63032144 63032144 57856944 213651440 352940384 352940384 346740042 311014668 75518336 384299078 384299078 224684872 224684872 103923720 103923720 124197208 314894546 577134763 577134763 417290342 417290342 717234519 717234519 273365094 225230250 895883691 895883691 769654509 769654509 743765413 650572660 868356336 903138027 903138027 436870155 835191986 835191986 940970240 940970240 366117459 830608356 830608356 768633448 679882977 830646856 830646856 365894215 302662192 302662192 131371384 131371384 551715648 551715648 561566097 561566097 52229841 109620416 109620416 410068038 410068038 358405928 261230750 261230750 241788182 339787914 442240234 519644938 777476279 777476279 826093347 826093347 901865611 901865611 97471555 291613984 835178786 962266945 962266945 543262082 225546861 225546861 198933477 230814925 230814925 162264420 610396216 610396216 875004548 875004548 336134812 980557564 980557564 575098631 575098631 1060845812 1060845812 1058543253 921907220 477036557 693382784 693382784 407700096 407700096 61622336 62760304 62760304 864094708 864094708 269562369 171367188 171367188 170429444 775497234 1008730383 1008730383 664063103 1051498086 1051498086 444683085 960055361 968461733 968461733 935602342 935602342 848668522 458994888 246698212 155133160 266417168 266417168 132223720 132223720 125896760 101715192 92801200 551043265 551043265 297147234 321622674 325971584 438901425 438901425 173019844 42666580 42666580 34315264 34315264 12747584 12747584 106307788 568003341 568003341 1055296466 1055296466 999165848 264687748 349643878 478027358 478027358 425463462 466512440 466512440 315098322 970134136 1071768301 1071768301 426344501 559236048 701184164 761073772 761073772 526863756 526863756 1055169829 1055169829 537431899 389709158 928777235 928777235 885658827 885658827 643301522 388571136 599385635 599385635 568904776 554470473 819871819 1043614996 1043614996 680544343 681596504 681596504 797053053 797053053 728517085 728517085 1000210362 1000210362 798687860 749640061 894436011 894436011 601821851 546786505 373518063 960849060 962803988 962803988 405022208 405022208 193269094 405834342 405834342 194265952 253325292 660896737 660896737 456841014 456841014 367720973 480337224 480337224 947915107 949744417 949744417 186366977 186366977 141000048 196268916 196268916 190046580 188793012 86644008 614078048 614078048 24675105 568653920 568653920 566321345 566202789 695400745 695400745 792390756 792390756 601112448 984023494 984023494 972836752 1023525902 1023525902 941419303 356287277 295972422 295972422 456112156 470203692 470203692 218900812 858608694 858608694 751416512 138725508 456903136 873882496 873882496 654053337 313076363 887879115 887879115 840724490 1056240939 1056240939 743198900 85919795 329713191 1022102991 1022102991 910144473 740344077 770984260 770984260 679168864 679168864 538466944 160947776 93785320 92909984 83934888 76270184 73664904 79257608 79257608 95054912 95054912 95470440 95470440 84968616 84968616 88621608 88621608 5603424 592772346 592772346 309707428 309707428 153061826 243376024 297812062 321520810 533336248 533336248 260705033 573444641 656934533 656934533 755238957 755238957 738855488 739849004 42533137 547956033 682112449 686429637 686429637 627574744 871567368 929038779 929038779 803283453 898073349 1025734669 1025734669 473956430 473956430 413762626 413762626 535644732 535644732 298245294 298245294 300101704 300101704 403953174 403953174 202901004 387777120 387777120 162400660 1033112487 1033112487 526520932 898039717 898039717 396177018 396177018 1044696603 1044696603 359544062 553851857 553851857 422803202 437465622 437465622 277152556 128326008 82203176 374629152 392554938 392554938 322407066 302389266 336544236 336544236 100828232 654377599 1066410041 1066410041 600588489 679006332 679006332 575122208 575122208 558852096 616628096 616628096 583527144 152195088 25459236 579192864 587337777 677658776 932062208 1007918356 1042757171 1042757171 583933137 583933137 439136308 439136308 420227327 807641577 807641577 379966458 379966458 371399392 65120544 187828500 187828500 178981988 178981988 56716160 56716160 42091908 42091908 29889088 368382299 656484777 847259001 847259001 475189902 627183510 627183510 621647609 628494910 823173685 868540467 868540467 848680177 845834690 587925765 187645236 731222665 731222665 238338880 145302080 84224040 156814496 156814496 34718868 114610936 114610936 80084552 133712568 133712568 105171096 150509472 150509472 147453092 160357476 160357476 152443428 152443428 144707680 144707680 227323729 733265925 733265925 683974885 703933413 703933413 702142789 702142789 763629101 763629101 742656236 322987155 322987155 768717366 768717366 810765833 829608867 829608867 561793187 561793187 522649977 522649977 579771870 579771870 894616763 894616763 772221005 687921725 680837405 788579509 788579509 567383640 567383640 195678384 331871278 522851646 522851646 495548968 348989992 347959562 347959562 284400002 286988288 286988288 552755075 552755075 320938290 594154629 696852486 939594821 939594821 721430391 721430391 593358513 856569483 856569483 636265612 914806322 914806322 344854498 307041968 278467594 278467594 104186136 904885556 904885556 1015421007 1015421007 496115289 121189064 118569156 212996940 298857416 428941926 814294532 814294532 36701730 320021010 320021010 28126560 598543424 598543424 109127496 109258072 109258072 67122256 552678752 552678752 543562113 569580160 569580160 21372672 21372672 7866240 19188481 554746401 734236871 734236871 652471243 1044705438 1044705438 585419217 59064513 934968522 934968522 894379099 523767074 523767074 386246960 386246960 337690890 453298230 507333462 529118458 529118458 339026572 494829185 721600620 721600620 166284485 588849976 606602505 606602505 699492849 699492849 803026444 803026444 726087861 114805152 114805152 205606660 516425310 516425310 660671129 681320716 767558793 767558793 740901958 697165263 697165263 622567342 545000833 664796793 664846080 664846080 564228913 640148985 640148985 614995688 614995688 115414273 629855520 629855520 102760816 102760816 63583056 564126510 1022096847 1022096847 867795159 582984275 731254592 731254592 430564710 673409028 673409028 580810589 580810589 585201497 585201497 1011710272 1011710272 879597954 879597954 510784206 411738048 222101604 101627312 161299204 161299204 89790120 269113360 302828562 302828562 294615664 294615664 757207404 1067582379 1067582379 136845272 871400551 871400551 135795960 212126028 212126028 554770977 554770977 777789073 777789073 1065752703 1065752703 1067811028 1067811028 1054712900 678832271 678832271 675233541 634852605 735323163 772725789 790793504 790793504 27399648 64919616 64919616 541679648 558417057 559131841 559131841 550902465 327890034 902047288 902047288 119081195 127488065 564725353 636305723 636305723 488322606 629338732 889852971 889852971 1027093535 1027093535 757399380 193073268 505557232 505557232 493098542 540719907 540719907 118538808 100712472 101204992 101204992 33827840 142674432 142674432 156063148 240819812 240819812 206833288 129181528 129181528 109056592 80063880 107538632 130616320 130616320 52053600 52053600 35723264 91825184 211761473 757438040 757438040 730155100 730155100 537344000 537344000 25169920 25169920 238877056 251240992 254804796 254804796 197140608 58794596 436740400 436740400 602974082 715178325 715178325 529098775 529098775 588105284 1042026015 1042026015 828195084 257021760 186668656 49300516 255066904 255066904 240064924 743002153 743002153 597614128 597614128 671590424 733004661 754313837 754313837 718324437 704844804 1060380442 1060380442 1065769255 1065769255 489176460 489176460 456112646 456112646 355270276 1015884879 1015884879 1015884879 957304103 957304103 562212966 860088612 860088612 1030514982 1030514982 335544330 838860824 838860824 991153026 991153026 891093821 891093821 450706852 628273832 819427523 885050040 885050040 923165058 923165058 583376105 544087425 571184832 571184832 169030976 179832660 304480772 439753494 439753494 268585328 268585328 316191744 316191744 63741360 180748804 197401474 197401474 211835954 211835954 134807936 134807936 267076628 267076628 226541676 238579720 238579720 92941320 92941320 137006914 268609456 268609456 442413746 442413746 271352256 301443984 301443984 75518344 90856008 90856008 72690312 80886528 80886528 239953912 239953912 157360548 358884229 358884229 472957710 472957710 804441257 804441257 1023548249 1023548249 554023385 636975249 869088274 869088274 864477987 864477987 593614728 304022768 270296498 270296498 247567124 983635531 983635531 996694947 996694947 90967464 964171904 964171904 876708353 876708353 352325635 422330500 422330500 323115958 378161626 899698206 971031015 971031015 465619527 931766941 931766941 965452766 965452766 919966723 816833222 739894797 959563557 1007731215 1007731215 621889546 788348152 788348152 607599369 1012087642 1012087642 619163594 1033046528 1033046528 901190386 648165697 351015307 876973185 888273867 888273867 882703489 551711169 544073152 543896321 538045056 27547712 83919136 83919136 98397408 98397408 75216424 32537504 445018552 445018552 343015424 368069452 368069452 125705368 125705368 107370392 126245336 307185744 385277768 385277768 303709888 75946056 66010608 84395480 84395480 78153024 19949120 201425564 245558114 380591678 380591678 532380240 580875716 580875716 711416702 1066327098 1066327098 153753632 340262952 408945030 612107654 618924686 618924686 474252494 277539904 729350496 809519116 809519116 809743497 809743497 772419160 1068651600 1068651600 274979104 148751570 519103144 519103144 455397246 435791136 398960970 398960970 357665156 454107702 454107702 481399141 481399141 491852332 491852332 185147543 545901659 785812615 953629383 1015590981 1015590981 752387801 306202432 306202432 268509186 778619852 778619852 421644644 421644644 220960058 427868262 427868262 212037930 178432596 192673716 352066284 352066284 232132554 850802960 850802960 61286715 167867228 243916820 243916820 76154304 76154304 250106984 250106984 260646012 311014668 311014668 75518336 111300928 111300928 89129504 89129504 103923720 124814848 124814848 107480472 476064648 476064648 417290342 805570368 805570368 413763618 273365094 526783386 895883691 895883691 614488932 743765413 743765413 821162818 875469611 903138027 903138027 436870155 835191986 835191986 482871393 482871393 153802248 253383596 768633448 768633448 679882977 672709229 984864374 984864374 336515713 122819256 865096995 865096995 551715648 551715648 561566097 627432456 627432456 612213176 612213176 410068038 410068038 358405928 261230750 261230750 165057486 297844962 442240234 519644938 519644938 90515688 276253088 335583616 335583616 87366400 625250345 625250345 608038665 745752491 745752491 1023983362 1023983362 899011791 408444583 408444583 230814925 61730160 610396216 610396216 696254796 696254796 651305966 992162103 992162103 575098631 575098631 618600241 618600241 921907220 921907220 477036557 693382784 693382784 455942162 455942162 816485667 816485667 62760304 864094708 942500066 942500066 925108539 990124863 990124863 775497234 1008730383 1008730383 685904544 755013860 833932131 1008272277 1008272277 968461733 968461733 935602342 935602342 619238708 458994888 35687936 24383392 154831748 154831748 141748064 139458180 139458180 146756436 177082628 551043265 551043265 297147234 321622674 864742740 864742740 847986914 468495106 722236226 722236226 811635399 811635399 652478961 420466048 538265326 650191470 750257408 1055296466 1055296466 999165848 264687748 264687748 478027358 478027358 282073088 466512440 466512440 830928533 830928533 919151835 919151835 612914774 979479753 979479753 761073772 761073772 355020057 276188056 309312664 537431899 537431899 360301626 360301626 835374216 885658827 885658827 361239585 429575372 599385635 599385635 568904776 554470473 819871819 819871819 573199130 378426632 654368688 654368688 746458984 746458984 458506325 458506325 1000210362 1000210362 749640061 749640061 894436011 894436011 601821851 546786505 373518063 960849060 962803988 962803988 356457840 356457840 180501172 184086052 194265952 194265952 178241776 403059298 403059298 428824920 428824920 310451222 209973324 152444856 152444856 93508200 578431572 730017909 730017909 91500068 91500068 88837640 152084240 587646540 587646540 614078048 614078048 18534689 568653920 568653920 566321345 538029989 538029989 673832644 673832644 439078644 728885696 984023494 984023494 972836752 947073927 353584778 341357098 269812368 36838000 303827808 303827808 413071872 413071872 218900812 858608694 858608694 712886495 783407425 783407425 714597022 284393676 347305794 347305794 887879115 887879115 1000407152 1000407152 462107766 462107766 1068179074 1068179074 1022102991 1022102991 910144473 740344077 81403085 69470472 74590816 93782152 93782152 97117416 97117416 73972488 73972488 32984000 18438336 3262784 8458496 630482594 630482594 541360130 632169578 879357739 880330635 880330635 821870753 552688331 592772346 822790626 890442496 890442496 364135826 204063684 204063684 35260296 35260296 182239576 257344352 435457544 518147878 518147878 311460252 88835808 92304424 555365416 25165824 25165920 159384192 164627172 164627172 75563528 871567368 929038779 929038779 803283453 898073349 1025734669 1035258735 1035258735 560255135 365993227 207479386 206883468 103395220 40556468 139584132 459328308 459328308 256784702 461632852 461632852 486803502 486803502 446041076 1033112487 1033112487 484651470 898039717 898039717 29433920 29433920 1044696603 1044696603 359544062 553851857 553851857 145199248 164361444 424449168 424449168 404685564 404685564 397423448 134742640 880150445 880150445 511209588 511209588 373154716 342158856 370999805 370999805 538465888 808223786 808223786 679006332 575122208 575122208 560500992 560500992 254026037 152926384 152926384 59088468 579192864 587337777 587337777 932062208 932062208 917689179 797518116 935778555 935778555 209530764 420227327 435689160 488771886 488771886 832433763 946757351 946757351 883198539 1012106412 1012106412 386266722 386266722 307527310 617877708 753577901 753577901 634484748 310524000 333382194 333382194 475189902 475189902 329907021 621647609 621647609 628494910 889330176 902103083 902103083 848680177 845834690 587925765 476579214 731222665 731222665 238338880 145302080 84224040 155740160 155740160 70600108 69255944 69255944 80084552 80084552 11150720 142103300 142103300 190188336 190188336 188095092 188095092 159724320 159724320 40477988 193065040 193065040 146968576 63046336 15221824 33346304 33346304 702142789 702142789 630754505 742656236 812172675 812172675 756237666 781398217 781398217 1036810384 1036810384 956875815 561793187 561793187 522649977 522649977 579771870 579771870 894616763 894616763 687921725 687921725 680837405 788579509 788579509 553784425 550131136 163749616 421970064 432796902 495548968 495548968 348989992 347959562 347959562 284400002 286988288 286988288 86976192 81863112 61816176 355226820 952857278 952857278 676926151 525350053 573875616 593358513 856569483 856569483 420977798 420977798 407796262 344854498 307041968 278467594 278467594 40605041 904885556 904885556 767561024 407970438 205852843 760294077 760294077 294068453 770703744 770703744 238027123 430702971 566833713 803609085 803609085 616706711 598543424 598543424 598031073 60891504 52171041 589983521 589983521 552678752 558156176 558156176 595901537 596586528 596586528 186880 3967744 3967744 1887744 376124432 376124432 935331084 935331084 749013853 618191758 618191758 446691191 399599258 505438490 505438490 386246960 386246960 337690890 186985994 186172980 185443348 169802028 224727080 224727080 721600620 721600620 1055881110 1055881110 606602505 606602505 1001671746 1001671746 803026444 803026444 726087861 898409728 898409728 848110009 848110009 516425310 579602704 579602704 603981058 740901958 740901958 697165263 697165263 622567342 545000833 569303040 569303040 103348233 564228913 640148985 640148985 614995688 614995688 115414273 629855520 629855520 832619585 832619585 388935194 560283247 693158565 693158565 437741332 437741332 365353194 560614538 560614538 673409028 673409028 580810589 580810589 585201497 585201497 1011710272 1011710272 879597954 879597954 207773700 222101604 222101604 87088428 206424612 206424612 79330178 269113360 302828562 302828562 294615664 294615664 757207404 757207404 413696730 651231634 651231634 394450968 394450968 106819224 119609072 119609072 416593680 873331862 873331862 207338087 411428922 1067811028 1067811028 1054712900 678832271 678832271 720319513 720319513 735323163 735323163 735920448 735920448 126513920 126513920 558053857 641027450 903620779 903620779 559131841 896794986 933544621 933544621 584601206 932746664 932746664 505659938 67175056 67175056 46736592 710451536 710451536 679874770 1027093535 1027093535 954798715 954798715 909454107 252318736 433980620 433980620 198843622 508694684 508694684 437391894 410256194 410256194 470813120 470813120 156063148 240819812 240819812 206833288 35803184 36176528 36176528 22750624 17642976 130616320 130616320 52053600 52053600 117794000 117794000 789113208 789113208 69415176 69415176 34927336 537344000 537344000 169345024 169345024 43127744 251240992 251240992 197140608 197140608 58794596 701243685 701243685 833825024 979444119 1036011578 1036011578 529098775 588105284 1042026015 1042026015 828195084 254626956 186668656 49300516 255066904 255066904 637539344 743002153 743002153 597614128 597614128 671590424 671590424 235909916 571024401 756814080 814050409 814050409 1058182014 1058182014 1023545455 354007688 354007688 222541724 222541724 136893740 406199046 414661378 414661378 280369986 298434592 318923874 860088612 860088612 1030514982 1030514982 302812267 600050767 600050767 754328946 754328946 556333733 559858071 676207749 676207749 819427523 885050040 885050040 651264665 583376105 583376105 738689226 738689226 281098356 105160752 661386681 908501121 908501121 589563954 836492755 850470481 864708304 864708304 323357568 46350560 39513808 269090826 269090826 69219848 287386954 287386954 84104200 25288616 16592832 330337084 471207512 471207512 453034038 479046776 479046776 129923656 178034192 195874164 560087105 813728160 813728160 805441539 327172530 843878688 843878688 543039105 286756387 975538228 975538228 940698020 312492080 312492080 52564272 136450128 136450128 16908868 23068928 27923392 27923392 33164608 33164608 34670640 34670640 44443856 44443856 107055672 270296498 270296498 247567124 404758538 829851063 996694947 996694947 745203961 549712065 537944203 876708353 876708353 743441025 843710576 843710576 249265624 249265624 183481956 434570282 434570282 927895600 927895600 917072206 652728784 100753088 271654986 271654986 6427008 6427008 2101376 0 0 0 0 735855572 781112712 781112712 619163594 1033046528 1033046528 546914808 51380784 351015307 876973185 888273867 888273867 882703489 544073152 544073152 543896321 538045056 3376256 72913280 72913280 224043408 237203644 237203644 115501316 7735872 4196488 343015424 615254335 615254335 678205832 824461498 824461498 103018776 307185744 307185744 566243465 629356744 629356744 784115212 784115212 259704760 259704760 111224348 218268812 218268812 40935668 164136320 164136320 580875716 580875716 711416702 711416702 194403381 153753632 585893958 979895703 979895703 988578199 988578199 944397527 479198214 729350496 990387276 990387276 801585405 801585405 252105200 337105568 337105568 303413322 303413322 519103144 519103144 455397246 256387518 218219024 242287092 357665156 454107702 492144541 492144541 457917343 568366706 780182259 780182259 734085256 33818624 33818624 33818624 615524932 615524932 143999821 1098244 235962880 235962880 655673021 655673021 474773718 725813379 1013973262 1013973262 948061011 943062901 943062901 942785287 429327966 429327966 1049985283 1049985283 1033052196 1033052196 975293229 846755779 846755779 646047665 585295592 462337360 462337360 294785634 168116400 339739668 453542280 453542280 463487128 463487128 343950456 332669954 332669954 131935952 182045352 365785172 832505122 832505122 805570368 23142816 23142816 613467896 613467896 614488932 614488932 697069288 940427321 1029574614 1029574614 875469611 876694336 888531915 976521799 976521799 1065681367 1065681367 968006790 1058705448 1058705448 847905241 252461596 252461596 984864374 984864374 336515713 308859944 865096995 865096995 307340466 307340466 328865818 627432456 627432456 612213176 612213176 122600136 291946528 291946528 81414474 338057888 338057888 71690376 73761024 73761024 84967456 84967456 68207112 16875520 85037664 85037664 625250345 625250345 623988096 745752491 745752491 1023983362 1023983362 899011791 488187438 408444583 206215041 661527696 661527696 655232310 696254796 696254796 651305966 992162103 992162103 704891805 704891805 417841937 315970188 963082118 963082118 474026068 194677780 152643108 455942162 455942162 816485667 816485667 18615840 597919409 942500066 942500066 925108539 990124863 990124863 701415545 545073821 685904544 685904544 755013860 833932131 1008272277 1008272277 668856057 119020289 15987648 13211392 12735376 34808384 34808384 12632192 154831748 154831748 141748064 139458180 139458180 146756436 177082628 177082628 171822852 171822852 145335184 864742740 864742740 847986914 468495106 722236226 722236226 811635399 811635399 864690296 864690296 538265326 650191470 750257408 750257408 256035586 422777594 422777594 521278014 521278014 282073088 282073088 474227822 517810232 830928533 830928533 919151835 919151835 612914774 979479753 979479753 223690022 253952796 276188056 276188056 309312664 309312664 221488294 234748704 291063338 656362024 656362024 307713040 307713040 429575372 429575372 321195602 369109568 369109568 410332038 410332038 436733650 436733650 303044104 187304436 921567928 921567928 974398138 974398138 181267668 1044521672 1044521672 107482268 136579332 239863192 239863192 205521036 142757976 47583828 353985622 353985622 356457840 356457840 333185408 282190464 282190464 388685922 388685922 808976699 808976699 428824920 644415953 644415953 378061914 693730408 888202441 888202441 675141332 905578235 905578235 249418197 191938548 191938548 576620813 587646540 587646540 604504712 604504712 563136129 610582696 610582696 32031169 11567104 5366400 13683456 179143684 179143684 728885696 728885696 439553795 705641493 842981407 842981407 508045090 269812368 36838000 403866208 403866208 413071872 820567949 820567949 745131914 745131914 743928021 783407425 783407425 714597022 617637837 380810627 347305794 44579696 143069520 1000407152 1000407152 462107766 462107766 1068179074 1068179074 715596800 689838400 689838400 699682956 770054532 770054532 756952392 756952392 633415848 412996804 336090884 356597156 499599886 499599886 497818446 497818446 405840454 630482594 630482594 853222772 853222772 879357739 880330635 880330635 821870753 552688331 351163818 822790626 890442496 890442496 364135826 104673048 22613284 35260296 507809872 507809872 482793678 435457544 518147878 518147878 311460252 48812480 68825096 555365416 722406741 729745916 729745916 742665225 742665225 618544836 295440161 596641641 596641641 468718171 806629929 806629929 1035258735 1035258735 560255135 365993227 182461620 46475472 34114656 40556468 139584132 459328308 459328308 410214672 461632852 461632852 486803502 486803502 446041076 512789240 512789240 402678760 408772992 408772992 504629950 504629950 214718802 331334636 507111198 507111198 145199248 420136342 468763638 468763638 424449168 404685564 404685564 397423448 134742640 880150445 880150445 645161012 645161012 373154716 405275910 405275910 370999805 227541550 808223786 808223786 67766560 537617344 537617344 560500992 560500992 151073713 152926384 715225201 715225201 104147240 572889857 610308368 610308368 795821837 797518116 797518116 935778555 935778555 174377364 881382728 881382728 488771886 617450638 832433763 946757351 946757351 883198539 1012106412 1012106412 386266722 386266722 307527310 617877708 753577901 753577901 634484748 177865540 168560704 168560704 171443988 171443988 145103172 481494024 830084208 830084208 889330176 902103083 902103083 294204384 463349850 476579214 476579214 336478132 198320952 254804796 254804796 201367812 162547500 162547500 182518620 182518620 79209772 46973640 232654728 232654728 166463680 166463680 190188336 233942080 233942080 207667404 159724320 159724320 119060592 193065040 193065040 146968576 63046336 19940640 19940640 20567040 20567040 624197928 624197928 537660417 812172675 812172675 756237666 781398217 781398217 1036810384 1036810384 956875815 672535828 647236184 613096200 613096200 950010961 950010961 337947406 428130560 428130560 730862304 730862304 206255244 260767984 415371784 415371784 163749616 421970064 421970064 182921706 268515432 268515432 67380544 33492736 91033572 207589068 503494638 503494638 438676762 61816176 822149157 952857278 952857278 726324405 525350053 877047936 892726059 892726059 860707745 1058162319 1058162319 539249434 120451968 120451968 85078520 119353008 119353008 326971314 382003048 407970438 994546192 994546192 760294077 760294077 541125365 927990524 927990524 238027123 430702971 566833713 803609085 803609085 616706711 584320224 598031073 598031073 546708033 52171041 589983521 602038272 602038272 600049905 558156176 595901537 596586528 596586528 31087680 31087680 26863136 22911618 376124432 376124432 935331084 935331084 749013853 618191758 729691504 729691504 399599258 401688576 401688576 371755008 532733774 532733774 455791926 455791926 533912266 533912266 252466004 254064563 254064563 300850520 1057351147 1057351147 1066134961 1066134961 1001671746 1001671746 746985297 244392540 532244552 898409728 898409728 848110009 848110009 737874040 634272971 855901261 855901261 677397784 40110480 40110480 58042112 58042112 55364784 724430372 724430372 693656577 693656577 35076624 51675248 60602576 60602576 48124256 374305424 374305424 832619585 832619585 603982848 603982848 560283247 772166867 772166867 427819110 365353194 561766561 561766561 551551425 285382894 524619378 524619378 349008896 776492126 776492126 403516422 482030982 484257486 484257486 409932616 157001608 72937508 206424612 206424612 278369192 344771450 344771450 119758818 83467142 146093852 460325816 1011876765 1011876765 651231634 651231634 640679943 493888686 106819224 121800781 734451957 734451957 873331862 873331862 813778412 813778412 661390457 661390457 536941855 536941855 138619904 720319513 720319513 671410176 341052042 341052042 303089816 126513920 126513920 558053857 641027450 903620779 903620779 346250568 896794986 933544621 933544621 584601206 932746664 932746664 849453139 1062331111 1062331111 1014169747 1014169747 926435118 753451144 682100037 879836972 954798715 954798715 909454107 252318736 433980620 433980620 198843622 508694684 508694684 437391894 410256194 410256194 470813120 470813120 73664904 85250688 85250688 122357360 122357360 92800104 83893920 86582568 112011048 119574528 119574528 74469768 84668952 238457204 238457204 789113208 789113208 759760121 550053057 25177469 50540592 50540592 169345024 169345024 245887248 598944772 740329337 740329337 679530061 679530061 701243685 701243685 833825024 979444119 1036011578 1036011578 899752299 864338232 864338232 38603032 319937112 319937112 315612930 94426954 281193314 281193314 860756082 860756082 304285089 228540012 257625104 257625104 223820460 35660928 45952848 813789040 814050409 814050409 1058182014 1058182014 1023545455 688982872 528851327 412049719 835635393 835635393 695022566 672860165 672860165 431758753 431758753 599982180 843085284 956309813 956309813 172510640 679873772 679873772 600050767 754328946 754328946 235329564 559858071 676207749 676207749 168294420 585279981 618709473 618709473 446407642 546646593 738689226 738689226 281098356 105160752 661386681 908501121 908501121 589563954 836492755 850470481 864708304 864708304 323357568 31376064 31376064 269090826 269090826 93184776 287386954 287386954 51310704 51310704 179015069 551809473 729146793 729146793 750815385 750815385 479046776 173014164 254456428 704007108 704007108 813728160 813728160 805441539 327172530 843878688 843878688 543039105 286756387 975538228 975538228 940698020 520422259 520422259 464943519 157600164 807985445 807985445 682222917 867548657 867548657 939408818 939408818 836873155 867200592 867200592 566676040 906495003 906495003 662066170 268122108 268122108 692437096 692437096 745203961 745203961 806425088 806425088 319881350 542114433 743441025 843710576 843710576 197350720 131352848 93604096 434570282 434570282 927895600 927895600 652728784 652728784 254160012 904489323 904489323 970603051 1025318819 1025318819 756023962 756023962 551696343 431362934 735855572 735855572 568117322 505026078 505026078 464838448 315098810 369373824 369373824 279916162 275387778 275472648 275472648 70701056 70701056 3855232 3855232 2383488 83099968 83099968 224043408 267426748 267426748 115501316 493906552 493906552 771168989 981539687 981539687 678205832 824461498 824461498 71457072 342061522 342061522 566243465 629356744 629356744 845214888 845214888 572748105 287551856 257950000 218268812 218268812 412284234 412284234 513853284 513853284 513669684 506936094 369853498 369853498 194173296 585893958 979895703 979895703 988578199 988578199 944397527 479198214 925604994 990387276 990387276 801585405 812967487 812967487 822230549 822230549 303413322 1024794685 1024794685 1044460046 1044460046 891469362 522264894 522264894 463151110 463151110 492144541 492144541 457917343 608272498 935452923 935452923 734085256 1029110876 1029110876 681344536 681344536 378086490 378086490 103884362 235962880 235962880 805644900 805644900 474773718 725813379 1013973262 1013973262 948061011 943062901 943062901 942785287 429327966 429327966 1049985283 1049985283 1033052196 1033052196 975293229 846755779 846755779 646047665 585295592 462337360 462337360 352035850 352035850 339739668 453542280 453542280 463487128 463487128 343950456 332669954 332669954 131935952 182045352 365785172 958540390 982823767 982823767 23142816 691625604 691625604 613467896 560165496 73264776 697069288 940427321 1029574614 1029574614 349985634 876694336 888531915 976521799 976521799 1065681367 1065681367 968006790 1058705448 1058705448 847905241 252461596 255742192 310904798 310904798 308859944 308859944 91492442 53478192 48664272 14470848 126341648 126341648 93661800 101970456 101970456 6331648 6331648 873110475 873110475 922274048 922274048 567024865 877676033 877676033 821396394 569409963 873537536 873537536 820011137 630366825 630366825 623988096 623988096 624249641 624249641 621855273 403091499 488187438 488187438 869545426 1028396769 1028396769 897323275 897323275 764282456 764282456 660018745 660018745 744706373 814010659 814010659 629180985 1070861055 1070861055 963082118 872939729 872939729 52121156 55450272 55450272 21235872 21235872 10227264 566103604 725491477 725491477 715070725 697252965 701415545 701415545 645657221 645657221 566085814 566085814 824780067 824780067 609748617 609748617 309584781 978958478 978958478 748033827 748033827 1051845471 1051845471 934298407 686585460 509031692 509031692 489550976 511951476 511951476 867805121 867805121 390622882 262286107 741640975 741640975 245028444 245028444 567616688 697697896 697697896 185209884 864690296 864690296 200813804 770967073 801113072 801113072 780714363 724159744 422777594 521278014 521278014 489838874 239243790 474227822 517810232 517810232 331998450 331998450 274310308 147333648 369895856 563945912 633605955 633605955 729665225 1043196632 1043196632 1017497766 1017497766 701238501 767575282 767575282 926961682 926961682 579207170 329892048 329892048 321195602 321195602 304155284 410332038 410332038 436733650 436733650 395314648 187304436 921567928 921567928 974398138 974398138 311088178 1044521672 1044521672 935902042 935902042 918247867 796133551 636596825 276441259 602189778 637322770 637322770 73992736 333185408 333185408 282190464 282190464 388685922 388685922 808976699 808976699 220726560 644415953 644415953 378061914 693730408 888202441 888202441 675141332 905578235 905578235 249418197 191938548 202146448 576620813 576620813 554221760 604504712 604504712 563136129 610582696 610582696 624355816 624355816 568143585 568143585 15329328 36300048 167964432 705046401 705046401 705641493 842981407 842981407 508045090 394609024 262469830 403866208 403866208 335616168 820567949 820567949 347380232 743928021 743928021 608317062 608317062 617637837 617637837 380810627 44579696 44579696 143069520 734176152 749918589 782760285 782760285 913171818 913171818 715596800 583247488 585241249 699682956 770054532 770054532 756952392 756952392 633415848 902973957 902973957 475269774 889862501 889862501 497818446 497818446 405840454 920893509 920893509 853222772 853222772 761819784 28303202 337121064 337121064 319357818 321266266 387192998 506628328 530482612 530482612 103521100 516850704 516850704 507809872 507809872 482793678 408174680 408174680 245664198 132516312 132516312 125968160 622534720 722406741 729745916 729745916 784608345 784608345 618544836 295440161 596641641 596641641 809574658 809574658 1009426699 1009426699 813485955 743230371 531155529 207043212 226586468 226586468 141292932 23594400 300071232 300071232 410214672 499293488 518835678 518835678 426006512 423237342 512789240 512789240 402678760 402678760 363855876 504629950 504629950 214718802 331334636 507111198 507111198 57452592 420136342 468763638 468763638 278612034 187698706 71368712 103376912 103376912 429977290 429977290 645161012 645161012 303662677 405275910 405275910 587504720 587504720 629834208 629834208 71438472 537617344 687976768 687976768 151073713 151073713 121676805 715225201 715225201 639934688 639934688 610308368 641715952 795821837 795821837 999955671 999955671 610489332 610489332 881382728 881382728 970433979 970433979 617450638 904390538 904390538 193308883 603819384 603819384 590122753 590122753 589564209 159650564 220110850 412441511 1051507460 1051507460 168560704 168560704 171443988 171443988 145103172 145103172 830084208 830084208 841169818 922980886 922980886 344085256 344085256 224100442 355127832 428953688 428953688 254804796 254804796 201367812 162547500 162547500 182518620 198719264 198719264 109363816 232654728 232654728 201333188 186516648 153620592 233942080 233942080 207667404 156892640 156892640 119060592 119060592 60148312 36147552 36147552 19940640 19940640 20567040 543847873 624197928 624197928 765462304 765462304 748160589 741867597 892375613 892375613 830098816 1014651795 1014651795 672535828 714394197 740790861 740790861 950010961 950010961 337947406 428130560 428130560 730862304 730862304 654385209 654385209 751436014 751436014 72537656 121803276 202526904 202526904 268515432 268515432 77893570 33492736 91033572 344544266 503494638 503494638 521683006 521683006 822149157 822149157 726324405 726324405 516774460 877047936 892726059 892726059 860707745 1058162319 1058162319 539249434 348699170 394813778 394813778 312575098 333999977 364305258 471992738 471992738 994546192 994546192 840010492 840010492 856686616 927990524 927990524 136315946 352846084 494084430 1054903788 1054903788 564768640 564768640 43233568 546708033 546708033 36706560 59959312 602038272 602038272 600049905 562504353 58943521 37888512 37888512 31087680 31087680 548981845 673877269 673877269 863187891 863187891 419474848 527442203 1048387471 1048387471 794138649 794138649 401688576 401688576 371755008 532733774 532733774 455791926 455791926 533912266 533912266 252466004 254064563 893166840 893166840 1057351147 1057351147 1066134961 1066134961 807833873 807833873 94295664 94297704 222132280 222132280 604115993 814222600 814222600 737874040 634272971 885632197 885632197 786483346 474802588 686047327 771845642 771845642 707174673 724430372 724430372 693656577 693656577 564413648 566515968 566515968 49516736 49516736 374305424 374305424 105243618 307309016 603982848 603982848 520492096 772166867 772166867 427819110 181932466 561766561 561766561 35690160 557388768 557388768 555345441 383722334 776492126 776492126 403516422 482030982 484257486 484257486 409932616 104227792 104227792 113576824 113576824 278369192 344771450 396588618 396588618 89126886 447862556 465809800 1011876765 1011876765 936969860 936969860 640679943 493888686 544355234 544355234 734451957 734451957 1017377103 1017377103 813778412 813778412 661390457 661390457 536941855 714482348 714482348 599407333 671410176 671410176 341052042 341052042 303089816 54305280 71123456 71123456 36070488 43400208 74462528 346250568 346250568 44601776 116406352 116406352 504765266 849389963 849453139 1062331111 1062331111 1014169747 1014169747 926435118 753451144 682100037 1026738999 1026738999 951899951 909850395 350819025 37871760 8470736 4980864 138674432 140509572 140509572 29622304 29622304 113287688 152197800 152197800 144382320 246290164 246290164 122357360 92800104 83893920 86582568 112011048 112011048 68361552 74469768 162987408 238457204 238457204 709201205 759760121 759760121 583324444 583324444 626201576 626201576 578833601 578833601 576907025 695967990 826665123 826665123 679530061 959073606 959073606 580324436 899682572 899682572 958468142 958468142 899752299 864338232 864338232 361329712 361329712 319937112 349761960 355953578 355953578 281193314 860756082 860756082 598420173 656150136 656150136 257625104 738883180 738883180 741219597 813789040 831754508 831754508 790813197 974441047 974441047 688982872 987736272 987736272 835635393 835635393 695022566 672860165 672860165 549793476 457949216 599982180 843085284 956309813 956309813 104978650 679873772 679873772 459670786 407508102 292029858 316955175 446323827 446323827 260452468 260452468 253330298 268102267 446407642 446407642 164762340 359706454 359706454 148111364 88964048 180401580 592358048 592358048 24118176 24118176 39920016 53801296 60954800 60954800 58837312 31376064 22546080 29912544 93184776 93184776 10822016 51310704 51310704 179015069 551809473 729146793 729146793 1035149954 1035149954 85436984 386135054 386135054 704007108 704007108 1007714788 1007714788 230724555 67244040 67289088 67289088 424083892 812200002 812200002 247533684 247533684 520422259 520422259 464943519 201331216 807985445 807985445 682222917 867548657 867548657 939408818 939408818 836873155 867200592 867200592 566676040 906495003 906495003 662066170 268122108 465668276 843432030 843432030 883886395 883886395 843224529 843224529 1049170106 1049170106 917189225 509149976 509149976 353319978 386998842 688656398 842372404 842372404 872418340 872418340 1042218518 1042218518 676964076 904489323 904489323 970603051 1025318819 1025318819 756023962 756023962 807144963 807144963 979010211 995150909 995150909 643972416 643972416 464838448 384051568 384051568 369373824 279916162 275387778 275472648 275472648 70701056 70701056 24812960 23070592 6427264 83099968 83099968 212028176 267426748 267426748 247583440 493906552 493906552 771168989 981539687 981539687 172655908 172655908 153638036 71457072 342061522 342061522 303970498 579485816 621466665 845214888 845214888 572748105 287551856 257950000 188310332 181559588 412284234 412284234 513853284 789221836 789221836 713142465 369853498 369853498 908345672 908345672 382504714 203688204 166072788 769132104 965265905 965265905 925604994 925604994 809764995 450288282 812967487 999787066 999787066 822230549 1008581228 1024794685 1024794685 1044460046 1044460046 891469362 522264894 522264894 463151110 463151110 457335780 924541306 924541306 650793427 935452923 935452923 750919929 1029110876 1029110876 681344536 681344536 740308655 740308655 231417610 204014596 673565447 805644900 805644900 799338811 799338811 765881471 369759258 725033834 725033834 680266821 523581506 523581506 498673518 278412622 479149134 479149134 346230020 237365532 134697240 67707912 76506560 76506560 15285320 345642816 352035850 352035850 217276722 52429828 92800104 105448640 105448640 77168712 77168712 84967472 109546072 109546072 825737540 966212199 982823767 982823767 422188326 903910132 903910132 603145579 479917745 107090328 220577936 906306680 1000756184 1000756184 880384335 620854483 641934193 641934193 1031866478 1031866478 884349771 884349771 440717958 983200214 983200214 343022494 343022494 255742192 254989244 303827544 303827544 288615720 275911554 454144512 486996000 486996000 416563862 277187656 178470640 101970456 96734848 656458041 873110475 873110475 922274048 922274048 567024865 877676033 877676033 821396394 569409963 873537536 873537536 820011137 630366825 630366825 588493361 70357280 59890160 77740258 943901359 943901359 858919731 858919731 869545426 1028396769 1028396769 897323275 897323275 846471468 968496999 968496999 694294127 744706373 814010659 814010659 629180985 1070861055 1070861055 760666797 872939729 872939729 45492224 45298512 26869760 21235872 43851856 43851856 43065872 43065872 866515656 866515656 371979544 530817384 530817384 645657221 645657221 566085814 566085814 824780067 824780067 609748617 609748617 309584781 978958478 978958478 748033827 748033827 1051845471 1051845471 934298407 686585460 509031692 509031692 489550976 511951476 511951476 867805121 867805121 390622882 789572450 789572450 741640975 245028444 245028444 567616688 567616688 55126753 0 594086419 594086419 326640944 770967073 801113072 801113072 957104704 957104704 473854542 473854542 489838874 489838874 208440236 208440236 315026641 592784535 713691827 956656129 956656129 826053137 1043045867 1043045867 633605955 633605955 729665225 1043196632 1043196632 1017497766 1017497766 701238501 767575282 771796747 926961682 926961682 579207170 329892048 329892048 155971804 155971804 748890941 748890941 664717246 664717246 1072239172 1072239172 508561220 484043080 765979018 765979018 882250256 882250256 874253931 491159079 935902042 935902042 918247867 796133551 636596825 276441259 602189778 637322770 637322770 203688204 294711336 295634176 446207602 446207602 455835680 455835680 318951474 318951474 203559180 472794382 472794382 436585814 436585814 379500552 471662950 488142090 488142090 95502984 153964688 153964688 202146448 222838936 222838936 554221760 554221760 84938752 25350240 76064928 76064928 624355816 624355816 568143585 568143585 549499936 48760272 167964432 705046401 705046401 527109346 248437980 475591746 475591746 394609024 323863748 298855940 335616168 361588262 361588262 347130632 347380232 474580368 474580368 613424832 916943744 916943744 312137298 516560094 869413069 890977414 896477142 896477142 749918589 975798365 975798365 913171818 913171818 669273229 583247488 585241249 680985128 680985128 90251688 90251688 420758694 420758694 902973957 902973957 475269774 889862501 889862501 93922648 93922648 10177676 920893509 920893509 553697404 761819784 761819784 49138240 49138240 33480672 19698368 124852722 371714950 449128854 530482612 530482612 327515024 516850704 516850704 474795150 265603292 222879597 702810597 1019569125 1019569125 477571504 637584385 637584385 622534720 134217728 719075484 719075484 784608345 784608345 583415885 268713055 279388122 279388122 809574658 809574658 1009426699 1009426699 813485955 743230371 531155529 503316510 503316510 444225484 271788806 271788806 316416152 316416152 309157428 499293488 518835678 519705134 519705134 423237342 313525074 78680104 184598820 184598820 273603554 273603554 116999552 115868378 109542680 116116856 116116856 57452592 98421122 383068890 383068890 278612034 69940802 69940802 83559296 83559296 200876344 200876344 688201828 688201828 194858532 194858532 151874676 587504720 596082768 629834208 727514284 727514284 614844800 687976768 749013409 749013409 680001680 113271821 555077640 555077640 639934688 639934688 105359152 641715952 641715952 636362217 999955671 999955671 610489332 610489332 793564322 793564322 970433979 970433979 930363323 904390538 904390538 193308883 603819384 603819384 590122753 590122753 1057752512 1057752512 514761787 412441511 1051507460 1051507460 722114657 865505825 865505825 965479781 965479781 627870859 627870859 624090781 711381869 922980886 922980886 1044452070 1044452070 915691637 915691637 963395680 963395680 512020218 512020218 453247048 51052616 77280884 85193112 198719264 198719264 109363816 197659568 201333188 201333188 249432968 249432968 54605808 54605808 4194432 5292672 28662144 28662144 17594464 164114545 708993189 708993189 695813253 545354820 545354820 543847873 567566496 567566496 765462304 765462304 748160589 741867597 892375613 892375613 830098816 1024706363 1024706363 607804764 714394197 740790861 740790861 866714670 866714670 411510216 389055367 389055367 273287254 512238695 654385209 654385209 751436014 751436014 84935208 264902356 362025048 362025048 117512226 77893570 277041864 277041864 79409698 344544266 344593994 344593994 521683006 521683006 391669542 488701990 488701990 423899252 516774460 516774460 633767151 633767151 552489077 1070773421 1070773421 408192846 348699170 917053881 917053881 312575098 664302720 664302720 471992738 471992738 814159962 852593235 890712531 890712531 856686616 890241579 890241579 1067319614 1067319614 824708370 1054903788 1054903788 541583201 19941091 20978336 20978336 1503744 1503744 59959312 600252992 600252992 562504353 562504353 43188288 37888512 37888512 4460736 9504768 548981845 673877269 673877269 863187891 944055200 944055200 942033315 1048387471 1048387471 794138649 794138649 411164742 218752044 218752044 180358712 235229188 235229188 165496560 180415684 180415684 153647360 265113315 893166840 893166840 824390414 842208530 842208530 969576570 969576570 788005887 777859669 219678252 436773700 436773700 604115993 814222600 814222600 285474832 453780697 885632197 885632197 786483346 474802588 686047327 771845642 771845642 707174673 188418365 540148736 540148736 46696801 564413648 566515968 566515968 49516736 49516736 310448178 310448178 105243618 307309016 335606819 520492096 520492096 943763333 943763333 471680198 471680198 346678602 824890659 824890659 557388768 939901003 939901003 383722334 706761174 706761174 179608025 82232192 82232192 80949960 79497224 104227792 104227792 113576824 113576824 113155136 78315170 396588618 396588618 305423752 447862556 588449068 588449068 514405637 936969860 936969860 559465600 393283256 544355234 544355234 170605393 601909594 1017377103 1017377103 847524324 847524324 520294498 506275038 380044290 714482348 714482348 599407333 304709633 652553112 933298907 933298907 842345448 54305280 71123456 71123456 81037928 109786200 109786200 92811312 295299712 335237382 335237382 339553034 504765266 504765266 400930854 250609988 250609988 993084097 993084097 655450982 742441101 742441101 1026738999 1034558696 1034558696 909850395 832750247 160447568 835543137 835543137 520671140 520671140 232822434 29622304 29622304 71311904 152197800 152197800 144382320 246290164 246290164 65144636 41954048 41954048 17172032 15873376 24621216 24621216 28133232 162987408 162987408 37838992 37838992 613113944 613113944 583324444 583324444 626201576 727607252 727607252 578833601 576907025 695967990 826665123 826665123 641574908 959073606 959073606 288632949 899682572 899682572 436470062 436470062 126199840 126199840 279240986 361329712 361329712 98746528 363509096 363509096 355953578 94493034 23594400 598420173 598420173 656150136 656150136 649192565 738883180 738883180 741219597 741219597 831754508 831754508 790813197 974441047 974441047 660881592 987736272 987736272 232021328 51326244 427944806 427944806 549793476 549793476 457949216 457949216 975950118 975950118 847870104 847870104 384621723 690881631 690881631 566367591 560505523 1015117277 1015117277 955760305 852934579 390636028 390636028 771168201 796137657 796137657 693352852 211159208 211159208 22619808 14036640 94062640 592358048 592358048 24118176 24118176 39920016 53801296 60954800 60954800 58837312 11073856 2412032 29912544 29912544 2484480 10822016 19557184 36652780 210652536 210652536 76360776 51904576 1035149954 1035149954 135401988 470469688 470469688 118281230 274748314 1007714788 1007714788 589320227 589320227 874664940 874664940 995892143 995892143 812200002 655828378 655828378 512446500 446359902 567767554 567767554 272169778 905456430 905456430 786670653 627796765 347980673 295581026 830008352 830008352 22382467 34209824 50992176 362769952 362769952 269161576 465668276 843432030 843432030 883886395 883886395 843224529 843224529 1049170106 1049170106 917189225 339618988 353319978 353319978 386998842 700485158 842372404 842372404 872418340 872418340 1042218518 1042218518 676964076 676964076 165724644 761546825 761546825 604251776 604251776 444599893 807144963 807144963 979010211 995150909 995150909 643972416 643972416 100738924 384051568 384051568 263621580 263621580 9251904 217510532 217510532 69731592 24812960 24812960 23070592 12870145 80907845 80907845 135287120 250199177 250199177 247583440 141849548 593871241 593871241 572582193 690816132 690816132 604307456 604307456 570697753 537135105 109216881 303970498 303970498 31427142 252991062 252991062 201539726 474001420 474001420 188310332 181559588 66319344 25691232 763045173 789221836 789221836 739349905 739349905 202013708 908345672 908345672 213909708 620894333 620894333 769132104 965265905 965265905 702830615 809764995 809764995 727147147 727147147 999787066 999787066 583060012 1008581228 1008581228 205725847 524364418 524364418 113279504 113279504 106042008 98115824 457335780 457335780 957875751 957875751 650793427 379135578 750919929 750919929 256196620 584589380 584589380 562153016 740308655 740308655 476184584 234881536 673565447 673565447 704692512 799338811 1025550402 1025550402 730616617 725033834 725033834 746864160 746864160 523581506 498673518 822673429 822673429 623418484 948195125 948195125 934689411 934689411 646194920 646194920 488836298 352771392 224500078 224186028 287623304 423961512 423961512 451963416 451963416 334581152 197984768 59810592 59810592 151399202 825737540 966212199 975462230 975462230 422188326 903910132 903910132 603145579 479917745 107090328 220577936 415509348 1000756184 1037179114 1037179114 776174799 673058285 673058285 1031866478 1031866478 545784942 440717958 440717958 983200214 983200214 343022494 343022494 185721396 168861728 237913084 288615720 599785713 834106565 834106565 676160466 486996000 416563862 277187656 178470640 591574112 591574112 656458041 656458041 633341024 665782777 668317593 668317593 623897897 566229001 25502504 93661800 550996168 560378112 560378112 22208896 588493361 588493361 561351192 633487721 633487721 943901359 943901359 858919731 858919731 787160962 787160962 701040077 652680448 476053134 846471468 968496999 968496999 694294127 248537820 452307664 452307664 67111424 624951465 711175057 760666797 760666797 592611356 57545584 57545584 53156672 56700080 56700080 43851856 556476708 707307157 866515656 866515656 692808198 530817384 530817384 347175196 445212240 445212240 434231022 394130824 416685400 416685400 224604588 665870596 798089853 798089853 435209190 889242352 919601883 919601883 268797792 695520499 695520499 479510748 806706629 806706629 357440682 819531809 819531809 278212170 789572450 789572450 1021579119 1021579119 858362172 927106853 1028600559 1028600559 522795286 594086419 594086419 326640944 148196308 580964288 691013123 957104704 957104704 473854542 473854542 177263970 167344400 171979456 177418836 315026641 592784535 713691827 956656129 956656129 826053137 1043045867 1043045867 885005050 295013554 819053031 819053031 818212486 506323585 571834440 750101065 750101065 771796747 771796747 335687706 335687706 306645128 306645128 277219984 476459414 748890941 748890941 664717246 664717246 1072239172 1072239172 508561220 484043080 765979018 765979018 882250256 882250256 874253931 144055349 243249236 243249236 219158508 247288024 247288024 534593546 534593546 256973468 256973468 604811395 604811395 295634176 446207602 555182807 669600055 1017239339 1017239339 919859931 612262850 946932992 946932992 572601906 458294759 714699873 968524339 968524339 1006235919 1006235919 235572201 153964688 121993316 222838936 222838936 543766625 546390529 546390529 25350240 69764544 69764544 556288384 556288384 6587681 549499936 549499936 48760272 57222576 57222576 63066832 63066832 45963520 45963520 42755472 323863748 323863748 298855940 287217860 361588262 361588262 336382986 302024398 496876716 496876716 613424832 916943744 916943744 793924194 1052819679 1052819679 890977414 896477142 896477142 568625060 975798365 975798365 620883222 78653284 229639020 229639020 151044936 680985128 680985128 68172365 67146880 67146880 4866056 426643726 426643726 287644044 322648068 322648068 93922648 93922648 415463622 415463622 494106514 525707556 525707556 279663354 388385154 388385154 320606096 320606096 96739152 125441976 125441976 309373504 327515024 327515024 257221368 257221368 265603292 265603292 308407188 702810597 1019569125 1019569125 718381680 718381680 637584385 230855332 537337416 545721857 743251481 743251481 239075997 948985856 949084743 949084743 952230087 952230087 688011364 688011364 204922272 435061710 435061710 392462398 503316510 503316510 444225484 271788806 271788806 316416152 316416152 309157428 168314308 168314308 519705134 519705134 453904686 772938961 772938961 452199072 945460005 945460005 400064480 400064480 646375425 646375425 103677184 539001057 539001057 0 0 788736 357041808 357041808 75549072 83559296 654394400 654394400 200876344 688201828 688201828 194858532 194858532 857491604 857491604 596082768 596082768 727514284 727514284 614844800 614844800 749013409 749013409 680001680 663238821 555077640 555077640 639940688 639940688 636801928 469203732 627364928 636362217 962147757 962147757 425234438 441940502 441940502 431167674 689957678 930363323 1057167724 1057167724 616834102 616834102 360924277 360924277 1040457824 1040457824 1057752512 1057752512 514761787 169346580 422970820 422970820 722114657 865505825 865505825 965479781 965479781 627870859 627870859 624090781 711381869 711381869 885453396 1044452070 1045790735 1045790735 915691637 963395680 963395680 512020218 512020218 453247048 159064312 159064312 222998832 222998832 31544820 30614688 34092832 36700944 77863168 249432968 249432968 54605808 54605808 4194432 5292672 28662144 28662144 17594464 164114545 708993189 708993189 695813253 545354820 545354820 156452484 897646601 897646601 962659042 962659042 959447847 630250027 797313151 811647104 811647104 1024706363 1024706363 784282502 843595665 843595665 552551538 646943912 646943912 482345166 482345166 340312524 321524912 321524912 209924172 365113426 365113426 167845908 92538984 264902356 362025048 369398592 369398592 300964072 277041864 277041864 356048900 404371278 470287886 470287886 240770924 240770924 93700144 93700144 358185680 358185680 202457972 241524969 633767151 633767151 552489077 1070773421 1070773421 382731776 382731776 917053881 917053881 622511145 664302720 664302720 395657259 395657259 814159962 852593235 890712531 890712531 536930453 889586774 889586774 1067319614 1067319614 824708370 667288869 667288869 332011938 332011938 551573361 551573361 1503744 1503744 8427536 8427536 38979584 43121360 573719136 573719136 24539953 19134944 4460736 9504768 9504768 34128912 956682198 956682198 944055200 944055200 942033315 422613527 265870968 403784256 411164742 411164742 218752044 218752044 155520096 155520096 161130048 161130048 144258660 153647360 309640801 723448970 809443646 824390414 824390414 875304602 875304602 969576570 969576570 1003169572 1003169572 367687077 520004740 520004740 416632710 319031346 543983928 659080377 659080377 405063942 405063942 244598854 180616008 17041440 788603012 788603012 752836337 752836337 676670085 540148736 79827144 263430744 263430744 80904896 733291206 733291206 688996848 389048368 929481720 929481720 869456313 880905410 911076505 943763333 943763333 471680198 471680198 346678602 824890659 824890659 627611296 939901003 939901003 789876436 789876436 797246583 797246583 763498605 738465888 222963244 222963244 68367248 131227344 219060948 219060948 113155136 7875912 90838416 305423752 305423752 291294882 588449068 588449068 514405637 414787398 559465600 940589572 940589572 889829091 81467115 76755424 210119052 210119052 288363201 847524324 847524324 697779650 436195780 684365763 684365763 681051717 808586918 808586918 652553112 933298907 933298907 842345448 23078472 83886120 83886120 83886120 109786200 109786200 372391216 372391216 335237382 335237382 339553034 339553034 400930854 400930854 250609988 250609988 993084097 993084097 655450982 742441101 742441101 473588075 1034558696 1034558696 832750247 832750247 160447568 835543137 835543137 520671140 520671140 344490848 226792210 193337460 193337460 111550792 152611908 152611908 255856780 255856780 32296416 32296416 22482272 31983072 31983072 12162944 12162944 12886144 188762272 264512568 264512568 190883889 613113944 613113944 571134993 172069849 194404128 727607252 727607252 63684149 46148432 127691816 127691816 912901356 959496999 959496999 957992743 720477395 25371969 78568776 171742512 171742512 933650035 933650035 662970720 95155274 360942376 360942376 363509096 363509096 364017066 364017066 824262530 886247557 886247557 680985805 153905512 649192565 730456921 730456921 616377440 846710170 846710170 606027273 576429506 858554385 858554385 171506376 411739232 411739232 691149857 691149857 970337638 970337638 982389780 982389780 864601187 317420550 975950118 975950118 847870104 994232052 994232052 690881631 690881631 962593202 962593202 1015117277 1015117277 955760305 852934579 390636028 390636028 771168201 796137657 796137657 892614832 892614832 370077771 230329224 713915689 713915689 187182260 121797664 878969753 878969753 4643328 6553728 7602688 7602688 4194432 4194432 1884160 2261504 3330816 31344928 31344928 12896448 36652780 257395297 581826413 757229377 757229377 228717912 228717912 411117568 470469688 470469688 673935430 673935430 247601161 235028608 864676953 864676953 874664940 874664940 995892143 995892143 801944143 801944143 655828378 512446500 958958672 958958672 567767554 441598548 905456430 905456430 786670653 890689848 890689848 295581026 830008352 830008352 26470016 924149464 924149464 583259235 547416458 369098778 434765898 434765898 230745518 71845092 305869728 323486898 810485504 901001147 985275715 985275715 272116932 272116932 344131590 344131590 700485158 700485158 336267595 386418724 705028110 705028110 671663109 185149497 344762104 909231396 909231396 1011689867 1027156750 1027156750 1021838730 1052773412 1052773412 209848512 239864988 239864988 208241020 208241020 100799104 56491136 56491136 38982288 273668576 273668576 211388964 211388964 161286792 161286792 153092388 156894752 156894752 80907845 80907845 75238912 250199177 611203716 611203716 606415113 593871241 593871241 572582193 690816132 744489117 744489117 625216971 819728073 819728073 277350401 642041977 642041977 299129064 366138090 606141251 606141251 474001420 474001420 169955372 120272184 120272184 87138800 763045173 763045173 148187844 739349905 739349905 205610496 663867505 663867505 213909708 620894333 620894333 731647696 731647696 180653332 180653332 248994156 586658392 727147147 919054580 919054580 760232105 760232105 680392780 902955200 902955200 1042528404 1042528404 656561146 513802590 513802590 281018520 301989906 301989906 957875751 957875751 969181304 969181304 935717115 532963333 256196620 256196620 221783419 529080333 624496779 624496779 476184584 270074890 635547425 635547425 130565352 639174906 1025550402 1025550402 730616617 553652246 1060256880 1060256880 746864160 830933316 965943657 965943657 830815510 623418484 948195125 948195125 934689411 934689411 646194920 646194920 544734345 544734345 224500078 224186028 287623304 687451121 687451121 451963416 598148641 598148641 197984768 22030400 16785408 151399202 708292610 708292610 975462230 975462230 831656454 563147299 410690976 410690976 31573024 32506848 205931092 415509348 537006080 1037179114 1037179114 776174799 839305572 839305572 821656290 821656290 545535170 263502338 343136394 589434067 589434067 423836102 216148432 185721396 210887244 210887244 184199744 599785713 834106565 932707844 932707844 199023835 43652688 17007328 134256128 591574112 591574112 786616797 786616797 633341024 665782777 668317593 668317593 623897897 631815713 631815713 559711657 550996168 550996168 555819288 657722169 657768448 657768448 561351192 633487721 633487721 630540640 605102601 805333627 805333627 866308659 866308659 652680448 949118098 949118098 759820850 933200529 933200529 638884576 638884576 452307664 452307664 905208668 923980347 1024901675 1058327103 1058327103 304591741 57545584 323956946 323956946 842118851 842118851 583856752 591256976 707307157 707307157 692808198 807471360 807471360 571137810 203949324 85381912 16784936 151130148 991377491 991377491 958183284 151799208 705922861 798089853 1025295256 1025295256 922869819 919601883 919601883 871374856 871374856 695520499 156093136 806706629 806706629 651765465 819531809 819531809 415246462 538454081 700019222 1021579119 1021579119 858362172 927106853 1028600559 1028600559 522795286 831136384 831136384 64698307 61544144 322013728 322013728 334913888 334913888 462760566 462760566 147908786 164006432 171979456 177418836 177418836 139474032 467496518 832083504 832083504 653919944 653919944 885005050 885005050 298584768 819053031 819053031 818212486 806453773 806453773 750101065 750101065 900770384 900770384 482675127 335687706 306645128 306645128 277219984 476459414 476459414 190646292 327749490 327749490 1017254260 1017254260 951174898 951174898 543893622 782827900 782827900 438568344 281210806 885536364 1058599460 1058599460 26949216 187562936 187562936 534593546 534593546 256973468 256973468 604811395 604811395 189971604 423322976 555182807 669600055 1017239339 1017239339 919859931 612262850 946932992 946932992 572601906 458294759 714699873 968524339 968524339 1006235919 1006235919 235572201 121993316 121993316 171966612 171966612 543766625 546390529 618006400 618006400 90574312 90574312 635439369 635439369 607044672 21496992 21496992 537654273 537654273 590472096 590472096 60900496 19915136 58769920 58769920 111927904 111927904 71575560 71281344 71281344 10098240 76154432 76154432 496876716 496876716 118970250 220529492 277088322 793924194 1052819679 1052819679 815007439 815007439 707895317 707895317 487630692 487630692 154783010 78653284 229639020 748830992 748830992 657555789 622015017 5953152 94449422 470958086 470958086 836973999 836973999 433730566 848904771 848904771 514586488 229238124 415463622 1059950859 1059950859 638152071 584382257 584382257 388385154 388385154 320606096 545734472 558743299 869219571 908930786 908930786 511653966 421484400 470063342 470063342 416733894 247863516 308407188 308407188 45213920 179585460 718381680 718381680 64217317 7789440 537337416 545721857 743251481 743251481 784457949 948985856 949084743 949084743 952230087 952230087 688011364 688011364 204922272 468723840 507775134 507775134 107879832 265256432 265256432 150327444 143748032 40337652 29569248 23265648 60830112 109051992 224134388 453904686 453904686 772938961 772938961 452199072 945460005 945460005 424806082 400064480 646375425 646375425 103677184 539001057 539001057 76343618 357715762 357715762 396300464 412634688 468211332 468211332 654394400 1058622246 1058622246 430034018 430034018 114329224 114329224 857491604 857491604 722282736 729858165 729858165 559028768 559291041 559291041 193268288 193268288 663238821 663238821 134349873 134349873 639940688 639940688 636801928 948031828 948031828 795172894 386475017 425234438 425234438 441940502 441940502 431167674 431167674 384937320 1057167724 1057167724 616834102 616834102 449319626 360924277 1040457824 1040457824 671951877 949800519 949800519 814484547 814484547 594283472 303219842 303219842 843484326 843484326 734737653 436713726 455456990 547866694 709935308 709935308 646971993 859988006 1045790735 1045790735 521327166 521327166 419467800 160031424 160031424 380110278 380110278 411161188 479212048 479212048 358951586 358951586 512962250 512962250 361305068 85859880 256545776 256545776 92459112 92459112 52830040 37475808 118935600 240862904 240862904 214018576 574464 680789064 680789064 298325639 407053542 897646601 897646601 962659042 962659042 959447847 630250027 797313151 953866877 953866877 631152947 618401481 784282502 843595665 843595665 695650089 786809031 786809031 482345166 482345166 424281329 424281329 805311506 805311506 877133987 877133987 826805859 567551066 109525720 127207528 369398592 369398592 300964072 348250314 348250314 356048900 404371278 470287886 470287886 315859264 323980434 323980434 351771312 402285184 402285184 383400202 358133696 358133696 330313552 59769506 0 0 382731776 382731776 553681928 621331497 622511145 622511145 67654177 9486912 637751308 637751308 109199389 721830224 721830224 536930453 713038888 713038888 227020892 456002938 456002938 667288869 856260691 856260691 332011938 551573361 582969681 582969681 30775185 592793761 592793761 42340432 572960816 573719136 573719136 550511248 539371904 8392768 8782529 674255435 1022811087 1022811087 956682198 906767509 740003471 717125001 985690129 985690129 939244479 725467138 284083100 222086836 310696664 310696664 275108612 171504284 39523992 22673024 247291914 386155172 723448970 809443646 809443646 810156394 875304602 875304602 375000331 253281852 1003169572 1003169572 367687077 520004740 520004740 416632710 570689553 570689553 1009551398 1009551398 728653072 405063942 244598854 180616008 42375556 788603012 788603012 752836337 752836337 676670085 886346548 886346548 552739535 844121381 844121381 733291206 865758178 865758178 389048368 929481720 929481720 869456313 880905410 911076505 1046546902 1046546902 1044692093 430858251 292743426 292743426 767302500 767302500 764127670 764127670 789876436 789876436 797246583 797246583 763498605 738465888 258791466 222963244 204213396 131227344 219060948 219060948 94091818 87723520 87723520 94798688 94798688 416884628 416884628 298880866 228134990 445145732 580449958 940589572 940589572 915501203 523119616 523119616 287648034 210119052 288363201 832704867 832704867 697779650 436195780 684365763 950897094 950897094 808586918 808586918 826343938 826343938 566283016 566283016 547703306 742760611 872538123 872538123 449754121 592212144 977655345 977655345 980436898 980436898 727588533 587916900 269869810 269869810 22485330 23477984 32180320 54267696 146538500 146538500 157551348 157551348 53087364 238813252 444822096 444822096 398907642 324526236 324526236 184813600 344490848 344490848 304238994 321048882 356647320 356647320 152611908 152611908 255856780 255856780 42043888 42043888 36143232 36143232 31983072 12162944 12162944 50718768 188762272 264512568 264512568 650462097 650462097 97641192 671082169 671082169 148915416 672503860 684464533 684464533 681913413 188163826 321570930 912901356 959496999 959496999 957992743 832475204 926052677 926052677 640815921 355303548 933650035 933650035 662970720 291959048 366254250 366254250 347531522 21648866 364017066 364017066 824262530 886247557 886247557 680985805 153905512 222855368 222855368 555032608 555032608 846710170 846710170 606027273 576429506 858554385 858554385 440352534 821958202 821958202 691149857 691149857 970337638 970337638 982389780 982389780 864601187 876623884 977223447 977223447 544236821 994232052 994232052 744056781 744056781 1019216636 1019216636 830836257 830836257 579119252 571328721 571328721 541065345 937715028 937715028 794082925 892614832 892614832 370077771 230329224 713915689 907020856 907020856 890571307 878969753 878969753 842606355 842606355 551300736 316688000 3310208 4985984 4985984 15347392 15347392 31344928 31344928 12896448 66048064 257395297 581826413 757229377 757229377 713627302 713627302 411117568 421134946 439929443 763101955 763101955 590367095 590367095 864676953 864676953 291116706 552505731 820534529 820534529 801944143 801944143 627709353 208014373 958958672 958958672 441598548 934044684 1000728951 1000728951 201952635 890689848 890689848 826027553 286835585 269164417 27504888 924149464 924149464 583259235 547416458 369098778 369098778 274777816 920135675 920135675 731989312 731989312 810485504 901001147 985275715 985275715 661907336 659653256 136246168 131257080 115845808 1031968065 1031968065 520202266 420062252 23142816 651798768 651798768 998540584 998540584 909231396 1011689867 1027156750 1027156750 1021838730 1052773412 1052773412 851614629 851614629 769022593 769022593 542900396 218109124 336789648 336789648 277945258 273668576 273668576 211388964 211388964 161286792 161286792 153092388 156894752 156894752 19924480 924672 9516032 674773012 674773012 611203716 606415113 212064601 253952008 253952008 201347364 744489117 744489117 625216971 912860208 912860208 902326299 642041977 642041977 299129064 366138090 606141251 606141251 43326812 169955372 169955372 120272184 443902402 443902402 270662038 270662038 148187844 160452608 298474416 298474416 269936514 696877370 696877370 593036481 683681150 683681150 865151566 865151566 666899740 837151102 973385363 973385363 957788950 957788950 760232105 760232105 680392780 902955200 902955200 1042528404 1042528404 656561146 513802590 513802590 281018520 301989906 301989906 142680132 673861633 969181304 969181304 935717115 532963333 746644732 746644732 705303573 625529020 180557188 426387270 426387270 578849280 635547425 635547425 235089948 639174906 865346618 865346618 1041111384 1041111384 1060256880 1060256880 982964823 830933316 965943657 965943657 830815510 505808730 505808730 307243368 213047744 563589061 563589061 233518572 544734345 544734345 4322916 144722304 161219940 687451121 687451121 189350800 598148641 598148641 44176608 25744224 26607984 36772496 688972180 688972180 314114661 831656454 831656454 563147299 492463892 808452675 808452675 246674270 876340482 876340482 570989575 537151489 537151489 572208657 839305572 839305572 565183585 565183585 408363248 263502338 245998642 270731376 423836102 423836102 434445586 434445586 210887244 224235856 439795672 457228386 457228386 932707844 932707844 199023835 43652688 100955016 175630512 175630512 558143868 786616797 786616797 262555809 662307617 662307617 628117680 95293801 631815713 631815713 559711657 72417920 72417920 555819288 657722169 657768448 657768448 646932128 771591099 771591099 564994147 605102601 605102601 554752291 942090496 942090496 583156642 949118098 949118098 759820850 933200529 933200529 638884576 753009172 753009172 653399001 905208668 923980347 1024901675 1058327103 1058327103 304591741 47186112 323956946 323956946 842118851 842118851 583856752 591256976 591256976 603973217 603973217 807471360 807471360 571137810 218967084 389288536 389288536 337379920 991377491 991377491 958183284 151799208 749555072 749555072 1025295256 1025295256 987999795 375751309 847324452 871374856 871374856 422417252 277748802 428537370 563810488 651765465 651765465 415708839 415246462 354684338 216645864 701946658 701946658 624980024 574877841 689976888 689976888 152249916 831136384 831136384 64698307 61544144 322013728 322013728 334913888 334913888 462760566 462760566 332764514 332764514 164006432 151328852 282263237 290418054 851259219 851259219 832083504 731370262 197316852 937347678 937347678 298584768 617352899 617352899 954731096 954731096 880804545 880804545 1003571840 1003571840 900770384 482675127 463211622 46342144 48769264 231743964 231743964 560610009 560610009 867015440 867015440 858518835 798074890 951174898 951174898 543893622 782827900 782827900 438568344 999305424 999305424 1058599460 1058599460 220816100 220816100 175113108 237307012 438380088 490211118 490211118 239514420 239514420 187914396 423322976 462545526 511828582 511828582 75595782 169416208 169555476 421078020 421078020 168896038 139268 0 57163472 57163472 77161312 77161312 52095592 91507616 91507616 20267720 19368840 97727208 97727208 618006400 618006400 90574312 90574312 635439369 635439369 607044672 21496992 21496992 537654273 537654273 590472096 590472096 60900496 44876672 58769920 58769920 387810788 387810788 336647556 359264612 359264612 286840814 360216482 360216482 345581130 322258560 322258560 419563748 419563748 277088322 277086208 573360992 573360992 950670402 950670402 707895317 487630692 1020259298 1020259298 722678325 691147557 748830992 748830992 698917961 622015017 614466985 756928133 756928133 565019072 836973999 836973999 433730566 848904771 848904771 514586488 229238124 229238124 1059950859 1059950859 638152071 584382257 584382257 382342362 382342362 109439064 545734472 558743299 869219571 908930786 908930786 511653966 421484400 818405621 818405621 763428941 467267252 336080587 997229009 997229009 702376951 462811025 462811025 344246346 559287238 439359105 439359105 69090639 717528792 784457949 784457949 839782613 914572375 914572375 847648851 679733367 285286467 100213216 468723840 507775134 507775134 448820286 448820286 276145728 282032834 282032834 180581404 416306878 422133464 422133464 311699676 486885912 486885912 301664912 207363404 56625328 23729568 20460800 424806082 424806082 289414112 102895616 102895616 135448 123316744 123316744 76343618 357715762 357715762 396300464 412634688 468211332 468211332 597871432 1058622246 1058622246 430034018 430034018 114329224 151730210 621713658 692588686 722282736 729858165 729858165 576608145 636768761 636768761 568953353 101486097 647366753 647366753 580290608 580290608 563270241 119767424 40251680 948031828 948031828 795172894 438837260 371795226 273393380 273393380 329418892 329418892 205803890 282187316 962245348 962245348 320476861 449319626 706953216 706953216 673439765 924119297 1057327675 1057327675 949800519 814484547 814484547 606885000 655853241 828344563 843484326 843484326 734737653 668591953 668591953 920060992 920060992 614746945 731666283 907153934 907153934 840696869 538568193 985949712 985949712 315673654 449323976 449323976 380110278 411161188 479212048 479212048 358951586 358951586 512962250 512962250 454495682 283916854 256545776 256545776 92459112 92459112 52830040 37475808 118935600 240862904 240862904 685962629 721572117 721572117 793321663 855385098 922562523 994062188 994062188 764535405 142688809 502997732 502997732 338302218 953866877 953866877 618401481 618401481 675087873 1009425920 1009425920 840253583 786809031 786809031 340049342 423735360 424281329 424281329 805311506 805311506 877133987 877133987 826805859 567551066 109525720 127207528 127207528 86495592 86495592 348250314 348250314 344304450 362501472 362501472 339374634 315859264 323980434 323980434 351771312 402285184 402285184 383400202 358133696 825238019 825238019 560538995 840510371 840510371 332865025 334109106 421737855 994840419 994840419 798760572 701909693 484163262 637751308 637751308 109199389 721830224 721830224 557852944 536870913 536870913 227020892 227020892 117571684 9437760 856260691 856260691 320988210 48459904 582969681 582969681 571159312 592793761 592793761 52373504 572960816 572960816 550511248 550511248 539371904 29699456 25974272 674255435 1022811087 1022811087 882278788 89695806 520397852 520397852 985690129 985690129 939244479 725467138 284083100 222086836 310696664 310696664 275108612 171504284 39523992 22673024 247291914 386155172 386155172 774443360 797652093 810156394 830475465 831392938 831392938 592845489 945063637 945063637 349860485 332214879 537734145 537734145 906043419 906043419 1009551398 1009551398 728653072 545706626 808067418 808067418 46170128 155525508 155525508 311796548 311796548 304136484 886346548 886346548 552739535 844121381 844121381 669832754 865758178 880277728 909374235 909374235 390669498 390669498 873597698 873597698 1046546902 1046546902 1044692093 541081889 555778177 555778177 767302500 767302500 892972545 892972545 735013753 397741930 397741930 8572992 485888770 526703656 526703656 428725996 204213396 82578652 195022620 195022620 94091818 100160328 100160328 98117352 103304568 416884628 416884628 991646881 991646881 525137594 1044388106 1044388106 915501203 915501203 883466485 523119616 287648034 470625294 470625294 259472316 494545938 494545938 312854384 417623367 950897094 950897094 822364773 822364773 826343938 826343938 386180000 498387822 547703306 742760611 872538123 872538123 449754121 592212144 977655345 977655345 980436898 980436898 727588533 587916900 560516753 572814635 916691728 916691728 529352514 529352514 497888622 211412556 211412556 1064673148 1064673148 515916981 868275405 868275405 401261378 963609971 963609971 469234954 215827822 88398028 304238994 321048882 356647320 356647320 88897664 88897664 151795744 151795744 74262544 124078464 124078464 80003272 96396552 96396552 89605760 60105300 177285744 177285744 209734412 650462097 650462097 135266820 671082169 671082169 26416300 672503860 684464533 684464533 681913413 188163826 321570930 544832433 544832433 13939392 537887553 832475204 926052677 926052677 640815921 557062912 557062912 339139904 1374218 291959048 366254250 366254250 342932354 343333770 343333770 72559016 630402120 630402120 539493633 70067520 32447776 540163073 562497832 746851913 746851913 735235827 735235827 150385421 860121296 1058308121 1058308121 791600445 821958202 821958202 469113846 407166064 19620326 16178112 270930272 270930272 275666968 876623884 977223447 977223447 147997385 326372528 513902657 744056781 744056781 1019216636 1019216636 271370688 579119252 579119252 571328721 571328721 541065345 937715028 937715028 794082925 763762797 532320809 260766208 872401460 872401460 907020856 907020856 890571307 808454291 808454291 842606355 842606355 551300736 316688000 80888648 80888648 78417224 78417224 73416256 84649376 84649376 336020834 336020834 965529604 965529604 849568301 626382590 735601299 735601299 223539475 421134946 439929443 763101955 988022952 988022952 666140991 656522296 656522296 47055184 552505731 820534529 820534529 701238732 701238732 627709353 541455906 674414642 715697527 715697527 975875382 1000728951 1000728951 328410468 557419776 826027553 826027553 276089730 276089730 275072706 73941400 322189256 322189256 119217112 119217112 274777816 274777816 920135675 920135675 731989312 731989312 738290566 1045237507 1045237507 841511809 932152326 932152326 554337402 571489828 571489828 1031968065 1031968065 520202266 470355972 235329378 651798768 651798768 998540584 998540584 593323393 497424709 611201393 611201393 483335444 986849830 986849830 899554752 899554752 769022593 769022593 542900396 446860082 446860082 338674914 338674914 252371286 283244000 472149612 472149612 71828008 71828008 1184000 3146496 144198437 153452581 153452581 146499093 674773012 674773012 596588549 721512705 721512705 690200848 212951624 781230921 781230921 482609204 102763744 912860208 912860208 902326299 373743792 353840232 831266018 831266018 408456320 408456320 476205846 476205846 172782916 466418960 466418960 443902402 873820703 873820703 209382738 609252545 609252545 298474416 269936514 696877370 696877370 593036481 683681150 683681150 865151566 865151566 666899740 837151102 973385363 973385363 957788950 957788950 732357434 589164081 319320513 353684010 353684010 96191632 275550608 275550608 101847576 226757812 226757812 286211106 341548066 358148746 673861633 673861633 557842593 557842593 193709169 746644732 746644732 705303573 625529020 462306375 250551322 268971010 875102217 875102217 235089948 554730240 554730240 336931338 590641704 1041111384 1041111384 847642988 982964823 982964823 243447856 243447856 100872216 73744848 73744848 113607760 113607760 213047744 213047744 220201696 220201696 217056204 162731040 90921604 144722304 144722304 14707492 31383264 31383264 25362624 44176608 44176608 25744224 26607984 36772496 810584419 823181859 944612132 944612132 287968256 492463892 508007932 808452675 808452675 545529025 876340482 876340482 1067074142 1067074142 791850066 827012259 1007368097 1007368097 742078221 751449252 751449252 184623108 431403320 431403320 241844082 211825148 434445586 434445586 427230140 369571866 439795672 1057487083 1057487083 721693743 944052902 944052902 335618192 335618192 239797248 652217820 717897540 717897540 573289088 576209276 662307617 662307617 628117680 17041952 2894944 2894944 59818288 599088160 599088160 626381369 626381369 103605512 103605512 646932128 771591099 771591099 787605655 787605655 648028491 648028491 942090496 942090496 441062550 441062550 317318610 678538772 678538772 644140046 644140046 753009172 753009172 653399001 966082735 966082735 188748464 508702732 928190597 928190597 47186112 63201376 63201376 45847152 4646480 590704768 590704768 399360 138927748 805503488 805503488 161752392 312180304 312180304 389288536 389288536 337379920 337379920 714221748 714221748 599854608 749555072 749555072 1004388592 1004388592 987999795 179865844 439654230 914315488 914315488 663677486 663677486 906207309 906207309 872678936 840699411 583572566 583572566 546197746 346400650 701946658 701946658 572657830 788673004 788673004 689976888 290529943 717950373 717950373 196556304 717455221 968999120 968999120 947049351 672866678 271770852 142828292 332764514 332764514 160514708 151328852 282263237 538287041 851259219 851259219 732740317 732740317 197316852 937347678 937347678 425754701 702392399 702392399 954731096 954731096 880804545 880804545 1003571840 1003571840 549528246 463211622 463211622 304161042 304161042 33232296 316551138 560610009 560610009 867015440 927463611 927463611 573339682 629055664 629055664 548219408 572263953 572263953 178858565 999305424 999305424 169477427 121669052 260605848 260605848 174164204 329583198 438380088 526511502 526511502 812194221 812194221 203044514 175356371 952555719 952555719 898468217 372503322 733914051 733914051 757907854 772687146 772687146 201401608 160254268 160254268 133692408 133692408 56623536 223911888 223911888 258876149 258876149 691981221 701931081 701931081 545834049 29460096 29460096 28834656 557860960 557860960 545259585 18923808 21037600 36765936 51417328 51417328 40526848 20478688 44876672 44876672 49391680 387810788 387810788 336647556 359264612 359264612 286840814 360216482 360216482 345581130 322258560 322258560 419563748 663781952 663781952 59425024 822189090 822189090 950670402 950670402 673186053 103359768 1020259298 1020259298 973622452 691147557 712103345 712103345 698917961 614466985 614466985 756928133 756928133 565019072 213917768 194586228 194586228 186199828 182191236 196293492 464729960 464729960 732824996 732824996 157818229 102760728 106046552 113381592 113381592 75497544 81789008 81789008 50332128 83664936 83972040 83972040 420819123 818405621 818405621 763428941 467267252 1008528238 1008528238 997229009 702376951 462811025 462811025 344246346 559287238 979404672 979404672 37884048 41720208 41720208 576603792 579500046 914572375 914572375 847648851 679733367 566704353 566704353 679950405 702820768 702820768 448820286 448820286 276145728 282032834 282032834 180581404 416306878 422133464 422133464 311699676 486885912 486885912 301664912 766038765 766038765 262687600 636896229 636896229 163921248 104341312 554068985 554068985 131754656 640230657 640230657 31008480 65203016 100420456 179978032 179978032 105278920 130158840 326322788 482116368 482116368 352413506 823453368 823453368 811388547 403442694 420004996 420004996 29495520 114215200 576608145 636768761 636768761 568953353 101486097 101486097 631115776 631115776 580290608 570591280 570591280 16828464 16828464 957612107 957612107 702089836 681054124 273393380 704656932 952076340 952076340 491401476 423988866 958197406 958197406 605898758 536871936 706953216 757215304 757215304 924119297 1057327675 1057327675 873945919 1027497620 1027497620 971526578 777837427 828344563 839758000 839758000 639085574 1007995524 1007995524 920060992 920060992 823429250 731666283 907153934 907153934 840696869 538568193 985949712 985949712 315673654 449323976 449323976 306807430 114768600 101659616 108222400 108222400 321532384 321532384 454495682 454495682 283916854 180096984 191892884 191892884 176160852 38015684 97387048 97387048 128859584 199917729 685962629 721572117 721572117 793321663 855385098 922562523 994062188 994062188 287045154 281605798 207110858 831644259 855765041 855765041 730345744 492489642 359978670 406003968 1009425920 1009425920 840253583 197932176 197932176 159856740 423735360 423735360 104992920 608306328 642252825 872940065 872940065 486623793 977658007 977658007 693234311 576022920 613466624 613466624 95421288 95421288 741437740 1008877900 1008877900 967361895 967361895 554191618 135537728 11395392 11267904 60975488 60975488 317785585 825238019 825238019 560538995 840510371 840510371 332865025 334109106 421737855 994840419 994840419 798760572 1065923628 1065923628 589834270 556559221 833882560 833882560 807406014 807406014 54925488 610271513 610271513 69603336 69603336 33818640 326173842 326173842 12592544 48459904 48459904 571159312 571159312 50668257 52373504 52373504 50669616 47924832 23224928 23224928 73589928 73589928 25974272 79473932 138551204 527320288 527320288 89695806 402653204 402653204 438338384 438338384 412140102 516553344 516553344 209026792 209026792 88924848 111483136 111483136 62266224 159616652 159616652 237131925 808844117 883937283 1016698717 1043203113 1043203113 898960708 831392938 592845489 945063637 945063637 349860485 332214879 537734145 1013942600 1013942600 906043419 692697389 219813420 452877404 895277852 895277852 808067418 918962517 918962517 238695740 238695740 244327370 344982090 368238677 856802287 856802287 960505394 960505394 927675579 681284281 880277728 909374235 909374235 390669498 390669498 351567434 412059973 983048275 983048275 978469431 944533144 555778177 623737425 623737425 896805216 896805216 892972545 866262913 866262913 965861991 995420853 995420853 809818918 526703656 428725996 49883088 36532176 214895816 214895816 93812616 100160328 100160328 247014928 247014928 370839336 386667570 991646881 991646881 525137594 1044388106 1044388106 308519067 883466485 883466485 694630821 811168505 1055780319 1055780319 876659352 876659352 978922960 978922960 417682518 979370299 979370299 924844439 924844439 641067036 641067036 386180000 386180000 888169312 888169312 878201091 543984655 704998692 704998692 403124228 403124228 268642374 152968740 152968740 152177664 560516753 572814635 1001420456 1001420456 529352514 529352514 497888622 211412556 211412556 1064673148 1064673148 515916981 868275405 868275405 401261378 963609971 963609971 469234954 219410988 440447128 440447128 52613424 243405576 243405576 159164576 218838060 218838060 138747048 74262544 124078464 124078464 80003272 96396552 96396552 89605760 60105300 177285744 177285744 130087856 142639424 142639424 135266820 135266820 1097732 573440 172364288 172364288 4434576 53747984 53747984 53727792 544832433 544832433 36434304 537887553 537887553 78817793 539187305 553783329 557062912 557062912 271624192 270543618 86013952 86013952 301006944 342932354 343333770 343333770 25576426 4403200 558905985 686176544 686176544 697402180 697402180 682934981 746851913 746851913 982908760 982908760 985008466 985008466 1058308121 1058308121 791600445 695987650 469113846 540154193 895719733 895719733 860231859 845353187 270536704 448020972 448020972 371625346 50858528 50858528 42273120 162637924 162637924 8448720 38062224 38308084 835717776 835717776 949786116 949786116 211550725 223358500 616852486 616852486 723194392 723194392 532320809 260766208 872401460 872401460 608284345 608284345 459924918 101795758 67437224 302327826 302327826 302000128 82857376 80888648 109255680 109255680 101331016 73416256 84649376 84649376 336020834 541885496 965529604 965529604 849568301 626382590 735601299 735601299 987563008 987563008 134349826 404100208 988022952 988022952 666140991 550174385 550447297 550447297 285554752 593863859 593863859 271367105 581080423 581080423 968927506 968927506 715697527 730007416 992972804 992972804 701397369 701397369 637341924 619842777 563764641 276089730 276089730 275072706 117462912 117462912 315942514 315942514 205834380 266447994 645664031 771785145 771785145 574471563 616725791 738290566 1045237507 1045237507 841511809 932152326 932152326 554337402 700558499 700558499 697100306 719961328 719961328 470355972 235329378 728744314 970262471 970262471 583271311 455616705 351942052 83886120 625622024 625622024 986849830 986849830 899554752 899554752 232660716 416945752 446074084 446860082 446860082 338674914 338674914 252371286 283244000 472149612 472149612 217599016 217599016 152054532 152054532 151130148 153589792 153589792 146499093 590328933 596588549 596588549 721512705 721512705 690200848 221909536 781230921 781230921 357695916 339738762 339738762 323010738 373743792 373743792 881146496 881146496 831266018 408456320 408456320 476205846 476205846 172782916 466418960 466418960 300728080 873820703 873820703 449570642 609252545 609252545 489036008 291572398 254878524 1050480086 1050480086 1033448725 610226225 773399231 773399231 358950240 358950240 324194994 679264874 679264874 732357434 732357434 481740929 67162560 224659884 434637132 446781574 478589962 478589962 398857306 398857306 226757812 286211106 341548066 358148746 454829688 454829688 227079816 147056324 159563780 461918438 461918438 189404340 462306375 462306375 470026572 470026572 875102217 875102217 332524286 554730240 713704852 713704852 780507473 1034623489 1034623489 629475936 800927613 800927613 731653956 731653956 692080312 692080312 73744848 107620336 125777832 233909448 585700241 585700241 214044876 685973769 685973769 90921604 212330624 212330624 687831589 687831589 159119268 544875489 544875489 15761408 15761408 15015936 15015936 810584419 823181859 944612132 944612132 287968256 818245504 818245504 508007932 403627014 545529025 811597862 811597862 1067074142 1067074142 869962341 827012259 1007368097 1007368097 742078221 751449252 751449252 715759662 612373575 463098311 478212350 478212350 488532020 488532020 427230140 369571866 369571866 1057487083 1057487083 721693743 944052902 944052902 638067712 637607961 239797248 652217820 717897540 717897540 573289088 638607648 638607648 34087993 17046016 17041952 54062144 54062144 19677184 599088160 599088160 626381369 626381369 181180912 682641881 682641881 726516076 726516076 787605655 787605655 783855632 783855632 776726490 776726490 512173203 402757778 402757778 678538772 678538772 644140046 644140046 221385232 325280256 325280256 966082735 966082735 1064045504 1064045504 928190597 928190597 46346880 331438786 331438786 830253475 830253475 590704768 590704768 572941889 577159601 837956864 837956864 860952208 860952208 321048882 321048882 293765456 194251380 1005137799 1005137799 963454375 599854608 568143585 839834643 1004388592 1004388592 722228177 972599940 972599940 914315488 914315488 663677486 782569728 906207309 906207309 872678936 840699411 583572566 583572566 546197746 346400650 720640432 720640432 572657830 788673004 788673004 634397244 290529943 717950373 717950373 196556304 840564849 968999120 968999120 947049351 816050530 271770852 142828292 142828292 160514708 160514708 161992176 161992176 538287041 538287041 136672528 732740317 732740317 185408832 221851049 425754701 425754701 702392399 702392399 269830358 269830358 304089090 304089090 990616640 990616640 742013570 138480095 436809232 441715350 441715350 268511892 316551138 316551138 80091336 562178458 927463611 927463611 252041243 239388828 42113228 548219408 572263953 572263953 178858565 848843536 848843536 169477427 121669052 260605848 260605848 174164204 870519866 940987102 940987102 526511502 943675814 943675814 583947093 716715700 952555719 952555719 898468217 806068230 733914051 733914051 757907854 772687146 772687146 201401608 439099906 439099906 232352300 415426634 415426634 223911888 223911888 412912322 412912322 691981221 701931081 701931081 545834049 96025568 234488288 296382830 557860960 557860960 545259585 683348549 688940040 688940040 204608268 76681800 153441352 153441352 146470756 72616584 205572616 211030208 211030208 81183872 81183872 9047296 12792000 12792000 11608896 167012818 418571506 418571506 455615562 980034646 980034646 452172101 822189090 822189090 553698337 269048835 193736240 193736240 932544576 973622452 973622452 876915864 55362591 134291460 136316160 136316160 134743044 86731592 30257760 88763976 310902784 310902784 173540690 317929858 317929858 279187776 464729960 464729960 655300564 857416280 857416280 491075034 491075034 392775740 321010648 362393168 558840888 588985185 647590657 647590657 619173960 387730570 470426822 470426822 222363692 231277656 399573564 1008528238 1008528238 963118503 957593411 301355429 269730052 404959494 404959494 979404672 979404672 37884048 41720208 41720208 576603792 576603792 404832272 404832272 153413650 136345632 566704353 566704353 679950405 702820768 702820768 135011900 242488220 242488220 142264108 166198880 166198880 202731776 202731776 75673768 220946576 220946576 210720840 38174864 766038765 766038765 262687600 636896229 636896229 163921248 101724056 554068985 554068985 131754656 640230657 640230657 31008480 65203016 100420456 179978032 356639500 500967780 500967780 326322788 1035216401 1035216401 352413506 1058563322 1058563322 811388547 442025622 442025622 634160328 634160328 587992113 576194744 132519416 41815792 94788736 549194865 549194865 631115776 631115776 542430881 642796201 642796201 68452513 50645137 957612107 957612107 702089836 681054124 594706965 704656932 952076340 952076340 590233033 468849654 958197406 958197406 796318653 679617112 679617112 757215304 757215304 152068128 152068128 319008804 319008804 1027497620 1027497620 971526578 777837427 491502702 477267824 705425992 705425992 1007995524 1007995524 676495394 823429250 823429250 80495656 88129704 88129704 12068224 176513024 176513024 12707456 73502224 246918488 246918488 114768600 114768600 101659616 108222400 108222400 321532384 321532384 293601378 123469888 131862264 180096984 191892884 191892884 176160852 38015684 97387048 97387048 128859584 128859584 119747920 42676352 173356248 195244611 806687679 902562507 936130150 936130150 769093820 769093820 454201968 831644259 862097492 862097492 742859766 742859766 1037244406 1037244406 974856995 974856995 459851190 242854049 442289814 442289814 304321436 969085421 969085421 809501827 809501827 436470966 600353434 622134400 977658007 977658007 1029736928 1029736928 613466624 626144128 626144128 608247945 741437740 1008877900 1008877900 967361895 967361895 554191618 293986402 293986402 42473552 52691328 52691328 277033026 277033026 299452850 299452850 61155696 65583328 295691712 295691712 488055492 661177965 661177965 797941805 1065923628 1065923628 589834270 556559221 833882560 833882560 807406014 807406014 6291840 610271513 610271513 529274442 1050434100 1068685663 1068685663 987792568 52560176 784713044 784713044 700934852 700934852 159080029 146164444 96969676 567204896 567204896 560126929 200068549 165708704 627612680 627612680 569510564 429818702 529447486 529447486 420748534 499224138 499224138 436236694 167772166 386114344 516553344 516553344 267872546 290104116 319031200 319031200 227357240 62266224 159616652 159616652 237131925 808844117 883937283 1016698717 1043203113 1043203113 898960708 8521792 8521792 135168 135168 135168 672399790 892214187 1013942600 1013942600 663148665 219813420 219813420 452877404 895277852 895277852 566497908 918962517 918962517 238695740 238695740 244327370 344982090 368238677 856802287 856802287 960505394 960505394 927675579 681284281 897616448 898679403 898679403 785651003 612126613 642721604 642721604 983048275 1006946319 1006946319 949792544 393832072 623737425 623737425 896805216 896805216 786375628 866262913 866262913 965861991 995420853 995420853 809818918 14864832 172902208 172902208 160216624 214895816 215175520 233195756 233195756 94507368 247014928 247014928 370839336 386667570 408210500 482351794 979314374 979314374 899801632 899801632 869912554 869912554 694630821 811168505 1055780319 1055780319 876659352 876659352 978922960 978922960 813506325 979370299 979370299 924844439 924844439 641067036 909404452 909404452 691323434 888169312 888169312 878201091 543984655 851742178 851742178 956473637 978221088 978221088 823056562 671488005 570538996 368104064 358138754 1001420456 1001420456 224332632 224332632 214173900 47809052 18697792 696468646 696468646 492041767 491273416 337329678 337329678 335728654 257097746 416942120 416942120 440447128 440447128 320913714 373309864 373309864 159164576 218838060 218838060 138747048 119014968 28475440 50352992 50352992 16304288 86968864 86968864 26964296 64047544 124035824 124035824 169584028 223420992 223420992 159510628 159519588 180618640 196870194 286266342 824119041 824119041 53747984 537002625 571564674 811966483 841928067 841928067 274259729 34079104 548965185 548965185 548195649 548761160 548761160 278266440 367253536 367253536 352263040 352263040 282463434 281356482 70051072 70051072 558905985 686176544 686176544 697402180 697402180 682934981 682934981 674233089 982908760 982908760 985008466 985008466 841802001 841802001 1063147509 1063147509 765685080 765685080 895719733 895719733 877152440 845353187 302055568 568140212 568140212 458229670 458229670 177502616 139012004 139012004 929040367 929040367 534284442 557868575 835717776 836272197 949786116 949786116 407257762 676224206 676224206 483302533 980435520 980435520 337670607 295750960 708145130 708145130 608284345 608284345 540382223 605592368 617235643 907681267 907681267 539886248 370150168 93716688 109255680 135472129 135472129 151257708 151257708 217394717 217394717 541885496 541885496 812378139 812378139 622409993 614951105 614951105 987563008 987563008 50348032 404100208 594556152 648771417 648771417 576941378 848302488 848302488 609651602 609651602 811846147 811846147 581080423 581080423 968927506 968927506 531162376 730007416 992972804 992972804 701397369 701397369 637341924 619842777 563764641 26980992 274181952 274181952 117462912 425531492 425531492 426169892 436033861 623417419 645664031 805811489 827657603 827657603 883234564 883234564 445928466 544469889 544469889 656015629 656015629 222298284 700558499 700558499 697100306 719961328 719961328 437722914 2757888 728744314 970262471 970262471 643044528 556073993 556073993 678766541 678766541 807471939 807471939 785318103 711462724 711462724 346873664 346873664 215107844 266622644 333683252 333683252 84435136 97068264 97068264 203326700 203326700 217599016 225382400 225382400 152054532 153914628 153914628 160522820 160522820 197770384 253662624 604132244 604132244 254575088 715278557 715278557 244062588 357695916 637797643 637797643 909206146 909206146 831046739 875022344 881146496 881146496 111597912 76546632 275789904 275789904 273470930 142852096 453501824 453501824 320245618 320245618 449570642 449570642 256450146 489036008 489036008 291572398 542402578 1050480086 1050480086 1033448725 610226225 571653511 348916938 358950240 902120370 902120370 486560412 541153856 551025345 551025345 633379272 633379272 479725134 490260462 490260462 489743352 489743352 398857306 398857306 57614370 190382422 190382422 165285734 80682528 225761545 225761545 79876296 79876296 10895753 6812033 973119527 973119527 411044104 1026310243 1026310243 144711940 214568824 332524286 872579670 872579670 713704852 780507473 855261816 913543099 913543099 825365283 825365283 731653956 1026075240 1026075240 692080312 258831112 206577844 125777832 233909448 585700241 585700241 214044876 685973769 685973769 31932480 212330624 212330624 687831589 687831589 159119268 544875489 544875489 32253120 30996800 29525856 21590112 25289632 25479264 296405216 296405216 11326562 818245504 818245504 10769923 1007968553 1007968553 564765667 261280380 597710524 869962341 869962341 673969413 673969413 526582868 526582868 689382402 715759662 715759662 963329530 963329530 478212350 478212350 517730974 517730974 511076066 439667478 289636728 384037338 539848874 539848874 42577201 638067712 638067712 637607961 100957328 25197152 66190601 552616181 727634133 727634133 638607648 319209444 775048928 1054344927 1054344927 117331690 1057278015 1057278015 894197213 894197213 821641019 648931274 682641881 682641881 1000098500 1000098500 872768123 872768123 783855632 783855632 776726490 776726490 512173203 406847622 402757778 834283450 910251097 910251097 389056289 172093010 501504604 501504604 248954988 622217965 1064045504 1064045504 763305279 654323124 46346880 331438786 331438786 830253475 830253475 61192768 572941889 572941889 577159601 837956864 837956864 860952208 860952208 321048882 321048882 293765456 184667107 1005137799 1005137799 1058297300 1058297300 895274667 839834643 839834643 449128646 415574230 972599940 972599940 690436389 178316656 286917377 782569728 882592642 882592642 690771383 678532078 678532078 768659498 768659498 419729552 720640432 720640432 348291301 808714828 887163277 887163277 911815349 959132967 959132967 279458069 840564849 841459216 841459216 816050530 816050530 309762706 462742436 462742436 58794016 65672688 161992176 161992176 66842848 66842848 63314640 46358528 90564912 90564912 114912616 114912616 48261096 32768 0 44040920 113607496 613435592 613435592 482635208 742013570 742013570 138480095 436809232 441715350 441715350 268511892 54526128 88427516 119565173 377575817 377575817 792342494 792342494 352807349 504081618 573388944 1000721823 1000721823 477751278 579796976 579796976 111694299 9122920 220217408 220217408 56677776 870519866 940987102 940987102 217738778 943675814 943675814 583947093 716715700 831995745 831995745 806068230 806068230 671798277 256244805 430100838 434286950 434286950 201654608 439099906 439099906 232352300 415426634 415426634 701533385 701533385 1010963002 1010963002 951079916 692719786 692719786 814870627 814870627 606691367 544916397 498675598 498675598 748746305 748746305 688940040 688940040 204608268 76681800 153441352 153441352 146470756 72616584 205572616 211030208 211030208 81183872 81183872 9047296 12792000 12792000 11608896 167012818 418571506 418571506 895118819 980034646 980034646 575932978 191758820 719507700 719507700 554325204 193736240 193736240 932544576 932544576 876915864 876915864 839477304 839477304 634311817 684994661 684994661 721306755 1021946862 1021946862 398788990 398788990 188109334 405460230 405460230 413526342 413526342 413526342 655300564 857416280 857416280 491075034 491075034 392775740 321010648 362393168 558840888 588985185 647590657 647590657 619173960 387730570 470426822 873513483 941122597 941122597 256705690 940444262 954080967 957593411 957593411 945393668 945393668 706846724 943820822 991206225 991206225 135266820 459544924 459544924 201623552 201623552 404832272 404832272 35749984 650775648 663225465 663225465 168887408 267061636 267061636 135011900 242488220 242488220 142264108 93358592 153281480 202731776 202731776 264648800 264648800 210720840 210720840 203851400 146591556 146591556 114837140 383276370 383276370 85199024 85199024 319496722 319496722 86972432 43631736 26350176 27944800 27944800 79505408 79505408 356639500 500967780 500967780 274842694 1035216401 1035216401 227050242 1058563322 1058563322 660112573 442025622 442025622 634160328 634160328 587992113 576194744 101712408 41815792 623007464 623007464 549194865 575278136 575278136 542430881 642796201 642796201 68452513 50645137 650642724 740819173 740819173 259121757 753635056 753635056 686184753 590233033 590233033 468849654 896828384 896828384 796318653 679617112 679617112 671221764 413539170 1041713700 1041713700 966857449 966857449 641970466 738410385 738410385 491502702 491502702 477267824 705425992 744330788 744330788 470052493 345391178 361807936 361807936 83936896 542872616 542872616 481362500 481362500 171722560 56110720 302260386 302260386 106168448 239784348 394222816 487761424 487761424 393992666 393992666 88063232 106880712 464189446 464189446 224777400 69227540 26088400 63328992 63328992 124072536 124072536 222126352 238366464 238366464 49618960 49618960 195244611 806687679 902562507 936130150 936130150 769093820 881012842 881012842 454201968 862097492 862097492 742859766 742859766 1037244406 1037244406 974856995 974856995 459851190 242854049 442289814 442289814 304321436 969085421 969085421 809501827 911873715 911873715 600353434 622134400 622134400 12896448 1029736928 1029736928 31754535 626144128 626144128 608247945 288438124 288438124 271675392 271717122 271792448 286999554 293986402 293986402 42473552 42473552 2581760 277033026 277033026 299452850 299452850 61155696 61155696 19188000 19188000 488055492 488055492 365304042 475404942 1052892726 1052892726 767888943 679741509 496307338 496307338 438569110 738528590 818488515 818488515 634981531 593235633 1050434100 1068685663 1068685663 987792568 403626784 784713044 784713044 700934852 700934852 267175424 146164444 117624888 567204896 746820048 746820048 200068549 165708704 627612680 627612680 569510564 429818702 529447486 529447486 420748534 499224138 499224138 436236694 117588896 525497096 531678078 531678078 267872546 290104116 319031200 319031200 227357240 43399256 131569400 156826010 448665514 448665514 136885830 343967074 372127006 703342693 703342693 516631672 631454150 939983253 992552247 992552247 811733537 892214187 892214187 774047003 403387398 170630420 674613572 983904149 983904149 910881052 46170128 190489884 756085470 756085470 473509708 473509708 250030538 1315328 79822874 79822874 500236952 969558117 969558117 810075267 897616448 898679403 898679403 839669981 612126613 642721604 642721604 719781081 1006946319 1006946319 949792544 393832072 327280682 300790476 220430534 315426200 315426200 124070328 361373936 361373936 138806336 212077326 212077326 367202520 367202520 172902208 160216624 204920432 215175520 233195756 233195756 94507368 258961752 258961752 201266492 170803164 878101117 878101117 1020545982 1020545982 954693991 1024680148 1024680148 245470289 11134272 16859744 16859744 19398696 438211588 712404572 712404572 813506325 813506325 544001409 907808283 907808283 820601086 642851082 909404452 909404452 691323434 986983468 986983468 945868501 955370752 955370752 851742178 956473637 978221088 978221088 823056562 959495638 959495638 822349067 874825739 874825739 513137160 230166257 835591395 835591395 718089429 718089429 696468646 978259494 978259494 689584176 337329678 337329678 335728654 257097746 416942120 416942120 383192698 294944280 320913714 373309864 373309864 120249712 120414456 126407720 126407720 119014968 89610368 89610368 71352456 72991080 92927616 92927616 20971572 143722932 232106732 232106732 169584028 223420992 223420992 175267524 184599344 184599344 196870194 286266342 824119041 824119041 5577344 537002625 571564674 811966483 841928067 841928067 573573248 40723345 548965185 548965185 548195649 548761160 604410440 604410440 367253536 367253536 356879304 352263040 282463434 281356482 276888578 363018624 363018624 687090048 687090048 683935941 164733824 161530212 19664160 407628934 781863496 781863496 884614995 884614995 841802001 841802001 1063147509 1063147509 765685080 765685080 790891223 877152440 877152440 572081153 1025739534 1025739534 568140212 458229670 458229670 567333617 735178673 959203660 959203660 929040367 534284442 557868575 650215676 836272197 836272197 425513569 407257762 792072358 792072358 506086329 980435520 980435520 337670607 295750960 708145130 708145130 142098839 540382223 540382223 900374920 900374920 907681267 907681267 539886248 370150168 93716688 65544184 247821896 247821896 151257708 151257708 1064869288 1064869288 867319153 469125138 812378139 812378139 983860758 983860758 863277899 878434627 1058302135 1058302135 843589766 843589766 1029610671 1029610671 860346448 860346448 848302488 609651602 609651602 811846147 811846147 304121124 304121124 894241237 894241237 804154778 804154778 682148145 943867915 943867915 910221689 910221689 840985040 156388068 685061332 685061332 915592076 954193604 954193604 764967692 764967692 436033861 623417419 689195378 805811489 827657603 827657603 883234564 883234564 880087124 880087124 845694149 845694149 656015629 222298284 154028956 302833936 302833936 271396098 121247270 339160910 339160910 1048264688 1048264688 643044528 643044528 556073993 556073993 678766541 678766541 807471939 858470720 858470720 1051669246 1051669246 346873664 346873664 288494370 451562730 451562730 306249460 396176082 413072522 413072522 403491846 344042572 24418080 225382400 225382400 134771268 153914628 153914628 160522820 160522820 226963848 253662624 778476032 778476032 254575088 715278557 715278557 244062588 195835220 637797643 637797643 909206146 909206146 831046739 875022344 875022344 542575168 723950316 828416304 828416304 300419012 300419012 144785476 453501824 453501824 427756368 400988900 400988900 304138514 318612216 323824690 346892250 346892250 542402578 882950322 882950322 543559873 641671816 641671816 574496152 571484971 902120370 902120370 1056190540 1056190540 346348826 846138695 846138695 633379272 805813690 805813690 976516316 976516316 560589578 325615680 287441568 287441568 275911554 60082368 60082368 26591620 225761545 225761545 79876296 79876296 1061815470 1061815470 973119527 973119527 161237784 1026310243 1026310243 622860329 638323045 638323045 872579670 872579670 907752987 907752987 855261816 913543099 913543099 825365283 825365283 834885796 1026075240 1026075240 583788816 258831112 206577844 329703488 329703488 323299506 323299506 317129090 268908546 268908546 405363010 405363010 403235906 416230470 416230470 283505796 27341952 32253120 32253120 30996800 29525856 136350401 136350401 136364036 414542019 542116481 676798663 816745696 816745696 955629828 1007968553 1007968553 564765667 261280380 874550210 874550210 716361099 673969413 673969413 520632484 520632484 689382402 689382402 673523617 963329530 963329530 269243936 353598306 517730974 517730974 511076066 439667478 404790336 384037338 539848874 539848874 42577201 622977320 622977320 554704161 759140512 759140512 66190601 552616181 727634133 727634133 164565732 319209444 775048928 1054344927 1054344927 117331690 1057278015 1057278015 894197213 894197213 821641019 648931274 188319944 340052106 1000098500 1000098500 872768123 872768123 454566546 1028203708 1028203708 504366108 504366108 406847622 291400584 834283450 910251097 910251097 996557008 996557008 501504604 507665672 507665672 380393308 275717072 287832354 287832354 276152224 37757152 25239648 50731440 66932224 66932224 61192768 43503040 36456528 22491968 27499136 27499136 9643840 19153184 19153184 26739716 152062004 178030112 178030112 93244712 1058297300 1058297300 895274667 634894861 449128646 449128646 415574230 555769362 779026134 779026134 467321800 44679252 749486374 1035521731 1035521731 1034535521 678532078 764428443 768659498 768659498 711304164 419729552 624386556 624386556 808714828 887163277 887163277 911815349 959132967 959132967 279458069 465699924 951452656 951452656 443948405 422609040 309762706 462742436 462742436 835620403 835620403 999910920 999910920 1023885119 1023885119 480664753 168258560 90564912 743495416 743495416 734400372 482452486 482452486 239167684 304185554 304185554 613435592 613435592 482635208 482635208 64625798 189952032 463185556 463185556 63835208 241310116 241310116 250618756 250618756 377575817 861561672 861561672 792342494 664765058 504081618 579407008 1000721823 1000721823 870450703 870450703 877380256 877380256 817550280 211878928 130266176 130266176 810144064 810144064 229576854 229576854 520654736 520654736 386680382 570626048 831995745 831995745 665925603 527154741 425967550 353367552 474199562 474199562 167392998 201654608 201654608 181743828 97465448 302522389 940123143 940123143 704709650 1010963002 1010963002 951079916 692719786 692719786 885686664 885686664 606691367 544916397 498675598 498675598 748746305 748746305 161001520 177993300 177993300 181089492 181089492 141279444 140509572 49333200 49333200 38325072 70843464 78364416 78364416 76074824 77147848 77147848 76655112 76655112 77660736 77660736 895118819 895118819 575932978 575932978 191758820 719507700 879020455 879020455 262920572 262920572 76004589 658167492 790268229 1068422683 1068422683 839477304 634311817 684994661 684994661 721306755 1021946862 1021946862 685659648 510133662 510133662 1006867235 1006867235 413526342 413526342 413526342 638908455 638908455 252441660 1025245189 1025245189 343719960 310120338 310120338 133554984 366032482 366032482 356500328 342118554 325288044 487629094 873513483 941122597 941122597 377496824 228132879 121702488 29759712 59119844 945393668 945393668 706846724 943820822 991206225 991206225 142791818 993472464 993472464 580012727 741186820 741186820 107126325 69320744 650775648 663225465 826861246 826861246 698936412 890554923 890554923 866803813 741683981 194053221 793955925 793955925 732093856 766039280 766039280 264648800 191470064 256514868 256514868 249380380 238522252 193014376 383276370 409150448 409150448 54694034 319496722 319496722 64229552 51031600 51031600 96438818 402004986 402004986 250118648 250118648 211081434 491055690 491055690 274842694 149497284 227050242 350332618 453862384 453862384 425608882 425608882 412962464 131748472 68160152 361279554 361279554 101649296 623007464 623007464 76553864 62914800 119150136 353203738 353203738 67947528 340706171 660621656 660621656 740819173 740819173 655673913 975167195 975167195 383874103 106986854 612914582 655495737 655495737 715202901 715202901 139576273 671221764 671221764 413539170 1041713700 1041713700 966857449 966857449 594688792 963316133 963316133 804919293 804919293 977585168 977585168 744330788 744330788 689273378 689273378 959734671 959734671 355867906 542872616 681181696 681181696 481362500 168666474 67707912 302260386 302260386 118223928 239784348 394222816 487761424 487761424 393992666 393992666 88063232 106880712 464189446 464189446 224777400 139676896 139676896 63328992 63328992 124072536 124072536 222126352 238366464 238366464 58795568 49618960 183900048 183900048 56758704 110493040 110493040 269722152 881012842 881012842 93360739 390479464 390479464 322972736 125706168 125706168 94225080 94225080 57011232 40371600 35704240 29311280 279598944 279655746 279655746 882316288 882316288 911873715 911873715 130064560 536414587 536414587 518410676 701438275 1009466760 1009466760 954545477 684256130 684256130 470368262 965739373 965739373 1025767173 1025767173 630334218 202668808 389781490 389781490 341714320 341714320 331501856 327721536 327721536 268968368 52601440 47395536 49774544 333199762 804670345 804670345 366870860 366870860 962289863 962289863 767888943 695725864 1032072360 1033442923 1033442923 738528590 818488515 818488515 634981531 593235633 1044699962 1059072055 1059072055 403626784 496520406 678714409 696026264 732831093 732831093 797875328 797875328 117624888 606081376 746820048 746820048 73140672 67293192 76657856 76657856 68028160 82263048 82263048 49409344 49409344 25126496 25126496 13759424 117588896 525497096 531678078 531678078 295883106 295883106 181629159 275111970 335816064 335816064 62193740 437602452 923863807 923863807 470210952 760236459 760236459 703342693 703342693 516631672 631454150 939983253 992552247 992552247 811733537 811733537 774047003 774047003 403387398 189274436 674613572 983904149 983904149 910881052 270672112 836882813 836882813 756085470 744177359 1054159205 1054159205 831534682 898764690 898764690 708650727 969558117 969558117 830532670 214725650 638194713 839669981 839669981 570593478 1047054489 1047054489 1019265231 184080859 249752844 249752844 124088659 912216597 912216597 793415229 654542305 654542305 230172245 1073509605 1073509605 1001526670 869543644 869543644 469313872 469313872 412697618 468265236 468265236 204920432 214309068 214309068 164238564 316638614 530575584 530575584 521727516 878101117 878101117 1020545982 1020545982 954693991 1024680148 1024680148 822314286 949934711 984530691 984530691 885729827 889899547 899568633 899568633 119085889 105383064 219788852 219788852 121060152 91473576 642851082 642851082 266666628 366305796 986983468 986983468 945868501 955370752 955370752 361056267 592927523 869815953 869815953 603405297 959495638 959495638 822349067 874825739 874825739 513137160 230166257 835591395 835591395 718089429 718089429 436545777 978259494 978259494 689584176 268935252 187237412 146977568 51414944 181743028 192180980 192180980 185060256 51452128 50240592 50240592 120249712 120414456 120414456 72428232 72853544 89610368 89610368 71352456 72991080 92927616 92927616 22356256 143722932 232106732 232106732 152429508 155238564 155238564 175267524 184599344 184599344 173589012 173589012 164369824 164369824 37871760 33818640 7957648 7957648 3071232 573573248 573573248 547373121 576231889 576231889 345894474 345894474 604410440 615030016 615030016 356879304 356879304 88080552 283550688 283550688 276888578 363018624 557314945 697303968 697303968 696734021 685892037 702068016 702068016 792527924 816219722 822094979 822094979 1072423654 1072423654 719397333 719397333 10578197 636526864 666110841 790891223 790891223 390072361 422673048 1025739534 1025739534 613523852 613523852 207708745 567333617 735178673 959203660 959203660 130548984 519882020 519882020 8457922 6300032 6300032 281168014 281168014 792072358 792072358 506086329 368682976 368682976 404438028 404438028 322935918 472851870 472851870 470312864 470312864 900374920 900374920 354704457 89940288 18398120 58645040 88531768 88531768 247821896 247821896 151068708 209786984 1064869288 1064869288 867319153 469125138 469125138 101322768 983860758 983860758 863277899 878434627 1058302135 1058302135 843589766 843589766 1029610671 1029610671 860346448 860346448 562151483 93199488 300813840 300813840 272371458 304121124 304121124 894241237 894241237 804154778 804154778 606940425 943867915 943867915 910221689 956612967 956612967 185312355 685061332 685061332 915592076 954193604 954193604 764967692 764967692 971657793 971657793 689195378 715482231 715482231 583466677 814056705 814056705 880087124 880087124 845694149 845694149 626000458 546390282 546390282 830770246 877398523 877398523 794842506 339160910 339160910 1048264688 1048264688 596062980 568410056 36761152 17105188 7081344 124595640 151129964 858470720 858470720 1051669246 1051669246 292029858 288494370 288494370 751398444 751398444 721284752 396176082 413072522 413072522 716800328 716800328 565768161 232768513 554955616 673230596 673230596 26228736 26350176 156904064 226963848 226963848 778476032 778476032 677419392 4330624 84806944 84806944 94443552 316414714 316414714 567681184 654836745 654836745 537323778 542575168 542575168 723950316 828416304 828416304 300419012 300419012 162990704 329290740 427756368 427756368 400988900 400988900 117864490 318612216 323824690 346892250 346892250 284246353 573694675 573694675 543559873 641671816 641671816 574496152 571484971 822607553 822607553 1056190540 1056190540 901083071 846138695 846138695 411220839 805813690 805813690 976516316 976516316 560589578 425014054 425014054 287441568 334001008 334001008 258773900 26591620 166226464 689183244 689183244 202640161 1061815470 1061815470 796524729 269881879 161237784 973078534 973078534 622860329 638323045 638323045 808077150 808077150 907752987 907752987 1004557564 1004557564 1055445856 1055445856 547492161 834885796 834885796 491368809 438172058 202713612 241253024 329703488 329703488 323299506 323299506 317129090 268908546 268908546 405363010 405363010 405207362 416230470 416230470 283505796 10618336 20683712 20683712 12028096 14457344 136350401 136350401 136364036 414542019 542116481 676798663 676798663 383651144 955629828 955629828 964605346 964605346 454468683 874550210 874550210 716361099 796410316 796410316 507004157 471886044 604180173 891032461 891032461 431877990 379017024 269243936 269243936 394434072 394434072 319909338 404790336 404790336 327177062 280619770 618432424 618432424 638993841 638993841 554704161 759140512 759140512 36480289 39032396 639316716 705828393 705828393 616562889 572064473 193267233 943722180 943722180 38273159 2361600 836096 11652224 503639552 503639552 188319944 844474569 844474569 723256073 710485653 710485653 454566546 1028203708 1028203708 553661084 553661084 860979252 882354371 882354371 474165390 567456489 996557008 996557008 755029801 755029801 507665672 683102593 750772064 765897645 765897645 613125988 27069696 563808 34303936 66932224 66932224 33950784 33950784 27040864 46430800 46430800 43012096 43012096 38076432 38076432 3197216 19153648 184640246 282116802 282116802 373837490 373837490 634894861 634894861 348963690 348963690 408337546 555769362 779026134 779026134 821532772 821532772 749486374 1035521731 1035521731 1034535521 409707724 764428443 764428443 711304164 711304164 398871010 624386556 624386556 779570143 779570143 713105493 713105493 806429187 806429187 201066613 465699924 951452656 951452656 818092514 818092514 40126784 348823642 348823642 835620403 835620403 999910920 999910920 1023885119 1023885119 480664753 221278264 221278264 743495416 743495416 734400372 482452486 543972641 543972641 304185554 304185554 541139055 541139055 340267220 548438279 548438279 337121970 463185556 463185556 76092976 241310116 241310116 250618756 250618756 80863944 861561672 861561672 712214126 675523532 744224397 744224397 579407008 130769920 870450703 1051337296 1051337296 877380256 817550280 249029896 249029896 324208176 810144064 810144064 609810103 454767166 565180742 710852099 897766465 897766465 596994810 623475225 623475225 527154741 425967550 353367552 474199562 474199562 318584676 154733256 496172538 496172538 215432420 466235194 940123143 940123143 704709650 1031803638 1031803638 959237415 959237415 155502756 885686664 885686664 561518540 492855437 529199150 529199150 487179372 329157780 440533038 517084824 517084824 233841500 233841500 141279444 140509572 101041992 209985688 503794852 503794852 327153764 371649316 371649316 395834106 395834106 374554666 345276938 387576326 387576326 239323654 348391626 348391626 270918088 1039520446 1039520446 879020455 879020455 262920572 262920572 76004589 796133952 796133952 1068422683 1068422683 148111777 588146833 588146833 215487560 178054964 72196172 685659648 685659648 510133662 510133662 1006867235 1006867235 218288172 218288172 303333376 638908455 638908455 218626092 1025245189 1025245189 348963868 310120338 310120338 100716426 77175296 95830512 106355352 409020534 483894188 487629094 487629094 453107894 918962630 1051321695 1051321695 887867679 937115459 937115459 439115045 419942480 419942480 312502896 409467720 409467720 290852494 993472464 993472464 707507569 741186820 741186820 89314441 554488224 554488224 504851593 826861246 959251152 959251152 890554923 890554923 866803813 741683981 194053221 793955925 793955925 732093856 766039280 766039280 258789668 180531524 256514868 313738446 313738446 238522252 405327922 405327922 409150448 409150448 121799354 372315690 372315690 64229552 51031600 51031600 96438818 402004986 402004986 250118648 745947173 750823628 1013323087 1013323087 775034861 924133645 1009193771 1009193771 453862384 731162120 731162120 568903844 131748472 131748472 68160152 361279554 361279554 101649296 349691466 349691466 76553864 62914800 119150136 353203738 353203738 67947528 340706171 660621656 829265133 964716636 964716636 655673913 975167195 975167195 412975298 151134261 612914582 736223733 736223733 608651857 490362894 507694474 507694474 327440736 320897348 285491808 278186562 546620516 594688792 594688792 963316133 963316133 827592707 827592707 977585168 977585168 1062117416 1062117416 844107742 985022685 1002440528 1002440528 933790043 457200029 681181696 872524921 872524921 820527434 820527434 352411808 407946428 407946428 118223928 119796024 363041952 363041952 65931344 65931344 65411568 65411568 63547824 187439552 197793012 197793012 159739188 61282068 56187248 56187248 152457225 152457225 220932844 220932844 762481769 762481769 562649085 821684163 821684163 812407596 812407596 304515080 371380506 371380506 447532374 868972302 868972302 285832782 141742980 141742980 942173553 942173553 705217184 556551432 626896822 626896822 310169490 302607232 279655746 882316288 882316288 612004553 340264136 83364234 536414587 536414587 518410676 701438275 1009466760 1009466760 954545477 944778688 944778688 470368262 965739373 965739373 1025767173 1025767173 630334218 202668808 389781490 389781490 341714320 341714320 331501856 602453985 602453985 549821360 549821360 644938831 879337867 879337867 804670345 1043629982 1043629982 755312685 962289863 962289863 695725864 695725864 1032072360 1033442923 1033442923 546446421 556270930 556270930 172163379 987093056 1044699962 1044699962 738445984 381848740 496520406 496520406 914513595 914513595 732831093 797875328 797875328 34886724 606081376 747903784 747903784 752932288 752932288 543575944 615522476 615522476 83751584 82263048 38273600 38273600 66175984 66175984 10670400 27505568 27505568 474215306 474215306 362012816 295883106 181629159 275111970 335816064 335816064 208682176 437602452 923863807 923863807 470210952 760236459 760236459 586744180 930752413 930752413 754591586 941959447 941959447 571683345 328938580 171516308 199956900 199956900 189274436 189274436 137414976 411059780 621320197 621320197 270672112 836882813 836882813 608910686 744177359 1054159205 1054159205 831534682 898764690 898764690 708650727 570739866 830532670 978223232 978223232 336579011 115639888 346819969 346819969 1047054489 1047054489 1019265231 711115154 302006790 302006790 124088659 912216597 912216597 793415229 654542305 654542305 230752725 1073509605 1073509605 1001526670 869543644 869543644 469313872 469313872 412697618 468265236 468265236 200466100 214309068 214309068 164238564 316638614 530575584 530575584 521727516 521727516 253136940 253136940 498112924 498112924 327890830 822314286 822314286 949934711 984530691 984530691 885729827 889899547 899568633 899568633 119085889 105383064 105383064 105383064 105383064 50386352 54657056 56791072 56791072 46518528 665338728 985743665 985743665 551660848 551660848 839541296 839541296 823916067 58979347 32216640 31592928 128636240 128636240 94503016 69255176 102355984 134478400 134478400 111115400 160362096 160362096 64134276 202833920 202833920 185980432 187237412 187237412 150274048 150274048 181743028 192180980 192180980 185060256 87950680 100214760 100214760 131733240 131733240 76986448 76986448 127612536 133076824 133076824 62378184 62378184 6827264 22206512 61260384 61260384 48380448 27525216 54593536 54864048 54864048 167306512 167306512 30523552 33866370 268699650 805322257 805322257 37871760 538693953 580013010 580013010 312401490 819908816 819908816 547373121 576231889 576231889 11922240 11922240 287966976 615030016 615030016 70556576 70556576 83500520 283550688 283550688 353325056 353325056 557314945 697303968 697303968 696734021 685892037 702068016 702068016 792527924 816219722 822094979 822094979 1072423654 1072423654 896132523 1026097579 1026097579 1025556783 1006755855 1006755855 914440276 277898408 277898408 37822512 996182590 996182590 613523852 207708745 70534272 460974768 460974768 1036330093 1036330093 273419394 323346448 625036975 625036975 360294368 517736118 517736118 476843718 476843718 144922946 368682976 368682976 404438028 404438028 322935918 472851870 472851870 470312864 470312864 115411352 115411352 89940288 89940288 55710384 69545648 106054920 106054920 169025237 169025237 203949324 232041733 895675800 895675800 568102676 637026678 637026678 500171502 881989269 881989269 480251138 480251138 358062050 69100756 584788116 718873792 1068444485 1068444485 566661224 176449872 830745764 830745764 754993539 432098309 272371458 102967832 168822702 255075747 858073395 858073395 790997403 313820337 929030249 929030249 850095172 956612967 956612967 587874672 587874672 330665813 115683259 319153733 319153733 353184296 628420617 971657793 971657793 937294279 937294279 825503306 686727156 880853323 880853323 270911891 678530624 678530624 626000458 629793897 875095361 875095361 830770246 877398523 877398523 794842506 132356524 150939420 208781072 208781072 113812864 44903760 282226882 282226882 5842560 26090592 26090592 285081856 285081856 306786466 498746642 498746642 412800844 257724028 751398444 751398444 721284752 108210588 205685452 240173724 716800328 716800328 565768161 544736544 554955616 673230596 673230596 138781637 138781637 156904064 694234213 694234213 540727500 677419392 780473609 780473609 610876669 84806944 94443552 114761272 114761272 47598784 47598784 402255904 402255904 367169962 367169962 337850634 67232384 67232384 713385009 713385009 628953260 628953260 822626066 822626066 305974919 132275836 790508012 978957933 978957933 595830659 278987888 512791884 512791884 315237512 630261089 630261089 872062413 872062413 557381907 538335465 583641869 691537701 901083071 901083071 426803287 348701898 958326608 958326608 199204381 396103810 396103810 378628416 425014054 425014054 308440912 334001008 335822648 335822648 342367360 342367360 689183244 689183244 202640161 685790613 702154725 702154725 665789308 667580024 973078534 973078534 402653207 573028668 573028668 950450444 950450444 439519245 293733526 1004557564 1004557564 1055445856 1055445856 547492161 880169672 880169672 668127993 594976460 254699672 254699672 334078108 334078108 37999328 109726140 291516900 291516900 289720482 289720482 405207362 405207362 23568800 23301408 23301408 13023008 20683712 20683712 16388160 14867328 14867328 17259200 21799840 22810272 24429824 24429824 8884096 8884096 11454208 283741767 964605346 964605346 454468683 865438904 865438904 580960593 796410316 796410316 692204657 471886044 604180173 891032461 891032461 487891581 487891581 350850257 350850257 271651590 271651590 319909338 319909338 520258473 755077747 1053347923 1053347923 989005458 638993841 638993841 175642169 811101105 811101105 536980185 536980185 639316716 705828393 705828393 616562889 572064473 193267233 943722180 943722180 945815943 945815943 901529820 901529820 829970336 829970336 392290746 860923211 860923211 723256073 710485653 710485653 521191562 660144289 660144289 553661084 553661084 860979252 882354371 882354371 474165390 567456489 567456489 561169352 755029801 755029801 417456582 683102593 750772064 765897645 765897645 613125988 61470964 61470964 34303936 34303936 201319124 201319124 42087424 138518672 139839188 180676180 180676180 147288644 176558084 176558084 142921760 51660896 184640246 282116802 282116802 373837490 373837490 266177666 301307912 301307912 338689290 408337546 408337546 406199046 414644801 975133223 975133223 492342919 492342919 485960783 357107458 409707724 948027729 948027729 1040197924 1040197924 537276614 348524744 348127434 779570143 779570143 713105493 713105493 806429187 806429187 415641428 595739125 971436197 971436197 818092514 818092514 979856520 979856520 548123979 548123979 524044974 422272495 139206672 172829844 172829844 33623172 221278264 221278264 171176724 631650525 631650525 247545132 543972641 543972641 164490468 286337546 541139055 541139055 340267220 548438279 548438279 337121970 337121970 138412164 76092976 41052488 1427776 208440960 208440960 395143128 395143128 712214126 712214126 675523532 744224397 772050796 772050796 657498833 753950741 1051337296 1051337296 258742080 258742080 249029896 249029896 324208176 324208176 779605607 779605607 454767166 565180742 710852099 897766465 897766465 602961947 488248878 448990982 955464205 955464205 850783068 850783068 673539396 673539396 110174288 496172538 496172538 215432420 466235194 466235194 693109398 693109398 1031803638 1031803638 959237415 959237415 833659456 813768771 595665009 595665009 686144808 686144808 529199150 487179372 329157780 440533038 517084824 517084824 233841500 407510036 407510036 404224518 405507840 405507840 503794852 503794852 327153764 371649316 371649316 395834106 395834106 374554666 345276938 387576326 387576326 822198395 822198395 116911990 674100123 1039520446 1039520446 331879182 331879182 572869888 726620253 726620253 796133952 796133952 4403328 59114528 59114528 25301056 2162688 574464 8934086 408606342 434805638 434805638 423243470 99039720 51589422 51589422 207778084 207778084 179172956 248064912 386874426 386874426 294870720 348963868 348963868 83102448 290243490 290243490 367885914 367885914 500447638 500447638 483894188 483894188 419451026 419451026 918962630 1051321695 1051321695 887867679 937115459 937115459 439115045 276965520 312502896 312502896 202391682 626925225 626925225 824391458 824391458 707507569 184441400 184441400 38945092 780674404 780674404 504851593 131146488 959251152 959251152 118310064 118310064 1042662238 1042662238 765313480 765313480 542951180 542951180 209208377 258789668 258789668 180531524 363550058 363550058 313738446 75591788 405327922 405327922 438060240 438060240 475506828 475506828 432868512 163905712 203540056 203540056 17614496 914028393 914028393 891885993 745947173 750823628 1013323087 1013323087 775034861 924133645 1009193771 1009193771 242518414 731162120 731162120 568903844 227104940 227104940 219022860 218399840 59672128 9227328 8454144 144971580 144971580 127803000 209139484 209139484 106704080 48639312 48639312 562564497 829265133 964716636 964716636 633739385 617630351 617630351 713240714 868395471 868395471 736223733 736223733 997408270 997408270 871351312 871351312 419534853 321868545 733481494 733481494 565497108 875696907 879303379 879303379 869610415 898574027 898574027 957087904 957087904 1062117416 1062117416 844107742 985022685 1002440528 1002440528 933790043 457200029 93301873 872524921 872524921 820527434 820527434 352411808 407946428 407946428 79136680 119796024 436146344 436146344 268574800 268574800 65411568 65411568 63547824 719877633 719877633 676805253 159739188 147299553 538822516 599180656 599180656 598031909 220932844 220932844 762481769 762481769 562649085 912024528 937001447 943150037 943150037 793163781 645424911 371380506 447532374 868972302 868972302 386665530 141742980 543245744 942173553 942173553 705217184 556551432 626896822 626896822 338351618 338351618 584979952 584979952 811539208 811539208 340264136 83364234 24939872 25806464 25806464 16900128 31795680 76419496 76419496 944778688 944778688 892408736 892408736 295249506 295249506 288099328 295962978 295962978 135580676 172415124 172415124 147493520 147493520 602453985 602453985 702714144 702714144 644938831 879337867 879337867 429518319 1043629982 1043629982 755312685 755312685 385949754 385949754 674244611 951335974 1008405260 1008405260 1027019815 1027019815 556270930 782660941 987093056 987093056 928737417 928737417 413096085 299798080 893650447 914513595 914513595 804953005 804953005 705464069 634050541 628569032 747903784 747903784 752932288 752932288 543575944 615522476 615522476 89505800 89505800 38273600 38273600 66175984 66175984 10670400 27505568 520327608 520327608 818187152 818187152 546380218 546380218 101982864 101982864 75694864 208682176 208682176 135014956 239210652 264245344 961335292 961335292 1026869876 1026869876 930752413 754591586 941959447 975250256 975250256 853358705 593131268 322356486 422727750 422727750 408020994 168243906 11608896 217507346 327982996 327982996 130312332 177209940 470833580 470833580 433661054 437391736 744931600 744931600 118235198 319105074 319105074 181375138 978223232 978223232 336579011 275108800 410221202 884761159 884761159 677825990 1015859804 1015859804 316155610 316155610 303394864 303394864 84279936 100673552 602074336 602074336 632868380 879241488 879241488 292028930 1010828366 1010828366 522322238 522322238 265976574 211140416 200466100 200466100 30475744 146877760 146877760 218343716 439387076 439387076 227617566 101265584 88741032 54731800 9535744 12921472 12921472 9437760 76980616 76980616 63839728 102969328 112235512 538595472 538595472 194812781 114375808 120391976 189015436 189015436 67190848 75620424 75620424 56791072 56791072 472068808 665338728 985743665 985743665 61923999 898985560 898985560 839541296 823916067 58979347 32216640 31592928 17311264 61716032 61716032 2777216 34701824 169380880 169380880 134345632 134345632 45983200 50147280 718111365 718111365 62471808 736522577 736522577 172303872 172303872 109193292 647615629 647615629 165299824 575091305 575091305 100214760 131733240 131733240 76986448 76986448 127612536 133076824 133076824 62378184 62378184 16891936 22206512 61260384 61260384 62990784 62990784 54593536 54864048 54864048 167306512 167306512 184864288 184864288 268699650 805322257 805322257 35337744 538693953 853611872 853611872 312401490 819908816 819908816 602766016 51944864 89916994 884288331 884288331 354658891 287966976 286809666 70556576 70556576 29434592 285009792 353572384 353572384 353325056 336456872 336456872 83921600 29809408 11665440 20736289 316461641 875403776 980420994 980420994 958018199 199045666 878789664 896132523 1026097579 1026097579 1025556783 1006755855 1006755855 914440276 513048720 513048720 1060295487 1060295487 996182590 942295628 942295628 650168401 871212177 871212177 1036330093 1036330093 273419394 323346448 625036975 625036975 360294368 517736118 1046741782 1046741782 545311040 545572929 545572929 8407041 4352 2228224 35787024 482351819 708203025 945720467 945720467 749472856 749472856 376442898 295496840 384143168 384143168 106054920 106054920 252045372 252045372 203949324 587465064 702669045 702669045 568102676 637026678 637026678 975637576 975637576 881989269 704827413 655808069 777144433 777144433 676857477 556074268 1068444485 1068444485 369547290 176449872 830745764 830745764 754993539 949102667 949102667 954533026 954533026 520409117 858073395 1010850479 1010850479 809812739 929030249 929030249 420134518 834888304 834888304 587874672 856062656 856062656 1060449087 1060449087 1039914886 1039914886 424095912 606258461 736194969 937294279 937294279 825503306 791204397 889841451 889841451 270911891 661950376 661950376 557941769 629793897 875095361 994689248 994689248 359146562 359146562 491052210 491052210 159856740 698199652 698199652 688283180 684245860 684245860 282226882 225575404 225575404 219350564 567357520 574292945 656751564 656751564 498746642 412800844 257724028 669897876 669897876 29434080 29434080 149436744 149436744 145736716 214957260 214957260 544736544 544736544 155226148 155226148 152985124 138781637 21306829 694234213 694234213 540727500 540727500 780473609 780473609 610876669 707206449 707206449 928124097 928124097 605637208 615047875 615047875 375390538 396386715 930210747 930210747 607233417 606626682 713385009 713385009 628953260 628953260 822626066 822626066 305974919 132275836 790508012 978957933 978957933 595830659 284755456 512791884 512791884 401325292 630261089 630261089 872062413 872062413 188553124 188553124 806413684 806413684 318868479 318796228 318796228 348701898 958326608 958326608 597645483 649371830 885245248 885245248 359204416 308440912 308440912 300797250 335822648 335822648 342367360 342367360 554720801 554720801 153800973 685790613 702154725 702154725 665789308 667580024 667580024 554832416 780528229 780528229 606464265 950450444 975549214 975549214 325243314 561025160 624087849 624087849 358277027 728259959 880169672 880169672 930632158 930632158 254699672 384944608 384944608 334078108 870675873 870675873 325332396 556679591 556679591 470644814 470644814 415761606 837754023 837754023 425803872 545331393 545331393 16388160 16388160 14867328 14867328 17259200 21799840 22810272 24429824 24429824 8286592 140933072 548152578 943067027 943067027 954550736 954550736 944784135 944784135 583143633 549621941 692204657 692204657 317444246 59376002 308069506 308069506 487891581 487891581 350850257 350850257 47077680 1098240 1098240 350258240 520258473 755077747 1053347923 1053347923 989005458 685156485 222893897 175642169 1028443664 1028443664 536980185 536980185 851745532 1019883639 1019883639 981709250 997147261 997147261 500174248 500174248 945815943 945815943 901529820 901529820 829970336 829970336 392290746 860923211 860923211 634947140 755540084 755540084 704643093 337207944 339871280 339871280 60417764 60417764 220215070 293810274 352168802 352168802 348910794 162337704 417407298 417456582 417456582 298565924 164978448 164978448 161555876 38872068 155345220 155345220 47154176 25614432 201319124 201319124 42087424 138518672 139839188 180676180 180676180 147288644 176558084 176558084 142921760 51660896 36707136 61359216 61359216 89205184 414858708 414858708 301307912 301307912 67529698 207696792 207696792 205656204 470104584 975133223 975133223 367475178 485960783 921772464 921772464 898630251 948027729 948027729 1040197924 1040197924 537276614 386665530 386665530 363194730 485880162 485880162 347030291 347030291 415641428 589430938 813715911 971436197 971436197 438354044 444834068 979856520 979856520 548123979 548123979 969224561 969224561 728554983 926469947 926469947 518357173 51393516 236114460 594231392 594231392 550098508 130155960 130155960 27736416 94312488 98120160 319291510 319291510 222299276 458227770 458227770 210419890 457888950 457888950 442939654 338453788 174652460 104196032 204218589 824525697 824525697 309108776 856459145 861668656 861668656 772050796 772050796 657498833 753950741 812135052 812135052 936560736 936560736 493344846 235250262 1062901718 1062901718 779605607 779605607 306349520 424129696 424129696 150859340 602961947 602961947 576502657 662042931 955464205 955464205 850783068 850783068 673539396 982037645 982037645 265067097 667975965 667975965 955977624 955977624 553723625 965747374 965747374 563102465 784098183 833659456 833659456 918650184 918650184 595665009 686144808 814030211 814030211 942476401 942476401 440424898 954539220 954539220 834772437 436467844 818456834 996861024 996861024 405507840 364800150 421542240 421542240 90703272 69737696 98965992 98965992 67636224 67373064 323217592 323217592 822198395 822198395 607530528 674100123 674100123 728367332 728367332 667119197 641470233 776004560 776004560 223871660 144312920 704972988 704972988 177087713 554198561 554198561 173537940 173537940 408606342 699709768 699709768 505490302 505490302 873670961 873670961 207778084 443574424 443574424 1022737073 1022737073 386874426 710049969 710049969 307252338 88917768 290243490 365696994 367885914 367885914 502551486 502551486 420606476 337690894 337690894 101794600 547184032 754905864 754905864 701997176 611803581 194344576 194344576 430190212 430190212 163130454 53994905 626925225 626925225 121538569 657701537 657701537 710934696 710934696 582013477 780674404 780674404 637805633 675611726 940575944 940575944 438045392 377750028 1042662238 1042662238 765313480 765313480 634159108 634159108 736757948 736757948 541652448 583692676 929087971 929087971 491967150 819466753 819466753 677093392 677093392 438060240 475506828 596716336 686049632 686049632 653803896 653803896 574743728 914028393 914028393 891885993 228444974 586572102 586572102 674817146 714130005 949146049 949146049 853590483 833949338 833949338 309134273 218499116 227104940 227104940 219653352 331875710 331875710 235365140 271686954 750782465 750782465 153093120 209139484 445133846 445133846 221984464 496274386 543193260 547688568 662887462 662887462 596234880 596234880 471332211 713240714 868395471 868395471 281202882 289863050 997408270 997408270 871351312 871351312 553919780 555781952 733481494 733481494 822688433 875696907 879303379 879303379 869610415 898574027 898574027 495353893 877909744 877909744 402934788 797957220 1070357530 1070357530 658871349 658871349 83906560 163880 130567032 130567032 117213912 117213912 132465648 236821780 331017370 331017370 327946282 436146344 436146344 398719352 398719352 316739970 316739970 175645138 719877633 719877633 676805253 147299553 147299553 538822516 599180656 680429944 680429944 642826853 552261057 24009120 62553504 890610700 912024528 937001447 943150037 943150037 982862312 982862312 484742131 395325226 395576896 1016977374 1016977374 907863379 659308963 543245744 226331700 692373281 771811869 771811869 588843224 795134412 795134412 725975115 584979952 811539208 811539208 548271427 548271427 873021962 873021962 25806464 16900128 31795680 31795680 632427074 897716331 897716331 892408736 892408736 295249506 295249506 288099328 295962978 295962978 394860944 394860944 336602240 336602240 273236608 101712304 18874656 702714144 702714144 26368512 26368512 134889736 265385716 562406884 916068556 979111575 979111575 215458883 743720448 743720448 951335974 1008405260 1008405260 1027019815 1027019815 411306146 782660941 782660941 548600017 928737417 928737417 440368712 440368712 893650447 893650447 763660192 804953005 804953005 705464069 634050541 628569032 628569032 210763780 210763780 147200196 99888068 202560196 330616370 330616370 593944273 593944273 881689674 881689674 421315371 684971684 795550949 893499133 893499133 818187152 930312197 930312197 910243873 609296932 339804549 279060640 205109324 287346060 875800682 875800682 869995585 961335292 1001436512 1026869876 1026869876 299313890 299313890 318857776 975250256 975250256 853358705 593131268 331205472 422727750 422727750 408020994 168243906 11608896 217507346 327982996 451036288 451036288 447403350 470833580 470833580 433661054 437391736 744931600 744931600 523622194 1040798966 1040798966 595574682 595574682 356285328 656727014 656727014 410221202 884761159 884761159 677825990 1015859804 1015859804 316155610 316155610 384035153 809077813 809077813 650591597 444512654 552638534 660266737 660266737 425964238 660553592 1010828366 1010828366 522322238 522322238 322719267 413112896 413112896 693503455 982700631 982700631 642766932 642766932 865109522 865109522 822691674 999606903 999606903 574902712 904366673 904366673 649612921 883426635 883426635 873600576 545366336 545366336 658698569 666051545 754692581 754692581 687074717 687074717 552787569 189015436 701850377 701850377 782617238 1050106455 1050106455 701706531 852045296 852045296 556196388 723535441 898985560 898985560 722868789 722868789 843773971 843773971 810641331 690626976 435159856 108053400 108589720 164566164 169380880 169380880 209764516 209764516 106854457 555652073 718111365 718111365 40428788 736522577 736522577 172303872 264272584 264272584 647615629 647615629 622486916 622486916 716371909 716371909 707438144 32691200 32691200 11659712 9122880 27417984 27417984 23331072 23331072 16891936 20179264 27579136 46211236 62990784 62990784 167221792 167221792 166123088 166123088 60592596 184864288 184864288 162032324 163056128 163056128 22358688 38016128 853611872 853611872 564659553 564659553 602766016 602766016 20536160 546378209 884288331 884288331 626970152 626970152 568253480 93508200 29434592 29434592 285009792 353572384 353572384 342692768 336456872 336456872 82129696 82129696 14889408 21080176 316461641 875403776 1055587851 1055587851 958018199 780144089 597229589 597229589 345381638 345381638 278272591 673186053 872742969 872742969 513048720 513048720 1060295487 1060295487 344491008 942295628 942295628 650168401 871212177 871212177 838618814 511791040 256193948 256193948 174496580 302565902 302565902 213913232 1046741782 1046741782 704741650 704741650 545572929 781053816 783168893 783168893 604478277 482351819 708203025 945720467 945720467 749472856 749472856 420772262 379529966 384143168 384143168 250609636 191558048 252045372 252045372 189130932 587465064 702669045 749224336 1052819677 1052819677 492438215 975637576 975637576 929708201 929708201 655808069 777144433 777144433 676857477 587235953 596656177 596656177 369547290 76192884 714006710 714006710 675547269 949102667 949102667 954533026 1040453072 1040453072 822482979 1010850479 1010850479 843073248 865650291 865650291 686530118 972590823 972590823 737454768 856062656 856062656 1060449087 1060449087 1039914886 1039914886 142618820 547419152 579417413 630112272 713501757 713501757 791204397 889841451 889841451 284271485 1069916446 1069916446 828688803 94421352 362857800 994689248 994689248 359146562 359146562 491052210 491052210 159856740 698199652 698199652 688283180 684245860 684245860 73764008 225575404 225575404 219350564 567357520 574292945 656751564 656751564 203164456 185506164 185506164 669897876 669897876 589650961 673532012 673532012 254967868 645289344 676217605 676217605 689720608 689720608 541904001 538723200 152985124 6163968 678037000 741417741 741417741 140851717 261221088 261221088 246292576 248185332 707206449 707206449 928124097 928124097 605637208 615047875 615047875 375390538 396386715 930210747 930210747 607233417 606626682 402161954 157371120 172229264 537928484 980500871 980500871 32167108 316703794 665851320 665851320 281548577 482219256 482219256 447038478 447038478 504244348 504244348 229957444 877425474 877425474 815211353 815211353 806413684 806413684 755008856 755008856 1064077357 1064077357 803627165 796413044 597645483 649371830 885245248 885245248 9253952 9120832 9120832 1307136 3419520 3419520 3536772 141817732 141817732 135874436 137687564 137687564 76339400 72251072 86503960 255143976 554832416 554832416 780528229 780528229 606464265 606464265 975549214 975549214 325243314 678320152 795481533 795481533 547363050 728259959 728259959 797871826 930632158 930632158 509056982 384944608 384944608 150994976 870675873 870675873 325332396 556679591 556679591 470644814 470644814 415761606 837754023 837754023 425803872 545331393 545331393 13630656 12982464 12982464 9880320 14364672 14364672 13681344 13681344 33003424 33003424 140933072 548152578 943067027 943067027 954550736 954550736 944784135 944784135 583143633 547356993 547356993 671281735 982614853 986322799 986322799 995808951 995808951 866916896 55315632 285922478 342412340 342412340 268487874 350258240 501391682 501391682 193306082 723963960 723963960 685156485 707572992 707572992 1028443664 1028443664 408420482 534530144 851745532 1019883639 1019883639 981709250 997147261 997147261 894047403 500174248 462294860 717144082 717144082 193464365 135007576 125491128 125491128 649802956 940078817 940078817 755540084 755540084 704643093 328303144 424674868 424674868 433336560 433336560 199539004 248986332 248986332 173062152 162337704 162337704 162310724 93138024 136103492 136103492 164978448 164978448 161555876 38872068 155345220 155345220 47154176 153396032 153396032 26213888 26737248 26737248 5817984 5817984 20365472 20365472 7390080 11933648 11933648 36707136 36707136 61359216 61359216 20571392 414858708 414858708 206943928 206943928 84219144 207696792 207696792 205656204 470104584 470104584 658800818 876923019 876923019 921772464 921772464 898630251 139009627 117839928 117839928 378008672 386665530 386665530 386665530 363194730 485880162 485880162 279284422 277219328 125829240 589430938 813715911 813715911 438354044 438354044 767979680 1015445573 1015445573 112569170 112569170 969224561 969224561 728554983 926469947 926469947 518357173 91238776 236114460 594231392 645637449 645637449 130155960 592053225 592053225 30249768 354730122 842062507 842062507 388661690 925894569 925894569 385884432 457888950 457888950 442939654 338453788 174652460 104196032 201623004 824525697 824525697 309108776 856459145 861668656 861668656 542392993 69804193 69804193 615576282 845361555 845361555 936560736 936560736 493344846 377691272 1062901718 1062901718 478341385 274908176 105930832 1020616816 1020616816 928289447 777726673 691014770 691014770 662042931 764468048 791025981 791025981 293627490 716660640 982037645 982037645 265067097 667975965 667975965 955977624 955977624 553723625 965747374 965747374 506495642 784098183 784098183 432409444 918650184 918650184 547422555 524887230 814030211 814030211 942476401 942476401 440424898 954539220 954539220 834772437 709492738 818456834 996861024 996861024 302829074 364800150 421542240 1000202887 1000202887 391569964 389482814 366841274 366841274 241454386 489009460 505536798 1023742584 1023742584 636001368 607530528 600178948 728367332 728367332 759292077 759292077 776004560 776004560 702932304 542501505 704972988 704972988 177087713 582075664 582075664 540653473 173537940 62246864 699709768 699709768 505490302 505490302 873670961 873670961 137499396 443574424 443574424 1022737073 1022737073 264918028 710049969 710049969 98075728 88917768 274748376 365696994 365696994 44582512 502551486 502551486 144752748 337690894 956309807 956309807 939597831 1003671651 1003671651 434701413 179764752 194344576 949088352 949088352 572909156 555396614 93590546 396238458 396238458 362057306 384864492 384864492 751883272 751883272 685381317 138412164 637805633 637805633 1008496128 1008545295 1008545295 438045392 746851908 746851908 436735065 673237216 673237216 693000645 693000645 736757948 736757948 541652448 583692676 929087971 929087971 491967150 819466753 819466753 677093392 680825026 948194823 948194823 596716336 686049632 686049632 653803896 653803896 574743728 104514504 56223408 227491612 238785244 586572102 586572102 674817146 714130005 949146049 949146049 853590483 833949338 1050215751 1050215751 694755552 698180267 698180267 345303594 728418141 728418141 445636250 405126080 750782465 750782465 701812673 687131589 445133846 445133846 221984464 496274386 545563964 547688568 662887462 662887462 445073864 445073864 403682760 338574431 882519305 882519305 750271355 871442333 871442333 834325056 834325056 553919780 553919780 806766849 806766849 539269635 822688433 822688433 550774112 830618722 830618722 806160384 805905411 39771792 877909744 877909744 299496009 797957220 1070357530 1070357530 658871349 658871349 598029064 755668792 755668792 759694509 979608290 979608290 135271384 282516162 331017370 331017370 327946282 80063856 80063856 398719352 398719352 316739970 316739970 304611814 304611814 172032896 708125284 708125284 180301712 540116160 540116160 680429944 680429944 757275644 757823853 804181704 804181704 890610700 890610700 801735805 801735805 616284276 982862312 982862312 484742131 395325226 395325226 1016977374 1016977374 911044572 664626019 298967075 124618785 692373281 771811869 771811869 588843224 795134412 795134412 725975115 433018383 547025866 547025866 548271427 548271427 873021962 873021962 673612804 606500105 149619877 73545864 632427074 897716331 897716331 360854606 360854606 17369696 94250304 94439464 94439464 272016616 394860944 394860944 336602240 336602240 273236608 550420673 563574721 563574721 26348320 479901880 479901880 591180021 591180021 265385716 916068556 979111575 979111575 847272011 743720448 743720448 969224759 969224759 927599332 735843015 324928054 411306146 411306146 411328736 463316004 463316004 413848902 440368712 440368712 310662794 385753050 385753050 350359056 87454656 605260072 605260072 203944744 203944744 693880520 693880520 221387141 213119820 213119820 330616370 330616370 593944273 593944273 881689674 881689674 421315371 684971684 795550949 893499133 893499133 718452770 930312197 1022100956 1022100956 998770635 998770635 1056032790 1056032790 971845095 875800682 875800682 869995585 869995585 1001436512 1001436512 319865122 289481250 289481250 318857776 811783108 811783108 447905909 324849798 331205472 331205472 191009104 152701700 87347464 4403328 436256896 436256896 451036288 451036288 447403350 216587848 216587848 282343704 507059034 507059034 523622194 523622194 1040798966 1040798966 595574682 595574682 356285328 807474963 807474963 412710592 821735765 821735765 811732995 811732995 822522577 822522577 632960800 384035153 809077813 809077813 650591597 444512654 552638534 660266737 660266737 425964238 660553592 720243932 720243932 452527132 452527132 322719267 413112896 413112896 693503455 982700631 982700631 642766932 642766932 865109522 865109522 822691674 999606903 999606903 574902712 904366673 904366673 649612921 883426635 883426635 873600576 545366336 545366336 658698569 666051545 754692581 754692581 687074717 687074717 552787569 116050052 701850377 701850377 782617238 1050106455 1050106455 701706531 852045296 852045296 556196388 723535441 723535441 313106785 722868789 986749231 986749231 843773971 810641331 809151894 435159856 108053400 108589720 164566164 164566164 467243678 467243678 209764516 106854457 555652073 737790840 960848741 960848741 893036351 220818731 159189452 264272584 360734846 753402300 753402300 622486916 622486916 716371909 716371909 707438144 101506104 76015824 76015824 107057208 130676920 130676920 34802056 34802056 31364384 31364384 17831488 46211236 46211236 18297696 167221792 167221792 166123088 166123088 60592596 169675328 186141188 189039648 189039648 25141664 22358688 38016128 822279312 822279312 564659553 564659553 554246497 550898048 550898048 546378209 546378209 587030312 626970152 626970152 568253480 93508200 89530920 119088696 119088696 117654032 67514536 67514536 4561312 5587272 82129696 82129696 14889408 21080176 46494144 603347226 1057025003 1057025003 780144089 780144089 274727989 537926192 537926192 345381638 335420230 673186053 673186053 136144672 533463162 533463162 445203542 453534838 466135626 466135626 390391986 390391986 436052198 518915872 656277057 724440505 724440505 292817282 292817282 223349310 413786952 413786952 306709650 722911756 722911756 704741650 202431029 781053816 783168893 783168893 604478277 437018368 439538454 439538454 458042550 1048595896 1048595896 420772262 379529966 245153232 250609636 250609636 191558048 128190840 128190840 163425760 627361060 627361060 749224336 1052819677 1052819677 492438215 457363638 373579254 931404883 931404883 839326746 663545034 663545034 323886258 635866192 635866192 839444625 839444625 868534397 868534397 714006710 675547269 911287426 911287426 402917382 1040453072 1040453072 818098371 818098371 818227395 843073248 865650291 865650291 863377494 972590823 972590823 737454768 771048080 771048080 261833524 727288933 727288933 743495369 743495369 688506625 688506625 770131545 770131545 795393401 795393401 801161469 801161469 284271485 1069916446 1069916446 828688803 875670561 875670561 633204329 630007361 195052806 296699328 296699328 174177430 345379936 345379936 287429160 154316672 149423556 136989984 73764008 133675824 133675824 115809560 132984312 132984312 127534128 161442108 161442108 185506164 185506164 151025948 589650961 589650961 760103708 760103708 254967868 645289344 676217605 676217605 689720608 689720608 541904001 538723200 164398981 162531044 685126817 741417741 741417741 555652056 555652056 798261953 798261953 265208252 558640257 558640257 84679200 84679200 2097408 44040528 44040528 205595252 205595252 192948808 168110100 168110100 319293455 1023410183 1023410183 628398497 628398497 980500871 980500871 32167108 939677536 968410983 968410983 281548577 482219256 482219256 447038478 447038478 504244348 600584167 600584167 877425474 877425474 815211353 815211353 617357911 617357911 755008856 755008856 1064077357 1064077357 803627165 796413044 300461000 279789314 46965286 50608164 50731056 427362048 440875158 440875158 451266434 451266434 310765650 282650904 103911384 217449608 217449608 76624068 59978416 59978416 60518448 60518448 47671104 14019264 150539272 150539272 251916348 251916348 637668104 637668104 83922952 678320152 795481533 812452380 910961187 910961187 365297985 134928132 439371020 509056982 509056982 313862994 33797248 281437328 442583238 442583238 188261398 23596976 41820048 41820048 37781120 6414720 27777376 27777376 27302112 27302112 50778528 55040944 55040944 45111536 56623536 56623536 41603296 28125120 25955424 33003424 33003424 19083776 143165952 143165952 16457028 277483584 277483584 276824130 707445892 986235925 986235925 569492212 671281735 982614853 986322799 986322799 995808951 995808951 866916896 55315632 285922478 342412340 342412340 268487874 86508640 121940681 700910209 700910209 664934561 792229437 792229437 789939873 707572992 796005309 796005309 582962339 751737943 898541727 898541727 646038689 860889688 860889688 894047403 894047403 716965399 716965399 441392949 54716422 0 96634704 125491128 125491128 649802956 940078817 940078817 490857674 923321890 923321890 378537049 424674868 424674868 433336560 433336560 199539004 248986332 248986332 173062152 85958792 85958792 82667912 93138024 93138024 85991520 19664160 28052832 28052832 37822608 39928192 188371852 188371852 208836404 208836404 176929392 176929392 177747076 177747076 180407892 180407892 150258452 176229844 176229844 174666432 1887744 2625024 2625024 20571392 20571392 17640480 19778592 19778592 925532409 925532409 613301298 613301298 543872385 615658481 615658481 658800818 876923019 876923019 1033431575 1033431575 673539189 1012378385 1012378385 864825676 864825676 851446268 520889164 455069656 455069656 215349708 706033940 727847856 727847856 218376197 1010901009 1010901009 992108724 971219231 721473851 767979680 1015445573 1015445573 576065007 765337197 898624230 898624230 1012453551 1012453551 894494379 227111623 91238776 184621108 245037068 645637449 645637449 203320168 592053225 592053225 88470688 354730122 842062507 842062507 388661690 925894569 925894569 385884432 385884432 355541802 51195786 88933408 100927512 100927512 32723904 32723904 59593104 59593104 17582760 23191680 90515456 90515456 71840008 88694816 615576282 845361555 845361555 382976841 353444394 377691272 377691272 958926150 958926150 532808909 655243817 655243817 1020616816 1020616816 928289447 777726673 691014770 691014770 456846120 764468048 791025981 978978176 978978176 976360215 716660640 25082709 23072992 537002624 542249601 542249601 294133500 402653190 939589652 939589652 332695446 332695446 156237852 151211172 151211172 290787352 524887230 524887230 302844164 725040784 940613665 940613665 275190165 374143248 376051098 481215630 709492738 709492738 432476311 56763464 116126072 302731744 302731744 1000202887 1000202887 391569964 389482814 366841274 366841274 241454386 489009460 505536798 1023742584 1023742584 636001368 101728920 101730872 101730872 206070817 759292077 759292077 97083956 702932304 702932304 542501505 565183648 565183648 583369025 583369025 582075664 540653473 62246864 268445698 268445698 132305400 883409385 883409385 379971930 648313776 648313776 841031955 841031955 556243186 127189282 100663960 113247336 113247336 98603264 31509088 274748376 274748376 116556162 393589984 393589984 124965312 124965312 288557370 956309807 956309807 939597831 1003671651 1003671651 434701413 54928336 54928336 949088352 949088352 572909156 555396614 93590546 396238458 396238458 362057306 345430602 319315576 751883272 751883272 685381317 201639948 437832724 445399638 1008496128 1008545295 1008545295 503533769 746851908 746851908 436735065 415039646 645150690 693000645 693000645 38174741 35651856 35651856 130248955 130248955 599982578 606323227 666096753 666096753 615825886 787238361 948194823 948194823 698345920 698345920 167173601 159105760 159105760 50669440 551081523 852677331 852677331 817156066 817156066 601358310 601358310 191038299 65012356 427109286 771752081 826352491 1050215751 1050215751 810018311 810018311 698180267 345303594 728418141 728418141 445636250 405126080 680317536 701812673 701812673 687131589 596642832 563875425 164703004 132385272 545563964 545563964 409578853 265492508 442446800 442446800 403682760 338574431 882519305 882519305 1012949592 1012949592 914588663 834325056 834325056 831581474 831581474 806766849 806766849 613306120 613306120 547670337 204767241 151651859 277232675 386033691 850052543 850052543 537403476 1007568929 1007568929 877322336 877322336 266018179 211562634 383326564 598029064 755668792 755668792 759694509 979608290 979608290 135271384 282516162 399055032 399055032 96616034 86247720 88483120 88483120 67967160 297935026 369148112 369148112 630008937 630008937 717238084 717238084 180301712 540116160 696107073 696107073 716777301 757275644 757823853 804181704 814117922 838585109 1004442815 1004442815 986927703 866277179 866277179 1001031994 1001031994 147285250 67634184 576734208 911044572 911044572 664626019 540099232 153403537 56150432 56150432 25005184 25005184 17090592 536932400 536932400 521770325 484049302 269145090 336162370 336162370 361825002 673612804 939711623 939711623 812159750 677887104 677887104 607327040 607327040 582618957 771760896 771760896 671221048 671221048 536991840 205354456 154661668 180872084 180872084 193850480 193850480 550420673 563574721 563574721 242372664 479901880 479901880 591180021 591180021 541524745 706060327 706060327 847272011 847272011 319371278 319371278 969224759 969224759 927599332 735843015 263852205 302777074 302777074 411328736 463316004 463316004 4983936 4983936 36700944 43389312 43389312 66983504 87454656 87454656 605260072 623184288 744825769 744825769 693880520 693880520 221387141 213119820 213119820 226521800 226521800 139841700 139841700 122880 2656256 2936064 464440576 464444790 464444790 461788534 1052836480 1052836480 1022100956 1022100956 998770635 998770635 1056032790 1056032790 971845095 790635631 967590953 1044277145 1044277145 524729236 319865122 672847365 985215367 985215367 717275349 186510961 822190768 822190768 540813334 170468628 52437252 78255432 428430112 428430112 350421006 436256896 436256896 331449424 374704134 374704134 216587848 490812426 490812426 507059034 507059034 288105630 106372282 885165672 885165672 378923610 378923610 109626210 807474963 1063527809 1063527809 821735765 821735765 811732995 811732995 822522577 822522577 632960800 83935272 84645080 258406568 258406568 211350372 211350372 89150208 232525548 831928812 831928812 539435332 360646400 360646400 332409600 85993728 27955296 21139424 166859936 166859936 150156228 831904364 831904364 164580387 155808268 23377568 23377568 17351712 21667680 29250720 91638664 764703230 916075771 916075771 528084837 128132472 128132472 77733888 77803848 77803848 45429808 25027936 136457348 136457348 181459232 181459232 16958164 25614656 25614656 778082932 778082932 521893618 521893618 559419158 893980089 893980089 891888939 386475066 986749231 986749231 981698282 809151894 809151894 23380352 23380352 11958528 64719392 64719392 467243678 467243678 130759280 59321364 147937364 737790840 960848741 960848741 893036351 220818731 149498184 193038388 360734846 753402300 753402300 596116593 257951181 114885192 114885192 101506104 101506104 76015824 76015824 107057208 130676920 130676920 34802056 34802056 31364384 31364384 17831488 8393760 1573888 56438272 56438272 54864048 54864048 38613152 51447460 155189412 186141188 455456006 455456006 302125074 302125074 302125074 822279312 822279312 51780144 51780144 33951744 550898048 550898048 54881696 599152896 599152896 587030312 212352036 212352036 142420264 142420264 192550836 192550836 117654032 111307568 212238336 228782148 228782148 220250176 18010432 30066272 30066272 863627064 863627064 1057025003 1057025003 369334565 1045434944 1045434944 537926192 537926192 371228704 371228704 335420230 491318530 491318530 533463162 533463162 445203542 453534838 466135626 466135626 390391986 390391986 340002954 518915872 656277057 724440505 724440505 292817282 292817282 223349310 413786952 413786952 306709650 722911756 722911756 654710841 1010007934 1010007934 482915813 151569444 459569184 459569184 439538454 439538454 458042550 1048595896 1048595896 313016610 331387044 331387044 283776336 26460920 85751752 228441780 228441780 193505068 627361060 627361060 573694737 583533777 606832069 772535325 772535325 530729273 931404883 931404883 839326746 663545034 663545034 323886258 635866192 635866192 839444625 908937289 908937289 868534397 812770179 812770179 786473037 680267240 740477721 875707413 980438161 980438161 833876835 818227395 818227395 671488005 863377494 863377494 835783573 432108513 149164052 751227204 751227204 174726521 743705512 743705512 743495369 743495369 688506625 688506625 770131545 770131545 795393401 795393401 656982889 338739224 559736720 559736720 557583716 822700097 875670561 875670561 633204329 630007361 625231211 625231211 608716000 161496300 345379936 345379936 287429160 154316672 149423556 218918432 218918432 133675824 139824552 151517220 151517220 224174328 224174328 161906964 161715880 110143632 50732240 60579776 701549568 701549568 760103708 760103708 101983808 123682488 267586884 271195298 271195298 147243460 147243460 164398981 164398981 162531044 685126817 685126817 335684224 555652056 555652056 798261953 798261953 265208252 558640257 558640257 67658032 52528136 81797400 81797400 284954130 337193786 481299314 481299314 379913046 369166592 319293455 1023410183 1023410183 671384064 709417093 709417093 151341317 0 939677536 968410983 968410983 146807687 292290736 292290736 54529442 2375936 503502708 600584167 600584167 245497520 682100001 682100001 58676760 474284412 474284412 462503946 462503946 488845100 488845100 485649070 101565080 279789314 279789314 33419232 150554680 234881052 427362048 440875158 440875158 451266434 451266434 310765650 282650904 187761460 217449608 217449608 182461152 15770112 88433984 88433984 741892992 741892992 139060356 224494888 224494888 546243429 642378851 1037165998 1037165998 497729356 542848334 855189279 855189279 910961187 1012012005 1012012005 894604990 894604990 641224834 3145732 2633984 33797248 281437328 541081861 541081861 441586338 572738437 572738437 408187078 321789234 420088292 678324657 678324657 147584196 560488673 560488673 55040944 55040944 45111536 56623536 56623536 41603296 28125120 29769664 94440296 94440296 18577088 152436256 152436256 136763652 488788412 488788412 442898838 707445892 986235925 986235925 569492212 293662272 459091638 568258647 568258647 113953360 113953360 88119520 29769896 26264160 30007488 30007488 48287048 48287048 121940681 700910209 700910209 664934561 792229437 792229437 789939873 204499864 796005309 796005309 582962339 751737943 898541727 898541727 646038689 860889688 860889688 691341587 168821268 716965399 716965399 719989750 719989750 692762101 686590233 541217857 691745500 1038661087 1038661087 695797002 819577695 923321890 923321890 806469660 797528937 699381032 537003000 634324172 634324172 89035944 98653536 98653536 31700072 157979076 157979076 191812852 191812852 116020248 158223856 220761964 220761964 118230072 195716864 234929744 234929744 208836404 208836404 176929392 176929392 177747076 177747076 180407892 180407892 150258452 176229844 176229844 174666432 40345152 35617216 573048209 635247689 635247689 654047193 654047193 881376330 925532409 925532409 613301298 613301298 543872385 807862665 807862665 539050696 851925248 851925248 1033431575 1033431575 673539189 1012378385 1012378385 864825676 864825676 851446268 520889164 455069656 455069656 165625572 706033940 727847856 727847856 657117354 1010901009 1010901009 992108724 971219231 815899360 820248578 862357779 862357779 576065007 765337197 898624230 898624230 1012453551 1012453551 894494379 227111623 146277188 184621108 245037068 245037068 163700964 203320168 203320168 88470688 88470688 73662112 28776512 75029256 75029256 12059584 18892032 43193152 43193152 36909840 54003504 54003504 54788528 54788528 32723904 32723904 59593104 59593104 36441360 58271664 117776912 122055936 124481709 239138239 516364484 516364484 269998120 1037085357 1037085357 337814692 807017356 958926150 958926150 532808909 655243817 655243817 537794178 537794178 906123868 906123868 698142309 836298476 836298476 606842424 606842424 978978176 978978176 1046410391 1046410391 1020415558 1020415558 895534151 542249601 542249601 318821478 402653190 402653190 375439703 325058560 307282846 509608198 509608198 422126622 422126622 271527202 273289872 574018493 725040784 940613665 940613665 275301762 275301762 376051098 814754485 974351428 974351428 712198654 712198654 245554578 302731744 302731744 118501312 976750472 1044381855 1044381855 340138122 375021056 375021056 33738768 33591296 58755456 58755456 238076700 238076700 233930996 238092572 238092572 170181360 715145648 785418673 785418673 19997472 100672312 565183648 565183648 583369025 583369025 65932337 23803296 7284128 268445698 268445698 132305400 883409385 883409385 379971930 648313776 648313776 841031955 841031955 556243186 127189282 100663960 100663960 98603264 98603264 45617584 45617584 36225808 352913394 393589984 393589984 327225456 85991456 288557370 288557370 135531276 319066630 319066630 264278664 264278664 74523008 74523008 948357152 948357152 32527591 28837728 562040853 562040853 679681604 731856501 734213152 734213152 194702032 194702032 201621504 201639948 437832724 445399638 484216324 614332496 614332496 642777158 642777158 169493584 0 266387728 266387728 874703117 874703117 94650861 42227884 730247192 730247192 631357492 599982578 606323227 666096753 666096753 615825886 882952228 882952228 856332904 976799511 976799511 444283186 597724884 697879252 697879252 551081523 852677331 859660684 859660684 817156066 833698056 833698056 832969059 681979559 427109286 489423911 826352491 826352491 493920517 810018311 901966860 961139887 961139887 945572491 21088451 35843188 193843472 193843472 706217493 706217493 596642832 596642832 727526857 727526857 261761636 63744644 614493416 738427004 738427004 442446800 442446800 290684874 165825732 222880104 222880104 1012949592 1012949592 914588663 930143896 930143896 831581474 831581474 683281186 683281186 613306120 613306120 547670337 747115996 747115996 277232675 537301185 850052543 850052543 847696139 1007568929 1007568929 932994773 932994773 1022089891 1022089891 290380672 201611105 22851328 127349008 127349008 164270256 164270256 324550034 324550034 399055032 399055032 395643291 569451489 569451489 836239770 836239770 113246400 369148112 790696181 790696181 630008937 786901268 786901268 2097408 144769344 696107073 696107073 716777301 716777301 647302233 647302233 814117922 838585109 1004442815 1004442815 986927703 940179854 940179854 1001031994 1001031994 646556112 141170052 576734208 576734208 19431825 710835889 710835889 153403537 556213153 556213153 242305053 146321380 761082620 761082620 536932400 1013864092 1013864092 616623057 538839105 538839105 538577408 672586245 944137220 944137220 812159750 677887104 677887104 607327040 607327040 582618957 923277588 1026432303 1026432303 986637494 1001145096 1001145096 729470901 281782319 283686502 552920368 688514085 688514085 697220376 697220376 669742461 641784184 253009288 339266742 339266742 843699584 843699584 647604432 647604432 583689936 219862572 187571508 187571508 927336164 927336164 686295111 713049924 713049924 29934816 590874116 590874116 27877557 4983936 472098012 472098012 180221258 548670273 548670273 547211849 538783312 574530960 623184288 744825769 744825769 621418508 675315820 675315820 683085260 769965964 868516379 868516379 824256645 824256645 904449514 904449514 805947886 828234420 994377251 994377251 857740450 1052836480 1052836480 558891528 558891528 538968321 336333160 336333160 503402416 503402416 180480343 967590953 1044277145 1044277145 524729236 310128977 672847365 985215367 985215367 717275349 308787602 822190768 822190768 540813334 342636558 274728356 78255432 428430112 428430112 497197992 497197992 269575268 331449424 374704134 374704134 113260162 490812426 490812426 315299372 331616466 466962356 466962356 462485496 462485496 378923610 378923610 478375936 478375936 1063527809 1063527809 814928451 814928451 595203656 595203656 606427944 606427944 541893704 385782240 497203424 497203424 258406568 211350372 211350372 89150208 232525548 831928812 831928812 15279552 360646400 360646400 181667261 259977697 259977697 265803761 613034875 1005708279 1005708279 831904364 831904364 554023482 768732328 805361690 805361690 744058445 616566520 793637007 907039291 907039291 916075771 916075771 781081103 665868152 701806635 983646487 1010950287 1010950287 847374749 756073465 756073465 590785921 181459232 549607633 549607633 574624562 965761203 965761203 952113280 521893618 521893618 559419158 893980089 893980089 891888939 386475066 386475066 981698282 981698282 389623409 525886546 525886546 105324216 128063080 141382148 141382148 147278084 147278084 123806136 123806136 560451321 625611945 625611945 167682857 159770724 639646905 639646905 285028900 285028900 536576265 536576265 140609681 739248904 741608205 765322592 765322592 14002880 21424128 21424128 19941760 22833344 22833344 29979808 29979808 26201536 1107296 20975684 20975684 55186608 189399044 189399044 54864048 54864048 35132416 169346096 173605524 173605524 455456006 538312723 538312723 857022882 857022882 811862817 723583413 723583413 455155749 269500456 40564528 639675496 639675496 599152896 599152896 651156644 785262005 785262005 588659400 208144784 235670556 235670556 88170724 111307568 212238336 228782148 228782148 220250176 83928072 83928072 72474664 863627064 863627064 568903137 568903137 794956221 1045434944 1045434944 874529536 874529536 940835082 940835082 672085130 743705229 1030818462 1030818462 209757924 297811998 297811998 416091148 416091148 273417230 336111106 504381460 504381460 344529418 1067021495 1067021495 149253232 759314661 759314661 509468818 71348116 1019554307 1019554307 654354468 788921688 1010007934 1010007934 482915813 17302560 459569184 459569184 212353068 151569428 151569428 932463264 932463264 661130562 331387044 658693601 658693601 595348321 595348321 578235144 722581237 722581237 189535397 752422545 752422545 583533777 606832069 772535325 772535325 831657546 831657546 635542560 635542560 619707849 289456290 289669258 562331712 562331712 556059681 1009377030 1009377030 236741669 812770179 812770179 786473037 680267240 740477721 875707413 980438161 980438161 833876835 310877014 563902434 671488005 831337574 831337574 12767424 9064640 12751936 12751936 148727348 148727348 743705512 743705512 232561805 227845228 217465932 560975560 605040945 645738393 695217736 984163671 984163671 476070149 883443510 883443510 682722630 811132288 811132288 623134211 346032994 567052584 625231211 625231211 608716000 12982464 68232768 68232768 78086656 615359265 755322848 755322848 612021593 665135481 665135481 151517220 151517220 237198976 661933756 661933756 544953400 139855476 149947332 149947332 747876016 747876016 221034593 139952428 57198000 56887728 56887728 271195298 271195298 147243460 147243460 290392784 328939122 328939122 451875220 451875220 335684224 335684224 189836880 264828592 264828592 162597864 162597864 145598720 66619272 115061120 115061120 105526344 284954130 337193786 481299314 481299314 379913046 369166592 205784728 386139186 386139186 705691712 709417093 709417093 269640914 576966800 576966800 986480855 986480855 857344775 829873059 292290736 353305760 403725330 403725330 386709028 238037798 376254330 420455490 533811264 533811264 272976258 272976258 131381736 350460512 350460512 460589490 460589490 404752608 404752608 97518312 33419232 150554680 234881052 234881052 153315100 102285124 101363648 105982032 105982032 203424309 227150089 233782764 233782764 689884709 748549637 748549637 605909889 741892992 741892992 686895212 686895212 759958701 759958701 740092136 1037165998 1037165998 497729356 542848334 855189279 855189279 505946821 1012012005 1012012005 894604990 894604990 641224834 408027718 344490138 86033986 145888068 541081861 541081861 464131344 572738437 572738437 408187078 321789234 420088292 678324657 678324657 147584196 560488673 560488673 51888544 56105408 56105408 25566016 28979232 28979232 25652640 29769664 94440296 94440296 18577088 574374698 621475368 707320836 707320836 656414594 675332371 675332371 573621009 578049664 578049664 160062102 331534578 331534578 272666736 113953360 113953360 97509616 109768856 109768856 106231912 133746648 133746648 98380456 86862720 86862720 30748472 96797112 122176056 122176056 591656064 591656064 204499864 176735316 164626480 168297492 168297492 50332484 28837728 11220256 19965446 404834851 404834851 673185858 673185858 719989750 827304024 933967067 933967067 541217857 691745500 1038661087 1038661087 695797002 819577695 819577695 806469660 806469660 797528937 699381032 537003000 634324172 634324172 98450664 53172512 53172512 95249608 300966338 300966338 191812852 346556194 346556194 336855906 366467104 807659545 807659545 195716864 643377809 643377809 31069920 16810016 38453392 593987585 593987585 599819504 696285344 696285344 48132112 48132112 8204160 40345152 40345152 35617216 573048209 635247689 635247689 654047193 900781387 900781387 881376330 131167923 69251192 1034701796 1034701796 807862665 807862665 539050696 851925248 851925248 384222536 86053952 223232668 240123036 240123036 100398356 149953716 574694388 699401061 699401061 200351889 102014212 156011308 172101780 556004525 657117354 725782528 725782528 725663925 808514050 815899360 820248578 862357779 862357779 564582753 371060250 727591458 727591458 387391576 101743130 136328452 136328452 180145056 180145056 178338020 153469812 29435040 29435040 28945760 29642048 29642048 29541472 28776512 13950464 12059584 12059584 11666112 88608912 118101048 118101048 105906840 105906840 66720944 66720944 48499152 17599408 54969936 107675008 107675008 76209736 117776912 122055936 124481709 239138239 516364484 516364484 257010093 1037085357 1037085357 337814692 807017356 909374235 909374235 178405005 388762938 1068421189 1068421189 537794178 906123868 906123868 1008405975 1008405975 836298476 842445112 842445112 808208646 954503399 1046410391 1046410391 1020415558 1026587140 1026587140 947921904 947921904 417394706 452642921 1008746909 1008746909 514885745 891553831 940575399 1007683205 1007683205 588253368 588253368 572260896 574018493 574018493 312900468 549622016 551600577 551600577 744230541 882642164 974351428 974351428 712198654 938350152 938350152 1003157463 1003157463 616591695 976750472 1044381855 1044381855 340138122 375021056 375021056 189931892 189931892 740708936 740708936 683277416 238076700 233930996 238092572 238092572 730284385 730284385 785418673 785418673 34768384 592944337 592944337 565327713 565327713 599345408 600655473 600655473 552392048 571315905 571315905 566068057 80212345 76019912 75755592 54881288 54881288 33992240 118303912 336251688 336251688 53591186 37274384 54040368 54040368 53687184 300568920 300568920 352913394 352929192 352929192 327225456 265290492 397266751 658579641 949361595 949361595 1050839577 1050839577 507973469 280599250 280599250 466657954 541294243 541294243 833694916 562040853 562040853 679681604 731856501 734213152 734213152 194702032 194702032 143130632 143130632 341327876 341327876 370149896 966639232 966639232 642777158 642777158 262326842 270532866 271844098 271844098 874703117 874703117 250479016 250479016 730247192 730247192 787085641 822221617 846402055 846402055 412188776 362945291 882952228 882952228 856332904 976799511 976799511 551936112 597724884 697879252 697879252 168295424 113362688 859660684 865343312 865343312 833698056 833698056 832969059 971674976 971674976 687915045 221299500 221299500 162018852 162018852 901966860 961139887 961139887 945572491 414221454 414221454 413043972 149327860 706217493 706217493 579357557 772850205 786203080 786203080 261761636 252451764 614493416 738427004 738427004 195769716 755045428 755045428 165825732 222880104 222880104 654838632 654838632 410280379 930143896 930143896 990930184 990930184 547931163 696853605 696853605 705856119 968360458 968360458 747115996 937427451 937427451 537301185 847696139 847696139 605010048 995833527 1068807935 1068807935 1022089891 1022089891 290380672 201611105 191671316 191671316 225308076 225308076 260422784 324550034 324550034 512230860 512230860 502536676 569451489 569451489 843055314 843055314 629851361 807718912 807718912 790696181 664799248 786901268 786901268 549861584 688143525 730233077 730233077 711157724 711157724 218045521 38111376 58960960 58960960 17425440 17333248 562038048 940179854 940179854 610932105 646556112 965117166 965117166 661444025 1072323217 1072323217 1005898743 710835889 139275396 556213153 556213153 242305053 224210044 761082620 761082620 237460594 1013864092 1013864092 616623057 538839105 538839105 538577408 943267590 944137220 944137220 676195461 676236693 676236693 1048611276 1048611276 747446865 923277588 1026432303 1026432303 986637494 1001145096 1001145096 729470901 281782319 283686502 552920368 688514085 688514085 697220376 697220376 669742461 1067641276 1067641276 588535941 339266742 843699584 843699584 311431680 529609810 529609810 219862572 187571508 187571508 927336164 927336164 686295111 713049924 713049924 721629237 732955287 732955287 714003010 222897324 875571111 875571111 180221258 548670273 548670273 547211849 538783312 574530960 574530960 541556864 745104065 745104065 675315820 675315820 683085260 769965964 868516379 868516379 824256645 966263616 966263616 970981474 970981474 828234420 994377251 994377251 949299351 992149782 992149782 558891528 558891528 538968321 336333160 336333160 1032623640 1032623640 713708609 475856328 518606824 518606824 360487914 360487914 116428530 609447937 609447937 553887272 544069761 558300417 558300417 424251814 342636558 545404172 634074345 903374446 903374446 497197992 497197992 489165482 159449216 292290642 445958742 476884616 476884616 306249938 306249938 513069694 513069694 466962356 462485496 462485496 376605170 435236918 478375936 540094728 540094728 664553988 814928451 814928451 293716250 524337342 524337342 478447856 469392658 385782240 497203424 505800990 505800990 352730902 329092654 1013918391 1013918391 761608634 868093524 868093524 457250654 562828241 991312434 991312434 1027493843 1027493843 613034875 1005708279 1005708279 378800344 378800344 554023482 768732328 874902476 874902476 802495442 802495442 793637007 907039291 907039291 684755614 781081103 781081103 665868152 701806635 983646487 1010950287 1010950287 847374749 756073465 756073465 590785921 184873600 549607633 549607633 574624562 965761203 965761203 952113280 905201880 905201880 305400594 243273310 75186562 928389266 928389266 644010393 207817367 547803146 1046854068 1046854068 525886546 308418626 128063080 282318384 282318384 147278084 147278084 177523284 314958450 560451321 625611945 625611945 373834862 159770724 639646905 967488512 967488512 285028900 536576265 536576265 140609681 739248904 741608205 765322592 765322592 64938944 64938944 31248096 31248096 17106944 17640480 29501696 29501696 18949248 4850016 20975684 20975684 55186608 189399044 189399044 18754624 172365972 172365972 169346096 190258868 190258868 169352192 538312723 538312723 857022882 857022882 811862817 773984541 773984541 455155749 269500456 14341824 722665472 722665472 160606485 196750781 651156644 785262005 785262005 588659400 208144784 235670556 235670556 40109452 213977088 213977088 90605672 75889128 142917640 142917640 83928072 72474664 587985969 587985969 568903137 568903137 794956221 892471649 892471649 874529536 874529536 940835082 940835082 672085130 743705229 1030818462 1030818462 105656100 260164652 260164652 416091148 416091148 273417230 336111106 504381460 504381460 344529418 1067021495 1067021495 149253232 759314661 759314661 509468818 71348116 1019554307 1019554307 654354468 788921688 788921688 773592436 721144624 692109477 692109477 564511915 678235303 1024502244 1024502244 932463264 932463264 661130562 61343088 658693601 982457468 982457468 595348321 578235144 722581237 722581237 252071041 752422545 865499294 865499294 672087089 460639158 579601960 831657546 831657546 595238251 848610785 848610785 855951411 855951411 592511267 307776051 767993193 1009377030 1009377030 236741669 213655828 890029600 890029600 432803552 403702278 402397832 380542210 380542210 355128618 310877014 820710080 973726743 973726743 873379179 600405413 307295477 328504278 465506807 465506807 148727348 330635174 633644748 633644748 627081600 627081600 560975560 605040945 680338904 680338904 984163671 984163671 476070149 883443510 883443510 818937856 564170152 564170152 568403344 880370027 880370027 297795810 297795810 291244544 291244544 354199688 354199688 351863296 615359265 755322848 755322848 612021593 665135481 665135481 128716152 128716152 237198976 661933756 661933756 544953400 139855476 261567560 261567560 747876016 747876016 232663780 57198000 57198000 56887728 56887728 49285728 33537856 310524672 324194994 324194994 328939122 328939122 47463586 42599424 76880024 109262616 109262616 59107440 67457344 67457344 57143480 66619272 66619272 115061120 115061120 105526344 50568296 171365388 244219664 255597068 255597068 248548692 259583608 259583608 616563400 705691712 706814784 706814784 269640914 576966800 576966800 986480855 986480855 857344775 829873059 273820802 353305760 403725330 403725330 386709028 238037798 376254330 420455490 533811264 533811264 372717918 272976258 131381736 350460512 350460512 460589490 460589490 404752608 404752608 185164220 235467788 235467788 216796620 216796620 217233712 245705052 245705052 197210072 105982032 203424309 227150089 233782764 233782764 689884709 748549637 748549637 605909889 609536649 629524641 686895212 686895212 759958701 759958701 740092136 102895896 177473548 177473548 256907026 363468198 397741694 433990390 433990390 498749696 498749696 430440992 408027718 408027718 344490138 298196864 298196864 418923572 418923572 464131344 464131344 316567232 316567232 294562816 294562816 284133538 311252224 311252224 65980560 51888544 61027264 61027264 56105408 51503664 54381320 54381320 355458338 355458338 480831876 754031048 954006956 954006956 908013322 908013322 707320836 656414594 675332371 675332371 573621009 578049664 826852515 826852515 864601203 864601203 425001008 94240992 94240992 97509616 109768856 109768856 106231912 133746648 133746648 98380456 86862720 86862720 30748472 96797112 122176056 122176056 591656064 591656064 68769953 17511136 164626480 168297492 168297492 50332484 28837728 11220256 828487110 828487110 819491239 673185858 673185858 411435265 827304024 933967067 933967067 553292741 678991585 678991585 563374537 884320585 884320585 69305859 2741080 112932696 112932696 133119480 133119480 112501808 98450664 105862888 105862888 83387848 287579298 300966338 300966338 81317864 346556194 365003808 365003808 366467104 807659545 807659545 122892984 643377809 643377809 67461736 134616064 185762324 593987585 593987585 599819504 696285344 717945377 717945377 48132112 572069905 572069905 11736576 9014528 40717456 661343640 661343640 552796944 900781387 900781387 620959523 620959523 69251192 1034701796 1034701796 436224044 436224044 65521856 64277232 73050376 129657088 197414416 197414416 162423364 685433285 685433285 150476944 724344880 724344880 699401061 200351889 624830737 624830737 172101780 186700192 186700192 725782528 725782528 725782528 725782528 897652339 897652339 954119753 954119753 824057379 923849229 923849229 894571179 894571179 894823083 894823083 508758801 204933900 569199728 726663861 726663861 556219952 145698368 145698368 59393568 29642048 289622594 289622594 275140802 74714954 338952064 346294602 346294602 349250250 379593434 379593434 280047936 122031088 122031088 48499152 40256512 54969936 107675008 107675008 76568944 105060928 105060928 69620544 69620544 11688200 2545920 166144 49152 35620448 67285568 647127362 909374235 909374235 178405005 388762938 1068421189 1068421189 203518792 274544840 470336526 1008405975 1008405975 770439609 842445112 842445112 563509585 563509585 735711975 830011232 947390798 1026587140 1026587140 947921904 947921904 417394706 452642921 1008746909 1008746909 514885745 891553831 975831301 1007683205 1007683205 588253368 588253368 572260896 157659058 51767856 49671120 1000622049 1000622049 891286375 973941783 973941783 882642164 461704324 191791348 938350152 938350152 1003157463 1003157463 616591695 976564108 976564108 684197061 307890086 307109010 122757816 189931892 189931892 740708936 740708936 683277416 113633312 113633312 29483232 200019392 730284385 730284385 727896405 540469269 168443908 592944337 592944337 693591057 693591057 599345408 600655473 600655473 709304356 818970659 818970659 566068057 941816777 941816777 813746520 863457301 1030771125 1064061079 1064061079 1057415148 374348336 421544604 421544604 393266106 417924564 467669844 467669844 441881856 441881856 352929192 352929192 255605806 265290492 397266751 658579641 949361595 949361595 1050839577 1050839577 507973469 280599250 280599250 466657954 541294243 541294243 833694916 556878852 556878852 706638101 706638101 696254517 370164324 515584310 515584310 238291436 274759876 341327876 444598340 444598340 966639232 966639232 378884057 209850444 622201445 622201445 271844098 271844098 753944772 753944772 250479016 250479016 187656616 250358965 787085641 992125632 992125632 846402055 412188776 543326316 543326316 515916175 681592868 681592868 195379364 551936112 551936112 136620389 55051440 38274192 70980816 70980816 865343312 865343312 433202688 435424230 548607392 971674976 971674976 687915045 221299500 294156432 325711091 843815227 843815227 637847875 545784897 815508810 815508810 414221454 413043972 332553274 190712976 579357557 579357557 772850205 786203080 786203080 428807942 428807942 252451764 516043868 516043868 195769716 878979088 878979088 805576149 747320397 739497133 739497133 738367697 410280379 421433000 763238154 990930184 990930184 1040855352 1040855352 993709315 705856119 968360458 968360458 681054397 937427451 997382254 997382254 921043121 833688085 580246758 995833527 1068807935 1068807935 948357535 507811377 122687920 155306400 262232480 262232480 225308076 225308076 260422784 260422784 291772698 512230860 512230860 502536676 502536676 82579848 843055314 843055314 629851361 807718912 807718912 632175904 664799248 780145140 780145140 570900496 688143525 730233077 730233077 711157724 711157724 218045521 38111376 295017146 295017146 83968200 18425376 562038048 562038048 207931788 644082048 711119253 965117166 965117166 661444025 1072323217 1072323217 1005898743 282499713 139275396 221582916 221582916 121643812 224210044 226851948 512433466 512433466 282382802 282382802 250999324 318729608 318729608 339682319 943267590 943267590 1048316689 1048316689 338179844 341260938 1048611276 1048611276 747446865 747446865 968364880 968364880 420602550 471149688 471149688 120638368 120638368 46211280 43639616 40758672 45174464 60645064 60645064 127142520 1067641276 1067641276 645076424 645076424 318393795 854234514 854234514 529609810 529609810 834937815 834937815 473046067 767694545 794689633 794689633 675976084 675976084 721629237 1003132694 1003132694 851263055 1055064191 1055064191 875571111 1012279216 1012279216 827276451 604475841 604475841 83323352 541556864 541556864 745104065 745104065 576288908 31683336 85449100 151186537 151186537 616790468 898835949 966263616 966263616 970981474 970981474 892470959 815281091 949299351 949299351 319111027 370940017 370940017 168298114 977798533 977798533 662787353 1032623640 1032623640 909550232 909550232 905976353 905976353 360487914 360487914 325505984 609447937 609447937 553887272 671290372 671290372 558300417 310919171 402886742 545404172 634074345 903374446 903374446 227202156 489165482 489165482 327804018 292290642 445958742 476884616 476884616 204588032 164152548 513069694 524219586 923048107 923048107 196079606 763115796 763115796 660289209 540094728 540094728 537153600 537153600 998287363 998287363 776249372 707250300 716477108 716477108 143665988 146931780 505800990 505800990 352730902 329092654 1013918391 1013918391 761608634 868093524 868093524 457250654 562828241 991312434 991312434 1027493843 1027493843 995266826 995266826 475562509 510841192 510841192 392184459 392184459 874902476 874902476 802495442 802495442 468087534 195089574 273027312 327420018 331665618 411378410 411378410 422846560 422846560 411066654 260112562 520456198 533039332 533039332 184873600 184873600 191388196 191388196 179884020 175301776 175301776 794054462 905201880 905201880 305400594 443155330 488179332 928389266 928389266 644010393 401861040 547803146 1046854068 1046854068 308418626 308418626 32248978 282318384 282318384 131729880 131729880 177523284 314958450 320694451 320694451 639636032 639636032 631977321 397933475 967488512 967488512 113898688 130468126 556221234 1056495707 1056495707 117244096 117244096 101213120 318908336 362362040 362362040 372318360 372318360 328205298 305914754 297288354 304050752 304050752 27005024 27005024 34438208 185076788 185076788 51424864 172365972 172365972 26614368 190258868 190258868 275004642 277617024 391127722 840171906 840171906 484522785 773984541 773984541 750799472 750799472 592395441 722665472 722665472 562698820 577239441 577239441 51906096 684883213 684883213 222163784 222163784 251137764 639123612 747415689 766256149 766256149 751377505 634786016 634786016 26998336 13755968 13755968 912613322 912613322 389174716 489872174 1060352806 1060352806 814236358 276596490 276596490 578198050 578198050 443424150 443424150 425005844 95423676 364913144 463552736 463552736 139058248 139058248 25627168 340101120 491012132 491012132 157437264 130323132 117280472 223355916 223355916 185672244 48572560 591006369 591006369 154078044 537106901 537106901 782189333 782189333 695556732 766738312 766738312 678235303 1024502244 1024502244 848222392 848222392 503364717 371299748 403325232 982457468 982457468 637022044 637022044 702057996 702057996 252071041 173637184 865499294 865499294 672087089 460639158 460639158 281681008 300322416 314099538 848610785 848610785 855951411 855951411 592511267 307776051 767993193 767993193 245430426 262023476 262023476 890029600 890029600 365768246 450102990 450102990 380542210 380542210 355128618 438209119 820710080 973726743 973726743 873379179 600405413 307295477 328504278 465506807 465506807 138626276 330635174 633644748 633644748 627081600 627081600 765127217 896054799 896054799 744667164 1013643069 1013643069 597202113 597202113 843657425 843657425 564170152 564170152 568403344 880370027 880370027 297795810 558893760 558893760 291244544 354199688 354199688 351863296 173802900 176252424 250684380 250684380 260169852 260169852 20472412 96486336 96486336 184918312 184918312 177286496 126621280 261567560 261567560 545757249 545757249 232663780 752014056 752014056 771996061 771996061 718790749 702363636 706859847 706859847 564808818 444004802 318644178 312221352 312221352 336596504 336596504 109262616 62821432 67457344 67457344 63476304 53687088 53687088 107683904 107683904 100256904 71484656 71484656 244219664 255597068 255597068 193312528 259583608 259583608 616563400 616563400 706814784 706814784 11110293 734113936 734113936 688429056 688429056 55197825 30544096 51907824 51907824 232409176 232409176 195084660 73929068 73929068 159678464 290104664 372717918 372717918 80079048 80079048 80079048 80079048 33988856 50335760 208089572 208089572 201728472 235467788 235467788 216796620 216796620 217233712 245705052 245705052 197210072 13701524 180421344 180421344 185672244 230175112 230175112 164238564 221586240 221586240 100079848 100079848 97528064 30336144 65221104 65221104 105310882 351611850 369627850 372383770 372383770 369703196 238162716 136260888 270473622 498749696 498749696 309383534 333076082 333076082 315790850 298196864 298196864 418923572 418923572 453547074 453547074 286658752 286658752 294562816 294562816 284133538 311252224 311252224 65980560 21014864 61027264 61027264 48490368 51503664 54381320 347692584 355458338 355458338 480831876 754031048 954006956 954006956 908013322 908013322 490856622 490856622 300317004 352501822 839311896 839311896 826852515 826852515 941695239 941695239 425001008 605943580 605943580 471210510 713057862 713057862 508163278 1011592376 1011592376 904965832 922044196 922044196 853791507 589337616 330051200 8931616 162974752 162974752 9053632 15275072 559498860 748295757 748295757 354018858 354018858 540641056 828487110 828487110 819491239 540091137 142082948 142082948 812593312 920524237 920524237 560108495 678991585 678991585 563374537 884320585 884320585 533046574 705481280 881667147 881667147 632892354 637985088 807305590 807305590 105862888 105862888 83387848 287579298 287579298 290491584 290491584 287100482 365003808 365003808 9512514 75892224 77471304 77479496 77479496 63907904 67461736 134616064 185762324 185762324 138822784 200120788 200120788 717945377 717945377 10888516 572069905 572069905 47530240 47530240 7753088 661343640 661343640 538335361 538335361 339289866 809563009 859091115 895986978 895986978 993800868 993800868 1041740720 1041740720 874796296 874796296 753290248 753290248 556785580 162423364 685433285 685433285 538840670 724344880 806580943 806580943 995189915 995189915 1047431446 1047431446 622928903 627290411 793986329 793986329 725782528 725782528 897652339 897652339 954119753 954119753 824057379 923849229 923849229 894571179 894571179 894823083 894823083 508758801 204933900 569199728 726663861 726663861 556219952 145698368 145698368 59393568 31454624 289622594 289622594 275140802 74714954 338952064 346294602 346294602 349250250 379593434 379593434 280047936 186584304 186584304 164132832 164132832 186144808 186144808 53740840 76568944 76568944 113249784 113249784 692711630 1025322543 1025322543 974127639 974127639 718360599 331965015 675513132 905663405 905663405 882578927 87032616 271870824 271870824 95922562 5452416 5452416 5452416 134743184 171966612 191715605 560643029 563509585 563509585 735711975 900518446 942934791 942934791 889194356 537530780 549931146 549931146 547830081 578888585 578888585 306318067 707789589 975831301 975831301 943331079 340399383 505965100 745825421 745825421 487424546 487424546 1000622049 1000622049 891286375 973941783 973941783 723313186 429493276 956919018 956919018 751903437 751903437 257425944 257425944 683148160 684197061 684197061 540813065 176760276 176760276 170394900 172331972 172331972 238708968 238708968 66324864 92662568 218393496 218393496 200019392 27765108 137649857 548194368 548194368 557391872 557391872 693591057 693591057 594541200 594541200 587560320 709304356 818970659 818970659 538052673 941816777 941816777 844110850 863457301 1030771125 1064061079 1064061079 1057415148 374348336 421544604 421544604 393266106 417924564 467669844 467669844 441881856 441881856 278919024 79565064 79565064 12111424 184749672 245317212 245317212 222631512 536444088 536444088 261236176 75608100 196268916 196268916 290724544 290724544 8659392 556878852 556878852 706638101 706638101 696254517 370164324 515584310 515584310 483825956 578853022 578853022 444598340 929404080 929404080 378884057 378884057 209850444 622201445 622201445 628284064 628284064 753944772 753944772 105563544 161482160 161482160 266667058 864881890 992125632 992125632 714451271 532821232 956904910 956904910 1002777080 1002777080 707043744 707043744 321149233 268752912 199278592 170881680 170881680 43241792 564582996 680649477 680649477 844040516 996485559 996485559 718183684 718183684 985805986 985805986 881197056 881197056 843815227 843815227 637847875 545784897 815508810 815508810 197844576 332553274 332553274 190712976 848044146 848044146 554511393 487669822 281512674 428807942 498722670 498722670 889192491 889192491 375207235 878979088 878979088 814343507 814343507 857657858 857657858 789645512 789645512 675555972 950419076 950419076 943082064 1040855352 1040855352 993709315 247262997 506635547 537461350 609272303 860337177 997382254 997382254 921043121 839038761 320956718 320956718 219642708 219642708 253008360 253008360 388270244 388270244 262232480 262232480 149785372 113064544 113064544 93415384 251802456 251802456 225325112 225325112 724966041 724966041 602675113 553697345 553697345 562679584 562679584 632175904 632175904 50430000 570900496 570900496 570522673 592543905 592543905 747577037 747577037 708911253 776298713 776298713 756547609 684485669 962050734 962050734 742375561 902616714 902616714 711119253 711119253 553885732 675469568 681574488 681574488 729469489 729469489 135017492 13478632 686195380 686195380 596458536 65938062 512433466 512433466 312656148 372754882 372754882 272968384 280300418 339682319 339682319 474481806 1048316689 1048316689 40078592 40078592 38354064 39920016 69222364 217519644 982424407 982424407 420602550 1027702016 1027702016 995962627 526950419 140693892 547473872 563669809 563669809 900933256 900933256 574814338 574814338 375502979 645076424 812535790 812535790 854234514 854234514 451783207 327592114 834937815 834937815 473046067 767694545 794689633 794689633 469897230 596681408 596681408 1003132694 1003132694 851263055 1055064191 1055064191 669524176 1012279216 1012279216 827276451 653541568 653541568 83323352 90253738 268699650 704811704 704811704 599095364 963446625 963446625 333109934 177609300 616790468 898835949 898835949 905770867 965740384 965740384 892470959 815281091 377762762 619520324 619520324 682433351 682433351 666632723 977798533 977798533 662787353 662787353 590030247 909550232 909550232 905976353 905976353 820212210 313285538 325505984 325505984 117444656 117444656 671290372 671290372 537469953 310919171 671240324 671240324 26276705 143718596 143718596 428208648 428208648 327804018 327804018 138216066 58344704 55759536 191629856 191629856 164152548 30229069 524219586 923048107 923048107 896174219 896174219 763115796 660289209 570824721 570824721 537153600 537153600 998287363 998287363 776249372 707250300 716477108 716477108 143665988 698296434 698296434 499653937 965479470 965479470 402524381 746852498 746852498 424860188 470024216 569770372 697703013 697703013 832759324 1047660562 1047660562 1013322343 995266826 686835526 510841192 554890152 823301257 823301257 544946049 25288800 287809568 468087534 468087534 273611394 195089574 437669650 437669650 400962500 400962500 422846560 422846560 480256384 480256384 218202602 182745472 182745472 155659988 71913208 71913208 242224152 242224152 190890420 175301776 118101048 526997570 526997570 141558660 443155330 488179332 488179332 285375386 401861040 401861040 123824216 46137360 357929282 357929282 309395394 321862962 321862962 317710514 366592114 366592114 115611384 365551746 365551746 320694451 639636032 639636032 631977321 708714444 708714444 599923415 423571512 423571512 556221234 1056495707 1056495707 117244096 117244096 101213120 383464296 383464296 362362040 372318360 372318360 328205298 305914754 297288354 304050752 304050752 34337808 34337808 51158112 51158112 51424864 51424864 26355712 26614368 26614368 18560544 25768674 275004642 560347379 560347379 939296695 939296695 805437718 805437718 706875669 750799472 750799472 666840409 666840409 199308853 562698820 577239441 577239441 799767220 799767220 684883213 222163784 222163784 251137764 639123612 747415689 766256149 766256149 751377505 634786016 634786016 108272312 129199041 129199041 912613322 912613322 590138376 1012410888 1060352806 1060352806 474620942 474620942 964561030 964561030 578198050 442154664 576019124 576019124 299377382 426320872 463552736 463552736 139058248 139058248 25627168 340101120 491012132 491012132 243362468 265388544 265388544 73189976 73189976 80037208 80037208 591006369 591006369 101255296 537106901 537106901 782189333 782189333 695556732 766738312 766738312 960102400 960102400 136724500 848222392 848222392 503364717 371299748 403325232 929813904 1024221212 1024221212 756844750 756844750 244400008 416336947 559269569 600043188 779177394 785396227 785396227 955470413 955470413 855916698 934057611 934057611 909657440 58721666 659562640 659562640 621879849 895771612 895771612 709558605 348104201 985397079 985397079 488945274 365768246 450102990 908128744 908128744 725860174 317851692 438209119 666515753 666515753 298338341 138461316 866147696 866147696 200245463 157294724 138626276 138626276 164147332 233605604 233605604 209115200 206665888 765127217 896054799 896054799 744667164 1013643069 1013643069 974718231 974718231 845677971 973275908 973275908 591766162 728801713 728801713 569890273 569890273 558893760 558893760 537272896 27076320 3330816 47534528 177539525 177539525 250684380 583903333 583903333 582083409 164875441 137288964 96486336 747269184 747269184 719418056 244384020 244384020 100942636 545757249 545757249 185863060 752014056 752014056 771996061 771996061 718790749 702363636 706859847 706859847 564808818 444004802 318644178 312221352 312221352 336596504 336596504 102631856 62821432 105070976 105070976 63476304 53687088 53687088 129324744 129324744 79831080 71484656 94742344 94742344 42214368 187887432 430391846 430391846 913259931 913259931 379761837 928170577 986309847 986309847 864416871 956047779 978069505 978069505 194251380 194251380 159519280 173827604 173827604 30046480 730956453 730956453 329535618 894371047 894371047 366799590 407999873 686948641 923927081 939917338 939917338 479597126 479394322 479394322 445764460 201728472 756367941 756367941 755808828 755808828 556801084 122455608 134147016 134147016 121358344 180421344 180421344 260576620 260576620 558466465 630803049 680538849 680538849 605875465 605875465 704079980 704079980 724702005 724702005 593510448 351611850 369627850 372383770 401091250 401091250 828258947 828258947 822157347 251813195 251813195 622223333 936870207 936870207 899752299 291641104 586829454 586829454 561022316 311070736 311070736 277398594 277009474 276873282 35128848 35128848 35128848 50753152 50753152 7915056 25872768 25872768 25479264 12750848 18010114 347692584 391831060 490997934 490997934 805411334 805411334 393021102 393021102 254257040 801637629 855180782 855180782 352501822 839311896 839311896 852852804 852852804 941695239 941695239 146080094 605943580 605943580 471210510 713057862 713057862 508163278 1011592376 1011592376 904965832 990796992 990796992 853791507 589337616 330051200 49124096 714332224 766563632 766563632 612000580 934338756 934338756 748295757 354018858 617218377 617218377 540641056 547826723 547826723 807704710 956204035 956204035 812593312 920524237 920524237 581392011 948258262 995100523 995100523 740347238 422077160 533046574 705481280 881667147 881667147 632892354 637985088 807305590 807305590 11667296 28344432 58737504 58737504 0 290491584 290491584 288804704 296146338 296146338 874358144 874358144 602633881 602633881 668279817 668279817 139277516 139277516 2570496 610872589 610872589 675886500 675886500 551894512 63922692 7532996 44572752 44764352 47530240 148373392 173273748 241793356 241793356 47450832 209877324 224470150 836424164 859091115 895986978 895986978 993800868 993800868 1041740720 1041740720 874796296 874796296 753290248 753290248 556785580 242115260 540197300 607774473 607774473 538840670 806580943 806580943 995189915 995189915 1047431446 1047431446 961146924 961146924 793986329 793986329 729473049 648557657 639746112 672346629 672346629 595636931 734423793 851607712 851607712 688338981 688338981 153972321 29164544 29164544 9954240 9954240 3996800 26971488 26971488 3990144 10841664 10841664 31454624 31454624 9437760 75760128 75760128 344996352 344996352 274078342 142613252 142613252 143536192 143536192 186584304 186584304 209979153 784076637 784076637 738727336 738727336 32519472 19664160 541353097 541353097 744431133 1025322543 1025322543 1005659025 1005659025 928104508 331965015 756138084 905663405 905663405 882578927 731738022 691620987 615252170 538881921 538881921 15728064 541642160 740975925 740975925 681085848 681085848 35701008 46143568 194197094 995494096 995494096 965874279 556087861 287460256 910313600 910313600 834540321 834540321 863903667 863903667 763641760 416266796 175205476 208328092 707677456 711246099 906543492 906543492 487424546 487424546 612541852 621417513 622779256 789072941 789072941 429493276 433595107 956919018 956919018 751903437 751903437 628105608 257425944 125380776 605552936 618987753 618987753 623643040 623643040 553648161 85659081 66402688 56961456 33837248 46459240 92662568 218393496 218393496 136691716 136691716 168164180 548194368 548194368 699752512 699752512 590952305 590952305 565843809 559518704 559518704 543684993 543684993 16556072 93058152 232363690 487064622 844110850 844110850 236230635 209638850 103438366 27790336 298326528 298326528 63099120 63099120 53479184 53479184 55125168 55125168 290330912 290330912 270535778 236607790 221528896 350085004 476652794 476652794 532293534 532293534 261236176 261236176 297862722 297862722 441401762 441401762 8462400 20643456 187890438 438830358 438830358 94897464 446307364 446307364 458782240 458782240 483825956 578853022 578853022 837904050 929404080 929404080 118019664 93588000 93588000 296807114 296807114 628284064 628284064 544549761 538969452 538969452 346073706 834900008 834900008 864881890 864881890 824318054 874915303 984154457 1031807371 1031807371 1002777080 1002777080 824716793 707043744 1019486469 1019486469 199278592 190076868 541677539 849024115 889895994 889895994 680649477 844040516 996485559 996485559 718183684 718183684 985805986 985805986 881197056 881197056 182289588 547523665 547523665 172379728 5832864 197844576 197844576 102246040 692797050 916333167 916333167 848044146 588565030 592169130 592169130 391550520 521351742 521351742 889192491 889192491 375207235 565400215 770232049 814343507 814343507 857657858 857657858 789645512 789645512 675555972 950419076 950419076 943082064 943082064 646227985 646227985 235544588 201397276 174109898 609272303 860337177 860337177 114504510 1065693200 1065693200 640161871 1003746039 1003746039 998149279 751290115 369282571 388270244 388270244 219629540 219629540 185409416 247927024 247927024 80087428 251802456 251802456 255396520 255396520 724966041 724966041 602675113 553697345 553697345 562679584 611459073 611459073 581774224 51416440 51903024 117471752 562779328 592543905 592543905 747577037 747577037 708911253 776298713 776298713 756547609 684485669 962050734 962050734 742375561 902616714 902616714 356945059 553885732 642023500 1002902007 1002902007 267450685 729469489 729469489 135017492 133328680 686195380 686195380 596458536 256976344 256976344 118803000 312656148 372754882 372754882 470963208 470963208 404015374 405833220 405833220 370761752 370761752 340733066 341127818 426635300 426635300 409465224 217519644 982424407 982424407 393668380 1027702016 1027702016 995962627 1070599166 1070599166 720457843 563669809 679755924 900933256 900933256 574814338 574814338 375502979 819679716 819679716 812535790 741523930 741523930 451783207 722660151 728555821 728555821 278968749 845551840 845551840 926980259 926980259 596681408 814389234 814389234 335172675 152567956 462860720 462860720 370607720 370607720 123209970 546701360 653541568 653541568 615702792 90253738 268699650 347293314 599095364 599095364 963446625 963446625 333109934 177609300 375693707 991121489 991121489 905770867 905770867 560023108 203474094 166925889 377762762 619520324 619520324 1039931671 1039931671 666632723 897845355 897845355 589091120 590030247 590030247 149337359 847298643 847298643 820212210 820212210 56832962 18952256 554920865 569940656 569940656 584615827 819463875 819463875 377700378 671240324 954339589 954339589 671166828 671166828 428208648 430029988 430029988 306136818 282480018 331988886 366733004 366733004 228676692 217745236 208950660 148794472 921326562 921326562 896174219 896174219 82314696 539235544 570824721 570824721 209715224 209715224 872785923 872785923 546687754 546687754 527053630 527053630 143400473 949423807 949423807 513344843 965479470 965479470 312875343 515014992 515014992 631376159 631376159 569770372 697703013 697703013 307132626 1047660562 1047660562 1013322343 686835526 686835526 341856552 554890152 823301257 823301257 544946049 25288800 287809568 288828898 288828898 273611394 140515858 437669650 437669650 366260486 422744864 422744864 355484202 480256384 480256384 470506916 470506916 342267944 151328072 86032488 239075484 242224152 242224152 223347872 223347872 118101048 118101048 70255368 78910248 177357952 177357952 131129496 131129496 92660506 119686058 119686058 44554810 357929282 357929282 309395394 321862962 321862962 317710514 366592114 366592114 76580592 365551746 365551746 126952056 411194050 411194050 488555014 708714444 708714444 599923415 615771215 615771215 271453963 1006505907 1006505907 117179592 117179592 104374624 383464296 383464296 116986402 109651032 700041917 700041917 713766866 713766866 540283137 688403525 703520229 737120757 737120757 702690656 582971393 582971393 548134208 17470016 8788032 26033472 32255264 32255264 560347379 560347379 939296695 939296695 805437718 805437718 765563229 446828549 564912224 666840409 666840409 117890841 33962512 666988744 713439973 799767220 799767220 635141356 753158464 753158464 170659092 177342336 183113172 183113172 141171924 202251276 257760060 257760060 490928306 490928306 373692570 271034955 590138376 590138376 1012410888 1012410888 630790193 630790193 474620942 964561030 964561030 442154664 442154664 576019124 576019124 299377382 426320872 426320872 0 0 0 0 0 226625852 226625852 243362468 265388544 265388544 65012208 16826832 80037208 80037208 111976840 111976840 101255296 101255296 615568208 615568208 68260448 92532840 92532840 825837600 960102400 960102400 956382767 942803370 1045467199 1045467199 500229858 1061689415 1061689415 1024221212 1024221212 756844750 1039442201 1039442201 1004832895 611322366 1019798795 1019798795 785396227 1021103823 1021103823 955470413 855916698 934057611 934057611 909657440 625495801 659562640 891104811 891104811 895771612 895771612 709558605 348104201 985397079 985397079 471959066 513081950 712770824 908128744 908128744 725860174 317851692 317851692 208625050 254911224 254911224 306536898 866147696 866147696 417209378 417209378 775325913 775325913 1047397955 1047397955 770185152 209115200 548895392 548895392 200142823 695649783 914977888 914977888 844703379 974718231 974718231 845677971 973275908 973275908 591766162 728801713 728801713 569890273 569890273 585732176 585732176 537272896 51503664 34684960 47534528 177539525 177539525 159460753 644163977 644163977 736817141 736817141 738055669 738055669 747269184 747269184 719418056 244384020 244384020 100942636 96774316 185863060 185863060 175377300 23069088 311036032 315497682 315497682 53339328 53339328 63169984 65090656 65090656 26558144 39637528 68082696 68082696 101859512 101859512 7606712 105070976 105070976 95347736 95347736 8251424 129324744 129324744 107051608 118396464 118396464 94742344 213309488 342171984 430391846 430391846 913259931 913259931 379761837 928170577 986309847 986309847 864416871 956047779 978069505 978069505 194251380 194251380 159519280 173827604 173827604 30046480 730956453 730956453 682621569 894371047 894371047 754594181 765528032 765528032 923927081 939917338 939917338 479597126 479394322 479394322 445764460 178442580 756367941 756367941 755808828 755808828 556801084 210781396 210781396 134147016 137963268 142860873 142860873 260576620 260576620 558466465 630803049 680538849 680538849 605875465 605875465 704079980 704079980 724702005 724702005 593510448 180593248 84610192 122225000 570953220 570953220 828258947 828258947 822157347 251813195 251813195 622223333 936870207 936870207 899752299 291641104 586829454 586829454 561022316 452613388 446729650 482610302 482610302 342180774 342180774 301916130 297261136 297261136 5380640 7602976 7602976 0 33858336 33858336 27978544 83935272 391831060 490997934 490997934 805411334 1031278777 1031278777 422212394 834240929 834240929 855180782 855180782 752941411 1012193741 1012193741 943263427 943263427 998638151 998638151 468753494 468753494 282787309 42925120 9436224 25720832 25826400 658577480 658577480 68575417 990796992 990796992 47094823 92865576 98707104 98707104 714332224 766563632 766563632 1042350850 1042350850 934338756 100663832 100663832 617218377 617218377 425817350 547826723 547826723 807704710 956204035 956204035 182032356 220997768 220997768 581392011 948258262 995100523 995100523 740347238 210126410 359716150 359716150 237114504 174589332 83942960 102637080 261671820 261671820 204870120 175276808 76578994 376636058 376636058 365966074 349375058 349375058 296146338 296146338 874358144 874358144 602633881 602633881 668279817 668279817 139277516 139277516 2570496 610872589 610872589 675886500 675886500 696429973 696429973 156717408 770220969 770220969 23337408 148373392 551356261 551356261 153315137 538169888 555868449 808576681 892563874 892563874 408487329 120028048 120028048 90251688 90251688 69679368 69679368 67244040 67350784 154528396 154528396 692166533 692166533 628285272 607774473 843418133 843418133 139459716 21681312 409612304 455340342 455340342 961146924 961146924 789205055 729473049 729473049 639746112 639746112 652214745 652214745 595636931 734423793 851607712 851607712 565582689 565582689 120438041 449237298 449237298 225755308 545877984 673983877 701333344 701333344 5898368 5898368 6096512 6096512 268620050 302174226 302174226 109334864 344996352 344996352 274078342 373621646 503390238 503390238 442708500 183766976 183766976 209979153 784076637 784076637 738727336 738727336 126149857 109292600 541353097 541353097 744431133 880604501 880604501 1005659025 1005659025 928104508 303579654 756138084 756138084 746685451 731738022 731738022 691620987 615252170 538881921 538881921 297061218 541642160 740975925 740975925 681085848 980993943 1001978691 1001978691 829680419 995494096 995494096 965874279 276105228 470814723 910313600 910313600 834540321 834540321 1005338105 1005338105 915998959 910588857 910588857 547820730 707677456 711246099 906543492 906543492 790848812 959597061 997374317 997374317 719722965 978907543 978907543 696888433 433595107 999152707 999152707 704196358 846581606 846581606 610271488 125380776 131604841 618987753 618987753 623643040 623643040 553648161 85659081 66402688 56961456 58843728 58843728 39256192 39256192 72199762 394387578 394387578 388219738 897839211 897839211 699752512 699752512 574618405 661701487 867862321 867862321 537409573 680311813 680311813 65345169 680067552 680067552 25565280 25565280 25215072 374308320 405014600 405014600 211936360 230132982 482624166 482624166 274776450 444605540 444605540 448196748 448196748 407971024 392244442 392244442 360120586 340086424 350085004 476652794 476652794 532293534 532293534 43515910 234030936 297862722 297862722 441401762 441401762 281534784 281534784 23813143 996534711 996534711 761519287 975547834 975547834 146218054 83133376 304106184 304106184 917147658 917147658 837904050 340663434 239209442 443685423 456530742 456530742 302256932 274852320 274852320 289472800 538969452 538969452 346073706 1016505076 1016505076 883877098 883877098 824318054 874915303 984154457 1031807371 1031807371 583992584 824716793 868433304 868433304 1019486469 1019486469 302792928 323060739 541677539 849024115 889895994 889895994 428454527 428454527 353647053 548867781 814041220 952494279 952494279 877015176 877015176 846538398 81076873 283314578 283314578 14754240 282602378 282602378 197275256 444665018 692797050 916333167 916333167 847782002 588565030 592169130 592169130 391550520 521351742 795281814 889401387 889401387 890120181 967381333 967381333 888104439 548066609 27263328 11600160 287337728 287337728 430135172 430135172 1044585168 1044585168 690209381 933407495 933407495 235544588 320215744 320215744 268644354 420752529 603827135 936563451 1065693200 1065693200 1034738031 1003746039 1003746039 998149279 1058534313 1058534313 310482957 310482957 110698240 110698240 185409416 247927024 247927024 193367284 193367284 227220560 255396520 255396520 213860268 186071960 76685936 124306304 124306304 118803000 611459073 611459073 585373736 547371360 547371360 636506520 636506520 542846097 714868584 714868584 233742220 209608172 790352008 790352008 390519987 352988546 352988546 297874570 340467938 809742339 809742339 538523676 706217493 706217493 1002902007 1002902007 692729248 692729248 16404 0 659081736 677011121 677011121 210243644 812972454 812972454 638962225 672380736 848552492 848552492 862274174 862274174 404015374 424539174 424539174 370761752 370761752 340733066 341127818 426635300 521533088 521533088 184431108 790607405 790607405 393668380 800004178 984165765 984165765 1070599166 1070599166 859187334 447982850 679755924 869845169 869845169 163595892 66363457 181610512 945467808 945467808 718853811 444515090 400719290 451365142 822468416 822468416 662904112 711139624 845551840 845551840 926980259 926980259 555503345 814813985 814813985 335172675 571963990 571963990 582418500 998251072 998251072 830802435 861280481 861280481 615702792 615702792 570733120 126707032 126707032 886656653 886656653 405858752 797977607 797977607 761023020 542113920 991121489 991121489 887493564 537979071 476258560 476258560 166925889 230777000 416703137 554928012 1039931671 1039931671 306907557 240911696 908080792 908080792 109183003 605800512 878604819 878604819 923851281 923851281 127135281 55875762 275345456 554920865 569940656 569940656 771768604 819463875 819463875 377700378 604148216 954339589 954339589 671166828 671166828 17577248 430029988 430029988 306136818 282480018 331988886 366733004 366733004 228676692 230708581 230708581 257900220 257900220 770704365 770704365 853933587 853933587 762573305 619862397 619862397 603054904 603054904 872785923 872785923 546687754 546687754 527053630 527053630 337060128 949423807 949423807 938159448 938159448 567683978 567683978 808354489 808354489 746635341 631376159 485301693 690887973 690887973 962931111 965187477 965187477 942932149 812327204 812327204 474593544 474593544 375645759 405848838 477000598 706821534 758611006 758611006 409963264 324664002 324664002 134263040 483013204 483013204 422744864 422744864 355484202 355484202 470205396 470506916 470506916 342267944 151328072 130030280 239075484 239075484 222298160 223347872 223347872 97323908 171508832 171508832 233442184 234758124 234758124 222513784 222513784 86819944 121382824 121382824 103842736 103842736 33345504 277581376 300627426 300627426 272814144 94020528 98074752 98074752 114991201 277995651 638247607 638247607 155371070 1007209702 1007209702 893682317 551082543 615771215 615771215 271453963 1006505907 1006505907 1045565639 1045565639 744542874 86106408 101205402 155312766 723633256 723633256 700041917 983337986 983337986 540283137 688403525 703520229 737120757 737120757 702690656 582971393 582971393 548134208 32993984 73421288 95999712 95999712 94848288 111817496 111817496 623206757 770825101 770825101 765563229 765563229 119751688 540730592 653185017 657834564 783735645 783735645 666988744 713439973 713439973 705210420 238750292 753158464 753158464 193760820 722225716 722225716 550896597 547754273 701967136 757377248 757377248 835491933 835491933 772707943 778005585 778005585 388262156 892301692 892301692 753265708 982974548 982974548 811155075 537600107 1032598113 1032598113 805444354 526397952 526397952 504467464 386964324 386964324 160954980 195116424 195116424 508572160 508572160 475214756 225653676 79482656 79482656 36249952 29728928 45474528 56993072 593604537 593604537 54323992 550964853 799283556 799283556 732629436 732629436 705837197 825837600 825837600 956382767 956382767 942803370 1045467199 1045467199 500229858 1061689415 1061689415 597568674 944428167 944428167 1039442201 1039442201 1004832895 611322366 1019798795 1019798795 673221860 1021103823 1021103823 811260787 811260787 555242336 555242336 348948096 625495801 625495801 891104811 891104811 727974259 727974259 626337301 248867640 248867640 471959066 471959066 513081950 712770824 712770824 320876993 242501584 283501904 481284777 791837631 791837631 458726068 458726068 306536898 827267456 827267456 742137903 775325913 775325913 1047397955 1047397955 770185152 618975716 556368264 556368264 200142823 695649783 914977888 914977888 492966318 707287228 940362759 940362759 444736752 444736752 439948208 439948208 308689382 295769090 236218700 585732176 585732176 344070870 51503664 34684960 10603216 708895508 708895508 239184769 644163977 644163977 736817141 736817141 738055669 738055669 154774944 56012452 117477968 117477968 248344584 248344584 709344089 709344089 201447452 648167520 654446649 833250197 1053869771 1053869771 776085574 1025581359 1025581359 910883496 222158440 98037928 98037928 72897744 92403432 101859512 101859512 46536912 13909376 124242128 124242128 95347736 58598448 74192808 107051608 107051608 118396464 144491524 144491524 213309488 476451156 476451156 203023594 159721572 193005584 193005584 409182548 409182548 314757330 417394050 417394050 2162944 9047584 26614368 26614368 50740736 50740736 153147904 153356580 681576612 681576612 682621569 682621569 629216965 754594181 765528032 765528032 703856672 622070313 209717861 222627984 222627984 18162176 20187936 20187936 17042208 3222304 170820864 170820864 251658300 251658300 210781396 127739240 137963268 137963268 137963268 134293248 98570488 44762656 97214184 97214184 53739576 153306369 726233093 726233093 712151333 748547661 748547661 758508333 807901859 807901859 742656141 570953220 1003035328 1003035328 608318609 50930748 345048042 345048042 256901820 604882376 615249225 615249225 806231043 806231043 477894541 674760198 674760198 446729650 482610302 482610302 342180774 342180774 301916130 297261136 297261136 96017776 45744640 55451984 55451984 36125104 33858336 27978544 396042410 396042410 178328940 218409614 474170510 1031278777 1031278777 976313895 843202241 843202241 722939635 1062239486 1062239486 1012193741 1012193741 943263427 943263427 998638151 998638151 673029816 790482435 790482435 492294791 604876506 604876506 495091886 658577480 726283370 902503736 902503736 1032464580 1032464580 741026040 371924328 98707104 706711104 706711104 285417880 1042350850 1042350850 1054793439 1054793439 344173909 91826088 165552556 165552556 402721120 409153926 409153926 268723458 289620752 289620752 67254774 445781982 445781982 436177798 525064650 525064650 345806028 210126410 515148186 515148186 309206418 534646334 534646334 412666946 442024038 442024038 204870120 175276808 76578994 376636058 376636058 365966074 349375058 349375058 269484546 120851256 120851256 56920648 816021792 816021792 175616880 175616880 200933972 200933972 29366372 25301088 25296896 86967468 86967468 696429973 696429973 156717408 770220969 770220969 79714944 79714944 551356261 551356261 159963168 538169888 555868449 808576681 892563874 892563874 704712932 519645150 983382542 983382542 732195121 128426293 119795772 741602340 741602340 546019177 544741504 692166533 692166533 628285272 83829822 843418133 843418133 820776387 528228750 528228750 226181289 226181289 225064224 625492992 625492992 594939417 907648657 907648657 698627197 652214745 652214745 549527832 172474064 676149878 676149878 565582689 565582689 275207586 449237298 449237298 225755308 545877984 673983877 701333344 701333344 6441472 5898368 6096512 6096512 268620050 302174226 302174226 109334864 82161666 82274584 208742534 373621646 503390238 503390238 442708500 82526300 155982608 155982608 61212964 18747396 561269792 561269792 126149857 109292600 109292600 29164664 5260288 13634176 13634176 8652864 5505728 1310848 134451268 176880154 277703722 386213468 386213468 289148752 289148752 113271810 288711560 293692352 297061218 350326818 480158810 480158810 250642773 980993943 1001978691 1001978691 829680419 545658497 776674048 776674048 276105228 470814723 621227297 822327576 822327576 806379440 1005338105 1005338105 915998959 910588857 939896116 963241383 963241383 627373335 845226387 845226387 790848812 959597061 997374317 997374317 730290211 978907543 978907543 696888433 429857379 999152707 999152707 704196358 846581606 846581606 610271488 110429952 270795136 961614491 961614491 876824502 876824502 87005144 700521152 701373669 701373669 680278224 58843728 47450816 193975888 193975888 394387578 394387578 388219738 897839211 897839211 697730673 697730673 516084796 661701487 867862321 867862321 573270352 680311813 680311813 65345169 680067552 680067552 338673294 475174070 475174070 507924516 507924516 405014600 211936360 351457692 482624166 482624166 382915290 444605540 444605540 448196748 448196748 407971024 392244442 392244442 360120586 340086424 340086424 375930880 375930880 273691264 189526754 189526754 10853524 441135446 441135446 274442944 274442944 281534784 281534784 537137152 996534711 996534711 761519287 975547834 975547834 356198186 83133376 304106184 304106184 917147658 917147658 373486923 340663434 276261788 443685423 456530742 456530742 442552718 772018206 772018206 693508773 221692181 221692181 234056948 1016505076 1016505076 883877098 883877098 633880808 633880808 449056028 449056028 538975520 538975520 532460058 868433304 868433304 811755833 811755833 302792928 323060739 323060739 294191457 874665952 874665952 123732448 947137204 947137204 306252203 814041220 952494279 952494279 877015176 877015176 343252953 648869773 648869773 444580868 980317891 980317891 429562099 219540012 444665018 444665018 231491612 847782002 847782002 554247201 423632945 476300440 476300440 473483022 795281814 889401387 889401387 890120181 967381333 967381333 888104439 548066609 69323032 69323032 524714010 524714010 1059217448 1059217448 1044585168 1044585168 944966007 933407495 933407495 919086596 919086596 478355682 391044122 420752529 603827135 936563451 936563451 1034738031 1034738031 572979540 572979540 981084249 1058534313 1058534313 489898624 489898624 227844318 220185184 148438408 223079688 223079688 193367284 193367284 219752040 219752040 105512924 80214056 86196704 86196704 124306304 124306304 118803000 100663320 585373736 585373736 547371360 547371360 636506520 636506520 105656041 714868584 714868584 667934884 213196925 790352008 790352008 390519987 741664164 944270670 944270670 340467938 809742339 809742339 604379145 706217493 706217493 585076548 597879728 692729248 692729248 716439269 732592853 732592853 703618465 703618465 191597492 812972454 812972454 638962225 973113412 973113412 873879800 873879800 862274174 436343780 773454364 773454364 758045997 678356393 909040785 909040785 604081930 521533088 521533088 84363016 34782482 285347874 1041506092 1041506092 185863973 136749224 285475107 859187334 859187334 458031648 442314390 151535648 272689906 332775554 332775554 37896832 945467808 945467808 444515090 444515090 335507126 335507126 822468416 822468416 761710912 711139624 711139624 674629510 967498005 967498005 468712380 814813985 1013461726 1013461726 1012011663 571963990 582418500 998251072 998251072 830802435 861280481 861280481 329845104 570733120 570733120 244065174 244065174 886656653 886656653 405858752 1011124896 1011124896 761023020 542113920 1024703062 1024703062 547437422 537979071 476258560 476258560 142655556 304154792 728366994 728366994 937145224 937145224 559899060 453887419 908080792 937137883 937137883 845844947 878604819 878604819 923851281 923851281 583235920 317852560 317852560 275345456 125174560 125174560 771768604 771768604 539017473 330441762 330441762 478377772 478377772 291224778 291224778 25690304 422420910 422420910 171136756 147068800 155839556 155839556 193627172 193627172 230708581 249251664 257900220 257900220 770704365 770704365 853933587 853933587 762573305 619862397 619862397 603054904 782330214 782330214 348504534 843377112 843377112 344238235 337060128 337060128 276510594 400168698 938159448 938159448 567683978 726341722 808354489 880869451 942283851 942283851 783168477 690887973 690887973 1005212999 1005212999 942094599 942094599 812327204 847372441 847372441 474593544 375645759 407132000 477000598 706821534 758611006 758611006 409963264 324664002 442681136 442681136 483013204 483013204 291508224 335746058 335746058 355134236 470205396 470205396 126345622 21018656 197300448 197300448 130030280 116153520 179720516 231335148 231335148 105592456 171508832 230487928 233442184 234758124 234758124 222513784 222513784 118539032 121382824 121382824 119331408 277523072 277523072 277581376 300627426 300627426 273862784 341348282 373115540 461671982 461671982 277995651 638247607 638247607 452461006 1007209702 1007209702 893682317 213914145 422311206 422311206 154215204 782419021 942281048 1045565639 1045565639 744542874 78648112 234627912 234627912 723633256 723633256 411100883 983337986 983337986 940820032 940820032 305523474 305523474 272186368 272186368 19132704 167692046 414710246 414710246 352674058 347887424 406561446 406561446 287385408 415941510 415941510 328779314 328779314 324044400 93495896 58724936 39274672 39274672 657834564 783735645 783735645 151165869 135576692 705210420 705210420 184991776 580702788 729409392 729409392 722225716 722225716 558309813 547754273 701967136 757377248 757377248 835491933 835491933 772707943 778005585 944836146 944836146 892301692 892301692 753265708 982974548 982974548 811155075 537600107 1032598113 1032598113 805444354 526397952 526397952 504467464 386964324 386964324 160954980 195116424 195116424 508572160 508572160 475214756 225653676 126558304 126558304 36249952 29728928 45474528 56993072 593604537 593604537 232655756 550964853 799283556 799283556 732629436 732629436 705837197 881086094 957476424 957476424 810607139 805864068 226538944 226538944 317288908 600403232 600403232 690655617 944428167 944428167 224427379 109389912 87410972 87410972 439903424 452060118 452060118 147799236 159892640 159892640 400306560 400306560 25341986 323342048 374620208 630980707 630980707 624951856 727974259 727974259 626337301 248867640 983311371 983311371 404024341 341101366 875366050 954695433 954695433 643791046 24694112 481284777 791837631 791837631 458726068 458726068 561054368 827267456 827267456 742137903 549029601 549029601 88836516 761124525 761124525 618975716 556368264 556368264 85255284 154255196 171184752 246596680 492966318 742482060 940362759 940362759 696452291 696452291 289878353 181739650 295769090 295769090 236218700 265388892 834577919 834577919 966148868 966148868 97122065 833759715 833759715 786827280 555010593 446326891 714900492 714900492 416506552 416506552 478794252 478794252 423571666 341186420 248344584 248344584 709344089 709344089 201447452 648167520 654446649 833250197 1053869771 1053869771 776085574 1025581359 1025581359 910883496 222158440 98037928 98037928 121873120 121873120 92403432 76890864 46536912 35021184 124242128 124242128 84513888 58598448 58229520 60479088 60479088 127736944 144491524 144491524 102345840 476451156 476451156 448921822 894700203 894700203 508561789 844735483 946390407 946390407 819578759 961171553 994125345 994125345 188298580 195169552 195169552 168538308 168538308 158525296 153356580 59368901 550581488 588912177 588912177 198181620 198181620 703856672 703856672 664282184 664282184 193343980 193343980 75498032 126243704 580303096 658852597 658852597 774964232 774964232 251658300 265198016 265198016 127739240 605677156 729527692 729527692 59769456 59769456 42640704 25884160 28736416 180163125 674931488 726233093 726233093 712151333 748547661 748547661 758508333 807901859 807901859 742656141 557986816 1003035328 1003035328 844960373 651373793 345048042 495661144 495661144 287310750 287310750 544219010 806231043 806231043 477894541 674760198 674760198 437420066 437420066 226873964 306681366 402245344 402245344 397548418 397548418 376033034 296513408 296513408 55451984 329897648 333045954 333045954 396042410 396042410 503997610 503997610 562148180 874279950 976313895 976313895 843202241 843202241 722939635 1062239486 1062239486 637846751 151569444 151569444 558348324 558348324 151484577 673029816 906890783 906890783 492294791 797198924 797198924 599949349 588450081 978334487 978334487 902503736 1032464580 1032464580 741026040 371924328 106178256 6816016 577386705 577386705 781045312 781045312 1054793439 1054793439 344173909 680306341 680518149 680518149 553966661 409153926 686572928 715242880 715242880 289620752 251932080 445781982 445781982 436177798 525064650 535527850 535527850 238628298 515148186 515148186 410022242 534646334 534646334 412666946 442024038 442024038 76320576 76320576 67324256 67324256 87316768 87316768 271630592 271630592 376504344 376504344 840016618 840016618 816021792 816021792 175616880 175616880 200933972 200933972 29366372 165675240 203424012 203424012 71180040 644750240 644750240 584621869 166282208 166282208 79714944 79714944 424662274 424662274 159963168 419570054 495926794 495926794 879560806 879560806 704712932 590097544 983382542 983382542 732195121 214965184 214965184 741602340 741602340 546019177 544741504 705958424 738596877 772932253 772932253 753309381 820776387 820776387 565646544 565646544 424643761 226181289 225064224 625492992 625492992 574933137 907648657 907648657 698627197 512880477 547744146 547744146 639372825 1054815107 1054815107 820684486 275207586 275207586 62476004 154215204 154215204 151655460 151655460 171084432 173753748 173753748 141373440 37099264 2739456 8775680 8775680 8579648 42270848 46475472 46475472 173294100 173294100 172194052 136702212 46187156 46187156 44044608 266604625 641763373 778090989 778090989 155679152 28650336 28650336 666387785 666387785 590066721 590066721 927675579 927675579 362817288 626258132 626258132 185593859 109280940 75929632 97043688 289148752 289148752 113271810 1132576 291807776 291807776 291504546 271058178 294685762 294685762 28766018 810260148 992877879 992877879 545658497 776674048 776674048 657722169 101001232 621227297 621227297 355248992 626640480 1002451193 1002451193 887562196 174728692 939896116 963241383 963241383 153962627 648192 151756940 492114088 492114088 492047022 1024529518 1024529518 840739879 840739879 957491652 957491652 815217219 712910867 860173393 860173393 760029708 731266612 731266612 730977009 961614491 961614491 876824502 876824502 136975620 700521152 701373669 701373669 680278224 56812288 47450816 193975888 193975888 138183988 179992432 179992432 135666180 176024480 176024480 163894336 163894336 897588249 897588249 852471154 852471154 850062592 596272177 326363251 607186092 959707943 959707943 475174070 680538828 705896859 879106443 1011571718 1011571718 415241536 378684118 382915290 382915290 168357012 168357012 398255264 398255264 396496280 396496280 116456344 116456344 163568564 163568564 375930880 375930880 181986564 189526754 315599944 315599944 441135446 447748692 469150626 469150626 274031264 27565984 537137152 537270273 537270273 537268225 739154049 739154049 356198186 256268304 705218613 705218613 598514452 783650513 783650513 771091437 276261788 276261788 333599612 442552718 442552718 772018206 876806099 876806099 340904769 90318988 278994978 278994978 807473314 807473314 488771875 583413938 583413938 449056028 921181688 921181688 538975520 532460058 532460058 420993656 511778910 511778910 292833104 292833104 56686720 818582723 818582723 383919413 534843635 947137204 947137204 1000156029 1000156029 1010304783 1010304783 833192325 833192325 375098637 648869773 648869773 444580868 980317891 980317891 429562099 219540012 219540012 102233752 64902896 558761984 940115986 940115986 679350660 1044391340 1044391340 473483022 614288735 614288735 801298920 816051670 816051670 157686180 52563316 55050576 69323032 69323032 524714010 524714010 1059217448 1059217448 884081097 944966007 944966007 854014419 854014419 919086596 919086596 478355682 391044122 395930344 395930344 152365094 193070080 193598580 193598580 195580944 195580944 114953552 74849160 106107472 489898624 489898624 259310228 259310228 148438408 248545316 248545316 114293976 140384200 175178544 175178544 52971652 47783792 86196704 86196704 103954296 103954296 65215248 65215248 595930648 643236472 643236472 67317768 24155105 24155105 546605089 546605089 667934884 667934884 657713912 610135689 571788304 282636610 771391104 944270670 944270670 202171816 886092171 886092171 604379145 370171918 469860890 585076548 585076548 171213968 691816020 716439269 792250820 792250820 703618465 703618465 57462192 607939466 810148995 810148995 973113412 973113412 873879800 873879800 554047658 436343780 773454364 773454364 758045997 678356393 909040785 909040785 604081930 486801568 486801568 84363016 34782482 285347874 1041506092 1041506092 922659459 810901467 214250276 692258985 1041793412 1066001535 1066001535 638389781 969180189 969180189 332775554 247718530 945959124 945959124 909648812 909648812 906167526 650182109 716964148 761710912 761710912 1072291938 1072291938 674629510 967498005 1013271111 1013271111 742597050 1013461726 1013461726 1012011663 719665526 719665526 897666426 897666426 815860034 815860034 329845104 329845104 51462944 463775808 463775808 244065174 1038100320 1038100320 833945615 1011124896 1011124896 626262583 463015038 1024703062 1024703062 452232025 292913636 816843399 816843399 406061410 620757889 728366994 728366994 937145224 937145224 559899060 775431145 816960245 937137883 1017834556 1017834556 845844947 869811427 869811427 816184547 583235920 317852560 317852560 107110480 615977600 615977600 584180433 347083922 347083922 333064056 330441762 281154848 281154848 32118240 32118240 271969088 581368419 581368419 171136756 192628500 192628500 171987728 193627172 193627172 752633808 772541469 772541469 576785356 235954584 235954584 256362404 256362404 176345092 147249348 258544764 258544764 782330214 782330214 348504534 843377112 843377112 344238235 482858036 482858036 185051222 443148980 727054482 727054482 549187456 726341722 726341722 880869451 942283851 942283851 885068940 885068940 488850566 1005212999 1005212999 587788592 486614348 486614348 847372441 847372441 184549428 151044112 407132000 407132000 213133426 130378808 171117964 275183332 448565014 448565014 442681136 50800672 291508224 291508224 291504546 84317442 288275656 288275656 94562732 128200596 247594584 247594584 197300448 83392048 741861401 796088380 796088380 608383113 206304396 239359284 239359284 230487928 684065428 684065428 755025040 755025040 151253040 151253040 119331408 119331408 277523072 277523072 113676880 33904904 273862784 273862784 341348282 373115540 461671982 461671982 385092570 482752446 482752446 452461006 452461006 689440860 689440860 102222978 422311206 422311206 154215204 272299182 272299182 38409360 390452600 390452600 78648112 234627912 277201204 541922822 594193010 594193010 980436448 980436448 940820032 940820032 679852818 711839157 711839157 692758850 1014769893 1014769893 967115596 414710246 352674058 347887424 406561446 406561446 287385408 415941510 415941510 328779314 328779314 324044400 93556768 93556768 118851704 118851704 564489344 635750881 635750881 685802525 685802525 654360633 57486768 564732972 564732972 729409392 729409392 718054405 718054405 558309813 784403424 784403424 83282445 111325426 520318986 520318986 672026776 672026776 944836146 944836146 356041353 145438020 343906440 343906440 89754174 211028624 211028624 522990384 522990384 368260074 438304768 438304768 92303624 138428616 138428616 46232592 83919904 83919904 68009984 68009984 247808 75514960 126558304 126558304 26030080 25182336 25182336 6047360 13108992 50535572 232655756 232655756 639057712 639057712 609627492 565510216 565510216 881086094 957476424 957476424 810607139 805864068 218649604 218649604 134906924 600403232 600403232 690655617 739584525 1026558039 1026558039 489808248 489808248 814867011 814867011 639672654 974586692 974586692 849872201 849872201 915283065 915283065 539826954 323342048 374620208 630980707 630980707 350492056 612708913 612708913 170757312 472129822 983311371 983311371 422158966 341101366 875366050 954695433 954695433 643791046 490909378 384610800 384610800 352969698 401822712 401822712 561054368 561054368 560013729 542188161 542188161 3551232 564034336 741262348 741262348 219595213 95072104 574038894 798040638 798040638 791990873 791990873 645960028 772792447 772792447 960529734 960529734 696452291 289878353 181739650 584846928 584846928 560733601 560733601 834577919 834577919 966148868 966148868 542378736 833759715 833759715 786827280 890811056 1063255103 1063255103 541692254 634154711 634154711 478794252 478794252 423571666 341186420 240900276 165391440 214452036 233212969 233212969 232702117 136408900 525545660 525545660 302121088 272629906 943355788 1008288799 1008288799 788600481 459450707 459450707 864042002 864042002 663625105 726285461 726285461 578029988 265098900 265098900 238515124 217235160 525312 8396896 25231456 127736944 127736944 67800064 212696176 212696176 448921822 448921822 894700203 894700203 508561789 844735483 946390407 946390407 819578759 961171553 994125345 994125345 188298580 195169552 195169552 168538308 168538308 158525296 158443596 767774665 767774665 746858948 730542160 730542160 715789397 564208912 564208912 664282184 664282184 193343980 379450920 379450920 361612898 580303096 658852597 658852597 774964232 774964232 639918080 640018713 640018713 120899128 605677156 729527692 729527692 192573584 59769456 45622336 24191904 28736416 180163125 674931488 674931488 972271954 972271954 303088146 303088146 74965650 331547522 331547522 1002503272 1002503272 865144422 865144422 844960373 1012799526 1012799526 503467722 503467722 353892906 29434080 676858628 676858628 543952257 286787464 154930342 338302218 437420066 437420066 226873964 306681366 402245344 402245344 397548418 397548418 376033034 301630090 296513408 77101498 329897648 333045954 333045954 377496106 377496106 503997610 503997610 562148180 562148180 669477102 1011989800 1011989800 72352392 72352392 828837120 828837120 599327011 611989573 611989573 551912737 604060321 604060321 260715599 906890783 906890783 219737206 797198924 797198924 599949349 588450081 978334487 978334487 939401211 939401211 448470975 816838835 905448143 928199355 928199355 577386705 577386705 781045312 781045312 654544596 125479768 118374061 680306341 680518149 680518149 553966661 159764549 686572928 715242880 715242880 191307320 251932080 251932080 57416832 66586608 66586608 535527850 535527850 238628298 238628298 410022242 410022242 355928074 519336720 519336720 121089306 197209168 197209168 153158096 67324256 373309906 373309906 381730946 381730946 64460850 376504344 376504344 840016618 840016618 827434696 610656796 610656796 266612556 266612556 36804228 28521312 227157772 492700570 492700570 392829368 795479730 799048645 814259429 814259429 346212333 4731904 134231168 139146372 676034660 676034660 138412164 138479232 138479232 560005760 560005760 38090401 590097544 590097544 113595160 115866072 214965184 214965184 180478164 134332416 134332416 34873360 712312369 738596877 772932253 772932253 753309381 753309381 678979461 565646544 565646544 842781443 977008407 993764125 993764125 739680295 776975645 776975645 641987759 583832484 584582865 624906460 624906460 639372825 1054815107 1054815107 820684486 265898488 265898488 62476004 154215204 154215204 151655460 151655460 171084432 173753748 173753748 141373440 37099264 8884672 8775680 44547664 45187856 45187856 46475472 46475472 173294100 173294100 174124432 180278996 180278996 46187156 24906720 266604625 641763373 778090989 778090989 155679152 28650336 28650336 707582217 740447260 740479245 740479245 927675579 927675579 557073009 626258132 742760532 742760532 400943123 580742345 580742345 276655110 722299685 722299685 491589990 491589990 291807776 291504546 271058178 294685762 294685762 129136051 810260148 992877879 992877879 474926112 657854464 657854464 657722169 495977070 495977070 877219360 877219360 791981431 626640480 347360713 550261245 656417189 723526692 723526692 573121809 797453461 797453461 943718490 943718490 492114088 492047022 1024529518 1024529518 840739879 840739879 957491652 957491652 815217219 712910867 860173393 860173393 760029708 731266612 731266612 1005524848 1005524848 945105543 295579495 136975620 136975620 134249988 134531076 136724992 136724992 26644736 9722464 8702016 138183988 386069018 386069018 385907578 386060346 394267728 394267728 394523752 394523752 897588249 897588249 852471154 852471154 850062592 326363251 326363251 540463361 959707943 959707943 531050180 680538828 705896859 879106443 1011571718 1011571718 415241536 335646092 77778954 157504096 157504096 59595184 57060464 396419074 396496280 396496280 367575322 341153024 341153024 378048130 378048130 344172176 181986564 181986564 315599944 315599944 273155202 447748692 469150626 469150626 18303010 71975048 855902993 855902993 292476322 812014466 847902000 847902000 256268304 256268304 956424224 956424224 598514452 783650513 783650513 771091437 896265219 896265219 514501170 933722565 933722565 883293840 883293840 876806099 770502384 770502384 506760094 506760094 418557086 418557086 421193514 1026200363 1026200363 560278576 921181688 921181688 884218580 912693471 1057376283 1057376283 1002623223 1002623223 427824661 458783728 814873009 818582723 818582723 383919413 534843635 555896261 555896261 1000156029 1000156029 1010304783 1010304783 833192325 833192325 449417306 508294302 508294302 373651920 33762260 8554624 8554624 5533760 18548736 18548736 554639360 555695649 940115986 940115986 679350660 1044391340 1044391340 391796025 614288735 614288735 801298920 816051670 816051670 241858776 241858776 331876800 331876800 329640306 329640306 52731970 21423136 21423136 26528352 26528352 25643584 299244258 475347008 475347008 305147904 305147904 46526544 269982976 621364795 799146039 799146039 808489481 808489481 537586288 1037027651 1037027651 361237730 629351059 992216300 992216300 801370988 801370988 678671141 678671141 248545316 114293976 140384200 614956160 681443540 681443540 718031549 718031549 592013325 105970345 105970345 644715064 644715064 595930648 643236472 643236472 74180233 343534994 343534994 546605089 546605089 361565466 657713912 657713912 610135689 675252920 776511117 776511117 771391104 544580740 67279400 886092171 886092171 370171918 370171918 551855749 551855749 549748096 549748096 705376129 705376129 792250820 792250820 90719720 90719720 173558124 607939466 810148995 810148995 545615815 865321826 865321826 776737312 776737312 186381876 340271270 340271270 218702892 188371480 270586386 270586386 144849988 486801568 486801568 358319124 589768463 589768463 288471870 980501489 980501489 810901467 695414920 695414920 1041793412 1066001535 1066001535 780249831 969180189 969180189 624551856 624551856 945959124 945959124 909648812 909648812 906167526 822364824 904662507 904662507 756840608 1072291938 1072291938 451033148 762663682 1013271111 1013271111 742597050 57357176 34079760 268635444 719665526 719665526 597847088 597847088 42207312 580914192 580914192 311262240 51462944 463775808 463775808 353431276 1052893850 1052893850 833945615 831521379 567296643 537969153 463015038 630229520 895665120 895665120 946303687 950219079 950219079 877767497 877767497 620757889 1049096 29281114 386536506 512463180 775431145 929358370 929358370 1017834556 1017834556 682026133 682026133 588358580 588358580 464842320 433637988 433637988 195359220 615977600 615977600 601891057 601891057 333064056 333064056 271322370 270550144 270550144 301938792 356667562 356667562 581368419 581368419 52551984 207872168 207872168 764498252 764498252 672260613 752633808 772541469 813696387 813696387 719336788 887792970 887792970 175124620 251354968 251354968 500662654 500662654 260055096 260055096 316795550 316795550 347351169 347351169 482858036 482858036 437392624 443148980 727054482 727054482 549187456 369677144 638587472 638587472 344130120 269693442 885068940 885068940 488850566 488850566 509158678 713662794 713662794 312533998 240715529 143897607 774601352 774601352 619175419 591178546 813084012 813084012 240022906 275183332 448565014 448565014 173717938 74629436 312475994 312475994 196350176 203823372 224861050 224861050 215326386 128200596 247594584 247594584 235786480 674266112 741861401 796088380 796088380 608383113 206304396 239359284 239359284 629473856 684065428 684065428 755025040 755025040 151253040 272894082 272894082 115123264 72739464 113676880 113676880 277007192 344302154 344302154 277866202 110185848 91212176 377888336 385092570 570430367 570430367 246945612 515379475 515379475 170133568 893075859 893075859 660929937 508186773 360906970 696955136 747295821 747295821 673486632 28363008 18274848 277201204 963281188 963281188 594193010 980436448 980436448 182232897 679852818 679852818 711839157 711839157 692758850 1014769893 1014769893 967115596 487038406 298070976 297208610 78655752 78655752 112858968 121657264 121657264 240709835 1028785701 1028785701 239257229 239257229 134770829 118851704 189009028 568593408 652214745 685802525 703071717 703071717 670826713 670826713 609263701 725697525 725697525 681488081 681488081 577969113 784403424 784403424 83282445 111325426 520318986 1044736183 1044736183 805404677 805404677 698877392 698877392 769704429 769704429 704153096 89754174 211028624 211028624 60452562 170533456 170533456 438304768 438304768 40748352 138428616 138428616 91268600 72082456 72082456 235896832 235896832 243917916 264299532 264299532 201412720 63288448 25313920 25313920 5512416 13108992 13108992 45014352 45014352 8914304 46586128 46586128 11011200 67110408 79504904 79504904 1027083072 1027083072 1058675307 1058675307 360800795 974099835 974099835 525071550 525071550 674563850 1026558039 1026558039 948562737 948562737 814867011 814867011 639672654 974586692 974586692 849872201 902503136 922361595 922361595 844640410 398266178 398266178 357710360 307117378 350492056 521471438 521471438 102887216 472129822 472129822 422158966 422158966 225019516 424731538 424731538 266307712 490909378 490909378 384610800 384610800 352969698 446767446 446767446 295233026 295233026 294159458 550609216 550609216 614737928 614737928 883754315 883754315 808137027 1052448799 1052448799 974893379 798040638 791990873 791990873 710173482 772792447 772792447 1020002509 1020002509 746924142 746924142 836764756 956301734 956301734 560733601 560733601 103943961 629067556 629067556 550257324 542378736 867074321 867074321 177495060 890811056 1063255103 1063255103 541692254 889642106 1033538625 1033538625 886052045 878384988 15259584 125700557 125700557 214452036 412104754 746525260 805504407 805504407 554770977 525545660 363866248 264704584 943355788 1008288799 1008288799 788600481 459450707 459450707 864042002 864042002 663625105 726285461 726285461 578029988 265098900 265098900 238515124 217235160 36309552 33625648 33625648 42398728 201615468 201615468 212696176 212696176 186911028 262353276 262353276 457185288 467737598 467737598 418383558 409470080 293716160 293716160 222433452 232135404 232135404 222765632 167919788 167919788 138641520 158443596 158443596 776414584 776414584 746858948 730542160 730542160 715789397 453583514 554626139 554626139 546957892 29004532 379450920 379450920 361612898 386012224 637808904 639707137 639707137 572995857 639918080 640018713 640018713 35799305 52293888 55816692 192573584 192573584 75505736 75505736 24191904 88547464 88547464 71383208 41306278 972271954 972271954 303088146 303088146 74965650 331547522 331547522 1002503272 1002503272 743243928 769141407 769141407 1012799526 1012799526 503467722 727695507 727695507 913958418 913958418 676858628 633602144 633602144 569561865 567534186 338302218 357094844 510783902 510783902 104354120 104354120 3281664 4343048 301630090 301630090 384958760 384958760 315621714 72483834 18036872 109060424 120272184 268543656 464187456 698524176 733213557 733213557 1011989800 1011989800 1009791000 754649499 828837120 828837120 757108621 611989573 611989573 551912737 604060321 604060321 220775724 61982556 134226440 134226440 805666944 862317687 1014785119 1014785119 930875734 930875734 939401211 939401211 751972856 816838835 905448143 928199355 928199355 807813132 421239389 336836201 336836201 283389001 312713888 312713888 43242592 41058976 187359264 187359264 134232192 37873952 37873952 33862688 23299216 85441468 455713388 455713388 508450954 508450954 447610526 189607092 189607092 170734244 151257376 151257376 171188992 519336720 519336720 121089306 197209168 197209168 153158096 33836352 373309906 373309906 381730946 381730946 64460850 356700338 375598546 375598546 902665923 902665923 610656796 620809604 620809604 872732267 872732267 823713315 904692184 932581670 932581670 633081705 959710242 959710242 814259429 814259429 346212333 153480392 553769127 553769127 676034660 679678052 822145062 822145062 432087270 432087270 798744192 798744192 717068605 445925892 445925892 146923716 608477836 608477836 65104664 65104664 254350364 254350364 759419452 759419452 572005408 699928769 699928769 677517200 677517200 540929793 543835782 842781443 977008407 993764125 993764125 809796447 776975645 776975645 1019259033 1019259033 584582865 624906460 624906460 133360816 302785546 302785546 22546080 280080354 280080354 195707008 21094560 21094560 8470752 6697344 8413376 8413376 6549888 12771648 12771648 8884672 2349952 44547664 45187856 45187856 33778496 10075712 48482384 143783504 174124432 180278996 180278996 48634320 163715280 197265600 197265600 192076432 192076432 50747568 50747568 25198656 707582217 740447260 740479245 740479245 223056109 218607233 778371117 778371117 742760532 772115684 876997224 876997224 580742345 276655110 722299685 722299685 491589990 491589990 283167200 483426590 503465700 503465700 358221608 664705553 664705553 552846317 552846317 474926112 577046672 577046672 539042049 495977070 495977070 877219360 877219360 791981431 543474352 653832180 653832180 656417189 656417189 608244024 105518232 797453461 797453461 943718490 943718490 630558265 630558265 927366802 927366802 570759733 554510912 995117428 995117428 560037026 706726291 706726291 286134277 445146324 954930900 954930900 1005524848 1005524848 963777447 454131600 675110917 675110917 571637252 571637252 587224736 587224736 51419664 58740928 60296304 94023250 386069018 386069018 385907578 386060346 394267728 394267728 394523752 394523752 34070672 37897442 621316432 820020242 820020242 311689682 311689682 281154242 380686682 380686682 531050180 531050180 510519332 138546628 203894144 483156296 818742409 818742409 339286676 310900818 242929930 515921958 515921958 396419074 396419074 777168446 828539528 828539528 489030188 378048130 378048130 418073312 712423330 712423330 682924464 677757930 868676529 868676529 934449787 934449787 573606257 824800472 855902993 855902993 606827810 812014466 847902000 847902000 426906534 964765728 964765728 956424224 1024119855 1024119855 273228930 273228930 896265219 896265219 514501170 933722565 933722565 883293840 883293840 662784865 770502384 770502384 506760094 506760094 418557086 538337321 538337321 1026200363 1026200363 987829719 626729838 30879930 884218580 912693471 1057376283 1057376283 1002623223 1002623223 427824661 458783728 814873009 814873009 64305504 52804256 92622944 92622944 99125280 116207064 195779308 195779308 99781008 387338460 507585104 507585104 539677953 955382147 955382147 986524099 986524099 459553364 459553364 169198358 1065601136 1065601136 588351752 555695649 689975973 906093080 906093080 877636868 877636868 805564723 740708663 572257809 240858644 215786240 241858776 396358266 646089866 814926352 814926352 924838960 924838960 1059385994 1059385994 799138173 799138173 746004985 650430535 719653749 1046653124 1046653124 334541152 228642828 228642828 621364795 799146039 799146039 808489481 808489481 537586288 1037027651 1037027651 361237730 629351059 992216300 992216300 801370988 801370988 678671141 678671141 164643808 113744856 113744856 614956160 681443540 681443540 718031549 718031549 592013325 105970345 105970345 644715064 644715064 612606464 86082080 86082080 74180233 343534994 343534994 162871676 361565466 361565466 34733568 34479120 270853930 675252920 776511117 776511117 625007076 166117545 0 150178624 150178624 138934404 173224596 551855749 551855749 706480645 706480645 705376129 705376129 769157044 769157044 90719720 134340612 173558124 173558124 162827664 269781508 430225521 882189833 882189833 776737312 776737312 321746848 587780770 696040123 696040123 947070951 947070951 901650529 683083666 421585004 529407026 529407026 606461997 755050540 755050540 980501489 980501489 749016927 695414920 695414920 552020326 286269608 323346580 780249831 957382700 957382700 624551856 624551856 838382028 941978390 941978390 698751333 509042682 822364824 904662507 904662507 235406364 235406364 451033148 451033148 367340010 375572488 375572488 73207202 372194586 372194586 372194586 117706672 384568848 384568848 344456394 301131682 580914192 580914192 296301424 18885472 543894432 562771041 562771041 1052893850 1052893850 411041940 851624128 851624128 815026587 881796137 881796137 895665120 971820519 971820519 950219079 950219079 877767497 877767497 1037075273 1037075273 882037323 757357414 512463180 512463180 929358370 929358370 469378498 469378498 682026133 682026133 588358580 588358580 450567973 433637988 433637988 195359220 195359220 55379328 635308603 635308603 350885458 350760674 841155952 841155952 900534113 900534113 880548394 356667562 92776448 211757668 211757668 207872168 207872168 764498252 764498252 672260613 707592980 707592980 813696387 813696387 719336788 887792970 887792970 175124620 251354968 251354968 500662654 500662654 440666262 512813126 512813126 515899614 515899614 347351169 203578057 171086016 437392624 437392624 494932908 494932908 437164506 860931764 860931764 969642746 969642746 134349408 428028006 438393990 438393990 430006784 509158678 893420798 893420798 626630693 755565640 755565640 774601352 774601352 619175419 591178546 813084012 1013609494 1013609494 162792804 162792804 162022148 25659718 277351414 312475994 357701756 530321082 530321082 456397788 470427514 470427514 523489800 523489800 235786480 235786480 753972340 753972340 232114696 232114696 677512816 711143829 711143829 250321981 629473856 629473856 131279017 73606472 115938464 115938464 342475504 342475504 115480344 384582792 384582792 309192450 284214210 344302154 344302154 284887634 109743866 524670076 524670076 358691114 570430367 570430367 286207026 515379475 515379475 439095362 893075859 893075859 660929937 508186773 407783478 696955136 747295821 747295821 673486632 28363008 46422928 193672308 963281188 963281188 142825603 579172116 579172116 976503668 976503668 313210194 313210194 409872900 409872900 533767174 533767174 487038406 487038406 90314922 360716482 476639238 476639238 356896832 439655406 439655406 434451520 1028785701 1028785701 239257229 760218688 760218688 11052717 189009028 652560384 652560384 652214745 703071717 703071717 707330320 707330320 609263701 725697525 725697525 739510384 739510384 670051249 561840393 99491304 99491304 620873248 620873248 1044736183 1044736183 805404677 805404677 698877392 698877392 925549024 925549024 704153096 390660112 81005256 392110400 392110400 170533456 170533456 154409252 51128692 40748352 194240768 194240768 91268600 218398848 218398848 235896832 235896832 243917916 264299532 264299532 201412720 63288448 25313920 25313920 28081504 28081504 101865492 153987524 177271646 887888034 887888034 873867510 604982882 853415066 853415066 916729166 1027083072 1027083072 1058675307 1058675307 814517332 974099835 974099835 525071550 525071550 674563850 674563850 472228467 948562737 948562737 629935209 613772901 632044393 925431123 925431123 850117947 902503136 922361595 922361595 844640410 398266178 398266178 357710360 279974034 42476928 377701906 377701906 105980568 540057659 540057659 291627426 609776939 1064922866 1064922866 984354135 338177134 338177134 590397445 590397445 901289568 901289568 823971363 823971363 549748772 417383106 956057856 956057856 954770563 832169089 832169089 883754315 883754315 808137027 1052448799 1052448799 974893379 734157890 648016735 766145216 766145216 488651373 1020079746 1020079746 1020002509 966852927 746924142 836764756 956301734 956301734 587443752 587443752 257562300 629067556 1014412860 1014412860 71988149 867074321 867074321 388333692 1042979120 1042979120 525811789 889456683 889642106 1033538625 1033538625 886052045 1052858224 1052858224 76595173 434287653 434287653 412104754 951409344 951409344 822091991 554770977 363866248 363866248 264704584 247660928 247660928 245576028 6303964 33568896 38221968 38221968 21309600 21309600 21309600 43262144 43262144 39059968 68551168 85196888 85196888 36309552 33625648 87871072 87871072 201615468 201615468 195349608 153229572 144752964 262353276 262353276 212334924 212334924 120321336 409470080 409470080 293716160 293716160 222433452 232135404 232135404 222765632 173408476 167919788 223441120 223441120 120660792 776414584 776414584 693632640 693632640 340657270 983046144 983440983 983440983 17376288 17376288 17376288 17376288 17309696 101188632 639894548 639894548 201590784 69541908 723994428 723994428 632419105 632419105 187585792 733754372 733754372 629526044 265992 75505736 132131172 245705052 245705052 236151124 71383208 562221430 562221430 354586643 708433831 708433831 743633807 743633807 324282763 324282763 761230202 761230202 818298412 818298412 777915539 777915539 55051440 727695507 727695507 913958418 913958418 611357835 633602144 633602144 569561865 567534186 25331744 357094844 510783902 510783902 397301456 397301456 359180464 359180464 314640946 314640946 384958760 384958760 315621714 268767602 326178830 386480010 386480010 268543656 519988394 698524176 733213557 900744200 900744200 1009791000 1009791000 767239337 767239337 757108621 757108621 618777860 684905157 684905157 552686501 203761844 429236580 705926188 705926188 480799768 805666944 862317687 1014785119 1014785119 692618099 739533449 739533449 751972856 751972856 246413484 246413484 197729140 807813132 807813132 561468706 335899753 906480643 906480643 537426970 312713888 140536420 136719060 136719060 50407776 50407776 200016964 200016964 193471284 61884672 85441468 455713388 455713388 508450954 508450954 461835782 461835782 189607092 170734244 444678114 444678114 217398254 217398254 158880696 107982812 92983400 67818504 23373192 33836352 33836352 355533320 400630178 400630178 376505274 80054610 375598546 375598546 902665923 902665923 678305157 678305157 1048842748 1048842748 872732267 823713315 904692184 932581670 932581670 633081705 959710242 959710242 608174217 81434372 18689836 153480392 553769127 553769127 403101702 679678052 822145062 822145062 432087270 432087270 798744192 798744192 717068605 481642566 481642566 550787164 608477836 683961300 683961300 148019457 254350364 258176396 759419452 759419452 688074789 688074789 645609369 677517200 677517200 207827340 103209240 683555588 963619163 963619163 809796447 809796447 481610574 240124572 1019259033 1019259033 545333313 545333313 544915866 133360816 302785546 302785546 162143652 280080354 280080354 195707008 167884177 145277829 160694689 719583457 719583457 713035221 570741137 539905029 543518849 543518849 144938244 551369857 551369857 139750612 50013648 50013648 179825620 179825620 172490836 172490836 4714752 48634320 163715280 165810660 165810660 192076432 192076432 50747568 50747568 25198656 581468256 581468256 210924296 210924296 546993132 687027949 778371117 876691961 1004536311 1004536311 876997224 876997224 647050896 647050896 174530303 409766656 488857580 812839661 902616078 902616078 648579529 545785752 358221608 664705553 664705553 571460669 621119644 793196733 793196733 577046672 631620756 631620756 344191050 788706486 788706486 538496289 543474352 653832180 653832180 707666029 707666029 556144929 421267232 973589703 973589703 300918197 658451281 658451281 630558265 927366802 927366802 570759733 554510912 995117428 995117428 558725907 320457255 193745776 170395152 445146324 954930900 954930900 598026609 963777447 963777447 454131600 675110917 675110917 571637252 571637252 587224736 587224736 65560048 58740928 60296304 60296304 51021376 62416432 62416432 387072 57174160 171570180 171570180 395274427 1061401711 1061401711 621316432 621316432 770182485 770182485 599974330 814878787 814878787 692195493 909422217 909422217 508102889 418171170 614649928 614649928 818742409 818742409 339286676 310900818 242929930 961169410 961169410 693034149 268735655 777168446 875321118 875321118 781880106 998263471 998263471 829806727 712423330 712423330 682924464 677757930 868676529 868676529 934449787 934449787 573606257 896541600 542839592 606827810 606827810 895080355 895080355 970896003 970896003 964765728 964765728 705169458 1024119855 1024119855 162668595 72425504 72425504 16851592 177381968 177381968 59852756 199235200 199235200 52084736 87873392 87873392 109195844 223852204 458980028 538337321 538337321 984651960 987829719 987829719 626729838 333586920 356516010 460327274 460327274 265687112 265687112 72357504 72357504 56964000 57802976 64305504 64305504 52804256 80738416 80738416 99125280 116207064 195779308 195779308 99781008 387338460 507585104 507585104 539677953 955382147 955382147 986524099 986524099 459553364 520153404 520153404 1065601136 1065601136 588351752 946913584 995099319 995099319 906093080 877636868 877636868 805564723 740708663 692416180 525969611 406026840 336727616 396358266 646089866 814926352 814926352 924838960 924838960 1059385994 1059385994 799138173 799138173 746004985 804548271 945344060 1046653124 1046653124 707113513 228642828 228642828 487661614 487661614 822221576 858496024 858496024 541927684 541927684 503589273 151784484 151784484 147590340 147590340 135716672 29602020 228014604 651799240 651799240 776904661 776904661 644689305 254935232 254935232 235615872 235615872 121932352 121932352 62163160 562143360 612606464 612606464 545490120 75625536 100746240 100746240 162871676 162871676 246360888 246360888 34733568 34479120 738553629 738553629 120489768 625007076 625007076 772849688 772849688 615530496 615530496 540037248 538650116 542703233 542703233 706480645 706480645 675565072 141068176 769157044 769157044 64611773 134340612 134340612 490538102 490538102 303155688 290285186 882189833 882189833 562635400 562635400 712924552 754708547 880325269 880325269 947070951 947070951 901650529 683083666 421585004 529407026 529407026 606461997 755050540 755050540 847304946 847304946 407185891 407185891 239936672 794601492 1041845913 1041845913 290532055 127716984 1052247584 1052247584 426084251 300057900 941978390 941978390 619055704 619055704 625847459 625847459 571616956 821018739 910386681 910386681 514137137 844706054 844706054 701493873 722664113 722664113 372194586 372194586 570090736 570090736 703621108 703621108 537963107 436144612 436144612 587085296 671356165 671356165 976389655 976389655 140320771 411041940 982728757 982728757 851624128 872916010 881796137 881796137 771512192 971820519 971820519 744130799 622070700 344046216 364504938 1037075273 1037075273 882037323 757357414 544660353 116703940 672256996 701072099 701072099 844300288 844300288 533931038 324010674 168103360 168103360 16853024 16853024 2496832 52697416 117575736 635308603 635308603 350885458 350760674 841155952 841155952 900534113 900534113 880548394 327405272 909411257 909411257 211757668 728311156 728311156 692094612 786179865 786179865 707592980 707592980 672673373 648091096 648091096 201485700 201485700 9160408 242847512 242847512 238821660 344195292 440666262 512813126 512813126 515899614 515899614 269579456 272745158 272745158 503449808 503449808 494932908 494932908 437164506 860931764 860931764 969642746 969642746 232456762 428028006 780440080 780440080 325342788 702884461 893420798 893420798 626630693 755565640 755565640 321361880 881520060 881520060 617338663 118930393 1013609494 1013609494 162792804 162792804 162022148 345386312 345386312 283382108 655491963 709302687 709302687 456397788 470427514 470427514 523489800 733601953 733601953 727754361 753972340 753972340 695604885 671249820 677512816 753882561 753882561 250321981 783340364 783340364 630374944 126878512 633926332 633926332 941809555 941809555 180619844 782770779 782770779 977112343 977112343 900121344 650985745 664047025 664047025 910053570 910053570 358691114 288477694 288477694 286207026 344948840 344948840 439095362 439095362 359465144 359465144 233889382 407783478 489297328 489297328 373678400 373678400 380985178 503868342 503868342 270982036 812365428 812365428 180666501 168346644 976503668 976503668 292238754 192150594 177683028 294424994 294424994 39006864 349610506 349610506 71686824 360716482 476639238 476639238 356896832 439655406 439655406 434451520 434451520 126167160 93354504 760218688 760218688 11052717 2745600 652560384 652560384 698616268 698616268 612896653 707330320 707330320 589744400 589744400 207304332 739510384 739510384 670051249 596641396 596641396 655968148 800589356 800589356 569208265 569208265 562621793 202403360 202403360 219792932 1032577204 1032577204 390660112 390660112 508298834 508298834 392110400 89169928 314688394 314688394 382829280 382829280 518013824 518013824 479735926 479735926 348169244 21908492 164752390 411520674 411520674 411062464 411062464 40000768 10166912 10166912 28081504 28081504 101865492 231438252 238105136 887888034 887888034 873867510 604982882 853415066 853415066 916729166 916729166 836085745 836085745 814517332 814517332 462997764 462997764 201375756 262110832 628362352 628362352 474753883 404023058 404023058 455452156 455452156 170819846 925431123 925431123 850117947 184750426 714349121 714349121 284179677 263929070 391003514 391003514 378012762 696525904 786631384 786631384 363991914 540057659 540057659 291627426 762419366 1064922866 1064922866 984354135 627574794 338177134 590397445 590397445 901289568 901289568 823971363 823971363 549748772 417383106 956057856 956057856 954770563 832169089 832169089 559759264 875557378 875557378 200277492 221837588 221837588 144855688 142483332 766145216 766145216 488651373 1020079746 1020079746 966852927 966852927 269236514 541799744 701447329 824173628 824173628 587443752 335495154 524017064 1014412860 1014412860 71988149 799109439 799109439 388333692 1042979120 1042979120 525811789 1020297896 1020297896 1040809977 1040809977 767100602 1052858224 1052858224 76595173 434287653 434287653 329962866 951409344 951409344 822091991 536944640 37757442 532748685 532748685 720600046 977484711 977484711 908590811 587563582 1050604623 1050604623 495704127 569192117 703342581 703342581 567362692 261352004 261352004 233284220 145259048 70725474 111107753 111107753 87871072 276769627 276769627 100218822 100218822 84817026 298980066 648449794 659080377 659080377 974262807 1026643753 1026643753 557343024 278958610 50412194 586412829 586412829 551680940 641749161 641749161 625444961 650507873 650507873 540618581 143167621 181293533 181293533 126427728 983046144 983440983 983440983 995968803 995968803 137673997 303943176 352887354 352887354 639894548 639894548 738459929 738459929 723994428 723994428 632419105 632419105 789309768 789309768 733754372 629526044 77271572 243402444 243402444 245705052 245705052 236151124 92689544 753453302 753453302 442536263 752513402 752513402 943723853 943723853 343634573 324282763 761230202 761230202 818298412 818298412 919595197 919595197 421078566 465635024 465635024 288430216 360135594 367198474 367198474 347343690 97089634 480908622 480908622 269885000 402784774 402784774 402659332 397301456 372166928 359180464 314640946 314640946 280789120 278446882 355058316 432599460 432599460 414833806 386480010 377671770 519988394 519988394 612926305 900744200 900744200 880803915 278672774 767239337 767239337 553943447 553943447 618777860 684905157 684905157 552686501 203761844 429236580 705926188 705926188 756157984 756157984 190242672 673750898 673750898 1018567354 1018567354 920969096 724904757 670942779 670942779 223347372 136385792 288776716 561468706 561468706 335899753 906480643 906480643 537426970 140536420 140536420 136719060 136719060 134465856 134465856 200016964 200016964 193471284 61884672 58010212 171683574 458642096 531718874 531718874 463343408 463343408 372309248 372309248 488786770 488786770 394381848 488233500 488233500 471051832 471051832 83890176 84021288 84021288 298853058 355533320 400630178 400630178 376505274 80054610 302231104 302231104 378572048 619499596 678305157 678305157 1048842748 1062863978 1062863978 887931571 887931571 510927036 322256568 895761156 895761156 763334792 824329641 1024248357 1024248357 11313760 27216192 27216192 8523840 8597568 164282948 164282948 160567908 164910412 164910412 696889611 1027469103 1027469103 481642566 550787164 550787164 692955904 692955904 644018832 962236982 962236982 305164986 779309317 779309317 713110347 713110347 993328419 993328419 430481240 202510860 531648796 531648796 677515732 735576142 735576142 990921867 990921867 93589696 93589696 28175712 31262176 31277448 80543616 347415522 347415522 162143652 299420170 299420170 167884177 167884177 145277829 403086086 719583457 719583457 713035221 570741137 539905029 543518849 543518849 144938244 551369857 551369857 139750612 50013648 62923664 179825620 179825620 172490836 172490836 191631096 191631096 80543912 87296808 242427988 242427988 40939520 41012112 41012112 6488320 581468256 763518029 763518029 764073069 764073069 782453517 782453517 876691961 1004536311 1004536311 432707748 442363542 647050896 841292945 841292945 575547667 488857580 812839661 902616078 902616078 648579529 545785752 210498920 387075732 442411700 571460669 621119644 793196733 793196733 490926231 631620756 631620756 446950527 788706486 788706486 478937520 433851024 433851024 585123588 707666029 707666029 556144929 421267232 973589703 973589703 645473160 658451281 658451281 212910924 212910924 141298068 987832772 987832772 954836992 954836992 288263174 580978774 948240451 948240451 297313987 733261444 733261444 598026609 699924549 699924549 596252560 561251825 555749152 302383832 302383832 193743808 272385608 302269442 366217450 366217450 339781050 339781050 315728850 315728850 846964627 846964627 993132214 993132214 679212580 1061401711 1061401711 781600102 781600102 770182485 770182485 599974330 814878787 814878787 692195493 909422217 909422217 508102889 418171170 614649928 614649928 483398260 414714386 9442816 680676160 680676160 961169410 961169410 693034149 268735655 740433424 875321118 875321118 781880106 998263471 998263471 829806727 683785059 554967044 974336535 974336535 412758049 29433008 281840610 281840610 566081282 896541600 0 83330 541738666 895080355 895080355 970896003 970896003 696137219 554304736 549589185 946930340 946930340 346055018 194087490 456428054 456428054 172900402 448791748 448791748 199235200 199235200 61899540 133634480 133634480 140929540 223852204 458980028 458980028 286784034 441676592 441676592 142031748 86047404 333586920 356516010 460327274 460327274 78125056 78125056 7416704 7416704 7696640 9586944 9793728 11983680 11983680 814471647 814471647 516775378 608852043 608852043 514110664 172305096 172305096 680264201 680264201 418931592 982544913 982544913 300966528 300966528 153125848 520153404 520153404 252707388 654320276 654320276 946913584 995099319 995099319 520616074 335153488 741710622 855773733 855773733 692416180 525969611 406026840 372860800 372860800 121636152 327372352 386925346 386925346 34867728 101870848 101870848 12583104 84366593 636349929 804548271 945344060 945344060 707113513 707113513 111620580 93492080 487661614 487661614 822221576 858496024 858496024 541927684 541927684 847449763 847449763 593304957 208344167 740033988 740033988 721195032 541176545 768174324 768174324 776904661 776904661 772080841 772080841 671096856 673571357 673571357 565257057 230197405 230197405 562143360 738780417 738780417 675823876 744500372 744500372 457220390 457220390 103817752 497165402 497165402 97923112 747386952 747386952 738553629 711668768 694157733 550931096 772849688 772849688 615530496 615530496 540037248 538650116 538650116 37964945 2306304 39872768 39872768 6411840 11658048 11658048 10098496 11269440 11269440 490538102 490538102 303155688 290285186 432032356 432032356 306329630 306329630 712924552 754708547 880325269 880325269 394665281 277219000 524293330 524293330 252184730 176688176 151912528 490803372 1044611208 1044611208 851677376 851677376 446556215 446556215 1045555633 1045555633 1041845913 1041845913 290532055 745014893 1052247584 1052247584 776487141 472180320 436308594 560252512 619055704 619055704 625847459 625847459 571616956 821018739 910386681 910386681 514137137 844706054 844706054 701493873 722664113 722664113 218103860 347154282 581506624 581506624 703621108 703621108 537963107 436144612 436144612 587085296 671356165 823178334 976389655 976389655 891546731 1049867563 1049867563 982728757 847749126 872916010 872916010 835352650 542858150 898588456 898588456 502701122 699909798 699909798 557617000 557617000 560339361 560339361 544660353 544660353 382902752 672256996 701072099 701072099 844300288 978896101 978896101 593051730 813723281 827116707 827116707 179141061 675590197 675590197 117575736 117575736 75503728 316149250 316149250 270272210 270272210 291516072 323042240 382740528 382740528 909411257 909411257 267929268 728311156 728311156 692094612 786179865 786179865 608766848 111748865 271625182 648091096 716506756 950042698 950042698 142019092 242847512 242847512 372024238 433153712 433153712 243576378 428130438 428130438 444605588 444605588 272745158 287625234 503449808 503449808 138349928 138349928 419581126 419581126 416059430 387040486 469828096 469828096 277423170 780440080 780440080 296255502 702884461 760253752 843313299 843313299 942949018 942949018 169521530 881520060 881520060 617338663 548553987 807703584 807703584 402973092 274370946 274370946 404431472 404431472 560470348 740559117 740559117 709302687 403123806 239543272 239543272 196117741 733601953 733601953 727754361 731497992 731497992 695604885 671249820 627307189 753882561 753882561 248313909 783340364 783340364 630374944 126878512 1008273474 1008273474 941809555 941809555 180619844 782770779 782770779 977112343 977112343 900121344 650985745 664047025 664047025 910053570 910053570 334181874 264381224 264381224 183710676 183710676 101025000 101025000 421507760 527490190 527490190 325199006 289546272 375432464 375432464 339216138 339216138 380985178 503868342 503868342 694158464 812365428 812365428 180666501 168346644 315708260 315708260 292238754 192150594 177683028 294424994 383059418 383059418 313117258 311964866 120851898 106197040 106197040 91896576 293041984 304345410 304345410 126215734 776319693 776319693 221458797 589788117 589788117 574014293 551600577 624807704 624807704 698616268 698616268 684199681 774114437 774114437 589744400 589744400 207304332 613488260 613488260 546308673 596641396 596641396 655968148 800589356 800589356 174137748 235209088 235209088 202403360 202403360 219792932 1032577204 1032577204 501900416 49291776 508298834 508298834 525673456 525673456 314688394 446742870 446742870 382829280 518013824 518013824 479735926 479735926 348169244 278056896 278056896 411520674 411520674 411062464 411062464 4317312 10166912 10166912 14932736 18355008 23625824 231438252 238105136 238105136 251521552 251521552 249901240 299775948 299775948 314607776 675599408 675599408 270283264 310821424 310821424 153753412 153753412 201375756 924624641 924624641 632668512 940937112 940937112 120596948 455452156 455452156 217807527 355008045 429924423 429924423 301314513 777124777 880956236 880956236 263929070 391003514 391003514 750928456 750928456 786631384 786631384 363991914 126387226 593415729 927768241 927768241 762419366 528282703 986297582 986297582 495550491 128184696 119751936 784445872 784445872 436482318 431487846 411200288 774386799 992092656 992092656 724347515 635731840 559759264 559759264 875557378 879116418 879116418 639121506 639121506 627253590 145588292 762449191 762449191 242287380 854461880 897716331 897716331 499460590 714022374 714022374 339804470 824173628 824173628 567766533 567766533 335495154 627029532 673056908 673056908 801102220 801102220 969532647 969532647 1036856559 1036856559 1020297896 1020297896 1040809977 1040809977 220930775 172565652 134807696 1574400 156238528 160958052 419432994 674529380 687795333 687795333 536944640 456387758 532748685 532748685 720600046 977484711 977484711 908590811 587563582 1050604623 1050604623 797725256 944902611 944902611 704307143 682759061 568723972 261352004 233284220 145259048 70725474 111107753 111107753 68656704 276769627 276769627 100218822 100218822 256716896 298980066 648449794 659080377 659080377 974262807 1026643753 1026643753 557343024 316914222 474178188 586412829 586412829 551680940 641749161 641749161 625444961 650507873 650507873 540618581 476428400 295987374 268478496 126427728 837945156 904028715 904028715 995968803 1043123487 1043123487 908086276 352887354 726189237 726189237 704677041 738459929 738459929 623258897 623258897 595908665 595908665 789309768 789309768 611325596 611325596 77271572 243402444 243402444 80085648 102183440 115551944 115551944 753453302 753453302 589300017 752513402 752513402 943723853 943723853 477514056 240247452 240247452 1037835852 1037835852 663594164 919595197 919595197 817498680 465635024 465635024 288430216 360135594 564476416 564476416 722527209 722527209 667807797 480908622 269885000 402784774 402784774 402659332 372166928 372166928 204065028 204065028 280789120 280789120 278446882 355058316 432599460 432599460 414833806 226818862 377671770 440530738 440530738 401670962 271664180 21041376 201459264 201459264 71980672 136860544 136860544 506273769 546322372 546322372 691318245 691318245 77791524 220410156 220410156 62465904 756157984 756157984 700992904 673750898 780819288 1018567354 1018567354 920969096 631527995 670942779 670942779 223347372 134951940 806107400 806107400 954524174 954524174 605212879 335865857 427059520 427059520 136297256 230021308 230021308 134465856 134465856 18083664 55608400 55608400 48597904 48597904 171683574 458642096 531718874 531718874 463343408 463343408 372309248 372309248 488786770 488786770 402997828 488233500 488233500 471051832 471051832 97916144 97916144 96539136 298853058 298853058 285171714 13602056 289413794 289413794 280331010 280331010 898428507 898428507 742496716 742496716 162140588 1062863978 1062863978 887931571 887931571 982714669 982714669 895761156 895761156 763334792 824329641 1024248357 1024248357 1043202877 1043202877 824070469 824070469 996831296 996831296 1000375942 1000375942 805932738 805932738 696889611 1027469103 1027469103 829777003 609272457 245680476 733973480 733973480 644018832 962236982 962236982 242286892 779309317 779309317 713110347 713110347 993328419 993328419 503978156 503978156 202510860 384303940 677515732 735576142 735576142 990921867 990921867 828753851 828753851 659604153 659604153 643318816 77670664 347415522 347415522 71395904 299420170 299420170 26858024 96900680 97782504 403086086 403086086 540332800 540332800 406345218 4378752 4738176 11868288 12057408 21104768 21104768 24517536 48826824 74104976 74104976 66167232 770069913 770069913 251757428 741012757 741012757 252739856 601087337 698800357 698800357 685694633 85248552 604509297 763790137 763790137 763518029 764073069 764073069 791293953 791293953 344656162 470287374 964826217 964826217 432707748 95492367 841292945 841292945 575547667 306854050 321523724 608703566 608703566 428074946 459354370 459354370 335593768 206046348 143205444 362909708 362909708 268503182 275196032 451499383 451499383 889295044 1036251375 1036251375 478937520 168816320 168816320 141872004 90514752 90514752 541245504 541245504 51584577 645473160 645473160 570950673 106412500 212910924 728510189 728510189 987832772 987832772 984448917 984448917 977367506 862755637 948240451 948240451 598601073 811913169 811913169 601619395 587935905 596252560 596252560 561251825 555749152 302383832 302383832 26876200 272385608 302269442 366217450 366217450 339781050 339781050 315728850 543860064 846964627 846964627 993132214 993132214 679212580 512697745 813863982 813863982 781600102 774753905 722666366 722666366 285888259 136446276 136446276 144707844 157748384 157748384 169134732 169134732 542825027 915587809 915587809 713787683 713787683 1021522383 1021522383 309528929 574096950 907282971 907282971 794035075 794035075 626458791 277957257 397263822 397263822 260243488 537080394 974336535 974336535 412758049 29433008 281840610 281840610 566081282 816498066 90514636 209726506 627549926 1019027015 1019027015 435173549 61551984 554304736 554304736 549589185 614512986 776281403 776678996 776678996 754693912 884943305 941824144 941824144 448791748 182190736 182190736 61899540 138269972 149904844 149904844 140929540 37468944 245767387 957998631 957998631 750070616 991092818 991092818 410922330 535823358 535823358 93066966 93066966 78125056 67769352 142018836 170209296 170209296 324219266 324219266 311112786 814471647 814471647 516775378 608852043 608852043 514110664 172305096 172305096 680264201 680264201 423071602 982544913 982544913 293080560 328910162 458785866 458785866 288671374 252707388 654320276 654320276 574693521 555432551 555432551 520616074 335153488 915077378 915077378 976873239 985932231 985932231 728059002 372860800 372860800 121636152 121636152 386925346 386925346 376361378 398465848 415322510 415322510 518250102 518250102 271155266 860190024 963851175 963851175 506923193 139461444 139461444 179957428 179957428 18391040 184924724 184924724 184623616 152842256 847449763 847449763 593304957 208344167 740033988 740033988 721195032 541176545 768174324 768174324 751641765 617352393 772080841 772080841 671096856 689027753 689027753 565257057 619501697 619501697 675332229 1011224973 1011224973 946129287 744500372 973138309 973138309 890474804 890474804 515474036 497165402 144847172 747386952 747386952 711668768 711668768 694157733 276301351 696777716 696777716 171270544 678593157 678593157 139584132 17192464 538894228 674024709 724792720 724792720 579305952 712057749 712057749 127972117 267202044 267202044 36329776 277394432 311659106 1014574306 1014574306 441899670 441899670 248992262 616828560 616828560 32714097 19146848 240912556 277219000 524293330 524293330 436473214 218826840 258021692 801583373 1044611208 1044611208 851677376 851677376 446556215 446556215 1045555633 1045555633 991783427 991783427 471892044 745014893 745014893 776487141 776487141 472180320 440983972 1027851315 1027851315 552468937 675875276 675875276 553461293 352917914 486943084 942066340 942066340 703698770 703698770 532728868 532728868 155632876 218103860 347154282 581506624 581506624 101549160 244608128 249161436 314389456 314389456 311659178 132727170 823178334 869845733 885317355 891546731 1049867563 1049867563 488769049 96688200 96688200 617067459 883010828 883010828 898588456 898588456 502701122 699909798 699909798 557617000 557617000 160377952 160377952 697290056 697290056 382902752 404906936 404906936 167424482 307791428 978896101 978896101 593051730 813723281 827116707 827116707 276084992 675590197 675590197 600179104 564585441 113711203 316149250 316149250 919738848 920980593 920980593 910629137 838677938 382740528 14339348 629540016 636099241 636099241 633383161 577097308 751316233 751316233 607464025 587153361 676006740 676006740 716506756 950042698 950042698 168077636 141828808 141828808 372024238 433153712 809864255 809864255 806210093 973890261 973890261 722052850 436674098 436674098 287625234 579437152 703825431 703825431 630034738 467057251 743490189 743490189 672153743 671357002 277423170 277423170 296255502 296255502 370131471 554251312 843313299 843313299 942949018 942949018 355591218 93230648 537863841 544635488 548553987 807703584 807703584 402973092 274370946 274370946 404431472 404431472 560470348 740559117 740559117 587860469 900078848 900078848 965672752 965672752 587208938 587208938 855549778 855549778 731497992 85271264 117989616 117989616 177046544 177046544 235244340 235244340 220016172 109319728 109101312 1008273474 1008273474 198719570 198719570 68545032 400277589 400277589 561046367 630749002 1070744212 1070744212 269617410 366759112 366759112 334181874 334181874 307545234 237184920 271031736 524044952 524044952 101025000 421507760 527490190 527490190 325199006 289546272 375432464 375432464 339216138 339216138 102810360 401937264 460357202 694158464 828654835 828654835 569033108 569033108 596355621 596355621 964108290 964108290 1035581160 1035581160 916666202 870062394 870062394 277337434 120851898 58072984 81982728 81982728 338688144 338688144 304345410 126215734 776319693 776319693 221458797 589788117 589788117 574014293 551600577 624807704 624807704 573048081 684199681 719134892 774114437 774114437 253633280 253633280 172749972 214033844 233042412 233042412 220625972 226662924 226662924 739817246 739817246 264505596 264505596 121636980 684155936 684155936 1002561639 1002561639 501900416 501900416 54462724 68095070 283453698 525673456 525673456 176261782 446742870 446742870 397714002 527757790 527757790 299849778 299849778 235733004 289541408 289541408 208514766 58363168 52584032 64931936 64931936 22290400 22290400 14932736 14932736 16067520 18614400 136587554 281485382 373585090 373585090 201067800 843584534 843584534 619384846 941119724 941119724 270283264 270283264 188353552 188353552 153753412 138670212 924624641 924624641 632668512 940937112 940937112 504764314 504764314 449934596 622436352 622436352 706953241 706953241 606086424 777124777 880956236 880956236 298458436 357700266 357700266 750928456 750928456 353751567 287310114 287310114 126387226 593415729 927768241 927768241 822083872 697393369 986297582 986297582 495550491 119751936 449290552 784445872 957205573 957205573 832669317 1017547954 1017547954 992092656 992092656 724347515 635731840 577422480 577422480 548177665 879116418 879116418 831856457 639121506 627253590 858783027 860454179 860454179 543537435 604251851 604251851 622158177 622158177 714022374 714022374 134481920 134217732 4716672 1069741316 1069741316 938026491 627029532 673056908 673056908 801102220 801102220 969532647 969532647 1036856559 1041563860 1041563860 563151488 831522632 831522632 172565652 571297136 571297136 143886020 293591076 293591076 419432994 674529380 687795333 687795333 456387758 456387758 332598364 541343824 583321809 1070679977 1070679977 946679175 222039384 111939372 797725256 797725256 944902611 944902611 704307143 682759061 568723972 132569464 100304632 124340008 124340008 103173312 103173312 81450696 81450696 75243648 236057560 256636092 256716896 256716896 248388828 100663320 348135438 450994250 450994250 345146128 345146128 316914222 474178188 475273010 475273010 25691232 25691232 25691232 44744992 44744992 33968144 620824600 620824600 786719604 934381136 934381136 837945156 904028715 904028715 878522499 1043123487 1043123487 908086276 189022381 726189237 726189237 704677041 251660313 185599749 205459004 572293425 573048081 573048081 540821272 140583300 140583300 71641216 41420688 41420688 80085648 80085648 102183440 172436828 734930384 734930384 589300017 834023424 901130595 901130595 900077931 642127211 477514056 240247452 424220965 1037835852 1037835852 475562097 963162697 963162697 870584704 870584704 858469683 903224539 926098283 926098283 564476416 722527209 722527209 667807797 230032465 411091980 411091980 280893440 306299560 385077968 385077968 787786693 787786693 694225717 871107434 871107434 415007552 544678294 721559029 721559029 773916763 773916763 1013408047 1013408047 790715157 790715157 638690364 613102665 978855433 1045141279 1045141279 1061376045 1061376045 868886020 622053925 728924180 728924180 673585749 1035240971 1043160442 1043160442 806950185 700992904 700992904 574132438 780819288 780819288 540017409 631527995 631527995 731714746 862006147 862006147 822879235 822608931 954797857 954797857 954524174 851815769 851815769 731185413 747061329 747061329 671133336 671133336 178358480 178358480 151267060 151267060 150325380 65134912 23087104 23087104 139462660 306870628 306870628 327555186 327555186 207512376 18351648 368102916 402997828 402997828 278260290 144236622 146833476 198027992 198027992 185973936 118852144 118852144 285171714 285171714 83713536 289413794 289413794 280331010 280331010 898428507 898428507 742496716 742496716 709109177 575280273 432732227 569428072 608512137 982714669 982714669 867244167 867244167 665526885 534738442 649716234 865981789 1043202877 1043202877 824070469 824070469 996831296 1021537679 1021537679 1000375942 889172814 889172814 545859840 548146497 829777003 829777003 609272457 245680476 733973480 733973480 123916728 386650128 386650128 304268722 175248260 175248260 141693844 756043276 756043276 428383885 503978156 503978156 80091336 278008386 470999630 470999630 503858316 503858316 463752492 828753851 828753851 659604153 659604153 643318816 13634176 13634176 8652864 8652864 79741504 79741504 139037185 139037185 135832228 135832228 543562113 543562113 549118916 676017285 676017285 545271201 545271201 162831588 538574625 538574625 199416692 48826824 74104976 152056044 164344536 770069913 770069913 251757428 741012757 741012757 252739856 601087337 698800357 698800357 685694633 85248552 604509297 763790137 763790137 750727936 768646480 788174845 791293953 791293953 344656162 470287374 964826217 1028982053 1028982053 903162603 566299146 583617746 583617746 306854050 321523724 672610821 748427381 748427381 737429560 459354370 335593768 134227008 143205444 362909708 470136960 474140814 474140814 464421166 464421166 889295044 1036251375 1036251375 277377460 277377460 168816320 671213708 787657730 787657730 541245504 583610276 583610276 148900281 685442761 685442761 722251024 722251024 728510189 728510189 162033589 450913794 984448917 984448917 977367506 862755637 862755637 540207124 598601073 811913169 811913169 601619395 331120307 49944528 22430080 22303392 50776672 53215600 53215600 15076816 832594217 832594217 344055882 117776984 123358155 123358155 77459016 848301992 848301992 125045267 36965136 666798326 666798326 512697745 1055300806 1055300806 774753905 774753905 722666366 877674785 877674785 701082276 815175078 915906608 915906608 320938290 321098640 321098640 542825027 915587809 915587809 773898273 832607583 1021522383 1021522383 309528929 574096950 907282971 907282971 794035075 794035075 626458791 767171184 767171184 397263822 235194396 507779084 760531629 760531629 538036265 458806070 458806070 845383344 845383344 816498066 826872464 826872464 627549926 1019027015 1019027015 435173549 664782588 664782588 489873503 723685482 723685482 776281403 776678996 776678996 754693912 884943305 941824144 941824144 117650624 117650624 76263648 61204848 237300317 610336013 1008866195 1008866195 566762833 566762833 1006706703 1006706703 996221346 996221346 991092818 410922330 535823358 535823358 308679826 256641324 300730644 983835733 983835733 446207942 865138108 865138108 790856116 790856116 211925066 211925066 486666616 486666616 1060791048 1060791048 935140531 1073032191 1073032191 592981326 423071602 470294152 470294152 505480228 505480228 458785866 458785866 288671374 932900914 932900914 651960099 584599646 584599646 880938116 1037107551 1037107551 915077378 915077378 976873239 985932231 985932231 728059002 120597240 120597240 53490144 50991536 318777866 394364936 394364936 398465848 415322510 415322510 518250102 648603041 648603041 639949624 963851175 963851175 631374161 139461444 139461444 291366210 291366210 809284104 859743768 859743768 577052192 891300139 891300139 849475775 634614273 697338736 697338736 550551973 550551973 671219721 671219721 570431600 579209216 579209216 210110540 210829552 223556268 689027753 689027753 292909574 619501697 619501697 675332229 1011224973 1011224973 1008265984 1008265984 973138309 973138309 890474804 890474804 515474036 314093636 144847172 596711028 596711028 838354390 838354390 940491441 940491441 696777716 696777716 322981904 678593157 678593157 139584132 17192464 538894228 674024709 724792720 724792720 579305952 712057749 712057749 606053965 693232549 693232549 607131168 607131168 338889571 1014574306 1014574306 994912625 900468075 432344554 468026926 468026926 331269390 74767234 126803306 347522480 369120970 436473214 436473214 218826840 258021692 801583373 801583373 792994023 792994023 390209690 390209690 910707920 910707920 614327342 746113561 746113561 471892044 278970690 91801512 280924804 280924804 161523332 541696668 1027851315 1027851315 266626862 675875276 675875276 553461293 195373428 486943084 942066340 942066340 703698770 703698770 339054166 1031050241 1031050241 511775110 511775110 392615967 392615967 362293803 568657301 568657301 249161436 852820911 852820911 374753669 160832100 92951556 92951556 84709696 618853632 1070008585 1070008585 981780567 1061159103 1061159103 941441167 941441167 771616749 538181632 393352122 578030481 578030481 294602257 808855330 808855330 160377952 697290056 697290056 218251294 506569516 506569516 441910040 704982472 704982472 397082637 134617092 151835680 151835680 276084992 276084992 592076065 600179104 600179104 564585441 113711203 272550944 272550944 919738848 920980593 920980593 910629137 838677938 597306610 597306610 629540016 636099241 636099241 71303304 545325568 546382401 586943364 586943364 587153361 676006740 676006740 49512588 208412888 208412888 201793548 141441540 79314436 73342088 212142824 809864255 809864255 806210093 973890261 973890261 722052850 436674098 436674098 265670892 579437152 703825431 703825431 630034738 467057251 743490189 743490189 672153743 671357002 524828866 482394318 379127952 471108902 683748488 683748488 570560529 570560529 323800760 355591218 355591218 285244952 285244952 102274834 52432720 285734946 302164016 302164016 74599848 233738522 355116072 691300170 691300170 391376422 369463393 507253204 900078848 900078848 965672752 965672752 832135472 832135472 855549778 855549778 285779449 121374704 646520968 646520968 261105688 261105688 143729220 143117672 143117672 669523457 752534193 789583032 789583032 102672213 94003052 995683724 995683724 400277589 623978660 708099969 1070744212 1070744212 398692065 853199112 893661856 893661856 307545234 307545234 237184920 271031736 524044952 524044952 191763368 527308968 527308968 218764332 170492932 256133270 356545552 356545552 294758176 279496002 102810360 401937264 476449850 476449850 828654835 828654835 938146924 938146924 596355621 596355621 964108290 964108290 1035581160 1035581160 916666202 870062394 870062394 328456568 328456568 117564618 106520608 81982728 338688144 338688144 287456808 59573626 98603016 98603016 10604992 73484288 234898824 234898824 149420228 152837632 191009012 191009012 144968948 719134892 782832253 782832253 253633280 253633280 172749972 214033844 233042412 612894792 629671017 629671017 629671017 739817246 739817246 574997313 620068038 973281576 973281576 1055872017 1055872017 1002561639 605851038 545462808 54462724 68095070 372770120 375464346 375464346 318151658 323010738 381782352 397714002 527757790 527757790 299849778 299849778 276337570 289541408 289541408 58363168 278965088 285819104 285819104 64931936 22290400 92532840 92532840 90587392 90587392 185845556 185845556 281485382 373585090 373585090 201067800 843584534 843584534 619384846 941119724 941119724 456052770 537269601 537269601 547003601 856439214 1067185791 1067185791 763055994 817963791 817963791 975266024 975266024 818571784 440177076 622436352 622436352 953845482 953845482 911287391 681497285 940461792 940461792 298458436 357700266 777014807 777014807 1070943092 1070943092 341697451 341697451 542114433 542114433 314573010 822083872 1044515476 1044515476 697393369 84425288 84425288 73728016 449290552 449290552 957205573 957205573 832669317 1017547954 1017547954 184231917 9437760 9966080 537004369 577422480 577422480 548177665 877081147 877081147 831856457 283888137 1064944524 1064944524 1027419951 860454179 609598218 604251851 604251851 622158177 622158177 913055085 935808411 935808411 281560428 281560428 1069741316 1069741316 938026491 713403008 785648349 785648349 735327998 735327998 386739726 386739726 121569275 1041563860 1041563860 747372428 797109680 797109680 447865686 571297136 571297136 143886020 293591076 293591076 929861906 929861906 287415437 812545448 869219235 869219235 935729035 935729035 583321809 1070679977 1070679977 946679175 773241976 126835229 713669216 713669216 76620117 63631634 297930978 352489968 352489968 132569464 100304632 124340008 124340008 103173312 103173312 81450696 342732227 342732227 236057560 414765760 414765760 470625452 724394234 724394234 551674305 640848517 740508571 740508571 641921408 56498508 210509798 735166189 735166189 517873374 895954808 914622555 918691867 918691867 910637211 757403845 757403845 786719604 934381136 934381136 676146842 1045245087 1045245087 878522499 53222551 692902944 692902944 134217768 642531388 642531388 738590976 738590976 537660416 537660416 791170560 791170560 573048081 540821272 140583300 209560592 407885466 407885466 336019540 369108122 447356190 455948502 455948502 734930384 734930384 285212864 834023424 901130595 901130595 900077931 1005159901 1005159901 1069125874 1069125874 690365606 690365606 561462177 963162697 963162697 870584704 870584704 858469683 903224539 926098283 926098283 755948589 755948589 367986992 144530877 423270668 423270668 417993100 417993100 306299560 385077968 385077968 787786693 787786693 740116832 871107434 871107434 452010966 544678294 721559029 721559029 773916763 773916763 1013408047 1013408047 790715157 790715157 638690364 613102665 978855433 1045141279 1045141279 1061376045 1061376045 868886020 622053925 728924180 728924180 673585749 1035240971 1043160442 1043160442 992865591 992865591 453018632 610321792 610321792 203997649 977322396 977322396 1012796542 1027868847 1027868847 862006147 822879235 822608931 954797857 954797857 944319575 851815769 851815769 731185413 747061329 747061329 671133336 671133336 178358480 205730304 205730304 187819172 187819172 160432740 45290036 303511760 438586256 438586256 306870628 327555186 522310410 522310410 314108436 368102916 450043866 450043866 234072140 212634436 278940844 278940844 198027992 185973936 118852144 118852144 83931152 83713536 83713536 68725632 62018288 57502624 67251072 125482016 125482016 133080249 709109177 709109177 575280273 432732227 745345060 745345060 644464268 644464268 462823778 462823778 502533102 534738442 649716234 649716234 504222321 427923520 389360442 671814277 975782112 1021537679 1021537679 809893056 889172814 889172814 421868187 899416651 899416651 899736299 935625203 935625203 894259043 894259043 913447783 989548832 989548832 304268722 819992213 855778617 855778617 973477911 973477911 444744759 170527218 536169772 536169772 329114798 751854278 751854278 514048997 538500637 538500637 191366256 393103242 393103242 297280032 297280032 94899048 341378754 341378754 78578944 355417866 355417866 283175082 283175082 135832228 269927170 543562113 543562113 549118916 676017285 676017285 545271201 545271201 162831588 538574625 538574625 199416692 52244016 56546972 152056044 164344536 164344536 93459524 143398404 143398404 185205460 185205460 101785604 1307136 35232768 35232768 33818640 52007968 192971120 192971120 717714116 768646480 788174845 788174845 775832236 169028838 254713662 254713662 1028982053 1028982053 903162603 566299146 583617746 583617746 358190550 543756952 726539445 748427381 748427381 737429560 221467416 221467416 199378272 199378272 379635984 470136960 474140814 474140814 464421166 875087115 875087115 638008611 1048685894 1048685894 277377460 157673752 671213708 787657730 787657730 888029975 888029975 583610276 184681984 685442761 685442761 722251024 722251024 724307352 724307352 124036661 860619040 860619040 328569182 130948344 302293016 335931402 474038278 474038278 457239826 170595590 500298075 890672875 890672875 710150805 710150805 704645280 309330008 309330008 835895963 835895963 832594217 344055882 117776984 805949954 805949954 538654209 848301992 848301992 278178018 978322402 978322402 666798326 465854329 1055300806 1055300806 777327173 777327173 451072470 877674785 877674785 701082276 815175078 915906608 915906608 320938290 321098640 321098640 306371892 306371892 220455808 773898273 832607583 832607583 277512514 85119528 85119528 725604354 790728125 790728125 574792329 677218570 971293946 971293946 858711031 532406953 236224572 760531629 760531629 560071180 458806070 458806070 845383344 845383344 526120143 826872464 826872464 988396184 1010709829 1010709829 951066430 664782588 664782588 562471286 723685482 723685482 614965369 1065716612 1065716612 68947464 129838968 129838968 306349144 306349144 122208592 61204848 61204848 237300317 610336013 1008866195 1008866195 566762833 566762833 1006706703 1006706703 996221346 996221346 447579638 304114123 274733520 308679826 308679826 256641324 422787024 983835733 983835733 963712266 963712266 865138108 830504976 830504976 380092439 809838723 809838723 409069579 1060791048 1060791048 935140531 1073032191 1073032191 592981326 28205716 790398117 790398117 505480228 505480228 388048178 320938290 437649554 932900914 932900914 445979382 584599646 1006305444 1006305444 1037107551 1037107551 856122441 856122441 313049152 315999170 392427296 392427296 370612746 286641208 270533010 332051744 332051744 394364936 394364936 396507440 396507440 36978688 127469041 648603041 648603041 619481561 597986832 631374161 631374161 99191824 99191824 291366210 291366210 809284104 859743768 859743768 577052192 891300139 891300139 849475775 634614273 707035136 707035136 550551973 879756171 879756171 671219721 570431600 579209216 579209216 84232256 84232256 91641888 91641888 91277352 117440568 119554048 134235396 134235396 134874880 138024708 1008265984 1008265984 548143947 548143947 410271767 876364226 876364226 314093636 70519560 70519560 336207112 838354390 838354390 940491441 940491441 182805265 315405280 322981904 805421089 805421089 687988740 134246437 136477972 550464448 578855764 578855764 137695825 158150052 158150052 606053965 693232549 693232549 607131168 607131168 338889571 402785787 994912625 994912625 900468075 1068507736 1068507736 1030284487 1030284487 684246213 126803306 665874752 665874752 626214480 363468920 185155960 258113544 344330672 344330672 331488584 671150081 671150081 885503368 910707920 910707920 752046840 808515709 808515709 737560503 737560503 389206842 389206842 280924804 139616066 963825850 963825850 291698421 151248932 151121956 151121956 67182600 68422152 434094184 434094184 425147046 425147046 412841508 498205334 1031050241 1031050241 511775110 511775110 392615967 392615967 362293803 568657301 568657301 175469853 852820911 852820911 374753669 522264078 1025253658 1025253658 671223813 618853632 1070008585 1070008585 981780567 1061159103 1061159103 941441167 941441167 538184193 714808413 714808413 579548241 688384496 688384496 808855330 808855330 697824344 595451548 796379845 796379845 506569516 506569516 441910040 704982472 704982472 671999431 693708453 965028401 965028401 827008115 315684593 272941954 272941954 8413312 24989696 25484704 40162272 51830642 308134930 308134930 287371432 372353168 372353168 599933256 599933256 677156548 677156548 672666557 788006877 788006877 705497025 563620456 553920104 127307656 177532152 177532152 49512588 208412888 208412888 201793548 183249156 187958768 187958768 212142824 213403748 213403748 90523160 104931480 208405352 261959292 261959292 243061864 74134920 42488664 60027504 288309792 395476928 395476928 518384094 532521430 532521430 524828866 524828866 482394318 379127952 471108902 683748488 1025845160 1025845160 891355601 891355601 675392168 348048938 285244952 354562528 354562528 348922986 323040304 288360354 288360354 116322192 233738522 233738522 691300170 691300170 692959401 692959401 420221145 774373608 774373608 646472880 646472880 832135472 832135472 561619218 561619218 548020828 209777680 646520968 675553380 675553380 261105688 236046392 236046392 143117672 669523457 752534193 870324670 870324670 739695117 406651427 995683724 995683724 156201536 623978660 708099969 708099969 912866179 958431036 958431036 893661856 893661856 122559672 186526800 216620802 216620802 188904462 107294976 511917066 527308968 527308968 376232360 376232360 270661968 368762904 398581930 457615006 457615006 402643986 402643986 476449850 476449850 232668988 232668988 938146924 938146924 706962448 818099536 818099536 370892498 370892498 900786016 900786016 339025352 370218786 370218786 340151192 340151192 425141606 425141606 57260160 287456808 287456808 293263266 318865176 318865176 107358488 107358488 234898824 234898824 241379616 241379616 34081136 34081136 28060688 34417680 782832253 782832253 187376768 183312412 160792880 124676360 92538984 612894792 629671017 629671017 629671017 606917180 574997313 574997313 620068038 973281576 973281576 1055872017 1055872017 605851038 605851038 545462808 655448 54592376 372770120 375464346 375464346 318151658 323010738 323010738 273834594 298096840 298096840 282745346 276337570 276337570 26091104 19187458 22708962 278965088 285819104 285819104 625790121 625790121 92532840 92532840 613189832 751070593 751070593 185845556 26455372 211146260 741809165 741809165 684316236 684316236 474223400 555238527 555238527 456052770 537269601 537269601 547003601 856439214 1067185791 1067185791 763055994 817963791 817963791 975266024 975266024 818571784 440177076 494478489 494478489 953845482 953845482 911287391 745410829 940461792 1050030179 1050030179 373366938 777014807 777014807 1070943092 1070943092 341697451 341697451 542114433 542114433 314573010 913970054 1044515476 1044515476 961305603 961305603 302305315 327638067 327638067 107293080 375781915 695997121 695997121 1024338546 1024338546 634782006 669584160 885600930 885600930 662066841 847945235 848513891 848513891 834736320 341348740 396296796 1064944524 1064944524 1027419951 609598218 609598218 326768562 326768562 345457055 463700960 913055085 935808411 935808411 875767334 958655755 958655755 426405064 504432867 713403008 1054083807 1054083807 792773464 623690907 358310163 1019976986 1019976986 697745303 747372428 747372428 400587736 813034009 813034009 199023168 594289030 594289030 422334865 578883779 929861906 929861906 604131528 812545448 869219235 869219235 935729035 935729035 853521642 853521642 896946760 896946760 1067057367 1067057367 964690023 964690023 796127317 1032994735 1032994735 764811885 577523268 119655544 48868360 42949832 101710482 101710482 59295337 35660816 342732227 342732227 200286168 414765760 414765760 470625452 724394234 724394234 994478231 994478231 966833137 966833137 641921408 554305673 554305673 735166189 735166189 517873374 1024981017 1024981017 1068546366 1068546366 910637211 757403845 757403845 520265660 520265660 319229914 676146842 1045245087 1045245087 604123393 53222551 704668672 704668672 135019581 688333865 688333865 738590976 738590976 758386181 758386181 791170560 791170560 537954621 537954621 749497600 749497600 545897152 407885466 336019540 369108122 447356190 455948502 455948502 379327217 583665440 918558842 918558842 522443214 488860070 488860070 1005159901 1005159901 1069125874 1069125874 924794427 561462177 561462177 553220825 433335374 433335374 270797858 1071782004 1071782004 568524134 568524134 755948589 755948589 278946322 376151788 432540842 481298532 481298532 417993100 945097293 945097293 855814748 855814748 966617814 966617814 740116832 632767521 632767521 593180337 461066833 945320992 945320992 954673286 954673286 405920748 405920748 342999188 122800792 592456264 592456264 341584787 119123112 945368630 945368630 610012809 90827553 660480 50017408 78911952 623275268 623275268 579655624 992865591 992865591 453018632 610321792 610321792 203997649 977322396 977322396 1012796542 1027868847 1027868847 86057256 86057256 563168328 622454313 817890616 817890616 616046931 611601088 310977618 206940074 1034154028 1034154028 999851625 999851625 995640567 650777098 479314080 479314080 335618058 210994802 303511760 438586256 438586256 197708628 282767136 522310410 522310410 314108436 314108436 450043866 450043866 234072140 212634436 278940844 278940844 107235204 76454144 76454144 84853008 84853008 17640480 34915136 34915136 46515008 57502624 67251072 67251072 65253472 65253472 64363248 79956168 335728006 335728006 745345060 745345060 644464268 939728224 939728224 837422482 237701678 166074852 756319349 756319349 354535952 389360442 389360442 255521830 204086572 483581580 560103858 614707934 614707934 549620886 421868187 899416651 899416651 899736299 935625203 935625203 894259043 894259043 913447783 989548832 989548832 803282012 950802945 994978237 994978237 973477911 973477911 444744759 112439772 536169772 536169772 329114798 751854278 751854278 514048997 538500637 538500637 191366256 160449928 44097704 393276416 393276416 94899048 341378754 341378754 78578944 355417866 355417866 283175082 283175082 89535880 269927170 269927170 4009728 10274624 10274624 25417728 25417728 10694976 10694976 39149688 63033024 66061296 70436792 70436792 114844288 114844288 622874949 622874949 251401628 555278261 555278261 134291992 554162669 759242925 759242925 690231473 29765464 594787745 764619032 764619032 717714116 717714116 602559953 802077817 802077817 169028838 399644760 399644760 415316808 694487879 694487879 501405806 501405806 484755918 358190550 543756952 726539445 726539445 584441365 941868147 941868147 221467416 930157681 930157681 523936658 453324164 453324164 373368832 285616152 875087115 875087115 638008611 1048685894 1048685894 201705834 157673752 249382068 249382068 243819116 888029975 888029975 726799539 184681984 72422020 139600520 185730048 185730048 726475873 726475873 158074965 860619040 860619040 677515653 677515653 435142113 684172585 724740931 943865123 943865123 839595415 730253573 890672875 890672875 710150805 710150805 704645280 309330008 309330008 835895963 835895963 917832002 917832002 839199251 805949954 805949954 538654209 342970146 342970146 278178018 978322402 978322402 1022447928 1022447928 765541147 182606414 777327173 777327173 451072470 646773044 646773044 200314293 628003404 773404084 773404084 850874117 850874117 671613506 615285887 631789877 631789877 141687804 348465354 702923821 702923821 540287874 760667182 760667182 790728125 790728125 731528938 746892352 971293946 971293946 858711031 532406953 182924248 182924248 889194666 889194666 879895051 879895051 741293325 419432068 419432068 38393684 626480085 988396184 1010709829 1010709829 999497851 999497851 435085170 940800097 940800097 659946391 614965369 1065716612 1065716612 762280376 278354919 951882428 951882428 306349144 227323736 99434504 31567808 241386216 241386216 235354140 857962570 857962570 585361505 415345938 330169482 330169482 219077676 210649184 56499888 320606880 320606880 315760146 197134464 422787024 422787024 325584352 963712266 963712266 395859783 830504976 830504976 782246948 809838723 809838723 409069579 387105001 130358053 495445260 495445260 537994741 537994741 495487202 790398117 790398117 500046696 280506730 280506730 309998120 437649554 865871930 1050679975 1050679975 79096808 1006305444 1006305444 465674235 513456968 513456968 269288464 848635731 989669329 989669329 783250756 370612746 400564504 400564504 332051744 332051744 35725312 57672624 66138056 95947456 95947456 107496720 107496720 88091024 88091024 104899960 104899960 105753472 105753472 99191824 73006088 73006088 1999872 3383552 69928200 607832336 639105561 639105561 711196744 711196744 707035136 707035136 544210954 879756171 879756171 545265736 545265736 545533984 545533984 84232256 106294128 106294128 605352929 605352929 268794398 687870341 773875918 981467223 1042664079 1042664079 955327431 975820504 975820504 880988235 410271767 876364226 876364226 78228816 70519560 70519560 853811631 853811631 628575958 721035862 721035862 963313056 963313056 288008624 805421089 805421089 687988740 134246437 136477972 550464448 578855764 578855764 25692736 25692736 18615840 19302464 19302464 8573184 654388272 654388272 637665328 637665328 626335809 685043209 819250577 1068507736 1068507736 1030284487 1030284487 684246213 118626096 665874752 665874752 626214480 185155960 185155960 258113544 258113544 201375756 161633324 721421587 721421587 885503368 885503368 777158025 777158025 808515709 907890268 907890268 737560503 729735093 877387616 877387616 219722354 963825850 963825850 590427303 338170012 627102888 740410629 740410629 509072965 220796136 556409714 942744327 942744327 846803552 498205334 498205334 497156660 497156660 410266104 132451206 77479208 60767856 35401824 141726016 141726016 10638212 39027712 39581328 522264078 1025253658 1025253658 671223813 424359742 415303392 482344782 974022246 1059587391 1059587391 961105043 228119076 409783686 714808413 714808413 579548241 688384496 942563465 942563465 963386655 963386655 606730434 796379845 796379845 963253506 963253506 974721378 974721378 559165250 671999431 693708453 965028401 965028401 827008115 315684593 30164736 31642080 31642080 13922496 20929984 20929984 2137888 2146560 2146560 2789376 17433648 33689616 658658576 658658576 677156548 677156548 672666557 788006877 788006877 726923572 563620456 718257624 731442517 731442517 704823248 212312400 212312400 204815764 186205056 183249156 187958768 187958768 186769776 572301947 858833715 858833715 839967559 938060180 938060180 261959292 243061864 444290996 671860508 1011690639 1011690639 634012372 1068881769 1068881769 281626252 923559713 923559713 390124734 324129806 302394194 816110855 816110855 1025845160 1025845160 891355601 891355601 675392168 348048938 45785074 354562528 354562528 348922986 323040304 69280208 83977344 116322192 120942624 229484876 613295176 637718585 692959401 844677666 844677666 774373608 774373608 646472880 646472880 1032709858 1032709858 561619218 877099936 877099936 584367816 209806336 753004756 753004756 218695817 236046392 236046392 606749544 762613821 772916008 870324670 870324670 739695117 583369549 1024562072 1024562072 598030506 598030506 819801518 819801518 912866179 958431036 958431036 678406784 678406784 122559672 122559672 35786152 431390504 431390504 417462622 511917066 511917066 445044822 376232360 376232360 270661968 697642211 697642211 457615006 738302529 738302529 402643986 745791148 745791148 596818416 596818416 831364219 831364219 883130709 883130709 818099536 550114497 619007168 619007168 684645990 684645990 621909440 370218786 340151192 340151192 425141606 425141606 42152016 144746084 282107936 293263266 318865176 318865176 107358488 107358488 203840664 203840664 241379616 241379616 237051004 237051004 229588332 219418644 193865620 136134576 148636304 155599368 155599368 130275456 115289744 26648096 68059200 75661392 75661392 700033738 700033738 203102139 1006228618 1006228618 248132961 302342364 302342364 207409052 210348752 210348752 655448 272699906 278430848 278430848 277082178 269046848 298384578 298384578 298935072 350409194 401645414 520803390 520803390 168820886 235139100 235139100 415606992 420286130 420286130 162037970 625790121 625790121 291330027 606092672 613189832 760976353 830167821 971288833 971288833 834683653 741809165 741809165 684316236 684316236 144572646 8656884 10577552 23127408 54138672 62836528 62836528 44315792 122380998 368113022 408081030 408081030 290981538 290981538 309855644 309855644 467284560 467284560 709887442 951584583 951584583 693001924 745410829 897605286 1050030179 1050030179 373366938 553620169 553620169 814048721 814048721 0 577241490 805831683 805831683 272634688 913970054 913970054 570973350 961305603 961305603 302305315 550247744 550247744 404015622 404015622 695997121 935288084 1024338546 1024338546 634782006 669584160 885600930 885600930 729579127 847945235 848513891 848513891 168331536 341348740 396296796 792338709 792338709 879399726 879399726 757094437 1024491644 1024491644 336646819 275924066 548833390 548833390 875767334 885098504 958655755 958655755 344170062 504432867 504432867 1054083807 1054083807 792773464 623690907 362889474 1019976986 1019976986 661980032 860504512 925685007 964783935 964783935 813034009 69419282 772218914 772218914 422334865 578883779 862753050 862753050 769629512 961737575 961737575 206226633 124930904 1008808962 1008808962 853521642 896946760 1010606509 1067057367 1067057367 964690023 964690023 796127317 1032994735 1032994735 933778448 933778448 696767781 596507781 590183928 107818392 394096106 394096106 363440418 275792320 275792320 200286168 200286168 30940580 22287392 748718382 748718382 994478231 994478231 966833137 966833137 440461953 554305673 554305673 376929537 398971062 398971062 1024981017 1024981017 1068546366 1068546366 855773235 256672939 1002070237 1002070237 780425752 229404399 831993304 831993304 612803060 537189414 658508349 704668672 704668672 408357506 823587514 999501861 999501861 798691885 789189693 758386181 598737456 169025349 581917020 581917020 749497600 779641432 779641432 244893276 250717568 250717568 72442708 91265672 275041130 550371434 583665440 918558842 918558842 522443214 110424480 695306320 695306320 582718689 756635815 924794427 995424678 1022462542 1022462542 637671437 637671437 433335374 674436809 1071782004 1071782004 655207800 655207800 343026823 211811916 278946322 376151788 550053057 579809481 638593600 638593600 945097293 945097293 855814748 855814748 966617814 966617814 672425727 632767521 632767521 593180337 461066833 945320992 945320992 954673286 954673286 934299000 934299000 342999188 122800792 721174276 721174276 551382164 174714400 945368630 945368630 610012809 158635776 575870464 609761104 609761104 346302467 346302467 579655624 613995115 613995115 489735565 573706969 573706969 950014687 950014687 526783048 526783048 356257578 795676266 795676266 626076925 626074281 622454313 817890616 817890616 616046931 310977618 310977618 206940074 1034154028 1034154028 999851625 999851625 995640567 650777098 505169475 998474381 998474381 921665106 921665106 329592564 469055728 469055728 282767136 299443940 402653190 457969810 457969810 286137378 146737318 32986080 60850648 243194240 243194240 212942680 212942680 87303472 101271640 101271640 51617816 43718416 34915136 33569536 33569536 32236320 82151272 98169760 100137960 100137960 93741440 79956168 72225856 318808328 404424242 404424242 939728224 939728224 837422482 106109102 93272824 756319349 756319349 751735358 751735358 467536063 470298824 470298824 1017034074 1017034074 872801162 872801162 545565634 51537667 32120848 29135312 93331952 374628035 571738641 668420401 668420401 302947152 441057774 803282012 803282012 950802945 994978237 994978237 972153187 972153187 934305982 934305982 504349692 504349692 464705958 464705958 256942080 256942080 249250492 249173724 102167040 362892330 362892330 393276416 393276416 28148674 17107936 30683584 30683584 14693312 14948096 110785104 110785104 67757064 39564936 35386896 35386896 35386896 43118656 43118656 42258608 63178992 63178992 60010736 51306688 66061296 70436792 439955650 439955650 391192912 622874949 622874949 294017490 555278261 555278261 371337772 554162669 759242925 759242925 690231473 29765464 594787745 764619032 764619032 710725269 710725269 729215408 802077817 802077817 257693278 399644760 504029374 504029374 694487879 694487879 909598200 909598200 518241151 461384870 738329748 738329748 678564741 584441365 941868147 941868147 105021960 930157681 930157681 523936658 275629328 275629328 180211122 268780804 399248634 399248634 197232704 1048637472 1048637472 690978910 686681469 227640412 243819116 604515328 830259624 830259624 826177974 1017295524 1017295524 253503020 587209232 587209232 726475873 726475873 158074965 189606917 316674231 677515653 677515653 435142113 684172585 724740931 943865123 943865123 839595415 730253573 730253573 542067204 442319061 134352900 187608388 228785424 244854146 277403346 292820954 917832002 917832002 839199251 336172546 270165002 206636964 432556808 432556808 557058849 557058849 270477131 1022447928 1022447928 765541147 282560840 605736706 605736706 435295206 435295206 170839794 338243602 338243602 205333249 537237021 850874117 850874117 671613506 615285887 631789877 631789877 638156816 638156816 702923821 702923821 540287874 760667182 760667182 571597329 731528938 731528938 746892352 746892352 608642781 261401252 261401252 182924248 232468388 889194666 889194666 879895051 879895051 741293325 743994885 743994885 38393684 150156228 150156228 184083984 263816967 999497851 999497851 756774032 940800097 940800097 96733416 96733416 899801638 899801638 762280376 278354919 951882428 951882428 284708384 577580497 654667745 654667745 569698904 717402181 717402181 857962570 857962570 1000375479 1000375479 195322034 308281746 308281746 290579909 288451795 320606880 320606880 315760146 194779746 161737024 940521991 940521991 851636488 1045980317 1045980317 801883220 801883220 782246948 107063329 183898812 876534296 876534296 636445787 633206273 633206273 580422960 580422960 495487202 495487202 497100520 497100520 85331968 339936812 339936812 137900934 159125412 1050679975 1050679975 204287244 647117191 647117191 304105486 414438964 467078064 467078064 848635731 989669329 989669329 783250756 339220100 400564504 400564504 365445720 398034626 398034626 370487042 370487042 342369168 95947456 107496720 107496720 32319688 75362184 75362184 58212568 105753472 105753472 22307360 73006088 73006088 25048448 73347208 73347208 607832336 639105561 639105561 711196744 711196744 445694085 445694085 388088832 773849373 773849373 675594514 775979029 775979029 737048004 643907968 643907968 616563112 605352929 605352929 268794398 687870341 773875918 981467223 1042664079 1042664079 955327431 975820504 975820504 880988235 45277515 301170550 301170550 106678678 116107496 209784532 853811631 853811631 97850678 161166948 688036838 963313056 963313056 288008624 545280544 545280544 26350145 29807936 29807936 6857536 19679744 146453793 146453793 147608260 147608260 633243757 677170885 677170885 654388272 654388272 637665328 637665328 638853648 685043209 819250577 1026723784 1026723784 969858279 810862249 750964941 409617739 69731592 117825292 255537724 255537724 168297492 168297492 223150332 223150332 38628496 721421587 721421587 574857020 391879379 777158025 777158025 314837202 907890268 907890268 623820231 729735093 877387616 877387616 431519512 185067132 590427303 590427303 397412216 627102888 740410629 740410629 509072965 506589462 556409714 942744327 942744327 846803552 375402442 351655768 497156660 497156660 165943898 294851703 807089667 998259863 998259863 484125315 484125315 721486517 1053039015 1053039015 604980765 337001116 408422022 979573104 979573104 415303392 971086743 974022246 1059587391 1059587391 961105043 926951520 749759304 537512326 537512326 536993793 536993793 942563465 942563465 963386655 963386655 606730434 334893296 351352466 963253506 963253506 974721378 983818952 983818952 715051522 715051522 637672013 613028603 588961313 230973133 517491662 539145602 847364115 847364115 814334368 321725568 303005698 303005698 21802416 388530856 388530856 290661026 658658576 658658576 651029912 651029912 571419049 137076064 726923572 726923572 563593505 718257624 731442517 731442517 704823248 806638080 945718662 945718662 289018368 316806730 357176490 357176490 115258784 572301947 858833715 858833715 839967559 938060180 938060180 183081620 183081620 444290996 671860508 1011690639 1011690639 634012372 1068881769 1068881769 281626252 923559713 923559713 390124734 269197736 102809880 816110855 816110855 472698126 637619743 637619743 146098184 2349104 52767024 53305648 379906448 379906448 64961690 44409408 59786688 83977344 83977344 102121728 120993593 571226921 952682054 952682054 844677666 844677666 787184358 685820389 292063207 464917078 1032709858 1032709858 930296763 930296763 877099936 584367816 653066688 753004756 753004756 215482437 148950728 193757340 606749544 762613821 772916008 772916008 133195312 30931680 583369549 1024562072 1024562072 598030506 598030506 819801518 954877081 1020705507 1020705507 893787499 443980106 443980106 360296434 217282328 413808838 431390504 431390504 417462622 319789178 445044822 445044822 451410390 451410390 167981076 697642211 697642211 357506632 738302529 738302529 217045232 745791148 745791148 596818416 682298456 831364219 831364219 883130709 883130709 706752514 550114497 619007168 619007168 684645990 684645990 621909440 136316294 36885264 10658320 436304 42152016 42152016 42152016 62398560 62398560 70717952 117516744 117516744 60261824 63363312 160733744 214272316 214272316 237051004 237051004 229588332 219418644 193865620 120405632 148636304 155599368 155599368 130275456 115289744 128924680 128924680 80669272 80669272 700033738 700033738 537329897 1006228618 1006228618 816398337 556599632 577766611 577766611 643773074 643773074 399121978 362485920 362485920 278430848 277082178 269046848 281356770 281356770 298935072 350409194 401645414 520803390 520803390 168820886 235139100 235139100 415606992 420286130 420286130 162037970 617128770 617128770 291330027 690394436 690394436 760976353 830167821 971288833 971288833 834683653 417062733 255725112 438304818 438304818 287903528 354233898 354233898 354214522 369412122 369412122 126117696 126117696 343994922 343994922 135884908 562988613 562988613 556551742 611137456 611137456 467284560 467284560 709887442 951584583 951584583 982324070 982324070 897605286 897605286 425623659 415629314 140523532 140523532 182528734 258697295 480868119 908891168 908891168 805831683 757407028 757407028 502204868 831522980 978062963 978062963 311067792 780949826 780949826 404015622 404015622 57462192 935288084 935288084 426969394 505967624 505967624 580985169 729579127 729579127 607145513 622078395 688473126 688473126 324898580 324898580 962663523 962663523 879399726 940173612 940173612 1024491644 1024491644 336646819 445661860 445661860 157171854 115220184 885098504 885098504 818276547 172311616 13216404 5317248 935330472 935330472 480575528 480575528 362889474 640421160 661980032 661980032 860504512 925685007 964783935 964783935 954018574 155020480 772218914 772218914 374076570 446812390 862753050 890022570 890022570 961737575 961737575 308304142 873718578 1008808962 1037625407 1037625407 862014796 1010606509 1010606509 730862236 683746819 683746819 333641475 931270779 931270779 933778448 988407255 988407255 596507781 590183928 367161640 394096106 394096106 363440418 275792320 275792320 136856288 414195644 510396686 510396686 808197924 808197924 621269195 611664135 501393444 204805416 204805416 924586628 1062083775 1062083775 660767367 812522883 812522883 271506690 425511846 425511846 292298126 958793894 1002070237 1002070237 780425752 262464209 831993304 831993304 612803060 537189414 658508349 688022666 688022666 408357506 823587514 999501861 999501861 798691885 789189693 739907856 614515656 169025349 581917020 581917020 542738124 779641432 779641432 273095722 338819872 338819872 319191090 323080274 323080274 550371434 810343754 810343754 553725104 553725104 351074986 996518352 996518352 1009207545 1009207545 781639268 995424678 1022462542 1022462542 637671437 817311374 817311374 674436809 820447049 820447049 655207800 655207800 1046927775 1046927775 339007213 339007213 550053057 579809481 638593600 638593600 357042464 298512608 713637894 713637894 910544042 910544042 793586253 546178770 869852417 869852417 86213823 0 369377287 369377287 841121882 934299000 934299000 59198928 65138308 721174276 721174276 551382164 174714400 174714400 191432496 191432496 171445264 575870464 637860160 637860160 206176060 206176060 597500600 613995115 613995115 489735565 573706969 573706969 950014687 950014687 1020652239 1020652239 965900823 962890360 795676266 626076925 755247493 755247493 166535808 303833536 303833536 9178176 113790016 113820888 113820888 897719818 897719818 798805629 798805629 370197018 698213428 998474381 998474381 921665106 921665106 329592564 469055728 469055728 363038856 363038856 402653190 457969810 457969810 304382994 304382994 286525986 386949200 386949200 243194240 212942680 212942680 87303472 101271640 101271640 61401184 61401184 20140896 42095872 42095872 56198016 201013188 201013188 100137960 100137960 93741440 97744134 360445866 360445866 404424242 404424242 813039938 813039938 540806913 540806913 347415563 751952948 751952948 751735358 751735358 467536063 470298824 541065345 1017034074 1017034074 872801162 872801162 642376857 642376857 642329968 107275920 303961291 885661202 885661202 575159690 575159690 537932146 537932146 602008208 602008208 209121397 902452448 902452448 972153187 972153187 934305982 934305982 504349692 504349692 464705958 464705958 244343416 155910286 101001240 109265456 109265456 362892330 362892330 296704066 296704066 32008384 19787040 30683584 83559296 83559296 76231752 110785104 110785104 67757064 39564936 35386896 35386896 35386896 43118656 43118656 42258608 63178992 65164992 65164992 51306688 55698096 307320720 439955650 439955650 391192912 391192912 306220318 294017490 105021520 371337772 371337772 384635394 384635394 336883536 128876840 128876840 79199480 199706288 702192756 710725269 710725269 729215408 729215408 543687552 257693278 257693278 504029374 504029374 890327144 1055357537 1055357537 909598200 518241151 461384870 738329748 738329748 642389145 216727752 234950944 234950944 0 268502144 298516866 298516866 379055400 422305626 422305626 271932454 685209172 685209172 659947673 1048637472 1048637472 698353149 698353149 427935784 427935784 604515328 979361495 979361495 826177974 1017295524 1017295524 261958812 587209232 587209232 562834528 562834528 16845088 33908992 61675624 130607272 130607272 298466528 357466306 357466306 83903490 501272488 1017563744 1017563744 542067204 718402408 718402408 134352900 187608388 228785424 244854146 863768499 863768499 836112123 656458041 933249090 933249090 270165002 866143552 866143552 809281846 857286147 857286147 499273435 471356060 452081435 282560840 434618948 487905888 487905888 435295206 435295206 376997379 566663072 743807951 960756564 960756564 346133788 346133788 330608504 305474322 305474322 284494968 638156816 638156816 558229665 142719204 503867572 941425034 941425034 872728587 872728587 636653249 758019242 923405582 923405582 940048944 940048944 680924305 639381953 232468388 53616132 141691028 141691028 542195904 743994885 743994885 0 0 25203200 178791936 179381076 179381076 69206280 756774032 756774032 742600845 96733416 96733416 899801638 899801638 591479813 591479813 546578852 912859922 912859922 683066785 659763897 654667745 569698904 717402181 717402181 680211525 574817492 1000375479 1000375479 195322034 308281746 308281746 290579909 288451795 156714324 156714324 156219440 156219440 161737024 940521991 940521991 851636488 1045980317 1045980317 801883220 801883220 305357254 678713876 678713876 876534296 876534296 636445787 633206273 633206273 580422960 580422960 86285580 178017836 178017836 337428930 427675918 427675918 339936812 137900934 159125412 159125412 204287244 237242404 475038592 475038592 304105486 414438964 467078064 467078064 331663536 319564850 306818180 373507464 373507464 373450026 436725448 436725448 398034626 398034626 370487042 370487042 342369168 323391680 109191232 109191232 54004496 54004496 22882560 22882560 99707840 99707840 83141544 79634432 79634432 72038560 73347208 73347208 606166322 893071659 893071659 580051606 580051606 939698652 939698652 511607990 773849373 773849373 738406413 775979029 804431712 804431712 643907968 643907968 616563112 89058488 105456792 105456792 120958036 177040184 740666782 1039561085 1039561085 604679840 1012483681 1012483681 500294382 804041690 804041690 1039729537 1039729537 760255784 760255784 559677992 138677032 80217288 225258924 349700332 402653206 402653206 417333584 866386193 866386193 183503188 178277012 248437980 652997848 652997848 644588700 146453793 147608260 147608260 633243757 677170885 677170885 93955213 353707626 579090528 579090528 698679609 698679609 80217288 1026723784 1026723784 969858279 810862249 750964941 409617739 706960284 706960284 690397468 255537724 241978648 241978648 223150332 223150332 38628496 346591272 346591272 296408418 389694272 389694272 307284544 314837202 314837202 751675040 751675040 361503463 97037664 431519512 431519512 193336014 475544230 475544230 397412216 304161042 360056182 371575888 460840666 506589462 506589462 413594904 380358032 380358032 375402442 351655768 422908256 422908256 322351684 325068000 807089667 998259863 998259863 484125315 484125315 721486517 1053039015 1053039015 604980765 277834454 277834454 979573104 979573104 451544262 971086743 971086743 833162017 833162017 926951520 926951520 749759304 720947157 813798768 914940859 914940859 718502356 718502356 559830420 671318785 671318785 159260580 952245264 952245264 488047439 359935414 983818952 983818952 715051522 715051522 637672013 613028603 588961313 230973133 517491662 539145602 847364115 847364115 814334368 321725568 303005698 303005698 96891952 388530856 388530856 290661026 343954600 343954600 153611612 159770724 159770724 354713902 354713902 205036088 563593505 563593505 405220573 273475490 988995472 988995472 945718662 945718662 289018368 316806730 357176490 357176490 38722162 127951992 127951992 360573408 373302096 378538582 378538582 263061620 294653242 294653242 0 89539622 387439662 510975810 510975810 411954246 196775048 178826068 351289736 351289736 222621014 222621014 263580540 384953128 506585990 506585990 406155158 307560482 378830346 378830346 388461720 388461720 396140544 396140544 320442448 64815160 59786688 74898344 92058696 92058696 414959874 952682054 952682054 281067714 787184358 787184358 807540625 807540625 713031765 713031765 897037537 930296763 930296763 819567171 313017159 653066688 653066688 753667533 753667533 140821577 92017160 92017160 18225696 21992576 22050880 30931680 30931680 29569248 71447179 806429187 806429187 478659243 823315141 954877081 1020705507 1020705507 893787499 443980106 443980106 655266107 655266107 413808838 911126328 911126328 1024018533 1024018533 604226692 432431408 451410390 451410390 166017184 312028514 312028514 32126112 145359272 525541530 525541530 613626944 940100567 940100567 1042751574 1042751574 444676383 69255432 530640966 530640966 455252322 455252322 433675854 144843534 312153896 404837142 404837142 84966226 269476432 455905350 455905350 28115312 245718892 327434800 327434800 353627960 353627960 117516744 113570480 217573608 217573608 160733744 88586452 263392252 263392252 71305704 60253736 235457544 235457544 73062024 73062024 266223248 266223248 229892892 216322368 128924680 80669272 80669272 102400528 537329897 537329897 268463136 816398337 816398337 556599632 577766611 577766611 643773074 643773074 399121978 362485920 362485920 96942560 69018368 82706666 281356770 281356770 288621472 628548411 628548411 343618998 1031284531 1031284531 619072451 540710282 700713945 700713945 811621331 811621331 562123679 814816780 814816780 690394436 690394436 681522178 814885453 1038938274 1038938274 550268679 1033680723 1033680723 1042057384 1042057384 287903528 354233898 354233898 354214522 369412122 369412122 126117696 126117696 343994922 343994922 488685870 562988613 562988613 556551742 611137456 611137456 339337898 357689098 357689098 733544486 733544486 982324070 982324070 675499066 675499066 415629314 415629314 140523532 140523532 182528734 277666934 480868119 908891168 908891168 696329742 757407028 757407028 6292881 831522980 978062963 978062963 311067792 906809112 906809112 406374150 406374150 283248254 720114614 720114614 312532659 505967624 505967624 284251642 984562046 984562046 843764883 766593730 766593730 688473126 519655062 510682832 962663523 962663523 832871843 940173612 940173612 835885201 835885201 340138122 663938293 763625654 985411989 985411989 591030113 198230044 520254010 520254010 13216404 5317248 935330472 935330472 891846981 1063839148 1063839148 640421160 851908983 851908983 789253500 958191123 958191123 954018574 954018574 155020480 436764734 436764734 285212706 623087883 623087883 890022570 890022570 618832393 555055528 754255626 873718578 873718578 1037625407 1037625407 842311376 545785572 693109413 693109413 558367937 17305600 84542856 84542856 801247496 801247496 988407255 988407255 352580680 352580680 367161640 367161640 17825824 17825824 67150208 67150208 136856288 414195644 510396686 510396686 808197924 808197924 617012674 636037448 636037448 655341921 655341921 924586628 1062083775 1062083775 1023717645 1023717645 812522883 276639618 575191968 860016819 860016819 958793894 958793894 576031290 576031290 262464209 50645056 705030171 906356757 906356757 50365264 50365264 125968944 125968944 69612024 67391528 608704680 608704680 12767424 614515656 614515656 77400416 77400416 17958944 17958944 495519876 495519876 299578098 338819872 338819872 319191090 323080274 323080274 853559605 853559605 810343754 553725104 553725104 351074986 996518352 996518352 1009207545 1009207545 982513774 1003499457 1003499457 923574934 350697572 817311374 817311374 158139810 961054670 1019237505 1019237505 589973286 1046927775 1046927775 1003803388 389290528 389290528 271981330 528011386 528011386 825788873 825788873 820561347 731680598 910544042 910544042 793586253 546178770 869852417 938786412 938786412 886121163 584501622 584501622 337951174 433471520 433471520 28642176 99952200 99952200 72556104 72556104 70747072 38548240 141939541 584310229 584310229 696921600 696921600 637860160 896336622 896336622 888514035 646202470 900016491 900016491 898106475 898106475 673313437 812902597 1020652239 1020652239 965900823 962890360 604101071 585919616 755247493 755247493 620758509 1053368525 1053368525 855966782 855966782 761842141 761842141 957458013 957458013 798805629 798805629 370197018 698213428 698213428 562266779 489216916 489216916 273831626 306333962 306333962 363038856 363038856 67910898 325048560 325048560 304382994 304382994 286525986 386949200 386949200 119819264 119819264 42490160 126436720 126436720 2911320 61401184 61401184 27515200 42095872 42095872 56198016 201013188 201013188 58790240 587337777 587337777 587337777 360445866 360445866 368896713 368896713 813039938 813039938 950015599 950015599 852282579 852282579 751952948 790667397 790667397 327116312 557987876 557987876 943711392 943711392 821931590 821931590 642376857 642376857 642329968 107275920 356721666 885661202 885661202 885268050 885268050 537932146 537932146 769174286 769174286 456544825 902452448 902452448 469313496 469313496 380743806 380743806 390780090 390780090 140380644 244343416 244343416 132890724 96719192 109265456 109265456 172496608 203665456 203665456 162335568 67769352 93323272 93323272 85868584 96963688 96963688 507191507 507191507 222949172 222949172 705201301 705201301 945996375 945996375 715965253 603215825 603215825 199238534 562178729 562178729 325224122 307320720 307320720 242747292 242747292 109645824 111284568 111284568 105021520 67686552 67686552 11320344 101058024 101058024 128876840 128876840 79199480 79199480 541421632 684898432 684898432 242629277 543687552 543687552 888541549 888541549 863572225 1019815119 1019815119 1055357537 1055357537 439014452 711610536 711610536 763826525 763826525 365298250 867768207 867768207 729749041 269100538 554774889 554774889 402798178 402798178 422305626 422305626 271932454 685209172 685209172 659947673 659947673 436093094 710935581 710935581 464080145 457851350 457851350 979361495 979361495 610141321 610141321 635314089 669916953 669916953 664186832 43082048 55906032 55906032 39346544 40167432 635178729 635178729 602203721 857509400 857509400 26053914 486575848 1017563744 1017563744 541609102 718402408 718402408 242475553 558058382 777721881 777721881 863768499 863768499 836112123 656458041 933249090 933249090 350603022 1049768854 1049768854 809281846 857286147 857286147 919968048 919968048 892418073 754383593 532740159 746820391 746820391 422740596 758585352 758585352 566663072 864031077 960756564 960756564 479270264 506012958 506012958 246859306 264767824 264767824 159087972 159087972 142719204 576861217 682426820 941425034 941425034 872728587 872728587 636653249 758019242 923405582 1041498594 1041498594 940048944 680924305 685967844 685967844 913575724 913575724 204800570 673261826 877739049 877739049 84427704 84427704 62424336 99383122 401826482 401826482 354249730 294457422 292762530 292762530 32629728 763741782 763741782 1054607254 1054607254 591479813 363973793 912859922 912859922 683066785 810076336 810076336 660638930 574554504 574554504 574256448 190433540 172799408 172799408 32047508 49671120 192613796 192613796 146066244 156714324 156714324 156219440 164934320 164934320 148742816 148742816 272508745 887570891 887570891 554818850 554818850 601063841 678713876 678713876 277792992 277792992 8004368 8004368 52203008 61869392 61869392 128586848 178017836 178017836 337428930 427675918 427675918 284740334 478806858 478806858 244414900 378086578 378086578 458094260 458094260 175484412 175484412 1034377233 1034377233 680117601 701343941 701343941 910915991 910915991 350455886 436725448 436725448 373297216 857812992 857812992 367763825 338326736 323391680 281157809 653861433 653861433 598287729 598939297 598939297 560715024 99707840 83141544 79634432 858456704 865149555 865149555 864883912 606166322 893071659 899588488 1043847475 1043847475 939698652 939698652 511607990 739456780 739456780 738406413 649672557 804431712 804431712 587948485 103224264 122537816 122537816 107343128 107343128 105151120 105151120 740666782 1039561085 1039561085 462188875 1012483681 1012483681 536588507 804041690 804041690 1039729537 1039729537 760255784 760255784 559677992 626526974 626526974 376442372 254550160 882704506 882704506 459286658 866386193 866386193 379912688 379912688 342041666 652997848 652997848 644588700 286081840 25481248 25481248 19873056 19873056 38744240 109891608 130423496 130423496 98108696 698679609 698679609 178375428 254444604 254444604 619599092 622514353 622514353 195586341 706960284 706960284 690397468 51353344 241978648 241978648 118172316 65985888 443031360 806130461 806130461 455007544 389694272 931918971 931918971 869987787 645268495 751675040 751675040 623246473 605627112 605627112 364978178 193336014 475544230 475544230 295425904 304161042 336452928 346239306 346239306 11463690 107275728 107275728 87082336 87082336 248042352 248042352 513077272 513077272 322351684 325068000 325068000 317202932 426868998 430490982 430490982 213899086 213899086 245966224 245966224 277834454 277834454 146996884 284698308 451544262 451544262 460115590 460115590 65454496 165055658 281725561 720947157 720947157 881365272 1059075159 1059075159 1049137659 557910132 559830420 671318785 671318785 159260580 952245264 952245264 488047439 751584414 1040255894 1040255894 412271121 340792520 340792520 67634314 336086056 336086056 306365498 306365498 121843896 121843896 59257512 45193760 45193760 96891952 96891952 301973648 301973648 18348576 549581920 562999488 562999488 537298960 906517797 906517797 354713902 205036088 137019910 59643568 66325488 66325488 988995472 988995472 511598341 315375630 392956056 392956056 388372794 388372794 114038242 325339264 385928370 385928370 126403002 378538582 378538582 263061620 294653242 294653242 445751892 445751892 387439662 510975810 510975810 411954246 196775048 178826068 351289736 373611258 373611258 499911420 499911420 476933982 506585990 506585990 406155158 307560482 378830346 378830346 388461720 388461720 396140544 396140544 320442448 121128128 121128128 97572408 92058696 92058696 697812001 697812001 589195621 151520292 538708517 575673540 807540625 807540625 713031765 713031765 638771392 586290129 819567171 914296215 914296215 452045512 942794628 1019309507 1019309507 281127174 342055872 953900777 953900777 433210017 618887781 618887781 206717133 361179813 361179813 806429187 1038385028 1038385028 827975331 823315141 1066001589 1066001589 119295630 340346304 340346304 655266107 655266107 393090025 911126328 911126328 1024018533 1024018533 604226692 239841428 188555520 192354928 192354928 707624725 707624725 147522672 780865609 780865609 525541530 613626944 940100567 940100567 1042751574 1042751574 917001606 917001606 845583826 845583826 262232080 262232080 238939928 238939928 312153896 465617768 465617768 234945300 269476432 455905350 455905350 49361616 245718892 327434800 327434800 353627960 353627960 99997888 113570480 217573608 217573608 160658380 88586452 263392252 263392252 71305704 60253736 235457544 235457544 84460584 95544320 266223248 266223248 229892892 216322368 8426080 109617504 128402496 128402496 118150200 118150200 67220528 55148624 55148624 72588456 72588456 59583600 77994928 101660320 101660320 166144729 166144729 221451652 221451652 183185029 183185029 59907744 288621472 628548411 628548411 343618998 1031284531 1031284531 619072451 540710282 700713945 700713945 811621331 811621331 562123679 814816780 894465192 894465192 616859241 609204234 609204234 1038938274 1038938274 691799140 1033680723 1033680723 1042057384 1042057384 283134128 329566578 329566578 293912674 64228080 64228080 111955968 112123224 191585538 339969098 488685870 488685870 232969984 224007852 224007852 339337898 339337898 357689098 357689098 669041646 997196727 997196727 703204291 682434001 1000827753 1000827753 859742738 664699248 664699248 522422124 522422124 567009564 567009564 577241472 577241472 570950673 570950673 227014764 227014764 26706444 274206208 274206208 906809112 906809112 406374150 406374150 283248254 720114614 720114614 469785942 408928272 457487649 560492293 984562046 984562046 843764883 766593730 766593730 519655062 519655062 510682832 688654726 828900771 832871843 832871843 832754019 835885201 835885201 340138122 663938293 763625654 985411989 985411989 591030113 198230044 520254010 802304685 802304685 962397735 962397735 466201163 891846981 1063839148 1063839148 503722131 851908983 851908983 847623721 958191123 958191123 888919063 586493381 54466199 274205824 491588228 1013886640 1013886640 846547603 607552983 618832393 618832393 555055528 754255626 754255626 707273005 804801031 935625904 1049889375 1049889375 693109413 693109413 945821732 945821732 350652803 887230923 900862427 900862427 795294141 795294141 559449501 549577536 77941386 77941386 361906195 361906195 1046868296 1064498151 1064498151 1016328783 483894030 723658468 761213485 761213485 617012674 636037448 636037448 655341921 655341921 823810657 823810657 544882721 1023717645 1023717645 406572223 357888959 575191968 860016819 860016819 822400023 860799082 860799082 604064948 947090130 947090130 717474133 906356757 906356757 440800098 440800098 459706542 516212790 516212790 513067984 614486728 648155481 648155481 648155481 161663913 57830692 613232377 613232377 49008697 656425753 656425753 299578098 299578098 199562034 137104644 285245472 285245472 853559605 853559605 593761555 50708524 38656020 218155040 218155040 104209176 385688064 781268529 982513774 1003499457 1003499457 923574934 330732712 500302624 829429327 1039274991 1039274991 1019237505 1019237505 838241184 878448267 1003803388 1003803388 983847010 964167607 964167607 860366346 860366346 825788873 825788873 820561347 731680598 731680598 962285503 962285503 529146284 529146284 938786412 938786412 886121163 584501622 584501622 337951174 433471520 433471520 246291804 453791750 453791750 201723944 370673520 370673520 373710446 373710446 584310229 584310229 696921600 696921600 492843853 896336622 896336622 888514035 646202470 900016491 900016491 898106475 898106475 338690048 1041574704 1041574704 628435079 809898630 809898630 604101071 314960466 709886613 709886613 620758509 1053368525 1053368525 855966782 855966782 1001128199 1063803790 1063803790 957458013 322969123 467584524 467584524 277349442 525785821 805609684 805609684 489216916 456192824 456192824 449231728 43268320 50558128 50558128 48700640 48700640 41723776 57906048 57906048 76995144 79873640 119819264 119819264 42490160 126436720 126436720 77668680 90178632 107243712 107243712 46201216 46201216 27716592 262144 2048 16855057 587337777 587337777 587337777 640665896 640665896 679156932 679156932 562667629 365855046 950015599 950015599 852282579 852282579 274582579 790667397 790667397 327116312 557987876 557987876 958755716 958755716 959013782 959013782 503161069 358979922 355101792 53408312 356721666 356721666 508302470 885268050 1044482416 1044482416 1038477807 769174286 769174286 870955509 870955509 399464887 1043068209 1043068209 620704575 210155676 336189490 409775378 436269332 879952283 879952283 170549920 844192597 844192597 529302062 529302062 291380444 56369764 45438384 67769352 301469578 301469578 85868584 294925362 294925362 507191507 507191507 222949172 463537102 705201301 705201301 945996375 945996375 866268368 603215825 603215825 199238534 562178729 562178729 325224122 286922274 229855536 242747292 445890768 445890768 470766726 470766726 202242060 273986452 273986452 482494804 517163636 517163636 333519526 112125736 354803050 354803050 541421632 684898432 684898432 242629277 242629277 75635994 888541549 888541549 863572225 1019815119 1019815119 634558752 620153793 620153793 711610536 711610536 763826525 763826525 365298250 867768207 867768207 729749041 269100538 554774889 554774889 402798178 402798178 466954218 466954218 306125046 201504795 447219030 569180436 569180436 972365825 972365825 710935581 464080145 457851350 457851350 520655084 520655084 610141321 610141321 635314089 669916953 669916953 664186832 43082048 55906032 55906032 39346544 45363832 635178729 635178729 812046723 1010198123 1010198123 663834181 486575848 529039580 899864581 899864581 669371293 669371293 242475553 558058382 777721881 777721881 1065273315 1065273315 617500233 494003110 682721515 682721515 350603022 1049768854 1049768854 319427634 859315746 859315746 919968048 919968048 892418073 754383593 554222066 746820391 746820391 422740596 951101796 951101796 612421872 864031077 864031077 669221715 479270264 506012958 506012958 225185196 1017586693 1017586693 902723846 961018023 961018023 576861217 682426820 682426820 564554053 524989501 298593747 404354709 671346693 671346693 1041498594 1041498594 77683629 671223813 685967844 685967844 913575724 913575724 204800570 673261826 877739049 877739049 +0 diff --git a/Student/task3/Test_H/Hard_H/conv.sy b/Student/task3/Test_H/Hard_H/conv.sy new file mode 100644 index 0000000..9c977dc --- /dev/null +++ b/Student/task3/Test_H/Hard_H/conv.sy @@ -0,0 +1,118 @@ +const int max = 1073741824; +int checkrange(int num){ + while (num > max) num = num - max; + while (num < 0) num = num + max; + return num; +} + +int reduce(int kernelid, int x, int y){ + if (kernelid == 0) + return checkrange(x+y); + if (kernelid == 1) { + // x ^ y; + int ret = 0; + int i = 1; + while (i < max){ + if (x / i % 2 == y / i % 2) + ret = ret * 2; + else + ret = ret * 2 + 1; + i = i * 2; + } + return ret; + } + if (kernelid == 2) + if (x > y) return x; + else return y; + if (kernelid == 3){ + // return x | y; + + int ret = 0; + int i = 1; + while (i < max){ + if (x / i % 2 == 1 || y / i % 2 == 1) + ret = ret * 2 + 1; + else + ret = ret * 2; + i = i * 2; + } + return ret; + } + if (kernelid == 4){ + // return x & y; + int ret = 0; + int i = 1; + while (i < max){ + if (x / i % 2 == 1 && y / i % 2 == 1) + ret = ret * 2 + 1; + else + ret = ret * 2; + i = i * 2; + } + return ret; + } + return 0; +} + +int getvalue(int array[], int n, int m, int x, int y){ + if (x < 0 || y < 0 || x >= n || y >= m) return 0; + return array[x * m + y]; +} + +int convn(int kernelid, int input[], int output[], int n, int m, int c){ + int i = 0; + int j = 0; + int x, y, curr; + const int true = 1; + while (true == true){ + j = 0; + while (true == true){ + curr = 0; + x = i - c / 2; + while (true == true){ + y = j - c / 2; + while (true == true){ + curr = reduce(kernelid, curr, getvalue(input, n, m, x, y)); + y = y + 1; + if (y >= j + c / 2) break; + } + x = x + 1; + if (x >= i + c / 2) break; + } + output[i * m + j] = curr; + j = j + 1; + if (j >= m) break; + } + i = i + 1; + if (i >= n) break; + } + return 0; +} + +int a[10000000]; +int b[10000000]; +int kernelid[10000]; + +void memmove(int dst[], int src[], int n){ + int i = 0; + while (i < n){ + dst[i] = src[i]; + i = i + 1; + } +} + +int main(){ + int c = getint(), n = getint(), m = getint(); + getarray(a); + int task = getarray(kernelid); + + int i = 0; + while (i < task){ + convn(kernelid[i], a, b, n, m, c); + memmove(a, b, n * m); + i = i + 1; + } + + putarray(n * m, a); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Hard_H/expr_eval.in b/Student/task3/Test_H/Hard_H/expr_eval.in new file mode 100644 index 0000000..1c19e58 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/expr_eval.in @@ -0,0 +1,6 @@ +5 + 1+2* 3/4- 2 *411 ; +0 -1+10*1329000/ 22219 +99 ; +1199+ 98888/2227 %112-23; + * 2; +; diff --git a/Student/task3/Test_H/Hard_H/expr_eval.out b/Student/task3/Test_H/Hard_H/expr_eval.out new file mode 100644 index 0000000..384810e --- /dev/null +++ b/Student/task3/Test_H/Hard_H/expr_eval.out @@ -0,0 +1,8 @@ +-820 +696 +1220 +panic! +-1 +panic! +-1 +0 diff --git a/Student/task3/Test_H/Hard_H/expr_eval.sy b/Student/task3/Test_H/Hard_H/expr_eval.sy new file mode 100644 index 0000000..08e95a0 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/expr_eval.sy @@ -0,0 +1,145 @@ +const int TOKEN_NUM = 0, TOKEN_OTHER = 1; +int last_char = 32, num, other; +int cur_token; + +int next_char() { + last_char = getch(); + return last_char; +} + +int is_space(int c) { + if (c == 32 || c == 10) { + return 1; + } + else { + return 0; + } +} + +int is_num(int c) { + if (c >= 48 && c <= 57) { + return 1; + } + else { + return 0; + } +} + +int next_token() { + while (is_space(last_char)) next_char(); + if (is_num(last_char)) { + num = last_char - 48; + while (is_num(next_char())) { + num = num * 10 + last_char - 48; + } + cur_token = TOKEN_NUM; + } + else { + other = last_char; + next_char(); + cur_token = TOKEN_OTHER; + } + return cur_token; +} + +int panic() { + putch(112); + putch(97); + putch(110); + putch(105); + putch(99); + putch(33); + putch(10); + return -1; +} + +int get_op_prec(int op) { + // +, - + if (op == 43 || op == 45) return 10; + // *, /, % + if (op == 42 || op == 47 || op == 37) return 20; + // other + return 0; +} + +void stack_push(int s[], int v) { + s[0] = s[0] + 1; + s[s[0]] = v; +} + +int stack_pop(int s[]) { + int last = s[s[0]]; + s[0] = s[0] - 1; + return last; +} + +int stack_peek(int s[]) { + return s[s[0]]; +} + +int stack_size(int s[]) { + return s[0]; +} + +int eval_op(int op, int lhs, int rhs) { + // + + if (op == 43) return lhs + rhs; + // - + if (op == 45) return lhs - rhs; + // * + if (op == 42) return lhs * rhs; + // / + if (op == 47) return lhs / rhs; + // % + if (op == 37) return lhs % rhs; + // other + return 0; +} + +int eval() { + int oprs[256] = {}, ops[256] = {}; + // get the first value + if (cur_token != TOKEN_NUM) return panic(); + stack_push(oprs, num); + next_token(); + // evaluate + while (cur_token == TOKEN_OTHER) { + // get operator + int op = other; + if (!get_op_prec(op)) break; + next_token(); + // handle operator + while (stack_size(ops) && get_op_prec(stack_peek(ops)) >= get_op_prec(op)) { + // evaluate the current operation + int cur_op = stack_pop(ops); + int rhs = stack_pop(oprs), lhs = stack_pop(oprs); + stack_push(oprs, eval_op(cur_op, lhs, rhs)); + } + stack_push(ops, op); + // get next expression + if (cur_token != TOKEN_NUM) return panic(); + stack_push(oprs, num); + next_token(); + } + // eat ';' + next_token(); + // clear the operator stack + while (stack_size(ops)) { + int cur_op = stack_pop(ops); + int rhs = stack_pop(oprs), lhs = stack_pop(oprs); + stack_push(oprs, eval_op(cur_op, lhs, rhs)); + } + return stack_peek(oprs); +} + +int main() { + int count = getint(); + getch(); + next_token(); + while (count) { + putint(eval()); + putch(10); + count = count - 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Hard_H/fft.in b/Student/task3/Test_H/Hard_H/fft.in new file mode 100644 index 0000000..bcb8e3f --- /dev/null +++ b/Student/task3/Test_H/Hard_H/fft.in @@ -0,0 +1,4 @@ +100000 +6 32 8 36 1 17 19 10 10 6 14 3 4 40 12 19 27 13 3 8 17 10 25 11 37 29 17 36 8 26 10 23 19 20 19 17 31 11 27 27 25 37 23 36 37 21 31 27 20 6 14 18 2 19 19 22 15 17 24 29 33 12 29 35 16 13 22 36 21 20 10 7 4 34 27 36 5 14 5 27 25 16 32 22 7 1 6 22 36 16 28 21 37 2 14 18 16 39 13 9 21 38 19 36 15 25 35 8 17 11 36 12 21 28 19 9 15 3 24 9 8 33 38 34 31 6 8 18 24 2 36 20 3 33 3 10 39 3 34 31 15 22 33 11 33 39 23 26 39 10 23 22 16 1 20 22 35 1 11 33 26 7 16 23 2 9 15 14 7 29 21 12 6 1 22 16 19 12 33 11 5 5 29 8 1 39 40 6 7 3 31 30 9 39 4 32 4 25 6 1 38 17 33 37 3 4 28 28 3 32 17 29 2 11 3 24 17 19 2 5 3 21 15 21 21 6 28 33 31 26 31 4 31 12 5 7 32 20 36 39 18 7 37 37 35 26 31 7 6 15 15 18 21 33 22 11 1 13 37 15 15 30 11 2 10 27 27 35 4 2 27 23 33 17 33 31 24 35 16 30 25 22 38 14 7 40 24 14 27 39 23 34 13 33 27 24 25 29 22 23 25 7 30 34 30 24 6 35 16 13 14 39 13 28 39 36 34 36 34 19 25 6 40 27 14 24 26 13 1 19 24 12 18 28 18 33 30 34 23 17 22 21 28 12 19 19 7 2 4 38 15 21 24 26 23 12 18 16 35 30 18 11 13 5 28 21 11 30 12 25 39 14 33 37 16 2 34 28 8 23 17 34 38 11 24 40 40 19 23 3 9 14 2 22 1 40 37 38 10 32 6 12 30 13 10 2 1 18 5 1 23 31 19 26 35 35 13 13 9 34 30 5 28 22 38 1 20 29 37 26 18 9 11 30 38 11 24 28 16 17 15 22 28 20 38 21 17 1 14 5 26 30 24 16 22 28 22 27 23 24 5 40 3 33 4 32 35 19 29 2 20 19 28 1 33 35 20 23 26 13 10 9 9 25 14 16 2 8 10 37 32 24 34 24 23 10 23 11 39 33 29 39 29 14 14 14 19 4 4 16 9 21 35 24 9 9 8 35 6 6 40 31 25 5 27 15 17 3 36 12 10 28 37 22 29 26 19 26 40 29 12 3 29 25 30 39 18 24 40 11 8 15 36 5 7 17 39 40 24 3 32 38 33 9 2 9 3 28 35 29 20 23 31 22 6 17 23 6 12 36 16 1 28 25 37 26 33 3 8 16 23 6 28 21 16 32 36 25 11 31 6 1 2 21 11 12 20 1 32 8 34 19 3 16 16 19 33 2 30 23 34 17 24 10 22 15 4 5 39 7 3 10 28 25 9 32 13 31 32 23 34 39 33 27 2 40 30 25 34 30 15 16 32 7 4 14 11 4 9 14 5 17 18 20 15 9 1 24 8 27 40 23 3 32 39 19 22 20 38 2 24 9 33 21 19 2 34 24 29 34 40 36 9 37 11 31 15 34 9 19 14 37 7 29 23 22 20 28 25 34 32 9 16 3 24 26 26 24 19 8 36 12 23 40 9 30 39 1 15 40 15 5 40 21 15 33 1 13 34 20 2 19 34 29 29 25 15 14 2 8 23 7 31 28 11 27 22 27 6 25 37 35 38 18 21 35 15 7 12 9 19 25 30 9 3 39 21 21 34 22 32 27 24 31 14 17 20 11 32 17 17 3 37 11 35 26 39 7 1 40 36 40 14 36 36 20 39 35 8 37 35 19 5 8 24 15 5 19 33 35 36 20 18 39 10 13 27 21 30 14 29 31 37 16 29 30 23 14 28 27 40 15 40 37 24 14 33 33 3 16 19 30 22 30 39 18 10 8 33 4 18 13 30 3 15 37 24 40 17 13 27 24 26 25 36 18 34 7 3 36 10 20 6 9 34 12 28 38 19 8 18 7 39 4 34 12 29 4 2 20 28 19 20 30 36 29 28 23 39 3 33 32 7 29 25 7 7 14 18 36 12 19 34 14 11 6 38 34 13 18 30 9 4 34 23 24 4 2 9 4 10 5 1 20 20 7 4 22 2 18 7 13 34 3 33 26 26 37 18 28 11 13 38 40 24 13 28 25 24 31 11 3 7 5 15 13 1 21 12 4 4 12 3 21 16 7 13 11 26 39 2 18 7 36 17 7 2 22 19 23 35 11 1 1 38 21 6 8 5 1 40 22 20 21 7 15 36 3 18 34 39 34 36 34 32 1 14 16 15 37 33 6 1 14 10 9 21 3 19 33 11 40 38 6 1 39 5 34 5 36 33 4 15 34 5 26 2 30 26 10 33 37 16 22 17 29 28 7 12 18 25 1 35 21 24 39 20 9 13 29 1 1 23 38 35 6 27 22 23 10 28 16 3 13 7 25 12 19 3 38 21 39 29 5 36 24 29 5 39 30 21 23 10 39 19 5 32 37 33 37 20 11 24 3 17 14 8 30 14 6 37 18 8 14 8 10 12 26 13 19 36 12 22 9 6 3 4 18 17 6 32 35 27 10 12 7 23 18 32 40 24 15 27 14 5 37 13 33 33 13 36 4 9 21 19 16 32 34 27 23 9 15 27 8 20 37 10 5 8 3 11 22 18 4 28 31 8 36 21 35 4 26 38 40 15 24 34 25 8 40 26 20 22 3 12 31 22 16 34 16 11 37 12 35 31 15 2 9 23 39 2 37 20 5 18 7 33 30 25 31 33 6 9 25 31 17 32 29 31 29 21 23 3 30 36 26 5 27 4 3 38 35 16 7 13 32 20 20 35 26 3 23 30 15 24 30 35 17 40 2 5 29 14 3 3 39 30 37 10 19 33 19 6 5 11 16 27 27 31 40 40 28 15 18 33 34 21 8 2 19 20 35 31 2 20 15 13 27 5 11 22 19 26 11 29 13 1 20 32 6 33 14 39 32 13 27 15 38 18 13 31 34 21 38 12 20 4 27 25 9 3 22 10 9 24 34 24 17 11 14 11 11 35 18 32 2 19 7 13 37 25 9 27 32 25 34 12 36 21 8 18 32 39 36 40 37 8 2 26 29 2 30 12 10 6 5 19 24 27 38 34 27 8 4 25 5 29 24 30 29 3 12 25 3 21 39 40 18 18 27 39 2 37 5 1 35 14 2 14 16 7 4 39 3 23 30 16 24 16 38 8 26 28 14 40 2 20 38 18 8 19 1 35 37 20 26 11 39 38 1 15 9 39 27 38 11 18 10 14 2 18 21 23 31 11 19 33 1 16 13 38 10 34 21 7 19 3 39 10 37 15 31 32 12 9 11 8 10 37 35 26 5 7 23 9 13 20 15 14 17 27 22 31 27 1 30 3 3 14 26 13 14 5 14 11 28 22 13 8 15 26 37 32 24 32 31 32 27 28 1 29 24 29 2 13 23 38 8 22 3 38 6 34 20 36 12 8 35 12 35 28 24 1 11 22 13 13 22 12 33 15 10 39 12 25 22 27 11 4 19 35 16 13 5 39 21 3 21 30 26 30 4 35 6 11 12 9 10 24 27 9 31 15 4 36 14 30 5 6 9 19 37 40 1 19 36 4 24 30 3 33 15 39 14 27 11 40 30 5 22 35 5 14 12 36 1 28 28 38 19 18 25 5 37 24 7 15 37 3 37 11 9 13 18 4 24 26 33 25 19 10 36 32 1 23 39 20 3 12 16 31 25 31 6 27 19 20 34 8 7 40 21 18 8 11 12 15 19 22 36 34 20 19 38 12 15 27 12 15 28 5 34 12 22 19 2 17 22 35 19 36 35 30 35 40 19 28 19 22 31 32 19 8 2 8 12 28 20 38 30 26 12 34 32 6 13 31 9 9 17 9 17 26 7 21 38 18 8 16 4 3 22 12 8 14 3 35 12 18 9 10 8 34 21 31 21 1 25 2 20 16 26 9 26 36 2 2 25 32 12 17 17 5 38 30 35 21 21 4 38 7 18 32 31 40 13 37 25 32 19 15 32 8 16 38 30 39 12 27 6 25 28 27 5 3 14 8 15 1 26 27 21 8 37 33 28 10 24 17 17 37 29 34 12 28 15 4 36 12 26 5 31 11 23 19 29 15 32 13 2 8 19 29 16 27 25 3 20 34 11 6 14 11 8 22 2 2 2 21 34 23 36 5 14 6 40 13 33 10 21 36 20 29 17 4 14 34 8 40 17 18 8 14 20 26 14 21 39 18 20 21 22 9 27 38 7 8 35 4 20 39 4 24 29 30 21 2 22 40 32 38 9 28 19 2 38 35 22 37 11 40 35 9 19 5 11 4 37 33 14 24 35 30 4 2 9 12 4 1 36 33 17 17 30 8 10 34 16 21 31 36 25 3 7 12 7 29 39 31 16 7 40 29 17 16 40 8 29 22 2 31 5 24 8 33 8 10 35 40 37 4 39 36 6 30 33 35 25 13 6 3 4 30 40 40 21 14 31 40 7 2 17 35 4 23 20 1 25 3 19 1 12 14 33 7 8 33 2 10 19 39 3 1 26 8 28 38 12 16 33 38 11 16 14 18 6 2 21 1 27 1 5 27 34 2 37 14 6 32 8 22 38 3 28 15 6 28 2 10 16 29 15 22 15 34 33 2 10 2 18 32 32 19 12 27 17 37 20 14 15 8 35 36 13 21 32 1 11 18 26 30 21 32 35 37 32 16 29 23 30 13 13 30 9 18 33 38 17 32 34 15 10 22 28 24 38 35 19 29 6 13 27 10 38 13 26 11 13 31 10 30 22 21 24 2 1 26 29 3 9 25 34 21 13 11 9 19 4 24 6 23 33 22 35 11 14 39 32 27 5 27 21 3 23 37 8 27 31 15 11 19 27 26 4 25 19 39 28 1 31 2 4 18 37 10 12 10 2 25 24 12 26 35 23 15 13 27 36 23 22 20 37 39 3 20 40 5 22 22 31 10 24 8 17 31 16 35 24 18 17 27 14 3 26 20 28 7 30 5 40 6 10 27 12 3 29 24 31 29 24 7 22 35 32 11 28 28 33 40 23 27 36 28 18 27 7 28 6 3 33 14 18 36 3 7 13 21 4 12 15 27 4 39 17 5 26 3 11 36 37 31 15 9 24 26 26 18 14 29 32 10 11 1 27 8 5 36 6 28 28 28 3 31 16 9 29 5 8 5 30 21 24 12 38 18 2 33 13 12 13 5 15 11 3 1 33 32 32 29 14 2 14 13 2 12 26 30 28 19 40 39 21 33 31 16 21 10 36 3 24 14 25 21 35 18 24 38 28 30 18 10 5 29 2 26 35 33 20 30 27 24 12 19 25 18 37 3 22 33 20 13 20 16 25 18 36 32 16 6 37 3 34 23 25 39 14 31 10 20 39 20 39 37 17 21 35 13 7 2 26 20 12 8 23 16 21 27 40 20 3 32 18 30 8 17 30 21 25 12 4 3 23 19 7 8 26 3 33 1 11 12 18 12 5 23 33 35 2 37 33 23 17 40 19 22 12 11 6 3 17 14 7 4 11 19 11 35 36 28 33 31 39 39 40 22 34 18 35 22 36 21 14 27 24 32 37 15 32 11 38 27 4 26 12 8 37 33 3 24 1 16 9 22 17 16 2 35 2 21 14 17 1 3 36 25 19 36 34 15 17 38 3 26 17 14 35 3 8 28 13 32 13 10 15 1 36 5 26 2 15 33 7 29 19 24 33 13 14 4 32 37 19 39 17 29 17 6 24 7 28 30 2 21 14 31 1 33 13 17 33 7 37 23 36 2 35 38 38 22 29 34 17 22 19 18 10 21 6 38 18 3 13 36 29 35 1 9 39 10 1 30 36 22 17 3 16 38 31 16 24 13 15 1 36 8 18 13 29 40 36 21 17 12 39 10 16 21 25 30 31 27 6 6 32 36 7 34 4 16 8 33 40 24 17 40 7 13 15 39 20 6 26 1 40 34 36 31 15 19 5 27 27 35 35 21 3 30 40 24 2 29 11 31 18 26 1 24 19 5 33 12 37 30 27 7 27 10 14 23 10 16 39 9 40 24 26 18 36 35 32 13 40 28 12 30 8 24 37 15 9 29 37 15 22 16 14 35 9 7 16 31 9 20 39 26 7 4 36 30 11 19 39 10 37 7 4 19 7 37 24 24 14 37 32 13 19 27 4 28 35 16 34 26 17 32 13 17 6 25 2 13 40 33 5 40 32 21 31 39 26 23 12 40 40 6 23 31 37 12 4 10 25 5 6 27 23 32 13 9 37 19 20 5 15 25 6 22 4 35 36 14 36 1 32 38 24 36 35 22 37 22 36 21 20 1 30 6 21 13 31 27 5 20 28 7 17 28 22 30 13 8 25 37 17 36 12 11 16 26 4 34 26 36 22 30 8 5 12 33 25 35 29 10 5 33 40 27 19 18 22 22 2 37 17 28 15 10 14 34 25 2 15 15 39 34 27 12 7 15 28 40 35 20 26 36 3 30 1 40 20 16 9 2 3 14 3 15 3 33 25 7 18 37 21 1 30 16 2 17 20 21 1 36 9 9 4 22 13 32 21 27 9 3 25 20 28 36 27 9 21 7 12 4 11 9 16 22 28 25 14 13 31 25 30 29 24 9 7 33 18 14 28 3 30 34 28 18 29 28 3 28 17 33 23 12 1 38 28 36 6 23 22 37 36 1 30 12 29 3 36 24 17 19 1 15 28 9 6 16 37 3 1 39 26 15 7 28 19 25 15 8 33 32 17 35 4 2 15 15 24 21 18 28 11 29 14 19 20 35 20 12 16 27 34 40 2 11 31 24 18 8 7 33 27 21 7 32 21 21 19 12 29 31 13 29 39 30 33 5 26 14 34 29 33 20 22 2 27 25 14 11 12 27 29 34 23 8 35 19 24 25 25 20 17 28 8 1 39 24 33 31 32 27 13 21 17 13 32 9 15 30 12 39 10 10 18 14 33 36 13 5 9 12 10 7 24 39 3 29 30 27 30 20 37 25 4 19 12 27 12 12 6 14 7 31 38 37 12 1 15 37 25 36 23 17 37 27 34 25 17 33 40 35 32 1 7 26 6 33 35 37 27 28 4 1 15 28 37 19 17 39 5 34 3 40 4 15 15 11 18 3 28 14 17 38 4 22 26 24 5 13 35 21 22 16 32 31 29 13 12 5 36 35 30 15 6 36 9 28 23 36 31 30 31 30 8 40 5 17 24 9 11 25 25 24 33 11 26 8 3 10 12 21 37 30 14 12 15 38 5 24 4 38 37 27 32 12 28 23 23 24 35 1 24 12 18 26 33 38 19 27 20 38 34 29 5 37 36 38 14 12 31 18 38 13 32 17 6 1 24 4 2 5 16 36 24 24 29 24 23 30 19 18 6 27 34 18 31 7 40 28 39 14 31 9 4 8 37 38 21 1 16 31 23 3 6 3 40 29 22 5 13 12 1 17 26 37 3 1 40 3 38 29 24 28 34 26 30 2 8 39 31 34 7 34 23 17 32 35 19 4 34 34 10 5 31 12 14 19 26 16 14 7 19 29 23 29 21 30 40 26 22 24 12 37 20 5 17 25 27 7 24 5 37 4 6 22 26 7 3 39 20 23 25 26 11 34 32 36 6 27 33 28 11 38 33 12 19 27 4 31 2 22 33 33 20 1 25 14 19 38 12 11 33 36 36 28 37 15 8 3 36 15 2 10 15 28 4 11 26 22 18 27 7 26 22 21 6 34 1 19 15 20 7 23 38 20 36 33 38 37 3 38 17 21 11 10 6 38 17 23 33 36 22 38 21 25 25 20 8 28 10 8 30 12 27 8 7 11 22 26 14 1 7 21 29 34 16 33 16 39 18 5 18 6 35 23 16 17 33 27 22 7 4 23 40 35 31 19 2 11 3 34 8 27 4 6 33 18 4 9 40 3 8 8 40 23 26 6 21 2 10 15 21 18 40 34 8 24 23 23 10 29 12 36 16 33 7 31 37 21 27 18 26 11 7 31 19 13 29 21 22 19 19 8 14 17 12 8 3 19 20 37 40 14 7 21 35 3 15 7 34 26 12 17 24 30 34 33 7 15 18 28 12 14 14 24 2 32 30 5 28 5 11 36 10 21 34 15 7 8 10 17 32 35 30 5 5 37 23 8 21 32 15 36 32 8 18 32 26 40 7 26 19 4 10 24 21 25 17 17 17 26 5 5 16 33 35 7 27 26 26 26 28 26 27 1 39 2 11 24 7 3 35 36 6 22 35 30 20 28 19 39 6 15 5 29 20 17 28 5 6 25 16 24 24 30 10 9 34 4 23 13 6 22 18 38 15 26 16 17 29 26 10 2 26 12 39 21 4 32 27 40 4 3 17 39 12 33 7 22 4 10 26 23 39 34 21 37 27 14 2 35 3 15 19 36 5 15 37 24 12 23 39 26 2 40 3 33 40 17 32 3 17 20 11 7 23 9 35 40 34 40 18 9 2 17 18 23 25 28 19 2 12 19 14 8 1 10 18 9 32 28 2 7 33 40 33 4 5 34 39 28 8 39 17 26 6 20 32 26 5 27 10 1 16 2 4 18 23 19 8 8 22 5 10 16 1 22 12 37 40 17 39 13 6 22 24 7 11 27 8 11 10 34 11 34 39 29 16 14 10 1 1 22 9 13 37 12 22 8 3 3 15 27 4 9 25 24 29 3 7 3 31 18 18 21 4 17 34 24 36 35 27 7 22 11 12 20 32 20 21 9 18 37 1 24 33 32 2 3 10 13 18 23 9 26 8 37 6 28 10 12 4 6 13 14 27 17 5 38 9 30 27 8 40 29 30 17 36 37 34 12 9 10 7 23 6 2 37 27 3 35 25 25 7 36 12 7 10 34 37 36 18 31 25 37 4 18 32 5 19 35 37 9 3 39 19 31 13 24 7 31 29 11 38 1 26 35 16 1 27 23 18 3 30 40 12 40 30 36 6 7 17 16 18 27 11 32 26 40 19 40 31 20 2 38 19 33 20 32 32 33 37 27 31 16 12 36 13 33 16 12 37 39 24 33 7 2 35 19 26 7 37 17 20 33 31 39 12 31 21 20 17 21 21 16 39 2 30 2 11 37 39 2 18 32 13 8 14 22 5 28 37 24 39 15 9 18 16 23 40 18 4 3 40 37 26 2 31 33 3 34 39 14 24 16 18 26 38 4 3 21 14 24 15 1 36 13 16 1 1 16 15 8 17 24 12 3 15 36 10 31 35 5 31 19 40 1 9 10 31 3 39 8 17 4 31 27 40 1 15 14 21 4 36 5 17 34 14 30 36 36 1 15 1 25 9 26 33 11 39 14 34 33 34 25 2 19 25 9 27 26 14 5 24 35 18 4 17 25 4 19 15 24 20 23 4 33 33 5 3 30 10 21 19 2 40 30 26 2 7 5 14 22 30 32 37 24 18 35 34 14 18 34 18 13 36 36 29 1 32 20 13 11 40 37 14 26 1 31 8 27 35 5 34 2 31 25 13 8 36 35 34 19 24 33 16 32 33 2 36 35 10 8 36 6 4 18 6 2 39 6 32 13 21 7 37 20 5 5 8 2 38 29 19 10 26 37 20 25 24 20 19 40 17 13 4 27 10 20 1 31 20 10 11 22 18 34 11 23 11 26 39 16 10 24 26 32 13 33 37 26 26 36 38 5 27 23 16 33 38 16 7 35 34 34 7 34 13 12 23 12 11 14 36 7 10 24 11 10 13 7 16 5 23 15 8 12 38 27 11 25 22 20 8 35 9 1 18 4 17 1 6 28 11 39 15 34 12 40 37 25 34 38 11 34 23 19 7 33 31 3 38 16 34 12 27 14 2 9 4 24 30 21 2 40 11 14 28 34 8 28 28 22 3 30 23 3 35 40 5 37 30 27 30 33 23 8 18 30 21 33 23 25 33 8 1 33 26 6 2 40 37 13 28 36 24 36 36 32 4 1 12 7 8 32 37 3 6 37 12 29 2 19 21 7 34 10 35 25 22 4 28 33 37 20 17 12 24 26 26 9 25 30 28 22 27 1 15 3 38 30 38 7 24 29 9 37 1 31 39 36 30 20 12 1 32 40 19 2 2 5 12 37 18 8 12 32 3 33 18 20 34 25 20 10 12 5 35 36 23 22 31 38 9 36 35 24 28 27 31 24 30 2 15 3 23 7 12 38 30 34 12 26 11 13 14 21 27 2 3 26 23 33 16 20 25 17 1 1 4 10 3 37 36 18 8 37 31 11 10 22 10 8 37 35 2 22 3 39 32 35 21 30 1 21 28 30 21 10 11 37 18 18 3 23 39 8 18 15 25 20 33 30 25 37 25 12 35 33 18 40 25 27 40 23 35 3 14 16 35 14 10 7 18 28 1 2 9 37 28 28 26 21 7 27 30 19 39 38 11 6 8 32 23 40 13 39 27 4 34 35 36 24 38 7 23 38 28 14 24 18 29 22 29 17 13 16 35 17 5 28 4 32 14 6 8 9 19 12 22 12 9 22 37 26 6 18 30 24 10 33 35 4 5 22 25 1 23 22 15 7 10 10 40 17 7 4 39 26 27 32 11 23 23 35 31 25 2 5 23 2 11 10 12 5 35 4 23 4 13 21 39 23 4 22 39 15 32 35 39 13 11 38 11 15 39 18 33 10 30 36 13 19 32 36 40 21 22 16 37 24 13 19 8 38 36 16 14 40 25 23 30 5 9 1 2 31 21 19 18 32 33 15 16 34 15 10 19 37 6 6 19 23 6 27 8 10 8 8 38 4 3 32 34 11 35 10 5 33 23 20 24 3 30 4 32 39 40 26 29 31 34 26 23 11 18 6 5 31 3 1 3 21 34 6 15 34 16 6 31 1 16 35 5 17 5 4 37 23 33 36 32 21 24 22 6 8 17 16 21 3 4 3 20 14 9 23 1 18 10 7 38 1 3 4 14 1 22 34 28 4 15 33 28 31 27 37 39 24 25 37 10 6 20 19 16 34 10 22 3 24 9 23 1 4 38 26 25 23 4 10 33 22 21 5 11 33 23 1 6 15 28 30 7 40 8 7 20 2 22 18 5 3 17 37 16 23 32 40 34 40 23 4 13 31 23 11 36 8 2 9 30 3 25 4 39 11 29 4 21 27 4 30 4 7 29 27 39 4 26 8 27 38 39 37 33 31 40 37 22 7 32 11 23 17 30 16 21 7 2 15 14 22 13 19 13 9 6 20 16 10 18 27 27 19 24 8 15 30 36 36 9 34 9 1 19 9 6 28 31 28 9 35 14 7 4 21 18 16 33 25 12 27 30 2 17 31 39 21 4 33 39 40 38 15 37 24 5 39 19 26 14 25 13 31 40 20 5 39 18 8 9 38 38 2 33 38 39 17 32 10 13 19 12 24 25 32 1 27 5 22 28 34 27 40 20 38 5 2 29 30 15 16 15 36 22 21 35 10 30 11 35 10 28 20 2 16 23 34 9 31 33 3 10 24 15 8 5 4 33 33 1 34 11 24 25 3 6 32 35 37 32 4 21 16 7 25 34 38 4 29 23 33 30 3 11 19 12 18 37 30 4 39 33 20 29 4 32 13 35 8 32 35 2 8 24 33 14 35 2 27 32 20 21 15 6 9 40 14 4 31 5 35 30 35 3 32 33 10 31 22 6 27 36 23 1 21 12 10 10 4 10 15 34 36 34 14 28 25 35 37 4 11 10 34 27 13 35 25 33 29 26 3 36 29 14 29 6 19 36 21 21 32 33 39 11 22 37 1 29 24 1 31 28 22 9 38 13 8 33 20 22 8 37 37 19 21 27 40 24 25 3 10 6 11 26 21 20 11 37 32 9 10 33 11 28 10 16 40 20 2 39 7 22 32 11 30 40 8 5 18 18 6 40 37 27 34 22 4 32 10 20 11 14 5 11 33 25 15 38 23 31 3 22 22 35 10 40 37 24 30 20 4 34 18 33 11 14 15 19 10 14 3 24 8 38 7 27 14 20 13 34 40 22 32 27 8 11 37 20 33 24 24 35 26 12 35 10 21 25 38 31 32 36 28 19 23 23 17 22 8 12 6 19 8 5 33 7 21 27 25 1 16 20 19 38 30 37 20 22 12 7 37 34 21 20 19 8 35 4 28 28 2 10 16 25 13 27 5 40 3 37 18 17 22 23 20 10 13 14 19 26 24 21 9 18 4 32 24 24 40 18 3 11 34 31 14 18 21 24 34 32 35 13 18 11 7 34 30 17 9 31 14 9 37 28 29 17 26 20 32 25 31 25 27 34 24 26 19 16 26 12 1 38 2 4 8 20 32 29 9 12 22 31 19 22 17 16 23 16 36 8 34 11 27 15 9 16 20 32 31 37 1 10 22 29 19 31 23 23 5 37 3 2 10 37 34 10 37 1 28 36 18 24 1 32 12 5 12 22 7 8 18 27 26 12 34 40 40 25 3 17 12 20 12 27 9 16 24 25 10 34 11 40 34 25 36 40 6 38 25 17 6 3 7 3 37 31 27 34 35 14 39 2 5 29 8 11 15 15 20 21 22 7 35 39 36 10 10 8 18 36 37 32 34 12 30 2 36 17 7 35 4 1 14 30 9 25 16 35 25 36 14 33 13 4 33 2 40 12 40 6 5 31 11 13 37 16 16 25 25 11 24 10 18 18 26 10 31 20 26 5 34 4 18 32 10 31 39 26 40 9 36 28 35 38 35 1 14 32 28 35 25 16 20 23 10 40 15 21 35 7 9 22 36 22 23 4 40 4 32 11 26 10 36 17 19 23 12 37 27 39 34 24 11 34 9 30 35 8 29 2 24 29 29 37 11 38 20 26 22 11 16 5 4 21 11 8 23 40 34 4 8 25 5 1 19 20 10 18 32 23 21 38 5 9 14 39 12 28 31 13 18 31 26 18 34 7 37 33 13 36 3 24 25 16 38 21 21 7 14 32 20 39 23 26 25 10 27 9 28 28 34 7 21 20 32 34 8 4 20 6 1 24 38 6 37 16 26 8 7 39 35 19 33 19 11 4 24 2 27 13 20 31 23 37 30 36 16 36 20 4 36 21 17 22 20 20 14 23 23 15 24 18 33 5 5 17 28 22 1 4 25 26 4 25 36 36 6 29 25 20 11 34 23 28 40 39 33 13 13 3 29 11 10 4 39 21 37 29 32 12 31 8 38 8 20 39 5 12 36 31 3 30 27 31 6 40 16 13 1 8 15 13 17 29 4 33 13 29 20 25 17 3 19 28 31 3 21 40 36 40 16 16 5 38 6 16 28 40 16 14 28 2 14 10 39 7 26 26 28 4 25 37 39 31 24 20 4 4 36 31 10 10 10 34 16 34 32 25 32 1 35 16 12 5 15 34 6 34 18 20 24 27 38 26 33 18 30 20 12 40 24 16 15 24 16 18 32 22 14 36 18 12 3 26 34 33 37 7 34 36 24 16 32 9 15 5 10 26 16 16 30 36 9 28 39 25 6 28 14 13 28 3 19 11 1 31 2 37 30 22 36 16 35 19 37 3 13 15 1 39 28 8 17 1 32 27 2 39 20 38 2 28 15 5 27 31 35 24 32 8 17 39 12 31 3 29 15 29 26 14 1 2 12 17 10 36 10 25 39 17 25 23 8 29 19 4 37 18 30 10 30 18 32 23 38 15 19 18 2 27 7 35 22 15 24 19 12 36 39 21 26 20 3 4 24 14 13 33 39 10 16 40 21 36 19 5 36 28 28 12 20 6 31 22 38 23 40 26 22 29 11 18 10 10 24 18 32 24 3 15 38 11 28 33 21 16 30 39 31 32 16 35 11 26 10 40 37 36 38 20 30 13 31 12 30 20 36 16 30 18 24 31 17 39 37 18 12 17 2 21 16 36 18 22 20 27 19 5 38 9 30 36 11 5 27 31 18 13 3 29 7 31 14 28 40 4 27 19 12 39 14 34 38 4 28 37 37 8 32 26 21 16 20 1 39 24 4 12 19 1 11 30 32 23 29 4 6 20 7 2 37 3 7 18 23 24 13 5 34 3 16 5 6 12 40 1 40 16 26 6 6 26 8 25 34 3 2 27 23 6 19 25 4 23 9 3 16 17 5 7 22 30 4 10 4 29 14 15 13 19 8 32 7 2 33 10 25 11 8 21 16 12 40 35 35 22 19 7 39 25 20 22 15 14 34 20 16 34 32 2 24 13 10 7 29 15 12 29 24 21 2 30 29 40 31 25 11 31 35 38 38 10 8 12 10 31 17 2 34 23 40 28 15 13 7 11 39 21 19 5 7 28 25 8 10 28 19 24 1 38 17 30 22 18 31 22 30 29 25 22 37 8 33 10 5 18 39 37 15 6 7 13 8 17 3 32 4 17 28 32 5 24 37 13 35 26 2 23 21 19 27 16 13 18 31 4 9 9 32 39 10 30 38 5 22 2 2 31 24 9 39 7 33 7 21 17 25 35 24 3 16 15 19 37 11 5 37 21 20 22 26 13 15 10 1 27 10 10 40 40 30 17 36 27 32 14 6 27 38 12 30 10 31 14 3 31 12 29 28 22 32 37 18 2 28 30 5 31 15 1 14 30 20 23 20 16 35 10 7 7 10 34 4 34 16 15 36 25 25 10 8 11 20 9 5 28 14 25 3 4 40 8 24 33 9 8 5 14 8 6 10 20 2 30 14 40 17 13 12 7 2 32 12 24 11 2 7 21 19 11 17 4 36 12 27 15 8 27 34 16 6 15 7 11 25 20 30 33 24 37 31 6 35 21 22 22 6 27 16 27 3 37 4 17 35 24 26 16 4 7 8 7 4 35 22 19 21 21 32 3 37 19 7 18 34 37 4 12 21 13 19 18 10 29 28 6 14 25 4 19 7 39 28 16 10 39 12 12 22 23 23 12 3 19 32 27 2 36 11 19 1 33 17 15 14 16 9 24 7 4 7 12 12 20 24 24 30 5 7 18 32 34 33 13 28 10 30 17 8 30 34 30 16 2 11 36 39 21 35 35 39 20 13 10 37 4 20 16 21 25 26 15 27 9 29 40 9 8 17 1 3 26 8 29 5 18 4 19 24 19 6 6 19 25 23 1 7 13 4 33 2 37 11 24 22 29 6 30 39 1 18 2 40 16 36 35 23 23 30 35 15 32 15 39 33 39 34 5 18 29 20 39 3 5 38 13 13 29 24 25 12 32 10 13 17 10 12 17 27 33 13 3 23 11 3 30 18 40 13 40 8 7 35 4 18 34 34 35 2 11 32 33 19 24 38 15 40 25 19 31 16 3 13 12 13 25 30 21 33 22 20 28 12 3 19 2 23 33 3 26 12 17 20 33 23 40 29 34 13 39 29 3 7 22 26 33 23 8 37 31 20 9 1 18 17 8 34 15 36 37 15 16 30 26 30 20 9 6 23 2 18 38 32 21 19 5 9 14 17 16 5 12 10 25 3 12 9 8 19 21 29 11 17 8 34 22 7 31 26 34 2 40 26 18 21 37 28 38 27 24 29 27 38 22 20 17 7 35 26 11 19 23 27 3 27 6 4 20 25 34 4 16 19 16 14 37 31 11 31 37 27 7 32 37 9 39 38 17 35 37 19 27 7 26 8 29 17 3 3 15 27 37 37 12 6 38 27 22 31 35 25 33 14 28 14 26 34 6 16 4 13 27 22 7 30 25 35 21 7 17 6 8 40 22 24 29 5 14 13 23 14 29 36 12 21 24 4 25 29 16 36 29 39 16 31 38 16 8 2 1 27 35 10 22 18 12 8 17 19 25 36 9 20 40 16 6 28 16 14 7 12 12 29 20 29 29 39 8 21 11 1 13 33 35 8 34 27 7 38 4 11 10 18 24 21 13 27 16 24 3 23 19 21 4 35 7 12 36 34 38 4 32 11 39 20 26 16 7 7 3 23 22 34 31 18 12 14 14 30 31 24 2 24 40 2 39 6 18 7 1 18 12 5 30 3 22 30 36 27 37 19 10 6 38 12 18 7 27 26 20 39 20 40 20 19 15 12 38 20 24 7 22 8 34 35 26 18 40 37 16 28 38 38 40 7 3 3 3 17 36 18 16 24 19 24 21 40 18 6 31 3 8 13 4 5 39 39 39 40 13 32 26 19 11 18 18 13 37 28 3 29 28 27 27 33 39 22 29 27 16 37 6 23 39 10 38 30 15 40 31 25 8 12 40 19 40 10 5 12 20 28 33 40 15 36 37 4 25 13 4 3 36 40 9 15 18 15 21 2 38 32 15 27 10 10 16 9 33 37 5 5 31 10 27 24 1 26 3 7 18 27 23 17 13 34 6 17 29 25 37 24 39 12 2 33 27 24 38 25 38 24 38 37 28 14 18 33 20 19 36 14 22 8 28 12 33 37 11 40 27 18 25 17 37 35 11 38 24 40 7 28 31 37 19 2 6 36 18 19 15 28 29 19 6 21 10 32 29 36 30 29 30 20 33 19 14 30 7 10 9 40 10 22 30 16 5 17 19 12 1 3 2 11 22 24 37 5 27 27 13 19 23 15 18 33 32 4 2 10 14 23 4 22 21 6 1 12 4 5 39 36 8 40 7 23 1 17 1 38 40 24 19 39 17 17 35 38 10 33 33 27 16 4 39 35 32 29 16 32 22 3 31 34 24 24 36 36 35 19 23 37 35 34 11 1 37 10 32 21 13 22 29 33 40 34 38 19 19 23 22 12 39 29 38 3 3 37 30 2 7 29 6 29 22 18 33 22 32 22 21 34 20 29 9 5 16 34 22 18 21 19 14 26 22 37 40 39 17 22 5 32 17 15 6 24 25 8 10 17 18 29 8 24 29 33 33 39 40 39 1 38 8 12 39 8 26 16 29 36 19 19 40 7 10 23 19 21 29 33 21 28 23 29 9 30 20 39 28 21 33 30 19 14 28 24 30 10 28 10 14 36 10 40 40 16 3 17 27 15 8 40 28 7 34 8 30 29 4 5 20 11 39 25 32 37 17 33 20 18 14 18 31 17 23 39 20 4 39 13 36 11 33 39 25 22 2 35 12 23 29 1 29 31 3 10 8 16 36 23 39 17 2 37 24 37 25 28 11 2 20 27 22 15 5 3 21 14 8 6 5 4 3 23 32 22 33 36 24 10 37 16 26 19 4 38 14 40 1 32 25 34 21 35 33 17 27 16 18 16 19 9 3 8 23 19 20 12 25 31 1 10 22 3 33 37 14 13 40 36 18 2 15 17 1 11 16 8 26 9 40 9 35 21 29 22 27 12 4 29 13 30 29 15 4 26 23 9 16 22 7 17 22 28 20 5 27 28 37 9 13 8 15 1 30 37 21 8 29 17 19 15 29 14 35 19 13 4 24 11 31 27 39 19 35 4 27 11 32 25 37 12 17 3 29 27 11 23 37 3 14 2 36 34 29 37 37 34 18 1 30 17 14 19 20 11 36 36 39 6 4 26 19 39 21 36 18 2 38 7 7 2 33 6 13 7 23 11 18 11 15 18 33 3 5 24 14 12 1 26 2 1 4 20 21 39 27 40 37 17 15 30 21 20 18 20 10 32 5 2 35 34 25 2 37 29 12 2 39 23 6 6 16 24 17 4 23 39 21 22 18 14 35 20 7 25 36 7 20 5 38 29 25 8 31 12 25 15 37 20 30 2 27 3 5 25 14 6 19 22 22 24 37 29 1 10 25 27 13 28 19 2 28 22 5 40 2 13 38 9 36 17 5 14 31 35 14 29 18 17 21 7 35 3 36 17 1 9 30 25 8 36 18 2 40 10 7 13 28 2 2 12 4 17 38 1 20 6 27 28 12 4 18 35 9 30 13 18 8 36 32 38 25 2 38 32 28 17 39 9 37 31 37 31 24 6 7 25 36 34 26 7 31 1 3 23 35 7 8 33 26 3 13 37 34 35 2 5 13 35 16 20 19 17 8 26 22 20 23 11 37 40 1 34 29 10 9 29 8 20 7 36 22 40 37 7 39 39 4 2 15 24 29 1 14 11 16 36 38 1 4 8 3 12 6 2 13 38 16 18 19 24 25 8 1 36 29 9 5 40 12 31 35 13 4 10 11 9 6 24 19 31 22 33 24 34 21 19 34 34 36 18 23 35 6 2 34 20 15 39 25 39 3 27 30 34 13 22 34 16 4 31 38 38 16 13 31 1 12 30 12 21 24 29 8 9 32 30 24 37 20 39 19 15 5 18 26 34 6 5 1 15 26 23 20 33 32 38 15 21 23 28 33 13 9 31 30 25 32 31 38 24 9 28 37 31 10 28 9 22 39 15 32 24 35 23 21 18 23 28 21 23 3 9 27 27 16 24 24 40 33 6 34 9 7 26 38 17 37 40 26 31 6 1 2 29 39 9 13 19 8 30 18 38 27 5 19 14 6 13 10 34 29 19 20 10 21 36 31 37 16 22 4 23 30 23 14 6 27 25 2 19 34 6 17 21 13 14 24 6 2 25 23 21 31 4 4 18 35 39 12 38 14 35 21 29 26 31 23 27 23 30 20 33 21 14 5 29 24 29 11 25 10 26 32 38 24 29 3 35 33 8 18 11 8 1 11 7 21 16 33 36 35 39 9 5 13 7 32 14 13 22 30 20 22 4 16 36 36 32 5 5 31 14 8 1 19 16 30 22 26 1 38 11 14 14 40 5 8 40 21 28 35 26 32 2 39 13 29 20 21 39 11 11 38 17 9 28 23 1 12 15 20 11 16 9 11 25 40 36 24 15 16 35 4 38 13 29 9 40 5 18 1 26 29 24 33 1 2 6 16 7 30 17 13 16 18 33 17 2 20 7 7 14 9 35 35 8 30 35 7 1 29 15 19 39 21 6 18 6 2 36 3 5 10 1 13 31 8 18 17 23 8 12 39 22 25 19 24 33 34 10 36 23 23 6 34 20 39 2 10 6 27 4 36 35 32 23 40 5 21 24 6 32 12 32 18 25 6 39 35 6 11 18 8 21 21 3 23 18 19 8 5 11 31 34 2 24 10 7 23 23 26 27 18 35 21 22 12 2 3 35 7 33 4 5 34 38 26 11 14 37 31 22 18 23 18 26 23 16 18 18 38 19 11 21 23 2 31 13 39 21 3 3 32 24 27 32 3 16 2 37 38 17 18 4 9 30 31 17 30 2 37 1 28 23 25 10 40 4 22 10 29 23 18 21 18 23 3 26 27 5 34 24 5 33 33 14 8 2 6 14 25 36 15 34 9 5 12 13 9 16 4 23 7 11 19 22 15 37 29 32 4 7 20 27 17 5 30 18 29 9 32 11 39 9 16 3 38 39 11 19 21 16 37 15 6 39 2 30 5 19 8 3 24 12 8 11 22 13 27 6 31 7 7 20 30 28 34 5 36 16 7 40 2 16 31 4 8 39 28 20 18 32 2 12 15 5 2 31 7 12 6 1 28 7 38 17 30 2 18 35 32 18 39 9 13 18 5 34 3 5 4 30 7 3 37 20 8 13 1 36 16 3 2 31 36 11 31 1 10 11 20 26 11 33 10 36 39 18 5 35 10 16 15 32 12 39 16 21 10 31 34 20 5 28 5 17 32 34 15 38 26 12 36 21 28 20 16 29 18 6 20 18 7 30 13 13 17 33 11 36 36 37 6 13 12 6 23 21 5 7 11 19 30 5 12 27 15 24 3 31 18 20 38 38 16 1 22 34 5 34 22 12 28 23 14 25 12 26 13 25 19 27 34 15 38 12 23 38 32 27 7 14 24 39 1 38 32 25 9 1 31 30 9 7 18 12 24 39 3 28 3 33 40 29 13 14 9 35 32 38 4 14 26 29 21 13 37 28 16 37 10 17 8 25 5 19 29 15 24 35 24 35 24 1 19 8 29 3 19 17 10 30 34 29 11 34 15 31 29 6 19 19 1 14 24 20 30 24 2 29 35 40 14 34 2 2 3 36 23 34 15 33 16 40 14 14 1 8 25 38 33 5 36 9 28 17 11 31 38 15 35 8 15 7 27 16 23 19 5 21 14 3 30 12 26 2 34 11 18 34 20 37 8 8 5 38 22 8 6 17 12 33 26 8 29 30 28 18 2 31 40 27 18 18 38 20 14 17 40 30 1 33 8 15 15 29 39 34 38 17 13 24 12 22 1 15 27 11 25 4 31 39 17 12 20 8 24 6 28 37 34 33 21 38 18 3 31 6 39 34 34 21 2 20 23 8 28 19 25 8 34 40 21 7 16 31 39 26 25 1 21 10 5 12 40 23 30 33 22 18 35 35 22 3 36 35 2 28 11 6 40 21 5 11 33 40 39 28 8 21 15 27 7 4 23 36 16 35 38 32 24 11 21 18 35 5 27 4 30 20 19 2 38 1 2 1 32 15 2 23 1 40 31 2 39 32 22 2 31 13 1 4 16 19 37 34 17 22 15 14 36 7 30 36 30 22 34 35 29 11 8 23 3 1 12 15 17 34 17 36 38 3 5 10 16 40 10 28 36 18 17 21 31 8 4 24 1 19 29 3 40 2 39 33 33 24 39 10 32 35 36 21 38 36 1 31 13 4 20 8 14 37 17 32 20 1 7 5 29 27 35 37 8 1 27 17 31 21 31 16 11 19 13 5 2 16 29 30 7 31 22 40 16 20 38 21 31 21 9 9 23 21 20 1 29 17 11 33 10 34 6 16 1 35 7 39 22 18 24 33 26 7 22 19 17 22 32 17 24 28 14 32 30 21 11 5 40 20 20 21 7 8 15 14 10 12 2 21 28 20 18 38 26 5 39 14 32 16 31 26 11 5 32 22 1 24 39 4 28 3 8 13 13 27 37 32 21 10 9 30 31 39 7 18 7 26 8 36 25 40 33 11 34 37 20 23 3 1 9 30 28 14 6 8 15 36 18 13 33 34 15 26 1 25 36 23 16 15 19 35 32 12 17 39 8 12 5 14 13 40 8 15 16 4 10 21 36 39 38 34 25 6 19 22 39 33 10 27 14 29 38 7 20 40 21 20 33 9 20 36 40 12 28 13 31 21 10 21 26 29 6 23 7 27 34 21 33 18 13 18 36 17 22 8 38 3 38 23 23 6 18 30 13 6 3 7 11 8 26 28 32 34 16 1 28 29 7 35 14 19 5 32 39 11 9 12 37 24 7 20 34 16 27 4 2 22 38 1 24 40 10 6 14 3 31 9 25 36 10 9 30 11 26 23 5 21 40 36 37 29 7 1 7 22 4 26 11 12 2 21 20 39 26 27 4 26 5 9 1 8 10 30 19 16 25 20 13 16 28 31 30 37 38 2 4 30 31 13 27 18 5 30 29 10 18 23 21 24 26 9 23 15 30 11 16 30 18 1 38 32 32 13 16 2 29 1 30 34 28 36 6 22 5 38 37 24 8 18 26 39 4 26 6 25 32 24 4 13 30 22 18 39 37 5 11 3 36 17 31 32 4 39 20 11 26 13 40 14 3 40 9 20 3 13 17 8 27 5 40 17 30 27 26 23 3 33 17 13 32 19 3 2 28 20 36 4 19 37 20 28 16 16 23 29 1 9 9 20 5 1 35 25 26 34 34 30 35 24 12 9 25 35 9 20 9 1 31 38 1 24 30 7 36 3 7 15 35 10 26 20 37 34 28 8 10 2 5 19 36 25 2 29 8 21 13 11 28 17 7 40 40 38 1 20 38 33 39 26 15 20 40 9 7 8 18 33 33 16 30 38 13 29 26 10 18 32 27 15 31 33 27 40 36 19 12 4 35 15 16 20 36 13 12 28 39 9 3 38 21 27 17 24 3 25 36 11 16 3 16 7 33 36 37 14 27 16 34 23 21 1 30 1 17 11 7 5 34 18 4 29 27 40 40 37 22 30 6 2 32 12 35 27 36 4 32 20 4 34 29 10 20 37 29 1 21 31 39 11 3 16 3 14 3 29 29 36 13 36 28 13 20 15 33 2 32 30 6 29 19 16 6 23 30 38 20 25 40 21 2 24 12 17 29 34 20 5 25 30 39 26 32 26 20 12 10 30 16 8 40 10 40 9 31 1 19 25 38 5 25 9 12 18 30 29 21 19 20 26 34 8 12 32 24 13 38 33 7 30 24 6 32 19 29 26 38 17 7 13 16 40 31 4 4 21 24 36 7 39 8 9 8 38 12 34 39 32 27 4 17 9 5 7 7 37 29 14 30 36 40 5 15 27 20 20 8 20 26 20 25 21 3 11 31 39 37 31 22 2 30 38 27 17 4 12 19 8 20 12 36 26 10 5 5 15 4 26 21 26 29 8 25 39 1 33 12 18 1 18 21 16 12 12 6 33 13 6 13 34 19 3 12 7 34 32 35 7 8 27 32 8 15 10 33 30 4 15 39 37 11 5 32 36 6 8 37 9 29 9 10 26 12 15 20 14 17 18 13 39 8 6 23 19 37 4 26 32 16 1 39 34 38 11 36 28 37 31 15 3 36 40 15 28 15 14 32 31 15 4 13 36 15 1 4 21 1 36 2 31 21 20 18 39 31 22 6 6 11 31 25 23 17 32 13 39 25 16 38 10 17 11 34 25 4 8 28 9 11 21 16 3 20 35 28 38 15 1 27 39 28 9 25 1 14 18 22 15 31 33 1 31 35 26 30 19 32 37 29 23 21 39 3 13 5 39 27 34 31 2 7 10 5 40 15 6 27 38 28 40 36 8 17 12 33 40 16 12 23 10 36 26 8 12 29 14 25 25 30 18 16 22 40 11 27 38 9 25 5 21 7 31 25 34 1 21 36 1 9 4 18 23 16 25 10 12 27 30 23 28 14 18 27 25 25 1 15 32 20 22 24 25 35 19 39 16 8 2 35 34 26 32 32 22 5 35 29 35 27 9 7 17 7 37 31 37 21 1 24 18 4 7 36 36 1 2 9 6 31 12 37 32 30 15 11 15 37 24 14 13 29 25 8 2 13 36 1 29 8 27 28 17 17 17 27 34 33 1 8 14 17 4 5 1 13 18 4 13 17 34 17 6 8 39 15 38 34 16 23 5 2 24 32 38 20 9 40 34 26 5 4 28 5 26 32 4 6 34 36 29 20 23 22 11 40 24 36 36 32 23 14 14 37 37 34 12 2 30 12 24 18 26 25 1 5 8 11 22 18 14 2 27 32 20 26 9 13 17 30 19 31 28 5 36 37 12 36 13 1 30 13 18 23 29 13 5 9 17 15 10 38 15 8 3 26 18 8 17 8 15 35 2 31 11 20 37 26 12 15 5 23 1 7 39 11 3 40 20 32 1 22 30 37 17 13 8 3 25 8 20 16 28 23 22 3 27 38 40 37 16 26 12 36 32 23 12 35 25 15 32 24 28 4 23 4 20 13 38 7 36 26 26 19 21 10 1 30 18 10 22 22 36 30 33 12 30 4 15 30 17 31 30 38 20 14 1 20 25 27 18 13 11 5 8 11 20 22 40 31 15 17 5 11 11 13 29 37 27 9 29 21 15 33 24 13 10 6 33 5 6 37 40 3 14 25 35 24 3 29 40 3 26 8 30 37 12 10 30 27 24 17 21 37 11 28 12 13 17 39 30 5 39 10 31 32 38 19 22 14 10 6 19 5 27 7 12 38 10 28 24 2 25 32 21 22 7 24 24 27 15 19 4 37 6 35 7 7 24 28 6 27 25 36 10 15 33 40 5 18 33 30 10 31 26 35 1 9 10 24 21 31 3 6 12 2 21 2 19 2 33 6 19 15 21 2 19 27 9 33 15 11 13 40 29 36 4 21 1 33 22 23 18 35 26 37 32 3 9 9 20 6 40 21 33 30 33 21 38 7 10 39 15 13 22 22 30 22 27 1 1 15 5 7 29 35 39 13 22 7 2 39 19 2 12 29 14 37 31 18 22 9 34 15 5 37 10 15 17 4 7 40 8 29 18 2 2 33 31 14 26 36 15 34 5 22 37 26 28 16 17 5 38 20 34 30 15 19 1 37 23 29 4 22 30 36 25 36 13 40 10 22 24 14 3 10 22 15 9 16 38 17 27 40 13 10 11 35 37 1 33 32 10 36 2 35 30 36 29 18 38 35 3 15 30 31 11 19 1 21 23 13 31 34 11 39 3 12 40 29 4 29 24 31 10 6 2 4 34 11 4 36 8 30 40 17 8 12 2 6 21 30 18 17 21 22 23 19 39 14 8 25 26 20 9 1 39 11 2 29 33 25 40 28 25 38 23 6 3 38 13 12 23 24 4 36 10 2 34 4 29 30 16 38 7 24 29 20 22 15 24 23 33 35 2 35 8 37 31 24 12 25 24 21 5 24 4 13 40 12 21 12 18 15 39 5 36 25 20 17 23 24 35 35 32 30 32 26 8 36 19 24 5 8 17 13 12 31 4 6 28 31 19 15 36 8 24 28 38 24 26 15 30 9 27 5 17 35 28 2 36 20 24 25 19 22 34 33 5 23 30 8 13 33 11 26 34 11 16 28 15 12 14 21 34 29 10 21 3 13 13 18 13 13 17 3 34 7 4 37 33 10 14 39 1 3 12 31 34 38 8 36 17 8 2 38 2 38 17 9 11 34 8 9 9 7 23 14 7 32 25 36 20 9 23 39 38 22 3 35 10 14 38 4 12 4 20 9 31 12 40 25 23 8 22 5 40 17 37 25 18 5 36 30 25 40 23 10 16 39 1 29 18 6 14 29 5 23 31 22 3 2 40 33 3 17 37 16 31 7 28 1 6 18 4 15 21 15 29 40 36 37 12 29 14 29 39 36 32 29 27 27 12 30 31 19 39 21 21 8 12 5 29 4 3 31 31 6 7 1 3 21 23 19 27 10 31 24 35 27 24 18 6 30 23 6 12 17 14 17 34 11 33 17 27 13 15 27 1 16 35 31 35 18 7 19 27 34 26 21 35 20 10 25 3 26 27 36 34 26 16 16 39 6 21 33 36 5 16 15 26 36 1 10 6 23 11 15 19 39 18 38 35 14 37 38 18 18 33 12 30 16 16 9 9 28 26 33 18 10 36 2 12 19 15 23 20 13 19 6 22 15 28 40 19 19 20 15 39 31 35 23 40 17 11 16 11 34 12 39 18 12 12 1 29 15 5 34 36 4 7 31 27 16 27 6 17 8 4 30 8 23 11 6 9 33 4 23 23 27 29 5 35 8 40 35 21 21 12 19 32 13 19 8 36 25 5 14 12 15 36 29 16 36 28 39 10 27 21 1 27 33 35 26 40 6 9 25 40 27 36 37 7 25 11 39 30 35 21 20 26 8 20 25 32 32 26 18 1 38 4 27 2 21 14 22 21 18 18 24 2 17 34 5 37 23 12 23 28 13 17 23 40 26 22 23 17 12 18 2 1 38 9 27 40 22 19 23 21 39 38 2 24 3 29 40 38 1 9 29 30 39 26 24 13 6 10 22 15 13 16 8 33 27 21 3 22 10 5 3 23 9 11 37 26 20 29 7 3 1 14 23 40 20 15 15 26 25 37 26 19 7 26 11 40 23 24 6 21 29 39 30 23 20 24 35 12 3 33 21 27 35 24 15 16 39 25 2 4 21 9 6 21 17 15 14 7 21 30 22 3 31 3 1 32 23 32 31 18 10 38 32 26 28 30 34 21 8 27 14 12 4 36 33 17 27 36 10 21 16 28 21 26 4 32 19 30 10 25 24 26 32 8 5 32 38 10 29 25 33 35 17 22 2 15 19 36 8 37 20 18 24 29 8 2 34 38 8 30 29 18 10 27 6 11 10 9 34 16 39 21 14 27 31 20 8 29 22 20 38 19 7 40 23 17 27 20 31 8 34 27 8 31 31 39 28 32 25 28 12 13 1 8 22 33 37 40 5 7 13 36 32 24 35 20 33 7 29 27 40 39 17 34 12 2 23 3 15 17 39 3 3 23 3 1 28 14 8 27 16 21 15 30 15 37 21 28 29 25 28 15 10 28 3 30 32 2 18 9 1 35 14 7 22 30 37 9 19 25 6 34 30 40 40 34 23 14 9 4 9 24 6 18 15 30 15 24 12 32 12 2 27 25 33 8 19 35 34 25 20 17 21 18 35 2 17 31 4 28 5 5 6 22 20 23 30 31 10 34 4 3 35 21 12 12 26 38 38 2 29 24 39 21 1 17 12 34 38 4 35 13 17 5 4 38 18 32 23 22 14 2 21 30 37 11 4 32 30 18 23 24 28 36 8 31 6 38 40 31 20 24 9 17 35 28 23 24 28 7 23 3 14 8 5 17 15 40 24 36 4 35 40 11 6 9 26 4 15 20 15 20 22 12 13 14 27 30 31 34 15 25 36 19 4 2 26 35 16 26 33 5 29 16 28 10 19 24 23 21 1 31 40 20 20 26 35 14 9 36 10 22 5 20 37 19 20 18 40 17 21 6 27 10 24 32 3 7 33 36 15 30 29 6 31 5 15 32 8 6 40 19 10 9 18 30 4 35 13 4 20 21 13 9 12 11 26 10 23 2 14 4 28 40 37 6 5 33 25 40 24 12 25 12 31 6 36 8 1 36 18 40 18 39 9 27 32 13 15 8 35 1 17 18 29 14 38 33 2 6 25 12 11 3 6 16 22 17 18 35 20 8 30 23 19 21 7 24 27 27 5 14 7 16 38 18 28 3 27 8 33 17 37 22 24 30 10 22 25 23 13 40 37 4 26 2 9 38 27 9 18 24 14 10 12 23 9 14 16 4 30 23 28 1 12 13 38 11 9 33 7 38 17 6 38 4 23 17 39 26 5 10 27 30 37 26 40 15 27 32 34 27 1 40 34 15 17 13 18 3 5 20 24 29 18 31 19 14 19 34 40 22 3 32 9 9 20 21 5 7 37 11 24 5 25 36 17 17 32 21 9 16 8 6 38 39 3 17 27 33 10 37 6 10 29 19 2 7 29 34 11 29 20 4 6 39 5 7 30 19 3 25 26 16 5 11 32 39 32 22 19 35 34 38 37 2 7 10 11 37 7 3 13 37 21 6 40 25 29 19 28 6 32 39 29 37 9 17 10 14 34 12 14 16 27 28 35 32 21 2 33 25 19 13 27 14 10 19 4 19 30 10 39 20 3 40 30 5 1 30 3 24 17 38 3 28 12 27 22 39 24 26 2 7 24 32 10 40 1 1 1 40 16 9 7 34 5 38 24 12 14 24 29 10 3 34 12 28 11 27 38 4 5 3 40 1 22 16 39 37 4 8 17 2 29 2 3 29 19 5 1 29 36 40 5 35 14 3 5 3 32 1 37 6 1 3 39 7 1 30 36 16 40 17 20 11 25 31 23 7 2 13 2 11 36 38 16 27 23 21 37 10 27 37 26 27 35 25 3 21 9 22 16 34 22 36 17 22 8 1 21 9 6 21 4 9 2 13 29 38 21 8 31 3 18 24 8 19 21 6 12 24 18 30 21 21 15 38 36 18 29 9 18 2 29 33 20 19 38 25 12 35 24 18 17 19 24 5 21 25 29 36 36 17 38 24 8 29 27 29 22 10 29 40 24 19 35 27 20 14 37 9 34 29 6 2 6 3 11 17 31 34 22 30 34 26 2 7 29 15 36 6 26 12 15 15 36 20 13 9 20 13 37 26 27 33 37 24 12 12 27 4 37 8 4 35 7 13 14 8 40 39 30 38 35 22 13 33 33 18 29 39 1 20 23 37 34 17 29 38 4 39 6 18 38 8 16 10 24 36 14 18 14 34 24 31 4 38 3 6 18 20 28 3 29 38 22 20 19 18 27 24 5 29 34 2 37 30 14 33 24 17 30 3 19 24 15 32 2 14 25 25 25 35 29 24 30 29 8 2 19 33 11 38 20 27 24 37 38 29 30 28 39 27 6 1 24 12 30 4 38 13 6 29 16 21 26 17 8 34 20 6 8 35 26 29 12 14 33 7 4 11 19 30 34 23 2 3 1 38 38 6 25 4 7 8 35 21 12 13 8 8 7 39 5 33 36 1 22 1 11 14 40 27 3 33 3 28 5 26 40 22 7 18 37 40 8 5 35 11 16 20 29 2 20 15 12 14 20 36 10 15 4 33 19 9 4 35 14 18 2 40 1 27 31 9 30 17 8 12 35 28 5 5 22 13 36 34 25 40 17 21 20 23 20 15 31 8 33 39 8 32 26 32 18 39 2 6 31 10 7 8 7 21 4 2 29 21 4 2 15 36 4 6 35 10 28 20 2 29 28 38 35 3 9 38 21 25 38 4 18 1 12 28 6 36 35 14 18 40 36 4 30 17 9 27 34 39 39 20 26 29 22 15 35 22 10 29 33 7 26 5 17 29 15 1 29 32 20 37 22 29 38 9 7 36 31 16 9 25 38 7 12 38 13 22 19 28 32 13 33 12 35 38 13 36 29 25 40 10 4 38 10 22 14 11 4 39 8 10 35 39 36 30 11 23 22 32 9 33 37 38 33 11 27 33 4 11 14 3 13 14 30 7 14 33 37 25 16 5 38 8 2 1 26 25 24 24 29 24 36 3 38 18 3 23 33 37 30 28 3 38 25 37 1 23 9 4 34 37 33 39 11 15 28 7 15 35 26 8 14 4 26 21 22 21 26 29 29 3 30 23 33 30 22 6 17 12 34 12 38 22 34 12 23 8 10 2 4 27 9 40 8 33 11 1 25 30 15 21 25 34 13 8 2 22 2 21 10 34 18 13 20 16 21 32 26 16 23 36 10 9 24 21 25 7 5 12 7 23 36 34 21 14 26 9 1 20 24 34 31 30 7 21 31 27 8 22 29 10 23 29 5 11 29 21 4 22 30 32 20 31 25 9 20 24 38 30 27 8 16 37 26 32 33 16 11 34 2 25 30 34 35 25 6 12 39 22 1 17 10 12 10 37 27 21 26 26 7 40 10 3 18 15 20 1 15 27 22 32 19 26 8 2 23 33 32 22 34 24 10 5 18 27 31 34 19 2 24 17 6 36 18 37 10 35 9 6 39 9 15 16 23 17 32 11 21 4 29 27 28 37 36 19 3 14 15 27 23 16 1 24 37 23 38 36 26 37 11 8 33 9 12 21 2 39 19 28 9 7 11 24 33 1 14 20 25 38 26 12 3 22 16 6 9 28 24 33 18 32 4 13 21 5 16 7 37 25 4 32 17 26 38 29 17 2 13 4 23 25 17 28 32 33 1 7 23 26 8 35 10 18 11 23 6 31 15 6 12 23 27 3 29 7 31 34 12 35 21 18 11 38 9 28 21 33 2 20 15 36 10 28 2 39 4 9 17 39 4 22 5 37 9 2 27 28 4 5 27 29 14 32 8 25 3 28 19 36 36 40 13 34 18 35 34 3 5 20 30 14 2 17 22 25 36 29 6 25 8 40 27 32 25 30 24 9 30 38 4 26 36 37 3 6 30 14 25 28 34 25 6 19 8 32 27 15 5 11 26 35 19 30 20 25 31 26 28 17 6 39 3 23 18 24 17 34 13 36 29 7 37 16 11 20 7 5 26 2 28 37 22 40 24 12 38 25 30 10 5 32 3 23 20 29 19 27 16 27 21 24 19 21 28 32 3 15 32 3 8 32 19 31 1 27 29 35 11 7 34 12 3 28 35 34 27 29 14 11 1 11 8 7 17 22 16 4 16 21 12 32 21 34 2 3 7 36 15 25 37 24 27 5 14 27 33 1 16 3 7 27 9 33 40 4 32 22 7 23 1 6 7 32 16 11 16 27 31 4 10 23 15 18 29 17 9 11 26 14 21 8 12 6 23 31 28 10 31 3 37 32 33 38 23 2 6 1 36 33 11 40 3 15 18 40 5 4 38 10 21 28 12 6 19 39 34 15 38 32 14 25 6 4 25 32 15 30 39 19 21 6 1 14 12 28 26 38 10 18 17 14 12 31 22 30 30 25 37 36 38 24 15 18 10 39 7 27 40 29 39 26 5 8 3 15 11 13 2 10 2 11 10 20 6 36 19 21 33 37 32 3 8 24 28 21 40 37 29 20 10 24 10 2 27 5 2 18 24 10 15 37 25 37 10 33 32 24 22 39 31 4 40 29 5 24 1 6 12 6 6 31 33 5 39 2 31 28 3 11 9 8 20 12 38 10 11 16 25 2 18 38 31 10 6 32 4 1 1 3 28 18 7 14 17 22 25 23 27 10 10 34 40 23 15 15 25 12 19 38 39 22 7 21 14 25 25 28 13 5 19 38 3 23 21 12 30 34 2 19 6 40 32 5 17 29 37 25 31 30 3 6 5 25 4 37 15 7 14 25 11 6 26 9 25 22 23 32 39 30 36 36 36 24 16 11 37 37 3 1 12 14 38 12 35 25 9 9 27 6 1 35 32 38 23 17 7 33 37 13 4 38 39 33 22 21 29 27 40 37 38 20 21 10 15 35 28 3 15 28 30 20 29 4 10 30 11 24 35 17 30 30 2 4 4 11 21 16 32 9 10 39 32 11 25 29 17 18 18 10 6 37 12 11 21 10 20 20 36 14 35 25 13 11 22 27 20 17 10 6 16 13 28 2 30 17 24 15 36 17 25 11 15 14 16 2 32 30 21 8 31 8 5 34 19 3 17 20 20 31 19 17 14 1 7 22 21 40 33 32 15 12 35 19 31 18 29 25 9 13 2 19 24 32 27 26 18 6 27 40 7 2 28 3 23 21 23 1 21 3 29 37 32 18 23 38 34 32 12 40 4 16 6 23 5 40 13 11 29 21 18 4 18 18 24 24 33 29 36 4 37 15 28 36 4 36 11 35 18 18 10 11 14 3 17 16 25 9 28 4 33 16 7 26 36 35 6 24 13 27 16 29 5 19 11 31 25 36 38 1 14 2 5 5 2 37 40 3 33 38 23 20 24 40 32 29 39 11 27 40 29 33 29 32 5 15 22 16 6 29 33 23 28 34 5 4 21 22 19 12 19 33 21 12 17 19 22 9 3 18 39 32 31 34 1 7 40 15 4 28 2 16 27 19 36 23 30 12 10 26 28 20 12 10 31 21 14 3 32 16 32 25 28 21 18 38 29 12 11 1 6 31 21 35 5 17 39 34 10 12 34 10 5 19 33 12 21 18 12 3 20 11 7 4 35 14 26 12 11 19 28 6 28 4 37 7 23 15 3 6 23 38 33 8 6 5 22 23 15 36 12 16 20 35 26 7 28 34 2 31 4 36 23 2 18 35 28 24 12 10 5 26 16 23 20 26 26 33 35 16 32 8 2 38 5 15 34 24 5 16 19 39 16 7 38 15 8 34 33 16 29 5 22 33 35 6 39 7 28 22 34 6 13 18 38 26 25 7 18 4 14 30 26 20 14 20 34 30 30 20 13 9 3 15 15 25 38 31 1 38 21 5 36 11 40 39 11 5 36 37 37 9 9 12 22 37 17 1 14 33 29 39 18 5 38 2 6 23 7 21 17 25 19 27 16 5 32 19 34 5 11 28 3 24 20 14 36 32 1 21 19 19 34 11 30 27 25 27 3 22 18 17 31 18 19 5 5 21 22 33 37 1 21 26 15 29 37 38 24 10 11 11 30 20 31 18 14 32 36 37 4 35 33 39 18 34 34 32 10 40 16 24 37 22 40 21 36 1 15 25 2 31 35 33 8 27 9 3 23 24 11 8 24 16 39 24 34 25 10 6 16 14 16 2 7 20 40 6 24 26 10 21 20 27 37 16 13 1 34 1 23 18 15 24 16 39 17 13 10 27 6 34 36 17 28 21 33 10 30 39 34 15 27 11 39 8 12 2 28 12 22 24 32 26 22 19 27 14 40 5 21 15 35 15 1 30 39 17 9 12 27 6 19 2 32 34 5 35 25 4 17 35 3 30 34 18 25 3 3 11 37 35 1 38 8 31 34 8 30 40 2 24 33 9 27 37 12 24 10 37 24 8 23 2 9 26 26 32 13 6 33 35 11 14 40 22 16 39 32 5 39 22 28 3 11 13 13 8 39 39 7 28 19 8 8 29 23 16 34 31 35 36 9 27 6 13 8 13 5 39 18 2 30 20 12 19 25 36 2 30 2 39 23 4 38 37 3 3 25 40 33 4 4 13 2 12 9 1 9 6 6 8 13 29 19 28 24 10 38 39 11 5 18 28 22 15 12 21 39 19 4 31 20 36 4 9 29 40 10 13 27 31 31 21 34 26 30 31 24 39 15 23 10 17 14 9 39 7 23 27 9 28 29 20 33 36 32 1 19 18 31 22 34 28 6 39 13 14 9 9 38 33 15 16 10 38 1 14 14 19 7 16 1 16 20 35 37 5 14 18 6 12 35 14 7 38 36 17 21 40 33 7 4 10 35 19 1 39 4 18 5 2 27 1 40 40 7 1 2 12 23 18 31 4 4 5 1 33 39 37 27 22 28 27 30 35 6 35 18 8 19 1 1 2 28 23 14 25 26 13 7 17 3 1 6 2 6 21 7 37 17 11 38 29 8 27 23 7 11 37 11 14 27 22 4 18 12 22 26 25 33 25 8 22 19 28 26 26 36 27 17 3 31 32 4 13 25 24 40 33 12 5 13 35 32 10 23 32 22 13 26 33 40 34 11 3 1 18 39 24 15 36 21 8 32 38 30 16 1 18 32 35 7 10 14 3 6 13 6 28 15 1 24 20 39 26 14 18 36 32 19 29 32 28 3 17 34 23 12 32 25 26 40 21 26 12 38 8 34 10 33 34 9 21 4 1 26 9 18 34 37 31 7 16 19 24 31 17 9 10 3 13 35 25 7 32 15 13 5 36 10 33 26 7 22 28 40 21 33 18 7 39 9 3 2 9 32 23 33 24 31 24 8 35 15 25 40 8 20 20 17 12 16 35 12 34 15 20 12 16 24 3 14 31 19 40 8 37 40 11 7 17 38 2 38 15 11 27 14 37 16 28 38 15 28 18 40 13 32 40 12 18 29 36 25 32 9 28 3 26 18 25 39 1 20 18 35 21 28 8 19 30 27 24 33 35 29 29 1 13 10 4 21 10 12 27 15 28 27 21 30 24 22 22 21 22 32 4 36 27 31 36 15 34 18 28 13 28 29 12 24 22 30 5 15 35 23 22 12 15 34 25 37 29 17 27 14 23 4 5 9 2 15 17 32 14 31 22 17 9 29 15 13 31 6 38 32 8 40 5 12 15 20 8 17 37 6 12 26 15 36 25 11 20 31 13 18 11 23 23 3 31 40 6 14 27 34 16 37 13 29 8 13 12 9 11 12 32 20 32 11 39 31 4 12 21 28 30 34 28 23 14 36 38 33 37 33 26 33 29 30 30 34 35 33 10 24 3 22 27 35 35 12 20 26 25 3 4 14 9 39 32 1 30 38 5 2 5 38 32 9 36 36 14 12 10 29 23 5 34 11 13 31 34 39 40 21 23 25 10 26 18 8 19 39 35 17 8 3 15 36 34 29 36 21 4 21 2 29 37 40 16 26 5 10 10 14 2 10 38 32 21 11 13 17 38 4 38 14 33 22 12 17 7 29 6 6 23 23 2 5 8 32 18 14 20 34 34 24 15 29 30 27 18 25 31 39 6 21 18 30 30 2 28 16 19 13 13 7 25 35 28 8 17 32 37 3 35 37 31 21 30 24 28 30 3 24 11 3 35 10 33 39 18 33 34 8 3 31 21 15 12 8 2 36 26 16 28 34 11 18 32 7 31 21 3 1 20 37 13 15 19 31 30 4 30 1 4 36 38 14 24 20 20 28 11 2 22 37 6 1 32 9 23 10 31 13 39 34 10 15 24 25 12 34 12 30 12 20 27 36 21 33 23 17 31 40 26 6 34 27 17 19 27 26 4 12 6 16 27 22 1 5 17 17 10 21 8 39 4 5 22 19 11 1 4 9 3 7 4 5 27 22 5 17 22 14 25 36 30 11 14 12 21 19 33 29 5 6 23 17 19 11 29 31 31 23 16 40 39 31 37 37 3 37 7 38 16 20 34 5 36 8 21 15 3 36 15 39 1 24 40 23 29 12 3 39 39 3 21 2 15 24 26 5 38 32 22 22 17 20 7 40 2 38 18 29 6 25 14 17 27 4 37 29 4 35 14 10 19 12 28 11 31 10 10 11 23 25 29 11 36 32 6 35 25 27 19 18 28 7 26 7 31 6 9 4 27 3 19 7 23 25 19 33 39 40 38 34 17 36 12 31 15 36 10 10 21 11 10 3 33 36 23 22 10 1 36 5 10 28 12 30 6 6 14 22 36 4 29 18 15 18 25 7 20 39 3 24 34 17 38 27 25 15 36 21 38 34 21 3 37 33 18 37 11 14 21 25 23 25 17 24 34 2 3 4 22 2 37 35 18 39 1 21 40 9 3 11 2 34 30 8 29 6 36 25 30 16 15 33 16 39 18 5 6 5 24 18 17 10 18 29 1 19 14 31 9 29 19 19 15 28 31 1 37 16 11 16 1 36 6 19 16 18 14 21 20 14 29 26 19 14 33 20 23 34 17 22 23 26 1 30 38 40 12 9 28 25 38 38 28 12 4 37 9 27 39 10 4 5 25 4 18 19 30 11 19 14 38 15 11 4 10 6 2 40 22 32 6 19 26 10 22 10 22 25 38 9 32 21 1 34 33 7 9 17 36 24 10 20 40 29 33 11 40 35 40 11 4 5 39 32 32 32 29 35 17 33 18 4 20 21 5 37 40 33 30 33 28 19 28 4 20 29 6 9 35 19 14 13 3 19 24 28 8 26 23 5 2 38 4 13 28 35 28 3 37 14 22 39 28 25 34 10 18 33 35 34 27 8 25 3 6 21 29 15 6 33 26 8 14 12 27 3 32 19 7 32 15 20 12 31 39 28 11 35 37 4 32 8 22 4 27 34 18 32 40 8 18 40 36 27 1 14 14 10 38 32 5 23 30 4 26 31 32 4 26 8 37 32 35 30 23 37 2 25 4 10 40 16 35 15 24 39 12 10 40 15 1 30 28 12 39 32 21 35 37 21 28 33 25 1 25 20 37 40 31 39 5 25 36 18 7 25 19 7 7 18 27 19 5 3 31 18 28 19 18 19 11 4 9 23 20 36 4 39 2 2 12 6 13 5 3 28 10 38 39 26 40 33 39 19 36 38 25 33 2 18 11 25 32 24 7 7 22 27 7 6 7 27 31 29 20 5 25 36 5 24 27 27 30 1 10 36 21 39 27 20 4 22 37 31 27 9 8 16 24 35 38 3 2 18 17 8 5 15 33 37 21 15 17 40 38 35 28 27 11 31 32 34 38 33 25 37 21 18 8 38 34 29 33 5 17 11 11 39 7 20 7 22 24 18 21 28 2 38 18 1 15 19 7 27 24 28 22 28 8 33 2 32 14 34 10 18 24 25 35 22 27 4 32 16 35 14 2 3 8 24 14 17 37 22 29 18 40 1 19 12 17 27 25 29 16 35 34 6 6 25 14 29 40 31 7 25 22 23 19 30 32 34 16 7 2 31 19 15 23 3 26 6 5 40 8 15 20 11 23 38 16 35 40 17 36 38 26 26 17 39 9 3 5 8 19 36 37 25 7 7 18 11 12 21 18 35 6 24 36 34 13 16 22 10 26 16 33 34 26 25 33 11 5 30 22 24 30 16 14 5 4 6 11 35 4 32 13 12 16 21 17 38 2 20 12 32 22 10 40 36 12 32 18 32 23 37 33 7 37 39 24 22 34 35 5 26 1 16 21 15 23 28 28 5 24 7 4 25 10 35 1 32 37 31 23 12 26 14 3 40 12 39 11 34 21 7 34 27 26 8 27 34 2 17 31 17 39 3 9 31 4 35 35 31 5 33 28 15 19 29 17 16 13 24 1 10 24 22 7 19 26 32 31 7 18 35 1 2 2 17 29 36 40 13 17 8 24 24 31 10 13 7 15 23 10 36 14 10 32 19 35 34 26 29 38 15 11 22 32 35 15 20 24 27 32 32 34 12 10 35 8 19 9 22 11 6 9 19 40 6 35 10 11 32 14 14 16 30 21 12 1 40 24 8 2 29 35 26 4 13 34 14 39 5 32 19 32 27 26 13 15 29 6 38 11 35 39 8 40 39 23 23 40 23 35 18 36 33 32 14 31 38 10 34 1 9 2 17 38 9 5 27 5 23 1 1 30 2 30 40 24 40 4 2 22 17 36 39 31 8 30 35 4 3 6 33 27 33 25 24 5 2 4 21 2 35 39 23 23 1 17 1 11 19 8 24 5 7 13 36 25 18 37 35 16 33 16 26 4 9 2 9 38 16 37 31 1 29 27 23 28 33 32 5 3 31 18 21 38 38 35 13 14 35 29 28 27 18 38 28 34 28 35 8 10 16 18 9 26 10 11 24 19 24 39 13 8 18 7 24 18 38 24 27 3 29 10 24 33 10 9 34 38 30 27 36 36 32 7 4 19 18 26 3 34 5 29 2 33 39 30 12 33 23 23 24 26 3 29 32 40 29 9 33 26 8 34 8 8 24 33 12 18 32 12 35 9 2 29 40 27 10 30 2 12 38 5 35 33 8 13 23 31 11 30 21 10 35 16 15 13 19 40 18 5 4 28 22 11 1 25 36 19 4 22 1 11 40 32 38 37 38 29 40 11 20 12 40 10 29 19 14 16 21 8 16 15 30 12 12 2 12 21 29 8 24 1 5 35 34 30 14 3 19 28 20 28 33 26 38 35 35 23 20 5 31 24 34 32 9 15 11 40 1 1 29 22 3 4 5 18 39 18 2 40 5 12 1 28 30 6 33 1 31 27 28 33 21 23 7 17 18 1 40 7 22 24 36 21 27 39 38 11 8 18 21 13 26 35 8 6 16 10 23 33 25 34 24 20 37 28 16 40 14 14 18 24 31 3 11 26 17 16 13 32 39 30 19 8 22 32 29 15 1 19 10 21 10 35 32 38 21 12 1 37 20 31 34 30 12 30 32 11 14 4 16 10 38 8 24 40 21 14 34 39 11 26 4 7 32 7 34 27 32 10 40 20 37 22 31 35 4 17 27 8 40 16 31 8 28 17 11 12 22 2 31 28 31 7 30 40 2 39 1 7 29 33 11 14 38 34 32 11 19 24 8 34 12 18 30 2 8 4 23 39 12 22 17 38 7 5 35 27 15 26 16 27 37 32 31 38 38 4 26 23 40 38 18 24 25 5 37 10 23 31 28 19 33 13 29 24 18 9 7 29 5 36 40 13 22 34 6 6 27 21 1 40 27 10 34 25 24 17 23 31 12 6 3 30 28 12 35 4 6 27 17 27 9 16 6 5 28 7 18 38 31 25 1 35 5 19 3 27 13 34 13 21 32 10 11 37 5 38 22 9 15 32 35 19 28 40 22 10 27 12 31 39 13 18 34 10 31 39 36 4 3 7 31 38 8 32 40 14 34 25 29 12 28 18 35 34 33 22 3 15 17 8 25 11 7 12 2 10 19 5 9 24 22 22 38 20 40 16 40 6 35 28 30 39 35 30 12 6 37 30 10 18 31 3 20 30 20 6 19 8 36 35 19 22 20 17 14 13 26 6 18 2 22 40 36 8 15 19 5 16 28 22 19 27 30 22 7 40 37 38 35 23 14 26 30 22 14 12 29 18 34 27 22 30 30 13 36 4 12 32 21 28 21 25 16 14 9 8 21 22 18 4 37 13 10 15 25 28 39 9 7 35 13 28 8 38 9 2 10 15 13 6 40 14 22 39 37 30 2 40 8 17 10 20 33 31 5 23 23 10 40 25 15 34 10 13 24 11 32 9 2 8 9 17 10 5 11 25 37 30 38 36 8 23 40 25 38 11 22 5 33 17 17 20 11 6 14 30 21 22 1 19 16 8 34 9 17 19 12 24 32 38 14 27 36 20 19 35 15 17 15 26 21 1 10 13 10 12 36 29 17 35 32 40 11 38 28 31 35 11 24 33 17 40 18 35 28 23 39 22 2 28 26 10 34 31 28 32 35 11 30 15 29 37 12 16 5 12 17 36 1 35 22 29 36 25 34 14 22 13 7 31 10 22 8 15 14 12 10 14 21 22 6 28 26 33 8 4 15 20 24 11 10 17 33 21 7 24 30 23 13 14 35 10 27 12 20 10 38 8 40 2 20 34 23 19 5 34 21 16 21 9 8 37 30 22 5 13 38 31 35 1 36 18 23 21 21 26 38 21 35 28 21 11 36 13 34 33 24 26 25 11 37 15 37 3 9 5 37 6 26 29 20 1 25 24 10 15 38 31 4 18 29 32 32 35 25 34 2 11 36 14 23 23 33 32 11 24 17 4 1 1 36 33 33 33 13 32 15 2 16 17 8 39 11 10 33 37 26 5 39 24 36 31 22 40 8 30 27 35 40 29 34 36 19 24 4 27 14 31 27 12 17 26 13 29 5 31 10 8 38 4 35 10 19 39 17 38 8 11 24 28 20 39 18 33 30 31 26 10 28 17 31 18 7 36 40 15 29 38 19 31 30 28 38 27 3 28 14 21 17 30 11 30 33 11 37 10 38 24 25 1 11 23 2 12 15 30 25 2 3 31 3 39 2 16 25 33 38 18 18 32 10 29 1 33 30 13 29 10 23 35 12 30 5 13 19 31 24 15 37 29 26 27 39 32 1 26 35 19 20 11 19 8 21 38 24 16 37 12 37 38 15 40 18 26 35 7 30 5 8 25 1 33 15 3 37 21 40 36 9 18 26 25 18 15 37 21 38 39 27 18 33 36 1 11 15 35 34 6 8 3 28 21 15 31 29 26 26 14 6 18 10 21 22 12 10 26 19 13 33 4 20 27 7 11 38 4 35 40 14 34 33 8 37 10 16 21 34 32 32 15 15 37 25 24 21 25 17 7 6 39 32 5 39 24 23 27 5 32 17 26 27 33 16 33 26 10 29 2 29 29 18 19 32 5 17 39 13 33 10 20 5 7 8 9 25 24 17 31 35 26 20 24 11 28 14 6 29 40 14 26 3 10 2 6 7 6 35 30 1 35 29 26 31 22 7 38 11 38 4 26 22 12 35 36 9 5 6 10 19 1 14 22 24 26 15 28 8 32 5 22 24 9 24 19 32 21 32 31 4 5 31 22 5 18 29 14 11 28 11 18 31 31 34 31 18 25 24 37 40 26 13 25 32 11 18 12 26 14 6 8 26 20 25 31 7 34 6 32 12 21 25 1 15 22 26 13 9 2 16 19 28 4 9 13 7 37 30 2 26 18 23 20 11 10 40 12 38 13 28 20 29 36 36 10 3 17 21 21 12 31 9 18 24 20 30 24 11 28 39 23 7 2 29 23 8 38 1 34 25 7 29 33 35 37 28 40 31 34 14 26 26 30 21 19 37 7 40 33 31 24 34 1 10 28 39 4 5 15 8 28 35 37 24 22 25 28 12 1 30 3 35 7 17 13 14 37 6 11 2 24 10 36 30 9 15 9 12 13 34 33 9 36 39 13 19 21 27 20 27 17 23 8 35 34 38 3 8 3 7 28 13 13 15 28 19 10 7 28 38 22 28 17 37 12 7 3 23 24 24 22 10 6 34 20 10 25 5 8 16 16 35 8 35 26 29 37 34 35 20 19 8 27 31 7 17 18 5 10 8 34 25 5 6 36 40 22 15 3 39 18 17 21 21 26 12 10 26 39 27 17 39 14 8 28 36 1 32 40 34 34 27 23 10 19 18 7 27 40 39 15 28 32 7 10 19 12 10 12 20 16 10 23 14 38 35 15 30 30 13 7 31 24 37 18 39 29 20 23 3 19 16 20 29 24 27 35 10 8 2 37 23 16 22 9 25 33 40 18 17 27 20 20 25 3 4 13 38 27 38 24 19 29 30 2 38 4 7 29 7 21 18 22 8 12 22 10 34 37 15 24 37 29 8 17 11 23 10 22 1 6 7 25 6 40 33 36 4 28 9 4 36 30 4 40 12 12 19 22 10 28 27 4 15 36 5 39 27 38 13 16 39 12 18 14 29 37 4 2 4 39 1 22 14 19 23 36 16 27 39 39 17 1 21 28 15 30 9 25 21 25 17 11 1 13 2 1 5 25 36 29 3 10 27 3 6 3 15 33 10 7 16 7 12 15 39 4 22 34 8 8 23 8 27 26 23 37 29 36 16 22 3 17 2 39 17 28 28 19 24 20 36 5 32 36 28 15 12 29 7 5 1 39 30 39 36 9 9 9 8 22 6 16 35 37 32 7 35 39 25 18 18 23 21 31 8 33 24 6 12 24 24 16 23 36 23 9 16 28 4 26 28 14 9 33 34 12 7 17 25 31 12 4 19 26 30 2 23 40 32 13 7 29 15 34 26 38 7 35 30 16 33 12 27 25 31 15 27 18 17 26 26 4 8 40 15 24 27 37 8 3 16 36 30 4 36 16 24 33 25 38 4 37 33 23 16 6 1 24 30 21 38 7 29 32 34 15 1 23 3 32 9 15 1 38 16 25 27 24 9 38 6 22 9 4 4 1 18 36 17 35 8 12 21 22 32 22 39 32 10 18 24 11 5 21 2 12 39 28 20 19 1 9 15 14 23 26 31 32 28 28 12 40 18 3 7 15 38 7 37 7 38 7 13 40 20 25 13 6 7 37 18 15 40 34 27 6 18 31 24 8 19 16 2 14 9 4 12 23 20 22 2 16 28 17 25 9 25 26 5 19 40 16 40 21 24 27 40 9 23 29 28 28 3 19 22 8 32 2 27 12 38 33 36 38 9 7 16 12 35 28 14 4 8 17 8 38 22 21 37 29 16 4 40 14 4 32 27 32 40 39 21 15 25 5 38 22 15 32 19 40 6 26 30 3 23 31 4 37 19 25 24 29 30 33 28 24 32 7 13 38 39 10 4 23 4 20 2 12 1 31 17 21 37 21 7 3 2 3 2 16 29 16 1 29 21 39 23 37 26 14 26 36 16 38 30 38 30 20 35 24 38 39 30 4 22 40 22 19 36 2 9 11 30 17 14 6 16 10 18 3 4 35 6 2 3 15 2 29 23 6 1 17 27 11 1 38 16 40 7 25 10 34 17 23 10 3 9 25 5 34 7 5 25 28 28 39 8 21 24 25 33 34 32 20 4 36 27 27 24 21 11 9 4 7 21 18 31 28 35 4 34 23 39 10 22 38 26 28 1 10 1 40 21 35 28 32 18 33 32 12 32 32 13 4 26 25 20 15 8 28 8 29 12 35 27 40 11 31 7 16 15 18 35 16 23 37 3 16 4 1 1 40 12 38 29 36 37 5 22 4 4 25 8 38 27 25 12 18 13 26 24 1 20 1 14 40 25 38 35 20 24 16 34 7 21 8 32 3 14 15 20 33 12 16 15 11 23 35 14 6 5 39 14 19 9 28 37 17 40 33 32 22 20 4 3 7 9 4 13 21 30 10 34 15 17 39 39 23 19 34 1 29 19 22 38 2 10 9 31 15 23 11 12 14 33 34 14 21 31 38 7 38 22 1 3 28 19 5 1 34 27 40 35 29 27 12 33 30 17 8 3 27 24 33 33 7 18 36 22 34 36 40 37 35 19 2 20 7 5 4 40 26 8 12 27 9 18 40 1 6 30 1 22 27 19 15 22 10 27 15 2 6 12 32 20 13 17 28 3 31 30 6 21 35 31 12 19 29 26 35 24 20 5 18 36 33 9 21 31 19 13 6 8 14 9 30 6 24 8 16 10 3 2 18 36 40 38 5 15 40 12 24 5 29 6 13 9 25 39 31 25 19 22 32 16 21 33 7 5 6 3 13 18 34 31 36 25 15 28 40 30 22 38 27 38 29 18 28 16 35 38 20 11 6 5 5 20 31 4 9 22 26 13 34 9 39 26 11 18 37 34 8 23 9 37 5 13 27 39 11 7 9 12 21 26 16 27 28 34 25 36 19 12 3 1 22 30 21 32 25 13 29 4 10 31 15 2 18 25 31 23 22 31 10 19 18 7 10 17 20 7 4 14 28 34 19 20 14 4 8 10 16 36 37 30 2 1 32 4 21 12 17 29 30 5 13 31 33 21 18 38 38 8 35 10 16 26 4 34 1 19 21 12 12 32 3 40 10 23 18 38 4 14 23 32 38 27 5 25 33 40 18 21 28 28 32 35 26 19 28 39 18 38 15 1 17 21 21 12 28 13 22 16 9 29 24 39 20 35 32 6 40 23 6 1 17 39 25 26 36 23 4 36 10 12 12 17 5 24 18 14 15 37 10 40 27 27 9 10 15 24 15 37 14 31 10 39 1 35 1 6 28 7 19 16 36 35 19 33 6 17 18 39 12 38 11 33 37 40 32 3 36 20 14 15 16 1 37 35 14 39 26 18 40 4 23 9 17 22 16 39 2 23 26 17 27 20 32 14 2 37 8 19 23 16 15 17 14 36 26 3 21 20 5 15 16 4 27 38 17 33 25 33 12 8 21 13 17 17 3 40 35 36 22 36 36 6 1 17 26 28 5 29 22 30 25 17 36 19 28 25 1 1 28 34 15 21 38 6 25 25 38 20 21 22 14 39 9 38 18 23 28 28 4 21 34 11 8 18 17 34 11 33 27 30 14 37 18 31 18 29 37 6 31 15 30 22 29 24 8 29 32 15 3 9 35 12 2 23 22 37 27 20 6 5 19 13 38 3 3 22 8 21 6 32 30 9 23 4 3 36 24 38 4 30 18 34 19 18 20 27 30 30 28 19 14 23 9 6 31 3 1 6 40 25 20 15 33 16 24 3 10 25 5 38 32 19 36 17 32 34 25 34 9 11 39 23 12 18 7 29 24 6 4 17 31 12 4 8 2 2 5 25 1 22 7 5 4 30 31 21 7 22 23 7 33 17 31 21 35 4 20 40 6 38 17 38 37 16 18 38 14 20 33 39 26 25 38 23 19 18 12 35 25 36 33 11 32 11 9 1 26 37 17 31 28 15 15 29 2 26 40 18 34 32 15 9 27 35 2 6 20 2 25 26 1 8 32 24 18 3 20 27 30 36 9 2 20 12 31 11 25 34 32 23 33 17 3 3 2 4 30 25 33 15 28 25 10 21 15 29 25 13 5 21 37 6 34 20 20 27 15 16 16 7 36 4 36 11 1 11 9 21 11 26 9 10 9 29 1 32 9 9 17 17 5 25 12 26 15 35 25 31 28 16 11 37 31 34 18 32 2 9 5 7 25 28 34 10 9 17 3 23 18 31 16 40 1 20 22 2 16 32 17 26 31 17 31 34 12 38 27 2 22 30 7 38 36 35 36 38 13 14 6 12 34 18 33 23 40 19 15 5 26 25 16 31 17 16 27 39 8 30 9 1 6 23 18 29 22 12 30 33 31 37 40 24 17 19 14 23 3 2 14 37 8 38 29 10 20 22 2 34 31 18 35 3 3 31 4 10 4 36 18 6 17 8 32 39 28 25 21 24 32 13 12 20 21 11 11 6 39 11 16 7 20 5 36 18 2 23 34 13 12 4 11 28 3 5 33 11 28 27 31 24 4 15 10 14 27 16 28 22 36 4 16 32 23 20 11 30 36 1 13 1 18 38 5 3 26 20 8 37 38 33 7 10 19 28 26 34 29 6 25 34 28 27 3 21 23 23 27 1 12 31 39 33 4 4 35 12 25 23 28 17 34 7 24 2 19 25 3 3 36 4 32 1 8 2 23 23 3 13 35 21 24 5 31 40 13 35 11 39 10 18 27 25 40 26 25 23 33 39 14 26 22 39 19 22 18 23 6 7 6 28 16 9 7 39 3 11 30 5 21 38 34 40 3 21 26 28 8 20 6 37 12 28 18 23 21 10 27 40 38 3 12 6 12 4 22 34 1 23 23 39 1 24 35 24 31 23 30 29 18 9 28 2 16 10 23 35 22 25 2 2 17 30 36 34 6 32 37 7 5 23 5 39 4 21 7 11 33 26 4 11 3 1 21 5 27 15 32 4 30 2 26 21 12 23 36 30 17 32 13 11 28 5 16 6 10 31 33 27 3 39 39 13 29 15 10 29 26 15 19 17 40 5 33 23 13 16 30 28 7 10 25 10 24 5 20 36 21 4 21 19 3 20 9 40 31 31 38 15 39 33 30 17 35 9 15 33 4 26 36 10 28 20 38 2 29 15 4 1 12 19 18 21 8 33 27 23 19 21 22 10 29 6 12 28 6 24 22 20 33 27 6 16 35 27 17 27 38 30 2 25 26 35 33 1 29 27 25 25 11 36 22 30 36 7 38 27 39 3 31 29 39 21 31 39 16 13 20 12 35 33 26 7 28 5 4 21 30 35 23 15 20 6 34 8 39 21 34 26 2 25 32 40 11 22 16 2 32 6 21 23 13 25 16 3 33 24 2 40 24 33 21 19 20 7 19 36 40 40 25 15 25 14 16 22 3 2 9 25 11 14 22 23 11 15 15 39 8 32 25 14 23 31 23 34 33 38 35 19 28 9 38 3 28 39 17 24 16 17 20 12 3 25 4 29 23 25 16 7 12 40 15 27 13 3 17 10 18 21 16 11 39 8 11 37 3 14 28 40 27 23 29 36 10 12 5 1 12 39 35 23 34 16 21 35 11 19 22 6 3 31 2 29 12 22 22 18 29 30 9 33 31 20 2 8 11 31 12 16 27 17 10 3 31 11 10 33 16 30 1 6 20 27 35 19 8 36 37 32 40 10 25 32 38 17 23 15 3 8 11 27 27 6 40 35 12 38 18 39 39 6 1 9 15 10 37 32 2 16 11 18 5 7 13 34 5 38 25 1 6 40 34 17 14 10 27 19 15 27 36 12 19 21 1 11 22 12 22 13 36 40 7 10 1 29 33 37 4 7 40 31 2 21 28 39 7 40 5 9 36 30 20 39 2 31 2 17 29 7 4 12 39 17 16 28 9 39 22 23 39 40 8 27 31 36 21 6 5 25 23 40 28 24 39 27 6 21 9 19 15 16 8 4 6 3 39 21 9 29 10 34 15 9 35 7 13 34 31 4 8 5 29 9 39 38 6 16 28 21 17 25 34 9 22 37 19 21 34 15 15 2 1 36 14 10 24 14 20 30 27 18 10 4 19 38 3 7 15 23 40 8 36 10 3 14 35 35 5 19 14 29 31 35 40 23 17 39 13 33 36 31 14 11 20 31 14 29 25 32 17 5 5 17 27 16 11 13 21 31 32 28 34 30 22 14 31 26 24 30 23 18 23 21 36 34 21 24 4 5 4 32 16 11 11 25 24 36 16 15 9 23 9 3 18 18 15 21 32 5 23 2 31 29 12 28 3 32 17 10 3 27 2 4 6 6 9 18 9 31 17 26 6 15 32 23 40 26 10 36 20 5 40 5 20 9 28 20 19 20 40 5 6 2 38 18 29 4 39 26 5 14 39 18 4 33 3 28 8 5 22 37 35 18 18 37 8 4 31 24 23 26 13 38 31 31 20 11 8 29 36 11 8 28 17 18 19 13 37 1 27 38 17 30 36 17 8 24 15 39 14 30 33 18 18 1 10 5 21 39 34 38 5 39 28 24 3 17 35 23 7 33 34 3 16 7 27 38 33 38 23 34 39 16 9 20 38 2 37 7 37 39 12 19 16 18 30 2 27 17 23 32 10 17 13 17 8 10 13 22 39 10 34 21 29 27 15 9 26 18 25 11 12 33 27 4 30 8 1 34 34 31 11 25 22 18 36 28 2 32 24 8 4 1 38 29 22 6 38 31 8 39 38 17 26 11 3 16 38 6 25 8 31 26 35 1 22 13 34 37 18 24 13 22 27 31 10 13 22 40 33 7 29 4 7 24 9 28 7 8 5 23 27 35 17 32 19 4 32 4 5 5 40 18 20 27 29 1 36 27 23 17 15 34 37 5 22 39 9 40 38 14 25 17 4 30 2 40 34 17 12 27 39 29 32 11 6 37 5 24 31 32 9 16 28 37 39 9 23 19 34 26 37 18 18 13 19 18 32 17 33 18 5 11 35 35 22 28 21 16 22 28 20 31 33 15 39 20 31 19 27 18 34 4 16 34 30 6 22 29 27 27 24 18 2 32 25 4 3 37 14 18 28 19 2 6 4 10 26 38 4 26 24 19 21 40 4 36 34 38 19 29 2 4 33 7 35 4 14 4 33 21 39 23 8 35 10 9 13 33 40 18 30 7 14 12 1 37 23 22 39 34 2 13 29 4 20 26 35 8 34 20 1 36 3 5 11 21 33 14 4 23 31 7 30 40 23 30 39 21 21 19 10 1 20 7 39 18 5 35 7 28 31 4 39 24 7 25 24 26 34 33 2 4 27 13 11 13 13 3 13 11 7 18 38 26 40 13 18 37 18 19 34 37 24 14 15 22 26 15 23 9 38 2 40 29 26 16 4 31 31 15 8 5 3 37 27 5 9 24 1 33 25 28 29 27 24 30 9 8 1 6 13 1 10 39 34 35 6 5 40 17 6 28 20 31 7 12 9 39 4 24 1 6 16 28 32 12 40 13 33 22 5 23 3 14 40 33 32 14 16 18 4 27 24 28 18 21 15 28 22 5 16 18 36 31 35 33 4 29 9 39 35 25 28 27 38 16 29 22 31 25 40 18 36 10 34 26 12 21 1 20 34 2 8 2 32 16 9 39 27 24 7 21 23 4 1 17 34 1 22 24 40 13 13 38 8 19 5 27 16 16 5 25 8 17 26 22 1 20 6 18 14 26 13 23 39 10 32 39 17 2 22 36 29 18 33 32 19 32 32 3 20 27 32 3 40 6 3 2 25 20 37 2 31 39 24 25 14 5 37 30 25 2 30 3 22 12 18 11 21 40 35 8 19 12 36 28 8 1 20 31 23 36 22 14 19 3 37 37 21 9 28 32 4 1 4 15 33 23 37 40 32 8 35 15 22 9 27 2 17 33 1 19 29 27 28 7 10 18 2 27 12 37 35 12 1 13 3 15 17 6 13 33 7 15 5 5 13 34 40 14 34 22 14 39 31 14 16 16 34 13 4 35 7 36 6 17 39 1 5 4 13 39 28 17 4 12 20 4 12 40 12 35 39 5 34 17 17 35 23 13 39 2 34 35 32 35 28 10 30 22 2 1 9 9 17 39 35 8 35 9 18 21 3 14 30 22 26 24 33 27 28 9 15 5 20 15 2 2 2 39 36 33 5 27 37 40 4 12 6 28 20 12 12 33 12 30 33 36 20 15 2 6 33 34 26 7 33 9 10 38 24 14 33 17 7 15 19 18 34 35 21 33 2 29 4 2 19 11 14 27 23 5 18 2 10 16 11 27 1 12 4 16 2 12 10 4 28 1 7 8 24 16 27 40 33 14 22 10 30 11 10 22 18 17 9 14 40 11 27 33 29 38 7 39 22 31 14 24 1 35 26 16 10 17 3 12 4 18 27 20 28 18 8 30 19 4 3 3 13 6 19 17 6 6 27 1 3 26 16 29 38 39 31 14 24 17 9 28 22 9 4 21 4 23 16 27 8 35 23 11 23 23 34 21 2 37 20 34 7 37 14 30 40 12 39 1 2 33 21 34 18 18 30 33 16 31 22 31 40 10 33 34 29 19 36 4 13 29 28 27 8 28 6 5 25 18 34 6 31 2 5 18 27 13 26 18 26 2 26 35 19 6 11 5 18 21 32 39 9 28 32 17 5 7 5 26 25 40 22 31 40 34 1 11 14 15 3 14 35 26 16 34 28 11 9 11 16 1 6 7 14 9 10 28 19 21 21 11 35 39 5 39 33 31 15 32 13 16 13 3 3 7 10 27 5 1 28 32 15 6 28 20 11 24 34 10 5 14 32 37 27 30 23 24 13 23 9 15 36 27 1 4 18 40 5 22 34 16 35 9 30 1 12 34 36 20 2 24 16 39 25 31 35 14 10 7 5 1 1 3 3 40 26 3 27 11 32 11 8 15 35 16 33 35 23 26 10 14 29 34 17 40 1 13 31 18 6 9 33 34 7 38 26 19 4 22 31 7 10 28 9 40 40 34 4 15 1 39 17 33 27 35 22 29 38 13 19 22 15 30 4 4 1 26 5 5 38 21 25 31 35 25 38 1 28 7 20 9 30 11 2 19 10 23 26 4 10 5 14 10 6 38 15 37 13 39 6 25 8 2 2 32 17 34 7 35 5 13 23 34 32 13 34 20 14 37 26 16 8 23 14 6 9 28 6 25 2 15 15 27 30 15 27 29 10 26 23 20 17 35 38 19 7 21 2 40 23 9 35 35 39 19 5 32 27 15 22 5 5 6 38 20 12 29 9 40 12 21 3 40 34 24 4 26 5 13 14 24 15 4 29 20 13 2 31 29 2 11 11 29 33 28 4 24 25 33 38 24 4 6 32 23 24 21 3 15 14 14 22 7 38 24 11 25 33 40 9 27 5 1 1 14 13 11 33 2 1 4 36 22 29 9 10 40 10 18 12 25 36 34 18 14 34 23 36 14 35 2 31 35 15 9 3 20 39 27 25 23 5 33 27 21 3 19 33 3 6 10 9 19 31 32 35 34 35 34 24 7 40 31 19 9 39 11 5 28 24 30 33 17 24 6 24 22 17 2 5 32 25 6 2 27 1 10 29 27 21 9 37 22 1 22 21 33 38 40 31 18 22 23 16 19 23 6 11 20 35 13 16 34 6 24 31 15 32 16 22 38 9 37 37 32 8 32 36 25 6 3 1 31 17 29 12 12 16 18 31 22 2 38 11 26 38 23 38 34 28 23 40 5 13 4 1 9 25 28 12 8 37 34 40 28 3 11 1 4 28 17 18 15 2 5 28 32 22 5 9 39 30 20 16 4 40 23 24 34 14 9 16 28 20 26 3 3 40 19 15 17 23 40 19 37 33 27 34 12 38 9 29 11 36 15 7 23 25 34 19 29 22 24 30 38 22 33 4 8 26 1 35 16 27 26 33 10 1 20 36 19 31 32 34 5 13 38 24 33 24 35 7 31 40 7 23 18 22 15 25 21 34 12 20 10 20 27 23 13 32 15 2 36 23 2 14 19 33 36 24 35 40 28 9 24 8 1 8 33 10 15 32 26 20 30 30 14 14 28 9 15 34 19 19 11 18 11 11 21 33 21 16 6 19 20 21 10 13 11 36 13 14 27 13 12 38 38 39 40 28 1 33 20 21 18 25 24 6 34 38 18 6 18 5 7 12 1 26 18 39 13 21 26 12 17 33 18 19 40 7 26 36 23 3 26 26 12 39 34 29 22 6 40 31 2 36 13 10 5 34 22 25 31 16 11 27 24 10 19 35 36 20 33 9 2 17 14 26 30 9 22 16 21 4 31 37 13 5 5 38 10 12 30 24 36 40 18 16 9 10 39 40 25 35 4 39 40 11 21 6 28 4 3 20 8 34 16 36 9 8 32 25 17 10 1 14 15 10 38 3 31 1 4 37 34 24 22 38 36 4 23 3 13 15 24 16 13 15 10 31 24 24 19 31 1 25 28 24 9 29 36 9 40 25 19 34 17 11 31 5 13 12 8 26 35 17 33 2 17 24 14 20 11 20 14 31 21 12 2 20 4 12 33 2 7 10 35 28 19 23 26 35 34 17 16 12 20 40 29 6 18 11 10 15 8 26 25 31 33 26 25 11 31 3 21 36 1 25 12 30 9 17 17 18 23 32 31 6 13 13 20 1 4 7 19 9 10 28 29 26 3 29 2 18 38 9 39 9 28 30 16 14 11 9 29 29 29 32 21 9 8 21 5 31 37 36 9 19 21 36 9 10 18 39 28 14 7 25 10 14 28 32 14 20 30 15 4 23 24 11 7 14 28 5 18 14 34 24 4 2 14 24 14 35 34 23 27 9 3 24 40 39 15 35 26 8 39 24 3 4 21 1 17 10 33 21 15 16 16 9 16 35 1 31 15 23 13 24 37 10 39 31 16 24 24 24 3 7 9 19 24 38 32 39 20 1 15 2 22 31 35 26 21 9 33 8 36 3 29 2 18 37 14 10 8 26 26 24 25 30 23 20 17 5 7 35 1 37 6 9 12 30 2 2 15 31 3 16 12 33 6 19 12 24 25 27 14 6 32 38 9 35 39 33 34 15 16 10 17 6 25 37 13 34 31 6 1 34 18 16 4 38 22 25 33 6 10 14 11 7 1 5 27 16 18 13 6 40 31 38 11 21 15 8 3 37 38 6 2 5 39 20 17 14 16 36 24 11 29 39 32 4 1 26 17 39 20 36 32 17 14 21 16 16 15 12 23 37 40 24 24 5 34 28 8 3 18 37 10 39 22 26 7 29 28 35 5 22 6 37 22 29 37 5 29 19 4 37 1 34 7 4 38 8 23 9 20 7 33 25 1 35 12 3 38 8 9 27 15 33 39 19 25 26 37 38 14 26 30 36 31 7 19 22 25 37 10 20 24 15 16 2 3 32 10 14 10 40 6 20 1 10 38 15 21 25 8 20 27 33 32 4 35 12 6 5 6 18 24 18 2 17 18 8 27 11 12 40 33 39 12 3 12 33 4 19 21 2 15 9 16 37 4 21 30 26 19 37 24 37 34 16 20 24 33 5 25 25 25 21 26 16 40 30 5 4 35 21 14 33 24 40 22 14 31 15 8 37 38 35 37 9 24 39 12 32 17 5 24 11 25 3 8 12 13 12 40 21 7 19 23 16 32 4 27 20 15 27 4 13 16 10 17 26 6 5 37 29 32 13 6 7 27 36 32 21 10 8 22 3 26 30 37 17 31 24 7 7 13 1 34 21 26 10 22 35 7 31 11 5 24 25 23 14 10 6 33 36 39 23 40 15 21 39 31 4 6 4 1 29 24 14 17 9 22 29 9 25 11 27 15 31 20 33 4 32 11 3 32 32 11 26 40 1 36 27 25 3 20 17 39 11 28 24 26 15 27 12 39 6 21 1 24 1 20 7 38 14 25 34 29 27 12 29 2 2 13 8 33 18 26 13 24 38 34 14 30 22 32 4 24 8 8 32 40 39 23 40 36 12 39 13 19 33 5 6 36 23 39 13 31 33 35 4 16 7 29 33 35 11 32 3 24 38 29 32 39 7 35 14 34 36 30 6 8 9 1 20 15 6 39 26 2 40 17 8 10 28 38 33 33 40 14 3 7 19 32 19 9 15 13 18 3 27 34 23 9 27 37 6 7 1 8 33 7 14 39 14 5 33 34 34 18 35 18 33 21 10 10 23 5 10 10 29 35 26 26 22 9 15 11 11 30 22 27 5 15 36 33 37 8 23 22 9 4 16 22 7 6 11 10 7 2 4 6 10 16 40 16 29 25 7 23 31 24 13 34 27 21 22 31 30 32 27 13 30 11 22 37 34 10 16 36 36 25 27 16 29 8 5 31 18 39 19 13 5 39 25 8 15 27 11 13 35 18 29 23 24 30 4 24 14 30 26 11 15 2 7 4 35 10 5 12 37 36 35 7 36 1 12 12 22 32 27 23 18 31 34 8 5 4 23 40 11 36 16 34 39 23 10 30 16 35 12 15 34 23 36 13 10 8 33 18 19 9 25 26 22 2 16 26 26 24 5 34 3 38 38 22 17 1 12 28 39 9 17 19 40 13 30 8 8 38 38 8 9 14 33 19 12 11 24 22 23 9 20 1 34 1 14 28 30 29 4 15 23 14 23 30 39 12 25 4 23 26 40 7 27 23 35 9 37 8 31 37 32 1 8 21 6 5 34 29 29 29 18 32 24 24 35 17 8 22 38 13 24 18 18 30 7 34 29 9 19 4 25 7 26 38 23 39 32 16 39 9 10 2 34 16 6 2 39 3 16 3 25 15 29 34 20 38 11 28 34 6 24 30 3 4 7 10 3 13 1 9 3 11 40 13 13 28 22 8 4 36 1 32 1 4 35 30 31 11 25 21 34 22 20 28 12 15 14 19 11 23 33 4 16 18 12 15 21 31 2 10 25 15 33 9 32 8 13 21 5 14 35 40 29 23 28 37 30 33 35 35 5 11 15 21 3 29 40 17 18 2 28 1 35 24 4 33 21 24 38 26 35 33 28 40 29 20 19 16 22 4 33 23 16 29 22 10 39 11 30 26 2 8 40 22 1 5 1 29 4 38 5 22 4 21 2 16 18 9 23 7 1 12 24 11 10 27 27 29 22 12 25 18 8 21 24 6 37 10 35 25 18 21 6 7 14 5 29 14 19 28 30 11 5 20 32 20 8 25 9 15 10 6 23 19 29 26 11 23 26 15 27 7 24 28 40 1 13 19 3 12 3 13 13 1 14 34 10 9 3 34 13 17 26 7 32 14 3 11 19 39 23 13 21 40 21 26 5 31 11 7 8 28 15 33 27 22 34 29 35 6 11 37 29 34 15 6 22 28 14 21 28 27 13 10 39 24 23 22 20 3 22 22 15 28 20 6 2 19 7 31 2 36 14 9 29 26 5 7 37 31 36 15 8 25 3 16 16 4 5 6 3 6 33 36 35 32 12 32 22 37 8 2 40 29 4 1 17 33 4 4 29 1 30 7 28 28 20 13 38 18 9 34 31 6 38 12 20 5 27 27 19 13 13 12 21 32 1 31 37 5 37 6 12 29 36 14 21 21 37 3 3 21 25 7 16 8 7 24 15 16 40 14 20 10 33 25 27 10 14 12 25 22 34 9 37 27 23 17 2 27 8 20 33 3 11 22 9 29 30 13 35 9 25 28 16 40 21 17 28 31 30 11 28 2 7 34 33 17 1 34 17 18 1 40 33 19 30 26 30 23 24 12 4 4 21 25 21 21 14 18 31 17 12 2 30 30 27 30 11 38 21 4 1 1 20 23 13 2 13 1 38 25 15 14 13 30 24 39 11 1 39 2 4 31 8 11 32 37 26 23 38 13 40 24 16 6 13 39 32 10 16 11 3 19 22 28 9 39 37 31 12 19 31 16 20 27 12 35 21 8 31 17 38 6 8 27 35 21 4 35 16 19 19 25 23 13 36 21 7 18 18 37 5 31 35 14 4 32 11 23 35 4 38 11 32 40 3 21 14 20 30 25 20 9 6 26 3 8 22 17 18 35 22 11 22 39 29 34 14 27 35 40 7 23 6 12 29 4 31 10 23 39 12 9 19 18 23 38 33 4 1 11 11 17 30 28 34 24 4 24 25 23 23 38 40 13 22 6 12 36 28 5 19 3 1 8 5 33 5 22 32 32 21 31 4 39 8 4 9 7 36 5 1 1 1 12 17 21 29 3 31 23 1 39 26 4 22 28 24 39 27 22 20 8 28 7 13 28 15 22 30 1 10 1 22 22 16 40 39 6 1 8 29 25 3 17 31 7 9 39 40 40 29 24 17 36 37 25 39 3 21 32 35 27 15 27 38 19 4 18 17 12 29 35 14 19 30 15 15 4 36 30 7 40 9 5 15 30 34 21 15 28 8 5 37 22 27 33 19 2 23 19 4 22 5 19 35 30 1 12 16 24 35 25 5 24 35 22 18 24 13 2 40 20 9 32 21 30 40 31 19 9 33 4 29 6 8 33 30 9 30 3 28 36 27 19 31 37 27 10 34 39 13 17 29 33 15 11 6 27 9 37 9 22 39 35 12 22 19 15 2 37 5 27 14 16 15 31 24 28 35 8 30 3 29 22 11 40 24 33 16 16 8 32 37 11 18 19 26 19 22 27 7 21 27 21 17 28 39 20 32 1 29 35 33 19 26 2 2 2 16 15 32 29 19 15 29 18 18 14 34 5 13 22 30 33 15 21 10 26 31 25 9 15 37 30 17 20 26 21 33 13 13 25 27 6 32 16 19 23 31 14 2 1 29 15 14 40 15 3 36 31 14 34 5 8 39 19 37 12 12 39 19 29 27 40 36 21 33 38 2 29 31 19 39 39 13 2 6 21 23 34 9 19 31 6 6 27 38 33 11 40 38 1 34 37 6 18 15 5 35 7 15 3 32 29 13 36 9 14 28 8 17 30 26 12 22 37 15 36 39 31 14 39 29 21 25 1 13 6 23 6 5 35 4 1 17 34 34 19 35 27 31 15 1 18 7 6 32 25 36 32 26 6 34 25 39 4 27 31 28 13 8 20 17 14 8 34 34 15 4 25 34 13 13 21 25 37 26 2 26 15 37 18 22 26 38 6 29 2 18 21 6 3 6 20 29 33 31 19 32 12 27 26 35 19 10 6 28 24 5 26 23 20 20 9 29 36 2 7 15 21 4 37 29 39 16 15 31 20 39 24 36 31 3 40 20 39 33 3 12 14 24 39 36 35 6 35 23 38 8 18 32 27 1 39 8 26 13 39 8 36 2 10 7 35 3 37 30 13 27 24 5 14 20 34 21 32 3 9 3 32 38 38 21 24 2 37 33 24 22 22 32 25 7 22 24 10 13 30 33 23 8 21 7 16 13 11 8 30 34 24 36 34 25 36 16 32 23 40 19 40 8 24 18 29 9 27 33 21 6 27 11 27 21 36 9 31 26 6 14 18 17 32 13 30 8 28 12 1 6 3 3 8 1 4 29 17 31 6 27 39 36 11 5 29 34 36 19 23 24 12 28 5 35 32 27 32 27 18 3 39 31 27 12 4 39 32 20 30 34 26 21 13 18 25 37 36 7 36 38 37 35 3 10 26 32 12 21 3 25 39 1 22 23 10 26 2 8 34 27 21 28 7 11 35 7 32 7 29 3 32 12 19 1 13 40 9 29 20 3 29 17 3 29 29 16 31 17 2 7 24 38 39 3 32 22 21 13 11 31 31 7 40 38 25 1 40 36 35 36 22 26 15 34 14 25 14 36 36 17 5 38 1 31 30 24 15 4 37 15 24 23 38 30 23 5 11 11 25 39 33 24 27 8 8 18 22 10 21 9 25 2 38 7 16 3 1 29 8 15 2 40 5 20 14 15 12 27 32 3 13 13 23 19 9 16 11 24 13 25 22 26 26 27 13 1 8 7 7 40 21 37 25 2 23 25 19 7 14 22 17 1 21 23 37 27 3 7 35 2 23 12 4 16 20 13 17 35 34 15 11 40 28 13 4 7 6 35 40 25 35 8 13 2 5 32 36 34 23 1 6 33 14 40 7 6 19 18 1 20 37 39 37 27 24 26 39 24 20 22 2 26 4 25 6 26 29 5 14 38 17 28 27 9 27 15 29 4 38 4 5 23 34 25 8 17 38 14 35 20 24 33 20 13 6 28 39 23 30 17 2 14 6 7 18 19 5 18 28 3 19 33 3 13 19 5 27 10 16 16 7 13 30 8 33 20 14 4 34 9 31 27 4 7 5 30 17 16 13 7 12 2 36 38 26 27 35 7 24 12 14 20 40 30 19 25 25 22 15 16 10 31 26 21 15 7 22 34 39 32 11 25 22 34 1 4 16 3 28 13 31 12 6 29 6 9 6 4 25 26 32 24 12 12 34 6 33 17 38 20 38 23 19 12 8 2 7 17 25 22 31 34 10 18 15 18 13 33 2 12 29 18 37 22 20 36 38 31 30 25 36 5 9 37 16 31 39 8 35 22 13 23 39 12 33 32 16 34 31 11 18 34 19 6 10 19 17 34 29 27 33 17 26 40 24 11 10 30 39 21 33 40 8 39 33 6 31 7 26 14 15 12 38 19 40 34 37 31 35 29 14 36 33 31 25 34 8 37 20 29 5 40 18 40 3 40 16 3 40 19 13 17 19 18 39 1 35 40 34 23 25 16 7 35 2 23 16 9 14 16 15 3 33 6 11 31 22 28 2 36 8 14 18 14 3 2 18 1 5 18 26 38 23 28 24 6 23 20 18 2 35 10 2 35 21 8 11 5 28 1 40 8 21 33 40 25 35 34 23 8 17 38 5 37 27 2 2 3 24 36 18 6 10 35 37 15 24 2 12 30 5 13 1 21 11 19 21 37 39 3 37 13 4 11 15 37 32 35 20 33 31 24 9 15 21 30 8 34 20 6 19 36 27 35 38 20 34 40 40 23 35 1 33 11 14 10 35 18 21 32 6 3 17 25 17 5 32 22 32 31 23 11 23 25 4 9 19 39 26 10 34 28 39 29 29 32 37 39 13 3 20 10 7 33 14 16 5 37 8 11 3 12 9 40 11 31 8 32 10 31 19 21 37 30 39 11 39 30 6 3 34 37 8 8 19 8 27 7 22 32 13 40 12 39 3 32 39 4 11 13 13 19 32 6 10 36 27 11 12 9 40 33 14 16 19 36 30 6 40 6 33 19 7 9 31 25 8 36 26 2 31 13 2 28 19 34 38 26 22 8 39 40 22 23 18 28 2 38 6 38 32 1 4 32 38 39 16 23 3 16 23 15 18 12 1 25 23 12 6 12 11 23 28 22 19 31 31 16 31 32 23 30 9 19 20 31 1 31 36 38 27 14 9 39 27 1 40 18 10 10 5 19 22 24 39 15 39 17 31 39 36 8 30 24 11 14 13 25 36 29 1 23 1 22 6 5 4 14 36 22 20 37 18 8 33 7 6 6 16 30 20 15 40 38 11 6 17 33 2 31 18 36 26 30 8 37 33 37 13 14 4 10 12 31 5 20 40 11 12 17 40 30 10 33 39 18 31 9 4 13 25 36 36 4 10 3 32 35 40 34 39 24 10 21 11 38 24 25 7 7 7 4 25 2 1 6 1 5 9 33 13 34 19 27 21 29 31 7 10 3 23 1 33 23 6 28 26 12 16 22 3 34 34 31 3 12 11 23 21 27 6 7 20 10 14 21 34 26 37 24 8 4 5 6 17 30 7 13 32 18 25 22 10 8 7 1 35 16 13 20 27 14 5 12 19 5 1 28 28 7 3 26 13 32 36 30 4 30 31 17 18 22 3 35 6 29 28 40 3 10 6 30 9 39 6 3 11 29 28 23 9 6 39 17 10 34 16 1 16 9 23 19 2 12 30 7 31 3 33 25 24 24 15 1 1 23 25 13 39 38 11 34 20 13 11 11 11 1 25 26 35 38 39 12 11 25 36 17 13 37 11 25 4 21 31 17 9 38 22 4 40 14 4 11 1 30 10 20 37 14 38 39 40 18 36 34 3 32 39 32 1 16 32 26 1 2 3 15 22 6 13 8 13 37 30 19 7 11 27 3 14 27 36 38 15 20 23 16 38 21 16 13 36 6 6 12 31 37 39 37 37 13 2 37 37 27 13 25 32 28 37 30 12 7 26 5 26 23 36 6 28 40 33 40 20 40 15 14 40 22 37 31 1 21 26 23 13 24 9 7 6 39 5 5 37 38 31 12 20 23 1 2 20 12 9 12 35 37 40 7 31 14 6 14 13 3 6 35 31 16 6 7 25 16 30 35 40 9 18 11 28 22 4 39 12 38 29 24 10 2 18 18 26 21 16 9 2 27 12 16 27 17 35 23 6 20 29 26 17 33 9 26 30 1 16 16 5 36 32 15 29 1 39 17 6 25 4 18 25 26 17 29 6 13 15 3 29 17 27 24 31 40 6 37 39 20 21 13 10 9 32 28 37 8 23 31 13 24 10 9 1 2 28 15 9 22 1 27 6 34 35 35 11 6 34 25 3 18 4 2 15 11 23 16 10 19 15 35 13 36 36 36 27 14 12 5 11 12 28 23 4 33 15 20 23 35 28 34 5 39 13 26 2 20 6 39 34 28 33 22 37 34 29 1 38 31 31 8 4 35 13 23 16 14 26 12 5 16 3 28 24 15 3 5 27 14 16 39 31 25 3 36 20 37 38 12 11 27 36 1 31 14 2 17 1 12 7 19 24 7 40 8 26 1 17 17 4 2 7 26 18 3 11 15 7 25 15 8 22 38 36 8 26 27 2 11 15 36 22 8 39 17 37 33 24 9 25 3 25 5 14 37 10 8 27 32 21 15 37 31 31 22 13 34 39 18 37 17 35 8 22 9 37 19 25 23 36 5 15 25 8 32 15 30 20 20 15 36 3 18 14 8 4 25 21 30 12 22 31 34 2 37 20 36 20 37 28 1 28 34 14 10 23 39 12 30 33 13 11 37 16 12 38 39 32 36 25 33 8 33 15 26 24 8 38 40 30 13 2 32 29 31 3 25 17 7 7 9 9 36 33 12 2 12 12 20 3 28 30 13 32 25 9 18 6 15 32 21 3 17 33 31 13 2 17 20 36 8 9 30 15 7 8 11 14 17 4 6 7 15 34 2 36 1 16 30 16 33 8 22 18 20 14 1 14 16 6 34 25 5 1 12 24 28 22 21 36 35 40 30 36 20 4 26 23 29 11 8 17 32 34 14 19 40 35 40 32 3 16 38 36 10 7 6 20 6 26 33 19 26 11 29 22 25 31 1 20 29 3 17 26 35 15 2 6 28 27 1 31 30 36 28 30 33 27 26 5 1 10 31 18 10 27 27 5 21 40 9 18 8 4 20 14 15 5 27 11 26 8 31 3 35 3 13 16 14 35 40 1 40 3 11 29 7 10 18 18 14 12 4 5 35 15 39 33 33 1 20 29 31 8 18 19 23 8 24 12 36 19 14 37 36 32 34 38 7 18 40 19 16 11 38 38 5 25 11 5 10 2 24 25 39 1 3 3 19 35 10 10 6 10 23 19 39 6 30 5 24 32 31 28 14 35 3 2 14 8 32 29 24 24 29 36 26 12 7 31 24 29 19 40 21 24 31 37 11 2 39 39 20 26 32 31 5 34 3 6 14 7 12 4 32 4 11 23 26 8 11 14 29 40 40 35 20 29 5 7 33 6 31 8 27 14 33 11 3 8 2 20 9 26 13 37 26 27 26 5 8 24 11 20 2 26 17 38 15 14 40 15 1 36 10 4 31 11 24 6 34 18 12 39 11 26 34 34 19 23 2 8 15 35 31 36 18 19 36 16 18 31 17 23 29 16 7 17 8 23 12 18 7 2 15 36 32 38 12 12 2 28 16 12 15 1 28 18 29 28 8 9 35 26 5 12 18 34 5 3 21 36 37 15 27 29 11 7 20 33 15 11 26 6 36 28 17 35 32 3 19 34 38 30 5 19 12 3 1 16 12 11 23 8 6 39 4 33 38 32 21 29 10 33 12 37 6 17 7 8 35 13 38 28 33 1 40 9 33 29 14 8 30 7 24 3 34 15 3 35 21 36 39 7 11 37 16 34 22 31 31 14 11 10 29 9 36 7 31 5 18 11 35 22 9 25 20 8 20 19 7 36 7 2 35 12 35 35 7 33 40 36 25 21 18 28 26 40 27 34 24 38 18 4 24 34 16 33 28 38 1 26 40 9 38 29 32 1 28 6 25 19 17 39 25 33 26 33 6 34 33 24 38 14 40 33 24 40 13 24 36 3 14 7 16 6 39 24 33 26 32 33 24 24 4 19 27 37 33 31 32 27 37 20 18 30 14 12 31 33 35 22 36 9 7 10 28 23 17 33 32 20 7 40 30 33 37 27 12 16 13 16 25 4 6 21 36 36 27 8 24 22 39 5 3 5 13 22 22 27 2 29 32 27 30 6 10 29 11 2 13 19 2 22 5 37 24 40 2 14 24 6 30 11 39 26 3 6 33 28 31 5 11 13 34 17 13 3 40 26 17 8 15 40 21 37 23 21 9 21 37 7 15 8 13 28 2 40 40 29 16 16 16 7 38 1 6 1 38 35 22 2 16 4 15 20 4 3 27 10 40 34 10 15 1 31 10 37 20 6 21 21 9 12 17 5 18 35 12 31 21 30 29 37 34 31 26 28 18 32 40 37 34 35 12 24 21 16 25 31 37 38 26 30 8 19 21 25 22 35 8 26 15 32 37 24 8 16 39 27 38 30 36 32 9 7 16 34 15 27 3 30 24 31 26 8 31 22 13 26 36 28 13 38 19 40 16 32 26 15 13 40 34 31 23 17 39 20 20 6 11 13 33 31 37 6 7 34 2 8 9 26 2 30 9 35 15 22 30 8 8 8 17 31 37 9 38 38 34 22 12 13 3 38 18 6 10 27 12 26 31 10 23 15 25 22 10 32 38 34 17 20 8 33 4 9 9 14 33 21 25 19 15 35 27 35 33 31 31 33 30 25 22 34 21 37 14 40 25 29 2 25 28 19 34 26 13 29 23 34 22 22 19 14 32 33 10 32 29 36 33 25 37 30 27 6 32 22 20 17 14 6 36 26 2 15 11 22 11 30 15 10 4 28 28 22 24 6 33 25 6 12 8 22 24 34 11 26 19 8 20 33 31 12 32 11 32 25 4 34 11 9 13 33 8 3 35 3 32 22 9 17 1 34 34 24 4 26 6 13 31 2 13 31 33 10 4 25 31 12 37 8 12 29 14 1 31 39 8 29 21 8 34 27 38 25 2 17 18 36 1 16 38 20 38 24 15 1 5 23 8 10 8 3 38 23 32 19 9 11 10 34 34 19 22 15 18 21 31 26 30 20 12 8 11 28 9 3 39 20 8 10 28 37 17 33 16 7 17 36 32 23 35 27 38 13 36 3 31 1 40 29 9 36 15 12 17 23 40 11 7 31 36 37 29 17 36 28 21 16 13 3 9 28 14 7 3 30 10 5 4 31 38 14 36 23 4 38 9 4 31 9 40 4 5 36 2 28 17 19 32 19 12 18 25 6 5 13 6 6 38 23 5 5 3 18 7 33 29 27 19 15 20 18 8 12 25 18 11 31 32 17 1 36 24 19 15 1 27 40 10 2 12 7 31 18 16 19 25 3 33 13 22 22 24 22 22 26 29 28 12 27 26 24 2 21 34 31 31 13 17 32 23 16 29 7 23 25 2 26 39 11 5 11 17 29 10 17 16 13 29 11 32 12 21 11 28 20 21 26 34 11 15 13 19 30 1 39 8 20 37 18 18 29 31 4 25 34 2 10 4 23 32 17 15 30 34 9 30 18 15 34 27 23 11 33 20 39 9 29 24 6 7 23 40 15 19 40 4 21 17 39 26 17 40 23 24 2 2 40 2 27 39 5 4 16 34 10 6 27 32 35 22 19 10 26 5 14 25 17 27 26 34 13 32 31 28 26 7 36 19 27 15 21 21 8 34 18 11 30 37 5 10 28 27 1 23 16 26 34 26 27 22 2 10 25 34 18 4 26 28 2 26 19 37 21 18 24 28 37 14 19 20 24 30 10 10 10 7 34 19 1 24 27 22 35 19 1 23 10 30 15 33 5 32 17 10 30 9 5 18 16 40 11 2 34 39 13 33 5 17 2 24 38 37 33 26 12 24 36 31 8 40 20 23 36 15 33 3 20 28 19 7 39 29 33 27 17 40 17 21 15 30 19 40 15 14 30 13 33 8 8 1 33 12 3 4 34 3 14 27 14 8 27 24 25 26 17 37 22 12 32 24 39 31 14 11 38 39 26 6 27 16 12 7 28 19 10 9 1 8 5 27 20 4 20 8 38 40 1 25 17 12 14 21 17 4 33 1 40 16 29 34 7 31 12 40 15 38 19 36 36 27 24 23 32 28 8 28 31 3 34 25 28 21 31 17 30 22 25 16 18 24 4 19 8 11 4 3 5 13 13 26 20 19 11 14 30 29 13 5 27 21 37 17 40 33 5 33 38 3 24 34 30 39 20 23 40 24 25 36 2 19 30 27 23 28 39 9 23 7 19 18 28 21 35 18 12 4 4 16 4 3 22 7 34 2 34 19 3 5 26 27 37 30 16 15 31 15 34 1 11 1 35 27 15 21 9 15 39 28 34 24 9 33 14 19 33 15 23 40 39 37 34 19 13 34 7 13 31 2 21 34 3 33 13 3 22 17 20 23 7 32 25 22 5 6 32 6 15 21 35 31 36 39 33 4 22 6 17 23 3 26 15 8 24 35 15 30 1 31 18 15 35 7 37 1 1 30 4 32 9 3 19 34 14 24 26 11 13 27 39 27 27 13 35 37 9 35 23 18 29 29 10 19 37 12 37 2 14 28 28 34 34 32 28 32 35 23 2 12 15 25 31 37 39 39 39 24 11 3 25 1 6 30 1 23 34 39 36 36 2 7 24 20 24 19 20 11 33 20 38 27 13 19 38 1 13 17 38 23 21 33 17 35 38 37 23 12 28 12 27 23 36 27 9 14 38 15 6 1 35 38 14 23 34 31 34 12 11 17 11 32 40 31 22 35 22 8 4 13 30 26 9 38 34 36 18 7 11 27 30 19 9 16 16 26 19 23 26 16 36 38 40 30 21 11 1 20 21 24 13 5 26 3 8 14 24 8 12 33 11 1 12 4 38 17 23 9 10 39 39 15 37 21 37 34 7 28 3 25 11 24 16 14 24 3 20 15 5 4 28 19 32 26 40 38 23 27 34 37 9 16 29 9 11 36 16 34 29 13 6 14 8 34 39 20 16 25 30 40 24 40 14 38 13 32 12 24 36 31 6 32 2 3 16 3 3 2 25 32 18 12 37 20 15 13 15 9 14 19 20 16 17 15 34 21 22 38 39 7 31 24 11 4 23 38 40 37 30 12 4 15 12 5 16 26 28 26 14 27 20 3 9 37 39 31 29 25 26 22 19 24 17 5 14 2 29 23 16 9 18 23 39 23 2 39 3 40 40 28 11 31 21 16 34 5 2 6 38 37 14 4 20 37 25 33 31 11 24 20 22 33 34 36 4 17 38 3 5 1 2 16 7 14 40 35 28 28 28 36 19 21 37 29 26 24 3 37 34 22 23 5 12 12 5 16 9 28 39 8 20 10 20 39 8 20 24 11 34 32 6 33 37 6 1 36 25 14 32 38 37 8 5 18 31 2 9 37 2 14 28 14 22 17 39 23 7 15 28 31 33 20 17 26 1 10 26 30 21 39 7 3 15 22 33 38 34 12 23 29 4 11 23 20 5 18 5 32 27 18 8 9 23 7 30 31 22 3 34 21 5 9 34 10 16 16 27 24 24 20 34 6 36 1 8 25 19 36 37 31 19 4 19 29 34 32 36 4 26 14 31 27 8 29 12 4 31 18 20 20 35 30 24 5 7 33 9 20 6 15 23 34 35 10 28 14 14 36 40 5 20 21 32 34 4 29 20 16 30 31 40 5 14 8 5 12 4 29 16 30 14 1 4 8 9 6 28 10 30 40 18 26 25 16 10 24 14 18 9 32 12 14 13 10 6 37 40 10 18 3 40 31 14 5 30 33 23 39 30 30 40 33 22 1 29 20 31 1 1 31 18 38 1 6 26 4 19 24 31 40 36 26 7 31 23 38 28 28 33 33 8 14 11 34 40 4 38 34 35 23 30 32 25 23 21 39 18 1 14 37 7 33 19 17 27 19 28 23 14 38 3 10 15 13 30 15 38 11 6 23 3 16 20 3 11 14 8 3 11 37 28 37 9 2 7 2 24 30 14 6 2 37 8 35 6 19 1 10 10 36 4 2 37 3 33 17 25 40 27 13 24 31 29 16 38 34 35 35 28 24 10 27 7 26 23 36 29 39 38 14 7 20 30 21 4 11 32 3 34 13 10 26 3 31 38 13 32 27 35 39 31 5 5 39 33 14 23 13 16 9 24 27 22 22 32 39 4 27 33 34 2 30 4 17 40 40 4 4 26 29 7 23 29 15 14 35 38 4 37 18 40 2 22 8 4 3 25 31 31 26 31 26 30 29 20 35 8 7 38 4 14 39 40 17 38 12 33 21 5 8 16 33 25 10 23 26 36 6 33 18 39 30 12 6 11 24 28 37 39 37 9 23 22 37 21 8 33 39 25 1 26 28 1 17 26 34 8 26 26 20 16 3 3 14 30 35 37 28 4 10 25 32 14 9 5 8 33 9 2 34 18 27 2 11 10 26 35 31 37 26 37 14 5 5 35 19 1 10 15 18 2 17 27 35 20 6 5 2 24 23 28 20 32 12 38 12 9 17 35 37 17 9 26 23 36 2 32 25 37 30 33 16 8 40 31 2 20 30 31 26 31 29 6 1 1 21 26 17 37 23 27 25 35 7 7 7 1 25 8 13 24 36 39 38 28 6 16 36 18 36 34 28 26 12 1 21 3 24 26 27 33 19 28 18 25 4 10 16 3 1 22 14 12 29 25 30 26 17 28 35 29 29 30 39 9 27 26 10 37 33 16 12 11 6 4 16 21 32 31 5 17 7 14 4 32 1 7 24 32 33 15 27 24 17 5 4 21 13 2 7 39 1 9 9 14 21 9 21 12 40 5 3 6 20 6 14 38 10 1 12 6 1 27 8 23 24 18 33 20 25 28 4 11 23 8 24 15 39 5 19 12 34 17 39 15 35 40 3 9 33 33 30 10 24 17 40 17 18 10 19 35 14 40 8 18 34 39 2 22 5 1 8 25 18 18 36 25 32 39 17 15 3 23 31 9 6 10 40 6 6 38 23 16 19 6 24 1 24 10 14 34 38 38 12 39 24 40 31 20 21 25 27 30 13 37 14 21 12 28 34 39 27 10 24 4 31 10 8 16 19 35 19 14 13 10 29 26 13 18 6 27 25 3 34 25 33 7 19 11 36 15 16 4 28 24 15 39 25 32 8 23 40 19 7 25 27 15 3 36 19 39 16 38 11 37 23 36 36 3 8 19 40 21 22 6 30 32 33 30 7 15 32 1 4 4 3 28 11 21 21 6 6 29 32 5 11 21 18 16 5 2 32 38 6 3 20 10 1 13 19 10 39 12 38 35 12 26 5 14 18 24 7 7 21 40 37 40 18 22 9 23 28 5 19 33 28 20 10 40 36 21 15 29 13 38 8 4 4 11 8 10 3 12 32 10 24 31 15 19 35 20 11 12 12 3 12 2 22 16 10 25 38 34 17 3 23 17 13 25 3 23 3 19 14 16 36 33 1 30 13 28 12 39 35 24 10 16 9 30 5 24 2 37 37 38 24 4 31 13 1 23 23 26 4 19 18 36 3 17 19 32 12 2 26 23 31 23 29 6 14 22 22 27 9 38 40 1 28 28 9 3 20 19 22 39 14 38 36 15 35 7 4 18 39 6 31 16 20 21 8 8 20 40 10 20 17 35 33 20 25 32 20 4 17 12 23 23 27 33 21 28 3 27 13 11 20 15 32 14 16 18 22 38 20 19 4 36 35 27 18 20 38 15 9 12 14 31 27 35 6 13 40 1 33 35 8 11 1 31 16 20 39 21 37 39 10 25 38 19 34 10 15 13 1 36 8 38 2 25 38 26 33 37 32 3 19 13 34 35 21 17 8 18 32 39 34 22 39 2 21 1 26 7 2 3 31 35 5 36 31 31 6 25 1 27 32 39 24 30 1 36 6 7 2 1 21 12 14 15 14 15 8 38 15 3 14 39 38 13 15 33 20 33 22 11 21 2 8 13 12 33 14 2 23 9 29 6 2 38 13 14 38 25 29 7 24 25 29 34 19 14 16 8 2 33 24 38 33 19 29 4 36 39 39 8 31 13 9 3 14 28 13 21 39 26 19 27 16 34 12 38 11 10 27 13 18 11 40 24 26 24 37 21 37 7 1 27 5 38 30 38 31 18 18 19 7 21 6 36 8 38 40 4 18 6 38 6 16 15 23 4 33 34 32 30 29 24 3 30 11 21 13 22 35 30 37 4 4 28 27 30 16 21 21 37 16 19 24 36 26 11 29 1 9 12 34 29 4 3 8 29 1 37 39 14 40 7 30 8 29 21 20 32 34 22 1 6 20 23 30 20 21 25 2 8 16 37 27 27 1 3 14 8 37 27 10 23 25 21 9 39 40 1 2 25 25 25 23 26 28 37 24 35 33 36 3 21 31 39 24 6 3 6 13 5 6 11 17 39 7 34 27 13 33 10 17 40 40 5 32 9 24 16 21 15 28 15 28 24 34 7 11 34 13 12 4 16 8 13 18 16 23 15 1 10 25 29 30 39 18 17 22 37 20 20 8 38 5 17 32 26 13 6 3 37 3 2 3 16 38 19 18 32 30 25 32 23 15 40 26 40 5 40 1 30 7 22 14 35 34 10 35 23 20 9 39 23 17 19 5 30 24 29 18 27 12 19 17 4 31 10 23 40 32 32 22 9 13 22 12 1 9 30 15 30 37 25 33 30 14 6 37 5 17 32 18 39 17 25 7 5 21 33 16 30 15 5 13 23 35 10 18 26 2 19 20 21 15 10 32 27 34 4 15 27 27 3 18 23 25 1 27 18 25 35 33 34 33 31 1 5 3 38 35 7 29 19 32 29 34 18 9 19 32 14 13 27 24 22 21 3 32 35 16 39 34 38 13 22 23 25 29 26 24 12 9 6 22 18 39 12 25 2 32 29 19 4 11 13 3 36 33 34 19 31 27 27 19 24 30 7 8 25 3 19 26 10 3 14 11 4 18 17 5 17 3 16 25 6 31 6 36 23 15 21 6 3 24 40 37 12 3 8 33 8 6 4 35 20 4 6 8 38 34 29 16 8 37 38 37 11 25 13 7 2 19 20 7 37 29 36 25 13 5 23 24 22 30 9 29 3 34 5 27 2 28 22 14 35 4 34 13 31 15 13 29 23 8 19 1 12 1 2 39 13 37 7 20 1 22 40 2 5 16 35 40 18 10 30 40 21 24 21 28 34 31 1 7 23 13 32 5 13 11 36 36 35 26 16 36 35 35 8 18 8 18 11 34 24 12 32 32 3 9 3 21 17 23 23 6 10 21 13 5 39 25 31 10 18 4 26 9 1 25 36 18 36 34 3 27 7 30 5 28 13 18 19 6 23 31 23 15 21 36 27 36 4 1 40 33 1 25 10 27 34 18 2 15 7 22 23 9 39 1 15 3 29 8 18 20 30 10 1 11 6 20 34 19 9 13 33 40 36 4 6 24 21 21 19 30 17 29 25 13 37 38 5 10 31 36 31 18 13 31 12 34 7 11 17 36 36 11 6 39 35 24 30 30 22 1 3 1 17 12 25 1 21 30 28 1 40 10 34 6 12 27 36 20 27 16 14 16 18 37 16 38 5 13 20 28 27 35 32 35 22 23 27 40 2 39 12 5 24 36 36 23 25 6 5 6 8 30 29 17 3 38 29 33 37 26 11 6 14 15 38 40 30 28 6 33 33 19 3 32 19 2 36 37 13 29 21 7 2 36 18 9 8 3 1 40 23 40 2 21 1 22 28 39 30 8 27 18 17 18 16 32 29 22 6 20 26 34 31 31 27 29 27 36 30 2 39 26 31 24 38 9 29 1 30 36 15 24 1 30 33 10 28 17 4 13 3 15 11 30 12 36 29 14 13 17 9 11 33 39 36 9 1 34 9 25 13 35 35 27 39 19 1 11 15 16 16 6 16 7 6 23 10 26 39 22 30 33 4 36 39 20 13 17 9 39 3 8 9 12 40 31 35 30 35 21 2 32 21 33 33 10 20 39 7 23 32 33 1 27 14 38 19 18 15 1 38 15 7 12 18 30 21 5 39 30 19 7 14 22 5 31 38 15 25 26 30 19 23 19 15 19 32 6 5 36 7 8 38 10 29 27 7 4 38 6 8 24 26 13 8 30 30 15 34 31 34 6 18 21 4 11 28 40 14 33 3 18 17 34 10 15 28 8 16 25 34 37 8 33 16 15 35 12 33 29 34 33 40 25 11 3 24 11 36 12 34 9 1 13 15 18 6 37 28 35 2 39 31 32 1 20 1 36 7 29 24 6 36 14 32 33 40 40 9 24 27 5 31 27 35 33 25 28 16 17 39 39 22 39 37 25 11 33 2 4 8 21 1 1 30 4 16 40 3 22 27 2 5 23 30 35 18 24 22 36 27 16 28 16 15 20 25 21 19 29 9 5 13 12 38 39 26 2 28 16 25 15 31 6 35 15 12 39 38 37 35 7 5 25 30 7 35 2 32 17 13 24 15 15 1 10 36 33 3 16 27 11 34 40 29 11 34 11 8 5 7 14 10 28 29 20 26 13 12 24 37 10 23 32 21 39 19 10 15 15 11 8 34 35 32 40 37 25 15 1 39 12 23 15 32 3 14 23 22 20 18 12 21 40 19 19 33 20 37 11 34 34 27 25 29 25 37 8 33 11 35 36 1 25 8 35 29 34 29 10 26 33 16 17 5 39 2 25 15 14 21 6 8 24 22 29 13 7 20 38 24 6 15 27 35 19 27 6 3 34 2 39 16 16 22 16 36 15 33 16 23 4 10 28 38 38 26 7 23 38 17 11 32 6 26 32 4 29 38 11 17 9 12 7 18 13 21 4 38 10 19 24 32 27 6 24 36 38 1 9 20 11 26 18 12 11 10 14 10 40 38 40 31 5 9 37 18 7 31 22 18 23 16 37 26 30 19 30 12 4 8 24 17 40 34 21 6 7 2 23 11 22 14 15 16 3 40 29 25 29 1 30 6 15 12 11 33 19 20 9 25 37 27 11 38 14 30 25 10 5 6 27 32 7 9 25 39 10 12 22 14 26 2 20 29 17 40 26 11 7 23 17 16 13 38 20 14 13 6 6 21 13 29 26 29 8 6 16 7 31 26 33 25 11 17 35 14 15 12 24 17 27 5 35 33 10 11 5 16 22 28 37 3 31 20 11 35 5 35 20 20 39 35 6 14 31 9 27 29 3 11 17 3 25 15 5 22 5 34 13 15 33 11 1 40 3 31 27 38 40 6 35 30 6 30 38 22 17 23 12 10 16 9 31 24 29 13 34 8 8 1 29 10 17 30 29 11 24 40 24 5 18 16 3 7 37 11 26 1 18 22 21 33 1 1 16 22 7 40 2 38 30 4 2 15 2 6 23 15 1 37 39 24 3 39 32 5 39 6 10 16 17 27 2 25 10 7 28 28 23 15 7 28 28 21 18 1 16 28 3 12 32 24 34 19 3 29 14 31 5 12 39 21 39 39 8 12 21 2 1 28 11 26 8 18 25 17 37 35 19 15 9 17 2 17 31 7 27 3 12 18 14 6 34 16 32 28 10 35 37 35 16 2 17 32 29 9 29 10 26 11 13 36 20 13 37 40 2 26 5 39 15 27 4 1 12 33 16 12 5 29 22 37 16 30 28 1 27 6 10 37 13 37 8 15 5 40 28 9 6 3 37 17 28 22 39 10 8 38 12 5 21 20 16 37 14 40 38 18 7 1 10 3 2 9 13 4 26 2 39 25 9 40 26 22 16 30 37 36 30 27 13 33 13 26 25 24 18 40 12 27 22 11 23 2 11 32 22 39 4 32 30 13 16 29 29 6 15 39 32 15 38 4 9 40 16 29 29 31 14 7 13 27 28 25 23 32 9 9 39 35 32 14 1 8 4 16 17 15 15 4 10 23 7 40 1 18 25 32 13 34 15 21 40 8 14 8 20 31 28 24 35 18 28 27 18 25 19 38 32 21 10 5 24 10 4 3 32 40 18 23 13 39 37 26 37 7 24 31 20 29 37 23 17 14 10 13 2 17 23 24 21 34 21 23 30 35 19 27 23 7 3 19 6 32 33 1 30 37 10 25 2 26 19 29 40 14 40 12 5 9 17 25 15 5 20 11 16 17 12 33 36 11 30 14 23 19 34 30 1 36 35 9 29 17 19 12 13 30 3 18 4 23 23 39 25 4 34 28 32 20 11 1 13 20 27 39 37 35 20 7 30 4 2 29 23 23 24 15 38 37 17 28 4 25 9 36 10 5 6 31 13 31 2 33 32 20 27 35 9 1 7 4 20 18 14 25 30 16 17 15 7 2 36 7 22 15 24 11 20 26 26 23 11 2 4 38 36 15 32 2 9 27 12 28 7 16 39 35 3 1 19 25 23 25 29 19 29 35 8 33 19 6 31 37 3 37 38 17 12 23 39 30 2 7 25 18 5 31 38 14 39 24 18 36 19 9 9 11 5 19 23 11 30 18 23 13 11 14 25 2 8 35 27 36 4 34 37 24 8 7 22 12 5 7 38 22 35 24 17 19 21 31 34 4 19 21 5 25 37 10 14 20 1 31 32 32 27 40 13 35 18 10 1 28 15 33 12 13 18 25 30 40 38 19 8 4 15 12 15 17 4 14 12 30 33 38 2 10 10 34 11 6 34 34 18 31 35 15 31 35 30 31 8 22 25 30 3 29 18 2 11 10 6 29 21 32 18 13 26 39 37 37 18 13 2 24 29 17 37 20 28 39 31 22 40 3 3 16 10 6 35 25 13 3 30 37 36 7 14 29 10 8 10 23 14 16 26 11 28 23 21 33 14 34 1 6 36 6 4 32 9 39 33 1 9 24 12 14 33 26 33 36 36 13 5 15 33 10 11 9 27 34 24 39 5 31 16 28 18 22 28 1 23 13 34 24 19 23 32 39 22 18 38 1 22 15 10 2 28 38 13 15 15 2 36 14 27 39 28 25 33 39 25 4 38 7 40 36 22 29 6 26 39 8 32 7 10 18 21 38 7 10 24 13 25 25 13 12 34 27 17 10 39 5 11 11 17 30 25 10 11 13 13 22 37 11 10 27 35 8 31 34 19 29 16 39 39 19 30 35 37 37 29 27 13 11 19 20 18 32 4 40 25 31 10 31 19 11 22 12 19 39 35 38 19 19 2 33 6 4 5 15 38 17 3 11 12 17 34 19 9 2 21 27 23 13 9 4 25 16 13 6 3 7 34 8 17 21 12 36 17 16 8 1 34 13 19 23 14 2 29 31 22 11 18 6 39 9 31 34 1 19 24 21 15 29 5 12 25 10 22 33 10 30 24 28 33 4 33 26 20 12 9 24 6 11 32 23 11 36 33 23 11 17 5 30 5 36 5 11 9 21 20 40 38 25 9 36 27 37 10 15 7 19 38 9 3 33 38 17 14 25 9 2 13 29 36 26 16 3 4 25 16 8 9 15 26 37 39 24 39 18 21 18 19 22 36 7 10 18 13 6 18 16 10 34 14 3 6 7 10 13 38 24 21 12 26 6 25 1 21 12 2 25 37 27 25 28 12 18 19 10 40 32 20 16 4 14 20 10 19 10 10 9 29 28 10 7 25 14 26 11 39 12 17 38 2 16 2 35 36 37 27 17 14 36 36 13 22 5 2 40 35 9 25 24 38 32 34 37 36 28 23 18 11 32 26 25 11 9 37 23 28 3 17 36 15 31 40 6 11 4 22 27 20 1 2 30 2 37 37 2 30 3 34 31 4 38 11 14 38 10 9 26 16 5 38 39 32 1 24 30 39 7 28 3 17 18 11 28 10 15 39 1 14 17 1 39 36 14 25 12 3 16 27 33 25 14 34 38 23 33 34 8 39 24 7 6 33 6 2 12 13 18 36 23 6 11 6 4 35 23 1 30 40 23 5 27 22 10 18 2 39 13 13 11 40 30 2 1 1 33 34 1 19 39 5 21 27 18 3 22 22 23 19 14 4 38 20 2 10 14 8 4 33 22 11 5 12 36 26 21 20 13 11 7 21 18 19 20 34 4 1 37 21 32 40 16 36 2 15 23 26 25 14 38 34 18 1 13 7 7 17 31 30 38 33 38 11 24 16 14 22 31 15 28 23 10 11 16 7 36 31 2 4 26 27 19 32 14 32 5 21 40 2 34 28 10 13 23 39 5 25 24 12 39 15 2 31 16 4 24 10 17 12 32 6 4 1 31 5 23 30 31 2 4 9 32 13 8 26 1 18 28 3 29 27 24 27 29 32 19 11 2 14 6 14 21 2 39 17 6 21 22 18 22 2 39 32 5 26 38 40 12 4 21 18 6 13 13 23 10 12 14 15 23 2 22 28 5 14 18 18 4 29 21 31 8 35 6 7 15 16 13 30 28 3 30 8 25 21 34 3 19 40 40 16 1 8 22 7 9 12 16 10 25 40 15 30 25 7 7 20 9 23 29 13 26 28 38 15 32 1 4 36 10 35 22 40 27 32 27 40 28 37 21 5 26 5 21 30 15 38 23 36 9 37 3 7 40 7 28 15 38 9 33 21 29 6 8 5 33 8 24 25 22 24 38 26 15 14 31 7 36 13 39 25 11 27 4 29 10 20 39 27 38 35 33 34 36 16 28 31 29 5 5 22 17 20 3 28 33 34 16 22 3 22 21 36 8 10 15 30 5 35 37 13 30 38 8 13 18 30 27 19 24 5 2 11 15 24 19 20 40 7 27 29 19 16 7 15 12 32 26 26 14 16 3 36 4 23 11 20 14 20 38 16 19 17 8 25 13 1 6 2 21 34 30 17 30 12 22 15 32 16 34 9 10 17 7 14 2 26 3 16 17 22 37 38 5 33 33 21 24 24 33 27 9 25 4 1 30 6 1 26 19 8 24 6 20 39 11 38 26 1 2 23 11 32 36 7 4 7 27 40 18 18 37 39 29 27 7 17 33 17 11 36 8 7 8 36 27 32 7 26 18 32 13 34 25 35 10 1 21 11 37 24 6 8 7 25 10 25 19 12 30 25 31 9 23 5 12 8 13 17 15 27 31 13 5 29 27 27 36 33 8 1 39 31 18 26 10 24 24 3 37 39 3 22 34 18 1 11 22 15 33 13 40 19 32 9 14 32 24 38 24 20 21 23 16 8 16 13 20 25 20 36 18 32 6 25 3 2 8 16 37 36 32 36 15 1 5 39 17 33 1 16 2 25 5 1 26 14 24 27 11 28 33 15 6 21 4 9 6 3 6 40 19 13 1 31 13 35 13 8 32 15 40 27 31 3 4 1 25 3 8 12 19 22 6 26 20 29 38 40 2 9 18 28 5 40 23 37 32 11 4 10 2 22 19 13 35 4 11 8 2 12 22 28 30 31 28 35 31 25 1 24 31 19 32 22 27 40 3 14 20 2 26 20 25 40 14 12 1 39 15 36 39 36 23 10 29 40 37 4 27 28 4 11 14 6 11 36 29 27 40 6 4 38 34 11 9 38 35 34 26 23 10 15 18 6 33 30 24 21 14 37 13 16 39 34 34 34 18 21 21 3 35 19 34 34 18 32 35 40 1 22 23 28 32 12 2 27 7 29 9 21 36 26 20 9 20 14 6 13 24 2 29 4 22 13 1 27 34 4 17 18 34 3 19 32 24 40 16 36 21 29 8 33 2 23 20 3 18 33 13 37 33 18 8 1 38 25 2 11 40 27 23 9 15 35 8 21 9 39 35 7 14 27 26 38 32 26 7 2 6 31 32 3 23 22 25 33 6 10 15 24 24 17 34 34 34 26 21 24 3 8 13 38 37 13 12 2 6 40 5 11 24 11 21 25 35 28 11 30 8 24 15 16 31 20 37 25 25 29 8 19 21 10 1 12 20 18 27 27 30 23 22 2 36 37 27 40 2 9 16 34 21 3 37 34 15 19 27 34 36 28 20 34 40 22 38 2 30 17 40 26 32 27 10 29 29 24 13 26 10 9 5 6 10 17 31 3 34 3 8 38 17 4 18 9 4 11 3 34 27 6 1 16 37 20 26 38 6 6 25 25 17 19 21 37 34 35 32 15 6 15 27 34 2 5 33 5 6 22 25 24 5 33 1 40 40 18 29 20 8 31 1 9 6 34 8 33 40 16 5 38 7 27 11 4 16 7 22 6 4 33 24 32 21 20 29 37 37 23 40 39 38 14 11 8 16 33 15 36 23 13 38 30 1 16 14 20 6 19 10 37 33 17 15 3 22 23 7 21 4 10 21 33 24 31 28 7 1 33 37 25 27 21 36 25 35 14 2 14 31 12 27 40 38 16 39 11 6 7 28 36 4 29 1 26 1 13 25 17 12 39 6 37 32 3 34 20 19 32 36 37 21 24 39 4 30 5 23 38 14 3 17 39 33 8 10 13 12 35 16 21 15 27 27 30 40 20 19 14 8 38 36 36 12 2 14 9 3 34 33 7 17 10 9 27 18 17 15 22 30 27 17 4 22 15 25 31 13 40 9 38 27 27 18 11 6 17 24 27 7 13 39 2 1 27 1 29 19 20 4 23 38 12 18 35 3 8 14 11 28 19 12 1 31 7 29 32 30 13 35 13 24 16 29 28 5 9 18 22 30 7 29 18 12 34 37 35 33 10 20 6 17 27 23 12 28 9 39 5 39 4 2 30 34 21 9 15 6 7 11 40 32 37 4 39 19 39 3 29 16 36 6 40 10 10 32 24 27 24 21 26 3 28 28 32 30 35 40 32 12 24 21 32 20 29 39 29 38 40 29 34 4 11 28 17 23 1 28 15 37 30 11 31 6 28 29 38 35 1 6 40 22 7 10 3 3 1 35 36 37 37 15 18 3 1 27 2 20 21 31 11 39 22 39 18 31 24 4 17 32 2 28 37 5 2 35 8 7 11 29 4 2 29 34 19 22 6 7 32 6 16 23 7 11 20 35 21 34 13 5 8 31 36 23 23 11 20 31 29 1 23 19 31 29 15 20 11 11 8 40 4 32 23 10 29 8 16 14 13 13 25 21 31 33 15 31 2 34 32 17 7 1 39 5 3 20 8 31 11 6 4 18 24 9 30 35 14 10 8 5 23 38 12 15 32 14 7 39 39 30 40 36 5 6 17 37 9 32 11 6 12 34 7 22 9 40 21 20 15 14 27 9 21 19 4 40 19 32 40 11 4 20 11 38 9 8 38 26 16 20 15 19 23 11 25 17 12 36 30 7 20 36 15 11 25 29 35 23 24 39 5 33 27 34 28 8 34 5 15 36 14 22 39 34 3 19 2 3 27 9 26 12 28 2 25 27 27 24 5 6 24 38 31 38 28 12 20 2 18 35 28 37 27 30 7 34 29 6 30 4 30 3 39 4 38 30 32 35 12 22 1 5 4 15 20 28 29 25 5 32 25 6 4 13 11 12 6 40 25 40 2 10 8 20 4 15 23 7 11 27 24 18 24 15 31 20 6 21 22 32 5 27 18 36 18 31 32 13 10 36 21 18 36 2 29 35 6 32 2 34 31 8 3 13 32 25 13 26 10 19 24 15 22 10 16 26 20 26 24 29 13 3 40 12 31 39 34 1 9 5 40 27 1 36 31 30 1 15 5 28 16 33 12 7 9 36 17 17 9 13 38 38 20 12 40 22 15 8 10 1 31 2 26 21 34 35 12 19 35 9 6 21 30 17 38 36 3 28 13 13 2 23 11 13 6 19 25 35 25 11 25 13 28 23 33 11 33 30 30 38 38 23 14 21 39 36 20 31 13 29 34 37 26 21 25 34 34 20 8 26 8 3 15 6 6 40 7 35 5 3 23 13 35 20 24 4 17 9 9 17 15 35 6 25 5 39 36 39 3 32 38 29 25 22 16 22 17 7 4 7 8 5 9 20 27 10 25 35 29 16 37 12 18 24 15 14 31 12 1 15 35 13 1 35 18 5 37 36 28 13 39 30 7 9 19 33 18 28 22 21 23 34 22 34 16 34 17 12 22 5 27 19 25 30 35 6 25 24 20 2 8 18 23 15 21 37 20 30 1 22 11 26 39 3 29 2 39 9 4 34 33 31 32 33 6 21 27 6 36 21 33 31 34 6 7 17 9 38 40 32 40 5 16 12 2 13 4 13 38 20 19 19 24 26 23 18 13 26 21 14 7 28 8 29 8 30 18 5 21 12 24 21 25 7 6 35 2 35 30 35 40 21 8 15 9 20 35 37 20 20 29 7 28 15 38 4 1 22 12 33 26 28 14 26 36 26 19 22 11 28 32 29 24 20 16 37 24 1 32 6 35 15 8 37 19 26 1 9 25 19 35 21 7 14 16 13 19 14 18 26 30 12 38 28 33 13 9 18 17 24 34 10 36 19 4 1 14 35 36 37 9 29 12 30 39 3 26 39 28 24 7 23 15 9 27 12 27 35 10 28 38 25 18 26 30 27 33 23 6 37 2 11 16 27 28 19 6 32 9 40 33 22 27 9 18 9 12 30 12 1 3 25 5 15 32 16 20 17 20 12 11 3 30 25 15 6 19 3 16 3 22 34 16 36 9 2 20 23 21 40 36 34 27 39 27 38 9 13 38 38 3 36 9 20 22 29 27 34 19 21 23 11 40 32 21 18 32 4 34 36 34 19 30 2 31 40 26 24 18 25 20 34 30 25 20 39 13 10 1 29 16 32 7 20 30 2 33 32 35 18 25 4 22 15 38 13 2 40 15 1 7 31 32 2 25 12 33 34 27 20 4 28 2 13 35 16 5 39 19 2 28 17 10 36 39 2 11 25 18 28 18 6 24 18 35 2 22 18 26 6 22 6 3 5 33 9 10 6 22 26 29 14 25 11 28 4 20 15 2 15 3 3 27 37 15 27 22 22 6 5 24 27 10 25 27 12 26 6 34 38 8 18 1 39 35 19 11 9 5 12 2 6 35 23 27 35 14 4 13 21 12 4 20 13 37 10 2 28 35 37 16 33 11 39 23 38 21 5 6 5 31 2 3 31 32 21 18 39 13 34 21 15 19 33 39 14 19 14 5 1 31 19 28 15 35 15 13 23 6 25 18 14 8 14 32 40 5 3 16 8 31 24 36 18 10 27 17 33 8 40 17 6 35 33 38 7 37 6 18 3 13 20 7 9 31 9 7 14 23 20 37 35 1 3 36 35 34 1 19 3 3 13 40 12 26 30 25 19 35 3 5 25 29 8 3 22 14 31 4 37 39 5 31 3 10 14 8 36 31 34 13 26 40 33 6 29 40 10 10 10 29 30 24 40 31 10 2 3 8 2 5 21 29 8 23 20 6 10 24 3 6 33 30 10 4 26 26 15 16 26 2 35 19 25 32 18 21 20 39 38 35 10 15 23 5 33 1 26 40 8 24 1 38 6 13 24 20 11 35 35 17 24 34 36 15 17 21 5 12 39 11 24 22 38 14 39 1 2 40 37 31 20 3 24 7 30 15 3 28 31 37 31 34 12 9 14 17 18 20 3 4 1 23 34 28 22 5 27 17 29 9 4 5 11 38 35 21 5 39 2 36 14 21 35 18 6 30 29 26 37 38 3 22 2 14 9 34 7 38 13 38 10 27 18 40 20 39 12 21 7 30 16 35 26 1 32 2 26 39 40 35 6 26 27 13 37 21 6 28 4 2 2 5 3 5 2 12 23 32 24 30 30 34 24 39 37 16 37 16 24 19 16 10 12 5 13 39 19 36 27 5 31 12 24 15 15 11 33 31 15 4 15 35 30 26 14 25 3 4 5 18 13 32 22 27 27 28 9 38 40 27 19 38 32 2 6 4 20 36 20 3 27 26 28 12 26 18 29 5 8 37 5 30 8 14 32 38 27 18 37 2 38 3 29 31 25 3 20 39 18 6 6 3 35 38 35 27 35 18 1 28 13 15 12 13 3 37 28 20 31 9 10 30 27 40 25 19 6 19 13 40 30 28 7 36 16 22 36 20 37 9 6 16 25 19 4 7 15 33 17 18 27 33 4 6 38 37 29 1 21 9 7 28 24 28 31 9 36 21 7 34 40 29 20 13 26 13 14 38 25 36 4 29 28 28 19 18 35 38 32 30 13 35 26 24 17 7 5 3 16 25 31 22 33 10 3 37 1 23 15 29 5 12 14 11 32 21 20 26 32 34 31 25 2 32 28 34 37 18 32 31 39 24 8 19 33 30 29 33 15 33 38 6 21 15 10 6 39 14 15 35 18 31 19 2 13 20 7 7 24 20 13 4 35 18 15 38 1 6 6 40 36 25 28 40 31 4 4 24 32 13 36 28 18 18 25 27 25 27 13 14 9 32 1 37 22 7 21 7 6 24 8 24 9 24 2 27 16 17 18 8 3 8 7 15 32 28 38 22 37 12 9 12 29 18 12 33 29 19 19 23 11 11 32 39 27 34 38 34 26 23 7 19 31 28 27 31 31 5 36 14 40 21 14 15 1 1 11 33 13 4 8 31 18 11 26 21 9 34 34 3 10 24 29 40 36 11 29 6 27 2 36 9 33 19 2 35 19 20 3 40 23 18 30 14 17 4 38 29 2 34 20 24 38 22 28 20 11 33 25 35 26 22 25 36 30 8 2 21 7 40 6 39 30 40 35 6 27 26 13 38 8 37 11 36 6 10 29 18 31 2 36 3 22 4 36 34 16 12 31 7 17 9 39 1 7 8 23 15 16 16 3 14 29 30 1 40 13 29 13 21 37 11 12 35 24 31 3 19 30 25 16 33 34 12 10 13 30 30 24 13 22 15 19 27 15 20 32 8 35 21 27 20 29 20 11 12 29 27 20 3 23 29 16 29 17 33 25 6 40 6 12 35 30 18 18 31 35 22 40 20 29 22 9 16 17 38 6 11 8 26 17 4 31 8 38 11 9 24 32 14 32 22 32 6 17 37 8 21 6 39 12 5 18 14 25 17 16 24 10 40 19 8 24 16 39 4 30 10 14 23 12 12 16 21 39 19 4 13 21 24 5 33 28 30 11 12 22 29 25 34 16 16 10 34 28 20 6 1 29 26 15 30 2 8 36 19 3 23 15 25 17 35 24 38 1 14 25 24 4 5 5 23 26 8 35 22 40 13 11 40 35 1 22 1 35 23 18 39 40 34 12 37 17 14 37 15 30 15 21 8 35 6 37 1 27 15 23 34 17 31 16 37 24 39 11 9 2 21 38 2 12 30 24 35 12 3 25 10 19 30 1 30 8 36 18 6 23 16 5 11 21 29 11 1 27 23 9 33 4 31 35 19 29 35 13 27 20 14 14 32 35 35 22 19 35 40 1 18 20 26 16 3 22 35 29 22 30 3 29 14 30 12 25 2 17 36 9 12 22 13 23 40 39 26 33 39 6 3 2 31 33 3 15 4 5 35 18 40 27 35 36 33 5 34 18 30 21 21 39 11 37 23 18 14 7 7 39 20 35 16 18 22 34 8 5 37 26 8 28 13 28 4 31 3 12 19 7 24 3 10 30 8 20 8 10 4 28 40 37 26 26 33 35 16 19 36 36 38 14 6 40 27 19 19 21 7 5 28 15 21 11 34 21 31 2 38 29 17 13 15 10 4 26 3 36 22 40 9 9 36 4 9 33 16 34 13 38 32 37 22 1 38 1 28 13 12 32 14 5 38 40 5 14 19 25 35 25 27 29 3 14 36 2 3 31 10 35 37 6 27 18 35 3 25 27 34 30 28 19 14 33 21 40 11 8 23 37 32 39 4 15 15 5 18 15 33 32 3 2 14 7 30 29 8 35 20 25 40 4 10 31 18 31 23 39 28 32 3 29 28 40 39 31 5 4 40 35 6 36 21 23 33 28 34 16 12 13 4 23 27 15 30 26 20 3 40 8 14 2 11 34 33 31 28 10 16 12 22 13 23 23 39 30 2 17 14 2 27 4 20 11 21 28 24 7 26 22 8 31 23 39 21 17 16 10 38 2 33 11 31 12 32 6 5 38 3 22 25 22 33 20 32 7 19 11 2 34 40 13 17 34 26 19 7 19 22 12 12 35 1 2 33 35 20 40 9 26 21 40 29 28 30 27 21 25 23 31 39 26 10 18 39 19 27 14 21 22 32 34 33 29 22 19 17 28 12 23 27 31 30 21 19 25 1 38 25 18 11 15 38 3 13 3 4 34 26 1 29 24 31 9 31 10 29 11 3 11 10 21 26 9 25 26 33 4 39 35 40 25 14 35 26 25 26 39 17 20 35 4 10 31 20 30 26 12 38 34 4 40 10 36 26 13 21 3 21 14 1 32 3 39 1 7 15 18 6 24 24 24 22 9 24 7 31 35 14 16 37 18 26 22 20 26 19 12 19 38 38 13 1 5 14 31 17 13 11 39 28 20 26 29 37 4 38 31 3 34 18 37 29 17 13 13 28 30 35 36 25 31 8 15 32 6 19 13 40 15 20 40 12 9 25 2 39 3 20 19 25 5 1 13 18 16 20 13 11 30 19 21 40 5 5 28 4 34 21 9 28 27 38 30 30 7 30 27 6 2 24 9 8 3 25 1 12 33 3 36 15 1 26 33 29 21 6 13 16 27 35 23 1 3 33 15 21 14 37 17 6 28 21 39 5 20 34 2 13 20 9 19 7 13 13 37 1 25 12 29 19 24 34 2 39 18 9 22 33 3 2 14 11 30 36 36 26 9 4 31 29 20 8 26 8 13 26 19 8 27 36 21 6 3 4 23 35 37 26 16 39 38 11 4 1 28 35 35 21 22 9 26 29 35 34 13 14 8 40 2 40 33 16 10 38 22 37 29 36 26 32 1 26 6 21 2 23 17 34 21 39 34 8 15 18 29 31 2 17 27 7 36 12 27 21 35 2 15 31 2 33 15 28 9 33 11 20 28 14 8 2 23 37 7 20 14 37 33 5 14 40 39 25 37 21 30 25 10 9 4 16 31 17 31 4 1 7 25 10 40 3 2 31 5 4 32 2 36 14 10 29 2 30 5 14 3 23 35 27 7 16 23 22 35 19 27 31 10 14 25 32 37 7 33 11 18 28 7 38 13 22 2 31 33 28 40 3 35 36 31 29 17 14 40 13 11 27 9 39 13 40 11 18 12 15 34 11 35 8 21 8 5 22 17 1 33 25 12 32 17 12 9 21 12 18 10 16 37 25 26 34 28 9 12 20 35 18 32 10 19 15 19 16 28 30 12 29 39 19 23 31 29 3 1 24 16 12 20 24 19 11 22 24 28 8 33 17 16 22 22 7 21 6 36 39 24 32 5 34 11 38 25 28 30 19 8 7 7 26 20 2 36 21 25 6 36 29 15 40 15 12 11 20 33 39 22 10 9 38 11 35 29 19 15 6 12 5 30 16 21 30 8 25 38 31 14 19 39 24 15 21 29 5 2 9 11 4 23 18 20 35 6 10 2 18 27 3 6 2 3 21 5 1 22 13 40 4 32 3 34 32 31 16 28 10 7 26 31 23 39 12 18 5 5 33 38 20 14 35 27 13 7 17 34 23 28 29 40 6 31 5 36 6 26 37 33 19 30 7 16 23 23 30 16 8 12 30 2 7 7 24 29 12 5 38 28 21 20 22 18 19 21 29 8 30 5 25 15 28 6 13 10 40 9 13 36 10 24 12 19 11 9 2 16 24 34 13 40 9 14 39 13 25 2 22 14 39 32 22 15 18 39 24 38 37 7 7 3 22 10 9 36 2 31 12 5 17 21 1 10 2 23 25 25 29 34 26 19 10 6 9 32 40 11 39 26 28 26 33 18 13 11 8 35 5 31 18 15 36 20 18 3 34 7 3 4 37 6 9 15 25 32 18 26 36 24 4 26 4 29 21 27 11 38 16 33 25 27 27 16 17 29 18 23 30 21 6 4 40 20 1 7 37 7 32 22 24 7 4 32 28 28 16 32 16 34 16 14 33 33 29 10 27 6 24 7 32 14 36 13 6 17 36 13 19 5 1 13 7 18 29 26 14 28 35 30 28 19 7 26 7 39 39 11 36 12 26 10 1 22 28 25 30 17 20 11 20 9 21 9 27 8 10 4 26 2 15 12 28 37 4 33 39 15 32 23 16 6 20 31 23 10 5 25 4 13 38 9 35 5 34 21 33 27 30 5 7 5 38 8 37 26 19 36 26 13 10 6 32 35 21 39 35 35 13 5 7 13 35 6 39 29 38 30 14 35 20 27 13 8 38 4 24 40 15 33 17 4 1 6 6 9 27 34 22 31 34 3 33 32 10 28 27 5 10 15 36 34 31 23 20 37 14 7 20 34 37 18 29 34 9 27 26 36 16 15 7 33 40 11 27 23 26 3 8 5 23 1 24 33 16 35 13 7 1 11 3 15 19 11 30 35 4 5 4 24 22 14 39 17 24 19 18 33 24 28 35 13 3 4 27 33 32 27 11 21 31 4 16 38 33 25 31 7 28 17 34 12 36 24 23 35 3 27 29 7 11 16 29 22 9 8 39 29 19 1 1 9 29 22 25 14 19 39 30 31 19 19 4 33 6 12 22 13 9 14 6 1 16 29 34 8 34 14 23 27 5 21 25 10 18 24 25 38 7 10 23 14 6 21 11 10 19 12 38 12 23 12 34 5 36 39 21 28 26 25 35 12 16 38 9 40 38 35 29 37 12 32 16 29 11 12 23 16 10 1 17 3 20 11 26 26 33 19 10 3 7 18 11 7 10 3 26 29 27 4 25 17 9 5 25 6 30 25 19 4 5 1 21 36 23 24 19 1 33 23 39 1 35 4 30 5 34 32 31 31 22 24 1 7 28 31 21 31 29 27 36 7 24 2 2 19 18 16 37 23 23 9 9 23 14 31 15 23 14 35 11 25 3 25 14 26 4 38 27 5 30 29 34 4 31 7 25 15 29 8 34 7 21 11 11 35 10 37 35 11 32 24 6 38 30 2 5 20 4 3 16 26 35 19 25 33 6 32 22 32 35 20 8 29 9 29 1 16 21 1 40 32 23 1 27 27 35 8 30 5 38 38 15 7 22 38 36 34 11 16 10 3 23 1 33 22 26 22 32 3 29 4 3 16 27 16 4 40 40 13 10 12 40 37 30 25 4 29 24 11 14 9 40 18 13 15 31 31 40 29 37 20 32 15 11 13 13 4 38 24 27 39 33 39 37 21 26 30 8 19 37 1 27 6 12 34 31 25 39 15 21 23 2 8 24 8 40 21 13 13 10 3 28 29 32 25 39 33 14 3 38 3 28 30 34 38 15 7 39 15 27 34 30 17 37 38 1 19 19 38 8 37 28 28 23 20 13 4 5 18 25 15 40 21 32 37 31 11 28 13 34 10 35 2 9 26 23 20 9 8 13 37 29 38 25 21 13 37 19 15 13 26 2 28 14 10 15 28 23 35 20 7 14 27 29 39 38 14 7 30 37 1 27 34 38 6 37 31 5 39 32 1 6 31 16 6 33 30 31 5 18 25 23 19 19 21 18 20 25 26 26 14 21 3 6 35 27 37 5 34 37 6 17 19 5 12 13 32 33 24 35 30 31 37 26 32 7 39 26 21 28 9 19 19 15 22 24 4 38 28 6 7 16 24 5 10 24 19 2 34 7 20 9 10 22 31 8 33 21 37 29 29 38 9 39 28 38 40 39 15 19 17 13 11 39 18 24 3 27 22 1 18 13 14 14 1 11 18 32 4 2 28 28 11 28 33 3 24 35 22 35 33 14 29 24 10 16 11 28 10 21 33 14 10 10 18 10 26 1 35 15 11 20 40 25 16 20 36 40 36 7 2 34 10 21 11 21 17 22 22 39 14 24 25 25 3 1 11 31 13 2 22 29 21 24 29 5 12 1 3 2 3 19 9 1 38 12 10 24 32 20 6 20 6 23 29 4 24 38 13 16 33 4 34 23 31 19 3 38 38 34 1 27 28 28 4 13 34 2 20 35 10 39 1 2 2 27 16 35 8 7 13 2 37 17 21 20 30 14 16 3 19 40 35 29 24 19 7 11 2 11 12 2 28 26 2 21 25 17 26 30 22 25 38 33 34 3 8 21 40 29 6 40 17 36 31 26 25 30 35 15 4 3 30 31 26 24 29 11 37 36 10 33 19 26 26 39 27 15 11 25 24 40 35 12 1 22 7 11 29 1 38 15 9 39 7 23 5 26 15 8 40 37 40 2 20 27 40 21 7 22 14 21 29 14 34 28 9 1 5 30 32 17 36 16 18 5 18 5 27 5 39 21 16 25 32 11 10 14 16 12 31 30 15 27 20 9 17 17 13 18 23 8 28 35 13 21 20 5 30 7 40 33 26 31 24 2 37 21 7 35 35 32 32 22 18 30 7 9 2 32 27 3 18 1 29 36 28 22 3 36 22 11 12 27 29 14 4 4 20 35 37 31 14 16 3 4 27 12 2 17 34 12 9 6 15 13 28 1 16 10 9 19 37 7 10 6 25 16 20 3 24 35 37 2 18 25 19 22 21 28 34 15 20 39 20 15 11 25 39 19 7 38 5 15 13 23 8 19 30 13 34 36 37 35 30 6 23 11 19 15 37 2 26 9 25 36 36 18 15 23 11 5 17 10 23 27 38 7 5 2 36 1 34 9 37 16 32 18 11 23 40 8 27 24 25 40 18 33 31 2 20 7 34 6 33 12 33 7 22 33 4 22 39 37 37 3 17 16 22 25 6 19 8 26 18 23 28 25 31 17 36 21 32 13 16 4 21 22 39 1 32 9 15 14 8 36 23 36 33 11 26 25 32 23 4 1 22 14 8 17 39 18 24 33 24 29 16 29 15 22 3 40 29 9 36 15 32 40 32 3 7 33 10 19 9 28 26 13 22 14 13 12 39 19 5 13 20 15 14 31 10 37 28 11 19 22 9 25 12 34 22 24 39 17 29 17 21 5 22 23 34 10 15 29 8 25 36 40 37 26 28 26 38 27 38 6 17 9 2 8 17 1 22 22 6 26 11 8 3 28 32 2 22 13 32 6 40 30 27 23 26 9 16 39 34 4 3 18 12 12 22 36 13 31 20 12 26 39 2 35 23 25 4 33 4 12 12 17 30 31 5 15 9 29 16 9 1 5 3 39 20 36 2 20 10 36 22 26 32 1 23 10 8 5 9 9 23 18 37 26 38 21 36 1 39 18 37 13 15 3 31 26 19 37 14 24 32 34 17 30 10 16 30 12 39 16 33 10 15 3 21 19 27 17 23 14 33 15 12 29 40 40 16 29 14 11 12 16 31 22 19 35 26 13 4 15 39 35 7 27 12 17 9 13 38 36 11 36 27 25 7 13 25 28 37 11 13 39 39 28 28 15 29 31 36 38 1 14 35 37 14 37 2 15 34 8 18 25 6 29 8 23 1 9 32 12 35 6 10 22 36 14 37 2 32 5 3 13 40 30 4 20 26 15 16 2 1 28 9 25 6 4 7 18 17 3 38 31 5 37 4 34 26 3 21 11 25 14 11 15 34 38 25 10 2 3 17 37 8 18 16 23 26 21 17 15 9 30 38 7 26 33 18 22 26 27 21 4 24 19 31 23 26 39 29 16 35 28 15 5 27 31 37 9 5 18 1 33 37 17 18 40 10 21 5 12 1 3 1 34 12 38 39 27 35 27 37 39 12 20 9 36 40 36 30 14 27 40 4 13 28 6 10 19 29 32 29 30 1 29 14 10 8 13 24 18 2 28 10 14 26 10 35 21 6 26 15 30 35 39 15 21 3 26 38 25 18 23 11 36 26 16 35 19 11 3 2 14 25 38 17 20 33 31 25 17 33 13 12 31 2 40 25 4 40 13 12 25 3 26 7 38 29 1 25 31 7 35 23 12 34 27 27 19 40 31 27 6 11 9 22 9 15 1 17 20 29 1 36 40 31 4 8 14 21 21 19 8 32 19 14 16 33 3 32 37 29 22 15 34 13 40 23 8 32 1 21 22 14 21 34 27 4 30 1 27 23 13 39 20 35 9 7 30 23 36 4 26 29 10 22 6 25 21 32 23 11 33 15 26 21 17 33 38 6 24 15 32 34 24 38 22 30 21 28 23 32 32 19 30 26 5 20 17 16 19 10 18 31 40 21 30 35 8 26 34 11 7 38 29 18 13 33 7 11 36 14 8 18 26 38 13 24 28 40 2 4 2 11 33 40 30 11 4 27 17 31 35 13 12 26 33 2 35 30 23 24 24 15 21 17 6 19 10 27 14 3 6 35 15 24 1 23 28 19 21 40 4 33 20 17 35 31 13 20 15 13 31 12 35 32 4 5 28 11 12 37 3 5 7 12 17 21 28 40 30 24 25 4 17 28 36 38 3 32 31 14 33 40 4 5 10 14 28 3 24 7 11 21 1 22 18 4 21 25 8 25 8 11 20 12 8 17 31 40 30 2 15 16 23 1 16 7 3 17 25 29 13 29 31 37 11 3 19 13 18 39 32 38 34 8 31 29 16 11 13 35 27 40 29 17 33 14 39 30 40 15 16 1 23 14 31 21 12 34 1 30 27 24 8 2 27 39 38 30 5 15 6 36 4 26 35 13 30 29 2 13 5 24 32 3 29 7 9 8 40 40 23 19 4 6 21 3 37 25 25 28 9 10 30 37 26 4 38 35 10 23 23 11 2 15 6 6 39 23 25 40 34 29 2 15 25 28 3 31 33 5 21 31 29 19 2 25 38 8 32 27 17 38 29 29 26 9 9 38 14 8 3 9 1 39 10 2 38 37 19 8 16 30 11 33 9 31 19 9 19 24 23 16 25 19 31 15 22 37 19 27 29 40 36 22 1 22 23 29 31 35 17 30 6 11 6 30 30 38 34 10 31 33 5 35 3 8 16 28 7 35 36 1 4 4 32 35 13 2 11 2 22 4 30 23 38 40 10 15 12 9 32 39 21 28 23 34 33 25 7 17 12 33 19 3 36 34 19 40 36 21 10 38 27 10 40 35 10 3 17 4 9 15 25 20 8 32 26 23 13 15 9 10 31 21 17 10 40 11 16 33 14 26 1 8 6 11 38 36 27 22 39 5 6 36 32 34 24 30 2 35 3 32 23 6 38 16 19 37 16 34 32 15 23 11 25 3 2 32 14 4 34 37 2 3 17 20 21 2 23 26 36 19 23 24 15 29 33 12 39 10 6 11 20 1 7 3 31 29 35 5 2 40 5 15 7 10 32 16 29 10 35 11 16 26 37 14 1 12 3 31 38 28 16 23 36 7 6 22 38 14 24 38 32 39 3 5 23 18 26 27 18 38 37 9 37 29 25 9 13 39 38 16 28 1 13 40 25 21 38 31 20 20 5 9 37 34 29 19 22 40 27 14 1 30 2 23 13 40 19 14 4 24 4 31 27 1 36 26 30 27 25 39 7 33 36 34 38 17 19 6 12 36 23 5 4 36 26 18 40 40 31 20 8 16 22 39 18 32 34 29 35 13 19 16 23 30 1 9 38 16 20 17 37 40 12 5 38 20 25 15 20 29 30 5 16 23 33 6 20 30 36 17 27 15 22 11 19 31 29 14 39 4 30 21 33 37 22 23 6 6 10 22 18 25 17 25 27 33 15 39 39 40 36 19 19 21 34 17 8 39 25 7 36 4 39 1 22 12 1 4 15 11 23 30 27 2 29 21 24 37 32 3 38 3 28 10 33 23 11 21 32 18 13 3 16 19 12 16 34 30 16 35 40 9 18 38 39 2 38 33 36 29 1 24 2 35 22 5 14 31 9 5 27 1 18 29 20 17 10 16 8 8 31 18 20 9 3 19 4 40 26 4 31 27 7 29 11 13 34 16 30 21 39 28 9 14 35 12 13 34 33 3 20 9 40 33 29 11 34 10 22 23 26 4 5 2 28 23 15 33 21 12 40 3 36 12 10 26 13 30 5 32 4 32 23 40 16 4 19 7 36 34 16 3 30 22 15 10 35 32 9 14 9 2 3 25 1 13 18 14 36 38 23 24 21 33 11 28 10 29 32 19 26 40 25 23 18 26 14 11 19 19 22 5 1 40 28 36 32 9 9 15 15 5 21 9 1 17 11 27 5 25 17 9 5 22 10 23 33 21 18 17 9 37 16 11 35 32 25 11 13 27 12 15 9 11 26 19 8 9 28 14 4 23 5 37 22 18 35 39 8 19 22 35 16 2 1 19 37 35 22 35 34 17 30 32 35 15 40 12 8 24 6 9 5 27 22 14 11 12 39 7 31 8 6 26 2 3 32 24 40 8 27 15 7 27 26 10 15 24 16 22 30 5 13 1 30 25 20 37 37 5 27 40 23 36 4 40 9 4 21 25 9 14 26 22 31 35 34 13 21 26 19 34 14 28 32 20 32 29 37 5 25 16 32 35 15 38 8 17 2 30 13 39 13 23 19 25 30 40 26 20 34 33 3 21 15 12 26 40 33 31 34 17 31 17 37 40 8 36 29 11 1 24 22 14 16 22 19 22 20 20 22 31 12 1 27 2 8 7 24 35 34 4 3 26 6 4 32 13 18 23 8 31 26 12 1 19 16 11 17 21 2 12 13 36 14 5 15 34 2 40 35 37 11 17 26 35 16 11 39 18 4 31 32 36 23 4 25 37 2 17 8 24 21 18 36 14 21 16 35 33 14 32 24 9 31 25 14 31 18 11 22 24 34 39 30 30 33 18 22 3 22 11 18 7 15 19 7 21 5 12 14 40 10 13 32 39 24 24 6 10 26 6 32 19 38 4 26 9 8 27 16 5 20 8 11 20 9 5 28 31 32 34 32 39 10 12 16 27 7 20 21 21 15 21 29 38 37 25 16 18 1 29 10 15 36 34 12 23 16 3 31 40 13 25 10 11 40 22 29 39 21 30 5 6 11 33 24 14 34 40 36 15 9 27 40 9 36 3 27 33 23 18 35 35 25 38 29 32 24 31 21 11 19 8 2 6 32 1 4 22 5 13 21 36 32 26 16 19 23 12 32 28 15 40 9 2 34 2 5 26 11 33 5 1 15 35 14 32 10 16 26 38 5 22 28 9 40 26 24 22 33 20 28 36 10 17 29 3 14 8 35 20 35 13 8 12 10 24 17 12 34 32 36 20 38 6 5 34 39 31 26 3 26 31 21 33 25 14 23 39 25 33 35 10 13 4 2 39 22 28 3 18 14 7 23 12 38 38 26 1 12 39 18 26 36 16 39 21 38 37 22 33 36 2 2 18 1 11 36 33 18 7 16 20 25 27 26 25 17 2 24 1 11 9 19 24 16 11 5 2 2 39 3 23 28 17 25 22 2 11 15 27 29 28 31 39 34 22 38 12 8 29 27 10 25 21 27 24 39 7 31 20 10 34 35 9 23 21 29 8 1 15 29 8 14 36 29 39 3 37 20 22 13 39 11 29 38 17 36 9 37 7 11 33 13 38 23 32 34 12 6 12 6 15 27 38 24 15 1 30 1 30 35 16 4 7 4 33 4 12 18 33 27 23 20 3 6 35 17 40 26 26 7 9 5 28 26 7 22 24 11 17 21 27 18 33 36 35 3 21 13 31 10 8 23 31 3 22 8 39 35 40 12 3 5 2 10 31 17 33 13 34 4 20 34 4 12 27 6 17 3 30 8 34 14 13 38 15 24 32 8 32 27 35 34 1 19 28 27 6 20 27 9 23 4 15 24 33 35 21 10 39 2 28 37 31 31 26 29 11 10 5 35 23 14 25 33 29 17 5 26 13 17 17 7 35 12 12 5 8 36 2 32 21 35 30 13 11 35 14 18 23 11 20 16 14 10 16 23 34 5 29 12 24 37 10 8 31 39 25 16 5 40 40 39 35 30 18 12 21 23 35 33 20 3 38 22 26 40 20 21 2 2 23 9 33 18 16 19 27 22 16 37 23 2 28 26 9 6 18 33 1 24 36 2 29 1 17 19 37 11 36 13 36 3 20 16 32 30 16 9 22 11 33 4 20 5 19 22 31 5 26 16 21 14 33 40 4 16 15 32 40 31 27 7 7 17 26 38 37 35 26 25 20 12 20 6 17 36 1 27 5 24 12 13 21 24 16 24 10 39 31 28 4 24 1 21 36 37 8 39 33 12 18 12 22 19 36 20 12 28 29 20 35 34 9 38 22 3 30 21 21 11 38 34 29 10 27 28 4 6 17 30 15 25 33 27 26 1 16 21 3 8 18 33 4 14 17 18 15 18 15 2 26 22 39 7 5 23 33 16 34 17 34 14 6 29 25 3 36 33 40 2 3 9 11 11 19 3 7 23 16 11 22 26 14 2 13 15 5 15 24 17 26 5 1 32 40 7 24 1 3 36 34 17 27 1 36 20 33 3 38 21 28 5 9 27 2 5 8 14 37 40 7 31 24 40 8 38 14 4 25 12 3 25 5 17 20 35 11 20 14 24 38 12 17 37 8 29 38 8 30 24 18 28 36 37 33 12 39 40 15 31 22 16 38 26 1 6 21 26 27 37 30 10 30 19 35 3 3 9 12 31 27 20 17 11 16 37 4 27 25 6 31 39 10 35 5 23 19 34 35 31 12 40 24 11 27 25 39 12 25 2 17 33 20 33 3 15 23 16 14 32 11 34 36 35 38 5 15 26 25 12 15 30 29 40 26 39 2 34 18 33 39 2 11 38 2 9 9 3 20 6 33 32 3 19 20 11 23 16 24 19 15 26 25 31 21 5 21 17 27 12 34 28 4 38 32 34 5 35 7 19 25 32 38 18 30 16 20 23 7 36 9 18 35 17 3 7 2 11 21 17 5 27 7 28 25 11 17 19 35 5 11 26 35 24 4 26 23 36 8 28 7 40 15 21 24 26 33 27 1 5 30 22 5 13 7 22 12 26 16 2 13 2 18 27 25 23 27 3 9 5 25 26 3 28 28 2 12 39 20 28 32 9 15 39 3 19 22 5 30 20 27 33 8 15 2 1 35 34 37 6 1 24 31 39 23 23 40 12 26 27 2 40 22 15 29 28 11 10 40 36 39 30 8 12 3 40 26 39 7 32 20 7 7 21 34 6 19 36 4 37 36 27 39 2 34 37 13 24 31 29 40 10 30 13 9 13 13 21 40 14 39 33 11 9 18 38 3 14 17 32 26 18 30 9 8 27 24 39 5 16 7 16 18 25 14 34 21 16 9 39 19 9 19 17 30 5 37 36 10 15 38 38 27 5 29 18 27 20 10 21 24 20 9 29 25 36 14 20 3 7 25 5 32 28 4 4 21 3 11 15 37 11 26 10 30 19 17 24 22 7 36 13 36 7 35 2 40 25 33 11 30 28 6 36 32 35 30 9 13 31 27 6 19 14 32 34 19 39 25 30 6 20 38 40 39 14 33 2 1 40 4 23 25 34 26 31 15 8 24 18 19 26 40 40 3 21 5 36 21 32 23 38 4 5 36 29 28 36 8 16 12 28 17 19 12 40 26 32 27 37 22 32 24 4 19 7 18 16 6 31 35 40 13 38 22 29 1 19 9 16 4 19 39 4 28 5 10 4 8 32 37 29 25 23 16 36 3 33 23 22 5 33 17 5 6 27 6 15 13 7 8 23 9 8 16 19 33 32 3 15 20 40 12 10 38 28 14 15 39 33 4 17 32 20 13 30 28 3 9 24 30 38 40 36 19 33 25 36 33 11 23 8 17 6 1 1 37 1 33 34 27 35 2 30 26 17 7 30 14 10 31 13 17 2 33 26 38 2 38 34 17 28 36 36 10 5 2 28 34 36 22 28 9 13 29 13 24 27 15 14 15 37 40 38 20 38 36 16 14 18 22 31 6 16 1 12 12 7 26 36 34 8 33 25 20 8 7 7 23 18 26 16 9 13 33 17 22 19 18 2 11 15 31 29 24 21 36 35 29 25 29 34 11 34 26 12 11 14 29 39 16 29 33 8 22 8 35 10 33 20 12 3 36 33 38 10 27 19 15 20 19 24 29 23 1 22 17 13 23 31 8 19 20 15 11 25 32 11 13 23 12 31 35 1 14 36 22 31 9 1 3 21 17 18 32 39 9 23 24 21 40 13 30 31 22 6 39 5 18 17 39 10 4 3 38 35 10 37 36 1 34 17 3 4 26 9 18 28 19 15 35 36 5 24 22 9 22 6 2 36 37 6 23 24 13 13 7 6 30 36 3 38 23 40 21 8 9 12 24 29 1 25 38 28 6 19 16 13 33 34 39 6 11 40 26 22 9 8 18 30 30 18 27 4 32 39 12 23 10 23 6 3 21 35 11 1 27 3 14 9 11 2 6 7 34 25 6 3 29 35 2 29 18 14 23 21 9 22 3 22 4 19 5 1 34 24 38 11 31 11 36 35 21 21 36 20 25 24 9 14 26 29 37 5 37 27 37 13 33 16 38 14 38 17 14 38 27 2 32 33 26 39 2 7 38 24 18 24 31 34 6 10 35 31 19 28 39 24 22 18 11 9 22 9 9 27 38 1 38 32 14 1 25 34 22 23 32 38 21 13 34 18 39 23 34 38 25 12 37 14 31 17 38 11 34 26 38 12 20 23 9 22 9 16 26 23 5 19 12 31 36 40 33 26 8 27 22 22 17 13 37 2 36 36 13 20 19 4 8 11 20 27 31 29 16 24 36 28 14 39 6 38 2 40 18 36 23 28 38 18 8 39 10 13 18 24 13 37 17 34 5 20 40 21 7 31 11 9 24 10 11 5 35 33 6 10 10 22 24 6 29 13 40 30 2 36 16 38 1 1 6 35 37 38 5 30 5 37 15 38 12 4 19 37 35 9 29 28 40 26 39 15 13 16 15 8 9 39 2 39 39 9 1 9 24 7 17 32 18 26 12 18 17 40 27 23 7 14 19 37 36 30 32 10 32 34 14 23 29 6 27 35 36 30 15 6 35 17 18 9 28 28 31 36 23 9 22 18 39 19 27 16 24 18 39 32 10 22 40 22 8 34 27 7 6 25 32 11 38 14 15 35 31 37 32 21 34 8 5 29 13 15 4 5 39 27 16 10 11 35 1 12 38 36 25 14 15 15 13 39 22 27 8 29 8 24 34 26 16 23 18 36 12 11 21 3 36 23 39 17 33 20 32 29 28 29 22 38 21 33 27 11 8 13 22 28 10 18 21 35 14 35 5 2 40 25 38 17 31 8 11 10 29 8 25 38 24 18 10 7 26 19 40 6 23 19 37 14 33 30 32 28 31 8 6 29 33 38 39 10 3 34 21 17 36 31 40 6 14 31 38 29 5 31 25 25 40 39 27 5 23 8 40 11 17 7 20 20 20 11 14 34 3 39 39 16 21 27 13 11 37 4 28 21 18 14 18 14 20 18 31 25 26 5 8 9 40 36 16 37 8 26 24 35 37 28 26 17 4 24 26 9 38 21 19 20 25 28 19 28 26 5 39 40 22 33 38 27 34 29 40 27 34 36 14 38 12 6 26 40 21 14 12 34 5 25 4 23 37 23 11 11 31 23 11 13 28 11 6 6 18 39 16 12 16 30 4 13 28 33 22 24 20 14 5 13 11 6 39 7 31 15 15 9 37 30 12 35 30 24 34 40 28 39 12 3 3 26 32 36 28 36 27 16 40 36 17 30 15 5 33 13 26 20 12 19 34 13 19 24 40 22 22 29 1 29 28 29 36 15 13 25 6 9 16 15 12 24 3 15 5 39 14 33 19 40 1 32 1 3 25 26 31 18 12 40 10 25 26 13 26 20 40 8 32 11 3 35 19 31 23 37 7 38 4 10 14 28 20 19 33 10 23 8 26 17 14 22 4 10 40 5 19 11 24 6 5 5 11 23 12 22 11 9 32 12 22 22 28 24 39 27 15 6 13 38 17 26 22 17 6 11 8 4 3 37 19 1 20 14 30 31 19 36 38 21 27 3 37 17 24 17 27 16 31 30 33 10 33 11 11 17 1 34 10 38 9 3 32 20 24 38 13 29 18 17 9 16 7 20 35 28 36 4 24 26 13 36 14 36 30 20 40 24 16 39 39 35 6 34 25 34 17 15 31 4 38 3 27 32 19 40 14 14 24 22 17 10 14 27 34 15 21 12 30 21 35 6 38 6 16 7 31 11 31 8 36 11 9 36 40 32 1 37 33 39 40 36 8 26 12 4 29 31 13 16 25 6 39 39 36 24 19 34 3 16 24 33 29 14 3 30 12 17 4 17 39 25 2 10 24 4 22 37 19 11 12 26 33 40 17 29 29 24 40 8 23 6 1 5 27 23 3 37 11 26 6 4 5 27 16 18 34 8 5 21 37 9 9 26 40 37 28 4 26 31 18 40 38 10 18 24 13 4 9 7 7 31 19 8 20 36 38 7 39 28 31 15 27 2 36 22 35 5 35 22 24 5 37 9 21 25 10 39 16 29 16 39 10 39 21 9 7 40 36 28 20 13 18 29 29 7 13 2 35 34 16 3 10 34 1 23 35 33 5 1 28 32 1 25 14 23 2 19 31 23 2 15 26 20 32 39 18 25 35 21 7 18 31 18 20 34 27 30 25 37 29 10 6 5 7 16 35 19 19 37 25 29 32 33 30 20 31 30 35 9 2 11 20 30 35 22 11 5 37 26 11 14 37 12 15 38 3 35 31 34 20 15 35 16 39 20 38 2 7 33 6 40 25 12 3 11 3 19 16 12 37 11 28 11 28 16 14 3 1 18 23 29 16 10 35 7 27 4 3 25 27 23 19 32 33 3 8 27 18 39 13 12 19 7 7 5 8 3 24 4 11 1 7 8 37 8 12 35 18 11 19 33 10 9 7 3 22 8 25 36 8 19 39 36 20 31 21 36 6 34 14 20 10 13 15 24 19 9 35 34 34 16 8 17 36 9 37 21 34 21 6 2 5 28 18 28 23 18 1 11 24 18 18 26 10 15 15 22 19 29 27 10 24 40 13 10 15 3 1 36 7 28 35 28 21 30 15 37 16 21 27 37 5 32 27 29 25 12 10 7 35 34 24 11 33 8 32 22 5 22 39 40 24 32 35 19 15 8 32 30 24 10 40 33 14 25 19 22 14 10 9 25 5 18 2 19 35 19 18 15 35 25 18 14 29 2 9 32 29 25 20 9 19 40 40 1 25 15 1 27 29 40 29 2 28 1 4 14 30 21 5 7 3 20 5 10 2 12 39 5 22 36 32 14 17 33 7 22 12 3 7 30 13 10 26 11 19 27 24 25 35 33 4 25 1 5 35 19 27 22 30 7 32 33 11 24 33 28 22 1 8 31 1 32 6 24 5 14 35 3 29 20 8 5 20 35 23 3 28 18 3 23 26 39 3 34 20 17 14 9 1 27 5 6 20 21 24 10 29 33 22 38 12 32 2 32 39 15 36 28 24 25 13 30 35 33 36 16 16 25 27 28 10 26 31 10 35 12 13 35 14 10 30 16 39 13 21 7 37 19 39 26 24 9 15 35 29 22 27 5 26 21 4 15 27 20 15 24 29 36 7 25 28 20 39 29 21 8 35 6 27 3 35 36 2 26 29 20 4 12 14 29 14 17 14 22 14 27 7 11 5 17 7 14 12 29 18 20 34 23 24 33 20 7 12 31 40 32 34 10 15 38 11 35 18 29 10 16 11 39 36 27 16 24 20 2 9 3 38 3 8 31 15 28 38 11 39 21 21 29 8 6 36 13 2 12 18 16 21 10 3 36 20 24 6 1 14 35 16 34 30 25 17 24 32 1 20 9 33 2 18 27 32 21 6 40 10 29 8 33 5 5 12 34 29 17 10 30 10 19 27 12 11 24 5 15 10 18 31 3 11 3 25 37 2 37 8 10 10 10 32 2 27 35 11 4 30 1 11 10 16 4 24 33 16 1 39 16 5 37 5 16 21 11 27 35 26 39 4 13 2 6 25 17 9 7 8 23 16 18 8 5 14 21 21 10 9 4 19 37 13 22 1 26 12 19 10 18 34 39 12 3 40 38 1 8 26 20 16 33 11 1 15 8 23 33 26 18 3 23 26 7 8 21 21 7 35 27 26 5 22 7 14 20 14 26 14 35 14 28 11 28 38 11 3 22 40 7 38 37 4 3 18 40 5 36 29 19 30 23 16 40 39 16 23 18 6 1 33 7 35 10 14 11 12 18 19 22 13 27 40 28 39 19 38 20 24 20 32 31 38 18 3 8 11 10 2 10 19 21 11 7 33 8 29 5 26 20 30 31 2 32 22 9 24 35 15 15 34 3 35 7 3 26 19 36 31 31 27 16 7 33 13 14 8 31 2 36 29 19 11 20 29 28 26 10 26 12 33 34 2 28 26 22 11 34 13 27 12 6 21 6 33 26 22 39 30 12 2 32 25 13 13 16 3 4 37 33 24 32 13 38 13 19 36 14 35 40 37 40 9 34 2 5 28 27 27 5 28 26 18 6 18 17 10 31 13 40 25 26 25 16 9 2 30 15 25 18 4 34 19 5 3 12 3 20 40 8 35 8 26 26 10 18 28 37 40 33 10 1 27 23 26 17 29 30 32 35 18 23 38 29 35 1 38 31 5 10 14 39 9 23 14 23 20 8 39 10 14 15 12 33 13 15 13 21 7 12 19 35 39 31 36 3 2 11 40 33 23 35 40 21 34 7 36 28 37 31 24 2 21 22 7 36 5 11 17 6 6 4 15 35 36 24 36 21 28 17 2 3 11 27 12 28 1 31 27 18 28 10 9 13 33 3 38 37 30 40 6 39 31 20 20 24 15 20 9 20 6 32 40 13 27 9 19 28 35 18 28 32 32 18 37 29 37 38 33 40 38 9 33 35 15 8 17 7 21 5 22 18 24 28 13 1 39 15 31 9 34 16 29 11 23 22 8 27 20 23 3 26 29 23 3 19 10 39 8 4 14 37 28 15 14 30 3 11 29 18 28 10 29 11 25 14 34 2 31 5 25 22 31 34 20 15 24 35 13 21 12 20 21 8 14 13 23 15 28 37 31 38 29 20 11 7 26 15 36 7 2 22 30 4 7 4 12 40 13 13 10 11 17 26 9 29 2 25 9 35 30 7 17 6 12 32 34 6 13 28 39 21 4 24 3 21 5 19 33 26 2 5 34 21 6 36 40 6 6 15 20 5 10 5 18 30 29 29 25 27 40 19 8 32 17 26 15 39 26 36 26 31 2 34 4 5 1 29 24 22 4 8 22 18 5 23 28 27 27 25 17 11 29 17 9 6 16 12 10 2 29 14 14 22 37 9 18 5 13 28 27 15 37 12 40 8 31 11 1 9 6 5 38 2 6 22 16 4 10 14 11 9 27 18 20 18 38 2 5 34 15 21 21 16 24 39 20 35 27 20 22 5 30 22 38 5 19 32 33 10 2 26 13 17 22 15 18 35 7 38 22 23 10 39 38 25 8 11 20 10 15 25 4 39 20 9 8 22 35 34 8 12 30 2 23 15 23 5 14 32 38 15 22 28 16 20 26 28 1 6 28 29 9 3 17 32 8 39 37 8 15 15 38 31 39 38 32 14 24 35 13 27 10 25 28 26 32 32 34 13 26 20 24 31 28 18 5 8 11 15 36 2 11 10 31 18 29 3 19 38 39 27 39 18 14 7 22 12 9 32 16 6 17 34 37 25 33 34 30 23 5 23 40 29 2 39 25 10 7 19 18 3 23 32 14 17 8 29 27 34 19 25 24 11 9 24 15 14 10 23 10 33 20 32 25 24 39 14 30 39 16 16 37 11 13 39 4 27 6 36 10 37 19 23 35 29 17 29 10 21 27 18 17 10 27 39 1 11 18 6 2 19 18 31 17 26 7 39 15 22 25 3 12 28 3 13 36 11 36 9 15 34 37 12 40 23 35 4 6 21 28 20 15 33 9 3 2 7 26 28 30 7 38 12 27 40 12 26 9 33 35 22 14 28 19 12 31 9 23 26 32 22 13 22 30 36 26 7 7 26 37 4 1 5 36 23 5 38 1 26 36 7 8 35 20 4 24 14 32 25 32 9 16 34 3 28 10 30 36 24 38 17 15 14 36 11 40 4 11 15 28 14 38 19 24 2 10 16 17 38 20 26 10 9 31 37 9 18 25 6 5 16 14 17 27 8 23 6 15 8 20 23 19 37 12 30 7 18 18 10 34 29 37 19 9 40 19 31 30 9 24 31 24 29 33 4 34 25 8 33 36 32 21 35 31 13 10 6 30 39 7 39 32 24 25 17 38 22 6 3 37 24 35 35 14 40 29 1 3 24 36 17 35 28 16 1 2 32 27 17 33 23 40 38 19 40 1 30 35 13 35 33 3 24 23 36 28 7 8 1 39 26 22 31 34 10 2 12 19 39 22 5 38 21 33 7 40 18 34 13 40 10 12 9 32 13 36 12 14 4 30 2 3 24 39 15 19 5 33 25 17 15 8 36 14 36 7 30 5 40 26 17 15 6 28 6 20 30 17 22 25 25 40 24 38 12 36 34 1 15 9 18 8 16 6 34 32 3 19 20 19 39 21 11 26 34 28 11 27 32 16 17 24 35 39 12 34 29 34 40 19 18 40 12 17 18 29 23 13 5 39 18 36 13 30 32 10 35 38 27 1 38 14 16 17 28 28 8 10 5 33 13 28 25 18 16 14 26 26 7 17 1 5 12 30 35 14 8 13 20 25 1 14 18 32 15 25 19 40 28 29 36 30 27 38 7 9 5 29 4 11 29 15 18 30 6 27 35 11 36 16 5 34 11 5 24 25 28 7 2 19 18 9 33 20 22 9 26 40 23 21 33 25 30 29 2 21 35 40 31 21 14 14 35 12 24 25 3 14 17 4 27 16 11 32 38 1 27 37 16 37 9 36 13 21 24 28 40 16 30 33 34 11 1 3 6 11 29 13 19 12 37 39 39 40 35 34 37 26 28 35 2 6 7 38 29 13 32 39 24 14 3 17 15 12 18 29 8 34 10 36 14 2 12 22 39 21 23 40 16 21 36 9 10 24 9 40 4 6 40 19 28 7 9 7 16 10 29 14 24 22 34 27 9 17 15 19 14 9 17 21 1 40 35 15 9 17 15 20 28 40 38 34 5 8 18 40 34 13 39 37 20 40 8 38 7 24 10 17 26 5 32 32 5 1 12 23 5 26 26 1 37 12 1 7 8 5 13 33 18 14 23 23 12 3 32 35 4 31 8 18 1 6 25 13 2 28 9 25 5 4 13 33 30 22 24 24 9 21 20 33 16 40 7 35 10 16 23 14 6 14 10 23 8 30 31 28 39 33 25 32 34 18 12 22 27 10 26 2 36 23 3 37 20 11 27 28 25 8 12 14 36 17 31 15 5 34 23 40 23 40 31 1 29 16 28 11 5 8 31 29 13 34 27 36 15 26 27 34 39 10 15 22 35 40 38 6 39 12 1 15 24 20 30 37 18 26 10 34 18 12 32 4 36 38 18 9 5 33 40 15 36 25 37 33 37 9 25 38 4 38 22 12 17 16 19 17 38 14 22 7 40 12 40 20 15 29 22 25 37 1 19 33 6 18 31 17 20 24 17 25 29 15 15 32 28 11 17 40 14 30 35 22 13 31 34 20 22 12 29 17 8 6 2 26 30 2 22 36 15 17 35 35 4 27 33 27 17 16 14 27 6 5 39 33 39 26 24 28 37 25 9 13 22 18 35 30 36 5 35 12 1 33 1 13 34 5 18 40 28 3 8 32 9 40 32 14 31 7 28 16 34 24 28 4 18 25 40 10 27 18 28 40 10 24 8 2 9 28 16 8 30 2 19 31 27 17 31 25 37 39 36 14 31 15 17 1 15 36 10 6 11 39 13 12 18 27 24 20 16 26 20 35 34 16 35 12 35 37 24 23 36 18 20 11 35 37 26 24 18 33 4 28 19 8 4 31 40 21 39 24 36 10 15 25 21 21 14 20 28 2 13 10 18 30 19 20 21 23 3 10 30 27 32 2 11 1 34 6 17 35 28 26 31 22 32 14 11 22 39 36 29 28 24 36 32 16 14 7 17 34 17 32 26 6 21 4 23 16 24 23 38 38 1 6 21 5 6 9 5 16 9 6 11 1 9 35 22 1 11 5 15 7 36 23 4 23 19 33 22 8 31 38 1 28 13 19 20 37 17 26 32 23 27 13 14 30 2 33 34 3 35 30 37 1 22 25 28 9 27 6 38 31 33 31 29 4 35 26 9 10 39 15 39 22 13 33 36 31 7 4 37 2 6 25 13 32 6 40 15 38 33 40 25 37 18 19 25 26 4 27 35 21 17 16 10 11 33 29 26 3 16 12 29 28 40 34 37 9 35 16 12 11 11 37 37 36 39 9 20 12 7 26 10 2 37 12 39 20 33 1 20 17 15 27 31 3 37 31 28 32 35 30 28 18 11 24 4 3 9 29 33 10 2 26 31 19 24 25 6 39 20 16 31 1 3 21 4 24 32 18 23 23 14 25 29 35 9 12 9 36 6 12 13 11 18 5 38 9 19 10 13 9 18 16 1 4 37 1 4 32 25 39 28 38 39 34 20 15 19 35 21 21 26 15 24 13 21 25 11 24 10 14 17 31 5 30 26 40 3 11 18 3 2 10 27 18 19 10 36 36 3 4 21 11 21 14 30 18 13 14 8 11 36 10 21 2 17 29 28 10 36 1 1 7 19 36 34 40 5 24 12 15 23 33 23 19 12 17 15 38 26 34 11 22 7 37 6 36 18 20 33 40 34 33 16 29 32 16 35 16 35 30 25 15 20 19 15 24 22 26 5 8 40 3 10 22 28 2 34 9 23 3 14 25 1 13 5 28 25 40 28 6 10 25 26 9 30 29 25 6 15 26 24 40 28 7 37 8 17 4 5 36 32 12 28 19 31 19 9 29 30 33 24 29 21 2 23 25 1 23 32 34 31 36 31 15 15 16 37 13 32 10 10 17 34 11 14 27 6 18 4 10 9 2 16 14 40 31 5 3 30 5 12 10 32 27 10 9 17 39 8 21 39 13 18 30 20 33 19 7 35 5 21 31 27 11 5 28 6 2 1 14 31 33 5 24 32 20 36 8 36 10 18 6 15 6 18 11 34 23 16 2 38 32 6 29 15 28 35 14 29 38 29 39 18 39 34 24 20 35 27 19 21 33 13 34 34 33 4 3 33 30 17 1 18 19 14 7 35 35 2 3 30 11 3 21 17 2 3 3 11 22 20 6 28 1 17 11 40 39 21 36 40 40 33 35 24 36 35 18 27 2 19 16 39 40 23 17 19 30 2 7 28 10 6 39 1 3 1 23 8 15 2 15 23 40 22 39 37 20 33 6 12 5 13 4 14 7 31 24 24 12 22 36 25 18 35 40 3 1 16 33 6 27 1 26 28 25 15 10 29 31 4 23 27 21 1 7 7 37 4 40 8 20 1 37 28 5 7 8 11 30 22 19 5 16 10 7 22 11 7 40 16 23 37 29 36 38 10 13 10 40 31 10 31 14 34 38 35 37 37 15 28 10 8 39 24 37 13 8 18 28 26 40 12 5 32 30 19 30 16 30 8 39 14 23 18 31 36 19 29 36 29 8 33 35 23 22 38 25 11 27 18 29 19 11 11 33 7 21 13 11 24 7 35 39 34 19 8 10 35 8 6 40 23 20 40 26 10 17 5 16 22 2 32 26 33 25 17 3 30 32 5 13 11 21 6 15 34 26 5 6 17 11 15 21 24 24 32 21 25 29 3 22 3 14 37 13 12 21 32 24 17 10 23 17 1 40 17 36 25 27 30 32 19 9 37 39 13 11 23 32 9 39 6 15 3 13 27 27 6 14 1 12 11 15 13 12 33 34 3 3 37 2 30 18 23 26 2 5 12 16 15 18 32 34 14 20 1 33 25 4 33 2 29 24 11 21 10 20 12 24 31 34 40 4 22 32 30 6 32 3 20 20 33 26 11 16 7 21 13 4 3 2 19 9 34 23 39 40 2 5 2 12 14 10 9 7 40 23 16 28 34 5 17 1 26 9 17 7 18 36 36 17 15 15 40 26 34 2 13 34 12 16 35 30 28 37 23 25 33 8 30 7 36 22 12 17 30 9 19 35 2 1 22 9 37 29 34 36 1 31 18 19 7 16 30 26 36 14 12 39 16 40 12 32 1 33 11 31 12 16 24 19 20 2 6 3 33 2 12 27 2 38 11 13 27 11 28 7 36 26 33 13 23 29 14 36 1 23 21 10 22 3 16 39 26 13 31 5 33 15 5 36 32 5 8 14 17 25 13 21 33 17 22 30 7 28 17 11 3 39 30 20 4 35 36 2 14 12 31 9 31 32 18 7 38 17 16 31 38 11 17 15 6 28 37 35 4 11 18 4 19 40 20 33 21 20 36 20 16 18 5 34 16 38 31 37 28 24 4 4 25 27 5 8 15 24 30 15 23 14 18 18 11 4 3 37 30 17 11 16 27 24 31 1 2 8 32 11 9 5 11 38 32 31 29 28 23 8 9 30 31 10 33 40 36 16 17 31 27 21 22 6 34 32 40 8 37 33 2 22 25 37 18 18 6 20 11 6 18 27 21 25 17 30 8 6 14 27 32 33 10 22 37 27 9 20 17 15 29 10 15 8 26 40 12 40 38 18 1 30 12 12 13 28 26 24 7 26 12 24 22 26 5 3 31 30 5 11 19 4 4 14 20 32 34 22 2 7 11 40 8 11 7 2 16 5 26 36 22 18 9 25 24 32 3 37 2 35 11 29 20 30 28 40 25 27 1 29 32 32 37 20 4 8 38 11 19 33 35 16 26 33 19 17 27 26 22 31 29 10 38 19 3 10 28 15 25 18 1 30 30 35 1 27 36 21 21 16 6 1 16 30 38 9 5 18 21 31 3 18 17 26 31 13 22 1 18 21 9 25 23 30 17 7 20 16 32 14 18 7 12 4 37 4 36 26 38 33 24 39 22 40 8 34 32 10 31 21 13 32 33 34 16 32 36 20 5 12 9 5 39 15 28 18 35 28 25 12 30 21 28 16 3 16 34 14 9 40 16 10 10 19 8 24 27 2 24 38 38 17 8 16 9 13 10 25 14 25 22 7 20 34 39 27 28 18 12 21 36 3 2 38 22 18 25 28 20 9 30 37 4 3 10 8 7 5 14 14 27 19 21 39 29 6 35 16 34 11 33 5 16 8 32 8 31 8 3 25 36 23 30 33 3 1 23 33 14 5 37 22 17 30 15 11 30 30 3 4 5 38 8 15 22 26 15 5 33 38 34 11 32 10 11 32 21 38 24 15 18 24 9 19 38 8 25 38 12 2 31 40 16 13 13 18 31 19 8 1 40 10 35 25 30 38 39 5 8 3 30 27 24 9 18 38 21 3 19 10 35 16 9 32 28 29 16 5 7 35 19 20 2 35 12 6 40 26 32 3 5 23 5 25 8 28 29 37 13 23 12 14 29 4 17 15 19 1 28 29 40 16 1 34 7 7 26 24 11 39 39 31 14 31 25 36 28 8 22 29 14 8 2 36 18 18 38 31 33 17 14 13 38 27 9 1 10 21 8 32 13 10 28 11 40 13 19 9 18 33 18 34 5 35 6 10 14 37 30 19 29 37 16 9 22 26 10 3 3 23 27 12 33 23 30 39 1 8 27 28 5 20 34 16 5 6 8 22 10 26 26 40 10 40 26 30 1 28 29 1 35 29 13 23 8 9 35 8 14 28 23 3 9 18 39 33 9 4 18 8 28 11 32 16 30 26 6 32 12 3 25 5 40 40 21 6 33 25 17 38 17 26 6 17 3 25 40 24 40 8 13 16 22 4 36 11 2 37 19 29 18 12 7 25 10 13 27 28 18 3 11 22 11 31 5 34 39 38 17 1 10 1 19 2 37 16 9 35 40 3 38 35 34 21 31 23 8 27 20 34 13 31 19 5 23 4 10 26 7 19 40 34 25 28 12 8 16 21 8 38 17 5 27 28 5 7 13 11 30 34 15 6 33 3 33 39 2 4 40 12 10 26 20 22 32 6 25 14 20 2 36 5 21 23 20 30 31 11 21 7 36 17 12 10 25 32 38 27 36 39 7 31 20 4 4 26 35 15 25 20 3 34 36 11 1 16 11 14 30 27 34 36 24 34 36 23 9 10 9 27 13 12 32 30 12 19 20 2 40 38 31 40 31 16 1 27 29 4 5 40 27 23 31 7 37 12 38 6 35 21 19 21 19 30 6 16 39 24 9 34 4 31 3 22 18 3 4 23 12 22 2 9 19 16 15 11 14 30 10 21 18 16 38 5 25 28 17 11 33 22 22 9 8 11 40 22 21 14 28 2 18 25 4 17 39 2 20 25 6 26 36 4 28 16 35 14 27 29 2 15 16 35 40 11 24 21 16 40 4 37 37 8 25 18 14 22 11 3 13 36 11 10 24 30 21 5 5 16 29 18 32 22 21 20 18 20 4 36 1 32 39 32 8 27 6 14 3 1 7 30 21 38 28 38 20 1 24 30 32 6 16 1 1 27 32 22 34 39 29 5 33 12 27 21 23 39 5 12 25 10 1 34 4 35 26 21 23 16 38 10 21 26 11 8 23 28 27 4 33 26 10 2 26 23 29 30 23 2 3 17 12 24 20 24 10 18 39 10 25 5 7 36 31 38 19 6 23 6 15 4 7 36 13 30 31 28 27 10 14 3 8 6 39 20 8 22 33 14 39 8 30 30 5 1 1 19 29 38 3 3 33 21 17 12 34 14 28 1 2 6 18 30 21 20 39 10 33 23 5 28 10 28 13 11 22 35 26 19 10 6 1 15 1 30 23 19 23 23 6 32 38 13 35 35 27 23 11 4 29 16 1 33 23 31 37 3 39 35 34 6 40 17 14 27 24 25 36 39 11 15 22 13 20 12 37 36 6 24 8 35 20 12 22 39 30 39 36 7 11 39 19 13 27 1 12 20 16 22 11 16 10 24 17 20 19 29 13 15 8 38 39 5 14 16 6 7 3 3 20 40 20 22 21 8 25 35 4 9 40 3 18 4 5 6 7 25 29 33 1 24 5 26 4 37 31 14 22 8 35 27 35 16 14 5 40 31 13 12 8 28 11 22 24 38 16 4 18 5 19 15 23 18 30 40 17 28 15 19 33 20 28 16 37 39 26 7 30 16 5 7 16 15 4 12 29 3 13 30 25 33 37 5 17 38 14 16 34 3 37 1 24 8 6 29 26 6 23 37 22 8 25 30 25 36 18 40 19 40 35 8 20 28 18 19 23 4 33 3 13 16 14 20 26 33 27 19 37 24 25 4 29 25 39 10 6 24 26 28 16 33 30 13 13 23 32 3 10 2 32 35 24 11 10 10 33 13 32 27 27 3 8 5 17 15 29 35 25 29 36 1 12 30 9 26 21 1 28 26 7 32 36 24 20 31 31 31 1 15 16 34 16 38 27 24 34 35 5 15 21 14 4 1 12 28 35 18 19 23 35 26 16 25 39 7 8 16 10 14 14 35 29 15 35 4 12 1 5 15 20 14 5 11 14 20 15 13 30 4 19 22 26 11 4 36 7 34 7 20 33 8 24 4 26 40 30 2 16 23 31 23 20 17 8 2 30 16 12 38 19 36 6 8 4 15 17 27 6 26 14 1 40 40 35 23 11 13 33 9 7 35 21 11 5 16 29 30 18 27 8 33 7 13 13 4 2 30 12 24 29 20 31 3 10 33 17 10 17 9 40 14 19 11 13 13 7 23 25 25 27 21 9 7 7 4 13 26 20 9 8 29 2 35 13 11 29 18 37 17 7 9 12 27 37 8 8 7 8 17 1 9 25 21 26 11 33 31 21 39 27 23 38 38 34 23 33 7 13 22 14 25 24 30 4 28 9 38 30 12 16 29 33 12 33 18 10 18 32 25 22 25 28 6 22 2 14 34 13 7 18 40 10 17 3 30 35 22 35 39 24 16 38 19 8 22 4 21 13 14 28 5 8 27 23 30 12 16 4 23 30 31 32 22 5 38 15 27 13 32 21 36 36 8 40 26 28 10 30 30 6 29 19 13 25 30 33 32 6 39 6 5 40 38 40 7 39 24 18 7 12 34 9 14 5 2 5 3 6 30 38 25 29 10 23 36 25 37 33 11 28 36 37 2 40 26 14 35 33 7 26 19 28 8 2 12 40 1 31 9 8 29 12 19 27 13 3 20 15 21 38 38 33 5 19 7 15 1 5 35 9 11 10 8 23 16 39 37 37 34 7 23 18 38 29 26 33 29 18 29 32 27 31 34 21 5 5 33 10 33 13 36 15 4 34 29 15 1 11 40 12 20 25 37 7 15 37 31 5 3 30 18 26 1 11 23 9 20 39 18 10 34 22 37 33 35 11 38 34 1 17 1 9 23 14 4 21 28 27 23 7 26 37 32 30 31 37 25 35 38 13 7 16 32 28 27 21 12 28 34 11 11 35 36 14 4 34 31 11 12 39 7 29 12 17 2 34 8 29 2 8 19 9 16 27 1 17 5 2 25 20 25 15 15 5 15 11 21 28 20 36 16 6 40 38 26 15 3 37 29 16 29 7 18 15 22 27 1 10 36 20 15 36 4 19 2 18 3 34 11 23 8 38 1 22 23 32 1 24 27 17 13 25 23 8 8 40 35 24 25 28 7 6 26 39 15 6 38 32 1 21 16 4 8 18 6 33 33 37 4 36 22 31 7 19 40 15 39 16 38 7 21 26 36 38 25 10 37 29 28 2 34 21 3 14 39 21 33 37 40 34 39 34 29 7 14 14 24 11 2 1 18 29 17 39 21 13 33 19 39 28 32 1 32 32 21 11 25 40 37 25 4 16 1 10 13 30 2 21 24 37 29 33 6 5 26 5 17 7 23 9 20 38 2 39 16 38 12 22 27 22 2 12 26 39 7 20 17 19 28 20 12 4 9 27 26 30 39 7 32 11 31 33 20 12 6 18 23 16 22 28 38 5 31 40 20 10 24 15 28 15 27 9 7 16 38 9 30 11 32 18 5 7 29 16 37 1 5 7 32 10 5 29 40 1 25 4 39 8 27 36 27 16 31 9 2 9 23 32 22 34 28 35 33 7 22 2 22 29 28 6 19 38 32 29 27 32 23 33 4 12 7 27 16 4 11 32 14 3 23 26 17 36 4 13 30 25 14 24 29 28 40 30 24 26 29 7 34 3 5 23 35 16 34 8 33 3 31 27 25 25 26 27 12 14 19 18 3 1 23 20 14 25 34 30 34 20 5 20 24 33 31 22 12 11 31 35 32 13 38 18 30 3 39 30 8 27 32 14 15 7 24 14 37 11 32 10 13 26 40 8 12 7 10 35 16 13 40 1 2 5 19 25 34 27 33 34 28 23 39 11 2 13 34 17 23 25 19 13 34 19 15 7 4 4 22 12 20 27 31 24 10 39 29 21 38 3 2 20 5 36 1 35 39 33 24 26 33 10 36 38 28 30 17 40 22 25 26 7 4 18 33 13 4 12 5 3 9 22 33 40 22 12 7 6 27 9 5 35 3 34 29 10 31 5 20 10 6 35 23 10 22 2 34 27 38 6 2 5 36 18 15 10 23 5 10 40 37 5 39 19 6 12 27 11 37 27 3 14 29 38 32 3 26 9 1 38 7 7 21 7 18 14 4 1 3 29 22 23 27 38 34 26 7 23 8 38 21 25 39 40 11 32 30 14 8 8 11 19 13 22 2 4 6 28 10 9 11 40 15 18 27 7 31 39 27 13 35 38 18 12 37 8 3 4 34 28 35 4 22 31 18 24 34 30 27 18 40 31 9 29 30 7 26 35 12 12 7 19 15 29 21 35 33 31 18 19 28 1 29 5 8 13 32 30 27 8 11 16 24 12 16 14 40 11 28 12 38 10 17 29 6 17 5 9 5 25 5 13 35 24 8 4 36 25 23 23 25 30 19 25 35 32 34 12 36 37 20 40 39 16 25 23 12 28 12 19 9 2 19 17 23 6 4 36 23 33 27 35 15 26 24 10 31 30 3 20 26 28 40 18 32 38 8 31 36 3 39 21 39 35 7 37 26 14 3 7 8 30 19 24 30 37 31 2 37 32 3 32 21 40 25 3 13 24 21 5 32 39 10 9 14 39 9 3 18 11 23 8 25 40 11 39 19 23 32 26 29 3 29 23 39 6 16 40 35 10 32 31 35 18 7 22 30 37 6 20 4 1 13 9 27 32 1 31 39 2 40 14 20 38 39 13 16 15 22 38 34 12 3 16 15 10 32 40 29 40 30 9 8 40 5 22 28 2 10 34 7 31 38 28 32 27 3 8 16 14 38 37 11 1 5 20 2 24 33 5 14 25 27 1 19 17 26 28 27 20 36 13 38 27 32 40 38 13 19 28 32 38 7 6 3 36 8 8 24 20 36 14 35 22 40 4 20 38 1 3 29 36 23 39 18 11 28 37 18 19 15 33 13 38 4 4 5 29 33 22 29 24 16 36 8 2 2 18 21 19 16 17 39 39 8 4 16 39 37 9 5 2 26 36 26 19 7 17 32 34 26 7 30 13 11 18 8 23 1 5 26 24 8 10 19 33 31 15 10 12 19 9 21 4 26 21 8 36 7 26 24 36 23 16 37 28 22 34 15 2 29 28 33 36 15 24 33 38 40 20 26 7 3 40 40 32 29 18 26 4 20 22 28 40 36 13 5 38 35 29 28 1 20 13 11 22 10 8 34 28 3 4 7 14 37 19 30 9 15 31 13 3 2 10 6 39 2 17 27 26 13 21 37 3 10 8 40 14 18 21 39 11 5 3 16 36 39 10 15 29 10 21 11 10 26 22 25 17 6 39 22 35 17 29 8 14 3 8 28 33 6 10 28 33 17 4 17 22 34 25 30 7 23 20 4 39 20 32 29 23 34 30 24 34 27 8 34 24 10 14 30 40 12 28 1 9 17 19 37 31 39 40 22 13 39 28 19 32 33 28 40 10 13 10 1 29 37 15 2 18 4 9 13 36 14 22 9 39 25 19 38 9 25 9 36 21 29 7 32 22 6 21 37 10 33 5 27 37 24 21 18 37 31 19 5 36 38 3 2 27 40 36 6 9 4 33 16 21 13 34 24 16 1 9 38 10 12 32 15 37 15 6 23 19 25 8 33 28 18 22 14 27 36 32 25 37 33 31 2 29 27 31 9 16 37 7 17 6 30 3 37 11 31 15 8 31 33 25 22 15 32 1 12 31 3 29 32 25 22 15 3 39 25 14 3 38 30 6 1 18 20 13 31 27 30 40 18 13 35 21 27 13 13 17 25 17 37 8 38 9 39 39 28 34 23 5 15 38 21 39 22 19 23 26 32 9 24 2 13 20 16 31 22 1 30 7 34 19 19 2 4 6 3 15 9 30 23 39 3 25 10 32 11 13 21 28 39 11 24 21 21 25 13 32 6 17 13 3 33 16 3 26 1 21 39 37 11 14 24 16 6 23 30 14 8 15 6 27 38 28 10 40 23 33 14 7 37 15 3 38 2 12 39 35 13 4 27 34 19 26 18 40 28 29 23 31 17 40 8 32 40 15 22 37 37 21 13 30 24 7 12 19 2 38 2 6 9 23 18 15 29 36 23 6 7 13 6 29 39 10 21 29 24 39 29 10 3 36 7 34 1 33 21 1 15 25 29 3 31 25 1 33 15 38 22 17 24 13 7 8 36 1 10 11 33 38 7 3 3 23 6 29 29 15 35 21 22 13 34 3 29 40 11 21 11 27 6 33 18 31 28 20 18 16 13 30 34 34 29 18 17 26 33 27 5 12 15 25 37 33 30 2 2 3 18 33 17 10 19 16 31 23 3 4 15 20 32 18 27 2 33 30 26 17 9 39 35 17 6 5 1 11 37 7 30 37 37 8 1 12 32 24 14 5 15 40 30 22 13 21 10 22 32 26 35 15 30 12 18 31 22 34 19 11 31 17 14 31 36 19 36 36 10 30 35 11 4 18 8 11 37 21 38 21 40 15 16 8 27 30 10 15 26 11 1 10 36 21 27 34 34 35 29 16 10 25 12 33 28 25 34 13 12 32 4 25 24 32 33 3 5 40 36 23 20 5 32 23 14 13 34 31 21 10 6 16 40 18 13 17 30 4 25 22 24 5 13 10 20 29 24 31 18 35 13 2 20 12 28 15 4 10 38 7 35 32 12 40 3 38 27 35 21 11 34 4 1 20 14 9 34 13 19 35 14 16 38 26 10 16 1 10 34 34 3 24 36 14 22 5 30 34 40 4 5 29 35 4 23 11 22 40 33 23 1 29 26 18 11 21 2 15 5 37 18 32 6 21 38 1 9 28 29 20 7 39 35 36 21 8 40 16 34 36 18 17 4 27 6 10 32 11 24 32 25 7 20 38 36 5 2 30 7 36 34 13 33 29 37 28 16 28 5 37 4 14 26 23 13 5 36 24 21 33 20 4 14 15 9 20 22 11 25 32 11 2 27 34 29 33 12 23 15 29 5 21 8 37 25 7 11 24 36 31 28 25 7 14 36 11 10 33 23 35 11 39 21 20 31 16 39 29 18 27 3 33 17 17 36 32 11 7 23 40 25 32 32 13 1 13 30 11 9 8 30 6 5 18 22 15 34 14 8 22 30 7 39 32 10 23 10 6 19 17 23 16 3 10 3 12 15 4 38 19 18 40 25 27 2 29 12 32 9 14 32 9 36 39 38 25 27 35 37 34 13 2 21 34 24 35 30 35 34 30 16 30 39 38 3 20 3 23 28 12 6 9 19 21 25 7 33 40 20 38 37 10 5 24 22 29 35 33 30 12 34 12 19 6 39 11 38 37 1 6 2 9 34 12 21 22 20 16 5 5 17 28 34 34 26 15 4 2 12 32 19 37 34 6 12 20 6 27 35 8 5 8 26 22 22 12 28 31 38 5 32 15 18 15 29 17 5 34 6 21 7 7 13 18 20 2 18 30 9 31 27 36 16 12 35 36 12 32 10 31 2 16 3 32 12 22 5 1 39 24 36 12 14 32 21 37 12 15 27 23 29 26 11 4 33 18 34 34 8 5 18 19 27 17 26 3 2 5 36 5 12 7 27 5 28 15 25 18 18 2 17 29 3 7 14 9 34 18 13 24 23 24 30 18 29 25 16 4 38 25 26 22 4 37 24 32 18 27 15 11 1 1 37 18 3 19 32 33 16 36 14 29 19 33 15 15 32 31 4 31 37 17 11 32 31 40 6 35 23 10 9 7 19 35 13 14 25 20 23 2 4 27 5 13 20 7 19 24 25 8 1 11 38 33 31 30 4 25 2 11 17 18 37 24 22 3 1 11 37 23 25 37 7 22 2 3 5 11 28 16 2 13 24 5 4 24 20 36 4 31 20 23 18 8 29 34 21 30 14 2 25 16 17 36 19 2 18 32 16 3 26 15 37 26 12 35 2 17 14 23 33 3 26 7 8 32 39 37 24 23 34 14 40 2 30 14 5 17 22 7 2 5 20 5 7 3 23 2 35 26 27 16 29 12 15 34 17 18 33 36 12 15 40 12 32 10 20 6 3 11 32 14 7 5 22 14 1 38 36 23 32 38 3 15 14 7 24 14 37 30 24 14 25 11 23 28 10 39 36 29 11 1 4 13 34 28 14 27 20 37 19 6 23 1 1 28 10 1 32 22 32 9 26 19 5 21 12 34 8 14 25 19 20 9 7 1 17 26 2 2 3 28 9 18 17 13 27 35 29 39 36 25 34 14 36 14 36 35 33 5 17 8 26 16 17 3 39 13 32 38 15 7 15 10 35 6 6 19 5 24 9 38 14 32 27 40 4 21 28 4 9 18 17 31 12 9 34 14 4 21 8 36 36 34 22 28 18 20 21 20 1 20 10 21 39 34 2 33 28 39 11 20 37 19 26 6 40 31 7 35 35 5 38 32 22 20 2 30 25 5 1 26 6 33 32 31 2 4 23 21 32 22 23 17 37 11 9 34 28 29 14 3 26 30 38 27 21 16 5 31 23 8 6 1 13 23 34 32 32 19 16 32 24 10 5 40 26 19 3 32 2 25 25 10 33 8 39 1 25 3 13 33 7 30 12 3 24 35 8 22 22 3 13 12 7 23 36 29 6 29 2 19 39 16 36 26 38 23 19 40 15 35 9 17 27 13 22 39 37 19 28 12 7 31 4 12 16 30 21 16 39 19 30 6 37 37 36 12 2 5 31 18 16 33 30 34 36 39 8 11 37 35 22 22 24 27 39 18 25 4 26 7 8 16 37 39 40 14 9 35 27 23 12 19 11 2 34 35 1 38 19 16 25 9 40 24 9 22 14 17 16 32 39 24 4 7 30 15 30 36 40 31 8 7 25 25 11 3 33 7 28 9 37 27 24 13 32 9 11 38 26 22 26 36 24 35 38 31 12 25 20 17 1 23 21 4 38 34 34 14 8 29 25 25 15 7 28 15 14 4 34 6 9 37 33 35 19 14 38 27 36 29 33 31 11 29 21 28 4 21 21 9 5 8 10 37 39 12 1 13 10 3 40 40 5 29 40 17 14 34 15 15 17 36 40 1 3 8 15 10 17 31 15 33 11 20 36 40 29 10 6 29 18 19 5 33 14 20 40 23 25 13 35 17 27 39 18 31 9 14 18 6 13 27 12 6 13 16 28 34 23 36 1 10 4 38 21 30 17 37 39 21 14 24 19 30 18 5 9 33 17 5 27 27 1 17 30 2 18 28 40 24 22 9 40 25 8 28 36 27 7 40 26 33 8 4 17 13 8 30 22 8 38 10 2 37 10 38 32 13 29 23 12 8 4 38 40 40 27 5 20 19 21 12 37 3 13 28 15 35 21 32 1 1 38 9 14 19 29 27 19 25 18 16 26 17 12 6 11 19 31 36 6 22 1 39 5 20 32 31 21 16 6 10 8 13 11 7 22 17 40 14 22 27 9 5 34 17 19 32 7 4 8 30 39 19 1 13 36 25 36 10 11 1 22 10 20 12 33 26 28 6 14 1 39 13 36 40 3 33 15 12 14 14 30 22 16 31 32 27 19 37 8 34 30 40 1 37 33 20 28 18 2 29 26 16 22 30 13 28 2 30 33 11 21 28 40 40 12 20 38 33 17 8 17 33 29 39 3 8 9 3 11 18 25 14 34 35 21 40 33 18 8 37 14 28 14 34 38 38 4 2 16 31 11 37 5 24 34 18 15 18 28 28 7 9 7 12 23 24 9 38 10 17 39 30 25 9 2 25 34 27 34 25 8 39 22 22 2 5 39 33 30 9 10 33 29 23 29 16 32 6 37 26 4 11 5 7 27 22 11 4 6 35 16 35 38 9 40 35 19 4 32 10 4 3 33 11 22 20 31 24 16 36 7 17 37 39 13 37 31 11 33 6 20 2 38 18 28 38 1 4 29 11 32 33 22 29 40 1 32 32 14 32 20 17 39 20 7 4 16 4 27 25 22 8 27 19 31 28 9 4 25 23 32 9 29 35 25 3 10 8 27 40 5 34 38 27 6 22 18 26 24 20 29 17 23 24 24 5 2 28 9 4 21 28 17 20 17 35 40 13 19 17 27 10 12 17 34 26 25 31 30 2 18 18 34 14 16 4 34 28 5 16 21 26 11 32 28 34 14 13 11 5 1 20 2 19 4 4 3 12 14 19 30 6 24 7 39 3 17 1 27 8 15 31 21 31 15 24 10 17 35 38 16 20 20 8 3 10 15 35 30 10 34 25 7 35 15 35 20 40 16 21 35 25 16 16 33 13 27 25 14 22 2 14 19 12 6 15 33 1 23 7 23 18 24 7 9 8 35 24 21 6 14 11 4 18 23 4 23 25 30 26 38 17 37 25 28 8 12 19 13 15 37 7 17 19 3 1 13 4 2 4 20 26 29 40 40 39 32 3 12 27 34 23 7 12 36 15 22 35 6 23 29 35 19 20 32 28 26 32 20 1 9 31 17 3 39 32 14 2 16 3 8 23 38 21 39 37 2 10 14 21 6 33 18 12 15 18 32 11 9 11 26 35 29 12 27 23 27 39 1 30 18 4 37 17 20 37 39 13 32 31 21 2 23 8 10 25 2 14 10 6 38 19 9 36 37 6 2 22 35 34 6 29 40 36 18 9 15 33 31 20 28 34 28 9 11 28 36 2 10 36 10 2 30 10 35 8 2 30 1 18 6 35 32 8 2 19 15 34 7 40 34 32 4 30 37 22 17 33 8 15 25 22 2 25 34 40 16 33 11 24 13 38 40 20 11 16 20 19 19 2 35 19 36 19 10 17 10 14 24 14 14 5 28 14 32 21 39 27 3 39 12 1 36 38 25 7 22 24 2 29 2 19 21 5 38 1 21 35 16 14 5 28 34 3 20 14 40 16 14 30 4 39 19 30 6 35 3 32 19 15 38 28 19 17 17 33 27 26 2 23 11 14 11 12 8 19 13 7 10 18 29 34 8 21 32 33 1 21 1 9 10 33 8 30 26 21 7 34 32 10 15 40 16 28 12 7 8 39 33 21 37 23 20 9 37 39 19 6 24 4 15 35 3 29 28 17 20 26 3 25 22 9 7 2 14 1 37 7 26 38 3 33 32 36 4 17 1 31 6 1 15 9 11 1 13 27 29 31 17 30 29 38 1 21 6 9 6 23 38 9 5 29 2 21 40 38 27 11 16 25 17 18 7 5 28 24 17 4 15 35 19 27 10 25 40 30 23 10 26 15 31 24 23 38 22 35 24 29 33 13 20 9 36 1 31 21 1 32 36 32 27 22 27 38 10 2 5 31 13 8 38 32 23 14 37 15 6 14 4 40 25 30 22 3 39 28 40 23 3 31 8 36 4 31 6 16 34 3 23 18 21 34 28 17 13 25 4 29 17 23 9 32 15 3 18 9 19 6 15 32 28 17 2 24 2 31 28 7 2 22 12 21 32 17 26 13 25 40 16 35 30 27 11 28 34 25 28 32 8 35 14 16 7 8 9 18 22 15 20 1 33 32 2 15 23 39 7 17 27 14 17 8 37 19 5 39 39 10 17 34 17 29 25 15 17 4 28 38 11 17 28 30 1 15 7 37 36 20 36 26 12 1 9 4 8 13 25 3 33 5 15 33 21 38 26 34 6 13 14 37 35 28 4 21 39 37 30 29 27 18 9 39 2 35 19 6 36 16 8 11 9 25 8 5 9 36 11 26 26 31 30 26 18 29 30 6 14 33 23 23 34 36 2 9 32 39 16 22 29 4 18 13 35 7 5 35 17 20 5 34 35 39 3 33 28 6 30 17 19 37 20 23 3 12 32 32 25 31 4 13 7 26 40 3 40 4 7 34 15 28 39 17 39 13 19 18 8 1 36 16 9 17 17 6 31 34 9 13 7 30 11 12 40 30 35 32 7 25 36 7 14 17 25 23 18 36 25 24 19 40 14 30 32 22 16 34 8 22 9 8 4 24 28 24 24 2 2 9 30 14 29 36 16 33 28 21 39 6 20 31 29 37 36 25 14 10 7 27 8 18 20 22 39 39 36 22 23 27 14 30 1 39 33 23 12 27 21 1 9 17 3 6 9 12 6 10 5 36 36 9 33 37 20 40 35 2 35 17 17 39 8 12 13 35 2 20 12 3 19 13 15 27 33 28 14 28 23 26 20 10 24 29 3 4 28 3 19 32 2 39 15 13 26 28 15 32 7 8 37 37 33 4 20 34 12 39 13 31 37 23 20 37 26 12 25 32 10 11 7 31 21 38 37 5 4 1 18 16 27 7 37 27 21 24 2 17 2 36 22 13 10 34 1 1 3 40 19 18 31 34 32 36 36 25 19 30 12 34 22 40 8 9 12 5 23 24 40 19 10 20 38 24 37 29 15 24 8 24 4 34 29 30 10 16 1 12 22 21 21 30 22 3 35 17 38 25 17 10 36 40 25 28 31 38 19 17 31 19 6 27 11 38 3 12 36 29 12 18 30 40 39 10 20 26 21 36 2 25 11 39 6 8 17 2 21 38 3 20 6 24 9 27 4 39 9 28 18 11 38 30 38 1 39 35 31 15 16 21 2 22 3 22 28 20 34 20 35 34 25 21 15 16 26 14 38 13 19 27 27 23 35 29 24 4 40 7 37 25 5 24 4 23 8 12 38 38 21 40 5 7 3 29 18 30 9 27 37 33 6 15 25 13 11 11 11 2 10 21 6 1 26 27 23 30 22 35 2 37 5 32 30 36 25 33 12 31 8 3 6 23 12 38 30 2 24 37 31 14 7 24 1 16 24 35 4 14 36 15 13 14 20 11 6 5 30 31 24 22 8 17 35 39 14 23 37 10 28 16 19 4 40 27 19 12 6 40 8 13 39 24 35 40 27 1 39 22 6 2 35 39 12 3 13 16 5 35 34 6 28 24 9 5 36 35 6 21 40 4 34 28 25 35 37 4 6 17 17 18 11 39 19 19 38 21 26 21 12 36 9 17 3 7 3 30 6 10 12 40 21 32 20 9 39 33 36 12 10 30 35 5 29 36 23 21 23 15 17 16 4 22 21 37 34 31 30 36 20 32 20 13 31 7 6 25 24 33 37 29 23 13 5 19 25 25 27 9 3 11 30 25 15 13 15 18 1 11 32 30 4 31 22 7 31 17 39 8 37 13 29 15 26 31 40 15 16 25 17 24 34 29 14 32 13 16 14 1 8 23 30 20 29 11 14 12 35 22 25 36 2 39 29 12 21 34 1 14 4 22 17 29 35 14 5 15 7 40 12 30 34 22 34 18 12 28 5 17 33 3 1 1 1 1 17 14 22 23 31 18 37 1 24 24 37 7 10 9 31 23 35 13 17 27 32 8 28 38 29 38 15 26 24 4 20 4 2 26 30 13 21 33 3 23 8 24 26 22 38 20 25 3 1 30 36 17 15 23 15 27 18 33 40 33 1 23 2 28 39 1 16 16 1 14 11 19 3 34 26 8 9 34 27 18 18 37 25 6 17 7 1 22 13 25 3 5 19 10 39 2 37 38 25 1 35 4 2 34 20 38 26 7 34 15 27 38 26 39 4 9 18 5 23 1 15 38 9 27 6 28 23 28 8 13 36 1 13 20 23 10 17 4 38 38 32 4 18 20 1 28 29 24 17 23 12 30 27 25 8 18 28 16 37 16 18 23 28 27 8 12 8 23 34 5 32 9 27 14 32 34 7 31 23 40 29 15 4 10 23 38 39 11 20 29 30 29 7 23 2 8 10 34 13 19 4 34 5 25 4 36 35 17 24 1 37 22 32 24 37 29 15 18 26 35 10 22 10 8 18 30 23 25 36 33 38 3 31 20 24 20 20 28 21 25 21 37 22 33 24 30 13 11 15 6 34 40 29 21 22 22 24 28 8 37 1 38 13 40 36 30 6 12 12 7 33 3 15 8 21 14 40 18 15 35 7 4 20 20 7 27 2 21 27 34 11 1 16 6 8 28 8 33 31 3 22 27 25 19 17 16 36 6 21 25 40 9 11 16 4 25 33 39 28 28 32 12 3 8 26 24 32 10 19 36 17 30 22 38 21 12 1 22 3 5 33 32 31 13 9 23 31 29 32 24 29 34 32 3 33 17 13 1 23 2 23 20 27 32 18 13 30 6 38 5 38 29 10 8 5 6 40 4 18 5 23 7 31 32 11 35 39 20 17 3 14 11 9 11 17 28 3 28 2 20 4 8 27 33 35 10 40 6 14 22 33 40 30 36 9 39 29 20 32 39 33 22 8 16 9 4 11 9 10 31 35 13 17 4 31 38 19 30 26 34 22 8 26 17 32 27 21 31 27 31 14 39 15 37 3 34 23 15 39 25 33 39 21 5 30 12 5 15 9 13 13 11 32 5 29 28 10 5 12 33 35 14 23 7 30 34 2 13 23 5 11 1 22 12 15 12 3 5 7 12 9 18 23 38 32 20 16 40 35 39 11 24 9 4 3 37 33 16 25 11 28 2 5 26 20 2 21 5 33 33 31 39 35 40 20 6 6 9 19 28 39 34 26 22 15 4 17 1 36 33 17 29 5 23 23 32 8 25 39 27 35 40 20 21 25 32 35 20 14 29 34 17 12 36 18 19 19 5 30 39 7 36 36 15 37 7 33 30 19 20 24 19 28 32 29 20 4 28 33 16 5 13 25 26 32 40 21 23 24 26 29 9 34 33 39 27 15 23 27 9 21 2 27 15 5 3 20 39 3 21 37 36 39 37 29 3 4 12 6 34 36 1 3 26 35 35 5 5 17 17 28 3 21 10 3 24 40 23 32 4 11 4 35 14 30 28 13 15 24 26 11 1 11 32 15 5 16 1 17 6 32 4 15 36 27 30 18 16 30 1 11 6 1 13 19 9 4 27 25 31 35 29 11 9 19 13 17 32 32 35 9 25 19 34 27 17 21 40 1 6 8 37 20 6 2 7 26 10 17 35 20 35 18 6 29 39 12 8 32 20 33 4 4 33 40 40 15 18 16 34 36 40 6 10 10 8 16 35 17 25 7 1 6 19 2 23 18 12 11 29 39 16 38 19 17 35 20 23 6 10 32 29 9 28 34 11 35 32 32 13 20 4 18 27 13 24 28 23 35 29 20 31 20 25 26 15 9 12 23 3 33 16 2 31 7 6 17 35 35 19 29 13 10 9 21 4 29 20 22 6 11 14 26 34 34 9 15 10 28 19 9 13 2 1 40 19 39 35 21 24 22 38 22 37 37 18 8 1 6 27 28 22 18 7 23 36 27 3 21 34 18 8 12 18 36 33 16 31 28 27 36 7 2 18 18 5 22 29 16 6 29 14 20 33 30 17 21 22 3 34 30 30 2 26 1 13 40 35 28 6 36 5 35 17 40 21 34 25 11 24 13 39 10 7 27 5 24 30 34 28 18 34 28 13 21 23 39 10 28 16 21 4 7 14 29 33 6 24 10 29 36 35 23 38 6 38 8 29 16 29 2 2 40 32 15 9 4 23 27 10 38 24 12 30 28 21 28 29 38 26 36 40 40 6 25 27 12 27 22 5 9 29 23 5 13 24 9 8 24 31 18 19 15 12 19 10 6 14 27 23 13 8 39 38 5 12 4 29 10 3 25 26 30 12 22 29 2 34 34 14 5 5 26 39 40 11 33 35 37 33 3 12 29 28 39 4 37 39 37 17 38 32 20 7 31 34 32 27 4 18 37 18 15 3 18 30 36 5 15 23 2 1 32 8 32 4 37 14 28 26 9 22 24 22 27 10 20 3 27 32 29 33 4 32 19 33 1 13 33 5 12 6 10 16 20 31 19 22 19 12 29 22 36 2 23 21 29 20 22 31 24 8 32 24 6 38 30 25 2 35 7 20 27 18 28 2 2 29 33 14 29 14 21 25 5 16 36 35 37 5 12 13 18 15 25 3 6 32 1 21 24 5 3 22 14 7 9 5 6 24 29 29 26 26 31 7 19 27 33 38 32 34 21 8 16 31 37 11 29 11 2 26 14 39 25 33 2 28 6 29 15 36 8 19 4 36 38 36 26 16 4 31 1 3 33 1 5 5 31 5 5 28 26 40 25 37 17 13 32 3 12 1 30 19 10 5 18 32 26 25 1 12 4 22 11 19 19 5 10 10 23 11 29 3 36 18 21 17 33 15 17 22 15 12 34 20 13 28 2 33 29 18 24 2 29 21 15 31 31 33 29 28 16 25 17 24 32 3 17 12 16 3 3 19 21 38 33 28 5 11 15 37 40 9 10 32 25 39 25 15 17 6 33 33 36 22 40 10 23 23 12 9 39 5 16 26 35 5 21 11 9 23 36 21 34 13 36 25 6 2 5 3 40 38 4 32 15 13 18 14 33 22 13 25 20 15 20 1 25 27 23 39 25 30 6 3 16 28 23 10 38 39 19 26 29 18 30 30 3 32 2 40 1 10 40 37 36 36 17 3 27 24 34 31 7 8 12 8 5 17 22 23 25 9 7 2 23 24 16 19 40 23 33 34 5 28 30 22 38 40 39 28 14 16 14 31 25 39 23 23 24 15 2 39 1 39 39 30 7 8 14 26 12 40 3 3 28 8 22 33 7 14 15 28 13 28 39 16 33 11 7 37 8 11 13 22 10 28 27 27 4 28 5 1 33 37 35 35 37 12 27 39 30 24 11 37 26 7 17 18 27 34 17 34 34 20 20 33 14 12 21 32 6 35 40 6 26 19 18 29 12 40 21 32 22 22 9 15 37 23 15 32 31 8 5 39 27 2 32 40 17 31 34 20 10 3 4 17 22 24 32 7 1 11 25 33 6 33 20 34 20 13 27 8 22 27 19 38 21 4 6 24 30 12 27 24 23 25 23 28 33 3 11 1 29 35 30 34 18 3 13 30 3 6 19 16 24 13 35 36 36 33 10 18 9 27 8 38 20 37 1 28 32 2 18 22 8 6 34 24 1 17 26 27 31 6 35 5 18 30 24 9 40 6 33 11 24 4 34 31 35 10 8 28 3 7 23 11 21 4 5 37 24 10 25 37 30 18 24 19 7 4 4 26 25 9 26 19 1 1 13 10 10 20 28 18 12 35 20 13 33 23 1 12 5 27 35 18 38 38 26 37 39 38 31 32 35 38 13 15 13 12 11 36 40 20 6 33 39 37 17 35 29 15 40 31 14 17 6 24 29 11 38 39 24 34 8 4 2 40 29 28 35 38 15 9 16 12 4 37 34 33 31 20 1 3 8 26 4 38 8 25 4 9 2 21 1 34 5 26 3 31 23 3 19 1 25 7 11 27 26 17 4 32 14 7 21 39 25 38 32 22 13 36 1 40 40 28 40 37 40 6 26 29 18 7 33 33 35 3 5 32 18 12 7 19 31 5 11 17 5 18 2 3 31 37 1 40 9 38 12 30 4 14 20 30 31 23 31 37 40 21 38 35 38 5 13 18 16 34 17 29 30 39 19 11 30 36 31 2 13 40 19 13 20 8 18 11 29 25 33 8 31 39 11 23 38 6 23 37 36 24 21 18 15 30 25 22 28 39 4 35 32 29 15 29 3 10 24 40 11 25 40 26 37 25 18 3 31 28 5 12 20 18 26 23 7 10 13 27 35 38 40 35 16 16 36 38 20 18 14 21 6 15 7 39 31 23 14 16 19 30 2 12 18 31 12 6 38 10 22 24 32 13 17 18 31 21 30 10 29 37 13 37 33 10 2 25 7 28 14 5 12 6 19 30 7 14 37 29 19 4 36 39 20 35 2 32 27 4 13 40 13 7 39 26 25 6 24 31 33 31 12 24 9 26 37 37 39 15 24 30 5 22 15 27 38 21 14 33 18 34 4 5 25 27 14 39 22 1 39 26 10 14 15 14 36 21 16 29 23 18 16 14 8 17 29 13 29 3 33 7 13 16 4 23 15 12 1 19 32 22 2 34 35 8 15 31 32 16 12 26 1 8 17 17 19 15 5 27 37 17 26 17 14 11 8 24 31 27 39 2 21 36 24 4 20 18 7 15 31 25 32 40 28 32 36 6 7 13 4 34 13 21 4 38 3 3 19 22 38 39 3 2 24 37 14 3 32 24 23 4 36 39 20 6 1 15 2 40 6 19 19 26 35 12 40 15 13 10 29 30 1 15 34 17 35 4 23 26 6 20 1 19 13 6 37 17 3 22 38 36 25 14 5 19 14 29 36 27 13 35 32 24 23 39 2 13 24 8 35 28 23 38 36 3 3 37 31 17 40 27 38 13 30 25 16 22 39 10 40 33 13 25 33 29 26 40 12 28 12 28 21 39 8 4 10 39 40 25 4 11 13 29 23 37 5 12 12 39 24 11 35 23 3 39 3 19 17 11 40 40 9 9 24 4 6 32 1 37 23 20 10 32 29 6 32 31 37 36 2 17 31 12 1 17 37 27 27 19 14 29 14 22 27 24 10 10 20 33 40 40 31 35 5 39 29 24 26 10 21 14 34 2 7 2 14 40 6 10 39 3 19 14 25 21 17 32 14 26 34 17 27 15 1 36 32 29 20 25 22 28 12 3 8 13 35 35 22 36 22 4 3 36 2 25 38 16 38 15 3 8 35 35 13 22 13 7 19 4 40 38 22 1 10 6 34 24 19 33 5 32 29 3 8 29 14 9 11 30 39 24 26 13 16 12 13 17 31 3 17 19 39 5 28 30 14 6 10 5 9 36 24 25 35 28 9 9 24 32 5 36 12 15 40 3 27 31 34 13 37 15 20 16 31 30 1 11 23 14 25 32 18 39 24 23 34 2 33 18 36 38 31 27 2 32 10 33 39 21 26 19 19 25 35 36 3 6 38 34 8 2 29 7 12 11 15 4 10 3 10 28 25 33 34 15 4 6 40 31 33 32 7 17 12 35 15 36 9 36 32 18 5 32 39 16 5 8 20 19 40 21 17 11 22 35 39 2 7 23 32 17 19 32 39 10 35 35 4 10 19 6 29 32 27 15 17 19 20 37 11 33 27 3 1 5 2 29 19 28 9 6 16 32 32 13 26 40 4 12 6 16 16 22 9 27 5 28 8 7 37 26 17 21 2 25 37 6 15 40 35 31 26 37 8 15 4 5 14 12 4 3 38 9 38 32 14 31 4 30 39 23 33 10 30 13 30 18 34 27 10 9 15 15 30 32 20 21 22 22 32 22 15 28 4 21 26 27 4 34 34 11 19 32 21 22 23 24 37 34 35 34 7 21 15 27 2 36 13 25 12 16 23 9 16 24 25 1 19 1 35 28 23 37 15 22 8 32 34 33 38 15 5 18 10 26 8 11 34 29 30 37 31 16 10 5 28 10 22 19 3 12 23 31 29 7 8 20 28 24 12 18 4 13 35 9 18 14 8 37 20 2 2 8 31 33 12 36 23 33 32 7 20 20 3 39 24 11 2 34 18 5 29 26 35 37 34 8 20 39 19 26 32 4 13 27 11 30 9 16 15 16 24 28 12 18 32 24 40 9 1 26 28 29 22 6 20 15 1 32 30 36 36 28 37 25 28 40 10 16 22 14 23 29 28 7 5 9 15 28 35 15 37 17 17 8 30 36 30 14 15 13 26 18 38 2 23 15 34 25 37 37 13 29 9 26 31 32 13 16 13 16 11 24 3 16 37 37 39 1 29 35 22 16 29 11 13 5 18 10 4 23 29 2 26 11 14 22 28 35 36 27 30 19 10 26 26 32 9 20 11 7 12 33 1 1 19 15 12 18 19 36 19 30 1 21 6 7 10 2 29 15 14 25 10 4 17 14 5 22 34 17 27 12 7 12 25 36 30 23 24 22 16 32 5 18 13 22 40 25 32 39 28 22 13 4 37 18 24 12 1 30 16 26 8 1 30 36 26 38 15 38 17 39 24 40 31 1 31 1 2 39 7 21 18 9 3 9 35 26 13 29 27 20 39 5 8 20 30 14 34 21 17 33 19 17 31 35 26 35 36 31 4 6 34 22 25 17 30 37 26 3 28 16 4 33 30 30 39 21 26 3 35 3 35 28 5 28 37 5 7 40 6 22 21 38 35 18 5 24 26 15 39 8 2 17 6 22 27 37 14 32 31 36 39 32 17 29 39 15 36 12 16 5 4 21 21 3 24 13 38 18 13 12 28 17 34 37 9 31 34 4 13 16 17 34 32 33 21 23 12 8 32 40 19 14 30 4 30 26 23 1 30 40 17 22 4 32 10 1 25 24 28 1 13 2 26 31 18 32 19 1 39 5 22 16 8 38 9 14 13 12 39 15 19 15 13 12 11 35 23 40 21 26 11 12 21 35 24 38 7 36 4 23 35 17 4 32 8 16 19 12 34 12 11 30 17 26 1 18 2 26 24 15 18 24 19 31 31 25 7 32 24 30 14 29 16 10 25 17 5 1 13 16 24 1 6 13 18 33 34 35 1 17 4 3 34 30 28 22 15 7 17 2 35 11 9 9 28 33 9 7 3 34 21 28 40 37 16 8 19 23 20 39 10 6 31 24 31 40 3 10 19 7 22 24 38 3 2 21 3 33 4 31 6 24 33 23 1 17 13 22 12 18 14 39 20 12 28 10 34 34 35 27 40 3 7 25 37 21 32 33 5 26 18 1 17 38 21 34 36 28 34 37 26 35 35 11 33 5 11 37 17 28 21 30 19 12 25 19 31 26 24 12 27 25 38 39 37 26 35 4 40 5 33 39 29 14 15 33 37 33 37 9 11 17 36 3 26 17 26 20 16 34 28 26 4 12 5 31 8 13 20 22 29 36 34 39 38 28 21 21 11 17 27 26 11 27 26 13 21 7 29 2 27 18 3 20 28 28 38 21 18 39 31 11 24 34 8 3 27 30 5 33 33 14 35 31 37 1 25 16 2 13 32 5 25 31 13 35 17 11 40 6 25 26 15 16 3 34 10 10 24 38 12 39 12 27 14 24 11 21 24 19 11 22 22 35 27 11 18 30 38 7 40 4 25 29 18 16 25 23 14 5 10 37 13 10 14 19 39 16 19 11 36 18 9 9 6 40 36 24 19 22 10 19 7 35 20 13 8 33 37 33 11 32 25 17 21 18 40 17 18 20 1 20 11 9 35 27 40 11 2 35 19 10 31 36 3 35 29 13 8 35 11 31 21 22 12 23 39 34 38 32 22 40 31 21 20 27 34 30 33 40 4 13 13 7 1 1 38 24 22 28 38 24 17 23 31 20 15 1 34 40 15 1 33 36 24 25 29 19 38 25 13 33 33 29 29 28 2 26 38 39 15 26 39 25 9 40 13 12 24 33 32 1 13 10 33 10 40 12 11 33 24 15 22 32 1 4 9 28 28 7 15 4 23 11 40 35 27 38 19 35 29 5 2 26 29 12 26 30 38 30 2 8 5 16 15 37 15 19 23 39 10 40 19 28 24 5 34 36 7 6 26 40 6 3 3 31 12 5 8 24 39 33 21 2 33 5 15 7 29 37 5 29 36 12 13 9 19 17 26 40 25 20 39 34 14 33 23 10 14 19 19 13 38 37 17 7 32 20 23 28 17 34 3 25 27 20 2 10 20 17 10 30 29 24 9 14 15 24 22 27 40 6 9 1 28 25 6 9 37 34 30 24 22 28 9 19 36 30 36 30 39 13 23 18 2 39 3 9 34 14 24 6 9 16 1 17 13 19 14 26 40 19 4 19 38 12 19 3 22 23 38 22 22 5 5 9 25 4 25 4 12 25 22 8 16 19 39 13 8 7 29 34 6 9 22 13 21 9 11 25 15 28 22 3 10 28 30 2 23 34 5 35 17 4 32 4 34 9 33 13 31 3 10 19 38 29 14 29 37 4 9 3 39 34 9 12 27 17 22 22 1 28 39 9 34 39 12 18 31 40 35 37 39 16 26 1 2 35 15 20 18 32 21 2 2 3 14 16 14 2 27 8 12 22 25 25 1 33 39 39 30 17 18 30 17 29 23 9 31 17 25 22 16 28 28 34 33 1 12 28 36 10 12 2 27 29 16 17 26 19 13 10 1 16 13 13 23 34 38 24 36 20 33 6 9 1 17 2 4 32 38 5 10 23 4 2 16 6 28 25 1 23 26 27 15 8 23 7 38 11 18 38 7 6 29 39 3 20 4 18 12 36 34 12 10 40 31 9 20 17 34 37 1 24 29 8 28 36 5 33 10 14 23 15 15 35 37 8 30 8 20 14 22 31 13 22 32 8 18 5 6 27 24 4 7 35 36 39 33 35 27 25 3 13 14 33 16 38 21 35 7 31 27 12 31 38 3 33 36 21 30 14 21 22 1 37 24 22 23 18 4 36 5 24 36 30 2 4 6 7 6 30 23 30 6 11 7 4 15 13 33 34 39 8 36 21 10 20 32 14 3 16 6 6 16 11 34 24 11 15 34 24 31 36 22 39 28 36 17 20 27 21 1 23 31 34 4 33 29 1 24 25 24 8 5 19 7 17 26 17 24 32 17 25 5 26 24 39 24 20 7 2 30 35 37 20 11 9 18 36 18 8 6 19 18 34 28 12 39 7 27 20 18 20 25 14 39 10 1 27 1 27 39 10 11 23 25 10 2 22 18 31 35 36 17 1 13 31 13 31 19 32 7 7 31 28 3 11 39 2 9 39 5 2 3 38 15 34 38 38 8 36 25 10 2 10 15 2 16 3 38 40 24 30 3 4 29 21 14 40 18 13 3 17 34 38 36 32 7 17 26 20 12 38 17 33 11 36 6 27 4 3 10 32 5 9 33 31 10 16 2 12 31 33 18 17 12 31 20 8 3 20 7 13 33 11 15 3 26 29 39 32 13 13 8 36 13 9 19 35 17 36 19 1 14 18 27 14 20 3 32 17 13 26 3 22 20 37 28 37 38 29 10 33 16 32 33 26 27 36 8 8 15 21 32 4 38 15 37 2 13 31 39 20 17 5 10 29 13 3 13 23 19 16 20 34 34 31 6 25 35 30 25 39 33 32 34 17 6 5 38 25 40 15 26 38 3 31 28 32 10 32 40 25 15 27 32 12 16 14 39 26 7 6 24 38 2 3 5 29 29 25 4 31 16 3 5 38 15 4 36 2 26 13 23 31 21 36 12 35 17 23 5 25 9 18 17 26 11 4 8 33 4 14 25 6 3 13 11 23 8 18 34 4 19 12 34 25 29 29 10 13 24 26 25 30 16 40 39 23 13 13 26 5 27 16 37 13 7 18 33 11 23 23 24 34 17 36 36 23 35 17 10 23 29 1 32 28 5 3 16 1 20 2 2 35 25 21 17 21 3 9 24 26 19 24 1 8 32 24 7 16 27 2 5 8 2 17 19 19 35 6 4 32 12 6 25 20 31 12 12 28 26 28 33 25 15 20 8 10 27 25 40 35 19 31 21 14 11 25 23 22 35 21 6 36 11 4 6 28 17 34 35 7 39 20 25 15 3 15 39 12 9 31 31 21 3 22 32 7 6 23 14 29 22 8 39 17 16 10 3 2 18 22 34 34 25 2 33 17 26 15 38 17 6 7 7 29 35 34 18 30 26 11 34 2 38 20 19 17 36 9 19 3 15 32 6 30 10 39 25 32 33 40 17 38 6 22 37 23 1 26 18 32 36 38 36 36 5 28 38 25 2 29 13 17 23 40 14 4 19 11 33 39 7 31 29 33 1 3 39 11 14 24 8 30 5 37 20 1 28 14 29 23 29 35 28 36 17 28 2 4 29 14 20 10 21 25 24 22 9 40 21 14 3 12 26 18 38 33 26 11 5 38 26 40 28 25 2 18 13 24 20 40 11 22 4 28 8 22 13 27 38 28 39 24 3 23 22 21 11 7 35 25 22 19 13 39 30 34 18 15 3 34 5 15 24 27 18 1 39 1 23 15 29 40 15 38 4 29 12 9 18 40 38 4 32 12 29 5 34 31 34 29 9 31 38 12 36 40 8 12 38 26 22 15 13 15 17 26 2 31 4 21 3 35 9 20 25 35 13 25 37 38 10 33 27 26 17 29 22 8 24 21 11 12 29 22 34 8 7 20 28 26 31 32 2 32 7 8 18 15 38 26 16 23 2 10 7 10 11 18 32 2 22 9 4 15 17 18 6 1 4 33 15 40 5 26 24 12 37 4 20 40 32 31 29 18 28 20 12 36 13 15 1 22 38 29 33 28 33 14 35 25 30 22 37 18 27 33 36 2 11 19 37 30 36 8 16 32 1 11 5 10 10 7 15 31 25 23 1 23 15 35 18 5 10 10 23 2 25 19 23 28 20 22 15 30 7 16 5 15 6 17 33 11 24 33 21 37 5 9 3 17 29 10 12 35 30 4 34 22 36 2 32 40 18 40 21 17 19 22 27 18 25 3 27 15 24 32 36 40 17 17 9 38 32 23 23 40 1 12 5 32 13 5 11 2 31 8 7 12 19 23 24 2 24 35 24 38 23 4 36 18 17 38 23 34 1 39 34 3 10 25 28 7 1 16 22 39 9 3 26 8 9 17 30 26 27 35 9 17 5 40 22 7 25 31 30 33 33 34 17 17 27 34 15 1 40 30 15 10 25 9 19 28 4 3 24 24 2 34 13 27 12 39 16 24 38 30 2 26 38 30 8 23 28 26 4 5 18 22 12 24 23 7 20 36 8 13 5 3 6 5 13 22 23 25 8 17 35 9 34 23 17 18 32 15 34 8 20 4 16 23 20 3 19 3 30 17 37 32 21 12 36 27 23 6 11 36 14 3 36 11 2 40 23 35 37 27 16 22 11 1 18 24 24 20 16 38 5 6 37 31 28 5 24 40 9 9 11 31 26 9 27 17 19 23 10 5 3 25 21 15 14 32 14 24 24 9 37 22 35 6 14 36 17 16 24 25 27 32 6 6 2 22 30 22 15 34 17 22 2 31 32 20 3 5 20 9 25 16 10 40 8 26 22 39 40 21 7 40 17 28 7 12 7 26 21 18 37 33 24 28 20 23 29 17 36 18 25 6 38 33 33 31 15 25 3 30 26 28 37 11 6 29 21 35 30 19 39 22 29 40 22 23 25 9 15 16 11 22 28 8 8 15 20 22 25 7 8 13 17 11 17 32 2 26 33 39 31 38 9 31 12 16 36 19 40 30 23 40 12 34 5 14 38 30 28 10 29 2 30 28 25 14 5 10 1 17 26 32 13 8 10 23 21 32 28 15 12 25 5 40 36 20 3 24 11 21 32 15 10 25 19 11 34 24 10 31 13 13 30 12 39 1 25 6 18 2 2 6 39 34 13 36 13 10 21 17 23 40 20 9 26 2 28 31 31 9 14 20 37 22 19 3 25 33 9 14 24 19 25 26 9 4 23 7 8 34 15 29 39 19 28 27 5 20 9 28 6 5 8 22 20 36 40 40 34 23 19 39 21 16 4 32 40 16 11 20 31 2 32 10 5 23 2 3 16 25 15 7 26 8 26 3 32 11 31 9 21 23 18 37 33 37 8 29 14 11 4 19 22 5 40 25 13 6 21 12 3 23 29 3 36 14 18 19 2 27 36 8 32 16 15 8 29 27 16 11 10 5 8 33 23 33 19 21 27 12 16 13 22 25 38 20 6 29 23 29 21 6 30 3 38 10 3 12 5 34 18 32 23 27 40 16 30 3 5 34 32 40 29 20 1 2 25 12 39 11 34 7 11 34 21 36 4 21 29 25 34 2 23 22 9 18 36 17 19 28 35 33 35 33 2 8 30 29 30 11 23 25 30 5 16 39 14 20 40 4 6 23 25 23 4 16 19 16 31 12 20 6 12 15 10 28 35 24 22 3 13 7 22 9 24 25 24 5 5 26 36 6 5 27 10 31 29 20 20 39 4 4 10 38 33 36 9 5 40 21 23 6 14 21 33 28 13 20 20 2 32 1 26 3 37 18 14 29 12 2 23 4 28 18 11 29 27 32 2 21 31 33 4 4 21 24 35 38 9 38 22 21 5 1 28 6 17 39 22 27 18 34 22 17 7 31 6 11 16 37 21 29 3 13 33 10 33 31 3 31 11 20 21 14 16 31 32 14 15 37 18 33 12 1 36 25 20 33 18 14 34 35 31 12 14 2 24 24 34 30 7 39 26 39 26 34 34 37 2 23 5 38 11 10 13 36 13 38 26 29 30 37 11 24 25 19 39 23 8 9 38 11 13 29 13 15 19 8 14 6 16 35 27 39 39 29 35 35 34 27 12 24 5 5 4 26 31 38 34 11 32 16 19 37 12 28 14 40 36 9 7 30 28 22 33 5 9 13 4 22 13 17 34 8 40 5 23 18 1 5 35 6 22 10 29 16 10 7 28 1 24 8 3 7 34 6 33 25 15 22 25 1 38 4 4 33 26 19 20 1 24 14 16 37 19 20 30 26 7 6 31 29 5 39 40 4 39 24 35 19 26 13 11 16 32 16 11 12 26 11 12 34 13 15 30 24 9 30 22 10 10 28 6 39 4 23 9 23 39 25 40 21 2 5 21 3 20 30 24 12 3 12 33 14 3 29 40 16 18 38 17 1 15 26 18 1 2 7 15 7 21 14 30 16 13 27 2 23 26 39 16 21 17 5 23 4 9 7 24 10 33 17 14 32 32 26 28 25 38 16 8 29 16 35 18 21 15 35 12 17 21 14 37 33 18 11 22 33 28 36 38 4 39 6 18 9 25 20 29 20 16 15 40 27 30 17 38 19 31 22 10 13 35 17 40 26 35 20 5 34 16 23 18 22 29 9 33 24 23 13 10 40 33 32 24 39 13 9 21 27 26 10 28 21 16 23 22 40 38 4 6 15 19 8 1 6 31 40 8 25 5 32 9 25 16 3 37 11 8 2 10 35 39 9 34 24 17 14 22 19 1 9 10 40 37 3 2 36 8 6 7 36 27 32 18 5 23 31 15 27 6 10 22 9 32 19 2 13 31 40 28 39 29 3 17 38 31 30 21 36 35 10 29 2 21 11 19 12 12 23 28 13 35 1 20 1 21 10 3 40 12 14 23 4 2 15 37 27 20 22 38 34 27 29 20 30 25 6 29 12 14 21 28 29 34 28 13 2 8 22 34 9 6 24 23 15 30 13 5 11 33 12 17 33 14 1 8 34 7 14 29 30 2 2 23 15 37 30 40 33 23 33 10 22 12 35 34 21 26 33 31 29 3 23 40 19 25 34 39 38 13 3 5 10 8 35 6 25 5 23 12 10 27 37 12 40 15 40 19 7 1 40 26 8 22 17 38 8 18 22 40 30 10 23 38 14 36 18 10 31 26 29 31 7 30 31 4 3 12 2 40 24 24 30 38 7 13 33 34 4 16 19 25 16 36 5 29 29 18 13 21 36 39 26 23 27 21 11 32 33 36 22 31 24 29 32 23 14 15 21 28 8 9 15 29 32 20 20 7 36 20 29 8 5 15 16 11 34 17 18 5 37 32 27 39 28 14 16 34 9 11 34 11 10 7 14 11 2 15 16 30 37 3 35 28 17 28 35 36 16 35 37 30 23 16 11 1 37 5 1 31 27 14 20 19 25 3 34 29 35 6 12 2 11 34 17 18 2 17 4 2 11 27 31 33 33 22 29 12 21 10 8 32 12 7 13 34 5 28 29 32 11 7 15 5 7 38 14 27 20 5 28 6 31 32 28 33 34 28 23 32 16 31 29 30 20 39 4 21 11 36 13 26 5 35 2 34 27 38 6 6 18 18 19 27 40 28 39 25 3 27 9 34 2 5 7 28 31 20 23 9 1 4 38 3 6 39 30 7 21 8 39 1 38 26 14 16 35 14 21 31 13 3 13 12 40 11 10 22 13 8 36 40 12 19 6 10 39 23 31 7 20 22 24 19 23 14 13 23 17 3 16 31 33 2 6 31 6 5 22 24 27 7 17 21 2 17 20 40 6 26 29 24 11 23 9 13 7 9 11 40 29 32 35 33 27 9 28 28 38 11 12 28 2 7 8 32 34 19 36 37 27 25 16 17 27 8 11 9 35 6 2 15 30 26 11 1 3 14 27 22 8 38 29 11 16 12 33 35 1 11 1 6 18 36 25 25 37 25 27 10 2 31 24 36 25 6 6 30 21 1 36 7 4 37 3 12 23 33 1 8 33 23 7 11 30 7 13 31 33 17 35 11 14 36 36 13 18 40 7 5 19 6 26 25 6 13 38 3 26 7 36 17 32 17 30 28 5 32 26 27 8 11 10 7 25 6 22 28 15 22 6 16 25 22 38 30 36 13 6 37 21 1 32 6 36 12 11 22 40 20 1 19 4 29 28 31 27 17 33 39 33 14 40 32 35 6 38 24 23 14 33 21 20 2 5 15 25 37 37 39 27 20 16 23 28 37 30 18 9 17 32 16 26 8 37 4 21 34 35 21 30 22 31 16 30 27 1 32 35 7 19 17 22 7 34 1 38 24 21 26 24 2 37 5 18 1 39 31 28 22 32 12 39 18 29 37 19 15 23 27 4 26 35 18 9 40 33 15 29 13 39 24 37 26 31 23 29 15 24 18 32 7 7 36 15 39 2 26 7 29 2 33 21 2 29 24 4 8 39 24 35 23 30 10 9 10 12 31 6 15 11 15 10 4 2 14 22 33 13 6 24 23 35 38 18 39 39 13 33 37 18 36 9 23 36 4 12 14 3 22 36 10 1 27 19 32 34 8 10 23 14 7 24 20 21 10 12 9 39 38 29 18 6 28 4 29 10 16 27 22 31 40 33 2 21 7 24 32 3 12 33 32 34 32 12 4 22 29 33 26 32 5 3 10 15 3 19 25 26 19 38 36 7 14 35 39 35 21 5 3 37 36 20 28 4 23 8 23 28 19 1 1 25 4 40 32 23 34 36 20 30 30 17 21 36 12 33 23 4 20 10 9 31 5 8 28 40 11 25 19 39 39 5 32 4 20 4 18 35 28 9 23 30 35 18 5 21 12 22 22 13 14 29 21 35 34 4 20 23 9 11 17 39 39 27 38 37 5 1 38 6 23 3 24 40 23 8 26 16 40 21 6 24 4 26 10 14 13 31 19 40 32 8 37 14 36 6 23 5 1 32 24 30 9 31 15 7 16 21 19 39 19 22 4 22 5 6 9 18 35 37 27 27 21 36 40 3 5 5 33 4 21 14 12 7 17 23 26 12 21 34 36 33 34 39 16 14 18 35 9 7 12 31 18 40 23 40 27 1 27 14 14 21 4 30 30 17 22 22 23 19 5 20 9 25 4 18 27 20 7 14 5 29 3 13 4 1 4 34 40 32 39 20 4 35 12 2 24 17 33 4 14 24 17 17 25 2 2 29 36 33 16 34 11 33 33 38 29 13 38 35 15 20 6 3 18 12 33 26 2 12 27 18 25 27 17 37 16 34 7 15 4 33 18 27 17 36 40 5 14 32 35 4 11 36 18 36 31 38 28 37 13 35 4 36 11 26 14 19 40 36 37 35 8 3 11 8 28 1 20 26 39 1 36 26 24 17 23 22 36 16 32 23 35 32 30 8 29 17 37 9 35 26 29 23 7 15 5 38 6 20 13 30 11 4 21 31 18 24 34 23 28 38 17 28 20 35 26 30 6 30 20 20 15 16 35 4 10 36 14 13 10 9 16 12 14 13 26 27 11 40 21 12 40 31 21 22 16 10 22 3 28 37 11 19 13 4 24 10 15 22 29 23 15 40 34 31 27 5 21 14 23 9 28 27 25 26 38 1 29 21 11 2 39 37 26 33 35 6 23 28 31 37 37 11 15 20 18 4 22 16 5 29 40 38 22 11 13 1 35 26 26 29 37 35 18 18 35 27 38 23 36 26 36 36 25 20 2 39 6 13 7 3 9 30 5 32 30 37 16 40 38 27 33 29 7 27 27 39 13 17 10 1 21 6 1 39 39 2 4 32 8 20 13 3 4 24 18 32 12 22 24 25 23 38 5 29 31 22 37 3 6 7 28 17 20 8 18 11 15 24 34 16 33 11 23 30 21 12 11 13 12 15 14 10 19 24 36 22 22 3 5 32 34 6 29 10 8 32 37 33 17 19 32 3 4 12 36 11 35 34 14 35 29 31 21 16 19 6 19 1 18 31 31 20 12 39 27 35 37 17 35 12 25 3 16 6 3 31 35 24 2 29 36 37 40 40 36 36 18 35 6 26 8 12 6 31 36 3 38 21 40 12 28 1 18 3 4 21 38 7 18 11 5 37 13 27 30 23 8 21 39 7 31 37 39 23 3 19 3 9 32 22 16 7 5 38 37 1 15 24 14 8 22 15 7 35 22 9 13 30 9 9 19 1 36 6 35 4 35 32 26 7 9 29 38 37 5 12 12 8 34 15 13 24 17 14 20 2 10 17 8 24 12 1 9 11 33 6 12 12 16 25 21 12 16 40 37 30 35 11 35 31 35 16 29 28 17 30 17 35 5 36 5 24 16 10 30 3 26 22 38 1 36 2 19 26 9 23 39 26 5 2 8 35 16 26 28 10 35 33 9 32 14 5 14 34 18 10 16 19 3 8 29 9 32 32 24 39 20 5 15 5 27 32 32 7 16 35 1 34 31 23 7 14 25 5 38 29 33 33 19 22 18 25 35 2 19 20 3 23 7 37 7 8 33 6 38 33 18 22 29 9 7 2 1 2 1 6 32 10 19 2 5 9 1 38 14 5 31 28 20 16 31 19 36 23 28 34 38 24 23 26 26 10 26 29 21 11 35 1 40 34 12 27 40 19 26 6 19 5 24 12 6 15 7 39 19 18 29 26 14 36 34 14 35 30 39 29 22 37 32 17 15 14 1 35 26 9 6 40 34 2 12 15 15 6 13 34 4 38 38 22 23 3 3 3 13 18 32 39 7 39 36 9 14 3 37 40 5 19 7 5 3 12 7 12 37 9 19 37 39 39 4 12 18 6 26 15 22 23 31 13 14 13 17 13 6 8 30 13 12 31 11 11 38 29 3 18 12 3 29 24 18 37 19 17 15 37 9 20 15 18 38 37 9 32 17 12 22 37 40 23 3 11 37 5 30 20 40 28 24 3 14 25 11 28 34 3 40 32 1 17 22 13 1 31 29 7 19 23 5 1 33 34 11 2 2 9 2 36 24 4 23 33 3 22 13 32 25 2 22 9 18 19 7 2 25 34 28 10 8 39 1 1 32 6 39 4 13 13 2 24 35 7 37 17 24 27 29 19 18 34 23 7 37 8 8 40 6 33 35 7 15 25 28 3 14 8 15 36 16 22 14 6 28 15 18 35 17 29 3 38 36 19 7 26 3 25 34 3 34 1 19 15 23 14 20 26 6 16 11 20 24 14 20 25 10 20 7 33 3 13 15 17 13 14 17 36 34 20 13 35 16 5 11 17 1 7 35 30 34 16 15 28 12 40 15 9 3 23 17 32 31 24 3 25 25 8 33 39 30 12 33 40 34 8 10 18 31 28 36 34 21 2 12 10 17 39 5 38 24 3 35 18 15 30 2 7 17 36 35 20 32 13 21 9 24 38 32 26 15 23 39 11 23 8 6 37 3 10 11 12 17 24 32 23 5 39 31 1 40 13 13 32 29 33 32 6 31 25 8 18 16 26 27 11 30 40 18 15 2 34 20 11 3 21 2 5 25 34 19 17 27 16 25 13 4 34 5 3 24 38 7 32 18 22 16 37 39 9 39 16 17 30 17 14 14 35 32 27 19 13 32 8 36 17 14 33 19 36 10 35 12 8 9 14 31 9 15 12 39 15 27 31 19 35 38 35 3 35 40 39 1 28 18 35 32 31 29 40 31 37 3 34 24 35 11 29 2 16 39 34 17 35 8 12 23 33 17 38 10 25 9 16 22 23 25 3 18 7 40 33 19 14 1 27 11 18 3 19 12 21 32 23 34 6 23 26 20 11 2 30 5 32 30 32 24 18 7 40 30 13 22 5 4 19 22 17 33 23 29 38 15 31 25 30 34 25 25 13 36 15 20 24 4 11 18 30 18 15 18 28 23 38 3 11 16 33 14 19 10 8 29 21 34 9 17 14 18 23 24 30 24 16 31 23 27 28 30 1 1 36 21 18 27 29 40 22 33 18 38 40 40 19 20 4 13 5 9 26 37 13 1 32 12 12 17 15 9 37 18 30 19 38 36 10 17 26 25 23 18 28 24 30 20 38 1 32 36 30 19 25 26 23 35 3 37 21 13 22 15 28 27 28 38 33 39 24 25 25 23 35 15 12 40 25 12 35 39 32 6 30 11 22 32 34 25 29 22 9 31 34 31 40 16 28 32 13 1 16 11 1 36 27 23 16 28 19 2 40 37 40 2 9 11 6 21 33 36 7 12 8 27 6 26 7 37 20 30 40 28 15 2 15 39 22 38 33 15 11 38 2 24 19 8 32 3 9 15 32 15 16 22 4 33 35 38 2 9 26 32 31 33 39 36 20 7 22 27 39 34 37 22 39 4 33 7 37 25 40 8 13 9 5 26 26 17 37 5 17 24 16 11 18 4 35 14 35 36 11 19 10 31 34 8 8 20 30 18 30 19 22 26 5 8 22 12 24 37 18 13 11 11 27 29 13 35 15 39 14 32 6 19 34 2 13 10 31 9 36 40 2 36 18 34 28 24 17 27 21 4 34 31 38 27 33 35 35 4 15 3 1 40 7 9 26 30 20 36 38 2 15 29 5 28 34 26 11 4 38 13 35 30 40 30 16 15 31 28 14 8 7 35 4 11 26 30 33 17 21 14 21 28 6 35 11 31 7 10 28 26 14 26 4 21 2 16 10 34 5 2 38 26 6 36 17 14 25 6 15 24 36 7 8 28 15 29 35 31 35 2 6 16 38 18 17 5 17 6 31 33 15 27 11 28 25 2 33 3 12 40 9 13 26 38 16 19 4 22 37 40 40 19 6 28 24 5 20 26 34 17 27 18 31 15 12 15 39 19 1 15 21 4 1 19 28 28 37 11 24 5 39 30 2 33 30 25 29 25 36 18 32 13 28 29 37 11 30 10 28 18 33 7 15 30 31 32 5 21 11 21 1 28 6 11 39 1 28 33 3 36 39 29 38 9 22 1 27 1 29 26 36 9 38 22 17 33 11 34 21 10 33 23 24 39 21 21 22 35 37 5 28 30 23 38 34 9 9 28 10 10 8 14 21 30 37 28 20 5 28 16 29 38 34 32 8 25 13 1 35 30 35 35 6 8 11 39 33 8 6 23 4 11 14 24 33 2 18 6 8 27 12 8 33 16 40 26 10 9 28 8 19 9 2 28 33 15 13 20 34 26 22 4 2 13 14 22 9 10 37 28 17 17 33 39 7 31 33 2 28 29 2 6 33 32 13 9 16 13 8 24 12 9 13 1 34 26 33 25 8 19 14 19 20 25 22 38 9 15 10 36 23 33 4 18 17 16 28 8 35 1 20 5 28 5 34 7 18 4 32 29 29 4 20 28 24 36 10 3 17 5 33 15 14 2 30 37 17 34 7 40 32 6 20 27 38 9 37 25 4 33 7 14 40 24 37 30 19 14 38 39 10 19 3 2 9 36 30 3 25 30 7 11 14 37 23 11 37 1 17 15 15 10 3 30 5 16 17 3 40 18 24 16 32 14 19 40 17 25 8 1 34 35 19 16 8 12 33 6 17 10 19 26 16 1 28 23 18 33 19 20 37 29 31 16 20 31 9 35 39 30 16 30 33 40 36 10 15 19 11 6 8 16 31 14 17 13 9 7 13 17 26 10 23 26 36 15 31 8 37 39 3 15 2 26 35 40 27 24 4 27 37 12 32 30 5 38 35 38 36 37 16 20 5 14 3 29 3 18 3 7 14 28 25 23 40 12 38 25 38 26 7 22 7 37 32 39 31 7 12 37 36 30 22 37 13 39 4 2 18 37 26 4 2 33 22 22 1 14 12 39 5 28 15 15 33 36 25 39 8 4 3 22 34 34 18 18 29 11 37 25 22 4 39 9 25 9 1 1 4 7 19 34 39 19 31 39 17 23 35 17 3 6 21 23 2 19 23 24 20 3 7 5 11 4 1 11 11 16 18 25 9 14 22 1 1 32 2 2 26 8 14 28 38 33 19 6 6 31 9 16 9 30 28 39 12 23 28 18 26 12 35 29 36 33 24 6 39 8 13 29 7 31 30 27 21 7 34 17 38 24 12 38 15 19 11 36 3 28 9 33 14 5 19 16 9 7 13 30 36 27 25 7 24 8 13 22 14 1 3 32 29 6 13 1 28 20 13 24 20 34 24 14 15 33 37 3 27 31 22 7 19 31 23 4 32 22 28 30 23 17 19 1 15 3 6 13 2 31 1 31 39 22 26 27 7 15 25 14 38 32 37 29 10 24 27 22 24 40 16 5 15 22 3 13 36 17 7 8 12 33 34 2 28 40 30 19 17 32 36 20 23 8 14 4 20 37 19 31 2 7 12 32 7 36 2 2 34 18 17 22 25 8 37 20 21 25 16 4 37 17 20 13 21 39 38 36 28 25 28 33 10 15 17 1 19 8 36 22 32 27 25 6 6 18 19 35 10 25 29 26 30 37 23 31 1 37 20 6 8 34 27 35 14 30 1 21 4 2 25 3 35 5 36 35 29 8 32 38 13 19 38 9 9 26 34 39 18 32 17 5 8 22 6 1 12 32 38 36 39 4 30 9 6 33 23 10 10 29 14 20 6 22 33 4 33 19 4 11 10 6 36 24 35 32 17 14 39 4 11 5 6 24 35 6 33 27 31 9 30 30 40 3 9 3 4 19 21 17 37 24 34 30 5 37 38 28 25 10 39 25 11 21 32 32 12 4 30 1 35 32 29 8 32 37 25 25 39 36 15 35 38 17 36 31 15 24 5 39 4 5 18 5 18 31 7 1 11 22 23 38 2 29 31 3 37 34 5 14 5 34 9 37 28 32 14 2 4 15 39 1 22 19 34 15 35 23 37 10 28 20 20 2 35 28 14 4 34 16 32 1 22 13 24 23 18 37 6 26 3 27 38 4 40 28 16 31 17 32 5 31 24 36 27 32 27 16 11 35 6 13 37 31 37 39 12 24 4 1 7 16 22 25 18 36 21 3 33 11 34 33 33 35 18 7 32 36 29 30 35 23 31 2 31 17 22 14 5 16 19 27 7 34 2 9 33 22 21 26 8 6 13 13 14 18 24 16 20 27 27 13 12 7 7 8 37 11 37 12 26 40 15 15 21 31 7 6 30 5 17 13 30 1 9 26 33 23 9 13 23 17 33 37 32 20 29 29 34 29 38 2 32 37 24 23 19 30 2 40 40 19 20 33 29 20 32 13 37 33 40 30 36 18 19 30 18 30 36 6 26 24 8 22 9 7 30 1 28 33 18 25 27 11 6 10 23 7 24 23 19 32 21 34 5 32 31 37 6 25 24 33 12 1 36 20 11 30 17 38 35 3 22 4 26 21 10 13 13 21 18 33 38 30 39 25 8 26 14 12 4 24 3 16 2 26 7 17 31 31 36 27 7 8 12 34 40 31 6 8 23 38 7 12 13 16 37 32 15 15 25 22 12 40 34 23 40 14 32 36 11 35 32 36 18 15 7 40 6 7 14 29 27 4 23 26 11 8 38 22 28 12 34 36 13 5 29 37 22 2 23 7 7 9 21 36 36 11 2 9 37 27 29 20 37 2 32 8 2 2 27 12 26 32 13 1 36 15 15 4 29 22 4 32 32 34 24 35 24 22 26 23 40 17 22 10 37 13 17 14 27 15 11 9 14 7 24 6 4 26 3 20 32 17 23 32 33 8 8 24 33 32 12 27 38 7 2 26 28 38 16 39 35 19 37 17 32 8 40 37 29 21 1 13 40 4 13 23 22 3 7 5 10 20 15 7 25 21 21 1 33 39 17 9 36 30 33 19 22 21 4 15 24 26 34 3 16 19 5 34 17 2 25 11 34 13 18 35 36 7 22 35 34 9 30 21 32 5 26 20 38 18 34 38 25 37 4 8 14 5 16 35 9 26 31 4 15 11 6 32 40 12 21 12 36 13 35 14 32 33 11 24 37 34 1 18 1 27 36 18 2 19 24 34 36 40 27 15 17 16 8 22 2 4 23 2 11 1 5 30 30 7 21 20 26 14 40 16 10 26 37 22 10 30 9 15 25 3 30 39 23 28 12 36 4 28 24 16 28 16 40 38 11 4 16 2 1 24 5 7 36 26 39 2 13 30 32 27 10 35 6 2 16 5 32 4 6 14 20 10 4 40 24 18 26 25 33 3 39 24 40 11 34 39 27 11 40 1 11 32 16 37 5 26 25 12 15 1 16 12 31 38 26 35 27 18 4 1 6 20 2 23 13 37 4 1 39 9 36 18 29 29 14 19 19 18 18 25 3 23 13 12 25 24 37 35 28 23 17 21 34 32 12 20 39 34 7 21 10 38 18 34 9 6 12 6 22 31 35 36 25 6 34 19 16 27 30 7 4 11 39 36 1 34 37 14 34 25 15 29 10 29 10 26 6 29 35 18 18 15 40 27 9 28 12 1 1 9 20 27 22 27 4 1 39 17 4 27 29 35 2 34 29 17 36 2 4 13 28 25 12 30 15 36 19 18 28 16 36 16 37 23 23 11 23 4 1 18 28 24 19 33 16 9 8 7 21 17 23 14 5 16 34 24 24 40 16 37 16 37 37 6 11 7 24 20 19 25 9 4 33 20 32 35 3 40 29 22 36 18 16 3 7 16 4 20 21 13 15 38 3 24 23 33 38 31 34 8 13 17 10 35 8 18 15 2 22 28 26 3 13 18 38 19 4 33 35 7 6 25 30 38 23 29 27 39 19 24 28 2 4 26 31 10 13 22 35 26 32 40 2 39 9 2 27 11 34 18 27 35 26 8 31 14 12 14 28 36 5 33 15 2 8 28 23 18 2 38 22 33 8 7 10 9 16 14 24 7 20 26 9 35 35 9 14 39 33 20 27 33 9 23 6 23 16 23 28 21 27 22 1 22 11 31 4 10 20 13 23 6 9 23 1 40 11 30 37 25 18 23 16 28 26 26 40 3 13 14 7 17 38 18 5 38 25 36 25 34 7 28 28 32 28 30 24 5 22 20 30 25 13 36 19 37 21 10 18 31 28 16 34 18 28 26 21 20 36 26 33 32 7 28 28 5 20 22 17 2 9 12 17 8 35 25 39 13 33 30 7 38 37 4 33 24 26 30 11 6 2 19 34 39 15 19 20 37 34 19 11 3 25 38 37 37 37 33 15 17 4 29 33 27 19 11 30 38 37 37 32 11 14 15 17 9 31 15 4 29 25 38 16 14 22 19 29 27 34 19 10 9 34 4 29 36 39 3 19 22 32 28 40 7 13 16 27 22 24 40 27 15 8 36 20 22 23 8 25 28 22 25 35 2 17 22 39 16 3 18 15 15 30 33 28 25 23 12 35 7 18 11 1 21 22 4 17 23 30 25 1 5 24 31 39 33 39 8 20 24 3 34 34 27 25 8 28 35 39 37 9 1 17 14 19 4 21 35 2 11 13 14 27 13 15 11 36 26 21 39 4 40 29 11 32 11 19 10 29 21 3 14 31 32 21 17 2 1 37 7 16 12 10 15 1 28 24 6 7 37 11 6 32 3 14 39 18 37 22 1 15 17 4 26 10 13 26 24 24 16 1 36 10 15 3 40 31 15 20 3 39 16 4 37 2 20 24 38 2 6 12 19 12 19 7 33 16 1 10 11 38 35 12 3 3 23 31 7 27 25 22 10 39 26 23 17 3 25 11 38 36 1 18 26 3 29 13 4 26 9 22 23 35 23 38 16 30 30 39 30 3 11 18 16 11 26 11 8 15 9 19 11 16 26 9 28 32 10 22 27 24 31 39 34 23 12 35 19 36 19 10 35 11 32 33 5 26 11 23 37 17 22 37 22 2 19 3 5 35 38 9 35 27 33 4 34 5 14 27 5 7 26 23 19 32 22 32 13 37 4 2 27 14 9 39 38 19 37 9 3 26 25 7 5 34 19 11 13 6 26 32 24 15 29 40 15 7 31 31 17 31 34 6 23 5 3 16 28 26 40 3 14 31 12 10 12 11 34 16 27 29 6 12 18 5 29 34 8 20 1 26 35 12 19 38 20 39 24 34 7 28 36 38 38 25 28 20 13 17 6 40 18 24 27 17 34 35 1 33 1 19 23 15 14 37 18 35 15 23 22 29 21 23 20 38 37 2 4 23 36 29 39 15 5 20 26 4 33 20 32 17 1 11 15 26 40 7 34 11 21 2 22 19 34 30 16 20 31 5 4 11 7 12 23 23 25 21 14 3 9 38 15 10 20 17 26 23 7 3 16 40 34 30 38 4 20 34 23 27 12 8 11 9 16 18 2 1 25 13 35 10 9 31 39 20 20 18 4 24 23 7 15 7 38 29 21 16 33 6 35 4 15 35 29 32 18 30 20 24 4 17 32 25 17 13 37 5 39 39 12 8 27 37 8 15 9 14 26 19 10 23 14 33 5 1 4 13 18 21 15 31 38 9 2 28 40 15 15 36 23 32 26 30 15 13 38 15 14 17 19 38 7 38 17 12 28 26 27 4 25 22 19 3 6 24 12 27 22 23 2 18 26 2 39 37 26 3 37 26 19 9 3 22 27 18 10 10 6 23 37 31 16 5 28 1 22 40 34 9 10 1 2 23 18 28 14 2 32 39 30 14 21 18 39 5 11 26 8 3 22 11 26 27 12 20 20 15 10 10 18 12 32 29 33 21 13 23 33 35 16 28 20 10 15 30 17 39 30 7 23 20 14 40 25 4 35 6 38 3 25 34 39 6 22 31 10 15 23 9 36 39 33 32 12 37 10 12 35 26 4 27 19 28 27 14 5 7 35 39 38 17 18 19 3 5 5 34 38 3 21 7 30 6 22 13 12 25 40 18 21 14 38 38 40 27 34 15 5 23 32 27 20 18 10 10 21 5 1 28 20 22 36 30 31 36 9 34 16 22 24 1 22 33 8 32 34 25 23 10 12 5 12 4 19 30 2 6 7 31 27 38 1 38 30 24 21 15 26 34 24 17 14 7 36 31 32 21 34 22 29 16 37 33 7 29 5 17 11 8 11 20 39 26 17 1 21 3 36 11 5 3 33 23 1 29 29 2 25 9 29 2 35 40 39 19 20 27 4 31 9 9 27 20 19 28 29 5 10 14 6 31 33 40 8 26 24 10 23 16 22 18 30 34 1 16 3 13 20 29 4 40 19 38 31 13 29 34 6 15 36 35 3 25 5 20 6 21 33 25 12 15 2 30 1 32 34 29 23 11 27 34 31 16 18 8 39 38 5 26 37 15 25 21 28 14 4 4 22 13 37 3 11 32 1 16 30 19 38 29 19 29 17 17 22 36 5 13 11 38 34 37 20 1 30 19 15 14 15 6 4 27 10 3 3 7 3 7 22 11 8 4 4 30 26 17 25 35 9 33 7 13 39 32 36 15 13 1 8 37 38 6 37 17 18 6 15 6 34 6 33 36 22 12 37 31 4 19 30 37 24 4 33 25 11 15 3 6 13 27 9 18 20 15 28 40 38 7 27 11 29 7 11 32 28 21 29 1 16 28 17 22 38 33 11 14 18 38 33 6 39 27 11 11 29 4 27 33 39 35 8 31 31 11 27 3 27 15 25 34 3 24 39 39 16 13 33 5 20 4 20 5 9 5 33 24 30 28 27 19 38 3 7 16 30 27 25 23 34 34 21 18 24 16 16 5 8 7 23 10 7 19 27 36 36 14 16 5 28 25 37 25 13 40 31 29 8 3 30 16 19 12 25 37 17 35 18 29 23 8 11 24 19 12 13 26 30 9 9 15 15 25 33 1 2 27 7 40 33 39 10 36 13 7 2 24 4 7 18 13 11 33 28 8 23 20 27 34 39 39 21 4 30 25 21 28 26 17 34 22 22 9 17 13 11 12 28 17 34 39 38 15 31 28 37 17 28 28 1 24 40 11 36 11 2 34 39 27 1 28 23 20 12 16 31 32 37 32 15 39 21 11 19 28 8 38 18 33 6 2 38 30 14 25 12 11 15 32 26 6 7 38 2 26 13 40 15 18 28 38 2 32 23 3 2 38 18 34 25 32 31 14 11 8 34 19 40 4 18 18 29 30 1 31 26 34 2 6 34 25 27 21 11 8 28 3 9 39 3 27 38 27 13 10 6 2 2 12 22 15 38 9 12 28 7 2 31 20 25 16 28 2 10 40 27 10 25 10 19 14 27 3 10 21 30 24 27 3 13 20 19 25 8 35 34 35 34 37 36 28 10 4 29 20 40 6 19 6 40 14 9 10 30 9 5 11 1 10 19 18 9 20 7 32 17 28 17 21 7 29 14 9 24 39 31 26 13 39 34 28 29 10 9 40 4 33 29 12 27 39 14 32 28 14 39 18 36 21 17 39 30 5 35 24 7 14 38 25 6 5 34 15 39 38 19 26 24 8 31 5 16 1 38 9 7 7 1 29 10 20 31 13 3 13 28 29 3 18 14 27 18 1 17 31 12 4 11 30 8 27 34 1 11 20 5 14 4 18 12 23 13 33 6 22 3 35 25 12 39 35 8 28 35 14 24 21 29 32 33 29 14 20 15 14 40 5 39 4 17 24 14 14 37 15 27 29 32 19 8 32 2 25 4 22 16 1 18 19 20 15 33 25 5 11 25 24 38 18 14 30 28 29 19 10 16 40 25 9 3 36 4 19 23 15 25 3 29 35 33 27 38 22 26 21 33 26 39 39 1 4 34 20 27 15 17 21 26 32 33 40 37 40 15 36 4 10 39 9 14 40 39 24 24 18 2 10 38 6 10 30 15 24 26 12 10 20 29 38 19 20 28 20 40 23 30 17 40 36 14 1 19 40 24 1 5 38 2 36 35 25 33 11 38 20 39 4 18 6 10 31 18 9 15 3 33 30 7 25 1 18 10 14 11 37 13 30 15 10 8 28 19 38 21 21 14 15 32 34 36 14 19 12 32 20 14 5 37 15 33 21 16 7 40 5 26 34 33 3 18 1 27 3 10 16 10 30 20 14 11 17 39 9 1 21 5 8 1 18 19 20 11 9 23 11 31 38 10 32 14 35 22 27 17 34 3 18 10 17 36 23 21 29 35 7 21 14 29 12 8 22 38 26 18 40 36 24 24 7 4 17 3 28 11 19 31 3 39 1 40 39 6 7 22 37 21 37 39 26 40 20 16 9 39 10 14 22 14 36 27 37 3 36 1 31 30 9 30 37 10 20 19 2 38 10 27 37 13 32 16 22 27 18 5 5 32 30 38 22 16 26 22 26 21 23 37 34 5 16 11 17 4 28 37 24 10 23 35 27 12 4 27 23 28 3 20 18 32 27 39 37 5 24 21 3 4 11 30 20 1 31 27 3 5 6 31 28 30 4 34 17 28 4 36 29 37 26 22 19 39 34 38 23 4 23 29 38 10 10 20 26 31 39 34 34 21 7 26 15 31 3 33 19 22 23 38 2 15 4 32 1 12 35 28 19 25 16 11 15 33 3 14 39 17 40 16 28 40 21 4 15 1 38 13 25 40 23 7 24 38 37 30 17 11 17 40 35 34 23 19 10 24 35 36 25 22 38 27 11 23 1 7 22 34 25 13 8 11 3 3 32 25 39 9 26 32 30 38 18 37 33 36 6 13 12 22 25 15 20 37 28 19 29 5 26 4 9 23 7 18 4 19 8 34 2 31 1 6 34 39 8 15 8 10 26 6 22 38 19 15 9 32 18 11 6 3 36 15 40 32 33 26 6 35 39 38 36 32 35 4 7 1 25 2 15 22 33 40 2 27 6 38 30 40 4 28 2 33 25 5 36 35 22 24 18 40 38 8 9 19 2 23 7 8 16 35 2 5 16 2 18 9 12 23 20 2 10 35 16 36 30 12 38 20 16 9 28 25 23 11 16 8 21 23 13 23 21 16 17 5 39 1 23 6 7 22 38 32 34 22 38 15 9 37 29 7 35 33 30 39 27 13 7 22 40 1 10 15 16 30 28 32 26 3 14 22 24 26 31 13 31 37 3 3 14 23 22 22 11 5 9 16 4 38 9 36 36 19 24 23 38 21 9 12 16 21 3 39 3 17 27 7 7 21 3 16 16 36 12 21 8 33 9 23 31 31 40 10 30 28 23 18 23 40 34 30 30 35 34 31 8 32 31 19 18 19 5 35 4 30 7 6 33 37 21 23 35 8 40 9 10 39 16 30 8 19 28 39 38 4 36 12 34 28 30 11 11 9 11 38 10 2 31 20 28 19 16 32 23 14 14 38 31 38 20 1 32 25 34 36 8 34 14 34 9 3 20 38 25 23 27 30 3 39 7 16 3 1 36 31 23 28 24 2 15 19 14 25 29 3 18 19 6 38 5 10 37 22 7 18 21 11 36 4 4 35 20 14 35 3 10 20 20 6 29 5 37 18 16 36 7 4 40 29 22 21 38 28 31 32 22 33 33 7 4 33 28 25 24 35 38 27 13 17 31 20 16 26 28 33 30 32 17 37 31 27 29 4 25 7 37 33 35 25 33 23 27 2 18 33 23 20 10 35 23 16 16 40 21 26 5 1 40 38 10 14 28 18 5 22 9 21 11 8 24 5 38 19 32 14 4 3 24 7 32 25 13 19 10 4 38 17 36 14 33 5 35 19 17 26 29 4 20 32 23 31 31 9 2 4 20 27 31 26 27 32 14 11 17 25 29 22 40 29 5 22 12 24 24 17 11 40 6 4 18 6 27 33 35 16 21 16 19 22 27 36 22 31 19 1 11 30 29 6 27 20 19 4 32 35 36 29 11 11 40 4 33 17 9 16 38 25 34 36 7 4 22 9 23 6 32 15 33 10 7 23 31 23 6 19 17 3 26 23 33 30 3 34 25 10 39 22 7 1 37 27 30 17 35 2 12 15 30 40 18 13 8 12 28 20 27 34 26 17 2 20 37 18 29 30 32 39 9 21 31 33 11 21 40 25 2 29 29 3 27 4 15 26 10 34 37 32 12 4 5 6 1 20 5 3 24 7 35 27 5 27 9 39 14 18 17 4 40 33 30 31 40 4 2 30 5 33 22 13 17 6 23 34 16 10 16 24 15 20 10 18 32 33 30 1 10 8 15 1 17 1 27 4 38 12 14 23 26 4 28 5 32 5 1 13 30 18 18 38 12 30 13 31 8 5 40 34 22 39 40 34 28 35 22 27 28 16 30 20 36 5 35 40 3 39 17 8 40 26 27 31 12 14 37 2 32 14 32 3 18 6 25 38 27 9 25 24 6 20 35 30 14 6 29 14 14 33 19 38 19 5 13 1 6 39 37 14 18 1 14 6 25 27 1 18 34 27 2 15 39 17 27 23 17 4 11 7 29 21 15 9 22 12 12 38 27 21 12 36 29 37 38 33 32 9 2 32 1 22 36 16 3 32 39 23 8 6 7 38 9 23 37 30 6 36 4 11 29 18 20 31 39 22 10 19 28 19 3 25 40 21 28 10 17 19 36 9 27 8 12 13 34 14 28 11 39 21 34 22 30 37 11 13 23 11 21 21 6 28 4 5 4 38 31 4 28 13 23 22 32 9 23 32 12 12 6 17 37 2 34 26 7 21 6 6 3 23 35 12 36 30 14 36 2 1 6 17 31 17 26 10 3 2 15 12 29 13 39 12 27 15 18 16 38 9 34 16 31 2 19 32 1 35 14 2 17 4 21 40 30 20 24 14 9 10 25 1 5 31 9 33 28 9 15 1 9 5 9 17 21 34 26 8 32 39 17 3 20 37 7 4 21 8 21 20 13 24 16 8 27 26 8 17 24 33 2 10 17 13 34 23 22 17 11 11 6 17 17 15 15 23 25 24 31 36 7 33 2 11 35 6 32 7 38 29 16 39 1 40 38 36 2 21 6 5 13 14 29 13 10 23 8 35 19 1 5 9 1 4 5 7 2 6 24 27 31 8 19 4 20 21 40 26 15 10 5 4 8 3 32 33 30 17 37 21 16 37 5 7 31 32 40 17 2 16 36 8 29 8 31 25 1 36 29 40 31 17 38 13 38 16 40 19 20 9 31 20 23 38 7 2 3 10 16 40 26 36 14 32 1 34 4 15 16 5 5 29 11 32 29 12 6 35 24 5 6 36 32 6 30 23 15 11 19 18 34 19 8 20 31 13 35 5 10 23 9 4 15 2 3 26 25 17 23 2 1 26 17 14 4 33 40 26 19 8 17 4 40 22 18 12 8 2 34 34 32 5 34 1 16 24 15 14 36 31 38 32 40 24 2 28 14 15 23 9 28 14 29 1 5 21 27 10 3 36 37 38 31 15 17 21 22 32 35 26 37 20 34 6 22 1 33 2 39 27 38 5 22 7 38 33 35 23 1 16 8 24 14 23 18 37 36 6 30 7 18 40 38 39 8 6 39 37 25 7 36 32 22 7 11 16 7 14 30 24 15 3 39 15 3 7 38 35 20 1 15 14 12 4 19 25 29 32 22 11 28 25 7 37 16 2 36 20 39 7 9 40 8 16 16 27 13 25 11 7 5 12 29 33 6 25 28 1 24 33 5 9 8 26 3 15 11 16 3 34 29 16 5 15 20 9 9 40 30 40 10 1 20 29 13 6 26 16 39 24 35 20 10 1 3 23 1 19 16 5 3 20 31 1 28 24 33 21 37 12 16 18 6 32 17 22 6 38 9 11 31 16 39 6 26 11 2 33 10 24 3 33 15 7 13 19 25 32 40 3 29 24 2 17 14 9 19 25 10 18 14 29 11 5 23 7 15 29 35 4 34 3 37 4 29 32 24 37 6 25 16 10 16 39 20 32 38 18 16 34 6 31 11 7 24 34 37 8 14 17 12 3 3 24 22 9 30 38 2 9 30 15 39 3 7 30 13 21 25 24 23 1 12 36 17 28 26 21 26 37 14 27 25 9 6 24 2 36 40 40 39 24 20 20 26 32 12 10 1 32 23 5 33 21 32 17 19 35 27 38 6 14 10 23 38 12 24 11 32 21 39 5 17 8 22 2 15 6 27 35 4 5 23 13 7 7 18 16 33 9 29 32 30 3 11 9 18 39 8 24 34 15 37 30 23 1 2 30 22 25 20 8 38 10 28 2 24 2 39 4 11 29 1 16 12 9 16 27 15 6 32 22 20 33 13 37 24 19 22 12 5 22 29 38 4 7 7 12 18 21 35 26 31 2 26 2 19 29 9 17 39 30 11 30 17 28 4 37 19 12 17 26 5 13 5 5 39 39 10 32 23 36 35 5 32 40 33 1 23 31 20 26 10 18 36 18 38 7 38 16 15 24 20 26 14 21 40 33 29 3 6 39 23 13 9 27 21 28 8 6 15 27 14 25 31 6 36 7 27 25 31 25 20 14 34 5 13 13 2 3 17 38 25 34 29 13 40 12 21 21 37 38 39 37 12 38 18 35 32 12 18 30 19 7 14 24 9 26 25 38 27 21 21 11 39 30 40 28 23 10 3 21 19 9 18 15 17 14 1 6 6 21 37 16 38 16 21 34 32 16 24 1 7 5 39 29 29 23 30 39 2 4 24 26 36 39 5 17 11 15 35 21 26 15 10 19 21 3 12 20 27 14 19 16 40 34 35 31 6 33 17 4 20 25 24 36 39 23 7 35 6 39 14 6 36 4 28 25 6 16 34 9 39 26 13 5 7 17 26 35 23 20 4 31 20 21 25 4 1 18 9 15 31 31 11 13 7 2 26 11 29 17 13 14 31 20 39 6 33 15 1 15 7 16 29 8 13 36 1 30 26 3 6 19 32 19 32 36 11 16 8 12 17 7 23 32 38 37 33 15 21 22 31 31 26 32 36 17 23 31 38 38 34 29 17 12 10 9 39 20 16 40 26 4 38 33 29 7 29 36 9 18 14 27 30 11 12 34 34 2 2 34 8 14 27 1 13 40 27 9 31 35 21 18 13 20 5 9 20 14 38 18 15 25 1 40 21 35 37 10 14 17 17 3 22 38 24 14 2 33 38 26 8 18 25 29 18 1 29 30 14 6 39 17 11 25 33 34 13 4 13 30 4 36 19 8 26 11 14 1 5 27 28 4 13 39 18 10 29 33 15 34 5 1 35 27 14 30 13 24 35 39 26 12 17 38 28 38 36 18 18 11 6 20 13 40 18 7 4 31 15 6 30 26 19 32 32 34 6 12 21 2 2 19 23 10 5 32 7 16 15 18 33 27 16 5 8 20 20 14 10 30 20 9 8 35 6 20 15 26 18 12 33 13 30 17 6 22 32 40 34 37 8 28 38 31 39 33 21 6 2 30 35 21 7 32 6 4 26 7 19 28 30 35 16 35 36 26 27 8 12 3 5 35 10 1 25 16 36 28 22 2 38 1 22 13 34 25 32 30 2 38 5 26 6 18 19 12 34 6 32 39 20 39 4 4 14 6 20 2 25 11 27 17 35 27 40 1 25 15 2 37 14 7 37 39 32 11 40 6 23 6 15 33 6 15 27 5 2 1 8 5 5 6 6 40 13 7 40 16 21 22 16 11 32 10 31 23 17 33 15 21 21 12 1 10 22 12 9 11 23 16 11 27 24 29 19 40 14 16 22 29 34 5 29 9 15 30 11 3 15 25 21 31 10 8 28 13 4 15 19 17 4 33 10 4 19 31 35 3 31 27 6 23 25 18 19 35 24 27 32 4 35 26 29 19 23 26 15 7 18 19 11 6 40 27 5 33 5 16 10 38 6 2 32 27 16 11 15 21 4 16 37 13 17 37 27 8 1 9 16 30 27 4 23 12 5 23 20 16 10 32 9 10 10 15 34 2 27 15 8 3 24 12 38 34 11 22 21 40 36 8 7 29 23 35 4 28 4 34 2 11 2 9 24 2 27 28 13 21 34 25 15 25 19 39 10 16 8 33 8 7 24 15 27 10 26 26 32 12 17 30 2 2 34 26 31 26 29 25 29 38 37 26 2 8 31 27 32 35 17 32 29 28 34 13 3 38 7 13 27 30 25 22 37 10 7 33 28 36 39 16 13 32 12 19 31 3 28 8 13 38 36 3 8 21 23 7 10 19 22 34 23 14 36 37 27 24 2 34 21 32 23 26 35 29 37 20 6 2 29 36 14 1 3 13 19 3 33 1 37 24 4 29 12 33 13 31 23 11 22 38 16 15 22 31 25 32 10 36 38 3 23 34 13 17 36 15 36 26 26 4 36 33 31 1 17 38 10 30 21 22 21 14 7 37 38 5 38 37 31 20 22 5 26 16 14 31 4 8 1 18 22 12 25 7 28 30 14 37 19 30 11 39 31 40 27 16 28 32 30 27 10 5 10 20 3 14 24 19 26 14 36 19 25 33 23 17 19 18 29 39 26 12 13 34 21 32 3 33 6 35 22 6 11 40 5 9 39 22 6 16 31 7 3 19 15 1 20 19 15 6 6 34 32 39 26 30 40 35 37 28 27 7 24 11 3 27 37 16 36 25 9 9 14 30 5 5 34 7 2 1 17 37 6 16 24 15 36 9 32 7 17 22 24 19 40 27 11 30 35 39 34 5 23 27 30 1 15 28 12 15 23 18 35 33 13 11 5 17 38 13 29 4 19 39 40 6 4 7 4 32 20 23 34 35 17 9 22 6 3 22 6 14 7 10 35 28 17 40 17 14 12 16 34 14 20 40 28 11 19 11 6 32 38 21 1 28 28 30 32 25 39 6 23 9 1 31 32 1 28 23 15 10 18 21 6 37 15 9 1 8 22 37 5 39 30 22 31 21 7 33 2 21 23 30 4 10 39 3 1 24 2 39 30 7 35 40 16 3 34 39 28 13 24 21 23 21 26 16 5 23 8 3 17 18 9 30 20 16 13 16 21 36 38 37 7 10 33 28 24 33 18 20 39 35 36 34 16 10 25 35 40 4 1 35 34 37 16 7 12 3 9 7 40 4 7 10 16 33 2 4 6 35 35 17 37 36 38 31 3 12 16 8 32 28 22 8 9 29 29 1 26 24 33 7 4 40 33 22 32 17 1 34 7 18 26 36 17 1 33 30 24 33 40 15 34 12 39 15 1 28 5 16 23 39 29 27 17 25 37 25 37 18 23 30 28 20 23 5 23 23 29 21 40 12 17 34 9 19 21 6 11 5 18 36 10 34 12 38 28 34 12 24 35 3 20 36 19 36 38 28 14 18 11 22 2 27 27 3 32 4 11 39 29 16 21 11 27 37 18 30 14 13 1 25 13 2 18 16 14 1 24 29 2 30 5 28 31 33 7 3 1 40 24 39 22 29 19 5 39 6 22 14 26 11 24 16 32 9 25 36 25 5 3 26 33 32 12 27 20 35 1 27 35 39 8 10 34 2 23 25 28 11 25 4 35 26 30 28 16 29 13 26 24 10 26 40 2 11 28 34 9 7 8 8 33 16 14 37 2 14 9 1 7 17 2 29 10 38 21 11 30 23 37 19 28 31 27 5 36 23 7 16 31 1 9 38 14 38 8 32 13 5 18 25 25 16 7 1 11 32 15 19 28 14 36 18 12 11 27 36 3 4 34 35 40 36 28 35 22 18 12 17 19 7 24 24 1 15 2 21 40 31 24 20 40 21 15 17 14 29 24 19 3 16 11 17 28 40 40 21 3 28 39 10 13 35 11 10 24 10 19 33 6 18 13 21 9 26 12 30 5 1 32 36 7 15 29 34 1 39 32 34 35 34 6 3 25 12 20 9 23 29 24 22 34 14 35 13 40 15 16 27 3 1 36 34 16 40 20 22 39 1 39 4 11 5 40 26 12 18 30 31 20 22 32 28 37 26 7 1 23 7 15 10 39 38 13 28 27 15 23 31 11 7 8 27 34 30 23 26 32 3 9 16 8 12 18 15 26 5 22 39 38 15 1 33 30 4 28 2 4 33 22 38 4 29 33 34 31 31 28 26 26 39 39 34 24 28 13 40 30 19 17 12 19 29 31 11 24 33 6 10 28 7 29 23 23 10 4 20 5 15 39 15 33 20 15 35 28 13 9 26 8 12 15 33 1 15 39 31 25 27 40 24 10 13 18 27 16 29 31 21 2 14 40 32 14 37 39 19 27 15 25 31 37 17 19 3 15 2 17 40 3 3 24 27 21 34 2 8 27 17 2 6 1 9 34 18 35 7 5 16 1 12 5 25 24 37 19 29 31 11 34 26 36 1 19 35 33 13 40 6 11 37 5 37 14 7 20 34 34 1 25 12 13 4 3 30 27 17 22 23 38 16 26 6 8 13 23 20 40 19 17 6 35 34 27 34 23 21 7 28 14 37 33 37 8 10 19 26 5 11 18 39 13 5 39 18 7 24 5 7 9 34 36 33 39 2 7 19 33 8 20 39 10 2 2 19 30 15 28 37 38 40 39 7 40 24 3 22 37 33 13 37 33 29 27 2 22 13 32 23 20 14 22 32 14 19 15 31 24 13 3 3 29 8 13 14 25 31 25 28 3 13 29 23 30 25 38 19 24 31 11 40 24 4 40 34 11 12 1 6 18 39 4 8 17 36 19 9 13 40 29 32 37 18 29 8 14 19 7 9 3 3 36 10 23 31 24 21 4 31 20 9 36 34 6 23 39 18 2 25 26 31 26 1 30 24 29 21 8 33 8 6 40 18 11 18 20 18 15 14 31 23 21 15 40 3 20 39 33 25 4 28 29 35 12 24 25 39 23 30 11 4 32 27 29 6 36 16 31 20 24 7 22 30 35 39 5 18 10 12 28 25 30 2 9 18 28 30 15 9 9 38 25 3 4 4 22 7 34 28 27 2 14 28 19 7 23 26 34 2 23 5 30 4 2 40 28 32 34 18 24 5 35 23 2 14 14 40 30 25 33 27 29 11 12 23 12 40 4 22 12 40 29 4 22 34 8 40 30 3 31 38 22 10 13 40 36 15 30 22 2 30 5 22 16 3 6 11 26 23 20 33 17 12 32 10 11 26 1 40 36 22 4 13 4 2 7 17 21 11 25 30 31 30 11 4 30 35 5 19 8 16 30 16 12 29 2 16 30 32 2 15 9 25 4 14 18 18 28 12 35 1 37 16 2 5 37 22 30 21 33 12 29 11 16 22 16 4 33 17 9 18 28 5 9 9 35 4 16 14 20 37 23 30 1 20 27 24 3 14 32 31 20 9 25 32 6 30 35 22 17 16 16 11 16 31 26 24 29 15 29 38 16 27 8 3 1 25 11 22 40 25 34 38 30 21 1 11 36 7 19 31 28 25 34 25 24 35 34 30 32 13 31 20 24 29 9 1 37 4 11 33 19 13 33 34 2 10 13 31 7 12 36 4 30 38 26 22 15 36 27 8 39 36 20 21 24 16 25 13 30 28 13 38 24 27 20 2 37 34 13 4 24 5 18 40 16 29 18 23 39 28 11 3 28 28 28 21 33 14 19 1 19 17 31 37 8 39 16 13 23 19 9 1 36 13 7 21 8 6 37 37 15 27 11 24 20 2 21 29 28 5 24 1 37 22 30 13 34 26 9 9 37 8 34 18 2 36 4 8 22 2 37 37 24 11 20 7 2 35 10 33 31 16 7 10 25 23 31 6 21 20 28 23 3 33 18 28 32 10 28 33 36 21 12 31 33 25 29 14 37 34 11 31 28 7 14 24 26 5 9 39 35 26 8 39 12 26 39 20 3 3 5 7 32 10 38 12 40 15 11 2 17 4 36 40 34 35 15 14 9 22 34 24 4 13 28 19 6 22 9 5 11 27 12 29 30 5 14 30 11 34 31 36 4 31 39 19 2 31 35 12 10 11 22 35 39 3 10 30 31 29 14 23 23 17 4 37 6 29 17 26 15 25 12 26 9 40 20 29 5 38 1 33 37 24 37 5 12 3 32 13 38 26 10 1 13 10 16 15 34 14 12 17 9 12 38 23 3 27 6 16 26 38 32 37 2 25 7 17 22 38 8 14 14 29 17 23 30 12 2 15 4 35 11 3 24 33 12 30 37 25 4 13 11 6 40 25 25 13 14 26 18 39 35 27 23 12 36 29 30 11 40 18 31 8 10 10 11 22 23 28 5 3 38 10 10 13 6 13 8 28 35 15 34 39 2 22 34 26 33 4 18 27 12 40 6 10 33 17 35 8 34 11 26 36 18 23 19 36 36 11 16 13 18 30 10 1 29 35 31 34 17 25 27 6 11 9 37 20 36 35 20 29 39 32 39 28 40 37 29 9 25 32 34 15 28 39 39 13 33 9 37 33 4 18 2 4 27 17 9 33 24 33 3 17 34 18 21 9 17 26 15 33 21 40 40 7 29 7 11 22 6 18 6 15 15 27 37 39 37 19 5 32 37 32 27 38 40 34 10 38 4 9 28 31 38 38 1 34 15 12 25 13 30 22 6 19 18 37 18 22 12 23 40 36 2 23 4 24 14 15 11 11 9 34 3 32 28 34 14 6 31 31 27 7 8 12 28 35 2 40 26 40 4 13 35 18 1 35 16 23 36 18 30 5 13 3 35 24 31 37 24 1 4 14 26 7 33 27 11 4 31 11 13 20 10 40 10 25 3 16 24 30 3 30 8 39 39 2 10 31 4 26 16 35 31 3 2 8 21 2 37 1 39 15 3 25 26 32 28 7 31 20 24 37 35 7 27 10 20 11 25 20 40 21 7 33 40 27 12 34 22 16 14 9 10 10 21 1 27 15 12 15 1 33 18 5 40 7 38 16 20 3 6 34 24 31 37 23 31 24 14 21 1 37 31 18 39 30 20 4 28 5 34 9 14 6 26 5 2 23 29 3 33 32 11 5 2 26 4 1 38 21 20 34 18 24 6 8 6 34 22 23 32 3 21 8 26 10 14 29 26 16 12 17 38 6 28 24 15 13 29 9 20 36 5 29 19 35 30 22 37 39 21 4 9 24 34 14 15 16 29 34 12 7 18 40 25 5 27 25 25 7 16 19 28 39 13 7 2 13 37 22 17 2 3 28 6 40 5 11 23 7 38 1 1 4 23 14 8 40 37 15 11 3 12 8 34 16 37 33 23 19 13 17 8 38 28 32 7 2 28 39 13 28 31 38 14 3 24 38 19 32 38 38 3 12 37 34 12 8 13 24 31 5 7 10 19 15 17 31 13 33 19 27 3 18 32 15 23 35 18 32 3 9 29 23 5 37 28 11 32 26 25 18 40 18 9 13 16 38 4 36 23 14 32 3 35 7 23 29 31 34 38 40 14 1 21 34 10 16 35 9 26 36 38 12 14 39 24 28 11 38 5 12 16 7 12 3 23 18 28 13 27 18 34 17 16 9 19 30 31 18 34 12 28 34 13 21 22 7 8 10 8 18 17 27 13 29 35 7 5 14 4 38 6 8 29 18 28 14 29 8 24 1 10 26 33 28 2 24 38 16 32 1 18 7 8 28 24 24 19 35 3 30 20 28 23 1 30 20 25 10 33 5 10 6 21 25 32 30 27 33 8 18 20 15 8 3 20 24 23 18 9 27 9 32 29 34 10 16 14 35 10 36 40 7 4 7 10 15 18 12 8 15 27 15 31 5 6 10 2 28 26 40 14 35 38 40 40 29 7 12 38 35 29 33 32 37 7 15 14 17 25 39 7 9 14 36 19 3 37 2 35 16 16 13 20 1 28 8 9 8 40 4 11 12 4 16 33 35 2 35 8 40 40 39 25 27 29 38 36 10 18 2 6 19 2 19 30 22 31 27 33 40 9 32 35 40 5 39 16 17 3 15 14 10 33 19 36 2 30 11 24 12 36 9 4 11 38 10 32 1 32 8 23 15 12 29 23 1 39 15 2 25 8 20 19 30 39 4 13 39 18 1 27 27 34 25 2 38 34 8 24 23 13 16 3 2 37 17 3 23 30 40 7 31 32 10 6 38 37 11 15 24 14 5 21 19 17 20 4 3 3 2 20 30 11 4 15 15 17 38 18 37 40 34 11 20 29 17 29 15 33 3 29 11 16 39 29 30 30 24 38 34 30 9 17 15 10 14 38 30 5 2 7 35 5 36 16 10 17 29 11 40 33 16 16 35 39 10 13 12 1 23 36 1 15 13 4 39 11 14 7 12 38 20 14 29 1 2 34 19 24 10 21 29 20 40 1 38 22 4 36 23 8 40 28 5 1 24 2 18 18 17 30 35 38 2 14 7 10 22 23 27 12 26 32 37 26 14 3 37 23 19 26 38 13 20 8 12 3 20 27 15 22 20 38 4 37 4 24 38 20 15 17 10 39 7 8 31 23 24 8 35 40 29 24 13 38 5 36 2 37 32 17 28 14 40 8 25 28 38 9 16 23 36 21 36 16 27 6 22 9 25 32 40 27 9 35 32 20 23 10 5 21 34 23 6 18 31 27 14 17 8 1 5 26 4 14 18 12 37 27 13 37 2 21 25 11 22 19 11 38 4 14 24 23 9 33 23 10 30 9 40 26 16 36 21 13 6 12 33 7 10 1 26 27 8 14 5 36 7 1 31 29 28 33 23 12 19 10 28 17 20 30 18 35 7 36 18 34 17 38 4 31 25 13 2 12 18 15 21 13 24 35 5 36 13 13 36 9 39 40 22 32 11 3 15 34 19 21 30 8 14 23 19 10 33 38 38 10 26 32 38 40 30 33 1 27 27 31 2 13 4 38 21 11 40 39 18 19 2 6 29 2 13 20 2 23 29 38 21 24 6 26 7 15 11 1 37 25 35 22 5 5 27 6 14 18 21 17 22 31 27 23 14 34 20 36 29 18 3 17 32 27 11 7 29 25 9 8 36 31 28 13 34 9 18 17 6 32 24 5 17 19 14 27 30 7 32 31 40 38 33 9 15 6 2 3 3 36 4 37 14 31 2 15 24 13 39 14 12 14 27 18 18 18 39 13 39 9 22 24 20 18 36 33 2 11 4 21 20 8 24 38 1 24 17 3 26 26 11 25 5 9 33 18 8 2 37 28 30 10 12 10 27 14 37 9 33 34 30 23 19 20 16 15 29 34 8 22 28 21 10 31 40 26 5 7 36 11 2 23 34 13 30 26 34 22 15 26 4 9 14 10 2 20 26 13 21 12 26 9 23 25 6 10 34 25 2 32 35 22 22 3 28 38 34 19 25 13 4 22 27 9 25 6 2 3 37 7 40 2 23 30 5 2 2 38 18 31 3 2 14 4 28 33 13 18 31 19 25 4 5 21 18 9 7 39 9 16 26 24 21 9 25 24 25 24 1 22 16 40 16 11 17 27 36 14 12 36 14 38 31 1 8 23 26 1 16 5 16 32 5 20 28 4 26 5 36 11 34 36 39 28 35 9 21 18 25 23 38 1 6 31 4 2 17 27 34 12 18 37 4 22 25 8 31 21 29 17 27 24 16 19 30 32 13 34 31 25 4 2 23 17 8 25 14 6 30 7 17 30 5 23 27 1 16 40 2 33 27 7 8 4 18 34 5 26 18 25 13 19 3 37 21 13 25 12 23 12 39 25 12 40 8 8 29 10 29 4 7 30 14 12 18 21 11 29 26 32 39 8 20 26 24 9 7 26 20 13 26 24 1 18 33 9 24 6 26 14 33 23 1 7 29 16 22 13 28 21 8 9 23 22 9 39 8 21 9 22 9 31 13 27 1 17 31 27 11 18 1 25 17 18 9 18 14 30 11 35 7 37 39 32 34 24 12 29 35 19 13 25 1 16 9 32 13 22 32 33 39 28 5 22 38 28 39 33 39 11 23 21 37 37 6 30 4 38 26 38 1 14 14 26 36 23 37 9 18 16 31 2 22 26 18 19 38 16 40 7 6 33 25 38 39 35 32 16 24 6 13 1 19 7 26 40 12 18 7 24 36 34 18 35 29 19 16 30 27 2 20 29 11 6 31 13 37 15 2 21 1 16 36 5 15 29 19 40 18 2 11 29 4 5 5 20 7 12 8 25 39 13 3 37 19 11 34 5 35 15 26 27 5 8 14 22 16 24 20 20 18 28 11 7 2 27 17 24 18 2 25 22 18 10 34 6 11 5 31 25 34 26 28 4 19 34 4 26 7 6 32 12 28 18 38 11 21 2 15 6 13 25 26 31 1 6 20 10 40 35 38 34 16 17 1 10 27 4 37 12 31 26 24 16 32 19 2 3 19 25 38 21 24 16 24 10 36 16 2 10 20 33 12 25 10 39 14 19 38 30 4 24 28 10 6 14 10 36 18 31 25 32 31 16 15 39 1 29 20 1 3 15 10 10 13 28 37 35 16 34 19 38 10 28 32 7 21 4 13 16 16 25 18 29 12 13 25 35 38 12 5 32 24 14 30 11 27 17 18 30 3 15 21 15 29 11 23 14 31 7 26 26 30 5 38 28 22 17 6 11 25 31 2 14 38 27 28 26 26 1 7 9 10 37 6 29 12 39 4 28 30 11 28 18 28 12 1 32 24 30 33 13 8 28 31 28 30 14 37 11 33 27 6 38 29 38 29 5 37 28 35 10 31 19 2 39 15 8 4 12 10 7 26 23 25 12 15 9 27 26 24 36 26 27 19 7 38 35 39 10 7 31 27 29 30 7 29 5 29 19 1 3 4 30 4 27 32 4 4 12 7 4 35 27 37 32 5 24 34 15 10 19 16 4 12 32 13 7 11 25 2 4 8 4 29 5 24 26 19 23 35 29 15 35 39 25 12 30 40 35 32 14 25 37 16 4 40 22 40 13 13 28 13 32 19 4 34 33 21 8 18 36 9 4 19 22 7 35 19 13 28 18 7 5 9 5 23 20 13 18 4 36 16 7 37 18 32 9 5 6 40 35 12 13 23 36 40 35 22 33 5 5 6 21 4 10 30 38 14 33 13 36 40 37 18 30 22 37 37 26 23 38 15 7 15 2 19 9 37 17 5 13 36 1 23 26 38 24 5 32 35 30 22 40 10 33 31 14 5 16 38 23 38 25 26 2 22 17 7 12 23 22 18 6 10 39 10 30 20 10 29 37 40 40 4 13 27 32 13 25 25 12 10 17 29 10 12 9 33 21 4 12 3 4 22 24 4 13 16 15 26 12 8 31 10 24 18 25 3 18 2 12 5 14 3 6 24 35 26 14 3 26 28 33 6 7 13 19 20 31 30 37 7 19 38 9 3 38 16 38 4 1 39 37 14 19 9 15 12 10 15 13 6 5 39 39 37 31 16 24 39 36 40 15 20 3 32 39 2 2 23 1 1 13 20 34 39 21 34 18 3 8 34 14 6 9 18 20 1 20 40 5 19 21 3 22 28 13 2 28 38 20 4 21 35 7 27 21 13 6 5 1 14 22 39 29 22 7 34 3 3 28 4 3 2 38 5 21 29 25 23 14 28 33 16 23 21 40 4 19 30 7 36 29 3 32 30 26 2 34 36 28 40 25 13 5 4 10 27 27 15 16 20 25 38 26 16 32 28 20 40 11 35 23 33 38 13 33 23 14 37 28 13 12 27 22 22 9 13 26 4 22 4 24 32 23 35 10 31 2 15 35 5 20 30 1 24 21 22 5 32 18 40 26 15 16 14 39 16 10 26 4 3 13 7 13 5 17 5 9 37 15 14 13 35 19 12 27 19 1 22 28 16 15 18 30 37 24 29 23 27 10 22 19 18 37 38 25 36 1 19 28 28 32 3 2 25 23 1 15 27 16 32 2 16 16 4 27 27 16 21 32 14 13 23 37 20 22 18 8 2 32 1 40 17 16 14 31 23 37 5 1 24 3 6 15 31 29 24 13 13 20 35 33 35 30 17 21 40 27 37 23 39 8 20 36 32 25 27 28 33 2 34 32 23 23 21 7 19 36 26 31 12 17 20 32 9 19 20 9 11 37 40 34 6 13 13 14 21 31 18 32 35 29 31 16 31 15 32 27 16 37 38 33 30 2 39 35 20 27 22 10 33 26 23 2 33 33 22 2 32 18 24 9 16 7 36 35 40 33 33 23 16 36 15 28 23 39 14 36 1 38 16 3 40 28 36 23 30 9 17 19 14 3 6 4 27 11 7 26 32 37 29 39 36 29 9 34 18 1 6 3 36 21 11 1 33 24 21 30 10 7 36 35 13 12 10 22 32 39 19 27 15 14 7 29 6 6 2 13 14 10 7 33 14 32 14 20 29 13 6 4 33 11 40 3 13 36 6 19 37 23 22 16 4 34 19 6 40 26 18 13 27 25 14 4 23 6 22 8 18 12 22 22 21 31 13 21 11 22 3 1 40 32 29 23 28 38 13 21 33 35 24 40 35 37 15 7 38 14 39 6 33 38 8 10 16 38 16 30 40 6 6 28 32 29 37 6 24 2 27 26 31 16 36 28 5 7 31 8 38 33 3 20 15 35 33 39 4 21 18 38 32 30 10 39 5 10 1 13 25 19 27 31 29 36 33 10 13 2 24 4 8 21 18 35 2 10 7 10 5 10 16 28 23 38 17 15 25 38 25 2 25 4 32 33 22 14 15 17 35 26 20 8 13 22 40 22 35 17 14 27 21 7 3 31 19 22 37 7 26 7 26 38 25 4 13 28 36 23 18 34 32 26 21 35 5 25 13 32 2 4 10 11 12 11 2 9 12 7 39 29 26 18 22 10 14 30 33 29 1 27 5 37 15 39 27 27 40 32 23 16 40 29 2 5 22 12 2 23 14 25 22 11 17 6 16 26 12 1 15 11 2 5 40 31 29 32 19 26 30 27 31 2 16 7 22 15 21 34 16 31 25 8 13 33 33 7 24 26 40 14 34 31 15 28 40 32 13 38 29 32 4 15 29 40 13 36 5 11 10 39 3 25 24 15 32 3 36 19 22 22 21 12 8 35 17 5 31 15 34 24 3 6 34 38 11 25 11 22 1 28 7 27 5 33 27 26 18 26 38 10 16 33 38 1 34 9 40 14 29 35 29 14 18 11 17 37 18 5 24 6 9 18 17 23 37 3 31 17 28 17 23 7 39 36 21 5 11 29 9 34 16 10 32 9 4 12 4 15 13 9 20 28 16 34 3 40 12 7 3 33 20 26 32 16 8 27 30 19 5 10 31 21 2 40 37 2 34 2 10 36 27 34 16 11 4 29 7 3 38 13 28 33 35 39 6 31 34 29 17 40 39 33 30 1 23 18 1 9 23 40 19 15 10 26 26 29 14 38 19 16 31 17 16 1 26 12 9 27 1 12 38 32 12 23 1 19 35 18 14 8 29 21 39 35 38 34 12 34 39 4 16 1 1 31 13 2 29 4 28 38 10 19 2 10 18 10 31 38 30 21 4 18 39 32 34 12 27 15 32 27 22 27 37 9 14 19 40 5 27 40 39 30 15 7 27 33 24 13 20 14 2 27 37 2 3 25 27 37 4 4 27 12 18 37 18 7 20 16 33 24 9 24 5 3 7 10 11 19 7 11 13 3 2 20 37 15 5 5 40 14 37 22 21 38 32 2 27 18 3 1 29 7 22 9 35 30 7 10 24 27 25 1 1 26 16 13 7 29 1 2 39 33 37 10 40 9 38 22 22 8 34 4 27 5 1 19 27 28 4 33 19 11 27 37 31 25 32 1 2 2 4 23 30 9 37 25 36 37 13 9 2 3 24 4 23 39 6 32 38 25 19 10 38 19 40 5 30 40 37 10 4 25 8 8 25 14 17 10 30 4 20 4 26 33 26 20 38 24 5 12 21 14 23 40 24 21 7 11 7 34 36 19 25 14 19 14 9 38 5 10 29 4 16 36 2 31 18 16 27 17 8 29 15 33 40 12 37 40 16 24 28 22 16 37 4 21 33 27 40 27 38 12 29 4 28 37 35 8 38 34 36 17 28 32 23 19 2 32 28 39 3 24 13 14 25 3 6 8 2 4 3 35 11 34 22 29 32 18 28 15 14 33 37 5 21 36 35 32 37 38 8 17 40 5 6 12 31 28 30 31 5 10 33 28 7 33 8 6 36 22 32 12 30 25 38 32 25 2 3 3 21 2 10 27 40 38 26 15 38 12 23 9 21 12 26 8 40 34 32 32 11 36 21 22 27 15 21 10 15 12 4 5 26 40 15 21 37 5 34 9 25 30 7 17 34 3 18 4 17 25 8 1 28 16 33 1 17 25 33 29 9 13 23 8 23 3 12 33 8 7 27 21 6 38 40 20 37 35 17 16 30 16 22 7 4 33 33 32 24 35 12 40 7 39 8 3 3 4 9 34 40 27 15 6 37 19 6 24 24 28 37 26 28 14 38 22 7 22 20 27 8 20 26 16 36 19 9 13 28 37 24 24 10 11 17 22 21 14 33 38 6 4 18 7 23 34 32 16 28 40 37 14 39 18 6 19 39 4 30 3 37 18 25 32 14 2 19 31 19 27 12 15 33 32 26 28 33 34 20 36 5 40 20 34 10 18 14 13 33 24 4 7 12 10 8 38 6 29 2 40 31 29 21 28 6 14 19 33 6 6 27 24 16 15 27 13 11 35 7 10 9 7 27 17 19 25 5 13 27 28 27 25 21 36 28 2 23 37 1 28 3 18 4 3 39 22 24 26 5 39 24 2 40 7 2 34 11 26 20 13 19 7 31 21 12 34 14 28 4 26 11 3 26 4 5 23 7 33 2 23 34 27 24 16 9 32 23 20 37 26 19 21 20 4 31 16 25 12 35 18 21 35 34 18 23 14 17 7 13 29 35 12 31 18 5 27 24 21 24 32 26 30 5 26 2 28 25 6 27 18 15 13 38 11 31 24 24 40 27 26 18 35 9 14 30 21 22 4 1 4 27 36 24 17 14 21 10 5 13 12 23 5 31 10 37 19 30 27 35 14 1 3 32 40 28 22 25 16 31 34 24 32 37 25 16 9 15 21 32 7 34 37 13 2 30 19 10 6 13 30 36 13 13 11 33 22 24 17 16 26 28 38 12 7 26 10 19 6 4 10 16 31 28 19 40 20 3 12 1 6 30 5 12 23 24 6 5 32 35 19 1 26 5 16 23 15 14 16 9 10 26 19 31 18 6 15 38 3 10 28 3 38 26 10 26 20 17 9 33 16 13 37 22 39 14 19 35 15 14 29 6 27 21 36 17 11 17 12 15 17 30 22 3 10 15 8 5 22 34 34 20 21 38 3 13 14 36 27 19 36 30 34 10 9 21 28 29 16 38 13 5 31 19 25 34 20 4 20 26 40 24 13 1 35 24 5 38 28 22 14 29 32 18 39 10 14 33 7 33 21 24 32 40 33 6 1 33 7 22 28 12 38 30 25 37 4 15 3 13 8 29 14 29 13 31 39 27 34 14 40 11 7 14 20 26 7 17 10 16 10 35 31 28 6 10 39 17 27 10 3 6 9 6 33 15 39 40 21 27 22 22 4 12 18 20 32 37 7 20 38 17 18 20 6 19 20 28 9 13 21 36 30 4 25 7 16 8 39 23 13 26 40 30 25 36 23 40 32 34 39 20 29 37 30 34 2 5 23 7 33 26 30 18 25 15 26 34 27 40 18 37 15 1 7 30 25 5 8 30 37 34 12 27 36 38 27 12 10 34 18 9 39 1 14 27 17 28 32 24 13 8 6 8 6 7 34 18 22 18 16 20 18 35 3 34 18 1 2 20 28 17 22 12 36 15 8 4 40 6 26 39 31 24 7 28 23 3 8 38 16 3 35 16 27 15 6 19 16 38 17 14 38 24 40 10 19 5 19 22 31 20 9 20 12 20 24 37 36 2 27 1 18 14 3 26 11 10 10 14 31 40 2 27 36 2 26 38 7 18 10 28 26 31 39 27 33 10 1 31 13 9 23 25 5 12 13 39 26 17 17 40 7 17 14 33 38 6 17 33 14 31 12 32 36 23 10 33 11 10 32 15 19 12 2 11 13 36 16 17 7 14 22 21 19 17 29 8 17 2 7 33 28 33 12 38 25 38 13 25 32 15 7 5 19 15 15 24 21 39 13 39 13 39 17 9 31 21 4 37 5 34 17 15 39 29 22 29 35 18 36 39 13 37 33 33 21 39 31 38 22 33 21 10 22 6 29 14 21 19 18 30 32 37 10 2 15 23 21 33 38 33 25 26 30 38 6 18 31 7 37 26 28 37 24 37 26 15 31 33 17 37 15 38 40 6 2 4 31 36 1 13 34 1 34 20 31 34 13 30 7 36 20 21 33 20 34 13 9 21 22 38 40 23 5 23 38 9 11 33 37 9 39 14 31 14 30 4 24 33 40 28 20 17 40 28 10 35 12 20 24 21 19 19 30 3 33 9 39 31 20 26 23 30 37 13 14 12 40 33 25 17 38 6 22 40 17 10 11 11 28 16 12 4 13 27 19 29 24 24 3 21 1 29 25 20 9 24 40 19 21 16 19 9 10 22 4 38 5 27 7 26 12 8 22 17 13 20 28 21 40 4 3 5 24 29 26 39 32 32 8 39 16 19 16 24 28 5 33 3 7 22 36 1 4 14 6 25 16 40 7 5 23 38 2 4 28 10 14 15 23 38 28 30 31 6 28 27 39 40 5 33 2 21 27 37 30 14 23 4 34 1 6 27 15 2 30 8 4 31 40 40 36 7 25 29 36 32 16 20 1 28 36 8 12 12 30 4 22 29 7 23 7 25 25 23 13 5 9 37 27 7 3 27 11 22 16 15 35 16 1 21 38 13 22 25 34 21 31 36 13 10 14 6 3 23 13 36 13 8 26 19 21 30 30 24 13 40 9 32 12 35 2 15 5 10 17 30 26 9 25 28 21 32 34 29 34 22 17 20 23 13 3 25 3 31 7 37 20 17 2 13 38 29 31 5 10 36 33 14 6 37 19 17 9 14 25 25 11 6 11 39 25 33 15 11 37 10 34 11 27 31 10 34 7 40 8 20 40 37 20 15 18 35 23 8 31 33 17 24 4 38 14 6 36 38 6 7 11 27 28 29 36 7 28 29 20 28 15 31 5 8 38 7 12 7 10 20 30 31 9 24 1 29 39 5 10 17 9 34 38 24 27 29 3 6 20 35 18 18 20 31 37 25 32 20 4 15 7 16 36 37 9 17 7 11 10 3 19 32 25 15 13 9 14 20 9 17 32 30 24 20 23 11 19 19 27 38 12 9 26 12 22 23 36 25 30 24 7 19 33 6 3 17 39 3 23 11 1 27 31 14 21 40 24 20 22 5 35 33 4 30 9 17 19 26 20 24 24 22 34 10 10 13 30 37 26 9 20 37 33 15 27 14 22 29 28 5 33 40 33 40 23 34 24 27 14 38 22 3 38 13 24 37 28 36 24 10 9 40 19 5 18 24 17 26 18 28 32 33 38 5 40 33 30 10 32 28 31 6 11 32 25 14 38 27 40 39 7 11 34 1 30 19 6 37 29 15 12 6 24 39 25 1 22 33 32 15 1 18 37 40 32 39 1 9 19 27 9 7 27 11 9 36 9 34 15 2 23 25 22 38 40 36 16 24 12 18 7 8 39 34 16 11 7 18 23 40 2 33 7 2 34 19 37 12 6 29 14 13 28 21 9 5 18 17 27 3 24 23 14 1 27 28 20 22 12 34 20 20 18 36 22 4 35 14 23 23 2 28 40 1 9 39 13 39 31 7 30 29 6 21 8 27 22 1 29 16 23 2 35 29 8 27 32 25 13 10 6 36 12 36 6 20 37 33 35 11 37 39 25 12 39 1 37 10 32 13 11 13 4 39 18 15 13 11 36 9 14 11 20 36 14 34 23 37 38 37 24 34 37 29 8 33 16 28 18 16 7 11 15 27 17 24 40 4 19 3 10 40 38 17 10 32 27 29 40 28 13 9 8 25 22 24 35 22 34 25 34 33 22 22 3 11 9 12 12 32 36 38 11 17 21 3 31 14 8 11 31 34 35 26 21 8 1 18 14 13 31 3 5 40 37 19 35 1 32 6 14 8 39 28 3 27 8 7 23 37 17 23 14 27 29 13 16 9 26 13 33 40 26 7 4 13 5 18 38 16 31 8 5 4 35 19 5 14 3 12 25 28 23 30 33 28 38 31 33 21 39 25 6 19 28 15 3 17 25 26 30 13 22 30 22 26 13 5 38 12 22 25 9 25 29 28 6 15 37 21 24 8 16 25 30 20 14 37 17 9 6 10 26 38 36 21 28 13 17 26 30 7 25 33 3 25 24 28 21 36 9 25 32 15 28 4 29 28 30 29 9 2 37 5 20 3 21 18 35 30 8 23 16 17 33 22 16 30 19 34 30 37 34 35 9 6 12 36 20 2 29 4 33 24 13 23 12 3 21 36 14 9 25 15 2 32 19 6 27 28 6 11 23 13 26 27 3 31 25 34 10 10 15 14 26 6 26 31 11 12 1 40 8 27 34 23 20 14 14 27 5 40 31 23 40 8 17 7 2 34 31 33 18 10 33 4 40 18 7 21 6 40 10 32 28 33 34 35 7 15 4 25 36 40 8 15 30 31 11 33 25 27 10 15 28 6 19 38 23 21 10 38 16 4 37 13 32 26 27 5 1 32 30 36 14 28 9 26 16 28 39 8 7 9 15 15 14 18 19 15 27 33 26 14 8 8 32 10 8 25 18 4 6 3 32 30 19 17 37 40 27 25 7 21 3 38 2 32 3 37 21 1 21 15 14 26 8 27 11 13 37 23 23 24 29 31 30 3 9 25 38 6 38 26 40 13 9 20 19 14 30 35 32 31 22 33 23 20 2 10 11 8 12 13 11 7 28 17 23 12 21 6 9 30 22 27 38 16 35 10 18 27 14 8 37 38 23 17 31 37 40 39 3 38 5 4 30 20 3 31 19 27 17 28 36 25 21 26 28 25 14 5 15 2 11 14 15 39 18 29 4 22 2 18 40 31 3 1 11 28 38 37 1 2 36 26 34 8 15 24 24 10 8 37 32 17 29 27 19 29 38 35 33 21 1 34 5 35 6 14 9 36 13 6 16 30 34 2 15 8 34 31 40 14 2 14 22 8 5 9 20 26 3 21 8 32 30 12 11 31 23 35 40 34 24 38 23 1 8 30 33 24 21 16 31 11 29 37 9 21 38 15 13 29 35 23 21 36 19 34 17 3 4 15 36 11 14 5 13 3 20 35 8 28 7 15 33 9 25 19 27 33 2 4 32 36 23 23 24 29 20 23 26 15 39 34 27 30 11 17 3 20 22 3 19 19 38 25 15 3 7 2 26 31 12 7 27 13 29 25 19 2 31 35 31 35 15 7 22 2 3 3 29 40 10 1 17 40 31 30 4 19 20 38 9 39 12 24 34 40 18 2 10 9 20 20 17 16 39 21 18 19 21 39 5 2 35 6 2 20 26 29 13 37 20 32 19 24 1 5 7 25 12 13 19 15 36 9 24 34 37 37 40 2 7 5 5 11 8 22 3 40 3 35 18 4 34 1 25 28 1 13 18 12 12 10 29 36 6 27 38 16 33 5 39 7 15 40 17 11 23 22 18 24 28 12 21 20 11 7 37 2 36 39 26 19 29 24 11 26 40 13 8 1 37 35 14 40 20 35 11 33 21 25 7 24 7 17 20 9 35 1 13 15 36 12 15 19 4 27 40 15 22 14 11 11 28 1 1 32 29 4 14 14 18 8 6 6 32 6 3 30 39 18 23 37 31 1 29 36 6 27 21 39 15 27 33 21 20 11 7 35 26 29 22 23 10 1 28 33 24 16 12 32 39 21 28 38 4 40 22 32 7 35 36 27 3 2 5 40 11 17 21 8 22 21 13 16 25 18 31 34 4 23 32 24 15 33 21 3 23 18 35 2 2 6 13 3 37 33 18 12 35 6 13 7 9 19 19 11 29 35 35 39 18 24 9 13 36 14 39 28 22 14 14 32 14 36 26 40 20 16 25 37 12 39 13 11 33 20 24 31 5 29 23 36 34 17 6 14 18 36 39 28 40 4 38 28 30 12 17 15 13 37 18 34 6 11 33 4 28 20 35 25 32 18 10 32 17 7 21 5 12 12 17 33 38 27 37 15 40 7 39 9 17 10 37 33 6 37 15 15 14 6 26 17 24 18 28 17 35 7 29 30 23 3 30 14 31 38 17 22 25 32 40 29 2 17 8 2 32 6 5 12 30 22 38 35 27 3 9 38 2 37 32 5 33 4 18 17 14 22 6 8 25 12 8 28 17 27 26 28 11 28 30 3 22 24 7 28 28 24 18 24 24 10 1 12 14 19 35 6 33 22 29 34 5 18 28 7 17 26 13 19 13 30 16 39 28 15 12 21 32 1 32 37 16 18 36 28 31 6 22 3 25 2 30 34 36 25 23 10 19 23 4 13 8 39 3 5 15 17 19 40 21 40 29 38 40 33 23 17 24 10 19 26 15 9 40 33 39 21 35 18 9 7 23 4 27 38 39 30 5 13 34 27 32 37 38 33 15 35 33 11 4 17 2 27 4 28 5 4 35 3 18 30 39 27 27 24 17 6 28 13 25 22 39 29 10 5 17 24 32 37 31 19 9 32 30 14 5 8 36 20 40 35 22 32 27 21 20 11 35 31 22 6 9 40 9 15 40 16 40 13 22 11 27 7 13 28 13 7 20 31 38 6 16 20 20 16 24 12 22 7 39 24 9 20 20 4 14 27 6 33 33 12 5 33 35 9 30 7 32 10 39 33 25 21 17 29 16 6 1 28 35 28 39 40 39 7 28 29 18 26 1 2 40 28 25 18 29 14 23 5 3 27 34 3 12 9 16 9 13 32 40 35 30 8 37 10 26 22 39 14 26 15 30 19 27 5 20 23 34 21 15 11 4 34 19 1 25 14 12 32 15 29 8 14 16 26 6 13 36 21 32 25 4 39 39 12 14 27 2 12 30 20 20 39 30 31 2 24 31 1 26 10 30 16 39 23 5 6 11 35 13 26 32 15 23 16 32 22 39 17 13 16 37 16 17 15 21 33 23 9 36 20 18 16 36 24 11 6 30 39 7 9 9 8 12 40 17 33 4 20 37 3 25 36 7 34 34 22 22 9 3 20 17 21 28 1 40 32 10 29 10 18 27 14 20 25 8 37 19 37 5 35 3 17 40 12 13 18 6 24 19 31 38 5 13 8 33 33 17 39 27 25 15 20 34 30 36 10 16 27 7 6 23 32 18 39 30 34 1 23 33 25 19 16 26 16 23 31 12 28 28 8 28 20 29 31 3 12 35 29 30 24 17 13 6 39 10 6 11 6 26 1 12 24 29 23 21 2 4 40 32 22 34 11 15 16 31 15 16 28 6 38 5 21 4 19 21 34 3 18 20 21 23 38 22 29 28 35 34 8 19 3 18 29 29 12 27 36 25 14 3 9 28 40 13 25 36 35 9 12 40 32 14 21 10 17 36 36 33 22 3 12 31 17 14 14 17 34 40 24 36 10 11 27 35 10 2 14 33 1 21 18 11 31 15 19 26 25 9 31 37 16 35 30 35 17 17 35 16 37 1 10 37 39 3 36 33 6 3 21 1 27 17 23 34 8 4 17 37 19 26 7 32 20 35 2 10 8 27 7 27 27 30 13 2 33 7 19 16 29 40 39 16 40 8 17 26 16 12 18 35 6 30 27 38 17 11 34 2 18 21 6 6 40 31 5 16 14 37 23 31 16 39 8 13 1 23 24 31 36 29 18 32 5 36 17 9 29 32 34 17 25 1 15 5 28 19 6 28 2 31 4 8 6 11 20 10 21 4 25 30 34 21 18 15 31 10 25 15 25 5 32 35 3 5 34 35 21 19 36 15 29 19 19 31 29 39 10 25 11 25 11 31 29 3 19 11 8 34 11 16 4 24 15 6 4 1 13 15 30 26 14 12 30 37 13 39 2 2 21 3 15 14 15 39 7 27 10 11 14 19 22 12 38 24 14 14 15 24 11 1 37 6 28 32 14 22 39 29 35 1 14 9 3 18 26 27 34 25 3 24 12 28 15 2 18 3 36 13 3 39 7 13 13 3 36 5 5 38 38 33 29 26 3 9 22 26 33 30 9 32 4 17 32 32 30 38 37 8 32 36 1 34 39 23 3 16 37 8 23 38 31 13 5 20 7 18 16 29 27 24 32 31 36 27 13 40 18 18 35 19 16 24 15 40 14 31 15 27 2 4 40 21 20 23 27 28 29 21 18 35 40 25 36 15 10 26 27 5 21 6 26 26 24 15 7 32 14 34 7 39 24 6 22 14 33 4 35 30 28 31 7 27 25 6 34 32 39 25 14 16 37 5 33 17 22 22 3 36 11 24 31 18 27 22 13 33 34 7 30 20 28 8 32 3 4 22 9 23 7 14 32 9 8 26 23 15 21 16 29 22 4 32 21 14 17 30 6 34 10 10 5 15 17 29 9 3 24 16 9 10 37 24 34 25 15 39 2 7 32 11 24 28 27 27 32 39 7 22 9 13 19 23 23 5 1 10 7 38 21 23 5 36 25 6 27 31 12 1 8 17 22 8 28 35 17 4 4 8 4 33 18 17 40 40 20 33 10 32 9 34 33 9 23 12 18 19 21 3 4 30 10 1 8 35 30 20 37 36 21 8 20 14 3 39 25 20 5 22 39 7 15 15 22 4 2 21 35 11 3 2 36 40 31 19 10 32 17 40 35 39 17 40 17 18 18 17 22 31 39 34 20 10 26 11 40 4 37 2 30 20 22 25 36 5 10 16 30 35 1 12 35 30 27 22 13 7 38 16 23 1 37 27 3 9 16 34 15 22 23 29 38 23 35 14 40 28 40 21 4 1 7 17 28 7 35 33 34 16 7 19 27 34 23 24 35 8 39 36 22 25 6 23 26 11 2 33 16 14 16 8 4 11 11 29 22 40 24 27 4 35 12 29 25 33 38 4 35 29 2 25 17 20 36 13 17 38 18 28 29 14 16 1 22 22 35 37 18 37 22 23 19 31 13 15 10 26 11 6 3 40 7 34 12 33 2 36 16 16 30 18 37 20 16 31 35 19 16 23 24 11 35 34 26 26 1 21 30 4 12 23 25 18 20 11 36 40 23 38 30 24 39 27 20 8 6 34 12 29 5 7 25 31 20 19 36 25 38 8 37 14 31 28 31 17 11 26 34 37 36 35 32 38 20 6 38 12 23 9 23 25 29 39 17 29 31 22 5 26 32 30 39 9 24 7 8 25 25 9 13 25 5 36 13 1 24 17 9 1 39 10 5 10 25 40 5 6 1 25 9 19 29 3 3 6 10 9 32 27 11 19 36 1 23 20 33 2 6 33 33 11 39 20 2 14 24 35 32 32 39 16 29 26 11 5 32 11 23 23 12 35 33 20 15 30 7 8 30 36 25 26 18 21 37 7 26 36 13 14 11 3 36 38 7 3 8 16 25 14 27 29 16 26 19 13 8 37 32 15 8 18 13 33 25 15 7 25 11 8 3 1 33 27 4 23 25 28 26 23 7 2 31 33 17 29 30 36 34 28 27 2 1 31 20 17 17 6 23 35 16 38 30 36 14 34 1 12 10 21 27 26 26 13 19 5 28 36 35 24 17 36 23 8 24 27 35 4 14 33 11 33 4 28 40 13 28 30 23 37 40 4 10 23 19 20 13 23 1 5 26 37 28 40 13 6 20 17 30 30 9 27 38 40 24 6 33 6 13 22 4 6 39 17 6 17 31 3 7 14 20 29 10 2 36 35 22 14 39 1 22 22 27 9 18 23 21 1 27 38 35 1 3 16 27 9 27 18 32 18 4 39 7 19 17 35 3 25 24 9 10 12 3 11 15 9 30 22 35 29 36 39 14 1 7 36 13 27 3 20 7 1 16 28 7 30 34 34 40 20 5 35 36 12 7 10 27 29 36 19 36 18 37 9 11 32 19 8 33 37 2 6 16 19 2 8 15 13 27 35 24 20 22 39 15 33 12 22 27 30 20 23 9 16 18 11 39 5 34 31 3 37 3 16 22 30 27 9 24 39 3 39 32 11 18 10 10 33 13 35 23 23 15 16 20 28 17 12 14 14 30 14 1 17 5 30 37 16 1 18 14 39 33 28 10 21 15 3 15 9 6 12 22 26 28 6 16 28 19 25 28 14 21 10 20 36 3 35 26 33 12 17 22 37 25 2 32 33 39 16 1 23 7 22 4 21 1 20 9 13 21 38 20 23 22 24 19 7 12 15 14 15 6 14 35 26 30 7 23 40 15 33 19 5 4 20 5 22 9 37 34 12 3 33 26 5 7 22 22 12 38 18 38 3 17 33 37 32 4 4 36 2 5 26 33 40 16 39 9 20 16 19 2 16 24 35 11 15 20 5 25 15 36 35 37 13 26 39 19 19 31 39 23 15 36 10 26 28 19 6 18 31 24 14 21 31 5 25 32 37 30 2 27 29 34 37 2 24 29 32 36 12 27 34 38 4 25 25 22 6 22 22 29 16 29 40 19 23 34 40 11 36 14 35 35 21 6 21 17 3 28 24 23 39 35 15 2 24 16 39 33 18 19 9 11 30 23 1 23 6 11 22 40 14 39 12 19 6 38 24 31 38 23 10 15 34 40 29 17 6 13 37 23 32 4 29 11 37 35 1 38 22 38 3 2 4 20 12 22 7 21 26 9 34 24 38 21 21 26 39 22 3 3 25 12 5 8 24 10 23 16 15 15 1 26 30 25 40 3 31 29 39 2 40 25 18 1 22 1 17 1 33 26 23 28 6 10 26 7 27 21 23 2 19 7 27 8 4 28 35 40 15 29 10 15 10 31 39 23 31 33 4 34 9 34 5 10 11 24 25 25 39 28 4 28 13 6 13 22 30 17 22 36 14 7 1 31 18 14 19 32 26 28 24 14 19 8 31 20 36 4 10 16 5 9 13 9 33 30 14 22 39 18 10 12 27 29 26 10 14 17 15 14 32 29 29 39 23 4 30 23 22 6 13 39 12 34 1 31 11 22 23 17 21 3 17 36 27 15 7 31 39 34 40 26 11 4 38 8 36 9 9 15 17 23 14 4 37 19 8 22 25 40 30 31 18 30 26 7 10 20 39 23 18 29 28 29 13 7 19 10 14 25 10 11 33 29 29 4 24 17 4 28 39 17 15 14 5 25 15 24 6 17 33 29 1 36 31 40 16 13 11 12 2 30 33 38 4 15 24 27 7 20 8 9 22 27 39 4 7 17 23 2 31 32 32 23 24 22 22 36 19 7 39 1 39 2 29 8 17 34 31 18 16 34 1 3 18 27 35 30 30 39 30 3 2 7 21 28 28 25 24 40 36 16 3 34 13 11 39 40 25 23 34 26 30 38 29 20 21 17 28 35 33 6 2 11 28 13 30 30 13 3 16 9 35 28 22 18 16 10 7 40 29 22 40 8 16 2 1 19 13 27 16 18 4 14 20 7 13 36 28 20 40 17 17 2 8 5 14 2 29 19 31 15 20 13 40 34 14 8 22 6 26 35 22 24 8 20 24 38 24 9 29 3 40 35 4 26 3 17 20 5 23 6 17 30 13 39 11 22 30 29 28 15 22 18 31 18 34 22 19 5 14 3 20 35 19 1 38 8 16 7 16 4 11 28 25 11 15 21 7 35 30 5 22 22 32 19 14 26 40 28 36 17 10 37 34 37 32 13 2 17 30 33 10 15 6 6 21 27 19 14 9 15 37 26 33 4 21 18 10 31 23 9 20 4 21 18 17 17 26 39 17 11 23 17 38 28 38 22 27 10 28 7 26 6 10 15 39 35 34 7 10 36 23 16 12 31 8 9 36 2 11 12 15 32 15 8 36 31 19 14 39 34 30 26 11 25 28 12 28 14 8 6 36 5 30 34 31 26 13 8 25 24 20 22 12 1 28 1 39 38 3 12 25 5 36 26 4 21 15 33 4 3 29 36 12 37 2 32 33 2 9 24 27 34 37 12 15 28 2 15 8 27 14 4 14 19 39 22 37 14 5 12 9 26 18 8 38 13 8 35 21 3 31 21 29 9 20 16 8 31 29 30 32 3 36 24 38 8 33 1 10 37 11 2 18 31 11 29 38 8 16 35 9 10 31 38 14 2 15 23 2 3 14 3 4 6 22 13 10 7 2 36 33 10 3 10 6 28 5 8 24 7 4 28 10 36 8 30 17 39 29 32 7 19 31 15 23 27 36 2 20 24 34 16 19 38 2 6 3 38 12 33 36 6 18 31 7 23 20 10 7 20 20 26 32 3 32 34 19 18 30 36 11 8 28 33 12 3 6 16 30 28 36 21 20 11 5 39 22 37 25 5 4 7 36 21 35 20 29 26 9 15 15 39 33 25 18 7 10 30 9 38 27 31 35 1 2 7 2 39 21 28 8 4 35 29 24 15 36 23 5 23 36 36 35 33 13 4 3 40 9 22 28 26 24 3 37 28 35 26 9 29 6 14 11 16 30 7 32 32 16 31 14 15 5 35 30 18 25 37 8 5 40 22 4 34 6 6 3 12 12 6 19 23 6 35 26 20 20 6 32 31 18 31 12 28 37 35 18 10 31 26 4 9 4 24 21 8 23 26 2 17 29 14 24 23 2 34 12 8 9 31 35 25 8 33 12 29 26 30 8 33 34 17 16 9 18 1 19 26 29 31 32 9 38 5 35 24 26 2 12 27 22 39 7 10 6 19 33 12 33 27 30 39 11 38 37 13 38 11 31 32 24 23 40 16 3 2 3 19 2 37 2 21 20 6 34 8 4 6 24 33 22 10 4 33 4 24 33 7 21 5 21 17 8 11 27 24 40 2 26 2 29 17 27 32 37 36 18 10 39 33 33 5 32 27 23 8 18 5 3 23 3 8 35 7 25 16 24 15 2 8 14 34 2 38 16 29 5 17 3 33 37 39 37 7 3 30 18 8 7 37 13 38 22 9 36 8 1 12 30 1 15 28 39 9 36 32 29 25 24 2 14 39 17 27 35 7 15 6 10 30 9 31 4 18 1 25 23 32 32 21 36 29 25 34 8 27 28 35 7 24 32 39 29 3 12 3 5 10 20 15 18 26 22 38 15 6 21 9 13 24 7 30 30 38 12 26 30 5 33 28 21 16 27 39 16 2 34 33 20 32 29 30 26 26 6 37 8 36 40 6 19 11 17 19 13 32 35 21 23 18 26 15 37 40 5 15 40 8 31 29 15 5 15 11 25 11 20 39 3 23 30 25 6 35 11 15 26 32 15 1 7 39 28 27 31 34 16 16 4 34 8 14 7 22 2 28 40 7 39 9 9 32 34 11 6 8 18 15 11 22 31 26 29 27 23 1 9 27 14 12 30 12 17 7 18 11 40 8 21 3 39 36 8 37 15 25 29 36 33 22 2 9 28 6 26 29 40 33 6 6 5 2 28 3 33 16 11 11 37 28 2 33 23 6 2 22 37 24 24 26 8 31 2 30 23 13 8 21 12 39 4 38 4 23 7 13 12 6 4 24 17 5 27 6 3 7 12 17 20 5 27 11 38 18 21 4 8 27 32 24 32 7 3 10 5 17 29 6 32 32 10 23 1 24 3 15 25 17 16 10 33 28 18 7 16 20 9 7 23 32 33 29 5 4 19 11 24 24 40 30 14 19 18 13 39 28 33 14 20 13 8 27 11 22 31 14 23 25 27 30 25 16 19 4 15 31 2 31 1 37 12 36 24 39 35 8 6 25 40 19 31 36 17 26 23 16 34 22 9 39 24 26 33 10 38 26 28 24 39 18 17 12 4 26 30 13 34 25 29 8 32 35 35 37 19 7 13 1 17 28 19 31 29 2 30 32 30 22 35 16 8 2 37 22 23 23 12 6 38 15 15 19 23 9 14 35 40 6 34 23 13 31 29 3 38 7 20 18 17 24 12 23 20 31 39 35 40 38 29 22 27 38 18 6 37 15 31 36 25 1 14 9 27 17 35 29 39 9 8 14 16 27 40 27 3 32 30 17 27 4 22 2 40 11 38 34 20 5 9 7 21 17 9 3 12 22 28 14 40 26 8 8 34 6 13 33 27 40 12 37 3 27 20 6 16 2 1 32 30 7 37 40 28 8 19 35 15 16 11 30 8 35 40 15 33 17 36 31 32 26 30 2 7 32 18 38 26 30 19 6 11 12 22 16 15 14 13 8 12 20 8 13 1 16 24 12 11 24 35 18 35 20 27 25 11 40 16 39 1 6 37 14 36 39 4 34 36 9 16 32 4 9 24 2 11 24 5 19 40 26 16 34 8 12 9 3 5 8 20 8 40 6 36 16 12 30 3 12 1 14 14 7 30 20 14 36 21 31 18 39 14 25 15 4 16 35 13 22 13 38 21 4 16 20 1 31 40 23 15 25 38 32 17 34 35 27 37 37 40 26 34 15 32 8 27 38 37 39 18 22 31 25 1 19 24 14 40 20 26 8 2 33 24 22 21 28 4 18 15 36 27 5 12 39 5 22 31 20 16 12 21 40 14 1 37 17 1 29 35 5 7 29 30 32 14 13 18 16 2 9 40 28 15 8 16 34 9 33 15 1 34 2 21 31 38 25 9 21 23 4 26 2 14 20 27 13 16 22 5 32 16 6 20 10 32 13 22 17 3 21 1 39 21 20 22 22 36 10 8 19 21 6 3 15 6 17 22 36 13 2 12 33 26 6 37 34 8 6 2 31 6 6 30 4 25 4 2 17 16 10 3 15 33 31 28 1 2 27 20 4 31 36 8 4 3 29 13 29 14 38 36 19 9 28 27 38 33 23 19 8 14 20 8 30 3 15 39 37 18 37 40 24 40 22 11 11 8 19 38 38 5 24 30 3 13 24 24 11 36 1 16 29 33 22 38 28 35 36 24 33 12 34 9 5 29 36 5 27 28 19 12 9 40 20 20 32 23 40 26 1 14 25 28 19 13 4 19 32 32 28 7 5 34 38 30 29 22 19 2 37 1 1 32 40 18 11 3 38 32 30 18 6 28 8 16 38 25 20 39 27 20 36 29 29 19 37 39 9 3 39 38 2 12 37 37 16 21 34 3 37 31 18 9 40 10 29 2 5 37 7 20 7 2 9 33 29 20 17 24 32 31 40 37 13 32 13 38 37 35 32 38 20 2 40 17 36 28 24 23 15 24 22 24 3 9 6 7 27 1 39 40 36 29 20 29 34 33 39 21 23 39 31 40 22 13 19 36 34 16 26 22 14 30 28 3 11 30 14 2 9 5 31 16 30 2 17 21 14 10 15 37 16 18 38 21 29 11 27 38 37 12 6 38 7 19 28 24 25 13 5 19 11 9 21 35 31 2 15 9 13 34 10 4 1 8 30 33 6 1 17 6 40 14 1 13 35 8 19 15 34 12 14 27 36 10 34 10 23 13 20 38 8 18 29 23 34 11 9 38 31 19 39 39 32 35 28 24 27 4 7 6 11 17 22 30 28 33 18 1 30 9 33 9 19 4 33 17 28 39 35 34 18 7 21 18 4 27 11 14 14 24 12 40 28 35 32 29 23 20 6 15 17 13 18 20 15 40 22 35 21 40 7 36 35 36 36 33 20 13 4 16 15 19 27 32 31 22 5 35 34 2 21 29 35 14 23 31 12 7 21 11 30 32 32 12 15 4 5 26 7 18 15 38 27 26 12 8 3 30 8 27 17 1 15 17 23 4 24 34 39 36 19 5 28 30 3 17 27 22 29 26 23 22 24 12 7 26 7 35 20 7 14 8 38 2 37 3 20 2 28 36 34 25 29 40 1 31 24 9 2 23 28 5 32 15 35 17 2 26 28 23 16 33 38 8 8 27 15 9 33 22 17 30 33 7 38 32 33 22 8 40 29 7 6 35 26 6 39 17 10 21 15 10 24 18 8 16 40 37 3 3 19 5 37 3 28 31 40 12 20 6 20 26 8 39 7 40 6 19 3 19 23 27 15 3 40 40 21 10 18 30 31 37 11 10 23 10 36 36 31 2 17 37 18 13 4 8 35 4 25 18 22 39 2 39 23 28 37 26 4 14 5 3 21 29 33 1 19 33 26 29 14 9 3 8 16 3 16 30 18 11 25 36 16 17 1 17 33 34 2 30 3 26 12 25 17 11 16 20 35 22 40 28 11 38 3 9 3 37 6 17 18 28 40 36 7 35 23 31 29 22 14 12 28 26 2 37 13 31 16 30 2 13 7 22 19 17 1 18 16 8 19 39 27 23 5 24 15 3 8 8 12 33 2 37 24 40 39 11 5 37 23 35 14 12 40 5 10 8 13 23 32 23 8 13 11 35 37 4 20 29 39 2 27 30 1 35 11 40 23 39 33 35 22 28 24 5 19 32 5 32 23 15 11 38 36 13 2 25 28 19 20 7 40 11 16 1 2 21 28 6 31 1 19 23 21 29 39 4 40 23 9 7 25 38 18 18 37 4 14 33 14 25 11 15 20 39 24 34 30 23 40 5 21 13 28 26 4 36 17 26 10 6 40 15 11 3 26 40 8 32 23 27 6 3 16 5 3 1 11 7 1 12 15 21 33 20 11 10 38 19 3 33 6 23 24 5 17 23 27 20 34 33 31 30 11 40 37 30 17 18 16 25 21 12 3 35 21 5 16 2 21 22 26 17 8 30 18 14 11 34 8 5 7 31 33 5 27 12 33 3 3 12 38 17 39 26 17 30 28 36 25 27 26 19 31 14 1 25 23 28 8 37 28 12 38 36 4 19 28 4 9 34 5 12 3 19 30 3 2 21 24 24 24 5 13 28 10 32 8 15 40 29 23 38 14 20 38 39 17 30 2 15 31 36 31 25 34 28 2 2 11 2 14 15 21 31 16 36 36 37 29 24 8 4 9 27 33 20 26 23 24 36 2 37 19 25 20 4 36 3 39 1 29 6 4 13 33 6 15 31 20 16 31 23 31 24 5 35 35 17 17 31 21 38 22 24 23 10 13 4 37 13 23 23 2 24 37 3 4 2 16 39 18 25 16 26 16 1 3 1 31 12 37 24 10 29 26 19 30 2 36 14 40 40 38 5 24 24 23 26 19 15 36 9 28 23 31 30 10 33 24 40 3 7 28 27 36 8 6 13 7 2 40 39 13 19 26 6 28 35 16 15 33 23 39 2 23 5 22 4 22 6 33 8 10 22 39 26 29 24 32 37 30 25 3 33 27 5 23 22 32 25 37 18 34 38 17 11 38 16 16 1 16 31 7 4 20 19 26 6 18 19 35 12 17 11 37 11 23 39 8 35 27 24 35 1 26 20 26 34 15 40 7 26 7 27 15 34 7 9 16 29 24 28 15 9 14 9 25 9 22 9 12 34 37 27 38 4 22 37 3 7 3 14 3 34 33 27 5 25 8 19 15 10 22 19 21 24 34 40 1 31 33 18 31 21 16 36 22 22 36 5 10 17 7 21 21 26 22 2 8 21 28 13 13 33 12 27 26 16 26 13 10 10 32 3 17 6 24 12 35 1 25 32 26 9 32 10 34 10 30 13 17 20 30 28 28 15 25 12 36 35 11 2 32 22 22 14 39 18 35 22 28 16 20 1 23 25 37 26 15 5 29 34 14 18 18 39 21 21 12 16 21 4 20 38 15 28 25 26 20 21 14 36 19 13 21 21 17 30 17 20 20 37 24 21 2 24 11 22 17 24 16 18 20 3 40 3 9 10 36 4 3 6 24 7 2 24 17 20 4 6 19 26 2 6 35 35 24 35 14 38 22 6 27 21 24 5 23 20 15 32 14 27 35 8 17 38 13 22 18 30 27 4 13 33 12 24 29 12 5 28 10 29 12 22 23 9 21 15 36 7 40 30 19 15 25 17 21 22 7 34 33 8 6 7 29 19 33 30 27 32 13 26 1 18 32 22 4 36 24 8 28 25 37 33 31 13 7 38 40 7 8 36 23 32 25 6 18 30 9 12 5 29 25 35 31 26 7 21 40 1 27 34 7 23 38 22 26 15 6 6 9 32 5 11 28 16 17 16 26 11 3 24 34 5 11 24 19 18 39 6 35 12 3 32 9 13 28 4 2 32 20 20 6 19 11 20 36 19 23 24 20 27 11 22 13 30 9 3 14 1 3 34 38 6 40 21 39 18 17 34 34 22 34 1 10 10 8 26 6 18 32 3 29 30 13 2 37 8 37 5 21 28 33 8 7 1 10 33 15 27 9 21 4 16 26 39 17 17 15 27 1 26 40 32 33 31 9 11 25 24 31 12 30 37 38 39 2 2 17 19 28 4 27 22 9 17 30 2 10 40 1 1 26 12 22 5 33 24 9 15 37 17 36 32 21 1 35 18 5 17 28 38 28 38 21 29 31 40 35 4 26 32 31 23 38 26 27 31 37 37 29 28 27 3 13 27 16 33 19 4 6 19 17 2 3 22 8 25 22 12 11 21 1 22 29 29 17 6 29 21 13 33 8 24 24 7 39 17 39 8 3 13 35 11 21 6 35 19 35 6 32 29 3 11 5 12 26 14 33 19 8 13 16 4 20 34 4 25 5 32 15 4 39 34 35 40 2 19 3 6 35 2 3 14 10 23 14 6 1 5 17 36 10 21 4 34 31 36 19 6 36 4 36 31 15 38 30 25 26 30 30 16 37 12 36 23 15 22 39 34 19 7 37 12 31 26 36 35 26 19 33 2 35 31 25 25 18 6 7 4 5 18 20 25 20 30 34 25 40 9 17 35 1 20 31 36 6 21 16 18 10 36 22 36 20 28 13 36 2 29 10 8 34 21 26 14 26 28 13 3 7 16 3 35 21 16 9 30 2 32 14 33 38 22 13 20 11 20 9 17 35 6 34 35 7 33 27 22 31 18 4 30 29 14 26 13 28 35 5 30 37 11 2 6 33 3 29 1 29 17 17 28 16 40 35 20 30 22 30 31 40 12 27 28 2 38 22 40 10 26 17 15 11 15 22 40 18 8 22 14 33 9 10 4 15 16 10 3 19 8 28 23 31 31 17 23 6 35 33 31 33 8 17 36 28 1 15 18 7 29 5 23 31 13 24 28 29 28 25 27 2 30 35 21 15 39 24 39 17 32 17 19 11 27 8 19 15 5 7 2 3 8 29 32 21 21 21 25 36 32 15 28 1 6 12 40 17 30 5 6 4 33 30 12 13 19 22 34 29 13 33 39 35 8 10 39 25 37 21 37 18 12 13 18 35 39 28 1 20 22 6 17 19 30 32 7 33 13 17 26 4 27 35 10 25 36 36 3 5 21 24 20 25 13 16 16 2 28 18 9 19 19 23 21 18 10 18 5 31 35 15 5 8 15 31 2 27 9 13 7 28 10 39 31 8 29 4 11 29 30 19 33 10 40 24 35 15 23 38 18 26 10 8 24 24 25 3 10 5 2 10 6 12 28 10 37 31 22 12 6 37 1 7 24 38 16 18 15 28 15 33 10 13 29 33 27 7 9 20 38 16 13 33 20 36 7 6 27 18 31 24 26 33 18 21 5 23 12 33 38 17 34 13 4 30 32 11 16 39 30 30 6 16 6 2 13 15 35 5 31 18 30 24 21 28 17 33 9 27 16 26 40 37 33 6 3 14 33 38 27 12 27 17 28 10 35 31 16 9 13 39 38 34 5 14 7 33 20 15 21 19 24 18 11 14 12 5 11 16 3 35 25 8 26 5 34 28 6 6 36 36 15 38 35 27 36 28 30 13 21 14 19 40 4 21 7 32 23 22 12 9 31 24 16 24 30 6 5 1 17 29 34 9 9 39 27 6 23 22 14 27 17 36 5 29 7 26 9 20 29 24 16 13 26 24 18 13 21 31 22 33 27 17 37 36 2 16 25 10 3 31 27 3 12 25 2 26 24 25 28 30 39 1 12 27 33 11 17 9 18 40 9 14 36 24 10 39 1 13 1 22 6 20 16 17 14 30 33 16 27 7 1 29 9 25 8 11 2 12 16 31 10 20 26 7 22 1 1 30 21 4 7 13 5 33 14 28 5 22 33 7 14 30 32 12 30 10 17 15 22 2 6 14 25 8 28 29 23 11 20 12 23 36 13 38 31 27 17 6 3 11 10 19 26 9 4 18 38 17 25 39 9 9 21 36 13 32 39 13 2 4 33 38 31 26 38 20 5 40 6 8 38 32 33 14 12 14 23 39 1 8 1 13 34 3 19 6 4 39 30 8 25 12 12 33 3 28 30 11 25 33 27 35 16 20 18 18 35 17 9 5 37 40 16 15 18 25 37 5 40 9 16 31 1 29 25 32 37 25 17 1 25 30 5 23 40 34 24 24 23 16 36 23 40 6 9 29 23 24 18 5 18 36 15 25 30 8 36 4 9 6 40 1 9 14 4 5 36 17 18 18 25 25 33 30 8 28 17 13 15 33 5 2 13 13 6 11 32 36 34 10 16 38 3 13 35 7 14 22 20 12 34 23 35 9 30 27 29 7 28 32 26 20 9 30 31 8 17 18 31 35 13 13 22 19 17 27 20 12 15 33 27 36 5 36 30 11 34 18 30 22 18 29 22 5 12 37 27 11 13 1 5 39 23 18 2 27 23 9 40 7 24 40 9 9 4 7 35 7 36 21 4 35 23 23 40 40 8 6 32 26 34 24 2 23 8 15 11 16 1 6 32 26 40 22 30 32 4 11 6 2 3 16 5 19 6 16 4 30 22 3 3 37 12 37 16 19 32 5 13 7 38 33 15 6 40 10 17 29 19 34 9 5 30 23 9 26 12 11 35 24 39 39 24 6 30 2 37 19 23 11 21 24 39 29 34 15 33 6 28 30 10 38 15 6 36 31 9 25 8 28 28 31 6 8 29 11 22 6 20 20 2 31 10 20 10 34 34 8 17 37 29 13 9 33 11 40 22 2 4 35 33 28 18 11 6 7 4 27 35 37 6 28 22 12 14 18 18 18 34 17 39 29 34 21 13 28 6 35 17 8 16 9 24 13 23 22 2 28 23 18 3 16 7 17 37 14 7 35 28 31 16 17 13 34 25 24 8 25 12 25 29 11 29 14 38 2 4 29 16 27 37 24 5 4 12 20 4 16 20 21 29 29 26 32 30 4 32 1 39 4 37 24 23 22 28 37 40 32 5 26 27 14 31 28 40 3 11 5 19 20 7 21 8 33 35 19 37 38 31 17 31 4 9 37 27 29 25 14 27 35 21 25 23 8 5 33 30 19 16 1 19 24 2 1 29 40 22 34 20 36 29 5 12 10 17 9 6 17 6 8 31 8 6 35 17 10 32 17 5 21 39 15 6 5 11 38 34 36 30 35 15 38 17 31 22 6 1 8 38 27 22 30 10 38 13 6 28 32 14 17 31 34 15 35 28 16 29 29 6 36 29 12 4 11 18 25 39 2 24 23 22 39 22 8 13 25 39 22 5 40 14 11 3 10 27 40 1 28 29 6 9 3 4 38 40 40 33 15 40 19 18 34 24 2 28 9 36 12 27 4 28 11 25 5 12 31 20 30 32 24 34 25 38 2 20 10 1 39 27 11 4 4 20 12 5 22 34 34 13 35 11 30 8 10 19 8 1 31 19 8 33 25 18 38 35 38 35 24 13 37 12 14 22 11 1 34 30 13 27 36 6 36 14 13 27 18 7 12 23 36 25 19 9 23 31 35 5 3 15 35 34 19 24 25 35 28 1 37 23 33 35 38 14 33 34 39 24 21 15 34 13 23 14 20 16 8 26 20 13 2 27 28 14 26 37 29 7 25 4 4 11 20 6 20 30 16 24 29 7 23 13 40 8 15 31 27 23 27 26 16 25 10 25 20 6 36 16 8 40 36 33 8 17 9 35 21 32 15 10 20 30 39 2 5 39 36 36 35 2 37 36 3 13 23 12 22 31 24 24 8 36 15 1 7 39 37 11 6 2 38 12 36 29 5 40 21 21 39 30 30 21 38 3 15 37 27 17 11 30 24 20 18 31 13 19 34 6 3 29 3 20 40 2 38 11 23 30 12 38 12 15 9 11 9 26 19 13 19 6 18 20 10 14 22 11 14 34 13 10 25 2 19 36 6 22 6 25 32 10 8 3 37 31 7 24 33 6 29 27 7 24 7 8 18 21 26 34 35 21 4 25 39 24 4 17 30 36 38 1 3 5 35 9 4 36 3 11 38 9 24 20 35 17 27 30 24 10 2 30 11 11 8 2 20 29 16 31 35 31 9 25 37 18 23 10 23 36 29 17 27 3 6 20 27 26 9 39 23 15 21 11 34 2 1 12 8 19 23 38 15 21 34 6 31 7 4 26 37 3 3 20 21 22 24 1 3 6 39 13 32 5 17 14 27 13 21 27 36 15 7 12 40 3 22 27 26 32 27 17 15 31 32 1 12 31 15 8 5 34 27 25 6 19 7 30 39 1 34 30 23 34 18 1 17 16 35 33 11 6 7 40 17 18 10 5 26 7 14 12 21 5 32 21 4 14 30 38 10 9 35 34 23 24 36 36 21 1 39 26 5 4 6 5 29 21 9 31 31 2 13 21 34 6 12 32 11 35 37 16 10 14 38 13 32 10 40 17 19 36 33 15 38 11 1 11 37 28 1 7 35 19 5 21 7 37 3 9 40 28 5 12 12 10 33 2 26 8 22 13 15 27 10 23 40 14 34 14 40 8 14 23 6 8 14 15 24 24 28 27 13 21 28 29 20 28 25 20 17 25 11 31 31 7 21 9 10 6 6 26 11 39 34 22 36 28 23 20 38 34 10 12 22 5 27 30 16 8 10 7 11 2 39 38 15 31 12 10 36 26 16 14 30 27 21 8 16 22 5 31 28 18 15 15 13 34 7 31 37 27 21 28 40 11 12 8 22 36 33 1 38 25 2 6 37 1 30 15 4 12 40 34 17 25 15 8 16 29 32 24 22 12 25 3 27 9 30 17 6 9 7 7 27 21 39 3 16 30 35 2 5 12 39 9 5 40 30 20 18 33 7 11 21 1 39 13 27 16 13 18 36 22 35 8 37 33 7 40 37 33 31 33 6 15 26 8 28 17 31 29 9 11 26 39 31 32 33 8 3 33 11 13 39 14 30 30 24 13 29 9 21 2 6 31 14 2 26 22 8 7 16 32 36 38 1 31 39 5 37 35 16 14 24 12 18 21 17 3 19 3 13 4 38 39 10 25 21 21 40 34 2 31 38 5 40 34 17 28 1 4 32 8 28 1 5 34 14 8 19 16 27 4 1 34 20 26 22 30 25 7 32 25 21 21 20 22 36 24 8 5 29 20 14 3 24 31 34 4 16 40 5 23 24 27 32 25 34 6 37 2 36 1 27 20 8 2 34 34 30 31 20 1 17 35 11 29 12 15 7 21 37 22 37 39 11 10 6 36 7 37 24 25 25 19 1 32 25 26 18 11 14 16 30 4 29 37 27 26 4 35 20 35 38 19 4 14 26 28 1 5 4 3 5 9 6 26 15 30 4 19 11 40 2 3 21 29 31 23 22 3 25 16 19 12 20 36 12 37 34 40 13 24 37 19 19 35 15 29 14 21 13 36 28 38 26 1 28 4 25 38 16 7 3 38 4 8 2 21 36 39 32 33 31 26 1 4 30 16 35 32 4 3 31 19 7 31 1 35 5 17 36 16 23 16 36 3 38 2 25 1 13 33 15 39 3 2 10 9 38 3 6 13 30 27 30 7 11 25 6 38 36 12 3 32 4 1 1 38 29 37 10 15 14 14 5 37 38 28 35 20 5 27 38 8 34 38 6 32 37 17 35 1 40 21 26 31 20 36 6 8 37 33 9 8 6 18 9 18 36 7 21 5 28 36 36 28 16 25 21 17 33 38 27 40 29 2 1 17 9 35 28 26 34 36 26 17 31 9 8 18 4 16 20 29 7 6 20 24 31 4 4 33 15 25 23 25 18 21 23 19 39 39 18 2 19 30 35 40 33 32 33 4 36 25 38 2 27 33 32 39 26 19 2 39 38 24 31 17 40 6 8 37 22 12 1 36 23 6 38 11 37 39 32 12 10 12 37 15 33 39 34 33 15 11 21 37 19 7 5 5 19 18 19 29 27 28 30 11 1 30 18 39 26 15 29 25 16 17 16 1 34 5 29 21 11 33 31 32 6 16 39 32 10 26 33 21 38 12 18 38 6 11 32 29 10 33 25 15 12 29 31 4 4 16 23 30 2 22 18 23 21 6 22 40 19 35 28 34 36 11 24 16 2 31 27 25 2 28 26 11 9 4 30 26 13 38 29 13 35 36 30 6 16 21 7 24 24 25 36 20 1 38 37 6 29 27 18 22 8 13 24 3 11 3 27 23 23 4 6 3 40 2 35 6 16 23 2 11 19 17 38 33 29 28 37 17 3 1 35 40 1 31 14 25 20 38 30 5 6 24 26 14 29 9 3 4 34 4 15 9 11 20 25 32 40 2 3 10 16 21 11 3 24 4 17 30 34 10 22 32 28 13 24 34 4 2 14 29 33 9 26 5 13 39 39 40 33 30 16 35 37 13 39 11 18 15 15 22 35 20 8 10 36 9 8 4 28 21 19 18 14 19 33 40 30 40 17 12 23 33 29 6 1 24 7 9 26 1 33 40 29 20 8 22 33 16 27 40 26 15 16 27 4 5 4 17 22 36 16 19 24 15 28 28 23 21 20 1 11 17 10 36 29 26 1 2 30 23 11 7 6 33 21 21 27 34 16 39 17 8 8 29 37 29 5 14 27 30 14 35 12 5 40 3 13 2 39 19 39 33 36 32 9 3 20 2 27 36 26 40 12 38 28 3 26 30 17 8 39 23 31 9 18 5 9 16 12 36 38 3 39 26 30 20 3 22 12 39 38 26 3 6 14 9 23 13 35 38 27 22 7 28 8 3 25 23 16 9 21 25 37 26 33 40 9 13 36 8 28 17 15 4 15 33 7 16 3 35 19 40 36 33 16 22 6 35 39 34 38 31 18 3 26 3 37 12 30 38 4 10 16 10 19 39 16 16 12 20 16 9 27 32 13 16 26 19 26 28 17 15 34 38 27 31 27 23 30 14 20 25 38 23 10 6 10 9 34 15 31 16 7 4 28 39 16 31 26 31 27 27 11 6 38 28 35 29 32 24 5 38 23 4 23 7 38 10 6 18 28 9 11 18 38 29 25 37 35 30 32 28 10 35 8 22 38 25 9 17 23 27 3 25 17 33 32 33 22 30 25 29 4 8 13 28 19 12 35 22 29 40 29 31 39 27 18 28 16 39 4 23 7 29 6 12 16 20 16 23 25 9 17 23 35 11 9 34 7 7 23 11 5 16 38 7 10 22 14 6 33 15 28 25 7 27 1 22 38 16 35 24 10 7 27 40 34 36 37 34 6 33 14 39 3 22 37 10 15 34 5 3 37 12 22 31 5 37 4 11 16 22 16 29 14 17 27 14 29 26 6 29 2 16 23 8 34 36 40 14 36 34 35 26 25 17 15 2 37 30 27 13 25 28 10 16 25 31 6 22 21 18 27 14 33 3 8 14 1 24 6 21 40 7 15 36 31 38 34 25 13 6 38 28 3 14 3 30 39 9 6 1 5 27 8 10 22 2 24 33 22 28 31 13 8 19 18 27 15 21 11 9 36 23 14 37 17 36 6 26 17 12 3 4 27 34 24 12 28 20 20 13 5 3 14 31 8 24 24 12 14 3 23 16 7 28 15 39 23 27 26 34 15 7 32 21 23 27 1 37 18 28 8 22 28 20 11 26 34 13 40 28 1 38 38 20 18 39 15 15 1 11 22 20 23 38 10 15 7 28 19 22 2 25 29 35 17 34 21 38 27 30 32 23 7 22 33 37 28 6 19 38 40 12 14 17 31 28 32 40 28 6 18 22 35 31 16 32 26 3 10 40 31 20 5 10 7 4 36 6 23 2 33 24 23 28 6 25 29 2 12 18 10 16 1 34 38 29 28 26 38 30 33 12 21 11 29 32 9 11 5 10 29 1 7 33 30 9 13 11 28 26 5 6 1 32 36 29 37 4 16 19 33 18 16 32 11 30 27 27 9 19 4 9 38 26 37 20 37 16 3 32 37 1 18 20 38 39 25 13 33 29 34 28 25 4 34 38 2 18 2 7 6 23 21 32 32 32 14 18 7 2 18 7 4 24 32 6 30 33 8 32 15 5 11 7 29 11 23 24 34 20 33 8 8 38 22 4 40 7 28 4 16 30 30 34 10 21 12 26 4 30 20 27 19 3 27 37 7 12 5 17 8 12 35 27 29 24 7 33 1 12 22 2 15 4 12 36 39 7 37 26 2 20 24 25 10 36 14 11 10 4 11 8 18 1 3 23 33 18 5 2 31 3 5 8 4 5 25 32 28 28 17 8 4 16 18 21 9 35 30 35 22 9 11 18 24 15 30 33 19 31 38 30 6 19 32 13 6 1 10 38 25 1 33 36 29 27 18 29 16 3 12 37 40 9 16 35 2 11 20 8 8 25 8 15 14 30 6 4 38 8 7 38 32 8 29 19 18 31 4 9 17 16 20 16 37 12 12 7 6 15 5 30 7 11 25 28 37 34 19 16 17 35 7 5 40 28 7 24 30 21 5 30 2 13 22 18 34 30 9 17 30 3 33 34 4 26 23 10 2 39 15 13 38 14 25 12 17 29 21 3 3 12 38 33 25 30 34 2 11 12 23 4 21 19 21 35 24 35 19 10 29 10 1 2 40 11 12 18 18 9 29 40 9 16 39 38 14 39 20 35 9 6 20 15 27 32 13 20 23 20 28 16 6 29 18 31 33 32 4 28 27 5 19 13 19 31 5 6 38 17 17 5 20 15 16 4 30 1 16 17 3 17 5 17 2 17 19 13 20 32 15 23 3 13 10 6 35 21 13 6 10 30 8 24 37 28 33 6 16 37 17 35 33 21 40 33 1 30 10 10 6 9 10 22 19 6 5 23 2 30 36 12 16 31 15 8 10 31 14 23 25 6 11 25 26 13 33 19 32 7 7 37 22 26 9 1 33 26 14 10 9 36 20 9 9 22 16 35 27 37 11 21 37 40 5 5 38 14 39 21 38 16 26 8 28 13 39 21 5 29 22 16 11 28 6 17 24 39 10 13 1 34 19 16 19 28 12 3 34 29 32 2 6 21 7 6 12 24 39 8 19 3 16 27 34 37 36 17 9 8 30 30 8 31 14 4 40 4 32 34 28 22 26 1 30 2 18 27 39 18 28 30 8 31 32 40 14 5 9 7 36 11 26 14 15 23 22 10 33 28 40 32 4 15 23 28 29 34 15 25 12 30 21 6 33 29 1 10 13 36 12 26 20 36 23 22 39 16 30 18 9 2 27 33 9 4 26 30 29 15 39 14 36 3 24 2 24 8 37 1 35 14 33 6 5 29 38 7 36 36 24 13 23 11 33 2 39 18 2 3 17 21 23 17 25 35 40 15 30 28 32 5 3 9 28 4 32 38 36 35 19 36 39 25 18 31 19 8 1 9 16 34 31 24 22 29 22 14 10 39 38 10 34 34 10 29 16 16 36 30 40 36 18 3 13 8 2 29 35 25 34 34 39 34 37 18 19 17 4 1 28 11 4 28 4 16 10 22 13 13 29 24 15 34 34 20 8 25 8 39 4 18 11 26 8 9 37 26 14 9 21 40 23 16 19 7 4 1 16 6 31 11 29 15 37 13 14 12 25 29 39 36 18 21 33 32 34 5 11 15 30 2 28 21 10 2 20 10 26 38 3 13 10 18 8 38 35 14 14 31 11 7 7 40 23 33 18 31 17 11 4 18 30 5 2 23 4 30 35 35 39 12 37 30 10 25 30 14 1 2 35 38 14 10 34 1 6 4 19 26 17 32 32 11 12 27 4 8 16 12 14 37 28 4 14 19 17 39 1 12 12 5 11 7 34 21 35 16 34 8 21 18 35 6 27 15 19 16 14 2 14 18 32 38 11 14 35 28 19 10 36 28 24 30 39 4 11 9 38 26 32 11 8 3 38 2 6 33 17 30 13 2 11 31 3 4 36 12 10 24 5 29 39 40 15 18 19 24 23 39 36 35 9 13 30 29 27 24 28 26 36 16 23 13 25 31 35 8 39 7 23 28 35 31 2 35 14 1 40 36 18 33 38 18 25 9 1 22 20 17 18 10 21 2 33 40 5 11 32 39 2 33 24 31 3 20 1 22 18 4 16 31 13 29 24 13 25 24 23 26 11 19 37 33 29 20 40 38 28 28 1 9 13 35 21 32 36 19 25 18 27 1 35 19 8 33 34 23 1 17 12 10 33 2 2 28 33 33 32 10 14 30 39 17 18 18 5 21 39 39 9 8 17 13 13 33 12 25 25 10 9 27 28 17 39 18 31 30 14 24 9 8 5 8 24 1 17 39 14 38 9 32 37 24 5 36 6 13 33 4 1 20 39 5 35 19 1 40 21 9 17 23 22 10 12 1 27 5 19 19 37 1 36 24 1 15 10 25 35 37 22 26 29 17 6 3 11 3 25 38 22 18 9 32 21 18 10 4 28 11 26 19 3 7 10 11 33 8 25 27 25 35 29 18 36 7 35 22 34 15 25 21 9 4 23 17 5 10 15 9 3 37 13 34 12 5 2 23 25 34 35 26 18 5 24 39 2 33 3 6 15 27 3 1 24 25 19 25 17 38 35 9 18 36 8 34 18 5 24 5 32 30 17 36 31 7 39 32 11 36 27 35 18 36 7 36 5 19 35 21 40 5 1 36 27 12 8 2 10 15 19 18 23 23 38 13 2 7 14 2 12 13 19 1 13 26 18 19 19 10 38 37 22 28 11 2 5 18 40 3 18 36 18 14 11 10 32 16 14 33 6 4 38 30 39 25 39 3 8 6 2 13 30 2 25 24 16 28 12 20 37 36 26 30 3 10 28 13 5 36 39 37 21 11 37 24 20 8 32 18 31 3 30 36 26 30 37 39 26 23 28 17 39 40 37 7 17 29 21 30 1 36 38 16 21 29 4 34 15 8 4 37 19 2 29 19 37 10 9 14 9 5 18 38 14 30 13 19 12 10 6 28 38 30 8 38 23 23 16 32 35 6 24 21 33 10 22 11 19 18 3 35 19 12 39 22 16 32 18 17 19 15 1 8 20 23 8 12 13 19 18 14 36 12 7 28 1 36 13 18 19 6 7 31 23 8 34 19 36 7 28 22 37 31 14 21 18 3 15 26 28 4 22 35 32 13 10 30 34 31 35 34 40 19 38 32 26 8 12 29 8 39 35 25 15 22 34 30 14 28 3 31 28 18 2 15 23 13 10 6 18 12 30 13 15 23 16 22 17 13 6 38 7 30 34 33 24 29 10 15 30 6 15 24 23 33 28 18 28 31 26 32 38 26 16 7 31 35 8 38 12 35 20 23 15 6 9 35 6 3 11 18 29 17 14 29 11 40 36 25 34 39 4 12 28 13 3 22 11 35 15 11 25 8 21 22 28 34 36 29 14 25 21 23 25 11 14 17 11 38 19 2 22 40 39 5 36 31 22 27 13 36 28 29 22 37 28 4 18 14 12 35 15 7 14 37 24 5 29 35 8 9 40 20 9 7 27 2 14 3 7 14 27 20 11 8 7 26 38 37 10 35 37 8 35 32 21 40 36 3 32 8 33 3 38 15 11 31 18 26 38 21 21 1 8 40 34 23 35 26 33 1 31 35 38 38 21 3 10 34 7 27 5 37 18 28 38 14 26 9 37 4 1 23 9 26 30 4 16 23 30 7 3 3 32 40 27 27 38 3 35 5 23 36 5 26 7 1 13 29 40 34 21 24 3 9 40 23 26 23 7 31 25 15 21 28 5 26 36 34 20 36 19 10 3 15 27 27 10 16 34 34 28 15 37 27 6 31 12 34 5 20 14 4 28 28 3 9 19 35 23 2 29 34 20 19 8 11 9 23 26 8 4 36 33 36 4 32 27 2 3 6 12 19 1 9 35 36 26 26 31 19 15 40 14 1 27 32 2 25 11 10 26 38 39 28 6 11 28 32 24 18 4 35 33 29 5 33 20 3 13 30 15 13 2 35 4 36 21 2 30 37 20 35 28 23 40 14 39 19 17 35 19 18 12 20 8 10 14 28 27 4 22 23 12 22 11 36 26 27 3 18 25 27 10 9 30 22 39 21 20 40 23 1 17 25 3 2 38 39 23 26 22 2 8 13 25 25 11 8 23 14 5 12 31 6 35 5 25 26 37 30 29 38 30 28 39 7 1 13 20 2 11 12 5 31 7 20 19 33 30 8 8 2 2 11 30 2 34 24 1 7 20 38 40 40 6 28 13 13 25 36 1 40 16 14 5 38 30 39 8 12 35 16 2 34 21 8 34 34 26 10 1 2 33 11 29 25 38 34 9 17 26 30 1 10 6 33 7 28 32 38 36 22 26 11 12 25 17 1 26 22 25 15 39 1 15 7 28 20 11 21 38 2 27 6 9 24 38 5 37 2 1 38 16 27 30 40 26 3 8 24 33 25 23 24 8 16 4 15 27 25 1 23 37 31 34 3 24 27 24 7 1 12 15 8 26 6 12 17 38 31 13 37 17 18 30 22 22 24 7 19 28 7 39 12 22 8 8 10 33 36 28 5 14 6 2 35 1 14 9 2 22 17 28 35 21 12 22 3 19 12 20 23 26 18 18 4 15 16 18 8 28 40 15 23 20 10 30 16 28 28 21 40 8 2 7 8 25 24 8 8 1 12 16 38 34 24 27 21 12 34 4 20 29 4 10 4 7 17 25 10 31 7 1 9 15 27 12 22 9 32 38 26 15 38 38 35 13 12 27 4 40 3 40 20 8 17 21 8 12 19 30 35 2 32 20 7 7 7 31 36 17 37 33 28 15 18 39 18 27 3 33 21 36 24 31 6 17 22 31 13 8 19 40 26 40 5 27 25 11 26 12 15 40 16 36 2 32 14 27 30 22 11 34 33 36 13 3 17 11 19 21 6 6 26 21 29 9 25 35 39 16 5 6 4 6 19 8 35 14 34 5 39 18 37 20 13 1 34 20 24 33 5 7 8 9 33 28 4 27 32 22 33 36 26 8 13 18 17 4 19 4 2 31 28 33 4 40 8 27 32 10 35 34 22 20 14 8 27 30 18 8 12 26 23 9 27 2 35 26 40 5 17 5 4 39 35 7 23 4 3 32 37 8 8 35 28 14 26 29 40 19 15 32 9 26 33 20 37 18 5 13 29 28 31 6 11 32 13 16 3 10 8 2 18 4 13 22 11 8 10 30 15 14 15 18 8 3 1 4 33 9 16 32 37 14 14 25 19 28 3 35 14 12 17 19 22 23 17 14 29 2 36 34 12 25 11 2 33 24 13 37 32 34 36 7 7 25 11 39 27 15 6 4 4 18 16 10 8 22 31 24 1 40 28 8 15 33 27 20 5 22 6 34 9 2 15 1 25 39 19 22 3 13 34 11 7 6 3 19 31 31 29 3 36 38 8 1 28 29 4 34 8 26 22 21 31 29 38 3 2 14 5 34 19 24 18 24 4 2 11 33 29 29 20 12 31 6 39 9 37 18 38 40 39 11 20 30 3 25 5 10 22 19 39 18 18 32 8 11 11 33 11 36 29 22 8 26 30 7 38 4 21 23 2 15 37 17 5 11 19 8 23 6 36 6 7 25 7 27 6 38 24 6 6 31 15 23 10 34 26 3 38 11 8 27 1 23 35 38 36 36 3 38 29 6 8 18 24 21 28 16 12 7 10 39 16 14 4 40 11 8 16 2 11 27 23 3 4 19 36 14 34 17 16 40 38 33 2 24 14 14 25 13 39 29 2 14 39 25 22 31 40 3 22 7 22 40 35 38 4 31 28 38 25 10 21 14 16 38 11 35 5 15 3 34 16 37 17 20 32 35 38 21 18 26 38 6 24 30 34 13 12 20 38 18 26 8 13 26 32 10 35 18 15 13 17 32 31 28 22 28 24 33 30 24 25 19 40 21 5 17 23 8 17 34 14 23 11 10 39 3 20 9 24 31 24 10 39 29 5 28 4 7 15 7 10 36 12 21 5 22 12 23 12 9 17 4 16 28 22 31 17 5 11 3 4 24 35 8 37 7 22 5 5 3 16 13 34 8 20 17 4 4 12 3 9 11 9 13 12 8 33 26 7 28 37 4 37 34 31 25 7 1 28 11 23 27 24 22 25 39 17 38 28 28 15 8 4 3 5 9 20 23 11 25 16 31 16 18 8 4 31 35 35 8 25 18 6 16 39 1 35 20 22 18 30 31 21 2 10 38 10 7 24 7 10 24 6 22 38 28 30 32 32 36 29 14 16 4 26 35 22 22 32 15 27 7 13 23 10 11 35 29 6 17 29 15 27 3 24 4 20 29 25 24 11 38 16 17 4 6 32 32 29 30 40 2 33 6 36 21 32 35 28 6 31 6 25 1 21 16 35 37 18 38 33 2 29 36 31 10 23 4 22 13 9 12 26 13 3 20 26 32 31 12 35 17 11 34 17 19 6 31 38 18 17 37 27 37 32 13 12 10 38 23 26 10 27 13 11 5 33 33 16 2 21 2 7 4 17 13 35 39 2 19 8 3 13 34 19 26 19 37 15 35 28 34 18 5 35 38 25 5 19 18 18 37 28 36 20 33 38 39 38 35 18 29 20 38 21 2 13 37 11 27 30 34 17 23 15 4 30 13 3 4 23 8 15 15 19 23 27 16 39 15 25 19 34 29 35 3 28 13 28 38 1 38 17 11 19 18 8 8 14 24 31 25 6 22 36 38 22 9 25 30 33 13 6 34 31 40 5 5 5 24 26 7 24 13 40 31 18 34 36 10 31 32 9 36 4 30 38 34 39 15 39 28 34 37 38 14 9 1 13 40 8 9 8 37 39 18 31 25 31 32 37 36 36 31 2 4 9 26 27 30 7 39 2 15 22 28 20 27 40 6 36 24 28 40 28 38 18 24 6 19 5 29 3 1 36 18 37 17 32 8 12 20 19 38 27 11 23 30 39 5 7 40 40 8 34 11 36 15 18 34 27 18 1 26 21 21 29 33 5 9 11 27 40 35 25 40 35 35 1 33 6 17 34 29 5 23 20 3 34 4 33 21 26 29 23 36 17 28 16 34 20 35 27 7 25 29 34 9 40 20 31 26 33 33 18 24 7 21 11 30 19 28 37 17 22 24 22 14 38 40 38 14 39 11 26 32 20 12 3 27 11 35 24 32 37 14 29 34 31 8 30 40 22 26 28 12 15 13 38 3 11 36 22 32 29 1 34 3 19 25 4 29 4 10 35 11 19 8 16 39 8 24 3 21 20 14 18 3 20 35 16 2 12 13 31 9 37 12 34 7 35 26 3 22 36 19 25 19 16 4 25 18 38 32 4 16 14 1 33 30 35 12 37 32 34 29 17 31 38 33 22 20 35 20 31 24 16 11 27 23 35 32 9 18 4 11 1 36 18 27 12 37 39 32 19 16 21 12 13 37 26 3 40 6 22 39 33 1 1 9 10 14 1 7 5 7 3 6 29 17 13 16 19 38 9 32 5 29 6 7 14 5 8 28 15 20 29 14 19 2 32 17 24 39 1 29 1 34 36 27 6 33 4 21 14 8 4 11 22 23 8 28 9 3 12 6 22 29 15 31 3 19 25 2 30 20 26 21 1 32 10 30 13 14 24 19 16 34 28 36 27 25 40 4 10 16 5 14 10 11 32 37 29 28 31 18 33 7 11 22 7 2 24 31 19 36 13 36 11 38 22 19 36 35 13 36 1 39 14 5 25 9 39 19 36 34 18 28 17 36 25 13 40 1 1 8 17 21 39 32 5 39 4 16 6 28 37 40 9 22 26 23 22 19 36 23 4 31 11 38 15 32 28 29 27 26 18 22 8 39 35 25 28 17 33 15 20 36 26 8 26 21 39 34 5 31 7 35 10 5 34 39 16 7 27 25 36 12 36 30 40 14 18 11 37 4 5 18 9 38 7 37 23 30 1 40 10 21 20 20 38 6 39 13 40 7 3 31 36 37 16 26 22 23 32 27 39 32 22 2 6 22 4 19 17 18 14 5 19 22 20 34 8 20 25 8 33 4 27 27 10 2 31 8 9 38 36 37 15 11 8 18 40 11 18 8 4 33 31 1 3 3 24 3 22 8 8 31 5 19 21 16 39 4 24 40 13 30 30 33 12 35 19 1 9 35 11 1 36 2 2 21 11 23 27 9 11 12 14 13 16 23 12 13 15 30 38 13 8 32 17 5 11 15 38 4 5 15 12 13 36 17 36 37 33 38 14 17 6 26 28 36 33 20 25 12 6 40 32 22 6 1 5 1 39 31 26 33 2 5 16 39 4 37 22 17 36 19 9 18 5 39 19 3 25 26 3 2 5 17 5 35 30 3 16 32 17 31 7 39 20 16 4 4 34 4 25 37 31 14 16 3 13 13 9 37 39 28 7 16 23 38 6 35 20 32 23 33 24 33 5 11 23 23 27 14 16 29 40 33 10 29 25 21 32 4 37 7 25 2 25 26 9 24 29 21 9 13 39 30 3 34 22 33 17 35 20 37 32 18 21 10 23 7 16 10 29 18 34 31 19 6 20 17 20 19 19 22 4 18 5 39 20 27 17 28 30 1 16 12 32 9 38 25 17 29 14 15 14 30 12 36 13 27 21 7 34 31 19 29 15 15 30 5 9 9 2 28 4 20 35 14 25 13 2 8 34 13 36 39 17 39 2 7 8 7 16 6 20 28 18 24 1 19 28 6 20 8 21 7 11 32 26 38 18 2 10 27 29 7 29 38 19 9 20 38 25 9 8 13 7 29 11 15 33 24 20 9 19 5 29 31 32 32 5 8 16 28 19 21 4 17 4 11 38 12 20 11 20 33 8 16 4 4 23 18 34 37 25 6 23 3 2 12 26 34 3 8 23 33 23 31 3 37 17 7 15 26 19 12 19 23 24 10 38 13 2 15 32 15 39 20 35 11 40 19 20 19 26 31 17 23 5 13 6 31 31 8 21 29 10 15 13 28 12 30 9 10 21 36 4 27 28 10 17 3 39 18 35 4 24 10 27 18 22 37 10 4 39 6 16 24 6 21 16 22 36 8 33 30 15 17 27 17 22 27 31 38 4 33 1 24 30 28 7 6 8 6 25 3 12 1 17 7 17 23 11 26 39 32 38 39 3 34 32 30 23 29 39 16 10 11 6 28 1 2 19 28 20 40 28 9 31 23 14 1 27 5 39 29 3 4 19 16 12 17 32 16 13 13 11 28 9 2 19 22 16 12 23 18 19 31 18 21 17 28 31 5 7 31 6 32 18 3 2 24 25 39 18 10 19 37 32 9 10 14 24 20 22 27 20 27 4 14 32 30 15 34 38 20 37 26 15 11 4 20 33 36 32 2 18 8 3 15 38 28 37 13 40 6 7 3 29 23 6 39 6 32 9 15 12 35 25 40 14 20 37 17 18 33 34 10 24 29 17 3 24 19 24 33 35 20 3 15 10 32 33 7 18 5 2 28 40 20 10 16 10 21 39 37 18 26 31 38 31 40 25 36 10 36 10 28 40 33 25 37 29 25 21 15 6 31 34 20 29 4 10 1 4 34 22 2 15 9 25 6 12 21 28 20 17 13 33 17 3 23 35 15 12 17 38 3 1 25 35 15 22 25 2 18 14 22 2 23 28 15 27 12 26 4 23 20 29 40 1 32 8 11 38 36 28 8 39 2 23 39 17 26 23 39 36 18 7 30 20 8 15 1 33 14 13 36 15 26 12 37 36 28 13 21 39 13 34 9 6 15 10 20 8 9 6 13 39 17 32 23 29 23 7 7 20 36 34 28 9 20 10 8 25 34 33 34 6 8 27 28 33 29 40 17 39 19 26 2 19 16 34 22 26 24 6 5 16 1 14 11 10 13 37 3 2 8 40 6 1 4 11 24 35 15 31 29 3 8 10 7 14 28 18 12 19 9 26 7 15 21 25 29 34 15 2 39 36 11 7 37 27 10 20 15 35 37 37 11 38 30 9 4 2 37 6 36 18 22 25 4 34 17 11 7 21 29 11 37 13 7 24 35 2 2 40 19 9 17 5 9 26 14 4 27 18 8 39 20 22 28 5 23 23 25 33 1 15 12 25 19 32 1 3 33 33 4 22 28 23 2 27 12 22 16 38 27 11 22 30 15 15 16 3 12 19 38 36 25 5 34 15 23 16 17 9 8 27 23 26 13 4 18 22 3 40 7 4 14 13 39 6 24 36 1 26 24 2 9 19 16 10 26 29 6 18 33 30 28 13 24 4 29 13 7 36 37 19 38 9 35 6 18 33 33 6 31 18 11 34 11 1 40 1 7 15 12 22 29 5 9 14 2 2 40 20 31 15 4 11 5 17 1 15 36 26 32 27 13 5 40 12 17 28 11 2 27 4 18 35 20 33 33 9 33 15 18 27 20 27 1 16 33 8 26 17 25 14 16 35 26 30 34 33 30 32 9 8 39 6 21 40 18 14 39 9 13 14 20 18 25 33 10 40 2 17 9 35 17 6 14 25 15 3 3 30 19 20 3 29 30 16 31 31 24 7 18 15 39 15 30 14 35 4 37 40 19 4 24 30 30 17 38 25 6 9 23 3 9 35 40 30 35 12 22 18 33 37 4 1 35 24 7 14 7 23 29 19 18 11 10 28 22 25 2 8 16 40 40 12 37 40 1 37 21 31 25 12 34 39 34 19 35 33 4 24 13 28 30 26 18 31 23 36 32 5 9 2 19 14 24 20 10 22 36 11 22 33 37 10 26 22 30 5 2 7 16 30 11 21 19 32 6 3 8 10 18 40 37 33 39 4 18 17 29 34 22 8 6 10 38 13 31 10 5 18 19 18 36 39 18 29 25 32 21 18 23 22 35 11 28 1 16 12 36 37 40 12 10 27 32 18 11 3 21 26 27 27 26 30 40 36 36 31 8 2 5 34 40 3 38 6 3 11 18 20 29 16 32 19 32 37 3 31 21 8 13 37 33 11 25 33 8 22 24 2 21 22 25 10 5 23 27 14 18 3 27 18 29 30 11 20 27 38 33 35 11 25 6 3 35 6 33 21 25 22 26 14 31 27 39 8 37 30 34 23 20 22 32 15 23 18 19 7 11 8 22 20 18 3 19 24 15 2 32 23 38 40 23 7 17 20 19 31 26 40 26 13 28 6 19 38 28 13 25 20 39 24 34 30 37 15 38 24 29 10 13 22 10 11 3 14 14 14 3 16 8 27 17 4 3 38 27 10 30 13 5 4 19 15 26 36 23 2 19 8 3 28 40 17 4 11 36 33 23 40 9 22 32 39 4 38 6 27 23 11 12 4 17 40 21 26 19 29 37 18 15 14 35 6 15 16 5 24 13 19 16 18 40 30 5 7 21 11 36 2 26 37 10 29 27 32 22 25 30 30 34 7 13 38 27 23 8 14 38 4 5 30 35 15 12 14 35 18 22 39 16 40 22 40 10 8 17 34 2 8 24 2 36 11 3 10 9 25 34 32 15 5 30 2 32 3 24 25 1 31 21 13 11 27 9 30 21 26 29 34 5 6 23 28 29 7 12 36 36 33 29 34 40 16 34 22 30 9 38 35 19 26 14 37 36 8 9 24 26 33 34 18 36 31 39 19 26 30 14 16 25 39 7 19 39 4 21 17 20 13 8 8 24 32 26 34 27 26 30 9 37 4 16 16 13 36 20 2 35 32 28 31 34 34 3 10 8 16 33 33 1 38 23 9 31 31 28 25 32 3 21 1 32 40 38 21 27 21 30 8 9 7 28 4 6 25 5 25 27 11 24 36 19 29 11 20 22 24 21 18 5 38 22 3 5 28 24 2 27 1 11 14 39 37 37 30 21 39 36 40 5 5 29 26 21 28 13 7 17 36 16 30 39 38 5 13 17 1 3 38 4 8 32 36 30 33 28 2 34 9 35 40 12 5 2 19 1 15 16 37 19 25 31 22 6 26 3 10 22 36 23 17 17 39 6 35 23 14 29 29 37 12 1 32 12 33 35 37 30 17 35 1 32 36 24 32 38 10 10 30 21 13 19 38 30 16 15 28 33 20 2 32 6 18 10 13 38 32 28 4 20 13 8 5 23 6 9 28 18 17 9 24 36 6 26 18 25 27 39 13 20 18 16 22 6 7 35 16 23 21 39 19 24 2 28 31 33 30 24 16 7 29 24 28 16 13 10 40 17 40 3 18 34 2 12 23 38 33 39 17 31 36 39 12 7 26 25 36 33 39 9 12 25 23 23 12 1 24 28 24 27 1 26 15 10 40 12 28 24 25 36 32 32 37 39 27 7 3 3 12 2 19 34 13 3 32 16 12 11 8 19 31 28 40 36 39 33 40 15 7 39 21 23 3 28 30 36 28 13 33 15 27 29 14 4 12 22 35 22 33 40 38 18 8 22 33 36 34 37 27 16 31 38 29 22 15 20 2 35 11 7 18 28 20 8 29 2 20 16 28 30 34 7 34 16 15 19 9 8 26 27 30 34 32 30 7 40 24 4 25 3 16 34 40 32 18 38 22 33 27 12 23 34 19 5 27 16 15 19 7 36 39 17 33 35 15 4 19 6 5 6 28 36 34 14 27 17 7 14 8 11 25 22 38 19 23 14 35 31 30 26 23 21 21 7 4 16 2 15 7 24 29 21 4 10 1 38 28 19 19 1 27 17 9 13 33 39 18 10 36 15 35 20 4 10 8 3 29 12 28 1 19 19 35 23 10 26 25 6 27 1 34 20 7 35 28 6 21 40 28 7 17 38 4 35 18 33 30 24 22 24 19 31 15 19 4 16 15 5 34 19 31 10 13 10 36 9 23 37 25 13 37 16 11 35 7 22 24 16 31 20 5 10 31 7 5 36 36 38 10 18 20 18 1 5 33 25 22 26 34 18 15 10 28 24 9 20 25 35 34 11 26 24 7 35 11 37 33 39 13 36 32 5 7 17 11 28 27 30 25 3 15 11 15 17 23 19 35 13 39 24 12 20 34 30 37 36 26 4 21 37 13 2 29 28 35 21 37 19 39 17 5 17 9 3 30 37 33 40 34 6 14 13 27 20 25 38 10 3 22 31 31 6 12 4 18 1 29 6 36 14 10 33 28 22 17 28 2 9 32 22 22 30 39 39 11 34 20 29 2 14 28 36 5 17 22 28 30 17 17 24 5 38 21 27 16 38 1 16 9 34 35 4 33 16 32 25 13 17 10 16 12 19 29 18 34 9 1 3 27 2 14 21 2 40 10 4 25 40 10 34 26 26 31 13 27 14 20 19 3 34 9 6 8 9 5 5 8 23 12 8 34 19 24 21 34 11 7 9 7 33 28 32 9 26 6 7 21 40 2 16 25 1 23 16 18 8 30 8 1 14 15 18 19 11 14 19 20 29 5 7 18 6 19 13 3 3 33 7 14 11 36 11 26 13 33 39 20 28 36 35 30 23 21 25 21 25 33 22 39 31 22 40 18 36 9 25 39 29 16 37 17 28 39 3 37 25 11 30 20 27 13 1 33 35 11 39 16 22 38 15 33 10 8 17 30 12 18 28 30 4 14 25 1 10 6 27 6 9 33 33 3 36 40 35 34 13 2 33 15 23 17 23 10 5 28 37 40 24 19 36 11 11 7 32 14 10 8 34 12 2 8 27 5 4 12 12 15 28 37 35 3 22 5 4 27 10 17 19 13 25 20 14 3 28 10 6 20 26 11 16 1 17 31 23 30 38 19 38 35 12 25 34 33 11 30 40 4 14 16 17 39 27 18 26 33 3 25 20 23 6 22 34 38 13 18 9 40 21 32 11 18 24 3 16 33 36 35 8 1 22 16 1 40 39 7 2 10 15 37 37 4 15 6 31 6 33 25 37 31 40 13 24 7 37 28 18 7 9 25 29 30 10 19 31 6 11 11 7 33 13 20 35 18 11 26 32 36 32 4 34 27 17 25 34 4 28 1 37 27 13 9 39 21 17 11 24 5 34 25 1 14 16 30 23 31 31 28 7 19 4 19 25 11 12 17 35 12 27 26 12 8 19 24 38 3 32 13 12 28 36 4 17 39 16 30 7 32 11 28 36 8 21 8 33 21 8 19 37 19 9 11 16 40 4 14 26 40 11 34 37 24 35 34 19 10 9 34 2 4 22 38 14 10 7 2 7 34 9 12 28 26 4 5 1 13 31 26 13 34 18 4 26 21 34 13 15 22 36 17 33 14 36 16 31 37 23 35 21 27 23 40 7 34 17 35 12 2 29 32 27 31 3 7 8 27 36 33 14 24 22 10 29 17 31 26 31 25 29 28 20 10 31 20 4 2 34 33 11 33 34 3 40 24 13 25 10 1 3 25 34 35 14 1 18 19 16 36 8 38 37 29 20 11 23 32 23 40 12 28 4 34 30 40 2 28 34 34 16 8 3 20 5 31 18 28 26 37 15 8 25 31 25 9 11 7 34 34 7 38 3 39 17 15 23 23 36 6 28 22 33 37 23 2 9 25 34 21 34 25 19 19 34 6 9 36 26 34 22 33 19 35 15 23 19 32 32 33 26 19 16 16 21 39 5 37 8 15 13 28 10 18 35 6 7 12 39 18 11 10 35 19 6 38 40 27 20 17 24 11 33 38 15 32 40 8 19 17 12 17 39 1 11 26 31 36 21 2 26 30 23 40 37 36 19 8 19 15 28 21 14 28 8 18 4 23 13 22 6 37 29 38 28 21 10 22 32 8 36 27 12 24 7 22 32 26 33 2 15 36 37 39 27 8 25 36 39 6 12 1 39 13 36 17 12 8 4 12 36 37 4 7 14 28 21 32 2 17 13 14 37 2 22 36 37 3 20 31 5 27 2 30 37 26 12 10 31 18 1 2 22 4 25 19 14 3 3 1 37 19 20 3 2 30 30 31 8 24 40 8 11 17 33 25 25 34 19 5 35 9 11 40 32 16 28 16 1 14 4 12 18 18 33 35 36 2 4 27 31 33 39 9 26 30 33 37 2 5 10 28 25 21 19 7 8 31 9 40 28 5 23 15 21 34 38 14 15 4 11 18 38 19 35 1 22 6 7 26 13 23 9 10 21 4 7 3 39 27 27 28 18 30 9 30 4 7 38 27 34 3 7 9 30 9 40 24 39 4 11 22 20 16 13 34 6 37 40 4 33 32 29 11 2 9 31 11 9 10 35 30 32 12 23 1 27 34 38 19 15 11 35 34 34 2 19 6 8 7 18 35 17 16 8 39 13 24 35 34 1 20 28 12 15 21 19 4 5 11 22 12 27 35 3 2 6 13 3 30 22 16 14 12 9 38 29 29 10 1 29 10 29 6 29 32 21 16 29 27 6 6 8 5 9 20 31 13 33 23 30 6 28 18 30 33 33 2 10 27 14 6 18 4 28 18 34 1 2 35 30 7 27 1 21 28 22 2 38 36 7 6 10 7 13 13 8 7 17 18 12 17 3 31 27 33 31 35 3 2 12 38 7 30 15 1 35 1 13 12 39 18 25 25 22 21 32 14 5 9 1 32 19 2 34 29 23 30 9 22 13 3 10 9 2 30 3 40 5 27 34 24 29 16 12 17 5 2 19 8 28 21 14 10 6 23 26 13 36 27 26 16 22 33 8 21 14 15 21 33 25 19 16 27 13 28 7 25 34 9 22 40 3 21 23 29 14 39 23 28 26 6 36 40 26 29 27 5 15 20 32 33 36 31 17 31 18 30 28 32 38 39 8 33 27 22 30 12 34 25 33 25 22 19 10 16 18 2 32 38 19 5 8 39 16 29 11 5 28 27 22 39 25 35 25 33 30 4 29 13 25 24 32 30 39 33 23 36 29 7 35 8 23 32 37 10 11 17 24 30 14 4 1 8 6 22 18 22 33 25 12 15 7 2 30 26 11 11 30 25 26 11 9 35 29 4 37 32 26 27 16 19 15 16 16 13 40 20 19 7 24 23 24 25 3 18 21 35 11 2 5 14 12 36 22 2 1 25 35 37 22 12 35 4 24 1 28 18 38 8 28 8 10 21 25 2 12 33 7 38 14 18 22 17 7 12 6 18 21 18 31 15 34 37 16 31 37 26 40 19 16 28 9 21 29 10 13 26 31 9 24 33 26 5 15 6 4 30 5 30 10 36 37 25 8 13 10 37 11 21 20 16 24 18 14 38 3 32 9 28 35 9 4 32 22 11 15 36 32 30 12 21 26 14 33 18 17 1 20 20 15 2 5 31 22 18 19 7 21 36 11 39 38 11 6 28 18 9 7 4 13 36 21 4 16 11 6 39 8 7 2 21 20 32 23 3 18 30 27 18 8 3 4 2 6 13 21 23 34 15 6 30 4 15 22 33 12 15 37 34 12 7 37 26 26 17 24 28 7 13 16 39 30 29 13 39 23 34 14 1 19 19 18 18 26 27 35 33 34 4 38 10 21 21 14 7 12 38 38 12 3 22 11 6 29 13 6 13 31 25 30 8 15 11 21 37 33 22 17 19 23 20 31 20 40 25 5 15 7 27 11 1 10 8 29 19 9 39 28 30 28 35 5 18 14 6 15 9 1 14 13 16 29 17 11 27 11 36 13 14 28 7 7 36 22 34 16 26 13 27 16 29 39 12 30 4 10 22 39 13 38 19 32 10 14 36 4 13 24 34 38 11 32 20 32 35 12 15 1 4 1 4 3 8 20 24 37 26 31 23 27 29 24 15 29 4 23 4 32 19 12 32 25 14 17 25 8 28 32 4 11 4 1 10 16 36 7 23 17 19 23 21 11 28 3 36 25 9 26 13 38 21 24 16 39 12 5 16 24 21 8 6 14 23 40 28 40 29 29 16 37 18 34 39 27 37 14 9 8 16 23 33 3 12 29 18 36 40 3 13 25 21 22 20 25 12 32 14 38 19 33 9 21 31 35 30 19 28 4 33 15 13 26 37 18 33 37 23 36 15 22 28 3 20 21 15 12 5 24 6 7 18 34 1 9 30 17 20 20 23 15 7 28 25 1 17 1 19 16 8 37 12 21 12 17 4 36 12 19 1 2 26 4 33 38 29 33 4 3 25 17 8 40 31 14 29 22 31 9 8 17 40 28 23 9 3 36 14 35 5 21 31 15 14 15 6 40 38 13 38 8 40 30 14 40 24 17 1 11 13 35 36 30 27 20 19 35 5 33 5 29 21 9 30 28 35 29 33 15 8 17 25 13 1 22 39 11 3 32 15 10 8 3 33 33 22 5 9 27 32 29 25 38 40 29 25 20 35 15 37 26 20 21 38 20 23 33 2 24 1 29 29 28 37 4 9 36 16 16 5 26 10 17 32 18 3 19 36 26 20 21 29 12 24 5 38 28 9 6 31 25 27 35 3 27 11 9 32 24 31 8 33 37 26 24 15 6 18 1 25 5 15 22 25 19 22 13 19 31 27 16 9 28 39 2 25 17 22 24 2 30 7 24 39 38 33 6 15 15 2 14 35 31 3 3 2 11 33 24 25 19 18 13 21 30 40 40 19 5 8 38 24 10 31 27 28 17 35 8 34 12 14 9 18 6 26 17 24 13 20 17 33 5 6 10 24 17 5 13 18 28 38 10 17 26 20 15 22 30 1 38 21 12 25 25 17 20 8 1 38 30 35 7 9 20 15 17 2 36 29 17 8 26 36 23 17 26 33 3 22 13 40 2 27 32 37 22 3 18 16 22 40 6 8 14 17 13 23 27 9 25 13 38 13 39 2 37 4 34 6 24 26 33 3 9 11 21 16 16 23 40 32 37 39 28 17 5 15 14 31 15 29 23 31 33 7 26 19 15 2 40 8 22 32 33 40 32 21 31 8 12 38 20 22 23 25 14 13 28 20 28 14 35 29 36 5 2 23 25 23 10 5 22 4 37 1 3 24 11 26 31 38 38 1 21 38 18 21 8 25 30 36 6 30 3 24 21 27 6 14 14 25 2 11 2 19 39 19 34 36 9 13 31 38 1 38 6 22 29 17 17 3 4 33 14 14 17 19 4 34 14 10 31 7 27 5 40 19 5 31 11 8 28 37 17 31 29 39 18 27 10 26 27 19 10 31 19 17 4 23 24 19 11 15 34 22 5 2 11 34 23 12 35 39 24 21 18 11 15 24 23 30 28 4 29 8 26 17 14 35 16 5 33 7 29 19 14 14 38 24 16 23 19 12 13 10 33 18 17 30 13 23 30 14 35 33 27 38 1 16 27 6 1 40 40 6 10 14 25 9 32 21 28 23 6 33 13 27 36 4 36 25 12 9 3 14 12 31 7 33 36 37 16 26 27 15 27 39 9 7 30 24 19 40 7 36 7 15 6 2 14 36 25 33 36 4 8 1 2 3 20 37 23 24 31 15 3 25 23 15 2 26 1 16 2 4 14 3 31 19 19 12 40 20 5 31 21 4 39 9 36 15 9 18 23 15 20 34 1 11 26 15 17 21 4 36 9 24 24 12 19 31 40 6 30 39 14 21 2 35 15 32 20 35 27 30 13 36 36 13 20 34 27 10 33 26 4 40 7 6 24 2 6 26 29 19 20 11 37 30 24 34 16 28 25 27 6 30 9 33 18 21 2 36 3 10 38 4 6 10 35 18 34 15 38 18 40 21 35 30 2 21 7 20 7 38 38 10 8 27 11 29 35 38 19 30 24 24 19 5 31 33 24 7 30 1 18 9 21 5 32 39 26 8 21 20 36 38 40 12 13 9 29 24 4 12 26 28 15 16 29 19 33 12 37 6 21 18 33 25 1 12 19 35 22 27 27 30 24 36 6 24 2 32 12 30 3 38 37 8 35 8 36 40 17 13 4 14 1 8 6 16 13 10 8 32 36 9 2 29 40 35 1 19 5 19 40 32 24 39 31 6 37 15 32 38 8 2 34 37 26 34 29 3 36 3 34 32 7 29 32 19 1 26 3 31 4 19 18 12 20 31 2 37 28 31 26 27 23 30 26 5 25 26 7 6 7 4 27 29 22 34 23 39 36 25 19 22 21 40 21 22 26 5 39 23 39 15 9 33 1 29 18 23 17 11 35 6 35 4 30 35 14 5 8 22 34 15 38 26 32 7 3 18 31 18 9 40 39 16 18 21 13 23 19 13 13 40 6 27 3 15 34 5 8 5 13 12 16 17 12 38 38 12 36 5 9 17 15 37 16 3 30 39 24 2 14 34 20 30 23 9 37 21 36 26 25 23 39 10 23 10 17 38 37 35 11 29 29 1 32 10 22 24 32 22 33 38 21 37 1 10 23 28 5 17 15 29 33 27 17 39 18 14 24 38 1 3 14 35 2 2 10 19 9 24 23 40 30 19 13 15 22 10 32 6 36 22 23 14 4 38 35 8 39 28 31 34 13 40 3 15 22 32 3 23 8 28 24 32 34 29 39 4 31 8 40 39 25 22 30 2 4 6 5 33 38 33 24 37 16 7 33 17 16 23 2 13 10 6 9 37 1 34 15 13 28 31 2 10 25 15 31 35 21 2 7 21 27 28 19 17 11 11 1 1 26 17 21 15 19 28 13 32 23 15 27 11 19 10 34 15 26 24 33 2 23 3 6 34 10 33 10 13 16 2 35 22 16 16 7 29 40 39 24 35 37 13 14 32 39 3 9 18 14 32 19 9 26 20 9 30 12 7 30 29 37 11 32 4 26 29 24 23 21 2 10 22 27 7 15 8 31 15 16 9 11 34 35 4 6 11 13 28 31 37 37 37 11 22 21 16 12 29 13 24 31 18 38 39 16 10 35 23 15 10 24 21 40 4 8 27 28 9 29 32 10 25 19 5 22 6 20 3 14 34 25 12 19 19 13 28 21 16 35 7 27 35 28 38 29 30 17 35 5 32 32 32 6 28 28 7 9 40 9 22 37 26 1 29 6 39 34 12 26 21 32 34 11 30 35 15 38 28 40 25 30 23 40 4 17 35 14 11 2 17 27 23 6 32 18 8 35 23 15 23 25 10 35 22 3 26 26 34 34 13 39 14 19 18 15 38 12 7 15 38 34 39 35 17 23 21 38 21 24 23 34 11 31 19 6 24 39 1 40 18 10 17 8 19 34 22 8 38 27 27 39 23 9 3 10 15 4 38 36 33 13 27 36 18 38 38 39 17 19 6 1 19 31 25 18 18 20 35 28 31 20 39 2 28 30 28 37 17 29 9 8 13 7 28 15 6 18 4 21 32 13 37 12 34 29 6 27 24 9 40 5 1 7 8 23 17 18 29 2 3 14 39 10 19 12 27 11 31 5 10 29 33 4 10 6 1 29 28 10 24 8 31 6 11 25 20 27 14 34 12 31 24 23 30 33 22 38 2 17 28 34 8 15 6 17 28 27 28 19 7 2 23 8 18 24 15 13 9 18 32 5 11 18 29 34 22 18 23 25 23 26 24 4 33 39 19 18 40 31 24 18 11 26 35 19 10 20 1 20 15 6 2 27 15 40 10 9 25 8 6 35 31 8 30 30 10 39 2 6 21 37 16 7 11 11 38 16 5 13 3 37 27 40 28 15 9 1 40 14 28 4 9 5 26 29 40 15 28 12 7 9 15 28 1 10 18 28 37 27 32 33 35 10 40 33 12 32 3 26 17 30 7 3 39 24 6 3 39 22 34 29 24 4 4 9 2 31 13 31 3 30 14 9 36 19 16 16 36 35 27 23 27 3 11 31 33 20 40 10 23 16 6 10 12 35 40 11 25 24 21 9 18 34 19 7 32 2 38 4 12 40 13 7 8 31 8 36 29 28 6 35 28 31 38 12 35 25 16 39 32 33 20 26 27 33 2 30 15 24 27 7 20 31 10 24 33 31 21 3 28 32 23 21 40 28 18 14 18 35 24 38 14 9 4 21 27 12 6 28 29 16 7 13 17 37 21 27 16 14 10 13 1 32 4 27 15 21 40 13 30 34 11 25 8 19 7 34 23 34 37 6 40 1 19 37 18 40 18 1 12 13 19 40 38 13 2 25 18 34 20 21 33 8 26 28 7 18 5 40 20 32 27 29 39 38 17 40 14 7 22 32 32 36 4 13 39 24 26 12 37 5 15 3 5 36 26 20 6 7 30 1 35 36 13 6 28 13 1 37 35 12 13 38 34 33 36 20 20 22 32 25 22 24 36 27 7 26 17 38 2 2 36 12 26 34 8 23 8 26 4 10 26 5 40 24 33 38 30 14 21 20 1 8 37 22 40 20 26 25 10 32 13 12 26 37 19 39 33 4 29 23 17 31 34 19 30 36 33 21 35 27 12 3 10 7 29 33 26 38 29 11 14 3 22 1 5 35 13 31 27 40 36 14 21 26 6 35 29 5 24 15 22 24 6 36 11 26 15 2 23 3 22 26 14 34 32 15 21 13 10 40 2 30 9 18 20 29 37 30 34 24 23 31 26 22 20 31 9 6 6 6 36 15 29 14 36 9 38 12 28 32 33 11 8 21 3 29 35 25 2 24 31 3 39 4 35 32 5 12 34 22 8 19 21 32 2 2 26 36 24 30 2 40 9 33 36 24 2 28 27 17 21 21 31 17 26 23 11 13 34 26 34 3 37 20 33 20 30 35 26 39 37 4 6 38 33 11 31 27 16 14 13 24 2 10 16 5 28 32 20 25 32 39 34 38 7 24 5 9 4 9 31 37 27 37 36 24 37 30 13 2 21 14 1 14 19 37 15 37 34 8 33 1 38 17 13 7 18 39 22 30 39 8 39 15 14 18 25 19 2 2 30 27 23 3 5 21 23 14 25 17 3 25 9 1 18 17 34 13 23 30 9 12 37 1 28 10 21 38 36 22 12 5 33 38 12 20 38 16 9 30 33 31 37 16 19 13 28 10 17 10 9 4 31 14 18 2 22 28 34 33 18 38 26 19 23 25 11 40 15 19 7 4 33 12 14 14 6 34 24 25 12 23 24 2 24 8 13 31 19 13 6 26 15 15 34 24 31 4 15 13 35 32 36 8 40 34 24 8 9 18 14 1 11 33 4 10 39 31 36 34 12 38 21 36 31 30 36 37 34 29 12 29 25 31 19 20 6 4 24 9 6 2 6 26 25 29 36 13 26 1 1 32 37 33 39 27 4 36 22 40 28 12 30 38 13 22 15 32 21 7 12 39 11 31 15 27 30 15 6 23 8 13 33 18 25 4 9 35 17 23 21 36 31 21 7 34 37 5 11 17 3 7 35 39 22 36 5 23 12 2 15 30 32 3 23 32 28 30 14 3 30 3 29 18 40 30 24 18 1 7 29 16 26 33 3 30 23 21 18 31 18 13 2 19 14 18 7 1 19 36 33 11 17 11 32 23 22 31 39 28 35 28 40 18 8 27 8 40 40 36 32 19 27 39 36 22 39 16 25 28 15 24 40 4 25 6 12 22 9 13 3 18 6 40 36 40 20 39 2 5 1 16 33 28 1 30 19 11 20 11 36 8 20 7 12 4 13 32 10 33 12 24 23 20 17 14 38 35 25 17 32 35 16 17 10 33 18 31 36 29 20 15 34 12 33 24 40 30 5 29 39 36 21 35 34 5 24 21 12 12 28 27 7 31 19 15 10 24 26 29 7 3 22 24 38 17 7 19 12 12 28 2 19 23 1 16 15 16 15 6 27 2 38 19 5 27 39 16 34 5 1 13 30 36 26 15 10 34 29 16 24 32 18 17 33 22 36 30 34 17 36 19 25 23 13 23 4 8 31 29 12 8 5 2 9 11 23 39 37 7 8 18 16 13 18 35 18 34 8 21 26 32 15 24 11 9 25 8 37 3 30 25 40 33 18 5 8 20 38 29 37 14 29 5 33 17 36 18 7 12 31 36 4 22 4 27 5 1 34 37 18 30 19 35 32 9 26 34 1 30 28 25 14 33 37 18 27 22 17 15 26 8 23 3 6 32 5 26 23 18 33 32 16 8 4 33 34 26 38 11 33 28 5 18 12 15 2 10 14 4 31 32 4 35 34 7 26 17 38 18 25 13 26 37 17 26 33 1 26 3 4 22 9 2 22 1 32 18 13 20 14 29 23 2 25 25 31 40 31 30 38 14 19 35 9 24 2 22 6 25 30 5 36 16 33 27 38 17 3 28 17 4 28 8 26 39 39 2 39 36 30 15 10 21 10 34 15 7 12 2 15 15 29 31 36 30 11 22 30 28 39 35 24 17 13 18 14 11 23 30 30 32 13 18 25 39 37 4 38 10 15 33 21 25 5 2 8 36 39 27 23 35 37 34 32 9 31 6 14 38 34 13 21 16 26 40 15 17 40 15 23 21 33 3 25 20 37 30 34 29 24 24 8 10 14 1 10 2 30 33 37 13 23 13 19 26 40 28 19 17 14 35 15 16 4 1 25 16 39 28 4 14 30 28 27 29 1 29 11 17 19 22 24 32 4 30 35 18 23 26 13 36 35 29 10 7 5 20 18 23 19 7 35 40 25 5 37 8 16 34 31 17 4 38 38 40 6 1 39 22 34 9 8 36 21 33 36 28 3 24 40 17 7 12 2 1 9 6 21 16 28 27 19 19 39 34 31 22 24 34 38 13 2 40 22 4 9 5 11 5 11 8 27 32 31 39 9 6 31 18 36 35 14 18 19 39 32 23 6 37 8 18 34 5 37 28 32 20 28 12 36 6 16 36 38 4 12 7 33 31 8 32 16 7 16 31 10 15 40 40 21 35 11 13 5 27 13 14 20 23 20 18 12 3 32 14 12 12 37 30 9 23 28 6 16 19 28 29 40 33 29 37 18 16 30 4 40 28 35 21 16 18 27 26 15 29 12 36 35 26 38 40 28 20 1 5 16 22 32 37 4 30 18 32 24 21 1 39 20 1 22 13 28 27 38 2 5 10 1 40 22 22 33 26 16 24 36 34 9 34 16 20 16 30 3 6 22 5 28 11 20 12 40 35 12 35 34 40 1 26 24 25 40 24 5 4 2 5 6 29 3 6 24 14 23 34 7 37 14 3 31 18 30 21 8 20 27 13 13 20 19 10 36 4 26 21 33 12 33 18 20 17 28 34 17 39 10 15 39 31 2 1 13 17 13 13 9 17 27 8 23 17 37 32 10 38 16 19 13 27 14 15 9 36 37 6 32 1 40 2 26 9 2 15 12 33 23 30 40 10 26 15 2 17 35 35 36 22 5 29 40 17 8 2 35 39 25 30 14 7 34 34 18 3 11 6 14 18 33 37 24 6 12 10 13 14 20 14 26 16 29 9 9 10 31 33 9 1 34 33 40 32 14 27 39 14 11 12 9 10 23 30 32 36 38 30 34 20 25 17 27 21 23 22 3 28 2 35 20 32 27 32 17 23 6 26 32 22 35 5 37 13 27 25 9 34 14 27 3 40 40 12 25 14 10 11 38 12 3 18 2 29 21 33 29 22 28 2 24 19 16 14 31 2 25 10 40 36 11 13 17 16 27 6 27 30 27 40 32 38 4 14 37 8 36 22 15 13 4 35 25 16 33 37 5 3 30 14 1 36 28 5 29 31 34 22 28 19 8 23 23 24 28 6 3 17 40 36 32 24 11 31 4 18 6 22 4 36 40 23 5 17 1 22 31 4 15 30 1 14 11 4 6 33 9 10 26 37 21 9 24 35 40 12 3 21 20 27 38 18 35 11 11 21 6 32 39 6 12 35 11 24 12 38 10 1 24 14 39 18 34 17 26 20 16 38 3 1 6 30 30 14 29 5 14 9 20 33 26 31 29 34 6 14 9 35 3 21 38 38 17 5 34 21 35 37 8 21 11 14 22 24 18 39 1 3 37 10 11 3 3 20 19 26 28 32 33 27 13 39 25 20 25 15 17 27 21 21 34 16 10 29 29 38 9 19 27 3 38 24 17 25 18 19 37 30 33 33 38 28 20 36 13 3 23 18 27 29 30 4 21 9 34 13 17 10 37 15 37 29 17 4 12 28 38 40 35 34 13 36 22 12 5 39 19 40 20 4 36 7 16 3 18 37 16 15 16 7 27 40 34 32 17 12 14 17 15 33 37 4 10 20 12 7 17 8 35 26 39 13 3 9 17 14 15 21 4 16 11 38 15 30 15 17 17 28 10 1 34 15 37 40 17 21 32 16 19 26 10 35 38 32 25 18 11 32 31 27 14 21 35 14 39 6 18 24 27 38 21 34 17 20 33 18 35 38 23 6 20 10 7 14 31 19 24 25 16 35 2 32 27 36 9 12 39 21 38 14 23 21 9 32 13 30 28 22 12 22 19 32 24 5 12 37 7 1 10 33 26 23 34 9 24 20 27 1 1 3 18 1 26 20 32 17 8 38 3 28 33 23 33 26 14 34 23 37 28 29 37 36 18 25 23 7 35 40 32 33 30 30 4 16 16 38 37 34 35 7 12 8 39 40 32 6 9 2 15 38 34 2 23 26 28 16 39 39 36 28 16 15 26 27 16 3 24 13 1 8 37 4 36 4 7 6 20 15 27 23 20 29 29 19 3 26 5 5 29 26 37 24 13 33 28 23 33 7 25 13 9 24 39 15 10 5 10 31 4 4 15 5 19 39 7 21 36 38 32 21 24 8 36 34 33 12 9 38 23 20 3 33 32 15 38 4 18 29 29 16 13 7 35 28 30 40 39 19 28 38 25 26 5 1 30 13 24 10 17 14 27 26 1 3 13 12 28 18 17 31 21 24 37 12 5 39 18 13 4 9 32 3 10 38 40 30 8 9 28 26 32 14 35 36 10 31 12 28 19 20 7 27 14 20 36 28 1 7 32 27 20 34 14 39 33 37 34 34 17 33 10 14 12 27 40 14 34 18 36 6 25 32 9 25 27 8 18 22 14 4 31 39 2 40 14 28 15 4 28 6 11 28 32 25 35 14 10 25 25 31 3 36 12 14 23 17 7 8 1 20 4 2 26 16 19 16 13 31 7 34 17 25 27 26 40 4 16 16 28 12 34 33 26 36 14 29 6 40 40 28 32 21 33 2 22 1 26 40 3 10 19 11 16 38 1 34 10 31 27 9 13 3 34 11 33 40 3 35 8 16 27 13 23 9 40 31 16 13 12 38 34 1 9 33 8 31 25 26 32 16 27 24 9 5 21 14 20 40 27 32 4 28 13 38 8 22 36 21 3 3 14 17 5 10 18 38 33 19 16 15 9 16 22 3 14 31 13 22 14 6 33 19 32 14 4 10 12 32 38 13 6 16 16 39 9 14 11 22 12 20 26 8 30 12 20 14 20 26 36 12 33 37 19 2 26 25 31 38 40 15 25 23 16 20 18 26 8 27 16 18 40 25 34 3 39 4 17 13 40 35 34 25 33 33 2 17 24 8 14 13 5 29 37 24 25 6 29 15 25 19 1 30 38 19 8 11 39 36 38 30 6 16 8 32 18 25 30 29 25 37 35 34 22 11 24 18 29 1 28 20 28 10 3 40 26 35 22 11 23 29 25 18 14 12 4 32 3 7 40 29 13 28 27 24 5 12 25 18 18 1 21 35 2 16 14 2 14 35 9 20 25 28 25 5 40 17 8 25 21 29 18 21 24 38 14 7 6 30 39 33 13 15 4 23 31 35 27 25 6 7 20 20 6 23 9 34 30 24 7 28 8 37 25 25 1 8 23 40 22 7 10 27 28 37 40 4 13 25 36 6 35 10 33 20 37 27 30 40 19 34 16 5 10 20 35 38 38 19 39 38 18 15 32 29 39 17 14 38 23 9 2 17 35 32 32 37 38 28 37 21 15 23 17 23 32 28 32 2 19 16 10 35 26 33 12 6 22 26 10 35 6 38 6 22 29 7 33 26 23 12 31 28 2 21 22 32 8 2 15 22 9 34 10 19 1 31 31 40 3 30 32 22 21 40 13 3 2 30 21 40 37 15 26 16 16 19 35 13 36 19 40 6 33 28 10 8 32 11 9 23 34 15 23 24 29 26 1 3 18 13 12 36 29 32 32 11 39 12 20 23 30 27 27 34 32 33 2 34 28 31 1 22 40 34 4 15 6 34 6 14 32 13 24 6 8 26 12 6 6 9 28 12 20 36 23 8 3 8 34 6 35 5 25 20 36 33 7 15 11 4 40 37 13 22 40 25 12 30 6 39 4 20 21 12 5 30 25 37 12 13 37 35 19 40 11 21 26 23 23 30 23 27 36 26 6 2 14 37 6 8 19 26 37 32 25 22 1 40 15 11 12 27 36 13 1 3 19 24 13 39 36 17 12 21 24 36 19 6 26 27 27 34 21 22 26 40 8 29 20 19 1 31 15 6 2 3 12 33 2 16 37 16 5 10 29 8 34 28 5 31 5 28 7 3 40 36 14 7 40 27 22 35 31 10 25 2 30 25 23 8 24 1 8 29 18 22 31 25 10 20 24 5 14 39 15 23 15 37 27 11 13 36 24 40 24 7 18 33 27 25 11 31 31 2 20 20 30 6 7 31 12 25 36 8 21 10 25 39 17 4 20 26 5 31 22 38 19 35 3 1 27 23 38 1 36 17 30 2 22 5 14 18 2 7 38 8 33 12 22 24 32 37 14 30 6 40 3 7 22 29 10 18 9 31 23 8 6 8 30 31 3 16 32 39 20 24 29 35 6 20 22 40 29 5 21 14 19 17 35 39 10 27 25 9 10 25 5 17 31 13 3 29 3 8 19 37 32 23 31 14 33 26 1 5 25 33 25 15 40 37 38 25 24 3 9 37 16 11 35 25 8 30 40 17 12 3 27 1 30 6 13 17 3 18 2 26 5 6 9 37 12 29 15 19 39 18 16 15 25 25 10 3 5 18 7 20 4 3 38 40 8 27 19 7 26 20 12 30 15 35 25 18 29 32 29 13 13 34 31 18 24 1 18 40 20 16 13 22 6 3 25 14 28 33 2 1 11 39 9 16 18 9 13 28 14 34 21 34 7 34 25 30 29 13 8 4 39 34 9 12 25 28 31 11 18 1 19 4 28 2 32 29 21 30 18 2 24 24 19 27 24 8 27 16 40 12 40 2 6 30 32 38 16 36 1 39 25 32 37 9 34 12 6 19 13 26 2 34 2 26 12 5 26 17 37 17 22 2 30 34 38 10 15 36 24 2 9 2 12 37 14 39 30 24 16 31 17 24 4 17 31 5 19 5 39 39 28 39 30 37 20 20 39 39 33 6 12 27 4 18 18 36 18 3 24 25 27 22 20 25 8 36 5 40 8 29 38 31 36 25 27 23 24 22 31 28 5 27 39 34 10 5 10 40 33 2 33 3 16 14 35 36 19 24 10 9 17 6 34 11 37 6 36 37 39 16 32 4 34 15 28 3 32 21 21 21 16 11 27 22 19 38 17 10 10 24 8 10 29 38 22 36 31 5 10 30 11 12 14 39 11 26 7 15 19 17 32 37 11 4 26 1 30 15 16 20 8 3 18 24 12 7 38 24 1 34 29 9 29 31 6 36 6 3 7 16 15 11 20 36 15 6 15 35 23 2 17 30 6 32 11 13 3 14 3 6 6 9 31 3 28 20 31 30 38 23 11 32 9 18 10 24 18 18 12 38 33 38 3 23 8 9 17 32 8 16 36 13 24 6 11 24 36 12 6 21 39 18 15 36 22 31 37 21 24 38 3 28 16 4 9 10 1 27 10 11 20 16 1 5 28 34 39 37 22 10 26 22 20 9 9 14 28 19 1 13 37 38 4 33 20 17 19 20 34 13 35 16 13 16 40 38 6 32 7 11 39 2 34 8 25 33 27 19 33 15 7 33 27 6 30 5 26 31 11 2 15 18 39 2 7 22 32 28 31 20 36 5 2 1 40 39 26 13 24 7 8 1 1 10 11 19 17 29 26 22 34 14 21 25 29 10 8 31 5 35 18 24 18 13 31 5 17 26 38 5 35 36 39 11 35 39 38 36 12 30 29 31 26 23 10 24 32 8 37 26 8 40 11 12 24 29 26 34 26 25 40 5 4 35 7 7 1 25 4 37 33 28 39 26 2 29 21 7 29 26 27 39 15 10 36 12 14 18 24 15 24 19 17 25 10 36 30 18 34 1 4 20 4 6 4 28 11 11 5 25 26 6 34 14 9 2 7 21 7 21 28 39 11 9 10 9 6 27 12 34 8 14 7 39 9 23 2 16 22 29 13 1 13 5 24 8 33 12 19 24 6 33 21 10 16 4 1 19 16 24 6 35 26 17 34 36 17 31 9 30 14 34 30 23 33 13 20 28 34 27 36 21 26 8 12 11 14 33 12 25 7 18 38 29 19 28 20 1 33 25 2 37 9 8 13 16 10 5 40 9 27 2 11 16 36 2 24 11 20 25 18 13 1 10 34 6 38 31 22 22 28 35 5 16 23 11 24 32 31 31 27 20 10 37 23 17 35 37 21 32 22 8 35 7 6 8 25 18 2 11 9 33 40 5 6 1 13 22 28 31 3 36 38 40 16 39 24 8 37 11 4 39 16 11 35 20 38 27 19 1 27 4 26 4 3 8 28 32 15 22 14 20 6 19 12 37 35 33 12 11 28 12 13 20 40 5 3 22 27 8 8 38 32 7 4 39 21 20 37 2 21 6 20 20 5 4 27 17 15 17 35 40 10 19 28 10 8 1 26 29 30 4 24 15 28 18 38 19 17 20 14 15 15 25 39 16 27 8 23 22 2 25 26 13 26 14 39 38 32 9 24 39 39 7 30 2 34 40 3 40 14 13 38 11 36 22 11 12 5 21 32 11 4 24 37 3 12 37 39 16 29 28 2 36 4 4 37 5 25 1 36 9 29 29 9 7 15 19 21 32 33 40 10 34 37 7 19 15 7 26 1 32 2 25 17 38 27 8 23 16 1 34 38 27 1 10 26 20 4 11 20 11 23 19 36 13 33 16 16 18 10 15 13 33 38 32 28 24 1 37 23 25 7 21 32 17 23 16 7 25 36 35 22 24 6 24 35 16 1 18 14 27 17 12 22 34 27 3 33 6 6 6 15 22 8 23 7 4 34 32 6 37 7 34 5 36 8 24 2 8 24 20 16 28 11 10 23 25 7 18 32 11 33 11 18 27 36 27 2 35 40 39 11 39 21 9 9 11 10 17 40 37 37 36 23 28 30 35 4 18 4 19 18 34 19 3 38 9 36 2 18 4 39 1 1 3 11 24 19 23 20 30 25 12 34 2 13 24 16 30 18 13 39 29 12 3 23 8 17 37 35 13 15 7 22 15 28 1 23 28 35 28 24 34 21 33 31 27 30 30 4 27 33 26 17 2 39 38 36 17 12 8 36 14 39 35 39 12 15 21 15 35 3 13 34 20 26 13 33 17 8 26 32 31 28 12 12 19 2 35 6 31 16 4 38 16 11 36 34 5 36 2 34 28 20 40 1 3 6 40 14 26 39 28 14 26 38 15 38 3 38 39 39 1 23 31 20 3 6 25 15 7 10 8 39 2 18 13 26 6 8 30 1 12 31 12 12 40 28 8 28 19 40 8 38 7 20 12 3 38 35 29 36 29 32 30 34 15 24 40 30 32 31 39 13 37 27 37 4 25 22 4 37 24 34 37 25 37 33 35 18 21 9 1 12 40 6 22 36 14 14 23 31 11 11 24 37 18 36 28 16 14 31 15 34 40 24 13 22 24 2 2 26 17 16 31 16 2 40 12 12 9 5 1 16 33 28 9 3 3 36 15 35 12 5 7 32 15 29 16 26 15 11 4 14 12 10 11 7 20 33 23 15 31 8 24 20 26 23 27 18 15 16 32 4 11 19 7 38 23 34 3 7 31 39 36 10 13 31 25 37 14 27 22 37 6 33 13 20 19 15 7 6 20 27 37 32 10 6 27 2 20 26 18 29 6 33 17 32 3 37 13 37 16 24 17 8 36 1 32 32 1 15 21 3 5 18 2 25 39 40 13 17 2 13 18 4 14 25 9 14 18 11 24 20 28 12 15 21 6 10 21 1 11 40 1 25 13 12 35 29 20 7 16 8 31 30 23 1 15 5 9 19 12 33 30 3 10 14 13 28 29 40 35 11 24 9 13 19 25 2 1 17 16 22 2 21 17 28 10 1 9 8 12 13 26 17 5 27 12 24 33 33 15 15 17 12 2 24 22 14 22 4 31 10 3 26 7 40 33 14 18 18 11 27 15 21 2 5 18 14 16 26 27 9 38 2 15 25 1 22 32 14 40 28 36 33 28 30 27 2 10 12 16 15 25 2 27 28 18 1 25 23 19 19 40 15 5 9 5 24 39 10 3 32 30 5 15 5 15 17 26 25 8 13 4 38 19 11 11 22 36 4 6 11 17 18 11 14 22 32 40 29 24 10 15 34 38 12 23 33 20 19 17 8 29 5 15 17 6 37 21 3 29 19 2 13 35 17 18 21 23 10 13 36 33 38 29 36 21 9 9 24 11 37 27 40 14 35 10 14 7 1 6 37 3 12 9 20 27 31 6 7 7 33 15 7 25 40 34 35 27 17 13 38 3 12 15 40 24 4 2 37 9 28 15 3 26 12 28 9 38 17 38 38 14 8 11 25 30 33 7 28 11 17 8 14 33 1 17 28 39 9 3 6 20 18 3 26 3 17 7 7 17 15 28 21 26 24 40 39 15 1 33 21 15 28 32 39 26 35 2 16 17 40 12 28 39 28 4 5 8 3 21 19 17 21 36 39 25 16 16 15 37 7 16 12 33 22 33 10 31 12 29 24 17 36 25 34 3 11 22 9 26 16 21 4 29 12 12 21 3 26 8 9 22 7 2 35 2 23 23 24 28 5 5 22 6 18 13 25 28 12 15 35 11 2 40 14 6 23 26 31 36 17 4 9 2 37 2 2 1 19 17 33 33 6 17 9 35 16 4 40 22 1 36 22 27 30 30 40 29 15 12 17 4 40 35 19 16 12 27 9 6 15 30 11 33 24 35 35 26 11 4 1 22 16 13 6 34 34 20 19 36 34 24 38 16 37 17 29 15 19 17 22 30 24 10 20 5 22 25 1 21 24 20 21 7 26 1 29 26 13 19 29 12 1 39 3 12 22 17 16 10 35 37 29 16 40 35 34 9 38 36 13 21 32 12 23 10 18 35 15 16 20 19 6 39 4 38 25 38 10 32 3 30 26 29 40 2 14 39 38 13 39 34 40 2 35 12 25 11 5 27 20 33 39 13 27 39 33 30 29 29 32 33 34 16 5 39 31 14 6 27 8 39 19 15 6 21 38 7 7 1 14 5 1 8 22 37 35 39 10 11 17 8 11 36 10 11 31 5 36 21 33 23 6 26 32 2 2 33 14 35 22 11 23 13 11 27 14 20 37 19 38 14 31 39 34 8 2 2 24 12 19 40 33 27 30 1 6 23 28 16 35 2 5 16 22 4 24 36 37 20 34 35 19 3 39 38 38 40 18 24 33 8 20 13 9 22 4 10 1 36 31 35 6 22 11 36 17 36 13 28 36 21 5 27 27 19 21 30 36 5 12 36 36 30 2 8 36 22 20 8 32 39 39 11 30 22 40 31 16 11 37 32 36 20 3 9 21 37 5 37 25 4 29 4 6 28 40 24 27 8 19 33 28 30 38 15 11 26 29 11 10 4 10 20 9 13 28 24 28 7 11 24 36 38 39 8 30 22 9 34 5 11 40 29 12 35 29 19 37 29 12 21 24 35 6 38 25 15 32 8 30 14 17 9 27 22 38 38 8 33 18 31 30 13 32 22 32 12 26 11 23 35 4 18 32 38 11 8 10 18 2 39 1 4 7 2 12 4 20 25 31 37 17 25 2 23 9 5 38 36 38 27 23 3 3 32 29 33 9 37 26 33 36 4 30 36 34 2 1 37 40 6 22 29 38 21 13 20 30 21 12 36 35 12 39 20 37 37 6 4 28 15 22 35 23 29 20 27 39 31 10 12 13 22 35 8 3 40 30 31 15 2 16 34 32 19 1 18 1 40 32 9 21 37 26 9 16 33 35 40 9 17 5 12 29 38 33 13 24 30 32 33 35 38 6 30 37 33 10 34 16 10 8 36 34 15 23 40 25 8 30 19 1 7 37 21 4 20 33 9 34 33 2 26 18 23 1 1 30 26 22 30 19 30 37 13 2 37 1 24 27 20 18 27 35 35 33 4 23 22 12 12 16 20 15 26 21 1 32 9 20 9 30 32 10 17 3 10 19 23 28 8 24 31 23 4 8 4 16 21 27 2 4 4 24 20 3 11 16 22 24 37 22 33 9 8 5 35 28 37 9 19 7 27 16 9 40 2 34 1 32 6 24 24 25 27 36 27 40 38 3 1 29 6 28 17 31 14 35 28 13 12 24 11 9 34 5 15 37 22 39 3 24 10 36 1 21 27 23 26 38 7 39 12 6 32 11 17 30 40 30 4 21 11 19 21 28 16 26 30 7 19 9 26 13 5 33 34 29 39 12 12 33 38 7 24 24 31 40 23 28 36 27 32 40 17 5 39 27 6 31 1 6 17 14 27 33 30 17 12 40 6 16 40 3 11 10 29 29 11 6 29 12 12 6 20 40 8 33 14 22 26 35 8 26 15 35 19 2 35 10 12 4 15 10 23 33 4 29 16 5 39 40 6 33 24 40 22 23 31 29 7 5 26 37 26 30 32 12 19 28 14 15 17 26 40 15 17 7 23 36 28 33 8 24 17 25 31 27 27 2 23 7 29 40 4 2 8 25 30 1 20 27 6 10 1 12 27 11 34 38 15 3 17 33 10 12 30 2 21 25 28 17 36 19 22 39 40 34 20 35 21 29 38 39 40 19 12 7 36 18 4 22 24 17 11 31 19 10 25 10 24 5 12 13 6 18 35 33 32 12 26 40 27 21 30 31 19 32 5 37 20 1 21 28 17 11 32 39 25 10 32 25 33 5 14 7 7 11 33 21 14 31 28 33 9 14 38 33 40 37 13 40 16 4 26 28 32 6 37 3 24 31 11 24 15 30 40 29 27 36 30 28 1 8 25 3 30 24 25 20 19 35 18 17 19 22 29 32 10 24 15 29 29 18 38 19 3 29 22 39 35 19 34 17 28 29 2 38 11 27 22 20 15 21 2 25 35 29 12 17 35 6 2 37 5 34 40 31 20 29 26 15 6 34 17 1 25 24 13 32 16 31 15 34 2 5 29 35 9 23 6 2 39 21 11 28 26 33 4 38 29 20 18 6 29 35 36 8 40 14 18 16 18 36 5 31 12 7 21 4 12 12 13 4 8 25 14 2 8 37 11 16 2 20 30 38 25 8 20 11 16 35 29 31 40 6 20 5 30 20 34 40 25 15 23 31 33 33 36 33 22 5 1 26 26 3 14 13 18 11 5 12 38 36 31 24 31 2 32 40 36 17 22 34 13 36 3 18 26 3 25 21 33 26 24 10 28 10 39 17 6 37 1 32 25 16 32 26 33 27 2 3 24 32 22 1 35 8 12 12 9 6 24 21 40 27 18 13 18 32 11 22 34 12 20 2 35 27 15 23 12 40 16 26 20 6 7 27 20 19 35 12 33 30 33 28 38 26 28 13 32 27 11 24 5 20 38 21 34 10 15 38 9 21 25 27 21 12 23 21 16 39 4 32 3 37 24 24 11 38 35 34 14 14 6 15 10 29 10 24 20 21 4 25 26 32 15 40 29 19 7 12 37 35 34 29 37 20 5 16 2 5 4 2 2 20 19 16 12 13 23 30 12 31 8 30 27 30 18 15 2 37 9 2 37 28 16 38 7 27 3 27 17 9 16 10 24 2 6 19 29 15 28 25 10 33 7 35 10 23 16 10 1 40 28 22 35 22 36 18 19 6 18 32 15 11 38 39 29 6 38 33 29 21 7 19 32 13 24 24 31 9 39 15 27 18 24 37 35 33 22 30 32 24 5 34 6 2 15 28 17 38 19 18 4 20 28 1 21 6 1 10 8 40 40 5 2 35 30 13 37 4 12 27 17 11 10 2 10 14 34 7 35 28 35 10 34 8 31 40 7 10 12 29 2 20 23 30 15 38 14 26 4 11 6 8 26 25 40 38 11 9 14 5 23 30 10 33 18 32 10 16 26 18 9 16 5 22 39 38 26 33 6 16 20 1 11 26 10 17 25 7 25 18 19 22 4 35 13 10 33 38 18 20 26 36 38 26 2 31 24 2 23 27 22 33 21 3 30 27 33 40 40 20 30 14 30 20 1 37 15 30 33 14 8 35 31 38 5 16 7 3 38 13 33 14 5 6 23 34 26 24 3 30 21 18 29 15 35 16 1 28 25 26 14 8 19 28 39 35 13 39 7 19 38 13 37 28 9 37 3 37 37 13 27 8 17 27 9 30 37 34 14 29 15 1 31 27 19 7 1 12 29 20 16 22 4 18 40 18 25 28 36 11 19 1 36 5 5 24 24 18 8 37 17 20 2 20 24 11 38 12 25 38 36 30 8 18 11 39 19 9 18 26 34 3 2 39 22 9 23 5 6 37 20 5 34 35 18 9 21 17 2 19 15 5 27 15 4 36 35 4 29 11 6 4 15 28 26 3 36 40 19 31 39 35 28 3 7 34 8 32 4 20 29 32 26 23 2 39 26 28 13 9 10 23 3 13 4 32 10 24 4 16 17 22 36 12 34 26 12 36 4 4 1 32 21 24 31 1 2 39 24 35 39 34 36 4 25 21 26 27 20 9 37 19 22 22 2 24 38 24 5 19 29 14 1 16 32 28 21 24 3 3 26 19 36 4 18 28 14 3 22 11 33 36 27 4 9 17 38 5 14 24 18 17 28 40 33 33 26 14 31 4 15 36 40 12 5 36 25 2 2 2 28 9 14 21 27 3 35 14 1 26 33 25 31 14 18 6 37 11 9 12 15 7 39 1 33 37 36 17 26 18 34 18 35 37 39 11 35 5 27 27 13 27 12 19 18 5 39 24 14 31 19 39 24 38 3 18 23 27 8 6 1 12 37 7 34 26 40 7 23 33 29 16 17 30 21 6 1 38 11 3 24 23 21 20 34 26 38 39 16 21 37 6 29 32 12 26 13 23 13 29 40 8 13 9 15 13 39 39 20 36 15 8 1 20 26 30 7 23 23 9 32 11 10 20 12 1 3 12 36 10 23 17 31 5 1 37 4 8 4 11 3 14 1 31 9 18 36 9 36 22 35 33 6 7 39 2 1 20 11 33 24 12 33 10 15 28 2 25 34 35 39 32 21 40 16 30 14 32 21 39 30 6 30 40 28 29 6 9 14 28 18 5 24 8 27 13 1 8 20 10 7 31 38 6 17 15 36 12 1 20 6 25 26 36 39 6 30 28 33 17 2 9 20 15 30 22 13 2 27 30 26 12 25 24 26 20 11 38 8 23 14 38 37 28 21 2 28 14 21 21 13 1 22 27 15 40 3 15 9 18 25 20 14 40 23 24 9 33 21 23 25 16 22 17 15 7 30 37 1 28 10 3 6 30 25 29 19 30 1 32 37 1 36 15 31 16 38 22 4 34 25 9 35 9 24 38 19 40 40 28 10 27 23 10 23 14 21 2 28 24 39 5 19 16 25 23 12 17 12 22 23 40 27 29 35 2 11 22 2 16 37 29 13 26 10 9 38 27 17 25 30 6 27 11 2 14 24 2 3 31 13 35 13 32 31 27 37 39 16 8 23 28 30 35 23 14 36 24 15 18 25 3 40 22 25 31 39 25 7 7 23 21 4 17 16 31 21 31 39 16 29 17 31 23 29 23 38 36 5 25 6 13 17 40 18 26 15 32 39 13 21 20 13 21 10 14 14 24 4 17 33 14 18 16 15 27 32 10 8 23 2 26 1 22 9 35 13 21 38 25 21 23 17 1 1 7 35 18 27 25 13 8 15 12 8 10 36 29 40 15 20 18 24 7 36 36 30 5 22 34 18 30 40 16 33 39 11 28 6 26 8 1 31 3 39 10 26 20 33 10 4 3 19 4 20 23 17 36 33 20 4 32 5 23 12 22 33 37 2 12 10 25 32 6 6 31 28 27 25 19 7 4 18 10 24 6 37 29 32 1 34 36 14 4 23 33 35 30 24 32 39 11 30 18 40 9 15 20 40 21 17 1 3 27 4 10 18 6 18 20 8 1 18 8 15 2 10 23 31 6 38 13 11 20 3 30 4 37 21 16 8 23 17 14 37 23 31 24 11 30 17 29 25 7 25 27 28 33 17 12 38 20 32 19 32 22 35 32 6 26 28 38 2 35 34 17 13 40 23 36 40 3 4 14 29 25 19 33 32 3 31 39 4 16 4 36 7 33 16 18 2 28 29 21 32 23 14 22 36 36 38 35 7 27 23 1 5 34 14 33 33 9 21 5 31 6 15 29 12 38 2 12 24 27 4 13 34 22 18 4 6 17 6 11 17 13 26 36 38 28 6 1 1 25 7 18 1 10 2 26 33 19 30 2 8 33 37 22 21 32 26 38 9 35 40 14 28 17 23 38 22 2 6 6 12 9 10 14 32 7 7 25 17 34 14 25 34 40 1 34 39 13 7 4 9 4 32 36 36 16 23 13 40 25 30 27 33 20 17 28 32 14 8 30 26 25 26 17 6 29 4 29 17 20 27 31 20 26 18 7 15 30 29 5 6 7 10 20 31 23 32 7 6 31 27 22 5 39 12 27 5 39 12 35 34 4 3 3 17 33 18 34 24 38 22 13 40 34 18 13 22 28 15 16 9 3 24 37 37 8 10 5 31 8 17 30 38 23 20 5 7 12 29 31 11 40 2 30 5 11 7 10 24 14 25 31 15 1 22 27 35 23 3 33 26 33 34 7 6 37 27 24 28 29 16 26 12 16 1 11 31 9 1 10 9 7 13 1 28 23 7 34 16 31 38 2 1 8 1 6 4 4 26 40 11 34 1 24 12 11 31 21 31 39 12 4 1 5 18 39 33 20 33 37 19 30 34 39 17 12 4 19 6 40 27 9 25 10 7 17 12 39 18 25 3 29 25 40 13 23 35 36 26 11 29 35 31 6 5 3 35 27 28 29 38 9 25 24 31 5 31 4 30 15 10 37 11 18 16 4 11 15 40 2 26 12 6 16 14 36 13 22 14 18 24 29 38 10 37 31 36 8 8 20 33 21 5 37 23 22 27 7 34 27 31 13 13 37 36 22 36 35 26 10 5 31 13 7 35 11 2 21 40 8 28 32 35 27 19 19 28 21 1 27 33 1 11 24 20 25 1 14 4 13 15 2 13 5 28 6 29 17 11 29 9 27 10 36 5 29 27 22 31 18 37 33 17 11 20 33 17 32 21 8 20 2 13 32 25 38 35 22 24 6 28 34 3 39 1 24 12 7 26 20 36 16 37 16 29 20 20 9 9 18 35 24 15 21 19 29 2 14 3 35 25 33 11 8 18 2 11 13 35 3 34 25 6 9 8 39 25 4 27 36 19 40 29 10 16 32 12 26 28 5 16 16 10 29 28 21 38 31 28 21 37 6 13 9 14 28 25 18 9 34 17 22 24 18 20 18 20 25 14 39 4 9 31 3 20 14 10 4 29 28 33 15 31 17 22 6 29 +100000 +1 23 6 25 25 25 38 22 5 13 12 35 25 38 32 28 1 6 17 34 33 20 7 21 40 20 38 28 25 14 29 31 40 7 13 23 32 2 34 5 22 12 23 20 13 35 26 15 7 27 11 23 14 4 30 7 35 12 37 10 8 37 29 29 20 10 15 19 40 21 5 23 40 24 14 19 27 31 17 1 21 12 40 9 23 33 25 30 2 33 32 39 39 8 3 27 35 33 26 33 19 27 5 14 25 12 19 26 18 28 20 5 4 14 13 22 10 31 32 33 15 14 26 4 39 26 15 11 28 39 3 14 35 23 5 25 17 10 23 16 20 27 5 17 33 38 31 33 38 21 3 27 32 40 12 34 20 15 30 34 40 25 34 5 13 20 34 25 31 38 30 19 8 4 11 31 15 12 31 33 9 30 4 34 12 6 17 20 39 9 11 3 1 8 17 23 37 26 1 13 2 17 1 30 9 13 36 28 28 30 32 9 10 1 25 2 34 39 8 1 5 20 8 39 3 40 19 30 34 7 34 14 15 22 37 22 23 4 19 14 24 29 23 37 12 32 29 17 7 19 15 40 22 31 7 21 34 1 13 27 2 38 40 9 30 11 22 27 10 39 26 1 1 15 15 15 29 19 11 33 12 15 34 5 8 19 20 26 10 28 25 38 10 33 7 39 39 27 14 30 14 18 36 40 9 1 30 40 8 12 2 40 16 21 12 26 10 17 2 11 13 23 39 15 34 2 17 37 13 35 14 1 19 10 1 29 22 36 29 3 37 38 31 39 21 29 1 18 3 12 37 14 1 25 17 17 12 37 38 3 29 29 31 17 32 35 22 32 37 14 30 10 8 20 8 40 34 30 11 23 36 38 11 38 16 31 34 35 20 24 9 2 30 35 7 35 6 19 18 31 17 23 13 19 27 6 30 29 29 13 26 11 16 40 8 7 35 22 23 29 12 13 26 21 13 15 6 18 4 11 19 13 9 25 39 37 7 20 16 2 30 9 40 29 22 22 10 17 11 33 39 38 19 38 28 22 28 24 1 26 27 25 3 25 9 33 29 29 28 16 38 23 14 12 26 23 40 11 38 2 28 31 15 7 18 18 32 32 36 28 18 18 38 7 9 3 21 4 36 23 11 40 38 14 40 2 23 28 20 12 9 34 35 13 27 2 8 35 36 25 30 25 22 33 29 35 35 2 2 21 3 36 7 36 36 3 18 1 36 12 15 17 19 21 39 19 29 8 35 6 15 12 14 40 23 30 31 15 17 2 1 4 3 32 20 31 23 13 36 4 25 38 36 2 36 36 24 2 12 15 16 17 21 39 3 28 4 23 18 9 8 26 6 32 19 1 3 23 12 25 10 22 26 10 29 4 11 12 13 1 20 34 6 38 1 40 8 20 26 9 6 8 9 16 13 17 27 8 6 40 30 22 26 17 17 39 35 34 11 10 16 31 32 19 35 18 11 2 26 21 6 32 18 26 12 36 28 34 1 40 12 32 23 27 34 29 20 31 15 21 25 5 3 32 33 33 38 21 40 28 19 2 13 14 38 30 5 10 27 40 16 35 19 31 6 22 23 29 31 31 30 31 7 15 40 21 24 33 27 5 35 3 3 15 36 39 36 15 26 32 19 15 10 17 40 31 40 38 3 35 28 39 14 16 11 3 30 16 11 1 21 25 23 27 3 28 16 13 40 17 30 40 16 26 2 36 16 2 21 11 24 6 40 24 27 35 39 8 30 39 23 27 13 33 36 19 28 29 22 1 37 8 19 14 37 33 39 9 30 7 23 28 34 21 38 16 8 21 32 28 21 33 39 10 9 9 10 14 28 14 26 4 6 13 12 6 11 32 9 3 32 22 32 29 24 30 6 3 13 14 40 18 40 17 38 31 25 39 2 26 38 2 10 9 15 28 14 33 37 24 5 10 40 36 7 5 28 36 30 31 13 18 8 27 33 23 13 37 39 19 18 33 23 3 35 34 10 14 27 5 4 24 7 23 10 34 5 39 26 38 10 29 32 10 4 20 32 16 35 28 6 27 31 36 10 16 5 40 18 29 3 27 20 39 26 19 32 20 30 19 28 32 28 35 18 9 2 32 31 20 28 37 11 34 16 30 36 3 35 37 13 8 37 16 34 26 9 5 13 37 38 12 5 3 11 26 12 29 27 9 9 35 6 15 20 24 13 11 7 32 3 35 16 27 37 35 15 37 37 8 17 17 20 27 12 36 36 9 15 11 2 38 9 26 18 21 8 21 6 6 40 7 32 13 24 33 24 17 16 20 8 37 25 22 2 15 1 10 17 37 36 15 4 6 9 1 23 12 38 18 1 30 17 19 26 18 11 37 37 30 4 1 27 12 20 34 21 26 12 39 17 36 11 15 11 39 30 23 8 38 28 38 18 2 22 10 13 25 9 1 23 32 32 40 26 38 29 31 28 19 39 2 29 40 24 31 30 1 32 27 13 39 32 33 20 13 36 5 14 28 13 24 18 18 18 13 24 9 21 19 22 31 3 5 19 31 2 39 28 15 31 29 14 15 38 22 23 18 22 38 9 35 1 19 11 13 6 39 34 4 14 12 10 12 13 28 18 17 38 38 7 12 24 7 14 7 4 7 6 40 12 40 9 6 37 33 2 31 38 32 25 22 5 13 12 4 11 28 35 37 23 21 13 10 38 26 28 18 1 19 32 13 1 7 27 10 31 36 21 22 14 20 15 24 34 23 14 11 19 21 35 27 12 32 19 4 34 8 39 11 19 26 11 12 17 18 16 28 25 5 22 25 7 12 19 18 35 24 32 26 23 2 36 24 17 7 1 21 8 16 19 19 30 11 12 3 29 22 24 4 1 22 24 4 19 36 15 40 15 17 31 19 15 16 21 6 10 16 13 26 29 2 24 27 21 13 13 25 6 15 1 39 19 24 37 13 34 30 38 18 34 2 2 2 21 4 32 16 18 6 3 32 17 12 20 3 26 40 40 26 32 19 31 20 3 26 30 4 20 12 26 21 4 18 13 14 11 2 9 12 38 2 22 8 24 8 35 7 33 16 8 23 27 22 32 14 18 22 6 31 30 24 19 31 3 8 11 15 2 34 13 17 25 15 38 23 35 22 8 28 11 10 35 32 33 9 19 11 34 21 36 37 12 15 16 7 15 12 8 7 3 15 33 6 5 30 20 12 9 37 37 17 28 4 37 20 21 3 38 26 26 36 33 40 28 30 1 33 33 29 21 19 9 20 34 38 7 19 17 28 6 19 5 30 36 28 20 16 4 29 10 5 30 30 36 38 20 28 4 15 19 32 11 22 26 23 26 6 8 29 23 11 23 15 25 34 34 26 30 34 40 26 23 14 35 19 1 15 13 40 40 27 22 29 1 7 27 8 34 6 8 24 13 1 17 24 11 34 24 24 5 19 33 2 24 3 29 18 29 27 11 16 16 22 6 38 37 36 4 39 22 6 38 22 28 17 30 35 15 35 23 1 31 8 37 28 20 9 10 22 38 18 20 39 28 27 2 21 38 24 37 40 33 10 13 30 38 23 9 31 27 7 10 40 39 30 19 35 12 40 24 26 3 39 18 34 37 2 26 18 25 37 14 14 22 25 19 30 27 23 18 37 4 22 2 6 34 34 35 39 30 10 27 24 25 40 19 30 12 37 15 14 10 35 17 10 35 6 15 23 18 32 13 25 12 7 40 16 8 40 32 29 26 13 5 10 23 19 37 39 17 15 12 30 28 27 40 34 36 2 13 37 33 11 20 24 30 13 6 16 18 25 37 1 35 30 19 21 3 2 37 22 31 11 23 28 3 15 3 17 7 28 2 23 31 21 38 7 35 32 21 24 38 32 30 13 24 3 32 16 22 21 25 26 11 12 29 33 30 10 23 6 33 37 39 4 29 6 6 16 3 31 34 6 6 21 34 20 10 36 7 39 21 25 7 25 25 3 36 30 9 35 2 14 15 5 28 7 33 9 38 36 9 17 9 6 37 35 25 35 28 35 26 7 12 36 15 39 27 26 9 32 13 40 24 1 18 32 4 31 7 40 7 11 32 32 26 33 7 22 6 38 36 6 15 8 7 11 22 7 40 3 26 7 17 5 23 25 28 31 38 3 7 4 1 36 11 14 1 16 14 38 27 9 26 3 26 39 21 4 39 39 31 16 5 5 26 15 35 39 1 3 24 25 32 36 9 10 5 10 23 33 17 34 17 6 21 16 25 6 18 36 26 15 10 1 19 27 3 26 40 14 3 15 40 9 31 10 24 15 19 20 4 21 6 18 16 23 8 17 29 11 6 10 12 36 31 1 34 36 33 37 38 24 21 38 26 24 16 23 16 31 15 16 3 7 19 16 6 27 31 4 10 21 30 39 10 14 27 2 20 26 23 5 23 23 37 15 13 21 18 25 8 35 26 19 8 6 8 33 34 5 33 11 27 21 39 36 1 32 8 37 4 30 8 20 20 34 22 30 15 39 6 2 11 4 11 28 21 3 23 24 20 12 40 40 33 39 33 22 14 36 3 30 10 30 12 31 3 40 36 6 33 12 27 16 11 17 2 2 9 19 29 28 15 31 9 20 5 39 8 27 30 36 2 28 37 19 34 28 5 29 11 32 28 34 9 12 14 7 27 12 10 17 14 27 13 4 29 2 6 3 23 23 26 10 13 18 10 13 26 37 25 27 30 11 32 26 39 18 10 19 14 11 39 8 37 26 38 13 34 21 30 25 9 13 18 35 27 23 14 4 10 19 37 14 3 7 25 16 38 16 19 22 31 18 39 38 24 21 30 36 7 28 33 22 7 36 37 24 18 1 28 8 30 13 38 30 35 10 40 18 30 20 35 6 23 33 16 21 9 8 26 1 23 2 28 24 16 20 15 35 40 16 18 14 22 24 37 14 36 33 6 21 25 29 15 29 11 31 20 1 11 21 18 26 26 39 32 36 33 2 5 38 22 33 12 38 34 7 33 19 21 26 32 31 35 19 36 35 19 7 11 38 13 23 5 25 21 39 39 33 32 33 33 33 34 20 11 32 16 12 15 8 25 20 9 7 26 22 35 21 31 3 8 36 8 9 21 29 16 20 20 23 12 2 7 22 40 16 1 35 27 35 30 33 3 34 28 26 31 40 17 39 8 9 4 19 40 26 23 14 13 27 37 35 17 39 26 37 6 9 21 2 29 19 3 10 36 7 5 38 30 33 35 7 28 30 39 21 35 35 32 14 31 2 22 15 18 33 29 19 38 31 36 16 25 34 9 27 36 35 12 12 31 18 34 27 29 24 3 4 3 13 31 21 20 39 11 35 16 3 16 3 12 29 18 27 31 10 10 5 39 3 27 19 21 21 20 35 32 13 23 28 8 15 10 14 28 12 38 40 26 23 27 15 38 22 14 24 19 11 28 20 14 18 19 31 5 28 40 5 21 20 12 17 39 19 34 24 34 13 11 30 39 32 8 24 27 4 23 5 34 9 33 24 39 39 33 18 12 25 5 25 32 6 25 14 35 22 10 24 9 5 39 30 33 29 13 28 31 25 38 37 28 36 23 17 8 31 3 24 15 6 23 32 32 37 24 19 32 22 2 33 31 36 30 38 4 15 9 13 4 35 6 27 31 21 24 4 9 21 28 11 12 21 32 22 25 23 20 35 9 10 31 8 26 6 27 9 35 9 18 10 1 28 26 3 12 16 21 23 24 7 29 35 33 19 14 34 31 13 5 9 6 38 33 11 33 5 3 39 22 8 21 4 1 15 40 2 22 15 12 13 5 31 4 21 23 35 38 8 15 15 34 29 5 30 2 6 1 13 36 33 7 11 10 2 18 35 7 14 35 9 15 2 13 7 7 17 32 1 34 7 6 31 12 19 1 30 7 2 38 28 19 34 39 27 3 39 36 11 18 18 40 35 38 23 28 14 32 2 20 7 8 15 11 22 31 19 4 3 21 22 28 39 36 14 33 36 5 16 15 23 34 15 39 2 5 35 7 20 23 18 2 13 21 31 27 27 21 10 22 29 28 13 2 28 27 40 30 33 23 12 38 15 10 23 8 5 18 16 35 39 21 33 39 23 29 23 6 6 31 30 25 27 20 21 31 34 34 24 20 25 18 37 9 2 14 12 18 2 39 39 18 20 10 9 23 20 19 28 18 23 37 34 27 17 33 5 19 27 29 24 15 14 31 31 22 17 23 18 23 4 28 35 38 14 38 37 11 21 33 13 28 6 37 22 39 5 5 34 40 3 30 37 35 19 1 6 30 31 5 30 23 27 26 29 11 31 10 20 30 9 11 21 15 23 26 18 8 21 38 8 32 13 37 18 17 25 5 9 7 15 37 34 28 1 27 25 37 5 17 28 16 19 35 24 7 22 31 29 27 30 20 26 17 37 2 1 29 22 20 18 29 8 6 31 26 28 20 1 26 30 11 30 34 38 21 36 15 33 16 39 10 6 27 26 17 18 27 25 37 24 26 39 40 18 39 8 34 22 19 30 30 2 29 37 9 14 36 14 21 13 2 22 19 34 37 8 28 37 34 20 5 9 39 13 7 28 9 28 31 23 18 8 38 40 21 10 8 7 39 3 28 26 21 35 12 20 22 20 12 4 2 38 39 29 37 29 36 37 34 37 31 9 15 37 13 19 24 20 28 15 37 33 31 1 11 9 34 6 24 23 25 14 3 34 22 17 19 24 20 7 12 19 40 37 5 13 39 4 10 2 18 11 19 24 3 27 7 17 12 16 5 31 29 2 13 14 23 36 33 12 37 39 10 20 13 29 38 8 6 1 26 23 40 17 9 37 28 36 6 8 40 26 11 40 38 37 20 13 24 19 11 29 36 14 30 14 39 24 11 13 7 8 15 33 5 34 18 12 7 19 27 8 15 13 36 34 8 7 39 38 34 23 5 5 8 17 32 19 6 9 16 39 14 6 5 28 12 36 25 26 20 31 26 19 2 38 9 27 28 34 13 12 27 20 31 3 39 6 37 36 10 36 27 32 37 24 1 19 30 8 7 10 26 24 14 16 21 23 19 10 25 10 29 28 18 35 27 22 32 17 9 4 20 30 15 33 18 33 18 6 35 26 34 1 39 2 33 8 38 4 40 1 5 21 1 26 28 39 31 15 21 7 38 19 38 34 24 8 8 36 32 23 30 32 20 30 19 36 23 4 38 24 1 13 18 13 37 4 24 12 15 29 32 9 6 1 28 6 26 7 33 5 32 40 33 36 9 17 24 14 28 27 33 25 25 11 26 35 2 15 16 23 11 28 27 11 36 34 12 21 10 34 38 28 18 15 21 10 19 1 8 14 35 12 25 3 16 9 5 33 26 13 5 33 18 17 10 21 14 36 24 5 10 13 6 19 21 3 31 26 15 20 39 2 27 40 35 27 16 32 23 27 9 35 24 15 8 15 21 24 33 18 9 14 4 25 14 36 30 25 37 14 8 38 2 23 39 24 15 39 34 17 26 23 19 23 13 37 34 28 19 21 23 31 12 22 18 29 11 35 2 39 31 5 14 5 8 14 8 5 5 2 14 13 40 29 6 35 30 31 23 24 25 12 28 8 4 13 23 1 14 12 31 37 1 8 9 32 38 32 8 25 32 27 4 29 38 38 1 32 38 17 15 27 39 36 20 6 28 31 12 2 8 9 34 25 37 24 38 36 22 13 26 3 10 30 14 31 32 21 27 26 24 35 2 6 10 36 37 36 22 26 7 9 27 17 31 2 12 38 30 2 4 27 18 37 26 16 33 32 3 10 25 3 25 26 15 38 8 1 33 20 40 30 15 32 25 3 33 2 39 13 4 16 15 23 28 4 16 3 3 26 10 15 3 27 22 7 21 26 26 23 30 16 28 9 30 23 10 5 4 5 23 21 3 5 22 25 23 4 16 36 17 18 14 23 27 16 39 31 14 16 33 18 21 13 38 30 6 9 18 22 13 14 23 10 4 1 3 3 38 25 23 14 36 1 33 3 14 4 13 6 9 40 39 40 36 15 11 16 12 24 13 32 35 36 4 1 32 8 27 37 17 30 13 17 3 10 1 28 29 21 10 6 16 38 31 37 2 23 7 24 40 35 5 13 4 15 15 12 12 15 6 5 10 34 14 21 11 27 40 33 11 14 16 30 23 35 2 1 18 37 33 20 36 27 5 20 22 15 32 33 21 34 25 37 38 21 33 3 30 29 10 2 23 20 1 15 1 20 19 31 12 9 20 13 24 32 39 26 39 29 27 3 34 4 18 22 14 9 5 1 16 5 13 3 4 34 20 29 22 17 37 29 7 27 6 11 7 4 38 17 25 5 24 1 30 39 12 39 15 15 40 32 3 15 26 27 28 29 14 20 1 16 7 36 16 18 29 37 15 36 13 34 6 22 5 12 24 33 28 19 26 20 3 32 36 20 29 38 18 9 11 1 37 14 19 7 26 25 38 13 12 10 26 3 38 16 39 35 5 39 21 38 8 2 13 9 20 4 35 14 21 3 11 22 17 17 26 1 7 26 25 14 38 38 2 7 22 17 12 3 24 36 3 1 15 40 2 17 4 27 19 28 11 5 38 23 34 15 17 30 5 27 7 3 20 16 17 33 16 19 16 5 3 20 3 23 7 15 40 1 11 6 37 26 16 4 15 27 31 27 37 5 9 10 32 16 33 7 14 8 29 20 5 1 3 4 31 27 22 22 15 28 28 23 34 1 33 12 38 30 1 7 38 31 18 22 16 17 26 15 1 2 26 10 29 3 34 36 20 4 27 8 16 1 36 18 32 7 35 8 1 1 12 19 13 10 32 32 1 6 10 12 5 9 32 34 2 25 14 31 19 8 22 29 13 7 36 22 22 6 12 20 25 27 8 26 3 30 32 12 20 33 33 16 39 16 34 36 17 32 9 17 1 11 27 9 33 35 18 23 18 10 34 37 15 33 34 18 8 37 15 10 26 30 11 32 3 30 12 27 13 30 12 15 30 27 30 25 6 24 5 13 6 36 1 40 24 11 36 22 19 12 7 18 19 33 18 1 33 11 40 11 14 38 9 6 6 17 19 16 23 7 26 38 1 37 33 7 13 11 14 21 14 6 11 39 33 26 5 11 2 2 39 30 24 14 35 20 23 5 2 28 16 10 1 23 11 37 26 19 20 7 31 38 19 19 21 27 22 30 19 30 40 11 37 8 33 6 8 24 6 27 1 9 31 36 32 6 25 20 2 18 35 11 36 11 3 11 32 4 39 37 33 10 14 12 16 15 19 27 35 18 32 39 18 5 11 3 4 1 19 28 33 13 18 33 31 3 24 14 11 3 1 24 5 34 24 19 32 25 33 10 1 26 32 33 15 39 33 6 40 18 9 32 5 18 16 19 14 30 27 29 22 29 12 24 11 28 11 12 30 32 31 28 21 9 8 28 1 25 36 25 35 7 5 4 26 6 3 35 19 22 25 38 30 17 14 9 18 11 2 30 12 31 6 22 20 38 17 20 8 19 34 21 16 39 3 38 40 7 15 16 23 6 39 4 4 17 23 3 22 4 39 4 20 37 6 29 32 1 25 38 18 8 34 13 34 2 39 29 16 23 17 31 8 30 10 26 7 38 32 22 12 27 32 26 15 14 35 4 4 40 30 37 23 21 1 9 14 32 31 11 35 13 23 6 23 1 23 22 39 32 37 17 25 33 19 5 6 1 12 14 16 22 23 38 12 22 22 37 4 8 11 39 15 23 24 7 36 22 21 6 23 18 20 31 38 36 8 29 40 22 29 5 2 1 16 1 11 12 30 12 23 14 4 12 38 21 35 35 29 40 18 6 27 9 28 11 3 22 17 4 1 4 21 1 30 27 38 10 24 4 4 39 32 26 24 15 32 10 18 27 5 9 17 17 18 33 16 40 40 6 30 33 29 27 13 19 40 31 29 16 2 32 36 38 8 37 27 28 1 16 40 1 26 7 35 24 37 35 2 19 28 38 16 10 17 38 7 39 3 27 30 6 31 34 34 19 11 7 20 31 27 15 10 5 6 16 8 3 34 40 32 34 12 23 39 37 24 31 32 13 24 4 12 10 21 9 19 32 39 23 25 25 36 8 11 23 37 28 22 7 24 14 13 33 37 2 12 26 17 38 32 37 8 36 21 7 32 9 20 12 18 1 33 14 13 32 15 32 38 14 9 21 23 32 29 25 8 8 23 3 25 32 36 24 38 12 17 3 17 27 15 40 13 8 23 26 11 38 38 31 23 18 7 4 13 25 24 6 29 1 34 4 16 40 5 38 15 33 35 12 1 28 35 4 9 22 35 11 28 10 30 26 1 12 27 30 27 28 20 17 3 34 29 14 36 26 37 6 1 39 7 34 39 25 10 3 17 16 5 29 5 1 27 18 27 2 32 8 19 18 22 38 17 19 32 7 38 26 23 29 1 20 29 7 17 24 31 11 34 34 37 2 20 1 11 20 38 12 8 20 1 18 3 3 39 20 32 5 6 36 18 15 24 18 10 13 39 20 29 26 23 24 24 31 2 1 9 23 36 20 11 6 20 19 2 39 29 26 4 33 34 29 39 25 18 22 38 1 37 16 3 9 30 16 33 32 19 6 29 36 1 40 32 5 27 10 32 6 37 34 7 5 7 19 20 18 4 40 28 1 6 15 32 9 30 13 20 4 37 36 26 29 24 8 14 8 38 2 33 15 29 28 29 31 25 34 31 37 5 24 3 18 6 1 16 5 34 36 22 26 24 24 18 28 37 15 37 16 16 29 8 16 18 9 3 17 11 40 40 4 5 16 17 26 25 39 26 10 26 27 27 23 23 1 34 18 29 28 16 24 37 20 16 1 37 4 1 38 19 11 3 38 27 12 26 8 16 24 36 30 27 14 25 23 21 14 39 37 25 27 10 39 30 35 32 27 11 8 24 27 36 40 9 39 39 37 14 10 35 26 6 8 2 17 35 35 31 10 35 35 27 12 22 6 23 10 20 28 16 6 23 6 1 33 19 40 5 27 10 28 26 20 36 9 20 21 8 34 28 40 30 19 33 27 29 12 19 40 27 20 12 22 18 1 5 31 32 10 40 28 32 40 17 25 40 18 38 24 6 18 16 39 5 4 17 8 27 22 12 23 21 26 34 1 33 40 33 1 8 23 40 2 29 24 12 35 35 14 1 24 29 25 17 21 38 15 25 15 22 37 10 5 15 6 8 19 29 40 29 2 36 22 13 4 7 25 38 28 23 37 21 37 10 29 35 2 33 32 22 39 40 17 18 23 17 26 24 8 25 32 27 7 33 20 6 39 38 8 17 28 28 7 33 22 31 6 6 23 25 27 20 23 12 1 2 33 14 18 34 37 1 37 13 17 5 35 24 12 4 23 14 22 36 17 20 37 17 4 21 22 40 4 29 17 26 25 38 20 5 35 37 8 11 10 1 22 34 21 26 17 38 21 10 36 28 9 29 24 27 1 30 27 25 23 34 18 21 37 1 16 38 6 20 38 16 34 1 16 35 8 16 25 16 37 35 13 9 8 38 1 34 8 21 11 1 11 20 23 1 6 25 23 30 31 40 39 12 24 15 12 27 39 24 8 20 8 34 5 17 2 36 33 1 19 16 26 28 9 33 8 20 26 12 12 18 23 23 8 26 21 5 13 16 19 29 32 4 34 23 28 37 16 15 4 16 33 28 34 22 4 35 2 10 12 7 29 22 36 14 27 2 9 12 9 1 39 16 3 4 12 6 2 10 9 31 40 20 30 40 18 16 7 28 24 40 28 9 25 35 6 35 27 11 7 28 8 9 13 15 4 15 20 15 22 19 29 4 15 29 21 25 22 38 6 25 1 20 16 40 1 37 2 30 19 38 17 15 40 25 29 14 32 2 19 34 9 17 40 20 24 19 11 11 3 39 19 28 24 26 37 6 40 2 15 37 11 16 30 4 12 13 9 1 29 12 11 6 16 9 36 35 7 28 34 7 38 1 38 9 37 15 17 21 39 34 34 39 11 36 12 5 2 14 31 18 3 7 31 23 27 2 22 10 11 5 25 31 31 26 14 23 18 5 39 5 34 3 19 6 3 37 32 20 38 28 30 29 16 36 36 18 9 18 5 33 15 18 17 12 40 22 2 9 34 33 19 16 35 10 32 9 12 9 3 15 30 5 39 3 18 34 10 27 10 21 21 40 11 33 3 22 20 16 16 19 26 27 37 13 9 13 26 6 11 24 14 27 16 11 38 8 4 4 38 34 28 7 37 10 34 2 39 17 3 5 33 12 34 2 39 38 33 22 21 32 28 21 10 38 33 40 8 12 3 11 28 1 17 3 23 31 26 6 5 33 33 19 31 17 5 16 22 36 18 17 25 13 38 32 26 10 40 13 6 12 11 8 18 16 36 16 7 11 6 34 37 35 24 15 1 16 26 32 38 12 10 20 25 6 3 16 1 13 10 12 39 39 9 35 11 33 3 5 12 6 17 28 27 38 29 27 15 10 24 9 1 5 26 10 4 28 10 24 3 24 17 1 2 23 40 8 28 10 2 21 12 16 28 39 37 35 28 3 40 6 9 19 14 32 11 31 11 3 30 36 14 20 5 14 3 3 17 37 1 2 32 13 40 21 37 11 26 19 28 16 21 9 25 29 10 12 34 6 30 37 5 28 13 26 11 1 23 16 13 4 40 29 32 11 40 11 31 39 10 25 10 14 12 29 33 23 12 16 10 23 28 21 29 6 26 21 17 15 17 34 9 15 12 13 20 29 32 13 9 32 36 20 35 1 28 6 11 5 28 20 40 15 40 3 19 38 1 6 15 27 1 6 39 7 13 9 29 8 3 22 19 19 38 27 31 2 30 7 32 12 37 26 23 16 23 30 2 2 15 35 15 17 1 5 7 23 26 35 16 15 38 23 15 40 17 34 33 20 40 38 8 25 4 37 16 9 26 22 14 38 16 29 29 12 32 21 3 14 36 6 20 40 13 12 32 10 12 1 13 24 35 21 3 8 28 19 1 23 14 11 36 6 12 35 40 11 26 31 29 22 37 38 38 10 11 35 16 24 27 23 21 15 10 5 11 24 26 4 13 16 33 2 32 30 17 35 2 7 31 24 32 39 6 19 40 32 23 14 32 16 5 7 8 24 8 39 40 3 24 26 17 11 1 25 40 14 16 15 26 5 10 27 23 18 23 23 23 14 18 22 23 34 9 17 26 35 15 9 2 4 38 9 36 38 21 12 40 24 19 17 1 20 27 39 14 38 16 16 19 18 30 32 2 9 36 19 25 5 14 36 24 33 23 30 24 33 39 12 14 4 10 19 26 2 17 32 31 17 6 13 9 28 3 31 19 36 5 1 2 12 9 32 26 20 10 1 12 22 38 12 30 16 18 28 29 11 27 18 17 11 18 14 12 36 39 16 15 29 28 9 25 37 28 21 14 34 8 11 27 21 27 16 35 14 7 3 5 10 11 6 21 33 26 20 40 27 1 11 21 6 10 12 4 13 23 36 33 7 16 27 22 20 17 27 2 36 30 3 1 16 30 13 33 30 36 26 3 21 23 2 38 17 6 34 5 21 1 40 18 40 36 21 11 10 22 27 36 11 28 36 37 13 30 3 18 5 6 30 5 16 4 20 9 13 20 7 25 3 30 22 2 3 15 38 40 8 25 35 21 23 23 16 3 19 26 21 14 20 36 7 34 35 2 8 29 5 35 36 39 34 27 32 37 8 16 10 18 8 5 28 16 7 28 38 19 29 34 5 14 10 2 38 14 26 35 28 22 37 35 32 29 21 39 16 21 9 19 40 30 5 40 23 39 11 13 34 36 37 20 14 26 28 7 27 34 28 25 7 35 38 32 6 30 20 7 9 26 27 25 34 3 11 24 23 19 40 15 2 15 34 2 29 18 3 23 14 28 6 36 2 35 35 12 18 10 40 28 6 24 9 33 40 10 27 31 2 11 29 21 38 34 12 1 40 25 6 14 18 20 16 8 27 22 32 4 5 11 1 3 12 6 8 20 30 9 31 19 9 17 6 3 8 37 17 12 29 7 39 32 14 33 29 36 22 20 13 9 21 34 5 1 13 34 28 33 24 11 8 24 18 25 18 37 21 38 33 39 8 35 36 40 26 29 4 37 33 15 35 19 25 34 13 26 6 30 38 38 5 1 1 5 3 30 17 13 3 6 26 2 24 38 40 13 10 24 38 3 11 10 6 6 32 20 4 36 40 10 35 14 24 36 26 3 32 14 16 23 22 5 5 36 5 22 40 9 23 6 27 26 12 39 1 11 8 15 19 33 21 29 26 31 7 18 31 30 30 20 34 20 17 27 24 17 7 37 2 25 40 12 1 9 26 28 7 24 1 22 10 18 19 28 3 5 1 5 17 13 33 28 22 9 3 3 40 25 18 27 5 22 22 22 26 21 17 36 9 38 37 25 33 24 40 19 40 5 10 15 18 22 8 32 24 9 34 5 20 17 38 14 25 5 20 9 38 6 26 36 15 9 38 9 19 10 39 28 33 40 28 11 19 7 12 24 1 31 6 1 17 13 15 20 33 40 15 17 21 27 13 22 14 17 4 25 17 30 13 29 37 13 38 8 20 1 14 29 35 20 5 36 11 26 16 27 20 26 26 4 18 2 38 16 39 7 23 8 35 11 22 11 2 23 37 10 35 30 11 28 29 13 12 23 10 31 32 14 5 24 29 13 28 34 13 8 14 28 38 10 28 21 39 14 8 27 22 35 33 5 21 14 8 9 37 24 29 1 11 15 18 17 13 22 18 30 27 19 10 40 25 35 4 39 35 33 38 40 30 2 33 37 15 31 10 26 20 27 29 17 24 32 20 28 22 19 29 31 23 21 20 22 16 23 23 30 12 2 19 21 22 38 15 12 23 14 39 26 30 30 1 36 12 1 8 34 1 6 1 20 40 37 11 16 10 6 10 11 26 10 3 5 15 32 27 25 35 28 35 3 25 9 22 20 4 29 40 9 15 20 37 13 9 12 16 33 12 4 19 1 13 39 23 14 6 8 1 29 8 24 23 34 14 26 1 3 20 40 17 11 40 2 11 7 31 34 29 35 33 40 22 20 26 7 24 12 1 40 1 35 1 29 17 17 3 12 4 28 30 7 14 5 31 34 37 3 9 35 2 17 35 32 18 21 10 31 30 24 26 24 4 7 27 35 40 15 14 36 10 1 35 16 39 1 22 18 40 24 1 33 39 12 33 14 13 6 9 18 3 31 4 18 33 3 6 27 6 38 12 13 2 14 23 24 2 21 23 20 39 34 18 19 12 3 26 39 18 28 8 24 16 31 18 35 15 11 12 32 23 10 2 24 21 25 30 1 9 39 39 16 21 12 40 6 18 40 8 31 1 27 15 21 10 4 5 7 14 3 1 36 37 15 26 5 29 24 28 27 1 10 1 13 23 9 5 36 7 17 29 34 16 22 11 40 23 26 6 7 19 3 40 30 25 12 36 2 26 35 36 31 3 7 28 36 1 23 32 28 23 31 9 12 36 36 14 19 16 30 9 27 25 11 11 40 29 19 29 19 26 26 36 20 18 36 29 15 31 24 12 16 9 7 14 7 5 2 32 3 28 40 25 14 21 27 13 7 10 7 30 14 19 2 22 29 30 6 36 12 33 19 34 23 27 12 8 12 40 15 18 28 7 29 31 33 27 22 18 27 33 1 31 33 27 40 39 33 18 33 28 33 40 28 5 10 24 13 40 32 24 40 2 21 32 11 38 21 12 9 22 30 40 8 29 29 33 33 25 33 12 21 37 15 39 23 32 35 19 7 29 35 40 38 11 35 6 14 26 4 10 24 29 40 34 21 2 3 40 6 29 26 7 8 35 24 9 35 25 37 22 21 39 4 18 30 15 22 24 17 37 11 2 31 5 9 1 9 19 12 6 27 30 23 31 5 7 3 10 39 16 7 37 39 39 1 37 7 34 40 34 28 32 37 35 4 27 38 28 28 14 2 27 26 33 14 36 7 26 8 31 34 11 16 40 32 9 12 2 22 17 27 18 25 23 4 21 22 8 24 1 23 26 9 26 36 5 13 27 39 1 1 2 29 13 6 28 20 12 33 31 22 38 20 22 27 15 10 18 3 18 33 13 8 21 28 39 30 9 35 7 32 21 6 37 8 3 14 6 30 35 5 31 34 4 1 8 31 20 40 26 11 16 2 9 18 24 8 28 40 22 27 1 21 7 19 28 26 4 30 38 20 7 6 23 28 19 12 18 19 40 30 4 1 40 1 18 15 2 17 31 39 14 38 32 21 24 24 35 38 35 10 12 25 39 17 21 21 23 3 12 6 38 23 37 14 32 29 1 38 9 37 34 10 12 18 17 13 26 35 36 2 27 31 26 15 36 26 21 20 2 21 15 8 29 23 39 10 28 12 4 37 8 37 30 28 1 24 19 13 32 29 5 14 8 31 37 29 19 9 40 19 22 29 8 29 15 30 26 27 32 34 20 25 29 29 4 16 28 8 17 1 35 12 32 9 29 20 23 36 39 2 15 15 4 1 5 22 18 8 33 1 34 22 27 6 28 27 33 32 15 7 13 25 12 32 7 10 6 35 35 14 30 33 13 22 2 13 37 18 25 26 1 7 33 27 33 22 9 40 9 15 34 33 1 11 20 14 37 20 26 15 21 28 14 31 17 1 39 37 27 9 24 35 32 25 30 2 30 21 31 7 31 33 25 25 23 21 22 1 31 2 16 38 25 33 10 26 7 27 18 7 22 5 4 19 8 13 4 23 25 15 34 8 29 18 1 18 12 38 32 22 15 40 39 14 8 34 39 34 19 34 15 24 4 7 4 17 40 29 31 19 37 23 25 3 29 3 8 38 11 33 23 35 33 27 4 10 9 40 9 22 3 19 14 3 15 21 3 5 36 9 30 21 31 17 11 7 32 15 13 11 9 15 37 12 8 15 33 15 33 20 37 18 1 17 18 19 31 17 40 1 12 14 20 6 34 5 31 31 6 19 26 38 10 5 34 2 5 10 21 12 29 15 1 22 38 22 5 1 30 29 33 25 17 21 20 10 35 17 22 40 40 12 39 21 24 28 36 13 26 24 9 32 28 13 4 22 11 5 18 11 5 31 10 33 28 22 2 23 13 24 3 2 20 22 19 8 27 26 33 8 34 27 27 25 12 2 39 33 10 23 30 28 36 6 16 24 6 24 15 6 19 28 9 9 40 35 28 39 27 25 39 40 30 22 1 29 23 9 21 20 6 26 29 20 31 33 26 24 22 28 19 30 15 40 15 25 19 10 22 30 28 11 18 11 26 10 11 14 10 35 20 14 12 1 6 39 1 4 28 36 19 19 17 34 13 24 15 32 31 8 10 6 38 9 39 22 30 31 22 18 27 11 38 3 14 12 16 27 40 21 3 24 35 3 18 18 3 3 12 21 20 21 23 11 20 1 7 29 4 5 10 14 35 11 37 16 33 1 9 10 20 14 22 14 17 9 34 26 8 33 12 7 10 28 38 34 21 7 27 10 16 4 32 35 24 31 17 36 23 35 26 35 9 1 15 19 5 21 27 25 11 3 15 4 30 10 12 30 28 4 30 9 5 17 29 26 37 32 38 38 14 25 11 2 9 7 20 7 13 32 29 10 24 15 35 13 24 23 1 38 33 38 9 18 33 39 10 40 15 36 10 7 20 25 35 40 3 6 26 40 40 6 2 9 4 17 17 31 36 8 25 25 39 23 30 40 16 40 18 22 36 2 34 36 12 3 37 39 26 27 32 15 15 1 38 35 1 5 40 10 17 38 16 5 24 13 6 3 21 40 6 22 3 16 39 14 24 21 6 21 5 23 12 20 31 3 10 31 14 34 8 40 22 36 5 32 28 24 8 27 4 9 32 40 16 5 36 15 31 1 28 31 16 39 38 17 17 20 11 31 31 3 17 19 6 17 11 14 17 26 31 4 4 28 14 26 25 26 5 8 28 13 4 35 14 16 6 7 29 28 17 8 17 16 35 11 12 2 1 11 21 24 40 1 38 21 11 11 36 40 34 23 36 24 16 6 28 40 39 19 4 23 19 33 30 14 34 22 38 3 38 9 29 3 17 37 32 17 11 40 31 27 15 38 38 20 6 38 1 22 7 39 37 15 4 28 13 2 39 16 3 16 22 35 12 29 17 25 24 10 14 13 3 5 30 7 15 7 10 30 18 32 4 19 3 32 14 39 13 5 6 11 5 2 19 13 4 25 1 6 30 25 22 33 25 25 32 28 12 20 25 30 29 11 11 27 37 16 33 20 16 1 31 38 2 3 1 28 26 3 32 10 21 14 34 6 6 7 29 18 19 35 25 14 10 38 12 8 26 36 19 2 23 3 18 29 25 32 27 25 20 11 10 8 26 21 18 12 29 6 1 17 23 25 22 2 6 33 26 29 38 36 35 5 17 22 8 19 3 17 23 11 26 28 24 2 15 5 6 22 6 36 32 37 9 18 17 27 19 30 19 25 40 19 40 8 15 25 16 12 13 20 2 4 13 26 2 40 29 2 15 5 26 28 36 31 14 15 24 26 35 26 7 11 14 35 28 32 33 36 29 14 19 17 19 9 10 8 2 15 17 26 27 1 32 29 12 4 13 30 18 8 1 32 32 13 21 10 22 1 11 17 29 9 10 36 14 25 40 12 27 1 31 32 5 15 24 24 28 21 28 21 23 16 21 3 34 19 24 34 12 34 9 14 22 33 25 13 16 34 27 30 12 24 16 27 21 11 34 20 29 32 27 37 9 20 33 33 27 38 32 10 16 40 28 29 29 11 12 33 28 23 36 28 35 8 21 24 4 38 11 26 1 40 14 15 39 37 36 23 38 19 14 30 3 15 25 35 30 4 40 14 25 20 36 23 31 6 14 22 20 5 15 1 40 22 37 13 34 12 18 31 5 34 27 23 36 40 31 22 6 7 33 26 3 23 18 16 37 20 38 20 2 37 2 31 1 20 27 27 29 23 3 19 22 16 2 7 37 15 37 9 4 11 5 9 37 27 8 24 40 29 18 6 27 24 32 14 6 4 35 14 36 11 39 20 16 22 29 24 20 20 5 11 14 9 30 24 11 1 34 5 23 6 27 27 37 23 25 10 9 15 15 40 40 8 2 39 3 14 7 36 30 33 19 26 37 11 23 37 20 35 25 35 13 19 37 37 5 26 13 11 37 2 29 4 18 5 1 19 36 24 14 26 4 26 18 2 24 11 24 14 6 11 15 38 2 20 10 21 9 29 7 8 12 32 40 8 33 21 28 30 31 20 33 18 28 20 25 25 7 8 4 30 37 21 36 28 21 17 38 3 29 17 32 32 3 3 18 38 1 3 16 18 33 23 22 8 2 6 31 21 18 31 7 4 36 36 29 11 24 4 17 9 26 36 2 39 22 16 34 11 2 21 5 11 6 28 37 14 30 37 12 12 37 7 35 12 36 5 8 21 13 14 33 14 19 39 15 4 32 33 29 11 31 16 9 37 30 35 8 23 5 35 28 31 23 36 21 39 12 18 13 39 36 21 6 37 7 11 21 28 20 25 39 14 32 39 30 3 26 34 8 6 40 6 5 31 22 9 38 6 33 4 11 20 32 20 29 12 7 25 32 5 34 14 3 40 11 2 34 20 7 28 30 16 20 37 39 7 17 40 16 26 1 6 14 38 20 10 15 4 19 19 5 14 32 15 28 23 30 25 10 24 28 18 15 40 35 12 37 11 27 20 33 31 3 17 16 33 7 16 35 29 7 23 29 13 5 3 24 32 22 40 40 10 38 12 1 35 39 40 31 17 6 10 30 10 21 39 2 31 32 13 17 22 3 15 9 13 19 1 34 36 11 34 2 14 35 5 13 17 36 5 16 5 20 13 4 18 38 10 21 11 37 22 3 7 40 20 6 15 2 12 15 18 22 30 25 5 9 7 39 8 6 5 37 37 7 29 13 21 19 12 8 2 39 22 21 24 15 24 13 16 17 33 18 37 28 2 28 11 1 24 7 6 34 22 39 28 22 36 3 2 35 27 3 20 18 25 29 38 36 34 8 15 20 34 26 4 34 11 23 20 34 18 13 25 35 19 32 20 2 1 12 20 21 23 16 12 12 3 23 5 15 29 39 19 31 39 17 35 1 21 34 4 38 9 32 38 1 15 34 2 36 34 31 7 38 14 2 38 15 15 9 22 38 26 3 3 10 32 38 17 21 34 4 11 2 1 37 3 40 33 37 6 25 22 40 8 27 1 20 16 32 3 7 36 29 17 16 24 19 13 3 1 32 1 26 7 35 25 4 19 9 38 14 35 1 19 10 28 12 8 4 26 40 28 23 1 23 35 34 19 13 35 3 19 15 18 11 24 31 32 26 38 22 17 7 40 36 39 34 17 36 27 15 8 13 5 15 14 17 12 2 22 26 6 30 26 29 22 3 18 16 23 7 11 34 21 4 19 5 26 16 21 34 12 6 26 23 4 14 21 12 12 4 8 6 19 10 15 30 2 20 21 13 37 19 7 15 28 29 18 26 1 13 31 36 21 30 17 39 6 4 11 2 14 23 16 27 36 8 37 15 34 7 28 26 2 13 25 15 37 5 3 10 10 6 34 2 40 20 13 22 28 39 4 21 2 24 23 35 33 1 3 36 33 36 23 21 18 35 17 40 11 34 28 3 34 29 14 21 14 2 28 16 17 15 26 33 31 39 18 23 18 26 11 30 31 8 25 13 35 12 35 11 4 23 31 6 23 33 6 13 37 24 24 12 1 12 37 10 35 12 33 40 23 24 38 23 32 30 18 5 20 15 6 27 40 21 16 17 21 21 6 28 30 37 33 13 24 23 34 34 25 27 3 15 38 34 15 29 33 23 24 26 8 8 13 10 19 25 1 2 34 31 4 19 33 4 10 19 21 8 16 9 19 35 3 21 4 22 18 35 4 40 4 18 33 36 35 11 27 1 2 17 37 14 20 27 34 10 21 2 18 22 30 37 17 5 10 11 36 8 32 18 33 24 28 19 35 17 18 17 25 3 11 35 6 5 32 21 18 18 11 35 29 26 20 35 34 31 15 9 6 39 18 21 26 28 24 24 40 22 25 30 23 29 27 39 16 18 11 12 38 31 29 26 34 39 16 22 40 6 29 23 18 29 38 25 39 28 18 5 25 20 6 20 26 39 8 4 3 4 19 23 28 9 26 7 18 39 1 16 29 22 24 14 13 24 4 29 36 8 26 33 15 1 38 30 8 21 36 8 3 26 2 20 13 16 5 21 24 25 33 17 19 37 25 7 27 32 20 7 23 14 21 17 14 7 24 27 40 19 40 21 28 35 18 30 37 32 28 10 29 29 11 26 2 10 30 24 6 16 14 27 17 35 30 22 5 39 25 7 7 14 24 21 10 18 16 8 17 36 35 32 2 32 5 10 20 37 10 19 6 7 15 15 27 2 4 8 10 10 24 12 11 14 10 9 6 5 16 9 4 12 6 36 29 9 4 17 39 37 16 17 19 26 25 6 13 30 1 23 31 36 21 34 24 34 39 5 3 29 34 33 11 25 11 16 19 21 14 32 26 36 19 36 10 32 1 33 1 13 4 29 23 1 25 5 36 18 30 21 26 13 16 1 21 19 16 31 37 18 20 40 39 40 15 40 33 7 14 12 13 34 20 36 4 33 16 34 39 17 12 3 7 1 3 16 21 20 13 22 22 2 24 32 16 21 39 24 21 18 12 32 15 21 37 28 7 28 20 5 20 21 18 24 7 19 30 35 13 11 28 32 5 22 39 22 27 17 2 3 35 2 7 30 10 35 38 25 30 33 15 1 4 7 8 34 23 38 26 29 40 6 17 30 24 40 13 13 33 14 16 1 9 32 8 19 37 25 1 14 3 38 10 37 38 33 11 4 12 9 38 31 38 24 9 29 5 31 33 20 17 12 16 4 38 14 15 22 8 30 12 27 37 38 31 8 8 7 3 33 16 8 23 19 4 14 27 21 21 26 20 1 38 4 31 11 4 29 15 28 14 26 9 8 5 2 22 1 10 26 11 37 15 38 19 34 28 38 31 28 15 29 15 12 38 40 10 40 16 14 36 18 30 35 30 1 38 9 14 1 29 38 12 37 10 27 25 34 35 4 12 17 37 18 16 20 11 12 37 11 9 33 35 39 40 3 38 31 19 4 25 9 25 28 5 16 34 30 40 17 22 6 31 25 4 13 17 30 19 31 10 12 13 2 21 20 29 10 19 28 13 32 40 7 10 25 20 32 25 40 13 22 33 25 6 30 28 13 29 32 4 38 26 28 1 5 31 32 1 22 17 34 1 35 33 27 2 33 26 24 12 27 28 36 27 2 5 26 13 8 28 2 2 8 38 12 8 17 2 32 26 19 7 38 4 16 32 1 1 25 37 11 14 29 28 2 27 23 15 40 26 7 35 12 9 31 12 30 16 14 29 35 7 24 22 6 19 24 1 20 19 2 33 32 19 39 9 17 1 7 24 17 22 28 21 21 27 8 16 7 39 9 30 33 4 11 18 29 28 19 4 7 25 10 18 16 14 39 20 34 12 25 34 15 18 38 23 40 29 35 27 34 17 28 32 31 14 2 21 23 30 10 37 3 1 38 9 19 27 30 15 3 38 33 10 7 8 39 12 15 4 4 27 10 8 17 12 20 18 26 13 25 14 7 4 3 28 8 11 2 20 8 32 12 37 40 19 30 14 8 16 11 3 2 20 29 2 23 7 38 15 27 24 22 16 32 22 16 11 38 29 5 33 30 20 7 6 33 40 30 24 39 24 21 26 20 31 7 28 18 25 22 11 40 21 24 32 34 20 14 19 25 24 13 3 26 39 10 15 30 10 21 13 39 6 14 17 17 32 20 27 28 15 8 33 8 34 32 3 23 9 28 5 5 23 10 1 29 20 33 29 8 6 4 40 4 35 4 19 3 24 12 23 3 23 10 22 35 16 38 22 7 4 25 15 9 35 14 36 20 22 6 36 37 11 10 32 19 6 29 6 19 12 27 25 32 38 4 33 12 7 16 31 39 26 26 22 10 10 38 37 23 10 18 12 36 28 34 26 32 7 4 16 2 27 24 31 23 38 1 9 40 34 23 5 9 20 18 22 1 14 17 18 35 36 37 24 26 27 6 28 31 1 30 36 38 7 15 40 34 35 8 35 13 22 32 27 16 39 32 13 5 3 15 13 26 23 23 39 4 23 4 4 8 9 26 22 9 29 29 25 8 38 13 37 12 32 17 13 14 16 21 11 15 32 1 13 8 2 30 38 13 14 23 17 2 9 15 33 40 12 35 32 25 14 2 12 10 10 19 16 12 35 23 23 40 11 8 26 16 38 36 17 25 26 17 4 1 31 10 31 19 26 4 31 17 16 12 23 21 32 34 23 27 40 1 10 3 15 30 33 30 11 21 39 19 33 2 35 31 23 32 20 19 17 26 3 23 13 32 16 16 35 20 37 36 29 25 13 24 1 3 40 3 18 17 35 13 1 25 40 7 21 38 35 28 29 35 30 40 5 25 34 15 30 33 39 40 33 17 39 7 10 24 25 35 21 2 12 2 4 13 36 34 37 1 20 1 18 39 25 38 37 39 27 32 40 30 30 34 37 16 36 25 37 18 38 27 23 20 39 18 17 10 20 10 38 30 39 10 15 16 35 27 27 40 11 6 18 37 14 11 22 4 5 26 39 9 39 32 39 7 29 39 16 15 18 28 10 5 11 13 3 19 23 18 1 20 35 22 34 12 17 15 28 4 10 24 11 8 30 3 22 2 38 27 3 27 17 2 20 24 15 25 26 31 19 7 14 2 29 4 19 26 28 14 23 7 31 26 33 37 32 20 23 6 5 16 30 16 24 20 36 23 30 10 35 22 30 9 1 25 32 10 30 29 36 8 27 25 9 15 20 24 27 5 6 32 15 37 30 7 5 36 30 8 30 15 15 29 7 23 6 8 29 31 20 19 1 3 19 17 5 10 6 11 4 16 24 4 30 29 11 8 13 26 4 31 33 4 9 25 18 7 15 31 20 1 26 33 3 19 25 14 21 2 29 33 23 8 9 40 32 4 28 27 2 28 23 1 2 17 32 8 3 22 12 9 4 30 19 31 13 4 21 26 30 19 9 40 11 12 23 1 40 37 18 13 2 28 6 26 38 11 38 9 22 28 36 36 29 4 21 19 31 24 33 36 27 31 3 11 6 8 36 26 14 34 13 5 9 11 8 15 38 16 33 9 22 16 5 10 14 21 31 30 9 29 40 27 20 17 30 33 18 12 11 3 24 16 29 22 17 2 36 40 3 11 12 24 6 12 38 24 14 29 37 5 16 16 20 32 40 37 4 40 10 8 7 18 1 23 30 5 28 20 3 23 8 13 11 36 34 15 38 10 33 2 3 15 39 29 12 33 26 32 26 28 32 25 33 14 15 17 37 26 22 36 13 26 7 17 36 20 35 21 28 1 21 17 1 12 5 1 37 23 8 3 8 21 8 1 7 23 17 18 31 29 6 8 31 31 14 12 27 3 38 35 3 33 19 37 38 15 38 6 6 17 32 2 3 7 24 3 39 11 14 13 1 15 11 30 39 17 6 31 7 36 35 21 11 16 6 34 35 33 34 16 2 30 28 3 28 31 6 5 29 7 23 21 1 11 26 23 3 37 35 1 8 23 18 40 32 12 37 23 11 16 22 28 28 21 5 28 3 36 19 6 21 24 28 36 29 25 14 36 31 4 13 32 40 6 38 29 25 2 29 7 38 22 13 35 1 12 29 7 32 28 33 16 24 12 2 18 22 33 4 26 3 38 22 35 17 25 35 10 34 35 21 31 16 15 4 28 36 33 40 5 25 32 26 33 27 10 1 35 32 31 17 19 20 26 23 18 18 13 10 9 22 5 36 4 8 20 9 40 37 12 3 35 40 10 33 25 16 39 31 31 1 28 16 4 6 10 32 16 17 32 32 29 33 23 16 30 31 37 40 18 30 31 6 7 32 8 31 14 8 18 20 12 7 18 17 7 32 25 37 8 13 7 22 10 3 2 11 38 40 37 21 2 10 14 25 20 37 30 40 30 13 13 25 7 26 35 32 23 23 35 2 8 13 11 12 12 8 39 16 23 1 1 12 39 19 40 7 9 12 29 6 13 36 38 39 19 16 17 17 16 32 37 33 39 32 15 18 37 9 9 22 27 7 7 22 28 23 20 39 4 14 4 38 26 20 21 15 33 8 7 39 5 2 27 28 37 23 3 14 21 29 17 25 21 5 9 3 37 7 28 12 36 7 33 40 27 17 1 10 10 33 26 15 37 26 24 18 14 27 18 35 3 34 36 4 8 11 5 10 9 35 3 36 7 18 13 33 24 33 17 12 10 3 2 39 7 25 6 16 37 29 22 12 11 15 40 16 23 28 11 30 9 34 1 27 14 39 22 29 5 40 21 19 32 19 19 23 32 5 37 2 30 35 38 37 9 17 10 32 7 4 29 37 6 1 2 28 22 20 22 15 38 8 4 19 6 30 13 31 4 5 8 28 39 18 13 34 36 36 31 34 31 27 23 34 36 32 9 1 24 16 28 12 11 17 23 17 26 4 36 3 11 8 28 18 37 37 1 18 32 30 12 15 32 22 5 12 35 27 40 20 25 4 19 5 14 22 27 22 16 9 10 34 5 3 33 7 25 21 9 27 12 16 38 21 1 17 17 8 15 19 37 14 20 12 40 1 37 34 33 31 39 1 7 22 7 36 31 9 11 33 19 32 30 2 26 36 7 11 20 33 21 10 11 31 15 8 30 13 32 9 35 32 30 9 35 37 37 16 3 37 15 12 32 24 31 8 10 28 26 24 34 25 22 11 26 14 21 9 8 3 10 15 4 10 38 10 15 30 38 36 2 28 37 11 19 5 3 33 27 32 38 37 4 18 15 4 22 3 22 39 11 10 35 15 1 22 17 33 37 5 25 16 40 33 24 35 36 14 21 36 32 2 24 9 17 10 31 6 17 6 34 7 21 7 36 28 12 11 25 16 34 32 10 2 9 33 34 32 17 11 39 8 26 5 5 9 11 33 1 22 6 21 30 13 7 18 6 16 30 38 7 18 7 28 7 39 26 8 34 8 38 10 16 32 12 14 23 22 5 12 38 10 25 34 2 5 12 38 34 12 28 39 26 40 21 19 40 19 36 14 7 6 28 29 39 4 6 17 5 31 35 19 36 6 34 34 25 29 2 40 3 5 5 3 9 19 12 18 4 33 32 11 2 24 22 31 3 15 16 12 38 5 12 12 29 4 14 7 17 22 12 29 40 38 38 1 29 8 29 13 32 24 5 34 10 18 40 32 24 4 9 33 21 28 2 36 27 18 26 23 12 7 34 1 28 14 30 6 3 29 28 21 18 4 12 28 6 24 36 26 1 36 21 29 24 1 23 38 29 14 34 13 39 27 17 40 35 23 38 1 15 9 31 18 31 30 34 19 27 23 27 6 27 31 21 40 13 36 26 37 28 11 11 32 27 37 12 21 32 13 23 22 37 30 39 39 1 7 15 3 5 14 30 3 7 9 15 39 2 4 7 38 30 1 5 15 30 5 16 17 12 33 28 7 10 30 11 3 23 7 22 30 29 27 9 16 39 37 39 34 14 31 22 26 5 6 39 26 18 12 5 27 40 26 4 14 12 31 35 15 28 17 16 5 33 32 23 29 19 6 4 31 5 14 35 39 9 4 38 36 6 40 30 6 27 8 23 10 34 31 31 4 23 20 35 39 38 34 11 25 1 15 19 22 25 20 15 2 21 39 16 30 12 26 39 12 17 21 27 21 3 8 40 20 8 23 3 16 22 37 3 28 2 29 14 18 14 23 19 13 29 27 24 31 32 29 22 13 27 13 18 26 20 2 14 39 38 31 13 34 9 19 1 36 8 27 24 2 16 17 3 4 24 6 3 6 9 14 36 1 23 38 4 17 23 39 18 5 38 26 12 34 3 7 17 4 17 28 31 5 29 1 31 36 25 20 13 33 35 32 13 40 33 40 31 4 39 18 8 6 17 37 1 1 8 39 25 36 40 36 33 6 40 25 16 30 29 38 25 12 23 31 19 3 25 22 9 15 39 21 37 27 32 18 1 31 8 4 11 12 24 3 19 11 33 38 7 12 39 14 17 10 2 17 36 14 4 40 39 12 35 22 29 8 8 4 4 7 15 33 13 29 15 33 20 15 21 18 35 9 3 10 2 20 10 21 12 21 3 33 14 14 15 13 9 23 11 40 14 25 10 30 30 27 31 17 29 33 17 26 34 23 16 4 8 34 34 8 20 3 12 2 11 32 35 2 24 15 26 8 34 12 31 29 22 17 3 24 24 2 34 12 20 34 24 39 13 18 15 10 3 3 5 38 40 38 6 33 19 8 28 9 7 23 22 32 6 16 23 11 11 22 24 38 31 15 39 33 11 40 37 30 2 4 1 19 17 1 1 40 6 8 21 6 27 35 19 13 33 14 32 11 27 40 6 30 25 4 3 4 29 40 30 23 12 25 37 3 20 9 36 40 28 35 39 23 36 23 11 33 22 19 36 2 3 32 40 30 6 21 21 40 39 32 24 14 5 37 35 19 13 16 5 39 24 36 31 5 9 11 21 39 1 26 39 2 26 15 22 39 29 7 14 16 13 8 8 28 22 29 29 21 40 36 2 25 5 27 19 13 29 5 12 17 2 12 19 15 40 35 36 4 32 3 16 36 13 25 35 3 24 21 7 37 23 28 40 22 31 40 6 18 18 30 25 39 6 1 33 24 29 25 1 28 39 8 14 5 28 4 36 1 38 39 23 19 12 38 32 32 32 15 14 23 31 31 24 38 30 40 33 26 26 31 30 8 7 31 24 8 18 22 27 25 31 40 26 40 27 18 37 34 22 36 14 19 20 20 35 39 25 40 27 18 28 16 33 14 34 35 26 38 36 18 20 18 22 28 5 7 28 19 7 4 12 10 16 5 27 34 26 28 9 11 30 21 29 6 1 23 5 17 38 39 7 16 6 12 11 28 1 18 26 19 24 33 16 35 33 27 16 26 31 25 22 31 28 6 17 8 2 14 1 29 23 3 5 34 39 22 20 20 13 15 31 21 19 3 34 7 28 35 14 11 1 26 24 4 11 20 12 5 23 22 8 36 24 23 5 18 17 23 4 38 5 35 4 14 16 13 27 9 39 29 12 10 19 17 37 9 32 38 24 8 15 1 1 14 25 25 6 22 32 28 18 17 7 24 17 17 15 5 9 8 38 33 29 33 5 3 14 12 3 2 9 34 21 16 21 27 37 1 25 9 13 36 17 14 10 25 27 24 20 22 27 29 40 40 28 17 22 31 24 34 12 30 14 19 7 10 25 11 23 22 22 21 39 3 7 1 1 35 25 16 40 34 7 18 38 6 39 7 26 11 30 25 40 26 33 25 36 25 7 31 7 24 32 38 31 7 10 5 24 14 22 21 38 36 29 21 35 21 37 11 40 25 35 24 23 32 6 28 6 40 11 33 28 13 24 3 18 35 24 22 31 11 9 27 31 17 36 7 39 11 18 15 35 34 12 12 14 20 14 26 2 9 7 5 25 23 30 27 38 4 27 12 15 9 25 20 11 28 8 21 28 33 36 39 40 8 8 24 11 15 12 39 11 29 6 27 19 37 8 12 11 11 13 1 13 32 8 27 24 8 39 2 15 14 29 18 1 31 9 7 12 12 6 29 10 12 3 4 11 8 19 4 23 22 38 8 3 34 3 10 33 37 11 32 23 24 9 13 29 1 35 25 37 21 40 7 25 13 22 29 6 34 4 33 24 37 28 39 27 33 5 23 2 27 31 32 14 14 6 18 38 35 26 33 38 12 23 1 37 2 39 22 8 37 7 31 29 29 35 6 1 28 28 11 4 7 16 28 14 34 9 24 5 16 29 34 15 35 37 38 9 38 10 10 7 8 31 31 21 26 33 24 26 20 4 16 14 22 27 2 10 31 38 26 18 13 10 6 11 8 10 15 29 2 29 11 32 4 9 16 36 2 22 39 36 26 10 1 8 11 25 22 14 28 10 5 10 20 36 32 19 22 39 15 35 11 23 6 31 13 8 7 28 34 28 19 9 8 20 38 39 33 27 34 32 4 2 38 15 13 7 24 21 10 25 30 16 25 37 18 14 6 7 3 22 27 28 20 9 28 31 27 1 12 2 18 14 25 32 14 1 10 8 32 3 20 40 21 36 8 14 19 18 22 9 6 11 20 23 24 4 16 24 15 5 1 9 21 17 4 6 33 15 23 38 11 40 9 27 39 17 18 20 37 29 2 32 10 6 24 31 40 38 13 25 34 31 33 24 38 28 35 7 13 23 16 20 2 21 10 35 27 18 32 28 20 34 32 34 2 40 30 6 26 27 10 17 11 40 15 39 8 3 2 21 12 8 28 21 11 36 25 32 22 5 16 37 13 1 34 26 29 34 27 29 27 20 2 6 29 12 1 16 6 39 17 2 21 30 35 6 30 38 1 19 11 9 17 10 22 31 20 32 18 22 23 35 6 35 33 38 25 33 37 34 9 31 39 2 24 36 24 20 38 26 19 35 29 40 7 16 7 17 31 19 14 32 40 18 9 2 36 6 7 5 10 16 13 13 21 18 28 19 8 36 27 12 26 30 26 22 31 34 11 14 3 39 38 9 4 22 28 24 3 35 22 37 22 28 32 19 12 29 12 5 4 20 3 5 3 21 26 37 12 20 10 37 30 16 36 34 5 5 36 13 2 20 29 29 31 16 12 24 8 5 5 3 39 21 34 33 7 16 18 15 16 26 18 12 24 26 16 26 16 38 12 24 6 9 1 9 33 27 12 29 35 5 40 33 38 31 36 34 15 10 30 29 15 30 30 26 2 35 22 29 29 29 33 38 32 1 18 5 15 36 16 36 35 23 19 36 40 5 25 18 30 13 38 11 33 5 31 39 1 39 12 30 17 23 13 10 11 20 15 3 40 16 36 20 38 24 14 30 18 15 20 24 1 12 11 9 31 5 4 31 4 16 23 5 33 27 15 4 18 30 1 22 38 21 10 11 32 19 6 33 23 3 32 40 11 10 14 33 12 18 8 39 29 12 3 36 36 2 19 38 10 24 17 31 28 39 8 37 38 9 30 37 17 31 15 7 24 18 34 22 12 10 7 23 4 30 34 3 24 18 37 19 30 25 10 33 40 6 3 11 37 28 6 34 7 6 18 5 23 21 8 34 32 9 39 8 5 8 3 10 8 12 18 23 38 35 28 29 20 32 10 39 27 34 22 16 20 29 37 10 18 6 9 10 27 2 22 36 10 4 39 22 1 23 26 2 33 2 26 28 9 8 6 27 26 11 35 19 33 30 2 26 1 36 8 2 36 40 24 19 12 31 39 3 31 25 36 3 22 40 19 37 3 1 33 15 22 25 37 30 31 16 16 15 28 15 19 21 6 15 19 27 2 31 28 24 15 13 8 12 10 19 37 36 5 40 15 23 1 25 19 24 28 7 34 38 8 5 6 23 36 31 35 30 15 25 37 1 22 35 25 3 5 37 18 37 32 19 34 25 27 31 24 1 38 14 11 5 30 35 3 13 39 11 40 16 38 26 12 40 5 16 27 18 25 3 5 34 10 27 3 19 24 14 38 36 12 17 20 18 30 20 16 25 29 23 17 13 33 16 29 5 12 25 36 18 38 18 33 37 23 32 1 33 3 33 10 4 40 27 17 19 32 35 15 32 2 38 7 26 18 37 9 18 16 12 23 2 11 10 37 9 13 27 39 6 24 2 23 34 15 9 36 11 40 12 14 6 2 32 16 21 30 34 1 19 35 38 35 1 29 32 39 17 1 9 19 24 22 36 14 19 33 40 19 36 19 27 7 24 20 17 25 14 26 4 18 10 14 22 13 8 4 38 38 32 11 26 20 28 17 16 2 2 8 20 1 30 33 8 26 27 8 2 27 4 22 21 32 15 27 39 25 32 23 17 2 30 30 6 11 20 19 18 6 13 29 4 22 20 7 10 26 4 23 32 39 12 6 17 15 21 3 5 23 35 22 1 27 19 26 23 27 9 24 30 25 6 40 40 19 31 6 32 4 21 4 30 33 39 16 25 6 6 31 19 14 9 3 24 21 16 16 23 36 20 35 13 29 34 39 1 6 36 18 21 22 37 8 11 20 26 32 20 35 35 16 8 10 26 31 26 29 28 5 14 5 40 27 35 25 9 7 32 25 12 10 33 32 21 23 17 19 12 38 21 13 3 19 5 21 16 2 35 33 37 6 20 11 19 36 24 39 22 33 10 13 23 30 25 23 31 16 27 18 30 35 23 4 8 17 32 40 4 40 13 37 12 21 38 12 23 40 2 39 16 31 14 23 4 25 34 22 31 32 17 30 3 24 27 29 2 38 18 11 15 2 5 22 19 29 15 1 31 1 30 24 35 30 3 36 14 2 31 12 13 33 23 36 14 23 19 30 30 37 11 20 17 8 39 24 5 33 34 22 23 16 20 4 1 10 7 38 1 34 16 1 39 35 38 32 26 5 33 14 20 27 29 35 8 10 12 13 11 39 16 30 39 22 27 37 15 13 6 8 12 30 22 10 10 16 9 32 29 38 33 5 12 6 39 19 2 17 4 26 7 38 22 16 19 14 37 17 24 40 36 38 24 39 6 22 39 39 32 12 30 23 28 37 38 30 27 26 23 2 3 31 22 12 3 33 16 24 18 14 4 4 36 22 37 30 35 23 27 32 2 40 23 32 21 2 18 28 2 38 28 36 15 1 19 31 38 12 11 17 1 36 14 7 5 2 21 30 15 28 33 12 39 26 30 38 10 9 25 6 37 37 38 30 19 28 24 34 38 12 19 33 14 5 30 12 31 28 15 29 16 34 35 20 28 27 19 16 2 10 8 6 34 4 27 11 29 29 35 10 14 36 26 6 1 17 10 36 6 16 35 16 27 17 5 36 27 23 20 27 21 40 30 38 32 28 30 22 4 10 15 37 9 24 9 1 20 30 3 10 27 23 19 25 2 39 2 7 18 29 8 6 4 25 29 6 14 15 7 11 15 14 14 4 28 16 10 29 28 36 2 16 37 40 11 33 29 2 21 11 22 21 20 9 30 2 34 35 25 28 36 37 9 27 8 23 4 25 6 6 27 12 26 39 27 8 15 32 20 32 38 25 27 35 16 22 28 11 32 15 21 36 7 13 19 14 31 15 31 38 5 38 40 39 32 35 22 20 2 15 19 28 30 14 4 6 30 25 28 40 21 4 16 30 14 6 15 31 2 25 12 24 5 23 20 34 28 18 14 33 34 25 35 29 25 38 18 13 26 33 34 33 4 8 27 1 34 36 26 16 22 26 22 30 14 39 26 3 31 19 29 27 19 15 26 14 9 38 28 15 34 16 21 23 12 9 13 20 14 5 36 19 23 39 5 12 8 22 5 35 30 5 28 38 6 40 37 9 3 10 37 40 22 31 4 20 23 4 27 36 34 39 10 7 18 13 20 37 33 15 11 14 21 10 30 6 29 14 13 13 15 37 21 6 34 19 2 40 16 10 37 27 24 36 27 15 22 1 8 26 15 21 21 25 5 23 5 18 2 34 6 11 23 8 12 7 30 17 17 40 25 32 26 35 5 26 22 24 9 31 19 34 1 28 14 1 14 25 2 27 34 31 27 27 33 39 30 40 18 36 31 23 22 39 23 13 1 4 22 39 5 21 10 23 40 4 32 1 6 26 17 2 27 7 11 10 14 22 24 29 4 24 39 7 5 25 36 4 27 18 16 13 19 5 6 40 40 8 28 19 14 14 4 38 37 5 6 19 36 5 32 27 12 1 12 8 27 39 28 26 36 21 16 28 14 13 7 32 5 23 12 35 37 1 14 17 20 32 28 12 19 37 19 11 31 24 23 32 11 14 3 31 22 35 31 3 5 35 32 9 32 15 4 12 16 7 17 17 29 32 31 8 4 37 33 34 17 30 31 18 9 7 30 23 38 32 32 20 3 34 11 34 35 24 25 28 21 5 9 23 22 13 23 22 31 8 2 13 27 20 29 23 22 4 17 29 3 11 18 2 9 14 15 39 23 29 21 23 31 35 20 13 16 37 7 31 32 32 8 4 11 24 19 26 16 5 2 4 2 13 16 11 26 31 14 23 26 27 37 7 40 4 31 6 36 20 40 33 27 9 14 11 29 40 40 1 12 35 29 8 30 9 25 40 29 13 26 2 37 29 18 28 5 33 38 23 38 7 25 17 31 21 36 7 17 33 2 29 19 12 28 30 39 2 25 26 3 34 28 36 23 16 29 20 26 11 8 36 4 34 11 26 29 32 24 28 12 16 32 20 9 9 27 24 25 11 3 28 21 23 33 26 10 7 23 23 14 24 31 40 27 9 15 3 39 30 11 33 5 5 7 14 24 27 32 13 5 7 25 5 12 25 23 18 29 20 5 11 35 1 15 25 29 31 37 29 33 39 6 28 8 35 35 33 36 13 31 2 40 18 15 15 26 29 7 26 27 9 30 13 37 37 33 1 23 16 24 2 20 5 18 11 37 7 24 13 20 31 25 2 25 38 40 28 15 37 4 35 31 3 7 24 22 6 7 22 22 10 14 34 10 6 13 8 19 27 18 7 3 28 21 2 3 3 24 27 11 25 15 5 30 11 30 26 29 40 13 13 36 9 5 29 8 3 13 11 5 36 29 34 29 14 30 34 39 28 38 32 33 7 14 15 32 29 17 4 22 38 37 24 5 2 37 31 26 16 25 34 16 16 34 31 32 23 1 37 22 23 6 7 1 9 24 23 32 26 16 38 38 32 33 17 17 1 23 15 35 9 9 4 18 20 36 27 8 38 13 36 27 19 3 9 38 25 19 16 7 10 17 35 16 1 33 7 9 13 38 8 20 38 11 5 1 21 9 19 23 15 22 10 36 23 27 36 16 5 26 39 23 39 12 13 38 2 1 19 9 22 13 10 10 16 22 22 18 28 9 27 25 6 5 8 26 32 30 10 36 4 34 16 9 25 27 3 39 38 28 2 29 27 38 38 8 30 39 27 26 30 3 22 18 26 5 1 3 22 13 16 7 34 25 6 5 7 29 19 26 27 1 17 15 18 22 28 39 3 12 12 34 35 12 14 33 15 7 29 28 28 9 6 27 24 32 40 3 35 10 31 34 22 23 37 1 22 15 3 12 5 33 25 32 27 17 6 14 20 6 38 6 33 11 12 22 14 13 18 24 15 8 1 6 27 16 27 36 1 9 28 17 35 28 34 4 24 19 34 9 6 40 4 22 20 36 3 1 7 30 31 39 31 3 16 10 31 29 1 15 24 39 38 32 26 31 37 15 30 27 16 36 31 28 1 26 35 26 33 20 34 25 4 5 33 5 25 15 19 14 23 3 10 19 40 5 2 31 26 31 14 30 16 14 23 26 7 25 3 33 35 14 36 31 36 24 22 18 11 29 20 10 36 30 20 21 16 29 5 24 17 4 7 15 28 33 6 40 18 12 37 10 18 18 16 21 5 36 21 29 29 25 26 26 39 8 20 37 11 33 18 38 36 2 6 34 7 6 11 8 5 25 20 21 15 7 18 34 13 29 7 12 9 15 29 19 1 12 9 1 14 27 34 5 38 40 26 27 10 35 18 1 31 20 36 38 34 31 21 27 8 33 17 22 39 9 14 29 16 33 13 37 7 20 18 9 21 10 2 29 38 20 2 35 39 9 19 4 8 5 15 13 27 15 8 6 23 18 7 11 25 22 26 11 1 35 20 5 29 7 33 25 17 8 20 2 18 29 21 19 14 2 13 19 22 39 5 21 5 4 21 19 36 35 29 7 17 29 9 24 23 13 27 9 31 24 26 3 37 22 20 34 13 31 27 16 24 34 11 37 38 18 31 30 38 33 12 18 16 4 34 21 13 29 27 2 5 24 23 29 24 12 34 35 34 39 19 6 9 35 15 5 11 5 40 16 9 31 19 24 16 30 10 16 6 25 37 1 2 26 18 21 11 33 21 15 7 4 15 2 36 31 5 25 22 34 31 27 8 13 26 23 4 14 7 36 25 16 29 10 38 32 2 1 10 23 6 23 18 40 30 6 19 5 34 21 19 2 30 10 32 6 1 22 16 30 28 13 33 13 1 38 18 29 8 36 13 39 39 14 29 13 20 22 10 23 24 36 39 35 11 30 39 14 11 26 25 22 19 10 3 13 11 35 19 35 23 9 28 24 11 17 23 1 27 27 8 14 8 40 11 22 6 25 29 4 7 38 34 35 2 10 1 11 19 39 20 21 34 37 30 37 27 25 19 29 40 3 8 11 13 30 39 15 6 20 40 23 28 32 35 18 12 39 24 39 24 30 17 29 21 27 23 30 25 18 17 20 20 33 31 1 40 26 9 30 29 40 34 18 22 37 9 15 10 30 34 18 40 40 39 18 18 2 40 8 9 23 24 27 40 14 19 7 22 40 36 29 7 20 25 13 14 16 13 16 38 36 8 11 21 16 31 35 26 16 6 15 4 25 36 35 8 21 31 19 5 21 27 4 18 23 5 27 24 23 21 38 19 9 20 14 10 38 2 8 15 10 21 1 19 14 39 25 14 16 10 5 14 1 26 1 27 8 14 4 31 37 15 23 3 10 5 39 3 12 21 23 30 32 11 11 24 29 6 37 34 1 11 19 23 35 29 12 40 15 26 16 33 36 23 30 32 24 39 11 36 13 18 40 16 7 21 39 33 18 10 15 28 4 8 1 24 16 28 38 32 2 9 22 12 31 24 7 23 21 32 22 34 20 30 25 12 7 12 26 11 14 2 10 17 13 40 37 32 8 29 20 36 24 34 9 30 14 24 4 35 27 31 39 1 2 21 29 29 4 32 39 31 34 31 1 5 22 5 40 33 19 12 9 8 10 3 7 14 23 1 9 33 24 20 15 12 10 25 30 31 5 37 31 6 28 22 3 4 20 28 16 29 33 23 22 13 34 32 36 13 12 22 31 18 25 15 24 10 33 24 24 27 7 17 29 18 40 8 36 8 38 15 28 25 12 5 38 9 22 4 20 20 21 1 10 34 1 28 14 8 6 20 6 23 36 12 10 5 34 31 39 6 40 17 17 5 20 24 20 21 35 19 21 21 33 22 30 11 36 5 25 16 16 5 22 24 33 22 22 14 1 33 36 24 28 28 23 15 18 30 4 8 5 10 38 16 29 9 15 8 4 15 23 24 9 9 28 31 10 2 19 6 9 35 21 3 3 11 22 25 24 14 7 39 12 27 14 6 12 3 31 39 15 33 17 40 22 1 9 40 1 40 21 2 2 11 10 23 20 17 22 34 11 32 40 39 30 13 9 39 12 26 3 6 21 25 11 11 34 2 18 33 10 31 22 27 29 16 40 25 40 38 25 2 34 8 4 6 13 39 34 16 13 40 13 15 35 20 23 8 15 5 10 23 30 24 17 16 2 2 18 38 36 3 7 34 35 9 30 27 5 12 37 38 30 38 8 13 23 13 1 4 23 38 26 2 13 11 29 24 30 11 40 1 26 25 15 6 27 33 12 30 10 36 36 9 9 31 4 31 10 24 11 40 20 8 39 39 36 40 12 6 33 5 31 2 21 34 18 27 40 36 17 10 19 17 5 16 1 17 1 17 39 7 9 40 26 16 8 6 30 3 15 30 9 22 32 22 5 21 23 35 11 40 7 14 25 30 30 29 23 14 3 20 25 27 2 9 35 26 13 15 8 14 16 35 22 38 14 39 24 5 37 11 24 3 12 30 2 29 22 2 18 15 3 30 34 2 36 34 32 31 18 23 18 18 28 21 30 36 38 1 19 32 27 7 15 28 11 10 18 4 19 36 11 21 16 9 10 23 34 19 24 16 12 3 34 1 19 2 2 37 20 18 23 38 23 7 34 21 33 21 3 8 25 37 3 15 15 23 9 33 39 14 32 21 19 30 40 20 17 7 24 5 6 8 25 20 21 7 27 31 25 35 36 3 29 23 5 1 21 25 18 30 7 16 1 17 23 11 7 31 1 2 26 4 10 6 37 34 26 36 10 38 26 27 22 5 12 34 10 38 12 35 35 25 9 9 39 31 29 26 18 34 6 33 25 33 22 5 16 2 7 36 40 11 38 4 8 19 34 10 29 37 29 29 14 33 3 13 32 16 23 21 26 31 25 6 30 15 35 6 1 21 22 2 30 6 38 13 28 27 36 34 27 6 4 8 8 6 31 20 29 22 38 16 26 3 23 18 36 20 38 25 18 36 23 31 17 2 8 5 17 33 5 3 38 11 17 5 3 37 19 1 33 34 37 26 12 8 16 12 8 11 3 3 8 21 31 22 7 25 15 3 34 27 20 26 8 37 29 14 21 23 3 14 40 38 7 17 11 32 6 13 9 10 9 8 40 24 15 23 12 33 31 20 31 9 2 32 3 23 25 17 10 35 9 30 26 8 38 29 24 25 12 32 28 19 18 11 27 26 9 5 20 14 21 30 35 3 11 17 20 34 11 27 12 11 7 20 31 13 35 20 32 23 14 21 22 27 21 19 26 21 19 3 17 6 12 4 32 14 30 8 29 1 24 36 2 22 1 40 11 28 28 11 28 14 31 17 31 7 40 21 6 3 33 34 9 26 38 25 39 6 11 24 23 11 10 1 17 39 24 38 15 37 14 19 1 25 6 28 33 16 22 24 35 11 14 8 28 28 36 40 21 36 17 19 15 20 28 39 28 19 31 26 18 21 7 35 35 11 23 38 35 30 22 18 16 9 28 17 30 37 6 27 38 7 4 15 26 35 15 15 18 29 8 13 37 29 14 40 35 15 21 33 13 35 26 15 18 38 5 37 34 29 23 7 6 37 33 39 34 5 26 15 23 3 7 30 5 12 6 11 7 19 16 9 19 15 17 2 6 19 4 25 17 39 14 5 7 32 5 28 33 4 19 20 4 40 20 40 18 15 40 15 36 9 11 4 38 27 25 8 18 29 27 31 14 31 27 24 29 6 36 31 32 6 28 29 21 5 36 32 39 39 2 21 35 36 29 11 24 20 22 18 21 8 31 13 26 25 16 30 8 17 34 27 38 33 16 2 26 16 36 8 4 19 1 20 40 24 33 29 40 17 22 37 32 7 28 7 4 34 9 19 7 29 31 3 2 19 4 23 4 33 8 3 28 21 6 27 25 36 22 32 10 28 30 30 19 27 39 12 9 4 35 30 19 24 16 37 21 20 35 37 16 12 35 23 23 1 30 35 1 11 1 30 4 31 3 17 32 12 15 5 21 28 29 30 27 4 21 32 34 13 21 12 37 6 6 7 14 5 33 39 13 23 7 11 25 34 36 32 12 30 19 20 24 9 25 18 29 13 2 5 13 19 30 27 8 1 6 30 7 22 21 31 9 1 11 6 30 5 30 19 33 7 13 25 31 5 37 7 19 23 2 10 19 33 2 17 31 20 25 12 15 26 23 4 22 40 8 36 34 25 39 26 26 13 10 27 2 31 7 6 11 19 15 35 9 39 4 13 30 37 38 33 23 15 10 25 10 34 17 4 23 11 38 29 3 10 29 4 2 12 25 2 4 21 28 1 13 2 19 18 32 23 23 35 5 39 27 33 3 28 31 10 34 22 18 11 8 9 18 7 10 14 29 5 31 13 4 18 13 15 35 6 10 31 15 21 8 24 28 22 40 16 31 15 27 29 38 9 2 2 3 15 7 40 34 14 13 27 18 14 15 2 25 11 9 36 31 29 26 40 29 24 39 6 34 34 34 29 32 21 9 30 5 27 8 3 28 13 2 6 16 26 38 38 1 5 5 29 22 35 13 14 17 22 29 40 18 1 19 27 12 4 4 6 6 38 40 39 40 8 38 19 31 5 21 30 15 8 35 32 7 2 11 31 24 30 4 24 4 4 38 31 13 37 30 8 15 7 9 28 11 17 2 32 33 20 25 17 26 3 26 4 34 22 32 2 19 22 32 36 15 32 5 35 39 34 10 27 17 26 10 4 9 23 40 2 1 2 32 19 5 11 24 7 5 31 27 5 22 32 14 14 37 4 32 21 4 19 13 18 12 16 39 26 10 18 1 7 25 16 35 31 27 27 13 37 21 17 3 31 17 16 6 39 8 8 34 28 9 20 18 19 30 16 20 8 22 11 10 10 11 13 37 26 21 34 32 35 17 22 16 35 13 21 11 24 11 21 40 23 18 37 24 26 20 10 25 7 30 24 3 33 7 14 15 30 30 34 26 7 20 9 4 3 31 24 11 20 28 35 30 1 25 1 11 23 24 7 20 1 32 11 10 39 26 22 34 23 2 7 38 32 23 32 24 5 33 21 25 27 3 38 26 2 21 37 1 12 15 34 23 27 1 38 9 5 38 8 30 28 35 29 21 22 37 12 19 15 13 29 31 15 29 10 40 37 29 30 5 28 40 1 28 38 32 6 5 38 20 40 3 15 1 37 31 34 10 40 18 25 29 27 24 38 39 3 30 16 39 39 32 36 40 2 27 23 36 21 16 17 15 9 5 25 15 17 9 8 22 1 17 32 26 8 14 39 15 14 23 9 6 35 6 37 9 40 40 4 1 4 18 13 23 5 38 31 34 12 10 16 30 17 17 23 16 14 10 26 40 28 21 33 40 29 3 31 3 15 11 1 9 21 26 30 19 21 35 26 8 33 11 8 38 33 2 23 11 22 26 2 26 24 30 35 1 35 20 31 23 19 4 26 40 26 31 12 26 17 24 20 34 30 2 40 23 34 6 12 16 39 28 13 36 34 23 15 1 25 37 34 2 35 35 22 28 32 15 2 8 1 28 26 34 23 12 5 10 33 5 5 40 5 25 38 12 36 15 6 2 10 12 23 25 11 18 33 1 24 28 32 13 3 12 18 12 1 21 23 22 40 33 20 39 18 34 35 6 7 15 7 14 30 27 30 2 8 6 30 31 9 2 25 1 28 22 35 27 38 9 30 25 15 26 24 29 21 12 31 26 6 10 20 2 30 28 27 33 32 37 36 17 37 12 15 26 4 15 4 8 5 27 36 17 32 36 30 36 19 12 31 24 23 1 13 35 29 26 28 25 5 26 38 27 28 26 12 19 1 8 38 40 7 37 13 33 28 34 10 4 28 8 8 30 21 10 22 31 14 4 9 28 1 3 19 38 21 26 10 8 15 38 34 24 33 19 7 36 9 8 37 16 23 4 23 27 33 8 26 5 37 37 24 11 14 26 19 10 3 39 40 35 30 26 7 9 13 33 40 13 22 39 33 17 31 26 7 19 25 37 7 5 5 6 24 15 37 34 2 33 27 39 14 39 26 17 6 10 4 5 20 31 12 12 27 25 13 15 9 19 40 6 29 20 13 21 39 37 13 28 40 12 32 8 13 4 12 12 12 35 27 38 7 13 28 2 12 19 40 32 37 3 28 28 1 38 24 23 19 13 40 16 11 31 34 2 30 20 34 9 23 18 15 25 18 40 11 19 25 16 20 34 40 15 5 15 4 25 12 28 11 35 7 34 36 25 34 12 22 29 2 24 6 18 23 10 14 23 35 18 30 23 40 37 27 36 16 10 1 21 31 4 38 14 14 22 30 35 25 13 29 31 38 30 14 18 11 38 20 5 32 30 22 4 27 17 1 40 31 33 38 4 25 20 36 19 19 2 9 13 17 5 31 5 32 16 32 3 28 29 39 22 33 2 29 8 3 40 32 26 16 21 24 35 7 36 22 15 39 37 23 27 36 7 28 4 27 9 20 31 26 6 7 16 33 9 38 37 19 35 19 38 19 4 7 29 25 1 38 29 39 35 37 23 8 29 5 1 33 28 31 12 10 6 12 13 3 18 6 35 35 22 6 17 17 29 8 30 25 25 7 19 13 26 33 21 17 13 38 17 17 30 16 39 7 38 18 13 39 4 26 14 21 16 2 34 15 15 32 34 35 18 1 9 22 40 11 30 22 10 3 26 7 9 16 29 18 20 13 19 18 18 24 20 38 19 15 10 15 12 6 32 8 13 17 36 2 40 11 26 33 9 4 16 39 9 4 4 17 7 17 1 8 12 1 34 23 34 34 16 33 26 5 37 29 24 30 34 36 15 5 1 5 31 13 37 38 14 10 17 23 17 29 9 14 35 28 25 17 30 21 7 21 39 22 20 4 24 7 11 4 1 16 27 3 31 40 29 30 14 6 19 21 32 28 8 10 38 23 19 17 27 36 23 33 38 21 26 32 29 22 33 18 11 27 19 12 3 13 2 20 38 33 10 40 31 18 34 20 22 8 2 20 16 8 33 38 18 17 38 13 11 8 4 27 6 34 40 34 22 12 16 27 2 12 3 11 40 10 10 18 24 36 12 19 29 14 22 28 19 33 20 4 12 31 1 39 29 31 36 27 26 28 40 40 33 27 3 30 21 4 13 36 7 10 23 5 6 22 11 20 4 24 8 6 4 12 16 6 34 38 36 18 8 12 32 28 16 12 14 38 40 19 10 11 11 21 19 16 22 6 39 10 9 9 10 22 35 8 38 22 6 18 2 38 20 8 40 40 18 7 37 2 22 4 36 40 3 38 14 21 37 27 7 26 27 38 7 2 10 20 32 15 21 15 26 21 35 30 31 7 38 19 8 37 13 35 3 32 6 6 12 20 6 14 12 9 13 20 40 11 36 22 3 7 19 23 14 4 22 31 14 6 4 24 12 11 14 32 18 24 28 9 17 35 25 20 20 11 12 14 12 23 40 6 28 15 5 26 28 35 39 11 13 28 10 17 11 10 40 30 40 17 37 10 18 37 38 14 21 12 8 14 12 33 13 9 33 28 31 24 10 19 15 5 24 20 19 32 29 4 35 23 28 40 10 32 36 24 25 2 11 7 8 7 40 18 22 29 20 23 19 40 8 20 37 14 32 37 16 29 18 34 20 1 6 9 11 29 35 21 29 37 28 2 15 29 30 40 26 18 37 7 25 22 24 23 19 17 24 19 7 20 30 32 1 9 36 9 14 11 28 25 22 9 18 21 12 35 33 27 30 21 32 26 39 23 26 5 26 12 21 3 19 34 11 23 23 25 15 1 32 27 37 17 15 22 35 33 17 22 31 5 6 34 20 24 33 21 31 32 22 8 10 21 38 23 24 39 9 29 27 16 27 21 1 28 34 21 23 29 21 21 17 30 14 8 26 6 38 28 40 5 3 6 37 14 19 33 30 25 15 13 21 25 10 17 28 9 2 27 24 33 13 31 32 30 38 13 21 36 13 24 38 30 31 7 17 23 3 17 6 13 13 27 21 38 14 38 9 7 40 22 28 6 9 36 10 18 30 35 30 28 26 28 38 10 29 27 18 3 8 10 1 17 15 31 38 11 10 18 33 33 11 9 4 16 36 17 2 10 7 6 14 19 31 26 34 4 24 37 23 5 34 26 32 24 21 3 4 20 12 27 2 21 7 26 8 25 15 36 37 11 1 4 32 34 30 32 39 29 38 20 15 9 34 17 4 30 33 10 25 11 8 10 27 35 40 29 8 7 35 32 28 13 33 25 5 31 39 16 30 3 18 26 4 11 9 36 35 12 17 28 33 27 12 15 20 13 18 5 19 36 2 36 35 12 35 28 5 1 37 26 17 19 3 20 3 7 18 36 22 12 21 39 29 36 22 9 29 11 33 37 34 26 3 32 32 34 13 13 31 32 27 21 21 39 38 23 23 2 14 33 2 10 9 21 34 27 38 22 23 32 26 39 36 27 10 36 15 16 7 15 1 28 6 31 39 16 4 19 38 37 17 31 35 36 10 23 5 8 11 18 15 30 5 8 6 35 1 21 4 32 20 12 12 10 19 3 24 16 24 14 13 24 39 11 31 5 4 15 39 29 26 21 40 1 23 19 11 11 18 20 15 36 35 13 29 17 1 12 22 27 3 2 34 20 18 28 32 29 6 15 6 32 17 8 25 1 36 2 23 17 28 34 34 19 9 1 21 16 23 18 6 23 5 10 24 19 12 21 4 17 13 11 4 18 36 32 38 21 26 15 25 3 22 25 36 27 30 15 10 10 30 23 40 38 38 39 34 31 2 1 9 12 30 6 23 21 4 17 35 30 24 1 35 4 26 16 40 2 12 4 25 26 26 20 7 8 10 39 14 33 20 19 8 1 27 17 21 18 20 38 19 36 5 22 11 33 17 32 24 8 17 35 6 3 33 27 3 15 3 27 20 6 39 30 16 17 15 7 1 17 16 7 33 18 23 35 28 21 25 25 28 25 29 12 35 25 4 9 37 8 24 39 6 38 18 2 23 17 12 19 6 10 35 3 36 6 11 30 40 17 7 20 36 5 39 24 33 8 16 33 24 2 40 30 7 21 26 21 34 8 31 4 34 26 6 8 2 36 13 24 36 17 36 21 26 15 36 26 9 38 30 13 5 25 2 24 19 18 16 2 33 12 15 32 7 28 13 31 34 32 6 34 27 40 24 34 3 39 24 19 11 12 35 40 28 5 32 18 8 28 14 18 24 33 7 15 24 18 18 20 8 13 36 24 4 10 38 10 27 19 27 40 13 8 6 26 18 22 34 6 36 36 39 1 25 23 8 17 12 24 18 17 12 3 26 25 36 16 15 19 37 6 27 38 10 10 17 6 31 17 30 39 18 38 36 6 1 5 31 18 20 22 21 14 27 24 16 20 2 25 36 31 2 13 3 28 36 25 18 17 24 18 3 25 30 31 18 10 23 23 35 17 34 37 36 29 11 40 18 2 29 28 16 32 30 6 2 5 37 35 12 8 34 29 6 19 3 25 17 40 38 24 39 28 17 29 36 27 26 27 11 20 15 20 36 32 28 1 38 14 34 13 34 22 30 4 9 13 8 4 6 40 4 12 35 39 15 12 27 1 25 40 35 32 30 3 38 34 16 20 23 40 14 29 27 5 3 9 16 35 18 40 15 5 30 4 19 35 14 9 13 16 13 23 24 23 36 7 3 39 21 28 38 17 6 12 9 18 32 27 39 11 24 16 37 35 21 10 11 9 31 14 7 23 4 6 2 9 2 20 14 29 10 31 38 13 9 18 27 25 24 11 26 22 31 33 36 19 10 4 30 4 3 9 40 25 20 37 13 8 13 35 38 21 11 19 12 3 10 3 2 21 40 13 36 4 24 17 39 38 28 36 13 15 3 10 15 25 26 18 25 8 2 1 11 24 19 36 32 5 23 19 14 22 7 39 6 28 1 37 28 35 5 34 16 38 5 3 11 12 29 7 32 29 10 35 17 36 32 27 8 8 4 22 24 18 29 21 39 7 20 10 27 12 26 5 17 11 12 37 1 8 15 14 22 34 1 21 38 16 33 37 28 6 30 16 12 10 40 23 5 2 18 5 29 24 17 11 15 26 37 12 16 17 24 36 16 5 25 25 29 24 27 3 12 1 2 29 28 20 12 18 6 35 26 27 38 30 33 32 9 36 29 24 19 29 23 8 14 8 4 20 25 29 38 7 4 2 1 40 38 16 7 31 8 5 21 33 3 2 12 40 6 18 8 26 37 37 25 2 25 34 26 10 3 12 40 3 39 27 16 38 10 5 7 3 2 36 33 35 35 39 8 3 6 28 16 39 7 12 4 10 40 39 3 32 10 40 37 25 25 21 11 8 22 37 39 2 3 15 11 15 4 30 14 25 15 38 29 39 16 26 40 5 15 1 36 13 2 26 13 33 2 6 30 21 35 33 9 1 10 35 24 8 32 10 39 31 22 35 26 8 15 15 9 11 40 26 8 33 3 2 35 17 20 35 38 16 23 29 5 4 14 7 32 19 17 37 18 18 21 33 20 15 38 30 29 15 29 9 39 7 5 3 35 38 18 1 10 35 37 25 17 35 9 38 27 14 30 18 34 7 9 4 18 4 7 5 2 3 3 28 20 33 29 4 25 36 16 34 40 31 17 33 29 9 23 5 22 7 20 14 35 12 39 35 23 25 30 15 9 1 37 4 3 3 33 30 28 31 20 17 16 3 38 24 22 29 40 23 21 37 36 11 28 16 33 5 20 36 35 32 17 20 15 6 31 9 22 40 33 32 13 18 2 2 13 34 40 14 3 37 16 37 9 23 18 23 33 9 4 36 3 28 1 6 37 23 9 6 10 23 16 25 21 5 1 32 7 25 17 35 7 17 22 18 34 27 9 17 10 23 26 19 40 39 32 15 11 6 39 35 10 32 34 8 14 19 35 28 29 4 33 23 36 35 37 29 20 5 1 36 33 12 35 21 15 33 8 28 25 5 13 12 36 34 7 1 11 2 4 1 29 1 7 23 17 24 29 10 15 11 1 13 19 22 35 7 24 1 12 38 40 24 5 23 33 1 39 34 10 5 12 37 25 5 20 16 21 17 1 12 7 10 15 3 3 32 22 7 39 11 8 28 3 17 13 37 18 26 14 33 28 36 16 19 25 2 28 28 21 37 5 19 26 27 1 37 39 26 13 27 33 22 34 28 13 14 40 32 6 36 39 24 11 19 5 32 9 15 29 14 34 22 37 22 16 1 26 31 17 32 37 13 13 7 39 11 15 8 5 6 19 33 9 14 24 2 22 23 40 27 4 11 12 21 30 14 16 30 1 12 13 11 34 20 36 26 3 18 10 33 13 18 13 39 1 4 6 5 1 12 1 18 14 30 11 17 2 25 8 30 30 13 7 30 21 31 35 40 18 1 29 18 21 17 7 6 26 13 31 17 29 28 19 17 6 23 26 40 22 39 8 9 38 11 16 40 16 29 12 37 12 9 30 24 2 16 29 18 25 2 28 13 8 25 9 25 16 7 32 33 25 37 13 24 12 8 36 17 33 16 34 30 31 10 1 27 14 24 6 1 35 4 39 5 22 19 16 23 21 40 20 23 1 18 31 25 19 7 23 8 17 7 13 40 27 31 37 37 23 17 2 31 3 28 17 24 28 33 24 5 30 21 40 37 30 25 10 4 40 11 12 35 7 7 3 16 15 8 5 24 25 25 19 33 6 15 37 32 14 11 10 32 8 31 24 20 30 39 19 8 36 18 19 1 29 25 3 29 23 22 8 31 30 38 24 40 4 38 22 25 38 8 10 33 4 6 19 38 29 4 9 35 32 12 7 36 4 37 20 9 37 10 13 3 27 13 15 10 3 29 29 35 39 18 23 13 38 33 22 19 22 24 4 1 37 16 32 19 15 7 28 13 39 24 7 30 27 26 4 9 18 16 14 5 24 38 19 32 7 27 22 37 38 40 12 11 8 10 38 7 32 11 15 40 16 32 34 39 28 23 31 1 11 36 13 9 32 16 34 15 29 37 37 31 7 2 26 24 17 12 18 35 23 21 38 29 14 35 13 1 8 14 5 27 31 30 40 10 30 14 34 32 40 35 7 11 35 5 36 15 32 10 27 7 23 36 34 22 19 3 8 5 37 24 36 37 36 14 7 18 14 37 35 8 34 33 8 28 34 9 2 2 6 35 40 1 11 18 4 17 30 6 19 5 40 4 31 13 38 26 35 40 5 8 8 5 8 24 4 30 28 23 27 30 6 32 19 27 2 2 11 15 10 10 20 40 4 12 36 6 27 37 5 22 29 1 22 1 22 20 22 9 39 39 11 27 35 25 23 6 16 8 5 24 14 20 21 17 13 7 20 1 32 38 39 23 39 22 39 17 12 4 22 7 22 26 27 35 27 30 36 32 23 7 29 18 39 16 38 36 30 22 38 7 8 8 40 24 40 10 38 30 9 33 28 22 16 35 37 35 12 20 3 27 12 10 2 9 13 14 38 35 26 28 29 12 39 25 7 12 26 2 6 1 32 3 33 22 27 2 19 29 20 20 2 10 38 28 37 17 29 31 30 38 3 2 13 10 31 34 13 39 23 34 24 23 38 24 32 28 22 31 33 32 14 22 33 5 17 2 22 9 18 36 17 25 26 22 30 18 11 15 7 16 28 14 10 22 29 20 3 9 16 2 25 12 1 15 7 30 16 12 7 13 33 3 1 25 26 16 20 5 25 35 3 24 34 24 23 6 27 12 40 3 11 31 18 24 1 28 33 5 40 39 7 21 31 22 7 5 2 15 24 23 18 17 13 14 16 34 39 27 36 23 33 31 20 24 22 36 18 5 28 2 26 37 19 16 20 13 16 20 24 6 35 18 20 21 39 24 25 26 39 31 28 38 17 6 30 10 25 24 4 30 16 27 25 5 33 17 38 36 12 17 28 15 17 23 16 40 34 19 13 40 13 31 22 9 20 15 2 36 18 2 39 31 21 35 8 29 27 11 16 15 37 15 21 29 4 19 17 28 13 39 22 20 40 14 8 26 19 22 26 29 20 26 14 5 35 7 14 15 21 19 13 28 13 5 13 31 35 36 24 8 39 38 24 9 38 29 17 39 25 37 29 17 7 22 19 32 1 8 15 31 3 23 18 10 30 13 22 26 25 2 13 13 5 19 1 33 27 20 10 40 16 15 10 30 5 19 21 39 12 28 3 31 8 10 25 39 8 4 13 28 27 12 40 16 11 23 33 23 29 33 36 4 26 7 21 2 20 9 4 27 28 24 37 15 15 7 20 25 14 18 25 37 20 34 4 9 13 24 1 33 4 16 3 17 29 35 40 36 21 21 38 12 11 40 1 11 25 5 22 38 27 38 11 37 20 18 36 32 21 11 2 13 22 26 1 13 9 18 24 36 10 29 2 30 6 8 8 17 31 11 13 28 28 33 40 3 13 11 36 21 30 24 26 5 27 15 29 21 28 2 3 2 5 14 40 32 21 28 26 39 14 8 21 23 3 22 16 18 4 16 27 33 23 37 35 4 28 39 20 8 19 37 13 40 5 19 35 21 31 33 17 36 15 18 38 12 28 9 16 14 22 8 15 17 29 21 34 7 26 37 19 40 19 2 40 37 28 34 23 17 39 10 27 12 22 4 18 27 22 29 19 35 13 35 21 17 2 23 18 14 33 33 34 31 28 13 1 2 24 39 13 31 10 8 22 32 25 18 31 25 32 20 27 25 20 32 32 30 16 15 20 29 38 11 32 11 38 31 39 16 34 1 17 9 32 14 23 22 12 22 35 18 29 32 1 12 7 8 37 22 9 27 37 6 40 16 37 15 10 33 23 29 28 23 4 6 28 12 38 19 40 26 14 16 16 5 5 20 16 37 29 30 38 24 24 9 21 5 30 14 32 11 16 30 9 11 27 6 2 35 18 26 4 21 26 28 7 37 21 6 8 32 14 23 1 9 7 12 9 16 32 27 24 3 32 18 26 24 4 16 34 18 3 25 33 14 15 31 20 11 21 29 13 7 2 5 10 37 15 22 3 39 26 27 40 7 21 18 22 23 10 33 10 18 15 20 22 15 10 35 38 15 29 5 29 8 15 1 26 27 33 3 17 34 29 2 9 13 9 25 10 22 38 20 17 31 24 31 29 27 37 30 16 28 28 1 33 30 16 6 14 14 16 32 20 4 18 4 4 6 34 26 21 9 10 13 28 14 32 31 19 37 11 24 21 8 3 18 35 34 18 37 37 19 14 37 25 27 33 9 39 35 37 30 18 15 7 40 13 32 8 23 25 28 35 26 31 6 8 30 26 32 3 30 26 29 3 28 31 14 33 5 9 40 14 8 28 2 15 8 18 36 19 23 31 27 33 1 11 12 8 17 8 20 5 34 4 32 8 25 3 21 35 11 33 22 3 1 18 1 29 30 11 21 13 21 9 16 21 4 16 12 18 14 1 29 2 11 9 20 32 20 27 8 31 15 32 14 21 10 29 16 18 34 8 35 6 23 13 18 7 21 21 25 33 7 9 19 29 37 35 15 31 12 24 11 16 32 37 6 34 29 10 40 33 25 37 4 16 22 16 8 33 14 8 26 19 30 6 24 9 26 23 30 21 16 34 8 21 29 39 15 15 13 3 7 30 35 33 22 25 19 10 22 35 8 7 17 34 9 11 24 19 1 7 11 7 5 34 19 34 20 7 27 4 21 19 25 7 33 38 16 37 18 37 37 5 22 2 20 13 8 4 2 16 11 39 12 22 33 8 18 7 9 26 11 9 29 25 2 24 40 15 10 7 31 1 22 22 12 22 8 20 6 18 36 32 31 40 19 9 16 29 9 32 29 19 3 39 35 22 16 29 28 19 34 25 2 20 12 19 34 31 39 18 3 37 21 5 17 25 36 1 11 26 9 29 40 4 30 20 6 19 28 39 18 37 37 35 11 35 27 8 35 27 8 34 11 26 25 33 14 3 28 7 8 6 7 39 30 6 3 8 19 30 27 36 9 3 2 25 14 17 2 24 28 6 13 7 17 16 34 19 9 29 16 40 32 31 24 12 36 32 18 10 30 7 27 27 36 5 2 1 16 4 7 9 12 23 27 22 15 29 31 11 11 40 12 35 38 4 14 3 27 15 5 11 25 6 17 17 21 6 37 18 12 7 25 35 11 26 22 7 5 10 21 30 30 15 28 29 8 5 33 34 8 20 40 13 16 16 21 10 17 7 23 5 35 40 5 25 37 26 36 4 35 4 34 16 1 6 10 9 34 34 10 8 27 14 6 3 36 10 2 10 39 20 9 19 21 14 32 11 8 24 23 14 13 33 13 16 8 38 37 17 19 28 20 40 14 4 14 15 21 37 1 31 39 39 8 39 6 33 18 29 33 31 14 38 8 12 11 20 12 32 36 34 1 7 32 31 38 15 13 25 4 36 4 9 28 35 19 21 26 40 24 39 37 35 20 22 38 1 31 39 37 37 37 9 26 18 25 7 16 33 20 20 29 1 14 31 12 15 20 5 39 14 34 30 17 34 33 21 32 10 26 15 18 38 36 22 30 5 35 21 17 27 23 4 5 26 15 25 28 25 20 11 12 39 25 15 4 3 39 33 35 22 24 25 24 2 16 29 35 40 18 10 3 7 36 3 2 25 10 25 16 19 16 11 30 33 4 33 13 4 7 19 11 28 2 26 37 22 35 32 5 6 8 36 33 30 20 28 9 9 32 5 13 12 30 8 32 10 39 11 24 32 11 9 24 40 10 30 32 20 26 24 16 16 36 25 34 18 32 9 36 40 35 31 17 34 12 25 18 3 19 24 23 29 12 12 37 32 24 22 9 9 8 29 8 2 25 40 31 9 33 19 15 4 35 34 3 14 15 2 15 10 7 11 29 32 22 24 19 22 12 14 17 19 19 23 6 18 38 34 2 23 27 19 7 9 11 38 33 21 28 13 3 31 17 5 2 11 28 3 24 8 5 25 12 21 4 2 26 37 35 20 20 32 17 23 16 11 37 29 21 21 16 3 4 29 28 24 8 29 6 18 40 13 34 17 9 18 14 8 19 34 1 16 1 34 24 25 38 5 7 29 4 26 19 34 16 20 36 34 17 20 12 39 17 19 8 17 26 1 38 8 38 34 14 25 3 25 2 39 8 21 27 24 15 7 11 27 33 33 1 33 40 26 11 12 38 7 21 5 20 28 4 14 1 28 16 14 18 28 37 32 4 22 24 40 36 20 12 15 26 7 9 5 27 21 27 6 4 12 10 17 11 8 23 15 6 21 26 27 13 15 4 37 25 15 14 26 22 9 38 18 33 28 20 34 22 28 2 19 23 9 26 30 20 33 4 7 27 38 2 15 14 26 31 32 7 27 20 3 16 12 2 35 23 6 22 1 1 20 21 7 34 29 18 32 18 7 15 24 38 10 27 12 13 40 26 39 21 10 29 21 33 16 3 14 34 35 15 27 25 16 35 34 17 38 36 8 30 8 12 16 16 13 38 29 19 30 28 10 12 7 10 9 9 4 18 34 28 29 18 5 31 30 22 39 26 38 35 4 36 29 20 21 39 11 39 38 9 35 5 27 26 34 16 3 28 10 21 24 24 7 13 32 32 32 25 38 30 39 28 31 3 25 4 6 13 1 36 23 16 27 13 1 19 25 12 19 25 21 22 33 37 26 31 31 31 7 26 16 34 1 39 18 14 7 1 39 5 4 13 18 38 19 33 11 14 21 40 28 29 29 16 23 37 16 21 32 20 40 27 29 7 3 4 10 19 14 19 23 20 40 3 17 39 10 12 33 23 34 30 39 32 28 39 14 40 40 19 6 18 19 10 8 12 10 25 14 6 29 22 4 33 35 9 16 3 26 39 36 1 18 35 32 1 37 10 35 39 9 21 23 40 7 26 22 34 20 19 20 21 40 8 37 25 22 34 21 27 35 10 38 27 39 27 38 6 23 25 7 17 3 6 22 24 8 40 26 24 34 3 27 31 40 22 21 12 26 23 25 26 5 19 1 10 3 38 39 13 40 32 19 10 4 3 29 3 9 1 35 9 34 1 8 16 7 34 8 18 3 39 35 26 36 16 40 40 28 30 10 38 9 27 31 13 10 9 13 13 23 22 24 35 19 20 6 12 7 19 37 23 33 19 14 38 3 8 14 10 5 27 5 11 5 33 36 34 28 39 3 25 4 37 40 21 6 16 21 9 17 8 16 39 34 28 5 33 27 4 33 17 37 37 18 22 20 32 39 5 4 3 17 31 39 14 15 12 23 17 21 6 17 3 25 32 32 39 19 25 39 4 40 40 28 25 32 18 18 15 23 18 16 27 31 33 19 18 12 13 19 36 21 24 23 28 11 5 25 2 19 18 23 13 25 39 6 8 14 24 30 13 22 21 38 22 40 12 29 3 40 14 17 15 26 10 18 2 12 12 21 31 40 36 7 33 34 19 13 7 22 7 40 7 23 35 9 34 5 9 37 2 11 10 13 6 30 13 6 29 2 29 25 15 11 34 24 22 1 22 27 9 1 22 28 25 35 39 40 3 15 22 13 11 8 3 18 39 38 21 29 39 8 3 29 6 13 18 7 22 14 14 32 18 2 4 29 2 31 11 32 27 3 17 23 32 18 29 17 36 28 30 39 10 29 29 25 23 9 17 15 17 12 15 13 23 25 32 29 9 25 37 40 19 14 4 15 37 22 28 37 6 13 13 5 12 26 26 8 13 5 36 28 2 9 29 23 35 15 19 1 23 21 37 35 20 3 39 5 25 4 27 30 34 30 34 15 20 18 30 33 3 13 19 30 12 32 31 22 24 30 8 17 22 24 16 1 3 21 31 30 4 25 36 21 9 37 1 29 9 7 19 27 17 20 12 24 6 35 18 35 30 32 7 4 10 11 31 18 30 10 39 18 38 10 24 10 27 31 15 33 8 18 19 37 8 39 24 37 5 14 23 34 19 37 24 15 27 15 8 30 24 15 18 16 28 6 4 34 5 34 24 6 29 6 30 14 24 22 2 36 36 20 1 20 5 26 5 20 19 2 39 40 36 2 26 28 22 32 32 20 24 35 4 35 2 8 37 20 7 30 19 28 24 1 4 7 26 26 8 29 29 31 8 35 24 5 1 14 7 15 4 7 26 9 28 19 17 27 36 15 26 12 35 20 25 20 23 4 12 14 27 32 2 30 7 16 39 24 28 6 13 27 7 32 2 15 15 24 9 33 36 17 21 21 11 9 2 1 22 9 16 29 36 25 25 26 36 24 17 29 38 13 17 8 39 34 13 1 9 40 11 38 27 20 15 23 37 13 15 8 14 28 35 13 32 21 6 16 1 6 36 12 39 17 29 18 32 1 34 30 35 17 25 10 20 7 36 5 14 39 3 26 3 11 16 11 40 12 6 31 39 7 15 40 39 17 26 36 32 35 4 24 33 12 8 38 29 8 30 9 27 27 9 21 3 3 33 1 18 13 37 32 25 11 23 35 34 11 20 22 6 18 13 32 39 26 5 10 17 10 25 30 30 4 1 5 36 35 7 18 25 21 24 16 9 13 17 39 8 38 39 37 16 37 34 23 36 23 11 9 6 25 5 23 2 23 17 26 36 3 6 34 27 13 23 31 24 14 32 5 5 23 39 34 22 26 40 21 20 11 40 13 11 18 25 9 17 30 11 14 12 28 2 6 26 21 9 12 1 6 12 6 35 13 30 12 14 16 5 7 24 18 18 28 26 27 20 22 28 2 22 35 21 2 21 39 36 33 5 9 40 6 12 33 3 31 11 12 1 13 36 20 39 15 10 24 1 9 16 4 5 14 36 15 5 9 29 23 9 18 2 36 36 12 28 23 23 16 11 16 21 6 31 20 29 34 10 2 3 24 39 12 16 11 34 9 24 31 30 16 18 3 28 22 27 13 26 26 21 11 6 4 14 38 10 4 12 14 16 32 4 31 28 5 2 9 24 11 19 25 5 38 25 33 13 13 31 9 29 19 10 6 34 9 38 36 13 4 13 32 21 2 16 35 25 21 29 19 18 37 24 22 26 34 39 7 6 14 40 21 3 10 5 11 13 13 12 10 24 17 7 19 13 25 20 35 17 13 6 32 24 9 39 17 19 34 15 24 27 10 9 14 19 2 3 5 33 24 33 30 29 38 36 5 40 9 31 37 21 29 21 7 5 29 23 36 34 13 38 36 33 32 17 9 39 11 12 8 33 40 2 6 15 35 22 15 25 8 27 10 34 23 34 35 4 7 3 8 32 32 39 24 6 30 33 20 21 1 11 33 39 22 9 33 18 35 32 4 8 18 2 40 14 34 21 13 13 12 35 17 40 39 37 1 6 1 17 8 36 13 39 11 32 31 32 12 20 18 10 3 14 15 18 32 38 26 7 25 28 20 9 23 3 25 2 31 2 7 13 33 22 8 37 7 32 1 38 31 14 28 35 15 11 22 22 6 26 2 5 25 6 39 4 33 7 32 14 20 36 18 17 40 27 5 13 33 9 17 2 32 3 26 33 32 2 24 2 22 8 36 15 28 12 14 15 10 9 7 34 7 28 40 8 29 18 6 39 16 9 12 21 5 35 34 16 5 32 19 1 2 27 30 25 26 19 29 5 6 25 40 16 8 29 24 6 33 36 4 13 38 2 15 19 7 39 16 29 13 15 10 31 24 33 25 9 13 38 35 34 40 7 28 11 10 6 19 1 31 27 28 36 8 40 32 22 18 8 31 21 17 33 34 30 1 33 4 21 28 11 12 40 38 38 21 2 39 14 19 21 30 27 27 32 7 16 7 6 25 27 25 12 21 33 2 29 28 22 24 19 24 24 7 36 37 32 12 25 32 15 31 29 33 21 23 25 29 1 6 3 32 31 25 1 8 4 24 12 16 29 25 14 4 34 29 26 32 23 3 2 35 8 2 30 19 19 36 21 32 24 14 34 14 18 30 19 7 7 40 5 20 19 8 20 35 12 28 40 20 21 30 14 22 7 6 30 19 2 18 24 16 22 21 19 26 1 16 6 4 18 23 6 3 28 6 39 5 13 30 27 10 15 22 37 36 39 8 36 3 5 11 2 39 37 14 31 29 14 13 8 27 29 34 7 27 17 10 8 3 38 4 18 3 18 10 8 22 10 8 27 20 20 3 21 37 5 18 33 13 24 40 11 38 20 19 1 39 37 11 28 33 17 4 15 8 12 17 22 17 31 32 17 6 29 35 1 40 4 31 21 16 22 25 32 6 12 4 13 33 36 30 28 13 18 12 4 40 21 28 27 30 19 2 15 20 25 25 16 15 10 24 14 33 25 12 28 16 24 3 32 10 16 21 37 35 27 4 15 30 12 16 15 17 40 18 23 17 15 7 14 8 17 24 24 21 3 5 32 2 37 8 27 40 26 32 10 30 22 37 11 1 26 7 39 9 34 5 7 38 14 26 4 34 11 12 9 31 24 25 39 6 28 28 22 21 27 12 7 4 23 25 40 38 32 14 15 10 3 27 22 14 11 32 20 31 21 33 17 21 13 8 6 27 4 11 28 16 2 39 29 30 1 36 2 26 18 27 32 26 5 4 5 6 9 8 9 15 25 11 35 1 5 16 2 36 20 14 34 21 23 17 22 39 11 24 33 17 37 3 31 21 31 20 30 25 25 3 7 10 38 22 29 34 16 34 24 3 23 36 6 21 19 7 34 30 22 6 17 4 33 8 1 4 12 29 17 10 35 20 23 6 6 1 33 2 22 34 28 2 14 36 21 23 4 32 22 8 26 8 40 22 30 39 35 21 8 23 4 28 36 30 31 21 15 16 34 23 30 14 2 5 34 3 28 17 17 7 20 18 22 23 5 5 21 19 14 36 18 39 5 13 8 25 30 5 36 37 15 22 4 26 4 10 23 11 38 37 24 15 4 2 7 35 12 36 1 10 24 37 4 21 24 26 31 19 32 35 30 3 15 1 36 30 16 6 15 15 21 6 30 16 21 24 35 18 36 37 25 9 12 21 21 10 26 13 34 40 5 1 20 37 13 26 18 21 18 40 8 2 29 19 37 22 26 40 17 12 40 29 31 21 17 21 10 36 40 14 18 25 29 16 24 9 18 2 34 2 2 20 35 8 21 7 26 13 15 24 1 21 3 33 11 34 28 4 17 14 32 10 13 12 28 40 35 9 17 30 26 5 23 19 35 19 38 27 28 3 22 14 12 7 34 37 27 8 15 24 32 31 24 39 24 30 21 34 19 20 18 37 3 40 29 29 14 12 29 15 22 24 10 33 16 25 22 18 24 11 23 12 18 17 33 8 26 33 36 31 35 29 20 6 19 36 3 4 9 9 34 19 26 27 5 40 9 25 20 24 26 33 5 13 2 12 5 39 14 4 17 40 30 37 6 18 35 38 26 1 22 25 30 2 22 31 21 7 29 5 11 26 21 24 8 38 2 23 15 28 29 6 13 2 18 25 2 31 36 32 27 17 39 23 19 28 2 39 34 27 21 16 21 26 7 36 12 18 20 18 29 15 28 28 21 14 24 25 6 17 15 29 15 40 14 11 15 2 36 16 16 21 16 4 14 18 19 6 28 25 10 15 29 18 40 14 21 18 11 37 16 39 30 4 36 21 10 10 4 13 19 29 31 31 34 33 3 19 26 4 15 19 14 34 10 34 2 2 21 13 9 7 23 38 25 39 33 27 40 2 14 12 6 14 13 38 15 16 11 32 3 18 31 2 15 2 4 12 26 3 36 30 9 2 32 18 2 16 22 37 37 7 19 28 34 35 22 40 5 18 2 25 2 17 32 39 25 36 34 9 3 26 30 36 22 9 27 26 30 39 29 36 34 12 34 31 38 31 14 40 6 6 37 23 16 15 15 40 30 8 11 18 38 32 26 13 16 5 32 12 27 22 11 39 11 8 38 4 1 1 11 29 21 34 10 6 37 3 7 15 5 21 15 32 4 28 6 29 39 22 35 31 28 39 16 20 36 36 16 40 37 18 22 2 10 2 10 2 11 17 10 21 12 12 36 30 37 32 33 12 6 32 35 35 27 37 39 38 39 25 4 9 25 26 25 37 16 22 25 7 30 19 3 17 40 30 29 17 27 6 25 24 11 1 36 9 29 38 28 19 40 2 7 29 14 25 20 14 17 10 22 24 11 35 23 20 35 38 1 26 12 11 23 14 34 33 34 26 23 33 6 13 10 39 37 4 22 14 26 29 28 26 24 5 13 26 24 7 33 28 39 18 38 15 33 23 9 17 11 5 21 9 20 25 22 35 15 20 14 30 7 2 25 18 25 28 15 3 35 33 32 31 18 37 15 35 28 18 36 27 39 9 35 25 37 6 34 4 39 29 25 20 38 9 24 34 34 36 34 22 38 5 12 22 20 14 21 18 33 9 27 36 19 34 32 34 23 20 33 26 24 19 31 28 6 40 7 3 1 7 28 21 19 5 31 30 4 35 36 24 30 39 3 25 35 35 13 12 20 27 24 35 7 14 17 16 8 20 39 24 10 33 38 33 13 11 24 20 28 26 30 29 38 27 38 17 32 32 27 19 13 11 17 28 5 7 35 2 24 24 14 21 21 30 18 21 20 31 15 22 39 23 29 1 2 28 6 32 29 9 19 28 11 20 33 6 25 23 37 29 20 31 38 6 30 29 34 14 3 2 9 26 18 7 5 26 32 18 27 9 18 32 9 13 38 20 10 36 29 10 4 4 32 39 31 29 38 40 24 17 7 35 3 38 15 26 36 15 15 9 19 29 37 19 38 17 26 12 3 38 31 24 26 23 35 2 36 15 5 10 6 33 16 26 40 26 17 29 6 27 23 21 23 11 24 40 26 33 4 32 25 26 23 17 30 23 24 4 15 31 29 18 18 4 13 19 22 18 27 26 9 32 29 26 17 9 23 4 19 10 39 7 33 5 19 26 1 11 12 36 28 12 15 6 11 37 11 21 40 28 39 20 24 40 31 8 13 13 33 33 13 10 19 24 7 20 23 26 9 32 9 35 38 26 17 8 9 1 27 6 21 6 25 14 40 11 2 23 25 18 14 11 29 38 13 13 4 21 21 33 14 30 18 34 5 4 32 10 21 17 10 18 22 31 25 3 20 6 28 31 14 31 8 17 28 30 29 31 28 8 23 31 25 28 39 26 29 37 37 30 6 13 38 7 9 19 4 1 9 38 13 31 18 8 15 1 35 25 9 31 16 36 14 8 30 13 23 20 25 33 5 5 22 11 39 11 3 2 12 28 25 24 18 32 34 21 29 22 39 3 11 16 31 35 40 32 28 15 2 27 20 3 8 5 37 9 11 32 19 7 4 7 11 20 25 34 30 14 15 37 13 28 6 10 12 13 5 34 34 26 14 25 32 15 17 28 26 4 23 25 37 29 32 39 34 4 15 22 37 5 7 10 11 12 22 27 13 18 37 27 29 7 2 7 19 30 40 15 26 18 11 5 28 21 34 32 39 34 5 2 8 19 22 24 9 34 16 19 32 9 27 13 13 10 21 29 2 17 10 37 23 2 26 8 26 19 37 1 32 12 20 39 39 23 3 14 24 19 37 35 12 29 23 4 26 18 35 25 12 2 34 24 33 23 5 37 6 4 35 6 5 29 31 27 27 22 15 38 6 25 10 15 18 13 8 12 20 12 31 19 29 26 16 2 27 19 8 16 25 29 29 2 16 13 6 19 39 18 1 21 14 29 14 28 27 14 16 13 31 1 25 11 29 29 33 38 7 6 14 6 2 40 23 9 31 4 6 21 33 25 30 3 31 26 38 15 10 7 35 33 39 9 10 26 34 12 19 21 8 30 15 6 20 12 13 25 21 23 28 32 38 25 35 20 19 39 3 23 30 29 11 29 40 11 31 20 13 32 37 1 24 21 6 24 7 35 39 2 36 16 32 9 3 32 37 7 4 6 35 28 39 13 24 33 8 33 21 23 24 25 14 8 21 4 28 30 6 21 16 10 18 10 38 8 29 23 13 3 24 2 24 12 2 26 36 10 18 6 15 16 18 2 9 25 6 2 8 19 17 31 25 4 18 32 27 21 22 17 35 8 1 38 31 19 3 38 28 28 15 4 13 38 14 6 14 7 38 30 18 39 38 16 4 5 1 20 7 6 30 32 36 30 31 40 9 39 14 19 11 13 38 22 1 1 33 32 26 3 7 7 22 38 18 29 26 31 29 32 28 9 39 36 34 19 6 10 6 8 10 8 1 33 10 20 7 4 10 14 35 21 37 18 37 32 29 24 31 40 35 18 13 23 21 28 13 16 2 29 33 21 35 26 9 2 19 32 14 13 11 31 12 29 14 8 7 37 20 7 27 37 34 7 31 31 22 12 16 36 18 10 6 18 2 32 20 36 35 20 22 10 15 32 19 1 8 31 21 35 8 2 29 26 39 35 7 1 18 10 35 9 34 32 9 19 15 40 26 5 40 36 19 20 14 23 32 39 15 26 37 30 1 37 22 5 38 10 37 35 16 39 3 5 6 13 3 7 34 27 6 6 9 19 12 13 17 38 34 40 32 23 7 34 1 14 15 26 28 28 15 25 2 21 32 34 13 30 29 33 14 30 16 22 20 1 13 37 3 31 13 1 14 11 11 34 1 21 40 24 34 23 2 25 29 40 20 39 9 36 16 18 35 36 33 13 1 16 25 18 38 31 4 18 18 14 6 3 5 7 5 27 24 1 31 8 23 22 23 23 27 8 21 11 6 12 32 36 7 23 14 30 2 35 11 27 8 34 14 12 10 14 39 37 21 3 12 13 23 1 38 38 35 2 26 3 4 38 6 25 19 15 40 2 2 1 25 18 10 8 13 15 36 40 36 34 19 26 39 32 16 5 4 11 12 29 2 28 5 35 18 22 3 37 22 37 23 37 15 10 9 6 18 22 33 39 35 24 14 17 40 35 29 16 14 12 10 7 17 22 40 27 16 11 16 12 38 8 29 3 40 35 23 32 20 1 17 4 4 23 5 11 33 5 31 39 3 6 6 35 33 4 33 17 21 9 3 40 24 39 18 6 4 27 15 9 34 23 17 34 15 25 26 31 29 34 30 10 27 17 12 16 6 24 12 24 24 23 1 33 1 26 23 37 21 14 38 17 12 8 27 13 14 3 35 33 15 9 30 24 12 25 40 20 24 15 26 26 39 17 38 32 22 4 12 40 39 37 12 32 1 29 4 13 40 10 19 34 31 13 37 7 27 5 12 23 21 19 3 31 15 5 6 14 36 4 34 31 20 21 20 12 5 32 6 31 20 14 1 38 7 35 1 10 35 14 37 14 14 28 34 38 24 8 32 34 16 8 3 40 8 15 5 32 17 38 25 16 17 4 15 36 29 34 23 31 38 31 33 24 3 17 15 20 37 4 17 24 30 40 37 14 7 10 40 11 22 12 31 18 36 18 25 23 24 8 7 27 24 7 17 22 13 20 29 6 30 6 29 18 27 18 7 22 28 28 34 11 36 39 19 23 29 38 30 10 11 12 22 3 40 13 12 19 33 17 31 22 28 20 11 25 25 3 15 10 25 25 13 5 11 19 24 19 2 12 29 9 22 9 20 5 39 16 14 6 39 40 37 22 6 22 18 9 19 38 38 10 20 34 30 12 3 29 4 27 5 13 15 10 3 32 15 4 25 34 5 20 39 2 27 11 21 15 30 39 2 25 38 36 8 22 8 26 6 16 29 34 19 36 15 2 26 23 11 28 2 21 18 14 22 26 11 24 33 31 26 26 2 1 29 4 15 2 29 27 19 10 14 39 29 39 27 31 34 20 6 38 11 40 5 2 38 10 26 17 2 5 7 20 29 10 38 13 36 15 18 10 29 20 14 31 14 35 15 29 14 38 40 16 7 9 33 11 31 12 14 30 16 22 31 36 28 16 29 19 20 37 20 26 25 6 27 13 19 28 8 12 3 23 12 31 12 13 10 37 25 29 32 21 2 11 5 5 35 5 19 4 17 26 33 18 34 25 37 18 38 17 4 3 39 15 25 38 1 1 2 3 31 31 23 13 37 16 26 21 29 27 8 4 17 16 40 17 23 31 17 36 11 12 16 38 31 19 29 12 23 31 27 26 4 12 1 15 35 31 16 2 14 30 34 2 28 2 14 37 15 24 5 4 3 7 30 37 2 8 23 12 25 8 35 7 28 39 17 17 17 22 23 23 8 21 38 34 28 14 27 5 12 9 5 1 27 2 35 35 29 21 32 30 36 8 10 4 18 11 9 40 30 13 3 30 3 14 5 18 25 39 18 17 5 22 32 11 27 39 34 26 15 25 20 3 27 20 8 5 19 6 38 35 35 29 2 21 40 12 8 17 5 11 26 10 19 3 26 8 15 35 4 32 12 26 22 24 15 35 22 39 13 31 20 1 10 31 19 29 26 35 35 28 17 33 17 12 30 35 18 39 16 8 39 4 33 32 23 31 28 20 4 16 36 9 18 21 21 4 17 15 11 7 10 15 1 26 5 22 1 37 20 7 36 21 30 28 26 4 37 23 36 17 14 14 1 14 6 26 27 19 39 29 10 12 29 38 9 11 31 9 7 33 28 24 25 17 6 33 38 35 2 11 1 40 8 40 23 1 4 38 29 27 39 40 1 3 29 36 33 12 16 12 13 14 3 22 12 12 2 27 8 26 12 15 10 4 26 34 26 4 1 38 16 18 23 4 15 29 25 15 32 4 39 1 38 8 4 19 40 6 38 33 15 3 22 29 15 24 24 14 31 33 6 28 9 31 3 28 15 25 16 29 28 35 33 30 25 36 18 3 27 28 39 6 33 5 27 38 36 5 38 30 29 19 23 33 26 37 39 12 15 26 24 25 33 36 14 30 19 11 6 15 27 30 4 16 32 31 24 17 19 12 36 39 24 24 10 25 18 37 28 36 14 31 2 4 11 35 14 20 20 14 18 1 13 26 1 11 3 26 40 36 11 2 5 25 16 39 9 20 39 35 2 4 27 8 3 26 36 39 29 9 30 31 34 33 21 11 26 39 23 37 4 36 7 37 16 15 14 19 29 31 3 39 20 34 17 17 30 34 38 7 12 30 27 12 29 36 34 21 15 22 4 31 32 9 38 4 17 33 3 23 12 29 31 4 21 10 9 19 35 29 29 6 39 21 23 28 29 13 28 11 26 16 18 6 25 19 1 34 38 6 24 27 40 30 27 5 39 7 30 17 15 13 14 24 14 17 8 4 5 4 1 33 7 21 18 24 19 12 27 1 35 7 32 34 8 13 32 5 23 36 7 17 38 3 15 10 2 15 27 34 16 13 13 15 13 4 10 9 7 5 27 7 15 3 17 1 10 3 10 34 33 35 17 2 18 15 20 29 15 13 36 19 18 33 24 35 1 1 30 29 9 35 12 37 35 20 34 32 33 22 12 14 14 11 22 14 17 20 25 9 11 16 6 10 3 33 30 38 31 13 13 13 24 34 31 24 17 4 3 33 28 2 1 27 12 36 2 2 38 7 10 13 38 30 5 14 10 16 25 8 22 25 38 23 33 19 12 22 30 10 10 11 34 40 18 26 28 4 14 3 20 24 40 2 37 22 22 34 40 8 5 32 16 23 18 29 32 17 37 39 14 29 8 29 12 32 1 25 12 19 39 18 33 27 28 26 26 20 23 40 28 12 28 21 32 25 34 6 13 25 22 3 30 14 30 17 22 14 10 29 34 39 23 13 7 38 7 9 39 7 5 15 2 10 6 14 22 36 33 15 20 13 7 38 19 35 5 7 30 28 10 37 14 16 28 12 8 11 19 3 23 35 2 32 12 14 34 32 2 8 31 10 12 12 22 23 12 28 8 26 7 20 9 37 38 9 16 23 27 18 22 5 12 5 35 14 39 17 26 11 25 15 24 32 14 16 3 40 30 1 37 32 33 9 18 40 35 36 34 12 15 21 11 1 34 39 38 24 34 25 7 29 27 25 25 24 1 1 7 36 37 2 17 34 31 32 6 36 18 14 29 6 14 1 39 24 35 24 9 20 20 22 35 37 40 10 39 25 18 2 24 25 10 27 30 17 19 19 3 17 19 35 3 12 15 3 38 15 25 11 7 26 26 4 33 38 4 39 27 39 22 10 36 13 35 39 20 32 21 32 34 11 8 16 25 8 39 34 38 36 19 15 6 10 23 32 40 6 35 3 20 36 39 34 18 30 37 39 36 23 33 23 40 7 39 19 1 24 19 33 31 20 24 18 24 22 15 30 3 27 6 24 10 16 25 18 14 29 22 2 2 5 20 33 3 9 33 5 39 36 15 26 9 17 37 13 17 38 39 22 6 37 35 18 33 28 17 7 7 28 33 21 30 5 15 7 25 34 37 38 22 34 16 19 23 1 22 14 31 1 35 2 37 39 31 22 14 24 27 22 28 33 5 40 26 21 10 27 1 32 22 7 1 36 31 31 8 17 26 1 9 35 10 39 19 32 8 2 40 36 27 12 22 11 37 33 4 5 36 19 40 6 28 15 16 36 30 14 17 4 2 39 10 40 26 32 33 37 14 13 12 4 38 38 27 37 8 36 26 24 2 17 38 16 40 22 32 39 15 35 38 16 8 35 20 12 9 15 26 25 2 29 9 14 39 10 17 31 9 8 30 21 13 29 13 3 38 5 10 17 29 7 34 22 10 36 18 1 32 39 22 15 20 40 12 35 12 2 34 17 40 8 11 34 11 5 28 19 6 29 34 20 32 4 8 3 32 14 35 20 24 6 14 15 4 23 23 8 13 32 37 36 8 10 11 34 26 1 9 20 21 30 22 29 2 2 11 17 7 13 12 18 38 11 38 5 31 39 27 25 5 12 11 4 33 10 20 37 34 4 2 9 28 38 14 13 36 26 34 19 5 1 15 28 4 3 23 36 7 4 36 39 15 12 7 9 8 24 8 39 2 3 4 1 13 14 21 40 26 29 9 23 8 30 37 29 7 29 29 7 18 32 37 23 3 29 33 26 28 4 26 6 8 4 10 3 13 30 35 22 9 9 9 10 31 7 19 32 33 17 11 37 31 35 31 18 33 14 10 13 15 34 31 15 16 2 40 23 13 29 25 19 39 38 30 33 39 34 35 25 26 27 13 26 3 26 35 27 33 21 14 28 12 3 18 6 9 16 33 26 9 7 35 1 38 12 24 33 3 20 24 39 29 16 33 2 11 30 34 25 35 16 24 7 34 8 5 32 22 35 23 26 9 26 40 5 1 36 7 37 35 33 25 31 24 18 19 16 29 30 19 35 7 17 1 40 19 20 19 10 40 22 16 22 7 5 12 25 32 39 6 16 18 27 27 35 18 6 8 28 7 11 7 9 8 14 9 17 8 23 17 28 34 14 27 19 26 39 30 6 15 3 20 16 23 15 3 29 38 22 22 35 17 16 38 25 37 5 39 6 35 14 11 14 29 39 35 19 25 31 33 36 8 5 22 6 20 8 31 15 20 22 22 15 23 21 2 15 12 18 8 25 36 25 8 4 6 11 40 16 7 33 28 12 32 20 32 37 8 12 1 4 38 30 28 35 7 38 13 16 37 4 15 22 29 38 6 21 10 14 40 37 8 15 19 11 19 9 11 17 10 22 23 28 29 10 35 14 37 21 4 31 15 13 12 22 11 8 3 39 22 29 14 30 23 11 22 19 10 12 10 8 11 8 27 12 27 39 34 9 28 21 20 17 13 40 34 34 27 26 40 33 28 33 2 7 17 32 8 21 2 3 9 24 24 28 6 2 10 1 16 8 39 35 30 30 28 38 4 30 5 38 34 22 14 35 20 34 16 21 7 34 16 39 37 24 26 18 17 38 16 29 21 19 7 35 4 23 11 37 26 12 2 25 23 24 19 26 33 3 14 21 14 7 30 36 11 20 19 17 38 11 26 7 39 13 19 32 34 26 13 31 18 6 35 10 8 1 24 1 22 1 35 27 6 13 8 22 36 20 33 12 4 12 29 27 30 33 30 2 28 6 2 23 12 27 21 36 13 28 16 40 37 16 28 13 20 39 12 10 31 36 23 21 27 17 29 26 26 13 38 34 27 9 30 3 25 37 16 35 28 6 36 13 30 14 33 37 35 39 18 6 30 37 22 11 10 33 25 13 33 7 31 29 35 11 11 29 34 6 21 2 17 25 16 37 36 4 3 27 27 12 14 34 17 33 29 38 21 28 40 10 13 12 15 12 14 10 21 36 21 37 24 31 23 15 5 23 25 31 16 5 40 18 35 15 38 10 40 26 39 28 9 12 7 17 24 12 20 39 7 4 3 21 26 36 20 9 27 21 5 3 5 29 34 26 11 35 8 20 18 34 38 3 34 9 21 5 16 37 27 20 38 36 12 6 17 32 40 14 36 26 13 24 37 5 39 26 40 24 27 26 23 29 39 24 28 38 38 19 32 18 38 32 28 31 18 9 7 36 38 11 15 38 35 6 39 31 21 18 27 20 8 13 15 6 7 24 12 23 25 34 7 11 31 29 39 24 28 22 2 27 7 38 27 11 39 15 10 2 38 32 40 24 32 31 21 17 31 19 11 9 4 25 17 21 12 37 34 15 5 1 5 26 23 16 29 28 38 14 28 10 33 13 34 23 17 14 14 36 32 18 17 32 4 12 30 15 20 22 29 36 2 9 39 37 23 16 2 22 25 21 9 35 27 37 19 16 13 24 33 5 30 10 39 25 13 15 38 14 5 16 32 27 38 27 7 9 3 11 38 35 20 20 12 1 18 3 16 35 22 30 33 33 28 11 5 10 21 37 1 5 32 6 9 6 19 8 33 13 33 19 22 21 14 7 18 7 3 32 39 21 35 6 36 22 24 17 40 38 17 7 38 4 29 2 37 1 21 6 14 18 8 5 37 32 33 26 26 21 3 9 30 21 9 5 34 32 22 22 34 16 27 24 30 34 38 19 30 40 13 19 33 11 13 23 27 2 33 9 38 30 10 36 37 34 11 14 31 9 40 10 40 17 24 23 31 7 26 39 26 24 31 4 20 36 34 5 4 25 18 16 30 32 5 10 28 12 26 34 3 37 21 5 16 40 3 40 39 29 3 12 19 2 14 4 19 15 37 9 36 13 38 35 19 2 21 20 6 28 27 12 40 31 8 7 26 17 3 33 5 34 33 4 21 2 27 20 38 12 28 8 29 21 32 4 34 10 17 22 24 27 1 33 6 27 22 14 26 31 20 19 31 25 19 19 6 26 24 29 36 8 28 16 14 12 22 20 23 25 13 9 33 14 25 26 25 20 31 38 20 27 23 12 27 24 1 37 12 36 35 27 15 14 24 13 35 25 39 20 29 19 11 8 20 32 17 10 27 17 22 40 18 20 2 10 32 23 20 35 26 11 15 33 22 10 19 17 38 23 9 19 9 28 23 38 2 9 17 20 1 4 21 17 9 35 18 7 2 38 38 10 15 26 12 23 4 23 40 27 27 21 13 4 39 33 37 1 10 36 23 22 3 22 39 6 8 30 37 22 14 9 36 11 26 37 18 26 27 35 25 18 6 28 4 39 37 10 40 38 19 1 16 35 36 35 16 24 32 23 24 21 24 23 7 10 6 39 17 9 1 20 21 28 3 33 13 37 40 9 27 29 32 16 6 22 6 29 16 21 36 15 1 7 11 5 4 14 2 23 4 24 28 12 25 30 7 14 10 36 4 36 24 39 2 7 7 30 17 27 20 18 38 40 24 4 22 12 26 4 34 15 29 6 19 19 35 1 27 23 7 30 21 11 35 33 26 1 2 21 2 14 22 10 39 31 11 3 38 37 36 36 35 32 15 16 34 22 37 21 5 37 3 20 7 12 1 32 1 39 36 40 29 25 29 12 3 25 16 22 24 23 1 34 22 18 36 16 5 25 13 39 7 20 11 8 30 27 22 8 39 37 19 28 10 29 29 4 17 13 1 31 2 17 12 6 36 23 29 35 19 23 6 35 10 35 35 12 37 10 29 36 30 22 22 25 23 7 34 27 12 18 12 9 28 37 27 18 20 2 40 14 9 28 37 37 40 15 17 29 33 7 13 14 1 3 8 18 13 20 34 2 13 25 22 7 39 23 36 40 32 5 6 14 38 2 37 30 17 34 14 25 22 16 1 28 8 10 23 23 22 22 24 1 9 3 34 6 19 25 16 10 21 3 3 33 21 30 4 36 18 17 30 20 16 30 39 8 29 40 10 37 20 5 3 4 8 14 24 9 23 30 18 14 5 31 16 31 22 32 35 25 26 35 28 4 33 5 25 6 5 12 39 6 21 30 11 19 12 20 7 7 19 37 25 11 21 37 2 4 40 28 26 21 27 12 18 4 6 25 23 5 22 4 29 30 4 17 2 38 22 15 7 26 15 12 26 11 38 20 33 21 1 11 16 37 7 35 33 37 21 25 31 37 38 25 2 23 18 9 13 37 25 11 38 24 7 24 27 30 29 37 8 7 39 4 10 35 38 8 19 2 12 1 36 13 29 32 20 37 7 39 22 37 38 37 4 1 31 4 12 32 28 11 16 33 28 35 5 32 8 3 3 18 33 37 5 22 12 18 10 3 18 16 21 21 2 14 34 10 23 7 9 22 21 14 14 3 19 39 17 22 17 11 28 21 24 6 6 36 26 25 11 18 36 21 2 15 34 26 30 38 15 23 5 6 24 27 8 35 19 18 14 31 25 16 30 4 17 32 1 24 10 34 37 23 35 7 15 2 29 38 32 13 33 7 4 36 20 15 31 15 13 14 4 14 30 37 13 27 29 30 36 31 39 24 2 4 24 9 10 5 25 25 28 25 1 4 3 18 27 13 31 36 25 4 23 36 39 3 29 35 15 26 30 38 9 22 36 18 4 16 9 27 13 37 29 18 19 40 15 38 31 38 26 32 30 10 6 26 39 8 29 26 21 29 18 31 38 37 37 20 5 39 34 24 33 12 37 22 28 14 22 33 29 31 11 29 22 3 37 1 32 29 11 26 28 35 5 29 21 25 24 15 27 18 18 5 32 40 38 35 18 11 28 23 1 31 36 15 16 30 19 35 9 23 11 9 27 2 17 9 29 31 31 29 31 27 6 31 17 4 33 5 24 18 36 28 10 17 20 10 19 19 29 17 34 40 15 6 17 39 20 36 2 19 40 27 30 39 7 24 23 13 11 39 27 1 23 2 6 18 11 35 9 20 8 10 33 30 33 25 8 7 16 31 17 36 38 7 13 39 15 3 18 27 27 25 36 22 21 34 8 38 22 6 8 30 33 39 13 33 17 33 26 27 28 27 27 19 31 6 1 3 29 23 21 12 30 31 31 1 30 12 28 30 40 22 24 20 8 3 21 29 3 23 14 3 19 23 35 22 10 36 33 30 5 26 27 37 7 8 17 36 7 34 37 31 23 28 20 30 14 35 39 5 37 27 17 40 14 2 3 27 10 33 40 16 8 40 22 16 26 14 3 30 11 22 32 5 2 24 35 25 16 23 15 4 9 19 27 12 18 16 6 19 9 38 37 25 8 38 14 25 31 34 19 9 12 32 3 20 34 5 37 23 9 17 7 8 36 18 15 22 25 4 19 11 33 18 11 33 17 3 37 3 40 17 1 21 3 2 27 27 11 38 21 28 22 26 38 21 29 14 32 4 15 16 19 4 12 12 2 6 25 20 30 6 14 32 18 35 1 26 18 13 33 31 23 8 1 38 1 12 12 38 20 26 26 16 16 40 32 2 15 18 10 2 7 23 38 30 38 2 13 13 40 24 35 40 5 22 24 27 15 36 23 23 17 17 27 7 24 11 5 21 28 2 6 17 38 39 26 12 35 25 30 33 23 14 31 21 12 17 3 33 19 30 21 27 36 23 14 9 38 40 27 9 9 17 28 39 22 27 38 5 34 1 32 19 6 21 34 3 35 19 40 15 37 20 4 11 19 11 29 18 14 15 3 38 17 14 26 31 16 21 37 11 37 34 13 2 2 26 19 14 27 18 1 22 31 11 15 28 40 4 33 32 40 31 4 21 35 15 28 3 15 38 13 31 16 22 40 13 30 13 24 15 37 24 39 27 8 34 35 31 18 36 6 27 22 17 9 1 5 23 38 5 6 37 18 3 27 1 8 34 28 32 31 21 26 36 38 19 28 20 20 2 24 18 28 29 29 27 2 32 17 39 25 14 7 11 34 3 38 38 18 38 21 26 34 36 24 12 1 40 33 27 13 31 18 4 30 5 5 5 40 40 19 34 28 14 22 21 18 36 8 20 6 1 40 36 28 39 29 33 9 15 1 27 10 12 17 40 15 32 38 40 13 13 12 39 22 30 27 22 7 10 8 11 30 22 19 18 28 1 40 1 33 39 16 7 7 10 36 17 8 13 9 36 38 37 35 13 20 2 38 33 27 12 5 2 34 30 5 38 8 11 31 17 17 21 8 37 12 14 38 6 11 9 9 9 40 34 24 29 6 40 11 39 12 39 13 6 12 39 9 17 39 29 1 32 35 6 12 24 6 40 37 33 2 22 31 3 8 13 7 26 35 37 34 31 16 26 34 1 32 1 23 39 9 15 3 40 13 14 30 17 3 18 33 7 8 2 3 39 13 27 25 2 32 14 1 36 33 3 5 34 23 13 34 22 21 14 7 16 23 36 17 38 8 35 1 5 10 32 6 5 34 6 2 18 18 20 37 26 4 31 12 18 5 27 14 31 4 3 17 5 2 30 21 12 6 19 28 16 20 15 28 17 32 38 22 26 39 29 23 8 4 31 25 2 18 14 14 16 15 17 26 35 6 36 36 8 7 29 23 36 14 13 12 37 14 15 4 23 6 39 17 2 7 9 32 16 6 4 30 39 25 21 9 21 3 15 34 3 15 35 31 25 5 20 5 32 17 27 5 7 15 9 39 36 13 40 27 30 18 25 24 7 38 2 25 28 19 8 5 6 2 2 37 10 29 36 7 28 33 31 36 16 3 39 13 22 30 28 11 1 34 4 16 21 7 7 25 1 31 17 22 6 37 11 8 2 17 10 7 34 38 1 1 4 12 22 33 19 2 11 15 28 28 34 7 19 4 37 38 4 8 19 22 37 7 27 33 22 24 35 10 16 35 38 40 12 23 33 32 19 14 34 26 13 30 37 9 19 12 6 6 36 16 39 8 30 23 31 25 19 38 14 40 5 32 10 39 11 37 25 24 13 30 10 1 13 7 8 38 15 35 1 39 19 30 20 35 3 33 15 3 30 16 23 11 24 20 25 14 1 24 29 4 29 13 26 36 22 17 34 13 18 25 8 39 37 6 19 25 31 26 1 37 23 26 17 37 33 12 34 12 9 9 32 2 17 13 35 23 34 11 16 9 36 6 32 27 34 13 40 19 37 9 7 37 31 31 2 29 28 35 13 6 40 7 13 24 33 37 9 29 6 32 33 11 20 34 10 10 37 21 25 33 18 28 10 8 16 32 2 9 6 5 26 6 35 14 15 32 22 2 24 40 30 4 24 40 37 40 10 6 12 4 33 31 2 5 10 9 24 12 12 7 25 38 21 1 4 31 39 15 25 8 1 26 12 9 9 11 3 3 2 23 4 27 40 4 11 9 12 6 14 22 6 10 2 24 34 2 38 29 5 14 3 11 32 20 24 16 9 38 25 19 22 17 31 32 40 24 1 13 23 20 2 5 12 26 3 27 7 3 21 18 27 23 19 23 9 16 23 30 33 6 1 15 32 18 1 28 25 30 19 40 36 11 20 1 5 38 34 16 36 27 37 40 26 40 8 31 32 32 26 18 37 4 12 5 24 32 1 28 15 23 15 4 20 27 19 10 15 16 4 13 37 14 32 30 10 38 20 6 30 11 13 14 6 11 7 32 23 6 34 23 29 7 30 38 40 9 6 32 15 9 5 4 6 12 32 40 27 13 22 11 26 26 31 22 40 17 17 12 35 1 25 27 17 14 8 7 38 35 14 14 14 29 1 19 34 5 26 32 24 6 20 21 20 33 18 14 19 39 27 10 8 31 34 32 31 13 31 1 18 35 23 26 37 19 37 25 5 22 37 12 22 33 1 25 15 20 13 36 5 31 18 14 4 24 5 18 17 28 1 22 8 5 17 37 27 12 2 34 13 11 8 28 32 29 12 21 32 4 6 14 23 23 5 31 11 28 26 6 35 34 27 10 10 25 15 14 21 34 39 33 18 33 20 2 23 31 1 40 34 11 24 33 13 19 7 15 17 9 3 26 15 38 34 31 35 34 6 14 39 17 17 21 19 8 16 21 12 3 33 15 29 35 5 13 7 14 29 27 12 25 27 4 12 13 40 22 26 39 5 4 40 3 17 27 36 4 18 20 18 20 23 15 18 5 27 35 21 35 35 32 11 5 39 11 22 2 38 12 29 10 34 28 40 16 6 5 25 29 22 8 24 35 16 18 23 24 28 17 14 20 2 34 23 1 7 40 19 26 13 40 10 30 17 33 38 3 33 1 1 16 30 27 40 21 36 26 18 20 23 20 24 4 8 3 34 28 11 35 32 25 10 12 18 26 27 11 19 15 39 9 38 29 40 24 8 16 37 26 22 28 16 12 5 17 36 21 2 14 12 5 27 22 40 2 40 26 25 20 26 2 29 40 18 37 29 14 14 18 29 25 35 28 22 11 21 24 4 35 10 25 31 33 35 31 24 39 1 15 15 21 8 12 38 32 25 2 4 30 26 27 9 2 35 8 30 29 24 31 22 34 37 9 22 26 2 36 20 13 13 3 37 11 26 10 30 40 32 16 1 35 20 36 6 27 11 25 1 32 31 17 34 2 27 1 15 36 20 15 36 6 26 6 17 13 10 8 16 7 5 14 13 6 32 2 8 32 15 12 13 33 27 18 23 35 22 33 37 39 8 21 18 33 39 22 3 40 14 28 22 22 36 40 3 9 9 21 34 6 18 33 5 1 15 15 31 29 15 1 24 11 39 1 18 23 40 26 32 37 39 32 26 3 22 21 12 13 36 32 24 16 30 1 26 13 27 1 2 6 13 30 32 22 23 10 10 23 27 39 13 25 13 38 13 25 34 34 19 8 21 7 2 10 16 15 13 33 15 9 13 37 35 35 25 36 15 39 25 25 15 36 28 4 32 36 37 10 9 18 38 18 13 25 21 7 39 30 6 15 1 2 6 17 30 39 10 35 29 21 15 13 24 19 39 17 36 35 33 18 2 7 13 31 26 6 27 12 15 15 32 16 23 5 28 28 17 20 37 5 37 19 15 26 11 3 29 14 9 37 3 27 8 34 8 32 35 23 27 11 20 17 28 6 6 9 14 27 25 2 3 11 27 29 4 9 37 18 39 29 4 25 18 21 37 17 38 25 34 4 15 8 30 27 17 1 19 31 1 16 30 39 13 32 5 38 25 28 30 25 34 20 13 26 20 36 14 1 19 14 33 33 25 35 11 29 4 31 15 5 3 13 30 34 25 3 34 25 9 31 13 6 37 24 3 6 37 15 34 25 36 3 28 1 20 16 6 29 11 31 16 14 2 40 38 14 24 35 11 36 3 8 5 3 15 18 21 9 40 27 5 31 36 39 33 23 40 16 2 12 31 4 28 8 9 9 30 14 28 27 33 40 16 18 16 6 3 37 7 37 37 1 23 35 38 24 25 21 38 34 32 2 24 4 11 22 30 25 22 20 18 39 4 8 27 29 22 35 27 31 13 35 39 7 35 28 8 13 20 35 28 13 25 15 29 12 11 28 3 5 29 37 20 21 35 13 27 1 15 23 21 5 5 10 28 5 38 4 15 15 31 29 40 14 39 8 15 38 40 5 15 25 27 26 6 4 29 2 8 9 8 2 19 4 23 13 13 8 11 3 36 4 3 39 9 11 10 13 39 34 29 28 4 23 1 32 25 7 36 12 40 24 35 24 15 17 5 38 6 33 6 18 3 25 15 5 22 22 29 12 39 20 13 22 25 3 11 13 28 23 39 8 32 40 4 38 12 37 1 20 40 7 26 22 40 32 25 6 20 1 14 2 3 36 26 34 25 1 26 8 28 15 15 15 17 8 40 27 10 14 37 34 13 2 30 1 39 38 25 16 20 26 17 21 11 23 19 25 25 20 1 18 40 36 38 33 8 26 21 18 40 12 33 17 9 32 31 19 6 26 16 32 38 36 10 31 15 20 4 19 18 11 29 38 32 40 19 20 2 10 18 37 4 34 13 10 31 34 25 22 14 8 9 29 15 7 21 21 15 36 2 16 21 30 23 26 3 1 17 22 18 39 3 36 6 14 14 12 27 22 37 16 4 30 7 6 6 19 25 19 37 16 40 16 18 39 18 25 20 3 30 29 10 9 22 38 22 12 15 2 2 28 19 28 29 14 2 6 17 8 37 38 29 25 35 27 3 29 28 39 13 6 37 7 25 12 9 30 20 37 29 35 39 8 4 16 14 19 35 4 23 16 31 11 5 36 8 7 29 28 21 7 20 10 14 33 22 40 19 11 30 10 6 8 19 36 34 39 9 4 30 13 27 6 27 17 40 20 3 40 3 17 39 13 18 37 36 22 35 18 3 22 1 10 26 18 24 26 31 10 40 31 14 16 1 14 21 32 12 3 1 22 5 22 24 15 7 25 16 38 6 32 23 31 25 6 22 9 40 32 9 32 22 22 37 21 8 10 11 23 35 21 6 26 36 20 30 11 37 9 15 14 26 22 15 23 25 35 10 28 29 16 1 2 18 4 25 12 13 22 13 34 17 35 16 39 20 17 36 13 10 2 6 2 36 34 38 36 14 33 14 32 7 6 7 35 22 31 3 15 9 16 8 5 19 33 32 19 10 12 30 13 34 5 15 36 15 29 33 2 22 34 5 19 4 13 12 38 32 18 16 15 39 28 5 1 25 21 2 35 31 32 25 25 26 8 26 10 28 31 36 9 27 8 35 18 26 16 22 30 19 14 9 1 31 5 8 39 34 22 1 18 28 7 31 34 11 5 12 3 15 29 7 34 31 31 32 15 40 15 15 27 17 39 18 38 16 38 10 3 2 17 32 16 15 28 20 21 36 40 33 26 1 8 15 28 1 32 14 30 26 37 40 14 11 1 21 18 19 38 20 38 38 14 1 7 32 19 36 25 35 15 4 9 37 4 1 24 13 10 2 13 23 1 12 14 29 6 18 12 32 13 25 23 37 38 4 11 34 19 19 18 30 7 11 40 20 20 7 28 37 6 4 15 35 9 2 1 9 31 7 40 34 2 28 19 3 38 34 9 22 4 6 12 32 35 19 29 18 11 3 36 31 11 15 7 26 22 36 37 19 15 6 4 5 21 14 32 16 22 39 11 11 27 40 29 29 32 20 30 15 4 36 27 25 34 35 30 17 5 9 31 11 38 27 38 6 26 4 23 22 7 37 19 9 12 21 39 40 35 28 22 12 34 26 9 26 25 26 20 38 32 10 8 5 20 15 35 8 9 17 19 11 34 40 1 3 15 20 8 4 16 25 20 23 22 39 19 15 40 20 7 28 6 38 27 7 3 10 27 18 15 10 15 1 19 14 10 20 1 7 38 13 3 9 8 26 2 1 12 18 40 9 2 36 23 14 28 8 20 14 37 14 22 14 31 4 1 35 12 32 28 26 28 9 12 13 13 2 28 13 28 20 10 30 12 3 25 25 26 38 11 29 18 33 28 34 14 34 17 33 16 20 6 17 22 29 11 40 18 3 38 40 14 36 17 31 9 5 1 31 26 38 34 33 8 11 5 8 19 17 6 8 24 11 22 38 30 2 10 5 38 38 28 32 23 25 5 16 10 40 5 28 32 26 27 23 7 19 16 16 15 23 25 6 29 6 27 20 35 18 3 17 18 19 13 8 28 33 19 16 23 17 16 14 27 21 3 18 8 35 30 10 34 2 27 35 36 36 4 5 1 32 18 32 5 1 29 28 1 30 20 26 28 34 25 18 25 38 30 6 29 25 28 34 30 32 16 5 1 28 10 23 17 13 8 36 33 33 11 21 9 15 31 5 20 19 40 13 8 7 17 11 3 25 4 1 2 32 31 25 22 12 8 31 25 30 13 26 4 40 13 36 12 27 16 37 26 15 14 38 2 23 11 3 33 31 2 34 3 39 27 11 38 10 35 40 19 4 3 23 35 39 1 39 30 13 19 19 2 3 8 7 32 30 2 10 15 29 34 36 22 25 40 36 18 8 14 6 21 8 22 40 32 26 26 8 11 19 23 26 10 22 2 18 2 5 30 6 14 16 24 30 40 37 1 33 34 14 37 4 5 22 35 12 21 22 33 17 15 20 17 30 2 27 20 40 29 28 35 34 39 12 14 39 19 37 32 31 13 15 29 4 13 38 17 9 37 31 22 39 13 31 3 11 10 21 8 24 16 5 8 17 14 34 18 5 2 37 39 30 14 21 36 30 7 17 6 25 22 20 7 24 34 33 37 21 27 4 6 10 2 23 23 23 14 26 5 2 18 9 2 35 17 29 19 21 33 14 7 14 36 19 17 28 30 26 21 4 24 37 26 18 28 22 34 14 27 25 39 15 3 17 8 20 10 17 23 21 40 5 40 37 15 30 37 22 38 27 36 22 23 40 20 36 12 20 28 15 6 28 12 22 10 25 15 34 22 32 36 21 26 21 31 13 18 39 6 34 30 20 34 2 6 27 3 1 8 1 34 5 5 19 25 28 6 35 10 8 29 40 32 10 14 15 17 30 4 20 5 36 13 33 22 34 28 34 6 29 15 16 35 7 26 1 36 22 31 12 21 8 24 38 2 27 4 24 8 22 26 25 37 21 2 24 1 14 16 13 27 32 37 10 17 12 27 10 5 8 30 38 34 24 5 11 30 2 10 27 22 28 29 25 28 22 32 38 16 38 34 23 18 25 34 27 32 36 17 19 18 15 20 3 32 18 39 6 12 28 38 1 4 26 29 2 14 28 21 17 16 3 8 6 7 5 15 22 13 35 32 20 32 4 2 11 4 36 21 28 28 17 34 24 22 8 25 40 19 26 23 15 31 6 32 23 37 15 8 38 2 9 20 16 33 17 25 36 24 30 19 11 37 29 19 8 7 16 12 36 3 2 27 37 23 17 16 18 6 19 8 2 31 8 27 30 27 15 3 31 6 21 4 7 4 28 25 2 33 31 21 23 11 35 13 40 11 17 37 10 25 14 35 19 22 12 39 1 31 11 6 7 10 9 8 35 24 35 8 31 19 7 37 15 15 3 17 20 5 26 2 27 31 24 33 38 1 18 39 40 10 32 22 33 34 8 36 19 34 10 18 19 38 40 10 39 21 24 29 14 21 3 39 11 32 6 27 24 4 18 7 36 35 1 11 32 37 26 19 36 36 23 24 13 9 3 38 31 31 1 12 34 28 38 28 26 32 14 36 20 19 27 27 7 19 14 5 38 26 19 34 3 37 37 24 39 9 36 23 15 13 3 24 10 27 8 31 36 31 24 39 17 28 10 40 14 26 39 37 21 28 14 2 22 38 15 1 26 24 7 28 3 13 20 19 1 5 29 36 19 8 1 9 8 11 17 4 35 3 24 16 19 20 21 30 19 19 21 36 2 22 9 40 33 15 1 28 39 28 7 36 36 22 27 16 35 7 14 32 36 29 30 29 40 7 22 39 19 17 20 26 19 8 12 10 15 19 24 2 13 17 25 1 11 11 1 3 30 16 15 12 39 40 5 5 24 11 25 12 10 23 31 38 20 21 36 16 27 38 32 31 28 25 36 36 1 18 29 12 32 4 17 19 15 6 2 2 17 11 14 40 14 36 30 24 17 33 10 25 33 14 15 35 40 13 31 17 9 7 12 4 7 34 17 12 11 10 33 23 2 24 14 3 5 21 8 29 34 4 20 31 40 22 29 15 14 22 19 23 28 31 18 31 26 23 8 28 31 15 20 9 36 36 21 12 26 32 17 10 28 34 34 16 22 5 14 5 17 35 34 35 27 38 8 15 19 15 24 30 31 26 28 16 20 28 1 34 32 35 2 37 13 27 3 19 12 10 39 11 17 34 5 38 29 40 30 29 11 8 4 27 31 13 22 24 28 10 4 9 2 24 33 23 25 24 1 31 15 40 10 5 35 38 36 34 37 36 13 7 20 15 36 9 6 36 27 12 35 13 37 21 26 14 23 10 21 15 32 29 7 1 20 11 27 34 26 21 6 20 6 35 7 29 13 22 5 6 7 27 15 22 30 36 31 30 15 21 36 30 27 29 17 38 24 37 1 5 36 29 2 22 35 18 4 40 28 9 38 24 21 29 35 38 12 19 23 7 40 29 38 4 17 10 6 26 23 17 25 18 29 17 21 22 37 2 8 4 10 39 11 33 26 1 26 12 38 4 19 40 40 15 22 34 7 25 1 34 9 37 6 13 7 17 4 17 19 17 15 35 21 8 21 26 26 19 29 18 7 40 13 16 34 8 39 3 20 4 17 22 33 24 13 3 7 23 24 26 21 17 20 40 2 25 30 30 31 4 28 32 4 30 15 27 24 15 39 38 5 37 31 29 29 30 9 17 27 34 14 26 16 9 14 4 7 17 9 10 1 34 24 23 29 37 18 21 3 26 24 22 1 5 7 40 1 35 14 1 8 39 21 30 22 22 40 21 30 31 24 36 5 5 22 27 34 36 29 17 18 30 40 21 30 35 14 21 7 6 28 2 32 26 13 29 37 32 38 2 30 27 30 5 16 3 37 24 28 22 32 32 14 19 31 3 7 33 2 40 1 22 32 16 17 17 32 1 10 8 12 38 15 13 5 32 2 37 4 9 8 35 17 27 14 40 22 35 19 21 3 37 22 3 28 38 1 20 29 39 5 9 14 38 13 13 37 6 5 4 25 11 14 35 15 11 17 4 15 18 3 16 27 22 3 6 10 29 16 40 8 9 18 8 14 15 35 28 13 11 34 10 22 14 4 28 21 8 26 6 28 8 28 31 16 21 32 2 19 21 38 36 16 30 5 31 3 36 5 28 37 15 15 22 35 12 5 31 4 9 8 17 19 37 35 32 32 36 35 11 16 2 9 37 33 31 12 21 21 16 19 33 18 26 31 7 38 26 28 22 37 35 8 31 8 15 11 31 40 2 14 3 27 22 38 1 11 13 5 22 10 29 9 16 10 35 5 9 35 20 3 20 2 32 10 16 26 6 14 15 23 40 19 40 12 35 37 28 3 38 22 32 40 4 25 26 29 39 36 20 39 39 30 6 34 28 20 30 36 33 18 6 37 14 40 38 25 37 19 33 37 2 27 36 15 14 38 13 26 5 6 3 18 28 11 21 12 39 39 14 32 17 14 36 19 12 21 6 16 11 27 9 6 16 1 11 1 22 4 18 18 6 34 22 22 18 30 22 19 17 26 13 40 13 33 4 25 38 19 33 26 26 27 37 8 19 9 8 30 36 16 28 11 30 31 18 15 39 23 25 1 16 23 23 10 27 31 9 38 28 20 37 25 22 28 36 33 12 33 10 6 3 35 5 31 10 1 34 36 15 6 14 31 18 2 27 38 34 24 8 13 7 32 1 14 17 27 33 28 39 1 33 17 40 36 25 17 34 22 37 25 30 20 2 1 12 22 1 34 23 4 29 20 11 31 26 6 9 23 19 21 1 9 8 23 31 27 4 32 2 38 16 3 16 15 3 29 3 20 11 11 12 39 15 16 11 8 35 31 32 25 39 33 35 20 29 40 20 27 23 30 4 10 13 6 20 24 24 29 27 23 22 36 27 22 13 14 32 19 23 18 16 11 12 24 8 5 20 24 35 2 29 5 11 31 9 20 23 34 11 4 19 36 11 16 21 22 15 31 9 26 12 27 4 29 33 24 12 8 15 7 27 6 5 26 20 31 15 40 10 36 20 25 21 27 40 17 19 21 8 38 9 2 22 37 35 23 13 34 24 38 19 13 37 31 23 32 40 10 34 24 33 29 30 15 1 23 19 6 40 36 24 16 22 12 3 15 29 7 9 38 5 18 4 31 20 40 26 25 30 7 19 3 22 7 33 28 39 2 27 10 17 13 19 28 28 32 38 28 28 2 33 26 5 32 35 22 13 15 1 26 6 17 26 31 15 33 20 16 22 11 31 39 13 3 31 24 15 29 37 21 12 21 24 4 17 17 25 6 6 9 20 11 14 37 39 39 31 33 18 28 39 29 25 23 21 3 35 7 7 17 20 5 17 7 8 40 26 17 33 16 23 9 30 39 13 38 38 15 22 39 22 18 4 13 26 31 21 27 32 3 38 37 9 8 4 13 29 1 16 34 30 29 29 5 24 18 28 27 4 29 16 38 36 13 24 12 2 5 21 38 29 31 23 20 4 10 29 3 20 8 28 34 34 18 1 21 23 8 24 39 1 14 27 15 36 35 2 38 31 19 6 18 37 9 17 32 11 20 25 17 4 35 25 29 2 5 6 10 32 5 24 27 36 12 15 10 16 27 14 13 34 29 26 14 28 33 10 24 2 30 4 23 14 8 24 40 7 11 20 9 24 7 2 31 33 26 38 27 19 5 19 14 22 12 6 7 30 8 8 13 6 14 11 39 26 12 36 17 30 36 33 40 9 24 36 5 16 21 22 12 38 22 27 15 37 22 12 39 33 11 18 30 5 4 10 1 40 26 30 25 22 22 33 29 34 31 31 24 5 22 40 10 5 34 1 6 28 25 29 26 21 6 35 26 24 24 36 25 9 8 10 36 28 15 21 2 38 38 8 10 6 26 7 19 5 34 33 36 18 36 29 15 37 35 5 6 31 3 19 30 40 6 20 19 30 21 15 9 16 14 6 9 27 16 12 26 17 30 9 14 40 33 2 26 33 39 26 21 10 1 21 7 40 7 33 3 31 17 30 38 9 32 26 18 1 1 40 34 19 24 34 34 9 10 5 9 5 31 2 27 31 14 20 16 12 7 5 30 34 36 30 17 15 34 30 18 38 27 8 7 39 37 11 28 5 17 27 4 19 33 11 29 5 36 31 13 15 14 38 31 24 30 6 8 8 34 31 39 3 1 30 7 15 17 6 9 13 21 22 24 32 16 34 28 23 3 30 25 8 15 14 26 2 24 34 8 32 7 17 23 4 39 39 15 4 18 23 33 16 24 14 34 8 34 18 12 24 26 2 33 22 8 8 40 13 31 37 37 35 31 38 28 2 36 25 25 31 2 28 4 32 33 20 12 22 11 20 27 31 38 8 37 36 35 29 39 24 18 25 35 40 32 12 13 29 21 31 29 29 35 22 5 24 5 21 34 13 40 18 21 27 3 32 17 23 36 11 21 28 4 33 24 23 26 33 21 37 11 12 4 4 18 1 29 20 13 20 21 31 3 39 5 30 16 38 6 24 25 23 12 34 11 16 27 9 37 13 34 16 23 22 23 28 21 10 23 25 34 6 17 11 38 3 11 32 10 40 4 19 23 38 10 33 7 9 21 40 35 39 11 6 21 9 20 20 21 30 6 30 25 10 32 3 10 32 22 16 13 25 5 27 23 37 11 26 9 1 23 11 21 30 29 6 17 36 37 21 26 34 10 10 26 7 19 1 29 24 10 19 17 25 4 17 13 2 3 21 39 7 16 2 28 25 27 38 26 35 8 30 39 9 40 20 11 17 13 20 24 23 27 18 35 24 39 12 12 16 33 26 13 29 16 11 21 1 24 34 30 21 6 4 34 3 24 16 28 16 37 9 13 23 2 27 3 38 23 6 36 3 29 4 9 32 38 35 10 12 3 2 14 34 33 12 4 12 14 4 31 16 38 29 30 31 27 35 26 20 1 38 29 1 23 26 24 33 13 16 6 39 12 32 27 21 5 33 28 15 40 11 9 8 13 1 16 25 35 23 12 30 36 22 16 16 37 36 19 26 4 11 17 35 7 34 30 27 39 30 35 36 34 18 24 10 31 29 25 19 37 33 2 40 7 33 37 7 17 3 26 1 32 8 3 34 14 17 31 14 39 33 19 15 10 23 1 38 11 40 22 28 6 15 10 39 3 4 10 6 27 10 15 8 29 23 35 9 10 9 32 7 29 21 9 21 13 16 21 13 20 32 26 7 31 32 15 28 16 3 25 24 32 22 10 7 3 6 15 14 17 10 4 28 2 1 40 15 33 36 37 22 34 38 2 21 10 13 38 29 25 13 38 35 39 12 11 4 4 16 33 29 15 18 27 18 18 20 37 29 32 6 14 10 30 11 2 6 21 23 26 21 20 18 16 18 13 21 14 16 39 3 2 39 12 6 37 14 36 9 27 33 16 36 14 6 36 13 19 9 5 9 4 36 6 37 11 27 14 21 36 35 3 3 15 11 4 25 2 25 9 24 25 34 3 1 10 16 28 31 17 34 15 29 15 3 32 19 23 13 38 3 19 24 5 36 1 27 7 9 15 3 39 30 37 4 31 8 38 2 3 13 5 2 12 38 1 3 27 31 36 30 25 21 28 8 31 25 3 15 8 4 24 29 22 26 22 1 11 3 8 36 31 27 28 18 3 4 12 23 13 7 38 19 13 3 32 37 4 27 15 19 37 19 11 22 12 20 32 21 27 6 20 3 26 7 7 30 15 40 19 1 34 2 13 2 24 33 24 16 36 10 29 21 19 25 37 18 28 1 14 13 2 17 15 29 16 21 33 32 22 13 33 13 34 24 27 10 15 17 31 29 14 5 2 4 19 19 39 20 18 15 9 22 20 11 16 7 5 28 24 30 24 11 37 29 9 22 11 26 35 21 31 32 18 24 6 5 5 40 35 6 39 27 34 23 17 36 26 21 38 2 6 3 20 30 14 20 32 29 25 4 2 19 31 37 28 27 34 9 1 16 28 13 4 24 40 40 34 15 28 15 8 5 4 15 24 35 13 20 39 31 14 16 32 30 31 33 37 5 26 1 10 9 3 14 27 19 9 33 16 39 15 4 5 39 15 24 11 22 11 39 15 33 26 23 16 32 11 10 2 20 21 7 30 5 29 35 14 10 15 18 25 2 30 31 32 37 26 3 6 6 19 14 12 24 28 25 34 34 19 10 11 16 12 10 35 26 14 1 33 9 38 36 26 14 38 22 9 6 17 31 34 7 18 32 26 1 28 33 30 8 31 25 26 14 36 23 7 37 22 14 14 28 33 21 6 34 40 26 36 40 31 2 10 31 31 37 10 39 31 15 33 14 39 26 36 15 33 16 40 4 31 25 3 19 20 34 23 20 20 28 1 25 23 20 40 1 36 29 14 17 27 15 6 8 23 35 5 30 34 34 13 7 24 6 32 13 33 28 23 31 29 11 10 9 5 7 29 28 11 12 31 10 6 22 5 35 9 7 21 38 6 23 22 24 27 13 19 21 22 8 36 15 19 26 7 27 31 23 7 38 4 2 38 34 10 19 12 17 16 5 27 28 32 6 9 40 29 4 33 39 12 3 32 18 33 19 30 12 35 10 19 22 3 21 17 22 37 18 13 40 3 11 33 6 35 15 6 5 23 25 26 22 30 10 28 8 26 26 33 18 38 34 32 10 16 16 19 34 2 16 17 15 15 38 18 16 7 29 31 10 4 5 32 38 9 17 2 11 34 40 22 31 2 36 32 11 21 31 17 10 2 30 4 39 37 26 19 1 12 19 26 19 13 19 29 32 27 37 22 21 1 36 40 10 5 32 39 15 13 36 32 13 19 5 28 7 4 5 27 33 39 34 38 32 34 33 25 37 25 14 18 9 40 3 16 18 29 10 29 5 31 19 1 35 17 33 19 28 37 17 4 36 7 25 19 6 12 20 29 18 1 21 25 15 17 18 31 31 1 14 29 29 9 10 19 26 11 29 7 24 7 18 40 18 17 36 22 19 2 37 12 23 27 31 19 39 40 12 2 23 3 21 21 20 28 21 9 14 5 33 36 24 37 17 10 18 35 31 18 12 5 22 21 37 39 2 17 8 18 14 10 1 23 38 33 39 26 39 27 39 3 8 18 6 15 11 37 34 19 30 30 19 19 10 36 3 13 12 32 8 32 20 37 17 32 34 11 11 33 34 14 14 24 34 36 33 31 27 29 34 23 21 24 26 30 35 18 38 32 35 22 10 30 38 22 34 31 14 14 19 28 12 31 9 4 40 31 13 8 7 24 3 9 13 28 32 10 13 1 8 28 23 5 29 29 25 8 30 4 31 32 36 16 22 11 35 25 37 6 20 32 23 19 12 20 12 25 38 6 5 35 3 15 10 4 23 10 17 23 32 12 18 10 20 25 7 35 24 3 28 29 12 12 18 29 30 5 38 30 11 38 18 13 12 36 24 36 1 36 31 30 11 39 22 30 25 9 29 13 21 9 38 40 21 1 8 21 10 9 11 37 9 38 35 26 40 23 33 40 1 35 29 11 10 31 25 11 2 33 25 7 37 35 1 9 37 23 1 8 14 3 21 39 23 35 27 19 39 39 8 4 11 7 36 24 27 11 36 24 3 22 10 2 16 39 30 12 16 19 28 19 36 18 11 9 38 15 1 29 32 32 15 18 22 2 9 11 29 33 13 6 19 8 3 29 26 13 5 24 23 21 14 3 13 16 22 12 33 14 18 10 14 31 31 37 10 29 18 25 6 30 16 9 20 40 15 11 6 12 12 9 32 16 20 23 40 27 20 6 38 26 11 33 7 33 37 39 34 32 21 25 14 10 7 2 8 1 28 5 22 34 23 37 29 19 31 21 19 10 36 3 26 11 16 36 39 37 33 19 8 38 9 2 11 31 17 7 40 20 12 32 35 21 36 33 22 14 31 37 13 18 16 1 34 19 19 24 20 16 19 18 40 11 5 2 25 13 25 40 19 39 21 34 8 35 8 17 29 40 14 37 23 20 16 17 35 32 11 31 22 27 1 15 3 6 12 1 3 9 38 7 7 19 29 36 26 15 12 32 7 5 38 23 10 15 17 15 2 38 31 30 25 5 4 40 26 37 24 33 24 3 16 6 4 37 6 37 29 8 14 36 11 27 12 3 24 38 27 39 11 38 21 21 23 14 29 36 30 2 22 32 37 24 16 11 25 24 24 13 40 35 28 9 3 2 13 21 7 39 1 27 37 20 34 4 9 37 19 16 30 39 9 40 17 22 3 6 7 6 30 21 22 16 27 32 3 22 21 34 37 37 34 35 35 17 24 20 22 19 12 34 39 22 24 35 4 26 16 8 2 35 15 29 37 40 34 5 32 23 35 20 7 31 38 35 21 14 13 35 33 30 11 23 22 13 26 38 17 21 37 1 2 3 22 36 31 23 40 4 33 30 20 36 20 1 35 18 7 34 40 28 36 18 2 6 39 39 24 37 6 11 29 40 12 8 6 21 38 23 13 34 37 39 37 35 12 18 33 13 23 35 2 3 38 24 18 35 33 14 11 8 2 19 7 25 19 2 18 11 29 19 40 39 20 33 16 18 19 26 23 32 7 33 6 19 5 2 22 33 21 40 3 3 11 24 27 29 2 19 36 19 6 8 16 30 11 12 39 6 37 15 22 2 18 5 25 16 4 25 20 26 38 6 18 24 13 35 32 37 17 3 36 28 2 9 16 2 2 9 3 25 3 1 37 18 12 36 26 17 16 40 17 31 39 5 24 32 34 23 28 16 32 20 9 19 32 4 40 7 28 38 11 35 25 3 39 2 19 11 40 9 9 4 20 37 22 27 28 31 39 12 38 27 38 27 27 10 35 36 19 6 39 1 11 37 26 34 2 19 14 26 24 37 5 21 23 28 29 39 6 25 22 3 17 7 26 23 15 40 23 21 29 34 22 38 24 23 38 18 34 33 39 17 37 4 17 14 25 27 27 13 22 28 2 4 12 13 19 28 1 15 13 16 9 3 23 4 32 8 29 18 5 25 14 14 25 28 39 24 37 39 17 22 18 27 22 16 2 23 11 7 22 30 26 19 2 28 25 28 25 3 7 28 31 1 22 39 12 38 31 22 18 35 28 40 24 26 22 36 5 21 16 12 10 2 8 20 19 20 26 7 27 29 29 11 23 23 29 22 37 22 28 34 27 3 22 8 17 36 11 19 14 35 28 35 9 28 36 37 29 16 35 12 20 8 5 1 20 19 40 3 22 1 40 33 23 2 22 37 8 18 27 24 32 19 8 25 25 4 3 33 23 24 25 14 16 31 17 9 27 5 6 38 15 32 29 23 40 17 2 35 18 11 36 24 31 25 2 1 7 21 3 36 38 1 39 27 3 8 21 6 27 37 18 29 32 38 5 28 20 40 13 16 36 18 15 36 38 35 16 40 39 39 21 25 13 5 25 7 2 14 14 4 29 37 23 1 33 33 27 23 26 40 38 25 22 13 39 13 2 40 2 30 26 22 27 23 21 2 13 24 30 3 40 34 29 11 36 39 1 19 22 21 20 33 10 13 4 31 34 12 24 36 2 25 25 29 15 6 4 12 26 27 27 5 40 30 34 37 27 26 19 16 1 28 23 35 34 23 24 6 40 17 22 25 35 36 10 17 5 19 18 31 36 19 13 23 37 11 27 18 36 16 5 6 30 25 32 27 9 21 10 1 7 28 9 30 15 22 20 37 13 30 40 8 38 15 15 9 25 32 20 11 2 6 33 1 37 2 26 37 9 29 3 34 19 18 2 27 18 21 33 26 22 28 39 18 7 33 6 24 7 37 32 9 34 22 27 7 16 12 30 4 24 4 39 5 30 13 14 29 22 18 27 38 2 26 31 22 11 15 38 39 25 14 34 8 38 29 27 8 16 1 11 26 9 20 26 36 17 30 26 2 35 24 40 26 10 24 10 32 21 15 4 18 19 26 20 37 15 27 26 3 21 32 14 10 18 14 34 31 17 10 4 31 33 33 30 37 10 35 8 39 9 3 7 21 17 19 30 3 3 32 32 19 12 35 40 34 5 11 14 40 22 16 11 5 9 22 6 36 37 25 13 10 36 17 27 28 19 28 5 36 12 19 38 24 8 2 3 32 10 1 23 20 18 3 30 5 36 13 4 1 10 11 4 6 38 19 27 29 25 17 2 7 38 23 17 32 8 1 13 24 27 18 2 11 39 28 37 39 35 29 14 16 2 4 27 27 4 21 3 10 39 24 6 18 34 17 13 23 12 8 30 30 13 19 21 12 39 7 13 25 2 9 39 7 27 17 18 3 25 24 11 4 14 10 29 11 15 34 9 22 34 27 36 4 34 6 18 36 30 12 6 11 18 18 15 5 4 40 1 29 10 32 18 39 29 33 15 1 20 32 4 33 7 10 8 37 29 1 28 34 9 10 39 38 28 18 38 21 30 9 31 15 8 19 3 2 37 36 20 16 18 8 37 28 11 19 31 14 38 21 10 38 26 30 22 7 29 40 16 32 8 14 39 18 3 4 2 27 2 12 32 33 24 19 20 3 14 29 7 36 16 33 12 22 31 30 33 13 34 28 7 38 25 33 37 36 17 37 20 29 4 39 33 6 23 37 35 18 40 6 33 32 8 28 3 29 40 39 4 27 36 25 34 36 4 4 37 36 22 13 36 39 3 29 3 36 21 40 18 37 32 32 5 10 24 2 25 2 18 34 26 1 26 7 19 37 12 11 5 14 10 34 3 27 28 34 30 29 34 24 5 10 3 22 34 33 26 11 13 7 15 12 9 37 12 14 3 14 40 5 21 31 28 2 38 29 24 39 29 29 9 3 19 23 11 13 24 16 34 24 20 38 30 25 10 17 21 6 33 22 37 30 2 9 21 35 38 28 28 23 9 3 13 35 29 5 10 8 3 25 2 13 31 7 18 33 16 30 34 11 28 29 14 16 8 39 1 22 2 2 26 9 16 36 13 26 22 4 14 21 30 2 14 29 35 27 23 32 35 11 28 33 24 4 2 1 2 29 5 34 21 31 13 24 21 30 4 40 29 28 10 21 22 11 15 12 39 13 14 24 40 32 8 25 16 29 30 20 2 2 22 21 16 18 14 26 8 39 19 25 17 32 13 24 23 36 9 35 40 34 24 15 35 22 14 21 22 6 24 24 11 13 36 12 15 34 12 28 25 34 7 8 31 24 20 31 32 40 12 35 9 18 13 36 14 13 18 36 20 19 29 38 11 35 7 19 19 24 9 34 6 39 17 20 38 13 39 4 33 40 36 23 14 20 40 9 30 8 37 5 1 1 38 8 9 18 9 37 9 21 28 5 24 17 24 4 28 24 3 7 22 1 36 8 34 24 37 39 18 28 5 6 20 30 10 24 18 24 27 23 1 6 34 28 5 40 7 39 35 24 32 39 11 11 7 16 32 25 26 39 24 25 17 4 20 15 12 25 39 26 5 3 11 11 4 32 27 22 29 20 10 4 22 16 12 6 26 37 1 11 22 31 21 27 24 25 22 5 3 24 8 7 37 27 23 24 8 22 22 18 20 40 37 11 8 19 14 7 33 21 37 12 20 5 9 38 20 15 1 7 15 39 18 37 32 4 25 18 7 39 35 16 23 26 2 27 30 4 35 6 28 38 28 10 3 33 34 30 24 9 38 4 27 18 21 1 18 2 28 14 8 3 9 13 32 9 36 18 1 19 24 17 12 37 21 7 7 34 19 16 12 29 8 27 24 37 40 39 30 35 3 17 35 10 21 28 31 8 15 7 26 13 26 22 3 10 20 7 19 22 17 18 4 5 33 24 39 23 32 39 27 7 35 11 6 11 1 19 29 38 18 36 5 11 2 31 11 1 29 24 4 37 13 33 15 24 6 37 16 7 33 40 10 24 4 33 29 5 38 17 30 12 36 29 14 19 5 1 37 27 10 16 21 21 24 38 28 26 5 33 12 25 31 7 14 18 19 31 26 8 13 22 34 15 3 9 37 30 18 23 37 11 28 33 29 3 38 7 23 16 7 36 25 20 28 30 38 31 38 38 34 1 21 35 7 25 23 1 19 10 36 23 18 17 37 24 9 9 38 30 36 40 14 25 36 28 32 17 10 31 39 9 30 13 20 7 16 34 20 22 39 1 18 21 23 22 37 19 22 23 32 23 30 19 8 5 4 30 26 28 6 18 21 16 24 29 6 32 23 39 1 36 33 29 13 9 5 4 13 17 8 33 40 34 27 35 30 19 24 30 27 28 13 32 37 34 25 31 3 34 29 14 8 38 8 39 31 31 3 19 5 35 23 12 40 7 33 20 1 4 9 13 34 33 20 2 15 32 32 21 25 2 10 23 30 12 37 16 33 32 17 6 12 40 35 18 35 9 2 12 39 19 2 20 8 32 11 4 26 20 24 21 3 8 33 1 27 1 14 24 22 9 32 22 10 36 30 12 5 23 33 10 6 35 31 33 4 30 33 9 39 11 40 37 26 23 36 20 3 15 10 31 21 10 7 27 32 11 32 30 14 28 15 2 1 16 17 25 30 13 14 35 33 16 16 22 13 39 29 30 38 20 13 22 2 24 3 35 13 30 33 15 23 28 7 19 3 28 23 6 22 19 28 19 39 15 33 15 25 17 25 10 31 14 25 6 1 12 5 29 7 31 18 12 19 14 18 5 3 11 22 12 39 2 20 7 33 36 24 11 6 26 9 20 3 21 9 10 40 30 11 27 18 35 3 24 40 40 36 19 2 8 35 10 11 39 23 10 2 24 27 29 32 17 14 7 18 29 21 4 12 32 5 17 31 21 31 23 28 15 3 17 16 40 7 24 28 33 2 25 40 19 23 19 22 38 36 31 29 21 31 4 36 27 2 38 7 32 30 3 1 36 26 22 21 2 5 32 10 14 25 27 32 25 40 30 11 3 9 22 19 12 21 30 5 13 11 9 3 5 19 29 29 15 16 17 13 15 24 39 40 13 4 11 38 27 7 35 23 16 35 6 29 19 35 27 16 15 34 17 27 17 28 32 12 9 31 11 13 11 11 26 17 22 28 12 19 30 38 27 22 12 9 31 31 3 30 4 38 28 5 14 25 5 7 33 39 16 17 11 26 18 14 39 23 22 27 28 6 6 22 1 22 35 18 28 10 31 6 12 13 25 27 9 4 4 40 27 24 34 29 33 35 6 6 7 10 38 17 37 24 21 23 22 6 4 37 21 18 30 15 4 19 16 32 18 27 25 18 21 34 9 36 36 12 34 3 18 15 18 27 23 20 8 7 11 36 39 7 2 9 2 18 1 31 21 22 8 15 40 9 12 1 33 15 19 28 15 23 4 29 15 35 2 32 6 12 7 1 3 34 23 1 6 2 14 20 35 2 11 4 16 14 33 23 26 27 40 14 10 29 11 3 10 1 26 2 32 5 14 26 29 38 18 30 37 36 8 14 9 34 37 3 38 37 4 18 34 18 27 32 3 19 3 32 4 5 34 11 26 37 23 15 38 37 11 24 27 34 26 22 23 31 28 17 19 28 8 33 27 34 4 1 27 27 6 38 29 33 38 18 1 26 31 6 21 8 19 27 15 32 25 27 3 31 2 35 14 35 1 23 39 25 12 6 4 9 1 35 26 35 11 27 16 34 2 17 1 4 22 38 28 32 34 38 23 10 33 7 31 28 31 8 38 6 38 1 13 13 3 27 28 15 28 28 19 10 4 28 10 6 32 10 24 17 11 32 17 1 21 18 35 3 1 24 25 16 21 30 5 19 23 7 8 31 9 2 31 7 9 38 25 29 36 28 7 17 1 32 7 15 20 22 36 27 24 34 11 33 23 26 26 40 33 32 33 5 3 40 19 5 34 3 37 34 3 21 31 7 32 29 37 19 40 31 39 14 31 10 12 13 32 13 15 28 9 19 34 28 29 2 37 3 9 19 21 13 39 33 19 26 26 6 20 13 22 8 24 35 20 18 14 30 15 40 29 40 39 28 9 26 21 26 18 23 9 39 3 2 33 34 38 20 34 15 25 25 28 14 35 11 21 34 20 35 24 24 20 5 16 27 28 2 39 21 18 15 15 36 25 20 36 35 22 17 30 31 39 14 2 9 9 40 28 1 24 32 30 30 22 26 28 40 5 18 36 22 33 2 14 6 31 20 7 35 26 14 16 10 30 22 30 37 40 26 27 2 21 22 1 5 20 28 28 36 6 17 12 16 15 4 40 9 19 30 28 5 19 18 20 34 16 3 27 22 2 11 27 38 15 10 24 30 18 36 9 12 17 12 17 15 24 26 5 40 26 11 30 2 33 2 32 39 29 13 22 10 35 16 35 22 18 2 39 23 11 16 37 5 30 39 1 19 15 39 5 6 33 10 18 32 2 27 8 27 10 33 25 2 6 30 40 38 18 16 7 32 30 6 4 14 39 19 28 34 37 34 5 39 9 16 39 23 9 17 13 26 30 37 16 5 7 36 18 38 23 38 38 33 3 20 28 1 12 25 12 37 18 16 27 23 17 14 7 2 40 21 18 29 30 8 21 11 2 35 8 6 23 4 33 28 9 34 30 18 26 27 19 37 38 6 18 12 20 39 39 36 22 6 17 34 33 2 22 8 11 1 31 13 34 1 32 39 18 18 14 2 12 33 13 28 29 23 24 39 13 11 22 17 13 36 14 12 8 14 31 10 10 11 16 4 36 32 30 35 1 30 5 8 38 29 18 18 17 40 3 2 38 9 2 19 6 3 39 24 5 32 13 32 10 24 13 29 3 11 38 1 4 16 25 18 32 31 35 3 22 28 6 31 24 2 35 3 24 5 8 29 7 37 7 24 10 29 28 33 2 20 2 2 19 39 30 15 26 38 39 26 39 36 19 2 7 26 38 19 3 18 37 15 9 31 15 5 35 10 7 1 7 36 19 1 8 38 10 4 8 30 6 6 14 23 4 38 3 6 7 13 16 37 14 12 30 36 10 27 11 15 39 37 39 28 36 18 2 18 35 5 30 13 2 31 19 23 36 12 4 12 20 11 38 30 21 40 13 29 3 15 15 9 27 15 25 37 9 5 36 31 33 1 10 31 30 8 9 39 31 22 25 1 7 3 29 26 11 32 13 8 6 24 1 8 14 38 2 29 29 32 22 11 3 35 39 11 1 19 6 19 29 22 16 16 31 23 21 29 7 26 9 28 27 34 35 39 25 38 21 33 23 36 19 25 1 4 22 15 6 20 31 24 38 5 26 9 19 20 28 7 26 24 32 31 28 22 24 31 34 5 38 6 10 11 13 28 37 27 13 24 23 38 7 7 23 34 26 38 16 28 30 39 38 9 19 21 24 27 23 26 15 34 15 36 27 14 17 31 40 9 25 1 11 26 11 33 21 13 11 13 38 22 21 13 9 3 3 27 25 38 35 15 2 15 5 34 4 6 18 5 35 18 19 9 37 17 2 36 13 33 15 31 17 4 31 38 40 4 38 1 14 9 17 18 23 5 34 7 14 17 19 36 16 12 10 36 36 35 37 26 39 16 27 1 26 7 4 40 10 4 16 12 22 32 21 34 2 23 14 2 35 31 23 23 3 32 34 28 14 35 7 33 11 30 34 23 12 39 2 6 8 13 32 2 32 16 31 12 2 17 11 24 34 36 20 9 24 30 14 8 13 34 1 4 39 39 18 2 2 2 27 30 3 2 2 7 35 27 21 23 28 13 20 7 6 3 10 7 13 39 24 38 10 2 39 37 36 25 34 21 38 23 31 9 27 34 37 19 13 7 2 30 10 7 36 30 7 37 11 14 33 34 35 30 29 29 1 31 11 15 13 34 5 3 25 36 4 5 29 29 10 5 10 29 32 37 25 4 38 11 30 31 3 12 37 17 6 8 13 22 25 35 19 4 8 36 40 25 28 18 26 17 19 21 13 23 30 22 33 13 29 30 23 33 13 11 20 36 25 19 17 19 14 19 33 12 8 20 37 19 13 27 40 2 39 15 36 13 29 2 2 29 40 29 10 19 20 37 6 38 34 39 34 25 15 8 21 1 6 38 2 31 5 30 36 31 3 23 2 27 14 33 36 10 7 2 30 22 4 32 40 22 34 18 34 19 13 4 10 31 6 31 2 37 29 4 31 16 26 23 17 30 31 19 2 16 23 32 14 15 24 6 40 27 21 35 7 36 37 23 2 16 28 7 40 18 15 1 22 37 13 40 26 36 13 17 13 19 15 26 19 10 40 1 37 2 28 37 31 10 26 40 33 15 16 8 2 2 8 28 14 7 21 35 2 9 39 22 9 19 16 17 1 24 10 4 7 5 4 11 24 40 3 40 2 24 16 18 4 11 39 14 6 38 15 38 7 13 16 10 10 15 38 30 2 35 6 38 5 23 35 31 4 1 3 17 12 34 35 34 11 28 32 11 33 28 27 37 2 37 4 29 4 19 35 13 15 15 14 18 6 17 9 24 11 24 24 34 12 20 40 38 7 39 32 7 9 4 29 23 11 25 9 39 2 22 4 21 8 19 25 16 13 2 20 12 9 24 20 21 5 25 38 29 15 25 22 4 13 28 4 27 33 35 6 5 3 33 15 10 36 3 40 31 2 9 4 34 21 11 15 3 18 12 34 36 17 26 40 2 30 33 11 28 35 8 9 15 20 29 33 6 10 5 4 20 31 24 24 39 3 25 16 26 5 10 12 16 3 30 8 5 14 22 14 5 21 9 4 23 31 38 35 37 7 15 12 19 17 10 5 4 11 2 27 40 28 38 18 33 12 30 4 13 3 37 19 38 15 33 25 13 30 36 26 25 20 20 36 30 27 19 40 37 17 14 19 19 19 21 18 31 33 23 4 21 29 9 16 32 35 32 29 8 21 25 6 36 35 33 5 30 39 10 4 30 23 8 4 24 33 17 18 4 13 26 35 3 7 10 6 24 30 7 12 10 21 3 5 26 30 4 25 10 21 2 30 22 9 20 16 39 31 1 34 16 22 36 2 27 37 27 22 15 7 18 36 29 26 22 28 38 2 7 31 32 36 3 33 31 26 7 28 37 13 13 24 6 15 38 32 11 28 5 15 24 4 7 10 10 9 39 29 34 35 29 9 25 33 3 21 15 12 18 13 14 22 2 37 23 36 25 4 13 14 40 7 13 40 17 32 22 31 13 15 9 32 19 31 3 1 13 29 18 23 38 16 18 20 24 8 13 3 34 19 9 16 12 34 39 6 37 1 11 5 18 34 13 9 22 28 5 32 9 36 5 24 7 40 32 17 35 10 19 11 35 29 5 23 29 14 27 11 20 17 32 11 22 31 23 8 31 9 9 21 8 40 35 1 37 34 15 9 13 3 35 40 21 5 16 17 39 15 37 1 35 39 21 12 9 30 24 5 38 13 38 19 1 28 13 39 3 8 23 27 29 18 6 18 24 8 26 19 33 9 1 21 40 4 27 32 10 20 9 21 4 35 14 12 27 30 30 2 39 3 3 21 23 34 28 25 7 29 31 25 30 35 5 25 24 30 33 14 9 17 22 10 20 19 16 21 1 16 20 39 10 23 17 14 8 32 40 29 24 12 19 4 5 22 25 11 31 5 24 22 40 24 4 22 30 1 34 23 1 24 13 37 28 19 27 35 14 8 4 4 26 5 1 29 19 34 15 34 4 1 31 27 22 27 27 24 39 3 29 9 37 24 36 6 24 32 15 25 16 27 11 4 3 16 37 6 35 4 35 35 4 21 33 25 15 35 10 14 1 24 28 9 9 11 28 37 9 6 39 2 21 8 10 27 27 9 21 6 10 12 6 35 40 4 30 26 6 36 4 9 24 7 20 30 34 35 15 16 18 3 21 27 36 33 25 3 32 4 14 11 9 14 12 20 2 35 22 27 11 1 13 31 21 11 16 29 33 39 29 16 35 17 6 10 36 8 18 19 10 1 7 19 16 39 24 1 26 24 33 1 37 37 16 25 37 28 16 14 28 18 4 32 40 14 16 4 29 2 2 28 17 40 34 32 33 23 4 36 2 3 22 1 6 19 1 28 11 28 26 26 4 18 30 34 11 15 39 2 18 13 37 34 33 2 10 32 15 14 34 21 4 31 8 17 38 40 18 14 32 36 19 10 32 22 35 4 22 5 10 36 23 17 28 25 24 15 1 14 7 6 3 38 6 18 6 1 31 12 31 7 18 33 38 21 13 1 27 27 21 40 39 31 10 23 3 39 16 10 33 36 33 37 12 22 13 36 3 10 12 21 28 29 13 35 25 8 3 34 3 11 23 18 18 31 19 10 29 30 8 29 14 15 26 37 17 11 8 10 28 11 26 39 25 1 28 7 34 33 11 22 22 21 23 22 26 27 29 40 32 35 6 5 33 37 13 29 15 18 38 32 15 38 4 22 25 31 19 11 20 28 7 24 17 27 23 4 27 6 1 28 35 37 2 9 11 26 8 4 30 23 12 37 1 33 7 17 1 12 13 33 28 22 20 18 21 24 3 29 28 5 21 16 33 21 38 29 26 22 3 26 9 18 14 10 6 38 38 38 9 29 17 38 22 5 22 3 20 21 32 26 33 19 34 1 3 10 8 22 11 18 40 26 33 4 14 29 18 3 14 14 24 2 9 10 17 4 2 23 6 39 8 19 35 40 21 39 15 37 6 23 26 7 29 18 11 36 35 21 30 20 39 22 26 24 23 18 5 28 28 40 40 14 11 6 16 13 19 4 36 10 11 39 35 19 21 13 11 31 13 4 18 20 9 15 15 28 3 29 34 33 37 12 5 19 5 34 12 17 13 20 12 16 6 20 25 19 16 37 20 14 2 5 35 6 12 28 25 21 11 4 24 21 27 39 13 11 21 7 16 21 5 31 4 24 34 34 22 10 15 28 4 5 17 37 29 21 19 36 15 18 2 29 9 29 35 6 6 36 33 11 32 30 3 40 13 19 11 10 25 40 33 23 26 22 3 37 28 38 18 11 19 22 29 35 30 38 9 33 38 28 36 31 33 2 30 22 26 17 34 12 8 1 1 2 21 1 34 1 34 21 23 13 7 25 3 6 1 31 19 11 33 26 19 15 37 27 13 20 33 32 2 24 2 5 33 17 8 16 28 17 5 34 30 6 35 17 12 20 39 28 3 37 34 33 3 1 11 3 27 2 38 37 39 8 11 27 39 20 15 3 33 7 40 4 27 22 5 28 14 20 32 35 36 4 38 40 37 23 7 37 7 34 19 15 11 11 1 1 34 17 3 11 11 17 28 10 15 39 11 17 5 34 4 25 16 13 11 34 1 31 33 26 11 19 7 14 33 27 5 38 23 21 2 33 29 7 28 7 12 22 3 23 18 32 35 29 21 1 24 2 35 26 25 27 6 8 36 16 12 7 32 7 7 18 19 29 38 39 14 32 29 20 38 34 24 25 12 29 29 25 26 26 4 6 8 36 30 26 32 20 12 21 15 28 15 18 8 5 28 11 23 20 15 15 25 29 32 39 5 16 5 35 1 21 26 40 16 28 37 7 11 16 18 18 39 39 35 26 22 22 35 3 23 13 16 1 5 32 38 10 17 21 11 22 30 2 9 12 5 9 32 33 12 30 3 1 37 35 10 12 27 2 30 26 19 17 2 11 10 22 36 4 40 19 35 15 37 11 11 11 37 24 7 3 37 16 15 9 25 32 28 19 13 14 10 18 31 29 40 1 8 36 6 1 39 7 30 8 15 35 33 36 19 30 18 1 36 10 31 31 37 30 5 34 14 28 9 17 2 2 8 1 23 32 40 10 32 7 30 20 1 23 2 15 17 5 33 20 6 35 29 27 6 6 3 25 3 14 25 32 20 37 9 33 26 38 38 40 31 9 19 7 40 3 9 35 4 4 16 1 35 4 7 6 16 4 20 25 10 11 1 33 3 13 36 11 30 13 9 30 38 30 5 18 8 25 24 12 17 32 34 39 37 13 38 35 5 19 13 23 3 32 19 19 11 28 26 32 30 32 32 30 16 30 12 28 15 14 2 35 40 29 20 19 8 35 31 17 35 17 5 37 18 30 15 27 30 4 27 13 37 30 13 28 18 14 4 3 9 16 15 32 24 32 26 12 10 3 20 27 30 17 23 16 25 1 12 19 6 17 38 24 32 25 31 7 14 20 39 3 7 3 32 6 2 35 17 26 11 37 37 37 26 21 27 18 21 24 28 33 10 4 24 5 18 20 24 33 3 5 14 24 17 38 11 5 4 9 1 17 12 29 25 28 19 35 15 10 28 39 15 39 9 1 4 40 3 5 32 23 30 4 28 23 36 6 25 3 2 26 19 2 4 37 34 19 20 3 35 14 35 8 23 3 23 37 3 16 9 1 40 21 25 16 32 35 11 30 8 18 31 20 22 34 35 18 31 32 27 22 6 27 7 11 38 14 13 19 3 14 14 22 2 28 26 19 23 1 15 35 36 12 39 33 12 11 15 13 14 35 1 29 23 35 16 34 10 32 2 26 24 7 3 37 13 29 22 2 33 10 11 25 40 38 38 18 8 24 13 29 6 14 28 33 17 29 9 21 7 14 18 4 22 6 11 23 13 40 40 27 5 24 7 2 14 30 36 6 11 11 3 3 4 29 19 25 11 39 40 9 21 25 23 22 15 36 16 25 31 26 22 37 27 19 24 22 36 23 36 2 5 19 15 19 17 29 23 16 17 20 18 33 32 22 7 29 39 38 7 17 20 18 17 37 33 20 21 1 10 16 20 10 33 32 14 16 25 9 9 25 33 33 40 21 2 11 8 24 5 28 31 23 16 22 15 10 21 36 11 20 10 27 24 2 26 38 18 18 10 8 20 38 34 9 14 26 29 34 35 32 22 29 34 24 32 7 15 6 31 12 35 13 35 12 19 7 32 21 10 25 18 23 12 5 29 37 27 30 22 26 14 39 31 35 32 8 10 8 18 17 38 36 26 36 6 13 3 17 10 35 38 36 29 6 33 15 17 27 15 37 36 29 38 36 15 32 3 21 37 30 35 38 35 34 31 17 29 38 31 5 11 12 33 1 8 22 35 38 15 37 8 24 11 16 32 21 21 27 8 9 28 25 16 33 36 12 29 27 40 34 30 1 33 16 19 33 24 7 15 3 7 30 6 25 38 39 38 4 8 11 3 40 31 23 27 36 21 37 16 32 38 24 25 4 30 34 3 9 30 20 35 37 37 33 5 31 32 17 19 35 36 1 11 7 13 28 33 6 40 24 33 2 9 7 24 35 29 22 8 36 15 15 23 21 27 33 11 25 14 40 5 23 32 6 33 26 25 40 21 16 30 21 35 32 20 8 37 16 14 32 26 35 31 13 40 32 25 6 39 19 19 30 17 11 2 37 30 8 28 6 29 17 35 17 6 4 9 31 28 29 39 6 20 14 18 40 27 10 11 12 5 5 1 37 23 23 19 1 31 1 22 33 12 10 36 13 32 39 21 18 8 9 2 32 17 23 16 17 28 25 39 35 20 38 30 18 22 30 20 22 2 5 6 10 31 40 6 1 4 40 14 10 22 7 37 37 33 7 35 30 22 9 8 27 40 2 40 35 31 3 19 15 36 35 16 4 35 4 28 13 33 32 35 30 21 2 18 26 26 21 35 35 33 25 36 15 12 19 17 34 8 31 7 23 1 5 40 12 15 23 36 10 17 24 14 24 34 15 8 25 38 10 12 2 28 38 24 34 22 28 3 1 39 33 26 26 21 3 10 22 8 3 4 5 10 9 36 16 17 23 13 37 27 36 4 11 16 10 13 14 24 36 12 31 7 3 16 24 10 14 7 36 6 27 16 22 22 33 40 12 14 39 31 39 2 19 4 21 39 3 13 21 24 31 34 35 23 30 28 31 17 10 31 27 35 38 25 11 20 33 19 16 16 30 40 35 19 16 11 19 36 18 29 15 11 21 3 40 25 22 16 14 21 38 6 40 27 26 30 17 16 20 36 18 5 9 16 17 23 10 40 15 25 4 36 14 5 16 38 15 14 5 22 7 28 32 35 36 6 32 21 34 22 4 3 24 5 17 32 24 21 1 17 40 27 23 20 27 19 4 11 16 16 3 29 34 15 40 6 30 8 13 19 23 20 32 19 35 22 27 37 10 20 21 29 12 38 7 18 15 1 8 31 27 27 29 24 4 29 7 12 8 7 31 21 12 10 26 36 40 33 22 17 36 35 20 9 31 6 14 35 40 6 12 11 6 11 17 21 12 25 1 7 5 13 4 37 24 1 26 21 2 16 10 31 7 8 21 33 32 22 21 1 25 23 5 1 2 21 31 16 20 27 10 26 24 3 17 25 35 28 7 10 34 25 18 21 27 8 10 19 20 22 24 35 17 15 9 3 10 26 20 21 22 15 1 2 38 6 27 27 26 16 16 37 28 29 23 22 28 30 37 35 40 13 12 16 21 38 39 1 30 12 23 3 15 5 12 30 2 36 10 40 20 36 1 23 19 5 36 36 9 38 21 39 20 26 37 36 6 32 26 9 27 40 40 28 12 2 22 28 7 1 28 32 26 40 8 13 2 15 26 21 30 23 23 37 13 10 21 33 29 13 11 15 12 40 26 39 26 36 17 18 23 28 40 3 6 32 5 33 39 24 40 4 28 13 24 5 29 39 40 25 25 10 28 2 25 37 15 16 14 1 34 17 31 13 37 32 8 40 33 11 8 20 36 21 23 35 28 24 36 34 5 17 19 18 7 6 5 31 7 20 35 1 29 29 20 40 17 22 2 37 7 28 24 22 30 29 25 20 16 25 27 31 3 18 39 4 18 8 38 6 38 35 9 2 20 12 15 25 11 21 22 17 34 39 32 37 27 6 9 14 28 26 18 27 28 9 13 17 23 28 8 15 10 17 15 11 27 11 9 9 33 6 19 11 1 3 20 33 35 25 28 17 32 37 32 11 1 25 19 12 37 12 40 21 11 9 4 27 24 5 19 13 35 37 8 18 33 27 35 25 38 29 27 16 31 11 15 18 28 18 16 20 21 18 17 3 13 10 5 21 23 32 36 16 30 35 33 23 8 34 25 23 11 27 35 21 8 3 26 32 37 33 28 40 14 31 30 17 14 34 35 28 8 34 21 28 27 12 32 24 14 40 8 10 38 34 35 1 19 26 2 8 31 7 40 11 1 33 37 1 35 14 12 10 17 5 15 30 1 15 4 20 37 34 3 6 25 37 5 34 1 25 24 6 7 3 11 10 10 16 39 22 16 24 15 31 9 22 32 3 32 13 24 14 3 26 4 20 4 36 14 31 21 31 21 10 26 36 17 2 19 27 13 18 34 38 17 2 33 18 39 29 40 26 14 2 34 35 19 30 4 32 6 5 28 23 28 16 7 29 8 5 13 40 7 35 14 14 6 4 38 35 24 10 26 24 21 5 21 12 8 16 2 7 17 10 9 10 16 35 30 1 35 1 3 32 10 28 21 8 23 9 23 36 17 18 3 21 34 20 27 33 32 25 3 12 27 26 24 36 19 33 1 17 2 15 8 29 39 4 22 12 32 29 10 12 33 27 13 35 5 4 27 8 25 5 28 35 39 19 36 22 38 16 16 34 6 35 1 9 29 27 22 26 28 37 30 11 10 25 31 14 10 21 40 7 28 11 28 34 28 40 35 7 40 21 8 15 11 9 28 31 35 6 33 36 6 11 32 20 17 31 6 37 25 8 19 11 28 38 10 15 26 15 35 26 15 26 34 6 30 18 39 10 34 22 10 26 35 38 22 34 10 10 21 15 17 32 27 18 5 9 34 34 28 16 23 19 31 6 31 3 32 16 4 1 28 30 33 20 8 24 33 39 39 38 17 28 16 5 9 40 29 24 3 32 5 20 4 31 23 12 2 29 23 33 2 14 7 7 38 35 27 13 16 14 17 15 13 5 7 12 4 4 32 22 32 34 5 16 3 27 22 18 14 19 27 29 21 22 34 5 25 25 8 25 12 40 11 24 23 28 26 5 14 36 1 18 13 40 31 27 3 39 11 4 13 3 40 8 3 37 13 17 31 19 23 36 37 28 12 17 38 7 5 25 24 12 16 25 37 28 38 36 29 6 6 29 1 7 5 39 30 4 39 38 12 33 20 35 26 3 35 17 16 8 6 27 9 3 2 24 3 10 32 10 23 13 22 6 9 31 7 10 3 6 5 19 29 14 29 6 38 28 31 38 5 40 20 26 16 4 26 11 33 9 40 31 30 40 38 39 37 9 2 19 31 11 37 10 16 10 40 20 21 17 32 6 15 39 8 21 1 13 28 35 21 20 14 26 17 31 11 10 7 11 33 5 18 11 25 39 3 19 20 24 20 30 32 38 16 16 35 35 35 11 2 1 17 5 9 7 31 7 4 20 20 20 11 18 31 28 5 19 40 17 1 12 32 39 11 11 8 35 3 33 25 32 33 39 23 5 8 30 35 33 35 31 40 7 39 2 25 5 12 34 27 19 33 22 23 6 15 38 24 6 33 37 37 22 30 14 39 19 26 23 28 23 12 6 8 15 1 7 31 40 13 6 40 25 1 30 13 26 40 28 10 27 18 29 29 1 6 23 36 19 1 25 5 10 9 21 29 36 31 4 1 3 12 27 26 26 20 23 40 18 29 20 2 14 25 25 37 28 17 39 3 1 25 8 28 15 3 39 26 34 31 22 8 39 2 29 35 14 18 10 26 17 18 33 15 34 12 22 16 12 11 20 6 2 15 39 38 22 14 26 2 10 29 13 20 31 29 33 28 4 27 22 10 11 20 38 10 2 24 22 15 30 36 18 35 37 13 8 16 28 32 23 31 21 38 35 11 38 34 8 9 11 6 22 18 28 39 25 26 7 33 13 2 32 13 31 36 6 17 24 24 5 7 5 35 2 17 30 40 25 21 13 4 1 12 28 26 39 13 18 2 25 20 31 18 33 5 20 38 37 16 32 30 21 3 25 22 12 10 9 4 17 4 1 6 16 7 31 39 28 4 13 30 5 40 20 14 11 35 29 19 28 4 25 28 11 23 15 39 1 7 40 21 30 34 12 37 28 23 8 10 37 11 10 19 39 23 32 3 11 35 2 7 4 13 20 32 26 35 10 33 31 10 9 18 39 31 15 10 31 37 35 35 38 31 9 8 11 22 21 3 33 17 29 36 21 21 33 11 29 28 38 38 27 14 6 23 38 22 23 9 29 8 15 25 7 20 39 10 35 30 14 29 23 24 39 34 3 9 30 32 17 20 3 17 38 8 20 9 31 3 3 6 30 34 27 14 18 4 13 25 25 8 34 4 17 25 22 4 36 11 13 23 30 21 13 11 19 38 38 31 39 32 6 19 26 6 20 16 23 33 13 16 29 30 18 14 10 33 23 19 11 39 7 37 1 15 30 10 11 10 5 23 39 4 36 27 8 34 39 22 28 23 23 23 18 1 36 11 37 30 8 17 13 11 40 2 26 2 22 34 11 16 35 24 1 15 5 31 8 1 10 24 2 39 27 19 38 27 2 20 40 33 15 20 24 29 6 35 15 29 31 4 34 15 31 28 8 27 18 40 36 39 38 30 23 36 24 22 3 37 1 36 10 35 39 8 20 14 27 18 10 14 1 31 3 29 28 23 27 22 29 20 31 6 22 14 7 1 11 30 32 1 31 9 20 23 26 22 2 14 40 11 30 22 27 7 16 18 9 24 3 10 8 6 34 2 3 35 10 35 7 25 2 19 7 37 7 35 15 34 4 17 39 28 5 34 36 29 39 24 32 24 8 36 32 7 2 36 9 24 19 26 13 32 31 31 5 11 7 40 20 12 13 8 4 19 30 17 27 28 23 23 10 24 40 36 15 39 19 21 30 8 39 15 33 11 17 19 15 40 37 4 18 34 33 37 8 7 3 35 25 40 20 30 32 15 2 34 30 35 28 14 11 6 9 37 11 14 27 29 32 14 14 32 38 6 35 18 10 24 6 2 17 6 29 3 29 1 27 33 32 21 25 20 36 25 2 36 5 30 26 10 27 18 6 6 22 9 33 21 16 29 29 5 35 29 32 31 25 15 26 11 3 18 18 15 9 14 27 36 1 5 27 33 21 19 21 39 5 38 24 21 8 6 7 15 13 3 16 5 21 17 19 34 22 36 15 17 3 29 25 20 31 37 38 2 30 20 32 1 3 15 16 8 6 11 35 14 11 28 9 33 21 12 10 24 36 33 29 36 16 6 19 38 38 9 38 13 20 40 6 21 20 16 3 28 22 7 3 39 26 8 22 2 22 16 16 20 8 12 5 33 10 7 13 23 28 28 2 12 15 13 9 36 2 22 15 39 21 2 29 4 34 25 32 32 15 5 13 36 9 26 39 9 25 13 38 2 39 4 28 9 24 16 21 32 1 2 23 2 8 6 15 32 26 6 5 8 36 6 22 9 15 23 23 37 14 33 9 37 24 8 1 34 13 28 7 17 30 36 1 33 6 3 36 2 38 8 17 30 35 6 30 39 7 20 27 20 8 32 6 3 22 37 23 30 24 36 9 4 19 12 39 9 3 39 32 39 21 16 29 2 22 20 12 15 4 13 9 18 39 4 13 35 16 36 27 35 39 10 2 23 36 12 30 34 11 40 2 21 8 11 14 38 21 34 35 24 39 15 29 9 24 25 26 11 36 36 32 25 4 38 22 34 29 35 19 28 23 23 6 27 13 36 7 28 24 2 29 19 14 24 14 9 3 9 29 15 26 12 30 4 25 26 31 19 1 34 27 29 20 27 31 40 6 6 12 24 25 13 28 1 1 25 38 17 8 6 19 36 16 6 7 3 14 5 10 14 39 18 12 20 17 14 28 35 8 1 14 24 40 1 33 28 23 21 7 30 28 13 32 38 10 6 16 21 19 25 17 34 35 31 31 14 40 31 40 34 15 29 40 15 34 3 29 27 11 40 5 20 17 7 23 30 17 1 4 8 20 38 9 35 2 25 40 24 8 4 9 15 35 33 9 18 25 13 38 24 7 15 13 36 2 37 8 40 14 40 36 24 33 22 30 20 11 3 29 16 4 14 23 16 10 2 25 12 36 25 33 29 24 33 36 36 15 15 27 19 38 31 29 13 8 36 33 20 27 21 24 29 13 25 38 5 22 6 22 16 10 32 8 21 8 7 33 15 5 34 2 36 30 12 5 8 13 10 32 24 40 39 30 1 36 28 33 10 18 14 6 22 15 8 21 32 4 23 14 37 6 35 14 34 29 6 30 9 6 9 29 16 5 20 39 21 17 23 15 25 39 1 32 4 33 2 15 15 9 4 14 25 24 32 17 14 18 27 25 29 31 35 32 30 27 10 32 17 11 23 34 40 17 16 27 25 19 26 38 21 29 11 40 26 32 30 10 31 13 6 19 31 31 30 10 13 25 38 13 8 24 40 34 20 10 19 19 9 2 31 37 1 19 5 37 34 13 25 2 26 39 33 33 17 3 37 10 10 21 25 13 38 8 32 10 11 39 10 7 28 18 23 18 1 7 25 1 20 39 38 20 28 34 5 20 39 14 37 3 30 22 34 26 29 39 14 28 35 18 3 26 3 37 12 38 32 24 19 5 15 34 36 22 38 30 10 39 28 20 1 24 16 38 1 34 15 12 9 25 4 29 13 15 33 3 18 30 30 35 19 23 40 27 2 14 28 3 32 18 11 1 3 2 33 14 9 32 38 33 20 16 29 25 19 5 19 16 20 5 13 20 2 1 22 5 14 34 37 21 17 24 30 18 12 20 26 31 9 16 29 22 40 37 38 4 11 4 33 13 7 37 8 17 15 7 19 30 29 26 4 23 3 3 19 5 18 9 23 16 37 19 6 15 5 37 26 12 9 5 3 31 29 11 12 30 4 26 15 5 15 38 19 1 31 14 37 39 16 38 15 30 29 21 28 10 2 11 25 28 33 6 8 33 14 7 40 22 16 18 26 28 20 12 23 6 11 9 25 3 36 10 25 36 33 6 36 34 33 25 14 11 35 16 14 8 12 28 33 36 11 6 20 6 10 36 31 15 14 12 12 26 37 24 19 31 10 1 31 35 35 35 13 33 2 36 39 36 1 22 15 22 28 36 1 22 25 12 40 33 37 28 21 19 14 26 35 15 32 17 19 25 26 9 6 27 33 5 23 13 11 10 36 27 31 8 15 38 1 38 11 2 30 12 25 19 2 19 35 27 16 14 28 9 27 33 40 37 21 15 2 10 34 8 20 35 31 7 2 40 22 10 10 13 15 12 37 35 21 18 10 8 22 38 17 36 7 38 23 32 36 35 4 5 7 1 10 27 32 28 35 30 13 30 11 37 16 27 21 31 17 25 13 2 39 25 26 35 9 15 12 7 1 16 13 13 31 9 24 19 22 31 26 19 22 19 32 15 40 19 34 8 29 37 37 37 30 23 18 13 22 29 36 30 40 21 26 20 39 9 13 4 1 32 22 37 36 28 15 14 40 5 31 20 40 4 23 29 28 20 1 29 18 17 27 40 25 36 7 19 20 33 12 34 17 36 37 15 34 27 28 1 20 37 3 10 5 8 32 35 14 14 26 5 40 36 9 8 22 4 33 29 31 39 13 2 12 3 10 6 27 31 2 17 36 26 36 6 28 26 25 32 13 9 31 30 19 34 6 29 31 6 4 11 29 30 31 29 29 33 33 26 11 14 22 39 3 39 33 18 34 40 26 8 18 23 30 29 21 40 24 31 35 7 20 5 29 26 28 40 34 25 4 33 31 13 32 10 36 39 24 40 21 7 9 6 37 35 6 34 24 10 17 13 12 13 32 7 27 6 17 37 31 20 5 14 23 15 1 31 38 13 10 14 4 26 27 31 14 14 15 38 40 8 6 34 23 17 18 23 15 21 11 34 17 9 28 30 1 5 32 31 28 2 10 7 2 1 16 26 30 40 22 33 19 22 22 37 21 9 3 20 25 1 3 6 7 16 15 15 6 6 28 38 22 37 29 32 37 4 25 10 30 24 17 1 30 17 26 5 25 26 3 33 3 20 5 28 16 20 39 30 31 35 10 35 7 35 26 39 13 5 11 18 35 33 20 33 27 10 6 13 4 37 35 20 37 10 36 26 12 5 19 5 4 15 40 15 4 37 37 24 26 4 30 18 17 13 13 2 5 25 19 19 11 17 10 30 1 20 13 25 27 12 28 32 34 12 36 17 26 14 12 16 13 7 8 12 31 40 6 16 22 31 38 38 27 21 26 37 38 30 22 20 4 39 3 6 32 17 5 18 21 11 7 23 15 39 36 39 30 10 5 25 12 3 35 31 2 29 6 16 40 38 33 12 37 29 33 23 21 1 37 24 35 9 15 11 6 33 21 18 34 4 5 22 19 38 8 21 21 29 16 31 35 13 26 38 15 5 21 32 16 2 36 14 7 25 7 35 11 37 22 36 21 9 31 28 24 26 21 22 12 12 26 6 6 36 27 25 18 3 21 32 28 19 29 24 18 14 32 37 37 9 7 30 1 29 27 17 14 23 39 2 5 19 34 10 8 22 8 13 32 3 27 15 4 6 22 38 9 1 32 37 26 20 15 38 9 7 33 37 13 38 23 33 35 1 5 29 28 26 26 31 19 18 37 4 37 40 19 30 30 38 9 24 22 14 24 18 38 7 22 16 9 9 9 8 5 7 37 20 6 39 1 25 13 23 24 40 20 36 1 2 5 23 9 14 20 28 26 29 21 7 29 35 6 4 8 4 24 37 14 22 18 23 29 33 39 21 7 16 23 34 23 31 5 20 11 25 8 17 15 35 39 5 6 7 1 23 40 31 17 18 13 30 11 23 6 27 25 4 24 38 7 14 40 28 2 13 32 2 37 7 38 5 36 8 14 16 20 10 8 23 21 15 34 24 17 37 35 14 6 39 27 2 39 1 1 21 36 23 22 29 1 12 23 20 31 12 28 32 37 4 7 24 40 23 32 6 29 30 16 17 20 16 18 19 11 20 14 33 39 37 11 21 29 11 23 39 36 3 19 3 26 22 22 26 28 31 14 3 39 29 6 24 16 10 20 39 24 16 8 30 31 18 23 22 32 1 14 6 25 4 27 40 19 28 22 38 12 14 34 28 31 19 23 32 29 3 1 9 12 27 10 16 2 26 22 15 21 29 23 37 2 20 19 21 21 7 6 22 2 7 12 21 11 36 2 31 39 13 10 6 24 38 12 24 39 3 16 12 36 39 25 37 10 28 4 33 37 19 2 38 6 26 29 35 39 36 38 4 33 22 34 21 31 7 25 17 32 26 23 17 8 10 27 30 29 12 3 10 5 30 4 14 32 18 2 1 13 4 36 28 39 27 10 31 39 7 23 7 18 24 25 17 7 37 38 30 28 22 10 8 12 13 38 20 33 25 27 15 6 36 29 7 16 2 4 31 12 23 1 31 20 16 32 27 14 34 15 4 32 16 7 31 17 2 38 12 6 13 29 12 37 8 37 10 28 3 1 15 36 36 21 28 32 9 5 37 25 6 21 6 12 38 13 29 29 14 21 4 35 27 10 40 12 10 7 16 11 27 6 23 24 18 19 1 33 35 32 15 22 36 3 38 5 20 20 22 10 30 16 20 10 18 12 20 20 35 21 32 17 23 27 39 19 22 4 6 33 37 10 17 29 29 20 9 10 3 5 30 12 3 12 21 22 20 13 39 9 16 17 25 2 26 33 32 38 4 19 26 13 4 22 5 2 33 12 20 24 6 37 26 36 25 2 37 11 14 4 17 35 23 15 2 37 3 9 10 5 13 40 38 27 22 28 37 30 27 37 5 15 18 6 21 36 15 19 36 24 34 29 1 6 25 18 1 9 40 3 18 34 5 22 15 4 31 27 4 8 30 24 28 31 36 34 23 4 10 35 14 10 3 33 32 4 39 21 12 20 1 36 28 7 32 1 4 10 25 38 3 8 13 35 39 35 10 14 26 16 20 14 19 6 28 3 12 9 10 15 34 27 27 7 24 35 28 16 39 34 21 27 10 31 1 6 19 13 12 7 24 4 40 37 32 1 33 1 29 40 1 29 38 30 37 11 26 11 18 14 8 36 14 34 22 36 5 33 32 10 6 31 25 36 19 5 6 3 9 24 37 21 36 37 6 14 32 31 18 23 37 28 40 16 38 38 13 15 17 39 11 3 21 27 35 29 33 15 20 21 36 5 35 29 35 20 27 23 24 22 39 5 23 28 5 17 24 25 14 26 31 10 3 10 32 5 29 32 33 19 17 27 8 6 34 8 2 35 3 18 23 25 12 3 4 36 37 28 20 40 36 12 14 17 11 30 22 34 39 24 32 26 17 40 38 6 32 36 12 26 18 39 2 25 27 29 8 25 5 7 4 10 2 11 35 8 25 29 30 15 18 35 35 33 7 20 11 26 27 5 25 19 30 34 19 40 12 29 35 24 29 17 5 33 34 18 29 12 39 28 7 23 17 39 12 4 10 1 15 31 15 6 12 22 36 21 35 15 4 13 16 4 15 18 35 39 26 31 18 23 14 33 32 30 32 32 18 13 2 15 12 9 17 9 29 11 23 2 14 29 38 20 1 22 8 29 8 2 15 24 36 22 20 25 10 35 33 1 38 32 24 30 34 15 39 21 32 3 39 8 19 7 33 38 6 32 37 15 19 9 9 38 31 6 15 2 38 25 17 19 40 17 20 16 8 40 12 35 22 40 24 34 1 11 33 40 10 21 22 27 13 36 35 31 29 21 9 39 6 25 12 24 27 23 2 40 8 18 37 12 24 21 16 33 25 12 23 35 1 36 11 8 6 22 23 11 32 20 23 15 31 23 17 39 33 24 23 2 12 39 17 16 3 39 8 27 21 20 28 30 20 39 10 7 20 26 19 9 24 16 25 14 35 3 29 29 23 22 5 36 31 15 10 14 16 21 27 34 21 19 3 27 27 7 36 16 21 24 8 12 19 21 40 35 9 33 35 37 13 6 24 17 36 31 14 32 11 39 19 27 17 14 8 31 27 16 5 9 30 34 38 31 17 26 15 38 21 16 36 13 5 27 27 38 17 17 32 34 15 25 23 23 24 11 32 16 35 7 24 6 38 10 26 8 39 35 7 14 26 17 31 7 31 32 35 21 37 25 28 14 2 20 9 24 2 16 18 20 24 7 3 40 22 38 21 14 21 14 10 2 37 27 16 31 10 31 11 20 19 1 9 15 2 35 10 10 35 13 19 28 16 3 35 8 26 20 16 19 27 2 3 1 6 39 1 9 20 36 2 16 37 36 16 5 7 17 14 27 9 17 6 8 5 21 29 8 8 25 37 25 16 5 17 35 36 36 29 24 11 11 30 29 27 3 16 5 32 7 1 7 15 20 33 16 7 40 4 40 25 31 9 29 34 28 25 13 1 5 16 9 36 7 34 9 29 23 37 10 39 20 11 40 29 39 23 30 30 12 5 37 19 5 5 23 4 15 19 21 21 18 25 25 28 33 39 18 4 31 11 27 30 12 16 5 18 23 29 36 40 7 7 14 23 8 16 5 26 10 14 1 3 8 24 18 21 18 9 34 33 2 1 16 12 21 22 5 33 20 17 13 22 5 25 2 20 17 2 25 1 15 33 3 28 33 20 21 14 40 15 23 33 16 36 7 38 35 34 36 12 9 29 39 35 7 25 3 28 28 4 24 7 32 24 17 11 10 26 17 19 16 18 14 9 26 32 34 6 9 8 13 3 34 37 22 38 29 38 17 21 30 5 18 9 2 15 19 13 21 20 23 9 9 7 25 14 10 23 2 37 1 4 20 8 22 27 23 7 23 28 14 20 30 12 9 28 32 22 9 38 22 13 12 18 39 7 22 26 18 20 37 32 10 24 8 36 9 5 3 19 36 8 30 28 22 14 19 1 27 23 30 4 16 36 25 26 20 19 23 11 14 6 13 17 36 27 23 8 2 4 25 10 13 26 35 12 7 28 5 22 15 5 34 34 9 14 37 18 29 35 28 11 14 17 28 25 39 10 37 17 40 3 33 15 26 5 36 6 16 18 10 25 18 26 28 9 6 18 26 8 26 36 11 10 35 4 25 6 30 7 18 11 35 10 17 35 7 7 29 20 10 22 22 24 27 35 30 10 17 21 38 33 1 6 17 3 11 39 26 20 24 15 39 35 29 39 17 21 34 13 17 9 19 30 31 31 38 28 2 10 26 22 1 37 19 32 36 20 38 1 1 40 29 8 35 17 34 14 7 2 6 1 6 29 33 3 19 1 13 1 37 10 12 11 18 5 36 9 5 24 24 12 2 8 36 29 38 31 6 4 40 30 10 38 23 27 16 19 6 35 10 14 4 16 27 36 38 5 10 24 38 2 4 25 6 39 22 36 39 23 14 8 38 34 22 25 38 40 10 4 37 4 36 3 27 4 40 34 15 10 34 40 31 22 7 5 21 27 5 32 25 16 15 37 38 29 36 20 16 10 32 1 7 12 23 39 35 3 22 22 23 12 24 20 38 27 26 35 1 30 10 11 35 37 9 29 33 8 26 31 17 19 13 15 33 24 13 23 23 3 7 8 29 20 5 26 26 18 35 36 10 24 16 6 27 21 35 32 31 27 39 16 5 11 2 36 25 7 23 25 26 32 13 37 15 28 29 2 17 17 38 5 31 19 9 29 12 38 38 36 8 1 40 23 24 39 37 30 14 13 7 25 36 37 5 13 20 38 6 18 17 37 28 34 1 10 16 10 4 28 6 6 11 1 6 13 5 18 36 4 15 14 37 40 18 27 22 11 35 31 28 39 34 19 27 15 31 11 13 10 8 38 12 9 38 22 25 27 28 38 24 17 33 33 40 35 35 33 22 7 4 31 34 18 10 1 24 5 16 16 18 39 9 37 35 8 21 30 37 21 38 32 27 38 5 16 11 30 21 9 8 6 6 3 33 22 39 38 37 17 6 33 3 18 13 32 13 15 34 6 25 28 12 22 7 21 32 8 8 36 33 7 21 16 26 39 5 20 32 13 11 38 16 18 24 29 21 24 26 13 37 30 26 35 28 26 29 19 8 39 3 31 25 33 22 20 33 14 3 23 4 18 8 39 31 39 13 19 33 7 14 3 4 8 16 10 22 38 14 32 11 30 40 19 2 10 23 40 14 39 28 6 39 33 34 36 30 15 2 7 2 27 17 19 32 5 2 20 9 10 20 38 27 17 15 27 34 17 32 38 33 28 28 9 37 38 19 9 35 39 11 37 10 17 9 21 6 24 37 37 18 26 17 12 11 27 20 27 18 36 5 37 6 27 25 20 26 8 38 12 17 31 3 32 12 21 29 29 27 22 5 5 30 7 10 40 26 39 13 26 26 33 7 35 28 8 38 34 20 37 20 27 30 15 22 19 25 2 10 1 34 29 35 14 37 39 32 11 30 13 2 3 40 33 18 4 23 8 9 21 25 23 31 39 16 14 4 39 12 28 1 26 14 1 25 17 3 3 30 5 2 37 33 4 31 31 13 8 8 32 29 24 32 31 2 34 36 33 31 30 36 31 40 30 32 37 18 24 10 10 3 8 6 35 29 24 23 28 22 12 11 8 17 1 23 7 9 19 28 2 32 21 16 12 21 9 30 25 21 39 10 33 13 25 17 13 9 16 20 22 4 36 21 29 4 3 9 26 25 21 40 9 30 5 29 2 35 16 6 16 31 27 6 38 12 6 39 12 35 3 7 8 8 2 26 12 8 9 8 20 23 26 14 23 22 6 17 1 33 11 7 14 7 35 32 13 15 9 38 28 18 20 20 38 34 32 30 2 14 2 32 8 31 23 19 30 31 29 22 13 21 32 6 14 27 35 3 26 4 21 29 8 1 37 7 20 29 9 7 24 2 18 16 7 4 18 25 28 14 31 39 16 10 23 22 40 22 35 40 32 32 26 17 1 24 25 34 15 38 1 15 8 19 12 33 40 4 39 40 26 35 34 32 1 20 3 26 16 34 5 19 29 9 11 14 38 8 26 39 36 40 26 28 5 15 20 35 4 32 38 3 36 35 24 9 3 18 4 2 24 38 11 13 8 35 22 31 40 29 13 13 20 20 39 12 2 14 21 25 1 28 40 2 34 3 7 23 12 30 10 19 28 24 20 36 1 4 21 22 23 4 39 27 18 38 20 27 9 12 33 22 17 34 25 34 7 33 17 4 7 36 9 4 1 1 32 40 19 22 8 37 32 3 22 26 30 11 9 4 6 31 13 21 15 17 24 32 8 1 39 27 26 32 31 20 4 3 27 36 37 17 17 11 5 12 34 29 12 11 19 32 4 38 40 40 5 22 28 13 17 24 8 15 37 5 13 35 31 25 33 35 32 16 19 30 19 7 38 30 24 6 22 37 25 22 13 14 24 25 39 19 22 31 9 23 26 3 19 18 19 10 28 10 1 37 6 31 34 4 28 37 25 31 8 34 27 34 24 8 10 8 28 19 8 19 7 2 34 13 6 30 27 9 14 24 9 26 32 1 6 28 4 10 37 39 4 19 38 27 33 12 4 28 33 20 8 8 17 1 28 10 33 30 17 9 28 34 35 39 11 3 18 3 31 20 20 19 20 28 18 17 28 15 22 27 32 21 15 22 33 23 11 15 12 37 27 2 15 18 26 9 24 20 10 2 23 19 12 2 27 27 17 20 31 38 14 4 7 37 10 26 33 3 3 13 31 26 18 35 2 33 1 1 37 28 22 33 35 39 24 27 16 37 8 38 15 31 23 9 36 36 21 13 5 8 7 22 22 9 25 26 1 8 4 22 2 30 37 28 39 15 19 40 3 10 21 2 30 8 17 39 11 13 36 25 35 32 31 18 20 30 13 32 11 37 25 5 33 15 31 40 2 40 7 21 11 19 29 14 19 1 12 7 40 3 35 21 32 40 36 15 30 3 30 22 27 17 20 25 31 24 23 6 4 37 34 10 4 29 34 6 14 23 23 34 21 37 28 17 18 3 35 15 3 13 25 32 18 38 32 34 30 14 34 28 2 5 15 2 28 14 40 10 37 10 30 2 40 28 11 17 7 21 38 13 17 29 17 17 33 36 24 1 19 11 31 6 3 35 10 39 2 22 28 36 9 12 28 39 4 4 2 39 13 3 15 9 8 14 27 2 38 27 39 15 20 23 3 40 16 18 27 22 6 8 17 39 13 20 11 35 2 17 14 40 24 28 21 33 35 30 4 6 26 9 4 31 31 22 26 31 2 11 16 31 15 12 10 3 24 10 12 12 18 37 36 39 22 1 5 29 8 16 20 32 21 40 34 27 28 15 7 3 32 38 30 22 32 7 38 5 8 32 19 12 28 10 20 19 16 10 20 9 18 37 40 21 26 35 12 34 31 28 17 31 20 33 32 5 11 13 11 40 32 8 15 31 24 29 11 33 32 9 20 11 25 40 34 8 20 3 28 11 34 19 10 17 12 7 32 13 19 27 36 7 21 29 12 11 33 5 39 26 11 26 1 14 38 32 3 12 15 24 10 17 26 17 24 28 14 19 32 2 18 11 40 11 30 2 28 23 27 28 36 32 16 33 24 14 19 3 6 29 35 18 9 35 40 40 30 27 16 19 15 25 24 15 1 15 30 9 27 17 29 21 13 36 30 31 39 40 12 32 36 16 36 6 7 8 6 12 8 33 4 22 30 31 16 3 39 8 3 30 30 6 17 22 24 26 24 26 21 37 37 25 20 22 25 28 5 23 27 5 22 16 24 13 2 38 14 10 9 17 27 35 29 18 8 27 19 25 31 12 18 10 3 18 38 30 37 35 31 25 30 11 35 39 20 10 8 8 19 31 9 13 33 2 2 26 10 17 20 34 16 8 37 19 33 2 29 17 15 17 32 39 6 20 35 30 39 24 24 36 3 27 24 30 16 18 27 14 2 12 28 31 21 2 27 40 29 18 2 9 26 34 19 4 32 8 26 27 33 27 24 15 9 2 20 1 28 3 10 2 26 40 13 7 12 7 13 17 21 24 3 36 1 26 31 4 28 28 10 33 32 28 16 13 28 16 5 40 40 4 21 6 6 24 29 1 27 34 16 39 24 29 30 17 12 7 19 22 22 39 18 6 26 37 27 37 12 17 11 18 10 3 32 2 21 31 13 21 20 7 26 38 27 7 10 30 15 36 13 9 19 20 37 12 7 11 7 32 18 10 29 7 37 5 34 23 17 18 36 4 37 17 1 14 9 5 6 23 13 7 25 24 8 33 34 25 8 1 38 32 1 23 40 14 6 32 4 16 2 32 9 37 22 14 39 10 11 13 36 2 13 5 23 14 15 13 37 4 27 9 28 28 5 28 22 38 2 36 25 4 40 9 38 38 6 29 32 15 28 12 34 9 17 20 27 19 22 27 11 17 2 40 17 5 2 12 24 15 21 28 22 21 28 18 35 8 6 11 34 14 3 17 18 9 31 29 34 8 3 39 40 5 3 30 14 1 39 15 26 21 27 33 18 32 25 36 24 17 19 15 33 18 27 7 26 15 1 8 4 38 2 40 16 11 26 9 15 6 2 34 38 12 7 38 11 36 38 25 39 33 2 25 16 17 36 33 30 23 6 38 37 36 6 27 24 36 8 38 37 14 38 30 19 3 14 5 23 2 6 12 16 27 20 31 31 4 12 23 40 2 22 32 33 1 23 13 15 20 5 32 32 16 29 18 7 19 21 30 13 2 4 7 22 35 13 14 26 31 31 1 35 35 2 33 6 27 24 18 28 35 14 10 39 38 5 7 8 25 7 23 33 26 10 23 27 11 32 12 31 39 7 11 1 6 9 37 5 34 26 16 13 3 25 37 24 24 22 17 31 20 12 28 16 11 13 20 39 32 23 34 37 4 23 31 34 19 18 38 1 7 32 30 10 23 21 10 22 7 21 16 30 27 28 14 12 15 31 19 23 32 30 31 5 14 24 35 29 38 1 31 19 26 7 6 10 28 18 6 13 30 26 3 39 18 26 5 15 22 11 40 21 7 34 4 20 21 29 26 12 22 31 33 7 12 15 14 32 4 17 12 13 33 1 27 26 15 38 40 13 13 13 21 19 19 27 33 40 14 10 11 34 5 25 14 34 15 40 32 2 18 38 5 35 35 27 36 35 30 27 38 34 2 16 12 32 24 19 35 19 39 21 24 9 26 1 26 27 22 10 10 35 15 23 37 13 6 3 23 15 2 40 31 20 7 8 6 35 18 28 27 9 14 19 26 35 30 17 27 39 1 38 19 30 1 13 40 7 5 8 5 39 25 2 32 16 36 3 1 18 9 19 18 34 22 36 6 8 7 7 37 6 18 18 14 34 29 15 37 16 5 6 19 21 36 14 7 21 30 19 18 24 16 3 23 35 31 28 40 17 39 31 19 11 15 36 34 28 17 37 30 33 28 11 35 40 39 36 6 14 14 39 24 6 18 6 23 36 35 11 3 15 20 1 17 25 9 28 7 3 11 28 33 4 39 34 33 15 27 36 30 1 31 40 5 17 38 40 33 6 11 13 13 20 33 16 37 8 5 32 30 4 38 17 25 9 15 6 9 36 33 10 17 5 37 22 38 1 24 39 14 15 28 14 33 22 21 7 7 11 32 16 37 16 23 24 24 7 19 21 19 30 9 37 39 3 36 15 8 11 20 2 17 30 26 36 14 27 28 4 33 19 6 16 7 20 18 19 40 19 3 37 36 15 39 12 38 19 30 28 15 30 5 17 14 8 29 18 7 18 30 38 11 9 30 16 24 12 35 21 35 29 15 19 14 12 4 22 11 25 31 11 10 19 38 30 33 15 24 39 37 35 38 3 12 23 18 6 27 28 34 36 26 32 12 14 35 40 35 24 16 29 5 36 36 23 5 30 12 14 19 28 18 10 9 40 16 18 25 31 37 37 19 12 28 8 7 5 26 18 22 12 4 30 4 31 7 21 12 36 4 35 36 31 5 28 2 8 30 16 15 12 5 16 21 15 27 6 10 19 31 2 37 2 11 12 40 38 21 39 26 27 12 4 38 12 11 14 5 25 3 25 15 32 30 19 26 24 4 4 1 11 33 38 22 8 25 16 12 18 5 4 28 40 40 24 1 32 17 4 2 24 34 28 15 8 24 39 38 27 33 29 40 7 1 29 28 10 23 26 14 37 39 12 32 21 1 9 34 28 23 13 3 25 21 1 26 34 37 1 4 20 29 10 14 25 36 6 2 32 35 5 24 18 34 12 40 25 24 23 30 28 12 6 21 14 27 31 30 6 32 8 5 37 12 11 28 31 1 14 17 20 39 25 37 14 6 6 26 18 38 17 14 14 35 37 18 33 28 26 32 29 16 24 11 4 27 5 11 26 4 18 27 34 16 7 28 38 26 36 16 2 22 33 9 29 40 18 6 12 1 29 36 25 17 16 29 30 9 3 15 19 11 24 18 1 30 12 8 15 38 28 5 21 40 25 36 25 37 39 17 20 35 29 38 35 2 26 31 28 38 6 37 34 10 31 21 10 13 37 3 13 2 31 37 26 31 17 3 31 31 30 33 26 5 24 25 16 18 11 36 6 40 31 36 2 18 3 28 39 21 9 10 34 20 12 34 12 3 3 19 30 6 34 29 6 13 22 37 11 32 21 6 13 3 5 39 19 21 4 17 8 30 29 37 25 30 40 6 20 39 29 21 38 29 16 28 13 31 35 29 34 37 3 32 4 32 7 13 10 13 8 19 37 28 11 15 21 27 5 13 3 24 1 33 2 31 40 33 14 28 13 13 3 14 9 24 28 37 28 7 38 11 27 20 24 1 1 34 33 40 21 9 8 30 26 31 14 2 6 11 1 12 35 15 6 5 39 10 18 11 11 10 19 31 12 8 23 32 20 34 20 29 23 22 29 21 40 3 28 17 13 34 38 26 24 35 34 38 37 20 33 20 26 28 40 30 40 19 26 35 20 39 20 23 24 17 39 8 2 40 26 25 31 13 38 11 21 3 28 8 23 29 13 30 36 12 11 21 38 1 19 21 39 37 5 21 26 26 37 6 3 26 25 36 33 8 30 19 11 33 12 20 29 9 34 25 24 23 20 24 33 23 23 40 16 8 23 38 20 3 35 33 10 17 18 38 40 1 40 13 33 14 40 40 11 26 16 24 39 19 32 9 17 27 16 24 38 2 37 7 20 37 31 38 17 7 20 19 26 3 39 22 17 35 35 11 21 15 33 9 29 1 15 19 29 28 22 23 12 1 33 32 24 8 22 12 21 28 29 13 39 34 8 38 6 33 39 34 40 18 4 17 13 5 6 37 24 21 34 18 7 36 13 16 5 35 6 37 27 19 28 19 21 22 37 38 32 20 25 26 27 34 19 3 2 6 4 26 24 14 14 13 36 29 15 27 4 22 6 27 39 32 12 12 8 39 3 34 17 2 36 17 33 26 1 34 11 10 1 26 33 40 8 25 28 4 29 5 36 9 20 23 15 5 22 39 12 5 20 27 1 13 6 6 37 38 23 4 12 18 10 20 4 39 30 11 35 32 17 12 31 21 5 35 23 23 17 6 5 24 25 9 16 11 15 9 34 23 31 15 18 38 1 19 4 11 36 25 31 17 26 2 30 3 31 29 8 39 1 26 1 39 21 1 37 29 23 34 37 6 10 23 18 1 32 34 36 21 27 20 15 12 20 8 25 26 17 21 5 2 1 31 22 20 20 22 30 15 10 39 25 17 30 17 21 8 23 8 10 31 30 39 31 39 27 1 34 6 19 22 29 18 34 23 32 36 19 2 17 26 19 18 24 29 11 14 7 22 2 7 4 25 22 14 40 39 5 24 12 31 10 37 7 3 2 32 21 35 8 27 38 31 6 17 10 23 2 25 34 36 24 17 26 12 29 37 16 8 31 35 2 31 31 19 23 27 31 31 27 3 19 23 5 35 12 17 29 17 40 29 13 1 4 25 28 26 12 8 1 38 13 4 5 1 28 13 12 14 35 33 18 1 18 7 7 24 15 15 17 20 24 8 24 26 38 32 13 38 4 29 15 5 9 16 15 14 21 32 23 28 39 32 38 13 11 38 14 16 15 8 33 18 4 9 40 21 2 14 5 36 14 22 24 34 21 20 1 15 22 32 26 6 27 39 14 12 33 33 26 32 4 23 10 12 19 35 7 31 22 39 36 20 24 28 10 25 32 15 7 24 29 2 12 28 7 28 20 13 38 27 26 27 4 7 36 31 24 19 32 9 13 30 8 32 27 3 27 2 8 18 32 18 40 19 19 33 2 35 18 4 3 25 20 29 27 38 18 3 2 13 24 39 13 18 12 23 19 23 39 28 34 11 5 17 9 27 14 38 3 6 26 24 9 39 31 38 7 40 1 31 39 14 15 27 38 24 6 7 33 32 37 38 31 23 27 37 3 25 29 29 39 14 33 40 23 32 1 23 12 37 1 19 21 28 15 1 35 4 7 5 39 26 36 31 40 30 8 40 23 13 35 27 33 3 13 26 30 17 10 15 36 20 5 29 28 27 37 3 8 4 31 13 14 28 18 37 4 10 30 3 12 34 8 34 23 1 26 6 15 34 39 37 23 12 20 39 29 24 17 5 17 25 30 7 35 4 12 14 34 2 37 22 25 38 17 19 22 6 35 35 22 40 18 3 3 39 18 6 35 4 38 1 39 1 35 4 28 26 32 4 26 28 8 23 35 18 14 4 28 18 11 10 17 37 19 6 15 11 22 11 22 8 7 6 4 5 31 27 28 22 14 14 27 38 5 35 9 4 33 37 3 6 25 16 15 22 20 21 11 17 2 34 30 28 17 10 5 11 16 2 2 25 8 31 34 38 14 16 10 6 20 25 40 29 37 14 5 15 12 39 7 36 20 34 15 12 28 4 21 10 28 7 24 22 26 13 40 21 8 13 32 12 17 34 16 7 21 31 25 6 1 30 23 4 37 17 36 23 22 18 18 25 17 33 28 37 3 31 1 36 10 35 32 19 20 25 19 8 17 31 35 16 8 39 6 22 39 30 7 18 10 38 13 13 15 31 5 8 1 39 40 9 31 40 14 16 12 39 20 10 19 6 5 36 29 16 35 11 40 2 1 6 11 14 37 13 25 26 10 5 38 14 40 27 34 40 17 38 17 40 12 6 25 3 34 26 10 1 10 30 14 12 30 18 30 33 17 15 14 38 28 14 13 2 18 37 2 24 26 23 34 17 21 10 2 40 30 22 5 32 1 8 22 23 26 2 27 16 27 30 28 24 14 8 40 33 13 20 6 20 15 30 26 24 23 20 22 39 22 20 4 35 7 33 16 17 5 16 31 29 33 27 19 24 32 29 27 27 9 9 10 27 39 13 27 6 28 25 13 25 10 5 15 29 23 27 4 14 28 22 30 35 21 2 3 30 14 31 40 24 20 21 36 1 17 2 37 21 12 36 18 26 17 21 11 12 30 12 16 34 18 37 17 12 37 7 31 15 9 33 1 18 24 5 35 12 12 34 31 20 20 20 10 14 24 37 3 7 14 8 33 2 6 18 10 24 16 18 35 23 34 14 31 28 22 7 25 7 34 39 36 14 19 29 16 14 11 39 38 10 13 6 20 33 40 27 24 37 8 20 7 35 22 17 29 38 1 35 10 2 31 37 30 17 29 17 8 10 35 39 2 9 5 35 26 22 22 7 40 19 20 35 23 12 35 4 7 24 26 14 6 22 36 7 12 9 33 19 24 12 9 26 26 38 14 35 6 28 5 16 26 21 14 24 16 15 6 17 9 9 13 32 33 10 18 12 10 6 38 26 32 21 25 37 15 18 33 29 32 8 12 26 15 20 3 40 29 2 22 36 30 27 30 37 14 30 37 35 12 7 28 12 39 27 1 26 9 29 18 4 34 19 11 10 3 28 34 13 27 35 39 37 4 17 3 31 8 35 34 20 22 21 28 9 1 36 7 39 4 34 10 28 29 38 36 11 33 9 25 16 28 36 13 40 28 9 34 17 10 4 38 24 12 35 34 33 38 32 1 34 20 39 34 25 27 39 39 31 17 32 40 27 38 2 29 11 32 5 4 25 12 17 19 20 29 11 9 22 13 14 8 40 31 12 25 25 25 10 11 37 12 13 38 27 4 24 17 33 26 36 15 8 9 17 30 28 28 27 26 29 6 33 35 19 7 37 1 39 6 12 23 7 39 25 10 18 17 17 38 3 36 16 2 39 29 21 34 5 18 22 11 2 19 34 10 23 5 10 38 3 15 20 34 25 19 21 27 28 6 22 38 37 24 19 40 33 40 16 30 19 1 2 32 37 36 10 19 6 5 5 35 18 38 5 27 18 37 38 32 33 10 14 2 39 5 25 36 3 11 12 33 6 31 33 26 33 16 12 17 17 30 35 3 15 16 2 15 11 1 14 27 5 38 31 6 26 38 27 11 14 28 10 25 17 15 4 9 26 5 33 30 11 17 30 29 25 3 35 24 17 4 9 25 9 11 24 20 14 17 23 23 30 17 22 4 34 40 22 37 38 32 4 17 30 34 29 20 11 6 30 20 32 28 29 9 30 9 24 32 9 19 17 15 7 11 11 13 18 32 22 39 4 35 37 40 12 18 3 26 24 6 23 24 17 15 34 25 40 34 16 28 32 16 35 10 25 23 30 37 24 7 22 31 39 19 28 14 10 26 17 32 34 40 23 29 28 27 30 9 15 2 22 2 10 39 8 33 28 27 9 4 3 40 24 23 23 21 13 9 12 37 22 19 22 23 39 31 24 38 38 39 3 6 1 23 40 39 33 15 35 8 12 11 15 2 18 11 22 37 19 9 8 33 40 38 1 27 21 33 20 36 15 19 19 28 17 28 20 27 30 8 31 23 5 26 36 11 13 29 25 21 3 36 22 37 33 7 30 26 20 31 17 11 18 30 8 10 32 21 25 12 32 40 30 32 11 6 11 36 33 21 34 24 11 9 14 39 36 8 23 13 20 11 31 36 2 37 19 23 16 14 13 22 40 10 21 38 36 6 1 6 36 7 22 39 31 15 22 39 25 18 18 35 9 36 33 37 37 39 1 7 24 22 38 14 22 10 7 34 32 5 39 39 36 5 32 23 13 18 15 30 4 18 9 19 14 19 4 1 3 21 17 38 21 16 23 29 39 11 6 39 21 2 18 15 34 9 22 13 15 36 31 8 16 28 35 16 5 15 32 17 37 10 32 33 3 16 18 34 9 32 15 14 8 30 22 19 2 32 33 40 29 20 29 14 8 18 22 16 19 14 19 17 27 5 13 37 12 37 25 8 34 35 12 31 9 4 13 19 37 24 4 22 27 38 7 34 13 29 38 34 22 35 29 37 18 24 12 18 14 3 18 6 14 1 11 13 39 32 21 11 36 38 16 13 25 40 26 15 27 21 27 8 21 27 24 28 35 10 24 19 17 16 12 22 35 39 22 15 30 1 35 40 5 40 12 33 37 38 6 34 26 8 33 23 26 39 10 31 34 22 5 19 33 32 8 20 7 19 16 10 15 31 40 29 11 15 18 34 40 40 5 2 20 18 5 10 3 1 23 13 22 39 10 21 17 40 20 28 35 24 26 35 12 21 25 16 40 11 1 34 1 26 40 38 20 16 13 15 20 14 21 5 2 33 28 13 37 16 13 8 24 36 17 2 17 23 21 21 14 9 18 32 16 40 16 30 26 28 9 29 1 8 16 16 1 38 4 40 32 27 39 14 36 29 29 34 14 23 30 34 35 31 31 14 40 7 20 13 13 26 24 38 35 11 29 3 16 29 7 34 16 10 20 9 15 21 30 36 11 7 7 27 36 28 11 5 26 1 13 23 36 38 8 19 9 28 3 23 29 34 17 22 19 32 17 18 22 24 28 24 5 27 5 25 8 20 20 15 9 27 14 35 32 15 30 20 26 18 5 4 1 16 12 16 14 39 21 29 10 11 7 38 14 33 39 15 5 36 36 9 9 31 12 13 8 30 32 23 6 38 4 32 3 10 6 2 36 30 35 1 26 4 16 12 25 21 2 38 35 31 18 2 15 17 15 2 10 2 1 38 31 6 31 7 9 19 3 9 20 9 30 2 39 25 24 31 27 22 18 19 17 26 17 12 10 3 23 22 1 32 28 30 32 26 28 6 15 3 2 32 16 21 20 40 30 38 28 17 29 4 2 21 1 15 39 28 16 30 7 18 29 25 40 18 19 6 7 8 34 9 15 2 8 1 19 26 7 40 17 20 4 1 30 38 40 8 9 11 20 35 20 35 25 19 4 32 16 27 9 40 21 21 35 22 24 15 39 6 20 22 11 40 35 39 35 23 26 40 29 14 29 40 7 19 3 24 31 31 19 37 27 12 11 13 3 19 14 19 27 40 6 38 29 33 29 26 35 35 34 32 16 12 20 34 33 9 32 36 24 23 22 36 5 24 15 33 37 23 9 23 32 39 36 35 27 27 7 4 2 26 3 18 30 20 19 13 6 27 35 40 30 12 14 2 3 21 19 20 35 17 11 23 10 26 10 7 33 37 4 6 33 28 25 36 22 20 21 22 22 21 4 40 25 29 6 19 30 35 12 29 19 40 1 4 18 8 20 21 18 12 30 2 34 30 31 23 9 14 10 3 37 29 31 6 3 11 21 40 24 5 19 24 25 15 22 7 25 30 16 38 2 23 3 28 1 24 8 3 40 38 30 2 21 6 25 34 5 9 8 3 19 7 32 19 25 38 13 9 30 22 1 16 1 18 38 3 11 28 16 11 32 33 5 25 27 13 24 33 25 5 10 4 26 40 9 14 18 1 21 36 22 1 31 11 21 16 40 18 18 12 36 39 13 19 14 25 7 30 28 4 17 9 24 14 6 28 18 12 26 11 31 40 24 35 9 7 12 36 6 37 3 18 35 2 10 28 31 9 14 28 12 29 37 38 16 30 18 12 20 35 13 26 22 11 8 5 4 24 2 38 1 34 13 10 33 17 26 37 24 10 9 23 7 3 35 13 19 39 9 36 12 5 19 11 3 13 27 17 25 12 39 17 26 4 34 11 37 37 28 28 21 2 29 40 25 1 30 16 3 34 35 37 12 27 33 21 1 7 2 16 23 33 14 3 36 3 37 13 40 2 20 34 25 35 8 17 38 37 7 18 38 38 34 24 2 11 10 22 24 31 10 29 26 6 24 38 15 37 5 11 3 1 34 32 9 5 2 39 4 32 23 1 38 36 8 11 35 18 8 4 24 29 6 31 10 13 24 35 34 23 5 4 32 40 27 14 11 37 7 1 24 15 26 38 31 32 23 1 35 9 11 20 40 36 6 19 22 17 37 16 36 10 23 31 6 2 40 30 5 7 9 16 33 36 11 19 31 3 15 27 40 9 4 20 33 6 8 9 34 19 17 39 30 32 34 28 17 34 33 26 1 30 2 9 22 19 30 24 23 37 31 20 30 7 3 2 33 22 15 12 32 25 10 13 36 22 11 13 4 4 12 32 29 30 32 22 15 27 35 25 29 33 34 22 30 39 27 22 36 10 6 33 38 19 5 5 8 26 38 15 13 39 33 17 10 31 4 9 26 33 2 6 21 32 30 10 7 39 32 14 18 33 19 40 16 38 22 6 1 17 8 5 6 33 3 1 32 37 34 4 12 33 28 2 39 40 2 39 21 8 2 39 27 16 14 12 16 12 33 38 2 34 40 13 14 8 10 25 14 15 7 3 30 14 7 34 4 4 29 17 24 39 15 39 24 24 35 15 27 36 13 40 14 9 23 1 15 38 6 5 36 37 29 4 33 13 1 28 4 16 16 7 10 30 40 18 11 35 22 13 14 37 22 34 12 17 32 11 33 14 25 25 30 21 27 1 25 35 27 19 5 34 39 4 27 34 19 40 36 29 31 2 27 24 38 32 28 15 14 10 25 26 19 26 27 14 34 18 40 13 18 8 38 30 17 20 21 10 3 27 28 23 27 20 9 36 6 23 21 2 32 36 9 8 7 10 13 22 25 9 5 19 9 30 17 39 25 38 38 16 5 21 24 26 20 21 2 4 3 12 38 5 16 36 22 7 9 7 10 5 7 38 16 40 4 18 10 8 34 16 30 40 33 34 16 31 10 27 32 28 28 29 1 22 16 21 6 17 19 17 4 15 24 13 16 31 36 17 19 10 16 11 35 18 28 38 3 31 12 40 39 40 8 39 38 36 36 29 39 31 37 15 21 9 7 1 24 26 16 20 37 7 21 39 3 33 8 27 17 7 39 33 16 3 24 38 35 15 36 29 10 38 15 9 29 11 25 10 25 39 15 38 23 23 36 25 27 16 8 31 27 39 22 22 2 32 38 15 39 7 25 35 3 1 34 26 35 34 24 1 40 3 9 5 6 2 37 21 38 1 4 40 25 33 27 31 7 37 11 28 4 25 18 14 7 7 2 2 10 32 3 40 24 26 30 5 1 33 28 4 2 16 10 15 35 14 11 5 39 17 2 10 5 33 17 33 34 2 31 5 31 7 30 36 15 30 21 35 3 37 4 20 40 9 3 37 1 26 32 20 35 33 3 9 9 23 20 23 32 8 8 30 1 28 31 17 18 34 39 17 6 28 28 7 27 3 39 22 19 20 1 12 20 22 21 20 36 8 18 26 36 4 13 15 17 31 30 14 3 33 24 25 28 15 40 18 24 30 22 12 26 35 17 14 21 15 22 18 24 32 32 34 25 27 14 9 18 3 8 16 33 21 22 13 35 23 39 15 36 31 21 24 34 39 36 10 20 15 4 19 35 10 26 36 15 4 12 34 1 38 4 31 12 29 32 20 6 23 12 11 14 10 4 9 22 13 26 28 16 36 19 34 38 25 19 31 13 34 16 20 2 30 22 30 6 17 29 38 17 12 11 37 28 32 2 32 4 38 27 18 39 15 29 12 1 20 10 10 3 5 32 22 32 15 27 30 9 18 18 32 25 4 22 31 17 26 25 28 39 15 6 27 15 38 35 9 19 13 27 38 36 3 39 4 23 38 26 29 38 39 26 22 19 4 36 28 25 28 6 12 19 26 10 22 37 16 6 1 16 15 7 7 25 8 5 24 6 2 26 37 4 37 37 35 21 10 22 12 22 11 31 11 27 27 11 2 20 31 23 4 30 9 28 21 24 26 8 9 7 32 12 31 39 25 20 15 16 30 10 18 18 16 1 16 24 11 2 1 31 19 34 32 26 18 27 11 2 36 31 5 36 11 19 30 32 37 40 10 18 28 5 37 9 11 26 7 1 6 39 21 30 26 35 2 19 39 40 22 17 13 2 22 13 19 38 14 24 6 16 24 17 40 36 15 33 22 16 29 29 37 17 20 21 10 25 35 1 5 6 7 23 39 16 10 32 39 23 10 30 27 20 22 15 24 16 29 23 11 23 17 21 20 9 5 20 36 19 34 37 7 6 23 12 23 20 8 40 40 13 34 28 10 37 37 7 1 33 18 26 38 35 9 25 28 19 6 37 11 32 16 16 28 20 35 6 4 14 33 36 37 39 10 23 4 37 13 40 5 37 2 37 34 31 6 38 1 21 14 30 40 5 39 30 1 15 18 11 14 12 16 31 35 13 16 18 36 36 6 3 13 9 6 35 32 7 38 25 2 29 36 3 27 16 24 21 23 10 16 34 29 2 16 11 37 14 27 4 10 35 14 9 39 29 13 1 4 22 28 27 5 27 10 17 17 38 38 26 23 28 32 38 33 8 25 27 10 4 34 18 32 21 22 4 19 26 8 19 22 17 10 29 12 5 33 33 8 10 38 12 24 36 3 13 10 22 16 33 9 6 3 10 27 25 30 2 29 36 34 24 15 36 26 13 6 1 2 37 31 24 11 20 4 17 16 11 40 6 5 16 20 24 30 26 31 9 24 16 38 2 21 7 20 18 35 38 24 35 9 9 27 12 40 22 39 7 22 15 9 37 7 22 7 19 14 18 12 26 1 33 10 37 23 31 13 38 4 22 36 20 33 32 28 7 38 37 5 18 37 33 39 14 7 5 20 7 13 1 25 19 40 24 29 22 22 12 38 7 40 4 22 13 23 32 21 25 14 40 8 15 32 22 28 35 23 31 24 14 39 37 38 20 8 22 19 16 12 26 22 33 13 36 8 30 38 14 8 1 1 40 29 16 40 29 19 12 28 11 40 38 11 15 34 29 30 24 7 32 39 25 9 21 9 36 17 12 34 39 32 26 11 2 37 10 9 35 15 31 2 37 10 6 11 5 36 24 33 4 36 12 15 35 31 12 31 30 14 5 34 28 19 15 22 26 39 28 33 2 23 30 2 37 3 10 28 36 11 17 25 5 36 36 19 37 39 1 20 33 32 12 28 7 13 30 21 20 5 28 2 36 27 8 27 25 21 9 37 38 9 15 35 3 33 22 24 25 1 32 8 5 31 29 40 20 38 10 34 1 20 26 1 31 4 10 1 2 8 32 16 20 38 30 22 19 19 23 28 2 10 16 3 14 13 19 11 30 4 35 29 1 22 3 16 22 22 21 37 31 17 30 38 17 19 39 21 8 4 8 22 7 6 6 15 13 13 27 35 30 16 7 36 14 14 30 16 18 30 19 28 7 6 35 22 40 14 3 37 25 39 15 32 19 32 11 29 8 12 7 8 7 34 10 15 11 26 29 2 27 39 29 5 40 24 32 1 6 12 20 36 31 17 16 32 10 27 2 2 29 3 6 12 33 22 19 36 34 38 27 4 30 18 37 18 23 17 37 7 14 38 13 11 19 30 4 33 30 21 22 22 9 38 13 3 27 30 40 16 9 4 16 12 23 14 30 3 1 5 3 11 39 20 37 19 30 23 13 32 16 39 1 27 5 26 11 28 35 24 15 25 34 26 38 12 22 39 3 6 34 29 37 24 33 22 23 39 25 27 14 38 32 17 21 40 13 16 38 26 28 21 40 38 18 13 23 35 29 30 35 25 12 4 32 17 40 26 37 21 36 33 37 3 36 17 5 12 35 20 7 19 31 7 31 33 9 21 7 12 30 25 3 16 1 7 30 2 19 2 25 7 8 8 3 34 20 17 19 40 35 20 7 28 20 25 26 11 32 1 15 23 14 20 22 5 10 22 8 22 10 40 36 3 14 36 24 8 10 37 5 10 4 35 39 20 6 19 25 28 5 35 25 22 13 13 35 28 27 17 2 29 26 34 2 22 36 12 16 25 15 10 3 7 26 26 2 25 22 9 37 1 10 35 38 15 29 29 6 4 25 1 26 12 17 17 33 34 8 35 3 2 5 40 19 35 10 24 36 18 31 10 14 8 13 36 26 9 23 34 27 34 34 21 20 10 2 3 10 5 39 8 36 4 12 32 36 19 7 31 2 39 24 5 7 14 35 40 35 6 10 30 40 2 27 19 10 29 4 34 3 9 14 21 27 31 10 39 37 21 28 19 20 10 16 7 36 14 26 32 30 38 31 3 11 38 15 16 2 33 24 24 18 17 2 37 23 4 8 31 3 2 19 1 37 15 15 39 31 6 6 40 11 40 3 20 12 21 17 26 7 24 25 38 28 9 27 28 38 14 23 35 15 20 19 17 12 24 1 7 13 31 8 18 6 12 27 26 6 15 29 15 36 22 21 40 29 38 31 21 7 5 39 6 37 29 26 7 3 36 21 27 39 3 33 39 18 35 3 32 29 15 27 12 5 38 22 31 40 22 33 26 24 32 19 4 25 20 33 29 22 34 30 24 16 2 13 8 32 14 12 3 19 17 5 22 26 30 18 18 4 39 33 6 39 6 19 19 20 33 39 35 38 15 30 34 6 30 6 28 40 20 35 39 10 18 33 24 22 5 16 1 39 15 3 1 30 21 17 23 35 30 16 12 29 38 25 36 1 12 31 19 4 34 10 9 12 31 31 23 6 35 21 29 13 23 27 18 38 15 34 7 38 39 40 28 13 9 32 10 31 18 24 39 4 14 19 11 1 36 5 2 37 19 1 2 38 6 37 18 18 14 3 24 27 28 21 17 18 21 1 25 15 5 22 34 18 25 18 19 21 20 23 14 32 13 23 33 5 20 37 18 19 11 2 26 39 3 7 20 1 15 20 4 27 35 7 9 14 3 21 18 24 30 10 22 5 1 32 25 15 31 18 28 13 23 10 6 10 29 2 9 29 8 16 26 5 32 26 25 21 34 25 1 1 14 9 16 14 36 26 34 28 27 37 11 1 15 2 13 16 19 10 1 20 22 7 38 4 1 16 18 4 20 38 37 19 28 15 12 17 25 3 37 39 33 9 20 5 7 17 25 10 19 4 10 30 8 24 13 37 6 29 26 23 8 25 4 36 4 32 31 34 9 30 33 37 10 17 2 24 33 2 23 28 25 12 22 22 30 37 32 28 21 16 36 9 17 1 35 24 38 2 28 36 8 14 33 8 37 11 34 1 29 38 17 34 10 10 16 39 17 40 18 12 23 14 7 27 4 32 37 30 3 26 31 23 29 23 6 37 18 17 9 28 12 7 12 12 35 7 1 21 9 10 21 34 11 39 30 21 4 18 2 16 17 11 22 12 22 25 21 12 13 9 31 25 10 16 2 2 39 19 23 3 6 1 32 29 4 32 18 8 27 17 33 37 20 5 32 27 11 35 4 33 39 19 38 2 1 8 25 37 12 13 36 23 16 7 38 11 34 35 36 10 10 30 18 33 17 27 38 37 20 22 2 37 7 21 27 28 40 8 21 19 9 22 26 5 14 11 27 26 12 5 28 32 23 10 31 27 21 37 40 7 20 37 4 20 22 15 32 5 40 30 20 32 9 21 4 4 20 21 24 10 9 16 17 3 38 15 15 15 30 39 39 26 10 21 4 12 34 27 40 9 37 6 3 23 15 16 22 37 38 19 32 28 25 35 21 29 23 13 36 9 2 16 24 19 4 21 31 34 8 32 26 32 12 39 15 4 32 37 16 6 12 19 27 39 31 23 4 6 32 35 38 24 11 11 28 26 37 14 30 32 13 36 13 37 28 2 29 36 22 5 18 23 37 19 39 18 26 19 13 12 1 7 24 10 23 21 18 21 13 16 24 2 30 34 36 1 27 5 34 10 11 32 5 35 5 23 36 21 35 29 21 23 7 38 2 32 7 39 21 18 22 24 28 11 22 31 25 30 38 4 11 35 38 39 23 19 4 13 19 18 36 30 13 15 6 6 16 1 29 30 17 21 1 32 29 9 5 18 5 36 35 27 30 13 33 33 34 12 7 24 2 23 17 38 7 40 28 11 26 37 2 9 39 21 33 20 40 36 36 36 35 35 29 6 19 4 38 13 10 26 27 33 19 2 34 24 10 8 20 21 30 9 16 31 11 10 13 32 5 11 13 20 40 24 26 6 9 12 9 10 32 33 32 9 20 9 27 24 14 7 37 8 13 30 17 21 30 37 5 26 21 31 32 40 2 28 22 31 9 26 33 27 8 33 32 3 1 34 5 18 21 5 19 20 36 33 11 29 33 28 12 29 14 33 23 22 32 39 14 26 7 30 17 19 13 39 19 10 25 11 18 11 8 10 12 15 23 15 6 4 3 9 20 11 7 20 3 20 10 12 38 12 29 16 20 34 2 6 11 36 36 15 27 38 31 13 3 4 12 4 6 5 5 13 6 21 13 29 22 37 1 10 7 18 19 38 34 18 12 37 29 38 13 31 2 38 14 12 2 27 37 19 8 14 10 8 21 16 11 34 16 1 3 22 7 37 3 8 3 23 8 12 30 36 20 18 34 17 28 15 26 12 1 4 2 36 1 17 38 22 11 34 30 13 4 8 11 6 5 21 27 27 6 23 34 11 19 4 24 25 28 14 23 21 38 2 29 25 23 9 29 25 20 21 3 6 28 30 20 13 25 20 17 2 36 10 13 31 21 39 39 26 36 39 5 32 34 27 38 5 24 19 32 13 25 11 38 35 20 8 25 2 39 3 2 3 28 37 33 16 35 35 36 2 26 9 30 28 26 22 18 11 26 15 16 22 2 39 32 13 15 19 13 16 35 24 18 20 34 21 16 28 26 6 23 2 34 22 4 34 23 18 16 30 38 28 32 27 30 10 8 21 15 23 16 28 3 7 22 18 15 8 22 13 33 15 31 34 39 31 37 27 22 23 8 4 4 37 15 21 35 17 6 11 15 23 7 13 32 8 27 5 12 22 19 26 22 40 3 24 16 15 36 28 1 17 9 17 33 34 4 24 13 5 35 39 37 18 21 8 2 28 9 5 35 30 4 36 2 6 39 33 28 13 28 6 10 37 6 9 18 40 7 12 33 25 7 20 35 36 24 1 29 33 39 17 2 25 2 22 4 21 36 17 11 33 14 7 28 34 2 19 3 22 17 9 2 22 3 33 18 33 5 15 20 23 5 13 32 20 3 15 35 35 34 4 13 35 34 15 39 36 7 2 13 26 32 37 24 21 34 39 34 8 18 7 9 34 17 31 15 7 38 13 15 33 30 25 3 29 35 16 13 22 7 15 24 25 21 12 40 6 2 16 14 22 20 4 9 16 21 9 4 2 1 26 16 27 17 40 21 22 20 25 23 33 29 14 29 2 31 40 23 35 7 19 1 27 8 8 39 18 16 32 33 39 17 13 30 13 17 34 26 37 3 27 30 23 21 16 18 8 1 24 21 11 24 3 27 12 29 22 7 24 33 10 23 2 11 40 28 32 32 15 24 13 38 15 29 8 22 25 22 21 1 17 8 21 2 12 26 2 36 27 11 32 11 38 1 40 38 7 13 32 10 15 28 40 3 17 7 32 18 11 2 3 39 14 21 34 5 37 12 39 7 11 19 8 14 13 28 33 14 24 31 17 33 37 14 5 16 11 37 37 38 8 28 39 28 8 18 7 1 20 36 15 25 40 10 34 36 31 11 24 8 14 20 12 33 18 4 9 1 8 11 16 15 30 34 27 32 32 17 23 21 7 9 40 3 16 11 21 37 9 22 3 18 23 4 2 33 15 4 28 2 32 36 20 5 25 33 23 23 1 40 35 11 5 25 5 23 12 38 23 17 3 16 34 39 11 33 6 17 31 4 18 37 10 19 40 22 16 26 33 24 16 33 4 10 22 39 9 30 6 17 4 27 2 16 39 27 31 38 26 38 5 33 5 7 17 4 5 8 2 8 32 5 13 5 14 10 40 34 36 1 12 39 26 18 26 17 26 35 40 26 27 8 37 32 24 23 1 28 35 1 5 35 38 14 29 11 19 25 6 24 22 37 17 15 34 35 21 1 30 34 17 32 5 22 4 36 34 5 32 30 6 30 24 21 21 28 18 24 7 19 30 25 33 29 40 25 3 21 11 13 15 9 39 7 22 11 4 24 27 1 10 1 28 27 1 19 24 15 15 19 32 18 16 19 28 22 10 28 28 33 16 32 15 6 1 9 25 22 21 4 12 35 36 11 10 40 29 36 23 35 36 9 33 19 28 9 15 30 23 38 32 36 37 2 5 28 36 32 40 31 1 20 27 24 38 17 4 3 40 11 17 15 6 17 27 32 18 8 7 31 2 13 21 22 2 22 39 3 18 12 36 31 16 11 37 23 7 14 7 5 20 26 31 11 11 8 5 10 12 16 32 23 22 21 37 33 11 16 2 32 27 23 11 17 16 5 26 23 39 10 13 18 27 28 31 11 33 23 26 40 37 34 4 3 22 10 25 20 33 4 10 3 30 25 18 25 17 40 22 37 20 2 34 4 13 20 39 8 16 4 29 19 11 6 21 23 35 19 19 21 9 18 24 19 25 9 32 28 32 33 36 4 28 35 37 17 39 8 1 13 37 16 37 31 24 32 35 19 14 23 12 27 9 4 35 13 14 21 20 5 36 28 7 2 23 29 27 16 37 3 15 33 8 24 6 1 8 25 38 1 39 20 26 6 7 3 33 30 23 31 30 4 26 17 7 25 2 32 21 33 6 4 32 17 35 33 27 2 39 21 1 2 27 37 19 7 27 37 11 11 1 12 24 11 19 18 33 24 13 23 10 30 3 2 18 19 18 39 20 11 37 32 27 12 25 11 9 18 9 34 34 24 2 19 10 31 32 22 23 27 6 31 17 27 26 34 33 1 5 3 37 25 22 10 30 26 8 24 4 4 36 12 9 21 33 12 26 16 6 10 13 14 28 5 8 36 9 1 13 37 25 27 2 5 4 21 24 35 7 28 8 33 8 34 14 33 26 30 39 40 28 22 13 22 9 4 12 23 35 21 2 31 16 4 18 9 18 10 12 12 6 33 18 28 7 40 7 37 23 14 1 7 28 11 6 19 12 26 31 20 13 8 35 34 2 4 17 11 37 14 40 35 24 37 4 7 9 10 14 14 20 3 23 8 23 3 1 39 35 18 27 7 12 16 13 39 1 40 39 4 27 31 22 31 7 24 31 16 38 21 12 9 28 8 21 2 21 10 34 2 30 21 16 24 37 30 3 31 26 33 25 20 29 20 37 14 2 21 8 1 26 16 1 27 11 16 3 23 37 30 14 5 34 3 18 29 25 40 28 16 40 1 31 16 10 30 22 9 39 5 22 40 35 19 40 10 35 30 19 1 11 35 21 35 32 11 27 8 1 38 28 13 23 9 13 4 40 16 27 39 38 32 14 37 13 21 25 23 16 32 25 24 18 31 8 35 18 38 25 37 29 29 23 5 28 10 33 10 38 28 21 32 16 9 40 9 31 2 35 40 5 5 3 15 4 25 1 32 37 36 2 35 24 29 4 9 5 19 14 14 35 24 30 19 40 28 4 22 35 19 19 8 17 7 10 2 21 11 16 3 38 25 32 26 22 29 3 14 32 33 14 35 14 31 33 11 31 38 33 3 23 31 26 29 5 6 14 22 25 12 27 4 24 7 17 1 17 18 4 20 26 12 9 36 14 14 12 16 33 6 6 32 20 40 8 29 10 19 6 25 28 36 5 10 24 5 10 16 33 28 21 2 34 31 18 39 8 39 5 5 2 13 27 27 39 33 16 27 10 35 3 23 3 33 39 32 10 16 19 3 24 21 11 18 13 10 12 20 31 26 29 3 37 32 28 28 29 34 38 12 25 16 2 24 10 38 11 25 7 23 13 31 18 9 13 13 2 31 3 19 3 36 29 17 13 2 36 5 8 34 10 18 31 26 24 34 6 2 13 9 35 1 10 1 1 10 39 34 7 8 40 28 21 28 5 2 1 27 16 38 35 21 27 22 25 18 5 8 1 9 4 15 37 36 31 31 26 17 8 15 40 36 9 16 20 30 39 32 37 28 8 30 6 2 8 7 19 30 34 39 8 20 35 28 33 32 37 4 20 24 21 33 19 26 14 33 22 22 35 28 12 20 40 28 11 22 8 36 11 36 33 15 31 17 19 10 28 13 36 37 40 36 24 11 8 25 35 1 38 4 24 3 39 27 39 31 23 12 1 17 21 40 20 15 1 28 29 24 25 38 14 10 8 38 16 24 14 36 25 10 25 27 27 16 9 13 11 24 32 16 23 20 27 23 28 14 6 40 22 20 30 39 33 31 36 29 15 15 17 24 35 6 20 15 19 37 6 23 40 6 1 22 17 37 38 38 19 4 12 21 38 4 36 21 9 4 15 1 21 12 17 24 1 25 12 33 22 29 7 12 7 36 35 11 6 28 27 9 19 22 22 21 2 26 9 30 19 13 14 10 10 32 3 27 10 36 5 12 22 29 21 10 23 16 2 7 28 14 4 3 6 29 23 24 8 33 39 14 13 35 2 36 4 17 29 3 5 38 18 8 15 31 8 25 31 8 14 17 25 13 16 32 37 5 30 11 18 7 36 37 9 3 32 35 24 26 25 30 6 37 37 26 25 5 22 5 8 11 5 35 22 26 16 16 20 36 27 7 29 4 33 24 29 18 34 35 5 4 19 18 23 37 1 2 37 33 37 7 18 23 13 28 40 10 30 8 19 38 4 17 7 13 29 12 19 14 31 38 1 13 20 18 37 14 26 23 39 20 30 1 27 14 16 39 18 11 29 10 36 3 26 20 32 35 34 35 9 33 32 21 4 35 9 40 29 19 10 8 17 15 22 28 13 25 22 34 11 37 39 38 5 16 34 9 9 28 3 6 3 12 14 35 29 13 32 12 32 14 15 33 10 7 3 12 10 22 18 18 29 26 32 36 37 15 26 30 26 29 2 27 31 25 2 9 25 27 3 26 22 18 37 16 23 16 1 31 2 6 35 13 24 13 13 15 8 16 39 40 20 33 13 5 33 23 37 23 10 28 27 27 13 15 26 34 34 32 3 22 14 4 2 30 26 10 12 26 27 38 28 19 36 25 39 19 24 36 32 28 13 7 33 37 6 3 22 1 6 40 6 4 18 29 25 37 6 6 26 6 22 21 34 2 3 33 16 30 30 22 15 29 10 4 30 10 38 40 16 29 30 4 35 8 15 7 37 32 35 39 20 6 28 35 16 17 21 17 26 17 11 34 10 3 37 27 38 13 23 7 13 27 12 17 13 19 35 5 19 33 13 33 25 19 10 23 19 22 40 4 35 1 6 15 1 22 31 32 5 2 8 36 34 36 10 10 3 8 9 22 12 36 15 10 13 16 9 2 23 14 25 22 30 28 33 37 39 3 16 24 22 18 26 18 26 20 13 37 17 20 14 39 3 8 14 10 27 19 8 27 3 23 22 38 9 21 13 34 22 26 39 30 4 17 28 18 32 6 25 18 26 29 25 31 21 2 6 36 37 40 25 39 23 31 26 19 33 37 37 8 17 25 4 23 3 33 31 23 5 33 22 15 31 10 34 8 40 19 39 9 15 20 32 4 19 37 20 15 10 27 2 5 26 18 13 20 32 6 12 35 32 9 8 6 31 40 1 32 10 27 3 23 32 5 25 18 14 10 28 35 26 35 1 35 31 39 34 38 12 13 32 20 38 31 39 30 6 6 16 10 6 22 16 6 35 23 26 2 4 31 21 28 10 18 21 30 3 11 7 24 11 23 32 14 39 9 8 24 28 9 7 30 25 20 14 7 37 1 23 2 3 3 12 14 11 8 38 4 17 18 3 14 29 7 17 14 27 18 16 38 8 16 15 39 37 32 2 24 20 4 24 17 32 38 15 30 27 37 22 29 24 3 4 35 20 1 14 34 37 35 15 20 28 16 39 14 30 13 29 17 15 11 27 6 15 30 8 10 25 10 23 22 33 23 24 15 36 37 36 11 19 25 33 16 27 31 1 35 26 13 5 13 10 15 8 32 3 8 22 7 23 4 13 35 32 30 26 3 11 31 19 13 31 8 25 29 15 37 13 8 30 22 23 26 7 10 19 14 15 15 25 40 20 19 36 40 2 23 8 11 20 38 40 33 24 9 22 33 6 22 25 17 32 31 32 8 39 15 18 28 13 25 13 36 7 3 1 24 10 13 1 3 12 7 31 11 28 16 6 3 35 31 31 8 5 37 36 1 19 31 15 16 18 27 22 6 6 6 19 17 33 33 31 37 15 22 23 33 20 25 29 11 23 10 29 15 1 40 27 20 26 40 14 3 31 19 35 36 27 11 28 19 23 16 11 9 21 30 25 23 6 3 14 13 4 10 10 37 24 5 39 8 9 10 8 24 25 25 23 39 32 27 7 3 17 2 3 14 34 13 33 29 8 6 30 15 17 27 10 3 14 18 25 6 1 24 28 2 14 26 8 13 39 20 7 22 5 3 5 18 9 15 26 23 27 37 16 11 22 31 26 10 13 3 3 32 15 7 39 32 10 6 35 15 21 8 10 36 39 5 30 25 6 19 12 38 15 38 7 7 18 14 34 16 2 18 13 30 14 24 34 17 8 23 21 34 38 13 19 9 38 24 38 22 32 27 40 3 19 9 33 8 5 11 36 21 28 36 39 29 28 33 6 28 31 40 1 40 19 31 20 25 39 16 2 38 15 15 22 20 29 39 3 15 29 39 5 39 28 18 20 33 29 15 36 23 31 37 17 39 14 7 15 32 16 6 6 32 16 14 4 15 18 32 34 34 25 11 12 9 25 21 32 31 19 31 12 38 19 23 38 34 18 30 15 13 2 3 9 3 32 31 35 12 37 39 24 29 3 10 33 10 2 40 36 27 30 35 12 11 12 18 19 33 13 29 1 40 9 33 7 8 22 9 15 7 21 37 40 20 8 19 13 31 18 6 25 21 37 20 23 31 14 38 39 2 12 24 36 39 28 26 24 11 23 1 27 21 23 1 19 36 16 33 36 22 3 7 39 7 36 40 24 5 33 35 40 30 14 4 8 35 29 21 16 27 22 9 37 39 39 2 18 31 18 24 14 28 39 27 1 17 5 30 14 11 32 2 23 32 16 27 9 18 18 16 32 37 31 9 26 38 7 35 34 17 24 4 22 30 27 28 20 13 38 5 38 5 33 17 14 25 32 16 20 29 11 35 25 18 17 32 20 38 28 33 19 29 1 13 24 8 11 12 33 1 26 11 6 4 25 23 22 17 33 17 22 2 7 18 1 16 34 28 5 16 40 30 5 12 8 6 24 4 20 2 22 27 29 33 13 18 9 40 31 14 30 38 8 13 10 12 9 1 27 11 6 40 18 24 8 18 5 3 19 31 10 4 33 16 25 25 24 21 24 17 27 38 34 4 20 12 19 34 9 21 1 6 40 36 10 35 24 1 22 7 1 30 40 27 3 28 5 33 26 39 22 38 18 23 20 21 36 6 25 4 4 12 8 3 23 22 30 14 37 20 39 32 39 10 14 5 23 11 36 25 39 31 3 29 21 6 19 11 3 7 30 23 9 31 1 16 12 29 26 30 4 22 11 24 36 25 6 22 1 38 30 7 32 9 5 35 3 16 36 22 25 16 39 8 1 38 19 5 15 1 35 18 35 25 36 39 13 20 23 22 30 36 22 14 39 30 26 16 31 27 39 25 18 6 10 5 10 11 26 34 2 8 3 38 10 9 11 16 28 2 4 4 3 38 4 30 8 10 32 25 1 12 9 2 21 27 19 31 22 16 15 18 33 36 23 9 33 12 21 32 36 24 32 14 1 12 31 20 16 19 10 3 3 9 28 37 10 12 32 2 40 28 31 18 10 30 33 7 37 36 1 1 14 36 20 29 16 25 10 27 7 24 18 14 15 27 21 35 28 26 18 16 26 22 19 38 30 19 6 32 17 15 28 2 20 5 5 27 2 7 26 39 31 13 39 29 21 33 21 11 3 18 32 25 34 5 28 3 30 26 12 26 36 11 30 12 13 17 5 21 12 31 34 25 26 1 32 15 27 24 2 36 26 16 37 27 12 40 17 16 20 20 9 18 23 29 29 26 6 14 2 25 29 39 10 10 15 2 39 30 36 10 39 1 34 40 22 29 1 12 2 5 17 28 18 17 31 25 2 6 11 23 5 5 13 20 3 5 6 3 1 21 26 15 35 23 38 26 29 23 28 24 15 21 36 11 16 19 25 39 21 21 5 25 1 33 40 34 37 15 24 21 1 2 31 30 25 14 19 37 15 14 2 12 29 27 10 3 30 37 14 37 1 13 2 15 39 18 2 7 24 25 19 33 34 23 36 21 38 38 36 20 39 34 6 21 10 10 23 9 11 14 38 36 2 24 6 39 17 20 39 10 6 31 8 13 37 3 40 39 27 38 6 8 12 37 31 13 17 25 28 25 9 14 5 38 24 25 38 25 3 16 11 2 17 26 10 3 21 28 40 26 23 29 40 33 21 36 29 26 3 25 28 29 38 39 13 20 6 34 2 2 19 40 28 35 20 5 20 22 31 25 2 36 31 36 24 11 16 21 27 28 31 11 20 9 24 19 24 13 1 33 39 19 28 33 1 1 26 8 25 8 25 39 17 2 24 13 17 34 27 36 6 31 22 3 21 2 4 4 4 37 5 33 37 18 10 23 37 11 26 1 28 35 40 11 35 5 25 35 11 9 9 28 14 1 19 12 37 14 29 22 4 25 30 6 6 20 33 21 17 9 14 24 23 1 38 4 12 14 36 18 19 24 36 11 12 19 3 39 34 34 23 7 30 38 4 17 29 33 16 32 5 30 11 37 26 12 25 15 18 17 23 13 32 20 5 26 37 24 14 6 17 36 40 9 25 2 3 40 24 3 31 25 22 18 32 13 5 9 30 30 36 17 40 30 8 36 16 2 18 27 23 28 35 37 27 14 40 18 11 38 9 10 4 22 5 38 6 6 5 32 16 7 16 21 34 39 32 39 16 1 12 10 20 8 9 12 34 30 16 31 40 19 15 20 6 22 26 8 40 4 28 34 35 2 32 27 13 25 10 28 35 15 16 27 12 4 14 1 5 9 29 34 28 31 36 2 3 9 10 11 20 17 14 29 30 34 35 13 4 18 10 12 36 27 12 17 5 6 10 17 30 38 34 28 25 3 12 31 33 13 17 21 25 10 2 22 17 29 5 11 21 35 5 4 22 36 18 9 2 33 35 32 33 25 16 7 1 12 32 6 29 18 18 29 17 5 3 6 36 32 22 11 39 39 26 7 12 9 18 19 10 9 28 37 20 6 25 26 38 21 13 40 39 28 5 34 16 31 11 24 1 29 25 9 37 13 5 7 38 9 9 25 1 26 11 28 25 33 8 8 33 21 13 17 7 26 19 24 19 14 5 17 5 16 15 35 7 3 11 22 5 1 29 15 27 39 35 35 38 11 12 15 21 28 10 36 30 31 7 8 16 6 17 11 1 30 11 8 14 1 30 22 16 39 6 15 15 24 28 10 22 35 29 28 27 9 29 40 31 20 38 16 20 14 38 30 35 32 29 14 11 11 16 1 34 13 16 16 38 4 2 30 34 26 13 24 10 8 40 34 1 23 29 38 21 1 34 3 3 19 29 15 33 3 22 19 5 27 11 16 30 8 26 6 3 37 18 34 27 17 36 34 20 12 22 1 8 27 17 23 15 21 13 17 35 13 22 35 15 23 20 1 26 22 8 31 28 30 9 3 40 9 5 35 36 35 18 27 39 13 16 34 32 25 3 22 11 26 19 16 18 11 32 30 36 36 28 40 31 36 2 21 15 18 17 1 31 30 26 26 2 33 2 15 19 12 31 39 36 36 33 37 16 11 2 37 15 7 31 9 23 12 10 11 30 16 23 14 20 19 19 6 40 23 27 40 16 27 29 9 10 40 7 19 14 1 5 24 6 36 36 6 3 23 40 38 22 3 33 17 35 4 2 15 1 35 31 12 27 39 30 5 23 36 30 26 18 3 31 12 37 31 13 4 5 2 27 10 3 34 33 16 23 18 21 38 20 34 12 31 22 15 5 14 17 1 39 36 1 39 21 2 28 13 12 39 22 40 28 22 29 6 2 38 9 34 25 18 22 13 27 20 33 26 21 14 35 12 27 7 9 3 3 25 13 20 24 36 35 30 4 22 4 1 12 33 13 9 5 10 27 28 11 26 16 36 33 10 9 5 22 2 23 38 19 31 33 20 26 8 6 18 3 22 1 21 1 3 23 10 7 11 15 8 34 16 24 1 27 2 31 7 9 37 38 35 4 12 32 38 20 15 32 17 19 31 9 25 27 2 39 40 28 39 17 3 38 31 24 12 37 20 10 15 32 16 30 26 12 30 36 1 2 1 14 15 38 24 22 28 24 4 3 6 26 5 37 34 33 6 32 32 21 39 25 1 37 2 16 1 16 13 37 40 31 22 13 39 26 37 14 33 13 8 5 37 19 18 26 22 37 15 34 11 22 22 5 12 20 23 33 2 38 38 20 32 19 5 24 14 7 26 6 25 2 14 7 39 21 1 6 22 2 26 37 5 12 26 26 27 39 24 25 2 29 21 10 35 18 3 6 29 22 36 40 9 7 2 25 28 24 7 23 4 37 25 5 10 23 34 16 20 34 9 33 34 29 28 7 12 37 31 27 10 40 28 36 31 21 3 21 5 4 32 30 32 34 8 28 37 13 8 32 31 40 38 31 24 17 15 13 12 13 22 12 35 34 18 11 30 37 35 32 30 16 12 20 24 29 10 28 15 34 18 13 9 30 28 16 35 33 9 34 27 7 7 30 39 39 1 33 40 15 32 36 20 15 28 1 25 21 19 25 17 24 29 2 29 26 1 22 9 1 18 3 29 38 17 9 27 5 15 12 38 25 23 22 3 4 13 28 2 2 23 12 1 1 39 36 19 3 5 8 24 1 6 34 16 31 16 6 10 32 16 18 14 33 10 16 22 18 27 23 17 19 40 18 28 3 4 20 36 3 22 5 13 27 30 15 3 12 11 18 35 2 6 2 20 25 40 35 14 30 19 33 38 5 31 16 3 25 15 3 28 26 15 1 18 15 32 9 23 17 9 21 33 28 26 11 31 16 17 8 6 10 3 25 13 6 20 12 38 18 17 18 19 1 17 31 12 26 35 27 28 2 3 35 21 30 32 11 10 11 3 34 25 7 23 17 33 5 25 13 40 21 25 2 17 4 9 15 5 40 32 32 10 28 39 10 15 9 34 32 8 11 30 40 1 24 34 11 38 13 7 34 11 20 11 25 9 34 28 38 6 36 32 31 18 2 1 36 2 15 1 28 18 35 34 29 30 30 1 32 28 11 3 7 28 37 20 2 18 28 40 36 16 15 15 2 1 32 11 12 33 21 30 12 13 23 10 37 2 18 37 34 31 32 29 30 23 22 30 7 40 23 39 15 33 11 40 39 30 40 38 21 1 21 36 40 25 5 35 2 10 13 13 9 11 11 3 24 6 12 25 24 25 10 17 18 15 29 39 9 25 33 2 8 21 9 9 20 26 2 30 28 13 17 40 26 30 23 25 17 11 18 21 17 27 25 14 15 19 37 10 32 39 16 24 33 36 37 21 17 40 18 37 38 39 2 27 9 19 14 2 9 26 24 40 35 14 25 14 5 35 10 27 18 28 3 38 36 24 5 32 18 12 18 15 18 8 9 33 4 21 7 27 7 26 8 28 9 33 16 37 22 24 6 39 22 24 33 2 29 23 16 8 24 6 32 7 36 12 6 25 39 12 19 10 1 12 16 4 12 7 36 8 14 17 6 31 23 13 12 7 31 19 6 13 38 21 18 38 6 34 1 23 14 16 26 30 3 10 6 2 21 24 23 30 16 22 34 34 40 22 12 20 18 18 5 22 10 16 22 22 19 24 10 12 37 30 8 10 12 29 17 15 16 3 3 9 23 31 21 1 4 8 38 11 13 5 30 36 25 21 29 5 25 34 19 9 37 35 18 11 37 25 8 15 1 19 7 25 28 14 1 15 9 8 14 7 37 31 8 26 6 1 1 18 11 3 37 15 24 35 28 28 6 34 33 11 31 38 19 14 26 29 28 35 10 7 39 1 16 6 5 10 27 26 12 40 17 5 38 17 5 21 39 7 10 20 20 37 11 24 17 39 27 39 38 12 10 25 20 5 4 29 6 33 3 17 11 21 39 4 19 33 11 36 8 27 34 16 37 26 27 34 2 4 1 4 6 15 13 27 14 32 31 22 20 28 30 9 6 3 36 30 25 16 9 10 17 34 13 1 24 1 9 21 13 17 16 28 24 20 28 14 22 3 21 11 3 18 29 7 15 5 5 29 30 1 6 33 21 11 1 36 40 17 17 39 22 23 19 27 30 39 25 37 34 20 3 28 35 30 32 38 20 12 11 6 2 35 36 12 29 1 21 40 25 17 21 5 39 17 38 36 34 6 31 16 6 34 6 14 28 16 8 25 21 21 21 4 1 24 2 23 33 32 9 5 9 25 16 34 19 26 34 14 25 33 9 10 35 23 36 28 15 4 33 2 35 15 15 38 4 16 20 18 25 6 35 13 19 6 5 7 38 13 36 8 19 17 16 35 40 12 33 2 15 11 40 25 2 9 30 2 17 32 40 36 24 40 1 24 30 17 5 31 28 12 13 27 26 5 17 35 14 29 36 38 36 37 4 9 26 31 29 7 23 37 39 23 15 35 35 15 20 14 35 40 14 35 39 32 28 33 5 35 31 15 30 18 10 33 17 33 22 8 11 27 25 30 7 18 18 32 9 19 11 40 9 21 26 30 37 39 8 27 23 4 16 39 37 22 14 13 21 14 30 9 32 28 10 33 13 17 31 33 7 8 20 22 21 15 21 19 7 13 30 27 39 33 6 37 12 12 13 2 17 21 37 22 39 15 17 2 23 10 3 1 3 3 24 26 37 18 25 14 39 22 33 2 17 6 14 2 26 16 17 14 16 29 23 33 7 9 28 3 34 13 37 23 11 29 31 33 16 21 13 29 29 22 7 15 2 1 26 5 16 31 40 8 6 37 38 38 1 1 40 17 7 24 17 38 1 21 25 2 13 16 40 35 39 29 8 21 34 34 5 23 17 14 15 33 14 28 19 1 36 3 14 13 7 25 11 35 22 31 2 22 37 27 5 1 3 25 35 1 8 39 18 14 36 4 33 30 15 10 11 20 7 22 26 35 33 39 28 39 35 14 28 4 27 2 19 29 12 33 36 29 5 33 29 32 36 30 27 38 11 2 26 27 2 9 2 29 19 35 3 5 35 26 24 22 13 19 11 18 35 29 2 29 19 22 33 22 6 34 14 38 25 6 13 1 31 14 14 26 10 35 25 1 20 29 19 28 8 3 27 8 8 32 4 36 29 13 33 2 17 20 1 20 17 4 34 30 37 23 7 31 33 23 31 37 21 18 33 2 8 31 30 22 21 1 8 35 35 31 35 20 24 7 30 22 1 6 38 24 5 30 30 40 2 28 30 20 16 4 34 28 35 32 25 30 30 30 14 17 14 15 19 37 19 6 29 2 4 30 7 2 39 14 29 2 19 30 40 17 24 4 25 9 12 3 36 23 19 16 5 5 23 5 18 13 10 7 11 37 13 9 10 9 26 15 32 40 1 18 31 24 3 17 9 11 12 20 15 29 2 17 37 12 13 35 32 40 34 39 15 34 5 36 33 38 31 5 14 17 27 33 1 29 21 15 20 36 1 6 20 9 35 9 37 27 9 31 2 10 37 35 11 40 13 8 8 9 15 34 35 40 30 11 2 14 36 4 37 19 20 20 31 8 11 15 11 16 14 2 21 11 26 17 3 13 22 40 20 23 39 14 22 5 25 12 29 15 18 11 1 9 3 6 36 8 33 13 34 15 6 21 2 20 20 28 34 37 7 18 2 12 16 29 10 13 22 36 13 16 37 38 24 33 37 28 40 12 21 8 8 22 25 37 25 21 15 24 26 24 38 1 29 7 30 4 24 30 31 16 28 17 8 4 39 2 10 11 16 1 4 10 21 30 17 18 34 24 17 39 28 19 10 14 11 2 1 22 35 33 37 20 25 8 37 16 1 35 9 23 36 34 26 40 31 33 5 40 13 32 18 33 1 34 12 14 40 19 18 11 24 1 32 34 14 23 8 35 18 6 11 13 33 2 21 16 12 22 40 37 16 10 10 37 16 38 38 13 27 20 22 36 6 5 33 30 10 33 1 12 37 29 38 32 28 8 31 6 5 8 12 27 9 11 2 8 9 12 18 37 29 8 25 23 23 35 32 13 16 15 7 7 23 15 29 25 30 22 1 32 29 9 1 32 33 13 15 5 26 15 37 11 13 21 21 6 40 30 40 38 5 27 15 27 27 14 2 35 11 25 15 5 34 19 14 9 14 1 3 37 15 16 32 20 37 25 22 9 9 31 31 31 19 2 33 31 3 1 12 27 10 1 17 39 10 16 37 2 17 15 37 26 31 20 28 38 39 33 18 7 10 1 30 35 16 35 18 39 15 27 8 23 16 35 16 14 21 10 24 36 9 23 24 5 34 5 8 16 16 9 16 11 13 6 16 3 27 33 29 14 14 12 38 28 7 17 10 10 5 35 8 31 12 26 18 21 23 5 18 18 25 16 1 32 5 15 10 22 9 1 19 21 22 26 38 26 35 34 40 31 17 19 38 7 20 26 21 5 21 19 14 10 29 29 4 23 27 1 16 38 3 9 34 24 30 18 5 39 3 11 9 29 2 4 10 16 31 10 5 11 25 16 2 27 9 3 2 24 5 31 38 31 27 25 17 35 12 19 16 13 34 26 17 35 20 25 26 35 19 2 11 38 37 13 30 4 33 13 37 37 15 35 40 38 21 30 3 15 29 34 40 22 23 40 19 7 13 18 29 27 19 24 35 15 37 35 12 24 1 25 13 26 24 34 38 13 28 7 7 23 37 28 26 19 2 6 22 20 32 22 37 28 26 10 18 6 30 28 6 1 23 40 20 39 26 3 11 4 9 35 25 13 15 23 23 3 37 19 35 21 34 25 18 4 9 8 19 26 15 33 11 28 29 22 38 18 9 6 13 7 18 17 26 36 11 5 10 39 8 29 6 10 21 38 39 7 6 4 28 37 9 3 37 18 12 18 22 37 18 28 29 28 1 3 5 28 38 2 15 20 1 7 33 2 25 5 9 7 6 21 18 40 14 15 5 28 1 33 35 13 6 1 18 27 26 12 4 32 37 16 24 8 30 19 20 9 6 35 3 9 35 26 22 26 11 10 25 16 19 4 30 16 25 31 33 24 10 39 16 12 26 13 20 25 27 31 15 3 40 7 3 32 38 14 30 11 31 34 32 34 38 25 12 24 26 34 13 29 30 15 32 40 33 33 9 27 9 21 24 2 31 31 32 10 10 3 12 23 36 32 2 32 23 22 19 38 27 40 28 24 2 38 22 39 23 1 40 28 26 34 11 39 26 5 16 30 34 29 28 2 26 21 10 4 33 5 33 4 17 23 9 34 1 23 29 33 11 23 34 34 21 13 21 25 38 10 26 30 4 18 1 24 39 1 13 37 34 30 24 36 36 36 10 20 23 29 23 3 18 17 20 27 27 13 9 17 6 32 39 2 29 20 5 25 13 17 24 7 40 10 39 25 4 6 38 32 8 11 29 17 18 19 3 36 36 17 26 5 13 21 34 17 35 1 8 20 30 35 37 27 33 11 26 3 5 15 6 3 8 12 5 11 17 25 18 33 6 7 14 39 21 33 9 27 7 33 34 19 14 13 18 23 15 2 14 23 33 38 11 15 9 13 26 8 18 6 10 37 7 11 31 25 8 36 25 31 1 22 8 18 15 39 11 10 9 24 8 23 40 2 4 20 30 1 10 14 18 5 8 13 15 31 27 23 34 2 14 3 10 10 28 2 15 16 9 23 36 8 10 8 33 9 40 16 34 5 31 19 21 36 16 27 7 17 12 11 26 5 39 36 20 26 9 34 37 29 31 19 23 32 24 26 3 16 40 10 26 30 20 30 19 36 24 27 34 11 27 31 24 17 29 38 6 37 39 18 35 17 40 9 17 15 9 19 22 10 18 15 34 21 2 14 23 2 25 25 29 33 27 16 15 7 34 38 36 3 26 18 21 19 39 1 24 34 3 8 19 19 10 40 37 35 16 2 37 29 16 17 5 17 39 18 10 12 17 10 3 13 32 32 25 38 28 5 20 23 30 36 32 5 2 3 17 38 37 4 32 7 2 6 37 17 30 38 27 7 22 27 3 18 6 5 20 11 26 17 40 39 15 10 38 14 34 32 27 19 14 30 14 29 19 27 3 6 27 36 16 9 30 25 17 8 38 25 25 27 19 6 24 37 10 3 30 27 20 37 20 6 37 13 9 28 39 28 29 9 40 30 5 15 5 19 33 27 30 5 39 24 31 17 40 31 4 34 15 36 27 16 22 19 8 36 12 7 4 24 8 36 10 15 2 9 28 30 27 4 35 4 3 18 26 25 9 35 23 24 6 25 37 27 33 4 29 21 10 10 5 28 20 1 34 40 29 1 24 31 29 11 13 32 14 20 24 23 28 23 33 5 32 36 15 1 1 5 24 21 36 3 10 15 23 13 22 15 40 16 21 4 37 2 37 4 1 36 26 9 30 5 7 8 20 15 17 23 32 32 19 24 23 34 22 8 40 13 20 21 11 25 29 39 2 23 17 14 10 11 25 12 38 12 2 19 9 2 11 31 27 14 20 29 39 2 18 37 15 27 10 34 29 13 33 11 18 37 5 20 34 12 12 22 13 4 28 12 30 1 10 18 35 18 1 14 34 17 7 10 5 31 3 9 1 38 20 37 14 16 5 38 25 22 12 27 18 38 36 20 23 5 18 2 4 13 14 14 29 20 21 30 25 18 13 24 4 33 30 16 26 6 13 17 11 34 13 34 21 6 5 22 25 33 6 25 27 6 28 1 38 14 10 21 14 17 10 17 6 9 12 18 1 15 16 2 23 13 32 15 29 10 14 20 2 5 40 14 30 4 7 39 1 31 21 28 40 8 17 16 15 12 18 35 37 18 32 6 26 14 31 31 26 34 10 18 17 12 30 28 1 5 16 23 33 21 31 28 36 39 10 27 40 11 33 13 12 8 16 40 21 20 6 19 31 28 20 37 19 23 25 9 27 16 20 10 40 10 22 3 14 28 34 24 6 4 1 17 16 35 12 36 34 37 23 19 23 3 34 12 3 15 11 3 30 40 8 19 15 2 1 33 13 19 40 14 24 35 16 31 18 35 38 19 28 7 5 23 16 5 26 2 34 3 29 36 37 7 38 17 28 26 31 27 11 1 17 25 2 36 33 35 2 30 36 38 12 11 35 5 31 15 7 12 14 5 35 10 23 32 19 4 24 34 23 10 28 35 27 7 38 24 19 8 13 15 3 2 35 3 3 17 16 21 13 23 32 27 38 35 24 28 33 8 19 26 13 19 6 11 15 35 31 15 5 34 31 21 39 5 17 35 15 33 19 12 15 16 27 38 11 23 16 5 27 39 18 7 39 16 11 15 20 15 40 21 13 15 39 37 24 9 25 10 21 25 35 4 3 14 4 18 21 22 40 14 30 28 15 8 7 19 23 8 30 14 4 5 28 4 32 10 40 32 32 31 28 35 10 35 25 5 28 22 36 13 1 7 17 2 37 17 21 6 12 7 36 24 20 32 31 17 1 23 12 1 8 11 7 10 6 26 37 4 39 22 30 25 21 38 32 3 34 9 22 21 19 18 15 3 36 5 24 29 37 24 17 22 13 28 25 39 7 14 30 20 22 31 13 22 9 6 26 4 27 29 31 3 18 14 30 39 14 4 34 23 39 37 23 7 40 13 23 17 6 9 13 28 33 34 17 18 31 4 22 11 26 35 8 21 2 2 15 30 20 15 12 11 1 3 12 29 19 7 40 8 26 35 10 30 36 40 37 16 34 4 31 6 37 33 15 27 14 30 8 36 29 15 34 26 8 30 37 4 29 21 4 17 3 27 31 17 13 3 24 37 18 31 32 24 13 33 5 8 29 18 20 28 3 28 29 10 18 37 28 18 14 37 37 9 11 40 29 15 18 6 34 8 10 34 20 3 24 40 7 16 17 14 18 25 20 8 24 32 13 21 27 21 28 8 36 34 30 23 8 6 6 33 27 4 35 9 24 19 36 30 20 8 32 36 10 27 14 11 21 36 27 18 12 2 21 4 37 4 12 30 6 6 29 30 26 4 2 38 19 17 36 2 32 24 21 21 27 2 36 12 9 14 34 12 25 5 22 2 7 23 3 6 25 17 14 14 23 31 29 9 5 21 33 26 14 27 38 20 36 31 28 36 15 34 23 17 3 5 25 17 24 35 36 3 30 9 10 19 23 36 37 1 12 17 3 33 20 34 30 6 10 30 37 38 31 17 25 22 38 2 39 24 39 34 12 23 7 13 38 13 24 10 13 19 38 8 27 8 20 7 33 21 28 12 12 20 25 38 9 29 25 2 12 34 24 40 34 12 38 7 26 40 16 11 31 15 7 15 3 10 15 17 3 12 23 25 11 27 39 15 20 21 33 26 32 20 15 9 29 8 18 6 32 38 28 17 6 36 32 6 37 35 12 10 33 16 10 15 35 35 37 19 25 18 3 16 38 35 2 15 14 13 34 13 29 20 5 30 12 4 6 35 34 36 14 16 17 36 13 32 19 11 39 9 10 26 19 30 35 15 12 8 22 9 24 16 26 13 7 38 20 32 30 15 31 3 8 15 27 6 20 30 4 31 23 11 3 34 12 26 23 27 2 29 37 9 29 14 35 14 4 31 9 3 4 39 28 3 18 31 3 25 28 22 10 10 39 7 30 39 13 27 37 33 38 20 33 3 9 17 4 8 28 37 14 16 2 35 24 39 5 4 33 8 25 23 3 12 37 39 35 8 30 10 34 23 39 40 30 15 22 22 23 1 33 14 40 36 23 7 16 17 4 10 26 35 1 24 10 31 20 35 24 23 9 11 31 7 10 26 16 34 4 28 9 13 28 24 5 14 10 39 19 40 4 40 2 20 9 13 29 30 9 34 31 11 3 6 30 30 16 34 14 5 12 27 11 23 23 33 9 35 40 9 40 14 28 31 21 10 33 3 19 18 5 22 30 24 26 34 14 37 19 26 19 24 24 13 25 39 9 29 8 1 36 10 2 29 17 18 25 11 40 39 27 39 25 25 27 26 26 30 6 13 6 2 14 19 39 36 7 39 5 6 32 12 9 32 18 11 25 13 16 16 12 19 1 18 10 6 28 35 15 26 15 14 3 14 16 23 17 34 34 19 3 18 12 11 24 13 13 38 34 20 18 8 10 40 6 24 34 16 34 10 16 13 7 37 27 31 22 2 13 9 1 20 12 3 23 25 29 24 13 32 8 29 32 27 24 38 25 29 7 13 32 16 8 40 6 30 10 29 2 39 15 1 34 32 38 23 29 21 8 24 8 16 29 13 2 3 2 10 39 28 27 12 32 24 11 38 15 19 12 28 7 15 9 21 3 16 8 21 28 40 22 35 12 20 4 33 24 10 4 22 33 18 5 39 13 21 11 34 16 34 6 14 38 37 6 29 21 6 13 38 30 32 24 11 19 23 15 11 11 39 9 6 4 3 36 29 11 29 23 1 35 23 15 34 36 1 18 4 19 33 20 33 15 35 32 31 16 26 8 25 10 11 12 22 40 14 39 26 37 12 39 12 1 40 26 21 38 6 25 3 2 5 32 5 22 23 24 16 39 18 20 4 38 26 33 11 17 10 4 5 8 34 13 5 22 39 2 17 11 19 18 16 33 6 2 1 26 23 34 23 35 16 25 3 39 14 6 16 3 1 38 32 19 9 10 21 24 28 24 33 31 22 38 23 27 33 16 36 26 16 19 39 6 9 21 9 19 19 24 14 4 11 22 16 12 18 20 29 36 21 23 14 11 14 15 18 9 17 17 25 21 4 4 3 1 29 13 14 35 20 24 6 20 38 10 24 29 39 38 13 10 23 36 36 13 37 11 20 24 27 25 18 34 2 15 7 1 1 16 10 7 7 40 21 35 18 36 21 37 29 3 20 33 3 36 35 34 14 38 25 8 7 21 16 40 24 35 13 1 14 33 16 37 34 11 8 27 33 40 35 15 12 21 21 24 18 37 14 3 20 7 16 36 32 16 34 21 9 13 6 13 39 25 31 17 29 4 28 9 37 21 38 19 39 15 6 33 38 21 7 1 31 28 22 34 2 23 22 30 8 40 17 9 18 24 17 38 26 10 12 35 37 11 1 20 16 36 9 9 33 4 33 27 12 36 15 21 33 34 17 40 28 1 30 1 21 39 3 12 35 18 33 25 9 33 4 8 26 8 38 9 28 24 32 23 17 22 26 21 13 34 17 15 9 10 32 5 10 8 7 35 38 22 22 19 26 29 26 2 27 40 24 14 22 3 29 33 20 24 40 37 25 26 3 23 24 15 37 8 29 35 30 10 24 18 32 30 27 8 14 34 13 27 2 2 11 6 6 5 18 6 4 18 3 35 16 23 12 35 25 30 14 1 4 16 14 4 17 33 35 3 33 29 18 11 17 19 27 3 35 27 27 28 34 17 21 24 6 30 11 6 18 9 14 23 27 24 38 36 24 2 27 10 30 20 4 27 37 40 2 36 32 4 25 2 37 14 39 32 7 26 1 27 7 32 20 7 36 27 25 38 40 24 1 1 36 21 10 19 16 13 26 14 40 5 36 20 17 32 39 8 19 21 35 23 21 37 18 20 4 30 7 12 20 32 3 6 3 34 13 10 7 16 34 22 24 36 20 34 34 39 20 30 14 39 34 31 17 2 17 25 1 1 10 7 2 21 28 22 16 4 14 3 33 2 15 10 13 19 37 10 15 28 10 8 2 23 29 20 11 38 36 4 25 7 37 40 26 29 26 21 12 10 33 2 16 40 16 12 8 9 31 30 12 6 33 35 27 32 18 28 15 11 30 20 20 23 7 24 16 13 40 20 18 14 12 12 10 27 5 34 36 30 40 11 11 23 9 11 8 18 33 23 28 4 5 3 33 17 33 23 17 30 8 31 17 26 25 34 31 20 23 37 15 24 18 39 14 21 36 39 25 32 15 37 35 10 4 14 17 13 6 15 33 39 14 23 11 1 39 33 33 16 10 11 9 1 30 31 6 39 29 33 25 39 22 37 27 39 31 31 2 25 24 14 8 9 31 30 4 16 16 25 8 2 37 6 31 26 4 29 35 10 37 25 38 1 14 2 18 6 16 24 13 33 4 31 7 34 24 12 21 31 2 5 8 22 32 20 28 18 20 23 39 30 11 6 25 8 11 13 38 19 23 17 5 11 1 39 22 3 24 24 14 24 30 11 27 3 16 4 18 37 19 4 31 11 24 3 13 21 11 35 38 6 32 31 6 29 16 40 18 23 18 12 24 21 2 39 8 33 39 39 32 40 5 14 11 35 26 37 31 30 38 40 32 25 10 1 16 9 14 6 39 24 35 20 38 18 21 22 24 15 16 21 39 39 12 38 28 27 2 31 4 2 12 13 14 22 39 22 23 27 2 32 21 2 24 25 34 34 31 1 34 40 19 11 15 22 22 17 26 19 39 16 13 24 17 33 21 16 32 15 28 35 21 10 17 14 33 6 33 7 31 11 21 22 17 34 39 30 11 31 7 9 16 29 11 6 22 19 35 17 30 13 15 36 21 10 20 1 26 4 20 4 30 18 22 20 24 18 25 12 27 1 37 21 21 6 32 33 21 7 16 4 10 7 15 33 29 14 9 8 37 13 7 27 18 19 15 15 20 22 33 21 6 7 3 33 14 35 13 33 34 18 2 4 35 2 34 15 22 23 3 37 25 20 22 32 19 28 22 38 36 10 31 2 24 36 38 33 6 2 34 38 7 33 3 11 34 10 12 36 29 36 7 28 32 38 4 21 31 35 28 13 26 14 30 38 36 15 1 19 34 4 18 27 5 30 27 20 20 21 8 12 37 23 10 13 18 40 14 16 21 22 40 17 25 16 8 32 9 25 26 26 17 40 4 8 28 32 10 35 37 36 34 32 33 2 30 37 36 23 29 26 15 6 20 34 23 8 3 39 8 38 9 9 30 1 11 21 13 38 37 30 15 19 19 38 21 21 5 1 32 33 17 35 4 17 4 25 18 14 20 39 27 8 9 25 23 6 13 22 16 32 25 16 29 2 10 10 6 7 19 4 27 23 32 23 9 40 2 35 21 12 11 10 26 31 5 13 33 23 29 28 20 24 37 32 20 3 6 3 30 8 34 25 6 21 25 8 23 24 34 17 15 38 12 9 34 18 3 2 19 26 38 23 30 35 9 23 38 34 20 11 2 10 2 19 38 27 16 2 1 33 28 35 27 12 34 39 1 18 16 26 22 38 3 24 6 23 10 22 24 28 17 25 16 10 7 22 28 30 39 39 5 10 18 36 17 14 17 30 18 5 8 24 9 1 13 25 15 13 35 33 22 35 2 33 18 1 16 9 26 26 13 25 26 6 26 29 15 37 25 34 37 8 2 17 31 34 22 8 39 28 33 22 21 39 22 12 31 38 24 33 11 20 21 1 27 30 1 6 24 19 36 21 29 16 30 6 6 7 30 31 38 9 39 19 2 11 9 1 17 40 14 39 29 6 10 19 1 1 4 22 17 15 13 27 34 23 30 23 6 16 18 39 1 4 5 10 40 12 29 10 21 6 31 31 25 7 2 6 6 23 16 10 15 38 8 10 23 14 26 31 8 12 35 13 20 16 9 31 40 2 40 1 38 23 36 15 39 29 16 27 14 7 22 30 22 3 25 25 33 18 6 34 35 16 20 17 39 33 15 4 2 20 31 30 36 5 8 18 6 14 5 38 11 36 18 3 13 5 27 30 29 18 21 10 14 15 34 13 3 8 29 27 11 25 8 7 32 29 27 39 27 10 18 31 29 12 4 37 29 22 6 22 36 23 33 25 18 28 17 21 14 15 30 3 25 36 16 3 30 1 38 33 11 25 37 24 18 28 37 13 34 22 4 37 38 7 7 11 35 5 32 3 27 36 23 9 3 14 26 35 23 26 17 34 15 20 40 30 21 28 9 21 5 30 14 37 2 17 6 20 37 29 29 33 5 1 8 40 18 35 38 5 27 38 19 8 9 22 40 24 20 22 12 18 29 35 27 24 40 39 34 36 24 10 39 24 14 19 30 17 10 36 20 14 25 1 5 26 11 21 39 20 31 17 24 15 11 37 10 2 14 4 2 30 23 40 14 34 31 11 32 21 33 22 10 27 9 14 39 1 7 4 27 7 23 25 17 40 18 34 2 15 28 24 25 4 6 40 9 13 8 39 25 7 39 30 19 34 17 17 4 40 33 28 10 9 36 39 14 24 33 15 33 29 30 39 5 4 15 1 15 3 31 1 32 38 10 4 1 27 16 9 32 6 9 1 29 27 37 35 27 28 5 20 26 10 1 13 17 4 26 9 3 24 29 17 11 39 6 18 14 9 1 15 26 6 40 11 1 18 27 12 12 2 34 26 28 31 22 12 33 13 37 25 40 17 31 40 11 29 38 30 25 36 35 3 34 16 23 36 1 7 6 31 10 39 35 35 11 31 13 28 40 2 16 34 6 2 39 36 13 29 6 34 13 24 17 37 8 28 30 27 30 3 34 23 13 31 11 37 35 10 3 29 34 30 7 18 9 2 21 40 11 18 6 16 1 27 4 16 3 27 32 40 23 40 27 31 14 8 39 17 26 23 8 39 21 10 23 19 3 14 33 22 2 13 34 15 6 1 40 12 40 4 18 19 13 30 7 31 19 40 22 7 16 21 39 2 10 37 33 8 22 36 35 32 31 31 13 38 11 15 19 11 22 39 33 11 38 37 13 37 38 12 10 5 40 2 37 5 23 20 27 25 37 38 28 24 6 37 32 6 22 22 33 20 34 36 18 9 29 24 14 32 6 2 10 26 8 19 39 7 23 2 30 39 22 25 20 26 23 9 30 40 26 16 22 36 26 4 15 4 26 19 38 30 14 37 22 13 35 10 2 18 30 17 7 35 32 23 2 35 19 37 31 19 34 39 15 6 17 17 16 40 3 18 25 6 37 9 33 16 26 39 38 34 27 28 2 15 20 6 25 33 2 15 12 23 2 8 26 29 3 21 31 16 31 40 36 12 36 21 38 8 18 6 22 8 31 36 13 9 22 5 6 9 9 11 19 21 14 17 11 17 12 28 32 3 38 1 39 6 5 18 4 25 40 15 30 25 34 14 19 8 39 27 33 17 24 4 26 11 20 6 9 24 3 29 35 1 12 16 10 22 10 33 38 28 32 36 11 26 17 39 22 34 17 40 36 21 12 24 34 2 31 2 11 3 13 10 39 17 32 12 1 9 25 27 35 35 1 36 32 18 26 24 5 25 27 40 4 18 18 36 35 23 31 38 16 21 26 25 8 33 36 10 38 3 29 9 35 28 8 26 4 17 30 9 3 10 22 20 39 19 29 29 30 20 16 13 14 33 38 33 5 6 34 5 3 38 1 26 27 26 31 18 10 29 21 34 9 9 4 38 22 15 18 31 32 13 2 3 31 12 8 22 25 6 2 29 30 4 17 39 31 7 28 35 5 3 15 27 22 19 17 18 35 5 27 15 40 26 37 13 37 24 11 32 12 13 24 21 22 5 23 28 17 39 10 19 6 26 8 24 15 6 5 12 7 25 39 20 13 11 2 13 23 30 14 20 38 22 39 35 9 21 39 1 8 22 18 32 29 39 10 6 19 4 30 37 33 12 6 16 38 37 15 31 13 13 40 7 16 19 1 39 33 19 33 35 17 7 7 22 1 28 34 16 4 17 3 29 34 36 35 30 26 17 22 13 31 2 8 12 10 22 3 20 18 20 26 25 34 12 21 24 14 15 25 8 37 39 24 30 17 32 9 10 28 3 37 33 3 34 34 38 39 35 30 28 10 22 2 21 37 17 39 6 35 9 39 38 12 15 9 4 27 33 9 29 4 35 3 21 36 40 3 28 26 39 35 26 18 33 34 33 11 21 37 39 15 37 19 24 19 32 6 8 30 14 30 36 11 19 14 32 32 36 11 9 25 23 28 13 26 27 23 14 24 12 12 3 21 4 9 22 21 13 12 27 34 5 8 39 6 26 8 11 9 26 38 11 24 31 5 7 15 11 1 1 38 23 28 7 39 22 7 19 6 23 23 7 13 16 33 3 20 35 27 1 11 14 10 25 8 37 33 21 9 13 1 22 23 25 24 26 20 33 5 28 24 5 39 26 22 33 36 31 13 12 10 10 30 1 33 8 1 25 3 40 40 4 24 33 31 7 26 21 19 30 7 29 28 37 14 24 1 1 29 6 12 3 10 35 27 38 11 29 28 5 37 37 10 10 7 18 38 23 34 20 16 5 4 17 1 16 36 24 24 32 35 4 21 38 27 10 9 24 23 7 38 24 21 31 7 15 35 15 38 35 39 28 32 6 21 4 4 22 11 14 22 16 23 18 8 31 10 34 25 7 5 33 36 36 28 40 21 11 31 31 2 25 6 37 15 29 3 9 19 37 6 11 1 22 36 36 28 28 27 6 32 26 2 16 24 18 18 29 22 28 8 8 1 17 3 12 21 23 3 22 3 36 17 19 22 1 34 22 23 10 13 30 30 31 24 38 24 35 14 15 10 33 8 10 21 8 9 16 36 7 26 17 4 12 34 38 25 4 13 30 26 12 25 31 4 16 39 29 23 15 32 40 3 24 19 30 39 19 32 14 21 7 7 1 8 22 18 13 25 8 40 9 24 1 6 1 25 25 8 33 37 4 16 38 14 22 33 20 6 29 40 3 4 20 7 16 19 31 29 21 11 10 5 31 25 33 30 25 17 39 2 32 4 25 13 12 33 14 31 2 12 32 12 15 1 12 26 39 35 34 2 35 29 21 17 30 35 6 31 37 36 33 37 13 34 37 1 2 17 8 32 14 33 23 24 12 35 34 17 20 27 5 12 12 40 40 14 11 13 19 19 3 18 30 30 4 36 4 8 28 39 29 8 19 27 31 24 3 13 29 17 24 14 33 15 24 1 30 27 18 38 13 33 24 30 32 18 21 4 14 30 38 22 7 16 34 22 13 9 32 19 22 14 13 35 15 2 10 25 12 6 5 35 3 18 39 16 37 29 39 32 13 1 16 26 34 12 33 29 28 24 20 29 10 23 38 25 6 16 11 20 20 4 1 15 35 24 17 11 1 33 9 39 11 1 17 31 15 2 29 17 28 6 10 8 37 34 18 16 29 3 36 17 38 26 9 11 19 25 32 14 8 36 28 10 19 1 13 40 12 18 30 19 38 26 11 5 27 30 35 3 12 25 29 27 13 2 3 19 15 5 5 39 13 5 37 32 22 15 30 26 2 6 18 34 2 17 14 21 11 1 33 15 10 13 33 26 16 28 1 33 14 13 1 24 30 25 25 22 35 30 7 4 12 23 2 6 27 33 25 13 32 24 17 4 5 18 27 15 4 40 31 36 40 34 39 5 1 14 24 4 8 30 23 27 11 10 33 31 18 3 2 9 38 30 12 34 32 17 31 24 33 12 28 24 30 5 16 27 37 2 8 35 36 10 23 23 16 31 23 40 28 15 24 10 11 9 8 33 34 7 26 39 6 38 8 10 25 26 10 12 36 30 21 28 18 26 5 5 27 13 36 6 22 16 9 1 21 16 28 19 37 34 17 8 21 11 31 32 23 14 34 1 33 39 7 26 20 7 32 5 38 2 15 19 18 27 2 15 33 19 28 31 23 20 25 12 12 28 33 24 36 32 19 37 28 40 32 5 16 34 32 33 3 7 15 34 35 16 40 35 27 24 34 34 30 29 13 20 6 37 27 26 2 30 12 10 34 39 39 7 8 30 2 39 1 2 11 8 7 6 9 9 6 8 36 5 31 40 27 33 31 4 13 26 13 1 3 12 13 9 5 29 40 39 5 40 8 32 1 4 16 24 30 11 32 26 16 15 17 3 1 24 19 8 5 17 40 34 11 39 5 16 19 14 38 17 38 6 22 40 38 2 23 14 15 4 36 13 1 6 33 32 12 23 31 23 28 23 13 2 5 11 6 12 27 18 26 34 13 10 12 30 34 5 35 7 23 2 20 34 35 27 15 36 6 34 33 39 8 13 37 39 10 3 10 34 19 24 31 28 2 24 10 22 19 22 9 16 38 39 28 38 27 25 22 29 5 7 10 31 23 7 27 28 7 19 20 9 8 14 13 5 39 35 24 16 17 21 39 37 32 6 36 4 11 37 40 8 18 31 24 15 32 28 24 23 21 28 16 33 32 26 27 34 14 10 21 12 14 36 10 30 20 31 18 9 4 37 18 20 18 33 32 22 5 30 10 21 40 36 15 38 29 17 36 14 23 30 21 3 30 36 2 11 30 30 4 29 39 33 32 30 26 5 18 15 8 1 29 2 26 40 12 17 4 31 36 23 9 3 35 40 10 17 6 8 29 9 21 39 12 11 22 20 34 24 36 34 25 20 5 13 34 34 3 21 13 3 16 3 19 17 11 34 10 4 20 2 39 7 20 17 20 14 16 15 9 30 27 26 9 8 36 15 14 6 23 40 19 5 15 40 7 9 8 25 20 34 32 21 17 15 36 9 39 30 30 5 6 9 9 22 12 4 37 5 3 9 19 1 30 24 35 27 26 13 23 25 7 11 30 37 5 38 34 26 10 6 24 35 30 16 11 1 40 25 26 19 40 32 34 16 30 27 17 3 5 23 3 8 13 29 11 6 11 14 9 36 32 19 37 24 13 40 31 11 27 26 33 11 39 24 5 16 16 36 22 28 8 24 30 26 29 18 40 40 10 6 40 4 24 19 16 25 2 1 18 29 28 26 1 33 36 27 31 22 24 5 38 29 8 38 9 3 13 24 35 11 16 16 1 12 31 31 30 16 5 37 27 30 15 34 23 4 5 13 22 12 19 1 12 37 28 26 4 10 27 7 36 3 26 32 14 17 15 36 28 10 4 25 18 16 11 30 22 9 21 28 37 7 3 7 1 38 24 4 22 22 19 32 25 29 37 9 27 17 40 3 32 10 4 29 30 7 8 2 8 18 28 35 35 25 22 9 8 31 13 10 29 5 10 15 25 17 31 16 1 18 19 29 32 23 7 18 7 11 20 27 15 7 22 16 35 9 33 12 35 19 24 8 1 20 39 12 35 37 21 37 7 12 38 31 13 3 12 22 15 4 13 23 22 10 24 5 3 3 15 20 15 30 9 33 23 12 17 22 27 15 26 21 39 17 24 19 10 35 25 13 9 18 21 32 32 6 29 12 27 18 18 30 18 3 38 27 28 1 6 40 20 36 11 27 23 11 1 27 13 35 12 17 34 38 28 37 35 4 40 17 10 30 23 4 22 6 1 25 37 6 27 38 7 27 10 24 20 2 20 3 17 34 19 10 18 4 26 5 1 19 33 17 8 23 14 11 2 10 35 27 1 28 2 23 6 20 9 7 3 3 28 13 39 28 30 23 15 39 2 10 18 40 2 15 28 24 35 20 8 27 31 23 12 4 6 14 12 9 23 16 17 30 21 8 40 8 6 21 21 12 24 2 21 29 21 28 24 9 30 26 20 6 27 9 1 33 25 33 3 21 9 30 2 36 35 33 16 24 16 40 7 5 37 30 22 19 1 2 21 15 37 34 28 8 21 9 35 37 22 22 12 15 11 16 32 34 23 17 9 39 34 13 34 12 32 3 22 11 38 16 13 23 6 10 38 16 39 12 38 33 34 1 31 18 13 23 34 21 27 27 33 24 6 11 27 16 31 29 36 9 32 6 9 28 17 12 14 14 35 15 10 11 28 16 36 27 37 29 12 8 34 39 9 9 11 38 5 2 8 1 34 40 7 26 6 35 28 29 38 29 15 24 34 31 39 33 23 38 1 6 3 17 22 7 3 15 23 31 19 20 39 6 34 14 3 33 28 2 12 20 14 21 31 10 32 4 39 35 18 16 33 3 7 2 11 18 1 38 7 36 23 30 40 19 30 36 14 21 16 30 35 32 25 3 33 1 8 23 25 20 18 3 18 16 13 40 26 14 32 20 10 11 34 25 6 34 1 24 29 26 37 31 11 6 1 32 12 4 1 39 36 38 15 8 12 36 12 38 29 7 32 12 3 31 2 7 7 29 5 1 1 26 12 4 38 6 38 10 20 13 6 15 1 10 24 24 8 35 38 25 8 25 8 10 13 28 10 15 21 28 21 23 4 39 7 34 5 15 31 13 30 15 12 14 22 18 20 31 37 13 16 11 16 35 18 17 19 37 16 33 12 18 34 16 19 21 33 24 15 1 9 30 38 11 37 3 12 14 33 34 3 35 31 37 16 18 39 19 19 32 6 25 12 25 38 34 10 4 1 22 9 5 38 1 16 3 15 25 32 23 37 22 8 27 30 1 20 37 7 29 17 6 38 32 35 37 20 20 30 20 27 15 18 10 30 29 35 19 35 3 20 17 33 23 2 13 14 24 6 29 12 30 24 11 17 20 7 27 25 13 6 22 37 11 9 13 7 3 26 29 10 10 35 31 9 33 23 15 37 14 39 35 34 35 6 7 1 13 23 5 39 32 32 39 7 11 27 17 40 36 28 21 26 25 30 28 28 7 31 40 30 32 12 6 4 39 3 12 14 30 4 13 16 35 13 9 15 40 37 35 32 29 11 9 40 25 18 36 33 12 37 40 9 2 34 21 14 38 31 5 23 19 11 29 14 9 21 6 13 17 8 16 39 14 25 9 21 19 18 10 31 28 34 37 11 7 16 33 12 3 25 39 30 35 37 38 34 30 26 20 6 33 15 39 8 29 23 32 39 40 12 7 4 16 28 15 31 21 20 15 8 36 39 25 3 14 1 32 17 15 16 3 29 1 2 10 15 8 14 19 31 1 11 34 20 26 3 22 18 18 12 29 1 18 39 24 7 39 36 5 7 6 28 4 14 18 15 11 30 31 5 5 14 16 19 1 31 26 14 3 28 11 29 11 14 11 27 34 22 13 23 11 37 13 25 9 5 36 17 15 33 10 16 12 26 33 34 38 4 15 36 3 21 26 31 32 28 17 18 16 4 40 18 15 3 29 31 21 35 26 25 19 11 9 26 36 39 8 3 23 37 11 30 33 11 28 29 40 32 30 22 35 39 11 37 10 24 21 8 19 36 11 29 36 10 28 13 6 1 24 33 23 36 32 27 30 36 4 34 17 15 13 26 40 21 30 18 10 39 39 22 28 2 37 38 29 2 17 13 17 36 16 32 12 25 5 30 29 10 26 24 6 20 36 2 6 23 5 37 10 26 22 37 16 27 8 33 1 18 36 21 12 36 14 21 28 5 36 25 25 36 21 15 21 19 36 4 31 5 21 5 39 7 28 13 31 11 14 3 37 33 19 19 3 2 38 14 37 19 30 39 36 30 22 26 19 24 15 27 32 14 13 30 8 17 3 24 10 7 12 16 13 16 9 5 7 14 15 5 38 20 7 15 17 36 31 15 9 36 12 5 12 8 19 18 3 16 6 9 29 37 2 23 16 25 1 33 11 30 24 9 23 20 8 25 16 20 40 32 19 32 15 29 11 15 20 9 34 1 4 1 15 32 19 1 14 2 3 11 40 40 28 4 18 9 8 7 21 8 33 28 18 9 33 3 9 2 4 27 14 35 20 27 20 1 7 12 37 21 35 13 32 6 36 35 15 17 12 29 15 8 32 35 34 4 18 4 18 23 36 22 24 1 28 2 12 3 6 27 7 40 8 2 38 13 2 5 17 2 35 31 39 2 29 12 28 11 40 25 36 11 22 7 11 22 14 3 19 5 31 23 39 12 25 11 15 25 19 33 3 17 28 31 26 3 25 12 34 24 1 29 1 30 31 33 12 9 32 15 37 8 21 15 6 38 30 38 40 21 5 28 13 6 36 19 17 21 1 40 7 18 31 1 1 14 38 9 21 26 25 8 4 29 37 28 7 14 24 12 21 3 19 35 26 14 18 26 37 14 24 27 34 22 15 14 13 14 3 10 30 24 28 37 27 38 27 29 32 7 18 16 23 20 28 40 18 36 16 16 40 9 14 23 16 14 5 16 15 27 27 1 20 3 31 35 4 16 35 34 19 3 18 26 12 11 40 1 7 38 8 20 26 16 22 2 30 4 27 10 27 25 30 22 40 5 4 34 25 37 8 14 9 16 37 5 4 9 26 15 28 27 32 8 1 32 35 21 31 37 14 34 2 13 36 2 1 34 12 20 16 6 14 31 24 20 10 37 15 11 8 18 26 29 13 1 22 36 7 13 11 25 16 32 13 5 25 12 5 13 21 34 30 3 29 9 20 13 11 22 32 9 19 26 1 28 3 21 29 31 32 19 10 34 38 25 20 32 21 6 39 38 27 14 34 29 26 32 9 17 32 19 40 3 9 38 3 15 19 31 8 6 9 28 22 33 1 15 2 13 33 37 14 30 26 40 10 26 32 39 3 11 12 18 8 33 28 10 9 3 8 26 3 20 5 12 34 36 14 10 23 4 25 29 9 20 8 2 37 19 31 38 8 25 22 39 6 37 39 27 33 31 9 18 17 25 26 5 33 21 7 5 36 4 9 26 4 21 36 3 1 23 27 31 4 23 40 21 11 21 26 2 7 16 12 19 4 33 9 33 5 30 14 36 29 12 19 22 5 37 3 33 7 31 20 35 8 23 40 11 9 18 29 35 39 20 28 3 2 4 18 25 21 21 9 4 37 34 21 35 30 6 5 4 29 35 38 11 38 5 34 21 37 11 1 16 26 10 5 39 40 28 1 30 29 10 14 22 37 27 35 26 40 18 40 39 11 40 13 12 7 30 25 7 38 27 26 30 5 9 40 27 22 10 10 32 34 19 18 8 30 28 26 5 29 14 18 7 33 32 19 1 15 20 35 17 32 31 2 39 1 28 16 38 12 12 33 28 28 1 40 40 25 21 25 4 8 34 26 6 17 9 37 11 20 11 5 29 27 16 33 20 31 36 4 12 6 24 38 5 1 36 5 11 33 39 17 13 7 36 22 17 13 37 11 31 13 11 1 16 12 17 19 21 1 18 24 27 20 10 29 6 26 22 24 28 40 22 11 39 13 15 22 23 4 28 1 3 35 31 13 30 14 23 28 24 1 39 10 37 34 16 21 39 40 3 3 33 24 28 17 14 8 31 40 11 16 9 9 5 1 5 4 7 19 33 29 4 31 17 20 15 40 22 32 34 39 23 34 36 32 4 3 39 30 2 39 10 4 34 24 22 11 1 19 27 8 18 28 24 4 9 31 24 12 32 31 29 33 13 1 23 15 2 28 8 38 10 19 10 11 29 6 34 27 14 9 22 36 30 14 9 12 25 5 16 3 13 3 15 38 35 26 25 10 31 7 13 5 20 2 15 2 36 32 24 18 17 40 32 9 15 3 29 33 5 38 4 5 37 34 24 5 19 26 12 34 17 24 19 23 11 6 36 29 37 21 5 37 33 25 34 38 24 6 40 5 15 1 18 18 20 23 35 31 34 13 31 7 8 2 40 19 16 23 31 36 16 21 5 22 8 24 18 7 28 9 29 24 17 32 16 6 33 31 15 4 29 6 24 16 12 31 18 28 12 22 30 31 21 29 40 34 40 1 33 16 22 1 34 18 32 10 1 32 26 9 28 21 38 12 1 13 9 28 18 37 19 18 40 26 26 21 7 14 18 33 35 23 20 18 12 21 4 40 39 7 15 31 33 6 11 23 16 2 14 18 34 28 31 9 36 13 37 35 1 29 12 30 34 20 23 9 19 28 31 6 29 26 11 13 27 11 25 18 37 19 17 20 31 39 1 14 7 38 26 19 19 25 5 19 38 1 5 20 24 11 32 5 1 40 19 37 25 5 28 5 6 21 25 17 33 37 33 2 8 26 8 8 19 19 23 30 11 36 33 18 25 29 2 23 38 7 19 6 40 4 28 7 23 24 21 10 40 26 11 16 28 19 31 1 27 8 27 15 14 17 7 37 13 28 2 38 39 7 37 32 27 19 9 26 33 24 38 5 17 33 23 22 7 22 36 29 13 23 24 4 24 31 4 32 6 13 21 37 11 4 23 16 7 25 22 10 18 20 27 28 19 11 21 17 22 37 27 15 7 15 5 33 19 7 17 23 30 13 28 9 34 38 18 3 35 36 32 18 19 18 16 35 29 3 18 13 27 27 9 34 31 27 34 20 30 11 24 24 4 5 2 23 17 18 29 33 38 23 38 16 9 13 17 14 40 31 13 31 33 2 19 33 5 25 12 35 29 5 28 10 38 17 15 38 31 39 21 35 28 24 1 35 1 33 12 31 12 20 16 30 40 19 4 6 29 2 32 34 24 5 39 21 30 2 29 3 18 4 35 33 17 23 19 8 33 16 37 18 40 31 23 37 30 22 35 32 38 3 17 28 18 1 27 8 14 10 23 28 28 21 28 22 1 4 5 10 27 1 27 10 40 9 28 23 40 26 25 18 17 24 8 26 38 2 14 32 38 17 32 14 4 35 27 9 9 15 3 36 25 22 10 10 17 17 25 16 37 37 30 36 6 36 24 36 10 40 31 6 27 11 10 24 22 13 28 4 15 18 30 15 26 17 7 27 31 26 22 4 12 5 7 27 5 25 10 7 15 36 27 9 29 25 17 5 1 9 22 23 38 38 3 35 40 23 38 33 3 19 37 21 33 8 4 12 38 31 5 8 2 32 4 27 38 10 12 30 1 6 30 16 29 31 34 21 6 23 6 22 10 11 8 27 33 2 18 15 2 30 26 38 23 40 33 1 5 20 20 5 21 12 3 16 17 10 39 6 31 16 26 10 14 40 18 9 10 18 35 35 25 29 29 12 22 30 12 3 19 31 3 7 10 18 36 4 9 32 30 33 29 29 6 36 38 11 10 7 15 36 37 13 33 16 11 29 22 27 2 6 35 31 14 23 3 22 38 10 11 35 25 7 38 3 40 19 32 18 13 33 34 23 25 15 20 6 27 23 38 21 23 35 34 4 24 9 37 9 9 3 22 27 37 4 39 20 10 18 30 12 27 39 28 24 37 29 4 1 8 9 15 31 23 2 27 12 16 16 24 18 36 11 9 37 37 7 5 3 19 10 32 35 33 32 7 8 14 26 3 11 39 26 36 33 27 16 23 29 34 25 32 21 18 16 28 24 23 8 15 11 39 8 16 33 32 32 27 35 26 10 38 10 16 39 14 30 15 36 30 23 21 36 15 11 32 6 11 15 17 22 37 17 26 5 35 34 1 4 9 36 18 6 37 18 9 8 22 39 7 2 32 36 30 23 33 1 10 34 40 26 26 5 7 22 13 31 39 4 11 12 13 13 40 14 19 15 1 4 9 13 5 24 32 22 35 22 33 7 8 3 13 10 38 8 18 3 29 8 28 27 10 33 19 27 6 20 19 22 2 5 28 29 35 15 35 39 1 13 31 35 23 6 38 32 34 12 10 1 11 40 5 20 22 28 32 24 22 17 21 39 12 25 21 12 24 39 32 34 7 36 35 22 32 8 32 12 6 34 19 30 5 17 18 2 27 26 15 40 15 28 19 31 37 37 39 37 16 25 23 23 7 19 33 13 24 31 16 5 1 18 19 24 40 17 21 40 29 17 37 1 20 37 7 26 27 21 35 23 23 12 26 18 33 40 9 4 29 19 8 28 5 23 36 17 23 15 4 7 6 13 39 27 14 12 16 25 21 1 37 3 33 26 21 29 23 39 33 2 18 11 9 8 19 29 19 34 1 20 24 8 9 4 27 4 2 16 19 32 34 4 18 19 26 37 28 22 3 31 22 6 16 2 32 12 26 29 39 32 38 26 25 36 24 32 12 23 10 16 33 21 18 21 14 3 7 5 35 32 29 24 7 20 9 22 33 34 13 15 24 11 25 34 24 10 31 22 39 5 35 13 19 39 7 10 4 30 23 25 38 26 32 2 30 18 31 18 13 37 23 26 20 3 18 12 25 18 12 40 28 21 1 17 21 14 40 1 6 38 33 20 15 33 34 29 11 21 14 28 9 6 39 23 16 25 1 34 27 33 15 10 10 35 11 22 32 29 28 36 8 4 33 16 27 26 32 31 24 10 9 19 10 14 17 17 26 7 39 10 3 8 21 4 17 24 9 15 1 8 1 12 20 24 20 37 11 40 12 36 10 30 34 38 40 1 3 36 27 39 26 22 39 21 16 13 17 10 8 16 4 39 3 10 19 12 33 4 8 6 22 17 11 1 4 12 22 39 8 8 37 10 18 21 3 34 18 13 9 36 27 34 2 36 34 40 10 7 4 29 21 16 12 16 19 33 40 17 11 2 34 1 2 28 37 11 4 10 3 4 40 27 28 24 31 36 36 6 28 9 18 24 37 36 36 34 4 12 20 7 22 26 16 24 32 29 2 15 21 1 33 26 39 17 7 3 1 38 14 4 1 35 35 32 40 13 5 31 33 11 27 29 39 39 27 29 25 24 4 19 23 2 23 9 30 12 34 1 18 40 20 11 4 11 23 40 1 4 25 13 26 5 1 19 14 34 3 34 28 7 1 4 14 11 39 29 34 28 10 34 25 24 28 7 30 9 28 2 19 20 28 25 1 29 39 27 27 13 14 9 37 4 18 34 26 28 32 1 14 8 4 8 36 40 18 12 1 34 2 15 5 35 21 7 24 18 26 21 16 25 30 17 7 14 16 6 10 29 37 39 15 10 8 36 30 3 13 26 31 7 22 31 20 34 39 16 7 23 12 39 5 25 29 40 12 30 6 33 6 27 14 40 12 38 21 10 37 3 15 21 35 40 13 39 36 37 32 29 13 5 37 33 20 23 33 21 40 14 17 38 31 10 15 34 25 17 17 40 22 18 36 22 21 1 26 26 28 10 26 36 18 16 1 22 13 28 1 23 37 1 40 38 5 25 30 35 19 8 7 9 6 12 20 3 7 38 36 40 8 24 17 39 20 5 24 10 17 4 14 9 24 14 9 10 29 3 6 22 2 11 3 26 26 29 34 36 25 34 30 10 26 32 15 36 20 33 12 16 30 8 22 18 38 29 11 17 16 35 21 22 34 10 9 11 27 23 33 29 32 8 37 24 22 31 32 21 38 15 34 15 37 2 40 13 8 34 8 23 16 39 20 9 26 26 37 32 11 9 21 14 14 17 37 22 37 34 11 7 5 33 31 37 37 29 36 11 26 12 22 17 30 27 5 18 9 25 19 3 21 35 7 22 32 37 30 6 22 34 35 35 30 37 25 3 8 34 16 38 15 3 13 22 37 33 24 4 35 17 29 32 27 29 26 35 19 12 15 14 1 34 26 22 6 20 24 29 26 2 1 18 6 26 35 3 9 10 16 26 29 13 32 7 31 3 13 40 23 13 27 8 14 6 18 19 17 22 15 22 17 37 17 21 40 40 22 20 16 16 30 13 35 6 39 13 7 21 4 31 24 26 2 15 23 1 4 13 29 13 8 28 12 15 20 6 5 28 2 23 13 32 7 1 10 13 12 19 38 5 4 11 39 13 2 32 38 35 5 16 6 29 33 12 14 23 28 21 37 38 28 3 31 28 37 24 9 2 7 10 2 32 9 40 12 3 12 14 6 31 8 8 14 31 27 23 22 39 28 19 22 5 11 35 33 33 30 9 31 2 18 29 3 29 5 20 28 4 19 5 12 37 12 34 25 28 8 15 15 37 13 6 30 16 27 3 9 8 19 7 17 27 22 38 37 36 22 1 39 13 21 23 4 28 18 37 5 39 1 40 16 9 1 37 38 9 18 36 29 1 30 11 19 20 25 12 28 40 4 5 16 20 29 1 27 28 8 15 36 1 37 6 33 16 3 13 27 38 19 6 18 35 13 19 38 17 36 26 9 23 30 27 23 36 40 11 6 33 3 20 25 37 17 28 37 40 21 39 28 6 9 17 26 6 35 5 6 7 32 9 10 18 22 25 10 16 18 9 30 20 12 24 18 29 5 27 32 16 39 38 29 36 13 20 3 19 11 38 8 32 39 30 16 19 16 5 2 5 34 16 18 13 28 39 24 13 6 23 3 30 36 20 10 19 25 23 27 27 18 8 8 10 39 6 1 7 31 17 4 3 8 40 10 9 28 28 35 13 33 5 14 26 6 35 24 1 15 34 4 38 35 5 16 12 5 13 15 17 19 31 30 38 4 7 24 15 22 34 39 27 11 9 1 32 40 20 25 2 4 10 29 21 38 3 22 17 11 30 29 35 29 14 16 4 39 15 29 19 40 32 39 32 2 7 13 40 14 10 33 40 1 35 2 27 23 16 36 11 30 6 10 23 17 17 14 29 30 8 20 26 15 1 30 11 20 1 5 28 21 3 14 12 24 28 4 29 4 8 5 39 20 31 13 14 10 7 29 34 17 31 40 2 26 1 36 1 33 1 11 1 22 40 6 24 20 34 15 17 33 4 33 16 20 27 15 5 37 14 3 13 17 16 40 37 29 30 35 29 20 35 26 35 18 36 2 8 4 18 25 17 25 15 37 2 35 33 34 6 19 11 12 19 23 37 3 10 38 37 30 14 23 23 6 37 35 6 21 3 23 39 8 39 27 34 12 29 3 37 23 26 8 6 9 15 2 28 17 1 15 8 33 23 12 30 17 21 37 2 24 40 14 24 23 17 32 33 24 23 33 2 24 26 18 28 32 16 7 36 9 25 30 15 31 10 22 7 4 39 5 9 9 7 34 28 38 21 14 21 11 22 35 1 33 27 35 13 21 37 8 14 40 7 29 16 35 2 34 9 33 5 8 11 13 40 35 10 11 14 20 26 11 30 10 31 18 12 32 27 5 2 23 23 24 7 27 4 13 27 12 13 7 35 8 37 7 36 31 8 14 18 24 33 38 21 12 19 40 6 38 32 26 18 20 11 38 14 7 18 32 20 23 36 23 11 8 8 10 7 30 6 6 40 16 24 1 26 27 22 31 24 25 8 22 15 39 9 33 18 32 38 35 20 33 39 28 27 5 11 40 21 23 37 31 28 14 1 9 2 10 25 25 12 10 4 31 14 11 17 18 9 29 32 14 18 9 35 6 37 11 36 9 1 25 31 40 11 13 33 38 31 39 11 5 19 17 40 1 31 27 11 26 5 37 34 29 37 23 2 7 1 35 34 7 24 7 35 22 6 34 21 14 29 32 39 4 37 18 2 2 32 25 24 19 4 2 34 24 39 15 35 13 24 21 20 35 5 12 33 1 7 29 2 10 25 21 1 13 25 36 20 32 10 28 26 17 8 27 11 24 11 28 15 36 27 31 36 12 38 19 18 5 6 27 23 31 35 7 39 22 4 22 32 20 26 8 35 1 16 24 13 24 10 12 21 19 34 40 13 23 29 28 29 10 7 30 18 35 38 35 2 8 31 33 24 28 3 21 25 24 31 12 28 36 32 29 13 19 3 24 15 13 24 14 33 2 34 8 10 17 18 21 15 38 26 7 34 30 5 1 3 36 23 33 7 9 15 40 32 5 39 4 39 25 2 39 23 27 35 15 3 9 7 23 3 24 21 4 34 7 2 6 32 30 39 13 29 38 17 5 24 40 10 19 11 16 9 10 37 4 40 33 24 24 21 10 11 11 25 32 38 18 4 3 27 7 17 27 38 27 11 37 21 28 13 30 14 32 33 28 21 39 22 39 21 39 37 29 16 35 16 8 2 38 10 33 25 35 14 7 8 5 29 13 20 30 13 13 30 24 39 1 19 39 22 38 27 30 36 2 39 22 1 22 6 19 19 39 3 3 4 28 9 17 7 19 22 15 4 18 24 38 32 28 10 9 38 26 35 9 39 5 21 33 5 33 11 21 24 13 37 19 14 25 24 37 2 14 14 15 27 40 12 39 31 36 38 35 1 25 40 38 31 7 18 7 9 9 31 35 38 14 35 33 21 23 25 18 22 40 12 26 4 28 24 14 20 10 34 28 12 28 23 35 33 9 7 6 6 2 37 33 21 8 3 38 2 6 22 8 19 34 1 15 8 37 9 24 3 7 30 16 23 22 18 7 33 10 22 10 12 36 37 6 9 35 8 16 39 13 9 2 3 9 30 3 39 32 25 37 19 39 39 5 15 4 31 15 15 18 34 16 11 20 29 5 5 1 39 29 37 6 26 8 33 12 11 17 16 26 7 9 11 40 27 19 40 22 6 16 32 15 35 23 39 34 30 35 15 20 40 13 5 3 35 32 7 7 18 23 10 35 11 15 31 5 40 15 40 14 8 26 17 33 24 19 2 3 38 5 39 12 18 9 24 9 32 10 35 37 1 21 26 3 35 40 33 17 22 38 1 19 25 23 3 2 20 23 32 31 35 40 37 19 5 6 27 19 1 34 22 10 2 20 21 28 30 13 22 30 17 1 23 13 9 27 27 16 8 12 22 31 32 10 5 29 23 35 30 24 24 7 24 13 33 1 4 16 30 38 35 21 4 26 20 4 36 1 30 3 39 20 40 32 29 20 10 1 23 5 31 31 8 24 38 2 34 4 21 32 24 10 36 25 32 23 32 40 10 26 22 5 18 33 10 24 7 39 20 29 3 38 1 40 1 31 29 23 23 23 17 5 40 5 4 32 32 31 40 30 25 14 31 9 31 18 31 22 22 37 26 22 18 28 19 2 30 18 6 25 11 32 35 15 17 22 6 16 12 25 27 36 13 11 9 11 5 31 10 26 2 12 18 10 29 7 24 32 36 5 26 33 35 35 10 1 32 40 39 6 7 12 5 25 30 3 6 36 2 2 7 2 26 39 17 22 38 32 6 26 28 39 40 40 5 31 24 16 29 13 3 36 11 29 15 39 10 22 32 36 25 28 20 10 31 25 16 15 12 15 23 14 38 30 27 12 33 18 28 15 31 31 23 35 33 36 27 16 40 36 22 11 29 36 9 40 24 24 4 36 17 40 34 18 14 2 33 37 2 11 36 38 12 12 13 34 29 5 3 23 2 22 1 7 7 20 27 28 35 6 21 33 36 21 3 26 5 35 1 37 27 29 33 20 21 37 19 38 29 37 7 10 11 38 16 27 9 29 7 36 5 39 1 39 24 21 14 17 26 35 36 38 28 35 8 24 24 39 29 13 24 2 13 24 20 8 24 4 26 36 2 33 30 16 19 40 3 38 7 33 24 25 28 31 31 33 17 13 30 37 28 8 18 9 36 34 14 5 3 38 33 17 35 6 12 15 22 4 7 10 5 20 6 6 29 15 28 29 19 19 34 25 36 13 36 21 20 32 4 2 14 6 33 7 19 27 36 32 33 33 31 29 36 21 8 18 2 35 37 16 14 22 16 6 12 21 34 23 38 1 10 20 14 11 11 36 21 28 40 13 17 18 19 1 6 37 5 5 25 32 7 38 39 33 30 32 15 8 19 16 10 30 13 24 2 20 33 13 36 23 35 28 4 11 7 24 18 19 32 39 38 34 15 19 7 7 8 7 12 18 9 20 4 7 21 15 23 14 6 1 10 2 9 38 15 29 13 38 32 22 24 17 7 3 26 3 28 12 3 4 30 10 10 33 39 26 14 33 28 11 13 28 23 29 15 2 12 18 15 20 14 36 11 36 16 8 23 2 24 26 14 13 40 10 15 36 22 7 26 19 26 38 19 25 3 8 25 38 5 38 23 32 22 31 33 13 26 38 31 9 3 4 4 23 18 5 37 26 13 14 4 3 12 5 35 14 12 31 40 19 25 37 34 40 32 37 9 21 15 1 10 26 38 28 21 3 4 3 29 39 34 14 28 23 20 1 32 14 34 13 29 31 6 12 2 8 34 9 29 26 11 32 15 24 23 29 13 15 18 29 28 17 14 12 35 28 24 19 10 33 19 1 1 15 20 24 13 27 40 39 4 23 25 28 6 21 20 25 1 21 32 20 3 22 28 29 25 24 19 30 7 32 27 32 35 30 36 9 9 38 20 32 37 7 23 6 30 12 25 2 40 9 18 10 14 31 2 13 10 23 16 14 38 28 5 15 32 9 12 20 3 6 16 37 3 28 2 17 21 3 3 13 22 39 27 8 8 14 19 29 22 27 6 25 36 34 36 4 10 30 28 26 37 35 24 26 26 25 33 38 18 7 16 10 34 35 15 2 39 15 27 27 29 33 24 31 33 18 22 4 37 28 37 23 40 38 4 24 8 4 34 35 4 7 37 6 18 5 34 25 3 34 1 19 26 7 2 9 36 28 8 12 20 3 17 28 6 37 25 40 17 30 37 12 35 24 22 9 8 39 36 38 22 19 31 14 22 34 34 13 19 40 10 5 4 11 40 6 32 39 29 14 26 8 5 16 30 39 25 19 29 18 38 13 3 21 34 8 26 24 33 2 27 25 38 38 19 27 13 3 36 36 17 9 1 37 18 39 40 4 6 12 29 34 38 17 24 2 23 17 9 16 23 11 30 17 19 12 32 34 21 19 34 16 5 13 19 23 34 23 17 30 29 6 24 26 9 35 12 34 29 32 33 29 37 19 25 18 37 31 21 30 18 28 1 8 36 7 8 12 29 13 23 23 18 22 20 6 30 16 8 24 14 11 13 33 32 33 22 23 20 5 8 3 7 36 38 2 27 22 19 14 1 17 28 10 17 28 1 15 16 18 12 27 26 40 9 1 34 28 31 9 35 39 19 17 29 37 33 14 28 24 12 28 28 20 3 13 2 24 40 3 12 15 20 4 33 7 21 29 23 20 17 33 8 4 20 32 2 16 2 38 3 32 30 3 40 16 34 2 25 5 36 15 23 11 31 9 22 35 2 28 26 33 20 40 21 17 35 33 5 26 14 6 9 16 3 11 24 25 12 19 27 34 19 38 5 31 33 33 7 17 13 8 8 28 11 9 15 2 24 7 11 32 18 27 6 31 3 19 17 21 8 27 3 21 22 10 12 22 25 11 15 23 34 12 6 14 30 1 8 11 11 20 30 3 14 13 36 2 30 31 7 36 32 37 19 30 9 24 39 36 1 26 12 12 36 8 32 21 25 26 17 20 32 29 6 31 6 31 3 16 13 16 14 20 22 4 7 34 14 39 17 17 9 14 9 31 30 9 26 21 9 39 35 19 28 3 4 36 21 36 21 27 23 28 32 3 20 34 12 39 29 33 22 39 22 5 19 16 6 37 12 27 8 3 14 3 30 31 33 25 13 11 7 33 30 14 10 36 9 26 29 16 16 7 22 12 4 1 29 24 7 8 29 9 20 20 40 34 30 39 34 33 17 29 9 34 10 17 27 29 38 23 35 21 10 18 29 21 14 30 2 9 6 18 33 32 12 17 34 40 8 26 39 19 2 16 40 11 36 21 18 30 40 8 13 23 2 15 11 28 1 25 35 16 4 7 18 4 23 16 15 21 25 24 31 27 29 37 28 36 11 4 24 36 29 32 5 3 22 14 4 7 20 37 38 19 16 2 33 23 18 29 21 15 25 17 5 1 39 16 37 1 29 39 26 35 35 20 24 19 12 2 25 32 32 10 25 37 22 26 12 12 8 32 24 34 37 40 30 17 15 1 30 24 22 4 20 28 8 13 3 29 8 4 19 5 15 7 28 6 37 30 30 13 8 7 5 2 4 32 19 39 4 35 20 39 5 11 16 28 33 13 38 3 14 3 33 25 32 25 11 1 8 38 24 30 21 5 24 31 22 13 28 25 35 2 3 23 12 31 28 19 31 32 9 40 28 22 19 21 15 6 2 31 10 11 9 35 12 11 22 3 26 30 32 32 17 38 31 28 5 8 34 31 5 23 14 37 11 21 28 23 34 3 40 13 5 18 40 6 19 12 35 24 2 2 29 3 18 39 8 37 36 27 23 38 27 12 21 38 36 37 30 40 6 8 11 29 13 2 23 4 15 35 5 6 1 18 35 18 20 30 9 20 13 40 1 25 18 15 10 9 25 32 39 38 32 33 25 33 27 11 27 4 13 6 8 32 28 39 22 16 22 24 29 25 12 28 37 10 19 12 5 28 20 29 35 5 32 28 25 14 2 9 18 26 39 12 14 19 8 7 7 12 3 24 38 22 29 3 26 19 5 7 7 9 18 28 22 40 14 7 23 13 39 23 20 15 12 2 37 11 30 29 7 38 11 12 3 11 11 38 4 17 20 33 7 34 3 19 5 24 40 27 28 8 33 16 19 7 2 30 37 3 38 38 33 11 19 8 13 37 9 3 23 17 37 8 17 31 4 33 40 32 29 33 39 20 31 19 25 22 5 26 32 1 12 36 8 33 14 15 38 20 6 30 15 10 12 6 4 13 18 25 31 11 3 37 37 20 30 35 6 30 40 5 11 30 14 1 32 33 31 39 33 10 8 35 34 6 6 23 17 38 14 29 2 21 13 29 13 19 37 3 16 13 6 7 16 12 17 18 4 40 26 3 12 28 16 17 19 27 10 16 39 10 38 20 8 8 28 7 40 19 10 40 25 20 25 23 8 19 36 11 13 15 12 40 2 23 6 13 32 38 16 13 38 25 36 31 29 30 9 26 26 14 22 30 30 39 20 35 31 31 2 27 32 28 36 9 29 19 33 19 20 13 18 2 10 23 34 23 31 13 34 7 10 15 2 33 24 33 32 6 7 28 27 40 31 8 38 19 40 30 3 4 37 19 14 16 40 23 40 22 16 40 8 18 15 28 10 20 21 25 20 31 3 29 4 21 19 32 29 13 18 37 21 19 29 30 8 19 29 9 25 16 35 19 34 1 1 22 20 13 7 9 26 40 11 13 5 25 32 35 26 7 33 38 23 18 36 2 10 35 3 2 25 11 12 33 5 27 4 5 20 9 16 24 20 36 33 1 1 3 17 7 11 17 28 6 35 13 22 8 35 18 13 27 38 7 29 12 16 2 36 40 22 28 16 11 16 13 10 31 23 19 5 10 3 29 31 9 24 14 19 11 8 38 9 3 25 8 39 34 12 3 22 12 13 34 4 28 39 4 28 11 3 2 35 31 23 40 15 26 22 2 21 29 8 3 13 35 15 21 37 30 2 36 6 18 14 1 35 13 10 27 38 27 4 21 9 8 20 1 34 21 16 3 39 38 21 14 16 27 29 40 19 15 25 17 35 29 21 33 15 20 21 32 25 4 25 34 9 1 11 27 13 6 23 17 15 30 18 9 24 13 33 40 39 31 17 12 36 15 13 28 14 23 37 26 38 21 27 6 14 6 1 6 18 40 39 28 14 8 1 28 6 19 36 12 31 16 40 34 29 9 28 9 32 27 23 6 7 4 25 13 35 4 5 26 30 28 11 15 34 39 26 16 26 4 35 27 10 26 2 9 21 9 23 14 18 30 22 8 22 33 25 11 33 33 31 32 6 4 40 14 1 1 34 40 14 20 20 9 29 40 16 28 25 36 36 21 3 4 8 29 28 18 6 16 5 1 22 38 27 15 22 24 3 33 33 1 39 37 20 29 21 28 4 31 39 2 10 28 35 19 19 21 21 5 30 40 25 4 23 10 33 28 36 32 25 37 29 30 24 7 9 33 36 2 38 40 14 9 10 37 18 31 12 18 30 3 7 1 20 39 34 32 15 22 11 5 11 6 8 7 21 33 16 9 10 39 37 31 25 37 32 35 36 28 30 14 3 38 13 38 38 6 15 37 19 31 23 6 27 4 9 2 6 36 35 22 24 10 12 25 32 14 24 8 21 17 20 38 8 1 5 36 36 40 8 2 32 13 13 8 32 9 5 17 38 7 35 34 32 3 7 13 6 30 24 5 4 5 29 40 31 37 21 2 30 40 22 3 32 35 39 13 28 17 16 29 12 14 22 13 23 34 4 1 39 29 15 15 35 28 34 32 26 39 7 28 28 26 17 20 35 18 17 24 34 23 3 30 28 27 19 36 17 8 39 30 30 13 19 10 8 25 34 13 32 17 10 20 20 21 39 35 1 37 33 9 2 34 3 23 8 11 1 23 37 6 8 7 26 10 12 34 9 14 35 9 28 40 32 19 19 22 22 4 17 17 23 33 33 13 22 36 39 8 37 37 5 39 11 33 22 38 19 37 39 31 9 22 27 33 11 11 26 15 11 14 19 18 4 25 2 20 22 19 19 18 38 34 38 9 4 18 10 5 19 17 28 10 33 14 38 31 37 35 8 34 38 10 17 8 7 2 30 36 4 10 25 26 31 7 10 28 36 18 3 34 28 17 8 7 39 37 1 1 19 11 2 36 38 38 13 21 36 8 11 15 34 29 21 35 22 23 34 19 28 2 16 36 12 16 36 28 5 8 16 26 10 27 17 33 31 1 39 3 13 16 38 1 16 22 14 4 19 27 7 23 32 13 13 19 36 22 38 2 39 9 14 35 20 38 20 22 20 22 18 27 34 4 5 13 36 10 13 25 27 5 26 10 6 15 38 21 26 31 17 3 37 38 2 40 1 3 9 32 4 35 31 39 21 16 36 25 29 15 22 11 29 33 37 21 17 26 8 40 2 4 15 7 34 13 16 38 8 40 27 4 7 17 38 22 39 34 21 40 37 27 16 22 17 12 27 37 32 22 22 38 38 18 18 2 9 38 39 1 16 5 2 5 13 16 33 39 10 40 17 29 4 7 5 13 22 40 31 38 25 19 36 37 38 22 27 38 9 33 21 31 13 28 13 14 33 28 10 4 22 8 23 17 23 12 15 21 2 5 20 28 21 14 20 22 18 12 2 14 22 15 21 25 24 30 26 40 31 17 19 21 17 20 20 2 17 31 34 14 32 21 8 38 31 19 12 27 20 26 13 37 31 2 5 35 36 8 16 16 11 19 23 11 30 7 1 25 31 10 9 28 11 32 37 17 15 14 32 40 21 37 37 35 30 39 24 25 36 40 35 22 39 15 20 10 18 22 37 14 27 38 15 11 38 24 27 9 21 21 34 32 38 10 28 5 8 11 37 17 30 19 23 3 18 1 25 19 5 16 35 12 33 36 19 3 30 10 33 24 7 37 21 6 30 24 16 3 10 9 2 19 8 6 17 11 29 5 39 2 21 7 38 22 25 15 6 32 36 15 7 40 39 12 31 6 18 34 40 30 30 8 23 6 6 3 38 29 27 20 20 12 9 19 31 22 20 36 17 28 31 24 8 29 10 8 39 11 23 25 39 38 18 40 18 22 3 31 11 19 35 23 10 25 27 9 15 34 29 24 35 37 1 27 17 15 32 1 26 40 21 1 25 7 13 20 21 24 14 7 1 15 12 1 39 31 40 3 39 13 20 17 28 4 31 8 40 33 24 5 38 6 29 23 27 2 7 18 27 36 13 16 8 24 20 19 37 28 38 31 28 23 28 19 23 39 25 8 20 32 5 2 3 3 29 6 8 11 5 26 15 5 34 18 40 8 33 15 32 23 11 5 32 37 19 4 30 23 23 38 34 7 6 30 13 33 20 24 1 1 10 2 38 8 29 35 29 1 33 34 40 17 26 34 25 18 21 26 7 34 24 13 18 29 8 27 5 1 32 36 23 7 9 23 3 2 22 8 7 7 39 3 16 7 35 27 11 18 31 1 35 29 31 4 7 27 35 19 18 2 30 6 36 26 27 5 3 10 32 3 37 11 29 25 3 37 27 36 17 40 26 40 3 31 23 37 7 35 7 35 19 8 16 37 15 32 25 2 34 20 38 31 12 12 27 27 1 21 2 7 24 40 23 10 22 39 36 39 2 14 37 30 14 11 36 21 12 17 37 5 27 38 1 3 23 12 11 34 12 4 8 23 16 31 8 15 12 6 2 10 32 23 24 26 38 29 26 1 26 24 12 5 35 38 23 29 5 16 32 24 7 8 11 19 35 36 28 39 22 12 25 28 4 11 10 16 18 30 33 22 13 9 16 33 5 12 33 7 31 4 20 15 1 33 15 31 5 17 39 1 34 33 28 1 26 27 17 40 32 31 30 6 39 30 10 23 20 4 20 36 19 12 20 37 34 24 22 19 16 40 3 5 13 12 19 11 40 25 19 21 37 13 31 14 19 23 23 29 4 24 1 14 40 30 31 27 40 5 40 3 18 2 25 40 7 28 18 39 22 27 31 14 13 9 6 35 26 33 31 25 17 26 16 9 21 20 32 19 26 24 40 39 31 12 39 5 7 10 20 22 17 4 38 13 33 6 29 39 27 38 24 20 5 34 28 26 34 2 6 1 36 11 39 33 15 36 39 31 31 26 39 9 19 38 9 21 39 1 15 16 33 37 40 25 18 16 26 25 13 24 38 29 22 29 10 39 27 17 34 39 16 21 19 2 28 32 5 18 6 19 15 7 11 7 38 12 8 20 20 27 30 33 22 13 25 9 33 24 26 13 32 20 24 21 37 21 35 14 8 16 24 14 7 14 29 39 17 20 26 40 24 29 27 28 33 14 31 34 8 34 15 8 13 32 25 14 17 16 24 27 23 21 37 32 24 18 39 7 37 25 34 17 38 32 10 28 26 29 13 21 30 2 10 35 24 20 24 15 16 29 3 19 37 5 16 16 2 1 23 25 37 26 35 7 17 29 27 21 17 32 31 2 7 18 14 22 19 6 36 38 37 24 15 18 38 10 13 18 33 39 27 20 7 18 25 11 21 33 11 13 23 7 9 20 40 20 18 9 16 35 7 20 23 24 39 35 1 34 34 36 9 6 40 31 30 19 40 7 22 17 32 39 5 19 9 31 19 2 33 21 37 1 27 5 32 3 21 29 28 19 21 33 39 40 9 2 21 7 38 37 7 18 32 3 30 4 24 31 29 15 22 31 27 17 25 23 36 21 14 38 34 31 21 37 27 37 29 17 37 33 28 25 36 21 28 4 23 30 14 17 36 9 4 37 40 21 4 10 14 20 29 1 10 9 28 23 21 38 17 11 14 37 1 9 17 9 1 13 25 29 35 32 6 3 35 21 31 33 4 6 22 40 9 23 4 24 18 1 30 40 32 10 9 34 10 13 33 38 4 9 13 36 26 24 36 37 19 36 22 12 34 17 9 15 27 26 11 24 39 30 33 28 6 34 28 18 9 24 11 8 27 3 28 10 1 3 6 1 3 2 17 29 25 10 6 36 22 14 40 40 5 21 12 12 6 4 37 25 13 11 30 7 24 4 36 12 40 30 18 35 23 14 34 13 31 18 28 11 3 18 23 25 8 8 4 13 29 23 1 24 19 9 6 23 10 19 27 10 19 1 36 17 33 37 13 23 25 7 21 8 37 18 29 1 24 16 13 17 7 31 14 22 3 24 38 40 4 19 2 3 36 11 2 7 40 4 2 22 13 33 3 14 36 13 11 9 18 29 13 15 14 21 35 5 22 18 26 35 10 7 33 33 27 18 3 16 31 31 26 15 20 40 20 27 32 13 2 40 14 22 17 24 24 28 23 13 1 38 20 14 33 30 21 33 12 24 1 35 34 26 8 16 22 15 40 16 15 6 20 24 21 27 26 31 32 28 32 28 37 5 12 34 8 24 1 39 28 36 30 24 16 10 20 1 29 24 9 23 9 29 10 16 23 8 23 34 12 9 21 40 10 36 9 40 37 31 25 6 34 38 32 27 34 39 29 18 10 30 23 17 28 21 33 15 29 38 18 33 6 9 28 33 35 28 35 34 38 33 25 1 19 20 19 24 32 18 5 32 31 16 38 6 32 17 12 15 27 25 18 7 32 29 29 5 3 2 5 15 9 29 29 1 13 29 25 27 11 38 5 15 39 7 11 32 14 6 6 27 37 2 24 7 40 13 40 23 12 9 21 22 16 6 39 25 27 12 20 35 38 18 34 4 12 21 13 40 1 37 10 39 12 23 12 8 4 10 4 28 2 16 13 4 39 23 26 24 34 40 17 6 37 11 40 15 24 32 14 34 4 14 23 17 27 18 1 29 28 29 3 2 40 2 16 26 38 35 22 34 12 19 5 6 10 21 9 27 30 14 16 32 21 20 20 22 13 1 35 22 22 29 38 30 29 27 9 4 24 25 31 2 31 22 37 36 8 13 34 20 19 4 13 29 19 38 8 34 28 10 16 26 12 21 29 13 16 31 4 10 31 1 30 17 35 40 40 25 19 26 31 33 33 4 39 23 35 4 31 24 33 4 2 34 35 28 37 8 20 16 3 21 36 38 26 7 26 8 17 36 27 1 14 30 21 16 1 24 16 11 34 10 17 31 39 11 38 30 21 18 12 12 4 32 19 21 37 11 14 28 27 18 9 21 3 18 33 15 39 10 28 31 10 6 31 32 2 31 17 38 8 37 28 25 27 1 10 12 27 17 36 2 17 36 12 36 18 22 20 29 34 18 40 40 12 10 1 32 22 15 36 4 21 36 35 14 22 20 37 8 4 16 39 37 6 6 33 16 8 32 32 29 31 14 31 9 7 15 17 12 22 11 30 29 19 28 21 31 7 1 10 26 40 19 39 11 14 38 27 1 15 19 28 21 27 15 40 25 18 17 3 6 18 30 32 21 40 9 31 32 4 11 4 12 29 25 30 26 28 37 28 9 1 13 17 2 18 23 2 12 27 22 25 22 7 33 26 9 38 19 15 3 1 19 12 40 9 38 13 15 14 4 12 20 32 26 16 3 36 5 14 28 38 3 12 2 6 15 32 25 30 19 6 18 13 16 22 14 40 33 37 29 36 36 22 23 20 20 33 28 20 14 6 23 35 12 4 32 30 18 21 30 7 3 39 1 19 40 33 20 3 39 27 37 34 12 13 26 40 11 32 37 37 16 17 4 15 2 27 37 29 9 19 26 34 38 38 40 16 1 8 22 32 17 24 36 11 30 18 9 17 26 10 39 20 38 23 37 6 4 10 23 1 11 16 17 23 3 21 22 40 40 22 33 32 36 35 19 40 20 20 40 40 22 3 20 4 15 9 38 37 7 28 27 18 7 32 3 2 16 2 33 39 16 30 5 37 4 9 36 34 34 2 21 15 34 17 15 23 2 18 10 6 32 17 22 5 39 16 7 12 5 40 29 5 4 1 8 4 10 9 33 14 40 36 33 9 36 15 18 36 30 15 16 5 39 40 12 7 29 18 39 31 2 4 25 4 18 18 25 23 4 21 38 7 5 30 18 19 33 19 30 2 35 13 32 23 3 36 9 3 11 25 1 30 10 10 27 8 22 34 36 20 23 26 2 16 12 20 40 9 40 23 29 7 18 35 33 34 22 34 39 2 6 29 31 34 16 11 24 28 24 36 35 30 25 40 25 20 15 32 34 33 37 8 8 16 30 3 20 4 38 17 10 8 24 36 5 4 26 40 14 14 31 2 15 12 37 2 24 22 3 33 14 11 34 20 36 37 26 3 35 33 21 35 30 5 29 33 34 13 35 32 32 31 9 14 29 13 30 1 39 21 28 33 15 20 20 5 18 6 20 12 33 4 31 13 6 17 38 7 25 27 27 31 34 14 33 12 11 17 25 22 8 29 2 18 10 27 36 18 26 24 10 24 27 38 19 20 34 28 33 20 39 40 6 34 20 15 16 38 40 32 10 4 23 2 36 35 12 24 22 27 36 29 5 12 33 2 1 17 38 39 39 26 14 35 39 16 11 20 29 21 3 19 7 12 12 38 3 40 9 37 3 10 33 29 32 6 24 11 33 18 40 2 29 7 11 37 34 25 25 18 35 35 9 21 35 12 14 33 33 4 38 9 5 6 21 33 5 5 29 22 28 19 7 37 35 23 32 35 1 4 27 18 10 5 13 27 6 11 22 16 8 23 6 37 24 28 8 17 13 25 28 20 24 31 40 8 13 23 11 24 19 5 38 21 37 37 37 30 36 24 32 2 19 30 25 12 22 17 6 11 11 17 33 7 37 34 22 24 37 20 17 7 31 23 12 39 9 15 21 38 24 10 13 31 26 37 37 37 27 13 4 19 12 6 39 26 27 10 34 14 34 7 21 14 37 3 21 29 14 5 40 20 15 40 15 29 9 4 35 34 11 26 21 15 13 28 27 7 24 39 13 16 9 37 19 11 6 30 38 13 1 24 11 36 17 15 37 21 17 15 19 28 30 20 5 20 28 20 39 39 34 2 10 28 12 21 35 11 31 5 21 11 12 35 22 35 14 16 10 18 3 29 23 5 40 37 7 20 33 26 33 34 17 25 12 21 2 34 16 36 15 40 4 30 19 15 6 4 16 39 1 4 21 35 13 2 8 6 12 26 20 35 13 39 18 19 36 15 16 6 1 26 28 26 40 25 9 17 26 17 12 5 3 4 33 39 1 38 20 8 5 34 12 22 17 36 31 36 22 32 10 3 11 31 14 15 35 39 29 34 29 7 18 32 11 33 22 38 33 12 10 38 32 4 20 5 1 14 26 9 26 20 3 5 14 40 6 38 31 26 18 30 25 1 17 33 5 28 33 38 27 24 36 18 35 39 15 21 15 18 2 2 28 9 32 36 5 38 28 16 12 9 10 22 6 40 32 2 6 1 11 31 16 11 10 2 16 9 3 4 38 26 24 26 34 21 1 17 17 17 7 19 32 8 2 12 40 40 2 2 25 32 18 18 9 22 16 25 22 38 38 33 39 40 33 1 36 14 34 10 14 3 24 40 20 10 34 13 22 29 37 37 12 30 31 26 9 37 25 2 16 15 27 13 11 33 24 28 20 39 8 26 30 20 22 18 9 14 4 11 4 12 6 12 26 39 31 36 21 8 40 20 22 39 40 35 30 33 6 29 22 12 11 14 36 1 40 37 6 16 3 39 10 12 16 24 15 12 29 38 35 2 6 4 17 36 1 23 12 23 32 40 24 30 1 15 27 21 32 3 19 24 22 7 9 11 39 3 8 7 13 29 23 28 37 34 9 30 30 4 16 24 4 16 9 12 13 13 2 32 20 15 39 3 39 4 38 2 12 26 28 38 31 24 19 30 27 1 14 28 12 36 36 19 39 4 23 35 35 38 3 35 17 35 28 4 17 22 5 23 37 16 15 28 8 22 21 10 20 16 13 31 13 38 7 40 2 26 12 26 35 7 27 6 24 20 17 7 26 9 32 1 30 19 26 18 5 17 2 16 22 23 31 24 16 28 2 27 11 12 6 34 16 7 24 5 23 39 23 15 14 38 38 6 31 13 38 28 5 13 10 15 32 25 31 9 9 17 20 21 20 39 7 29 18 16 2 22 31 36 12 2 2 37 17 21 7 35 7 19 39 35 34 15 22 38 32 32 34 1 38 37 7 12 17 11 20 23 22 22 7 23 30 1 15 8 2 23 17 39 9 38 31 14 40 25 32 22 8 15 29 34 19 15 22 28 35 7 28 10 4 2 28 39 20 16 3 14 36 2 38 36 38 39 13 3 2 25 3 39 21 10 5 5 4 7 26 22 31 4 21 33 31 18 20 33 2 8 9 38 23 28 37 40 31 35 10 38 9 23 22 3 16 20 14 26 29 17 5 22 5 36 27 37 9 27 29 26 16 11 21 5 34 32 8 5 30 37 21 16 37 40 24 35 39 16 22 19 20 29 35 37 14 17 28 4 32 12 2 35 15 22 25 37 18 37 7 17 14 5 26 32 15 7 34 6 34 32 38 17 37 1 7 39 14 13 40 18 25 28 33 9 15 13 12 16 24 15 35 1 37 15 31 38 18 14 40 6 16 15 35 19 39 31 1 18 2 21 3 1 37 3 35 28 4 28 29 15 26 17 7 23 25 9 33 3 27 22 25 7 23 3 27 10 7 32 16 29 27 13 16 29 38 17 14 20 24 28 11 36 6 39 24 28 28 1 4 18 5 15 4 23 28 19 12 29 18 14 7 37 7 20 4 16 3 14 8 22 11 19 37 15 34 35 1 32 1 39 40 3 4 10 19 24 31 6 21 24 40 40 2 35 6 25 1 30 28 12 20 22 35 27 39 31 14 20 31 8 19 11 40 23 3 2 2 9 30 3 9 40 23 16 19 18 14 35 13 30 39 31 20 14 17 38 4 29 28 21 26 35 14 7 35 35 11 2 25 23 37 19 24 23 22 17 23 21 15 35 7 17 31 33 4 29 35 20 34 9 12 20 16 8 29 6 16 26 40 27 16 30 28 34 10 7 39 33 13 14 37 38 25 27 38 35 17 29 24 37 12 24 30 33 35 7 28 32 2 8 35 1 11 10 19 27 4 18 18 22 23 40 35 6 20 19 9 16 9 2 24 23 37 14 25 3 7 21 14 26 19 20 23 28 16 29 37 27 26 30 21 11 24 33 28 34 3 17 17 6 40 3 24 35 33 38 37 19 39 15 10 37 28 24 17 27 2 35 12 9 24 5 28 24 21 6 10 34 1 4 3 8 29 39 15 39 14 12 24 7 37 37 14 26 24 22 3 18 13 11 27 36 34 2 39 36 29 4 37 2 28 39 4 14 9 4 13 14 12 17 15 21 31 37 29 7 26 7 11 23 34 25 20 26 26 16 17 1 30 23 27 5 4 31 5 20 35 22 9 6 19 37 32 14 19 5 29 17 4 38 17 35 7 39 28 8 18 14 21 18 31 19 7 3 17 35 1 2 21 13 4 37 2 16 11 29 27 30 4 6 22 3 16 33 40 27 7 40 7 37 31 10 21 39 29 37 23 4 29 40 4 38 12 30 4 18 7 5 13 12 35 26 31 5 33 20 23 20 40 3 14 26 27 16 37 11 3 22 12 33 15 20 40 22 29 4 14 9 30 25 34 40 28 22 3 1 24 23 9 16 5 34 28 38 13 26 23 13 40 10 19 18 3 32 18 27 15 12 39 2 39 22 11 36 12 8 34 32 32 38 34 25 30 24 21 38 1 2 1 32 40 39 11 35 36 26 6 24 3 6 14 38 19 14 19 34 27 35 27 14 9 19 31 25 30 30 1 29 37 39 38 32 31 22 5 15 21 15 20 36 19 23 6 16 38 11 10 36 32 21 19 37 38 9 26 37 28 1 1 3 20 19 5 24 34 36 16 34 7 9 17 28 4 18 1 19 14 14 35 10 20 5 29 39 35 33 15 11 25 25 12 7 14 11 26 38 22 32 16 14 22 7 5 38 5 35 31 21 5 21 36 32 29 30 12 9 30 13 4 34 21 21 25 19 32 40 24 24 24 29 23 32 21 28 6 32 17 22 6 30 18 26 36 30 20 36 22 19 26 37 38 28 29 10 11 12 9 1 2 6 34 10 12 29 29 21 23 35 4 38 17 31 7 17 12 39 34 21 35 26 13 8 32 22 31 24 37 35 31 37 18 3 26 19 26 33 25 19 20 38 23 40 8 36 27 9 8 29 29 4 23 27 1 30 7 9 10 20 12 24 11 17 34 10 23 34 20 9 40 23 12 23 26 23 19 20 19 27 23 4 40 14 36 14 6 10 4 11 5 38 23 26 36 27 20 35 13 13 2 34 6 24 37 2 3 34 27 33 12 18 13 40 1 32 10 36 8 38 39 19 30 37 34 8 5 6 40 37 31 10 38 1 22 28 27 39 24 12 27 27 33 38 20 22 14 36 15 26 29 20 6 21 24 3 27 31 20 18 21 7 20 33 6 32 32 22 40 3 5 17 21 38 30 18 16 4 19 11 1 15 26 40 33 17 26 8 10 30 34 5 25 7 32 31 4 6 22 21 40 39 34 16 10 10 28 32 12 12 16 1 5 13 28 8 22 10 32 8 6 38 27 38 37 4 2 3 37 10 12 20 8 13 30 3 34 9 33 37 25 40 25 36 30 14 11 10 39 36 18 40 37 4 17 32 28 40 34 21 8 2 24 27 37 38 1 8 33 16 15 8 33 2 24 8 21 37 24 29 33 32 23 19 36 32 23 6 34 3 17 32 9 25 2 20 1 24 39 3 19 4 9 7 18 13 18 25 20 26 32 22 34 24 21 19 18 27 9 6 35 11 1 20 40 39 36 31 19 21 1 30 31 9 22 14 36 7 2 8 37 8 3 9 13 33 13 25 38 39 37 40 35 34 16 27 31 40 22 23 31 17 40 11 40 10 3 30 38 18 10 14 24 25 34 8 16 25 14 30 17 18 13 2 37 39 38 38 28 40 8 33 23 39 4 8 37 7 7 8 33 29 34 9 33 7 8 27 36 2 2 15 39 5 7 4 29 31 25 14 6 14 10 2 10 8 17 27 39 38 28 34 18 32 17 32 36 32 37 28 27 38 4 12 35 14 19 13 18 9 23 16 3 30 27 40 30 2 24 20 10 10 13 18 3 28 10 40 6 23 31 40 20 9 6 29 19 17 8 30 32 23 2 3 2 1 35 33 15 21 7 12 30 16 13 20 39 39 26 8 25 14 35 36 36 26 7 12 18 27 24 4 26 13 36 32 38 19 17 15 34 19 23 40 1 16 38 13 28 5 27 1 2 12 29 23 14 40 4 36 1 19 12 28 7 12 26 16 28 16 36 8 7 19 4 23 1 26 7 17 24 5 40 20 5 16 30 38 40 28 9 3 17 38 27 15 38 16 38 34 8 36 16 26 39 32 1 29 2 26 11 10 34 30 23 15 15 9 15 24 25 37 2 18 7 39 11 27 28 19 40 26 11 27 1 30 7 30 27 36 28 28 30 40 27 20 17 15 28 33 21 3 17 25 31 33 3 28 6 24 10 39 23 34 15 11 30 27 34 29 3 36 1 1 24 14 37 17 8 21 7 16 13 1 35 5 13 11 20 36 15 6 24 37 9 1 36 25 16 27 40 15 27 19 23 29 36 3 9 21 39 5 25 5 23 25 35 12 19 1 19 13 10 37 16 26 17 12 26 30 21 21 28 22 2 37 32 29 7 26 25 16 16 28 24 15 21 33 38 38 24 8 5 15 11 3 2 21 35 33 33 16 10 26 4 26 18 1 9 6 22 19 6 37 35 8 15 14 6 40 3 20 40 16 9 13 29 18 9 27 24 20 6 6 1 22 14 26 40 40 39 39 14 11 37 38 10 20 29 14 21 22 25 30 39 24 21 25 16 27 14 31 4 34 3 37 9 7 30 11 11 17 30 2 19 34 39 29 10 32 2 17 34 22 13 5 26 3 24 18 15 33 25 2 9 39 34 40 15 2 14 11 15 25 19 24 5 31 29 9 17 37 26 39 10 25 18 18 24 34 1 17 20 39 24 34 13 1 10 35 22 10 22 18 18 18 24 28 38 25 12 8 6 33 9 2 35 15 20 3 2 24 4 35 39 16 4 26 35 6 3 22 35 14 22 33 31 28 34 22 15 10 37 39 7 28 25 20 30 2 30 37 35 12 21 34 5 16 40 9 28 29 4 1 4 28 9 36 18 23 36 31 28 8 21 20 20 7 32 40 27 25 6 11 31 2 15 27 15 8 10 31 4 24 16 21 1 39 34 3 5 18 36 11 19 17 37 21 19 14 2 31 14 25 34 24 34 12 28 31 25 30 38 28 31 31 39 5 36 3 29 19 5 40 24 12 2 6 25 32 33 33 20 3 12 15 28 18 26 33 12 4 10 9 14 6 37 22 24 18 1 32 17 15 22 14 30 19 37 32 33 29 34 18 26 8 14 12 1 9 31 24 15 40 9 13 19 14 39 6 10 8 23 11 3 29 19 11 25 22 21 20 33 8 26 24 24 11 23 34 8 28 29 7 29 25 21 14 37 12 29 21 17 29 15 26 40 12 38 9 3 3 32 26 16 25 29 24 11 2 1 34 28 22 37 32 26 29 27 26 37 6 18 24 14 22 13 3 12 33 37 40 27 30 40 19 9 30 3 7 22 37 23 34 33 19 28 9 32 1 2 25 10 31 14 28 36 19 28 35 6 37 38 33 6 9 33 23 22 4 26 29 11 31 37 2 23 19 34 32 5 35 1 16 1 21 13 13 35 15 31 24 24 29 22 31 2 2 28 25 20 33 33 24 24 39 9 36 20 31 34 30 34 18 14 35 40 22 29 36 28 29 20 20 15 5 27 30 29 22 18 40 9 27 11 23 31 36 29 33 24 24 11 16 10 5 32 38 13 32 29 34 22 19 18 37 18 38 21 4 19 8 6 21 22 30 10 15 3 4 2 8 24 26 21 17 23 11 24 28 31 19 32 10 19 1 10 29 40 3 22 28 29 40 17 5 22 29 24 27 15 15 1 39 36 32 23 34 17 30 21 19 36 34 14 8 12 33 4 10 38 12 35 11 26 10 25 16 34 15 39 15 9 12 8 27 9 1 22 14 27 6 40 33 8 36 40 11 20 15 22 25 32 9 36 28 22 15 27 10 2 21 28 18 10 36 22 4 33 20 27 31 2 11 36 34 22 26 9 31 10 19 9 12 26 39 33 20 37 21 17 1 8 39 12 19 12 10 27 33 13 5 37 1 11 19 26 32 10 8 36 6 36 38 12 19 24 40 28 36 11 10 5 4 38 16 1 37 9 29 1 22 31 14 28 28 40 38 3 23 39 10 40 25 4 27 32 1 29 26 21 33 14 20 16 32 29 16 39 8 13 34 37 20 14 19 37 27 38 5 26 17 15 13 29 6 2 3 31 40 10 17 26 3 39 3 4 32 4 30 17 6 34 22 18 5 40 31 11 4 39 16 2 15 39 37 7 20 24 11 11 21 31 19 40 4 28 16 34 17 16 37 23 8 9 10 37 15 36 3 9 21 17 12 38 24 2 7 22 35 26 29 2 30 17 12 7 2 17 8 6 13 38 38 22 28 18 10 9 10 4 21 4 40 2 16 19 3 23 14 40 38 32 38 28 33 21 2 3 20 20 12 13 30 36 19 36 14 28 31 5 13 34 16 15 33 1 15 3 1 10 21 22 29 30 10 29 2 28 12 9 30 36 11 32 11 38 34 14 28 21 24 4 34 6 16 22 2 17 3 37 27 5 8 40 1 37 10 23 9 34 19 33 31 23 31 21 5 16 16 33 40 17 3 5 19 10 11 3 18 20 23 4 27 33 40 20 3 37 28 21 15 8 12 9 21 2 29 23 8 8 18 26 8 19 13 9 39 23 20 29 16 16 1 38 6 10 40 27 2 30 28 20 4 14 38 12 32 12 24 1 4 29 11 21 18 11 10 13 8 23 7 35 20 31 38 33 19 29 27 31 23 1 29 26 40 40 6 28 34 19 35 27 39 3 27 19 17 5 28 28 22 21 23 40 34 14 31 21 18 34 10 40 1 33 23 40 25 8 40 33 9 7 17 31 27 17 10 36 22 12 37 3 6 22 15 33 24 31 39 13 21 22 23 25 19 39 40 24 21 8 9 15 30 27 27 40 11 40 5 30 32 40 20 39 16 15 32 12 37 21 3 3 21 32 38 23 8 18 23 34 26 36 6 27 21 33 38 21 13 15 18 27 16 6 21 11 3 35 21 22 20 13 13 23 14 14 20 3 19 34 17 40 19 39 23 38 23 28 29 29 31 32 12 11 17 10 25 28 7 20 25 38 22 7 13 30 29 19 21 40 21 12 34 19 20 17 7 33 5 5 35 22 11 25 40 31 28 28 14 4 26 11 30 33 20 40 23 36 27 27 16 38 17 14 2 10 21 25 39 9 27 22 24 34 32 6 27 35 30 21 37 33 4 23 27 38 23 7 20 27 37 18 31 23 7 8 22 16 37 7 1 37 32 32 2 15 3 36 28 32 36 29 39 29 18 25 3 1 18 6 38 5 15 10 38 26 19 10 36 38 27 27 13 23 13 40 24 36 28 26 38 25 36 14 35 3 6 4 1 21 1 3 28 38 14 1 18 33 40 24 19 20 14 18 26 37 40 18 5 31 10 32 6 6 27 40 16 2 13 8 14 20 2 26 22 8 3 22 5 39 20 38 30 32 3 25 14 26 28 6 32 33 11 39 33 36 15 1 5 36 8 10 37 31 22 12 2 30 17 37 1 5 7 3 40 35 14 17 2 28 1 39 12 40 31 10 39 8 18 8 27 5 15 32 9 2 37 38 8 21 25 17 40 20 40 33 38 1 17 35 25 14 40 35 35 16 6 1 13 19 36 36 39 8 30 27 7 23 40 35 6 37 1 34 8 37 40 31 19 19 28 33 32 31 23 9 25 36 8 2 33 15 9 34 13 14 36 22 22 30 24 16 27 22 21 38 21 36 30 24 16 38 31 3 12 19 32 14 36 22 36 40 26 1 18 14 15 15 18 29 31 38 30 30 7 10 36 10 25 35 14 8 13 29 9 27 15 2 31 25 28 27 32 1 6 11 40 32 35 38 28 29 10 16 34 25 34 27 1 32 31 7 20 32 21 1 16 28 30 37 17 10 38 25 12 20 8 36 25 16 1 31 26 31 39 39 27 17 12 32 29 18 15 34 13 25 2 24 31 34 24 37 17 26 5 8 21 9 34 17 17 19 1 18 3 33 20 2 39 7 10 4 36 24 33 34 2 10 2 15 18 10 10 24 20 26 6 36 21 40 18 32 5 12 10 39 34 38 36 23 19 22 2 21 25 17 36 5 40 15 19 29 8 9 1 40 6 1 10 16 14 30 36 13 25 6 31 14 19 26 2 18 17 11 26 13 39 25 1 40 29 16 24 38 8 14 17 10 40 31 16 4 19 18 33 36 16 20 27 13 35 34 34 11 17 8 14 31 23 26 39 5 11 21 22 39 25 22 2 28 6 18 4 32 28 2 29 26 3 1 30 40 18 36 17 25 7 30 15 22 6 36 9 15 5 23 1 6 25 31 26 37 34 16 6 3 5 14 28 39 2 1 15 16 29 23 17 25 39 22 31 28 33 26 38 29 24 17 15 10 22 35 2 29 40 13 38 24 4 16 30 11 29 1 22 19 15 8 10 18 3 26 19 33 12 21 31 17 2 1 30 1 12 37 35 6 21 5 4 20 26 16 17 26 35 8 40 17 35 8 9 33 11 15 30 28 7 24 23 6 8 29 33 20 33 20 1 8 5 15 12 18 36 18 16 23 3 34 20 10 26 16 25 33 24 19 40 2 40 15 40 38 34 29 37 18 28 5 20 35 37 14 27 4 19 13 39 1 19 31 21 13 2 15 30 34 20 6 37 21 2 19 10 9 39 14 21 2 24 6 7 4 31 19 16 36 27 36 17 26 34 21 40 35 26 10 2 27 4 20 32 8 27 1 27 34 3 39 25 3 17 35 1 15 9 35 18 3 18 21 2 12 32 31 17 19 6 30 16 12 20 3 28 4 39 12 9 19 20 27 40 8 38 34 18 27 23 37 11 33 11 23 23 24 9 33 28 12 6 14 29 7 34 17 31 19 33 37 19 33 34 15 12 23 3 3 23 22 33 39 11 6 28 19 34 36 38 40 8 13 1 33 17 26 35 22 19 5 10 27 18 20 25 35 40 5 33 23 40 30 31 28 6 11 5 29 25 38 19 36 5 38 21 35 11 8 32 19 37 29 10 38 28 26 35 34 30 11 23 18 6 3 4 22 20 11 17 25 11 39 29 18 11 11 1 11 22 27 21 32 4 4 27 38 21 29 31 5 10 36 39 30 12 4 4 21 34 27 14 14 23 37 34 8 20 6 3 22 13 29 16 3 26 21 8 33 36 22 20 19 36 38 27 23 10 21 3 19 31 18 32 17 4 4 12 16 19 26 31 20 31 10 6 31 35 10 15 4 12 11 19 34 11 21 37 28 40 11 13 4 22 22 15 14 21 8 23 36 25 33 3 3 34 1 40 6 19 10 10 37 27 11 7 21 38 37 16 25 40 20 4 19 26 22 11 36 23 38 7 17 2 5 24 5 25 37 40 9 12 21 12 19 17 23 7 28 14 19 22 15 8 8 16 3 30 11 24 28 11 6 7 14 19 9 17 26 39 24 6 7 11 2 26 20 30 36 36 22 26 12 20 11 11 3 5 25 5 26 16 40 2 4 38 31 24 23 15 4 4 40 35 38 34 8 27 1 15 1 11 7 8 3 27 25 25 33 38 2 31 10 18 13 4 23 12 27 17 28 40 26 32 37 37 9 38 34 10 34 39 9 10 16 9 8 33 33 17 31 27 23 25 35 2 32 31 16 23 4 15 6 8 8 32 13 29 2 37 24 21 7 38 13 24 1 19 12 22 37 36 22 23 32 29 24 22 28 15 33 29 28 25 18 4 2 4 21 37 30 37 12 22 33 9 30 16 32 10 8 9 18 19 26 4 27 4 32 40 39 13 32 26 37 29 10 29 20 9 32 20 23 24 10 27 12 36 5 3 28 28 23 3 37 20 2 1 10 20 26 17 6 17 4 20 39 7 6 38 38 38 27 35 8 7 7 3 22 35 22 31 23 31 19 23 23 14 24 11 40 22 19 30 17 14 18 9 22 39 29 12 26 35 29 31 35 14 23 5 29 9 6 15 12 4 28 27 34 36 17 14 31 10 23 40 12 26 21 3 31 29 36 40 7 37 18 25 29 14 16 17 35 28 28 34 5 38 25 3 31 9 28 34 32 28 1 40 5 28 24 15 9 13 28 22 7 33 23 16 15 37 37 24 5 13 37 22 18 9 12 38 18 20 33 13 39 26 21 8 7 15 20 33 12 18 14 14 32 17 25 17 23 15 10 29 25 9 21 13 17 39 25 7 10 19 6 35 6 19 10 18 3 26 32 19 5 24 6 17 28 14 26 23 36 2 24 2 36 4 8 14 3 14 16 38 30 35 23 5 10 39 28 3 6 8 10 13 23 40 1 6 18 33 36 30 12 15 8 23 35 4 7 22 22 37 10 13 26 12 30 34 7 20 28 20 14 15 39 2 27 21 5 6 32 38 26 10 14 3 7 26 12 10 37 39 18 31 1 2 8 10 10 11 6 30 9 39 34 4 1 19 6 26 31 28 14 13 12 22 33 10 27 27 33 17 14 34 34 5 23 27 13 3 9 20 20 12 29 27 8 34 21 12 8 14 12 18 12 14 29 14 10 16 23 7 24 8 37 12 9 34 3 36 29 19 8 10 21 2 7 39 1 29 10 37 29 40 1 27 29 1 13 13 32 24 14 5 11 35 33 23 21 5 9 36 37 26 29 2 35 3 31 31 32 11 28 27 20 32 5 6 23 11 12 22 20 29 2 11 36 19 40 33 28 19 4 32 10 30 6 1 21 35 28 15 3 9 31 29 2 27 36 27 5 27 19 4 40 34 12 38 17 13 32 3 6 10 10 7 29 35 32 5 31 40 26 15 27 8 35 13 3 19 28 37 4 13 38 5 37 3 25 36 39 40 37 3 13 11 26 12 9 21 31 27 23 19 31 22 26 13 40 1 38 4 30 16 34 25 11 4 25 22 34 34 11 27 38 23 11 29 28 33 2 21 6 8 21 34 25 2 36 33 26 40 31 22 21 14 16 21 9 24 22 30 22 2 19 28 3 38 40 40 31 22 34 4 40 16 34 29 26 31 22 10 37 29 16 22 16 26 33 20 17 19 17 25 2 32 32 36 14 39 9 32 39 12 33 34 24 31 33 31 18 39 8 2 40 24 25 32 31 21 27 12 20 30 37 25 26 9 25 20 12 37 1 33 1 31 33 16 13 7 6 28 14 17 21 18 17 19 37 35 36 8 1 21 10 5 24 23 23 7 23 27 2 25 17 38 14 39 27 35 2 33 8 38 2 38 16 32 29 4 6 37 17 34 19 29 27 23 14 3 31 9 19 28 14 20 22 33 15 19 16 15 14 35 1 28 33 29 12 32 28 24 2 9 12 17 38 10 29 28 11 9 27 29 11 20 27 18 13 28 10 21 4 26 17 5 9 23 18 19 29 23 3 17 7 13 29 6 3 4 40 24 4 3 5 1 36 14 5 36 26 16 4 21 36 39 29 40 25 26 38 15 32 9 19 28 16 12 3 20 1 31 29 35 28 40 11 28 16 7 30 13 12 2 15 27 25 39 19 32 17 1 8 38 38 5 22 4 13 25 22 25 8 20 18 5 6 21 23 3 26 27 27 14 39 28 21 13 22 38 18 17 1 17 5 35 40 9 13 4 17 9 23 8 26 26 35 4 26 33 3 31 36 11 6 7 36 19 34 30 3 8 3 33 37 18 19 32 1 10 35 12 12 19 33 31 30 38 30 33 23 12 13 16 16 22 6 34 23 2 2 2 38 25 33 24 10 40 32 38 28 23 31 11 17 33 37 4 20 18 34 9 29 17 3 31 5 29 30 16 3 35 38 20 3 6 33 14 26 8 37 17 20 19 24 35 27 22 26 9 25 20 15 13 13 28 40 10 30 5 31 9 18 2 7 15 38 38 31 18 24 17 1 17 19 24 8 12 12 15 34 2 5 3 28 26 4 7 30 23 40 5 35 7 14 5 39 35 18 29 26 34 11 35 39 7 27 38 32 4 20 26 9 10 30 27 19 11 1 22 10 35 6 8 25 24 29 24 4 13 2 10 7 26 29 30 23 15 32 28 19 30 38 38 26 29 23 31 7 22 17 23 9 19 28 6 16 21 33 24 19 1 1 27 24 12 16 33 2 9 26 8 5 10 36 3 18 17 2 15 20 6 23 24 31 38 36 16 17 30 30 38 3 3 19 26 11 24 34 29 1 36 22 16 16 36 14 20 13 16 34 25 39 20 40 27 16 7 30 28 13 30 1 4 8 39 38 22 21 39 16 20 8 26 22 18 3 7 20 2 8 20 16 4 4 28 6 30 22 1 25 7 17 36 10 34 16 35 21 8 32 36 37 22 35 14 11 1 20 33 25 2 16 29 13 37 14 14 17 38 5 12 2 7 9 5 2 7 36 3 21 1 27 25 25 30 26 17 32 9 34 36 30 35 1 12 6 25 7 25 5 13 21 39 12 9 4 12 4 15 32 16 18 25 4 34 31 7 38 17 38 31 11 10 27 4 20 7 37 20 39 13 17 4 29 12 10 6 3 4 26 29 13 6 34 31 36 26 30 1 4 16 16 37 8 36 38 13 34 25 33 36 34 2 39 17 38 26 8 12 6 34 18 3 27 34 14 6 4 6 16 29 33 1 2 26 38 11 27 20 27 17 17 6 35 37 11 25 7 21 9 15 18 11 16 34 17 32 8 31 33 35 40 6 12 12 34 19 12 1 29 25 36 3 24 4 38 30 20 3 35 36 10 32 38 9 31 3 39 37 5 6 38 6 13 19 22 12 36 38 18 26 38 14 3 11 13 17 30 34 3 17 25 18 38 7 7 30 22 27 19 37 1 16 15 22 36 25 9 4 3 12 25 16 31 13 9 9 13 18 28 21 13 33 39 21 3 5 37 40 40 9 29 34 5 20 19 17 1 33 39 17 20 35 36 16 24 13 5 7 25 22 25 14 32 26 11 37 24 31 7 22 38 28 26 9 38 6 2 15 31 6 10 33 7 18 24 16 18 17 1 12 34 28 6 32 7 30 15 11 14 22 28 28 8 35 18 28 12 7 3 36 13 22 18 25 2 2 3 8 7 6 5 29 24 33 31 32 10 20 13 35 12 22 2 36 16 21 14 18 39 8 25 29 4 35 14 2 12 1 8 13 24 1 1 33 29 9 28 22 37 10 7 2 14 23 21 26 33 26 36 21 38 22 21 19 23 17 4 21 4 26 22 30 31 27 1 13 30 19 29 5 36 2 19 7 29 39 34 37 9 12 21 33 4 38 23 4 1 25 21 12 38 24 9 9 11 37 5 35 19 19 5 7 2 22 30 8 31 9 24 30 21 22 4 40 33 4 17 24 14 3 23 35 4 25 30 26 29 28 8 30 10 26 6 35 18 36 2 31 27 5 5 7 2 30 20 35 24 34 19 32 17 30 37 32 9 6 30 18 4 5 20 22 24 14 14 1 4 38 24 10 10 21 26 14 24 38 6 27 5 34 9 20 17 10 30 22 11 39 26 10 36 13 20 9 11 3 6 40 22 27 19 7 7 40 39 36 18 13 10 14 4 1 18 12 13 15 16 26 21 40 18 32 27 40 36 21 22 35 34 38 32 8 20 10 14 13 2 6 32 23 29 33 12 36 35 23 37 28 24 34 33 24 32 37 18 21 15 25 40 19 34 17 4 3 5 31 32 37 9 11 11 18 36 23 34 9 10 11 28 3 31 27 35 30 28 7 12 3 6 18 8 36 21 4 21 37 10 27 12 16 24 7 11 17 12 38 11 20 18 16 9 27 15 27 13 27 13 17 24 38 19 28 35 30 16 23 12 9 9 40 38 2 23 1 23 8 17 37 39 26 29 25 24 7 13 29 31 15 25 27 24 1 30 30 7 31 23 20 35 26 27 6 17 36 10 28 5 1 25 11 32 27 34 36 34 27 18 33 5 22 1 34 13 40 19 3 32 38 28 6 3 39 4 28 6 14 27 22 8 23 23 29 37 34 22 36 12 35 37 21 33 27 1 3 28 5 6 39 32 22 24 21 10 10 13 14 6 39 7 26 33 19 7 17 7 25 32 2 26 10 11 5 18 6 26 30 12 3 28 16 25 26 34 29 22 39 12 11 12 3 40 36 3 36 15 11 27 26 31 20 16 25 20 17 8 16 20 37 25 25 39 40 17 29 14 40 17 3 17 29 10 1 31 5 39 8 39 1 23 34 11 39 39 24 19 24 17 13 19 29 14 25 20 18 33 32 20 18 36 26 16 24 18 8 26 12 1 13 5 15 32 21 18 14 35 4 6 21 36 34 1 1 34 12 5 3 15 16 32 30 20 23 25 22 19 27 4 7 18 29 6 24 6 20 3 12 22 29 20 5 32 18 37 38 17 22 5 23 37 18 11 14 34 29 16 1 27 27 20 4 4 30 38 9 10 38 28 22 37 18 18 36 33 23 17 8 10 11 3 21 32 14 30 5 6 7 29 10 12 38 38 4 39 27 8 19 5 20 35 4 32 39 25 8 25 5 16 10 11 10 20 6 8 6 17 4 17 21 19 20 16 29 29 13 9 24 38 24 40 2 34 16 8 34 18 5 10 19 13 28 28 28 39 9 12 24 18 29 37 13 13 36 38 34 3 37 18 25 5 3 32 38 13 9 25 36 12 13 31 30 22 38 3 17 2 8 26 9 18 26 18 4 21 35 12 20 22 35 6 27 25 2 18 18 25 15 15 12 28 4 3 2 3 27 26 21 10 11 10 2 29 12 18 14 10 6 32 29 6 33 4 16 25 2 26 14 35 6 9 17 24 19 6 5 24 19 13 7 3 6 13 24 8 14 39 23 1 33 21 5 25 20 33 32 29 14 11 17 4 7 14 15 13 20 8 1 21 5 25 37 1 1 6 34 31 21 22 40 28 1 19 25 7 26 16 7 12 25 7 11 12 18 15 16 13 38 34 24 29 22 19 16 5 12 32 32 40 39 5 2 9 14 24 31 5 32 39 28 28 12 27 16 3 35 37 31 15 36 12 23 1 32 28 14 12 29 35 34 34 14 4 22 17 4 25 12 25 17 5 15 30 8 24 32 3 31 29 19 16 14 11 36 9 11 19 26 9 35 35 37 35 10 13 31 4 37 8 19 12 22 32 7 23 17 25 2 34 38 20 21 38 12 3 39 30 28 26 3 9 33 12 18 21 29 7 10 34 12 23 33 31 19 29 23 19 24 24 36 35 37 35 33 8 19 35 32 5 34 16 24 28 36 16 19 1 10 1 24 29 33 10 36 1 3 20 33 28 17 22 27 39 14 33 27 9 6 12 9 13 40 35 4 36 30 16 17 38 38 36 15 2 22 11 12 22 34 28 5 35 32 18 34 9 17 2 10 38 40 16 18 12 18 22 40 33 14 35 32 34 40 24 40 1 4 38 40 7 13 37 8 11 6 13 30 3 11 7 20 4 23 26 12 12 7 18 40 4 15 25 15 24 18 9 35 5 9 39 22 8 24 30 22 1 5 40 17 20 10 28 32 34 24 5 22 32 16 24 8 37 36 4 38 25 25 29 30 34 31 36 19 25 26 39 14 22 19 9 37 6 40 40 8 20 28 13 12 13 7 15 10 24 23 22 31 27 38 20 3 4 20 6 26 37 25 12 7 11 12 3 25 38 1 8 8 34 26 18 34 37 28 20 24 33 20 27 32 6 21 34 23 17 31 15 1 8 36 39 18 11 10 17 24 2 29 27 5 12 40 31 7 4 24 31 16 8 9 18 9 12 7 9 6 19 25 37 24 35 20 27 30 31 1 21 12 27 39 22 16 38 9 6 25 10 38 6 36 32 10 39 2 19 40 14 25 5 33 7 28 9 38 38 25 6 40 6 22 1 24 22 25 2 10 4 9 21 13 7 27 12 23 2 7 13 29 15 33 9 36 39 4 17 7 35 24 8 34 26 14 13 35 25 40 24 30 10 25 3 11 18 22 33 32 27 32 34 11 3 16 1 7 10 18 28 34 26 13 13 11 26 36 29 5 2 1 7 14 35 34 28 34 13 33 14 10 27 34 36 14 22 4 28 12 25 36 8 29 32 26 1 24 36 4 2 4 22 38 36 2 37 18 11 11 27 10 10 15 25 3 35 21 14 13 6 28 5 4 12 27 37 2 16 27 19 11 9 39 17 5 3 18 32 22 7 36 29 24 20 25 33 5 35 20 8 11 15 34 2 15 2 31 13 22 30 39 5 14 16 29 1 24 37 27 18 35 18 5 14 22 10 36 30 4 18 29 7 10 23 36 20 36 20 8 3 15 24 35 4 6 27 32 29 34 7 15 40 5 38 30 24 12 15 6 27 5 24 35 17 13 13 21 1 12 1 11 15 7 12 14 7 19 26 4 35 35 33 29 2 7 11 21 2 24 16 35 13 24 27 30 19 25 8 39 16 16 21 35 9 24 18 37 11 1 27 11 22 4 14 18 6 38 32 1 31 29 37 35 23 3 6 30 17 4 4 24 13 31 37 17 31 15 36 35 25 36 2 17 14 35 4 23 21 11 7 18 28 37 34 31 24 34 9 19 37 11 33 10 40 4 19 11 2 31 20 25 25 25 33 28 31 11 38 33 31 1 6 5 31 14 29 4 39 24 8 13 26 14 19 25 21 23 21 16 27 7 21 8 10 38 13 6 8 5 2 24 16 29 10 18 21 4 1 40 34 11 38 14 40 31 18 23 31 8 23 18 33 19 1 40 27 14 20 13 31 29 34 21 26 5 40 32 17 31 9 11 17 7 9 17 2 26 15 3 37 25 11 20 24 6 39 16 19 10 15 28 2 14 19 12 39 14 12 31 7 28 37 18 35 27 1 20 29 24 32 9 12 20 19 31 34 19 17 9 7 29 34 21 22 30 21 29 4 17 21 34 15 14 33 31 10 4 2 26 38 14 3 37 4 16 32 14 30 30 5 5 31 6 18 40 36 9 17 11 20 1 32 16 1 9 8 35 13 10 1 27 38 27 20 4 39 31 20 36 1 26 5 39 14 20 33 28 25 36 19 38 36 25 23 24 27 26 36 22 9 8 25 30 24 15 20 19 28 24 30 2 31 37 25 9 35 32 38 25 35 20 13 16 13 24 30 9 10 10 10 23 4 9 6 26 11 18 35 9 27 10 24 10 19 22 21 14 37 7 23 18 40 29 40 31 35 34 10 8 18 16 36 22 9 21 25 13 40 40 24 15 34 30 18 35 1 38 15 37 12 38 18 20 6 36 5 8 11 17 24 8 14 3 13 26 37 29 2 40 7 14 11 19 37 37 9 32 17 6 20 15 26 9 9 26 36 32 36 11 5 32 24 20 28 7 38 11 37 5 9 9 35 1 11 23 32 4 24 20 10 36 31 21 14 25 15 18 17 5 4 17 4 13 26 1 22 8 36 27 16 22 28 26 9 13 38 22 29 6 40 33 4 30 26 24 31 9 12 12 19 28 33 18 11 26 22 34 1 13 27 9 18 19 17 5 19 18 35 15 37 38 35 38 6 25 18 20 33 29 40 24 24 27 4 35 40 27 28 2 30 10 14 5 39 19 32 32 4 16 21 32 38 1 25 8 17 10 9 37 33 20 9 34 28 35 14 34 6 5 40 11 24 34 13 1 22 24 37 23 21 33 34 28 17 1 28 23 25 21 29 23 19 34 40 30 13 8 10 23 24 9 19 8 11 1 28 38 13 40 40 20 13 9 40 29 26 31 19 18 17 34 7 4 39 31 4 20 37 36 12 19 28 25 29 3 2 32 31 36 11 30 37 2 9 36 7 8 13 8 17 15 39 28 39 23 21 26 40 18 30 26 15 25 32 27 4 2 21 8 12 20 31 18 24 34 4 22 6 11 25 2 4 14 34 34 4 38 32 24 32 4 39 32 36 2 5 26 25 23 25 40 9 16 11 2 24 1 23 22 26 24 22 7 25 38 8 31 21 29 21 2 32 6 22 11 31 40 28 31 5 12 32 6 37 21 16 39 38 8 10 24 40 10 21 19 24 21 5 35 40 8 36 31 32 39 12 31 37 37 14 22 6 3 16 2 39 4 5 18 19 10 8 36 20 24 38 11 6 18 18 29 27 29 29 21 39 27 12 27 32 28 4 38 29 22 15 29 26 29 26 7 33 1 39 22 4 13 32 23 25 17 19 21 10 12 14 13 14 40 8 39 1 33 38 36 23 34 14 26 11 4 35 26 40 14 38 15 4 6 23 28 12 37 26 36 26 19 26 30 20 40 14 14 32 29 3 17 33 24 40 27 31 39 11 32 28 38 33 13 5 7 35 5 33 27 17 18 26 22 19 39 15 14 19 20 3 37 7 37 21 8 15 29 4 30 8 33 29 16 36 15 35 35 30 18 23 21 36 12 33 14 2 32 2 31 38 38 9 15 1 22 5 13 27 14 7 9 12 35 35 23 19 36 4 8 14 37 12 1 27 28 9 25 18 39 13 26 39 21 22 5 3 18 32 21 1 36 7 36 6 33 6 12 36 35 23 7 21 26 35 11 32 36 12 11 16 21 22 25 35 7 4 26 13 27 34 6 39 5 24 28 12 15 12 18 23 26 33 36 38 11 31 3 5 25 24 38 35 14 34 27 29 25 8 14 4 33 14 29 15 16 21 22 37 34 33 5 36 29 11 20 7 17 1 35 5 15 39 4 9 6 36 22 7 34 9 18 15 32 9 39 21 6 38 2 14 12 9 30 14 15 40 17 12 34 23 24 5 28 1 6 12 19 14 14 29 31 3 32 17 30 36 6 16 38 24 25 28 11 39 27 33 20 17 12 1 11 12 31 23 2 18 21 22 11 6 33 31 39 25 1 37 32 11 25 32 18 4 4 5 33 21 30 13 21 40 34 7 5 19 38 19 15 30 23 29 8 19 12 1 14 11 1 36 33 26 22 32 11 17 32 9 23 38 28 21 4 14 28 20 6 10 28 25 1 3 31 28 30 11 13 23 2 2 26 6 7 25 31 2 26 5 17 3 17 17 1 32 7 19 23 33 6 12 18 39 16 17 40 11 9 34 5 36 23 33 27 5 3 13 12 15 10 21 1 37 11 15 37 35 21 14 4 14 36 19 14 11 5 13 13 15 6 33 12 1 15 2 14 38 20 7 24 27 26 29 11 6 19 10 8 6 39 18 36 15 15 9 26 12 29 17 24 37 18 32 20 11 22 30 19 26 11 11 6 20 29 35 24 7 35 13 40 13 22 35 19 9 1 33 20 4 8 29 32 7 16 38 23 31 33 10 6 20 9 31 8 33 16 26 1 10 15 28 27 40 4 36 8 39 27 32 32 8 14 5 25 39 26 18 31 40 12 4 6 19 37 11 25 11 19 39 32 30 23 37 22 20 7 12 7 38 8 35 36 26 4 27 15 9 38 31 22 11 14 9 21 13 4 22 2 19 2 1 36 11 17 35 14 37 23 33 33 34 1 37 23 15 20 18 28 30 23 35 8 17 35 12 31 40 4 34 2 28 13 31 28 35 39 27 1 12 5 20 7 21 29 4 19 25 35 21 3 5 35 32 2 27 33 24 39 34 29 4 4 26 33 35 9 33 26 6 34 30 33 19 12 5 2 23 17 9 21 17 37 25 1 25 29 38 39 39 8 18 37 6 7 18 29 3 20 16 11 35 39 39 35 6 15 19 5 7 12 5 38 37 27 37 14 17 40 25 38 19 37 18 14 7 27 10 8 2 5 17 35 16 37 23 1 26 2 22 29 20 11 29 38 2 14 39 32 13 17 8 34 2 19 3 4 18 8 28 2 20 26 23 18 20 19 23 28 36 24 26 10 7 18 30 24 13 13 1 33 9 14 29 6 31 38 11 20 22 11 30 34 19 14 16 3 23 30 9 16 36 40 29 21 13 27 16 34 37 20 20 21 29 14 20 39 10 19 3 7 24 39 13 17 16 6 16 1 34 21 36 28 20 12 28 18 5 14 17 27 34 12 40 14 5 10 39 24 2 12 40 24 8 22 16 11 21 14 4 17 30 30 24 34 1 2 24 11 2 29 6 13 35 32 17 2 27 17 36 22 11 2 40 15 29 30 33 11 31 22 40 6 16 11 24 1 28 29 31 1 16 3 38 34 27 24 15 40 40 36 5 9 7 29 23 13 12 27 25 9 33 25 28 31 38 29 24 6 30 21 13 13 21 1 28 40 4 40 38 10 39 12 10 40 13 18 2 24 32 36 40 4 4 23 3 30 3 23 14 33 39 24 30 2 4 26 36 32 11 1 31 32 30 11 17 21 21 17 17 17 7 27 14 26 22 12 21 33 37 3 21 24 3 22 32 26 39 33 38 1 35 40 33 6 2 13 32 30 10 40 12 22 24 13 17 32 39 29 6 3 39 22 17 18 31 6 15 16 10 13 6 31 35 38 26 22 23 27 32 18 5 31 10 31 4 20 40 3 7 40 34 31 30 32 32 7 30 10 21 35 12 19 35 14 11 10 13 3 20 15 36 23 9 2 27 17 29 15 40 39 7 5 14 29 15 30 2 34 3 26 11 27 11 40 33 12 40 13 24 35 26 13 23 36 37 7 5 10 6 33 5 38 13 8 30 6 5 19 21 39 10 30 35 14 24 20 8 21 21 9 18 1 34 39 5 31 6 1 10 25 19 28 35 37 2 2 33 24 28 21 29 29 14 30 26 13 3 21 21 9 14 24 40 24 21 28 3 21 8 37 27 29 38 38 8 11 10 8 13 25 30 14 19 30 6 29 2 16 14 31 24 15 2 32 27 32 1 4 34 28 13 23 35 20 28 15 11 20 28 5 9 15 39 29 17 15 4 34 4 5 27 28 16 40 23 2 8 12 8 8 24 35 28 33 15 29 16 3 34 19 33 13 8 24 28 26 40 21 15 11 14 2 22 22 36 3 4 33 16 38 17 39 28 39 12 32 14 35 33 22 4 33 7 31 13 16 1 28 6 38 32 27 12 20 37 24 14 8 10 21 6 29 21 4 19 27 12 25 20 17 14 5 35 16 18 36 23 19 20 6 32 17 35 25 18 26 20 15 11 15 1 14 39 3 22 12 14 40 12 17 32 37 15 37 35 11 13 35 17 33 12 8 4 7 9 5 19 5 17 27 10 6 35 7 33 19 39 1 20 22 40 1 8 27 29 15 3 35 8 27 40 13 25 26 18 23 2 6 4 24 18 38 36 33 30 27 9 40 5 29 12 6 25 12 33 30 29 13 9 17 23 39 2 28 21 12 39 15 11 30 11 8 15 34 12 2 5 9 28 2 21 37 36 36 20 15 4 17 23 35 33 1 24 36 27 4 33 9 30 21 5 13 3 1 33 3 27 23 38 1 39 3 33 11 29 3 16 9 36 12 12 2 8 25 7 18 4 31 7 35 28 16 36 17 36 24 8 24 36 16 24 14 18 25 36 25 16 33 26 25 38 36 5 2 13 22 37 14 2 30 1 31 1 31 17 22 39 10 14 40 20 8 33 40 8 39 35 9 38 32 4 8 28 18 27 15 30 8 18 8 15 4 25 32 9 38 39 27 1 26 24 2 12 12 32 13 35 38 3 4 2 32 13 16 23 24 29 23 22 4 7 7 2 37 14 17 39 2 20 38 31 10 35 32 3 12 11 31 38 37 14 6 7 14 27 11 26 30 1 37 22 8 1 27 3 8 19 40 22 13 15 14 27 2 34 24 18 25 34 33 33 13 26 21 18 9 36 27 40 3 20 30 34 7 25 7 1 21 9 40 36 11 26 26 24 10 12 20 17 21 9 14 14 29 30 35 20 30 12 24 6 37 11 6 29 27 12 29 36 20 26 11 37 29 28 7 32 10 14 30 29 21 5 40 14 24 31 35 10 17 25 27 14 1 15 4 10 15 6 20 38 14 21 8 33 14 19 31 14 12 20 39 11 8 26 12 12 13 25 28 40 27 5 27 9 11 22 37 21 11 21 38 34 18 40 17 4 4 36 18 30 30 12 37 24 31 11 7 36 26 25 27 25 1 36 6 18 40 3 2 27 15 13 19 26 26 3 19 23 9 21 7 17 11 8 26 19 27 15 28 38 3 14 33 36 29 40 14 28 28 30 19 20 1 4 13 40 17 16 2 33 15 24 17 18 24 13 24 34 21 27 38 18 37 4 35 37 29 3 9 29 12 21 39 15 25 34 38 20 14 28 13 11 37 18 18 20 39 21 3 21 36 28 29 23 35 14 34 25 27 37 13 7 10 35 5 4 19 16 18 33 33 6 28 16 24 18 38 10 39 21 22 9 16 9 7 1 10 30 22 32 32 17 23 33 38 38 3 18 39 14 38 32 28 26 33 38 19 29 6 18 21 31 29 16 12 19 15 4 10 7 32 38 16 32 7 1 34 7 34 32 13 28 17 25 22 28 32 31 35 17 40 37 6 23 14 27 22 20 34 37 31 37 26 11 2 17 32 13 13 24 34 27 18 21 25 17 9 26 33 36 8 37 36 21 23 18 28 30 3 24 2 16 26 4 17 21 9 9 34 13 14 23 11 31 29 6 29 28 37 22 29 5 20 18 8 8 30 10 38 13 2 3 16 3 7 29 34 29 3 2 1 30 8 12 28 16 31 35 6 30 32 14 9 23 17 33 6 31 30 25 1 34 2 9 4 28 11 31 26 31 30 8 27 39 38 35 6 33 25 12 38 13 40 25 23 17 1 35 1 27 11 23 15 33 13 18 22 17 10 35 38 2 17 30 4 4 32 22 17 33 16 14 10 19 10 39 6 14 22 12 8 36 17 32 7 19 22 5 25 26 6 19 6 3 20 7 36 12 33 31 32 13 19 38 18 3 21 24 12 9 14 15 14 5 36 4 6 13 24 7 38 18 28 31 5 8 4 26 15 27 27 22 30 11 35 22 25 33 36 26 18 7 7 29 8 19 22 33 22 29 13 20 6 33 19 26 8 10 34 22 33 21 35 22 7 16 38 31 26 4 36 20 26 11 36 24 27 36 11 34 38 4 10 1 15 2 6 40 10 35 22 40 1 13 17 4 16 40 18 36 24 39 25 22 34 19 31 20 20 29 32 38 37 17 35 9 25 14 5 2 16 36 10 35 34 26 4 25 37 4 32 6 20 16 6 8 13 32 33 37 20 26 16 14 12 18 34 39 35 1 30 21 18 16 12 8 34 27 8 7 31 30 29 17 11 15 38 18 15 11 16 22 24 19 32 30 24 20 37 5 6 32 36 4 26 39 3 23 11 33 15 19 32 18 38 33 10 39 20 18 30 32 35 33 5 14 40 30 29 14 5 7 6 10 20 3 14 21 35 32 4 10 12 25 32 7 1 27 39 13 39 1 26 40 12 8 33 30 31 32 5 34 38 39 30 4 39 6 40 11 17 5 7 40 9 8 3 40 1 19 14 17 15 26 23 10 12 26 12 12 27 25 28 9 2 17 23 34 11 30 14 8 32 28 37 7 36 26 1 7 38 34 39 8 19 25 29 40 1 18 33 38 22 20 31 13 1 21 22 7 14 9 28 37 14 9 26 10 36 31 5 8 6 22 39 31 38 12 25 25 14 20 35 26 3 22 10 37 3 26 11 19 16 3 27 36 29 14 31 14 23 19 24 35 28 9 32 20 19 24 32 30 13 32 9 27 27 29 3 8 35 32 28 31 7 26 17 39 20 29 4 39 4 6 20 30 26 17 32 7 36 3 28 3 19 28 23 37 31 39 39 39 27 1 10 1 7 11 10 10 26 27 37 27 6 15 16 15 35 20 33 23 5 6 35 11 31 17 23 26 38 19 6 32 8 33 29 30 13 23 10 16 1 23 30 33 27 10 19 6 3 8 5 2 13 30 16 31 40 9 18 4 22 11 1 2 36 7 5 3 12 28 8 39 37 14 6 4 28 17 7 14 6 14 33 7 7 11 36 35 34 34 2 31 20 33 12 36 29 38 40 40 13 31 9 15 22 19 35 13 27 1 18 16 8 9 24 28 9 17 7 2 12 27 13 22 31 10 27 4 38 3 39 17 32 31 11 5 21 25 31 32 37 4 33 27 14 1 32 29 39 38 1 33 7 17 36 22 19 12 14 34 14 25 23 5 36 29 1 30 25 5 24 3 25 24 38 6 17 34 26 15 3 15 35 7 16 1 17 40 32 25 5 28 25 39 4 11 27 31 38 12 11 22 4 2 11 29 31 2 6 8 13 2 3 25 9 31 24 25 17 16 10 31 40 29 33 10 40 30 8 38 17 4 6 35 18 33 9 24 5 5 17 33 12 27 35 17 15 38 11 17 16 20 18 8 27 9 21 16 2 39 35 8 26 11 8 2 6 25 10 10 18 15 24 1 22 25 9 13 8 20 3 1 13 11 21 25 25 4 40 31 16 38 12 32 16 11 3 3 35 39 27 40 29 19 34 22 7 40 3 19 36 33 16 38 9 29 40 22 36 5 10 28 30 1 11 26 36 11 11 18 25 40 6 38 38 15 38 7 20 27 26 34 12 22 12 7 18 38 21 39 31 2 11 18 21 24 5 7 28 34 30 23 34 4 40 9 24 29 26 33 28 29 37 19 33 34 5 13 24 35 17 14 15 35 2 28 9 11 38 31 40 8 2 10 40 32 7 5 30 30 4 32 30 24 39 18 37 5 36 27 19 20 11 36 31 17 33 30 8 8 20 15 28 37 40 26 26 25 26 32 8 33 24 35 26 36 32 8 29 28 35 19 12 19 30 37 4 18 12 31 20 26 28 10 40 19 39 16 24 3 35 14 2 12 30 7 13 14 8 9 18 33 4 21 19 40 36 28 10 22 10 16 25 34 38 39 27 12 22 2 18 19 28 25 27 27 31 22 1 7 34 39 20 26 12 22 11 1 17 21 40 17 38 38 8 28 36 4 12 33 39 39 7 3 31 8 9 40 34 2 35 21 21 14 32 39 1 32 22 14 16 37 19 29 12 17 5 25 10 27 16 11 28 1 23 14 12 24 39 39 5 15 25 32 32 13 20 25 16 28 9 35 24 12 30 40 21 25 6 32 12 26 12 11 15 1 36 32 24 32 12 10 12 23 37 8 39 38 9 37 26 11 16 23 4 20 28 35 23 37 16 36 1 2 20 40 39 24 5 11 16 37 37 16 32 37 2 31 38 29 33 1 34 9 8 20 31 29 2 7 6 20 2 16 33 31 6 17 31 18 30 24 17 17 30 1 24 7 20 12 38 4 17 38 4 28 9 4 8 34 8 6 24 1 7 28 2 34 11 4 4 8 14 10 15 35 12 11 32 23 2 39 2 25 13 28 39 38 19 36 13 5 28 38 33 36 40 13 9 28 35 34 39 11 3 3 26 32 38 36 22 27 24 16 40 26 38 36 22 5 21 24 22 15 7 1 20 31 6 35 38 13 38 6 29 20 26 14 21 26 14 1 8 1 12 2 15 7 5 37 25 15 33 6 20 15 8 13 12 29 12 13 31 5 38 19 28 21 23 10 14 16 33 20 36 37 26 38 22 15 2 8 13 10 20 23 18 4 13 29 16 40 27 5 27 12 25 3 4 9 22 23 35 17 27 15 7 35 21 34 37 2 18 30 8 19 25 8 35 24 29 35 9 30 3 21 7 21 26 39 10 28 4 28 6 27 16 6 14 40 4 15 34 29 27 32 7 25 6 32 31 33 20 26 34 15 31 5 12 1 31 22 25 6 28 12 4 30 24 13 9 17 16 9 37 33 34 31 2 29 22 10 30 35 11 34 36 38 39 23 38 39 1 22 30 31 20 18 9 2 13 13 30 20 25 12 8 5 22 24 25 1 25 26 37 38 17 26 31 29 26 18 16 3 27 16 37 34 39 5 40 29 3 34 1 35 9 31 31 11 40 23 37 30 38 34 20 36 18 28 6 23 37 24 9 28 4 32 35 24 12 7 35 13 29 26 8 31 10 11 1 28 37 8 3 10 6 28 15 38 3 35 16 37 19 40 27 37 30 10 13 16 39 20 32 27 12 14 14 25 25 37 39 33 32 29 30 12 39 18 34 19 8 19 12 17 35 37 1 19 29 15 21 9 29 9 34 24 33 34 34 33 19 29 22 39 33 19 28 34 25 3 24 3 33 36 19 29 25 39 8 2 31 32 13 12 37 27 4 19 17 32 35 35 6 39 16 21 35 39 30 29 37 10 17 25 8 15 9 18 19 37 22 19 4 36 39 9 16 34 18 13 4 7 1 24 23 23 21 40 14 16 9 14 38 34 3 39 1 11 19 17 30 29 28 18 2 35 23 36 29 29 25 23 24 5 32 30 18 24 14 40 29 27 34 17 32 17 13 3 3 35 2 39 1 7 40 18 6 38 30 35 23 9 28 29 8 1 14 39 13 12 35 27 32 31 19 38 9 4 31 24 28 34 8 36 32 28 9 40 18 2 25 32 5 20 19 31 30 34 38 28 26 18 11 5 36 29 12 3 38 40 13 30 16 22 32 6 23 22 33 35 3 36 12 15 4 38 29 35 11 8 3 8 31 16 28 5 39 9 8 26 38 13 24 36 37 19 17 22 33 30 1 10 33 18 31 2 11 29 27 9 17 29 24 11 21 33 1 26 29 28 20 22 37 5 40 11 9 16 34 38 23 11 29 8 38 29 27 10 18 31 13 34 24 27 16 1 10 1 27 34 15 25 31 20 18 34 13 23 2 20 11 15 17 30 29 27 29 11 30 23 40 37 36 26 29 39 14 24 29 31 14 33 7 2 27 5 18 21 23 5 19 12 22 16 35 5 17 16 1 8 1 3 22 11 40 37 28 27 16 5 37 4 17 36 16 39 16 4 15 27 18 4 6 33 25 40 20 10 40 29 5 13 7 13 3 17 39 16 27 26 27 40 3 1 2 34 11 21 36 37 17 14 16 21 1 21 13 20 1 29 26 37 5 28 27 30 32 36 23 21 1 20 16 33 37 17 31 18 8 37 5 13 14 9 4 33 10 22 2 10 37 11 28 13 21 26 38 3 19 34 5 34 39 36 30 24 19 18 8 13 35 23 24 22 10 12 5 39 19 31 17 17 3 38 22 12 3 19 1 24 2 17 26 21 12 17 18 21 21 6 26 6 37 36 4 9 27 3 23 27 26 37 26 3 34 34 26 33 39 40 21 2 36 17 38 39 25 12 27 36 3 32 31 10 26 14 24 38 32 30 4 18 34 6 12 27 2 8 7 12 6 7 37 7 15 7 6 24 12 10 10 9 16 21 38 34 4 1 13 5 21 1 25 28 34 12 31 3 26 4 33 27 15 38 14 11 25 4 4 38 27 37 28 12 27 23 3 11 39 30 2 26 4 9 27 8 1 14 5 2 24 19 23 28 22 33 26 22 33 7 40 13 35 13 37 11 19 9 28 37 7 10 20 30 29 40 31 17 38 7 3 9 28 29 4 31 29 19 12 28 27 19 20 4 9 28 38 16 2 12 35 31 1 31 28 13 7 35 19 23 21 12 28 21 20 31 30 29 21 30 14 21 8 36 11 1 22 18 22 7 2 27 40 27 13 20 22 30 7 18 29 23 37 22 32 33 37 5 6 38 40 17 19 8 12 38 33 28 14 29 34 30 11 11 33 7 4 21 31 26 4 14 2 5 40 32 25 36 14 16 27 24 22 10 33 11 1 25 22 14 26 23 6 35 39 25 38 20 23 19 8 37 18 24 2 39 27 11 25 19 13 17 28 34 34 31 40 27 9 1 21 28 15 21 16 36 13 4 19 36 24 36 18 37 39 10 1 7 29 16 8 39 6 13 24 7 36 10 3 17 31 1 25 39 33 34 20 33 4 13 12 15 31 15 35 17 34 3 34 16 4 37 23 4 39 29 39 10 25 38 32 14 11 21 32 28 8 27 24 34 37 1 11 14 35 5 11 22 23 38 21 2 36 36 22 21 39 15 7 13 19 7 35 15 32 8 19 21 7 38 1 37 32 8 39 18 17 28 22 21 22 23 11 10 9 38 1 1 19 8 33 17 35 12 34 17 29 19 21 16 5 32 12 5 30 11 33 24 28 20 40 9 17 17 9 27 27 2 38 1 4 22 24 7 32 18 8 37 22 23 31 29 16 26 22 13 2 3 14 13 39 9 33 30 21 24 6 7 38 23 8 18 31 36 10 31 9 1 20 35 34 5 1 5 27 39 17 33 7 25 17 13 22 5 5 11 15 26 5 22 27 18 5 1 6 15 30 35 10 22 39 21 9 40 19 8 36 36 29 2 10 23 4 23 23 29 23 38 25 23 19 5 8 8 7 37 34 23 29 11 20 21 15 15 33 19 15 23 10 32 4 7 15 38 4 21 40 11 7 31 22 30 8 38 17 1 12 14 19 35 18 18 16 6 14 34 38 36 35 31 1 14 35 17 30 28 21 25 7 16 20 2 38 9 36 17 39 5 11 39 28 9 19 3 29 23 30 38 3 38 33 15 33 10 1 18 8 37 9 37 38 36 30 8 23 18 4 7 28 28 34 19 9 2 7 6 10 13 28 5 33 19 7 5 29 34 34 35 13 31 20 16 26 28 14 17 27 21 36 14 33 12 27 24 10 4 35 34 35 28 14 17 3 8 15 27 12 21 12 38 2 4 31 32 35 31 30 4 30 25 17 19 16 21 26 11 7 33 9 40 16 9 39 32 34 38 16 20 26 22 34 12 19 3 28 25 30 16 30 10 3 20 13 27 29 31 16 37 22 40 9 7 28 12 1 2 17 26 26 10 1 6 32 35 31 15 19 22 17 18 20 36 12 35 34 26 20 11 4 7 1 22 26 2 30 34 26 24 31 37 6 15 28 1 10 7 25 26 19 15 24 36 10 38 3 18 10 3 29 24 12 4 5 38 7 8 5 21 37 5 16 38 22 13 8 7 34 37 31 24 32 21 11 10 32 34 15 35 34 14 37 34 40 12 40 38 28 23 9 27 18 12 1 6 8 25 39 39 40 27 1 33 32 23 19 1 40 22 16 23 36 9 24 5 28 19 19 2 7 20 27 38 8 13 28 22 21 21 31 39 17 38 36 34 35 9 33 19 37 2 3 21 37 27 25 4 8 23 32 5 4 29 7 40 23 40 32 30 16 2 38 24 37 12 16 8 36 8 13 31 7 10 36 8 29 32 40 17 18 8 33 12 39 9 2 5 13 17 29 4 40 3 30 23 27 13 28 15 8 33 11 6 37 18 22 26 8 38 3 31 6 12 15 27 22 26 35 27 24 35 22 11 30 18 40 1 11 16 31 19 6 10 1 2 32 28 29 22 3 39 6 38 14 34 40 35 22 8 34 21 33 18 18 18 15 31 12 39 5 24 30 8 39 26 35 2 8 28 1 4 16 40 17 14 13 37 6 21 17 34 26 3 7 16 25 21 23 9 27 12 30 16 33 12 10 17 22 37 34 6 18 9 15 8 35 33 2 21 8 22 19 31 1 7 15 13 37 20 26 21 38 11 18 21 24 10 27 18 16 13 24 34 11 40 26 10 16 7 13 24 3 23 27 24 38 6 37 4 9 20 18 24 18 5 22 22 24 21 29 14 36 34 15 10 20 10 14 11 34 26 35 40 32 8 22 8 17 5 24 27 12 11 35 3 2 7 40 5 33 29 20 13 11 29 4 34 10 40 29 26 39 36 15 17 12 6 22 39 21 6 15 11 28 8 37 32 16 6 20 5 34 16 16 10 1 8 23 4 23 22 24 40 18 37 36 22 4 33 31 21 23 35 28 26 10 18 3 14 9 28 1 18 31 35 21 4 37 38 21 23 26 1 36 9 39 2 23 2 22 29 9 10 11 14 34 11 19 25 32 18 20 21 20 1 40 12 4 25 18 6 17 33 16 3 22 25 27 26 21 28 25 28 29 6 22 36 25 29 21 26 26 23 34 19 17 2 25 11 15 33 4 40 5 28 5 5 2 18 2 16 13 33 26 40 36 40 21 19 17 7 40 5 8 1 36 39 27 4 22 36 11 10 28 20 4 11 12 16 1 20 36 34 4 5 30 23 31 1 22 7 7 17 20 20 39 36 33 9 33 4 21 18 6 34 18 31 34 14 40 20 8 20 7 23 17 22 26 33 11 38 31 37 35 27 39 5 6 13 1 21 7 9 15 14 10 21 6 26 11 13 31 29 28 21 5 23 39 11 21 37 4 31 19 5 36 38 15 3 10 34 27 27 13 33 10 36 24 8 38 1 38 26 1 5 21 29 22 37 14 20 10 16 7 11 20 34 12 14 25 33 7 19 21 27 34 14 22 15 5 23 5 34 40 2 15 6 21 4 6 38 31 9 39 38 25 29 16 26 29 21 23 30 7 24 18 29 15 35 3 2 14 35 19 34 32 18 11 13 21 2 19 32 34 34 13 6 12 23 1 26 29 5 1 15 13 22 9 13 33 12 6 16 8 1 21 1 25 17 6 7 22 34 19 40 12 40 17 29 26 27 13 38 40 10 2 8 33 25 10 19 4 6 8 24 39 26 21 12 9 34 24 32 24 2 40 19 16 39 5 9 12 8 6 9 16 39 29 1 30 24 25 3 40 25 34 20 16 13 22 32 25 3 17 27 33 16 26 38 33 34 37 9 6 35 31 30 26 21 26 23 34 23 26 38 9 10 19 29 38 4 19 3 31 37 30 30 30 37 28 9 2 37 31 20 19 34 1 38 19 11 31 1 17 28 31 37 14 14 10 33 33 28 37 24 38 15 3 35 3 25 12 39 24 19 10 39 4 36 11 34 40 7 5 40 2 26 36 22 22 9 35 12 39 2 7 36 9 24 36 6 14 36 25 32 25 26 27 40 8 20 38 20 26 15 28 22 30 2 24 12 12 19 19 28 7 14 10 25 10 5 23 31 21 33 28 9 7 6 29 5 30 37 18 11 17 9 5 10 21 6 34 10 27 32 8 8 22 6 1 8 16 28 20 32 4 25 23 10 26 38 10 38 17 28 4 26 7 25 5 20 33 22 2 19 28 33 17 3 21 9 10 6 17 33 19 7 21 35 4 3 11 1 38 19 35 35 5 25 24 12 12 34 30 33 1 18 13 20 33 28 19 13 12 15 15 14 29 15 24 17 31 28 35 17 17 36 16 32 8 35 12 24 37 24 38 3 40 20 36 20 21 21 23 26 37 25 35 6 12 23 36 4 28 35 35 19 25 25 33 23 12 8 15 7 40 37 33 38 15 32 8 20 7 5 30 10 26 19 8 14 21 20 4 6 15 29 19 18 39 4 11 18 20 17 10 30 9 26 10 19 21 33 8 2 25 21 29 15 7 13 18 34 9 35 28 14 40 24 22 22 33 17 37 29 24 16 10 26 15 31 29 20 24 37 16 37 4 4 25 9 38 36 40 20 37 19 16 16 4 31 29 13 33 10 25 37 32 17 1 32 5 28 19 4 35 12 28 39 10 13 39 2 3 31 32 4 19 6 27 7 18 31 29 36 6 40 26 9 25 9 1 4 31 26 37 35 14 14 40 22 9 25 10 12 14 21 15 3 10 34 12 23 31 30 5 10 17 26 40 2 18 6 2 13 20 2 40 10 20 33 12 2 4 12 22 9 15 23 12 32 39 4 23 8 27 38 28 38 35 32 37 34 32 29 19 25 28 15 13 29 23 13 21 9 10 38 22 39 17 27 3 20 16 9 29 28 9 31 28 25 19 33 27 36 3 14 12 12 19 18 20 25 23 5 28 36 3 39 22 15 20 13 9 27 16 34 40 12 32 5 12 32 33 39 37 4 8 35 30 29 18 23 38 8 32 5 18 30 6 10 4 15 8 17 29 10 11 35 15 18 20 3 29 1 34 32 7 26 15 21 6 24 17 18 26 12 2 28 24 5 30 7 4 18 2 5 6 1 22 39 29 21 37 19 30 19 15 26 3 27 36 29 17 25 26 35 17 25 20 1 27 3 5 22 17 7 3 23 26 38 20 10 39 1 7 23 23 2 30 25 23 11 30 39 16 13 36 36 6 20 12 27 1 9 27 25 27 4 24 39 11 10 24 29 7 40 9 5 36 8 34 3 26 26 4 10 15 23 25 31 16 39 24 13 6 6 32 13 11 40 16 20 15 32 20 23 26 8 14 27 28 4 26 15 12 24 17 39 10 11 33 40 2 32 33 6 14 40 3 20 22 2 18 25 20 28 34 17 8 40 40 31 5 1 12 20 18 4 34 40 34 30 14 33 8 26 6 16 34 9 29 7 22 11 9 31 18 2 8 27 39 22 28 40 27 3 7 16 8 36 4 13 18 3 31 30 10 35 40 6 10 5 31 40 12 12 16 14 10 12 33 30 29 27 31 40 2 40 16 27 20 1 7 20 6 14 10 31 26 15 18 10 5 22 2 16 12 36 7 5 37 16 3 24 33 20 10 19 1 26 1 7 8 27 5 23 18 18 35 21 15 2 25 2 31 32 36 30 27 15 26 7 3 29 3 7 39 13 15 4 21 25 6 16 3 14 5 35 24 18 32 5 20 36 14 33 38 16 31 20 40 21 37 36 13 3 19 32 28 21 7 31 3 13 5 32 5 34 14 28 33 19 37 24 38 35 24 9 21 31 5 4 25 3 18 9 30 11 35 39 10 19 35 2 15 24 2 31 15 33 2 22 27 6 2 10 16 40 30 24 9 32 15 8 29 8 7 32 14 27 22 19 38 36 21 12 23 6 1 15 29 23 37 12 6 6 18 32 24 4 19 38 37 35 5 40 7 15 7 36 19 35 4 40 22 35 25 21 10 20 30 11 27 3 10 37 29 11 1 38 7 21 31 34 22 9 4 1 40 25 40 22 4 6 39 36 16 28 37 17 16 8 38 33 25 27 12 6 2 8 5 13 19 24 8 16 25 6 39 13 2 21 40 21 2 31 28 24 33 37 32 15 15 12 7 7 34 23 17 31 1 12 15 38 1 11 36 14 31 1 35 4 26 20 40 14 11 36 29 10 31 14 24 6 12 15 40 1 29 23 2 8 20 17 17 14 40 8 22 8 12 39 4 29 10 12 27 27 35 7 19 3 39 37 11 24 37 32 20 36 25 7 12 24 16 13 2 39 19 34 34 3 11 17 27 38 3 26 11 9 1 25 17 35 9 14 21 29 12 24 17 39 25 31 37 13 24 36 36 20 31 19 21 9 19 16 6 25 37 30 29 3 20 4 33 17 31 5 19 33 35 4 8 13 24 25 36 11 27 3 33 21 28 18 22 30 7 7 32 23 24 15 16 29 36 32 13 14 10 18 39 19 6 29 11 3 13 12 1 36 18 19 35 27 19 19 28 29 27 4 24 36 9 24 29 13 13 30 24 18 6 20 29 36 3 1 5 33 28 36 32 35 27 7 18 1 27 13 40 35 22 29 16 29 36 27 28 23 14 34 30 29 5 29 27 9 25 39 5 34 2 10 4 17 8 9 12 35 11 40 36 22 12 25 39 16 1 27 23 9 17 15 2 25 15 2 12 5 15 11 37 27 35 15 2 6 9 31 22 17 23 40 33 37 8 10 7 24 15 11 13 35 9 27 2 14 32 30 34 37 10 32 34 29 36 25 18 17 21 38 3 37 1 24 32 24 10 26 11 24 32 21 5 26 34 38 7 22 3 35 39 33 8 12 30 38 34 20 20 6 30 33 33 34 12 11 26 40 3 25 19 11 4 18 23 21 26 25 26 17 25 26 15 9 26 22 6 8 27 14 15 26 1 8 38 3 4 29 14 20 28 31 22 9 31 1 22 13 24 34 4 12 11 10 3 39 18 37 10 3 25 34 19 13 25 38 17 4 37 37 3 40 35 3 8 11 6 40 16 35 9 36 15 29 37 7 25 26 31 21 16 28 38 36 28 40 1 14 16 11 39 34 13 33 5 35 28 17 30 34 21 11 27 9 29 39 25 23 1 15 2 30 36 16 24 14 25 29 11 9 15 2 12 15 5 9 27 13 29 8 38 34 27 40 28 12 23 3 37 38 39 17 33 24 27 3 30 30 5 10 16 18 2 35 20 30 11 18 2 13 20 17 5 8 12 20 23 10 19 36 39 31 37 3 33 33 22 3 10 6 34 13 5 13 22 10 14 15 15 36 31 30 32 37 5 35 11 17 26 30 38 11 32 18 35 35 26 37 28 30 5 25 27 33 23 7 23 24 37 34 11 14 38 22 25 6 8 27 39 26 4 37 14 19 26 22 35 5 2 3 15 5 12 37 32 27 28 29 27 35 17 28 2 2 9 24 18 18 11 38 15 1 40 23 36 33 2 27 4 25 21 32 24 30 39 10 5 3 10 29 39 30 12 37 13 40 25 11 30 21 34 26 35 6 16 9 11 33 5 32 16 26 15 25 40 19 27 6 18 21 17 2 40 34 31 29 8 7 11 36 17 22 40 3 36 31 10 31 21 38 18 30 8 38 16 40 38 14 32 35 28 7 35 39 39 40 27 26 18 4 3 20 10 18 27 38 4 6 26 33 6 11 9 33 21 29 40 34 32 14 21 32 36 21 38 25 2 20 29 37 38 1 35 1 22 38 26 1 13 9 37 22 9 25 23 1 13 1 29 12 12 18 10 1 6 22 21 10 18 29 15 28 26 7 6 2 18 38 17 36 36 26 27 35 1 25 18 26 12 19 27 1 32 21 15 15 15 12 22 32 3 5 36 24 9 18 18 4 31 38 39 10 40 8 6 23 29 34 16 10 2 16 4 15 22 17 9 3 27 10 8 39 38 33 3 30 31 16 21 26 36 20 38 1 31 22 16 5 22 5 33 26 2 4 18 23 29 6 20 3 14 21 15 10 24 36 18 33 22 28 38 12 25 8 11 30 10 40 28 35 23 31 6 19 22 38 11 10 35 37 35 6 27 29 7 40 11 40 36 23 30 13 24 11 18 36 35 36 34 34 10 24 5 9 30 29 16 17 3 35 8 12 34 33 1 35 4 38 32 10 38 34 1 27 32 23 10 5 18 12 19 10 3 31 15 5 30 5 2 22 10 5 18 23 38 38 34 18 5 11 16 15 33 39 40 19 15 10 39 2 5 20 24 25 35 22 29 12 26 38 18 30 34 22 33 1 4 40 14 3 33 21 14 27 37 24 27 21 39 30 24 33 22 31 39 1 8 24 28 15 27 36 37 3 31 20 9 20 24 20 10 2 40 35 4 40 25 13 13 21 36 17 5 10 3 30 24 28 10 20 1 38 7 30 6 24 33 38 16 10 37 8 16 38 15 19 17 31 2 26 38 9 39 19 4 3 9 6 24 13 25 29 21 27 6 24 17 1 18 34 20 12 10 21 19 10 22 1 27 36 4 3 11 7 26 39 38 23 40 17 29 26 36 25 31 31 37 33 24 15 2 10 6 14 34 1 23 20 16 39 20 20 27 8 4 20 14 26 34 16 29 27 30 8 35 18 31 23 36 40 7 29 35 1 1 23 9 8 22 3 3 37 18 39 27 15 6 15 5 29 40 6 26 13 8 4 32 39 40 28 26 28 33 39 12 22 32 13 29 39 35 25 21 19 34 28 22 10 32 23 6 33 20 22 35 26 29 33 14 17 8 20 32 6 23 33 28 9 3 26 18 9 13 28 31 38 22 33 25 28 11 39 16 34 14 19 26 2 27 4 17 25 8 26 11 31 38 12 33 15 23 29 7 20 33 24 32 40 31 8 22 34 6 32 17 6 20 16 19 25 22 34 13 6 31 12 18 4 10 32 3 26 28 29 24 22 7 35 2 25 8 1 21 2 32 8 36 4 10 12 5 19 31 20 40 18 24 12 32 16 8 28 35 27 5 10 33 3 22 7 20 15 29 23 32 13 12 27 19 37 11 22 28 23 5 29 14 17 36 19 35 12 11 29 17 16 37 22 25 16 23 15 12 37 11 30 28 29 3 37 25 29 11 8 26 29 33 9 15 7 4 35 32 27 7 4 3 27 7 22 38 10 30 21 21 27 6 32 21 30 12 39 37 14 3 17 29 22 27 11 12 40 26 21 16 11 21 39 1 28 12 18 9 18 1 17 20 1 11 31 5 13 21 1 7 10 25 20 6 2 19 30 22 4 6 36 5 25 9 34 3 3 5 25 18 10 29 1 2 24 13 14 36 7 18 15 18 10 24 23 21 20 7 24 3 16 5 1 13 31 18 8 1 37 10 26 19 19 21 10 35 20 2 19 16 30 36 35 27 35 27 38 5 23 21 5 18 31 16 2 29 21 20 1 7 35 33 34 2 37 6 38 22 37 19 40 19 33 23 6 16 3 3 23 2 6 18 1 27 32 18 33 26 37 22 40 13 6 1 3 17 16 25 34 1 15 19 36 37 30 27 18 30 33 3 33 38 16 3 22 17 30 17 12 39 36 26 35 12 17 32 9 19 26 20 22 31 40 3 6 23 6 8 2 27 19 3 1 25 30 1 37 39 20 10 16 4 32 11 31 32 3 5 26 3 29 39 30 35 33 40 16 4 1 13 29 24 7 8 11 18 23 17 2 15 28 25 2 7 11 12 21 4 2 29 38 28 36 2 12 15 37 7 32 9 32 28 34 15 40 17 28 13 4 34 38 20 14 11 34 12 28 6 21 20 10 40 7 40 34 30 5 20 30 11 8 10 20 4 8 30 7 14 12 36 21 20 29 10 20 3 39 21 15 16 8 25 11 22 29 36 8 1 25 27 5 38 29 7 38 15 16 35 11 16 27 23 10 33 26 14 13 4 20 39 5 16 17 20 31 24 11 8 2 31 11 40 7 8 14 39 9 21 5 7 27 24 11 5 27 17 26 10 31 3 28 37 17 26 26 39 11 14 8 7 22 6 14 15 16 18 38 30 40 7 26 19 10 12 9 7 15 31 34 2 6 22 36 28 14 13 34 37 26 14 25 34 4 20 6 10 5 11 22 20 35 9 13 16 34 36 29 21 27 20 16 11 30 28 12 23 10 12 23 29 15 2 23 13 14 20 20 14 28 11 35 23 33 13 2 33 3 6 27 21 2 20 15 36 32 36 32 5 7 34 16 2 29 15 27 7 9 23 36 5 21 36 37 34 9 18 25 15 5 25 24 22 37 20 32 22 1 36 9 14 33 29 6 2 27 27 27 10 40 28 14 2 30 26 25 16 22 35 31 7 19 25 4 29 40 8 9 33 3 13 4 15 24 2 21 35 1 39 33 35 15 34 28 35 23 15 36 1 29 3 28 23 35 2 8 18 30 28 25 37 40 38 40 31 15 12 32 16 21 24 35 38 14 32 28 19 33 22 10 15 6 22 39 25 38 8 19 5 38 32 26 34 33 6 19 12 27 6 20 23 36 5 9 29 33 26 24 19 7 9 29 13 20 2 14 11 24 37 2 10 33 15 16 31 14 31 28 10 33 28 36 14 7 27 18 39 16 7 40 9 15 36 30 24 31 18 2 29 31 18 15 32 11 31 21 2 25 10 26 15 3 37 23 31 7 37 12 30 29 31 2 27 2 38 7 14 30 33 31 5 36 3 13 4 16 17 39 24 37 26 16 29 13 39 18 16 16 7 15 2 12 30 32 7 29 40 11 25 17 12 9 1 9 25 37 28 8 37 10 29 28 4 26 10 11 16 10 26 17 20 27 16 19 17 19 5 36 20 4 16 3 22 11 4 9 38 8 10 38 12 25 19 16 16 2 35 1 26 37 15 32 36 5 19 35 28 7 7 22 3 36 11 19 31 19 23 40 12 2 19 22 15 10 14 4 17 27 5 32 2 40 31 30 37 12 3 4 40 8 4 39 16 19 32 26 34 39 7 26 16 31 29 34 6 12 8 29 20 13 32 33 33 27 16 12 38 37 24 5 28 5 14 16 29 1 28 7 2 35 39 27 3 30 38 18 17 40 30 24 4 29 39 28 2 14 5 19 27 19 11 40 22 3 10 13 9 32 16 16 24 4 18 21 19 29 37 6 7 25 35 29 22 18 2 28 13 27 1 9 5 29 26 20 30 29 33 19 26 26 21 27 15 40 38 20 22 2 2 8 40 32 19 28 14 36 9 18 11 6 3 25 19 17 9 39 33 1 21 24 7 17 30 1 8 35 7 8 10 25 25 28 24 5 37 27 6 20 16 34 7 16 39 18 9 26 36 18 12 37 20 22 15 18 24 1 33 37 37 7 21 27 3 5 25 18 26 25 25 15 10 24 10 29 12 18 19 7 22 13 22 32 40 36 31 40 39 39 36 35 1 26 14 10 7 17 40 36 24 9 31 17 8 23 31 25 20 29 20 27 33 31 24 6 27 39 19 26 33 37 34 13 12 17 4 24 1 39 13 16 24 36 1 29 32 11 23 24 38 26 35 21 6 4 16 26 19 27 6 19 28 22 6 35 13 11 13 17 19 40 6 3 21 16 38 3 15 8 19 14 33 6 18 36 36 4 31 10 25 6 9 29 5 39 39 1 32 13 10 6 23 10 19 37 27 39 13 26 8 38 20 15 6 34 24 13 30 22 38 24 20 1 39 5 3 19 14 19 19 28 18 34 31 6 20 3 30 35 14 4 6 7 18 4 9 3 26 23 21 37 4 36 36 32 12 20 38 4 9 38 33 18 25 14 6 28 13 27 6 37 29 6 35 9 12 14 4 1 26 34 15 30 14 6 9 8 23 39 18 11 13 38 2 39 33 33 22 34 22 31 24 27 13 37 19 35 17 34 27 25 13 40 5 21 18 3 24 22 14 29 10 20 38 22 8 23 13 25 2 20 26 36 32 5 35 26 39 33 37 35 5 34 21 35 39 22 38 12 28 21 6 28 25 7 9 13 4 25 12 18 31 11 25 30 32 11 3 10 3 33 8 13 39 27 9 7 1 25 18 27 5 13 28 30 28 1 34 32 12 4 27 27 13 19 17 28 2 17 28 2 38 8 1 6 33 18 30 32 29 14 3 6 1 31 23 35 16 11 37 28 26 14 38 3 6 9 35 35 30 5 5 37 40 1 7 18 6 1 12 26 23 18 32 5 24 5 38 31 22 3 19 17 29 27 31 24 9 32 28 38 15 4 35 10 34 17 28 22 37 21 21 25 2 27 25 18 7 10 8 22 36 9 21 20 1 17 4 20 14 36 16 30 1 15 30 28 14 23 7 24 16 22 29 3 21 38 33 10 6 31 27 29 16 8 32 6 12 38 27 29 10 30 31 27 38 29 15 4 26 21 6 21 23 6 30 16 33 5 33 26 3 22 21 16 5 22 20 25 5 35 4 25 10 14 10 39 10 20 1 40 7 3 15 8 7 37 6 40 12 7 19 6 2 4 38 7 7 16 17 31 24 26 6 17 34 7 9 39 1 12 18 23 25 37 25 21 22 28 38 12 22 10 31 34 4 5 12 27 25 19 22 30 6 29 10 27 35 36 40 12 25 11 24 17 14 29 36 3 32 24 25 14 10 39 12 38 28 15 10 4 17 10 9 17 20 35 27 15 6 17 5 29 2 2 26 35 10 36 22 5 35 5 11 33 8 34 40 36 33 32 13 31 4 21 15 9 4 20 2 20 11 23 10 6 29 32 18 35 17 25 3 23 16 31 34 23 26 1 8 2 14 24 33 37 5 35 3 17 39 24 24 2 38 1 31 8 27 16 28 25 19 39 34 29 36 4 8 23 8 34 20 14 27 6 38 36 19 2 31 18 13 26 26 7 18 13 11 25 22 4 17 35 13 16 16 39 16 14 23 4 22 23 18 38 18 5 36 30 17 2 40 12 12 8 21 25 18 30 9 30 10 24 10 21 25 11 27 24 34 5 40 33 24 15 29 6 4 40 36 19 5 16 13 15 22 18 8 32 27 10 38 22 31 31 1 32 22 15 18 37 33 40 21 32 29 32 2 15 16 7 36 14 9 30 12 24 34 35 17 5 33 31 33 35 5 2 35 29 24 30 40 24 2 32 8 9 3 19 38 17 15 26 5 35 17 12 18 1 29 8 25 4 33 38 9 26 7 20 10 29 2 16 39 18 10 1 31 20 15 40 35 38 40 15 2 31 8 5 1 14 20 12 12 9 1 29 11 14 36 5 36 10 37 22 35 39 40 11 21 22 15 3 2 26 2 39 27 27 1 36 5 3 31 4 24 11 37 5 16 39 8 14 40 28 10 17 28 13 27 13 25 2 31 3 17 34 38 26 37 38 3 15 18 36 29 3 18 27 11 5 12 26 39 36 14 1 9 31 34 13 32 12 24 14 31 19 8 40 5 14 30 14 33 7 12 23 33 17 20 38 3 19 7 28 14 32 31 18 6 17 6 35 31 5 20 26 5 23 25 2 25 2 37 18 29 4 8 15 29 20 18 8 34 23 23 33 34 16 20 17 28 5 17 16 40 24 34 10 25 28 33 16 14 3 23 24 20 34 26 25 38 9 4 17 39 9 18 16 37 34 3 37 8 21 5 10 38 7 16 34 33 7 19 20 6 28 37 13 7 14 17 15 23 40 40 13 33 32 11 26 10 24 1 26 22 14 12 17 21 22 10 18 1 17 7 26 8 14 23 5 9 26 9 35 29 25 40 21 28 13 38 31 12 2 27 14 33 2 21 22 32 10 26 7 28 28 26 37 3 30 1 13 25 14 13 2 30 38 25 9 17 39 10 32 4 10 31 38 12 33 22 16 13 26 32 23 11 40 11 30 11 16 34 22 32 15 23 25 31 2 36 27 30 16 37 13 23 33 29 8 29 4 32 37 34 2 36 34 36 16 26 31 1 18 29 10 27 4 19 32 13 38 20 10 18 21 13 31 25 39 11 4 5 4 31 40 24 21 36 27 40 35 19 23 6 39 28 22 8 18 11 10 20 4 6 6 22 26 30 26 15 36 39 27 34 36 17 38 37 13 13 6 14 25 11 18 19 3 35 26 22 5 8 25 17 16 8 37 18 20 27 32 7 2 7 20 40 5 3 32 6 12 40 21 31 1 36 6 33 40 37 27 17 31 20 11 20 20 7 14 11 3 34 16 20 26 18 33 30 3 38 34 1 27 23 40 13 25 16 25 23 13 16 20 22 8 9 26 31 19 23 7 33 19 3 34 22 20 29 20 32 16 39 39 21 26 10 24 35 28 38 36 21 37 6 28 7 1 1 26 15 1 9 39 13 19 25 11 14 20 35 27 32 11 29 8 5 13 17 28 10 15 17 21 28 26 29 25 28 18 5 32 15 1 13 4 9 23 21 40 11 18 25 2 21 14 32 30 6 5 2 5 26 32 25 35 39 31 15 28 34 1 37 18 37 15 9 33 38 34 14 22 14 38 27 13 18 1 5 11 16 13 24 34 27 5 3 25 23 16 10 1 29 13 7 34 33 32 26 4 28 36 16 12 37 23 38 14 19 17 11 25 39 7 30 9 5 4 5 40 3 20 25 37 20 20 1 18 6 39 35 8 31 33 32 1 18 9 5 23 16 33 16 33 36 38 7 2 14 14 8 13 20 24 28 34 19 20 7 4 29 36 28 20 23 20 14 21 40 8 8 20 6 34 26 19 33 10 20 36 5 22 30 17 4 20 26 34 17 33 18 19 36 14 36 29 29 18 25 18 11 18 13 30 3 14 6 30 25 28 14 26 30 26 32 14 20 1 16 37 16 14 29 23 38 22 16 25 19 5 13 3 31 36 12 8 29 24 27 40 28 18 14 15 13 12 25 3 32 14 33 8 24 8 15 29 12 21 33 24 35 31 18 15 6 22 21 1 4 19 29 34 8 1 14 34 3 2 23 36 32 36 33 29 9 14 40 18 1 8 27 39 34 38 9 12 32 18 22 18 33 17 26 33 30 26 38 10 18 40 34 9 19 36 2 8 35 28 29 20 26 31 5 27 3 18 9 13 34 16 18 23 9 38 4 6 33 3 25 16 5 17 26 27 18 23 4 36 33 9 5 21 29 20 2 4 27 11 38 15 31 33 17 7 2 38 37 36 5 18 38 9 26 9 10 34 18 21 12 24 31 18 16 34 5 13 2 3 36 22 31 6 16 35 18 7 24 14 18 31 3 12 38 10 5 25 38 18 7 4 18 26 7 4 37 10 24 18 19 27 23 9 1 25 31 9 27 14 15 12 35 34 27 36 40 29 37 33 36 30 28 37 4 5 38 23 20 30 25 28 16 4 36 18 13 9 10 33 26 18 23 28 34 14 37 25 28 35 10 33 20 25 2 3 6 31 36 8 2 33 12 29 22 9 5 37 15 14 34 40 22 3 20 29 35 20 16 3 27 22 22 5 30 8 22 11 35 33 14 14 24 39 29 12 40 10 12 20 21 19 26 35 18 39 2 13 17 11 2 27 20 14 4 21 29 17 34 12 7 29 19 14 9 20 15 3 20 6 33 7 34 21 1 16 14 24 1 6 15 40 16 15 17 27 40 26 26 19 8 35 6 7 24 23 17 24 33 3 28 28 7 15 15 29 19 7 5 16 1 20 1 29 22 24 26 38 3 32 28 1 22 33 11 35 7 4 1 15 6 39 29 16 12 24 35 8 19 9 22 17 32 29 35 20 14 22 1 2 17 33 27 11 30 8 15 33 11 23 39 29 26 17 16 1 18 35 10 14 35 21 39 17 5 26 9 17 15 6 29 21 7 13 27 17 24 16 13 39 17 14 23 19 11 19 1 16 25 14 12 38 28 5 40 32 27 33 10 13 17 13 23 3 40 23 36 40 14 10 3 22 7 37 32 3 30 4 32 26 33 11 34 22 8 24 40 37 27 34 23 40 37 22 38 9 30 4 37 12 21 8 32 12 1 15 27 19 24 9 26 2 25 23 28 1 31 7 36 27 31 35 25 2 31 30 26 23 9 21 40 4 35 4 32 26 28 22 19 39 40 28 27 37 33 21 16 18 39 22 40 4 35 6 10 18 2 23 31 5 19 36 25 18 31 16 26 15 15 11 11 29 22 19 18 26 12 4 31 6 38 36 23 21 8 12 19 4 5 26 29 17 30 27 26 25 24 28 13 28 32 1 32 20 27 9 22 10 14 21 7 11 26 27 20 31 4 17 28 35 20 11 39 36 4 39 27 24 5 2 34 35 12 25 38 6 7 14 10 18 30 25 2 15 28 21 24 17 35 15 18 28 4 35 29 26 37 21 7 1 8 26 33 9 2 33 37 34 20 21 36 40 6 1 2 8 39 27 19 14 2 20 10 2 26 38 37 11 5 32 26 4 18 35 19 17 11 31 13 13 18 5 26 4 39 11 39 27 27 12 5 16 22 3 26 35 19 15 8 15 34 20 5 20 38 9 3 31 18 34 28 39 8 3 8 3 34 23 26 4 34 15 20 6 38 8 9 4 4 16 9 20 11 21 8 40 16 38 19 6 2 23 34 31 16 37 31 28 23 40 38 34 20 38 28 17 22 18 19 25 29 3 31 26 23 10 24 27 40 2 30 17 20 8 36 11 17 29 24 6 25 28 23 19 38 1 18 14 2 13 28 1 34 38 17 1 9 18 29 3 4 27 12 2 30 3 17 34 9 32 36 17 12 13 17 24 33 8 3 16 38 16 2 18 8 29 29 6 28 22 23 16 32 28 29 16 37 20 11 13 19 34 31 18 37 36 31 20 39 4 29 7 1 22 32 32 29 18 9 31 18 6 37 34 23 16 19 37 37 8 37 14 18 32 14 13 7 5 22 37 19 7 3 1 16 9 36 14 18 6 3 39 31 3 24 5 14 23 33 7 8 40 18 38 34 2 1 24 26 15 31 11 36 32 17 35 27 40 4 3 33 19 11 20 26 24 31 15 8 20 31 22 10 3 28 13 37 32 9 39 30 11 22 22 7 32 1 9 27 35 15 19 19 31 27 4 5 39 6 39 40 13 19 22 32 4 33 28 39 10 39 25 24 19 17 25 37 5 14 15 20 29 3 38 27 13 24 12 2 8 27 14 26 36 39 13 38 4 25 24 34 8 29 25 24 13 30 4 39 29 11 31 2 34 22 30 11 6 17 32 32 3 30 30 24 29 17 39 6 38 17 25 4 15 17 5 9 39 4 33 36 9 2 32 7 29 29 3 10 4 39 23 14 14 22 40 4 24 4 9 11 18 24 12 22 1 40 12 39 17 23 31 10 34 35 23 20 8 35 15 3 31 13 2 19 17 11 15 35 4 4 14 30 21 15 11 14 19 14 35 25 22 40 6 25 35 3 36 11 14 29 10 39 1 19 40 18 32 16 34 6 31 5 35 32 38 11 23 31 20 32 34 20 31 6 21 31 31 6 16 6 5 31 3 19 37 2 17 20 13 7 35 37 24 21 15 4 2 12 24 39 31 16 9 22 12 33 20 13 4 15 11 26 11 23 32 16 17 6 16 38 24 16 12 10 15 33 34 35 20 11 7 37 25 30 14 16 26 10 17 36 36 31 16 23 25 31 20 27 26 25 11 10 37 10 7 35 5 36 25 39 2 1 24 9 18 13 8 13 25 37 36 14 28 2 23 18 34 29 21 7 30 12 19 4 4 38 1 35 28 24 33 23 30 17 38 5 24 39 8 6 16 40 17 2 24 29 38 36 26 8 38 18 28 21 9 1 33 1 17 25 9 40 10 11 27 35 36 7 4 38 17 9 35 4 16 5 25 18 5 18 23 28 7 15 22 20 21 33 29 3 31 10 14 21 2 15 19 18 37 22 26 7 38 38 31 39 38 22 29 28 5 33 14 26 3 37 36 1 33 13 27 34 21 13 22 4 27 13 31 17 10 8 8 12 39 3 13 5 13 9 28 18 35 28 30 34 4 40 22 19 37 40 20 7 16 33 26 32 18 37 35 24 16 11 17 38 13 36 24 23 24 2 8 30 5 35 17 26 22 17 20 2 7 10 5 23 1 17 20 33 3 28 30 17 11 20 8 38 25 17 29 16 15 4 22 9 17 35 26 8 38 22 27 11 10 31 30 5 17 19 33 31 26 31 32 12 5 39 5 8 39 7 8 11 35 27 20 18 25 18 27 13 32 23 27 27 22 5 18 23 30 28 17 12 10 12 19 39 4 34 21 27 36 23 39 17 9 13 22 38 17 31 39 26 19 17 2 21 33 14 3 38 20 23 20 31 8 21 10 32 34 20 6 28 10 17 38 24 20 9 22 18 1 21 1 22 2 19 26 27 37 6 40 31 21 30 17 20 1 38 40 34 14 40 1 28 18 26 11 32 26 6 17 7 18 7 2 31 33 39 34 11 31 19 7 30 12 4 8 40 40 35 28 38 39 35 34 37 10 26 4 21 9 17 12 4 31 37 32 6 32 2 40 1 26 33 5 13 5 29 3 16 11 36 3 22 3 35 32 2 26 35 20 14 14 7 6 19 16 4 28 18 12 36 14 35 21 22 4 4 26 15 4 35 39 35 8 34 35 40 4 29 39 15 32 7 18 30 27 13 13 25 39 16 25 23 3 13 26 31 1 12 18 35 7 11 20 38 23 21 28 32 39 34 11 40 24 4 13 2 9 14 35 16 40 34 1 12 27 11 5 32 8 37 39 10 30 31 16 37 37 7 17 1 33 11 19 35 38 9 11 4 39 28 4 17 27 36 19 30 28 14 5 40 21 14 8 10 3 11 15 13 36 37 12 15 21 6 4 36 36 15 15 25 10 8 15 21 9 10 28 9 17 19 32 22 30 10 18 36 11 32 36 33 6 6 12 4 4 19 2 18 35 14 29 4 17 21 19 27 11 19 18 13 37 35 31 13 37 8 35 13 31 6 26 2 8 14 15 25 15 32 28 17 11 19 15 31 9 16 4 15 29 28 17 8 37 10 19 17 38 38 28 1 5 29 30 38 1 12 30 24 16 15 1 29 38 31 40 31 11 31 14 15 34 10 5 5 27 40 2 27 2 23 15 24 21 17 15 39 27 29 25 6 26 33 23 38 28 35 24 39 11 8 12 25 21 35 13 33 15 13 7 5 24 33 22 40 5 28 27 3 1 16 25 11 32 26 5 3 19 7 40 1 40 19 30 4 40 36 25 33 7 20 33 39 39 28 18 25 24 15 21 35 14 10 8 12 14 31 27 10 31 24 15 35 7 2 38 15 17 24 15 25 2 35 32 30 28 30 2 33 37 34 16 33 6 34 4 37 9 38 34 17 11 36 23 10 10 11 33 4 1 4 23 29 31 35 1 2 12 38 29 18 10 27 13 29 30 10 26 11 2 34 23 19 39 35 5 37 40 20 9 1 27 9 26 37 28 36 21 30 33 38 40 36 15 27 9 38 39 21 19 26 8 25 22 12 19 8 40 1 28 40 27 17 22 28 10 5 10 23 37 15 16 1 18 5 9 33 17 27 5 28 12 35 29 11 40 26 18 28 8 9 39 6 39 25 7 6 17 35 20 33 7 23 24 11 6 30 4 34 2 20 40 24 10 13 14 2 12 3 38 8 12 37 14 17 29 36 22 30 10 35 4 38 8 4 23 37 5 15 26 15 5 34 7 21 29 5 21 22 31 38 14 31 28 22 40 14 37 26 24 16 14 1 40 1 25 7 19 39 26 1 40 14 31 3 14 17 10 2 25 25 19 38 34 38 6 18 18 13 3 24 1 17 21 4 17 12 9 16 15 18 35 35 20 22 25 39 2 39 14 24 17 8 4 14 11 40 7 21 36 21 2 28 37 17 14 3 13 29 19 26 2 1 30 12 20 17 36 39 22 35 28 37 37 24 29 24 21 15 22 35 17 28 32 1 20 31 29 25 35 14 5 25 27 31 31 18 39 2 6 28 15 8 21 27 10 25 30 37 22 14 8 29 10 40 10 6 3 29 27 27 31 12 32 40 6 16 24 29 39 16 14 3 2 16 28 17 22 35 23 6 16 32 26 24 2 18 4 14 31 2 23 34 10 37 31 31 34 38 3 23 35 40 37 28 23 31 27 15 28 19 23 20 11 30 9 26 22 39 21 33 32 22 8 33 38 26 29 28 1 15 31 18 6 21 10 7 8 15 1 6 21 14 5 5 15 36 19 23 28 30 26 37 16 32 14 3 32 11 33 30 20 36 11 25 5 14 17 20 18 6 8 35 26 32 diff --git a/Student/task3/Test_H/Hard_H/fft.out b/Student/task3/Test_H/Hard_H/fft.out new file mode 100644 index 0000000..f407466 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/fft.out @@ -0,0 +1,2 @@ +199999: 6 170 780 562 1827 1406 2544 3022 2742 3003 2720 2882 3742 3536 5327 4440 5929 5422 5538 6208 6820 6753 6620 6529 7163 8603 9561 11046 11208 10870 11310 11549 11721 13332 12521 13497 13653 15248 14244 16255 15222 16353 16120 17057 18297 19351 19744 20164 21568 20610 21051 22368 22229 21439 21918 22905 22377 24086 23421 25795 24198 24872 26187 25488 27537 27699 27213 29445 28162 30638 29875 31196 30083 30775 33117 30046 31527 30944 34091 32309 32377 33830 32649 34467 32400 36742 36750 37205 38113 35845 37361 35666 39477 41484 39907 40281 37565 40257 41803 41997 42373 43186 45283 42936 44389 45316 44683 46630 44299 48245 44802 49151 47852 46930 48801 48252 50979 48021 50101 49593 51293 50912 50772 53058 52794 54621 52431 53909 54971 53945 55119 56424 55791 57223 56708 58350 57245 58699 55303 56505 55852 59278 61895 58023 60484 60939 62634 59216 65040 64347 64721 67277 63770 65496 66487 65884 65693 66734 67277 71231 70276 68053 69885 69602 72269 72486 70726 69084 73529 72953 72154 72921 75866 74099 75412 72758 72422 72842 73827 76757 75591 74442 79781 75990 78954 74245 78606 78928 78525 79324 78195 82688 81116 77454 80480 79269 81832 81197 81864 82660 80510 82903 81703 80585 84088 84144 86451 83719 85607 84595 88683 84255 89060 87414 87783 85087 85161 86068 84425 87770 91305 90245 89903 88401 85494 85419 87776 91083 93339 90057 92422 92712 91609 92482 92510 94458 93242 94004 92451 93431 93903 100412 97714 98981 93100 97090 97918 102131 99660 102774 100971 102436 101914 99032 104638 100130 104833 104390 106182 104149 99384 102325 105305 107291 104852 107550 106349 109452 110174 110623 111348 110664 109722 107285 109241 110744 110968 113834 113371 109552 112584 109040 113948 116549 117832 117607 113815 114212 117155 121028 116538 123695 121390 119898 119854 117034 122405 121584 125825 123652 128996 123595 125544 125954 127231 125157 129204 129506 128947 130039 129433 127543 127386 127064 131997 131843 129648 134507 133366 133028 134894 131947 136372 133083 136406 135229 138828 136978 140030 141111 139178 140386 131003 139296 138330 144611 138802 140465 145576 142409 139574 141236 143552 147555 146833 143259 146542 144834 147402 146148 146576 145820 144882 149677 147362 146703 153485 150623 148936 146749 144298 154677 155322 151676 154983 156029 153924 152344 156129 155624 157066 160052 155270 157369 156449 156443 159365 158304 158723 160464 159553 163494 163555 165721 165824 166190 167926 164165 166039 170296 170057 169594 167228 160727 171669 164668 170266 171628 171855 174950 174130 170743 171961 178878 172583 174769 172787 173204 174849 176631 174626 174646 180348 172548 175344 170820 173386 179818 177771 174511 180561 180276 174150 181730 179839 183840 182454 182491 177596 179853 179408 182382 183196 188807 183016 187068 182760 185968 186352 185935 189655 189627 189774 189390 188827 191131 190840 191919 192666 192850 190468 191299 188299 190605 195353 198338 192281 193522 196524 197211 196415 191215 201906 195656 196176 194556 199017 199644 203448 201585 198596 203274 199094 205123 198023 198800 203795 206190 206648 200018 204843 210814 209303 208974 203985 208164 208906 203716 211896 210881 205127 211365 209912 208423 205698 210506 211306 214516 211950 211112 211224 213949 217093 214800 218986 221722 218633 210024 214032 215443 218415 215433 220442 222736 222798 214658 216107 224923 216496 226750 223061 220989 220652 228100 225156 227867 224955 224038 231726 224233 225582 228291 231160 226951 229667 228854 227462 226802 225994 235072 232093 232693 226079 242685 231700 234312 235948 238754 238770 231773 234175 237021 238400 232666 230499 240635 236627 239082 243802 234122 239989 241078 238738 241865 241837 243558 248020 247617 243146 242613 240925 241596 242093 249233 242450 246698 244601 243381 247794 248243 252135 255029 250880 248959 250291 246578 249734 249177 254158 256217 253757 245546 257064 255670 256193 247580 258384 249880 258280 259617 251251 252976 257160 258554 258920 248432 254764 258638 255133 260196 261379 261749 259668 258784 259625 256877 261973 254495 260667 263951 265670 259842 260611 263600 258785 265616 260113 257237 264392 267555 264103 263215 258360 258104 266351 265840 262097 269049 267210 263002 271346 262397 270597 267227 274764 273572 278038 275110 266885 270248 268093 272889 277055 275129 275613 270673 278826 276819 281573 273709 284004 279558 281981 268720 281922 274842 284816 280926 277022 277601 275169 284934 281461 283919 277778 283794 287192 294301 288120 289429 295941 290295 282812 284877 289479 277435 291409 283247 292015 292742 286071 289034 296172 298703 293748 297081 293646 296987 293568 299395 296189 300396 298633 301556 302493 297352 297065 300277 304246 304328 307530 296198 300683 302667 309827 304498 304481 311641 305659 308673 308421 308059 302575 313548 312492 305299 310978 315583 309425 311499 312636 316706 312384 308774 316199 316844 311753 315736 316452 321505 317580 320803 316115 314184 318538 319379 318761 317094 318730 316655 317044 323556 320207 325584 322093 319113 329548 329088 324155 322426 321203 324768 324669 330758 328828 342928 329981 333228 331061 326456 327477 332563 331609 333153 334126 328333 328422 339861 340654 337610 336792 336634 329721 339174 336783 338469 341157 345162 337156 347900 341080 345455 346990 343270 346062 345696 346320 342202 347219 347803 348667 351141 346424 351695 348022 345509 355130 358839 349860 346653 349580 357117 347861 353869 354454 361283 349054 347113 357153 356649 356819 361329 353574 358289 361706 355771 359407 359640 359693 363285 360698 358038 355071 367351 360666 364931 364132 373653 368152 367421 358137 369965 367274 363719 365857 368641 370994 368192 371951 368666 367337 370329 374509 370340 370408 373565 370331 375719 377933 375396 374335 381371 373842 376409 378399 373908 377214 376221 380135 380508 380338 384042 377672 380452 386521 384815 382330 382337 390619 386028 375981 385561 379581 383027 386877 391323 384490 385941 386937 385491 395050 385883 387008 387675 384709 386853 390932 392635 395715 392479 394747 394734 386818 393390 394786 401009 390264 403043 394134 391170 401468 399088 402484 392914 405511 398494 402345 397707 402197 400751 402315 403875 406382 399187 404936 405910 407119 406223 408133 403975 405383 417111 411865 414065 408620 411541 413662 413015 411377 408562 421186 411300 411320 415010 413189 410661 413610 408460 419598 408847 417210 413016 419752 416945 409948 422759 412951 409556 421207 419654 417058 412728 421904 414731 418825 417058 422946 421291 425006 427619 424665 430017 417841 419358 412337 429593 426698 427554 434999 428242 426060 421536 426799 417921 425446 428241 427640 429443 428243 431236 434365 429715 427757 424379 427601 435766 427962 426115 433394 434896 425679 434051 437365 435426 427081 433388 429664 425144 441303 431955 433113 439684 439166 445207 429302 438459 432480 437233 439475 435985 435303 434157 437319 442554 441686 440381 442492 442469 436661 440567 442068 446060 444571 439686 446008 440518 439711 447992 438605 442744 444162 443459 437045 443841 449648 450805 455527 443230 450366 446727 453996 449227 450902 448452 451724 455038 449211 443639 453721 461350 453217 454689 460007 454711 450488 459073 459876 452174 458530 454828 455015 455772 455433 465597 468494 464550 460242 459410 461223 460385 462900 468756 459352 470432 462367 470332 465882 472884 471629 463317 466655 467115 471466 462010 463350 471233 479123 467144 466834 468403 472115 472683 484737 472907 466056 472493 471034 479362 467608 478220 479249 475660 473823 485846 479406 478222 477709 482820 485211 479851 481285 483960 484594 477561 485626 481524 478438 485612 488891 485299 492737 480400 480981 494342 482402 488193 486728 491512 483115 498007 484589 494405 496118 490387 491302 492786 487120 491285 484667 490512 500744 497299 487877 488058 488257 485203 492114 491000 493400 495217 502437 497493 500043 497754 502425 501025 499490 501404 498189 502232 495605 506888 502054 503615 507255 506161 497419 499411 499775 504254 502303 512380 510779 503186 499942 508505 507466 509309 514352 511310 510269 504256 501758 514432 515911 509389 512792 517089 511314 506564 508085 510457 509192 520818 513248 519594 514781 522905 524269 521785 516705 518623 522314 520984 517655 518654 531301 521202 517690 523081 519332 538162 521041 521810 523077 518592 524458 533069 528848 525685 533625 521844 522659 518134 528710 526299 528043 526377 519377 524913 519886 535407 519882 531921 531770 536574 532340 530560 531428 539905 533126 537753 538834 537917 535068 527791 534348 534740 537079 538954 538654 535322 541309 538950 540925 535684 539327 541183 537708 540167 536395 549388 539821 542740 545537 545091 543788 542476 534659 540229 547529 541411 540217 549207 547509 549862 553169 551075 547030 547349 536008 553535 548241 547540 546258 546695 544317 553119 552595 546958 572128 543321 545154 555734 545268 548942 557091 554254 558479 562808 554022 563933 553354 556726 554698 556599 558834 554768 564071 562316 560402 559657 563987 562998 565507 562337 577219 569283 557315 558203 570606 565680 558011 558744 568351 572381 566618 566566 565738 557502 564250 565280 571176 567255 574236 573553 582263 572947 562074 568162 567903 562080 575527 579521 577943 570996 576250 578987 573560 572284 580283 578674 582712 576972 596015 573805 577986 573090 587628 575699 581831 574443 580880 587878 576656 583087 579683 583739 577424 582944 574155 580524 578218 573389 582303 585805 595867 587636 592811 579048 595351 586981 589539 591138 589171 583413 600724 593097 589147 587361 589184 591616 584998 594263 593865 601109 602425 601263 597617 595457 598747 589193 596922 606259 594249 604386 591238 600734 596305 612416 607264 595637 602030 598938 594093 599832 602302 599328 605673 606065 604375 600362 602058 609829 605103 600475 609546 602891 599526 606291 615127 606747 610035 611011 616287 611026 610703 609135 606611 607498 612248 604381 613469 613099 610177 618355 621693 615492 619400 621361 615155 619690 613537 622961 626195 618683 620422 622659 619647 625152 630878 630427 622780 624179 627424 628663 630873 625786 625882 629440 629869 633850 627523 630423 629820 636761 617365 631623 632075 623569 626155 629040 626740 634646 636440 637068 630549 637365 636111 628703 640005 633301 645882 641844 628342 636904 648745 645931 640525 634731 646370 637174 640141 635878 629938 636868 636927 652269 641591 640947 640334 644978 638253 648963 636492 639952 648766 642685 642614 642409 652443 646137 640480 650933 649796 651375 649126 655513 653239 653128 652372 648826 645554 662571 661265 660716 648855 655035 646348 658592 658756 665187 653408 657063 658268 653526 655804 660508 656976 658412 670225 667135 662936 668564 666527 671845 663747 672185 662289 664954 660653 666688 676737 661451 664688 663212 676306 662399 670701 665075 673841 674086 670096 674953 672258 672558 671575 677834 662005 674740 672734 682465 680477 678563 683270 677461 674405 682425 679097 675765 676699 678316 677383 680425 686271 680796 677362 679246 681909 677910 681361 685759 687424 694334 672586 685180 688538 694075 696944 684109 696489 686554 692787 696910 695815 687502 687526 691476 705799 691914 695014 697754 696592 690496 695636 695460 692802 693776 683357 697546 699721 699560 697673 689427 697127 685288 689348 692323 699219 694711 704388 701253 710230 707359 702375 699758 703062 697131 707412 702499 708935 698456 710858 702827 708867 705566 709930 716561 705134 698130 714377 714154 707082 711937 706392 716401 715737 717146 715603 713609 713264 726617 714342 718210 721796 714367 713185 709565 725601 710626 717747 712467 710559 725884 718979 725778 723699 722419 730518 734296 704077 725967 722500 721989 729053 725059 725109 734239 725204 725121 723872 721013 726865 728637 729597 725941 739345 728292 732492 741368 743116 748816 722415 737071 728731 740022 722270 737925 745697 736960 731442 735252 732382 734876 738189 745375 739168 740770 738011 752155 744138 748892 752014 746641 739375 743989 741962 737712 746353 747753 745300 742878 739507 748047 748222 748312 746302 753642 739647 755696 739359 754542 753395 756077 750386 751644 750714 749028 744584 753315 751199 748267 751570 745053 748980 759309 753341 756932 750286 757787 746242 752513 760486 752892 759533 755770 762844 762016 757914 762073 758237 755057 770257 760653 766185 758506 762485 772267 762376 765023 767299 761131 763730 768362 769130 773207 763121 769481 767268 773975 764158 772858 772087 760300 775334 783404 769960 769358 784316 771191 771983 774431 771043 774496 770389 779497 774444 767653 767405 770726 766420 775173 779843 772643 786313 779010 776592 771278 779903 778808 781700 785684 784306 787414 775153 775698 779743 781685 777088 790597 792735 793401 791150 785579 786632 792337 792498 789256 792040 785776 786781 791497 782246 785275 781619 791629 794112 783241 797323 783374 780814 783346 792315 792579 794826 800326 795455 803445 789045 801827 796333 801295 792846 794896 795643 798115 801186 806025 799355 795884 799217 805050 797528 804298 790698 801203 801007 794139 797368 805880 803798 792635 816425 802602 801135 802856 800786 817724 810781 796200 805463 814768 802122 820777 806731 803213 809090 811304 804850 806695 806477 810946 821024 814195 812508 814435 816288 816172 810729 819315 812131 820578 819699 824040 817067 811534 813983 809622 826895 832151 822936 826616 829968 827729 824656 821952 830495 819520 816664 822308 825290 818788 832185 833851 832882 823281 831775 812396 823104 829213 831617 831702 830404 825229 830509 837106 826480 828732 840126 829096 831800 830060 844393 839173 823300 836738 833828 833934 828591 843225 840357 832451 831174 823248 835902 833205 831888 849341 843031 833303 844441 850757 834723 838340 848852 838869 847307 849866 839760 856112 850544 847712 853119 849768 847341 849892 841756 860574 842271 844907 858144 853006 849536 853287 850403 856616 844120 864582 855724 852154 843239 851550 864690 854862 849878 848755 861503 858182 851251 857821 850808 852063 855710 865740 858500 856651 865912 855439 870741 865506 863558 860220 854385 854629 854054 850375 857483 858711 869146 863214 862749 870607 858916 866671 863315 870831 861492 877378 865814 866314 867129 864787 855220 873179 860414 864538 867254 853485 874656 868885 869560 875950 868489 876867 878870 878930 877350 876697 874422 869133 876065 871497 864432 876550 880663 875689 882930 870402 869923 875261 883177 877341 883147 879922 879917 877453 880939 886762 899568 881252 889258 883002 870861 876152 884212 886896 896641 884783 888941 875197 874964 886825 899076 900483 890578 890525 884900 888723 889809 885947 887381 903619 900179 890083 896077 898921 892574 895041 896740 888447 899847 899819 905725 899202 896724 910015 908260 914579 900148 901967 898232 895302 898760 905657 905222 913692 910402 911281 914197 895496 910318 910087 905958 918732 910738 903641 910169 910237 901405 915547 905456 912744 909932 919714 912449 913506 914001 919453 923687 906832 924328 917119 917966 917541 915573 907746 914491 921235 925816 915785 916133 917713 921114 927246 923381 915259 915186 935554 921506 923670 931245 923012 928229 916107 936738 920713 922596 924378 933058 934203 931207 932535 929628 920568 925138 943704 928577 934730 922726 939269 931619 927059 935705 939531 945462 932665 933662 932244 939690 943024 937792 936170 950040 940291 944742 940475 944030 932932 946451 944611 950744 947561 948460 963377 952082 940604 954356 951169 945750 950941 959404 946503 944685 942660 960220 940884 943776 952303 962235 955895 963131 951859 960231 956713 956231 957717 964919 949899 956212 952687 967351 958993 963868 958389 967296 962594 957385 965736 965847 962659 960474 965967 950562 969625 965859 968733 967331 965647 966397 966526 973287 975395 974595 980849 978417 977258 973948 978421 977592 963782 972610 968833 963525 969753 966829 989531 972165 975967 971149 980073 975684 959897 971132 984793 973415 968287 981991 974633 980269 977317 985835 990326 981822 968905 992275 985520 983682 989797 983461 986591 980157 987878 984633 981772 971326 987382 986223 994220 984847 995081 1001107 992251 1002992 986358 980311 989539 996863 990378 991375 1001190 994034 981914 988233 992135 1002803 1007132 1004755 999431 999532 1008323 993753 995215 993741 999044 997086 1002748 1000991 994547 996215 990230 993848 1006260 999355 1009317 1005536 1003012 999638 1002955 1006709 1009126 1011576 1013128 1007393 1003975 1014059 1012863 1008015 1022404 1002397 1009682 1025503 1021126 1007725 1013630 1010887 1002521 1022115 1009046 1014746 1017906 1017558 1016019 1010895 1026489 1016339 1023964 1008294 1009831 1014928 1006796 1020389 1018097 1018953 1015579 1021718 1017474 1028953 1023908 1029177 1041316 1025953 1032048 1035508 1031201 1018554 1034638 1027714 1031270 1027624 1032713 1026477 1034051 1028265 1026043 1032116 1025474 1029562 1042770 1041205 1035383 1024030 1027012 1041728 1031988 1042575 1031542 1042660 1041064 1034861 1038806 1038173 1042739 1038888 1033321 1039385 1041335 1039179 1052160 1043329 1048990 1031519 1040724 1040991 1043214 1036009 1048140 1046384 1056537 1057517 1057654 1048971 1044241 1052594 1049869 1046349 1058585 1044299 1052706 1062477 1049631 1055738 1045197 1046560 1071934 1050894 1053902 1052854 1051842 1044984 1061602 1052689 1064697 1054469 1059155 1066303 1049891 1058464 1045319 1072134 1059904 1069596 1059781 1068151 1076121 1073455 1068407 1073023 1053571 1062640 1058034 1076126 1083048 1065283 1075106 1071143 1074232 1063150 1070693 1071211 1074053 1068516 1085556 1071186 1075423 1076066 1064455 1067709 1057948 1066913 1070845 1063163 1072128 1069309 1077433 1067465 1077813 1063844 1079074 1083487 1076827 1076507 1079414 1067810 1076693 1070738 1062333 1081540 1083493 1082588 1071636 1076262 1078745 1089541 1085037 1076506 1077831 1080115 1079412 1085204 1089628 1082796 1082285 1075515 1083825 1094157 1084563 1090851 1077313 1087553 1092913 1089127 1092226 1094409 1085479 1084279 1084478 1092883 1085749 1085353 1089220 1084933 1086512 1093780 1091062 1097976 1104181 1079801 1091551 1091186 1105140 1089067 1088238 1100112 1102496 1103873 1102343 1094322 1091676 1095296 1093363 1092760 1102340 1093681 1108983 1091727 1110301 1094496 1101191 1091202 1088802 1097106 1104263 1099081 1107361 1101486 1108146 1109370 1097872 1103715 1104839 1093915 1111084 1106252 1097454 1094253 1113954 1113642 1112382 1109547 1119392 1112861 1113907 1117152 1119407 1107387 1108554 1117912 1112916 1111527 1118690 1124340 1117100 1105291 1108203 1120616 1105510 1124115 1130536 1122106 1118207 1117137 1131648 1117986 1123689 1122329 1120026 1122691 1115309 1130114 1138783 1118213 1121377 1140815 1116607 1114066 1136199 1121311 1128743 1124991 1141913 1137416 1124762 1126529 1127759 1129731 1130325 1126338 1116281 1142538 1125004 1132647 1139641 1143751 1125100 1140980 1130211 1142492 1128314 1145717 1126977 1136232 1143405 1130676 1148137 1139567 1145378 1135365 1141733 1136463 1140602 1136718 1147099 1142392 1132580 1149202 1153046 1156957 1133994 1136387 1149087 1147768 1140972 1152771 1155528 1152270 1153084 1161726 1150487 1141302 1141045 1149388 1154535 1150278 1155760 1156590 1166089 1157339 1150842 1157115 1167777 1152995 1159096 1177370 1164973 1142638 1160284 1169965 1155921 1164687 1168376 1161201 1159404 1170149 1167287 1155405 1164735 1172981 1162869 1174345 1169846 1171425 1175980 1161702 1158533 1174734 1172490 1165958 1160253 1177423 1168600 1183120 1174584 1169613 1180244 1166034 1187079 1171927 1186558 1190160 1192327 1189231 1177711 1186973 1176353 1189085 1198723 1186663 1183990 1187219 1189102 1177644 1183453 1174609 1188797 1179231 1180036 1193747 1177292 1182183 1186740 1191866 1188534 1205274 1184389 1185191 1193319 1184295 1190757 1198879 1192353 1206047 1190195 1194204 1179941 1184072 1199966 1187503 1201944 1192142 1202243 1183945 1205389 1204662 1187030 1194083 1206384 1218002 1193494 1201584 1200232 1200490 1205766 1196012 1203146 1186515 1198191 1209019 1206673 1209766 1205354 1204617 1201978 1204240 1209484 1217837 1219039 1207162 1200644 1202545 1211257 1216158 1204065 1213841 1205236 1213197 1208197 1216011 1217008 1219254 1218896 1221831 1229408 1203929 1220183 1216619 1210770 1226832 1202544 1221456 1221548 1215258 1206380 1225004 1213701 1228153 1225352 1216130 1222245 1208701 1237736 1230245 1225856 1231946 1234839 1224201 1223570 1224181 1242668 1224531 1234532 1233115 1241330 1236916 1230066 1231673 1223968 1238897 1235916 1245127 1238384 1248528 1245351 1238280 1232606 1227669 1226327 1235813 1228969 1232213 1240166 1241204 1239533 1238705 1244768 1240199 1242806 1241275 1258979 1234364 1240387 1261405 1246290 1234830 1253231 1237146 1250235 1246501 1249757 1241777 1263277 1252304 1238395 1245968 1246193 1249841 1245205 1255323 1250734 1259863 1242012 1250225 1243741 1248032 1255513 1246525 1246433 1261959 1265902 1259830 1250157 1259539 1257662 1261418 1247740 1258747 1251882 1248423 1250202 1248613 1264981 1255571 1253121 1269265 1261207 1258643 1246171 1264297 1258647 1270769 1259252 1268948 1268953 1265758 1264591 1270831 1268758 1256007 1271767 1273526 1265518 1280606 1262774 1274710 1263558 1265780 1272680 1275089 1267191 1281507 1276974 1273067 1277781 1277969 1265057 1269790 1278006 1275636 1262688 1285198 1283702 1280236 1267723 1273158 1276996 1274866 1267708 1275581 1286698 1277603 1286576 1286789 1272162 1278807 1274562 1296682 1280983 1283066 1287464 1289882 1293373 1286091 1285651 1283628 1290824 1284695 1285811 1281492 1286854 1301464 1283000 1299050 1277054 1291004 1299613 1297620 1278579 1300073 1293809 1278802 1291917 1292669 1288585 1288677 1303009 1292103 1299395 1294665 1298240 1294364 1290205 1306578 1300287 1295899 1305598 1295501 1293435 1309263 1295358 1311933 1309463 1296779 1314858 1289818 1299684 1308092 1301293 1302158 1306719 1318624 1313932 1307987 1298715 1305642 1307044 1305160 1314857 1308448 1298919 1307925 1313219 1297433 1306545 1311599 1319891 1314884 1310819 1303265 1322396 1318090 1296731 1315750 1319403 1312580 1334565 1310858 1298218 1304429 1317904 1320004 1316480 1322068 1330624 1319878 1312168 1317614 1303851 1330202 1313141 1326324 1315090 1327335 1327677 1320571 1329928 1324887 1326415 1331739 1329800 1326824 1330230 1330939 1321890 1310521 1329640 1326726 1327441 1330886 1326377 1333600 1333945 1331329 1341839 1332026 1320401 1339684 1352743 1339109 1335819 1340239 1351941 1342384 1330998 1320967 1344487 1338247 1328876 1329138 1340168 1346005 1343648 1328656 1344347 1331021 1330204 1348766 1339207 1348519 1350481 1356720 1335302 1355558 1350600 1339334 1346856 1344366 1355293 1350414 1353318 1338116 1340683 1346500 1363477 1360499 1358597 1363315 1351865 1358347 1373969 1346020 1362371 1357724 1373626 1347985 1357259 1361029 1354474 1356640 1350673 1346657 1351014 1358052 1360883 1365729 1371770 1364183 1372985 1372170 1363901 1367878 1349289 1368067 1372663 1361831 1369349 1367081 1371820 1358477 1382851 1360830 1383033 1363588 1372839 1365009 1363992 1366642 1378673 1367390 1380051 1377575 1367270 1369360 1370343 1372214 1382999 1364619 1364686 1386785 1373767 1385588 1379300 1370987 1387264 1378222 1369952 1371089 1387524 1380396 1379703 1380056 1385367 1381976 1388159 1380325 1374417 1391734 1378788 1385361 1379863 1385841 1386839 1399586 1388199 1384811 1397742 1396601 1383078 1376704 1389340 1398257 1385231 1394267 1390599 1388862 1384728 1390806 1397668 1397033 1392393 1402670 1399986 1396990 1392131 1397683 1403831 1408102 1387565 1392806 1405647 1388221 1397855 1401058 1385050 1391328 1387581 1404161 1393644 1401320 1397796 1402359 1402307 1401481 1400223 1403687 1402706 1396783 1395468 1423011 1401932 1405434 1406366 1413048 1413170 1398518 1411560 1414209 1403579 1414626 1417164 1421293 1404461 1409552 1407782 1415532 1404997 1422616 1418686 1415847 1410538 1418517 1410800 1412421 1415533 1431149 1418969 1411962 1421599 1414980 1425392 1430004 1412940 1431060 1415248 1417949 1426446 1430251 1411835 1415409 1419258 1429763 1436527 1419969 1420879 1431411 1423703 1422588 1433365 1425939 1435146 1444688 1432146 1439022 1432401 1431459 1429553 1427649 1442507 1425434 1433338 1417017 1422798 1434915 1441868 1429812 1450265 1450739 1415586 1433306 1441397 1441746 1433800 1442096 1431474 1444576 1447601 1433102 1430441 1424081 1441091 1431984 1452037 1431872 1438418 1443073 1436182 1444364 1445587 1446963 1443749 1440042 1447892 1455210 1461255 1448340 1439592 1438181 1442884 1446994 1448427 1457014 1446304 1455200 1448037 1456954 1444725 1459321 1452601 1460735 1456623 1441274 1453679 1453009 1455661 1454958 1445498 1464458 1462160 1457587 1462351 1460029 1447519 1440666 1459988 1462451 1466922 1462235 1460766 1463262 1460497 1468340 1477135 1462848 1459109 1473523 1486308 1475485 1461229 1475846 1467675 1473635 1472674 1468313 1482059 1471452 1459684 1470053 1472737 1464378 1477865 1467941 1485518 1478336 1470894 1489244 1474951 1467980 1475952 1473767 1491472 1493608 1473682 1472455 1477427 1476293 1470825 1494732 1474500 1485212 1491851 1485940 1489012 1469152 1490635 1484387 1479635 1484345 1484563 1488437 1490227 1483570 1496679 1490247 1477675 1476209 1508630 1487255 1495404 1485802 1493229 1502604 1492406 1486226 1482843 1490299 1479808 1506590 1486826 1495590 1485572 1500125 1490323 1492239 1486634 1485944 1505522 1494705 1511222 1508953 1521829 1496622 1509512 1497475 1488362 1498345 1505813 1512686 1498814 1508466 1499646 1496442 1500107 1503561 1510144 1505339 1513876 1503416 1506567 1499485 1506863 1491093 1524771 1508821 1505420 1508095 1502751 1519190 1500199 1517354 1500144 1499652 1504738 1510777 1506520 1497149 1513987 1509913 1516956 1530490 1510532 1525403 1521374 1518306 1500579 1503577 1520533 1512374 1528523 1518985 1521639 1511170 1512811 1529523 1521380 1520644 1515404 1502806 1523788 1522998 1519511 1525119 1530682 1515978 1533073 1531702 1520698 1525677 1517173 1527210 1521912 1513958 1518729 1519285 1528092 1528354 1525518 1519777 1544761 1526193 1524946 1533674 1537005 1535117 1528591 1530905 1538494 1529824 1534284 1535707 1538685 1539518 1541092 1532273 1528171 1544944 1529631 1529860 1544403 1530703 1528585 1539496 1528079 1528112 1533829 1522433 1546136 1527047 1533992 1538935 1523745 1526201 1539161 1539539 1534670 1543269 1545537 1534064 1549540 1535085 1541006 1555196 1546202 1534255 1527372 1544769 1531863 1550546 1549107 1541165 1531702 1532690 1536636 1553972 1552226 1548001 1550289 1552027 1542083 1552919 1547997 1552727 1541859 1549040 1561174 1547556 1546366 1549729 1559545 1559861 1548681 1550967 1548032 1551283 1566550 1552189 1573791 1565244 1556309 1565085 1551151 1566678 1568582 1556207 1559185 1562205 1553358 1564323 1569623 1558723 1550188 1563263 1572286 1558415 1564048 1575391 1562486 1556425 1564849 1570015 1575679 1575538 1570986 1560959 1558915 1567375 1556465 1561656 1555091 1573745 1574608 1589603 1557772 1565658 1558139 1584367 1564087 1584232 1563006 1575686 1577786 1577151 1577272 1561674 1576623 1597523 1581169 1563744 1575430 1570493 1577897 1576112 1577738 1589067 1575797 1572570 1581445 1572657 1582212 1589800 1581042 1587442 1574366 1599824 1585335 1588230 1584767 1589682 1579398 1589428 1574923 1588685 1593444 1584303 1600061 1572777 1595382 1598561 1585003 1591766 1601161 1583537 1587082 1575619 1591552 1595369 1578732 1595970 1599795 1586747 1592988 1603212 1593749 1588810 1603490 1598300 1602648 1590478 1593811 1588569 1606553 1585173 1602665 1605712 1595912 1599449 1605802 1603131 1603180 1599932 1601578 1604588 1597030 1605124 1597387 1604130 1588650 1618381 1603477 1620220 1599498 1603430 1615166 1589851 1604803 1614169 1588497 1604280 1612805 1613978 1613916 1604602 1599751 1606506 1620237 1606180 1614112 1618774 1612100 1615354 1625209 1602258 1599848 1610274 1617153 1604485 1601398 1607470 1585085 1618262 1636546 1610763 1624974 1609601 1620802 1610528 1620237 1615830 1616405 1614518 1624771 1609454 1619625 1619104 1614577 1622309 1616555 1627120 1621863 1609687 1620883 1610593 1607997 1626163 1629814 1629486 1603816 1619085 1633322 1625269 1619834 1616738 1624090 1606791 1624874 1623844 1625574 1631717 1641539 1629672 1637190 1627546 1625794 1617300 1628011 1635197 1638089 1629922 1629664 1627129 1623559 1635807 1629471 1635399 1631315 1621902 1622472 1624563 1641002 1628190 1642904 1629781 1639053 1642494 1634223 1608656 1631805 1634636 1631776 1634014 1642440 1646616 1631982 1644995 1628978 1641181 1642543 1624473 1638382 1639586 1621488 1641507 1629999 1629187 1641175 1640954 1635723 1642219 1633060 1642182 1636284 1639813 1652129 1644520 1649234 1643898 1644182 1638926 1650170 1634936 1640789 1629923 1646990 1641730 1656934 1651911 1647242 1651910 1647355 1638722 1656443 1636978 1658691 1661414 1652538 1658939 1652242 1660992 1644036 1666921 1643935 1649277 1654451 1647274 1667447 1668633 1654803 1662434 1662347 1642406 1661485 1644392 1666522 1642628 1646816 1651490 1663302 1653491 1674023 1663889 1665084 1664175 1658585 1660120 1666078 1654001 1658133 1675120 1654455 1667981 1660448 1669142 1670235 1675858 1666714 1667612 1657754 1646694 1666900 1666083 1669508 1675817 1680512 1670895 1680961 1663437 1676562 1681347 1665370 1674541 1670939 1684895 1666528 1678860 1664375 1688400 1677140 1690738 1671094 1687001 1653549 1683487 1675917 1675999 1693908 1682847 1675502 1686920 1682469 1687326 1679685 1684995 1682116 1686911 1679148 1695269 1680937 1681171 1680354 1678170 1679048 1710965 1685619 1689481 1685737 1690758 1697525 1706222 1686819 1690007 1697610 1685140 1694171 1673256 1702593 1694023 1689123 1712929 1708753 1699178 1705522 1703862 1694633 1693209 1695268 1689292 1692636 1697431 1695697 1708451 1710697 1697510 1695243 1707540 1696739 1699184 1699534 1709962 1710494 1707725 1713113 1705588 1727622 1697988 1701334 1715319 1702610 1710221 1705257 1703625 1719639 1725597 1712981 1717180 1702876 1712358 1704879 1701710 1708725 1719494 1720170 1729022 1720180 1708738 1715955 1714526 1719921 1708612 1727021 1718220 1710140 1723230 1713843 1728016 1730042 1729880 1717791 1714712 1728096 1719328 1717377 1716292 1724976 1704976 1724572 1728295 1730396 1715751 1740607 1714285 1724700 1720500 1719449 1725662 1739425 1729032 1734620 1748762 1738049 1734232 1744475 1730874 1738688 1746731 1734619 1735190 1741610 1703870 1731514 1711951 1741461 1732884 1747962 1737947 1727410 1739940 1731966 1746723 1736218 1746979 1741723 1733394 1745487 1747609 1747408 1727669 1719778 1740935 1743740 1749758 1758458 1740419 1729401 1732013 1748983 1744872 1750048 1752194 1766874 1757500 1748826 1735111 1767888 1735411 1738161 1746531 1747546 1745462 1744098 1747618 1767855 1751843 1739476 1736984 1746072 1742261 1752272 1732077 1770873 1757252 1751548 1754345 1741386 1746935 1759703 1775552 1746058 1744114 1764340 1761519 1756914 1746344 1757749 1759984 1761842 1762877 1771630 1751416 1734435 1776405 1771510 1763883 1769138 1766318 1772005 1763880 1749557 1772365 1763324 1749602 1765008 1774853 1767348 1772895 1773353 1755180 1780390 1752534 1766412 1782945 1756689 1781601 1770329 1761766 1782938 1761939 1772682 1782122 1775782 1766302 1774686 1768136 1768158 1764726 1773396 1783202 1774766 1764163 1767265 1779277 1767006 1777932 1778322 1774479 1774073 1777387 1776363 1792047 1778392 1779997 1766155 1791581 1784176 1787347 1794841 1781398 1784197 1801856 1777522 1783348 1792562 1795972 1792917 1793274 1772910 1792376 1793022 1800054 1790987 1803397 1802379 1788928 1790098 1792690 1789345 1788954 1789521 1782519 1783878 1791504 1810706 1802779 1800505 1806233 1805941 1797425 1780227 1800392 1790424 1810594 1789330 1796989 1802361 1812013 1791256 1816756 1783360 1795086 1804962 1800124 1797208 1791837 1797413 1801641 1819748 1798978 1800471 1801030 1809080 1806040 1807257 1790080 1815936 1813152 1803090 1804301 1823200 1806004 1803123 1811245 1816421 1807340 1826819 1814154 1807335 1811981 1818703 1820390 1814338 1797738 1825947 1815142 1804978 1815204 1808899 1815426 1820450 1828749 1821032 1821121 1809385 1823216 1817094 1821378 1818386 1832414 1824631 1836135 1838996 1848188 1813903 1823898 1837329 1814567 1834204 1817197 1832486 1827691 1831858 1823677 1832645 1829166 1831309 1821813 1818863 1827569 1820468 1834267 1836087 1836077 1828499 1846258 1825305 1825690 1820736 1820601 1828572 1822142 1813427 1838424 1822948 1824781 1826649 1834426 1823442 1834963 1833287 1837598 1827932 1842556 1834466 1831731 1843474 1834168 1848288 1840888 1848684 1858335 1851633 1847146 1836948 1836712 1853868 1844998 1849096 1856636 1859650 1836207 1838754 1857138 1852311 1842683 1843783 1858947 1844448 1854670 1852693 1851800 1860604 1860047 1847147 1834473 1847494 1849190 1868211 1866416 1874399 1860382 1870415 1867138 1851702 1857052 1846961 1869435 1859447 1871036 1864290 1866449 1837153 1875099 1856604 1868085 1858352 1861651 1850169 1876211 1868369 1868746 1872840 1863894 1870963 1873124 1885817 1860145 1861306 1875123 1883245 1877413 1870948 1875218 1865241 1873935 1871293 1873803 1871644 1880995 1878172 1887320 1871881 1867492 1872947 1889584 1867917 1878054 1879372 1885948 1880151 1871468 1857031 1880250 1898892 1864895 1883421 1881544 1890000 1884229 1882764 1895127 1899959 1888895 1876243 1898777 1890938 1888064 1878282 1892129 1895356 1891157 1898407 1883176 1877120 1891058 1880243 1907635 1891986 1890320 1891143 1893468 1902457 1886916 1892466 1880856 1885516 1899038 1907372 1898562 1884726 1893640 1904076 1907101 1916984 1892955 1906686 1895253 1892830 1897105 1898221 1915242 1867330 1909822 1904548 1894782 1911263 1903772 1897103 1910769 1894980 1901448 1900872 1904535 1891550 1923333 1920934 1912668 1917004 1926596 1917945 1906621 1914528 1904762 1923564 1910057 1923262 1905044 1923309 1929193 1922389 1912290 1911726 1907809 1914183 1920414 1914534 1908465 1925119 1913853 1914508 1926787 1930633 1915935 1913296 1916298 1917268 1918891 1926656 1930697 1912855 1919778 1930090 1927993 1916233 1910851 1912103 1927690 1913230 1916006 1936670 1926753 1926968 1927928 1915329 1933929 1955065 1931686 1935152 1916144 1944733 1939175 1920634 1917905 1937258 1932670 1933878 1926246 1938358 1928700 1941468 1930636 1915533 1943792 1924218 1937451 1935322 1941605 1939289 1925302 1937067 1944107 1937851 1934569 1941394 1927535 1941889 1950286 1943937 1939622 1928034 1941119 1950658 1952288 1954463 1946622 1954167 1936685 1943468 1935047 1951648 1945358 1931737 1961362 1971679 1945562 1949009 1957945 1939089 1936438 1948243 1960525 1948971 1950553 1951009 1951306 1960210 1950724 1965928 1955439 1962741 1954733 1961934 1938425 1947275 1957968 1955826 1949016 1958332 1970517 1963613 1950745 1958163 1949194 1973867 1967695 1947009 1969097 1971097 1963358 1976467 1975032 1971988 1965516 1970136 1962896 1960352 1966558 1969607 1969287 1967348 1963859 1968087 1980665 1990093 1987964 1985494 1968925 1969233 1970530 1973010 1972607 1973777 1989102 1984173 1979491 1982606 1978597 1979072 1976923 1967587 1977125 1985158 1978234 1982553 1986195 1974787 1990080 1983486 1977793 1981810 1978528 1990474 1980061 1991988 1974188 1991604 1972396 1986188 1982968 1988648 1999820 1976357 1990320 1986520 1995369 1981034 1984185 1985953 1983902 1993610 2000501 1978814 1991231 1980873 1995728 1999713 2000542 1992825 1988250 2012722 1993484 2003338 2001823 2002449 2008439 1980568 1995011 2015986 1994975 1992137 1992537 2006677 1993428 1987136 1997503 2000184 2009095 1993034 1992146 1995039 2016489 2001011 2012281 2011010 2004509 2019819 2020714 2005964 2004688 2037798 2004358 2026211 2024711 2000078 2002249 2001096 2015167 2005432 2031120 2009428 2012754 2017919 2014516 2005596 1995352 2013270 2009292 2018277 2019924 2017234 2026670 2016994 2039924 2027835 2020492 2028484 2021871 2022440 2019052 2019971 2025796 2014749 2024888 2032247 2032238 2027603 2020177 2031686 2029016 2024636 2008574 2038468 2020973 2020996 2015046 2017622 2049578 2022504 2022189 2043450 2022746 2026299 2026385 2044084 2045738 2029830 2041129 2043114 2030671 2048327 2045050 2039143 2048459 2044217 2042340 2045266 2029515 2031952 2032452 2042643 2067268 2033441 2042029 2038444 2031187 2045439 2041816 2046043 2036910 2043558 2039198 2029633 2039462 2052939 2061776 2045716 2036026 2048742 2049950 2054918 2047096 2066557 2050449 2046869 2065283 2054684 2051998 2054979 2068269 2060564 2055867 2034976 2059664 2048712 2059238 2058830 2049373 2061141 2047070 2069528 2052772 2050410 2054602 2048550 2055088 2056113 2056996 2068957 2036457 2067810 2068542 2081858 2061169 2055792 2041284 2073153 2064817 2056377 2070507 2054605 2056332 2070809 2070532 2073389 2053768 2065236 2064413 2063874 2082378 2047068 2077241 2071360 2079368 2067673 2078165 2070303 2065880 2070569 2059564 2065621 2073965 2086185 2055705 2077530 2067046 2077368 2067773 2082817 2076604 2061154 2079330 2073452 2073879 2088963 2080050 2062494 2075199 2068172 2088671 2093044 2071026 2082473 2064821 2094753 2076839 2110799 2079148 2094156 2097535 2079742 2085257 2070775 2090309 2088972 2100759 2080889 2102309 2082838 2091344 2092345 2071367 2077750 2080293 2095441 2087667 2091905 2083310 2092122 2094256 2088977 2092484 2083609 2109856 2094594 2090771 2093733 2098463 2093212 2099822 2098742 2094956 2102670 2077531 2094516 2104484 2092108 2091428 2109868 2104861 2105346 2111411 2106976 2079082 2125209 2112277 2101101 2113876 2118839 2119118 2113500 2120029 2104413 2108525 2093099 2124804 2110182 2121659 2116990 2094485 2110678 2098540 2089598 2092628 2111436 2116332 2120720 2126268 2128526 2107435 2127606 2101896 2121583 2136339 2109100 2119329 2116369 2113869 2112451 2114290 2118816 2113408 2117981 2106952 2109966 2113024 2126856 2114925 2148518 2126544 2119640 2118098 2107902 2128285 2118841 2123551 2125174 2112891 2124194 2124538 2140919 2137599 2120186 2135030 2139742 2125514 2118314 2146411 2134708 2114647 2132090 2137559 2129572 2127940 2138233 2129431 2128130 2142226 2140062 2125600 2150064 2135846 2137019 2144984 2147904 2153538 2124527 2147686 2141086 2138647 2136178 2152073 2127585 2142963 2153774 2161273 2137126 2158421 2150847 2137690 2125680 2141388 2153226 2131751 2146691 2154970 2147684 2138527 2142446 2151632 2148771 2162648 2159381 2155737 2165706 2174889 2158832 2168860 2166911 2158721 2135057 2163479 2160609 2156276 2170290 2182960 2155639 2171983 2160931 2166284 2158581 2173851 2155932 2157315 2157003 2162352 2169910 2163513 2163105 2171787 2166991 2166774 2165647 2175526 2159635 2179521 2170649 2168754 2150961 2185887 2168362 2187181 2172158 2166192 2169683 2151357 2183301 2179085 2181081 2165818 2173962 2153906 2172370 2174732 2182198 2156751 2171272 2180542 2178848 2158452 2159593 2183039 2176704 2208551 2169137 2189960 2178655 2162484 2171383 2175972 2177047 2180922 2195995 2186167 2181162 2183576 2169473 2196249 2199251 2179971 2170072 2169845 2187762 2193239 2190575 2186590 2182085 2171280 2192738 2207695 2190894 2190828 2181954 2191588 2182695 2198768 2195479 2196329 2199527 2179292 2174007 2187256 2193903 2195039 2194174 2199634 2190720 2179818 2193258 2199391 2199230 2191425 2187349 2198282 2197586 2198532 2211314 2215208 2199990 2211871 2208342 2173547 2189328 2197885 2213509 2208034 2206516 2189611 2190893 2203421 2220520 2203314 2188312 2220272 2205013 2210026 2202075 2224040 2206674 2209500 2205736 2209689 2203704 2208789 2197050 2208000 2207850 2199971 2213427 2211141 2206077 2217274 2209948 2198671 2209169 2231585 2220047 2218245 2198303 2207288 2234160 2210216 2220897 2231201 2226253 2213192 2208300 2226946 2222764 2213020 2220564 2222015 2224173 2236812 2227727 2240470 2214919 2230690 2219512 2223962 2222429 2221898 2248384 2234459 2235404 2207316 2224127 2227281 2224711 2246042 2221237 2239834 2231512 2238573 2214941 2240614 2228711 2256485 2245760 2254059 2217016 2244589 2227994 2237066 2236097 2233246 2262544 2228233 2236301 2223709 2237629 2232430 2224019 2260655 2254912 2243571 2237625 2255775 2230911 2249760 2243907 2245336 2246768 2254765 2244924 2249675 2250394 2241571 2253948 2259753 2255197 2232339 2243127 2250313 2240164 2254334 2248947 2243961 2258033 2243144 2235103 2237708 2233431 2251397 2248896 2250978 2263905 2248325 2261491 2268055 2256958 2267378 2265582 2253301 2257821 2251470 2243469 2259749 2254739 2271096 2257848 2272991 2268991 2262862 2261628 2264241 2261528 2258226 2256597 2261296 2268062 2257446 2259570 2270750 2272328 2270186 2252575 2279392 2259570 2271251 2272371 2288660 2280974 2262812 2266005 2269958 2281115 2261330 2268127 2273364 2261340 2275328 2281150 2266989 2295201 2285928 2294228 2272143 2272427 2263477 2276932 2277821 2293575 2289820 2265185 2248408 2285651 2280786 2287570 2277527 2260840 2285404 2290921 2284191 2268532 2284503 2287447 2297782 2276352 2279788 2288920 2282757 2304164 2299127 2278284 2292004 2273153 2291263 2293200 2299889 2279922 2270006 2297554 2286497 2291007 2286638 2301128 2298985 2294723 2293314 2286590 2285734 2300003 2293649 2296072 2297339 2303296 2287029 2313649 2305506 2309691 2298665 2313745 2296209 2297256 2294657 2282490 2275972 2301881 2296165 2308519 2297728 2313284 2305748 2314562 2283830 2307121 2288594 2300555 2316741 2320848 2317108 2307006 2306235 2322533 2305187 2301112 2288201 2294616 2309544 2291509 2327455 2300937 2320295 2306420 2317408 2334760 2306177 2320538 2310913 2311532 2306304 2336318 2321717 2332860 2323631 2308382 2322713 2319422 2308618 2300796 2321098 2319275 2320154 2320399 2350263 2316098 2322481 2307097 2317903 2325476 2334498 2352124 2327159 2331794 2314798 2338603 2304022 2326003 2320077 2337762 2347873 2341195 2329087 2341356 2347045 2314461 2336195 2332942 2344865 2331360 2337521 2347847 2330210 2332765 2336355 2337393 2338180 2330882 2341674 2326355 2321293 2343109 2320101 2333665 2326190 2354646 2338960 2357945 2362348 2333218 2335308 2332605 2348562 2340276 2348473 2346385 2351130 2337061 2346818 2347347 2351485 2329879 2333126 2341027 2343781 2344197 2336364 2344036 2333517 2343411 2347758 2343408 2328806 2338784 2351570 2319729 2359396 2345632 2347587 2345657 2362281 2345405 2351538 2354771 2347725 2345840 2356027 2369373 2355560 2369892 2351619 2359540 2367295 2348019 2388570 2362712 2343193 2364276 2364537 2353676 2339183 2362729 2354220 2370478 2356264 2365245 2354938 2370614 2380871 2375424 2364270 2345626 2358477 2372527 2373822 2359607 2350962 2353070 2367907 2361977 2379443 2376669 2366571 2355872 2364458 2382465 2376919 2356699 2370382 2376297 2375304 2366114 2379705 2344207 2381486 2365307 2389476 2376068 2397936 2365258 2361055 2365213 2373386 2363020 2377776 2393848 2375652 2376074 2380012 2396652 2364401 2357268 2374434 2371810 2394813 2385464 2385295 2370803 2386559 2378348 2383311 2373531 2389736 2384837 2387956 2385762 2387801 2373240 2384323 2373622 2389442 2385405 2394971 2402884 2398492 2390395 2398723 2390239 2399144 2379340 2401751 2401762 2406064 2384542 2398352 2388684 2373613 2405020 2390388 2389551 2390589 2402850 2419529 2411268 2416014 2400437 2428371 2398906 2397278 2409450 2412594 2392396 2416394 2404096 2406249 2396278 2388008 2405162 2402756 2401959 2396937 2411677 2396236 2404082 2409413 2421403 2406645 2406370 2411542 2410347 2398560 2385622 2412282 2410659 2413682 2404602 2428832 2401053 2420007 2422801 2420316 2404142 2428078 2420976 2430298 2407488 2421834 2424660 2415245 2429495 2404404 2438395 2418388 2415750 2414361 2428826 2420138 2409667 2434741 2420901 2431835 2416725 2405581 2442568 2408235 2431922 2405829 2419389 2418970 2428033 2434195 2420397 2416701 2436781 2439379 2427597 2436100 2436649 2436852 2416735 2418441 2435105 2443804 2428778 2434258 2429798 2430742 2424894 2429957 2424566 2427575 2429415 2435865 2431285 2437236 2457710 2426471 2426941 2427614 2447713 2436419 2439744 2446419 2443305 2438837 2441659 2442845 2446725 2441439 2432594 2446832 2451122 2461627 2433424 2446249 2454616 2445830 2446223 2438882 2446085 2458333 2454718 2440641 2446082 2459419 2461714 2470248 2459673 2454068 2460005 2452423 2444962 2465045 2462741 2446055 2449037 2452980 2434149 2438508 2442155 2461634 2446800 2445951 2438939 2459907 2459711 2457642 2453816 2454576 2461234 2463037 2462841 2463004 2474989 2472231 2449544 2466691 2440155 2456795 2471828 2465409 2462093 2476191 2457276 2463873 2472026 2472738 2467736 2466432 2473411 2480357 2454431 2445096 2488891 2487406 2459647 2470637 2475448 2484622 2481752 2490658 2479166 2467542 2447408 2479088 2453639 2484803 2476991 2466084 2471600 2483934 2485258 2477026 2489874 2460858 2482107 2486549 2479242 2488773 2496816 2465451 2479536 2477977 2475690 2490624 2475270 2486221 2478491 2487988 2478834 2495878 2501692 2487530 2459741 2482874 2502510 2505857 2493766 2477488 2504324 2502058 2466255 2499067 2490319 2469981 2490168 2507739 2512973 2477843 2485627 2505594 2494303 2490242 2500261 2494726 2487667 2487804 2479707 2508196 2480839 2482519 2492299 2506363 2495933 2514714 2507613 2490897 2505760 2484921 2510028 2503702 2503000 2494256 2521821 2520804 2494720 2503457 2505206 2498449 2503301 2506319 2536918 2497301 2505150 2501486 2507236 2504843 2498799 2521418 2520933 2509213 2511123 2515905 2521536 2499643 2508797 2507783 2510243 2522035 2506739 2525364 2509821 2511381 2511281 2533455 2521720 2501150 2520369 2505483 2511899 2528961 2532997 2512645 2506829 2519048 2530448 2499124 2525585 2518227 2544622 2519043 2520500 2525246 2533357 2509527 2528191 2547960 2529422 2511798 2528603 2548172 2508102 2534158 2524381 2539957 2532429 2525284 2520370 2521496 2521769 2549026 2522903 2535366 2528370 2537765 2540932 2534243 2536925 2524875 2541678 2536209 2539650 2527393 2551652 2522759 2548736 2541539 2534257 2532735 2521976 2548760 2533029 2550149 2541670 2546588 2551530 2531984 2555391 2535006 2535194 2547582 2556539 2545266 2538071 2549577 2537850 2543016 2541117 2557718 2543830 2560586 2544060 2550874 2557314 2553197 2543154 2539192 2541803 2537100 2548356 2547899 2546233 2555134 2569971 2550543 2563286 2561782 2544138 2581146 2556165 2543983 2546084 2560375 2548010 2542358 2562614 2558855 2554036 2562462 2560964 2583584 2555711 2571418 2560706 2549819 2564087 2560624 2562577 2553191 2567656 2564903 2586448 2574676 2569578 2578786 2586066 2560401 2553028 2606401 2581494 2571813 2570168 2567096 2576714 2568262 2565609 2573004 2563254 2544776 2583288 2570466 2587964 2575180 2577764 2585387 2572604 2584997 2570731 2582059 2582926 2597282 2580964 2588751 2596873 2593057 2573003 2583252 2586424 2568811 2589219 2587903 2558589 2604736 2605046 2603223 2589859 2589523 2589580 2593884 2592867 2577519 2584645 2598097 2599411 2607696 2587841 2605384 2589891 2605687 2615010 2613740 2596807 2596947 2584718 2610353 2598440 2586961 2599468 2596965 2591202 2608121 2600994 2603041 2595244 2599495 2622061 2608186 2608036 2609053 2637550 2613617 2596383 2635892 2601857 2610408 2606537 2620456 2615227 2613047 2609307 2620449 2613027 2613247 2610097 2598412 2621802 2628496 2619084 2608972 2625450 2619179 2623114 2618085 2612955 2627232 2619741 2605858 2628887 2619915 2622719 2622903 2633701 2600643 2627185 2630184 2608854 2606006 2631559 2625939 2613906 2603643 2627218 2640613 2619843 2641108 2643685 2618807 2640263 2611985 2635541 2627346 2638172 2628709 2624795 2632123 2626799 2619153 2629304 2632281 2634225 2635149 2646600 2617222 2628389 2637590 2637366 2642257 2644732 2623397 2643299 2636221 2612268 2629760 2636413 2646638 2649993 2649556 2643296 2637881 2639606 2624182 2615127 2644238 2654384 2625585 2639575 2629637 2620852 2626276 2620165 2639049 2636660 2635670 2630926 2641948 2642387 2632735 2644077 2651298 2646379 2661713 2655301 2645879 2633320 2636073 2653661 2650722 2652912 2642705 2641596 2648934 2639808 2658276 2644043 2646155 2648287 2646447 2657172 2647352 2642939 2649726 2637879 2647594 2656859 2657679 2654126 2641645 2642726 2648357 2647738 2661712 2677273 2643606 2658331 2626329 2651639 2670232 2658991 2655847 2650919 2660060 2657624 2647598 2654319 2664903 2647534 2647396 2676403 2660976 2661058 2645220 2664077 2663324 2663591 2672737 2665362 2668199 2658240 2671404 2646248 2681685 2649153 2674021 2675647 2673035 2671128 2685187 2667106 2656611 2667446 2657915 2675301 2671805 2670438 2661623 2647889 2677290 2675229 2684994 2672961 2660867 2679769 2663210 2675462 2667956 2666054 2685053 2670861 2677787 2674261 2684235 2667783 2692838 2681219 2691518 2672634 2691802 2680931 2676123 2702979 2693492 2695153 2702678 2679232 2689003 2686409 2699810 2698832 2676152 2674436 2690360 2682813 2690795 2686206 2687263 2697362 2694363 2691418 2680168 2683150 2685923 2682112 2686025 2696729 2700182 2670604 2694978 2694830 2698861 2688931 2705513 2695453 2698879 2681614 2708692 2674028 2705776 2679803 2682294 2707780 2700325 2710269 2725221 2702164 2680417 2700948 2702936 2667407 2708861 2690572 2708202 2710203 2723357 2713372 2702753 2706520 2704877 2700943 2715123 2719843 2693365 2703153 2717911 2722272 2705597 2714019 2713044 2705070 2725194 2696409 2720796 2700343 2717986 2701966 2711550 2694194 2714647 2718983 2710496 2719922 2722239 2729123 2708694 2720647 2710820 2725034 2709314 2730448 2712057 2723713 2712970 2718943 2719612 2728713 2741837 2709943 2716328 2712863 2728684 2732995 2741894 2695443 2716156 2722925 2727251 2731315 2716367 2742581 2727531 2738143 2712266 2742242 2720221 2722305 2727538 2721876 2713366 2709277 2713560 2732609 2736553 2748007 2745651 2736846 2729273 2729568 2727119 2729738 2734264 2753394 2733387 2737132 2729682 2727216 2738283 2738790 2735880 2742284 2726925 2747588 2743633 2742566 2730608 2733066 2739532 2743800 2732954 2720432 2754939 2770946 2737587 2743059 2736877 2748306 2742273 2732796 2741648 2750862 2753124 2761009 2750655 2738598 2766121 2751731 2737745 2744300 2758621 2726555 2742468 2745885 2746026 2750102 2762229 2751739 2750169 2750611 2762022 2753199 2748749 2745502 2744506 2761838 2752102 2763864 2746735 2755401 2752958 2765055 2745950 2761950 2758447 2748939 2756254 2742895 2747573 2749980 2744177 2766999 2755033 2766314 2769460 2758493 2750070 2761521 2756157 2765574 2740068 2758304 2767760 2766099 2773744 2761907 2784743 2769620 2770473 2777037 2739783 2785021 2753190 2758452 2754566 2782487 2770230 2774814 2768068 2759889 2777740 2767474 2770768 2769012 2774422 2773375 2768607 2763726 2792026 2774294 2767070 2771408 2783021 2782531 2772730 2772271 2776745 2775263 2778650 2772244 2770897 2788494 2782756 2776382 2789694 2775763 2780043 2795785 2785287 2786555 2801674 2787028 2809931 2777540 2789377 2786582 2764683 2793852 2765148 2787205 2786663 2788789 2798365 2794807 2786828 2805572 2777883 2787781 2815351 2774549 2790753 2801415 2789811 2784964 2802113 2793514 2785246 2770509 2801493 2794913 2781484 2787511 2793489 2789081 2802501 2801401 2789198 2789187 2799339 2791563 2806025 2795163 2818721 2782474 2788443 2803078 2799405 2798012 2791557 2794727 2801828 2808866 2797085 2793872 2795253 2806612 2797551 2809735 2801868 2792287 2813565 2809691 2803254 2828884 2825114 2807995 2825546 2818677 2802526 2810365 2793534 2807764 2807142 2815437 2813630 2815743 2828149 2813701 2819639 2815883 2794505 2810845 2813554 2806150 2804726 2815976 2819847 2825828 2828087 2803904 2818669 2803997 2804186 2827096 2820317 2810401 2801263 2821310 2825677 2794601 2832323 2804837 2816978 2833728 2818955 2808067 2827991 2814146 2810942 2799611 2821005 2820698 2827346 2828585 2817586 2827942 2844988 2839201 2814153 2822492 2840482 2821289 2834885 2828153 2820321 2822026 2834960 2826714 2841549 2848800 2837879 2835806 2829061 2830794 2814220 2832719 2826278 2820658 2853839 2835099 2834859 2834995 2819842 2841568 2838169 2829517 2828868 2847023 2833403 2837232 2825413 2864707 2832353 2850155 2851321 2831899 2855838 2854580 2856687 2846056 2852917 2857697 2849700 2836121 2848813 2850787 2840597 2841158 2822379 2835432 2862825 2835124 2855280 2862352 2849596 2838634 2860660 2857871 2843111 2868066 2863632 2854846 2860625 2842386 2859250 2868545 2849607 2857006 2846631 2855572 2852040 2868966 2851704 2850488 2864394 2871414 2857554 2862200 2850828 2871093 2876589 2876756 2867681 2856901 2866326 2897388 2859406 2871577 2861343 2872238 2866473 2884631 2864425 2876448 2867771 2872450 2856555 2868271 2871243 2851712 2846013 2896392 2877386 2867884 2868267 2868598 2888283 2881719 2881704 2878292 2865260 2879567 2871340 2885564 2874549 2874571 2866370 2882281 2873555 2870689 2872554 2877087 2879204 2873902 2866368 2859759 2887472 2891336 2880659 2872834 2902742 2876566 2880159 2856901 2889235 2861915 2879253 2903013 2882906 2897531 2886513 2885956 2888098 2904377 2898318 2903789 2886435 2898222 2886014 2888326 2895512 2876868 2892605 2903628 2909951 2884368 2889990 2900970 2892261 2898281 2884463 2888473 2901375 2889551 2896601 2895264 2886867 2889269 2882717 2887334 2911566 2894801 2911407 2904042 2910951 2906140 2905621 2904360 2913908 2894700 2891363 2881720 2910579 2896924 2884423 2923722 2911444 2907928 2900533 2911549 2906634 2917931 2908593 2907732 2908163 2901914 2905021 2915258 2929215 2904389 2929763 2913459 2915991 2890946 2903427 2906665 2923285 2933137 2915888 2922923 2913672 2909820 2922051 2906303 2905004 2923953 2916069 2917076 2924195 2903878 2924878 2903377 2928015 2934112 2923348 2924003 2897940 2920338 2932822 2937415 2925104 2917230 2940468 2943653 2934752 2953745 2948694 2944031 2934125 2941071 2933911 2933178 2928991 2938764 2932757 2913651 2955101 2929664 2922570 2935101 2938424 2927111 2931832 2926340 2925302 2929612 2934216 2928432 2947841 2925670 2935204 2925379 2931495 2923089 2924149 2949682 2951341 2934103 2933405 2946703 2961176 2943316 2963929 2949189 2949998 2961203 2948734 2955077 2975790 2966156 2933636 2946102 2938248 2942021 2960731 2957586 2956026 2967906 2968489 2971983 2950094 2940066 2947317 2935704 2952412 2959559 2944311 2940176 2964188 2978935 2950621 2965409 2970977 2965070 2926816 2970176 2947487 2961878 2970916 2965914 2974470 2966829 2977551 2966224 2948169 2965882 2971279 2953409 2964289 2993370 2932880 2951760 2966272 2985881 2968336 2976811 2979755 2956694 2961697 2973252 2965060 2968370 2982981 2979630 2972305 2967543 2967075 2970970 2969677 2979718 2974609 2964515 2986962 2978134 2980001 2993598 2970390 2968094 2973265 2979140 2989109 2982118 2985203 2992039 2984836 2980215 3006749 2992387 2991185 2981147 2964050 2979453 2994708 2989297 2997955 3009044 2980373 2982596 2979534 2968772 2979293 2985161 2972659 2993995 2983117 2984653 3002308 2976953 2988287 3002257 2982326 2989795 2999202 2989109 2972322 3003026 2997381 2980914 2979315 3021712 2989660 3000380 2999836 2999736 3003362 2998552 3019138 2993292 3013115 3009841 2989359 3012088 3021067 2982042 2985131 3011812 2996992 3001506 2991464 3006374 2991557 3013718 2999085 2988578 3007691 3017878 3003517 2994065 3009287 3010427 3018884 3015272 3023232 2994108 3009516 3000861 3008449 3006807 3020660 3014536 3005434 3020327 3008081 3020248 3020549 3007311 3018049 3019509 2995709 3020217 3031055 3026867 3016671 3040521 3010800 3020216 3015838 3020287 3021622 3034832 3031608 3024008 3010875 3021068 3022999 3019625 3026683 3015828 3029360 3010600 3014288 3018094 3042095 3021913 3046628 3028423 3016926 3034156 3029086 3039609 3045569 3023044 3038502 3037668 3024345 3029686 3030625 3028545 3034466 3045019 3039968 3055672 3037701 3046160 3040155 3043654 3063458 3058906 3028191 3055168 3027276 3046389 3050645 3045178 3028471 3052319 3055169 3054109 3031654 3046998 3055655 3044120 3052906 3050338 3047319 3024463 3075210 3040201 3046641 3043473 3036405 3053799 3050096 3061006 3050786 3060673 3073378 3050559 3047085 3059940 3069353 3060017 3058273 3057597 3059109 3060113 3072176 3074013 3063077 3084832 3066094 3065955 3079188 3068177 3045041 3053225 3057674 3078258 3074662 3069285 3058771 3062062 3072886 3074926 3057099 3073032 3049604 3070852 3074496 3072289 3072444 3085027 3081499 3060527 3077716 3068411 3064305 3086460 3084299 3084078 3084260 3061824 3073599 3088987 3069579 3076992 3106109 3068730 3090572 3092090 3093835 3073965 3078114 3085102 3085365 3084116 3082118 3085935 3088277 3092124 3087064 3077716 3081275 3098018 3081532 3088959 3089521 3078463 3097544 3076415 3110903 3086516 3092006 3091917 3087010 3076604 3104440 3094572 3097911 3099880 3079042 3088012 3092488 3113299 3091890 3102708 3097645 3100770 3094680 3096766 3106656 3106012 3106287 3116125 3120677 3097913 3119987 3095590 3098275 3120991 3087464 3081782 3097113 3116448 3105619 3113262 3083914 3111406 3094248 3098087 3102295 3106786 3093279 3126118 3096641 3080443 3107884 3112817 3122784 3123651 3111549 3086285 3101134 3105007 3119686 3116837 3105643 3125191 3125490 3127206 3103416 3113177 3113856 3137183 3103978 3130607 3123957 3108503 3094850 3127174 3131612 3114571 3131696 3132758 3136931 3134796 3114645 3127361 3102441 3110653 3131789 3150806 3121671 3124583 3149985 3124240 3121634 3124224 3143206 3154610 3126532 3105593 3121071 3146940 3114166 3158587 3124911 3143885 3126084 3160691 3155309 3127965 3153162 3156837 3139824 3138052 3130217 3139564 3143809 3132628 3143265 3133972 3150924 3116295 3135471 3168296 3147526 3136190 3138433 3143106 3131226 3133994 3150711 3135171 3150250 3134782 3162671 3148818 3173824 3144386 3144957 3151368 3137004 3160575 3168658 3156501 3141214 3150417 3167448 3157402 3138273 3158411 3142484 3148230 3161628 3159950 3149239 3159710 3149179 3146537 3159117 3139699 3159311 3159525 3157186 3134637 3174046 3159426 3177061 3147625 3158004 3153509 3158035 3169900 3156554 3172811 3151227 3151453 3183803 3167436 3152262 3160166 3198814 3169175 3179766 3166214 3189162 3144797 3182474 3187888 3170483 3170434 3200430 3160784 3175523 3159840 3175790 3195528 3182682 3173687 3175166 3182266 3195935 3178746 3178857 3175287 3161134 3170258 3186135 3171494 3201831 3172253 3193418 3165921 3197594 3190043 3204904 3193809 3186162 3169297 3187751 3186644 3182381 3188549 3164328 3181102 3202446 3187822 3188519 3193186 3199622 3187099 3180365 3191042 3205751 3186252 3182150 3185138 3211943 3190516 3193888 3191415 3187158 3213084 3196190 3185226 3198978 3210613 3186060 3198696 3206792 3189201 3215514 3213938 3188065 3197091 3179312 3211105 3207635 3199697 3222555 3205802 3216404 3192698 3217224 3205860 3206318 3196201 3213918 3205179 3201421 3203425 3200418 3216682 3204229 3209655 3197927 3225166 3202375 3200738 3195837 3224696 3208726 3220489 3205240 3227437 3229658 3201986 3206104 3217642 3213872 3213322 3209794 3210432 3195121 3223361 3185392 3219639 3216557 3220269 3223265 3230781 3196126 3222087 3221469 3214268 3224746 3229951 3239744 3221225 3233720 3216291 3222912 3238847 3234742 3217940 3224452 3216857 3229495 3244621 3247249 3237965 3208843 3223233 3251971 3219876 3232605 3236713 3218442 3229507 3263732 3254593 3220206 3229424 3232110 3237181 3239281 3251567 3231557 3252015 3235713 3236830 3249053 3242821 3223563 3232745 3247422 3249111 3235605 3238395 3245312 3249430 3251640 3248440 3257034 3248233 3231171 3229208 3255229 3239134 3259325 3253541 3235971 3244142 3235420 3256694 3263343 3260468 3251357 3248184 3249191 3267409 3245101 3250215 3252211 3255941 3224586 3227840 3262583 3252467 3255927 3243531 3248196 3253461 3258248 3249750 3243528 3256069 3253658 3259283 3226059 3282399 3264143 3262637 3252440 3289779 3247837 3258547 3249273 3254145 3256788 3251316 3254248 3260011 3263817 3249406 3257717 3283885 3264416 3253905 3263983 3255539 3276732 3261579 3273297 3254137 3261240 3260955 3268228 3232613 3274709 3274826 3261664 3245328 3270028 3280466 3275336 3280028 3253216 3279131 3274004 3265809 3270636 3271045 3271135 3269561 3287849 3280725 3262305 3283508 3306877 3267349 3295944 3276803 3277746 3278008 3287771 3285657 3268536 3269872 3272236 3277758 3278609 3277921 3265523 3297673 3286562 3283427 3280528 3280262 3290576 3273531 3285992 3280100 3301135 3261619 3300548 3280310 3296031 3279115 3289043 3300374 3281525 3291940 3280135 3305859 3282222 3281309 3299509 3273786 3285938 3309161 3282829 3280024 3292975 3261811 3290139 3282689 3289969 3279865 3293035 3271647 3284240 3296027 3300860 3291597 3304483 3302169 3303784 3295395 3287815 3282066 3311112 3295952 3278281 3299606 3344426 3290146 3293636 3283305 3302432 3301221 3295121 3293865 3322383 3306361 3310893 3300722 3306021 3299446 3306460 3317925 3312720 3296605 3313825 3309658 3301145 3296457 3312275 3303699 3316722 3303896 3314348 3310699 3312193 3300103 3313076 3309389 3309264 3319533 3314598 3314570 3316098 3312449 3291993 3305378 3314662 3353056 3309980 3326762 3312183 3303171 3325360 3295347 3320909 3326019 3330311 3335945 3304023 3327957 3327959 3322642 3331395 3326431 3335709 3324691 3303675 3329336 3339668 3307293 3333257 3324064 3338061 3331593 3333829 3336480 3305392 3337582 3315325 3337465 3305761 3342140 3332535 3326137 3341233 3333083 3335842 3327419 3351510 3337843 3343481 3327693 3333209 3332860 3320751 3322558 3332802 3353106 3332777 3331576 3335011 3340973 3340673 3331229 3350501 3347122 3345295 3326991 3336824 3339262 3329855 3339815 3328143 3335737 3346935 3359096 3335278 3361967 3347808 3351909 3354340 3344889 3350971 3319114 3355323 3335940 3353534 3354497 3351021 3351515 3345951 3362541 3342131 3366255 3338773 3358956 3348087 3351040 3349468 3353077 3358683 3349954 3343097 3360092 3360310 3352853 3342510 3351223 3367619 3365355 3370283 3359553 3353651 3354466 3364317 3346480 3358207 3370891 3377061 3381486 3378230 3366417 3358379 3377120 3375789 3348802 3346654 3374619 3344451 3374346 3367124 3357555 3357276 3363013 3373757 3343219 3340875 3355071 3354195 3369497 3370850 3364805 3364518 3341526 3361782 3370536 3367829 3366304 3375346 3362520 3359684 3369413 3354577 3364582 3391333 3374032 3398719 3369148 3361438 3347994 3371371 3383520 3374503 3367020 3370906 3392155 3383993 3376134 3406415 3394701 3391195 3378124 3388574 3377981 3378906 3361982 3387515 3379496 3392324 3374811 3394206 3383661 3369454 3370833 3399932 3380262 3385929 3381104 3405919 3393874 3376848 3423076 3401807 3383012 3388679 3394806 3412288 3404980 3395796 3402398 3411137 3393619 3377254 3374118 3410463 3383846 3399521 3391004 3397263 3391969 3375272 3416747 3395179 3384851 3389195 3401910 3388897 3381809 3420307 3392451 3419873 3400074 3429657 3398138 3394497 3392852 3405463 3430928 3412368 3383323 3426289 3404160 3403738 3412085 3424956 3404871 3418318 3416500 3433625 3415114 3396590 3404409 3412330 3389445 3421266 3408648 3433596 3408377 3386850 3419362 3415949 3426357 3428292 3400521 3419126 3408043 3435796 3427634 3403145 3432946 3409449 3431356 3434599 3394741 3439838 3404928 3410892 3419148 3436902 3416225 3429355 3428695 3407395 3440125 3425889 3437820 3424307 3414785 3446311 3432499 3430860 3433668 3426339 3444901 3433405 3432554 3443012 3416151 3432440 3437164 3446574 3435715 3423745 3412825 3440035 3442895 3437931 3446943 3429935 3426121 3422653 3433374 3439181 3442003 3426094 3456562 3449739 3426344 3432583 3410668 3461112 3417559 3430672 3455632 3460000 3444647 3460373 3441472 3440853 3430450 3452131 3436500 3452652 3444817 3440802 3461667 3449982 3445629 3443926 3455876 3448247 3452143 3450411 3461343 3440625 3438076 3443747 3478213 3447180 3449853 3449055 3456153 3437296 3470594 3445704 3457312 3443115 3486728 3449644 3470499 3458951 3458095 3461641 3457896 3440943 3459646 3447648 3464990 3453050 3430903 3484646 3453705 3473443 3470056 3470505 3437847 3485359 3470459 3456400 3473477 3457874 3477643 3458473 3461185 3475581 3487084 3452390 3449789 3486543 3458639 3478529 3476576 3474447 3466745 3472654 3465323 3462145 3471933 3486505 3473242 3491859 3498970 3472234 3461325 3475962 3478579 3484154 3480566 3465100 3470617 3462350 3476080 3470431 3475471 3499315 3483781 3489112 3485769 3446318 3484154 3469545 3484942 3473918 3474695 3483986 3470224 3473875 3489722 3470898 3464079 3490556 3485120 3493790 3493430 3485283 3463255 3490692 3482178 3483472 3494572 3489246 3482899 3507567 3474019 3473788 3479957 3504580 3502888 3496153 3496676 3478731 3501782 3469504 3482150 3505138 3489041 3496353 3500592 3482829 3496628 3495458 3513589 3526002 3510385 3502802 3506376 3501445 3483120 3490866 3456633 3515610 3508527 3499884 3485741 3501830 3523809 3515004 3504679 3500482 3525552 3520979 3514212 3488323 3512100 3516687 3528045 3508122 3514906 3517989 3524189 3492739 3536483 3493198 3513827 3487667 3523776 3522276 3526519 3510742 3508557 3523121 3500895 3535311 3509211 3515864 3537898 3528737 3533718 3520633 3529957 3521910 3515984 3519877 3521458 3512154 3509608 3522001 3544234 3546545 3530865 3520790 3506859 3546806 3520388 3534700 3540064 3545999 3512679 3542465 3530240 3516095 3521680 3535693 3537774 3522640 3522785 3538221 3522139 3539117 3523366 3531055 3531467 3538942 3526574 3528509 3529899 3514853 3507596 3553619 3543937 3549805 3531156 3551688 3528020 3537364 3533808 3531214 3536081 3559787 3542439 3527246 3532672 3537177 3542429 3544140 3530897 3541404 3544035 3536461 3531182 3536723 3549073 3532522 3562507 3580131 3554028 3541154 3547276 3518628 3554816 3539008 3565717 3544377 3549741 3562061 3555275 3542866 3538104 3538600 3556747 3533413 3549973 3541646 3542373 3536131 3540490 3555603 3563885 3557858 3575405 3556039 3575896 3531364 3566412 3556350 3577954 3576100 3560007 3555873 3551513 3561365 3555701 3570355 3551637 3579979 3581060 3560627 3558311 3554457 3569927 3553691 3587781 3546974 3569698 3560776 3582773 3579352 3572781 3574317 3580431 3555308 3571645 3557166 3575382 3579226 3572724 3567251 3583190 3583367 3556697 3569080 3556493 3545110 3563679 3571391 3581012 3574129 3571211 3589920 3578227 3555190 3585496 3584329 3574207 3571634 3583318 3593071 3582026 3583990 3603364 3585244 3581146 3601363 3574039 3585159 3601427 3586431 3591181 3568066 3578380 3578044 3578488 3592678 3569880 3607860 3564163 3568581 3579152 3554746 3591377 3592918 3575808 3615748 3576005 3576790 3571197 3586755 3587444 3583879 3582126 3575243 3583170 3580578 3584636 3585923 3583163 3596701 3581779 3591516 3593970 3593638 3586524 3604275 3608255 3581800 3597381 3595500 3584973 3612404 3623680 3597387 3573035 3604362 3595385 3608998 3596853 3598211 3587069 3595832 3604773 3592448 3594258 3595666 3595114 3604945 3594293 3582816 3595989 3605563 3594845 3600179 3595151 3603032 3618654 3607506 3619085 3641170 3617023 3626026 3615958 3598008 3616302 3602569 3622597 3595983 3606038 3610022 3607257 3632857 3620165 3622595 3623925 3629736 3594534 3618357 3609351 3612022 3613410 3601595 3607942 3627325 3592082 3625794 3630233 3608797 3626236 3624201 3608446 3605058 3613788 3619526 3627751 3618210 3607531 3628052 3613765 3637012 3618873 3627973 3619715 3641392 3598527 3602292 3610984 3624923 3627122 3629953 3650085 3609195 3638975 3625088 3635083 3631868 3636924 3605222 3596909 3622113 3612846 3627272 3638167 3639196 3629791 3639177 3624001 3642091 3605154 3652033 3619713 3627121 3627566 3651605 3633975 3649764 3643358 3649502 3642287 3651044 3632892 3623297 3661204 3627290 3638416 3647396 3624651 3649793 3643613 3633310 3625926 3643974 3640969 3650523 3634149 3661605 3643356 3634042 3663365 3668522 3643561 3655891 3650296 3655204 3648981 3642335 3643253 3607085 3638784 3648479 3642257 3660205 3651714 3652930 3660286 3644245 3647909 3660811 3640725 3655163 3650903 3664653 3644425 3670786 3663361 3635332 3656780 3665991 3658518 3653055 3662687 3639929 3658159 3653690 3642739 3661710 3629995 3668262 3663300 3663684 3667869 3647241 3651199 3663691 3667991 3652091 3668602 3673898 3650695 3688630 3645775 3670705 3660396 3665177 3630481 3684868 3665720 3666935 3678550 3657272 3659037 3635096 3683580 3669190 3674082 3654545 3664996 3660573 3667351 3676334 3684501 3667673 3671154 3691160 3660603 3707500 3691688 3671024 3705515 3671687 3674876 3683053 3704619 3684073 3677561 3683628 3685064 3679422 3692866 3700493 3700781 3707801 3667276 3667843 3675119 3685904 3697652 3686717 3709254 3670175 3702050 3708409 3680893 3683626 3676680 3686840 3695738 3689704 3653887 3686407 3687672 3706002 3708393 3706868 3669131 3692100 3689774 3681151 3700097 3696352 3720898 3697050 3701505 3723403 3690712 3716048 3693249 3689479 3685365 3705992 3697557 3694391 3696857 3683445 3695778 3691968 3711704 3716136 3713524 3722979 3703860 3684255 3720170 3711614 3717015 3692016 3714615 3696595 3713745 3711993 3714091 3714257 3705286 3712917 3697381 3684406 3719727 3711251 3719691 3717941 3707020 3701471 3720903 3725303 3673024 3695242 3714152 3724559 3739892 3722255 3709781 3730913 3707569 3746264 3709423 3739506 3717071 3728527 3713989 3717737 3724439 3737474 3721924 3714649 3722353 3721987 3733320 3718597 3710375 3708766 3728054 3737698 3712489 3747100 3721659 3743353 3708335 3722769 3731608 3728560 3702932 3722796 3722861 3737687 3727158 3730801 3744833 3736150 3713056 3727057 3770699 3723017 3749532 3732319 3733358 3750622 3741070 3724519 3725505 3731453 3730679 3738224 3726361 3741823 3739041 3738054 3728799 3742649 3746500 3749879 3743337 3748148 3747667 3721432 3739129 3741442 3743372 3741466 3754429 3738869 3733779 3752204 3755206 3749591 3761663 3766301 3744861 3726425 3762151 3747008 3751626 3765036 3751476 3767992 3752989 3740285 3740524 3733628 3746327 3749248 3746385 3760231 3769772 3750170 3746421 3724653 3738935 3756627 3749610 3749829 3769124 3770919 3755359 3767042 3764907 3771048 3753411 3775882 3749943 3754778 3764321 3774987 3764774 3786897 3777485 3775229 3769249 3749024 3764825 3777882 3771343 3740611 3799293 3759277 3752546 3778721 3775811 3761155 3785558 3786061 3771780 3776715 3759698 3783920 3762669 3772502 3772448 3780645 3752510 3773684 3787974 3767366 3758927 3781558 3776265 3790144 3770566 3772138 3775680 3770577 3761939 3798779 3786770 3775878 3780734 3778180 3797219 3787998 3765795 3789418 3786580 3780422 3775149 3780886 3793357 3782140 3776619 3797059 3777772 3779432 3811968 3774949 3815626 3783430 3816571 3775743 3816852 3773471 3795775 3798265 3796614 3788160 3796862 3800975 3798457 3800719 3792255 3806101 3785959 3801139 3802084 3799792 3798567 3797821 3790720 3801040 3818433 3791417 3808727 3827492 3802643 3790827 3812082 3788605 3820917 3808426 3814138 3815410 3811812 3799543 3801448 3777811 3838883 3798515 3790686 3827964 3833017 3801851 3801511 3809635 3815332 3785745 3796915 3794430 3815662 3787076 3821455 3820388 3819527 3792725 3835597 3804007 3801710 3814109 3822519 3815682 3793215 3816338 3828744 3828775 3792779 3815637 3821830 3821378 3815270 3816859 3808085 3810443 3806500 3784379 3849699 3816185 3816497 3838572 3825133 3816293 3803044 3827980 3826367 3826232 3809890 3823718 3811527 3830707 3842346 3832155 3791642 3828059 3840202 3821162 3813362 3828823 3823242 3828846 3822171 3827690 3825669 3840227 3836861 3817636 3837057 3834854 3825381 3827791 3852195 3833928 3826553 3840496 3837574 3818738 3822064 3819811 3842906 3806151 3846034 3837622 3861496 3833997 3852123 3864076 3843324 3846110 3859318 3859935 3813671 3834973 3840599 3836391 3835115 3846871 3844856 3837376 3822028 3855941 3857583 3844333 3835484 3837122 3844596 3835719 3814130 3843586 3868624 3856956 3863995 3852102 3852768 3855629 3866104 3858587 3847340 3853671 3860489 3840897 3874369 3852434 3855566 3867397 3841617 3837371 3885908 3854624 3860072 3868810 3866843 3875219 3874886 3875009 3892047 3843561 3855382 3868272 3863215 3857295 3846192 3870798 3872487 3878583 3845694 3858703 3877201 3856887 3860520 3869486 3868946 3863905 3856435 3851199 3878469 3843478 3869084 3876875 3874968 3867978 3870304 3867663 3870560 3880311 3889770 3874857 3888847 3882443 3904272 3829032 3852228 3878081 3896637 3862173 3857444 3872671 3865445 3885315 3867303 3883044 3887430 3882018 3864380 3882480 3873360 3893124 3865104 3885574 3871784 3872961 3885500 3883081 3902861 3864607 3884495 3873163 3884705 3905777 3893651 3907904 3881866 3866967 3877008 3871226 3886095 3899407 3910095 3890873 3897722 3908594 3892789 3893530 3883359 3885286 3876868 3876976 3890011 3906592 3899683 3889626 3888732 3903068 3889410 3885666 3881735 3914626 3890313 3888437 3889874 3889729 3902814 3912115 3905584 3890234 3900220 3879466 3891659 3908858 3894175 3890046 3887375 3900249 3904152 3915292 3908044 3922170 3899332 3908312 3913190 3894615 3911853 3920510 3896603 3887402 3887290 3916819 3908094 3891645 3896557 3899056 3932245 3912604 3900788 3919533 3910273 3917880 3905288 3901742 3931403 3923552 3924075 3913344 3926978 3929055 3931675 3913307 3913554 3921499 3938420 3942618 3901892 3925637 3913435 3927724 3920629 3947560 3917189 3922757 3935157 3930576 3931420 3904203 3928043 3939445 3939016 3905511 3926920 3924672 3942145 3936680 3947741 3926804 3926176 3913165 3946981 3910517 3929780 3936260 3926030 3903850 3929544 3925691 3939841 3935560 3953514 3963882 3959816 3945079 3944393 3947045 3929229 3951392 3914520 3932981 3934256 3947039 3967525 3957744 3942400 3934418 3929409 3940177 3948526 3968205 3945236 3938005 3950415 3933757 3932050 3960931 3942372 3949231 3936262 3978428 3933292 3931115 3933357 3963161 3955878 3963201 3953118 3933210 3969532 3939212 3939733 3948221 3936836 3935653 3957407 3953123 3972681 3938019 3944693 3954502 3953094 3969406 3938364 3955389 3979072 3948315 3939021 3936372 3963497 3947597 3971632 3944275 3954074 3968567 3970465 3983941 3957340 3979772 3974369 3981553 3935181 3978398 3946126 3972179 3951254 3966814 3963501 3973498 3974217 3967982 3980807 3994201 3979011 3995045 3989313 3960214 3968014 3964673 3975416 3965197 3951745 3983373 3966785 3973270 3967108 3994660 4001635 3983435 4005869 3965075 3994488 3998305 3981474 3998599 3980725 4000613 3981564 3969432 3997345 3995381 3989655 3970582 3978069 3971849 3975535 3989756 4001195 3978118 3978635 3960587 3978146 3989207 3973709 3978920 3983698 3996170 4012883 3985737 3979771 3994159 3965829 4006262 3988009 4000275 3975035 3972816 3988283 3998705 3986878 4017659 3981689 3980923 3998096 3991837 3994921 3999519 3992349 3985347 3985684 4010946 4002104 3996031 3984923 3977839 4004525 3982562 3979061 4004960 4007910 3980715 4005403 4012961 3991786 4012963 4004431 3980666 4000987 4012090 3995648 4010613 4020385 3997533 4017278 3988592 4001220 4006414 4019427 4005332 3992976 4006559 4013178 4011476 3996381 4028775 4005786 4023209 4016317 4020038 4034463 3990811 3999440 4010662 4028129 4023641 4020030 4018128 4010061 4001518 4027101 4000867 4007123 4005519 4042045 4044514 4032712 4035906 4009341 4028156 4021700 4033666 4014754 4037619 4034055 4026506 4023675 4007965 4040173 4036981 4037260 4038224 4028626 4008389 4019681 4016589 4033843 4031595 4032168 4030513 4014128 4029314 4056256 4043028 4012448 4031379 4031227 4017157 4040897 4030368 4039169 4022789 4046722 4024587 4033161 4022468 4053885 4023666 4021175 4039708 4033850 4053669 4035878 4036176 4023148 4049893 4055217 4041909 4061507 4032508 4047568 4070181 4052628 4061028 4045177 4043743 4064508 4055538 4057441 4044251 4053043 4042239 4055923 4032085 4063403 4060100 4060648 4052905 4043657 4052340 4056107 4055833 4069094 4053162 4074280 4047095 4047047 4054121 4060132 4061955 4055420 4051676 4050101 4044675 4048342 4062773 4059332 4080097 4054196 4030619 4059267 4083019 4065508 4062918 4064146 4072981 4037002 4077492 4054654 4066171 4050291 4083278 4073748 4061897 4076999 4049511 4069912 4090918 4074179 4079296 4064455 4097264 4066888 4080396 4083976 4054483 4082844 4060460 4071054 4054107 4090598 4071314 4064601 4084845 4098580 4065817 4072652 4103375 4080556 4083957 4081110 4069204 4096012 4101248 4103018 4098406 4068851 4076853 4092809 4089144 4083879 4107784 4085282 4062494 4096200 4098444 4087328 4087198 4101676 4064026 4075152 4101212 4088822 4083267 4090199 4071265 4093910 4110785 4090742 4098445 4073205 4087694 4089453 4078428 4110945 4093200 4096390 4074106 4115449 4096442 4104302 4092196 4107007 4104424 4101301 4105446 4079436 4101373 4105548 4084718 4106577 4104258 4099725 4082480 4104282 4111455 4084513 4097675 4101904 4110473 4115777 4095790 4119536 4087349 4107289 4129881 4103333 4098662 4115304 4090270 4107916 4115318 4109761 4103826 4106795 4099049 4101542 4096603 4114923 4114997 4117048 4124444 4104957 4088258 4111536 4113329 4117090 4095921 4131626 4116898 4140453 4123271 4115800 4111458 4110305 4120168 4145168 4125310 4161182 4121660 4124439 4104647 4127322 4142942 4117763 4140802 4141719 4134746 4137150 4110202 4132921 4133294 4120216 4117245 4119288 4112875 4132468 4108297 4121693 4140357 4148076 4132628 4148756 4130173 4135253 4129836 4136928 4151360 4135434 4139800 4147063 4139925 4140531 4119544 4143198 4157971 4132717 4147146 4117198 4135127 4113270 4138156 4171332 4132431 4124624 4157377 4134071 4154030 4153750 4162774 4154993 4127022 4159442 4170786 4138323 4131361 4136351 4111614 4150885 4156266 4148805 4151833 4152951 4159319 4153933 4144494 4141591 4155388 4158652 4180604 4149646 4145389 4139381 4119949 4160612 4165409 4155267 4151632 4163514 4152496 4146612 4148074 4131184 4152321 4157911 4145104 4150524 4153874 4146904 4148912 4136087 4128438 4155547 4140805 4162701 4180498 4179429 4186148 4172860 4158519 4153645 4159623 4155194 4161438 4158906 4177545 4173043 4182653 4160486 4164900 4150027 4138158 4188037 4184439 4150297 4177580 4136408 4191566 4174763 4153898 4178256 4171487 4206786 4157104 4165373 4146780 4185274 4156631 4163697 4166340 4178200 4195018 4177684 4166101 4189079 4161415 4164188 4175524 4170884 4149478 4162736 4183540 4211555 4172261 4147512 4186954 4164398 4159513 4174507 4167974 4181961 4171308 4176537 4184790 4209406 4177220 4174948 4185559 4184490 4197681 4167632 4194158 4196844 4173325 4170378 4196057 4161494 4184349 4180874 4180414 4181929 4199125 4197385 4193163 4153247 4224265 4195467 4189941 4205215 4201841 4178448 4174052 4185695 4201600 4195523 4211056 4225045 4197701 4223585 4212425 4207566 4198335 4228463 4194131 4212791 4211423 4206958 4200712 4204151 4200107 4194175 4205043 4229123 4199598 4218496 4222096 4193382 4192257 4213989 4211550 4197850 4215795 4187697 4229111 4223278 4206783 4201838 4224600 4229953 4218123 4216250 4230100 4201559 4202447 4223734 4223019 4238478 4214349 4198664 4224368 4221987 4231719 4235760 4234335 4217077 4222915 4227575 4206176 4225415 4218892 4193354 4220927 4215632 4205978 4207852 4234892 4218321 4218582 4228577 4202444 4230726 4233458 4231043 4226562 4222605 4220443 4214958 4208530 4207602 4237938 4224164 4232286 4241060 4239880 4218131 4240163 4229569 4241010 4225687 4237657 4253101 4251901 4220017 4247531 4222150 4211257 4234758 4255417 4234654 4226365 4230565 4256520 4248764 4235566 4241532 4222229 4237645 4251646 4247783 4258204 4227862 4266222 4250241 4239683 4251421 4238653 4276608 4260030 4232880 4260377 4255715 4249608 4234623 4273636 4232859 4240467 4259405 4265980 4231862 4242871 4255375 4250723 4273186 4263718 4243942 4264635 4245988 4271666 4265064 4287562 4245164 4243348 4258469 4260312 4267283 4248809 4272493 4275722 4274738 4258336 4245559 4248749 4250059 4240060 4269954 4258148 4253658 4236155 4270908 4280324 4270473 4257032 4226887 4281804 4268865 4248659 4255594 4288389 4239951 4288125 4247434 4263141 4280544 4296863 4258570 4259530 4241868 4269601 4277664 4264276 4277870 4283258 4281590 4276080 4267774 4272014 4264158 4270179 4263507 4283052 4268953 4268176 4284637 4254364 4289764 4288544 4290491 4270409 4277229 4282460 4265220 4262346 4249353 4258654 4284699 4265043 4292513 4284476 4257709 4271685 4290662 4279337 4265003 4282327 4296836 4266106 4294160 4279285 4282206 4297778 4287227 4274254 4282898 4283388 4287311 4273138 4322990 4303407 4302630 4304582 4306396 4303822 4275710 4291482 4269682 4297092 4283628 4276775 4286690 4283609 4303058 4297468 4313409 4294129 4291988 4302157 4300324 4308935 4320488 4319178 4269137 4302000 4304359 4291075 4312291 4292172 4288998 4300920 4313263 4303686 4311332 4309497 4303622 4320334 4307340 4296490 4315549 4308364 4308141 4289676 4319119 4315371 4320138 4341130 4288858 4308713 4333630 4312371 4276142 4280040 4339526 4333237 4316803 4317632 4299314 4308265 4324058 4309525 4326608 4309333 4296793 4315339 4307693 4333226 4316015 4332771 4300024 4313459 4313309 4333157 4304357 4318666 4303151 4331639 4331413 4314763 4336762 4310194 4321230 4318735 4315622 4336733 4300003 4317690 4316516 4337893 4335156 4325117 4337219 4333284 4308992 4334075 4323228 4312727 4336115 4326854 4317266 4339396 4328770 4312465 4354666 4319883 4344303 4314288 4355794 4333646 4348206 4345005 4317931 4319890 4329121 4349296 4330799 4342288 4335590 4327916 4320280 4336477 4353709 4332090 4338057 4325925 4357058 4329770 4326737 4343315 4358301 4342683 4329862 4328248 4350030 4341037 4327354 4345863 4344874 4349792 4366691 4367717 4345091 4357504 4329873 4353838 4334341 4319129 4336157 4357782 4329704 4358988 4353577 4349699 4349947 4360876 4363223 4366061 4339610 4354830 4360642 4358914 4359439 4362572 4363321 4346000 4346717 4383529 4345890 4350633 4374003 4386530 4361048 4372293 4374094 4371656 4357464 4369829 4393768 4338713 4372237 4379961 4356001 4367885 4356678 4382416 4351727 4370329 4372034 4382520 4370955 4343091 4372498 4364646 4369385 4401620 4395951 4378794 4361693 4378562 4361879 4381391 4373379 4382709 4382073 4364814 4374455 4392515 4360602 4396408 4379510 4375901 4387076 4383309 4404722 4383116 4372445 4365368 4364859 4353206 4399207 4373332 4378131 4366578 4388242 4382078 4392201 4396546 4383892 4384551 4393934 4395989 4404237 4379797 4384344 4378299 4378734 4394189 4361228 4378518 4399295 4403636 4413011 4409821 4401296 4397559 4420627 4398147 4384001 4419952 4401150 4403055 4378511 4416440 4425486 4414826 4405282 4406459 4375378 4416449 4398472 4426509 4413311 4399601 4407318 4408688 4419394 4408388 4412135 4424469 4394844 4408447 4395462 4410395 4388249 4407158 4425414 4413014 4444131 4410278 4414509 4419205 4402222 4410482 4424682 4409145 4396895 4415185 4425394 4409954 4382512 4417981 4409164 4422859 4440737 4427049 4425359 4437378 4426228 4435714 4413081 4431450 4412913 4406696 4423480 4421301 4426911 4431979 4416924 4442487 4420120 4421201 4419907 4414355 4440800 4415996 4422578 4409654 4426082 4439530 4446250 4437409 4424093 4432903 4413594 4420627 4430508 4401151 4439298 4425937 4390689 4430684 4447655 4428167 4405422 4446815 4447337 4438187 4441875 4436933 4423438 4439002 4443976 4460921 4425830 4449635 4418576 4444930 4447709 4435577 4438646 4441245 4445203 4430758 4449418 4447318 4444638 4449455 4446264 4447768 4451351 4444162 4449029 4438541 4438665 4441935 4454464 4443964 4431394 4433877 4446422 4452027 4435450 4417088 4448674 4456689 4448785 4445272 4473851 4471504 4441825 4433575 4453849 4438895 4456309 4435751 4475416 4471135 4446442 4451963 4453939 4437997 4446904 4447642 4456737 4464723 4426977 4452466 4454658 4432760 4441366 4459874 4448915 4438642 4472083 4463929 4459427 4439792 4446755 4471146 4428987 4444526 4464427 4472577 4470757 4461877 4472422 4453471 4468864 4475187 4461625 4466173 4459459 4467083 4477390 4427876 4463784 4444003 4464054 4464366 4457594 4474938 4466948 4462080 4470101 4453549 4446415 4465626 4474138 4473905 4447518 4460619 4461585 4478611 4462546 4474424 4487209 4454140 4479544 4479060 4471491 4449472 4489247 4478728 4478134 4482177 4477334 4474488 4495313 4462422 4483950 4509951 4465899 4501984 4498440 4480506 4456182 4485817 4487059 4480007 4486489 4499675 4466921 4491840 4499797 4477721 4515380 4488692 4501843 4492477 4489983 4487071 4496303 4501699 4497578 4459328 4490709 4474679 4477455 4469672 4475857 4494156 4482629 4510045 4494830 4507517 4503052 4488330 4498482 4479333 4468755 4513691 4481911 4509450 4496863 4484872 4515769 4488880 4467107 4503634 4502839 4493159 4514926 4491106 4491703 4499159 4500598 4506716 4520478 4525196 4512337 4496155 4505226 4501025 4512221 4498691 4501563 4510597 4501656 4507467 4471563 4497271 4500827 4493318 4499359 4518429 4516691 4498318 4507563 4550345 4508707 4507600 4478938 4514406 4492355 4506821 4517564 4502598 4509884 4500565 4483723 4536058 4494624 4509614 4510533 4525678 4484878 4541142 4522796 4493081 4530345 4512460 4524417 4523985 4542240 4523346 4529449 4511293 4526555 4517827 4522042 4523720 4519738 4530996 4524655 4512033 4547447 4520450 4547122 4516315 4512083 4542176 4523423 4522900 4528635 4518792 4512334 4528819 4534655 4527423 4543466 4535327 4544254 4550360 4541777 4524391 4547268 4540435 4507755 4549095 4517562 4553740 4547223 4525155 4542501 4535582 4540283 4520676 4529181 4533601 4521755 4539621 4534129 4572579 4536965 4546094 4546184 4537076 4539348 4541041 4539010 4529594 4566416 4558426 4525482 4554253 4534395 4572417 4544401 4570241 4578963 4533707 4554208 4559361 4557344 4550602 4590154 4546342 4535607 4531067 4567389 4527926 4546185 4554191 4539893 4565719 4534130 4560485 4557545 4567634 4542868 4547075 4561793 4568676 4533681 4569415 4565512 4575498 4545563 4559489 4554597 4554716 4560542 4574842 4566123 4568672 4566576 4569949 4571757 4574947 4555908 4582152 4571613 4578593 4583876 4583367 4533800 4566117 4558461 4554458 4563058 4592233 4552686 4571443 4567115 4568709 4572556 4577253 4566838 4570345 4588797 4573112 4566794 4566457 4543863 4569491 4555028 4569960 4572291 4556540 4564527 4573211 4589391 4578594 4576158 4573649 4581622 4566501 4583781 4584371 4597349 4566948 4573194 4569549 4574226 4582978 4580316 4574954 4578890 4561793 4579704 4576792 4578864 4560997 4576015 4556631 4622929 4604506 4567104 4593149 4565818 4601200 4573255 4594914 4563933 4596667 4569834 4599083 4573839 4615062 4556744 4596413 4582264 4616971 4601085 4561488 4615673 4609147 4589626 4576925 4635159 4599369 4610119 4613289 4586983 4590129 4577400 4608898 4593006 4602669 4607560 4624056 4608378 4586972 4596943 4599558 4607965 4587957 4626945 4598951 4604370 4641270 4596038 4606650 4620244 4613999 4603391 4614720 4631268 4594241 4586368 4607631 4597497 4610481 4595288 4616985 4608223 4624563 4635321 4620172 4628318 4634068 4609823 4603226 4642179 4615469 4643007 4640878 4635642 4604395 4617447 4632002 4609640 4621288 4624385 4601955 4616851 4625857 4610137 4623208 4646835 4625159 4620896 4621391 4650189 4620408 4612573 4596680 4626037 4614239 4628282 4634039 4631215 4604101 4639151 4639957 4634436 4652125 4600791 4631212 4627471 4644810 4626464 4626366 4625485 4632304 4643124 4647306 4645518 4626293 4665682 4641241 4652429 4629940 4637745 4638775 4624827 4659074 4629581 4636708 4662036 4643854 4636934 4644630 4629269 4634185 4650509 4634648 4649384 4621909 4653231 4640915 4609073 4640018 4650445 4650389 4658637 4624709 4651783 4655982 4666241 4644006 4635387 4643217 4633292 4675103 4678495 4661985 4677719 4666560 4662614 4655871 4650254 4663639 4663205 4624722 4656040 4657375 4677019 4644754 4663125 4658505 4656142 4657230 4674483 4669251 4686051 4655821 4671541 4678014 4635171 4660127 4624608 4695105 4699726 4677351 4663537 4670381 4651506 4698405 4659484 4682970 4677864 4699544 4692809 4673567 4681913 4666036 4690421 4667195 4651331 4698732 4687109 4644157 4675614 4678812 4654456 4680178 4684502 4669068 4687201 4703681 4672818 4653580 4689245 4714378 4680396 4681891 4663289 4645507 4677831 4652793 4668480 4670785 4687898 4673642 4665090 4680832 4689896 4668550 4651118 4665645 4716856 4690464 4706424 4700934 4666507 4668115 4684724 4677857 4689180 4672946 4692495 4698063 4701215 4717186 4684035 4718013 4708439 4703316 4691812 4682523 4709197 4680855 4684970 4679815 4701577 4701570 4703211 4685503 4674339 4701075 4710215 4691816 4686400 4710006 4693280 4686677 4693089 4721099 4686165 4694785 4714285 4706557 4691200 4707005 4715366 4725282 4708118 4682019 4705867 4734410 4688847 4723336 4715076 4716765 4702105 4715207 4698918 4701364 4707995 4706766 4713226 4709481 4682851 4706017 4717594 4690081 4730437 4734230 4728549 4698229 4708500 4711970 4744990 4717366 4705087 4719499 4740724 4712426 4703209 4726932 4739478 4717303 4694626 4742134 4714939 4701219 4739981 4724400 4751038 4723463 4722800 4724122 4725869 4723182 4727593 4727441 4704686 4707506 4726670 4752484 4753572 4736875 4734845 4720787 4710968 4736856 4746342 4707990 4724771 4716883 4712822 4709277 4744297 4751163 4731701 4717903 4718161 4787958 4736118 4726304 4721632 4746131 4722935 4743705 4738432 4726611 4716792 4744680 4755630 4726818 4746836 4721954 4736613 4761587 4744122 4740400 4744778 4749874 4739081 4737753 4726542 4726542 4758383 4727370 4756469 4738966 4737461 4756947 4744034 4782433 4754437 4761491 4748862 4743223 4765281 4753775 4754755 4762632 4753998 4762643 4737509 4737592 4764497 4743106 4734349 4754902 4749385 4750301 4740549 4743705 4744497 4774640 4755258 4771670 4758888 4772894 4776127 4759645 4747115 4777303 4741495 4775199 4763194 4756363 4763901 4757521 4757797 4785039 4749387 4752349 4763912 4726780 4772473 4779792 4758629 4752532 4764208 4766748 4762644 4770439 4796450 4776122 4772647 4747051 4773214 4759500 4766540 4724632 4789962 4768182 4778606 4779463 4759339 4779645 4749996 4784882 4787486 4780814 4756202 4763680 4757581 4777840 4784278 4767501 4773128 4772957 4779123 4776747 4791454 4765443 4800266 4772207 4780605 4789942 4775979 4786376 4788189 4793007 4760968 4798663 4789806 4798655 4799436 4770920 4804598 4780274 4792521 4776302 4801197 4783985 4811263 4797226 4783223 4784866 4782352 4782866 4789033 4777924 4818162 4799227 4788346 4800847 4788496 4815442 4815633 4786579 4801659 4814984 4800063 4805951 4784869 4785901 4815313 4814210 4833226 4794545 4813678 4810342 4809854 4815197 4822077 4810848 4787111 4815448 4801027 4800924 4790345 4802342 4819499 4804674 4798084 4818953 4817364 4810229 4798795 4834761 4786438 4807229 4831808 4799679 4807022 4821721 4812655 4819769 4821509 4827204 4803311 4813051 4800608 4821301 4823359 4823755 4832641 4801809 4812820 4835492 4815857 4802146 4816161 4838381 4788481 4810830 4839019 4836865 4823713 4825375 4826508 4812575 4794622 4808931 4822736 4827696 4832965 4834525 4823973 4852933 4834508 4832660 4817362 4800245 4821534 4845516 4836836 4842714 4843327 4845600 4833832 4845610 4852979 4851943 4842353 4835803 4846061 4819995 4815477 4822166 4831278 4844921 4841207 4835926 4832286 4854540 4845078 4845946 4835633 4834486 4829917 4856748 4868568 4823971 4831716 4866725 4844297 4848464 4855069 4823130 4850935 4899595 4844757 4849511 4838458 4851621 4832015 4852215 4860198 4852822 4846877 4841033 4839560 4869506 4867801 4850692 4837162 4834501 4848162 4848451 4831739 4856795 4857225 4869813 4839796 4847297 4843613 4837813 4847494 4842549 4851990 4859651 4886400 4875830 4875262 4861139 4875694 4864069 4873167 4870625 4882104 4867067 4868620 4863691 4856880 4871810 4857174 4849689 4865111 4896066 4859097 4881111 4877380 4874720 4850462 4861403 4871484 4874098 4855987 4861804 4875763 4867391 4885208 4860379 4894366 4855755 4871432 4875361 4893478 4858970 4871549 4889142 4864554 4886038 4885403 4885404 4881635 4893278 4854017 4885303 4875786 4888559 4884507 4889240 4872194 4857983 4894856 4891798 4887705 4884931 4882620 4863348 4883389 4867414 4865482 4876038 4880711 4906897 4900249 4890490 4861360 4905540 4886276 4882801 4890217 4884147 4896716 4892647 4894309 4891616 4880574 4893453 4910545 4886809 4905730 4880953 4869360 4895150 4898968 4880124 4907438 4901783 4872760 4912965 4899275 4898900 4894388 4890849 4927253 4883710 4894955 4908428 4885363 4889109 4895031 4893167 4903261 4902121 4892171 4909067 4918639 4917560 4914754 4931636 4896102 4897787 4912533 4937128 4911084 4927439 4920377 4923260 4929712 4909401 4909629 4876367 4915157 4912321 4937428 4898174 4916914 4933313 4914488 4888004 4935025 4930746 4916001 4910510 4922229 4899845 4896914 4911512 4905543 4916421 4914258 4924329 4921918 4922342 4945856 4892911 4916678 4930759 4908833 4897777 4949356 4903329 4938546 4924361 4929717 4919383 4898930 4917194 4902137 4896581 4953971 4942306 4918256 4942711 4922120 4957234 4943043 4912959 4960177 4939008 4952890 4922941 4948732 4943387 4927130 4927371 4935152 4925002 4939775 4941781 4981352 4932328 4963216 4948908 4922754 4944986 4931507 4920202 4940867 4926448 4946764 4933923 4939136 4929957 4938877 4955707 4946785 4935334 4940473 4916610 4945407 4934876 4956401 4946809 4952149 4950135 4944118 4955954 4976927 4964236 4928072 4951518 4953287 4956487 4962284 4972687 4941692 4968110 4940211 4952557 4949963 4948102 4949662 4925379 4927804 4961036 4947272 4949136 4957108 4969371 4964372 4938073 4971468 4942709 4966616 4965951 4952943 4968885 4993992 4965393 4967431 4944481 4964649 4969260 4972386 4970409 4967890 4973491 4956201 4956857 4975880 4951431 4948302 4972609 4967069 4965424 4978133 4953166 4947728 4951657 4948558 4970461 4967373 4970965 4958100 4967036 4980421 4969441 4967868 4974280 5000964 4962821 4983398 4979660 4980200 4973848 4967995 4955408 4973176 4961617 4967540 4996432 4972038 4998617 4937417 4975343 4983393 4939495 4997927 4985207 4988430 4997992 4972693 4982555 4993431 4988153 4974634 4948885 4999609 5020937 4982347 4959911 4990250 4955053 4993640 4977483 4987336 4992957 5003893 5007353 4980523 4992073 4973408 4992232 4982059 5021552 4979067 4995844 5016728 4979110 4990760 4993219 5005791 5000183 5003636 4977709 5013624 4989418 5023243 4993422 5027417 5006724 4993283 4993441 4976313 4998620 4987058 5018470 4998402 4990925 4978747 4995043 4995603 4988960 4995682 5002932 5016700 5005188 4988007 5016782 5007975 4997692 4999783 4990935 4994099 4993600 5002730 4997843 5022105 5032672 4999645 5007932 4988591 5005124 5023609 5020435 5000227 5010561 5018181 5007710 5009766 4996794 4996486 5012957 5019162 5041985 5017020 5005429 4991817 5019734 4998144 5002533 5015982 5013617 5009209 5000564 5022437 5021710 5039420 5012607 5026446 5017653 5058202 5020471 5062188 5033120 4999682 5021867 5038724 5025153 5002390 5014816 5018200 5031286 5016605 5021757 5039683 5029256 5022077 5019715 5059505 5036529 5023694 5039711 5014636 5052021 5038914 5025063 5026795 5019722 5059563 5027325 5052551 5036737 5043059 5037315 5049868 5054419 5039595 5035792 5050703 5025280 5041566 5025853 5062517 5039868 5061784 5040652 5058362 5062877 5057155 5054031 5047875 5036032 5075090 5045497 5056648 5040840 5048341 5043882 5040010 5046207 5066300 5051432 5061476 5038800 5042079 5049217 5037386 5028961 5052929 5054041 5043947 5059174 5055950 5036543 5038521 5059116 5042480 5064309 5045352 5042242 5044791 5087054 5038874 5053102 5027970 5091151 5056422 5046716 5058538 5057737 5050430 5075492 5057674 5054770 5033610 5068110 5061199 5028540 5070884 5083864 5049518 5078360 5060347 5078587 5051430 5066451 5055657 5062875 5064678 5074318 5057251 5040736 5087825 5065157 5056052 5065766 5030958 5054171 5082525 5043652 5037976 5071589 5058832 5058307 5070467 5110178 5068056 5065143 5087414 5097269 5075697 5076964 5060756 5040328 5070871 5067263 5082869 5083728 5087404 5079507 5080660 5091081 5090971 5073805 5101048 5048750 5079724 5099747 5080667 5079922 5068731 5084758 5062550 5081004 5047748 5073329 5090418 5055254 5058490 5093049 5078528 5081069 5091569 5079764 5077220 5077684 5086014 5085803 5090233 5099299 5083133 5087335 5082343 5095326 5076370 5077273 5094395 5090779 5115377 5071177 5090187 5074843 5076206 5079571 5069927 5089922 5106395 5098724 5115739 5096256 5070660 5082235 5120798 5108372 5100224 5101190 5093117 5110192 5093186 5109762 5095264 5096653 5106559 5084667 5113825 5118741 5076420 5094938 5129997 5097298 5086305 5108818 5126665 5103197 5110826 5101957 5086733 5109687 5101540 5112753 5106922 5119754 5101258 5115123 5108172 5098198 5139170 5107408 5130100 5118266 5113777 5090112 5126487 5104072 5135812 5094921 5123255 5103285 5132362 5121187 5129485 5130524 5113589 5118584 5130158 5112336 5123653 5126870 5127665 5135929 5127361 5117445 5127874 5112259 5110275 5152623 5143048 5142935 5122231 5128312 5136426 5138256 5134946 5136272 5138891 5090507 5116487 5139813 5150547 5134864 5142847 5141939 5140429 5116806 5146201 5139711 5122716 5097193 5145335 5130521 5129503 5144745 5132221 5153037 5148509 5152178 5151069 5161277 5138980 5149271 5132777 5144798 5132989 5146247 5166534 5163841 5161417 5136365 5141837 5136535 5122520 5136670 5160700 5166036 5127361 5167669 5163835 5154199 5132207 5141970 5154145 5185606 5136182 5152968 5153521 5135855 5153449 5165862 5155910 5152226 5170325 5112373 5127266 5170536 5160491 5162039 5162797 5149757 5160427 5186844 5171555 5177969 5154632 5154759 5146588 5178470 5188224 5162388 5132813 5144138 5199070 5139540 5149792 5170060 5170967 5153870 5175955 5151543 5163087 5162478 5177432 5190815 5195523 5159959 5172352 5175688 5180837 5146730 5184971 5165748 5197929 5173744 5173908 5178586 5155329 5157196 5189109 5168446 5188921 5176873 5192428 5185006 5196352 5199578 5202408 5190066 5200235 5189987 5203765 5192036 5175797 5195119 5177558 5176504 5190002 5179558 5193522 5219715 5190828 5223530 5176281 5185720 5187599 5200609 5191367 5222262 5196617 5202276 5203260 5191789 5218404 5184942 5168790 5216390 5222309 5167357 5218187 5202199 5201366 5175944 5218747 5195013 5238922 5188302 5170224 5223394 5223727 5191948 5193326 5208552 5208533 5227318 5192322 5218792 5190209 5234359 5191600 5226354 5201335 5191828 5216981 5203307 5186298 5197509 5216079 5206420 5211201 5200709 5218364 5208735 5241225 5195895 5216065 5200824 5192198 5241851 5221257 5202710 5193095 5224570 5217725 5233180 5225087 5255447 5213206 5220007 5208366 5241277 5216087 5217943 5247246 5210950 5225975 5216578 5205461 5189911 5221061 5211330 5222419 5205322 5227949 5208691 5226872 5228155 5226251 5215748 5215432 5226225 5241887 5213065 5223832 5227295 5224027 5211491 5233034 5204581 5212347 5223804 5225685 5227831 5235935 5224215 5217685 5199428 5242371 5229069 5218553 5211744 5246086 5211671 5231376 5242153 5227051 5229547 5231817 5226875 5227348 5250646 5238916 5253200 5242106 5232748 5266409 5253475 5251440 5229489 5220708 5251128 5246993 5253236 5261702 5242116 5242895 5223695 5239444 5234963 5242307 5235958 5213444 5250876 5236184 5244245 5228032 5218387 5228456 5259427 5241595 5250248 5264451 5268870 5250947 5241899 5241032 5259449 5278169 5268629 5243821 5272684 5235197 5269630 5240632 5237031 5273249 5262913 5231673 5265077 5243686 5280065 5233924 5258385 5259961 5276006 5233663 5253369 5282568 5259586 5254768 5238060 5264374 5247370 5240044 5277133 5243602 5251470 5262706 5274511 5254060 5256960 5293601 5279886 5265389 5291241 5249430 5260465 5244407 5257159 5260652 5278402 5282428 5231683 5252075 5293637 5292980 5236110 5296545 5233641 5256262 5267136 5246890 5276755 5257165 5299577 5305203 5297100 5242504 5268022 5292777 5280687 5293601 5265602 5281619 5268775 5289855 5289626 5289637 5306935 5265730 5277116 5287134 5287385 5280622 5285156 5271842 5279575 5303002 5303225 5294182 5298214 5303474 5295426 5288679 5279509 5277072 5306269 5314382 5295398 5320302 5307596 5288989 5281468 5297185 5291862 5312855 5302984 5291380 5290219 5283894 5291907 5296768 5285383 5300056 5325679 5294910 5292400 5282881 5345403 5334605 5309679 5296959 5313197 5286953 5294258 5306205 5324390 5319254 5305231 5284380 5321279 5319600 5302360 5315804 5294736 5310899 5271281 5336523 5321494 5305142 5305686 5321844 5310449 5349786 5328470 5298553 5315602 5321911 5339516 5331176 5336031 5299484 5298595 5310213 5354160 5315000 5337331 5307295 5318040 5336141 5336888 5297719 5331198 5346269 5320496 5316750 5340191 5314438 5308163 5323178 5342944 5371964 5331339 5307504 5318830 5328618 5325580 5320912 5311210 5342442 5321510 5313868 5332726 5344660 5322759 5345990 5372171 5342033 5329197 5326123 5329029 5335966 5326584 5308360 5331723 5326738 5323949 5329368 5324307 5322879 5309374 5323662 5335274 5346028 5346736 5321293 5335073 5328965 5361395 5361298 5351145 5319316 5314690 5327773 5346701 5324359 5335706 5347018 5348430 5301914 5318492 5349000 5345320 5340839 5336932 5342393 5355410 5349667 5350491 5334910 5334557 5360745 5327467 5338190 5345357 5336627 5371943 5344702 5332394 5359430 5344744 5340463 5339750 5308083 5350980 5335438 5354000 5337462 5345841 5357457 5342894 5322180 5363524 5333793 5339235 5346585 5378572 5321746 5359263 5363021 5337087 5350018 5356077 5397149 5354924 5349755 5346022 5362906 5357561 5367778 5341976 5367226 5380655 5360934 5344003 5361680 5363072 5343130 5377859 5368548 5387343 5349966 5358569 5349926 5355242 5388997 5337419 5366301 5346030 5384815 5379969 5345665 5350161 5377853 5377429 5373385 5363380 5382564 5372630 5381567 5367097 5355395 5362335 5394610 5398706 5381323 5374988 5396711 5391264 5360798 5382841 5366069 5385511 5386928 5380818 5391779 5386801 5373582 5382929 5385181 5365593 5390344 5369924 5392686 5369760 5394598 5399362 5392209 5372154 5405335 5385301 5367897 5390995 5352512 5374809 5386672 5405387 5385724 5400065 5413961 5392967 5401195 5377805 5378956 5399956 5396210 5400269 5380343 5392640 5414150 5391268 5415140 5381717 5397180 5418942 5402453 5415603 5365780 5402687 5402668 5405296 5413750 5415233 5383286 5408130 5408017 5379213 5412459 5426226 5409114 5406534 5405204 5401668 5439154 5407447 5438648 5419872 5383227 5395517 5423145 5394829 5411233 5411795 5426445 5418734 5384365 5400025 5409320 5442476 5416428 5384617 5427400 5429093 5435273 5442237 5429842 5420723 5409670 5424895 5421958 5409377 5414002 5396846 5414958 5421579 5443197 5393862 5435721 5442095 5414186 5414736 5427986 5406483 5419134 5413070 5407946 5398015 5411672 5417701 5433416 5454604 5434188 5456106 5427444 5420160 5425152 5425063 5423038 5448094 5420224 5418958 5442157 5420440 5443226 5434123 5418426 5406479 5435867 5425579 5467888 5442044 5449335 5457634 5423562 5426392 5456524 5432951 5431048 5442083 5432677 5438547 5431165 5442883 5417890 5424366 5416220 5425758 5441182 5425763 5428086 5449158 5463187 5429286 5437034 5438718 5435919 5454723 5424899 5443564 5436300 5432831 5458452 5456676 5453796 5425502 5462866 5449755 5444398 5428325 5436642 5456615 5429890 5428042 5430993 5467490 5437523 5431341 5451987 5446603 5457356 5439228 5408372 5445722 5466009 5483291 5440934 5461036 5464959 5465458 5438505 5454582 5447488 5442916 5467289 5436738 5463687 5452233 5472966 5438454 5462724 5443012 5470395 5467940 5475016 5449988 5466271 5457639 5442858 5482297 5476803 5468810 5474245 5473630 5492570 5486613 5483567 5446068 5484955 5510742 5469556 5445667 5498121 5490651 5485400 5468120 5488194 5482252 5496004 5475398 5487466 5473655 5477834 5470982 5478944 5473616 5469360 5473018 5481081 5496941 5467540 5498772 5485640 5468679 5472426 5509077 5504030 5509270 5505855 5486429 5453969 5486506 5498616 5476440 5469238 5475695 5488123 5480214 5493941 5471365 5528359 5492716 5478803 5494151 5479963 5477163 5475756 5486405 5500649 5469615 5514366 5478632 5506236 5489813 5505942 5509810 5505981 5500368 5480985 5478436 5466195 5500289 5503987 5493284 5508430 5508620 5485841 5472811 5514306 5531012 5479436 5516361 5496102 5505336 5484256 5513775 5474412 5517929 5535860 5512771 5482942 5501014 5502993 5552617 5514284 5518775 5494136 5500366 5501330 5495343 5529276 5511036 5485105 5534282 5521044 5504052 5499681 5532463 5491068 5514074 5512333 5505736 5518141 5514466 5498252 5509957 5501276 5504887 5522415 5545568 5531065 5491418 5517093 5516308 5470140 5530749 5527286 5537314 5527853 5559085 5516595 5527048 5500903 5539228 5538689 5511150 5521815 5515300 5486331 5512917 5506235 5532945 5507630 5531799 5517933 5538976 5536022 5525780 5496210 5502599 5537465 5516670 5546311 5515880 5547425 5534289 5520248 5534501 5535855 5519479 5541018 5525319 5523144 5516475 5543317 5512202 5546622 5525833 5512242 5523318 5540602 5511311 5531312 5559153 5500180 5509865 5520676 5521616 5538293 5539402 5529917 5532472 5545320 5517475 5550871 5524253 5531545 5534063 5546386 5577888 5551845 5533736 5531922 5532736 5541261 5529018 5535316 5568901 5550292 5569530 5561954 5574419 5550080 5555546 5552713 5569290 5550275 5571779 5555252 5549596 5559709 5516277 5544188 5558777 5556082 5545974 5537936 5528249 5566299 5544919 5561681 5559580 5550915 5550908 5523543 5533487 5564439 5559399 5536967 5573256 5569052 5571138 5541888 5552434 5577452 5553770 5573835 5571159 5564785 5532561 5538120 5553237 5551005 5604404 5576915 5549541 5552857 5572151 5568651 5564809 5572127 5587102 5570106 5585467 5581358 5578623 5589971 5572505 5579299 5563257 5573806 5573678 5568100 5561340 5573870 5570449 5587808 5572500 5578193 5586930 5585175 5570619 5591280 5571943 5563682 5561149 5566636 5600720 5586030 5583198 5569801 5570304 5549182 5566203 5580407 5608794 5575056 5585174 5595091 5555232 5579789 5596592 5572189 5574085 5554611 5584821 5570905 5631158 5595488 5576054 5606672 5583640 5586952 5583836 5576980 5603460 5599601 5570754 5576156 5588384 5576536 5572572 5598423 5581717 5593340 5589464 5591072 5603668 5624924 5600607 5594176 5609178 5618624 5591902 5567527 5609636 5567363 5636803 5603886 5621154 5589732 5608687 5573180 5631879 5595004 5600109 5623902 5587729 5597110 5591151 5599621 5602301 5618838 5595246 5635353 5604706 5654243 5597706 5624421 5620926 5600360 5616701 5616408 5592814 5613733 5610951 5619977 5613052 5619162 5617964 5659337 5611709 5638337 5606810 5607418 5620669 5627126 5597054 5612958 5632549 5617534 5605054 5612223 5584825 5608670 5635480 5609619 5607550 5619997 5605722 5635620 5591791 5610413 5616191 5633676 5640815 5621144 5607604 5615791 5628339 5614060 5631915 5668041 5622935 5656362 5646671 5616193 5645400 5632457 5623748 5634854 5627306 5632613 5645288 5620542 5652692 5638082 5625302 5644151 5618866 5621654 5637268 5652171 5630704 5606561 5592652 5623453 5633769 5635951 5639429 5632600 5663812 5623032 5679281 5628338 5643285 5669380 5649779 5602495 5661241 5616337 5624445 5642643 5639970 5632931 5641570 5626191 5630364 5684696 5647046 5629604 5678800 5655833 5635554 5616423 5653655 5640996 5632489 5629534 5630844 5628037 5639089 5655792 5632315 5651406 5689401 5679204 5633710 5649988 5629144 5664162 5663572 5655491 5654478 5655644 5660871 5648154 5664520 5653195 5662453 5636258 5672350 5675122 5663267 5673909 5662495 5658685 5658335 5646223 5691624 5640021 5669565 5682392 5681250 5663603 5646214 5656704 5680344 5689526 5673361 5667676 5654049 5677950 5677505 5679391 5669388 5678194 5667481 5707807 5674288 5679985 5671782 5674788 5679325 5695221 5685102 5656064 5694580 5673942 5691531 5702952 5671899 5687154 5680065 5651024 5659207 5679549 5654055 5666481 5662610 5709635 5644533 5671905 5659747 5689543 5681478 5680725 5673684 5675307 5691001 5682792 5704864 5677170 5676828 5688433 5686032 5693389 5672685 5681359 5691118 5706707 5704160 5692391 5702810 5684600 5674682 5689216 5687845 5685029 5703579 5690540 5682105 5678899 5674383 5709955 5706690 5701426 5682832 5678880 5693069 5689521 5722125 5701973 5689097 5699756 5681239 5719884 5681397 5702170 5679662 5685452 5695441 5729219 5707971 5690624 5715896 5710245 5716900 5694179 5705915 5699952 5693030 5711122 5680341 5713601 5701290 5702776 5701822 5710549 5706767 5731514 5700830 5717429 5721031 5729096 5733433 5722344 5705827 5723652 5701207 5700920 5698100 5691287 5729934 5729104 5715202 5702499 5740475 5723162 5712930 5757180 5713717 5726347 5727260 5698953 5738807 5716163 5705958 5737331 5711881 5720869 5736629 5728474 5731235 5729710 5735420 5742153 5738154 5735443 5737963 5744203 5732813 5735280 5738991 5713152 5717132 5734342 5748654 5749344 5738603 5737098 5706876 5738860 5729173 5743039 5739749 5770991 5744691 5734436 5732783 5746844 5730086 5747624 5719905 5733488 5741361 5725927 5747323 5740764 5742960 5760818 5708864 5760753 5739577 5730325 5705657 5732858 5765273 5718897 5748266 5759266 5768978 5754697 5750704 5738007 5739492 5759003 5758534 5769588 5762118 5733619 5763898 5739374 5753210 5757152 5728396 5761715 5762612 5749545 5773257 5744624 5770962 5763114 5751611 5738924 5754887 5745455 5751880 5769272 5748402 5759832 5755171 5773860 5765952 5758334 5761931 5763338 5771246 5758819 5733787 5756989 5762385 5739441 5765533 5768942 5784950 5782115 5779132 5771585 5775306 5751553 5757959 5791823 5778146 5799414 5748065 5789445 5784004 5730903 5758568 5754048 5791575 5755262 5776600 5760013 5792632 5768021 5751661 5765578 5786097 5765000 5762050 5764427 5788208 5757595 5750521 5769255 5780670 5767704 5767169 5789398 5783041 5801199 5762915 5766818 5760397 5782466 5774183 5782221 5797920 5789094 5795464 5787739 5807630 5797093 5805211 5763946 5783850 5784866 5775577 5773281 5764241 5796615 5795892 5770187 5775878 5764438 5776648 5770514 5780798 5810359 5792687 5787108 5794063 5812705 5778663 5788415 5802251 5800195 5814437 5848225 5794487 5796724 5799182 5795218 5810502 5793868 5795151 5787226 5790846 5830404 5784817 5802563 5826420 5786506 5776925 5800473 5810426 5801382 5807222 5809933 5824241 5832915 5790157 5817989 5826727 5785531 5804040 5812446 5814933 5806899 5825527 5815483 5784173 5793119 5796819 5809759 5786533 5787395 5809731 5783694 5802374 5795442 5810135 5806263 5811721 5813877 5791866 5830126 5824206 5786332 5832726 5805867 5792444 5822512 5823433 5822803 5805514 5826330 5809425 5822936 5823616 5831960 5838641 5823720 5814675 5821717 5832226 5819635 5822897 5807466 5835313 5831957 5806018 5843550 5807881 5793272 5803119 5817711 5846514 5843706 5847629 5820163 5841044 5840771 5850708 5835529 5824724 5841731 5805750 5823240 5843783 5819841 5842869 5853574 5816951 5816922 5848773 5823985 5863224 5851154 5868465 5825909 5828261 5859702 5819582 5830718 5840303 5833105 5872332 5865056 5825281 5847036 5848471 5846321 5840800 5853863 5849222 5844344 5845003 5860046 5858611 5853717 5832524 5817803 5857576 5825896 5865397 5871404 5839510 5831722 5866223 5858484 5866231 5866860 5875174 5867956 5851759 5862289 5855307 5856515 5863229 5843545 5856113 5853051 5847514 5833935 5873575 5874784 5859139 5872411 5873244 5850257 5845304 5863875 5890113 5885171 5840569 5860123 5882273 5874246 5873762 5891206 5876287 5852361 5844282 5872065 5872793 5887026 5846564 5887040 5853957 5865258 5871430 5861820 5854469 5863581 5885236 5879784 5860313 5899083 5860779 5897692 5867567 5901568 5831693 5867177 5853542 5887815 5852084 5875039 5880259 5849476 5872393 5881465 5853740 5873035 5870337 5887715 5898317 5897297 5868505 5875182 5891825 5864632 5849083 5861843 5870714 5885728 5887840 5885942 5889784 5872240 5862157 5847986 5900664 5898276 5887961 5882590 5886186 5899786 5907041 5862828 5930456 5904106 5896877 5874591 5889288 5898289 5904613 5908156 5876011 5882599 5871911 5902451 5920431 5901202 5912446 5935308 5879028 5895874 5893513 5893350 5886931 5914463 5936061 5879156 5891233 5917609 5916357 5902060 5889510 5905896 5898381 5941547 5904546 5906891 5919602 5898581 5912228 5911800 5920710 5911781 5918808 5928412 5916132 5918606 5933249 5897516 5906679 5927778 5914212 5921943 5880004 5903012 5924752 5941463 5913840 5927115 5900497 5929409 5922295 5928816 5907386 5907055 5929282 5908842 5922556 5948966 5943510 5933748 5913654 5964701 5918317 5916414 5913052 5933873 5927674 5942627 5908995 5915026 5904377 5959762 5932173 5953488 5922389 5928148 5940730 5925206 5912220 5943386 5920151 5945892 5913014 5952786 5932215 5920770 5928144 5957473 5934560 5952157 5928662 5913307 5932732 5922747 5910682 5938963 5958727 5972539 5913951 5962740 5953225 5943966 5931275 5949658 5959124 5927662 5954345 5942848 5966158 5936797 5958426 5943344 5943689 5948834 5966608 5952309 5967983 5960665 5983858 5934408 5925929 5957685 5940602 5968959 5968371 5959143 5942784 5942767 5970629 5969506 5952369 5951292 5959470 5971638 5949608 5964588 5934691 5959051 5966644 5963014 5972283 5948237 5937594 5950105 5955894 5942671 5953608 5958243 5970245 5955517 5979129 5966090 5983326 5959422 5955334 5942381 5941372 5956988 5959036 5973907 5957341 5990291 5970025 5976348 5960142 5996052 5979733 5980915 5984914 5957188 5952213 5990312 5955420 5967439 5958802 5980587 5959436 5948769 5980109 5965866 5981909 5962520 5974600 5964331 5949662 5968487 5964776 5979338 5963401 5954612 5944209 5945950 5986202 5974313 5983763 5965745 5988163 5975931 5984872 5974078 5978872 5973313 5977787 5988901 5949904 5960158 5953264 5994030 6005769 5969801 5971216 6019410 5976647 5969558 5996392 6004160 5986598 6005553 5991671 6011202 5989021 5980429 5993049 5998470 5994659 5994226 6007390 5968753 5980715 6019472 5987196 5973641 6023757 6021087 5986417 5978161 5992114 6016941 5991483 5987884 5996398 6029809 5981136 6006772 6014048 5990863 5992353 5973412 6016967 5985437 6010786 6021912 6007611 5998113 6031066 6009113 6028797 6008570 5980606 6019285 5990181 6003704 6033772 6013822 6003350 6020039 6007358 6013682 6025188 6013430 5978898 6032502 5990844 6029718 6007144 6052049 5995617 6040240 6021251 6021757 6043103 5994702 6011195 5994958 6012404 6004654 6005924 6019148 6060121 6025474 6021666 5995082 6026727 6035692 6034929 6018641 6003990 6029161 6027943 6019767 6002168 6025630 6020126 6041031 6015844 6041664 6041877 6022021 6013177 6045009 6043586 6019125 6063840 6023103 6070862 6034101 6041022 6058704 6041807 6034763 6029624 6072148 6036412 6054556 6016396 6030402 6054767 6036726 6023611 6022077 6030045 6022036 6043054 6023653 6040525 6037249 6055932 6036288 6031091 6053239 6049828 6037071 6027536 6077484 6035056 6035352 6028582 6057022 6080375 6047815 6040015 6028460 6047927 6052349 6074954 6053610 6028732 6041483 6052198 6064197 6065403 6059485 6045860 6043753 6069835 6033157 6043893 6055843 6056056 6053939 6057821 6063957 6055269 6055814 6041360 6054155 6061568 6070728 6069462 6048459 6046582 6033609 6051678 6046465 6057470 6068037 6084005 6057578 6037456 6057606 6036182 6056320 6090274 6079665 6055109 6037668 6076484 6087402 6078663 6063742 6081547 6081471 6079910 6069367 6050464 6074384 6087484 6058585 6086777 6098668 6072514 6074714 6079740 6051351 6096194 6093523 6077289 6081736 6078301 6079753 6114134 6064482 6074980 6102651 6085912 6096782 6053183 6070712 6076439 6093220 6086712 6091092 6096979 6080746 6034177 6067854 6104869 6095280 6086335 6084247 6070142 6098166 6080909 6071123 6093376 6081962 6095385 6088502 6073454 6096358 6077650 6091899 6110733 6057822 6119663 6092122 6082944 6076937 6086356 6109221 6110521 6065365 6113723 6075123 6115069 6091168 6108529 6103212 6073785 6076863 6064633 6096582 6088623 6072853 6086314 6079684 6118148 6094464 6117653 6118820 6100138 6085408 6112956 6100386 6103702 6097347 6100877 6101452 6127284 6106213 6118424 6083643 6069346 6113647 6121401 6084729 6072584 6099328 6109054 6112412 6085748 6106914 6088757 6118885 6106618 6140413 6109191 6096477 6123342 6118988 6107075 6110149 6093493 6128682 6099251 6131275 6138134 6111096 6151487 6128591 6111754 6098264 6110424 6110090 6131035 6129797 6101198 6126100 6150142 6108300 6092555 6139726 6110049 6102205 6116491 6120270 6121165 6128630 6140196 6148323 6152624 6120253 6114539 6129119 6133051 6094177 6130911 6105064 6140362 6119283 6136134 6137723 6134938 6146520 6108743 6137402 6146770 6159287 6132305 6161159 6133447 6135271 6141734 6113069 6137554 6130799 6145113 6150050 6171777 6139106 6152810 6141121 6135853 6141973 6129729 6184012 6159254 6152400 6156732 6103317 6126149 6142832 6156321 6140511 6151737 6121453 6163297 6146782 6159848 6150601 6131264 6124163 6164918 6125211 6130210 6122278 6160823 6156167 6139504 6126898 6134760 6133406 6138618 6137951 6175453 6155310 6197333 6155777 6167402 6168149 6128999 6142854 6141888 6161556 6170969 6179856 6161004 6152848 6178651 6156579 6154058 6195208 6173769 6140990 6182061 6158399 6140192 6165470 6186301 6172268 6191795 6132949 6197913 6153220 6152452 6178075 6147361 6167896 6174120 6136820 6139749 6177328 6169386 6172590 6173194 6175905 6159801 6146849 6147243 6154569 6153284 6192846 6176163 6172992 6185379 6194361 6161417 6161569 6183091 6202513 6170466 6170789 6170170 6187140 6152118 6173492 6196182 6174711 6157168 6219420 6190797 6199996 6188607 6181479 6180587 6180993 6177055 6205767 6168682 6233532 6191143 6169712 6197634 6207122 6206708 6199845 6201340 6201353 6179076 6197947 6205333 6182280 6199644 6200556 6175320 6183860 6183939 6169134 6193380 6183979 6182197 6207113 6198603 6216066 6206875 6214897 6205884 6191086 6212071 6199587 6192897 6232508 6187173 6198974 6208296 6209542 6206823 6196854 6231377 6192085 6229245 6200657 6210148 6216659 6211062 6208083 6199730 6228400 6225917 6190240 6226987 6205138 6187119 6254866 6232639 6208065 6235793 6223241 6203225 6184708 6193974 6261643 6225846 6231958 6227153 6212229 6243671 6198359 6224417 6210315 6222485 6263554 6213315 6242590 6209682 6200028 6199094 6264070 6208594 6238403 6198588 6216683 6240149 6206736 6215580 6222681 6216728 6233478 6240092 6243814 6239330 6196240 6240471 6225156 6206528 6235584 6220061 6228893 6193016 6228734 6258538 6238501 6228225 6216831 6212925 6219812 6210469 6240947 6202370 6221328 6226508 6230012 6239471 6219626 6228104 6238363 6227039 6262796 6248047 6243400 6225288 6240736 6230735 6244958 6232311 6251213 6239225 6256498 6230341 6266202 6257332 6261787 6237172 6266350 6228823 6225636 6263995 6226861 6264881 6259840 6231566 6266863 6249780 6257824 6243212 6241567 6254584 6240595 6250116 6261978 6247376 6276814 6226594 6233853 6277527 6253379 6281906 6247336 6258182 6253394 6271342 6235684 6264150 6262262 6255312 6248758 6267533 6270934 6275297 6290996 6255553 6284427 6263075 6284010 6233392 6276474 6257747 6258192 6272294 6284602 6259204 6272970 6272241 6242925 6252245 6246944 6261361 6247417 6255713 6264598 6254713 6295005 6253313 6254112 6236445 6283240 6267463 6288468 6262345 6297921 6281512 6280145 6300863 6280029 6259175 6252501 6294080 6260671 6292701 6274592 6280473 6286368 6289114 6281156 6261764 6276249 6266378 6258504 6302301 6311806 6275756 6263294 6259394 6291353 6285162 6262929 6298675 6294888 6283910 6283013 6297550 6278660 6273004 6285173 6279877 6286221 6283906 6319590 6281554 6293044 6293866 6318613 6272630 6291127 6295071 6286532 6317433 6293188 6288899 6293687 6299229 6288397 6311487 6294194 6305282 6307194 6292499 6305277 6298335 6294610 6257936 6330153 6327196 6327712 6283925 6301438 6299413 6294554 6303109 6309465 6304381 6292416 6303045 6290662 6295593 6306075 6314614 6292881 6308394 6334149 6276698 6311718 6323213 6290233 6306489 6316849 6343017 6356622 6317190 6329814 6301882 6313768 6318777 6305683 6311759 6316309 6327032 6317490 6332132 6336845 6324958 6311342 6306455 6311037 6322270 6331831 6315272 6287935 6320515 6326509 6338794 6331144 6323922 6324852 6353567 6291767 6335080 6321689 6329822 6318673 6303144 6333540 6333117 6323552 6320510 6354177 6314454 6307879 6348635 6349624 6334542 6337065 6304710 6349371 6360434 6330029 6309876 6302725 6323238 6331572 6330753 6327878 6341097 6333468 6316829 6333106 6349006 6340024 6330771 6363231 6324898 6325539 6344547 6319663 6314316 6335333 6375107 6358271 6320843 6338275 6361145 6308394 6327546 6356064 6337579 6341481 6361100 6329761 6344929 6337518 6343414 6358017 6354147 6333731 6345049 6338686 6366870 6374736 6339574 6360856 6327107 6311163 6363739 6338803 6344055 6328529 6355468 6338275 6367611 6338753 6350253 6346477 6360980 6371528 6388672 6311805 6353428 6351291 6372146 6321636 6331665 6342712 6347651 6348351 6342749 6333834 6359768 6339468 6362841 6343993 6367268 6306572 6364357 6351271 6367455 6363518 6353685 6367961 6365478 6347040 6355466 6380971 6363152 6372803 6370360 6350873 6359384 6356456 6395651 6403519 6356379 6349683 6407501 6354225 6356173 6384120 6390894 6340508 6381530 6385306 6372225 6391798 6367059 6346885 6376226 6363945 6372576 6356105 6406146 6399193 6367215 6357145 6356896 6409098 6381541 6397085 6360792 6364143 6370982 6373020 6381549 6382236 6392808 6408917 6386495 6377351 6381690 6395376 6374678 6379449 6395004 6379661 6389010 6386751 6366541 6367672 6385037 6389428 6405124 6376861 6368119 6374439 6361443 6377984 6403145 6394307 6375062 6381998 6389686 6386995 6379247 6401723 6385225 6386452 6395761 6385020 6389166 6406703 6385202 6393217 6398150 6408644 6405691 6401320 6380243 6403215 6393774 6391746 6398783 6400446 6374518 6368937 6408407 6411699 6399990 6397702 6391907 6407126 6419093 6395691 6411487 6401794 6383150 6401191 6399372 6401698 6429005 6384872 6400436 6418768 6408953 6407129 6413957 6434047 6405004 6387118 6398139 6404246 6418273 6413768 6433109 6426087 6401006 6431556 6416719 6382686 6397978 6458314 6407852 6414770 6409921 6416161 6395804 6385060 6411201 6430479 6407565 6417935 6418725 6400796 6424216 6409451 6453426 6418645 6408824 6427493 6424934 6404233 6409185 6425916 6446207 6430430 6447397 6430583 6408250 6418567 6417999 6469633 6420679 6464134 6430940 6425631 6430767 6423683 6421702 6446912 6427718 6388485 6456778 6413867 6430458 6427814 6469346 6422876 6440017 6418887 6405446 6440657 6433031 6425579 6431119 6461907 6429132 6454628 6442421 6442648 6439308 6445116 6423016 6464872 6494795 6453567 6448581 6419893 6453609 6428382 6416152 6451641 6418907 6462154 6422865 6439772 6444905 6476005 6457626 6456261 6484653 6451828 6447650 6419731 6461137 6430862 6444623 6446555 6478402 6461622 6454186 6451610 6447808 6455761 6456620 6458932 6474805 6443272 6467778 6443743 6453751 6487387 6449349 6469140 6459720 6457434 6451858 6491135 6460162 6463702 6451496 6480161 6474597 6470970 6463640 6440555 6468279 6467392 6481655 6451094 6458674 6443883 6480382 6459317 6443363 6501609 6469339 6486448 6454860 6503136 6487609 6482052 6474327 6471023 6464232 6477470 6475966 6474279 6508725 6497802 6467595 6479207 6489108 6483393 6460931 6486365 6472794 6496809 6479238 6456235 6476324 6489616 6487513 6507248 6498440 6456748 6455069 6436564 6468474 6461005 6446132 6476629 6475942 6471304 6480766 6494870 6477985 6503123 6495420 6484206 6501391 6469155 6493685 6466161 6507684 6484391 6485377 6504757 6526731 6477148 6529327 6527903 6507171 6532159 6490112 6501280 6495835 6495465 6533233 6497069 6496720 6511736 6497329 6502849 6501824 6503356 6516355 6501735 6478799 6529573 6507002 6513956 6505020 6527579 6510374 6524614 6508968 6501899 6492682 6522936 6503234 6483929 6518609 6517676 6499978 6518772 6514879 6498018 6517365 6512037 6520025 6518738 6541750 6521798 6511351 6541907 6563920 6517922 6535714 6525197 6511920 6515525 6523229 6509118 6507546 6521005 6522999 6518051 6511969 6507121 6540795 6537808 6512925 6501191 6524525 6523855 6516679 6516163 6513411 6523928 6524645 6512791 6497543 6540268 6499308 6527559 6521454 6532906 6567307 6553632 6508309 6522453 6508115 6501074 6554957 6547101 6555316 6530320 6517022 6515537 6521885 6543309 6559484 6549480 6542491 6519507 6528292 6526642 6536929 6529378 6541818 6534087 6558261 6528219 6520944 6520488 6548686 6512252 6540444 6586580 6530980 6548189 6528046 6538377 6524135 6553466 6522282 6559640 6546880 6556253 6531599 6544784 6563001 6540199 6528448 6547503 6569411 6569013 6549650 6515110 6533975 6556480 6531803 6572226 6561274 6558361 6547769 6543374 6526977 6565772 6552491 6558243 6544903 6542163 6577954 6571881 6552514 6534530 6560543 6546384 6551921 6573328 6555811 6525213 6549349 6585570 6555099 6591355 6562272 6557179 6569589 6552467 6569511 6537814 6566054 6585047 6571884 6565149 6571640 6574288 6551036 6591425 6568941 6568758 6571978 6559318 6583970 6572726 6577406 6563256 6566934 6583372 6582492 6582930 6569493 6588734 6554681 6558168 6597530 6569767 6578375 6558840 6583245 6574340 6565028 6581645 6559934 6582880 6576696 6561766 6612174 6588464 6568879 6607156 6571082 6586844 6571459 6576365 6594850 6585862 6572464 6585308 6601520 6622225 6558522 6562060 6589169 6575101 6615759 6580226 6606239 6582524 6605823 6600129 6604580 6581936 6590615 6592337 6601188 6596427 6574171 6607162 6589237 6594800 6644320 6590639 6625541 6592880 6590673 6578364 6577687 6565411 6582764 6593640 6621949 6630502 6613535 6611586 6606988 6592454 6624833 6567197 6611391 6599438 6628617 6597496 6593756 6601833 6630264 6648539 6618578 6628092 6605127 6635321 6607644 6608699 6615376 6600080 6633096 6630019 6603326 6614104 6627364 6610938 6637077 6627353 6656477 6599181 6617646 6626304 6621984 6594145 6634548 6618802 6619692 6634269 6646094 6652667 6646131 6612458 6643859 6621768 6618698 6625381 6624390 6608680 6637746 6592170 6643314 6610198 6643483 6616261 6607780 6604450 6648822 6645614 6634401 6637346 6640484 6618774 6654761 6643177 6620665 6631637 6630125 6619321 6632387 6640403 6624602 6614433 6633873 6624156 6630189 6602179 6651043 6632556 6630962 6640624 6623570 6614072 6661893 6656587 6690328 6658580 6656564 6655515 6645230 6636600 6629649 6631946 6627671 6657923 6625737 6664713 6634869 6644531 6635749 6657690 6652871 6641263 6646324 6624773 6639702 6626789 6655610 6642601 6631450 6626563 6666366 6638386 6660219 6642276 6642770 6661381 6640247 6629569 6646504 6641553 6661250 6664438 6701407 6641339 6656820 6672544 6626274 6697430 6680891 6666352 6670282 6661958 6648113 6616394 6680544 6688926 6658657 6644618 6645650 6670927 6633000 6684842 6663002 6656987 6681309 6673098 6681807 6654547 6686160 6666986 6666425 6662823 6676223 6615234 6684307 6671377 6633439 6697345 6635025 6676421 6687193 6682043 6670076 6670617 6683674 6682623 6676666 6674144 6691160 6671673 6677200 6647612 6682738 6675008 6686652 6632983 6706425 6667845 6678349 6668909 6679210 6665316 6702402 6684653 6677216 6704486 6679872 6673407 6687809 6668658 6687108 6661827 6690322 6673879 6678060 6684227 6709314 6702930 6696028 6675581 6694008 6686995 6677992 6735934 6720292 6697190 6724429 6699759 6720400 6678243 6683505 6672277 6675139 6705971 6684307 6689362 6701030 6671865 6680058 6684325 6675839 6662497 6690936 6717039 6690223 6681779 6711446 6711239 6699968 6705484 6702462 6727496 6701651 6694622 6731287 6725793 6676247 6725254 6709440 6721455 6685847 6709849 6701933 6698481 6747894 6727954 6722909 6680352 6742860 6716844 6708930 6700956 6717575 6703567 6720342 6711173 6732052 6729424 6735743 6686478 6716969 6744089 6673366 6698428 6723501 6704340 6706746 6712627 6694138 6726822 6715490 6729852 6685116 6694180 6708386 6746864 6724001 6724520 6672775 6711579 6747294 6675697 6734256 6719689 6724471 6699795 6736542 6719446 6702807 6722833 6770890 6720653 6769196 6719388 6726065 6770820 6696832 6731607 6751045 6695939 6713558 6760822 6746423 6753425 6723585 6720727 6765875 6722367 6720674 6766585 6742365 6733115 6734943 6738701 6705890 6705682 6769046 6757143 6733627 6718198 6762069 6745087 6741048 6744754 6757775 6766220 6746457 6734343 6739139 6773632 6732452 6740276 6759862 6783986 6727026 6738325 6759755 6749637 6751736 6726751 6747512 6717513 6765291 6773341 6768492 6755849 6757576 6750241 6772643 6739975 6739058 6735895 6770792 6752531 6752935 6763230 6744050 6741384 6737026 6757085 6740161 6737538 6729230 6767455 6756741 6767004 6735972 6808235 6737803 6768541 6769832 6760922 6727046 6752642 6770384 6747842 6760486 6718353 6710516 6763200 6783400 6752802 6786491 6768919 6789473 6764356 6735971 6762170 6775596 6761902 6771546 6749516 6775830 6741995 6742873 6763528 6771267 6800418 6773543 6787546 6778243 6774316 6792364 6778612 6762143 6756079 6791814 6764661 6790395 6779932 6790746 6788954 6762150 6758467 6783243 6768833 6800832 6779852 6815537 6772222 6782018 6783318 6793608 6773365 6767753 6789303 6790469 6800276 6791454 6819080 6783046 6767556 6795607 6789465 6776724 6785895 6818877 6799909 6795076 6772271 6811527 6797986 6805122 6800695 6760479 6784242 6778181 6796222 6805820 6787112 6796707 6779761 6799316 6795039 6815256 6782922 6824446 6817745 6777654 6831391 6787245 6794801 6808080 6820806 6821126 6773451 6792879 6770770 6796039 6813533 6825909 6808983 6802183 6779989 6806868 6815313 6806287 6801657 6830644 6787809 6788012 6807092 6799807 6801695 6792465 6849473 6805131 6799980 6828614 6801404 6814829 6800800 6794959 6821508 6802644 6823257 6809075 6807496 6825396 6839936 6846919 6810659 6829723 6784419 6793646 6816706 6831609 6830370 6812400 6830501 6822397 6787120 6810426 6790082 6814328 6820974 6811395 6784131 6825175 6835596 6839933 6798239 6804432 6843487 6814858 6806742 6841204 6820313 6854745 6828228 6829848 6830706 6840259 6848215 6843232 6846704 6842084 6857997 6846435 6847867 6817303 6837479 6838752 6827726 6829938 6839019 6841229 6860224 6820495 6855308 6856589 6841945 6847139 6838790 6824075 6849089 6863732 6847519 6831385 6831847 6813012 6863214 6860069 6806437 6848416 6825401 6831220 6824489 6845164 6842681 6829962 6865129 6850340 6870081 6836999 6844855 6836773 6851850 6842517 6835942 6853475 6852694 6837543 6841875 6886011 6844865 6851383 6836371 6866567 6859325 6822941 6826091 6861024 6867298 6866252 6852901 6867015 6874636 6867819 6847458 6864152 6873132 6892088 6861639 6844793 6872365 6866463 6850396 6833004 6846455 6877283 6872523 6874367 6884243 6835233 6864153 6849709 6851094 6890918 6873021 6884505 6887298 6886073 6875923 6855300 6845872 6855981 6857016 6864549 6830729 6846089 6895565 6874666 6906499 6889907 6870365 6885235 6858077 6874025 6889199 6867880 6855955 6869522 6834102 6887505 6899307 6881746 6891951 6904047 6868353 6870228 6868565 6892258 6900938 6897868 6905491 6856448 6886023 6874067 6894029 6869364 6903094 6836285 6873202 6869326 6873188 6897871 6903144 6917367 6904622 6866035 6880100 6897205 6920281 6910426 6882395 6872048 6889634 6928852 6878381 6895225 6907481 6909367 6921662 6909069 6866988 6876290 6920325 6910447 6918038 6909048 6906868 6872341 6891844 6885233 6909921 6879138 6915260 6902191 6881763 6892877 6901057 6907271 6908182 6921578 6868318 6905914 6920825 6900042 6889811 6904174 6917300 6899693 6903980 6885522 6904695 6881959 6896045 6950627 6904841 6887647 6919461 6898045 6903919 6887720 6903912 6923116 6910972 6921812 6886402 6933097 6916133 6904477 6915342 6913962 6907983 6877866 6948976 6915952 6909503 6934584 6903475 6946531 6909804 6927734 6935276 6897777 6921030 6928385 6912333 6927137 6913654 6912740 6922508 6929632 6924344 6923894 6931174 6911452 6934824 6931716 6903776 6918532 6949003 6926082 6916776 6916589 6966566 6939217 6934887 6928686 6920845 6922767 6918827 6921695 6932674 6932878 6901763 6938771 6918813 6952218 6942195 6951717 6926527 6932516 6942651 6942494 6959192 6941479 6935259 6929941 6959301 6952478 6951836 6956176 6913309 6946909 6946283 6933077 6925481 6938372 6959114 6972857 6951846 6936954 6942231 6955174 6943926 6936035 6951475 6945770 6947149 6924944 6949616 6935136 6970863 6967521 6966072 6964910 6936397 6937039 6927898 6956162 6898158 6956492 6943567 6980190 6936213 6975700 6952096 6961653 6983857 6985680 6935961 6968889 6978416 6987966 6958148 6957644 6951916 6974601 6968749 6950607 6963050 6947639 6985707 6959328 6980249 6980193 6968184 6991365 6962045 6953736 6963234 6949509 6977087 6925985 6962197 6992242 6963205 6960754 6937042 6950083 6972673 6942306 6994233 6968824 6973800 6983377 6975058 6985164 6996682 6972215 6996919 6976973 6955723 6988927 6988942 6978890 6976258 6977200 6966802 7011185 6985680 6998592 6971051 6974159 7001199 6971406 6954231 6958623 7033420 6968885 6963049 6972102 6971069 7045703 6990121 7000791 6997856 7002849 7011714 6996126 6985740 6998227 6993347 6970659 6993688 6978652 6976583 6975380 6991201 7001544 6981273 6964607 6967259 7023889 6994020 6967808 6936009 7003401 6980425 6977410 6945956 6989824 7001241 7009779 6979574 7012862 6998131 6982462 6992004 6981992 7003255 6984826 6999036 7021770 7002395 6954048 7029248 6987457 7040583 7002747 6987753 7001905 7034548 7003777 6990902 6997698 7027859 7013361 6992621 7005541 7021859 7012606 7029272 6989438 6991213 7012509 7036062 7011442 6998593 6995353 7040032 6971760 7001262 7039822 7029729 6983825 6977028 6995357 6992856 7020848 7014324 7032081 7001409 7014911 7030757 7008078 7023150 7021604 7039790 7002723 7029587 6987018 7028290 7020489 7036588 7027587 7038543 7014183 7024834 7013549 7012050 7047630 7006886 7021897 6984902 7010244 7039106 7023231 7031047 7046399 7025229 7030731 7064500 6998366 7019683 7033832 7047717 6995696 7051991 7004688 7038876 7036258 7053533 7035572 7022224 7059778 7027779 7012376 7039220 7040255 7050864 7065608 7024608 7059064 7070179 7041519 7028219 7015505 7047200 7032835 7034458 7042783 7026610 7041369 7081030 7045283 7080740 7063781 7052630 7077899 7058050 7030636 7051600 7061536 7044456 7072275 7044987 7070643 7035654 7073920 7030577 7019714 7067219 7058519 7089325 7043845 7044166 7046409 7034598 7055160 7057386 7043194 7087817 7057482 7082854 7064277 7057623 7070294 7037303 7067947 7048518 7062734 7082509 7063970 7071192 7077712 7050845 7058222 7077082 7056217 7067494 7068164 7067388 7068893 7067608 7077766 7068183 7080842 7075381 7076830 7055989 7057682 7074973 7074485 7052411 7066179 7072766 7085487 7095401 7083465 7066234 7104003 7069656 7078171 7075241 7064036 7046378 7082103 7093786 7078156 7069297 7069861 7082855 7083282 7091268 7102741 7092547 7070537 7075116 7078636 7076998 7105259 7087688 7096584 7125618 7095747 7067457 7089166 7073369 7071933 7109246 7097315 7098895 7056385 7091919 7095488 7104596 7087354 7065299 7073679 7092012 7084509 7108981 7111496 7095084 7088437 7076291 7112062 7076838 7059180 7084048 7101255 7079623 7108546 7115328 7093293 7095444 7126872 7098312 7102972 7091639 7105134 7124688 7099781 7094448 7110774 7093711 7108656 7082893 7082050 7123337 7095974 7094563 7112238 7071596 7113187 7107337 7132983 7094774 7109271 7129291 7117846 7106364 7074566 7121561 7119103 7114221 7133064 7115805 7126084 7103259 7116817 7099290 7094690 7125198 7091380 7105602 7128812 7139229 7120420 7119599 7145921 7125230 7150591 7126395 7105437 7097067 7145644 7113309 7128469 7120679 7144774 7135702 7127112 7127678 7136145 7155239 7112573 7110314 7103000 7123469 7121612 7143366 7155399 7137726 7122881 7183979 7138928 7138572 7113882 7121531 7128121 7128640 7139900 7112988 7137031 7129624 7116237 7150629 7133401 7113945 7119642 7131846 7153784 7148600 7131147 7148867 7119572 7140452 7127969 7155291 7152308 7158582 7166609 7143046 7134174 7155679 7136148 7131984 7124349 7158802 7147881 7122105 7136865 7152264 7143813 7142167 7145339 7161594 7154068 7179692 7180084 7141045 7178898 7139372 7162061 7134370 7169771 7125379 7139069 7160214 7153930 7166282 7145293 7172873 7179439 7158568 7156464 7155766 7167048 7171857 7172570 7162871 7170723 7192807 7164000 7137442 7169766 7164310 7176741 7178023 7169333 7178580 7159798 7176140 7185553 7152280 7171668 7188364 7184257 7160251 7182803 7163513 7176206 7180655 7159473 7172547 7187791 7168128 7174645 7187653 7192718 7149546 7174585 7164886 7180835 7175331 7223008 7183493 7183586 7186239 7156319 7168113 7164585 7198279 7195357 7184330 7206369 7158553 7175980 7193027 7177300 7171123 7169099 7208275 7183642 7198554 7179239 7180779 7198562 7209716 7176888 7200778 7215644 7203459 7184488 7216079 7203410 7182187 7194945 7192531 7212397 7163493 7163823 7191313 7185411 7199560 7172331 7207770 7206064 7222524 7175134 7223910 7183904 7169198 7206081 7190819 7193467 7209548 7205321 7200283 7197764 7193717 7205972 7190932 7218758 7204648 7237350 7186185 7189349 7193621 7223594 7185434 7222242 7225798 7191869 7186343 7211671 7227334 7190387 7221927 7190220 7180878 7195265 7211542 7183257 7206511 7227059 7189057 7199302 7220609 7215478 7195189 7228073 7193711 7219424 7222381 7263262 7218752 7191421 7197562 7217049 7201041 7228883 7248290 7250331 7226869 7217041 7203455 7236084 7225074 7229365 7204098 7205926 7241556 7227361 7235796 7225325 7226631 7240967 7222528 7241240 7242081 7194429 7249603 7254433 7233346 7234011 7228065 7225765 7236514 7211192 7219035 7232434 7242382 7219891 7222843 7207289 7237757 7268020 7221514 7251672 7236432 7200346 7226406 7234008 7229069 7240867 7232981 7212924 7244750 7256088 7239618 7238359 7253432 7235884 7239574 7234826 7238332 7251426 7238502 7274073 7235213 7199530 7262637 7260902 7259885 7207064 7232838 7230208 7241613 7252819 7266523 7266400 7268583 7244710 7253477 7217349 7240573 7245706 7240836 7259168 7239237 7264059 7220329 7222540 7243707 7224379 7246398 7257436 7233021 7265295 7267906 7288360 7266044 7227431 7249518 7256400 7252868 7280120 7261946 7258095 7260288 7269001 7268353 7253729 7280959 7255909 7276972 7248754 7237783 7269374 7241605 7289920 7264819 7270153 7272285 7281275 7277799 7277309 7263101 7250331 7304280 7270381 7248661 7287462 7265080 7275091 7265051 7284937 7312811 7296234 7256968 7258708 7289466 7267043 7238810 7272336 7277614 7279421 7261486 7312807 7252100 7270562 7263751 7278840 7263155 7281103 7254819 7291351 7283679 7291238 7271733 7297311 7307476 7269946 7279731 7270161 7303608 7249259 7281614 7280897 7269281 7306319 7279960 7298537 7313995 7291589 7303495 7261155 7300501 7311095 7275336 7323389 7248369 7275605 7298707 7278795 7298334 7263387 7296398 7276457 7298224 7301408 7301776 7283219 7335106 7271020 7294157 7310646 7288411 7257731 7304969 7291047 7287003 7293418 7301914 7332196 7300277 7302216 7272020 7301198 7295140 7271030 7290219 7315053 7290110 7290191 7301907 7295528 7314912 7311924 7329198 7303066 7291244 7291493 7319622 7278899 7325207 7303919 7276741 7310373 7306256 7289756 7287172 7329532 7285287 7304877 7284093 7335832 7327632 7287231 7344322 7299900 7313259 7278394 7297765 7328821 7305674 7295316 7313077 7295589 7320289 7308460 7317342 7342838 7329671 7329985 7355337 7320688 7311243 7327689 7327071 7318622 7307395 7327523 7323696 7315172 7324715 7331694 7322617 7333905 7324616 7321122 7350798 7318311 7344811 7320325 7369241 7321700 7343469 7303107 7303980 7303285 7315252 7343125 7317035 7331173 7324820 7356821 7342129 7322063 7356455 7319555 7335052 7365980 7316276 7314820 7343738 7316326 7323131 7359112 7327803 7353875 7332242 7371709 7345521 7346181 7325392 7350680 7346411 7315328 7320795 7343199 7331946 7355820 7341670 7325857 7336729 7333684 7333566 7343102 7355562 7345038 7387611 7316620 7338990 7338418 7340970 7333287 7329157 7348161 7382110 7343646 7322314 7335713 7358130 7354026 7350735 7330443 7354862 7358097 7330957 7375659 7356864 7375245 7344626 7343563 7376443 7358072 7338811 7369062 7337631 7361903 7370853 7358404 7346757 7366194 7380255 7362348 7374623 7380850 7374043 7358297 7374779 7392357 7377431 7379011 7358692 7354774 7377732 7400580 7359864 7382877 7375295 7377558 7342212 7371670 7381854 7398542 7363870 7375808 7358081 7343419 7340864 7380870 7376938 7368004 7405890 7394161 7343104 7365774 7371568 7364505 7370373 7371638 7396790 7409164 7370350 7384916 7369615 7378508 7398896 7380666 7371232 7386938 7398452 7394263 7386219 7390153 7360478 7373954 7385482 7397976 7390129 7394247 7361697 7370373 7383314 7364545 7387046 7398320 7408188 7394836 7416810 7400318 7429942 7414515 7382680 7388070 7435317 7424046 7404265 7425826 7379759 7400430 7410622 7399046 7378849 7377161 7412479 7425305 7356870 7392234 7379179 7408104 7371758 7414496 7395020 7417788 7404956 7386093 7418355 7428562 7409396 7417157 7408555 7408964 7386136 7429022 7422386 7363984 7409134 7423864 7413744 7401853 7412489 7430535 7402814 7399701 7446564 7408862 7419031 7421516 7420389 7419699 7400354 7388460 7397709 7419447 7401243 7424903 7451529 7429511 7406483 7395288 7450390 7383261 7424690 7447353 7430687 7420470 7429874 7421964 7410964 7434181 7408228 7434837 7461420 7426925 7427361 7446034 7450919 7426218 7410266 7468372 7405928 7452390 7421739 7435626 7433960 7443741 7433222 7443384 7426931 7461031 7426591 7443408 7440693 7421113 7413689 7415654 7434569 7437078 7453203 7439858 7445093 7448062 7463124 7450936 7449886 7430404 7444231 7425024 7440417 7463278 7455464 7413032 7445166 7451826 7438249 7436841 7430369 7445290 7436897 7475327 7466459 7459284 7446136 7436234 7433793 7440692 7487059 7455243 7394246 7420347 7443202 7455896 7455975 7490385 7476635 7447150 7445647 7447934 7453746 7422737 7438959 7436263 7452236 7452898 7468154 7448708 7452907 7446121 7449749 7455275 7462692 7479043 7437221 7436081 7455119 7451849 7444483 7430693 7459480 7449377 7471950 7483583 7472281 7420927 7474482 7457632 7474722 7441537 7458048 7469294 7437377 7464553 7439586 7455187 7488022 7454253 7436386 7472631 7446084 7450298 7461593 7500959 7469023 7473309 7457368 7483909 7466073 7470610 7471240 7470961 7435084 7478778 7484120 7490323 7465760 7443218 7468408 7489161 7445508 7461008 7482726 7486638 7479608 7458404 7473882 7478260 7496329 7490162 7465399 7501715 7487034 7507634 7459319 7460000 7496187 7471083 7490255 7504080 7471799 7473351 7456934 7493920 7478726 7476588 7485297 7428645 7438399 7486892 7453727 7469449 7497723 7507462 7515334 7489087 7432503 7491867 7506807 7495325 7486922 7488618 7496667 7470695 7494175 7480099 7486116 7512187 7482834 7490969 7506960 7462353 7506522 7532162 7479096 7516723 7539953 7479396 7486973 7529660 7477640 7502519 7495029 7496747 7463288 7514736 7482778 7503622 7504719 7485528 7531776 7504445 7509943 7521625 7489252 7495309 7525517 7492407 7510801 7493924 7548311 7511083 7516750 7543471 7503805 7526214 7496186 7503286 7503089 7511174 7543684 7494129 7539358 7499831 7493358 7540679 7528194 7527517 7508317 7535903 7518993 7510446 7513693 7511455 7516780 7503063 7525251 7507825 7552614 7523194 7512244 7512241 7537005 7554276 7505771 7512237 7552839 7510711 7530996 7520455 7545854 7533727 7554193 7561080 7513191 7555818 7529758 7523965 7528982 7533367 7552959 7525713 7540221 7535523 7550433 7514530 7535552 7519258 7552491 7526804 7554780 7541472 7525703 7543017 7547571 7525967 7520506 7537648 7534356 7540451 7531877 7533699 7551057 7532672 7549153 7530367 7575809 7555938 7531949 7499578 7544542 7561911 7553497 7529882 7541828 7528242 7537939 7549405 7538902 7543071 7581833 7549762 7577219 7561471 7519666 7540002 7529793 7534138 7542081 7560177 7592958 7531778 7529586 7576499 7548027 7572808 7593100 7542784 7577406 7565200 7537302 7529435 7584110 7568419 7557268 7561037 7578837 7556569 7563703 7552863 7562407 7535226 7535983 7527131 7588094 7566856 7604217 7580709 7543560 7550890 7557772 7573009 7575782 7570810 7547356 7554375 7585949 7592621 7570209 7593932 7535638 7566595 7550510 7580824 7581538 7601710 7559686 7580232 7574264 7552934 7538740 7567748 7590348 7574096 7613591 7570018 7574298 7571596 7585600 7586813 7598201 7588201 7589832 7590099 7571202 7578699 7547209 7567725 7570161 7580095 7581373 7553337 7605467 7611258 7570059 7568319 7581419 7542910 7585471 7601771 7574693 7575550 7570979 7600435 7582909 7576082 7586114 7595889 7589922 7591911 7567736 7589587 7590708 7608007 7580111 7583510 7620807 7617082 7606693 7626479 7592055 7618378 7596181 7585773 7606559 7592505 7607938 7587944 7600667 7614448 7620195 7588943 7578506 7582927 7620533 7596613 7604667 7629535 7605989 7614807 7581198 7610823 7610886 7597106 7624204 7602537 7599672 7604450 7606957 7637243 7615235 7626516 7648756 7627208 7591197 7620518 7611364 7608116 7585318 7629642 7598886 7625147 7598108 7606209 7649968 7599160 7645942 7610247 7635606 7632541 7624985 7620962 7601614 7597355 7650402 7639248 7623122 7616767 7578176 7629088 7635858 7618448 7608149 7633510 7620652 7625579 7648791 7636671 7629528 7609961 7640480 7631243 7585768 7660989 7624129 7641707 7636703 7638945 7626773 7659129 7642207 7647769 7634758 7621794 7646204 7643656 7623630 7631891 7627217 7647997 7644171 7627195 7659210 7625051 7650594 7625276 7666371 7640453 7654240 7645933 7623912 7638881 7653395 7634120 7637644 7621638 7652483 7643075 7638439 7618920 7643208 7624969 7649023 7646770 7648997 7647840 7639688 7657372 7663970 7636842 7634630 7639328 7653738 7615462 7642148 7656038 7640433 7627774 7606780 7652742 7663011 7632026 7653846 7672249 7624844 7628800 7666544 7647255 7667333 7648951 7631451 7653805 7649629 7666152 7633311 7662817 7681190 7655221 7649790 7673472 7692841 7661083 7668392 7662863 7633604 7637873 7655003 7638424 7688834 7650834 7669944 7651296 7676025 7662944 7665834 7678876 7670162 7672279 7689631 7681966 7652252 7667980 7655763 7661158 7652491 7644185 7657672 7691411 7654576 7654620 7685798 7685504 7700504 7678951 7644879 7674300 7661519 7655244 7640985 7671675 7679489 7663421 7675835 7670497 7665235 7647385 7667895 7670651 7690065 7669250 7668915 7657546 7670294 7719373 7677169 7672375 7672065 7691507 7700724 7707311 7694968 7688276 7656627 7701710 7687698 7726890 7690706 7718480 7682477 7628718 7676108 7650211 7729379 7662368 7683267 7690383 7694039 7694187 7695358 7697424 7688815 7702074 7683932 7673977 7714800 7688785 7671282 7686591 7704987 7719673 7688926 7702792 7699996 7650725 7705575 7692465 7716020 7698133 7721771 7682182 7695654 7694364 7727974 7725703 7703866 7706064 7682400 7709518 7720176 7730985 7736930 7682644 7716678 7718014 7701960 7719146 7706755 7698977 7690219 7701523 7695504 7732479 7695187 7732800 7695072 7723741 7748858 7721446 7691586 7695727 7737592 7708475 7720292 7713035 7718320 7745927 7720365 7744374 7693998 7724351 7723811 7733919 7728971 7745021 7754404 7767349 7728919 7708737 7740557 7740327 7678765 7723422 7703806 7701075 7759563 7746526 7752709 7709529 7746034 7721841 7721719 7730979 7737753 7734208 7739723 7734211 7720778 7751846 7722743 7764677 7703278 7749665 7737698 7722187 7746009 7731912 7754623 7737210 7768373 7704337 7751220 7693752 7773419 7745612 7727015 7747047 7742741 7695784 7745420 7727075 7724452 7753243 7728766 7731481 7769559 7690689 7733857 7769901 7757833 7724168 7748254 7742926 7720861 7723443 7759882 7727032 7757396 7744119 7769742 7737960 7768598 7736133 7793150 7763917 7747986 7739323 7767457 7768703 7722423 7764220 7749199 7775082 7778380 7764350 7754005 7765584 7745332 7732905 7732938 7737648 7731469 7779394 7752601 7731132 7777678 7752810 7751289 7766036 7741300 7769400 7743388 7749457 7774349 7749591 7768991 7747787 7809733 7764038 7761583 7772411 7720808 7755651 7753043 7762352 7756288 7787948 7794522 7793037 7767705 7813548 7753007 7798316 7756857 7757423 7779275 7786546 7798763 7751746 7778395 7766670 7766527 7788640 7787623 7768388 7756077 7764554 7786524 7748171 7791573 7752338 7760442 7762590 7761275 7766750 7790115 7761366 7779431 7745967 7777457 7783520 7790825 7799291 7754726 7786996 7812884 7780244 7773058 7770552 7778371 7772042 7800941 7784469 7779139 7785807 7788243 7767948 7787333 7801382 7804831 7770926 7803125 7769001 7821247 7824197 7778366 7776081 7761312 7773166 7794419 7822576 7749299 7815907 7810621 7797866 7780802 7750283 7826316 7781011 7791047 7799410 7800593 7813557 7759844 7760014 7789440 7815494 7806057 7803514 7803686 7811734 7798136 7797911 7801934 7823343 7811832 7778380 7837729 7766737 7828281 7792847 7790211 7823566 7799425 7802902 7790580 7790327 7852102 7817843 7823158 7788493 7796861 7852092 7798592 7777193 7815610 7801834 7825510 7805477 7799696 7845397 7811680 7824623 7812594 7829897 7818843 7811210 7834569 7800135 7814595 7808206 7817099 7841755 7821412 7802249 7825174 7840805 7825096 7800847 7849968 7820906 7810461 7834604 7867559 7808413 7837745 7808970 7837855 7828394 7832232 7807876 7843485 7845713 7825694 7819930 7810457 7795945 7829538 7820369 7843465 7810885 7825303 7805587 7824940 7778367 7823493 7844625 7792972 7824394 7831315 7818736 7814390 7825124 7818054 7822720 7808820 7840235 7827475 7814386 7851549 7807332 7824733 7821118 7812828 7809795 7830522 7819505 7819490 7818387 7871031 7833789 7862174 7832844 7852958 7857643 7826749 7851140 7858959 7813621 7845582 7841480 7865094 7850902 7858577 7847768 7883094 7855252 7835239 7863864 7876327 7845790 7856246 7878898 7834021 7852087 7842585 7866910 7829141 7877544 7832271 7882206 7844494 7863571 7891399 7867236 7871354 7873523 7836451 7847269 7856204 7858512 7888504 7867306 7851095 7865326 7867638 7856684 7900530 7858915 7841444 7854670 7867022 7880879 7895531 7844160 7860202 7877287 7869002 7877510 7850955 7866579 7862783 7858008 7881640 7874905 7864520 7885758 7890928 7863317 7884012 7869388 7875151 7884880 7892489 7883815 7895880 7877794 7878823 7893422 7882560 7904981 7882488 7897988 7826608 7854041 7854503 7872897 7880863 7886574 7901619 7861005 7874007 7889671 7878658 7912915 7898641 7902571 7895412 7868738 7905763 7876516 7920125 7882185 7893781 7885528 7880047 7884629 7904520 7861239 7906194 7885534 7896074 7896182 7935805 7899658 7859947 7902287 7897458 7889888 7885822 7897928 7932387 7902080 7867513 7888892 7935777 7927560 7930286 7889348 7908007 7873865 7904865 7903010 7917023 7886550 7915398 7883049 7877534 7904525 7897863 7928639 7912416 7903245 7916615 7900775 7903393 7917486 7896153 7895903 7929694 7876091 7893322 7931130 7910494 7939437 7891906 7901097 7908288 7916410 7900906 7925728 7920351 7918861 7911676 7931394 7938672 7934342 7915696 7927195 7904449 7915659 7927001 7934097 7916840 7916144 7915064 7910145 7928939 7914615 7902086 7896357 7894456 7939633 7933582 7924834 7937400 7903351 7933117 7920131 7940587 7936514 7943234 7929840 7919529 7920690 7910852 7914803 7933257 7905985 7916344 7928484 7923197 7929474 7931773 7922250 7922190 7922814 7941136 7938928 7914245 7917024 7938090 7966953 7923552 7930076 7937133 7905416 7935528 7932427 7925437 7952871 7925336 7936938 7925732 7940289 7949075 7922611 7954779 7934772 7962689 7958710 7961653 7950862 7949506 7948060 7909804 7934150 7921999 7945135 7958413 7931421 7942114 7988118 7956222 7956900 7943703 7955338 7949726 7942369 7960240 7977224 7955698 7964158 7951524 7938137 7951522 7973801 7945614 7981929 7979554 7947172 7993145 7965399 7958100 7973263 7947826 7950254 7952079 7990839 7930643 7963314 7988250 7942442 7954388 8004022 7971268 7948233 7974898 7952947 7955704 7971011 7978294 7939264 7955379 7942854 7948490 7934766 7968563 7980250 7944353 7955298 7954541 7930811 7950952 7968074 7963045 7993563 8008086 8004064 7949465 7960265 7990558 7988725 7982262 7961773 7960632 7999556 7991861 7978887 7962764 7993216 7966855 7999715 8008237 7938362 7960362 8002055 7975610 7972518 7963257 7987227 7986193 7971590 7940551 7955807 7968250 7974899 7950506 8018808 7956291 7971551 7978213 8001089 7976491 7980880 8004697 7999286 7990064 7987069 7984638 8003329 7978910 7993721 8001073 7984844 7990645 8001250 7976211 7991733 8008636 7987791 8002183 8028241 8038978 8025410 8044078 8025862 8002374 8001055 8023014 8001098 8020131 8000051 8010848 7993493 8002715 8007305 7999172 8007124 7968344 8023598 8028856 8021366 8016675 8012933 7994875 7985088 8007818 8045690 7995102 8034180 8037694 7997980 8015085 8031920 7998827 8012897 8017089 8022785 8028639 8037323 8011513 7992247 8013213 8000951 8006546 8019700 8013310 8008346 8016260 8001656 8032796 7987338 8003327 7993734 7987764 7975224 8002983 7996808 8015885 8039758 8014901 8017245 8014257 8027882 8011475 8031190 8010482 8001969 7982725 8018424 8028970 8017052 8077033 8042535 8057379 8020789 8016582 8009875 8039919 8025343 8040286 8002798 8008969 8025759 8006392 8028583 7990111 8062825 8036517 8003144 8045782 7987502 8045833 8008629 8024210 8026694 8045371 8041683 7995674 8040021 8036115 8019856 8029174 8017670 8035354 8036813 8068236 8039627 8019828 8022419 8052353 8007308 8052309 8078726 8046837 8049592 8010952 8026339 8042285 8028745 8064685 8008245 8038920 8047379 8069363 8057316 8038089 8056599 8075367 8059784 8018674 8085207 8056689 8063261 8044952 8060836 8079558 8054325 8080738 8044520 8067084 8063408 8053942 8019474 8059368 8055314 8069271 8033397 8062484 8031826 8085535 8070799 8077567 8059970 8042277 8076107 8067367 8062037 8017335 8022956 8071679 8042704 8056241 8055322 8055502 8049985 8053290 8087418 8045551 8045172 8054855 8076202 8043212 8087077 8088764 8047560 8047671 8078761 8059880 8067324 8069013 8089873 8049399 8073473 8099106 8053975 8065439 8087746 8088287 8094929 8069864 8062566 8073701 8087058 8084664 8078055 8096462 8096274 8093814 8077801 8076654 8077443 8047341 8058489 8059564 8064688 8067329 8090366 8093928 8065241 8120694 8021312 8067352 8116346 8090431 8087736 8084951 8102197 8075211 8066137 8075235 8102610 8102859 8095470 8113828 8068231 8063901 8100778 8080530 8062557 8064138 8078595 8115753 8062702 8123572 8093283 8077770 8109131 8092291 8091260 8110668 8074154 8099094 8085322 8092657 8093823 8102525 8109396 8071518 8082553 8118728 8072415 8090528 8103641 8075219 8116572 8113046 8121486 8117137 8114743 8103173 8088873 8135260 8085497 8115367 8087991 8080119 8112798 8110295 8077718 8082290 8093185 8114374 8123065 8076233 8099603 8134797 8123983 8108935 8135537 8134612 8076231 8147597 8090647 8122689 8093633 8130305 8126632 8122052 8107378 8120400 8103263 8093889 8077698 8108564 8107650 8129463 8133556 8094006 8124928 8102901 8127862 8102970 8118262 8082255 8129063 8091611 8100880 8156201 8141362 8125072 8106830 8096562 8125749 8154362 8135214 8149650 8147852 8104216 8129343 8108680 8104889 8124261 8118696 8165177 8129481 8127770 8112498 8134684 8093058 8179056 8111190 8141797 8086909 8136943 8141554 8123818 8140884 8151562 8131332 8157249 8145398 8110999 8164986 8099146 8141954 8143530 8115609 8140057 8142831 8156099 8145536 8128886 8151207 8139122 8140646 8137761 8149254 8127910 8132686 8118669 8138630 8119342 8130065 8133417 8133494 8172233 8111794 8120825 8142722 8129948 8134290 8132847 8123293 8172906 8145371 8120596 8168624 8151524 8118754 8157598 8140608 8143940 8151129 8177350 8135259 8155453 8158166 8134989 8160402 8128169 8170444 8166649 8168243 8189920 8183528 8135963 8157959 8121640 8161755 8157064 8147270 8132505 8191837 8113696 8149871 8185644 8174724 8158038 8181329 8184735 8135649 8177164 8156453 8144318 8172153 8178382 8183304 8144707 8186560 8143355 8150353 8184932 8185395 8169079 8157384 8206274 8179921 8165967 8184453 8186961 8184402 8182930 8182421 8171763 8162484 8166222 8184191 8195927 8176745 8157852 8184190 8154334 8181691 8167170 8172894 8180799 8158439 8191910 8175025 8181663 8184750 8182044 8194909 8175486 8188120 8164179 8218564 8160646 8178873 8155988 8178352 8189408 8190949 8202414 8190534 8160194 8191835 8158065 8181232 8162338 8188799 8229375 8194235 8173546 8187280 8173246 8184731 8202221 8201763 8210010 8183430 8211064 8160881 8181218 8195249 8161354 8212441 8194674 8185557 8196183 8201330 8229795 8210333 8229742 8215641 8233682 8211137 8222533 8188308 8208609 8198464 8213871 8191858 8184635 8192021 8224137 8212305 8185615 8217901 8201762 8204989 8236990 8226115 8183242 8206529 8188298 8196154 8185402 8227152 8219119 8201143 8226472 8209981 8206889 8206391 8210769 8215866 8212137 8230473 8204992 8217750 8183308 8240793 8207538 8181652 8232237 8244362 8228601 8227217 8208397 8210710 8220236 8217515 8210721 8198349 8203508 8198178 8213756 8260817 8194936 8212068 8220207 8223173 8231900 8250049 8222784 8219764 8240409 8224776 8234229 8222874 8231002 8232033 8223195 8243579 8236887 8222413 8212148 8228724 8261230 8246672 8251418 8251820 8215865 8247202 8251886 8213829 8229229 8248086 8237658 8219594 8241153 8234042 8240147 8233377 8233795 8224609 8242642 8218196 8209509 8232866 8274399 8246240 8213213 8250023 8240688 8248726 8250272 8272137 8258138 8246354 8242950 8285089 8258468 8251016 8253358 8232542 8245339 8243027 8268728 8227620 8239980 8244504 8243724 8254150 8248627 8238798 8244926 8241393 8246872 8237929 8247298 8222984 8232537 8240587 8245260 8274983 8243101 8269329 8263840 8270088 8258899 8251710 8254057 8263750 8249062 8266017 8261280 8260514 8252675 8243352 8270503 8253166 8274079 8247836 8264530 8277258 8258938 8280875 8249253 8260138 8266320 8280307 8234766 8265033 8251532 8270408 8294927 8265865 8232648 8255312 8271082 8288045 8287312 8246264 8257849 8247115 8281327 8270287 8278282 8284021 8238207 8249003 8249633 8282383 8291391 8262934 8238888 8236731 8271133 8283399 8328358 8255448 8288818 8304488 8273455 8256131 8240523 8272067 8290207 8289320 8266185 8284881 8274024 8265025 8297192 8282762 8300900 8277800 8288379 8286412 8299867 8268999 8295423 8277889 8289527 8280203 8284337 8302958 8287950 8302816 8272731 8265820 8335159 8314256 8261530 8249901 8280623 8287720 8293287 8279280 8283631 8313934 8288303 8285923 8299146 8333241 8286484 8309973 8336384 8285968 8340134 8283564 8289366 8282653 8311651 8308336 8295354 8293700 8279386 8319116 8322045 8296957 8289725 8321097 8339798 8302220 8325429 8309498 8313922 8293938 8279048 8313064 8304198 8329216 8314965 8290558 8312303 8298747 8325223 8325992 8305345 8322681 8321188 8315504 8320637 8355233 8322831 8314986 8316192 8335858 8312660 8324132 8314341 8311780 8303288 8277178 8329490 8334480 8288956 8305304 8291597 8305405 8333281 8320777 8324216 8312271 8309474 8321110 8314047 8336316 8272632 8327973 8322736 8305664 8291082 8316298 8295032 8313456 8331981 8339936 8368302 8315470 8360399 8345353 8366892 8335550 8312615 8341025 8320131 8350367 8310436 8351582 8311391 8343639 8341997 8298174 8283945 8334182 8323233 8341992 8313095 8328487 8308088 8343682 8346618 8323268 8355480 8367149 8350147 8346097 8331647 8315275 8347884 8322354 8317124 8329772 8306786 8352900 8319488 8350050 8377613 8346143 8334607 8345842 8319088 8341796 8336006 8353960 8362541 8357622 8315450 8360574 8341585 8333692 8359917 8333301 8368605 8303410 8358817 8354171 8370720 8375654 8341003 8370048 8366485 8339069 8360063 8343187 8342139 8353738 8371344 8326762 8355860 8338438 8354546 8350564 8358600 8379759 8388731 8352204 8374677 8361735 8384332 8330868 8378593 8338000 8349727 8348435 8323296 8331166 8354590 8319692 8344331 8347061 8373672 8359337 8331391 8373167 8363042 8387572 8336400 8370820 8376299 8344366 8372927 8380584 8359325 8361419 8369558 8403573 8342984 8366796 8381323 8399226 8333541 8360599 8353143 8391253 8380953 8370538 8373764 8396221 8355351 8377578 8406574 8361511 8362802 8388065 8404292 8344593 8404872 8406689 8351957 8343707 8396794 8368485 8370789 8370452 8365496 8404354 8402288 8393090 8386555 8361869 8391681 8396509 8358565 8368536 8366777 8399135 8395502 8378281 8395085 8413104 8428019 8374463 8425973 8419524 8372606 8352908 8378627 8371782 8358703 8420566 8387521 8378439 8389361 8387311 8409659 8377625 8414180 8398929 8395351 8395922 8398153 8408832 8372578 8383395 8377504 8402227 8395183 8405475 8404399 8394656 8382743 8450168 8397344 8413760 8394934 8371669 8406096 8435214 8373235 8404510 8402072 8414305 8399986 8413416 8394152 8396223 8404252 8418078 8395963 8443074 8430578 8429774 8406338 8417946 8400730 8422970 8398693 8408698 8422041 8435137 8394071 8420676 8397527 8416358 8406980 8432257 8440243 8428286 8424462 8413997 8383920 8442742 8444262 8405284 8408124 8423808 8412328 8433672 8423348 8428557 8401879 8439475 8429093 8424845 8426976 8446514 8442873 8422924 8425372 8426249 8408436 8461058 8422003 8438365 8417209 8436630 8438213 8438619 8425757 8429859 8408055 8446290 8439036 8419951 8484466 8388014 8459349 8431571 8437977 8427856 8433108 8421038 8385581 8462064 8428933 8415591 8407370 8421592 8419640 8448232 8458410 8451379 8409454 8428606 8456111 8440811 8434502 8410907 8429273 8434275 8470058 8426036 8433991 8438383 8417951 8474269 8458069 8430071 8444646 8433647 8411342 8479660 8470657 8486859 8507898 8448657 8456220 8472780 8421441 8475889 8454146 8475214 8395379 8439639 8469238 8438428 8468723 8429500 8468061 8437582 8424475 8461926 8427832 8457994 8441992 8424707 8470703 8432417 8466666 8455165 8439268 8451450 8484427 8462116 8445441 8487008 8452550 8436146 8474093 8448277 8463529 8426595 8472259 8448735 8470953 8489331 8445948 8487170 8446109 8444896 8430323 8475609 8427776 8483980 8476577 8460974 8477439 8454994 8475197 8461171 8499774 8458890 8491790 8474530 8438056 8501698 8449780 8477995 8440808 8456958 8460688 8440238 8460123 8482070 8477009 8494678 8470790 8442378 8484003 8458960 8477163 8433442 8486897 8449118 8489674 8492720 8488356 8485518 8500243 8472231 8520869 8482940 8468480 8456723 8482875 8486707 8466509 8495383 8468107 8488540 8456869 8483165 8503625 8505829 8493766 8505052 8489856 8500572 8467551 8498154 8487692 8473966 8472312 8499910 8496227 8484943 8463188 8490733 8505331 8505626 8488701 8500814 8476498 8499886 8538206 8507973 8514811 8477099 8510593 8546614 8500243 8521584 8528156 8522053 8492236 8498412 8511202 8533637 8504907 8532772 8495906 8507705 8519905 8503600 8497004 8521373 8502660 8479516 8478010 8497628 8531484 8527699 8489710 8511799 8480318 8480250 8529490 8506668 8539932 8521536 8501593 8490271 8533467 8546141 8520162 8521101 8511503 8524310 8529518 8504075 8489234 8542767 8523796 8500567 8511056 8489964 8533054 8539469 8529192 8502424 8503464 8522208 8524904 8516952 8536438 8543603 8509405 8546722 8512341 8537911 8525690 8536109 8525206 8542942 8510079 8533738 8511967 8467482 8548454 8524285 8535141 8519018 8538551 8525136 8533694 8572359 8553318 8537598 8552806 8532937 8519162 8526009 8512614 8548322 8522463 8488005 8519516 8549060 8486077 8524977 8541657 8532860 8543263 8549064 8551719 8514753 8518404 8557764 8532527 8551803 8532261 8549103 8562994 8520094 8541085 8535573 8538223 8554353 8530747 8572399 8553777 8554293 8536146 8546898 8505339 8512463 8591608 8554617 8528184 8580851 8539767 8530935 8533936 8548683 8522589 8538713 8526534 8552413 8567859 8577464 8555859 8589594 8574994 8544787 8568506 8577917 8570787 8535329 8532665 8545380 8577492 8591559 8606606 8543019 8522845 8552759 8565242 8592564 8569001 8562094 8505905 8545324 8541577 8575373 8575879 8576054 8565500 8566831 8568127 8547894 8579999 8542177 8561363 8548381 8555703 8532235 8557367 8524821 8573127 8566514 8554164 8579034 8541906 8583500 8561422 8568876 8591504 8600843 8590127 8544254 8556113 8539470 8559847 8572940 8602218 8577367 8574997 8590133 8555694 8577673 8581602 8577823 8558584 8573402 8595002 8572589 8612461 8595120 8566525 8594205 8569913 8563116 8593057 8580794 8576691 8596289 8596689 8584389 8617662 8626559 8594791 8600186 8581479 8590421 8591957 8557378 8583466 8594240 8616408 8601718 8593468 8583448 8580580 8589396 8581733 8564265 8580030 8590887 8625276 8609738 8588833 8566667 8610227 8620479 8639069 8588453 8600975 8615853 8574328 8610148 8634621 8568482 8540301 8605178 8608646 8620155 8612123 8633910 8589636 8590546 8638457 8597940 8589306 8605721 8643928 8618247 8607121 8609690 8606551 8592755 8560421 8602598 8612316 8636147 8602857 8616166 8599448 8601278 8585170 8609378 8624406 8626840 8621333 8634116 8604764 8590338 8627181 8594015 8592237 8630287 8641530 8634667 8645959 8600966 8605373 8635253 8631917 8635311 8621101 8634252 8604973 8608507 8627696 8618993 8637185 8613326 8662762 8642965 8634584 8597060 8643384 8636945 8636906 8608922 8625943 8646380 8642079 8636664 8624620 8638890 8623657 8638591 8649296 8632980 8646480 8622870 8639719 8621266 8625615 8661715 8619079 8623781 8642214 8640333 8610815 8642383 8670207 8646740 8620528 8605079 8634608 8679118 8608751 8658067 8654205 8642909 8639691 8621196 8644290 8650635 8648751 8631795 8642942 8665223 8617445 8656755 8664591 8666192 8668081 8637170 8652991 8632834 8603248 8640278 8658067 8631216 8663683 8637920 8655015 8637132 8622565 8636752 8649010 8619960 8637051 8654352 8634119 8669568 8654194 8672763 8588410 8675334 8663180 8665490 8666646 8605004 8686482 8638698 8657697 8666852 8640056 8640985 8671211 8636738 8645333 8682265 8624613 8671611 8681447 8653345 8688613 8662560 8674729 8617746 8657565 8659575 8659321 8674369 8640348 8672748 8686646 8670231 8672292 8641150 8702060 8673968 8685110 8689147 8652445 8657996 8661386 8669734 8677991 8680555 8699669 8651154 8665579 8686135 8670059 8659588 8686192 8670381 8699366 8698304 8681299 8644089 8673746 8696869 8703986 8693937 8717930 8690927 8690719 8706274 8695643 8704303 8694021 8662584 8700226 8711024 8687126 8711523 8659312 8683770 8689792 8673156 8707472 8706473 8675172 8711858 8693352 8688061 8660949 8718091 8655714 8663751 8707459 8704646 8685569 8707764 8702606 8733815 8705729 8704869 8705243 8689942 8678920 8692509 8705393 8688862 8648721 8649800 8700808 8665742 8689257 8659953 8699533 8713445 8725578 8702660 8712522 8707810 8734615 8753626 8703929 8711070 8664242 8700393 8702558 8674427 8685323 8726686 8691442 8714395 8717951 8724204 8680959 8715328 8710795 8668348 8704713 8681662 8721873 8701882 8686975 8739730 8685348 8743449 8697380 8697739 8717569 8689223 8688607 8725897 8700805 8725854 8772138 8728531 8744802 8727119 8702233 8728917 8682954 8751309 8732157 8713211 8730870 8732455 8734221 8716533 8744310 8702971 8737255 8762196 8733312 8717595 8722670 8720507 8730013 8696120 8718437 8758217 8733068 8744779 8764232 8724336 8759340 8718437 8765614 8734084 8781308 8698104 8751128 8736907 8765913 8748860 8691752 8710013 8725049 8743298 8746753 8736332 8720369 8705719 8720087 8740855 8744698 8739345 8742005 8731535 8723904 8739015 8723797 8744901 8720995 8697198 8743926 8736068 8757565 8710444 8718697 8733151 8754033 8746618 8747030 8749981 8733685 8732042 8734869 8784360 8755427 8765063 8775029 8744255 8767127 8748115 8734149 8712576 8734109 8759469 8742615 8780053 8742274 8787425 8764093 8769906 8760929 8726697 8746703 8797012 8776745 8753461 8739640 8778749 8797314 8764030 8775378 8765691 8764114 8811224 8764704 8748066 8784061 8753160 8747757 8739306 8733963 8803313 8748008 8769733 8731427 8772961 8793553 8768288 8778772 8784595 8775153 8792302 8767946 8776808 8771229 8782483 8760113 8765831 8762932 8777380 8785668 8783630 8802633 8782171 8750381 8813156 8793091 8770093 8765835 8799076 8772693 8759635 8777655 8760572 8764060 8784941 8742986 8791746 8751002 8792210 8765106 8777527 8759654 8762394 8781785 8771304 8751030 8772304 8764877 8742460 8781627 8771638 8790235 8787492 8800981 8748325 8808963 8760895 8776620 8788492 8795307 8805139 8763338 8843578 8788679 8801789 8801814 8786666 8800167 8783473 8790918 8777510 8797878 8785410 8765599 8802396 8797369 8821057 8808038 8771833 8805023 8758338 8796615 8778386 8780301 8821245 8792873 8800372 8806297 8795397 8808590 8804243 8793823 8791426 8792064 8785439 8803856 8793462 8833357 8806465 8828014 8767907 8819177 8800415 8797452 8795966 8842185 8785830 8771587 8813858 8804332 8810662 8788830 8819181 8781246 8780133 8796773 8808894 8806628 8866631 8802712 8811799 8815876 8831694 8793099 8803560 8821509 8815690 8780108 8812953 8817926 8845735 8853201 8792958 8835641 8865122 8821217 8850637 8827672 8791267 8812714 8840595 8789203 8800933 8802039 8811444 8796318 8789530 8833030 8816394 8846994 8862696 8817047 8791424 8867739 8837884 8812672 8801974 8808960 8794169 8792430 8840804 8842338 8825349 8827709 8823149 8822972 8816385 8820942 8830468 8816299 8826879 8822596 8836364 8836014 8831478 8795406 8836881 8837244 8809817 8811389 8845107 8809709 8826133 8863351 8837442 8837409 8789359 8822718 8839566 8845460 8859463 8866818 8831853 8818485 8824431 8839020 8847893 8837269 8857546 8860856 8858576 8826377 8809248 8856827 8838316 8834809 8853814 8830682 8845982 8883646 8892892 8877601 8882555 8849200 8866899 8844552 8852306 8878250 8886225 8875594 8855059 8882193 8852705 8865568 8842122 8839569 8879300 8853105 8875869 8850807 8870567 8874847 8874990 8833528 8873120 8882846 8898698 8872915 8850678 8853452 8840971 8886647 8851723 8849137 8871903 8873255 8853552 8886980 8848178 8878954 8841558 8837230 8868040 8861064 8877538 8864183 8836417 8892402 8860938 8846666 8888680 8844175 8872346 8864586 8831736 8861994 8888876 8872788 8865879 8880754 8909659 8860569 8870321 8880865 8886981 8867729 8882046 8869775 8886309 8858079 8872204 8870922 8895283 8871402 8857229 8868582 8872818 8884300 8884851 8888416 8910382 8877226 8898526 8909688 8882792 8887285 8891563 8856580 8906054 8863823 8864668 8881755 8884357 8909404 8917468 8860128 8866589 8904570 8889662 8876391 8861933 8882720 8900494 8875067 8895341 8904299 8890763 8853998 8890306 8886738 8872227 8880279 8872500 8884104 8856576 8898391 8908712 8922256 8890053 8878080 8910564 8879017 8889064 8897251 8886918 8856610 8916433 8904296 8880604 8896529 8918891 8900106 8928185 8896269 8921903 8920884 8912914 8935849 8903997 8874777 8901702 8859116 8915066 8932986 8923022 8924585 8888430 8917682 8885445 8915955 8909229 8919536 8930596 8917504 8916998 8910242 8939200 8914798 8912107 8850892 8899267 8914662 8897771 8880593 8925375 8936188 8946471 8877905 8939939 8941455 8912290 8948800 8921086 8906574 8920320 8924195 8903244 8927735 8942800 8922850 8904663 8905151 8925969 8956223 8918192 8942407 8920807 8930692 8911642 8940160 8900561 8891510 8907431 8947642 8930814 8925246 8895636 8928126 8929430 8924408 8947099 8945036 8917108 8934534 8918910 8903717 8939968 8916677 8928646 8935575 8948211 8950316 8971400 8956070 8944081 8919850 8952212 8948626 8913324 8942451 8902113 8919709 8922366 8911404 8929956 8958601 8958515 8938996 8931680 8968043 8956823 8918087 8935479 8988679 8933579 8936513 8927387 8987020 8976260 8936955 8943945 8946737 8955512 8935802 8940206 8977562 8936093 8967053 8934173 8927821 8943140 8938767 8938720 8967870 8980442 8945080 8969873 8916876 8961813 8978713 8946537 8916493 8959856 8966158 8943503 8933342 8983605 8961725 8988767 8957487 8936286 8940633 8968327 8988290 8964856 8978829 8950614 8972983 8943141 8958286 8955878 8975045 8973023 8943022 9006222 8967957 8941870 8970840 8965289 8952993 8966281 8976790 8971805 8945991 8963156 8940098 8976756 8983685 8964867 8977200 8987613 8980416 8975562 8977577 8972388 9004043 8964528 8967992 8946800 8977336 8996146 8988524 8972036 8981233 8992608 8995227 8941109 8972371 8949507 8955459 8960856 8992085 9017446 9017547 8975687 8986033 8955261 8993227 8971246 8981055 8996239 8959408 9003949 9013221 8978884 8972109 8977049 8986168 9004928 8969934 8988647 8973791 9017734 8975601 8995127 8961168 8979361 8990979 8969895 8990088 8993700 8967302 9004956 8994441 9026212 8943855 9001916 9014714 8990776 9009766 8972027 9001643 9030776 9004364 9048455 8979252 9021830 8995256 8984227 8977451 9004850 8998806 9004099 8940512 9019833 9006346 9017046 9028557 9003407 8995485 8981151 9015749 9020384 9007387 8977611 8982540 8973780 8976132 8989124 8998997 9019064 9025050 9046803 9003017 8995728 8996865 9041008 9034639 9004015 9010313 9028176 8988930 9031222 9022787 8986348 9016497 8996045 9010986 9026489 9026195 9003785 9015234 9024927 9031891 8987112 9053077 8999592 9012765 9038633 9002493 9031157 8996838 8989593 9040113 9010264 9034949 9000060 9023334 9014458 8997393 9010937 8994605 8991991 9015874 9021806 9040025 9032666 9022850 8999635 9027251 9052026 9017298 9016582 9001780 9036365 9038782 9020424 9050999 9014044 9028839 9045373 9036177 9012535 9027009 9036072 9065010 9016534 9071077 9030717 9044448 9039016 9043563 9022359 9044543 9054163 9041843 9027078 9046282 9032273 9022277 9037704 9058342 9023703 9040691 9059274 9024160 9048730 9058821 9041480 9048856 9083753 9038134 9030124 9084395 9047948 9068789 9050481 9040420 9019075 9060537 9041290 9045907 9114163 9043536 9049260 9046430 9046017 9052696 9075681 9053948 9069284 9064510 9066834 9022538 9033337 9067879 9082710 9056261 9062921 9049712 9028009 9061648 9070820 9037083 9069036 9061126 9074425 9067466 9046880 9099924 9062372 9094035 9059626 9049684 9055558 9067165 9067387 9060561 9054562 9065390 9063884 9025212 9090296 9076737 9069901 9060469 9070471 9057447 9105961 9064525 9059911 9068078 9065359 9105418 9061756 9053744 9042737 9086628 9086988 9076277 9100930 9058932 9076117 9102391 9092400 9060339 9100244 9079024 9096003 9088263 9100094 9052348 9080909 9075413 9063805 9055496 9122255 9079446 9069642 9070427 9091569 9095950 9081535 9069610 9070596 9074711 9095056 9073297 9118647 9089713 9087987 9102714 9070091 9083421 9078259 9083551 9090390 9106559 9067668 9067730 9091297 9055620 9065895 9078625 9110504 9069205 9079120 9071682 9050702 9118073 9075984 9097220 9090477 9059744 9083864 9091910 9055848 9112047 9101518 9092264 9084152 9099409 9106908 9092882 9094021 9122023 9123450 9106218 9112686 9101180 9065991 9104546 9121292 9107639 9084836 9100816 9121374 9139942 9126025 9096873 9132900 9114576 9130414 9085723 9076551 9099500 9155392 9112991 9115444 9130947 9105289 9139879 9108932 9137401 9125901 9097650 9092242 9115796 9136406 9093451 9136470 9110842 9113293 9114050 9114310 9121837 9101518 9116982 9124018 9090438 9145182 9115810 9109102 9128074 9130371 9117154 9124029 9103879 9142245 9137847 9122573 9133988 9099652 9129901 9116358 9085342 9143485 9120797 9089778 9143161 9090616 9098286 9128736 9129374 9124762 9127340 9124004 9139982 9116405 9166691 9127157 9100954 9125580 9126303 9171926 9127051 9117061 9105651 9142308 9116601 9128137 9141596 9155551 9139038 9122619 9102724 9140901 9143672 9165076 9161333 9170153 9165949 9149350 9122663 9149147 9134727 9170784 9112241 9127828 9136189 9117581 9175989 9142049 9149436 9114117 9132553 9155288 9161472 9194877 9142070 9164018 9140976 9148601 9141461 9122022 9176767 9164008 9134692 9144238 9151008 9169245 9175081 9156551 9176278 9151980 9153228 9158922 9137630 9174251 9173236 9152590 9182866 9122952 9217078 9163214 9178048 9172478 9154406 9172294 9172556 9199922 9169041 9172925 9138096 9171318 9174505 9164227 9159029 9155384 9172363 9146830 9207570 9156582 9188039 9166729 9150940 9173725 9168299 9145044 9164551 9180848 9187091 9194990 9163230 9149408 9147186 9204135 9189998 9195644 9175749 9164145 9151117 9131344 9194751 9186095 9180069 9208326 9203425 9175173 9190802 9192135 9182902 9167259 9188441 9185767 9161689 9168460 9177738 9152288 9152316 9177346 9159841 9193228 9216009 9178208 9193041 9159652 9170994 9184023 9198389 9165814 9180799 9189254 9203899 9185092 9167670 9185592 9218458 9196641 9195997 9177191 9161995 9192496 9181969 9202926 9221377 9186347 9189421 9215996 9193704 9215417 9194800 9178055 9141131 9203508 9202535 9191027 9197493 9216926 9200241 9228892 9184438 9182985 9204853 9207419 9210038 9183719 9186421 9171051 9199327 9196788 9184720 9233391 9219429 9218315 9241381 9241059 9206564 9203361 9194385 9203655 9206826 9239391 9187785 9186759 9196060 9207537 9191172 9200438 9171350 9227061 9227119 9204832 9177326 9179096 9218547 9217479 9201914 9217593 9192246 9207801 9211897 9240471 9215397 9219314 9199364 9212594 9216940 9215552 9236720 9216441 9216619 9232153 9232568 9212961 9202776 9212421 9233955 9221003 9242757 9222300 9189847 9203869 9252199 9237290 9200648 9204335 9191279 9188037 9213658 9218671 9199566 9211364 9236930 9228012 9210774 9220777 9254817 9222592 9228753 9205482 9204066 9247867 9234271 9226465 9267102 9241712 9239610 9253727 9246904 9249260 9234630 9260343 9220772 9246044 9237954 9242929 9207735 9254766 9244752 9238792 9218116 9239973 9237540 9220561 9240608 9210975 9224041 9239595 9241641 9241895 9265202 9272539 9280791 9226799 9241697 9250092 9231739 9254419 9259252 9233632 9250677 9238002 9211340 9248933 9229910 9205071 9231211 9260158 9278502 9240342 9246014 9251858 9244309 9251830 9278206 9303979 9226176 9221908 9272012 9244583 9225707 9298760 9242801 9271135 9260819 9251440 9245624 9257715 9233619 9266686 9263148 9268252 9242394 9269337 9245039 9224601 9278556 9252339 9290415 9269182 9255115 9272246 9223145 9219696 9254725 9276639 9257436 9232327 9270320 9241005 9273531 9263637 9263421 9248112 9237024 9291367 9295069 9255372 9266677 9310165 9288924 9243878 9288585 9264247 9303062 9279774 9241118 9266873 9295505 9271373 9240471 9248516 9257673 9274778 9292264 9269244 9275039 9289513 9315669 9290350 9300913 9268652 9317423 9288411 9277440 9263296 9277930 9308525 9262511 9269250 9279420 9281025 9291632 9296608 9271683 9274399 9299758 9287684 9294881 9267050 9291844 9281823 9283839 9296365 9284110 9282091 9310758 9293150 9289423 9287938 9265391 9283936 9276066 9298248 9319056 9306094 9303681 9294473 9292273 9296443 9320829 9290470 9284194 9270031 9307941 9317819 9309184 9302388 9292204 9277386 9291644 9254313 9294751 9261375 9249467 9287648 9296387 9335998 9311329 9296184 9314744 9271205 9299250 9295837 9299957 9321344 9290800 9333597 9293931 9357239 9301073 9299573 9283166 9335144 9339116 9312477 9328185 9309174 9293335 9308750 9330712 9305571 9269565 9342135 9300937 9283174 9288196 9318146 9280042 9288033 9289408 9333842 9295407 9308288 9307125 9308122 9299568 9316288 9306135 9318071 9305262 9286411 9322777 9326225 9285501 9299261 9329880 9327878 9295075 9331063 9302884 9296440 9284662 9334424 9294877 9315192 9334231 9316273 9320559 9306537 9309522 9360338 9309206 9317981 9321754 9325810 9325513 9323448 9324181 9350711 9330286 9290899 9354677 9336471 9355477 9285271 9370755 9360998 9311503 9320415 9313436 9303480 9332785 9303458 9338092 9376812 9297924 9368553 9308543 9325334 9334547 9369054 9358972 9348739 9320371 9325417 9315692 9356193 9354553 9348607 9363867 9355795 9358213 9366603 9326762 9340562 9342257 9328870 9338837 9331137 9356944 9342760 9327439 9351978 9366411 9340655 9319647 9399628 9383267 9315408 9353220 9326054 9341891 9368644 9366854 9339108 9323420 9333650 9343011 9349106 9368282 9349205 9335069 9338659 9364638 9352240 9355333 9380159 9352700 9339040 9332855 9374882 9371575 9359332 9355828 9343726 9394245 9378846 9347708 9355724 9374388 9356660 9348168 9357939 9390522 9349505 9348553 9364666 9339260 9348404 9358441 9375402 9328104 9342421 9345710 9398346 9371994 9342132 9335408 9394700 9391487 9386240 9345554 9365165 9364803 9377372 9367704 9403113 9372272 9369540 9390890 9388828 9367907 9362324 9391287 9400864 9370418 9388584 9407074 9410230 9350816 9397960 9386209 9372376 9381189 9336107 9383929 9373482 9365172 9361590 9376776 9368417 9354195 9390049 9401545 9389457 9396394 9379754 9394736 9432220 9362559 9380884 9392067 9410487 9386021 9393231 9392243 9371331 9394154 9380454 9412439 9427228 9394770 9402524 9356367 9412032 9375099 9393024 9411062 9397084 9396222 9423536 9392105 9376983 9387633 9431943 9404321 9363049 9411301 9410523 9417664 9373772 9374891 9400154 9383696 9372819 9416410 9387603 9378477 9422816 9416462 9404100 9435147 9435485 9442772 9372476 9400655 9441343 9406369 9406542 9411793 9391694 9366872 9394467 9458207 9441595 9395233 9408189 9413932 9417042 9415082 9427982 9417054 9397054 9416713 9401425 9406804 9420926 9425725 9416525 9421865 9382980 9407900 9439650 9425509 9405207 9416717 9452463 9450602 9427618 9388122 9417258 9405369 9425597 9418601 9406009 9448206 9439503 9449053 9415157 9410403 9411063 9417721 9416024 9384704 9435928 9433004 9420603 9450616 9400047 9425194 9401280 9439674 9413783 9408666 9443428 9444941 9431960 9416920 9428867 9422339 9431824 9396974 9418513 9397221 9420135 9457421 9444203 9413144 9453347 9426478 9431337 9395976 9416769 9424381 9433162 9396129 9437384 9401572 9418826 9410369 9447176 9449490 9448862 9442157 9410431 9407338 9415881 9478211 9406751 9417266 9442734 9403535 9435724 9429375 9453921 9424596 9430268 9433422 9410267 9453415 9449255 9438670 9467107 9463909 9437463 9458664 9459022 9435259 9456679 9431087 9446986 9471650 9478730 9468141 9445113 9474038 9445382 9478269 9445098 9455665 9449840 9430277 9477048 9452948 9452764 9476028 9417929 9441830 9446961 9443245 9421076 9470722 9478751 9451067 9408388 9467141 9463716 9460223 9502935 9471164 9474528 9495692 9456936 9435950 9455449 9439974 9470798 9465261 9466289 9472984 9469447 9463031 9468966 9488070 9428563 9483073 9437193 9509095 9492115 9489594 9476185 9500947 9495137 9447109 9466802 9475559 9506177 9466027 9468162 9463023 9488981 9487529 9505450 9510933 9520395 9508567 9497762 9503504 9430573 9516149 9506171 9527840 9478924 9503487 9481410 9472531 9516219 9465373 9478244 9496531 9488949 9476996 9488442 9479930 9491066 9486911 9492609 9500409 9488832 9511316 9491203 9503340 9481926 9473887 9502546 9465588 9499775 9463714 9486729 9512587 9462908 9532696 9447077 9541452 9507401 9499349 9490379 9499714 9494062 9454985 9503766 9522670 9513134 9489282 9514645 9533285 9513151 9533594 9522831 9481809 9478032 9569844 9556635 9490329 9517383 9491632 9515640 9498445 9549996 9493276 9534552 9499416 9483002 9536060 9532787 9503927 9523875 9477196 9495755 9510881 9502095 9551986 9486585 9494784 9498337 9527719 9529610 9488152 9505014 9542136 9530990 9532519 9519020 9503096 9521899 9538559 9534387 9523889 9533455 9535240 9486546 9493864 9513357 9545444 9536790 9528204 9500695 9513311 9501137 9532254 9515426 9527657 9528772 9502006 9538123 9554007 9565515 9519826 9521209 9528952 9497413 9531341 9523203 9535562 9505584 9527661 9535634 9506801 9530268 9519806 9540009 9545154 9550453 9523535 9529355 9529465 9519205 9527312 9537097 9540892 9538646 9559310 9521529 9554564 9566850 9570675 9551857 9578349 9542112 9548835 9584735 9528124 9531010 9532217 9576524 9535078 9510121 9575536 9556577 9543893 9529224 9556656 9507406 9561312 9529552 9551810 9543407 9551887 9574648 9561047 9586439 9560431 9553582 9561667 9545982 9537312 9522377 9523169 9555664 9559863 9551378 9606978 9536719 9529654 9560477 9586918 9552717 9570520 9585767 9551909 9563055 9533107 9542046 9544022 9585039 9570344 9590902 9582888 9586332 9580129 9584897 9537496 9595311 9579578 9577672 9584151 9575031 9576474 9604973 9517410 9594416 9570346 9551497 9568613 9539441 9583260 9568419 9549338 9601935 9562087 9558226 9539674 9575965 9576787 9589688 9536132 9555733 9580802 9592275 9575809 9574279 9572903 9554908 9506773 9587799 9564370 9611346 9559321 9608135 9624728 9616599 9589588 9597002 9593107 9552963 9604186 9600256 9583710 9584101 9577842 9549791 9573820 9584161 9579040 9588893 9556229 9572090 9569021 9577693 9587802 9613461 9607325 9616155 9585137 9586698 9583628 9587780 9574246 9585886 9620161 9594630 9625204 9613873 9610972 9575832 9582394 9614996 9622551 9662020 9611640 9649419 9616104 9562758 9583750 9591373 9578556 9616200 9566608 9606272 9607851 9625615 9604677 9608982 9638739 9624549 9657967 9628620 9601262 9594900 9609804 9569021 9593694 9631208 9619573 9628932 9578724 9624525 9620762 9609424 9606024 9643565 9649741 9623392 9621688 9646886 9615757 9622374 9611290 9664023 9624224 9630614 9638402 9601636 9623751 9623686 9605604 9632446 9640474 9602916 9605193 9661633 9589721 9645948 9624231 9629349 9631989 9607693 9602378 9602968 9601211 9620902 9651564 9625355 9611005 9659105 9649122 9649057 9641391 9649343 9648801 9599987 9626566 9645069 9658321 9655622 9644281 9631899 9614883 9609369 9675240 9632450 9612254 9612967 9610366 9628358 9661404 9665973 9637559 9654039 9611256 9636806 9643322 9632083 9578863 9642037 9603462 9640949 9618283 9635110 9598476 9652104 9652398 9638481 9625561 9662283 9614458 9636264 9594227 9609777 9655084 9638789 9647684 9670509 9630184 9671457 9638173 9668007 9649100 9657418 9658791 9666897 9613262 9626915 9645331 9593717 9650535 9668736 9640424 9633685 9653071 9640306 9652520 9636034 9658422 9665813 9664488 9670607 9646506 9631951 9660890 9640412 9659123 9672625 9696440 9639245 9661523 9657066 9663448 9669408 9682985 9623416 9633395 9652577 9671259 9695548 9687224 9666873 9673255 9712402 9687236 9630039 9694716 9672447 9640946 9678558 9702062 9675605 9688339 9712771 9712837 9679115 9677217 9685327 9668049 9669058 9663624 9718652 9678089 9644327 9697891 9694225 9663885 9706705 9666056 9682440 9677551 9680117 9672018 9685076 9647151 9661120 9628691 9657648 9691493 9694585 9697760 9672769 9641916 9691639 9724873 9704609 9675910 9647136 9692053 9690464 9642487 9663361 9702677 9695461 9672687 9699773 9649022 9640523 9714481 9713414 9704488 9690902 9657436 9699336 9695820 9702349 9684402 9709656 9678616 9667310 9692694 9668349 9685329 9681690 9679687 9702337 9688318 9698849 9697086 9695843 9711767 9657136 9705605 9695272 9689842 9694411 9701930 9700713 9717675 9725064 9710682 9699028 9704405 9727401 9672304 9693578 9693674 9691111 9710550 9671989 9728658 9738791 9687324 9694658 9731527 9691451 9721846 9682008 9660243 9728527 9718754 9718928 9699338 9695350 9698791 9678162 9711406 9731206 9736568 9683964 9709527 9686860 9695846 9732332 9693899 9733300 9675443 9693570 9724449 9717013 9711284 9676934 9726551 9705103 9688293 9712809 9708782 9726534 9741167 9740911 9713326 9708917 9713939 9714841 9743798 9704218 9741349 9751110 9732519 9714937 9730339 9723530 9735047 9694679 9730356 9718585 9668413 9729116 9776336 9676188 9778676 9725318 9740575 9723433 9721340 9724479 9755947 9695584 9750502 9767933 9745139 9713137 9744804 9758482 9719398 9712496 9721979 9752963 9742564 9730839 9725499 9742108 9755541 9697253 9741113 9764370 9737883 9686940 9709902 9749051 9725298 9713756 9747344 9754927 9736705 9742076 9816810 9706254 9736386 9731223 9724540 9709522 9751740 9749382 9714620 9760991 9775131 9748797 9744347 9719435 9760282 9722497 9725861 9746770 9791289 9766241 9752737 9770481 9717680 9738908 9748543 9711368 9776215 9722995 9776610 9755806 9748836 9759708 9769328 9759081 9755356 9731056 9743589 9780507 9769887 9742431 9765092 9737305 9726272 9741688 9791624 9768644 9752519 9762399 9761433 9724880 9772879 9771884 9793842 9749979 9769763 9761999 9743507 9746522 9796072 9778263 9815578 9788828 9771297 9777385 9778440 9765447 9765053 9732041 9772815 9752288 9771935 9765386 9746687 9753590 9763985 9715907 9762431 9756049 9790623 9760274 9757216 9753421 9760272 9797695 9780845 9773509 9776041 9741560 9791720 9788047 9768320 9773718 9783130 9766686 9761791 9751272 9780790 9799588 9793641 9799680 9806201 9760590 9761531 9769607 9776936 9765524 9774274 9797306 9769833 9780182 9792381 9798237 9780022 9802299 9794541 9720806 9759798 9813866 9788201 9792659 9782770 9762719 9809668 9813864 9785846 9798902 9789786 9783096 9832667 9776648 9769190 9805566 9787160 9756886 9820936 9822453 9817390 9800715 9771539 9831084 9819444 9811316 9802654 9768685 9790689 9810439 9793448 9791818 9814206 9786175 9837962 9782411 9824639 9776216 9817073 9810826 9794336 9798674 9778299 9784509 9758141 9803299 9770030 9778634 9799630 9824707 9813087 9805695 9811499 9783666 9770348 9802673 9819200 9793667 9758402 9753902 9831171 9813511 9821859 9816493 9809516 9785298 9784140 9814317 9849860 9824166 9862089 9784907 9788280 9810992 9826945 9867062 9770060 9826766 9819875 9817141 9826237 9822021 9869257 9807439 9832496 9833036 9807023 9844323 9858283 9830778 9806304 9856408 9838541 9821143 9838276 9844060 9846598 9800942 9814945 9817603 9806742 9828690 9813960 9855134 9840759 9821593 9838664 9811227 9809566 9836833 9861556 9851383 9865521 9833536 9800663 9812114 9833739 9853067 9803065 9812759 9836635 9841328 9802996 9866227 9855717 9835383 9822145 9846486 9858157 9822515 9832633 9831720 9854433 9857154 9858242 9838310 9838288 9848330 9871642 9829083 9836119 9846720 9855005 9847704 9831650 9830360 9835035 9857274 9882789 9837279 9825714 9810995 9846559 9847765 9842492 9855943 9870779 9865924 9828686 9831907 9850929 9820051 9829000 9821495 9842508 9851212 9846644 9833922 9860568 9825073 9886118 9883251 9851900 9827772 9858401 9849973 9863659 9870002 9860659 9854489 9867358 9831428 9855921 9881684 9869394 9866280 9876939 9864169 9884275 9845188 9850137 9857746 9887847 9855041 9889938 9841376 9910242 9844302 9889621 9862585 9893253 9834303 9872409 9833262 9856782 9873015 9845720 9866624 9865905 9833867 9860614 9878066 9812918 9863419 9845890 9893527 9858454 9838802 9861181 9892075 9840194 9875898 9843870 9845674 9857331 9874091 9883523 9917355 9846933 9828424 9899050 9860314 9892932 9866327 9905255 9872534 9883472 9883246 9870410 9859210 9906909 9870540 9839826 9867298 9863185 9850443 9862133 9855336 9872590 9900423 9883838 9866455 9887411 9901474 9920154 9872989 9894678 9837214 9882804 9863783 9876283 9918734 9881762 9913731 9881236 9882553 9876029 9865946 9888933 9925473 9873767 9901441 9870544 9907481 9906270 9908158 9892178 9866126 9895524 9885677 9895893 9899104 9910598 9888177 9917322 9917608 9864807 9891392 9927012 9903133 9927896 9903923 9938189 9917376 9892155 9906778 9916785 9864138 9911549 9856878 9910807 9875323 9863780 9923724 9899253 9895605 9903503 9896047 9899241 9891932 9876979 9917655 9908843 9916029 9889518 9906621 9915644 9920522 9910339 9908653 9931451 9935366 9914567 9892215 9895153 9891727 9943176 9918861 9907167 9894773 9936269 9941069 9908298 9938788 9975560 9940516 9923475 9920436 9922457 9894187 9913747 9963850 9928852 9936170 9950348 9891767 9917785 9936693 9927538 9927871 9894453 9940028 9926996 9955077 9913175 9922439 9901789 9911423 9923336 9919016 9918015 9927141 9939445 9954678 9932579 9910464 9932615 9883682 9920542 9931808 9952875 9945764 9986793 9932514 9905360 9980929 9955743 9922270 9930974 9948771 9937879 9935659 9960571 9940405 9935803 9910026 9915346 9931452 9926315 9948171 9939542 9904013 9938523 9935379 9920406 9935212 9960447 9953811 9944341 9974201 9930863 9922830 9986277 9958468 9956197 9965319 9955845 9906831 9968565 9975116 9978429 9960413 9961951 9926906 9963786 9910558 9985899 9962405 9948613 9938734 9967888 9940181 9937206 9953110 9975164 9917750 9974473 9978824 9954677 9956209 9981950 9975430 9969203 9964209 9974563 9972540 9976507 9952253 9945888 10002865 9964348 9949037 9990775 9961251 9949223 9949260 9977527 9990089 9954597 9957216 9992934 9994201 9958444 9978978 9954934 9960298 9977246 9994116 9990883 9980076 9954779 9963686 9961583 9980965 9981353 9979715 9984331 9950403 9974157 9986563 9971170 9967703 9973807 9988438 10005937 9998489 9989011 9976419 9977858 9954689 10002837 9971753 10001817 9975477 9999379 9977855 10002702 9959577 9996742 9983927 9962535 9952950 10018151 9988692 9956485 9997709 9975718 10015659 9985687 10008534 9989661 10003493 9991849 9997223 9992078 9981134 10004653 9973776 10015358 9965773 10003639 10023761 10010090 9987273 9986889 9989497 9995511 10004433 9960475 9992243 9980913 10014488 10024471 9997203 9988216 9988783 10008829 9982244 9965551 10010386 10018917 9976077 10023848 9981564 10012179 9978290 9957694 9994800 10015628 9989535 10002871 10026213 10004311 10014642 10004910 9994490 9980369 10040741 9983021 10013479 10022448 9984678 10019087 10006311 10009454 10027950 10017167 10047254 10008331 10000264 10024676 10007025 10054374 10017696 9999400 9994432 10042252 10012184 10030178 9997686 10045853 10029283 10017668 10019913 10017001 10015738 10017002 10019652 10038573 10024077 10049658 9969091 10047679 10020153 10032312 10043139 10042009 9999446 10016575 10021849 10066994 10025635 10053849 10009496 10049306 10046076 10033131 10011813 10060050 10017372 10053959 10033273 10044903 10019167 10005359 10044467 10030218 10040334 10064604 10081832 10063272 10054063 10025636 10071057 10053953 10056877 10043111 10021088 10049864 10044349 10067499 10043452 10041027 10059562 10038740 10027936 10083870 10039732 10056466 10027978 10050551 10055741 10073768 10056361 10055595 10040095 10027201 10050301 10047713 10051855 10084006 10051174 10053335 10055676 10015357 10062110 10061579 10056969 10032838 10062455 10079025 10052010 10061676 10067252 10030643 10058978 10053643 10061552 10026433 10055721 10103927 10088261 10067926 10094293 10101830 10054944 10065652 10053100 10051423 10088394 10054938 10078755 10031131 10076752 10073844 10039800 10086251 10067985 10042106 10046839 10081589 10084623 10067324 10081459 10043631 10090767 10109863 10087391 10049859 10070045 10061337 10052293 10075366 10085644 10045901 10075066 10073529 10065810 10043909 10069878 10080066 10057790 10090939 10094169 10073793 10093645 10076531 10072987 10075349 10075267 10120319 10102773 10059840 10094706 10053536 10065601 10082050 10088555 10058917 10079106 10117917 10093999 10118017 10053594 10099163 10078474 10096960 10081186 10103080 10102284 10114091 10095373 10077287 10114373 10111967 10072679 10116736 10124092 10102186 10122043 10110235 10098288 10094403 10097788 10105653 10083690 10117002 10090016 10110443 10104189 10132084 10105561 10080770 10143529 10112907 10126649 10097214 10114882 10057113 10096380 10096746 10127497 10112244 10095003 10119659 10093333 10094476 10089531 10093729 10113996 10098619 10080862 10110640 10082697 10094883 10069468 10125130 10077854 10106488 10118554 10127908 10117326 10086423 10110284 10092480 10122237 10123357 10123878 10107231 10124977 10097644 10080636 10117012 10148241 10086068 10098155 10077143 10143599 10087558 10099321 10132012 10130986 10098867 10125325 10137779 10085558 10096627 10114727 10113959 10125007 10102684 10104687 10081458 10134212 10140350 10105308 10134780 10100476 10134615 10122481 10120111 10137834 10159080 10131049 10093518 10151136 10166304 10128981 10115457 10121275 10169592 10153883 10124371 10132888 10123185 10126800 10108638 10131101 10141487 10155981 10144107 10131108 10140003 10153530 10145740 10127096 10101711 10146332 10159520 10105274 10137200 10114174 10144613 10143294 10184461 10142095 10144855 10157615 10165366 10157618 10135442 10118589 10153705 10144247 10153568 10165948 10153526 10141592 10133147 10143995 10144988 10121552 10155491 10113126 10112798 10144422 10145407 10127135 10118100 10141257 10151429 10148774 10181733 10178214 10119575 10141197 10161846 10128733 10141062 10118553 10156654 10142138 10148773 10191103 10184971 10140695 10145891 10173003 10127072 10187822 10172136 10175350 10164800 10174243 10155178 10149103 10181490 10137382 10169545 10136819 10174021 10159768 10125346 10161087 10156395 10157676 10190415 10190060 10178523 10187707 10145117 10154497 10175415 10158907 10192677 10200806 10180952 10149603 10136301 10177652 10168012 10191407 10175374 10175175 10184355 10187354 10184960 10159863 10176443 10197065 10203536 10149211 10184761 10177759 10173931 10192683 10167120 10182145 10179990 10143097 10195121 10154865 10150328 10191241 10172318 10184504 10154714 10195534 10219329 10195650 10170525 10189577 10175282 10203227 10165891 10221578 10148256 10179034 10151523 10176305 10154948 10184776 10143458 10192600 10212612 10177486 10162194 10210129 10183965 10182668 10179767 10185653 10198904 10163040 10195585 10204363 10190543 10165631 10240623 10223859 10163626 10233444 10205975 10180150 10207345 10171421 10199189 10209234 10140779 10183742 10187915 10183956 10220204 10189807 10206870 10199863 10187602 10192023 10185882 10169886 10163919 10202591 10182675 10210527 10175057 10223923 10208024 10214067 10208440 10223415 10238096 10237070 10189231 10204111 10193964 10213816 10226805 10224035 10173861 10209322 10180852 10231725 10188641 10210295 10214280 10213256 10238335 10198504 10242369 10224740 10208815 10230722 10234021 10208087 10210021 10220285 10206383 10243714 10219496 10223093 10190994 10214419 10189524 10204685 10182053 10221888 10240966 10240172 10214042 10212022 10199808 10217095 10246337 10255160 10211369 10206078 10242409 10256611 10236110 10208655 10249640 10224008 10228435 10209167 10255689 10182879 10224044 10225827 10201355 10206373 10192484 10246288 10235599 10224528 10259884 10217667 10235675 10225824 10233251 10264946 10236922 10214429 10234125 10197996 10256113 10249393 10235374 10237437 10249883 10266610 10241191 10244889 10232774 10260062 10230264 10241652 10238251 10263830 10237219 10270308 10201840 10273424 10248725 10239399 10234614 10228495 10241850 10254589 10231784 10255135 10239108 10282665 10273781 10239859 10230094 10235246 10250564 10247963 10284351 10261654 10256285 10238015 10260070 10294343 10246952 10285931 10239953 10227659 10233514 10285422 10252205 10242668 10270823 10262309 10250068 10245303 10254334 10233619 10255270 10232983 10258879 10245598 10254656 10273772 10235135 10298862 10250124 10258286 10247252 10249003 10218456 10292820 10276530 10279476 10295004 10229111 10266039 10305174 10266671 10257831 10270814 10280886 10245355 10273608 10260072 10257625 10260991 10265006 10283249 10235435 10241653 10254346 10262667 10302382 10271426 10271565 10284386 10253722 10263209 10265435 10280558 10272764 10271912 10288331 10287762 10273865 10276844 10274863 10261817 10272469 10253834 10262950 10290619 10249521 10235927 10268896 10291113 10271290 10273905 10269174 10264918 10318527 10298956 10335649 10272252 10296524 10306852 10277319 10293207 10315516 10296504 10296850 10288538 10245734 10291473 10303584 10256404 10316836 10273594 10279144 10277092 10336467 10315377 10312766 10282043 10306887 10305037 10302610 10268102 10305787 10280039 10291645 10284898 10320817 10290899 10321958 10293037 10287306 10314010 10302659 10304369 10278165 10271668 10294688 10322877 10309087 10302088 10259801 10288382 10311595 10311605 10303770 10306081 10322736 10296707 10319754 10300199 10296331 10333202 10316972 10295412 10321235 10357758 10331068 10303574 10274634 10308761 10353191 10303235 10340004 10333692 10300773 10318910 10293596 10320152 10337299 10295387 10307848 10320745 10306898 10306551 10322200 10329369 10365849 10296082 10332146 10315841 10330009 10330500 10348158 10318657 10320235 10334846 10340881 10304955 10339892 10331365 10313488 10326258 10320235 10349000 10330045 10332085 10344217 10333070 10315600 10332486 10309583 10346242 10304929 10315703 10348411 10336657 10320225 10323383 10315162 10308893 10315294 10324104 10324689 10336585 10347950 10369550 10340986 10324947 10340678 10337496 10339001 10381772 10339780 10332293 10344244 10360097 10327833 10354510 10366589 10357859 10347638 10331235 10313743 10334258 10336743 10331356 10357249 10326634 10317461 10329468 10387561 10381162 10345348 10351162 10362642 10375870 10357239 10335735 10360883 10310805 10339950 10334324 10355044 10319868 10359091 10369732 10346639 10305962 10371365 10336276 10390123 10350425 10362181 10421683 10337758 10375758 10358675 10328833 10352942 10342609 10359357 10369676 10337833 10378919 10361937 10370399 10375300 10382489 10404535 10338881 10344109 10370368 10400728 10340975 10358482 10380943 10355039 10368793 10348186 10357487 10376521 10379801 10340207 10415295 10391541 10353350 10372442 10419168 10369110 10363965 10389288 10371392 10396288 10401294 10400236 10351583 10318085 10379834 10373412 10378610 10416615 10339717 10376947 10387683 10397077 10392727 10372397 10368195 10379387 10371878 10403858 10384900 10443169 10389865 10369509 10368354 10374081 10376101 10413282 10343410 10384184 10399422 10408389 10403329 10435240 10388821 10367244 10382149 10363657 10390885 10364173 10409741 10410298 10384600 10384010 10388394 10377881 10389546 10418456 10375678 10360790 10399060 10411230 10439453 10397187 10404539 10419104 10385187 10396555 10411536 10422520 10413602 10369603 10439057 10430212 10381408 10420681 10406718 10402864 10410158 10378853 10401417 10390224 10403027 10410400 10422056 10402196 10411730 10364914 10391450 10432044 10424912 10401500 10410425 10389636 10419769 10384611 10394605 10414579 10422280 10386384 10438420 10403902 10404337 10430657 10431064 10422572 10415961 10410859 10384510 10437276 10425607 10412062 10412328 10383831 10425959 10402399 10446730 10394906 10410069 10437784 10454749 10418269 10386832 10433356 10428932 10371498 10417107 10419421 10380638 10422622 10380869 10402596 10467877 10446219 10431006 10428448 10432202 10412509 10404189 10418136 10424689 10450152 10435194 10418086 10445741 10414752 10415330 10417736 10448800 10433870 10472073 10449683 10430746 10458943 10489435 10460071 10469807 10471518 10476265 10432070 10408836 10419752 10468123 10447595 10435412 10441670 10429473 10463712 10464020 10451591 10465324 10456658 10447184 10455911 10445617 10436680 10453572 10420258 10429652 10472120 10449690 10462310 10431322 10494627 10468530 10446714 10427087 10468077 10470926 10428459 10451833 10461583 10439139 10489627 10442689 10470425 10464176 10476164 10477908 10480937 10452149 10452241 10480358 10491696 10451495 10453290 10446721 10425756 10462445 10435730 10467563 10435010 10478371 10477049 10463215 10459593 10440787 10507173 10440576 10491607 10468291 10475362 10485168 10422544 10438825 10456935 10519102 10508495 10465525 10458051 10471158 10465995 10448032 10482566 10483836 10513774 10479805 10502541 10483533 10455981 10485621 10477606 10489912 10492046 10474457 10480066 10448159 10467944 10489503 10477627 10471347 10526559 10452896 10470824 10503562 10501222 10480095 10459492 10485957 10481733 10489315 10495600 10521897 10476498 10517967 10471285 10518077 10490724 10464996 10492162 10490445 10498806 10528783 10526809 10531576 10491129 10489385 10481785 10486172 10489496 10470030 10527848 10508624 10506357 10506246 10505750 10523730 10486242 10535109 10523646 10522721 10478593 10517701 10491471 10475570 10491289 10466875 10501633 10483946 10490804 10531335 10484789 10524561 10491310 10459938 10517585 10475479 10484168 10498494 10495636 10493874 10551136 10527162 10490195 10517470 10494296 10546406 10526272 10497476 10512575 10495524 10506073 10515995 10513801 10473884 10524295 10488696 10505293 10490752 10488824 10540956 10533105 10510597 10529144 10541220 10474554 10472089 10519999 10550373 10489819 10511648 10517971 10490461 10536435 10509741 10566832 10541271 10494586 10502363 10530436 10510305 10521576 10522501 10516469 10513219 10546058 10533933 10505957 10521178 10506528 10523116 10538106 10533924 10518980 10536783 10529528 10532128 10540433 10481908 10506286 10521539 10521324 10540345 10547273 10529380 10526795 10502911 10535742 10498730 10509890 10510097 10524388 10536771 10532635 10563326 10553081 10568962 10501046 10531812 10525135 10507112 10566530 10562758 10545971 10535950 10522214 10515782 10556126 10527150 10525816 10535561 10545330 10493810 10535081 10573782 10568666 10521821 10537880 10528628 10521020 10506591 10562728 10533329 10501677 10539000 10515664 10521948 10551598 10569827 10579353 10540642 10581732 10528105 10570502 10573365 10559499 10582977 10563769 10558539 10535442 10533835 10577976 10557996 10553812 10521960 10538287 10564195 10557582 10559590 10551110 10529119 10555812 10553270 10534772 10571607 10591411 10556256 10565571 10536522 10550017 10583259 10565269 10554965 10570911 10576576 10529751 10556223 10550836 10589186 10602130 10564422 10568906 10540052 10566611 10567445 10549496 10592038 10590821 10561243 10592527 10559709 10626592 10553372 10627008 10541334 10562317 10572781 10590825 10629714 10590528 10592565 10527585 10593282 10587070 10577991 10596628 10558137 10586856 10612170 10601033 10601217 10564717 10582291 10597353 10549289 10610766 10587370 10620656 10582422 10578231 10579880 10545432 10569515 10556473 10615443 10615962 10594583 10593263 10623583 10534857 10614312 10604759 10602761 10607371 10574591 10591852 10613557 10596133 10590677 10582984 10573922 10635978 10551788 10594028 10629837 10578654 10585725 10606016 10605001 10569166 10623812 10612166 10590100 10611318 10581293 10595738 10636354 10608951 10608797 10614354 10645213 10589530 10615204 10605944 10600784 10625382 10594201 10593189 10638031 10601255 10616362 10618890 10604369 10585433 10605298 10630316 10623277 10636003 10600844 10658522 10639386 10640535 10601889 10624950 10594829 10620719 10628287 10608818 10634288 10612092 10634747 10663846 10632255 10632941 10634703 10679309 10574501 10602655 10652146 10601970 10607409 10655759 10631039 10633028 10585105 10626784 10604994 10583476 10635695 10621831 10648945 10648019 10613984 10679750 10626707 10654419 10660409 10601250 10665497 10614754 10631441 10622221 10622269 10641916 10652763 10638588 10625744 10615340 10662921 10631811 10625991 10616678 10667780 10631716 10633052 10627955 10649232 10626913 10604787 10637942 10617565 10608184 10655394 10605934 10625951 10617721 10641773 10663229 10628518 10607339 10646837 10610625 10679375 10621952 10647396 10665461 10634352 10660585 10631114 10656557 10667349 10664375 10648195 10607290 10628945 10630918 10670430 10638749 10668557 10626710 10681946 10650970 10655178 10689314 10656528 10658067 10656894 10668939 10638961 10659563 10682099 10638129 10646965 10691946 10641002 10649914 10657687 10628098 10654529 10681037 10661874 10651532 10643743 10660904 10661447 10675400 10711701 10664359 10705673 10672757 10631885 10678593 10707215 10670302 10689635 10645362 10673931 10679532 10678121 10714551 10685697 10672811 10640733 10686553 10658283 10671625 10657155 10719939 10672419 10680758 10705816 10710580 10646384 10684375 10662865 10691263 10684774 10668091 10665304 10704281 10687061 10674573 10668697 10682367 10692349 10696302 10686335 10660763 10659202 10660928 10681285 10654597 10700232 10666116 10647170 10675725 10704700 10676636 10676242 10667642 10710291 10732265 10678072 10695788 10641914 10661726 10667608 10680851 10700177 10707863 10653907 10724115 10657292 10704552 10725375 10700767 10679412 10676226 10668925 10682732 10677926 10651637 10671466 10679705 10668560 10691464 10665778 10675701 10719326 10660095 10690450 10727675 10692576 10680682 10688288 10706170 10737618 10706688 10716126 10698579 10712370 10697536 10724501 10703796 10713641 10706199 10713348 10731042 10688661 10706044 10679839 10707388 10729973 10663915 10739186 10680437 10693456 10689041 10683362 10716781 10688957 10676296 10730412 10729207 10693516 10701048 10740438 10667368 10717221 10725089 10729400 10700075 10719129 10707921 10737309 10695700 10705106 10715717 10733800 10722791 10700547 10715292 10714317 10743064 10722464 10721988 10765181 10711934 10724937 10728050 10715560 10692815 10737612 10747583 10710793 10711932 10712132 10737588 10713229 10689251 10717551 10726286 10685090 10714452 10715385 10741647 10740589 10723399 10758449 10745064 10736280 10720077 10714104 10713125 10752206 10707604 10737310 10731943 10745577 10729286 10706168 10741404 10736324 10771521 10733281 10744783 10771438 10733864 10733623 10740724 10755684 10667507 10723256 10756924 10731191 10747206 10736134 10758020 10733184 10690246 10721464 10754154 10740001 10729039 10752234 10762219 10750888 10776394 10722861 10764169 10747330 10734918 10717012 10740486 10760786 10746230 10748869 10718002 10756414 10731859 10756983 10689913 10755401 10736750 10730689 10750240 10732227 10775590 10738849 10774474 10785568 10779611 10760628 10749833 10684484 10780582 10760408 10758959 10733137 10750026 10769790 10783052 10753671 10758420 10743812 10796155 10753429 10742994 10789486 10778199 10761793 10766574 10731233 10800418 10769397 10809261 10757433 10779001 10784439 10758052 10783213 10793207 10768616 10773536 10768809 10791252 10745886 10795086 10793399 10781439 10815238 10736803 10790068 10746327 10805645 10774091 10809254 10783071 10741042 10780167 10803827 10779346 10761546 10801390 10791092 10766621 10789841 10794330 10766920 10782688 10794303 10799920 10794135 10787351 10797211 10781551 10794390 10750572 10783897 10765201 10770983 10753628 10824387 10773071 10781371 10768424 10804182 10786246 10786382 10798390 10788782 10783212 10841504 10804765 10812309 10754567 10798583 10802503 10761270 10741026 10771240 10763106 10781491 10771350 10819648 10786842 10779242 10805342 10785843 10795423 10808467 10791959 10783687 10794303 10760672 10799850 10788180 10796587 10773273 10760511 10832656 10817504 10788370 10812801 10804673 10825703 10778641 10831908 10814026 10785466 10803810 10844621 10823132 10814084 10826520 10798971 10791053 10781724 10793162 10803029 10795042 10782163 10796950 10809681 10729011 10787480 10822082 10769516 10840471 10851661 10800311 10864595 10822971 10826867 10810548 10815258 10801177 10835574 10776285 10787325 10840207 10814404 10806671 10830842 10844746 10836016 10816409 10806167 10782639 10863648 10776600 10775829 10834073 10822882 10829559 10815052 10837371 10822277 10783165 10822397 10856073 10825791 10823972 10857457 10807920 10801203 10831674 10842122 10840371 10829967 10824908 10843088 10853389 10823340 10824561 10769813 10837080 10781426 10860911 10831242 10852240 10827087 10815338 10866840 10857132 10813697 10833585 10825540 10836461 10841437 10815936 10845856 10848531 10844155 10824456 10858046 10825060 10849411 10849926 10816475 10838979 10858419 10850806 10849158 10882898 10815655 10839993 10867417 10800634 10808235 10835451 10843783 10843781 10825926 10881665 10880400 10837284 10834315 10871947 10874477 10831267 10849946 10832629 10823266 10855714 10832832 10853775 10798309 10815926 10850607 10828811 10843716 10830907 10818011 10830467 10822084 10809910 10863549 10863623 10894048 10824992 10871509 10834080 10881289 10822851 10835036 10844209 10849741 10850889 10884875 10884828 10845465 10823702 10860524 10937202 10842009 10863513 10838012 10866218 10867353 10865975 10840557 10850095 10872069 10840198 10874617 10827322 10819750 10857629 10860304 10867588 10855695 10852402 10825836 10857516 10862973 10883893 10862423 10921627 10882221 10872028 10865771 10915733 10885257 10871433 10861500 10912837 10819824 10919426 10825030 10866505 10912627 10850722 10869640 10866472 10890939 10832312 10921218 10879610 10886776 10843039 10861929 10837587 10894562 10879709 10937286 10868064 10836081 10848591 10868877 10910230 10862764 10867355 10890266 10887414 10877236 10873025 10881879 10855423 10909378 10884806 10880561 10889574 10900731 10886404 10875638 10900930 10906790 10910785 10830085 10887873 10877256 10881619 10853869 10861916 10875670 10933770 10883366 10844405 10905249 10849051 10874118 10841024 10889191 10924711 10913842 10925778 10913686 10937259 10903453 10901377 10898138 10918023 10906048 10866372 10899686 10916986 10911704 10916316 10882866 10867839 10904142 10871941 10902630 10877725 10880032 10871603 10914091 10906745 10898446 10922834 10867818 10931500 10931754 10907691 10938557 10899916 10904283 10957690 10921114 10880100 10920477 10895534 10901651 10914259 10931666 10897526 10895297 10897857 10901030 10887914 10936379 10914883 10899678 10902202 10896285 10904551 10923288 10955741 10903208 10899611 10915798 10918634 10969601 10947501 10927584 10905777 10932904 10911317 10948225 10859166 10915000 10914552 10932545 10936777 10944910 10954792 10918639 10924050 10920428 10964601 10942093 10959572 10915054 10933447 10926899 10941272 10950196 10934712 10951219 10936808 10905023 10917656 10904511 10947245 10913086 10948055 10924063 10926387 10957446 10942155 10945938 10927801 10899119 10946630 10932092 10938103 10901576 10951125 10942613 10918691 10920018 10945315 10952456 10904794 10957753 10907170 10958869 10995580 10973296 10960534 10947335 10942766 10932675 10934965 10983090 10936895 10918560 10934476 10970799 10930801 10904883 10938878 10973789 10925476 10945730 10931960 10903531 10970866 10919906 10937962 10963924 10952568 10949649 10951240 10922238 10961166 10967796 10959914 10944163 10995411 10991441 10961020 10914108 10971969 10973695 10972473 10943771 10945909 10982246 10977397 10984102 10974283 10975987 10980886 10977077 10947481 10978122 10956308 10961011 10971320 10934351 10967366 10944269 10958310 10963878 10943952 10934687 10968598 10997066 10956050 10971156 10968352 10966914 10976768 10985482 10984702 10923848 10983507 10975713 10983143 10986887 10964660 10997544 11006911 10985363 10948597 10932925 10963876 10945166 10953855 10980731 10937902 10976212 10966754 10991723 11010038 10971334 10994889 10966007 10976221 10995380 10978352 10965046 10980629 11009034 10973672 10991521 11015319 10980166 10969070 11011196 11045210 10967626 10942314 11038878 10961384 10972228 10991224 10989960 10982889 10991819 10953556 10985549 10944419 10998244 11013400 11000824 11017453 10946147 10964057 11019203 10967397 10987278 10978871 10987172 11021729 11018990 11003192 11028554 10983862 10989585 11021333 11006889 11004903 11022355 11022537 10995227 10998739 11002578 11031869 10987800 11004255 11014613 11055650 10977567 11029508 11010354 11011399 11007315 11039951 11003367 10985146 11012654 10988497 11007662 11032266 10997727 11047875 10942914 10971576 10995400 10991265 11012087 11027075 10992688 11044410 11020404 11031386 11010736 11012229 11053438 11037408 11049968 11015338 10990802 11053638 11033536 11010900 11029339 11020109 11022249 11033435 11039034 10978536 11031301 11008327 11072616 11016483 11046692 10991644 11013748 11030428 11013678 11029818 11042262 11054268 11028441 11032071 11018852 11033899 11049769 11055835 11027537 11025507 11018620 11040707 11009287 11051980 11028078 11025590 11014257 11031698 11064511 11045951 11038306 11043872 11061872 11086386 11022635 11061581 11062105 11024969 11047186 11021574 11078435 11024303 11043995 11040517 11087025 10987407 11107320 11041244 11051846 11028960 11079926 11084652 11031575 11087062 11040505 11076246 11045867 11078497 11017395 11069663 11079155 11053285 11045068 11023269 11064350 11001252 11076831 11067637 11024234 11071088 11098331 11072731 11026686 11051481 11043809 11038545 11054614 11059309 11095167 11040144 11050604 11063216 11062200 11001376 11021875 11045672 11037570 11077849 11060824 11063462 11062368 11059530 11058123 11078241 11016627 11060515 11055528 11028310 11083372 11068378 11054169 11063831 11083930 11075715 11093772 11094996 11052370 11059306 11075244 11073668 11085055 11078455 11075141 11032206 11064685 11072107 11048830 11060364 11085395 11047940 11034227 11041057 11059602 11092142 11078910 11091619 11049035 11102860 11093191 11096321 11085939 11099531 11065589 11066681 11069200 11103900 11109872 11109647 11085142 11083108 11090874 11113896 11095436 11087536 11076851 11094626 11115641 11094087 11058354 11098536 11113579 11058559 11061406 11142991 11098799 11077588 11127381 11109330 11077231 11131988 11074046 11102484 11089304 11098607 11108680 11082435 11137509 11125592 11099353 11115752 11114883 11099789 11114982 11109972 11070842 11046607 11087108 11096757 11101013 11115217 11081141 11148541 11135198 11120038 11104266 11099712 11112917 11074380 11128021 11118437 11132187 11098803 11119949 11099006 11085659 11096850 11114507 11109302 11097913 11097335 11137462 11142444 11136580 11126240 11090042 11153356 11057916 11132290 11119252 11104023 11103285 11134331 11108843 11144564 11158628 11143416 11117308 11116597 11143911 11118523 11160067 11101877 11112594 11151977 11096357 11154257 11088950 11090536 11078667 11134017 11165562 11149015 11119891 11144972 11097521 11137064 11147064 11141864 11113137 11129708 11163929 11100379 11178142 11128673 11172428 11125966 11126700 11136603 11138062 11152015 11150452 11110223 11184941 11172420 11126173 11106124 11149472 11159928 11134631 11137674 11150319 11153509 11137986 11141111 11145141 11172306 11139886 11163662 11139401 11095616 11166813 11101313 11121169 11164506 11163094 11145037 11116642 11148410 11171880 11191678 11144979 11166638 11151333 11124572 11167845 11166464 11169949 11154229 11193599 11176821 11134653 11155361 11144281 11167987 11118701 11170856 11145324 11157102 11181954 11162349 11177599 11167562 11140501 11174601 11180565 11140658 11210325 11174227 11172231 11188227 11175510 11181255 11185110 11144830 11157563 11182223 11152506 11133689 11173052 11171390 11177712 11169033 11160625 11154169 11130365 11122563 11175905 11163909 11191676 11191598 11167751 11161234 11164635 11160726 11159516 11165662 11153297 11173091 11183296 11216099 11151499 11145103 11209404 11180697 11189232 11160722 11185342 11192336 11137494 11159891 11168157 11175601 11163324 11183940 11148977 11168844 11195529 11165500 11205857 11180727 11200300 11194116 11157881 11148042 11158588 11213779 11190289 11207853 11196876 11198850 11203369 11187289 11210130 11203707 11197663 11177578 11167210 11204581 11226920 11194336 11198411 11171009 11171335 11212292 11184715 11193568 11205311 11208317 11186823 11217628 11188211 11152928 11194869 11179568 11225583 11197374 11208824 11193587 11201150 11178654 11199203 11185112 11210399 11165188 11224043 11167444 11239257 11185232 11174195 11221871 11213310 11230024 11206967 11226786 11243917 11197683 11197705 11185345 11228026 11188667 11241397 11204790 11158342 11187211 11185340 11217357 11250977 11236228 11247109 11197757 11203627 11203049 11218038 11210062 11205062 11213680 11257969 11233047 11198609 11186308 11201055 11181743 11222740 11197089 11245896 11212007 11228347 11217364 11210499 11193973 11248260 11266388 11190432 11219280 11186119 11196486 11202076 11223076 11231745 11232489 11216112 11242420 11239589 11216984 11269232 11243032 11267348 11217870 11250402 11186230 11196188 11228057 11219987 11253071 11216614 11233747 11265022 11246027 11204623 11266803 11272151 11247976 11234267 11253563 11233581 11235740 11256840 11237114 11228026 11217390 11242602 11233315 11228005 11231879 11226541 11229327 11225147 11258967 11206254 11241958 11236154 11200196 11263105 11249033 11223059 11219804 11230205 11233871 11279872 11244645 11242849 11232770 11222017 11239225 11266896 11296930 11206285 11300380 11226540 11254974 11216911 11247347 11265528 11244445 11230928 11250161 11241587 11274725 11264507 11281317 11265649 11265564 11223012 11244201 11243987 11228871 11265548 11255346 11272923 11276435 11274759 11257336 11269928 11225397 11273840 11256883 11242583 11295500 11269876 11245158 11256075 11242811 11258903 11263712 11287676 11264088 11264356 11279527 11273642 11254000 11280212 11272924 11274676 11244936 11294563 11242576 11306019 11277513 11241556 11272568 11285719 11282580 11279770 11259413 11288680 11250123 11255139 11228147 11266373 11269607 11230496 11294871 11242093 11262538 11278187 11258197 11282556 11266635 11253890 11294920 11312411 11281329 11278941 11292531 11267766 11253966 11288429 11277987 11258355 11297186 11293452 11306794 11245153 11270565 11299487 11283669 11280949 11277989 11294473 11287419 11277323 11253774 11300778 11270338 11300877 11293464 11311784 11288748 11305888 11267807 11305995 11310523 11303861 11309154 11277739 11300947 11261380 11287744 11252424 11252292 11282185 11312696 11266751 11292108 11324627 11267536 11307854 11280456 11272189 11337911 11286661 11309230 11318214 11294071 11328056 11297968 11309079 11311631 11290793 11282284 11291957 11309109 11300589 11312884 11346719 11263051 11333027 11358301 11269129 11265462 11281838 11301141 11295169 11313401 11303645 11292559 11256682 11299807 11296801 11305596 11332176 11321319 11321707 11266893 11328793 11300160 11291647 11327562 11300040 11336421 11336380 11304556 11281005 11297131 11304424 11300442 11312508 11309755 11317628 11325721 11317648 11332936 11314498 11304463 11333017 11328724 11283427 11299893 11335740 11310706 11330696 11345942 11342535 11345535 11317602 11336953 11337844 11312259 11319117 11322839 11292547 11374879 11319449 11347280 11337303 11337104 11313822 11304245 11311943 11298667 11321079 11333498 11380132 11314117 11354372 11346862 11347175 11339902 11355107 11331643 11317785 11322856 11324962 11314380 11329811 11312182 11289820 11332425 11341860 11301645 11342494 11367666 11319280 11329668 11297077 11325262 11354158 11330930 11316279 11347925 11329651 11341114 11334166 11333480 11337041 11336851 11328654 11364697 11310309 11342160 11319123 11359239 11334907 11358594 11324590 11342428 11293597 11351551 11354300 11344664 11353525 11359467 11354207 11353335 11384540 11343609 11340664 11408996 11341607 11335468 11336843 11355579 11389505 11355279 11334516 11341307 11367557 11356000 11365874 11352958 11355029 11386138 11372549 11343445 11386014 11364194 11354461 11365927 11406186 11381132 11372737 11395682 11358963 11328158 11382316 11360893 11342063 11389232 11349321 11383473 11338313 11410454 11392411 11397814 11358658 11394556 11365941 11338867 11387677 11373171 11376844 11386988 11405193 11384002 11348397 11390349 11375647 11382678 11399370 11344370 11415615 11397881 11391410 11315535 11366657 11371124 11382516 11378122 11355794 11400183 11397001 11377535 11422763 11371297 11378775 11381219 11371298 11419292 11397272 11382069 11421051 11395682 11389952 11408535 11381085 11414454 11375850 11403840 11379771 11397567 11407952 11405940 11370233 11402616 11403615 11394831 11361871 11325257 11395153 11379462 11378569 11378013 11354523 11398902 11370780 11388814 11361297 11393745 11376809 11401204 11353025 11397301 11372730 11419782 11388515 11396049 11439390 11394821 11427997 11388024 11410603 11443926 11411164 11422159 11360990 11433807 11375028 11452741 11447573 11416805 11377545 11399961 11386735 11367755 11392620 11433753 11421080 11437690 11413710 11394222 11416784 11398229 11364207 11403328 11424066 11470023 11408623 11422790 11417209 11429112 11455712 11439589 11386332 11396496 11400127 11395014 11405251 11411897 11441039 11429780 11386273 11460059 11421214 11426709 11432127 11463672 11460187 11427615 11446468 11438103 11415351 11428563 11411300 11443921 11432361 11402954 11473983 11411198 11444159 11446216 11428593 11438474 11420118 11467687 11414903 11424404 11390670 11400313 11410736 11448080 11454948 11465167 11444282 11463811 11453784 11429653 11426548 11447580 11428394 11463439 11424574 11411822 11432812 11462240 11467616 11451081 11441249 11465415 11415683 11447400 11433534 11409680 11409826 11480492 11462234 11431796 11434284 11466072 11420775 11440843 11401800 11413255 11434725 11476506 11434660 11451719 11449438 11456566 11467156 11470859 11444086 11482813 11448090 11411723 11429726 11458474 11429615 11407050 11457774 11467634 11471705 11491461 11479160 11433407 11451721 11465707 11456684 11440628 11501725 11408693 11453896 11488725 11443143 11431626 11431928 11447818 11451833 11457313 11469145 11441717 11497279 11453888 11475772 11434558 11496544 11432175 11444225 11473569 11463118 11505002 11467717 11462235 11457470 11469688 11512314 11496144 11476065 11465955 11438997 11467432 11459467 11448856 11488600 11467019 11463113 11516117 11431708 11500555 11472709 11493456 11454918 11482041 11468547 11525244 11482530 11463563 11516189 11481820 11477635 11498393 11449656 11500077 11427293 11474198 11477126 11475809 11444776 11484669 11495250 11494138 11460784 11498130 11463008 11515714 11478549 11443147 11478318 11477800 11454211 11478960 11525030 11465918 11482745 11505809 11470221 11478532 11490489 11476719 11512133 11517218 11526007 11526835 11486405 11510547 11493005 11481139 11468912 11525317 11457301 11478726 11517122 11505393 11512342 11534890 11505376 11484604 11522750 11511239 11515811 11521583 11523509 11475562 11525430 11470093 11542632 11472523 11476038 11502485 11482831 11522793 11501917 11450926 11483838 11499347 11504930 11479629 11427626 11533978 11512127 11493633 11451001 11507657 11534508 11516296 11544252 11530221 11542453 11492385 11501905 11485141 11498955 11530378 11537889 11508219 11508325 11509554 11528863 11508506 11541584 11493318 11529054 11555438 11529354 11517421 11551981 11514731 11518690 11491529 11490803 11523295 11513807 11539403 11530825 11535544 11558796 11477082 11523720 11495639 11564165 11527385 11532313 11532102 11532215 11545254 11550628 11520859 11494333 11552715 11537857 11585191 11504874 11534663 11540586 11547294 11490174 11521025 11540662 11557977 11520297 11528784 11521379 11506486 11522044 11529059 11548064 11513585 11533514 11551258 11488486 11523287 11554321 11569778 11581680 11581983 11558084 11514839 11572470 11536412 11530295 11524296 11549183 11515328 11561125 11547709 11553346 11509236 11561668 11560778 11517046 11555135 11541520 11534788 11545257 11564502 11553200 11582430 11524629 11548802 11539973 11516791 11511770 11557148 11559024 11553157 11594657 11558250 11572665 11564546 11588230 11513019 11532196 11548798 11558521 11502565 11563966 11568437 11574915 11571399 11586542 11566052 11569948 11533614 11533108 11562080 11534432 11550852 11545484 11527534 11611933 11556311 11589267 11584938 11572930 11520002 11529378 11608932 11556152 11526938 11516510 11573369 11577192 11593026 11542046 11545029 11588020 11603272 11593871 11591956 11579664 11557926 11600582 11548831 11576172 11573397 11533942 11561762 11551311 11564659 11569558 11587358 11579990 11580785 11585768 11600765 11569175 11562690 11598496 11582692 11571953 11601494 11578745 11554864 11538832 11572605 11588050 11582173 11567141 11561194 11585228 11532752 11585775 11564098 11573722 11606860 11617247 11578256 11566853 11626519 11638073 11617148 11578103 11552851 11582277 11601697 11624692 11608842 11606336 11631235 11554480 11637301 11612053 11579382 11616464 11593703 11594619 11579569 11577913 11577714 11576399 11579395 11601118 11623808 11583754 11633888 11577745 11608047 11599466 11608629 11593084 11598824 11589853 11634863 11591214 11596297 11619976 11612534 11602660 11583862 11626798 11628428 11623518 11590294 11636214 11578697 11635903 11616458 11605797 11589809 11619448 11609839 11619055 11644868 11651284 11622988 11623161 11589350 11669192 11589343 11597807 11636102 11637543 11640311 11638469 11643602 11604441 11623434 11647535 11634847 11644013 11653665 11617891 11601260 11637708 11646385 11627955 11608872 11604035 11644598 11654066 11603990 11649356 11647759 11611567 11662473 11614318 11631356 11603797 11597978 11618813 11610006 11662667 11662327 11660915 11601110 11668729 11622911 11674815 11648819 11612541 11658955 11679817 11673747 11624623 11668552 11616268 11670010 11662090 11649456 11611495 11623111 11612348 11623724 11647840 11626773 11631625 11640546 11628433 11658313 11600037 11650710 11655372 11686149 11615875 11652350 11645504 11645597 11640302 11623049 11695233 11636338 11685085 11653020 11628687 11663615 11639020 11664509 11705985 11667317 11661988 11650603 11690637 11622656 11632042 11651790 11649711 11675796 11651531 11627012 11685485 11634999 11638875 11646657 11718979 11643203 11690975 11651260 11682830 11706715 11659211 11681395 11655768 11637712 11684768 11649873 11650416 11685535 11699299 11658920 11668003 11660944 11680132 11682195 11687487 11723856 11708618 11654266 11726906 11601556 11695216 11686454 11635741 11642236 11664658 11678803 11622202 11670513 11649795 11717517 11683622 11681126 11656968 11638699 11663462 11679561 11681166 11654343 11683005 11665278 11699093 11663459 11664840 11671090 11682588 11719049 11693803 11677368 11671503 11698850 11685643 11694310 11724868 11698239 11673449 11677523 11687737 11689250 11714374 11736953 11718503 11687461 11715118 11692865 11704063 11717427 11696939 11658219 11711561 11662773 11676241 11719067 11753005 11681442 11704744 11710914 11687352 11730719 11713446 11679939 11686495 11714604 11666493 11677279 11731684 11662393 11672967 11714236 11679845 11696081 11705372 11708927 11715600 11736797 11736066 11734864 11726653 11718695 11726739 11705209 11714443 11729675 11733974 11738914 11729447 11703713 11703998 11742857 11707605 11682066 11678681 11738892 11726580 11712106 11709625 11732271 11737254 11718858 11676422 11693108 11725934 11726419 11707353 11710258 11747729 11726153 11734428 11700618 11725657 11685764 11697710 11749391 11741954 11757325 11746091 11671173 11732062 11719878 11720219 11735266 11658548 11753055 11733507 11743491 11760918 11710730 11744914 11723438 11707952 11714479 11729527 11768769 11722482 11705670 11760610 11729603 11745568 11743546 11740391 11773693 11741153 11731905 11781368 11745437 11758156 11759461 11734765 11739005 11768134 11718247 11742972 11715027 11766984 11729274 11769177 11767731 11749584 11772456 11722929 11748614 11767889 11731591 11758454 11732989 11773899 11787040 11734914 11749269 11774746 11702754 11723927 11790224 11782698 11744196 11748335 11765128 11787000 11739479 11737725 11767821 11760108 11778832 11787127 11711702 11777234 11702988 11792099 11777573 11809277 11745690 11753469 11733139 11769061 11739142 11791120 11732043 11788355 11773412 11760680 11768387 11734594 11755687 11780418 11782185 11747752 11742841 11776806 11732258 11793871 11770262 11785542 11750327 11743916 11770395 11798844 11776224 11789595 11743470 11748730 11767121 11768083 11743608 11805212 11747509 11761114 11746040 11736370 11740880 11754585 11767620 11764287 11768908 11755825 11740682 11816016 11721367 11751099 11766774 11753366 11765289 11768601 11812548 11801958 11787924 11805240 11787097 11766911 11767801 11794531 11751371 11785075 11746461 11773642 11770896 11797327 11813050 11780834 11785007 11799731 11761004 11754926 11768373 11776067 11764693 11777857 11777684 11807591 11778554 11809235 11770362 11771655 11775048 11758044 11811292 11733128 11797039 11746871 11791536 11794612 11809179 11748997 11817184 11834998 11754466 11810408 11777060 11832634 11784843 11830114 11767073 11772091 11815736 11787208 11833183 11812963 11801403 11783992 11819761 11756846 11848699 11816300 11824512 11776276 11803550 11812991 11762359 11796527 11816230 11771888 11826896 11821470 11787854 11816497 11794047 11800546 11761446 11794056 11796130 11822744 11793846 11815810 11822313 11814326 11825191 11840771 11833250 11819320 11785348 11821979 11800586 11833321 11786957 11833575 11843519 11837714 11797765 11832647 11850790 11827927 11836826 11817361 11841055 11848675 11844415 11824870 11819544 11820334 11840193 11863885 11845342 11837324 11823291 11842045 11875146 11810095 11844563 11793847 11805757 11839827 11845983 11836404 11839427 11810847 11860787 11808796 11834201 11866221 11813612 11858859 11822360 11830629 11847305 11802140 11838513 11850891 11847757 11849130 11836668 11860487 11876643 11812766 11799041 11842355 11868158 11852010 11862971 11819820 11844061 11835232 11852325 11873025 11871391 11841474 11798741 11861319 11895760 11837791 11893162 11842731 11840596 11860758 11849010 11861127 11826144 11872741 11843810 11852189 11861839 11885106 11852703 11823969 11867529 11847755 11848319 11848365 11880249 11834554 11868946 11855331 11854827 11850476 11842391 11832414 11845707 11867487 11854043 11859509 11846244 11859248 11872779 11830712 11869912 11887049 11874114 11807885 11853082 11800979 11899783 11893859 11835034 11818973 11876449 11891857 11848929 11893500 11886994 11821502 11859231 11892870 11873519 11864282 11883475 11852088 11903773 11883299 11855693 11856747 11868506 11891457 11877559 11868618 11846282 11842148 11877380 11828591 11879134 11857982 11860280 11868263 11880977 11895437 11891974 11908483 11890364 11854642 11885393 11856686 11872252 11872207 11896261 11886562 11894631 11921802 11880286 11876353 11856753 11862221 11910998 11906375 11891597 11886631 11877357 11892654 11946004 11905781 11875758 11910883 11905158 11875755 11886346 11888400 11905675 11872030 11908817 11910835 11933094 11862577 11935112 11901729 11895328 11872764 11923943 11934921 11895241 11856945 11885693 11880929 11896782 11893732 11939923 11911984 11894835 11858263 11911725 11857896 11901613 11886634 11849740 11874245 11880611 11923864 11921130 11933727 11906958 11877661 11870808 11940370 11899261 11896205 11876595 11936159 11924285 11896136 11882989 11861208 11886704 11925745 11937368 11920787 11894062 11884766 11903926 11906445 11867096 11921106 11905001 11926168 11905619 11901396 11907340 11901877 11923696 11911281 11889383 11879374 11904905 11898893 11897926 11902215 11931484 11945065 11972049 11897461 11900797 11907595 11913253 11894736 11923458 11901024 11913713 11936020 11927450 11887958 11895064 11928286 11932164 11938317 11923073 11912452 11946087 11926007 11949052 11926516 11910637 11908530 11922806 11898632 11967284 11931641 11898789 11913222 11926669 11915577 11936978 11926360 11961891 11913923 11954561 11944858 11952672 11933648 11950979 11882899 11933999 11923621 11927062 11905972 11948160 11933250 11966152 11920983 11906017 11954886 11967532 11963940 11933616 11928072 11962794 11914507 11962560 11950866 11907432 11952788 11928713 11944072 11932851 11934212 11952789 11966627 11940078 11964048 11951569 11968665 11962357 11915840 11951599 11962177 11927434 11978995 11964323 11947425 11974172 11978500 11992362 11922177 11942806 11923311 12000711 12002250 11952001 11919406 11970672 11971072 11951972 11957092 11970967 11969241 11966341 11943968 11969086 11948147 11935659 11956052 11925129 12002070 11986570 11928037 11949805 11929980 11947567 11952684 11987660 11948719 11944361 11987058 11989279 11968217 11991855 12020704 11991824 12018392 11954042 11931877 12025932 11967455 11974367 11981256 11988175 11953530 11973400 11968862 11973575 11957219 12006708 11951960 12009450 11959247 11997122 11960492 11945353 11968929 11954552 11944662 11965729 11957450 11933929 11981479 11986113 11962646 11975695 12006239 11970117 12012440 12002308 11971822 12003486 12005819 11972580 11981554 12013443 12027077 11961214 11969528 11981416 12012224 11969179 11956387 11944837 12013091 11977363 12013544 12002429 12006164 12021226 11990947 11990531 11996888 11988860 11983394 12003875 11966324 12013595 11995865 11999472 11987904 11995657 11942192 12027861 11998662 11995403 11970547 11959315 11988003 12006766 11974056 12024250 11980094 11979214 12031804 11972186 12007709 12001691 12040853 12016059 11979293 11992274 11989812 12016950 12016249 12025598 12013110 12004130 11994938 11997735 11988103 12004524 12017060 12029200 12010442 12046290 12006959 12043983 11995697 12000408 12034051 12013986 12036153 12020317 12011536 12013027 11969814 12029056 12018267 12007821 12041252 12017487 12014442 12033895 11994011 12027407 12051892 12007190 12037091 12054461 12026351 12035921 12035870 12019517 12038442 12039050 12054941 12068686 12003792 12026112 12028121 12021662 12062750 12011315 12024076 12069850 11981736 12038212 12027164 11987339 12064596 12057207 12025261 12043681 12052926 12038958 12058349 12027336 11957713 12005053 12069751 11986784 11977167 12031541 12056060 12057106 12030392 12017469 11991325 12006450 12047528 12024623 12048341 12065086 12036966 11970171 12058681 12074713 12039686 12067941 12042727 12059563 12045865 12062428 12031994 12035159 12037224 12024106 12087270 12058239 12041362 12040191 12077402 12030234 12045875 12069638 12035666 12071411 12028071 12076607 12097983 12045848 12060261 12052464 12057315 12061273 12072299 12067740 12046102 12027056 12043528 12045082 12075129 12099613 12064229 12090764 12055849 12062997 12049288 12072341 12060392 12059243 12033791 12054427 12074489 12065705 12012973 12058777 12093303 12078811 12070649 12103982 12077075 12067338 12073959 12052456 12086695 12089143 12063924 12052405 12043900 12059113 12066027 12084529 12068018 12099769 12070052 12043230 12073385 12082620 12083055 12054992 12059629 12125087 12100336 12106051 12089950 12082548 12062284 12096465 12082925 12019049 12091214 12079912 12086087 12083039 12068827 12115594 12069373 12059230 12094152 12110451 12052333 12117686 12086549 12062116 12067721 12062753 12036021 12072317 12078054 12041862 12091876 12083273 12106239 12081663 12100798 12118594 12054850 12091040 12106257 12059175 12099933 12064219 12069862 12108968 12106787 12053920 12113610 12112023 12102056 12091748 12100489 12079184 12090898 12119482 12083860 12082067 12091551 12109608 12080984 12102017 12109461 12112033 12131280 12073864 12101687 12110931 12121595 12123024 12051820 12086859 12122883 12124169 12105502 12074387 12117018 12165180 12111847 12104348 12114114 12137232 12082858 12103714 12118306 12120432 12103877 12133658 12106932 12111311 12112825 12141453 12100289 12101860 12132662 12136941 12119528 12104766 12146240 12128452 12087788 12120794 12132675 12119194 12129268 12110993 12077970 12094337 12127133 12107378 12139903 12150187 12154474 12126538 12084196 12130291 12104489 12117247 12100625 12111920 12129353 12142682 12114396 12120120 12117084 12185869 12116806 12170638 12115083 12106689 12127025 12127496 12137074 12120338 12160502 12119870 12119042 12143983 12132405 12134775 12121043 12148189 12115372 12113418 12162196 12129616 12173355 12114567 12142228 12175739 12116493 12129411 12138469 12115464 12106142 12150891 12161886 12140435 12134389 12143028 12150154 12153585 12127189 12170240 12138614 12120649 12165259 12187880 12139904 12134231 12166070 12153975 12161080 12150807 12122309 12119440 12175111 12154916 12128298 12156344 12154725 12188625 12078054 12125291 12161965 12172615 12133010 12139015 12179577 12176415 12157472 12146566 12193903 12159124 12135274 12160343 12190436 12169872 12162559 12194173 12141898 12175362 12165384 12159385 12149492 12187203 12206906 12170160 12166884 12190731 12198938 12138314 12180121 12188119 12144992 12184675 12188378 12171882 12160102 12157759 12202771 12184094 12207696 12231968 12109652 12155822 12204589 12180428 12151040 12238382 12177427 12157462 12165091 12140802 12136247 12213523 12197488 12146118 12204255 12144956 12192140 12161246 12194871 12208795 12205938 12185425 12219313 12224850 12180463 12179073 12173107 12194880 12211446 12164300 12168530 12197331 12206359 12185741 12137642 12222466 12215740 12180558 12180352 12184720 12178608 12194678 12197248 12230120 12190435 12242837 12151447 12169098 12200724 12208608 12149504 12202746 12203534 12208218 12231010 12240571 12202731 12206408 12197657 12179604 12178777 12220225 12219562 12172099 12224865 12235133 12208692 12191054 12191460 12182939 12175837 12221460 12191958 12179131 12220352 12205880 12215737 12233372 12175006 12197671 12181220 12199771 12219140 12193083 12214588 12189738 12212226 12205316 12243737 12196026 12227149 12216132 12203870 12224224 12191769 12218099 12197281 12200859 12241559 12210808 12202407 12197788 12202203 12276064 12187917 12233787 12246891 12234139 12194662 12220441 12226760 12203233 12230670 12222705 12208780 12203297 12216246 12255076 12243923 12250311 12233436 12246685 12212424 12231415 12236347 12223755 12225207 12163475 12224098 12257423 12235424 12223138 12197599 12232116 12223073 12210624 12295158 12190973 12213018 12207854 12224898 12243656 12209146 12210107 12204228 12287526 12221906 12190851 12219837 12266816 12213376 12256014 12262946 12223182 12260424 12216381 12251048 12220929 12253784 12233217 12219387 12248109 12238138 12228233 12257472 12226396 12267800 12227372 12261147 12236990 12248013 12212185 12228760 12273584 12235934 12268580 12156612 12270816 12259897 12218180 12237150 12235829 12242611 12256430 12223878 12226917 12250083 12263569 12284196 12276194 12246501 12228748 12249862 12287334 12218577 12259646 12265811 12222748 12285274 12216969 12278065 12258548 12272370 12261587 12227372 12264399 12268814 12246440 12224272 12278862 12271872 12283097 12260737 12222904 12240125 12277392 12287802 12252740 12266088 12258876 12291208 12260869 12272943 12319273 12228255 12261000 12263682 12272475 12313068 12243325 12242283 12248098 12288250 12286744 12296177 12287433 12284942 12285006 12260180 12252308 12250652 12301509 12276404 12272688 12270942 12306174 12289532 12287744 12328336 12282592 12260025 12332745 12325638 12286892 12256285 12301743 12286700 12289028 12273287 12290303 12252310 12280183 12311011 12272649 12309286 12291314 12292043 12305865 12298186 12302013 12277196 12233983 12292655 12312232 12271001 12279871 12300105 12246998 12303505 12295143 12261032 12279062 12272337 12293008 12294459 12280541 12319877 12292508 12284214 12274807 12322759 12303206 12300892 12286074 12277339 12287250 12284678 12289478 12275347 12290729 12297821 12284153 12317477 12304519 12340842 12294265 12336379 12278619 12281642 12332069 12293626 12307774 12306562 12304565 12333703 12298530 12324195 12282669 12296047 12303407 12322234 12304692 12313891 12312101 12309083 12279772 12282741 12303868 12310704 12298316 12344224 12343290 12325580 12271794 12350803 12279329 12317715 12314509 12361094 12316397 12315293 12317623 12287705 12274536 12350077 12317071 12345263 12300846 12348940 12342770 12318089 12324450 12304706 12307760 12292560 12316594 12322027 12349516 12315990 12365868 12313478 12333574 12330531 12325959 12322216 12327705 12341628 12311659 12348956 12356964 12278070 12324009 12350459 12348592 12368291 12342736 12321381 12356673 12364550 12304799 12333621 12334959 12358551 12373243 12343626 12327974 12295349 12329738 12332950 12314138 12350597 12332844 12357625 12344409 12336879 12372772 12359027 12349908 12357075 12308924 12339256 12313832 12329416 12339944 12332062 12334871 12376012 12324619 12377502 12339586 12352422 12369674 12330608 12356338 12352972 12329213 12362030 12365561 12322803 12359068 12367717 12370934 12379667 12367501 12344328 12337615 12342766 12366956 12356236 12380669 12368187 12402555 12414271 12328342 12349520 12350248 12334013 12367735 12307437 12395560 12360800 12337576 12329113 12368398 12309423 12343116 12336583 12349308 12343527 12382758 12352265 12361556 12330968 12364415 12367178 12353298 12355850 12358009 12388228 12347878 12346195 12391171 12354422 12378142 12397901 12339920 12377212 12373852 12383704 12348911 12367261 12382184 12383385 12384674 12396573 12384294 12359350 12353413 12394395 12358711 12387852 12346916 12341244 12393393 12364112 12343053 12392216 12417983 12345070 12394249 12367264 12417355 12391729 12374127 12400966 12366790 12384226 12374825 12412630 12363785 12411430 12381322 12388290 12372819 12386274 12390650 12389561 12364301 12358887 12412844 12409046 12379232 12343168 12371078 12414494 12384749 12378041 12413828 12391309 12408953 12368364 12369936 12373468 12423272 12428571 12375130 12393996 12417576 12388467 12382432 12370507 12360595 12349940 12363022 12390667 12425322 12426333 12441712 12418451 12368971 12393328 12404824 12414977 12396857 12436799 12382592 12416914 12387760 12411303 12412525 12421314 12412637 12392528 12454195 12389369 12419792 12394270 12406385 12383501 12357919 12408451 12401230 12418219 12429316 12385685 12412524 12420185 12408356 12406410 12396264 12383230 12418106 12404986 12417827 12390415 12420193 12432796 12464665 12405432 12413871 12424502 12408607 12405677 12403296 12414567 12366067 12373324 12434201 12412182 12411156 12431114 12407139 12411659 12448316 12432279 12433107 12400629 12430081 12337635 12413267 12388199 12434997 12405709 12437120 12425593 12404226 12436499 12436885 12438267 12445498 12395378 12383520 12450989 12400958 12429892 12441212 12422878 12413832 12406108 12418669 12470412 12434756 12424812 12439231 12444685 12432568 12504457 12419295 12448572 12464133 12390229 12435917 12430700 12461286 12420700 12446703 12424039 12458399 12410677 12430241 12446440 12427727 12462822 12444278 12401934 12450450 12445570 12427333 12442338 12425960 12443886 12442101 12437080 12469842 12471758 12458787 12403949 12443421 12453530 12447407 12508687 12441673 12451233 12444082 12420879 12468596 12451359 12470737 12432784 12455217 12487342 12456695 12472406 12486955 12477363 12427907 12436480 12460156 12426324 12444919 12456646 12462655 12473913 12439531 12436230 12418897 12458655 12467556 12463068 12465457 12435403 12422003 12443957 12425719 12488743 12457885 12413905 12464026 12443609 12452421 12487308 12451616 12449279 12479134 12483910 12475170 12469431 12467207 12445373 12496833 12475220 12448044 12479936 12461554 12441769 12456907 12465046 12453480 12487289 12447763 12452168 12471216 12469034 12488334 12460112 12480942 12475955 12474369 12519954 12468554 12484169 12502965 12480680 12463923 12498446 12479957 12462038 12526308 12452828 12456503 12503149 12488798 12496556 12504768 12511591 12497363 12501511 12484972 12469194 12475313 12562615 12512271 12497672 12473170 12494470 12470350 12458983 12515994 12513671 12499933 12464970 12474600 12457339 12454614 12516651 12454290 12487490 12505589 12455268 12498666 12449641 12523847 12508240 12472934 12501044 12501111 12557724 12496106 12482717 12464409 12455603 12545423 12501988 12530867 12522306 12511038 12536197 12515696 12477225 12509658 12507391 12479798 12555877 12464356 12497685 12520795 12479077 12486091 12536695 12558883 12513464 12539379 12525614 12495870 12532838 12506680 12515139 12515132 12497059 12517606 12491195 12571541 12508989 12476606 12526310 12489760 12534669 12540913 12498485 12510625 12511634 12487442 12506781 12488810 12576008 12518386 12497000 12519050 12525169 12531407 12539239 12554917 12502423 12532191 12535455 12545284 12521622 12506657 12557853 12540942 12550252 12485798 12505749 12520971 12532610 12527989 12507978 12544544 12528282 12529598 12543426 12526332 12531547 12481771 12532655 12552935 12522613 12543547 12561411 12569122 12517598 12499334 12553316 12532928 12563639 12552364 12572405 12525875 12583647 12541358 12568738 12562290 12559982 12547462 12549254 12546091 12503482 12563403 12560017 12544440 12562762 12542879 12557146 12549440 12578998 12559218 12530348 12515183 12573031 12540250 12546628 12542812 12547348 12558551 12573897 12533873 12533856 12520637 12607237 12557426 12544260 12545730 12594973 12526754 12531406 12536704 12528941 12562763 12567321 12574655 12545062 12562110 12562374 12537270 12559158 12539350 12573860 12537856 12584155 12570459 12529075 12598660 12576831 12559276 12564120 12551779 12554655 12537741 12526650 12576184 12577456 12586028 12541378 12586703 12618827 12560944 12545113 12589497 12546245 12555394 12567111 12572181 12564113 12604147 12560776 12566857 12577732 12581426 12556092 12580206 12577696 12556702 12534169 12585136 12641803 12563293 12614344 12559074 12619671 12568371 12572856 12581876 12580899 12561088 12624920 12599033 12585160 12541608 12631372 12566760 12579267 12621186 12589554 12599908 12588546 12567803 12591767 12619902 12601895 12579010 12568244 12604728 12581191 12599909 12622830 12626681 12577380 12562270 12557179 12614147 12601296 12584691 12570727 12604598 12579970 12621678 12644610 12622729 12600949 12582450 12600465 12610743 12618887 12548583 12616830 12607836 12599524 12610024 12591838 12591799 12621020 12604026 12614546 12588138 12622097 12615952 12581004 12612191 12612153 12630533 12565099 12622621 12611083 12611727 12594994 12634883 12589891 12615883 12633062 12646648 12589314 12566960 12627056 12626521 12622677 12601969 12597005 12596496 12566492 12576147 12600131 12594297 12607046 12631436 12626053 12620636 12626677 12619518 12622074 12629707 12593134 12634318 12653272 12596397 12644942 12618048 12615897 12648597 12638162 12610674 12625029 12615191 12644898 12628589 12624305 12667157 12595402 12639453 12660790 12653857 12610502 12607838 12626023 12635206 12643467 12613187 12645523 12608190 12647631 12631344 12650177 12670158 12619677 12644056 12648920 12656966 12631906 12628359 12626398 12638322 12645569 12639950 12648566 12660829 12634153 12648635 12609812 12640055 12619606 12683445 12668233 12638101 12592880 12603861 12622631 12661229 12678098 12656494 12595518 12703108 12659146 12636964 12643125 12707878 12672373 12651120 12680398 12667354 12637790 12637892 12676301 12651603 12701060 12662293 12658504 12678598 12675311 12637039 12659467 12656297 12618819 12644063 12660423 12630005 12658083 12630124 12712399 12632918 12635944 12663489 12646601 12654543 12694837 12696066 12664471 12643745 12631290 12697016 12710896 12668128 12685050 12694564 12678016 12628770 12656744 12640552 12668697 12632898 12708028 12685874 12689330 12663094 12691399 12679901 12659872 12654831 12669705 12687946 12657442 12695516 12691653 12678086 12672551 12682352 12650438 12654708 12655724 12687907 12692703 12663722 12676151 12620955 12719996 12685945 12717600 12659897 12649901 12672233 12674529 12642736 12682783 12663724 12688104 12745129 12667166 12684571 12714018 12690444 12669502 12703732 12733788 12655328 12697873 12706226 12730452 12669931 12724661 12695138 12718354 12680947 12678565 12673034 12689701 12718564 12676858 12634248 12705164 12684660 12720916 12748913 12673297 12659788 12685348 12729655 12680916 12675450 12709585 12678526 12708261 12673332 12688346 12690406 12703463 12696465 12718994 12736976 12672138 12727621 12748978 12727854 12703852 12746629 12724355 12700884 12711209 12676536 12712387 12673380 12684172 12711033 12703834 12718890 12702488 12745704 12691585 12683923 12689254 12730337 12696660 12731139 12714359 12694075 12691999 12766701 12729074 12703420 12753852 12714022 12702938 12728420 12683687 12731419 12747316 12685389 12755597 12680757 12775610 12722895 12726628 12723211 12741339 12732027 12711046 12741817 12708835 12727585 12722081 12736887 12724453 12751959 12760754 12712245 12710481 12745749 12696093 12744718 12765810 12708507 12713066 12716149 12735110 12724645 12735309 12711796 12729324 12725453 12730367 12715882 12730731 12741327 12739744 12727930 12712077 12699548 12700989 12737349 12759820 12745406 12703370 12755576 12738820 12747933 12703048 12771495 12715436 12748521 12732921 12724615 12788017 12745064 12749122 12772374 12727438 12728085 12734123 12717173 12742654 12766914 12773473 12743827 12720599 12728580 12710501 12723955 12763748 12725680 12775247 12736199 12753753 12782177 12782694 12731813 12747461 12747017 12746523 12729416 12735183 12756452 12782705 12763419 12777196 12756089 12764425 12749716 12785456 12826728 12771164 12790002 12739041 12744208 12765664 12754974 12772351 12788448 12734839 12752190 12748583 12771461 12769840 12748995 12760953 12752146 12753558 12755033 12742988 12794191 12774116 12753380 12741102 12777537 12780943 12781229 12761390 12739360 12789110 12759501 12775717 12774396 12768772 12790862 12764234 12771357 12777780 12760529 12776590 12807978 12777492 12794744 12762596 12762200 12778949 12779039 12805087 12768178 12761960 12781897 12787864 12786950 12768245 12787175 12763671 12799551 12749085 12788051 12838475 12758468 12773398 12797180 12768812 12829069 12832264 12769539 12773679 12763949 12787107 12798227 12790070 12796942 12827518 12821644 12802800 12776349 12826089 12777008 12781992 12765271 12769993 12799183 12786454 12770405 12782049 12829606 12771426 12822900 12791596 12769331 12779906 12817827 12758308 12767415 12805323 12779161 12782072 12786215 12834524 12855277 12806376 12813015 12786640 12797650 12751191 12804743 12769273 12797676 12793502 12809006 12802400 12788806 12804221 12800069 12806586 12799427 12851297 12768048 12806935 12820100 12838074 12791498 12817190 12828784 12800241 12807618 12803526 12785959 12815166 12784469 12792441 12830728 12799467 12865935 12819790 12813231 12825255 12812385 12796805 12812547 12828115 12788905 12839488 12818064 12780472 12828117 12812395 12797894 12843205 12822843 12811959 12847024 12786730 12868774 12831573 12813649 12811317 12818505 12818686 12789566 12798765 12807408 12860629 12797207 12813791 12834479 12796179 12846854 12849941 12823303 12821737 12840351 12828259 12788458 12782495 12830528 12839120 12801134 12832640 12795901 12814615 12776197 12784928 12851377 12825799 12835599 12827859 12839036 12822625 12810270 12852543 12788268 12804595 12812017 12829904 12855632 12831871 12846386 12836669 12855697 12851961 12847135 12833622 12837121 12858447 12842467 12822999 12843819 12844332 12860760 12875787 12876323 12843152 12844156 12822456 12843125 12839010 12826014 12844250 12847127 12815808 12907184 12844371 12860444 12831851 12827640 12809357 12838502 12881696 12868583 12892454 12861519 12895221 12826179 12858856 12842692 12856581 12862445 12811303 12863635 12905740 12859635 12855139 12896467 12874306 12857042 12848413 12859380 12867995 12796630 12869314 12834383 12863439 12865903 12866545 12871594 12893131 12850843 12857909 12887007 12876717 12873771 12867031 12864761 12868759 12875281 12872902 12859333 12880624 12818391 12847349 12839474 12873901 12891518 12891266 12856659 12882581 12873950 12870042 12867384 12867621 12862171 12882529 12850879 12868141 12859303 12873068 12878234 12885530 12901380 12842965 12854158 12858992 12896727 12876003 12887231 12901678 12872432 12877874 12914146 12863636 12940562 12872080 12895362 12912118 12868722 12891317 12920529 12920842 12898614 12894361 12882098 12886708 12889887 12857569 12890847 12881485 12880972 12871131 12905076 12858704 12892333 12840885 12875390 12884486 12914535 12860614 12918606 12888469 12902491 12924063 12888034 12887490 12934475 12927956 12836381 12879081 12896476 12859940 12879968 12890132 12917880 12875610 12887981 12877319 12855561 12909087 12901588 12905809 12918092 12932062 12876528 12889464 12881745 12890693 12867393 12937767 12899721 12888067 12914947 12948437 12923033 12885960 12896109 12910656 12913806 12933560 12937089 12940189 12891990 12862248 12926578 12904430 12944234 12882068 12877071 12908245 12898871 12941523 12903709 12932160 12930198 12924177 12904932 12924195 12942185 12964895 12907666 12925663 12946477 12904791 12922242 12882958 12862022 12885626 12909125 12905323 12911069 12908251 12912759 12901133 12927466 12931620 12916573 12894377 12938824 12871714 12875124 12922291 12913930 12913128 12936823 12937967 12920653 12925909 12891881 12925869 12887016 12914970 12902409 12936120 12925996 12898897 12876634 12923745 12875185 12897470 12928073 12977576 12939518 12922166 12926510 12889993 12965018 12910065 12887568 12876628 12933180 12927203 12958717 12935870 12961732 12904239 12983779 12929845 12932088 12970502 12934328 12905844 12927394 12957186 12934906 12917965 12948726 12953908 12920993 12933944 12957951 12961204 12913898 12921320 12957896 12937201 12910098 12972859 12948614 12951955 12947315 12941208 12896601 12929274 12940751 12926547 12934443 12952406 12967657 12940457 12943773 12936272 12978632 12994812 12972295 12973611 12963189 12942944 12937856 12956390 12963606 12924006 12936164 12966366 12955519 12933062 12982617 12924731 12966404 12947374 12960398 12947371 12965589 12984417 12939980 12936814 12963423 12987615 12961321 12965425 12964874 12950489 12959827 12946294 12992625 12991773 12963663 12989136 12983594 12974989 12954477 12976312 12982133 12992201 12975196 12984757 12997095 12958156 12963277 12974959 12936236 12990087 12978988 12977840 12995657 12988354 13012926 12986543 12977541 12960488 13014112 13014457 13017593 12997159 12951071 12960738 12993714 12930537 12995221 12955032 12978408 12988038 12945623 12987366 12985708 12985388 13008169 12978156 12973683 12973431 12950155 12972559 12988040 12973162 12939777 12969305 12944579 12953874 12976256 13010162 12991644 12963607 12982060 12953905 12997577 13034836 12994291 12975760 12979283 13041287 12981373 12995629 12961890 12990504 13015116 12946811 12969732 13006874 12979889 13001062 12993380 13036499 12965777 13032940 13003148 12997830 13033875 13001064 12999633 13009872 12981430 12995947 13029813 13020929 13006611 13022184 13029862 13019605 13044384 13013325 13021002 13033187 13007059 12956291 12981346 12976490 12981357 12980987 13015371 13035817 12996377 13040799 13000647 12998844 13004939 12972694 12980950 12991184 13023639 13012511 12994947 12994389 12983354 13008764 13019713 13018524 13005597 13039938 12995376 12993971 13011743 13048974 13006683 13034090 12975475 13035756 13008133 13024633 13043872 13007377 13035343 13014941 13021436 12982632 13009926 12988731 13004232 12991496 13001473 12997602 13081365 13031625 13038886 13006098 13028166 13033956 13005378 13024843 13028328 13010360 13061348 13027509 13026255 12989574 13004012 13016807 13052993 13040398 13052186 13041156 13013774 13060524 13046047 13045499 13056635 13069870 13074746 13039696 13022288 13019892 13035652 13031466 13028172 13057710 13001359 13028044 13046818 13031524 13023225 13074525 13080223 13025022 13030741 13018448 13102158 13030116 13033880 13031112 13023634 13040417 13015550 13040303 13040463 12986154 13052949 13051041 13049090 12998115 12982545 13039282 13037198 13070373 13088618 13031214 13038224 13065945 13060475 13051087 13016478 13044108 13022696 13063842 13040561 13044059 13044872 13044534 13078573 13027752 13076338 13040049 13083014 13076697 13028617 13066232 13030426 13073739 13114210 13059669 13022593 13063898 13063911 13123556 13039856 12985697 13092686 13058408 13047892 13081820 13096605 13076670 13079915 13068788 13034289 13102508 13101074 13092856 13018356 13030351 13088392 13090374 13082184 13100074 13059219 13088821 13083314 13068297 13044021 13059860 13040789 13064065 13074514 13071449 13058472 13107485 13076411 13086968 13073655 13045672 13073330 13064363 13115395 13080709 13044641 13059648 13059590 13080238 13076273 13119252 13107236 13098841 13056818 13069611 13115215 13120920 13098257 13094789 13084073 13128122 13041417 13112760 13078720 13091366 13123045 13114480 13105906 13074855 13092803 13106120 13097209 13100297 13045564 13071599 13137466 13036069 13082864 13092411 13087018 13067415 13115435 13065312 13092868 13120983 13144189 13079326 13089818 13071848 13089995 13089933 13103894 13085004 13114867 13152379 13108430 13105919 13065355 13119368 13061647 13100558 13137587 13109252 13141588 13086548 13097704 13099116 13085526 13152715 13100577 13080498 13097053 13124786 13112258 13108718 13105805 13079883 13098637 13091323 13105646 13138046 13165360 13126136 13060286 13145310 13123994 13090514 13145900 13136225 13094800 13056809 13142263 13084798 13050576 13130983 13092273 13119746 13113837 13088278 13092661 13101950 13131204 13102903 13125948 13125443 13095096 13155732 13084880 13105449 13106273 13146888 13100838 13140106 13117749 13081553 13100365 13117144 13089414 13114410 13112773 13114738 13147762 13073436 13142140 13123116 13123695 13096173 13101542 13104423 13163905 13143591 13110555 13124932 13133838 13099994 13128197 13124755 13146173 13125450 13116636 13056403 13119231 13163835 13165482 13128557 13130809 13133298 13168497 13085895 13109026 13108176 13140618 13161194 13123063 13168912 13147647 13210416 13129704 13091994 13124053 13092479 13140059 13139959 13114824 13133748 13134012 13144760 13097232 13091210 13144938 13126445 13146328 13145748 13163097 13148762 13182668 13130185 13145693 13156776 13121302 13134517 13148697 13124122 13127921 13152482 13209718 13138673 13116038 13137298 13166251 13148931 13147740 13128604 13185723 13190770 13172229 13156242 13144688 13212733 13159202 13092475 13190390 13118627 13192570 13132701 13093417 13163214 13161151 13166670 13155345 13158203 13191683 13122959 13134309 13127350 13173118 13175137 13145372 13155013 13178396 13098842 13189965 13192656 13137506 13158229 13213782 13139632 13173120 13211487 13149049 13164629 13143367 13170977 13146745 13155107 13112302 13196235 13186379 13172080 13178635 13187096 13140336 13174793 13201761 13147472 13146595 13185537 13110927 13174113 13177306 13168021 13164799 13161993 13199150 13140079 13194568 13208752 13173064 13175905 13197990 13141743 13199945 13175934 13158354 13188888 13143498 13150483 13198330 13174968 13185631 13172773 13149640 13143186 13203284 13172126 13179157 13119510 13207483 13178796 13194268 13161759 13175067 13207304 13191950 13205516 13204765 13168916 13193461 13172241 13191080 13173876 13200513 13214354 13250024 13207036 13172818 13155022 13198642 13223871 13162229 13184405 13181499 13178909 13205702 13201089 13230287 13219468 13206912 13184607 13189029 13170133 13218641 13171037 13182563 13209515 13206420 13198798 13231979 13203400 13225933 13234114 13211605 13184748 13236608 13243901 13223763 13211039 13149589 13202643 13198861 13226431 13179050 13202650 13169943 13216144 13208609 13224211 13203502 13243469 13254859 13200312 13246034 13172902 13217621 13227286 13211684 13219288 13209542 13228868 13237027 13190606 13216994 13241016 13236292 13239844 13232660 13269102 13252581 13199218 13236275 13262763 13249840 13219167 13181819 13246349 13255481 13221440 13214158 13220907 13212873 13202349 13217824 13231067 13219256 13227093 13238855 13222187 13219841 13250159 13201486 13226170 13196080 13243554 13186089 13229872 13242104 13213913 13262682 13241822 13280276 13262724 13228645 13210062 13237668 13298040 13237430 13230828 13196939 13249420 13218315 13244833 13253112 13252953 13232340 13255271 13254189 13192006 13254543 13227090 13251622 13253312 13218485 13215069 13211263 13285570 13190359 13251104 13223527 13229324 13248918 13227319 13262580 13233482 13255417 13238408 13260792 13227504 13283243 13282979 13234788 13237223 13235085 13232492 13225537 13264618 13202966 13253603 13265003 13205446 13289947 13254304 13248875 13250822 13262367 13259382 13254103 13278311 13245278 13194244 13301190 13233794 13261752 13249625 13237973 13265229 13254023 13214171 13247362 13237520 13289976 13260244 13286979 13256807 13250866 13305260 13265422 13278216 13258644 13242209 13269401 13251227 13269471 13231734 13276865 13278054 13233742 13295247 13250275 13287099 13245852 13251875 13286569 13259424 13253883 13269374 13255710 13276512 13309502 13285920 13288864 13286103 13281519 13314219 13250824 13276780 13305307 13253842 13241409 13285999 13266507 13271453 13282879 13294449 13256487 13276104 13268464 13255388 13249483 13292140 13267626 13299854 13277232 13295541 13259174 13269803 13266160 13267565 13309453 13280653 13279067 13298264 13306881 13262554 13287632 13294650 13255258 13287475 13263207 13278311 13289524 13307933 13286037 13290848 13315849 13279192 13234987 13300362 13297628 13270877 13291099 13301841 13281278 13295812 13304050 13303155 13290349 13254879 13282157 13320391 13327719 13311371 13309154 13268827 13300385 13328451 13234969 13288512 13277686 13322973 13354148 13264575 13332993 13309091 13309706 13294807 13320287 13337684 13313797 13294383 13313558 13313423 13293383 13326154 13281359 13312205 13293739 13317250 13344683 13299673 13278619 13313653 13276171 13300686 13302992 13277578 13322837 13277751 13265936 13284349 13343314 13302638 13345281 13318045 13290584 13268400 13305581 13275630 13331796 13332639 13299702 13334669 13317999 13291868 13305903 13318566 13281384 13321239 13367724 13303667 13320387 13300110 13276690 13281328 13355356 13325861 13350838 13320665 13294879 13334584 13355564 13307605 13363214 13311138 13351972 13309379 13345102 13245400 13347830 13314574 13335857 13311013 13322838 13355157 13305610 13333669 13341870 13339425 13347852 13338495 13333316 13330808 13334900 13300952 13391159 13333400 13307145 13332917 13300181 13317965 13335982 13379874 13299813 13345022 13289358 13356318 13317011 13360520 13366023 13352195 13290700 13325838 13336877 13297969 13306036 13346583 13356972 13345414 13369698 13319650 13375621 13335371 13337713 13351221 13320331 13317170 13346918 13329544 13388782 13342310 13362734 13329461 13329523 13347617 13324895 13321573 13333741 13369923 13414165 13323971 13371412 13347732 13315969 13395954 13347323 13365041 13376850 13358444 13387786 13359211 13361965 13370226 13358529 13364010 13314823 13382919 13348651 13386157 13343181 13362387 13373025 13390002 13392865 13403288 13365700 13337103 13340686 13379268 13348495 13372652 13346497 13372181 13371035 13352572 13323357 13317233 13352200 13398856 13364211 13390582 13401069 13345358 13349778 13354668 13312045 13397047 13367465 13387474 13340761 13348269 13407181 13384598 13368152 13376920 13368635 13380470 13396472 13408615 13356670 13364586 13395423 13409264 13420900 13392188 13374780 13381254 13397863 13363019 13368428 13372538 13392556 13378609 13395486 13347073 13382681 13399821 13362692 13402722 13377054 13383596 13393431 13396679 13375511 13411886 13426654 13376633 13390663 13413933 13414621 13436407 13380943 13420896 13409837 13430714 13423761 13417101 13394398 13382439 13428219 13409971 13412276 13383294 13406244 13399208 13415069 13410155 13405185 13429004 13354211 13404376 13450063 13400147 13449056 13396237 13390911 13389428 13400385 13447580 13404424 13403562 13444672 13405696 13365767 13409098 13405531 13408565 13419563 13420356 13392793 13430365 13390080 13388254 13420259 13399904 13412294 13404234 13381415 13430149 13392408 13385521 13430192 13430093 13385883 13411365 13442406 13372282 13432933 13392539 13402853 13403864 13417449 13415987 13419154 13404651 13393805 13410540 13422037 13421488 13424532 13441289 13421377 13404097 13384925 13391797 13441466 13404633 13458805 13380406 13409355 13394090 13450771 13462237 13441767 13441281 13448071 13416817 13428933 13455759 13413855 13377595 13402416 13420822 13455305 13415332 13400946 13454454 13466918 13418089 13445170 13473248 13395793 13412577 13434791 13423839 13447903 13425290 13453370 13419676 13413038 13401232 13438679 13455204 13439077 13448582 13438028 13426125 13428248 13406677 13429544 13438275 13421620 13499077 13474187 13382192 13437005 13483944 13413257 13430515 13470980 13446051 13441415 13447613 13404060 13422354 13424631 13463386 13436461 13436244 13384035 13446794 13476833 13420055 13459666 13463170 13451062 13448705 13497014 13451477 13441792 13460152 13464800 13485797 13460259 13428431 13439346 13389945 13457126 13430437 13447497 13450557 13435351 13502073 13457757 13470663 13466921 13441731 13478453 13470991 13430517 13460060 13474177 13409415 13449876 13450777 13451645 13472389 13432703 13466036 13496770 13410507 13485634 13491654 13467615 13463494 13445687 13474828 13465285 13471067 13458078 13475937 13477914 13438321 13442359 13509609 13459364 13468557 13494218 13477280 13458345 13494259 13438791 13507961 13461664 13460986 13478443 13461430 13431574 13480787 13432995 13467544 13425812 13499085 13477398 13475592 13469241 13458089 13490387 13454032 13503668 13507803 13514844 13519012 13478358 13473624 13464579 13499478 13505921 13469363 13464770 13491224 13476224 13461079 13463332 13506125 13493201 13483158 13473560 13447646 13479896 13486969 13513826 13496028 13546516 13499845 13486841 13515556 13540676 13498315 13544755 13474016 13522738 13466619 13515241 13497320 13516223 13506219 13492820 13549366 13505387 13522966 13489116 13518678 13491188 13493332 13501605 13524661 13475768 13506967 13535127 13532421 13498410 13480548 13552535 13484165 13517788 13558047 13530518 13533378 13486440 13493078 13520866 13500561 13476187 13496886 13510166 13458643 13521325 13510943 13535709 13522065 13478484 13574118 13563456 13485374 13524832 13528726 13506094 13510537 13484736 13479425 13529030 13559919 13513302 13487430 13503697 13497593 13495024 13543113 13491126 13533209 13538930 13571690 13497581 13506713 13505118 13564538 13507408 13505168 13543938 13510495 13488450 13555916 13509634 13521027 13532906 13525581 13518895 13532606 13527209 13546317 13528239 13498718 13511469 13555109 13537191 13513846 13535857 13525605 13539498 13571921 13504947 13525288 13539705 13521949 13507356 13517501 13494101 13529846 13581754 13559758 13543364 13519595 13516067 13526662 13533324 13562357 13547111 13516789 13529611 13533022 13570097 13549860 13511815 13609036 13539774 13511404 13547231 13531139 13583295 13507336 13523852 13510393 13543897 13528379 13549107 13515393 13585973 13472533 13527890 13529427 13535847 13547510 13529151 13537611 13564336 13570963 13538326 13563678 13542515 13525145 13534296 13547426 13525508 13554906 13569208 13614579 13567367 13528513 13561451 13600373 13560888 13544431 13518672 13536018 13570272 13531655 13556774 13572298 13578827 13542440 13565898 13568150 13547574 13525046 13573235 13548772 13531805 13524364 13567947 13555927 13554004 13573860 13574647 13565959 13563300 13573469 13575203 13586375 13551050 13533039 13558958 13584538 13592842 13547811 13576637 13577815 13613406 13602028 13571096 13588553 13612284 13595487 13536215 13563503 13574195 13616024 13601340 13618372 13583609 13600224 13613494 13561573 13595114 13583660 13546970 13575517 13627465 13548661 13599044 13579328 13550041 13592239 13546737 13594359 13593060 13533246 13557624 13572598 13603700 13633618 13583488 13611077 13603132 13592560 13589404 13583853 13574895 13576330 13578932 13566672 13569374 13565381 13594019 13547095 13618055 13609899 13532515 13617334 13551871 13584695 13631247 13582717 13557516 13599841 13648708 13612046 13618433 13599095 13610864 13579271 13600969 13586174 13561869 13581853 13584867 13549298 13623130 13601568 13590156 13604957 13600145 13591599 13562739 13592235 13615597 13579607 13624393 13562649 13607726 13663822 13613306 13592393 13601584 13592423 13601173 13563207 13585184 13605665 13616739 13619650 13597290 13620143 13640497 13548524 13634974 13594231 13582578 13575297 13629824 13613132 13642621 13638485 13614071 13577391 13607380 13578319 13622372 13652818 13607533 13607684 13612225 13609641 13590451 13608080 13633002 13633321 13605200 13622852 13638577 13605695 13614350 13673405 13619991 13604948 13616681 13624701 13640320 13610536 13649962 13635670 13666014 13609274 13670018 13640961 13636282 13598219 13641138 13664187 13623666 13623550 13594729 13633494 13630183 13636211 13680391 13652054 13579457 13622795 13649259 13654280 13651300 13640690 13596888 13613078 13637360 13590771 13657136 13643620 13618498 13669584 13604109 13619665 13646495 13574448 13634844 13621250 13642256 13607181 13647175 13660265 13647065 13645631 13589487 13613969 13691819 13625535 13653102 13604888 13680429 13628151 13704486 13624766 13734229 13634872 13619856 13683452 13588498 13646758 13678146 13674421 13613940 13662707 13625242 13681141 13609552 13682660 13675452 13665470 13648152 13636192 13646578 13668525 13630127 13655618 13664726 13645070 13665052 13655162 13674832 13652064 13671492 13647583 13650402 13670409 13653213 13668963 13670841 13702615 13622336 13682537 13700712 13634311 13681222 13675544 13656736 13670723 13698727 13686608 13723222 13695234 13678806 13648351 13671932 13658084 13677587 13674029 13689284 13659170 13636090 13665984 13702541 13669568 13677536 13688577 13681187 13692519 13639696 13601568 13649670 13690671 13694380 13647727 13684119 13643579 13674857 13718001 13672888 13665750 13681549 13694915 13693442 13691346 13685140 13688252 13685237 13660356 13658367 13704334 13666801 13662449 13683201 13664719 13647105 13723791 13694532 13715605 13690500 13712874 13764006 13670839 13632824 13672484 13666993 13717192 13732767 13632567 13658215 13719822 13684099 13645783 13661286 13698420 13637405 13670584 13668126 13667943 13663215 13631337 13745697 13715491 13714164 13689745 13726102 13691705 13691826 13709956 13750193 13685787 13667805 13680771 13730419 13685634 13736403 13761721 13687392 13722172 13662212 13702861 13679673 13714593 13705509 13694564 13719847 13747954 13672887 13704730 13711154 13694151 13727481 13697016 13708742 13684452 13733631 13686340 13721888 13724027 13747804 13729630 13696620 13692071 13754243 13742739 13778704 13714987 13732558 13714806 13710330 13719829 13716679 13747526 13711151 13738205 13739260 13704756 13709868 13740118 13730712 13705410 13703534 13717658 13718010 13734879 13722856 13744279 13679775 13733694 13759634 13778102 13740099 13745257 13737798 13763406 13742594 13733257 13743538 13706753 13704503 13752748 13727120 13705142 13764312 13680596 13705994 13697966 13668975 13743992 13715546 13741796 13734053 13721786 13731193 13732793 13736558 13729286 13743662 13710599 13735626 13737377 13729936 13749059 13720483 13750600 13716702 13772704 13724864 13755225 13752577 13750761 13739616 13746855 13776292 13719155 13743990 13731816 13726489 13727246 13709221 13695865 13731606 13739461 13774114 13763881 13740946 13716723 13743618 13764264 13725112 13779698 13794223 13756413 13765052 13751698 13741387 13741496 13726479 13758774 13725483 13744441 13715222 13745831 13752458 13707278 13750158 13829055 13750443 13791473 13747783 13770229 13727020 13785717 13729384 13764395 13739666 13768388 13722982 13776694 13752449 13729498 13733994 13727081 13748561 13740019 13766814 13768732 13788046 13761675 13773445 13756956 13729795 13781298 13775421 13765110 13740101 13791614 13775004 13793910 13751831 13763791 13725074 13742413 13785182 13737994 13723373 13790968 13757091 13811479 13806856 13765481 13776639 13798481 13763935 13778046 13785214 13795705 13776902 13739228 13837493 13744255 13772662 13804322 13782645 13753486 13796439 13762420 13775452 13812064 13759246 13785792 13732642 13786379 13799116 13810917 13790614 13806213 13755336 13800944 13832807 13823808 13760150 13772383 13739919 13812516 13746701 13810454 13793123 13838845 13786806 13796615 13797640 13759207 13785834 13778509 13784249 13810600 13802111 13796874 13783547 13778077 13829350 13758848 13813634 13798204 13823029 13732159 13824515 13726411 13801767 13742682 13811597 13827066 13811520 13837926 13806892 13836893 13780733 13744588 13834110 13775666 13791350 13761587 13790377 13787305 13765647 13800615 13822387 13794233 13766391 13785784 13834234 13782581 13778653 13769894 13807540 13837136 13818872 13795213 13822748 13806610 13790753 13809195 13841307 13866439 13771979 13842422 13805176 13817423 13828921 13860192 13789833 13778550 13866295 13797209 13837047 13836962 13802170 13795045 13821730 13821207 13826467 13812325 13806778 13815702 13788677 13807623 13791238 13798913 13824396 13809587 13830499 13798655 13860381 13820960 13825287 13848152 13802361 13793423 13837607 13851953 13841184 13803194 13854145 13805181 13792027 13851775 13817832 13803644 13856122 13805153 13806434 13836516 13824490 13777933 13856634 13833114 13840843 13807510 13814185 13835699 13822588 13815400 13835475 13829121 13820395 13872654 13851305 13800369 13866778 13816048 13867554 13880939 13816467 13852834 13838013 13802947 13828756 13812951 13837962 13841674 13822328 13859379 13842604 13861668 13863073 13858885 13819149 13852863 13795975 13810466 13822979 13821604 13883876 13823510 13870335 13857054 13890182 13867943 13841245 13891164 13812674 13825526 13808028 13850363 13870641 13841820 13837327 13881470 13824724 13850266 13844992 13841255 13865316 13848404 13848666 13858092 13850679 13856325 13861466 13860058 13858876 13897149 13864811 13890562 13854230 13852570 13855611 13862978 13867604 13853045 13847832 13819737 13875456 13840637 13876047 13871918 13849646 13856622 13869882 13860679 13863081 13840492 13885934 13876142 13913929 13870444 13844672 13819307 13861418 13902241 13895634 13888348 13829773 13857122 13842217 13876183 13858838 13833983 13860428 13874153 13890778 13912013 13852942 13891820 13927279 13818598 13878178 13876305 13846858 13875585 13892246 13864533 13866124 13894764 13854975 13897924 13900667 13898513 13897029 13869983 13862010 13896487 13859510 13881229 13924250 13906028 13872785 13885608 13875169 13905842 13855180 13877741 13946226 13887597 13880492 13863908 13877300 13918951 13939183 13892848 13877232 13863621 13912491 13890326 13895316 13884854 13883111 13865722 13876972 13903629 13895168 13872710 13904626 13875008 13884348 13908394 13928278 13903430 13834999 13925009 13873936 13895623 13901010 13894937 13941894 13906616 13913175 13909907 13904571 13912697 13896957 13892173 13931619 13886664 13873119 13925035 13887511 13918097 13868920 13912225 13925117 13912105 13905921 13924101 13947104 13903930 13909680 13929876 13876772 13921342 13895749 13947810 13921349 13912808 13932208 13884936 13911709 13913467 13916694 13910767 13901567 13930594 13973896 13943741 13885967 13899013 13889431 13916667 13923600 13918448 13942462 13928397 13891431 13894426 13887468 13942360 13945536 13948662 13928664 13894812 13890374 13877724 13926497 13907999 13909256 13893524 13921094 13939193 13871010 13907436 13987748 13948996 13950718 13947434 13913539 13978814 13940168 13933998 13999890 13955142 13978500 13928425 13862651 13923711 13931820 13954825 13931042 13892320 13965188 13974889 13938808 13908166 13947947 13948652 13969193 13939967 13998624 13925987 13934123 13980727 13933631 13956110 13925739 13954696 13974881 13934750 13953106 13922041 13915156 13923783 13934547 13972513 13966095 13921183 13957293 14006206 13954784 13960635 13984771 13981721 13925611 13961586 13974806 13978168 13969198 13937073 13976310 13954732 13952467 13922246 13931651 13955216 13952278 13933115 13957499 13938377 13995316 13981262 13948197 13966246 13964497 13983335 13964307 13961217 13955511 13947917 13921887 13966422 13958814 13997983 13966360 13980789 13911047 13942953 13969639 13989648 13968617 13995353 13921775 13993753 13925365 13945219 13954843 13939349 14020201 13986013 13927991 13990928 14010721 13955664 13963872 13949529 13991938 13996520 13924281 13958982 13955515 13974827 13994808 13976378 13954024 13959926 13994644 13968485 13966196 13986684 13952900 13986806 13989038 14022922 13978846 13984288 13990551 13959479 14005616 13963620 13967691 13993706 14004995 14005059 13971643 13979504 13999826 13986842 13981694 13974446 13951416 13972207 14014987 13968672 14003989 14007176 13995623 13996004 14006733 14001599 14005766 13996258 13972500 13970472 13975789 13975395 14009375 14002621 13995190 14024022 13951972 14016105 13940594 13974464 13984304 13972380 13998193 13994117 14016239 13974822 13997461 14046750 13933283 14005542 14025591 13964802 14014397 14002284 14020208 14036888 13969509 13996296 14062751 14008102 13971663 13958177 14010849 13983521 14027645 14031416 14009734 14019628 14012698 14002767 14026653 14041645 13998523 14032812 14008817 14022419 14035538 13984272 13960612 13992255 14006683 14009875 14024231 14006479 14032313 14027615 13978460 13997999 14011369 14027929 14041005 14029912 14076443 14001049 14032361 14023117 14005161 14030313 14038480 14066008 14001600 14051711 14020053 14021836 14010857 14021577 14000890 14024575 14010357 14060263 14059933 14038264 14037547 14013237 14045000 14008050 14030095 14031192 14043785 14010741 13975167 14000862 14047032 14024661 14036735 14043976 14018557 14032342 14008452 14061960 14044764 14049038 13997939 14054677 14066287 13987858 14048744 14031691 14016684 14024727 14010768 14041844 14039288 14063744 14057894 14058447 14010922 14029824 14039245 14046972 14020948 14041231 14055854 14021842 14036047 14072328 14036559 14067304 14070079 14084159 14064082 14056160 14106317 14105430 14054847 14030040 14088035 14032475 14044133 14070185 14028675 14045848 14063793 14064707 14071868 14116089 14060839 14048616 14052679 14073388 14049525 14034342 14039978 14049106 14048500 14033770 14048688 14085107 14062616 14087277 14054364 14056661 14082903 14107412 14058901 14066765 14049291 14077286 14066887 14006855 14065234 14092347 14072802 14038843 14096085 14047490 14076262 14065836 14057138 14076780 14068507 14075615 14029487 14103068 14077859 14016297 14105529 14106052 14096583 14050193 14098046 14080374 14069277 14076045 14065362 14077386 14086853 14069581 14081511 14116422 14026802 14069379 14054458 14094189 14104615 14107171 14077946 14070872 14095865 14037606 14105673 14079083 14067184 14092109 14089553 14076915 14053566 14076237 14064701 14100940 14069687 14108725 14061576 14117884 14086950 14097843 14110679 14138251 14072311 14090489 14087102 14140014 14109755 14065558 14099242 14125015 14109521 14083443 14070050 14089647 14054346 14110393 14108654 14096772 14060745 14080911 14129795 14151773 14118073 14131800 14129773 14071949 14090206 14115912 14054133 14083493 14078001 14120379 14093202 14108748 14125133 14084633 14096299 14112052 14101513 14117886 14094893 14088153 14119472 14111051 14147366 14155515 14054589 14111900 14104966 14092096 14101293 14062967 14121492 14144257 14120348 14103879 14093643 14106486 14067175 14123477 14133103 14110304 14071516 14093118 14127284 14149023 14122428 14087672 14135056 14173779 14124330 14152808 14095387 14106788 14104212 14105452 14116538 14138580 14104821 14091954 14138837 14087003 14114761 14127391 14149037 14108100 14108441 14138858 14079163 14139457 14139606 14132200 14139498 14113841 14079330 14122977 14127419 14144219 14115054 14166550 14106414 14145656 14125187 14143335 14121602 14156567 14176235 14099505 14112831 14143185 14149848 14135556 14106391 14167549 14120241 14107256 14104606 14134594 14133778 14095349 14116573 14123685 14142687 14155790 14147447 14112852 14177087 14153127 14181114 14174681 14163167 14114675 14174190 14110757 14177207 14091730 14151314 14146970 14125843 14120733 14134536 14124981 14123376 14136661 14156319 14111792 14142389 14152718 14102370 14154078 14172865 14208756 14130001 14139206 14135293 14119001 14143959 14157595 14154574 14150433 14130838 14145650 14180996 14194286 14129151 14193649 14172897 14139594 14157242 14174744 14135360 14136708 14158090 14193492 14171219 14148264 14145965 14171494 14135507 14126649 14175167 14167902 14166498 14172430 14168760 14200621 14183249 14162363 14160296 14167819 14195127 14139477 14179792 14169269 14174678 14149796 14143049 14178344 14176080 14155709 14137283 14193881 14161063 14163750 14185312 14151965 14200648 14180225 14172180 14193436 14178394 14216525 14170093 14152318 14150539 14186325 14229920 14139390 14173664 14204937 14179265 14152406 14207867 14206325 14151021 14207630 14216845 14168439 14268448 14208309 14190934 14167583 14127332 14187730 14207428 14250282 14213816 14179544 14158635 14184131 14171932 14216645 14215123 14167436 14210175 14202816 14154927 14150584 14170114 14198675 14188130 14220891 14220798 14237687 14177472 14144432 14218793 14179870 14237045 14199946 14173413 14199915 14231333 14224178 14222783 14234753 14198232 14210732 14157498 14206483 14216348 14224769 14221494 14177248 14154599 14240361 14213063 14199045 14239207 14221255 14208195 14202630 14194890 14261563 14224471 14220654 14182437 14216930 14215217 14200506 14182375 14195123 14136110 14229309 14218386 14232344 14224201 14207546 14230262 14203678 14224896 14244848 14226718 14210509 14227761 14284994 14202279 14255902 14268603 14205474 14243964 14196594 14202099 14221875 14202592 14210852 14189321 14195613 14238977 14240759 14255373 14221506 14264683 14205804 14246814 14193949 14220672 14205310 14228284 14215606 14235319 14191881 14250648 14190163 14237304 14204418 14269753 14250982 14187283 14229006 14276775 14225478 14254197 14212336 14258013 14166300 14230509 14198479 14221467 14249418 14222670 14252062 14212112 14221135 14245413 14272811 14266134 14229340 14236059 14241628 14223923 14223581 14295681 14210818 14236023 14274816 14231596 14251034 14244886 14278464 14214336 14270023 14257939 14233298 14295408 14275359 14228357 14294851 14239560 14274705 14220104 14261163 14247067 14287348 14259345 14234776 14289032 14267619 14252970 14252932 14228574 14225362 14279630 14260731 14299729 14225419 14272843 14244450 14269266 14261724 14295952 14232790 14233916 14284473 14248771 14268872 14251438 14249644 14267281 14292826 14263113 14265948 14192874 14259201 14283389 14271506 14228405 14219578 14234254 14270355 14321867 14279554 14271969 14253253 14264341 14260481 14269316 14282199 14312184 14275881 14268495 14238283 14306862 14233091 14303443 14299274 14293140 14308445 14256351 14293434 14306580 14300419 14289531 14268683 14240064 14279170 14274417 14282425 14296220 14264506 14295951 14308744 14233833 14278655 14312123 14308851 14279696 14277312 14274734 14309725 14320536 14316894 14271263 14277710 14243396 14270330 14263573 14256677 14260916 14281822 14284322 14287087 14297890 14248599 14343970 14256055 14308214 14291989 14274714 14313416 14273810 14317796 14251931 14288246 14288817 14271191 14278199 14300160 14286453 14314729 14301528 14308852 14336771 14301772 14310962 14286892 14326116 14274529 14323461 14267017 14311138 14283607 14337662 14271806 14266277 14285512 14295048 14318254 14317729 14273452 14304581 14303437 14272651 14333733 14326223 14292621 14277639 14320497 14255096 14314554 14313689 14283668 14335440 14294329 14321122 14312070 14314603 14303963 14288139 14306271 14308049 14284234 14283893 14302955 14262841 14303561 14325193 14320436 14336874 14281146 14312898 14322522 14315213 14306126 14345891 14306476 14308588 14307557 14304936 14331137 14332650 14353022 14303256 14301505 14364805 14303159 14330344 14298753 14295111 14329873 14348957 14375970 14324946 14355735 14319123 14305258 14326466 14337204 14317582 14361485 14354682 14371147 14359321 14306708 14390530 14268653 14341998 14271888 14312407 14337153 14365464 14315834 14318840 14305815 14377639 14417951 14323413 14334275 14329674 14331827 14291049 14305318 14356725 14356584 14327364 14359003 14340310 14324722 14333577 14327858 14318182 14372614 14400407 14325228 14371217 14379232 14347357 14353469 14280758 14318497 14357155 14346111 14307856 14349314 14346049 14343168 14343225 14353177 14361626 14330127 14369667 14374299 14320800 14381236 14372292 14349540 14355380 14390899 14384030 14373754 14299689 14356710 14337704 14379825 14304625 14335646 14323174 14382017 14342025 14304066 14339788 14349475 14370160 14407092 14341461 14368731 14374934 14384548 14345238 14378151 14371556 14409446 14384085 14429780 14348213 14330049 14335057 14349189 14365180 14351484 14340929 14359420 14379393 14341069 14390880 14381769 14370072 14387479 14396885 14396306 14374158 14410160 14396864 14348425 14389923 14351295 14439638 14387766 14360608 14406234 14370096 14350841 14370548 14359399 14376774 14354141 14284080 14403409 14362395 14396014 14391283 14422980 14380069 14348917 14322110 14364284 14405272 14419399 14376625 14381718 14392188 14414866 14410975 14356790 14368190 14370584 14329750 14452398 14412853 14430182 14404843 14422836 14386266 14428187 14364479 14391495 14392446 14411348 14378500 14451388 14436328 14381815 14389751 14401807 14382453 14405921 14382675 14407096 14416529 14399849 14420750 14381957 14397898 14363351 14409745 14406348 14388718 14415575 14373326 14416631 14418956 14396280 14383434 14369291 14399397 14418885 14371878 14363224 14417229 14422626 14428658 14408019 14417217 14394523 14433094 14408873 14437560 14383517 14388123 14445826 14383461 14417260 14369808 14373673 14416456 14435176 14407593 14426752 14445308 14404007 14403164 14413146 14396468 14412220 14412526 14465413 14437392 14439051 14416353 14390325 14369314 14454836 14435394 14455453 14437838 14409703 14428145 14449236 14430577 14413961 14463712 14429458 14437539 14434218 14444038 14451747 14435967 14415100 14482033 14449341 14414935 14439468 14423419 14453818 14424592 14432888 14404380 14418455 14426842 14424326 14388268 14406296 14417116 14454338 14457659 14429645 14420894 14437595 14463202 14479013 14450902 14438061 14474344 14433472 14413585 14468596 14469372 14466080 14434258 14440149 14424432 14497800 14499376 14452510 14467261 14456924 14437590 14463359 14465495 14479141 14446259 14448047 14410648 14425476 14472193 14429721 14443447 14461800 14447606 14437147 14458263 14456248 14495835 14415045 14438426 14427178 14456092 14466115 14476902 14422753 14459368 14479501 14475586 14428872 14404280 14470057 14434916 14470516 14439499 14455648 14429204 14451794 14453846 14455240 14460331 14459005 14477945 14471646 14486322 14460801 14426104 14513404 14497821 14494420 14447098 14427005 14450029 14463741 14434154 14475262 14457545 14480032 14446509 14492524 14492703 14449691 14461011 14496804 14489666 14453284 14476418 14375697 14498405 14476369 14474096 14465613 14446663 14485478 14484492 14579102 14448560 14481809 14469726 14467967 14508018 14516305 14497081 14501731 14476899 14479128 14473824 14490170 14476841 14498669 14449508 14496200 14514562 14480230 14464687 14491339 14504574 14488152 14480433 14489581 14483502 14446771 14485091 14488411 14465763 14473628 14549831 14503976 14491672 14482227 14505652 14525237 14497827 14487604 14479601 14504003 14515954 14480665 14497800 14463775 14503817 14492376 14514206 14501453 14519349 14521423 14532057 14479861 14464514 14500676 14497352 14490860 14490133 14544081 14540325 14503764 14489976 14514159 14497259 14513842 14498861 14500125 14510828 14522191 14490720 14526468 14497917 14465682 14466040 14560107 14515110 14573184 14487140 14535562 14510350 14498888 14506278 14542541 14525692 14533111 14554678 14544106 14505314 14515920 14497309 14492270 14506361 14546046 14475240 14521158 14533923 14546736 14521572 14551513 14482704 14543070 14516701 14510322 14549895 14570527 14520095 14518108 14524338 14512632 14511794 14577970 14556787 14532381 14528783 14531383 14554610 14565968 14543150 14525510 14540464 14530053 14512868 14507563 14552243 14508778 14522010 14575256 14503532 14515819 14542675 14536350 14558734 14533709 14548628 14547883 14517893 14512211 14561182 14537198 14531310 14537461 14527094 14543905 14563726 14524052 14552503 14533295 14540868 14534296 14538079 14521033 14542367 14515477 14594618 14546541 14526360 14510947 14568627 14533347 14581489 14534862 14529436 14538872 14549637 14528888 14588544 14531669 14566600 14519751 14531279 14559528 14541806 14521701 14574790 14551169 14549162 14543339 14516834 14533982 14574957 14530787 14544220 14578938 14558684 14582008 14532723 14554973 14539644 14503455 14530097 14546378 14565139 14569655 14557992 14502541 14582308 14601298 14556140 14554411 14557422 14573198 14534618 14574001 14543273 14597593 14555363 14548501 14591136 14594731 14618139 14558121 14557238 14505541 14590378 14543880 14569497 14566605 14584536 14562413 14574109 14592710 14604488 14589921 14559432 14567761 14588012 14587252 14572477 14560614 14605447 14600409 14567348 14533424 14596844 14557090 14539571 14608195 14579172 14578388 14587298 14607516 14583700 14583697 14575436 14572237 14607051 14584255 14558409 14625361 14600074 14563299 14599398 14638111 14615668 14573903 14604531 14539770 14608790 14560538 14639257 14556332 14509414 14581114 14577936 14607497 14584102 14613230 14574636 14598891 14592378 14577131 14614586 14583679 14603318 14567445 14597360 14627618 14575705 14594042 14579183 14624703 14547991 14546693 14561441 14605999 14588347 14562090 14670502 14587300 14612459 14653579 14575561 14606390 14602558 14584217 14628060 14618886 14558225 14591967 14612212 14558925 14589684 14626544 14627274 14613760 14601098 14584005 14584972 14637916 14634707 14599856 14599987 14613884 14565129 14637098 14608488 14650803 14597659 14629703 14599127 14628046 14633489 14645654 14629967 14595853 14612386 14620656 14666925 14612393 14600859 14593481 14633606 14631002 14576698 14616889 14593878 14689179 14638170 14608478 14657469 14665522 14642942 14594600 14638331 14655611 14660499 14656564 14658576 14628449 14627586 14640755 14616961 14610170 14604376 14666649 14619258 14691036 14677438 14617272 14627491 14657339 14618952 14654929 14693835 14639174 14614032 14634472 14607349 14610613 14618685 14657194 14671105 14644824 14658525 14641587 14615536 14648079 14663404 14621756 14626582 14654310 14634181 14644435 14589332 14596386 14647036 14633827 14614490 14649072 14634277 14674882 14624663 14638544 14665803 14671079 14650666 14692999 14692239 14687280 14661314 14686598 14609978 14646774 14643231 14671085 14665928 14642573 14649905 14698043 14668367 14647427 14688050 14627351 14657024 14634570 14655332 14684012 14670651 14644830 14669371 14704726 14639273 14647196 14668900 14631296 14694553 14616502 14672628 14647103 14626982 14667894 14619369 14686474 14668223 14683794 14663996 14667651 14637635 14709653 14673340 14671332 14663321 14625481 14692080 14650130 14686003 14634223 14690486 14674076 14735234 14681204 14637082 14675031 14652758 14669437 14663808 14642314 14693666 14687356 14673751 14692017 14658995 14645410 14637163 14657284 14641804 14654099 14682823 14664568 14709748 14655436 14660394 14663623 14723389 14694051 14683537 14697049 14676378 14689007 14689074 14644876 14664571 14726271 14675046 14762160 14650686 14654838 14690318 14701479 14699926 14708322 14688579 14720212 14695918 14752981 14658026 14680929 14700583 14715943 14684142 14653579 14716996 14716311 14666826 14674876 14707880 14703892 14693536 14717197 14703698 14718807 14693495 14685605 14727148 14693688 14680666 14673794 14754707 14727624 14725649 14674098 14701492 14693668 14700379 14697878 14723054 14702450 14694083 14667232 14755866 14722775 14712855 14750869 14646977 14704897 14718918 14724738 14738198 14739931 14673887 14716122 14726585 14719291 14734892 14665289 14734173 14691260 14733981 14758054 14723258 14765323 14738242 14701207 14711101 14734907 14731833 14714339 14714846 14746795 14721292 14743224 14723709 14726281 14731965 14702430 14737224 14687230 14727338 14688893 14705731 14750542 14770501 14706711 14734426 14755267 14728214 14736368 14757580 14718817 14739117 14734441 14736399 14743750 14739721 14758433 14718122 14720455 14719199 14730979 14740826 14759924 14730789 14738285 14777948 14726368 14754253 14728333 14732587 14722597 14754143 14747702 14725780 14723847 14729342 14733416 14721388 14735551 14743458 14744482 14718166 14754405 14723478 14739653 14700617 14770768 14735892 14756744 14754772 14746895 14747786 14722404 14797086 14730412 14794881 14742916 14779936 14753492 14748889 14765198 14728089 14748335 14769434 14772092 14750461 14769226 14736492 14732948 14754997 14730208 14715954 14794783 14777355 14748355 14727796 14743060 14771028 14790265 14791659 14769366 14745716 14740717 14717655 14731995 14756278 14763151 14741369 14783281 14804889 14793686 14808947 14787034 14747166 14771796 14819733 14759700 14781590 14760827 14781460 14808822 14800728 14766839 14765231 14794162 14771245 14789954 14787482 14714932 14800823 14798279 14736384 14719618 14775253 14793387 14760992 14765380 14742352 14780418 14738820 14770869 14776314 14706544 14786529 14765307 14792806 14774579 14803319 14785023 14790201 14807227 14737074 14748759 14820483 14781910 14824005 14766517 14784397 14794918 14851762 14778157 14753038 14757567 14761619 14785789 14812037 14807696 14799214 14790452 14778787 14806987 14796953 14799071 14781632 14786492 14831142 14822634 14774204 14818315 14814341 14757371 14769737 14783526 14776491 14834695 14758095 14813004 14773494 14748723 14828325 14789147 14759780 14775609 14799557 14775273 14815610 14812838 14804554 14825264 14805823 14809451 14774231 14807391 14812963 14823617 14798284 14805236 14834867 14807027 14773494 14838203 14823194 14810304 14796948 14855828 14777189 14791016 14833786 14833624 14793587 14877533 14834339 14735349 14750098 14793777 14819636 14793586 14800991 14777561 14823145 14788662 14851041 14788253 14811532 14818484 14768423 14867563 14820669 14873098 14812300 14783810 14798709 14836105 14830684 14805477 14821131 14845228 14809195 14855086 14823182 14816549 14823055 14801678 14870170 14812355 14842179 14864056 14821095 14823371 14824871 14815040 14836185 14828885 14825029 14820526 14813983 14823241 14809289 14886138 14847802 14821638 14870741 14852718 14804293 14875381 14830505 14826021 14813514 14809424 14864772 14860938 14829642 14816235 14842959 14866032 14833884 14834345 14849422 14898496 14869233 14813178 14871200 14833581 14830954 14844650 14800567 14800565 14899024 14839316 14850595 14888305 14853927 14811050 14818797 14840974 14854600 14873757 14857552 14811544 14796978 14894362 14840138 14843235 14862307 14856864 14840049 14840894 14871098 14834306 14844111 14859659 14892817 14850092 14879282 14828688 14877634 14854446 14857334 14868719 14860795 14842735 14849619 14827644 14844589 14856504 14822940 14868384 14903999 14859895 14893956 14871901 14881685 14901463 14859365 14819356 14860479 14836339 14868675 14878272 14871241 14875308 14847112 14893717 14893436 14826114 14853172 14894034 14869985 14853951 14856611 14883799 14892915 14907405 14825610 14817148 14833326 14845263 14887563 14894234 14811424 14868333 14848294 14905928 14933428 14873706 14921106 14852059 14887689 14899960 14860979 14940469 14862783 14849994 14902354 14929470 14845632 14878883 14830613 14861406 14856279 14878053 14861409 14844281 14900673 14888730 14852652 14888561 14860044 14842268 14870834 14875442 14868328 14882557 14884449 14872014 14894847 14899951 14887574 14895900 14914939 14897083 14853612 14851815 14897089 14879384 14866379 14928028 14901967 14882225 14873756 14895532 14926470 14882393 14895665 14858609 14896505 14908099 14888228 14931093 14930070 14917982 14941362 14894608 14904101 14892692 14917457 14949485 14923494 14902467 14928925 14912433 14894475 14892496 14889022 14885770 14894537 14903622 14925092 14906424 14903903 14975197 14905011 14932096 14928075 14904643 14898052 14903802 14933471 14907359 14914180 14916621 14912733 14946037 14864576 14973321 14914230 14890338 14929361 14926511 14925528 14894010 14893997 14908607 14883428 14911224 14906759 14891109 14946076 14882012 14954895 14890946 14914770 14934700 14920618 14899481 14920909 14933382 14890431 14890083 14933834 14883489 14938078 14901113 14950202 14951157 14909940 14932002 14942388 14889749 14942990 14935447 14958309 14942963 14881930 14891425 14915355 14984163 14952828 14960628 14917440 14953112 14923217 14963145 14950103 14970586 14944748 14965888 14946132 14940499 14943349 14936248 14946081 14927591 14958647 14945462 14944081 14973450 14959489 14963114 14955458 14900480 14963459 14948476 14935041 14941515 14975191 14952005 14946229 14903196 14924768 14917944 14948510 14911187 14932086 14991450 14946173 14917779 15001865 14990380 14961574 14966078 14942601 14913045 14948630 14929775 14909487 14967454 14989348 14945122 14907218 14978412 14928698 14966652 14941642 14921126 14948708 14954618 14983519 14965168 14950513 14962248 15010713 14940369 15001975 14865394 14989149 14964422 14949949 14942443 15001707 14951788 14965352 14997689 14959500 14957938 14978649 15010089 14919591 14965835 14958603 14974847 15003891 14949545 14993086 14961149 14919955 14953839 14962498 14946156 14991890 14957900 14983464 14977130 14992347 15020107 14967661 14995912 15014871 14980299 14962938 14954581 14979721 14972671 14950899 14984145 14979827 14982880 15007583 15043870 14975168 14949522 15017088 14977268 14974162 14930456 14976477 14981491 15023343 14963578 15001486 15011481 14989324 14967046 15036270 15030922 14979607 14945104 14976852 15043869 14973612 14987698 15007719 15013811 15005664 14993817 14977561 14962939 15051869 14968936 15012728 15029908 14970150 14994057 14977374 15008295 14982194 15008240 14973283 15000103 14978772 14984819 15001241 14982705 14970476 14986756 14960603 15035935 14996171 15021165 14994534 14960883 15010477 15026836 14995859 15012125 15004780 15026332 14972498 15014878 14973136 14966405 14963380 14983526 15013102 14976614 15004301 14961178 15048529 15047366 15023490 14973693 14981650 14986589 15040201 14988879 15009363 15001179 15007309 15044023 15006689 15013421 15037000 14986032 14975000 15004666 15034413 15020646 15013041 15034209 14995396 15021214 15017218 15030486 14997929 15010143 15011949 15068015 15014019 14993843 14999676 15013688 15015477 15047781 15051086 14998577 14996809 14999888 15058510 15029782 15009909 15024587 15001970 15068354 15024548 15040570 15014844 15035248 15051128 15024803 14984040 14998329 15025277 14977926 15084980 14996767 15061715 15015537 15037212 15021903 15044991 15044336 15007730 15062171 15047814 15049868 15041057 15057348 15032092 15012081 15030059 15046587 15071387 15021540 15041482 15030538 15058072 15020719 15040478 15019049 15026532 15027758 15016108 15036477 15027386 15039548 15021595 15071233 15033123 15067526 15040866 15055111 15056781 15009393 15017013 15079961 15056372 15015307 14994362 15063367 15045321 15067723 15075462 15060590 15053889 15034993 15047387 15039496 15085280 15017224 15025046 15033647 15054437 15055265 15027165 15012704 15005760 15037884 15060585 15022078 15040233 15086478 15059907 15007003 15080705 15102568 15050500 15088330 15051864 15029096 15065143 15055855 15055359 15038568 15037308 15089835 15077319 15011158 15045248 15092116 15071118 15047708 15065163 15087961 15039439 15068954 15032051 15064624 15074955 15065630 15107063 15081551 15031427 15089872 15088253 15057885 15070145 15048936 15072757 15060405 15066034 15002491 15099022 15087201 15066973 15075352 15084785 15041481 15074244 15048023 15084596 15081056 15065075 15154940 15080149 15063502 15102881 15086928 15135990 15094748 15067914 15082867 15050557 15087648 15073216 15041373 15047791 15074768 15092974 15100847 15077002 15074866 15114563 15084501 15095466 15069003 15069382 15100297 15056787 15099495 15073604 15048206 15098024 15137248 15092866 15103840 15100218 15068458 15081411 15074891 15120037 15083964 15061191 15031990 15123746 15117027 15069617 15070361 15092579 15163341 15115787 15076478 15093558 15068284 15073292 15074072 15109136 15121093 15095723 15111786 15083572 15094308 15077543 15112856 15094814 15090783 15111860 15142584 15079631 15088779 15146502 15154736 15092719 15109770 15059535 15079318 15130723 15139161 15036250 15093306 15116332 15100317 15103146 15136885 15132737 15105208 15104963 15097206 15085650 15112625 15088137 15146920 15129411 15126204 15089477 15103094 15120057 15090132 15102356 15132374 15055312 15110477 15084671 15146653 15116156 15084556 15101558 15070135 15042370 15119696 15103150 15124433 15070470 15057315 15106032 15123557 15094625 15121826 15109082 15112949 15168761 15133256 15120216 15141639 15104421 15122336 15129054 15078038 15135998 15121145 15129696 15130845 15130203 15106360 15104866 15155911 15115289 15101566 15162687 15169977 15108249 15103509 15137357 15103182 15145604 15111482 15164317 15132720 15160316 15109202 15149399 15142864 15178068 15163661 15158275 15174020 15144409 15138054 15125098 15150552 15109504 15120925 15198285 15112028 15151209 15132440 15130221 15137607 15104225 15156291 15185797 15117718 15104259 15154446 15147337 15123064 15145890 15111699 15173042 15148867 15169979 15152776 15178447 15180238 15152281 15117058 15153551 15141823 15199799 15149994 15133067 15145543 15096924 15128881 15117806 15128217 15157844 15131488 15202840 15117590 15132120 15151176 15179737 15189968 15127984 15177118 15156087 15146496 15188853 15172225 15146684 15141428 15213203 15135246 15173559 15129449 15150348 15141184 15138608 15185620 15161319 15156102 15211410 15161740 15168650 15174054 15157996 15182311 15136538 15188428 15180382 15150853 15192299 15140563 15171531 15152199 15155056 15219507 15145193 15192271 15182382 15131732 15161498 15192759 15154208 15108109 15188456 15194329 15182658 15196714 15122514 15182451 15143548 15156393 15190590 15206909 15156055 15141188 15161519 15185878 15199506 15160990 15176989 15160604 15177789 15154108 15186599 15195318 15168972 15163502 15208768 15189216 15187411 15211832 15170202 15211103 15213529 15189093 15202347 15195160 15164249 15127828 15172412 15197726 15176101 15181010 15163667 15211807 15161665 15180366 15221424 15194841 15215231 15202024 15157755 15180671 15229635 15165118 15188890 15219461 15171804 15143577 15233853 15204514 15180772 15187770 15206062 15155643 15190934 15166392 15178278 15240474 15226306 15169189 15170843 15219627 15178466 15207885 15192028 15218204 15132744 15185337 15234167 15193275 15252647 15223971 15208333 15185312 15208835 15177302 15215871 15194507 15236167 15215288 15227882 15197263 15165528 15185108 15211363 15225648 15201162 15212438 15218880 15186862 15210443 15213228 15228726 15214027 15173949 15244349 15227400 15216447 15197546 15245460 15240657 15234353 15247992 15242793 15236820 15179726 15203639 15205997 15213878 15217114 15173887 15240527 15215807 15222197 15232624 15233443 15227998 15260780 15217504 15241066 15197404 15184744 15240941 15230057 15209928 15222032 15233177 15222200 15194062 15212342 15204699 15249254 15199409 15208333 15206144 15237901 15243872 15211898 15279732 15256763 15240402 15228980 15245257 15241095 15239109 15235540 15227225 15237612 15224285 15276791 15243285 15232511 15244454 15221969 15262662 15171359 15244376 15243652 15253343 15251953 15249467 15260204 15236357 15272959 15211533 15259554 15232051 15177999 15231667 15222946 15239284 15231275 15253418 15208970 15228580 15240202 15270397 15257780 15235730 15290869 15261951 15296113 15217476 15289846 15277341 15262842 15265281 15244596 15297916 15302853 15237346 15278682 15247373 15262107 15214500 15271100 15291827 15245680 15244048 15298466 15273583 15248555 15297155 15270568 15246961 15221152 15290007 15270978 15264993 15249125 15305510 15302170 15247022 15264396 15255628 15291195 15256824 15266143 15285816 15269815 15256658 15262297 15265186 15232026 15264977 15258006 15272242 15208972 15244334 15289240 15292686 15249503 15249542 15252622 15229256 15242518 15248091 15294713 15266316 15294284 15258036 15283027 15260608 15279826 15302334 15338186 15291146 15257926 15313303 15286847 15294342 15243655 15325790 15286529 15294126 15293967 15317701 15300109 15288042 15263240 15290032 15271416 15258982 15284624 15301451 15301072 15267403 15316337 15249757 15305053 15248281 15260154 15286613 15267135 15252371 15303224 15304917 15303156 15286542 15290177 15279990 15302442 15278244 15287243 15267657 15290475 15331749 15318489 15302144 15274630 15313973 15280145 15296810 15271065 15316295 15265830 15264107 15293462 15313876 15308713 15283653 15278173 15310942 15310121 15296955 15332496 15298953 15335114 15286009 15307343 15326470 15345691 15295934 15316552 15265669 15301340 15311473 15335712 15270652 15298126 15344506 15275996 15336419 15317779 15341002 15314410 15303324 15309689 15260229 15349606 15335074 15295283 15341172 15355301 15345085 15357218 15305947 15314914 15306783 15310400 15287812 15301530 15315111 15335533 15334145 15253762 15351152 15347479 15319484 15310579 15341360 15336284 15323889 15289070 15312417 15335002 15373114 15321361 15300960 15289685 15317631 15370864 15337399 15348823 15277664 15366890 15311476 15332183 15381210 15319010 15330728 15372280 15370949 15315603 15305493 15299672 15385728 15327273 15315429 15330397 15354889 15362601 15365188 15314225 15336652 15333243 15353360 15323145 15367383 15309176 15315856 15355705 15370194 15364070 15380592 15390471 15366679 15324869 15347156 15350294 15371653 15325099 15354982 15325599 15323317 15387595 15309294 15360000 15353982 15376112 15362337 15328275 15328095 15383099 15353341 15346799 15346454 15411296 15331928 15364281 15366171 15340756 15366948 15341493 15349585 15371471 15357372 15379969 15342413 15352273 15349163 15364731 15359712 15401029 15331887 15374897 15381554 15416141 15372677 15372112 15396202 15360814 15381007 15367943 15381738 15343815 15333216 15389598 15376973 15407204 15392803 15357381 15397521 15388692 15373407 15380712 15362195 15407906 15386701 15446134 15384988 15423933 15370927 15367562 15421596 15371390 15323674 15386102 15391571 15383645 15383464 15356127 15358730 15409858 15383624 15402111 15419318 15382369 15381360 15374408 15408880 15351303 15381277 15373119 15404893 15395446 15358001 15409934 15408815 15383055 15343401 15354377 15360369 15452412 15381003 15401567 15374809 15437115 15384661 15402412 15432657 15392770 15373073 15385460 15365126 15419775 15402751 15379748 15403959 15421438 15419535 15385898 15407088 15379503 15402249 15373826 15419575 15394040 15370658 15354241 15411734 15381180 15433742 15339292 15397613 15372141 15433743 15489666 15378736 15397082 15423476 15412678 15426325 15408570 15385568 15384165 15422383 15431773 15464993 15424537 15456491 15481616 15381582 15445005 15384168 15423984 15400236 15409147 15428621 15412975 15434768 15443965 15440663 15409444 15457380 15378084 15438572 15416675 15432840 15425053 15385347 15428949 15416600 15451074 15425267 15400967 15444312 15387405 15462977 15437297 15400190 15426689 15426201 15429220 15452727 15444281 15419481 15431512 15418709 15429444 15446283 15426508 15420029 15442238 15397241 15406338 15413291 15434691 15456262 15455651 15429650 15457373 15427525 15426286 15424022 15461008 15420936 15451524 15496203 15442550 15424423 15480302 15393695 15431383 15419273 15474935 15411790 15475999 15475968 15439780 15410013 15430911 15407350 15444048 15465688 15431218 15491465 15414619 15413879 15471963 15434379 15393121 15478070 15496367 15399122 15432584 15430788 15484724 15388036 15426915 15463112 15477751 15490763 15441773 15458728 15455113 15438768 15446679 15453294 15445623 15454271 15429193 15443164 15408790 15541141 15403608 15483284 15501194 15423544 15497934 15470069 15424853 15454072 15459329 15408020 15460848 15435707 15481546 15397445 15493558 15448605 15474630 15438945 15466136 15459715 15463266 15460969 15454994 15488195 15472028 15468752 15472125 15452736 15517492 15462435 15507866 15468866 15480019 15483867 15482453 15496335 15430408 15489183 15501751 15490525 15525809 15522434 15462614 15451152 15442891 15469858 15517499 15509785 15520016 15451518 15464229 15447127 15521218 15464855 15516212 15452046 15477358 15498969 15473230 15502028 15456171 15493333 15454708 15506499 15459162 15474047 15504794 15462686 15446284 15451673 15499465 15471927 15477109 15476026 15492043 15462465 15450029 15502745 15466833 15474727 15490086 15457899 15523175 15513220 15501596 15460831 15476555 15468797 15453570 15433563 15488322 15461415 15525803 15542807 15483553 15512969 15460101 15526228 15519767 15525267 15479387 15478593 15481147 15470203 15510836 15493037 15503829 15571248 15482430 15492593 15523243 15507255 15491411 15562329 15474779 15522570 15538138 15488745 15468540 15498660 15436567 15543815 15512897 15503733 15501331 15517005 15532272 15526560 15542969 15522443 15504919 15508523 15541632 15523462 15512712 15482375 15493239 15565493 15501438 15528693 15448382 15518428 15490498 15538856 15512864 15527664 15510152 15500345 15519632 15496438 15485416 15510721 15519002 15496847 15501649 15537047 15582740 15515254 15511198 15494939 15527693 15483634 15514801 15535942 15564368 15519227 15577006 15531276 15519700 15476607 15538432 15552717 15522772 15536094 15505752 15495832 15541156 15582412 15566125 15571939 15465155 15535808 15503836 15515116 15567593 15524504 15536567 15541268 15583914 15536018 15539061 15540235 15555910 15557407 15513409 15534358 15561055 15565461 15568513 15513017 15542159 15545743 15540956 15577441 15540556 15531190 15538552 15528335 15557108 15544732 15538009 15533930 15531373 15547085 15542249 15539463 15531791 15529367 15550618 15545804 15525225 15582206 15548250 15542909 15557872 15521425 15591020 15554750 15520907 15508056 15510808 15592101 15589714 15563252 15565469 15564577 15506106 15605069 15541634 15551338 15532430 15498531 15521178 15565537 15562208 15591884 15528463 15526264 15523907 15567154 15559797 15565369 15594406 15618377 15541061 15547901 15563731 15568329 15550552 15561434 15509227 15593470 15586260 15530912 15510605 15558566 15600934 15589204 15563763 15614649 15532687 15596599 15592899 15574976 15574767 15574478 15551633 15593614 15575392 15601357 15566832 15567906 15539701 15562013 15624419 15563516 15615310 15585288 15569481 15589748 15584741 15543406 15585480 15587921 15621839 15564065 15592618 15594564 15580635 15595183 15588816 15575314 15581150 15596946 15599111 15581111 15580776 15565351 15545356 15551238 15548561 15618130 15602072 15534793 15573298 15593319 15581425 15576767 15592104 15558516 15603668 15534925 15606842 15605313 15594575 15579851 15588412 15601208 15595348 15596476 15601962 15633249 15629766 15628027 15624058 15647430 15602473 15596290 15617272 15610655 15585609 15664761 15596722 15648932 15570700 15636840 15620398 15604150 15604039 15627783 15628816 15603317 15606244 15651237 15613213 15617996 15610031 15598781 15645176 15617643 15591502 15605730 15662679 15621522 15626805 15605485 15635126 15589644 15642782 15617456 15613572 15613119 15614518 15616313 15607646 15624474 15653662 15587729 15620738 15601642 15607276 15637792 15609562 15656240 15612017 15646413 15601488 15606057 15643277 15630636 15635895 15625731 15622183 15632448 15610797 15625611 15656410 15592495 15604132 15675538 15606875 15638250 15628354 15638148 15637672 15651130 15697098 15648668 15628255 15582782 15619446 15625008 15661828 15679213 15635778 15596908 15618518 15658387 15633955 15690109 15650948 15646180 15641838 15626058 15639925 15627381 15660217 15637445 15670184 15657321 15619704 15641599 15673551 15638450 15660238 15631089 15651140 15666909 15664106 15633658 15684588 15627917 15624841 15659239 15692370 15676085 15649471 15611543 15676818 15669048 15662821 15694373 15630910 15683629 15611138 15676891 15684286 15634997 15674892 15677121 15671964 15654548 15679369 15671206 15678579 15632028 15605939 15642646 15602505 15653241 15669109 15648739 15667417 15684220 15674142 15669177 15649836 15667762 15687976 15671280 15692284 15633733 15661457 15674228 15657470 15694049 15682070 15667551 15664611 15672464 15660821 15656800 15684707 15709701 15661793 15709400 15697869 15702152 15627230 15675278 15645252 15669804 15660923 15649858 15610587 15687259 15677558 15677299 15665188 15759581 15638975 15641179 15707710 15688973 15634702 15705051 15706739 15697187 15679727 15721929 15640113 15711022 15693146 15693444 15647261 15687576 15678498 15688060 15704928 15650466 15705550 15654225 15727353 15664244 15676892 15703232 15719379 15701878 15705924 15728276 15702074 15700903 15692437 15626516 15700305 15692141 15670208 15704504 15709252 15682544 15707271 15712966 15703550 15655837 15611944 15696506 15730829 15677873 15698962 15666508 15691958 15673968 15748667 15706162 15648281 15758985 15734597 15695968 15691435 15690954 15684662 15668584 15715735 15678151 15701663 15703922 15658602 15696230 15740888 15731969 15734442 15702263 15674822 15711622 15743321 15713043 15681792 15729867 15733952 15795708 15725402 15698853 15698689 15699128 15738896 15728506 15664512 15701600 15695585 15733577 15723410 15712079 15707500 15727374 15729931 15715685 15684199 15770754 15696067 15725414 15728765 15685607 15744993 15738417 15697683 15704221 15731396 15682719 15749701 15702078 15738903 15706680 15684639 15710289 15750835 15715248 15727654 15709898 15739862 15722117 15724714 15729288 15714713 15710677 15767114 15721627 15755667 15753954 15686227 15716649 15728907 15738576 15715663 15778836 15752999 15742951 15719161 15782899 15736974 15738195 15773788 15759131 15706518 15729176 15722710 15772983 15803442 15749623 15761021 15756163 15713136 15743818 15773794 15738119 15740193 15711761 15770915 15729973 15725343 15726400 15717614 15736952 15764055 15754406 15758096 15741476 15758807 15793872 15736746 15778405 15773394 15752000 15752703 15756070 15804322 15819945 15730437 15785650 15785935 15749903 15766649 15720722 15775622 15753778 15746113 15748093 15772019 15713621 15764235 15738064 15763912 15792882 15746528 15790330 15737360 15789234 15774659 15760839 15762423 15788845 15776003 15776107 15742604 15779826 15772859 15730279 15770891 15835837 15750980 15750743 15767825 15825363 15778436 15729938 15770702 15714699 15793406 15745473 15758063 15783689 15755914 15738981 15739129 15809180 15789284 15803385 15778478 15799358 15811253 15759852 15763582 15762247 15762680 15769855 15744096 15831149 15790817 15762104 15787305 15755443 15751658 15807822 15758877 15833262 15804487 15781353 15828691 15755153 15776911 15821173 15778669 15774407 15784680 15802039 15818114 15786138 15788125 15804569 15761467 15843446 15809246 15810603 15809779 15808256 15788369 15812491 15810661 15752688 15798040 15838470 15828444 15797355 15742778 15787196 15828998 15789306 15789412 15802676 15816221 15763628 15830509 15760657 15768390 15804599 15809605 15840787 15837584 15797134 15788913 15800708 15830597 15785095 15800078 15814362 15799706 15799461 15794431 15796767 15834664 15787773 15845816 15815094 15772699 15856890 15784049 15845826 15821115 15826672 15840933 15828179 15825539 15827977 15778913 15827357 15792234 15834165 15816977 15815494 15846181 15835027 15820686 15818406 15803616 15833532 15886460 15843332 15796353 15834844 15818668 15787282 15849838 15798347 15803069 15846682 15822580 15845550 15865253 15834393 15850968 15810156 15840155 15802607 15789287 15845953 15817490 15826925 15815654 15854716 15844675 15847728 15841664 15861972 15825775 15815918 15837318 15829936 15837508 15856398 15823484 15835008 15841885 15819091 15838398 15816966 15848005 15797955 15827621 15825674 15821576 15831276 15857537 15832381 15844784 15840353 15876903 15829538 15827740 15871808 15852275 15804076 15807218 15879566 15875574 15833204 15838898 15832284 15846573 15818409 15862857 15829370 15841692 15843111 15831824 15798024 15806101 15822768 15845480 15818314 15818634 15844269 15849920 15869230 15815568 15913279 15850697 15828511 15855062 15811963 15840698 15852421 15850473 15876882 15914400 15902803 15869825 15859095 15899535 15838735 15867627 15863976 15874899 15910253 15855419 15836254 15913847 15899393 15856011 15851141 15818765 15852646 15875588 15878299 15852132 15901996 15898895 15877133 15825799 15863617 15894691 15869662 15881717 15823534 15850463 15849331 15840123 15885275 15865642 15887420 15868318 15860868 15873287 15875694 15838100 15936511 15840753 15842206 15864928 15869305 15835745 15904114 15899174 15872599 15885080 15870029 15920814 15872142 15886330 15796938 15869216 15889173 15883860 15898401 15861336 15877432 15915932 15842432 15867741 15857107 15909316 15901470 15892544 15859074 15853135 15927219 15892671 15876132 15929697 15869220 15916827 15904902 15863618 15899426 15853999 15883409 15915753 15904634 15866490 15864517 15884583 15878460 15863962 15904442 15867290 15931037 15845538 15930652 15905033 15864094 15915022 15893825 15937086 15931661 15917003 15926189 15899711 15862306 15912392 15938883 15881671 15912816 15923330 15919297 15880270 15885614 15895573 15956771 15880215 15921443 15856432 15923878 15946440 15902389 15953815 15919753 15879150 15945873 15917365 15927890 15922467 15920730 15903219 15932161 15892080 15881110 15931572 15924231 15912783 15896545 15913154 15912644 15958993 15924487 15923723 15910314 15895103 15938896 15935198 15926260 15912815 15940851 15949524 15906210 15922243 15911152 15928293 15891890 15911708 15923842 15937175 15923613 15886317 15955072 15910276 15902962 15949130 15943602 15937714 15928653 15896844 15928553 15943920 15922471 15892012 15953466 15938126 15927025 15916651 15937485 15940982 15934097 15880475 15966411 15955054 15924018 15882147 15968827 15931222 15942404 15925088 15958925 15937904 15958867 15979463 15955400 15913624 15955175 15921267 15940526 15905637 15936419 15996254 15917695 15928953 15883801 15946618 15919125 15908677 15917289 15938695 15968286 15961616 15950146 15920378 15965920 15990547 15966769 15945966 15941841 15959776 15970175 15983367 15961955 15905793 15987070 15947326 15976330 15920477 15985617 15976282 15942879 15928977 15974327 15975473 15948401 15919985 15936111 15939957 15925079 15878002 15978655 15981519 15949108 15945018 15919120 15955904 15966821 15979153 15987305 15967348 15894956 15935891 15932896 15944108 15974103 15952902 15907625 15968015 15981629 15953410 15895014 15963018 15972759 15950484 15950533 15983588 15941031 15953232 15921743 15982306 15983884 15991720 15971022 15966997 15981979 15960928 15940612 16012361 15976335 16001427 15991511 15999192 15957508 15968424 15956647 15944165 16016069 15968949 15969565 15920485 15989344 15948852 15987076 15961713 15975277 16012245 15975900 15961082 15931680 15928356 15998997 15977907 15948757 16021753 16058320 16015360 15987767 15998874 15974009 16012594 15967946 16034993 15978004 15954280 15991449 16036840 16018431 15957526 15991120 15955226 15966093 15996384 15996867 15970903 15976906 15973234 16026183 15992819 16011159 15992428 16012482 15995068 15995560 16007604 15995312 16019378 16009010 16024691 15995596 16001301 16002506 15963881 16009655 16050329 15976656 15992302 16007595 16015998 16027142 15995920 15991080 16022727 16008653 16007681 16070335 15995361 15992238 16012629 16020970 16017620 15986642 15935310 15984741 15983148 16041272 16045267 16041775 16001114 16037081 15988238 15999936 15987348 15993924 16045310 16012833 16008865 15999638 15998626 16018558 16059692 16007020 16051821 16012977 16013631 16032940 16032181 16002693 16008576 16040316 16009474 16027024 16044920 16001393 16015361 16071763 16066366 16028123 16016098 16016013 16069649 16065958 16032951 16031192 16031577 15995268 16017526 16029683 15967727 15991319 16082495 16037479 15996820 16029942 16061716 16073501 16016043 16037441 16008611 16016031 16042940 16051272 16001295 16005088 16037196 16031777 16041601 16065481 16027479 16028480 16051782 16001213 16020998 15996406 16023269 15974178 16060725 15998030 16101755 16022732 16038550 16031542 16027705 16034794 16050389 16069572 16007743 16022126 16047531 16023895 16047623 16045215 16074136 16045579 16090641 16045559 15999153 16031867 16068603 16090794 16041817 16035514 16127794 16072875 16068413 16057510 16005226 16136930 16058206 16104729 16040741 16031681 16058528 16048242 15994335 15999802 16042685 16063639 15998644 16029411 16053974 16023635 15991395 16043411 16051946 16078122 16007296 16081182 16002087 16101748 16060264 16060705 16102970 16071381 16026826 16032348 16018825 16069162 16062514 16136884 16086615 16077482 16057134 16060840 16105583 16051491 16057486 16068195 16090852 16102876 16054887 16111532 16085853 16087167 15999898 16079890 16055100 16108487 16115465 16076079 16054082 16080391 16146380 16093283 16075308 16063703 16095710 16042804 16076518 16070554 16112998 16072195 16059951 16064076 16072972 16100619 16046601 16103251 16108197 16063601 16062392 16116592 16051199 16041187 16081907 16117734 16070940 16053672 16099397 16074419 16090131 16100702 16113797 16080039 16065960 16094087 16108804 16099886 16110007 16113023 16094393 16099495 16055867 16100447 16118038 16097307 16165994 16100673 16052956 16084897 16050357 16119522 16091673 16130262 16116160 16123714 16128308 16098102 16139384 16148302 16143133 16075690 16075061 16079414 16085460 16103557 16158529 16086889 16118759 16111439 16091425 16140107 16105105 16133334 16096207 16119755 16140717 16137076 16111928 16045974 16120858 16116912 16104440 16098264 16138140 16132423 16160140 16091026 16126648 16122137 16128688 16104335 16108802 16132018 16128955 16134453 16135825 16157511 16127059 16139209 16139883 16118417 16105859 16127730 16128581 16120646 16088371 16149202 16147859 16092731 16093823 16088387 16085349 16167775 16143293 16050063 16108556 16150024 16130227 16101056 16158286 16125484 16112058 16092948 16107180 16102330 16185848 16083629 16152168 16155419 16093820 16083568 16160403 16118061 16146991 16074138 16160318 16151523 16131253 16176871 16144952 16177890 16113269 16114085 16193217 16132377 16160340 16152643 16128456 16148358 16159766 16153395 16134133 16124636 16130841 16161481 16180017 16141577 16140805 16135001 16181572 16148393 16152658 16151670 16091163 16118823 16169178 16135063 16126557 16162782 16174014 16146584 16148524 16201451 16133904 16153876 16181337 16160895 16142577 16137386 16215807 16176166 16165284 16127024 16117425 16213385 16202394 16179025 16205397 16175214 16169725 16166365 16200403 16134148 16121739 16121923 16140744 16186499 16150401 16182728 16190769 16194490 16174771 16190180 16203298 16143556 16173344 16200568 16149008 16163412 16157870 16142507 16172570 16100743 16152150 16151187 16173888 16164216 16143123 16148693 16165925 16164919 16191412 16242693 16196186 16173450 16169083 16157747 16172022 16155135 16171241 16175985 16190280 16159937 16205949 16192188 16170140 16159540 16202814 16211951 16163142 16110779 16229498 16188545 16211286 16221786 16174860 16206842 16190983 16210197 16173883 16136049 16164338 16161717 16191524 16166777 16176282 16187154 16170956 16208657 16190197 16190010 16210936 16222197 16179230 16216109 16162332 16168360 16173599 16172720 16213873 16183789 16209995 16194255 16138700 16182380 16229780 16206268 16193941 16189964 16231573 16217000 16220526 16219581 16199897 16207978 16238221 16207692 16173685 16211412 16247321 16177951 16202834 16202482 16222547 16193893 16225291 16143910 16207265 16207847 16183286 16194929 16248750 16210507 16211624 16238825 16187710 16257324 16232253 16240235 16194473 16222778 16195031 16223076 16202288 16211163 16249458 16208437 16236915 16211235 16199438 16201404 16239271 16220553 16216501 16219536 16227750 16206919 16206500 16182173 16199026 16201344 16219916 16209424 16215987 16238244 16251707 16260921 16223687 16215214 16184468 16203609 16183177 16220504 16246922 16196149 16199739 16219968 16244148 16207559 16221416 16217286 16264176 16239645 16197623 16184346 16242908 16184005 16210943 16234556 16233749 16258985 16253325 16225100 16266857 16222125 16186080 16219345 16237685 16278736 16211455 16238967 16275580 16276511 16240481 16215784 16263908 16227240 16258093 16218327 16257021 16216583 16263406 16238017 16199398 16207707 16218812 16192208 16223736 16202211 16253571 16176118 16267858 16197253 16279151 16232276 16280580 16247507 16248302 16262850 16244163 16271211 16226399 16279905 16274631 16238425 16240725 16222427 16217461 16248104 16249105 16253773 16230320 16261147 16265223 16240612 16264157 16289494 16258601 16214397 16223817 16238877 16219433 16250368 16203522 16305975 16239766 16223502 16281672 16257234 16241702 16251265 16281645 16230776 16284514 16220893 16271604 16292308 16202480 16267776 16254380 16308849 16279668 16255247 16264196 16295104 16263422 16310110 16297957 16262566 16256356 16257564 16276463 16267526 16253579 16222360 16295239 16241668 16276405 16274803 16302986 16244253 16254562 16271602 16244051 16242218 16219903 16286343 16273501 16279911 16261219 16276844 16285691 16273825 16255906 16268678 16282597 16289250 16273177 16298045 16318597 16257633 16321006 16255341 16263077 16317304 16295907 16282082 16311298 16309415 16221870 16273065 16284052 16292849 16262808 16282831 16275562 16264865 16307616 16298935 16286295 16268540 16302836 16321046 16295901 16306292 16271062 16261343 16322880 16314592 16254542 16348287 16295692 16307838 16302419 16273778 16265154 16325606 16320922 16312924 16258084 16371276 16261504 16287321 16240940 16308320 16291206 16300351 16306122 16319604 16280805 16285100 16313464 16347538 16324796 16314814 16318304 16337149 16356838 16284705 16287629 16311805 16333765 16312841 16336880 16309751 16363276 16334016 16344809 16288151 16290909 16290879 16315692 16302789 16281570 16311813 16319644 16357247 16358561 16350484 16308619 16269497 16318687 16361435 16349293 16319168 16313051 16357184 16339343 16314284 16304407 16317861 16317347 16334009 16299455 16301677 16320138 16316267 16354918 16333570 16307461 16387078 16308032 16273152 16356401 16340289 16336032 16291094 16356481 16300925 16336070 16329277 16344744 16320875 16350345 16325912 16346727 16314432 16390657 16326085 16321141 16345840 16339449 16355342 16353983 16344099 16342800 16386307 16370203 16423222 16355660 16370641 16331579 16307301 16391515 16291936 16316831 16355083 16364075 16363628 16360203 16330719 16319909 16341513 16343757 16360763 16353006 16313260 16397153 16390883 16344312 16340955 16369397 16364801 16341195 16334058 16327568 16327402 16366941 16321891 16353218 16344326 16349541 16341113 16368382 16303136 16375414 16309589 16363954 16361284 16374090 16375650 16413698 16397293 16330560 16326726 16389190 16375502 16364437 16354442 16341298 16337268 16366869 16384646 16339236 16342411 16359804 16343647 16379713 16352979 16347724 16379114 16412785 16345403 16375170 16342663 16356516 16368678 16387898 16382051 16368404 16362993 16377928 16333963 16370303 16395503 16380436 16381380 16307932 16385637 16364989 16364604 16394067 16380360 16392975 16388606 16336738 16354743 16318937 16355879 16390516 16338834 16321929 16353087 16359266 16349745 16397529 16361794 16364413 16351465 16391221 16374785 16331583 16381269 16393129 16352647 16358743 16427242 16446751 16410583 16386129 16379172 16374940 16361328 16375543 16419226 16377527 16415428 16376578 16407453 16370157 16346012 16385430 16412599 16399851 16362517 16389565 16367970 16361164 16375388 16413907 16367341 16440899 16407128 16432587 16425757 16362886 16384332 16365668 16391817 16423836 16344826 16445965 16377785 16373870 16364073 16387559 16390432 16374365 16407688 16426373 16403741 16429119 16387465 16433139 16407482 16383239 16386516 16391536 16356914 16411746 16443649 16417498 16377619 16414552 16445712 16409048 16441572 16403489 16415209 16431726 16383619 16396111 16431516 16468919 16416850 16409080 16398808 16415829 16417048 16407546 16393917 16434128 16454824 16492129 16429488 16426299 16403332 16437848 16397263 16400380 16422410 16423865 16391205 16407876 16403765 16446290 16418055 16402569 16396532 16394977 16419894 16389014 16425125 16433066 16441244 16469544 16453562 16412726 16408497 16437872 16409098 16438874 16427669 16404692 16422265 16391126 16458643 16440186 16412518 16416447 16405041 16449311 16377810 16461066 16417067 16486024 16453583 16442481 16492945 16402231 16460326 16458778 16440437 16403072 16420717 16443481 16405041 16434866 16457601 16415723 16482019 16424056 16411932 16418191 16474259 16434922 16447676 16501779 16427667 16474592 16461219 16493030 16422810 16464059 16458106 16401259 16447367 16483370 16438719 16428472 16473853 16436024 16457266 16467676 16464673 16429659 16435341 16455289 16449082 16456377 16395343 16419620 16437656 16429233 16427775 16464629 16405156 16502543 16492990 16463678 16462748 16448266 16444166 16497576 16442548 16446410 16472562 16465806 16495194 16479696 16431123 16450184 16475756 16427086 16480211 16527757 16475715 16508481 16462580 16433706 16428728 16530807 16496312 16471719 16420508 16464080 16459008 16432067 16428291 16479728 16447442 16468340 16448042 16437253 16464862 16521372 16509737 16515183 16437876 16469078 16480591 16536809 16515091 16519398 16528438 16509186 16448882 16533864 16506512 16441691 16445385 16516745 16463418 16472902 16458066 16505469 16493968 16519078 16508655 16459086 16456209 16464052 16519633 16481782 16467117 16483401 16490295 16532298 16465046 16452143 16524343 16503029 16428747 16476132 16498108 16459347 16491055 16539123 16453198 16494081 16496191 16468515 16518079 16465675 16506874 16506310 16475737 16531304 16497182 16500673 16495912 16482277 16506323 16515631 16504988 16468528 16527134 16519841 16494201 16506759 16523532 16483148 16485894 16508234 16500089 16495236 16461592 16524418 16520644 16572111 16488899 16480759 16522977 16448505 16494169 16543587 16479185 16502994 16540761 16484927 16500071 16493581 16520438 16522774 16479061 16524630 16481456 16521925 16464701 16480232 16537772 16518663 16490467 16505501 16526806 16580017 16558096 16550580 16513945 16519248 16517232 16543721 16515321 16543546 16507844 16508664 16484327 16527627 16554957 16522492 16583670 16495212 16538595 16563544 16499865 16507602 16529902 16519150 16582047 16508394 16512685 16507819 16502897 16495679 16553244 16478575 16527345 16621909 16525257 16527800 16554739 16523295 16568289 16514290 16531780 16474451 16533595 16568279 16559525 16511800 16540738 16549319 16546961 16569374 16504617 16531205 16548414 16526179 16500816 16562170 16526045 16552781 16561750 16579036 16481451 16564990 16560085 16516370 16535600 16568385 16563972 16585351 16571064 16519397 16499878 16571575 16568859 16572732 16553423 16535291 16565885 16514021 16539618 16491213 16553372 16559025 16552588 16571279 16583311 16519555 16540514 16566028 16527881 16564867 16535456 16539332 16552617 16524367 16555913 16569245 16535036 16573013 16540704 16546436 16589049 16584296 16533883 16587616 16512624 16524665 16590916 16539977 16588481 16584043 16535853 16590541 16565310 16631885 16496555 16557835 16542603 16576850 16572736 16585882 16572043 16561894 16586108 16573892 16594068 16534844 16553967 16497102 16593920 16535854 16572215 16567981 16568504 16589734 16551668 16531238 16556229 16532698 16528024 16561027 16583506 16592595 16555549 16602033 16560687 16581811 16525263 16580256 16588310 16563653 16575542 16570790 16560141 16568163 16572001 16555729 16589635 16577956 16586986 16550959 16564921 16563933 16553280 16571765 16563924 16622188 16663994 16551317 16529045 16613232 16612964 16579178 16569139 16593954 16574382 16609747 16580611 16597246 16596945 16580527 16643911 16592515 16599451 16608491 16622045 16614122 16593836 16591533 16592185 16578189 16569125 16592450 16590240 16617090 16602226 16602250 16598455 16608657 16590453 16567022 16621707 16563669 16598627 16615790 16595902 16590733 16633604 16582860 16625700 16631103 16611838 16600697 16622308 16606590 16628500 16615249 16657193 16565304 16624716 16579772 16581129 16627689 16595087 16644968 16575871 16603775 16607260 16561455 16613063 16595572 16571507 16623097 16588932 16618017 16543309 16636303 16599987 16572819 16591140 16617880 16625402 16637401 16641579 16601633 16617924 16666738 16599935 16605542 16617867 16624182 16644992 16616833 16650064 16603649 16603564 16610365 16647737 16677194 16607572 16582552 16607116 16584960 16647586 16633213 16666162 16613219 16659088 16672238 16655264 16633099 16644904 16656979 16629375 16673317 16623577 16619702 16628867 16599133 16617694 16652092 16632836 16607512 16665142 16638225 16629643 16600845 16651397 16654049 16568149 16693238 16638909 16642737 16654164 16636836 16669426 16668909 16616678 16619469 16660698 16656621 16667029 16646449 16644322 16648356 16609401 16656862 16634307 16673961 16661864 16632727 16617105 16622022 16676737 16653953 16662965 16643715 16687056 16678264 16676541 16622402 16678707 16642628 16676241 16670681 16619097 16634705 16593300 16668404 16654874 16653633 16664919 16659658 16625203 16602269 16677188 16648472 16679144 16644553 16699318 16609257 16663591 16666824 16642260 16691485 16704705 16665175 16655946 16630695 16683839 16658723 16663901 16685306 16638651 16692346 16687337 16691390 16673751 16718634 16638202 16746157 16704713 16675882 16667366 16648156 16672111 16663209 16705306 16661491 16665462 16622572 16633372 16709433 16632364 16668294 16665607 16701246 16736140 16697237 16675923 16699697 16672615 16619336 16678549 16663630 16663011 16637849 16670336 16670751 16641660 16683336 16713335 16656614 16697661 16691930 16687155 16667817 16666391 16695635 16679716 16654564 16676002 16674779 16693005 16627744 16674811 16674783 16680358 16690920 16636101 16689710 16676196 16702623 16703351 16700136 16701170 16659048 16700747 16706032 16738412 16639663 16698237 16697684 16664276 16700137 16676495 16687853 16681394 16716509 16775818 16694015 16705090 16709815 16683419 16676905 16676266 16727758 16667861 16738406 16695446 16709394 16725084 16689974 16687216 16728855 16715221 16710236 16680767 16699776 16683497 16728473 16772147 16697406 16706551 16705674 16657695 16688602 16725726 16735651 16711906 16702320 16719961 16724215 16714818 16699542 16768932 16709883 16752543 16687689 16677076 16726642 16725447 16733211 16695002 16665281 16762490 16803215 16711502 16744741 16734244 16725756 16703436 16746639 16694768 16750565 16677031 16783297 16709371 16723768 16754450 16728232 16717879 16717716 16751896 16714543 16747501 16740774 16723797 16743559 16782974 16697463 16753219 16747354 16758503 16727301 16686763 16722034 16701313 16732874 16721626 16731691 16749641 16739861 16680538 16729981 16743646 16772714 16747314 16672989 16776056 16721066 16768887 16728606 16770195 16729681 16702289 16716831 16776496 16750045 16712731 16709055 16739937 16717781 16672758 16728903 16715059 16752225 16746026 16752199 16767474 16738096 16777104 16745584 16712591 16722628 16758895 16773501 16743382 16711732 16728038 16753367 16742943 16721659 16769392 16769250 16715649 16747149 16719944 16745761 16751770 16786674 16780008 16755680 16732289 16754177 16737484 16725031 16753530 16721605 16778180 16741182 16705066 16762941 16794432 16744133 16818097 16723890 16786053 16758812 16789991 16809468 16772980 16794221 16782747 16721991 16805378 16778691 16788478 16760306 16796767 16771843 16776684 16765733 16775641 16774113 16799597 16741528 16774720 16761520 16770964 16788841 16771489 16754100 16749463 16729684 16807077 16785951 16767778 16811785 16758851 16766899 16763103 16791307 16729624 16736298 16746842 16726043 16782024 16806712 16722906 16749620 16805255 16774854 16755084 16761391 16763993 16752423 16790549 16790504 16774822 16796263 16745025 16780718 16770389 16779642 16760195 16802524 16834310 16732478 16773933 16790138 16790063 16765962 16794018 16755439 16769679 16817862 16823680 16802700 16752343 16829819 16779289 16829465 16762247 16762708 16767526 16800595 16828535 16782575 16811901 16790109 16764082 16844856 16758285 16812628 16799502 16830071 16813245 16768028 16791484 16740595 16773245 16797908 16807274 16773416 16800975 16742601 16739589 16777086 16807935 16766322 16781420 16786241 16767236 16817197 16857618 16816641 16777352 16816809 16792047 16807933 16825591 16776035 16798542 16814921 16784663 16780182 16796101 16823962 16832350 16814794 16804665 16780446 16804858 16816396 16790584 16791098 16837080 16778759 16798428 16800564 16759859 16796985 16825091 16827740 16808536 16806824 16881818 16771081 16780561 16815312 16831429 16834407 16828944 16815966 16845828 16829104 16798502 16825903 16805004 16828773 16843142 16786856 16798002 16827865 16815039 16823626 16814569 16818759 16844763 16835144 16823820 16834061 16818251 16812228 16869248 16805749 16883755 16862438 16862276 16808067 16790808 16840173 16866762 16811892 16801299 16831003 16841260 16795657 16834910 16790959 16798049 16856668 16846851 16806022 16822551 16871480 16817358 16891368 16852103 16824312 16846888 16829903 16829210 16811227 16827623 16818412 16859670 16851434 16807723 16851876 16845381 16910161 16861667 16813626 16859996 16799703 16825699 16857349 16880322 16840422 16853531 16842155 16868710 16838454 16869013 16863916 16829951 16818203 16916098 16859646 16886272 16893474 16860367 16848555 16894370 16879083 16893047 16854400 16846336 16848597 16828489 16872564 16824657 16894131 16878678 16827764 16879591 16856181 16853000 16842335 16852591 16842117 16868545 16836984 16839055 16888874 16891236 16832246 16895762 16877708 16884694 16828724 16848991 16845863 16878981 16857538 16837321 16840295 16890427 16806683 16856196 16854419 16863423 16908563 16836940 16874054 16879407 16892264 16872247 16897026 16891895 16879440 16890141 16874428 16898853 16851024 16889619 16856850 16853172 16888253 16904567 16808267 16868669 16934420 16853616 16877861 16871742 16914446 16876771 16874249 16915422 16882760 16891296 16894329 16871315 16894513 16882932 16899056 16928596 16840900 16859913 16866001 16888843 16896614 16916637 16892170 16858374 16905994 16857443 16929471 16880868 16938612 16877533 16912128 16904142 16912140 16877516 16905064 16916829 16880380 16948732 16868309 16936600 16928437 16855529 16915770 16935841 16888805 16849153 16901539 16907487 16875418 16920322 16860126 16895985 16923165 16883209 16900458 16914796 16848770 16880180 16888304 16940840 16890160 16897690 16870179 16905832 16902375 16894836 16934865 16951607 16878296 16930617 16902243 16898978 16883732 16905233 16901821 16887295 16884045 16890864 16914357 16874759 16943642 16944767 16892300 16880110 16891519 16897132 16932741 16941945 16912650 16923468 16898825 16962563 16883738 16880954 16901836 16918863 16966039 16928682 16893055 16895033 16875263 16934450 16937095 16927903 16945753 16891768 16924180 16930617 16923422 16936548 16948093 16936837 16940943 16903223 16925429 16906719 16878338 16899305 16911818 16901131 16939369 16900543 16933698 16983376 16903855 16963747 16980706 16957408 16933545 16940133 16914534 16924535 16924136 16926745 16950956 16884671 16982340 16950481 16938582 16931547 16919210 16928698 16954329 17012005 16931173 16923672 16965615 16956060 16944117 16950637 16975174 16907957 16936955 16913103 16954889 16939075 16924180 16901545 16973254 16927647 16980551 16899115 16897903 16933177 16986049 16985286 16969953 16943424 16931368 16932432 16947068 16935773 16911752 16944246 16999574 16944154 16939156 16958762 16976666 16990603 16949362 16988299 16945721 16942424 16937981 16950204 16953908 16995892 16987867 16998288 16969641 16940794 16949735 16960296 16952665 16932197 16962862 16976120 16997137 16983883 16938313 17008570 16928765 16952760 16975771 16962315 16988182 16983161 16904729 16972227 16950051 16960285 16960842 16984795 16961993 16984530 16977517 16971919 16982965 16992306 16975672 16930520 17036217 17010374 16963950 16991224 16986363 16957011 16973708 16938794 16963172 16978728 16924287 16999413 16964948 16977109 16986123 16960313 16984119 16963214 16987188 17025481 17018709 16970086 17018939 16985563 16989578 16989612 17023588 16967204 16997574 17008766 16996960 16997195 16945664 17000172 16985425 17005726 17015303 16976083 16990180 17012684 17010829 16942566 17016363 16962693 16994025 17018498 16994833 16952924 17007993 16932920 16944278 17070713 16983371 16986864 16962694 16978241 16980889 17014106 16938424 17054481 17008855 16992152 16976637 17006873 17013052 16955427 16985963 17031383 17046846 16978078 16990359 17012752 17005907 16990831 17013559 17027890 17014533 17027623 17008593 17028846 17013598 17014344 17004929 17069206 17049530 17007638 16999320 17044711 17023439 16963008 17016623 16989458 17033489 17009680 17037406 16997367 17001133 17036924 16981060 17065071 16991461 17006454 17032756 17050120 16975909 17031779 17023263 17022340 17059744 17063767 17033582 17032781 17008402 17067017 17043728 17043725 16986168 17019480 17052385 17004078 17004985 17065582 16976686 17075181 17020006 17028521 17017291 17001183 17056891 17022113 16999875 17038053 17080245 17055430 16977436 17055983 17035739 17028410 17046916 17083249 17041545 17022963 17054140 17009118 17070738 17055559 17007933 17060782 17018483 17026868 17083346 17058794 17027262 17065830 17089235 17057785 17043837 17034668 17067275 17052000 17037337 17042819 17058593 17077184 17054648 17075989 17064569 17072693 17045635 17039307 17064368 17032755 17074157 16983297 17013066 17037935 17070822 17104907 17032462 17032297 16990104 17077110 17035495 17103985 17024986 17021987 17073924 17052178 17024497 17033890 16997906 17043097 17066431 17077373 17056432 17043683 17075449 17002242 17058277 17070051 17095813 17042441 17076148 17045746 17069403 17027167 17074093 17052818 17031725 17064501 17081867 17109016 17024443 17073331 17063063 17098290 17093743 17099379 17038923 17079299 17079218 17056826 17047456 17077078 17097831 17054264 16990875 17058968 17066718 17093883 17074122 17108506 17087160 17068494 17062144 17090045 17090875 17059209 17071713 17065743 17039585 17034665 17044494 17065322 17062997 17093020 17137054 17087622 17099008 17035363 17143039 17091687 17084557 17073824 17068098 17089884 17036433 17050514 17088076 17118297 17126605 17031921 17154204 17069705 17049418 17000332 17100083 17068012 17051736 17148173 17104340 17094270 17107402 17052579 17100860 17121019 17071966 17085268 17128024 17128245 17064743 17098221 17106698 17097706 17129728 17089993 17078318 17077137 17085381 17141544 17044661 17051281 17072212 17097415 17111297 17081169 17123990 17100629 17065471 17104829 17075253 17075484 17076981 17086716 17085294 17105882 17112294 17099211 17123716 17175800 17139353 17073640 17065778 17073690 17134401 17099168 17087511 17127615 17116679 17089127 17101394 17073385 17103644 17084763 17086864 17105833 17123848 17140984 17128396 17077575 17127981 17097227 17099850 17080271 17078521 17122552 17082196 17110625 17107033 17149778 17135238 17132465 17134039 17141291 17144903 17083731 17076879 17123055 17115037 17118643 17082002 17119269 17094220 17161509 17154205 17125405 17079474 17144874 17147836 17189520 17112939 17142806 17117194 17116474 17115473 17104337 17143833 17161865 17149813 17110702 17111529 17126822 17151543 17079210 17138463 17120356 17082583 17192471 17074427 17126439 17161222 17165882 17115053 17109409 17126448 17181791 17139069 17138960 17111774 17164212 17136443 17126849 17144984 17135823 17142194 17124535 17178536 17163014 17151879 17098513 17128753 17104592 17200418 17057958 17125400 17142982 17185308 17093590 17121568 17125674 17150195 17174030 17115523 17135227 17183977 17147029 17139620 17110143 17139858 17151829 17159024 17197443 17166775 17169067 17159137 17171973 17151313 17126569 17175560 17145271 17171435 17197942 17178922 17118525 17180301 17159533 17173735 17128172 17202610 17133661 17162121 17193108 17144899 17126055 17155622 17160550 17183127 17184500 17171250 17222212 17122315 17154622 17149195 17187390 17117769 17149299 17203545 17154142 17166439 17146895 17159126 17139325 17169663 17165130 17192943 17191155 17193909 17159630 17174970 17148977 17143543 17204355 17159793 17134964 17217505 17179762 17208425 17140613 17180857 17162670 17164964 17263210 17181828 17147285 17179140 17207115 17157420 17152910 17136591 17192311 17164961 17176476 17200389 17190910 17193013 17154531 17198182 17210965 17235995 17189178 17140129 17200506 17195192 17179229 17207643 17225235 17206935 17240255 17236009 17178314 17244156 17219860 17134579 17191583 17233773 17189634 17158843 17214538 17228680 17196207 17205342 17201875 17183081 17192345 17212357 17158722 17197766 17181304 17216382 17157749 17166375 17214410 17243663 17220954 17194531 17167383 17241260 17216354 17195821 17233145 17215183 17189403 17184373 17210498 17205905 17182267 17215214 17189338 17255263 17224112 17185384 17268507 17242340 17211350 17203861 17187631 17243204 17208532 17251952 17224378 17156832 17260849 17182217 17192239 17174376 17183851 17240048 17159474 17236267 17215402 17248380 17214374 17201522 17206050 17237392 17233171 17245335 17234614 17200288 17225005 17178108 17216077 17237033 17241535 17208859 17295357 17251178 17239366 17256694 17219879 17254384 17245925 17214024 17281750 17242848 17177715 17197535 17225912 17223600 17187009 17218666 17221656 17228117 17219474 17233234 17213311 17225492 17217747 17284003 17264858 17233399 17227347 17164782 17267796 17222479 17223254 17228923 17245710 17213396 17275930 17230656 17229383 17254276 17270058 17228837 17256689 17223208 17237255 17234780 17291592 17271279 17221579 17235557 17168752 17237245 17299256 17211012 17210938 17268255 17247695 17262981 17293052 17265951 17269263 17238231 17234879 17277406 17257822 17306559 17230571 17265386 17247051 17280082 17275146 17263117 17227518 17225467 17266990 17282557 17260295 17241372 17243264 17261645 17226306 17287288 17264739 17269415 17274055 17271644 17228670 17283876 17300731 17247849 17243882 17246381 17256517 17301301 17280740 17245325 17246034 17283500 17250462 17279436 17210277 17284068 17267406 17269145 17282384 17260998 17311677 17272682 17288287 17246874 17313296 17296398 17297023 17240010 17196909 17276267 17224124 17256112 17284092 17336240 17322293 17258674 17273693 17276501 17248905 17231913 17297552 17234191 17348060 17267730 17328432 17299412 17262119 17344769 17240035 17322675 17291595 17303123 17291584 17296614 17294841 17327467 17304231 17281705 17313551 17268074 17229914 17305985 17317256 17321631 17304150 17282804 17261636 17294224 17315388 17296862 17253515 17344797 17267301 17250021 17302714 17349919 17302093 17318126 17330596 17299531 17280132 17315050 17310633 17282217 17293115 17328801 17294942 17325689 17329899 17278868 17333031 17290598 17309637 17303749 17304909 17321768 17296888 17340101 17299434 17317903 17360662 17285159 17290157 17246870 17344896 17339036 17273156 17299908 17301383 17344384 17305585 17386362 17290888 17259866 17302886 17351247 17329658 17284596 17274414 17334935 17280408 17286169 17334819 17341618 17314580 17322973 17340863 17376230 17282987 17322653 17290942 17331553 17322181 17273101 17324972 17369852 17273315 17349138 17382812 17378648 17300020 17323711 17295416 17299165 17306364 17350155 17356466 17331987 17346611 17300749 17316203 17364439 17312815 17370439 17326059 17293394 17354273 17273597 17315596 17334493 17317601 17376005 17330083 17328992 17336030 17322356 17353605 17301496 17353156 17297438 17322931 17362266 17319057 17324825 17339297 17359245 17345444 17376186 17363784 17341251 17359361 17333290 17340252 17327326 17345651 17316738 17300069 17332706 17321934 17331165 17357131 17316860 17333993 17343299 17343437 17350134 17341236 17339153 17367188 17333329 17340571 17331415 17306503 17372081 17313923 17327252 17341673 17414881 17361573 17358123 17359187 17354481 17344697 17351725 17392779 17368397 17358940 17382317 17345132 17403620 17337250 17357827 17385770 17350818 17347686 17388605 17349531 17396677 17393623 17331737 17350729 17414112 17359369 17380048 17358841 17382053 17366912 17364297 17395201 17334397 17355460 17394314 17330589 17338007 17379347 17323481 17317851 17352762 17320452 17367233 17402539 17369904 17335641 17344809 17351522 17379078 17369034 17360072 17406106 17360962 17350191 17343533 17319239 17344129 17345642 17374955 17375117 17375246 17377888 17347986 17392872 17362600 17428447 17398358 17342065 17377079 17375795 17417000 17342116 17400574 17396526 17361196 17383602 17446320 17379082 17396435 17390155 17372063 17417809 17412368 17376962 17375793 17398254 17380108 17392407 17398084 17409238 17371686 17415553 17398126 17399082 17398924 17350821 17363933 17389049 17421750 17397374 17390312 17371804 17410583 17383729 17410832 17380068 17408134 17411882 17359810 17362023 17390549 17400858 17395299 17400578 17375132 17399267 17405806 17414218 17413281 17381840 17455649 17418319 17419462 17389969 17348418 17399280 17337249 17413619 17397857 17455762 17416950 17391491 17419038 17410292 17433073 17410843 17418865 17427333 17415008 17423460 17423047 17404932 17366234 17391194 17375557 17388736 17399377 17446342 17409382 17438668 17379821 17362619 17432421 17447959 17430542 17419587 17364307 17384686 17414928 17420445 17407831 17446162 17427561 17445661 17469917 17437635 17422544 17437314 17422119 17385797 17465699 17394876 17433887 17441392 17451534 17424137 17449357 17446281 17454950 17393834 17416791 17430263 17481536 17461500 17401777 17452952 17421912 17484954 17427621 17415076 17529479 17425389 17385938 17411911 17467470 17383744 17458007 17433654 17436409 17438442 17467075 17472243 17400292 17402798 17405658 17431400 17437464 17459940 17445559 17457312 17466879 17458566 17389710 17436810 17446207 17462040 17440898 17447950 17453470 17442087 17457794 17445808 17461834 17436477 17449141 17388379 17439535 17415583 17406698 17400990 17407381 17456520 17476096 17470087 17422100 17408856 17446650 17442001 17430595 17468013 17512594 17408320 17481743 17479111 17509339 17420476 17426209 17443231 17473258 17433352 17507582 17417690 17487088 17455314 17450268 17489373 17445836 17438446 17467812 17440623 17376259 17505380 17412274 17467809 17492060 17474034 17467379 17477699 17500229 17499616 17467510 17460388 17503613 17480086 17458304 17434572 17432462 17482746 17447230 17450349 17504482 17498197 17497933 17482078 17520386 17478051 17481120 17491761 17520958 17531135 17569159 17447572 17490462 17479008 17480674 17514342 17483128 17439364 17485025 17477097 17467996 17465104 17479335 17505540 17492522 17507039 17467210 17432920 17464160 17460311 17498357 17504667 17495644 17472955 17470087 17469361 17472112 17530844 17508915 17509695 17494895 17447763 17473629 17489174 17475251 17494384 17461566 17489800 17511176 17487023 17519942 17513485 17483126 17496299 17464871 17517642 17502539 17496317 17489554 17450258 17497746 17500154 17526678 17490641 17486591 17456998 17439290 17513725 17465541 17537401 17481332 17560127 17512064 17511119 17490146 17527478 17489028 17484532 17469332 17505419 17492753 17499240 17510875 17530117 17500027 17499361 17466667 17521981 17508497 17456762 17522668 17499744 17495117 17512171 17500759 17512473 17480224 17499259 17532069 17538278 17442601 17548698 17492705 17476293 17523853 17473782 17504016 17521434 17479840 17460578 17441519 17518813 17548897 17502732 17514575 17536811 17520371 17571825 17511951 17535216 17517921 17494433 17491423 17533805 17527127 17527240 17452558 17564121 17499068 17488917 17519954 17573089 17569217 17558836 17480309 17496126 17534347 17493370 17573757 17504055 17545566 17508538 17521054 17491649 17504631 17541623 17528025 17526148 17543790 17541534 17539811 17569744 17561957 17550456 17534020 17571798 17514191 17534708 17563222 17541658 17542846 17494890 17489547 17537672 17524943 17517551 17531748 17552009 17535594 17537286 17528048 17534100 17533094 17558582 17589861 17515560 17558690 17587893 17561306 17509997 17540426 17546152 17538921 17536521 17531265 17526771 17554561 17477761 17567130 17507618 17499025 17539558 17545844 17552019 17509520 17577510 17545008 17574483 17556940 17584857 17538929 17498518 17559153 17533624 17529837 17561298 17602612 17580250 17567313 17538175 17548742 17534321 17512015 17520343 17562645 17597485 17558149 17553837 17573620 17583742 17550984 17577127 17542766 17571927 17519500 17602297 17555185 17546826 17548967 17568680 17571234 17545502 17559744 17519867 17554245 17527933 17507557 17543401 17592721 17588175 17584573 17568494 17583418 17594432 17575887 17571920 17567103 17582641 17534511 17562730 17571388 17587626 17597142 17572212 17539249 17609499 17532499 17578247 17567040 17581267 17516125 17612228 17597682 17515749 17576049 17600153 17591099 17553421 17564710 17610620 17525209 17637396 17572905 17542175 17596473 17585935 17536774 17596372 17558415 17597220 17578459 17559537 17601941 17578770 17564350 17573674 17537592 17542115 17584252 17606767 17595972 17564529 17612572 17576344 17584712 17615490 17567766 17589903 17585570 17600391 17529718 17587922 17556507 17549259 17568749 17572686 17591597 17599934 17597017 17618790 17565675 17616029 17574904 17591329 17606118 17599585 17602144 17587535 17567449 17599867 17604054 17622399 17553791 17599936 17620862 17601320 17596047 17570793 17618164 17620270 17586585 17573412 17567873 17653335 17561612 17605683 17551268 17602000 17597606 17588194 17632270 17636334 17581495 17622969 17631031 17598140 17605208 17571461 17629516 17615829 17561280 17602174 17632648 17622553 17601366 17599323 17647351 17610996 17595258 17597715 17576047 17653888 17602426 17612627 17574890 17675807 17588181 17593638 17562225 17612062 17600554 17581403 17638234 17630772 17576211 17626158 17631418 17598693 17645966 17618611 17566587 17564457 17610013 17593751 17586824 17596201 17599687 17637869 17600347 17633056 17606230 17621313 17619590 17623172 17643824 17606847 17604294 17608789 17664182 17603711 17602721 17649809 17607647 17655654 17649661 17619650 17626217 17590100 17637717 17628973 17660862 17623596 17602531 17606918 17605265 17584328 17646710 17621680 17659003 17612938 17645265 17651444 17643348 17654249 17635307 17624276 17652266 17670735 17601935 17649430 17656459 17622251 17685876 17639098 17637575 17656549 17649341 17640616 17657834 17676517 17597778 17696161 17608393 17593278 17661166 17670517 17662763 17684533 17657744 17658689 17633574 17650989 17651089 17604121 17646000 17704735 17665121 17615172 17672760 17627759 17693584 17637419 17667718 17684129 17624117 17665432 17654260 17650844 17654892 17708689 17713527 17649888 17692139 17667597 17667698 17686860 17683343 17700864 17621605 17714919 17650346 17670480 17655763 17632730 17701432 17726490 17614655 17672049 17701793 17633673 17671328 17646664 17691266 17649971 17675060 17656687 17648911 17623676 17695319 17626673 17658782 17651726 17667016 17695582 17657964 17676792 17665193 17656275 17658928 17682021 17700402 17653525 17692228 17716713 17646619 17644214 17692318 17703270 17697764 17673285 17641005 17663276 17715608 17693102 17690346 17656615 17607442 17668891 17640579 17682372 17682822 17617002 17706533 17725040 17692131 17692648 17694741 17673059 17689441 17693160 17721210 17700062 17679489 17656832 17672215 17647641 17636244 17697427 17699241 17691571 17706871 17681841 17708193 17702326 17682142 17692268 17668918 17725443 17711748 17660763 17660498 17703431 17700581 17730279 17670447 17667519 17686416 17659390 17695160 17733839 17708312 17702763 17691952 17721592 17701424 17714312 17716596 17761687 17694427 17669378 17689709 17693903 17708144 17708269 17722731 17684968 17719118 17638976 17668950 17652174 17732462 17734087 17670641 17705753 17691838 17688551 17729595 17654383 17706789 17733743 17676564 17706733 17707705 17723442 17655975 17703308 17686092 17748393 17731487 17718565 17722875 17693176 17630660 17721517 17736737 17708216 17708800 17711375 17692783 17687003 17714989 17699415 17725764 17716193 17671249 17689619 17743088 17711670 17683831 17740214 17776267 17740940 17724811 17672240 17727564 17714602 17717823 17742735 17681187 17769123 17734916 17722502 17665333 17721668 17737653 17768554 17703699 17749486 17734516 17778004 17726602 17750352 17707019 17718148 17726301 17716634 17707674 17732987 17724005 17732180 17740097 17727546 17775633 17745925 17745741 17706184 17708718 17733329 17739160 17755290 17697734 17710581 17715014 17755432 17742370 17729972 17761076 17776357 17756658 17749206 17739714 17734342 17696264 17733695 17710071 17781900 17722522 17736373 17763867 17734478 17723435 17731002 17737111 17755185 17743452 17732345 17734554 17710602 17755959 17737228 17763475 17811431 17723633 17783194 17785349 17786350 17739188 17743291 17771719 17720747 17729143 17733048 17751281 17763570 17766831 17758114 17759473 17761768 17747454 17765134 17776182 17787795 17772372 17741912 17760372 17791958 17749177 17796181 17717857 17753898 17708354 17751312 17776843 17756973 17750289 17774009 17735462 17767576 17755861 17748966 17762763 17809690 17794942 17812037 17764511 17773532 17752942 17792149 17787666 17720370 17806572 17755032 17759800 17767372 17753862 17797865 17727718 17774796 17666058 17786540 17807905 17754741 17804010 17776223 17785659 17730929 17744208 17774482 17757678 17780252 17802905 17752279 17803939 17732899 17775140 17774630 17740312 17766709 17767759 17743091 17733127 17764683 17769485 17767425 17796276 17775465 17754716 17802417 17755338 17809736 17780107 17762250 17809383 17827205 17755809 17785354 17763898 17804946 17745972 17792453 17744188 17737831 17814311 17793553 17855965 17801171 17813935 17807913 17772592 17770453 17770086 17803586 17801178 17807621 17773130 17759654 17870059 17801254 17799261 17747392 17765642 17791418 17812132 17796605 17805045 17787749 17793723 17767868 17829443 17794372 17811380 17809895 17840417 17786882 17750263 17753098 17822019 17748125 17758578 17855493 17821002 17785989 17764974 17759080 17761481 17743698 17794929 17799787 17810366 17787816 17833859 17843092 17825223 17803294 17828830 17809030 17815675 17824254 17845848 17790164 17795018 17798370 17747654 17835216 17808946 17834948 17780696 17805773 17783853 17781522 17785941 17818950 17854019 17862311 17791910 17772348 17812690 17834324 17826582 17795627 17861215 17825899 17865664 17802669 17870321 17812364 17877129 17839160 17793242 17815333 17836886 17786250 17813275 17829957 17812153 17872186 17850967 17866362 17829472 17830927 17834299 17801991 17835378 17803628 17846912 17853614 17847598 17815738 17832594 17875084 17837705 17873834 17854578 17865128 17865882 17843559 17851428 17842172 17820140 17793068 17779947 17820157 17825363 17871543 17873868 17824345 17842736 17836299 17882868 17847700 17838675 17773264 17834643 17878147 17859835 17817592 17835892 17829498 17853605 17869423 17811902 17829165 17842592 17836109 17840268 17835862 17826281 17826233 17827470 17860926 17807953 17857184 17832192 17829450 17880067 17814225 17863852 17827618 17829553 17811836 17855348 17833019 17822095 17896609 17866802 17830638 17897780 17879057 17810924 17887106 17842680 17822445 17836550 17902229 17844312 17859796 17840064 17880921 17811243 17891892 17889270 17884944 17838089 17878345 17836588 17831800 17913051 17856385 17878637 17839272 17871803 17827557 17836504 17878784 17889838 17827120 17914640 17855206 17863464 17848687 17876924 17883130 17867764 17888428 17860009 17885752 17852942 17851765 17865964 17865181 17909098 17859262 17948526 17873722 17883044 17836404 17876644 17889309 17891251 17833023 17902956 17861277 17908456 17868795 17869135 17894547 17877864 17848709 17864180 17911626 17916055 17864964 17848377 17893692 17894975 17921568 17936139 17920965 17881751 17893558 17912833 17921295 17908207 17856344 17913602 17882378 17885239 17888880 17889777 17888641 17896949 17922396 17900295 17881663 17880635 17918680 17925157 17909046 17909290 17880590 17911254 17889193 17929985 17956455 17888997 17874007 17891131 17904811 17889677 17927405 17905587 17897700 17882129 17895744 17874587 17889405 17931576 17886026 17849433 17942030 17899494 17855638 17899849 17896372 17916288 17911882 17966736 17929382 17913388 17924589 17921448 17912165 17861785 17933829 17928217 17926145 17926952 17910004 17877578 17899731 17862687 17909556 17962451 17938277 17909082 17916382 17909687 17908468 17933965 17929740 17916645 17861653 17927801 17881772 17927948 17912286 17931851 17857673 17899725 17943469 17925449 17922595 17896964 17964796 17953224 17936452 17872582 17930164 17874851 17960993 17906015 17943629 17943186 17913385 17916519 17942551 17914350 17935502 17928838 17881603 17906725 17966595 17899616 17952011 17961180 17935644 17944556 17959360 17932382 17963966 17979541 17960622 17934896 17974100 17947773 17985256 17994935 17959087 17947952 17944141 17892857 17917040 17943962 17962823 17926609 17898743 17929372 17937999 17969183 17960260 17980919 17961181 17932939 17984126 17947700 17913882 17935666 17929048 17936757 17979854 17926657 17948440 17965228 17973917 17962587 17966561 17963398 17935702 17897148 17945237 17960872 17930621 17972725 18021579 17993150 17937389 17911702 17960458 17958422 17972406 17977658 17928070 17953713 17948526 17983075 17961783 17940971 17975022 17947574 17975627 17910253 17948229 17990640 17939153 17969919 17968856 17958180 18006867 17957000 17948568 17958252 17931537 17923770 17954596 17949485 18003580 17944004 17961973 17965860 17993866 17978656 17983643 17994034 17997396 17982725 17938202 17963326 17972033 17979800 18016822 17942827 17945188 17962440 18011035 17988490 17994143 18032348 17990509 18041745 17984334 17978405 17973571 17958975 17955785 18009205 17973978 18021209 17975317 17990050 17975546 17994919 17963249 18012749 17955601 17977948 18013711 17993755 17979204 17976929 18024730 17986359 18011191 17943521 17964097 18004173 17962922 17974729 17985954 18019844 18010177 17971715 17988878 18001549 17992247 17987870 17995779 17987218 17971502 18043544 18021848 17985551 17966193 18020428 17995192 18012726 18035471 18020751 17984698 18004604 17959643 18067938 18028687 17943467 18015544 18043951 18026544 17999130 18044993 18014150 17985865 18009929 18006100 17957139 17995622 18055351 17992461 18006683 18015676 18005878 18057596 17990645 17984146 18016527 18019078 18019646 17995767 18053377 18011587 17980655 18059067 18025994 17983289 18040930 18034552 17989875 18014918 17994114 18013242 17991335 18021652 17950398 18026410 18020324 18041767 18062042 18006369 18031051 17998726 18032211 18006840 18039665 18052628 18006844 18049077 17998281 18051522 17989053 18039151 18060683 18052399 18030559 18009295 18061495 18004661 18081254 18076435 18080132 18061997 18033819 18032231 18014722 18039189 18016211 18047609 18081677 18025455 18002719 17994614 18026375 18043567 18065450 18046410 18022298 18021291 18050923 18042183 18022829 18049779 18035716 18020161 18040922 18038323 18054695 18036430 18004239 17988082 18028663 18054607 18043783 18027334 18022266 18096952 18043158 18018857 18086306 18006927 18059135 18078148 18062294 18048178 18026601 18069601 18017905 18062437 18109041 18020057 18071241 18085035 18049088 18030692 18093780 18043517 18099471 18042098 18081197 18039571 18027091 18042657 18096579 18060623 18025971 18038782 18073121 18088380 18032575 18041780 18065058 18046223 18032865 18104017 18069940 18093839 18045441 18075065 18049809 18024975 18089997 18039758 18069085 18091524 18104859 18047009 18079433 18028679 18057795 18015526 18061299 18039957 18099110 18106899 18117203 18112684 18077188 18044925 18051010 18069718 18073467 18076430 18098195 18036286 18081169 18109716 18061548 18087757 18072500 18105315 18027267 18102990 18092603 18049810 18073785 18113885 18092618 18105883 18074808 18136607 18060887 18020726 18055414 18071325 18067721 18098813 18050641 18042917 18116026 18060975 18089392 18088571 18081938 18114685 18113576 18099500 18081767 18070260 18106498 18068266 18093658 18134256 18080228 18075531 18071100 18058144 18097868 18117914 18095288 18131426 18102875 18055302 18123094 18144950 18091055 18112711 18110464 18087301 18149488 18105694 18136022 18103342 18139371 18102719 18067869 18140829 18098664 18063853 18101816 18109679 18094904 18155529 18120931 18091375 18098935 18143506 18111138 18154388 18139324 18066269 18113566 18120857 18101078 18098129 18113438 18098919 18112363 18144604 18090310 18169801 18139085 18098746 18140614 18153681 18120303 18109125 18086756 18066323 18157778 18154602 18100649 18127374 18151323 18062296 18136554 18035473 18098967 18081925 18049420 18149791 18094011 18111154 18070813 18164623 18143282 18109985 18154556 18135264 18086562 18101226 18151411 18119634 18081372 18129364 18109070 18149681 18135569 18153527 18146791 18143095 18120779 18104094 18144008 18174067 18156807 18118166 18117492 18128446 18058172 18155379 18141660 18157127 18105329 18082126 18176654 18165333 18148972 18142566 18141802 18087455 18084255 18119292 18172718 18121620 18096421 18147953 18122915 18141460 18172447 18153879 18149087 18143047 18187962 18152188 18156178 18188432 18137121 18160371 18158140 18167151 18156630 18148272 18167139 18170460 18148038 18182305 18131762 18152409 18165894 18152069 18113978 18163480 18171667 18119180 18123528 18147003 18194293 18164042 18196345 18183145 18154967 18122812 18174939 18163783 18127617 18177899 18168496 18177434 18178156 18161135 18119837 18154607 18159061 18129952 18199628 18233220 18175491 18153094 18170606 18152582 18132741 18132000 18172060 18187998 18176229 18122166 18211497 18131852 18130047 18187041 18146451 18135478 18125353 18178716 18149936 18188689 18187342 18178052 18210683 18143692 18185134 18178449 18147630 18196755 18172071 18216669 18206635 18139547 18142263 18181085 18182477 18155656 18169277 18153715 18137785 18176004 18161675 18196206 18143886 18157607 18150620 18216738 18231513 18145263 18198388 18145869 18137558 18180768 18170309 18247207 18176712 18163080 18186616 18182285 18158844 18270007 18202036 18202149 18226774 18204061 18159402 18161817 18213371 18220990 18194340 18179943 18193087 18181284 18213083 18234354 18224186 18221278 18164473 18169333 18201913 18188242 18185903 18195303 18212861 18229474 18221636 18155348 18210215 18198947 18180928 18205735 18208451 18212896 18226062 18231371 18198564 18214748 18283164 18174361 18280275 18171908 18225270 18190886 18176211 18241024 18200291 18208862 18178844 18264667 18228103 18216505 18240976 18244075 18179834 18228637 18252715 18217853 18227626 18214813 18228870 18257624 18183636 18231106 18212553 18191004 18244048 18260067 18262301 18215963 18203383 18267898 18232054 18222530 18231898 18275263 18187850 18222787 18244529 18168153 18244562 18179286 18222772 18258348 18240529 18263888 18204292 18190191 18213025 18248598 18234308 18226324 18204075 18171745 18261605 18231791 18228401 18203344 18239138 18227578 18260581 18211240 18235862 18272115 18271088 18249982 18227126 18228444 18254484 18252260 18257127 18208749 18287906 18260611 18236639 18248222 18251797 18240118 18200703 18228916 18247775 18218063 18249591 18281767 18291213 18224824 18212414 18253548 18247435 18249359 18217191 18189786 18243398 18254417 18228491 18215998 18249713 18252686 18271859 18243908 18261110 18244028 18298120 18237697 18259591 18255387 18285576 18239471 18288695 18244684 18260885 18181369 18239712 18271163 18265648 18264460 18290276 18279774 18218700 18262594 18286112 18272102 18254447 18224984 18267089 18249540 18313593 18280357 18239072 18310539 18252437 18326239 18278770 18263492 18224966 18277127 18259665 18205050 18275028 18276955 18325059 18283036 18358185 18310434 18299210 18280113 18265602 18290341 18302820 18242356 18267346 18286677 18308839 18251705 18316992 18295241 18262746 18297509 18263120 18265722 18298217 18260385 18298789 18308382 18340935 18303724 18254706 18257796 18284191 18286497 18289414 18297004 18281602 18283328 18317685 18303296 18284458 18256541 18286039 18314018 18288176 18335061 18271849 18324996 18251766 18318033 18279851 18282468 18297651 18296300 18309334 18268876 18301737 18242555 18303672 18297769 18259260 18281913 18272957 18348310 18295295 18322696 18275671 18286547 18327102 18281466 18351342 18269562 18291044 18306302 18301293 18259580 18267542 18284732 18314419 18335684 18315251 18296016 18319543 18324041 18304411 18309819 18290097 18257733 18257459 18305193 18268925 18335243 18281621 18315172 18287329 18288746 18246447 18308151 18360177 18323263 18280528 18416602 18321701 18299379 18316377 18260334 18289279 18297530 18361339 18343238 18326741 18335747 18311411 18318326 18307350 18278449 18288704 18335823 18363025 18314205 18356403 18301170 18332212 18322042 18301082 18332102 18309406 18306320 18328572 18334549 18318930 18309392 18332117 18324024 18376991 18296095 18324621 18352649 18284170 18339809 18326133 18348636 18301696 18326001 18295948 18326252 18323261 18335064 18307016 18330885 18310024 18307720 18350494 18371551 18349035 18357205 18287934 18298099 18319534 18352110 18324405 18339638 18360231 18350876 18365028 18324222 18324688 18327159 18322163 18389365 18313658 18362744 18324805 18344097 18317294 18368384 18325801 18341877 18337274 18360477 18297344 18348405 18332994 18352696 18374157 18334204 18323185 18289316 18376881 18361479 18340185 18320553 18268753 18343824 18326526 18313577 18366808 18338134 18354604 18311287 18426152 18294927 18367643 18309103 18348610 18359918 18389790 18348921 18372286 18415208 18367555 18349692 18334977 18324109 18373020 18305704 18391369 18352854 18390269 18295381 18321953 18341842 18335730 18361185 18381375 18405501 18360469 18403545 18380535 18365085 18410250 18311076 18324685 18343633 18365160 18384502 18410719 18366532 18347405 18376049 18347000 18351016 18398731 18385248 18345979 18406586 18367142 18373072 18336960 18448340 18398773 18348920 18394751 18423358 18374276 18329059 18373654 18447144 18373600 18361013 18357241 18353856 18356438 18413007 18363084 18387117 18377999 18359620 18391270 18381924 18357239 18386292 18418095 18349079 18349240 18429854 18430937 18439446 18400389 18405234 18328245 18373214 18402609 18385434 18369378 18404675 18400119 18392987 18412566 18369475 18377378 18349229 18379235 18382700 18355020 18355110 18407244 18374405 18418507 18395897 18373757 18453822 18393487 18428118 18418103 18390758 18401240 18371165 18370676 18425586 18367214 18393873 18432043 18385994 18428613 18448130 18418846 18398779 18376298 18379302 18382870 18390275 18408450 18480962 18374145 18372462 18379390 18430227 18391579 18422845 18432854 18424320 18424551 18378263 18395640 18428734 18445577 18374637 18428724 18409773 18398849 18408272 18378819 18427320 18398836 18454785 18463799 18434221 18380948 18465114 18433654 18432570 18445504 18435454 18396443 18442370 18365068 18483430 18402562 18434968 18456870 18438785 18443980 18417762 18431089 18443013 18425322 18417302 18463264 18418678 18427081 18420831 18404134 18397863 18462187 18428320 18404380 18408268 18419095 18421534 18456182 18424561 18400286 18430223 18481236 18419543 18469586 18499134 18469962 18434963 18411152 18432865 18381336 18473537 18518317 18459424 18421378 18414152 18362911 18474863 18444805 18471175 18444110 18437820 18469092 18396452 18459401 18463430 18387660 18471668 18440285 18432835 18477212 18463870 18453314 18431072 18458571 18474152 18463228 18441128 18443143 18444720 18454326 18458367 18463939 18465944 18462195 18450963 18439148 18451270 18428901 18430727 18483721 18426901 18425871 18429607 18468956 18449758 18465744 18391201 18477679 18461943 18523790 18458564 18428010 18394986 18438433 18454961 18439476 18481385 18494153 18519270 18502066 18476700 18541816 18531052 18490144 18479294 18434527 18456027 18502252 18499004 18480526 18502298 18465790 18476782 18456984 18502517 18481956 18503122 18399687 18466242 18457024 18422641 18492037 18492704 18430770 18409042 18524941 18470379 18502008 18470054 18465547 18454991 18496648 18453835 18440584 18462029 18471406 18535134 18510613 18491222 18453951 18458159 18461083 18511317 18539615 18527270 18457642 18527744 18492905 18474534 18478122 18534047 18473523 18485187 18503383 18467242 18497665 18490683 18491018 18515474 18524235 18488840 18499340 18481037 18500056 18457239 18468380 18511704 18547078 18447930 18510760 18503997 18480770 18513024 18519244 18504400 18482670 18479797 18508655 18516253 18506758 18539951 18525001 18497495 18533030 18487660 18497261 18490171 18522001 18525934 18489748 18512635 18464139 18500348 18488058 18509338 18491741 18460890 18518566 18525438 18475815 18498414 18516130 18498028 18509500 18487704 18492107 18490266 18506447 18515083 18485817 18496760 18488589 18464265 18507420 18456478 18526734 18488002 18506181 18523025 18525922 18534794 18525727 18491081 18503670 18449356 18524053 18527884 18461933 18525152 18556825 18523676 18546766 18553640 18488099 18516700 18563899 18544099 18545826 18482283 18525735 18565317 18520636 18499940 18500494 18500037 18533701 18527041 18564923 18563369 18544879 18482257 18539066 18551563 18533122 18567357 18562651 18531303 18559306 18511541 18550711 18533853 18528749 18596305 18491051 18551868 18540864 18555273 18559482 18558889 18534791 18515987 18541485 18573375 18533102 18566969 18533470 18561045 18527291 18540334 18539487 18567938 18561403 18507863 18535609 18579088 18511643 18512505 18510100 18553362 18534188 18536084 18556675 18516011 18508583 18597752 18539549 18570473 18561969 18552370 18590213 18536739 18562919 18543007 18578726 18589148 18542039 18534934 18598960 18589701 18571584 18590461 18551219 18564782 18488804 18540131 18543321 18595956 18565457 18576442 18574830 18565459 18621603 18516260 18566063 18569006 18538036 18558583 18595850 18572850 18567250 18542580 18537038 18548698 18602106 18588247 18536677 18650450 18602465 18567481 18557162 18565493 18544187 18524616 18575344 18592114 18579807 18571124 18532149 18602313 18615751 18516736 18503347 18581201 18553036 18616155 18592716 18551980 18604389 18583621 18582326 18557878 18577850 18522710 18632883 18578087 18584990 18557620 18581071 18587690 18567954 18525079 18544335 18577262 18570333 18606678 18640987 18574210 18591549 18619386 18597593 18563734 18596778 18576256 18613981 18609384 18625026 18618534 18595160 18598273 18621642 18598414 18604779 18605889 18599967 18634983 18601045 18547632 18606292 18660157 18629026 18611156 18614290 18598047 18569147 18614264 18504353 18637352 18585721 18601096 18609065 18587955 18640922 18608786 18593205 18591557 18628953 18637971 18591130 18578541 18579282 18675821 18615610 18558245 18586140 18669634 18621706 18608941 18577699 18602569 18623904 18567818 18582986 18556648 18626165 18630250 18639035 18627987 18547057 18627491 18611800 18595648 18586644 18587278 18653995 18591907 18654903 18556112 18600408 18611895 18676107 18643137 18626184 18599328 18659149 18620174 18586489 18621846 18587356 18557675 18581314 18567055 18682290 18626875 18629748 18623234 18577702 18612660 18588061 18593932 18637093 18596481 18629790 18647226 18615427 18600317 18647961 18568706 18612634 18607772 18622705 18607260 18651012 18623552 18622581 18664266 18636723 18631828 18615315 18669152 18639720 18648504 18637023 18619938 18566107 18637217 18616974 18596804 18586925 18617671 18599973 18596899 18607856 18651763 18655748 18617671 18632110 18589915 18663320 18613322 18603933 18708626 18587150 18598449 18653430 18593384 18634662 18649618 18615671 18641491 18626432 18669289 18612493 18605679 18664341 18631520 18621170 18600677 18627998 18632070 18640244 18652458 18659983 18612753 18658200 18639903 18683116 18651490 18636479 18665787 18704211 18662235 18681666 18708292 18671215 18664811 18662257 18654280 18656304 18685471 18660588 18663979 18625738 18678227 18673427 18665413 18660332 18632472 18657158 18673621 18650887 18585327 18651993 18663666 18641535 18641310 18654885 18640875 18685270 18673128 18660910 18657076 18626764 18633723 18654888 18673192 18687867 18637111 18641183 18652552 18602398 18669377 18663261 18661597 18729995 18683245 18693515 18682788 18720343 18657236 18706993 18645316 18683353 18606809 18677943 18716391 18671287 18644065 18650613 18662119 18679009 18684861 18623503 18721162 18706182 18639942 18727797 18689267 18663930 18730269 18698897 18700011 18673701 18688220 18687119 18677349 18663993 18648612 18701814 18636973 18684405 18659998 18647939 18685164 18695928 18709204 18694836 18688211 18704878 18716142 18706421 18700032 18665040 18653751 18678501 18691963 18681496 18678603 18697387 18697556 18707334 18684025 18706101 18718952 18701216 18670452 18698879 18710737 18680994 18770876 18706404 18755817 18626744 18669717 18705727 18698724 18688678 18700479 18663655 18733299 18683192 18705746 18755827 18719611 18677917 18692757 18703622 18667346 18697720 18715607 18720106 18648563 18651113 18756456 18657499 18668516 18718474 18715079 18682290 18728744 18664463 18718902 18721687 18748401 18732931 18714948 18663212 18719149 18739525 18700416 18694228 18709593 18745805 18706225 18716709 18657843 18724029 18696870 18723250 18691501 18725748 18662230 18733895 18698101 18731212 18723252 18745611 18732562 18712012 18661638 18804731 18706670 18760772 18739533 18741628 18695174 18713913 18725334 18745039 18696470 18704054 18710184 18752723 18765068 18754414 18723331 18734082 18704539 18717801 18736227 18743654 18732887 18772411 18702040 18765447 18733455 18734518 18740239 18734699 18755166 18672994 18708167 18732221 18750416 18721723 18730952 18733605 18764694 18758676 18756354 18750433 18731735 18743595 18789047 18744899 18734985 18811742 18694991 18769338 18776320 18761590 18771790 18756749 18736851 18825068 18736538 18715153 18733834 18784016 18755127 18767077 18749628 18771693 18744209 18715361 18737213 18738993 18751395 18744607 18750546 18696748 18715259 18755196 18769075 18754571 18781601 18766927 18727129 18689930 18684722 18804071 18727107 18735242 18785829 18782589 18751290 18756705 18721245 18754717 18788752 18814197 18748822 18749464 18761019 18761853 18769816 18795037 18727781 18785628 18781981 18826315 18758317 18831086 18805923 18771765 18736648 18766146 18804886 18691239 18761515 18785277 18762939 18748593 18737976 18713103 18743332 18796045 18755157 18762779 18803050 18792256 18790907 18821391 18791202 18750033 18790282 18761384 18767771 18789303 18768532 18783957 18754215 18788703 18782444 18757294 18809448 18760047 18758401 18764536 18824015 18757960 18797591 18769981 18809891 18813494 18750964 18735147 18797578 18801668 18806079 18781775 18771797 18815756 18770198 18804650 18786562 18737257 18822756 18756742 18783994 18811574 18786144 18810191 18807050 18853619 18809019 18815805 18791787 18756661 18785842 18826219 18806714 18782807 18820394 18781314 18798488 18827468 18805406 18837040 18781948 18780631 18786785 18749647 18854026 18800347 18819383 18770542 18808786 18834747 18785853 18792361 18833338 18802458 18805835 18838197 18851451 18790773 18723549 18837545 18807854 18822672 18752887 18820529 18820364 18762097 18797991 18807890 18811824 18828263 18856356 18807115 18775709 18870134 18828444 18807328 18783226 18836547 18816323 18785481 18744571 18811049 18784436 18841288 18824155 18774304 18877163 18816116 18822236 18842048 18812310 18801866 18848700 18865312 18849329 18824235 18777748 18769076 18835145 18826492 18808899 18861002 18828891 18802547 18803850 18794472 18797148 18794334 18828534 18822978 18857159 18836333 18843477 18825196 18865241 18828159 18825910 18778048 18843386 18825075 18817952 18838275 18846895 18861391 18871397 18848257 18851419 18897031 18831724 18858203 18810819 18835827 18810068 18843284 18836559 18854449 18835483 18805233 18837268 18845953 18797342 18846055 18849725 18832925 18876153 18826308 18904447 18841524 18841654 18812529 18857153 18851153 18842537 18848995 18873703 18872195 18860494 18872984 18853777 18830476 18832291 18833662 18890345 18828972 18830531 18860808 18846063 18789736 18872130 18842473 18865623 18911182 18869473 18836313 18885634 18841130 18868286 18827583 18821012 18853115 18804224 18882598 18853035 18857983 18870541 18840440 18826818 18852230 18916171 18850007 18874637 18843207 18859289 18904956 18817601 18898619 18872729 18863964 18865069 18849924 18868526 18822939 18881986 18885748 18864569 18869375 18846213 18866418 18866848 18805178 18856044 18916061 18810586 18837055 18833447 18840844 18890789 18890850 18864248 18822973 18900257 18892035 18907688 18878275 18805946 18890066 18858828 18876016 18885455 18845968 18928423 18930204 18902805 18897033 18877002 18864092 18818386 18907596 18840723 18901557 18914050 18920701 18859468 18866545 18876004 18884078 18886066 18920238 18883675 18873147 18863913 18869388 18882260 18927836 18896918 18882274 18891775 18882239 18858966 18899141 18876115 18888568 18838886 18937278 18856128 18884681 18828982 18867402 18873476 18906983 18905731 18868281 18919954 18881543 18910757 18917948 18898223 18824702 18908536 18875481 18896428 18882318 18869426 18926999 18893581 18914360 18918388 18897712 18889770 18837631 18920575 18881505 18892439 18916603 18897627 18892654 18937929 18879574 18910683 18920163 18877392 18878868 18906397 18927957 18880554 18907981 18884586 18919381 18888843 18952138 18885667 18935958 18885343 18893054 18945340 18924504 18928546 18944508 18891688 18942844 18908658 18958980 18966947 18924272 18933577 18934100 18913694 18899684 18936936 18925474 18861859 18884476 18926740 18942103 18924821 18919549 18854623 18920931 18918210 18912349 18923295 18889557 18921230 18913284 18909629 18953618 18901026 18953223 18927461 18897684 18946246 18939610 18867396 18922672 18916677 18916425 18910170 18895177 18935253 18948142 18909546 18916416 18936451 18912303 18913955 18946859 18921030 18941439 18958900 18910164 18973873 18942156 18940470 18919431 18938040 18908788 18921849 18893558 18914209 18935809 18928900 18890364 18904940 18947491 18904012 18924478 18919221 18916521 18898982 18966405 18940182 18919471 18945256 18962917 18972568 18972139 18934311 18935209 18946940 18980565 19001283 18860791 18928310 18989291 18933030 18916710 18987417 18976127 18923694 18951698 18973308 18977616 18905359 18936412 18948906 18979511 18967244 18967408 18926132 18980330 18920662 18936107 18909125 18904066 18985119 18949755 18906940 18924559 18983147 19010157 18909225 18967567 18966173 18932961 18902483 18916790 18986366 18961486 18944004 18964272 18937825 18995781 18930209 18966299 18948186 18934391 19012858 18935676 18973896 18951500 18906628 19053393 18917373 19001330 18961308 18904570 18971085 18972573 18944900 18986221 19019043 19019988 18992811 18951676 18993565 18956526 19010401 18962914 18962533 18933947 18957397 18992876 18956547 18957541 18957142 18977947 18934157 18954668 19013172 18892485 19000692 18983549 18954883 19006695 19003939 18981958 18990266 18936345 18956348 18978452 18954748 18978820 19035245 19015202 18991632 19043862 18949543 18943971 19021014 19041300 18936853 18946708 18991011 18967412 19021197 19001448 19002448 18995320 18978774 18962667 18996762 18953220 18966683 19079605 18979922 18944750 19011574 18968160 18977975 18987287 18941559 18967158 18985155 18982980 18973738 19006588 19018585 18986899 19002312 19027354 18991966 19014104 19059156 18970857 18946643 18976235 19025340 18993665 19005021 19000892 19026708 18979523 19002815 19006607 18942576 19004720 19028219 19004602 19011529 18981342 19048609 18980679 18982511 19022076 19005989 18994196 18980868 18984573 19012150 19030787 19031536 18985072 19013771 19051349 19021311 19014178 19002127 18994685 19012171 18993959 19052357 18980741 19030015 19004751 19024702 18995507 19004877 19049846 19000831 19023165 19041390 19054641 19055166 19035945 19016069 19027919 18976740 18997293 19000525 19021552 19007602 19039677 19001403 19078050 19018209 18983206 19001901 19016435 19015905 19005502 19037089 19006702 19066647 19015589 19051000 19009839 19012815 19054661 19040018 19004093 18982417 19033991 19026716 19048243 19002876 19051780 19058316 19065466 19039991 19021473 19067986 19050352 19066019 19063462 19036412 19042439 19017174 18999706 18988803 19014471 19050137 19084479 19026703 19068026 19039763 19021877 19031298 19049234 19087289 19084692 19063826 18988515 19058825 19078629 19008144 19083697 19035600 19013346 19031059 19008595 19008191 19006516 19076925 19068308 19044507 19022459 19057776 19057150 19050075 19015311 19078734 19026847 19055317 19074083 19035781 19064102 19058437 19113491 19071669 19107665 19055862 19061549 19072700 19082779 19014129 19024232 19054732 19090972 19025990 19045769 19058905 19081955 19130249 19024896 19111147 19114897 19080822 19093547 19077811 19077071 19108367 19110916 19054928 19104397 18990002 19051405 19066371 19073812 19073605 19071672 19072121 19083281 19095485 19050160 19049920 19069359 19098272 19109423 19050127 19051117 19093045 19073057 19060906 19056313 19080062 19058949 19124210 19080900 19108576 19041512 19106985 19078431 19044943 19115463 19070700 19029044 19081810 19087478 19114267 19115482 19058786 19105698 19126241 19068010 19094558 19103229 19102980 19072808 19103314 19113983 19058604 19062815 19097715 19099300 19094424 19101531 19097488 19067386 19060036 19056791 19098684 19107691 19041622 19105788 19027311 19120199 19066385 19124949 19087606 19067303 19089959 19089696 19075608 19066574 19107192 19117474 19088754 19105087 19122420 19111160 19137625 19102405 19080445 19116572 19109304 19072693 19081853 19113524 19146587 19080989 19156290 19148645 19047043 19110397 19090987 19126497 19117448 19130878 19111481 19132052 19085260 19109859 19150416 19118812 19063419 19092190 19091994 19160781 19150245 19075502 19134070 19113344 19094226 19145135 19074053 19092788 19116687 19085479 19157450 19110843 19087371 19169261 19120227 19074493 19095780 19151161 19109967 19152658 19118358 19121463 19154365 19106884 19080725 19090883 19104628 19071402 19144239 19137752 19142621 19181659 19168983 19195656 19109394 19093869 19128651 19134787 19153114 19134098 19165341 19114180 19179240 19168277 19142100 19155861 19126158 19145096 19154534 19134071 19099924 19153565 19168455 19208057 19110091 19087667 19155039 19115976 19170050 19117226 19129281 19107545 19177980 19126376 19177254 19179998 19137854 19124221 19170877 19133948 19196747 19133262 19173868 19119645 19134362 19172198 19117523 19137495 19177609 19131012 19135578 19203852 19086061 19121123 19109176 19138910 19124538 19159036 19164554 19212729 19105582 19121246 19132758 19135985 19162264 19100860 19192899 19134398 19189390 19177743 19138411 19134936 19161079 19168877 19174532 19160463 19147014 19159014 19165359 19193908 19137897 19166539 19220446 19138925 19163479 19105619 19163925 19174691 19199306 19161788 19143659 19166220 19135364 19169539 19154847 19173481 19150275 19175636 19159980 19164502 19179978 19153673 19205838 19166946 19150345 19099520 19207423 19162135 19133730 19214225 19233928 19195092 19138728 19181434 19147936 19175232 19144793 19198242 19162509 19159742 19178795 19190921 19157563 19185482 19150577 19193340 19160975 19185781 19142109 19200058 19193224 19145209 19202444 19165196 19181582 19157749 19192504 19190360 19240195 19192116 19161991 19166409 19190864 19187277 19152459 19245197 19134152 19164158 19226632 19241756 19197195 19176998 19187250 19164755 19182938 19157304 19143715 19174695 19148679 19213222 19220513 19164310 19211633 19161276 19181399 19195825 19127388 19218432 19196318 19180924 19193300 19155508 19195280 19158557 19183989 19178532 19159167 19211682 19177947 19230155 19210243 19178422 19247307 19205437 19189282 19202206 19232006 19133254 19231659 19214529 19254765 19174283 19194334 19190573 19228856 19199787 19215615 19193962 19211034 19212737 19233411 19232346 19230276 19197355 19192088 19176011 19213959 19253438 19167917 19241434 19190392 19214575 19206365 19230874 19202496 19193320 19255794 19218106 19209859 19202915 19213036 19165512 19258602 19251044 19177367 19232422 19234236 19239658 19208815 19252276 19190644 19206251 19229823 19184674 19218594 19246051 19258629 19189043 19236386 19224970 19242899 19151641 19183006 19262055 19196765 19276025 19215401 19218102 19222705 19242397 19237870 19194445 19235392 19197140 19176983 19176239 19223936 19260096 19234370 19188628 19189256 19295574 19246393 19192760 19218394 19192281 19251665 19213227 19232030 19256792 19244176 19257565 19201719 19198712 19224089 19265196 19242076 19188323 19250622 19232978 19257607 19229109 19285373 19247162 19292307 19240844 19228387 19214991 19225923 19306087 19273965 19259921 19246023 19285467 19193172 19239941 19297373 19242113 19229135 19230377 19261169 19287475 19249840 19314689 19270337 19230210 19263612 19288856 19270384 19283702 19248304 19230120 19248400 19226639 19278846 19243934 19229051 19248717 19236257 19214196 19273226 19258968 19254394 19281757 19232460 19230626 19209819 19230313 19243293 19244422 19302414 19267989 19231491 19279461 19276207 19263301 19285804 19250731 19254833 19211807 19268699 19290612 19320305 19257219 19279443 19307991 19262215 19229804 19318498 19278388 19240873 19284737 19188694 19282466 19235586 19318233 19243619 19269160 19274293 19267080 19292273 19286510 19320372 19256067 19326941 19245920 19291815 19287406 19312797 19226642 19213355 19317617 19276302 19292271 19286153 19297920 19288198 19233008 19277549 19272021 19338517 19225817 19298331 19274329 19307472 19298829 19327747 19282256 19304349 19277953 19295879 19323152 19255172 19354371 19255666 19276017 19316898 19246619 19258365 19282689 19311238 19292049 19279737 19274836 19271818 19244960 19264007 19353243 19266255 19263517 19269675 19252606 19316717 19298480 19255866 19293078 19306476 19307441 19262021 19314881 19288009 19294675 19330861 19313050 19278133 19300313 19348952 19288178 19313419 19330510 19254572 19293531 19332369 19266950 19244282 19292651 19312768 19328283 19309622 19349368 19317639 19322545 19372463 19337847 19302883 19318604 19341095 19318472 19343635 19317463 19333705 19286108 19310096 19318224 19292539 19294936 19330414 19314999 19330207 19314312 19330472 19364111 19323539 19338195 19330498 19289213 19313674 19293053 19318677 19282264 19325780 19347276 19393910 19340844 19312899 19313936 19265971 19340268 19344790 19379240 19304708 19339305 19324665 19341575 19294184 19306181 19386953 19346797 19303447 19299472 19336431 19363258 19337532 19331496 19380715 19343526 19413434 19248041 19317185 19353265 19327837 19271563 19365346 19326764 19327373 19355022 19308826 19340260 19302401 19390585 19343969 19341977 19320038 19363809 19366886 19302628 19337886 19356971 19313046 19327333 19327829 19305760 19341804 19299694 19295490 19364728 19386755 19373972 19341331 19345479 19331551 19290389 19368370 19350129 19356838 19336296 19352823 19368951 19326339 19354840 19357748 19329920 19362128 19342231 19356466 19324010 19329601 19346456 19386060 19380579 19284639 19331790 19362235 19317120 19310400 19337934 19308158 19365953 19406173 19305744 19331318 19353792 19334429 19355957 19397987 19390360 19358021 19371699 19382532 19354700 19326387 19430858 19383805 19344442 19325322 19360119 19409402 19345550 19354003 19394833 19384273 19434194 19358832 19362830 19317015 19346703 19384674 19391364 19392934 19361277 19352736 19362219 19415843 19361207 19390346 19356457 19364149 19355773 19380947 19325416 19379445 19335723 19366143 19428020 19360567 19369220 19382378 19384205 19387447 19410962 19375130 19432723 19361931 19385938 19406877 19375771 19352628 19338165 19377462 19389860 19369293 19388625 19407616 19369077 19399526 19406106 19409298 19419843 19314246 19380861 19351625 19445250 19397053 19340287 19325085 19380528 19433076 19422789 19392598 19411396 19392603 19364875 19486207 19380832 19376822 19410133 19388264 19431132 19380715 19438194 19399985 19362849 19448756 19367107 19387325 19416358 19437620 19376044 19356045 19406788 19401069 19381498 19412091 19411825 19418432 19425286 19373541 19377716 19385358 19410046 19459367 19423449 19438762 19374268 19424105 19426029 19436541 19422637 19347505 19435436 19405676 19435573 19455495 19409718 19413881 19427929 19468389 19434316 19389953 19404499 19419953 19389191 19399167 19411058 19398901 19401282 19376793 19411980 19419020 19432067 19405350 19442031 19426393 19409732 19380479 19423443 19338811 19418097 19446905 19374617 19376880 19378470 19447233 19384446 19390740 19384901 19449078 19449139 19401830 19436526 19416631 19453142 19440180 19455872 19417185 19477532 19387651 19418896 19429369 19416876 19493420 19415169 19437991 19457370 19397173 19472810 19407202 19451374 19426120 19454168 19424181 19420630 19469569 19446092 19400846 19480995 19378897 19452985 19459069 19433670 19439295 19411749 19404457 19474010 19434252 19442004 19441842 19416342 19455730 19425765 19402002 19442787 19418478 19418660 19450694 19414896 19484718 19444536 19480520 19479791 19530756 19450699 19386528 19442547 19391316 19487018 19455989 19495495 19530592 19424757 19435786 19469720 19434132 19468769 19455982 19431348 19423105 19411577 19414714 19408538 19490251 19454142 19431889 19484408 19452246 19515966 19451656 19461256 19415972 19425219 19451283 19489796 19405818 19528473 19496232 19453166 19469804 19436042 19450373 19453170 19457958 19425391 19487184 19501978 19453140 19475331 19453482 19474889 19462147 19489820 19474531 19421138 19462344 19427599 19489039 19437755 19447095 19478035 19475459 19394009 19425433 19436984 19472964 19436396 19514002 19512991 19439665 19465730 19469064 19480446 19493483 19467863 19438698 19495238 19495374 19521580 19479496 19425731 19442761 19502860 19496505 19439460 19467005 19472465 19453504 19485075 19502948 19456964 19523796 19459281 19474523 19462582 19463804 19482311 19512150 19540204 19503728 19463884 19478389 19543454 19454204 19487201 19497408 19505753 19532635 19494237 19493285 19500265 19506473 19452474 19507360 19478292 19495495 19484843 19501458 19507779 19497466 19466033 19496517 19503362 19489534 19508040 19514394 19519594 19495350 19435871 19476909 19519595 19531312 19502320 19541615 19482342 19525406 19513901 19545376 19481787 19497608 19499045 19465843 19462699 19525294 19437616 19514951 19500543 19498054 19505316 19529268 19543553 19509715 19538030 19511506 19469527 19478512 19492174 19477945 19519892 19577008 19496773 19513058 19493582 19557127 19482896 19438778 19479697 19519073 19490056 19557057 19456102 19513051 19522855 19529437 19506242 19464634 19487433 19503600 19554695 19524079 19530488 19530189 19503351 19515909 19541100 19517847 19537941 19512149 19534984 19515391 19468074 19529583 19521166 19487068 19515155 19457844 19514733 19490032 19590585 19545025 19519666 19569147 19517501 19527489 19546387 19532912 19517521 19512181 19474092 19565895 19558192 19525898 19507902 19527843 19543931 19511584 19526886 19561622 19508065 19535132 19513455 19535838 19543253 19516849 19552725 19527261 19489677 19522202 19489823 19546626 19575221 19505562 19511758 19552178 19554682 19567097 19514339 19508069 19496697 19467513 19529438 19566210 19530297 19530787 19539173 19546341 19556725 19567420 19563954 19511668 19510554 19545978 19525279 19535306 19529516 19541524 19572743 19601116 19487905 19561565 19593795 19544851 19563498 19553760 19577322 19499476 19527772 19540910 19528268 19537374 19550828 19529561 19530255 19518471 19543731 19512159 19574347 19542003 19563490 19533199 19519435 19531141 19519648 19559965 19526416 19568059 19615700 19525326 19576238 19587921 19526927 19514805 19502191 19565808 19590969 19542181 19566214 19607420 19534789 19600148 19562987 19579067 19538086 19590834 19560454 19551694 19545126 19631478 19575224 19543938 19600138 19547167 19554895 19587286 19567644 19605842 19546840 19590995 19592021 19528151 19544903 19577002 19565743 19580579 19592731 19627011 19533167 19592284 19573149 19584781 19574186 19589302 19526682 19623447 19594988 19541308 19559488 19640578 19542463 19564046 19572438 19554638 19607112 19627844 19573827 19610881 19572152 19576265 19565810 19582414 19540660 19634050 19597112 19603659 19574673 19618853 19638259 19620886 19578519 19580583 19576854 19590865 19565532 19588912 19603923 19619974 19586197 19564543 19561786 19599051 19632628 19593201 19602798 19613418 19608758 19537327 19586537 19603962 19599420 19611266 19642608 19625488 19600689 19600410 19554957 19595582 19618517 19626550 19601014 19652563 19616158 19589565 19616104 19619252 19602633 19601021 19600683 19622433 19598507 19597291 19604160 19594157 19619027 19579180 19645463 19626125 19642858 19617216 19643725 19590653 19565993 19620547 19615312 19665888 19564997 19635521 19632384 19615629 19594609 19599569 19639858 19670396 19613368 19631410 19605613 19647789 19594834 19685059 19611419 19602894 19601298 19601115 19592267 19608696 19618307 19642270 19571137 19595314 19632477 19642092 19598052 19631726 19596587 19686521 19571541 19587791 19642775 19644285 19627518 19617878 19610842 19652174 19644578 19652890 19610600 19582211 19669971 19600967 19635019 19541495 19634978 19674485 19588490 19637782 19645196 19682237 19637654 19679471 19641950 19576814 19602262 19634731 19684957 19677561 19677566 19687201 19670822 19648406 19697772 19681801 19657666 19612823 19611169 19699341 19692179 19676156 19671577 19612891 19637721 19607782 19602307 19641053 19652456 19634561 19640622 19671380 19664082 19643832 19625855 19684768 19640101 19661366 19667243 19671201 19659848 19614417 19664274 19724690 19638811 19681054 19663830 19621601 19652005 19677874 19641882 19646593 19676639 19712761 19631069 19692918 19614647 19663572 19689792 19662465 19670456 19690852 19649641 19617752 19646461 19692000 19702149 19654757 19703358 19650780 19682683 19662169 19667243 19706578 19676290 19714879 19647093 19696707 19697078 19691410 19703510 19660894 19645050 19613797 19694062 19682508 19703654 19703898 19690891 19702730 19718207 19719138 19641313 19724686 19681803 19629813 19681627 19679779 19647535 19710550 19720882 19762057 19680334 19747203 19668596 19735815 19668545 19669526 19670040 19695560 19707880 19714503 19634361 19700900 19663352 19711623 19686968 19638362 19702445 19664990 19677492 19685111 19709072 19695823 19671524 19690497 19734440 19766318 19652488 19663022 19712599 19670919 19718020 19676188 19693193 19705198 19721941 19683157 19670550 19676427 19689517 19675354 19700048 19650159 19657251 19665742 19673336 19701754 19725748 19699489 19685155 19690870 19714948 19729272 19716333 19672020 19737260 19755693 19683559 19729382 19694682 19699255 19751350 19668984 19637169 19738595 19739286 19711530 19676587 19708956 19690135 19672846 19671551 19716091 19709345 19693324 19738986 19676704 19677670 19669807 19698067 19729061 19647677 19718931 19723353 19765239 19633095 19695958 19675285 19722007 19708257 19701389 19713434 19688212 19710169 19747016 19733771 19704306 19724486 19722645 19782601 19672446 19718275 19741786 19670364 19658954 19735911 19783720 19738733 19695970 19706394 19744639 19708563 19734594 19702043 19734177 19664224 19706296 19735696 19701814 19762175 19702927 19753747 19708783 19726770 19715490 19735278 19724976 19797292 19741745 19751123 19715337 19762724 19757698 19704277 19749582 19747269 19721508 19707819 19731954 19726581 19726733 19714481 19707314 19735571 19816045 19726362 19731334 19796303 19723996 19763802 19714665 19759630 19690559 19725756 19762691 19705495 19772460 19696266 19761380 19786088 19727303 19731709 19714374 19745355 19754378 19717835 19723830 19714716 19737550 19734293 19783391 19736630 19767427 19737121 19741856 19712320 19788078 19744097 19792924 19732280 19768151 19689362 19775087 19793733 19775750 19805184 19739014 19722155 19747845 19800674 19724010 19761670 19785819 19743155 19773153 19793657 19752563 19744349 19761451 19769630 19759217 19731533 19769639 19809519 19775207 19748762 19814533 19775360 19749208 19739339 19771658 19751800 19759685 19771521 19765514 19712965 19751803 19767233 19800750 19731873 19835653 19780110 19752675 19782515 19729565 19766895 19768251 19803139 19789220 19774173 19829221 19776344 19776168 19811587 19801468 19790605 19799979 19749018 19736014 19764070 19785380 19805925 19788118 19743090 19768773 19763251 19818706 19761123 19759395 19755318 19788768 19762269 19725616 19731195 19808253 19753063 19803819 19763512 19729656 19753032 19780570 19837084 19762656 19821412 19795514 19792028 19782148 19776842 19785751 19788953 19749498 19780293 19832884 19774233 19784797 19797611 19849387 19800130 19785483 19808871 19799074 19882930 19777922 19820416 19790374 19805159 19810569 19772093 19763103 19784865 19819353 19802939 19769205 19826487 19764702 19820445 19751774 19755596 19785259 19801779 19790271 19769415 19761904 19791079 19799112 19861335 19787916 19873303 19827862 19810792 19759840 19778163 19836248 19771682 19820362 19813064 19811404 19780465 19829360 19790472 19810946 19805817 19838915 19829881 19784086 19776100 19798914 19812795 19812340 19751262 19796862 19801503 19831588 19827528 19845587 19840772 19829814 19790483 19832529 19801371 19812925 19776471 19928149 19858176 19850392 19823560 19837420 19844072 19838789 19820413 19875944 19806947 19786547 19806534 19828781 19891774 19858322 19838323 19862623 19876948 19860723 19816374 19816573 19870993 19766801 19823307 19859793 19842059 19882798 19850625 19813300 19845866 19838895 19777603 19794535 19844118 19772851 19798930 19820021 19830267 19843762 19839502 19819797 19846603 19828079 19845948 19842850 19801443 19790238 19826680 19884184 19835632 19878169 19899976 19781800 19842052 19864792 19811900 19792236 19802816 19795653 19853955 19796421 19854030 19842273 19844181 19873668 19875891 19844584 19835577 19856400 19822897 19871480 19830333 19838912 19855717 19901157 19813367 19842722 19889449 19869494 19847863 19922560 19801395 19850141 19824734 19876212 19824050 19809230 19903847 19828245 19846751 19863176 19942731 19830596 19821788 19870436 19859470 19873235 19822361 19852777 19865235 19883863 19941797 19894060 19885670 19912614 19823572 19911701 19854827 19908579 19841553 19826307 19899430 19851081 19877796 19907764 19831984 19886286 19846671 19884092 19864401 19843657 19863255 19880210 19862612 19842417 19851782 19886555 19895152 19897934 19878208 19906142 19882110 19901349 19854637 19897599 19849620 19876600 19875521 19887156 19913684 19904428 19920471 19918459 19826265 19909795 19877232 19885590 19907690 19883943 19878459 19863595 19845139 19849819 19837478 19836000 19909159 19902146 19838627 19843494 19886051 19860133 19881425 19878524 19893639 19924452 19889187 19926109 19859907 19939762 19880554 19890904 19896203 19896766 19914052 19959186 19916202 19914804 19911703 19903412 19926158 19869296 19907283 19898679 19852317 19959849 19880013 19882131 19918669 19872413 19925367 19890989 19875949 19869491 19816225 19877397 19865122 19922705 19893735 19912340 19935899 19941466 19899470 19899548 19879002 19889194 19896122 19911312 19933482 19921222 19920691 19974943 19970492 19878520 19891506 19929033 19965610 19909914 19911506 19925336 19942591 19921029 19894180 19903157 19921704 19912674 19914341 19940441 19974213 19925957 19900500 19944360 19936653 19888126 19928116 19891233 19928640 19917514 19918754 19937759 19935649 19912030 19938968 19928093 19860778 19945519 19904458 19886339 19915902 19933992 19949406 19926389 19918180 19926657 19930691 19922142 19964675 19940603 19924972 19961534 19951086 19972752 19951297 20000956 19954917 20020316 19953036 19911723 19925920 19886135 19946838 19934154 19921846 19924780 19982446 19911224 19978816 19958118 19972084 19979027 19918961 19926991 19883214 19938193 19969961 19960503 19950529 19957478 19987198 19921281 19929193 19932742 19933847 19954819 19955315 19940517 19914658 19977629 19962189 19943454 19921012 19959547 19982478 19977138 19947655 19950761 19939883 19916164 20015583 19957452 20014236 19996556 19973901 19966595 19969989 19974999 19955641 19919179 19968521 19939954 19964743 19989404 19938811 19975865 19911686 19960141 19968886 19938384 19965777 19955232 19997427 19982628 19966858 20027515 19960334 20000583 19959040 19940359 19948811 19935977 19964132 20014380 20013894 19939734 19989656 19985400 19985422 19979828 19954962 19935164 19972917 19985573 19976381 19974361 19984021 19946272 19983093 19982867 20024793 20022655 19964391 19909632 19958655 20040742 19947832 20030644 20001315 19953288 19981182 19980792 19965311 20016299 20019600 19991908 19992162 19961167 19989438 19987224 20033933 19982169 19978708 19979163 20028723 19971225 19994106 20013215 20001863 20012637 20040055 19945243 20019118 19946394 20000491 19937705 20011984 19992808 20048633 19946952 20006414 20020265 20028708 19970239 20012008 19978623 20037146 19945653 20065383 19981974 20041971 19995923 20053238 19987696 19968634 19984034 20019652 19981325 20018054 20021479 19978695 20052826 20052418 20016592 20017985 20009639 20015443 20027144 20001322 19997546 20034806 20037193 19973812 20045571 19999635 20013725 20051323 20020400 20036121 19998405 20021436 20059542 20088874 20031995 20042632 20008352 19956996 20005377 20040096 20012100 20060527 20028524 19968939 19998643 19995025 20028320 20032218 20034119 20036022 20000622 20061085 20041923 20000496 20050033 20036880 20047815 20035903 20013040 19982140 20001962 20035951 20041616 20030356 20042384 19998908 20041769 20004488 20024044 20041130 20011772 19979942 20014711 20056420 20008812 20062639 20017777 20012261 20034019 20055328 20061089 20069650 20011516 20028669 20011356 20047635 19999119 20028948 20002716 19995765 20025940 20014853 20044203 20075598 20028598 20069510 20036771 20068340 20009173 20106119 19991604 20051040 19999433 20058281 20004540 20038404 20049195 20078303 20004547 20057035 20060518 20047885 20010423 20076601 20041317 20078727 20072754 20082432 20022309 20031583 20061828 20031457 20083481 20058549 20052442 20065805 20029498 20047798 20001979 20060250 20076473 20015895 20102838 20075395 20048704 20030617 20019783 20044047 20066934 20076412 20054521 20032662 20089100 20057558 20098843 20054149 20028824 20108876 20077333 20033022 20058846 20053569 20070749 20043270 20075392 20095443 20038754 20085288 20090412 20045157 20081154 20091414 20040292 20096647 20070261 20054127 20110665 20072613 20051140 20098555 20015564 20060449 20072300 20117618 20075468 20071503 20079989 20098760 20020075 20084630 20049860 20043283 20089377 20066209 20070174 20075194 20078485 20096455 20117949 20108690 20161758 20053674 20100919 20091936 20060389 20110430 20021846 20049199 20074471 20091987 20120255 20069865 20058687 20075098 20060895 20083521 20074974 20075805 20059236 20103262 20104172 20074962 20073865 20086456 20049066 20025184 20101168 20054032 20082099 20135078 20097982 20085561 20114642 20065916 20139750 20102432 20190511 20123651 20109878 20099237 20107897 20134057 20121796 20111635 20096193 20117731 20065531 20076121 20085834 20091401 20122876 20121054 20122337 20103142 20115927 20118057 20150387 20131574 20087331 20089740 20110775 20032850 20034354 20115244 20148749 20102464 20161945 20122472 20111824 20104701 20123380 20089725 20131255 20109818 20069196 20099517 20156855 20172275 20144481 20118627 20135261 20075245 20139349 20109074 20137315 20093743 20090173 20127216 20137627 20120956 20106045 20126479 20111961 20112535 20125406 20141496 20085500 20098019 20110061 20117510 20112599 20134777 20141901 20156055 20098358 20171552 20173176 20111009 20164439 20138168 20124115 20095847 20112221 20078950 20098942 20119793 20130147 20146576 20116457 20136653 20085820 20096855 20107267 20180987 20108204 20157264 20174679 20168171 20115462 20142107 20137555 20149944 20160684 20073594 20108287 20125713 20128774 20116381 20168635 20125254 20114129 20134674 20177335 20144535 20118016 20117410 20135965 20141511 20146939 20171603 20129474 20140877 20155523 20157892 20123269 20128714 20154732 20147010 20159587 20150857 20148352 20141250 20130952 20159247 20152729 20130608 20145526 20134051 20150728 20112670 20134033 20170717 20155776 20151724 20163040 20131057 20173951 20185744 20118200 20177327 20140195 20148057 20155367 20153723 20171760 20130475 20190497 20170739 20135790 20172653 20128308 20129862 20132083 20172221 20129257 20136083 20186042 20150759 20200643 20120983 20189246 20173018 20170653 20158409 20188826 20147149 20157796 20146013 20174354 20158921 20156131 20177786 20199918 20148936 20155805 20116524 20119501 20228203 20191858 20123859 20184642 20173680 20194136 20119359 20195732 20134867 20147520 20141464 20158329 20160647 20189669 20117002 20183134 20152799 20174403 20158022 20202352 20175589 20180502 20217412 20208833 20215354 20149369 20216168 20148426 20233733 20219800 20208756 20186301 20172312 20191422 20192843 20173274 20169465 20176882 20173867 20187694 20156459 20160064 20182550 20177540 20156676 20236212 20196558 20157694 20203386 20201026 20197216 20179090 20240290 20176811 20189626 20198531 20201599 20204605 20131959 20171055 20189318 20222014 20241019 20185894 20193976 20217233 20213742 20183818 20149597 20177972 20191352 20173312 20241354 20210285 20221716 20223555 20199697 20221418 20212468 20214387 20246432 20237387 20192789 20251068 20171746 20163402 20174033 20223080 20235288 20224592 20210356 20205963 20165488 20216243 20166993 20220480 20211846 20238098 20233504 20206454 20190614 20211982 20235529 20223021 20230876 20209033 20159788 20192451 20230059 20212626 20162470 20221360 20169261 20160891 20185279 20189209 20230758 20237082 20230654 20207909 20253709 20195294 20214890 20236744 20175436 20212158 20192271 20159031 20231255 20269063 20216634 20213798 20219478 20170800 20252756 20207409 20248545 20231584 20199017 20206689 20234082 20208258 20212789 20239921 20213332 20270849 20227420 20224039 20196867 20263657 20211887 20175237 20232839 20200511 20241666 20260513 20237422 20214112 20228343 20177458 20217450 20239472 20246073 20242493 20233045 20214678 20230324 20237716 20259991 20226975 20238374 20239044 20238728 20228937 20248621 20262159 20260979 20213370 20247362 20192331 20276396 20223324 20239418 20273470 20235916 20176953 20222894 20298099 20278378 20233380 20206747 20164463 20303374 20210282 20253796 20261396 20272670 20262699 20278084 20278169 20291994 20279687 20260893 20248182 20237990 20205695 20296329 20212819 20213727 20241162 20232281 20207672 20314295 20237088 20222100 20286546 20247795 20274087 20262944 20263930 20295627 20263425 20246649 20233581 20241890 20243198 20324923 20244201 20265655 20262999 20256019 20252832 20292962 20257798 20259562 20236273 20257531 20204728 20239513 20251281 20284235 20174404 20243056 20254511 20275568 20283012 20208806 20295581 20283792 20264443 20259886 20252180 20296924 20349063 20287260 20309596 20268573 20296757 20291799 20283791 20289881 20275766 20275079 20293569 20234250 20272338 20268569 20307938 20286628 20245297 20288383 20252581 20274674 20327303 20297501 20291975 20291960 20311154 20263703 20275710 20269646 20290144 20282353 20331195 20261155 20268387 20300173 20247779 20271727 20292799 20313299 20263798 20300093 20347000 20318541 20376597 20271043 20321019 20318555 20297403 20251665 20338588 20309621 20275050 20339485 20273387 20331861 20301891 20356243 20300752 20372905 20316472 20304826 20339648 20346549 20318453 20340865 20274721 20284299 20314624 20352102 20290882 20371947 20304647 20301290 20351140 20300354 20309580 20333281 20255653 20276375 20251005 20239007 20299315 20287068 20307634 20339186 20274303 20374497 20357845 20308758 20314522 20293025 20310005 20333186 20317697 20255471 20362743 20312377 20340171 20352449 20340046 20331157 20335934 20301143 20336761 20355465 20292908 20327443 20328921 20313256 20344383 20363163 20329360 20307800 20329910 20338332 20346405 20327177 20348820 20302647 20366996 20312682 20305108 20321110 20344814 20349057 20291740 20278378 20348639 20305324 20312910 20293386 20338915 20344248 20347252 20346529 20275646 20375537 20316107 20241015 20329978 20318755 20330981 20370262 20386300 20372199 20341095 20330550 20345296 20330202 20317160 20325674 20279911 20291617 20382110 20371476 20350012 20313450 20349807 20385311 20336310 20381228 20303926 20333907 20354765 20335456 20346702 20419292 20333605 20379924 20344792 20368930 20333345 20340360 20389684 20383032 20312260 20361375 20334634 20392754 20338911 20397207 20392255 20395309 20371848 20401235 20315977 20352182 20351349 20365297 20412015 20406566 20354796 20393172 20312587 20325732 20335580 20358218 20355257 20343561 20324860 20345194 20373586 20354137 20410831 20365509 20369157 20344210 20361117 20337716 20363961 20316621 20366543 20388165 20385561 20361759 20333468 20379640 20336079 20325450 20369301 20386801 20335142 20390454 20411289 20377500 20375782 20367928 20384607 20420708 20431905 20381041 20328469 20399328 20385227 20335215 20383879 20402508 20421945 20372302 20359486 20337952 20341007 20392899 20402324 20436143 20365578 20438801 20304844 20403643 20428868 20432857 20394745 20319677 20388000 20334790 20401679 20411943 20436641 20328290 20428925 20385762 20428116 20375669 20423704 20441213 20375557 20396678 20419873 20422599 20420412 20418773 20399930 20388807 20421295 20396683 20400616 20464122 20409651 20375804 20396914 20410040 20467033 20416126 20434018 20379894 20397217 20446666 20371054 20374244 20362980 20341225 20410356 20392213 20383488 20403918 20408544 20443393 20402790 20434040 20400157 20421729 20419282 20370550 20367056 20393260 20398942 20401396 20426597 20336116 20424232 20412223 20433290 20453792 20395030 20418132 20465540 20408809 20361075 20458891 20470932 20407967 20430074 20444290 20447816 20397154 20466486 20472984 20444335 20439783 20463455 20415756 20453042 20395172 20424051 20435392 20397894 20387247 20409262 20443444 20431159 20361930 20490015 20459366 20436814 20480771 20400432 20465580 20401094 20456444 20405338 20434600 20399588 20460833 20451671 20462903 20463601 20420886 20424512 20484887 20389914 20427512 20453904 20436548 20422065 20454313 20428051 20427488 20479216 20423953 20470178 20390426 20436686 20402488 20441622 20473974 20433875 20467626 20455366 20480168 20411538 20450635 20374937 20482319 20437472 20487768 20499750 20456359 20455862 20437594 20490953 20483294 20465898 20491122 20508044 20431095 20418432 20430484 20399654 20449483 20493787 20464149 20460579 20485958 20478580 20463953 20459213 20447617 20449023 20523676 20467424 20446794 20498203 20450066 20502999 20480140 20417172 20452757 20425356 20486525 20427689 20475092 20499796 20456481 20466640 20425590 20436464 20471562 20422060 20504650 20465991 20431506 20469346 20451286 20475954 20471393 20456026 20444882 20480670 20476702 20501003 20475719 20459884 20452940 20458013 20450558 20472271 20457281 20497790 20512327 20445382 20504550 20425197 20462138 20468305 20460162 20465295 20421636 20487148 20512650 20499865 20526313 20484337 20507459 20499690 20457595 20510743 20547976 20469808 20484415 20543095 20527755 20434115 20512710 20471022 20496549 20541590 20495445 20520629 20568268 20494314 20529395 20537840 20486976 20505290 20495247 20494335 20478396 20491177 20499829 20438610 20513226 20507592 20471340 20458908 20517686 20510770 20498069 20534046 20519029 20561083 20535585 20583907 20512149 20476238 20497404 20526571 20492268 20505671 20512056 20547922 20518939 20491498 20486038 20495021 20493611 20476284 20469628 20443030 20520332 20535168 20490124 20468645 20523899 20537909 20547701 20561024 20491668 20505559 20536368 20476961 20476426 20489587 20500045 20545571 20503628 20532929 20474713 20511338 20480518 20523371 20480082 20519603 20477676 20511228 20481423 20504514 20557186 20470819 20510769 20518016 20552774 20517555 20563653 20496191 20495567 20499439 20515639 20561155 20560281 20538149 20489446 20510659 20490539 20594134 20494181 20545116 20513323 20542652 20503091 20511259 20506622 20557843 20569738 20493607 20572868 20576790 20532687 20490284 20554971 20526033 20537176 20494604 20537655 20548800 20521286 20533706 20489903 20523338 20494023 20515128 20583449 20558227 20508692 20543790 20504447 20543538 20511073 20555983 20571523 20547950 20586765 20498835 20532720 20560047 20573431 20526866 20512612 20511230 20522047 20519434 20500669 20548888 20557938 20574533 20551925 20498379 20550066 20585403 20554976 20519706 20577833 20510775 20574091 20520089 20531220 20573631 20580209 20563829 20547370 20574197 20556683 20543678 20544006 20544966 20571479 20511406 20533705 20485953 20531006 20540087 20504538 20581780 20589427 20569400 20525939 20541334 20564146 20565921 20497791 20591794 20549502 20589887 20538131 20537037 20514669 20545907 20525297 20534012 20541910 20549190 20573753 20551933 20554788 20525071 20558781 20563939 20582138 20528210 20601459 20563115 20539585 20549255 20585336 20582116 20566383 20626624 20603331 20633755 20575298 20576199 20598137 20525211 20551303 20571529 20584283 20554290 20590498 20577185 20621631 20564884 20620581 20590470 20608668 20579115 20525620 20609140 20552025 20604297 20571752 20615187 20615765 20541988 20592308 20595772 20568140 20566738 20596853 20545895 20546567 20597410 20591179 20593024 20601849 20588074 20596162 20595120 20527698 20586195 20655911 20565349 20629837 20536192 20647167 20614202 20580789 20602092 20635695 20575946 20595200 20546432 20596297 20542294 20602946 20596723 20575745 20568737 20584433 20560599 20564937 20609731 20630139 20632491 20600702 20581573 20595127 20539566 20548378 20546038 20570497 20568573 20560124 20577025 20578228 20558543 20603824 20590365 20539185 20569874 20649694 20628188 20603537 20615055 20597410 20580764 20580857 20608615 20617372 20589470 20562150 20598084 20623993 20606404 20609441 20660066 20562066 20612384 20588980 20654415 20603617 20637624 20664974 20647019 20612158 20653230 20591516 20611750 20625843 20612067 20635420 20611118 20607728 20610545 20595812 20591737 20609545 20589461 20620645 20620434 20637426 20581717 20610342 20608294 20625397 20568713 20643341 20631723 20612627 20602688 20593339 20621789 20621077 20607317 20580028 20630725 20633474 20664656 20621930 20603373 20674584 20577445 20648296 20619676 20663861 20639224 20621237 20660128 20609993 20579279 20617940 20594097 20575434 20592662 20684575 20667461 20572670 20633217 20627342 20604539 20657271 20606678 20671724 20623413 20617017 20563862 20646776 20604101 20633984 20653609 20617164 20643088 20608443 20600623 20615107 20611211 20617527 20651886 20624787 20611434 20664749 20632989 20641900 20603678 20626131 20665892 20643112 20582778 20596853 20659468 20617560 20628252 20597641 20681073 20645939 20666939 20672993 20585705 20682191 20670908 20699674 20646745 20641745 20602894 20624068 20699038 20682551 20637638 20677316 20653412 20676678 20638817 20672448 20581305 20637533 20607090 20644453 20643543 20678986 20655121 20688041 20594851 20665203 20690779 20672668 20659478 20654477 20693676 20577165 20648163 20670334 20660743 20681219 20640848 20673141 20711675 20666724 20615003 20644700 20669713 20678345 20649911 20623740 20710706 20683496 20667962 20682362 20689799 20634720 20675712 20654921 20661460 20661226 20684304 20663507 20641094 20716647 20688883 20709912 20705795 20707520 20636917 20667347 20660069 20684664 20652348 20695701 20664932 20646043 20704137 20673780 20669138 20720514 20691101 20664547 20620045 20644047 20658682 20670445 20707320 20674001 20647089 20629918 20700774 20613260 20679115 20691864 20698915 20640001 20673778 20680124 20623742 20669323 20665971 20647151 20683752 20677063 20667316 20711744 20719594 20641710 20668033 20674563 20633561 20639672 20716948 20660378 20703889 20732065 20736159 20651378 20712781 20637179 20714976 20701832 20684355 20695188 20647282 20665497 20736784 20704989 20683347 20692294 20668084 20694218 20701042 20750437 20697600 20743606 20677156 20689487 20773618 20689098 20733492 20713494 20675000 20709298 20707427 20670491 20674219 20681673 20719763 20744325 20675297 20687372 20719375 20697715 20714094 20669323 20716012 20763394 20731348 20724062 20714200 20647426 20716572 20713490 20727950 20686941 20698098 20699073 20734298 20725303 20706173 20696828 20705101 20712459 20743976 20738588 20746956 20714778 20712036 20739138 20715201 20681950 20778648 20689383 20721567 20765708 20749640 20768716 20723226 20695359 20693500 20684090 20728305 20697991 20735656 20752508 20786447 20735030 20745332 20699605 20719522 20736903 20725330 20714657 20730785 20742257 20751288 20682834 20724813 20740364 20679739 20758129 20782652 20696956 20730809 20784402 20723058 20724468 20730159 20751780 20708040 20730841 20759201 20777114 20732184 20715491 20759504 20723930 20742993 20731217 20752978 20738566 20713826 20715543 20713529 20686756 20735787 20752223 20763208 20729536 20753433 20760384 20743905 20784937 20740139 20790976 20757837 20758491 20774950 20750322 20715767 20767475 20762953 20674793 20762439 20783754 20721975 20766242 20716332 20771719 20750908 20714193 20804008 20714091 20747415 20744332 20758782 20741541 20737016 20756350 20733405 20727410 20727109 20753083 20775235 20759615 20772958 20792170 20768714 20740536 20785473 20738341 20759150 20757261 20797414 20784088 20791390 20787695 20779356 20763524 20792487 20732447 20819746 20775580 20759111 20808695 20787767 20800173 20740467 20756909 20724546 20730877 20760880 20795890 20692471 20744459 20781794 20768814 20844391 20759274 20787719 20728911 20751486 20778099 20762854 20795922 20691432 20788051 20802691 20746423 20763901 20772556 20780990 20731133 20788431 20761164 20780258 20781026 20809118 20748412 20760474 20810194 20714151 20752626 20802513 20755972 20807059 20840172 20785066 20788687 20776870 20776580 20771553 20827309 20814647 20748522 20819092 20760809 20744748 20804446 20772560 20812367 20765725 20774201 20760843 20795625 20793449 20817776 20802521 20769505 20857950 20748888 20826825 20792511 20810730 20847427 20858518 20844843 20780390 20769249 20797023 20845009 20827017 20805566 20823431 20838999 20803624 20851092 20807888 20817532 20755183 20794288 20863510 20792495 20797154 20805459 20773468 20815649 20858459 20812266 20844569 20794778 20817669 20787902 20783155 20842150 20819336 20809401 20810915 20847512 20809423 20818655 20796784 20810920 20856392 20802707 20803507 20849041 20840883 20780811 20799882 20803154 20828542 20840480 20841585 20778256 20861631 20797518 20800814 20818241 20826249 20851412 20822970 20803481 20848273 20836090 20802610 20832600 20832072 20880343 20866431 20810497 20851672 20830425 20853119 20842102 20806356 20841905 20873568 20825194 20856899 20873965 20844043 20827426 20817996 20833127 20805383 20820818 20802976 20818240 20870941 20840919 20837785 20830248 20855930 20868393 20848735 20815962 20885795 20835824 20794126 20842243 20864517 20859368 20793136 20882551 20870030 20829469 20805344 20857958 20860109 20881112 20864389 20851290 20867045 20813499 20846557 20836006 20823648 20821620 20852949 20828519 20827624 20814271 20828287 20894044 20840599 20851163 20854899 20854272 20887214 20839943 20852614 20864805 20912251 20842427 20845681 20852640 20874816 20892519 20876474 20868318 20825524 20876076 20826733 20842604 20885276 20864293 20881175 20844577 20890622 20825658 20887707 20794164 20871531 20792956 20830358 20842514 20844598 20865644 20820996 20868475 20883538 20861619 20864497 20876951 20871793 20826378 20855496 20829266 20849581 20816801 20880733 20877194 20849019 20853283 20836294 20894972 20855852 20904619 20852262 20833938 20874494 20903283 20875386 20891383 20867928 20886321 20844042 20881407 20893738 20896891 20836613 20914299 20879632 20888759 20856965 20867477 20897943 20874712 20898897 20892338 20965283 20901948 20884910 20923501 20858058 20926351 20871078 20812818 20885551 20898231 20858967 20855175 20903517 20897887 20867584 20894568 20839714 20906050 20842273 20895346 20875897 20874908 20852145 20914641 20881837 20895709 20923453 20882421 20882799 20962419 20836978 20885231 20863144 20880811 20893306 20863658 20891280 20920369 20894787 20912315 20923343 20927757 20861394 20930199 20901612 20902971 20889171 20931677 20850005 20853214 20930159 20947130 20892508 20913724 20932013 20916291 20829021 20906042 20893875 20860846 20949491 20930575 20923968 20910024 20901224 20935273 20913957 20896442 20932016 20852368 20872990 20872698 20915927 20971533 20915105 20935498 20911267 20898786 20911601 20896405 20931913 20948446 20928581 20936755 20935964 20927619 20915555 20876365 20906541 20886283 20978692 20935901 20924412 20847821 20974438 20886005 20930810 20948341 20886861 20993638 20919971 20910437 20883170 20935001 20946987 20968033 20943995 20933928 20952425 20884500 20913676 20890509 20926369 20941667 20920472 20944922 20957973 20952897 20905215 20905134 20938919 20914679 20961717 20927129 20929533 20925910 20970014 20941148 20958062 20926132 20917296 20940839 20998695 20948954 20928054 20977465 20955274 20988161 20934855 20945817 20960756 20956177 20903659 20961866 20903366 20957285 20961170 20947579 20966750 20983287 20963855 20964675 20952452 20981994 20913606 20978059 20979826 20941017 20920954 20893344 20931471 20963004 20950894 20959941 20942266 20969742 20941960 20915029 20984627 20969229 20943530 20954207 20952783 20966177 20962437 20943899 20979284 21002186 20935600 20983308 20932320 20999577 20938913 21008887 20986707 20964113 20917430 20980253 20987378 20965675 20888831 20941407 20958847 20940586 20919020 21000838 20977373 20929691 20968424 21000295 20972104 20950864 20925097 20939073 20951470 21008614 20956584 20967579 20975341 20971812 20984589 21008803 20965986 20965784 20963054 20943791 20960199 21010707 20998777 20953027 20929959 21026009 20996265 21004676 20992229 21008301 20976252 20960395 21015575 20997626 20973454 20943891 20958695 20976651 20997583 20940054 20950792 20933165 20953649 20956076 20963860 21006403 20947646 20963688 20973836 20996944 20976526 21006534 20971915 21042342 21061822 21036360 20942792 21005729 20971852 20996872 20958838 20975246 21038955 21010759 20994022 20992899 20994358 20980597 20974406 20987610 21034029 21014253 21004627 21040355 21005381 21015533 21013399 21012373 20980226 21004491 21010711 20982069 20979817 21068512 21008337 20927566 21010877 21030098 20965836 21001932 20986938 20991112 21014063 21014727 21058352 20991641 21010772 20957391 20977941 21017440 21046221 21017772 21007154 20986357 21036343 21042148 21069899 20983603 21062835 21064090 21038843 20986838 21029890 20988674 20999109 21049837 20977081 21051618 21047616 21047453 21024447 21020130 21034111 21060379 21021805 20988165 21007886 21019334 21025227 21035762 20967620 21046742 21020195 21057841 21014535 21045909 21004344 20997676 21035568 21026367 21043649 21018653 21013695 20998344 21052029 21025679 21021787 20988332 21048657 21031417 21014301 21050515 21013983 21013989 21052014 21068609 21087848 21014958 21029107 21088373 21014836 21064046 21005178 21064720 20982264 21039713 21040254 21002651 21020842 21061820 21032751 21013198 20947382 21058670 21039282 21027744 21053839 21055299 21047949 21038839 21066977 21035364 21038004 21073599 21019037 21036411 21053814 21050940 21078506 21047219 21019398 21057273 21062266 21034718 21024308 21049367 21068504 21031228 21068045 21051649 21037000 21079544 21069943 21041919 21066342 21086632 21056307 21030422 21028915 21007442 20997383 21023575 21022931 21030704 21058895 21008393 21066664 21066898 21073817 21039606 21022738 21078151 21076157 21006934 21060903 21045523 21001230 21107816 21040742 21079164 21058973 21082287 21054408 21068322 21048498 21041842 21044986 21068843 21054438 21068784 21096863 21060942 21052986 21057781 21046516 21041546 21083417 21044616 21067009 21041474 21041282 21093079 21099929 21084673 21077597 21120251 21084506 21077209 21017555 21068811 21060097 21053083 21084935 21076093 21114664 21069692 21122262 21105621 21113784 21052363 21097843 21058712 21093726 21064425 21065743 21040756 21126094 21086451 21099024 21044353 21036916 21043058 21066589 21034957 21058549 21063591 21079793 21088942 21062994 21044289 21125313 21064219 21129246 21093193 21141951 21116494 21049774 21103090 21104664 21091482 21097085 21058958 21096739 21097083 21148141 21124569 21130524 21093086 21046773 21065254 21069698 21039482 21112475 21122639 21123564 21080255 21077547 21145526 21082891 21086257 21122496 21032812 21118924 21078155 21113419 21066166 21125664 21085628 21077900 21064044 21118458 21143160 21168537 21127744 21123992 21121841 21128884 21097302 21083188 21098502 21097011 21156554 21112275 21128093 21118256 21077162 21103842 21145219 21059945 21132778 21127914 21053254 21084732 21139515 21110004 21092209 21085355 21133708 21138130 21176314 21143018 21163476 21174051 21114594 21125953 21167147 21150582 21112985 21108056 21119756 21124785 21087452 21090679 21083290 21183255 21200711 21128108 21122522 21094946 21204861 21136125 21090794 21137604 21140466 21131313 21113026 21121784 21153205 21137404 21070162 21103372 21135848 21144680 21120701 21162592 21112583 21151769 21231962 21166983 21125961 21123982 21141749 21115822 21120644 21093715 21141295 21170346 21142567 21166110 21143349 21150342 21091606 21142834 21103441 21159295 21179253 21110521 21160778 21057070 21131706 21149717 21150303 21137140 21193817 21152247 21154753 21111693 21142637 21122834 21114419 21135138 21144187 21183258 21173471 21169368 21172724 21162549 21127878 21160798 21117871 21166336 21161827 21184715 21172999 21122495 21157541 21133574 21133655 21134441 21119746 21132587 21136351 21195573 21202376 21170204 21136200 21113034 21180506 21178390 21130721 21181204 21176595 21195052 21150123 21150059 21191776 21141363 21167593 21101510 21144235 21157854 21187493 21207342 21166267 21185416 21201335 21173693 21181766 21183600 21167006 21179029 21166882 21138538 21154103 21164671 21147130 21159607 21140950 21161438 21144056 21153707 21137603 21141374 21179327 21150479 21192668 21119177 21147382 21164714 21180407 21120925 21191065 21168597 21154933 21188044 21158335 21183952 21149139 21183308 21129782 21212396 21179771 21145697 21171060 21195618 21160088 21192422 21125409 21169876 21157615 21174385 21170652 21193204 21170351 21212415 21195073 21162449 21180621 21172276 21202644 21175209 21151353 21169683 21208939 21264219 21160326 21172648 21219069 21194531 21208959 21121522 21214638 21226156 21217613 21171935 21185842 21237654 21208177 21207968 21209385 21202368 21149735 21206002 21151350 21177499 21227464 21218456 21160432 21129035 21194460 21218699 21167108 21158630 21203116 21184199 21167444 21222691 21205080 21235435 21114661 21182159 21197134 21158096 21181518 21247193 21229638 21186051 21190533 21204333 21192648 21167838 21255666 21201226 21209726 21198472 21229000 21223713 21162203 21181670 21266419 21261381 21174190 21185569 21183849 21202578 21141370 21224271 21166895 21245237 21202738 21263842 21199643 21212799 21193229 21232011 21170445 21253616 21237403 21212478 21206802 21255716 21165104 21205049 21244279 21165246 21192463 21206502 21225357 21201825 21173125 21240589 21272576 21191932 21243202 21255709 21156544 21202139 21243533 21231925 21233101 21225674 21251877 21188473 21119557 21250942 21186162 21230899 21209368 21263228 21272335 21225598 21252806 21199735 21237091 21241607 21214246 21268904 21218837 21213731 21263128 21266050 21240063 21270276 21244178 21215561 21235872 21257593 21242192 21220041 21248010 21238083 21313988 21255662 21245651 21249546 21223796 21229434 21234552 21257086 21233867 21262421 21257980 21262801 21263702 21244492 21188103 21291492 21247257 21302412 21241917 21275901 21208813 21266647 21269737 21241871 21247619 21297191 21270479 21257498 21271726 21221149 21286065 21270364 21290592 21215494 21234092 21257030 21277154 21262102 21235138 21271472 21232522 21223690 21278443 21209875 21186978 21260123 21252978 21228639 21265911 21229928 21254422 21278462 21256287 21263058 21242563 21286616 21290882 21224753 21292029 21243793 21293666 21290871 21256578 21265017 21308220 21191826 21242370 21219279 21292415 21258752 21318445 21246363 21280850 21305684 21231097 21263173 21292452 21276422 21237752 21270141 21295263 21268699 21270905 21312767 21270548 21297527 21239172 21329399 21267928 21228846 21275154 21267479 21308239 21254125 21268827 21301759 21265342 21291715 21283639 21276367 21281095 21282297 21287926 21295715 21240997 21275612 21248103 21271143 21290827 21293049 21276486 21274043 21269131 21239046 21274414 21298592 21256484 21288928 21268505 21335180 21239066 21303054 21307598 21288059 21352825 21327832 21286359 21258183 21305877 21287657 21315664 21253745 21261898 21290919 21315264 21295774 21276757 21302955 21273474 21319427 21297724 21257832 21297873 21309209 21231637 21308565 21328703 21326705 21308259 21297951 21306439 21360997 21324170 21337392 21262859 21299981 21341235 21299683 21292063 21340203 21265116 21306786 21346439 21319910 21307067 21289123 21322131 21338276 21313678 21314281 21311306 21339147 21315697 21293116 21312675 21357039 21249530 21321072 21320992 21336429 21245005 21313670 21327279 21303034 21273262 21279218 21324390 21368973 21287460 21309404 21324740 21370386 21275768 21342284 21326382 21326362 21301682 21289685 21285984 21360425 21325686 21348869 21356439 21300599 21300391 21363869 21344338 21327293 21320375 21331554 21288630 21336000 21317655 21342430 21327918 21294573 21327987 21354318 21352600 21297899 21330725 21335358 21349438 21281769 21384660 21322175 21364133 21330185 21414731 21388883 21321996 21294438 21314728 21311733 21394670 21340439 21348284 21310842 21346418 21295051 21384163 21361967 21321104 21354590 21357039 21379965 21346024 21356813 21284995 21324085 21356103 21374936 21393386 21364438 21343055 21359600 21358110 21357941 21346437 21350715 21363556 21358168 21338331 21326078 21365900 21356699 21331127 21376283 21387982 21314625 21343684 21381395 21347467 21390939 21329798 21336017 21342871 21328066 21351601 21392733 21348483 21406559 21396627 21322598 21370902 21360481 21362638 21362277 21403265 21355095 21349684 21363886 21363530 21428566 21365314 21380111 21382993 21393516 21364462 21365679 21341615 21385275 21346718 21382568 21378738 21403643 21358285 21343060 21385678 21346213 21345030 21326913 21378654 21331775 21390199 21380297 21363424 21376601 21352026 21396571 21380383 21391608 21385656 21367086 21428709 21376036 21394223 21373530 21427445 21381052 21368380 21385972 21380703 21396172 21445115 21389271 21454488 21371225 21331030 21415661 21424579 21391595 21394996 21356778 21387221 21371385 21362510 21382759 21360841 21443070 21370498 21375536 21420682 21414658 21350756 21430655 21392350 21366311 21447184 21357095 21377859 21416148 21387543 21378483 21357972 21382189 21329412 21404632 21406574 21431391 21367043 21424946 21418931 21403232 21422831 21445995 21434775 21374962 21372595 21405023 21440560 21358535 21374454 21442509 21419297 21323804 21377414 21382894 21443913 21441583 21424323 21399041 21436706 21407969 21423388 21400292 21415804 21399479 21356364 21441164 21418074 21409780 21443645 21368667 21402619 21419143 21418471 21411792 21408453 21438961 21405406 21375329 21384079 21432379 21351386 21396670 21427425 21437025 21461127 21389363 21429614 21447506 21457968 21468982 21422658 21407709 21464431 21395747 21453313 21450342 21388107 21430525 21409119 21413220 21434105 21399511 21441136 21455497 21464173 21400889 21410822 21435666 21455141 21404237 21441437 21487469 21375337 21483820 21449918 21421737 21438654 21450714 21467554 21379761 21440788 21404446 21389820 21410053 21350287 21376538 21454600 21421409 21437906 21429686 21469563 21424296 21459734 21433896 21453400 21463352 21471668 21365503 21480580 21439505 21488314 21475827 21403874 21517395 21437677 21457998 21426135 21457857 21420856 21479038 21475113 21426026 21412514 21455934 21461075 21441904 21477916 21459875 21431768 21452985 21451378 21510066 21423133 21432674 21449380 21464292 21479572 21453865 21431531 21454414 21441221 21474135 21448133 21408768 21440717 21436934 21466724 21428264 21485434 21487211 21475208 21418257 21487341 21414290 21444304 21540469 21469813 21440412 21463260 21496490 21479509 21477881 21479869 21458858 21493410 21476225 21424934 21443218 21519409 21511684 21502472 21463164 21542999 21475108 21482996 21480994 21462932 21486936 21491945 21462186 21470811 21453056 21443447 21485151 21441685 21499546 21472289 21450045 21524027 21486465 21504524 21471059 21460168 21451101 21517865 21488781 21505876 21446419 21472304 21524771 21495662 21474973 21544843 21540339 21524987 21496941 21479291 21486365 21487689 21484575 21566101 21470540 21497706 21491060 21515928 21470833 21506061 21503569 21487949 21538751 21467815 21504834 21544302 21479728 21499033 21524069 21530227 21491882 21543376 21521870 21486468 21473452 21522205 21486062 21455565 21451557 21532738 21552089 21487782 21429206 21513034 21487563 21494110 21490961 21555852 21522339 21520985 21526730 21529754 21529035 21505707 21457141 21502773 21513714 21501441 21511032 21489569 21526393 21513587 21559298 21566833 21482828 21553556 21500896 21535483 21519794 21504672 21491009 21562620 21557283 21549687 21470479 21529907 21544731 21534132 21515937 21519274 21556827 21507443 21544478 21517318 21536011 21493779 21526362 21550018 21498672 21564787 21581628 21511614 21570455 21528375 21538712 21610117 21529655 21511112 21527865 21564278 21505088 21525333 21536073 21559409 21534361 21547066 21521282 21527746 21551480 21460948 21548398 21531735 21505718 21586929 21499829 21563469 21582939 21505573 21520344 21546447 21516494 21514798 21602646 21565171 21541639 21512751 21560842 21492623 21537818 21536333 21503559 21570342 21541501 21485578 21539763 21562883 21540685 21574582 21546546 21568459 21511315 21536015 21534696 21556714 21522054 21547874 21539713 21549565 21518457 21585489 21560486 21541306 21498423 21579839 21559019 21557693 21536194 21525749 21572266 21570548 21536747 21497048 21560360 21584062 21569699 21594123 21569564 21554148 21477950 21592415 21574504 21525529 21563514 21563396 21566974 21546624 21601886 21574068 21574509 21560178 21515248 21548224 21591560 21581020 21574831 21547498 21597684 21601113 21574798 21517942 21549122 21551315 21584307 21517211 21657645 21568428 21633930 21527209 21630043 21563323 21573970 21543267 21590618 21572226 21566486 21600905 21607500 21619355 21599384 21622429 21593071 21531002 21569225 21560933 21615050 21594339 21593637 21551743 21577420 21602137 21617798 21630310 21523195 21571609 21625964 21613524 21566317 21616071 21558053 21590617 21611467 21597479 21544371 21557767 21557828 21556104 21544051 21580807 21561190 21622690 21553985 21561769 21559227 21628977 21631013 21614707 21580139 21601249 21617243 21620570 21615974 21579424 21580568 21583345 21603938 21612524 21542958 21609419 21582856 21688015 21590503 21564816 21591419 21601507 21556926 21590322 21601690 21644583 21617577 21594315 21577489 21555274 21568396 21590344 21555575 21596771 21653068 21605550 21606210 21596238 21622926 21599724 21596540 21671688 21574378 21621029 21643868 21657012 21625004 21673731 21595005 21644142 21636094 21572630 21608657 21602691 21577939 21577793 21600100 21632958 21641502 21646430 21577285 21651889 21643115 21628288 21650357 21626658 21611290 21605857 21629230 21596351 21598641 21629827 21640257 21605887 21643556 21584229 21591112 21662737 21644544 21624162 21613632 21634183 21633598 21606032 21617339 21604286 21589393 21646561 21589094 21638646 21658123 21654274 21651238 21579091 21654084 21606034 21635475 21647120 21586915 21653053 21633475 21595650 21604825 21630214 21626255 21700462 21632350 21631611 21634152 21660333 21677450 21649626 21619526 21642127 21668381 21629910 21620810 21612954 21702235 21613891 21670391 21612356 21653113 21699954 21698937 21629941 21632324 21690833 21594391 21616245 21644698 21643413 21698416 21671552 21659784 21635948 21661996 21636450 21612346 21661537 21661243 21613663 21627214 21651195 21660019 21659738 21634366 21607934 21699365 21670641 21649111 21660934 21667020 21654724 21663748 21667590 21658397 21698898 21701025 21689745 21646510 21688609 21683990 21669742 21669768 21666514 21618452 21672951 21689107 21712119 21677043 21709098 21647260 21705508 21671153 21622566 21632942 21641593 21717244 21669164 21641290 21703394 21633565 21644862 21652103 21700665 21651975 21683319 21662885 21647805 21707951 21669238 21692217 21657305 21680023 21619320 21719553 21618055 21660853 21664420 21690619 21655546 21738317 21653077 21716456 21644063 21690966 21653403 21671885 21677940 21675323 21678323 21638719 21682604 21641315 21648021 21709297 21673104 21643808 21650667 21639239 21698496 21734629 21684920 21715045 21696644 21718138 21676400 21713085 21612450 21681021 21695673 21708549 21735806 21684609 21721285 21694298 21678743 21697470 21658374 21680334 21715867 21664645 21640611 21680510 21723357 21706707 21698633 21757589 21677576 21720145 21710790 21697861 21668820 21690637 21674407 21689225 21681910 21679130 21674405 21696739 21690273 21749082 21713925 21707991 21768707 21723403 21725924 21716218 21684327 21691151 21690853 21669661 21723545 21766143 21727813 21668229 21752408 21693210 21706556 21701405 21746401 21705281 21719745 21712520 21750215 21713346 21736072 21693501 21682846 21712174 21721512 21726496 21759733 21720416 21757994 21689814 21754534 21723380 21790665 21732560 21779151 21732918 21645362 21735279 21696006 21681392 21693363 21758340 21722785 21696621 21688243 21761244 21704195 21730844 21678579 21714901 21677343 21716287 21704443 21782748 21737444 21689273 21724190 21763895 21750995 21698619 21750158 21789470 21746667 21694641 21775477 21773565 21726622 21738246 21691630 21749127 21687776 21734020 21712044 21740547 21693861 21713028 21747346 21734822 21712826 21765542 21808944 21742595 21710014 21710337 21737790 21769402 21736171 21719879 21745891 21748246 21716676 21714321 21771503 21743198 21758293 21788779 21754503 21795514 21695612 21755461 21781797 21773067 21786354 21737813 21791440 21739717 21796764 21754461 21817362 21751266 21761297 21776585 21818414 21755995 21755224 21779266 21777469 21754119 21716199 21826545 21770499 21744362 21759004 21724971 21805347 21711079 21767977 21755272 21761217 21757679 21768895 21746058 21757206 21823929 21830661 21765592 21772808 21771162 21721556 21845441 21754810 21757981 21839116 21741553 21815179 21776240 21766120 21817165 21793671 21808097 21720133 21791071 21751894 21802591 21754871 21768842 21804661 21792128 21771194 21754569 21758380 21783442 21759275 21799500 21745491 21785371 21732259 21788278 21741742 21813016 21772580 21791067 21747970 21751257 21745028 21817254 21779858 21761928 21835689 21722184 21790695 21763017 21746482 21804011 21707080 21841938 21776858 21800822 21775294 21790938 21794429 21809676 21740720 21834665 21757262 21813216 21803407 21727360 21770289 21809878 21758861 21791876 21809582 21798237 21747228 21770036 21819937 21778529 21752433 21810454 21823062 21814096 21819217 21821451 21793919 21734699 21799264 21787288 21799146 21788122 21799786 21797395 21809358 21791423 21765255 21798794 21766675 21821374 21818087 21793646 21813171 21823105 21796193 21833709 21797576 21747998 21771928 21767718 21784192 21790093 21854461 21825672 21747758 21818818 21819096 21802695 21837771 21772524 21787178 21785671 21791659 21778050 21863559 21827126 21831198 21861977 21834540 21812349 21781461 21791360 21845070 21834769 21815010 21754512 21795292 21818509 21810472 21810493 21858112 21784973 21825921 21789837 21835434 21787243 21778116 21793312 21852066 21887441 21867070 21845973 21811303 21830287 21799787 21822792 21800882 21831249 21849092 21786706 21815294 21811202 21808866 21808767 21821030 21884699 21830480 21821749 21825636 21817020 21774655 21851322 21847116 21890867 21821520 21879533 21844640 21806564 21835351 21880927 21838614 21854921 21805564 21788336 21830758 21859418 21794228 21901173 21819510 21825107 21839511 21792058 21828688 21869950 21840106 21841487 21833486 21878373 21908935 21763507 21800342 21828570 21819001 21886536 21820649 21851452 21819921 21918326 21890031 21874918 21857433 21806475 21833165 21892142 21830938 21861358 21794506 21846662 21836856 21889608 21860039 21816383 21822661 21868941 21794166 21869970 21855115 21927017 21835169 21832992 21884349 21841319 21832977 21859575 21894830 21888420 21847379 21859568 21851157 21835941 21837369 21870051 21835449 21818921 21891163 21886426 21836392 21855861 21847771 21881252 21820267 21863597 21891244 21854957 21842710 21924141 21836668 21914220 21884989 21870150 21849256 21833199 21824390 21904222 21877044 21853662 21892120 21815252 21873250 21858064 21893429 21895803 21875623 21873661 21819182 21866387 21871135 21936430 21877620 21909411 21861215 21856287 21905896 21859760 21877188 21853198 21844573 21890949 21915869 21875691 21863286 21838041 21873167 21894979 21871352 21919384 21901024 21938354 21854854 21895987 21848198 21830508 21870202 21929339 21911934 21870251 21864164 21962526 21927890 21881908 21884886 21913759 21936357 21866283 21885739 21937698 21911786 21924983 21914783 21896475 21952859 21857540 21889683 21908125 21910500 21849554 21883357 21878246 21904725 21944734 21855484 21889751 21927052 21837390 21887426 21965626 21905043 21919281 21921353 21909992 21875858 21892193 21887880 21868370 21862468 21861825 21912587 21856273 21913428 21926770 21888074 21935109 21955244 21899750 21883703 21871749 21900248 21876486 21862599 21834104 21972797 21922565 21922335 21894446 21901922 21919060 21937405 21893210 21929508 21932807 21931549 21990570 21886282 21949015 21915583 21932944 21911395 21905561 21889150 21929689 21898105 21865959 21928533 21885906 21929968 21933079 21938779 21908883 21867254 21957534 21895430 21935293 21853575 21936856 21916982 21887381 21911297 21945096 21945485 21931393 21912257 21909522 21924511 21948320 21922853 21905544 21937978 21935751 21942179 21931487 21854647 21949172 21920432 21902730 21948723 22002718 21939958 21918575 21926948 21942776 21896969 21936115 21921368 21906651 21923176 21892957 21867549 21935135 21889034 21937248 21938820 21932184 21930635 21996444 21970083 21871324 21940500 21876832 21931443 21946309 21919303 21976713 21946452 21967714 21945252 21906092 21963498 22004838 21936172 21931342 21897990 21959114 21862931 21961477 21979229 21942295 22003560 21997218 21896160 21949307 21967896 21948567 21932871 21982564 22013107 21938118 21997302 21924127 21959225 21942030 21876777 21942514 21954611 21965637 21942205 21955984 21934428 21938442 21966363 21998294 21980520 21945975 21944303 21989276 21986496 22024435 21942969 21971752 21947248 21929434 21919488 21870544 21932323 21965810 21969468 21954015 22010319 21947178 22005965 21968661 22010419 21964810 21940053 21971696 21966932 21939404 21970755 22010332 21963007 22009104 21946070 22007136 22017577 21946180 22046171 21980878 21985973 21949265 21943060 21951921 21990735 22040904 21938689 21933277 21997441 22026973 22014547 21936774 21996747 21977194 21938062 21958779 22002228 21957508 21993713 21969172 21966505 21974026 22005657 22020388 22026128 21988092 22036473 22005468 21988625 21963577 21949438 21963326 21993215 21964655 21968633 22005824 22025852 21997050 21955369 21988780 21944771 22002153 21982530 22054996 21954533 21931410 21954082 21983725 21990703 21993645 21987400 22015572 22006254 22001273 21954402 21953565 21930140 21985660 22021432 22068476 22046363 22035885 21971276 22048122 22009636 21972861 22032191 22008098 21997528 21922502 22001442 22021715 22045261 22011638 22006913 21998308 21960833 21964789 22004928 21966738 22003235 22025667 22017319 22028760 22020973 21994611 21960325 22058250 21991077 22094055 22021021 22038250 21998498 22035358 22031555 22032733 22014050 21983172 22060550 22009122 22030803 22047264 22085878 22013761 22035884 22003278 21967107 22084233 22040101 22007989 22027121 22074498 22074295 21999256 22075018 22003594 22016402 22018607 22047534 21999715 22039687 22022382 22039288 22016666 22018620 22052303 22010792 22042096 22036981 22025873 22054633 22014177 22027412 22078768 22068372 22031097 22070494 22049320 22021066 22014820 22067829 22001990 22068234 22082833 21998938 22046085 22020030 22032192 22032408 22019465 22060422 22039967 22074074 22072320 22052113 22083687 22065635 22054761 22064288 22073520 22071028 22094083 22021224 22085683 22037081 22058025 22010254 22036184 22029790 22031796 22106269 22057263 22063523 22096796 22033682 22113648 22059488 22056325 22071011 22037535 22064353 22063885 21997024 22062576 22127175 22064858 21995931 22067016 22137410 22051651 22068273 22081608 22083558 22099177 22062404 22043065 22098332 22057671 22104144 22062253 22059021 22067070 22058478 22144121 22094903 22072971 22077759 22055576 22060036 22076728 22057250 22089730 22116574 21996022 22054446 22057436 22050898 22045846 22047412 22058849 22063818 22074123 22113293 22135895 22085940 22142489 22051903 22078868 22048643 22092757 22097993 22028211 22089514 22053946 22026990 22075513 22068243 22083456 22110947 22066121 22096109 22084761 22112553 22179846 22099596 22116296 22081135 22132826 22077473 22155994 22118121 22055116 22063866 22046312 22102495 22039490 22072504 22097716 22097015 22070637 22107026 22066486 22108332 22105082 22065957 22063481 22100953 22110165 22121656 22112814 22113081 22143016 22074402 22140101 22092193 22109869 22101719 22066283 22137254 22022162 22142643 22105248 22149132 22074784 22095586 22103038 22107379 22102879 22079962 22146297 22062159 22068451 22163899 22076545 22063377 22130423 22112255 22149075 22105247 22094185 22055183 22078742 22114685 22090210 22088989 22124499 22112472 22079512 22092195 22136094 22117097 22165222 22112566 22102559 22100397 22129211 22123976 22128952 22087370 22098169 22095017 22082204 22082455 22107996 22113322 22173861 22152196 22133050 22148291 22109607 22094147 22099140 22157038 22126638 22138311 22084719 22145098 22160953 22133309 22128955 22032767 22095494 22178798 22038806 22139657 22092952 22107227 22114880 22199190 22108996 22095254 22169894 22135186 22111379 22162807 22118567 22153712 22164075 22136677 22100581 22081025 22193810 22092394 22140358 22154245 22084891 22139917 22123237 22123117 22113033 22119067 22166612 22152680 22138143 22128804 22120693 22166211 22152272 22148447 22136366 22168409 22123855 22121576 22164639 22133930 22221142 22172034 22137105 22155008 22233113 22166062 22139899 22197718 22154620 22123724 22158444 22120102 22146017 22106050 22176707 22170178 22167074 22191143 22135744 22109965 22101002 22114435 22211441 22138580 22150395 22186001 22195539 22182452 22157713 22156736 22151801 22176644 22136301 22164278 22134684 22170051 22166249 22158805 22152273 22112136 22210918 22159565 22177150 22159545 22174409 22174628 22152939 22192140 22167666 22174084 22173569 22144356 22159150 22203968 22158834 22141510 22129184 22171711 22164665 22199676 22129623 22151375 22216105 22113021 22222464 22186727 22212347 22168362 22131869 22159858 22177631 22120704 22152666 22158158 22210497 22172595 22175230 22228090 22108904 22120481 22165259 22197522 22196076 22174378 22215560 22169781 22147298 22151811 22234295 22142380 22262033 22182751 22137358 22167724 22150427 22249347 22209326 22237159 22193645 22186265 22179578 22233647 22232237 22240178 22206801 22234467 22241465 22099249 22136774 22186360 22171127 22266865 22214677 22244369 22253097 22231588 22171617 22205557 22214719 22175623 22203963 22239267 22142289 22174367 22225530 22188932 22161296 22265842 22163830 22235070 22194022 22255679 22216716 22219727 22251667 22189372 22224891 22221013 22217256 22215568 22231191 22170386 22219668 22216931 22241206 22159843 22258660 22181530 22216356 22270602 22248093 22207561 22200014 22233664 22198561 22266686 22225202 22189176 22212572 22256072 22217298 22204870 22210856 22308373 22224815 22281628 22192618 22234290 22211398 22166856 22210234 22215513 22258750 22191178 22240677 22171474 22234327 22282768 22223498 22229600 22241518 22219093 22271181 22232868 22226461 22222439 22262503 22241043 22223290 22232750 22281883 22266629 22220876 22257593 22208034 22239917 22250783 22292239 22294064 22244686 22188901 22229715 22210787 22231099 22225497 22264977 22248279 22296396 22228417 22253891 22221669 22210539 22224889 22264838 22199645 22223918 22227151 22246832 22248979 22213992 22265215 22271125 22231174 22265520 22237214 22244375 22260721 22243059 22151837 22236628 22215021 22238465 22300230 22218827 22307335 22262554 22249440 22177209 22213347 22210024 22288179 22268013 22269281 22233868 22270236 22246366 22253331 22271422 22243254 22287552 22221255 22297050 22283320 22274825 22244538 22301092 22264570 22242265 22282183 22279985 22256049 22279268 22293752 22252779 22318245 22239762 22266078 22282772 22262506 22297920 22205360 22271456 22256829 22283649 22271279 22334164 22246444 22248295 22218238 22344888 22182100 22283443 22212171 22291111 22247143 22270399 22272257 22256350 22218438 22277403 22273792 22245498 22184687 22300279 22269722 22259766 22275909 22296036 22271157 22328005 22284407 22247902 22272403 22271351 22299116 22289980 22315970 22301533 22332848 22280356 22288724 22264273 22300672 22262445 22257345 22296607 22328622 22263971 22302097 22265911 22304573 22232891 22311252 22287590 22300280 22280426 22306427 22312064 22307729 22287071 22242924 22331626 22259606 22345917 22332542 22295107 22284233 22261936 22263512 22339183 22326053 22258472 22293191 22374168 22322130 22309113 22337252 22375528 22313586 22326901 22276997 22285790 22250213 22228700 22265242 22334437 22250549 22306939 22323823 22319511 22277913 22349238 22403699 22301466 22266433 22287552 22294070 22279813 22283650 22369934 22321083 22277588 22342351 22328685 22333943 22342257 22310664 22349515 22279924 22324780 22336539 22342209 22338403 22325061 22296284 22307483 22343270 22304747 22303558 22340724 22309241 22303160 22292950 22326538 22309446 22278272 22371675 22322142 22333036 22304970 22306890 22313208 22402092 22318650 22360597 22320648 22382772 22346389 22300255 22318289 22331976 22320296 22345114 22330884 22286268 22331069 22315726 22322890 22299175 22334558 22340291 22327561 22321680 22376286 22316918 22270847 22322547 22324757 22336377 22317655 22344376 22347512 22345803 22354762 22296939 22367495 22307995 22283162 22328078 22362984 22364978 22300625 22338003 22322119 22392833 22376191 22363345 22301880 22349907 22346826 22355298 22337200 22386563 22389853 22313645 22373479 22313255 22365292 22317376 22369602 22327625 22334434 22378595 22344314 22353966 22374967 22353919 22365963 22371271 22378364 22359740 22332025 22294829 22337430 22340213 22393029 22397936 22390594 22402346 22387705 22371016 22335586 22350967 22319838 22338673 22356033 22369298 22318323 22415160 22341789 22290294 22342404 22401194 22417850 22371955 22396760 22363188 22406853 22342198 22361399 22343837 22320818 22360946 22407231 22342044 22351177 22343208 22337448 22365595 22366994 22406234 22327946 22423094 22420559 22395480 22364161 22385616 22335158 22417105 22384419 22393832 22323320 22373666 22390696 22379442 22363215 22380860 22370646 22417364 22435960 22418766 22324285 22339425 22343582 22410106 22356264 22376132 22402606 22425660 22386917 22376462 22417008 22365639 22370652 22334581 22442450 22398726 22448542 22382831 22438515 22430004 22383621 22402054 22443266 22386493 22425675 22429460 22387022 22392972 22415031 22447850 22427484 22429862 22412401 22412968 22385330 22423003 22394142 22422518 22399187 22394738 22371153 22369392 22434260 22365544 22417964 22427934 22437244 22404398 22424276 22415274 22390144 22407195 22435757 22351516 22367183 22441783 22432864 22371346 22439587 22425222 22340434 22419470 22433358 22403323 22445489 22379047 22410668 22416019 22431911 22432898 22331580 22372243 22358527 22384683 22482377 22390732 22381258 22465699 22451412 22460632 22417729 22449058 22442555 22415431 22460542 22418326 22395866 22433469 22418404 22419329 22400897 22453774 22413964 22419607 22408279 22426205 22425906 22444660 22414917 22444551 22434134 22375103 22379438 22416858 22457160 22438169 22503542 22450277 22394889 22428406 22477642 22365880 22456175 22385765 22436410 22443912 22419723 22457059 22448279 22442562 22423708 22481614 22469580 22422920 22443973 22470426 22463336 22365759 22468775 22468497 22471864 22454408 22421141 22423618 22450880 22376166 22469782 22431883 22478347 22404035 22468387 22441505 22467408 22418481 22480370 22393322 22454428 22520580 22445583 22420677 22412059 22509217 22442132 22470342 22462619 22435000 22429523 22452835 22435117 22447136 22431607 22409818 22446131 22456301 22500632 22447232 22490574 22428436 22475130 22457211 22493869 22479076 22485376 22452067 22456494 22485161 22444216 22468530 22409375 22466231 22397456 22426397 22453194 22502618 22484882 22430803 22504578 22409563 22391199 22473696 22524309 22474766 22547371 22504398 22423150 22487575 22470693 22415269 22448709 22408585 22521800 22475540 22477382 22537748 22508859 22529835 22479279 22420441 22487665 22467176 22486311 22431713 22459783 22460441 22449682 22502210 22479141 22427220 22449499 22533692 22484169 22472824 22476379 22476886 22516597 22474329 22474056 22486088 22481312 22473268 22504732 22434980 22503908 22479221 22512157 22491031 22494979 22460738 22499953 22547363 22463604 22465441 22497799 22471913 22534149 22456048 22478745 22479626 22478973 22528830 22551080 22474949 22541711 22474189 22543582 22467906 22517964 22560358 22513686 22486160 22494465 22520523 22504784 22480492 22482119 22511209 22502724 22467225 22536362 22500219 22463637 22461337 22466025 22490377 22502394 22485921 22556639 22511991 22428124 22505375 22495655 22554288 22544211 22532185 22510202 22501814 22496771 22537312 22528624 22504947 22457398 22455131 22515052 22515053 22471640 22520793 22504770 22534708 22540275 22459126 22507731 22550733 22480182 22506239 22577658 22531081 22497100 22496310 22535353 22523146 22447014 22533206 22540069 22584417 22557452 22535881 22476081 22577387 22491608 22561624 22529494 22604770 22587836 22533333 22562675 22473271 22519986 22556809 22528841 22472671 22538894 22511993 22502499 22527386 22517087 22561231 22507746 22543537 22525736 22580314 22555977 22524878 22554188 22499065 22588798 22514497 22508484 22567291 22576864 22516910 22591782 22533151 22531226 22521520 22546652 22547782 22503354 22539980 22548574 22533104 22599169 22545258 22551113 22539802 22568032 22551274 22572045 22529628 22588168 22548221 22522797 22520277 22549604 22589636 22523821 22605181 22567466 22523172 22532320 22567987 22531884 22555096 22532695 22611183 22581633 22512784 22511771 22520287 22464072 22555804 22554416 22528990 22565150 22551198 22531746 22564077 22559236 22524368 22563586 22605125 22575224 22585892 22569055 22620844 22540351 22564734 22509934 22555977 22572975 22603283 22615788 22576222 22538357 22553828 22501796 22586242 22518693 22586728 22539089 22513751 22584203 22590181 22524313 22611299 22622301 22596335 22610689 22556394 22605577 22572638 22651789 22571247 22572550 22595316 22560041 22583936 22574194 22581333 22632536 22623814 22613590 22501069 22519628 22565507 22566777 22546078 22572620 22554613 22646190 22560551 22666160 22595464 22539275 22626717 22552014 22530379 22588611 22589962 22521839 22573939 22528999 22579642 22598213 22549516 22562520 22593622 22592111 22548637 22590364 22557931 22559618 22599012 22648726 22582935 22610478 22584368 22538990 22548787 22609946 22541264 22644098 22604786 22552134 22620416 22603924 22584238 22632325 22590076 22621716 22591450 22619894 22602530 22564100 22625234 22578588 22536371 22590630 22598766 22604752 22616754 22630309 22644076 22605213 22659126 22560630 22629762 22555035 22604420 22616691 22603224 22608298 22609275 22560843 22635106 22647830 22609485 22570370 22637407 22596844 22612780 22635181 22664635 22627390 22641742 22597041 22607778 22597202 22648468 22609923 22650405 22638156 22620508 22582454 22622069 22624647 22568746 22617791 22618152 22593416 22597906 22660637 22601695 22661669 22639513 22570506 22615146 22640517 22573036 22625441 22561577 22665777 22610590 22629063 22610987 22604948 22636244 22612200 22653240 22603763 22556906 22591594 22639421 22632081 22600833 22616043 22662050 22630435 22618172 22602982 22652912 22664901 22669462 22648044 22615384 22640270 22623098 22626556 22635068 22640042 22677033 22694507 22696070 22638421 22607639 22621790 22609717 22623212 22665215 22620596 22622109 22684572 22593285 22665675 22593171 22639002 22562673 22638247 22704344 22651132 22635230 22627054 22664251 22623997 22660572 22592119 22644706 22618671 22593881 22608921 22660782 22660111 22674217 22623075 22614618 22686355 22607895 22665947 22568237 22653306 22636383 22670305 22601576 22664054 22618783 22639941 22645012 22590221 22651828 22600594 22611773 22645165 22639715 22648430 22671498 22659383 22696168 22617359 22638467 22635803 22644082 22632013 22628683 22667312 22621772 22665136 22696802 22693771 22645925 22672781 22681099 22681596 22717797 22672388 22655518 22656777 22643675 22612816 22682608 22654837 22613733 22717614 22661327 22705580 22655897 22640363 22636903 22717616 22624182 22714542 22619224 22643650 22623031 22723958 22679159 22668045 22665894 22637445 22691212 22673537 22641298 22711432 22663453 22631243 22678914 22698702 22657576 22703558 22696922 22655001 22633222 22681154 22663825 22662692 22635370 22650574 22677417 22707191 22673048 22648166 22623509 22673413 22630913 22694022 22692682 22678871 22730271 22702663 22690295 22593516 22672012 22710032 22746757 22707985 22647113 22712060 22686334 22684067 22737968 22705001 22706532 22700329 22719543 22631955 22648520 22705285 22695607 22711661 22701891 22687689 22702878 22739169 22692215 22731227 22776339 22673039 22742981 22697374 22682224 22724203 22734111 22699891 22708323 22698679 22739722 22722336 22638315 22739461 22752019 22732251 22696133 22712996 22732697 22756723 22709750 22642646 22669659 22757898 22733034 22645218 22699784 22724999 22693616 22756617 22703762 22737525 22698779 22701820 22659371 22723604 22721892 22713957 22726365 22718254 22764864 22732051 22721891 22753410 22742505 22713321 22733573 22700760 22719619 22704288 22665313 22704641 22718066 22733802 22693941 22695362 22729901 22737223 22721814 22727009 22751196 22745156 22773419 22757917 22764635 22791263 22740295 22729047 22748347 22719292 22717394 22675627 22733086 22718489 22711216 22735373 22763761 22758577 22737113 22720708 22683499 22729816 22707344 22775369 22744321 22684630 22739891 22763619 22764683 22760594 22692126 22757937 22716761 22771584 22707224 22786430 22670793 22703072 22733277 22764062 22729552 22719329 22743750 22687690 22745471 22689459 22761028 22725898 22726864 22719191 22746322 22750494 22766471 22726007 22724328 22807520 22747897 22717017 22746177 22726959 22730500 22786827 22715882 22831290 22773223 22744918 22813401 22723092 22729264 22765716 22748768 22759474 22747121 22790828 22715125 22696801 22786553 22789396 22728365 22750391 22741454 22705054 22771260 22749483 22788093 22765872 22785325 22790035 22770692 22737138 22736529 22758400 22755892 22763630 22802792 22754835 22800949 22794384 22798726 22772846 22763151 22761040 22789515 22799946 22773498 22722653 22815907 22773831 22731772 22787413 22804638 22767653 22773656 22712328 22728901 22772080 22773827 22717058 22846869 22722495 22759445 22790789 22737825 22771500 22743856 22790181 22792123 22805723 22808063 22829412 22784652 22819879 22836713 22784829 22764786 22778721 22793282 22827456 22792676 22828660 22771889 22797066 22802700 22772479 22813946 22786813 22754998 22778980 22805083 22853309 22774488 22790793 22763384 22770989 22767140 22727471 22840050 22776244 22802622 22781544 22801614 22752603 22761047 22815102 22863796 22785336 22855263 22825404 22832055 22776274 22830938 22794652 22784037 22815658 22811098 22790961 22762697 22818197 22818648 22805290 22853545 22765273 22794793 22818179 22825554 22816188 22840055 22810668 22900056 22774918 22854351 22784362 22804685 22811574 22865022 22797602 22799745 22788853 22824521 22846075 22811830 22840232 22799880 22808505 22789799 22782419 22731776 22852516 22810310 22887432 22847115 22814745 22849186 22831800 22790381 22827947 22780934 22820683 22827594 22818101 22796055 22821064 22814813 22847777 22831973 22849603 22803430 22840517 22832540 22827175 22837499 22838522 22849798 22854178 22798484 22782094 22844779 22856911 22875550 22846679 22816893 22853399 22838404 22850186 22824208 22830537 22837818 22804354 22860931 22819136 22813483 22804692 22813992 22827476 22860385 22786576 22899163 22826311 22808460 22827007 22851964 22793653 22843669 22872294 22887483 22863749 22903473 22877145 22789649 22846154 22833742 22835452 22796790 22851537 22856937 22802082 22882155 22843643 22855350 22865804 22810892 22857969 22853811 22862152 22868637 22795264 22833512 22834210 22872979 22871295 22837431 22847072 22839514 22881010 22823738 22838923 22834472 22836217 22848618 22847437 22831092 22821361 22882831 22848075 22890873 22809788 22852416 22895935 22879676 22843798 22856815 22865667 22809235 22839476 22851546 22854059 22883218 22894007 22922513 22856721 22870023 22845310 22864962 22867118 22850228 22827837 22960605 22844631 22879565 22813850 22861289 22807098 22885668 22914132 22852210 22858008 22860211 22840230 22862135 22850958 22855686 22942719 22861054 22892411 22881305 22831642 22878618 22885854 22826703 22907970 22840749 22847998 22872600 22885253 22946377 22905496 22941100 22877045 22854893 22862071 22898881 22847056 22822802 22880135 22877286 22869010 22922960 22856337 22890560 22833618 22856456 22907964 22883245 22909454 22905034 22894564 22874751 22891088 22899271 22939796 22889893 22938452 22877191 22940597 22956958 22838507 22880357 22928457 22851533 22880967 22832990 22937489 22901671 22899357 22919546 22897350 22905405 22938011 22939204 22862234 22879544 22859355 22918010 22848693 22943465 22925254 22858387 22852045 22936377 22928545 22959350 22865941 22966123 22925600 22876851 22840101 22863904 22869590 22890878 22870428 22915336 22883304 22906046 22923108 22920388 22929552 22907672 22936757 22966362 22965663 22942011 22886949 22906122 22874678 22931381 22955344 22876753 22911651 22873368 22866137 22903484 22890703 22936808 22934147 22966670 22956680 22880609 22926695 22878229 22865509 22881571 22859863 22920876 22944404 22894420 22921083 22840070 22904444 22879629 22920804 22968158 23001438 22943067 22928395 22903207 22917530 22883402 22978600 22952417 22957529 22912725 22972923 22931120 22909940 22946453 22940093 22882764 22925508 22936175 22872254 22958150 22930372 22966752 22918627 22934652 22929170 22942309 22964249 22946037 22939105 22934901 22911760 22916541 22950154 22872157 22939279 22923260 22916417 22965324 22927311 22930794 22891415 22950001 22984632 22906154 22939879 22916791 22985267 22967635 22988788 22912788 22898722 22905230 22939089 22923629 22943576 22887517 22959778 22967983 22934547 22963955 22963265 22941260 23002553 22967898 22920572 22982666 22953632 22945919 22965580 22961832 22958100 22955140 22896675 22971449 22965518 22944228 22968190 22957081 22948757 22930556 22974377 22927111 22906772 22976195 22937991 22971879 22962462 23030262 22904413 22980270 22986273 22987982 22992033 22973251 22963856 22965247 22936510 22952527 22957445 22994243 22954747 23039858 22937060 22943086 22943059 22976778 22999571 22986140 22872136 22960191 22980830 23006265 22968481 22950900 23016419 22930598 23018363 22992537 22948743 22941984 22949177 22911423 22951654 22954250 22959876 22974285 23005098 23016428 22978152 22974232 22977063 22998306 22923521 22978350 22947680 22943881 22963772 22992868 23034794 22968345 22986773 22995947 22955681 22971155 23014855 22956312 22975097 22966042 22994858 23013710 22975172 22980305 23025013 23004792 22966906 23025818 22957788 22983850 22988460 22956741 22993500 22988953 22976252 23056133 22974918 22998441 22932849 23018093 22962510 22991784 22981343 22983237 22995483 22982976 22992909 23011893 23020456 22998586 22989542 22974322 22982257 22968662 22942010 23005826 23018728 22934380 22986318 22954900 23015167 22985093 22986881 23005072 22994925 23049497 23021528 23011562 22944022 23005852 22963024 22971933 23013327 23016757 22993717 23073225 23001961 23006214 23040916 23024281 23006880 22996294 23021985 23026961 23069681 23065490 23042119 23011249 23065770 23019127 23033351 23024692 23022560 23001281 23031452 23032465 23014689 23059469 23041045 23020448 23066279 23030279 23006521 22986589 23025480 23053939 23039376 23017526 23000630 23017668 23024866 23077401 23036903 23042128 23028857 23059578 22996450 22996112 23017440 23003961 23049734 23012496 23048695 23056548 23077689 23029220 22978604 23049479 23070651 23015009 23001343 23014644 22990114 23006937 23027036 23016908 23015901 23027566 22979984 23008611 23007475 22959093 23041664 23021185 23037121 23011305 23036303 23088879 23055398 23054043 23091788 22980467 23044536 23069377 22966339 23075790 23045835 23072929 23049422 23074676 23007579 23061901 23003205 23058259 23064020 23009679 23056383 23007121 23053851 23005011 23063939 23076651 23123265 23084488 23032135 23094765 23047133 22999745 23064368 23081969 23044314 23090161 23069550 23049592 23043226 23070335 23102779 23022527 23089598 23057962 23042060 23057224 23085431 23038634 23088220 23038357 23037733 23055443 23048250 23065963 23079790 23027076 23118306 23059255 23034159 23033558 23087981 23107784 23088524 23024304 23074363 23051276 23043920 23068136 23087441 23039992 23109783 23103422 23067148 23068104 23147959 23070214 23096836 23124717 23120340 23114705 23023416 23077924 23106789 23052507 23055078 23001225 23053808 23080771 23173488 23079878 23063448 23065306 23096906 23151932 23083159 23078332 23114668 23095699 23097814 23063337 23066695 23135588 23088447 23164870 23069699 23053784 23091966 23109467 23086924 23078517 23112512 23069809 23096002 23077896 23132224 23107680 23087730 23071569 23063551 23046540 23032260 23098156 23078114 23078312 23071859 23083691 23122817 23096702 23109652 23045302 23036512 23127658 23015968 23103548 23144345 23102942 23099383 23062034 23056916 23140498 23105832 23095635 23086376 23097944 23099282 23048308 23104394 23080990 23099954 23162765 23123154 23117786 23152544 23158778 23155900 23103459 23027281 23108247 23129132 23087808 23120650 23170987 23124916 23158794 23128370 23154215 23119288 23120916 23118403 23171530 23149391 23133140 23087821 23135298 23136317 23155063 23156454 23144312 23172078 23118404 23147561 23105935 23140860 23163665 23065109 23145357 23117419 23132980 23136955 23167600 23166805 23119079 23135825 23129666 23180343 23133731 23139335 23106492 23113348 23124829 23131266 23160628 23079809 23137954 23152694 23135698 23102392 23145392 23103776 23118308 23164936 23102362 23157950 23114696 23185646 23101945 23146674 23157669 23139773 23146454 23176716 23143741 23104020 23123536 23149249 23167324 23115878 23127168 23155058 23123036 23107311 23121165 23146594 23140041 23165263 23176325 23196253 23134356 23180532 23206158 23084397 23120377 23169788 23129497 23201926 23213852 23178191 23132336 23120074 23163233 23160979 23167554 23096099 23217713 23140177 23169990 23149275 23123918 23212041 23166537 23166068 23180638 23104849 23203767 23147469 23140605 23158035 23192708 23186041 23145635 23156677 23196447 23147593 23178208 23185723 23169970 23216490 23182481 23151372 23195352 23167463 23161507 23126668 23109814 23193189 23183163 23192769 23187290 23128019 23225654 23174701 23203518 23187421 23113923 23185925 23179046 23182040 23074253 23182369 23153785 23170378 23175858 23171714 23160947 23170782 23179076 23198188 23163759 23126172 23190780 23178640 23191701 23186205 23178175 23213067 23180239 23197973 23223752 23196519 23190176 23214591 23178279 23167499 23192931 23168683 23168334 23213746 23201412 23209382 23115861 23199307 23185276 23197455 23215745 23179920 23188080 23185600 23228619 23242954 23177613 23146713 23241609 23210934 23189558 23195506 23222511 23203201 23168107 23239650 23157574 23177746 23189292 23196850 23172951 23193713 23171360 23258485 23148344 23206311 23207763 23170497 23216326 23161381 23186212 23235226 23233109 23221715 23169780 23192350 23256029 23189997 23231667 23126221 23178749 23211412 23278417 23200316 23220238 23184835 23200862 23232133 23233670 23218059 23226053 23169383 23187589 23158765 23276906 23240402 23228718 23228025 23177891 23236255 23196446 23234833 23249845 23193125 23227708 23293583 23226112 23224950 23235562 23238556 23198144 23219556 23150994 23194605 23210568 23252780 23190484 23218154 23225750 23250165 23216129 23231443 23229143 23258091 23243050 23264591 23268093 23263606 23259753 23160742 23217657 23274012 23232836 23251505 23196659 23244666 23252054 23266318 23259249 23245123 23239865 23225474 23226437 23253842 23214535 23263733 23122100 23264092 23252899 23200069 23219317 23281084 23214829 23225123 23238508 23279107 23275398 23263828 23256697 23270456 23307079 23209639 23293074 23268442 23234484 23251363 23261487 23217647 23220204 23244600 23253828 23276132 23274271 23229559 23279722 23242431 23262788 23249323 23248921 23236728 23242501 23297008 23277190 23161143 23319080 23260164 23217365 23288052 23283797 23273608 23208551 23268438 23221538 23201861 23247790 23256394 23229265 23253026 23240610 23237913 23293060 23280613 23231110 23300318 23254982 23259044 23278364 23307233 23258133 23272034 23278309 23275425 23251568 23255402 23253939 23257816 23278768 23312338 23253941 23217977 23323927 23288615 23271203 23255957 23261789 23318874 23348879 23312983 23263213 23264098 23233636 23309860 23263979 23316223 23339439 23324152 23284360 23297072 23258801 23295394 23316284 23258306 23241035 23249238 23270270 23253741 23295756 23263807 23269766 23294657 23302847 23231923 23308773 23278716 23278337 23327147 23250560 23304058 23258727 23313504 23258870 23310473 23265948 23257607 23285386 23340392 23262162 23314805 23251058 23305998 23263861 23274266 23262499 23284669 23305218 23264304 23217680 23314789 23234343 23326318 23218307 23332474 23279421 23277649 23346022 23240133 23284706 23317302 23295566 23318675 23316758 23284393 23274884 23334153 23274757 23330005 23279350 23324680 23352197 23318599 23312352 23302374 23292829 23318847 23268288 23275870 23309245 23270879 23309657 23247920 23299270 23374687 23345213 23373390 23370391 23330547 23271993 23347533 23308090 23283146 23350641 23317342 23329821 23283058 23304415 23307559 23294196 23357914 23259636 23294656 23353495 23293597 23340177 23314105 23287864 23323056 23290282 23365690 23324134 23292996 23293093 23315643 23343797 23375115 23301445 23333466 23287356 23304834 23351799 23297650 23312975 23335497 23306355 23307224 23314344 23315976 23363475 23340342 23345049 23311162 23288839 23330282 23354798 23282520 23270987 23285939 23299912 23299731 23367592 23305700 23332246 23299536 23344446 23335882 23337124 23321781 23355919 23340705 23328462 23341575 23335688 23383777 23374080 23300830 23271634 23270431 23300963 23346382 23263240 23365182 23364678 23396109 23333509 23343255 23371991 23328843 23354482 23357822 23340655 23301407 23351308 23307856 23298616 23343802 23366030 23375115 23307195 23409325 23323418 23355645 23295369 23311863 23366426 23322069 23337200 23296799 23305082 23348660 23349858 23314359 23310198 23340835 23334188 23380877 23373383 23276795 23321217 23290602 23374594 23328480 23383167 23379064 23363441 23365415 23384968 23379976 23346016 23324444 23344514 23376678 23305986 23418177 23395789 23397122 23351170 23378729 23371259 23316201 23290567 23416387 23370363 23404565 23397695 23345108 23431819 23421715 23318597 23435975 23337946 23373129 23418059 23412859 23296097 23376165 23351485 23364200 23333870 23383983 23385879 23423722 23404166 23324154 23430038 23376093 23399938 23359773 23389662 23386571 23321932 23372294 23351946 23373568 23366058 23417371 23448249 23365434 23337588 23422305 23345742 23394799 23344195 23418852 23426977 23310926 23412395 23429240 23335781 23404106 23365135 23407008 23405209 23370088 23364454 23414820 23434661 23441725 23284017 23335357 23385126 23357819 23392343 23380961 23373124 23423454 23334933 23441524 23384583 23425337 23352029 23368862 23371390 23336707 23396967 23386113 23421615 23377064 23394301 23399588 23420436 23421680 23456341 23425850 23409762 23372041 23386079 23398952 23329208 23446509 23382500 23417434 23357697 23426040 23421820 23443001 23371555 23393256 23381826 23395812 23426887 23433835 23422250 23324249 23434792 23416631 23382423 23452658 23454486 23463132 23361677 23437240 23377218 23378641 23407310 23453431 23366248 23435084 23473220 23397253 23426057 23364472 23407160 23389525 23425789 23431196 23423472 23455103 23400186 23465964 23409101 23384184 23442444 23459770 23396286 23441522 23440651 23423287 23470163 23435532 23416998 23434066 23401354 23505786 23404424 23436707 23441207 23436580 23448853 23446402 23501653 23387941 23415641 23470646 23381322 23447157 23396639 23438478 23392161 23455582 23489359 23455647 23465266 23433946 23355195 23454950 23427819 23442969 23438496 23436360 23421903 23421138 23443990 23425449 23398611 23388947 23437582 23405580 23437608 23438597 23464333 23450576 23428352 23442512 23432062 23395463 23437638 23406019 23395953 23386194 23453298 23445805 23423338 23417003 23435708 23480836 23445704 23408020 23459776 23442360 23461402 23412191 23496721 23484334 23436324 23467103 23515873 23522576 23430611 23404662 23491323 23441346 23433847 23429554 23445053 23440830 23522688 23428883 23466531 23472754 23528263 23428970 23484656 23420268 23470380 23429368 23473861 23419801 23477760 23442253 23422962 23443360 23453764 23477372 23527274 23490950 23451804 23444718 23404059 23426782 23491528 23518070 23506410 23506938 23430199 23392908 23492525 23443075 23544140 23487638 23504987 23480396 23498136 23493532 23461045 23478227 23461662 23470336 23506000 23487406 23502728 23451759 23527572 23484979 23474020 23492553 23484915 23525295 23502201 23438994 23522065 23495372 23537719 23464450 23457726 23426789 23501002 23451850 23518944 23490435 23443533 23442669 23501254 23532849 23475546 23456115 23447924 23512903 23441170 23481041 23472254 23477658 23469941 23418368 23488035 23520428 23505588 23416938 23454015 23475216 23491017 23506179 23463896 23485788 23511605 23447190 23432081 23484470 23503004 23549869 23451668 23441930 23494854 23523020 23482909 23479073 23473625 23507211 23510202 23490366 23517956 23516130 23468164 23527755 23534189 23494010 23464459 23483846 23536982 23472563 23431783 23469900 23514194 23502082 23468416 23498453 23468834 23530629 23502129 23512566 23535276 23490937 23469536 23496691 23581529 23511240 23510827 23502935 23492971 23512434 23538638 23494502 23566580 23530244 23501043 23474189 23463338 23471267 23506445 23506516 23499696 23529771 23494141 23461661 23483173 23555232 23502496 23437362 23515586 23504084 23487548 23481491 23490207 23525297 23546611 23481576 23550661 23551532 23546604 23495338 23537125 23473728 23540019 23504268 23544259 23512225 23533481 23460967 23503364 23523793 23511784 23558688 23491348 23533628 23521953 23554913 23534510 23546254 23544884 23492378 23465596 23490020 23461998 23525099 23555902 23524041 23546567 23543318 23541711 23562375 23516856 23526281 23522717 23539695 23511327 23509344 23516814 23526184 23505635 23542223 23527095 23564490 23530310 23564756 23570621 23540520 23517674 23518380 23580037 23504459 23555279 23559128 23566507 23536971 23542294 23502101 23484157 23561047 23511620 23543846 23579149 23562930 23567945 23546338 23522877 23537390 23584097 23558635 23577326 23532382 23538492 23550115 23576470 23534563 23555477 23590722 23528071 23566224 23556061 23563408 23552436 23505582 23574568 23541839 23568446 23533162 23582721 23547134 23567218 23544051 23568016 23538329 23552156 23593224 23597812 23494908 23578071 23589137 23615786 23497227 23548583 23583150 23541777 23563198 23547172 23628613 23593252 23552061 23525307 23563567 23589058 23594492 23584868 23575414 23571414 23516635 23551323 23549341 23515214 23587300 23612644 23628827 23513119 23533269 23591793 23582922 23529322 23568658 23535834 23551482 23605426 23502695 23559621 23629440 23608585 23595689 23531187 23550125 23640273 23596200 23536673 23595213 23632096 23635669 23523865 23551432 23627324 23558733 23571330 23567023 23557727 23483548 23545648 23570536 23542822 23634171 23627284 23582520 23617130 23585901 23568033 23572491 23554834 23645002 23574147 23574498 23609166 23537835 23537439 23576698 23651124 23571769 23595512 23655036 23637038 23541288 23645963 23589235 23602286 23594654 23599706 23529847 23577363 23621795 23601242 23613826 23584678 23553498 23619342 23620958 23548858 23670135 23594544 23585798 23623736 23662216 23645047 23523393 23602250 23580824 23580139 23628043 23609412 23582108 23594067 23674068 23596722 23629290 23600824 23576750 23599101 23626250 23601378 23563546 23583416 23619544 23612378 23629334 23645746 23597884 23536329 23649653 23600612 23556217 23632527 23563999 23552681 23566200 23588490 23609997 23616422 23621995 23658280 23615163 23620216 23630660 23624200 23616196 23576110 23604444 23564040 23633940 23613602 23659628 23598641 23644883 23573756 23647942 23615317 23609958 23587708 23666989 23594420 23625544 23609264 23585325 23603972 23550393 23599039 23631448 23659704 23675859 23667419 23585156 23622883 23626882 23646492 23634363 23643954 23681043 23662107 23686595 23633946 23603046 23697018 23656216 23698763 23652931 23627562 23659509 23588375 23681138 23622864 23656593 23644717 23666757 23565143 23682579 23633322 23581945 23712704 23641999 23700481 23652365 23632386 23648213 23645361 23593950 23690098 23685725 23649830 23613947 23638259 23665777 23664238 23616381 23679205 23646433 23638763 23679831 23676785 23604788 23641502 23641867 23650124 23691777 23652015 23673408 23668522 23679115 23641219 23673897 23601725 23644798 23667767 23671661 23636773 23653448 23654160 23715910 23646801 23651621 23658899 23648165 23671086 23601945 23649624 23610853 23663338 23673616 23644361 23691578 23667653 23670531 23600881 23670654 23663870 23622127 23640016 23617318 23688086 23663476 23700887 23680961 23681026 23625479 23665924 23646363 23678491 23642341 23651598 23661572 23654888 23638119 23627036 23655952 23693945 23666351 23643277 23704810 23694626 23706301 23732342 23680245 23633842 23713365 23627533 23691908 23670720 23639573 23665981 23648791 23653862 23677947 23624208 23686294 23663951 23706068 23704570 23673627 23697116 23665536 23681493 23735038 23700536 23657823 23698331 23706846 23698626 23667134 23695487 23712325 23725804 23681232 23642665 23653223 23698006 23686621 23653670 23673973 23692327 23690922 23623754 23711344 23652823 23675809 23702163 23636689 23674362 23674930 23684093 23718994 23633529 23708397 23656484 23711313 23722107 23659963 23663099 23685314 23692678 23713317 23708396 23666400 23704158 23724732 23721290 23700661 23701911 23727458 23645238 23711587 23701921 23689997 23744376 23630286 23706167 23669497 23671104 23742656 23705086 23692458 23739745 23710017 23674026 23719192 23683829 23730985 23730120 23706099 23685144 23675708 23754221 23682884 23718102 23733075 23732976 23751419 23692947 23692845 23691739 23690581 23723545 23730910 23740312 23701053 23737637 23713077 23661927 23689665 23742878 23691482 23668200 23757849 23751482 23755559 23736205 23742873 23695291 23693019 23731135 23743144 23749191 23751579 23693440 23660707 23667299 23755164 23716055 23730996 23734045 23717344 23700474 23799858 23758689 23701486 23698021 23744200 23778322 23752251 23690574 23770166 23716045 23757625 23742719 23688752 23744640 23752501 23742147 23705565 23819455 23775033 23749481 23727399 23753690 23768607 23743035 23712510 23756971 23765568 23726588 23697037 23754378 23750290 23771678 23748005 23778912 23749977 23736915 23662634 23706848 23750348 23761589 23746969 23786058 23761696 23721318 23715809 23735387 23731025 23758969 23751869 23739696 23794772 23731506 23812002 23669207 23732569 23742019 23754458 23814235 23763954 23747419 23718359 23782554 23758307 23798682 23746916 23762142 23758486 23786362 23805589 23714111 23778027 23769681 23786773 23707835 23781824 23769887 23729839 23827718 23777065 23773801 23734877 23730127 23762311 23744522 23727092 23806383 23786951 23759401 23748050 23709301 23785492 23828169 23766286 23796940 23802239 23767101 23810939 23784914 23834901 23763213 23768495 23809599 23720631 23708016 23814133 23747707 23788940 23790305 23760476 23747769 23868631 23764994 23813020 23760843 23806177 23795361 23758896 23826105 23732261 23791328 23790464 23791155 23847175 23764075 23775842 23766914 23781269 23745114 23817797 23822872 23771367 23774691 23781628 23775521 23822205 23801361 23753003 23713614 23788857 23725598 23805358 23800410 23830195 23766372 23801625 23821497 23756319 23826255 23758407 23784347 23803865 23809033 23758403 23817310 23746618 23809756 23755680 23765878 23712267 23835418 23778890 23800204 23814417 23819600 23802982 23810112 23782410 23780219 23774257 23822787 23773769 23805269 23751794 23835548 23838998 23807239 23781356 23841352 23797202 23829233 23784771 23828214 23776475 23804161 23800375 23755886 23785525 23875414 23776611 23825098 23815140 23814655 23801250 23751943 23780867 23789092 23800455 23813182 23847979 23851264 23801277 23806139 23846127 23855992 23822355 23839117 23803328 23854663 23798435 23836649 23871295 23825066 23856187 23855344 23824605 23841021 23794178 23850622 23818597 23840178 23789088 23859891 23753111 23841007 23811982 23799055 23823258 23802431 23880281 23856743 23827610 23831436 23809675 23811116 23761331 23854112 23860902 23826975 23817193 23848072 23803835 23818599 23848986 23867483 23776215 23818317 23813704 23941001 23831793 23789136 23808907 23776123 23899049 23858953 23841602 23875667 23849579 23822577 23784918 23759161 23909165 23819815 23787046 23815450 23840975 23822373 23833172 23823859 23710253 23839861 23878214 23835834 23807455 23884269 23849810 23862117 23832408 23816081 23880496 23875732 23833632 23914969 23798142 23807293 23896157 23884270 23861195 23827222 23817432 23838288 23804998 23880706 23842073 23889441 23793404 23826742 23843839 23887082 23829958 23834843 23931278 23821367 23810143 23874355 23860367 23908935 23847797 23877345 23846337 23886686 23861556 23779120 23852466 23852306 23873331 23861352 23813212 23898451 23913673 23873505 23857409 23792124 23859906 23868903 23827465 23885176 23867968 23848434 23845585 23873160 23867313 23841588 23879597 23816106 23843887 23841985 23891830 23835051 23866274 23913190 23864484 23900038 23871421 23822604 23869524 23861845 23840727 23859523 23853640 23864169 23946003 23865753 23904521 23865921 23870035 23856645 23853491 23895513 23853381 23870470 23872725 23878740 23842768 23888199 23840178 23879355 23930980 23849498 23916243 23879389 23880014 23902934 23914913 23881404 23893063 23832848 23924089 23920097 23870211 23905553 23865918 23931943 23905009 23878921 23906457 23919333 23919774 23917076 23910739 23904058 23893761 23884847 23900896 23879370 23927516 23931449 23944078 23897350 23944146 23940657 23951823 23875826 23825671 23881456 23912256 23920395 23915443 23906533 23893935 23951728 23914375 23923299 23909055 23905731 23890513 23848395 23924819 23837536 23863594 23932337 23940838 23885647 23889396 23894426 23909860 23897545 23862974 23870659 23911722 23853096 23919784 23913969 23881587 23861876 23900973 23883457 23917834 23878816 23903703 23876047 23929244 23915964 23901585 23900036 23889031 23911022 23915550 23909699 23909403 23902785 23917225 23884812 23904607 23898366 23873813 23916739 23969708 23902849 23879637 23881015 23938824 23868971 23904346 23976853 23962166 23930594 23887684 23922627 23894320 23901603 23910874 23878461 23931803 23952962 23907197 23939936 23962436 23935650 23913956 23909237 23959648 23916313 23904788 23948671 23916560 23891159 23979836 23934516 23934401 23937266 23914657 23902265 23926198 23930413 23913830 23932224 23975030 23894988 23891074 23935205 23975844 23961305 23947207 23927697 23963498 23941901 23954642 23902994 23918406 23933732 23952682 23960465 23985591 23920587 23934468 23889612 23977558 23976250 23970906 23902086 23930686 23944823 24025086 23904176 23982264 23938852 23895674 23901094 23982533 23900755 23936177 23920868 23991221 23886802 23950348 23924472 23940035 23935752 23884725 23937707 23959636 23905430 23939794 23946831 23885723 23961274 23954345 23953909 23959451 23970329 23950332 23912843 23946705 23956142 23959372 23991147 24003899 23939715 23921143 23962674 23998248 23937778 23942704 23945012 23931227 23978549 23927479 23983317 23945996 23982015 23992204 23946679 23942898 23925403 23916510 23981136 23946854 23936131 23958056 23966383 23988622 24013146 23948026 24021655 23966546 23968894 23956089 23961616 23979011 23955852 23969041 23979292 23959611 23976046 23977254 24002446 23967318 24010955 23945285 23964963 23960961 23990759 23972658 23942076 24000948 23975015 23938351 23987560 23971165 23983545 23927986 24004481 23967904 23939537 23954424 24024815 23985286 23982644 23955003 23983999 23953402 23941837 23998958 23974654 23992750 23951359 23898869 24004297 23991569 24010263 23985430 23980458 24014929 24024644 23978811 23943392 23950436 23935286 24015511 24014338 23954684 23965804 23997527 23999557 23992613 23985681 24016179 24036026 23964654 24030385 23957225 23993316 24007377 23991028 24024124 24043584 23978286 24012958 23983405 24004012 23934811 23984117 24006692 24011651 23919779 24024980 23967263 24052079 23994617 23997376 23983713 24002791 23964871 23993619 24003916 24013280 23916679 24000478 23977389 24060200 24040738 23961898 24030459 24003646 24047334 24000673 24014661 23999065 23979241 24032058 24014045 24022869 23987131 23998554 24066912 24056403 24006535 23997828 24051902 24005746 24061563 24050953 24067570 23986195 24041323 23996421 23974934 24058294 24016893 24050091 24047840 24075139 24007263 24086570 24014047 24031497 24017249 24011907 24034526 24032150 24000225 24018607 24023529 24027185 24042303 24005980 24036356 24009536 24026819 24048145 24014391 23961644 24035165 23966025 24027088 24011658 24014218 24042559 23999833 24023386 24007098 24134472 24007426 24062225 24031003 24029734 24051314 24019984 24005596 24013987 23999339 24034083 24046870 24065991 24056510 24107262 24031890 24023493 24024129 24006681 24018736 24050256 24033531 24067310 24068113 24072317 23988572 23988125 24018328 24002517 24066907 24008335 24119578 24054195 24047062 24085134 24073368 24004344 24044076 24054784 24081771 24059853 24080376 24056396 24040157 24080823 24075111 24080176 24070550 24055334 24039593 24117306 24067063 24056864 23996118 24050986 24095823 24032451 24093529 24122648 24080167 24009658 23975834 24161516 24032598 24107588 24057382 24074131 24042820 24095914 24054161 24064070 24073495 24015304 24100308 24004553 24078268 24088499 24008648 24095410 24050869 24091906 24065347 24063917 24074138 24088604 24044004 24032403 24005468 24013899 24075120 24046637 24065460 24069572 24070408 24132783 24036887 24071528 24083883 24068037 24043393 24109576 24031361 24088115 24035146 24119254 24090303 24033321 24089342 24096140 24080208 24076144 24115584 24075856 24050119 24123749 24062261 24123252 24045663 24055521 24073647 24122823 24066372 24091254 24112646 24117887 24081541 24139538 24088684 24064618 24122538 24111669 24076969 24067019 24077393 24071099 24016684 24044280 24095865 24095096 24106281 24092905 24101531 24111706 24016107 24038370 24124724 24023920 24114233 24091311 24110792 24093858 24081005 24125098 24068269 24116569 24143674 24117415 24099142 24122079 24072242 24089040 24092506 24117254 24040110 24096426 24087787 24053461 24112826 24084161 24115127 24060404 24077494 24114396 24075913 24094260 24126907 24099991 24117460 24111163 24115687 24083534 24107519 24107175 24095573 24128561 24108980 24104765 24110282 24044319 24091915 24084854 24116644 24093352 24112761 24130370 24132306 24139597 24190970 24114469 24049948 24174774 24081368 24150130 24112790 24123077 24133408 24086689 24105754 24068550 24122391 24100172 24161482 24138686 24135328 24131837 24123468 24145229 24078911 24113727 24142287 24123499 24128005 24100166 24091960 24101163 24087771 24133464 24088618 24141069 24144126 24168840 24136148 24127129 24145563 24125742 24089853 24128748 24099932 24224923 24042438 24079841 24103167 24071575 24094257 24159314 24167471 24117798 24121855 24153139 24078674 24151176 24130266 24070064 24154570 24122155 24090033 24143606 24131585 24177213 24104522 24132608 24101005 24161564 24185092 24151958 24184690 24152411 24200884 24096209 24049362 24154532 24127874 24107523 24139525 24194695 24157369 24166483 24149362 24063572 24171245 24141769 24116157 24148585 24101306 24175134 24165908 24140919 24152979 24146368 24133454 24115103 24165370 24146369 24171993 24154811 24178203 24133570 24182757 24094839 24134898 24114274 24179161 24191856 24147529 24174796 24182092 24116639 24103018 24169890 24166469 24175949 24164666 24115456 24139238 24154909 24187541 24173691 24187035 24118125 24162728 24163923 24168658 24152018 24176855 24163025 24203834 24184777 24185012 24158586 24139493 24159265 24210275 24217384 24147327 24147837 24183588 24081870 24209389 24161321 24134698 24174897 24178297 24167835 24170268 24195586 24150697 24168115 24230296 24140947 24176713 24165001 24192558 24168962 24207749 24205321 24152463 24217683 24154545 24154499 24135288 24203788 24183256 24201281 24168793 24184437 24239555 24165629 24182696 24197979 24180288 24218198 24244198 24176208 24202327 24165276 24204638 24195334 24156785 24182992 24214669 24167221 24186914 24197454 24148074 24239490 24178925 24162513 24172491 24183364 24193915 24163527 24159037 24138214 24178030 24149844 24177819 24190863 24164627 24189519 24202290 24211249 24184797 24182475 24215547 24221906 24200334 24267311 24197539 24192184 24124304 24163861 24201016 24207501 24202352 24157543 24168493 24206112 24206497 24195226 24156364 24178124 24207220 24180516 24163331 24163223 24181508 24254598 24218806 24233601 24209286 24208229 24196314 24252961 24275793 24186717 24203906 24221465 24227397 24248173 24198962 24128425 24256795 24153876 24250534 24188828 24221274 24212470 24224327 24234112 24261035 24184756 24187714 24258971 24222233 24208237 24259043 24240235 24198557 24250979 24196413 24205384 24135921 24197404 24213807 24226363 24257595 24166115 24259833 24228020 24195211 24181729 24220334 24202797 24248104 24188793 24235720 24230276 24212522 24214891 24201030 24234399 24329191 24233998 24188233 24270459 24211999 24213039 24226879 24258234 24217362 24177311 24216777 24288815 24275241 24267479 24217787 24252340 24293717 24245335 24290954 24253783 24273896 24223765 24235992 24215383 24236182 24232869 24247112 24228131 24230363 24249390 24250548 24234112 24253036 24232250 24322787 24238226 24267003 24230950 24278361 24234026 24256941 24238064 24203995 24242707 24255694 24226037 24272048 24246102 24251915 24198673 24290319 24307237 24266155 24243193 24244773 24245070 24253425 24211977 24258747 24247760 24264334 24258407 24273717 24257798 24266638 24246708 24254214 24287091 24261511 24238015 24190330 24334951 24226723 24298004 24209222 24328422 24204180 24212158 24248620 24192225 24228098 24326503 24254626 24303328 24246048 24272107 24247765 24354783 24272678 24301671 24351508 24265193 24323219 24215453 24277831 24289659 24245494 24288079 24247189 24287512 24261255 24269209 24295695 24305540 24274598 24250017 24246644 24253912 24342224 24272056 24308367 24329153 24296041 24254149 24281753 24265887 24283414 24221807 24308326 24335634 24278798 24279916 24308414 24240453 24333638 24242266 24309734 24294495 24278587 24281205 24303780 24248257 24312987 24289423 24334797 24278205 24295665 24322069 24267374 24274397 24298350 24311584 24362376 24353035 24301490 24317165 24286674 24319221 24278867 24314151 24298144 24243439 24295250 24250829 24275302 24253570 24293864 24289195 24253637 24293380 24308704 24299002 24361444 24311839 24348314 24265580 24279448 24362727 24315525 24322021 24353967 24346044 24313316 24254827 24316303 24236972 24265811 24323501 24263046 24298133 24378913 24335579 24382631 24280530 24246900 24264338 24314769 24285475 24317182 24259578 24331474 24326492 24324195 24303249 24285879 24374562 24303143 24301925 24297008 24285741 24316806 24256509 24340158 24425768 24359623 24317750 24351679 24248470 24396971 24347693 24334981 24301544 24328371 24297351 24350385 24335018 24406567 24349386 24291961 24280479 24385540 24321701 24293513 24358326 24338277 24379337 24325415 24294081 24305085 24347936 24392600 24333237 24354642 24328964 24300070 24345657 24353079 24356481 24347920 24325025 24317735 24289630 24322517 24324720 24341948 24312836 24358970 24334108 24369917 24358157 24339186 24327260 24301242 24372680 24324958 24333161 24300655 24412521 24349624 24336377 24287589 24297275 24345243 24334877 24311213 24339747 24355279 24301698 24349337 24409544 24301010 24384986 24372669 24375196 24357703 24360355 24344920 24327430 24378623 24387913 24315454 24322414 24358757 24440197 24322408 24381960 24335308 24276538 24320065 24300124 24353107 24307543 24373401 24329397 24346753 24376971 24347354 24353554 24411157 24350685 24326952 24362826 24393617 24386209 24434192 24368307 24328500 24375378 24379287 24341264 24285798 24372264 24388521 24334441 24338808 24356836 24394819 24336770 24351549 24350846 24380295 24337687 24349949 24310594 24397710 24320378 24379659 24341873 24329184 24306175 24436076 24377051 24328155 24388934 24380588 24334242 24365388 24322892 24307192 24312203 24438932 24345022 24348709 24312751 24353261 24369317 24364417 24393009 24364906 24403641 24395672 24390012 24359243 24371359 24421035 24384886 24320042 24403243 24354228 24415862 24357491 24403616 24413442 24455147 24363218 24406573 24372887 24307111 24354190 24406031 24367253 24420032 24396437 24440308 24415750 24349878 24416992 24419700 24404962 24371710 24377760 24392502 24393204 24388790 24338934 24413295 24333680 24433905 24319134 24404180 24342302 24393425 24331748 24391407 24365517 24428056 24396716 24409170 24395885 24363204 24439776 24350203 24427318 24369645 24350576 24371046 24419446 24372706 24373305 24393583 24385572 24367840 24368318 24304042 24404834 24365344 24387627 24420863 24363514 24470142 24427688 24465094 24421255 24416967 24345609 24399549 24396399 24441903 24428176 24428423 24360434 24364325 24384191 24394122 24429298 24402969 24366392 24436841 24393444 24420066 24439561 24421588 24419844 24436713 24388261 24364125 24445461 24418991 24426257 24414857 24355290 24392538 24442244 24363784 24411459 24419666 24430587 24357656 24414231 24401013 24322836 24394290 24398685 24372983 24400981 24433148 24369254 24328682 24371804 24375785 24461503 24455772 24446320 24459615 24443326 24430567 24414727 24477510 24473582 24405895 24413382 24423582 24406695 24376599 24438845 24435073 24457351 24459760 24393067 24427380 24351936 24436250 24434098 24425605 24463939 24494655 24463009 24449584 24465529 24429237 24459491 24393434 24440860 24421453 24505998 24428687 24455418 24404383 24482956 24489589 24479943 24482550 24417623 24488342 24492721 24452882 24379927 24458679 24473055 24442981 24489802 24384255 24450176 24427863 24476702 24427455 24472391 24462661 24394560 24439822 24446771 24373519 24487191 24473570 24452763 24478030 24477002 24467406 24472533 24435758 24467795 24497855 24466776 24452945 24438289 24415649 24474562 24487466 24457793 24433707 24488160 24418246 24427627 24440299 24447062 24490163 24460627 24457604 24425872 24446647 24505328 24468275 24460995 24463320 24516707 24490224 24449153 24464856 24473149 24491891 24480998 24456586 24419669 24451130 24487028 24428868 24528975 24503143 24469225 24440143 24484327 24494362 24434182 24458120 24508719 24466209 24446081 24453401 24474640 24453467 24498867 24483674 24462153 24447581 24556667 24422428 24475465 24503115 24472251 24500622 24494894 24454761 24500614 24539588 24425439 24472355 24500684 24533138 24485737 24545020 24451213 24452083 24556482 24527006 24471438 24495914 24502938 24469308 24531709 24444890 24498203 24518451 24510162 24504939 24461758 24507432 24481810 24501402 24486099 24518587 24504714 24510313 24484548 24503320 24526477 24489904 24491855 24535984 24514398 24493287 24563053 24565766 24431031 24517479 24493320 24505735 24436317 24474264 24577673 24466076 24445194 24502189 24526197 24524874 24506757 24501286 24479395 24504393 24502053 24491194 24485168 24488895 24551212 24506886 24491269 24510972 24551282 24534777 24484446 24523095 24552742 24520116 24495684 24470236 24568619 24502857 24473886 24504607 24510229 24555202 24521739 24560752 24556134 24526408 24512621 24484341 24517900 24455045 24545867 24510482 24499879 24493074 24501620 24458736 24499415 24514096 24545188 24516321 24500272 24450889 24536293 24486790 24510145 24522140 24500408 24495280 24548032 24552175 24537991 24566930 24489438 24489114 24530391 24554922 24473393 24523143 24501898 24506311 24480162 24555267 24513181 24559743 24526128 24567228 24576300 24501039 24544302 24510405 24521086 24521800 24551453 24544139 24519995 24547327 24520444 24545822 24503827 24567538 24528639 24536492 24529162 24544640 24541851 24589281 24589355 24586722 24518255 24510676 24546983 24541385 24538779 24503522 24551250 24519290 24548845 24511102 24513794 24637427 24556348 24568475 24552162 24565244 24534619 24519165 24522378 24537533 24565458 24554209 24547566 24585906 24538634 24497091 24586328 24498891 24517606 24529351 24548261 24565315 24538972 24536431 24568403 24574276 24589777 24510881 24588974 24626151 24553252 24548152 24559433 24578687 24506140 24578379 24546968 24607885 24579807 24564205 24596958 24589829 24581222 24597517 24523730 24544484 24594339 24552911 24535599 24559971 24560495 24585151 24551862 24602304 24566531 24582929 24604616 24506427 24539935 24514244 24586979 24620118 24605515 24534179 24592535 24531974 24578822 24568859 24580097 24560440 24525610 24529279 24580471 24564126 24629205 24606792 24571696 24513278 24657765 24559063 24576546 24589357 24606955 24587101 24583596 24570195 24629009 24622089 24618694 24584424 24573994 24620733 24569092 24604514 24510872 24634080 24624471 24546660 24642968 24569617 24620437 24604950 24619756 24546662 24529665 24551890 24581155 24559266 24636140 24555888 24601883 24569416 24600362 24624477 24578639 24597001 24624957 24579152 24576589 24639676 24574099 24601970 24530362 24631091 24594061 24619322 24577266 24659353 24570593 24583088 24548946 24629972 24595096 24593067 24628188 24589192 24529826 24551793 24599123 24612366 24603403 24581220 24626756 24641007 24554660 24558434 24552569 24605334 24557994 24634489 24575465 24578222 24660724 24584986 24547498 24627243 24636593 24590342 24612917 24603467 24605607 24606216 24563161 24599848 24643827 24637426 24577881 24606850 24673097 24572239 24661668 24595865 24619370 24680461 24704226 24653698 24644769 24626030 24594672 24579943 24586585 24624068 24644621 24626713 24645791 24594169 24618254 24635266 24641467 24611633 24618062 24612345 24627484 24625741 24588834 24645986 24605252 24625929 24649858 24636215 24641933 24634205 24627479 24656837 24556333 24635087 24659569 24631365 24727968 24703490 24677969 24649138 24624506 24674875 24667483 24626354 24675289 24598859 24593032 24660928 24566417 24643035 24705631 24658990 24631680 24670744 24650706 24613505 24613674 24649917 24683704 24653133 24635550 24624191 24628347 24672047 24668960 24603170 24655089 24626869 24643974 24689084 24623666 24649319 24644583 24622277 24694560 24628354 24655502 24670838 24647430 24625619 24692870 24669171 24671641 24649143 24654561 24669172 24646441 24670950 24671241 24638975 24672669 24636323 24660352 24607571 24623724 24695779 24668743 24705400 24734934 24658660 24657883 24707835 24709168 24667017 24670896 24657827 24647506 24652537 24645232 24692211 24691976 24714976 24633887 24655906 24645207 24649893 24642829 24633299 24672989 24691733 24722522 24663188 24658621 24692775 24692443 24683095 24630965 24671046 24653299 24680514 24701940 24656395 24663932 24702952 24663196 24720246 24651316 24679961 24670335 24668632 24690057 24646444 24665032 24676254 24688552 24697151 24680994 24675403 24666464 24677635 24695889 24688347 24655008 24695467 24685690 24688060 24654243 24655747 24694479 24718997 24679799 24687428 24675115 24715678 24713673 24683239 24712533 24720773 24732223 24705728 24675222 24745220 24698644 24688773 24716298 24658990 24657632 24670283 24723222 24657422 24712762 24729087 24722628 24690185 24714989 24716927 24712043 24657178 24720963 24704305 24745829 24688033 24671430 24680039 24687137 24708747 24639355 24636979 24678535 24734327 24692707 24683905 24673509 24706423 24713623 24715820 24686064 24710452 24691121 24694310 24692818 24718462 24690005 24692708 24755668 24723656 24711613 24643404 24692336 24745373 24732291 24713132 24726290 24688121 24736028 24742877 24739884 24744172 24720487 24682899 24754233 24761060 24696652 24684530 24731981 24747169 24774021 24713821 24714801 24742886 24777134 24755061 24686355 24757030 24726675 24711414 24695923 24750956 24725540 24728667 24700224 24753185 24699761 24722115 24673278 24763905 24691727 24688174 24766165 24682132 24745532 24700424 24772003 24733564 24719759 24726198 24736836 24745179 24790742 24723118 24745049 24713491 24717971 24711701 24726641 24755255 24716458 24770838 24705300 24730181 24706174 24767455 24791076 24764469 24750925 24724638 24760499 24736507 24719837 24753776 24774581 24821220 24770623 24742320 24744382 24716577 24821934 24786824 24788155 24756554 24743032 24746274 24793521 24706198 24694485 24684819 24728999 24757073 24723053 24781411 24806489 24705809 24761316 24823038 24732269 24797550 24745060 24774622 24773442 24763195 24752977 24762970 24786230 24825070 24722916 24759126 24745286 24788764 24769571 24768454 24775858 24747337 24789580 24783736 24732062 24734575 24693312 24738257 24743152 24741757 24773404 24791037 24775310 24754574 24794309 24768612 24764898 24758495 24708448 24771778 24769209 24721720 24779752 24850422 24760551 24825912 24735834 24761165 24824191 24794334 24820432 24746730 24746589 24732392 24772725 24799970 24731004 24762243 24778511 24759678 24732637 24733233 24807607 24803987 24751593 24780056 24785169 24842644 24723137 24824357 24797762 24722338 24820783 24808729 24771255 24788801 24748483 24742518 24782804 24787745 24774391 24821332 24766510 24779289 24795085 24770653 24802116 24819545 24747764 24857708 24766867 24805517 24835683 24826094 24762179 24812128 24815899 24837916 24811374 24853836 24841023 24742751 24807143 24760927 24794503 24774045 24762299 24808891 24797700 24787771 24777042 24826002 24754038 24819069 24770858 24806639 24825549 24770994 24818105 24780241 24792206 24783553 24829743 24794405 24891259 24813401 24778720 24806696 24806108 24743856 24799784 24883101 24882710 24829868 24826221 24810812 24764050 24843306 24834821 24824877 24880588 24822247 24861844 24855680 24791076 24863578 24820896 24843594 24831651 24814877 24818216 24738883 24825567 24875669 24831925 24767833 24796476 24868315 24762300 24864238 24837789 24827180 24833731 24761663 24831583 24785754 24831384 24834359 24798201 24891174 24811564 24816015 24833646 24801748 24821255 24737360 24825109 24792181 24826180 24779990 24844038 24839890 24808673 24808181 24817887 24879124 24810156 24928642 24801562 24801950 24869655 24816631 24862479 24761539 24819485 24900082 24851542 24759915 24859795 24830150 24854584 24814184 24875287 24864349 24883064 24842124 24857848 24817549 24862326 24822208 24793252 24816480 24842405 24850515 24819623 24850473 24901811 24922106 24847862 24863768 24870629 24833810 24859004 24798595 24838974 24921571 24868127 24840173 24875693 24875504 24831702 24844535 24898441 24846365 24806358 24829117 24873121 24852367 24876548 24876880 24900400 24907196 24939572 24829029 24843508 24789139 24794000 24835464 24882777 24825659 24869350 24871411 24822187 24845079 24850257 24853349 24812998 24861141 24849759 24867930 24865142 24836753 24881186 24882411 24887072 24934427 24901795 24812059 24853880 24831691 24880219 24910224 24817612 24919679 24906188 24811774 24808499 24866912 24865801 24887644 24884978 24878974 24835100 24840446 24804452 24875064 24843408 24892820 24880187 24842103 24847658 24940778 24798521 24879569 24853765 24821216 24854086 24884565 24883331 24878574 24899967 24878182 24896504 24888789 24897677 24869598 24865226 24864963 24872953 24898210 24819847 24918167 24883709 24888330 24932115 24827249 24910815 24841099 24833677 24830391 24867641 24944176 24945438 24897315 24872839 24862216 24816978 24902809 24891211 24855555 24884301 24867152 24867018 24883996 24919932 24919914 24889249 24883360 24882069 24826544 24875136 24903148 24865425 24918394 24950147 24941117 24932758 24869987 24941979 24924644 24949225 24909475 24926560 24853743 24910286 24876370 24908592 24910962 24954429 24908303 24928482 24942886 24977909 24935186 24919853 24870597 24897048 24818065 24907962 24917547 24935426 24930350 24879248 24871579 24886559 24877392 24889008 24924445 24922458 24942437 24941885 24862834 24951643 24901944 24884280 24960213 24917806 24832953 24919968 24897239 24935151 24936293 24953091 24927093 24933675 24949340 24880803 24929243 24911838 24941272 24892247 24938020 24915301 24940680 24919914 24945334 24911539 24962862 24894237 24922403 24948459 24896270 24964989 24861842 24912342 24936510 24871803 24934918 24915853 24880231 24944523 24821313 24906567 24974727 24948311 24900297 24951974 24900361 24927495 24888669 24935339 24932361 24914499 24876468 24967070 24936459 24956791 24930528 24974949 24916730 24913233 24918696 24933490 24937873 24900805 24920434 24969861 24947552 24951958 24929020 24945660 24867670 24900521 25011834 24946151 24973175 24925996 24935660 24964296 24930097 24964626 24969636 24928097 24954072 24928163 24918125 24927656 24946184 24978020 24959579 24895910 24993814 24941840 24877246 24990386 24935782 24979076 25028590 24942605 25009189 24887174 24931804 24919520 24942588 24896895 24979297 25003395 24929128 24962975 24954341 24953573 24929673 24948223 24894064 24891135 24929047 24917698 24940015 24929775 24911827 24956493 24905781 24980050 24958475 24995037 25013108 24908115 24955240 24946795 24958138 24962385 24998610 24964930 24910197 24918973 24970632 25006380 24937144 24927872 24974444 25023252 24993610 24939084 24904485 24926729 24974322 24987092 24998588 25005836 25040015 24982948 24986613 24980874 24981889 24954928 24988195 24991612 24991010 24954701 24973089 24988490 24956594 24964527 24975655 24958526 24941041 25033017 24968367 24954384 24948031 24966954 25007418 25018728 24940024 24986627 24923768 25004328 24988231 24946013 24963963 24958730 24905944 24941997 24967778 24970325 24937736 24954936 24957423 25046812 25002078 24960562 24944582 24984912 25000837 24988206 25071605 24930534 24994438 24968443 24971139 25021450 24970208 25006124 24969359 24974949 24967360 25018481 25024786 24973306 25001923 24946999 24971262 25010694 24967190 24989174 25039632 24972198 24952242 24990367 24975783 25008370 25024338 24978773 25007591 24936100 24956128 25014387 24988591 24997108 24997896 24982112 24998954 25011646 24947977 25015029 25029567 25009836 25006254 24996539 25007802 24977903 25004609 25036942 24974577 25071421 24955598 25016628 24968014 24966026 24992698 24987002 24979151 25010072 25027310 25018493 24980414 24969064 25038038 24991781 25037602 25014729 25004916 25011821 25058348 25014935 25006291 25052583 25031271 24994562 25017077 24973626 24975386 24974834 24989505 24987365 25052425 25006139 25035322 25037200 24986451 24966443 24978058 25051838 25000636 24935255 25085299 25001970 25016429 25011609 25053208 25035538 25034390 25051910 25030617 24984770 25078692 25041289 25050343 25039414 25070654 24990066 24980676 24996311 25009157 25019661 25046770 25054210 25067319 24997563 25066020 25036262 25031235 24971119 25011579 25032747 25030483 25038337 24948972 25085687 25032715 25024100 25008966 25045538 24992651 25020596 25005755 25049898 24999924 25067623 25054496 24987334 25037657 25075652 25031030 25018395 25027626 25010011 25023266 25032594 25078298 25083439 25040303 25106622 25023791 25032280 24990034 25073888 25060055 25039575 25114049 25070714 25046166 25018024 25049443 25084337 25042807 25112675 25071995 25029913 25052601 25055896 25044794 25000256 25063225 24970309 25037071 25117397 25020249 25031537 25036820 25093515 25002957 25032757 25076324 25065268 25062811 25046907 25021801 25044894 25045883 25053585 25114605 25051484 25070644 25044463 25062925 25074043 25036376 25052785 25050172 25048655 25111021 25107350 25056567 25139604 25061165 25030785 25059820 25117828 25091823 25060497 25102776 25049439 25110394 25039924 25108703 25059498 25099816 25027325 25051208 25045382 25074255 25081748 25076049 25069288 25087235 25044692 25112558 25073633 25059497 25099186 25052011 25089285 25125546 25129422 25137041 25113000 25119767 25094641 25083573 25049991 25075224 25099598 25098591 25054765 25091253 25047026 25066246 25081053 25041241 25097947 25055003 25096090 25101189 25070133 25107427 25083183 25053498 25120148 25118966 25128753 25144443 25114386 25082092 25075251 25131927 25080649 25090796 25085944 25114142 25085265 25198622 25190144 25117708 25081318 25112599 25154151 25110779 25111704 25139031 25090945 25098230 25150193 25112418 25082446 25142237 25083623 25132985 25084455 25061120 25084317 25090456 25143845 25154614 25100787 25117586 25089268 25099488 25096583 25104896 25120659 25099483 25134452 25131868 25148543 25117951 25121238 25100670 25102974 25139474 25147297 25082844 25159631 25150951 25117744 25077918 25178076 25123900 25044948 25094430 25088682 25172804 25109890 25123213 25130811 25153892 25131515 25088219 25153162 25106836 25148119 25115052 25101455 25093158 25177222 25130299 25059253 25123098 25096153 25192229 25161216 25120351 25101666 25156654 25161218 25133248 25163439 25193896 25204034 25114069 25097446 25108731 25198047 25102918 25101566 25146908 25144833 25142378 25163625 25143135 25171149 25163789 25147776 25189468 25142826 25125264 25120521 25193960 25112586 25129346 25132421 25142935 25121423 25229578 25178140 25163049 25155351 25095933 25153048 25170787 25221631 25130212 25151410 25152418 25130774 25174369 25108343 25208232 25162655 25188901 25129469 25141297 25208577 25116882 25196920 25141174 25138439 25168195 25193127 25176109 25170625 25181090 25132801 25105576 25208360 25237477 25138829 25208410 25134024 25183196 25158037 25151503 25144361 25159158 25124616 25194918 25193171 25149492 25127966 25189879 25198323 25095017 25131081 25207998 25195286 25121941 25211469 25232673 25149992 25219457 25225020 25211826 25185234 25171606 25174033 25221988 25141824 25173970 25170664 25201517 25155253 25218585 25238235 25172230 25196963 25165982 25230342 25132019 25135385 25215096 25185204 25188907 25219896 25220718 25208566 25160734 25262096 25201073 25170992 25212166 25193509 25217589 25217240 25199777 25184842 25164032 25185260 25249837 25220553 25195283 25226271 25204176 25239057 25176698 25220271 25155858 25221624 25195839 25146562 25185746 25202612 25263972 25211734 25244049 25244779 25201273 25165802 25220815 25162404 25177880 25256192 25200823 25202566 25206268 25158290 25130503 25212940 25150721 25219321 25242203 25197544 25216020 25233211 25193904 25194855 25200864 25238770 25271888 25132210 25191616 25242084 25207481 25221226 25149856 25198980 25203612 25196362 25213609 25169411 25190689 25183257 25187187 25215517 25245646 25224663 25301286 25189843 25251983 25210263 25239747 25198828 25243896 25232483 25257865 25262365 25220203 25185607 25184605 25271622 25242185 25172691 25225188 25239978 25239956 25197482 25148289 25282781 25215657 25275192 25255915 25221839 25250712 25213898 25248174 25206200 25245265 25213725 25244233 25255755 25190476 25217636 25170014 25200623 25203555 25279807 25266913 25269249 25255953 25232659 25255926 25280093 25273011 25209455 25236801 25245383 25251158 25249828 25265457 25250615 25192856 25237604 25257438 25191154 25222072 25256675 25303944 25228420 25294800 25205554 25245732 25240286 25321968 25238208 25251000 25236992 25216035 25274854 25239648 25256130 25250908 25217906 25237355 25204669 25244202 25207335 25218888 25239002 25215399 25250124 25279318 25279071 25308010 25231677 25246605 25232732 25239037 25220949 25270921 25282647 25228063 25225792 25290477 25264920 25223652 25221073 25234138 25273106 25251323 25309821 25202033 25266717 25262295 25223062 25273572 25326747 25265215 25287670 25277769 25232734 25266631 25236002 25294599 25310320 25259650 25283021 25276054 25206426 25271626 25277262 25231248 25257886 25325766 25219536 25288260 25235537 25273015 25220780 25269736 25240835 25299181 25271197 25210842 25257154 25241129 25281788 25224177 25282623 25279332 25322058 25295081 25338357 25249569 25256178 25272122 25267549 25305714 25291890 25279070 25248958 25256204 25261068 25296364 25260284 25256259 25303409 25335484 25279415 25252023 25339575 25279122 25264876 25293558 25234329 25337501 25298294 25269329 25325726 25302531 25289284 25320887 25265117 25336986 25251617 25327026 25289082 25345622 25276308 25340596 25260075 25308608 25256252 25306876 25331911 25265793 25304202 25294071 25268202 25282771 25249676 25288535 25237058 25228848 25341905 25278897 25298230 25292343 25310633 25253115 25289005 25317208 25250779 25300587 25288324 25337919 25332846 25306098 25256466 25293026 25310907 25321989 25340582 25341802 25305257 25284588 25254709 25295822 25293503 25299787 25334086 25262738 25269267 25306697 25339120 25365546 25288611 25332158 25332512 25300688 25294487 25282000 25336381 25350897 25335467 25326426 25293087 25383664 25353410 25287321 25290491 25295923 25293980 25287716 25393262 25311627 25354769 25294267 25321893 25316782 25273407 25298253 25355039 25353967 25308926 25291200 25233633 25303096 25317376 25382574 25334171 25307183 25349709 25330468 25377532 25319473 25290643 25383578 25366422 25327239 25323079 25351268 25284011 25351229 25355174 25353552 25372394 25352602 25351251 25360734 25348549 25354177 25311668 25388764 25330624 25347637 25371664 25298146 25283365 25386088 25381848 25360381 25340818 25330300 25311578 25346523 25337487 25332410 25338583 25339152 25344057 25363689 25345000 25356218 25364017 25297425 25288604 25302294 25346154 25348354 25380351 25327646 25359707 25339151 25358024 25349130 25393631 25369163 25366662 25342348 25379976 25354812 25349345 25352463 25347902 25361308 25322125 25347106 25343519 25409227 25341919 25353536 25382355 25349146 25366083 25380654 25363947 25385123 25401241 25360580 25357258 25401570 25339003 25379873 25408042 25390570 25318068 25379973 25317004 25343143 25277273 25377844 25343182 25364561 25389827 25397274 25380535 25361996 25343303 25345407 25419043 25362757 25397874 25382405 25358371 25310816 25343887 25390354 25418904 25399631 25367968 25373966 25361738 25403946 25313191 25393232 25359186 25303903 25428655 25424219 25358445 25362667 25298033 25416841 25394643 25372962 25351764 25323797 25362401 25410992 25429349 25404819 25356592 25352460 25475351 25380372 25362186 25386508 25386629 25419114 25370029 25389182 25386470 25407271 25406092 25404348 25360819 25386864 25394023 25437527 25434740 25430112 25404486 25442450 25387002 25348636 25331237 25442165 25420532 25319974 25408118 25413356 25364097 25428416 25441111 25444639 25367591 25393857 25364224 25396366 25397648 25431309 25411027 25432299 25395858 25326085 25413877 25409327 25366286 25380797 25392300 25397166 25438635 25330817 25365044 25353693 25400548 25407603 25482838 25420184 25453271 25404426 25416393 25445327 25447964 25423475 25477927 25441681 25434212 25381618 25421575 25356805 25351445 25433013 25404919 25448463 25424932 25396945 25400621 25414414 25364851 25437250 25448748 25402864 25407602 25413371 25390953 25433653 25462759 25399175 25448306 25404188 25378343 25403882 25382030 25442492 25427482 25450340 25470132 25401634 25447501 25412309 25465913 25389924 25438951 25420458 25428792 25444427 25442143 25410948 25470269 25385309 25454709 25407714 25375964 25382066 25447931 25380955 25463407 25401820 25431304 25406958 25402900 25386540 25427681 25423036 25425440 25332548 25396818 25450631 25396855 25437903 25480121 25426195 25516327 25441028 25438869 25396954 25487097 25413063 25466888 25422169 25408813 25446386 25404264 25390165 25431615 25465608 25435818 25438217 25411537 25456174 25464275 25423542 25486706 25451183 25452807 25460869 25394698 25479700 25438641 25425352 25457833 25460503 25453219 25459440 25472618 25380780 25430069 25433065 25438349 25436956 25458544 25426967 25462547 25487369 25488982 25511899 25496886 25476750 25498679 25460734 25469775 25429995 25463873 25495109 25445759 25434721 25469077 25441126 25404385 25485340 25456412 25399684 25416198 25497085 25462323 25465644 25427513 25425603 25512494 25483664 25448218 25439326 25466176 25452690 25429157 25431242 25461277 25506838 25537396 25435444 25472379 25532277 25477333 25446869 25508179 25498848 25510848 25464482 25410277 25483208 25455002 25461850 25448454 25481754 25504943 25530536 25476054 25497414 25518057 25444655 25499129 25481310 25502025 25489892 25541885 25508574 25495295 25531727 25501033 25450703 25463078 25495723 25485483 25409927 25493387 25483205 25467963 25467910 25461354 25506440 25520732 25492354 25529665 25444380 25511263 25515236 25504554 25515107 25457326 25472175 25493275 25503531 25466936 25489315 25441698 25473611 25508829 25519413 25471816 25514815 25518138 25485656 25571237 25462036 25469306 25512787 25448052 25512792 25509939 25503484 25465012 25452949 25486401 25455407 25508635 25550671 25488180 25495473 25525428 25514744 25542883 25519505 25535272 25462777 25489967 25507335 25471409 25465298 25403954 25548458 25527225 25482739 25491409 25438645 25490800 25562763 25474304 25450276 25485912 25478450 25515534 25545658 25495569 25587007 25550242 25552178 25519883 25467273 25587599 25517086 25512744 25491879 25517453 25536052 25497019 25504383 25495153 25513448 25559364 25526280 25504482 25517072 25478264 25569666 25535003 25515350 25524254 25570662 25452858 25504621 25549539 25552704 25488923 25525486 25551247 25490560 25587729 25449630 25581902 25535455 25526570 25497695 25528357 25480431 25525240 25519116 25541050 25476400 25454396 25564521 25515220 25536150 25582849 25554853 25524672 25524619 25492099 25481831 25489675 25544870 25493345 25494259 25547344 25518185 25521316 25519492 25544412 25512755 25520162 25552067 25487961 25522109 25535007 25534587 25533415 25576105 25556494 25517806 25573240 25539136 25519409 25510681 25523296 25512591 25536404 25552226 25555553 25574981 25556723 25491474 25572616 25534967 25598459 25534559 25529811 25566659 25529693 25480640 25551956 25592257 25531587 25590791 25515828 25549425 25530449 25523447 25523724 25556622 25537688 25597984 25511896 25497360 25548362 25557835 25604959 25526082 25544501 25543253 25464089 25561412 25497479 25566553 25529965 25551786 25511506 25583903 25556371 25549073 25538913 25556486 25563046 25584745 25588666 25599011 25547873 25581754 25573752 25561609 25616729 25531440 25592857 25577245 25629537 25570531 25594964 25502226 25560100 25562585 25520539 25620141 25565882 25537943 25588075 25558447 25581277 25529800 25540346 25583548 25580467 25515254 25544720 25554394 25555972 25632583 25566805 25536668 25557657 25535355 25553332 25581807 25562023 25592192 25547090 25612284 25569942 25552013 25581820 25549337 25556014 25603329 25588480 25612994 25639254 25583588 25551273 25645404 25553961 25575846 25626330 25575776 25587536 25574353 25603676 25616169 25619484 25605438 25591834 25591071 25597892 25551031 25560641 25614404 25652963 25547072 25618278 25611821 25568945 25562694 25643686 25598191 25510640 25551824 25518930 25646794 25594616 25567343 25591183 25620449 25644378 25559811 25633367 25578694 25615707 25517827 25573784 25637937 25576109 25574854 25592106 25618810 25582213 25577107 25590267 25642718 25547906 25591822 25658776 25597765 25553625 25610101 25635301 25625598 25583135 25575500 25625638 25532244 25598186 25570749 25619318 25638152 25646162 25582393 25609569 25614953 25652916 25672607 25597134 25630518 25664010 25605856 25595484 25576734 25601461 25539567 25563264 25612648 25652997 25596774 25634618 25653233 25626968 25577255 25571884 25607918 25574647 25611948 25634091 25610457 25623154 25614336 25657222 25625847 25591149 25573335 25628880 25604669 25657888 25622807 25632892 25647109 25606628 25641638 25649730 25607173 25640490 25642850 25650105 25644597 25663955 25676719 25609724 25644944 25658795 25625850 25642844 25612929 25641577 25617996 25665520 25610420 25620157 25619263 25703760 25657754 25635548 25656241 25605796 25634822 25690994 25689457 25652441 25654002 25671018 25637036 25746760 25651066 25649332 25575932 25614513 25685091 25692048 25650534 25647337 25606242 25682070 25633863 25662492 25641623 25616392 25640930 25639186 25638832 25661735 25654181 25666793 25634838 25718840 25687601 25691882 25710386 25667461 25649756 25689438 25587784 25669945 25672667 25654532 25626074 25582363 25595576 25622492 25654169 25674255 25672893 25658220 25667361 25759451 25634677 25646617 25685938 25629239 25652911 25642088 25707912 25665978 25687202 25661788 25659560 25675917 25650636 25662347 25660265 25709215 25676965 25630458 25730739 25736026 25711065 25601708 25655873 25742332 25682781 25661536 25713763 25657491 25778333 25678817 25699842 25644107 25756421 25678515 25651263 25650261 25706711 25742849 25642059 25670808 25695031 25704323 25692105 25666315 25706222 25691906 25662498 25651025 25722682 25691866 25713320 25691341 25692411 25653954 25707993 25671009 25659172 25671266 25695361 25616168 25691720 25682180 25629235 25692561 25698747 25677602 25684906 25656490 25702755 25689266 25670476 25663316 25693388 25692889 25691792 25717098 25728931 25657507 25768073 25692015 25736417 25758094 25760407 25667947 25664135 25643639 25634622 25653429 25691518 25757683 25714769 25704223 25627716 25718795 25713671 25640509 25685158 25651778 25705640 25703078 25688005 25705773 25690947 25680776 25699164 25689859 25699185 25758842 25706286 25680089 25675131 25703886 25633000 25698679 25692754 25661414 25706771 25691290 25720930 25692502 25714077 25712969 25713412 25685756 25684520 25744698 25794445 25694079 25683352 25752292 25776029 25743378 25762524 25711552 25756917 25724715 25711556 25759840 25682717 25701694 25666809 25734571 25707684 25694668 25691702 25769337 25701680 25700851 25714802 25747723 25704639 25775516 25709535 25740372 25751189 25714683 25709997 25752799 25728053 25756124 25790420 25740174 25754299 25670128 25703877 25723473 25766994 25732420 25717674 25713484 25792868 25761794 25710291 25728227 25735738 25731317 25692248 25709603 25752989 25764540 25733767 25720208 25728207 25750559 25741627 25736167 25703242 25803800 25711187 25752389 25694020 25799732 25780607 25745297 25797997 25731400 25744667 25733136 25734887 25750072 25800544 25726056 25803742 25728689 25790951 25797061 25787544 25734269 25747318 25822389 25791660 25729903 25779229 25754006 25770310 25733458 25756366 25812048 25698535 25729463 25762693 25691101 25826982 25782976 25762477 25727978 25784820 25784422 25769170 25702166 25759232 25719409 25751450 25768912 25759015 25802483 25820148 25748702 25788824 25722935 25707167 25711866 25817648 25838431 25839225 25767289 25785708 25733731 25799859 25826222 25717700 25758240 25796628 25771105 25805813 25778171 25757310 25801585 25791451 25835781 25811883 25753463 25787291 25734518 25765371 25739133 25762147 25775367 25759293 25763799 25782103 25820885 25710675 25746895 25785752 25789919 25751850 25820170 25729353 25777528 25756373 25814067 25770720 25808232 25705284 25779356 25787794 25860022 25785640 25811448 25764489 25811841 25831240 25805877 25852083 25824554 25837323 25822481 25787464 25834405 25729674 25764099 25785406 25809096 25794783 25755996 25767023 25849096 25809760 25854551 25816123 25805945 25852062 25776672 25799817 25754391 25834494 25789213 25810272 25826982 25773370 25800606 25845841 25839735 25787499 25805381 25782650 25820276 25794428 25797485 25749710 25804844 25821289 25760726 25836970 25733105 25834548 25840419 25842680 25836851 25822571 25773137 25834872 25858462 25823346 25834402 25883073 25783133 25813130 25787899 25875949 25835994 25818317 25812287 25736410 25762651 25812035 25805827 25829226 25781589 25848205 25804867 25853249 25804213 25805470 25808604 25762326 25802787 25747030 25782951 25786789 25815311 25857760 25800580 25778675 25789043 25842624 25830710 25831240 25774872 25883761 25766594 25837775 25896084 25834503 25839498 25833154 25817112 25795283 25817245 25829447 25861662 25758762 25791512 25884800 25814336 25821295 25834209 25777908 25890707 25914000 25801143 25818600 25857054 25815180 25866761 25813905 25784002 25857299 25792439 25808744 25809492 25800328 25797373 25817479 25822156 25866801 25842878 25841406 25787064 25809891 25846139 25886645 25849786 25820569 25869712 25872695 25826331 25858480 25830576 25793699 25883288 25869261 25897990 25870106 25889926 25906414 25820946 25950444 25775848 25844673 25875852 25897084 25843925 25889276 25869443 25812197 25852734 25880419 25878159 25874933 25836138 25872147 25878488 25877041 25897469 25867992 25912857 25933578 25807081 25896850 25905218 25853856 25891945 25852141 25885740 25862258 25865152 25852638 25887441 25835852 25858419 25888792 25875287 25865900 25854342 25879361 25848265 25894886 25883469 25861452 25888350 25840056 25882181 25923706 25814337 25834986 25875500 25872438 25871902 25791947 25894219 25843330 25842741 25839991 25864287 25845837 25870369 25892283 25859008 25860705 25864285 25879729 25833522 25822642 25904860 25829646 25877625 25841348 25882510 25875824 25869845 25900513 25812909 25865128 25832836 25864691 25856238 25911675 25813982 25935402 25894040 25875017 25869891 25944255 25863675 25942674 25897418 25859444 25842150 25883087 25917711 25906795 25904104 25926323 25946333 25905410 25850076 25888395 25934796 25866490 25886586 25917929 25845894 25938799 25919543 25858431 25891179 25826638 25900676 25882457 25871005 25891337 25872483 25902021 25939210 25903268 25898770 25896687 25912134 25860700 25857805 25967492 25928575 25905200 25889442 25900142 25934025 25955406 25914617 25918839 25931876 25898821 25935126 25856583 25922322 25865790 25891005 25870886 25901237 25939570 25855984 25935749 25901200 25897505 25894226 25885412 25921919 25938050 25851789 25938701 25972066 25897866 25877415 25955942 25934442 25908814 25880019 25930723 25910287 25881857 25884994 25965210 25962981 25942142 25888004 25903335 25969123 25972052 25931805 26002519 25923346 25926478 25950433 25922150 25930428 25891807 25891863 25933801 25946054 25965421 25942152 25936597 25884520 25915594 25886271 25916050 25930510 25947543 25901359 25946902 25902782 25903804 26023303 25943640 25993627 25932855 25907700 25905505 25865255 25946641 25943342 25993669 25935858 25956959 25921682 25962205 25966210 25931592 25967141 25928484 25913515 25920389 25951619 25946273 25925040 25909920 25919263 25954742 25887133 25970157 25922305 25892797 25899462 25922070 25954700 25908211 25950071 26001755 25914753 25946759 25897849 25967394 25970278 25906573 25939354 25946259 26001133 25957448 25958667 25899462 25922953 25924001 25934764 25930609 25933845 25977366 26027396 25979440 25962061 25961878 25978377 25933723 25971528 26011273 25929419 25973251 25964646 26059849 25942449 25950105 25952263 25969967 25943661 25965773 26003563 25941894 25964606 25970796 25927908 25940403 25972582 25947531 26020117 25946106 25972555 25964758 25966226 25989852 25906532 25960505 25926859 25909954 25955043 25962506 25952711 26061359 25963783 25961611 25929678 25991242 25945916 25993763 25976865 26004211 25949623 25936446 25943105 25964215 25905906 26009528 25975500 26012553 26010760 25959509 26031072 25974100 26000423 25969364 25986707 25947092 26041799 25922676 25966905 25968956 25925722 25940533 25940202 25973438 25975183 26003711 26050144 25977509 26026837 25971267 26010173 25954900 25947185 26009259 25976905 26015882 25999200 26001526 25992498 26010215 25931793 25970274 25986039 25978184 26019578 25957402 26013290 25994849 25990411 25987042 25972894 25962143 26035378 26034494 25996836 25998084 25940299 25936307 26014785 25974337 25916471 25985150 25973003 25988521 26049151 26027147 25992716 25975994 26061943 25950686 26017495 25975036 26016736 25976460 25995803 26051955 25994191 25972064 26046206 25995476 25948449 25994207 25954675 26006045 25984991 25947785 25993565 26065452 26069984 26040880 26049308 26043132 26014414 25989915 26022120 26005428 26060593 26001431 26042972 26013107 26056562 26038311 26011197 26024801 26033241 26032219 26052914 26094302 25993443 26136151 25996036 25999652 26036118 26004692 26011297 25984225 25976407 26053340 26035702 26002644 26004163 26075377 26006581 26027923 25994984 26025658 26039440 26024250 26019747 26040834 26007201 25992547 26025200 26016959 25984736 26002287 26009967 26026893 26012063 26009156 26018667 26009684 26006140 26020132 25985873 26014693 25990482 26096335 26038664 26003762 26009365 26053321 26041360 26011123 26076585 26001796 26060418 26069599 26053800 26022683 26137929 26031615 26063825 26085286 26039651 26110188 26029349 26002804 26044219 26067101 26050900 26083637 26042048 26013572 25982555 26025819 26033930 26054090 26039786 26103136 25982911 26060529 26057191 26058700 26097626 26067761 26036594 25993139 26030001 26008181 26025249 26058293 26048563 26057481 26036812 26052555 26092778 25986522 25995623 26064209 26128331 26039897 26026166 26050504 26068924 26007110 26061287 26013103 25997318 26062253 26014154 26065321 25998462 26092971 26079151 26104192 26069840 26022203 26088274 26023375 26038512 26024241 26096472 26084277 26042327 26074407 26093426 26124554 26076723 26089209 26032444 26032276 26100397 26018572 26086470 26063479 26121070 26113687 26095318 26060434 26072547 26037831 26027964 26115164 26067842 26043368 26051461 26037573 26047217 26072941 26094943 26065510 26108182 26045761 26050699 26070838 26049200 26070538 26075785 26066282 26102448 26067986 26124924 26087681 26068283 26098881 26065239 26125650 26100402 26095622 26154380 26150765 26084429 26079572 26050559 26120594 26061352 26104842 26071200 26066978 26125292 26084519 26116895 26072712 26098117 26149592 26100644 26071452 26008740 26060939 26076005 26117101 26111768 26045900 26112755 26093909 26051812 26052972 26075826 26099147 26046996 26081814 26123388 26074336 26074716 26130797 26123089 26064322 26107853 26095591 26115845 26112289 26045974 26126971 26104679 26045862 26132998 26118127 26085300 26080700 26144106 26122361 26155052 26110332 26065581 26101316 26093372 26123453 26112464 26078645 26067498 26152636 26152705 26095957 26108416 26155591 26087972 26109575 26130164 26161525 26121028 26098002 26135181 26054530 26115547 26126416 26140390 26090529 26167568 26098592 26064171 26155602 26127323 26185387 26142659 26056557 26156442 26141006 26151738 26154237 26141347 26089736 26148243 26081154 26133306 26182626 26116521 26149889 26114748 26131617 26090975 26112817 26120663 26083450 26066870 26167623 26090876 26151095 26155431 26104025 26178645 26129420 26199282 26122528 26070994 26072584 26128436 26146915 26177693 26149317 26114665 26123062 26105828 26115575 26107615 26182012 26086683 26126677 26088318 26119274 26114942 26154780 26164913 26120137 26185554 26167480 26107020 26195481 26143227 26120600 26151963 26164970 26141204 26133687 26190631 26093705 26089328 26100341 26200882 26161567 26172013 26157071 26109994 26135022 26161407 26139398 26091579 26154286 26068537 26175372 26144704 26166834 26176828 26168920 26106161 26132706 26149092 26143652 26206692 26184764 26145375 26151811 26134347 26174729 26074972 26158112 26192071 26229320 26188806 26148467 26157368 26185176 26117363 26198749 26161596 26209585 26208568 26159964 26117052 26143114 26100340 26193654 26143202 26112767 26161269 26163476 26159744 26146312 26138499 26205438 26199970 26172997 26151344 26122511 26145966 26187794 26194025 26169533 26160984 26217337 26227001 26162462 26179115 26164360 26208585 26137125 26163172 26183553 26210635 26173200 26165879 26148945 26153230 26182465 26163690 26164453 26171573 26205762 26145692 26221920 26217882 26211525 26220387 26161950 26126095 26234305 26202466 26210932 26171687 26170068 26174449 26201629 26142579 26156804 26159719 26177961 26157036 26222192 26167820 26197775 26163175 26204077 26157152 26181619 26161461 26224599 26150792 26133762 26206684 26188748 26146755 26166414 26191352 26239483 26189787 26184934 26187496 26218492 26161110 26228915 26172424 26174479 26138745 26266798 26240977 26180022 26186524 26228443 26201062 26193289 26204905 26178967 26226485 26171225 26194758 26234460 26204427 26220549 26209954 26173252 26291628 26170881 26222598 26188893 26247477 26291698 26181775 26185559 26271081 26198004 26239690 26206587 26281059 26186608 26198842 26189424 26137302 26231313 26130089 26260290 26225301 26247206 26240989 26204550 26193337 26185345 26225023 26160945 26193098 26239261 26239839 26212647 26190564 26216106 26205681 26202141 26273742 26170630 26235677 26221111 26216821 26166986 26243322 26231890 26206566 26215889 26210224 26236982 26241813 26215448 26247862 26224039 26244112 26267710 26261683 26232688 26170985 26250462 26209384 26237647 26265920 26209158 26254171 26220116 26258526 26250979 26193345 26244439 26202287 26300570 26187114 26208808 26277632 26200876 26255839 26263655 26222022 26257372 26207815 26203056 26244151 26187392 26211022 26249338 26289203 26197785 26160324 26254865 26252929 26239757 26212840 26262292 26294657 26280277 26265377 26237548 26270506 26239869 26219310 26213542 26232566 26210423 26306880 26298996 26295539 26225205 26219900 26266047 26275640 26242839 26213729 26212245 26225454 26180453 26279129 26258898 26283144 26294689 26232328 26222228 26258832 26246646 26330316 26299064 26265169 26263980 26235763 26220379 26247620 26246425 26265489 26328120 26298144 26231684 26284790 26212040 26280185 26298880 26242115 26201561 26235365 26321382 26248655 26345712 26224573 26251664 26214635 26251389 26211652 26313242 26289594 26295809 26278078 26271141 26229561 26217777 26287747 26330416 26256327 26291888 26237442 26284479 26269165 26276450 26261355 26297603 26271478 26248981 26332099 26291856 26231898 26233358 26273100 26335994 26241975 26307728 26258698 26360963 26216451 26255764 26297315 26313761 26301344 26304134 26296460 26286204 26284621 26219739 26261704 26209958 26294839 26271016 26291116 26264048 26359420 26225246 26268382 26337738 26308852 26292894 26305536 26223450 26303182 26318251 26305802 26309002 26315049 26299827 26338801 26271093 26307691 26321711 26293728 26285090 26261647 26311250 26289571 26279614 26266279 26272510 26310481 26277127 26258873 26290048 26293129 26278597 26331414 26262995 26323562 26341897 26255266 26321954 26296825 26314773 26346957 26290886 26279890 26329320 26298226 26312410 26301102 26267645 26273898 26279412 26268515 26250155 26302884 26257689 26288083 26284372 26323268 26324451 26356497 26309290 26306981 26283056 26383824 26310541 26328015 26260219 26290391 26338551 26342004 26303618 26330914 26289381 26342192 26383074 26349805 26335571 26324820 26343057 26325647 26245799 26243612 26250284 26341459 26370933 26336806 26307421 26333742 26250209 26304054 26368789 26312928 26287654 26323954 26377549 26309027 26299107 26327627 26348401 26333603 26338607 26395408 26286355 26336701 26295410 26276988 26285374 26297978 26347016 26316351 26325065 26242910 26313380 26357702 26293260 26399594 26233074 26336671 26286146 26302448 26312919 26331372 26354398 26335354 26338233 26293226 26346134 26344127 26377411 26300521 26340560 26345399 26389458 26380353 26307156 26308723 26366036 26405227 26407338 26358958 26256150 26305891 26370117 26431102 26336685 26381786 26295181 26368206 26346822 26360696 26310519 26322454 26302263 26413111 26295179 26337007 26331222 26383779 26387327 26341834 26333401 26327478 26319704 26351381 26298433 26322420 26401102 26369385 26349999 26301784 26347410 26366240 26335983 26340487 26356718 26386657 26364106 26403146 26251794 26297999 26403594 26402898 26395314 26336208 26405955 26286893 26364030 26396997 26348961 26324294 26342401 26311545 26373251 26400031 26358695 26342179 26365351 26371963 26380715 26354375 26372945 26390680 26362725 26398198 26413840 26368361 26315195 26382291 26321359 26409459 26391058 26388593 26412045 26393712 26388060 26407402 26379592 26370120 26402538 26342404 26437166 26430763 26327919 26310990 26407816 26311006 26309016 26426094 26363263 26373045 26426562 26403330 26341975 26397703 26354719 26400874 26325803 26385492 26410466 26373296 26317564 26352937 26364064 26355372 26424671 26309347 26446830 26368694 26393019 26415399 26412171 26444853 26372710 26398624 26337130 26426004 26435253 26368961 26368497 26360380 26450137 26359300 26386302 26422625 26451254 26409745 26458799 26407319 26382300 26370272 26404542 26422057 26401322 26411570 26363763 26419090 26403642 26432591 26417121 26390877 26396207 26327174 26402842 26389914 26481912 26375545 26406594 26380288 26342350 26447356 26415680 26413714 26405875 26409687 26368319 26414326 26408152 26404064 26425035 26419042 26397638 26463469 26333634 26402460 26405180 26404347 26436136 26417601 26448976 26439321 26409595 26388035 26434873 26422360 26344532 26409371 26422061 26462076 26413515 26443319 26431131 26420785 26419756 26394914 26440859 26405146 26396388 26448425 26359722 26424842 26433675 26436569 26414867 26388023 26472121 26348940 26416477 26479126 26413931 26423713 26430424 26429100 26418461 26468264 26416867 26349683 26441684 26377458 26382048 26435677 26466564 26413938 26353016 26463258 26339675 26430848 26410528 26472358 26458317 26401507 26440727 26498399 26420680 26413038 26412360 26448776 26376232 26478255 26367501 26520317 26509648 26411030 26453333 26376500 26395883 26414938 26454394 26405907 26479244 26505372 26489356 26437334 26442577 26425712 26443241 26451705 26415539 26413910 26410244 26459688 26423355 26460844 26445842 26447341 26390614 26438463 26468968 26419948 26435220 26521389 26480867 26416572 26429560 26504207 26453522 26424506 26464913 26407944 26443643 26405561 26428145 26423853 26410415 26481214 26470644 26432688 26414286 26494846 26444411 26439877 26371254 26492521 26479953 26489613 26429780 26447051 26471140 26496381 26445439 26522345 26411133 26469023 26483259 26458869 26455792 26413442 26500364 26422946 26509461 26445251 26490270 26503083 26487658 26469109 26523580 26472872 26444656 26496793 26487453 26460174 26461590 26456186 26429451 26557480 26518176 26554087 26449417 26511405 26522317 26506588 26452476 26424147 26465577 26488417 26459001 26425262 26471746 26510373 26405001 26527312 26541323 26481794 26430835 26499744 26534564 26501109 26493716 26441197 26522512 26511922 26430579 26481338 26478668 26457203 26454817 26458617 26452397 26495800 26467553 26488333 26467163 26528625 26536993 26420600 26530342 26587966 26519185 26490428 26501729 26559546 26486522 26473814 26480919 26543230 26422292 26505425 26447662 26505930 26470247 26431379 26477253 26428412 26463745 26445471 26470075 26508503 26515552 26510319 26498610 26424336 26542240 26510256 26486958 26481849 26526653 26491121 26494027 26505089 26588241 26493504 26533464 26522804 26462535 26493711 26510683 26532923 26513948 26522470 26497738 26481901 26518659 26476129 26515702 26454680 26454284 26482815 26441269 26481595 26524517 26550273 26539752 26497826 26517049 26532991 26553635 26495265 26535056 26561276 26476543 26505708 26538348 26540742 26571351 26530318 26503615 26535245 26467515 26513256 26486311 26522496 26554250 26566791 26469451 26516042 26476796 26589298 26534849 26536850 26537614 26475647 26555145 26583798 26502878 26570859 26530964 26498169 26506237 26521387 26482725 26564841 26519623 26566511 26556995 26541035 26528528 26528988 26554576 26594493 26491762 26521004 26533601 26554666 26465173 26551633 26523978 26556118 26568202 26514484 26483339 26534067 26552986 26480616 26529388 26573268 26524895 26499403 26544837 26558419 26507334 26528924 26511096 26572659 26537415 26493335 26509532 26553464 26577746 26548080 26587180 26556962 26491936 26563182 26519559 26444565 26567690 26536527 26538753 26529683 26469571 26547390 26575090 26525373 26442619 26493776 26532007 26548485 26604723 26582641 26488763 26505701 26534610 26541685 26555500 26545890 26555803 26551477 26520792 26542088 26530229 26548924 26579279 26558103 26548767 26583768 26515925 26560912 26588750 26532096 26565877 26600488 26510822 26553624 26581771 26514772 26500761 26496295 26567525 26509302 26619193 26569910 26546865 26547016 26601517 26607187 26608301 26519277 26513690 26558278 26531646 26528397 26508281 26586639 26529872 26490419 26583891 26547970 26608067 26574497 26616644 26580985 26535173 26573056 26589849 26521084 26603367 26624139 26550462 26567743 26575802 26638699 26598854 26577252 26553215 26653521 26572898 26595373 26598319 26572928 26599685 26593220 26569429 26583277 26498789 26604725 26585810 26655134 26653634 26620085 26661654 26570501 26554443 26521157 26614864 26577769 26629655 26610832 26535766 26591738 26563832 26575420 26536919 26573799 26543615 26572492 26582213 26568725 26563283 26651057 26603365 26646259 26572750 26546853 26604990 26566095 26634145 26634026 26575434 26579388 26589880 26593583 26537876 26635331 26523304 26645065 26635176 26575506 26629593 26631546 26594882 26580382 26591488 26561333 26563475 26601780 26545071 26618097 26631033 26581657 26573584 26552641 26663647 26661259 26661416 26605820 26586542 26612916 26614941 26583021 26576427 26617754 26630661 26627932 26603844 26621261 26588962 26628053 26580518 26605782 26704106 26649661 26570397 26657039 26656440 26635455 26600544 26576368 26644809 26655683 26659793 26627219 26571113 26599951 26654605 26597908 26574540 26623414 26566808 26611549 26637665 26606588 26554366 26656453 26620030 26596655 26609745 26642123 26647157 26603616 26592476 26604686 26607865 26587429 26609136 26689610 26638907 26703603 26659520 26642301 26653289 26612532 26618345 26640457 26585261 26605804 26666616 26547955 26633759 26624937 26675815 26585288 26614470 26566099 26683515 26588793 26611685 26664358 26668868 26623826 26663412 26643690 26630841 26588533 26652228 26677156 26616272 26605799 26635433 26685059 26650430 26610959 26628913 26629497 26610695 26651653 26665078 26578989 26655683 26604029 26651021 26690205 26678059 26619064 26704885 26657208 26651155 26684023 26689339 26619858 26669211 26665000 26649143 26611437 26523285 26687521 26699777 26652855 26696432 26649845 26628012 26645626 26638383 26603006 26667809 26674834 26665662 26702727 26634120 26659398 26666933 26643009 26581120 26657654 26664371 26615139 26637149 26620780 26658298 26644405 26672693 26681908 26646708 26690320 26675372 26619551 26664238 26712877 26620625 26666333 26716302 26685235 26650891 26621024 26672466 26660373 26649721 26683348 26674050 26705326 26650980 26749610 26656654 26699181 26703303 26639720 26650357 26665943 26702511 26735486 26659872 26696318 26631379 26716997 26713179 26719981 26681465 26689227 26694371 26732421 26708880 26717116 26670302 26624581 26709860 26628154 26681329 26725192 26624308 26658379 26691716 26671816 26711117 26732341 26681605 26679278 26636568 26706349 26702535 26655437 26647017 26728868 26630515 26624186 26694346 26687521 26713476 26716560 26706399 26680036 26663220 26665894 26703560 26636372 26730330 26683563 26700201 26707255 26793895 26694712 26684482 26621779 26702688 26662737 26614347 26703701 26724913 26686309 26666106 26773482 26650575 26719630 26705470 26637596 26719126 26736012 26687257 26679946 26646554 26701424 26648243 26740855 26660334 26722028 26744628 26728865 26698456 26685416 26699504 26723222 26718759 26698602 26712286 26672618 26687088 26720243 26728210 26710718 26664903 26738736 26688981 26685988 26723329 26661817 26715659 26736861 26723979 26756483 26714312 26740666 26700091 26715144 26681310 26738886 26749804 26661974 26712035 26755154 26696098 26765725 26761282 26735407 26752657 26711975 26742381 26666204 26751435 26710911 26645840 26741780 26684171 26710936 26749448 26685645 26735421 26707796 26750786 26677946 26746055 26687965 26732620 26730877 26746550 26756739 26708392 26794851 26708882 26714662 26748317 26755245 26681723 26717608 26781378 26776145 26751636 26729147 26727235 26694830 26772707 26709020 26767407 26769146 26756133 26741483 26717211 26719255 26809171 26778686 26693797 26769023 26718553 26785024 26744198 26718900 26763073 26773583 26766003 26793669 26716010 26802832 26762009 26751443 26798008 26763514 26731375 26765318 26787053 26726014 26728616 26704269 26721640 26737791 26687658 26732335 26692443 26818064 26747060 26727070 26756212 26771704 26790532 26740116 26787789 26716081 26782121 26771097 26749615 26731242 26770209 26787362 26811800 26743118 26781413 26782636 26737225 26762429 26784584 26767332 26788761 26737973 26811415 26772224 26784449 26796784 26751167 26711463 26839136 26825758 26733591 26706402 26766431 26701628 26786577 26786707 26785955 26688078 26729453 26786465 26733651 26758929 26768157 26749279 26770114 26830103 26733183 26808987 26791730 26759515 26801014 26796735 26717473 26792005 26816052 26751711 26805325 26776916 26760483 26792170 26773783 26803204 26781868 26787599 26784406 26776832 26792848 26801854 26810546 26728561 26822739 26800409 26746456 26779767 26783594 26771886 26835241 26789923 26806871 26837382 26746365 26764079 26779583 26806216 26787385 26750957 26746971 26773752 26708664 26814963 26817233 26808563 26878542 26773445 26747535 26807547 26810332 26841306 26786107 26786546 26784697 26782455 26794158 26804429 26805899 26861085 26775473 26812488 26775433 26764666 26800553 26789644 26771795 26822312 26853683 26812662 26761125 26804840 26765732 26814056 26845307 26805461 26812221 26783317 26763648 26780565 26806661 26780829 26745480 26847123 26772943 26845255 26796523 26870569 26864668 26764413 26778069 26763214 26857457 26817227 26799466 26817049 26825950 26797915 26822891 26793968 26788353 26777717 26776223 26808951 26732486 26806696 26755279 26805877 26809496 26823499 26842577 26847384 26836233 26785224 26824487 26835749 26822501 26837391 26827876 26817315 26838823 26816106 26764480 26823118 26861688 26807440 26778559 26831295 26786222 26822971 26858949 26855512 26859883 26823364 26809090 26818993 26853580 26820263 26838072 26840765 26868993 26800233 26842029 26793291 26860795 26853668 26833818 26862880 26824081 26852982 26795706 26866724 26881552 26871649 26788349 26862848 26883103 26828185 26873900 26794062 26817602 26801485 26863298 26816816 26795885 26843809 26819584 26828255 26852815 26787237 26842274 26873589 26868350 26822516 26926495 26829318 26848556 26859418 26792073 26868837 26880176 26805159 26840181 26787463 26882887 26862611 26816843 26812738 26856126 26843135 26885067 26895377 26844198 26865309 26845461 26836313 26898794 26882378 26876365 26821368 26863736 26882244 26826084 26885123 26799337 26841088 26898451 26781729 26914037 26876737 26861002 26870670 26910381 26897989 26892076 26827795 26916327 26829093 26880881 26853953 26924717 26846126 26852907 26896111 26920086 26861717 26858784 26920725 26862450 26884327 26812680 26864759 26877294 26813504 26883641 26871435 26915254 26857636 26908769 26886046 26869752 26914759 26886530 26876140 26830265 26827041 26886207 26899824 26905418 26874833 26838629 26868162 26841933 26866639 26883259 26863624 26941096 26854719 26891482 26931634 26951743 26906116 26834354 26863894 26877152 26895158 26790772 26916682 26869913 26873272 26825111 26869251 26901891 26889737 26851997 26860103 26863617 26947972 26883365 26897660 26852892 26950932 26915142 26890075 26961066 26831105 26890520 26905026 26879914 26871451 26902917 26891788 26874170 26898020 26894249 26910306 26937878 26901714 26925104 26964246 26857576 26917483 26864823 26873287 26896357 26940362 26846737 26946756 26848554 26923952 26925474 26892832 26902741 26931347 26930244 26958635 26920690 26855893 26913162 26927731 26890369 26862950 26914126 26927809 26948601 26922738 26921414 26956880 26873259 26941491 26913956 26911668 26868802 26968153 26886808 26929290 26909929 26930013 26909254 26908401 26937441 26915332 26873447 26919034 26925131 26909128 26921181 26954947 26928806 26936222 26951975 26901395 26925644 26925042 26939946 26888900 26913755 26907915 26909676 26965518 26936593 26904219 26989775 26930374 26955657 26946702 26975204 26902917 26866057 26961581 26929210 26913882 26896357 26918040 26903633 26946904 26840927 26948578 26908657 26910747 26962614 26927854 26922065 26912059 26940562 26877892 26960995 26942300 26934362 26976735 26955924 26950160 26988482 27003402 26921224 26943022 26980184 26955917 26928312 26915366 26934247 26913983 26933817 26945415 26911731 26876043 26920081 26974440 26971825 27007967 26907462 26957009 26933958 26892740 26956467 26911302 26945926 26982839 26964292 26876084 26975959 26916403 26963605 26993532 26927003 26909701 26916171 26957439 27003517 27007108 26931873 27014320 26973918 26933655 26959040 26915464 26924250 26918452 26965492 26895537 26889347 26889756 26956527 27006086 26940157 26986845 27012812 26938609 26948540 27013949 26940680 26850996 27022331 26954723 26970661 26965805 26923573 26982661 26966916 26953434 26995921 26995122 27003317 27013457 27033021 26915721 26882620 26946942 26921257 26979090 26974041 27028070 27022965 26954263 26964393 26974173 26967858 26995072 27005762 26951386 26965628 27022242 26957405 26952132 26927316 27039009 26962601 26991723 27001801 26970596 26971265 26967696 26999108 26962671 27005241 26987327 27017580 26997297 26986828 26965287 27035689 26945064 26964775 27023185 27055557 26957748 27021469 27033192 26957715 27013388 26983413 27003370 26914332 26983364 26991354 26962896 27000509 26984955 27068544 26880172 26972191 26985207 26971094 26976299 26940312 26942054 26961244 26979732 26971974 26959150 27008801 27011074 27017443 26994089 26981844 27017462 27021431 27016527 26910783 27038371 27024376 27020886 27056391 26948195 27091251 26989175 27018612 26979374 27036713 27016577 26982937 27055481 26999111 26980380 26951363 27028140 26951937 27032792 26997399 27011876 27036555 27024240 26973049 27040738 26996898 27026144 26984443 27005907 27033817 27022947 27079387 26999541 26984421 27001634 27013696 26999298 26995704 27000180 27038287 26975469 27032438 27019933 26998006 27059695 26994417 26977084 27021850 27065789 27049335 27002918 26947275 27056864 26976840 27054891 27049507 26994422 27062425 27071105 27000587 27009499 27045578 27074021 27074821 27014608 27059815 27044352 27051046 27033579 27006709 27047297 27098450 27032939 26949379 27062433 26986946 26999172 27007821 27066503 26999112 27037846 27060085 27006478 27047437 27104619 27060810 27058921 27071506 27119353 27035850 27033016 26967099 27053063 27046588 27039065 27014542 27040352 27100633 26944799 27113005 27028512 27022518 27000864 27044949 27054697 27049481 27053262 27035978 27072072 26999397 27059463 27063661 27087921 27046957 27052346 27068548 27003244 27040133 27064318 27012310 27073409 27010644 27076731 27068149 26995304 27042225 27015603 27055143 27096719 27124611 27134455 27085508 27054566 27076038 27123012 27044305 27061867 27048489 27090687 27039188 27062870 27011599 27127584 27066822 27070558 27102027 27018595 27052186 27041239 27054820 27103955 27106548 27047572 27004990 27082071 27041173 27084921 27046246 27037812 27096736 27023082 27066819 27082190 27119347 27115463 27072339 27073872 27063572 27050743 27189841 26978200 27104089 27059186 27070061 27112215 27135414 27026615 27101855 27125345 27042808 27077211 27054356 27031624 27090919 27023738 27093465 27072192 27098768 27102702 27009909 27059257 27031891 27110564 27035780 27123523 27087122 27068550 27129494 27069006 27163098 27075681 27044166 27080431 27078440 27048125 27080816 27092685 27094206 27056154 27093348 27066259 27130167 27098609 27082204 27050238 27071732 27109738 27065588 27164571 27086642 27059666 27075364 27098499 27064287 27098828 27074038 27192515 27133517 27109898 27119200 27148703 27142813 27102122 27102864 27078331 27090647 27109036 27138271 27093921 27105932 27167573 27092111 27120867 27096033 27093450 27109678 27060006 27124858 27060788 27101695 27081675 27143589 27065005 27144606 27163012 27105768 27090243 27180595 27113111 27095666 27120002 27117430 27136522 27075055 27095084 27077036 27079540 27137193 27121782 27146982 27083399 27167269 27038618 27095715 27083662 27121553 27144077 27078764 27157017 27082806 27103513 27124405 27139613 27043759 27124777 27086284 27144092 27083190 27160437 27168560 27157154 27116329 27168540 27134275 27157040 27099260 27182468 27105330 27137422 27088246 27160652 27134896 27041514 27112564 27104734 27109405 27096425 27128379 27131392 27140600 27159130 27116381 27101535 27151700 27145790 27170103 27186555 27188914 27179852 27148418 27149733 27096600 27152637 27142900 27210747 27125028 27129415 27135066 27112706 27094064 27174793 27131561 27147176 27161992 27104526 27139567 27145298 27135021 27169036 27113380 27187269 27130374 27091998 27149852 27157254 27161504 27133585 27151621 27083853 27112988 27107791 27102006 27144397 27168218 27168622 27074396 27146573 27106487 27222273 27166780 27226505 27200463 27171143 27217738 27174476 27198245 27191101 27116157 27140979 27173399 27180430 27128134 27187691 27158072 27154933 27119432 27179158 27144540 27169706 27147316 27238570 27198535 27147123 27163336 27127962 27162791 27144963 27120208 27166955 27161058 27143129 27148079 27143770 27165453 27135209 27162233 27143344 27141795 27155458 27159306 27254382 27210005 27126136 27188778 27246255 27147585 27176488 27168238 27180580 27195942 27155667 27175850 27176339 27207165 27182134 27195880 27165628 27171865 27144163 27136264 27201884 27157924 27206872 27177094 27137025 27155485 27157550 27172598 27167301 27191396 27107653 27205127 27168781 27139377 27187008 27110350 27219720 27218506 27153132 27194189 27159146 27232836 27244093 27237414 27175392 27162468 27163094 27147484 27198686 27203427 27205484 27189693 27155164 27146901 27206679 27183130 27252863 27263588 27180481 27222686 27192414 27208365 27256459 27242563 27233424 27257379 27175757 27224117 27221521 27164294 27225908 27199655 27199241 27188447 27181371 27137937 27161074 27238186 27191270 27214166 27267090 27222207 27271703 27253944 27146954 27193607 27167715 27201904 27232669 27197374 27237132 27230562 27246378 27234254 27214403 27184072 27255274 27203345 27215160 27189385 27177974 27155682 27216057 27117777 27240328 27191846 27229733 27300502 27261010 27242882 27158391 27215728 27207230 27169214 27199821 27166375 27258359 27236071 27199997 27230677 27289476 27234636 27182373 27180337 27241198 27231614 27219511 27243713 27224237 27265529 27180929 27222347 27234549 27216842 27302560 27203477 27218163 27144964 27193892 27221298 27239941 27134931 27251126 27263917 27226180 27214090 27291142 27189949 27236152 27255028 27255550 27265463 27244830 27230831 27248979 27237767 27257645 27202837 27211387 27192660 27248058 27246916 27185098 27263090 27208421 27238011 27233754 27224777 27224853 27234859 27310901 27241204 27236049 27243216 27241056 27236420 27241578 27266665 27224783 27278091 27244753 27235520 27237165 27246505 27211704 27234873 27273512 27308693 27212971 27189824 27242813 27166191 27257115 27249383 27213115 27248630 27267811 27292411 27267799 27215506 27229000 27286538 27221656 27247100 27264306 27208422 27278820 27208840 27237208 27295908 27232452 27265215 27225205 27207526 27287664 27294341 27243800 27268724 27259164 27255387 27235729 27247808 27275595 27266377 27219805 27245623 27216801 27283829 27265835 27262488 27199472 27223192 27253222 27299768 27274312 27281190 27280998 27309732 27263319 27268759 27251452 27253336 27275773 27252451 27252705 27282616 27286305 27286449 27313150 27369864 27270282 27265906 27215645 27281079 27240094 27257941 27264905 27251895 27264357 27321671 27257011 27307051 27277868 27272742 27256554 27230084 27307310 27307381 27275107 27251174 27366986 27258055 27272486 27254848 27256889 27274491 27243390 27303524 27280573 27288779 27270458 27224294 27301836 27327543 27283683 27246019 27250938 27292144 27267251 27243262 27271720 27264844 27331690 27355208 27312219 27420896 27246805 27293440 27303080 27273098 27321279 27259494 27275087 27360524 27252618 27269068 27231282 27313607 27307269 27275594 27248040 27302290 27316414 27294067 27290118 27321417 27300970 27231458 27345722 27271918 27284383 27338018 27293104 27296883 27239200 27255449 27303845 27296719 27317394 27261461 27304409 27332763 27238205 27254861 27324663 27292458 27340563 27344019 27320511 27309052 27265569 27261273 27280049 27278440 27263451 27339861 27337112 27287656 27302416 27325376 27368413 27322013 27373897 27263996 27287671 27307163 27325409 27310188 27361252 27310446 27278432 27308993 27337123 27324456 27321922 27261351 27325128 27316989 27340134 27310366 27310967 27312082 27375043 27328559 27257337 27346536 27371415 27275802 27238719 27327027 27293712 27333674 27299318 27307690 27328125 27296825 27297123 27323778 27308753 27331089 27321469 27268788 27343543 27361039 27331801 27356824 27306440 27338727 27381292 27276741 27331519 27419980 27308473 27367377 27252924 27390338 27369734 27316253 27323740 27400770 27371690 27358384 27332865 27292495 27345727 27297207 27226417 27341932 27344014 27335102 27379082 27327887 27361060 27315296 27314939 27360578 27333813 27348355 27354855 27425860 27329625 27296770 27347890 27282683 27373470 27299844 27376973 27309558 27381420 27389986 27336667 27314178 27300258 27285792 27360718 27321533 27333500 27331582 27385404 27363012 27351373 27349200 27377175 27432332 27404874 27339079 27325622 27349242 27389034 27379354 27310810 27405189 27384978 27378565 27339794 27320952 27360147 27393115 27365771 27399488 27295240 27333396 27361743 27347705 27344707 27422029 27334393 27338955 27384525 27417866 27326318 27294738 27366286 27398348 27351185 27328247 27292309 27372449 27366810 27368217 27356073 27370580 27350899 27349445 27396911 27383638 27326293 27356063 27357532 27377674 27328380 27417115 27361000 27400150 27388859 27382733 27435177 27373113 27409770 27405134 27437072 27328833 27361411 27366856 27426243 27353289 27400602 27303483 27367674 27456315 27455889 27433952 27345936 27401592 27362049 27398861 27380182 27360120 27351575 27401308 27394231 27382190 27439512 27356926 27373558 27447853 27386311 27354918 27336305 27378123 27427503 27364227 27377920 27412359 27393939 27415883 27385299 27383113 27355873 27467530 27418666 27344626 27402258 27372695 27356323 27407740 27424379 27388052 27414295 27407481 27338502 27360195 27373980 27425587 27401169 27382495 27375600 27416220 27425034 27348158 27403384 27335566 27411560 27373566 27411722 27415819 27396079 27362720 27365956 27435583 27454311 27420605 27436590 27358608 27369673 27446235 27401559 27378852 27457672 27399609 27352216 27405538 27422383 27417603 27402709 27336505 27443757 27373090 27411159 27367457 27386613 27419995 27346825 27392322 27439698 27420244 27414108 27360858 27470211 27423057 27434798 27444819 27431350 27450358 27353833 27477472 27507867 27343249 27452767 27414396 27408488 27371094 27396006 27377361 27463741 27346773 27421042 27390459 27417112 27415885 27450075 27401930 27407024 27450704 27467342 27367991 27455185 27397278 27403130 27400252 27389991 27442162 27448259 27396283 27405748 27452373 27413134 27411790 27433715 27389364 27456015 27469948 27436039 27482925 27404768 27431798 27397917 27474003 27449748 27479452 27465669 27460114 27456739 27384881 27447585 27455147 27455344 27462830 27335541 27410907 27455853 27446086 27437264 27440619 27476248 27423754 27390857 27458307 27448863 27407201 27395521 27444952 27454844 27414704 27425548 27401385 27424554 27438989 27463486 27432062 27424765 27473312 27477944 27448760 27460408 27441865 27479490 27443340 27537830 27473851 27443063 27480957 27394307 27458512 27446010 27419739 27464026 27458124 27515177 27388232 27414948 27420885 27493230 27484550 27519070 27473787 27427370 27510101 27451587 27488302 27473334 27432676 27423062 27443922 27502398 27469731 27441325 27451672 27453123 27475462 27459686 27457210 27413353 27510317 27413200 27473050 27465019 27472003 27422858 27475483 27470853 27415751 27461624 27495670 27471901 27462179 27481781 27418919 27488064 27433535 27458031 27440363 27442120 27473524 27452176 27413469 27468883 27520689 27544336 27484160 27472918 27492451 27427795 27469926 27448351 27495359 27485523 27415884 27402148 27482921 27462550 27457062 27470900 27470547 27485989 27487033 27446456 27494072 27477575 27442610 27459396 27451854 27471518 27455429 27443263 27459542 27411766 27505003 27547311 27450764 27473823 27528252 27531879 27455998 27525667 27487512 27459214 27502993 27519992 27475612 27437424 27552387 27511970 27424743 27491891 27483087 27436748 27523843 27509897 27538412 27491872 27477584 27483955 27493678 27470612 27491220 27472009 27526808 27505782 27480357 27502755 27417492 27521600 27388468 27495837 27457638 27555209 27535471 27445657 27539360 27531340 27465865 27449181 27533969 27477937 27495783 27461081 27484565 27477324 27511370 27468117 27542737 27483008 27530702 27515655 27443498 27551549 27515357 27603252 27523548 27467416 27484757 27563740 27487871 27478790 27575254 27486349 27545034 27561622 27479408 27475928 27539496 27527395 27507077 27504373 27487405 27462853 27518336 27552735 27440621 27490815 27506955 27510939 27571357 27501747 27547594 27518489 27473418 27556029 27547660 27508795 27490270 27491391 27566989 27532691 27536815 27553153 27519012 27486893 27513591 27514275 27553852 27463195 27480490 27571124 27535475 27503355 27510032 27559719 27548004 27448232 27533421 27499297 27535569 27522156 27545825 27537469 27540419 27587311 27538901 27527928 27597273 27547332 27499541 27571475 27535015 27522816 27536945 27542670 27468149 27533845 27557892 27511914 27531808 27553726 27524841 27572644 27543212 27556590 27572407 27527572 27568285 27584881 27516593 27552691 27535262 27545752 27479676 27509155 27557130 27489513 27484958 27524951 27570524 27531657 27558045 27543371 27537460 27527690 27575165 27496116 27540176 27607856 27587581 27564348 27567492 27580279 27516420 27530097 27555984 27518678 27553209 27527617 27561920 27545588 27569386 27535223 27605905 27582751 27530234 27543227 27544704 27576602 27550246 27532572 27575361 27537478 27564621 27569165 27601940 27527037 27606193 27533236 27589179 27526775 27580616 27564732 27567074 27587504 27478708 27525939 27558719 27548967 27598862 27548182 27586165 27589683 27606097 27636755 27630810 27588471 27593346 27572027 27566079 27591885 27566643 27595506 27580950 27579707 27638953 27538357 27544136 27620314 27579499 27523128 27545082 27623763 27584071 27608380 27516152 27606793 27627385 27577192 27606731 27560839 27617237 27609355 27613744 27553271 27558765 27585737 27547273 27532190 27562714 27559795 27616458 27575844 27581639 27601858 27616022 27589833 27592991 27576215 27630883 27579361 27650008 27587133 27612809 27575917 27570096 27580779 27618897 27568818 27591135 27539406 27609738 27617448 27583627 27583833 27565323 27563457 27613213 27629244 27578306 27590615 27546756 27589541 27552981 27613868 27642033 27665666 27602673 27578102 27597848 27609082 27557303 27611873 27597326 27608398 27637785 27609163 27622536 27608829 27602806 27571987 27584112 27541039 27585312 27599963 27613574 27582721 27526752 27635897 27607368 27644584 27594130 27638981 27608116 27629416 27602171 27579873 27558186 27643444 27641498 27640541 27616844 27624631 27612922 27640318 27604038 27575260 27570047 27606656 27625957 27615629 27564525 27669076 27566318 27666207 27643308 27626143 27617307 27654691 27679979 27579887 27606347 27580288 27601530 27565237 27676193 27633991 27617377 27561526 27598952 27617504 27627619 27646176 27640273 27639755 27595649 27595948 27594229 27679966 27640097 27666822 27647868 27577780 27652586 27596287 27649282 27650207 27730493 27531935 27594081 27661894 27689673 27583865 27673717 27617707 27657908 27636442 27659680 27700811 27659250 27614848 27645085 27617469 27682005 27586375 27560182 27608538 27664574 27619420 27623002 27605233 27645859 27643644 27629637 27590843 27602253 27611208 27661778 27665714 27602506 27616523 27611022 27722952 27668843 27605321 27651459 27659873 27651654 27658630 27652818 27641062 27656937 27725472 27704676 27661531 27584618 27647403 27608451 27651279 27647384 27647931 27684864 27610582 27669368 27643366 27660701 27718996 27661368 27701991 27637477 27643621 27650275 27666239 27685416 27704211 27635746 27688345 27643995 27642631 27745972 27684373 27627745 27703115 27650850 27637834 27670411 27652386 27701253 27696674 27698045 27717948 27633545 27717813 27607902 27706179 27657246 27644776 27670266 27732839 27641452 27607065 27634061 27665597 27670543 27714372 27703349 27639536 27647675 27674696 27730536 27637435 27703091 27707492 27709327 27676713 27640145 27613807 27689119 27727086 27690045 27679870 27659910 27684081 27667930 27679303 27649952 27627565 27678399 27645944 27641520 27659675 27701879 27725208 27670067 27625277 27641402 27713963 27739298 27652352 27698043 27690364 27669015 27671218 27696021 27731764 27691478 27716234 27705183 27665450 27748932 27700568 27634869 27727656 27704455 27790374 27700395 27746941 27699849 27732513 27728906 27776048 27668151 27705917 27664796 27746008 27684309 27697571 27678325 27710144 27707826 27749567 27690513 27700280 27626854 27699197 27744478 27731082 27707308 27686622 27686457 27714185 27695896 27660239 27752867 27754854 27680127 27771467 27680617 27687127 27752671 27707201 27684178 27717521 27653988 27665539 27666705 27699646 27763981 27717622 27720712 27751996 27760430 27753993 27730891 27706377 27699875 27741082 27706230 27749454 27753163 27772940 27792032 27690816 27754387 27758401 27756208 27711469 27723871 27730824 27733812 27733608 27709803 27737116 27849906 27661492 27738412 27754064 27756249 27697714 27792192 27742507 27724019 27775776 27719364 27698814 27736433 27703384 27768030 27715776 27719992 27722754 27804334 27701440 27674703 27762906 27722516 27753523 27742308 27692898 27735029 27751969 27730676 27691204 27740346 27724996 27726728 27744940 27771884 27761612 27743906 27796050 27781638 27734041 27713808 27756531 27710607 27763799 27712521 27737867 27791752 27750003 27728784 27734988 27698580 27713015 27708149 27711272 27710861 27728678 27752407 27766812 27694443 27745156 27786213 27739508 27701139 27698534 27770117 27846143 27780462 27720251 27706848 27781090 27754313 27747593 27743067 27817258 27722114 27790423 27793490 27791537 27766166 27699432 27794551 27765465 27801383 27759623 27761458 27758054 27823978 27782382 27747208 27752671 27786000 27794437 27765398 27759733 27741090 27745726 27749125 27769514 27729672 27769769 27756225 27785503 27741100 27786873 27744130 27754842 27767015 27734387 27769413 27768597 27778310 27702827 27805987 27729316 27727145 27802359 27774921 27782656 27785181 27775348 27797198 27779349 27803508 27801075 27817287 27870079 27789615 27761188 27748678 27823963 27736152 27774716 27808751 27770094 27780163 27765039 27769938 27786220 27737335 27712352 27820295 27772773 27759834 27738551 27804079 27847576 27817331 27801385 27832755 27758087 27818668 27779586 27790828 27787496 27837604 27850535 27829563 27771241 27783798 27801988 27842620 27893846 27772343 27732244 27829367 27809183 27789383 27815977 27759086 27823249 27817146 27794628 27782356 27798686 27775276 27852638 27785188 27797881 27770192 27718501 27776700 27768112 27783080 27822578 27812959 27842075 27868969 27798826 27806870 27735351 27774986 27799271 27852986 27813513 27780592 27825062 27807308 27768486 27823793 27819865 27822712 27804181 27766181 27791657 27819292 27811096 27791920 27829360 27732894 27789908 27815408 27796662 27819430 27775557 27776613 27787348 27788356 27779654 27807167 27894316 27804234 27828981 27757726 27849136 27779711 27766448 27923822 27823434 27848166 27754864 27846808 27829929 27781061 27798114 27845392 27843933 27845021 27854371 27825620 27830263 27859020 27826327 27865369 27848481 27779280 27844229 27820501 27846515 27842001 27799326 27836922 27824913 27832186 27829799 27843032 27887502 27871759 27852753 27850878 27861599 27825580 27826423 27895097 27888332 27811411 27818231 27876043 27836452 27816815 27836472 27864664 27855927 27770608 27786747 27840050 27826590 27824664 27819038 27843854 27866823 27808644 27840525 27814656 27883874 27866268 27855130 27857818 27882873 27852234 27817294 27863456 27778778 27811148 27804066 27888658 27833178 27864583 27869788 27893371 27869543 27876430 27813447 27875551 27857495 27830402 27852886 27869872 27821751 27808339 27856478 27864888 27875118 27840746 27831442 27858111 27912141 27850290 27808300 27806488 27838604 27873316 27864332 27888819 27818661 27834742 27820324 27835222 27850783 27836183 27810739 27867109 27921934 27786369 27787701 27883807 27842079 27856139 27839442 27897178 27876212 27906830 27813712 27848695 27801541 27897680 27840973 27866277 27851363 27829812 27869288 27950181 27796439 27840191 27804813 27864062 27937515 27864310 27867481 27877897 27923360 27929088 27881425 27911290 27866619 27927626 27867520 27892162 27883016 27931870 27831324 27837859 27862631 27882169 27875098 27840110 27916004 27922200 27855170 27886852 27872000 27905259 27847905 27946452 27857210 27962886 27910838 27881546 27874718 27952743 27912554 27896713 27974162 27834791 27865354 27835578 27883673 27911148 27945011 27884506 27903913 27923878 27855401 27919630 27879878 27833416 27908795 27912953 27955422 27843535 27874831 27873540 27925349 27911752 27961639 27899932 27893928 27845627 27925032 27895158 27863263 27903463 27956835 27914558 27897480 27881400 27895381 27889656 27947601 27966382 27933334 27923560 27877231 27921489 27951734 27922268 27894513 27892574 27909938 27901022 27961614 27908801 27876129 27924446 27917765 27930750 27880973 27969201 27916890 27932285 27954172 27886930 27890961 27905536 27922290 27934611 27946792 27874656 27934238 27907283 27910782 27870469 27927211 27958640 27923051 27913685 27889166 27914161 27922318 27907939 27973517 27920797 27907862 27934145 27926459 27928299 27918828 27958154 27898257 27965022 27912090 27961288 27898239 27927150 27949209 27854147 27928406 27946821 27930132 27990406 27970207 27944164 27959846 27938009 27931018 27887816 27913617 27920024 27871395 27969475 27957438 27907907 27928191 27894352 27910853 27919615 27877283 27936588 27974983 28011985 27907133 27954823 27901764 27908486 27924431 27977325 27879203 27986041 27900297 27934393 27935461 27933326 27991938 27951076 27987062 27931546 27896435 28007909 27920884 27942620 27986723 27911030 27914728 27961036 27987978 28045661 28011206 27974945 27943358 27906502 27936985 27947021 27958174 27995341 27929206 27943152 27963065 27970369 27982789 28018472 27922386 27983465 27888281 27937810 27964457 27978282 27998573 27957024 27981886 27953815 27985502 27955396 27976956 27980789 27910795 27957790 27939304 27991461 28034094 27958466 27959756 28022707 27928803 27938922 27951982 27947133 27966416 27948354 27974638 27922815 27940283 27995522 27930031 28008664 27968765 27967276 27971507 28029446 27925059 27962356 27998136 27938006 27944018 27917098 27945780 28022448 27967534 27954187 27943485 28025071 27958538 28073684 27912243 27980788 27984922 28019765 27962428 27973977 27931429 28014168 27969018 27983794 27957312 28032293 27969791 27975287 27975762 27998369 28027969 28037194 27952105 28004178 27908568 28018217 27923828 27944530 27943166 28038946 27975231 27989332 27947570 27953390 28010487 27979708 28005253 28025457 28002638 27978683 27989273 28012926 28035598 28017621 28026437 27978745 27976615 27977154 28038066 27944818 28074337 28014163 27990350 27965193 27991705 27930974 27984134 28009051 27981942 27962767 27982671 28071020 27988264 27999808 28014761 27975649 28058805 28019339 28004402 27979659 28012582 28021669 27966856 27971648 28022008 28031410 28089440 27919709 28035380 27987500 27928801 27970556 27989382 27943326 28020561 28015871 27984341 28058420 27935600 28060135 28055571 27963844 28000265 28008752 27996811 27951932 28026133 28020784 28025078 27998421 28021858 27977807 28021094 28002551 28003916 28037654 27948551 28112552 28026156 28005740 28041101 28058664 28013519 28040303 28102486 28024891 28070070 28042286 27999115 28050864 27994249 28079011 27997592 28072741 27983481 28023151 28086838 28019896 28022338 28018329 28010504 28022367 28012051 28043699 27980854 28089673 28079946 28035028 28021321 28004269 28004778 28018449 28004630 28009934 28055577 28003150 28052930 28027185 27986082 28002425 28029233 28056692 27999174 28041795 28057371 28030162 28032908 27957912 28014772 28033640 28049027 28073658 28027580 28108103 28053993 28064519 27981942 28049827 28041734 28079105 28000941 28033962 28044786 28003732 28072310 28041087 28083983 28054293 28119442 28074139 28102327 28084309 28004098 28058165 28073041 28052980 27961932 28071421 28114594 28036255 28025325 28021974 28019062 28093985 28062067 28065811 28086536 28021770 28021234 28042954 28024182 28151160 28059638 28091629 28006593 28081584 28079447 28013946 28104163 28075977 28063221 28052777 28072678 28076267 28049852 28092149 28108005 28119758 28044799 28041938 28023872 28078748 28066394 28085464 28066255 28014799 28098718 28088936 28122562 28081525 28069743 28006977 28090265 28103601 28076338 28032552 27999524 28057308 28056178 28101436 28133555 28119564 28097488 28082869 28059321 28072230 28045372 28092932 28105669 28081497 28078614 28126928 28104927 28091372 28090363 28028585 27993389 28089244 28104539 28048855 28089551 28030877 28038057 28114442 28042973 28094585 28102343 28037337 28110393 28115972 28110880 28024883 28054121 28129780 28080488 28006795 28105309 28142878 28117383 28088293 28097988 28082888 28104747 28004659 28115006 28152835 28117814 28115186 28077150 28122016 28148083 28135396 28100968 28061910 28081474 28066705 28142755 28074644 28093005 28121689 28090745 28109293 28096818 28169499 28062604 28056804 28046848 28147804 28111760 28079623 28085614 28103257 28173210 28150848 28074828 28145312 28076758 28079457 28151035 28133851 28115028 28056785 28143708 28095994 28157487 28071538 28075341 28099100 28186488 28029142 28146380 28140856 28135372 28090413 28156396 28146124 28204053 28146015 28110781 28068517 28134745 28101127 28116695 28117872 28161415 28117106 28117431 28074298 28094035 28084372 28097652 28215967 28098911 28075284 28078121 28081889 28127982 28141554 28158480 28165780 28121375 28120350 28162117 28180968 28132665 28070224 28118511 28105568 28149268 28098204 28199822 28107296 28115119 28114428 28135068 28156358 28044947 28163712 28172786 28156376 28193268 28101026 28069898 28107089 28141468 28138276 28132168 28163301 28166584 28149714 28105331 28187720 28138545 28105168 28178646 28132688 28172402 28166514 28087742 28173917 28062815 28150227 28128576 28089867 28110590 28108382 28137802 28209624 28205959 28090830 28202379 28141698 28097206 28113765 28156695 28157536 28160200 28147963 28170994 28153307 28154771 28198385 28133077 28194174 28202132 28125324 28152519 28161030 28171566 28170450 28149807 28138602 28190781 28148963 28147344 28197317 28100843 28125471 28179079 28119224 28157056 28193369 28159886 28157906 28166088 28159334 28228013 28091305 28177396 28148492 28175425 28157722 28123798 28159030 28114587 28189587 28147600 28180388 28157492 28195848 28179235 28196051 28165637 28140879 28199113 28151469 28240791 28200172 28165992 28148286 28195283 28149949 28199033 28159123 28210935 28201077 28166577 28173607 28152185 28212785 28134124 28140760 28110337 28157087 28206181 28174923 28178092 28132539 28181415 28155933 28192423 28129454 28198179 28154341 28164576 28242570 28184163 28211940 28216012 28130261 28216196 28182817 28248710 28205339 28136517 28188626 28173210 28180025 28204473 28196558 28153292 28195150 28167615 28162362 28254920 28213028 28209700 28250928 28146764 28201849 28165563 28151583 28102835 28176321 28256289 28230012 28233318 28201827 28195123 28173457 28192112 28196224 28228256 28236946 28168022 28194159 28236634 28223891 28211153 28176420 28201977 28171173 28246940 28179024 28186011 28216997 28208641 28213553 28209407 28260666 28195384 28220465 28282147 28199366 28232314 28175259 28231439 28241224 28199994 28190358 28226024 28226324 28217137 28224205 28247536 28228666 28181632 28209259 28208215 28288494 28244292 28212677 28250231 28200819 28189500 28183436 28186865 28210995 28258017 28166175 28207169 28207129 28219492 28244464 28210116 28259873 28137671 28252926 28206272 28236419 28289038 28226068 28267227 28232083 28270234 28248565 28252924 28250541 28229372 28221468 28241711 28208469 28238249 28154334 28241247 28211101 28231559 28279838 28250224 28133703 28207816 28187630 28281995 28216778 28298784 28313140 28232295 28267200 28253302 28227324 28223464 28276565 28286288 28242344 28227244 28271974 28207075 28305095 28210215 28295552 28309708 28188961 28285300 28210799 28304955 28277881 28266069 28276518 28214368 28253645 28249478 28200398 28190197 28219657 28242846 28244223 28210852 28256595 28298509 28210311 28259767 28249278 28269813 28281557 28229731 28215104 28282201 28235896 28263416 28230192 28298941 28195778 28319945 28230271 28284024 28285907 28247739 28237749 28297445 28311462 28303445 28264601 28183694 28288506 28223438 28250582 28175706 28260837 28300835 28306468 28234054 28281181 28243871 28253662 28290768 28284911 28260785 28227553 28281512 28314008 28271845 28254749 28208030 28260312 28302034 28228195 28219968 28192983 28295600 28262118 28215834 28250650 28257947 28272642 28308822 28323181 28366750 28294691 28317110 28252202 28225973 28313310 28304731 28350182 28338668 28286373 28316909 28252460 28302147 28319670 28231686 28315654 28244205 28347346 28305961 28259688 28302008 28338372 28311030 28315154 28276739 28268147 28276899 28283343 28254791 28294081 28222341 28295959 28236156 28307249 28259062 28258685 28338629 28271262 28248894 28243723 28338651 28267995 28313732 28367786 28335658 28270947 28329935 28259333 28278829 28352061 28278220 28272672 28299691 28260880 28282413 28333005 28269610 28324093 28229990 28289469 28281659 28267149 28254340 28224414 28309800 28321723 28299489 28307546 28350123 28291896 28354334 28326093 28304374 28251393 28372161 28335258 28342079 28302143 28294211 28362473 28326907 28288521 28253795 28346832 28339500 28276341 28335204 28313636 28330988 28354461 28301320 28301270 28314839 28397441 28310754 28319162 28358280 28301418 28292445 28316800 28345332 28346911 28337302 28268289 28290733 28307465 28347038 28364345 28366589 28348013 28326569 28282878 28291353 28363031 28315867 28288813 28288240 28339891 28268390 28303196 28344176 28276372 28333878 28368671 28288735 28306800 28321178 28316080 28341534 28346722 28426204 28341822 28303002 28394934 28315742 28293184 28281788 28363506 28298283 28348746 28345481 28385346 28361397 28344070 28373601 28313532 28385729 28327910 28367919 28355535 28333079 28336485 28425546 28296737 28266534 28318116 28421036 28375664 28265214 28381118 28398908 28368659 28315689 28301053 28366342 28299115 28357434 28388508 28391583 28407523 28296708 28321849 28373449 28383170 28363682 28354289 28355171 28319577 28336180 28360414 28376911 28327115 28345138 28372283 28345545 28368139 28360640 28364546 28386660 28338294 28413631 28345430 28329503 28386515 28362266 28384574 28408885 28384309 28325285 28286185 28355042 28397333 28373354 28342912 28362052 28315295 28417482 28366688 28390863 28384276 28364372 28319995 28342424 28354874 28380874 28354839 28348871 28313070 28372791 28382264 28419372 28491817 28402536 28361191 28370382 28357717 28392902 28353633 28413753 28351251 28306559 28420320 28311313 28331607 28383971 28408241 28366331 28406344 28326282 28318695 28388369 28402698 28370957 28390301 28350279 28395415 28387343 28367214 28383251 28366381 28375825 28368650 28400025 28391497 28426197 28407637 28391424 28375978 28400868 28366454 28403868 28385201 28428802 28425205 28362401 28400927 28364092 28377197 28440297 28422304 28388731 28367779 28409660 28381829 28429101 28351208 28417839 28491706 28372327 28426089 28330921 28393044 28425824 28441567 28403898 28512109 28407303 28415179 28332747 28406032 28414840 28380579 28428278 28460484 28445881 28402238 28422180 28395605 28412374 28383715 28402867 28442728 28418542 28449095 28388078 28389209 28409358 28390266 28421653 28332549 28390170 28436463 28388722 28431062 28471235 28439105 28418757 28434313 28399388 28374187 28430470 28398682 28370682 28434452 28424173 28393830 28354767 28472804 28423907 28462634 28488129 28373717 28464088 28437899 28368525 28436852 28429698 28404398 28429350 28415008 28473786 28447488 28390521 28365360 28431032 28392891 28468020 28402212 28475677 28412181 28401264 28408935 28439419 28373058 28460539 28450889 28509548 28457477 28409035 28399113 28368255 28468541 28429356 28446589 28408947 28437335 28485473 28411005 28393534 28439293 28419794 28415483 28407976 28417757 28499771 28408921 28466214 28462027 28420011 28419093 28445669 28417774 28439253 28416696 28406160 28362440 28484396 28462571 28426991 28473158 28416317 28433109 28474685 28390177 28407711 28431801 28419869 28487977 28471509 28485365 28401593 28479418 28450599 28447926 28454723 28367120 28393128 28483575 28530881 28468590 28430677 28383212 28455684 28490691 28462235 28503131 28389461 28464540 28458260 28527589 28549490 28466134 28525125 28491935 28470811 28451685 28468655 28432924 28440941 28477532 28497679 28532165 28510132 28464240 28507401 28485628 28490843 28437213 28459197 28516484 28451788 28495411 28419455 28482945 28408394 28455137 28447884 28536902 28484135 28437106 28456582 28482009 28480456 28503871 28445393 28446823 28489193 28455138 28490954 28498143 28516342 28449746 28423690 28486780 28476463 28435373 28474703 28488155 28498477 28518121 28463539 28463384 28456701 28512765 28461762 28442527 28429757 28382727 28504221 28439099 28465633 28464070 28479328 28519893 28506180 28467429 28420813 28483310 28484873 28515747 28492491 28441101 28478553 28525483 28481032 28506644 28489506 28508276 28454269 28454011 28534923 28469629 28513527 28494479 28506582 28501404 28496590 28447901 28457468 28420283 28518235 28522928 28480678 28429401 28497868 28486957 28455787 28426064 28500675 28507024 28549901 28525307 28493287 28484811 28481377 28432577 28461639 28578353 28521722 28518872 28498884 28549015 28532704 28507250 28475650 28478295 28480145 28488586 28496427 28505818 28468454 28487701 28511547 28469513 28467867 28432690 28504060 28428757 28518998 28469122 28472201 28517600 28494842 28473060 28500430 28559899 28498879 28526629 28596317 28469610 28501546 28495708 28489498 28557323 28527766 28528643 28516562 28576925 28490201 28490546 28509207 28532970 28481923 28487337 28480033 28552175 28512168 28495872 28538253 28470976 28508622 28586829 28514688 28535670 28514887 28596894 28553767 28539568 28578911 28547200 28558641 28524882 28564278 28511863 28604355 28530972 28533381 28534856 28539102 28565816 28509031 28574699 28575139 28513877 28508751 28531657 28629998 28542654 28556405 28530308 28491899 28595495 28605059 28572372 28545949 28533542 28551157 28527534 28498403 28545084 28576259 28559964 28523317 28563328 28508160 28566025 28587000 28629348 28533136 28522584 28550257 28511059 28542578 28460954 28533228 28524693 28502609 28552441 28584816 28534946 28512292 28502488 28508933 28561246 28563596 28518614 28504240 28572507 28525836 28561633 28553878 28583196 28542417 28593172 28607256 28514361 28559887 28573742 28583866 28516714 28557492 28599075 28581026 28516808 28603864 28596653 28546902 28521412 28557164 28500906 28577838 28516743 28462087 28618878 28597925 28594472 28527537 28564467 28614907 28522680 28626109 28548756 28559582 28542136 28574947 28584442 28571556 28613999 28518027 28572876 28536823 28557380 28624448 28528789 28555201 28574901 28589017 28590201 28647648 28598544 28539872 28603960 28636575 28542258 28598460 28527608 28513093 28568914 28591776 28559145 28565452 28586561 28616624 28586118 28557188 28552075 28570315 28564776 28580037 28677860 28618432 28591012 28636103 28554632 28612527 28567711 28537887 28560657 28586507 28582589 28554465 28595783 28645543 28666921 28553411 28645303 28591804 28580254 28609998 28567842 28582727 28628335 28572652 28624710 28635691 28554740 28559609 28575082 28623046 28612872 28541789 28570627 28593566 28625035 28734698 28577241 28597343 28620931 28657284 28610815 28678937 28665022 28606613 28590236 28621327 28492543 28631852 28601406 28581017 28604422 28601612 28678153 28634200 28597072 28576692 28604561 28683203 28611271 28675219 28581470 28620409 28611704 28607318 28565011 28629437 28504420 28590886 28610363 28726392 28645877 28603771 28600817 28639787 28599822 28606044 28647080 28601495 28645493 28600432 28615904 28600541 28633738 28564546 28661324 28644640 28616291 28570373 28618735 28626399 28637202 28620658 28607972 28652160 28661719 28655196 28594695 28627765 28637256 28623171 28619169 28643408 28682089 28597527 28580181 28628759 28615800 28667215 28608059 28624304 28603887 28623832 28659076 28701515 28692955 28622424 28635555 28646639 28641080 28568295 28585038 28605718 28598755 28625361 28593512 28600194 28674576 28691920 28637580 28607943 28644947 28642958 28580239 28650788 28625511 28615110 28609756 28663999 28684586 28642606 28647564 28672075 28711767 28621267 28618493 28662582 28591763 28606208 28618061 28619293 28611504 28661284 28699161 28685023 28629150 28625348 28655248 28623034 28630675 28667171 28688293 28701032 28680693 28670859 28654883 28597269 28663181 28715425 28672002 28665357 28646762 28666461 28584346 28672206 28667203 28675784 28678317 28620826 28601358 28664463 28703835 28639849 28695608 28634904 28682710 28632398 28649237 28707974 28674638 28680865 28661371 28661051 28646272 28657753 28636679 28635636 28614794 28693716 28674285 28599332 28644442 28676997 28658696 28664752 28596028 28638181 28721517 28738719 28661968 28700270 28700768 28706825 28692745 28675192 28677779 28646721 28625160 28670481 28649407 28683770 28693025 28667072 28626931 28677545 28668876 28706034 28739457 28708837 28707938 28601016 28624297 28661408 28699418 28611525 28627759 28680455 28665845 28674267 28734278 28669455 28675200 28681859 28635994 28713709 28641622 28696746 28639273 28700017 28706926 28706869 28659688 28707693 28679647 28713953 28708287 28702359 28709897 28716317 28659623 28678665 28669666 28752549 28644860 28712438 28629632 28706015 28703736 28683102 28715611 28696575 28757133 28703174 28714859 28664385 28707529 28738322 28676659 28725528 28697632 28674258 28676130 28716357 28699880 28685009 28692149 28689887 28708642 28688453 28690086 28680464 28707287 28720079 28757432 28681774 28735684 28672138 28670614 28751619 28702096 28744232 28653276 28641646 28696023 28727263 28675285 28699565 28747348 28709026 28702379 28753504 28678009 28739832 28713260 28730246 28710068 28709154 28707581 28728371 28794310 28736507 28690923 28686808 28693498 28650710 28729449 28746608 28682293 28689061 28749859 28786349 28693292 28689208 28728292 28662345 28711540 28720263 28725612 28744706 28758705 28795333 28731494 28671039 28732368 28803353 28733304 28786548 28696325 28761366 28808160 28660807 28721110 28807677 28698677 28682793 28766013 28755768 28710272 28775089 28714997 28642172 28770188 28798020 28769081 28773087 28731919 28743020 28784892 28804400 28732498 28725972 28796135 28736070 28756858 28789740 28773886 28761508 28745875 28737519 28760868 28722978 28660360 28715858 28725212 28719851 28714839 28743514 28751186 28762138 28717224 28778178 28750885 28756136 28776430 28754671 28771434 28783587 28778159 28733070 28756734 28822031 28733443 28791660 28751455 28772899 28723542 28741917 28730949 28717598 28791879 28730063 28770213 28709365 28739758 28767525 28729471 28765797 28806877 28755172 28738523 28807901 28716672 28862413 28741304 28771861 28742899 28788018 28798165 28764067 28714204 28700301 28727550 28792526 28794932 28721369 28796062 28726502 28766472 28833400 28824151 28715921 28782668 28735773 28764828 28778524 28763822 28799963 28772888 28707484 28670437 28768291 28796037 28767334 28745715 28796467 28758072 28760353 28785739 28821157 28810218 28852554 28793436 28768423 28741204 28823140 28818559 28780753 28731276 28792961 28771866 28835693 28853133 28832822 28734059 28823644 28841892 28823560 28795807 28802138 28803785 28804452 28775941 28780391 28784026 28780923 28813805 28764540 28814344 28827213 28829521 28790415 28758548 28790019 28815024 28765875 28786771 28816128 28825840 28788693 28766864 28814291 28783349 28818832 28801880 28786760 28825400 28761133 28803439 28822262 28773207 28859070 28723222 28830433 28759385 28815257 28821096 28826908 28831635 28768161 28859861 28780875 28879876 28829784 28760386 28900789 28822603 28822535 28848477 28873633 28791407 28807492 28794178 28876408 28782457 28837515 28774288 28812976 28822848 28763087 28791660 28801368 28808760 28815950 28781294 28828573 28755836 28798964 28795092 28827288 28875440 28766285 28775544 28816159 28755736 28773524 28820675 28813776 28754390 28859443 28771680 28736349 28825816 28845711 28865749 28789335 28821575 28821180 28841256 28735649 28826736 28827676 28772568 28819138 28820199 28905548 28770524 28795864 28841069 28831750 28781764 28818661 28813641 28788065 28774489 28804412 28833010 28840913 28825134 28875065 28842300 28805982 28904258 28782685 28794232 28767319 28902151 28854047 28845921 28871502 28860324 28805525 28819554 28859176 28811660 28867470 28875195 28778675 28851432 28738561 28888844 28826649 28803773 28891606 28770188 28787247 28930152 28914550 28887422 28812082 28840925 28826776 28874272 28868738 28861224 28850059 28788630 28880357 28912617 28850676 28775984 28806253 28760261 28904193 28782614 28812101 28816977 28863731 28857110 28840313 28866386 28849934 28856968 28865459 28822405 28786170 28844848 28875500 28806454 28841911 28852156 28814368 28898785 28883519 28794004 28851500 28821134 28785216 28875148 28886890 28829137 28854467 28829728 28881494 28819802 28933817 28904898 28861778 28858318 28835685 28881747 28875676 28894130 28858352 28858409 28890916 28838552 28884484 28883195 28845831 28836702 28850724 28880961 28890425 28835784 28874166 28850777 28818892 28860874 28828863 28869819 28870838 28858293 28890240 28846923 28837542 28839068 28972893 28912414 28912605 28919416 28860256 28852013 28935759 28846508 28847500 28865967 28900854 28886573 28925093 28929384 28835628 28872360 28950571 28942458 28885730 28899562 28832211 28860295 28905976 28841479 28934478 28885548 28910733 28919223 28896965 28937434 28890134 28932083 28848538 28929108 28843362 28897067 28914682 28923528 28925865 28888743 28901321 28926533 28900575 28924165 28890903 28896776 28919841 28936714 28880178 28951827 28918408 28893088 28898509 28891317 28930468 28906927 28823602 28876624 28934025 28861468 28909122 28903005 28865180 28941163 28879068 28855299 28884809 28899683 28877158 28934536 28873093 28926815 28900885 28936043 28936030 28944815 28889925 28883917 28877712 28945284 28888899 28905722 28868116 28874457 28932577 28961259 28889548 28947534 28945216 28936195 29020442 28934574 28933493 29005231 28922390 28911521 28868097 28892952 28908617 28927934 28908719 28908334 28924893 28885708 28923515 28939105 28923366 28935047 28921621 28966852 28942111 29000082 28921718 28956602 28905163 28952155 28934603 28966220 28829950 28972125 28894716 29002833 28898387 28956620 28944522 28895668 28903564 29001763 28968054 28916640 28893707 28936339 28901717 28947186 29010647 28931242 28927392 28914586 28958537 28956062 28900824 28978774 28979886 28941727 28954637 28964035 28902690 28871283 28952964 28970232 28920169 28953497 28886551 28966774 28985265 28993790 28922966 28964761 28908110 29002158 28898313 28885580 28939661 28952112 28913024 28976608 28903446 28962388 28942805 28991983 28959356 28874262 28902400 28940890 28937631 28925358 28930967 28932878 28880488 28901788 28953329 29018046 28933818 28964168 28988615 28972273 28967528 28959840 28952067 28968969 28908830 28968066 28920862 28941720 28928943 28981121 28954038 28958267 28974974 28940657 28949166 28997209 28985926 28962575 28948994 28876257 28968898 28944449 28949079 28974641 29010321 28976433 28989695 28945710 28956383 28974658 29045985 28960591 28935838 28994562 28957972 29028209 28910851 28976803 28897800 28977457 28947825 28956550 28996330 28962497 28989971 28996625 28958150 28978173 29043019 28968813 28987079 29041985 28990237 28992254 28921654 28976277 29015728 28914979 28995938 28942968 29015085 28985964 29075276 29010008 28923028 28973403 28957050 28955742 29010614 28987492 29019757 28945489 28974526 29022907 28995140 28979311 28999047 28944077 28983979 28972844 29012487 28955648 29094227 29005424 29000845 29012286 28990411 28972561 29012368 28955401 29071571 29013168 29028935 28997113 28939936 29019730 28977525 28991014 28988063 28986088 29014371 29013837 29020605 28984928 29004397 29028794 29026397 28962481 28996521 28956097 28982665 29085668 29011048 28976744 28981322 28959046 29030482 29038027 28994652 28960847 28997684 29001992 29105450 29010241 28966772 29016898 28931156 28950634 28995640 29036155 28996948 28983011 29034691 29028691 29042065 28977121 28960518 29061629 29007329 28963230 28996451 29013185 29022283 29024891 28972554 29038476 29034929 28942199 28978713 28963532 29016087 29046253 28999196 29001176 29034463 29089021 29018240 29075451 28998298 28988179 29020045 29025206 28998734 28978983 29067368 29026066 29036408 29042358 28959153 28956434 29019305 29048963 28991971 29032404 28999340 28976276 29036815 28968355 28996622 29001226 28999530 28996129 29072509 29018094 28989245 29025426 28990221 28997531 29065611 29064603 29065982 29035346 28980505 28988124 29008118 29018174 29037817 28971683 28999888 29044250 29043745 29036283 29079989 29067937 28982686 29042940 29014302 28984200 29073272 29045911 29067301 29011010 29006280 28978144 29080288 29090119 29042996 29057950 29096779 29023788 28993992 29045103 29047246 29064616 29087139 29048197 29040039 29070965 29002886 29047773 29034632 29109460 29048318 29065598 29088987 29061945 28953027 29020403 29020954 29059752 29051775 29055062 29048813 29016510 29071692 29048438 29039463 29061183 29031622 29013928 29104109 29038113 29055253 29040296 29052115 29033568 29079938 29013447 29051113 29088021 29037650 29091555 29098346 29020537 29120008 29041796 29058205 29040742 29040656 29024770 29030815 29090646 29044720 29064731 29096290 29084746 28993113 29074371 29079808 29065094 29039732 29071958 29072085 28987885 29077780 29081883 29051167 28999325 29071166 29066039 29044462 29026350 29127872 29068322 29112528 29078267 29096520 29054978 29112320 29081354 29139986 29092752 29143947 29061373 29126356 29049598 29075740 29100307 29046417 29144884 29020029 29070513 29099476 29105065 29107756 29030545 29126946 29082801 29022960 29071777 29087214 29034334 29085818 29047765 29090520 29061072 29067586 29099559 29052586 29085666 29113315 29091570 29152929 29120856 29055522 29059518 29087619 29098520 29132155 29111180 29063844 29134816 29115397 29107606 29040865 28987949 29067383 29081729 29126370 29043213 29075060 29121205 29131525 29101337 29127589 29125988 29055472 29144751 29056505 29093764 29103116 29067782 29143431 29071410 29133867 29081170 29162035 29127706 29114615 29114833 29059772 29082609 29107935 29067750 29134689 29067979 29148016 29090515 29063673 29123597 29104213 29095153 29154591 29074246 29135486 29109503 29104022 29112515 29152129 29132800 29108430 29099138 29104138 29131530 29099139 29137812 29082731 29151231 29142260 29105805 29093917 29150646 29154728 29142053 29126467 29093418 29094541 29125233 29153227 29045566 29106547 29113268 29140298 29018640 29122949 29070707 29119009 29109538 29144384 29131242 29123185 29068638 29085414 29153558 29098058 29078307 29069989 29078745 29113878 29139679 29160793 29194889 29131522 29199156 29170365 29083319 29140901 29072797 29139736 29109284 29174997 29117200 29136695 29126346 29137847 29129911 29078117 29109942 29139009 29115319 29098242 29151194 29150021 29086327 29135127 29137610 29132593 29174371 29147248 29092952 29117032 29133389 29225004 29119321 29136563 29136270 29146570 29111173 29148893 29121187 29184782 29189679 29155158 29106792 29231698 29096582 29187088 29144225 29133049 29118004 29109895 29095651 29168506 29175231 29180842 29154357 29139630 29127108 29125321 29076892 29143978 29228730 29182982 29179254 29087931 29166764 29166924 29182454 29075316 29174487 29178715 29153026 29165196 29136630 29117551 29179908 29156502 29129689 29120598 29140913 29134915 29185232 29201689 29124732 29153214 29167820 29165778 29189355 29185611 29186921 29223461 29156444 29141749 29177155 29137979 29110756 29193624 29135163 29160510 29174478 29178279 29206479 29195988 29165438 29168930 29147232 29216383 29168534 29098046 29209794 29136838 29149625 29119489 29164380 29146425 29098063 29213414 29187775 29162737 29134932 29156573 29177888 29111621 29109236 29156087 29145428 29115519 29190861 29122807 29188455 29193963 29210506 29182508 29181245 29172628 29186900 29214120 29166442 29209077 29117648 29215871 29153743 29216289 29185214 29122516 29143639 29175610 29199610 29115280 29180177 29151002 29163662 29191775 29188352 29204780 29209690 29239532 29186897 29129777 29166406 29203814 29216722 29170741 29141421 29212452 29180262 29172395 29189453 29187524 29088452 29148412 29230826 29190347 29164965 29203334 29180755 29199654 29199092 29199992 29219342 29204431 29207229 29251782 29177198 29178995 29246584 29258420 29215581 29203706 29123943 29149342 29208628 29218723 29220332 29198293 29232155 29171934 29235921 29166822 29204546 29217281 29148034 29278055 29223311 29203196 29186226 29210601 29182446 29203028 29212112 29225800 29129099 29220622 29136713 29223485 29170461 29230018 29307247 29231773 29246641 29230418 29253735 29156753 29201301 29227862 29256641 29161841 29257177 29174303 29116887 29228191 29216895 29231458 29201441 29204947 29170830 29147405 29194204 29271933 29196005 29229784 29231993 29225135 29214956 29231270 29220820 29215327 29238363 29181478 29163707 29204547 29247227 29278277 29189538 29237201 29175450 29282549 29175367 29214951 29248222 29272375 29218478 29212967 29246575 29217771 29205735 29273744 29198384 29257049 29223053 29258478 29243284 29234447 29272918 29222144 29295860 29191280 29211764 29206549 29257411 29253657 29210141 29210682 29188328 29241440 29267965 29282322 29245991 29258925 29256398 29276194 29222944 29255454 29207719 29264911 29214491 29282185 29254206 29180497 29212166 29241715 29233617 29239529 29235626 29239734 29236486 29261794 29256928 29182517 29226846 29242975 29235971 29245201 29248524 29304782 29259014 29216101 29234574 29200908 29274163 29201692 29330821 29277861 29237703 29244354 29272711 29284148 29194711 29277694 29259450 29235450 29285423 29276354 29265715 29325436 29288274 29265850 29288199 29286366 29258200 29287857 29251578 29247630 29312861 29253576 29256543 29232049 29250012 29327712 29248076 29220340 29250160 29285105 29281302 29286532 29262725 29308435 29268656 29290624 29203796 29269143 29265813 29303089 29283605 29305723 29207445 29335499 29269508 29305182 29283341 29281845 29280107 29289296 29208098 29252500 29324720 29264041 29266800 29314382 29302238 29239634 29302600 29284983 29218670 29301331 29283806 29284559 29249821 29238121 29274768 29238840 29266899 29252222 29276517 29333659 29299449 29265322 29297417 29298954 29248070 29317520 29234237 29300857 29303896 29320447 29285304 29274179 29291131 29303941 29274211 29268347 29319091 29268738 29282395 29244515 29142565 29272779 29234226 29360387 29247121 29325902 29305972 29296059 29300431 29280912 29284460 29316248 29253079 29242888 29252577 29327933 29301940 29263103 29354919 29326898 29263464 29277284 29280372 29337392 29354744 29308291 29308034 29318702 29340694 29259055 29342081 29289740 29296004 29336046 29304120 29357410 29302703 29336035 29316134 29305886 29306315 29361930 29340965 29323879 29298531 29294341 29229511 29316704 29352014 29343330 29303356 29317852 29305937 29251946 29270665 29348104 29303559 29292174 29342688 29311156 29325871 29345015 29321494 29306734 29331409 29304035 29382170 29304513 29287375 29358984 29317862 29303417 29289949 29335184 29342625 29292420 29405769 29336267 29380340 29379754 29346410 29336325 29232175 29311651 29308988 29306040 29306722 29368930 29339718 29293802 29332480 29281005 29316692 29310689 29290557 29337099 29362117 29337251 29321546 29302439 29366500 29422191 29398804 29328696 29339353 29351024 29310227 29334144 29357105 29317958 29338066 29282266 29330663 29345033 29307909 29359405 29382123 29346136 29360785 29336892 29338067 29388636 29398060 29361298 29361571 29308212 29336676 29319034 29328184 29340243 29295507 29318917 29309434 29383228 29365558 29356550 29423426 29352933 29327266 29326731 29313027 29362339 29263546 29333815 29378823 29361733 29337823 29341033 29359751 29301550 29382498 29367143 29317523 29387783 29312438 29329974 29399982 29339465 29317975 29343793 29371866 29375209 29308825 29395706 29353592 29383031 29326161 29353455 29365526 29362783 29355753 29391736 29410349 29362414 29330332 29369147 29324897 29374929 29377923 29359973 29378711 29358431 29341872 29352140 29381052 29349257 29378004 29350158 29378724 29380179 29344166 29313614 29318434 29419748 29345163 29368863 29367139 29366914 29311615 29373275 29369129 29350724 29366182 29355218 29385773 29383603 29369062 29398471 29347290 29374989 29430137 29392287 29326178 29374677 29373680 29408494 29348892 29453252 29344333 29418937 29348271 29370994 29302787 29379178 29354023 29379717 29364408 29435387 29372438 29370043 29364980 29400664 29376187 29339616 29339771 29350946 29415123 29356822 29444822 29390792 29390232 29419597 29382507 29453186 29353336 29406361 29336951 29401034 29355111 29370959 29392426 29399527 29370256 29416916 29404996 29333094 29441589 29368461 29429026 29441609 29433369 29382709 29419266 29379863 29420165 29391706 29440511 29388030 29426394 29408351 29380483 29474277 29441352 29332645 29431123 29398443 29434455 29384600 29438054 29396502 29445616 29390087 29410428 29401230 29443262 29443301 29411852 29369530 29365433 29433136 29417580 29438010 29429969 29411113 29384113 29451038 29442898 29454329 29385237 29430771 29375509 29487352 29433418 29391852 29399192 29391718 29411376 29354726 29448868 29375753 29436845 29402962 29408395 29390689 29402177 29406464 29391397 29494298 29405293 29423407 29418800 29392139 29491345 29399190 29455357 29405181 29398038 29390127 29434394 29391910 29488710 29464594 29491023 29479252 29463988 29472786 29455930 29446529 29440418 29398037 29431330 29488996 29470597 29430520 29429353 29424130 29470592 29461345 29406757 29450091 29476030 29373359 29398286 29408607 29383112 29420521 29407750 29403891 29433576 29388010 29455676 29392908 29468699 29453310 29426901 29470849 29478719 29493953 29468254 29471613 29493434 29434509 29502313 29471452 29495761 29498441 29403398 29396102 29436415 29424961 29522630 29533598 29451008 29489688 29417006 29468080 29415815 29413579 29495477 29410080 29463559 29455055 29423843 29422744 29453749 29480588 29423805 29456418 29461864 29459700 29471498 29474179 29510500 29419330 29499607 29432877 29489515 29549335 29424493 29529500 29457445 29523558 29433787 29448767 29499939 29470657 29508095 29463365 29508587 29449818 29464367 29458652 29464027 29489019 29493966 29542452 29539995 29481283 29528508 29438772 29439552 29445114 29446660 29481466 29466812 29392497 29516121 29482488 29468226 29492615 29425822 29463577 29514781 29476570 29438822 29448050 29427639 29439160 29441730 29446074 29462844 29388636 29480475 29455068 29486727 29439864 29476741 29485986 29423270 29448803 29468297 29429307 29514707 29497686 29461423 29420442 29456053 29486366 29368036 29471772 29465129 29498068 29433643 29472925 29511483 29522768 29474426 29479100 29511996 29454110 29501446 29445112 29485306 29500298 29494198 29527437 29458135 29481708 29512317 29513070 29528729 29498783 29510752 29466128 29484959 29458105 29479122 29486664 29458049 29570219 29467782 29533546 29461864 29459128 29549542 29515087 29502637 29503611 29502350 29469610 29453863 29435544 29491374 29503719 29475851 29456803 29523213 29445500 29533708 29450415 29514893 29501894 29524099 29485960 29473173 29489951 29508243 29507766 29469399 29452508 29466918 29507119 29533884 29464340 29478100 29510874 29504753 29484176 29464470 29604999 29504938 29453609 29509166 29550579 29515194 29550245 29512649 29483264 29549262 29557477 29448258 29554095 29557847 29498042 29513830 29522132 29495483 29542162 29558389 29525822 29558054 29482127 29483247 29520298 29598131 29487664 29548711 29554062 29531327 29484201 29529318 29512620 29564562 29511853 29551880 29577908 29532101 29548209 29519347 29534491 29571879 29557433 29483799 29525311 29515460 29563947 29499654 29556111 29489227 29566580 29552732 29512168 29530230 29546026 29470528 29548261 29486165 29491392 29515898 29530505 29523876 29564011 29543240 29464846 29545148 29472906 29491697 29585922 29592225 29561439 29535601 29562218 29534099 29517900 29616046 29526044 29583554 29566665 29511224 29520829 29518623 29552037 29553513 29541606 29594623 29558906 29506047 29602353 29557243 29550794 29584452 29560358 29532958 29585864 29569567 29596473 29577274 29521033 29554092 29569626 29576124 29542402 29494430 29469210 29571695 29559591 29557179 29552070 29551651 29556090 29572638 29531738 29515446 29471076 29520395 29566814 29577382 29583093 29555393 29546532 29555921 29554714 29499409 29554689 29508878 29575059 29555660 29532526 29561178 29481284 29507373 29523330 29516308 29521899 29551336 29529708 29552972 29479416 29594851 29618809 29574196 29552257 29604614 29560851 29495750 29485337 29547629 29575393 29572160 29515976 29556386 29547687 29596993 29554240 29540613 29531436 29572630 29593169 29589653 29648976 29564184 29574377 29589710 29580670 29539741 29661716 29614729 29500599 29604852 29597204 29563922 29596769 29622242 29561654 29619795 29594716 29541671 29543116 29565348 29562316 29549707 29640350 29584667 29515514 29575421 29563821 29586128 29568594 29615699 29596121 29597752 29534588 29575404 29569405 29565273 29631987 29616800 29527590 29597716 29566264 29638256 29641088 29589776 29566630 29580192 29639260 29576339 29582643 29582227 29547708 29612229 29675445 29595374 29570917 29583177 29510389 29514659 29546541 29578618 29643028 29609636 29527559 29630118 29586278 29625172 29576034 29629884 29611313 29556912 29639157 29575147 29625988 29625195 29562064 29538584 29618289 29628732 29581552 29599628 29543296 29708157 29570541 29584521 29598929 29556941 29642196 29617175 29605632 29663504 29629264 29632504 29646303 29611606 29591705 29571380 29606081 29590825 29641703 29595843 29561248 29613391 29629194 29602220 29562694 29560235 29591398 29635624 29656228 29619049 29543955 29549127 29630530 29623904 29667483 29603254 29625294 29658426 29650666 29636335 29628892 29654374 29599878 29626086 29647097 29665202 29660250 29604857 29619472 29628307 29604701 29561753 29649695 29607516 29657308 29567749 29553966 29596573 29691991 29659442 29630476 29696322 29587809 29566903 29614111 29664930 29633046 29640894 29638647 29632780 29621298 29653902 29677556 29607217 29660992 29620126 29623819 29642297 29653441 29578619 29713379 29601673 29700997 29613102 29644474 29635185 29680889 29664802 29698006 29672191 29649538 29655697 29602551 29678307 29652716 29659246 29659063 29679766 29658037 29656692 29618446 29600248 29642089 29613648 29570429 29640185 29722899 29658526 29617691 29659648 29659917 29663910 29662531 29729749 29630002 29620847 29624509 29669089 29650115 29646388 29685791 29668076 29582631 29639104 29626945 29733741 29670369 29637395 29602342 29641984 29635336 29614410 29621161 29621760 29699728 29731899 29594717 29654895 29659916 29656912 29621627 29667371 29645720 29673070 29700481 29612309 29652759 29680467 29668552 29681815 29624673 29649387 29665443 29706557 29657266 29694242 29654377 29650017 29729841 29682394 29695580 29663526 29638248 29617398 29655586 29658916 29695895 29649888 29611111 29767017 29687819 29623019 29674712 29636311 29669588 29675805 29650715 29695907 29629395 29715341 29580857 29657625 29611615 29699964 29662667 29676196 29702406 29670969 29673157 29726161 29643162 29734033 29694271 29668007 29680583 29701782 29740499 29637569 29695860 29708303 29645737 29657029 29734238 29651012 29742404 29761229 29632417 29706395 29702907 29669503 29668360 29728841 29680065 29694124 29726268 29733250 29630283 29711771 29698145 29706780 29763745 29730713 29696052 29652333 29677961 29750641 29688479 29727923 29722950 29706566 29630774 29709184 29614263 29681500 29691181 29678296 29713348 29728014 29677491 29741059 29662998 29736710 29684529 29710330 29678594 29695795 29721909 29729176 29691909 29650373 29684435 29717373 29777383 29703479 29680153 29745847 29728371 29767678 29698123 29725696 29691374 29677743 29719399 29656905 29700197 29678842 29692376 29683623 29733526 29758858 29704619 29765115 29763825 29749510 29756992 29751541 29723489 29725457 29721917 29668131 29797754 29670277 29714459 29726739 29754660 29726427 29798320 29679708 29750779 29723416 29740419 29696385 29720999 29703533 29710264 29769392 29718911 29729171 29711925 29698711 29701818 29734326 29755975 29789527 29771321 29754340 29639307 29752986 29721243 29729760 29707025 29751273 29733720 29709367 29777858 29782631 29720890 29747990 29743003 29782423 29748237 29714280 29691228 29722753 29723217 29716369 29711986 29702305 29737792 29771641 29727752 29715212 29666606 29747636 29727933 29714660 29748602 29789848 29772356 29723316 29794650 29728902 29707404 29735652 29743370 29753086 29724466 29768843 29767434 29788777 29695393 29747141 29793803 29763403 29757003 29745785 29732521 29755942 29750181 29792396 29751001 29770586 29823866 29690923 29739664 29734534 29736776 29767373 29762232 29722651 29757055 29790388 29787702 29737301 29813456 29745395 29778157 29810704 29706586 29816993 29792677 29809863 29845235 29764551 29797757 29791069 29747656 29754942 29725311 29786745 29807512 29786170 29796196 29723630 29862312 29783971 29771903 29760974 29809223 29802587 29768419 29808907 29751931 29778627 29827293 29842816 29758036 29782000 29780592 29748628 29801810 29767410 29786525 29770742 29772517 29868211 29790162 29822968 29816905 29815616 29815893 29793314 29749139 29746641 29835774 29792285 29800074 29761953 29863823 29739301 29804424 29771544 29742282 29774868 29792214 29741184 29793878 29823406 29795531 29755785 29764324 29816629 29822420 29793644 29828169 29842089 29855873 29717230 29721120 29808972 29850017 29762828 29812798 29857531 29766542 29789367 29787017 29821844 29805631 29804303 29854646 29761552 29784978 29848527 29735765 29780832 29827525 29831732 29838459 29825873 29754605 29746625 29760049 29744824 29860216 29814103 29782867 29809605 29829187 29761656 29809142 29774288 29796500 29804026 29785298 29798868 29780889 29753568 29797145 29830946 29814177 29805091 29799485 29751622 29820091 29844361 29875985 29784758 29792675 29761065 29797275 29825970 29820340 29795378 29883934 29748192 29785323 29798056 29791529 29797120 29840267 29789775 29847320 29844971 29801755 29811640 29807987 29793085 29844646 29830438 29833482 29872276 29790539 29814169 29792663 29830925 29853148 29815696 29835546 29804445 29896994 29825774 29842943 29767956 29858708 29845498 29777523 29830650 29850894 29749139 29895353 29816345 29852344 29833971 29894329 29852139 29800439 29779786 29830033 29877563 29819062 29839997 29829126 29843338 29801098 29835816 29862188 29779122 29842359 29839241 29875541 29832306 29854768 29811636 29859303 29861479 29843979 29777821 29777901 29831197 29886372 29879597 29853931 29879749 29937173 29846375 29836576 29807739 29808148 29849522 29864024 29833735 29830207 29868999 29892870 29897695 29847877 29844469 29853797 29816206 29842914 29855855 29828250 29836020 29856190 29873043 29868798 29858431 29853967 29849473 29831431 29840738 29890422 29823839 29879020 29834232 29828128 29873833 29926493 29864954 29789378 29856978 29910175 29794008 29931848 29869940 29850102 29868168 29902699 29886583 29891092 29824275 29865367 29838730 29811015 29960500 29858700 29949344 29825465 29856857 29841905 29896333 29868053 29926303 29851513 29832457 29843903 29851574 29828360 29877872 29804665 29817970 29933410 29883964 29916755 29896479 29903221 29903464 29845601 29904342 29913456 29874623 29849599 29880539 29875859 29879896 29913778 29904021 29930043 29913619 29841341 29936071 29874264 29855635 29866395 29932494 29869550 29924716 29904668 29849181 29824024 29862569 29852401 29873214 29940124 29877361 29874736 29924998 29864738 29908605 29906674 29883003 29955860 29860842 29933886 29920314 29877725 29840813 29902608 29861821 29980892 29871484 29915687 29899909 29867140 29876299 29905640 29889680 29918264 29909134 29890805 29907602 29859794 29867065 29914859 29919934 29931713 29889973 29899170 29879392 29867265 29860991 29910803 29917456 29901428 29967705 29884186 29956242 29867037 29915103 29903429 29856910 29978597 29922155 29943019 29952363 29851511 29924760 29852646 29921427 29908674 29902414 29869576 29919168 29932668 29977271 29872692 29898314 29948704 29945263 29955852 29874627 29899424 29909586 29884945 29957287 29935568 29901491 29875716 29950014 29911365 29915932 29891304 29938296 29900572 29958463 29841819 30009635 29976474 29897946 29930833 29892893 29939787 29959782 29980101 29899089 29916474 29931345 29942447 29942844 30022523 29953646 29887279 29923321 29901450 29950707 29923651 29916104 29922024 29986053 29912277 29973664 29902363 29922965 30025318 29950850 29938279 29947268 29943461 29910973 29926439 29917624 29905641 29844919 29920766 29932185 29923246 29958787 29899262 30008285 29984458 29997138 29929436 29915801 29937371 30007158 29959432 29962129 29945347 29928980 29863739 29908274 29913633 29965945 29965554 29987391 29917934 29984352 29960357 29892836 29925959 29993655 29944897 29957071 29940536 29988344 29931858 30002133 30012068 29955860 29935964 29917303 29967831 30004781 29937469 29985368 29969973 29957863 29869483 29955081 29963344 29890885 29948575 29956935 29977475 29946297 29913577 29971546 30039867 29931029 29960637 29961760 29999908 29937351 29933695 29919270 29916142 29982043 29978019 29961056 30032942 30011797 29917668 29898155 30006834 29997373 29987155 29962512 29951887 29992526 29912339 30005080 30056464 29980791 30033410 30014537 30009632 29957834 29921778 30009662 29967099 30000123 30010785 30011812 29960785 29903268 29968048 29995550 30021989 29968749 29971057 29963730 29969136 30030895 29932313 29998844 30051878 29991127 30035330 29887528 30010657 29966963 30000329 30002370 30048885 29967008 29980246 30031181 30032743 30000210 30014911 30005282 29986877 30006358 30022211 29959450 29968892 30030390 29998973 30027111 29932151 30009596 30047392 30031428 30022228 30007817 29963961 30019485 30012707 29953656 29994933 30018930 29967111 30064581 30048954 30024894 29958484 30077328 30036591 30006214 29981996 29971670 29987007 29958901 29988238 30001580 29950715 30032940 30021822 30004680 29990984 30022608 30001333 29999352 30030929 29938385 29946376 30023978 29979486 30000975 30006452 30048262 29950027 30067213 29992200 29947034 29986777 29986552 29994435 30032626 29978181 30012380 30043958 30018257 29996052 30068011 30003597 29976115 29986648 29993706 30023625 30021307 29969344 29993134 29967260 30006982 29964214 29981952 30082057 30079135 30093463 30004577 30032712 30062850 29986968 30008515 30004527 30014996 30040959 30046040 30020307 30014801 29994226 30020260 29950921 30045790 30082655 29963401 30024552 30080135 29994640 30039838 29956602 29962870 30055615 30007380 30022831 30012450 29973480 30033256 30054940 29992674 29969475 29975484 30009020 30047871 30069888 30016004 30042779 30003389 30041327 30000992 29994059 29975122 30041760 30041492 30047059 30110650 29988603 30064281 30015710 30081598 30002968 30064792 30026051 30044244 29995880 30021229 30040977 30022591 30055100 30130043 30061088 30072418 30061159 30048821 30042164 30104676 30045579 30062045 30020753 30067896 30111288 30060558 30084841 29997575 30014120 30106179 30069569 29955871 30001764 30017650 30080900 30030824 30088322 30097204 30093510 30088169 30156711 30052118 30066657 30127805 30061154 30099991 30106396 30083854 30086602 30060575 30100067 30015765 30090439 30111615 30035535 30025075 30079017 30043471 30063304 30046848 30098823 30096428 30077742 30096254 30039783 30056738 30095208 30068302 30152187 30039939 29999157 30097721 30141258 30064634 30100438 30018291 30145888 30106441 30120443 30109934 30076181 30062991 30092380 30072408 30156031 30062001 30026178 30045810 30095079 30031705 30109309 30065874 30145040 30057767 30065744 30118857 30060854 30097742 30101946 30142718 30053329 30003092 30118506 30040138 30068673 30097426 30017226 30089891 30050989 30160313 30135200 30094634 30075161 30023115 30127999 30060313 30086110 30072513 30119248 30052683 30076719 30115058 30090073 30115699 30043907 30136816 30076875 30124011 30109213 30081670 30060151 30073074 30127072 30096181 30126643 30134279 30142248 30194028 30075983 30171592 30082269 30088551 30099661 30153176 30113696 30028849 30135791 30058485 30131682 30134167 30093123 30132232 30114831 30059508 30126354 30051503 30106856 30107594 30117185 30118562 30035916 30097425 30123349 30098485 30158711 30060091 30153738 30113482 30118052 30079617 30111096 30119655 30065849 30111669 30165696 30103603 30130571 30048314 30135560 30063813 30094008 30141585 30088808 30082630 30138567 30132731 30131543 30130265 30163260 30121059 30109272 30103786 30059312 30179600 30108719 30119020 30180410 30119503 30163005 30127778 30092186 30152236 30108944 30145186 30115718 30181984 30081099 30131910 30162609 30125941 30159211 30158070 30101722 30152942 30111830 30136926 30158268 30147446 30039384 30131154 30104664 30172624 30146982 30165252 30154340 30159860 30109405 30165710 30153493 30154890 30088686 30214421 30121176 30206409 30118887 30140068 30134251 30128963 30133981 30170588 30148497 30169628 30193801 30146883 30096335 30180005 30118899 30100364 30176193 30170361 30111412 30148995 30174511 30175263 30152521 30103464 30172750 30247306 30206005 30115535 30177007 30152191 30160744 30085744 30139790 30203648 30141181 30144374 30126594 30132763 30212624 30118351 30116096 30243352 30185894 30109509 30186459 30167664 30186404 30184904 30186968 30116996 30166269 30112354 30227874 30213233 30149194 30191013 30134688 30136781 30170304 30182989 30198222 30180348 30154279 30136628 30185913 30183604 30112196 30217538 30150954 30169041 30209485 30178581 30167869 30157929 30193888 30115841 30201125 30209122 30139096 30146420 30190398 30137209 30199751 30135661 30142010 30143615 30239316 30164711 30159615 30195466 30190210 30176539 30199117 30205778 30153360 30220807 30195959 30150861 30199035 30182523 30143597 30197312 30185561 30203811 30109783 30201763 30159232 30140368 30234463 30161835 30231182 30171182 30174605 30179444 30266915 30195990 30253496 30207861 30214513 30222194 30233141 30159699 30152482 30203685 30231678 30207362 30133891 30160624 30218407 30238751 30179103 30204235 30242990 30209844 30234271 30244939 30148946 30267875 30190004 30202715 30151157 30205254 30176385 30168732 30156071 30176136 30217850 30176221 30149390 30142167 30194553 30160621 30231478 30187005 30211815 30209504 30202593 30216389 30287519 30286632 30247974 30160899 30198313 30151265 30177746 30173729 30191365 30218123 30261712 30289315 30149731 30126658 30240734 30236365 30208733 30272281 30241982 30237557 30250859 30207730 30236507 30238274 30241647 30234852 30255310 30185981 30262759 30257840 30276851 30217417 30265975 30270413 30237546 30192860 30251594 30231060 30217460 30203969 30240355 30207707 30197507 30257959 30217064 30227098 30228876 30294497 30260229 30258348 30224366 30211089 30172608 30251408 30287856 30243513 30203433 30277259 30188743 30193997 30243346 30157172 30222833 30210255 30173058 30226356 30179386 30265776 30170323 30251058 30192590 30218998 30199372 30241064 30200652 30222525 30226447 30262860 30234160 30227432 30296389 30206906 30241051 30273966 30224877 30255825 30207429 30214699 30206181 30287816 30246495 30186325 30251352 30248076 30263746 30211108 30250622 30261603 30250232 30264709 30271308 30221275 30219131 30283879 30229616 30274764 30237937 30302949 30289417 30265491 30351337 30241895 30320019 30246628 30238812 30258833 30238358 30309590 30277258 30194477 30248469 30279339 30201185 30267660 30173940 30310363 30204875 30216675 30250159 30212053 30259278 30301018 30282291 30279010 30253859 30196116 30244731 30236018 30257563 30219820 30283637 30267032 30342794 30232276 30256816 30237037 30317689 30275267 30246219 30320727 30269722 30253079 30299896 30271867 30335475 30256589 30247229 30252717 30350120 30218664 30323903 30172906 30293583 30268368 30299203 30331461 30288221 30268571 30345598 30289942 30287752 30268836 30274212 30261305 30314002 30289271 30332541 30201025 30292114 30260954 30248811 30314878 30309177 30291432 30271328 30337354 30190501 30233347 30286670 30334127 30265047 30260456 30289267 30295012 30269130 30284054 30373562 30293568 30297213 30414765 30279739 30234735 30259758 30242194 30309790 30231794 30314204 30227524 30275359 30338982 30318998 30332788 30272043 30281860 30272996 30290598 30280211 30327113 30253797 30316586 30332967 30350685 30276036 30283283 30309366 30286112 30332835 30340894 30303594 30262396 30308587 30290904 30341420 30366817 30306397 30376487 30283180 30239913 30286167 30320971 30352759 30344937 30326988 30313546 30317279 30335974 30261878 30378444 30381116 30326945 30366138 30264436 30312163 30299091 30270778 30347246 30361470 30351994 30289195 30361111 30307856 30319168 30330058 30342586 30348628 30312386 30352459 30288960 30393639 30302066 30332482 30355207 30339760 30290463 30314619 30293973 30334025 30323509 30351156 30319259 30332563 30350995 30306041 30305751 30356071 30325846 30339216 30338920 30305022 30388771 30282810 30339917 30357392 30384646 30387312 30366959 30339508 30360595 30360316 30301064 30339855 30365634 30331980 30247747 30335120 30245929 30328905 30299536 30302972 30349281 30378962 30313238 30392508 30324826 30336649 30359849 30324138 30297250 30323088 30318169 30368833 30383516 30393258 30360055 30313073 30263944 30334060 30362343 30344386 30266244 30327967 30373858 30373051 30396068 30360309 30353937 30392261 30414923 30339572 30336328 30407704 30412536 30322931 30331962 30320397 30361149 30346793 30322458 30388233 30366557 30329165 30321027 30346189 30338309 30401081 30340533 30399775 30383022 30402022 30403643 30420465 30400242 30334820 30367362 30393932 30352452 30416000 30316462 30312823 30378341 30348779 30337929 30375474 30371472 30370618 30394086 30292700 30355806 30399480 30381169 30391325 30328529 30377119 30388639 30351645 30338887 30358589 30308391 30380530 30380281 30380065 30435987 30346438 30364198 30435903 30369891 30337831 30402654 30332081 30350621 30358266 30332794 30409610 30363267 30370261 30345504 30380034 30339430 30426051 30435754 30367259 30348677 30388883 30389895 30397527 30432306 30381114 30368108 30372179 30394668 30403271 30422819 30402560 30382315 30394765 30384030 30378175 30458413 30399025 30361586 30459218 30367916 30424234 30413638 30344494 30407912 30365963 30380966 30415519 30416648 30411453 30423635 30415056 30434077 30382077 30380632 30390462 30442446 30352616 30361878 30345048 30392175 30401741 30351428 30415272 30328245 30390608 30350429 30388143 30385071 30354261 30460227 30456136 30415824 30433226 30424021 30392539 30430773 30412323 30434279 30404409 30459794 30459861 30440306 30402315 30383014 30441109 30372252 30416619 30426882 30443372 30418525 30382326 30393495 30365731 30378049 30390066 30414859 30396888 30447872 30413384 30434629 30417819 30425098 30474363 30380585 30470787 30428446 30476211 30436138 30376573 30419432 30422945 30433203 30422039 30465893 30406124 30440457 30340101 30434844 30431291 30425630 30391299 30425346 30377897 30395550 30491887 30409927 30475077 30456033 30462884 30397421 30415071 30448156 30403131 30408669 30485094 30456383 30449761 30388703 30390993 30452505 30481700 30438061 30384763 30453277 30401331 30377999 30429767 30530675 30405622 30403719 30419115 30418115 30492249 30444410 30393525 30436977 30462570 30430080 30431280 30424291 30421631 30387128 30510388 30417156 30505363 30441839 30418274 30427953 30448127 30368584 30419413 30400757 30336949 30441598 30476984 30469992 30441171 30512655 30494718 30436187 30497528 30492500 30358923 30450498 30447390 30426902 30377631 30433190 30486058 30377648 30490789 30421665 30447165 30461111 30433882 30404192 30462994 30479340 30537921 30457023 30443469 30477047 30423606 30414047 30397181 30452694 30511273 30484708 30534779 30470628 30468077 30490646 30491725 30494542 30437429 30438185 30459060 30472339 30543249 30460828 30511392 30461202 30476122 30516211 30482633 30440281 30473344 30482588 30446865 30491728 30435546 30450864 30478599 30425525 30452472 30478519 30460286 30487652 30444936 30418698 30493439 30450886 30424779 30464555 30468118 30501988 30479740 30472545 30425115 30489677 30509397 30506579 30468701 30529228 30497668 30491178 30558543 30461664 30429484 30482354 30472809 30444907 30510258 30547844 30491844 30487621 30474794 30531393 30439499 30475461 30521777 30550527 30513875 30532019 30500018 30461983 30461705 30504963 30500795 30495898 30456004 30542061 30503380 30509302 30535489 30539045 30492308 30472564 30490651 30556354 30504284 30464018 30509574 30497483 30421273 30503030 30450965 30507029 30538669 30487360 30507031 30534561 30535799 30501563 30481861 30521655 30485382 30523029 30495501 30591935 30547687 30412300 30532288 30533897 30519605 30510980 30482567 30522515 30531393 30591556 30441181 30493737 30510918 30557870 30524131 30455196 30427477 30526140 30560339 30524102 30538410 30453399 30579420 30476022 30558549 30557787 30508243 30573466 30505321 30511329 30580915 30625255 30555994 30487456 30489934 30550793 30592406 30521209 30615236 30532652 30489781 30526877 30535452 30530453 30593016 30629249 30491762 30558918 30572089 30622410 30531849 30526852 30578605 30558693 30565456 30487129 30624994 30517656 30551427 30531277 30548514 30494896 30525054 30612319 30522351 30601102 30476260 30593120 30515256 30480974 30586556 30569523 30566689 30581931 30493150 30537715 30544407 30478982 30569596 30523737 30535186 30550758 30538802 30492775 30598943 30479853 30575832 30538964 30520378 30607493 30516780 30573376 30486257 30544012 30592978 30540781 30575042 30558827 30543872 30557321 30582338 30542634 30586587 30540867 30520919 30505841 30559041 30490735 30592504 30640602 30610535 30551781 30574436 30547210 30590333 30504374 30552802 30570915 30613479 30565942 30583279 30575822 30552810 30600910 30649664 30593944 30567831 30534158 30616785 30651900 30566608 30562719 30517659 30564390 30592465 30629958 30579115 30564851 30566623 30481791 30583608 30610764 30601892 30559272 30579487 30560541 30570940 30539458 30595358 30658139 30608595 30606926 30597704 30550909 30646361 30564366 30622986 30563872 30583395 30610329 30572727 30580963 30536564 30588193 30585738 30551863 30526686 30573388 30556260 30562802 30572682 30591167 30583577 30563361 30547881 30542307 30521697 30632831 30612704 30583369 30555468 30575259 30622648 30600239 30633377 30537196 30610982 30567353 30590765 30639725 30598109 30601825 30651280 30572653 30595053 30590752 30630575 30541688 30670320 30597469 30589394 30616673 30615569 30608306 30597531 30595243 30563780 30620519 30698091 30677065 30591452 30597694 30621899 30590351 30574118 30645504 30545984 30656688 30610927 30573067 30626044 30578907 30570171 30602407 30591474 30556890 30625372 30630481 30631097 30585708 30605513 30553340 30627962 30609324 30617911 30603635 30614714 30688706 30658683 30563648 30622946 30587276 30661207 30593597 30641057 30619183 30576285 30671462 30594642 30682411 30583018 30585322 30582844 30580578 30578463 30660869 30658094 30668281 30622875 30583087 30600244 30618784 30632983 30685237 30642568 30571386 30596527 30571772 30684771 30592712 30629580 30652472 30660585 30568390 30686468 30622247 30596827 30613301 30676278 30606985 30576291 30621463 30621640 30598168 30658437 30673538 30668892 30647438 30643979 30584763 30673359 30690955 30600724 30567302 30679608 30603775 30625791 30647739 30591819 30663504 30633514 30599252 30620653 30601951 30609239 30594003 30603721 30663036 30629806 30620389 30647646 30629797 30548486 30654097 30683209 30604590 30642449 30686779 30660495 30648214 30644531 30673783 30711614 30678497 30674969 30675083 30657915 30739730 30696684 30681538 30624422 30681344 30663964 30647757 30643784 30645114 30607872 30658289 30577721 30678799 30643140 30647211 30639742 30657857 30674814 30726514 30649491 30654025 30699693 30691229 30637287 30656727 30671428 30648047 30661189 30703091 30593659 30587903 30639755 30699911 30719070 30659683 30632484 30668494 30596374 30619704 30708557 30648337 30721565 30645529 30738988 30696826 30683285 30681725 30659256 30662684 30671907 30666452 30662262 30773988 30741269 30659965 30658465 30660521 30701839 30747990 30611226 30646018 30740389 30577540 30651704 30727010 30717586 30664091 30730903 30661764 30644414 30659220 30667454 30707761 30671025 30664801 30691831 30636148 30619033 30669952 30654244 30623196 30628776 30702971 30686361 30684628 30687961 30698861 30687119 30715494 30705307 30673995 30669846 30663851 30741810 30656217 30725383 30754544 30733484 30605482 30671101 30680928 30630809 30669109 30763764 30666746 30670191 30677358 30704240 30731280 30669203 30665568 30662091 30714072 30632540 30720990 30719623 30680941 30721127 30769885 30698039 30732704 30697020 30726877 30707764 30673845 30706446 30654479 30669081 30709697 30669311 30715177 30664385 30727622 30730418 30673221 30733733 30690159 30671083 30735551 30768758 30713371 30781991 30714489 30748822 30666463 30742555 30723840 30687748 30726458 30787448 30661428 30777274 30678439 30790760 30684397 30712458 30716978 30697626 30656393 30710863 30689300 30689993 30727129 30691472 30771236 30700697 30720150 30800254 30768571 30705296 30645637 30749377 30742871 30725888 30722300 30718715 30702344 30742824 30662304 30702599 30756514 30752873 30708777 30706170 30700758 30745152 30692494 30732380 30731298 30815427 30734925 30710813 30730338 30744904 30700479 30710680 30740675 30773676 30799548 30731742 30721382 30724549 30723965 30742356 30729472 30700233 30773040 30745975 30731532 30728244 30712801 30764426 30740232 30789569 30654756 30699458 30765450 30714024 30705889 30740403 30737983 30764371 30698739 30700088 30715017 30788096 30812164 30751736 30790752 30757883 30729596 30782250 30708090 30683013 30770302 30778268 30725920 30758360 30705799 30703465 30686356 30806028 30781863 30756043 30755706 30747455 30730034 30689466 30760997 30771605 30762372 30724931 30789562 30787773 30806404 30769307 30769882 30765468 30709771 30783757 30737208 30714015 30775917 30727586 30768324 30721287 30721435 30783068 30809851 30739151 30767282 30728888 30766948 30809630 30739923 30749063 30715559 30741197 30761988 30759309 30800559 30702885 30793778 30727406 30729600 30741920 30740639 30690796 30782535 30746014 30796065 30732057 30796963 30758393 30756354 30778001 30792784 30793390 30725891 30762089 30786615 30733278 30849042 30773713 30766747 30773084 30793236 30804527 30771081 30802448 30799243 30797924 30794789 30788824 30814192 30801768 30776596 30802137 30816239 30800196 30778860 30833489 30836545 30786409 30812887 30800339 30787844 30797571 30784967 30763317 30821356 30760297 30791727 30829709 30723102 30789496 30801828 30788220 30819572 30812141 30729210 30819433 30825783 30733537 30741885 30763648 30849105 30828924 30843182 30777576 30826522 30735026 30859248 30732178 30776771 30737998 30805312 30762615 30746174 30826097 30856775 30791118 30738322 30835615 30767283 30776133 30846775 30806363 30825398 30824850 30837990 30817060 30844602 30777869 30797322 30807103 30822283 30808773 30816731 30817437 30861669 30806949 30770739 30828351 30767381 30819548 30802728 30863062 30802769 30800981 30794164 30820495 30801358 30861140 30806981 30916999 30811468 30782232 30904928 30797241 30878552 30771242 30831441 30796599 30846456 30798210 30795313 30838138 30831919 30861469 30761367 30805538 30784402 30788987 30848659 30768873 30832741 30837064 30850055 30800482 30810229 30830589 30838678 30806612 30837591 30860442 30840153 30903651 30838068 30796475 30732541 30815200 30835270 30840873 30860179 30909305 30838854 30839137 30823248 30838303 30859314 30812981 30838111 30849309 30819083 30811193 30864102 30863847 30841859 30785071 30804595 30777221 30846915 30890666 30890995 30784860 30868100 30866183 30832558 30930538 30862634 30761323 30876014 30796528 30818672 30774657 30863376 30940199 30846628 30839363 30840994 30830962 30903561 30810864 30869308 30833513 30808919 30886807 30846426 30809773 30893975 30803007 30837257 30875372 30863868 30852716 30835202 30833496 30831333 30874837 30864169 30876059 30946267 30920257 30843176 30896789 30839133 30853915 30888243 30814501 30757230 30861980 30857342 30921939 30868962 30887923 30868936 30888302 30839006 30806757 30854589 30903900 30878327 30879593 30884865 30879629 30876961 30845464 30898527 30890044 30828942 30916699 30874173 30867616 30913438 30925905 30866909 30909716 30820045 30880519 30918615 30904083 30876339 30847073 30895178 30894560 30897375 30837177 30883941 30898836 30849864 30891702 30860772 30858051 30885623 30906133 30894768 30926552 30897344 30880385 30829316 30885628 30864646 30877181 30845403 30976310 30837480 30907800 30869728 30918562 30915719 30835483 30870983 30925656 30879639 30910585 30851742 30791793 30874486 30886328 30891829 30864360 30908177 30887845 30925675 30907156 30889015 30874344 30929949 30864284 30859109 30885703 30900549 30901558 30884122 30893999 30881007 30822049 30932151 30939659 30914263 30957977 30805585 30889508 30879760 30835188 30910896 30910821 30917698 30933404 30867253 30895615 30902146 30957750 30883395 30908217 30872148 30908296 30911515 30916761 30919721 30911528 30939144 30886144 30878964 30873064 30868673 30951371 30911521 30887367 30893821 30879119 30885876 30935052 30887445 30964865 30895971 30925234 30951832 30914667 30934680 30942029 30970511 30912147 30908916 30863721 30888378 30901941 30867280 30928747 30901069 30937389 30943983 30939571 30883337 30955567 30899822 30888214 30917064 30906008 30951823 30895856 30938251 30888052 30900819 30924248 30930538 30952345 30878236 30936163 30974923 31007275 30913639 30922868 30939838 30893561 30929503 30939084 30953068 30954348 30894397 30938915 30879037 30902564 30888496 30960745 30939233 30917293 30952561 30946586 30911126 30928756 30936199 30946004 30929553 30974757 30958198 30917547 30897944 30934740 30906701 30953807 30993825 30933757 30975234 31010418 30945608 30940709 30904867 30927390 30938520 30893558 30932632 30970713 30967242 30946802 30933797 30962927 31017673 30934531 31002763 30958722 30985304 30979712 30938001 30990804 30988632 30927800 30987733 30910501 30961971 30953344 30928929 30965659 30932527 30990676 30973478 30997808 30933534 30935284 30993601 30926815 30984477 30945625 30948142 31007388 30925542 30912439 30979392 30960715 30971668 30912614 30955708 31035479 31028870 30999997 30916155 30919134 30993416 30938835 30987961 30912764 30980116 31072264 30958481 30985552 30929047 30988337 31011318 31001520 30963980 31032939 30957630 30990788 30991061 30972641 30939195 30945052 30936905 31048265 30922765 31014325 30994861 31046782 30952040 30985365 31021473 30987467 30933714 31017215 30981384 30943950 31015572 31032551 31044104 31025085 30942569 31021816 30965340 30962958 31010665 30979366 31020070 31016954 31000766 31028641 30941798 31012264 30999312 31021713 31004026 31032811 31016662 30908555 31063176 31007806 30966137 30948569 30999762 30943130 31016567 31011272 30960129 30990661 31011871 30993862 31000972 30996124 31029527 31039565 30968916 31017766 31004551 31054567 31011410 30931366 30986534 31023626 30977407 30971122 31015727 30940999 31016840 31055765 30962004 31054819 30998461 31016314 31086801 30968484 31006553 31010094 31014890 31018850 31043313 31034288 31004149 30975945 30972798 30992239 31058295 30995577 31044541 30969268 31022909 30932656 31065540 30923421 31057746 31055536 31043722 30996540 31087970 31039504 31099330 31056548 30993708 31013547 31022058 31019965 31074370 30998090 31013667 30986396 31045027 31012470 30976244 31005867 31064897 30988334 31048446 31048124 31076537 31029034 31007486 31087502 30996569 31007363 30998444 31057632 30980132 31010853 31063085 31000294 31078485 31005299 31000222 30984131 31022532 31111249 31000664 31091121 31040387 31021456 30964641 31075855 31095084 31030075 31037482 31097488 31026145 31039923 31031113 31077215 31094586 31046725 31154652 31030353 31042176 31104932 30999104 31022511 30921716 31014017 31070410 31054248 31068384 31088492 31029153 31015561 31058777 31024533 31039341 31033713 31050566 31096047 30962999 31083379 31089510 31057010 31039819 31039748 31065380 31075534 31001614 30959524 30953713 30996115 31048375 31065043 31100390 31060566 31047118 31049020 31013836 31071959 30953648 30998327 30998446 31068406 31080605 31040333 31112765 30999989 31044215 31076659 31045513 31055299 31071493 31057507 31022131 30994440 31068236 31021571 31066788 31012414 31070679 31068849 31069054 31135317 31059354 31068665 31106602 31099611 31141468 31054986 31101416 31014578 31066167 31054412 31093927 31051549 31078516 31090439 31018158 31137965 31106677 31023903 31046707 31111737 31060610 31053771 31102758 31129487 31092462 31070674 31038690 31086209 31037034 31130507 31103488 31076039 31070694 31065330 31103292 31097375 31137488 31113450 31073491 31080604 31045736 31013297 31124375 31027299 31041651 31079959 31065665 31043101 31107630 31049331 31056311 31030493 31141939 31035810 31103048 31128983 31126621 31134603 31124770 31119659 31126219 31166842 31059736 31034826 31092476 31071114 31109444 31042007 31157364 31130388 31057097 31115742 31136668 31104413 31068695 31094993 31091433 31160783 31121806 31158006 31109052 31148265 31129736 31113675 31080485 31098025 31032844 31145997 31060061 31106866 31107988 31062415 31110411 31130927 31162528 31160937 31111004 31080580 31081623 31127607 31125343 31087768 31124698 31100114 31101504 31143250 31077479 31101619 31105628 31105516 31090818 31196731 31140153 31113160 31194477 31064351 31066165 31086976 31146186 31089684 31086630 31094470 31071819 31097092 31139755 31115982 31084356 31123434 31200780 31118402 31104874 31120986 31071707 31096044 31092701 31143816 31114787 31100371 31074070 31087023 31125787 31168810 31169090 31150267 31079224 31180712 31144863 31120533 31142744 31084892 31157214 31131962 31155812 31151261 31099681 31112425 31102658 31178012 31143410 31129845 31082092 31169397 31122860 31120370 31148608 31128357 31090878 31057163 31103067 31090867 31156816 31134839 31189145 31123833 31126877 31174358 31127795 31142592 31183825 31125601 31149370 31113261 31140315 31114229 31154619 31114588 31163309 31156289 31089780 31099749 31095504 31049130 31143386 31163841 31127718 31182968 31145718 31150330 31146126 31109744 31149704 31149137 31125398 31138350 31202849 31134470 31090677 31151502 31146183 31173786 31204522 31128360 31160926 31194431 31174640 31104308 31183826 31128986 31170049 31195091 31171946 31085265 31134502 31192124 31175830 31143173 31158730 31194792 31111492 31124020 31193190 31155008 31177862 31194648 31121586 31181904 31205352 31180402 31175358 31159685 31161577 31181887 31139558 31108258 31153601 31184464 31154460 31101303 31192379 31151104 31177464 31122292 31151984 31229557 31196949 31212403 31141586 31149232 31225766 31142360 31180178 31153566 31213121 31178116 31219733 31189595 31235229 31209915 31174800 31198674 31082110 31190191 31160234 31195325 31255717 31178016 31229985 31154899 31235258 31220115 31175134 31180381 31171641 31194701 31142588 31176120 31153142 31144385 31157833 31177373 31158958 31167303 31233998 31201062 31112378 31110346 31149287 31261178 31141363 31172511 31246924 31213618 31177599 31205813 31181295 31226899 31165192 31169502 31112450 31178501 31190567 31201170 31157101 31179113 31268492 31214903 31204564 31193922 31167024 31190470 31164245 31169387 31207498 31172797 31232431 31171625 31245652 31251969 31185421 31233642 31215594 31234482 31180727 31285129 31248996 31194153 31210446 31283405 31233987 31158318 31133907 31182441 31220589 31207440 31224976 31229060 31233467 31290896 31232281 31200145 31289599 31211934 31225716 31267703 31244212 31207184 31185156 31270187 31207335 31210137 31263627 31220943 31256106 31217230 31219827 31223920 31206050 31263423 31234713 31200156 31186111 31265731 31231498 31260881 31210819 31242834 31203087 31176300 31220107 31253778 31237435 31267425 31241614 31180903 31145497 31274690 31234568 31276458 31226303 31230392 31232646 31240581 31229890 31213496 31215176 31213397 31193240 31266444 31210977 31288816 31243240 31222649 31241299 31249708 31275477 31246043 31202990 31341212 31244472 31273105 31271640 31297116 31239210 31226267 31221099 31225460 31257589 31220256 31255400 31199143 31246966 31258394 31225338 31257089 31275761 31162690 31301973 31237581 31294607 31277905 31254324 31248770 31239326 31257915 31260860 31242011 31314472 31219206 31289714 31220406 31213075 31225352 31257293 31274238 31262004 31268092 31324855 31241032 31246122 31248536 31227419 31283968 31274065 31263730 31250272 31295013 31288731 31283854 31288364 31268379 31290055 31302966 31274139 31252377 31301271 31290292 31298405 31216786 31241099 31244075 31269354 31306294 31264321 31240566 31313136 31317950 31253139 31305423 31265002 31262312 31248187 31267047 31274970 31320979 31233014 31289302 31239258 31342016 31293520 31302141 31303892 31313043 31238336 31323557 31153519 31244249 31309375 31285401 31326890 31279519 31331219 31301674 31269202 31332940 31257779 31259036 31298185 31249282 31267963 31231176 31253038 31309334 31265196 31310611 31262866 31292351 31222664 31263243 31275431 31319619 31278641 31296747 31288120 31277012 31266282 31327850 31300530 31337986 31310444 31241292 31272908 31265664 31337487 31365335 31254189 31324457 31310989 31277543 31199753 31331214 31278734 31254916 31328546 31346266 31329378 31285429 31279520 31340440 31382375 31351932 31330546 31315801 31322531 31280397 31354264 31295350 31294766 31390799 31366534 31321636 31302588 31325138 31326865 31338303 31284045 31300860 31324769 31347704 31355989 31313805 31333594 31362900 31319087 31346828 31298195 31280377 31281275 31311028 31291836 31330540 31312101 31366168 31376010 31339058 31311309 31253565 31291409 31261790 31334271 31319344 31374701 31364174 31358230 31401578 31347722 31415833 31323053 31297961 31315200 31279478 31311355 31304659 31407961 31349252 31290648 31336023 31396908 31337973 31284070 31309420 31300306 31383699 31370226 31316557 31362084 31337700 31347088 31341864 31360604 31361874 31369306 31354020 31334508 31316141 31319913 31333298 31351434 31317468 31283923 31277788 31392343 31312674 31345632 31375606 31363787 31408231 31306384 31337921 31322352 31306865 31370598 31365190 31306848 31325310 31407082 31388083 31343858 31318869 31346525 31281581 31413635 31385769 31359207 31404967 31346031 31347045 31309695 31415083 31359643 31387118 31354896 31379514 31363591 31382750 31338807 31294239 31365130 31429205 31332296 31336091 31388890 31347553 31297043 31387676 31298630 31365922 31343057 31383020 31331892 31300457 31399127 31366018 31433161 31425290 31358672 31361493 31328934 31272667 31354972 31436821 31407342 31322295 31384480 31395665 31378226 31362084 31340118 31373871 31349245 31390782 31372769 31343157 31404964 31350125 31407410 31378944 31406114 31375080 31410709 31365704 31345534 31391640 31394678 31396406 31442026 31365540 31343587 31348458 31350870 31317310 31404076 31350322 31429249 31313651 31404311 31331508 31385876 31420071 31415045 31438940 31333632 31421398 31393823 31336545 31314875 31406333 31405056 31421281 31373236 31400135 31373297 31427164 31362137 31396433 31396022 31299620 31408032 31415976 31311696 31364245 31390488 31419595 31381881 31389059 31383796 31360000 31400297 31385627 31356597 31373615 31355026 31384423 31397232 31341120 31438757 31351978 31387254 31371319 31361449 31376930 31383538 31364924 31369257 31421385 31391519 31447530 31395673 31436223 31367491 31430550 31409626 31345391 31474683 31421407 31381008 31451170 31439855 31405781 31448405 31393805 31363704 31426651 31452400 31404292 31483301 31463924 31392831 31435631 31483801 31475284 31412715 31448511 31415364 31448970 31450695 31395630 31389077 31391015 31416690 31438584 31419046 31440085 31394678 31463163 31419334 31443813 31442012 31440677 31459410 31375935 31408406 31444217 31428005 31426597 31383045 31459081 31446917 31415535 31392803 31342964 31390531 31445818 31399008 31428627 31428387 31450364 31372482 31422227 31434614 31454600 31447851 31438882 31404041 31429719 31410623 31409823 31430726 31394212 31478104 31457606 31426616 31425166 31441648 31411324 31485211 31422981 31408469 31356645 31491887 31464632 31476867 31439381 31418264 31423544 31414590 31487086 31455348 31424495 31489542 31454972 31515560 31393266 31459087 31460413 31458293 31454155 31405808 31391330 31461324 31459673 31461732 31489441 31455251 31456543 31441902 31433466 31489347 31445662 31478188 31434880 31525094 31458134 31458389 31433053 31443912 31480520 31431216 31452232 31454234 31450438 31435162 31546716 31472692 31491690 31456231 31472802 31475848 31396731 31512066 31480486 31417042 31421720 31451459 31441500 31418358 31473418 31390747 31405796 31488479 31453808 31440182 31500368 31390029 31459474 31534334 31537373 31513825 31493034 31422923 31471197 31472111 31419512 31425810 31449349 31508592 31444926 31455829 31439073 31449982 31477605 31500394 31477677 31452264 31485378 31479808 31449407 31475197 31446205 31486920 31477228 31404840 31470592 31515128 31552491 31480531 31467817 31476820 31476220 31447546 31478254 31470779 31520311 31422373 31542779 31443570 31505644 31450220 31456463 31466077 31486935 31530126 31492102 31500288 31499519 31520293 31467203 31540737 31503564 31503229 31446197 31501841 31531327 31446388 31534548 31552606 31521555 31439610 31521734 31458375 31514622 31499291 31512008 31500482 31480110 31464043 31530990 31568331 31529468 31605925 31515765 31475847 31530499 31527177 31462627 31528049 31463497 31533203 31542538 31507113 31594255 31440062 31443564 31472410 31499394 31513655 31496833 31530979 31480182 31572295 31470374 31498242 31516957 31509503 31509033 31516040 31505920 31410341 31574785 31493085 31506114 31535295 31541997 31566852 31483329 31521695 31486550 31535707 31509237 31559957 31530041 31487308 31532060 31582974 31454623 31561729 31497090 31542876 31535138 31580657 31486578 31535292 31643507 31562431 31506364 31527413 31558047 31561824 31430627 31477403 31562138 31463638 31563917 31539634 31513611 31549757 31553692 31534441 31565144 31515121 31537917 31569775 31460731 31557355 31550807 31591613 31589305 31575997 31532694 31510428 31623287 31533031 31539070 31540584 31540556 31540229 31512771 31508179 31562761 31571305 31603045 31526319 31504240 31499814 31485772 31563864 31609301 31569290 31587935 31535359 31549787 31555386 31560586 31602834 31567623 31524203 31500062 31539148 31540014 31620663 31568976 31532160 31577855 31572870 31543470 31504275 31583784 31580618 31539397 31556594 31509304 31575299 31533249 31555715 31511532 31597530 31587676 31567759 31589950 31540274 31599529 31557707 31541309 31497364 31607043 31527113 31548312 31601721 31522374 31593307 31587475 31598632 31561941 31625106 31542884 31539555 31572717 31532520 31509936 31614838 31585071 31648436 31574624 31574427 31544484 31536247 31571604 31509495 31570749 31631006 31562576 31527269 31588904 31529071 31689663 31575650 31554127 31572302 31526076 31546437 31572456 31613809 31580516 31584304 31546848 31560777 31559563 31577524 31623323 31570331 31613436 31568661 31555713 31587228 31545649 31570544 31613763 31478356 31621146 31576330 31649722 31568471 31544160 31527952 31625756 31579008 31550839 31520471 31628819 31594099 31580738 31605119 31642140 31601028 31553721 31549558 31609737 31584804 31569375 31533492 31681770 31573759 31539238 31605188 31597916 31569306 31543786 31605179 31599010 31622182 31556131 31607799 31622797 31573737 31523688 31578728 31622187 31602480 31578597 31655669 31548070 31609938 31603758 31553822 31608888 31693653 31576558 31534335 31564261 31609242 31513323 31582517 31603729 31624610 31627771 31626812 31584918 31580199 31607831 31597481 31573514 31618397 31587830 31593935 31608688 31670836 31575342 31594758 31654953 31620174 31586591 31606524 31621398 31602533 31592958 31556719 31648600 31560369 31555184 31586215 31644773 31529686 31560705 31593371 31671398 31599744 31599080 31601694 31547858 31619289 31644732 31667245 31585073 31664264 31636960 31647473 31593827 31616062 31641656 31585847 31576462 31604055 31661426 31632360 31639765 31577349 31609198 31620086 31638912 31655034 31665401 31623632 31585200 31614571 31665265 31623317 31642358 31609172 31629900 31662901 31640866 31596425 31647368 31606951 31638022 31649168 31597080 31589274 31617864 31667075 31651281 31630814 31644223 31640200 31649583 31641100 31605124 31650814 31550683 31620950 31650647 31603244 31676621 31653099 31634551 31605474 31590436 31625120 31657027 31668401 31652923 31691027 31679349 31646918 31663727 31694563 31701934 31662266 31737597 31659504 31574589 31713508 31590024 31697748 31687641 31660949 31625138 31600197 31570613 31665211 31677736 31709617 31590502 31687236 31687584 31638483 31627709 31727144 31658775 31679798 31658127 31686501 31673779 31626781 31657294 31677510 31683406 31611004 31666406 31640964 31638773 31795170 31613712 31706732 31655683 31670216 31659739 31680348 31609607 31622221 31681196 31660435 31618579 31670648 31594659 31702399 31628408 31645865 31759221 31650510 31645696 31656139 31584652 31598226 31651578 31667267 31676387 31686959 31698941 31666668 31653587 31678197 31694369 31644330 31691920 31632318 31733884 31704707 31614946 31651916 31695066 31644693 31633376 31597868 31717797 31710047 31667349 31726119 31732622 31714539 31656148 31737943 31647730 31725811 31659668 31682102 31704590 31671844 31673711 31729406 31668884 31718362 31682370 31646645 31708068 31661917 31678824 31733495 31762546 31703154 31732325 31677027 31641476 31738329 31702408 31717316 31686110 31700222 31726297 31738897 31709905 31696771 31643445 31682337 31652912 31696070 31639222 31730757 31687491 31706042 31691920 31759162 31705231 31725609 31729903 31656469 31729514 31659231 31646909 31728670 31669208 31648284 31721707 31690039 31694905 31743315 31691205 31716814 31715207 31681307 31660151 31667946 31760097 31695935 31693021 31773827 31743246 31723273 31678936 31716193 31736911 31758325 31652531 31765759 31680269 31758101 31695482 31707423 31692205 31739630 31767362 31736138 31797405 31682818 31723596 31674834 31715700 31707013 31644542 31645868 31728692 31725098 31723077 31766475 31732708 31666808 31738734 31683048 31699946 31731452 31697307 31804333 31733773 31655959 31689196 31782451 31744699 31772165 31672898 31765017 31682685 31749005 31696033 31751546 31788991 31737672 31700284 31670340 31721289 31713085 31763131 31750340 31673044 31711123 31766801 31718919 31759662 31788302 31663642 31735621 31740717 31672496 31646365 31732169 31738342 31750103 31744961 31709969 31752738 31682948 31740099 31714929 31736696 31749963 31749141 31752007 31760719 31685956 31735178 31741157 31776562 31772471 31676689 31768112 31670296 31763454 31692812 31768527 31731997 31754590 31726117 31745992 31731862 31790217 31783556 31743004 31758653 31804227 31753075 31782054 31674072 31779485 31758447 31734799 31750009 31712338 31786578 31816139 31691135 31717236 31752875 31796081 31791093 31796422 31797839 31760355 31749036 31747132 31702601 31719494 31804410 31749024 31743281 31740744 31773371 31729069 31823495 31763312 31693082 31761237 31740483 31760322 31760252 31733223 31793486 31781513 31777896 31768244 31728793 31697984 31736914 31813870 31753838 31702608 31785138 31755202 31761123 31798067 31763193 31745359 31837443 31768885 31830088 31839919 31757669 31730997 31800164 31784321 31801091 31794411 31765346 31871237 31786577 31768511 31716417 31798374 31775065 31823714 31741018 31788011 31828717 31716794 31827410 31848782 31801128 31781972 31756934 31808098 31782232 31776292 31786157 31779936 31758706 31883358 31804843 31833417 31733507 31776678 31811921 31779160 31850787 31783732 31781079 31774536 31820987 31834728 31768687 31800210 31799381 31798161 31776086 31830105 31747665 31738797 31808493 31817320 31872902 31819110 31840069 31835817 31825510 31809002 31783386 31821302 31812147 31819038 31881139 31799129 31854911 31829747 31779149 31759962 31767679 31795979 31826680 31789596 31804915 31759517 31852859 31865304 31791709 31778400 31840793 31825030 31811579 31826132 31810338 31784777 31799436 31799472 31755198 31838416 31851107 31890103 31773441 31874003 31799164 31825672 31863068 31815844 31834260 31840001 31823503 31846735 31862269 31748867 31835945 31829975 31823468 31855626 31826293 31791685 31793121 31818157 31781188 31784525 31904086 31852742 31875165 31763504 31828326 31907112 31879243 31822973 31843814 31870272 31884890 31784789 31882039 31848389 31795686 31863762 31762301 31791251 31822055 31846815 31826542 31824335 31793918 31821402 31794135 31834466 31843871 31803728 31847559 31841270 31871954 31867758 31842806 31888887 31824633 31877299 31928809 31842245 31848079 31870520 31834460 31829520 31790890 31780867 31870566 31808024 31836041 31851066 31825859 31795791 31826687 31856990 31888467 31841015 31860137 31765801 31895798 31910907 31869369 31768578 31862621 31804701 31852022 31852717 31837891 31857173 31867565 31828640 31789907 31932243 31914599 31845635 31848938 31850631 31782545 31845660 31872688 31880070 31843172 31854841 31853852 31863333 31848913 31785898 31861861 31897798 31894820 31790071 31844723 31907953 31872927 31882555 31882367 31855760 31845832 31825166 31850282 31796845 31898069 31796778 31842855 31847218 31892082 31908941 31798913 31871209 31867403 31829205 31893899 31774023 31777700 31878563 31887911 31885495 31862159 31877078 31855440 31846275 31960670 31799698 31921027 31876451 31852299 31924396 31902933 31897907 31841602 31896448 31830128 31902287 31839028 31922220 31893526 31862208 31896615 31918576 31920934 31888875 31885590 31879352 31819288 31948810 31859704 31811449 31884428 31838202 31914563 31903892 31864628 31891763 31938561 31850367 31871351 31891094 31945660 31862542 31930307 31799957 31904055 31919064 31904891 31904608 31885157 31865430 31858770 31896526 31928171 31905277 31881448 31916563 31953669 31865793 31916673 31893313 31897750 31939084 31906861 31888034 31958304 31877077 31936902 31877299 31878577 31949640 31866713 31870689 31853047 31925691 31857506 31939982 31905524 31936720 31886234 31950310 31896545 31916250 31889156 31930029 31911589 31880522 31937118 31872229 31872567 31952087 31908485 32000147 31947484 31893528 31916258 31896176 31937654 31887223 31904061 31937548 31918457 31914739 31921991 31934077 31941488 31937688 31913272 31892560 31891234 31933483 31929560 31821183 31907081 31868701 31896832 31867726 31942561 31900760 31930176 31890247 31943449 31949189 32013793 31945111 31991278 31903934 31910597 31997979 31959764 31962421 31891065 31882369 31908900 31942759 31848490 31922667 31952715 31949162 31970140 31923262 31935077 31906854 31976366 31901285 31917990 31930170 31914227 31939858 31954691 31963788 31950124 31950780 31936692 31916900 31941803 31851281 31874937 31949509 31943480 31966764 31967618 31980906 31912897 31912754 31919158 31983311 31894211 31952020 31919632 32036608 31910902 31957458 31975909 31970526 31938347 32017106 31934717 31933761 31953004 31988861 31962678 31958257 31907018 32010815 31894937 31980994 31944074 31896528 31918958 31931441 31943512 31920446 31885777 31984273 31875481 31874810 31941184 31962689 31920205 31945802 31988156 31971301 31985435 31951207 31977018 31970735 31999743 32006738 31984057 31927388 31874361 31941507 31992837 32011870 31929710 32001402 31955357 31984224 31993666 31935858 31982980 31893624 31963915 31932995 31911888 31942644 31976944 32003660 31898939 31969845 32007259 32001811 31958336 32004609 31959570 32050218 31928743 31976435 31980474 31921755 31968568 31962887 31995982 31961450 31889264 32016368 31977793 31978968 31969251 31968759 31937387 31931550 31939927 32046216 31972959 31990435 31968166 31968171 31999173 31986903 31986083 31950660 31993953 32021367 31971939 31913759 32005123 31951831 31941307 32003792 32010046 31977978 31958159 31932827 31978624 32033456 31986307 31978635 32010292 32037501 31949563 31985146 32009815 32009165 32046017 31998580 31992995 31985764 32005816 32036832 32010026 32015955 31986152 31918517 31925515 31937075 31960405 31958985 32026991 32021317 32014698 32066464 32027913 31996073 31891533 31962053 31992350 32022004 32041539 32006240 32029049 32028140 32043531 32011235 32023397 31947637 31977962 32007404 32075869 32069341 31979570 32034964 31999246 31996981 31986529 31973859 32003207 32006932 32033483 31978961 32037349 32025964 31934795 31975888 32024183 31908027 32014964 32062898 31960330 32007985 32050945 31985363 32057482 32099098 32026973 32020431 32041697 32045070 31946862 32004461 32019459 32041087 32045350 32032166 32005413 31931806 32030259 32047475 31998923 32050946 32036321 31981431 32017273 32037848 32011384 32092938 32075478 31974717 32012492 32052336 32021803 32112147 32011612 32040334 32032762 32019968 31994614 32051839 32072927 32010796 32014083 32051885 32039082 32053983 32044710 32025227 32040610 31995926 32022319 32059972 31974949 31983997 32009553 32065240 32035761 32064737 31999178 32058890 32054138 31989298 32015528 32034674 32017621 32014893 32004699 32038390 32037805 32105501 32039593 32025717 32072952 32046676 32026775 31999785 32017224 32016289 32116857 32044664 32065815 32020477 32055502 32062444 31991915 31994660 32018967 31966559 32098208 31991114 32053339 32051848 32069073 32012404 32041956 32007425 32049956 32020229 32091482 31994573 32001695 32046592 32070496 32005558 32094284 31978485 32026359 32067735 32030004 32095005 32062304 32128338 32106762 32075159 32068825 32065788 31996031 32116725 32049220 32049102 32036723 32015673 32050115 32028197 32019095 32091277 32077226 32090096 32070748 32034608 32029859 32120628 32126491 32010692 32040883 32075907 32052372 32144230 32061368 32026084 32061028 32012524 32029305 32073551 32117222 32075037 32031488 32055142 31980384 32005250 32126666 32089619 32072640 32055128 32015575 32057394 32008292 32066884 32133868 32118887 32136044 32126700 32074496 32058717 32004795 32069777 32084384 32150455 32091187 32069859 32094195 32076157 32103229 32119739 32010687 32082782 32088735 32078037 32088913 32141713 32106589 32171940 32109403 32051566 32143546 32038292 32126890 32083138 32052253 32117897 32094918 32076868 32104783 32103958 32065409 32098368 32135016 32159603 32105969 32102170 32110642 32085600 32124066 32070497 32108295 32131467 32117248 32055004 32090595 32138095 32057625 32130111 32078624 32132841 32122829 32069539 32032726 32110896 32149145 32107790 32094183 32102761 32157117 32114590 32087349 32086105 32099135 32054773 32127784 32123282 32119908 32140431 32137391 32144772 32110711 32025055 32093075 32204520 32143716 32135823 32106438 32179011 32150825 32053940 32121617 32086855 32088425 32111606 32103142 32124183 32082008 32094687 32121019 32095332 32184311 32019924 32090318 32156753 32092595 32170637 32076799 32161998 32097317 32139023 32117119 32170779 32171903 32107525 32123349 32113368 32099229 32101076 32135170 32115813 32162641 32178575 32125289 32126421 32095290 32167684 32103071 32124011 32178646 32094566 32156798 32139674 32116358 32099180 32136606 32116228 32090292 32085340 32120557 32139715 32147568 32123303 32118770 32169806 32145989 32156250 32123756 32126484 32131104 32113326 32126536 32165473 32110899 32207000 32135287 32105997 32204500 32140713 32132220 32089194 32140405 32157003 32039271 32094494 32149455 32179007 32095702 32165699 32251587 32197560 32173479 32179127 32170476 32166792 32130643 32165099 32115392 32170167 32138464 32149606 32147335 32197855 32103669 32223013 32104600 32129755 32153997 32144369 32150335 32187000 32203976 32234022 32193272 32246690 32068948 32134601 32171646 32080712 32171742 32114703 32132922 32207532 32164843 32280656 32189210 32170388 32105050 32138230 32190484 32187054 32141349 32169284 32176075 32184155 32144228 32186167 32192339 32193319 32168447 32219975 32163302 32151017 32212628 32191341 32163439 32177629 32204480 32229691 32169407 32131113 32168847 32187542 32126337 32222091 32072007 32187946 32183812 32197465 32106568 32192073 32210000 32171276 32186912 32205209 32162420 32167289 32193245 32248280 32206538 32153101 32201632 32170637 32145550 32116043 32179947 32172941 32111461 32201527 32173232 32243801 32146222 32260043 32143592 32193112 32188306 32255419 32223728 32197213 32155093 32235468 32172194 32164591 32169514 32210510 32174226 32225767 32226428 32200555 32276805 32174878 32176371 32250930 32176532 32229486 32183714 32161264 32210468 32161951 32202965 32258047 32175983 32186393 32218826 32168202 32228445 32232147 32189527 32171048 32256634 32220483 32193229 32235621 32244163 32145298 32212807 32190455 32199759 32245746 32139712 32185305 32286993 32161799 32250543 32160066 32169365 32233290 32252089 32223517 32233989 32254837 32263960 32238390 32210677 32247236 32258819 32260251 32282970 32220821 32273855 32246126 32159288 32221166 32200434 32255005 32219683 32260129 32185099 32162873 32231445 32251222 32217788 32233246 32280612 32176473 32237353 32225837 32194591 32159762 32244134 32237258 32190355 32252551 32259002 32208598 32278239 32239375 32192683 32246520 32198241 32294970 32323281 32253334 32248816 32252432 32247173 32216039 32233511 32176367 32263214 32206373 32270293 32179302 32292163 32238600 32254374 32235560 32237455 32223048 32268001 32187183 32236078 32220502 32207564 32241372 32212074 32264634 32252870 32230757 32303204 32223749 32278300 32290092 32213066 32270182 32229590 32237663 32277223 32222158 32238746 32219143 32277445 32230413 32238376 32239371 32275570 32247503 32235362 32242643 32228462 32263858 32282255 32240334 32260136 32301140 32248913 32311366 32277801 32298659 32215781 32250692 32208060 32279737 32305078 32335147 32276441 32239487 32193109 32219276 32238425 32237339 32256120 32272016 32275201 32279476 32246567 32232529 32281776 32265459 32192926 32294349 32246382 32307870 32251598 32308360 32226325 32303163 32255945 32218495 32309582 32317965 32284885 32259127 32244680 32298005 32315282 32250542 32336992 32248361 32297357 32302405 32337066 32238240 32352475 32231271 32345786 32310831 32290176 32254550 32348405 32265206 32261798 32230816 32235156 32264232 32273276 32313068 32274750 32263253 32318622 32324524 32261590 32304080 32294589 32313613 32304601 32316738 32303062 32270781 32185827 32236683 32244944 32252619 32230761 32303306 32273909 32255248 32314662 32298853 32223004 32286675 32283669 32308685 32286093 32259928 32326024 32275697 32263524 32255787 32291051 32236857 32233375 32315499 32386555 32327206 32264718 32337386 32320851 32329694 32287203 32246769 32289703 32309431 32316102 32345296 32275726 32370501 32275535 32316926 32316636 32265624 32310267 32338676 32316077 32312654 32278883 32315562 32417462 32285260 32255487 32278412 32317625 32263659 32295485 32275293 32377298 32306961 32337854 32306963 32305936 32365421 32302107 32337739 32255655 32326743 32270685 32253125 32366413 32273610 32379400 32305564 32337929 32340395 32382381 32355303 32327369 32276218 32289314 32305594 32406719 32274129 32373390 32344081 32371010 32293260 32344010 32301345 32304352 32283831 32313027 32302034 32356152 32335815 32291287 32315013 32389925 32328527 32327771 32289313 32321015 32322093 32292596 32330078 32267481 32341053 32375070 32326779 32443268 32327895 32333482 32323648 32340303 32319600 32379319 32349890 32362465 32391770 32324370 32385045 32350189 32326050 32349900 32326975 32272679 32313200 32354550 32283529 32250162 32371124 32327591 32343777 32378076 32354698 32355031 32320050 32349600 32299762 32301369 32373317 32344439 32394711 32387600 32303201 32370439 32301174 32356496 32318640 32285402 32322021 32381730 32370741 32336757 32293938 32396958 32381922 32368187 32337534 32371049 32427884 32391202 32390122 32309521 32321267 32420111 32377852 32358920 32344483 32335683 32446008 32312771 32385388 32380028 32268002 32395485 32319114 32432869 32362559 32421839 32408152 32333631 32352833 32387827 32418891 32385952 32318876 32396415 32313988 32448368 32398354 32379927 32395771 32361559 32430708 32400216 32360444 32312035 32397063 32369129 32395175 32406581 32369028 32425010 32407954 32431480 32376262 32413327 32394991 32352127 32466719 32354816 32394130 32441018 32403069 32423435 32366691 32382729 32417942 32370803 32406288 32385546 32409097 32411458 32438399 32359922 32371851 32300561 32423103 32367689 32448666 32360325 32451606 32395411 32410434 32414702 32408741 32430914 32419492 32364041 32385530 32421263 32412104 32393726 32395425 32367031 32334581 32461464 32341899 32390609 32376487 32395226 32374575 32446600 32399358 32423122 32389031 32325336 32408262 32322538 32331424 32403844 32390137 32368973 32413097 32442557 32383185 32442548 32431886 32419219 32378666 32382851 32384901 32361397 32415153 32415880 32321552 32422014 32457003 32391291 32395471 32454928 32393628 32426045 32401193 32409860 32460682 32417786 32442722 32407097 32324238 32432569 32419383 32439760 32448679 32398050 32440463 32393123 32385943 32421947 32389408 32412611 32377461 32447514 32450642 32394359 32406432 32407822 32355478 32400353 32379580 32401790 32434354 32440967 32449267 32448226 32471474 32438339 32439702 32404343 32456350 32427119 32509220 32435358 32409769 32410110 32478940 32431543 32462820 32401503 32413482 32437858 32436207 32369749 32419509 32441128 32479169 32391999 32467687 32442292 32404125 32462458 32427707 32455150 32441704 32489703 32451679 32368326 32319443 32503514 32469625 32354276 32458795 32438658 32426926 32409557 32442664 32462954 32438746 32436302 32451207 32529664 32394773 32413943 32439282 32422718 32462235 32438842 32454688 32431149 32507281 32438903 32488589 32444926 32407995 32479729 32468703 32462093 32496011 32494199 32490869 32430569 32383617 32433228 32418056 32481234 32439365 32468922 32432684 32399247 32376494 32478977 32435144 32467497 32351698 32494449 32505286 32417997 32476786 32439351 32425635 32522364 32460474 32460053 32434884 32471925 32442192 32420978 32430724 32462793 32408796 32415993 32502707 32461543 32459849 32523990 32465447 32398095 32445340 32491655 32487041 32492214 32436262 32500110 32453242 32454270 32494310 32417572 32440095 32486821 32416996 32522168 32494431 32463068 32470106 32394784 32493770 32485838 32490473 32472444 32428584 32465283 32442563 32465727 32471097 32447327 32552739 32449549 32416981 32513636 32512158 32487331 32412527 32424625 32506653 32472962 32461365 32527245 32432634 32440618 32431507 32510111 32517349 32504659 32439946 32485709 32457404 32494082 32427166 32453962 32459982 32454790 32449130 32468580 32536130 32498205 32478606 32508183 32473609 32466264 32475589 32524221 32493287 32491768 32451308 32507551 32474668 32445011 32449048 32521490 32488557 32539599 32487821 32546139 32540982 32499101 32505936 32482160 32524839 32451919 32509367 32473280 32468272 32532354 32489040 32518884 32507788 32511263 32442503 32434060 32567673 32514290 32522185 32489708 32479594 32544204 32428335 32574506 32495657 32479863 32438710 32492277 32476406 32519817 32478763 32544518 32508021 32548961 32510755 32515082 32528204 32462607 32482742 32483354 32473245 32500018 32514924 32445810 32487751 32536027 32495903 32565155 32557446 32514976 32504263 32520534 32531438 32515431 32470695 32510474 32477700 32520588 32519917 32494245 32538934 32502803 32524041 32593906 32490073 32593885 32556004 32565598 32506335 32527423 32529848 32569473 32508609 32583126 32502457 32628474 32519860 32475451 32526516 32520323 32518023 32554827 32511212 32447449 32577568 32485933 32523986 32545223 32515183 32595636 32510523 32574467 32558976 32524780 32520424 32554730 32503687 32525741 32559872 32554916 32487179 32553297 32517277 32550303 32498987 32552282 32543240 32500058 32543272 32518190 32507467 32506364 32553972 32513705 32538279 32500816 32562496 32543220 32594040 32598784 32537572 32569368 32505653 32608582 32536120 32614035 32610380 32551319 32575983 32492250 32540705 32620464 32552780 32530642 32503547 32595056 32448209 32567357 32645928 32559937 32514503 32535268 32554436 32503927 32513967 32529293 32459701 32594035 32565989 32618461 32532856 32609520 32591138 32545680 32529412 32565368 32480107 32539021 32563284 32576236 32575796 32582124 32588276 32643130 32576740 32638744 32584400 32594277 32539188 32573285 32564173 32545766 32591345 32554425 32560536 32525334 32604608 32579276 32572056 32555846 32608479 32600233 32464203 32522223 32637340 32541089 32575991 32612480 32595500 32540809 32602894 32512898 32490884 32648333 32586402 32627400 32633948 32607961 32591046 32580197 32583934 32657221 32597605 32567542 32568773 32577346 32543801 32585118 32583063 32603558 32624064 32590458 32537520 32534175 32560135 32534091 32620586 32576796 32599433 32569624 32608329 32630826 32594874 32637657 32537162 32555432 32578074 32671781 32601266 32545141 32614905 32548173 32645710 32591729 32668514 32574637 32513049 32613863 32569138 32579503 32585812 32579863 32646343 32638737 32563546 32628358 32688062 32572575 32661057 32570000 32605344 32606940 32558108 32597834 32621958 32633771 32608254 32649700 32654197 32604355 32597240 32608556 32601200 32560502 32592492 32625333 32675536 32614125 32623451 32653216 32677558 32591414 32602862 32661543 32617242 32608364 32590387 32622538 32692083 32608934 32593837 32596812 32638721 32565775 32568819 32601184 32605151 32680220 32618122 32645427 32606515 32592364 32598954 32610403 32603350 32650646 32601965 32607610 32588282 32639736 32587612 32641966 32698112 32643173 32629041 32600572 32627449 32610467 32552980 32653884 32589969 32670016 32639066 32637286 32672725 32645006 32651229 32620636 32694984 32608042 32668126 32653631 32620739 32632879 32635241 32644891 32689969 32609514 32582941 32645369 32584859 32635550 32683767 32762870 32680322 32599987 32678280 32596545 32643187 32629253 32634122 32627605 32617653 32614653 32699857 32608972 32687769 32691524 32647443 32690704 32690355 32644657 32601727 32685706 32604135 32623143 32655747 32616898 32620992 32655101 32601932 32656698 32698196 32688056 32692584 32613868 32688892 32640059 32618614 32723849 32673631 32633471 32690606 32684656 32651253 32633663 32637589 32640830 32711250 32628527 32573280 32650548 32687834 32628581 32681448 32599458 32636116 32632703 32652590 32667408 32690155 32666001 32668786 32611140 32700853 32708569 32642562 32674066 32727806 32690080 32626475 32566988 32757538 32676314 32629923 32657367 32624814 32580880 32693824 32685748 32648566 32689230 32722077 32671973 32664890 32655845 32662069 32678582 32655967 32686935 32665732 32622599 32677704 32641714 32656555 32739319 32726949 32680698 32651129 32736258 32604089 32670744 32647605 32694130 32646410 32643699 32680952 32700444 32683750 32650877 32685447 32781915 32662922 32694928 32691818 32700853 32754134 32700130 32635286 32682841 32651104 32714976 32657920 32701431 32713038 32657399 32706675 32688582 32688271 32763888 32729828 32679037 32701353 32688398 32690068 32686729 32681130 32696921 32639917 32734980 32736464 32705125 32752571 32738223 32661456 32742299 32695844 32719504 32734985 32728678 32717261 32710177 32679548 32793880 32611030 32707472 32617565 32729741 32665694 32721075 32683507 32730128 32675765 32698412 32688710 32742048 32758317 32710897 32710329 32716615 32700715 32735111 32733879 32774168 32771508 32721057 32746828 32735275 32662517 32769515 32742087 32750461 32689855 32715467 32737003 32671857 32739301 32767440 32737544 32662613 32703463 32736366 32757915 32712638 32752995 32746488 32699770 32750738 32729145 32708757 32728241 32665584 32702293 32800930 32747039 32783344 32814118 32707653 32664680 32769269 32789383 32723212 32788642 32755172 32719660 32695940 32753740 32677261 32709681 32708093 32714733 32747797 32694725 32715672 32639922 32789409 32723323 32713832 32758430 32746672 32790097 32765776 32745058 32784655 32728778 32787904 32760071 32727127 32793707 32776763 32700374 32778414 32736940 32838205 32751339 32739824 32734918 32747216 32742999 32761381 32767499 32708084 32814856 32728760 32737550 32769087 32761153 32793890 32749764 32717864 32790464 32711040 32813296 32762622 32718530 32888404 32783590 32777005 32707059 32683443 32759353 32697890 32725330 32717976 32796914 32798412 32784055 32739211 32729546 32758336 32691738 32769304 32707531 32759435 32731879 32741615 32850482 32718016 32800154 32761337 32801316 32796039 32823233 32752823 32742923 32829276 32795096 32710112 32806743 32695774 32804655 32748132 32829576 32750634 32747406 32779857 32789504 32785330 32745719 32807590 32862976 32707122 32776088 32739913 32725123 32741409 32841300 32804446 32739361 32721184 32775479 32766356 32792448 32844893 32762918 32854752 32806819 32742290 32814194 32802750 32784355 32731938 32801841 32719643 32752462 32817740 32756137 32854265 32751787 32807760 32769021 32732878 32758173 32760073 32815959 32772996 32787353 32680313 32734997 32686713 32776783 32790194 32795511 32780972 32784616 32788496 32782422 32758741 32734757 32840613 32695025 32728832 32784459 32814976 32845328 32796410 32791908 32838995 32793426 32786142 32739764 32767099 32817015 32758753 32796481 32748444 32857046 32810047 32840405 32793908 32741496 32865373 32829140 32831365 32775005 32811519 32836976 32863513 32821957 32823198 32847650 32797220 32845733 32776095 32795329 32770760 32788714 32825595 32849223 32833628 32871740 32804515 32822420 32842409 32808040 32865040 32773394 32801947 32794283 32850614 32773571 32725397 32823766 32839102 32789319 32751918 32838735 32855134 32807386 32889385 32802412 32797970 32864935 32830472 32846268 32840287 32800642 32841700 32885153 32766099 32837480 32814656 32700571 32805885 32842813 32845006 32813810 32832534 32853192 32828388 32808622 32809857 32793248 32856637 32888511 32763849 32792597 32837851 32889822 32896978 32822321 32806046 32834880 32867848 32805693 32827315 32838846 32837112 32848777 32898801 32821602 32855014 32753655 32852574 32863583 32844590 32893423 32824649 32864747 32794798 32791257 32820173 32834104 32866986 32875814 32868943 32798387 32857406 32785055 32817602 32871622 32790145 32861555 32796838 32889077 32830415 32844596 32851852 32935061 32899227 32776174 32873334 32899149 32838631 32862703 32862992 32910640 32884615 32780195 32802315 32837926 32852640 32810363 32830132 32884432 32847955 32876854 32922402 32828567 32870987 32898679 32909606 32859787 32876284 32884494 32886351 32902923 32776821 32872006 32845799 32897075 32857438 32847320 32844639 32792403 32791661 32829764 32866693 32910920 32842912 32828425 32833720 32841083 32902915 32869028 32883456 32881020 32904619 32862797 32841620 32802711 32849561 32825495 32920526 32886113 32912313 32859682 32844367 32834174 32858371 32830024 32823941 32880316 32905162 32899796 32830042 32922627 32835500 32927256 32924959 32852658 32909594 32882055 32842035 32834270 32849091 32834088 32893680 32861263 32898154 32817720 32900205 32886853 32861745 32853124 32891258 32955626 32878632 32915671 32910007 32915387 32918633 32897663 32958956 32849675 32918020 32807536 32882607 32917879 32917162 32915263 32863909 32903442 32924341 32880196 32908948 32835649 32863748 32891618 32915636 32896092 32919002 32902790 32898717 32969022 32853664 32895214 32905397 32940123 32891853 32917685 32894301 32900435 32892906 32898675 32864297 32848553 32936882 32927471 32918198 32926098 32896863 32847927 32894832 32937793 32868666 32901039 32892723 32926338 32873459 32917398 32849507 32844882 32918529 32856345 32923029 32889932 32872691 32893293 32883174 32853093 32881605 32937185 32882533 32929547 32923309 32951299 32895694 32922099 32925639 32972229 32933200 33014208 32914679 32981864 32928055 32947775 32923462 32976650 32867552 32865581 32919604 32927423 32949825 32915172 32971289 32886329 32902740 32933938 32989151 32898504 32975992 32944127 32881592 32958554 32886758 32921760 32940603 32942771 32939036 32946659 32923565 32933630 32979428 32948544 32933826 32928354 32934202 32890137 32953247 32917809 32990675 32928319 33024930 32906255 32876188 32934938 32976228 33023417 32898628 32920643 33018754 32931008 32902777 32888816 32931005 32962018 32980219 32907817 32964606 33003507 32908412 32966600 32941026 32932762 32985424 32913613 32931025 32955644 32898544 32917153 32948275 32975297 32981363 32954403 33000691 32922740 32957166 32891897 33008027 32960162 32932757 32970850 32967583 33027638 32960201 32950348 32937572 32913845 32915532 32996489 32912175 32990129 32980239 32984546 32946795 32932073 32920146 32912321 32992897 32965936 32996872 33038000 32883696 32947462 32929967 32956546 32952909 32942368 32973992 33018256 32929744 33004958 33016714 32971497 32985681 32965914 32944394 32965489 32925611 33010505 32988478 33034438 32963542 32968263 32966336 32950376 32891772 33022028 32966911 32969801 32980887 33015041 32962691 33020077 32951467 32940949 33033836 33030205 32965107 32976475 32958816 32977933 33070008 32991831 32987083 32999189 32970543 33065918 32959675 33046199 32975376 33006754 33005652 33017023 33014065 33016824 33020735 33015333 32925394 32952231 32973666 32935453 32948569 33056864 32974206 33032390 32985469 32983910 33059684 33043428 32988659 32991117 32988026 32938473 33049268 32928866 33007113 33008881 32988179 33020873 33052141 32972755 33015589 32953848 33010424 33026649 33013589 33028895 32978765 33047888 33000891 32997919 32959327 33035849 32957215 32999095 32941611 32992012 33012287 33017025 33011640 33048352 33006553 32964386 32998753 32993157 32984504 33036749 33007623 32978324 33065173 33020811 33073066 33043481 33007514 33073343 33074330 32956393 32870865 32991986 33065062 33066609 33053920 33040770 32992793 33050596 32980573 33044879 33031469 33037977 33011682 33024568 33023495 33062456 32993993 33029549 33008570 33074996 32995204 33074166 33057626 33026281 32968096 33044244 33027840 32975785 33087577 33024426 33102596 33075898 33032602 33057349 33063500 33072790 33036667 33015904 33074252 33031529 33054739 33017029 33034806 33095203 33025370 32998160 33012459 33040306 33008361 33014612 33056269 33034403 33037157 33104004 33029658 33035875 32967911 32970682 32989530 33007739 33032506 33073010 32962287 33068263 33005274 33059115 33046890 33065496 33018604 33046781 33012620 33059829 33141194 32950678 33087870 33025848 33035791 32999598 33100222 32997256 33020498 33058650 32997759 33084592 33105514 33056376 33044149 33079776 33033231 33062977 33058888 33046781 33085789 33114155 33037851 33130665 33042078 33008793 33075907 33052416 33045776 33059771 33015187 33005666 33128995 33165983 33108536 33072801 33079573 33060205 33061061 33051336 33023736 33062524 33129948 33028807 33028462 33125459 33057693 33059183 33104342 33048847 33110728 33087596 33030435 33057192 33121829 33067022 33045647 33114752 33071289 33022864 33070725 33034255 33111009 33035861 33068184 33113842 33071568 33078048 33063365 33124212 33017394 33060565 33121159 33063018 33114862 33110583 33041153 33032053 32990963 33056842 33063478 33027995 33072597 33106700 33031567 33110707 33119931 33070636 33069871 33062238 33121489 33043483 33126684 33124786 33053714 33125426 33082196 33134975 33067220 33126537 33172221 33208886 33090639 33141272 33100790 33133870 33109392 33075077 33118818 33130078 33050237 33094442 33104100 33157836 33011484 33078028 33108911 33126634 33044926 33137213 33072255 33085506 33147962 33090574 33081221 33156797 33128523 33135754 33141910 33120511 33101939 33073193 33130029 33169382 33085662 33152689 33134445 33070128 33048279 33041692 33110868 33126109 33076836 33148953 33139474 33134508 33100496 33105854 33080617 33097262 33108338 33094390 33118723 33194254 33127887 33171118 33160165 33153747 33146565 33147861 33069416 33166824 33143330 33079672 33149114 33074373 33092899 33178273 33144112 33116916 33115011 33186363 33177663 33180221 33074366 33124714 33167045 33083590 33101587 33110024 33124107 33143922 33135165 33114194 33078917 33066513 33138478 33067584 33107842 33117871 33137528 33076128 33103775 33081655 33067301 33080940 33185390 33158031 33061009 33197966 33151751 33150066 33111823 33111994 33168399 33109858 33148159 33218340 33122192 33061559 33125911 33106229 33155061 33077131 33089983 33114177 33186880 33095993 33102623 33159566 33188638 33132913 33139983 33065329 33106704 33162894 33175000 33149823 33141993 33179609 33178811 33132047 33181795 33092574 33213314 33064169 33135603 33140138 33153877 33154154 33169746 33089065 33135565 33161935 33140560 33144826 33153759 33123846 33142247 33158659 33155202 33083006 33135511 33228222 33133522 33091904 33105845 33171264 33162549 33130187 33157818 33169922 33179859 33134721 33113308 33109608 33143606 33158484 33195255 33157543 33119905 33192185 33196385 33146558 33139700 33177109 33128159 33153400 33216377 33149972 33179477 33176708 33195634 33194601 33143913 33183342 33173618 33203628 33160525 33202917 33134864 33175654 33170419 33154016 33200039 33204607 33209443 33203047 33260622 33113708 33149892 33196756 33167962 33166358 33119389 33145486 33210306 33229002 33194995 33144516 33230625 33155639 33211301 33173720 33152612 33162007 33176580 33140065 33180258 33196991 33164943 33128853 33207465 33285732 33124870 33198980 33157259 33148972 33128046 33203988 33199808 33269044 33204186 33217771 33179550 33159000 33184954 33185614 33275882 33215992 33185136 33214731 33167133 33217455 33166103 33209585 33250562 33199408 33213369 33221827 33161152 33218126 33238726 33172280 33116040 33236966 33201871 33196885 33129228 33193492 33194209 33185303 33159136 33157368 33212913 33266032 33176114 33238157 33190912 33258099 33237851 33138474 33212711 33220679 33197662 33214560 33212435 33248702 33194943 33180791 33143565 33237219 33181953 33242193 33239456 33198112 33162640 33212217 33195014 33243822 33196690 33248799 33184494 33145377 33206012 33191820 33220023 33276158 33179490 33140308 33207673 33249528 33196924 33191669 33238670 33235633 33238206 33199709 33230750 33193463 33244941 33225339 33220497 33241208 33229611 33183404 33237878 33267482 33188558 33204883 33250226 33269822 33246378 33203364 33184855 33145853 33250131 33196420 33246216 33272991 33304761 33175735 33172664 33212946 33200013 33229839 33251004 33191394 33264990 33258057 33239530 33225333 33234691 33272349 33237664 33290307 33193810 33219272 33276755 33301966 33258230 33218650 33219331 33230143 33272484 33231720 33212676 33228202 33238193 33231129 33257947 33223836 33261333 33253339 33252526 33254848 33204931 33286742 33211421 33266153 33245708 33315065 33255553 33217551 33258899 33283207 33324949 33261652 33203572 33254871 33220256 33315164 33269002 33224264 33129162 33236172 33249490 33226634 33183222 33286278 33269828 33205416 33291508 33214478 33284062 33268182 33231928 33252157 33330461 33292152 33230165 33278983 33280217 33230204 33311145 33278794 33279449 33262076 33203653 33218668 33289458 33302063 33192143 33325502 33282301 33257622 33249667 33300366 33262957 33344406 33217731 33293754 33230909 33296874 33250824 33290398 33227072 33240652 33260546 33348123 33294685 33285856 33262651 33312751 33271066 33335371 33288029 33297263 33295310 33351516 33280198 33222721 33343884 33252140 33316993 33243355 33251856 33317857 33259433 33325143 33304601 33345414 33275847 33253014 33253788 33300773 33275819 33257815 33313621 33339645 33253956 33307433 33265578 33296231 33264188 33298589 33244788 33300452 33300282 33294015 33268581 33298657 33328883 33311480 33295205 33254809 33286988 33288391 33311461 33320088 33299290 33296757 33276851 33330311 33306807 33281132 33262047 33286223 33259922 33319971 33356892 33380463 33260852 33326978 33265309 33259217 33282466 33388191 33310650 33360050 33280235 33264192 33278482 33325915 33349750 33291460 33358916 33299888 33282039 33297953 33379946 33345612 33232923 33348621 33305685 33388434 33209860 33271444 33293165 33263802 33313329 33331060 33270266 33281785 33324031 33374588 33338687 33304586 33306982 33377738 33365055 33373923 33378240 33283530 33369313 33305602 33303711 33300355 33338289 33325252 33365360 33339187 33246618 33358292 33316336 33309003 33329206 33378430 33301771 33290927 33285332 33303546 33312640 33339335 33352356 33316632 33334246 33339770 33352421 33372353 33335343 33274730 33326267 33319977 33257896 33329879 33318248 33227357 33298865 33367581 33287394 33345630 33311278 33298138 33363585 33365809 33359105 33360502 33356341 33302406 33358995 33383183 33317671 33321278 33325233 33403013 33371314 33318912 33387667 33343871 33416125 33385265 33333474 33248121 33352341 33296274 33318141 33358299 33389478 33351115 33332249 33327093 33389160 33256790 33379003 33309152 33331182 33362649 33331242 33369201 33362028 33399474 33396204 33362854 33391390 33362802 33364835 33324557 33375070 33264176 33375656 33307338 33338636 33377714 33287195 33323024 33372360 33335353 33333658 33361407 33298331 33374103 33312246 33400394 33447013 33380859 33354170 33438406 33382769 33299107 33353810 33356207 33417639 33370448 33356423 33342538 33353059 33374153 33451797 33333975 33422797 33380874 33384738 33380267 33356257 33327932 33354784 33433789 33384716 33440962 33365682 33396169 33383885 33254982 33408695 33334061 33415071 33347776 33354148 33383086 33386587 33360278 33323539 33426478 33353983 33346872 33453274 33385951 33438806 33462277 33359321 33432180 33388522 33371392 33418102 33355980 33376689 33335655 33407445 33366121 33354880 33382064 33409648 33387371 33339177 33344075 33414934 33348608 33377454 33356765 33448902 33373095 33466332 33448973 33344616 33449382 33400160 33420586 33406586 33387154 33400880 33412723 33415300 33452960 33355290 33419405 33385466 33397788 33441743 33407490 33351041 33350106 33385896 33455279 33380066 33404465 33405233 33470709 33418160 33365811 33394440 33426351 33420913 33435387 33349741 33420892 33468092 33436797 33412904 33431822 33406287 33390364 33421734 33444825 33371838 33427109 33360556 33444848 33399954 33423622 33400569 33406888 33454599 33434327 33376632 33441380 33379820 33430914 33482948 33392515 33417026 33453162 33478615 33435619 33440824 33392013 33432761 33450594 33482352 33443393 33393049 33384135 33433987 33426865 33398401 33403259 33441229 33407224 33395054 33353782 33373564 33426916 33462392 33403229 33409195 33453383 33436728 33404169 33436018 33430011 33417518 33436976 33376026 33421716 33491990 33438859 33374240 33414359 33409526 33480647 33486654 33388491 33447174 33438260 33440670 33453983 33438846 33438884 33460051 33380546 33467719 33473400 33489955 33519497 33408531 33411235 33372781 33470535 33394298 33523787 33423107 33427821 33452755 33454035 33514054 33414645 33374593 33396640 33467319 33453483 33371363 33439671 33394057 33417785 33484535 33447074 33463493 33497407 33429380 33442087 33472322 33412169 33423628 33367183 33463328 33377816 33446841 33469886 33461969 33424174 33407232 33479201 33486675 33369578 33420814 33405043 33442315 33494993 33446216 33508779 33489926 33456929 33445026 33468622 33488017 33510849 33488837 33408236 33443289 33471059 33437797 33416415 33450386 33480015 33483712 33469085 33387307 33533121 33444034 33410852 33472566 33528660 33461434 33466448 33475411 33489955 33521971 33496677 33536539 33470430 33462057 33451956 33502731 33507842 33510838 33486555 33488587 33434924 33490021 33459177 33422616 33438970 33418587 33418800 33468505 33454772 33469999 33475343 33504675 33493015 33468223 33517335 33497565 33528520 33468358 33502357 33556039 33493200 33514934 33484749 33480534 33499907 33441723 33450445 33518807 33481776 33479323 33525545 33391690 33522918 33484610 33482584 33518827 33509081 33506018 33548701 33467131 33409885 33457427 33493239 33478798 33471624 33465713 33531888 33562627 33481530 33450586 33445849 33513063 33474507 33498395 33431966 33525557 33487241 33454444 33558354 33475532 33525305 33551386 33557922 33434862 33470885 33533748 33541251 33518939 33564142 33552740 33515946 33547842 33548439 33496603 33558415 33492080 33568743 33498166 33545130 33460784 33470171 33465015 33525402 33462356 33496910 33461013 33567594 33486861 33543030 33500623 33499014 33425957 33502829 33544137 33534714 33513223 33492024 33442719 33575904 33453583 33447203 33504491 33603902 33480641 33493592 33538935 33442704 33535977 33475193 33508726 33461681 33448196 33587231 33537123 33523901 33531417 33482159 33491461 33539704 33477121 33534647 33514992 33450847 33548348 33529707 33454013 33492031 33512849 33481574 33540702 33566142 33545044 33532492 33488133 33521894 33490444 33475720 33478594 33520711 33512673 33475383 33425352 33550728 33429914 33569257 33557489 33504039 33550305 33535092 33525081 33595024 33522875 33511257 33582854 33550018 33483820 33504303 33496676 33570680 33534585 33571156 33517455 33507899 33582444 33500403 33573037 33500603 33505488 33556852 33621672 33551607 33526108 33539630 33506749 33582941 33576580 33558153 33563299 33597199 33539017 33529891 33537276 33479626 33533947 33571622 33496441 33533017 33534840 33559798 33524546 33513741 33469450 33551732 33526406 33557846 33617120 33585868 33566461 33656302 33529381 33546808 33556450 33558035 33577762 33514768 33531992 33514252 33584203 33608698 33583518 33519155 33587276 33562634 33537847 33482999 33542374 33541771 33539568 33484309 33623016 33541300 33570975 33627703 33577670 33503707 33555208 33552783 33532882 33541408 33562723 33580062 33527621 33578147 33568137 33559901 33553710 33607348 33643347 33583034 33646135 33535139 33599427 33561376 33557197 33597580 33549812 33612128 33614016 33563670 33530098 33636539 33547296 33578847 33568482 33619882 33554205 33533189 33556624 33557247 33547607 33575575 33554805 33560352 33601689 33522874 33598814 33595548 33560319 33515707 33591567 33568548 33621204 33581428 33576640 33560276 33649223 33635656 33621625 33580002 33613238 33623515 33595312 33573371 33576039 33530125 33530920 33541956 33573740 33597873 33635587 33605405 33556105 33545800 33595749 33618422 33570143 33597634 33611796 33632151 33543192 33655423 33601380 33604087 33626254 33643236 33651300 33559416 33596033 33543544 33647078 33586228 33632795 33628726 33555307 33652492 33602638 33569330 33600646 33617028 33625286 33598143 33586843 33609009 33578942 33638248 33619788 33627644 33581820 33647415 33620901 33623867 33610525 33691133 33533941 33636706 33592883 33603721 33589572 33605890 33549433 33610544 33651491 33590382 33589844 33573694 33618636 33663974 33551647 33639089 33614473 33627308 33645300 33651414 33632013 33596016 33690128 33597878 33648853 33655007 33627185 33607218 33655223 33644016 33635181 33701980 33604480 33628632 33606221 33604506 33628517 33568521 33635756 33626004 33591981 33666049 33631212 33666758 33690365 33649755 33686900 33684308 33604427 33628592 33622850 33618428 33622991 33638179 33675384 33633094 33654269 33548738 33595517 33611336 33588643 33642887 33636200 33687985 33642435 33673468 33660755 33633025 33690994 33618330 33703337 33591450 33690540 33602712 33714076 33647255 33620863 33640816 33709240 33666631 33627734 33702954 33633501 33669319 33663806 33645301 33670847 33653817 33605469 33605851 33656253 33613490 33636699 33684955 33626438 33699263 33607970 33692378 33667570 33628664 33657166 33644812 33710030 33676528 33718031 33712835 33671618 33627253 33669762 33577930 33636522 33603987 33702616 33625091 33660725 33677861 33649991 33681715 33717240 33645195 33652217 33675978 33589382 33641844 33746421 33664699 33685680 33701972 33695794 33676861 33666456 33691938 33639495 33675130 33733957 33659257 33664955 33642869 33735684 33691155 33562501 33603963 33635680 33651073 33656852 33661437 33660116 33730108 33703793 33643771 33672838 33635028 33700577 33727677 33714270 33647807 33680008 33703970 33610726 33693524 33652298 33608918 33609445 33647942 33649535 33721202 33709836 33737432 33694588 33688506 33716216 33748968 33639503 33655785 33670018 33739563 33666397 33717978 33594340 33717378 33629151 33689475 33693397 33615384 33716011 33670951 33685583 33735289 33717807 33735583 33671401 33712536 33690900 33700120 33770293 33702840 33715164 33667389 33726399 33721198 33730147 33621746 33650981 33706232 33697362 33654911 33649733 33659741 33667249 33695830 33712706 33725774 33731097 33691954 33699641 33644705 33707705 33712128 33672708 33708640 33666276 33711333 33734331 33710537 33677109 33746357 33789189 33650613 33714111 33721654 33733956 33721546 33656647 33775532 33694455 33704204 33739433 33730112 33714334 33704072 33674035 33754986 33717199 33664233 33681740 33761497 33730726 33699662 33696171 33743616 33702817 33731245 33781629 33747974 33796135 33742475 33752735 33712636 33665319 33760520 33684287 33686516 33705942 33727928 33742211 33686890 33730731 33692467 33732221 33672209 33694806 33726281 33748769 33806078 33706282 33732371 33742099 33789330 33725079 33689982 33717838 33729590 33683157 33700768 33743656 33689806 33702284 33825477 33716113 33719595 33769210 33782747 33734846 33721420 33707839 33741459 33741542 33688905 33776699 33748843 33727393 33817617 33785640 33734019 33720759 33673619 33792539 33835314 33688699 33725862 33759067 33732341 33733920 33775181 33765317 33769580 33851252 33789526 33798771 33757670 33656757 33728146 33651786 33695268 33681233 33681701 33773271 33697761 33785852 33764388 33697300 33781394 33753260 33779375 33717533 33729942 33800073 33815878 33689100 33802647 33775492 33717957 33787964 33726673 33757959 33741481 33709538 33755745 33752950 33754222 33747975 33759095 33809135 33731787 33730243 33770588 33787539 33729949 33706129 33760561 33745087 33871398 33803905 33781301 33793589 33754473 33697162 33759845 33768897 33743857 33764374 33748324 33745419 33771381 33656566 33766583 33774046 33730508 33749741 33772886 33838029 33695154 33742186 33767443 33784202 33757833 33797377 33834154 33786108 33769932 33795874 33717738 33742963 33758766 33751694 33815307 33855739 33763200 33818610 33796909 33761508 33703704 33855183 33808298 33748649 33787727 33714652 33785323 33788500 33809394 33836072 33739430 33766867 33834816 33787594 33804729 33767750 33851758 33842699 33756394 33842917 33746343 33806913 33785224 33810635 33720343 33736896 33748621 33826304 33812811 33768877 33768698 33762821 33801200 33889417 33758980 33788685 33811316 33761311 33735922 33797392 33798453 33772979 33772779 33827775 33668646 33837399 33827959 33815268 33768006 33773958 33762169 33766045 33770695 33787366 33797905 33811784 33881397 33800974 33795109 33778546 33877930 33800861 33793859 33815517 33852516 33806893 33780934 33727787 33819112 33817412 33830490 33796140 33875935 33791503 33771911 33849927 33797937 33834204 33854607 33833016 33770748 33876962 33846733 33728437 33752362 33794640 33853710 33860917 33794073 33835254 33851086 33834308 33822549 33811435 33820737 33823591 33826788 33797821 33761250 33864485 33865836 33864243 33860994 33814734 33920500 33828033 33849921 33767797 33801614 33833782 33778575 33871912 33837540 33862047 33858217 33825940 33906719 33835831 33829168 33850051 33911036 33788324 33787096 33856373 33880090 33823012 33754751 33836644 33770547 33800093 33847229 33777158 33868292 33830866 33805370 33833390 33790395 33793597 33814980 33954037 33862843 33776223 33846640 33812782 33802032 33793148 33830932 33836535 33800778 33795326 33798685 33840121 33889454 33865529 33864254 33792587 33823471 33867803 33862095 33897132 33825789 33815299 33860339 33856746 33784387 33826575 33866613 33855538 33837441 33889630 33868142 33852678 33804001 33863662 33834673 33894373 33837384 33894390 33848255 33901341 33827932 33809150 33865535 33855075 33884697 33874749 33832291 33835783 33855415 33886449 33857411 33880575 33860964 33866501 33917305 33849742 33882549 33859811 33798797 33838069 33879508 33875778 33806103 33877060 33857610 33901059 33938004 33870989 33911401 33878032 33824246 33824660 33910632 33922430 33906291 33893853 33925532 33905582 33913128 33864330 33855568 33918290 33866458 33890699 33878899 33793450 33869158 33888323 33863767 33862176 33947132 33829715 33885567 33875350 33870356 33891816 33859093 33909994 33871810 33794643 33869845 33837683 33879177 33867504 33956131 33878590 33853962 33865119 33884579 33912297 33915690 33845613 33892265 33877866 33839815 33846710 33909083 33946054 33855838 33878833 33921642 33840108 33887194 33820854 33871371 33847556 33899572 33836218 33926944 33916046 33922558 33896913 33898824 33950872 33945558 33935863 33959627 33852426 33910556 33901500 33859265 33867346 33981245 33864411 33872356 33860087 33891818 33917031 33885331 33926375 33918236 33879572 33907891 33934289 33859392 33855774 33877301 33901591 33921498 33931442 33880315 33834811 33999264 33967681 33913980 33887970 33958333 33898477 33865249 33912542 33908039 33913881 33893557 33961455 33920747 33889496 33912546 33886807 33897060 33892826 33881499 33938244 33959740 33885639 33940033 33935017 33907269 33930505 33900756 33972327 33887250 33961288 33922282 33863989 33947170 33970374 33964175 33865728 33944259 33874016 33954075 33900229 33954983 33936023 33888681 33858640 33858854 33935384 33910617 33945595 34056652 33946222 33916549 33952843 33939230 34008088 33945070 33971208 33933949 33947950 33901858 33839967 33949183 33987824 33944107 33949587 33978301 33917100 33918052 33949531 33935024 33911805 33922846 33919314 33976021 33938681 33886477 33944207 34001708 33978291 33938044 33939959 33937726 33905227 33869159 33971777 33975284 34037700 33943995 33951233 33990461 33965512 33982511 33960441 33908506 33991932 33906763 33951740 33870228 34017284 33951145 33962843 33969882 33995770 33962857 33947191 34003504 33889805 33977694 33923946 33965753 33981776 33895743 34017338 33937533 34004787 34006661 33978789 33941101 33961074 33993356 33964828 33974308 34013255 33975580 33963798 33980916 33954642 33937016 34017422 33983434 34023210 33918847 33988226 33915144 33968651 33998495 33956799 33994276 33954321 33946470 33988070 33931198 34012527 34010096 33982971 33942271 33996655 33915225 33951712 33980138 33949435 33913968 33932412 34017423 33952061 33999963 33975145 33984310 34001628 34000329 34027130 33979405 34003614 33994837 33949690 33977700 34044848 34021353 33969616 33962272 33964371 33928981 34029261 33989857 33975017 34010190 33977447 34031975 34046283 33985284 34013151 34000598 33948695 33973657 33991810 34050039 33970947 34045607 33972988 33968497 33991382 33955849 33953076 33997884 34042322 34023779 34006815 33989957 33963159 33982795 34010233 34042507 34029409 34015132 33950630 34014693 34026127 33955672 34036225 33945212 34011076 33986747 33980470 33932983 34025382 33989562 34026006 34008608 33935656 33942385 34022083 33966433 33983082 33977879 33935789 34000146 34024639 33972904 34011744 33940497 34042441 34020913 33991668 34017486 34027769 33995290 33998159 34054007 34035441 34012252 33962944 34004626 34022421 33979831 34011294 34013877 34072850 34031843 33999002 34050890 33995594 33975385 34078533 34030145 33936300 34028374 34074926 33996265 33999295 34072573 34081887 33992773 34000091 33983897 34001140 34035507 34037578 34098916 34058724 34002592 34029886 34042281 33992066 34060316 34035541 34024765 33968939 34096971 34033752 34027599 34048908 34034618 34014806 34056071 34060364 33992099 34006360 34016688 34026683 34017464 34082805 34064351 34102238 34043523 33984146 34018687 34057808 33956941 34044739 33997643 33964457 34105492 34090052 33999230 34107245 34111795 34043217 33981373 34029332 33989009 33976025 34061393 34057216 34145909 34046692 34142459 34025359 34012921 34046442 34026455 34060123 34037123 34113301 34009885 34038821 34078259 34026450 33984470 34017095 34027424 34076719 34099277 34035842 34024665 34098188 34039375 34030341 34025153 34027473 34025179 34092428 34068564 34076932 34057804 34038303 34045145 34061331 34110155 34075312 34106322 34003451 34030407 34076759 34048961 34081095 34073168 34063478 34049380 34028109 34094081 33943121 34054131 34066507 34057936 34078155 34067615 34083066 34105130 34062196 34057433 34035651 34052115 33995685 34046993 34088143 34075713 34086597 34056033 34090218 34061596 34088540 34081916 34141662 34057683 34059446 34133080 34081486 34023203 34134458 34072831 34077136 34080471 34016892 34103925 34062938 34044257 34102066 34089213 34137286 34056132 34165621 34149142 34110082 34076253 34005948 34110329 34170112 34070991 34086618 34102644 34118816 34143650 34088367 34056339 34153926 34083221 34063818 34080664 34109998 34115703 33975606 34134413 34108169 34120733 34111022 34083787 34077658 34072445 34062237 34108188 34040799 34079137 34132477 34112604 34129868 34091185 34087018 34114450 34085452 34138322 34107666 34056251 34137048 34053345 34065087 34100641 34125037 34145872 34085645 34091645 34124084 34094599 34087792 34095184 34017365 34085343 34103634 34102602 34117651 34204925 34142784 34160289 34133351 34228601 34148111 34199559 34113236 34145342 34134816 34099204 34147340 34093254 34057074 34169917 34161463 34191897 34069008 34097995 34126768 34121918 34048507 34052097 34055516 34140419 34093061 34118933 34158119 34187967 34086428 34096258 34171038 34125585 34125126 34131820 34188122 34124868 34102787 34180200 34137404 34180136 34168931 34180252 34098847 34180210 34154114 34073917 34111671 34121762 34126991 34126020 34137691 34120646 34191071 34192659 34111730 34211123 34139440 34118918 34071507 34127276 34174571 34120360 34176144 34165172 34140081 34075803 34179956 34174104 34116873 34156333 34072157 34132447 34153567 34127667 34123505 34177707 34162065 34178356 34148495 34135771 34166288 34064045 34216346 34126217 34200266 34136271 34129826 34045463 34125690 34183310 34138863 34210434 34143984 34095104 34206380 34126418 34156390 34166414 34075064 34157540 34079375 34176114 34104228 34173196 34134267 34094099 34166537 34192558 34191318 34139149 34188749 34165925 34109944 34196634 34128111 34198307 34157552 34193595 34125395 34123255 34156233 34166147 34171511 34116054 34181291 34151644 34195258 34130700 34169488 34086682 34170947 34203396 34102482 34161024 34188037 34162631 34215262 34131014 34195798 34137230 34140145 34106554 34107417 34234818 34171214 34213600 34216485 34192511 34115416 34251052 34181828 34230240 34143721 34189781 34202246 34164115 34200861 34203155 34164629 34155511 34170898 34212143 34174139 34161655 34167670 34146517 34119543 34211548 34178290 34124963 34122330 34256997 34204136 34209540 34166578 34139081 34175915 34179338 34175276 34229326 34256059 34182934 34281165 34214418 34210074 34145006 34199647 34119533 34134946 34227806 34178452 34256762 34201864 34194760 34162860 34194710 34136954 34227360 34227085 34174224 34189013 34216001 34264142 34181933 34248058 34210827 34163589 34189689 34147846 34196876 34160902 34180980 34203272 34175385 34241747 34246982 34165041 34177690 34149889 34209204 34257034 34124742 34173930 34176197 34164541 34219899 34129948 34274003 34167127 34187471 34207898 34247118 34215006 34294687 34245288 34150840 34215582 34211964 34218293 34219931 34176902 34208355 34201354 34222249 34205366 34255278 34255754 34248714 34244962 34217378 34205733 34231685 34185096 34220528 34195791 34245446 34168632 34222123 34317250 34197399 34224588 34258170 34277179 34265753 34219072 34185109 34277025 34216083 34213641 34241089 34145492 34198542 34263079 34258392 34233251 34179694 34212786 34260232 34277272 34214188 34198267 34224521 34124522 34210849 34281057 34244040 34169813 34232058 34213029 34195226 34249585 34202567 34312324 34233448 34173011 34192437 34255435 34280365 34239029 34189359 34258913 34156020 34236624 34235821 34263349 34242520 34260085 34231939 34188890 34239417 34246310 34251974 34251604 34226067 34271701 34263448 34172727 34228685 34226053 34283544 34243502 34236535 34241466 34186919 34269221 34230429 34234044 34298350 34282366 34230059 34314171 34279807 34190765 34212991 34210162 34248957 34255523 34256675 34250577 34192884 34218146 34276179 34185961 34220912 34266881 34205093 34278966 34309338 34279595 34182577 34260962 34259041 34305427 34322969 34258594 34280171 34285213 34345631 34252558 34248870 34261537 34285243 34272510 34285021 34287191 34256928 34299378 34272758 34327629 34247345 34345400 34348841 34222758 34225925 34328152 34297777 34291439 34215249 34232729 34254224 34329292 34311534 34240105 34243040 34273156 34245497 34257022 34290151 34295396 34289606 34252011 34303885 34303665 34301760 34282453 34283452 34244238 34285122 34356494 34221838 34319946 34274175 34294780 34270401 34231820 34302691 34242561 34256683 34267594 34308045 34303447 34221095 34312715 34291212 34253436 34230499 34277011 34282205 34245990 34321266 34225918 34279909 34264730 34298719 34232923 34325909 34280655 34287964 34300570 34301200 34276473 34285246 34279190 34244426 34302109 34281399 34264160 34304312 34374322 34302643 34339730 34289159 34278333 34277251 34302931 34325604 34267164 34247732 34304768 34271280 34327636 34303233 34299786 34343411 34270298 34307133 34267357 34322832 34342181 34249602 34319031 34325254 34309218 34277651 34313087 34226298 34323010 34303273 34346996 34329992 34244966 34321706 34324984 34286546 34347808 34291959 34294653 34297945 34291662 34282850 34355128 34322444 34335506 34364481 34282442 34280557 34324058 34311414 34321500 34306935 34320508 34286907 34316220 34291056 34275252 34377383 34349785 34350669 34318491 34333990 34305370 34158160 34354356 34298950 34332217 34305606 34361029 34316594 34337034 34309175 34291567 34317052 34312314 34291517 34344708 34325315 34350209 34324894 34306252 34305293 34368685 34339771 34268855 34310635 34271277 34301233 34324098 34285285 34291973 34347518 34330001 34321002 34345234 34329580 34361827 34321452 34298934 34347772 34345029 34372129 34293243 34261277 34327884 34383007 34367824 34342926 34281398 34299090 34330008 34382013 34419094 34266291 34346576 34290770 34356045 34395813 34314445 34326117 34322983 34362830 34288597 34308240 34291695 34299849 34414915 34279128 34294322 34314742 34291231 34321945 34355813 34364596 34395739 34367930 34352244 34314577 34347479 34365412 34323772 34363444 34381188 34335576 34380396 34391249 34350097 34393043 34378601 34375892 34389182 34392067 34329291 34416507 34341585 34309062 34333742 34258360 34365669 34347169 34335505 34361540 34386181 34359545 34376429 34424025 34338520 34322541 34417368 34412040 34261636 34392401 34369484 34415398 34439217 34358087 34385748 34426851 34375924 34286614 34334055 34361777 34363787 34388167 34304687 34406532 34334696 34367578 34376450 34374212 34368010 34364422 34390008 34309400 34355391 34390410 34423408 34336781 34353453 34403672 34362522 34367957 34387140 34410799 34382837 34331104 34378174 34393066 34430471 34379839 34358047 34302206 34411397 34322806 34449676 34389399 34346508 34390524 34381847 34395978 34369408 34383926 34339396 34392576 34406464 34354447 34406515 34391522 34443602 34407599 34350246 34439782 34314383 34392719 34438467 34407474 34367792 34386124 34395842 34361174 34369887 34454244 34401677 34444291 34454001 34437903 34380462 34430160 34386002 34455086 34423238 34331753 34371230 34442593 34386795 34382537 34446200 34369616 34424460 34285952 34445684 34448510 34431263 34372899 34380558 34416103 34400398 34425981 34365041 34359108 34353450 34417686 34375566 34408854 34434160 34422643 34381433 34440419 34403325 34390206 34388077 34375999 34423057 34450670 34404120 34396833 34394863 34412285 34378222 34424743 34411784 34409847 34337504 34371917 34421996 34457642 34460419 34416629 34456286 34375476 34389138 34442127 34416972 34458314 34451238 34441214 34426498 34425137 34505128 34461472 34484410 34443392 34416775 34436042 34462536 34437168 34516114 34432669 34449842 34400008 34408302 34392442 34418028 34411337 34394361 34359894 34457837 34442049 34485197 34439070 34344279 34378053 34407741 34438861 34473116 34411107 34403305 34433001 34392048 34453917 34383503 34432522 34417653 34412488 34434949 34442985 34412510 34476681 34519005 34375273 34478379 34440430 34450083 34450149 34436317 34412662 34407661 34455488 34466861 34469641 34457899 34438894 34491371 34449878 34477508 34416729 34475552 34497757 34387251 34410223 34396132 34434538 34477252 34444438 34420679 34403530 34515230 34518523 34469205 34470095 34519041 34438683 34515626 34452472 34443881 34410867 34490421 34446187 34457263 34455079 34470662 34512365 34435878 34430262 34378487 34442580 34444387 34465776 34485427 34478973 34500681 34490282 34523177 34441888 34465105 34481823 34529522 34557949 34436085 34468019 34530195 34448413 34411297 34390175 34521567 34450867 34449571 34438466 34535885 34506574 34454675 34479585 34514409 34423923 34466212 34514128 34444913 34537892 34405958 34499397 34501564 34458622 34475842 34500210 34467327 34409902 34513795 34484297 34589653 34458511 34495295 34457685 34434645 34520685 34547929 34556452 34484766 34491190 34386715 34490920 34421445 34433061 34472497 34427030 34537554 34471258 34478993 34469838 34546512 34441648 34473836 34491540 34412957 34505343 34495809 34522983 34408270 34494719 34426872 34504220 34411559 34463075 34494046 34444924 34564721 34504061 34542693 34539984 34482584 34504860 34528388 34497434 34528053 34488991 34536703 34562584 34519151 34506938 34514542 34442145 34580906 34548690 34431928 34501121 34530427 34453927 34567722 34497740 34507532 34520623 34581392 34515146 34470942 34531653 34522593 34529850 34492686 34490611 34560235 34451864 34489838 34524755 34519939 34531875 34515176 34560379 34497655 34528798 34546998 34512236 34484758 34478552 34525268 34521836 34516509 34492079 34571454 34463403 34432096 34508851 34519589 34533246 34596707 34527972 34516450 34521709 34508618 34538651 34546220 34496639 34521002 34415677 34450553 34476229 34535682 34500593 34519472 34501909 34570011 34534548 34568249 34615337 34511498 34547382 34583400 34493150 34520178 34543453 34598340 34559872 34496003 34545357 34516910 34523088 34525373 34602909 34567546 34559344 34487956 34576295 34545413 34475494 34508464 34495590 34578575 34567638 34552989 34574179 34561714 34557005 34524324 34541543 34500260 34570952 34514222 34607355 34516144 34546176 34563424 34528669 34558708 34558465 34533116 34473713 34528228 34636036 34521555 34607181 34492671 34594482 34532219 34557554 34500255 34531487 34489499 34620961 34598998 34556338 34548681 34566296 34525506 34560324 34622432 34548719 34561674 34524304 34501421 34537917 34550061 34525174 34582524 34571044 34555644 34606197 34619077 34576274 34569812 34598367 34563910 34543576 34567098 34538745 34468855 34570942 34493399 34475586 34581912 34504661 34558859 34512189 34600074 34659162 34462521 34656425 34524651 34548508 34618801 34523209 34590961 34526972 34628538 34587529 34544318 34557724 34633443 34565787 34573133 34591756 34558909 34578949 34519320 34545965 34639415 34524064 34527193 34565545 34547838 34584494 34599262 34638296 34600559 34561121 34642269 34627110 34559955 34568969 34625951 34607653 34610126 34555245 34596710 34615577 34469054 34588145 34596051 34566997 34545284 34572861 34610524 34483632 34580055 34632485 34632232 34605618 34489390 34569581 34556578 34641724 34570742 34590721 34586535 34590373 34575807 34577474 34705940 34613548 34656043 34561451 34615469 34584235 34594663 34645418 34547030 34587255 34658163 34552008 34536571 34586296 34579012 34594680 34542297 34562569 34539654 34624352 34521326 34616325 34589232 34595285 34634359 34635717 34622461 34648572 34597016 34546434 34609800 34644921 34649382 34579471 34672124 34647531 34606355 34561888 34572263 34586141 34672860 34577246 34534661 34557982 34593237 34717856 34630810 34568322 34627012 34611120 34556038 34682384 34616023 34704041 34656095 34625934 34634672 34668754 34634065 34622663 34683240 34594030 34595127 34614690 34645288 34614357 34624005 34627772 34559274 34662533 34612811 34620280 34647396 34595513 34610670 34602338 34578130 34665558 34641391 34593624 34614268 34584644 34613528 34632485 34643364 34657211 34564265 34631753 34596707 34630092 34609549 34622231 34649353 34686611 34657130 34629997 34649916 34607727 34613933 34635089 34656964 34669356 34623135 34652490 34633386 34685307 34664965 34721328 34651645 34710722 34588332 34662588 34686034 34661347 34654536 34588939 34665127 34665810 34660336 34602431 34588332 34620001 34677305 34558766 34623893 34688073 34627199 34693130 34643624 34610655 34644433 34703972 34604069 34623888 34663873 34590555 34684239 34656279 34677201 34618988 34670453 34696240 34601479 34664708 34688168 34702299 34667642 34657781 34708238 34586676 34762428 34629328 34685796 34603358 34700404 34696938 34711521 34688491 34656682 34687216 34682131 34648429 34661179 34610796 34662822 34703884 34611158 34670719 34653346 34658598 34657383 34657189 34682125 34701735 34629108 34660033 34646546 34710628 34650616 34717715 34705182 34637540 34700029 34620729 34648346 34662062 34656487 34696229 34705337 34646518 34657981 34712702 34709780 34695819 34637293 34652002 34727399 34662513 34625810 34593597 34708147 34599988 34718709 34676778 34626200 34737082 34739033 34673870 34682381 34664549 34720400 34699285 34712029 34709299 34711158 34704560 34672975 34730759 34702947 34659704 34618588 34663413 34595632 34731125 34665801 34669154 34686247 34682519 34684901 34683186 34716273 34690966 34658396 34725356 34760930 34660770 34704084 34648828 34735654 34686983 34768897 34734855 34673317 34644591 34660406 34738501 34752209 34730197 34743838 34674727 34742569 34689673 34699312 34705703 34648948 34661204 34701422 34697066 34696832 34724761 34771069 34677445 34749309 34666122 34702350 34673662 34687024 34687065 34730542 34798629 34734313 34691697 34735842 34689387 34755414 34701720 34740270 34743790 34718621 34730226 34691974 34760496 34735789 34684242 34710066 34742684 34723513 34772013 34727795 34690078 34709859 34716288 34687085 34758511 34774301 34727752 34680317 34656540 34786442 34721687 34763900 34785128 34787913 34688096 34738472 34812960 34736906 34746867 34717150 34740738 34700735 34741741 34743893 34759442 34659619 34725990 34774866 34736494 34756786 34691809 34766375 34718313 34687380 34737187 34662674 34749199 34774028 34709740 34743188 34733057 34803490 34775329 34723072 34706818 34735228 34774589 34710405 34758494 34720332 34731238 34737451 34762831 34753208 34776616 34742799 34761608 34758433 34780340 34750731 34783917 34832922 34749910 34794296 34730884 34741876 34662772 34665721 34772043 34702125 34735256 34790362 34716987 34775912 34714337 34823717 34759123 34703065 34784942 34780786 34743461 34724870 34785894 34835203 34793863 34820919 34775893 34795143 34759800 34773801 34778037 34774013 34843479 34821812 34722287 34801051 34721075 34760137 34775128 34798485 34750781 34764566 34687810 34808768 34753925 34766561 34719920 34781781 34742834 34767075 34718347 34842797 34805859 34784031 34721755 34731771 34791024 34777546 34781181 34835368 34822737 34842242 34731205 34721802 34773073 34830568 34787373 34808670 34772831 34848360 34869771 34798485 34760283 34789499 34768305 34787599 34797600 34799184 34753722 34821687 34747863 34784245 34839261 34792529 34802571 34784014 34752916 34732266 34817140 34775753 34776598 34789000 34786214 34814133 34821409 34848264 34753253 34738093 34814642 34722014 34802251 34782063 34746992 34809727 34798890 34800311 34682633 34812208 34734295 34816873 34766774 34809165 34825873 34772298 34842230 34807777 34793979 34757203 34775452 34821923 34771344 34749880 34842127 34795334 34810081 34826565 34857304 34790752 34795174 34734610 34866642 34860827 34814029 34800130 34793611 34899376 34883753 34805334 34870871 34846178 34864662 34829780 34748427 34763983 34821303 34803098 34866354 34839732 34803886 34811456 34819713 34813361 34802289 34777459 34779087 34867154 34809573 34801637 34863892 34902290 34822089 34848670 34823563 34831418 34788067 34849392 34841890 34816391 34805010 34796087 34798972 34856868 34801048 34868133 34785028 34847711 34814767 34858256 34772071 34836285 34913179 34786096 34813089 34841081 34848844 34882773 34808334 34851019 34775203 34827880 34900473 34889483 34873165 34826549 34794659 34847218 34881732 34970655 34786663 34820531 34861772 34816675 34843671 34861842 34804678 34881087 34792449 34812447 34891616 34740439 34827882 34799695 34837663 34850243 34798403 34865395 34883184 34779330 34785316 34779434 34869550 34880186 34867099 34953334 34877240 34891302 34819604 34912709 34838432 34863509 34890481 34827838 34824794 34900476 34885222 34827540 34883932 34838309 34846093 34904091 34901737 34849000 34830719 34949596 34929960 34871640 34869230 34878259 34881435 34899552 34836297 34825756 34868531 34874209 34872270 34857546 34892348 34846284 34847420 34867862 34825313 34958189 34888061 34884728 34845713 34989140 34911641 34909854 34935764 34823007 34849374 34890874 34895391 34911761 34820979 34920569 34883217 34842382 34886869 34837134 34904083 34915134 34921821 34806741 34907516 34904722 34866977 34901688 34921257 34834174 34933621 34847797 34875785 34854569 34884633 34872682 34880762 34877179 34887954 34834170 34862016 34915646 34871441 34884538 34907888 34867607 34927350 34872851 34913433 34817947 34933614 34884738 34868701 34952969 34862837 34878768 34883375 34887321 34913064 34834490 34897552 34914533 34915162 34910115 34893827 34908816 34840787 34896772 34897467 34910201 34947526 34841887 34964737 34877925 34963610 34867592 34958481 34910605 34858188 34872600 34904184 34900855 34865146 34976849 34936420 34950921 34923634 34906497 34940141 34963282 34970916 34847686 34901784 34926687 34893632 34870848 34889712 34869313 34987658 34887191 34930989 34930484 34941948 34939550 34939343 34878546 34923368 34929858 34905607 34902035 34954759 34978148 34921123 34957034 34946390 34895116 34828691 34938440 34849149 34892047 34897950 34948097 34948868 34959077 34880298 34919082 34894282 34966420 34945860 34890246 34910265 34882665 34895370 34886213 34879755 34887498 34917781 34890622 35023873 34967263 34925895 34910177 34914065 34860745 34918385 34888183 34928517 34944019 34901875 34943746 34962123 34913181 34904121 34916224 34949866 34922197 34935570 34918897 34864250 34908786 34887569 34934640 34955295 34947952 34979536 34875980 34938343 34914119 34878761 34991385 34904875 34941245 34880488 34922305 34882535 34879938 34941804 34890187 34918335 34935286 35006475 34963870 34916155 34977914 34913218 34956167 35006144 34874947 34984162 34944206 34933233 34992438 34981442 35007655 34900954 34975472 34967027 35069892 34967313 34969528 34936317 34914361 34958949 34989777 34883656 34941328 34912595 34923899 35001381 34911942 34981808 34949669 34972796 34897284 34979849 34962520 34951420 35000961 34978566 35018463 34999594 34935403 34948698 34919513 35021470 34933827 34969193 34971318 35017054 34938347 34941239 35014084 34957765 35043849 34899037 34992665 35079753 34962067 34877126 35000142 34963053 34995742 35007255 34977445 35003167 34977904 34947547 35027643 34974127 34941126 35008378 34993894 35058336 34973561 35008903 34973660 34990932 34965698 35007351 35001333 34955730 34927438 34944433 34955753 34946378 34883977 35006661 35009621 34982028 34890326 35005902 35010742 35088432 35044156 34967122 35010463 35008578 35060025 34951957 34988339 34920801 35022483 35032509 35009900 35024482 35034732 34995120 34979757 34972409 35064326 35016988 35024046 34992991 34986854 34999947 35067048 34966532 34947449 35025719 35107564 35005911 34976093 34985630 35034215 35025175 34964682 35014378 34964192 35091098 35010075 35004588 34897913 34996605 34968889 35040190 34960291 34992686 34967663 35002971 34940905 35048140 34956407 35010175 35046207 35006271 35026917 35033561 34982177 35025438 34992717 35027870 35003176 34994668 35009521 34970385 35059184 34997869 35017769 34995287 35048651 35008120 34985590 35018588 34946630 35060352 35040856 34984554 35020928 35057475 34995781 34951844 35004074 35031035 34965293 35016358 35009330 35009572 34954555 35001957 34998540 35031869 35019350 35034841 34972626 35024435 35046748 35089644 34994260 35009370 35022230 35075196 35077622 35021507 34973508 35008286 35006164 35021908 34966225 35027338 34973277 35049446 35035131 35042330 34997986 35031881 35072139 35078352 35017164 35016558 35083400 35064834 35061055 35026613 35000454 35025885 35016979 35036020 35061000 35028682 35013992 35043332 35061884 35092872 35011425 35013539 35043143 35117870 35041267 35034232 34985203 35014950 35151163 35041319 35032605 35046015 35037234 35052937 35039392 35022674 35052208 35092717 35100869 35045723 35074934 35115967 35037967 35045054 35057547 35080810 34963437 35030120 35074970 35051917 35076963 35053760 35092572 35065448 35026210 35027937 35115066 35082149 35029413 35003295 35072014 35053190 35118098 34985697 35082790 35004661 35059247 35043978 35072285 35030248 35094832 35081009 35108882 35043013 35072545 35060067 35025295 35061379 35028957 35080807 35045086 35021024 35056617 35059130 35118341 35025503 35092568 35165373 35059366 35072610 35068047 35140707 35024607 35090153 35048256 35030633 35093532 35075021 35064639 35015750 35032046 35110660 35098452 35083789 35065946 35034519 35101636 35104672 35105506 35083483 35043991 35061377 35063555 35082757 35074755 35079608 35139641 35151585 35121684 35074672 35026964 35076842 35109190 35105328 35086821 35107105 35092909 35063148 35105220 35119416 35100690 35100872 35131534 35111062 35082811 35104481 35072480 35091831 35059509 35133216 35125014 35040757 35123497 35097284 35131370 35080173 35065744 35093255 35155476 35071840 35083278 35004255 35062374 35145779 35107871 35080233 35110592 35091109 35113208 35043765 35079919 35083046 35128103 35123100 35075032 35110231 35029669 35130999 35081675 35136686 35104846 35115232 35085110 35101106 35138663 35034400 35082295 35141632 35147707 35031564 35087358 35122991 35162453 35030774 35053152 35050890 35070680 35150583 35153106 35086097 35090200 35211220 35005156 35042951 35139704 35080432 35064241 35109195 35084236 35120030 35054131 35038360 35125217 35120298 35102781 35175873 35132036 35200792 35038915 35085422 35105573 35127552 35102450 35162236 35089238 35148579 35126751 35123890 35111717 35131055 35119526 35135276 35116651 35078186 35090362 35099568 35129409 35085332 35159486 35153936 35159919 35084618 35057706 35121221 35098310 35065007 35199439 35155513 35197002 35103964 35158699 35081313 35071217 35114010 35166848 35130026 35116039 35183120 35097546 35106528 35134599 35097291 35108823 35098760 35134831 35132535 35064771 35058936 35128732 35169499 35091807 35094145 35056039 35180990 35150477 35052092 35114813 35194828 35127942 35131773 35142776 35197506 35166736 35205196 35107568 35132360 35112193 35088436 35188738 35113609 35130161 35171369 35190461 35141037 35140571 35137103 35140088 35112805 35213006 35188348 35180674 35156813 35156249 35132663 35126041 35114533 35166458 35162692 35119590 35186899 35153513 35211776 35141107 35159035 35159790 35201336 35159157 35109564 35124242 35127177 35180903 35124709 35107400 35127093 35134208 35136385 35132437 35102552 35132455 35141821 35156951 35148356 35179383 35085113 35162145 35152735 35197923 35099774 35136173 35149662 35187707 35139915 35128647 35157392 35199526 35198135 35154131 35187458 35163061 35213229 35201403 35131245 35133018 35210852 35157533 35148104 35181650 35133788 35099595 35172742 35168716 35153855 35208629 35195584 35223473 35201833 35122838 35112441 35229181 35179866 35178392 35192410 35249769 35105997 35182172 35136913 35207563 35183028 35200803 35170378 35137932 35163218 35131933 35241037 35142211 35140789 35197936 35187825 35187955 35271365 35165791 35112725 35213170 35206903 35246896 35140912 35207256 35179730 35189582 35222216 35218744 35198070 35139796 35180405 35161465 35196582 35160888 35199683 35251869 35180498 35183067 35217788 35182407 35200744 35199957 35213185 35219532 35185011 35180564 35126487 35206740 35198679 35199153 35291511 35210306 35197130 35174730 35192086 35165624 35157386 35199372 35214135 35143924 35147706 35180323 35264554 35082811 35209070 35191114 35195862 35169265 35254181 35199472 35265890 35251840 35235259 35167074 35190329 35263813 35212055 35207261 35140052 35196037 35261658 35184006 35217157 35233320 35231753 35180848 35326659 35259037 35230303 35170690 35103772 35242263 35216111 35286672 35298375 35134361 35185094 35240831 35194992 35231507 35206117 35230272 35145899 35202932 35254702 35265131 35273360 35207297 35296799 35262471 35220701 35158632 35281509 35212190 35224305 35162981 35207031 35218684 35231779 35231358 35262454 35284923 35170651 35238437 35167940 35223867 35256864 35274898 35235669 35262708 35215185 35221443 35204782 35215890 35236728 35231356 35188210 35168385 35281164 35258473 35192869 35189435 35224852 35280927 35195825 35153713 35193507 35191534 35258796 35201137 35201460 35215959 35223494 35260980 35269733 35265845 35274993 35240051 35280048 35177363 35237261 35273740 35190755 35242288 35198555 35241175 35292684 35261795 35267005 35272267 35274208 35287682 35201030 35276693 35232255 35203018 35203422 35228884 35255623 35248659 35253877 35269953 35197451 35252296 35223074 35185468 35296141 35230612 35227756 35251231 35210093 35263064 35271552 35266674 35209899 35312882 35197628 35275097 35222644 35286067 35238330 35265629 35273757 35280657 35292471 35229723 35187653 35183197 35245530 35355165 35224562 35236983 35255405 35327430 35259671 35303763 35303123 35227550 35312955 35283026 35276772 35275476 35300662 35263271 35234175 35332435 35299871 35276278 35245063 35276202 35296304 35370951 35258070 35278806 35250244 35295547 35243927 35282102 35248755 35249544 35254794 35283659 35292640 35361995 35231843 35327585 35325718 35257018 35336858 35247587 35297120 35264141 35342144 35313708 35262583 35324948 35236178 35258038 35292884 35230438 35219478 35260297 35259485 35248008 35249920 35347170 35293842 35245047 35269182 35361016 35320010 35208444 35250278 35284173 35297331 35291309 35297996 35253092 35303177 35285739 35266862 35335204 35313044 35293914 35296333 35312779 35268642 35339912 35281750 35298266 35300645 35315724 35281432 35291763 35303680 35337559 35307614 35294505 35340918 35288008 35286809 35323166 35294921 35263685 35330093 35346597 35277821 35351627 35253595 35321366 35357609 35315500 35303278 35297182 35311707 35366770 35281044 35341131 35312279 35249571 35314793 35304991 35264279 35272415 35357704 35309581 35237711 35277603 35310384 35370267 35366909 35334917 35230503 35249806 35304952 35331957 35300829 35330122 35396671 35362788 35244338 35339208 35325724 35313742 35304656 35277686 35370967 35336469 35369916 35348756 35271586 35328012 35272515 35280881 35318757 35258775 35324024 35280466 35292287 35342311 35280911 35358327 35387032 35254760 35337947 35350262 35371500 35380619 35289132 35333919 35311568 35285696 35345660 35389116 35335001 35342277 35311081 35302267 35331835 35361578 35339188 35301632 35311909 35394876 35381349 35296876 35359339 35332874 35407741 35318148 35328399 35286239 35322277 35294966 35345670 35306120 35284375 35400207 35356738 35312987 35382710 35381969 35306732 35337729 35302473 35305153 35364895 35326903 35315059 35318039 35323035 35327990 35367164 35376597 35342542 35336501 35359176 35357402 35325155 35374301 35399087 35331019 35331236 35312443 35336328 35412251 35334605 35393573 35384584 35331182 35352301 35383216 35365191 35307315 35312244 35360242 35369898 35311635 35325613 35307802 35310006 35339769 35273037 35373386 35284423 35313055 35253593 35310538 35309377 35363159 35265753 35379866 35452204 35391025 35390029 35302120 35287165 35349527 35354204 35334918 35385989 35353936 35387584 35371002 35329213 35363457 35414843 35400421 35359255 35410264 35382953 35363060 35328852 35410692 35311341 35386352 35335952 35375628 35384071 35292539 35312934 35413028 35320823 35345818 35336972 35374256 35377718 35383768 35460321 35397544 35340233 35329776 35353345 35419410 35342726 35378456 35378807 35413140 35360939 35364526 35446259 35424507 35403287 35384842 35386080 35418983 35358552 35364477 35405039 35348942 35390008 35420514 35354941 35373022 35372777 35368894 35361164 35333616 35409552 35405699 35360663 35413696 35416940 35417135 35448069 35393485 35351713 35377038 35357867 35394201 35421087 35421654 35445897 35409635 35449627 35339748 35451262 35336879 35310443 35427275 35397439 35419057 35350085 35461479 35380950 35427186 35455863 35360732 35397484 35371315 35385768 35355541 35412821 35455390 35416784 35409254 35384329 35395285 35354438 35386104 35426050 35437183 35383367 35346246 35366308 35438044 35385934 35485435 35419046 35448619 35399737 35382329 35418376 35469265 35379583 35430266 35417576 35379580 35312835 35403147 35400746 35365183 35357227 35393961 35472794 35350535 35371193 35372090 35412995 35405558 35391617 35427298 35413460 35422441 35396118 35425613 35433491 35351445 35397133 35459133 35475956 35463235 35469295 35424618 35383868 35457358 35401521 35392880 35511961 35450535 35357196 35465144 35445377 35452335 35359426 35480898 35466518 35500385 35485716 35446753 35436825 35384195 35365645 35469132 35355847 35437134 35467991 35473771 35482097 35377233 35427716 35442750 35398214 35439213 35386369 35432114 35486921 35453768 35438693 35483978 35492578 35426178 35450768 35473191 35469010 35394844 35342040 35502138 35465418 35467645 35493774 35433557 35424999 35397803 35385636 35481135 35497568 35419395 35419642 35502152 35395899 35420102 35459523 35410183 35387554 35460826 35373711 35506919 35442162 35519643 35447696 35472458 35457939 35405735 35476504 35490167 35489982 35434332 35393481 35454364 35443227 35404248 35440178 35496496 35449899 35532699 35496525 35455501 35474689 35448513 35492873 35413107 35347801 35440140 35477674 35456925 35444771 35468685 35431663 35511429 35432313 35509172 35442575 35477253 35459425 35455290 35469326 35539521 35393878 35392715 35419787 35528015 35391786 35469748 35451979 35435822 35519525 35482159 35460649 35401431 35498774 35414737 35452840 35441029 35395446 35479851 35530448 35507232 35428253 35495901 35474595 35444345 35448364 35458362 35474291 35503940 35538077 35419957 35484020 35524356 35411445 35483160 35395893 35435016 35526970 35506690 35501781 35560900 35550265 35515717 35406863 35513251 35533754 35429588 35526588 35447915 35504952 35451072 35434318 35526448 35479725 35462014 35527956 35539514 35480765 35545722 35486242 35491906 35505400 35462827 35484669 35423500 35503935 35492205 35460099 35451749 35491851 35504703 35431952 35459734 35539844 35458405 35532092 35436530 35443198 35520835 35522869 35436435 35491073 35551698 35509647 35434702 35459477 35506147 35519323 35457869 35471871 35422422 35554025 35470164 35543816 35580655 35524928 35487767 35477684 35518163 35489004 35479982 35488061 35500215 35469869 35472904 35553758 35532093 35497075 35528204 35464399 35480850 35452062 35479984 35516666 35503343 35462577 35513164 35490965 35481617 35527709 35458824 35504439 35543319 35522096 35541953 35444932 35462130 35499172 35480784 35527232 35504787 35493258 35522410 35517548 35491896 35520837 35551408 35569497 35551310 35560645 35590435 35528211 35485882 35591736 35546387 35533550 35526376 35548475 35469094 35508033 35591124 35560427 35532547 35476925 35503668 35584406 35520088 35556066 35551067 35542695 35550629 35530877 35557063 35496066 35552022 35549053 35555778 35582936 35556334 35513339 35514780 35460129 35516057 35576855 35523337 35562433 35577343 35582520 35542028 35550444 35461696 35568068 35564275 35533816 35550051 35560471 35591002 35480381 35528157 35636624 35548862 35508183 35571369 35561276 35536819 35560569 35552697 35542442 35532146 35540279 35586330 35601541 35519484 35526410 35530206 35527199 35507505 35607746 35566028 35556597 35566711 35630796 35577109 35530508 35494406 35554691 35552573 35598408 35559382 35594038 35469085 35586263 35584410 35529077 35618504 35558799 35546626 35521549 35586843 35585209 35505363 35549064 35589454 35569308 35600977 35550221 35666750 35545419 35576989 35602186 35617160 35582177 35572428 35587707 35540707 35591111 35559354 35587107 35566170 35587296 35523314 35509800 35608805 35592782 35510683 35571793 35603519 35573441 35592301 35553939 35572456 35593663 35596893 35551433 35501547 35578717 35612129 35568149 35532484 35658406 35609929 35524391 35559485 35626091 35546041 35538926 35647710 35599125 35580601 35626618 35626029 35610580 35570188 35672060 35540618 35581146 35514515 35629642 35629204 35575469 35653427 35618307 35619177 35597464 35590618 35534966 35598439 35577595 35561984 35554642 35519349 35518484 35593638 35595016 35595681 35586942 35609839 35602544 35582652 35730713 35640304 35664194 35644324 35613929 35567384 35627042 35614803 35571744 35547429 35567366 35620036 35589627 35624822 35577984 35692609 35600314 35566184 35645092 35661933 35661520 35661282 35610072 35621926 35612358 35555376 35618847 35604721 35582380 35534727 35624833 35604074 35662781 35581504 35539745 35673434 35624767 35677576 35698268 35572193 35645580 35534901 35657296 35587882 35541431 35667642 35612629 35608241 35573948 35606998 35542862 35654144 35592198 35589567 35619867 35633059 35616770 35657299 35613985 35618174 35668720 35634212 35590582 35586832 35610589 35644039 35589103 35584722 35621942 35660299 35638002 35655650 35684295 35677939 35698570 35630029 35647867 35621287 35744330 35679411 35664638 35605528 35641808 35696669 35594422 35593929 35617150 35638198 35673477 35577153 35654171 35655567 35584282 35720975 35707089 35589479 35628446 35628837 35607579 35660106 35608551 35611607 35620015 35654157 35716301 35614708 35615536 35567675 35668477 35681254 35558727 35618411 35599022 35669921 35691251 35656854 35581026 35627926 35605786 35661125 35661203 35591693 35697774 35612171 35562072 35679134 35657831 35716560 35681498 35647781 35625825 35649209 35663875 35579688 35598425 35647212 35598935 35699635 35711441 35671243 35637624 35641391 35681790 35649189 35645591 35678100 35624469 35687614 35647787 35747278 35588249 35610522 35652778 35634095 35617895 35682063 35642367 35612314 35716065 35664201 35666017 35710082 35610820 35690771 35657258 35661103 35613626 35625109 35703669 35601340 35663465 35721288 35788884 35615411 35646571 35693492 35632817 35732437 35719020 35723361 35736200 35644686 35734886 35667326 35662615 35636724 35697630 35673973 35656245 35663687 35662192 35719945 35620645 35739965 35683294 35760029 35671543 35679639 35660470 35693270 35721099 35662264 35655770 35738198 35724087 35638013 35675441 35660638 35719572 35695923 35692309 35666177 35715096 35680469 35728558 35708625 35639560 35695635 35686763 35722004 35719453 35723360 35664861 35675205 35674389 35650226 35601824 35712562 35747091 35727407 35717582 35715923 35689214 35642426 35728326 35613721 35712360 35599190 35703222 35752697 35697479 35642873 35738873 35683093 35723181 35651284 35679124 35796733 35794345 35700464 35690230 35712474 35674099 35706465 35777378 35738502 35684063 35674973 35768392 35750732 35685881 35796847 35748125 35755141 35683442 35706850 35686939 35673066 35687225 35674667 35710634 35641377 35646455 35694457 35709061 35685478 35699110 35686403 35741568 35738288 35715241 35736736 35699218 35656950 35832716 35726132 35696923 35719337 35734314 35703051 35642581 35702565 35765796 35757733 35757810 35653344 35784448 35744435 35742406 35708998 35753526 35704166 35697287 35713823 35721121 35771668 35800553 35733268 35769203 35696892 35695293 35701250 35720526 35795685 35772042 35706110 35720761 35739029 35744349 35752321 35752208 35772664 35720968 35740262 35696515 35782786 35720445 35765210 35720738 35763139 35711477 35756869 35730354 35678735 35779775 35767153 35749180 35730018 35765752 35763844 35761818 35752493 35738571 35748051 35784025 35695220 35721551 35751260 35718793 35739765 35707185 35782462 35754196 35726401 35720894 35755652 35777163 35775361 35733879 35714223 35783702 35818087 35731034 35728060 35651982 35714467 35741741 35731165 35770533 35734239 35815223 35761183 35750098 35756258 35713716 35760006 35722618 35757749 35837194 35755433 35725085 35762373 35780766 35730573 35779071 35818890 35833543 35737401 35814283 35821060 35664201 35751353 35725843 35811513 35715387 35769139 35765986 35753038 35819220 35766047 35803892 35751493 35807287 35732473 35811099 35743081 35795922 35780105 35811891 35817383 35809226 35756375 35831000 35729371 35817160 35781078 35777766 35695155 35778884 35777192 35785490 35804945 35800978 35851235 35853092 35758540 35733983 35705413 35726090 35728242 35741750 35771076 35804391 35741263 35714448 35780326 35749022 35720645 35787451 35773427 35787493 35807782 35722667 35763861 35743744 35764050 35833699 35702700 35825002 35780363 35818891 35772518 35813573 35786726 35836876 35747474 35812739 35798845 35791079 35745566 35781345 35877182 35790317 35740695 35774461 35888855 35823864 35827372 35784213 35853992 35779943 35764888 35882776 35799704 35857956 35824045 35788667 35801962 35861369 35773523 35779970 35855145 35742891 35801594 35807458 35783205 35796251 35798736 35788191 35765908 35800688 35870916 35787617 35728168 35870800 35900268 35831838 35799694 35839194 35748503 35804466 35801914 35765135 35816331 35725806 35834250 35863360 35817765 35797689 35842530 35839980 35781938 35879309 35809611 35804060 35860183 35828269 35797509 35777242 35780624 35867828 35803138 35810812 35727380 35797091 35853011 35774102 35844147 35804540 35857505 35766713 35799410 35868423 35826946 35801566 35811256 35772609 35801159 35846537 35805618 35794782 35777134 35755199 35833987 35869256 35896425 35812805 35820407 35836054 35831595 35854298 35752910 35766577 35758867 35830559 35862228 35879014 35827554 35858332 35792806 35823268 35832367 35793918 35851806 35938827 35765267 35856985 35858693 35870535 35811466 35801853 35826287 35835290 35844575 35809499 35820117 35846931 35902194 35841361 35787187 35837989 35807892 35814085 35777411 35864664 35777897 35888425 35823574 35839712 35781478 35833746 35845622 35834201 35889793 35884303 35783946 35839117 35856214 35802240 35840353 35832402 35808206 35836845 35837802 35810356 35874395 35792736 35810142 35854337 35885300 35889650 35870909 35838033 35773555 35811821 35853549 35833572 35789833 35845948 35766008 35851822 35845460 35854300 35878953 35818621 35834630 35877117 35796921 35895272 35862723 35849807 35852818 35884019 35856756 35799145 35836111 35874273 35912534 35893223 35823692 35846694 35844230 35840981 35815814 35848038 35898131 35884608 35881190 35857222 35790932 35929704 35840860 35864157 35854693 35883711 35802713 35860447 35869216 35834780 35889272 35881720 35857379 35820718 35850827 35857815 35856168 35871011 35885391 35880218 35850036 35905460 35906256 35920667 35928273 35851812 35868861 35860067 35819288 35903262 35802067 35931931 35923086 35848887 35856155 35838604 35839073 35852299 35871050 35814986 35835886 35937861 35834301 35928019 35843589 35907354 35848397 35863096 35919750 35916061 35833841 35891876 35931535 35872425 35832229 35944898 35951052 35812858 35938805 35873150 35926935 35795128 35919014 35846886 35899826 35925844 35915953 35812138 35845966 35859461 35877696 35849854 35884998 35814126 35880130 35882650 35849796 35877376 35870320 35907929 35923705 35892590 35944156 35881589 35834929 35869024 35844301 35930529 35922991 35869358 35950231 35972596 35905778 35893496 35851825 35842356 35946692 35867642 35887826 35897671 35847959 35924039 35889058 35913188 35896558 35893652 35853110 35943045 35828185 35936547 35869935 35867967 35903579 35898994 35870085 35906150 35740203 35921241 35908646 35863586 35906617 35935949 35925486 35916752 35921769 35882437 35851871 35899305 35904792 35866476 35873510 35854531 35858883 35859254 35890123 35908215 35875788 35879176 35795148 35921043 35898130 35917406 35942087 35877824 35955267 35887786 35932593 35925860 35936602 35901702 35921323 35923117 35933720 35877088 36018436 35943560 35877576 35897228 35933732 35897195 35939460 35924130 35979169 35977554 35913433 35999086 35880314 35981218 35882179 35872374 35908195 35934177 35916459 35936324 35940669 35890101 35877782 35949017 35972649 35935449 35942826 35939474 35852850 35954710 35974579 35878729 35949789 35844042 35954696 35929449 35954902 35985208 35982369 35926166 35890345 35892117 35861033 35880556 35937788 35893974 36011190 35934482 35964772 35962485 35950902 35942561 35881672 35955748 35925493 35916293 35920144 35967429 35983256 35939382 35919592 35877576 35929210 35950755 35957183 35914172 35973977 35990364 35963150 35996345 35921193 35967643 35968505 35921092 35959365 36016435 35870354 36013829 35913838 35991046 35971591 35917755 35966912 35949596 35985463 35964335 35934975 35926917 35988224 36043397 35985445 36033108 35981084 35961941 35948044 35876882 35968875 35984412 35946207 35884238 35935177 35980120 35979508 35942209 35943652 35939991 35922729 35971590 35931089 35954114 35975231 35971290 36003773 36017670 35922968 35872282 36053125 36030425 35941853 35999960 36008883 35966343 35868179 36035369 36014316 35964052 35920319 35955717 35913646 35918098 36018568 35988348 35978760 35939328 35953330 35918422 35885585 35972001 35960350 35929418 36030376 35965282 35998331 35921871 35936878 35958587 35961841 35910184 35968859 36029266 35942529 36005293 35902935 35967436 35979205 35975367 35995347 35993000 36019206 36022799 36005831 36014324 35954793 35995174 36014848 36016659 35955063 36011103 35926569 36025217 35966515 35962458 36040124 35954884 35953322 35928268 35973184 35996509 35961819 36028936 35952319 36008348 35918823 36009404 35948695 36003570 36070331 35979518 35967272 35964907 36004168 35969537 36088214 35943841 35874165 36092549 36032564 35964072 35950478 35958572 35944206 35988045 36073454 35962014 36063843 36025641 35969198 35977036 35898403 35957421 36057677 36019524 36002931 36010674 36048980 36021712 35995967 36049508 36035549 36044310 36047033 35955702 36051825 36034497 35990088 35971282 36010273 36021116 36030989 35983213 35993501 35980288 36003755 36002308 35994234 36017663 36012562 35992340 36008205 35965513 35934458 35958397 35995476 35980772 35999779 35968312 36016621 36062393 36059100 36026729 36005670 35963446 36077540 35991068 36019930 36024116 36000059 36060919 36081387 35966854 35970839 36032083 36049700 36037980 35997633 36062514 36009945 36013409 36008971 36034623 35975265 36036300 35990560 36079933 36061111 35951050 35973698 36040439 36105415 35969754 36056965 36019748 36087758 36027797 36025988 36056334 36001640 36074068 36031216 35971830 36029854 35988920 36051645 36028141 36006279 36028892 36050679 36066309 35996920 36062971 36089747 36086125 36013181 36024167 35985167 36080497 36071570 36023097 35966269 35995363 36058085 36001843 36064665 36065578 36064010 35992072 36056888 36035709 36030004 36092235 36026399 36037146 36069398 36077612 36066282 36008389 36028641 36065905 36105150 36082255 36096413 36032001 36036762 36028729 36053954 36023342 36009557 36069721 36060085 36056540 36050839 36112034 36055779 36054808 36052306 36063718 36133123 36086590 36017081 36098144 36049055 36025343 36025834 36067171 36193430 36072333 36103320 36065339 36008883 36037778 36035483 36038643 36075115 36130656 36107353 36037887 36156451 36142037 36068028 36156241 36060509 36095827 36079048 36109125 36047818 36046048 36095413 36088401 36079547 36119138 36107692 36078171 36086464 36097332 36168161 36113392 36042788 36058742 36115190 36094974 36037139 36093016 36094143 36129252 36054588 36092520 36043532 36060812 36124746 36070927 36019295 36146012 36144725 36150198 36075302 36066570 36046948 36094620 36066216 36067621 36150595 36097850 36090999 36096394 36075869 36119715 36092575 36021450 36035194 36124974 36065264 36114387 36019157 36098782 36049174 36088126 36115486 36114711 36095262 36065951 36103203 36114657 36098337 36157640 36074466 36093583 36120186 36074779 36009883 36097573 36095035 36075869 36142420 36055865 36131600 36045377 36172180 36066350 36074659 36069378 36079809 36081165 36073562 36160065 36052704 36150977 36129579 36067103 36119425 36102076 36117180 36021286 36129406 36034516 36096605 36149217 36121466 36146930 36127870 36079314 36081624 36174877 36085807 36058251 36060879 36161192 36109048 36079123 36039365 36167608 36166362 36080018 36069926 36070598 36135260 36059427 36053247 36120923 36125425 36200271 36145169 36096383 36150522 36128248 36096164 36071002 36139470 36080788 36155087 36096991 36148401 36153858 36144454 36107172 36184826 36121359 36178324 36099729 36119947 36142669 36186039 36087419 36082395 36054278 36116630 36063634 36076004 36040413 36121539 36173244 36122525 36135663 36107751 36143635 36087412 36209004 36070260 36079056 36159058 36091798 36145250 36161345 36133738 36196398 36101197 36061941 36192041 36125223 36167836 36162859 36149561 36199689 36085140 36161178 36073688 36106399 36084832 36147804 36098075 36166060 36175508 36112683 36152468 36137040 36097109 36102980 36137946 36155055 36149625 36128284 36086284 36131787 36154480 36046920 36207924 36109916 36117357 36120091 36132508 36152183 36115616 36136462 36084745 36149749 36171134 36135771 36129153 36214219 36171484 36136002 36138936 36101882 36150598 36059741 36131058 36093470 36171311 36138500 36121617 36202271 36115766 36177233 36150927 36151968 36193254 36100415 36127467 36105797 36221441 36106319 36143829 36138444 36206396 36126325 36153434 36150898 36164540 36107992 36142020 36132834 36161730 36068847 36212462 36224298 36170194 36081148 36163594 36169121 36108088 36085068 36114689 36111564 36178384 36139149 36203381 36178446 36124545 36214858 36207629 36249440 36163430 36166578 36140972 36187552 36171698 36141694 36203378 36209165 36188721 36152969 36175503 36135728 36178605 36190257 36154669 36126210 36179588 36192571 36198821 36153279 36240487 36149557 36278871 36072837 36209772 36107721 36240985 36177225 36238340 36166634 36149150 36145844 36115750 36187308 36230032 36266778 36201154 36216829 36190711 36226307 36159271 36223213 36172278 36211986 36227306 36246007 36143738 36132621 36158045 36169612 36173779 36182171 36135759 36205472 36229361 36261907 36152194 36273790 36162224 36173953 36198790 36164116 36218732 36176041 36130944 36209895 36217725 36215237 36244765 36228459 36168647 36225151 36212582 36156438 36243506 36277590 36215959 36186068 36184694 36232070 36195842 36173401 36206088 36192006 36170063 36168504 36180259 36160230 36234852 36185029 36221234 36224647 36248956 36285477 36219039 36154178 36120007 36197126 36213906 36265972 36172811 36231392 36300139 36229717 36248611 36210603 36253616 36211703 36265148 36248736 36191361 36152786 36182374 36227838 36242107 36242126 36236515 36288904 36199420 36153061 36256571 36165630 36184648 36301376 36243492 36248428 36280470 36283465 36237674 36254930 36277794 36199818 36274471 36203155 36280097 36210702 36197233 36190032 36237787 36172974 36210563 36197645 36212212 36119617 36203431 36255303 36185636 36319058 36270657 36258633 36201882 36165447 36225141 36256375 36238573 36264161 36267874 36167278 36249217 36226096 36295715 36252552 36198339 36231264 36275476 36270010 36260650 36251188 36301055 36273608 36279378 36276449 36221699 36259896 36238871 36301726 36207298 36195902 36275382 36202430 36175224 36243814 36307501 36231973 36274415 36288677 36265005 36247151 36235265 36253182 36235965 36287057 36242551 36182661 36292437 36283210 36217195 36285232 36264451 36269785 36272964 36234643 36225064 36210738 36282609 36192340 36273275 36331231 36308296 36266878 36288285 36292646 36303116 36245526 36205934 36258281 36240629 36237076 36205882 36288984 36285801 36287280 36258869 36274252 36267917 36281260 36293834 36298914 36308242 36304518 36229407 36290350 36355471 36268466 36320358 36298577 36316696 36247188 36327232 36314725 36250331 36275772 36320076 36289118 36268027 36292593 36290191 36322617 36242034 36340380 36265285 36269243 36279313 36311557 36301046 36303940 36268949 36296125 36296438 36307782 36295230 36234783 36277759 36332290 36291993 36271068 36322794 36274068 36314629 36258842 36231667 36283071 36319429 36270658 36229205 36259371 36256127 36319524 36270243 36220450 36318004 36326500 36263901 36296900 36317795 36338819 36356615 36272653 36289446 36337651 36290376 36291159 36288508 36316351 36346787 36302865 36347988 36283456 36306431 36301597 36345562 36303157 36329311 36297424 36299036 36292772 36288334 36357100 36365906 36271223 36361004 36341317 36342106 36282784 36381599 36333563 36332143 36397023 36279262 36284896 36286947 36271527 36300007 36408857 36345749 36304646 36294015 36338647 36344538 36230161 36288453 36364256 36362812 36378740 36317587 36286701 36362995 36285859 36298153 36281874 36320991 36363108 36247537 36290035 36354878 36343692 36349754 36321754 36275409 36352894 36288396 36323143 36321392 36305748 36288286 36269784 36378172 36338329 36370063 36336675 36316650 36356603 36330731 36344820 36314063 36388655 36360715 36348225 36254786 36250122 36337065 36347779 36311132 36287678 36381608 36337120 36336107 36288611 36304882 36335975 36396749 36342811 36391172 36353157 36378364 36369522 36406340 36318489 36375464 36312867 36345923 36326876 36301112 36316528 36381623 36352011 36405314 36346964 36428452 36366159 36308209 36412661 36405146 36396838 36378929 36347263 36379806 36297911 36330330 36362992 36307920 36344837 36367545 36373687 36437697 36341048 36318555 36362043 36376852 36345658 36375075 36344378 36356658 36363286 36398142 36332725 36339214 36358744 36417357 36339318 36358006 36417647 36370846 36384227 36426793 36413142 36388655 36364685 36342542 36343025 36378237 36285622 36382862 36390715 36358133 36403059 36378933 36377471 36408894 36368756 36410301 36320652 36339998 36341408 36376375 36371849 36367628 36340343 36357091 36430320 36344458 36422262 36341931 36354079 36364539 36336438 36346752 36369473 36406504 36365903 36456924 36392659 36381016 36365691 36332986 36404195 36380099 36366829 36429262 36360972 36359405 36380647 36334192 36350150 36450326 36368345 36449587 36381385 36411292 36373074 36395425 36471574 36443406 36408595 36461548 36446807 36414729 36333328 36446934 36359494 36388116 36383172 36410469 36460069 36371898 36350844 36401182 36384484 36407519 36328879 36417843 36361118 36436573 36342213 36421906 36411269 36361286 36378106 36422103 36381363 36325282 36425138 36375925 36460013 36436820 36423783 36383234 36347868 36426174 36369958 36438212 36384204 36336833 36345558 36381387 36475641 36389636 36398255 36385186 36393692 36333222 36403987 36350463 36419009 36383770 36419233 36390557 36373431 36438227 36414166 36356964 36394706 36369372 36414621 36461547 36418984 36415865 36483384 36405442 36387518 36501468 36347793 36372793 36443438 36430558 36442207 36303032 36422618 36471463 36458766 36374237 36398566 36377231 36423667 36388143 36439754 36460565 36404278 36448716 36384363 36410445 36397429 36402035 36426535 36458164 36413883 36378449 36374628 36421700 36426711 36439783 36377711 36449756 36436141 36457483 36418828 36413978 36444554 36404880 36445212 36415375 36467523 36449822 36421344 36439231 36470819 36407262 36486991 36404055 36504770 36455435 36400283 36462339 36407254 36450423 36518294 36502318 36434768 36450955 36447804 36403976 36392885 36377094 36492851 36449034 36373675 36435426 36416741 36364659 36411896 36364891 36467976 36411167 36468932 36408962 36398335 36406933 36405901 36514653 36479544 36511123 36418242 36443880 36429174 36419467 36460461 36456353 36392274 36431549 36462189 36504509 36410976 36506429 36494701 36451251 36430065 36489473 36347952 36349557 36460863 36430608 36507014 36552579 36426071 36450359 36513975 36417895 36427708 36416897 36541772 36420084 36491464 36460387 36479003 36431515 36546964 36502418 36431697 36454493 36441787 36499312 36385047 36501489 36517846 36497522 36439063 36441486 36393189 36518482 36492785 36397026 36478322 36473085 36499859 36504192 36427130 36478775 36456220 36516920 36534351 36448588 36534093 36435354 36460133 36500412 36495012 36508882 36541842 36435823 36523061 36536043 36484779 36457865 36402737 36487431 36423080 36481577 36464702 36435323 36421018 36483308 36468022 36460574 36498137 36511202 36494766 36480647 36472633 36450448 36476666 36483130 36427994 36501869 36470075 36451284 36511935 36477350 36492394 36445733 36497301 36513540 36506010 36454556 36480369 36512237 36536773 36526682 36455760 36494496 36478349 36480780 36415882 36409294 36443842 36495908 36543033 36501787 36486232 36532709 36453819 36464514 36472822 36516673 36467790 36546947 36502475 36481369 36523473 36496139 36549324 36520722 36551778 36415891 36475921 36482286 36427484 36488305 36416672 36481236 36491923 36498767 36467351 36533248 36452935 36522833 36541481 36481037 36551493 36549792 36578321 36480033 36555159 36511537 36492306 36514320 36474472 36494794 36499328 36494684 36521959 36493888 36604561 36495443 36525165 36480425 36461451 36520582 36544845 36484513 36495083 36537272 36528948 36564138 36500950 36550180 36546042 36633507 36463105 36537403 36524920 36511120 36522303 36484478 36588222 36504735 36599451 36379218 36557172 36456235 36492551 36570162 36514645 36468367 36527108 36503950 36593790 36480921 36477995 36539852 36562373 36514131 36518464 36454132 36584691 36588061 36533472 36462071 36619263 36539051 36502660 36543505 36578830 36529300 36533723 36517080 36544399 36465920 36498516 36509985 36548217 36521285 36598075 36525379 36579231 36501257 36529550 36510355 36528994 36600216 36551268 36591304 36604709 36539317 36543337 36591488 36510760 36555719 36538296 36446725 36554723 36529245 36552545 36619063 36539632 36558613 36505464 36569893 36540119 36537011 36580332 36533741 36580844 36521811 36565527 36557159 36536561 36607096 36565321 36586063 36607662 36578944 36548700 36528805 36467709 36578042 36644012 36519860 36564610 36562185 36592332 36551579 36514825 36493203 36601777 36592435 36607518 36585031 36625041 36657558 36613121 36525117 36598764 36568878 36604416 36533644 36513417 36543718 36608106 36525861 36606920 36584151 36556284 36589221 36540232 36600818 36501021 36565394 36608811 36547665 36570819 36551265 36601194 36596319 36522654 36551541 36572137 36627460 36526118 36539470 36516075 36571975 36573233 36584959 36643707 36610933 36559155 36556967 36539633 36577556 36615547 36525557 36568757 36607136 36601403 36584804 36658153 36585628 36640501 36657786 36650708 36568495 36607110 36564578 36587451 36564256 36556912 36628311 36623730 36575622 36607364 36552224 36633687 36585161 36546179 36566195 36684377 36559442 36614972 36596702 36571928 36613347 36597726 36668888 36644908 36594479 36502853 36570900 36561871 36591704 36554518 36544342 36553941 36597307 36616246 36693299 36558124 36540962 36590150 36616012 36576692 36604393 36592765 36592192 36668315 36541231 36631038 36597311 36636078 36549930 36599589 36652642 36604349 36599741 36558332 36629260 36547473 36656320 36602923 36613248 36584051 36586642 36579919 36603262 36624355 36623848 36584558 36683948 36579127 36620829 36694213 36564637 36632157 36616913 36623437 36655957 36654317 36560051 36618412 36534401 36621703 36569000 36646980 36561211 36615796 36645278 36610173 36601814 36597827 36639740 36611332 36671658 36612871 36607947 36619304 36610965 36609616 36571310 36611104 36656397 36630924 36640428 36632116 36579272 36614218 36611964 36604114 36619029 36661242 36600044 36519794 36608683 36585056 36633122 36668363 36644579 36658155 36573397 36584405 36629619 36624414 36733655 36685448 36620240 36667150 36616717 36642794 36685522 36662633 36658087 36612818 36626147 36623207 36617073 36604704 36653071 36734910 36577408 36642622 36627219 36676285 36603803 36571675 36647756 36628069 36576559 36635351 36732786 36687737 36633392 36708970 36597600 36630367 36642289 36644266 36591703 36546352 36605632 36634757 36622892 36584739 36683359 36627028 36686600 36693370 36638053 36649865 36643368 36640607 36736556 36587481 36699021 36606595 36680223 36654294 36705225 36706387 36622771 36670656 36704552 36630012 36667958 36614293 36630032 36596837 36684941 36670334 36619383 36660248 36730975 36687703 36624003 36683547 36678778 36666664 36614543 36730682 36609618 36658386 36654792 36634966 36694606 36692571 36637862 36645538 36700932 36659708 36660695 36653838 36695202 36654119 36670609 36651869 36633320 36615403 36657309 36673486 36700861 36698891 36647170 36610191 36597085 36685926 36681976 36586221 36608073 36717888 36693422 36660214 36689082 36749520 36672595 36653455 36665808 36648117 36698974 36745185 36704973 36625422 36707794 36705864 36671078 36654504 36721740 36585141 36600236 36652036 36712256 36747473 36574259 36660360 36625828 36663005 36690892 36652998 36695860 36768435 36760896 36735499 36688229 36722415 36767617 36677535 36727602 36723324 36656976 36700409 36702827 36667117 36758592 36647045 36728905 36704081 36696825 36681799 36652727 36680042 36694142 36665072 36712257 36704914 36784010 36733609 36770438 36674968 36747941 36686675 36744979 36653869 36666667 36675539 36591698 36687841 36715234 36676125 36686019 36714134 36712547 36705656 36731365 36741826 36662379 36820093 36751849 36730965 36785050 36680099 36720706 36725724 36685636 36729889 36748334 36671869 36715514 36746535 36734849 36661486 36736302 36686690 36661841 36715255 36686314 36716543 36799208 36683688 36676207 36726022 36694558 36743333 36731056 36740506 36735817 36722519 36701079 36746640 36751548 36717007 36737424 36652551 36700978 36751173 36680059 36689532 36645965 36642593 36689102 36779804 36687629 36681809 36674138 36674186 36744138 36753491 36715803 36739870 36715626 36756345 36697471 36738396 36789038 36814340 36742724 36666258 36743545 36751512 36684722 36702159 36771215 36707101 36807457 36753028 36766928 36792709 36735355 36704429 36676237 36770197 36797329 36762819 36703094 36739010 36699939 36773625 36799274 36733981 36809636 36763302 36745189 36754559 36794648 36828841 36780078 36752596 36732796 36802274 36748325 36745907 36726529 36817183 36765360 36790815 36786479 36745979 36710904 36786948 36765532 36776015 36763447 36771123 36764508 36743209 36770989 36735451 36711195 36709921 36763227 36722185 36820189 36750237 36704962 36765462 36788697 36750030 36790760 36738376 36762257 36788158 36729480 36810720 36792640 36781260 36706525 36802131 36756537 36723003 36717332 36708598 36826188 36763030 36754321 36748073 36785494 36796570 36763442 36771991 36783050 36762587 36801202 36737053 36766926 36736770 36776446 36714773 36723794 36811489 36735148 36755824 36711423 36779949 36783841 36770681 36791884 36754859 36753322 36753789 36779759 36760994 36740663 36740691 36775623 36786787 36719594 36750069 36715903 36810120 36778472 36810230 36839677 36763754 36856935 36765874 36727307 36798630 36789300 36776405 36786076 36744178 36836369 36745161 36856936 36831906 36723365 36713212 36779725 36785544 36822030 36805541 36762477 36840201 36801573 36835844 36840936 36677156 36691987 36892842 36785055 36820390 36804804 36791146 36849125 36845350 36794116 36812667 36775767 36789671 36761909 36816789 36882560 36775316 36808984 36855443 36814827 36809465 36806844 36777497 36859769 36807081 36821341 36845233 36793050 36828043 36766475 36810369 36858394 36831459 36798232 36743571 36791867 36849831 36871564 36848671 36843364 36757757 36898248 36770655 36845018 36813315 36807321 36850798 36813717 36777469 36823011 36810415 36852456 36842485 36894828 36764504 36822229 36782052 36723935 36781004 36847146 36764831 36756952 36787906 36877771 36792879 36926550 36813738 36803229 36767942 36881361 36790768 36871729 36805063 36832798 36809981 36882502 36836275 36831061 36869236 36824360 36874349 36852231 36829877 36826858 36826235 36798193 36796323 36814897 36834664 36896191 36790586 36878113 36877192 36805797 36834079 36840607 36772460 36785029 36849766 36865167 36854206 36839537 36826385 36869172 36878011 36790584 36938437 36839797 36828672 36849531 36883735 36889075 36846143 36793196 36915920 36862673 36885142 36776002 36878832 36844762 36820208 36814883 36812965 36809002 36811823 36784370 36863966 36807621 36822071 36847511 36829891 36893956 36890933 36849214 36793388 36901671 36781397 36855243 36788986 36877275 36861422 36848321 36718883 36890315 36855890 36791081 36798769 36828188 36855992 36895594 36840764 36909112 36830011 36905894 36854684 36799706 36890027 36905640 36826261 36840142 36905031 36826633 36850941 36843128 36960123 36870168 36895756 36816737 36783148 36826539 36760713 36875417 36826401 36833573 36926883 36848472 36854831 36893760 36869227 36921073 36881550 36884611 36885415 36870517 36857150 36827545 36897604 36895138 36805360 36817037 36866804 36802314 36910783 36859666 36825198 36912042 36848903 36857953 36883586 36841643 36866496 36822524 36888877 36851997 36876538 36804108 36938558 36937319 36825483 36889888 36767682 36954627 36860506 36895280 36906151 36826410 36907500 36859539 36877210 36948691 36930688 36929575 36871322 36856690 36907428 36941755 36944597 36871563 36897328 36927485 36979873 36852288 36922423 36831188 36890278 36883610 36884421 36930479 36866543 36950450 36884380 36887799 36866581 36916433 36904439 36937580 36819906 36916016 36864472 36921203 36940726 36936281 36843291 36929931 36808767 36930789 36879761 36950992 36906213 36859483 36878086 36827231 36846449 36875183 36907530 36900617 37015347 36885141 36849935 36901778 36946729 36920262 36907310 36894230 36941923 36858667 36945451 36905217 36881303 36929826 36894443 36961552 36899613 36894640 36933960 36933649 36833755 36917907 36884436 36905711 36872934 36856322 36891284 36883082 36914942 36889066 36838038 36897494 36936301 36960264 36928773 36944493 36927515 36946401 36906757 36919789 36916009 36904908 36978074 36835146 36888971 36846899 36853729 36897420 36878287 36984599 36933814 36955881 36840879 36915150 36909925 36921898 36915027 36924227 36904814 36914358 36917995 36904226 36869274 36910429 36957665 36891278 36932594 36903221 36914927 36936324 36974471 36883029 36896518 36944617 36966522 37019585 36905014 36920996 36887149 36935083 36936425 36992912 36936138 36917826 36825322 37006837 36960989 36958414 36894882 36909696 36962138 36909021 36913428 36933941 36923168 36946029 36922969 36998290 36976136 36863009 36921544 36945476 37003505 36944573 36925358 36909307 36904143 36929761 36936167 36924583 36970637 36983514 36953750 36886294 36952575 36873181 36899720 36972470 36946415 36948918 36971689 36875370 36933164 36969219 36897391 36975876 36982200 37005172 36949423 36929146 36959852 36909710 37006125 36939782 36910718 36912124 36951174 36917355 37004208 36948836 36932648 36947270 36968844 36991436 37048510 36900821 36996679 36961184 37005792 36961179 36911378 36962487 36981098 36940390 36959092 37007892 36980747 36970508 36950933 36993699 36993361 36935405 36960032 36941370 36906139 37006059 36992392 36911050 36920602 36948216 36924955 36962199 37013879 36958775 36997925 36989741 36982420 36894365 36876948 36957096 37061439 36923713 36933265 36957650 36905065 36929410 36967514 36996053 36989046 36961628 37017203 37044433 36945364 36872428 37004571 37015594 36965827 36956040 37009537 36945186 37003839 36961622 37012453 37006335 36953214 36991987 37038536 36985970 37003798 37024982 37010798 36968728 37033324 37015089 36888756 36991121 36992202 36981000 36984760 36961511 36995773 37061248 36972297 36944941 37090090 36940493 36948310 37011815 37008647 37023129 36993325 36987209 37058685 36940694 36988623 37018178 36982393 36999357 36979980 37011372 37115039 37013183 36975881 37001947 37011394 37007055 37004597 36962828 36942933 37010009 37002053 36988829 37028825 37020673 36912220 36995656 37007682 37075909 37028243 36984224 37080879 36991969 36966514 37037208 36975054 37019000 36985185 37026543 36988021 37022774 37063116 37034501 37105096 36987839 37016824 37048577 36943160 36967783 37080326 36981625 37011095 37048611 37021589 37044278 37091159 36936406 37034503 37020751 37033787 36969665 37058552 37005167 36980621 37030713 37018754 37031424 36963374 37007559 37036257 37024458 37048653 37004080 37032808 36924423 36960862 37074636 37014583 36991542 37073022 37028626 37047255 37010865 36956705 36989467 37015383 37016344 36987005 36963760 37044641 37039098 37010126 37046920 37051711 36975375 37013376 37052376 37035092 37021700 37022374 37034489 37016739 36993170 37000975 37050138 37096574 37062249 37013936 36983965 37056013 37050820 37029538 37105699 37028284 37006471 37020374 37055835 37038727 37106840 37046401 37112157 37031907 37031073 37097051 37040996 37072278 37044823 37043312 37079850 37069037 37029475 36996059 37072749 37105247 37067238 36983317 37080207 37076168 37143780 37070438 37081331 37029249 37088042 37083798 37051471 37121961 37085779 37067537 37053707 37082646 37055845 37048819 37018436 37096768 37059152 37109150 37021305 37012320 36992714 37038553 37023082 37115449 37048023 37060569 37037759 36966187 37082030 37084709 37029878 37056237 37100573 37037779 37062664 37100704 36962145 37068305 37122236 37130026 37103944 37063717 37051111 37040870 37051331 37049585 37105968 37058318 37097009 37079531 37074173 37028253 37120838 37067398 37089858 37105215 37018824 37066096 37077058 37065312 37060534 37085634 37093365 37046600 37091501 37144643 37117882 37057315 36977847 37080098 36989341 37061172 37116504 37096565 37120242 37050864 37110959 37058422 37082278 37176953 37034949 37132579 37010527 37119952 37165598 37111673 37108055 37106802 37155685 37086672 37046437 37094481 37045348 37033527 37064260 37137547 37109920 37039908 37080766 37108701 37107816 37036740 37071632 37192216 37099736 37182737 37047921 37147003 37091612 37177286 37093321 37043668 37066211 37082525 37140259 37109125 37096981 37140393 37069669 37167500 37109567 37018761 37075208 37061146 37080053 37111847 37126448 37125987 37145214 37119940 37112091 37142736 37040357 37122444 37075142 37139301 37167343 37066925 37103281 37168639 37167335 37068499 37114081 37214346 37149497 37131102 37162645 37157881 36996658 37089495 37054502 37132170 37082916 37183666 37134484 37128076 37209509 37154535 37079554 37098160 37125209 37064771 37067435 37122853 37150951 37130400 37156021 37230464 37157543 37081234 37167336 37144637 37153176 37106445 37124544 37164097 37115896 37040754 37135140 37081474 37129716 37137555 37110971 37149436 37127941 37134617 37121062 37122805 37187560 37203591 37092855 37112408 37141774 37113912 37102670 37139518 37080068 37109120 37174494 37181391 37140609 37129445 37103841 37184467 37070003 37079351 37285334 37173290 37112064 37064851 37193456 37167878 37145809 37137485 37169822 37122769 37159280 37212221 37146279 37171550 37138034 37178434 37198525 37131981 37187201 37178691 37143220 37144441 37193293 37191923 37173508 37162846 37166687 37135253 37064110 37141799 37147809 37127776 37209039 37155022 37153440 37170778 37120744 37129989 37165781 37162691 37182761 37122157 37107894 37210674 37181001 37184818 37134344 37160099 37213984 37212163 37104080 37158050 37189837 37213550 37199912 37163769 37143517 37179318 37136018 37130590 37168184 37177186 37267678 37222359 37155233 37142083 37134532 37232127 37159806 37183083 37176784 37174615 37222300 37165012 37180973 37190762 37211784 37178971 37212845 37259335 37232074 37094152 37150742 37201571 37257222 37215295 37210113 37203799 37154641 37191992 37155325 37131990 37190815 37153775 37217416 37160300 37221980 37210859 37199704 37163297 37171964 37247146 37201072 37240954 37211670 37178836 37184285 37213815 37169343 37197989 37283299 37121325 37251333 37125414 37205158 37249587 37153585 37202586 37221581 37210962 37194517 37261310 37132571 37185246 37233019 37171473 37155763 37162715 37241935 37226926 37235219 37261192 37214487 37217628 37160963 37256591 37103469 37195870 37164288 37188757 37244497 37251720 37160236 37255822 37168217 37222864 37233901 37124251 37218475 37228181 37308264 37214241 37216533 37196338 37272767 37254147 37243873 37193419 37195405 37221767 37273338 37233169 37263229 37188063 37290890 37172600 37213268 37206726 37216696 37239921 37186106 37230676 37239210 37286787 37227888 37152413 37212878 37268383 37247370 37180686 37270690 37210829 37186380 37225468 37232469 37305169 37252474 37322653 37303320 37133153 37220915 37223288 37185223 37260176 37163622 37252717 37221871 37261877 37250495 37241502 37213379 37215096 37191758 37255564 37214225 37214727 37204467 37223081 37274766 37277398 37194840 37290913 37221459 37198788 37234319 37252939 37265864 37249143 37236895 37237601 37220701 37237999 37235167 37262081 37271880 37226370 37258185 37239330 37188387 37289054 37321378 37304487 37289670 37277460 37180140 37224985 37284716 37226688 37224427 37261596 37264915 37251299 37232317 37220031 37201811 37306225 37256178 37258525 37329307 37243210 37216917 37285700 37276404 37284934 37290071 37238487 37282289 37261584 37223599 37225944 37218478 37250936 37224159 37235093 37262280 37258653 37237278 37251790 37279125 37289604 37242334 37283737 37241418 37240989 37220623 37262820 37295371 37271750 37267311 37231493 37262229 37246584 37283203 37275040 37245821 37299742 37303214 37259257 37248130 37269607 37357530 37294579 37307468 37258118 37255269 37219780 37266483 37257301 37255113 37303650 37313575 37343775 37296830 37195187 37255142 37311400 37324365 37370571 37342828 37211374 37299792 37243656 37248128 37248635 37303267 37282387 37340384 37228367 37263269 37302073 37264566 37292786 37268089 37274907 37346867 37299072 37241358 37337031 37280930 37279835 37224486 37277970 37266688 37320523 37332797 37256306 37299686 37331649 37233312 37345387 37269896 37341222 37302017 37258620 37292540 37295175 37335775 37297864 37315266 37372763 37291936 37336339 37297572 37262859 37339282 37298570 37204854 37351963 37373131 37318274 37263742 37320742 37287575 37314904 37245606 37324481 37327786 37332485 37335468 37304088 37383029 37357596 37285877 37296470 37311491 37354126 37322996 37337965 37294213 37352831 37338653 37275670 37269705 37308176 37350494 37291536 37367557 37342968 37314419 37364199 37338215 37351471 37353136 37285370 37322167 37341860 37324124 37340804 37323903 37282778 37364385 37278405 37316858 37337471 37315163 37253331 37294365 37293777 37360428 37318253 37373482 37325546 37323926 37366537 37366902 37384364 37275191 37298392 37339989 37268043 37282780 37286265 37280716 37357619 37327715 37343731 37277307 37303699 37347268 37377716 37358257 37425469 37352482 37296245 37338007 37354727 37363163 37370060 37356838 37329769 37336515 37408486 37255990 37328578 37410328 37350305 37376632 37388705 37345677 37322038 37342933 37304888 37258800 37314485 37356048 37310686 37237667 37322675 37361004 37344243 37350341 37318626 37367313 37395425 37298860 37312407 37351602 37345348 37318871 37297787 37339470 37362232 37321287 37316875 37364856 37365993 37383303 37334366 37361262 37327255 37368832 37382285 37370290 37391388 37393980 37301255 37405449 37344995 37352626 37345075 37320194 37425200 37376633 37366357 37370869 37380331 37342848 37403792 37304171 37361208 37376439 37369358 37376293 37398236 37287144 37408933 37428846 37341621 37378387 37375082 37344932 37340728 37368180 37343577 37387668 37389304 37344043 37352561 37339466 37370356 37374316 37312892 37345327 37369118 37386597 37317594 37401365 37377580 37395914 37473853 37343123 37349376 37347661 37430042 37423234 37400627 37420511 37362468 37389327 37439387 37340289 37350429 37385305 37404957 37383425 37350735 37428740 37382186 37411181 37439494 37360574 37394160 37337417 37382601 37447745 37385639 37326379 37464018 37462461 37305432 37432021 37408101 37414499 37400428 37361776 37416989 37372016 37408441 37399467 37394030 37406470 37341493 37388342 37427236 37406524 37357790 37441976 37401056 37341896 37375283 37365491 37409463 37373172 37394383 37373412 37419642 37391393 37420422 37457337 37430635 37303569 37439971 37492029 37400096 37416810 37480836 37494325 37470630 37421571 37421946 37370158 37377942 37373263 37442254 37408116 37421873 37369380 37417599 37401531 37371671 37346615 37324259 37391200 37432480 37388096 37458570 37439960 37401434 37448582 37462560 37422655 37386071 37355097 37435873 37428243 37408274 37440673 37488824 37431023 37352418 37444308 37423783 37443004 37420167 37429880 37375121 37379245 37401454 37407539 37377873 37459407 37493171 37425521 37455360 37372952 37401221 37439867 37379964 37409996 37399431 37412849 37359250 37407510 37423518 37388156 37500424 37431130 37426453 37458018 37432735 37398345 37451343 37424990 37404394 37418893 37381175 37430674 37431147 37383652 37456342 37454623 37480719 37400459 37467685 37411843 37510276 37489646 37381102 37418652 37326682 37430022 37474674 37445906 37479571 37454531 37451158 37481569 37408522 37437874 37521591 37477244 37417144 37411942 37359795 37528982 37462051 37443541 37473082 37429895 37395906 37466881 37394492 37401273 37467922 37418428 37504078 37542106 37429009 37470903 37464762 37450732 37417626 37450310 37442719 37435292 37475995 37487975 37458970 37404789 37468806 37418682 37467446 37457688 37443428 37483209 37465822 37414925 37483013 37421161 37461843 37442894 37416297 37435784 37489679 37513950 37474944 37501901 37383764 37410544 37421452 37426818 37544201 37463623 37444768 37497054 37463295 37460579 37497806 37451258 37449906 37507616 37534446 37485994 37507577 37435250 37379995 37468372 37490198 37490456 37496228 37492808 37435221 37437912 37468274 37405110 37471435 37517581 37475569 37517785 37400923 37402404 37455838 37483425 37394561 37529649 37468452 37446190 37535837 37379555 37451910 37489018 37500448 37547793 37443843 37456636 37455503 37470890 37469463 37437831 37390529 37486069 37505163 37469297 37471385 37499431 37483620 37537579 37490179 37512945 37451708 37470786 37524455 37445975 37469795 37486938 37451383 37454721 37504747 37386192 37422872 37461414 37445098 37516967 37503674 37490568 37455612 37608670 37437608 37504525 37540515 37551487 37362209 37547490 37566720 37457303 37462468 37531707 37486248 37488513 37599488 37490498 37524354 37533099 37556878 37450410 37490780 37536489 37468408 37467506 37539283 37547295 37442416 37416246 37516967 37488069 37457621 37444108 37501497 37504880 37508195 37507796 37482615 37548313 37463201 37492513 37527576 37496950 37453085 37543804 37497156 37484137 37536642 37479801 37500636 37562709 37534998 37411545 37489730 37477911 37514682 37573241 37450546 37472158 37532115 37468168 37534318 37542509 37596862 37545952 37474619 37504245 37480293 37454930 37527052 37512361 37514415 37529159 37520186 37575760 37498163 37505101 37581083 37508838 37461197 37523437 37447136 37519562 37490939 37537322 37500239 37533962 37534508 37578192 37576426 37549644 37469370 37532481 37543838 37474455 37498784 37604087 37500149 37542711 37551209 37624765 37540491 37556190 37557300 37490266 37576696 37565140 37557949 37541135 37593905 37490358 37555897 37539284 37489515 37585134 37573402 37461002 37519396 37530733 37667212 37603288 37470599 37561619 37575881 37532185 37544265 37575331 37592518 37608569 37538861 37480634 37543657 37499915 37586533 37511503 37549907 37503827 37513133 37560322 37565803 37459435 37585405 37590549 37555489 37646277 37573213 37486863 37598935 37625145 37562223 37599308 37602915 37527683 37630605 37562105 37546538 37538920 37509761 37556966 37582485 37584237 37551644 37576408 37594408 37554922 37594953 37650235 37585641 37492371 37577214 37593159 37550739 37599300 37578952 37605370 37502458 37579092 37576514 37540186 37621039 37599248 37533644 37559471 37557955 37599101 37531229 37605920 37473863 37506093 37617291 37537298 37594166 37534399 37567245 37586727 37547883 37537569 37570741 37569293 37586899 37526197 37613383 37548490 37553037 37591118 37537228 37599849 37561980 37595569 37531534 37551634 37614138 37570105 37577997 37590321 37597074 37545205 37565203 37541023 37623997 37570740 37657668 37664199 37595014 37573975 37530820 37640559 37622679 37624977 37630259 37602813 37591604 37493064 37606982 37607572 37651378 37625554 37611565 37599527 37557298 37604688 37610514 37630013 37596632 37600496 37577942 37615580 37631180 37558037 37550936 37545487 37611861 37571472 37588190 37625767 37640086 37595497 37571363 37570962 37609228 37624510 37571839 37646164 37692544 37643118 37625681 37582648 37674181 37619249 37652660 37626942 37620241 37633936 37624922 37659952 37664667 37579932 37598612 37604093 37661305 37610158 37558817 37632009 37620233 37620062 37575447 37595240 37627898 37654458 37541388 37586207 37628015 37569946 37539334 37544793 37566687 37579879 37688053 37621759 37721444 37648698 37662361 37585329 37696075 37653988 37626497 37622656 37622646 37637927 37626870 37666700 37674757 37639520 37632338 37560997 37659423 37635696 37616158 37677580 37636882 37662785 37662458 37667532 37624152 37639339 37675302 37656039 37625632 37630450 37673222 37650078 37620858 37639745 37595593 37649261 37627868 37643981 37583281 37608378 37634837 37639352 37647035 37611149 37670344 37715202 37645495 37634419 37566617 37641289 37623311 37629143 37654731 37597736 37641857 37618816 37691926 37631921 37677696 37709017 37563368 37648562 37671877 37700733 37665688 37656429 37624042 37655328 37605624 37697401 37679662 37648801 37605227 37637355 37677413 37645829 37696253 37639828 37627055 37668610 37639704 37650416 37676400 37624789 37643561 37659617 37709439 37681371 37615061 37707910 37709302 37750782 37672654 37709530 37663256 37606157 37683683 37643905 37651774 37730644 37614996 37712041 37750591 37642094 37682963 37696980 37652491 37647753 37706780 37706316 37737973 37728331 37677384 37723191 37614176 37670823 37669948 37750806 37679920 37647868 37692740 37744716 37645923 37634561 37647244 37751456 37691751 37710676 37732919 37633635 37730279 37704222 37740687 37655367 37620286 37700423 37766924 37729282 37731423 37658094 37645625 37695419 37690290 37590624 37657272 37653998 37749928 37668326 37687790 37771019 37717618 37681877 37689957 37757099 37684260 37714004 37645842 37677835 37766279 37683102 37735467 37656746 37700595 37705570 37672837 37721702 37652024 37711189 37656644 37725951 37730906 37689172 37786125 37752748 37750545 37683685 37667779 37694015 37722458 37590666 37838830 37742856 37747539 37730849 37763591 37730896 37668755 37616478 37685593 37696155 37715015 37783549 37733651 37724489 37689375 37729162 37717811 37711963 37632637 37687725 37758628 37742509 37661215 37744948 37714564 37675215 37727149 37710892 37706297 37697375 37703325 37678865 37679981 37720671 37687560 37769630 37709116 37716454 37772966 37711349 37671258 37749159 37702001 37695345 37732396 37729039 37704406 37711293 37718006 37713677 37704695 37691905 37737001 37760981 37739618 37727463 37690523 37725476 37731056 37697543 37745280 37737016 37800016 37784936 37747314 37692943 37761093 37738084 37714201 37798456 37664502 37772493 37729046 37763582 37690983 37731827 37817581 37770650 37680712 37756511 37704232 37713348 37820765 37808664 37732681 37804704 37807754 37733415 37752926 37683243 37775630 37738635 37788696 37807908 37747601 37781709 37765693 37721221 37689529 37715087 37772199 37743685 37799234 37828276 37690261 37633553 37811278 37741240 37726681 37722611 37731496 37791018 37727438 37788487 37774756 37759503 37791473 37777661 37743281 37747646 37715553 37690758 37724629 37726212 37709310 37794034 37806681 37778493 37673255 37726456 37813655 37779905 37687533 37768084 37862199 37726059 37794922 37733628 37787926 37791156 37848211 37772036 37783970 37714526 37799364 37867476 37735118 37795922 37753064 37742634 37800474 37714138 37784885 37739166 37743823 37795541 37750869 37748497 37812025 37771525 37774849 37707635 37815362 37798622 37701520 37731255 37779090 37727885 37773779 37754341 37752328 37767203 37770631 37826960 37807035 37738693 37777626 37757929 37858048 37756116 37788064 37739650 37799642 37817523 37821259 37816155 37793852 37798817 37762191 37776705 37771419 37715045 37798483 37825414 37810749 37761647 37808364 37779270 37819793 37800630 37761713 37793072 37822313 37821675 37798061 37708056 37711539 37765757 37769917 37830935 37740189 37809893 37780686 37733953 37758954 37727843 37745110 37868858 37787687 37801194 37755249 37784742 37784197 37867053 37807282 37738396 37843144 37767255 37818312 37771063 37815639 37793629 37755436 37851251 37796200 37789501 37761771 37831139 37812566 37719072 37836716 37691941 37789785 37806026 37838779 37791056 37853591 37819177 37814829 37902615 37783498 37765380 37713571 37781219 37821815 37865881 37820046 37801901 37788896 37808289 37851861 37751274 37858074 37835109 37810125 37823910 37880139 37817689 37782056 37908510 37856316 37757318 37810437 37809989 37806260 37794459 37772128 37857080 37820694 37860509 37778001 37834127 37818380 37811254 37847541 37825101 37760866 37848866 37816899 37822503 37832963 37834333 37864492 37825351 37807439 37830898 37878128 37753960 37832926 37800158 37836736 37854463 37782082 37778938 37775438 37805359 37806316 37823277 37789917 37831212 37762415 37874563 37806091 37806273 37893281 37888694 37786704 37844887 37861140 37887513 37838004 37803223 37793473 37901362 37850654 37896861 37820892 37847902 37826722 37890914 37830427 37791348 37882742 37763192 37893843 37793306 37774253 37900445 37867411 37925307 37888383 37821476 37860200 37830674 37824567 37793857 37788714 37791794 37851632 37827998 37900943 37853885 37815509 37785038 37864539 37869912 37845319 37807686 37914944 37889498 37885725 37812066 37861170 37759866 37837273 37849481 37869052 37852230 37870010 37882844 37889644 37805484 37832909 37829211 37904010 37768640 37896389 37816681 37872791 37821559 37863649 37901073 37893542 37863416 37939981 37790235 37830523 37903293 37889628 37834600 37830074 37846384 37860385 37871676 37864804 37875274 37881448 37860051 37826435 37850824 37923517 37845311 37916519 37870481 37871391 37852365 37865505 37835616 37891944 37867721 37806375 37862704 37859905 37875646 37890539 37826045 37863886 37923605 37840006 37915322 37775092 37902387 37769127 37801525 37861111 37855840 37870363 37870965 37814482 37940553 37855142 37900152 37903042 37848597 37842318 37844288 37904814 37873145 37857456 37827353 37876556 37967150 37899467 37907810 37876725 37869293 37895179 37845943 37890373 37829187 37853571 37907319 37860967 37925216 37889046 37903852 37959151 37850247 37872599 37857734 37859760 37860828 37905013 37931270 37895287 37923999 37911783 37870738 37866382 37813293 37847520 37864959 37917775 37922921 37917049 37929409 37887566 37897311 37888464 37875224 37894843 37816476 37845792 37946882 37984617 37852921 37918198 37943041 37879540 37914627 37922906 37837528 37928587 37908357 37965055 37950789 37901123 37910791 37825041 37839200 37924483 37913394 37920635 37959677 37953806 37917974 37981442 37962026 37922436 37937854 37900433 37876608 37874924 37867464 37925827 37874021 37938770 37880899 37950562 37941444 37931002 37954271 37896156 37965765 37837203 37900496 37867282 37995636 37871227 37988744 37991185 37867166 37972686 37941164 37896937 37920444 37899843 37934469 37926498 38006158 37877933 37881117 37905209 37961276 37952393 37898216 37964312 37910310 37986021 37880839 37876498 37930662 37910329 37908709 37860089 37903200 37917034 37904007 37988332 37874174 37934505 37911526 37936103 37967723 37995921 37964322 37957960 37930589 37882097 37906791 37986316 37947085 37913658 37984871 37883480 37906618 37971090 37960129 37873652 37922018 37925165 37939828 37885536 37956522 37973071 37891454 38014871 37857571 37984720 37910683 37994258 37942176 37976342 37958121 37982537 37881898 37932371 37947882 37939222 37954030 37928779 37952685 37981383 37922201 37977525 37943986 37917142 37878280 37933622 37948537 37944040 37911645 37977051 37951374 37915657 37897189 37957475 37998374 37910122 37936999 37899814 37931186 37948716 37988800 37894989 37986330 37999266 37984936 37999877 38026051 37978445 37891029 37942490 37918345 37916532 37926844 37890826 38011342 37979820 37921094 37924965 38012914 38015132 37966598 37970462 38043131 37961647 37938137 37970382 37948804 38000765 37997405 37992548 37960404 38006109 37992521 37906892 37951948 37992884 37871055 37937852 37904884 37957678 37992020 37968040 38021825 38061756 37961622 38030813 38029488 37932824 37974660 37992080 37997259 37995244 37991444 37966493 38003924 38050863 37999897 37897571 38025894 37950766 37969878 37993903 37961323 37946408 37985146 38030762 38043276 38038589 37991688 37959979 38012392 37999715 37948808 37979367 37977396 38026752 37967504 38042593 38010179 37972065 37986825 38004979 37922045 37994457 37931531 37982900 37963853 38009995 38058395 38006856 37973502 38008786 37946573 37991702 37998869 38090044 37968602 38001815 37958089 38043054 37946056 38023104 37972748 38069555 37968502 37976211 38017513 38000210 38048492 38021874 38036620 37998632 38020333 38023324 37985575 38067539 37997033 37955346 37988529 38051852 38049849 38024306 37897659 38042073 38070329 38028212 37961770 38009055 38052471 37949770 37991811 37993788 38005122 37998336 38069382 38000168 38026468 38036423 37958808 38020683 38016106 38033842 37963320 38039126 38003817 38042345 37979523 38045877 38014125 38063563 37977271 38001872 38056038 38041995 37936387 37990420 38070373 37987397 38011675 38016605 38037804 38018119 38073559 38034589 37982096 38052954 37960356 37959892 38077416 38039633 38026414 38049884 38062066 38040361 37981894 38027733 37979350 38001479 37999528 38030003 38004831 38046088 38055773 38040757 38039464 38024106 38037522 38013515 37933450 38071826 38014592 38045148 38082268 38051796 38093530 38005313 37999633 38013626 37974682 37974348 38078882 38078632 38097042 38009227 38055810 38018454 38042223 37974015 37964813 38059972 38040181 38036098 38055166 38085781 38139907 38034890 38075361 38039685 38031449 38019798 38055895 38044740 38029400 37959468 38053484 38030933 38103848 38102612 38074240 38054734 38036412 38035146 38081282 38020114 38072190 38134175 38100545 38107458 38031692 38078700 38048160 38083121 38088302 38007413 38051190 38095640 38054941 38042162 38043688 38039775 37996815 38096277 38042699 37998266 38132457 38059388 38004717 38100663 38087599 38142555 38089709 38116469 38067182 38071876 38015522 38032322 38023955 38021475 38062869 38123047 38017638 38050369 38025150 38085147 37999439 38010833 38079675 38150918 38083170 37990490 38136013 38170254 38135180 38102317 38125493 38114458 38097446 38144854 38123238 38068192 38153631 38045804 38053375 38052536 38085361 38067734 38050636 38137055 38012718 38096008 38073250 38088272 38103974 38090906 38060405 38023401 38099322 38168666 38076941 38064582 38079618 38067791 38148721 38075956 38098212 38072181 38160216 38057357 38099679 38091801 38104157 38158925 38097252 38096795 38104746 38065695 38062965 38116693 38095375 38104706 38055979 38099536 38117462 38120024 38114110 38104158 38066086 38082284 38104519 38035147 38051992 38129732 38148513 38135308 38047491 38168930 38069951 38136800 38046234 38121498 38165674 38136177 38127958 38107883 38143126 38143964 38078200 38147791 38135558 38061084 38078796 38105785 38064922 38139916 38044967 38127058 38074004 38148332 38025367 38091571 38113437 38056066 38135185 38146583 38074094 38174244 38045181 38133679 38076339 38107499 38126267 38050494 38065675 38128136 38107052 38090337 38199211 38163996 38185534 38222875 38135756 38154123 38146359 38162032 38160974 38135676 38109863 38119237 38125609 38138892 38116427 38118551 38170734 38081864 38140238 38188160 38106497 38087904 38184350 38114251 38195783 38100062 38189412 38094330 38158502 38192278 38128474 38113702 38071649 38154743 38177885 38207512 38079287 38100647 38143978 38084513 38055376 38139625 38112269 38159515 38165081 38095482 38113737 38128501 38178122 38093060 38089284 38144705 38116835 38136179 38164047 38085929 38219160 38126290 38174729 38164772 38087993 38205693 38123202 38158562 38071562 38063652 38152225 38145203 38179059 38131419 38159616 38184141 38150444 38130364 38200672 38162258 38135286 38158151 38149153 38159076 38115262 38192242 38172584 38188331 38128999 38188752 38189604 38167089 38178214 38183030 38104881 38130754 38118659 38108627 38179675 38092487 38116298 38082977 38295589 38116141 38068014 38121350 38200594 38173149 38155860 38184797 38075750 38159092 38162528 38156163 38152728 38157000 38200569 38220353 38088163 38157648 38156360 38177424 38163208 38207642 38171236 38103681 38186931 38204405 38156114 38175741 38146869 38208868 38138308 38196286 38190044 38124606 38177509 38158581 38134893 38096827 38098808 38183223 38229437 38103983 38225352 38195567 38143950 38123958 38177779 38164309 38230837 38218262 38171145 38120180 38108266 38193402 38153463 38220896 38143323 38199320 38213076 38219093 38224382 38212863 38141473 38173040 38228711 38206953 38213119 38159800 38223491 38153238 38174413 38133844 38197298 38112820 38205528 38155796 38135478 38206353 38180935 38197908 38168578 38191785 38254685 38247785 38261646 38142390 38223774 38233468 38263107 38214691 38096245 38298537 38162424 38240999 38191750 38237063 38222034 38192530 38237240 38197785 38189793 38212803 38177663 38230184 38180889 38221109 38177326 38158543 38223817 38188769 38244761 38240940 38210221 38270581 38273978 38274096 38227342 38220586 38308193 38134000 38241960 38196838 38187596 38191770 38243750 38204627 38222487 38250654 38221935 38180589 38203322 38308373 38215076 38311419 38196961 38204215 38251492 38237485 38199832 38154793 38253796 38230424 38210775 38174717 38224295 38249211 38205148 38267294 38208193 38202673 38279988 38280434 38202722 38225347 38200566 38192629 38275070 38188954 38166342 38220564 38206685 38235800 38232233 38280992 38282689 38246404 38204028 38251047 38266587 38272150 38256649 38214527 38254494 38217369 38164839 38304458 38249402 38183653 38225405 38171379 38219983 38278789 38237674 38240439 38250863 38212382 38225372 38243964 38248566 38257043 38229238 38249097 38252191 38301329 38202540 38221047 38263511 38301113 38221151 38263105 38253970 38277875 38237980 38286880 38266622 38184443 38271456 38275789 38278791 38297018 38297255 38291980 38309033 38232938 38293343 38295739 38263083 38301124 38347453 38225225 38299632 38255679 38298150 38206091 38262335 38251442 38216136 38324313 38295740 38238423 38255156 38297776 38217358 38290850 38242763 38286417 38367826 38318461 38232746 38320414 38244307 38254754 38284955 38265076 38339599 38238185 38222725 38252724 38268228 38298733 38292940 38249278 38277237 38272035 38291743 38284333 38347426 38250074 38307025 38215812 38281403 38360599 38266068 38261545 38317660 38281516 38314111 38289990 38263702 38238450 38285554 38256961 38259272 38257243 38327358 38346964 38288447 38278078 38323995 38288122 38327706 38312656 38229601 38219356 38250020 38271228 38321735 38245504 38321409 38337978 38278187 38310675 38231259 38298874 38301138 38300935 38291122 38273686 38297163 38350299 38298626 38370570 38278507 38342801 38344826 38378932 38308330 38359473 38256424 38364645 38263113 38276172 38267844 38343493 38344978 38309854 38281403 38349160 38322017 38326761 38381536 38373958 38358035 38348375 38337724 38259997 38263500 38268734 38374145 38355838 38323838 38298079 38353971 38298076 38319771 38323824 38278091 38357738 38328645 38350010 38277204 38273622 38377529 38252356 38272971 38354584 38282179 38301741 38331655 38265336 38356351 38232633 38338685 38363761 38393492 38388398 38302033 38273888 38301203 38334180 38319691 38259338 38320709 38368663 38304863 38315246 38334007 38326274 38307954 38294675 38355104 38314243 38341297 38347848 38369487 38349416 38331339 38295950 38328272 38338275 38239471 38362661 38320507 38370314 38369743 38352731 38372916 38336726 38418435 38410630 38299804 38305228 38384415 38276693 38325949 38308866 38391980 38334799 38403937 38375247 38346519 38308003 38344610 38283311 38348002 38366659 38354357 38411839 38285261 38326467 38258130 38309029 38285171 38297222 38363233 38386445 38332084 38392822 38325927 38342573 38349276 38445963 38399705 38343663 38403179 38382761 38329682 38365157 38365097 38391809 38364104 38362132 38355485 38310424 38364826 38352265 38316816 38376601 38291617 38354731 38353957 38399423 38390812 38265829 38290353 38346723 38336703 38386202 38366696 38432299 38392540 38353929 38313924 38428991 38370794 38320425 38355941 38368664 38375990 38391850 38344553 38357375 38376473 38259909 38419416 38404221 38410080 38374933 38365541 38377965 38435085 38394245 38377418 38356820 38379373 38374145 38366658 38416205 38419343 38447167 38381921 38468981 38436744 38421742 38345743 38372398 38380878 38384736 38382818 38384692 38385315 38370277 38441716 38324293 38413498 38359005 38378049 38430529 38378238 38417806 38429027 38357643 38343061 38371317 38449077 38386521 38386074 38376436 38390303 38384872 38351025 38371726 38398187 38390786 38407658 38410597 38438358 38427125 38372461 38376265 38358337 38382650 38353189 38407553 38380821 38433152 38397116 38388160 38451752 38395703 38412829 38443787 38333180 38525194 38359927 38359325 38399238 38386563 38394687 38381127 38434255 38500013 38297345 38326259 38430199 38476506 38306837 38396288 38425041 38407404 38429527 38376406 38398088 38362513 38390744 38444140 38406935 38382583 38394123 38353358 38469356 38342382 38374853 38378783 38368134 38450967 38408959 38373320 38465988 38409381 38464282 38493715 38392847 38378811 38360440 38458006 38400401 38426808 38423835 38368990 38427771 38390150 38428492 38471632 38404707 38407609 38396210 38393281 38435276 38390512 38388559 38438783 38425867 38387861 38430795 38416036 38409073 38430614 38367742 38428871 38481688 38462218 38457900 38424960 38403328 38467390 38502533 38422898 38383846 38417094 38465525 38401448 38385141 38350815 38529503 38445999 38451831 38409303 38444217 38485270 38436390 38395106 38395950 38443808 38341023 38456073 38399833 38491614 38448675 38463648 38415884 38481840 38447109 38506460 38531974 38569362 38497105 38479183 38475554 38501441 38442945 38452115 38478371 38471638 38492570 38411017 38470571 38437446 38493040 38367924 38445515 38439223 38410851 38519721 38421910 38361049 38414339 38459529 38483176 38482405 38490854 38482796 38394280 38427381 38487395 38450316 38476374 38491795 38481013 38494700 38427884 38451367 38491577 38374427 38460712 38404923 38452291 38430781 38440096 38482485 38453028 38482316 38418466 38474304 38467050 38410884 38403079 38443147 38425111 38531144 38494900 38503610 38448443 38478608 38544040 38448582 38405106 38457315 38523820 38448599 38500035 38484751 38490107 38518466 38419398 38488476 38508895 38460278 38500028 38446039 38463366 38423387 38466902 38552674 38486017 38451419 38493378 38437952 38483339 38399076 38482464 38480077 38511941 38479976 38429141 38489689 38454588 38468314 38489470 38550003 38481089 38485971 38509078 38536930 38505761 38489803 38545452 38458741 38578381 38439994 38538835 38460684 38450137 38389268 38507683 38497717 38507285 38479786 38514705 38511541 38531512 38545021 38494469 38495584 38467505 38535634 38463358 38521386 38455666 38570894 38521934 38531230 38477881 38493429 38528264 38468314 38485520 38532848 38472001 38465890 38382185 38466292 38532280 38448454 38580643 38504284 38491506 38536849 38404123 38475929 38447789 38544057 38465741 38531887 38508914 38488289 38489477 38502049 38488239 38536150 38525766 38517393 38564944 38473151 38516462 38540241 38505741 38530841 38543350 38529468 38497073 38462327 38529368 38451638 38490490 38534583 38496824 38631253 38545754 38510118 38528467 38515309 38450547 38547950 38478467 38495972 38615035 38488367 38489087 38475009 38491932 38543225 38523963 38482561 38500250 38565993 38447615 38451290 38456257 38418053 38539108 38547242 38496462 38530147 38463422 38550110 38613501 38431952 38520314 38456930 38548347 38527428 38499804 38513994 38523444 38557575 38590690 38490063 38493120 38522397 38557557 38550683 38532936 38597733 38602222 38513901 38504134 38520913 38555440 38595715 38522211 38526905 38621055 38486943 38534412 38506666 38542970 38595527 38529530 38527346 38495823 38563806 38548264 38563036 38596408 38592489 38539677 38568584 38512917 38567749 38545976 38533275 38504198 38543645 38561686 38527227 38576447 38559962 38575420 38535541 38555870 38460506 38585986 38554596 38470013 38451840 38516023 38535860 38558263 38505964 38596821 38538736 38587393 38540784 38540241 38522538 38639930 38521274 38541756 38571776 38683829 38575856 38546553 38553703 38577116 38577235 38602321 38561541 38554442 38518589 38509120 38577344 38551087 38542474 38579496 38560268 38547278 38616460 38593611 38580897 38568528 38540548 38655021 38616101 38590781 38525017 38594190 38589603 38521268 38573337 38555137 38517119 38589162 38522188 38546661 38544016 38609787 38603266 38588276 38599177 38604143 38578448 38612314 38571850 38640570 38552656 38673408 38551368 38601859 38530179 38608188 38544090 38547430 38579696 38575553 38563308 38623683 38635935 38613531 38623000 38548490 38586147 38585536 38555368 38584539 38617900 38565835 38602932 38673606 38603961 38572218 38557337 38577469 38607702 38553519 38633008 38620243 38643111 38542654 38635565 38596339 38615598 38589341 38603857 38582020 38646223 38587983 38603054 38589778 38657098 38635142 38610119 38589776 38627674 38596113 38607014 38558397 38654859 38574294 38596171 38606463 38582758 38668890 38582037 38624635 38573701 38597616 38652905 38567983 38583628 38539661 38623157 38603972 38558177 38563722 38607399 38637733 38641603 38545375 38582488 38550354 38589495 38607223 38583678 38557001 38625099 38643078 38603317 38602954 38560556 38651899 38614564 38612166 38574570 38631608 38651540 38669198 38597426 38626753 38643618 38654969 38568908 38618553 38677826 38611192 38667998 38627351 38636453 38634513 38562911 38638426 38627804 38651762 38590514 38583553 38556381 38678441 38628235 38585421 38664670 38608005 38656274 38584569 38663748 38645874 38705419 38594126 38650465 38594538 38586508 38583707 38570906 38717572 38603916 38659970 38675072 38591604 38614815 38629204 38574526 38602318 38596547 38688934 38681100 38593670 38623839 38664300 38594603 38672335 38603248 38612385 38619170 38674085 38682088 38634724 38626243 38651130 38662856 38614365 38558589 38582901 38563150 38614844 38612798 38612896 38672107 38684252 38646525 38589042 38640734 38579227 38680869 38684472 38692238 38639537 38707763 38742190 38653813 38683687 38669593 38709187 38759710 38707685 38608059 38660482 38585985 38686922 38639353 38678041 38612666 38626273 38600062 38635225 38605538 38673304 38667563 38607083 38711808 38691343 38697792 38696740 38697083 38641387 38577983 38604401 38628170 38677952 38664595 38646838 38682078 38636442 38739999 38612970 38651498 38682197 38710831 38677574 38679018 38660523 38591201 38626586 38694363 38566160 38607548 38655381 38784521 38672184 38635244 38666345 38692529 38655576 38618759 38741225 38719579 38755385 38707015 38703809 38635293 38595541 38662811 38675782 38652987 38669770 38645120 38586613 38655411 38712590 38631651 38688221 38634831 38686925 38729730 38636162 38668959 38663626 38683006 38718519 38705164 38685849 38696828 38721874 38666728 38715961 38638692 38655606 38689884 38760423 38643903 38653284 38686070 38736401 38681749 38751516 38646021 38665884 38677901 38612287 38727072 38670172 38713460 38700808 38700215 38643052 38683924 38685368 38692114 38741961 38776011 38668391 38723431 38651090 38745827 38656623 38785477 38712369 38676992 38769300 38708944 38663121 38707628 38681402 38639007 38701414 38647679 38676757 38762456 38718549 38674886 38688596 38747459 38708594 38650276 38673994 38687356 38725521 38708957 38759476 38668961 38723627 38730856 38711721 38743053 38785947 38717423 38744433 38710842 38729167 38741447 38736332 38726461 38767285 38760977 38731768 38624245 38700862 38676099 38749575 38729515 38668800 38661805 38713451 38791000 38707253 38760885 38699549 38728661 38755659 38773384 38707789 38742423 38712689 38754364 38668414 38769172 38720568 38753897 38736677 38704027 38741848 38733112 38768540 38736756 38777348 38702461 38731309 38757497 38814696 38662737 38774775 38753562 38752189 38660360 38708244 38722518 38807112 38765003 38707006 38815630 38695438 38709267 38723541 38746938 38679472 38691023 38782778 38694049 38718033 38742850 38757075 38799091 38735506 38776983 38751032 38770605 38749973 38721934 38801053 38803875 38784986 38759560 38734583 38763802 38724002 38810371 38729304 38730490 38758160 38755174 38823093 38793227 38777385 38759506 38763362 38756768 38829754 38787065 38668054 38739596 38751541 38781722 38730725 38744111 38714286 38784567 38708127 38713135 38698686 38757657 38773601 38747816 38771794 38726656 38650744 38723801 38790169 38771587 38798323 38674966 38725700 38707214 38736473 38709275 38792875 38730633 38730380 38750051 38755843 38782415 38772528 38784436 38877805 38721623 38786828 38763498 38724355 38727515 38786332 38821689 38754691 38843524 38723001 38772145 38753824 38812061 38822258 38768925 38807900 38732193 38729544 38711642 38728988 38802282 38835802 38694086 38832974 38741222 38796007 38775631 38781332 38768424 38758805 38806307 38764969 38795468 38793534 38815683 38768556 38832064 38797829 38821923 38756670 38781604 38791825 38779841 38812306 38781215 38757245 38761354 38726362 38801824 38742695 38754576 38795811 38782431 38813028 38778946 38840929 38740051 38790030 38660426 38777704 38772750 38773960 38780491 38842885 38747632 38827414 38848739 38717489 38880306 38816930 38794651 38768741 38832058 38773219 38746015 38807945 38819001 38738012 38784166 38782792 38798178 38864082 38785088 38776183 38822466 38819552 38806542 38801003 38796700 38844046 38784453 38841334 38792309 38819435 38810222 38876034 38778580 38721715 38806748 38820059 38810848 38800085 38831080 38807085 38795392 38863061 38869055 38823164 38793673 38831676 38870853 38750580 38851651 38835490 38891776 38864678 38759747 38839783 38797102 38726555 38803666 38818166 38891836 38787241 38859172 38809087 38878383 38823740 38819984 38842950 38810165 38766205 38789728 38849073 38886924 38891443 38841676 38877247 38836466 38839088 38866261 38840348 38826678 38832143 38795418 38847025 38832591 38820052 38870972 38839757 38875175 38815770 38798630 38793666 38798964 38873310 38889970 38932949 38851049 38833124 38831517 38755028 38964437 38800058 38844463 38914914 38792620 38815072 38830993 38854855 38872872 38911967 38836550 38836634 38849514 38905492 38934543 38851699 38821172 38816724 38807255 38834292 38804207 38899240 38919933 38878954 38872147 38828521 38870641 38858888 38861710 38796954 38818265 38837980 38847748 38861454 38811068 38851953 38900951 38905802 38818386 38838478 38895195 38764495 38798362 38837627 38943915 38892127 38919713 38891599 38905920 38821896 38891480 38797517 38909598 38878455 38898361 38832623 38814737 38879942 38810168 38829859 38960362 38868518 38856941 38851396 38907227 38888960 38880426 38826087 38821721 38893093 38905459 38873983 38878821 38847525 38910433 38848528 38888629 38863704 38926928 38945594 38837311 38909798 38898550 38947453 38908236 38919201 38897347 38801617 38824081 38905353 38958793 38832356 38910122 38897132 38882785 38806167 38891305 38834932 38952949 38919062 38917426 38878287 38812591 38857186 38786301 38976251 38938554 38906700 38827281 38882748 38936332 38881544 38872127 38898177 38862151 38869762 38907334 38905757 38893889 38894848 38858163 38909557 38898899 38840708 38922707 38935677 38949989 38931125 38917269 38885320 38965558 38818039 38927730 38892834 38920522 38996698 38884370 38883278 38894098 38817865 38930370 38867608 38904255 38919696 38889918 38884402 38863209 38900924 38812178 38975343 38891614 38906638 38884450 38882961 38947464 38912807 38923612 38979271 38896026 38925521 38908881 38983475 38904714 38868769 38879552 38916916 38892408 38940677 38972389 38927853 38885241 38883085 38912322 38889537 38895902 38970455 38902037 38935021 38960127 38900671 38948670 38895546 38945844 38862574 38955926 38994952 38885830 38913593 38943287 38913985 38935048 38935084 38892529 38895459 38926526 38836832 38894535 38947754 38909117 39006981 38818931 38927859 38961848 38953837 38817175 38902993 38935264 38869442 38895560 38922864 38865680 38913247 38872088 38960878 38919633 38937105 38938409 38932958 38976640 39015614 38994464 38923401 38954056 38910370 38905122 38953992 38993983 39042247 38933435 38910488 38978556 38891797 39035167 38958043 38916301 38875833 38846392 38933903 39021000 38968463 38919777 38907689 38943842 38962341 38944361 38899737 38871088 38958018 38983376 38935974 38913021 38947539 38883695 38878844 38908003 38855983 38998454 38920097 38892618 38954178 38921870 38959172 38953694 38882994 38983347 38911358 38966653 38906239 38923375 38941575 38941929 38947517 39052994 38908949 38881826 38929567 38953833 38906731 39041281 38963076 39037689 38981233 39045527 38921669 39002075 39001224 38952445 39030032 38960729 38959362 38980650 39034984 38977178 39013077 38981204 38980729 38965509 38956045 38927767 38966019 38907415 38899926 38937399 38979055 38988873 38940982 38967809 39004936 39028334 38914106 38980199 38934958 38963116 39014797 38979408 38937922 38934741 39009398 38949807 38986030 38946414 39012289 38971077 38961537 38928676 39019878 39028263 38921719 38909983 38969658 38908940 38985578 38931730 38974413 38984972 38945212 39001713 38977608 39010223 39021347 39082638 38957518 38966065 38957926 38939732 39065142 38966058 39064720 38966507 39051464 38983957 38995229 38935586 38948188 38944397 39044017 39004837 38939747 38990832 38989382 38972446 38971765 38993545 39069954 39013422 39034357 38991321 38986205 38983963 38930730 38962187 39002585 38962545 38988560 38959299 38947506 38997464 39028390 38956956 38991753 38993514 38993621 39067948 38930331 39024039 38910180 38977781 38922085 38912535 38935896 39024841 38983232 38971569 39043274 38990894 38995922 39004918 39015592 39021924 38992838 39051436 39007951 39006278 39102673 39095099 38987502 38974133 39020335 38938659 39083013 39118668 39040395 38993590 39075036 38988487 39088123 38964483 38969364 38989433 38996232 39010335 38997981 39055166 39031384 38977646 39075436 39030305 39075857 39026961 39061578 39016529 39080736 39054886 38983793 39087877 39010307 39018900 38992350 38948396 38988272 38983108 39068521 39057891 39026253 38993750 39042505 38974630 39017088 39068920 39070312 39044251 38979322 38960631 39055637 39048320 39018663 39030304 38998359 38970315 39040889 39051275 39092042 38993945 39075259 39053068 38980881 39058526 39066606 38984489 39045973 39084990 39073108 39095640 39074075 39002746 39043350 39030894 38983328 39071010 39053849 39063611 39095722 39039614 39062254 39008391 39136471 39009463 39029506 38992579 38983366 39074264 39064739 39008822 39076931 39071650 39037111 39066456 39072017 39006759 39024532 39031310 39088466 39054704 38999047 39123495 39017529 39099470 38993813 39107214 39083743 39032972 39016659 39072177 39041262 39048502 39078395 39108196 38988050 39082660 39069583 39003658 39097420 39080949 38977523 39071233 39037046 39088194 39060666 39114390 39030790 38969010 39043250 39029066 39064061 39057698 39067624 39002751 39097192 39148176 39102282 39027950 39043592 39031129 39099965 39022418 39103249 39023149 39049349 38993409 39114225 39048361 39083491 39037961 39118920 39098427 39072475 39036692 39035119 39094426 39090287 39105909 39076308 39075650 39086660 39109072 39012362 39037304 39089374 38985787 39136511 39025139 39041902 39046488 38982045 39079026 39039378 39053549 39081696 39073067 39080741 39054030 39098486 39098083 39068811 39131653 39070757 39069302 39030688 39071417 39115600 39099428 39086265 39131534 39119622 39155767 39154176 39067080 39099743 39131712 39109096 39061580 39115020 39089607 39161137 39107055 39064731 39072140 39066706 39119036 39135752 39035350 39108275 39090866 39147250 39211178 39094609 39110231 39108657 39095889 39090679 39114533 39102968 39123814 39145540 39196403 39184919 39113433 39101803 39103692 39184768 39127686 39181279 39134339 39080428 39112082 39147829 39157275 39073548 39144891 39109554 39122566 39118336 39065653 39125712 39075308 39091624 39115331 39124257 39145656 39134034 39155800 39138613 39149099 39111526 39164534 39087564 39202126 39050995 39129829 39112732 39159030 39120638 39142919 39129257 39115337 39097952 39120284 39083758 39100014 39160382 39108900 39163511 39127707 39134041 39149062 39168468 39108288 39133699 39192711 39148464 39164677 39109136 39148924 39176942 39174926 39081278 39075800 39080990 39114630 39165216 39163726 39111337 39142321 39136908 39124863 39123618 39171500 39126873 39204110 39160581 39093017 39183638 39124376 39192391 39157480 39182671 39142239 39171923 39201848 39187802 39098927 39165924 39195120 39176912 39127056 39155794 39177673 39135924 39141392 39138262 39182458 39133269 39120792 39160090 39094453 39219858 39169897 39128671 39131215 39198940 39243057 39091478 39204954 39191052 39153766 39213360 39086379 39204908 39162689 39215044 39155326 39189668 39140468 39180000 39215424 39209323 39171627 39116269 39154634 39168289 39105836 39147949 39155666 39154466 39170928 39197549 39203725 39204476 39159006 39088300 39198050 39086224 39198795 39160844 39219112 39163852 39175869 39145083 39139595 39211678 39132823 39171100 39207942 39210291 39315142 39171423 39206446 39217160 39228354 39123905 39155486 39153790 39193556 39134715 39136080 39181600 39167125 39203704 39267538 39175230 39152573 39204285 39193094 39183956 39216975 39169693 39183442 39188483 39147994 39150130 39184155 39256592 39242045 39181646 39151369 39222236 39221105 39230031 39155746 39087804 39175447 39190120 39163390 39289892 39183665 39195450 39186861 39210107 39222655 39244258 39269396 39121469 39241969 39189214 39240312 39140852 39184097 39104571 39136959 39213763 39146745 39264804 39224491 39165433 39206587 39157847 39211679 39204930 39207355 39198543 39188656 39226428 39220406 39266532 39177919 39174876 39260206 39169861 39211474 39183053 39180772 39211797 39184654 39241688 39207594 39247062 39195351 39155255 39189542 39300062 39231363 39203352 39180940 39185952 39206269 39148885 39217727 39203358 39225299 39256956 39248904 39240513 39222536 39216090 39284367 39193070 39100778 39139496 39151698 39145412 39189415 39207435 39212868 39231024 39252154 39188076 39319313 39228516 39235393 39215799 39205025 39235908 39203909 39175935 39195711 39246273 39325889 39216611 39252805 39187676 39241613 39198352 39259753 39347182 39276886 39227358 39269419 39280228 39183317 39199339 39277072 39271654 39188846 39213681 39243343 39254981 39177226 39235341 39233561 39239561 39192219 39159935 39273551 39212343 39190197 39190807 39301181 39200678 39229239 39201269 39231333 39201270 39242051 39187241 39155955 39251705 39307723 39258341 39282660 39337242 39257269 39257600 39194528 39257691 39305129 39323314 39264555 39247451 39270647 39267381 39205865 39306392 39232858 39260204 39201743 39281127 39224457 39242213 39287447 39264224 39282585 39243466 39250681 39316836 39253163 39266245 39276659 39264821 39197736 39266863 39329548 39281015 39233028 39286222 39229508 39288000 39256075 39231949 39203938 39269473 39240982 39140499 39324696 39297741 39287128 39254626 39351148 39297147 39313377 39254967 39293571 39335425 39191495 39371792 39260572 39261008 39307243 39288957 39226555 39280895 39290138 39265154 39367512 39271461 39306952 39290727 39258022 39242572 39292153 39354947 39171376 39219522 39313202 39341891 39227622 39254563 39269959 39321369 39241190 39290338 39263812 39328244 39366922 39201796 39236799 39247564 39272809 39233785 39263676 39289523 39341837 39276284 39270903 39247855 39235827 39349620 39252643 39297185 39273819 39267959 39299938 39266558 39206453 39265393 39315297 39223678 39265078 39295525 39276485 39355744 39324029 39311384 39263081 39274949 39344603 39277465 39241729 39219365 39217968 39291371 39342886 39331563 39286497 39321331 39260511 39359779 39347321 39305160 39300398 39335410 39259302 39299050 39261943 39405147 39251159 39282941 39301134 39291277 39263063 39305608 39318785 39255220 39233867 39270234 39292780 39341312 39322637 39330799 39258685 39284706 39328423 39306568 39316255 39305802 39358705 39270703 39313768 39348392 39235704 39331901 39270707 39346230 39345552 39324070 39295234 39331559 39354146 39325729 39329008 39364738 39309544 39315691 39391959 39302150 39339908 39314418 39346621 39365553 39254131 39364899 39381980 39226546 39381040 39306794 39367308 39306306 39299360 39386894 39322016 39332609 39317373 39416793 39367831 39283173 39360197 39354836 39377769 39352960 39283084 39336973 39400946 39339428 39268367 39320709 39320114 39354656 39308041 39414745 39385545 39291371 39369785 39357164 39350497 39376925 39265869 39361704 39299385 39380496 39384271 39322516 39358639 39301420 39387169 39376878 39308548 39360092 39399705 39261240 39431284 39383828 39341668 39339107 39392102 39377994 39410817 39345105 39375045 39278385 39427601 39359668 39323532 39330588 39392881 39318511 39372277 39382701 39355890 39345549 39351815 39390050 39343929 39315833 39405517 39421188 39372968 39396022 39408751 39308301 39370584 39314316 39507093 39367468 39371658 39350816 39383495 39349646 39422255 39343624 39459042 39336819 39358699 39373972 39339600 39389458 39374654 39354337 39331046 39383455 39409392 39318803 39336903 39370960 39412612 39340292 39406731 39425279 39410072 39332265 39396628 39408848 39344636 39387321 39373822 39395620 39414716 39427715 39336323 39383413 39326257 39466397 39387332 39383654 39331136 39400352 39340928 39336282 39420877 39399374 39358078 39463300 39368031 39403796 39447639 39446837 39371347 39372276 39389639 39403710 39388088 39415690 39426671 39411842 39420279 39398176 39377877 39413716 39430533 39415688 39376910 39406758 39388498 39358179 39334783 39413647 39390620 39354487 39435752 39466052 39457688 39384063 39377239 39339033 39450101 39456916 39405446 39372102 39382291 39445183 39422815 39413760 39382755 39420400 39384234 39352385 39373151 39410632 39378244 39458972 39362337 39426042 39390024 39342359 39441031 39357147 39424420 39362712 39431812 39361252 39415282 39388871 39370476 39385333 39336582 39464873 39448301 39394975 39454652 39430050 39382182 39464775 39429342 39375689 39412732 39404401 39473376 39417438 39437771 39357230 39378635 39419000 39371435 39404191 39415646 39477075 39419756 39478089 39424672 39452459 39403847 39432421 39471084 39402683 39419248 39340420 39435219 39464707 39411013 39440949 39398250 39369916 39406820 39445319 39455856 39393333 39380684 39368343 39404364 39386239 39493618 39424368 39436843 39477786 39461100 39406688 39381221 39405579 39367873 39352822 39459956 39453389 39453077 39338165 39410115 39399650 39387900 39445350 39414735 39437257 39424673 39421008 39407648 39502379 39476976 39429470 39416417 39465737 39478168 39379112 39399318 39431824 39348485 39413838 39403306 39487888 39543385 39515934 39428597 39436424 39473058 39451964 39510792 39475879 39506494 39512430 39444969 39480759 39437866 39344546 39549967 39367194 39449426 39509631 39467842 39513582 39473755 39468301 39466842 39440773 39448710 39470074 39435597 39443825 39381842 39498890 39486673 39444855 39452994 39415815 39478806 39434897 39471933 39408597 39468902 39383832 39528859 39503147 39452236 39423098 39369865 39473273 39468480 39406678 39466410 39500800 39483524 39442997 39461749 39460122 39462678 39409987 39483187 39444591 39429315 39431665 39459905 39493833 39502809 39425171 39447543 39472647 39484462 39468642 39464606 39491557 39477910 39499954 39437556 39455216 39435169 39421448 39447502 39488712 39455280 39477732 39445193 39421811 39466762 39422461 39395135 39476660 39461112 39496746 39423797 39393785 39535520 39441593 39452990 39507337 39455410 39502992 39488330 39493115 39491431 39441720 39415671 39481774 39484728 39441676 39403369 39419406 39451857 39505908 39463748 39465153 39460835 39524386 39527519 39498467 39485008 39523738 39467734 39497027 39450746 39489600 39421123 39536197 39473994 39475323 39453677 39489529 39520839 39518961 39514147 39488095 39515261 39525736 39447994 39461064 39466705 39538761 39479326 39478809 39490567 39492748 39516652 39521579 39531869 39503526 39436078 39513895 39501005 39499144 39507389 39423332 39524094 39473210 39516811 39475443 39501804 39532602 39514889 39514219 39544128 39505598 39481313 39577437 39532320 39493773 39478743 39468666 39494624 39515316 39516119 39507154 39452031 39471114 39540551 39520948 39535419 39526103 39509679 39555326 39518798 39480398 39526758 39471525 39461737 39531057 39459799 39514783 39512368 39494124 39532114 39454024 39477772 39511807 39517945 39551333 39471276 39523164 39473467 39563466 39547948 39568216 39579695 39558051 39500834 39500174 39475899 39540860 39526088 39573573 39537564 39546633 39514921 39565137 39514471 39459599 39544050 39517092 39581929 39464815 39538591 39486548 39559778 39535339 39503467 39527428 39557147 39563117 39522118 39494758 39529362 39524013 39463333 39483971 39531579 39568610 39507322 39608368 39506102 39501611 39523317 39563828 39545203 39518991 39588416 39513811 39507915 39548700 39463240 39536612 39527092 39516267 39500465 39549151 39602855 39594676 39554470 39524105 39538015 39589845 39528928 39593194 39567993 39455304 39583505 39612581 39569106 39453032 39622221 39535447 39504513 39510099 39575095 39530846 39639013 39545557 39433350 39580627 39529215 39460985 39599567 39580652 39597912 39571900 39528234 39550614 39545617 39572120 39549059 39495638 39526753 39544698 39544922 39601301 39542961 39592182 39584717 39542752 39579656 39517735 39552491 39627014 39496653 39549014 39570898 39566061 39565106 39606574 39593076 39514661 39629924 39550227 39577046 39545641 39576888 39625110 39597758 39576389 39589266 39554827 39505360 39550936 39564299 39666528 39549061 39555282 39579601 39576483 39562291 39639451 39604869 39598390 39499961 39573945 39565213 39621597 39595041 39599218 39531684 39623221 39524297 39549591 39517397 39553979 39590168 39612859 39592262 39596489 39532492 39660451 39570888 39586407 39622037 39595367 39599828 39553406 39640142 39604068 39650528 39557734 39541781 39555522 39592927 39603533 39520288 39606110 39533009 39652811 39501105 39613524 39670214 39509687 39610897 39540856 39596570 39587957 39640077 39689687 39642905 39594366 39577387 39476927 39650451 39626695 39510692 39538755 39569386 39585698 39584702 39531389 39614794 39618255 39587865 39604351 39613741 39619026 39607953 39616336 39550262 39593371 39577409 39685416 39684897 39622391 39644617 39592396 39608704 39574796 39638022 39595678 39562367 39561553 39532536 39572783 39597727 39694567 39646161 39571838 39567934 39584942 39625200 39587432 39573959 39653202 39620029 39688072 39656586 39629269 39606446 39622422 39574078 39685492 39572087 39637342 39621916 39648019 39600312 39699153 39663083 39648970 39635520 39663884 39597790 39642432 39583220 39649547 39571047 39638504 39631829 39614888 39605020 39605441 39606290 39608028 39682583 39648645 39735113 39596307 39660175 39602286 39669467 39629115 39613703 39651372 39639941 39628334 39590102 39630328 39633336 39593140 39690107 39643435 39691201 39611475 39578011 39677169 39649583 39641875 39566792 39662930 39655067 39559691 39685122 39558239 39632248 39640915 39658737 39654222 39678499 39657438 39652327 39587704 39666802 39594194 39706548 39621456 39645117 39633524 39590380 39661526 39645530 39653883 39727020 39683894 39623544 39600858 39700647 39691714 39658274 39630708 39653900 39631795 39663958 39692516 39698985 39681619 39674241 39615422 39701717 39611320 39671150 39598235 39646462 39613676 39660234 39636082 39612048 39785800 39676586 39633077 39650427 39723521 39705026 39677894 39682026 39624355 39694404 39681626 39699786 39621212 39674147 39680956 39648095 39669007 39724981 39710999 39626600 39667584 39634801 39746217 39638184 39697778 39720076 39669446 39727713 39644604 39754985 39706696 39770038 39682413 39689894 39674303 39682333 39724491 39690759 39655139 39699832 39689086 39695166 39726643 39760405 39676111 39648671 39743630 39677355 39657805 39673292 39717758 39681626 39694928 39656849 39656394 39684296 39686997 39673764 39645444 39715300 39748326 39704636 39713302 39660487 39686172 39623513 39689826 39667393 39695666 39610230 39619498 39671421 39764143 39744087 39750168 39677628 39770890 39635045 39675895 39633862 39659433 39723313 39774427 39714218 39646434 39740022 39771711 39730518 39726954 39633526 39695897 39757121 39736748 39752826 39733765 39720328 39689880 39656855 39737972 39690767 39751975 39773808 39775611 39696820 39713017 39712184 39667183 39778617 39673162 39762192 39740413 39720207 39706356 39730816 39679156 39710255 39705975 39652393 39737659 39716809 39678102 39718286 39698789 39744460 39661943 39768912 39729742 39735827 39666777 39664315 39718683 39710358 39717522 39684365 39761744 39718112 39754388 39752288 39748824 39796617 39726638 39721260 39749620 39804131 39666470 39653306 39728008 39708090 39761659 39744923 39665953 39742909 39728498 39756723 39703455 39707134 39734113 39740247 39645309 39665625 39751051 39683430 39764910 39755470 39786943 39816109 39734233 39780041 39717556 39738606 39753301 39746608 39804026 39669532 39725147 39778284 39723757 39738187 39748378 39749354 39748273 39734718 39838158 39716449 39722278 39856823 39760762 39693658 39752413 39719558 39731728 39666067 39727828 39749187 39743353 39747351 39787417 39750924 39783832 39718869 39821511 39783299 39742132 39793122 39763049 39719375 39689208 39737954 39768137 39742569 39687473 39747874 39808319 39743922 39756839 39772984 39810546 39718024 39729053 39804736 39706318 39722327 39831158 39698460 39728828 39763942 39825367 39760689 39733066 39786204 39710401 39786807 39712037 39744034 39768853 39769812 39719196 39711695 39787841 39805837 39797681 39743365 39758391 39806135 39881498 39789575 39711199 39768869 39776967 39812154 39750510 39714180 39738298 39806193 39795664 39732718 39782535 39800287 39758902 39771325 39727945 39765761 39847751 39752002 39797727 39708005 39857986 39874288 39778091 39727353 39768602 39782051 39778820 39801481 39796848 39777779 39775025 39774476 39751866 39775904 39785951 39770103 39856697 39827737 39779229 39773784 39744994 39788931 39817844 39757293 39772697 39781578 39820630 39796911 39811112 39831331 39838944 39820881 39762232 39733932 39782975 39806469 39785158 39772660 39734575 39805352 39730532 39789010 39810573 39824639 39776695 39803254 39738918 39854162 39819500 39760929 39771062 39840908 39763601 39828302 39890425 39821782 39802135 39767131 39744297 39784175 39768160 39833087 39808403 39819763 39781131 39810755 39812852 39767385 39830443 39724718 39804220 39901529 39743182 39816697 39841070 39791215 39934102 39767439 39851676 39809672 39885129 39833644 39740282 39803202 39795902 39874019 39802185 39868797 39889138 39837599 39891893 39811880 39809690 39817763 39780517 39876475 39894463 39874875 39913721 39855113 39856509 39832875 39871017 39862044 39828854 39816804 39860515 39757247 39844222 39829443 39824764 39875779 39819745 39848334 39799918 39790827 39847345 39886930 39856026 39917769 39846799 39860615 39856042 39897706 39759088 39843692 39812275 39793142 39811646 39888842 39839885 39809122 39778424 39954728 39891554 39831524 39930731 39806165 39921932 39798781 39854255 39856458 39842213 39834283 39831806 39870348 39892001 39900704 39838327 39918185 39867381 39890320 39879592 39852995 39839134 39864942 39868363 39794787 39925310 39835655 39902229 39927913 39856049 39841065 39821830 39827971 39895504 39883874 39915435 39820913 39904578 39885747 39859280 39850775 39889293 39816491 39821572 39812629 39867169 39924731 39776316 39903625 39822616 39843653 39841286 39784577 39856950 39895440 39799495 39837783 39760389 39916974 39845239 39905368 39915784 39913598 39853938 39857924 39786144 39825468 39872650 39811437 39878009 39907308 39813961 39845674 39868946 39949294 39961498 39808946 39907919 39878927 39905810 39862532 39804503 39834420 39914820 39857024 39868265 39912025 39858892 39955464 39916836 39878117 39826009 39884783 39801397 39913328 39843976 39855480 39952661 39907633 39805646 39985571 39908331 39879902 39875546 39834625 39886638 39853781 39903731 39874131 39860854 39960933 39908253 39855097 39915478 39875766 39850903 39962329 39875113 39825974 39875803 39847989 39879736 39955495 39941001 39865075 39865717 39900998 39805438 39957966 39847048 39882322 39941761 39842860 39858718 39850971 39849365 39906268 39837949 39898716 39842955 39875793 39923804 39959504 39871984 39884727 39937998 39937956 39914879 39873317 39897680 39925304 39843375 39870070 39871587 39900558 39835255 39924052 39855313 39895313 39887820 39876246 39849389 39943773 39861576 39917737 39953117 39917737 39863302 39864539 39925673 39889220 39920311 39863756 39856783 39900577 40017914 39903425 39959748 39894453 39879608 39873375 39931711 39870990 39894634 39915051 39920342 39928124 39985466 39905094 39937371 39859156 39940063 39920666 39901296 39863868 39945897 39976430 39901754 39936944 39982633 40002893 39925626 39914100 39983090 39903756 39973195 39919540 39952081 40011259 39985962 39866632 39898190 39995965 39893974 39985878 39839611 39913973 39960248 39966096 39908663 39876001 39819862 39889489 39896806 39923675 39909966 39915632 39933354 39901516 39888647 39957000 39921317 39936012 39917214 39969563 39938276 39929867 39986136 39939688 39970354 39976036 39988678 39949916 39903687 39973719 39891254 40039984 39951273 39978723 39942506 39947211 39954859 39994419 39947282 39926060 39956191 39914155 39928628 39968196 39974230 39945267 39973226 40007542 39960312 39944716 39919469 39958314 39985973 40020375 39942676 39983920 39938350 39933089 40006525 39952057 40013441 39952041 40010273 39951991 39941486 40034025 39885476 39924913 39976837 39958943 39949946 40017817 39926687 39993247 39987874 40043156 39955957 39971694 39995441 39917523 40003245 39982440 39962785 39951240 39936980 40024250 39974638 39999245 40036810 39994539 40077124 39978212 40041984 40034654 39923255 40006218 39941303 39975886 40025572 39985212 39983754 39948449 39989397 39995916 40005898 39983817 39940541 40029071 39903210 39978809 40063562 39992812 40065500 39977526 39923713 39972637 39937089 40023881 40011841 39978837 40052395 40028610 39911158 40028486 40032865 40044938 39943942 39977952 39982044 39986239 39941663 39988449 40022737 39937863 40029557 39967370 39999220 40007200 39992697 40056974 40044007 40017000 39969738 40015019 40021098 39995911 40021604 39976213 40008019 40051106 40039782 40017794 40023320 39882170 40030933 39918602 39947647 39990812 40061514 39968951 39998736 39997243 40025307 40088429 40029747 40025943 40000629 40032994 39985069 39995039 39995455 40013398 39959562 39950279 39987502 39908656 39969259 40022737 40058385 39989541 40052942 40003898 40040953 39956939 40012090 40043878 40059137 39995282 40028203 39965760 40110269 40053947 40005400 39996810 40041121 39995997 40047382 39974544 40037478 40045995 40074905 40024072 40050957 39993965 40041307 40026230 39974854 40029987 40079799 40090036 40010732 40068902 40034315 40083613 40061255 40024227 40004669 40056109 40089713 40063247 39977050 40028978 40035800 39994388 40042966 39937899 40060058 40014530 40059144 40039507 40003939 40052981 40012360 40070301 40017033 39995655 40020733 40081359 40015212 39989002 40061276 40049229 40074404 40023332 40050489 40071926 40032254 40064388 40042169 40061985 40014945 40020751 40071331 40089206 40056452 40056840 40038343 40126647 40107506 40113150 40070854 40046519 40062017 40058581 40016861 40001712 40071222 40058866 40097316 40032222 40110246 40137866 40028476 40071216 40085367 40096947 40030084 40070834 40015903 40075699 39982588 40030126 40114639 40033005 39999957 40127790 40032214 40065154 40075339 40083229 40085742 40070349 40088791 39986725 40065285 40088198 40112250 39999430 40058914 40017417 40087206 40081134 40121173 40088812 40086593 40127027 40100634 40076141 40064332 40118479 40080454 40069140 40044374 40098420 39991453 40158583 40054457 40067795 40076784 40060905 40054542 40068806 40096551 40056314 40107552 40087500 40085249 40024892 40031474 40084764 40037455 40074371 40045313 40066811 40105196 40017087 40074377 40075096 40093910 40186343 40197732 40084907 40028278 40150903 40126520 40102196 40151988 40140484 40086006 40179539 40096392 40171497 40104989 40113741 40074725 40051892 40044113 40157711 40149293 40117193 40028222 40076158 40109563 40114374 40052471 40119689 40130772 40122983 40081900 40095150 40076106 40114703 40095817 40150827 40149428 40029107 40127259 40136667 40111784 40171781 40096530 40084496 40188173 40101726 40164338 40126166 40065485 40106391 40112312 40096356 40167496 40019954 40167097 40101433 40126296 40154727 40068048 40095062 40129190 40090154 40145051 40120183 40080197 40124795 40062278 40143952 40209759 40012519 40174448 40140670 40086923 40034590 40112012 40138065 40161352 40067846 40099345 40063586 40141057 40109730 40165445 40090719 40078962 40131823 40133172 40106009 40044407 40056165 40075684 40127730 40158029 40219392 40137997 40180863 40042879 40122510 40073070 40145858 40167058 40133801 40175743 40149388 40164425 40101306 40040777 40122615 40170023 40160770 40122040 40049550 40117211 40114754 40193387 40111200 40168086 40159448 40195892 40123197 40192871 40101362 40052801 40196562 40246374 40164365 40221447 40153662 40141833 40162448 40135623 40185068 40169299 40224474 40195475 40109063 40086614 40179100 40169831 40109506 40122212 40116681 40197342 40122990 40126776 40213214 40083828 40130041 40075828 40190675 40131278 40089579 40177903 40181315 40102719 40187408 40218306 40200358 40143375 40127114 40206592 40133334 40106376 40173512 40109564 40053774 40200438 40099924 40143299 40127545 40146772 40210810 40147855 40189389 40144256 40087210 40173964 40109559 40155828 40169293 40124720 40136884 40149640 40173122 40190125 40182389 40157591 40184762 40213062 40146386 40222183 40164171 40178197 40128582 40176750 40181340 40088372 40152521 40134529 40155134 40159474 40190995 40147507 40239994 40260090 40117642 40161210 40160184 40167340 40223368 40091823 40157742 40156478 40162464 40149210 40180494 40193518 40216101 40201998 40229501 40132544 40193280 40188187 40188538 40187904 40168090 40097294 40163271 40166401 40147862 40193884 40165041 40199334 40190787 40133449 40143194 40229556 40197713 40172903 40077983 40083763 40166317 40185593 40144276 40170088 40197401 40200126 40234074 40188048 40182715 40156485 40215236 40158907 40183026 40140938 40236470 40190423 40232311 40194807 40291493 40163006 40166597 40231910 40163762 40138443 40136115 40210295 40201465 40197401 40183925 40173938 40249030 40123283 40233231 40202157 40174145 40250045 40147631 40144430 40191116 40111472 40172905 40205648 40197646 40216723 40253686 40205357 40282796 40148488 40145239 40186248 40198884 40250396 40185525 40122722 40250419 40202651 40180246 40273399 40221461 40171738 40149240 40250814 40138891 40169155 40219586 40177387 40171606 40210593 40243690 40184853 40183810 40244098 40223042 40114814 40241342 40185210 40244652 40166935 40243834 40162755 40199782 40162499 40279880 40220452 40232204 40211260 40223823 40181976 40214110 40254899 40252755 40218268 40191413 40233677 40225917 40212129 40169040 40221147 40306210 40193434 40199352 40227372 40179750 40203109 40241901 40238033 40244575 40217004 40268092 40240421 40248032 40257035 40149205 40229409 40276521 40279002 40182614 40298087 40213034 40202937 40233048 40181097 40209104 40294263 40211129 40240528 40255555 40252813 40113356 40274322 40234901 40281921 40243192 40213816 40274923 40245916 40185766 40265500 40319370 40283722 40187895 40237501 40239966 40219479 40209652 40208064 40181258 40247412 40248974 40263397 40183562 40218756 40257898 40238167 40239840 40204531 40240918 40241471 40206974 40234444 40244053 40196356 40254283 40207742 40243096 40288837 40279971 40244004 40266102 40209096 40208533 40235437 40182385 40241207 40225505 40215386 40311572 40246613 40218589 40213670 40272936 40295758 40250338 40283941 40274314 40202270 40226916 40282071 40319778 40295828 40210442 40287317 40269597 40222230 40244166 40328252 40258489 40274161 40243292 40226775 40243925 40236184 40339024 40266344 40300160 40258307 40287573 40305132 40164789 40348289 40179308 40368775 40312943 40303827 40324299 40316866 40259252 40223445 40360191 40291503 40247833 40255581 40349075 40208570 40284218 40280901 40284563 40273936 40260760 40256107 40254571 40220410 40259953 40265456 40289342 40260643 40344525 40236046 40315305 40267674 40255559 40282463 40309500 40286086 40285920 40282625 40252837 40309776 40281299 40235899 40322190 40284110 40316377 40299590 40250790 40286061 40306498 40180165 40343504 40282454 40304295 40336995 40182522 40275593 40337580 40329086 40251015 40239193 40291490 40330446 40163265 40271217 40290048 40206955 40299804 40302837 40305066 40326456 40312397 40232207 40314946 40274451 40305179 40286734 40234731 40265445 40293952 40232465 40350325 40371799 40360869 40324488 40289324 40214445 40262908 40303158 40321639 40364682 40299535 40302034 40322908 40305296 40358468 40286785 40303296 40341280 40321856 40317519 40322344 40351523 40269081 40293538 40327951 40275685 40222848 40306555 40369370 40269829 40325487 40366254 40314464 40334151 40336793 40300822 40307567 40353851 40304718 40341496 40318083 40348814 40337009 40292633 40355924 40305563 40401184 40356282 40248562 40347051 40313354 40336939 40271748 40306181 40300617 40338439 40292008 40276721 40321131 40281204 40363818 40342831 40321217 40268248 40296224 40396107 40274545 40264656 40284680 40276459 40329459 40305250 40366423 40340718 40321182 40376828 40231198 40293861 40360811 40407087 40357414 40401148 40272253 40226315 40311567 40401409 40297961 40323433 40308102 40372368 40331349 40299885 40324595 40272086 40347638 40396674 40321645 40382347 40256211 40367472 40316992 40365806 40350785 40400530 40326727 40313866 40331742 40346294 40317945 40418063 40358746 40269210 40294359 40357180 40330573 40333139 40328267 40382896 40418302 40342077 40307488 40287770 40377693 40376724 40298250 40420576 40338285 40343047 40301143 40370153 40406551 40406784 40383560 40384638 40416361 40357956 40400836 40347524 40395547 40415514 40357862 40327186 40374941 40357386 40335637 40416065 40381958 40327370 40373625 40416106 40271293 40386932 40263849 40344281 40309569 40400092 40347853 40413970 40391517 40295743 40297644 40304390 40309595 40415637 40356413 40319591 40351918 40379062 40298787 40378827 40313923 40302498 40390504 40441637 40313226 40457112 40437058 40416979 40323582 40442880 40353615 40325403 40358227 40293216 40473903 40366201 40394321 40412338 40317357 40312961 40399813 40362656 40413941 40359977 40388218 40383829 40387096 40332907 40386485 40346881 40393431 40395775 40424903 40317177 40357808 40439320 40381749 40375312 40302077 40377728 40352027 40395903 40389740 40401774 40383997 40340339 40402145 40379988 40343640 40378721 40404414 40359828 40371229 40436359 40417494 40469274 40390039 40369913 40375885 40374868 40355463 40411804 40368516 40397506 40397399 40467252 40464999 40423894 40373274 40398116 40390860 40401345 40389101 40436540 40342335 40459116 40406167 40451113 40459702 40357123 40385904 40428008 40385240 40424928 40379037 40462459 40420471 40472627 40351539 40499579 40304090 40411961 40420637 40459656 40415217 40409437 40423351 40367148 40456745 40414698 40336183 40384895 40439993 40401620 40373834 40393305 40403524 40448178 40382824 40436419 40380343 40448754 40476065 40380636 40431852 40421862 40470226 40436841 40368953 40490685 40443913 40407711 40394025 40461445 40419474 40410190 40447266 40407913 40399133 40413905 40379866 40426978 40450357 40432264 40378172 40463420 40386272 40487363 40481380 40437870 40384068 40400959 40445906 40441460 40448762 40476365 40451595 40342157 40430287 40500371 40357496 40423392 40477368 40415706 40402393 40463901 40427393 40482471 40349186 40419662 40435098 40450819 40442260 40357470 40377358 40433557 40456069 40400831 40384430 40426439 40425084 40438724 40416166 40511048 40427258 40389228 40418575 40491487 40452532 40438744 40482309 40440056 40495013 40381092 40485282 40411521 40356479 40443679 40405246 40499136 40369226 40422874 40445885 40417131 40415967 40394706 40517798 40445100 40419480 40478679 40555679 40468136 40497972 40475526 40409775 40449318 40479813 40370581 40431452 40392885 40457983 40450069 40444238 40471853 40403882 40425685 40521962 40479627 40375423 40491398 40492744 40383820 40443386 40481986 40451269 40587696 40435718 40416562 40421139 40533855 40514557 40437121 40427923 40446620 40537922 40454248 40425092 40480765 40496415 40511106 40415443 40458902 40481955 40499915 40491183 40408122 40432533 40439347 40557324 40501231 40418513 40445010 40528926 40519444 40419544 40494118 40511484 40458312 40499930 40523816 40438090 40430620 40529690 40513095 40411427 40491288 40452411 40476293 40527521 40421046 40419297 40474940 40530929 40504917 40445684 40437140 40479703 40478688 40440067 40455399 40516129 40470658 40460893 40516462 40459720 40545663 40421013 40498546 40425721 40511367 40480007 40470153 40434038 40504904 40486365 40476426 40426643 40483905 40445589 40472697 40497052 40439275 40489736 40475419 40419945 40460751 40517917 40410603 40439477 40519017 40491098 40517652 40520915 40531471 40500650 40472597 40550969 40401462 40552558 40459091 40503667 40536064 40520222 40470612 40424967 40556299 40491132 40584344 40454284 40552397 40503356 40469388 40485408 40483897 40463318 40550165 40544201 40455642 40481795 40435631 40476375 40563613 40456356 40519268 40499429 40562641 40495363 40527309 40508321 40548309 40577911 40494826 40519575 40542382 40452740 40524787 40610721 40477752 40543250 40492265 40499989 40463703 40571719 40435321 40462402 40532357 40516626 40511938 40558764 40495331 40466890 40484746 40547977 40531252 40561819 40446955 40490468 40414376 40499345 40565959 40574741 40455653 40524675 40603983 40493824 40517221 40494239 40571854 40527408 40525627 40577111 40436591 40455734 40514764 40543712 40570037 40500808 40495062 40475481 40534744 40487352 40492148 40517797 40536732 40498453 40536652 40567314 40592762 40528133 40616202 40522747 40535168 40489628 40585698 40476658 40475705 40499752 40530060 40537909 40522094 40615557 40520223 40506441 40527154 40597533 40539822 40513651 40454642 40484284 40547387 40528499 40694841 40575089 40594289 40601323 40539223 40509114 40604204 40545675 40531095 40500461 40595060 40471143 40545493 40563550 40575912 40596162 40631033 40521334 40567619 40498870 40546299 40560408 40572572 40505915 40592263 40586687 40584514 40544049 40497088 40600287 40554732 40502653 40575999 40520794 40562338 40597409 40639763 40561673 40556272 40549844 40499271 40608106 40494997 40601748 40577718 40587208 40520413 40562261 40521209 40561879 40530846 40620680 40563763 40518101 40609218 40533130 40566500 40586364 40596272 40566816 40594620 40551606 40611897 40553492 40569936 40574492 40561989 40550181 40586514 40558090 40597328 40580529 40532730 40613799 40627812 40573075 40456370 40586055 40589271 40582190 40566426 40576229 40532335 40592486 40551086 40619647 40597564 40593958 40649534 40616597 40620368 40553120 40612106 40566605 40593011 40612404 40518288 40573253 40572429 40642009 40664953 40586408 40569339 40557890 40585287 40552636 40660608 40583176 40618482 40587075 40546366 40621383 40569884 40613347 40649889 40618778 40599579 40552809 40629714 40579976 40686103 40579603 40585491 40629765 40565455 40567724 40636037 40506898 40577694 40566252 40630441 40655551 40605760 40578945 40547890 40610946 40561730 40680586 40565529 40621461 40654688 40602286 40589713 40550774 40582601 40572776 40614316 40563447 40585777 40570122 40605117 40609194 40689690 40602498 40655422 40633467 40548534 40624730 40632517 40654763 40686138 40587451 40642370 40554323 40619884 40603587 40647219 40603842 40607416 40622307 40581517 40607392 40537283 40647904 40577670 40572568 40692142 40633844 40664068 40633792 40613321 40606443 40534684 40676683 40563835 40597242 40577185 40603925 40577729 40646366 40565169 40576291 40663777 40660045 40621376 40570137 40556040 40649349 40613575 40626053 40669305 40624758 40603062 40585537 40548748 40636148 40643426 40678965 40606077 40607280 40590654 40677055 40629930 40689387 40670935 40741268 40658228 40630409 40585464 40667833 40659102 40625917 40632340 40622014 40629877 40643211 40613281 40667759 40641713 40650782 40621799 40636931 40620392 40642150 40662020 40589235 40632099 40667628 40622459 40666203 40616847 40698082 40612657 40686207 40610963 40607441 40675767 40672109 40681622 40672287 40663646 40613264 40636163 40666520 40698813 40600715 40671974 40670426 40669000 40627851 40642668 40702784 40660373 40595007 40737996 40607125 40634920 40665034 40650832 40671879 40665952 40562719 40683869 40678730 40673445 40610272 40720216 40572041 40669418 40671257 40661432 40671660 40680194 40624921 40644732 40684774 40645782 40669718 40654520 40642095 40637757 40707910 40647555 40644169 40630748 40656708 40681082 40661173 40662514 40712035 40678054 40656104 40656247 40649392 40700919 40657306 40666481 40760066 40637402 40617998 40664602 40662074 40719693 40721747 40676681 40650407 40728863 40694800 40656576 40654252 40721406 40644773 40637446 40762774 40686721 40672772 40734158 40671400 40701368 40687051 40705590 40653916 40698738 40709406 40670276 40674353 40676503 40693122 40728769 40647785 40700401 40712688 40758684 40698278 40624876 40622535 40692759 40676113 40665702 40695646 40714802 40697022 40746710 40640500 40711302 40777922 40695413 40745235 40710760 40680320 40633638 40796006 40684291 40710741 40660511 40700540 40749598 40639690 40721351 40612346 40701253 40723792 40763133 40733642 40646392 40650410 40645965 40627132 40681610 40689849 40708723 40715406 40733318 40701230 40598055 40672052 40738199 40635690 40704111 40697454 40733626 40711510 40688240 40739959 40724601 40730111 40733234 40721798 40687883 40747744 40702445 40727811 40789779 40689060 40820149 40676018 40690990 40725363 40670371 40658707 40720005 40726476 40686395 40667693 40734517 40737470 40802007 40730341 40740129 40785736 40752033 40764631 40688792 40749599 40702381 40704490 40676843 40771686 40719499 40697226 40729320 40744325 40760151 40668081 40770012 40758608 40659955 40751333 40699387 40654076 40711455 40816193 40751023 40778729 40684573 40684090 40712798 40747267 40733697 40756438 40775375 40733545 40721450 40741701 40698022 40780565 40703673 40715583 40683682 40698290 40688242 40702155 40761909 40705176 40798456 40689606 40763928 40721774 40764502 40801702 40807279 40731451 40736121 40755028 40696696 40792524 40670597 40650983 40781389 40665659 40817555 40807301 40760928 40744933 40787170 40709045 40728827 40772538 40711189 40794364 40762340 40792928 40709849 40757431 40774855 40701999 40713725 40772208 40731172 40778621 40721732 40782160 40690555 40693773 40792042 40738846 40773267 40812234 40774505 40857063 40777525 40729561 40762765 40749784 40675280 40799828 40711273 40760161 40807915 40791540 40759978 40800904 40768351 40755920 40710674 40730633 40753861 40732325 40727979 40785224 40788781 40769992 40739406 40721321 40718996 40703601 40702392 40796618 40737154 40739097 40746145 40803632 40785575 40751257 40626347 40715638 40686829 40713551 40789126 40695503 40724777 40836145 40760321 40666895 40818349 40756001 40740986 40779141 40752174 40724764 40751808 40731835 40772339 40773463 40789917 40758130 40752615 40752851 40804426 40747496 40770975 40763730 40733558 40755490 40771022 40840457 40841333 40766834 40752675 40808104 40767270 40694038 40770279 40786598 40740951 40792072 40786387 40766931 40713264 40809202 40719515 40839719 40805017 40790515 40811719 40763050 40867744 40720834 40843365 40778762 40678353 40758287 40798092 40802383 40922870 40809142 40748865 40776505 40784985 40753040 40773121 40752939 40709875 40759740 40867616 40828924 40852107 40743072 40769381 40849088 40896359 40746635 40762656 40834576 40765470 40740450 40870185 40748636 40766216 40811272 40758555 40791843 40837694 40776038 40815525 40780459 40795446 40841793 40777001 40741247 40743536 40797364 40812144 40812309 40785050 40760020 40790053 40830741 40808082 40707675 40814303 40763577 40767914 40756004 40809477 40879136 40796454 40854580 40828730 40822963 40788144 40729713 40811244 40769603 40872779 40712773 40794275 40859325 40824876 40822177 40820434 40781790 40791556 40895520 40741767 40752647 40782474 40764217 40831092 40818223 40823421 40770505 40832125 40755690 40830181 40775721 40833253 40887149 40929477 40836075 40844782 40840459 40821515 40816209 40797622 40792962 40884756 40798111 40838967 40874924 40850265 40797308 40801421 40833513 40820737 40878343 40840434 40824620 40876948 40804916 40791108 40855656 40854903 40854850 40817001 40884732 40815568 40743435 40840258 40824177 40833775 40845912 40800300 40828230 40795604 40797489 40817651 40810062 40902897 40843456 40813989 40793317 40853675 40773218 40852373 40794127 40822790 40796783 40901128 40832569 40785709 40903578 40811206 40817996 40828605 40793007 40806153 40763294 40832879 40876665 40865375 40807748 40826280 40890694 40793215 40777906 40784984 40836247 40844498 40836278 40859810 40858004 40904869 40861419 40888689 40889244 40889982 40889937 40839327 40809546 40868912 40868469 40879993 40817424 40818797 40879524 40860573 40851326 40907197 40882233 40890577 40817488 40826684 40908630 40880001 40851667 40795147 40807514 40866240 40884407 40816019 40829368 40820220 40829979 40829723 40851432 40849776 40867390 40842844 40789038 40917415 40894373 40968249 40893852 40871066 40873737 40886472 40875705 40800024 40891718 40871868 40922259 40924257 40865863 40825139 40885366 40817133 40848423 40906538 40882614 40885226 40942994 40912755 40974625 40838455 40901057 40868698 40848388 40915788 40879475 40884325 40844708 40863089 40869842 40885521 40904248 40885730 40927465 40955137 40913377 40856410 40851384 40896549 40894678 40890427 40884714 40883119 40835376 40855616 40873970 40881742 40986346 40909322 40863583 40983089 40883654 40875794 40823111 40930287 40923502 40913377 40892967 40837324 40907698 40969774 40912547 40880333 40902979 40916685 40888877 40894154 40910874 40872145 40878650 40902434 40930665 40845195 40905109 40889521 40856753 40878424 40856402 40896993 40953051 40878831 40906465 40924408 40876279 40996318 40864127 40880283 40897742 40907560 40891344 40960957 40939247 40949849 40900513 40891717 40866244 40921703 40888058 40944745 40933254 40886868 40858800 40949275 40970430 40892855 40885076 40899561 40959773 40880803 40908067 40953820 40855449 40875400 40876000 40929872 40820862 40891176 40905030 40890669 40961183 40862721 40923304 40941576 40881074 40845770 40881605 40895913 40964800 40881148 40859020 40867526 40940764 40903518 40832933 40910490 40958005 40996128 40898944 40988865 40887501 40924973 40917010 40906559 40968530 40896755 40896514 40935806 40961911 40904263 40992360 40928952 40857181 40959612 40987954 40923109 40901531 40942010 40976531 40912541 40874851 40992067 40874199 40913374 40982270 40971959 40898728 41002295 40903138 40911418 40918268 41012428 40983096 40934224 40950533 40885448 40931216 40966545 40909017 40920211 40881786 40905994 40958462 40992079 40905731 40952023 40917269 40993981 40930644 40957773 40912425 40969290 40891271 40897954 40947898 40855385 40946311 40960265 40913626 40906858 40920339 40916179 40880057 40956380 41026541 40894186 40920478 40892868 40919797 40854419 40938620 40968606 40961909 40955925 40894697 40937687 40957423 40988945 40940144 41030714 40955101 40878834 40895109 40859502 40934222 40956708 40908147 40932221 40935103 40956800 40939839 41087864 41012268 41003874 40929936 40898986 40942756 40976600 41026810 40920350 40904830 40905792 40926402 40903973 40972024 41047212 40922324 40930632 40953880 40972945 41002368 40999367 40991231 41068505 41026113 40956714 40946951 40953048 40997285 40968723 40991372 40971025 40997970 40932894 40953682 41038458 40968343 41014004 41016023 40960955 40846178 40875241 40935485 40978438 40939503 40924922 40987810 40989138 40965896 41020300 40978335 40968068 41022341 41028614 40984785 40925946 41045112 40927098 40938061 40956080 40922196 40961091 41013564 40989025 40983694 41028576 41022647 41027829 40937913 41053869 40995237 41033754 41027706 40998930 40997563 40913950 40941186 40979019 41018694 40986596 41009016 41042945 41006356 40940518 41003645 40981748 40971369 41078706 41024195 41002138 41002596 40920901 41060812 40986302 40955227 41049789 41045081 41003562 41033918 40935746 41076308 41040122 41005438 40992360 41014444 41000959 40972179 40930408 40992713 41020772 41010222 41039487 41030501 40985697 40951059 40976432 40971947 41039975 40955301 41037764 40958887 41005496 41063553 41048960 40993217 40999461 40966436 41054296 40968661 40917845 40972736 40983387 41065147 41039584 41025066 41062082 41039600 40978761 41023336 40946219 40989561 41072546 41021848 40997293 41046418 41019870 40987428 41026821 41050841 41114950 41011527 40962585 40978159 41109001 41036075 41059592 40982618 41055036 41013770 41067592 41052810 40996157 40981400 40993250 41017236 41025780 41023295 40925131 41013913 41066307 41057698 41028051 40992494 40984344 40969802 40985923 41010573 41052304 41010583 41022606 41081054 40995683 41052020 41061485 40985138 41103804 40985004 41009945 40992667 40993429 41014094 40992177 40969744 41036159 41125998 41014863 41054480 41036811 41053614 41090584 41039054 41077803 41044573 41116145 41007900 41058383 41075921 41035907 41079413 40990176 41050057 41066806 41048531 41069385 41023670 41023175 41038277 41042398 41061240 41026819 41088890 41079163 41062020 40998358 41046658 41051274 41073788 41075838 41131094 41064200 41040659 41010459 41001414 41122858 41087306 41013274 41071171 41039104 41123812 41016434 41063641 40974429 41051783 41085270 41046285 41108304 41047871 41118224 41094581 41138966 41075162 41139765 41061491 40999388 41050514 41098438 41066456 41034162 41076394 41048530 41101423 41094381 41095186 41099054 41035418 41061252 41027386 41096267 41031422 41061718 41068364 41102860 41079375 41051800 41074722 41112937 41056092 41097487 41095096 41085553 41080574 41159631 41054219 41100517 41100155 41087933 41045439 41096346 40987839 41022293 41143952 41118078 41092631 41072760 41024027 41046941 41119256 41130556 41106275 41096148 41083093 41052586 41079409 41095209 41078195 41077718 41106152 41067555 41177506 41000409 41132841 41137180 41166711 41088602 41130590 41056950 41059581 41159911 41093366 41120156 41082890 41102227 41085514 41019453 41130877 41108973 41098662 41121045 41099199 41114291 41117905 41154747 41108046 41093667 41119330 41137356 41118810 41082002 41137545 41087591 41220043 41143513 41094755 41197416 41087140 41148252 41102337 41104548 41126633 41137982 41073018 41093588 41182758 41106520 41093457 41149926 41094817 41047823 41154022 41117014 41185082 41089890 41142882 41115891 41089583 41121446 41130580 41101245 41107772 41104645 41144935 41097530 41191669 41215207 41138456 41067296 41133540 41144834 41117940 41205930 41142738 41086182 41131366 41088952 41090303 41106164 41231585 41156053 41226959 41118070 41089609 41148184 41163387 41153434 41149302 41124393 41121499 41126517 41135765 41173961 41188031 41143518 41150838 41177761 41188097 41229666 41137054 41140464 41202098 41173432 41145095 41154828 41228798 41186941 41150641 41145463 41137491 41160027 41180413 41159988 41149481 41163583 41156771 41112092 41172949 41109340 41037354 41196289 41128519 41128795 41191014 41204343 41146536 41088450 41093419 41074291 41172696 41163392 41143545 41155011 41294938 41139410 41117479 41117875 41193018 41096345 41193254 41193363 41169269 41105379 41139335 41203663 41129719 41169289 41122815 41179935 41114179 41156730 41126559 41159441 41128405 41180564 41137125 41222001 41109382 41210864 41171504 41159655 41211893 41232286 41147584 41142483 41188564 41098967 41161759 41167067 41229255 41142387 41132309 41118531 41157778 41232843 41110142 41216922 41096327 41236030 41146443 41153529 41152203 41161863 41229230 41152204 41251958 41159547 41127211 41179391 41180224 41155858 41202681 41187001 41165387 41167962 41147394 41203482 41190650 41135508 41138111 41267652 41131443 41087049 41168354 41171518 41183410 41263692 41226646 41194858 41194482 41183340 41184549 41232402 41255752 41201785 41137682 41199596 41193220 41218987 41224560 41228780 41195901 41198664 41235967 41186026 41212715 41154286 41238901 41208952 41176071 41198808 41272465 41144729 41168142 41174776 41212448 41207120 41211725 41171766 41221345 41213321 41183113 41201722 41234701 41167054 41226926 41170856 41226686 41170830 41158184 41176908 41251998 41217755 41156843 41183072 41198765 41238134 41249220 41164622 41298634 41157075 41194947 41131217 41109566 41160703 41259313 41261119 41241726 41222963 41204123 41238342 41236091 41182188 41166336 41204736 41179650 41271136 41277202 41215547 41216379 41292656 41271720 41261154 41291798 41243649 41193045 41206622 41201198 41154525 41237979 41171840 41247379 41205346 41232408 41252310 41243142 41236744 41157671 41206072 41134335 41258782 41241574 41257779 41217759 41183819 41224725 41230206 41286058 41204113 41197059 41253284 41207050 41186481 41234319 41280068 41264298 41258278 41249628 41288487 41148003 41235170 41216653 41257460 41249204 41249616 41211912 41329638 41265575 41240100 41200785 41318504 41186879 41305342 41208364 41178138 41344711 41308176 41175392 41225573 41256638 41214012 41263028 41297338 41234995 41247072 41207826 41226643 41169296 41217046 41261386 41251100 41245753 41217999 41236318 41287265 41268690 41249112 41229138 41185246 41309821 41141867 41192854 41264161 41316666 41248010 41240881 41273652 41290583 41185007 41254547 41221601 41193419 41257325 41280553 41225924 41192622 41321061 41242156 41257662 41246437 41244652 41275299 41237346 41285441 41281542 41290820 41173324 41323137 41285605 41254877 41226403 41219109 41253022 41298722 41234861 41275439 41240719 41232091 41190175 41305758 41243433 41230279 41259576 41260887 41349761 41295813 41325969 41285359 41262011 41240255 41262941 41271080 41299691 41290873 41319519 41281345 41182881 41332302 41273649 41264387 41306493 41211133 41332863 41252565 41303502 41280593 41303312 41305390 41343834 41301919 41284059 41245588 41329722 41265944 41228489 41293805 41377275 41278638 41302154 41297849 41321449 41319921 41369213 41293376 41244698 41258155 41288119 41364495 41323253 41286343 41264420 41354004 41255113 41296213 41269135 41264102 41243030 41212852 41294529 41210877 41261709 41302184 41272673 41291402 41250151 41254216 41232613 41333370 41257023 41328330 41311494 41307297 41344021 41221514 41289550 41331229 41300146 41273230 41228893 41316935 41328290 41268816 41286774 41278723 41348664 41352741 41338536 41209253 41379087 41276648 41328702 41352006 41342699 41333705 41339450 41256704 41328738 41327491 41325065 41434163 41339875 41303215 41296504 41284379 41373940 41362488 41277512 41272500 41287723 41274049 41307912 41294461 41296104 41255895 41301154 41296044 41323661 41326541 41315181 41319982 41347191 41372625 41368613 41289731 41302073 41285959 41344941 41242687 41382142 41344065 41382910 41375201 41247241 41297366 41302755 41309531 41354474 41363870 41315604 41277460 41235323 41288469 41400992 41399915 41293282 41384774 41316733 41313836 41354987 41301156 41348649 41327857 41355991 41369274 41293952 41233808 41311153 41316006 41362462 41357015 41326711 41315028 41308044 41314688 41273407 41334200 41305503 41332940 41420682 41375071 41304532 41311049 41368559 41411275 41281635 41362235 41370470 41378499 41353404 41280533 41320158 41270051 41308613 41396704 41333001 41377362 41330841 41374879 41426273 41418511 41335883 41313583 41360694 41309748 41283092 41332602 41351633 41383881 41398896 41393765 41411777 41368520 41361792 41350319 41410500 41411624 41383735 41342527 41376073 41418740 41309492 41424817 41288374 41358619 41379606 41306859 41379545 41359500 41319399 41374184 41419614 41437427 41386575 41354728 41382944 41347519 41350005 41340334 41413041 41424210 41348225 41352404 41340991 41413816 41384480 41365551 41315109 41329299 41385883 41342778 41324682 41364629 41400434 41351433 41381651 41407448 41317886 41317219 41331145 41301509 41373780 41458071 41434408 41386052 41431191 41368895 41435227 41340754 41527825 41388501 41359546 41438104 41311567 41397800 41511578 41352541 41427230 41371168 41348685 41425732 41347173 41406519 41437027 41446855 41390480 41412859 41403478 41373853 41456834 41450386 41394267 41344106 41372404 41378572 41383932 41432606 41348853 41367333 41408171 41325734 41430065 41438244 41410864 41471296 41429911 41447308 41415969 41348313 41481900 41451244 41463326 41429794 41411489 41418979 41398197 41284841 41400837 41425196 41365360 41361406 41395571 41431924 41443706 41398292 41422599 41305102 41410928 41420548 41448275 41344913 41386055 41371111 41342526 41429789 41455901 41376076 41424355 41414562 41413582 41449057 41466574 41545301 41418992 41422559 41350778 41369368 41457932 41435331 41406333 41338610 41373208 41425916 41463046 41413307 41380600 41471245 41419720 41426267 41382518 41406650 41470585 41481852 41492789 41374594 41423826 41418595 41414808 41428752 41417369 41443221 41463462 41485999 41420982 41405546 41471771 41465386 41481327 41434410 41366654 41443471 41384035 41491741 41437945 41459584 41419144 41384059 41490422 41429733 41439519 41369981 41416359 41400548 41452327 41460145 41429467 41393779 41462112 41363628 41473044 41489284 41474792 41476974 41438497 41458534 41410408 41381829 41506450 41405724 41364962 41423380 41374281 41409663 41459100 41359753 41410016 41456272 41453493 41442504 41432526 41363681 41414826 41429347 41464264 41479109 41535852 41470954 41442563 41445385 41436918 41532827 41457104 41487739 41500858 41443148 41392288 41381410 41474376 41491676 41480492 41467289 41398634 41350377 41499089 41455579 41434004 41512034 41417974 41456392 41497163 41444675 41459210 41453592 41497303 41384419 41489591 41482088 41358042 41553517 41484371 41425747 41473338 41429116 41429086 41488101 41498889 41447588 41444709 41543374 41421829 41517344 41418892 41499133 41479870 41366536 41494232 41536520 41464187 41471319 41466572 41485996 41447078 41465322 41470212 41531301 41468033 41510208 41447055 41510244 41471449 41439714 41456963 41392037 41396904 41505286 41537121 41449550 41480890 41462548 41460109 41518853 41484769 41377896 41526176 41425055 41477244 41434692 41426166 41499164 41555745 41489727 41519424 41483812 41461990 41519392 41458122 41484444 41511346 41552175 41474382 41458884 41486502 41473302 41561252 41502242 41442934 41480340 41527906 41454941 41440498 41484440 41483222 41505441 41467259 41508127 41451559 41441378 41491405 41450143 41484522 41507964 41540046 41417883 41427775 41518728 41455834 41531621 41455715 41442612 41549144 41488473 41428380 41503941 41540746 41530418 41535381 41568755 41517332 41490447 41436261 41507546 41523055 41462490 41499607 41494181 41561474 41456862 41567431 41496089 41494725 41490200 41502301 41580785 41493165 41520310 41539265 41467712 41524684 41476687 41529668 41592175 41518347 41562258 41458476 41461187 41527514 41491356 41476588 41525723 41517120 41492606 41543881 41472474 41508642 41498736 41531697 41608835 41593748 41517444 41389282 41579480 41532039 41527374 41495677 41558200 41504135 41539829 41453808 41507510 41489521 41540328 41493633 41548851 41485022 41582635 41546820 41504206 41593258 41580329 41527286 41563879 41614193 41535637 41506060 41522501 41524014 41565046 41474445 41484767 41535457 41499047 41513981 41537888 41545013 41544270 41482838 41534031 41553326 41461908 41517735 41531881 41448714 41596638 41554050 41600418 41538541 41547540 41486295 41469130 41547696 41516597 41558328 41521926 41533025 41515559 41584978 41527342 41508767 41568456 41527542 41509120 41502961 41579056 41602716 41538332 41557415 41542594 41523948 41449462 41556705 41586581 41509327 41618730 41573639 41534638 41579719 41538493 41536601 41605025 41546740 41641563 41529937 41572268 41541690 41626939 41511736 41605774 41467732 41570602 41496790 41581217 41636118 41490094 41539947 41510300 41554977 41582509 41560326 41599785 41600553 41541497 41583898 41569775 41546266 41482624 41533293 41542344 41588996 41601615 41631660 41574751 41538176 41619243 41524235 41586414 41626436 41578115 41576344 41543867 41582976 41588162 41596102 41582786 41542115 41597422 41495491 41575044 41625227 41594766 41609148 41595575 41570665 41593240 41594073 41502391 41604029 41545105 41565935 41464237 41613015 41640393 41479629 41615602 41553634 41537629 41632543 41616057 41581431 41554830 41626812 41643988 41569427 41570515 41557996 41608570 41671250 41556266 41536504 41609864 41595372 41621298 41638627 41654715 41553141 41620432 41540399 41651305 41573362 41604750 41586682 41583107 41560644 41613623 41577506 41610420 41591461 41573857 41608560 41626270 41560664 41597689 41590869 41595214 41570718 41505220 41644912 41665999 41588589 41658033 41607023 41593155 41563828 41636910 41501554 41665049 41574439 41638516 41625487 41614990 41583948 41583969 41538984 41589540 41622781 41580216 41571156 41576706 41642097 41590661 41607334 41585350 41600609 41626691 41580455 41596900 41645802 41602560 41539439 41565220 41613764 41705237 41654107 41577029 41543759 41611407 41619680 41636657 41642512 41597762 41583972 41646812 41656246 41680615 41643673 41611494 41644521 41722499 41490442 41647782 41632518 41591253 41557784 41635782 41567709 41590446 41654645 41638613 41599896 41557715 41666557 41618025 41598111 41600725 41683672 41632742 41597027 41664792 41611373 41656878 41587732 41636061 41631057 41667649 41645113 41637485 41626218 41689788 41629358 41617608 41620973 41595214 41622084 41628054 41670062 41658500 41626279 41642997 41620883 41633681 41608609 41651808 41640955 41691568 41565044 41610143 41652228 41625683 41686455 41618060 41630923 41611969 41634115 41697472 41691720 41607275 41569538 41712095 41677810 41608705 41616852 41698716 41674977 41634838 41605807 41653596 41590061 41605779 41697726 41690433 41628062 41706619 41721128 41583570 41691708 41694578 41700686 41724106 41598022 41633710 41610093 41710555 41595553 41646232 41704973 41626167 41606121 41669970 41658559 41687963 41736991 41647082 41600754 41657283 41772945 41707944 41687730 41597816 41672537 41709821 41688154 41585546 41639882 41643163 41623485 41654148 41709993 41618768 41694376 41632035 41691362 41599517 41678716 41652299 41655677 41630936 41735380 41671305 41625045 41678431 41701127 41697554 41697275 41630030 41611900 41668971 41711704 41688296 41714665 41627014 41685102 41584719 41670739 41680339 41735137 41672400 41685922 41620731 41670669 41640341 41640096 41667837 41606369 41705740 41641070 41697472 41706459 41688460 41688117 41701171 41736159 41740278 41719349 41637866 41701572 41704818 41727949 41741389 41659681 41699239 41668415 41629608 41697515 41740922 41702931 41727919 41731741 41667339 41697357 41654837 41802076 41694715 41705313 41708796 41673745 41723905 41749807 41723347 41666766 41700786 41692079 41740594 41690194 41693196 41713013 41740749 41699244 41710307 41735031 41708573 41678936 41718977 41747697 41667077 41720564 41659965 41687488 41690262 41694310 41711624 41719383 41644098 41719237 41706088 41669136 41750547 41719224 41678657 41637165 41693169 41596960 41671662 41636544 41695249 41740558 41734552 41664113 41757937 41761622 41839481 41743568 41749084 41692263 41703833 41728404 41752201 41715691 41762365 41707793 41711399 41787177 41769475 41721450 41703839 41701046 41719641 41773433 41696872 41729689 41681334 41711272 41739599 41639910 41679009 41699143 41702570 41740372 41685517 41709484 41692516 41669262 41643162 41750929 41705533 41732464 41693854 41672459 41746319 41723469 41697358 41711129 41803403 41707569 41605827 41729390 41706336 41741248 41713629 41738731 41696882 41731054 41761050 41755577 41736523 41758470 41759190 41744420 41779098 41679275 41763000 41776329 41736506 41788231 41736437 41797627 41741040 41710391 41726231 41739445 41718079 41755248 41651875 41725408 41749986 41714762 41605789 41737444 41831440 41726516 41670977 41748601 41736927 41763565 41709429 41726288 41724597 41670038 41727436 41747023 41721541 41728401 41780110 41722565 41744792 41750892 41718437 41740927 41794047 41786777 41719057 41748415 41698529 41776835 41772186 41751440 41751896 41806155 41740481 41774551 41766116 41744958 41789188 41741416 41836848 41748335 41850209 41768999 41835594 41752618 41796950 41733364 41784457 41757255 41753397 41748588 41715818 41826972 41819000 41816458 41750170 41773753 41851551 41762726 41742133 41754413 41802871 41812693 41757451 41750674 41748191 41731831 41780199 41826605 41798695 41783726 41800568 41674173 41809713 41789200 41753136 41732986 41732978 41765838 41776938 41785210 41740813 41809543 41767269 41722550 41729658 41669510 41780625 41719912 41796501 41780553 41788932 41810140 41711718 41785759 41711808 41859957 41802588 41787220 41755820 41781085 41773458 41798333 41786132 41772629 41756770 41897190 41744583 41803073 41817957 41758998 41793506 41754825 41742659 41807688 41773019 41788070 41807721 41784799 41771473 41761512 41855115 41736023 41792668 41812996 41784669 41781474 41797136 41807451 41891160 41810497 41798614 41769595 41877094 41812717 41722199 41850154 41805155 41860281 41867215 41862003 41758517 41780731 41831616 41761006 41747263 41731712 41875370 41824964 41810702 41830574 41780368 41716837 41795587 41794737 41827997 41799127 41861769 41907716 41826494 41764070 41766626 41816018 41773549 41822445 41742213 41803182 41746687 41789688 41891773 41775688 41879936 41831398 41837804 41877150 41875360 41859666 41779302 41774495 41796981 41786925 41776810 41801670 41829637 41816174 41843531 41822080 41827333 41907269 41809620 41810833 41831522 41790779 41850374 41801458 41785607 41873435 41839877 41843678 41768334 41860344 41854232 41776377 41746044 41905732 41714486 41857517 41764508 41855779 41842434 41878194 41785678 41842090 41806913 41834185 41775897 41819103 41778960 41784323 41766997 41880787 41821105 41854178 41850851 41878289 41866162 41913497 41842610 41821378 41895964 41733988 41783112 41893334 41866164 41813672 41868644 41822829 41786425 41805900 41927495 41781801 41811058 41773643 41853469 41809762 41843988 41809369 41888035 41851485 41890303 41868592 41968133 41844824 41862001 41874876 41863342 41883772 41827149 41883296 41892341 41796905 41900979 41806350 41859682 41878643 41751852 41948329 41840104 41883675 41918384 41833879 41890412 41866623 41814234 41874503 41925529 41811183 41885050 41872265 41819000 41895807 41866676 41854290 41904577 41799332 41923948 41828938 41877463 41877908 41848086 41891822 41869158 41841526 41884365 41874230 41894117 41915932 41887191 41857690 41886037 41853269 41877022 41881591 41879382 41864928 41809433 41841534 41910180 41827396 41931597 41874461 41921161 41879992 41991791 41854474 41896744 41903258 41831511 41882504 41872683 41815690 41808508 41893739 41858758 41809388 41939650 41940125 41887340 41874532 41871584 41888701 41879164 41899112 41871247 41873775 41911794 41904392 41869555 41927645 41846303 41923009 41841369 41909521 41785490 41870227 41841831 41958554 41935794 41983154 41890104 41896612 41952019 41894453 41922092 41911151 41929113 41894409 41844000 41876524 41920539 41862129 41870216 41950967 41840846 41899607 41920124 41908967 41896438 41911260 41999858 41874807 42006994 41901570 41965191 41942479 41973725 41952779 41835375 41888116 41810696 41894221 41956416 41874750 41878884 41948712 41884986 41932190 41892355 41883382 41874448 41859616 41898539 41877356 41959848 41920848 41947524 41935893 41907954 41915306 41886559 41883553 41860249 41864166 41919269 41885354 41860423 41894724 41952467 41972935 41947549 41920949 41955221 41936565 41815300 41947856 42018422 41921245 41839437 41936128 41918434 41952096 41910359 41904971 41899099 41864493 41896869 41963503 41865427 41913543 41931055 41917348 41894624 41903546 41987411 41902792 41928592 41959094 41886521 41928650 41914329 41951918 41849710 41911947 41935581 41926159 41920351 41982572 41927445 41946821 41864079 41873021 41933581 41919171 41961465 41904943 41944021 41939457 41975638 41897159 41928089 41995498 41870461 41951667 41950345 41864672 42037150 41977356 41950456 41938885 41936281 41947398 42026823 41957455 41866779 41961725 42013805 41928470 41958705 41936892 41958099 42027677 41864198 42046597 41941286 41984103 41968090 41930584 41932759 41928662 41968965 42028975 41939148 41930125 42009262 41901950 41926856 41964262 41950981 41974558 42057878 41911492 41974783 41979731 41939057 41992188 41940050 41950788 41953638 41964754 41928585 41941434 41965925 41999726 42021879 41974152 41967520 41930342 42009951 41911014 41936557 41970615 41978082 41935902 41913921 41952287 41922122 41944125 42003200 41926915 42086741 41943074 41946677 41919921 41964539 41950825 41975916 42029404 41926536 41954234 42022550 42022662 41930980 41989544 41936455 41951735 41864802 41977781 41998689 41981736 41988130 41947332 42013125 41946720 41964102 42068989 42023755 41979744 41933997 41990260 41985298 41985855 41994448 42015128 41940846 41992566 42040507 42010422 41994202 42023247 41957753 41974876 41920791 41946589 41983095 41950917 42021060 41945971 42063434 42027284 41955521 41963416 41959004 42105939 41985061 41995868 41968031 41970463 41950910 42032819 41941788 41984300 42001162 42019414 42011333 41926592 42016803 42052608 42064279 42000563 42028417 41976570 41995388 41984278 41989008 41944566 42030777 42016938 42061433 42008861 42055083 42035074 42074373 42009551 41918508 41967711 41971110 41988362 41966235 42054760 42031092 42057309 42027143 41994594 42020591 42020144 42006706 42006288 41998386 41948474 42088770 42008728 42029280 41980797 41969619 41991686 42031807 41965664 42003844 42003441 42041582 42017322 41999125 41941849 42051432 41967303 41999984 41962177 42026475 42037046 42011780 41992250 41941908 42068772 41961198 42027567 42077148 42051700 41970746 41959116 41995506 42038877 41978094 42095153 42017971 42000908 42022204 41956689 41955887 42073148 42039571 41940194 42043381 42042016 42022838 42025679 42067872 41989363 42089404 42042932 42041306 42044600 42075538 41953816 42078311 42004017 42023004 42088479 41981270 42006427 41963425 42065057 41978303 42046495 42047192 41972433 42056146 42075662 42029614 42003410 42114657 41996029 42098663 42088210 42114579 42052567 42057243 42079278 41976427 42097680 42140675 42089481 42002893 41965464 41983832 42112746 41993718 42069123 42110117 42082618 42089863 42049498 42008289 41974492 42167457 42045667 42074599 41989297 42001272 42033088 41977503 42084121 41989251 42045736 42060500 42020019 42070532 42032588 42102315 42078248 42152807 42113661 42054931 42021006 42134426 41973987 42083753 41991648 42077409 41988718 42080222 42030811 42045402 42084644 42084454 42069897 42113297 42077382 42078713 42080704 42018811 42018553 42097438 42115336 42001726 42030031 42072088 42010974 42016605 42080307 42008553 42046756 42108647 42016945 42090007 42030820 42105258 42081589 42097766 42071491 42064180 42076270 42111386 42035959 42097780 42011546 42060932 42107319 42021517 42006049 42092501 42065637 42070348 42045848 42119220 42086740 42136092 42090916 42026924 42118851 42083108 42081803 42121216 42083340 42024938 42055286 42144346 42024731 42088737 42022319 42108938 42124971 42079538 42115671 42108667 42122529 42138579 42072258 42077743 42108052 42073288 42090360 42067037 42149783 42107262 41998066 42145763 42075289 42105526 42069358 42039938 42054391 42085225 42152828 42048501 42056603 42147033 42055664 42043596 42061428 42190531 42020504 42048375 42112570 42072336 42114314 42079391 42114255 42121481 42037465 42093107 42113269 42106675 42112621 42133339 42064913 42123207 42118163 42071142 42187308 42088602 42137304 42066800 42141331 42166842 42087180 42151156 42141174 42124229 42142140 42130933 42141612 42135225 42077692 42123582 42136750 42026654 42071378 42186166 42091528 42146454 42001666 42074346 42178408 42123591 42166568 42091200 42154185 42231140 42176997 42135985 42066644 42160412 42112040 42144690 42019403 42073702 42141905 42078413 42061170 42067204 42080742 42144224 42126797 42146033 42210029 42090676 42015091 42160373 42135159 42122140 42078524 42039868 42178541 42105447 42125567 42141502 42116589 42134178 42127382 42188969 42084283 42141579 42080243 42081347 42068291 42084120 42216572 42118945 42155488 42152352 42148245 42167485 42115306 42055255 42113853 42141838 42134130 42178109 42108360 42109598 42138312 42070991 42117244 42214275 42107986 42103296 42143784 42138573 42127604 42138749 42155332 42114576 42205759 42122841 42153589 42091746 42156665 42136205 42231891 42163820 42163404 42114777 42170604 42122491 42143072 42220658 42159070 42154697 42189244 42179158 42163519 42153020 42113085 42169125 42063566 42095366 42174953 42109560 42202464 42085019 42105269 42132118 42085653 42188683 42142396 42140277 42167681 42177085 42199604 42144449 42134875 42137864 42185556 42102451 42048281 42164878 42311896 42165818 42089329 42080465 42178252 42129470 42158628 42189962 42209739 42152815 42141442 42129181 42144070 42106267 42241342 42230861 42212041 42109718 42259056 42164626 42198306 42129382 42166456 42168204 42167461 42160408 42199831 42175905 42206509 42222327 42182825 42072517 42172424 42121008 42159155 42162722 42114424 42197754 42145111 42173369 42166456 42095505 42168802 42218275 42189640 42128102 42162098 42176843 42107942 42174802 42121561 42218816 42214638 42240423 42053905 42165808 42128152 42104416 42147312 42186221 42195495 42136564 42206665 42167675 42118487 42121380 42098041 42155277 42153998 42179380 42206733 42159792 42177332 42165246 42147947 42153255 42171748 42164953 42126388 42113778 42192044 42153718 42116000 42175481 42160315 42136049 42156508 42175533 42202902 42161548 42149208 42156254 42116354 42167598 42183686 42163966 42159444 42141854 42109213 42100596 42185523 42099364 42106458 42096990 42140816 42134477 42103504 42176863 42160052 42105973 42166061 42202896 42152739 42103714 42167669 42081848 42204955 42090430 42262717 42172236 42107771 42161613 42101113 42170300 42157606 42127855 42109351 42092793 42171376 42168253 42145695 42134877 42186961 42082028 42119562 42081294 42131149 42117237 42137344 42095979 42135456 42187188 42122177 42053372 42091794 42105509 42146819 42132006 42137565 42102969 42080722 42141593 42133029 42170504 42183148 42105865 42128781 42055778 42083323 42127809 42148337 42092193 42127104 42092234 42062729 42107357 42119355 42111436 42182158 42198406 42112597 42064251 42098600 42075900 42127856 42148065 42065000 42163906 42103208 42123726 42101772 42070420 42116095 42069222 42039573 42053444 42047420 42161830 42093246 42024842 42113087 42132706 42084183 42133261 42127439 42146349 42101401 42198550 42044594 42067562 42119338 42069990 42117243 42016433 42158518 42126811 42105756 42112782 42059133 42041543 42065611 42136222 42146661 42115235 42098403 42161227 42104770 42042633 42088261 42105437 42172241 42130094 42112999 42123170 42063246 42114945 42039406 42075458 42092916 42110342 42113607 42064328 42089515 42104684 42110565 42091345 42117113 42039653 42053831 42141075 42139158 42164831 42048748 42043084 42083258 42075326 42152880 42023712 42096875 42078933 42027984 42038574 42052214 42127736 42075201 42112056 42091986 42034141 42128637 42071184 42074383 42090361 42109457 42138215 42057035 42038115 42149012 42039198 42134759 42048176 42048237 42061257 42070983 42089132 42091345 42116477 42062510 42116972 42060879 42060140 42087747 42067812 42005026 42056675 41955692 42060476 42097252 42079139 41965664 42028789 42092384 42090483 42087359 42096218 42105576 42083910 42027512 42028609 42102988 42003843 42012564 42026847 42071291 42062002 42031800 42060495 42145222 42080711 42074705 42042030 42057664 42089587 42062284 42079841 42055923 42102959 42055853 42085094 42045311 42053435 42052381 42080147 42039190 42005726 42005577 41948403 42095971 42030080 42053757 42022278 42070861 42057859 42056398 42005215 41953104 42073216 42066073 42005950 42063229 42076034 42023977 42009022 42046117 41997310 42038083 42037796 42110535 42037503 42085154 41981015 42064250 41975955 42033937 42064771 42007117 42025719 42084732 41989265 42031844 42016978 42124031 42115143 42044615 42053917 42064931 42032096 41993199 41999890 42031232 42029693 42017806 42002738 42001771 42005347 42039238 41970512 41943460 42054485 42075915 42134171 42096471 42125230 41995239 42079875 42059666 42019858 42036059 41995448 42057815 42000541 41976497 41988935 42078735 42032260 42116958 41968282 42004163 41990610 42032397 41952464 42103542 42049321 41982318 42032385 42019077 42022702 42053091 41971037 41974122 41945917 42039832 42019758 42084925 41949303 41982137 41994634 41971065 42019029 42099963 41928126 42075266 42059429 42031953 41978820 42012471 42084910 41952335 42027953 41954088 41990994 41930877 42015764 42001977 41985099 41948258 41999862 41965954 41940346 42025885 42080109 41965040 41952590 42009400 42036792 41965500 42031614 41939204 42020826 41995932 42020743 41973179 42034938 41929971 42033077 41954410 41989701 41985131 41914523 42017267 41968662 42011718 42017240 41973892 41974031 42042269 42025777 41974311 42070419 42026994 42040500 41976881 42029396 41967923 41943523 41951692 41967302 41999274 41938809 41934516 42073257 41930536 42012838 42039103 41967534 41930494 41948441 41975421 41970574 42013652 41923358 41986646 41913284 41937315 41970282 41932574 41959061 42028334 41992305 41989458 41957395 42011309 41940033 42002371 41947539 41932943 41960690 41971065 42023547 41876951 41918124 41963107 41936766 42000823 41860602 41983312 41948126 41982875 41977929 41957807 41983446 41980309 42038938 42035961 41946279 41960569 41909814 41934467 41996873 41975492 41939136 41897999 41986581 41982156 41990134 41928876 41919669 41951855 42015116 42022589 41999318 41961858 41973423 41989795 41964836 41990834 41907200 41945850 41967256 42004838 41958388 41959034 41921817 41991538 41987561 41983610 41871192 41850603 41964442 41942122 41898994 41929599 41919965 41961240 42026592 41925775 41856306 41924210 41983189 41927852 41909316 41980893 41893061 41871057 41962668 41944582 41937630 41869251 41931551 41942163 41823008 41999373 41873492 41902862 41964972 41890843 41879222 41973592 41992519 41933020 41995848 41912884 41864562 41831648 41835213 41906311 41853836 41934256 41974005 41892638 41931812 41876581 41878226 41916281 41939219 41893106 41966274 41903463 41866853 41905622 41891794 41959783 42003057 41823614 41931058 41943358 41883432 41921514 41881036 41916647 41939173 41902170 41927869 41926921 41958247 42029461 41945568 41855732 41873047 41927538 41881673 41834272 41845303 41908380 41984434 41933308 41915659 41793621 41843857 41875720 41914971 41903728 41973460 41919363 41870534 41937386 41941795 41861915 41951495 41899922 41892956 41870751 41885763 41858216 41909609 41929109 41846745 41887231 41897543 41892765 41854855 41944301 41927474 41876617 41884014 41889673 41865026 41925912 41872346 41946112 41974871 41934286 41958061 41844848 41930078 41954197 41941017 41987192 41903566 41984426 41844249 41881418 41923553 41917346 41894074 41922203 41856807 41897498 41892909 41848594 41932957 41857761 41879495 41816376 41967953 41916944 41937596 41890852 41896502 41879734 41980153 41865015 41912962 41863772 41900026 41843522 41886798 41934581 41890442 41966918 41973190 41954617 41892921 41893100 41900797 41884145 41934748 41828776 41874377 41906372 41915702 41894559 41802835 41901564 41865258 41923154 41884826 41802919 41892035 41914852 41876117 41834242 41818743 41841363 41869061 41901238 41812186 41888995 41871294 41840969 41865121 41873242 41874082 41862129 41839700 41856560 41827322 41961089 41850541 41897334 41903835 41877916 41823732 41820832 41833025 41871650 41838999 41875190 41811535 41924934 41921357 41893835 41855002 41835746 41914217 41923269 41943085 41851730 41883585 41851169 41880400 41847508 41871912 41896325 41799974 41810905 41894972 41866812 41858776 41939923 41806817 41879106 41762335 41842934 41880323 41756196 41811714 41817561 41827852 41917055 41898388 41789550 41871416 41762759 41795740 41882116 41777783 41847046 41876854 41837139 41841028 41828155 41839075 41839500 41860739 41810135 41806985 41839246 41815075 41764298 41764127 41875711 41769022 41840176 41852546 41812769 41800309 41708002 41810163 41800263 41816017 41796281 41748309 41778700 41797762 41854897 41796970 41814937 41883483 41756048 41767669 41827170 41727051 41838956 41777283 41895957 41761502 41843383 41846732 41831614 41827425 41825168 41810881 41766051 41881659 41827589 41767018 41843019 41803369 41852908 41855078 41824677 41806372 41856595 41786091 41861021 41833619 41836642 41733353 41787576 41810310 41739777 41729183 41824631 41841588 41844018 41847003 41750869 41745190 41791043 41773990 41729904 41823892 41813132 41828269 41883727 41801852 41832136 41925360 41806329 41789237 41750987 41741649 41792832 41797778 41785178 41787756 41766937 41792569 41816471 41799961 41873274 41715848 41834950 41846633 41757654 41738580 41825889 41699646 41767097 41780696 41747669 41823259 41789008 41772887 41732670 41724092 41821890 41705195 41816924 41778946 41740865 41772137 41734471 41735337 41857727 41824204 41836796 41724672 41725841 41722808 41812006 41809604 41854382 41799609 41817689 41761071 41819542 41805880 41681208 41763177 41835925 41743825 41742347 41723932 41744513 41753183 41767193 41752100 41821042 41775965 41839286 41732239 41747222 41770729 41790273 41786680 41623885 41752870 41833250 41767036 41712854 41781251 41747371 41700262 41715315 41797559 41703706 41694389 41786826 41739875 41845205 41766429 41689406 41707125 41789062 41840320 41818472 41736884 41766200 41730157 41810155 41721084 41761262 41774396 41774987 41808654 41747660 41671287 41754936 41752635 41726104 41705763 41840216 41695454 41748741 41803501 41752648 41805591 41744385 41717878 41780212 41732512 41775600 41774610 41764111 41754097 41733537 41730213 41744656 41787676 41751705 41766835 41713336 41821105 41721269 41680919 41637813 41751373 41815045 41720391 41753765 41742704 41819179 41783604 41731846 41813988 41692657 41743338 41788572 41756430 41744104 41770422 41752631 41763006 41723307 41770101 41770701 41749697 41667000 41746156 41773621 41730113 41779701 41701626 41741002 41797033 41808973 41669700 41792619 41712333 41663408 41746964 41726498 41802054 41740641 41701318 41760188 41785891 41753807 41758135 41764322 41714457 41698818 41674901 41701626 41697192 41725198 41782378 41786393 41760057 41710455 41704558 41769226 41641049 41686787 41658396 41753874 41685445 41722913 41739970 41743150 41725797 41687698 41668495 41757847 41752833 41728231 41734576 41690651 41696271 41708149 41635576 41704064 41724583 41707637 41684281 41691514 41640238 41771367 41801362 41655607 41778605 41762859 41671602 41688319 41720371 41668205 41688629 41630404 41675340 41692995 41733161 41649675 41667027 41701616 41670098 41736950 41702665 41703089 41674484 41746326 41708852 41692379 41709849 41704669 41632965 41708907 41652326 41738774 41758210 41647615 41731879 41717069 41691298 41634263 41715270 41707358 41708133 41618278 41670764 41689823 41686098 41609890 41637467 41722511 41704610 41672184 41742982 41668860 41687936 41669339 41661581 41717284 41677834 41703286 41649476 41681544 41698953 41668454 41659688 41677132 41660102 41652648 41688978 41717553 41646225 41607735 41780063 41697995 41679163 41636266 41697379 41684440 41619586 41690547 41711522 41601105 41704758 41653674 41750277 41647727 41578793 41659714 41628266 41634344 41694099 41706978 41699716 41634287 41720625 41703644 41688941 41621805 41650102 41686045 41616741 41750202 41652109 41700799 41680300 41692143 41623270 41627429 41582660 41672881 41679608 41680345 41691280 41651817 41694555 41737811 41669434 41643016 41706191 41635948 41630295 41624311 41675082 41656454 41692519 41713132 41747127 41634529 41642444 41625824 41622295 41691434 41699701 41600967 41671694 41651414 41722970 41691214 41728787 41684626 41650012 41719121 41617186 41622483 41682166 41681856 41689972 41654606 41719550 41696006 41601253 41680277 41651284 41619351 41652388 41695227 41694766 41696800 41654086 41673332 41624523 41618450 41680640 41626942 41660451 41638902 41645208 41605110 41711564 41635455 41767375 41733751 41647318 41620015 41626338 41657059 41657688 41590714 41629776 41666261 41727703 41636910 41618637 41621653 41638744 41614128 41633459 41690400 41641760 41645374 41614770 41584262 41682618 41603425 41599438 41639006 41583369 41646615 41614160 41606252 41680256 41679279 41635869 41672522 41605672 41659811 41631649 41584844 41606996 41619982 41633506 41647866 41540751 41680837 41693293 41565647 41620964 41658394 41595191 41639824 41609004 41586719 41635051 41608651 41598874 41549887 41582711 41648319 41600932 41583443 41666509 41604931 41649621 41590859 41558782 41603176 41679595 41648013 41580843 41674082 41584136 41535991 41607353 41538384 41621561 41609224 41585579 41646639 41640309 41603483 41647999 41608258 41608002 41649158 41576519 41650575 41642713 41597396 41597293 41642401 41625204 41544081 41665039 41687881 41617827 41621908 41644615 41633435 41638216 41658592 41592212 41560295 41717444 41640329 41599199 41545181 41608026 41603176 41658358 41646844 41616685 41615599 41587437 41644806 41541631 41611236 41620541 41614728 41669541 41621728 41570644 41572803 41627485 41640790 41592735 41579584 41620583 41593733 41589937 41621355 41692144 41624318 41621488 41616958 41670052 41513445 41534162 41562009 41515304 41537027 41621470 41547883 41554960 41543686 41560971 41514794 41586951 41543304 41619471 41559307 41538936 41617915 41610042 41620365 41645263 41613066 41570159 41560179 41522900 41581314 41534399 41530405 41587692 41528678 41587876 41622729 41535366 41565293 41650539 41543501 41548174 41555270 41585934 41544523 41579792 41562391 41670175 41620718 41575888 41592568 41595890 41628945 41575573 41575319 41579847 41590162 41532719 41551161 41613880 41529135 41502590 41538971 41594682 41589761 41594475 41542671 41527641 41490888 41529798 41560228 41544305 41563097 41491885 41563707 41553788 41561713 41551585 41499715 41658406 41562943 41509201 41545560 41590485 41564276 41524822 41600508 41538067 41579461 41575362 41526714 41510142 41471238 41537100 41569160 41559404 41533770 41539610 41478298 41561215 41545548 41563310 41536396 41567016 41512150 41507634 41537476 41508907 41526490 41513477 41507678 41612631 41500177 41597793 41566224 41435475 41524286 41527004 41582805 41514732 41558508 41434295 41505689 41513174 41557549 41545414 41534987 41612042 41566185 41554514 41547734 41562048 41600630 41506041 41458303 41503978 41532812 41488474 41542252 41563782 41585880 41545809 41525728 41506819 41554638 41557986 41635880 41524494 41521021 41488994 41481031 41518322 41571695 41536745 41545809 41494442 41539846 41453803 41539928 41471069 41482887 41580342 41526853 41563855 41460511 41525774 41505325 41499200 41527088 41481918 41435900 41591211 41490205 41423403 41541342 41557665 41600741 41512627 41583829 41597224 41510296 41541133 41504346 41599516 41523167 41514700 41534822 41549080 41494431 41549744 41580742 41563387 41533560 41541757 41497642 41548908 41551806 41534123 41494837 41502974 41519068 41458024 41495817 41467606 41466053 41428908 41490805 41447023 41485411 41474462 41489040 41502670 41556244 41587789 41540614 41425281 41519990 41487915 41470033 41514031 41555445 41529963 41510048 41419458 41495242 41444484 41491748 41421617 41427948 41478605 41485477 41490263 41532021 41385563 41510339 41537870 41515873 41532567 41504385 41405717 41455249 41464731 41431424 41435090 41513176 41535989 41430311 41512793 41477688 41481804 41462423 41513076 41489137 41515807 41397345 41477628 41503561 41472794 41511645 41515197 41522239 41477568 41499098 41492354 41464729 41471147 41498714 41496219 41393681 41559612 41540044 41457336 41469629 41435044 41461152 41424623 41471453 41507891 41470140 41496239 41542922 41493059 41421235 41428401 41476333 41462287 41524319 41488670 41440729 41488284 41490042 41421434 41529474 41497659 41405963 41439978 41509238 41388862 41516780 41458375 41414333 41458675 41451313 41469479 41487287 41444411 41433014 41421702 41419767 41431711 41433760 41454087 41404513 41410997 41507047 41464278 41414823 41559602 41361546 41449742 41437491 41454283 41480813 41326358 41458880 41512265 41564450 41499473 41476475 41475461 41468779 41453221 41408403 41446853 41408585 41433345 41413991 41461876 41435981 41452585 41487506 41375321 41445244 41498869 41420553 41463258 41406296 41480404 41484651 41448670 41413015 41484019 41462977 41448252 41491513 41513825 41489438 41467823 41463317 41514374 41426509 41504244 41455959 41386644 41388011 41413878 41454243 41421924 41422409 41445702 41418437 41489197 41421531 41341735 41440967 41392660 41408634 41402094 41446337 41541380 41470932 41406467 41448655 41412543 41449270 41494980 41447162 41498695 41386180 41371190 41470377 41461873 41447054 41410331 41385088 41413957 41375817 41373701 41425730 41397535 41368929 41378287 41440085 41367665 41470000 41423301 41422824 41424016 41367491 41328215 41389180 41423599 41385069 41400415 41475288 41404162 41514958 41355944 41439428 41377041 41464076 41432728 41352973 41372436 41387649 41440124 41489754 41396829 41470147 41406781 41396369 41399077 41413086 41353580 41434557 41394199 41389888 41455919 41368428 41417171 41416798 41471172 41446527 41427354 41492836 41406623 41358453 41437680 41425666 41350890 41356609 41375890 41384611 41359709 41385014 41384540 41486941 41490227 41346806 41402191 41389426 41464017 41368578 41393745 41394986 41396038 41393076 41343000 41374811 41448369 41454848 41385033 41371192 41381931 41344288 41351518 41475209 41338948 41395544 41285211 41444390 41358508 41286979 41396366 41292112 41421428 41379855 41399409 41408803 41431928 41343486 41454875 41345293 41431984 41363630 41380483 41345215 41400921 41406416 41489591 41376820 41408472 41356693 41457237 41414870 41377115 41364400 41359952 41361092 41492240 41367580 41397369 41396962 41421041 41319799 41385952 41353911 41354706 41355547 41426892 41367867 41341018 41355888 41351121 41364960 41385952 41342097 41429075 41366394 41392466 41421917 41343004 41428881 41329498 41381683 41365552 41281597 41387406 41361695 41363248 41314391 41386065 41342795 41322503 41391725 41390206 41348451 41357035 41353593 41287755 41331380 41392230 41362014 41352042 41358146 41387104 41382490 41377344 41342497 41363408 41422422 41423234 41341540 41367547 41317453 41395917 41361700 41383280 41359823 41383835 41347380 41334291 41383690 41405584 41362217 41435412 41350658 41357672 41342500 41359418 41355679 41331222 41395165 41384783 41351893 41347237 41266563 41367966 41230401 41392486 41353468 41378060 41324097 41377864 41389816 41338223 41339695 41333253 41312599 41368027 41337184 41387346 41350817 41376157 41328554 41337755 41291726 41362434 41353902 41306821 41429239 41427959 41299750 41392849 41271208 41337824 41346123 41393923 41392656 41307724 41318401 41276118 41337357 41348589 41370375 41414437 41309856 41343901 41318878 41396772 41256707 41325292 41257216 41276596 41332338 41306740 41328115 41386821 41281593 41334569 41353975 41244341 41295014 41320320 41340622 41376968 41335536 41320450 41386008 41270418 41340775 41280673 41226011 41341025 41285299 41372281 41280989 41240194 41371864 41378994 41330540 41325291 41292233 41266086 41400696 41305043 41250784 41314415 41299553 41310230 41323032 41292490 41325997 41284695 41224784 41274697 41337416 41334061 41337947 41389563 41341995 41274050 41243900 41230477 41303252 41292790 41360774 41343130 41311103 41277670 41328344 41260918 41286027 41319582 41366834 41309863 41264442 41273585 41269377 41323280 41337464 41287228 41322515 41275114 41274729 41341543 41292223 41248757 41324243 41281884 41312547 41255316 41353485 41321451 41285999 41256850 41341620 41314247 41294402 41243740 41265282 41309192 41318819 41286716 41247710 41291371 41304250 41327605 41295564 41243609 41319640 41233583 41251854 41330479 41193919 41185629 41317007 41264011 41220843 41282452 41292131 41269015 41258846 41293426 41291704 41301081 41252589 41292628 41342889 41203375 41212865 41230661 41277838 41320823 41294588 41291005 41254900 41300516 41343271 41264050 41279667 41320051 41300606 41257888 41211154 41280474 41301030 41243922 41254818 41304081 41220120 41299493 41240357 41278319 41324453 41366265 41266792 41323775 41266826 41169865 41256293 41209362 41301702 41218603 41346384 41356852 41250667 41319389 41192441 41305753 41335562 41253726 41357675 41274099 41209578 41266627 41212953 41207519 41272727 41238882 41306332 41273039 41194346 41221708 41291734 41164488 41247652 41235666 41285194 41333197 41248216 41209360 41243223 41247724 41272023 41209072 41244301 41274761 41224401 41259241 41309543 41189406 41296495 41259888 41237520 41239144 41223665 41266484 41369532 41259465 41322161 41266616 41223543 41297839 41228081 41172989 41270180 41306817 41231588 41240406 41211949 41269543 41265455 41250411 41218811 41257477 41238645 41260808 41301817 41187156 41242148 41219818 41252674 41201644 41233123 41269735 41201120 41128573 41225436 41253849 41189648 41322529 41211713 41316329 41294321 41162913 41271520 41235351 41244811 41240458 41178819 41205525 41196443 41216410 41179846 41245513 41200188 41244171 41250413 41220483 41184156 41244157 41228958 41282115 41242663 41271274 41233418 41136065 41168077 41176192 41286936 41241049 41225657 41178397 41258879 41269174 41227084 41232858 41269347 41204848 41202792 41206122 41260409 41299355 41183647 41247834 41190888 41183452 41254396 41179158 41190905 41200303 41274302 41230731 41139941 41198145 41300482 41211164 41178842 41244778 41178966 41205774 41181651 41219491 41195663 41218741 41254789 41207521 41179358 41163711 41177883 41224604 41159403 41138791 41197435 41235501 41148946 41112449 41145682 41241185 41154389 41219364 41200007 41234335 41207863 41124878 41200217 41220462 41107698 41200493 41126413 41182204 41122191 41174241 41137039 41189391 41238331 41172842 41231863 41251104 41157678 41178289 41158831 41146417 41212014 41202370 41183687 41207396 41151738 41206334 41173194 41134687 41247272 41219876 41239191 41170010 41187607 41186911 41164874 41201841 41198011 41109705 41072816 41119779 41169388 41261925 41165905 41146042 41190715 41195762 41190115 41158003 41136288 41109973 41136393 41105056 41167906 41210152 41196592 41196295 41121541 41188691 41124125 41100410 41094746 41097703 41073239 41112296 41142486 41140047 41183952 41114812 41191096 41162248 41134275 41118581 41117855 41142910 41168974 41246572 41239929 41254139 41153073 41150344 41209963 41143470 41172287 41223109 41182977 41196189 41111428 41178528 41144622 41248317 41145177 41111246 41121243 41079468 41077887 41133128 41187082 41147879 41192322 41146768 41202137 41213217 41204648 41113857 41040615 41038874 41186735 41170457 41179290 41133047 41136809 41147687 41162059 41200707 41166390 41135854 41093495 41204009 41095483 41214866 41004731 41043583 41211535 41158508 41125781 41115990 41145589 41121710 41153448 41159050 41138188 41204599 41168960 41113412 41138683 41089204 41096165 41185307 41126566 41110893 41087411 41121305 41161361 41098156 41069075 41205258 41081845 41188496 41076171 41079087 41166921 41090333 41076570 41061354 41141189 41163368 41089913 41198373 41153304 41110906 41106845 41189578 41069126 41095231 41107467 41089828 41085369 41120532 41115457 41223541 41117636 41154782 41180675 41121632 41114015 41190639 41088038 41172267 41178860 41076538 41106311 41075354 41114880 41050017 41096423 41081331 41092062 41063654 41106173 41103538 41117254 41055379 41074157 41120184 41168429 41071555 41068890 41134169 41183182 41089729 41117632 40994757 41035069 41109343 41129526 41091694 41123005 41048427 41062004 41066216 41087059 41112457 41025872 41108296 41079821 41061195 41145572 41007035 41036735 41113458 41144979 41089397 41049576 41048262 41120128 41120684 41049461 41073789 41092129 41017600 41051263 41077613 41134606 41007022 41059770 41101525 41075027 41034067 41164073 41125547 41111663 41108940 41061062 41143493 41076585 41006924 41041363 41042975 41077592 41071095 41064716 41120142 41122022 41020714 41100531 41065734 41077956 41155146 41129840 41096715 41134957 41115682 41116969 41098066 41097817 41123216 41033482 41066170 41112756 41073575 41012865 41108307 41052374 41090767 41064383 41018673 41098845 40943726 41034262 41136106 41045981 40990707 41022181 41047191 41118701 41015315 41138041 41134884 41043775 41038146 41090828 41001535 41135037 41048657 41095950 41043087 41077180 41030300 41020380 41138856 41078433 41055393 41060909 41077480 41066925 41080213 41039871 41073312 41095560 41028638 41066677 41113510 41026536 41054510 41063006 41035492 40940854 41089778 41097392 41159700 41102382 41035646 41123077 41111522 41076803 41028282 41016543 41024397 41080600 41056722 40986963 41115705 41163988 41043040 41016729 41000676 40959572 41071234 41054227 41075327 40929776 40997695 41078818 40988385 41035605 41057917 41051486 41023805 41081527 41005928 41035602 41025398 41075507 41009710 41027145 41039658 41050977 41029779 41075612 41027388 41011629 41141611 40985730 41030997 41032261 41011784 40988755 41041882 40984598 40992423 41004466 41081781 41065636 41113819 41094162 41034672 41009273 41046692 41006860 41074961 41027717 41023309 40994575 41016874 41023796 40968763 41084621 41004665 41055839 41063767 41094392 41038296 41031245 40995313 41036638 41016710 40997999 41006494 40960242 41095310 41032340 41024839 41073469 41022494 40959002 41012869 41033272 41023927 41021668 41126156 41045352 41002928 41001647 40975142 40978550 41026443 40943867 40973256 41081527 41004953 40940685 41014703 41008729 41063579 41069520 41035675 40952088 40998264 41043471 41013409 41060352 40979952 41034733 40958115 41027573 40986973 40925875 41045325 41024786 41000644 40955789 41027156 41045745 41008743 40984699 40995178 41054727 41039101 40984630 40994465 41025682 40946087 40991554 40938475 40933511 40962375 40941906 41027826 41036237 40929518 40919107 40939654 40995031 40960649 40926965 40941992 40915951 40974087 41004864 40993399 40964124 40969456 41025727 40991697 40964434 40979741 40982925 40990101 41011756 40891061 40990817 40972315 40921624 40955967 40938719 41019613 41022825 40996860 41037202 41023173 40914180 40918258 41018861 41045361 40956894 41020549 40984798 41025529 40907003 40966674 41022611 40861569 41070790 40989916 40957318 40988989 40979726 41017625 41067992 40946495 40947562 40967675 40941348 40962633 40978286 40908890 40887039 41026892 40960765 40980687 40923165 40990912 40946610 40927858 40988223 40944400 40955874 41000795 41093598 41002841 40910789 40971915 40974185 40968072 41017281 40919803 40977756 40926896 40916144 40909929 40919507 40915826 40988943 40971142 40929214 40947323 40942356 41070234 40950592 40983238 40974730 40893411 40921260 40960413 40947846 40956213 40944404 41021147 40955891 40911455 40943642 40957639 40972242 40959015 40970408 40920794 40957082 41012043 40904745 40895645 41001062 40923022 40980335 40898664 40985971 40892582 40867888 40934447 40914784 40969835 40930498 40929782 40887241 40889141 40936352 40839970 40851908 40913665 40867014 40937190 40959247 40956050 40959348 40962532 40943276 40915858 40877005 40958268 40922159 40898863 40928467 40908019 40922458 40944912 40944596 40871927 40941987 40914327 40900526 40924905 40975889 40932744 40912861 40910386 40873281 40889504 40943372 40875919 40863421 40890412 40889302 40923631 40938364 40961651 40932078 40995470 40861792 40899598 40961689 40924304 40998892 40938227 40930862 40908833 40885587 40924601 40968358 40835573 40851783 40963336 40900806 40945749 40913073 40892219 40868233 40856847 40892895 40864690 40909882 40881599 40929589 40875752 40928899 40913423 40914224 40956747 40877465 40880552 40842693 40898067 40978783 40901757 40909748 40882149 40904703 40879779 40879784 40872003 40885668 40969444 40867623 40944391 40918212 40897636 40860788 40883514 40894748 40963666 40882828 40850624 40881104 40943208 40852470 40882574 40893244 40981180 40830172 40874498 40822507 40844807 40906829 40881788 40863863 40852859 40970334 40909856 40860042 40902320 40912772 40921050 40930221 40881856 40912115 40929391 40867745 40870193 40936379 40898940 40887763 40889568 40967508 40802345 40812160 40911218 40895272 40871335 40890884 40831634 40876169 40911750 40895643 40918194 40832582 40935943 40857456 40799272 40849816 40970150 40826801 40851095 40845574 40883694 40823282 40949290 40840823 40907742 40843231 40827475 40885708 40887133 40875624 40816294 40846483 40850280 40881505 40845080 40938121 40896052 40809714 40840503 40806284 40847836 40882569 40820064 40863803 40790364 40919238 40887194 40788866 40942951 40853562 40850770 40875539 40852277 40883388 40835196 40832311 40828858 40885566 40857657 40817768 40819825 40762876 40831537 40818429 40818317 40801556 40831160 40893161 40836857 40823887 40818778 40860245 40792200 40875238 40870415 40799803 40899354 40816618 40701454 40782290 40890239 40843851 40800913 40774515 40830646 40876414 40905530 40804536 40827671 40849845 40819455 40815826 40832392 40801657 40898680 40862752 40803127 40944622 40846875 40793979 40853596 40850956 40845607 40857377 40918665 40811509 40906051 40814224 40867466 40820239 40843758 40837225 40855668 40756495 40841332 40842654 40836281 40789515 40820959 40880223 40836282 40810884 40860816 40752098 40823057 40890801 40838247 40850530 40811861 40913782 40899494 40816877 40806693 40831891 40814749 40774841 40852887 40803996 40837545 40836047 40789413 40786977 40813380 40805404 40787672 40837895 40841365 40843147 40777656 40833877 40869972 40870273 40859440 40755483 40779662 40802594 40861914 40822086 40733123 40817523 40840362 40772379 40841975 40837138 40820198 40796969 40912657 40798984 40823899 40841655 40844696 40785660 40832318 40776073 40815202 40787874 40889524 40753540 40765228 40791087 40770554 40801708 40733682 40851245 40828906 40753493 40788342 40693637 40839246 40902272 40852124 40840304 40827556 40790572 40774271 40826232 40768688 40796641 40791354 40810931 40832029 40790557 40752222 40808618 40792180 40756747 40771797 40736691 40796261 40712897 40791416 40763082 40833323 40719776 40717336 40766051 40698344 40790519 40728233 40742800 40741379 40784109 40796977 40771453 40852211 40781274 40743925 40755260 40765199 40860107 40763561 40760065 40890360 40741943 40786364 40773611 40813438 40777528 40770862 40787845 40796054 40733229 40757323 40850114 40793667 40786823 40768260 40755589 40747720 40739414 40788517 40839056 40692908 40761667 40791839 40732653 40782408 40683038 40761194 40786369 40876578 40760537 40776573 40783409 40808377 40807447 40799712 40791587 40745795 40759439 40806352 40713440 40805536 40719846 40759755 40686271 40691434 40781193 40742961 40739813 40716207 40798921 40747260 40744038 40660593 40815575 40801188 40762362 40809232 40738396 40799159 40815514 40791465 40717713 40680768 40788434 40754250 40814287 40764654 40749978 40747036 40714073 40762498 40692795 40730004 40706770 40716544 40722505 40765525 40848571 40747100 40699661 40747329 40701609 40665816 40714837 40721418 40756427 40683600 40796766 40755028 40749145 40790254 40734817 40702779 40761241 40692742 40788270 40821468 40743257 40691544 40760440 40726840 40689527 40701559 40693571 40695543 40724104 40709447 40624739 40717511 40617377 40737218 40769943 40760243 40700674 40831875 40708282 40745773 40646574 40689511 40737799 40744042 40704445 40715336 40714351 40699610 40674808 40826670 40779868 40706064 40686349 40681275 40824923 40713950 40703952 40745789 40715666 40687719 40690202 40751590 40708585 40718238 40774962 40686518 40657932 40706077 40718393 40758386 40664426 40681193 40783195 40695779 40701702 40696950 40725857 40648530 40622786 40669109 40697175 40684122 40659786 40770491 40693919 40663288 40698855 40696315 40658909 40748880 40710271 40721781 40750236 40721366 40712593 40728714 40683330 40700083 40579753 40634611 40695445 40709143 40610672 40707730 40758513 40624223 40683095 40668737 40678550 40710153 40650949 40564833 40681798 40736550 40669890 40684337 40718901 40695909 40610077 40692243 40633959 40659239 40700267 40681041 40772083 40720486 40728714 40723751 40621460 40760597 40642901 40672950 40698236 40685173 40687483 40638614 40709591 40658407 40758659 40725187 40655611 40664935 40697178 40666914 40675423 40639844 40675594 40658922 40663468 40658674 40630098 40692277 40698957 40683668 40669759 40693055 40720713 40685376 40646508 40694000 40719125 40714848 40638903 40648917 40750930 40628848 40699872 40736194 40666160 40608784 40657516 40663954 40678060 40699640 40630895 40664304 40649274 40596342 40671636 40628583 40684297 40649693 40696594 40670374 40679850 40741057 40638311 40628853 40631509 40748932 40614865 40699617 40698283 40701087 40640015 40705933 40742142 40673730 40701801 40629201 40746110 40745725 40689247 40632271 40644014 40646558 40634659 40673878 40662219 40606630 40602556 40734002 40604829 40719669 40726507 40696940 40667970 40628134 40664442 40703295 40660953 40701221 40662273 40595448 40638356 40634070 40623286 40631000 40727885 40602182 40722847 40643887 40618155 40589701 40631387 40608802 40743080 40582017 40550792 40631669 40679036 40695180 40649705 40643026 40616967 40659858 40631466 40584161 40604108 40706387 40577723 40602047 40646507 40700430 40635884 40612814 40625128 40635496 40604210 40615142 40666404 40635144 40549958 40598258 40735671 40700493 40648473 40595445 40691154 40632741 40643481 40586455 40565748 40586787 40590345 40592769 40627844 40646664 40696275 40703903 40638808 40587655 40641430 40550881 40584859 40640331 40599456 40664854 40646364 40625893 40613466 40564999 40662710 40657729 40541967 40670515 40561201 40656379 40549974 40573651 40655147 40658771 40594005 40538245 40583630 40633688 40698089 40663815 40653332 40653117 40594653 40662389 40528998 40706105 40633911 40640022 40637572 40579690 40631694 40638877 40599951 40618042 40642850 40601021 40647071 40562327 40615883 40571836 40570134 40553367 40645025 40589090 40594868 40513958 40662980 40625980 40505120 40595680 40621866 40554949 40665219 40675510 40575033 40583020 40532451 40699822 40652126 40612560 40590053 40610760 40575478 40653586 40559890 40635705 40516796 40646433 40553557 40619158 40678276 40581492 40568067 40596580 40631931 40594400 40613059 40613714 40633866 40588511 40574522 40596869 40657083 40626171 40627758 40635340 40595480 40602998 40581485 40490406 40546351 40632965 40558059 40587874 40592198 40605716 40599562 40599384 40605172 40584593 40609312 40634081 40568978 40616836 40590759 40567902 40604200 40574612 40544785 40671694 40641801 40618137 40591181 40592156 40609645 40626429 40542507 40592371 40703309 40665936 40582120 40570597 40555055 40593711 40646797 40586143 40587584 40606232 40571758 40583876 40477734 40543626 40658414 40559411 40473536 40679424 40582208 40536337 40579898 40491916 40567098 40592141 40623458 40507411 40574082 40585931 40571769 40550299 40609670 40538553 40494662 40503521 40506963 40554663 40592318 40538155 40529885 40540088 40546336 40561832 40539701 40588723 40534588 40532111 40513581 40541051 40538026 40614819 40607075 40591135 40624581 40581347 40561339 40512840 40596281 40573529 40550708 40589533 40430594 40629353 40598519 40560847 40583252 40573799 40530702 40570205 40592215 40577578 40544003 40578172 40535976 40516381 40488764 40623903 40644386 40551451 40524996 40522304 40517820 40513236 40588015 40474095 40586265 40538736 40581450 40627672 40552280 40558122 40622958 40553770 40503420 40568402 40528127 40506807 40535542 40525780 40603103 40512196 40558593 40592570 40529181 40515832 40503029 40627462 40465558 40548312 40588667 40528504 40488249 40554079 40604918 40534671 40614518 40609636 40554123 40536047 40579152 40568454 40522871 40485497 40571324 40569881 40474097 40602284 40547109 40573181 40539906 40528199 40477809 40527020 40539398 40516548 40543122 40499003 40569224 40564957 40577098 40553249 40550354 40496502 40491107 40539915 40435711 40520499 40513028 40511259 40539778 40433883 40557419 40528450 40468662 40531056 40600969 40598138 40466517 40476369 40530634 40645154 40493713 40465660 40578882 40546181 40520578 40532319 40490704 40494112 40586946 40551121 40513885 40554937 40593964 40577241 40539792 40528664 40543217 40616325 40560209 40524846 40456415 40534805 40536224 40521042 40603948 40516851 40555228 40515384 40512045 40531870 40551820 40414294 40622710 40452995 40571894 40445552 40499402 40459170 40458827 40487788 40468380 40483191 40555313 40530354 40472491 40516103 40502386 40581066 40487206 40499348 40554327 40486571 40571336 40511221 40513690 40428962 40548203 40457663 40426053 40484419 40390989 40494538 40525727 40570210 40527219 40595497 40491526 40551984 40482672 40424561 40476560 40506257 40473168 40562972 40419769 40525380 40453437 40459805 40528766 40510191 40439443 40491388 40440707 40531713 40511739 40459321 40487978 40559325 40417899 40544848 40464517 40545197 40457665 40468946 40451632 40500479 40499853 40413420 40473480 40477493 40446256 40463936 40484284 40472648 40559420 40423559 40500413 40440056 40436140 40516124 40507516 40472560 40478532 40436853 40472815 40497108 40528430 40501885 40470687 40442563 40364114 40403125 40499566 40474475 40438095 40505571 40477227 40487350 40458499 40460349 40430207 40489706 40496147 40490829 40480497 40479415 40552179 40437837 40538570 40524212 40427775 40485797 40424305 40507670 40400253 40466996 40497673 40475560 40465046 40422893 40445143 40421579 40435913 40318771 40447593 40401055 40496828 40413489 40522286 40470235 40429103 40523826 40431373 40459739 40415788 40430363 40498876 40457589 40501691 40511909 40444883 40519128 40503696 40454970 40397860 40438288 40563391 40426617 40436270 40518949 40465988 40395789 40462649 40530890 40444495 40444214 40407667 40454355 40484131 40506494 40432763 40543497 40473922 40516306 40381371 40448095 40474012 40426950 40458076 40466925 40415612 40468846 40420480 40425385 40414622 40460437 40357876 40486402 40514982 40391645 40368365 40403332 40519105 40445318 40457361 40467631 40459700 40387416 40376113 40502416 40471228 40467567 40375636 40471057 40462348 40425506 40488775 40384264 40299579 40396360 40454568 40449000 40478668 40375657 40498952 40472886 40402823 40464711 40375147 40450516 40423762 40422234 40451312 40503049 40412438 40454633 40422542 40439975 40427280 40398637 40508695 40477796 40448204 40482023 40343034 40434683 40411056 40422884 40498581 40457371 40463530 40404529 40450500 40380728 40340824 40398106 40451034 40436582 40382956 40352225 40486891 40459832 40494229 40343416 40393147 40381935 40487652 40439139 40414653 40334431 40440099 40372810 40438990 40413055 40368197 40372723 40422495 40434863 40344328 40389587 40441486 40344699 40428258 40408910 40384308 40400627 40515695 40383896 40348563 40447187 40391548 40355906 40461131 40317028 40357962 40456795 40403016 40473532 40408078 40411284 40354610 40436855 40353756 40360060 40340689 40339070 40366656 40336903 40475190 40393654 40408310 40456780 40381129 40338996 40317973 40445125 40364574 40473872 40522257 40378790 40433829 40459778 40424357 40414979 40393579 40360899 40370364 40350730 40402754 40420271 40465662 40399498 40411844 40326749 40457894 40433604 40433866 40404006 40390132 40425633 40344636 40366407 40278729 40353737 40272589 40337137 40303450 40432162 40421822 40393169 40360303 40371043 40433943 40379631 40352905 40331864 40389366 40410575 40380316 40364925 40350821 40344862 40364360 40415620 40297584 40320883 40382074 40320141 40309573 40358638 40449281 40366625 40381399 40347267 40342537 40351235 40427310 40351482 40453172 40363191 40380775 40340305 40376980 40372062 40406401 40320717 40350894 40355969 40359332 40390730 40242043 40375240 40411365 40364415 40442008 40376907 40315832 40386088 40287229 40400978 40298952 40314126 40391639 40375261 40336558 40354473 40295570 40298997 40354066 40367205 40365551 40315316 40420575 40326245 40321254 40400863 40309461 40406752 40292192 40400020 40329888 40378089 40352935 40312427 40358346 40296201 40416112 40322494 40294800 40409854 40308022 40332304 40333183 40371205 40296084 40386983 40305946 40364788 40398462 40363126 40396861 40339576 40328798 40272363 40335122 40383212 40350502 40342732 40398675 40384371 40407572 40334148 40292065 40290937 40263954 40358566 40369987 40283817 40246373 40272864 40278412 40313452 40347517 40262275 40344592 40337175 40323669 40402639 40274435 40371864 40372250 40260905 40341428 40328754 40291091 40346502 40275930 40442997 40277385 40334096 40301106 40344352 40312666 40345174 40364072 40384687 40299730 40319865 40370053 40306659 40377801 40299456 40303142 40363993 40265004 40336308 40315365 40307578 40239645 40349074 40325420 40290166 40363526 40376950 40267103 40383919 40382651 40363330 40318674 40226293 40324062 40294008 40284099 40253006 40276146 40311791 40320620 40216460 40293787 40315264 40320568 40343784 40362781 40314240 40413686 40312319 40327549 40349824 40289318 40293119 40216392 40326761 40273014 40323270 40361323 40319457 40320527 40215520 40271032 40318230 40380580 40260655 40271016 40343345 40240356 40280242 40218058 40308569 40299625 40239821 40320250 40263276 40288201 40320944 40306511 40313997 40289723 40250796 40242857 40253992 40246593 40279615 40374624 40311559 40315025 40230309 40267155 40270693 40274770 40255953 40304723 40314739 40272511 40343684 40174609 40293737 40245415 40356208 40349703 40212292 40314612 40318507 40242539 40266523 40225080 40303199 40271291 40287027 40293784 40303910 40338342 40381441 40217311 40285520 40207974 40315920 40256670 40207042 40264835 40268353 40264819 40221613 40301452 40271654 40235926 40285313 40298165 40256234 40275810 40285507 40235334 40272214 40263167 40302085 40287961 40355505 40268750 40294825 40270896 40244333 40236087 40222975 40217179 40235220 40220168 40256764 40258443 40332400 40209816 40281284 40207303 40327105 40233761 40240942 40285261 40237478 40210180 40237067 40261899 40257932 40274183 40291930 40228613 40215745 40218626 40162313 40152583 40317374 40235147 40216412 40206527 40255837 40269556 40218801 40226685 40289347 40242749 40165818 40214810 40251822 40245142 40261054 40156280 40246124 40281052 40234072 40227962 40242276 40253002 40256954 40240581 40284385 40218835 40234881 40282140 40198329 40285613 40214467 40266948 40278503 40256745 40235353 40200444 40219529 40215803 40343239 40255116 40255925 40264941 40175739 40288378 40134320 40273683 40232053 40253812 40184414 40260531 40256842 40231389 40177348 40266591 40225748 40131194 40140329 40170026 40165093 40280579 40237963 40186386 40214238 40146631 40233667 40257828 40211341 40165691 40173466 40205683 40264399 40198844 40221421 40264945 40270923 40187425 40234929 40278611 40283657 40287617 40284806 40194892 40198396 40188008 40233012 40231557 40239471 40143271 40183397 40148891 40174713 40291650 40161995 40257683 40245925 40215747 40222551 40207343 40199074 40266801 40150435 40250609 40149890 40231759 40178642 40218423 40229040 40158065 40211023 40217911 40170659 40231402 40178103 40225555 40179473 40153586 40157166 40197058 40203013 40197789 40261067 40256819 40251105 40227790 40224535 40260379 40149393 40238226 40195807 40240446 40205133 40169100 40192188 40233963 40234236 40188668 40171013 40234463 40199692 40181086 40208301 40210874 40210580 40207782 40073138 40223539 40170849 40217009 40144403 40245697 40276189 40156479 40139113 40130597 40137582 40160606 40169510 40206161 40146203 40136654 40205060 40203454 40159000 40164362 40154819 40232696 40201940 40214061 40132815 40224033 40154468 40111136 40169287 40158212 40240497 40172254 40137708 40168357 40166543 40157894 40130047 40181125 40247245 40173394 40172157 40147504 40210925 40148046 40123867 40247049 40273197 40191560 40177762 40107130 40154647 40165956 40175697 40193294 40221725 40130404 40209133 40220412 40156739 40183460 40156784 40158920 40176444 40191382 40079687 40150196 40129803 40170155 40103656 40107727 40141270 40149643 40164830 40205432 40119865 40182183 40146022 40217228 40192880 40223550 40182219 40111783 40172091 40118437 40133695 40187062 40173838 40188971 40053264 40147233 40224207 40157332 40202288 40150679 40180166 40165876 40148733 40168619 40183398 40174368 40124330 40228450 40133827 40107344 40070171 40184084 40206450 40124868 40124352 40150746 40110460 40122072 40067579 40145044 40247189 40148795 40140166 40137264 40118992 40062056 40201377 40119089 40090504 40123359 40129515 40128375 40096127 40098326 40229796 40156571 40152954 40132037 40115050 40112972 40089240 40119958 40113968 40179456 40163416 40106794 40130566 40153106 40119840 40123105 40112022 40075841 40066798 40087688 40149893 40105106 40166280 40102030 40162447 40132422 40141465 40130885 40143558 40168854 40118141 40085497 40111816 40134436 40041554 40080756 40113337 40128345 40153301 40045210 40101178 40082815 40128767 40120964 40117481 40144512 40071395 40104286 40142804 40172069 40052341 40177207 40063698 40061243 40085093 40160023 40145621 40140661 40121655 40116483 40103092 40107939 40076683 40130387 40142952 40071575 40037888 40119073 40106110 40122412 40141530 40032763 40061126 40120654 39976347 40072768 40131011 40097538 40176128 40142483 40061580 40078418 40150609 40101317 40106263 40097632 40094315 40129693 40037489 40029814 40037495 40081025 40103950 40131294 40159181 40103996 40185006 40107243 40095953 40080663 40108294 40087328 40155651 40068270 40079910 40161633 40109422 40064726 40199389 40089257 40102276 40002472 40086709 40089282 40000916 40021392 40157358 40101982 40066162 40108360 40092252 40040029 40118916 40065994 40088170 40045876 40074744 40086641 40098238 40038417 40080915 40086125 40078531 39996989 40099063 40146484 40077420 40115243 40128028 40038521 40051640 40127950 40006438 40060430 40031573 40125079 40126237 40089063 40012643 40134824 40004078 40062292 40050167 40060346 40031308 40086349 40025729 40026492 40084802 40028657 40053746 40099856 40054208 40130895 40104350 40021305 40065906 40066418 39985643 40063155 40130201 40059186 39986905 40117616 40011978 40051389 39992974 40023131 40064097 40069911 40073705 40057996 40000956 40083388 40032498 40129032 40117852 40062113 40082532 40062753 40074659 40087335 40050105 39990916 40090223 40082388 40057116 40117016 40063939 40167104 40034630 40049661 40056148 40037698 39957207 40079315 40077384 39997511 40086918 40012218 39991989 39986177 40055413 40028553 40008814 40087784 40040811 40008928 40032300 40010560 40044811 39999194 40042674 40021899 40099485 40024924 40098497 40062013 40002423 40079647 40097511 40089863 40130974 40101180 40025508 40019848 40087304 40029207 40053813 40058491 40044886 40043953 40109869 39963597 39992428 39992736 39982667 40071068 39955187 40079417 39919349 40044516 39952940 40025271 40086527 40076455 39952692 39981315 39995815 39983555 40015437 40074158 40070184 40073556 40069688 39968371 39952965 40020109 39916688 40093260 39991113 39992822 40081960 39914667 39987469 39986388 40009368 40028742 40027866 40005171 39984552 40007808 40009976 40017252 40001885 40005252 39979307 39976831 40055408 40012534 40047542 40073089 40048185 39960765 39997646 39974871 40034629 39979092 39977666 40131279 39967367 40029564 40007194 39967528 39992329 39971310 40030310 40050610 40010660 40031808 40061883 39909423 40084230 39930722 39974447 40042362 39949477 40012629 39998007 40056050 39946673 40033981 40027622 39957507 39980669 40008257 40045364 39997214 40005088 39962787 39930958 40012781 39890278 39990285 39978611 39963270 40043794 39926779 40013046 39918587 40064659 39943339 40068889 40055996 40011368 39971583 40027825 39939314 39995342 39949184 40045793 39936233 40008072 40010689 39950892 39948265 40042518 39979717 40029121 39989831 39937760 40007451 40001353 40008027 39927741 39989945 39931252 40014144 39919832 40033539 39973486 40051810 39966037 39997792 39998233 39944472 39881972 39961377 39980252 40019300 39988787 39912378 39932062 39925968 39968361 40008592 39949274 40010254 39976876 39956413 40011685 40028472 39907804 39997233 39985582 39973414 40003209 39991337 40008658 39931078 39940150 39930915 39945833 39886503 39937807 39932674 39984906 39940896 39950255 39937052 40030037 39978881 39954029 39895997 39915013 39987507 39990577 39984414 39915394 39947194 39955177 39950273 39880290 39917187 40017439 39924535 39984295 39926388 39950118 39915767 39914705 40038188 39950532 39968574 39949470 39955712 39902418 39918120 40015402 40031980 39933727 39901979 39965957 39949264 39933552 39950602 39913280 39922666 40041961 39938781 39921043 40001992 39902709 39949017 39936208 39961635 40024185 39946228 39902767 39940625 39983235 39942219 39984879 39996591 39869686 39923222 39998479 39940325 39907044 39952252 39891422 39919586 39914840 39893839 39872962 39945734 39974014 40023686 39982106 39915136 39864427 39919859 39949506 39955271 39868555 39951536 39931722 39923038 39871533 39804599 39967444 39994010 39873312 39815701 39893279 39936222 39897471 39909972 39960886 39902129 39982247 39922684 39873103 39970953 39853844 39924966 39848189 39901080 39968738 39923394 39979543 39922267 39980637 39883641 39962868 39927366 39883386 39891733 39949794 39986365 39916806 39935547 39952593 39958261 39975100 39882477 39900590 39946766 39977484 39882564 39931394 39856730 39938354 39928620 39863960 39921289 39924738 39889522 39865607 39864967 39903825 39891445 39935088 39931117 39856391 39961397 39866394 39832355 39957472 39933603 39883635 39919781 39982642 40020967 39888889 39944713 39830901 39826576 39916851 39940623 39927270 39923001 39850573 39968707 39914202 39887439 39893930 39881421 39887084 39909066 39929601 39884890 39822848 39878991 39929538 39833189 39861223 39854867 39837548 39875220 39945869 39936793 39874580 39835717 39908451 39837217 39816661 40040696 39853983 39888740 39912866 39827091 39917378 39875401 39863383 39780154 39878710 39919463 39912166 40029322 39915639 39881257 39885094 39838147 39885659 39873431 39823822 39838980 39887690 39936568 39926637 39953408 39862892 39885862 39846565 39875841 39858591 39833946 39806495 39870327 39891778 39942675 39889648 39843641 39834496 39897624 39826292 39804035 39869878 39832887 39817117 39782890 39838843 39876436 39888756 39864383 39842979 39820363 39808345 39872215 39847969 39789223 39876242 39867160 39821429 39850898 39821278 39811536 39878710 39916817 39868834 39835579 39879847 39839530 39862262 39806339 39847443 39861062 39875606 39863586 39810072 39919268 39824522 39820684 39822125 39774848 39791752 39783403 39955640 39891869 39862098 39868669 39865053 39845128 39851141 39878973 39906843 39883973 39859056 39875262 39832588 39846479 39862190 39842159 39889722 39816453 39834799 39818771 39860029 39865541 39831536 39845041 39902892 39824058 39811068 39854431 39777471 39908982 39867535 39876550 39859772 39858840 39787640 39840458 39735604 39848242 39816209 39819281 39869757 39853325 39899417 39865814 39799852 39811821 39822824 39852030 39834553 39781475 39795840 39838668 39715416 39826771 39813251 39862426 39891793 39798552 39869115 39821043 39816284 39786024 39884962 39863682 39775959 39821558 39780831 39839063 39752803 39827168 39880923 39818405 39786705 39812052 39902059 39819404 39775622 39854437 39800042 39977758 39792770 39828364 39787754 39837144 39820443 39785389 39830554 39827208 39883210 39889753 39798276 39842654 39788602 39822566 39821861 39843995 39813862 39796765 39826137 39792218 39894906 39830616 39848450 39838984 39854197 39750535 39820337 39781351 39878112 39901583 39760222 39842588 39787435 39806266 39771300 39792470 39840317 39830729 39759752 39822889 39826344 39797579 39797316 39793095 39736831 39793993 39755303 39867438 39755990 39751737 39812691 39856130 39741630 39772817 39833725 39836909 39921222 39806640 39782844 39842251 39730963 39854991 39770902 39805838 39755852 39717290 39853904 39793711 39894639 39789426 39785074 39774645 39890183 39748762 39791302 39753923 39758212 39758119 39827322 39805747 39769090 39750627 39866482 39802037 39868846 39787014 39822484 39830896 39780140 39785543 39748906 39814096 39770883 39851859 39865226 39807063 39732007 39736191 39798508 39818663 39760510 39798413 39817047 39832321 39768453 39799982 39741808 39723178 39778499 39714631 39788205 39811240 39717244 39785990 39763533 39746484 39738606 39799366 39782910 39734249 39851939 39696013 39879905 39760382 39726267 39731127 39706275 39772151 39705407 39778404 39762311 39767680 39741643 39746644 39701689 39753455 39764654 39755480 39742139 39819190 39777359 39795683 39698805 39851760 39727888 39808541 39770976 39831783 39745309 39725336 39789228 39767425 39801922 39749242 39802926 39742271 39744737 39735362 39728065 39831541 39767920 39769497 39809711 39760865 39775024 39726393 39744869 39763347 39717164 39778834 39813868 39765578 39773204 39711554 39752154 39697704 39696420 39792346 39758865 39659108 39699438 39757991 39716235 39868881 39746082 39801645 39776376 39786384 39635129 39819203 39787248 39780377 39712279 39671650 39721046 39714910 39729181 39720816 39694432 39743868 39759298 39746906 39752165 39679901 39681924 39664835 39765618 39735326 39676296 39729753 39724841 39782229 39640507 39811680 39718496 39778561 39641397 39764292 39793361 39693634 39793214 39654728 39791711 39728531 39809941 39764724 39722869 39644501 39683217 39725366 39655699 39726946 39663717 39645600 39747988 39672024 39738653 39685757 39690055 39753301 39706259 39646214 39773827 39724500 39658274 39690521 39729916 39694434 39757736 39687338 39754425 39776490 39713414 39641698 39718985 39678279 39753687 39727941 39637909 39753467 39746962 39671696 39631126 39713875 39678254 39692332 39737963 39693124 39718588 39738315 39674053 39744517 39733783 39706198 39720916 39682581 39698863 39701357 39724498 39759568 39699862 39681120 39707591 39686484 39778591 39705453 39694180 39674758 39724140 39659781 39670898 39703739 39724179 39680529 39635053 39747939 39764166 39713169 39755457 39713865 39702041 39663047 39708137 39691413 39667105 39691460 39708696 39767707 39672153 39640621 39714023 39634619 39726942 39719339 39738934 39702580 39654566 39683263 39588886 39752045 39724111 39803651 39698157 39662529 39674521 39709933 39669598 39725058 39674573 39677468 39715887 39670105 39674712 39690787 39712156 39620999 39660895 39706907 39687807 39672622 39661761 39685203 39679246 39735040 39709298 39713905 39658540 39684676 39617976 39678756 39693126 39613411 39637628 39677266 39683733 39707920 39693888 39664778 39642494 39606708 39732385 39628554 39693318 39618836 39639758 39696485 39632130 39691924 39618579 39647968 39585533 39615525 39654950 39692993 39666698 39643589 39635411 39632777 39684546 39705633 39647950 39653373 39620313 39670641 39645094 39634134 39589019 39621475 39620475 39646504 39640966 39697795 39568800 39669599 39749464 39667968 39625682 39659911 39627751 39698485 39685819 39606165 39614096 39690461 39609049 39631198 39643290 39685299 39601367 39645175 39670280 39650617 39592668 39642214 39670635 39738805 39662212 39625716 39601614 39650384 39627777 39687969 39641179 39631353 39639532 39614606 39638215 39602569 39603403 39630494 39677656 39701122 39653319 39651124 39640734 39643661 39560712 39658682 39655135 39606524 39659765 39680347 39676862 39598826 39688052 39599935 39644754 39660931 39598731 39663074 39702785 39638311 39651319 39641446 39574932 39670504 39638372 39605567 39630663 39649439 39620665 39672923 39668735 39648516 39574164 39633411 39563976 39705373 39647937 39694330 39644949 39664510 39614009 39596730 39612868 39645277 39604097 39544901 39607742 39646168 39595896 39593560 39622707 39623795 39635337 39578149 39635785 39694653 39658912 39662571 39641565 39616133 39538882 39679352 39607586 39602904 39654536 39660827 39661565 39486145 39578077 39600096 39601326 39603743 39580357 39585760 39561351 39596226 39615925 39623438 39640028 39599491 39545614 39537735 39603155 39594451 39594364 39564509 39547398 39595002 39527158 39519611 39637213 39588986 39541801 39654023 39675727 39600312 39606741 39652552 39665924 39682292 39676054 39581412 39611358 39643683 39584181 39566302 39580569 39557869 39641343 39505350 39640531 39596301 39595326 39639561 39585548 39578934 39634319 39578492 39538908 39639155 39605313 39533147 39546595 39534871 39584074 39564502 39620412 39603512 39531592 39454608 39577227 39582662 39623964 39580372 39593114 39648805 39611818 39565764 39603749 39559902 39569676 39608360 39607487 39524868 39521431 39486077 39610763 39520783 39538707 39541223 39576917 39549374 39592932 39597055 39528161 39605711 39578904 39527442 39598433 39524856 39553414 39538830 39504956 39532246 39567367 39532697 39498658 39545140 39534776 39505949 39524518 39557251 39553903 39614826 39574638 39572727 39517847 39655885 39585199 39463791 39647069 39530208 39545528 39549276 39541517 39574303 39577500 39535552 39520499 39457691 39549863 39604848 39610590 39535741 39595438 39501383 39555524 39574870 39564408 39604974 39544970 39558583 39591991 39528814 39548387 39520537 39549325 39501753 39495857 39568558 39509710 39486729 39505590 39575571 39505718 39556321 39555998 39575893 39525893 39556881 39496726 39477524 39543926 39509183 39543932 39563277 39558522 39635448 39544891 39567221 39548679 39539440 39575727 39557959 39477890 39466875 39511075 39565562 39520300 39513424 39592717 39553792 39519834 39508974 39498300 39481841 39498710 39571477 39603424 39555372 39516671 39545391 39532598 39510456 39500088 39494435 39537866 39491231 39438546 39512430 39526425 39535016 39508522 39491691 39555428 39530640 39533950 39492112 39515376 39551825 39560286 39543753 39485340 39527184 39524051 39532005 39495939 39536330 39509485 39504564 39546827 39544549 39523449 39578991 39478206 39504218 39431770 39509343 39521724 39594939 39471022 39554863 39469725 39485572 39531074 39462260 39551421 39529040 39486428 39499977 39502446 39432084 39496516 39544449 39459764 39494424 39535176 39537217 39476891 39529414 39536637 39483964 39504932 39484823 39468139 39526181 39527063 39528644 39563169 39612439 39504386 39430651 39489638 39563168 39566966 39426747 39521574 39452952 39462297 39470283 39479757 39458395 39489077 39491883 39515704 39485605 39483837 39496421 39501451 39459030 39585743 39504802 39495863 39511736 39532119 39405698 39495951 39513722 39547734 39489450 39560002 39444714 39416179 39523981 39505630 39476815 39550833 39530356 39554304 39465670 39575884 39498374 39574832 39452253 39402671 39545989 39447317 39453015 39434766 39421666 39498275 39393659 39459843 39492203 39412014 39474481 39499590 39530286 39529332 39478515 39492176 39492004 39457528 39518063 39536082 39474858 39425578 39485657 39458526 39488887 39512769 39399029 39443122 39472316 39421379 39483084 39477300 39483879 39489711 39455006 39512999 39515895 39473702 39534088 39517565 39516508 39468508 39499694 39499988 39494607 39516482 39580811 39458889 39459363 39407572 39500119 39489956 39383814 39483010 39538954 39448240 39393114 39399765 39506072 39431167 39455737 39390281 39523891 39458871 39501932 39500565 39465903 39500045 39483701 39407280 39508833 39411125 39455037 39452895 39462306 39596004 39432880 39463698 39478431 39475836 39477353 39399162 39465176 39488748 39359032 39421676 39443028 39435650 39459168 39393448 39473350 39454824 39448119 39407481 39384470 39400858 39455219 39510203 39446040 39506190 39449943 39467377 39375821 39402436 39378163 39424589 39472239 39466876 39475502 39531852 39384325 39416208 39522714 39464074 39380703 39495500 39435323 39371794 39429765 39508816 39458689 39382251 39457793 39477048 39418336 39423300 39367144 39448471 39451851 39347018 39436362 39468390 39416418 39396569 39457538 39483036 39408210 39417942 39396421 39451580 39440655 39448831 39504810 39428401 39416038 39418065 39430347 39398479 39438047 39393175 39403447 39453914 39398723 39450603 39350341 39418658 39474814 39416789 39408449 39389210 39446723 39474074 39402640 39429991 39432244 39384089 39476560 39454306 39422480 39469937 39447224 39390064 39455760 39375341 39406790 39429328 39386562 39399010 39385504 39346331 39467994 39462019 39389421 39415993 39412999 39352169 39449097 39460230 39395854 39428517 39392325 39445926 39417204 39391144 39382048 39460889 39405084 39385027 39464014 39355565 39368781 39408780 39408456 39458231 39328109 39333500 39427683 39472226 39417915 39405240 39322214 39454377 39335104 39424368 39450450 39403185 39435020 39258771 39473666 39392494 39363924 39325167 39416545 39434297 39441103 39337478 39332936 39409252 39378715 39418717 39369100 39432969 39454043 39441118 39391721 39382317 39356207 39423831 39424919 39375224 39389190 39402517 39396414 39420575 39379787 39408279 39342944 39423344 39345067 39341223 39397889 39411253 39403743 39366016 39381280 39360811 39404626 39404117 39390681 39321681 39437204 39435718 39416911 39344626 39404198 39373997 39421378 39393988 39369020 39363326 39416928 39349192 39366732 39405971 39355136 39390847 39341471 39372518 39413226 39411201 39386693 39436517 39332675 39307805 39382815 39375459 39438240 39373028 39371514 39327353 39389539 39361245 39446715 39368262 39366265 39367338 39334164 39405125 39392486 39370490 39345049 39480910 39343302 39386261 39358795 39386699 39402930 39433147 39365387 39377078 39335569 39342810 39347226 39409292 39344520 39416556 39350261 39343535 39436467 39348674 39233565 39357497 39285634 39409574 39376863 39364524 39399877 39395235 39369670 39377692 39362879 39374660 39386806 39327167 39346860 39249191 39351168 39358397 39377141 39325141 39409954 39360789 39429148 39379806 39273196 39328757 39382560 39408555 39392514 39354335 39382993 39346098 39350510 39387614 39351318 39352776 39274487 39355088 39394761 39324657 39382435 39328676 39357314 39312222 39279013 39280053 39333550 39326918 39320710 39358356 39347658 39321704 39394360 39289070 39389797 39380768 39324024 39335167 39384885 39360071 39298002 39307711 39336494 39332513 39337996 39358796 39355350 39395503 39404185 39285527 39348678 39286222 39289571 39278927 39330784 39264535 39323863 39344070 39318178 39303033 39360675 39338485 39360802 39409888 39304692 39361250 39326733 39402255 39366697 39292460 39365426 39354501 39343767 39269422 39345726 39254983 39317781 39329164 39308194 39264800 39354205 39337083 39426363 39303748 39364877 39340397 39344552 39359126 39314435 39343280 39294538 39264156 39319741 39270647 39313853 39327425 39304929 39325942 39336583 39207563 39341764 39316755 39329942 39247167 39292691 39366701 39341382 39338552 39240754 39324586 39326210 39307368 39341844 39322904 39251011 39351946 39431133 39260633 39235072 39315853 39332985 39291818 39400695 39391124 39355066 39267090 39282334 39342807 39287973 39343048 39263242 39278255 39351337 39355059 39340954 39386175 39361671 39299183 39305725 39256577 39281689 39366165 39242855 39324553 39296902 39371438 39282175 39356785 39293267 39310846 39272728 39276825 39369318 39244674 39366154 39317985 39364540 39316727 39340283 39307519 39245403 39312380 39265487 39315125 39312865 39323151 39251193 39339804 39338928 39365454 39334360 39300801 39291788 39215239 39327328 39308419 39242502 39220586 39280476 39240451 39227289 39302814 39266621 39313754 39317306 39321423 39252993 39280124 39257541 39310161 39284930 39262889 39251109 39236821 39271216 39254208 39309711 39374286 39259902 39292798 39345082 39229987 39157361 39272574 39282639 39334136 39288974 39314907 39236635 39332957 39358551 39369711 39301239 39284043 39263829 39230580 39290757 39232537 39316626 39275517 39299460 39260268 39256044 39256819 39271875 39248552 39235401 39181236 39245580 39369154 39258666 39265269 39240427 39288718 39294066 39218974 39207777 39232417 39175434 39307472 39315927 39330323 39214714 39298441 39310150 39328596 39240697 39225442 39266964 39287450 39212729 39225879 39249061 39246538 39230400 39185101 39260850 39247951 39196970 39290957 39248977 39236118 39230533 39194482 39297932 39295620 39167110 39254734 39242920 39250470 39269525 39158450 39199261 39303927 39205152 39296177 39268863 39257565 39246833 39198163 39284490 39253415 39180111 39229693 39245020 39174246 39290325 39228889 39188854 39236631 39221410 39157708 39229186 39263748 39169473 39176795 39214524 39241072 39247844 39225022 39208153 39148573 39281614 39244244 39272836 39185669 39168345 39192868 39294343 39225909 39287276 39239669 39197398 39160828 39205045 39243933 39277067 39190814 39196540 39180239 39265445 39196126 39142864 39275979 39256812 39215126 39219771 39230251 39199885 39204934 39239480 39240371 39264231 39242360 39243317 39244904 39178202 39140356 39185567 39201178 39268315 39235518 39225369 39128148 39211618 39187127 39252931 39192620 39179597 39244030 39270206 39178636 39186134 39191333 39143055 39182001 39153127 39135765 39209598 39184397 39159028 39173895 39200175 39202117 39219078 39244556 39181059 39197686 39213094 39221894 39191345 39124272 39233405 39210588 39174461 39129516 39176718 39185088 39204432 39208128 39149081 39163975 39187284 39146362 39196511 39126508 39188634 39158615 39224906 39222201 39167296 39236294 39205696 39190552 39194819 39160538 39175181 39191161 39223974 39167260 39178637 39163416 39222998 39163755 39193843 39167419 39213508 39207486 39206853 39150717 39216986 39117606 39192371 39154206 39179768 39178819 39160038 39135836 39187221 39145227 39183259 39091846 39144136 39206362 39172351 39130987 39173454 39157997 39128662 39120479 39202796 39265818 39182860 39176563 39183557 39201042 39188835 39217912 39159245 39228392 39241202 39226426 39182144 39228202 39096324 39208842 39214823 39213003 39165437 39168068 39125201 39131530 39207516 39115770 39164083 39155934 39128242 39177855 39130962 39180132 39168947 39146927 39186588 39213693 39215024 39190908 39155772 39153018 39174100 39189238 39086751 39188145 39191688 39197220 39169824 39112282 39164436 39106650 39237293 39090720 39105769 39193206 39147643 39193560 39168667 39138738 39209507 39048169 39152275 39147100 39156752 39103409 39140367 39102306 39151891 39137894 39126078 39125059 39080435 39196250 39182888 39137166 39126630 39127127 39132428 39134734 39060910 39239327 39113959 39077602 39178755 39137609 39122960 39192810 39174935 39202865 39174825 39118140 39138876 39107632 39109914 39141246 39084936 39119785 39069230 39131027 39117459 39095772 39194492 39102890 39074545 39091869 39136403 39084216 39077256 39092547 39088570 39109974 39139043 39169310 39143460 39172160 39084752 39099583 39038572 39095552 39194894 39081492 39177510 39088964 39119737 39137039 39151813 39095111 39072662 39100371 39190843 39031471 39158898 39157523 39065112 39116406 39164927 39101257 39128419 39126018 39113252 39067057 39069951 39049788 39117842 39100807 38983988 39046234 39122264 39090972 39119151 39135388 39075779 39112513 39124872 38966483 39036059 39081996 39101961 39127188 39031903 39129492 39165496 39059178 39101159 39036010 39193700 39160777 39137809 39034657 39077010 39106864 39073791 39089886 39089178 39037050 39126108 39097338 39095277 39012322 39120495 39018527 39084556 39082856 39111507 39063888 39041938 39049080 39048340 39063178 39068542 39034561 39054586 39108689 39116795 39086322 39044704 39056269 39126850 39121177 39042080 39097415 39038597 39079072 39105583 39094722 39060979 39121459 39037270 39060779 39062753 39028142 39084785 39093687 39115944 39081487 39052903 39080783 39084832 39079041 39068688 39095568 39046734 39144872 39002224 38992311 39077520 39064022 39093860 39087388 39038447 38995160 39084937 39132915 39082985 39107191 39104660 39040106 39126249 39099377 39104263 39156820 39107489 39103358 39080029 38964273 38986036 39059881 39153770 39028349 39097835 39069015 39079446 39082029 39025495 39102615 39015400 39087866 39049791 39013751 39041892 39023193 39032496 39057282 39013507 39005371 39045958 38974674 39017762 39044218 39046864 39039884 39039653 39068588 39048400 38999247 39060129 39035061 39041167 39044928 39069446 39049933 38965897 39065384 39059623 38977753 39036746 39033428 39071275 39008348 39049811 38968635 39092689 39074456 39039772 39035018 39009015 39013785 39104126 38955919 38983842 39017270 39035817 38998410 39009089 39011970 39024748 39014059 39019046 39060383 38987756 39083676 39042859 39031775 38999714 39007454 39049992 39041734 39029754 39048374 39040502 39025619 39024513 38970496 38978851 39113717 39048076 39066249 39014812 39117960 39008376 39008525 39039047 39038510 39051027 39065627 38985446 39029740 39040571 39004106 38889280 39047532 39020779 38936836 39026100 39010707 38914291 39002131 38968697 39057371 39015976 38911236 38948719 39012786 39030199 39027408 38999384 39061300 39007687 39001913 39040116 38997386 39077291 39001625 39053455 38986780 38991851 38949625 38943628 39024937 38942196 38992944 38985127 38973656 38989823 38969832 39030435 38999739 38990874 38973408 39032582 39035962 38980776 38991883 38983733 39000099 38979975 38951749 39023772 38998442 39009279 38932250 38968733 38988334 38917030 39036280 39016276 39008096 38963108 38965030 39029804 38960496 39024937 38954872 39014465 38997908 39043789 38998770 39004916 39003108 38944799 39012133 38955826 38981430 38979615 39007265 39001004 39007433 38990576 38963802 38960155 38926221 38957242 38978421 38976284 38976252 39018301 38947499 38944482 39034758 39030502 39018856 39023982 38983428 39015341 38954291 38964075 38977225 38999425 38974396 39064646 38992633 38992349 38974686 38975911 38973017 38947484 39030537 38947843 39006944 38941605 39016363 38997518 38993439 39052258 38947298 38984512 38981682 39000204 38982434 39044300 38984810 39017229 38959553 38939197 38974932 38956644 38904508 38995748 38927330 38989080 38961541 38976890 38973511 38992643 38927415 38920019 38987005 38933000 38918400 38904855 38943250 39005120 38918221 38913761 38945482 38945253 38950122 39056710 38862431 38907268 38993792 38974662 38921688 38943066 38986145 38898855 38936831 38996673 38964677 38984945 38960649 38881350 38936217 38943915 38947598 38921879 39039569 39008276 38912076 38909084 38869683 38896720 38923610 38918780 38913967 38955032 38939538 38887866 38930296 39021097 38938384 38991745 38955259 38941541 38949117 38963708 38951643 38959971 38978289 38889443 38896858 38927424 38895632 38969020 38863888 38959607 39015162 38919461 38915663 38883930 38935820 38927097 38853714 38978712 38972465 38929947 38953364 38996923 38908014 38959136 38862291 38888493 38939765 38919514 38936713 38844820 38845589 38902214 38903024 38951576 38968123 38823306 38887944 38989905 38871550 38880329 38908536 38991043 38976110 38892337 38962131 38885744 38909368 38894838 38952309 38904321 38929394 38902346 38921890 38880038 38859821 38915630 38934561 38891708 38889349 38821103 38903425 38958286 38913060 38883730 38920468 38884028 38897864 38910779 38885646 38913113 38892337 38888023 38899759 38866430 38914258 38964334 38895720 38900120 38907809 38906496 38970076 38878780 38954484 38797893 38825003 38983629 38859856 38881623 38960444 38884580 38800095 38942760 38929251 38907749 38873705 38848152 38845698 38961429 38911001 38904504 38810431 38853689 38904374 38975402 38901295 38920226 38884966 38929666 38914465 38888361 38809220 38899244 38853399 38927938 38931562 38905928 38932711 38821157 38860127 38879954 38839945 38928900 38868729 38858496 38806608 38907431 38878689 38847170 38874794 38867198 38936383 38868157 38840318 38855912 38929314 38853241 38915916 38826588 38957390 38833212 38872643 38897471 38785261 38879972 38853864 38954851 38839347 38911498 38872101 38853760 38880928 38905272 38905641 38838718 38930848 38865776 38910610 38928218 38851465 38878564 38796022 38887692 38866736 38863981 38886107 38864770 38877566 38831708 38895226 38855231 38869450 38891913 38935306 38832121 38836830 38874448 38836186 38893599 38892575 38838037 38793241 38856066 38868623 38870532 38810417 38808562 38813241 38866848 38913396 38880118 38795468 38895525 38877079 38862579 38817848 38852887 38840550 38847456 38837014 38876126 38894488 38872459 38872569 38833907 38868523 38774360 38858900 38829205 38888419 38841024 38840201 38878372 38859476 38889494 38831718 38807252 38857610 38834448 38765377 38965092 38879429 38893368 38834389 38862895 38813768 38820553 38821280 38901601 38764193 38848697 38858345 38829762 38812449 38880242 38861681 38841425 38837072 38888436 38845289 38810831 38851676 38776351 38884940 38796056 38783268 38792846 38809747 38817753 38857014 38859586 38874037 38830533 38795929 39015243 38844400 38864262 38789539 38869099 38805601 38863492 38806076 38848687 38816023 38844027 38867454 38823975 38824042 38838309 38802549 38802300 38908114 38876677 38808118 38786375 38859421 38854004 38800760 38852891 38726475 38797701 38791664 38867888 38824444 38807168 38891735 38820213 38791091 38802801 38811001 38797430 38761100 38821390 38840510 38796332 38828128 38840920 38834137 38785099 38842687 38818354 38899328 38833151 38889732 38821952 38901939 38847003 38819013 38817014 38803567 38752266 38854833 38769603 38814642 38791799 38737313 38771062 38776540 38822981 38804889 38835386 38791860 38880300 38796519 38822346 38810644 38822658 38838662 38812164 38794593 38759122 38753415 38751820 38791652 38823508 38813225 38775518 38840229 38899179 38794578 38812185 38768897 38804774 38867695 38845188 38831650 38765576 38730937 38793228 38867632 38749517 38801644 38839736 38840556 38786190 38725441 38842685 38741542 38803797 38773641 38731858 38867268 38675692 38812673 38878706 38794818 38804671 38723004 38716481 38764757 38788311 38817165 38788029 38782082 38766019 38722076 38770489 38752853 38775266 38828687 38762447 38826233 38749817 38832156 38700372 38716117 38797757 38697496 38799110 38865106 38844719 38829470 38807949 38735570 38716402 38723453 38769952 38781653 38823886 38694053 38724548 38758222 38799779 38756951 38851210 38752809 38793599 38710370 38794084 38746284 38817598 38758306 38773472 38763122 38822967 38770591 38805964 38835997 38731042 38752579 38868161 38775169 38789812 38768767 38842725 38824040 38788917 38747073 38718496 38757266 38749469 38762701 38868001 38841151 38759852 38800512 38796766 38790532 38784618 38750592 38719430 38716416 38739032 38708315 38758575 38739924 38753464 38715304 38782999 38736297 38756986 38738981 38683209 38698697 38680155 38743042 38731341 38746672 38754189 38729923 38707037 38738143 38741378 38755497 38792513 38766077 38819176 38724385 38757277 38775858 38793598 38706966 38716606 38742250 38685885 38730647 38775025 38647968 38706111 38713143 38745599 38808648 38726259 38762853 38708472 38744439 38759336 38753050 38803146 38779265 38731895 38786761 38754666 38703481 38778844 38642067 38738428 38686724 38743124 38733966 38805426 38716404 38676831 38723338 38673134 38702235 38697159 38686399 38771126 38705060 38784235 38706564 38745962 38771848 38776162 38725332 38735004 38750403 38692513 38656677 38762632 38734055 38652048 38703049 38739592 38729159 38714902 38745829 38667984 38741964 38761444 38763792 38729892 38718324 38671351 38697998 38759787 38706587 38708814 38670166 38751843 38798152 38740636 38664172 38745744 38705000 38726130 38767100 38747819 38622511 38796036 38746955 38670479 38734143 38725162 38687973 38699118 38716273 38727789 38749246 38740211 38683394 38778056 38734205 38631747 38671111 38659950 38692507 38727280 38688349 38673206 38693702 38716998 38697799 38650156 38638887 38641056 38683292 38645244 38753146 38672140 38690201 38724407 38771976 38625807 38781373 38674927 38672915 38667197 38692490 38680687 38718857 38613318 38697919 38710207 38797076 38700602 38678973 38652533 38703121 38718645 38731196 38713177 38666119 38712212 38648404 38705691 38612110 38640554 38605700 38678945 38673808 38646162 38720900 38672999 38709129 38596721 38637423 38635749 38640505 38661118 38738415 38655476 38652375 38596861 38693038 38730353 38696551 38666721 38631706 38651730 38695450 38687263 38689735 38674198 38583932 38718598 38679031 38704938 38646988 38658038 38647955 38763340 38719327 38723447 38657833 38664463 38712221 38679205 38703861 38649793 38587169 38633914 38632254 38637496 38603393 38627862 38712868 38733871 38690711 38615312 38650103 38608017 38599503 38694390 38628187 38717063 38680444 38646195 38740635 38708363 38629401 38698687 38644678 38627525 38667468 38579927 38605331 38663596 38644087 38658435 38654845 38597036 38752829 38618248 38595473 38598068 38642058 38590996 38646355 38637068 38632225 38626119 38655823 38671793 38646069 38668119 38644358 38632541 38658526 38560582 38637714 38674406 38587112 38707277 38656165 38683426 38590189 38669689 38643993 38585633 38666780 38697141 38698359 38672814 38583917 38606999 38628779 38676273 38657639 38630587 38586093 38585638 38664597 38601616 38614427 38619795 38600680 38588901 38734721 38702664 38505622 38675580 38621853 38677663 38665939 38669011 38665146 38630626 38567712 38661949 38622320 38602203 38585767 38591293 38649596 38552071 38611893 38609397 38595821 38613710 38561645 38641059 38592681 38549552 38596878 38680199 38628027 38639393 38639928 38650175 38707765 38642894 38675165 38578725 38684456 38609033 38555443 38618200 38629593 38578412 38685300 38643204 38631662 38625907 38634916 38649772 38629493 38630297 38653840 38616642 38568077 38619062 38676681 38624250 38584639 38561575 38679149 38608134 38554368 38603095 38685244 38623510 38645024 38625533 38680155 38627528 38597920 38619109 38608449 38654122 38634241 38638210 38643894 38586086 38543504 38599555 38584065 38566627 38599252 38521029 38586456 38615709 38645319 38652371 38627186 38597660 38583558 38576852 38658148 38644972 38633882 38642119 38685705 38678489 38639370 38487431 38637102 38565279 38656465 38694700 38608689 38575402 38616814 38558938 38590831 38662314 38505393 38663849 38624218 38520974 38602317 38542826 38573981 38645631 38557976 38547897 38565693 38637204 38605999 38524078 38595234 38630340 38573926 38636229 38616624 38567882 38643835 38534547 38558623 38607292 38514638 38644808 38556912 38580381 38495662 38621115 38593706 38666190 38573879 38523489 38632866 38629704 38586626 38504661 38601464 38570702 38602937 38546538 38537215 38638008 38612325 38584957 38603543 38646207 38534206 38550260 38607605 38574637 38619229 38572112 38536865 38561134 38545586 38601400 38546977 38621237 38580415 38636273 38510925 38592933 38677607 38540951 38637790 38491619 38501617 38568672 38559846 38568690 38579244 38604902 38470927 38517080 38567379 38545408 38595149 38620883 38522960 38559018 38512532 38523578 38634020 38598618 38556596 38565598 38622740 38557075 38557257 38580023 38587909 38559442 38639449 38560007 38563386 38621751 38591282 38576925 38535803 38626788 38560723 38567908 38609731 38538875 38572350 38463056 38526617 38628123 38576013 38561631 38560475 38457439 38550446 38557100 38572645 38500197 38537214 38538480 38553438 38485557 38502087 38476726 38569963 38526211 38565728 38501232 38578253 38568651 38505817 38530516 38545165 38601211 38524408 38541771 38544475 38591157 38495400 38557033 38574507 38548612 38518899 38550708 38544968 38514972 38530543 38506161 38577967 38514410 38611022 38531604 38548458 38551845 38514122 38515037 38529164 38529497 38515584 38498959 38569521 38614598 38569619 38493710 38512836 38483040 38519695 38524429 38577501 38569655 38569279 38581705 38413071 38578784 38491127 38535590 38477725 38506923 38538524 38471978 38487421 38514974 38478035 38434601 38537430 38542218 38499974 38556243 38531222 38475703 38537321 38556784 38436278 38599113 38500446 38545143 38598784 38516923 38540938 38557599 38513519 38487889 38428554 38512803 38521130 38485247 38572153 38554733 38490192 38546848 38527283 38508188 38477361 38412364 38494701 38424190 38533978 38455210 38520605 38554739 38505260 38501660 38484013 38521002 38465628 38486874 38520904 38413530 38490161 38498974 38526561 38466397 38557754 38519202 38486392 38452457 38561713 38472721 38529465 38473162 38541274 38534041 38480727 38554806 38507810 38493401 38509470 38535420 38522115 38523154 38547719 38580854 38558413 38505683 38392072 38515921 38476477 38397807 38501229 38496866 38523775 38482498 38452327 38502975 38571133 38558728 38478713 38471058 38476405 38487837 38503458 38459897 38454831 38438792 38484605 38466887 38509502 38538840 38465481 38519379 38523632 38465719 38499828 38453210 38539334 38510871 38464639 38486895 38419970 38463603 38423340 38463581 38506056 38505551 38511105 38422550 38493638 38486702 38469678 38452975 38443638 38551702 38460214 38469732 38471839 38449565 38472397 38500128 38507034 38396407 38414440 38431038 38446700 38435199 38522670 38518962 38550418 38344935 38463790 38497387 38499026 38432413 38452088 38532684 38483911 38499127 38425998 38508128 38559449 38422831 38493980 38426496 38457256 38458582 38404777 38527344 38499093 38494421 38410996 38475125 38413594 38498217 38466461 38488552 38492230 38420805 38438803 38423829 38477689 38505970 38470323 38417144 38474559 38510399 38484866 38409759 38550636 38456127 38430420 38403985 38490171 38493709 38437706 38428575 38473473 38431066 38493960 38379263 38432470 38450459 38564098 38523149 38485893 38460687 38439620 38466530 38498670 38403762 38442464 38434942 38458366 38467290 38417940 38361792 38510201 38506171 38376455 38390069 38442293 38401520 38502040 38438908 38448636 38468848 38456532 38472782 38372287 38405620 38469218 38435389 38392102 38497925 38428429 38451230 38483538 38428811 38469446 38457338 38419941 38418896 38445130 38503938 38409165 38392341 38447190 38425242 38439407 38432240 38444012 38501207 38492912 38484800 38396137 38491244 38472225 38478377 38427144 38395408 38398053 38464349 38464536 38406424 38390619 38433011 38408657 38415480 38392584 38479245 38384338 38456294 38508790 38410170 38446987 38437759 38409326 38462621 38443002 38510404 38391550 38393702 38355600 38338982 38502786 38428984 38427698 38447268 38461392 38340972 38323471 38416061 38455493 38462765 38344846 38340536 38415811 38460471 38415590 38426558 38394849 38383558 38401638 38385326 38331608 38295169 38437924 38470500 38359698 38378576 38403996 38420930 38410746 38355469 38462850 38394453 38434889 38443666 38409338 38394046 38424392 38417001 38363214 38382702 38370915 38371064 38461803 38305010 38358052 38364690 38411575 38439437 38397433 38376054 38388877 38426518 38357848 38414501 38355860 38465475 38365710 38377331 38427077 38309700 38382798 38378659 38310259 38463808 38390393 38460340 38365145 38353716 38368656 38364924 38339381 38326137 38468761 38379953 38346922 38424296 38335356 38304573 38421620 38371186 38395931 38411445 38332792 38321355 38423640 38364410 38317223 38367790 38427012 38345599 38387047 38337077 38298738 38316537 38303308 38347463 38353180 38377053 38414211 38407600 38316841 38377555 38316823 38276029 38405563 38300940 38366451 38421267 38323404 38422147 38398846 38301919 38379286 38347460 38376036 38354464 38337587 38398279 38380687 38359952 38393179 38362249 38368812 38282567 38354638 38356738 38361099 38318858 38338814 38392535 38410852 38418154 38353856 38355011 38317220 38284268 38374946 38363519 38377938 38334888 38373709 38367045 38358637 38362105 38419127 38352148 38259265 38266148 38339470 38386501 38320700 38425016 38363475 38361281 38315507 38368050 38329064 38413355 38325431 38398473 38351660 38301906 38291357 38363128 38306968 38271824 38333656 38396043 38369570 38344532 38376815 38394552 38359681 38352480 38324581 38327473 38349613 38326663 38307400 38357484 38331075 38272349 38381733 38268812 38299877 38314381 38310862 38335316 38296511 38346519 38320557 38361811 38295273 38383749 38363182 38360595 38308301 38389321 38349427 38290158 38284216 38391954 38354764 38289541 38279169 38283020 38349190 38311204 38381851 38345246 38392106 38345903 38324653 38326808 38345177 38408259 38295748 38318331 38379903 38379586 38321009 38312083 38326902 38269097 38303204 38280159 38294418 38269584 38362833 38278134 38337132 38296432 38296634 38395673 38367670 38333128 38319147 38327962 38375828 38250434 38279637 38356273 38343369 38296676 38309734 38286798 38276968 38331904 38308082 38331414 38331557 38307501 38343269 38314573 38331932 38326070 38351152 38309925 38266161 38337957 38238642 38290517 38311958 38260084 38361473 38350928 38285746 38214102 38375750 38292642 38302148 38280073 38245357 38357375 38252555 38290013 38343523 38332288 38419267 38297288 38252143 38247222 38355675 38337783 38312021 38263361 38332006 38288367 38294555 38238124 38297216 38252428 38289456 38295573 38282222 38249463 38337885 38246588 38235979 38272092 38252379 38301097 38271131 38288747 38322864 38264001 38298352 38264648 38280575 38238196 38256188 38357724 38286018 38285410 38308357 38332824 38296443 38234270 38291771 38309427 38251445 38307773 38245731 38246462 38290999 38325038 38234775 38335300 38306540 38305177 38203239 38271953 38248973 38253958 38324442 38301139 38262059 38282006 38254362 38267173 38244275 38263993 38277299 38301639 38284098 38265506 38288688 38189570 38327987 38281687 38304744 38183333 38266873 38265996 38242154 38344028 38308116 38278789 38285863 38276013 38247673 38220707 38299279 38278384 38183766 38306306 38222804 38326653 38204655 38325567 38211612 38213446 38279577 38267578 38217621 38263366 38243398 38326523 38213035 38235315 38298806 38270472 38245485 38243660 38251397 38301746 38293631 38203181 38261076 38324315 38272339 38220458 38251306 38241060 38239912 38319779 38210939 38247747 38270657 38255862 38224969 38262715 38254497 38230087 38232655 38204729 38223575 38271745 38248298 38181747 38245924 38259129 38268532 38234641 38248824 38238253 38268347 38290074 38205698 38300339 38186096 38270144 38211511 38257829 38280547 38228552 38264840 38270286 38195619 38183702 38210385 38252703 38268876 38205313 38256717 38209367 38187448 38127514 38314984 38224319 38271492 38211165 38287628 38213976 38216409 38225132 38235486 38191516 38221935 38203181 38196550 38195391 38180176 38175827 38159884 38185349 38203377 38240819 38201957 38206821 38242914 38225772 38212663 38266440 38168586 38133066 38258536 38254919 38195410 38265559 38189225 38184115 38165668 38209401 38208543 38254177 38206537 38204180 38201071 38227123 38230108 38154878 38159774 38206967 38155606 38233304 38197478 38208239 38256903 38161962 38154865 38193518 38182521 38184643 38217842 38159286 38249964 38189263 38093142 38232027 38209649 38193437 38228701 38229776 38221066 38219945 38189343 38219717 38197526 38135353 38198840 38205968 38224402 38247926 38252931 38142518 38207710 38168606 38242109 38202602 38171831 38193224 38176149 38161873 38191295 38155024 38125613 38206717 38186027 38215345 38221563 38204026 38195786 38237994 38226936 38227819 38184015 38179397 38197017 38158902 38202995 38183834 38209435 38087655 38162329 38284801 38156765 38257204 38189907 38222580 38203159 38164185 38162806 38140151 38141561 38222645 38167063 38206197 38138930 38215161 38202099 38219562 38143174 38183628 38217460 38250564 38180466 38129732 38232482 38162919 38167675 38202084 38191522 38237060 38156701 38140519 38195750 38134700 38214653 38178414 38277538 38179654 38176251 38153810 38178910 38098185 38197979 38218592 38224600 38160345 38211237 38209200 38172131 38143291 38191928 38114436 38152837 38241537 38184812 38133136 38144635 38193594 38144016 38225585 38183434 38181515 38198557 38212481 38211532 38144257 38137054 38085055 38201882 38092398 38102406 38159773 38179422 38195717 38128855 38155309 38200397 38158097 38184902 38177542 38164360 38142616 38223000 38186046 38177069 38121395 38147043 38088163 38127121 38203994 38085315 38193495 38181924 38136724 38092911 38133685 38153874 38163882 38166409 38163332 38163221 38194976 38128354 38128000 38127481 38056105 38130669 38238062 38137218 38113315 38150109 38184381 38123060 38093972 38077199 38120713 38192392 38175864 38122871 38120988 38161902 38156332 38195178 38165308 38180089 38101870 38140842 38128819 38090124 38171412 38176484 38185805 38148296 38092028 38159631 38158982 38123911 38104658 38167984 38125519 38129666 38110796 38134456 38138191 38146581 38077032 38098580 38103115 38070867 38037084 38056703 38143527 38080232 38110220 38110587 38148927 38131631 38143293 38098911 38161232 38166620 38122949 38052654 38138224 38079802 38172604 38122664 38129973 38141922 38055947 38163525 38102901 38133949 38116803 38187688 38129653 38148075 38099645 38139207 38075145 38147050 38175160 38039218 38108604 38131313 38001076 38183854 38091508 38151179 38051868 38110521 38113457 38164623 38149488 38121000 38099271 38103327 38104062 38114293 38089607 38128954 38089253 38095867 38112965 38160368 38117786 38102726 38107115 38109822 38111895 38072943 38149034 38066276 38121492 38109133 38140944 38124488 38061635 38142232 38097531 38144945 38151405 38108409 38066689 38120250 38120045 38113422 38089672 38066593 38132098 38050051 38020005 38099398 38066843 38175042 38064808 38064293 38124430 38086793 38075491 38052279 38162917 38130614 38100717 38014659 38078405 38063053 38066118 38116023 38053879 38108995 38096395 38110343 38165619 38116874 38091263 38076837 38061223 38200568 38025116 38131097 38112709 38110654 38064892 38059546 38085374 38097034 38028394 38114810 38043642 38029993 38078227 38125792 38080601 38026947 38033273 38035366 38032431 38081824 38148042 38021044 38105917 38076856 38085430 38053573 38016198 38108050 38123036 38093213 38079657 38059603 38023398 38069451 38043429 38052291 38084423 38102926 38090495 38080191 38065462 38033805 38049313 38018896 38035521 38014231 38070304 38037883 38077054 38006712 38112439 38077811 38037523 38046725 38062871 38019601 38095761 38007692 38064649 38072597 38075760 38090681 38077128 38018858 37969627 38002574 38045526 38098618 38213240 37967472 38013497 38053358 38047015 38048309 38010238 38011480 38073491 38004192 38101293 38076038 38042145 38048961 38033952 38068717 38008639 38007958 38065396 38077385 37998089 38058076 38123593 38053952 37962750 38006376 38038787 38120656 38109061 37992406 37968633 38112545 38033129 37955540 38025305 38009575 37963844 37985744 38029812 37995779 38033957 38055798 38054409 38044839 38059272 37989048 37972900 37998093 38046632 37971537 38111711 38024262 37905701 37986628 38047502 38072129 38056219 38040522 37974793 38039773 38025968 37943420 38064992 37993440 38018766 38044224 37992172 37968947 38072881 38036340 37979597 38043075 37987486 38042124 37980840 37990617 38006057 38017499 38035027 37987632 38002093 38024963 38035802 38077802 37955745 38112113 37985199 37966833 38062654 38001010 38018162 37985009 38009812 37965201 38024665 38045579 38061088 37971204 37996503 37972001 38007464 37967519 38082817 37974937 38067256 37947976 37998740 37943633 38023375 38031625 37994405 38077504 37960422 38000784 38002730 38026754 38035207 38049309 38003236 38016807 37952324 37969040 38010184 38002634 37995784 37989160 38006921 38011644 37985880 37987817 37991588 37947957 37993954 38002159 37975482 37977428 37920521 38023481 37986947 37955063 38029034 37953943 37996816 37963951 38042887 37939054 37957655 37931515 38028122 37929758 37994353 38017889 38003905 37984297 38000025 38067733 37976194 37944864 37971010 38037547 37948069 37966194 38011715 37971197 37987241 37980744 37918204 38020109 38011149 38014703 37941896 37954069 37992497 37974673 38007378 37940352 38019202 37969229 37919709 37964884 37939184 37980888 37868533 38001698 38000921 37935286 37964798 37950134 37989396 37993030 37935267 38009099 37945680 37953723 37988348 38003585 37904713 37972710 37997429 37959616 38006714 37926375 37961874 37972905 37960982 37977926 37970977 37960616 37977887 37967905 37887921 37963426 37933366 37956885 37904270 37939518 38002492 37999729 37915554 37904507 37977832 37906598 37957809 37981717 37896202 37941713 37950001 37999908 37973886 37965239 38002520 37892872 37985255 37959651 37972264 37931897 37937969 37909045 37928814 37940512 37949264 37882373 38023437 37985229 37960840 38032822 37972104 38005374 37885622 37932866 37961000 38025336 37959379 37944385 37924230 38019443 37946120 37866272 37887603 37929305 37968076 37922074 38011194 37929850 37938265 37977801 38001402 37943284 37900370 37923805 37904004 37919477 37935561 37940849 38015419 37923849 37915816 37874641 37877354 37938871 37892697 37870062 37928546 37892223 37960239 37906648 37872208 37957999 37867945 37966382 37915258 37908418 37962275 37923379 37813852 37879717 37906285 37867436 37826412 37980028 37948580 37939552 38013554 37912623 37931226 37935170 37940364 37950085 37894029 37892334 37883927 37896440 37897891 37932579 37942555 37854441 37911300 37959401 37925918 37929145 37829898 37868387 37920846 37890879 37881373 37909341 37927038 37924809 37931951 37980487 37872679 37870008 37927853 37972756 37852875 37991904 37975126 37890773 37941069 37941990 37999507 37918371 37850520 37953079 37958208 37919216 37932929 37924313 37877163 37876118 37852333 37866513 37889614 37897078 37932991 37932144 37956908 37864249 37886983 37844660 37915433 37974814 37866586 37879411 37873970 37935894 37922759 37877103 37916312 37860854 37950769 37913431 37932152 37940163 37931287 37823615 37907671 37880622 37847523 37907488 37891022 37824791 37924565 37865412 37878193 37898019 37795332 37910062 37891917 37871392 37889992 37879710 37829903 37910682 37974553 37817640 37897968 37845304 37884328 37898589 37860559 37808644 37829405 37880750 37902010 37828971 37935431 37942801 37905027 37844111 37880585 37889306 37846832 37922621 37810021 37882641 37834640 37836268 37890160 37902990 37860372 37864555 37855944 37923989 37898948 37858475 37876971 37860353 37849969 37892573 37860555 37825342 37861427 37854538 37856049 37814418 37894358 37882210 37798694 37861207 37871304 37851739 37899100 37875981 37792237 37872578 37943468 37815379 37829862 37840520 37843747 37845231 37876587 37906465 37810876 37917839 37851536 37806034 37867429 37891867 37842078 37830116 37948444 37821561 37822641 37840200 37828643 37854045 37828533 37857280 37821823 37887916 37782300 37914664 37877937 37853309 37841662 37822805 37804698 37831971 37890833 37858419 37851179 37850309 37878324 37848887 37757618 37831890 37847108 37905734 37847573 37886278 37881200 37844496 37806434 37824658 37818466 37862371 37872914 37821164 37832759 37864843 37806589 37882069 37893723 37864938 37809583 37770555 37816909 37814393 37842116 37903529 37809775 37825593 37831101 37871780 37856038 37865895 37915872 37839129 37826017 37762618 37889732 37878800 37853513 37854801 37832260 37789864 37819181 37824963 37887467 37822305 37874798 37836187 37857451 37851027 37829010 37817498 37808820 37861081 37832924 37801360 37841565 37814723 37913230 37840036 37913351 37838744 37819681 37845071 37764337 37824030 37845391 37785573 37829802 37835006 37807461 37787830 37796938 37818949 37821872 37806292 37820404 37828293 37784225 37879591 37784663 37891595 37823005 37839863 37828705 37854398 37822534 37777892 37827494 37802022 37798683 37782553 37786224 37825631 37775003 37743555 37870145 37803169 37820514 37704878 37829466 37868189 37814346 37763064 37832111 37817425 37805908 37787760 37779974 37808340 37731106 37807251 37794588 37773461 37839235 37825924 37820373 37817757 37703870 37789829 37789000 37800169 37798001 37820995 37765354 37775262 37831993 37740091 37754088 37809233 37814265 37792046 37753462 37800269 37806761 37729960 37760195 37788870 37773215 37837390 37854134 37814355 37737294 37760291 37805521 37786427 37742422 37770697 37777544 37818573 37812723 37724775 37797967 37798994 37738393 37859564 37770484 37774546 37810293 37765336 37848858 37789423 37799940 37828482 37840613 37783784 37811529 37833726 37696965 37785875 37800392 37780693 37792229 37720093 37832663 37809380 37783918 37712027 37766059 37803635 37750278 37712151 37784802 37727585 37763375 37743070 37734076 37759275 37733027 37827494 37734796 37785781 37726041 37812924 37731719 37787818 37806690 37671689 37774050 37740116 37695906 37763058 37763297 37772555 37778859 37738425 37766732 37710362 37696773 37744263 37760787 37705672 37754564 37756323 37767294 37800505 37708885 37656475 37721003 37771487 37789913 37741630 37644462 37743744 37751451 37752707 37630588 37760645 37767550 37786040 37701981 37755219 37706588 37734607 37861371 37763562 37725508 37719854 37754589 37732445 37776382 37713871 37808391 37730504 37764896 37754512 37779280 37713974 37754191 37771728 37761783 37763740 37773454 37704782 37741768 37728758 37704911 37756054 37759398 37789922 37749980 37740321 37787183 37718506 37847134 37721579 37727746 37754155 37816582 37760423 37738329 37745973 37695201 37800808 37758979 37697744 37752990 37785546 37728484 37781372 37690619 37749729 37748606 37751176 37701786 37697417 37755298 37752284 37726082 37727554 37701502 37653374 37735625 37660162 37774093 37688404 37712657 37742634 37721163 37737294 37741007 37694112 37672932 37697074 37689748 37672350 37697041 37733631 37718380 37736057 37690683 37778855 37678399 37771421 37684537 37688388 37761359 37697246 37721323 37713898 37736875 37712259 37789144 37649163 37755171 37677224 37724787 37685872 37735804 37701700 37721061 37702528 37787726 37697932 37647246 37669944 37745239 37704763 37724136 37707727 37751306 37711987 37699325 37664290 37759380 37667819 37666584 37679926 37708033 37778128 37700238 37671873 37727441 37753841 37726763 37726686 37738346 37708940 37725603 37627253 37619533 37598310 37689240 37746148 37739131 37747487 37752149 37728160 37799907 37706526 37702244 37753594 37713520 37820850 37680480 37777502 37745644 37702722 37696100 37670127 37695922 37731044 37672241 37745582 37658102 37667609 37662463 37720064 37671276 37680644 37758544 37715338 37794429 37673639 37676905 37753921 37680407 37672304 37652110 37765785 37687440 37696057 37733174 37680880 37704078 37680157 37710879 37689440 37599848 37696415 37715341 37721647 37642406 37678997 37660698 37696093 37642002 37714755 37564880 37728518 37639681 37682601 37674545 37674871 37603040 37654775 37645522 37594250 37601198 37640344 37702068 37683694 37619210 37650583 37574320 37664484 37630113 37655239 37636338 37638072 37609525 37667972 37619442 37708067 37691407 37673045 37690975 37708470 37622658 37669636 37614461 37601061 37640977 37618226 37737630 37638313 37610301 37683303 37640869 37624081 37705919 37658413 37659233 37670408 37693014 37717042 37697968 37621930 37673934 37622375 37531419 37637496 37576026 37646943 37616669 37683399 37621711 37698934 37677025 37679957 37667730 37655427 37638065 37658037 37619032 37691598 37621716 37678260 37661493 37628558 37645702 37667208 37656819 37622177 37627462 37700729 37635015 37684922 37696853 37568560 37634427 37694790 37647514 37627222 37653188 37582767 37629554 37729494 37607400 37651405 37697378 37682719 37649215 37636828 37605501 37638097 37609882 37619478 37657531 37624452 37601510 37623235 37608086 37661678 37613292 37572199 37623398 37616541 37640983 37638167 37603061 37667383 37639786 37663753 37620393 37640791 37572006 37614226 37634133 37598577 37619901 37567811 37659685 37634801 37624458 37600851 37682170 37552520 37625914 37587817 37614356 37614077 37631217 37617479 37588829 37649343 37597082 37604015 37705715 37606863 37620518 37710970 37612607 37628525 37536702 37664829 37593842 37593773 37559965 37570755 37595210 37601986 37621973 37623592 37620170 37582697 37631938 37607870 37665429 37630598 37570090 37610764 37557378 37582570 37598274 37681765 37546827 37634607 37597651 37596483 37694208 37546010 37597788 37630425 37573404 37622359 37527808 37650783 37523308 37589535 37620688 37622558 37624260 37622927 37622772 37554926 37576126 37659638 37603304 37648967 37632541 37575296 37603259 37589167 37490731 37571291 37601053 37619948 37528804 37550455 37602828 37589382 37545906 37634563 37550741 37552886 37556020 37606503 37635132 37598378 37609215 37519389 37592402 37571102 37630844 37602614 37569502 37584189 37563016 37651180 37526975 37627217 37642097 37547230 37610663 37558105 37542832 37555685 37601327 37573782 37665029 37544075 37561799 37541785 37568624 37563627 37598367 37558389 37544847 37527978 37568722 37600337 37519507 37629867 37591299 37626888 37619377 37617231 37593549 37509549 37528181 37534741 37569012 37633455 37589693 37514120 37590837 37600584 37535715 37618770 37615193 37629027 37530875 37555195 37556628 37544525 37556604 37607912 37627260 37621632 37512156 37485352 37555407 37535097 37624527 37504189 37558560 37527974 37511036 37511528 37571073 37566429 37541139 37555482 37577854 37553723 37522163 37525343 37612842 37563012 37659789 37528412 37493618 37616221 37597005 37575432 37514019 37555696 37490120 37639348 37475281 37572783 37548421 37469630 37489355 37617879 37567654 37503879 37526825 37516047 37541405 37533019 37526339 37493524 37558408 37618624 37567023 37471538 37588426 37544936 37493664 37549566 37540078 37603610 37523789 37539045 37452179 37508767 37531894 37533345 37510324 37598117 37570748 37547330 37536082 37530853 37540669 37516027 37596441 37519676 37530157 37533726 37515262 37632709 37528022 37542309 37445690 37522621 37510489 37512485 37558103 37538384 37564976 37466922 37637331 37470255 37517970 37503241 37553718 37504021 37537487 37603957 37540336 37508616 37574104 37503026 37554746 37591866 37505320 37527226 37518417 37543447 37564731 37491642 37549788 37588403 37551982 37623064 37538003 37580777 37562897 37466608 37515086 37558462 37511036 37412802 37526341 37549461 37532567 37501027 37479242 37501118 37452433 37407978 37513722 37549299 37516836 37484928 37517617 37539025 37516821 37511616 37363109 37521477 37494274 37526625 37533478 37448395 37500852 37540948 37498812 37461444 37510322 37476598 37410475 37545084 37482685 37557666 37507932 37545363 37478984 37556586 37475245 37542851 37443736 37500954 37495450 37473944 37513681 37552074 37441728 37529276 37497433 37419778 37494673 37565702 37461803 37457841 37440487 37492970 37522863 37496039 37518729 37497766 37450762 37496142 37496455 37527916 37441584 37495707 37463225 37455780 37468114 37470966 37408638 37449851 37447465 37455560 37454411 37467211 37528362 37471178 37436221 37530046 37518930 37488892 37450343 37543198 37504917 37499980 37446064 37459731 37462639 37463526 37378309 37505452 37449853 37515481 37508644 37433547 37430347 37483811 37442730 37454895 37467254 37440803 37461474 37487410 37504517 37507893 37380470 37425694 37424336 37439823 37537029 37446931 37447101 37420527 37408766 37470017 37405893 37572149 37513447 37436608 37513200 37444231 37523481 37447440 37547885 37448893 37465264 37458253 37438461 37451006 37388498 37404982 37484703 37457302 37370413 37445693 37508658 37500542 37508429 37475644 37440322 37459451 37431766 37437737 37412154 37489652 37383392 37497485 37407579 37548286 37478771 37397266 37440566 37382715 37455466 37503132 37446225 37429659 37464149 37436325 37453815 37508675 37475656 37343974 37432446 37426033 37426414 37468229 37457487 37357934 37442536 37392755 37395532 37414248 37387235 37513544 37454240 37476574 37421558 37387887 37421055 37485438 37463785 37470141 37403070 37571305 37431955 37454349 37481518 37457510 37514171 37455332 37437947 37436633 37394262 37452930 37430577 37407109 37435864 37439780 37476271 37443481 37314756 37438756 37401621 37417988 37468372 37505203 37456440 37433587 37447922 37402921 37453664 37434633 37462523 37439727 37409477 37433791 37446324 37380398 37440338 37382540 37386589 37406089 37409680 37438886 37395924 37413976 37389185 37380424 37466942 37388072 37435864 37374045 37421328 37423259 37330354 37464493 37384566 37493848 37367780 37348288 37370979 37379207 37385951 37415874 37432749 37455420 37383702 37418990 37355297 37416103 37286930 37404916 37425248 37436507 37444034 37347344 37499775 37439527 37353132 37370131 37376332 37331486 37409517 37414728 37376198 37361996 37392360 37322116 37460185 37395664 37394002 37421140 37401533 37447774 37364255 37375502 37415389 37339054 37391556 37421076 37376453 37308466 37333842 37390559 37424424 37394917 37367377 37414289 37413628 37347904 37398326 37379587 37404151 37421556 37375461 37451343 37332540 37356184 37346614 37463162 37395393 37380854 37308861 37383369 37389693 37397412 37397474 37393964 37445754 37390884 37406937 37408069 37405036 37444019 37375555 37301383 37368599 37348479 37381987 37440673 37378560 37408427 37378880 37310020 37324976 37305536 37452959 37327004 37389088 37329586 37359755 37381799 37377360 37354381 37466215 37390767 37348250 37312842 37356681 37401919 37389181 37393559 37379995 37450110 37270113 37364250 37396819 37297496 37420993 37325126 37357257 37373572 37319458 37381887 37392248 37363904 37348546 37355009 37358079 37344340 37333046 37299999 37408927 37344562 37285829 37307387 37374168 37409379 37380706 37377938 37316928 37417085 37330385 37346003 37358426 37320121 37243337 37338171 37361207 37338633 37275685 37350630 37391794 37337148 37310710 37416317 37308184 37318782 37291891 37328371 37338807 37357773 37338237 37319266 37278292 37307072 37311706 37331123 37349529 37363649 37330892 37363724 37345084 37379645 37360062 37267023 37318072 37346757 37317623 37263866 37351136 37308378 37298917 37427023 37415073 37343922 37373951 37350476 37383813 37413207 37343622 37347960 37364963 37326582 37378561 37335363 37395626 37418664 37359591 37353213 37338846 37409607 37284740 37344313 37252377 37307860 37332914 37310191 37329354 37343738 37346951 37322267 37294775 37329961 37227046 37342039 37315958 37318914 37333942 37299388 37304784 37289483 37319580 37341431 37331681 37368670 37266561 37312633 37274399 37359168 37302804 37347069 37268371 37313244 37316765 37301534 37314159 37316249 37459249 37369920 37323790 37312561 37251429 37338251 37344070 37280006 37247196 37309142 37310058 37218001 37350537 37306245 37304769 37334746 37306446 37330411 37335804 37334586 37295539 37282216 37299875 37240079 37321943 37295183 37210070 37287768 37280526 37320210 37293243 37305415 37319568 37365658 37334856 37274953 37360721 37319885 37355871 37327032 37280556 37309940 37322475 37248837 37264193 37314212 37294149 37338886 37329530 37302502 37284565 37326468 37322358 37245554 37314023 37260361 37269131 37239542 37324787 37350266 37293941 37282182 37284956 37278263 37270354 37319752 37344889 37240914 37278146 37305826 37310262 37254687 37265133 37253512 37192578 37269759 37232114 37390600 37256047 37206723 37296596 37243094 37276927 37325372 37286406 37154998 37290774 37248246 37256300 37291293 37262595 37281449 37197304 37233736 37236639 37299374 37345006 37242575 37331968 37284899 37252444 37302610 37370368 37259851 37236422 37310222 37265267 37296321 37242804 37270876 37302771 37299118 37236750 37267110 37329030 37320340 37272019 37236150 37300309 37318001 37217578 37260212 37253279 37181952 37236376 37275510 37318457 37281398 37248742 37271394 37281584 37288626 37253163 37247064 37258755 37238717 37317433 37205866 37304554 37211208 37255297 37226920 37130100 37322193 37251183 37205801 37237924 37245536 37255890 37223013 37235874 37267021 37274137 37257051 37232421 37224525 37190176 37176164 37242458 37196269 37273050 37233849 37149975 37309973 37297135 37192156 37231516 37293131 37257309 37197337 37224100 37174779 37214203 37247807 37277928 37168229 37298146 37156663 37216968 37285632 37235406 37232506 37235970 37261428 37224293 37215495 37239937 37288933 37336440 37226014 37219373 37289431 37180946 37270455 37254280 37219571 37245138 37238416 37197129 37220856 37226996 37244282 37181721 37210024 37229221 37304708 37253787 37257830 37275022 37249999 37262313 37248309 37243287 37251308 37227618 37237979 37215486 37211810 37134028 37214998 37260826 37192821 37238740 37226154 37155170 37185715 37191742 37234033 37224354 37196622 37341678 37208492 37243141 37331605 37205929 37262830 37230236 37231223 37257802 37197526 37223136 37203920 37342849 37178613 37236546 37238313 37262416 37166889 37237290 37276904 37166197 37236795 37195494 37222734 37183169 37157937 37248523 37270624 37195805 37189530 37195032 37212411 37143200 37202128 37204935 37143981 37193994 37124506 37271916 37176593 37198085 37182508 37164453 37191058 37215913 37194505 37164305 37211405 37204376 37218162 37160475 37233053 37152772 37132379 37147073 37209208 37196294 37149320 37155487 37152889 37158539 37189734 37139498 37134632 37168975 37207673 37192828 37149039 37189115 37214776 37166305 37121711 37230782 37152892 37181959 37143642 37122310 37160491 37207962 37156853 37250050 37129465 37173337 37166714 37129998 37196985 37210012 37276280 37167817 37207582 37182380 37184094 37176409 37143251 37252276 37220631 37164288 37116052 37184259 37099509 37171919 37153101 37194405 37202317 37080501 37194898 37152897 37194613 37130420 37131645 37205149 37169904 37126488 37177965 37191252 37194459 37150060 37155813 37144110 37155553 37170288 37199881 37168392 37174242 37199716 37182979 37188887 37169347 37127318 37155035 37191405 37148903 37173614 37222355 37143349 37171752 37224886 37135940 37203377 37116649 37220990 37158804 37146355 37149483 37091273 37160369 37176932 37164585 37119426 37159957 37137204 37216544 37031889 37196310 37100551 37142207 37110913 37138874 37177835 37149389 37178493 37079590 37166687 37139715 37146855 37182382 37141404 37133906 37092251 37135799 37160194 37108615 37120651 37038296 37138580 37235573 37129881 37089993 37157035 37147692 37169403 37136481 37095259 37186359 37155578 37170217 37105756 37121410 37080836 37058994 37190519 37112691 37135895 37144936 37128005 37117397 37114606 37187335 37134082 37121002 37112497 37141497 37064513 37086693 37196984 37124366 37172936 37131852 37083810 37105173 37165947 37042973 37152696 37162612 37114700 37133675 37096148 37222382 37111058 37083503 37193739 37072022 37105501 37047899 37122969 37099470 37110310 37171923 37152424 37148722 37206557 37122214 37068062 37154697 37098819 37095350 37181025 37132973 37087764 37141639 37163956 37109238 37180255 37104290 37156278 37099043 37162032 37020217 37172076 37105668 37075715 37140132 37033815 37161721 37131536 37146821 37126567 37100096 37126507 37174650 37091236 37121748 37109072 37042341 37121298 37154607 37099831 37071385 37085025 37071024 37038318 37156686 37146313 37057844 37094403 37092923 37124698 37078926 37090329 37097238 37091927 37124907 37036056 37099108 37082943 37130169 37148935 37087891 37115778 37119493 37107588 37170431 37080998 37092265 37087886 37061734 37076326 37119649 37049927 37058000 37102188 37128702 37077830 37097675 37101250 37087231 37149848 37100698 37173166 37094589 37108919 37076436 37059175 37128017 37052559 37020681 37083060 37107279 37033761 37132957 37132259 37126078 37041789 37105445 37052185 37047684 37109482 37168131 37080433 37096212 37046137 37109859 37043026 37099991 37113897 37120654 37102024 37055567 37075700 37115431 37102192 37113947 37096970 37093349 37077925 37044664 37112081 36999815 37058411 37094862 37067444 37086365 37057957 37158325 37099710 37104423 37036550 37146562 37085874 37110950 37143290 37101381 37042901 37065149 37078175 37074546 37106961 37089607 37027491 37059574 37082664 37078514 37091685 37099052 37121501 37026312 37044202 37082122 37036154 36993362 37093163 37112035 37022809 37049247 37031155 37072435 37045330 37074692 37011136 37132087 37021264 37101041 37055584 37011909 37047432 37128447 37039191 37014263 37119532 37037201 37079687 37060160 37100426 37106288 37026405 37059341 37036470 37072326 37036493 37014993 37035974 37075694 37006204 37039847 37083170 37020741 37057028 37037065 37039598 37078870 37016286 37011551 36996516 37073855 36992390 37048435 37025647 37051811 37066600 37025378 37103753 37027031 37075913 37050064 37008593 37072502 37072982 37020078 36980473 37037717 37062327 37028070 37056114 36952162 37074400 37069496 37004748 37012681 37115615 37102820 36989877 37076745 37058296 37023446 36984989 37073339 37038556 36991611 37073605 37016504 37129251 37013296 37006897 37095098 37026429 36964869 37018897 37072158 36988711 37065457 37011540 37030923 36995406 37050780 36981313 37036139 37008332 36953369 36990849 37038714 37077308 37016198 37027254 37048242 36985921 37029917 37037910 37087443 36975199 36967640 36981743 36985250 37033731 36994852 37004958 36990529 37023909 36942797 37011528 37030470 37078951 36977446 37033270 36993076 36981973 36977482 37027080 37027120 36990909 37012921 37020394 37020618 37010804 37041234 36931873 36976042 36948682 36950558 37001147 36992282 36974170 37024758 36933555 37012374 36968038 36932192 36997730 36987870 37073014 36981702 37053092 36913024 37018029 36994286 37033949 36991040 36949963 36996162 37002167 37005239 36991464 37052459 37036536 36996989 37009073 36987369 37024215 36907509 36961805 37068443 36935535 36883018 37004249 36977436 36949295 37024963 36969218 36978995 36950222 36979353 36967943 37003157 37003465 37018838 37002052 36948128 36947783 36998836 37006296 36960234 36889411 36984719 36909784 36992512 36957020 36997851 37007428 37002527 36964748 36843471 36971978 36966628 36919472 37025232 36973408 36966081 36970389 36929230 37003137 36969627 36993194 36973130 36966978 36987661 36973006 36942796 36992686 36942872 36915596 37048699 36932908 36970849 36927255 36949764 36920862 36981531 36924521 36901039 36963810 36929642 36922067 36964891 36972817 36976602 36989707 36930959 36954944 37056854 36982526 36978293 36968857 36954832 36972448 37008919 36982649 36975474 36896215 36952369 37037646 36903611 36989260 36980610 36944791 36910319 36948711 36938070 36951946 36975960 36925279 36946053 36898628 36998160 36987285 36882220 36918154 36939230 37005943 36974063 37016120 36888203 36932273 36894052 36931313 37036683 36950081 36978517 36922002 36968962 36917879 36914895 36946073 36903413 36896093 36995874 36951177 36867937 36941978 36957138 37002438 36922342 36951912 36969744 36970150 36868974 36951477 36952450 36930822 36921952 36900659 36913506 36903504 36934193 36987614 36888111 36945863 36994919 36970861 36938592 36922548 36905759 36915669 36854361 36934871 36912413 36932175 36973862 36931959 36917376 36927618 36991062 36910446 36912880 36925463 36981594 36947765 36938566 36934957 36858161 36930018 36869566 36956950 36973695 36882901 36887836 36960034 36851709 36852240 36953699 36881952 36933018 36910321 36869890 36940395 36868287 36862085 36894408 36998700 36898347 36871716 36877833 36906336 36919375 36957701 36890322 36959202 36922984 36902355 36889618 36918742 36958801 36927446 36885975 36933894 36849567 36875481 36944657 36933196 36872896 36887029 36965712 36907618 36858227 36915952 36936769 36932071 36910980 36927245 36874000 36877285 36898893 36910416 36852425 36892507 36879764 36936860 36904209 36861264 36878617 36923534 36859687 36951164 36895236 36891597 36852619 36854547 36825224 36859076 36895149 36848334 36858873 36853403 36938699 36872786 36903797 36820747 36862821 36875689 36853176 36929930 36872643 36886684 36871731 36872697 36935791 36913818 36807680 36902011 36890624 36917590 36894090 36858842 36915991 36799401 36912568 36860806 36975068 36869846 36939098 36860743 36919511 36895676 36908612 36815116 36879407 36918276 36794017 36872059 36931955 36889401 36851376 36904901 36934590 36818377 36908497 36848971 36805782 36855092 36839038 36824730 36842275 36870860 36922065 36841735 36912809 36806928 36848522 36904486 36887616 36853977 36814035 36853149 36944433 36932149 36901888 36803582 36867782 36972661 36818030 36858752 36844364 36902446 36773684 36791406 36834767 36822877 36828471 36841055 36785293 36859746 36879127 36836864 36839623 36815262 36858520 36811837 36847782 36851663 36849035 36827068 36904339 36831506 36858922 36852304 36808136 36864166 36823185 36894485 36822927 36856009 36858278 36816308 36857632 36870300 36907581 36820858 36792306 36856026 36844948 36873372 36843940 36785279 36874687 36784463 36814271 36820542 36921270 36848171 36951543 36867988 36776342 36836462 36840036 36834098 36769230 36763625 36859346 36853363 36799200 36841580 36799218 36890524 36808111 36791374 36723986 36842554 36830157 36790802 36819219 36752170 36878776 36842834 36800712 36795112 36853905 36868551 36855388 36812743 36808810 36855025 36826149 36789201 36839711 36828551 36795621 36854814 36826261 36863787 36851444 36812921 36749751 36922762 36833699 36776569 36804963 36834402 36837262 36832034 36855824 36844344 36824248 36829905 36834208 36847992 36781377 36790825 36811627 36792521 36715095 36766753 36837722 36835951 36884559 36807002 36857695 36841800 36805332 36841395 36827626 36855122 36840647 36812122 36825552 36928192 36783333 36796094 36859915 36778759 36893292 36737222 36700380 36738154 36817461 36834557 36806714 36771106 36740686 36772235 36743775 36764824 36774338 36801911 36773443 36743513 36846358 36862698 36746686 36714789 36779799 36719645 36761830 36816254 36822318 36777327 36839336 36802274 36763502 36740839 36786535 36794191 36751573 36807145 36742549 36759537 36774073 36792515 36831646 36838094 36756449 36804567 36811995 36772031 36764211 36790526 36805067 36816765 36775939 36820694 36791673 36695517 36813838 36748609 36715308 36769378 36715695 36726473 36802939 36799669 36807601 36766960 36845871 36811550 36814634 36770062 36875178 36828712 36740238 36732526 36832795 36818405 36743999 36852513 36823271 36793280 36765123 36782468 36785926 36760499 36800060 36763451 36819758 36756858 36803312 36798204 36798367 36847666 36726292 36820416 36812957 36731735 36792870 36777935 36675098 36799593 36823342 36823828 36673015 36776436 36718927 36811360 36818550 36796137 36790149 36723249 36823540 36788654 36706770 36798155 36789120 36739996 36719621 36649300 36734832 36722018 36798488 36690238 36810839 36695464 36756257 36712138 36677765 36757756 36756026 36809983 36689815 36668269 36768626 36635204 36830763 36795036 36761984 36805552 36719871 36733342 36644756 36760878 36761103 36732923 36735641 36705043 36739297 36782574 36840919 36770050 36743435 36717092 36741589 36653996 36768046 36732636 36784091 36735412 36734772 36773236 36783834 36713077 36681860 36775551 36733603 36768230 36741075 36729723 36818410 36701632 36731748 36749581 36754982 36734759 36724457 36722329 36812179 36723980 36750183 36746046 36766501 36757718 36699314 36717623 36744741 36772666 36733530 36705708 36681514 36737869 36738107 36721520 36706193 36769269 36716526 36720721 36734596 36705441 36699227 36784212 36688464 36791747 36730032 36750848 36729409 36720338 36749765 36675272 36717107 36753569 36726713 36764968 36685038 36696227 36734474 36732866 36788712 36737630 36687779 36724510 36625877 36784031 36745121 36747568 36738634 36786819 36694783 36721877 36647597 36724879 36742635 36706858 36780543 36739046 36773092 36730606 36691164 36706640 36682686 36679669 36723255 36655038 36727999 36668603 36621112 36701519 36768792 36684800 36659908 36705408 36691266 36691425 36697002 36706060 36741609 36739302 36767657 36788810 36702858 36730523 36685436 36659960 36685241 36669632 36695137 36699068 36697021 36625803 36735241 36695581 36763567 36647663 36672881 36713222 36681833 36741740 36717104 36655759 36702934 36689233 36712250 36702441 36708454 36699134 36717231 36715280 36675556 36669339 36647705 36687944 36654717 36664621 36734286 36668692 36643426 36639689 36651337 36648698 36681586 36677881 36631968 36718483 36542667 36675064 36612513 36733351 36656261 36748826 36699841 36671031 36720989 36704664 36739472 36713713 36714274 36660149 36674190 36690422 36697089 36706197 36662828 36610619 36658511 36734584 36601517 36668053 36687809 36684871 36595707 36620300 36694008 36684568 36620621 36682889 36645852 36705110 36613730 36659131 36690185 36674392 36622938 36586089 36788449 36698328 36644935 36671731 36640564 36653823 36686688 36632252 36739500 36618331 36582257 36691558 36733644 36692412 36644257 36639740 36606208 36657957 36632190 36617158 36591300 36636999 36619976 36691325 36676814 36637312 36685814 36607660 36709914 36625607 36707807 36697048 36603990 36634737 36648659 36662387 36735780 36675349 36632042 36621490 36647718 36583329 36592232 36654032 36696237 36590193 36681090 36685937 36664212 36620401 36599319 36625247 36655388 36693423 36672061 36619098 36673932 36591780 36654064 36667705 36678653 36667534 36591978 36636911 36607304 36673449 36656116 36623994 36700863 36652846 36575111 36633681 36653023 36647661 36628217 36683939 36650889 36670765 36603955 36658844 36631307 36674513 36613244 36640463 36584834 36686920 36650773 36589973 36628304 36647651 36655471 36601754 36704573 36668301 36691477 36648412 36618815 36676440 36579518 36613349 36580521 36641038 36556734 36678815 36598731 36630907 36660513 36613677 36652560 36620181 36544581 36612106 36666701 36609799 36635107 36682432 36619165 36651702 36609107 36641495 36613470 36616567 36547055 36590278 36557879 36495520 36563806 36568881 36575514 36593095 36636544 36634860 36631929 36606369 36645945 36615616 36586782 36682925 36624841 36609940 36547583 36559463 36626691 36585859 36628042 36650586 36611779 36678556 36549254 36634548 36585375 36612617 36680026 36538190 36577751 36550441 36613356 36547604 36521884 36577045 36611091 36568571 36640351 36637775 36603593 36563533 36583476 36589056 36548538 36606379 36669930 36554545 36565418 36614059 36589652 36589092 36602309 36655080 36552278 36685762 36586450 36522285 36522793 36577097 36592805 36616475 36589150 36575838 36685837 36637310 36581306 36638149 36671273 36589233 36641892 36511766 36604802 36567091 36497758 36623328 36585056 36626377 36584261 36552105 36637147 36564980 36602359 36601431 36564140 36571787 36592072 36563873 36626253 36591675 36547669 36638620 36553868 36548932 36580909 36588727 36603955 36588037 36518702 36588349 36564078 36646314 36547693 36608404 36571500 36559808 36563263 36586716 36575353 36535123 36519799 36520095 36553145 36554888 36611527 36586876 36570259 36577935 36551939 36633185 36549268 36494357 36554939 36591484 36565163 36624429 36465895 36567929 36560817 36559850 36520049 36566093 36571610 36519082 36645343 36577972 36601784 36591468 36563456 36617413 36567169 36579447 36502993 36522735 36527337 36530703 36530633 36532041 36542061 36579188 36597938 36553454 36526572 36568279 36560056 36521096 36543506 36597216 36525437 36578029 36572077 36511545 36586809 36579646 36550716 36616424 36574158 36603427 36571951 36556097 36546009 36544265 36508479 36599318 36469342 36621064 36561912 36556602 36604806 36528479 36456084 36529806 36530106 36611817 36592333 36535385 36519954 36527584 36519271 36449791 36493586 36530209 36590582 36501104 36581640 36495410 36492268 36551175 36565840 36430594 36570160 36508325 36573906 36461119 36525914 36478265 36564059 36557481 36555333 36458419 36552698 36523853 36559254 36512142 36430277 36494995 36482856 36497168 36495145 36515485 36448853 36515789 36458913 36500952 36521317 36542513 36526426 36604528 36496482 36469469 36520510 36512223 36547481 36478854 36527676 36466934 36502620 36481512 36452696 36510171 36553813 36487495 36515094 36554668 36483828 36453935 36467803 36554303 36460788 36522918 36552908 36485257 36520163 36487842 36429574 36525277 36550920 36493185 36514456 36512391 36380524 36553453 36464886 36498631 36514900 36531156 36558863 36514286 36469061 36445849 36515969 36531168 36442868 36496766 36514784 36437656 36563328 36483589 36614055 36583953 36512634 36476261 36520919 36500883 36599617 36457023 36494189 36471578 36405775 36436632 36447719 36476386 36557847 36411359 36486107 36489585 36515287 36520218 36549098 36552221 36503993 36494504 36555729 36508178 36492258 36468420 36465452 36470220 36442618 36432256 36495965 36472384 36459806 36483859 36481691 36479275 36492208 36467660 36484578 36534650 36426930 36471971 36451127 36467424 36509041 36473892 36466730 36395302 36398485 36520486 36477008 36568321 36508206 36473251 36481046 36468649 36568905 36442754 36480382 36502742 36391117 36460288 36469517 36446245 36485242 36469344 36418173 36489723 36482016 36484672 36405709 36419431 36431136 36469348 36515614 36527913 36479141 36466610 36461773 36440408 36576792 36445527 36445672 36372586 36460756 36434426 36482905 36524243 36548543 36478687 36496091 36491942 36465197 36468577 36443618 36498228 36481811 36474073 36424348 36470982 36431175 36476834 36501197 36410905 36497278 36471025 36466491 36383917 36466304 36448621 36468462 36446898 36468171 36424937 36462004 36431886 36444040 36436673 36439268 36491118 36411576 36375601 36492501 36410053 36449388 36479847 36397587 36447063 36452343 36448145 36434527 36411752 36431623 36467733 36423540 36459740 36396701 36469194 36463716 36498125 36361428 36408582 36461354 36474481 36467173 36404203 36427652 36549020 36461079 36467329 36532884 36468997 36428914 36400619 36372892 36411468 36371119 36494802 36457988 36396873 36447705 36416449 36444832 36474805 36497641 36365375 36407522 36419630 36442285 36393305 36481507 36434609 36417714 36454206 36452402 36439941 36404334 36351484 36448170 36360946 36429495 36439087 36403256 36425085 36424187 36481621 36455932 36418580 36441128 36524415 36469494 36388818 36444911 36381102 36433537 36430305 36412508 36400164 36414530 36422068 36367205 36401872 36449265 36421001 36425506 36439749 36454414 36417081 36454257 36414716 36441762 36402400 36414878 36385803 36419363 36410690 36401054 36406328 36358460 36368616 36370648 36440417 36370166 36385392 36407655 36427768 36298015 36384837 36367922 36376472 36388226 36417308 36414627 36442293 36327385 36389407 36374021 36445259 36373498 36440700 36376877 36395558 36404104 36384368 36389074 36366945 36471442 36397198 36412265 36362132 36368218 36380370 36411678 36340122 36405303 36425074 36444007 36368724 36425770 36421840 36448229 36389094 36397044 36355333 36395409 36399000 36388900 36355881 36362332 36410182 36417245 36354677 36425133 36356528 36405388 36358907 36370785 36409959 36408341 36316613 36447528 36403426 36425134 36378289 36325558 36268024 36308199 36438201 36371990 36388151 36389341 36352686 36372370 36325833 36389215 36393533 36419390 36363183 36378567 36383569 36386600 36372787 36419313 36420912 36338640 36366151 36302878 36357636 36378151 36403976 36393736 36375532 36316149 36389868 36378932 36336847 36363242 36338168 36304023 36387014 36335432 36295384 36364751 36402482 36372761 36372724 36381997 36371882 36375608 36317867 36336565 36367592 36332023 36361422 36330813 36416880 36331868 36300471 36376125 36348369 36320225 36354797 36259948 36318559 36306222 36257865 36352837 36346140 36323939 36346596 36310018 36391258 36380883 36351370 36367255 36377758 36344203 36344553 36300399 36415233 36341061 36366782 36303134 36357164 36323096 36394241 36366233 36343141 36321411 36250217 36428136 36363780 36375400 36303550 36445589 36312063 36308377 36364338 36318345 36377486 36326192 36340242 36305594 36344271 36351810 36349071 36313638 36347454 36277231 36325436 36323971 36325897 36382315 36345966 36270228 36397115 36343983 36340459 36328040 36381440 36342976 36307343 36300861 36291567 36282640 36296683 36319413 36361725 36305848 36297492 36367772 36366498 36282889 36401870 36261632 36282916 36318639 36320544 36359060 36254500 36288292 36238712 36444719 36332639 36295240 36313221 36325338 36349881 36265882 36289826 36358912 36334261 36273130 36349745 36296913 36334341 36294408 36284520 36280028 36272614 36267504 36299154 36298241 36321000 36293197 36298853 36250458 36292881 36341032 36383630 36311089 36326937 36331487 36370722 36361179 36229708 36270363 36252883 36214969 36260943 36206909 36225727 36349034 36312943 36265552 36298976 36332636 36275954 36288691 36326312 36359316 36362916 36332065 36302747 36323001 36317041 36260476 36201350 36287516 36341895 36293342 36283852 36327525 36302893 36268433 36303295 36276585 36353529 36320521 36327066 36337116 36253629 36298407 36376789 36277261 36312862 36311037 36305873 36293431 36167047 36299033 36318305 36217506 36329265 36329481 36332315 36330831 36280720 36234359 36199882 36220124 36232900 36294638 36272593 36301512 36258752 36283846 36332666 36284858 36290948 36312658 36342879 36288937 36219970 36318430 36263804 36268678 36228017 36210883 36299487 36261818 36276361 36219497 36292105 36284630 36305131 36263526 36255192 36260575 36280130 36223828 36229574 36255405 36175061 36326289 36224205 36174623 36250439 36241633 36298951 36259955 36255283 36317978 36190300 36239623 36180571 36299865 36271808 36262727 36258232 36279782 36231870 36292618 36276382 36238616 36213477 36237554 36249591 36310298 36259373 36280906 36251755 36267327 36215853 36309604 36243985 36294141 36235629 36359315 36307145 36269776 36300111 36229899 36216810 36189777 36234404 36244635 36273706 36275069 36201149 36259160 36219872 36199620 36254790 36196657 36219189 36225145 36246858 36217906 36301754 36286633 36241105 36154224 36184102 36277472 36260095 36304399 36277806 36282774 36223227 36186776 36230416 36176693 36272911 36289556 36237524 36213756 36189971 36194056 36266443 36223232 36221424 36242026 36336232 36270576 36185705 36199723 36279138 36268761 36238736 36255054 36247264 36248097 36230006 36232398 36154784 36242909 36276534 36215945 36230933 36200857 36353706 36182808 36225816 36175367 36281984 36270937 36173950 36234452 36240468 36257777 36212817 36331573 36176507 36279400 36228896 36203894 36248568 36160031 36270414 36249609 36120861 36218938 36172369 36202211 36188976 36187151 36225043 36185989 36227568 36192445 36248523 36182605 36251433 36231600 36156560 36240595 36241276 36206451 36187232 36212382 36199067 36209365 36259555 36239872 36186841 36217189 36236102 36216249 36160687 36180727 36284276 36221032 36250628 36146040 36178051 36181169 36266307 36164851 36273265 36243680 36177791 36205900 36214545 36168324 36174677 36227475 36151702 36171284 36203271 36258402 36167184 36209152 36265076 36205258 36162496 36185866 36172334 36181548 36197266 36275120 36214944 36201566 36171877 36195266 36197694 36170853 36155417 36179159 36223026 36196181 36215633 36158748 36255115 36106663 36150468 36192895 36129219 36194264 36153075 36205627 36159530 36133704 36122419 36118415 36146513 36180744 36105219 36180910 36245413 36173051 36112453 36242959 36137431 36191239 36106461 36200048 36134385 36127747 36238884 36129849 36113826 36171553 36144888 36078015 36085669 36186519 36210209 36133315 36211742 36197527 36198895 36159250 36222551 36152933 36171704 36158648 36165761 36259190 36192157 36113227 36200135 36194925 36137510 36141529 36132268 36169211 36115014 36188567 36136673 36160482 36139852 36139106 36163983 36081350 36150200 36218752 36135435 36166046 36130787 36115404 36126221 36183299 36226287 36133389 36078529 36117115 36154582 36167567 36127216 36219683 36195898 36114800 36147467 36182040 36247281 36197391 36181495 36124696 36091098 36128681 36142506 36202585 36184864 36128754 36175840 36180670 36109703 36168951 36228974 36215175 36183055 36183716 36171099 36114059 36155911 36192483 36126245 36179189 36166267 36191405 36154048 36186386 36127990 36122096 36162044 36168049 36047169 36076917 36153922 36193946 36147606 36162241 36198326 36097416 36122665 36148719 36122575 36077340 36165064 36153508 36132586 36126670 36150483 36221282 36138278 36089649 36151036 36140872 36081708 36096249 36134735 36104712 36118104 36085155 36178215 36101365 36108774 36127988 36106964 36056312 36091435 36074493 36142313 36140015 36125267 36152479 36126504 36101054 36185369 36114280 36022285 36175303 36092367 36087130 36096350 36129375 36095005 36139173 36145510 36124582 36188120 36124174 36125001 36155980 36061890 36155827 36115562 36132885 36061158 36059326 36121744 36128488 36062712 36096555 36112952 36106966 36124283 36099142 36080964 36105810 36117573 36172794 36125686 36082418 36038307 36149640 36097987 36092668 36112777 36074318 36106273 36121242 36106994 36131670 36113080 36098238 36100693 36064785 36065256 36108165 36052509 36125792 36114215 36094473 36078417 36058425 36046357 36068805 36042141 36053219 36010911 36095414 36100911 36097740 36130806 36139943 36066032 36082970 36097199 35980947 36089770 36090579 36071778 36019526 36114522 36009715 36133110 36083812 36054427 36085900 36073056 36131511 36103505 36089564 36134060 36097661 36095282 36037002 36041247 36101522 36071874 35985531 36044193 36019191 36049153 36060751 36098641 36068815 36094038 36096849 36089022 36109851 36067521 36080783 36040759 35990450 36144915 36120012 36067437 36110852 36027300 36026181 36008105 36005704 36051955 36018972 36121269 36049756 36106029 36064961 36012802 36124871 36178048 36115136 36040902 36122762 36028655 36037599 36006031 36091980 36097367 36086058 36076769 36060326 36054315 36160667 36070224 36080008 36098433 36085626 36106327 36115386 36096904 36096412 36077910 36099371 36036654 36117488 36094908 36086219 35963711 36044764 36062627 36051827 36027127 36063902 36106988 36058909 36028497 36027838 36047569 36007278 36038903 36056034 36039809 36053765 36016191 36007165 36091871 35984129 36047497 36006038 36057905 36046555 36053000 36063174 36013795 36089877 36024868 36082592 36033363 36018914 36039125 36012735 36112113 36040408 36129936 36054530 36022921 36042218 36023403 36047511 35997104 36055334 36022140 36034340 36058090 35976491 36050157 35989247 35975775 35997082 35990719 36061135 36033614 35984855 35994552 36025723 36017457 36050336 35967431 35955563 35973530 36006361 36054700 36012116 36077733 36054867 36074078 36074971 36005758 36027300 35996533 36058207 36012375 36006869 35972525 36030343 35957006 36002710 36077229 36082364 36095415 36045169 36043140 35985852 36010856 36033194 35948461 36051368 35990216 36067299 35997421 36068799 36072284 35957978 36004508 36011684 36045196 36018961 35997021 36010021 36025341 36066395 36078606 36047244 35974324 36041527 35937658 35956641 36035260 35974945 36063200 35970736 36076070 36025146 36044379 36051264 36041501 35972126 36026432 35964361 36024740 35960340 36013676 36011678 35987471 36030776 36028911 36020055 36033691 35957560 35974568 36047282 36022895 36036553 36034221 35991585 36002012 36059853 35965283 35956320 35958571 35949354 36007870 36070951 35960260 35991746 36102868 36033631 35993642 35928834 35992846 35999762 35933385 35965014 35993048 35945133 36064275 35985415 35938790 36018391 36020995 36024205 36049927 36032911 36017890 35950453 35984985 35980519 36000224 35985345 35989004 35939526 35999203 35987516 35968520 35989947 35921201 35989700 36014896 36002516 35991387 36038252 36007934 35957292 35909553 35939438 36002581 35939501 35950032 35923616 35968801 35998113 36045481 35933422 35914812 35935265 35951445 35942223 36025296 35820555 35976600 36006490 35979094 35980136 35967639 35931205 35948522 36001305 36035397 35989911 35981200 35982396 35984151 35870556 35990406 35959610 35942509 35894008 35948764 36001220 35989754 35915776 35926815 35904654 35936819 35947597 35958482 35918287 35986497 35901994 35948436 35955343 35908614 36003366 35975331 35898812 35969843 35973408 35973128 35939248 35928802 35946162 35980511 35999282 35905129 35881749 35932770 35917096 35965969 35939368 35993425 35904392 35969294 35889946 35899466 35982033 35960871 35976131 35988564 35926435 35943560 36006017 35967457 35903368 35949375 35994724 35881655 35896826 35950859 35943302 35926741 36000126 35902969 36008556 35927120 35932712 35905160 35941769 35935813 35918123 35884807 35948448 35983070 35933596 35972191 35953351 35950473 35957815 35893113 35974442 35898895 35935672 35910604 35906621 35891222 35929775 35902630 35865574 35966100 35929657 35939207 35946596 35905483 35852474 35921211 35939005 35875137 35898363 35892077 35819577 35940126 35988266 35910492 35971172 36005771 35913070 35914572 35944489 35977660 35957073 35940133 35909243 35913157 35784294 35889237 35953924 35869121 35839096 35945569 35870021 35887693 35872797 35974373 35916723 35926372 35980027 35855726 35938489 35983061 35922945 35917817 35923765 35983770 35884127 35896920 35860219 35831084 35906716 35855125 35871143 35824960 35909896 35850579 35946091 35884993 35857953 35887660 35974800 35831200 35866968 35945160 35857806 35923555 35850277 35868734 35900781 35867065 35902505 35912279 35898104 35867609 35933202 35922550 35919351 35869396 35880609 35907937 35901300 35858357 35895485 35850432 35944602 35937045 35887697 35898452 35854989 35874358 35937643 35815400 35893493 35826093 35858773 35881678 35830570 35836223 35907624 35938328 35844401 35869199 35843914 35871613 35870414 35861930 35845930 35842716 35897382 35870580 35902281 35950568 35929088 35921819 35868728 35803484 35853427 35878274 35888791 35874432 35863504 35871786 35882520 35933806 35854598 35841583 35815318 35906966 35877115 35944783 35839527 35913124 35805743 35899428 35856792 35900604 35844147 35894361 35845394 35797729 35896871 35857084 35833320 35879641 35890913 35906470 35909780 35831137 35942859 35914943 35887670 35880668 35817460 35823414 35873094 35902111 35829403 35869279 35818235 35833490 35844729 35927309 35911906 35855082 35910189 35886744 35812762 35875945 35898716 35897646 35802546 35874710 35926133 35818595 35856333 35795153 35886793 35932411 35861798 35865674 35867538 35889987 35840056 35820297 35839231 35775492 35792627 35780256 35912230 35866505 35848573 35816021 35875155 35846115 35879564 35878777 35790296 35844294 35798464 35781460 35860762 35840984 35770636 35812158 35784416 35787493 35805087 35841544 35819398 35838130 35830407 35893641 35900166 35860610 35893624 35911557 35861973 35766967 35765628 35814391 35883899 35863493 35820554 35829951 35851483 35811833 35864898 35856809 35929882 35831649 35801423 35867506 35866328 35824929 35884400 35830593 35762163 35816359 35876720 35862233 35869343 35842353 35806801 35817371 35770202 35848917 35835723 35825175 35798963 35856014 35792965 35784242 35801452 35768741 35855226 35824943 35821998 35808915 35814534 35787953 35831014 35832614 35862801 35834769 35786129 35785076 35801719 35693866 35745404 35812064 35820666 35837560 35779999 35824734 35834493 35839775 35816980 35785245 35810719 35878785 35823718 35856015 35871398 35826887 35868029 35773208 35845241 35780497 35840577 35752055 35783965 35742576 35826595 35877400 35799702 35837868 35808249 35813956 35809970 35796018 35866985 35808675 35806759 35783106 35769944 35805131 35850673 35765577 35696898 35771812 35753006 35779133 35830200 35823333 35720628 35760834 35781161 35812826 35818713 35845960 35754010 35817455 35771691 35808010 35827509 35799689 35805503 35771697 35791093 35799917 35732870 35750592 35790471 35689734 35744605 35761498 35813072 35746057 35751848 35852242 35769772 35723781 35755715 35805871 35833718 35759503 35800320 35805954 35814193 35747381 35794138 35796136 35767175 35776115 35758735 35860305 35686832 35775318 35804840 35705170 35791713 35744734 35766414 35755373 35737013 35817036 35696014 35703198 35848527 35723296 35802452 35809385 35822895 35785124 35723743 35782919 35775675 35790190 35739119 35751088 35818139 35774317 35747197 35763580 35803098 35754996 35765064 35718282 35800437 35736399 35804947 35722129 35719656 35724635 35767142 35747742 35781799 35753037 35755640 35711631 35716345 35765100 35726052 35764848 35740463 35709380 35848468 35805631 35764805 35779013 35730579 35748024 35808299 35715103 35798874 35744403 35712206 35745500 35854773 35740733 35758831 35701394 35783020 35767320 35754642 35682684 35769505 35744510 35772841 35775175 35770649 35733322 35703710 35665120 35728215 35788272 35708738 35729345 35753710 35746579 35782772 35707846 35739978 35737532 35757777 35753956 35722522 35774432 35671488 35732583 35708286 35820823 35761683 35777223 35720177 35671086 35678539 35769340 35751636 35742735 35781366 35683295 35760305 35798996 35769033 35707609 35714302 35718477 35775926 35706365 35730158 35754278 35751910 35748884 35781032 35692194 35737584 35799372 35621980 35741772 35738554 35800325 35727696 35762232 35678150 35674508 35753536 35687431 35769891 35642695 35702794 35648762 35674683 35711153 35767554 35702915 35722869 35797299 35698980 35718879 35664835 35732455 35702942 35761373 35671591 35652709 35726772 35623434 35718970 35756373 35713622 35752941 35683479 35667522 35605774 35769368 35677019 35657705 35688796 35705334 35750675 35721997 35749673 35744267 35705034 35700686 35675616 35743963 35674841 35746230 35689971 35653574 35689718 35722465 35760360 35751089 35797593 35740576 35723373 35683015 35714232 35695482 35634418 35619962 35731902 35696407 35751474 35659771 35710324 35802932 35684105 35685469 35621653 35639109 35667633 35686951 35656839 35718553 35692855 35711618 35678942 35603215 35670526 35746912 35620738 35659424 35672804 35713677 35671710 35705492 35692263 35651795 35685073 35698829 35744799 35662272 35664477 35705022 35723512 35640186 35673718 35718877 35734430 35717038 35705897 35732614 35580823 35654247 35674358 35658375 35683116 35704930 35696462 35682746 35674583 35644701 35678615 35672775 35713726 35662858 35674484 35654092 35648347 35652857 35670842 35719944 35679848 35773105 35691899 35673365 35594935 35692393 35654418 35676081 35644329 35665122 35668841 35681008 35697468 35672423 35695531 35669068 35754520 35680718 35592058 35651197 35643762 35634679 35650282 35667051 35606794 35620778 35659252 35649663 35730787 35640199 35624180 35687751 35718995 35701719 35584536 35635988 35641367 35652250 35666418 35678712 35646406 35626922 35707530 35656720 35614954 35649788 35698403 35660609 35630455 35670285 35687887 35663706 35610128 35676794 35607664 35670072 35639865 35665098 35702975 35631015 35551420 35661857 35626601 35663435 35651831 35669832 35632879 35629129 35605039 35647672 35631663 35597746 35595681 35611576 35665070 35654344 35602239 35660951 35622482 35671843 35648863 35622170 35570356 35648982 35618478 35662228 35572897 35692638 35661725 35567072 35602743 35691343 35563819 35665379 35635114 35598569 35623627 35656568 35616592 35630947 35633799 35588013 35667350 35643899 35559860 35642110 35614393 35572279 35635727 35662357 35555857 35637998 35668071 35651329 35612887 35576073 35537104 35600359 35633697 35587339 35630314 35567232 35611951 35629548 35630255 35620301 35607667 35614426 35600735 35648381 35552016 35601840 35625985 35576434 35548209 35584241 35643780 35613948 35629275 35626562 35621679 35669859 35627248 35509596 35599054 35606050 35646976 35560908 35654190 35638827 35584003 35642665 35607126 35631506 35595446 35568364 35562149 35630970 35647596 35624788 35671400 35625573 35591470 35569195 35553977 35580461 35562156 35619216 35546555 35606993 35563198 35623769 35601960 35631773 35632377 35584673 35536258 35617207 35598079 35573899 35547911 35552936 35554723 35543114 35650214 35571690 35590677 35523191 35582485 35656935 35562942 35603478 35597397 35597674 35624426 35596732 35594094 35581976 35639561 35531873 35600457 35517575 35538959 35554591 35597740 35529445 35579059 35538679 35483330 35559649 35543728 35546791 35549465 35604654 35559641 35564948 35580407 35597533 35552343 35575039 35606935 35566132 35626882 35576668 35566177 35555631 35533168 35662112 35603147 35574885 35590540 35479403 35603584 35557683 35555865 35667420 35597353 35578900 35539556 35543050 35613898 35528853 35542212 35551403 35639579 35569856 35573324 35564452 35539448 35533545 35550386 35533681 35550285 35601101 35527820 35535071 35516260 35572282 35539948 35585377 35579030 35550538 35512236 35541167 35520488 35559559 35563994 35518989 35547616 35576000 35542978 35530382 35538974 35514513 35500921 35504796 35544640 35581481 35573728 35522848 35569540 35571238 35538835 35558760 35553834 35505663 35570927 35571972 35583473 35608961 35604401 35528344 35593328 35564891 35516375 35488997 35537299 35609997 35535647 35494095 35469777 35629745 35525863 35612560 35542897 35623362 35558127 35572440 35564910 35528715 35567735 35555476 35475426 35511231 35566718 35579430 35475483 35502744 35546060 35530566 35451147 35527425 35529084 35545511 35486016 35534138 35509629 35482351 35490403 35496582 35508782 35550659 35557649 35560080 35510661 35515088 35532759 35562470 35504462 35518885 35526842 35565437 35504105 35437263 35529906 35509113 35490157 35568231 35537663 35507928 35524812 35571248 35571771 35496026 35552369 35493814 35466931 35542190 35510116 35498944 35527490 35487190 35517833 35516325 35510974 35483547 35574414 35592915 35575198 35507103 35509923 35504831 35499805 35489493 35490592 35530947 35484796 35456337 35562214 35531345 35548785 35522247 35455834 35522105 35448462 35555791 35441530 35507716 35475088 35519778 35525527 35468770 35517572 35530649 35536665 35436318 35597972 35516104 35513881 35514952 35519062 35452832 35477023 35499192 35453609 35554554 35483678 35525509 35508772 35474405 35530364 35460597 35429275 35489005 35528024 35505667 35499459 35549257 35484252 35452930 35453134 35452791 35500006 35494260 35495409 35487154 35478647 35486468 35454109 35450511 35486840 35502837 35494481 35508197 35502672 35467951 35470041 35480618 35397232 35469612 35494986 35492979 35483121 35430059 35520351 35417156 35497258 35505090 35510650 35436052 35489521 35454525 35381288 35444511 35485983 35446968 35514921 35468149 35461769 35509755 35514320 35433676 35441526 35517436 35419476 35467420 35505921 35536503 35358862 35469982 35530925 35427887 35453005 35504111 35466161 35472153 35456802 35453500 35528353 35454797 35519345 35477293 35501865 35457887 35451127 35446131 35514217 35436297 35487842 35402482 35413105 35430366 35495588 35408660 35471752 35492661 35435121 35433474 35457800 35416122 35411351 35416486 35456459 35386268 35452824 35448645 35487659 35424836 35460002 35458712 35458148 35397985 35421999 35465191 35533043 35372956 35405456 35496844 35462893 35397095 35480715 35454603 35414075 35430066 35390008 35465151 35527793 35463425 35547332 35461307 35472731 35397898 35496697 35456311 35456701 35509711 35446946 35433680 35464236 35394012 35452994 35425347 35437668 35474254 35411253 35470197 35410746 35443215 35413183 35404680 35468662 35444359 35374612 35466098 35448752 35425947 35443350 35480587 35433460 35390436 35419004 35446485 35385779 35418990 35446586 35447885 35479108 35467748 35399416 35459413 35431563 35399132 35440500 35399930 35440576 35406664 35403639 35392507 35434855 35381844 35385096 35393588 35415220 35421427 35356559 35438131 35436657 35421063 35453677 35395566 35441101 35430296 35317786 35413188 35341708 35433876 35443675 35358764 35388365 35391541 35437931 35469989 35403809 35369246 35384789 35398020 35358885 35394280 35386132 35418027 35383609 35379548 35365614 35482577 35383831 35367744 35372066 35391940 35396860 35343387 35363508 35399684 35441687 35436458 35389230 35438178 35425656 35397857 35412634 35461487 35377211 35409800 35420541 35369831 35396746 35342111 35406867 35406362 35364015 35398405 35394116 35361063 35326884 35371557 35436170 35430235 35394737 35421285 35418766 35392319 35423019 35429606 35346157 35407910 35400445 35436998 35367259 35420086 35420045 35363872 35395510 35325064 35368454 35400829 35405608 35372870 35338050 35331974 35374705 35361205 35396689 35375689 35369848 35425109 35399862 35429955 35345430 35342149 35377108 35344826 35409031 35355166 35417763 35420035 35386323 35433691 35358765 35392554 35372361 35361507 35463378 35342856 35371113 35391729 35398926 35341591 35337677 35388788 35394963 35311746 35373480 35430292 35372389 35377840 35383484 35329613 35314122 35295233 35388470 35346292 35388997 35418058 35351990 35396549 35390877 35294928 35322570 35345930 35426669 35411362 35306858 35322623 35316041 35350492 35317900 35360137 35286481 35425813 35312022 35269933 35330447 35407729 35350913 35438124 35363082 35350593 35359490 35364498 35314287 35316421 35348407 35335718 35336821 35398669 35336103 35388097 35318669 35342259 35349564 35319211 35296886 35352849 35360151 35307488 35387269 35325273 35383913 35314390 35315606 35331853 35331654 35344149 35340497 35359963 35293559 35342009 35322498 35336017 35313621 35303266 35331112 35357137 35282542 35403778 35282550 35379586 35334265 35315511 35292370 35319106 35331501 35395161 35351346 35374637 35382125 35317148 35305056 35381080 35386756 35354913 35309988 35308808 35322078 35301468 35321628 35367887 35254730 35321850 35353570 35330108 35358722 35367009 35309855 35339935 35350405 35288549 35341829 35297648 35365204 35376485 35311905 35314412 35284010 35331722 35255651 35383934 35385135 35363389 35308323 35264364 35361524 35298705 35331678 35322137 35328159 35342072 35392576 35334142 35364077 35348013 35267540 35334393 35393837 35264500 35360469 35307418 35268749 35297484 35314831 35314952 35342899 35335619 35286443 35337356 35330166 35362658 35316927 35310241 35330109 35282981 35289179 35324994 35252843 35346391 35274669 35299265 35294504 35308618 35289584 35314814 35344683 35317543 35269587 35329616 35285339 35281019 35281156 35323943 35260119 35344786 35263137 35341961 35301478 35317949 35325190 35321379 35305331 35354583 35379913 35311507 35277168 35290725 35278042 35281395 35284192 35293248 35266523 35308307 35316847 35300503 35252569 35217058 35300654 35281526 35284241 35249148 35351822 35299921 35291570 35244079 35322126 35307647 35249809 35317838 35296797 35274425 35266132 35341854 35332282 35290287 35321903 35322617 35280880 35266460 35318056 35250795 35302091 35283471 35264249 35314504 35289192 35281063 35318841 35288155 35313037 35267232 35231938 35316677 35364404 35244506 35290601 35268397 35287391 35286238 35261430 35288141 35236553 35249972 35215369 35244844 35279160 35218001 35277893 35288839 35277682 35147471 35351600 35307913 35301950 35250682 35311122 35255696 35208825 35226040 35232278 35262690 35226032 35266525 35351222 35204093 35321027 35306693 35201418 35226062 35231941 35284573 35238169 35251717 35288859 35301070 35267894 35314392 35262998 35235460 35175744 35195168 35216310 35234873 35256937 35288599 35279913 35235544 35203646 35215319 35241003 35238815 35211286 35225054 35222210 35206739 35274268 35254356 35269627 35202220 35261215 35262112 35237082 35210850 35283910 35293526 35239816 35260126 35173056 35238803 35238095 35218019 35239147 35208597 35201351 35264238 35197897 35275983 35274290 35239454 35244534 35211678 35222089 35257438 35301724 35230849 35281083 35284303 35241593 35270638 35269735 35191858 35252077 35274697 35148820 35158658 35242367 35234404 35205503 35230356 35217556 35233036 35215461 35255044 35209943 35213247 35222344 35214395 35176579 35199362 35256572 35222236 35161483 35215279 35210773 35210182 35223783 35297123 35223777 35212265 35235141 35274356 35125599 35223971 35198170 35210079 35191388 35180899 35197866 35239102 35246857 35169742 35192462 35217792 35169571 35177909 35214913 35249351 35248458 35245945 35259016 35246473 35189420 35194031 35204351 35226303 35132127 35227216 35198376 35242740 35151840 35160069 35168827 35162971 35175443 35253601 35202946 35234576 35224226 35228408 35189995 35186646 35233464 35214776 35206949 35171490 35229762 35140190 35249702 35168438 35216062 35291939 35161089 35184133 35169315 35190460 35236741 35295815 35188854 35297270 35148150 35146067 35101973 35235570 35180222 35142364 35173777 35187027 35131666 35125925 35177737 35222856 35185959 35185953 35140767 35143655 35203896 35209298 35207514 35265219 35207506 35174662 35177536 35192838 35247363 35180977 35209800 35211403 35101130 35158945 35243822 35089310 35183231 35192690 35174991 35218926 35183483 35158741 35220856 35159697 35151377 35274562 35209807 35136923 35230966 35181909 35212235 35164526 35145514 35211691 35150925 35162004 35155996 35182905 35198352 35133208 35185859 35107023 35148785 35195026 35180325 35078109 35201775 35153212 35201523 35124353 35153792 35200452 35217294 35197991 35135789 35178546 35178329 35189822 35150623 35070615 35237063 35172176 35129002 35166868 35182759 35138051 35108822 35111591 35185943 35161312 35160122 35173753 35131494 35112646 35171486 35139081 35151708 35151854 35127194 35234756 35137197 35137941 35152176 35095463 35195026 35029042 35145243 35123372 35132137 35220283 35144868 35181082 35144987 35169195 35207324 35090757 35122081 35149173 35154617 35180585 35161976 35149603 35143919 35108865 35183313 35199441 35053817 35132335 35077074 35102409 35148721 35122199 35144637 35160011 35165984 35119720 35131776 35114709 35163627 35200782 35130823 35140854 35179384 35147042 35142526 35153626 35125116 35123328 35217144 35139949 35098321 35103484 35126629 35096287 35148531 35172736 35168639 35140988 35140866 35158541 35112896 35111558 35156365 35117292 35141287 35141027 35105318 35052384 35091657 35065646 35153235 35166049 35114532 35076695 35200158 35159291 35033683 35139671 35136019 35155635 35135220 35047709 35097979 35142070 35110935 35135182 35085650 35088808 35055876 35137821 35077778 35179993 35106936 35109218 35145106 35121261 35143800 35104691 35100697 35120261 35114098 35202876 35119733 35141966 35118341 35130125 35126268 35084513 35057212 35081898 35118972 35207997 35138813 35129412 35060441 35130259 35078728 35120509 35068913 35048208 35028844 35119240 35082527 35160299 35105465 35135523 35135291 35064947 35151087 35134916 35092067 35139088 35147735 35124584 35087734 35054932 35034897 35079386 35052547 35098957 35100861 35040472 35082537 35095081 35114794 35142795 35104888 35038408 35081780 35106701 35081058 35075590 35077341 35077573 35093093 35059592 35057281 35045981 35130251 35133390 35038984 35131762 35026140 35034601 35109934 35135477 35115736 35092763 35039081 35073388 35121457 35023502 35050788 35039248 35055976 35045857 35061937 35031739 35036896 35098763 35156236 35093225 35076179 35083515 35078608 35072983 35071283 35055241 35052516 35058192 35003202 35015027 35111690 35077585 35091366 35110764 35101751 35088676 35066544 35118374 35005077 35154145 35072005 35110528 35024086 35100534 35008537 34978189 35076108 35090677 35023118 35092628 35017768 35081950 35014862 35048156 35014426 35040672 35066956 35100721 35062303 35019161 35086735 35036696 35079063 35021476 35060140 35066993 35070214 35012991 35007208 35021309 35037391 35056110 35034244 35074325 35071976 35041359 35020765 35054228 35061050 34988374 35093474 35049276 35090215 35061139 35112187 35020633 35100929 35107076 34985588 35017526 35105550 35011981 35062326 35105245 35063490 35061507 35080082 35033542 35063258 35015588 35024320 35044946 35052023 34983721 35023102 35076763 35047705 34963291 35004884 35021317 35085060 35120855 35004025 34994557 35006310 35110166 35039717 34982140 34998848 34991620 35029017 35019549 35086721 35045039 35020311 34969315 35059569 35018126 35036912 34998115 34952965 34997102 34967107 35044894 35072653 35052899 35031960 35017348 34977252 35036438 35018901 35010180 34946642 35011891 35010163 35005351 35016176 35005690 34983692 35002251 34997399 35052060 34988397 34995331 35047687 35093993 35046172 35055285 35001908 35037096 34983731 34995709 34936368 35055791 34980408 35039030 34983233 35076815 34972913 35036114 35048553 34965647 35024548 35084047 34977454 35065441 34971363 34972405 34986963 34964189 34994612 34966450 35006934 35038175 35024302 35020059 34918075 35001765 35069549 34937256 34999373 35009970 35027669 35026716 34985195 35045181 34982984 35007448 35026168 35005966 34962355 34982028 35026613 34982657 35014442 35025954 35115050 35043560 34969575 35031735 35001299 34979609 34949279 34983324 34885962 34970971 35002395 34975556 35015641 34955103 34965130 34965745 34925003 34970606 34990284 34996076 35011937 35031084 34973665 34954271 34903392 35044224 34940076 34930018 34963988 34964351 34975445 34954591 34973001 35020985 34933279 34942076 35017744 34982710 34963924 35032010 35007726 34942684 34986990 34965919 34962198 35016942 34978106 34906726 34959708 34993148 35008993 35004910 34946144 35008315 34978583 35023713 34932832 34963177 34942870 34964869 34932015 35025681 34981065 34922820 35074723 34989451 35007732 34984347 34991654 34930441 34902051 34955868 34929282 34925526 34985775 34973843 34896153 34951645 34937054 34963120 34983529 34963593 34956011 34915436 34963180 34893867 34976883 34995572 34944062 34930319 35022403 35019655 34946703 34918282 34953546 34984486 34976302 34964920 34947273 34923180 34918676 34943399 34919982 34904016 34966759 34870115 34969436 34977243 34919763 34942935 34927793 34962233 34947873 34939915 34941618 34981311 34878851 34869313 34919962 34939130 34983075 34987205 34992110 34896260 34939167 34875249 34880764 34871601 35010630 34918419 34972953 34944289 34964083 34993852 34888998 34916914 34867358 34921165 34890319 34914126 34946967 34858911 34906214 34874945 34975914 34907603 34866568 34950921 34898983 34969014 34942405 34935001 34873960 34944612 34913002 34898513 34891874 34872176 34924262 34917325 34916023 34925853 34971329 34899050 34880744 34888708 34855379 34986634 34883308 34911265 34927517 34956691 34940708 34948440 34935855 34857672 34837462 34892904 34833057 34834839 34920158 34970379 34910335 34944316 34883316 34928277 34929229 34945094 34942129 34906852 34956534 34966744 34892080 34883337 34918169 34932150 34934082 34851252 34839173 34912443 34849145 34866711 34970163 34935809 34941170 34958550 34866059 35009703 35012942 34917936 34955395 34921806 34922914 34956596 34947247 34957600 34935138 34911339 34930995 34928892 34971410 34856998 34930298 34919809 34797134 34854137 34901772 34864459 34863649 34915324 34839185 34946174 34882703 34913453 34875234 34932623 34895043 34911506 34911317 34969227 34821224 34895796 34862010 34926461 34923754 34851020 34860810 34862401 34860853 34864103 34883707 34818170 34838154 34952395 34841404 34953199 34894860 34936296 34913950 34866333 34850373 34855204 34911216 34852681 34882247 34851588 34802506 34912617 34854354 34863650 34856480 34880455 34829519 34872946 34914751 34826549 34889556 34891834 34885623 34865192 34858656 34879167 34878414 34888854 34823554 34916769 34784513 34911874 34797660 34842557 34823475 34840689 34906118 34901758 34854565 34799860 34871533 34884796 34854879 34789745 34908256 34958757 34830511 34867869 34877423 34833142 34855993 34808468 34893214 34912905 34881022 34919492 34823412 34834073 34912487 34850698 34849408 34889897 34780993 34893760 34848196 34897260 34852818 34800463 34836419 34825701 34829275 34790803 34858286 34794123 34856677 34890622 34879672 34854301 34866640 34796420 34894963 34850027 34839475 34907684 34802422 34788290 34864297 34845819 34887132 34869876 34770716 34851874 34869875 34794151 34900640 34896579 34794853 34796801 34828372 34749484 34783200 34761998 34872236 34767604 34891532 34920818 34857024 34810182 34864238 34758105 34804139 34826258 34868504 34873623 34921876 34815163 34924635 34844303 34876848 34750964 34829005 34899511 34841556 34852106 34890619 34810975 34823863 34864056 34811442 34753969 34765151 34800292 34790193 34828938 34809394 34832972 34832781 34877557 34784789 34839163 34882652 34846079 34835196 34791274 34819993 34777822 34847928 34799747 34814622 34812737 34811655 34783111 34854848 34837904 34795655 34809947 34773974 34852135 34816448 34874622 34756310 34721104 34784063 34852259 34806198 34780581 34761747 34824093 34770763 34778054 34743164 34840417 34868750 34777814 34781216 34851240 34794724 34801089 34806019 34779897 34786830 34764988 34850937 34767571 34795156 34726602 34821650 34832661 34836711 34783007 34865360 34804046 34809196 34797615 34798413 34777547 34724460 34834298 34839553 34804489 34809513 34809465 34782511 34822996 34851057 34765054 34739673 34738652 34822332 34781458 34803227 34787133 34813167 34768123 34836332 34750943 34771678 34819761 34859555 34837288 34783492 34761926 34776384 34808810 34822534 34745162 34810579 34822083 34840868 34741005 34745895 34833314 34832145 34700244 34721682 34739262 34758291 34828801 34772026 34767386 34788823 34857962 34762142 34815152 34804432 34741084 34665132 34781652 34809974 34740460 34767547 34708247 34772353 34748536 34752220 34775598 34763608 34739581 34762053 34724720 34808399 34841610 34774838 34772036 34790742 34754275 34812446 34836812 34802132 34809696 34781990 34739254 34797046 34802661 34777125 34807919 34738816 34713089 34794721 34738293 34737383 34726910 34713542 34799715 34767950 34786370 34729821 34809460 34835796 34871315 34712143 34790699 34764645 34771863 34781447 34768673 34727375 34737908 34797445 34710221 34831114 34735906 34780488 34794078 34700157 34796537 34809536 34729153 34776936 34658001 34801370 34718194 34736458 34784731 34721588 34755202 34837617 34763037 34690189 34714150 34725099 34731681 34733341 34769142 34786635 34739159 34736169 34709570 34748827 34756976 34762793 34774142 34770462 34774863 34781250 34712885 34790938 34721516 34723051 34772610 34815179 34729707 34757093 34725973 34756537 34715293 34735976 34680929 34768549 34708764 34734408 34718665 34679983 34669598 34740354 34741035 34691089 34651861 34749735 34721773 34738577 34717914 34651858 34787984 34741492 34714515 34787132 34675601 34723935 34704855 34757374 34689895 34723808 34730874 34728295 34673316 34756354 34642210 34703327 34733388 34684206 34746835 34732930 34691321 34774071 34647383 34722567 34719410 34669717 34740973 34621089 34689880 34732546 34718089 34700102 34689450 34697642 34660941 34744092 34722841 34704764 34703978 34734025 34728691 34629577 34710723 34679994 34707681 34702632 34675960 34742612 34665624 34679107 34682225 34761072 34764188 34677045 34722319 34712011 34717357 34725403 34711663 34658861 34761402 34686805 34684742 34706403 34696168 34695862 34655729 34794602 34719949 34708372 34657055 34686839 34619236 34687225 34655290 34690462 34674648 34732316 34676031 34736704 34639266 34677256 34722811 34604201 34753112 34598842 34749880 34723628 34703400 34746773 34695487 34666199 34707709 34694716 34643305 34581787 34714594 34703284 34719979 34684013 34618650 34741950 34758105 34662116 34653138 34682392 34678564 34704359 34648879 34712789 34732864 34679807 34615837 34682234 34695409 34607293 34668154 34680924 34715093 34630196 34770024 34672826 34679203 34655535 34742069 34675842 34621773 34665519 34676220 34668180 34677259 34649541 34697925 34714570 34699719 34661146 34595364 34696952 34620212 34670899 34629103 34702406 34629826 34659462 34663298 34704945 34645530 34685061 34677992 34590736 34677708 34655228 34738038 34563345 34658310 34680481 34656524 34598773 34738367 34638611 34666704 34655034 34719305 34659372 34617710 34695905 34714450 34617184 34677750 34674935 34692470 34669430 34634644 34640561 34659909 34636199 34661313 34721079 34707439 34717547 34583253 34674686 34653787 34659411 34633191 34658665 34654733 34658218 34706318 34673916 34678461 34642101 34611053 34641608 34685272 34648553 34652452 34591084 34650945 34635040 34541639 34696040 34610977 34654129 34588570 34691722 34652495 34577974 34609498 34688083 34656288 34636676 34585464 34627328 34529451 34607478 34637210 34652723 34666778 34633798 34672825 34579229 34645327 34598347 34627625 34683343 34535622 34609390 34635990 34683189 34615939 34673787 34600203 34644024 34703460 34690499 34714317 34628440 34613316 34606645 34647849 34600345 34639530 34657045 34635573 34573633 34573453 34605325 34666428 34636117 34647882 34608158 34642179 34602004 34626794 34664951 34569913 34610887 34557486 34626420 34713411 34584383 34621232 34678556 34648976 34621268 34618379 34636553 34619476 34621890 34623468 34566871 34679784 34668167 34594663 34651846 34644948 34596688 34595709 34525444 34642319 34604610 34580127 34660295 34623426 34605302 34619261 34592439 34653124 34590891 34562535 34580425 34600919 34608655 34616755 34572804 34626718 34515924 34574953 34668561 34591030 34538809 34580173 34635109 34626250 34554397 34632876 34534233 34662070 34619162 34531916 34637045 34596291 34654709 34586703 34639718 34610617 34571158 34632560 34570610 34608877 34641415 34598310 34590759 34639691 34571552 34608335 34593144 34568328 34605745 34556047 34574013 34591800 34571165 34568179 34624595 34566897 34561091 34551280 34619838 34636652 34580349 34568529 34644623 34613235 34675872 34602788 34589158 34613614 34585240 34535464 34643697 34557696 34588309 34572604 34601508 34541368 34603066 34634615 34524693 34570645 34592868 34545997 34606981 34594024 34569855 34576998 34533426 34580760 34627444 34569549 34617580 34581170 34528397 34546066 34577403 34573400 34609332 34597877 34552867 34593707 34539171 34535657 34535607 34592742 34613226 34560305 34576132 34523606 34607377 34538605 34573088 34585516 34536933 34520074 34607931 34598379 34615201 34523457 34555287 34553156 34502756 34533008 34564599 34576969 34524315 34560258 34534335 34538531 34495892 34544948 34524996 34540080 34621786 34604263 34532838 34561245 34572971 34556281 34547764 34510135 34593969 34550733 34571243 34495418 34545051 34472338 34599245 34572726 34518727 34548782 34537127 34587090 34507757 34522486 34464790 34541608 34569492 34581672 34529744 34507433 34522851 34543242 34511942 34544817 34555634 34523655 34538003 34582873 34579940 34505751 34518605 34532483 34525401 34593732 34548392 34491817 34539022 34467180 34487426 34472625 34607648 34571881 34553695 34530832 34575213 34507719 34581679 34479804 34546251 34477923 34408259 34489736 34556372 34491283 34483147 34481160 34525284 34525242 34566458 34528461 34544162 34468095 34509355 34590994 34556910 34579826 34467519 34496484 34536488 34463934 34500108 34522409 34580988 34559842 34549662 34479651 34451041 34552235 34562212 34520698 34438843 34544803 34449859 34544179 34509032 34520989 34532197 34513273 34500253 34538683 34548865 34514163 34533301 34438307 34552282 34512051 34518484 34516144 34544440 34482522 34513740 34428989 34504909 34469378 34565876 34472058 34531281 34531701 34458003 34510934 34522620 34521391 34544041 34500843 34535306 34499022 34492203 34499350 34463666 34488162 34465089 34501285 34491877 34536769 34489478 34479950 34441656 34499383 34481055 34411346 34512839 34599148 34481081 34430226 34485605 34497010 34414825 34537593 34457428 34505325 34443375 34486813 34488425 34456258 34559212 34490031 34448995 34442954 34491052 34526524 34396935 34461342 34453400 34518781 34535004 34537766 34492369 34494863 34486932 34506513 34493624 34489075 34513532 34502133 34512887 34439781 34470868 34480121 34352717 34526635 34450833 34460588 34486555 34464254 34510136 34492777 34522428 34488537 34476926 34433167 34563872 34459776 34510489 34469589 34447530 34449727 34491052 34426305 34487324 34417355 34524854 34474040 34522461 34502723 34432691 34374959 34436312 34523077 34429036 34442842 34379645 34494422 34473850 34442086 34399223 34439486 34483523 34487406 34422552 34434840 34416182 34490337 34490635 34455732 34454509 34417575 34458303 34445464 34433094 34468358 34416832 34490302 34481032 34429805 34458213 34369628 34408512 34414439 34420694 34454079 34484118 34494053 34443367 34424475 34419794 34471670 34421559 34523481 34455207 34435844 34427624 34448424 34394397 34453475 34479323 34517780 34432064 34496183 34447047 34461936 34463199 34465663 34434225 34472000 34410477 34477538 34481684 34462712 34412984 34385540 34438158 34430942 34489477 34475994 34511497 34424668 34464566 34461123 34406137 34380567 34418143 34465041 34458229 34399171 34420369 34421790 34397981 34446657 34421129 34355811 34455042 34477484 34427917 34413722 34420680 34409162 34346602 34414264 34541365 34442202 34466653 34443977 34400359 34412948 34431006 34374253 34425399 34471300 34388343 34377801 34447304 34388009 34420375 34472197 34403915 34436522 34414729 34446586 34375463 34460019 34371349 34460450 34353989 34396003 34455404 34446133 34434283 34461714 34338788 34562541 34421219 34410963 34380063 34419494 34358974 34443239 34430570 34401231 34421709 34399537 34406547 34395396 34420664 34352471 34406949 34407072 34384373 34359413 34415021 34424028 34366011 34417890 34385585 34405431 34408702 34418183 34431006 34400255 34434592 34420044 34368986 34403020 34385773 34416922 34334416 34441160 34382135 34368931 34444707 34346258 34410675 34425374 34381890 34412316 34366008 34341490 34470069 34385062 34355187 34379703 34395270 34448119 34362518 34405761 34498522 34382140 34369206 34447828 34436247 34419418 34441200 34350587 34422642 34352600 34417404 34372505 34348979 34395188 34384155 34407859 34367827 34416115 34331235 34441328 34368144 34380210 34397533 34330270 34294906 34342152 34390744 34411417 34357640 34398446 34429255 34375776 34353343 34407085 34367327 34308439 34377268 34446860 34399728 34415718 34416286 34361393 34330522 34398655 34365899 34358809 34373690 34446941 34326913 34318696 34376948 34352624 34411122 34430317 34467146 34398444 34358391 34303738 34387050 34368002 34410052 34356915 34319468 34373471 34349375 34354033 34302912 34334552 34322373 34306149 34340419 34431694 34373161 34385905 34418696 34398254 34444466 34338424 34369182 34322378 34400970 34385136 34324877 34324612 34300369 34399114 34379672 34420267 34367140 34339262 34332092 34319526 34348935 34306412 34347643 34319540 34354885 34375646 34335577 34286966 34439187 34330145 34362515 34403252 34318999 34281534 34317805 34325518 34311982 34352285 34348135 34373017 34290578 34313123 34354578 34347962 34379519 34354084 34394602 34361339 34275116 34393819 34354601 34343077 34359814 34399729 34357077 34351276 34325888 34291954 34335680 34336640 34362543 34292365 34348545 34342646 34401707 34391594 34350540 34364133 34353091 34384744 34291351 34346198 34359110 34256475 34263787 34293313 34333829 34331972 34334830 34336676 34370941 34378369 34311717 34314934 34372767 34323195 34336359 34350641 34349353 34276327 34268045 34321586 34354845 34196604 34282581 34271667 34373459 34278218 34310116 34338152 34343539 34332901 34312754 34320022 34305449 34365325 34293092 34315013 34289587 34378909 34301691 34255988 34339831 34239333 34388440 34363224 34340411 34362749 34273628 34303784 34307419 34291218 34276646 34319753 34365740 34343889 34282788 34219677 34307784 34386063 34300624 34283068 34230708 34222654 34324649 34331449 34286069 34274153 34285710 34268636 34282805 34202896 34274809 34285348 34242897 34300517 34194241 34297354 34333576 34299154 34299464 34288819 34235192 34256028 34243301 34285934 34262408 34271815 34286459 34313811 34254426 34267216 34363802 34290923 34333698 34279949 34289037 34310617 34276414 34331091 34253675 34238829 34200337 34307309 34268690 34292526 34284722 34297594 34172957 34307262 34262569 34278417 34287908 34328805 34280604 34312955 34275316 34186539 34339479 34308887 34205192 34273387 34312611 34286041 34315607 34292724 34229304 34241264 34229164 34283197 34348431 34285201 34292416 34241081 34239941 34263885 34279380 34274843 34317715 34224215 34250035 34236750 34281016 34187364 34247276 34214666 34365365 34277509 34293182 34193992 34265083 34309990 34228786 34250185 34277349 34297360 34261608 34259327 34281421 34284578 34220190 34268347 34293898 34253446 34166019 34246303 34218516 34211460 34289482 34285055 34237113 34227468 34260359 34325959 34261672 34210964 34236687 34277348 34352407 34274961 34218674 34266446 34269957 34211984 34252727 34234007 34266815 34270284 34263458 34296896 34224973 34239623 34257204 34267267 34279108 34214212 34274805 34263979 34273970 34217002 34219570 34287307 34326174 34204064 34229074 34261745 34222121 34325705 34202082 34219104 34300523 34296930 34170110 34266924 34268591 34307032 34203903 34224743 34228377 34237997 34245148 34158448 34213100 34235886 34229333 34182334 34261213 34193612 34198949 34218321 34221531 34238399 34175398 34293285 34231506 34243627 34233080 34199654 34320525 34239076 34267866 34209021 34274493 34306096 34197182 34207462 34220260 34256236 34180951 34167998 34155481 34257315 34172182 34229094 34206271 34217883 34232212 34226740 34118858 34235276 34208598 34181585 34182105 34268242 34215747 34251981 34190134 34246660 34198533 34216475 34243707 34170920 34274450 34201240 34233563 34135187 34216497 34231841 34220503 34249028 34162321 34185168 34181333 34213522 34236541 34194993 34175462 34212071 34210142 34194058 34191952 34208931 34187259 34217742 34187108 34182898 34267456 34236894 34191107 34151834 34203399 34252019 34159830 34297640 34174339 34226039 34171622 34186199 34206537 34261116 34140611 34215759 34151425 34191379 34159033 34173783 34159253 34192235 34241477 34165258 34166288 34163462 34253369 34237755 34157700 34201761 34243221 34219505 34150973 34268807 34200916 34165319 34173948 34180074 34118495 34184520 34206474 34178615 34134179 34207783 34136531 34199593 34249961 34202631 34185248 34183013 34109417 34240051 34159568 34217615 34171374 34187030 34186892 34147068 34193975 34158232 34173286 34165250 34191381 34174159 34117860 34190764 34164033 34162629 34185807 34181896 34168806 34199906 34149701 34214886 34127862 34196144 34181172 34138335 34149119 34157444 34123941 34156170 34138649 34175256 34187122 34182337 34219925 34199915 34166481 34205970 34188857 34209918 34133541 34142245 34137288 34135651 34111770 34160675 34146430 34118938 34208621 34092124 34124115 34149611 34124982 34210100 34110016 34197434 34172056 34163730 34135278 34165885 34119054 34175224 34134361 34266487 34144285 34226087 34156538 34198601 34205004 34126562 34167806 34185571 34197070 34099141 34153824 34198525 34098493 34216784 34095010 34215371 34258596 34086664 34203955 34197756 34149977 34146909 34160061 34177254 34180111 34172809 34159726 34074460 34172057 34105139 34196813 34193913 34155250 34153687 34044673 34124585 34082370 34132867 34204852 34100029 34210236 34135734 34097051 34064937 34200192 34074327 34133494 34197068 34044546 34107827 34122069 34150093 34103433 34111082 34217572 34128691 34137232 34195462 34188632 34133976 34117631 34160580 34176573 34196297 34105476 34095139 34147156 34132286 34135460 34126208 34088634 34131499 34118052 34094036 34104732 34144065 34095969 34135905 34141391 34094558 34075073 34148930 34225147 34164613 34101150 34139290 34114638 34086604 34155607 34172434 34033194 34094582 34128948 34160760 34078787 34187947 34163941 34120128 34121183 34125723 34155463 34112577 34075174 34116224 34109239 34114009 34112194 34077844 34081385 34230618 34122813 34118264 34070065 34066428 34090696 34113203 34080180 34042858 34137722 34187729 34078567 34083607 34139134 34177549 34093978 34175523 34063037 34111098 34019229 34105578 34164536 34054061 34124633 34007696 34007935 34081347 34078209 34117684 34021316 34042776 34194646 34145295 34134239 34070108 34160990 34013252 34114395 34123980 34030843 34089515 34068095 34140623 34176018 34065467 34098177 34094630 34127583 34121033 34067022 34143254 34151081 34131067 34122927 34039991 34040442 34027134 34142196 34127848 34178426 34104269 34072366 34128400 34090464 34075156 34087826 34023046 34075281 33999519 34061921 34029340 34065238 34091476 34145089 34106172 34091199 34040264 34105473 34079539 34077763 34119245 34079459 34079038 34134880 34086979 34126756 34129246 34007551 34078099 34067747 34131381 34068921 34068356 34076719 34041214 34079446 34107874 34012427 34068362 34133217 34050448 34056158 34064484 34038169 34103720 34037074 34054768 34097121 34094055 34077588 34090854 34076697 34065632 34002308 34071891 33997616 34000632 34053796 34004060 34058206 34043979 34076566 34066319 34059461 34111262 34076698 34048836 34062828 34104808 34031964 33969264 34114866 34088169 34151605 34067635 34051877 34071306 34045113 34015079 34105672 34153315 33978243 34027396 34048843 34019364 34074165 33988310 34034426 34038750 34053178 34056357 34048631 34007199 34024759 33995995 34071164 34030979 34064554 34055227 34061952 33978844 34105509 34098009 34018177 34039436 34039068 34016726 33975484 33957179 34119138 34051924 34100792 34007058 34060117 34085283 34024605 34017634 33977585 34067152 34071063 34036835 34049693 33999409 34005388 34004896 33981087 34023931 34004473 34046579 34058316 34097756 33997972 33979959 34106151 34013093 34065486 33992516 34025752 34062015 34052433 33925762 34031304 34062035 34022527 34016163 34039840 34004247 34001207 34019746 34035719 34023804 34010940 34011387 34054671 33993629 33914504 34043729 34014140 33999833 34055362 34081088 33956004 33954204 34032090 34099640 33962958 34054640 33982085 34011676 34004954 33997222 34026696 33956982 33920254 34060693 34065768 34072130 34002423 34000062 34034903 34085875 34021952 34015641 33945551 33944106 34038250 34022777 34017383 33974986 33961619 34044949 33974468 33974564 34029317 33993986 33958230 33977020 34010598 34030303 33988638 34069605 33976201 33975823 34040461 34036760 34002580 34040225 34031552 34027375 34019872 33979242 34023837 33940319 33983015 33998361 33957564 33951636 33988127 33957002 33958251 33978348 33988440 33946509 34052937 33972921 34026688 33977468 34050092 33979476 34052242 33999795 34007610 33992281 33982330 33951028 33976312 34025275 34032182 33961106 33988667 33996727 34020806 33989332 33980464 34038609 33999915 33993325 34059428 33952231 33982456 34005269 33992336 34012440 34012237 34011745 33959985 33958915 33977797 33940008 33988364 34035155 33959151 34007980 34038040 33915146 33930271 33937448 33869937 33989480 33991690 34020988 34006365 34002810 33995938 34002830 33940281 34019310 33997752 34022133 34019867 33962793 33958282 33983764 33991772 34020648 33945354 33948530 33929612 33937373 33997125 33961082 33991661 33959837 33977115 33983699 33953219 34039508 33938110 33939128 33955272 33920232 33956280 33949944 33939007 33934799 33960473 34021521 33980730 33910480 33953161 34009169 34016953 33942816 33914513 33951064 33975722 33932395 33912062 33924011 33928070 33932720 33942781 33966947 33882987 33932942 33950302 33966383 33958416 33915441 33942852 34049500 33986328 33962792 33966643 33899300 33905661 34006262 33896154 33987656 33920154 33940260 33963594 33870577 33964136 33937236 33895785 33896046 33916350 33939547 33993230 33873955 33893399 33937083 34026565 33851973 33968256 33906106 33928453 33942178 33927950 33976830 33943252 33943220 33956658 33944319 33922983 33861890 33972583 33928702 33931647 33869319 33964966 33936365 33920559 33955206 33961152 33913059 33883158 33903336 33926651 33974432 33915708 33917712 33971080 33957308 33891674 33997517 33911006 33889233 33988737 33890796 33972052 33907496 33874526 33859057 33959060 33936015 33914853 33951323 33913837 33910357 33878629 33924386 33937004 33946308 33890551 33924596 33935504 33909672 33944434 33901656 33970234 33841032 33906751 33967722 33856591 33969061 33910807 33911478 33895792 33871288 33892030 33899689 33875336 33881438 33859814 33876481 33929426 33870192 33923833 33857990 33861213 33963598 33948413 33972015 33898006 33927613 33835671 33876170 33905212 33885953 33890237 33866380 33929369 33869887 33864938 33843997 33899404 33857548 33942604 33876217 33896413 33896839 33931281 33898832 33917317 33863626 33902815 33872905 33935154 33954619 33936407 33883690 33903454 33898413 33918512 33883192 33931871 33802282 33922670 33893297 33892643 33900876 33846578 33948247 33876972 33904368 33768254 33943834 33923177 33873009 33939417 33860350 33879113 33885804 33946159 33829671 33883292 33901934 33875090 33945361 33896003 33821052 33832057 33879555 33868784 33956719 33865957 33933401 33870296 33855273 33882310 33869389 33928896 33896493 33807042 33893431 33894789 33898334 33802289 33888823 33792397 33907165 33907650 33833443 33830703 33885846 33882591 33817932 33882613 33876171 33933612 33802207 33895788 33830202 33864070 33913792 33835776 33884403 33905962 33855754 33905085 33844276 33857195 33900609 33813504 33830986 33867461 33920501 33845885 33919131 33900950 33821027 33849477 33835671 33824712 33903674 33776492 33851073 33788199 33855055 33885125 33846606 33926448 33861744 33850203 33860900 33822279 33808619 33904416 33858593 33950092 33922770 33830166 33896723 33854183 33902159 33900982 33819845 33795155 33837378 33822810 33876746 33869787 33912034 33750235 33830710 33788225 33834521 33855385 33820134 33860656 33813157 33860437 33834066 33805962 33824543 33892421 33881855 33762848 33873547 33835220 33834339 33849715 33829137 33858540 33829269 33833058 33807260 33826894 33798209 33874687 33796197 33863359 33774952 33885459 33822494 33828545 33879385 33829926 33868490 33841284 33885938 33775951 33834533 33895951 33813703 33822292 33740091 33784504 33793964 33812214 33835596 33840459 33852816 33871077 33838095 33823600 33770067 33776441 33777227 33840625 33821637 33817087 33852912 33823448 33831772 33816494 33837204 33823979 33855401 33806177 33802596 33848897 33823209 33789889 33826166 33806809 33797852 33802575 33776453 33833318 33790742 33797830 33785333 33773026 33776980 33805885 33798021 33837853 33823153 33781663 33862146 33729893 33818213 33820423 33794429 33727824 33802275 33765321 33772979 33877489 33784504 33775969 33845046 33795227 33804396 33900974 33745538 33838271 33858791 33817543 33720310 33829757 33876624 33788168 33790381 33819698 33806262 33855790 33809973 33727425 33852860 33814686 33779059 33830431 33869746 33829416 33852275 33798169 33799308 33770698 33785604 33832837 33817440 33863490 33812695 33739744 33777599 33708983 33799390 33794986 33729925 33776091 33839014 33804702 33840514 33804215 33843063 33819744 33817689 33772398 33829841 33789654 33760488 33795195 33790575 33782184 33755420 33800068 33774143 33809420 33760632 33741424 33755348 33785497 33780046 33807335 33795818 33768085 33779885 33763291 33774585 33794067 33836679 33758627 33796808 33809014 33721621 33766782 33760408 33764018 33817628 33733168 33752544 33852838 33765194 33764478 33733412 33725911 33754822 33797481 33733351 33785518 33822001 33817707 33752296 33787308 33770037 33757920 33844362 33725135 33754493 33714267 33812682 33813636 33780508 33754017 33838335 33806021 33753627 33727231 33731359 33784117 33777734 33748739 33779398 33714196 33730378 33709297 33774450 33700924 33769540 33701798 33734123 33790454 33713553 33749200 33722024 33767641 33722557 33702380 33722273 33774558 33726835 33718363 33707501 33727129 33757008 33745963 33747820 33811477 33660858 33811565 33792655 33805700 33800148 33753584 33774539 33744169 33756628 33694090 33729902 33771918 33718358 33811797 33754983 33730415 33717147 33672358 33761896 33733949 33758203 33721244 33713691 33745771 33694556 33725790 33752643 33716606 33728056 33807166 33751204 33732980 33774895 33768462 33749157 33711859 33695652 33672390 33705830 33701562 33723448 33738785 33724913 33699707 33771183 33720924 33700403 33768160 33705315 33636573 33743524 33751689 33735544 33673883 33734762 33733072 33663180 33673673 33706061 33754534 33743979 33688127 33715393 33678271 33744079 33680474 33745752 33664746 33774774 33717105 33725442 33793445 33784515 33810585 33694062 33738351 33717963 33691766 33677457 33699300 33756511 33694487 33700736 33723607 33747500 33719417 33708504 33745649 33674027 33758298 33705400 33744333 33708514 33670763 33654195 33661671 33712765 33694538 33715546 33677574 33694186 33697165 33660305 33627881 33758904 33726798 33699307 33690055 33712204 33771782 33652774 33742291 33710312 33741214 33734951 33681963 33730037 33734684 33722803 33696933 33692252 33747830 33684317 33761256 33716132 33738990 33726035 33673241 33705304 33710151 33668951 33654305 33703137 33735147 33760081 33701267 33690084 33725868 33683509 33684489 33743090 33684019 33746087 33708398 33665293 33723142 33590570 33667467 33684076 33668613 33699135 33680836 33717937 33613591 33609284 33654465 33655430 33634195 33694716 33741706 33687959 33721997 33644089 33758574 33725019 33695343 33655346 33676233 33710673 33697530 33709869 33642667 33606256 33604394 33724945 33734822 33684431 33689038 33694549 33692900 33676714 33651288 33637256 33680519 33688895 33754342 33707361 33694242 33692386 33718590 33593370 33619716 33662415 33690544 33658349 33683658 33703520 33661683 33669060 33605149 33651172 33691950 33665092 33644916 33664494 33673597 33731016 33716862 33646895 33705696 33767446 33662766 33616017 33632662 33642627 33641716 33714048 33550451 33681176 33598114 33624517 33692262 33661386 33621668 33732395 33674641 33579957 33654818 33672736 33702680 33689555 33700916 33687294 33606719 33617372 33654684 33603911 33668649 33664496 33642492 33596646 33619704 33696600 33606323 33634268 33577989 33714101 33662338 33615857 33686365 33634128 33594105 33693116 33586814 33697863 33604840 33630484 33652052 33668766 33658586 33570932 33670537 33659150 33633939 33620106 33670973 33643776 33655528 33610030 33703003 33557807 33653483 33587885 33659216 33692651 33592422 33677653 33618189 33639287 33596706 33656793 33557114 33604713 33684042 33592524 33677056 33576282 33621028 33565268 33573469 33586662 33578679 33644804 33614164 33589056 33687574 33617859 33654445 33606994 33650265 33674142 33565282 33648505 33573006 33620737 33594714 33666399 33643551 33684285 33621873 33635866 33627176 33673254 33652253 33649732 33605346 33608685 33595783 33686615 33640361 33639049 33564759 33587253 33627450 33667400 33581301 33629990 33651371 33556236 33614091 33671908 33609984 33535132 33614305 33592386 33634534 33608844 33605399 33597768 33610042 33626633 33587606 33603712 33584247 33596937 33593840 33568271 33602015 33637739 33641033 33592160 33576405 33594163 33658084 33590406 33613325 33559217 33619811 33594950 33632668 33600768 33654921 33632545 33556998 33528286 33600375 33636870 33540394 33630295 33554752 33611314 33596868 33650027 33619217 33576199 33586318 33577432 33603190 33601041 33594799 33614853 33550538 33647138 33582084 33543686 33628866 33559777 33546938 33637833 33612882 33532343 33600461 33507646 33642547 33583214 33668792 33553110 33525510 33604602 33635667 33592399 33635463 33594788 33634069 33521400 33555481 33641440 33539760 33590804 33591997 33531753 33515184 33572460 33587779 33586482 33576523 33598410 33532397 33595206 33542650 33566483 33624234 33533091 33559486 33554571 33610125 33592801 33571752 33542720 33510070 33579202 33565002 33529756 33578464 33517965 33578385 33593662 33530505 33555775 33565326 33569672 33572676 33575776 33601762 33496694 33581965 33592160 33550200 33642383 33532103 33607583 33516955 33579633 33594483 33557043 33520190 33547981 33505135 33567231 33584920 33601171 33566417 33525243 33519750 33583625 33641331 33545802 33601110 33569328 33541151 33569398 33517150 33559465 33619694 33620245 33551161 33599494 33570368 33619215 33562066 33471338 33539646 33599498 33486761 33506109 33522013 33556809 33536090 33571120 33503464 33517385 33560359 33508876 33583681 33493460 33469031 33519715 33542155 33577423 33553289 33478815 33538397 33537197 33615203 33528330 33532920 33629840 33607063 33534510 33520557 33604013 33526158 33448127 33531118 33579090 33586345 33520192 33553868 33474864 33514254 33497033 33564368 33500953 33532800 33537693 33547356 33573328 33509452 33535323 33597410 33530665 33534329 33506823 33545439 33540505 33453056 33551015 33527833 33540201 33532466 33564802 33572204 33518250 33548748 33476699 33488247 33550875 33468604 33545707 33537443 33508901 33535277 33494632 33514487 33584920 33494491 33518640 33491508 33501493 33523282 33547319 33487471 33518159 33531863 33482415 33506176 33567138 33551982 33517411 33543905 33513309 33519010 33526825 33468150 33520619 33497720 33518502 33512630 33506738 33502176 33489118 33513156 33522010 33515658 33486862 33496280 33463329 33527950 33523801 33516076 33524756 33503031 33484377 33477039 33444716 33528721 33489125 33535205 33462753 33463179 33446063 33583275 33486592 33526672 33477137 33435142 33486724 33510323 33430208 33486533 33546821 33518018 33429861 33529896 33486672 33462604 33458628 33503990 33514523 33469521 33474051 33482158 33448271 33551173 33539790 33448772 33499470 33466714 33429908 33452406 33480233 33503175 33453790 33485267 33496157 33462199 33488807 33534975 33534239 33466775 33479800 33487587 33470372 33487253 33456833 33396178 33525117 33468216 33504329 33475558 33474388 33448857 33484841 33528049 33490491 33453097 33466137 33520424 33459363 33505962 33451668 33531857 33475452 33508274 33482956 33505457 33481867 33497695 33508093 33472264 33388592 33544027 33469539 33472864 33434639 33420151 33438957 33409595 33444331 33519370 33463752 33400247 33415669 33454227 33442694 33448505 33516296 33379552 33477926 33485643 33459663 33424830 33501261 33406611 33484763 33419648 33474020 33488081 33540157 33460327 33499713 33433031 33444539 33475750 33448870 33434116 33434415 33414021 33451853 33481310 33505193 33394393 33445283 33475205 33474653 33401318 33462857 33442374 33459808 33416092 33447095 33466490 33447820 33356277 33486703 33441816 33536534 33496575 33464486 33487221 33449569 33415832 33416742 33454502 33432126 33405696 33476343 33417323 33421237 33471631 33448429 33377514 33461155 33446121 33525217 33463698 33479904 33401912 33446186 33396010 33393627 33477473 33428150 33438706 33515014 33327946 33460908 33470693 33414968 33393041 33411851 33369812 33401494 33430132 33420193 33440813 33406121 33443440 33408090 33481087 33424959 33455189 33400040 33410000 33380604 33483042 33389520 33438871 33437093 33422004 33448971 33483480 33481962 33341395 33352783 33482674 33431113 33420330 33467192 33435985 33423227 33404181 33415849 33453903 33410821 33447741 33370570 33418297 33471577 33450241 33454141 33426815 33395570 33374841 33450878 33437829 33397179 33454608 33392973 33383423 33394774 33366106 33353352 33464839 33460659 33420625 33360210 33350595 33412870 33462844 33355690 33430364 33411649 33394559 33389241 33373713 33407457 33370835 33390033 33348397 33436867 33426203 33398451 33407650 33402230 33370107 33354398 33357472 33386448 33446944 33371756 33417231 33393501 33490538 33405240 33407047 33393399 33442565 33379446 33422539 33407223 33351617 33428734 33387032 33466412 33407647 33357561 33354244 33329762 33387230 33341193 33460139 33449168 33340506 33313609 33390165 33390120 33382643 33311387 33415673 33421173 33384394 33406177 33392315 33408296 33317394 33418052 33422193 33326754 33354745 33387314 33365505 33430892 33406081 33358742 33376170 33324427 33361599 33374795 33397119 33321672 33361012 33341352 33401621 33363197 33362297 33423410 33361234 33416620 33380195 33370225 33325234 33311684 33344855 33379772 33351853 33420557 33409041 33362933 33429559 33411058 33319632 33361629 33339142 33333897 33327195 33338944 33342702 33397952 33346539 33344006 33430169 33316450 33341041 33294668 33392373 33366688 33356183 33344950 33393903 33343670 33346865 33382333 33371221 33359955 33286489 33360878 33443975 33345272 33383120 33370834 33306447 33375108 33363251 33408724 33329420 33354562 33343312 33377073 33315633 33429231 33345623 33410524 33388780 33339553 33347781 33300565 33351470 33376353 33361556 33313341 33372515 33315920 33353866 33363363 33369045 33352464 33331167 33287487 33431714 33372485 33347166 33441488 33396588 33304779 33311304 33271509 33347697 33367377 33341118 33355154 33284235 33364948 33431881 33377375 33296893 33316927 33364670 33322399 33388621 33314193 33318166 33352823 33274054 33277251 33313545 33349853 33292792 33388512 33323662 33407788 33267029 33376647 33307768 33297947 33379907 33351481 33321178 33344926 33299807 33310409 33254869 33241644 33329709 33296395 33309504 33366391 33326796 33367453 33319450 33319280 33341039 33301399 33293881 33359265 33349064 33320357 33356910 33264850 33286181 33303691 33349058 33356856 33348699 33324907 33347348 33358718 33384138 33354319 33237091 33310125 33345439 33278730 33301396 33292392 33368805 33342872 33338304 33326188 33363008 33381152 33313353 33258728 33324542 33346261 33293334 33308800 33315319 33300401 33249683 33282927 33274719 33374629 33330543 33294831 33290316 33240111 33238371 33347981 33324983 33269440 33331489 33322572 33259397 33275637 33341024 33275478 33314753 33319409 33273580 33294651 33254183 33343758 33315810 33286445 33319596 33315790 33275457 33223920 33324412 33336597 33308861 33230182 33317745 33261657 33279604 33310852 33264448 33317537 33311457 33215493 33304186 33304040 33360050 33304022 33241798 33328499 33295061 33237324 33231128 33272901 33279713 33280132 33390625 33320857 33268235 33229905 33284187 33314180 33235952 33218950 33333887 33322108 33289635 33287938 33327751 33228171 33286857 33267005 33324887 33281336 33231696 33212084 33275709 33308796 33319123 33277784 33291473 33314287 33345606 33260906 33289430 33214925 33308793 33281406 33265193 33336434 33235718 33308058 33333549 33319737 33309169 33175636 33239536 33301161 33257064 33264497 33230011 33255622 33328779 33245911 33264210 33274584 33317789 33252921 33276670 33260884 33210330 33251741 33245327 33252576 33310717 33234493 33281442 33278132 33218776 33275863 33260173 33297466 33246158 33282389 33234132 33334824 33269539 33313892 33286398 33264884 33304338 33344397 33226034 33238216 33245250 33201878 33341474 33273953 33207400 33290790 33269551 33309647 33193180 33223317 33219409 33206593 33205207 33295191 33253183 33236538 33320191 33233359 33272208 33281617 33238911 33187237 33188897 33165342 33240609 33211633 33224672 33282678 33309149 33313064 33189778 33235829 33265696 33233300 33186497 33223854 33263902 33275950 33238544 33240796 33198651 33259004 33272550 33193260 33291059 33238975 33299149 33211637 33200449 33281562 33279814 33177943 33176652 33226555 33277872 33254045 33163153 33261795 33168446 33238167 33222386 33251876 33174103 33237772 33219240 33307208 33269634 33177159 33262568 33256209 33233726 33207824 33218735 33271136 33238445 33229831 33241012 33189664 33271715 33155081 33278420 33206951 33259156 33141888 33202456 33228358 33262097 33233728 33229052 33207704 33262651 33264410 33159275 33245847 33285853 33168900 33172552 33204298 33225913 33260037 33221449 33208498 33226663 33176377 33253155 33201409 33163268 33233852 33229851 33246332 33241795 33159956 33188346 33273058 33274150 33198403 33162211 33141475 33246217 33269167 33148033 33222744 33210296 33171322 33206342 33238174 33199093 33220932 33231982 33168162 33222859 33202361 33194410 33183035 33185019 33180987 33194711 33199506 33142921 33186493 33211913 33170897 33222855 33253156 33174694 33208014 33181400 33175710 33192507 33150587 33239069 33187635 33228350 33129508 33095307 33215295 33170413 33180321 33183282 33193207 33196682 33131937 33237916 33216652 33181902 33209181 33183926 33244924 33139388 33179753 33154471 33157016 33197894 33271917 33199963 33182032 33159293 33186749 33225193 33124845 33222327 33207677 33197536 33185356 33202663 33226857 33148394 33120268 33216025 33205811 33216282 33130088 33214604 33167785 33171107 33110007 33151315 33206474 33134571 33168684 33202800 33160510 33154376 33067938 33226657 33136604 33206273 33158142 33158969 33186367 33181913 33223599 33168420 33173890 33136122 33166489 33127586 33163228 33146302 33189125 33142543 33163668 33204001 33183546 33196161 33200538 33172861 33128728 33169771 33221637 33189213 33192179 33183421 33127496 33204613 33192560 33131143 33170242 33168365 33171842 33095199 33107865 33182980 33178902 33219103 33195321 33183328 33155863 33227698 33140826 33194418 33173981 33175181 33126160 33127227 33146852 33181128 33184953 33120856 33161038 33222974 33107376 33133547 33144462 33164708 33076231 33101688 33178724 33142609 33063444 33114770 33195004 33162802 33112815 33170827 33174158 33082462 33117656 33129625 33096891 33111671 33158239 33098703 33162105 33164037 33144396 33175726 33114990 33108441 33076583 33155697 33167976 33142748 33127290 33113809 33148066 33125088 33154787 33182338 33096854 33160466 33135743 33134191 33143065 33150154 33143779 33207404 33132910 33133554 33123762 33122402 33080576 33121652 33182002 33113726 33087422 33189193 33158387 33108310 33107084 33150208 33166036 33180773 33110421 33130155 33110118 33103203 33117546 33142343 33114400 33075155 33113227 33166430 33107956 33082015 33143321 33129371 33120816 33076411 33033220 33113969 33101981 33126923 33112946 33113152 33087936 33125718 33084488 33166521 33085073 33063725 33125459 33096886 33127826 33147192 33078472 33210193 33163786 33118875 33163751 33059568 33117634 33091652 33107889 33095012 33087335 33096821 33069760 33135687 33133420 33104050 33122118 33083662 33098346 33102316 33081292 33073268 33085071 33083706 33141047 33106562 33071340 33085458 33127210 33034508 33190778 33125893 33037097 33115423 33072063 33085286 33071816 33131624 33215977 33032714 33127320 33040563 33126315 33095199 33172865 33044608 33076734 33049616 33039132 33045087 33076093 33077088 33066073 33089345 33089718 33084830 33042908 33084944 33082173 33110461 33121135 33096062 33105173 33113633 33084991 33067933 33104584 33067955 33080734 33069909 33070331 33080180 33099430 33101128 33073936 33110224 33085260 33022550 33086330 33099901 33100110 33142202 33100384 33111029 33077172 33114163 33052892 33092421 33015739 33022217 33093404 33065710 33034370 33038137 33026863 33094534 33029410 33092262 33053263 33068686 33071574 33065002 33062673 33064526 33086683 33072257 33095494 33111924 33105134 33081167 33133297 33062010 33037532 33138206 33087127 33019956 33063573 33043944 33079132 33097323 33035776 33087203 33073260 32974013 33028111 33071443 33058876 33084158 33112407 33068396 33050783 33058932 33054598 33077443 33101117 33061786 33022410 33116903 33094311 32997274 32967609 32941957 33059027 33073604 33014853 33056050 32993519 33063624 33102429 33020612 33081999 33041506 32995278 33028999 33005497 33025818 33050875 33071758 33087622 33023505 32949766 33050399 33017436 33055297 32976081 32985273 33054466 33089684 33064303 33042132 33062030 33051548 33087911 33053301 33035524 33054089 33032899 32999480 32988593 33037837 33067707 33031143 33075245 33028309 33092506 33040428 33024284 33003435 33071911 33030469 32997651 33004331 33029664 32927654 33039339 33056516 33048632 33074111 32989086 33045323 33102798 33008582 33038071 32972605 33101717 33067082 33032240 32995130 33058959 33055657 32987452 33030059 33019532 32948748 33027747 33027607 32947988 33073106 33026738 33005176 33047668 33027259 32958647 33024382 33045054 33014323 33026176 33051739 33065963 32991207 33020319 32989115 33032274 32988533 33050335 32991581 33025168 32972260 32988264 32936804 32997107 32975863 32985445 32996876 33005777 33036037 33089805 32965600 33048140 33028148 32970179 33012124 33050685 32940349 33045655 33021721 32984660 33000982 33028871 32999646 32919705 32968444 32991906 33044293 32973517 32987333 32992035 32967918 33026960 33034369 33045795 32984630 32924363 33050857 33053017 32991350 33000126 33003028 32977323 32946076 32986296 32935231 32932301 32954262 32987348 33004535 32980066 33040312 32966241 32970635 32974212 33007490 32915708 32966196 32988350 32997199 32936901 33008210 32977629 32967800 32958885 32982790 33026842 32953307 33031378 33004546 32987169 32922298 32965631 32981064 33007062 33018926 32998468 32973642 32945919 33003039 32961798 32976740 32975814 32978357 32998119 32929632 33016990 32995300 32964269 32907935 33024648 32952173 32987245 32964816 32978409 32974340 33034290 32981728 32966152 33004586 32947834 33008842 32977046 33017691 32954657 32983445 32964054 32958116 32956870 32988350 32982397 32963333 32945489 32939624 32952514 33002925 32975213 33041146 32928852 32911654 32939433 32929257 32926107 32991768 32899131 33002366 32929626 32998274 32893480 32937402 32981303 32983925 33009950 32931038 32978368 32908282 33017123 33031639 33023643 32960823 32868888 33032848 32997065 32942832 32907040 32993595 32968588 33001631 33033690 32884790 32977417 32903333 32932309 32943179 32971164 32983710 32985677 32945460 32950338 33036189 32956278 32929878 32897228 32921275 32935050 32913157 32959670 32919513 32917560 32998347 32985828 32982590 32973035 32927300 32900140 32957540 32962055 32971585 32976476 32979697 32980556 32917441 32960654 32931042 33021730 32940149 32955537 32956188 32931945 32908241 32976182 32912877 32981904 32932265 32940808 33008269 32971917 32923634 32900572 32932623 32957206 32891834 32894251 32955075 32969157 32981307 32883719 32978395 32906937 32870815 33002864 32940243 32914641 32891759 32908933 32903044 32882757 32870931 32861081 32937287 32970011 32858570 32913160 32928585 32915242 32896759 32914258 32962855 32935367 32937757 32975700 32891911 32873215 32885683 32966191 32913584 32954135 32976444 32871528 32926309 32872109 32978985 32890170 32932240 32955468 32902572 32906684 32926370 32887849 32881292 32878184 32918533 32950533 32907059 32951752 32886808 32911146 32842331 32875869 32817020 32942899 32898130 32938347 32924055 32914667 32880513 32986422 32854243 32858387 32891819 32852744 32935995 32928913 32965504 32910900 32976283 32891351 32883384 32825334 32895955 32900069 32929137 32906495 32859936 32902102 32893552 32878259 32973259 32875506 32908307 32864286 32880865 32933609 32936499 32881367 32912537 32871714 32986057 32857294 32850283 33010057 32862185 32926185 32899865 32870838 32962361 32931364 32895821 32842407 32922120 32898516 32878959 32932884 32917399 32923708 32870185 32874241 32838828 32859592 32861081 32897192 32870095 32891310 32840670 32955868 32852313 32916381 32860507 32825170 32921347 32881921 32885746 32839501 32846962 32833484 32840164 32880756 32869077 32792410 32897188 32876892 32888955 32819499 32865692 32842617 32867287 32912273 32785953 32926600 32806569 32827969 32819672 32888654 32850594 32904399 32852018 32837217 32821038 32905034 32847891 32828404 32803322 32865744 32854850 32852961 32895306 32872978 32831157 32884769 32866428 32829279 32910860 32852503 32899693 32908826 32803069 32881798 32814623 32877867 32871801 32818965 32815694 32872858 32839612 32850477 32823573 32871303 32894471 32890843 32756941 32830994 32885277 32859468 32840846 32893355 32807714 32862953 32802755 32826270 32910947 32904113 32846600 32792680 32877834 32880746 32851457 32794538 32806297 32858955 32833841 32853305 32827340 32919564 32814309 32828605 32868400 32911996 32888839 32871694 32872736 32874940 32834876 32853274 32785282 32854405 32791879 32819283 32785489 32844340 32836920 32824720 32812114 32849851 32783719 32806110 32800600 32817737 32812717 32836500 32787928 32860852 32824540 32835248 32850092 32863152 32862885 32762841 32763936 32764580 32828207 32837489 32863129 32806399 32817688 32865112 32819495 32774904 32885928 32799584 32769943 32867570 32841822 32816312 32790446 32805336 32909190 32769898 32790683 32840931 32752962 32778494 32879766 32891015 32874046 32815025 32828081 32758993 32805836 32839724 32811114 32847163 32839077 32801219 32778191 32869359 32784431 32851184 32820047 32796047 32853641 32788779 32762172 32845806 32869464 32872843 32778575 32852904 32734786 32849493 32833983 32744886 32786741 32831683 32807467 32837660 32767351 32805596 32758426 32817096 32781976 32863022 32812517 32796216 32735687 32856693 32767199 32815848 32765694 32785067 32822715 32823720 32829331 32798801 32871497 32742278 32777413 32802590 32798176 32761317 32863403 32847666 32786377 32755969 32832256 32796808 32758097 32796957 32795393 32719665 32796066 32840944 32773586 32747707 32760082 32804603 32789417 32773408 32789538 32826663 32798327 32752484 32838680 32779568 32748659 32832932 32754763 32825756 32832541 32838628 32784415 32828220 32779103 32710302 32811285 32775817 32772753 32750227 32721199 32806758 32837139 32733994 32733917 32812207 32826926 32734554 32794754 32813001 32701542 32793290 32696731 32802045 32770141 32722667 32722408 32778193 32828166 32749024 32716433 32822461 32732703 32732863 32806453 32747833 32759613 32797473 32776450 32722921 32764296 32783043 32733209 32819838 32721150 32809010 32700436 32725666 32789045 32806465 32716464 32770099 32805780 32824690 32796612 32803006 32767855 32811533 32736514 32775433 32801827 32763727 32825224 32776680 32743937 32785563 32820372 32734462 32773821 32743359 32787265 32777795 32761686 32792151 32763394 32820030 32737769 32764779 32838970 32768815 32788989 32807250 32750356 32771785 32823078 32710182 32761229 32759269 32707547 32753682 32793861 32789319 32768523 32767728 32704259 32782795 32820215 32694048 32762692 32735766 32707934 32783853 32800703 32741764 32701434 32817094 32795301 32773915 32771913 32792325 32736654 32709149 32723375 32693162 32727011 32730294 32718389 32735420 32816306 32697813 32675793 32773568 32776818 32775646 32827008 32708942 32755447 32756634 32735765 32759619 32725097 32706826 32743316 32757068 32775500 32677159 32809082 32715396 32709946 32753869 32771770 32733951 32662552 32716929 32709337 32735868 32675926 32749427 32722491 32684746 32721814 32740804 32726309 32724432 32752541 32762483 32646287 32690465 32675065 32715687 32751828 32659994 32732599 32704159 32732439 32737253 32764961 32700681 32784711 32725003 32746432 32766860 32734071 32759439 32753110 32782371 32785692 32692242 32687548 32750947 32751170 32653635 32708940 32774380 32699136 32683736 32695234 32735453 32671224 32767136 32756863 32771163 32734419 32727975 32774092 32711262 32688261 32672241 32686065 32641001 32732095 32721212 32707836 32704509 32666740 32730902 32713967 32690641 32742075 32741315 32715933 32777304 32694725 32706024 32740399 32718992 32710303 32655752 32721467 32717497 32690419 32666308 32631564 32623337 32690083 32675452 32725409 32670544 32678436 32726913 32660935 32704456 32708281 32672997 32662261 32772089 32682647 32682659 32662083 32697130 32755707 32730579 32629895 32689768 32688935 32654923 32605146 32710750 32664431 32685290 32651816 32639066 32719256 32778964 32704517 32654473 32631954 32719460 32619743 32654162 32660407 32658424 32707902 32707442 32735765 32759123 32673634 32629244 32650169 32740940 32626785 32710055 32695840 32632254 32644313 32675604 32723539 32666433 32651458 32667639 32687508 32653737 32597284 32681482 32694168 32695424 32659166 32653737 32597986 32666907 32711115 32603693 32658224 32632511 32667453 32670090 32676843 32699057 32711112 32657947 32692031 32608720 32638172 32644863 32652138 32707850 32628550 32631797 32662062 32560947 32639936 32657639 32676162 32677888 32681941 32615056 32617964 32593173 32608381 32593803 32669728 32567095 32612247 32690268 32694956 32607163 32707608 32683118 32642100 32569821 32650625 32633919 32663756 32652746 32676540 32693024 32564397 32667619 32678990 32638939 32613383 32628771 32636464 32608823 32618321 32605004 32674518 32620121 32629289 32694864 32617822 32712545 32704352 32646684 32607538 32613611 32618976 32557187 32586099 32631792 32639978 32551735 32638240 32550305 32514015 32614944 32551288 32712197 32638818 32584267 32641644 32636392 32665024 32619272 32630913 32598913 32620309 32551206 32624367 32711440 32626621 32643568 32586806 32608364 32622933 32531579 32626658 32614530 32678721 32590754 32642749 32572990 32612357 32623862 32543227 32558087 32600089 32597431 32634383 32533545 32578320 32607822 32613231 32658310 32674222 32618971 32645593 32630043 32694996 32542891 32697430 32536525 32647377 32618129 32593363 32649301 32597657 32555839 32586188 32645256 32576476 32615306 32698525 32617251 32627709 32590505 32620212 32621411 32608611 32590698 32582802 32555776 32640062 32537046 32619478 32577229 32652097 32565756 32636050 32597268 32641123 32596818 32625095 32625499 32573058 32628230 32585193 32559254 32605851 32596780 32601865 32572894 32676301 32604819 32608480 32518972 32566096 32584657 32525657 32646104 32589810 32598293 32491600 32607686 32607306 32606155 32606641 32548125 32534006 32547634 32544162 32596731 32648195 32536948 32605073 32551373 32598506 32599875 32544844 32679665 32529099 32631384 32612855 32609071 32612052 32636088 32571636 32584626 32612566 32548658 32557794 32526223 32553984 32617942 32584612 32574283 32560804 32650464 32624396 32609492 32612987 32619883 32550895 32532369 32573802 32639089 32531978 32566762 32582810 32569651 32586555 32570432 32590252 32640667 32591760 32507302 32518232 32563098 32501644 32574208 32598997 32616263 32529644 32561875 32603006 32590714 32579941 32525845 32589796 32639029 32543096 32528206 32608350 32525366 32518437 32526017 32504215 32532667 32578251 32543064 32537461 32546323 32583097 32539927 32543241 32537490 32513889 32565460 32553817 32527288 32564366 32439432 32560064 32545018 32542759 32495985 32529008 32552365 32551763 32534033 32542854 32505265 32591015 32591824 32511474 32564657 32614810 32526329 32480218 32596475 32506051 32565555 32488093 32559765 32541315 32502614 32552990 32473598 32580796 32589584 32527076 32515448 32525740 32578107 32590321 32525653 32453491 32529007 32540935 32527217 32487454 32539382 32586251 32571129 32561871 32549298 32556582 32480410 32548501 32512086 32535048 32547420 32497161 32497209 32516336 32518432 32600056 32538850 32509638 32518082 32525174 32528363 32596932 32502232 32476307 32512651 32525478 32518737 32486003 32532740 32528423 32529577 32566639 32570685 32567377 32483360 32454020 32524316 32534430 32527043 32432134 32515355 32518233 32519015 32461774 32530659 32500896 32539985 32509870 32491311 32498672 32511912 32555995 32542514 32547253 32513328 32499651 32427889 32523793 32546278 32553036 32514654 32541147 32548578 32472183 32540235 32543986 32501123 32509299 32481321 32466124 32565021 32508207 32490541 32459650 32519917 32588699 32442574 32433167 32515433 32552019 32538678 32462541 32567526 32495966 32514804 32547128 32484232 32508687 32525352 32561732 32521645 32391804 32482908 32465649 32513632 32547440 32438266 32498014 32514973 32537419 32479538 32539622 32458220 32461963 32499980 32440846 32481634 32528827 32529651 32544576 32525276 32495937 32511335 32524855 32467887 32544251 32507783 32479264 32532105 32487118 32450355 32534714 32540236 32449082 32499279 32522925 32463350 32496585 32491674 32469815 32435984 32472342 32475708 32487605 32493370 32428011 32521071 32489165 32477148 32501562 32478561 32503751 32475559 32536975 32476781 32557257 32474361 32497112 32446845 32486350 32492344 32476236 32478820 32478182 32454777 32544089 32515766 32435070 32446851 32494401 32463443 32444676 32463357 32446160 32485259 32481964 32512266 32505035 32464799 32518738 32446123 32473622 32526459 32434931 32532548 32446741 32477344 32455935 32469392 32447972 32471588 32429621 32539514 32411936 32458590 32516712 32429449 32472572 32483807 32488528 32455552 32445877 32458826 32465544 32432921 32461540 32482651 32472168 32461644 32498021 32414081 32490155 32546298 32450898 32431557 32485243 32457863 32477317 32505908 32485740 32393173 32484222 32444564 32480239 32433192 32464238 32432749 32422654 32436210 32418448 32485527 32414933 32465254 32433639 32440686 32447086 32480431 32464419 32443225 32466797 32452022 32376096 32392982 32439962 32479242 32471852 32440477 32445659 32395792 32394548 32464927 32440197 32395737 32482317 32461232 32402213 32363873 32454839 32419887 32458734 32504183 32464286 32422334 32357308 32452484 32486293 32392007 32428203 32469735 32395032 32400325 32429921 32427727 32425070 32433892 32470604 32489796 32443036 32397564 32435507 32424314 32477340 32503364 32538127 32375543 32396612 32472155 32412855 32383914 32492300 32420294 32382282 32473192 32446462 32363926 32439626 32378712 32435204 32441894 32383491 32434357 32348781 32427028 32426131 32460422 32388232 32368194 32433357 32411055 32365469 32409538 32424091 32373136 32419600 32409811 32384803 32459299 32473236 32437591 32390983 32412084 32468928 32452588 32414116 32426113 32399516 32415976 32430219 32428648 32463467 32389042 32391659 32420447 32372865 32430275 32420557 32391513 32374872 32386200 32352099 32342391 32446527 32367275 32459634 32436209 32331622 32470928 32366260 32418310 32395192 32413320 32446073 32368920 32393465 32442341 32383189 32329193 32456773 32413463 32402710 32370855 32362854 32414647 32438324 32382971 32455185 32462999 32365726 32418355 32387304 32430110 32411482 32416314 32402425 32393355 32387230 32356671 32379711 32384049 32455943 32365342 32423347 32379923 32390578 32320874 32402724 32414643 32432270 32354550 32365315 32402538 32365078 32361021 32413306 32393118 32341711 32368846 32436765 32421548 32448567 32378246 32406752 32436471 32393794 32432507 32365738 32297454 32358167 32403566 32389339 32426128 32351672 32331731 32385967 32401085 32383078 32417713 32410759 32321879 32326005 32380650 32358189 32358662 32349080 32383177 32353667 32379490 32318445 32362697 32376219 32392956 32400748 32446154 32367220 32447997 32363966 32379939 32387083 32328231 32356223 32356385 32301266 32397872 32409559 32298393 32389306 32367231 32364500 32308943 32382052 32365697 32331183 32343002 32362529 32370598 32376125 32301218 32374882 32384056 32393032 32333918 32385684 32349932 32438125 32351384 32343672 32375800 32378807 32387665 32371102 32354436 32373438 32427527 32355687 32405465 32382225 32356113 32383363 32340640 32406623 32266081 32304268 32306610 32348385 32337689 32401114 32312064 32372258 32358084 32418459 32334632 32299614 32320478 32341009 32384141 32314081 32397663 32369557 32324622 32332849 32332937 32264151 32290707 32260481 32280409 32349325 32287726 32383389 32323831 32326023 32274220 32359622 32360623 32343472 32312232 32271256 32327152 32345213 32387487 32356045 32276768 32313016 32363857 32304747 32364948 32373457 32345873 32373583 32366430 32324348 32368984 32365968 32284495 32347431 32240536 32313201 32393688 32362464 32311263 32346837 32329746 32385146 32301839 32350903 32312763 32264302 32270592 32325619 32307189 32364364 32327450 32373866 32294462 32307374 32306492 32326145 32339417 32332865 32348073 32281109 32366582 32270497 32381474 32346397 32342167 32386453 32382704 32306397 32333785 32309394 32287301 32353896 32272627 32272808 32289657 32280258 32265459 32339724 32332390 32283264 32298589 32282050 32339119 32376548 32280815 32312862 32359682 32285360 32343294 32394375 32306090 32285960 32310316 32315291 32294014 32240415 32341890 32244262 32297481 32382444 32292379 32312039 32337857 32249165 32303343 32282012 32297149 32292580 32279641 32330892 32323913 32247822 32290907 32319303 32282032 32283883 32271935 32260400 32235529 32291752 32358791 32270794 32343291 32376450 32333714 32324042 32261574 32257326 32296522 32260537 32302081 32234222 32336260 32293607 32280717 32307797 32258818 32327523 32248449 32309262 32284956 32295333 32278956 32280787 32315143 32320780 32363402 32254956 32272961 32281488 32246620 32269439 32310349 32277106 32313037 32285327 32267954 32296370 32290570 32223956 32262351 32311882 32236320 32336625 32337246 32261919 32280868 32269580 32261765 32318145 32238339 32272940 32266555 32252743 32302931 32238276 32287454 32207529 32269462 32269176 32271048 32282045 32254717 32294026 32194457 32323182 32274346 32281844 32247104 32302259 32224063 32257728 32261302 32273963 32263715 32267849 32264325 32316638 32244629 32334541 32198920 32271013 32230385 32227205 32271425 32227759 32314568 32273903 32301697 32248772 32223774 32197522 32353176 32256040 32164051 32267341 32301342 32303095 32222008 32285446 32228745 32256067 32259312 32211746 32214924 32242955 32222533 32263676 32292456 32253492 32211339 32253353 32262415 32220166 32197308 32294827 32270884 32271793 32290994 32247806 32250432 32225276 32254265 32262891 32279745 32196838 32286839 32284537 32219330 32200210 32281013 32237297 32252239 32227389 32302830 32272999 32273276 32201281 32282052 32215180 32201687 32210497 32236408 32231144 32233818 32307083 32256636 32165859 32247873 32278363 32236210 32163192 32283202 32211853 32178702 32223237 32212910 32257487 32223139 32272136 32265160 32269125 32177124 32205421 32211627 32266073 32249557 32191791 32230933 32219859 32251560 32223161 32233249 32277392 32265526 32237095 32185779 32238034 32220103 32197594 32200854 32198994 32231687 32203645 32221273 32282096 32217922 32160166 32142504 32228967 32253112 32191038 32263271 32217620 32245417 32196150 32223288 32225867 32205752 32214842 32208628 32175837 32240969 32160326 32172426 32253578 32230983 32217315 32258481 32235183 32196658 32197948 32228064 32220876 32214263 32206032 32177306 32167940 32184747 32176463 32236548 32197138 32211943 32222134 32206518 32166523 32135357 32205337 32165915 32210486 32181223 32228857 32198514 32186181 32175480 32151141 32172662 32194651 32213168 32180397 32199318 32224684 32137047 32200794 32130355 32236995 32196926 32132392 32269450 32202268 32184172 32205159 32112252 32195793 32156844 32211466 32205290 32191069 32228034 32163809 32248442 32208623 32225223 32145914 32225502 32178316 32143111 32195764 32204086 32197518 32219406 32128539 32199737 32172791 32184222 32145591 32182108 32220872 32175215 32186043 32162736 32182557 32213524 32163098 32200422 32181648 32149268 32131754 32203406 32117181 32102040 32150977 32186987 32123441 32174540 32159210 32130425 32167289 32211587 32151183 32224869 32164810 32201110 32174687 32189062 32132504 32125934 32137058 32214525 32222686 32158017 32180404 32150690 32262715 32095253 32087867 32185270 32122052 32163290 32164561 32215557 32097051 32195528 32201923 32216406 32184416 32166041 32122824 32140830 32132524 32206053 32192526 32191424 32207276 32189601 32147235 32180449 32128381 32258481 32115529 32155752 32122945 32144652 32148620 32151710 32200880 32116671 32135623 32129450 32132008 32111799 32118622 32143792 32123827 32159702 32181570 32142078 32126576 32110198 32126573 32127327 32152219 32132620 32125365 32129482 32120924 32164054 32124213 32150953 32151034 32182429 32168252 32121229 32188650 32112475 32106710 32120140 32104497 32184209 32114178 32145753 32041651 32101204 32174570 32176578 32098917 32169257 32147657 32124068 32140728 32115460 32121036 32111469 32058307 32078541 32096392 32039193 32171598 32119832 32091841 32138937 32101513 32039421 32119496 32102772 32100604 32118339 32186373 32100783 32106128 32098936 32174208 32125549 32091902 32161684 32149032 32117885 32148724 32176031 32159991 32172887 32080477 32192895 32073229 32158339 32091807 32130321 32117166 32069153 32022729 32094063 32129784 32064966 32082630 32057645 32122364 32167442 32144679 32140819 32145446 32074912 32172526 32079866 32083135 32024322 32217470 32155032 32129237 32047115 32108903 32177219 32155684 32071768 32062764 32115419 32094348 32054256 32057291 32123043 32125275 32099662 32124869 32132083 32053235 32110950 32108361 32073942 32104428 32069715 32087345 32047942 32044508 32081779 32077206 32144897 32075029 32077356 32037613 32110958 32099731 32066799 31993763 32060831 32113055 32107484 32105550 32101998 32032901 32097235 32013596 32038663 32096110 32083987 32058835 32066828 32060243 32131756 32116669 32073117 32080212 32178375 32119199 32062958 32050609 32091629 32109762 32066163 32071996 32075160 32149495 32028575 32107252 32099628 32069566 32088598 32099893 32092715 32110032 32033639 32111220 32048691 32029593 32112594 32125326 32107726 32090618 32095052 32054134 32031331 32098031 32081333 32077462 32083761 32044559 32155135 32038261 32049440 32026460 32099679 32074157 32067765 32094292 32048248 32069301 32086956 32050908 32031550 32058662 32018056 32084108 32052599 32072303 32030653 32020893 32012748 32075577 32074447 31967979 32055938 32088100 32066301 32038430 32100041 32052248 32056981 32053970 32057433 32083365 32056225 32024286 32009568 32041091 32037464 32075510 32036608 32115169 32049943 32078882 32036976 32074803 32051606 32023863 32107135 32011698 32063904 32061023 32055355 32060600 31995142 32105478 32079841 32070172 32035513 32013870 32097528 32033755 32075245 32003814 32085552 32030721 32024415 32074163 32033430 32058103 32036290 32031027 32050855 31999022 32041956 32054299 32052127 31987932 31979607 32061472 32018997 32110806 32084256 32025707 31992219 32033478 32081587 31997976 32051959 32054391 31990086 32061906 32068918 32101411 32000561 32016144 32038078 32013320 32029516 32010026 32034606 32020801 32018503 31979739 32091693 31956537 32028760 32028072 32089501 32034239 31972033 32043046 32026267 32020004 32060374 32046050 31928721 32042477 32003870 32009495 32059703 32007407 31995728 32044840 32033182 31982779 32050786 32002532 32078938 32012650 32006071 31923870 32017114 32000374 31991563 32007545 32031016 32008666 32023594 32006844 32032651 32068282 32039458 32033139 31999183 32003442 31974569 32024790 31945748 31952889 31993767 31995610 32003674 31986273 31956351 31986031 32013331 31995758 32036303 32010861 31974112 31978888 31958229 31993068 32001579 31962608 32048289 32007382 32001215 31985691 31998445 31940620 31959920 31979159 32019637 31967728 32021054 31964560 31969023 31968974 31974999 31978619 32087804 32013088 31943634 31986875 31995238 31941810 31992399 32025363 31968067 32026636 31946100 31942057 31981338 31988502 31896146 31953784 32002789 31929479 31980710 32062972 31992043 31890750 31920164 31951672 31993259 31964023 32038449 32006240 31979672 32017710 31962670 32010082 31959677 32017055 31969230 31996723 32036129 31983253 31998886 32008726 31979069 31909536 31894760 32018840 31997608 32025236 32026326 31921097 31994957 31968295 32028906 31934168 31988599 31993377 31903733 31939394 32024636 31925503 31982264 31988410 32018532 31917200 31984669 32009312 31980522 32069034 31944875 32005265 31925188 31930808 31909619 31957222 31998179 31998470 31973388 31964839 31990316 31959587 31958751 31946778 31906194 31951596 31985946 31968161 31948196 31976659 31970033 32031060 31957220 31920393 31880230 31943063 31925175 31885178 31970046 31954093 31978488 31926701 31936240 31938942 31934169 31983265 31944671 31978982 31976484 31931151 31974990 31896546 32040433 31971244 31967988 32000387 31926336 31931430 31976051 31999063 31990294 31959424 31952621 31983375 31965159 31897463 31928687 32022404 31907835 31940200 31909197 31973217 31949865 31967551 31988038 31975134 31910606 31930406 31939143 31931855 31968216 31915376 31959227 31952403 31972410 31923792 31959014 31942090 31933204 31977094 31945630 31966795 31970023 31940135 31993082 31906620 31937512 31946131 31905369 31942023 31958120 31908626 31960268 31888380 31853587 31834910 31951189 31891138 31900614 31913891 31881287 31913414 31939097 31897012 31928414 31980568 31908239 31928988 31960566 31933291 31995220 31937846 31910378 31916826 31900979 31941065 31920250 31965632 31911008 31931718 31949537 31903900 31866657 31934733 32010649 31969235 31892958 31911179 31927406 31943117 31901542 31898132 31911341 31842222 31904890 31953017 31900392 31914521 31875496 31943003 31929930 31876469 31903055 31854463 31925491 31907448 31926868 31916815 31868375 31882537 31902483 31936767 31942171 31899806 31908060 31904128 31878311 31864189 31954086 31880979 31959814 31916137 31951007 31867455 31928182 31904042 31987703 31870017 31885472 31905845 31968357 31929349 31862811 31907284 31916300 31829884 31971471 31911129 31907030 31848246 31920522 31842611 31947310 31881985 31877094 31891760 31912234 31851483 31908063 31830780 31949396 31854674 31901751 31912881 31881152 31907731 31955806 31901843 31924091 31890178 31876253 31847220 31874181 31868449 31911173 31861312 31898638 31858514 31898018 31891414 31893966 31899228 31938236 31888416 31866311 31929363 31969199 31851297 31873659 31905927 31887423 31915106 31878478 31875379 31857208 31879636 31845792 31912254 31844375 31909834 31964940 31894482 31839568 31819033 31897411 31847640 31828602 31886616 31853147 31859383 31866383 31870281 31922801 31897819 31908509 31831496 31892134 31882919 31874611 31902499 31950141 31846835 31876863 31845647 31859247 31874900 31856719 31844464 31843141 31805578 31798407 31885577 31841719 31911785 31913585 31807970 31896947 31828790 31806858 31897807 31842048 31905528 31842293 31898804 31806717 31793013 31892637 31785307 31877561 31913075 31871321 31873413 31835058 31819390 31897760 31819476 31791162 31884813 31851364 31826455 31901544 31852927 31847378 31852124 31832584 31835476 31823661 31878540 31823243 31811772 31822832 31831332 31876206 31838705 31890420 31801466 31785644 31852180 31865265 31820635 31896968 31894049 31841101 31813228 31766120 31853703 31836495 31784955 31819242 31757374 31824485 31810593 31890644 31869685 31767794 31878505 31856135 31715338 31838002 31828619 31846175 31863672 31822358 31833878 31775736 31789235 31871873 31855366 31791882 31779556 31810152 31768501 31825680 31807686 31880058 31849723 31806500 31797962 31818668 31726482 31883979 31858361 31816650 31770473 31864855 31804448 31803578 31772698 31831845 31767392 31892161 31839085 31722421 31781849 31867241 31828982 31797521 31808321 31823514 31795433 31803845 31858966 31739371 31792983 31793068 31820618 31776392 31781911 31887864 31908114 31775201 31762459 31748868 31783759 31852225 31793040 31780373 31783539 31791302 31773557 31817184 31829395 31832131 31754610 31874856 31775825 31832016 31802631 31776069 31806753 31826125 31761741 31759714 31770928 31860709 31822535 31796080 31826803 31813118 31784345 31777463 31814403 31832602 31803907 31715508 31851246 31773891 31859445 31824579 31848816 31775776 31802132 31830879 31711265 31789060 31817100 31778388 31790769 31856731 31776071 31757527 31805063 31824735 31772471 31783015 31719263 31804976 31762114 31808200 31794910 31858333 31817288 31746278 31723362 31752606 31768994 31755366 31720683 31817172 31833195 31706238 31783142 31780004 31818263 31780821 31737054 31766397 31826423 31822734 31804366 31786805 31773380 31776239 31712201 31829324 31726108 31758465 31740710 31738806 31739210 31747109 31774893 31740481 31804325 31750037 31785337 31734246 31745428 31719315 31798563 31816380 31784824 31834485 31776522 31738699 31741498 31733611 31784199 31712800 31763458 31767684 31749325 31740487 31699219 31829235 31791260 31754819 31744436 31708242 31757682 31741275 31810067 31776234 31781328 31792992 31766170 31778666 31787477 31764960 31745189 31744238 31773571 31674006 31778449 31774979 31752643 31738525 31778167 31723310 31786427 31728188 31749282 31780203 31797547 31739919 31729186 31765374 31763558 31717219 31804342 31684945 31717108 31692305 31752021 31722853 31713331 31716638 31741437 31755512 31727968 31745432 31735248 31725750 31728812 31796924 31681235 31711595 31773817 31719878 31774023 31755544 31718150 31735913 31693058 31783322 31768044 31776667 31723408 31744982 31715729 31674310 31740126 31709789 31749722 31738437 31705518 31677762 31716126 31749936 31691718 31727321 31690831 31705352 31793907 31684465 31692062 31700653 31811388 31674665 31669776 31715722 31752774 31692663 31663330 31738885 31726364 31678634 31761481 31649019 31702571 31745296 31775912 31730163 31761942 31733687 31678484 31737334 31765976 31760889 31805085 31722086 31683465 31788063 31759722 31660280 31752981 31753814 31721780 31747752 31681417 31709112 31716371 31731912 31757313 31709932 31733756 31648155 31643647 31695687 31691387 31700117 31690451 31670925 31669213 31674452 31722962 31763598 31720434 31713200 31690593 31599780 31788352 31687440 31662510 31716133 31715166 31713129 31645345 31729696 31707961 31729297 31668381 31677487 31722943 31665808 31743942 31641422 31773166 31716006 31718597 31696618 31693292 31727008 31665995 31731028 31664768 31704138 31675298 31679124 31734286 31749796 31672719 31685594 31704276 31629607 31658008 31726147 31686154 31725084 31716018 31675757 31729908 31710453 31668944 31682970 31642149 31733260 31701331 31638560 31669964 31718035 31717482 31623258 31668201 31668385 31668018 31725483 31671728 31681965 31731283 31658827 31683435 31631309 31646976 31610033 31702654 31643456 31709886 31608795 31662629 31693679 31631885 31659489 31621421 31675250 31697764 31679595 31711063 31626466 31695990 31658762 31654853 31660629 31741717 31653642 31644887 31602218 31595744 31699882 31728155 31682398 31672427 31681106 31617709 31640313 31610151 31602789 31672572 31614688 31671044 31623618 31681059 31669511 31632209 31659991 31571859 31651844 31661783 31645468 31640568 31610697 31658648 31703757 31631906 31632615 31629152 31663344 31611892 31624139 31661624 31661775 31588782 31628035 31679041 31637344 31565140 31656960 31668314 31620049 31598599 31685117 31630972 31638274 31650129 31676690 31708611 31685234 31698876 31620718 31701465 31617430 31599772 31644827 31642601 31653914 31644322 31633245 31671329 31605977 31671531 31656750 31657502 31641646 31672849 31620837 31643251 31719376 31653156 31713619 31682072 31638704 31590097 31633910 31624099 31642480 31602121 31620172 31599615 31569083 31651746 31683108 31599726 31636481 31609599 31612505 31605566 31647006 31647709 31627956 31623601 31642794 31599707 31647681 31602300 31603873 31623712 31569667 31598009 31650009 31607529 31608256 31616797 31646164 31634597 31648657 31592451 31630314 31658794 31634741 31597695 31588216 31682571 31654604 31629795 31634004 31611530 31589288 31612450 31610779 31644552 31574978 31569296 31628407 31625915 31652783 31581841 31585241 31608465 31596916 31655526 31610663 31558914 31602694 31593698 31573371 31557247 31621097 31643733 31582711 31623314 31604207 31563440 31633939 31627697 31622639 31579888 31548409 31570252 31632930 31572888 31571315 31593363 31568700 31623156 31551558 31568118 31557942 31579263 31572295 31621566 31652481 31563017 31599544 31596770 31597984 31591903 31581089 31585041 31633139 31551419 31653656 31583781 31582236 31583600 31629514 31604745 31630455 31555234 31576119 31664686 31556062 31555197 31596424 31628765 31617192 31585610 31585646 31557721 31523703 31618538 31548196 31584636 31565319 31582475 31529366 31568654 31523196 31585264 31593637 31538227 31659944 31614253 31635977 31524925 31621615 31508830 31599132 31588317 31546125 31569292 31534282 31541230 31556907 31575851 31595603 31585319 31570838 31592492 31489570 31571290 31544577 31517430 31583095 31586189 31582999 31501504 31602480 31630458 31574752 31545073 31541301 31558739 31532295 31596505 31571099 31483426 31540095 31551169 31623032 31516392 31588883 31523976 31548276 31487337 31535716 31522107 31521439 31553162 31545325 31541177 31465631 31569277 31538525 31518397 31594038 31585881 31554965 31618899 31566735 31559800 31607644 31517289 31534210 31556069 31530917 31522716 31452115 31538070 31625441 31585899 31559000 31592542 31622458 31585370 31535065 31472051 31510391 31591466 31490129 31571680 31513947 31508558 31564351 31520788 31515794 31542922 31529803 31540127 31524611 31507475 31457325 31531488 31551232 31556083 31556209 31532565 31553807 31507773 31561063 31502809 31533808 31529069 31545803 31478122 31533693 31521069 31533702 31581386 31533586 31489599 31441948 31506786 31563005 31527476 31591286 31498993 31520692 31494899 31537603 31536042 31502705 31511061 31561407 31527233 31539510 31545785 31484606 31516931 31470194 31523076 31528121 31507623 31543389 31521570 31494443 31518707 31562761 31551135 31527327 31556060 31531244 31461138 31527629 31506575 31545213 31602557 31536056 31507522 31516075 31525349 31561190 31486332 31478941 31485686 31546762 31533215 31522844 31488666 31456891 31532507 31517781 31568830 31528595 31578885 31477573 31454320 31546289 31523278 31496096 31491690 31508894 31484083 31526222 31505083 31475990 31510840 31549550 31487282 31493010 31492043 31527921 31554893 31449808 31569417 31493007 31481722 31479611 31452624 31492434 31527787 31451768 31495516 31495413 31581604 31536099 31494547 31475990 31535112 31525464 31460750 31489606 31505871 31526070 31488807 31505284 31539244 31512546 31485830 31548748 31516355 31479459 31474368 31490166 31515525 31458091 31427759 31457950 31420100 31479249 31464062 31518669 31475195 31508311 31526375 31478526 31477647 31544649 31469434 31527346 31476584 31460203 31482315 31523394 31516181 31454819 31498473 31527497 31444746 31494446 31504374 31428866 31488301 31481353 31496456 31525722 31487919 31422331 31514158 31552191 31384449 31511884 31476567 31516721 31552489 31508620 31465436 31488049 31385279 31449582 31481357 31492084 31474290 31466609 31481301 31366868 31415376 31478444 31441119 31450696 31382671 31540327 31432579 31488179 31509961 31383020 31476591 31472610 31469048 31505451 31448700 31493149 31407036 31479106 31415692 31463505 31469865 31510157 31452638 31519186 31500738 31461965 31502254 31445576 31398969 31477124 31454062 31469273 31480872 31415501 31478819 31480767 31472492 31461132 31426071 31441160 31457170 31398259 31454071 31501043 31404661 31482292 31419631 31425325 31455547 31445158 31477347 31486819 31479923 31454457 31423439 31433122 31455464 31453922 31432929 31412186 31470706 31468694 31419115 31468057 31423776 31406655 31447681 31398576 31455293 31454257 31397740 31418184 31421099 31437060 31418617 31353014 31385029 31474567 31450103 31484696 31465505 31428110 31443032 31417905 31350885 31423168 31450330 31447674 31411427 31397497 31454831 31404283 31435525 31433708 31425294 31417960 31466410 31423143 31396650 31381516 31450793 31419270 31435702 31470203 31425307 31443444 31494512 31452757 31486642 31464196 31392357 31406757 31425987 31431526 31386391 31412174 31395903 31416236 31351843 31492285 31379860 31424183 31358250 31412434 31425940 31423081 31353127 31414716 31398471 31412308 31392285 31376879 31426202 31463159 31401436 31398133 31402700 31357973 31456120 31429791 31395739 31427783 31443453 31455252 31351608 31436453 31373523 31413853 31381705 31466252 31370965 31351040 31382601 31404708 31392565 31390220 31398218 31456101 31348992 31421041 31456662 31361156 31332650 31432708 31445322 31345280 31392465 31412948 31440432 31323431 31399353 31389787 31413775 31344497 31395053 31359186 31358329 31407212 31410580 31372036 31398090 31342441 31390478 31434119 31438274 31343577 31394898 31376669 31349195 31369302 31395932 31429178 31366019 31335481 31365983 31397662 31374131 31314090 31374549 31373685 31405967 31417057 31361075 31376870 31379648 31373588 31411197 31394412 31369625 31401638 31324563 31354732 31405352 31334986 31339228 31417818 31449944 31398979 31383461 31403361 31421274 31263885 31384145 31431007 31362292 31370129 31380419 31343478 31412914 31398267 31335431 31329341 31407074 31316376 31357791 31481759 31362849 31387631 31363978 31324490 31419360 31420610 31333729 31294508 31364523 31344109 31357093 31385827 31424686 31344239 31386509 31399444 31347583 31345496 31405983 31381196 31319591 31289031 31417683 31433566 31319233 31376032 31386035 31391855 31349493 31387843 31398340 31393500 31380839 31397722 31372872 31366671 31314168 31413736 31333494 31384624 31371626 31333635 31385788 31279394 31380162 31330053 31325999 31371402 31385910 31308110 31353129 31388849 31386284 31264546 31328041 31300196 31342928 31347091 31333769 31393250 31287531 31362585 31377077 31340588 31376693 31303410 31366870 31269656 31363708 31311046 31344743 31288587 31307570 31352683 31311792 31373628 31353863 31352599 31344122 31315246 31319616 31327706 31346521 31352453 31307638 31309556 31381626 31329083 31294934 31322036 31355523 31366930 31309182 31350639 31313462 31300126 31362862 31354432 31419255 31296808 31405393 31346276 31470232 31298594 31353311 31311553 31333661 31347236 31321113 31281848 31355019 31298331 31327043 31305012 31325455 31250553 31339684 31342775 31299262 31334660 31282408 31325832 31291769 31369504 31379099 31274758 31307551 31317104 31276204 31274269 31303022 31334036 31300653 31249187 31403499 31306272 31352872 31350613 31343223 31365092 31335647 31318563 31204031 31323929 31297688 31327308 31304863 31283582 31356704 31326036 31280471 31218334 31287180 31336328 31310166 31331855 31306190 31284362 31331282 31319165 31270526 31286275 31283850 31381386 31335754 31278598 31298598 31286764 31319871 31265752 31269900 31251409 31320928 31366851 31390497 31296594 31313272 31307730 31209327 31315833 31332069 31317383 31332666 31305257 31214355 31308849 31291189 31271089 31315448 31299076 31206082 31251897 31251957 31279682 31290567 31226613 31289534 31314821 31243500 31245175 31298356 31269376 31385658 31284082 31320314 31248836 31305657 31341701 31259303 31316762 31327787 31335807 31305456 31338123 31353863 31277205 31267574 31302099 31246142 31322059 31271846 31259154 31307906 31263776 31235998 31327163 31256663 31198061 31320545 31297164 31297156 31248983 31283125 31333002 31320817 31247878 31309756 31308747 31260793 31271479 31214653 31242729 31270583 31228509 31344552 31311630 31246347 31274014 31335929 31235101 31276876 31221376 31288755 31233372 31225535 31238699 31244889 31260099 31299758 31308663 31261142 31209635 31254961 31269790 31260653 31215935 31225814 31186710 31269175 31242103 31241028 31269980 31223776 31317060 31230562 31251529 31261523 31226263 31255853 31216660 31199234 31273510 31210180 31263883 31239465 31266535 31314282 31306112 31300171 31256860 31258638 31293306 31182905 31251108 31294523 31235865 31220914 31251535 31231680 31316842 31219481 31234861 31283660 31307594 31245630 31225675 31251557 31218648 31291307 31300658 31305153 31275834 31178416 31214028 31257568 31242182 31269093 31228315 31246375 31248087 31240077 31149078 31258150 31188745 31244198 31260592 31273019 31224852 31226426 31262990 31191898 31261889 31194843 31246169 31223447 31168487 31267652 31244648 31277643 31253168 31195131 31248828 31182462 31254107 31206631 31245695 31248588 31225047 31264166 31233057 31257220 31204632 31186923 31235081 31189399 31207924 31242383 31267575 31251218 31234204 31286674 31222669 31239393 31234224 31206013 31213075 31218969 31159910 31207230 31199536 31220506 31244238 31218167 31216750 31176391 31226973 31269255 31208164 31222575 31210348 31286931 31124643 31241894 31199871 31140016 31228674 31199502 31186529 31256487 31243354 31175396 31279268 31124592 31207859 31151409 31190959 31223895 31266588 31243247 31177556 31190115 31189362 31196695 31274089 31195432 31218713 31224211 31190843 31240369 31190023 31175555 31231695 31243430 31196628 31236697 31201508 31247417 31232242 31195756 31237330 31188764 31175943 31181688 31229940 31218217 31304873 31254648 31190867 31146616 31149704 31193442 31229372 31176902 31122606 31207345 31135207 31200006 31193380 31157096 31150583 31174966 31145299 31170802 31166727 31203220 31236981 31157602 31147549 31202865 31257782 31152472 31185900 31177384 31197783 31136481 31233541 31205311 31217739 31165990 31213673 31132450 31169660 31161267 31172244 31135110 31157452 31198543 31174755 31192302 31233819 31194896 31208383 31212752 31221443 31195001 31164530 31205351 31187978 31143017 31171715 31251028 31149636 31158523 31196650 31130726 31210312 31159126 31174294 31182190 31106156 31213548 31104385 31178425 31166998 31197675 31171473 31133654 31200577 31173023 31120736 31131639 31177016 31206379 31172291 31109386 31179670 31125728 31145601 31137660 31145382 31231893 31114734 31157909 31133583 31134015 31151462 31226435 31139987 31138048 31124145 31140615 31138582 31175816 31157382 31167281 31165612 31126547 31071071 31184878 31175096 31154203 31097952 31129225 31269312 31136421 31070519 31116647 31202948 31112797 31110967 31196644 31116073 31162790 31172341 31166862 31139368 31140812 31111393 31174224 31149277 31114625 31134323 31092068 31134472 31103029 31066732 31142776 31203293 31129573 31148218 31172542 31111162 31146507 31144957 31044490 31166127 31087819 31153800 31121519 31138805 31138387 31091721 31102363 31145303 31117552 31112131 31131368 31147812 31103372 31167625 31144251 31091017 31166460 31112666 31059182 31063778 31160864 31132517 31184984 31069635 31144472 31127604 31089825 31076168 31123651 31129660 31115719 31131155 31163990 31107398 31126678 31079903 31170930 31148613 31062481 31151864 31129783 31090773 31156126 31083826 31137096 31140546 31139085 31170144 31111689 31100981 31157403 31113814 31084006 31164605 31130475 31087135 31132801 31067710 31104891 31073808 31191104 31087877 31051465 31079719 31129874 31083055 31095823 31137707 31079448 31122428 31050291 31089323 31101647 31078602 31080408 31121091 31085040 31144663 31114029 31123790 31108199 31132883 31121834 31140848 31077198 31101366 31101230 31074178 31095687 31151472 31120478 31178820 31094240 31104229 31036456 31138215 31132593 31148202 31153712 31058884 31087441 31094686 31051223 31122643 31101825 31115645 31081517 31107515 31128005 31045264 31073544 31091720 31049813 31153009 31086600 31049199 31081719 31123240 31124516 31149143 31054412 31076335 31142509 31081306 31086809 31031560 31015886 31098392 31105928 31003279 31079606 31047844 31086782 31035175 31017419 31053327 31103316 31066069 30979739 31071511 31123050 31060639 31082232 31097541 31034360 31097489 31041531 31080137 31063365 31035160 31090241 31047077 31097229 30990479 30975761 31102202 31071523 31018805 31018016 31141191 31004043 31064292 31067481 31135935 31058303 31035205 31084419 31046623 31017162 31060031 31057318 31083536 31015800 31120444 31044585 31035158 30962035 31008754 31043415 31078762 31071938 31087861 31070094 31092903 31020152 31049374 31043816 31032770 31083965 31000992 31046943 31046265 31071447 31029934 31108994 31028722 31057387 31052859 31050027 31015360 31005655 31087579 31091815 31077771 31014627 31100649 31134425 30998469 31034539 31034840 31105176 31094526 31019113 31032732 31057682 30973661 30992337 31027954 30997165 31071300 30994249 31047989 31021683 31036928 31044162 31007801 31078867 31061683 30997069 31004104 31031690 31048052 31006910 31003572 30987117 31062262 31116056 31018925 30989543 31056371 31017657 31017746 31043563 30987315 30986004 31006233 30959042 31048119 31085284 30973878 30961793 31011354 31061239 30996950 31027036 31018424 31011579 31011890 31000602 30965482 30966264 31001520 30958676 31029806 30985035 30948402 31018453 31014345 31017095 31028979 30982345 30998996 31037817 30975452 30986433 31058664 31026700 30984801 31008376 31041162 31037370 30985872 30976728 31046644 30984373 30994078 31068437 30998759 31017019 31016004 31022008 31072034 30944434 31058599 31039784 31010873 30998288 30960862 31057483 30914602 31045452 30953931 30925721 31002261 30953490 30991906 30980235 30986244 31014789 31012842 30983257 31034642 31034617 30996431 31008491 31013544 30957142 30976952 31019083 30958679 30994185 31013529 31009138 31036184 30991329 30975764 30975721 30971281 30968037 30975662 30981869 31051057 30966137 30953113 30998028 30979693 31001113 30966609 30953103 30947974 30975811 30931995 31031335 31048989 30984412 31028491 30956065 30935890 30969016 30970126 30946104 31027915 30945097 31017611 30932683 30962166 30978478 31003536 30956893 30925693 30858628 30957264 31020211 30948384 31005232 30998220 30853744 30933003 31005693 30988810 30985403 30953830 31017779 30975986 30981829 31030798 30918672 30913190 30942822 30971889 30901632 30969859 30940987 30989402 30990372 30967025 30962789 31041319 30902299 31041869 31039960 30971176 31042427 30995404 30971043 30962837 30964723 30963371 30946057 30986668 31026544 30942838 30922906 30914823 31053729 31023984 30877698 30951993 30983379 30971239 30912581 30945253 30948606 30905575 30979386 30928095 30923625 30953492 31027948 30968266 30961280 30959339 30942063 30881806 30975907 30965596 30938697 30962527 30921979 30873911 30962141 30911040 30940776 30973985 30928530 30995432 30947296 30959557 30973967 30931164 30937218 31071527 30915825 30941991 30947231 30948686 30928525 30942152 30963965 30975128 30937561 30989867 30910017 30882563 30951682 30938996 30961986 30970592 30921970 31019935 30934592 30936666 30906978 30911278 30910789 30941092 30985810 30953384 30930597 30870901 30973617 30921084 30967665 30936634 30956786 30944623 30970724 30959603 30850318 30936867 30906555 30945221 30928586 30900497 30899560 30944163 30947348 30961681 30906731 30943087 30986915 30878881 30900823 30915381 30854213 30904638 30895419 30918469 30943247 30900485 30923776 30950756 30892770 30899656 30977511 30953217 30898012 30939516 30910123 30849398 30907231 30959824 30870378 30898920 30908068 30928971 30938069 30943748 30814593 30956766 30998986 30914942 30892493 30932275 30900559 30959154 30953423 30880375 30870396 30914005 30945562 30917352 30892500 30881758 30952074 30899109 30912111 30904107 30925107 30893402 30855413 30865218 30891475 30888475 30900861 30927220 30908444 30847944 30920532 30815492 30870769 30912369 30962136 30928393 30895626 30935596 30949099 30946459 30897055 30885943 30878382 30917574 30929570 30870660 30902114 30898475 30877033 31015975 30827835 30829548 30885791 30955094 30880699 30888177 30900713 30838063 30880345 30871904 30838286 30859306 30937880 30841787 30907384 30891988 30945582 30858925 30873069 30907568 30834827 30930170 30893693 30837563 30880908 30852712 30865140 30823385 30900090 30881430 30889258 30899447 30919436 30915843 30843710 30895018 30891210 30873735 30828640 30798964 30825529 30884374 30812142 30915565 30896651 30867778 30890016 30900117 30874947 30841854 30821484 30810200 30959823 30822341 30903526 30853350 30835558 30925188 30904419 30876106 30849563 30929330 30937868 30867557 30884481 30798814 30829328 30816367 30841701 30907680 30910935 30862972 30862811 30932820 30854953 30852916 30892568 30842089 30845998 30915315 30906826 30841287 30917426 30937172 30891355 30943975 30866113 30829485 30865511 30860102 30883658 30833617 30841324 30845880 30795639 30784004 30844936 30817537 30805501 30831939 30864784 30821387 30788322 30867978 30833716 30834699 30847520 30820686 30817749 30843550 30832359 30900667 30875049 30842711 30933851 30782192 30892842 30864537 30805764 30870674 30843703 30810875 30842738 30824742 30782942 30886307 30917283 30841974 30851244 30800553 30829567 30848256 30907469 30845980 30886517 30823654 30833889 30856300 30840341 30893662 30874933 30854249 30896019 30814176 30827582 30848788 30772141 30815442 30810974 30840102 30807077 30772828 30872543 30793470 30829230 30876934 30868032 30849745 30816831 30838411 30836431 30813717 30747984 30865768 30742360 30848300 30792837 30793358 30830454 30841091 30840901 30854025 30851082 30807992 30826124 30841460 30827397 30838842 30791615 30774163 30859272 30861333 30810379 30823427 30827648 30802638 30798723 30798347 30810780 30803258 30834737 30853894 30780416 30856781 30831265 30823803 30813432 30849476 30795198 30880896 30769097 30753910 30859697 30781860 30816965 30820007 30873681 30851758 30828520 30806633 30815288 30781116 30730983 30760391 30781852 30813656 30792711 30777561 30753406 30815548 30786154 30826124 30736850 30818456 30782837 30778237 30815284 30775514 30792553 30773124 30869328 30807608 30780019 30803841 30762274 30762300 30853518 30780799 30831971 30795080 30790582 30773436 30785822 30826002 30807973 30821535 30829024 30768577 30834312 30747729 30725979 30804133 30748168 30781460 30807215 30791831 30739121 30818680 30778504 30799273 30784116 30843550 30834514 30820048 30845874 30806769 30781711 30819209 30773329 30804947 30766126 30754967 30815118 30724389 30794215 30762504 30777731 30855509 30740854 30748555 30768682 30762380 30773988 30768412 30761790 30787010 30831988 30752638 30769208 30761007 30767162 30731173 30752274 30813435 30742606 30761057 30802387 30749315 30769919 30747591 30793827 30731214 30811803 30754656 30726738 30763461 30720186 30735889 30775293 30763873 30799185 30716398 30731859 30741974 30776840 30752890 30720530 30741814 30747660 30712634 30795215 30745105 30783375 30792930 30756210 30827106 30778202 30710808 30715038 30703682 30725835 30720229 30719255 30719967 30729073 30754240 30734087 30738649 30776622 30745634 30764151 30752164 30787873 30759447 30745768 30695578 30753876 30759075 30751925 30757663 30766891 30757673 30710775 30794529 30739840 30722697 30724214 30729266 30709951 30740907 30693375 30796351 30757245 30745800 30775525 30753462 30724717 30741828 30712920 30834663 30740686 30750299 30723333 30747303 30745888 30700143 30748235 30726865 30759708 30722479 30822864 30648049 30718408 30718438 30743739 30742454 30734329 30724553 30750834 30693293 30756970 30728805 30700462 30728780 30778551 30693497 30719289 30719616 30717856 30686380 30714498 30798253 30713556 30730062 30708616 30677800 30717140 30691900 30749892 30762055 30727963 30673775 30697574 30697787 30689894 30676057 30718015 30651877 30727439 30704583 30652388 30774669 30800270 30734023 30748289 30724947 30748357 30652144 30691461 30657159 30657180 30734529 30718978 30683339 30775145 30731078 30681596 30736119 30718533 30713390 30727961 30680302 30778716 30711329 30721609 30709785 30724267 30729805 30669194 30752065 30727502 30738966 30738183 30649780 30698700 30756904 30654934 30743244 30662439 30699342 30757779 30724296 30658434 30672370 30725730 30702389 30756358 30628852 30700918 30718535 30699991 30736008 30713566 30714795 30656215 30683052 30730009 30734083 30711655 30696543 30666963 30638984 30739361 30707080 30679604 30679674 30694139 30706311 30685824 30705562 30592598 30640974 30617942 30658029 30641653 30734127 30613658 30669331 30650155 30644544 30706043 30732268 30639410 30703123 30665870 30608619 30695188 30731543 30628587 30691699 30706092 30715781 30695574 30651298 30658758 30778813 30633358 30717453 30630582 30663069 30696586 30661044 30666114 30693758 30676702 30677134 30700998 30673337 30641378 30614241 30704767 30757640 30650484 30666125 30707597 30690257 30673606 30685024 30656777 30621257 30632733 30638639 30674850 30717145 30655777 30655514 30672253 30748179 30655094 30609593 30658988 30675828 30606989 30640640 30695740 30630338 30640654 30600905 30630488 30681404 30582358 30647598 30585755 30673448 30631944 30574975 30658162 30655755 30616169 30584039 30624421 30672022 30611416 30687483 30665708 30650978 30684334 30711177 30620131 30660532 30672621 30610931 30644423 30625961 30687163 30605495 30650017 30684405 30585669 30692538 30654763 30660256 30662287 30630904 30626956 30609611 30596922 30660587 30647803 30608927 30694561 30634772 30650490 30609884 30668354 30641600 30569585 30664606 30624067 30620202 30642893 30549902 30612455 30596284 30730539 30608607 30614207 30557159 30691297 30557768 30615998 30657159 30647252 30634341 30548473 30651038 30630680 30568834 30598478 30548857 30638083 30576725 30600737 30661340 30590979 30610787 30558940 30626939 30654241 30626770 30598590 30564833 30604843 30678532 30630789 30634797 30624174 30540573 30579924 30600896 30611146 30627314 30616392 30624201 30633554 30659544 30577466 30630153 30597620 30623843 30558783 30581874 30632056 30582600 30624678 30578466 30570997 30527751 30576825 30625460 30670386 30675282 30599885 30659976 30613415 30513064 30579183 30553798 30562237 30585021 30588874 30584101 30541754 30578418 30564815 30628426 30611538 30643254 30617234 30617602 30555261 30595401 30568960 30567148 30588980 30570754 30625235 30564280 30569482 30639664 30641445 30570872 30555201 30614288 30596685 30598414 30598516 30576203 30494231 30580105 30647256 30591632 30529485 30630143 30553514 30561248 30528517 30613042 30547656 30540112 30607722 30542794 30566681 30579849 30634871 30583921 30556157 30587226 30507436 30567284 30613767 30565956 30638480 30597256 30585800 30550099 30575842 30612157 30585455 30552013 30525610 30579227 30600770 30580175 30513473 30616714 30546814 30618124 30639390 30577009 30554704 30573340 30502693 30608759 30573103 30525330 30567924 30565459 30646391 30566861 30557717 30567241 30516731 30586348 30576344 30536571 30489016 30567877 30605270 30554428 30603470 30595483 30529022 30535465 30482587 30596419 30499062 30590856 30588219 30621551 30573586 30583422 30585724 30583551 30580476 30495365 30499668 30511933 30571602 30534178 30473159 30551222 30588175 30544873 30586382 30497087 30506720 30480960 30565357 30564762 30477998 30591754 30537221 30518970 30568439 30562794 30533926 30592557 30582633 30510133 30557883 30540549 30530374 30519078 30541250 30576839 30494989 30522004 30578515 30559880 30490587 30524479 30531958 30505003 30558261 30485740 30573207 30511399 30552552 30584951 30499665 30557318 30548218 30505984 30513781 30460667 30523135 30537674 30527039 30534275 30566484 30442469 30499879 30589513 30519318 30564782 30487604 30554436 30559314 30578381 30576150 30516729 30475588 30526542 30508265 30550068 30540017 30512900 30574813 30583463 30462909 30576260 30522064 30547223 30526091 30510554 30522145 30586187 30586979 30478289 30503717 30559840 30532608 30493778 30554052 30474105 30556537 30509054 30518282 30501474 30556111 30441333 30514758 30494348 30531914 30526359 30535677 30453517 30519544 30491031 30499809 30481582 30531126 30492376 30541548 30474037 30454286 30492946 30503103 30473711 30516835 30506639 30499760 30554840 30477118 30525860 30441481 30571937 30507271 30488970 30487359 30487199 30510424 30535648 30472137 30509278 30504337 30524895 30524731 30527848 30548224 30507226 30428279 30465585 30531607 30506427 30488711 30482655 30453594 30539159 30491508 30430667 30502946 30521287 30537129 30492639 30449696 30463510 30442971 30493637 30569129 30410073 30489461 30465211 30490993 30426633 30491112 30484227 30506990 30434644 30532788 30526620 30527227 30477212 30499674 30429123 30449298 30559521 30463030 30510932 30507125 30465714 30474743 30510021 30508799 30456175 30460366 30463489 30491663 30423922 30477147 30516821 30437976 30435204 30451949 30497883 30463188 30478918 30455403 30442566 30507376 30354047 30514450 30490964 30453216 30443724 30428566 30471198 30451667 30515090 30527809 30401120 30479375 30462876 30381453 30462965 30500430 30430895 30520669 30479777 30480827 30509725 30409319 30494038 30476214 30462197 30464043 30438258 30504956 30427135 30447913 30455464 30454319 30436972 30437374 30449054 30482967 30474533 30431623 30444708 30468496 30483631 30434493 30423690 30430720 30505612 30429778 30471022 30427829 30385426 30400832 30459360 30439755 30403119 30445647 30426205 30472852 30454359 30394213 30441367 30453836 30466429 30432702 30422513 30457067 30444238 30434882 30362055 30444384 30403579 30424599 30387832 30388805 30380333 30402264 30440219 30430133 30407734 30506713 30474152 30416291 30479739 30393319 30479597 30419541 30372567 30410283 30363822 30505071 30431524 30413893 30443470 30485045 30488642 30420562 30434614 30387404 30408657 30390609 30388401 30447258 30454643 30424226 30382219 30414497 30382918 30427811 30403401 30437389 30395309 30363916 30514136 30440903 30487470 30512038 30438469 30414691 30429790 30390891 30377037 30377485 30446222 30354064 30360213 30414937 30385938 30462355 30402326 30446861 30437807 30459257 30435530 30403570 30413171 30402214 30391291 30443187 30416558 30375869 30389156 30418963 30418541 30438910 30419566 30451828 30412002 30458573 30402315 30378311 30316869 30434403 30456747 30411061 30460439 30374276 30368410 30384320 30436005 30460347 30344769 30376946 30362507 30371814 30394790 30329414 30391159 30487338 30443300 30388836 30336457 30437096 30393581 30413443 30371137 30421708 30386874 30352802 30421976 30439121 30417174 30344896 30390568 30448008 30426882 30389639 30428462 30340894 30433620 30399321 30393481 30457169 30398441 30389411 30412862 30313532 30438288 30345277 30365620 30367346 30315656 30432061 30359333 30382703 30418363 30396886 30391505 30401346 30393470 30329659 30393347 30373554 30347480 30395376 30362862 30362808 30345113 30325185 30331262 30382666 30368959 30415598 30344764 30424475 30404768 30365395 30413117 30367203 30404073 30325747 30313990 30428295 30383976 30329633 30377074 30358495 30372397 30414746 30379486 30385269 30317919 30336266 30393284 30378889 30334892 30327513 30319725 30359049 30327725 30347313 30344457 30365341 30339258 30398249 30299858 30368735 30356027 30351816 30353833 30357135 30380580 30316154 30361057 30450855 30355980 30387500 30382339 30368235 30410298 30374051 30315363 30325730 30320913 30360951 30370040 30372957 30332710 30288452 30408608 30366301 30367897 30309523 30374025 30326156 30363344 30347262 30321963 30294563 30272188 30309611 30329468 30314862 30397686 30337237 30369697 30280979 30333753 30353693 30319753 30356166 30312292 30406038 30345942 30304244 30364529 30317365 30355425 30356027 30336703 30328048 30401003 30336665 30281926 30348953 30294488 30292171 30304063 30316194 30317713 30319897 30315713 30302948 30285652 30360440 30309802 30286816 30396507 30330319 30348304 30342146 30357870 30382891 30344502 30347187 30306019 30325746 30308488 30312832 30343778 30387039 30300626 30301720 30363348 30282535 30319188 30324600 30367773 30248458 30267791 30336031 30339585 30263722 30345849 30311704 30332437 30321871 30293542 30344566 30297945 30304671 30340589 30293053 30354843 30340682 30306931 30342420 30303806 30333478 30327116 30269170 30315649 30301859 30305546 30260191 30267848 30267918 30385618 30299567 30316913 30295258 30288811 30271150 30271413 30289981 30238851 30307860 30326169 30307667 30337620 30372371 30284059 30271297 30318841 30253982 30349665 30287466 30252635 30328516 30311439 30299307 30234081 30279557 30241881 30316317 30320960 30341888 30281449 30285585 30237926 30306806 30279019 30254664 30310697 30255587 30268660 30315296 30362585 30267924 30245509 30251874 30335259 30356307 30244732 30316531 30344590 30312615 30328377 30225261 30281787 30259639 30266993 30258791 30267198 30281553 30278375 30247610 30265573 30304049 30278592 30286123 30307245 30291334 30301461 30272670 30248695 30352226 30284613 30267965 30255967 30261369 30231411 30302482 30278071 30237104 30292943 30265887 30205828 30309659 30233340 30262582 30278944 30235623 30308901 30248703 30233441 30279450 30250524 30222644 30274066 30298381 30306244 30225244 30275380 30246426 30263432 30245781 30319057 30282022 30277516 30342221 30241722 30311950 30209386 30206208 30258228 30255834 30247037 30242801 30217919 30277061 30278268 30233517 30210755 30239336 30225042 30260699 30281220 30345997 30317014 30234684 30243158 30306681 30321467 30231520 30269786 30250931 30289607 30277298 30197249 30316756 30272214 30200692 30271344 30250814 30230988 30234077 30241587 30181640 30231980 30241795 30249235 30257469 30286159 30268822 30264983 30241002 30186375 30269668 30246111 30244400 30293410 30170444 30280647 30227852 30219947 30280448 30263151 30263119 30286366 30215571 30242925 30247324 30328267 30240950 30268601 30306165 30233389 30185754 30175600 30171091 30224785 30248766 30160818 30184393 30251085 30291568 30246475 30275971 30201456 30234055 30172298 30235780 30279340 30251805 30256771 30248779 30258413 30272199 30255101 30257722 30212188 30230496 30316925 30174940 30218018 30212874 30216714 30183098 30285348 30230189 30241331 30213052 30155669 30237022 30218095 30241177 30196871 30204967 30234700 30181463 30239566 30162360 30183751 30248950 30261619 30208263 30230712 30172396 30139643 30222086 30256055 30207963 30136251 30205390 30228416 30169919 30201078 30257065 30208248 30194417 30282630 30220579 30181182 30195448 30158941 30238664 30129597 30227530 30204258 30213750 30218074 30179056 30220472 30195549 30179760 30243765 30185679 30247877 30200103 30153305 30185950 30218512 30240938 30241345 30245477 30226855 30204132 30231968 30202537 30182861 30153885 30189172 30199185 30122318 30229589 30186427 30199932 30223644 30280931 30175682 30246671 30188408 30231086 30178737 30160089 30208568 30154810 30207151 30154863 30196726 30174965 30180474 30138609 30203802 30140631 30164953 30169037 30140226 30184474 30208103 30205545 30180660 30220881 30201537 30212420 30178452 30171105 30182816 30165142 30236653 30181879 30208775 30184454 30177242 30205202 30176181 30142879 30106588 30155312 30168031 30140634 30232220 30154675 30216336 30151844 30224883 30143816 30184096 30219211 30193779 30162338 30169937 30199589 30140347 30166800 30139325 30165178 30138086 30142880 30143687 30150603 30160969 30128483 30196127 30143702 30177969 30132774 30160254 30173388 30161410 30199176 30118829 30160843 30166523 30174023 30154786 30088456 30163131 30184738 30143180 30164431 30169175 30135774 30075572 30198835 30161248 30174048 30155731 30165324 30158734 30142443 30103873 30087486 30140039 30128151 30169030 30169065 30197195 30118064 30153799 30184375 30050098 30221764 30148841 30123724 30146316 30148306 30140487 30125589 30078196 30175542 30180227 30169916 30164037 30143745 30077824 30166433 30095127 30170630 30138747 30178579 30091624 30143294 30134087 30205390 30132121 30179133 30139933 30082068 30134133 30130829 30142860 30138217 30143885 30151162 30179886 30096263 30132517 30099750 30098976 30092208 30098317 30167443 30157034 30095099 30128192 30164809 30161685 30138304 30105416 30110083 30100712 30160956 30082313 30141768 30101835 30089743 30036576 30123657 30145964 30174556 30149547 30167769 30098962 30135801 30117730 30060641 30097770 30152726 30125226 30150321 30118918 30105676 30057179 30109294 30100217 30154494 30117632 30103923 30080208 30094532 30056577 30068865 30115583 30127083 30093488 30113427 30050517 30053629 30115668 30052552 30170856 30131983 30109013 30123863 30145121 30107378 30077906 30120078 30100510 30124675 30094965 30112874 30099127 30145110 30048876 30087139 30055889 30111216 30063968 30043901 30095630 30127260 30075158 30081742 30121411 30144164 30067058 30090988 30139962 30041909 30090034 30092610 30031422 30106033 30119804 30158019 30031462 30007503 30136976 30138639 30079548 30121953 30079760 30040724 30077620 30098449 30125127 30158492 30054165 30169446 30093736 30101675 30098439 30054880 30100032 30068623 30055492 30091224 30077025 30053409 30067674 30032172 30089448 30221587 30042009 30028626 30163962 30075994 30147807 30113837 30012258 30056613 30066997 30083687 30052235 30106457 30095399 30051735 30085110 30045768 30105536 30054366 30041335 30083252 30032559 30078021 30018751 30102857 30061027 30027542 30059873 30051239 30024908 30054299 30099378 30037735 30092957 30083760 30045789 30053251 30054185 30063297 30053468 30076369 30107929 30082744 30115890 30018193 30104857 30090443 30098791 30063951 30046613 30081410 30062881 30011856 30121114 30151969 30034781 30091497 30018754 30073226 30020801 30084478 30074814 30073641 30022741 30062325 29980239 30081135 30031763 30066242 30086990 30054452 30031043 30078468 30019638 30075174 30045891 30063345 30006729 30073643 30028517 30093629 30043765 30063166 30073209 30105189 30080694 30106304 29978297 29993866 30065783 30099082 30047559 30009970 30024131 30028581 30018434 30009982 30003198 30034512 30031021 30053562 30104703 30072074 29993358 30021828 30039745 29969547 30080325 30018131 29972492 30002893 30082122 29968084 30087015 30076407 30045305 29993776 30004976 30068621 29993355 30002869 30017340 30005862 30032724 30066695 30030171 29989484 30040112 30117531 29956470 30008606 29951602 30017570 29991513 30031660 30017519 30016829 30031631 29958124 30101854 29979896 30058935 30002279 30041220 29927239 30000390 30002446 30017840 29993037 30014013 29981324 30014952 30047028 30004844 30029220 29991677 30006561 30012720 30038956 30032176 30020083 30023978 30026097 29979594 29969777 29975518 30014631 29965080 30060852 29980964 29989282 30002821 29944734 30051506 30019090 30043865 29986403 29979209 29989946 30017148 29994419 30016130 30062897 30017222 30026531 29979925 30049800 29926409 30018962 30019476 30006636 29978616 30036889 29926874 30012697 29919849 30033940 29948082 30019229 29954919 29995718 29975380 30045323 30028689 29987167 30021751 29996852 30012376 29947260 29941752 29964738 30011302 29968865 29969962 29929943 29957709 29969896 30084810 29947789 29973460 29983520 30002264 29950987 29936389 29980149 29978259 30084746 30000281 30005490 30013476 30016813 29991620 29958693 30001930 29910261 29972451 29920225 29948548 29981601 29995380 29968501 29913273 29946317 29929928 29990354 29973314 29934974 29948075 30021557 29970821 29939458 29916533 29943326 29904655 30025723 29969541 29919808 29921504 29996811 29929733 30038233 29899633 30008521 29949903 29980553 29981277 29880357 29974332 30023090 29935459 29945822 29984616 29979703 29990909 30073194 29998665 29965551 29978487 29968882 29917875 29913359 29976180 29934810 29939234 30020322 29950197 29975677 29966288 29976827 29989685 29995230 29893565 29979242 29889699 29968923 29939097 29948500 29901256 29906904 29891556 29913617 29931099 29875267 29969093 29934305 29928511 29991091 29975008 29940996 29896012 29920740 29938281 29938972 29942992 30044259 29986724 29935464 29939853 29939161 29944488 29998873 29904945 29931130 29909672 29921634 29973319 29939190 29943388 29924729 29960001 29947121 29939788 29938964 30021740 29924259 29876720 29957847 29945844 30002600 29908074 29896089 29929474 29944729 29958915 29984812 29942304 29920283 30010266 29989098 29899911 29928573 29928493 29960455 29987027 29914067 29951578 29912712 29931157 29911514 29920591 29885227 29919318 29870934 29898472 29851473 29959830 29927094 29907415 29929278 29912415 29876013 29954284 29969787 29886926 29914759 29909365 29925810 29907105 29894034 29877277 29954756 29904744 29957118 29893043 29940217 29908316 29963768 29896960 29943016 29892879 29957954 29920264 29889727 29903034 29893913 29873882 29933561 29948697 29902239 30002799 29943979 29934525 29858136 29890955 29916241 29915559 29902120 29904831 29973151 29871921 29926891 29879649 29881501 29927359 29908477 29891149 29886567 29905668 29878711 29919365 29910912 29819388 29985039 29948872 29879968 29940442 29913807 29900950 29965008 29957563 29896385 29876893 29889672 29906685 29916665 29951257 29895429 29854156 29974087 29914398 29900097 29899191 29879452 29910203 29914942 29849280 29861366 29835160 29844575 29872364 29930461 29921299 29864603 29836789 29917669 29890804 29894684 29966506 29898118 29839935 29877819 29933084 29868165 29809222 29885839 29893785 29889372 29885980 29881766 29895587 29853726 29874632 29838069 29849991 29849649 29923036 29861034 29913647 29924452 29907626 29824137 29878466 29834653 29895444 29885702 29884587 29871915 29879903 29881114 29877544 29896875 29906683 29915334 29883656 29847326 29912025 29813452 29855509 29845992 29860286 29829155 29887227 29900838 29879440 29848238 29892495 29867933 29794260 29866125 29818466 29826525 29874578 29859753 29821811 29854916 29874249 29863118 29828664 29794253 29819145 29839856 29865994 29833457 29922053 29884809 29850183 29831743 29857996 29882204 29916558 29799355 29776187 29837384 29814832 29861616 29867651 29864810 29811354 29826629 29833253 29767259 29880110 29877568 29831469 29882022 29834420 29921012 29795573 29815991 29868613 29849147 29879692 29842527 29826974 29792529 29854975 29855594 29847382 29840648 29813024 29829328 29808744 29724014 29829595 29825923 29883813 29812856 29863015 29793418 29792200 29871040 29810574 29809826 29835760 29828494 29825692 29771027 29841926 29835790 29852114 29799690 29809024 29883093 29883949 29790680 29841454 29847853 29817267 29825788 29854081 29850251 29805167 29803064 29887038 29833671 29843190 29804881 29774048 29855068 29959212 29844269 29799104 29821538 29819339 29780683 29778180 29858503 29789181 29861121 29808479 29820806 29836697 29890608 29858503 29783038 29754983 29832832 29799763 29795515 29834045 29813641 29839770 29909992 29809371 29835932 29800762 29822066 29818337 29771450 29761237 29809788 29766850 29750808 29841192 29796066 29815099 29831962 29793352 29838744 29813953 29815988 29787076 29792859 29783978 29824351 29825440 29786453 29861171 29777911 29792351 29830314 29768299 29866062 29779015 29812822 29756985 29792336 29821732 29798757 29798020 29833489 29811582 29787197 29773704 29823217 29735763 29826928 29772773 29810830 29761854 29767091 29846159 29819169 29857403 29833580 29803411 29772418 29764684 29733249 29782308 29864154 29778263 29769918 29812042 29821860 29779434 29843517 29804489 29735863 29754166 29840993 29709969 29818163 29841273 29815340 29789070 29774200 29848754 29832667 29712834 29788299 29790659 29724082 29793863 29776941 29744588 29766328 29809005 29823024 29752667 29745590 29725094 29767106 29750230 29804695 29778996 29788576 29790651 29791944 29776753 29780737 29775009 29749915 29743810 29756394 29810952 29734860 29810710 29788502 29766395 29825326 29809060 29743599 29755536 29809883 29767840 29829827 29747417 29791013 29770362 29748753 29799429 29804705 29732830 29738869 29782237 29786359 29761590 29717345 29819284 29761457 29776301 29735567 29747111 29829641 29766506 29798073 29727662 29666177 29797960 29684967 29774800 29825344 29714149 29721687 29746079 29776471 29761803 29730630 29766200 29805697 29730678 29683781 29742534 29751179 29776790 29727630 29745384 29702899 29780542 29797823 29711622 29734471 29758453 29692069 29739939 29755011 29749398 29761459 29714876 29779528 29717916 29723507 29687369 29719726 29725124 29679770 29799798 29799942 29729299 29682856 29778280 29713200 29715394 29682862 29724806 29780752 29764066 29782955 29749010 29801185 29706214 29728566 29744689 29770025 29793088 29680403 29696889 29717435 29722145 29747072 29720171 29720889 29771162 29742755 29690502 29749538 29647184 29690999 29734018 29776677 29707021 29716204 29734582 29733400 29754268 29707368 29754583 29664808 29718573 29710020 29754869 29744105 29767694 29715831 29739601 29743395 29743703 29723021 29718393 29756640 29668445 29704098 29717184 29683085 29754879 29668892 29715216 29704444 29758162 29720391 29713586 29697227 29690650 29722844 29696152 29712828 29679385 29733103 29712083 29731173 29772154 29673518 29688417 29817040 29652391 29667233 29741126 29743103 29683310 29629533 29694936 29719050 29685096 29725515 29707880 29739469 29761138 29742566 29761499 29717441 29750772 29732990 29686340 29704933 29735007 29732240 29710170 29677257 29680676 29723421 29708869 29743706 29723242 29679967 29677753 29669596 29703251 29702629 29680574 29711815 29704484 29700153 29700547 29700482 29638396 29764261 29662121 29695335 29731524 29735213 29687246 29740029 29714641 29668095 29662882 29709209 29776454 29709259 29655817 29678157 29736208 29705603 29699614 29663105 29715551 29649799 29641177 29679386 29734960 29670082 29684564 29727938 29677239 29652028 29652874 29680058 29672266 29704759 29673817 29660390 29653288 29646681 29699939 29669656 29648115 29612658 29664373 29727906 29663480 29659222 29702951 29691223 29623290 29681676 29630318 29643983 29622020 29680858 29710372 29667480 29668002 29720974 29672768 29643004 29686465 29694264 29653422 29611856 29682601 29614627 29670622 29681005 29696382 29721422 29609574 29686994 29674829 29695892 29610140 29641146 29685125 29613566 29652847 29681976 29650267 29631763 29635306 29612377 29688244 29653890 29679609 29638144 29635757 29620181 29597689 29640481 29663460 29644107 29678256 29619535 29619426 29670354 29597102 29618839 29639343 29691138 29635979 29655999 29690332 29636081 29691405 29639520 29672194 29622001 29664160 29671139 29669289 29639373 29701549 29647851 29636161 29596565 29648952 29667250 29682378 29591061 29610655 29652822 29670668 29619160 29659712 29601322 29651479 29636118 29648147 29578871 29583139 29565814 29656356 29626389 29716254 29649110 29661046 29666001 29637119 29663885 29704645 29609258 29641166 29573177 29620546 29685193 29673313 29583296 29598237 29641303 29590074 29649194 29628333 29627789 29600033 29638990 29633488 29600237 29570309 29616561 29704206 29619247 29653551 29515382 29670662 29616177 29563546 29649133 29572306 29665425 29615526 29646244 29551357 29596475 29625747 29617153 29584378 29628589 29594290 29577854 29598381 29607882 29662997 29600384 29591110 29618527 29624374 29558768 29632246 29563804 29595880 29563035 29591366 29634616 29634221 29578905 29630295 29636884 29582767 29601150 29609536 29673344 29613246 29628479 29554401 29582141 29591342 29625511 29591555 29605151 29667314 29575337 29574520 29614501 29573947 29596263 29611500 29499608 29565506 29563692 29558665 29620645 29514349 29604952 29583898 29546317 29538504 29545586 29659160 29585287 29634058 29585465 29634137 29570157 29567637 29613169 29528089 29548377 29570400 29552178 29555347 29625472 29581484 29566231 29527451 29611078 29555572 29568790 29552338 29573704 29488519 29573024 29612563 29552362 29626901 29590988 29572146 29555452 29599159 29635204 29574940 29564235 29592899 29608193 29582303 29629269 29579016 29592904 29569429 29588739 29538944 29550468 29545521 29605506 29578856 29485475 29518739 29576614 29620156 29465259 29596418 29551482 29509343 29603016 29516677 29571648 29577021 29587114 29549526 29633553 29568621 29531412 29513210 29521827 29619756 29535066 29512824 29553338 29571162 29590860 29524143 29557497 29544056 29551960 29547197 29558461 29500781 29563032 29527293 29486090 29597276 29563408 29504939 29565111 29527196 29569447 29504177 29518138 29581460 29552136 29574026 29506153 29571492 29584406 29557737 29561548 29535424 29558032 29596846 29566843 29597598 29543709 29508202 29516798 29531573 29560201 29525085 29579769 29565424 29564195 29552887 29514223 29578898 29565889 29520359 29557119 29542443 29555107 29537061 29538541 29462194 29534890 29498748 29529775 29592218 29562761 29511217 29471758 29547405 29485479 29511771 29552312 29565648 29467185 29502607 29558837 29564495 29518513 29498884 29479927 29556862 29430173 29489777 29553403 29514886 29481215 29466600 29491398 29480248 29446353 29497148 29505777 29505730 29488284 29545144 29488795 29524461 29509919 29506028 29545967 29494344 29511307 29542201 29520274 29509751 29561247 29491251 29473028 29607931 29485233 29532249 29560171 29541899 29495944 29527265 29495252 29548136 29506795 29518321 29561793 29503104 29496783 29460504 29483747 29584266 29501248 29472244 29494172 29470583 29490642 29461089 29551418 29460638 29498522 29549711 29466104 29523217 29489985 29531498 29453247 29498047 29549347 29408143 29489765 29506052 29477978 29534404 29532583 29525502 29491579 29510649 29567152 29481537 29463815 29483180 29533062 29501260 29511901 29478657 29500304 29527144 29444014 29493187 29459846 29511644 29542640 29498844 29461095 29496817 29399970 29475299 29505793 29467430 29497740 29485661 29523401 29469945 29482607 29550230 29520479 29474870 29511666 29466050 29505110 29510874 29448263 29467942 29462783 29485362 29461668 29438377 29499623 29447201 29483317 29455404 29489374 29424410 29462672 29463138 29512162 29504720 29411667 29429108 29489890 29453428 29491733 29486690 29462965 29459660 29511263 29479840 29489896 29457540 29472703 29418050 29452824 29440503 29558325 29499459 29411670 29456538 29460744 29492159 29439373 29493411 29410071 29509820 29474069 29503063 29417523 29413240 29510699 29440050 29488689 29520344 29449784 29473892 29465189 29439778 29439924 29441971 29455241 29465373 29422131 29468552 29423402 29430672 29499959 29458890 29492611 29475718 29339572 29485425 29443698 29458514 29402126 29378709 29416675 29423842 29432122 29437215 29450265 29504252 29395387 29519009 29418215 29438490 29435249 29404025 29504047 29439290 29425621 29475363 29438918 29430451 29489817 29469657 29400233 29449257 29499465 29394064 29469714 29429530 29466260 29439480 29420416 29436802 29457827 29385835 29442885 29466214 29353188 29429425 29383160 29443697 29420255 29485682 29402987 29429043 29444592 29391255 29479368 29483383 29417746 29449999 29395909 29469567 29470433 29444770 29399839 29464163 29461192 29459692 29462109 29512152 29485712 29511337 29465884 29385470 29403840 29466500 29327023 29422620 29485543 29445791 29372797 29440875 29484667 29471182 29399897 29412260 29464943 29376928 29440149 29431623 29448398 29367341 29409845 29392500 29387324 29463337 29452317 29375181 29433098 29413682 29417790 29453487 29447418 29387639 29395964 29431613 29334672 29413228 29462032 29429913 29399473 29416518 29389478 29390247 29422349 29456636 29439703 29438687 29420533 29348661 29460945 29392076 29373441 29390186 29423057 29365988 29389934 29458376 29386168 29439009 29406015 29420668 29394399 29444467 29399722 29387466 29407599 29434643 29424460 29322438 29429140 29390404 29385996 29402077 29339596 29420463 29364942 29392119 29338992 29368641 29356993 29428643 29342686 29412002 29360973 29400674 29417476 29360838 29404009 29403045 29348498 29370348 29370865 29453624 29370028 29420073 29374004 29333646 29336839 29367625 29340466 29356089 29353507 29406619 29421171 29392872 29416478 29389538 29341255 29351900 29327266 29373181 29476112 29433439 29377184 29403397 29438421 29358417 29366530 29386943 29366854 29350592 29391035 29411651 29352117 29353279 29392203 29351819 29382295 29368689 29434111 29364542 29362018 29340542 29299004 29385778 29456023 29384645 29359533 29407020 29307848 29389066 29374207 29386011 29377801 29352030 29376484 29366615 29369324 29406818 29395143 29402122 29276491 29373402 29366407 29379392 29347670 29372562 29365695 29350556 29292424 29338471 29349004 29311443 29367659 29320287 29398040 29383844 29392260 29344594 29386906 29408505 29395481 29398322 29377021 29330754 29360752 29363279 29360482 29367901 29285018 29385611 29363790 29347965 29391023 29400807 29298433 29327252 29373326 29355695 29366615 29388196 29344002 29326601 29327340 29389645 29345192 29354887 29333978 29345111 29384443 29322258 29377041 29366840 29346245 29288617 29330563 29334932 29347816 29326678 29363599 29317987 29360776 29359364 29338135 29399530 29380074 29339061 29331852 29299801 29332519 29290707 29291708 29355280 29359046 29311690 29318128 29341748 29397920 29365278 29280807 29379629 29315199 29323826 29340901 29309555 29313736 29305394 29294641 29322654 29328979 29254958 29341747 29350097 29317203 29306588 29270481 29327140 29304007 29298678 29314373 29292577 29360607 29304992 29232669 29323490 29321976 29355044 29298588 29278711 29349388 29293083 29307886 29320076 29318311 29348923 29316660 29313648 29330896 29326149 29334641 29348468 29251272 29294003 29262860 29291388 29322208 29317741 29310881 29277466 29325910 29299654 29361254 29317936 29314022 29334652 29289313 29328217 29349679 29329185 29278113 29354111 29304911 29382630 29313216 29335440 29310391 29317320 29234859 29252262 29305485 29295014 29304502 29271927 29323575 29331127 29302304 29326851 29335503 29321357 29312695 29357252 29338247 29332438 29332060 29320237 29317438 29295637 29284586 29253710 29318312 29294425 29355363 29306652 29290283 29246288 29305211 29297510 29238989 29319261 29327015 29275256 29332232 29279817 29238340 29297450 29331945 29270835 29280808 29313387 29311235 29309359 29323284 29254603 29351240 29292482 29293101 29243187 29357970 29282835 29299380 29201362 29264296 29277800 29334795 29303815 29301389 29290115 29230622 29312523 29323464 29274300 29273158 29298762 29220697 29297734 29234277 29291529 29300852 29281917 29218865 29245813 29248133 29302371 29275308 29315145 29307220 29329560 29270038 29302079 29257527 29309955 29281672 29274828 29254525 29240366 29238466 29300796 29247540 29353961 29240480 29282205 29225065 29246474 29240919 29268762 29286839 29307156 29229886 29256201 29297911 29236625 29245397 29272512 29232340 29287097 29332375 29297342 29242127 29334490 29287296 29196952 29310898 29209103 29268617 29261861 29272912 29274712 29347919 29260916 29302077 29205063 29240066 29188535 29237218 29249371 29229134 29240333 29220830 29276469 29231382 29233180 29297011 29269561 29263804 29227375 29234536 29220905 29221355 29251630 29222274 29256046 29285727 29163480 29262947 29297825 29233320 29254040 29262408 29187505 29261127 29215909 29205985 29241643 29245211 29247949 29268459 29277153 29214834 29269932 29198862 29259807 29237793 29245522 29197365 29293137 29280342 29316428 29212284 29215219 29246150 29271106 29206111 29216666 29261640 29226708 29238215 29219985 29267420 29197914 29206605 29207052 29249312 29281107 29245575 29190073 29234125 29202186 29216990 29226187 29182865 29235690 29229652 29236352 29169031 29239968 29236699 29224896 29224623 29194773 29182789 29246700 29241316 29218284 29235097 29169590 29250477 29138146 29278660 29260900 29205565 29206627 29210428 29230372 29326792 29202693 29243648 29250570 29199478 29247900 29157380 29285375 29200982 29249936 29180528 29181237 29273286 29243793 29265417 29186159 29210200 29287898 29204101 29140395 29184989 29240591 29245861 29235502 29186572 29208434 29271216 29235251 29160555 29152972 29246216 29251171 29199094 29248543 29199800 29244001 29145011 29207810 29211529 29195659 29216229 29199949 29283037 29202683 29242560 29201223 29216554 29203880 29153103 29173273 29175298 29218864 29179639 29206322 29256136 29174052 29163712 29195612 29140789 29188238 29273546 29183297 29219279 29186124 29162747 29180263 29213078 29229726 29229675 29176222 29246972 29135240 29230357 29243985 29191489 29200636 29255856 29218819 29170642 29156018 29245484 29174916 29155391 29209564 29220675 29177818 29285676 29191379 29157677 29166405 29182165 29133460 29196028 29185335 29227618 29190207 29242700 29189102 29216047 29204709 29191225 29204951 29152957 29229910 29140695 29113891 29137892 29126375 29184944 29225054 29163769 29116458 29154506 29163818 29125479 29187883 29117860 29145790 29264884 29145016 29168132 29128343 29218158 29151944 29174858 29164433 29179778 29195687 29185624 29151301 29160939 29175683 29202341 29206776 29204589 29219141 29213916 29215181 29143540 29154070 29187336 29171946 29132667 29145708 29152823 29137746 29163789 29178831 29140732 29186532 29139031 29236813 29125533 29164520 29118066 29181169 29197469 29205811 29148930 29198185 29144765 29144013 29121027 29154867 29186455 29148194 29171155 29186895 29202725 29124216 29163172 29146967 29179801 29102587 29133210 29183803 29125328 29061421 29189536 29164860 29138238 29208685 29096027 29108858 29241975 29129983 29185697 29164965 29173318 29117348 29153083 29161536 29144398 29102784 29155686 29142492 29115557 29167282 29171304 29110396 29113663 29093178 29092195 29170047 29095909 29171925 29115961 29122808 29174615 29116009 29140824 29156797 29097928 29051520 29138061 29152251 29152734 29240826 29203144 29122859 29085517 29134623 29149865 29100180 29125531 29092797 29154074 29119588 29128123 29092178 29119943 29162366 29087376 29194831 29086315 29112467 29184549 29135576 29150361 29129011 29085170 29109347 29108657 29161331 29080258 29105954 29126540 29171965 29143706 29150143 29143278 29106976 29069294 29135679 29115212 29107355 29106088 29154377 29107687 29163120 29144989 29171190 29132215 29161457 29034826 29129775 29140593 29166490 29081762 29070485 29099323 29179331 29163032 29163097 29074159 29148770 29114519 29075077 29108910 29123946 29186957 29185423 29178956 29120312 29176160 29111196 29132495 29103408 29077425 29070214 29076599 29084587 29106088 29085279 29114633 29130972 29155118 29040174 29084396 29084495 29119736 29102786 29080769 29085134 29072820 29024614 29080095 29112464 29076082 29033604 29136866 29051816 29113776 29108640 29104135 29039083 29081491 29095746 29031335 29068346 29096737 29092157 29013659 29137262 29115851 29028161 29085107 29132673 29124532 29092186 29066981 29056492 29105685 29089972 29056563 29069798 29076166 29083445 29034667 29079889 29089389 29079370 29074500 29086720 29041290 29017619 29126320 29070012 29132402 29052192 29086287 29109991 29137265 29042553 29020957 29115757 29117675 28964800 29031642 29097196 29116036 29057935 29071673 29117405 29029129 29113750 29132947 29111211 29005038 29081598 29060909 29054810 29012213 29134416 29117532 29068158 29092501 29085381 29078260 29104168 29028605 29075940 29041075 29119485 28991799 29060419 29011156 29042489 29072252 29041852 29071658 29077663 29061451 28955099 29070976 29079490 29062143 29021202 29081049 29050607 29131989 29063783 29048154 29062924 29090761 29011134 29019556 29018370 29072863 29025380 29067086 29095819 29061873 29033884 29009520 29102868 29041102 29095079 29082844 29022057 29007354 29032541 29027850 29080404 29095524 29005309 29057269 29001900 29034614 28986956 29062463 29061723 29032086 29087487 29016031 29118148 29067252 29025649 29073970 29043232 28998108 28970325 29013357 29006220 29052728 29027635 29038603 28986032 29042458 29084472 28985907 29009686 29054454 29029059 29087872 29028683 28986441 29056603 29014740 29001531 28966382 29022110 28994442 28998945 28998398 29095151 29001924 29035636 29031115 29088416 29031500 29014987 29076408 29021719 29095377 28941057 29027300 29063804 29053518 29021804 29037218 29019606 29001766 28920029 29041753 29021326 29032934 29039360 29048111 29040816 28975276 29032842 29009053 29067164 28989113 29011159 29040392 28956709 29047420 29030700 28946159 29052198 29054271 29050584 29013210 29089490 29019710 29012207 28994283 29004938 28993818 28986001 29032632 28997347 29051678 28982759 29042547 28966807 28949927 29013293 28924512 29046239 28982183 29035389 29033213 29018617 28993819 29004665 28989218 28990646 28895124 28964619 28979651 29048153 28931081 28988271 28953335 28993479 28928910 28961756 29005035 29025031 28991088 29004178 29052781 29014332 28991111 28972574 29035820 28975513 29015285 28992748 29013732 28977053 28970142 29020174 28984781 28969857 28989463 28952993 29025518 29019363 29053555 28996413 28932260 29012389 28996328 29012218 28987015 28988608 29031510 29017416 29003367 29007321 28999714 28967833 29004886 28939511 28931584 28947766 28949143 28984354 29010409 28974143 28974028 28945087 28922451 28999629 28956810 28948620 28936640 29020496 28910945 29018951 28950547 29028995 28971089 29017716 28997316 28982513 28991409 28978293 28999839 28978826 28947138 28960703 28965288 28955056 28977500 29020285 28966138 28965253 29003606 28929143 29008687 28952064 28967439 28992433 28946811 28961446 28938185 28981781 28943202 29016198 29024143 28943685 28977803 28914581 28939724 28978977 28972154 28864978 28973280 28975475 28959152 29019625 28960688 29003172 28971491 28990320 28992818 28953904 28899842 28984717 29015379 28910916 28961662 28970871 28960279 28964736 28937098 28967205 28940376 28929944 29014591 28971388 29011075 28922751 28928310 28909586 29032264 28932451 28901576 28902424 28938252 28922985 28880444 28932603 28960296 28902625 28934756 28941577 28960113 28973157 28933454 28951218 28895203 28968486 28976544 29011526 28940815 28858404 28928052 28964312 28936132 28972364 28889560 28972256 29005225 28954636 28943446 28987763 29003652 28950392 28981367 28927178 28927428 28972918 28905367 28931050 28949365 28882542 29006510 28876793 28905894 28974811 28931127 28928410 29000041 28910904 28954797 28967756 28947704 28935124 28922624 28949383 28895184 29009510 28963224 28910328 28930973 28905349 28906533 28943639 28870874 28886521 28927745 28908506 28898854 28859742 28888994 28904891 28959510 28949164 28911215 28894072 28933217 28874387 28883803 28908286 28929670 28925298 28879868 28917803 28922574 28914183 28848455 28903177 28884284 28919660 28875946 28946764 28899837 28913469 28979712 28915895 28957548 28882204 28924562 28961891 28946878 28902756 28890388 28853580 28893899 28929188 28896072 28955737 28910425 28923103 28868291 28869987 28862961 28911819 28930697 28958826 28906838 28905304 28897661 28933206 28864380 28884772 28918055 28927471 28878856 28861512 28903269 28930840 28924378 28851762 28835481 28838873 28885988 28815809 28915655 28898889 28898986 28883111 28890862 28875263 28887716 28876773 28881634 28879370 28887727 28895485 28939132 28880903 28839100 28883824 28877897 28816074 28932263 28860710 28902909 28863992 28979824 28953311 28797584 28863979 28835394 28826293 28935051 28828618 28884512 28826853 28863532 28925299 28833128 28864161 28921885 28890631 28904534 28884411 28891447 28866933 28874935 28903914 28828506 28850530 28858034 28898821 28860958 28874521 28857011 28880620 28905560 28937538 28821454 28895379 28842521 28899505 28864095 28872654 28922816 28823244 28847110 28852639 28927243 28806965 28889182 28894390 28841065 28802416 28869262 28814934 28890945 28894174 28808522 28892601 28874123 28854463 28916955 28926380 28879866 28861185 28879525 28927341 28834336 28912098 28849109 28874489 28859113 28892651 28941750 28946168 28871768 28909178 28864650 28873793 28848595 28879087 28910547 28833946 28880616 28886552 28843658 28792059 28888364 28836717 28923544 28802310 28853018 28876250 28871762 28900284 28807706 28809244 28781340 28801935 28812424 28814125 28909993 28840359 28879349 28778021 28761190 28853624 28846604 28868442 28844514 28898451 28895779 28869735 28819679 28854107 28846709 28810266 28799893 28926028 28877535 28838874 28808810 28843236 28859082 28831544 28858942 28785992 28890371 28883345 28846579 28894834 28852438 28861014 28858953 28836920 28850746 28838064 28791517 28782925 28819475 28895212 28817706 28835839 28761320 28804611 28824447 28858609 28786197 28860422 28820378 28839877 28853185 28844767 28842740 28820023 28856606 28817087 28789474 28841475 28847749 28866055 28809646 28788386 28863605 28793923 28826574 28805122 28755953 28843729 28884122 28853528 28825354 28808830 28830036 28818009 28809743 28866256 28852409 28807133 28802862 28801218 28883978 28809729 28841581 28854701 28811985 28780865 28786461 28826775 28822476 28744391 28845946 28871029 28806327 28809751 28819503 28803029 28876914 28828723 28800133 28847669 28805378 28805120 28867976 28794086 28816907 28836802 28804541 28881062 28767832 28828274 28868065 28752923 28757496 28749999 28789884 28756279 28776400 28764182 28863464 28837793 28720231 28791581 28715984 28814105 28795532 28758593 28791535 28765282 28766468 28824719 28735017 28769893 28819892 28839268 28779168 28792398 28695326 28753657 28802216 28863093 28774495 28812557 28792910 28855919 28756686 28785483 28777217 28766727 28776334 28856149 28774415 28784517 28755118 28781598 28840245 28767474 28763825 28727706 28712674 28800934 28782855 28778145 28806134 28828559 28723143 28821535 28782715 28799338 28786632 28741314 28688265 28775804 28781596 28800662 28771095 28757277 28816129 28743282 28767581 28801990 28775372 28766834 28840069 28789397 28757401 28736006 28746341 28751824 28818164 28825230 28754326 28757008 28788685 28774075 28745261 28795972 28779980 28790756 28811874 28818897 28739564 28773596 28765882 28741138 28754161 28799456 28731247 28698470 28776926 28773057 28793141 28750010 28756357 28716693 28789503 28820588 28811794 28789178 28719816 28776201 28767366 28703388 28753326 28727703 28768011 28742087 28703327 28685353 28812714 28738441 28734820 28815174 28785919 28759102 28744166 28781813 28809626 28658211 28807288 28699282 28706898 28692730 28703717 28753597 28810746 28771870 28799643 28804184 28755601 28758644 28804919 28749329 28765032 28780294 28797348 28732994 28767487 28756858 28761507 28745804 28688102 28756288 28741961 28701906 28763177 28781358 28757237 28791510 28772302 28715327 28652205 28707448 28728208 28711699 28762910 28750738 28794868 28723330 28741506 28735125 28762243 28778502 28766623 28726689 28721710 28726568 28777475 28677079 28736412 28731797 28788715 28773622 28735364 28712768 28760886 28624062 28693873 28732055 28667692 28749625 28725194 28799615 28726864 28686903 28714161 28723197 28733766 28737906 28752989 28727744 28691888 28703625 28685948 28744056 28763855 28692484 28730723 28761192 28702627 28723198 28751839 28710539 28689926 28730560 28716872 28775634 28674393 28731528 28700852 28678168 28696937 28628701 28701611 28704085 28674031 28749444 28749639 28692297 28723324 28690447 28701452 28727103 28710196 28782019 28725245 28730215 28723544 28673548 28704896 28766003 28729339 28657683 28708301 28671656 28685029 28716026 28743538 28632331 28729232 28700792 28712680 28669779 28675255 28784538 28638592 28695384 28684504 28689812 28643346 28774091 28742677 28669744 28750214 28670676 28671460 28655372 28673988 28662236 28688023 28706636 28718006 28726976 28741590 28728213 28732399 28674518 28652899 28652635 28724675 28645389 28587283 28732617 28659495 28765518 28685984 28688719 28714197 28687462 28646768 28683782 28706796 28718846 28660009 28680363 28688228 28726707 28698264 28748764 28636924 28671604 28662926 28718632 28681093 28636478 28670800 28722927 28706053 28675060 28645376 28758735 28621662 28651720 28708641 28675846 28652680 28696094 28699518 28703237 28696655 28665363 28603475 28620629 28680318 28664225 28712765 28609573 28699600 28700493 28650806 28751134 28686500 28640356 28684961 28657230 28600429 28706735 28630810 28710409 28664155 28657328 28645228 28727589 28732693 28674003 28627352 28709250 28620404 28641156 28706951 28650631 28674001 28679451 28682880 28692282 28635005 28640843 28650588 28615431 28658275 28689326 28610573 28663127 28662114 28635196 28699023 28599579 28732573 28594211 28673103 28651547 28646385 28659579 28650028 28629903 28668891 28716552 28629805 28631145 28604321 28671351 28641717 28703095 28575610 28654263 28726429 28667904 28638373 28637200 28603281 28646095 28602739 28629453 28645319 28674983 28595051 28649751 28604770 28604817 28654741 28650898 28643017 28677837 28612920 28621477 28616367 28640004 28602070 28644968 28673519 28661571 28619871 28648866 28608035 28630206 28628460 28652524 28623670 28646090 28619475 28603598 28618592 28680128 28595487 28631834 28638709 28610704 28623536 28569174 28598630 28604316 28629464 28662157 28635760 28622807 28635515 28646677 28592862 28635371 28578360 28670339 28607066 28571093 28609475 28546053 28643828 28622252 28654442 28586891 28617158 28604032 28648692 28617579 28588095 28631487 28655769 28610068 28650015 28609152 28611674 28638048 28694725 28598374 28604057 28659847 28666658 28608966 28558065 28648993 28626832 28542757 28515666 28541615 28614302 28615909 28630051 28598691 28603165 28611714 28565702 28535237 28610916 28620029 28596285 28613347 28578572 28616498 28637740 28573876 28581416 28617845 28594855 28575476 28602364 28545229 28502768 28570336 28612803 28580322 28606746 28637075 28630067 28610613 28652302 28599074 28635048 28594344 28576673 28560277 28572958 28599966 28556052 28607844 28620082 28624941 28593899 28634119 28586947 28613537 28577223 28578162 28596750 28580967 28622703 28583575 28576601 28526618 28608559 28554968 28629735 28577029 28572036 28620878 28533173 28554351 28595287 28586430 28549406 28586800 28619395 28534589 28572979 28565003 28605369 28559834 28618417 28580971 28666949 28559191 28529250 28586371 28642387 28524158 28581214 28596877 28582957 28576238 28601608 28660415 28565023 28578376 28522212 28537423 28556152 28510680 28590479 28567624 28599922 28594597 28518015 28560840 28626453 28534864 28536296 28542158 28598755 28571402 28477317 28546662 28629450 28565203 28543446 28536750 28602470 28489658 28547038 28555771 28587452 28478709 28572060 28567423 28516500 28582335 28503514 28580924 28559773 28557903 28477915 28582105 28589963 28631837 28617876 28490278 28578808 28566158 28555306 28554565 28571264 28621673 28522353 28523489 28554889 28584167 28597499 28572064 28540169 28572781 28477942 28595110 28527212 28609107 28549898 28601839 28526836 28571249 28502946 28488138 28565545 28599268 28504087 28545691 28513367 28603963 28568996 28561661 28478413 28535979 28536943 28570139 28525502 28568339 28527670 28428475 28508233 28563031 28553277 28541310 28542710 28513427 28536540 28534237 28529354 28550121 28556300 28569973 28543588 28549626 28471994 28512815 28513421 28505907 28501790 28524666 28546373 28538957 28544693 28569111 28590112 28499097 28548727 28500116 28561534 28474999 28567138 28469895 28545288 28522051 28498042 28539857 28570053 28566143 28543064 28524575 28500018 28455594 28580407 28494395 28505331 28506404 28602777 28457597 28532900 28534087 28532192 28490942 28464622 28558523 28576581 28498047 28539576 28514643 28485311 28569773 28523693 28513964 28493736 28485484 28522344 28524489 28469196 28433725 28548305 28452785 28547360 28408584 28563785 28552322 28544075 28466397 28536792 28503530 28506696 28552701 28469714 28515017 28482319 28500595 28517801 28477131 28535994 28487290 28471311 28474570 28469268 28479704 28517646 28468292 28529859 28503199 28509399 28471558 28454495 28514878 28467783 28497650 28471885 28462204 28525117 28513278 28521212 28457871 28439170 28528218 28513242 28457972 28521766 28535141 28505262 28568933 28505249 28505858 28487963 28485632 28438706 28472329 28479243 28519950 28507711 28412602 28511924 28507477 28466015 28455730 28499702 28498455 28523794 28509703 28438356 28474631 28525419 28515236 28451194 28463858 28484589 28470112 28491123 28492145 28526542 28454841 28495252 28488635 28495866 28495595 28500002 28465039 28439166 28482978 28484789 28449238 28425396 28428989 28467631 28442741 28421494 28456501 28530953 28468266 28476314 28499439 28469451 28440521 28524911 28508395 28520198 28498146 28437989 28492953 28499548 28484234 28420827 28505208 28478416 28415730 28506636 28433057 28450246 28464551 28376809 28446958 28466661 28496446 28435048 28453672 28433003 28470715 28433972 28503477 28457911 28460704 28488420 28457354 28407502 28487708 28390430 28441746 28481900 28440320 28408229 28438729 28472363 28491598 28415120 28406009 28462150 28463792 28405526 28430860 28444241 28436016 28482669 28430408 28497021 28472736 28431950 28474295 28467766 28454983 28472046 28484907 28428186 28505102 28421338 28493539 28462425 28457421 28424699 28433016 28397385 28433509 28443917 28473726 28430746 28476338 28505146 28485003 28379865 28465334 28463726 28373883 28442569 28413144 28406694 28425677 28414622 28523412 28461830 28436842 28428696 28433024 28438632 28449189 28447588 28458657 28430023 28421589 28449755 28427371 28391545 28381497 28441772 28410486 28427635 28457556 28466368 28479165 28403723 28425862 28375123 28356572 28490831 28410092 28418625 28447572 28456926 28452343 28397080 28399076 28463063 28403705 28459583 28359360 28455208 28373796 28449132 28418967 28438903 28394043 28460544 28366328 28407289 28369786 28414270 28399026 28417567 28442710 28432741 28405563 28385038 28395925 28430103 28352189 28420123 28384002 28391648 28371603 28467550 28462687 28419089 28397087 28433159 28434275 28451644 28411884 28400601 28423702 28405864 28451811 28398853 28344403 28408305 28389767 28380700 28366615 28391960 28439136 28395964 28393260 28434588 28391199 28436250 28408725 28382927 28371558 28436795 28367794 28397378 28381077 28343019 28403359 28372825 28420032 28429291 28427539 28478604 28430121 28442306 28317169 28414472 28433599 28404202 28371841 28399105 28460831 28343925 28377806 28411861 28386111 28337159 28376723 28388318 28342473 28329402 28421799 28346402 28353976 28362006 28372994 28335234 28366177 28389537 28420536 28423141 28375358 28348001 28357003 28432799 28356693 28335152 28408094 28358223 28257393 28360742 28364938 28399885 28397052 28390942 28356940 28357245 28370874 28381837 28398891 28417190 28424094 28365994 28358926 28342565 28337442 28409652 28402394 28376116 28375414 28404357 28342399 28314470 28321514 28390881 28319159 28271056 28403361 28457827 28393406 28393203 28380094 28375390 28366742 28364493 28371257 28402875 28289627 28295682 28381528 28313377 28383320 28322312 28375196 28379226 28349190 28396450 28344815 28396612 28391857 28410273 28366451 28374218 28288522 28319529 28316629 28314884 28375779 28358665 28361773 28397525 28389746 28294604 28348189 28384426 28332815 28352870 28341501 28325938 28341870 28376825 28426021 28295420 28400500 28350835 28346744 28260814 28382865 28356659 28319836 28386402 28355589 28380489 28358194 28317104 28338809 28383817 28348442 28338840 28364942 28249036 28324445 28303218 28277807 28358549 28341756 28391829 28287431 28323331 28319522 28375927 28321074 28326608 28274753 28341531 28276287 28336760 28396877 28343412 28301112 28352764 28262292 28345130 28312390 28358864 28327966 28367011 28355681 28341416 28351707 28327625 28276574 28307374 28384587 28368384 28352720 28303570 28395918 28281411 28310790 28339590 28275894 28351043 28353215 28360740 28311589 28292378 28380262 28315083 28319796 28326255 28279460 28305158 28358718 28234099 28291881 28369687 28222150 28316919 28317438 28251640 28350230 28337978 28269838 28284797 28367220 28243049 28329606 28332921 28306409 28338007 28314323 28327366 28331056 28230741 28294948 28315972 28291263 28289899 28339269 28316588 28307163 28282451 28353198 28273557 28263207 28294094 28336854 28323016 28373693 28331345 28317165 28336171 28306009 28263762 28312380 28276606 28283597 28245323 28326812 28287599 28337225 28302157 28283161 28304500 28275534 28231432 28293520 28316735 28277032 28305352 28297392 28244270 28331923 28286738 28324676 28277088 28267922 28322261 28335984 28311049 28332039 28268547 28295600 28229907 28258135 28276968 28274483 28260062 28264206 28290065 28234103 28321256 28302582 28303782 28221665 28322193 28255722 28314991 28273817 28254799 28313160 28341181 28232525 28281755 28238859 28322525 28274371 28315763 28221267 28293194 28300232 28269362 28288714 28202010 28261546 28288724 28252770 28297675 28315379 28274997 28316677 28333901 28243123 28290329 28323209 28245424 28322870 28263902 28234485 28271744 28264180 28254402 28338415 28280359 28274656 28269624 28276993 28251848 28337709 28253441 28242891 28296430 28225248 28208644 28185555 28281749 28234630 28252784 28274252 28303443 28225537 28317961 28197181 28240942 28201621 28279658 28219702 28260312 28175086 28257546 28308752 28327415 28257623 28204693 28213854 28224607 28266063 28267235 28248525 28229719 28218396 28226251 28298276 28268879 28315166 28233190 28256357 28270549 28292987 28213980 28227018 28271388 28235957 28308339 28273341 28240541 28232212 28288186 28283428 28268877 28285318 28250124 28276369 28206309 28261846 28236797 28243833 28229546 28221306 28242171 28215790 28246689 28232351 28154461 28280164 28222263 28318851 28267765 28208029 28248602 28265143 28306948 28242109 28240607 28209548 28230712 28226910 28195806 28192412 28224424 28314695 28278855 28255919 28298832 28205280 28219459 28237114 28225758 28254026 28243461 28223678 28222581 28169773 28188943 28249852 28209284 28223572 28195475 28245292 28280088 28232941 28207541 28280788 28249053 28219199 28196081 28248016 28238785 28215979 28209409 28202461 28226863 28172985 28169257 28240835 28163022 28218346 28209535 28232742 28213969 28171500 28191006 28253667 28208758 28217137 28177779 28195531 28228296 28162847 28166962 28236034 28148851 28216984 28277394 28234432 28143656 28164752 28185922 28215743 28230102 28222241 28208440 28231643 28226633 28240903 28240528 28214918 28226429 28248844 28188926 28241129 28207495 28173557 28199273 28253416 28176542 28260349 28296743 28195613 28215702 28144406 28198002 28212297 28185140 28237449 28205099 28198540 28141119 28178203 28195296 28148976 28227860 28213791 28185604 28152552 28162432 28169661 28118698 28226794 28168297 28137499 28147865 28146001 28203635 28201996 28248168 28154116 28161450 28234732 28161655 28169578 28159105 28153650 28191446 28173237 28192540 28202457 28223243 28173583 28200216 28179838 28219252 28137546 28151639 28152903 28164507 28159817 28141306 28217110 28192738 28219768 28199219 28221827 28204342 28080822 28150223 28169783 28191210 28202008 28132782 28191459 28191837 28178708 28157558 28206663 28217793 28201811 28192518 28170596 28190387 28142407 28186484 28192875 28158887 28090512 28127085 28107029 28187771 28156651 28174420 28127441 28146938 28121197 28148841 28170371 28200191 28143942 28129743 28195164 28182120 28210557 28150007 28164872 28177812 28174603 28156364 28164774 28135860 28264148 28183379 28141450 28165129 28156485 28196768 28161503 28172719 28176321 28173913 28162155 28114531 28202282 28100593 28157512 28160956 28139116 28177947 28125697 28170540 28147926 28150305 28130963 28164351 28157070 28191970 28131837 28117573 28111917 28173729 28182669 28194865 28099143 28157192 28142286 28191857 28115214 28172107 28096700 28188685 28151820 28122887 28227777 28121448 28168853 28160094 28099190 28158414 28154011 28141101 28127110 28125116 28128056 28067084 28116565 28128511 28137974 28137983 28049387 28102987 28162314 28157368 28188547 28144454 28151559 28133071 28140433 28120039 28093548 28109763 28163478 28147174 28116066 28047320 28159428 28053257 28116349 28154794 28104886 28115446 28126215 28124729 28066237 28100745 28122152 28188429 28164082 28116979 28135985 28139984 28117527 28118650 28119377 28173169 28075227 28175803 28144421 28106066 28131190 28090760 28143079 28122886 28078515 28135932 28089291 28104311 28031171 28080711 28116449 28115961 28152312 28062699 28110217 28145862 28066468 28111963 28071181 28144218 28107254 28077260 28060240 28136977 28067649 28025495 28106561 28093616 28107562 28096202 28112617 28052057 28066459 28103429 28073029 28111772 28101795 28061638 28056211 28115286 28093067 28119632 28133460 28141009 28141452 28159338 28056598 28109410 28102790 28104549 28154059 28101598 28036503 28110178 28153272 28071070 28168736 28051283 28157013 28052272 28094985 28079427 28106221 28022849 28023351 28104192 28079873 28040159 28016653 28057933 28137408 28099165 28055181 28105691 28125619 28090965 28082565 28078027 28130738 28069122 28043950 28031792 28107138 28029866 28141427 28093842 28062234 28095361 28090204 28070835 28068507 28059635 28077080 28077941 28027995 28098569 28074360 28076263 28027041 27999774 28041902 28057500 28031591 28054215 28097967 28103218 28048904 28049366 27951659 28106530 28068534 28039023 28124487 28039021 28103766 28004023 28092589 28068017 28083772 28054959 28030231 28038575 28032234 27974927 28075129 28054139 28114733 28067480 28048674 28039237 28068777 28042696 28081103 28033492 28026814 28021867 28057751 28066508 28058490 28082131 28001625 28092217 28014594 28060533 28090887 28009820 28073829 28044291 28031528 28069642 28073871 28082484 27989240 28055181 28052186 28048764 28095129 28089276 28091826 28042749 28025533 28064953 28021326 28047791 28043640 28078619 28131697 28083849 28039985 28092208 28020824 28052617 28035865 28029805 28081568 27980782 28076044 28081820 27991537 28068716 27998725 28027381 28038748 28023519 28066540 28042035 28029799 28064385 27987030 28065161 28027841 28055431 27957893 28012782 28069314 28026367 28016393 28024025 27979693 27942295 28023992 28072327 28041942 28082305 28080770 27970573 28015669 28042507 28042193 28001403 28074391 28026891 28019141 28017673 27967609 28043769 28075777 28059499 27992404 28013204 28024447 28030719 27999099 28000008 28010872 28034387 28023860 28021362 28004406 28005255 28039842 28039117 27968864 28085744 28032199 28010456 28046681 27955809 27940104 28030632 27987891 28042221 28029216 27961411 27981516 28009499 28002925 28013327 27981882 28017241 28048127 28014927 28033356 27978484 28022999 27989325 28017621 28014253 28026325 27966487 28023805 27998008 28020397 27961658 27983845 28029827 28082071 28016412 28072869 28020055 28064851 27945234 28008377 28023162 28056830 28012729 28037756 28019571 28002832 28045099 27979876 27987594 28003137 27894992 27983703 28011943 28003742 28007848 28014118 28043865 27934688 27936148 28009842 27946110 28008951 27961159 28047176 27983756 28006516 27941208 27973464 27951030 28031515 27974408 28019402 28000781 28028206 27969665 28067122 27983058 27956776 28005560 28018809 27986094 27957853 27965740 27960915 27972653 28050713 27973052 28031652 28000829 27985212 27979858 27988144 27962679 27971947 28017714 28028820 27990189 28018548 27995358 27955462 27981130 27990457 27936806 27978088 27956632 27928321 27945121 27942392 28018292 27972166 27919649 27985135 27940821 27967424 27997760 27975455 27965842 27938291 27963902 28012807 27946876 28011817 27977107 27991742 28001651 27995185 28018193 27928121 27933013 27960387 27963501 27949968 28021968 28037115 27931707 27984041 27983451 27945712 27928638 28045572 27941991 27930340 27951355 27953038 27947481 27968654 27954859 27989910 27939001 27980088 27892867 27993255 27989327 28008004 27961392 27973672 27973668 27973928 27927957 27957688 27941314 27934606 27959405 27975297 27917832 27963517 27916881 27981605 27983871 27967420 27957311 27975967 27899412 27904877 27934164 27957953 27990370 27916321 27966032 27923507 27918923 27902604 27893809 27902581 27954112 27955856 27912533 27919048 27936172 27956971 27896868 27993910 27944748 27908743 27929205 27931874 27915200 27924901 27948469 27854269 27932473 27925871 27910835 27873677 27905937 27954027 27923231 27896059 27921106 27920221 27944159 27922905 27907396 27957681 27971445 27916932 27895131 27894330 27905936 27900809 27939920 27907663 27996418 27876548 27953038 27932982 27974329 27940680 27898751 27928048 27963698 27902164 27928535 27913049 27904994 27907936 27932554 27892862 27875918 27912469 27873553 27922995 27895384 27921992 27951122 27854634 27905367 28008656 27845845 27854177 27900707 27918244 27959358 27900170 27878972 27958997 27925156 27915162 27913518 27890033 27978352 27970721 27966607 27909902 27928326 27917082 27931399 27913186 27883687 27872537 27921950 27897691 27883085 27913031 27841493 27882600 27915995 27893454 27887682 27869932 27929825 27859100 27935351 27928522 27887846 27858606 27853768 27934788 27899179 27875650 27901341 27902350 27923146 27854357 27896328 27886566 27854005 27928048 27901943 27896073 27910107 27934261 27885239 27951432 27932174 27843700 27917393 27870625 27917063 27876387 27870722 27906144 27885937 27943711 27828793 27927270 27892610 27936525 27885586 27888495 27853511 27881549 27838352 27841756 27856094 27901794 27869062 27882178 27850459 27879223 27913892 27843050 27899173 27883801 27882653 27894839 27889301 27869697 27853305 27865863 27914073 27858055 27872243 27881662 27885584 27914174 27867072 27823234 27863966 27909405 27869896 27865036 27879568 27898174 27806534 27872388 27883426 27914824 27835035 27887708 27887432 27863034 27805290 27832138 27907870 27832609 27859507 27883562 27842166 27865608 27877227 27835641 27866088 27875177 27841005 27856923 27914067 27830928 27898571 27803595 27843109 27942599 27769459 27867777 27774520 27871609 27896147 27875009 27878970 27781372 27880340 27771964 27868949 27856081 27849297 27821914 27839286 27812539 27828308 27821167 27848390 27834952 27907450 27822514 27827328 27806313 27884289 27885847 27803572 27833644 27861562 27839924 27907016 27807429 27769290 27782780 27864714 27856907 27841149 27803183 27773179 27759009 27828626 27861591 27842504 27790264 27841171 27775529 27815458 27871085 27831809 27822201 27853975 27794131 27875166 27836645 27895070 27813441 27884721 27820115 27817019 27848567 27888308 27834321 27790932 27859540 27868052 27827639 27821018 27810760 27839571 27776451 27788488 27866471 27814353 27760560 27824549 27844344 27864058 27832704 27813840 27810918 27772496 27787828 27847408 27796146 27817367 27799519 27821719 27827402 27825876 27789363 27764961 27827591 27822273 27799392 27813027 27861113 27802071 27804021 27841169 27856989 27831847 27807504 27856353 27860995 27825436 27814077 27815823 27829556 27777202 27842867 27818799 27792322 27858947 27769970 27771966 27800343 27830608 27789432 27812953 27818041 27834976 27786713 27789127 27813714 27811548 27797618 27787196 27812079 27813030 27815433 27804288 27787342 27690609 27782678 27794073 27801417 27781971 27830402 27753644 27817228 27805951 27797104 27730372 27815530 27785988 27838406 27813115 27779249 27824929 27780687 27740514 27801180 27822312 27763589 27779595 27757142 27824751 27794670 27794013 27773518 27834141 27769731 27798475 27767346 27723271 27809952 27761909 27805172 27769434 27793814 27767950 27794837 27771580 27730775 27753740 27799769 27792613 27787123 27802540 27733109 27785546 27847381 27801615 27808882 27761588 27785532 27766211 27758660 27783398 27733041 27768349 27767426 27780685 27777984 27730066 27770157 27816754 27832988 27723171 27752215 27745322 27763722 27831612 27764115 27756950 27825735 27785666 27781846 27746572 27794936 27762423 27804976 27768292 27777134 27741439 27783177 27807490 27754601 27779910 27731409 27828237 27726196 27759035 27722259 27736853 27752681 27775628 27819185 27764646 27768575 27776550 27713401 27719949 27786942 27769505 27818652 27775805 27740148 27750157 27819292 27729671 27713730 27717322 27769681 27775308 27705806 27767575 27747752 27731796 27718616 27741937 27748897 27712749 27818232 27799584 27733736 27717867 27762778 27759821 27798886 27682919 27817866 27731387 27732926 27715950 27736679 27720010 27758846 27746932 27695947 27752384 27840337 27685175 27721435 27741407 27772055 27719629 27731306 27732414 27717483 27706989 27697981 27698157 27765768 27745369 27706499 27725989 27713729 27711554 27652488 27783978 27738220 27768953 27734336 27722131 27732434 27753916 27762568 27753228 27740621 27695112 27726321 27691129 27678750 27734273 27775904 27689730 27791036 27767336 27750698 27758346 27715031 27729229 27769661 27707924 27732069 27705616 27693364 27702341 27695251 27753417 27757455 27706486 27708310 27754762 27737537 27690519 27685672 27737094 27742706 27664008 27709302 27703322 27760313 27745652 27749902 27688005 27721349 27705741 27713344 27702266 27739008 27716581 27693530 27720373 27741931 27722658 27711255 27634679 27714212 27682954 27708476 27706265 27635343 27755369 27684345 27718284 27687156 27709981 27728341 27790558 27707463 27726066 27670516 27766138 27727847 27678670 27696615 27742188 27712607 27670946 27695485 27686686 27646144 27717417 27713140 27667069 27705380 27724283 27749065 27628956 27623483 27696084 27709062 27659700 27677239 27653746 27618883 27694395 27708790 27706872 27650788 27686764 27698110 27736189 27646755 27628432 27773617 27663172 27693780 27764133 27660902 27685802 27711333 27711203 27652323 27635443 27705435 27671479 27683390 27650698 27699018 27733388 27688423 27706259 27764359 27579326 27679709 27674985 27583928 27656425 27668048 27676576 27693259 27717260 27679476 27684351 27708541 27711124 27685717 27655805 27678524 27663424 27629773 27687504 27632386 27694389 27644060 27630598 27700153 27685352 27700527 27604966 27669966 27597560 27647920 27622293 27648043 27642706 27661048 27648636 27648580 27622297 27690517 27675544 27646463 27620455 27670193 27627236 27653026 27646336 27642672 27684619 27661421 27629340 27632858 27639238 27657607 27701850 27635289 27629081 27674146 27653131 27641079 27657383 27671527 27654439 27686644 27617250 27675949 27664316 27764375 27656359 27587949 27638256 27677469 27649595 27696248 27609918 27684137 27618345 27607960 27635222 27621330 27702212 27705462 27665335 27613899 27588055 27633536 27658640 27659179 27659094 27618500 27605910 27631164 27633164 27646923 27624449 27613369 27631902 27626491 27641313 27620075 27655057 27635645 27672941 27611186 27619004 27644796 27650579 27616673 27651476 27672311 27635081 27625538 27633695 27668174 27593495 27638723 27592554 27619996 27585301 27554477 27595532 27621185 27632689 27665953 27585171 27631832 27717660 27619946 27673482 27610819 27722220 27620538 27594771 27612301 27658471 27605838 27610466 27700926 27595211 27625622 27596712 27577852 27623588 27675605 27584432 27576166 27684088 27611542 27598417 27584511 27626282 27609167 27575441 27630295 27613540 27659975 27622409 27566949 27570722 27591650 27603854 27633036 27640903 27575779 27583914 27612563 27672676 27607160 27589353 27582177 27616645 27613115 27646156 27598276 27583259 27614314 27629114 27680840 27555772 27638048 27628703 27598949 27550232 27635887 27601038 27650512 27558085 27556298 27585661 27625724 27591878 27602910 27641486 27612163 27642298 27583987 27651862 27620700 27614772 27565194 27610866 27569841 27625315 27634336 27609530 27583798 27592169 27623112 27576887 27603607 27633763 27569541 27614327 27598578 27626082 27584758 27568615 27584418 27570745 27605051 27567094 27527741 27636079 27525469 27603576 27584950 27597198 27592152 27587836 27541867 27538813 27574933 27593749 27530236 27516503 27581798 27550186 27622892 27528369 27542163 27527414 27582689 27633080 27582459 27569342 27568898 27547869 27578733 27634208 27597703 27574666 27572225 27569413 27575375 27549473 27533259 27573772 27585095 27602193 27535393 27538288 27527972 27562664 27558232 27545139 27530142 27476779 27549522 27541957 27594101 27583421 27611004 27552955 27514582 27546013 27529146 27501188 27531650 27577147 27553128 27537704 27548306 27540893 27619410 27556238 27547828 27521730 27635236 27578102 27564716 27515983 27538621 27532315 27612729 27558742 27543246 27581428 27547298 27554110 27571048 27497906 27598350 27572747 27537479 27510281 27560118 27604462 27533893 27580742 27529237 27526033 27554116 27487256 27564570 27546187 27525831 27528452 27561741 27525579 27502135 27528181 27548747 27544093 27574277 27598714 27539616 27565788 27447219 27509202 27551938 27559247 27510676 27568729 27570284 27524006 27526401 27551684 27514262 27474410 27513800 27505037 27571661 27523257 27559314 27543332 27505377 27463831 27470197 27503902 27482181 27531924 27513385 27547619 27559638 27517010 27582686 27586361 27515407 27478939 27491993 27545089 27516654 27587995 27489151 27474162 27506109 27521443 27563964 27529822 27501447 27531275 27533961 27482258 27432828 27467604 27493136 27510536 27520417 27530713 27530430 27543706 27567647 27574415 27493427 27557303 27550838 27531562 27479148 27527524 27521455 27426583 27516596 27529700 27476456 27525405 27532483 27513003 27510630 27441076 27498015 27508307 27573564 27521666 27544622 27529970 27505366 27480023 27558198 27497756 27513261 27519453 27542258 27477734 27533099 27460014 27499346 27497816 27511115 27524129 27462851 27515284 27458456 27482636 27463579 27515281 27490256 27509698 27516478 27547552 27538639 27503070 27505185 27537949 27526239 27440069 27473980 27462467 27477461 27473727 27458885 27430760 27497579 27506194 27450672 27482058 27464435 27497319 27488692 27569855 27474835 27456689 27426690 27473449 27452477 27395414 27502923 27445945 27442905 27527952 27543741 27480485 27551681 27482029 27460211 27420252 27462234 27428296 27463066 27503311 27536202 27431266 27503754 27471792 27444748 27498213 27514128 27492074 27442772 27476072 27475835 27524052 27461481 27477550 27469459 27471512 27452783 27527746 27416461 27438749 27427726 27452168 27417252 27499332 27459838 27501371 27454077 27477138 27475299 27463689 27408132 27432801 27485143 27479376 27461261 27472438 27516163 27453258 27472815 27465239 27468905 27421969 27420882 27457994 27474883 27441436 27444251 27474189 27483580 27479792 27414401 27448864 27432635 27476721 27448697 27440210 27468221 27450033 27431873 27468773 27414248 27457356 27450492 27470012 27469328 27483718 27429390 27418296 27468907 27480883 27475033 27392383 27425076 27478280 27442751 27502488 27493943 27439689 27406905 27450962 27432928 27433762 27480156 27481763 27411232 27404618 27415168 27493574 27404617 27489642 27462478 27414859 27465605 27425633 27402838 27387799 27420212 27445204 27426780 27412783 27483467 27436073 27403781 27402466 27489563 27425473 27399304 27409474 27449617 27414284 27446499 27406661 27438462 27412469 27426844 27432567 27443776 27448904 27394757 27417861 27438313 27418347 27377700 27445102 27468956 27409882 27409256 27401394 27343288 27422686 27436179 27420040 27468333 27485889 27486507 27423305 27437525 27367938 27404796 27395712 27353761 27428053 27384111 27434328 27397581 27447190 27472524 27448873 27370305 27433454 27382288 27418296 27385901 27473920 27357316 27397962 27416753 27434068 27438361 27393390 27404317 27404366 27498025 27435408 27443152 27471700 27368120 27379640 27389263 27414223 27379357 27402596 27463881 27474246 27424070 27367178 27424716 27398484 27422649 27407507 27353665 27396565 27422679 27379876 27396055 27386828 27381754 27391658 27325625 27462791 27359123 27401384 27437467 27378407 27417305 27444546 27413349 27335410 27456593 27412733 27405817 27403305 27383132 27368417 27382808 27456583 27354815 27391769 27421404 27444267 27402829 27410061 27422116 27390362 27336836 27361323 27447627 27437956 27389854 27390940 27382473 27354146 27411726 27433679 27407933 27408653 27284339 27348102 27334470 27342706 27324143 27402052 27368611 27319342 27328333 27327392 27408359 27372770 27334821 27345918 27339670 27316218 27337857 27357458 27382758 27365914 27337473 27388483 27361135 27341920 27332738 27341721 27321588 27423193 27321454 27364193 27393358 27382300 27431017 27377327 27374397 27324788 27342301 27347544 27342156 27358835 27343979 27365878 27285112 27391681 27385422 27333243 27333240 27308781 27385846 27347220 27374355 27287181 27352305 27405874 27315725 27401998 27389025 27316960 27402130 27349048 27348408 27290930 27342546 27354057 27261461 27398667 27300312 27308607 27255433 27336363 27248014 27317130 27323549 27319866 27343876 27330514 27379668 27318646 27337999 27340871 27337455 27295497 27312790 27330232 27364298 27376626 27362959 27329832 27313068 27298125 27327896 27314438 27298584 27341069 27330418 27280626 27295606 27367853 27311934 27284376 27364840 27332635 27368632 27299886 27300194 27240145 27283857 27352837 27287220 27320627 27391626 27333375 27325853 27352274 27356828 27306109 27347592 27313041 27327595 27321641 27309986 27348391 27301584 27288293 27274312 27342742 27238190 27285523 27280964 27340437 27326422 27288118 27323343 27336827 27311220 27320170 27203469 27274917 27399033 27329217 27319490 27358352 27319931 27359978 27294177 27302345 27324347 27311378 27298458 27410898 27322328 27260652 27290195 27312248 27272467 27275013 27302072 27270333 27298553 27337231 27337172 27394204 27401059 27312982 27357657 27296289 27313609 27370475 27287378 27223085 27329233 27260109 27332935 27319645 27330142 27326241 27288081 27311272 27292704 27302125 27262102 27328639 27327215 27356130 27259330 27311291 27312117 27272095 27317915 27264225 27315140 27289788 27282517 27251816 27293963 27213098 27271273 27319418 27256643 27270096 27311291 27270780 27306864 27323564 27304059 27318419 27295612 27327947 27278503 27249872 27293891 27312774 27247824 27265513 27260326 27271642 27246890 27278084 27301712 27264395 27319415 27322827 27275134 27270414 27269827 27263646 27268965 27294704 27257017 27312136 27231597 27292504 27311028 27260256 27303934 27225003 27226143 27264920 27279083 27234822 27315053 27285738 27345270 27260383 27240710 27315772 27261590 27268433 27279725 27274413 27248758 27323316 27266301 27293861 27314364 27263361 27299688 27241277 27287345 27261726 27318635 27269892 27301716 27266060 27204699 27264857 27245163 27279610 27270176 27238050 27231618 27279550 27209087 27270662 27210233 27275777 27284055 27268112 27232331 27329605 27220981 27277757 27226125 27251425 27258892 27334111 27263330 27303298 27218633 27232805 27219160 27304523 27274745 27256366 27180134 27265011 27240000 27293911 27275542 27272498 27257616 27238402 27260702 27236656 27275096 27220109 27251924 27247696 27248481 27274518 27224873 27241361 27205398 27278491 27262885 27246221 27218715 27217638 27235808 27282964 27188900 27240181 27282737 27257025 27265404 27177055 27242526 27244897 27228513 27194792 27215008 27256208 27302608 27158543 27149294 27243759 27212659 27186765 27264367 27233299 27174249 27217702 27228372 27204672 27293137 27191289 27290640 27190970 27189205 27204737 27233994 27183779 27239522 27201963 27219304 27201030 27177644 27233075 27222368 27263734 27262960 27239488 27164581 27247155 27221336 27321527 27280499 27196099 27166728 27252093 27225378 27241788 27188783 27236668 27248477 27132896 27224934 27192781 27246008 27175600 27274862 27181993 27234153 27236878 27171600 27214805 27288202 27235291 27257159 27193792 27168563 27188303 27217512 27216670 27136711 27231242 27222573 27232291 27267432 27197153 27232526 27210372 27221046 27231963 27186041 27223019 27176880 27180355 27206220 27221605 27137220 27196217 27209598 27104854 27161045 27209733 27218789 27126358 27176289 27217251 27197862 27218485 27189276 27237333 27272552 27103778 27180001 27171697 27162740 27148639 27171008 27179233 27213293 27169879 27178490 27257378 27212524 27143052 27170377 27167516 27157649 27182588 27155927 27144787 27182919 27187766 27147413 27191019 27209935 27189301 27191513 27154866 27156142 27186602 27179002 27204289 27176474 27162306 27125670 27167336 27225306 27114940 27163643 27158915 27161214 27138139 27141454 27154024 27181456 27178503 27173206 27153652 27140338 27170858 27187804 27126489 27151803 27101883 27202489 27173105 27168069 27177452 27206481 27122648 27155275 27117149 27190400 27153089 27191314 27140655 27115211 27118546 27150299 27218589 27179051 27192123 27154388 27175397 27190625 27111999 27177799 27124276 27126911 27191064 27218950 27169767 27179981 27130649 27201198 27169377 27182405 27121150 27183151 27169047 27250448 27160430 27148363 27154456 27194446 27186455 27229642 27132901 27167866 27098819 27220475 27134547 27109430 27212336 27170900 27123684 27155584 27168300 27148882 27140225 27156136 27182837 27116678 27152612 27140259 27128382 27169984 27137344 27148542 27154680 27152952 27152084 27107508 27152696 27098875 27143247 27122027 27093510 27175761 27038103 27213886 27082150 27152122 27158312 27143347 27142145 27134967 27106356 27128667 27165720 27202165 27105925 27097480 27190145 27159374 27169137 27165049 27129146 27172444 27181727 27169577 27167442 27130416 27161110 27066455 27133107 27183966 27206850 27067683 27137713 27127752 27111319 27150758 27138611 27185097 27115665 27185418 27178230 27151891 27148849 27154959 27166178 27131842 27072525 27129981 27137933 27126732 27191801 27100676 27118603 27165659 27157214 27164306 27127814 27150881 27175060 27127924 27113815 27122792 27113816 27136257 27117485 27114688 27168859 27108536 27072295 27117009 27125584 27081415 27160314 27106727 27146229 27148099 27133168 27098798 27103958 27217942 27158832 27116800 27060754 27083301 27103843 27062693 27065922 27122358 27140542 27163746 27084467 27091407 27118178 27077163 27115028 27123752 27165876 27108566 27090193 27128208 27155628 27122488 27205831 27118596 27143673 27117745 27143058 27165209 27176389 27097685 27125247 27109727 27073105 27072837 27107465 27113458 27084098 27093225 27080890 27115685 27085568 27055407 27100942 27083776 27129527 27112417 27078044 27120086 27152775 27039790 27057432 27103126 27093195 27080033 27020538 27108408 26987195 27056173 27084488 27142237 27053108 27078460 27086535 27147796 27059714 27095202 27121626 27099067 27141870 27093013 27085924 27076315 27065326 27074224 27104601 27089845 27106459 27117249 27071594 27128449 27080619 27047523 27107422 27131801 27042895 27142574 27075108 27086627 27094848 27098449 27103618 27069868 27139179 27065040 27034656 27092554 27090064 27088581 27071641 27059363 27071142 27072022 27085970 27078445 27101858 27067593 27045864 27033275 27077934 27046977 27065761 27092587 27051989 27028240 27097372 27072744 27068345 27106049 27048520 27093713 27011635 27096818 27046552 27076304 27035616 27019106 27058133 27049583 27099897 26983171 27000203 27102068 27083289 27094328 27057307 27078780 27050048 27056953 27065245 27186592 27082962 27060107 27010829 27095856 27077202 27061782 27054135 27070387 27030942 27049714 27079453 27029034 27068231 27036734 27119211 27015711 27047064 27069015 26997095 27000998 27055188 27094774 27006891 27024328 27066142 27114193 27052694 27089061 26991677 27018530 27035830 27011939 27033124 27089502 26989734 26990026 27053900 27060803 27054845 27073481 27033035 27044105 27042607 27045526 27020295 27104569 27048412 27026074 27075387 27014989 27074206 27005083 27032154 26965317 26991401 26971704 27064334 26977788 27013620 27065894 27006674 27050237 27034385 27079965 27080659 27019228 27078467 26987101 27028816 27060442 27041737 26999905 27007477 27042121 27059152 27010522 27041819 27011951 27041648 27090101 27062735 27030996 27042908 27055081 27018901 27078844 26998827 26991761 26971512 27039435 27041882 27035222 27015188 27011381 26978412 26968880 26978677 26979090 26999619 27038540 26968133 26990065 26991066 27011193 26987030 26978513 26954744 27038357 26934258 26998462 27001723 27033315 27029875 27009697 27024305 27019745 26976573 26998505 27014629 26991725 26983828 27019232 26994034 27029320 27005055 26994966 27027053 26977715 26988011 27035739 27067593 27074204 27034056 26992811 26970811 27027359 27046940 26962756 27018475 26960348 26962686 27001042 27026515 26996740 27028338 26996918 27005082 26996089 26933429 27014415 27029628 27007316 26977392 27012522 27007487 26985360 26967610 27028677 26958223 26982419 27008223 27038671 26977694 26964403 26911377 26967347 27027258 26946659 27018898 26965850 26957711 26910947 26962810 27000859 27008716 27000361 27000026 26999660 27007707 26969503 27033920 27009704 27024197 27008808 26974341 26981669 26919976 26938190 26998598 26966020 27015370 26990276 26937078 26950262 26955425 26986773 26983889 26952235 27003576 26968372 26946983 27005034 27013570 26982909 26958071 26999934 26906545 26973308 27071425 26994940 27031050 27053114 26983708 26951373 27010564 26947485 26946508 26958864 26980613 26932244 26928355 26990917 26950687 26971202 26979627 26943581 27036192 26953332 26967935 26954866 26941827 26932576 26965512 26968729 26934526 26931291 26970369 26896350 26960371 27015145 26942073 26962096 26966554 26981694 26901397 26965815 26973256 26991818 26962955 26954077 26939103 26934106 26969985 26967380 26952725 27022094 26978072 26945030 27021492 26967494 26927454 26902441 26937527 26938229 26902300 26914904 26963119 26910277 26934870 26943573 26987174 26979304 27011698 26904939 26982906 26948484 26977276 26945005 26918338 26860855 26927360 26899151 26891157 26900215 26976096 26935678 26872394 26932487 26914519 26959540 26963643 26900265 26923145 26918583 26950954 26937543 26936108 26909646 26971579 26957827 26943059 26902722 26967826 26908057 26971942 26939630 26933485 26944236 26971259 26868988 26924006 26896877 26909835 26911504 26965546 26891508 26928969 26908737 26881659 26952658 26872987 26996290 26885123 27012958 26925567 26914225 26858622 26887796 26943411 26924572 26957488 26927802 26932070 26936351 26933038 26898347 26937319 26911055 26974971 26935169 26858993 26887325 26910044 26870561 26895030 26891222 26877281 26896589 26901299 26940774 26928940 26919364 26881988 26881194 26872714 26936641 26857549 26902327 26900415 26899326 26949540 26928368 26886407 26850619 26924749 26913907 26928434 26865055 26901040 26903379 26845354 26959005 26948398 26917317 26932555 26874912 26923192 26931762 26936480 26943751 26867014 26939462 26853760 26899307 26900964 26898372 26894096 26872067 26885424 26877757 26892696 26870434 26949795 26899892 26846524 26898861 26879954 26869348 26909595 26898237 26907433 26896267 26978333 26843448 26928272 26890574 26882382 26858049 26909294 26866331 26887702 26886701 26882622 26857888 26928770 26852246 26901808 26916574 26933851 26860183 26870353 26913625 26863209 26901310 26791119 26846756 26907329 26859939 26857799 26887332 26848884 26853518 26905720 26855934 26841553 26927184 26834939 26906933 26921398 26837437 26888277 26891698 26904122 26910852 26920511 26877424 26844790 26857932 26874542 26897607 26907926 26884937 26901441 26889299 26894842 26817948 26885159 26841496 26849643 26872674 26824396 26942551 26872795 26833662 26883559 26819635 26837325 26845360 26868242 26901788 26823327 26916257 26901174 26816650 26801617 26787669 26875230 26801343 26857011 26839715 26944156 26867426 26844432 26837869 26863112 26864176 26863716 26840266 26804943 26869295 26847045 26835793 26844777 26828035 26792900 26852991 26884681 26817057 26849499 26934909 26775385 26896199 26813103 26844860 26849214 26817252 26847222 26877857 26811415 26825782 26833647 26859771 26822964 26799063 26829439 26799883 26878175 26876239 26890068 26789251 26809605 26854935 26837191 26844239 26828376 26845912 26824843 26806790 26810917 26851041 26811876 26838744 26879735 26789287 26855288 26843426 26859427 26854290 26827614 26847611 26838272 26807918 26835427 26825961 26861030 26871006 26794597 26831750 26800347 26889078 26804319 26879423 26797464 26883103 26777249 26842372 26804383 26769742 26843326 26817667 26863578 26853368 26820268 26897595 26811722 26854865 26775071 26849254 26765701 26854518 26827294 26864069 26796650 26817192 26846831 26852716 26883734 26797174 26845138 26788400 26841640 26798008 26758996 26807560 26876253 26734309 26866487 26795266 26779177 26774875 26764529 26786593 26822517 26767087 26813258 26776072 26809194 26828629 26732293 26758350 26804844 26768232 26781908 26827619 26802588 26849754 26888519 26750882 26823164 26783289 26792453 26735870 26802311 26757108 26819885 26844017 26752985 26824389 26750415 26781944 26775618 26775018 26852038 26798368 26778952 26815917 26735651 26797565 26747206 26814792 26752986 26778601 26775850 26739146 26856281 26731473 26728011 26774165 26748085 26756929 26773325 26846946 26790309 26753481 26757382 26777769 26795568 26848363 26777202 26765427 26813055 26823316 26861859 26784980 26751461 26777312 26828738 26787810 26795245 26715582 26796881 26737707 26759214 26763228 26767842 26801429 26788679 26765786 26777574 26733592 26761066 26737016 26806687 26777266 26768372 26769761 26728437 26720396 26726427 26763335 26761519 26771687 26774333 26802315 26748351 26757804 26796015 26667836 26762291 26775971 26775377 26780980 26744042 26718418 26724295 26756846 26735772 26768403 26739316 26762797 26758258 26789215 26753368 26764467 26732602 26773435 26727590 26800019 26774911 26809849 26725285 26737108 26751719 26738171 26748959 26717437 26747339 26782949 26763411 26732615 26744257 26727647 26758186 26732762 26802258 26707516 26745006 26744976 26781367 26720764 26730643 26799065 26668437 26785173 26735767 26720691 26692576 26668610 26785932 26701446 26724495 26731040 26773954 26780465 26786581 26738200 26730556 26687866 26733131 26793920 26711857 26737571 26757645 26722272 26749504 26709825 26701027 26688579 26770709 26719459 26768259 26771785 26712662 26745727 26744949 26712273 26671657 26748120 26757509 26709299 26697832 26702209 26682400 26793110 26757017 26770590 26750835 26717646 26709039 26714326 26713690 26765091 26692670 26751922 26748358 26724506 26702369 26749917 26739666 26726568 26702287 26711144 26737971 26740230 26688474 26704925 26694787 26684133 26680750 26740788 26735431 26730469 26641617 26774497 26721555 26750407 26707122 26723436 26775325 26734841 26685963 26672968 26750212 26735714 26700468 26770776 26683514 26723268 26712934 26757270 26689952 26677676 26694905 26691083 26731090 26740986 26678353 26733199 26739676 26698761 26706731 26667448 26665734 26732799 26656551 26725490 26729901 26648286 26675663 26706017 26763216 26712766 26668080 26712734 26706477 26670333 26730767 26797174 26726158 26700527 26674666 26744922 26661685 26657251 26700614 26720774 26646676 26674087 26647283 26644671 26702053 26656484 26684090 26679910 26705827 26666964 26662767 26703758 26689118 26688732 26667868 26728625 26676391 26682970 26653057 26666599 26682261 26714602 26669098 26714440 26723806 26694766 26703464 26704651 26676584 26633078 26703431 26675380 26693237 26681641 26662071 26660553 26734481 26732637 26728098 26672423 26651637 26757670 26637732 26691177 26637268 26674043 26664103 26705866 26658771 26644768 26704156 26659657 26679721 26703933 26633699 26698829 26690815 26666811 26694555 26618397 26623404 26641310 26711219 26712073 26651271 26663081 26704734 26706217 26674610 26662259 26644791 26680133 26659488 26661429 26688715 26658182 26683114 26632236 26725683 26631704 26689868 26621275 26694068 26627125 26613645 26640295 26681812 26698612 26649554 26735939 26581762 26618146 26691306 26673972 26633186 26682249 26696303 26628615 26613979 26681421 26611059 26665352 26614194 26680652 26636375 26641920 26643594 26600596 26644651 26625101 26631975 26643791 26635588 26600421 26589196 26614541 26566000 26686841 26656571 26649252 26663417 26643904 26617855 26682656 26655289 26614131 26636539 26641344 26619178 26695279 26653163 26700472 26668186 26615144 26706045 26567723 26570247 26641182 26608719 26576250 26599070 26595173 26642444 26642800 26620704 26671806 26615046 26521058 26602841 26667929 26666063 26587544 26572547 26670057 26616635 26661128 26695654 26619735 26669453 26667770 26549398 26615296 26626727 26607155 26617221 26578491 26603831 26580813 26601694 26596526 26644803 26574915 26628781 26617042 26602797 26647942 26572843 26541467 26631177 26623412 26581534 26603339 26572710 26651593 26578663 26621815 26597096 26604502 26674605 26576215 26636675 26649774 26542118 26600749 26663556 26620159 26552507 26615775 26611773 26648043 26595564 26655026 26606154 26596864 26554525 26603670 26582532 26601489 26639395 26574129 26593256 26640011 26662502 26616130 26627514 26698090 26602353 26580266 26580689 26559892 26547286 26602259 26605820 26602121 26570846 26519357 26512226 26660243 26531076 26548316 26561007 26554093 26526955 26627852 26590081 26590480 26515669 26620862 26602453 26648810 26615454 26642442 26603772 26570277 26610924 26606399 26575113 26620878 26539619 26589051 26588342 26580952 26552724 26586258 26545889 26595184 26598304 26616794 26529864 26576520 26582774 26614622 26624355 26579401 26613698 26545697 26546389 26630236 26553372 26601228 26570360 26581968 26611624 26667875 26579286 26518519 26581713 26513539 26509565 26525016 26556611 26531953 26517362 26575821 26458109 26609439 26564899 26546966 26573115 26521268 26586088 26591178 26536637 26597342 26619454 26514459 26580853 26588297 26516666 26491990 26565354 26520715 26509578 26618883 26533166 26560441 26629968 26560551 26551047 26525794 26554712 26625077 26571848 26568074 26593940 26583105 26532606 26578679 26600360 26498320 26546184 26644706 26601090 26541336 26605799 26517483 26641035 26515552 26513639 26582733 26522723 26527062 26575407 26612496 26515588 26552958 26581883 26518348 26582782 26605928 26541549 26571667 26576210 26496398 26530315 26568763 26563083 26595917 26560836 26566958 26552206 26546937 26477090 26591358 26565904 26511034 26531259 26570632 26544102 26512304 26506011 26497417 26537954 26525837 26563016 26539082 26585990 26532865 26508217 26552576 26544962 26563922 26494413 26477692 26560199 26526939 26549724 26565967 26561035 26489310 26499810 26568693 26544962 26552721 26567366 26507844 26568107 26556509 26586296 26523802 26536649 26482461 26574489 26514158 26535439 26506400 26532526 26493581 26513240 26539665 26525284 26483732 26454020 26534239 26478038 26510593 26474746 26510873 26528437 26460571 26557250 26551690 26505543 26511707 26498842 26506266 26547615 26504929 26453662 26530601 26496393 26435515 26514005 26525069 26509796 26553732 26457941 26478785 26503019 26481105 26505915 26505474 26506541 26490271 26487581 26512815 26460597 26469196 26542110 26507652 26475894 26518540 26472707 26480905 26473256 26533669 26530766 26492826 26557431 26493433 26470691 26510604 26515085 26381954 26455174 26525320 26524040 26472944 26455820 26466009 26482957 26450842 26452403 26474986 26453478 26406769 26542851 26561717 26470928 26523724 26437476 26491219 26542938 26513716 26469905 26465815 26520449 26497046 26522273 26459708 26467378 26491894 26523798 26475570 26462973 26463797 26428562 26511300 26531455 26457639 26512930 26485980 26469621 26448196 26511221 26416484 26496199 26468588 26420073 26466432 26481846 26454064 26550041 26469499 26490037 26444200 26480198 26430407 26498638 26463972 26457857 26457237 26516081 26530814 26436116 26480348 26435322 26412283 26436440 26455737 26467074 26457705 26483199 26409690 26528324 26442946 26470165 26483995 26509537 26490893 26496379 26453418 26430108 26410403 26497256 26439437 26443779 26447219 26478801 26459128 26444958 26428301 26448146 26468856 26517895 26409776 26436065 26476344 26465531 26473495 26471854 26471986 26448792 26475734 26445998 26439466 26484532 26441088 26443122 26386095 26455393 26472402 26377504 26490932 26453177 26514115 26433822 26424188 26494816 26478463 26441487 26464528 26479302 26420616 26450169 26435527 26423713 26443339 26427451 26448003 26461660 26465788 26426416 26450021 26509755 26437315 26395505 26418631 26436731 26519088 26454237 26456222 26408939 26467190 26351290 26451381 26471768 26452149 26410072 26386439 26422386 26456912 26419620 26393236 26391206 26434241 26444747 26451402 26466823 26363763 26471112 26476804 26427974 26386765 26445524 26471959 26440618 26400515 26403660 26453963 26468621 26370795 26452623 26443879 26408363 26412108 26471356 26385023 26399351 26392813 26406417 26409539 26378248 26378331 26437941 26458016 26385822 26393236 26400157 26469203 26438154 26440131 26345119 26336662 26447696 26420407 26406472 26442735 26378684 26412806 26394713 26397043 26416678 26404202 26333763 26437461 26414754 26434707 26418618 26445408 26444343 26446824 26409207 26363822 26453816 26436817 26441226 26420623 26364747 26406818 26377956 26389473 26468156 26487270 26374186 26408554 26397930 26418090 26391230 26433365 26361139 26373720 26399010 26440969 26422163 26394054 26396536 26391798 26377575 26404920 26417589 26422046 26347773 26382923 26396531 26371768 26389146 26376238 26352818 26409369 26469542 26358560 26392743 26403576 26431739 26383445 26415431 26366868 26387354 26452894 26422483 26380485 26426835 26375680 26376710 26338362 26398719 26400532 26387593 26410786 26378700 26361908 26375803 26399583 26390468 26349590 26366043 26343044 26394097 26351239 26346623 26304525 26364775 26421375 26339001 26373339 26346433 26378919 26390549 26375307 26352207 26436880 26370023 26376583 26365322 26429818 26347562 26385267 26364848 26423100 26399391 26324472 26398546 26340759 26400995 26366428 26362151 26354651 26437180 26329339 26392222 26375234 26303517 26404824 26281081 26398441 26309628 26370279 26450215 26357524 26330433 26372144 26373026 26350404 26366387 26443850 26352969 26316987 26357869 26368060 26357145 26330689 26383809 26371298 26421509 26374004 26296354 26329368 26375127 26305655 26386076 26365273 26354559 26337566 26311405 26360376 26312210 26374325 26313301 26367545 26322793 26334903 26324156 26320559 26333379 26317356 26381195 26360406 26333141 26307576 26314223 26313519 26271773 26333878 26345831 26354629 26350815 26393893 26317235 26369513 26366503 26333921 26348096 26342397 26318699 26309424 26391638 26332424 26334731 26301021 26296250 26336411 26365874 26306484 26281242 26279125 26354125 26313136 26338903 26300619 26394427 26366459 26248150 26315940 26297947 26307854 26342318 26329219 26334107 26249699 26298791 26323067 26313761 26350593 26303254 26348396 26323034 26363132 26264927 26290956 26303157 26327862 26278012 26329715 26261432 26316235 26343760 26275675 26348185 26256277 26249307 26371709 26296060 26306745 26299487 26285466 26306957 26276092 26358123 26364080 26332844 26299078 26315213 26322453 26280042 26278191 26309280 26308180 26298128 26328808 26358981 26281374 26294657 26270631 26326516 26293962 26260022 26289828 26285385 26367386 26322841 26372495 26334288 26287433 26294391 26243782 26288574 26300379 26306761 26278314 26256147 26334132 26267718 26297068 26273867 26276011 26290442 26221038 26315445 26308391 26266679 26323001 26320393 26280057 26217421 26299453 26298810 26307106 26226025 26270289 26342771 26207590 26241852 26328316 26326721 26317721 26288578 26297590 26317617 26266784 26286398 26290424 26255511 26285806 26292307 26259358 26285886 26266105 26258299 26306875 26280239 26273840 26290765 26291069 26274257 26224819 26312697 26210913 26301570 26256794 26261471 26226704 26279842 26265980 26307315 26324718 26267942 26293561 26295344 26280170 26240110 26274892 26293661 26281694 26243260 26246561 26272048 26281676 26244035 26277886 26246580 26303770 26270892 26289517 26335775 26211448 26315161 26254545 26249244 26271392 26254370 26283422 26233938 26222572 26209615 26290774 26214626 26237304 26241463 26250549 26225906 26246706 26295344 26258409 26257949 26225592 26282530 26284169 26229920 26284139 26244991 26247523 26257174 26222788 26284951 26292315 26305284 26235667 26295085 26289517 26197497 26251087 26280214 26287923 26281355 26236666 26219101 26226958 26178958 26244822 26249110 26255981 26263042 26276515 26225624 26219113 26223759 26194483 26213851 26280304 26240639 26289784 26208059 26215741 26268898 26249327 26182582 26250114 26300039 26249566 26303712 26280246 26249848 26227767 26251192 26212549 26235209 26251417 26256249 26210342 26255544 26239441 26277320 26184661 26238031 26258195 26272011 26232759 26174070 26207866 26234394 26246885 26237586 26196040 26234879 26213074 26234677 26251292 26212373 26208822 26256516 26187726 26238272 26241782 26222821 26210577 26179179 26227239 26211260 26221401 26216130 26252492 26195406 26246354 26237123 26238090 26206556 26202467 26204578 26221992 26198810 26191935 26195727 26237215 26218653 26198475 26232931 26201708 26167281 26179618 26229049 26203805 26166293 26223792 26184009 26229321 26218077 26223763 26249544 26162791 26188388 26213680 26125953 26194356 26243418 26216802 26201087 26227386 26240845 26233689 26210993 26173428 26211802 26172039 26207127 26181362 26207685 26201010 26239493 26110941 26173655 26184370 26254546 26209172 26195483 26132110 26206473 26212209 26229809 26267010 26159732 26202730 26269412 26243941 26206908 26203807 26190646 26217592 26154869 26214725 26170861 26277719 26171509 26191693 26195440 26200451 26162233 26174565 26204874 26223403 26175932 26195643 26166201 26169313 26195180 26153627 26219494 26161300 26259569 26194275 26212715 26222359 26203768 26152082 26173778 26157687 26180696 26133841 26188537 26210218 26166553 26184453 26126986 26216415 26186832 26161615 26148709 26180259 26188858 26153144 26168756 26224339 26127022 26155521 26123772 26173436 26196020 26156894 26158931 26144736 26221386 26117106 26178033 26135898 26236305 26135172 26189578 26155221 26170988 26189250 26212472 26134525 26142403 26153809 26168395 26125003 26149935 26165961 26107389 26121091 26120944 26131631 26095175 26119876 26165631 26151349 26216205 26139345 26173909 26230348 26131821 26191937 26136577 26118353 26123317 26171074 26194202 26161371 26150002 26126416 26194955 26090167 26161630 26169822 26187037 26126780 26136671 26181821 26154271 26279849 26147252 26115513 26138405 26114266 26210868 26132012 26119444 26118219 26113522 26121846 26141871 26125416 26145696 26168411 26134159 26167043 26159068 26110237 26151559 26164295 26179027 26098646 26091101 26094747 26090653 26128266 26078500 26167783 26121057 26146563 26104165 26112574 26144973 26179508 26139352 26102664 26135208 26075567 26155624 26109792 26163739 26146906 26106256 26096201 26143743 26149032 26145992 26161320 26085487 26114633 26167466 26135465 26164563 26120861 26125153 26134705 26112177 26127444 26117273 26087242 26066282 26091210 26100809 26114420 26076048 26141945 26078124 26126005 26052081 26176847 26154638 26171149 26071538 26119409 26068920 26133877 26072029 26124482 26143020 26124213 26049955 26120983 26108208 26093619 26074378 26157898 26154703 26144234 26073272 26105821 26119611 26111603 26093804 26140008 26124776 26150511 26087448 26124148 26099796 26114825 26131266 26089883 26112312 26113137 26127591 26089934 26066462 26134962 26096399 26107146 26106180 26138494 26081014 26125780 26133374 26099716 26076392 26117961 26099748 26085408 26079720 26089222 26062988 26097584 26075833 26096188 26083428 26067184 26060490 26061518 26076249 26140732 26108024 26076105 26091607 26079383 26087123 26104221 26120876 26099363 26026402 26106075 26142612 26134142 26106257 26116385 26073384 26089770 26065735 26057354 26046464 26087434 26098604 26142032 26046207 26108952 26112596 26118548 26087247 26099141 26053732 26095114 26083198 26122115 26058913 26043745 26121651 26001699 26106399 26078565 26122127 26066779 26117115 26111550 26057595 26130148 26082880 26061162 26086150 26092972 26051243 26092318 25979441 26119613 26088147 26073464 26066898 26062150 26060781 26088836 26089343 26030391 25971164 26128802 26031036 26057716 26104056 26104391 26080287 25996740 26047081 26047751 26073142 26075799 26031524 26030245 26058214 26041259 26074559 26076672 26085483 26033633 26053777 26130479 26113531 26070408 25997111 26076687 26034740 26046790 26099496 26074291 26032995 26074342 26136697 26029112 26027623 26078334 26070623 26060197 26017402 25996353 26051888 26036288 26090809 26017150 26062246 26082630 26017116 26028049 25978599 26120906 26030459 26044414 26079308 26017043 26025009 26022920 26039291 26032395 26005285 26064007 26016589 26022964 26013530 26050968 26080090 25974845 25981389 26034151 26081765 25998885 26024893 26025710 25981730 26016235 26067379 26062444 26071135 26003308 26004575 26138540 26047518 25998386 26083233 25982745 26009276 26028759 26040766 26069361 26036628 26038286 25992392 26000104 26038209 25986604 26073056 26098534 26007145 25967887 26012892 26010469 26015583 26004492 25977813 26052610 26063804 26024013 26062219 26020752 26142837 26032413 26000009 26013382 26041342 25962143 25980606 26055132 26017345 25998745 25978855 26020337 25994789 26035580 25977886 26001897 25990247 26029785 26012968 25973211 26022735 26019591 26048012 25997748 25953126 25960939 26000292 25993048 26036293 25967953 26017968 25994901 26068693 26020881 25958414 25922648 26015068 25999414 25942454 26004878 26016869 25992743 26006344 25977047 25993695 26024153 25966758 26008683 25961431 25990935 25977722 25962756 25936667 25978865 26013843 25955743 26021464 25946615 26010591 26009240 26091867 25990608 25991276 25922075 26026344 26005895 25946415 26010000 25982696 26008076 25993520 25927113 26006314 26007217 25985490 26002979 26029592 25996850 25977830 25907536 25975123 26011777 25955468 25966987 25989220 25969964 26034960 25981641 25955229 25984206 25945465 25921696 25968555 25953744 26003330 25936501 25914754 26036605 25908606 26037291 26010007 25964756 26014350 25957837 25924214 25997926 25950135 25930975 25976143 25962449 25975140 25986419 25930581 25992475 25978271 25953002 25958404 25981103 25943349 25950532 25973953 25933678 25962360 25935359 25958806 26029988 25989619 25939630 25956370 25947219 26009789 25961087 25938229 25927161 25921366 25955249 25922233 26016338 25990165 25951589 25954308 25946694 25935102 25945145 25926310 25958403 25869036 25983401 25929609 25992433 25952947 25940745 25955168 25937249 25948988 25984211 26001490 25942400 25941910 25937672 25946125 25995143 25951741 25965055 25999592 25918192 25914030 25993206 25959246 25908419 25911973 25948553 25961405 25910821 25919971 25909591 25988409 25873439 25921111 26015783 25950544 25966825 25985469 25987077 25974298 25949949 25974648 25887699 25935572 25941464 25919142 25926859 25925255 25926620 25897559 25973589 25928319 25914391 25986613 25903690 25903199 25910238 25970250 26001866 25941878 25927826 25948842 25891541 25938518 25955186 25936150 25879294 25863462 25957237 25906155 25927025 25906297 25886657 25966293 25942144 25890491 25887433 25961491 25940589 25926826 25883792 25932848 25897065 25933465 25901531 25937102 25948351 25934688 25937597 25927963 25927512 25930962 25938832 25957088 25924951 25913337 25915136 25944215 25925689 25907675 25994066 25936055 25975056 25870658 25938106 25902230 25947160 25912714 25876483 25892287 25929834 25919086 25921314 25902127 25888666 25928671 25849095 25946094 25891914 25945767 25898841 25914809 25871636 25962183 25883185 25924755 25873630 25992634 25889053 25954185 25933125 25920113 25949525 25928628 25855317 25865653 25903058 25877825 25913177 25812319 25891438 25913401 25863175 25913909 25907722 25901478 25962424 25937826 25895167 25905208 25878221 25832209 25908353 25865923 25889216 25953376 25857543 25896283 25927233 25966704 25885859 25919957 25858302 25878203 25851586 25930804 25936854 25959664 25896688 25905313 25894334 25899512 25876873 25865080 25867159 25920977 25888797 25898843 25883388 25868630 25865008 25885685 25858859 25904828 25918681 25886694 25827971 25850394 25853983 25935682 25888437 25844601 25842904 25896098 25884302 25846157 25918846 25883213 25812450 25905685 25881543 25852951 25878419 25853237 25852923 25819862 25899152 25867997 25900013 25880115 25819949 25857477 25876212 25859030 25883424 25841634 25856108 25824369 25836910 25835336 25842244 25823097 25841939 25797712 25879498 25835663 25849769 25845552 25859430 25875155 25889970 25873210 25873173 25839501 25816681 25879354 25843187 25922365 25865185 25922661 25818888 25820558 25866655 25820945 25898336 25889605 25807668 25854597 25857479 25859197 25829204 25809505 25852377 25804494 25790365 25828989 25791436 25808006 25899925 25813325 25829607 25880810 25873031 25823678 25829276 25860941 25848477 25802421 25773025 25854470 25849608 25828573 25838535 25813689 25832783 25865984 25879067 25822499 25809186 25836254 25852121 25825911 25812196 25772051 25806506 25843568 25865243 25841447 25849651 25814978 25799802 25835543 25813156 25861456 25885781 25833234 25836638 25841423 25878195 25869107 25823876 25841947 25783978 25816850 25851195 25868923 25859783 25886131 25899971 25814526 25795562 25809308 25800823 25797682 25813332 25794077 25793921 25824128 25766391 25824387 25844630 25764656 25877204 25783476 25804561 25859727 25822644 25852650 25826160 25806811 25890867 25900333 25825694 25850424 25795188 25836875 25763428 25801073 25832891 25825349 25788980 25809885 25842867 25850124 25789652 25816707 25801467 25833956 25839898 25791381 25820233 25832150 25855405 25722212 25830192 25826146 25725753 25817525 25765027 25855651 25783754 25781608 25799221 25799129 25752525 25806875 25779061 25838957 25807586 25752977 25802866 25776223 25816368 25792590 25787393 25778195 25783560 25793691 25868016 25788596 25769701 25748583 25761302 25776485 25782026 25744472 25793214 25745398 25810949 25802990 25839166 25784878 25784915 25799183 25755477 25816049 25817466 25783325 25772815 25828788 25764231 25771361 25763999 25807348 25781993 25741778 25801116 25767909 25781727 25733552 25761341 25804907 25844230 25824702 25737651 25731847 25811693 25788604 25758388 25815039 25815407 25740627 25781218 25715860 25776596 25792931 25795798 25753250 25816009 25753623 25714249 25715685 25781977 25784129 25762917 25758968 25782310 25786015 25739073 25717537 25843664 25791866 25767047 25792066 25694726 25750074 25763993 25756835 25734146 25771301 25731086 25720058 25777203 25746813 25779305 25766855 25804156 25742469 25755354 25747313 25735957 25788909 25777001 25772750 25742817 25747022 25773789 25784308 25755449 25694767 25738919 25738738 25768701 25750949 25753443 25754596 25727243 25736932 25765541 25732332 25755772 25765478 25718954 25720044 25775909 25665001 25754782 25833778 25775561 25762010 25752655 25762563 25727624 25690901 25721908 25750295 25699457 25741234 25748855 25685621 25763156 25810505 25728902 25737206 25780384 25799864 25735419 25700327 25699034 25725697 25726735 25737500 25740823 25774151 25688527 25749647 25758465 25719516 25737715 25728238 25732852 25724450 25725430 25743848 25769591 25760556 25758139 25750956 25767235 25770043 25702711 25741372 25695270 25695410 25735377 25726178 25784027 25740991 25674090 25696565 25748157 25693939 25735368 25733611 25739264 25735544 25672687 25744415 25724125 25758816 25739105 25734042 25743580 25740291 25763333 25684232 25740087 25714021 25739241 25750406 25697056 25655576 25712035 25680031 25696811 25708108 25733278 25730287 25711748 25753759 25694215 25663206 25687625 25699537 25718008 25678650 25722882 25707605 25710466 25663443 25691908 25680005 25677554 25716373 25708161 25714633 25696868 25643486 25692381 25732097 25693851 25714386 25706450 25711856 25676313 25754052 25678913 25711647 25771550 25694995 25701586 25720064 25689816 25686533 25738502 25642050 25707447 25671218 25767887 25687838 25720070 25717297 25706054 25661817 25728944 25663715 25716936 25696308 25722965 25761437 25619932 25664394 25711431 25667755 25678102 25723284 25709653 25672945 25675762 25627835 25699429 25696937 25683669 25686814 25666377 25684810 25725041 25664936 25653871 25690898 25617479 25698480 25681186 25647046 25705447 25675649 25649475 25740430 25704927 25713498 25660719 25702060 25661976 25651591 25667382 25667257 25662393 25690377 25634506 25676175 25675398 25650194 25666324 25717005 25668374 25657600 25698838 25647300 25671617 25757327 25652751 25553513 25645994 25656354 25664952 25683854 25660502 25668853 25620481 25680602 25684903 25655110 25688117 25676498 25632669 25664183 25631046 25654693 25650418 25655253 25651836 25661808 25688822 25714358 25685368 25713008 25641307 25658755 25629920 25628153 25673317 25651082 25687936 25704044 25619262 25683012 25667107 25699136 25619654 25623409 25679096 25634825 25668006 25722338 25667790 25667419 25605152 25666674 25664456 25633450 25672586 25620250 25660925 25654459 25646017 25608344 25658361 25666451 25638278 25633378 25650465 25667968 25640547 25613988 25667092 25614967 25696483 25636004 25657584 25655460 25658491 25637975 25650615 25617608 25688013 25602491 25648893 25629575 25667916 25680387 25720264 25608603 25641020 25684698 25598966 25621100 25664996 25634642 25607254 25625099 25626761 25629157 25655152 25639030 25610634 25613537 25613171 25639955 25594174 25599084 25632189 25597139 25610190 25608631 25597218 25601932 25656547 25654377 25669782 25598481 25626334 25580128 25664039 25672351 25595095 25617042 25652056 25614830 25606138 25602398 25604340 25592159 25650428 25651204 25594620 25639082 25586856 25630074 25560376 25634083 25644823 25575639 25641514 25643440 25563053 25700828 25603554 25622347 25617976 25603140 25582441 25658242 25542612 25631776 25567418 25549935 25607516 25604860 25653863 25595694 25562285 25614299 25584324 25569170 25604395 25592898 25627355 25590568 25624906 25608326 25631389 25608164 25563520 25636370 25632005 25669810 25584507 25604566 25634930 25623648 25597363 25653211 25608544 25664883 25676689 25567984 25612516 25568666 25552783 25663191 25587990 25559003 25612002 25567773 25597014 25551580 25609788 25595504 25565253 25622365 25579474 25587358 25605064 25606711 25611436 25534607 25563121 25547820 25595348 25621471 25604560 25626710 25588081 25527107 25552186 25588310 25593481 25586912 25525299 25591714 25609600 25567997 25554371 25589986 25592212 25528126 25590234 25624472 25642911 25545089 25564676 25624974 25574025 25545719 25501635 25657760 25549031 25579491 25559517 25536668 25579518 25592314 25630623 25581464 25547167 25552836 25544575 25572856 25558527 25518175 25551557 25616527 25615202 25559810 25493095 25611201 25568970 25540383 25558902 25566271 25560413 25524252 25554793 25638762 25587398 25528512 25545593 25591656 25567978 25540188 25536233 25540814 25592738 25631096 25551043 25552883 25567621 25582488 25520883 25576569 25589380 25543934 25596538 25578042 25523047 25588409 25608541 25514098 25515319 25497517 25545123 25558586 25554819 25488133 25473779 25512633 25501582 25593423 25498756 25580842 25530379 25590440 25493116 25501591 25534906 25571402 25570086 25578129 25585932 25534144 25514299 25554713 25523456 25545285 25552767 25529330 25537199 25538035 25536180 25509659 25570291 25526261 25546469 25518022 25530512 25593197 25534405 25582677 25534576 25553432 25469945 25506805 25524568 25531613 25615966 25507426 25591594 25539891 25508782 25431391 25520555 25490658 25544734 25462600 25525235 25537521 25553083 25497285 25479523 25498086 25515851 25510236 25537171 25541305 25536337 25495765 25514564 25489023 25541282 25553569 25525731 25493167 25540548 25530038 25500541 25537585 25561518 25544166 25467606 25531765 25509236 25556623 25470335 25537763 25506195 25490975 25502371 25581910 25545006 25559671 25511853 25520987 25485038 25487252 25488020 25532462 25527385 25530069 25457550 25511682 25519553 25469990 25558842 25501440 25488025 25538945 25520095 25456324 25550601 25511508 25521080 25504048 25462774 25500179 25530691 25525836 25460179 25475573 25492195 25507404 25518954 25486080 25527704 25468828 25489686 25442527 25496213 25522081 25387068 25505544 25505653 25435603 25513057 25504158 25539858 25511939 25506063 25517384 25562502 25498104 25466100 25514031 25474011 25512863 25504086 25509389 25450990 25505908 25529165 25506671 25490411 25452491 25475888 25506952 25504057 25465715 25463817 25441583 25548978 25413467 25468382 25424300 25463266 25495007 25487826 25473704 25480476 25463574 25473741 25503956 25441402 25523613 25466145 25432189 25481415 25474326 25471558 25485103 25474835 25424527 25466212 25484451 25505209 25498334 25440740 25523998 25464636 25502797 25453060 25482899 25457799 25510694 25456461 25400749 25488994 25441480 25468349 25470533 25472400 25470920 25424840 25440248 25491202 25509775 25437242 25544605 25513420 25501620 25423544 25483719 25441548 25423502 25515931 25519302 25451978 25482879 25466520 25455895 25496134 25416607 25476134 25476245 25331054 25409500 25429322 25442566 25474133 25470231 25497031 25431267 25479109 25471500 25462959 25483665 25402058 25456953 25436089 25454164 25378487 25422183 25427255 25450425 25445680 25417746 25399064 25409804 25477422 25527745 25416778 25476780 25427349 25444090 25441852 25410884 25385282 25449048 25454713 25460798 25462564 25438973 25460905 25434111 25454553 25468968 25443888 25427145 25397651 25482620 25422634 25471493 25483523 25397807 25462668 25414715 25474317 25421335 25455885 25423590 25379967 25424487 25418976 25470139 25399966 25416634 25458426 25370610 25467325 25390113 25390747 25451456 25388581 25377634 25489950 25446430 25433398 25475203 25401089 25389361 25434686 25402093 25374403 25415290 25355160 25384329 25426741 25434088 25376712 25448380 25400124 25459223 25405405 25413320 25416125 25387455 25464074 25424332 25411946 25415206 25493475 25468371 25426850 25429111 25388089 25435755 25392955 25390870 25408231 25467381 25371943 25402191 25430492 25435317 25395906 25317676 25400374 25433323 25434003 25395522 25462518 25427623 25394376 25395050 25418890 25440306 25465786 25379023 25405542 25421967 25372188 25399834 25409266 25372161 25411716 25407710 25475773 25430231 25403383 25379803 25424663 25408111 25385751 25413408 25415061 25415418 25436354 25419643 25434032 25399333 25423004 25385611 25370367 25358601 25386082 25385730 25411934 25426596 25421823 25462022 25377233 25397732 25388861 25451171 25381568 25395888 25405479 25360822 25387905 25417347 25451629 25500981 25387999 25371825 25359181 25439342 25390368 25339444 25394698 25394200 25382311 25359336 25349189 25381370 25431371 25402836 25394551 25371674 25425120 25333878 25378228 25404021 25375895 25346336 25406445 25394003 25378654 25379772 25396548 25380472 25419609 25382024 25353842 25341077 25372641 25358661 25365541 25383487 25366473 25416810 25397060 25392956 25332678 25401915 25356478 25413516 25406006 25395798 25388204 25352891 25436977 25338535 25377736 25387952 25342869 25435574 25390866 25402420 25411195 25339899 25330871 25361707 25340104 25329426 25354967 25370284 25352013 25387757 25374432 25371595 25347226 25386210 25380300 25375494 25314216 25336442 25351312 25366405 25355315 25377617 25381485 25357358 25344294 25356923 25341298 25429212 25331814 25346227 25401378 25369646 25292469 25355724 25320125 25364798 25308450 25354854 25324093 25387447 25316813 25380088 25343791 25394559 25364292 25406007 25323231 25349475 25300646 25408957 25272882 25354154 25348350 25353723 25326925 25289859 25356570 25352073 25342299 25329211 25379448 25332143 25352745 25307388 25400952 25314391 25284672 25337841 25319896 25408594 25298968 25360238 25329813 25381631 25326709 25349325 25359755 25305277 25321753 25269432 25335231 25378009 25375430 25276669 25305922 25346593 25346867 25347389 25353070 25376327 25327219 25277425 25369397 25351745 25266982 25350312 25289666 25372109 25278996 25336247 25322159 25322489 25366033 25282234 25314553 25314405 25287335 25331098 25309757 25329734 25367081 25395848 25340525 25299587 25362537 25297979 25288389 25368008 25310693 25312851 25298767 25294848 25337870 25316598 25316764 25293083 25307082 25336094 25311860 25307836 25356133 25340036 25331291 25290854 25350241 25293127 25251354 25325451 25327755 25319582 25363985 25295293 25313549 25311825 25286528 25301185 25328957 25268710 25268751 25314071 25310916 25249948 25334891 25351156 25291738 25268863 25327453 25245635 25287742 25338038 25346612 25234703 25320002 25298943 25315246 25307052 25221397 25262619 25256080 25255328 25289124 25292912 25222757 25275262 25288824 25256187 25295901 25298690 25274788 25259213 25374595 25288218 25297812 25281645 25361012 25264990 25290513 25320702 25299840 25244783 25258152 25307002 25321673 25319269 25331504 25300065 25260617 25295367 25313785 25328387 25254228 25246935 25274851 25303825 25320328 25253835 25261618 25336477 25282645 25291069 25265074 25240992 25263494 25278189 25287605 25317412 25279043 25292435 25215907 25327603 25296558 25269860 25256540 25217928 25254144 25287962 25251697 25223526 25237743 25263569 25215587 25274121 25280732 25308451 25318429 25280343 25261359 25307912 25245988 25235639 25277534 25305713 25313042 25267409 25278881 25278529 25237267 25295208 25254365 25254419 25271674 25235171 25230159 25251920 25245742 25221859 25271296 25315441 25284425 25247970 25269296 25263230 25261936 25288699 25230245 25228233 25267334 25267966 25217055 25260805 25204151 25297331 25238065 25238938 25161388 25254321 25292432 25239893 25253787 25269022 25229302 25236016 25241313 25247553 25260927 25219917 25258414 25243922 25232094 25219219 25261027 25254644 25239855 25178452 25256390 25284992 25290507 25245560 25248278 25230797 25259870 25241796 25177944 25260956 25214632 25244289 25260698 25244984 25234331 25245211 25283817 25201146 25255929 25249024 25212929 25219579 25160681 25263095 25237908 25310899 25190824 25249673 25244337 25206594 25238706 25187203 25179066 25219120 25273492 25224766 25172616 25301831 25243093 25205732 25224670 25234820 25231598 25253928 25242369 25266717 25188055 25286896 25181641 25198051 25174680 25182488 25157028 25167700 25241183 25214594 25256900 25154465 25267449 25204870 25195907 25228033 25192199 25235761 25218655 25171222 25248716 25286414 25189839 25190291 25235274 25167775 25158288 25150304 25214874 25176344 25189332 25195093 25168527 25196891 25216776 25149659 25174232 25198556 25248112 25211162 25156335 25200278 25186312 25261558 25217340 25232961 25203458 25132549 25199576 25207127 25249975 25199499 25220777 25199259 25200333 25172748 25216086 25184402 25179655 25294988 25231663 25170377 25181255 25207032 25194403 25159263 25178746 25198737 25200817 25160564 25173518 25202030 25234361 25211687 25180235 25171635 25205811 25149739 25195936 25146805 25167408 25175865 25174132 25178871 25179397 25208612 25247337 25164614 25228785 25161915 25181414 25142597 25207718 25216924 25171961 25151641 25221968 25178022 25176589 25244404 25174894 25083012 25139307 25223251 25122469 25175895 25143870 25215436 25223023 25082735 25186621 25126836 25178611 25157077 25175613 25183752 25234179 25288669 25177973 25144840 25119184 25146623 25190504 25120330 25235252 25207513 25149699 25214953 25105399 25127565 25207157 25073771 25167487 25147595 25093640 25150718 25148633 25129951 25180623 25196063 25180928 25162051 25108136 25146510 25120334 25169946 25152182 25221024 25169712 25112784 25206325 25095034 25200903 25194799 25194151 25171631 25117921 25187942 25128392 25104986 25170521 25154449 25139317 25095670 25182185 25184129 25151770 25192461 25161265 25186642 25141724 25144428 25195080 25152668 25158258 25159026 25130207 25150099 25135762 25136676 25135441 25125495 25130733 25111071 25176218 25134816 25165804 25148272 25190176 25134402 25131174 25084084 25162293 25083489 25028401 25120225 25130006 25134532 25178722 25149199 25136753 25183552 25088627 25177955 25149023 25073905 25100204 25136090 25106624 25166485 25118093 25165385 25133376 25176830 25112655 25117344 25160124 25139697 25143740 25117513 25076518 25165008 25139275 25136534 25143883 25097830 25169804 25138937 25115534 25206650 25137752 25125458 25106108 25152941 25118590 25094252 25117650 25102492 25156927 25128122 25162856 25083806 25163656 25130164 25094782 25107072 25129625 25155252 25136469 25125618 25094355 25113049 25113021 25138280 25101567 25158477 25149620 25106568 25075951 25113839 25068407 25112942 25143061 25137465 25135933 25167756 25122133 25168650 25056669 25103926 25097407 25103996 25109018 25126733 25091184 25165299 25094789 25093542 25121243 25113144 25085428 25149439 25073975 25075495 25080219 25086911 25148456 25061696 25094065 25089804 25121716 25142935 25105355 25018649 25141206 25105299 25126947 25137014 25072970 25125890 25109229 25127998 25087354 25069802 25119751 25133822 25095711 25128340 25077564 25094669 25093872 25101033 25094320 25076479 25069737 25120997 25112562 25080068 25090923 25091142 25109177 25088911 25051864 25087612 25037641 25036862 25069768 25085514 25111780 25133342 25099738 25093797 25065395 25065173 25064520 25103785 25085594 25092396 25166715 25064039 25076644 25087044 25094892 25081922 25064869 25041356 25078008 25080996 25084047 25089478 25071387 25013194 25101876 25047873 25077455 25054768 25115474 25087054 24990585 25111248 25029076 25058329 25070817 25051631 25003107 25073563 25112768 25075745 25025112 25010946 25108207 25052655 25067119 25026888 25079822 25137603 25072531 25076263 25038307 25126798 25059370 25082531 25096118 25091811 25062134 25098450 25098954 25102016 25086173 25058676 25037696 25079191 25082341 25068531 25053111 25013535 25017093 25021345 25007659 25076372 25110862 25104603 25060694 25060004 25054192 25018706 25049932 25032763 25015399 25052945 25017926 25005387 25049432 25052048 25045276 25065248 25079704 25056680 25016316 25015901 25012849 25038174 25018493 25061954 25074655 25051810 25007466 25044659 25009113 25029179 25011191 25041796 25045775 25111530 25063951 25026419 25043937 24955061 25024455 25012766 25076895 24979715 25049325 25051814 24974021 25020809 25058169 25071788 25055017 25045185 25017829 25019712 25023964 25048660 25042902 25086178 24958339 25012497 24965724 25010898 25021005 25075268 24989409 25005802 24992583 25052322 25061882 25020512 24984735 25023382 25024875 25014716 25011609 25049789 25057283 25066258 25003919 25028272 25060491 25051889 24981068 24977429 25046241 25042735 24945008 24984413 25015670 25017783 25013029 25045272 25088852 24989243 25040290 25056527 24946858 25036155 25014160 24988234 25004608 24978176 24967115 25033163 24974121 25043986 24998160 25008609 24986765 25004996 25025150 24993944 25036441 25036532 25016439 25038578 24976966 24998741 25024387 25002565 25014371 24998185 24988299 24974992 24932667 24991569 25025546 24973274 25015571 24938255 25006093 24964370 24981359 25041218 24980214 24985150 24985254 24998579 24994903 25031300 24998799 24977237 24940800 24990883 24983354 25020097 25035212 24938227 24995833 24982177 24981335 24946685 24937692 24922422 25025783 25046200 24960126 25003202 24989717 24997218 24998133 25010637 24961366 24994524 24978700 25026878 24979253 25022157 24974789 24983804 24966200 24981835 24996889 25014721 24919290 25030337 25000369 24941117 24960266 25034418 24945413 24932801 24935355 25020901 24928981 24968400 24957650 24965494 24999674 25052084 25000546 25014874 25004378 25047467 24984321 24937972 24947357 24966587 24999400 24980601 24940169 24923757 25012585 24998831 24949263 24998372 24916551 24967056 24974696 24921755 24945392 24966177 24954578 25013027 24954147 24945247 24925176 24906223 24978480 24980722 24962098 24989912 24925823 24968170 24917394 24902705 24960527 24932835 24981019 24940227 25047755 24942312 24991449 24962217 24917938 24964407 24945620 24924828 24897557 24945444 24907901 24941738 24948625 24943930 24920601 24934405 24935953 24922239 24972739 24952348 24992442 24950074 24925292 24953025 24946542 24952295 24972814 24894645 24943354 24935649 24913845 24899335 24929161 24918084 24960313 24910381 24964573 24950995 24888903 24893787 24936698 24951146 24896553 24919274 24984180 24932954 24950980 24922547 24927412 24947093 24864774 24943752 24924588 24968848 24951204 24935294 24959660 24907270 24938324 24972705 24899598 25002917 24973353 24887731 24898076 24869493 24886639 24903687 24985044 24932383 24933042 24911245 24900718 24900307 24893401 24892689 24944919 24969036 24905060 24960401 24910151 24922274 24927725 24866747 24956842 24943422 24966373 24929491 24945695 24898855 24883664 24959619 24895019 24875279 24868100 24924648 24887540 24924867 24867765 24880704 24887155 24961862 24856266 24905567 24880093 24871671 24909311 24876896 24876729 24896849 24869016 24845280 24935579 24877290 24882186 24899192 24878158 24882782 24878195 24867427 24927407 24898812 24902798 24951625 24958161 24869253 24886906 24924272 24921318 24865769 24892729 24885915 24876407 24884399 24925142 24877859 24908051 24857447 24900855 24866352 24912869 24824463 24880358 24880226 24885933 24876269 24943150 24864721 24861029 24853626 24883577 24866370 24942521 24886803 24834365 24910478 24897918 24866621 24857473 24827001 24880968 24912245 24960270 24901623 24891175 24880671 24931262 24857835 24876018 24893354 24837660 24876814 24850483 24918367 24906232 24860280 24829312 24928116 24851332 24826694 24911333 24867662 24874030 24895120 24880606 24910798 24862506 24793433 24857554 24914200 24791645 24874074 24882997 24906356 24893675 24876519 24906087 24894475 24881518 24808226 24886810 24848212 24893450 24818260 24834615 24817853 24834616 24879269 24800826 24879660 24820339 24849999 24878296 24874829 24818999 24804356 24844718 24857269 24816971 24817637 24848065 24854283 24807129 24878995 24883657 24843198 24863909 24839833 24868030 24863416 24866558 24835899 24905712 24875282 24800718 24825576 24853701 24828609 24842663 24798216 24845469 24812175 24850546 24882472 24826462 24831504 24841162 24784131 24844787 24868294 24838421 24860963 24848065 24820506 24932835 24794512 24863127 24860588 24849433 24814070 24854702 24865452 24835690 24887279 24893903 24801569 24901277 24858088 24858996 24850807 24815475 24846896 24837466 24824121 24872064 24836711 24813138 24865981 24876084 24821676 24788144 24893171 24866575 24824209 24852125 24766400 24816199 24812240 24770168 24897875 24805984 24789706 24778986 24831867 24831381 24825439 24769178 24768989 24835469 24797665 24818259 24808853 24875415 24817891 24821997 24816929 24777750 24787349 24760764 24832958 24906504 24821198 24801527 24845822 24838403 24844985 24848063 24827213 24837728 24769066 24813950 24831942 24808136 24815911 24858303 24852648 24861958 24830298 24797483 24810238 24787834 24816885 24786457 24809888 24831017 24855375 24861006 24775576 24801951 24817716 24823752 24798506 24772516 24874315 24861075 24799596 24778060 24829625 24779488 24834236 24792449 24810862 24852594 24797584 24804976 24852316 24735664 24776404 24855972 24803063 24778592 24838874 24839099 24811223 24749527 24752859 24734567 24818438 24836536 24867227 24767043 24770922 24757666 24763280 24783697 24775245 24811091 24758511 24780458 24790825 24777290 24750760 24867532 24796262 24793569 24833145 24758685 24818067 24802349 24761311 24805851 24790141 24857650 24790557 24744270 24785804 24831206 24763954 24747576 24790079 24785161 24813828 24823561 24770799 24749864 24785407 24851963 24731073 24763592 24761197 24784709 24766478 24782246 24796333 24737659 24737023 24760511 24772734 24729703 24724313 24796631 24755674 24781168 24734232 24785412 24802199 24755687 24790996 24774561 24760388 24779690 24763580 24774406 24814992 24777986 24811305 24741999 24774324 24735353 24775318 24748307 24797530 24801642 24839979 24722845 24788518 24800779 24715008 24709287 24716266 24761579 24763555 24729896 24747715 24733551 24785757 24691488 24756661 24733907 24765520 24720767 24736477 24729849 24730870 24756995 24662604 24768514 24757372 24758573 24753502 24785856 24805345 24726405 24753725 24745192 24741392 24745168 24760680 24770015 24742643 24743009 24744512 24807211 24735332 24745191 24734402 24752857 24713967 24719260 24751406 24723185 24717392 24764433 24770879 24754671 24709369 24700693 24779857 24763491 24730614 24710106 24715581 24752921 24779464 24750921 24713973 24740788 24763116 24708896 24706353 24692586 24709032 24802665 24732730 24749839 24707547 24700522 24759446 24712609 24709684 24680479 24711628 24745644 24737411 24696643 24730109 24779487 24715812 24739835 24768464 24711504 24718382 24714648 24734249 24720896 24682652 24764293 24789607 24646013 24702719 24737396 24675061 24726845 24785179 24756710 24707679 24745446 24661603 24807019 24726486 24747700 24728187 24719067 24717125 24698855 24726630 24707938 24696067 24700023 24696227 24714348 24708075 24740593 24671669 24723984 24708098 24719515 24725569 24656478 24727359 24744497 24718246 24680414 24654977 24742579 24712244 24734630 24703732 24690195 24766797 24742672 24673750 24685618 24657189 24737109 24727352 24718361 24623945 24681480 24740499 24679178 24681344 24681894 24722365 24738956 24701472 24725866 24653048 24674843 24640063 24726645 24705701 24690941 24681313 24662653 24718931 24721975 24689983 24669097 24682047 24646618 24665398 24674679 24722794 24694811 24668036 24678943 24626729 24696765 24724443 24664976 24709412 24689626 24637895 24649139 24742883 24697295 24721676 24642932 24634899 24646888 24666985 24658574 24707605 24708564 24703592 24720023 24693777 24714816 24706653 24696639 24652453 24623847 24669310 24648004 24721471 24704179 24642406 24694953 24680576 24675905 24672129 24734441 24679439 24695229 24589429 24664688 24698214 24686547 24671450 24701547 24638991 24650853 24706697 24686599 24640614 24711659 24682501 24654644 24691400 24672632 24640529 24667703 24677748 24630655 24711140 24642335 24694538 24681766 24603819 24698609 24645002 24636642 24711471 24656429 24669738 24710839 24666387 24711830 24713581 24645138 24645473 24685349 24656585 24671987 24624722 24654137 24625999 24640666 24622083 24652823 24631870 24731353 24668007 24613831 24701789 24638949 24615065 24630910 24671481 24584193 24686453 24681708 24625563 24658229 24706583 24644396 24671452 24653636 24652782 24635829 24609722 24628704 24650705 24697219 24736408 24638027 24613280 24664252 24692928 24654812 24619249 24656011 24645656 24629435 24647196 24558197 24636043 24624292 24632931 24637264 24679531 24680826 24656240 24670183 24697099 24597530 24666302 24645404 24619093 24633095 24620978 24636909 24558376 24616002 24615180 24613454 24625012 24660949 24617150 24651780 24602547 24611138 24668902 24649767 24612006 24647759 24600889 24588609 24621943 24625015 24645096 24611677 24629711 24592651 24620494 24660595 24567764 24616221 24650886 24609379 24621800 24605283 24672698 24693827 24620528 24630457 24603610 24635483 24632846 24620494 24638606 24607639 24565242 24640003 24640536 24615371 24628388 24572195 24561182 24609494 24642002 24661609 24581777 24570560 24635687 24606122 24592359 24597586 24623236 24632124 24625460 24609248 24631486 24589817 24643061 24638345 24576406 24627466 24590118 24713009 24638879 24564425 24653241 24579677 24620647 24611376 24609472 24633566 24578362 24642705 24554097 24554435 24569814 24604553 24631709 24587739 24565642 24590342 24614964 24613269 24591622 24577216 24653142 24594200 24575114 24649957 24573809 24609457 24562850 24626808 24610776 24635884 24569024 24566162 24692423 24594787 24609095 24560916 24641813 24617588 24557747 24547211 24617926 24552742 24599369 24574359 24518679 24650487 24625310 24538514 24616437 24568825 24563557 24602746 24610215 24593294 24571159 24652096 24627817 24604696 24600424 24596012 24577390 24594522 24579119 24494555 24591198 24582171 24582571 24581432 24569803 24588188 24509921 24614984 24575525 24601811 24639833 24547456 24591143 24553453 24590390 24581368 24594943 24627984 24521081 24599304 24578047 24608516 24553149 24523984 24563195 24628065 24592029 24582118 24606136 24657020 24612669 24615440 24569454 24594243 24635138 24595576 24564255 24592624 24579000 24551193 24609875 24556880 24595286 24566989 24522271 24560340 24592897 24579001 24572908 24534594 24572150 24537651 24506605 24560016 24594525 24554813 24547800 24599373 24514492 24560855 24633645 24506137 24533577 24569114 24536068 24477443 24512275 24519649 24573001 24487872 24564129 24556872 24501175 24504466 24574160 24565503 24551644 24540313 24574081 24581445 24495726 24556946 24587009 24574869 24529333 24570902 24547305 24585295 24527037 24572871 24536684 24553336 24512251 24566666 24506709 24541238 24532885 24532837 24589107 24539838 24486863 24536702 24525291 24607753 24519849 24524734 24523147 24525966 24537280 24535474 24626294 24528949 24521499 24543057 24540469 24475160 24581962 24487440 24534955 24542255 24555569 24511727 24545443 24523808 24474002 24525523 24519607 24528611 24571604 24555922 24527503 24484766 24541126 24537289 24516754 24601060 24578144 24572674 24575511 24520887 24489730 24469707 24533486 24527175 24551464 24571212 24550842 24463770 24487137 24551690 24540999 24488553 24492814 24475960 24538917 24447378 24550720 24512730 24551186 24547554 24493003 24528849 24495916 24536795 24488886 24532889 24490650 24533640 24440477 24477573 24569463 24469492 24489609 24451837 24448433 24499271 24483806 24475251 24523817 24521705 24518736 24485717 24468043 24502429 24547301 24471938 24470552 24512457 24519765 24489470 24469020 24474286 24519007 24500858 24521778 24521839 24493911 24483624 24476742 24514239 24553773 24492089 24495818 24494266 24450708 24487334 24505548 24471518 24491461 24442898 24470368 24457810 24457046 24464259 24483526 24563888 24585116 24481516 24466494 24490182 24507277 24510955 24522898 24473510 24510346 24526121 24602174 24490929 24504148 24487221 24505003 24463264 24507445 24539914 24435457 24504501 24401025 24544539 24521539 24484315 24463356 24491670 24512761 24434134 24452899 24452806 24431253 24496685 24539327 24516490 24466482 24448488 24490132 24393491 24453596 24487191 24494798 24484476 24461164 24492076 24438448 24433251 24500071 24506477 24518079 24503357 24458436 24489288 24587546 24487275 24473126 24497885 24484506 24508297 24435496 24498436 24486040 24446984 24411838 24510119 24424548 24462318 24443201 24459253 24539191 24460996 24443781 24479780 24505554 24466264 24486854 24495237 24451272 24490679 24452465 24477100 24529991 24427286 24445327 24469315 24410957 24384177 24543546 24459911 24528216 24413008 24467188 24412102 24426167 24472010 24415918 24479885 24487082 24476277 24452831 24526486 24474200 24480986 24449169 24449953 24432818 24450385 24418370 24399628 24459705 24462436 24437500 24466143 24496840 24459970 24472934 24452203 24425917 24468046 24454543 24483384 24444076 24490758 24461240 24433087 24449881 24497123 24484228 24442894 24493742 24417298 24451735 24476336 24493144 24396007 24459617 24485553 24456768 24406126 24490888 24466354 24430525 24481788 24428106 24399473 24450428 24419117 24463486 24435566 24441813 24455003 24450614 24464016 24440441 24411824 24417009 24442128 24485315 24452335 24479609 24442646 24440841 24427349 24437435 24399688 24446261 24430729 24426440 24422004 24396789 24365569 24453499 24444990 24372741 24404439 24394967 24401582 24443381 24369677 24383161 24452112 24339376 24442458 24436553 24458460 24358480 24477020 24414136 24453373 24409951 24376977 24451505 24385059 24394151 24448872 24426871 24439567 24417821 24449969 24385017 24444750 24419114 24457199 24431297 24458435 24447836 24411095 24433939 24449528 24408275 24426251 24431320 24379284 24451811 24428678 24426311 24424140 24398934 24351175 24368849 24448281 24450599 24375671 24409924 24468706 24468583 24412252 24397388 24395612 24433247 24434851 24395424 24444280 24420663 24425725 24405962 24375973 24410289 24443705 24468061 24393507 24362297 24420341 24392424 24390700 24383050 24422809 24354837 24381450 24400886 24437282 24475527 24381802 24487015 24425291 24471538 24380018 24377993 24403158 24423218 24386049 24356771 24371822 24445904 24428709 24419152 24392844 24424473 24406539 24368734 24410303 24410757 24404875 24436138 24380697 24360694 24414184 24324385 24313615 24358546 24384314 24373076 24369300 24352390 24435916 24381091 24351787 24446159 24421440 24328864 24411588 24401941 24422664 24390713 24345279 24378544 24363349 24387075 24369363 24365260 24395219 24368444 24366300 24318393 24347118 24385825 24419728 24389586 24379912 24397770 24352651 24375453 24387150 24405826 24329179 24346750 24369586 24351503 24422042 24302717 24386767 24368771 24414237 24401202 24331548 24355611 24422943 24368829 24393078 24369197 24347059 24358513 24335867 24401211 24407390 24356764 24363469 24382717 24396567 24356107 24321753 24320838 24368801 24262353 24361592 24326321 24379235 24304018 24382259 24406961 24347875 24360591 24375734 24364109 24391822 24411204 24331858 24320910 24364963 24365541 24344079 24369318 24370114 24341290 24396833 24347317 24309802 24356449 24309315 24377253 24324040 24356574 24317620 24367344 24352250 24351815 24382883 24355705 24377139 24289288 24360487 24365482 24338703 24339116 24396338 24352148 24280479 24312885 24310364 24388752 24288932 24319344 24354189 24307124 24429294 24311905 24419140 24317063 24309189 24343654 24412140 24307779 24360025 24307386 24342640 24362542 24354844 24343516 24337906 24327848 24312665 24381460 24244902 24324955 24309215 24243093 24328338 24359749 24329310 24374578 24332181 24300843 24351750 24305501 24373129 24319395 24266343 24311108 24313032 24351283 24281091 24304721 24350328 24292608 24304597 24307352 24333020 24323497 24328763 24280608 24291255 24393397 24301765 24314909 24311404 24315863 24339084 24329748 24354599 24309879 24270936 24339650 24360749 24328366 24384375 24281374 24327437 24305757 24322015 24289718 24312760 24353856 24341470 24263591 24317386 24311229 24351732 24289780 24349384 24248069 24339723 24325918 24310560 24257066 24266074 24220930 24281827 24289839 24282733 24302049 24285725 24280569 24345566 24266480 24315291 24305336 24236389 24267155 24331007 24313136 24353684 24336279 24322634 24271662 24260152 24285929 24297831 24265009 24313738 24226802 24293206 24272819 24294499 24289067 24277622 24312198 24272563 24284947 24292436 24278071 24321759 24298801 24320907 24283619 24237951 24249790 24266786 24322725 24282966 24302077 24297367 24203428 24278279 24288145 24266314 24260233 24303190 24154213 24265352 24335699 24291205 24238540 24294713 24311250 24276255 24243039 24279227 24291674 24302475 24351664 24341868 24266225 24257493 24269568 24290808 24292302 24211896 24282149 24322859 24276348 24228808 24269302 24333899 24258289 24287824 24234461 24324191 24240858 24222631 24236311 24258585 24285745 24306711 24213228 24331393 24280800 24198912 24274849 24316713 24240134 24269476 24246573 24292012 24270289 24235076 24240548 24296691 24187213 24238831 24265883 24236602 24257988 24277317 24240539 24256723 24270723 24222694 24271037 24224244 24265243 24253985 24213138 24293909 24232996 24248961 24270089 24218184 24287888 24241183 24284564 24167409 24247456 24239439 24251975 24208875 24327639 24256968 24177682 24271249 24253258 24263533 24289313 24258462 24257460 24204693 24233950 24208207 24241709 24244430 24245655 24240831 24208552 24218577 24164782 24244134 24179724 24275652 24223559 24262243 24224617 24213827 24241193 24199500 24227303 24237862 24212803 24193160 24241775 24241195 24181906 24196367 24180728 24246953 24303989 24234897 24239828 24235298 24247376 24317019 24257987 24260086 24212734 24202387 24181214 24213347 24228817 24198405 24209198 24245177 24181380 24246274 24244505 24181194 24228062 24167530 24138316 24195967 24221589 24230994 24171604 24223154 24185285 24228907 24269259 24189190 24246118 24193885 24205625 24242873 24256528 24239896 24237187 24277691 24194827 24147807 24216591 24220739 24236821 24163681 24192927 24140687 24151821 24200009 24186633 24245925 24215592 24185199 24187523 24176278 24255664 24164147 24185676 24237262 24224099 24218627 24241913 24216523 24137219 24198661 24172038 24204671 24171602 24151729 24247384 24232510 24211748 24156671 24215843 24159523 24216406 24167701 24226748 24219654 24140837 24231019 24189563 24180453 24173689 24215806 24169740 24232735 24202737 24205745 24181250 24172546 24204380 24196428 24197566 24168741 24150205 24153674 24213227 24214878 24174892 24221897 24137794 24176513 24199378 24157232 24168520 24164936 24232537 24124351 24156937 24195900 24186931 24183821 24219546 24128168 24189372 24189615 24155212 24149466 24199663 24183302 24134496 24186079 24232508 24199818 24157453 24161848 24143608 24207581 24199702 24162696 24201535 24155012 24165064 24197088 24182259 24166691 24175660 24085173 24129680 24141792 24146323 24219199 24187420 24174368 24158060 24216880 24150751 24216204 24156683 24159325 24206221 24161391 24132302 24162357 24163515 24179846 24139429 24180226 24174330 24167494 24156648 24135961 24144778 24159193 24158714 24179315 24164295 24110426 24147965 24147188 24176283 24140804 24175854 24114654 24156679 24176846 24099469 24226742 24154992 24206586 24138985 24104880 24198405 24170495 24113716 24122086 24165075 24187155 24168591 24094747 24117554 24160694 24129301 24144934 24197084 24137624 24170479 24127382 24171018 24156733 24152243 24126451 24126638 24169305 24110719 24182055 24120887 24158035 24115995 24077450 24166344 24137179 24154073 24131435 24131384 24101428 24081464 24162346 24109212 24125736 24086528 24098900 24147893 24054151 24111801 24090053 24139150 24140797 24077269 24120528 24110130 24079645 24146882 24128326 24153564 24145747 24156758 24113396 24232827 24134453 24077595 24178184 24111004 24119502 24117746 24141566 24148491 24142585 24089887 24102613 24110800 24122333 24149560 24097917 24140244 24110018 24150447 24145870 24102444 24133656 24152851 24080030 24121090 24123721 24122285 24092713 24120202 24083506 24048347 24110033 24126301 24051942 24137854 24087023 24113777 24087558 24075092 24127320 24105275 24121177 24128682 24119690 24085938 24109282 24158459 24069236 24096154 24108055 24112303 24106016 24054422 24114963 24088098 24104525 24091335 24102080 24079239 24057679 24150593 24154832 24097550 24112483 24132141 24134311 24055718 24171621 24102745 24125918 24090173 24049139 24070881 24050222 24100092 24060615 24075694 24020958 24108504 24126839 24041326 24148967 24098302 24047760 24074487 24113436 24078240 24097566 24092538 24108470 24033956 24135719 24111957 24053121 24071034 24098601 24110348 23998648 24063006 24089049 24095512 24057176 24126157 24075428 24093267 24155962 24091676 24091406 24051956 24048447 24084501 24087139 24080480 24074320 24023044 24057130 24010430 24027060 24029767 24066008 24117759 24107249 24063651 24070754 24135650 24057931 24035447 24086572 24043245 24087361 24036054 24079713 24057163 24105984 24012573 24063985 24020454 24085769 24069012 24004697 24068777 24007358 24096592 24049256 24075060 24037885 24103440 24043383 24056558 24056743 24058246 24049206 24061379 24042139 24039285 24065767 24061223 24031193 24087914 24054717 24076485 24065648 24069709 24046447 24040240 24012717 24093235 24044708 24033296 24078268 24070993 24048732 24041211 24136702 24031209 24049328 24024359 24064986 24047377 24068783 24048643 24012862 24057443 24025496 24045538 24093772 23991307 24066354 24075613 24061417 24043521 24066594 24003305 24038747 24117737 23970982 24038506 24008870 24034085 24051647 24056534 23985464 24065623 24031972 24027105 24047038 24061709 23987006 24058379 24034972 23971218 24001518 24048245 24045310 24074397 23994438 24059862 24053895 23994962 23995580 24059648 24045169 24025744 24012210 24078499 23997917 24028795 24008492 23999293 24007919 23992738 24043215 24039345 24017279 24026315 23971837 24069962 24011118 24039671 24080615 23964715 23963649 24016864 23972387 24079640 23984330 23998542 23985104 24031934 23984369 23996450 24034339 24010785 24000549 23969202 24048182 23959132 24007869 23988015 24037383 23996780 24005873 24013422 24014935 24022017 24010465 23988489 24023768 23948967 23994922 24029576 23938691 24007370 23985456 24020353 24064080 24048102 24002655 24019898 24007135 24015979 24047011 23993281 23990065 24026025 24041740 23998505 24008589 23971732 24010903 23944377 24003612 23981715 24019182 23993746 24005605 23974875 23997684 24028831 23959258 24021317 24007949 24038668 24049935 23978312 23998784 23998123 24018629 24011731 23988423 23999608 23998264 23938781 23967283 24012190 23964298 23954642 24025774 23960359 23960606 23982434 23942351 23993998 23994964 23954216 23990216 23954000 24024180 23997086 24003063 23992897 23953554 23988801 23959110 24002567 24010662 23930240 23925947 23986628 23967581 23953414 23966375 24012191 23917493 24007852 23920985 23935271 23937320 23982571 24002163 23987724 23997914 23945342 23966732 24055387 23976823 23920975 23952309 23977961 23949129 23926543 23946676 24019331 23969069 23953071 23910819 23972934 24022100 23967915 23974138 23950496 23993399 23908530 23906810 23965349 23912450 23968328 23902761 23947848 23978254 23938606 23980051 23980801 23903501 23929635 23988475 23945938 23958791 24003376 23879192 23970419 23945115 23911890 23919807 23963441 23969139 23963093 23943404 23927610 23941168 23957456 23990436 23923768 23958919 23990020 23958872 23974184 23975976 23890176 23906098 23953099 23958487 23918911 23988746 23988911 23960330 23935786 23948922 23980858 23928397 23956845 23940601 23911127 23971466 23907624 23938446 23990601 23929948 23918914 23979695 23960069 23942498 23955347 23945493 23930337 23943511 23940731 23926238 23877736 23914410 23931641 23950095 23933364 23960978 23938951 23865998 23897744 23872764 23904148 23919986 23917035 23930023 23860444 23964868 23909859 23940283 23951604 23897295 23911628 23890106 23976932 23898909 23933245 23875752 23954896 23909682 23916094 23946749 23970758 23877284 23908155 23915043 23942493 23922307 23947006 23927719 23918793 23926961 23933147 23952435 23909163 23881219 23956388 23896442 23910408 23862312 23897340 23925683 23962184 23892455 23926246 23921748 23923174 23962375 23935219 23914437 23926837 23965808 23926286 23914375 23917250 23858322 23876672 23883622 23908028 23974238 23925637 23885768 23883849 23923223 23823483 23893810 23904313 23837933 23898586 23924445 23903689 23981403 23925770 23953592 23859144 23856391 23863704 23882449 23832495 23867960 23898265 23843244 23934000 23885805 23934216 23879605 23838513 23936156 23905925 23854776 23840123 23904681 23885902 23916579 23844619 23912767 23902646 23839046 23894485 23900287 23842126 23865210 23842477 23869189 23859027 23900940 23918809 23895425 23831300 23901103 23918058 23840199 23900298 23885593 23879991 23955358 23904287 23909212 23852707 23851881 23875278 23803455 23883638 23930159 23875292 23842596 23908525 23863578 23841800 23898366 23875411 23877761 23876640 23818946 23955778 23857782 23880507 23896054 23899437 23857958 23913799 23849859 23808829 23893657 23867360 23835562 23896847 23828078 23852650 23867834 23849224 23881325 23864045 23827857 23840918 23853524 23853729 23850287 23956631 23935620 23952306 23856456 23775782 23821595 23782135 23849047 23839374 23847128 23828398 23894683 23805731 23846838 23848161 23810325 23784818 23838155 23820321 23903077 23822504 23870850 23894332 23818766 23843782 23827500 23809603 23838923 23790475 23836416 23819201 23847124 23838879 23874072 23860752 23858332 23918790 23776203 23839287 23885180 23825685 23826434 23807645 23865397 23867535 23872348 23808484 23863788 23877842 23844859 23827344 23839833 23845938 23855144 23831761 23898603 23832259 23782115 23871231 23858044 23861748 23794446 23842191 23835450 23789389 23800493 23843633 23844971 23815481 23804549 23804571 23865422 23871923 23815030 23780592 23812943 23829666 23817541 23829699 23796014 23793879 23886152 23846674 23832535 23832496 23803825 23798288 23850874 23789884 23822233 23799035 23829138 23849816 23786122 23703728 23860550 23864004 23835945 23850532 23848276 23824046 23817168 23805539 23803032 23828086 23851735 23794087 23794798 23842955 23781177 23791515 23788282 23778947 23859981 23758730 23816569 23826713 23803863 23805140 23770173 23835610 23856834 23839870 23856313 23811514 23815913 23856528 23800823 23805412 23860542 23786511 23771374 23796911 23836271 23831769 23757192 23803187 23797089 23732630 23768808 23800986 23823774 23793764 23797032 23706825 23789479 23794223 23824105 23809313 23761755 23759895 23762124 23793798 23789479 23773996 23814421 23802807 23837086 23767493 23761647 23821177 23836128 23793323 23835367 23795043 23812058 23785721 23749898 23796309 23788635 23807656 23743494 23764471 23787154 23785502 23753303 23827908 23777948 23736176 23803560 23810993 23697470 23864142 23779094 23793629 23796326 23810665 23824668 23759620 23801158 23814558 23763686 23827264 23815775 23811299 23749300 23729421 23802781 23792968 23797157 23785630 23753979 23729985 23827820 23764105 23743891 23766601 23752085 23750464 23754000 23778718 23765315 23756189 23701864 23747134 23792216 23783242 23758900 23811926 23755455 23747941 23721500 23795563 23757779 23770187 23752269 23773136 23784224 23746812 23748478 23760840 23811104 23771739 23706132 23803448 23793664 23775738 23746223 23736089 23706331 23717555 23821050 23812504 23735539 23707327 23765428 23790932 23813551 23747616 23817729 23721205 23716913 23799454 23718496 23780267 23771561 23706104 23729909 23742511 23743561 23660610 23797694 23783103 23701521 23703904 23728496 23764869 23719329 23800045 23711179 23773914 23766763 23740706 23735593 23731387 23782491 23724466 23734343 23779033 23703892 23741950 23760887 23793831 23727848 23734360 23772868 23674766 23725895 23732861 23751593 23670118 23762734 23722450 23742515 23730803 23786821 23693790 23755169 23707372 23757490 23708381 23720620 23696935 23752183 23764687 23684822 23731933 23742986 23674527 23680867 23760173 23736385 23737928 23709506 23689766 23761261 23694448 23720914 23692571 23754575 23764221 23682090 23703525 23728542 23737845 23800010 23711579 23777878 23663958 23729026 23695688 23693390 23725680 23681836 23723526 23704125 23669096 23758079 23750514 23679611 23690463 23647942 23691252 23654228 23713094 23637422 23735601 23706907 23686710 23676906 23710305 23699996 23671049 23682963 23712819 23725729 23699256 23711458 23659232 23670518 23676490 23711039 23729477 23670493 23730255 23739125 23683255 23728166 23721242 23674491 23730261 23714818 23700253 23747128 23649236 23696746 23680728 23655347 23734563 23699736 23673505 23696823 23645308 23676935 23692963 23678205 23703244 23700657 23638625 23662763 23689240 23701167 23676900 23697776 23703538 23702252 23678377 23691336 23719101 23706107 23691750 23672477 23677375 23659048 23707649 23656442 23724179 23717121 23690021 23658957 23676676 23740514 23692319 23685422 23678176 23683157 23755114 23644144 23695617 23707510 23706497 23721483 23692398 23670039 23654082 23713554 23660381 23749014 23675481 23649388 23693782 23631343 23679727 23704143 23688462 23660683 23694264 23647786 23705228 23631089 23652364 23673279 23700165 23670529 23650082 23668383 23692231 23661928 23628054 23630151 23649967 23631520 23667711 23657606 23719775 23615402 23632353 23609677 23678488 23629978 23681412 23660541 23651112 23633931 23711874 23686639 23692452 23630570 23579580 23706453 23632696 23656235 23681311 23632021 23663874 23623757 23637956 23628301 23649163 23624960 23646052 23668365 23706016 23663173 23592119 23665933 23708075 23668607 23597951 23652196 23636802 23696360 23678545 23670722 23665737 23640197 23706851 23620750 23600107 23657714 23609798 23534837 23680546 23687846 23658747 23648834 23637528 23650411 23622663 23657729 23654635 23561130 23607260 23664674 23659347 23658473 23673305 23696821 23648649 23615601 23634974 23635999 23569363 23616401 23668444 23642774 23664660 23626641 23604138 23621994 23632890 23615035 23651557 23602829 23594080 23667242 23612722 23640443 23633976 23621488 23656223 23646818 23602513 23624423 23637868 23639628 23650821 23613581 23635923 23599550 23607503 23614667 23563656 23616218 23639328 23590664 23605416 23575357 23607944 23590561 23588042 23602777 23568289 23600037 23599892 23588766 23628354 23664036 23591785 23660239 23598528 23612519 23541249 23586303 23606754 23673501 23547595 23586455 23583893 23565762 23613156 23634260 23710711 23581933 23589275 23558865 23672998 23555484 23618769 23620018 23618234 23617350 23588809 23535740 23612001 23521924 23617791 23615690 23619728 23664219 23638989 23613711 23592537 23550950 23568957 23624123 23584737 23606622 23677286 23599334 23635032 23589133 23588534 23647742 23523614 23636106 23579162 23573146 23604782 23616048 23571357 23573813 23587945 23540391 23589854 23602709 23632101 23564776 23605875 23542618 23562710 23603628 23570635 23630712 23611571 23585741 23587288 23525703 23596460 23559297 23577255 23622119 23582981 23596311 23567259 23590701 23586999 23549920 23561372 23591235 23621560 23596753 23626448 23598026 23572192 23573633 23576256 23614527 23586613 23548693 23562145 23572935 23524961 23572252 23543291 23555366 23612153 23572597 23584705 23544648 23552903 23604192 23555251 23534674 23572160 23528647 23589730 23521108 23539930 23590870 23567723 23565909 23569130 23544665 23512132 23589078 23632158 23503540 23560108 23560299 23544981 23637646 23554212 23588958 23545413 23571063 23563293 23585869 23551008 23553999 23585036 23570401 23525475 23534692 23592423 23556090 23564216 23554457 23556579 23573700 23536101 23543568 23599087 23571010 23588701 23518989 23581007 23574609 23627562 23575478 23541890 23608796 23607928 23575511 23549102 23566962 23555786 23561780 23527602 23592239 23591427 23542645 23528716 23554181 23494002 23564505 23487141 23605210 23594433 23520380 23493560 23541909 23529581 23514473 23510011 23523336 23580063 23537567 23515916 23537753 23574209 23507478 23524119 23511966 23562997 23545646 23505188 23544457 23484916 23528471 23561125 23509594 23588665 23522778 23495991 23517211 23505366 23555262 23533117 23533746 23543561 23550798 23531114 23506406 23476673 23559332 23518693 23513547 23480111 23511661 23534364 23536586 23511790 23574060 23591583 23512268 23505251 23539533 23530754 23532686 23521714 23501184 23524697 23523088 23431430 23505228 23583808 23541155 23583908 23512412 23529200 23545013 23518930 23449466 23514586 23520421 23501871 23484131 23541829 23518578 23532423 23512838 23562388 23554420 23539325 23463575 23489375 23539468 23483533 23476269 23495425 23510094 23510126 23509482 23532348 23524960 23473120 23447842 23439209 23533213 23496973 23599837 23459778 23521950 23463899 23505105 23431912 23487201 23484681 23524243 23505363 23524844 23518061 23522560 23492820 23533050 23481841 23506177 23478180 23515185 23454612 23545269 23454678 23499021 23530878 23486773 23503737 23498836 23482417 23470732 23515358 23457651 23442560 23498928 23514036 23542297 23471876 23516083 23472807 23520254 23528942 23502640 23467798 23511039 23538431 23479762 23488559 23468085 23538680 23513204 23458143 23495460 23454730 23417464 23490778 23471694 23496616 23437112 23474533 23453015 23419777 23507211 23425095 23535145 23412169 23451377 23498397 23477758 23455223 23499721 23469006 23466264 23455873 23484567 23477818 23453199 23480613 23477399 23467803 23423144 23469254 23475486 23476711 23465598 23560678 23443452 23464101 23463817 23496079 23459598 23443225 23503475 23484229 23484743 23516020 23465399 23459158 23442287 23435336 23513577 23482453 23497770 23474770 23520737 23463898 23413684 23435041 23437593 23459983 23459799 23438171 23488946 23532390 23440128 23460905 23502456 23423214 23441206 23441475 23492467 23437826 23410447 23428105 23448780 23445590 23412824 23476950 23416185 23454950 23449732 23451503 23403202 23456500 23438597 23452300 23389338 23436012 23416276 23450486 23470227 23473369 23480560 23431781 23411125 23453545 23491619 23432897 23438548 23478236 23435602 23437465 23454168 23450874 23417196 23439651 23424399 23465167 23499969 23434306 23405734 23410846 23473246 23492751 23440827 23406150 23468531 23401137 23457482 23364925 23435334 23377559 23426806 23466053 23454226 23453974 23415976 23408021 23461588 23413167 23384699 23399397 23393607 23428183 23474815 23430982 23447506 23397948 23434858 23423252 23380577 23399954 23412143 23383320 23403299 23426179 23439386 23387184 23443800 23370530 23435572 23437677 23409638 23459561 23408263 23428532 23441001 23437773 23393460 23396393 23393245 23430332 23415496 23394880 23430616 23425991 23384788 23424080 23456031 23407258 23380584 23424070 23369257 23370333 23409965 23439792 23415692 23367733 23390390 23423695 23374754 23395936 23428409 23434257 23379104 23419697 23361495 23387007 23355568 23388566 23414856 23432578 23427332 23347938 23402134 23433253 23430608 23385751 23413044 23439374 23424137 23362035 23380928 23406077 23428294 23419806 23350351 23407034 23359842 23444269 23412311 23426582 23428131 23413120 23427573 23370038 23367740 23362349 23380156 23406444 23423310 23420338 23384628 23410313 23414880 23436146 23417128 23351669 23421526 23340812 23330011 23363985 23344924 23367192 23430391 23355358 23388455 23359761 23381385 23324288 23387604 23413031 23416171 23442787 23348557 23365653 23409123 23366636 23366285 23354611 23415464 23421306 23442585 23434095 23353998 23321008 23366694 23356050 23401154 23397017 23270394 23441962 23413260 23316393 23361384 23351235 23408718 23396056 23358903 23388038 23440559 23392974 23349373 23386311 23395096 23384045 23397082 23362337 23392748 23377979 23383616 23346951 23374701 23357941 23363943 23366181 23355564 23361840 23395629 23333686 23333267 23389779 23361552 23342982 23397577 23382639 23384661 23347215 23364274 23336404 23363304 23393884 23349481 23349845 23436362 23376343 23403112 23425030 23350395 23367578 23337694 23379690 23372784 23342150 23319882 23323503 23345231 23335802 23331650 23378614 23324760 23377763 23362750 23373007 23398617 23314312 23367434 23384379 23329525 23355082 23301650 23333668 23350452 23345147 23309646 23307655 23323885 23293122 23330922 23371672 23304096 23290029 23310622 23369672 23349139 23307528 23316645 23385660 23385134 23328289 23284854 23335362 23417123 23311170 23347644 23353910 23300858 23293372 23356617 23338848 23339654 23353879 23303687 23348476 23336752 23306932 23311527 23356565 23301379 23322579 23279574 23331137 23332640 23281475 23328375 23349883 23328568 23351907 23290285 23360287 23345156 23308205 23348322 23272241 23344127 23310428 23378802 23359318 23292258 23329244 23335811 23250044 23291803 23365318 23279731 23316579 23317562 23375076 23314891 23312350 23358870 23347289 23340719 23303088 23301992 23321006 23257770 23336429 23295161 23301461 23339342 23307243 23289933 23306674 23275138 23248833 23313808 23367528 23324302 23308699 23334032 23264092 23252614 23325906 23313083 23285752 23320014 23297029 23349675 23311106 23276111 23253034 23239581 23321093 23286371 23285978 23333429 23237459 23359345 23293366 23295894 23265290 23307580 23338929 23244127 23284917 23277464 23291430 23279208 23276028 23277592 23277839 23294596 23292459 23267711 23261641 23365269 23285181 23337186 23338302 23336467 23265352 23300532 23309347 23275645 23324611 23267925 23314108 23310938 23224016 23272094 23274002 23257570 23207127 23241873 23280035 23273498 23273009 23333683 23316541 23243163 23286845 23249831 23294508 23332291 23295177 23288793 23312529 23303775 23265366 23308899 23226881 23315669 23275878 23325713 23220788 23277120 23297487 23281047 23277688 23289568 23242931 23307571 23279309 23239813 23305300 23329601 23291060 23301950 23260941 23176183 23250483 23210839 23269103 23286717 23328237 23235592 23287132 23229732 23265250 23251085 23222607 23311657 23290428 23345657 23277425 23290516 23271678 23248777 23271137 23306740 23271633 23281236 23255824 23316577 23253310 23302712 23254365 23279120 23291054 23306746 23209632 23243459 23292689 23267413 23240060 23244774 23300540 23265696 23279897 23278596 23285691 23262977 23256774 23242580 23255768 23246075 23231647 23239258 23245330 23272225 23226292 23289002 23275490 23234527 23274568 23246284 23290570 23204471 23296065 23240809 23222760 23255390 23303049 23289165 23251007 23226781 23250856 23251266 23240439 23261444 23255107 23259414 23259046 23281314 23247670 23234874 23302257 23225336 23223264 23221463 23285753 23256202 23201105 23205746 23251087 23220932 23211099 23275910 23231962 23240603 23255059 23233012 23279296 23183794 23154084 23169794 23184200 23263954 23205867 23221078 23200158 23195794 23216221 23184656 23193881 23252788 23258880 23226646 23229847 23250873 23240606 23231416 23209177 23178946 23268902 23194734 23234370 23211029 23224512 23225410 23216288 23243260 23242592 23191622 23279996 23233258 23226580 23248047 23265444 23263558 23250805 23251442 23198366 23183222 23198996 23273267 23219904 23233263 23191057 23230142 23234019 23145942 23254397 23213912 23202352 23256088 23209308 23198037 23195918 23138983 23264020 23214674 23202974 23151204 23226179 23207076 23170957 23172079 23142376 23239258 23233586 23259112 23174760 23192335 23239338 23252718 23158725 23160594 23245670 23243453 23235780 23133819 23197869 23228658 23138210 23207547 23197179 23210903 23230857 23190161 23201473 23248158 23258124 23166237 23211533 23182757 23193990 23251137 23178641 23242980 23226902 23160602 23199772 23216759 23168585 23219302 23163976 23170415 23171225 23196784 23221038 23183378 23174448 23231155 23202132 23166791 23167333 23172790 23200934 23176113 23178766 23215692 23172346 23176383 23214106 23166214 23218982 23185102 23150717 23216930 23175716 23157500 23259565 23225311 23097904 23147908 23143938 23135483 23218366 23217228 23178302 23130248 23142870 23088988 23193332 23144585 23179115 23144302 23151459 23189939 23126129 23152778 23209596 23181844 23163229 23161511 23186022 23167521 23070887 23171560 23148396 23192500 23140265 23207073 23224794 23167719 23174976 23127505 23098910 23164142 23160343 23173983 23165985 23125569 23192778 23180086 23121414 23177131 23169793 23187804 23153874 23149779 23163626 23161217 23215950 23149519 23180947 23239833 23223775 23117800 23160649 23156126 23128107 23181505 23086424 23148785 23161298 23104942 23183109 23128227 23142928 23131159 23144149 23146221 23150263 23113840 23107475 23125218 23133177 23172082 23110432 23181845 23189573 23146194 23135376 23148109 23143727 23171362 23124950 23114360 23084862 23087455 23145318 23126549 23189603 23136363 23160182 23206455 23141208 23137742 23144321 23149191 23172283 23068651 23099752 23147737 23156166 23179519 23119374 23161501 23153499 23091991 23144725 23100575 23179628 23153543 23178654 23139874 23160301 23104606 23133433 23146966 23151489 23155206 23118575 23185186 23110756 23126660 23076907 23149749 23215129 23110124 23137690 23094029 23187536 23147462 23106216 23160266 23139563 23107921 23109219 23061489 23128250 23150342 23123294 23139651 23121312 23110392 23072440 23149379 23160661 23062232 23106719 23145672 23118766 23118073 23097801 23136080 23028653 23132338 23121823 23208569 23162471 23113084 23122076 23137321 23112983 23131283 23105246 23105615 23092424 23115412 23151979 23089836 23102065 23150968 23182137 23036877 23075715 23095715 23132198 23186055 23064679 23125848 23061924 23139167 23089271 23121683 23097943 23126654 23088269 23118451 23075987 23142882 23119081 23122558 23078667 23157891 23072364 23033781 23133213 23100009 23114898 23122972 23083236 23143788 23133291 23098103 23109677 23155144 23152607 23045521 23031070 23145096 23026134 23074235 23056229 23131896 23122400 23127548 23056405 23150366 23081024 23062263 23071345 23099497 23090844 23082907 23101261 23133855 23143632 23097344 23106074 23086237 23067935 23067747 23076139 23091037 23062981 23095592 23070523 23089102 23121805 23104931 23043131 23103709 23012705 23071981 23083138 23040568 23048163 23028720 23122710 23030089 23035696 23076113 23078076 23075581 23114714 23104236 23018819 23072880 23021372 23107321 23036111 23042112 23056834 23068370 23026208 23085097 23099116 23050751 23023804 23078093 23042594 23092902 23059156 23051964 23107313 23028634 23082533 23054308 23112488 23098963 23074257 23078331 23065935 23063549 23055235 23045851 23071204 23027893 23106135 23051462 23061539 23062546 23062976 23066765 23064950 23066612 23036928 23012314 23099002 23068332 23014693 23067500 23049965 23012929 22979114 23104887 23051550 23011586 23095994 22995134 23041719 23063593 23095102 23021801 23031724 23018576 23075059 23087133 22980744 23047324 23044533 23037026 23087088 23044817 23061807 23013224 23023682 23063213 23069073 23107056 23052283 23080793 23025539 23111104 23011875 23020540 23013981 23016022 23084226 23058045 23045030 23024058 23032552 23013404 22996936 23046154 23062854 23007465 23038670 23038028 23023545 22992614 23064759 23058558 23034258 23015350 23045501 23021580 23048109 23091166 23062311 23088618 23009325 22988919 23043400 23009148 22995536 23012664 23003641 23062266 23030885 23023543 23058399 23045436 22987739 22973098 22993745 23054491 22982391 23024850 22984873 22982415 23086745 23038895 23051037 22978020 23039171 22976358 22990556 23016385 23021093 23058046 23020755 23018232 23009865 23056708 23037858 23005606 22991021 23006023 22997210 22967294 22965986 23035248 23003945 23015460 22999502 22978046 23005745 23021467 22937240 23026057 23008855 22999921 23041895 23003143 23016725 23080319 23045891 23032639 22996084 22994317 22975423 23030605 23033236 23008657 22963002 22954726 22952724 23017820 23002205 22975456 22993758 22978097 23003174 23023699 23035627 22995923 23010957 23083179 22968590 22988004 22985273 23029277 22998264 22994854 22960069 22978310 23019547 22953931 23006151 22974627 22977473 22958627 23046837 22999578 22956279 22979304 23002222 22975823 23013339 23009889 22969319 23035850 22949029 22995849 23055968 23015854 22971846 22992593 22948550 22973548 22937200 22963750 22962103 22924313 22926585 23013438 23019306 22970207 22981819 22992685 22975240 22979707 22946833 22980701 22963097 23023416 22945595 22986874 22959604 22983276 23024052 22967382 23011450 22973201 23015767 22979514 22970442 22955437 22933194 22997685 23069031 23022084 22990378 22945424 23015628 22990191 22929902 23039492 22948643 22984115 23012066 22954897 22973913 22927586 22949893 22994202 22913227 22966116 22984427 22992745 22935902 22950853 22966516 23007220 22976926 22981211 23007591 22983508 22981398 22980486 22974605 22905708 22962800 22966689 22951365 22956869 22991917 22917198 22999513 22905890 22928598 22983386 22998163 22982851 22910628 22936020 22942939 23011256 22981990 22977722 22959539 22924890 22930969 22981495 22930093 22949549 22916693 22913836 22957133 22911545 23008323 22944961 22942003 22951523 23007766 22938256 22948971 22930109 22949269 22954716 22912755 22969393 22940567 22955579 22965705 22944770 22988783 22954251 22937974 22948366 22965186 22946013 22968529 22974021 22952180 22911749 22923137 22886156 22934885 22902411 22962436 22889705 22950140 22937659 22935561 22923685 22932169 22928595 22918767 22925004 22951048 22975370 22860962 22925668 22961165 22931243 22871674 22865919 22883368 22934734 22961335 22917762 22906605 22925712 22881695 22921874 22934198 22947098 22925317 22899434 22939278 22880032 22921995 22912606 22949767 22943805 22825638 22901827 22940988 22945519 22908083 22896648 22941757 22924641 22884279 22897575 22811594 22898614 22913720 22936149 22864365 22909369 22863292 22939738 22914501 22942390 22857555 22941392 22898284 22931140 22882337 22899054 22873283 22878329 22947194 22925537 22971163 22910228 22975897 22930286 22884861 22946777 22871479 22854558 22894695 22871104 22944701 22857795 22915671 22898795 22824957 22863099 22897120 22929015 22898224 22862674 22968604 22900965 22908705 22881718 22897688 22910184 22931087 22926597 22910964 22918584 22903010 22936190 22919605 22889517 22865875 22870872 22899835 22841354 22920835 22929934 22819148 22931341 22862499 22862307 22880923 22882516 22867569 22912948 22889934 22852052 22873343 22900885 22915847 22871681 22857275 22869179 22802917 22865842 22862213 22875741 22879150 22916617 22874779 22862644 22896876 22863823 22860302 22839154 22860843 22895334 22903506 22861031 22863019 22887575 22845291 22888647 22886327 22905793 22855094 22851104 22916447 22925716 22937553 22848441 22882412 22892572 22847486 22840353 22865155 22901781 22865116 22831883 22873229 22893125 22919060 22893378 22834722 22826939 22887634 22845379 22818584 22839883 22843335 22899993 22856384 22841794 22857400 22876403 22858276 22862488 22816616 22866461 22855479 22805823 22868689 22922881 22830245 22870175 22852032 22829721 22809120 22880209 22794161 22868969 22863230 22848606 22854941 22838202 22850749 22877951 22821423 22831131 22859528 22835988 22871269 22847440 22845812 22760119 22868141 22822301 22868326 22838549 22828952 22865738 22825882 22811139 22792531 22868476 22872009 22851235 22886507 22883688 22787180 22854579 22886952 22883763 22819936 22865000 22828285 22803954 22845012 22818551 22822742 22827628 22782825 22851590 22832880 22828542 22838199 22831975 22843115 22851897 22838989 22839334 22860904 22837643 22835016 22846636 22776091 22877529 22777860 22793327 22807278 22806697 22854640 22851936 22779162 22831576 22836199 22854345 22798488 22808732 22794681 22878368 22787654 22868280 22851888 22827286 22823538 22819393 22833429 22842597 22846998 22838479 22812725 22831809 22736139 22793496 22855943 22809992 22821312 22782901 22782264 22833645 22764761 22771461 22813348 22809694 22838634 22797086 22841005 22777073 22850563 22791520 22760535 22787847 22797953 22850368 22805391 22761587 22821439 22781246 22794891 22807411 22790971 22804398 22790503 22751163 22779383 22783921 22823116 22788809 22804565 22809223 22766959 22799063 22778572 22864164 22822838 22758737 22778937 22807065 22774767 22799640 22770500 22840789 22723441 22734449 22751508 22777434 22750676 22813412 22840475 22749482 22819358 22807281 22801472 22749675 22767715 22754843 22789942 22817786 22716306 22796594 22748751 22782231 22758561 22747448 22821078 22841754 22818338 22795868 22768867 22749602 22711359 22768389 22700722 22732567 22745746 22815111 22779699 22795616 22862486 22754524 22806795 22750722 22768661 22755483 22754354 22775248 22766474 22786024 22818053 22768282 22792907 22758973 22776220 22793654 22827834 22738093 22798468 22794038 22755742 22757640 22701225 22737383 22793995 22791441 22773822 22795604 22811062 22804388 22763159 22802834 22794884 22736551 22803840 22719555 22750658 22793015 22777570 22800116 22736247 22736964 22754037 22742509 22779191 22712975 22797910 22816232 22776484 22743581 22728012 22777857 22712560 22748431 22721223 22751187 22774020 22694328 22722466 22776922 22767163 22746874 22742574 22809160 22748399 22725550 22739622 22747671 22723205 22746874 22723180 22761514 22790511 22705093 22770601 22728589 22725547 22685795 22705456 22725893 22767636 22740837 22752285 22722746 22768997 22688742 22747010 22755531 22806558 22750923 22791062 22680164 22771156 22768204 22738034 22740976 22745619 22743142 22785200 22696853 22788874 22729866 22700837 22732821 22718729 22731440 22765547 22737853 22715815 22714587 22718649 22765403 22728797 22744559 22676351 22754606 22716294 22722177 22760871 22724184 22706052 22745458 22733454 22774371 22681637 22719325 22715216 22689393 22752746 22767450 22772905 22699810 22704702 22690604 22699040 22702828 22691746 22712088 22739932 22764581 22746090 22710838 22739404 22691845 22754225 22745782 22710058 22751510 22718490 22705162 22710159 22756999 22795567 22725489 22703777 22711240 22684363 22692307 22688332 22715308 22685120 22693267 22715542 22736136 22704285 22712891 22763382 22714298 22738486 22715213 22679445 22677014 22709672 22732291 22685917 22746711 22668198 22715705 22747973 22694158 22726531 22640106 22681669 22726110 22664667 22757030 22770212 22765084 22725504 22716049 22770921 22697264 22699185 22654415 22722660 22694834 22676787 22711470 22729683 22651834 22716445 22726709 22733094 22741053 22662562 22705486 22636197 22676478 22762747 22729519 22726384 22637458 22666449 22688867 22671362 22706352 22665673 22694106 22670771 22669147 22677172 22655389 22737083 22717444 22701641 22686692 22697926 22669410 22716483 22684371 22722856 22668876 22642634 22694805 22662818 22722042 22665607 22718198 22695813 22700258 22635739 22672845 22649494 22663893 22739849 22709052 22582023 22739597 22726617 22666874 22659337 22658282 22686199 22668173 22670565 22697487 22704193 22629426 22692660 22676138 22716664 22628369 22683955 22678606 22673171 22684558 22702027 22686963 22714095 22650649 22657336 22637746 22681633 22603376 22699088 22647660 22683278 22638682 22633678 22626984 22660481 22698452 22689261 22632830 22657519 22661574 22731821 22673804 22645799 22654973 22680801 22681826 22630861 22689949 22688866 22607279 22629128 22674889 22648856 22663131 22666883 22673616 22657909 22626815 22586260 22687196 22649729 22599851 22678589 22637312 22583022 22680441 22676948 22622742 22677935 22595271 22629831 22697888 22616727 22684035 22660212 22660758 22675745 22617279 22651659 22659549 22640809 22669652 22665002 22605576 22612835 22632751 22584730 22680937 22659277 22658343 22661377 22597954 22636699 22607805 22589539 22623228 22707411 22695782 22658850 22569305 22588801 22671021 22636357 22559248 22617848 22606359 22623622 22641910 22661500 22637930 22603476 22576149 22608678 22608779 22629013 22574852 22726934 22681102 22627656 22671244 22637437 22647153 22590080 22668914 22643817 22645740 22558158 22592074 22599115 22623330 22666773 22644966 22659230 22586090 22570050 22633053 22638245 22603052 22620638 22578803 22651777 22611735 22592548 22599762 22591761 22579710 22697988 22658374 22621135 22594656 22623763 22670270 22644189 22604567 22618511 22612386 22572706 22628302 22647869 22663077 22623970 22646273 22590880 22636815 22621174 22609075 22637139 22567109 22658124 22579734 22588798 22611218 22551752 22627898 22585244 22612178 22591875 22551379 22628023 22566840 22642610 22587910 22637063 22608867 22613018 22596263 22613327 22623883 22589385 22566068 22587187 22626367 22599756 22669212 22564614 22589284 22620260 22609055 22557571 22590694 22581214 22636364 22560317 22622455 22632060 22673974 22579150 22599300 22576990 22586053 22627299 22546443 22604279 22550047 22553191 22559452 22560742 22610542 22530467 22603638 22550654 22588342 22579549 22564755 22607054 22626608 22612568 22593932 22593995 22595451 22591106 22613582 22585205 22612964 22583404 22613687 22597755 22595191 22574299 22592734 22609824 22547590 22583048 22614932 22565220 22611314 22598884 22597563 22633488 22578478 22543908 22601819 22579547 22568095 22549874 22614581 22640808 22532714 22614341 22602519 22596001 22576062 22545255 22559375 22619370 22606679 22594031 22602675 22568604 22565644 22571331 22604625 22579443 22587665 22558667 22550860 22607605 22523137 22589946 22552542 22523399 22570071 22569825 22584196 22526944 22618534 22583048 22590932 22597439 22559689 22577375 22613144 22611740 22521665 22571569 22576657 22597351 22519538 22547337 22570205 22572406 22575966 22552120 22568136 22510503 22584527 22571125 22602571 22530057 22536439 22566812 22572819 22545390 22546279 22565571 22572754 22520990 22546879 22541075 22521633 22555909 22590283 22518575 22569086 22565788 22536209 22551551 22536012 22584346 22551344 22581228 22561516 22512549 22524434 22575579 22539097 22576115 22550453 22546194 22517215 22511276 22538814 22536409 22550208 22531415 22559308 22556234 22527802 22556275 22527374 22549724 22537526 22540408 22481339 22544580 22567632 22535397 22520355 22512331 22493728 22555715 22520455 22544542 22568614 22589486 22492630 22483506 22530649 22488930 22498054 22511707 22518012 22543639 22564334 22519017 22500303 22543107 22517848 22532894 22483948 22533065 22541121 22519627 22507153 22515811 22508471 22516158 22518360 22542084 22484203 22486756 22607147 22504494 22520909 22568575 22534446 22569216 22493429 22598818 22536754 22518285 22460781 22494237 22538794 22492019 22478832 22502187 22535454 22485007 22486122 22466027 22545046 22499661 22523028 22543808 22507718 22482226 22548024 22474873 22527508 22546698 22549436 22474851 22522835 22478869 22468890 22474511 22472853 22505327 22475842 22510348 22481981 22511932 22479704 22505709 22508586 22523162 22502284 22495491 22475636 22499728 22540260 22520068 22515985 22498282 22491781 22416249 22495522 22496658 22524586 22469609 22488321 22500711 22481500 22547308 22481851 22528213 22452840 22484431 22458538 22460635 22482993 22485306 22503752 22470079 22446054 22489887 22557093 22493975 22503153 22454596 22474280 22474333 22489413 22460846 22448371 22478284 22549584 22474673 22486277 22425522 22474079 22496859 22481398 22488895 22459403 22470986 22481676 22537566 22455495 22499491 22465408 22445862 22432853 22482327 22405317 22483587 22436073 22496595 22418810 22457790 22484812 22483228 22432859 22475453 22516606 22483487 22486756 22479734 22445535 22444705 22454293 22503846 22454604 22488971 22489730 22466952 22431429 22477995 22459031 22496556 22443387 22438496 22413037 22473182 22459292 22464308 22492812 22466785 22495781 22482086 22494983 22473161 22423296 22469957 22457753 22494924 22454069 22409997 22491828 22442723 22447436 22458126 22460039 22487611 22460566 22478932 22432104 22525205 22412617 22423474 22448918 22505899 22457007 22418303 22480781 22444730 22424522 22491909 22402752 22451449 22455013 22429790 22448860 22436010 22467904 22465968 22453273 22398130 22418914 22401283 22426538 22482144 22502401 22478677 22393857 22430055 22451726 22450326 22421851 22420691 22450446 22422415 22469569 22447531 22412733 22417069 22452126 22412697 22456494 22447208 22435199 22393981 22439552 22428945 22381431 22479908 22450935 22411046 22412633 22385821 22424186 22470679 22465910 22492845 22472504 22460331 22431109 22456016 22421948 22394269 22422049 22409857 22417147 22403134 22418443 22415484 22432571 22402280 22385160 22412995 22379939 22420258 22448232 22421493 22436129 22437214 22400323 22403458 22391080 22382546 22372282 22362747 22434097 22423889 22413561 22434311 22415671 22403689 22465252 22391155 22377100 22430960 22454351 22439716 22417441 22431191 22404890 22406989 22387778 22417072 22466752 22383874 22405908 22498583 22412839 22385118 22395460 22407709 22399305 22396207 22400524 22389742 22410283 22359437 22417840 22426741 22448693 22377958 22408502 22458120 22395399 22364122 22443093 22395387 22365902 22361707 22389390 22394624 22432732 22386912 22343612 22341671 22374165 22342233 22428524 22384223 22414218 22397685 22427607 22433506 22356067 22357288 22441910 22395737 22350787 22367553 22340143 22388522 22407360 22421897 22371103 22349977 22380834 22393472 22431303 22455167 22418761 22403736 22363156 22392357 22341620 22373954 22383853 22406164 22385054 22372998 22374028 22402366 22364965 22408043 22345993 22344369 22414686 22407663 22372144 22403983 22412699 22385920 22396692 22397008 22357116 22337707 22355586 22360633 22360302 22376956 22378765 22354798 22429043 22365252 22291779 22348476 22338907 22370305 22342482 22394786 22318563 22414582 22357306 22313150 22363023 22371867 22362175 22386943 22429037 22435701 22381506 22431922 22375564 22354866 22356143 22383544 22359791 22371825 22343199 22331459 22334823 22418712 22366019 22351129 22373095 22371782 22351552 22378063 22353207 22334238 22356701 22373975 22332462 22325632 22417581 22346046 22310962 22347762 22320993 22335633 22306446 22368745 22361801 22324226 22341975 22354488 22336032 22362300 22333309 22383672 22300711 22303759 22322835 22275135 22346128 22383643 22428848 22388328 22356178 22325832 22299158 22379610 22352462 22360361 22364239 22367592 22326240 22348832 22345129 22334520 22330189 22362074 22299172 22365220 22297365 22357921 22294339 22357648 22303482 22347702 22288861 22375244 22322524 22316119 22394289 22283275 22370410 22343329 22321407 22384338 22363731 22351876 22360876 22313124 22329353 22281182 22328095 22256116 22335280 22355884 22295278 22260687 22297283 22273082 22353951 22288918 22312582 22350516 22279774 22329408 22298876 22270530 22292639 22353383 22273203 22369638 22284318 22255008 22249661 22346588 22309597 22333429 22303138 22376983 22322510 22341627 22284707 22314135 22254116 22284482 22315233 22313029 22246314 22325262 22312552 22334248 22350919 22404914 22289077 22292890 22265733 22222541 22301023 22294790 22261903 22292045 22316168 22286467 22263016 22352644 22313873 22333576 22279206 22281372 22264173 22285008 22303505 22292882 22330660 22312571 22293655 22363058 22359634 22279109 22325183 22295890 22289769 22311282 22293133 22222048 22286144 22307930 22319791 22258013 22311821 22288446 22289640 22309442 22313424 22303653 22299012 22320977 22323464 22327469 22289312 22294639 22253525 22310559 22266974 22304821 22317440 22276559 22270366 22325008 22233100 22239302 22229820 22266595 22285851 22264032 22266130 22228746 22271578 22261158 22282954 22283050 22315770 22329299 22278354 22281345 22308523 22275865 22273068 22218167 22242612 22322750 22267321 22268475 22287493 22296156 22245945 22289845 22270551 22308105 22271156 22290706 22284707 22259587 22244669 22210894 22325587 22275527 22236856 22254376 22268540 22271478 22356750 22256107 22216321 22304690 22268296 22254268 22333579 22270369 22248189 22260588 22250521 22257896 22267465 22276742 22249769 22253781 22242050 22310207 22263162 22250340 22220346 22179739 22210073 22235342 22215904 22253609 22225367 22308190 22212353 22195697 22280275 22204912 22244354 22273951 22257690 22258018 22212217 22241037 22210776 22243665 22252759 22240696 22256056 22227587 22244443 22292722 22284646 22249641 22251318 22266058 22237994 22230018 22241511 22233718 22260158 22282885 22225251 22194530 22272524 22206502 22237898 22278246 22241835 22185692 22244842 22231940 22292023 22277849 22236403 22210727 22196153 22263044 22222859 22251110 22260403 22259853 22228071 22192980 22222823 22172574 22233102 22214139 22163212 22239628 22240727 22153014 22178756 22182127 22256970 22182665 22208959 22185743 22202889 22235485 22228129 22252992 22205994 22232938 22237924 22209702 22203273 22180528 22219531 22247749 22225341 22251771 22226269 22186602 22199744 22203426 22179598 22187831 22221901 22220219 22236726 22235318 22210699 22240110 22169384 22238570 22260271 22215224 22167252 22233765 22170211 22116493 22284775 22153177 22211253 22284159 22172911 22249431 22203049 22177680 22235754 22160366 22164426 22189598 22226591 22205003 22201964 22173977 22224497 22212596 22234493 22181960 22186430 22176399 22178239 22197920 22257495 22228027 22198261 22201682 22161863 22232566 22215879 22216198 22117876 22192282 22236623 22203561 22172495 22198410 22192283 22251272 22185648 22177039 22170530 22186610 22171799 22185087 22184971 22215840 22178865 22209153 22191768 22172920 22169609 22194043 22186958 22128823 22180795 22196950 22167612 22250926 22201898 22207167 22228228 22145460 22141464 22151126 22153662 22148083 22136371 22167517 22165686 22199093 22196353 22206112 22172339 22213405 22166061 22130593 22128039 22179699 22167833 22166042 22145185 22158732 22187165 22167915 22165020 22147189 22145357 22110181 22184269 22249868 22196787 22115914 22110672 22138562 22211586 22180030 22116817 22148646 22192205 22185317 22153225 22155479 22153370 22175025 22129650 22164221 22140798 22179160 22131103 22127352 22107291 22218460 22162285 22116305 22206404 22150000 22137942 22180864 22190237 22183065 22139135 22124379 22156354 22197192 22113458 22149213 22080676 22187646 22157982 22173838 22157803 22109563 22117880 22126293 22116730 22193279 22134749 22163904 22148914 22183826 22153383 22177574 22100352 22202574 22165428 22070982 22169479 22136693 22147661 22168500 22178858 22160270 22127010 22135203 22151376 22124308 22131801 22141449 22133573 22162060 22155696 22117644 22143957 22146768 22075504 22123950 22107506 22153012 22127688 22139426 22161134 22186702 22109814 22160461 22142498 22123357 22118372 22121486 22145414 22129980 22173584 22096863 22158591 22137794 22139352 22098514 22104826 22085514 22177292 22161350 22117896 22115424 22142856 22109384 22159905 22105405 22161396 22122486 22152938 22104734 22130235 22150363 22060238 22174765 22118125 22098863 22122769 22121712 22141853 22100333 22122880 22136958 22125176 22134577 22136665 22071975 22137933 22069409 22123569 22151488 22137042 22154759 22143339 22095838 22097323 22121065 22140547 22099272 22108598 22069046 22113080 22157415 22099396 22082373 22062505 22099130 22088616 22082157 22131272 22055384 22068016 22072135 22153631 22133782 22086376 22084953 22138769 22044262 22037581 22102613 22068028 22061277 22124326 22086669 22080469 22115847 22087283 22064389 22082060 22060680 22051181 22013772 22112717 22110085 22065886 22068861 22077200 22109301 22117948 22005982 22146755 22099296 22087483 22098547 22095762 22054191 22071446 22068387 22032779 22074918 22052631 22107530 22077758 22099152 22071118 22090133 22059482 22076557 22132898 22064100 22122292 22076491 22103549 22026144 22082814 22109734 22086018 22083907 22058320 22077936 22063606 22063751 22022305 22041869 22126056 22043030 22090105 22103483 22047231 22027516 22106272 22054909 22137547 22084428 22114737 22056817 22047539 22054340 22007233 22100603 22127392 22019537 22090528 22099053 22070930 22090738 22073356 22056149 22031481 22027011 22071387 22080943 22000603 22110553 22035190 22017283 22055046 22077133 22027373 22081753 22076424 22021144 22110152 22038198 22070381 22088694 22030455 22082383 22108882 22072789 22036720 22108824 22077629 22075867 22062737 22038177 22086942 22087895 22039313 22045561 22047910 22145197 22052047 22044117 22069728 22050497 22007747 21960742 22040999 22042564 22048527 22117081 22070801 22036434 22035389 22032902 22042852 22083557 22073381 22040842 22107502 22033632 22105080 22048102 22065214 22113540 22095094 22063277 22010693 22073285 22077498 22034637 22019573 22047878 22041412 22036286 22071688 22053232 22040741 22080432 22045248 22003692 22058886 22065542 22022102 22057201 22082015 22040093 22054738 22032352 22062706 22072749 22093613 22011963 22048689 22037535 22009227 22039503 22028634 22017450 22015005 22037848 22075651 22071682 21960671 22027479 22094286 21964291 22021145 22008961 22023444 21998014 22055459 22045691 22003565 22052578 22003653 22008511 22017458 22055766 22068666 22080003 22040728 22046181 22043632 22011392 22024093 22034024 21996417 22053918 22036163 21978987 22044589 22085840 22024293 21977285 22051040 22062928 21956529 22032052 22047322 22018387 21976897 21994976 22053020 22032820 21995371 22008954 22033970 21937148 22034178 22052302 22022614 21982614 22043884 22016281 22068000 22010671 22010997 22002058 22010776 22026439 22026534 22045709 22001619 22000575 21978908 21969538 22039441 22022416 22016069 21984317 22058763 21930477 21972515 22059227 22011849 21925830 22031344 21957998 21981771 21945891 22024179 22028933 22030561 22049527 22038695 21983407 22026711 21995035 21954542 22045600 21976371 22009173 21980224 22011547 22014306 22025525 22000703 22018614 21994339 22007451 22020739 22000459 21975870 22065159 21988879 21976468 21994657 22008763 21972106 21915640 21970322 21949560 22018525 21978121 21963732 22010048 21988532 22025305 21991421 21987964 21962926 22006893 21952839 21960508 21978282 21999244 21963484 21996267 21943538 21931296 21982357 21993471 21931182 21956785 21950462 21990251 21968004 21997471 21982295 21997190 21974926 21941023 21960788 22047353 21965618 21964223 21960892 21949414 21993069 21917079 21995614 21965230 21956559 21961123 21921399 21960173 21996368 22004767 21915323 21962751 21943358 21941652 21933771 21948993 21947107 21947363 21967447 21921221 21981760 21901473 21982678 22013842 21964796 21929852 21967810 21950281 21951491 21947393 21926550 21994440 21926489 21933567 21978480 21990444 21976875 21966602 21946241 21956511 21953829 21954424 21964608 21997477 21944687 21948229 21923241 21957394 21979863 21982096 21978925 21976348 21940870 21975637 21909485 21935471 21864955 21995669 21884784 21918120 21940045 21930865 21937435 21925870 22004023 21980028 21934348 21922725 21921426 21878117 21959438 21990296 21971147 21987255 21919717 21954290 21957627 21970060 21942655 21888893 21939383 21955313 21922344 21946928 21908439 21899897 21921774 21898173 21926594 21945083 21873012 21915280 21952495 21942510 21913045 21947344 21943314 21956499 21956318 21917789 21914908 21949491 21932965 21895547 21919312 21922847 21975976 21923935 21911356 21977297 21955045 21883782 21892674 21912846 21904567 21906967 21965159 21934517 21927535 21929890 21922845 21889259 21950620 21898851 21947044 21920889 21868828 21921062 21920529 21987109 21882402 21903964 21909174 21848371 21900805 21869328 21975569 21918521 21896368 21906158 21933741 21945856 21894777 21915205 21921013 21884766 21926045 21937112 21981025 21901029 21917330 21863877 21924640 21928932 21913250 21933821 21917963 21952941 21934240 21916553 21867653 21898328 21870913 21859343 21901473 21868514 21880647 21951780 21910346 21885320 21884565 21869481 21883622 21916164 21878542 21957102 21890515 21936510 21862786 21902789 21857938 21852269 21916467 21891658 21848327 21937844 21907616 21881888 21920221 21913649 21939273 21920796 21913416 21884455 21883579 21885008 21894841 21872336 21866896 21936189 21839095 21852996 21899449 21848619 21883427 21873045 21904543 21912456 21928486 21879828 21879333 21876670 21862650 21885762 21871426 21868049 21891677 21817120 21891786 21830837 21884504 21904904 21852405 21886931 21862732 21937271 21860280 21860162 21817261 21897664 21870127 21872467 21859537 21852631 21909514 21853769 21902518 21887431 21838580 21893991 21824941 21855049 21916181 21887013 21881642 21865917 21858960 21833627 21858288 21838523 21823486 21849458 21865669 21840931 21835822 21896177 21821448 21859421 21866125 21875230 21874908 21850511 21852404 21784495 21858340 21867120 21823233 21846045 21829356 21839148 21833881 21906967 21894816 21831457 21862109 21853927 21811509 21872849 21874122 21835793 21879020 21896741 21808445 21857600 21832378 21826271 21842803 21846321 21857765 21837039 21854272 21831834 21809623 21849818 21831924 21804091 21868475 21862191 21798211 21809207 21842238 21806614 21829710 21800148 21858783 21822700 21850072 21797602 21819858 21840546 21811981 21848951 21813451 21872934 21841035 21827127 21846971 21870753 21819469 21843148 21813921 21766281 21817920 21810366 21772876 21807343 21837319 21804740 21803581 21801812 21831025 21852998 21880856 21844925 21801271 21809986 21844281 21861974 21804119 21805782 21800676 21859494 21839790 21822117 21745989 21800166 21780684 21792938 21792558 21816675 21729323 21843978 21817430 21791981 21769051 21861563 21770665 21774413 21836955 21841213 21757935 21756599 21735516 21782909 21796407 21854965 21823100 21783366 21774410 21819602 21806324 21784071 21811163 21805615 21791906 21789034 21789715 21807496 21803433 21785445 21752204 21781857 21798978 21777674 21763759 21794280 21772039 21796827 21802982 21828200 21817583 21799685 21802691 21843580 21760574 21792364 21779817 21840103 21794094 21822863 21787287 21808207 21770504 21817568 21818055 21828754 21741938 21825387 21766540 21802862 21810828 21780770 21775220 21766012 21835240 21762682 21785959 21756670 21751530 21773917 21795467 21793989 21813986 21747974 21822538 21783534 21772641 21754824 21781793 21806478 21740423 21788403 21721178 21812297 21746384 21788976 21767605 21769068 21784462 21755690 21789808 21831882 21778129 21789330 21806950 21738509 21766618 21748523 21789659 21801096 21780321 21806144 21753029 21782944 21765700 21838809 21777009 21765453 21700904 21788144 21751934 21768739 21778808 21773563 21780369 21746444 21721595 21805378 21779772 21722781 21751699 21760744 21761677 21699968 21751636 21745864 21803640 21728242 21778880 21717757 21772659 21716870 21789249 21793644 21741170 21764664 21759877 21796121 21759485 21708859 21778147 21728876 21770444 21739501 21758566 21769073 21717362 21758639 21752656 21751352 21799779 21748039 21787376 21766480 21744517 21708450 21770487 21817182 21757088 21759934 21749823 21664667 21760468 21747694 21769054 21769989 21774851 21736169 21730699 21773398 21689854 21750983 21738912 21790604 21718690 21694865 21694285 21736530 21827587 21747149 21719003 21697108 21749247 21775379 21736478 21669806 21719625 21746240 21739818 21734895 21681101 21742275 21691677 21744787 21748621 21704626 21704763 21735266 21788192 21795843 21754966 21726719 21745013 21706498 21716640 21706721 21680037 21730486 21663003 21721610 21741772 21742503 21735805 21731592 21762461 21725167 21755474 21709505 21667177 21706825 21697992 21702011 21729176 21685716 21706839 21733019 21724088 21763685 21699794 21697582 21691000 21707901 21663156 21799181 21728423 21741353 21711106 21662967 21684957 21746451 21745721 21683011 21718853 21718476 21693528 21709731 21672583 21720161 21747745 21675750 21675601 21715542 21712234 21720160 21656423 21677526 21702465 21706248 21656710 21673771 21720616 21714729 21708714 21673371 21688461 21676028 21690849 21674905 21646533 21687244 21668133 21708251 21684303 21700832 21696639 21711684 21671407 21688128 21682610 21683128 21673077 21747155 21689635 21717687 21700329 21665049 21648674 21784943 21724402 21711286 21648636 21681484 21681042 21681728 21709185 21656254 21706597 21675852 21754839 21638754 21689739 21681956 21727202 21663211 21694900 21670821 21733643 21717828 21689158 21667586 21683811 21658046 21652526 21676615 21682031 21641026 21670286 21635342 21718300 21708055 21633304 21697363 21641169 21716014 21696336 21644097 21675346 21670162 21720836 21620578 21667463 21638879 21650437 21711202 21701504 21657134 21615455 21668156 21659613 21657370 21662142 21617643 21676897 21629394 21658661 21643638 21650394 21665766 21721262 21756612 21643942 21709831 21666999 21684889 21706095 21700287 21715567 21635481 21693404 21638886 21638224 21624817 21625539 21705232 21631372 21688383 21652822 21689164 21691983 21635612 21617481 21695676 21659289 21642199 21645956 21674613 21646853 21690662 21662976 21709988 21622773 21630582 21676385 21627923 21633682 21624789 21646938 21696539 21665760 21659670 21703550 21664332 21652040 21666958 21682714 21613146 21635505 21652897 21628267 21656956 21661394 21573924 21662761 21626468 21698161 21650310 21647043 21661877 21670028 21631833 21612406 21575360 21624519 21635383 21630821 21654614 21637398 21655034 21666358 21625830 21702837 21647709 21683080 21653435 21642252 21604574 21690213 21657722 21633357 21614646 21629254 21709961 21615988 21644854 21637465 21605196 21672317 21685474 21635008 21614361 21595005 21630499 21598759 21680337 21647778 21613063 21619553 21606720 21653116 21611239 21602575 21589125 21635971 21625779 21643590 21631679 21627738 21657421 21576438 21617222 21620175 21645074 21665236 21595491 21625812 21655068 21591667 21613857 21626247 21648673 21589203 21615312 21596410 21628533 21615359 21673074 21666077 21645863 21649426 21584038 21578453 21651034 21560118 21661979 21572316 21585808 21630099 21583641 21612759 21628188 21682757 21596147 21584848 21583208 21588095 21572726 21580901 21662293 21625667 21636669 21598375 21579592 21633314 21651231 21593521 21622746 21627212 21625291 21591235 21609538 21611928 21611939 21525706 21580550 21601168 21579750 21612847 21553034 21620678 21600908 21611913 21589697 21600957 21614502 21571740 21602527 21585411 21605732 21546699 21577783 21594504 21613463 21562253 21615041 21602539 21602508 21513562 21574455 21556432 21553100 21586651 21568748 21568627 21583538 21560728 21605161 21602183 21631250 21591385 21627330 21587650 21615061 21568238 21532646 21633544 21596473 21584649 21529617 21567480 21593449 21634314 21537858 21624232 21582106 21549846 21591328 21580558 21614376 21607935 21541365 21583607 21649473 21533318 21551440 21533751 21586944 21571186 21577052 21593012 21580738 21544261 21568112 21600415 21563739 21566135 21603429 21576562 21618747 21538758 21556954 21554853 21617871 21550017 21533997 21547078 21576096 21485783 21499763 21565419 21617180 21559108 21606300 21612431 21553507 21578860 21541580 21573599 21600398 21582657 21538600 21574959 21561978 21512715 21505913 21526248 21589154 21583472 21559510 21582111 21523165 21551792 21519225 21524981 21551776 21542813 21576430 21604809 21512326 21576240 21524151 21513379 21531092 21570012 21644604 21540608 21498797 21540269 21595758 21533090 21590706 21532337 21621163 21534059 21567274 21565860 21556107 21557626 21564229 21542661 21578942 21549496 21488552 21559274 21516205 21563912 21590623 21552777 21578784 21549408 21544234 21553934 21495799 21587373 21554955 21578748 21535647 21531609 21568481 21546541 21517002 21528740 21520612 21562572 21565937 21555827 21547775 21582990 21542521 21498383 21564139 21477847 21540337 21486337 21538477 21552850 21499352 21539603 21511003 21584648 21544057 21511804 21553351 21544448 21533757 21547898 21527255 21544823 21495387 21484151 21552047 21544592 21485628 21520453 21563727 21528492 21589256 21552442 21547484 21537528 21480703 21480765 21512781 21514052 21517182 21486553 21533431 21463580 21499773 21539827 21551397 21569849 21499371 21540556 21589603 21572481 21551772 21531633 21500239 21472852 21476329 21483403 21538244 21543356 21511681 21523633 21547190 21498520 21532873 21516717 21478855 21495975 21499888 21502854 21509091 21511951 21539632 21548495 21536119 21505059 21517222 21532808 21583948 21498285 21493667 21510003 21484779 21501579 21465395 21542438 21527077 21506600 21507875 21521294 21518668 21498933 21527884 21511870 21472271 21465177 21443685 21522172 21541920 21552095 21492664 21483607 21471523 21490512 21527651 21477843 21491729 21500604 21541269 21478970 21517743 21530098 21497062 21512532 21539659 21486603 21535260 21470606 21534183 21494814 21491796 21440449 21524437 21471948 21544257 21486279 21444109 21485832 21496926 21505775 21534781 21432205 21461515 21430910 21429381 21421064 21462285 21446208 21484028 21459763 21449439 21474359 21424790 21419401 21503554 21462061 21450684 21487822 21461392 21476053 21502003 21496217 21511390 21480413 21403147 21526230 21493938 21444547 21491305 21431246 21442920 21499911 21498312 21438926 21459807 21438348 21423483 21457908 21472479 21446509 21437281 21467236 21442152 21490649 21444132 21467620 21484577 21472660 21488100 21487230 21427402 21526138 21510665 21523213 21495875 21432098 21438238 21418967 21494101 21432770 21424826 21478563 21435797 21439156 21403340 21457243 21407057 21479292 21475690 21454224 21459318 21476989 21430532 21456621 21419144 21477765 21431998 21409068 21435641 21505044 21474509 21439800 21469564 21462098 21442795 21485815 21412420 21466589 21463381 21388072 21424301 21409950 21467491 21443632 21409978 21450866 21398399 21421297 21445994 21439768 21454797 21417819 21451546 21403101 21443918 21493862 21466907 21394988 21431157 21425665 21437230 21474117 21436577 21423595 21475677 21391448 21493469 21446183 21380004 21432937 21456204 21452097 21479675 21430166 21412137 21492625 21410617 21441351 21457905 21415522 21403254 21430343 21423375 21434152 21431597 21387134 21432431 21432776 21446404 21398878 21426323 21425738 21418231 21477911 21428966 21420371 21378960 21466716 21431629 21421850 21426395 21454957 21410746 21420061 21435032 21420649 21387259 21408682 21412490 21394079 21414670 21450351 21403284 21395962 21443359 21392535 21417669 21405411 21410426 21425997 21383230 21407427 21417321 21396016 21375175 21403163 21447152 21406011 21375042 21359031 21395767 21407872 21421341 21425164 21453953 21412799 21380138 21420225 21377886 21425244 21360941 21495285 21383575 21371536 21409343 21428224 21354113 21426010 21405016 21397612 21364135 21433923 21400264 21416142 21387586 21372485 21405075 21397894 21367330 21401493 21406563 21428411 21388649 21347365 21439607 21363438 21407724 21361871 21384376 21343003 21329516 21354449 21435882 21394191 21369692 21341727 21356864 21427765 21357213 21402334 21392305 21366484 21416112 21364853 21337617 21351736 21367696 21360422 21397970 21362781 21365207 21361839 21375801 21366868 21357294 21415538 21414458 21369869 21370299 21375878 21395505 21353061 21383425 21390641 21406709 21309023 21389612 21368185 21395250 21315196 21408688 21365225 21375773 21381576 21361323 21356206 21374572 21396043 21364219 21402062 21381699 21369544 21362868 21377245 21353646 21353876 21375490 21336994 21387487 21435659 21341392 21356343 21411494 21342468 21404231 21336542 21382367 21396102 21351914 21349850 21341863 21421122 21352650 21343761 21364823 21343023 21333367 21348244 21330371 21380039 21333622 21343698 21313245 21321100 21359512 21364907 21347390 21356598 21331111 21297036 21376781 21399378 21379833 21381084 21336797 21363518 21354392 21332422 21330912 21330632 21317223 21333785 21391863 21309883 21372940 21344601 21346056 21353074 21308483 21349724 21273868 21317213 21342889 21344932 21309652 21337061 21345045 21306134 21282728 21330859 21323856 21391374 21306029 21324698 21312271 21417250 21362015 21316069 21364466 21375407 21321334 21283719 21338178 21345981 21355949 21301126 21342777 21302755 21321445 21333728 21370599 21304332 21305805 21323705 21293855 21253693 21287210 21345874 21362454 21376870 21335652 21282030 21299562 21312259 21317237 21329886 21274874 21329842 21343148 21310699 21293391 21307082 21287092 21304280 21286812 21315790 21334764 21295051 21332886 21260139 21391519 21356195 21329387 21304109 21314220 21292761 21299398 21318344 21307620 21345590 21328018 21304921 21320412 21320725 21266499 21310087 21313225 21330671 21303046 21269393 21306716 21329488 21338913 21288480 21304856 21306888 21273166 21292015 21311981 21322516 21306566 21242718 21283833 21293152 21296467 21264569 21362034 21304118 21329186 21340097 21289334 21295819 21300277 21332970 21311607 21253697 21300991 21297170 21293417 21264845 21266811 21291565 21247423 21334471 21294942 21298491 21298495 21285366 21301068 21249034 21312748 21303376 21255424 21261216 21307590 21279736 21346676 21270037 21297968 21232303 21278006 21259458 21265007 21267969 21316210 21267616 21297786 21269467 21280953 21332862 21305381 21286070 21310270 21353555 21283957 21226506 21331692 21287612 21293716 21285829 21267604 21290041 21261289 21228924 21277683 21295248 21290658 21221760 21250288 21253243 21262253 21286323 21238844 21272548 21259468 21269812 21272451 21257674 21229432 21280909 21248802 21256692 21303587 21264075 21286850 21245502 21227265 21256759 21278841 21327466 21272950 21290914 21275622 21291378 21272472 21280883 21223191 21281326 21299069 21254588 21276631 21274361 21252139 21246873 21219086 21291990 21238848 21226204 21254982 21271238 21275354 21209083 21244634 21276294 21252213 21242416 21262625 21270909 21246684 21257449 21227784 21205913 21236532 21282221 21250728 21273980 21282652 21224075 21305748 21222434 21273623 21216272 21204570 21197846 21250061 21217796 21267549 21312779 21209294 21255181 21256444 21237216 21224132 21229588 21254404 21244484 21209189 21241533 21314834 21277404 21268620 21279911 21265372 21265230 21238458 21235117 21235876 21231516 21211023 21285541 21252999 21275170 21241635 21217449 21272615 21268951 21203322 21216771 21245790 21203971 21174022 21245604 21204829 21193454 21301132 21208497 21180342 21184668 21233400 21218133 21236076 21286020 21221276 21239035 21203182 21241305 21234480 21203162 21230596 21166291 21196107 21214780 21215026 21208196 21213512 21252343 21192043 21236771 21198505 21265512 21234531 21140088 21145957 21198932 21202866 21221982 21238006 21186215 21267974 21234728 21129028 21223256 21212160 21169173 21236413 21210579 21186330 21234338 21197309 21193662 21215475 21216123 21225940 21196591 21247335 21227080 21142514 21184897 21242766 21266333 21163386 21184197 21176763 21221343 21177116 21130398 21227425 21297033 21201852 21203397 21179099 21168226 21222803 21206609 21218181 21150299 21164369 21202735 21201389 21226654 21197177 21225236 21202130 21190421 21183605 21219479 21131905 21171593 21214539 21193275 21195748 21183678 21184288 21192092 21235955 21221797 21129603 21195451 21265527 21195542 21189107 21156982 21184762 21150421 21209908 21138395 21166947 21209717 21145216 21184726 21199023 21132089 21217541 21200131 21127700 21148051 21159879 21193268 21198865 21155155 21193496 21204433 21156877 21194057 21199830 21156865 21149461 21147480 21181246 21204343 21159478 21114396 21206300 21154799 21219805 21165239 21177167 21154548 21167521 21175647 21200184 21139055 21164919 21171898 21166831 21137405 21194633 21202450 21167218 21131598 21175594 21199287 21094584 21110142 21132197 21178982 21183413 21174400 21142074 21168355 21205036 21142230 21131333 21152337 21126793 21155442 21145454 21112065 21201898 21157448 21176425 21164870 21145643 21143094 21188921 21130743 21156273 21150751 21164031 21155225 21158454 21186237 21128406 21204029 21187468 21160284 21139261 21129160 21096042 21195963 21139612 21136346 21188930 21142628 21150381 21136544 21132634 21114507 21182270 21177494 21088080 21122907 21098852 21172418 21171387 21168939 21166663 21178154 21098860 21151607 21147836 21152034 21168757 21145617 21215527 21193687 21154741 21102076 21174998 21126355 21104480 21122607 21113455 21095602 21132649 21142582 21102863 21174182 21148455 21120715 21142391 21129545 21093192 21154672 21049143 21141641 21129225 21100204 21109160 21136985 21130613 21110246 21118017 21147347 21139429 21127547 21128239 21127308 21096093 21149031 21180461 21123185 21143266 21156794 21161442 21112339 21101228 21170701 21167545 21127834 21131712 21160114 21086136 21140851 21108223 21139901 21126540 21163666 21052734 21183216 21058105 21129104 21132650 21126416 21113677 21078275 21066524 21125911 21141732 21122383 21055127 21130969 21075382 21088629 21089756 21123167 21114616 21126160 21131365 21086590 21107291 21158729 21104929 21075126 21168355 21122569 21166486 21084260 21099018 21155750 21153594 21116557 21112273 21094685 21091794 21063582 21071274 21123368 21138669 21053742 21135670 21099274 21122921 21102647 21090211 21076491 21070148 21134624 21149114 21100579 21127027 21088699 21090903 21130916 21129145 21080511 21100741 21121324 21079009 21076127 21138978 21051677 21083463 21121387 21125925 21099775 21091139 21033318 21102077 21118444 21092107 21059447 21058480 21115447 21055341 21098019 21076600 21057845 21061927 21082868 21107745 21098082 21088348 21041501 21041811 21086887 21115703 21061351 21088784 21064777 21091528 21058156 21081624 21083409 21052139 21071901 21006193 21110070 21101732 21049229 21101595 21029766 21076475 21075233 21145668 21052905 21066367 21082292 21085962 21124002 21050286 21113535 21035230 21109960 21100770 21006173 21063322 21069663 21073900 21047368 21093705 21086647 21066487 21061814 21057685 21095811 21085377 21029771 21096336 21078675 21057158 21096479 21046205 21038493 21073885 21070708 21044357 21058277 21059218 21034511 21052780 21088033 21057671 21048221 21061596 21060165 21069431 21056913 21023463 21051060 21068485 21096651 21025877 21070144 21058529 21122575 21009272 21063360 21027750 21079505 21076689 21020347 21051313 21059303 21071402 21031686 21071001 21064127 21073946 21065190 21020167 21103644 20984190 21075189 20985519 21047786 21056746 21022892 21067067 20975798 20985742 21111053 21045677 21053085 21038631 21070529 21077668 21077893 21010538 20951567 21045219 21044541 21066435 21021849 21068927 21065807 21048555 21046267 21016752 21066976 21002814 20995073 21028512 21054392 21073655 20996346 21044390 21055392 21040712 21059056 20997673 21000922 21011643 21041051 21043962 21039804 21021466 21046213 21047879 20982112 21042895 21033787 21017981 21076154 21019624 20966198 20986651 21057325 20959809 21031468 21006712 21009627 21066938 21059302 20975514 21036189 21037039 21004883 21013235 21073686 21042882 21004148 21025492 21015671 21034113 21012074 21030939 21043577 21019152 21015714 21009517 21036697 21029645 21001840 21037306 21026349 21034548 21029135 20994204 21059010 21050485 20991077 21015296 20985806 21000403 21031552 21030986 20980588 20981507 20997071 20956039 20986274 20982522 21007152 20992923 21041434 21035040 20975394 21001412 20985926 20987037 21068829 21008962 20999890 20990512 20996954 21012508 21049897 21024879 21013079 21081854 20967219 21037456 20975743 20999769 20996915 20976977 20977947 20999050 21057744 20973897 20988612 20997939 21019558 21006337 20979297 21013090 21009865 20988890 21005706 20948126 20990202 21028109 21033320 20993822 20950779 21007171 21002792 20972074 20971961 20994955 20971372 20985994 21014460 20977304 21013762 21022950 20980320 20979686 20999105 20998086 21002549 20979778 21010247 20915525 21010816 20958533 20985446 20974642 20910923 20972297 21042822 20974978 20968593 21005148 20963985 20983102 21007869 21051541 21001283 21000199 20943516 21031509 20950926 21011848 21041730 20968262 20967821 20998969 20955152 21007352 20931190 20981400 20936244 20908772 20993742 20940835 20974797 20938714 20941735 20989116 20955491 20978203 20976504 21010203 20989046 20982852 20961428 20965881 20940752 20956030 20977775 20972521 20999258 20962494 20972496 21004891 20995323 20974008 20946488 20956861 20957688 20959961 20926760 20914222 20995588 20952224 20984404 20951537 20931990 20946464 20939664 20957208 20922962 20983934 21018229 20909752 20956898 20961197 20937009 21016409 20997503 20945991 20906606 20930922 20944605 20946142 20974159 20951751 20930654 20955773 20970157 20904241 20938386 20923678 20936931 20903312 20952313 20927293 20996762 20905695 20915263 20936709 20950478 20956036 20939806 20916977 20951741 20927484 20945082 20974906 20974177 20946734 20897178 20948117 20954429 20932004 20889258 20919018 20895712 20927544 20957814 20908818 20934194 20917335 20959258 20934903 20967016 20970174 20969221 20934181 20948843 20958694 20929490 20950462 20961941 20932644 20956965 20889153 20924409 20942238 20903286 20923308 20914710 20970598 20966409 20932385 20938956 20960649 20937489 20933728 20878900 20963099 20904047 20920415 20946995 20936200 20967038 20869685 20945229 20894663 20961362 20923914 20951359 20926618 20866841 20898200 20933905 20938099 20871865 20908607 20885168 20914973 20911934 20902033 20918192 20888361 20904234 20889609 20863821 20879767 20912659 20935773 20868555 20902330 20897317 20910324 20919058 20930619 20862569 20907347 20879258 20890511 20879949 20918261 20882146 20905875 20845246 20921417 20891708 20892452 20869967 20864819 20920464 20835317 20929196 20894080 20886678 20897464 20958983 20870870 20899775 20895453 20880796 20858629 20924058 20967271 20849297 20861678 20908108 20879754 20937387 20924473 20924674 20894006 20864765 20937449 20877675 20903716 20909877 20862765 20864123 20877926 20844242 20919399 20865399 20913054 20843262 20853516 20865618 20883399 20872686 20944765 20815081 20887597 20855408 20868946 20899293 20908883 20853836 20841081 20853421 20902005 20931174 20850791 20855779 20909901 20878892 20802291 20922960 20862061 20864986 20827043 20911854 20848664 20936389 20906235 20863945 20862849 20895987 20888679 20845680 20839069 20873485 20865599 20903937 20879669 20857585 20820579 20840592 20864870 20806908 20853814 20902586 20868795 20835640 20820444 20885481 20846241 20884890 20850613 20817915 20865027 20911013 20909226 20890455 20875942 20882509 20872102 20831156 20831614 20879649 20885632 20836345 20835468 20837721 20828555 20863076 20841048 20856189 20780279 20955536 20829260 20868450 20869575 20814802 20812703 20831305 20885333 20838993 20865099 20803760 20833003 20882141 20759311 20883057 20870142 20797958 20857661 20848437 20822959 20875503 20813979 20915750 20806196 20847076 20834917 20863730 20853761 20860675 20825016 20791764 20828608 20886223 20850934 20869072 20818820 20847794 20815112 20812924 20818403 20852736 20882603 20844222 20866920 20854103 20799212 20788291 20864374 20798385 20871584 20874495 20832167 20876604 20808409 20835849 20803790 20795328 20776834 20839294 20796880 20819717 20782709 20861828 20793633 20831445 20823797 20900489 20795602 20867961 20776449 20844032 20787292 20794549 20804662 20843662 20793126 20824263 20884475 20769062 20809194 20790376 20763659 20849757 20873639 20802736 20803639 20830886 20769577 20800330 20799747 20801187 20870659 20805097 20825794 20776128 20787676 20787706 20782538 20796460 20756200 20770690 20753569 20784057 20842434 20831753 20770244 20849824 20783559 20810945 20706136 20821566 20832527 20799503 20810194 20784945 20827302 20798439 20841415 20801989 20776450 20804859 20771625 20789920 20791188 20774892 20755368 20804411 20814639 20804274 20791975 20724643 20784031 20803577 20833635 20731288 20808298 20810586 20753594 20796583 20797321 20753355 20825688 20837343 20764744 20783470 20797406 20750678 20795325 20820932 20837855 20781382 20818427 20752084 20797377 20804460 20843939 20784918 20789323 20805883 20743228 20836991 20818121 20746754 20770726 20726924 20842124 20784869 20753682 20790399 20774985 20788955 20835582 20693924 20756154 20724950 20789638 20753029 20798216 20796275 20778840 20774104 20807049 20795751 20792978 20766981 20744353 20750355 20808168 20740041 20755757 20787706 20770029 20702692 20738798 20766051 20746668 20763731 20735651 20750115 20743053 20776197 20814643 20778623 20782904 20775452 20779485 20776715 20765126 20753444 20723680 20784495 20819687 20729183 20742547 20776354 20796547 20727350 20727558 20757268 20749671 20785687 20696937 20793603 20717837 20780776 20749091 20742088 20759829 20765754 20753280 20801052 20789474 20762671 20704454 20774768 20759811 20778682 20726897 20752093 20739333 20743857 20730960 20738808 20769911 20749878 20742895 20725707 20791097 20765859 20754104 20756035 20733486 20745860 20711918 20783681 20735524 20774211 20737057 20724274 20698362 20756852 20761655 20700335 20740593 20752595 20753187 20726666 20785378 20740066 20714551 20728838 20745075 20731082 20725358 20746289 20731903 20720905 20760826 20692293 20686148 20730033 20725832 20769381 20707828 20758263 20707156 20706303 20703217 20735110 20724356 20728226 20778111 20728676 20745098 20727021 20686422 20673937 20676371 20695641 20762960 20699389 20692337 20732325 20720215 20734694 20671133 20699352 20675384 20717545 20735274 20704890 20721824 20725820 20758968 20709942 20651373 20709796 20720056 20673702 20670966 20697290 20714545 20651232 20699768 20689341 20665952 20711467 20782919 20712033 20708611 20662452 20687667 20722651 20676592 20710335 20697082 20737340 20693781 20727242 20661047 20719179 20668122 20711647 20693542 20667479 20691353 20680965 20640047 20664213 20693355 20680746 20672570 20670027 20714933 20670075 20707384 20662214 20688552 20725027 20674192 20672402 20630736 20685975 20680600 20653412 20669459 20688653 20681780 20657145 20635340 20662921 20680390 20665708 20682330 20678771 20667193 20708039 20655897 20641436 20704199 20712989 20681802 20669518 20632887 20629576 20667891 20652756 20665658 20669371 20648861 20660692 20711259 20630353 20672775 20659369 20665981 20637827 20684858 20646559 20685444 20669694 20706585 20628044 20640000 20698918 20647468 20673579 20672520 20623739 20647315 20693514 20685808 20651528 20700844 20632576 20654288 20648294 20665061 20651039 20631565 20642107 20692510 20696940 20637065 20628920 20694845 20635195 20638017 20671188 20644465 20616038 20622066 20676425 20696733 20636490 20632806 20612429 20634852 20653302 20649709 20616128 20623111 20630391 20708206 20652885 20698061 20596744 20670227 20653930 20672099 20622583 20671287 20663029 20671036 20654281 20634889 20619663 20614602 20629495 20618189 20609566 20655072 20639018 20631683 20669106 20663011 20651984 20705917 20684985 20615138 20701952 20682337 20608081 20573642 20572888 20644317 20643655 20625068 20615221 20625492 20644910 20584842 20658651 20660257 20610450 20664192 20646728 20612955 20668224 20637032 20666128 20595088 20650148 20595602 20608510 20644890 20661448 20666334 20625971 20549979 20588286 20604614 20629758 20639124 20661929 20602698 20639094 20655453 20646256 20567951 20636700 20668886 20581781 20604314 20662497 20601642 20664336 20626762 20606784 20641535 20567944 20672581 20570143 20610851 20645332 20672602 20586924 20607909 20586244 20599097 20630342 20611214 20649511 20640774 20605752 20611799 20630371 20621013 20587306 20592467 20648968 20624871 20606744 20545112 20583543 20568899 20631518 20551159 20625032 20592743 20598387 20603022 20555446 20573466 20609842 20587486 20583233 20694229 20624248 20541163 20650538 20589022 20585029 20611094 20550998 20527989 20616943 20597316 20612473 20607563 20591030 20560122 20579738 20586131 20565705 20579846 20580896 20572148 20592136 20579464 20569035 20518180 20606201 20598346 20599696 20572891 20597453 20589882 20575964 20503414 20543426 20566948 20604545 20609032 20585039 20582303 20572869 20595875 20557501 20515384 20578692 20577145 20550447 20585120 20608171 20591112 20613549 20610261 20584368 20582271 20589097 20582927 20549974 20571449 20613452 20588050 20587003 20560712 20596968 20605765 20557622 20522309 20543143 20583506 20570082 20591503 20560111 20609570 20622372 20635159 20523604 20528842 20560091 20571923 20558670 20610435 20618041 20572815 20552012 20536730 20514477 20549620 20551904 20541733 20598514 20574599 20589671 20540249 20576013 20525842 20517624 20564013 20581181 20572160 20540845 20510650 20608825 20582587 20623092 20511582 20623386 20570739 20568087 20538451 20498442 20550176 20627843 20530098 20592974 20523210 20592676 20522409 20597809 20552890 20559428 20527731 20508306 20576605 20629316 20551374 20501083 20555513 20584055 20565298 20539479 20532634 20537019 20515827 20552008 20549901 20528783 20548015 20551453 20543216 20553104 20528342 20584566 20588915 20536620 20528600 20551079 20586182 20568482 20511971 20577934 20513252 20524586 20534072 20551025 20543345 20538320 20538572 20481021 20524164 20564588 20575263 20532387 20574810 20513136 20556482 20537851 20517043 20540499 20556732 20481149 20548572 20580444 20587015 20565049 20536871 20592689 20487359 20563974 20495927 20489476 20516313 20481654 20513124 20556090 20507170 20524206 20585018 20546425 20517854 20578331 20544095 20567079 20486840 20544887 20558572 20541796 20477931 20513049 20456855 20530897 20499222 20496555 20506872 20553613 20531086 20471207 20521600 20503696 20484568 20550687 20504825 20508743 20497886 20536980 20532676 20529372 20510983 20525899 20507638 20457656 20528489 20491321 20543880 20497379 20565102 20482864 20489600 20467984 20492930 20547903 20491019 20505197 20527089 20531300 20509923 20477289 20430241 20490203 20565871 20515022 20513535 20500575 20503112 20511343 20492249 20537528 20507570 20524168 20483207 20507940 20531717 20459264 20502640 20517390 20483611 20542815 20474730 20515853 20449461 20502429 20532672 20455686 20506315 20512940 20483296 20504013 20513781 20463952 20515804 20516717 20527681 20512889 20530312 20517986 20508593 20502838 20477259 20497780 20500765 20508380 20489014 20541339 20447939 20501714 20447144 20516213 20483449 20485247 20423950 20466071 20496575 20543683 20509969 20524960 20446407 20466540 20504547 20482301 20466550 20483585 20425658 20406208 20555690 20461543 20476353 20444891 20490098 20457849 20455148 20520718 20498768 20467179 20461120 20534005 20479919 20509455 20460630 20482746 20495466 20439778 20533438 20447812 20479609 20474386 20443837 20444370 20450837 20461034 20436400 20494421 20475277 20472468 20470103 20444261 20524424 20442910 20436937 20498894 20443642 20479918 20455306 20421514 20459174 20465892 20435750 20457675 20482990 20438264 20434435 20447254 20483594 20514439 20480832 20466731 20464553 20431018 20535545 20436296 20453195 20355886 20428351 20428232 20476932 20467453 20393508 20458022 20469121 20431380 20412390 20434382 20435920 20459216 20451104 20481543 20445855 20477983 20432960 20453301 20395415 20391276 20472793 20456523 20441672 20458916 20413295 20436424 20491891 20392837 20407729 20426527 20383035 20442851 20467431 20467868 20447569 20459636 20483484 20432561 20440699 20416131 20400392 20403147 20443793 20423094 20393853 20432865 20458648 20420327 20437699 20441498 20448872 20434261 20414777 20375074 20448618 20434307 20358314 20472748 20419307 20388983 20490962 20407518 20442429 20436834 20480583 20404989 20403396 20383775 20467478 20466535 20405629 20387352 20400630 20401525 20410786 20428467 20410741 20470023 20411389 20389365 20435623 20410713 20413402 20392516 20364090 20423193 20362824 20447272 20359952 20419609 20425046 20425225 20441746 20367446 20367241 20335691 20406905 20418138 20425408 20384024 20387524 20393866 20445737 20338195 20381453 20404016 20426227 20418488 20402322 20380429 20365181 20437976 20386725 20352537 20436969 20382461 20424193 20471156 20403409 20427696 20410079 20472985 20444074 20414092 20417763 20389354 20435805 20444772 20383625 20409543 20413703 20362605 20373637 20414017 20363194 20449244 20406659 20449493 20394208 20447512 20353483 20365714 20391798 20397133 20385022 20381470 20393627 20405716 20422328 20450824 20351992 20462747 20335061 20336227 20380999 20362023 20392335 20328818 20385396 20335909 20400640 20379264 20400511 20414360 20446873 20423795 20356068 20416689 20364440 20381356 20359930 20378157 20407889 20369528 20399894 20372722 20373860 20368704 20410242 20463089 20356473 20350575 20345689 20329084 20384966 20392989 20394856 20416129 20357975 20343492 20342880 20350545 20394377 20374410 20424927 20324534 20346666 20429130 20366728 20354364 20399588 20337123 20384044 20326077 20378105 20356787 20399453 20293014 20316563 20433282 20326021 20321654 20354568 20325133 20361748 20378351 20351359 20378133 20367711 20357012 20357266 20370663 20371648 20348706 20369570 20385350 20367897 20395147 20330855 20381538 20353783 20398804 20357893 20332775 20356026 20373725 20395286 20357419 20365753 20384586 20339427 20360868 20369127 20320694 20330308 20322291 20361370 20356965 20300643 20360806 20344388 20367305 20331046 20313187 20395018 20307022 20359216 20318846 20344509 20342871 20339880 20339713 20377567 20376817 20349423 20324468 20317666 20366500 20351205 20371240 20362627 20333054 20359008 20338752 20331666 20358087 20344120 20313979 20375487 20306451 20317554 20332998 20346098 20332857 20332304 20333143 20315474 20324570 20287135 20314401 20336155 20350101 20353905 20349513 20308334 20392644 20327529 20367439 20336594 20300902 20342971 20281358 20274186 20355424 20333589 20305484 20295127 20348145 20384606 20314363 20335505 20325348 20311417 20283338 20264049 20336747 20344949 20336299 20305188 20327450 20261408 20352627 20328271 20318663 20345998 20281112 20301568 20335655 20318564 20311043 20340252 20277143 20391724 20313941 20354105 20297692 20299404 20340034 20259537 20260507 20336811 20313872 20279350 20290435 20303463 20299259 20309004 20328998 20251469 20316546 20342823 20284531 20249024 20289324 20309043 20293686 20311745 20296164 20255916 20248226 20319749 20283282 20259091 20293095 20271539 20314645 20299765 20223667 20315798 20321376 20306513 20298571 20280832 20298753 20301912 20252778 20272220 20308643 20265369 20298717 20268150 20293294 20289820 20291191 20254098 20272378 20298777 20298509 20288269 20294761 20284282 20289922 20271348 20258459 20284649 20264852 20255012 20245526 20302000 20340597 20288001 20315339 20335929 20267361 20259380 20319045 20238854 20248540 20280607 20287595 20281700 20292820 20226255 20262870 20281180 20279301 20270921 20240891 20273090 20319034 20265935 20288219 20283267 20258696 20317526 20279513 20252658 20251451 20262712 20311263 20251335 20281096 20328839 20261835 20283761 20246009 20253563 20245756 20242869 20293315 20314796 20259742 20230443 20234578 20266766 20234570 20238786 20245010 20238065 20258748 20268098 20272065 20262894 20212199 20248573 20270315 20232492 20240796 20307903 20267599 20196936 20203329 20266862 20259838 20252491 20284611 20244232 20266302 20270344 20251819 20233450 20288921 20263511 20233552 20279834 20225524 20239497 20278062 20232277 20283746 20239570 20244258 20221951 20233749 20275070 20213135 20298864 20222157 20217251 20214221 20231990 20215535 20191945 20306791 20198330 20221771 20183608 20255872 20254809 20237007 20279974 20259229 20232020 20189167 20227069 20234031 20213637 20172137 20198551 20217287 20276728 20268543 20266170 20209750 20255674 20207444 20250767 20265415 20242638 20214053 20215794 20301711 20252979 20199856 20195435 20248499 20222871 20205566 20197800 20223006 20300515 20231524 20300974 20217361 20300384 20211526 20218303 20202971 20172834 20268138 20185152 20176392 20199482 20213823 20225115 20191375 20215790 20268987 20216824 20201561 20268865 20221482 20280266 20221116 20240548 20206963 20227469 20280524 20239306 20242744 20200292 20223819 20227124 20194816 20237917 20228196 20215456 20187812 20161844 20202277 20177279 20227506 20213156 20209623 20213778 20197700 20242986 20195781 20240270 20197419 20169888 20194575 20232860 20212404 20180617 20254967 20195479 20199358 20190187 20203503 20234548 20178483 20222014 20253933 20219427 20197512 20190322 20204248 20239408 20272119 20190826 20230012 20206597 20225001 20249146 20230391 20219429 20221467 20194900 20208321 20185242 20189965 20182515 20191728 20158078 20198473 20216643 20187033 20229363 20197510 20154376 20239552 20166087 20181923 20188093 20181211 20202843 20169319 20222574 20184983 20185990 20266196 20195151 20212190 20231201 20205564 20234796 20186416 20222674 20182128 20214004 20142250 20154843 20257878 20177114 20177649 20217963 20148753 20168064 20158370 20166218 20180283 20169979 20191653 20177888 20161464 20150008 20210912 20128095 20168746 20189235 20153333 20196382 20150113 20152829 20170360 20161858 20126353 20167483 20141400 20135413 20210662 20137364 20166815 20160417 20201403 20119889 20263469 20149950 20182781 20176333 20135772 20164935 20183315 20142499 20139341 20098563 20148119 20133549 20179177 20124928 20158982 20143024 20163919 20101329 20139137 20171999 20143864 20141198 20116436 20194227 20142933 20168804 20198107 20180184 20151227 20183997 20175522 20207941 20188221 20149460 20173395 20142706 20104533 20202435 20147755 20163197 20167440 20168260 20163906 20116384 20161491 20182609 20246691 20108423 20174313 20148029 20136845 20128101 20118554 20180728 20114608 20157105 20140356 20086853 20181800 20123544 20102183 20106302 20152191 20076459 20095810 20158459 20076939 20192504 20115134 20082724 20134619 20147574 20156545 20127229 20134189 20140220 20113620 20071369 20112284 20116521 20084739 20116641 20117258 20132250 20096272 20131396 20087272 20158721 20134681 20093494 20150282 20108820 20092492 20184759 20095242 20148145 20151226 20080038 20134338 20099754 20154565 20098752 20066069 20135948 20174509 20125495 20135921 20086048 20074207 20099446 20125169 20097279 20088073 20078143 20193384 20115618 20139068 20082778 20175351 20156689 20114004 20101790 20123900 20068525 20049799 20127617 20102212 20088675 20056519 20103000 20082123 20126764 20074165 20049962 20052257 20102993 20100492 20082380 20108982 20115682 20135864 20093590 20116679 20101662 20112474 20078774 20083029 20078356 20103571 20046709 20072569 20137794 20122108 20051288 20071534 20128870 20163328 20082700 20113841 20011137 20109934 20106449 20138689 20068935 20091587 20116327 20104941 20102493 20111049 20081929 20122255 20069861 20086623 20064309 20134378 20067341 20091985 20054218 20076488 20071257 20112312 20102241 20127406 20109801 20138267 20148815 20061197 20106422 20110159 20100014 20038458 20136106 20071248 20102512 20102974 20049379 20097273 20114717 20078096 20051271 20051959 20074722 20069988 20015272 20095856 19999820 20029341 20084476 20089710 20058888 20069867 20049273 20024332 20078857 20098326 20074016 20115569 20040960 20099502 20069639 20025023 20067055 20083483 20031387 20114727 20069377 20023291 20080467 20117218 20064265 20065751 20024952 20100844 20083565 20050632 20030429 20102913 20067832 20096157 20052888 20056344 20030604 20069890 20038984 20039403 20086470 20061966 20079702 20088256 20037868 20054875 20065491 20054114 20070567 20085536 20045078 20073556 20047213 20032084 20051076 20043704 20076776 20043237 20046701 20068869 20062424 20047774 20043593 20020566 19980995 20049467 20050511 20018088 20003682 20025536 20027343 20045126 20014658 19985457 20022522 20056562 20016081 20058458 20021616 20024961 20013496 20050994 20037770 20047977 20056228 20005066 20061316 20030506 20047045 20031302 20045983 20035520 20049104 20032968 20085777 20052220 20047134 20027834 20017311 19979947 20004926 20100644 19991446 20057792 20067141 20081346 20055419 20002059 19983127 19961394 20012315 19972737 20025438 20079853 20022526 19996750 19956938 19997543 20016381 20019709 20030786 20029843 19984808 19983229 19992783 20026726 20055153 20033258 20011679 20012665 20031062 20032470 20036871 19989944 20068896 19983363 20011519 20059709 20005527 20049313 20012991 19991152 20063619 19982595 20021142 20060896 20042580 20027916 20016191 20016102 19951539 20047144 19963492 20036354 19943543 19983637 20004227 20047141 20050295 20004393 19998989 20040052 20038814 19996989 20012239 20021147 19990842 20037883 20003952 19999982 20045206 19972903 20008509 20012047 19980478 19978111 20001269 20003519 19996976 20016847 19981370 20049706 19973369 19993577 20002941 20022580 20003411 19981095 19933691 19992177 19982804 20001015 19983838 20035154 19966281 20036775 19994623 20014641 19950389 19980944 20032210 19972324 19977161 19985152 20008755 19997283 19974755 19990669 19949791 19973205 20031184 20048349 19968440 19929264 19971273 20000608 19957250 19986517 20016592 20000031 19940691 20006129 20003864 19971694 19960025 20006496 19992004 20033555 19941478 19968327 20019322 19994042 19959827 19968994 19950403 19968110 20013010 19949667 19965831 19968783 20009532 19964580 19984942 19947514 19993580 20010179 19982182 19974165 19966424 19970499 19960285 19937150 19904808 19989967 19955706 19920010 19995073 19987608 19913506 19975252 19952909 19982738 19973499 19964135 19972487 19988082 19980801 19897203 19944080 19979589 19956781 19940649 19940732 19947976 19971064 19955609 19973189 19930758 19892555 19935565 19909442 20009991 19926741 19910598 19986176 20000809 19933265 19987121 19936294 19937819 19942647 19936669 19980872 19945243 19952949 19963331 19955321 19956030 19928239 19975859 19959727 19944078 19949700 19898385 19923666 19938190 19949203 19900146 19868970 19944196 19943850 19896799 19925466 19950188 19943202 19931387 19944995 19942759 19958683 19944294 19912217 19925899 19961427 19979049 19899384 19924117 19901925 19966302 19901730 19907122 19955076 19970777 19913056 19904141 19967665 19906937 19923945 19911898 19914000 19948559 19974148 19924643 19963844 19911394 19958841 19948939 19910285 19961850 19909210 19891774 19894846 19925920 19939139 19920658 19910958 19952306 19931859 19884441 19926795 19962252 19899609 19918296 19890444 19906922 19912365 19934073 19926886 19934235 19851197 19903292 19917300 19937583 19906042 19875749 19891451 19871971 19847271 19893361 19905680 19881505 19896896 19884092 19926603 19925321 19908705 19968252 19875410 19979334 19888528 19905938 19929045 19905422 19874376 19896941 19889477 19881904 19921650 19879602 19867611 19906043 19954874 19904920 19898381 19908747 19873191 19890891 19904315 19848059 19888171 19895589 19893363 19836098 19864313 19893892 19875959 19905442 19832999 19917829 19846609 19909687 19894498 19952381 19884025 19927568 19854853 19903572 19903055 19882972 19891121 19951397 19920450 19848723 19871273 19878548 19936723 19898607 19881140 19882713 19834578 19876436 19849164 19902676 19943247 19879441 19877446 19890649 19879930 19887539 19877064 19855768 19891352 19895716 19879646 19891048 19877442 19843697 19860963 19871960 19908549 19866747 19854647 19828534 19832079 19878501 19833309 19835647 19801277 19892274 19883923 19868951 19858441 19828780 19886483 19855988 19852724 19853648 19927717 19807672 19864583 19875815 19889079 19905394 19864322 19838384 19853958 19867663 19892844 19894154 19872213 19844951 19869672 19822439 19837519 19815731 19845605 19865970 19914963 19887104 19885486 19869004 19816670 19842553 19860611 19840546 19840771 19868144 19781688 19829835 19839984 19805145 19845976 19868374 19804753 19854861 19841695 19855515 19879700 19810603 19809755 19864951 19864140 19817194 19814180 19866610 19841794 19866575 19801766 19813690 19867199 19804727 19836125 19855262 19827247 19800907 19822671 19783520 19816344 19844455 19844450 19857821 19852593 19836073 19805096 19818170 19819853 19839273 19823535 19852757 19818713 19838200 19815600 19763050 19833363 19846542 19801617 19838416 19809485 19834072 19878515 19828201 19788208 19834375 19827850 19844323 19851019 19819295 19830768 19805830 19852932 19806689 19809744 19835639 19789416 19853523 19869590 19811700 19799086 19861762 19824188 19848057 19799791 19834472 19821939 19797112 19788871 19841128 19803379 19776257 19790043 19854939 19775563 19792335 19816976 19837569 19794605 19756656 19770071 19811956 19822855 19817953 19868033 19768219 19813423 19785618 19803141 19833519 19814221 19806920 19805688 19768379 19809825 19795583 19805723 19846820 19761481 19802613 19780948 19777935 19786587 19768369 19812591 19815454 19785467 19775447 19792710 19802434 19793240 19820224 19833560 19754224 19883270 19738778 19841267 19787508 19863492 19772116 19776156 19794256 19805737 19762924 19812438 19788587 19793936 19761759 19747279 19803852 19776324 19806141 19797621 19828429 19857722 19759984 19771495 19762605 19806075 19743920 19804621 19809581 19776698 19712841 19782922 19778670 19803606 19768633 19753692 19785046 19729772 19788480 19767136 19792808 19774940 19736612 19763484 19833060 19736228 19823714 19814627 19776977 19753549 19757958 19733256 19801901 19776330 19758304 19832322 19754947 19782530 19733424 19824587 19755454 19757736 19765837 19764103 19794552 19733478 19780281 19757223 19706725 19772060 19772890 19748052 19742774 19747161 19708415 19736047 19803241 19709016 19779380 19779121 19759234 19720367 19757571 19763945 19758457 19771766 19770497 19727842 19780341 19730537 19688949 19761268 19779555 19735738 19768319 19742060 19746491 19731077 19727510 19749597 19745047 19735728 19774658 19773679 19684744 19736321 19722592 19752986 19772220 19781213 19716394 19826134 19791235 19759300 19777730 19729629 19747103 19766712 19673144 19807735 19771647 19759521 19720654 19750176 19760061 19721550 19734391 19687415 19753936 19766245 19763141 19702215 19763422 19747681 19742432 19732585 19717449 19694108 19730335 19752256 19723026 19715959 19725663 19707170 19753861 19739644 19718063 19694395 19760737 19708646 19788827 19689955 19752416 19730393 19759917 19724170 19743474 19718400 19710748 19693543 19744904 19694378 19728653 19690757 19754367 19716668 19764868 19704180 19717266 19743743 19764846 19683493 19685331 19710339 19677976 19698761 19751405 19741105 19706216 19763019 19681395 19730059 19735955 19681956 19739425 19686899 19776801 19753062 19685537 19719511 19697686 19739604 19729817 19739042 19689006 19692323 19770361 19755372 19744794 19738946 19736665 19691971 19696044 19688101 19731665 19675213 19736859 19719468 19745945 19712262 19751025 19672366 19733232 19719178 19671979 19690108 19671285 19742696 19723235 19721818 19711514 19715109 19692144 19686423 19633749 19690080 19722044 19658297 19688436 19682909 19728869 19708150 19736299 19673300 19679083 19700707 19674584 19757752 19699297 19732664 19689885 19672805 19695955 19682714 19739570 19705296 19695420 19673577 19702588 19632067 19633120 19664468 19687576 19650344 19689661 19674238 19694012 19684724 19690438 19681187 19662871 19694639 19681266 19688761 19673910 19667803 19688687 19630421 19692477 19696561 19679461 19629625 19725589 19679430 19649251 19682155 19658911 19682102 19645119 19636524 19721699 19671880 19706891 19614446 19672968 19658735 19703446 19717192 19693100 19680579 19637467 19696876 19667860 19637878 19685917 19639124 19641804 19635146 19625255 19716324 19704379 19618772 19712436 19666286 19700516 19597456 19615422 19648731 19605857 19599260 19691204 19632550 19679006 19683779 19618663 19668098 19671378 19636016 19705610 19684434 19663879 19647710 19640766 19646543 19634972 19622278 19639036 19637175 19643226 19661627 19676939 19595950 19662447 19646757 19654171 19676424 19660153 19590862 19661569 19624429 19655731 19649380 19637817 19609982 19666098 19642107 19645061 19642882 19636772 19637425 19634010 19635564 19620250 19618183 19660419 19659549 19657734 19627632 19583320 19620202 19659178 19598836 19654340 19638492 19658757 19657352 19686179 19651429 19662412 19628011 19571252 19619960 19647563 19597649 19652711 19591168 19616350 19627542 19628598 19623274 19643131 19594621 19591323 19647498 19613887 19636055 19582546 19646038 19626696 19661051 19652337 19623501 19617014 19660430 19641052 19642068 19666243 19632067 19569965 19640086 19635139 19641404 19597760 19661059 19601892 19621306 19558101 19630740 19558940 19619648 19598062 19574390 19605967 19612365 19626280 19643006 19575319 19582120 19590134 19539636 19644184 19612105 19608497 19589364 19614588 19577658 19605507 19605695 19663009 19659101 19595792 19600857 19631813 19593199 19610407 19559054 19621629 19699058 19593812 19639130 19574168 19618745 19571253 19568973 19654406 19569759 19614207 19561128 19595862 19633568 19593731 19609754 19630113 19593297 19560484 19592025 19595786 19626343 19590735 19567520 19607339 19588644 19603882 19633470 19613854 19560309 19581814 19559884 19539756 19549527 19585232 19584037 19595580 19539431 19601161 19514069 19561808 19606735 19568331 19590944 19617686 19620712 19603537 19601615 19571797 19614629 19562004 19616714 19594673 19575458 19603529 19590297 19631266 19583104 19594681 19628634 19579866 19542357 19558737 19591751 19577979 19617190 19564669 19583815 19606767 19566790 19602730 19605478 19598851 19548575 19573485 19573613 19596158 19602358 19562653 19575352 19558656 19589211 19564497 19558199 19530021 19597190 19555267 19584957 19540805 19573439 19541535 19584083 19611759 19561447 19536662 19594970 19541604 19569435 19628377 19574741 19561101 19604972 19537648 19573911 19572359 19546792 19571226 19531225 19578035 19534556 19532414 19589839 19574886 19568958 19482402 19551281 19582460 19557733 19565904 19553351 19580877 19537523 19608117 19572005 19572738 19515061 19567037 19580427 19574828 19541640 19567529 19518186 19576383 19519319 19555950 19534699 19539046 19543891 19539927 19544459 19524599 19562856 19565045 19558970 19538501 19540194 19593818 19552754 19549211 19597201 19566579 19586207 19566055 19543393 19537505 19513571 19523564 19559758 19510315 19553292 19533348 19518286 19537940 19498441 19548379 19566437 19543604 19510803 19552162 19569341 19528200 19513167 19513667 19556205 19549899 19508232 19502065 19596047 19550018 19557074 19590355 19506280 19520272 19536397 19557585 19515821 19499353 19487662 19524351 19560211 19535712 19528767 19484817 19531951 19531671 19496629 19535504 19553825 19548222 19515722 19471145 19556980 19520990 19539949 19531244 19562514 19575915 19499328 19507875 19496493 19569440 19516532 19572852 19518088 19515162 19500267 19493622 19477005 19496308 19519035 19528403 19493885 19552437 19544232 19559226 19501359 19557451 19520280 19497881 19531449 19465222 19490667 19489580 19504465 19481052 19510057 19478962 19493961 19537467 19535361 19566857 19528506 19511599 19475876 19506140 19532498 19496882 19491543 19497713 19473712 19555142 19478518 19487982 19525288 19491635 19479286 19447643 19487908 19533733 19487104 19539657 19447576 19472582 19396414 19478247 19496674 19498717 19522392 19463639 19515095 19491905 19437776 19503712 19479789 19501991 19533916 19471619 19467116 19458125 19474431 19569554 19460227 19557049 19536065 19524447 19485943 19446641 19434120 19518714 19455811 19433919 19451720 19495021 19497834 19490952 19492875 19533170 19479290 19459922 19546212 19428141 19484260 19432883 19464648 19495942 19515783 19491067 19433842 19430385 19467140 19445324 19504534 19508904 19403168 19465334 19479495 19447143 19478831 19478674 19510665 19479635 19478811 19450391 19498035 19453745 19502980 19533189 19481506 19468724 19485435 19419091 19479593 19487311 19462135 19418197 19471477 19471468 19495452 19460283 19425870 19465192 19494031 19462708 19469054 19463333 19440755 19428760 19451268 19464449 19453486 19472030 19432111 19459928 19429701 19439877 19443003 19475990 19457407 19449497 19484110 19459694 19410574 19407918 19447972 19472126 19507411 19457855 19453523 19499955 19444421 19411773 19418994 19421413 19484050 19419200 19446148 19419975 19432136 19442966 19481596 19415875 19464970 19455438 19415390 19431113 19416165 19427687 19444112 19403778 19436688 19435018 19447982 19442541 19447267 19451546 19419374 19506027 19439464 19412041 19417685 19422674 19388174 19435469 19424068 19380236 19438223 19401643 19420490 19461842 19472023 19396593 19443594 19450446 19418553 19490897 19439869 19415296 19435110 19412695 19458600 19406919 19435535 19406048 19396106 19501137 19439216 19390125 19410582 19394969 19391562 19403070 19412662 19385691 19433803 19399249 19462302 19425091 19421942 19431085 19386878 19416190 19423289 19401411 19401889 19440077 19378989 19393114 19426023 19443928 19465547 19361378 19387497 19434912 19386137 19394185 19415531 19404018 19466469 19428673 19440753 19412429 19424297 19422213 19427861 19430752 19409354 19418315 19397082 19404068 19390037 19441922 19423916 19406570 19363550 19383456 19435613 19385593 19352471 19415461 19406620 19406133 19418523 19373332 19408130 19403952 19396573 19411922 19386098 19358887 19405735 19408725 19436442 19406986 19388539 19390598 19402046 19367933 19390072 19365427 19385143 19363116 19361839 19421677 19370459 19429267 19461124 19359132 19378177 19447803 19411361 19416579 19384435 19370435 19337053 19382140 19350228 19422362 19388154 19398731 19379688 19373267 19378983 19443450 19397586 19426527 19419932 19382260 19367351 19408896 19356140 19413741 19428657 19429334 19400826 19373429 19386679 19382018 19315446 19372508 19415663 19432493 19397251 19344839 19416894 19401537 19364491 19388085 19355738 19394214 19380115 19387929 19347939 19366553 19368670 19336033 19356700 19326580 19398599 19374815 19335841 19352249 19379403 19416771 19380094 19426000 19326662 19371283 19404543 19348726 19382573 19398535 19407096 19376517 19340111 19358453 19306834 19326086 19331240 19368255 19341596 19383098 19380595 19304511 19397816 19309998 19348126 19354300 19344566 19301598 19326504 19387925 19318223 19370659 19331142 19350374 19340891 19404505 19362112 19356802 19365557 19319941 19310900 19387692 19349040 19297065 19385100 19341106 19348100 19380331 19342256 19375305 19380480 19342096 19352196 19349165 19349430 19353082 19320414 19294598 19335594 19360239 19369664 19343431 19250477 19327220 19336675 19340273 19328776 19337562 19337134 19300939 19307807 19413265 19296910 19359276 19365587 19300360 19303358 19332951 19327782 19348308 19300695 19319552 19325186 19338837 19315309 19338571 19374998 19332523 19288726 19319511 19380433 19314678 19328178 19339428 19328382 19385974 19344696 19283710 19357326 19309226 19323188 19287584 19303300 19335540 19303143 19306707 19334121 19350285 19343325 19349538 19297280 19284156 19290451 19287781 19306504 19334321 19318146 19329915 19304086 19369350 19325350 19330588 19295518 19307989 19315594 19320641 19320094 19351016 19311061 19336479 19303010 19330054 19327250 19302114 19274889 19330847 19335613 19295199 19310704 19306677 19331100 19268517 19343637 19300939 19311160 19296297 19267410 19302870 19292853 19319046 19261120 19297218 19325269 19286379 19336620 19299261 19301587 19336367 19320801 19301582 19301360 19291857 19275751 19278384 19296943 19349392 19297993 19296773 19303718 19265718 19306318 19280664 19307740 19269565 19270574 19257756 19283314 19241037 19283317 19266118 19286422 19292443 19262146 19293172 19298816 19278692 19339461 19280935 19316822 19253208 19265964 19305930 19285188 19214601 19297579 19291807 19271086 19247063 19258566 19233289 19330387 19271694 19239948 19319726 19262453 19278400 19265213 19310393 19241218 19240463 19328971 19283704 19272893 19265840 19304392 19260327 19281024 19252846 19217228 19310403 19277600 19289382 19284845 19233872 19301346 19288298 19227924 19275166 19319555 19284450 19266646 19248708 19294038 19245569 19262991 19269317 19241225 19243328 19203556 19273461 19222533 19266186 19305475 19309548 19238615 19271054 19284704 19287020 19241390 19278991 19286588 19293147 19273319 19286203 19261132 19272082 19217036 19309161 19251751 19228206 19261973 19277378 19208681 19245212 19245701 19233231 19266654 19217383 19206156 19266800 19248780 19230477 19252351 19203604 19231953 19245914 19243622 19206973 19205345 19300751 19247271 19274285 19234263 19221768 19244098 19261228 19229430 19252590 19250606 19328336 19286861 19227140 19238885 19243484 19282955 19263094 19226548 19277487 19229077 19226451 19214490 19199045 19228973 19216595 19169939 19292964 19301780 19286319 19219319 19191724 19274205 19248582 19225734 19196876 19235602 19209366 19224477 19188067 19230281 19245779 19250656 19260847 19244133 19225762 19257512 19265928 19210879 19207575 19166924 19232618 19237391 19217182 19216156 19241656 19242010 19196425 19226448 19171118 19275175 19240076 19217093 19234762 19222048 19257634 19193096 19271438 19222439 19207793 19196589 19212987 19196025 19198835 19246877 19252733 19214558 19236872 19252259 19260390 19222006 19212777 19230440 19183560 19184062 19238985 19171929 19197186 19143805 19206124 19213771 19191835 19180825 19192666 19178961 19178762 19201554 19277119 19216490 19204838 19226202 19163281 19179051 19204080 19178508 19212168 19289115 19203237 19224446 19190729 19200248 19239136 19175634 19176047 19183159 19215461 19193433 19166468 19180854 19191609 19217967 19251008 19195216 19194819 19210182 19220367 19201070 19185720 19204853 19142189 19193682 19148205 19183659 19233306 19172285 19167728 19198207 19277725 19201438 19224887 19174089 19170680 19186245 19174020 19182349 19185818 19203429 19161911 19204667 19158008 19183551 19217840 19147682 19175930 19149688 19188191 19195129 19149648 19241915 19169957 19169924 19165894 19200925 19183951 19135878 19206482 19198111 19214605 19185810 19205041 19122342 19219932 19202987 19195636 19143059 19138515 19186126 19178608 19200366 19120266 19182975 19162402 19161557 19138105 19151665 19162397 19195824 19176429 19142286 19158416 19179873 19126313 19169884 19172273 19143024 19168691 19142969 19150140 19142914 19181916 19127025 19180276 19192831 19156588 19109208 19195156 19141412 19167464 19153857 19137775 19115396 19167964 19211660 19221567 19171687 19159288 19125614 19161434 19081334 19127111 19137736 19176233 19113783 19151316 19165369 19134861 19145122 19141329 19117724 19159629 19148868 19170459 19143806 19140736 19187070 19147611 19157144 19132910 19124141 19138336 19136773 19132620 19118477 19129147 19160199 19092197 19109057 19162709 19149129 19092696 19165516 19097864 19091737 19111376 19127415 19142547 19131050 19148263 19114280 19167505 19152138 19095578 19180281 19129159 19122236 19136839 19135493 19114604 19147531 19129443 19118613 19142883 19100131 19110266 19163687 19102985 19147128 19149449 19103053 19128342 19142700 19099072 19148993 19142626 19088051 19121680 19158382 19129561 19106247 19182847 19150667 19092354 19100567 19144037 19087716 19089641 19144965 19088734 19129863 19146938 19092623 19097342 19100124 19161679 19116472 19162241 19112457 19116732 19113146 19122593 19088831 19052231 19122204 19100287 19093427 19124469 19132978 19123799 19200999 19130552 19118930 19117868 19075156 19103317 19127380 19079798 19085439 19147261 19088408 19125339 19050608 19087966 19087948 19137459 19094601 19069745 19131187 19156034 19141523 19085491 19098639 19068786 19131452 19078807 19071743 19030881 19102445 19082397 19093496 19081552 19122223 19108750 19084128 19110305 19100778 19051532 19059328 19089213 19121719 19120049 19056757 19098737 19056710 19054335 19058415 19101030 19084573 19100283 19079040 19127138 19048745 19081811 19041703 19073574 19083429 19072124 19074522 19076589 19125011 19090296 19116962 19074544 19116481 19064217 19119308 19121905 19108261 19046942 19102334 19127751 19056549 19085383 19030809 19031447 19068173 19059791 19028627 19054653 19016132 19083551 19128630 19080638 19059415 19098562 19098678 19071298 19058664 19074129 19009938 19051224 19057255 19072646 19016757 19061952 19044105 19067818 19085528 19111458 19070637 19029138 19050354 19107514 19041542 19052563 19020017 19067575 19041785 19054252 19083340 19020859 19074670 19125964 19089865 19060044 19078799 19023401 19023802 19112290 19087574 19058683 19106122 19061965 19001268 18984007 19008517 19038099 19037590 19069367 19107102 19031745 19043830 19072767 19110848 19035256 19033076 19036800 19041035 19050049 19064970 19034067 19061993 19026187 19055243 19022859 19021639 19003587 19088904 18983988 19037348 19063519 19023976 18994713 19023959 19047228 19035362 19086527 19058747 19014992 19017784 19008391 19041238 18982614 18994189 19048698 18989906 19020407 19037479 19026249 19020446 19010345 19031108 19007458 19035394 19031093 19010319 19120041 19010770 19024458 19074288 18993618 19044290 19010643 19046924 18993550 18986617 19038697 18961409 19011411 18977550 19035017 19045664 18995352 18992454 19014354 19040958 18974456 18947354 19009200 19036263 19030447 19037590 19009525 19016809 19046137 19055112 18999923 18977484 18990105 19020889 18957984 19051158 19012640 18974662 19005334 19003391 18998183 19028701 18946822 18979155 18996015 18988334 18978293 18969720 19007435 19000049 19056754 19025950 19013181 19022094 19021517 18965118 19014480 18931939 18935519 18980907 19014173 18996443 19028349 19013027 18960120 18995343 19006630 18977525 18984069 18981812 19016375 19016524 19004887 19007598 18979810 18995749 19001874 19023062 19026291 18969959 18946003 18975453 18985691 18994378 18992120 19019492 19016631 18991701 18956499 19008024 18985516 18981127 18999768 18975957 18980684 18933929 18981644 18975414 19013144 19005141 19010148 19002948 18995121 18978460 19000066 19007065 18936439 18972895 18954032 19025211 18944081 18994118 18963445 18917841 18952709 18938833 18959379 18956413 19053471 19010009 18945630 18994020 18955813 18941880 18967838 18987136 18958974 18943641 18966845 18978212 18942369 19011409 18931983 18939115 18969633 18950923 18931743 19016396 18977246 18969507 18982029 19003798 18966070 18979870 18950124 18989088 18991573 18973662 18934174 18937668 18955838 18986406 18979065 18980490 19020849 18939475 18972378 18941640 18949961 18949479 18951771 18975786 18897121 18931720 18960558 18930443 19002791 18941108 18934847 18944087 18982212 18911956 18963226 18962037 18959526 18899414 18938929 18957529 18997995 18959155 18968491 18915304 18926782 19002225 18906358 18936048 18942076 18932944 18911535 18936619 18904166 19016485 18976468 18914207 18965953 18916648 18918665 19016768 18998700 18875396 18924560 18967530 18966733 18964358 18895944 18978547 18947275 18920535 18924208 18915045 18968197 18976097 18928057 18919957 18954109 18926689 18925231 18895789 18930550 18896610 18885215 18945773 18928376 18930078 18946581 18900141 18919235 18935673 18972220 18878227 18949622 18929575 18937945 18938995 18917301 18938827 18938439 18881870 18939736 18890440 18958224 18927947 18924272 18953045 18931793 18908092 18945872 18935142 18885555 18927431 18891253 18973365 18887670 18947663 18916690 18891371 18916697 18940059 18927695 18949222 18903722 18908429 18900257 18908553 18911846 18929477 18937093 18903956 18935672 18894205 18960294 18898758 18896471 18885099 18926728 18937709 18932728 18966252 18932112 18933960 18918812 18867907 18936675 18955703 18882274 18891160 18880708 18913807 18874297 18870237 18896408 18894706 18850957 18925142 18946963 18872342 18895112 18909202 18906658 18903703 18897423 18922863 18881105 18861284 18901588 18916690 18885027 18850116 18885369 18848397 18900087 18878550 18890690 18919634 18857779 18925380 18891040 18917197 18905912 18915358 18908572 18883145 18897343 18863846 18850680 18882361 18879836 18873055 18887842 18891989 18911098 18876686 18874509 18878469 18839110 18874299 18922274 18911712 18880334 18860258 18862178 18897997 18915273 18907528 18837223 18863986 18856233 18884468 18845793 18873558 18833047 18898413 18918788 18902958 18868216 18947109 18845547 18892830 18890844 18839993 18808975 18920776 18814898 18883339 18859759 18868987 18934195 18819795 18905673 18875563 18895048 18875884 18876701 18884862 18872088 18862207 18817439 18825475 18857059 18861763 18937936 18835582 18849587 18873507 18860815 18837419 18858394 18854089 18852682 18869492 18896165 18897016 18839645 18877740 18892099 18852647 18900015 18849383 18829621 18832810 18919778 18897481 18852525 18858245 18840332 18872785 18820014 18845602 18810723 18892089 18862216 18864512 18818500 18862185 18853224 18858055 18810711 18824472 18835033 18821053 18845583 18874064 18849451 18773973 18844034 18897859 18855652 18864868 18818115 18849570 18799187 18821642 18865400 18836122 18800533 18839910 18853012 18814906 18805162 18877867 18835136 18885532 18865285 18854071 18799299 18860761 18835015 18764954 18831404 18838936 18852398 18803282 18870370 18822041 18825866 18807585 18845213 18876657 18815066 18840043 18855118 18855915 18794217 18898047 18861187 18788061 18816919 18840911 18848369 18854169 18839918 18823638 18801833 18823407 18804765 18810389 18867600 18849712 18818193 18850416 18809851 18846428 18796804 18806229 18826981 18834979 18861018 18809494 18809904 18826897 18874815 18865354 18753265 18779043 18805339 18831738 18834302 18785993 18827945 18843590 18804138 18785844 18767366 18831176 18880571 18805586 18805298 18797648 18844652 18781577 18861337 18809634 18789500 18803386 18852647 18812316 18808771 18864283 18786453 18844665 18793519 18835963 18788060 18779726 18833507 18797903 18771255 18800807 18801704 18840510 18790752 18814210 18796319 18777729 18842470 18818860 18796993 18812328 18765983 18798133 18728734 18817729 18803788 18815559 18776323 18786590 18799748 18761723 18801688 18785542 18781830 18754025 18809993 18737313 18806919 18799438 18827516 18796972 18828169 18750322 18741249 18768120 18816044 18832994 18775161 18774851 18766319 18780675 18759271 18776679 18789826 18793785 18779268 18805764 18797720 18767025 18730257 18762065 18768298 18750959 18749078 18744814 18760171 18786196 18773790 18808103 18790095 18742037 18788908 18768917 18770411 18782964 18738299 18715575 18759925 18786949 18775417 18768797 18738611 18711878 18765362 18766893 18792259 18737524 18788025 18791983 18800075 18801293 18806697 18802440 18783970 18776273 18815949 18767430 18781839 18767836 18788471 18780070 18778746 18784932 18770052 18760876 18787248 18763760 18778799 18776615 18784611 18749262 18766501 18774885 18741547 18710945 18786950 18785354 18784577 18692692 18724568 18762179 18723712 18739446 18731643 18772276 18752541 18760187 18759093 18772080 18774690 18785028 18758192 18716482 18713026 18777926 18797671 18709129 18713208 18757672 18798822 18711464 18728704 18733374 18721098 18755261 18744087 18713071 18778665 18756602 18761128 18734303 18740795 18728742 18739832 18813726 18747799 18774234 18804277 18742996 18739157 18751607 18765856 18784000 18725072 18696239 18751689 18730283 18709940 18777757 18686453 18734339 18732886 18759849 18719719 18733092 18777517 18755694 18804661 18743703 18711520 18784312 18685009 18740515 18666523 18707512 18736965 18723181 18675659 18734626 18716236 18674964 18715576 18760431 18760315 18744324 18714825 18767487 18718542 18744558 18720870 18717862 18762570 18718618 18706138 18710700 18698296 18730523 18693514 18685943 18701781 18731908 18731508 18710127 18745807 18794379 18721196 18732012 18660943 18720518 18709371 18757532 18713261 18652707 18729925 18707081 18770715 18702160 18729273 18670449 18673414 18724516 18746850 18721446 18764401 18719995 18702985 18762500 18700559 18680283 18641691 18687188 18730436 18715296 18727345 18670631 18710277 18720757 18741593 18715679 18723898 18662582 18721957 18758730 18716227 18745263 18710693 18696621 18696141 18721988 18683778 18692035 18651756 18678356 18738874 18707559 18701294 18648498 18676018 18686762 18744953 18696932 18699213 18661952 18739051 18735834 18675938 18737699 18692759 18685210 18702494 18743786 18642366 18707434 18658587 18674158 18644462 18708611 18710685 18693516 18632219 18723359 18629469 18681193 18713552 18664589 18671552 18696418 18680992 18650404 18704977 18622577 18700955 18690693 18674951 18710322 18666966 18669452 18660663 18717622 18706086 18710058 18691959 18729587 18715287 18679405 18699368 18654505 18702148 18700302 18644153 18619303 18638771 18710548 18716370 18632118 18676660 18638039 18651199 18686683 18639491 18661385 18707869 18655270 18617818 18698144 18660231 18660293 18707504 18697062 18697165 18675274 18667285 18646692 18658281 18699312 18695833 18641826 18637110 18646224 18659232 18656822 18686584 18640833 18629927 18670441 18621106 18660875 18637281 18680757 18681532 18713392 18716358 18688129 18636298 18624319 18671736 18707155 18685638 18637464 18646662 18651155 18624802 18662439 18686044 18668343 18685598 18703181 18699239 18650352 18648404 18664180 18685263 18649988 18685690 18629126 18630043 18644823 18716970 18631092 18666437 18681566 18686515 18608123 18684489 18638414 18679512 18637378 18681768 18608057 18637486 18672240 18675907 18629524 18670171 18634833 18615975 18643735 18637142 18645649 18634608 18623657 18641121 18648830 18633874 18564995 18665877 18685552 18619329 18633945 18607196 18658943 18685147 18613399 18653799 18685870 18661784 18595584 18616579 18656660 18595613 18582344 18663219 18650851 18641285 18607787 18672088 18643587 18683355 18625718 18622382 18662061 18618223 18600741 18611974 18626152 18596734 18602853 18654953 18627128 18603872 18647924 18623301 18625897 18628552 18600931 18647999 18597976 18618457 18639239 18622358 18589919 18647474 18672865 18606637 18623696 18597998 18598637 18644545 18626937 18546823 18631753 18649341 18589494 18574687 18600580 18619486 18642037 18598348 18578553 18586125 18604179 18602892 18616173 18598906 18542813 18570392 18562339 18583432 18617621 18562966 18649872 18628219 18602971 18568798 18601452 18646735 18520451 18654940 18591263 18604264 18610727 18586973 18586940 18630590 18613552 18570936 18600604 18541861 18591677 18609554 18571100 18592299 18588549 18606184 18616935 18561535 18528014 18579088 18598993 18620659 18583786 18595741 18582144 18562659 18575766 18573718 18550065 18568465 18553705 18612885 18610327 18582489 18603353 18604180 18573212 18587327 18562169 18570385 18547100 18593477 18560893 18576588 18643109 18618345 18615918 18600327 18592380 18560608 18562198 18618584 18572987 18568755 18618843 18605488 18586685 18590341 18592599 18544456 18539724 18635564 18559830 18576290 18569970 18642195 18568024 18566799 18560782 18521353 18577065 18614584 18609182 18612482 18538472 18542817 18570641 18564027 18528004 18575181 18598435 18557087 18533794 18560261 18587729 18542728 18546181 18596310 18557886 18539180 18529109 18604022 18563864 18554466 18631037 18539631 18584030 18570199 18588291 18549123 18578385 18542277 18559076 18553456 18563056 18588590 18526085 18568040 18553586 18535187 18563724 18551344 18546337 18488427 18579564 18604672 18552931 18613824 18553527 18578768 18532676 18568670 18579736 18583828 18566082 18566807 18596498 18574133 18570214 18538390 18510265 18504234 18532041 18574105 18555255 18528811 18509295 18535367 18619184 18513342 18540095 18570736 18555866 18522700 18530725 18504333 18541053 18572856 18537736 18514158 18553927 18556086 18536947 18518959 18539903 18498883 18574389 18516277 18513991 18532860 18489524 18527779 18530347 18520027 18534322 18492362 18546306 18550314 18598968 18515508 18495291 18544671 18520317 18569642 18523324 18562590 18517715 18538105 18503368 18555960 18575054 18537456 18512530 18548178 18556071 18526992 18540216 18543182 18519616 18510139 18486155 18489953 18492017 18531296 18568409 18530981 18531684 18504476 18553261 18536522 18486732 18511809 18498697 18512164 18506425 18456595 18519483 18520543 18505741 18482288 18518744 18464322 18551893 18482911 18482733 18502797 18519196 18532944 18525884 18510330 18522832 18480629 18544711 18500343 18442189 18512042 18482633 18564180 18564806 18536909 18452119 18471357 18477588 18500588 18544449 18531038 18510105 18533879 18495358 18485872 18525661 18491631 18532200 18492819 18515441 18467130 18481835 18492162 18462465 18480281 18507194 18446771 18518977 18505627 18488981 18442663 18504362 18540086 18490741 18483194 18534010 18495315 18468642 18456246 18482459 18480442 18491067 18484951 18474114 18488419 18519476 18451314 18494852 18471848 18466312 18478004 18501850 18478145 18482083 18484220 18472457 18506402 18520211 18464232 18505827 18452248 18484397 18456632 18425290 18486992 18488544 18477936 18489617 18495275 18446491 18469014 18460894 18493660 18468099 18470317 18481399 18480775 18393370 18501568 18478819 18493552 18494522 18461698 18519477 18511697 18513229 18524126 18495282 18528112 18493104 18513600 18472401 18443731 18438603 18424928 18497184 18456082 18413697 18454728 18469129 18485463 18471578 18470536 18475155 18431882 18460854 18417839 18471575 18445027 18473701 18482095 18425820 18473925 18462650 18456390 18476573 18466124 18428622 18490545 18440853 18397596 18406276 18412329 18491224 18470668 18403674 18428414 18463446 18508714 18422936 18423338 18445769 18447876 18416205 18428562 18506733 18488080 18465252 18447755 18401526 18408448 18475386 18425484 18479422 18437120 18449282 18439117 18494665 18429896 18464787 18426914 18431144 18511863 18398997 18425707 18467009 18448096 18465904 18465192 18434996 18417187 18428762 18414188 18451663 18401655 18450555 18414439 18416574 18480120 18474990 18459264 18462834 18426819 18428010 18410020 18406168 18437204 18394856 18471107 18385791 18385199 18425603 18459489 18389415 18422070 18445373 18401746 18452889 18468458 18446853 18380145 18434303 18385979 18461488 18450346 18430447 18399266 18461408 18455453 18419154 18448842 18384480 18425798 18436495 18445381 18404033 18412891 18443781 18441592 18403089 18403985 18433508 18414472 18416608 18359353 18424903 18434944 18441704 18391338 18420334 18390977 18383757 18396593 18377159 18335200 18454270 18350537 18419119 18397658 18394493 18398997 18405898 18486006 18396028 18446088 18411473 18422883 18431489 18385376 18393673 18476258 18449791 18367056 18368344 18417476 18396677 18378285 18431545 18388439 18448895 18398098 18378709 18377803 18439640 18376920 18359022 18382940 18440386 18427146 18434997 18412993 18399395 18421782 18369495 18377308 18424655 18384026 18396918 18427703 18392846 18355021 18377735 18379530 18458367 18336791 18402583 18417450 18393595 18361105 18411044 18397927 18375226 18425590 18356717 18426404 18366444 18402784 18391642 18367927 18349424 18339931 18427151 18435860 18369991 18378280 18319782 18373844 18406678 18414545 18362022 18374430 18348947 18396131 18379605 18363260 18352991 18386140 18390537 18388875 18411656 18367310 18432349 18365690 18372653 18376411 18368598 18393711 18418136 18402684 18371884 18364491 18423343 18341405 18369816 18336467 18351772 18402482 18385318 18422537 18359903 18367044 18386021 18355806 18268253 18425338 18361000 18387191 18357717 18308959 18340773 18373354 18347175 18351007 18373542 18370012 18430325 18382470 18367037 18402843 18305441 18401646 18322603 18333663 18377643 18329435 18351122 18357682 18359525 18381668 18362661 18401818 18352311 18307502 18330478 18310844 18326842 18325337 18378896 18377008 18396522 18343599 18359495 18341184 18334373 18344169 18369737 18368377 18327541 18341121 18352209 18366797 18387403 18340788 18350234 18353933 18337239 18345773 18343915 18313542 18362629 18297975 18375222 18345505 18361048 18362166 18356675 18335300 18301124 18367661 18352929 18314608 18316954 18284134 18339996 18294423 18316773 18296797 18339993 18287663 18282957 18306386 18348954 18353954 18369814 18369579 18332871 18354532 18345796 18358180 18346633 18309375 18369152 18314846 18281360 18333538 18289928 18255473 18298901 18337743 18347071 18289063 18329429 18269846 18285919 18314037 18376942 18293626 18337916 18356904 18309514 18313603 18305059 18294821 18344354 18313593 18324849 18345477 18314990 18310535 18303808 18344038 18314866 18316603 18312937 18334062 18341489 18341927 18295925 18293148 18326996 18315477 18322598 18283587 18287325 18307637 18313021 18287570 18326418 18303991 18336652 18314140 18286315 18303795 18291913 18321655 18338808 18295004 18292779 18299551 18318993 18286726 18321883 18300642 18277924 18297630 18414784 18260245 18308787 18307145 18299284 18256702 18322799 18287792 18292762 18341778 18303136 18301193 18352221 18268120 18249457 18371994 18295533 18265836 18250588 18289232 18269662 18283419 18271072 18272668 18353333 18320113 18294545 18291078 18268129 18332615 18265960 18371993 18292124 18371110 18342681 18262994 18317410 18305018 18277461 18300156 18292719 18272486 18263324 18213095 18259296 18281799 18251852 18278797 18296669 18269871 18262065 18315776 18267895 18285633 18280727 18270316 18294944 18317888 18262349 18316809 18319971 18259352 18329178 18277403 18245761 18265644 18270711 18297101 18219028 18274841 18252739 18255141 18307490 18282929 18307158 18289789 18236604 18298107 18333923 18258576 18270841 18234204 18253202 18288219 18246391 18270748 18260970 18279208 18315165 18286819 18302017 18295706 18267678 18261688 18228534 18264840 18251716 18273126 18265955 18249685 18267342 18251707 18323160 18299993 18238136 18284358 18228481 18270024 18235322 18286290 18305757 18277677 18260938 18276634 18250870 18277711 18205255 18245384 18248323 18236271 18263434 18240366 18257065 18242983 18264867 18260923 18245446 18224633 18243981 18294233 18245416 18320857 18245850 18221050 18258353 18242301 18258473 18229615 18262896 18310934 18237728 18248499 18266174 18291287 18253829 18202040 18276028 18212253 18291339 18233176 18191521 18283547 18230881 18280350 18248331 18252124 18178422 18229073 18201000 18257387 18189600 18191733 18259925 18219164 18248965 18233844 18273125 18243693 18233285 18285311 18183785 18200971 18282030 18260588 18243768 18229713 18226125 18253958 18201149 18266682 18202817 18235708 18182347 18249465 18215359 18280459 18239280 18172469 18188751 18225600 18198689 18273416 18284552 18196640 18216899 18234794 18199176 18213134 18246321 18237498 18258693 18197618 18189856 18205195 18251277 18198160 18242974 18260491 18226470 18183995 18153360 18208660 18224182 18220332 18210861 18238515 18271033 18188372 18160335 18233838 18191355 18189210 18198264 18235433 18202993 18173162 18229378 18239076 18211563 18194007 18256856 18186783 18253457 18230330 18158879 18188039 18203219 18171407 18172633 18219608 18245864 18223076 18224288 18248704 18176226 18179063 18224538 18226451 18187049 18225840 18190309 18226800 18233626 18170126 18253741 18229235 18189313 18244030 18220307 18188929 18222944 18250327 18176817 18239426 18223768 18179888 18222602 18201468 18263404 18193199 18181800 18183993 18202584 18178706 18197789 18196923 18187804 18185648 18239271 18174808 18216458 18203988 18176433 18122887 18244954 18193684 18161802 18221034 18203435 18159627 18235870 18169650 18154232 18210542 18137345 18176537 18183453 18221159 18174897 18180426 18179947 18165026 18217920 18193379 18179437 18218501 18207644 18183203 18224821 18153668 18200005 18173471 18193084 18192813 18161978 18176760 18189484 18197511 18165268 18170922 18195750 18167218 18139647 18168823 18186084 18116028 18197806 18202953 18168225 18193328 18163564 18206178 18199357 18178297 18191034 18161490 18186205 18163108 18193344 18129826 18142037 18156832 18157026 18120297 18168554 18127874 18177560 18188162 18180565 18178767 18217799 18170428 18143287 18185474 18176695 18194230 18161870 18162366 18163323 18212594 18123190 18172567 18194305 18164534 18143743 18124083 18135549 18139572 18134649 18116858 18173563 18098533 18151060 18161792 18132185 18135112 18174558 18140344 18166777 18147426 18140833 18215875 18202527 18170290 18129511 18142735 18153552 18168976 18141459 18156275 18168185 18094658 18187615 18173848 18147657 18143886 18141438 18142542 18164898 18179533 18145695 18138158 18119711 18145849 18131236 18185514 18189848 18136777 18107259 18200595 18157173 18084247 18160459 18148585 18088099 18131881 18189897 18195233 18131005 18140819 18103319 18102203 18116505 18092671 18116905 18109031 18136845 18128479 18108123 18131361 18112265 18095536 18110732 18158974 18119687 18145633 18133559 18067497 18100374 18105812 18095141 18106385 18177918 18131768 18166776 18176169 18148067 18175375 18140417 18118750 18104283 18100529 18139426 18092710 18124367 18119409 18101774 18128171 18147292 18155142 18100322 18164631 18118582 18175634 18106003 18073943 18121429 18123450 18058795 18051129 18105811 18110883 18127661 18092222 18120755 18131150 18106957 18087081 18099270 18134798 18092264 18088135 18164167 18106242 18079889 18146354 18062289 18128130 18101427 18085426 18109344 18123382 18035092 18069258 18103901 18088613 18100323 18139430 18139032 18126771 18086544 18077573 18092900 18109325 18081209 18064501 18103983 18117961 18125594 18114092 18071209 18100620 18109224 18091268 18117835 18090783 18133526 18137137 18159472 18069545 18076727 18088763 18113045 18154317 18068758 18070918 18101010 18062820 18047119 18116757 18142340 18075545 18097764 18061161 18061181 18090625 18062229 18099264 18095882 18057467 18088873 18099630 18127376 18084441 18086138 18061090 18103725 18117178 18117807 18079973 18052102 18126354 18114706 18033117 18111841 18070977 18025419 18063083 18070588 18066880 18058249 18050745 18058477 18059541 18076834 18087608 18056393 18096783 18039096 18075030 18067635 18102746 18082738 18084152 18092997 18094736 18057437 18083561 18064622 18059271 18037819 18093062 18064302 18100357 18031998 18069269 18061411 18064582 18080337 18018296 18040053 18033648 18018673 18082648 18083187 18073702 18044883 18017194 18041036 18013334 18081728 18080127 18091424 18057582 18085829 18063845 18081310 18065040 18084998 18092789 18094405 18048292 18119898 18085652 18071150 18008880 18073475 18057749 18079610 18053736 18093239 18041027 18044616 18025499 18048392 18046436 18056197 18072371 18026424 18059279 18059297 18039368 18034285 18018102 18089737 18030384 18076244 18055193 18047685 18055374 18044229 18018408 18051724 18068188 18075102 17969514 18034931 18061832 18060783 18052370 18006209 18052750 18013055 18029700 18040341 18018122 18084138 18028643 18121194 18071705 18024250 18009453 17999048 18027771 18019700 18039308 18022857 17992128 18018123 18032664 18011454 18042687 18037021 18064696 18031969 18007728 17980330 18024448 18049066 18006363 18071577 18067085 17989902 18019477 18014974 18020045 18022787 18042740 18071480 18064681 17999896 17993197 18001208 18002856 17999310 18014315 18108779 18044765 17989723 18051633 18001625 18001884 18023412 18058193 18079403 18042980 18013745 17971240 18015720 18007672 18019371 17998111 18005229 18034206 18000093 18015378 18043497 17995459 18040440 17927855 18033690 17993487 18021742 18012723 17998463 18002608 18041726 18014480 17939299 18037323 18019662 18012884 18032958 18004633 18076326 18040203 18017208 18027874 18015988 17973122 17997760 17959100 18016559 17974138 18033174 17935507 18028725 18011753 17999791 17979923 18018135 18031600 18024440 17985921 18019857 18007069 18014711 17969229 18025191 18000670 18013023 17987873 17982574 18016109 18018425 17980666 17996894 17963166 18011218 17944544 17936824 17951701 17988893 18021500 18027137 17965390 17999916 17957980 18017381 17990054 17998078 17984306 18031139 18000657 18030909 17959586 17981242 18005141 17962421 17994968 17941414 17991921 17950193 17999621 17986991 18006772 17979124 17998047 17943553 17948183 17951886 17973568 18008620 17967408 17966464 18007962 17949648 17966899 17969291 17955525 17947358 17910053 17988913 17946301 17996808 17900286 17937417 17986366 18018838 17969020 17951818 17962953 17974687 17979701 17978534 17964939 17977082 17989381 17956380 17940810 17952173 17952672 17956547 18002379 17976351 17936415 17969913 17961087 17935004 17932756 17963993 17947533 17954781 17935597 17976234 17916392 17932504 17930055 17953283 17949612 17913749 18002566 17935723 17957860 17978525 17953378 17987352 17960451 17963444 17944657 17953137 17921799 17940370 17946674 17901944 17945581 17926472 17954511 17943610 17957739 17922363 17943515 17908428 18000840 17983985 17944840 17958860 17998069 17963048 17961220 17912364 17923343 17949141 17985468 17962936 17918928 17977552 17879260 17909013 17941387 17956851 17920318 17943227 17915526 17964786 17938140 17944055 17919564 17940522 17980443 17948179 17959747 17937593 17968446 17956349 17978364 17919266 17986412 17913754 17875466 17963547 17929347 17957104 17955684 17908344 17956009 17972717 17922505 17937796 17956981 17937390 17922674 17931228 17933463 17943653 17963238 17933750 17909074 17914442 17919464 17886639 17907338 17929535 17883657 17869517 17923115 17933413 17967162 17931609 17863009 17883917 17886155 17939909 17915228 17908633 17919331 17919621 17920873 17961732 17933570 17941970 17917964 17939540 17848680 17902306 17913300 17915513 17938921 17875236 17954319 17932228 17928301 17874037 17895088 17906519 17906113 17903226 17868150 17874462 17908562 17870432 17926793 17899368 17904229 17922883 17919347 17944693 17906748 17889753 17952083 17907597 17970879 17868430 17833988 17897467 17868800 17886079 17864046 17924914 17875220 17912964 17850641 17831180 17878808 17876867 17921200 17912666 17901994 17845665 17855669 17863576 17889957 17874557 17896372 17915907 17905038 17852906 17875594 17859153 17886103 17903111 17865846 17870854 17894488 17884579 17922983 17862410 17884806 17889673 17956044 17887076 17884923 17920717 17940527 17864436 17861483 17852137 17896369 17858099 17872658 17860117 17876477 17847533 17895067 17859448 17883443 17886953 17878718 17910308 17880836 17825941 17837653 17892991 17849885 17850152 17847525 17884390 17857762 17843116 17836598 17854157 17858358 17870382 17894849 17904145 17832581 17914787 17884126 17843003 17864918 17874711 17868522 17919859 17881127 17836571 17912877 17823395 17853261 17929323 17874711 17863217 17815892 17855781 17849997 17822281 17816066 17867008 17839186 17875394 17857064 17911880 17863447 17877699 17904986 17917162 17844559 17918783 17832954 17867456 17899760 17861225 17873806 17893928 17845665 17803514 17881094 17838177 17847638 17889012 17796671 17823316 17820915 17868264 17876354 17844103 17872895 17858533 17853602 17860175 17885123 17865188 17886894 17853133 17880901 17843342 17854345 17888325 17774100 17853626 17798831 17882260 17860068 17865455 17859178 17874511 17880195 17830492 17827499 17857793 17862261 17855779 17835427 17825218 17857777 17827025 17813771 17825060 17855461 17844339 17863501 17852472 17889383 17832474 17855670 17830555 17841870 17848861 17853767 17815182 17830011 17815669 17850307 17827467 17890141 17839090 17742519 17853332 17826865 17842134 17815805 17837798 17837952 17881158 17819958 17807879 17855454 17867650 17796284 17844469 17827210 17813198 17806891 17821118 17841529 17805453 17846076 17805770 17853897 17805100 17789704 17824403 17804478 17821316 17827078 17798581 17795443 17880270 17805442 17807605 17813651 17796209 17803977 17874826 17785360 17830635 17856683 17828922 17817389 17839953 17814899 17766282 17806585 17837547 17796913 17827559 17812787 17801676 17832269 17779314 17877571 17771229 17818149 17821955 17805462 17771516 17839113 17764754 17809908 17823130 17757801 17777601 17824253 17830468 17855309 17834537 17800902 17801281 17813665 17789171 17810311 17813161 17821548 17838379 17809956 17831377 17802263 17805166 17772859 17773592 17815752 17752085 17791278 17768191 17767484 17769403 17789626 17804055 17799279 17830682 17797706 17730251 17790122 17798000 17822811 17788380 17763538 17807650 17740399 17801111 17810419 17790371 17785025 17768795 17786153 17828609 17763318 17812246 17787029 17816328 17814491 17770093 17760068 17755336 17809319 17814830 17797626 17692342 17825728 17839156 17757114 17822735 17825266 17792936 17826649 17812193 17794039 17799590 17782398 17778757 17767798 17766363 17835517 17794690 17781763 17777079 17793371 17769292 17809000 17819828 17834787 17748607 17768031 17749933 17782302 17798435 17752774 17732974 17786314 17762765 17767023 17766729 17851737 17753344 17763754 17737836 17799188 17790131 17783613 17743077 17764759 17755808 17747059 17790351 17731866 17781622 17800231 17776315 17710616 17736061 17791502 17738794 17727855 17738495 17769913 17771811 17779906 17726657 17742516 17760217 17757899 17795299 17756214 17797874 17738122 17769336 17763840 17702096 17722090 17738042 17785057 17763974 17808270 17766464 17782200 17742648 17738870 17799938 17740945 17755943 17723629 17784409 17735164 17718899 17759343 17765358 17709320 17689241 17732981 17717060 17756068 17736886 17752309 17787869 17771038 17698980 17702974 17750556 17723046 17743113 17805154 17747263 17754140 17749019 17790235 17759921 17712794 17706744 17718650 17720397 17750679 17738905 17702693 17738806 17740568 17747294 17746689 17702280 17776086 17738605 17733110 17703712 17721585 17684275 17776920 17712909 17747850 17700535 17697928 17700281 17687134 17713419 17717100 17752447 17685376 17693002 17634940 17710354 17734340 17703578 17708823 17739609 17738745 17716208 17704668 17718490 17736072 17701151 17713142 17729021 17693786 17736396 17742572 17723226 17701724 17709004 17711381 17750864 17753615 17713515 17762100 17762753 17743220 17751187 17712756 17698508 17715744 17753358 17707354 17651828 17711551 17733956 17685382 17710660 17670118 17655886 17670689 17679657 17719907 17714666 17674814 17672152 17688712 17665538 17713756 17725171 17675874 17741778 17708932 17682273 17677696 17769490 17727693 17663745 17700853 17697574 17708833 17708296 17665837 17686514 17658367 17739853 17724300 17695844 17749548 17674993 17775997 17721437 17679758 17674803 17746558 17659334 17697023 17646708 17726375 17733165 17711582 17690675 17733634 17685006 17736097 17692816 17706760 17702876 17704059 17661788 17716233 17683240 17669120 17677112 17714271 17670822 17675589 17659517 17707184 17651380 17655896 17665488 17646931 17677503 17691401 17712491 17669090 17666758 17671874 17708509 17662067 17647614 17666138 17719297 17677464 17689925 17641477 17661373 17674685 17700681 17671795 17630372 17671740 17711704 17705028 17616811 17630802 17677525 17678058 17695572 17606143 17648281 17657255 17713871 17633992 17657293 17726024 17650256 17702971 17690341 17686800 17657148 17695381 17674969 17674008 17642438 17661859 17707855 17628475 17674574 17637990 17659219 17685558 17633522 17632329 17675233 17642403 17669350 17601975 17654948 17637369 17616398 17678680 17592610 17702302 17645417 17672626 17652251 17624191 17627241 17669792 17643969 17602673 17612163 17638295 17625071 17660282 17637800 17632749 17676742 17636988 17668436 17608320 17633365 17660000 17658936 17656941 17614672 17626153 17569315 17652772 17620200 17644819 17650292 17656118 17658477 17611928 17609287 17662129 17656030 17595872 17608806 17678424 17653739 17671269 17657029 17653947 17604524 17633661 17650521 17668999 17653307 17626702 17626637 17604453 17600297 17680133 17617736 17639347 17613150 17671554 17668208 17673856 17591507 17594302 17612259 17609282 17648398 17586593 17612818 17624224 17619664 17638076 17609547 17599397 17613044 17608683 17577938 17661180 17624343 17594735 17644688 17541683 17627495 17639497 17669356 17655735 17601337 17615731 17657166 17613467 17602430 17674030 17542304 17593405 17623765 17600130 17676737 17608620 17632432 17610809 17618439 17581932 17622595 17604742 17640592 17608602 17634398 17647314 17648973 17556280 17639351 17569461 17640181 17628908 17622892 17599052 17621436 17582705 17660427 17597220 17594214 17605216 17587917 17653334 17641211 17605269 17603888 17596147 17591470 17598533 17644776 17630935 17553697 17594083 17634996 17571744 17612880 17601578 17568411 17629269 17589113 17644012 17573908 17560144 17623625 17575827 17546461 17591486 17602264 17588049 17601009 17597529 17627448 17548400 17573661 17565596 17586469 17571504 17630523 17603138 17556217 17552050 17577441 17646323 17569316 17551847 17637333 17613787 17590128 17552477 17561848 17581520 17577122 17610902 17605797 17613474 17546101 17624978 17584446 17578874 17584486 17602382 17602369 17554697 17570713 17537986 17555327 17555505 17502503 17556889 17540868 17528250 17573074 17575963 17612254 17587579 17607505 17581170 17539599 17584863 17599476 17564723 17563115 17580152 17607513 17582687 17599419 17570205 17586810 17569542 17565010 17585648 17578513 17585954 17587844 17594794 17601278 17595040 17588820 17615160 17597391 17557968 17570306 17544449 17578273 17562447 17553843 17532970 17576745 17576853 17542363 17534205 17592785 17616798 17581032 17528044 17528150 17504533 17596729 17531571 17531960 17601811 17527120 17537994 17542067 17564290 17558089 17568224 17618340 17534547 17582371 17542281 17552321 17602153 17580881 17547297 17557310 17520139 17572504 17499678 17530058 17584656 17536936 17554948 17533423 17532105 17584325 17547905 17563444 17553475 17548956 17535710 17522933 17563909 17529056 17533695 17502250 17507026 17525578 17533475 17508820 17521644 17537795 17541375 17541668 17509769 17495857 17551478 17509033 17587267 17492239 17526657 17568985 17544842 17513695 17511124 17549950 17543279 17503095 17534971 17534411 17551884 17556538 17523247 17523759 17550344 17571108 17530174 17501501 17471986 17503485 17501542 17499078 17519305 17562912 17553030 17515668 17491770 17500980 17489871 17524686 17514228 17500782 17517599 17509742 17515136 17503044 17560631 17554830 17541230 17532664 17475118 17570022 17523195 17490487 17466720 17519084 17517972 17531152 17520767 17462328 17500386 17525767 17526683 17479216 17540656 17545368 17493583 17528404 17464955 17488527 17525943 17511781 17476433 17513876 17531990 17483634 17531315 17570169 17480654 17548188 17504621 17507239 17541470 17537603 17468661 17501349 17490057 17473526 17514130 17450330 17480674 17493565 17477235 17497523 17481383 17529764 17515687 17509597 17469788 17487052 17524102 17503367 17518824 17496193 17431539 17519992 17452788 17505608 17484028 17457774 17489359 17489820 17449670 17470791 17483255 17457857 17491795 17526411 17468284 17468684 17451840 17534682 17472545 17496271 17497898 17434887 17474755 17432052 17503684 17473738 17478030 17432808 17476928 17486516 17413605 17492141 17535131 17473513 17452253 17540328 17466467 17487936 17464601 17466769 17478519 17430333 17484238 17526315 17495766 17495761 17511248 17498243 17419810 17454886 17424106 17457908 17425106 17511040 17482480 17475399 17466986 17391566 17431997 17455159 17422460 17438198 17494603 17502021 17462645 17470852 17435278 17463483 17402379 17437695 17521405 17449435 17491781 17428666 17456906 17404562 17430839 17475704 17482026 17498507 17476226 17478299 17451221 17461627 17438745 17423102 17445265 17433054 17483487 17433022 17477347 17410403 17447390 17432427 17408660 17442130 17459119 17423846 17468215 17471483 17456256 17443322 17471715 17473652 17440075 17468647 17473240 17414758 17430654 17440725 17418661 17469952 17447817 17471944 17432385 17454148 17482164 17472386 17441524 17377043 17442830 17431514 17469186 17422096 17462364 17452634 17414036 17429042 17436545 17389748 17494342 17460121 17442650 17432481 17448319 17427220 17455545 17439466 17425304 17421837 17411711 17389663 17409150 17437810 17463441 17429397 17412125 17395458 17406502 17457280 17397627 17454079 17424061 17463702 17435744 17436198 17428550 17367333 17436558 17447101 17446865 17440087 17471211 17364531 17394438 17448311 17401968 17452838 17401435 17409760 17441698 17452775 17440866 17429280 17355090 17435024 17394044 17388415 17411789 17409719 17425705 17449977 17387053 17406380 17402430 17386682 17410748 17360146 17450679 17399763 17401237 17431894 17373763 17453796 17400489 17404140 17387311 17402305 17385549 17413634 17416706 17396415 17344740 17388033 17364713 17413963 17371358 17393521 17436634 17433901 17394894 17419290 17410992 17388883 17413889 17432026 17440513 17369081 17435565 17407703 17437222 17368887 17388590 17374551 17359711 17402630 17404814 17395662 17412742 17405480 17411835 17378057 17366831 17367476 17422953 17400923 17383933 17378270 17404537 17459894 17385232 17312319 17380235 17373883 17373544 17323078 17398041 17413431 17403015 17379713 17373524 17369819 17325786 17393417 17351394 17371016 17317743 17375590 17411179 17389802 17332063 17357594 17331800 17370369 17362242 17374307 17361645 17337517 17343489 17368236 17379601 17334324 17386368 17395752 17359817 17346766 17351292 17347521 17368368 17394679 17376186 17355162 17319571 17387078 17378220 17319409 17389099 17374910 17332421 17354022 17365160 17353087 17301207 17379027 17346390 17361474 17350570 17400046 17354329 17337391 17342189 17359447 17327296 17379798 17351406 17353236 17348237 17373291 17348108 17386617 17314740 17337563 17343101 17365365 17367630 17403990 17362587 17356797 17331594 17400195 17375269 17365054 17337759 17382021 17333673 17350027 17425647 17379769 17338673 17375074 17407469 17361351 17351713 17338713 17356696 17305257 17364313 17374711 17361123 17351089 17316370 17329515 17274111 17309261 17297549 17328652 17340750 17371587 17345415 17343880 17316493 17365796 17355655 17301921 17354666 17336941 17303088 17303781 17366335 17358241 17360250 17337227 17326898 17356462 17328433 17353726 17345085 17310071 17349436 17358139 17262965 17341569 17295515 17319744 17313621 17313229 17332784 17339820 17331659 17318669 17359955 17252870 17360455 17341333 17394869 17340247 17332324 17311805 17321968 17330862 17325931 17325971 17363514 17316429 17304304 17313662 17305051 17266582 17305639 17308165 17297101 17318791 17319548 17391768 17307799 17323736 17323579 17289525 17304492 17307080 17321949 17355504 17338503 17324756 17303645 17309352 17393045 17288968 17332747 17350062 17293186 17314685 17320988 17283718 17326693 17300962 17328535 17324882 17345375 17350238 17354900 17323781 17307425 17320019 17290823 17264931 17263679 17358279 17326666 17283322 17307959 17314723 17326803 17272346 17286397 17255869 17336593 17306127 17290863 17260323 17343646 17314154 17268445 17262344 17291987 17308438 17303405 17290650 17246793 17265257 17340338 17365475 17311751 17346693 17333977 17327696 17263116 17280221 17292456 17258057 17325828 17281844 17297340 17258663 17264257 17306180 17260183 17290172 17236140 17249371 17297720 17253026 17315828 17274460 17271824 17250913 17297217 17296206 17280480 17285117 17317955 17332634 17252100 17271555 17244679 17302255 17225414 17260674 17242593 17239001 17307354 17264272 17270436 17310091 17249802 17260305 17291016 17249883 17299998 17309315 17299924 17308751 17239158 17273720 17269828 17282956 17297942 17230509 17275579 17297109 17214454 17280948 17241543 17251772 17261106 17245986 17267868 17258169 17250013 17240456 17319248 17248387 17303024 17282777 17249477 17256033 17329976 17242019 17239335 17241775 17222980 17240844 17307730 17280975 17277112 17278912 17198573 17288222 17238494 17257023 17217721 17301831 17294455 17269393 17224996 17262566 17196070 17193120 17280011 17294967 17252651 17274461 17264929 17271972 17272028 17231959 17286320 17246526 17271113 17251666 17259476 17238817 17258836 17226216 17260352 17236943 17238022 17262280 17260410 17248784 17217574 17234582 17242079 17231289 17252688 17253778 17281860 17201199 17221696 17233890 17252189 17251471 17232396 17237394 17230939 17219940 17272469 17238531 17278782 17258281 17252135 17233864 17276333 17246985 17222444 17266017 17284406 17239422 17218660 17236324 17238523 17242414 17293279 17201454 17203242 17218600 17185008 17283390 17252535 17240414 17180509 17242811 17179157 17233613 17188851 17178225 17248165 17207944 17250108 17198803 17308064 17252450 17240391 17213033 17249857 17236558 17237253 17232838 17222711 17272552 17204429 17247870 17245568 17209443 17229002 17242981 17239903 17224868 17219995 17266549 17218094 17195668 17267828 17210555 17202064 17260507 17200332 17221615 17198123 17221413 17262087 17221404 17205974 17211554 17213290 17238669 17223847 17176957 17205415 17172090 17230550 17229758 17184350 17183027 17183026 17217373 17186520 17235148 17187907 17207391 17232392 17181303 17160759 17228208 17242277 17200255 17202115 17144710 17219764 17186509 17218003 17219636 17221875 17257573 17205862 17210766 17259774 17198709 17210144 17200063 17210601 17169744 17164653 17185973 17220580 17208025 17173519 17196979 17176760 17173676 17224102 17177850 17244685 17242748 17232116 17186122 17204227 17223651 17159788 17239629 17196968 17200247 17196078 17205284 17206406 17190457 17197759 17181156 17265978 17158794 17208449 17132482 17216308 17186106 17245598 17165756 17242722 17198310 17181902 17199193 17192839 17178184 17173749 17208087 17213742 17176935 17198411 17147098 17190611 17172692 17219993 17158047 17204000 17198833 17166701 17155577 17148382 17206292 17195941 17179424 17157308 17158172 17170065 17139450 17184664 17174728 17204544 17188747 17213077 17210273 17175873 17167656 17173093 17167963 17230147 17228596 17186641 17190479 17182549 17172002 17154497 17148316 17172818 17182170 17161712 17152071 17176423 17152177 17180959 17177421 17166896 17188519 17177037 17127089 17165328 17130612 17174335 17103836 17131177 17175500 17134031 17156657 17190916 17148084 17218358 17189647 17164845 17123122 17183701 17156901 17151634 17105402 17145710 17152102 17146775 17174810 17140659 17147853 17101375 17157375 17159526 17159795 17193598 17127514 17141047 17137987 17134606 17172917 17173346 17173765 17172097 17153255 17151939 17166297 17179150 17177752 17131235 17135403 17159732 17126248 17130601 17174957 17150289 17172730 17145289 17138771 17157900 17116483 17137158 17128124 17148774 17136561 17056608 17138194 17189510 17111489 17165028 17142706 17127732 17136838 17097411 17186977 17097175 17188601 17150603 17157895 17118669 17144895 17117617 17181796 17158835 17124566 17101666 17179814 17086234 17173504 17149448 17142637 17129309 17144615 17121785 17115609 17132580 17151410 17125090 17136669 17126990 17107100 17127099 17094435 17136013 17111370 17101613 17134109 17133284 17100860 17142555 17100106 17197182 17107221 17126874 17139603 17106544 17128153 17115979 17102506 17149682 17119357 17104750 17100830 17109967 17100428 17072215 17084635 17127900 17113011 17075121 17138010 17096578 17108604 17120357 17104698 17092273 17139673 17071177 17098176 17114852 17082255 17145996 17107483 17110036 17074709 17127972 17119785 17141190 17136011 17073594 17111737 17123587 17104034 17098418 17109011 17098343 17091483 17068177 17128767 17114464 17075426 17107259 17132082 17108253 17088605 17135284 17089421 17135064 17080988 17120393 17138857 17027662 17103234 17076581 17092826 17122236 17120026 17103457 17084256 17115278 17083802 17069954 17062326 17088080 17040169 17091937 17097968 17092099 17133291 17031395 17099737 17111589 17140237 17030807 17082889 17100667 17016747 17119267 17090419 17081761 17086140 17063127 17121575 17102238 17058577 17108528 17104503 17076748 17060600 17022776 17057395 17047859 17060181 17060507 17026035 17015561 17084087 17059479 17107152 17097267 17063615 17085649 17013013 17088459 17059306 17067576 17076751 17070577 17037131 17071803 17069055 17085779 17026313 17065947 17052926 17060606 17128809 17089746 17052518 17080532 17077645 17050738 17066811 17064449 17031241 17071692 17028517 17089399 17032523 17084217 17090796 17023490 17066726 17090955 17044560 17040184 17041035 17046998 17007153 17080533 17043625 17102704 16996909 17074680 17042177 17075532 17058464 17087865 17017344 17030756 17026723 17042976 17045077 17058489 17031034 17009392 17041095 17056260 17017421 17069943 17045025 17060774 17067386 17040040 17021482 17019053 17040031 17021994 17009205 17083643 17022256 17039901 17055962 17021602 17044514 17022188 17041209 17026579 17017926 17017034 17066098 17086448 17047701 17089806 17043801 16989267 17026738 17030508 17010148 17068483 17025518 17052017 17020912 17005738 17070572 17050626 17028692 16973066 17013059 17006207 17022582 17000163 17021549 17035891 17013987 17049833 17036480 17026158 16999789 17022758 17001871 17043526 17015372 17008966 17037003 17026563 17050966 16985070 17015699 17000381 16993986 16989032 16992879 16971411 17001259 17012481 17011966 17046694 17018652 17012070 17003857 17032968 17040116 16972974 17055694 17027875 16982431 17034230 16994931 17032054 17051957 17043649 16978789 17041310 16979285 17002708 16958132 16988784 16971452 17002675 17040458 16992234 17044602 16992501 16962207 17010424 17033608 16982206 16991854 17032647 17009826 16965097 16989178 16945361 17056834 16992853 16966618 17008383 17008362 16956858 16954210 16960786 16986348 17039097 16954750 16984881 17004543 16976825 17045190 17006590 17006539 16983572 16994346 17030450 16979175 16997775 16970261 16969703 16963895 16992709 16959917 16939687 16993183 16999586 17002697 16954897 16948263 16988253 16980211 17019794 16959628 16945011 17009844 16981822 17004460 17014322 16998550 17015597 16983818 17008051 16977225 16997481 16968983 16940104 16979315 17005129 16960914 16939181 16992913 16924357 16980802 16965984 16985429 16963925 16987791 17002058 16964130 16985030 16940778 16950901 16990080 16942650 16960650 16973125 16982818 16969611 17021136 16954391 16927004 16984629 16991755 16972414 16960446 16973026 16930885 16953344 17029315 17029477 16926939 16958725 16917381 16958238 16950680 16929844 16925695 16943801 16958542 16955019 16913077 16917512 16944039 16970342 16953496 16913674 16930063 16945309 16957669 16945802 16944389 16986129 16911221 16899528 16954647 16930589 16992870 16977019 16982665 16939600 16963857 16894531 16925123 16974119 16948821 16907532 16911106 16915578 16941262 16921916 16956989 16933323 16910999 16911381 16872650 16957711 16898926 16991393 16950817 16932292 16911100 16937612 16946659 16937171 16940711 16919635 16953487 16934610 17009887 16954118 16923742 16925296 16928595 16934171 16884734 16899275 16955845 16918560 16922911 16908178 16991568 16949985 16936790 16911535 16924769 16937873 16940193 16919474 16959426 16916191 16965639 16853952 16902082 16898037 16905789 16854117 16977608 16913089 16961683 16918998 16940448 16886287 16934448 16921649 16957375 16890494 16903672 16921272 16920005 16976372 16948462 16880530 16948792 16916276 16906470 16862803 16960901 16930824 16982126 16912569 16889546 16931988 16908973 16916672 16865783 16896363 16902413 16935348 16923389 16895290 16884500 16919124 16861509 16876718 16906666 16916408 16856224 16905250 16888105 16925788 16903593 16925669 16942170 16897307 16920750 16851973 16932069 16927394 16885145 16970567 16928852 16917591 16944223 16882165 16902242 16912154 16857416 16929142 16922537 16824871 16883997 16825840 16911421 16882662 16874199 16915278 16893988 16912544 16901204 16848850 16913279 16878160 16930956 16902738 16915022 16888521 16914661 16946450 16916511 16831124 16886353 16889503 16911368 16863965 16855567 16957613 16895059 16889807 16911980 16868965 16874911 16861549 16855795 16872727 16898820 16830039 16860275 16883912 16857604 16881728 16921653 16884782 16868021 16870160 16888563 16913360 16888653 16861219 16885438 16893662 16876604 16895712 16876134 16901967 16928185 16880276 16882547 16899380 16873106 16947765 16866687 16878493 16884993 16857771 16852881 16860093 16818688 16873588 16833523 16882357 16847845 16876146 16849388 16839031 16825567 16776856 16892622 16864280 16899018 16895684 16849698 16859429 16884747 16882994 16890226 16822130 16844773 16892727 16853387 16885063 16854306 16884076 16864323 16858641 16872400 16864942 16810104 16857997 16858768 16859256 16844256 16826098 16871237 16813793 16804117 16864865 16847408 16849310 16840487 16898720 16788472 16843438 16842163 16867391 16853201 16859977 16872580 16857918 16849810 16847484 16805937 16873497 16836095 16859524 16826568 16859225 16827094 16814796 16851535 16829928 16822387 16851249 16853867 16878387 16785216 16824420 16883592 16824341 16813598 16830148 16850716 16841977 16844421 16822451 16838089 16841080 16812173 16850573 16823700 16830016 16838252 16827855 16818601 16893364 16851942 16862573 16840463 16817607 16846617 16829525 16855322 16804617 16869816 16778049 16829523 16823517 16835081 16803292 16808759 16834917 16879015 16804341 16838415 16773536 16844444 16793448 16791777 16852880 16808048 16794775 16829076 16806877 16809643 16819341 16859953 16883711 16814838 16845649 16857443 16793209 16745706 16788554 16773453 16902722 16813666 16805183 16827107 16839376 16795218 16806706 16781210 16812310 16837815 16791806 16797707 16860057 16867717 16786312 16792964 16844725 16823835 16808526 16847194 16803384 16799602 16801430 16758858 16821232 16776764 16794147 16761359 16763501 16811623 16841535 16800349 16804586 16790449 16834036 16805723 16796420 16834553 16790463 16820187 16847732 16760621 16823898 16774074 16787916 16767427 16796419 16812235 16788019 16803384 16779954 16839126 16815132 16773745 16775231 16791034 16807872 16751874 16789352 16765978 16823038 16809486 16765714 16826147 16780597 16807010 16754675 16802071 16788363 16774548 16773387 16822516 16783352 16804638 16772509 16754175 16734609 16798427 16764502 16811835 16761646 16785132 16794204 16748705 16767376 16759970 16791377 16817854 16805103 16764188 16786195 16784772 16782283 16778230 16765923 16743467 16763164 16777867 16785962 16754465 16733798 16798647 16762781 16802431 16752454 16785291 16745750 16751453 16784448 16805911 16793677 16753184 16758661 16785204 16792455 16779224 16757351 16824822 16749114 16761273 16761771 16842742 16769730 16731314 16786112 16778980 16796756 16760735 16744298 16814505 16757633 16848987 16733226 16798838 16754703 16779788 16766292 16726714 16739733 16705219 16774203 16759077 16719974 16789185 16726265 16743192 16695526 16729692 16747750 16726188 16776569 16734027 16743271 16759006 16740905 16729632 16776537 16710181 16761485 16724169 16745452 16754786 16785009 16703693 16737280 16745394 16743074 16732310 16760218 16749906 16780913 16779110 16739714 16750548 16745513 16764336 16736622 16726355 16715937 16729659 16745109 16732673 16751954 16753119 16774601 16696664 16744160 16711848 16758101 16763951 16760783 16735075 16736115 16725955 16732053 16700204 16731567 16699757 16726732 16749448 16712040 16743795 16730938 16711597 16682573 16719797 16743800 16735647 16658132 16715129 16749561 16706782 16730974 16767874 16764817 16702018 16715215 16730155 16697131 16731917 16716939 16693996 16728598 16752177 16715981 16710937 16764128 16705234 16762033 16687652 16683238 16747859 16708134 16729591 16764144 16746027 16700587 16691626 16700642 16696536 16705238 16729203 16748576 16732584 16702544 16685330 16757729 16686224 16727972 16724367 16675920 16726721 16666840 16688613 16701797 16674671 16685824 16687173 16713534 16726290 16649916 16734008 16710976 16721231 16688838 16694427 16674556 16705227 16693469 16754501 16705138 16656465 16681564 16712616 16699168 16730714 16670201 16709571 16700991 16634375 16692507 16666770 16668666 16671884 16646199 16686834 16679757 16681510 16681944 16706145 16718837 16687268 16698188 16656674 16723052 16666010 16676414 16688252 16725866 16693100 16688110 16681290 16710593 16684736 16677091 16713096 16687766 16676273 16683167 16700237 16690421 16683124 16742457 16687472 16694388 16661316 16726253 16732318 16633147 16667429 16649744 16670759 16680369 16661169 16642860 16656955 16643472 16686694 16697888 16644671 16652754 16689755 16705294 16653236 16644972 16672832 16654456 16670908 16670413 16668559 16712199 16650671 16720168 16651989 16676819 16659878 16697169 16642925 16650422 16689219 16673475 16665973 16682638 16683633 16642099 16654991 16658071 16657918 16688761 16705741 16643434 16664017 16669083 16683784 16634294 16667788 16623240 16655712 16686518 16634802 16668025 16673553 16698806 16642247 16676736 16651589 16617795 16647064 16648089 16689677 16611599 16664040 16639525 16663507 16665064 16691089 16649026 16686301 16692757 16677108 16675947 16654236 16668793 16659981 16644199 16620424 16701761 16645250 16613050 16662403 16660324 16679560 16625285 16648219 16649365 16641740 16652705 16657579 16623556 16644891 16671113 16659167 16666766 16631622 16639439 16601793 16657070 16669060 16646878 16613545 16605388 16621307 16648950 16673750 16588005 16605038 16637461 16621264 16625217 16668906 16691344 16643600 16651265 16643055 16694009 16634664 16646105 16686015 16619800 16644869 16666527 16633128 16621936 16654772 16632353 16653031 16628060 16634217 16637740 16663178 16663385 16667532 16600218 16649991 16626171 16588765 16622101 16630543 16653141 16615557 16638320 16653904 16655754 16638607 16614751 16655649 16635490 16644277 16586969 16608277 16638640 16591236 16628983 16638224 16599409 16591265 16608251 16666077 16643606 16615461 16602369 16619878 16615256 16595776 16652522 16614659 16622362 16617300 16614356 16612101 16620980 16639980 16603073 16573868 16587180 16611156 16599551 16613983 16609810 16628288 16586080 16611439 16594972 16669768 16583781 16617781 16620089 16612111 16617667 16645661 16611832 16633695 16614635 16636308 16580736 16621260 16569436 16621023 16645621 16633264 16566614 16608327 16614830 16618800 16649752 16619630 16544748 16604624 16625611 16588045 16572768 16571599 16605232 16637257 16619112 16601154 16612682 16606970 16583942 16607810 16628221 16619197 16595658 16593035 16609557 16591641 16533805 16617550 16604030 16611779 16581303 16591711 16608199 16559617 16498370 16594628 16562661 16591974 16600166 16598162 16615293 16561310 16525374 16588124 16566838 16572454 16559590 16587490 16551847 16594704 16592656 16556928 16572551 16626279 16558986 16580336 16578055 16595649 16594675 16615102 16539523 16593959 16591716 16539832 16548578 16586171 16597435 16614947 16551563 16534762 16555318 16603526 16543847 16579351 16625181 16570882 16652250 16566961 16547014 16633956 16572379 16602962 16582734 16607682 16577923 16546713 16575566 16599991 16549211 16535779 16596581 16536023 16597755 16538146 16574965 16561178 16557913 16523831 16599621 16565329 16569372 16547239 16519048 16592809 16546426 16548009 16596244 16510916 16595806 16567501 16553337 16558925 16560504 16536502 16542535 16596030 16581530 16572156 16538637 16550214 16532746 16552343 16551564 16541077 16553104 16580229 16514466 16540239 16544981 16511525 16525957 16537791 16590766 16518347 16506842 16525035 16556565 16491547 16524520 16512684 16537022 16577872 16563046 16546762 16544535 16548264 16563842 16560993 16565318 16536968 16558836 16545518 16578916 16496402 16553546 16543245 16544523 16540651 16508447 16598752 16579545 16566008 16527249 16474984 16480084 16520832 16524081 16520191 16569811 16547368 16568985 16535350 16514223 16528546 16537438 16519086 16543586 16526486 16541901 16498176 16550759 16507219 16526614 16500079 16519879 16524523 16511587 16529786 16499078 16523465 16489754 16556806 16524410 16557994 16526674 16492976 16507743 16507272 16508981 16523336 16545747 16504502 16510695 16544452 16475147 16582034 16528500 16552414 16535407 16473247 16487021 16539611 16443367 16507525 16489271 16504933 16510305 16546582 16531544 16500292 16472814 16535240 16528559 16512797 16468133 16552209 16448836 16532210 16526133 16510068 16509725 16533877 16491277 16488260 16471067 16464299 16527201 16518625 16514315 16548720 16537051 16497368 16494439 16523524 16483426 16475032 16471511 16498980 16469071 16503872 16492942 16484011 16470096 16478897 16476695 16479458 16411205 16482698 16478172 16446694 16477034 16483383 16459569 16483846 16495349 16462219 16504294 16519214 16529867 16474569 16483743 16500102 16460981 16438832 16511977 16459153 16504030 16501163 16471403 16415922 16497168 16490231 16473609 16471608 16467795 16469863 16434413 16461163 16430211 16495707 16489900 16422667 16491418 16478084 16482112 16493459 16482005 16475960 16534968 16454598 16481121 16511160 16483763 16408539 16497675 16484562 16485531 16454869 16496619 16499198 16482048 16453789 16481613 16445463 16490191 16518856 16474388 16499254 16426421 16450185 16515930 16491235 16467616 16455477 16503013 16506448 16432848 16498221 16473346 16475308 16521868 16467585 16463942 16404219 16537777 16475766 16510637 16478998 16432402 16471138 16459724 16479901 16436060 16461287 16471635 16437611 16475730 16434317 16505659 16482961 16457277 16439477 16419832 16464817 16440688 16427566 16444472 16428359 16429687 16415625 16404820 16404103 16444881 16435013 16433304 16415328 16427486 16446638 16427907 16450619 16465539 16466270 16417415 16447091 16445739 16470952 16382045 16480184 16445817 16440750 16373674 16470879 16412596 16468344 16471594 16442651 16449044 16455547 16445928 16445635 16445070 16455384 16431522 16453575 16429218 16399366 16436254 16460977 16395895 16476535 16486096 16426497 16383690 16437545 16413455 16419772 16431757 16416932 16401792 16392392 16411419 16453451 16394439 16418679 16400536 16407462 16440212 16399855 16408174 16373503 16411150 16423115 16433575 16428994 16413671 16399399 16386660 16470640 16414389 16448798 16390247 16433466 16408817 16398522 16417380 16433492 16400518 16422604 16413503 16395141 16380755 16369325 16398345 16404115 16377475 16410799 16392042 16421634 16389565 16400093 16420986 16410854 16374013 16391450 16394352 16419095 16411408 16443084 16356656 16413409 16403060 16379344 16414007 16417084 16406974 16406143 16407525 16448295 16407284 16422426 16420868 16394636 16374356 16419822 16388778 16368205 16393387 16396101 16391472 16359055 16385253 16422345 16384708 16409962 16365642 16383930 16410941 16341345 16409917 16357864 16360577 16380219 16373261 16426856 16374079 16399236 16473967 16408208 16398093 16362706 16387210 16409889 16395376 16360675 16368167 16444436 16389339 16414835 16418607 16389657 16387819 16380009 16407215 16358540 16320859 16379439 16385446 16386193 16444860 16378195 16346950 16407807 16354883 16335355 16408000 16393035 16414091 16371040 16431640 16398152 16366944 16352620 16402385 16382897 16388992 16414533 16350982 16333698 16363734 16324942 16384532 16324153 16349519 16365837 16319181 16398476 16382985 16422975 16312865 16347925 16366236 16375039 16349724 16316128 16404896 16358777 16333796 16329936 16339512 16364676 16364993 16331026 16318071 16342713 16387459 16379030 16349162 16392540 16386340 16358245 16375308 16348174 16333972 16385655 16335958 16387045 16364058 16363842 16350071 16368109 16350517 16293349 16374147 16349722 16383747 16351893 16362490 16366610 16337927 16322113 16324592 16367266 16375383 16364306 16397637 16353751 16374629 16338658 16302301 16364297 16363298 16340929 16365197 16337566 16287793 16327460 16318528 16363899 16363089 16356415 16355209 16340935 16359050 16299547 16412129 16342831 16351737 16346974 16352915 16357543 16349123 16351989 16299821 16293317 16347346 16319424 16379969 16356554 16327025 16320926 16357106 16335691 16344361 16392299 16310577 16302241 16321989 16347493 16372981 16332043 16327856 16345731 16309669 16335935 16333778 16323120 16368061 16293074 16321635 16312588 16302096 16351995 16304038 16335274 16320045 16330296 16345088 16308601 16254671 16281746 16309496 16343646 16291133 16335164 16336249 16292011 16324816 16317657 16257637 16309574 16323111 16300453 16340703 16335882 16276840 16344715 16312939 16284567 16333736 16328411 16344512 16309840 16314355 16319713 16279218 16276319 16294800 16372340 16268866 16270762 16306127 16310801 16294013 16297994 16335166 16344182 16310473 16339255 16342123 16317162 16295682 16304145 16272616 16352067 16259513 16279559 16266220 16293506 16294110 16360725 16306430 16303261 16269924 16314494 16312513 16290415 16307688 16303837 16262425 16360402 16332696 16305922 16332757 16341481 16236198 16287182 16304315 16285204 16267358 16291071 16304597 16330303 16277252 16239966 16336284 16282366 16287162 16308659 16268752 16264818 16313230 16312372 16279022 16272853 16278788 16263938 16255535 16301652 16273513 16245429 16262213 16289896 16302441 16283891 16262594 16213871 16299078 16274186 16262257 16249750 16288630 16265229 16233549 16275966 16291899 16246439 16289844 16314202 16286110 16293745 16241522 16282162 16303815 16238143 16308631 16304812 16287232 16297066 16321070 16313515 16279592 16307767 16266088 16232672 16244415 16276362 16266109 16268930 16288577 16231577 16317359 16258958 16245782 16277262 16244324 16319731 16251206 16275082 16250370 16271908 16255424 16243848 16227966 16226214 16214779 16320056 16287769 16260061 16289098 16284174 16296475 16245866 16226948 16253717 16271446 16239508 16286026 16257745 16233356 16243399 16274745 16260486 16233508 16249941 16307961 16249775 16303888 16265300 16282331 16282458 16261192 16234966 16264494 16254400 16232442 16229961 16256492 16236820 16196213 16250699 16247243 16264033 16276958 16242519 16250597 16272381 16262489 16250377 16306641 16238533 16287966 16262494 16253366 16237568 16219458 16251903 16263374 16256562 16240730 16237282 16261150 16216175 16237557 16180161 16208054 16302497 16230528 16228003 16261622 16260759 16199166 16282683 16283608 16202887 16262025 16222902 16219621 16176329 16246124 16227924 16242204 16239755 16237472 16255908 16210281 16206777 16250518 16166725 16184151 16199503 16233798 16209465 16217120 16227267 16237034 16232862 16177619 16203928 16189278 16244118 16200537 16199002 16197182 16276999 16191942 16269499 16227824 16196014 16220135 16237835 16205117 16253603 16117637 16263589 16235151 16210871 16233568 16194051 16253267 16225172 16231209 16211399 16205115 16202516 16214147 16222981 16236619 16197366 16208441 16215422 16237691 16200250 16194517 16184238 16196104 16202405 16226044 16226418 16236717 16247230 16161405 16256281 16211791 16285240 16202785 16182612 16162209 16199381 16179947 16175320 16164034 16190694 16172079 16197171 16182633 16173218 16210622 16181660 16190983 16199794 16163463 16205791 16199731 16190993 16206314 16227682 16155705 16257529 16154284 16186485 16170221 16191877 16200665 16219126 16183904 16122913 16205106 16182099 16177265 16181116 16238955 16179829 16163754 16174898 16240414 16154587 16163412 16192140 16192520 16146806 16208318 16191708 16176016 16159248 16177844 16138542 16188733 16163974 16146410 16196017 16190727 16213083 16224870 16223080 16156432 16184585 16160202 16185259 16139136 16161666 16209639 16174069 16156539 16216542 16148096 16164268 16223383 16162085 16143103 16143713 16181481 16165292 16155890 16150296 16154207 16164356 16210463 16199985 16209090 16178858 16185088 16136023 16142170 16178978 16159029 16173708 16152195 16137616 16172784 16154672 16193073 16142570 16144472 16168492 16182465 16157162 16166527 16227678 16226295 16171070 16167837 16200009 16130571 16169366 16148275 16145126 16160483 16110170 16212438 16111695 16163921 16182695 16232322 16131762 16167722 16191634 16163578 16147863 16135716 16154592 16165012 16148743 16138083 16132325 16142851 16177128 16140534 16156430 16135226 16154036 16199341 16195902 16155540 16157158 16157935 16177107 16148686 16098475 16147006 16135105 16151852 16184410 16163552 16107673 16174328 16125073 16129007 16161932 16146382 16124711 16171274 16149832 16119124 16145778 16159401 16137632 16173626 16144203 16125079 16163734 16108809 16187053 16097000 16130290 16176887 16143035 16129899 16126820 16150237 16132573 16121607 16114238 16091129 16062857 16085776 16116695 16122613 16087983 16176261 16158803 16086854 16123654 16125250 16144049 16121804 16101622 16146848 16170289 16135809 16127605 16150529 16160483 16159539 16147263 16150120 16101366 16100760 16107558 16128790 16101168 16166554 16133091 16124976 16114864 16125400 16122451 16134547 16148645 16087980 16160467 16113147 16119397 16084761 16129446 16120093 16104266 16112103 16105993 16102571 16111654 16127506 16093244 16103009 16104495 16136556 16078313 16098946 16116162 16068281 16168353 16143528 16174860 16094611 16184160 16138257 16116610 16100737 16047253 16097898 16121464 16074350 16118811 16118990 16117007 16095323 16107608 16089833 16118789 16068021 16127397 16082314 16069717 16050521 16061919 16066196 16098327 16104069 16098295 16134436 16085062 16116484 16086665 16118428 16084329 16153438 16075995 16136484 16089825 16111049 16158402 16065407 16160389 16081927 16104340 16062703 16088686 16093932 16126792 16100825 16104755 16065083 16049400 16084702 16122587 16093369 16073492 16066990 16101920 16065429 16080634 16138423 16112778 16092178 16134045 16084569 16026372 16093084 16097203 16061056 16067908 16082472 16053829 16093743 16077518 16021639 16094203 16073437 16096892 16077097 16126181 16108954 16049686 16060086 16132133 16043062 16081281 16071285 16071114 16038781 16090603 16086826 16114469 16094694 16041475 16047069 16036311 16137265 16022585 16113895 16041299 16038341 16081800 16093603 16077874 16051007 16072333 16029161 16072317 16016900 16047803 16042288 15986260 16015288 16034731 16003260 16032271 16057430 16041212 16078272 16040511 16057264 16057132 16089002 16092952 16064039 16054666 16025593 16094090 16050730 16025014 16063886 16056745 16060170 16059171 16023150 15995946 16019066 15997462 16021093 16031528 16048677 16090190 16042333 16053409 16050027 16035874 16080719 16068519 16046476 16016472 16054452 16030568 16019258 16033278 16040299 16073186 16025600 16032631 16040949 16055570 16006702 16015613 16007839 16043468 16068828 16041353 15997341 16031106 16039139 16044436 16017363 16005927 16038569 16067505 16027836 16064670 16018875 16020006 16036356 16027172 15982440 16031069 16007989 16045926 16011130 16003476 16049408 16041821 16009901 16035098 16050234 16042659 16040554 16018843 15981237 16040782 16042473 15972883 16013871 15996786 16005434 16012286 16049098 16032966 16045601 16015151 16023611 16069017 15984307 16005508 16046772 16036273 15995106 15990881 16037293 16003478 15999071 16060256 16045923 16016522 16026615 15967336 16007250 15977248 16007750 16040189 15949302 15989332 15982032 16022282 16044847 16044447 15997110 16021545 16002154 16027222 15963439 16003519 15982551 15993239 15979218 16009552 15971701 16008057 16011726 16023875 16004451 15989392 15986034 16022508 16015288 15991609 15996906 15964202 15995105 15961234 16034590 16002903 16033288 15992500 16035283 15952681 16007463 16008420 16042657 15976494 16019632 15948816 15984459 16005328 16011446 16001984 16032925 16028047 16036652 16009405 15990333 15998898 15992636 16000478 16031076 15985992 15997393 16004174 15949522 15966727 15997556 15974149 15990743 15985674 15983270 15996211 15968014 15976655 15991386 15991916 15968372 15939057 16000450 15975841 15933745 16001636 15977182 15988145 15955011 15967074 15940127 16006363 15954362 15981821 15992544 15952445 15971802 15993975 15957434 15962629 15956481 15933730 15981483 15929600 15968550 15917535 15992257 15944537 15997563 15937185 16016993 15967754 15965426 15954637 15981330 15967868 15982005 15963393 15942056 15994700 15933225 15988585 15989166 15966477 15965443 15962206 15932790 15995645 15916821 15998692 15935871 15986997 15994031 15964274 15984653 15919642 15924215 15913217 15952586 15987372 15941629 15997065 15999174 15961099 15949634 15953728 15927772 15924555 15962553 15970245 15961955 15919139 15930714 15954890 15987542 15945085 15926358 15977522 15943944 15901619 15944882 15955688 15975673 15952825 15986656 15963892 15974552 15944116 15936102 16011369 15931160 15940183 15953789 15917644 15942680 15937342 15921256 16002207 15920429 15981133 15968447 15937571 15960190 15992221 15923060 15966362 15927169 15938990 15915334 15933101 15960669 15898551 15866074 15949580 15930944 15870885 15907175 15954238 15947942 15893614 15922024 15911422 15948118 15915442 15932758 15927105 15927982 15922743 15941325 15992136 15892532 15947416 15911964 15941234 15904758 15887588 15907271 15913712 15929957 15930237 15885559 15936524 15960253 15916572 15910071 15888989 15940649 15923711 15925610 15992772 15889273 15939180 15932831 15871246 15935384 15900602 15931024 15907270 15940417 15899142 15933802 15928751 15870883 15942373 15885884 15910749 15918680 15943083 15950527 15909545 15925740 15935422 15917058 15905242 15918144 15927410 15891830 15924848 15872649 15871004 15933096 15879841 15905743 15874802 15940457 15909597 15923922 15895376 15923815 15843577 15811014 15934762 15904465 15870916 15933381 15913300 15939701 15903813 15888117 15907567 15892294 15858474 15906333 15868364 15870871 15883945 15871079 15882405 15894581 15897855 15865262 15904178 15870185 15889760 15888470 15915762 15878514 15937171 15927413 15984076 15873564 15886690 15903620 15898877 15886382 15861365 15868977 15935192 15898414 15930770 15866897 15910999 15901994 15885413 15854118 15911102 15876095 15871300 15900433 15882189 15917066 15927965 15906948 15903051 15836261 15884754 15871049 15866311 15875497 15847036 15923240 15885283 15864310 15861933 15920838 15897162 15871037 15923990 15869907 15846536 15894551 15880953 15856067 15899399 15899715 15890296 15910508 15904241 15854924 15857932 15860914 15823791 15850926 15929262 15856179 15859196 15859206 15867285 15873104 15858203 15883651 15882600 15859882 15833572 15825726 15891497 15853315 15894841 15865961 15866644 15855712 15880252 15910449 15870103 15925688 15862128 15895740 15866341 15859451 15863728 15853045 15854444 15880366 15846893 15878272 15920505 15867765 15855683 15866000 15866561 15860702 15873348 15853243 15852382 15847365 15883230 15845309 15841578 15839537 15855697 15878790 15813475 15825041 15835358 15887501 15871178 15835340 15876278 15796833 15853666 15840238 15815427 15861468 15855628 15823978 15842389 15845091 15843179 15868937 15857679 15816510 15853101 15820494 15832448 15846838 15843432 15857373 15777798 15819510 15826972 15874507 15844706 15837748 15834984 15811401 15801684 15852553 15820588 15851160 15833161 15860186 15834414 15828360 15830983 15837469 15879955 15811955 15825604 15804798 15834888 15831293 15857201 15851606 15798102 15805561 15804088 15805781 15835238 15829200 15840299 15878790 15763425 15838509 15857718 15824685 15840412 15805357 15824221 15860131 15829316 15817274 15848884 15829833 15778403 15810837 15808908 15818070 15818750 15802133 15804419 15757603 15837782 15833298 15858873 15868075 15782842 15824189 15807888 15816248 15793612 15834013 15814333 15798871 15812659 15814146 15802809 15750146 15832447 15853718 15826770 15799713 15805613 15841270 15831431 15853426 15807322 15819030 15789202 15827026 15826757 15850407 15836513 15836391 15815263 15816410 15822384 15790346 15838848 15807872 15845793 15837536 15829695 15797489 15792104 15775759 15782814 15797481 15807958 15808991 15814409 15835886 15788230 15784317 15805696 15788267 15803473 15791093 15792775 15773813 15799951 15772495 15831667 15804532 15823974 15800588 15777142 15819974 15726226 15822635 15821295 15817857 15805161 15749044 15798431 15744264 15760023 15811371 15801077 15794314 15767530 15756012 15795925 15795577 15800353 15743765 15843253 15799484 15786780 15757425 15797662 15759519 15796116 15764195 15753853 15752809 15796551 15797375 15750195 15802805 15776937 15807794 15801379 15804774 15774789 15780720 15777626 15768439 15742473 15754873 15729077 15778002 15787568 15776417 15747210 15788469 15775560 15745373 15761309 15769538 15754428 15778675 15755230 15799746 15762643 15765548 15775752 15781828 15769473 15737977 15731775 15764086 15789555 15756374 15774123 15783962 15754290 15761443 15796903 15745046 15737966 15759757 15757105 15757687 15735731 15739825 15734440 15752979 15769256 15717297 15761080 15769547 15767801 15785970 15787638 15792412 15741567 15740612 15775290 15727593 15753280 15772060 15765822 15753763 15795153 15768793 15745211 15765062 15742682 15731459 15766512 15734960 15730980 15784394 15735513 15793092 15721041 15749288 15731812 15761382 15715903 15761547 15712026 15723700 15710579 15755580 15744213 15742181 15697387 15723064 15723631 15757969 15692453 15728275 15802345 15729303 15712417 15775583 15712739 15753717 15737517 15727627 15701365 15757754 15748043 15745772 15794608 15742538 15708442 15703858 15716975 15746544 15744533 15768383 15734589 15733332 15735072 15721594 15726129 15741365 15732483 15743945 15728849 15747327 15713612 15713238 15720570 15767917 15756872 15684577 15722888 15780104 15736963 15708723 15711457 15738041 15703162 15738447 15712198 15687051 15691794 15728434 15719975 15697305 15776001 15722361 15711428 15751653 15724077 15684247 15707224 15736228 15722995 15731074 15693411 15670395 15720484 15716557 15691522 15713867 15741098 15678975 15697169 15743708 15780384 15720477 15713811 15706383 15679051 15668060 15742740 15698963 15711713 15709301 15700481 15694869 15718534 15698996 15690033 15715094 15682903 15660886 15666225 15624370 15724133 15676494 15745399 15742520 15716706 15746061 15705240 15664189 15688368 15697245 15672183 15689938 15661424 15683491 15669194 15705734 15691706 15738788 15644054 15673076 15674321 15676287 15693839 15678488 15690032 15693112 15649487 15702490 15686837 15688289 15733556 15696195 15694514 15726106 15659676 15670655 15689365 15656117 15692614 15652561 15691650 15658891 15717233 15689640 15704888 15659319 15676587 15676580 15670514 15665557 15641928 15656090 15676253 15766504 15721783 15676424 15710456 15689426 15659700 15658485 15702647 15678245 15654236 15692747 15674797 15719138 15657042 15646380 15690981 15692559 15717055 15643177 15668439 15654653 15669170 15667382 15682580 15723698 15629761 15721653 15647675 15668045 15702793 15684381 15714925 15696418 15674410 15627084 15632205 15641977 15673099 15653621 15712046 15670400 15667385 15692939 15682914 15688568 15678920 15636371 15671348 15648208 15658222 15621178 15611300 15667115 15660075 15642475 15629009 15670152 15670051 15698695 15636401 15691144 15674268 15687048 15703804 15684064 15666907 15690899 15611954 15666703 15663781 15659934 15688238 15640662 15643865 15636047 15668037 15628187 15671187 15628694 15638869 15663487 15636083 15620468 15607169 15642425 15676315 15645512 15613210 15648606 15676324 15648137 15630747 15612855 15643442 15613227 15659926 15624412 15685017 15656965 15642894 15646226 15605178 15684235 15606763 15621738 15668615 15623183 15615397 15635050 15662017 15613668 15642254 15693076 15631938 15671867 15602686 15611336 15626113 15610942 15639181 15620568 15640268 15638342 15622924 15645544 15670558 15615153 15563533 15616546 15625935 15608425 15620213 15602223 15630395 15663761 15654309 15631611 15636262 15674863 15619167 15646292 15618917 15645414 15613207 15603629 15631803 15631565 15612318 15621806 15594732 15644176 15609847 15618464 15627041 15651201 15610998 15577863 15641149 15608794 15571358 15597737 15556867 15612334 15692549 15614847 15620074 15601671 15613428 15591805 15600620 15611987 15635685 15613608 15575225 15617637 15622157 15642214 15570933 15608194 15573954 15633633 15551945 15586780 15630078 15604964 15627832 15587816 15598934 15586424 15600249 15633078 15647881 15585410 15605127 15667620 15577560 15592923 15592184 15598200 15571785 15549699 15628526 15589527 15588697 15614926 15632997 15585445 15619873 15628343 15592010 15551196 15585915 15600905 15634873 15595269 15541054 15621237 15639466 15575997 15562801 15616941 15555939 15568001 15568470 15626069 15583315 15622847 15583680 15616882 15563884 15568970 15572027 15594956 15605871 15579812 15633385 15563581 15564199 15543507 15527436 15638594 15597222 15566803 15601564 15590589 15561574 15540267 15612340 15602022 15616079 15583199 15574461 15514461 15551258 15601770 15599553 15599937 15589418 15545251 15609551 15596122 15587961 15572286 15602830 15577679 15561649 15582121 15541277 15564444 15611879 15558434 15540094 15578360 15525090 15581913 15518878 15571512 15558775 15596407 15551276 15533612 15600012 15578152 15550965 15593955 15590598 15532496 15570339 15566319 15550517 15578909 15601527 15586783 15509003 15582145 15571692 15554442 15572611 15534352 15562919 15578032 15570249 15570567 15560389 15556906 15558058 15567543 15568506 15552524 15512471 15552125 15542027 15525891 15548683 15594099 15521441 15556042 15529380 15550589 15558801 15538069 15538941 15548426 15557913 15582823 15514018 15558161 15562181 15570303 15574562 15546669 15564735 15577943 15528152 15536222 15590454 15557749 15489552 15537503 15503314 15608170 15593079 15555304 15569892 15544031 15547881 15514425 15556821 15541868 15571012 15538978 15528882 15538071 15565924 15494170 15462464 15513528 15511089 15530495 15510029 15534846 15486137 15551349 15492582 15480097 15511639 15522240 15517258 15476570 15466883 15486745 15496261 15489390 15516452 15493066 15545847 15532389 15524956 15571251 15490568 15519307 15545762 15522374 15506953 15525651 15542058 15513686 15546625 15485710 15507601 15546735 15506816 15477653 15559553 15518452 15505116 15478636 15536544 15541087 15542358 15477337 15499152 15515296 15525041 15537442 15536838 15565592 15508198 15535736 15452466 15515289 15472606 15519916 15546484 15526371 15491075 15500773 15535525 15474587 15535063 15490865 15532926 15530824 15488245 15513751 15493509 15515139 15511048 15476200 15506133 15506460 15534054 15508982 15495577 15488363 15478173 15495987 15530599 15477701 15518842 15528356 15507523 15482142 15503061 15486816 15528602 15480549 15516146 15542818 15500005 15494201 15478355 15522907 15495577 15515477 15467438 15490664 15453123 15449198 15458429 15470393 15472281 15470165 15453536 15469538 15491492 15506643 15507199 15484636 15454504 15484048 15447729 15501613 15487593 15505515 15469374 15514195 15456156 15456857 15486284 15452965 15517319 15449291 15501231 15488879 15471952 15519543 15472875 15483887 15486485 15468912 15462030 15488262 15479345 15460105 15552643 15513212 15505608 15464913 15474885 15457713 15474647 15479970 15502036 15471858 15458558 15497703 15501294 15468760 15492979 15498383 15447713 15493213 15476148 15482577 15458060 15478584 15438684 15486693 15424718 15469455 15435856 15509958 15442755 15478317 15442544 15436030 15476768 15416899 15480221 15497028 15512501 15535085 15468084 15502065 15465121 15490303 15494767 15471549 15451458 15437316 15477688 15441762 15445209 15435196 15429014 15442487 15431022 15443464 15461569 15454411 15475410 15453402 15477893 15437955 15446092 15467980 15453310 15475928 15433168 15474885 15465255 15422339 15494260 15392336 15448523 15432992 15423477 15426029 15430395 15399012 15486570 15445936 15451189 15445379 15428292 15449315 15438070 15403603 15453130 15471290 15454822 15446028 15431422 15443692 15426612 15428943 15358028 15419499 15448373 15483612 15470760 15423162 15434596 15391091 15436139 15457742 15406341 15436527 15430812 15422950 15420449 15430472 15463341 15411125 15445463 15447369 15461084 15424638 15402843 15461267 15425633 15384757 15478164 15428783 15370887 15464079 15436203 15420701 15439297 15474612 15436788 15412621 15397793 15415802 15412198 15456675 15464109 15404509 15471905 15422982 15413831 15447227 15353421 15421157 15396394 15444771 15404978 15401007 15416450 15427714 15418644 15445624 15456584 15394943 15412387 15356241 15485611 15436730 15435430 15462731 15421921 15402785 15398140 15422013 15443426 15410307 15399946 15415771 15400187 15398092 15413477 15345998 15418725 15449382 15417639 15426920 15355099 15427139 15365802 15435498 15372044 15407960 15368859 15354042 15435364 15392321 15367267 15404074 15405782 15388657 15386098 15404413 15378543 15378696 15392942 15396702 15408670 15424107 15425488 15381408 15364675 15378669 15371887 15348122 15385899 15365103 15403490 15374172 15428533 15372152 15375312 15392109 15332852 15382702 15352205 15435291 15342204 15395576 15432846 15394100 15446882 15370599 15405405 15374517 15400864 15426122 15335983 15411712 15393081 15424150 15367927 15380005 15386754 15413052 15399451 15419284 15411010 15358623 15392888 15386581 15364141 15358025 15395456 15400176 15398278 15385839 15345516 15400743 15370895 15374919 15370048 15391311 15345317 15363676 15393201 15375782 15386310 15313811 15409404 15331340 15408732 15398912 15361985 15376294 15374466 15338779 15365931 15367660 15375240 15332447 15357831 15327521 15327846 15361135 15360936 15358818 15308688 15375005 15358491 15311879 15379594 15297606 15405971 15383471 15381142 15349462 15348300 15326851 15315554 15386173 15361728 15332014 15366632 15338157 15365036 15348184 15372838 15294868 15407119 15355974 15324054 15358358 15365437 15326254 15320582 15382607 15336760 15332981 15369489 15359660 15371602 15320174 15325567 15305913 15308915 15327984 15316628 15300106 15331869 15338994 15305946 15315358 15324281 15337093 15358911 15336151 15339718 15320025 15296700 15366256 15349543 15322285 15306181 15376126 15352377 15326765 15340614 15307605 15341458 15328541 15350125 15345441 15301003 15290556 15321105 15338987 15360484 15336277 15354257 15361050 15333919 15327390 15342837 15316568 15328359 15367884 15343122 15306876 15301141 15329970 15335924 15309055 15288037 15339258 15311002 15334052 15345207 15300082 15306120 15336547 15290384 15319238 15309302 15292461 15317792 15352139 15297578 15334546 15354931 15287495 15320561 15298843 15299204 15249374 15350331 15299175 15316595 15326864 15355478 15314303 15364397 15304264 15315671 15286179 15290173 15268294 15299108 15314977 15341498 15323041 15312340 15275117 15284919 15236917 15297129 15337035 15292775 15318369 15274610 15339146 15285973 15355410 15256792 15324393 15284057 15273160 15252130 15286154 15325304 15279820 15265668 15276687 15314583 15331149 15254992 15300193 15266659 15307028 15280980 15295511 15311873 15333000 15258426 15299288 15302306 15236169 15300110 15308918 15271718 15285766 15303042 15299696 15245212 15295586 15303798 15276676 15220409 15289642 15259927 15305907 15297282 15271350 15233041 15295666 15244776 15285764 15272179 15288417 15280872 15282790 15271947 15266747 15245941 15296559 15294916 15248134 15249077 15244933 15323572 15263006 15254235 15256251 15284042 15299792 15291262 15310479 15269714 15302702 15256443 15284608 15277296 15279012 15238865 15290485 15264813 15263670 15279617 15254515 15279888 15276639 15273025 15241447 15255193 15279028 15187767 15273004 15223335 15295569 15303078 15216900 15263667 15260846 15264977 15280707 15258116 15240668 15258250 15253412 15227042 15199424 15246548 15276369 15199985 15256577 15243454 15261341 15256555 15259381 15252809 15286698 15263457 15215777 15265339 15271965 15224535 15239584 15288509 15238152 15240550 15265158 15251242 15257233 15254167 15246359 15236444 15244014 15275461 15284919 15232014 15277250 15241379 15161059 15251473 15228083 15222561 15234156 15265387 15284336 15208890 15243348 15254713 15255758 15217532 15241688 15244371 15267549 15240596 15305836 15219152 15172622 15248196 15223729 15279641 15243014 15252980 15230806 15276235 15221579 15230557 15215833 15208566 15248079 15249073 15221910 15194129 15257186 15265267 15216632 15217174 15209221 15289176 15223253 15236661 15225895 15259918 15227643 15252133 15226425 15230903 15264100 15243613 15257158 15289962 15210347 15205563 15264538 15200451 15232428 15223506 15226643 15195496 15255922 15246529 15181196 15270587 15235965 15234043 15225828 15186556 15229520 15193847 15227241 15177926 15201239 15234707 15216802 15203753 15204459 15217012 15213279 15203320 15205638 15230870 15208549 15232388 15185078 15223973 15201600 15247920 15202146 15245941 15174742 15201068 15207789 15216683 15237476 15192342 15263473 15208813 15240345 15194860 15214969 15174871 15208591 15201320 15259723 15192086 15212688 15212739 15197087 15169586 15224927 15208734 15242270 15198172 15191725 15163144 15204271 15215727 15215115 15210731 15218790 15159799 15181027 15185004 15182898 15185815 15196696 15170929 15153945 15197675 15184989 15193763 15166839 15172429 15163029 15238507 15158569 15194647 15187810 15203624 15182313 15157060 15177653 15195426 15213023 15193884 15187033 15211346 15225907 15180671 15179589 15197731 15194897 15184067 15215175 15132160 15154543 15194179 15164947 15195402 15181287 15169791 15197771 15215304 15169649 15139240 15191536 15164724 15175610 15198067 15209224 15167340 15177295 15166722 15181616 15156851 15152816 15129406 15119749 15223490 15204866 15212454 15156807 15216151 15126964 15136330 15199454 15170344 15195488 15159340 15176854 15172246 15208321 15128706 15133552 15192240 15183595 15172652 15177109 15190968 15150926 15159148 15146948 15203950 15177630 15155081 15185814 15129052 15150526 15168411 15159938 15154048 15140461 15153594 15174406 15151851 15147950 15170763 15165228 15173414 15169106 15133320 15139593 15175539 15162218 15164478 15196863 15111099 15120752 15152961 15158704 15155020 15152873 15105760 15127916 15184082 15160505 15125935 15152711 15166008 15167670 15092591 15158402 15180298 15143833 15167186 15066034 15145992 15120407 15118021 15131321 15085985 15125433 15147585 15133144 15101429 15126166 15150670 15143685 15129492 15140483 15158009 15159095 15154674 15138658 15158033 15170864 15164561 15115898 15136885 15140742 15130756 15142433 15153183 15163964 15147663 15114963 15155772 15156653 15106185 15146117 15122742 15099292 15118850 15140526 15141093 15129727 15156230 15150638 15137593 15122781 15092147 15130252 15144794 15184736 15096364 15094155 15154770 15087199 15129471 15118263 15167676 15157237 15148452 15091530 15156198 15138144 15154240 15123167 15077097 15133753 15156352 15154378 15113971 15098130 15158294 15156148 15104383 15128527 15072297 15135137 15106477 15111816 15115018 15077684 15083507 15111973 15176937 15139953 15133740 15142198 15107627 15144334 15102137 15079901 15103668 15088524 15063637 15138781 15117106 15081688 15109424 15063162 15130059 15105154 15117140 15094863 15075378 15098215 15064729 15092277 15074083 15059431 15024784 15082377 15073430 15059070 15145092 15066816 15076696 15104504 15063502 15121247 15088058 15090043 15110603 15079127 15120595 15099225 15087291 15105664 15077987 15063748 15109953 15116685 15109906 15105850 15110752 15104682 15048194 15043543 15029836 15078781 15105852 15120302 15089512 15107980 15111248 15098125 15078492 15063878 15049273 15127119 15092356 15088356 15100115 15098969 15101196 15059267 15085645 15130044 15043949 15105399 15023239 15067004 15113352 15070329 15079096 15060630 15073165 15025880 15064738 15067602 15093420 15027468 15046198 15088915 15080941 15019481 15082179 15075309 15128309 15125149 15072733 15046165 15103973 15041412 15106570 15084650 15028791 15039679 15068987 15085638 15043514 15052935 15084557 15043473 15080583 15113270 15048296 15043383 15058548 15007766 15096164 15082727 15063131 15081054 15069943 15079053 15065156 15032324 15065746 15051965 15079704 15008986 15048635 15090177 15035136 14979751 15035003 15076731 15043089 15043035 15078258 15055946 15062386 15049048 15107035 14991393 15050195 15013306 15050868 15034675 15016230 15026648 15041323 15054513 15080549 15012783 15041546 15015717 15057706 15051774 15099401 15014686 15053909 15023054 15026773 15009443 14996802 15035671 15035280 15025137 15074260 15005169 15015676 15019122 15014119 15012911 15011393 15057993 15057513 15034378 15031090 15029509 15012243 15056528 15063175 15023457 15043484 15041666 15036540 15003658 15061564 15027358 15019688 15028946 15022255 15039900 15056060 15024194 15053301 15047770 15021752 15014015 15018152 15098245 15096622 15040998 15091715 15066956 15041569 14996456 15008696 15035309 15020450 15031448 14999569 14991092 15005908 15048469 15017207 14992242 15031231 15022731 15013364 15023698 15005766 14989018 15030361 15018677 14991873 15040486 14961220 15031583 15017245 15012851 15003235 15005477 15052617 15001555 15049296 15002974 15028124 14986556 15012364 14997439 15025721 15028320 14999945 15013133 15041652 14967171 15008351 15015618 14981227 15062920 14988596 14950432 15015716 14996143 15013618 14975492 14962678 14977136 14961318 15005488 14964226 14989302 15007573 14981227 15024147 14995800 14954745 15024989 14978618 14963492 14997032 15028430 15008765 14975219 15012363 14936636 15005947 15028594 14979612 15000279 14996791 15000838 15003636 14979030 14962895 15023759 15035656 14978452 14997366 14982627 14974955 15017818 14975649 14981128 14983765 15000045 14946802 15010168 14997021 14957005 14994710 15018458 14929635 14987506 14982057 14914288 14975083 14991146 14974582 15014576 14965324 15019979 14983853 14990213 15016873 14975164 14986477 14978213 14996638 14954761 14960127 15022092 14978424 15018077 14991506 14979050 15023861 14986100 14963872 14967288 14942370 14998940 14969215 15001207 14977286 14960825 14987064 15010964 14900893 14969582 14981673 15000314 14968590 14944313 14989582 14940770 14981134 14956168 14994556 15009315 15006035 15008523 14995005 14965437 14950209 14941150 14923107 14971712 14936586 14977149 14975579 14966916 14991058 14923235 14927315 14978524 14984808 14916548 14941092 14929481 14888662 14949986 14970961 14948813 14947518 14986875 14956821 14934010 14951660 14943106 14959915 14945443 14934259 14973102 14925996 14963324 14934771 14964980 14959999 14965420 14922970 14901280 14955466 14939703 14921720 14954061 14961191 14888968 14953009 14920232 14949665 14933538 14930729 14906176 14975625 14918162 14946051 14885919 14975136 14940815 14969244 14902375 14914209 14906154 14907512 14901808 14962679 14922137 14940738 14943298 14939413 14947115 14948346 14901832 14946239 14956219 14925320 14966393 14927639 14921615 14936904 14933142 14927895 14898433 14930191 14950657 14914211 14940810 14989852 14946116 14961364 14878197 14954394 14912930 14915612 14975765 14905944 14941834 14922081 14946716 14888786 14887191 14962967 14926102 14866274 14912245 14935372 14941750 14907605 14895711 14932268 14922490 14921250 14907233 14927709 14909422 14923523 14928016 14927394 14951001 14914562 14902548 14864243 14915572 14923270 14915450 14949529 14900544 14909899 14925298 14911542 14900505 14926939 14878140 14883832 14909903 14872092 14911429 14867015 14887135 14849733 14873826 14904662 14925207 14908402 14921139 14930606 14876288 14904934 14878354 14879998 14868681 14882705 14901342 14928404 14854458 14858552 14955655 14852863 14867802 14920458 14864975 14876037 14901010 14914298 14911449 14914910 14915031 14900484 14906538 14906446 14881860 14866659 14909562 14915597 14886735 14913753 14846017 14870322 14868735 14853737 14839419 14912672 14907544 14925266 14862234 14915952 14906049 14841596 14863095 14898099 14904549 14882636 14916257 14893122 14905659 14892583 14876946 14899705 14915070 14889099 14966050 14855818 14876567 14889502 14920536 14890316 14893347 14859894 14851869 14893527 14861673 14838725 14934842 14898026 14866407 14893603 14866022 14880908 14790914 14854931 14896333 14860762 14863693 14915586 14891015 14910689 14917845 14867574 14866632 14858325 14848059 14898056 14886419 14855610 14896143 14885858 14899258 14867623 14872693 14862050 14831061 14889088 14876477 14837339 14844402 14867623 14887810 14843086 14873477 14888008 14871082 14827381 14845758 14860348 14889492 14850777 14849794 14840984 14888545 14889329 14864103 14860198 14858105 14863430 14859582 14868466 14879348 14843826 14863527 14848250 14856972 14863891 14863325 14855104 14813649 14903904 14784237 14879011 14802811 14847157 14881216 14843715 14865529 14832564 14786204 14839778 14850651 14855048 14858440 14873813 14827262 14907085 14837646 14825542 14847708 14862626 14845548 14879706 14817939 14873192 14847160 14855389 14842480 14850051 14885822 14852748 14839864 14827450 14898833 14843610 14832834 14836304 14889324 14877268 14843184 14803786 14865421 14861220 14866134 14829887 14811165 14783832 14832621 14895441 14845633 14791542 14822860 14877068 14865666 14851473 14845052 14890178 14862007 14825321 14820480 14861744 14845783 14837150 14825875 14823084 14816292 14775075 14851557 14842861 14810052 14843746 14836406 14847815 14837256 14774261 14809640 14838337 14798301 14827357 14763252 14802518 14793047 14826052 14877122 14822224 14780331 14861145 14805730 14834468 14821656 14807663 14796426 14805160 14828121 14815456 14792548 14835174 14776587 14838578 14845403 14826506 14802171 14843866 14832452 14815450 14820007 14795713 14794130 14832575 14839046 14778464 14828210 14801900 14802914 14787549 14768566 14788381 14794448 14747127 14809099 14787166 14792211 14795363 14819324 14818433 14837550 14794311 14852287 14774692 14752949 14843944 14813250 14813546 14807199 14806569 14813023 14798656 14843162 14806858 14822740 14765924 14785201 14804370 14804207 14770105 14789199 14813114 14822203 14774669 14790826 14792509 14792829 14843959 14800242 14759487 14787059 14802884 14833978 14823015 14759029 14749691 14795722 14804708 14788200 14785633 14757886 14796116 14796265 14757044 14785591 14794387 14805245 14746505 14779033 14754685 14842763 14802787 14783609 14761404 14791487 14818079 14803431 14787889 14785049 14755737 14798798 14748754 14836985 14752996 14801935 14795225 14778594 14775670 14786656 14745997 14831363 14774524 14756953 14786245 14745343 14775318 14820015 14810190 14715825 14697205 14763738 14806147 14779670 14785605 14784732 14769028 14829049 14736247 14753970 14755247 14806491 14812090 14782111 14825227 14768167 14807244 14722429 14789143 14743686 14736297 14783076 14741926 14759724 14783246 14760533 14748108 14730082 14777196 14734314 14753225 14738566 14757533 14788031 14798976 14799752 14778442 14748656 14734068 14761287 14767299 14732048 14752375 14743144 14763865 14777363 14715071 14708715 14789411 14806769 14769160 14728407 14762495 14761968 14790383 14739333 14743160 14723653 14749653 14732482 14691040 14689984 14751339 14743042 14777697 14756205 14750262 14759822 14711467 14733932 14724470 14725312 14716012 14756455 14744595 14762452 14771140 14765630 14769553 14735551 14723634 14742622 14739516 14774888 14758390 14730665 14792779 14738022 14733357 14749910 14737755 14711581 14728885 14726510 14781484 14778222 14734888 14751153 14785262 14754461 14727686 14717222 14751926 14759027 14735751 14747398 14738129 14712165 14730867 14743352 14765581 14751133 14719414 14709517 14722176 14717880 14748007 14712066 14730939 14664356 14782735 14740985 14751082 14725820 14729378 14720995 14787957 14729063 14767258 14751803 14722857 14720114 14741765 14739546 14700363 14712025 14738085 14722307 14691974 14720862 14731237 14708904 14701694 14747215 14711805 14718477 14740579 14719872 14677729 14746599 14750212 14715032 14746291 14749547 14717283 14691535 14729914 14723087 14718918 14719965 14767962 14709632 14748247 14727500 14739528 14704898 14675975 14708489 14747291 14716726 14655754 14674260 14731930 14712528 14703193 14737472 14760915 14654429 14728368 14696991 14698960 14707071 14727256 14715570 14686684 14697247 14727139 14715474 14702800 14670547 14719741 14744582 14760357 14710567 14699310 14709399 14673540 14673631 14705797 14705776 14705140 14686570 14705084 14711888 14682671 14741826 14694219 14689504 14666047 14698283 14695784 14665234 14705550 14656315 14702640 14663766 14673676 14734448 14684034 14695139 14714913 14672164 14686102 14663418 14700754 14700043 14717640 14687555 14719432 14633377 14671679 14687514 14672712 14707920 14704621 14678293 14698421 14675909 14685442 14684480 14649841 14705442 14664811 14680305 14709992 14654196 14658570 14684139 14655743 14662690 14680436 14660934 14682980 14690980 14699046 14659311 14674940 14659350 14674313 14671421 14683488 14655241 14642615 14673630 14686945 14731484 14654839 14679931 14675295 14674230 14641248 14647528 14711051 14683011 14650073 14657615 14631888 14661501 14700478 14638171 14691502 14702274 14650702 14652761 14648394 14652291 14633064 14626096 14650695 14656503 14656700 14661818 14700407 14638630 14680995 14663819 14612270 14651397 14632528 14619608 14631356 14654341 14630181 14627564 14626952 14667070 14612925 14661877 14654006 14639613 14653754 14669829 14659980 14662622 14676966 14626713 14721262 14620519 14637415 14685882 14674099 14650239 14642897 14596247 14683526 14635512 14692205 14690607 14628901 14690653 14636049 14654836 14646053 14660197 14614618 14671344 14624751 14644771 14606438 14630633 14648730 14640378 14651639 14624452 14651590 14609219 14641419 14609772 14631634 14614500 14653302 14618575 14592849 14640391 14605340 14609676 14627580 14593324 14671065 14621567 14620326 14597616 14642223 14592311 14627619 14622178 14621772 14620975 14616477 14642901 14618635 14619324 14582656 14600973 14654216 14611799 14609247 14626746 14647996 14626974 14631678 14647103 14621158 14632431 14617452 14625163 14614453 14597666 14618709 14620671 14633739 14641056 14637593 14680973 14609944 14628661 14638987 14607271 14570121 14605891 14589228 14596231 14639022 14621343 14622765 14613174 14618230 14623761 14639199 14609070 14618372 14629817 14632302 14614278 14587183 14602688 14615107 14608777 14630470 14608705 14562279 14618336 14599832 14623801 14574522 14604410 14632830 14632953 14601145 14556764 14549664 14587018 14574900 14624098 14559469 14606408 14617233 14593865 14597430 14609095 14579023 14553937 14615089 14579385 14593582 14597874 14587953 14606441 14577204 14619121 14556195 14581710 14584325 14643685 14628946 14600974 14582553 14602968 14545690 14566924 14585806 14615637 14599098 14576586 14571504 14573515 14603403 14559088 14601388 14563722 14610542 14612004 14604777 14590263 14573190 14561247 14590563 14604006 14600024 14579919 14592480 14509172 14576663 14566521 14605679 14557200 14565029 14556927 14610951 14540565 14551863 14577632 14583482 14617813 14527967 14621005 14596317 14573815 14585746 14569828 14611332 14551694 14564592 14559989 14598506 14522167 14573247 14553457 14581450 14562934 14555283 14585095 14587607 14573794 14547280 14568147 14560945 14544610 14540187 14553340 14562414 14570891 14537620 14553265 14547181 14546363 14522054 14578930 14562802 14564787 14547922 14555462 14582251 14562023 14545065 14578234 14502838 14560650 14568946 14543108 14566662 14583514 14569174 14587698 14544830 14555817 14547045 14563493 14505010 14566652 14556574 14577253 14511898 14535618 14548724 14590929 14534612 14508752 14528224 14492784 14550473 14534672 14529640 14540298 14527837 14533064 14526982 14547384 14535920 14507724 14557155 14521323 14523066 14514832 14542443 14515999 14563683 14482799 14542630 14566347 14536893 14525834 14521334 14531928 14525393 14504725 14521619 14498092 14529282 14557582 14512175 14516252 14547644 14555964 14520912 14487600 14538077 14523237 14488266 14532319 14544706 14563650 14564352 14566827 14525676 14507477 14499577 14490535 14521211 14493322 14504283 14521057 14538164 14534577 14509552 14519727 14468767 14518665 14550215 14513559 14446944 14530221 14507103 14482147 14518906 14535530 14463751 14546456 14562346 14502624 14528999 14535399 14550324 14541418 14486905 14501885 14516700 14527039 14591814 14477349 14505521 14540731 14525954 14498819 14500970 14510202 14502921 14528259 14484799 14531000 14496052 14547958 14485138 14537309 14542410 14535708 14477826 14486361 14486879 14514078 14496964 14521044 14494063 14536357 14510779 14463314 14506122 14501643 14562066 14520103 14557537 14561218 14479254 14497689 14469698 14502196 14498350 14492049 14477168 14484376 14562206 14470941 14479844 14487550 14506198 14500601 14433853 14518806 14486105 14474493 14487844 14519246 14551111 14481645 14488594 14472553 14493501 14526218 14478234 14462441 14497571 14522869 14483302 14465802 14475407 14465244 14482831 14494281 14514112 14479596 14452043 14500145 14502425 14484832 14426939 14460515 14460733 14449125 14502875 14501059 14411889 14499490 14479406 14439043 14473634 14464904 14499230 14464527 14470294 14458788 14493666 14491175 14479341 14419999 14422619 14449985 14458876 14462091 14465567 14451949 14483068 14490123 14499039 14481936 14487690 14445109 14453475 14425159 14470054 14488567 14456154 14460188 14454320 14515272 14418637 14520974 14439566 14486891 14462264 14419196 14485008 14450811 14472244 14490415 14446996 14500648 14449824 14450089 14491074 14445218 14441189 14426303 14471438 14437752 14473664 14470722 14424781 14459239 14451979 14449701 14456586 14427885 14467290 14478433 14477224 14416408 14446481 14439810 14446937 14450355 14444655 14439000 14425076 14404929 14492766 14437647 14416403 14431535 14434213 14458256 14407638 14420946 14450927 14393528 14461838 14469282 14412674 14462834 14444716 14425640 14415762 14458595 14447748 14426336 14443426 14431591 14448394 14447680 14466306 14392935 14473178 14415182 14404071 14431803 14461628 14403719 14404545 14438618 14397929 14445479 14454973 14430300 14441555 14445399 14435140 14461102 14414744 14474598 14406390 14435522 14403661 14447273 14457675 14411621 14391414 14416199 14435452 14369800 14398707 14448903 14403336 14378341 14453165 14471436 14389873 14408834 14403651 14438604 14387077 14390732 14418225 14427251 14457724 14400421 14428628 14429820 14378699 14383826 14430731 14368894 14425806 14405369 14430004 14413941 14437644 14395247 14432379 14404467 14365921 14450961 14407242 14390077 14408678 14396482 14437636 14390368 14423132 14410249 14420457 14452397 14411913 14391950 14401736 14409847 14368061 14358922 14391789 14469836 14374787 14420506 14356359 14414457 14400682 14443637 14401621 14423799 14399239 14395971 14397539 14390164 14399616 14425885 14389451 14409511 14401227 14400157 14377298 14345478 14343539 14372122 14416687 14367655 14390642 14396620 14402755 14415208 14327634 14351036 14390643 14383636 14386923 14409794 14409612 14402141 14428572 14376239 14390811 14406435 14369032 14368370 14368332 14396405 14385306 14401064 14402404 14392247 14398247 14403052 14336761 14364589 14364795 14392408 14371945 14412568 14404163 14395400 14348431 14396972 14393682 14390386 14362459 14396061 14383597 14328858 14402091 14349361 14389697 14452784 14406151 14368735 14330004 14397803 14384630 14377521 14380612 14344229 14309271 14371410 14348680 14378056 14346577 14326120 14424576 14353669 14347005 14351862 14358035 14368765 14381597 14360739 14354271 14403245 14355134 14374196 14343478 14396838 14368146 14361209 14372946 14372889 14370467 14416756 14413473 14351005 14326026 14382269 14375279 14383054 14402539 14349683 14367899 14360069 14347024 14403767 14360859 14416739 14348289 14404601 14391528 14354624 14368084 14349360 14337147 14342705 14316831 14376713 14361879 14334519 14353898 14363462 14327258 14316363 14376958 14347370 14352342 14375032 14392338 14318812 14326750 14342601 14341518 14327679 14345030 14325699 14360572 14351877 14355236 14339250 14345435 14367681 14328299 14349272 14384473 14381285 14308688 14328790 14339474 14349903 14339087 14324486 14353713 14336392 14332210 14338334 14354225 14346821 14355844 14325062 14333492 14343506 14326060 14310616 14313556 14333020 14360123 14340301 14348345 14318472 14331101 14338628 14329197 14332302 14343353 14368815 14350642 14348389 14314655 14337946 14319744 14337032 14298710 14300860 14343729 14351930 14321344 14298293 14326924 14325078 14337348 14372248 14357031 14320507 14289609 14334662 14358922 14325778 14314891 14300399 14332019 14307648 14286597 14317613 14337322 14297619 14346601 14365573 14278696 14326592 14301048 14319926 14293643 14333006 14275141 14325202 14317585 14304623 14330366 14291348 14315515 14323951 14304382 14321986 14286045 14325286 14302637 14355352 14289902 14287871 14339537 14318269 14337146 14311140 14310363 14317526 14297327 14328952 14304479 14239756 14298204 14286436 14278747 14328685 14305948 14279036 14281284 14257200 14306578 14287429 14296102 14300214 14287789 14309617 14312634 14319288 14289953 14266972 14288116 14268632 14289700 14278064 14325479 14293563 14267745 14214586 14291423 14279610 14301235 14294599 14287777 14326404 14279536 14268825 14240971 14299530 14271221 14279464 14268394 14298430 14269294 14293410 14293623 14318729 14238300 14292274 14251156 14264345 14283632 14319313 14260661 14290168 14290643 14308660 14251583 14260263 14253651 14305770 14337942 14260895 14307176 14227061 14288154 14304543 14275443 14257553 14247288 14264498 14259368 14247890 14259292 14285356 14285435 14289194 14278453 14270059 14240779 14292728 14263380 14317154 14243494 14253412 14260878 14236545 14264458 14231557 14289158 14238666 14294264 14296001 14265723 14232867 14215352 14308005 14239554 14268167 14259059 14228363 14240570 14268349 14281710 14321611 14271702 14264112 14277264 14261782 14256925 14245542 14248676 14274080 14251260 14261822 14245658 14273884 14226457 14253558 14256578 14241094 14268285 14250075 14292136 14252695 14223928 14221293 14279094 14201819 14269386 14269832 14255596 14230750 14233486 14263606 14280431 14259463 14241568 14259749 14278968 14243952 14215208 14223699 14224333 14241774 14262113 14209195 14213143 14226692 14208464 14212809 14187577 14249186 14231679 14237545 14230834 14213566 14199298 14254690 14237053 14232121 14253196 14228747 14261946 14233563 14244080 14195213 14277951 14245938 14186116 14228318 14247531 14213763 14220125 14208307 14230783 14215163 14229123 14206203 14233210 14257096 14219392 14198573 14218355 14260048 14186280 14200072 14280776 14226051 14189907 14190834 14249500 14207328 14208467 14234570 14222141 14184930 14188873 14180602 14198835 14202037 14219375 14251057 14191033 14225796 14195509 14252601 14188236 14254193 14193861 14231574 14218983 14215374 14190456 14214955 14229714 14195141 14205009 14169409 14200269 14185884 14201541 14193829 14148286 14161305 14180362 14249784 14204384 14197389 14220653 14200238 14202504 14259195 14202986 14178994 14177723 14181067 14179471 14220523 14189686 14194334 14178591 14203623 14201186 14217797 14201312 14181539 14188006 14204394 14213641 14185515 14193915 14230156 14209922 14167618 14213428 14220267 14167949 14211446 14208591 14175922 14227701 14217885 14176149 14158854 14175607 14164508 14203845 14195520 14157621 14200445 14177324 14246187 14215829 14167418 14170502 14199353 14182109 14160658 14186556 14168949 14169476 14149043 14170743 14212120 14143478 14149323 14146608 14184492 14167593 14167823 14242328 14187678 14139840 14189308 14198142 14173848 14143029 14199286 14188742 14139016 14181102 14173887 14205082 14171849 14173771 14184769 14179568 14129167 14150825 14147896 14145536 14119525 14160207 14164549 14166802 14189309 14187804 14158078 14220691 14178821 14190276 14126790 14143192 14196604 14124672 14146232 14178274 14145602 14184463 14170085 14177245 14183216 14168392 14182194 14157034 14194701 14149681 14161051 14152074 14165056 14191577 14167436 14162724 14147401 14158418 14169203 14173493 14150052 14144972 14148243 14132694 14190373 14149098 14159373 14159946 14144726 14130545 14151843 14134076 14137350 14172074 14135237 14180383 14144893 14151996 14142978 14119631 14142368 14206109 14142639 14180499 14184193 14090518 14128215 14171206 14115605 14112418 14084102 14150087 14097518 14137232 14135707 14135280 14166335 14160683 14126387 14131474 14162527 14143126 14138567 14145081 14134661 14148877 14171467 14123922 14152455 14158111 14103736 14127364 14107914 14163495 14116978 14129397 14147583 14163927 14133546 14155244 14111707 14132582 14165138 14121157 14133699 14117962 14191464 14214376 14111210 14114305 14125898 14165708 14150758 14137122 14124317 14109147 14119394 14098289 14093244 14092342 14127112 14111223 14135798 14166513 14144912 14113240 14119458 14138928 14114809 14045705 14117072 14106674 14121348 14107056 14139053 14126692 14129676 14078932 14112813 14122350 14126650 14101399 14157380 14079493 14116572 14107574 14076629 14117898 14113601 14126264 14101792 14106894 14100005 14071285 14125731 14114195 14121183 14132424 14105178 14122233 14117922 14108292 14063609 14106475 14117917 14109325 14119171 14097556 14064711 14111392 14172350 14112455 14106548 14077033 14120972 14118603 14083724 14160230 14118954 14078593 14094513 14119600 14120728 14093912 14092110 14121331 14096051 14077086 14122278 14044769 14089740 14101371 14091857 14100314 14110474 14138798 14040893 14052800 14112713 14106927 14036017 14048422 14123850 14083885 14098161 14104227 14055127 14094473 14064478 14101754 14070707 14080294 14099497 14087877 14057311 14064555 14065216 14080845 14068216 14099286 14051606 14053958 14089858 14040006 14062156 14066941 14041769 14056566 14096035 14089564 14086406 14093968 14083168 14067384 14055947 14052558 14069524 14087311 14045682 14037152 14044387 14043774 14020507 14101030 14090488 14072396 14042490 14072524 14108312 14070021 14056322 14061107 14067264 14078256 14049946 14069707 14028604 14075663 14102268 14045435 14059070 14017539 14035358 14073192 14055494 14067412 14063189 14064787 14093313 14033109 14039352 14068634 14058640 14007773 14028400 14030294 14045023 14057018 14039587 14107252 14042933 14042777 14010184 13992105 14033727 14060378 14047787 14025455 14060409 14032840 14061900 14012586 14025549 14043017 14075650 14038040 14081262 14070425 14000685 14037314 14041650 14026435 14100303 14063701 13976597 14020581 14030705 14078854 14029602 14022031 14036339 14059094 14042518 14015055 14041292 14017327 14015631 14084448 14055587 14055903 14042530 14063900 14010449 14041409 14072646 14029623 14080039 13998037 13994544 14023616 14019316 14025046 14033641 14029642 14027529 14038771 14022597 13985859 14038897 14000728 14056517 14043530 14032021 14003466 14041937 14041791 13970612 14032975 14020850 14019141 14026516 14023483 14039414 14027345 14027440 14023803 13999779 14063758 14067021 14011182 14029469 14049821 14018084 14028961 14043888 14019762 14026150 13970324 13973004 14018377 14019895 14036920 14024272 14036131 14009088 14036768 14023222 13985640 13990116 14039301 13997478 13990679 14030140 13946597 14009250 13976566 14014849 13987362 14014983 14032393 14027008 14004905 14019336 13992529 14058343 14012870 14002187 14032577 14060396 14035475 13985641 13994520 14024905 13997091 13996720 14004033 13965371 13987071 13977366 13974585 14029325 13988322 14018590 14013923 13959017 13991581 13993444 13980286 13972669 13985659 14028594 14028828 13985320 13953458 13988869 14025013 14014341 13973453 13978156 13997791 14009092 13986842 14020787 14010550 13983527 14008135 14015997 13956199 13972330 13993894 13965423 13980659 13961871 13999010 14005121 13980018 13997001 13959874 14022698 13986483 14013657 13979811 14005094 13968080 13965907 13968118 13992315 13990475 13961610 14003555 13962898 14003649 14001353 13959112 13968775 13934077 13955438 13975472 13969022 14019720 13946721 13978121 13967034 13952335 13930514 14037618 13936982 13965562 13967740 13990562 13937319 14002279 13981883 14011828 13935145 13984976 13955317 13973861 13956100 13980897 13982229 13981539 13947807 13951372 13956748 13945565 13952332 13916542 14031724 13954722 13924889 13957461 13934674 13927291 13940233 13998201 13973058 13981047 13932132 13912096 13944372 13904894 13929468 13955167 13973028 13941494 13952058 13920003 13913077 13937978 13948260 13969131 13949271 13949787 13922148 13928959 13947676 13936094 13938835 13906550 13950341 13975688 13963545 13921332 13937430 14007310 13902834 13906986 13932577 13926289 13964989 13946443 13940961 13911015 13938114 13959662 13932075 13970345 13954722 13929195 13975586 13944443 13943144 13940814 13988044 13945427 13921951 13930629 13919996 13912104 13933400 13912386 13982568 13956278 13940319 13923972 13901980 13916879 13922198 13909033 13942778 13914004 13954602 13927887 13910658 13984443 13926631 13889083 13923020 13910602 13929059 13937040 13918971 13887875 13931994 13896609 13911717 13912475 13933708 13909716 13922772 13911057 13929970 13904699 13928380 13914523 13921602 13881517 13872241 13926929 13908830 13882798 13908208 13909616 13950123 13947020 13872606 13945491 13896001 13898585 13894316 13951024 13912914 13889144 13896801 13859947 13914593 13865065 13874834 13902744 13916101 13914854 13893033 13872876 13880507 13927963 13893291 13857238 13918382 13887984 13934010 13921284 13910464 13924725 13860735 13869890 13904563 13917008 13902353 13862266 13906293 13909462 13883947 13857623 13902182 13843890 13914565 13911644 13862368 13897412 13909636 13882357 13923001 13853025 13871179 13871827 13876218 13863708 13901627 13901449 13864401 13860093 13877779 13878885 13879659 13904765 13899201 13879456 13842223 13886921 13882175 13883123 13836256 13875801 13867648 13908939 13856302 13891761 13876143 13916296 13878242 13849308 13885665 13846525 13882291 13902141 13861794 13864463 13869049 13904680 13850748 13909949 13850480 13885534 13911541 13873712 13939428 13897082 13827461 13841103 13869884 13851025 13844324 13866766 13860434 13855087 13883452 13867407 13883513 13869876 13884825 13849507 13859841 13843776 13846413 13827719 13838670 13874304 13841275 13883532 13842570 13863754 13869887 13890056 13871348 13867915 13820194 13843707 13834798 13822909 13835140 13874562 13833520 13844933 13862219 13842238 13860324 13787449 13859817 13855763 13867317 13909886 13858638 13833139 13874009 13874570 13822854 13809636 13866037 13827952 13843392 13896209 13846677 13861641 13871736 13882265 13788073 13854151 13828845 13892931 13808719 13791597 13826086 13828841 13837400 13830171 13862870 13849743 13827945 13822578 13851135 13810822 13831828 13854923 13807556 13817108 13838492 13848075 13853665 13792259 13808422 13820940 13791814 13813290 13825998 13822140 13829672 13856432 13775624 13820077 13823148 13854740 13825395 13840775 13834043 13806193 13857363 13826691 13802859 13852003 13836528 13759971 13823357 13851623 13800970 13842780 13830594 13841095 13843403 13810643 13787795 13825610 13842607 13824967 13841354 13833862 13853586 13815845 13781907 13783189 13826389 13801924 13779565 13840958 13811253 13822795 13749123 13817948 13773663 13820867 13810611 13838383 13831582 13782625 13814312 13838464 13767771 13811027 13785616 13826369 13825104 13766859 13816008 13858695 13765127 13856306 13829626 13804575 13819864 13824978 13828322 13779161 13768828 13776800 13775371 13843907 13793986 13832841 13789296 13840381 13733346 13809979 13751220 13825759 13771239 13795812 13798754 13758581 13839075 13812075 13799031 13811220 13724252 13765524 13836942 13821753 13837052 13795638 13784993 13767007 13710417 13785727 13801183 13763464 13830893 13762137 13765008 13820525 13788941 13820251 13792202 13814574 13749149 13781395 13798235 13781905 13785103 13780522 13806595 13774795 13792275 13767785 13756117 13770136 13788372 13784336 13767346 13757338 13795485 13763498 13764655 13769025 13755512 13780879 13815249 13773626 13750022 13783490 13767592 13781555 13784328 13737217 13748407 13770420 13775171 13780937 13781097 13798081 13765438 13751695 13761546 13759421 13751404 13782784 13745204 13783117 13723101 13744825 13781596 13759180 13763221 13781024 13796165 13736477 13769437 13754064 13758180 13765032 13754536 13814066 13791446 13719990 13759531 13735996 13775637 13731936 13753704 13738020 13763919 13752322 13739521 13740853 13772398 13768020 13746174 13731416 13754846 13739293 13750516 13756575 13722918 13761729 13726533 13732080 13773258 13724472 13719785 13734256 13701840 13791421 13774501 13793000 13748922 13773536 13740596 13765483 13738494 13750299 13726099 13768231 13737817 13763547 13704449 13729149 13748821 13744600 13736923 13760236 13751824 13763247 13722755 13721634 13715086 13728747 13740537 13732524 13741005 13703154 13723562 13745114 13739864 13683405 13756573 13667060 13700059 13672478 13729815 13751946 13708308 13695852 13703929 13731962 13703918 13756019 13748428 13753976 13748078 13762390 13748154 13704970 13715597 13724738 13765756 13713536 13722963 13719659 13761531 13684234 13708018 13721158 13758275 13692980 13710277 13735336 13723410 13706302 13723286 13710600 13709104 13775259 13695048 13746594 13685281 13726144 13682038 13725843 13714544 13723576 13731466 13711896 13704896 13714612 13672446 13728094 13686931 13705514 13707025 13704585 13693017 13733791 13708319 13702251 13697107 13679705 13692146 13723234 13695545 13732411 13732592 13695486 13658470 13674399 13700966 13712872 13706482 13667642 13666881 13740717 13709861 13688571 13710217 13689816 13720008 13761445 13739239 13715076 13698175 13705699 13687449 13655353 13682094 13718906 13697041 13679376 13675501 13688180 13703210 13697312 13721030 13714603 13726837 13704521 13638801 13678915 13672783 13717061 13702453 13691027 13729142 13679922 13675627 13698724 13672286 13724658 13726879 13675831 13658548 13674154 13668212 13713969 13688390 13683322 13700392 13655724 13672484 13624333 13636792 13673981 13700975 13700938 13692772 13653686 13646679 13712823 13633135 13668739 13636376 13711415 13637504 13692507 13657459 13679236 13728489 13684308 13694670 13676334 13671172 13662161 13688922 13660257 13663138 13664445 13645282 13657219 13683391 13672869 13702965 13703880 13672487 13666737 13639323 13692732 13672867 13714754 13678500 13681672 13695738 13715087 13646662 13674636 13661725 13661708 13653937 13654159 13694245 13648940 13637885 13648075 13644246 13657228 13649253 13670439 13665914 13631832 13639938 13618344 13686500 13640194 13662710 13653327 13654341 13610657 13629564 13659231 13633674 13643284 13634832 13607491 13643032 13638463 13669609 13643137 13665334 13671149 13689986 13663295 13620397 13661911 13643262 13662826 13663340 13647026 13642319 13642055 13645328 13627506 13647672 13632495 13634470 13645551 13663715 13648076 13644158 13648015 13623190 13628637 13641255 13613631 13633695 13692220 13621726 13670936 13666889 13626489 13640981 13634268 13606173 13618659 13650165 13644484 13628883 13595081 13668800 13638225 13651387 13639798 13577524 13644671 13630035 13619753 13629735 13686344 13655083 13635900 13629068 13599679 13624812 13591884 13610737 13611589 13612470 13582600 13596148 13679783 13625124 13630799 13645223 13608416 13661459 13596556 13655174 13609428 13671157 13657986 13594197 13616482 13640881 13588925 13609171 13645511 13646946 13602251 13607874 13616047 13660352 13627261 13609131 13582327 13654377 13619906 13616955 13613546 13586772 13599072 13611849 13622565 13648012 13651917 13635068 13600318 13614524 13588679 13618966 13581178 13584252 13618324 13578750 13618692 13607514 13616581 13596806 13638196 13610328 13607598 13587473 13596707 13579752 13611133 13579729 13578717 13608458 13595538 13587303 13652450 13560912 13581636 13615623 13572020 13635521 13528777 13552161 13610241 13592132 13574268 13556770 13572897 13562200 13613469 13570690 13598856 13603748 13637896 13583354 13592355 13610236 13559457 13613588 13569751 13543675 13586745 13594739 13515367 13603509 13558483 13604803 13561402 13613558 13635886 13526726 13642516 13589605 13579836 13609437 13590472 13581830 13623668 13568326 13624704 13599127 13546034 13555006 13573858 13592155 13605492 13569200 13586794 13555910 13562347 13587003 13606945 13577193 13509928 13549814 13575669 13561816 13605585 13584399 13600307 13573632 13547591 13581195 13577244 13562372 13568558 13564395 13550507 13609128 13572619 13567761 13534747 13543807 13606385 13559131 13585851 13566133 13549990 13616877 13591484 13595404 13557954 13567231 13520683 13578770 13569761 13582405 13597601 13573337 13574601 13563105 13560054 13525973 13598116 13612246 13566164 13532238 13527118 13564116 13533615 13566437 13555713 13540443 13541347 13553771 13574706 13553098 13541434 13517668 13597397 13569115 13572905 13565606 13540974 13566292 13545686 13510026 13537445 13573176 13519778 13540476 13561250 13527982 13541398 13528693 13565593 13527889 13514622 13521839 13540041 13527755 13585149 13578911 13528137 13521699 13533003 13564674 13562142 13518928 13531968 13527512 13551952 13552727 13485630 13540991 13498477 13535826 13509303 13550315 13523888 13524616 13506277 13555086 13577429 13535957 13550012 13545541 13545137 13519691 13506278 13495036 13543694 13536017 13533680 13539983 13533170 13564916 13557911 13527533 13538826 13486906 13494225 13511086 13504227 13517921 13520677 13519400 13475608 13517920 13495682 13550833 13488946 13490246 13536575 13560447 13513395 13559761 13542058 13544994 13554946 13526554 13532237 13519330 13488216 13511523 13504776 13502749 13493457 13529390 13529879 13475189 13506108 13507560 13483699 13533502 13533585 13533994 13477115 13522254 13501095 13524510 13545637 13513230 13523559 13480561 13529725 13481973 13531494 13510574 13494799 13523254 13473912 13495143 13521065 13500042 13490623 13494926 13552508 13521549 13508041 13476062 13529375 13473072 13484533 13469127 13474472 13497002 13531261 13472139 13535045 13514210 13499916 13506351 13531722 13508592 13458164 13531776 13505277 13495256 13470444 13486486 13457290 13521570 13513699 13528875 13438569 13512856 13492052 13479030 13545059 13495235 13452342 13473081 13470356 13495807 13491305 13460433 13476987 13462513 13492503 13448948 13466445 13487565 13466862 13447937 13490157 13475480 13455344 13464037 13493249 13479366 13469640 13473972 13468883 13516963 13512714 13452628 13518238 13478453 13458272 13476464 13496699 13456570 13491991 13472104 13478920 13471246 13465439 13447369 13460556 13492653 13474792 13462483 13500111 13528191 13463571 13537622 13449386 13502232 13438352 13436596 13502343 13461341 13422439 13452988 13511919 13453604 13450532 13411850 13461623 13482720 13428463 13430618 13455129 13443328 13487177 13432334 13438873 13463105 13455568 13438560 13480437 13432478 13457526 13443138 13456752 13419894 13486685 13464862 13483002 13506427 13454632 13428073 13457007 13422312 13450941 13453884 13438613 13460639 13467477 13475225 13418225 13421258 13494196 13487112 13425776 13443253 13413468 13446192 13411566 13433545 13414890 13475234 13452919 13468896 13461895 13429287 13432835 13468770 13403679 13401408 13459297 13491590 13401059 13490261 13443987 13444977 13422211 13442988 13429106 13445278 13489526 13454380 13429131 13446062 13451775 13416437 13445799 13416180 13399958 13438077 13449069 13409768 13464898 13399281 13408106 13382685 13452687 13435261 13445899 13434157 13427623 13425035 13430821 13418589 13419835 13406375 13424470 13386373 13449648 13427032 13456748 13407571 13421377 13427708 13434672 13430590 13428342 13413407 13415346 13451899 13362155 13395266 13417918 13429207 13389603 13388791 13398670 13457671 13418711 13457819 13432494 13457380 13389659 13396802 13432031 13419184 13425963 13409023 13417385 13435378 13417919 13402407 13389759 13402341 13417545 13384219 13371691 13392669 13400390 13351007 13394566 13420070 13429890 13406205 13367000 13399301 13411323 13420572 13412370 13405461 13388953 13418658 13396814 13418032 13376555 13393365 13400094 13400726 13418923 13413752 13392270 13450826 13376055 13426976 13375733 13420986 13389704 13393767 13424525 13400692 13390288 13362326 13364746 13356858 13396460 13411121 13429613 13407444 13382548 13406248 13371742 13395928 13379374 13383839 13389256 13410155 13362216 13338618 13405825 13404435 13358865 13370538 13372093 13367264 13412804 13359648 13409920 13365347 13372839 13385993 13370289 13415465 13368517 13356469 13368219 13414970 13370268 13374856 13347221 13365132 13346029 13367196 13366803 13413653 13362914 13355490 13339970 13342528 13393966 13384426 13359028 13380838 13405933 13357057 13369420 13396290 13443207 13375113 13367383 13376056 13354413 13379399 13334271 13388525 13361183 13370202 13349822 13336946 13344995 13382764 13378127 13376067 13431216 13410150 13381198 13430360 13382481 13334975 13344794 13322560 13404718 13361364 13372689 13322970 13442611 13348026 13323905 13386092 13350730 13372176 13373892 13349947 13369695 13370116 13344789 13346039 13372932 13416797 13342051 13323822 13312234 13384732 13352459 13379430 13380037 13349890 13382716 13370418 13334530 13398622 13361024 13332203 13336348 13370477 13349534 13368394 13340240 13361729 13354082 13343230 13332115 13337963 13351324 13386044 13361905 13334425 13340548 13347734 13346497 13332765 13385492 13332628 13313734 13308709 13356128 13332328 13364604 13307211 13372793 13314116 13378446 13378187 13345259 13308971 13330752 13333059 13356899 13299878 13333316 13348075 13372687 13310199 13340801 13323770 13340354 13346248 13321385 13325497 13306213 13324493 13375159 13311162 13389874 13352850 13344610 13338929 13287914 13321314 13344112 13291903 13301038 13302396 13316732 13345821 13352669 13360861 13293017 13313711 13333274 13328247 13303982 13321465 13320181 13277182 13315250 13296835 13300279 13323456 13284747 13268098 13323192 13301076 13302435 13304418 13366312 13327191 13344388 13308234 13325382 13337675 13323543 13301477 13317154 13316510 13311456 13285284 13310534 13279134 13321691 13293923 13303286 13283298 13321835 13311954 13283208 13309169 13295469 13298624 13294355 13277717 13222908 13337424 13291570 13308647 13262849 13274182 13290276 13293757 13323881 13321939 13304851 13284729 13289809 13322119 13306600 13293372 13314908 13321639 13280941 13287514 13287979 13295251 13321050 13254743 13295243 13294807 13281037 13275809 13282479 13277398 13287796 13294443 13298168 13287091 13296111 13284890 13326422 13295873 13266737 13295966 13285545 13310883 13286297 13261802 13315276 13280685 13281765 13311339 13234620 13328805 13280690 13311519 13269158 13268790 13313375 13285106 13253460 13282973 13261205 13267380 13259679 13249095 13276112 13272270 13267928 13251853 13255989 13312996 13230475 13305412 13279624 13281179 13283488 13257441 13268798 13270771 13285013 13282758 13258648 13228079 13277121 13251730 13211747 13286727 13249745 13278191 13283121 13277077 13299680 13294265 13244702 13228865 13256424 13285416 13247932 13260460 13260584 13295447 13309426 13243234 13288987 13264905 13238049 13265651 13265576 13295336 13253914 13239214 13301304 13293137 13252862 13242295 13246888 13249305 13232094 13263723 13270476 13229155 13276690 13244941 13248414 13271492 13234964 13284690 13271565 13287174 13297981 13306348 13234166 13233109 13252399 13268332 13269020 13221943 13261074 13249715 13269325 13223713 13254579 13248098 13236906 13249172 13213549 13292449 13247857 13256537 13240678 13240967 13259731 13221910 13249717 13230183 13258310 13208644 13262515 13268876 13232080 13254908 13244005 13248011 13239055 13261467 13230445 13235927 13245760 13258785 13241298 13235350 13249526 13232316 13248913 13244073 13241890 13277757 13202255 13257799 13241824 13258759 13279749 13214918 13193408 13231495 13234744 13247684 13233791 13198372 13270374 13226308 13238627 13266520 13215924 13205417 13247736 13258394 13224114 13236496 13264185 13260601 13218562 13248506 13239885 13264979 13221056 13222754 13220504 13235412 13202125 13183413 13154766 13195064 13207982 13229515 13255587 13215864 13232971 13205909 13272680 13220424 13207508 13163012 13197683 13240257 13211607 13199085 13232095 13243477 13213039 13213315 13203079 13236920 13250158 13184295 13213216 13236974 13204028 13215997 13231366 13241299 13242136 13194788 13176891 13202906 13215397 13208548 13192395 13244746 13242748 13184480 13235114 13162333 13243727 13199924 13237531 13203798 13198447 13221604 13196164 13182706 13174870 13203301 13155215 13194074 13170045 13190045 13185174 13174367 13224588 13161369 13181071 13190688 13197898 13184912 13169407 13193258 13200287 13163532 13142289 13177828 13215067 13188395 13212705 13180905 13187613 13222192 13178423 13183241 13176794 13197597 13182193 13215256 13189965 13206464 13205880 13186164 13206039 13193978 13186492 13195307 13157653 13205031 13194405 13234015 13212793 13185863 13174291 13203180 13219335 13181727 13185364 13111241 13193009 13153458 13208095 13116745 13193181 13152022 13189093 13170209 13203603 13191784 13154752 13157562 13158999 13176687 13131438 13184534 13188923 13149990 13148532 13138796 13181021 13165190 13156730 13198383 13162773 13171151 13155102 13141206 13129577 13129200 13191040 13147815 13184327 13180338 13164644 13150243 13137735 13173534 13135478 13174125 13160887 13249034 13183487 13186170 13141356 13152630 13159681 13137558 13145633 13168546 13193643 13167204 13122612 13173476 13193294 13178524 13141426 13136260 13132868 13141246 13208104 13161119 13161138 13186952 13147160 13149117 13193266 13097263 13170279 13188404 13197374 13153262 13190961 13137342 13133583 13111017 13144081 13160960 13147416 13166238 13146941 13154154 13146629 13088461 13166767 13138898 13169632 13163564 13125083 13190872 13180651 13154728 13138196 13166750 13113858 13146437 13176151 13140516 13168095 13088384 13106920 13117019 13130433 13154173 13142854 13165650 13135770 13124243 13133881 13152364 13100534 13124474 13104070 13080421 13110159 13140103 13142313 13147255 13127073 13110807 13151381 13140401 13122078 13158694 13151086 13110791 13106745 13115614 13130610 13141347 13152548 13168091 13117398 13096687 13084446 13114590 13126291 13074497 13078480 13120864 13133251 13125345 13122277 13149425 13093801 13136433 13140718 13115140 13115483 13162450 13148419 13092765 13126031 13112474 13107526 13080967 13118197 13136282 13117537 13133612 13115040 13097095 13104207 13108617 13128034 13100809 13100603 13101486 13128197 13138466 13111246 13132587 13073737 13104424 13155982 13147209 13135547 13125813 13096342 13124892 13077306 13127187 13083715 13057559 13128678 13082517 13087832 13112490 13118536 13136133 13081215 13057163 13086609 13086168 13111633 13106257 13121529 13111517 13138868 13139666 13073833 13118017 13047594 13121311 13100392 13074459 13084655 13122140 13125689 13096431 13088473 13134476 13117670 13094362 13093007 13117240 13116438 13110510 13105717 13096862 13078180 13152690 13103519 13098053 13088883 13074592 13071708 13106076 13076151 13114773 13143898 13054318 13050163 13106100 13072091 13114873 13105648 13095282 13098211 13065854 13089437 13101940 13109403 13062224 13123626 13115291 13093871 13099405 13063540 13053124 13096622 13142840 13094641 13027324 13037446 13079347 13072533 13064310 13061372 13055810 13062451 13048433 13108032 13070630 13097750 13054664 13078152 13056734 13053694 13115862 13064565 13098751 13068096 13093538 13088890 13062091 13074677 13063005 13090678 13056621 13064475 13063101 13059931 13050405 13068350 13054008 13078054 13056557 13059942 13080513 13043352 13049643 13056513 13068213 13044617 13086704 13053638 13062115 13041494 13070394 13043481 13045474 13093060 13061586 13069654 13048041 13042349 13042982 13031286 13057852 13032625 13002556 13067737 13065300 13054913 13015737 13070280 13056667 13074845 13031727 12992072 13056421 13032873 13052796 13085495 13032760 13038217 13066783 13053469 13041433 13017736 13035147 13016844 13067683 12992827 13037303 13032628 13030557 13029408 13047935 13044824 13028370 13017970 13070628 13055168 13040566 13028646 13035719 13060283 13054941 13036587 13031242 13047997 13024242 13029393 13050837 13038871 13033881 13050015 13033911 12983879 12985794 13017691 13042096 13025174 13061273 13064659 13018019 13045184 13054877 13029800 13082444 13052538 13021290 13014202 13032778 13021227 13027849 13049586 13020114 13058615 13034353 13026169 13034886 13039014 13039171 13029829 12987790 13040648 13032332 13004549 13009052 13058269 12992276 13039507 12977974 13024462 12991750 12995192 13000784 12986839 13003255 13003264 13001934 12973407 13064455 13023610 13042703 13046927 13000288 12988069 13009751 13015214 13013980 13011103 13027216 13052860 13036684 12986274 13014574 13030568 13003393 13012905 12961511 13007106 12964029 12976322 12989282 13000772 12988368 13013688 13019323 12956402 13017122 12988451 12996326 12982627 13002176 12981895 12996878 12973974 12995420 13021540 12986651 12994085 12962954 13037371 13002246 12988750 13012849 13024459 13001508 12995378 13034729 13019936 13007820 12974614 12971106 12986397 12977869 12944453 12967375 12994968 12953233 12972987 13006123 12964829 13013671 12985683 12937923 12996002 13016878 13034493 12987269 12969182 12999402 13026145 12961251 12993113 12966393 12971394 12985784 13012391 12995677 12986326 12978957 13017363 12983384 12981143 12992375 13002861 12934532 12954966 12985323 12944593 12954729 13001827 12967165 12991290 12958722 12920161 12990558 12944038 13009172 12968644 12977691 13022437 12998281 12979812 12918711 12977998 12978876 12978490 12947445 12963524 12971093 12984521 12959003 12967524 12927405 12985170 12983444 12946653 12907438 12980682 12916653 12985685 12967342 12932456 12968008 12957783 12976035 12965702 12989254 12970670 12960818 12971016 12957382 12964952 12941045 12984556 12947672 12952663 12952991 12926235 12961521 12976807 12984366 12976032 12969204 12954004 12942537 12961459 12973518 12967284 12972671 12906795 12990393 12951706 13009683 12961430 12941926 12997181 12934702 12935149 12930653 12956787 12928231 12958080 12976575 12945549 12948162 12955381 12992635 12943002 12937210 12948864 12915750 12939001 12933060 12974523 12932605 12948964 12903621 12958529 12926585 12927671 12935176 12959802 12941358 12934282 12937847 12945806 12920392 12925081 12966462 12967498 12942844 12965155 12934040 12923760 12937043 12907674 12929024 12974661 12958437 12951993 12990674 12940471 12936397 12932489 12967574 12931593 12925453 12944237 12965403 12941862 12942245 12926562 12926098 12932446 12933192 12940489 12948367 12901958 12921841 12958948 12936812 12933844 12909550 12925489 12916672 12949752 12900393 12917902 12889112 12927976 12885490 12945953 12940689 12906858 12981135 12947194 12917240 12928344 12923452 12940543 12908891 12931362 12919135 12914044 12930382 12893700 12877863 12927172 12900372 12867730 12895254 12905180 12923709 12908946 12940003 12902617 12958740 12894122 12906705 12898643 12926774 12948272 12922458 12894580 12932524 12893150 12904691 12934966 12919852 12903677 12936327 12893663 12887160 12954566 12941498 12891152 12895307 12884885 12920106 12912079 12924329 12907036 12875873 12898166 12872065 12870524 12915148 12941296 12876454 12942826 12961364 12925840 12869334 12902231 12878077 12929771 12887921 12904477 12865009 12899578 12917285 12932700 12904212 12861913 12912965 12921925 12891951 12894802 12934784 12914559 12897103 12879481 12922084 12899997 12899598 12927219 12919870 12859133 12852174 12848086 12886275 12859591 12861617 12906401 12871526 12889600 12848067 12906893 12889383 12897299 12875123 12867927 12861497 12920688 12912283 12874044 12828841 12876478 12856561 12906045 12863605 12895155 12887805 12881579 12910275 12889549 12889256 12884028 12907900 12893403 12912081 12911951 12850072 12886318 12872480 12874802 12859081 12873902 12851610 12876166 12867880 12924479 12843650 12901833 12904993 12858933 12796840 12860489 12867057 12881229 12846613 12815016 12858838 12842977 12906868 12879973 12920122 12891466 12859326 12861910 12846748 12846293 12809362 12880228 12856779 12877107 12874467 12841060 12882557 12850523 12834310 12863876 12872068 12885570 12830367 12841859 12884042 12842911 12839538 12834129 12850424 12866686 12868648 12854305 12894158 12843721 12853273 12859799 12813077 12860524 12801064 12863912 12832555 12821702 12848057 12910621 12838924 12868317 12841910 12826680 12865053 12855130 12869327 12854552 12835981 12834931 12799840 12819197 12812388 12871039 12852340 12867909 12833447 12814080 12809810 12853882 12872799 12856900 12846377 12871942 12817531 12859077 12827709 12856864 12838124 12831126 12820230 12832666 12798558 12824286 12863136 12819914 12842332 12806200 12828941 12841156 12881379 12826626 12801029 12830557 12799064 12826267 12802508 12805818 12819598 12820965 12799357 12824884 12810281 12858095 12844910 12842036 12843671 12827795 12880411 12883011 12773807 12855794 12832554 12824334 12820686 12793540 12839314 12855182 12844602 12826974 12805140 12833581 12851603 12798260 12853957 12813264 12807572 12859723 12774486 12803994 12825371 12800902 12817239 12809621 12822333 12810643 12798173 12800738 12815062 12812838 12820060 12790870 12781226 12833768 12810964 12851926 12833271 12787121 12780562 12787749 12814623 12791571 12878921 12800983 12823998 12803507 12779397 12773013 12806100 12826373 12818367 12850966 12768993 12793465 12791938 12816972 12773367 12812338 12825848 12790737 12793532 12781086 12784221 12813092 12832021 12767969 12824103 12802185 12827478 12806403 12776953 12795390 12826354 12758035 12806290 12810346 12810230 12785041 12797127 12803088 12775529 12758423 12780417 12810365 12785710 12776399 12817039 12790338 12829692 12781867 12784617 12790013 12778094 12789802 12777607 12744842 12763872 12745228 12787036 12765649 12769178 12750763 12769188 12752950 12810854 12779101 12758540 12820812 12789824 12732316 12794735 12774610 12744839 12770887 12808669 12788416 12784610 12732102 12787777 12789294 12766892 12807790 12771757 12760356 12759058 12761957 12750875 12758613 12784405 12763247 12796104 12766993 12759686 12775875 12749683 12783395 12776593 12772821 12805105 12759499 12755322 12796697 12786385 12823162 12746321 12728112 12804489 12798421 12800772 12782638 12747905 12754446 12770910 12738935 12759302 12775743 12732341 12762449 12739823 12742424 12723815 12744300 12761662 12784413 12732588 12763865 12711456 12746274 12744343 12765550 12734444 12793783 12699411 12747019 12765992 12732782 12715080 12747661 12700157 12732607 12724992 12748930 12730240 12713640 12741148 12736473 12760382 12719373 12773649 12761617 12746822 12695206 12776385 12720697 12742806 12752771 12742860 12749624 12754630 12739256 12767624 12780124 12748489 12728979 12748496 12737501 12727782 12718158 12750112 12731521 12734558 12741365 12725214 12778071 12749287 12736668 12710380 12732471 12768903 12721738 12730500 12761389 12718845 12725533 12706489 12721719 12758913 12741312 12720937 12718276 12730994 12697859 12701005 12723020 12692928 12708288 12747256 12707710 12662152 12752513 12738796 12716711 12730215 12708270 12723635 12716619 12753597 12729290 12747631 12728153 12710443 12721053 12707663 12698568 12713220 12748891 12755914 12674399 12750601 12736160 12713012 12700105 12697769 12756616 12765254 12688336 12674274 12754736 12716413 12762942 12716536 12707499 12691389 12711298 12702306 12690812 12724933 12709924 12693810 12728239 12701128 12694326 12730220 12679791 12701870 12689264 12697445 12753341 12730623 12707518 12695956 12729359 12681958 12764042 12705862 12708197 12695794 12716778 12681550 12694134 12709892 12737912 12688991 12697448 12721367 12743011 12671809 12686258 12729665 12696886 12694089 12717255 12719074 12686994 12639490 12710522 12710694 12708214 12688690 12697075 12661287 12719334 12651026 12701259 12681588 12717756 12669616 12671329 12700715 12680078 12664377 12694442 12728550 12680009 12639341 12688444 12683264 12694746 12715244 12669490 12670935 12701298 12679190 12669209 12747105 12677264 12659531 12651325 12657905 12676123 12674027 12699679 12657956 12696655 12665617 12695139 12683555 12677518 12704571 12687448 12746107 12645019 12634894 12646995 12672105 12706318 12681458 12697902 12684190 12655170 12659350 12674508 12724632 12658928 12692203 12666999 12673821 12660717 12682985 12648969 12656077 12677589 12635736 12669506 12653185 12692778 12688305 12668070 12674530 12653305 12711676 12677683 12680920 12658794 12650984 12674629 12695327 12661505 12691164 12630580 12637407 12715646 12666898 12650437 12656582 12675103 12649707 12656720 12618534 12632549 12691306 12659847 12668715 12644672 12638741 12666103 12695157 12675676 12670663 12705393 12645489 12648967 12650696 12643883 12663109 12636264 12671122 12672959 12646236 12635650 12670332 12637215 12653246 12672521 12648295 12649911 12598096 12665050 12609610 12646535 12603498 12607866 12662746 12627883 12610110 12612212 12615124 12649066 12608970 12644559 12661623 12663160 12600301 12659262 12619741 12659907 12598802 12643041 12664315 12651578 12657769 12614411 12634241 12619865 12650690 12651723 12625134 12626093 12664767 12628829 12591834 12643417 12590188 12629938 12606480 12639400 12651491 12638586 12634500 12605624 12607337 12639474 12652602 12647733 12623408 12651264 12667075 12611166 12648565 12590378 12617300 12625870 12635253 12597704 12642636 12625960 12599197 12596429 12647787 12614201 12618160 12633565 12606426 12610914 12600569 12613263 12599422 12610828 12620579 12631097 12619812 12641547 12625592 12603617 12638162 12589228 12618009 12610212 12593430 12616095 12597635 12626166 12637847 12629176 12607786 12571513 12587080 12577836 12632480 12634544 12626605 12616712 12637016 12583364 12599934 12616017 12632729 12692165 12585156 12630165 12611208 12601507 12626225 12604840 12628718 12594847 12610000 12627242 12586434 12640232 12628785 12566302 12588823 12592032 12575648 12593786 12598323 12574499 12632303 12566158 12622729 12574855 12594793 12632122 12613174 12612263 12613133 12593303 12600472 12552232 12576467 12595614 12602822 12570119 12618054 12578774 12624033 12610500 12568247 12627800 12572114 12608414 12597925 12586667 12614102 12606802 12626236 12620771 12592871 12540666 12596331 12604260 12625218 12593614 12600739 12607190 12585900 12573238 12579830 12626987 12596287 12568007 12579893 12603545 12580005 12550441 12622516 12608591 12627580 12580324 12589702 12585666 12604818 12590895 12572095 12628998 12579379 12524886 12593327 12597237 12586553 12546326 12596040 12547258 12619085 12592678 12563973 12589672 12590797 12548534 12560350 12590491 12553884 12547920 12566651 12563524 12568901 12518208 12585756 12549775 12596571 12564911 12579019 12557543 12582765 12567106 12572480 12540502 12541157 12549425 12553434 12551645 12590020 12560413 12562269 12569589 12544707 12545942 12562463 12536627 12536396 12555875 12583110 12560925 12549010 12532969 12553857 12531523 12570356 12573273 12579545 12541638 12575109 12566905 12584708 12572318 12525389 12527265 12574112 12544675 12524426 12559087 12532497 12561790 12570260 12568408 12557314 12555804 12557611 12573346 12548385 12565275 12568858 12539617 12564799 12519557 12527623 12530254 12561645 12533475 12542727 12535668 12517234 12563959 12568387 12527914 12550774 12563104 12500702 12562400 12534053 12526058 12539577 12556643 12599971 12518308 12528506 12545792 12490214 12559195 12547049 12523323 12491528 12584343 12553724 12529228 12556339 12541150 12527712 12523723 12528768 12558643 12512388 12550506 12509358 12523719 12535444 12529857 12516006 12579966 12509130 12515016 12509192 12555675 12531930 12514627 12559061 12557124 12514971 12473982 12519471 12546869 12514486 12537756 12506611 12513985 12517106 12543191 12535684 12556762 12488245 12546495 12509395 12497900 12521666 12539979 12526937 12533110 12517395 12511147 12490390 12506297 12499851 12510872 12519536 12533872 12494919 12535582 12497196 12554677 12511584 12521295 12546038 12544480 12528988 12528878 12508710 12537891 12497747 12516690 12513014 12484244 12483815 12529450 12536062 12538043 12455108 12500717 12451161 12500952 12511977 12496801 12548391 12504944 12491970 12490175 12497058 12526752 12494230 12502383 12488153 12491190 12506073 12468789 12489370 12464087 12501829 12495702 12459152 12490581 12530261 12526739 12484968 12494971 12495735 12527314 12487634 12537659 12503840 12509703 12480067 12469706 12467485 12472039 12447548 12517338 12500547 12456604 12470087 12474029 12483217 12469757 12472217 12503428 12465931 12506029 12489257 12470889 12509054 12449665 12440339 12524227 12435881 12471746 12439068 12469613 12497457 12472761 12478127 12452878 12465358 12449373 12465249 12476235 12496841 12469300 12477447 12471050 12509065 12464683 12451701 12435089 12470885 12438043 12464041 12490810 12495585 12460070 12471473 12438513 12468713 12467464 12456541 12447352 12489267 12468124 12478263 12481813 12469371 12507839 12476545 12461120 12440478 12443043 12453307 12466547 12475126 12448355 12434398 12449129 12449045 12441175 12466271 12395046 12474170 12435636 12442331 12465872 12458495 12439661 12447739 12426212 12438920 12446072 12411834 12434860 12487714 12430171 12436682 12444843 12468391 12459726 12407871 12424742 12402638 12484422 12440721 12406519 12459521 12481807 12429269 12466459 12435579 12444889 12437691 12423697 12430054 12420110 12440830 12462231 12422361 12418958 12383834 12455459 12442644 12426106 12456385 12429514 12419701 12444934 12431294 12459683 12422203 12429950 12415221 12410922 12426303 12410326 12425154 12454856 12449828 12451242 12448372 12426113 12459372 12420305 12440701 12417927 12391302 12417957 12438897 12399952 12426487 12392923 12479280 12447424 12431650 12414611 12436267 12444947 12474126 12432108 12417048 12396356 12413002 12444272 12430584 12428685 12411232 12410570 12412784 12381692 12456617 12426612 12378415 12421046 12423087 12419250 12397049 12414196 12413658 12419369 12395268 12434494 12414626 12438531 12385038 12408312 12420273 12406862 12427423 12419183 12384926 12390895 12376907 12382951 12420344 12410394 12415911 12417935 12393817 12380264 12381318 12441407 12397989 12415473 12423879 12401210 12384835 12423337 12369466 12420532 12411793 12388567 12394776 12430834 12418447 12402084 12391558 12403745 12379888 12434171 12396147 12393973 12396948 12358005 12417769 12435673 12377123 12396060 12411321 12384177 12389524 12434310 12385477 12444884 12364329 12413781 12406239 12381283 12378615 12409745 12393478 12402661 12388416 12350930 12399767 12369099 12388138 12372968 12382613 12402520 12350415 12363687 12381409 12396514 12378901 12431336 12364089 12411373 12395805 12385538 12410168 12376251 12366678 12362495 12390949 12347668 12348843 12385331 12395178 12378532 12385215 12390185 12376567 12359335 12375918 12349392 12381114 12376429 12362618 12397440 12383710 12390817 12351459 12383501 12364683 12373154 12324778 12374756 12364804 12427191 12363476 12361286 12373548 12384332 12380119 12352073 12343267 12362496 12335613 12341041 12330311 12307316 12367017 12372669 12354198 12329299 12317462 12380023 12391666 12382867 12371744 12356230 12375986 12379961 12324629 12327332 12324914 12371182 12364839 12393617 12331323 12336414 12312979 12366422 12348367 12336010 12373193 12340581 12341342 12384433 12395142 12338316 12318843 12322464 12331026 12298975 12329175 12326833 12353027 12370004 12353006 12335472 12378929 12391788 12362110 12308673 12341114 12294708 12318036 12369878 12321975 12358129 12337225 12317485 12314375 12363975 12340738 12350135 12360263 12334317 12350435 12334171 12346369 12328803 12315278 12315591 12311556 12323787 12330162 12287976 12351569 12344469 12344628 12325974 12305724 12299908 12292478 12390154 12335907 12322296 12331314 12353254 12333349 12299303 12349874 12301283 12331052 12350868 12321796 12319917 12340249 12340231 12315702 12358242 12301459 12290763 12310311 12338869 12343682 12295087 12311579 12302409 12342533 12299317 12343893 12294793 12345158 12322918 12282694 12334765 12320182 12338240 12331713 12335389 12322905 12283065 12295516 12324982 12318767 12308179 12309917 12272328 12285041 12321634 12255992 12332487 12307784 12325932 12298356 12295943 12291922 12285050 12330327 12292800 12323704 12278621 12284964 12341462 12308340 12286416 12299043 12333809 12306280 12316995 12280976 12308038 12312720 12302344 12329770 12275630 12289220 12289161 12271016 12306113 12277374 12276631 12299089 12292963 12296361 12316557 12321454 12269655 12307500 12274199 12304143 12263237 12301931 12300557 12310125 12290214 12223654 12328407 12277603 12303788 12285629 12259755 12291404 12305953 12273225 12362160 12294218 12280342 12269871 12299965 12287529 12242032 12311355 12293407 12272774 12289544 12335466 12294698 12313076 12282868 12258473 12284689 12294384 12292673 12283681 12226929 12277674 12285217 12230352 12265714 12301334 12300749 12291466 12269716 12281869 12259088 12262082 12306552 12246449 12286689 12269864 12269284 12280850 12283116 12274652 12259351 12224337 12303957 12279359 12249048 12257068 12273001 12251730 12289463 12244473 12270668 12283084 12267149 12296474 12272970 12265699 12230354 12257687 12263516 12315379 12250830 12243033 12303928 12318359 12282488 12275598 12277088 12237585 12267441 12250807 12252203 12250358 12229839 12263948 12262799 12275033 12240862 12257464 12233596 12183163 12251590 12232228 12280940 12215810 12294958 12253457 12270508 12260380 12251433 12242953 12242348 12223119 12220693 12240441 12286557 12243234 12262137 12224970 12251196 12260849 12205684 12210782 12250189 12229774 12272317 12297246 12242977 12260485 12258979 12250982 12207974 12275868 12281368 12232563 12209672 12242682 12273354 12243317 12211815 12254579 12258307 12217958 12207685 12230064 12264639 12209057 12240986 12230433 12221376 12221250 12258351 12225841 12217270 12228347 12219741 12242438 12245600 12198517 12259242 12245783 12239757 12263934 12272176 12230562 12235709 12220210 12209387 12231963 12216668 12255652 12211025 12212778 12249115 12201871 12199658 12230713 12180006 12229558 12194495 12202253 12191595 12224156 12198184 12247044 12173581 12192050 12201169 12175104 12181716 12215292 12216075 12212970 12233554 12247485 12199418 12219271 12255296 12223598 12178627 12228734 12200825 12236770 12262828 12228221 12224790 12189217 12215206 12164618 12224625 12160801 12220635 12190361 12167575 12186938 12195908 12179958 12224420 12196479 12174114 12189553 12215747 12160722 12192408 12212355 12169104 12201703 12212720 12220653 12223694 12191292 12153595 12203166 12203829 12186274 12207182 12198271 12187403 12199028 12221868 12160852 12207409 12181982 12211021 12171771 12194213 12205925 12201764 12154156 12151025 12154507 12197529 12206714 12181446 12212394 12160005 12190208 12188149 12223182 12221451 12215025 12169789 12188055 12150296 12194483 12185074 12180686 12171849 12150857 12164209 12149451 12179907 12132610 12183958 12169278 12211346 12188495 12196767 12154155 12204179 12166707 12196223 12161386 12197148 12134424 12162596 12177745 12192027 12161178 12137752 12174000 12195959 12162977 12200060 12179312 12194502 12139569 12181795 12220418 12172986 12172391 12165060 12147139 12130112 12154892 12152181 12163499 12174691 12164279 12181991 12193358 12165771 12130527 12172864 12143810 12158495 12153413 12156020 12171223 12170128 12167460 12150736 12154567 12154502 12184938 12185863 12162032 12172908 12170741 12177599 12155710 12176630 12127557 12156459 12113961 12191239 12158781 12133375 12156665 12193402 12143258 12138995 12181545 12113950 12197570 12155605 12139227 12196445 12148250 12152952 12134869 12171287 12139644 12144474 12173879 12115854 12138180 12120794 12138211 12162776 12152781 12126426 12163627 12141400 12170737 12136486 12187345 12132051 12131483 12176927 12133086 12138116 12139332 12155553 12129298 12136714 12149275 12125397 12144807 12150190 12184750 12101804 12120638 12091748 12157604 12138422 12141964 12166012 12126761 12110154 12131576 12110590 12122563 12155698 12104971 12150308 12144682 12125885 12088736 12143216 12113666 12180744 12134779 12104804 12110629 12135232 12120177 12119357 12114342 12130527 12166385 12145129 12123026 12108756 12097365 12111714 12148213 12106682 12117440 12166630 12115758 12147300 12071431 12135361 12083461 12137703 12118314 12069954 12125673 12108084 12144073 12110176 12118979 12081549 12138583 12146018 12097748 12099384 12112454 12147318 12112834 12075094 12107624 12100636 12116634 12059415 12089718 12111946 12102680 12089287 12084113 12093996 12110274 12151376 12093670 12089655 12059044 12119015 12095681 12098799 12074110 12085836 12114632 12143458 12117854 12078677 12108505 12100540 12059609 12081316 12097491 12067315 12105214 12099669 12097504 12091006 12083834 12089097 12052499 12101924 12057996 12080002 12110412 12053449 12106198 12047413 12096108 12082426 12101636 12083448 12097159 12106743 12089750 12095842 12119050 12112880 12082565 12086174 12111148 12092904 12092794 12101156 12121820 12100822 12073076 12077826 12078618 12092035 12051159 12067935 12068601 12107852 12095233 12073380 12090674 12080751 12089198 12065956 12068436 12062706 12036928 12068240 12023557 12109605 12075653 12089400 12103858 12084465 12067046 12035912 12103690 12080199 12050697 12058344 12111224 12068941 12051691 12069943 12079740 12116254 12067178 12080663 12071596 12077023 12050810 12054311 12063607 12077183 12100664 12094712 12022605 12041587 12058527 12065022 12096550 12060620 12059448 12110697 12035812 12091628 12037481 12056065 12070932 12056382 12026236 12042577 12045794 12046149 12046598 12039795 12031735 12033092 12064696 12044245 12086004 12040162 12037566 12085266 12078787 11964878 12028260 12071155 12044431 12065613 12042457 12055977 12056990 12054756 12035752 12036530 12043781 12058824 12043458 12045914 12073872 12023927 12051547 12029227 12052651 11984499 12093615 12080504 12038639 12017141 12040646 12047440 12041930 12034794 12064237 12073482 12095052 11997956 12028519 12030999 12030031 12055419 12021911 12009190 12029415 12078055 12032121 12060385 12044506 11996054 12001003 12023413 12011237 12042471 12010775 12032590 12013312 12001923 12040125 12019760 12062418 12022203 12023755 12029153 12030164 12033793 12014321 12000856 12013410 12006716 12019429 12002111 12037011 12035359 12052116 12017009 12020533 12020449 12029021 12033087 12037224 12013806 12047152 12009759 12009756 12008438 12016793 12036961 12002561 12023983 11990738 12033929 12025740 12042601 12039661 12017174 12057778 12002463 12000393 11993414 12043371 12035172 11994135 12034159 12022780 12014782 11990925 11984817 12015288 12009455 12005740 12020011 12006005 12007294 11999419 11987289 12003127 11964542 12025203 12011869 11975556 12028158 11984241 12014933 12006685 12026782 12015735 12001355 12017115 12002684 11988498 11992349 12028203 12016631 11976269 12015838 12016557 11987242 11981565 11984787 11984501 11982946 11985179 11995036 12011866 12044158 11952228 11982912 11965200 12006509 11978906 11986511 12001689 12032512 11981602 11987464 11987142 11981658 12023705 11983204 11968270 11975612 11935433 11994133 11977590 11998985 11974023 12012780 11999032 11969668 11992388 11967423 11988898 11998220 11959899 11951088 11995671 11982254 11990049 11975482 11987143 11992658 11979052 11968459 11975435 11975586 11978148 11986292 11956271 11974754 11952590 11984573 11982135 11965044 11954572 11957937 11961325 11977000 11976406 11979339 11967997 11964618 11957262 11990531 11960748 11933501 11931093 11978677 11945117 11966371 11969850 11970808 11941133 11993245 11952994 11937793 11946007 11940548 11940917 11961497 11958089 11969078 11959051 11971964 11905440 11960744 11948279 11927965 11966007 11973920 11987809 11956943 11967294 11962456 11969881 11926064 11921523 11977662 11979291 11955794 11951998 11930823 11949727 11909370 11984031 11923946 11905505 11969098 11940454 11934527 11929031 11943475 11969525 11969249 11958460 11960508 11967700 11925815 11936190 11903709 11920711 11923151 11916946 11966195 11880450 11941748 11959203 11944258 11892649 11963167 11920594 11954877 11941361 11917970 11924534 11956661 11933334 11913946 11943048 11911294 11958890 11943148 11907207 11983876 11908080 11941630 11925959 11912190 11910257 11931104 11942885 11933330 11944332 11886595 11940622 11932801 11932854 11932645 11925641 11931525 11907862 11945722 11877426 11903827 11925883 11941897 11935431 11929544 11895639 11914340 11888068 11890693 11922668 11911102 11905192 11914145 11901551 11906322 11924728 11927829 11913784 11920947 11975555 11900290 11866953 11907119 11895553 11890977 11918507 11937328 11923911 11938499 11883829 11961624 11908378 11908298 11933417 11901863 11936114 11896771 11874197 11950376 11899168 11968766 11925765 11931644 11877248 11893714 11902006 11920140 11925136 11929001 11894416 11914978 11874430 11911218 11921840 11876042 11897508 11876928 11892649 11873244 11930330 11858843 11897731 11909617 11899354 11875902 11932863 11903188 11884524 11915882 11910087 11914853 11883161 11896674 11928917 11911077 11886150 11913278 11912539 11900584 11905650 11941412 11900463 11881460 11909126 11887424 11870673 11884107 11881074 11846666 11926000 11887419 11900249 11906628 11915552 11860305 11882263 11915636 11890525 11863339 11870859 11857963 11875821 11872996 11900213 11869633 11862110 11876776 11853642 11890207 11904069 11907793 11852027 11860214 11884594 11937729 11907661 11897608 11877369 11865762 11865949 11850113 11859192 11836238 11873348 11836061 11851201 11853069 11827416 11853698 11818247 11878938 11861305 11888352 11858739 11884634 11858031 11850967 11857928 11876455 11842800 11889432 11859563 11853728 11833006 11861426 11856199 11876234 11863825 11863307 11873092 11848437 11883618 11859169 11839845 11844132 11850160 11900082 11886006 11897861 11847455 11877758 11880271 11874743 11822924 11895653 11844890 11889039 11892802 11830887 11877318 11826709 11847865 11859274 11879321 11875561 11850096 11825096 11870840 11837612 11860465 11849075 11851672 11884713 11864555 11857743 11846944 11883005 11846861 11840028 11843631 11845659 11836996 11834938 11849567 11829502 11833175 11839181 11845106 11868102 11869769 11818250 11835987 11855946 11813731 11900347 11853222 11810332 11837156 11845138 11852490 11863872 11868439 11803801 11796719 11853146 11826236 11860479 11771067 11807163 11854541 11803754 11855025 11835753 11846028 11846963 11856026 11806296 11848985 11834990 11821260 11824059 11862958 11784629 11833104 11804849 11868387 11811562 11806314 11873728 11817395 11803672 11858537 11817431 11815837 11829750 11816894 11812062 11817597 11837884 11810721 11827447 11801276 11838588 11840025 11813111 11802197 11814601 11836218 11822811 11820191 11836813 11796770 11823462 11815219 11785830 11826794 11847352 11806715 11772730 11784580 11781840 11797115 11812676 11769598 11819916 11839882 11847051 11795816 11799050 11839782 11785177 11797049 11817669 11788705 11821397 11809429 11784458 11785978 11793721 11799531 11784603 11798761 11811522 11794999 11788644 11793942 11798301 11845729 11797450 11787694 11790116 11792176 11766090 11826125 11835323 11799438 11838606 11762741 11792602 11794512 11776747 11799058 11760976 11785952 11767522 11810686 11801720 11863840 11809509 11787987 11776154 11775262 11791925 11771149 11788835 11785314 11795566 11777333 11809046 11796547 11763130 11746057 11773624 11794968 11769214 11803033 11744537 11762306 11797737 11798906 11773813 11783562 11763821 11809206 11796487 11810584 11755530 11753941 11799595 11788582 11779850 11780505 11819989 11799078 11786523 11763680 11786398 11756393 11768479 11771941 11799479 11757406 11823267 11774590 11769206 11772148 11766374 11782807 11792586 11776109 11819456 11740091 11757354 11772018 11782932 11755324 11772817 11825655 11784695 11767401 11778468 11776845 11740543 11762779 11769701 11762512 11757291 11771708 11767305 11802739 11781416 11741251 11741821 11755863 11762750 11750820 11733617 11751590 11738658 11764003 11742327 11766850 11760643 11769192 11776845 11789734 11730443 11769825 11776287 11732675 11741190 11745702 11737272 11744518 11762040 11753689 11742800 11754986 11754935 11761334 11737276 11739584 11750995 11739761 11786413 11726071 11752393 11727327 11717746 11743370 11711053 11763125 11738635 11773182 11753653 11694097 11746979 11736288 11727606 11773746 11780288 11728127 11722957 11724833 11746954 11765694 11727357 11745639 11739231 11760337 11717651 11732904 11761827 11703542 11715036 11702623 11716409 11722316 11751128 11724845 11731828 11728169 11684642 11735499 11718062 11742518 11685599 11750879 11743376 11738097 11738407 11705520 11707301 11723108 11730371 11756988 11752118 11719214 11713219 11692130 11736765 11736053 11688109 11700454 11706649 11747273 11705575 11723193 11752886 11695966 11702390 11632321 11669727 11756959 11724513 11700876 11706356 11722802 11731291 11727363 11678364 11698326 11736336 11755944 11697245 11753240 11672603 11726554 11668999 11704518 11682453 11734313 11727474 11705625 11656346 11693177 11689191 11721652 11721431 11666921 11687783 11698866 11662802 11694206 11709619 11698038 11710502 11700331 11707282 11708830 11641098 11718910 11689108 11655728 11707204 11673524 11711788 11724762 11644613 11707693 11700424 11710692 11688574 11677915 11679887 11726489 11697977 11665973 11701090 11675574 11677442 11669399 11682985 11644741 11628835 11666070 11679869 11719883 11715675 11692558 11684529 11675093 11670608 11692989 11672215 11693151 11692699 11697783 11659859 11677545 11673685 11663085 11643190 11663567 11689834 11683164 11705080 11677121 11674059 11692576 11639217 11670639 11646654 11641352 11694296 11677734 11692428 11680221 11665267 11698082 11663898 11689934 11656887 11637751 11687930 11686439 11678152 11674266 11682882 11672164 11656636 11660069 11647812 11675560 11653238 11666447 11675519 11640642 11695217 11633678 11666052 11669627 11680337 11635223 11643040 11674361 11647878 11652281 11672229 11637877 11627673 11635038 11629814 11658552 11641516 11653915 11642923 11626565 11661233 11641368 11616202 11628712 11623773 11654672 11643341 11639824 11657220 11666920 11655028 11646731 11642312 11663881 11624198 11638403 11668916 11649592 11580411 11635352 11672158 11622033 11654248 11637699 11675250 11638287 11654110 11595308 11635736 11695869 11637150 11643801 11658114 11659749 11613095 11616891 11634948 11626425 11621577 11616046 11622796 11655692 11616036 11627146 11666300 11641677 11634818 11676507 11645511 11645198 11656979 11611528 11630017 11619644 11636287 11622164 11618509 11663387 11645351 11639179 11633563 11651030 11612334 11626960 11655104 11575564 11581891 11623168 11616371 11577843 11598880 11581491 11644719 11625885 11594993 11616860 11597922 11623360 11625656 11622844 11620521 11594343 11615887 11611355 11601678 11680366 11602278 11629619 11627839 11603007 11633109 11642309 11627118 11594821 11621210 11609485 11639994 11565591 11585039 11622292 11603620 11603665 11625304 11626396 11641293 11620681 11582173 11623277 11615839 11620665 11575064 11595738 11591431 11611173 11598791 11613762 11606243 11550768 11607413 11597393 11595703 11587474 11619260 11622410 11602461 11613541 11613901 11601664 11589066 11590051 11609166 11568025 11590316 11570932 11619812 11558226 11567643 11588232 11602747 11598941 11614966 11625765 11575120 11606916 11643423 11577161 11624389 11570480 11611713 11600420 11571399 11563867 11602918 11527623 11577715 11595772 11613510 11552221 11593715 11562929 11606947 11565342 11559790 11570780 11612013 11622135 11591259 11600748 11574272 11607632 11574368 11592811 11591034 11638668 11587482 11563834 11589954 11574033 11581676 11553906 11585326 11542556 11610769 11554558 11558778 11572065 11568556 11572766 11600549 11567793 11596471 11570605 11573021 11534549 11541519 11539082 11581238 11581940 11552524 11560374 11575549 11563804 11569424 11585997 11572756 11570094 11555728 11543404 11548343 11566923 11581410 11567093 11595452 11544642 11559727 11580623 11560832 11516438 11529683 11581381 11596246 11577099 11601134 11574475 11588808 11589919 11548157 11541104 11553005 11547493 11541917 11564502 11589952 11586756 11560853 11549524 11538739 11557784 11549063 11565766 11532309 11564245 11572151 11530395 11528047 11542243 11563965 11575170 11522355 11542697 11568968 11579117 11547424 11516709 11537510 11547694 11551571 11602515 11569796 11539066 11554949 11524658 11544763 11542927 11566669 11525877 11574107 11496273 11553265 11545197 11521918 11508187 11513854 11565450 11579327 11574978 11537000 11527517 11522880 11520898 11494979 11542816 11530325 11544358 11538403 11552063 11554593 11520321 11503912 11501236 11591848 11543897 11547235 11500413 11554995 11537782 11533323 11531096 11541188 11500963 11537247 11549989 11543336 11517233 11494305 11536647 11548997 11513645 11527539 11545383 11520007 11473258 11537547 11502024 11502948 11546778 11480961 11534740 11485866 11522145 11527567 11542198 11489754 11493942 11494433 11506727 11518451 11500440 11492949 11473087 11528287 11493233 11503867 11495954 11525355 11504011 11504726 11488659 11535469 11487109 11500109 11507057 11475526 11483856 11538464 11559230 11536150 11524066 11522096 11537354 11471750 11566394 11516000 11498170 11490604 11522408 11484189 11524454 11500308 11509624 11530061 11535065 11498089 11489614 11444550 11491142 11477208 11510430 11546075 11468031 11520805 11481643 11481042 11504758 11526649 11516984 11474146 11511568 11444747 11478294 11517158 11508914 11515873 11506768 11465780 11506201 11475935 11514396 11502088 11472439 11489247 11522760 11528479 11520784 11480387 11458747 11511162 11455823 11509663 11489021 11489962 11502115 11487635 11497294 11521220 11500453 11474423 11482517 11482909 11469822 11497010 11457727 11488483 11508214 11489748 11479649 11503025 11488846 11481454 11484788 11442590 11485474 11499140 11481109 11481823 11479733 11496937 11491284 11492400 11454216 11500955 11470539 11456897 11476119 11464644 11461508 11454749 11491348 11450167 11454184 11478580 11504518 11426398 11487431 11478798 11466813 11435830 11450685 11500546 11478285 11483324 11442834 11465437 11463471 11487068 11500888 11488974 11451157 11493931 11480801 11423725 11446928 11462874 11448823 11444373 11422968 11452582 11438595 11440540 11472807 11428707 11483611 11466351 11434127 11467698 11439853 11469217 11422311 11444438 11463288 11461422 11434302 11434388 11463630 11415852 11433510 11437893 11465771 11427764 11408764 11425431 11432290 11442109 11448513 11462436 11422506 11483107 11466974 11413931 11438167 11442810 11447213 11423111 11460280 11417982 11455874 11437776 11447806 11445917 11433984 11453449 11429474 11478110 11452776 11447762 11440386 11437726 11400822 11448452 11445833 11392718 11449534 11400554 11423640 11461110 11438139 11388265 11433633 11467368 11437421 11422261 11418460 11428613 11446869 11417601 11402559 11461185 11423087 11425197 11431485 11439499 11468043 11448020 11432934 11422822 11416086 11410811 11456156 11457920 11388619 11438241 11404599 11421361 11452337 11390177 11432204 11413767 11400442 11400399 11390488 11403289 11418764 11427876 11405700 11417499 11451094 11395990 11424339 11386261 11418869 11407025 11415909 11453730 11385422 11418568 11441244 11409333 11411865 11421276 11393565 11412172 11422722 11442451 11433426 11358295 11398329 11403509 11444326 11423191 11429871 11358920 11423073 11433384 11440093 11374831 11436491 11414399 11410143 11404215 11394547 11406344 11391977 11404678 11398400 11416961 11372596 11413105 11405459 11412340 11406828 11429086 11415486 11375869 11382277 11356342 11386400 11417254 11384177 11392119 11403142 11343650 11350931 11393765 11413013 11390478 11399510 11408720 11383935 11366305 11382690 11410271 11354660 11380675 11372333 11410018 11364119 11346276 11388244 11376957 11353320 11358380 11443289 11354368 11378448 11371516 11378536 11379318 11377669 11355727 11366496 11332549 11364370 11392221 11413553 11376267 11385856 11344856 11360703 11359161 11367838 11386257 11357544 11394436 11374418 11360376 11380058 11365967 11412164 11388609 11366961 11364966 11375224 11368792 11371734 11383224 11318585 11378399 11374678 11338108 11352842 11358033 11369988 11367510 11347271 11371884 11334238 11409219 11384200 11340339 11354172 11349294 11349314 11331780 11387015 11321323 11384220 11387765 11362496 11374664 11356792 11414349 11374424 11360670 11340595 11376457 11352949 11322187 11358256 11384163 11356335 11344445 11335875 11333843 11366335 11339496 11330938 11346486 11314835 11343563 11335249 11343964 11353498 11305663 11317364 11331713 11403681 11334885 11396136 11359568 11324577 11362805 11347181 11396094 11319746 11362973 11351740 11341901 11322131 11374644 11322838 11375844 11345820 11335464 11361860 11341861 11323582 11355379 11302871 11355574 11319134 11293387 11320791 11346051 11316799 11335725 11345843 11329737 11322485 11339395 11371919 11307398 11336739 11287660 11325545 11353887 11328353 11343159 11295634 11300967 11358203 11345343 11327367 11324632 11273749 11368748 11322548 11307588 11329935 11366596 11349637 11337460 11333274 11328452 11316234 11327221 11351507 11311381 11327189 11292507 11333335 11315253 11275816 11326660 11331971 11315499 11315141 11311446 11355075 11317199 11314115 11331897 11354284 11303796 11297295 11295573 11293715 11298678 11323597 11334882 11284985 11310660 11318615 11302898 11311481 11286235 11296931 11300842 11262830 11246414 11305369 11317339 11293251 11321811 11317825 11276053 11307289 11301802 11312213 11299122 11271352 11285962 11291327 11325042 11282661 11283509 11285377 11312708 11281941 11284541 11314126 11287929 11311216 11281027 11283438 11252935 11308336 11289144 11274216 11267887 11310392 11259597 11320749 11291191 11287483 11305780 11281712 11291982 11260429 11286724 11306443 11307329 11286975 11301517 11292201 11313280 11265188 11309745 11293453 11263781 11304770 11237764 11263057 11301586 11272509 11222046 11241722 11329608 11275100 11316081 11297495 11261544 11291951 11284430 11268387 11280397 11272733 11273798 11316460 11269955 11248481 11296777 11273317 11286011 11262572 11266643 11265488 11275163 11261436 11280595 11321174 11282306 11274939 11254730 11299221 11276818 11292446 11235144 11272447 11255448 11270924 11267721 11274824 11322796 11258007 11267617 11250112 11243582 11237894 11262973 11230229 11241821 11286510 11279201 11276830 11223772 11232680 11253843 11267639 11280494 11254319 11271428 11219532 11255239 11215642 11288664 11276481 11203474 11240206 11286710 11240989 11224778 11256344 11245921 11247833 11239342 11241442 11270316 11292085 11232397 11255884 11221465 11265792 11269950 11191819 11265229 11263863 11232282 11234949 11216719 11288995 11202723 11233202 11235232 11236657 11222722 11228109 11220948 11237295 11215195 11226227 11212329 11257322 11250986 11237829 11225031 11227869 11218748 11219829 11232994 11280244 11243507 11229471 11271243 11221767 11241615 11219155 11227067 11263382 11240968 11217324 11250630 11241847 11219390 11225835 11193708 11263885 11228278 11237121 11188253 11228054 11231710 11255246 11203087 11266842 11225302 11193510 11216771 11195847 11245653 11201219 11221545 11224495 11214532 11198493 11224476 11283462 11193871 11221102 11189553 11198051 11226365 11205313 11239327 11246562 11264356 11244789 11218045 11214626 11236057 11248443 11169182 11237068 11170289 11222028 11161434 11233613 11227117 11249923 11184921 11215108 11231259 11225650 11235978 11183899 11223369 11217417 11230495 11240689 11195844 11248525 11176935 11190143 11204953 11235271 11196450 11192812 11253585 11198553 11209495 11202283 11166108 11216211 11192253 11179618 11165527 11190759 11179938 11162919 11217498 11260661 11215548 11196743 11232088 11191451 11157293 11199922 11171075 11151393 11169280 11200051 11212423 11200510 11173919 11204829 11172658 11227697 11158238 11165149 11218043 11142838 11215445 11178191 11173783 11188571 11211862 11180498 11208961 11208340 11205773 11163196 11138760 11205944 11141528 11185976 11167154 11187112 11188199 11178639 11220719 11176611 11187941 11184499 11163046 11170340 11179348 11191957 11183408 11211792 11169139 11138838 11190837 11210656 11168622 11176151 11194208 11155505 11176520 11193601 11188812 11202118 11171898 11154804 11180550 11208889 11197556 11145464 11151696 11190153 11137910 11177298 11173736 11155000 11203254 11164526 11147756 11154398 11166131 11199495 11186330 11168674 11162324 11151105 11154606 11185909 11134972 11128969 11162684 11151199 11164797 11179811 11148329 11194481 11161013 11125889 11133596 11168325 11151292 11153392 11128139 11155492 11140312 11157665 11154512 11166507 11178624 11122965 11167839 11149977 11171005 11157979 11107841 11174854 11147691 11121339 11147938 11115719 11106597 11146829 11137187 11157914 11182624 11163223 11147069 11129667 11158125 11129742 11138662 11128939 11175386 11193049 11145995 11143604 11174577 11147031 11139161 11154590 11116333 11140002 11069768 11124004 11134844 11152002 11132204 11134522 11106804 11104456 11149829 11110566 11145969 11131137 11164451 11121217 11143840 11166249 11161410 11126652 11115112 11165473 11128008 11141502 11161164 11120669 11102621 11120522 11102320 11125888 11115206 11127610 11119721 11126548 11150927 11114843 11137042 11145345 11127543 11071349 11115721 11124248 11140409 11127702 11129681 11115568 11096530 11146877 11122653 11112893 11115139 11143117 11137805 11135469 11085717 11095680 11163995 11120796 11096825 11118421 11133652 11081098 11110952 11113129 11108703 11118672 11090991 11063067 11103539 11090215 11121642 11118385 11100369 11114232 11104470 11105164 11115436 11124917 11022436 11069671 11080482 11087499 11104655 11108677 11116311 11081848 11171151 11083958 11063076 11084195 11114774 11110709 11090166 11086266 11101668 11110507 11086423 11092102 11105804 11069041 11114568 11096206 11085991 11069373 11084756 11103547 11098049 11065315 11077861 11082195 11105544 11080009 11061912 11082031 11070140 11064178 11133783 11081747 11081229 11112546 11095189 11098472 11090490 11099217 11073934 11075420 11102993 11117343 11099665 11031942 11093832 11104987 11134634 11040536 11056791 11077860 11079472 11098284 11075228 11085979 11079541 11113606 11059345 11091963 11081017 11103437 11059544 11116288 11092046 11060017 11085493 11062261 11105155 11067679 11098140 11062344 11080291 11063351 11039498 11087891 11069439 11046672 11074597 11066385 11043136 11079448 11084760 11045933 11096288 11021727 11096162 11054670 11063549 11100528 11046667 11061935 11084686 11079967 11054008 11063766 11046330 11075004 11075017 11066875 11040535 11022274 11052709 11072731 11077268 11074080 11078267 11074128 11040559 11068237 11071442 11040038 11085862 11092217 11062348 11058084 11094056 11076177 11047506 11043727 11081836 11065140 11012896 11080527 11092302 11094954 11067269 11053179 11061791 11048043 11050673 11041485 11055974 11026921 11084992 11051044 11086000 11046691 11036668 11045820 11041939 11014531 11046648 11027171 11050641 11075817 11077570 11067449 11043888 11053051 11040865 11037272 11050622 11081192 11034839 11039216 11036752 11033991 11069509 11034037 11028691 11032592 11070346 11022997 11064451 11042814 11053236 11055962 11013828 11092357 10994386 11016043 11071402 11048177 11029966 11016033 11031114 10979427 11043493 11055229 11004196 11046654 11027845 11022442 11040849 11017698 11029130 11013337 11015269 11028679 11093092 11027577 11027707 10972913 11033211 11016646 11025690 11024434 11021064 11042449 11030759 11026988 11019485 11046210 11009294 11023019 11030288 10966120 10992998 11049290 11000875 11001827 11001017 10983594 11006032 11028734 10977101 10984711 11005228 10993125 11021588 11044420 11008517 11017768 11032586 11015981 10981447 11027017 11006976 10993990 10994934 11005492 11033001 11022892 11017941 11010270 11015827 11009047 11027118 11006084 11008807 11024626 10994858 11001664 11018702 10986666 10962244 10962661 10970036 10989512 10991949 11017455 11003904 10970511 10998584 10985944 10989757 10999240 10985750 10987463 10966014 10962718 10992866 10972414 10949897 10999904 11001135 10983015 11011016 11027658 10981886 11015529 10990864 11001472 11001932 10986415 10961130 11013269 11019204 11013283 11004961 11002524 10941687 10951370 10968643 10997496 10962714 11010084 10990001 10987869 10941986 10995127 10983782 10977180 10964995 10973946 10999010 11011917 10974956 11005312 10976030 11008507 10971669 10944315 10939059 10972589 10965653 11002165 10970914 10950576 10977181 10962775 10943449 10950365 10966570 10980596 10920269 10957060 10980227 10987248 10941270 10932603 10954948 10960794 10969562 10960828 10963676 10996444 11002450 10978962 10969553 10964622 10915179 10968008 10950465 10941069 10944819 10963975 10968521 10934862 10922918 10954091 10969593 10926535 10960303 10950723 10928533 10964843 10942605 10952762 10968077 10959573 10928195 10968090 10948548 10963600 10941747 10956760 10929483 10955244 10955579 10942164 10938537 10980838 10970007 10933998 10960379 10967699 10942340 10942846 10942425 10935829 10932504 10924333 10926579 10918502 10927913 10927671 10922276 10960051 10936161 10945319 10866839 10904209 10911639 10906750 10901543 10928325 10905246 10936319 10926175 10938913 10909171 10915734 10915007 10923107 10915781 10945017 10962293 10932495 10955954 10927441 10934461 10930299 10914258 10944874 10940771 10964832 10924399 10946732 10913764 10951187 10913075 10889098 10866612 10934262 10927589 10907492 10942912 10896372 10913476 10894599 10912576 10931226 10926273 10905682 10914747 10906609 10924699 10912544 10895758 10898658 10950913 10916882 10895966 10876864 10913765 10905754 10909019 10939704 10930963 10941033 10895022 10915679 10888175 10921028 10909812 10831678 10889673 10947344 10871115 10921418 10893132 10926671 10865173 10919042 10919203 10930718 10903030 10934545 10887731 10917563 10870167 10867852 10918804 10901092 10917117 10887962 10883596 10910212 10883511 10894577 10894051 10892972 10920185 10900592 10924349 10891145 10913665 10836103 10921880 10911395 10903889 10866193 10913403 10901062 10878757 10922385 10880569 10876772 10904298 10874947 10889369 10868269 10848913 10927784 10874469 10902267 10895875 10893105 10882844 10864682 10888238 10890032 10884766 10885794 10863921 10902404 10852307 10840865 10859954 10875386 10869726 10903880 10907046 10900339 10844590 10870508 10869215 10885403 10839922 10879101 10864812 10888508 10885268 10903735 10846760 10881188 10900274 10866775 10879334 10877138 10831300 10892398 10850155 10867513 10837171 10855213 10826256 10889210 10902226 10858217 10836284 10863686 10888698 10869919 10847722 10850240 10861159 10899690 10838254 10876009 10871518 10876586 10902303 10828717 10839014 10849635 10818370 10866473 10855721 10850254 10866164 10868276 10853210 10829727 10879736 10868963 10848813 10897408 10840815 10843251 10839617 10855868 10860790 10845079 10829258 10825798 10845073 10829643 10827209 10855744 10818869 10832693 10854559 10835679 10862059 10844498 10831172 10852628 10816531 10847772 10827821 10793954 10839821 10850921 10834442 10834961 10808496 10851725 10818310 10854463 10842700 10861863 10819197 10845096 10821290 10863859 10836564 10871841 10849260 10838865 10822737 10892797 10849698 10827825 10835888 10850332 10808186 10833765 10817627 10844345 10832475 10820763 10799071 10831685 10842674 10866305 10838092 10825632 10850769 10828274 10815875 10837591 10806609 10832206 10819474 10850438 10832387 10840116 10825400 10811017 10828026 10820826 10844676 10858525 10799741 10834151 10805281 10801098 10821212 10830625 10823892 10857500 10813276 10794557 10829938 10825084 10813508 10810766 10814979 10812215 10814817 10820660 10818173 10841024 10821162 10833865 10828994 10851989 10789813 10786697 10833056 10806479 10833808 10803090 10804282 10776655 10819106 10821113 10843374 10774459 10763290 10819271 10773631 10833048 10828295 10845740 10807996 10843420 10774903 10833662 10828650 10802999 10777313 10803976 10770573 10802216 10748946 10791051 10804239 10802798 10809727 10808554 10792355 10792928 10822655 10764468 10784834 10774607 10811205 10810746 10769594 10773540 10822765 10798016 10816420 10797866 10822183 10772024 10776353 10742763 10795618 10821471 10787515 10804426 10783687 10787091 10782290 10765945 10804486 10788308 10749292 10802082 10775618 10809991 10802199 10786297 10765450 10767469 10735142 10783829 10800943 10773503 10815410 10777741 10723736 10798367 10802548 10786827 10786646 10772684 10785900 10793464 10747579 10790363 10776101 10742407 10785914 10775444 10769163 10806598 10760147 10792902 10800553 10785930 10761930 10791440 10746010 10803183 10744454 10796982 10767378 10755445 10814656 10762914 10758181 10760910 10790366 10772009 10778721 10764848 10755675 10770274 10777251 10775991 10763246 10753732 10753291 10788336 10755715 10800446 10759415 10758584 10781679 10784309 10780143 10771270 10726149 10792232 10752378 10733287 10733589 10732801 10771478 10766945 10758618 10769084 10782768 10740829 10751881 10724756 10777622 10760344 10718791 10760745 10742161 10745402 10727275 10727062 10737617 10714486 10742112 10783142 10771783 10769856 10743097 10719307 10746241 10728985 10761874 10764462 10756743 10778909 10760341 10735505 10752920 10736350 10750538 10737642 10722123 10725421 10736781 10747976 10740749 10724402 10732755 10739842 10752102 10717108 10750502 10745630 10733615 10731989 10701753 10724933 10723494 10737218 10734067 10727838 10719300 10743637 10738710 10734422 10727203 10725015 10725756 10740326 10700658 10716489 10702495 10709342 10719113 10715758 10714161 10755017 10733700 10763710 10750784 10718063 10695802 10743009 10703997 10709667 10716629 10725976 10708596 10715748 10729321 10712350 10725144 10722709 10718803 10724877 10706612 10730759 10723142 10737895 10693669 10701964 10713165 10685913 10692069 10693673 10732684 10725927 10700595 10731032 10675461 10743705 10708548 10686133 10709756 10663360 10715721 10696108 10691371 10714563 10706624 10739870 10751117 10678296 10679241 10735995 10689766 10684552 10691461 10698683 10725815 10686685 10729409 10699728 10709723 10734245 10701095 10739878 10683095 10677988 10679818 10733823 10641690 10700052 10695239 10671370 10672954 10690648 10692120 10669814 10692144 10719714 10627038 10693671 10683299 10726905 10709554 10665772 10719422 10647202 10639001 10644561 10689588 10655355 10693956 10681017 10691170 10705530 10669172 10714638 10684257 10663961 10679480 10706330 10661029 10710769 10658107 10706152 10706057 10709659 10684761 10665442 10702329 10665038 10686047 10705081 10669782 10668660 10668282 10641948 10660995 10673504 10687992 10660505 10685562 10678822 10693544 10676438 10707567 10666935 10660792 10675842 10660462 10740292 10680678 10659709 10718405 10684025 10666088 10648278 10680160 10658217 10650382 10679491 10632284 10644290 10657813 10659414 10659572 10670704 10639362 10644848 10638195 10652431 10679906 10666408 10627141 10658838 10624687 10666712 10669991 10651300 10650225 10653739 10622602 10659167 10658053 10674215 10640003 10646179 10666730 10644159 10652097 10655405 10657873 10678457 10644103 10685691 10630198 10679974 10633727 10651307 10659069 10669859 10621219 10630802 10668540 10668932 10656022 10578196 10639896 10622100 10629415 10627086 10620614 10629862 10670235 10620407 10619798 10650183 10644535 10640982 10613849 10630705 10618818 10629607 10613279 10632733 10633362 10642106 10635152 10641874 10646502 10624569 10605524 10631159 10626745 10627951 10665285 10623099 10648385 10627002 10627333 10643777 10631951 10623736 10607609 10654396 10641326 10642414 10619264 10582736 10624117 10639977 10605495 10631582 10595208 10645577 10640066 10627595 10593536 10610008 10625879 10626246 10582652 10651816 10620943 10554614 10609734 10628496 10603685 10598740 10599902 10648665 10623629 10607393 10647472 10609531 10635968 10620956 10626498 10617279 10649696 10621620 10651426 10639401 10610649 10601323 10610320 10622891 10585594 10594063 10583129 10612721 10608309 10612579 10676606 10639708 10585919 10602198 10614991 10597134 10620935 10623791 10654903 10585963 10595448 10618532 10573404 10587443 10607069 10602415 10626344 10590948 10559314 10611169 10602356 10596917 10599627 10553095 10610736 10566772 10606079 10613739 10557237 10596318 10591562 10593250 10566053 10631077 10574915 10588074 10601542 10588797 10569179 10621993 10617052 10576914 10613564 10564862 10563089 10607427 10624560 10612620 10594722 10631337 10597444 10587685 10601978 10554032 10601494 10599915 10619751 10591324 10612659 10573992 10575671 10588131 10590015 10613570 10537352 10592279 10620967 10585144 10580709 10576267 10595444 10577976 10600059 10609849 10566548 10541187 10589047 10557979 10589671 10628599 10582915 10584308 10549589 10608447 10561692 10573397 10612035 10592318 10588365 10606923 10554773 10589587 10578002 10551032 10559896 10586359 10591878 10521033 10608836 10580786 10546343 10543864 10591227 10581749 10567060 10588586 10526259 10584282 10589075 10529898 10562553 10599375 10607645 10568723 10576554 10587031 10535058 10561126 10562032 10548068 10550250 10579588 10569534 10553333 10579442 10537098 10572835 10591256 10571189 10580730 10533898 10547952 10585690 10541982 10527175 10525322 10559638 10538904 10535304 10575023 10549496 10533803 10528507 10538828 10536952 10578968 10543086 10521678 10532817 10520029 10553810 10530023 10517960 10536718 10524641 10537203 10562882 10528554 10592859 10528617 10560324 10570722 10546768 10535693 10553002 10560694 10568955 10571183 10535911 10528075 10560009 10506444 10543454 10557953 10552677 10514592 10551608 10576490 10508800 10541192 10555355 10533481 10540099 10522456 10526997 10533195 10547659 10522553 10552849 10577986 10553656 10516010 10528798 10518241 10488936 10526906 10515300 10519845 10513183 10530654 10551243 10533929 10503678 10522522 10536345 10505955 10519559 10506697 10605204 10510403 10504180 10536913 10568740 10523016 10530555 10519129 10521708 10559262 10523760 10480758 10524546 10527699 10508141 10476492 10508980 10497687 10484034 10542588 10506237 10530190 10487563 10529387 10512914 10504689 10494214 10499677 10564730 10505453 10542996 10503414 10475199 10492473 10552975 10475615 10501677 10497374 10482904 10527398 10479951 10498964 10464119 10512803 10511320 10470270 10498276 10519847 10504049 10486337 10469649 10499293 10542115 10502467 10530552 10511881 10497306 10493729 10492158 10503031 10505032 10502711 10456141 10499751 10488239 10519348 10471465 10489848 10483707 10501749 10479346 10495062 10501212 10530824 10522811 10498070 10457489 10507251 10502697 10474106 10492869 10515346 10463976 10523672 10458655 10492144 10503107 10470644 10525641 10528701 10481572 10447762 10512284 10471262 10463768 10514206 10542919 10454962 10487607 10491537 10475407 10489856 10453365 10485858 10425066 10455409 10472305 10519216 10473444 10497597 10504038 10498570 10503049 10501325 10467120 10504228 10449578 10448385 10468132 10505886 10492326 10492478 10463088 10471252 10457159 10477429 10415444 10441021 10502054 10456269 10467237 10471599 10455290 10497045 10487490 10467831 10442528 10496646 10459091 10441330 10461213 10455547 10465076 10436527 10468136 10469213 10492198 10476980 10477370 10463813 10494187 10482822 10500755 10472731 10464603 10462225 10444260 10454772 10463077 10434277 10447946 10483959 10454126 10479540 10460435 10444368 10467978 10489114 10428784 10457330 10461344 10466391 10422058 10430840 10456192 10442433 10445218 10452044 10424405 10481553 10480453 10475684 10456857 10479644 10473968 10454982 10482490 10447532 10462129 10443178 10451581 10451705 10464048 10408011 10460845 10440391 10454403 10451084 10459099 10431893 10437970 10468792 10419518 10439387 10398761 10468209 10460933 10461552 10442986 10470537 10462631 10422449 10447232 10453317 10441672 10448567 10458923 10431580 10443003 10421425 10438136 10430057 10426140 10446542 10430303 10418117 10446112 10444701 10419844 10400546 10419718 10444882 10432994 10397838 10483660 10420503 10360340 10430744 10413467 10444254 10448527 10401881 10436655 10442126 10464653 10431737 10418273 10424447 10443392 10390682 10409530 10429880 10413829 10419298 10419581 10414213 10420907 10420958 10415319 10401733 10425542 10426206 10406294 10408820 10444268 10410892 10410617 10400011 10427836 10398826 10448203 10400745 10378752 10417013 10417340 10404522 10447293 10403613 10417649 10402548 10423998 10411400 10446938 10422221 10418930 10397836 10408824 10415530 10440687 10409365 10423289 10382850 10394869 10402319 10396308 10429035 10465953 10461168 10405905 10451562 10399066 10386371 10393408 10360574 10389098 10392058 10389004 10387592 10365161 10384021 10406176 10405190 10358486 10383909 10410562 10395720 10393560 10374072 10408121 10420697 10370174 10387338 10376944 10343326 10358273 10374774 10345452 10347197 10378262 10365278 10372154 10386909 10375387 10402748 10378675 10339084 10337161 10392842 10365280 10416523 10373486 10358654 10376322 10357366 10371873 10356629 10411300 10397980 10403772 10372714 10351578 10348959 10370546 10389566 10362843 10399565 10357904 10378499 10367493 10401670 10343933 10338859 10350709 10371851 10360026 10329220 10372440 10380612 10409176 10383143 10324230 10401224 10377267 10363207 10320508 10363250 10324941 10352910 10393585 10335494 10365099 10336571 10368597 10362393 10342700 10339726 10363154 10364886 10372947 10341412 10335690 10350243 10345176 10361529 10331074 10330505 10341874 10339926 10349582 10344548 10339697 10337019 10348746 10317106 10380977 10371948 10363994 10321841 10340142 10395489 10331790 10338877 10328114 10324011 10317684 10345579 10340270 10344482 10340693 10327867 10337814 10324024 10304723 10335931 10332191 10372072 10371836 10326241 10349086 10335365 10358042 10395645 10337318 10343980 10335484 10337845 10306830 10315086 10310684 10342758 10339334 10319804 10314427 10362400 10340154 10352915 10327356 10337176 10359609 10330114 10321529 10278736 10319319 10318902 10285499 10325863 10329172 10374039 10316791 10350279 10361339 10318905 10303692 10339392 10335325 10335507 10309180 10338804 10289618 10326477 10338208 10327678 10337663 10321709 10331169 10297357 10324639 10332900 10331845 10341267 10297842 10295532 10318391 10307642 10321647 10323501 10336862 10340081 10335476 10313385 10301840 10342689 10315174 10322954 10311541 10328277 10331808 10328809 10282593 10296577 10323643 10344407 10266578 10332193 10284796 10310568 10295097 10343518 10302854 10300725 10307163 10332441 10311947 10296085 10280484 10303928 10289620 10297972 10252150 10306984 10320146 10276147 10317910 10337973 10264202 10297678 10288230 10272591 10281180 10307619 10305526 10313171 10263421 10299137 10345322 10290096 10273077 10265334 10329979 10286888 10287537 10297043 10242314 10297336 10321616 10273440 10279145 10324444 10267047 10293644 10264442 10307798 10298588 10296815 10306947 10267245 10323218 10282775 10284125 10306372 10237888 10291344 10267131 10314845 10266230 10283724 10301502 10294026 10307720 10244226 10274588 10259367 10258999 10303126 10271745 10275651 10302467 10244989 10292731 10272083 10246299 10270769 10269611 10292857 10288142 10319175 10291586 10239747 10299498 10250795 10243716 10261870 10261533 10310729 10250074 10306894 10198108 10257054 10283130 10242923 10247466 10266566 10308326 10256156 10266447 10245709 10265228 10257538 10233182 10287555 10255353 10281083 10276536 10301065 10278714 10229685 10265231 10248525 10226417 10243335 10233253 10254964 10279232 10210270 10271897 10310397 10247148 10294444 10252169 10248381 10243150 10235210 10266258 10269871 10220439 10265466 10242256 10254858 10244898 10255404 10261359 10228154 10249654 10206229 10251263 10258344 10230835 10248075 10229702 10224630 10230840 10210213 10257399 10257947 10233391 10246244 10215298 10257161 10216006 10224513 10219735 10230220 10240511 10249558 10235876 10245581 10229151 10213148 10254791 10241480 10243755 10237617 10253241 10265751 10238212 10270694 10257340 10233830 10262583 10245830 10213625 10233528 10203456 10218539 10232738 10247905 10269165 10247861 10261897 10196927 10247757 10241197 10223736 10223166 10235307 10238250 10235647 10245450 10210125 10189949 10205608 10201779 10202228 10212211 10228971 10249389 10237573 10224882 10258821 10221852 10213702 10229465 10209661 10220105 10227467 10211700 10238686 10207743 10235408 10178438 10226003 10191374 10192443 10234244 10261858 10214704 10225256 10224719 10206659 10236960 10198605 10212466 10229038 10204157 10233707 10217660 10229290 10226065 10197790 10246166 10195373 10221222 10179132 10202879 10220237 10215066 10207923 10164277 10227400 10221119 10213833 10187389 10169790 10230682 10205242 10195627 10179232 10228541 10209064 10198829 10213665 10220253 10204710 10206095 10168763 10199672 10186563 10205224 10196407 10218552 10207190 10180487 10179390 10219420 10175076 10194259 10195117 10233784 10210842 10204577 10193897 10220876 10235711 10162477 10161173 10187774 10155840 10200500 10176700 10171551 10215540 10182957 10178309 10201594 10212505 10194029 10177004 10157267 10194296 10203255 10174212 10170864 10216629 10209953 10172753 10200345 10193928 10192143 10179038 10131199 10173881 10180184 10172119 10176576 10173621 10209104 10211163 10151975 10211243 10202560 10175532 10171410 10160816 10166374 10172189 10206210 10180193 10177007 10200696 10184180 10184253 10143642 10169246 10140590 10129260 10190221 10180371 10147120 10166609 10187406 10174021 10175916 10217476 10205325 10164100 10188444 10189435 10179447 10169275 10157362 10158391 10159963 10131854 10156469 10192076 10157491 10190627 10167264 10160340 10236802 10135807 10154032 10173244 10144907 10161731 10189500 10158732 10146479 10163184 10169048 10179873 10178621 10167690 10158775 10124724 10157070 10155797 10154429 10150666 10163836 10141752 10136759 10161984 10149537 10143362 10175014 10155962 10149979 10146212 10127196 10122694 10160279 10150986 10153042 10160855 10111168 10165225 10159910 10138719 10121812 10152414 10159523 10146835 10100847 10133651 10160276 10096275 10146184 10149282 10108258 10154729 10103235 10110066 10164958 10108527 10157390 10139818 10179205 10147233 10160706 10121337 10126056 10125141 10146991 10165438 10137460 10172584 10123988 10108841 10118780 10158740 10152687 10112463 10118688 10132431 10142790 10149242 10106416 10112954 10133413 10076818 10155805 10115659 10087512 10104874 10126700 10119009 10104596 10155740 10119143 10112820 10114067 10103310 10080306 10132503 10123048 10117346 10126308 10106534 10110245 10121035 10112474 10122433 10108851 10135960 10134705 10094290 10103854 10118749 10083324 10125678 10080530 10126016 10102134 10141562 10098204 10094551 10097767 10089696 10122116 10121510 10097251 10114478 10106688 10111872 10103375 10128410 10123442 10109371 10118031 10095578 10112254 10074232 10089712 10089804 10112306 10116798 10100592 10131900 10129387 10080647 10082703 10092320 10084914 10097138 10112205 10108324 10104768 10109193 10081609 10093923 10110114 10053529 10083976 10090342 10069635 10106390 10101984 10118096 10088772 10096106 10088580 10076756 10079664 10106815 10075046 10097622 10100679 10073126 10097550 10086998 10084371 10083815 10077731 10105330 10069492 10095563 10061685 10095867 10131051 10090498 10080107 10065885 10080328 10058866 10077462 10092125 10098191 10078556 10118233 10077969 10106520 10084014 10065031 10066650 10076712 10103885 10051186 10081404 10096295 10084707 10083807 10080927 10057125 10048594 10038447 10076395 10078002 10088259 10108722 10079466 10078428 10046030 10077015 10094327 10067558 10004880 10067725 10103497 10087675 10033009 10091486 10073066 10076169 10080442 10067469 10025944 10062359 10028925 10055869 10034265 10070747 10059099 10049743 10060877 10060953 10086331 10027620 10069727 10043873 10073854 10084870 10007589 10065277 10015252 10085479 10052630 10019077 10054111 10065642 10020393 10046547 10050215 10077213 10065611 10025568 10049895 10079958 10010647 10054188 10027228 10063946 10061477 10043964 10057401 10033810 10054805 10021194 10047924 10052642 10036138 10035137 10065689 10038804 10038054 10060280 10055302 10016789 10041127 10083930 10020660 10031604 10062262 10059372 10042096 10002864 10034678 10035177 10039812 10023045 9998617 10062839 10036607 10055251 10048959 10037634 10048326 10020846 10049491 9989215 10016942 10021370 10038606 9985247 10048455 10015138 10043944 10061267 10019803 10003868 10044536 9984376 10018240 10006204 10037617 10028360 10035831 9968943 10039004 10040002 10043336 10007933 10056344 10014158 9967999 10028073 10042189 10010059 10016006 9988130 9994297 10014348 10029224 10006498 10017965 10011421 10045953 9989625 9990182 10036671 10036601 10054432 10017431 10016955 10040362 10023105 9979197 10037652 10032584 10011403 9987915 10050718 10010037 9982558 10006879 10029596 10002218 9973065 9973507 10013154 9993571 10022832 9978525 9981265 9998718 9984666 9997164 9998077 9992769 9960622 9975228 9996052 10010172 10035363 9979308 10008268 9969018 9979921 9995234 10021589 9944470 9995894 10008813 9997437 9960016 9990297 10037025 9950925 9991683 10016627 10018605 9997636 9973405 9994741 10023291 10019408 10010408 9982115 9999218 10017233 9997439 9994274 10016142 9966070 9972679 9985686 9970744 10016415 9995637 10036904 9983890 9995691 10003338 9979182 9995043 9973895 9985398 9978550 9976240 9940054 9981670 9962890 9955017 9934548 9957791 10007410 9961442 9971627 9984045 9944023 9951053 10006308 9982783 10028026 9955716 9959224 10035611 9997087 9948966 9942747 9982600 9952875 9956405 9972301 9970765 9947495 9974597 9941598 9960675 9950134 9995134 9963831 9958106 9968241 9966930 9970471 9971738 9967172 9957709 9967872 9957772 9987882 9974279 9996298 9953562 9973938 9961855 9964645 9936202 9957013 9949284 9964163 9965243 9945337 9944865 9996936 9961705 9966102 9959462 9936707 9927491 9938279 9941602 9973784 9942995 9963502 9946326 9956466 9942985 9925402 9972506 9938464 9957699 9920735 9955620 9967152 9936230 9911617 9949223 9960861 9925301 9980365 9934540 9958141 9953541 9938991 9993358 9922269 9957793 9937486 9933921 9952424 9933823 9955343 9993481 9973312 9964813 9936585 9914364 9952598 9925245 9934878 9923312 9947777 9915561 9967816 9957289 9955786 9912021 9932028 9927667 9911800 9939415 9942753 9950575 9951470 9886509 9907233 9904545 9925675 9948425 9913694 9951537 9962574 9952443 9942165 9919384 9923180 9934739 9932900 9932677 9937612 9910141 9898266 9951322 9936191 9917847 9905329 9894661 9898470 9920831 9907136 9910170 9915699 9917795 9888960 9944371 9912433 9924512 9928289 9896202 9914999 9936987 9941036 9917686 9890700 9926852 9888464 9883302 9897121 9906243 9926906 9916621 9908184 9894736 9919201 9910963 9890430 9911921 9934338 9887477 9877703 9913772 9941852 9930761 9917896 9906962 9869653 9880409 9892456 9918331 9915484 9893388 9915207 9901512 9891815 9897841 9900573 9906701 9905330 9912457 9944556 9939177 9885959 9886010 9851955 9899214 9878579 9917197 9900359 9887148 9909843 9872133 9885318 9884592 9909753 9914332 9900274 9892262 9886328 9865055 9893830 9913735 9895397 9910345 9916579 9876536 9841809 9854339 9906620 9847289 9926517 9896850 9901999 9906257 9883598 9888695 9863996 9862400 9880470 9904524 9887870 9891383 9887322 9899560 9885813 9841278 9864121 9885551 9853867 9817248 9888359 9893797 9877430 9881039 9881525 9902559 9886916 9837266 9898545 9866967 9893179 9866339 9884505 9865654 9863443 9888184 9860104 9869909 9924785 9888635 9871596 9883945 9873732 9860402 9903714 9867274 9865636 9858928 9903076 9873685 9898106 9864832 9877742 9832864 9868605 9850854 9883217 9821136 9868173 9851954 9849716 9859752 9852272 9784488 9866918 9838247 9879852 9860371 9836797 9841464 9866746 9845396 9874415 9839848 9865786 9875244 9856015 9853564 9864875 9837823 9868002 9833649 9875207 9826734 9880326 9859287 9848485 9833870 9839956 9874684 9846930 9872078 9850900 9859558 9860587 9852305 9858827 9838836 9872093 9847399 9881343 9829156 9803342 9828502 9854216 9825489 9838879 9828593 9833889 9866107 9823463 9825481 9860160 9846327 9845470 9834687 9847249 9851645 9803691 9843052 9840064 9788367 9851005 9794116 9829762 9850655 9824800 9818852 9845234 9847705 9815147 9815882 9821237 9840231 9816705 9821579 9825915 9811040 9811306 9796142 9845842 9831485 9820053 9812230 9788401 9794275 9812895 9870833 9821710 9848506 9820433 9843280 9855368 9838318 9809042 9817920 9789776 9792842 9839955 9813026 9810924 9804065 9833751 9825694 9807970 9786485 9798731 9823041 9851178 9833352 9806497 9817188 9806133 9829148 9846937 9838370 9836138 9780965 9799936 9798076 9815517 9812869 9800432 9782607 9787125 9830738 9794299 9746497 9801494 9837971 9789760 9820581 9820460 9827312 9849008 9793960 9785928 9809148 9782575 9778155 9805170 9776631 9826661 9791924 9843314 9815752 9807679 9779781 9786549 9781594 9815717 9803573 9814602 9754742 9823464 9770650 9739108 9780257 9811084 9823247 9783043 9828340 9770439 9768926 9837806 9782830 9773105 9809853 9771160 9781487 9802682 9766973 9748006 9807413 9778702 9808706 9785045 9798071 9797773 9770230 9789144 9788101 9811386 9819603 9787797 9791172 9780900 9780670 9782913 9780971 9765145 9782956 9804724 9782892 9764067 9791896 9747954 9779833 9770965 9753300 9744752 9783321 9787860 9738601 9776494 9764400 9754359 9775584 9779165 9752707 9794852 9748910 9770419 9760895 9748493 9738958 9784575 9769145 9790219 9747732 9776038 9791109 9781944 9773606 9781832 9760357 9743969 9749355 9781988 9801532 9778427 9795136 9752950 9732214 9766435 9726338 9759726 9744932 9750401 9771004 9762524 9718507 9746705 9728713 9768238 9755464 9743769 9748698 9755434 9752139 9743141 9719030 9748199 9729652 9760565 9729172 9744153 9749143 9746305 9739343 9772015 9745198 9740244 9728464 9738454 9737889 9740036 9738190 9736717 9716830 9785990 9723633 9719702 9750801 9742599 9755226 9708538 9747014 9711199 9737516 9712343 9744371 9765487 9793939 9725099 9723182 9745939 9742476 9727139 9745083 9755958 9759565 9756568 9769123 9743870 9720713 9762795 9721037 9763387 9724899 9709617 9748141 9748213 9750429 9734464 9733982 9723259 9689497 9733623 9717162 9705680 9731316 9731706 9741564 9736387 9729673 9771950 9715478 9766174 9731567 9672643 9704638 9722551 9737616 9683610 9728581 9716215 9705404 9705039 9717222 9725440 9711021 9707466 9723594 9724784 9727941 9731076 9733608 9695989 9730300 9715183 9756894 9709305 9664552 9756163 9732132 9732610 9703070 9703963 9689409 9695561 9685658 9696673 9678109 9734855 9672801 9704059 9650524 9711100 9692287 9685096 9695612 9712881 9718223 9695057 9723733 9682295 9727300 9737978 9732679 9705904 9729624 9726477 9713320 9709681 9689910 9693142 9700226 9687960 9687421 9730613 9699928 9668628 9668824 9682409 9716390 9693075 9695444 9705556 9711825 9658491 9682749 9714128 9638320 9690088 9706942 9675560 9689156 9733164 9725623 9723546 9724332 9680507 9721818 9628118 9695377 9708700 9701065 9707899 9680096 9687659 9704713 9709094 9702122 9691753 9658660 9685501 9667773 9685542 9685294 9674597 9667441 9663014 9662456 9680360 9681852 9691965 9683607 9685197 9683650 9690525 9649262 9666177 9670875 9659204 9653739 9675857 9696561 9669968 9690515 9675489 9695794 9701726 9688403 9669683 9665192 9687238 9658994 9680160 9675247 9681783 9702773 9719132 9640484 9679009 9657411 9668074 9694083 9694428 9659398 9666501 9682453 9645303 9622083 9685969 9688611 9713962 9632518 9653644 9681697 9676894 9659736 9668767 9670428 9653142 9677922 9640720 9687300 9677940 9653191 9664053 9679808 9683026 9634183 9646621 9636629 9653674 9669584 9658337 9659286 9658416 9659334 9674985 9663386 9639455 9670285 9653358 9665519 9665187 9610583 9646682 9635731 9635851 9630262 9664449 9635608 9640613 9641374 9641201 9654720 9671887 9645029 9626095 9665495 9658586 9653689 9616393 9619651 9652575 9641369 9625729 9674572 9673979 9640963 9642892 9621537 9650712 9648731 9628782 9668761 9609067 9633322 9615648 9674541 9616884 9618382 9676099 9628195 9660729 9655818 9603565 9635177 9655152 9622681 9636823 9629449 9618517 9587087 9633029 9668276 9622972 9604422 9648913 9586195 9610483 9655718 9634692 9648098 9600712 9638254 9647201 9649208 9630028 9590655 9618697 9631903 9631444 9608585 9608140 9619206 9614290 9612222 9578280 9608072 9656808 9655824 9619625 9567733 9615059 9628381 9637176 9614081 9622522 9646420 9585931 9620774 9612613 9605118 9609856 9614673 9637222 9606668 9617347 9622715 9604756 9626671 9621813 9633902 9630306 9624301 9583008 9598708 9606643 9560715 9628296 9631283 9620571 9642361 9593376 9598796 9622790 9576014 9548810 9589777 9629386 9623228 9580379 9586287 9584068 9596175 9623080 9601432 9632392 9621047 9572173 9579242 9571025 9625704 9586439 9598092 9618662 9600555 9594270 9608449 9623552 9585699 9572145 9595019 9583444 9580104 9570837 9609832 9594748 9568950 9578372 9578709 9593626 9580302 9573943 9600300 9580960 9580694 9585663 9554066 9568014 9628387 9581676 9582684 9588670 9562748 9608035 9597092 9579324 9551003 9578549 9605384 9570551 9579395 9569763 9589477 9565477 9550623 9569378 9538239 9574322 9571027 9591594 9538784 9583282 9587791 9593838 9551806 9568442 9580355 9539993 9565096 9583465 9544805 9574988 9560253 9551278 9531603 9539996 9563870 9538414 9537484 9585902 9561751 9589662 9532987 9579549 9563418 9568296 9555022 9559771 9550580 9548011 9554844 9580867 9570933 9543789 9545928 9565840 9567948 9571563 9584304 9547784 9576354 9563624 9572459 9541072 9575432 9588363 9550824 9568944 9587581 9560688 9550576 9538191 9554747 9542953 9536876 9561544 9570998 9518314 9543449 9553986 9526622 9513477 9531349 9546463 9538935 9532654 9558258 9518910 9557346 9550461 9517232 9528037 9536608 9534407 9551935 9538895 9505390 9529983 9552116 9532075 9512958 9534776 9531135 9540282 9529678 9507514 9520148 9542002 9523535 9533477 9557790 9540880 9526015 9536663 9525529 9541612 9535185 9537624 9541910 9547985 9526609 9523632 9512576 9526465 9540025 9538084 9517194 9505088 9537167 9532875 9516168 9514021 9512858 9533215 9535381 9529047 9482188 9521153 9518662 9564137 9516727 9505452 9494427 9502081 9547673 9498439 9551582 9492269 9509851 9539822 9508599 9537137 9541147 9512484 9503021 9482792 9503193 9491629 9488910 9513368 9506795 9491849 9459959 9509779 9451043 9531961 9498113 9546539 9516975 9512058 9485048 9508034 9502234 9514035 9490971 9518695 9465117 9501085 9489784 9512307 9532030 9492182 9529618 9517908 9475054 9495545 9496087 9496779 9499181 9510230 9463159 9502707 9498666 9480581 9518152 9529273 9497382 9478658 9495001 9509634 9493415 9482387 9429925 9520448 9486626 9483810 9501746 9499887 9463072 9496876 9467468 9462633 9481943 9481729 9477096 9484236 9493302 9453376 9488256 9481499 9485438 9448521 9491669 9497614 9500163 9502644 9485555 9500342 9479749 9485987 9482046 9478796 9482819 9479901 9487568 9475317 9485384 9485644 9435090 9486715 9444215 9445456 9470853 9468650 9460146 9457548 9487284 9480882 9492973 9485701 9467327 9442866 9505140 9499492 9426689 9460071 9482057 9473512 9448629 9484357 9482308 9460047 9431714 9424475 9440656 9449100 9468102 9448639 9453139 9475191 9470499 9483397 9415350 9464509 9461883 9455330 9438375 9453541 9454895 9444258 9441260 9440802 9427393 9437558 9441615 9449949 9448710 9478344 9436695 9435356 9462162 9436349 9412669 9415062 9427887 9436671 9454571 9433490 9449195 9435382 9436046 9464714 9453652 9442096 9448464 9445194 9460566 9447478 9407602 9447049 9499370 9468190 9426568 9429204 9465308 9448483 9432477 9427264 9455209 9446535 9440196 9435787 9458642 9427675 9454841 9440958 9398834 9445687 9426967 9448046 9396907 9430691 9428075 9423013 9411023 9433247 9411962 9423369 9412213 9430605 9458108 9403200 9436610 9429539 9435922 9418120 9406581 9458511 9412978 9430256 9372442 9430596 9428001 9447211 9413104 9419467 9381756 9409907 9443975 9420432 9418561 9367383 9440392 9392469 9399174 9432131 9397422 9449345 9451973 9421897 9404416 9394196 9393742 9412053 9438345 9416005 9414477 9429806 9391898 9440879 9420801 9454427 9410256 9441808 9410352 9446062 9422023 9411338 9383299 9385765 9401265 9415911 9428165 9418730 9424494 9415975 9365427 9427532 9400201 9416866 9416262 9424922 9378578 9398690 9385445 9411587 9386800 9409262 9407540 9411092 9418617 9419541 9426906 9403926 9364830 9369405 9383849 9423571 9356168 9418615 9380635 9384327 9409208 9404276 9447531 9394230 9452932 9409767 9397697 9417695 9383254 9409021 9367886 9402307 9365572 9353665 9453664 9383534 9364032 9386782 9426459 9344188 9402718 9382660 9380124 9417893 9394146 9414312 9376324 9369881 9404794 9374499 9404336 9400283 9400314 9401188 9400715 9339180 9372348 9341867 9389918 9414934 9384658 9399176 9388627 9383129 9384507 9366393 9386409 9376879 9389146 9370185 9388686 9362916 9384241 9392025 9383976 9395455 9376141 9425786 9356364 9391066 9342992 9395711 9324282 9350880 9364598 9351853 9365641 9379970 9339918 9349326 9364956 9339101 9365161 9372312 9394515 9389858 9361181 9342157 9389888 9366255 9393643 9375555 9343325 9384539 9352217 9349628 9354357 9356147 9343927 9357875 9344491 9316361 9369301 9363774 9320124 9381104 9383538 9436130 9335281 9356510 9366695 9340391 9340572 9363688 9346961 9385495 9344306 9364053 9364346 9342639 9305850 9355573 9346394 9374340 9365563 9325870 9354151 9349439 9343281 9298427 9368626 9356273 9341230 9358085 9361863 9340030 9343374 9339571 9353013 9336284 9316166 9346080 9347480 9358576 9332026 9334946 9357140 9339141 9333492 9343013 9335974 9347748 9325666 9358344 9329497 9351952 9343748 9385670 9342609 9340995 9342797 9325914 9361311 9298772 9341500 9353635 9378823 9382806 9349565 9356859 9358174 9311448 9343342 9300294 9354764 9330926 9350037 9298662 9290359 9300545 9338605 9294475 9332334 9293676 9322830 9359285 9349878 9303621 9319969 9321507 9351739 9297583 9300925 9330646 9346754 9333288 9319681 9308029 9294863 9328367 9337441 9304254 9305487 9335551 9335882 9301761 9327619 9315779 9320633 9336956 9325951 9305878 9312382 9292396 9317612 9273882 9309603 9330732 9335946 9302481 9308568 9302379 9262460 9308065 9288865 9300765 9319072 9291476 9309735 9299419 9322182 9305654 9291299 9305837 9301093 9313127 9275539 9283609 9284176 9286996 9300970 9300473 9325379 9296404 9309115 9292326 9308521 9265794 9279536 9264902 9313002 9266832 9290411 9286790 9271142 9266602 9318706 9327015 9291878 9288694 9293973 9299159 9266689 9270858 9292614 9305280 9285177 9296989 9319297 9269262 9274641 9300700 9233044 9293101 9304223 9284658 9305697 9282133 9281595 9285186 9293816 9279155 9286987 9276353 9292507 9284000 9279452 9293161 9281190 9261691 9268662 9321753 9236997 9255727 9271330 9295115 9262104 9278168 9275744 9274038 9301669 9279244 9297451 9248187 9281495 9273807 9250646 9283607 9300764 9262757 9261697 9231432 9285875 9274112 9294413 9286854 9290526 9286887 9274084 9255328 9278703 9273923 9260974 9270267 9214434 9255529 9254216 9268120 9254635 9266149 9281648 9280587 9231401 9262816 9240176 9252207 9273992 9266545 9252926 9276380 9255178 9240230 9240470 9255323 9227570 9220322 9257479 9225890 9236104 9269442 9274538 9225079 9247849 9248703 9281482 9250787 9221294 9262143 9258877 9277759 9252060 9242142 9304115 9257989 9233179 9240449 9194927 9256299 9240601 9249877 9233464 9228425 9257032 9258219 9222391 9261633 9232133 9216438 9226771 9229874 9239147 9222488 9223297 9256266 9223200 9235778 9240904 9232297 9210105 9224616 9234579 9216428 9262499 9247230 9232964 9240644 9251776 9252462 9214671 9173409 9233464 9220414 9236696 9209541 9230401 9196469 9201785 9239814 9213166 9210811 9247292 9205007 9249899 9203870 9210158 9199811 9237088 9231953 9232168 9201451 9199630 9227520 9172119 9236760 9249423 9206404 9236343 9216610 9201602 9220537 9204362 9227851 9190384 9232931 9237605 9209706 9215637 9176053 9211923 9204595 9187744 9172128 9201406 9222749 9194291 9196034 9189945 9239029 9190761 9201025 9153338 9190219 9192552 9195748 9173126 9176090 9239669 9213045 9172532 9237304 9193643 9240931 9201988 9221552 9195965 9218494 9210704 9229147 9179532 9185010 9210789 9207019 9189651 9179413 9162334 9214427 9204877 9182956 9201391 9162948 9205929 9221691 9191452 9188954 9214231 9195674 9179097 9192623 9224768 9158815 9212056 9184836 9200505 9198696 9160554 9202629 9201602 9156508 9226788 9191501 9210758 9174503 9146645 9195118 9180819 9192937 9206084 9226218 9186656 9161914 9155094 9204717 9178470 9185530 9213662 9170569 9178642 9170178 9147497 9167724 9169692 9191172 9162424 9191874 9173895 9182499 9161896 9147649 9152066 9135948 9178648 9195149 9165700 9155623 9202734 9177902 9164348 9170928 9177017 9218982 9183524 9168172 9169702 9169670 9169499 9181714 9164984 9143000 9165430 9132710 9136298 9178967 9161673 9166675 9149447 9167661 9161352 9136893 9175478 9157608 9178416 9156653 9158958 9168047 9124613 9120842 9121753 9139402 9148573 9160727 9144740 9097547 9163995 9145840 9147084 9185505 9166937 9141141 9136857 9110137 9156015 9121662 9151645 9115973 9151459 9158964 9110789 9161137 9140155 9122243 9117628 9119552 9161608 9156815 9183722 9125023 9137560 9128632 9143414 9146875 9122907 9124535 9151268 9177717 9126021 9118595 9162855 9137885 9133001 9156013 9168658 9122432 9117017 9158026 9106789 9105066 9102720 9106541 9113537 9127863 9127348 9161121 9131132 9131792 9092893 9140822 9149564 9110603 9105936 9152072 9119360 9115891 9131648 9116187 9139512 9075962 9118971 9113706 9139909 9129072 9126593 9108858 9096646 9108271 9107060 9127268 9135801 9131288 9118717 9100706 9129217 9128351 9129216 9129006 9126100 9104287 9119803 9078667 9121125 9091720 9120086 9066653 9125464 9111185 9139889 9109515 9148344 9088897 9106180 9134889 9099690 9108752 9081754 9065305 9135125 9111396 9103032 9108464 9108774 9080310 9099027 9094949 9074441 9132337 9111035 9084966 9126717 9137015 9143071 9092839 9080104 9101847 9121999 9071310 9116960 9085254 9126608 9087787 9117381 9099948 9104607 9082807 9079446 9098394 9088613 9091485 9105282 9113596 9102258 9115687 9114914 9097062 9116038 9116209 9105958 9085468 9074051 9084451 9098241 9085912 9065733 9073889 9067696 9082096 9072486 9094542 9072934 9047868 9093910 9102056 9127741 9084019 9062161 9097279 9101646 9084928 9097037 9097949 9066300 9087800 9079161 9124041 9081965 9034431 9104445 9090913 9071269 9109180 9120182 9076387 9057047 9099724 9056231 9070280 9059856 9078622 9061948 9053066 9091751 9037567 9078464 9078625 9061759 9036466 9037498 9082426 9062270 9097071 9066619 9064869 9086431 9092899 9083250 9044208 9047680 9122587 9068097 9066957 9073380 9087419 9056456 9068393 9073537 9075612 9033793 9050954 9067577 9100330 9053014 9076881 9066334 9058278 9049600 9034268 9032573 9058381 9059958 9041129 9057375 9041626 9026426 9094083 9035692 9050764 9053096 9077103 9056482 9056140 9068989 9029336 9056265 9063768 9030787 9039633 9036056 9045476 9081098 9050914 9030508 9057038 9049113 9046372 9083797 9055488 9053403 9013634 9082743 9010769 9018967 9078956 9041280 9064799 9015691 9032788 9032814 9060188 9022991 9024845 9044691 9055066 9044254 9064628 9036290 9054550 9040985 9054062 9023279 9053693 9002619 9028874 9034678 8998803 9036978 9045266 9042632 9015035 9035582 8999325 9069028 9035809 9032819 9036703 9014902 9022974 9042892 9018615 9024711 9044289 9025753 9063112 9041102 8973556 9028232 9017779 9029358 8981016 9005518 8995483 9025968 8984131 9015422 9011462 9054837 9008280 9025757 9011871 9042459 9031588 9033142 9033132 9017287 9020181 9026166 9002389 9006060 8981254 9003243 9050719 9002298 9000331 9017414 9036225 8998761 9052144 9005525 8993195 9030230 8990242 9040994 8990986 9018838 9035728 8994835 9034641 9022695 8998936 9028216 8987727 8963483 9004995 8997380 9021269 9057562 9002840 8993778 8973398 8993989 8984941 9018821 8994594 9036812 9027237 8997928 9005958 8992713 8995395 8975987 9006459 8988430 8973183 9014746 9007493 8940771 9003431 8966326 8993151 8995990 8978178 9016734 8987099 8986026 9025907 8998030 8982412 8971400 8970438 8991153 8987545 8971881 9001449 8984208 8987330 8997452 8983680 8999578 9024303 8966674 8976984 8953477 8936235 8970149 9027612 8993621 9011202 8972430 8965963 8971784 8982200 8995647 8989629 8996923 8992921 9009159 8960814 8995056 8983726 8973925 8964760 8993575 8953449 8985363 8972702 8982966 9009363 8994370 8969219 8995790 8967045 8979351 8946987 9010807 8978271 9000930 8990734 8946796 8993210 8997667 8970046 8938087 8978263 8975615 8957748 8970143 8971271 8961578 8932615 8966227 8952791 8952052 8975582 8967458 8951676 8977811 8947778 8964562 8960291 8973111 8962766 8955102 8928378 8954042 8951963 8958495 8969460 8922918 8971031 8991142 8936039 8929418 8945679 8938696 8945510 8939543 8953443 8982030 8971592 8988939 8965569 8962895 8976633 8940790 8951477 8973438 8962878 8917787 8949154 8946110 8948551 8967850 8936555 8992067 8912797 8928430 8973844 8936484 8957381 8922070 8898879 8939671 8944465 8904065 8934675 8919179 8945998 8931223 8894662 8912180 8955336 8924632 8899455 8916131 8925182 8926511 8933975 8930938 8968367 8903862 8951579 8937691 8921645 8914613 8932333 8931589 8910449 8911924 8904158 8949474 8918566 8906918 8934389 8915918 8901463 8954246 8918053 8929071 8929060 8963905 8948130 8898648 8909753 8937224 8929296 8935975 8940341 8916272 8916774 8920773 8935806 8913141 8919894 8943920 8926344 8922119 8928894 8920105 8915738 8905325 8881601 8881760 8936259 8942424 8913225 8947267 8905983 8889276 8893529 8891808 8893758 8935451 8880014 8936602 8921975 8879274 8923794 8861557 8912306 8904808 8916221 8930536 8891865 8907817 8951241 8892809 8916963 8883956 8874967 8880835 8887608 8870140 8898022 8872381 8943574 8900131 8877281 8847233 8905662 8914195 8887325 8911440 8882820 8888776 8911410 8872913 8855597 8862969 8925789 8881396 8920700 8898785 8887426 8888961 8922192 8911343 8882716 8893415 8909051 8914616 8874523 8874568 8938944 8888091 8891707 8872748 8869352 8895518 8912105 8861500 8867652 8912254 8878181 8904215 8910188 8897762 8862518 8878452 8843380 8890096 8845962 8858236 8868723 8867346 8895102 8884827 8869038 8873353 8850367 8863333 8882628 8845459 8864139 8899520 8849416 8889186 8887095 8867996 8882770 8892527 8849897 8891219 8876247 8872032 8891134 8871568 8870798 8837160 8866688 8837742 8860236 8889469 8884134 8865904 8889124 8847081 8835624 8842124 8838729 8855290 8859777 8871094 8873210 8833482 8859267 8866779 8849293 8874386 8872413 8879017 8913174 8859784 8865957 8825124 8844460 8837007 8837194 8860407 8851737 8807471 8916323 8828889 8837345 8850568 8811372 8854104 8830046 8850921 8847161 8873756 8818551 8816515 8860317 8840451 8847839 8849300 8858549 8852103 8833731 8845493 8851742 8823558 8856602 8822392 8793384 8877972 8848619 8823793 8890913 8828428 8829572 8827533 8801726 8823314 8827302 8847378 8838657 8816568 8800872 8875530 8843120 8851817 8833140 8816173 8805784 8852404 8816234 8812375 8823400 8830411 8833315 8851330 8790470 8830318 8828345 8852698 8851303 8785974 8809018 8856335 8813983 8841960 8848279 8809196 8828758 8812433 8853156 8807504 8822826 8809942 8815921 8823425 8820531 8798627 8806132 8840341 8802730 8829508 8813621 8835957 8790213 8845823 8763430 8852064 8838827 8773639 8821006 8801701 8813480 8828252 8781824 8822608 8787074 8826357 8831137 8851917 8808154 8808270 8831801 8837270 8804994 8794767 8792959 8798652 8824381 8806643 8814179 8811862 8770316 8788116 8778964 8812593 8830795 8812683 8783025 8826591 8832146 8796283 8826263 8827979 8852653 8806653 8812332 8832518 8775976 8808422 8797879 8823180 8785367 8777116 8794969 8808504 8800070 8802967 8773144 8839269 8787758 8768276 8768311 8798221 8776933 8786435 8799127 8814646 8788967 8771002 8814903 8810707 8785558 8777148 8779004 8798803 8798078 8792317 8785932 8819364 8776187 8763969 8793347 8821561 8784046 8789453 8758566 8759108 8771010 8765568 8810519 8791590 8812190 8767172 8770925 8767967 8751224 8765760 8786196 8800385 8745058 8805505 8747897 8767863 8780405 8821051 8783304 8740933 8786190 8756348 8755380 8734078 8777378 8781344 8773126 8744665 8767114 8770171 8788924 8779360 8760110 8771803 8763992 8750830 8773830 8769336 8768074 8757542 8738507 8729294 8749530 8743076 8764079 8783222 8753438 8752968 8771031 8762857 8755097 8784869 8757572 8776759 8776165 8774812 8767449 8767216 8755715 8763337 8742112 8758752 8744938 8741318 8738734 8719697 8780487 8762642 8756653 8722523 8780191 8767697 8763855 8753399 8741531 8774102 8746531 8735627 8758270 8772853 8700749 8780576 8780744 8769670 8748588 8762103 8746579 8723082 8721841 8726366 8750892 8762830 8727504 8743306 8749289 8731416 8743202 8747436 8779909 8729343 8724143 8718679 8733446 8764330 8712396 8734362 8745784 8753324 8757096 8713545 8726827 8777168 8742223 8728050 8710643 8731769 8737557 8715127 8735625 8756992 8741734 8714020 8760937 8719207 8734811 8736138 8730191 8720833 8716577 8709782 8706104 8726907 8715470 8721215 8690516 8708403 8721972 8738195 8728726 8793888 8728359 8738673 8725057 8740866 8757631 8739971 8723629 8740568 8725453 8726073 8713308 8696076 8738571 8700031 8713229 8710796 8699092 8698309 8762469 8717890 8697667 8716927 8719576 8745174 8716517 8704102 8706454 8710785 8711641 8692651 8704799 8736790 8675919 8717509 8677666 8714628 8661195 8742961 8718382 8673109 8709751 8700620 8701751 8701305 8667646 8684625 8726569 8686839 8702520 8680797 8685387 8702205 8701805 8748533 8709632 8672369 8728620 8665984 8718451 8695275 8692151 8717710 8676715 8722410 8706178 8708115 8705054 8704950 8669611 8663650 8688846 8706718 8720155 8673933 8703924 8715268 8681272 8738621 8682323 8697446 8716193 8684360 8706477 8667444 8680987 8677836 8670189 8696954 8686118 8689168 8669720 8693216 8688940 8677224 8683258 8670362 8695989 8674741 8683024 8669809 8657464 8703146 8715581 8712630 8653423 8703804 8674229 8643463 8685081 8680199 8670206 8697888 8680677 8662615 8682214 8675675 8683815 8649902 8715639 8685288 8726206 8659938 8664703 8696945 8677075 8672282 8658024 8679661 8675752 8703231 8667561 8687409 8661919 8650723 8682885 8677835 8690472 8664398 8663734 8659493 8671543 8644760 8684925 8655728 8691902 8681498 8668963 8701184 8666480 8687769 8657939 8630659 8669725 8667385 8662804 8686538 8655020 8687309 8655287 8670911 8649222 8670892 8655538 8669612 8689980 8670691 8666071 8646773 8672473 8676965 8668126 8644418 8659347 8652600 8620329 8685910 8658462 8598016 8685307 8671952 8662670 8623977 8659442 8627865 8658674 8663109 8619056 8649933 8675366 8635824 8637831 8675318 8672989 8669753 8671035 8643357 8661763 8662992 8648619 8659762 8640224 8655427 8651214 8606280 8642650 8630454 8688742 8658281 8671377 8659168 8621836 8627969 8658678 8644850 8642758 8658039 8618155 8646482 8641957 8616985 8621353 8646816 8635889 8604321 8618285 8628178 8624999 8645954 8636018 8660489 8624211 8637516 8614686 8648744 8600168 8602758 8637073 8636043 8645223 8611826 8651131 8624749 8621640 8651940 8612342 8634505 8612258 8621658 8614169 8577379 8616868 8599148 8611336 8617192 8583411 8612520 8651795 8622259 8617507 8603121 8612944 8628683 8628046 8588936 8619834 8641238 8621814 8580521 8651166 8606259 8626853 8611495 8589795 8602096 8584193 8601076 8602667 8641815 8604508 8630862 8640951 8649411 8641688 8618278 8608945 8605835 8608014 8631845 8580598 8614477 8606539 8629566 8610118 8618120 8624519 8645933 8583483 8583000 8623293 8581326 8592194 8596643 8612132 8580681 8600335 8611821 8595868 8591257 8598029 8588986 8596908 8579300 8590644 8613283 8628321 8607702 8570072 8587418 8602199 8594188 8627031 8598643 8607537 8604017 8568774 8625125 8601368 8597185 8566513 8620069 8595582 8586301 8551439 8550440 8596897 8581713 8592708 8603487 8582157 8607746 8572801 8594063 8565354 8594962 8579833 8584365 8535196 8580102 8592086 8562737 8574819 8594330 8567910 8565702 8590216 8555678 8589384 8599905 8588505 8552145 8549056 8575236 8560176 8582476 8564031 8559700 8562136 8583302 8571687 8572515 8580870 8562888 8566518 8562673 8556011 8545847 8602991 8542338 8576221 8550509 8542131 8600462 8548700 8578397 8551942 8557940 8587658 8575925 8542432 8572810 8543121 8562452 8586004 8573699 8569427 8538974 8532668 8567746 8551358 8537513 8553987 8564299 8562233 8546983 8551110 8556624 8545591 8564771 8540659 8543754 8546894 8576475 8517044 8574006 8562136 8560149 8556281 8567672 8525470 8527939 8510369 8538452 8553528 8529872 8566020 8505042 8562275 8544568 8575573 8567924 8540779 8517189 8532257 8527780 8573662 8564199 8526350 8567417 8532671 8537363 8557398 8546558 8545147 8548897 8527648 8510891 8533777 8559025 8539661 8539191 8524936 8567531 8505370 8518359 8527808 8521007 8534544 8543097 8513722 8507015 8529721 8509014 8505775 8515582 8515305 8533312 8544920 8522801 8528764 8510695 8506636 8556452 8544215 8498740 8546981 8543482 8496050 8549403 8514581 8529137 8522567 8543584 8524131 8542367 8507346 8544292 8524202 8487166 8545452 8513914 8527279 8539654 8519155 8554436 8527918 8550630 8529240 8506107 8494151 8514851 8470388 8488337 8503626 8521916 8530235 8491079 8513159 8512735 8508007 8507535 8491745 8497279 8505630 8512772 8516715 8545144 8462410 8491138 8535241 8525227 8514820 8503755 8527596 8507064 8524007 8506908 8504622 8514246 8502823 8467941 8499091 8508223 8497905 8525627 8490674 8471462 8498198 8506969 8484247 8476946 8526449 8511151 8479464 8466424 8480029 8455558 8494785 8502287 8522922 8483936 8514552 8534713 8531321 8515583 8474752 8496170 8494816 8485593 8469634 8482977 8504424 8505433 8488831 8490013 8487660 8487554 8486129 8463755 8470709 8515339 8452445 8503803 8511749 8497052 8459356 8473048 8494758 8478908 8479780 8491605 8485698 8513069 8457200 8483390 8515089 8500097 8477401 8467349 8468210 8450971 8488235 8459514 8493203 8482253 8476256 8463629 8490615 8467795 8473094 8441635 8440559 8472735 8463757 8415902 8437062 8487650 8461735 8486695 8495362 8478275 8447459 8495836 8475605 8459368 8481513 8464572 8461847 8489693 8489922 8461241 8471727 8460033 8503840 8456435 8457229 8429728 8475899 8472550 8459318 8473668 8491464 8446112 8474522 8496741 8438709 8472444 8450494 8454672 8433131 8459634 8432799 8503917 8451734 8493412 8439289 8456311 8469432 8457985 8458966 8436578 8452238 8434462 8426327 8426328 8448067 8474104 8434033 8459370 8484661 8430580 8442291 8454902 8488213 8441216 8420593 8466816 8430243 8463039 8441769 8427398 8440453 8447863 8443067 8442590 8433452 8430935 8453241 8445029 8432919 8426996 8438366 8418074 8445388 8447890 8419674 8420114 8441432 8460239 8434295 8459372 8403168 8404476 8442496 8448616 8450861 8454802 8431907 8457590 8438894 8422211 8441341 8437442 8412558 8444153 8437370 8408465 8454549 8427660 8442638 8424648 8445244 8399286 8388007 8419590 8429371 8452236 8422853 8426197 8418460 8416062 8447855 8415981 8452137 8423722 8416016 8430364 8420396 8414932 8409413 8405981 8400465 8457414 8421304 8424361 8419812 8416769 8430886 8402034 8426146 8420469 8387309 8425862 8373621 8429069 8397133 8416437 8417642 8394187 8401754 8428521 8404976 8439395 8410619 8391604 8425891 8407210 8427824 8407673 8372527 8414083 8407691 8440170 8423695 8404975 8393566 8420898 8376539 8403491 8408748 8405050 8364863 8375480 8427401 8403026 8422030 8416440 8435239 8389451 8400831 8381210 8403404 8371251 8403800 8390284 8377299 8414269 8428637 8428210 8373181 8405761 8378462 8416123 8403375 8406825 8390640 8395069 8393505 8399979 8381250 8410481 8404334 8393860 8368591 8365014 8401758 8395505 8375128 8380177 8390673 8415630 8365300 8386173 8366133 8408701 8362864 8389802 8427488 8427784 8369374 8388730 8361479 8411818 8373362 8376579 8358598 8385314 8386445 8371458 8403390 8396085 8346491 8376893 8371639 8375319 8394020 8387311 8396180 8358902 8362960 8375377 8396708 8390468 8345943 8360360 8388053 8382784 8382377 8347839 8384054 8364624 8345408 8373311 8353293 8373988 8325242 8397056 8380375 8352379 8353471 8383844 8348468 8364369 8375079 8380634 8399383 8373473 8374328 8337198 8348356 8371521 8348862 8377500 8395908 8376810 8381703 8366179 8338337 8393184 8374671 8334531 8365028 8334718 8380218 8373699 8368705 8371450 8319531 8349482 8364043 8338495 8390970 8334319 8345951 8370875 8345222 8370985 8360243 8372407 8379406 8334394 8369745 8330914 8362309 8321995 8324495 8332265 8338531 8294212 8349950 8339346 8352191 8352580 8336266 8327589 8334631 8339924 8375940 8333653 8347395 8332050 8288574 8346754 8327236 8349072 8350903 8310189 8324026 8336479 8325467 8346909 8304498 8324877 8338987 8322774 8332222 8299839 8334265 8338808 8334952 8318785 8343713 8336696 8325735 8335791 8342468 8324945 8329586 8348134 8341026 8319763 8329292 8316693 8339162 8349166 8316826 8290841 8300111 8295451 8365596 8320247 8316388 8311566 8349335 8347129 8310285 8319326 8334109 8328503 8334160 8350168 8331701 8311119 8291240 8318961 8290671 8319745 8295110 8318881 8323784 8293127 8332053 8321296 8342775 8291750 8281723 8300791 8310829 8283256 8274906 8324100 8359063 8304943 8342902 8336564 8306153 8340981 8282571 8288460 8310085 8294306 8321103 8310368 8307175 8294136 8321836 8300747 8289934 8295378 8294313 8281621 8293779 8300324 8303367 8321149 8316975 8315611 8301844 8294405 8289046 8325047 8291768 8314522 8273982 8325869 8250593 8318115 8305322 8302568 8293111 8315781 8304469 8276609 8310724 8279116 8281331 8300281 8253530 8291578 8284660 8313808 8269863 8290072 8278819 8271759 8253891 8288777 8308591 8258427 8266150 8294300 8264956 8318671 8297439 8260923 8296381 8285445 8276903 8300087 8253531 8286761 8297563 8270762 8277314 8284518 8300329 8285079 8294888 8288968 8302159 8265541 8250113 8286538 8314279 8267597 8280904 8245574 8277154 8281249 8298640 8284296 8273091 8288799 8264656 8272997 8283125 8271793 8233072 8264888 8278115 8292099 8281129 8274430 8241512 8275603 8298821 8240378 8272480 8288304 8239338 8249727 8303209 8255841 8255579 8270944 8292393 8238607 8275926 8266022 8249559 8258407 8257006 8243235 8246928 8241503 8261239 8241837 8223186 8256024 8285122 8251751 8238174 8252308 8226005 8236229 8224875 8243113 8235021 8216089 8280352 8272479 8241303 8223267 8270928 8267486 8254664 8229521 8280730 8219615 8243566 8236921 8231665 8247840 8235685 8268681 8251170 8260716 8242625 8253925 8244649 8242801 8269065 8241050 8224740 8248958 8237683 8211011 8234736 8286191 8230460 8250798 8250714 8206362 8210216 8235598 8223020 8236480 8240021 8197371 8238409 8258680 8238830 8246594 8240154 8263058 8228285 8221333 8243661 8259581 8196746 8227699 8226815 8245368 8211324 8234151 8255596 8238715 8201005 8227886 8230194 8213669 8193369 8246249 8209139 8228376 8198356 8244749 8197728 8222664 8234135 8230053 8177063 8239330 8256846 8206538 8189601 8218500 8211497 8265786 8210327 8216196 8233721 8184998 8220618 8185877 8208122 8173204 8218284 8201677 8225345 8212257 8197137 8184170 8205827 8207030 8213309 8209560 8213557 8183521 8206644 8244622 8220426 8203609 8215434 8191125 8197630 8188020 8190519 8228194 8190846 8210731 8212863 8176189 8226994 8176705 8116428 8200691 8215264 8223603 8208399 8204756 8142304 8209666 8215757 8238940 8188480 8208643 8219736 8162813 8237680 8181709 8186629 8208711 8205333 8169250 8175623 8198213 8178006 8214705 8201462 8165903 8195504 8193595 8194803 8211798 8198792 8172352 8188816 8214337 8169678 8182176 8177715 8196560 8185581 8133924 8199772 8155071 8176389 8198265 8182764 8179192 8218110 8175232 8195202 8177064 8172657 8188266 8191319 8182195 8173542 8188254 8177406 8166270 8190112 8197160 8199306 8141980 8191062 8158306 8178143 8166129 8187989 8183661 8181143 8169644 8182549 8140075 8147675 8183981 8183688 8173544 8189030 8167235 8153654 8176111 8121027 8175134 8216311 8170132 8165935 8152308 8174718 8182612 8175206 8202306 8173460 8147243 8180062 8141761 8165222 8149486 8167294 8171059 8134546 8153446 8164260 8147190 8166541 8148605 8136430 8140067 8172268 8135863 8144338 8190777 8153347 8158001 8123687 8137963 8133618 8124198 8149891 8138435 8187264 8151932 8137086 8181650 8116884 8169374 8176816 8114087 8131427 8165528 8136618 8132102 8137006 8134024 8150850 8149303 8130695 8118689 8166846 8153350 8146805 8113596 8157594 8162570 8129468 8149367 8123580 8136206 8141156 8132893 8134188 8147335 8120392 8102060 8135887 8123091 8128060 8171298 8129281 8160738 8097687 8146311 8136300 8154528 8143436 8155754 8140237 8145049 8147460 8108193 8142164 8130568 8119388 8149926 8130980 8136681 8145578 8118624 8111104 8139328 8141869 8102706 8118754 8130160 8126224 8117852 8112760 8128796 8134900 8118052 8111254 8118751 8129143 8112125 8093016 8124405 8139965 8098416 8094036 8096814 8133201 8108066 8117642 8136517 8128295 8141813 8095139 8112098 8126788 8116407 8095326 8105467 8143967 8115072 8119468 8124316 8091523 8104418 8104816 8114353 8092990 8064456 8122546 8100056 8091670 8124711 8095068 8113927 8102222 8127410 8122335 8118949 8076474 8131047 8084206 8114194 8093475 8084106 8116399 8086832 8107192 8116583 8094421 8089936 8096807 8121796 8110535 8124703 8091504 8101520 8109567 8105064 8109165 8073067 8093227 8112854 8127107 8093858 8076879 8095682 8056021 8091268 8068138 8120629 8079770 8075684 8113227 8063175 8102028 8085230 8072259 8066952 8055733 8078406 8108048 8106836 8073361 8085613 8092130 8069111 8071970 8103393 8069285 8098426 8031667 8072239 8094008 8074733 8061015 8086579 8040500 8044558 8081702 8074329 8082849 8066507 8085956 8066316 8055299 8074829 8098592 8065787 8041835 8085244 8041940 8068951 8050128 8033187 8047829 8073960 8035467 8065627 8056171 8076345 8053092 8064537 8065177 8079651 8033646 8072289 8094973 8062684 8048929 8046070 8078583 8085240 8059551 8058460 8081739 8023645 8048541 8021546 8032412 8063652 8045337 8053320 8046234 8063527 8037760 8043218 8070302 8045380 8049029 8054590 8026314 8007364 8080175 8059059 8045240 8047756 8044071 8064607 8027497 8064084 8026902 8020334 8046835 8078288 8038550 8054903 8056553 8043912 8053903 8017967 8033412 8064966 8055623 8082126 8045767 8071305 8019962 8051885 8072896 8051655 8060077 8015515 8039099 8027498 8033067 8034475 8033175 8061812 8045955 8012690 8051837 8040628 8018265 8006708 8015294 8031828 7995596 8033927 8018502 8060056 8052473 8043511 8021380 8034374 8031341 8031507 8020546 8011800 8025780 8010347 7995563 8009701 8020947 8023597 8019593 8035014 7999751 8021609 8026188 7987754 8002429 8011692 7977560 8028273 7999886 8028087 8024914 8026831 8016751 8004893 8010870 7989345 7988928 8022192 8012466 8039924 8014842 8031041 8010526 8005729 8021789 8004783 8036987 7984287 8007550 7999079 8013945 7999908 8006816 7998273 8002171 8008677 7994056 7976446 8020343 8008409 8008396 8007273 7987537 7989146 7991940 8029134 8013604 8012037 8008129 7971801 7980323 8023756 7986695 8019513 8008157 7995326 8014654 7985168 8030844 7995118 7995864 8003151 7984699 8000852 7971522 7980800 8009013 8002413 7988912 8033316 7966513 7977865 7986594 8003882 8009013 7986687 8009602 7981936 7995311 8000336 8006003 7982159 7998194 7973235 7983948 7985611 7989881 7991670 7995895 7966948 7916119 7957714 7984128 7964128 8015363 7999298 7997885 7967571 7986395 7972406 7980559 7966844 7945665 7972777 7970098 7968885 7981223 7959555 7939699 7987516 7967568 7959763 7962670 7983036 7984183 7956423 7963681 7988107 7985497 7969192 7991899 7940560 7950629 7939227 7946161 7935227 7977904 7948569 7972266 7997458 7952174 7987499 7965585 7939948 7976270 7957109 7956149 7980298 7962573 7942796 7958009 7950834 7948486 7969073 7951267 7985007 7953942 7950052 7921230 7957379 7965138 7948074 7965352 7978952 7926611 7945897 7948912 7952753 7955820 7971631 7942926 7933608 7935529 7950323 7961745 7974877 7941132 7952146 7942259 7955579 7949438 7948770 7967451 7950571 7915268 7976858 7934859 7947160 7955470 7911824 7937930 7934464 7943366 7959509 7929930 7959435 7936321 7923234 7929845 7946260 7919688 7975616 7955501 7943323 7909473 7938363 7921795 7952139 7926154 7914016 7943169 7955163 7961246 7941934 7952523 7927766 7929451 7942462 7942877 7919994 7923023 7952225 7966428 7934459 7938023 7958213 7906379 7915384 7959071 7938489 7911982 7939685 7940282 7925344 7951284 7926571 7897803 7960887 7930037 7929744 7925825 7911348 7905484 7883714 7906150 7919435 7940229 7914031 7906434 7901687 7890039 7942601 7916520 7927101 7920033 7925306 7887337 7920354 7926146 7916125 7930119 7904590 7924421 7915026 7906242 7938362 7884562 7906098 7921905 7907572 7925083 7914427 7918490 7949514 7892150 7952476 7895779 7912742 7896380 7911194 7945577 7912144 7876486 7913000 7920721 7880029 7904542 7888083 7908999 7876222 7879180 7917720 7904887 7937154 7924282 7851123 7879873 7901071 7897965 7882546 7892915 7896639 7847720 7915703 7899430 7905110 7918356 7896848 7872465 7907590 7910624 7892751 7874479 7859296 7902695 7908586 7853674 7921830 7903084 7887870 7883888 7906226 7921943 7885132 7890966 7908593 7920061 7916152 7873794 7898457 7911516 7884188 7879778 7880930 7899539 7885727 7894988 7909143 7874992 7901702 7914180 7874619 7875775 7948660 7883319 7921356 7871596 7876940 7897874 7862158 7892918 7873122 7911339 7901927 7892285 7854143 7878218 7873291 7876082 7897599 7860051 7881753 7840345 7861368 7892933 7872400 7871673 7864637 7867838 7891864 7888537 7886739 7844628 7868047 7903852 7903013 7849416 7851697 7864254 7855766 7836189 7874847 7858626 7857327 7884478 7867485 7864823 7881839 7834471 7832574 7866770 7872494 7834109 7843501 7861005 7857514 7869214 7896560 7875161 7873660 7872136 7846448 7864897 7856367 7841779 7886302 7901789 7859157 7860146 7828940 7869779 7854901 7875109 7864480 7871649 7846852 7842478 7858743 7860404 7851935 7873238 7877469 7867407 7868438 7849273 7862261 7816556 7839786 7820624 7875728 7825477 7828696 7845192 7827938 7849707 7869617 7851748 7860012 7848214 7857899 7870955 7839024 7876007 7850500 7835635 7878127 7860023 7839385 7843646 7827823 7826933 7813305 7828655 7858351 7839349 7834409 7851085 7841345 7855689 7822102 7836206 7831804 7861338 7816142 7842355 7839093 7851953 7858524 7854306 7858928 7852163 7850769 7844543 7855461 7813336 7817598 7838494 7815562 7804142 7835620 7818226 7828259 7854664 7827839 7831388 7793180 7859230 7847357 7822551 7804415 7855935 7831095 7833652 7834703 7832780 7830750 7845021 7785325 7807300 7808768 7812728 7844925 7797251 7843213 7799836 7785747 7798457 7801153 7809069 7809640 7840991 7808667 7810201 7809356 7830677 7823300 7841282 7751244 7806076 7845590 7846228 7806223 7821008 7844754 7796119 7814921 7789446 7817427 7782918 7826001 7802696 7839109 7807439 7784358 7826358 7816761 7794826 7808946 7806563 7794154 7796594 7812505 7810487 7787793 7793540 7801625 7817949 7815552 7841414 7801600 7776373 7797296 7810824 7804462 7810496 7767844 7826209 7805276 7748358 7746157 7835490 7772934 7768385 7826058 7829113 7809527 7802663 7790650 7760997 7803555 7790048 7777429 7796460 7809488 7790797 7774633 7813854 7763220 7755160 7763355 7820560 7787434 7759672 7800374 7765325 7764253 7774348 7760616 7776930 7781343 7791026 7772471 7806620 7752531 7738671 7782920 7768956 7795733 7763263 7800189 7798813 7776840 7761856 7740753 7768186 7783088 7794459 7794388 7807940 7777405 7784005 7748706 7792760 7754958 7792950 7779943 7773030 7732786 7795762 7787831 7768560 7735701 7783397 7758426 7751851 7748581 7761756 7761399 7741621 7751842 7770604 7742426 7746208 7763128 7777976 7760381 7738030 7766507 7769410 7774102 7762288 7745647 7738755 7780042 7760793 7764041 7755024 7767183 7782532 7784528 7744233 7737022 7759281 7731182 7734350 7767136 7702306 7770734 7759833 7749301 7711927 7772273 7767488 7744418 7762968 7741513 7759662 7731235 7720532 7743820 7743776 7747615 7729626 7742786 7796813 7742932 7733946 7732243 7738495 7729887 7755010 7749259 7771458 7761494 7729167 7715536 7753051 7717063 7720198 7740626 7752984 7700394 7752258 7737128 7736838 7747957 7713505 7756114 7739811 7705500 7736676 7723968 7735250 7753258 7711381 7722842 7713919 7741723 7699919 7732623 7715975 7739757 7702026 7734126 7721657 7736356 7740089 7728523 7769375 7697447 7707791 7737469 7696101 7705800 7751422 7720456 7722016 7715570 7701166 7673554 7718561 7723306 7717237 7736805 7698144 7736558 7729402 7709688 7713553 7720924 7703191 7675128 7737817 7725993 7708539 7701286 7714063 7746467 7732806 7730523 7696951 7683655 7686024 7712653 7703528 7694098 7714800 7732656 7691005 7703260 7700041 7719007 7696314 7708293 7701896 7700443 7693438 7717249 7707349 7714050 7669311 7719079 7687265 7713833 7699011 7705314 7708643 7669907 7686490 7707358 7680402 7663444 7672711 7696010 7695876 7687372 7722324 7672577 7719590 7682483 7695723 7693078 7680126 7698056 7719821 7716630 7678558 7684512 7694046 7693790 7678565 7671832 7658425 7679428 7675988 7670340 7671230 7662544 7683207 7702277 7676555 7690952 7691397 7660571 7653591 7675874 7671038 7712707 7673622 7679669 7664968 7707274 7694773 7675917 7684421 7675229 7666238 7692354 7682476 7662094 7670435 7672736 7658183 7710776 7654717 7668642 7683135 7682136 7710971 7647666 7667172 7654145 7676279 7667997 7669994 7662308 7668773 7688286 7648804 7683604 7655130 7654760 7640935 7635953 7656408 7638059 7672731 7647899 7664157 7679461 7672725 7646145 7675847 7660422 7671768 7687171 7649587 7643509 7662708 7682796 7667317 7621079 7628612 7658024 7666176 7677007 7645437 7671281 7675018 7647587 7674446 7665745 7657974 7646354 7626560 7644296 7623504 7652164 7658475 7654517 7665602 7630672 7656517 7660618 7650228 7651114 7654810 7659142 7669927 7670142 7640155 7641217 7634270 7632816 7652811 7614323 7636824 7621029 7629097 7625857 7630923 7621150 7628181 7657390 7644319 7672533 7614493 7592143 7627737 7662792 7647060 7628793 7662497 7628275 7662981 7659157 7630765 7625121 7656856 7594290 7621889 7629530 7645133 7607424 7645506 7601230 7630590 7643155 7662618 7640608 7630887 7623376 7609472 7651970 7646255 7620375 7635259 7644520 7624366 7639819 7608973 7661739 7616142 7604299 7596325 7638542 7612119 7604713 7623839 7609635 7638983 7631217 7612926 7618952 7614801 7602170 7642042 7588918 7599582 7564522 7633226 7607226 7613756 7605070 7632885 7615246 7656917 7621500 7577520 7600657 7617100 7613378 7616183 7599055 7646548 7633102 7611433 7628011 7596981 7637215 7629802 7604957 7606069 7611030 7609726 7598141 7594470 7622808 7627055 7608124 7595513 7639124 7604793 7625912 7574307 7605886 7608654 7608457 7588643 7614255 7609108 7629318 7581173 7603579 7562275 7584342 7606941 7621670 7612980 7623420 7578274 7588072 7601424 7582125 7590269 7576768 7585339 7583956 7611131 7580028 7566477 7609159 7625023 7614719 7575596 7584951 7600864 7562609 7580930 7600739 7594506 7606594 7630254 7580189 7602697 7602576 7571686 7594194 7550933 7571748 7575480 7569860 7575757 7617127 7580148 7569304 7583061 7573078 7581533 7606607 7557037 7607146 7591635 7608809 7548848 7567104 7578216 7580211 7571186 7554202 7591590 7555990 7557280 7564351 7548892 7586819 7580817 7559681 7576108 7570724 7569512 7569417 7573953 7583877 7556038 7558617 7591483 7555641 7557900 7576548 7567397 7588932 7543955 7556596 7561589 7569827 7545304 7603286 7568959 7587620 7576222 7552868 7549394 7555617 7562283 7566975 7551467 7546879 7541127 7573333 7514542 7571920 7520271 7537695 7552035 7569295 7543524 7552203 7537514 7496411 7576101 7565196 7552342 7548758 7543206 7560095 7522231 7579395 7583553 7551640 7566427 7554362 7585523 7548342 7561901 7526444 7559331 7560107 7528298 7534814 7543391 7544263 7551671 7560184 7539102 7555398 7567950 7521731 7559960 7511011 7548786 7530152 7545975 7553814 7525528 7553859 7534693 7563002 7558710 7566452 7563206 7516601 7546388 7558673 7511592 7550627 7524933 7535600 7510100 7533483 7528468 7523198 7565185 7549223 7528981 7548738 7527882 7541347 7536533 7497975 7500915 7515028 7545460 7507087 7514772 7496602 7501773 7528025 7564213 7505799 7490906 7508030 7532445 7506935 7510602 7499426 7535259 7500722 7506368 7515461 7513466 7544035 7522748 7500558 7493938 7495682 7534429 7492304 7529257 7534408 7513911 7503823 7490496 7486885 7504310 7515844 7521117 7523149 7484148 7518166 7506036 7512019 7488375 7501853 7493593 7501797 7517287 7514640 7513417 7493908 7511857 7487154 7484595 7481941 7499021 7520147 7496584 7512727 7482230 7485541 7529907 7490497 7496421 7515503 7469934 7538769 7514091 7513083 7492233 7496061 7487950 7455341 7461614 7532193 7496523 7478927 7513992 7456642 7458386 7499893 7535417 7456520 7492168 7512251 7459161 7498998 7506886 7489649 7463715 7529199 7476313 7467673 7471166 7461974 7478470 7490971 7470713 7465339 7443018 7490521 7472881 7505734 7510044 7448708 7474987 7486362 7471360 7511210 7461344 7456790 7466780 7442986 7483045 7464902 7469977 7484942 7473328 7495231 7433089 7483525 7502090 7473801 7461098 7453566 7454186 7506811 7477040 7447031 7474272 7413479 7507455 7437343 7492513 7476418 7483878 7451935 7467703 7467530 7490242 7477304 7445956 7489919 7466471 7463519 7464051 7427429 7469676 7470581 7512172 7480246 7438789 7457232 7449444 7464020 7463168 7457633 7451862 7434915 7425347 7442194 7453590 7467449 7462070 7492613 7456661 7457105 7433707 7453643 7438764 7441015 7418088 7461002 7466254 7447843 7449723 7430695 7471150 7416586 7444047 7445414 7453220 7435036 7452747 7437378 7452513 7455071 7435856 7427209 7434792 7443465 7456430 7425704 7459264 7417224 7446134 7426145 7458489 7484761 7439751 7463580 7439754 7458545 7447952 7455628 7404863 7429374 7431053 7431966 7447146 7458465 7454608 7454305 7438310 7410348 7424798 7444943 7427758 7430482 7441110 7420438 7435729 7436195 7408735 7448183 7457265 7368213 7406347 7429454 7385783 7428725 7439880 7425696 7427641 7424431 7423187 7445683 7427388 7430883 7434114 7461319 7394276 7401722 7428012 7417884 7385072 7413465 7397825 7423608 7426753 7421958 7428775 7401960 7430916 7384678 7402147 7371088 7404243 7394916 7421435 7428385 7394966 7410334 7374293 7399680 7417082 7412184 7417472 7400669 7403526 7417376 7399921 7399300 7434250 7373600 7427091 7422708 7412502 7412150 7410145 7367488 7390859 7434901 7412893 7393457 7398425 7414660 7391733 7387423 7406263 7401076 7418071 7404602 7364134 7391529 7386780 7388703 7435642 7414154 7393795 7379428 7379809 7351600 7380508 7350309 7405058 7396760 7372892 7364129 7369714 7395085 7378769 7382746 7370785 7365695 7361515 7386678 7372354 7397731 7389331 7364881 7416294 7366571 7366376 7367020 7378895 7394467 7406118 7371077 7403516 7403224 7383159 7375314 7349042 7360048 7373740 7394767 7366083 7359655 7401606 7387924 7403959 7375385 7404335 7367547 7388064 7351865 7372600 7346726 7394923 7405098 7361405 7401021 7353076 7397878 7346813 7351785 7374156 7368390 7364104 7318673 7407266 7334784 7366483 7309183 7402121 7339849 7364289 7367752 7363330 7346227 7335291 7345493 7353795 7353302 7333050 7362400 7370766 7369412 7353248 7340899 7374860 7315511 7385061 7392917 7351508 7359397 7354935 7339901 7336950 7389733 7366502 7382341 7356055 7357346 7338952 7351673 7355040 7318293 7339002 7341600 7326390 7354601 7303368 7356111 7326536 7337012 7337324 7331112 7340286 7336913 7318631 7350360 7329766 7321985 7340611 7345918 7321844 7333886 7325479 7315740 7321216 7334115 7318985 7338823 7342934 7338042 7331216 7340056 7313123 7328014 7323508 7326831 7300178 7311385 7346287 7333524 7331176 7311230 7314707 7352903 7339352 7306545 7299533 7346776 7344885 7311251 7341062 7311628 7320724 7283263 7301344 7344522 7341838 7345236 7312912 7334590 7290634 7324766 7337553 7306326 7312267 7318367 7297060 7289450 7324399 7316206 7332388 7283704 7276182 7328350 7324109 7293632 7298933 7327471 7310858 7281420 7287055 7299137 7280343 7297008 7316950 7302651 7301819 7285005 7308602 7296891 7297505 7275366 7309512 7281976 7290792 7312766 7278201 7310821 7278759 7256875 7296338 7303618 7324475 7298191 7293923 7291828 7290919 7322356 7258674 7262422 7304690 7277012 7295340 7316872 7264403 7278115 7282820 7317146 7289871 7291104 7310533 7304481 7300335 7315313 7277953 7279318 7267663 7270866 7302998 7263232 7288759 7292168 7294201 7279687 7266251 7287666 7311871 7273342 7276981 7268240 7305468 7272573 7285015 7279858 7237266 7309138 7299030 7282134 7258478 7270654 7252488 7294043 7293622 7240950 7277121 7284546 7278112 7277436 7266242 7262841 7278006 7298654 7271338 7273391 7290784 7286266 7245891 7264763 7267116 7283241 7237331 7242647 7259625 7278105 7290415 7245683 7287928 7267821 7274585 7240113 7255473 7270973 7261993 7270717 7251074 7265099 7257382 7266230 7296394 7277805 7289546 7272599 7273459 7279416 7270878 7229587 7239090 7260029 7279132 7213441 7260223 7233051 7264374 7218614 7260264 7241326 7233713 7219585 7288688 7233450 7252449 7247194 7252742 7253374 7246631 7220502 7260994 7249524 7234260 7221336 7234734 7251401 7253481 7226321 7271637 7224209 7258767 7211345 7240108 7263409 7223074 7250132 7223939 7242629 7238903 7221148 7261103 7256954 7206890 7233696 7232910 7231346 7244762 7251844 7260997 7255808 7223475 7230753 7185771 7236694 7213402 7257303 7228139 7232415 7252746 7210068 7261718 7211721 7206810 7273793 7249619 7230374 7262565 7222857 7262330 7234913 7241322 7234837 7222105 7230987 7195133 7227849 7199467 7244833 7234912 7257202 7230470 7193659 7215620 7210994 7214685 7192073 7198339 7205132 7202769 7243336 7282119 7198470 7219580 7191144 7220793 7187139 7253914 7222252 7218184 7230875 7224221 7232594 7211079 7205241 7202823 7200265 7196178 7231180 7207456 7229506 7211329 7199523 7200447 7220859 7218495 7182883 7209583 7205775 7190980 7194486 7189225 7222845 7214600 7201697 7203549 7191234 7240712 7178651 7176836 7202439 7211234 7194402 7217608 7197317 7190261 7195460 7168167 7209263 7164072 7203073 7174057 7202644 7178729 7219576 7194964 7198376 7162979 7197964 7196772 7213223 7203727 7172049 7198421 7191568 7188977 7200624 7191029 7193090 7195397 7183174 7197281 7187721 7207348 7190378 7191676 7166262 7191114 7163545 7174318 7201603 7186769 7162445 7182457 7173679 7180238 7165684 7155177 7190187 7166843 7179397 7184278 7189294 7172158 7160997 7181412 7166554 7172712 7190604 7214933 7187053 7172915 7190440 7178003 7189694 7171740 7145824 7191351 7173434 7179693 7174881 7196705 7172459 7159887 7170984 7155290 7152940 7197739 7166062 7162414 7156332 7195985 7179290 7173342 7143654 7164050 7161946 7172534 7146873 7144692 7180498 7188337 7148814 7142785 7154362 7154570 7143701 7193518 7152925 7161240 7162265 7153644 7143909 7172864 7158144 7136900 7132198 7145548 7149915 7164696 7155456 7151035 7148329 7178404 7159712 7158863 7140303 7142046 7152388 7162981 7141473 7130406 7149404 7139055 7137417 7130640 7139965 7173700 7149808 7141001 7148032 7123344 7174399 7158398 7176448 7135323 7171050 7119478 7123140 7140036 7126270 7136508 7152622 7170010 7130105 7145587 7124377 7174780 7118143 7167580 7150607 7157009 7174971 7150042 7172875 7137365 7099675 7110250 7154120 7136165 7129646 7125211 7124565 7132424 7136314 7115934 7133631 7144536 7124168 7122098 7126206 7164733 7147561 7135589 7140878 7164577 7160634 7132641 7147652 7154528 7104312 7109709 7118005 7137702 7100976 7139864 7156000 7112756 7125077 7118437 7150562 7129374 7117843 7131294 7119062 7127383 7122802 7129831 7154783 7116347 7116696 7101609 7127477 7092671 7088380 7110512 7107019 7122144 7097908 7138318 7106826 7133984 7135503 7125720 7079657 7130076 7113349 7136263 7097108 7146404 7081108 7113261 7127975 7106111 7134760 7111892 7093901 7108781 7140422 7117373 7127222 7102011 7133636 7145732 7130409 7099410 7116178 7095964 7104164 7115846 7098559 7140281 7095811 7096047 7098542 7114427 7083487 7131844 7101121 7103665 7105697 7137438 7110682 7109969 7093069 7114888 7078764 7084753 7088567 7088991 7110432 7135128 7101674 7098089 7103933 7076166 7105733 7068840 7089278 7094729 7110718 7075140 7083050 7082329 7091148 7097899 7074356 7068079 7098068 7095754 7078155 7104233 7068079 7093639 7062388 7087254 7103791 7116644 7099889 7113296 7082722 7086473 7096409 7080489 7090814 7103998 7110110 7106192 7125430 7053882 7105496 7049118 7090441 7043725 7078256 7101516 7101269 7114369 7055567 7064278 7080773 7054027 7107172 7075441 7061379 7072857 7049343 7088476 7059979 7059857 7072047 7095329 7044591 7063631 7035785 7041811 7093674 7076645 7096552 7089654 7065940 7075805 7041145 7071635 7073727 7081432 7085653 7040064 7043350 7074280 7046293 7055074 7111426 7086595 7088658 7071631 7041128 7093749 7043048 7074731 7072911 7098288 7039527 7060305 7076251 7064682 7066647 7067728 7075784 7072002 7054722 7069616 7050789 7045565 7072430 7025306 7038409 7017593 7062983 7053694 7041114 7038509 7053580 7035034 7073476 7059698 7067190 7069244 7023077 7032341 7034501 7050560 7028432 7056047 7057458 7071186 7052402 7061234 7047576 7040086 7031621 7028562 7046499 7054211 7036254 7052742 7050784 7033482 7049204 7028162 7041350 7011351 7031936 7049676 7040728 7038672 7065904 7004574 7035971 7033994 7035331 7009696 7048878 7060529 7023423 7057403 7024472 7066203 7024195 7049645 7015592 7036402 7059737 7032399 7036470 7025821 7034405 7044897 7047422 7034922 7058373 7027704 6995103 7057779 7023285 7033271 7048922 7044680 7065382 7024930 7012320 7054673 7018543 7036490 7041135 7038624 7015176 7025345 7026686 7016185 7010875 7045387 7028389 7029233 7018023 7019924 7040632 7009686 7032812 7003795 7042090 7041949 7004952 7058845 7025798 7001388 7010484 7029177 6977709 6996153 6998026 7009669 7024403 7030139 7055983 7030417 7075316 7012654 7004063 7008621 7017550 7014966 7007098 7036433 7025055 7029132 7017979 7026080 7016458 6973585 7033402 7015104 7045947 7009243 7008970 7024632 7007782 7004713 7023062 6997138 7023054 7016332 7033375 7004465 7013617 6993524 6999137 6993214 7001714 6998801 6999004 6995602 7024806 6979661 6994293 6994121 6996885 6987982 6976781 7002694 7014226 7013274 6999382 6988593 7003395 7004639 6991764 6973728 6988235 7005044 7029994 6964197 6991085 6985215 6971645 7009383 6981177 6977935 7010488 6999750 6975443 7000358 6993295 6965581 6992655 6978394 7000327 7011415 6993452 6977701 7016542 7016029 6975531 6992996 6980036 6976812 6953603 6943242 7010793 6979873 6992106 6992916 6993087 6980828 7011593 6986686 6946093 7004457 6968608 6983648 6979829 6996806 6973175 6980441 6984745 6975288 6953614 6946197 7000071 6957270 6984739 6938973 6986145 6974264 6981026 6959313 6944032 6961290 6960199 6965288 6987872 6939255 6965541 7001962 6988448 6966224 6966820 6953584 6951895 6978243 6956877 6968442 6970125 6970530 6942279 6923844 6972998 6945877 6995387 6952600 6963380 6932069 6964363 6920853 6965127 6952317 6979975 6952289 6982299 6943565 6956522 6963711 6948804 6947954 6987987 6948567 6927551 6942405 6966617 6938445 6926136 6940911 6945700 6942964 6953613 6937211 6948478 6921931 6926394 6960327 6944692 6965967 6928194 6913727 6952039 6928361 6923456 6971616 6923311 6940109 6951199 6944114 6968496 6947113 6947802 6970472 6940155 6934156 6969766 6952588 6959618 6943521 6960081 6955211 6923192 6954477 6923165 6919616 6963405 6940957 6904954 6948809 6947909 6963302 6943497 6934170 6933745 6929877 6911216 6948519 6967260 6926225 6921310 6922614 6918658 6907146 6934533 6942384 6895999 6911514 6910114 6957263 6945196 6926410 6925848 6931462 6903689 6927974 6924160 6951823 6894999 6928788 6884199 6909404 6896977 6913436 6909053 6917555 6890867 6896156 6895390 6925843 6929363 6926967 6935607 6916190 6906009 6916845 6909759 6927410 6911020 6938131 6916158 6882113 6891504 6919020 6885944 6895477 6902288 6898378 6892875 6883095 6915652 6906878 6913481 6919818 6887750 6922819 6915380 6904909 6918308 6907624 6911844 6908674 6898501 6845793 6910174 6876373 6882561 6910520 6868431 6895054 6883845 6876483 6915861 6903238 6891900 6902906 6895007 6885930 6873447 6914441 6877415 6899354 6838807 6906898 6876101 6874763 6881542 6872916 6900606 6878345 6867174 6891006 6895068 6878202 6893392 6850170 6879499 6885856 6898313 6884882 6859598 6855971 6895822 6863519 6887229 6934114 6860978 6881012 6860010 6905376 6888591 6890514 6858879 6853926 6889040 6879128 6863945 6878187 6867347 6891187 6864911 6873760 6887702 6870048 6891509 6839572 6873271 6860974 6889226 6849033 6892025 6864653 6917114 6845814 6891335 6829786 6860393 6876771 6867137 6854211 6864027 6881083 6886149 6869909 6831084 6868398 6858101 6848399 6853212 6874515 6857076 6839530 6861407 6854788 6842953 6849589 6853595 6860113 6852813 6863282 6855090 6851296 6829987 6832752 6825013 6876558 6910823 6860729 6878695 6881550 6847121 6865223 6849231 6831945 6851740 6835725 6852207 6866898 6838067 6852562 6851371 6834065 6855988 6823627 6846638 6852023 6852291 6850494 6878361 6873442 6865483 6858008 6841445 6854094 6874890 6860397 6820477 6816191 6862173 6847080 6844310 6836870 6839496 6875112 6854405 6841556 6843539 6864533 6839727 6838213 6848296 6816803 6834902 6843825 6839611 6839568 6843082 6860475 6841981 6817369 6823644 6819954 6857933 6862710 6844534 6847747 6853627 6827518 6851501 6853378 6828960 6835023 6829144 6849903 6842376 6865051 6837699 6842899 6811158 6852033 6823769 6835896 6830223 6819841 6836967 6811184 6819372 6847979 6820514 6819033 6788163 6834565 6815099 6807575 6803980 6835524 6843400 6800726 6837123 6826703 6826778 6810345 6823141 6813609 6846301 6810923 6820047 6823385 6824110 6795156 6821657 6836442 6802226 6803853 6824215 6816207 6800929 6840327 6822922 6814644 6820300 6806587 6804470 6811229 6809989 6838604 6826512 6838358 6809292 6803523 6796246 6807782 6834069 6810596 6808049 6812852 6802233 6822751 6818303 6811847 6823444 6804318 6774168 6813637 6813327 6802392 6790546 6806959 6798707 6790658 6808436 6830143 6789391 6831714 6771287 6819071 6831224 6799306 6804662 6805028 6791714 6806985 6802762 6805664 6799777 6783036 6789874 6803359 6798499 6800833 6766566 6777093 6797298 6807032 6768883 6786146 6802380 6781995 6771117 6774518 6772482 6798274 6756521 6795421 6792110 6792894 6776843 6750669 6803233 6783289 6800023 6787294 6782870 6777852 6778865 6785181 6767671 6787731 6769703 6789213 6773358 6790921 6782114 6749241 6791653 6765973 6777879 6772439 6773083 6765875 6798271 6751105 6777933 6765459 6761499 6753179 6762097 6766582 6773748 6765358 6764159 6752118 6783340 6769380 6764353 6761948 6755179 6765042 6749446 6763889 6786960 6775183 6789806 6771746 6777806 6757904 6753409 6767814 6770970 6755656 6766817 6779873 6770805 6792263 6746776 6756811 6765046 6776662 6750618 6758057 6783081 6761948 6770166 6793080 6801410 6761520 6761811 6753475 6776097 6733004 6726502 6776122 6752014 6740004 6758114 6746540 6766052 6775737 6726749 6733890 6756734 6745849 6740567 6753108 6760402 6739440 6748431 6772261 6759160 6754724 6730865 6713730 6763324 6749331 6723285 6762998 6732509 6728201 6727683 6727442 6730389 6775135 6761138 6742934 6700408 6736260 6748442 6728616 6724046 6717804 6737853 6763170 6714597 6734897 6747729 6740318 6715008 6746579 6757595 6728950 6726108 6747336 6712269 6742504 6750768 6755754 6731077 6739730 6749509 6698517 6712542 6708969 6725370 6729954 6714354 6718132 6710602 6742942 6720758 6745101 6720505 6717012 6706228 6751850 6716079 6728819 6724864 6722926 6698500 6737204 6741506 6716864 6721219 6704943 6700961 6728861 6708644 6687196 6723579 6714922 6717881 6692760 6698661 6710039 6732752 6697780 6703149 6707595 6715850 6706103 6707481 6725144 6700301 6679533 6719461 6737775 6697138 6700359 6737023 6710970 6719548 6697104 6713237 6712396 6715144 6687630 6708018 6692589 6698650 6710020 6708633 6695669 6723143 6710978 6703710 6700542 6720325 6701273 6683565 6697681 6688519 6672959 6719692 6690899 6689030 6707772 6703087 6716724 6711800 6674901 6657735 6648288 6685735 6689108 6700490 6679774 6718390 6709815 6697951 6696299 6670257 6677704 6656595 6675716 6699756 6697781 6675461 6694933 6678158 6659502 6723770 6681774 6665731 6709983 6674378 6677749 6671942 6676654 6679321 6663285 6689612 6688506 6669294 6683026 6687305 6650346 6658606 6696631 6679619 6685876 6677468 6687568 6692977 6656449 6690839 6692127 6712761 6699298 6670672 6689323 6656253 6698434 6682814 6693614 6670130 6686609 6691657 6708763 6685538 6668973 6651469 6661743 6687775 6678456 6674851 6680758 6636083 6660941 6668651 6696153 6662961 6660864 6657123 6666545 6685810 6657638 6674695 6675445 6663802 6696819 6677443 6683985 6652947 6663021 6673977 6652690 6655532 6645108 6660531 6651800 6634667 6649460 6668279 6647818 6658640 6670510 6673308 6680959 6637614 6618842 6640243 6657187 6659895 6649150 6662489 6667721 6656130 6649516 6649300 6679205 6651457 6663749 6643839 6640445 6637702 6617828 6647900 6669797 6671426 6609990 6634705 6645214 6633017 6639924 6632058 6640935 6690543 6658084 6647378 6619379 6619309 6621156 6617763 6630118 6652331 6629929 6630347 6638461 6664554 6632603 6649219 6648109 6624014 6635898 6646824 6654019 6642146 6640013 6645071 6633100 6634802 6622109 6622589 6623804 6618264 6653568 6647525 6631104 6620393 6650217 6652448 6637197 6636459 6634970 6635765 6647711 6620039 6620531 6638372 6628955 6625839 6605819 6672560 6617500 6642926 6658203 6625112 6590576 6613424 6612818 6620813 6642068 6604461 6636800 6624925 6619873 6619754 6638131 6622125 6624441 6604714 6574804 6599839 6610889 6610551 6610674 6595174 6618797 6617914 6587140 6603819 6601999 6631244 6628648 6617506 6612181 6614004 6652684 6606152 6624289 6607382 6583434 6599533 6591350 6596733 6604629 6636524 6619216 6593088 6623121 6619186 6597906 6612535 6630523 6613837 6617316 6600785 6598081 6608065 6634156 6589970 6617640 6585244 6600839 6590921 6611365 6591314 6616650 6591607 6607880 6601125 6583598 6601354 6599237 6558576 6615249 6570070 6571816 6590627 6603080 6606407 6596052 6605404 6597822 6591098 6584512 6578850 6565398 6572937 6617376 6568750 6590507 6564917 6581847 6588322 6576837 6563173 6581251 6572906 6578256 6580520 6577773 6573667 6564314 6604242 6560983 6580311 6594377 6605799 6600184 6579793 6572525 6559500 6603466 6608009 6563603 6598687 6577320 6554492 6601652 6584463 6569240 6575818 6547357 6543121 6565246 6556381 6581804 6556746 6590242 6596797 6570696 6527648 6551231 6583751 6564801 6536176 6572124 6586875 6542378 6557024 6562430 6548567 6556503 6571148 6563628 6558083 6569832 6564053 6569210 6554722 6555336 6559911 6559292 6575350 6535130 6572863 6559618 6562482 6540334 6541920 6576751 6526219 6543324 6553391 6530556 6539947 6578795 6558123 6551955 6561883 6571382 6556028 6554727 6549524 6576182 6526107 6531072 6575613 6548665 6585293 6543917 6556185 6564076 6530061 6534461 6531032 6534445 6545853 6561770 6552693 6544289 6515126 6530257 6540997 6535376 6548309 6532593 6525281 6541168 6524632 6558569 6522762 6522921 6536042 6517235 6542839 6532426 6561727 6552235 6542094 6500577 6527024 6552507 6534827 6526719 6523171 6523083 6534146 6523997 6503257 6517930 6565578 6519335 6514734 6522719 6529163 6568761 6540258 6507597 6535380 6493546 6526926 6526102 6532287 6534302 6548158 6524503 6528442 6554605 6525607 6503493 6552233 6480820 6547857 6527061 6518079 6529655 6509869 6520085 6518752 6507629 6529015 6492009 6513827 6511390 6520329 6483473 6505617 6534993 6525625 6517483 6532772 6485614 6513470 6506399 6506241 6493653 6511314 6516032 6492268 6484762 6500955 6496113 6514671 6502953 6535264 6507379 6558581 6520418 6509807 6487262 6507071 6487979 6502152 6504069 6497448 6493078 6513860 6510587 6487740 6502714 6497243 6482846 6480574 6502212 6521550 6498075 6498682 6514781 6477114 6504923 6489751 6505476 6494561 6495407 6486672 6496855 6488860 6466000 6511176 6497739 6515095 6501763 6524043 6485925 6492661 6506128 6493860 6474651 6498614 6494400 6467326 6511221 6500459 6478399 6479136 6486976 6483950 6513100 6487584 6452012 6477381 6456827 6478738 6500797 6446741 6502928 6473890 6473013 6470709 6499789 6477410 6468042 6462347 6468895 6469367 6441159 6467914 6465909 6482220 6484469 6465050 6447549 6466810 6478522 6458961 6477638 6473747 6485480 6465135 6509419 6476488 6450444 6464941 6482014 6459789 6454435 6429600 6480628 6471583 6480723 6470662 6502818 6469705 6457747 6473092 6477248 6453879 6466272 6473115 6446126 6458636 6457125 6481070 6452341 6464284 6489404 6455733 6449660 6451485 6473948 6450069 6422079 6444072 6442944 6486565 6448362 6464022 6489888 6477896 6442577 6477080 6471062 6436533 6438857 6440538 6461621 6446403 6435211 6456020 6459691 6440678 6457061 6467356 6446775 6451486 6439784 6447850 6469505 6459994 6443403 6451631 6469985 6445275 6443634 6431723 6469605 6421602 6459560 6479758 6430326 6475462 6419804 6472482 6452251 6472714 6452230 6396590 6418360 6444433 6451957 6415340 6460642 6404642 6445374 6418867 6451444 6472007 6436176 6423296 6419903 6423784 6418991 6438914 6468971 6419149 6429525 6448404 6409858 6444268 6437906 6404099 6403903 6394848 6434602 6453993 6405229 6430657 6444528 6455220 6421726 6415888 6421661 6451055 6439102 6433860 6406128 6449962 6428815 6430750 6449299 6429965 6422463 6421246 6407778 6385159 6393810 6430012 6426149 6412067 6408732 6424604 6442632 6409733 6417697 6404573 6404783 6429520 6392070 6413230 6412963 6410663 6410696 6409559 6412978 6417371 6426010 6394989 6426658 6418532 6399210 6412554 6391706 6427031 6421955 6410285 6414992 6389646 6416524 6401441 6423712 6417459 6409767 6417208 6417591 6385155 6414316 6418899 6401892 6388828 6405182 6399906 6380071 6427781 6409050 6407070 6409095 6404512 6421152 6410468 6396338 6417428 6418433 6425076 6406067 6413588 6423139 6396544 6369913 6395308 6410398 6418864 6399009 6383068 6404457 6385080 6389834 6399790 6373986 6394949 6378252 6410532 6388044 6390893 6399992 6398350 6419965 6379059 6389422 6392725 6395984 6389994 6406071 6381303 6391546 6373092 6403726 6396539 6386359 6366345 6379958 6388001 6375633 6389317 6378250 6354130 6355687 6369548 6402504 6379091 6338909 6368642 6368955 6410167 6370885 6343464 6409383 6376836 6363123 6369798 6333662 6353841 6381348 6371763 6392420 6394845 6360281 6382428 6387877 6358943 6340151 6369998 6365476 6367524 6364071 6350559 6350210 6325437 6378984 6342697 6358373 6363422 6382098 6373810 6364401 6373945 6364850 6352610 6335522 6384897 6354041 6399615 6340814 6358489 6363504 6366596 6359795 6330028 6377646 6370058 6369296 6400135 6355156 6342378 6371355 6350882 6346442 6368754 6366310 6348518 6367395 6336621 6374129 6364105 6372183 6357796 6355630 6352547 6347372 6338531 6340440 6360438 6325727 6376102 6346301 6354083 6319502 6332597 6374010 6390498 6333952 6343160 6390219 6339578 6368603 6345116 6351645 6342761 6366696 6337560 6367041 6352051 6337297 6330204 6372032 6342501 6344350 6353455 6355379 6340839 6316794 6361820 6357622 6345794 6325795 6325051 6356532 6370443 6333387 6344742 6358657 6363673 6328329 6336453 6352408 6325233 6328730 6335351 6358693 6331548 6352800 6343748 6305537 6331642 6331087 6355858 6325928 6328940 6322186 6313033 6327123 6313986 6350189 6355590 6315866 6360871 6316395 6310541 6341400 6322277 6318391 6310945 6320339 6332509 6331485 6335117 6328217 6329602 6345178 6351843 6352010 6314822 6342250 6321832 6322391 6308727 6334548 6326162 6327200 6356976 6320354 6323030 6337009 6361907 6316179 6313822 6303070 6306385 6337896 6297553 6314544 6343138 6323018 6326696 6302146 6333523 6316283 6339040 6332156 6330502 6322750 6324364 6321253 6308492 6325364 6296917 6331973 6273282 6302572 6316312 6320889 6325301 6299808 6311734 6313215 6311137 6308636 6295491 6307263 6295695 6284422 6315555 6305675 6296717 6287375 6295889 6273592 6324664 6265998 6316659 6280572 6303891 6301667 6310362 6266298 6287191 6293714 6331071 6312897 6310427 6289969 6302789 6295038 6278327 6282953 6279336 6286486 6312893 6269280 6288450 6267163 6300531 6295356 6286504 6272785 6295894 6300552 6270958 6306964 6272468 6303158 6308822 6277100 6281808 6280491 6281106 6276823 6259309 6289296 6266349 6297319 6303594 6289047 6269514 6275050 6270281 6284597 6285418 6283897 6263920 6278311 6323136 6294266 6292004 6285804 6255015 6294394 6287743 6284902 6285273 6306769 6272229 6299733 6255400 6274626 6263744 6271239 6280979 6296730 6258101 6257122 6292592 6266907 6279198 6243011 6277461 6265273 6286079 6259782 6287771 6294127 6271562 6273110 6268805 6250634 6253634 6244873 6297401 6229707 6277976 6271956 6275368 6257658 6239255 6239512 6265358 6290318 6255642 6257718 6251940 6237730 6269766 6290912 6244291 6261406 6276897 6213922 6266587 6249742 6255276 6256054 6259212 6262582 6266195 6268992 6221598 6262520 6257971 6248292 6235135 6240559 6266129 6261064 6225193 6224816 6254046 6233025 6257075 6237389 6234400 6284216 6258679 6267754 6243456 6223043 6229789 6261715 6234161 6235066 6272362 6275478 6297281 6247807 6246359 6229665 6257895 6242453 6244448 6236558 6233581 6251163 6261265 6231402 6220201 6242520 6246431 6252790 6229566 6262222 6243616 6235726 6219393 6234839 6225008 6252278 6227689 6244603 6230451 6235760 6224276 6245991 6216974 6223270 6266586 6227277 6252236 6208890 6250180 6231445 6221959 6233714 6209966 6231918 6225538 6220927 6190528 6217345 6211611 6228826 6236962 6220709 6234849 6240614 6232215 6225542 6194877 6210344 6237953 6260311 6221808 6201307 6220537 6212472 6201741 6220892 6239291 6215353 6220563 6220404 6232317 6241892 6221174 6187275 6216462 6219296 6226483 6214495 6205807 6189102 6228002 6212854 6202384 6242036 6218926 6209823 6230030 6204064 6200857 6209427 6224370 6219933 6194728 6218801 6168094 6201964 6224944 6218668 6227453 6208813 6205937 6199487 6204620 6187015 6195477 6219113 6197858 6182612 6170438 6206899 6220676 6198181 6204318 6192279 6179327 6227727 6204522 6216064 6166578 6206751 6186928 6177120 6193314 6177630 6203490 6208913 6195471 6199730 6178213 6190918 6216464 6186933 6187195 6178975 6166685 6186915 6210194 6188596 6212338 6179377 6203417 6199730 6177120 6183207 6184031 6194446 6184794 6193476 6166442 6203184 6180126 6172699 6211693 6214978 6212151 6188391 6169227 6198395 6175199 6174941 6154306 6194414 6194887 6176327 6196005 6164203 6185652 6182633 6174923 6169831 6165104 6152589 6178765 6160609 6196503 6161031 6184778 6180240 6155503 6157661 6141757 6165341 6179508 6206023 6191034 6161555 6174663 6168930 6142134 6151197 6182313 6179191 6173812 6172798 6175613 6149650 6170222 6167527 6158124 6156684 6167123 6150845 6160675 6188168 6174645 6205736 6151537 6168366 6170369 6164282 6154123 6191791 6179463 6178670 6177839 6181301 6163655 6161871 6183431 6171511 6154350 6167853 6140633 6144269 6181433 6147810 6145647 6163325 6166303 6176113 6182998 6118033 6118209 6136766 6173743 6154318 6126886 6137583 6138229 6134776 6126036 6155903 6118596 6143059 6161546 6138918 6155400 6154748 6137649 6140500 6137612 6142531 6157997 6132703 6126781 6183879 6099570 6133010 6139763 6182772 6154291 6135707 6169274 6147577 6146599 6163759 6162053 6149545 6118870 6118086 6090318 6149947 6116093 6145404 6135162 6145175 6132077 6127688 6160536 6142759 6152445 6112852 6153248 6153858 6131118 6133868 6127753 6128600 6137239 6149054 6107496 6121108 6126982 6120367 6128137 6126870 6100517 6128680 6133384 6096303 6103892 6130993 6147399 6136423 6127115 6121608 6117365 6133184 6117848 6105578 6111613 6142760 6101133 6136480 6156299 6126498 6093784 6125860 6121085 6123647 6130339 6102443 6116912 6115661 6119993 6089092 6127498 6105496 6119572 6123576 6119168 6112257 6113189 6109938 6114003 6113935 6119673 6103305 6117638 6105979 6119795 6129380 6105223 6098436 6084368 6106174 6067634 6134590 6116367 6097302 6106025 6084320 6124481 6078047 6075268 6088070 6077857 6123744 6090696 6120155 6093051 6106411 6065529 6073257 6085532 6084736 6100849 6111048 6098459 6093057 6089041 6102720 6073463 6086208 6086266 6094614 6089841 6094476 6083377 6114152 6076238 6081113 6096645 6090337 6074648 6078615 6100209 6064074 6082702 6107245 6083884 6084227 6092610 6089641 6092414 6066172 6091471 6072953 6088331 6096432 6070238 6097368 6090758 6075454 6082099 6067720 6086903 6085712 6090642 6091995 6089838 6082770 6092668 6083848 6058793 6104914 6074808 6091532 6082459 6090941 6051317 6094534 6071440 6080208 6068716 6083253 6081392 6067506 6068887 6059054 6075704 6084246 6048132 6097805 6077926 6080007 6082065 6080618 6072908 6066547 6073315 6074002 6080340 6040793 6065665 6069537 6054934 6074824 6062849 6071870 6066557 6043475 6052171 6038390 6061922 6064626 6065962 6099731 6086957 6065200 6082749 6051939 6048091 6075777 6042566 6048350 6072054 6073892 6070299 6067211 6047061 6039662 6090972 6072864 6044138 6022019 6060856 6075650 6057710 6053805 6062309 6068343 6061225 6058089 6046264 6081150 6054564 6064014 6055235 6079654 6044626 6085663 6056625 6053700 6046793 6049454 6051848 6054736 6048241 6048328 6050195 6043180 6040644 6059405 6028864 6039880 6019627 6030220 6034261 6040241 6053780 6046907 6047490 6042996 6051504 6049558 6058991 6040201 6040881 6045654 6062437 6024216 6036697 6095772 6025527 6053592 6030176 6042901 6075743 6027574 6023726 6048315 6038156 6052631 6028810 6026373 6051358 6070847 6051240 6069712 6023546 6059695 6027591 6056416 6025168 6025871 5999008 6031002 6036098 6028166 6045556 6018162 6015852 6041393 6027539 6027395 6026291 6029867 6001107 6020785 6049139 6028303 6009963 6034769 6048458 6019733 6022354 6007543 6039008 6033796 5980090 5986467 6030841 6001673 6043162 6030653 6042114 6001896 6010207 6001707 6023952 6020018 6018561 6021332 5994820 6000383 5991204 6037825 6026334 6003486 6001329 6025619 6009775 5996418 5993258 6016537 6008803 6008764 6014981 6021404 5997285 6026063 6020529 5987953 6002193 6015573 5961729 5988224 6005925 5995835 5991697 6001923 5979243 6008150 6035156 5987363 5999824 5994536 5989170 5990059 6004765 5993446 5974665 5980907 6014997 5987019 5991912 6035133 5999036 6037618 6007186 6009984 5993022 5982370 5994867 6012019 6023227 5966302 5995976 5991427 5979569 5970896 5985056 5977200 5987563 5984406 5988275 5979905 6010080 5976367 6000228 5977109 5969125 5975327 5999078 5995797 5973794 5985733 6006738 5980631 6006463 5965316 5968491 5963967 5984781 6009551 6007350 5984928 6019610 5997293 5961713 5999811 5958068 5957340 5952757 5938521 5987748 5968920 5974829 5959048 5974521 5983819 5944117 5969272 5935333 5988974 5963538 5951113 5970660 5994032 5973489 5965940 5972133 5948072 5946777 5951432 5942062 5976732 5978052 5965247 5952113 5967342 5954324 5939187 5975919 5962925 5974765 5969069 5958335 5954741 5953305 5977048 5955627 5944465 5955993 5958778 5940897 5941584 5986622 5963117 5971429 5947184 5981123 5913010 5963177 5972292 5950535 5955547 5959441 5978385 5953951 5970077 5964550 5931486 5971875 5900813 5954830 5940131 5957012 5922319 5924787 5959745 5944246 5918113 5950788 5968706 5942716 5905888 5900514 5929239 5946743 5951235 5954573 5920603 5941574 5917293 5965286 5918820 5956469 5947797 5924252 5924843 5915856 5917717 5909047 5908743 5910586 5891472 5948273 5929479 5914236 5924817 5942243 5913015 5936664 5915115 5922988 5908918 5923291 5929396 5941454 5921631 5938563 5949590 5919764 5939845 5918032 5905843 5946368 5921919 5923797 5932875 5933722 5919698 5907570 5924847 5913926 5900159 5878322 5911448 5935629 5892438 5936374 5926136 5905506 5919449 5918595 5926444 5928169 5910920 5916289 5925517 5888835 5880334 5900996 5909596 5913116 5922477 5909609 5885110 5881857 5897938 5915128 5939575 5887734 5919834 5867462 5905159 5903731 5892501 5908963 5893266 5901491 5874458 5928578 5885320 5921679 5889061 5888065 5898798 5871345 5891845 5880219 5896025 5891110 5885489 5881275 5906469 5913645 5887110 5900978 5885156 5889260 5900107 5878140 5912133 5882376 5904467 5873307 5876979 5906635 5879332 5876060 5887383 5876819 5891060 5905463 5897230 5881829 5864235 5886447 5872702 5884930 5872388 5857480 5901291 5890618 5862483 5872690 5873466 5873472 5854149 5880345 5852863 5858686 5838850 5867535 5883849 5862150 5905115 5877080 5866501 5862670 5856411 5858279 5881222 5864504 5864338 5894179 5873592 5878076 5863024 5850148 5880568 5850403 5880926 5866865 5874410 5863444 5863367 5842100 5844694 5844061 5867134 5866474 5874917 5866124 5846910 5847565 5876695 5871220 5864577 5865812 5872520 5848056 5838130 5852683 5872452 5850014 5867211 5844684 5847294 5873880 5867345 5848069 5863534 5834228 5836971 5856863 5837438 5877568 5851460 5855809 5838207 5859020 5842117 5898966 5834014 5839623 5825778 5831469 5826231 5829792 5829129 5830777 5841456 5844399 5833243 5839354 5815000 5867541 5830043 5864908 5843058 5811158 5858361 5859408 5832892 5841699 5826574 5844922 5836716 5822134 5826824 5842771 5841705 5840362 5844415 5819507 5850242 5833943 5858398 5828656 5840437 5838301 5829081 5838755 5816276 5829557 5816554 5841254 5826310 5849474 5828254 5840847 5814857 5812332 5822277 5833410 5835713 5829462 5820873 5837472 5830469 5834830 5831627 5822257 5835910 5841597 5823230 5823928 5824502 5809929 5793981 5847121 5791119 5824328 5826672 5790023 5794127 5860027 5855164 5815806 5779231 5836708 5816613 5819096 5799157 5836138 5844245 5831677 5803932 5827130 5817151 5798240 5817697 5817384 5809279 5803356 5804049 5816580 5800432 5791158 5762640 5834647 5824077 5796664 5804504 5797368 5830984 5808548 5806723 5797577 5783859 5794936 5817276 5813905 5815440 5817790 5798016 5802185 5785458 5820835 5786760 5798659 5835781 5787597 5790554 5801998 5792003 5815467 5775442 5814328 5800286 5804896 5793758 5764686 5794596 5806674 5782173 5795147 5770558 5799720 5819264 5797694 5772966 5805956 5779448 5812594 5790267 5806625 5803572 5768516 5777652 5778791 5814552 5804460 5803398 5777781 5815312 5788573 5787548 5786350 5787530 5791302 5777483 5767368 5815894 5802762 5811122 5776913 5784486 5786912 5762350 5775712 5741548 5761955 5778689 5755662 5794505 5777692 5793974 5781106 5814893 5786622 5775397 5769048 5772284 5807882 5812759 5787711 5787603 5789591 5779188 5776245 5776491 5749142 5779302 5761933 5781262 5787545 5781255 5752848 5787865 5750662 5786528 5771700 5754794 5762414 5783940 5772713 5755331 5763301 5761580 5780510 5764005 5772555 5754485 5755596 5765812 5795338 5748644 5755391 5756524 5752441 5760655 5756184 5778725 5779817 5760860 5754520 5764700 5732870 5733071 5759323 5739079 5759425 5743118 5735591 5758649 5771981 5753912 5767614 5752345 5735866 5725767 5763098 5743577 5738477 5776354 5773134 5735732 5729759 5743728 5764989 5750913 5769029 5745189 5754744 5758385 5734942 5768815 5748082 5749960 5739741 5738302 5746605 5727211 5731055 5757824 5765629 5748632 5760824 5727401 5743310 5743947 5743472 5773978 5739493 5735425 5740610 5744332 5747445 5738662 5749647 5721348 5739858 5746473 5730819 5721262 5728843 5739248 5731115 5718506 5730319 5725115 5758955 5725537 5739093 5726755 5734488 5706680 5722659 5718468 5721438 5711691 5718678 5704577 5740206 5730528 5718587 5735401 5700876 5714869 5723610 5732686 5716597 5735894 5714599 5736776 5728270 5673396 5704424 5730643 5732372 5741070 5709462 5730524 5701148 5711118 5733038 5706427 5706848 5729578 5716413 5727197 5719354 5723261 5717388 5714084 5726746 5718424 5690076 5717185 5682333 5700823 5711883 5692149 5691852 5685041 5702844 5727616 5686418 5686678 5712461 5704402 5698425 5717602 5715429 5714910 5695813 5692403 5697204 5716322 5675265 5720116 5734472 5704848 5718170 5697808 5708585 5687392 5688729 5679682 5715683 5705336 5693834 5692061 5709473 5678256 5695782 5680563 5711071 5712988 5705119 5703861 5704774 5706543 5697521 5693269 5701120 5700487 5706612 5701041 5709709 5668385 5689652 5701592 5710511 5679264 5686730 5685007 5701286 5674207 5692306 5693005 5696516 5680881 5702294 5702874 5665351 5674562 5673120 5704016 5712678 5682984 5663779 5692287 5685993 5692123 5709257 5687625 5661542 5685795 5699435 5699473 5666725 5675208 5657750 5680201 5658744 5681912 5696396 5682740 5668007 5670510 5651375 5673694 5691389 5646361 5649803 5664615 5676156 5666482 5670702 5665349 5664393 5662783 5660362 5630526 5692020 5642192 5679474 5668964 5679724 5683039 5690912 5649602 5669639 5630105 5679229 5679902 5656911 5670383 5674470 5701746 5666704 5657719 5669174 5682277 5662173 5658109 5667243 5668751 5660771 5666365 5662126 5676040 5646700 5660827 5637075 5631927 5648539 5677255 5675812 5662889 5642854 5636903 5653367 5653039 5673250 5623426 5666147 5655924 5662019 5668645 5657268 5638589 5634937 5622725 5623858 5634829 5658700 5644451 5661673 5639459 5645709 5640855 5648415 5649692 5637469 5662832 5641801 5657737 5621048 5676038 5619363 5633342 5640564 5638951 5679651 5633880 5624482 5645857 5645797 5621575 5629831 5630511 5618022 5626324 5657702 5665889 5638515 5652082 5635327 5634560 5637706 5635625 5651131 5658104 5634314 5628416 5612778 5618489 5625238 5624559 5646282 5649857 5650391 5593816 5628599 5641764 5621731 5627839 5647819 5649144 5619094 5634788 5614474 5611273 5616248 5601964 5618138 5625297 5612473 5605179 5630788 5606793 5619582 5624776 5639962 5600893 5602524 5637785 5612439 5627282 5618804 5616620 5655946 5608733 5626069 5636806 5613328 5619063 5621802 5624299 5616531 5613606 5604666 5575985 5597546 5589135 5620416 5595802 5589764 5608078 5618324 5588655 5607334 5642100 5611382 5612239 5606454 5581146 5610789 5591481 5596955 5590558 5608822 5603946 5612464 5611629 5574349 5586662 5609880 5584072 5642122 5591597 5601356 5599986 5587977 5578282 5585513 5602225 5601043 5568334 5573221 5606874 5613754 5598114 5578133 5586378 5597294 5603142 5584269 5588810 5592984 5577855 5594692 5557625 5593001 5573286 5561842 5583759 5589122 5597349 5571480 5605299 5598299 5612030 5562479 5604975 5583063 5592449 5569680 5587690 5588859 5605860 5582965 5578651 5596423 5560189 5552831 5566558 5557365 5577072 5564242 5574167 5568374 5583303 5603447 5598577 5597482 5594181 5604578 5567678 5588415 5567560 5563889 5585143 5582006 5594885 5598354 5564892 5587161 5589873 5587890 5556194 5558217 5543645 5571141 5566032 5570448 5552239 5589729 5559462 5582030 5588253 5563369 5542858 5553900 5594563 5595881 5577268 5547587 5569466 5561598 5574147 5575060 5552821 5544582 5595241 5563142 5544630 5559308 5594565 5536923 5558939 5551809 5542257 5541509 5568202 5563847 5563063 5560700 5553840 5581103 5535542 5545167 5549756 5542458 5568275 5578105 5572415 5537127 5585450 5543236 5557095 5568947 5549030 5552379 5575544 5564777 5547571 5553648 5556868 5550526 5546646 5539839 5558476 5525888 5529154 5535486 5560155 5562868 5538644 5572089 5573678 5535979 5557447 5544579 5558951 5529919 5554065 5539653 5520688 5560739 5534118 5523233 5570614 5542230 5552911 5543000 5535518 5546517 5536699 5542175 5525431 5534035 5537303 5543086 5540157 5542883 5506022 5537478 5521413 5512270 5512492 5502170 5556986 5537096 5533855 5509060 5543848 5521140 5532426 5536480 5516830 5541086 5511885 5519474 5518561 5522890 5491328 5529642 5495069 5512965 5513992 5489709 5523409 5533439 5520101 5517432 5544247 5486919 5514962 5529158 5508028 5506159 5499631 5526406 5514129 5523484 5503907 5500796 5523927 5537768 5499070 5502102 5497040 5516845 5520793 5515593 5508858 5479481 5534559 5510891 5522706 5493012 5507813 5514175 5513290 5521167 5496297 5501526 5483164 5510241 5521378 5505197 5484271 5513066 5513998 5500794 5469236 5491438 5496186 5477403 5492825 5516451 5500869 5518365 5502868 5501551 5508665 5487795 5509183 5498258 5494994 5509931 5510088 5504037 5504523 5496203 5495068 5462277 5514457 5530050 5486704 5487285 5506378 5508479 5493154 5520091 5507329 5515544 5511962 5481918 5523618 5445157 5496432 5492828 5498773 5491247 5458695 5468755 5484225 5471902 5482719 5502001 5493167 5504003 5471384 5515718 5481388 5488766 5473970 5465602 5460371 5476343 5464890 5473868 5454469 5497673 5459863 5477536 5486777 5483839 5461465 5476916 5497157 5483320 5441514 5491777 5482571 5484571 5466546 5461185 5471651 5474131 5458583 5474223 5455277 5462817 5460019 5508554 5471686 5469454 5486315 5478583 5488323 5474201 5469970 5465975 5468502 5471707 5488858 5469899 5471752 5448894 5468903 5479715 5497156 5449331 5475289 5471575 5457918 5462665 5491112 5437985 5458929 5468468 5461420 5444024 5437910 5472206 5437640 5462168 5454360 5458916 5465026 5465659 5463755 5461837 5446208 5452666 5460469 5469550 5442009 5445576 5444694 5448946 5461809 5461556 5414907 5462176 5452424 5467519 5431557 5446052 5452548 5459460 5434311 5426049 5450908 5462876 5456230 5464422 5429415 5470167 5430912 5422915 5436869 5430290 5422861 5423064 5455310 5450067 5422819 5427683 5429852 5406169 5447280 5424038 5436077 5429407 5404857 5441340 5419967 5456995 5440877 5450462 5385323 5454130 5425862 5417721 5431228 5389913 5434855 5424570 5414321 5455506 5390351 5443532 5427801 5429597 5398441 5420070 5404928 5432819 5417351 5420037 5427555 5434683 5412138 5402480 5412784 5428049 5413716 5393621 5395123 5428254 5426819 5416895 5406295 5450629 5412602 5408159 5421837 5392478 5425123 5422150 5392760 5430563 5393177 5419986 5388033 5430380 5385854 5396893 5406162 5423122 5414268 5411217 5411260 5418316 5411720 5389528 5395260 5399744 5412938 5434270 5388129 5421427 5407555 5425150 5408801 5413093 5389713 5374724 5381834 5414530 5393940 5409517 5387269 5399570 5387294 5413741 5363499 5374046 5404548 5390846 5386949 5385103 5376498 5370480 5397286 5360161 5402278 5405740 5369222 5370154 5400439 5367671 5419560 5412513 5376141 5386466 5366509 5403484 5401960 5363081 5372963 5370275 5367998 5379341 5387836 5359305 5382417 5402524 5358462 5358392 5391387 5374575 5350406 5383934 5399565 5364234 5381927 5421116 5376113 5369656 5379393 5354601 5368982 5385250 5385912 5376433 5393317 5368681 5374751 5390949 5348253 5337606 5385633 5363791 5365054 5353138 5346304 5364787 5384102 5346160 5365197 5377670 5372437 5380139 5365139 5389141 5390882 5365258 5357306 5352632 5374436 5378615 5374127 5358252 5366367 5365557 5366082 5334672 5359384 5353556 5347500 5375338 5381460 5367600 5339764 5348029 5353619 5362735 5320081 5353758 5370634 5380455 5320834 5352895 5350909 5366414 5353938 5385779 5354180 5362412 5354623 5357213 5333246 5341952 5350889 5337468 5348376 5339407 5336938 5353890 5336686 5353931 5345586 5359911 5316722 5365825 5340272 5340531 5367961 5346012 5335298 5337043 5347808 5320839 5359313 5357013 5339278 5321497 5336474 5318993 5337413 5333180 5333221 5306499 5328989 5319143 5344041 5325492 5328899 5325459 5329889 5355520 5306363 5342118 5331478 5337713 5329085 5326668 5313546 5338780 5338503 5343243 5351142 5357587 5354595 5341264 5302881 5349159 5325384 5328854 5336201 5310876 5350265 5331547 5325673 5325401 5331523 5329784 5289904 5345515 5299719 5342107 5358458 5319697 5295780 5355555 5333082 5321276 5324051 5314995 5319696 5343245 5335662 5302713 5331852 5339129 5322603 5289138 5333980 5338752 5280615 5344318 5295819 5319868 5296886 5304662 5288968 5305326 5311015 5300629 5314962 5309227 5312738 5295446 5303460 5292952 5309664 5284750 5298783 5319291 5304456 5289397 5311215 5329819 5327433 5297303 5313149 5315046 5311980 5308070 5297204 5304294 5309375 5294643 5296540 5298340 5301549 5320504 5336713 5310444 5294372 5300217 5306127 5276278 5280880 5296565 5288097 5293009 5298346 5314525 5325784 5259177 5324224 5296478 5280758 5296554 5320186 5300491 5310398 5336302 5273991 5303783 5289008 5305786 5293694 5259783 5294941 5264052 5302084 5275920 5296160 5277384 5300585 5298094 5264082 5293090 5328999 5323545 5302365 5308159 5294573 5274229 5317932 5291521 5290368 5288183 5270331 5285614 5274828 5289998 5280713 5284402 5281373 5304029 5292996 5273872 5295670 5299071 5291471 5289389 5278193 5260312 5272764 5269865 5305121 5280463 5262043 5285275 5271521 5288234 5268739 5290017 5278817 5282370 5269476 5274560 5256761 5300256 5261928 5260660 5266313 5300388 5262788 5270794 5274093 5248207 5284255 5252336 5269543 5255929 5260815 5247588 5259355 5275587 5264757 5264987 5280598 5237966 5265477 5257620 5245811 5268016 5249876 5261364 5273529 5294935 5264363 5263161 5244250 5257293 5251982 5280471 5274060 5282069 5251669 5261445 5250366 5275626 5225460 5258588 5238378 5258926 5256624 5270385 5252108 5271132 5255815 5245975 5252893 5242209 5233502 5275886 5273288 5252860 5254401 5274672 5235857 5243846 5255083 5263595 5250703 5261236 5255496 5228134 5244347 5252480 5255067 5269465 5280693 5249953 5245061 5249082 5235444 5271555 5231407 5244811 5242247 5232103 5241674 5225649 5237804 5223359 5250771 5246282 5230450 5240328 5211077 5221764 5245091 5223402 5227905 5248495 5237165 5228189 5222020 5218892 5228997 5243160 5200206 5233163 5207017 5242008 5229916 5241616 5230952 5237340 5217656 5240898 5211036 5238736 5203302 5224408 5232779 5212415 5228225 5209681 5234922 5224531 5221153 5204343 5211266 5228709 5198499 5194880 5241039 5226617 5224869 5185605 5221833 5228992 5200910 5217519 5225851 5237966 5227428 5199760 5205111 5212615 5240387 5217503 5193348 5223573 5214011 5195206 5238603 5212751 5210963 5204168 5236776 5202202 5229649 5215888 5215093 5226389 5199350 5207130 5198990 5212350 5201937 5222711 5233328 5190859 5221430 5211485 5203454 5209737 5209764 5211948 5204672 5216710 5213976 5232722 5188223 5206705 5198502 5211067 5190528 5186979 5217783 5201377 5216387 5206311 5179051 5189928 5195783 5177576 5191859 5240467 5191251 5189160 5198006 5200732 5181587 5180012 5187708 5211072 5201330 5169572 5203304 5197682 5171661 5179367 5176648 5216205 5191739 5195642 5197093 5193675 5168328 5186401 5201307 5185769 5177397 5195167 5171090 5197356 5168846 5175824 5176050 5209256 5171488 5173760 5202122 5158625 5178042 5169501 5173995 5163729 5162253 5174293 5159107 5192163 5178929 5193446 5186052 5156712 5158325 5168894 5169791 5155961 5182054 5172493 5162992 5153605 5169629 5147390 5185904 5153577 5159767 5184448 5148361 5164126 5144218 5169535 5153612 5171365 5160002 5156507 5191199 5165734 5179610 5159239 5170920 5150146 5165933 5137625 5133275 5161669 5167272 5133647 5160157 5163917 5168307 5163454 5144156 5163714 5148109 5143692 5143034 5154090 5180608 5155118 5167294 5128250 5139161 5121340 5146020 5150330 5153286 5152775 5134406 5145134 5156597 5150819 5151906 5166111 5135188 5137899 5149609 5137123 5153925 5153367 5134997 5142232 5119806 5128110 5114281 5146636 5165163 5119477 5135650 5127852 5129823 5116979 5144280 5145814 5165102 5118285 5118508 5126767 5122331 5141052 5122181 5131224 5129404 5138519 5124944 5128408 5139993 5108951 5145411 5135424 5121497 5112078 5127293 5171510 5133747 5137340 5116987 5134005 5128101 5155536 5148217 5134230 5132633 5120949 5171333 5137504 5135295 5127647 5124869 5140754 5097083 5126306 5119543 5118441 5143034 5107258 5123960 5103186 5112794 5108580 5112417 5124269 5134356 5108789 5127370 5113542 5114367 5109027 5099360 5104983 5115584 5145476 5105573 5098951 5136348 5104863 5116035 5135628 5107529 5091785 5116913 5098484 5078100 5088167 5112917 5103527 5125503 5113632 5122411 5113360 5096370 5139674 5107140 5115911 5101988 5100018 5104203 5080678 5090654 5095464 5114115 5109872 5108405 5094563 5104163 5118373 5085534 5089006 5103199 5087817 5121317 5119404 5089855 5100204 5095979 5092017 5092604 5113201 5081680 5083438 5094910 5092031 5099886 5099059 5092112 5084245 5066374 5081253 5090216 5111452 5125356 5077766 5109603 5081988 5099407 5119893 5076640 5074418 5079276 5092934 5088833 5083900 5067315 5080259 5075487 5109462 5084393 5089660 5075863 5077753 5098147 5086416 5077847 5095752 5079054 5075442 5081834 5084623 5079391 5061763 5087527 5072684 5094541 5063599 5082373 5077374 5075087 5091850 5066639 5063037 5060159 5059422 5086009 5086828 5093325 5082979 5102444 5069102 5053579 5081538 5079845 5069077 5046063 5058912 5086136 5076869 5092730 5054126 5057782 5060175 5056827 5068462 5071328 5055147 5086606 5067474 5058622 5059605 5055496 5070864 5064139 5051717 5060859 5040513 5071668 5040310 5084435 5043984 5054516 5053852 5019385 5035105 5039135 5046879 5039116 5075646 5061037 5037244 5046815 5038811 5073058 5063192 5037446 5080361 5036352 5056037 5041053 5056592 5048107 5058402 5048011 5023173 5056241 5053672 5033254 5047269 5041951 5040571 5043989 5041832 5054271 5039306 5050590 5049799 5035307 5020013 5048819 5044540 5041476 5049518 5036886 5032583 5070495 5059372 5035158 5039110 5029332 5071945 5026075 5005073 5033285 5028420 5026592 5031632 5016378 5027670 5029387 5017516 5021586 5022058 5018396 5026104 5001120 5023298 5026685 5043228 5034379 5020909 5012093 5028115 5004353 5008530 5024939 5014134 5009957 4994599 5041578 5032298 5041388 4982824 5027618 5032039 5012532 5012475 5036117 5009943 5021527 5005304 4998229 5018522 5001539 4996209 5012100 5001470 5020056 4998954 5042481 5028631 5000304 5010193 5003409 5021708 5003797 5002920 5008758 5037842 5003441 4992698 5002052 4984862 5007083 4980764 5021335 5040868 5007483 5011838 4994158 5015182 4994901 5011441 4986753 4988872 4977575 5027465 5007414 5004152 5005533 5004818 4986625 4996449 4985287 5010961 4980358 4988246 4979034 4982058 4997207 5001791 5001371 4974723 4988316 4983024 5010913 5010166 4987790 4991454 4977506 4998327 4957598 4986764 4978996 4979993 4965921 4987013 4972704 4975382 4971699 4988574 4977078 4966679 4979013 4975771 4973846 5005252 4973246 5013902 4981846 4989997 4956192 5012332 4985464 4977708 4970622 4968491 4985493 4980775 4963571 4960514 4982218 4975762 4972968 4973853 4950294 4962576 4961999 4961308 4962731 4942022 4990751 4974109 4952716 4974787 4970117 4951292 4990862 4963249 4938374 4960116 4930986 4954496 4948790 4973919 4975586 4940246 4955952 4946237 4966751 4940520 4962748 4940354 4965989 4977422 4972102 4979156 4957710 4951273 4968143 4944460 4936235 4962825 4950904 4974786 4947584 4962595 4964388 4930440 4941787 4930343 4960520 4942926 4934351 4940772 4961586 4967752 4955523 4946943 4942664 4951297 4923017 4973329 4942813 4938765 4940130 4951886 4970329 4932696 4930962 4952411 4957542 4950863 4940966 4946177 4952833 4942609 4952420 4938647 4933640 4925916 4930163 4915405 4935270 4945847 4930749 4924580 4924684 4946423 4955412 4937990 4926666 4937719 4948172 4940114 4933043 4907817 4940266 4917925 4953670 4937439 4909881 4950626 4932825 4917383 4909417 4920566 4925183 4903715 4942103 4909108 4959519 4926811 4929560 4930776 4913986 4927703 4910448 4921507 4929698 4935184 4925543 4913015 4910770 4905359 4915899 4918659 4927315 4915339 4903766 4947180 4906901 4911415 4943835 4903436 4910162 4926653 4916832 4917908 4920372 4893169 4909341 4916026 4920988 4907973 4898431 4885205 4912184 4901174 4930822 4932661 4891294 4908571 4926338 4893220 4902495 4900005 4913405 4893844 4897494 4900447 4913274 4918760 4899318 4910798 4918798 4912503 4895605 4908051 4902233 4917268 4909004 4904191 4891052 4893248 4890626 4876999 4879910 4885027 4891571 4900441 4911215 4887024 4897261 4883360 4909877 4874706 4885623 4868088 4880844 4903821 4904787 4896801 4893435 4886445 4857273 4887989 4895779 4874620 4890550 4889071 4887598 4895802 4911637 4871547 4875484 4895667 4836949 4890646 4900999 4870881 4872695 4881206 4874210 4883687 4885483 4871142 4883246 4844935 4880785 4873320 4890471 4882937 4857465 4878134 4878328 4876746 4880806 4859713 4866123 4889827 4882118 4847098 4855206 4878728 4880447 4847927 4880845 4878267 4881223 4853940 4862893 4876007 4854048 4859444 4889148 4855409 4863389 4858522 4867241 4890336 4862124 4853142 4847850 4864093 4865982 4864479 4858797 4866430 4851955 4851967 4853157 4857357 4895212 4865066 4856236 4862198 4853871 4856108 4856621 4836280 4858189 4872041 4836393 4860927 4847190 4846678 4838315 4843127 4868034 4869673 4867658 4833141 4836827 4838517 4831352 4864436 4863631 4857702 4832800 4870223 4849251 4815937 4810942 4873278 4828793 4848450 4856862 4858593 4854962 4835593 4815451 4845858 4844450 4851678 4857515 4842314 4833996 4839376 4830136 4850128 4834925 4826517 4838240 4853812 4851299 4863695 4847806 4830451 4825906 4854948 4824666 4856518 4838486 4826763 4850722 4837893 4845192 4849382 4830087 4836606 4827043 4816490 4825829 4848685 4820369 4831116 4831326 4813021 4830456 4819027 4812135 4830104 4839638 4810975 4819138 4806702 4817818 4813493 4813138 4801447 4842247 4822853 4838998 4835217 4802913 4818580 4820352 4830354 4825664 4833166 4817048 4844767 4817434 4823139 4817657 4811804 4840010 4777208 4830055 4832085 4838188 4826916 4835470 4802896 4823388 4808709 4807098 4794827 4817342 4819807 4822194 4810851 4780286 4821894 4817618 4820088 4809888 4812613 4803791 4840849 4802909 4828486 4807477 4806431 4787893 4823002 4811113 4811593 4809128 4781883 4809257 4813800 4811629 4811036 4784426 4803373 4816638 4774838 4797274 4790828 4797755 4791717 4795949 4812899 4796598 4782559 4811825 4787930 4796127 4762877 4791986 4806358 4778323 4801411 4811641 4789568 4770917 4768985 4797388 4787954 4789691 4784493 4778160 4812021 4770821 4754240 4760907 4783311 4812358 4768802 4790733 4785326 4793851 4783901 4806517 4812162 4765833 4772102 4765783 4772190 4757794 4772234 4764884 4761491 4777046 4782937 4783196 4803040 4750703 4781164 4785653 4774679 4764010 4730936 4793870 4797313 4762947 4778290 4754435 4747934 4790305 4772121 4762206 4756419 4776956 4766560 4771931 4757661 4746975 4768593 4788537 4750379 4778928 4744518 4789487 4757610 4762892 4779725 4722426 4774574 4771279 4741232 4760231 4763361 4752394 4739717 4741609 4750607 4796009 4773314 4763667 4749589 4775363 4786870 4763517 4766019 4743732 4760356 4781540 4785502 4756111 4748955 4754945 4767944 4763939 4741952 4769256 4756256 4742026 4718788 4727961 4760808 4741179 4730536 4756292 4780517 4742639 4748224 4746190 4740869 4751748 4768240 4747498 4728728 4725669 4747173 4779125 4747690 4706579 4755518 4772075 4773335 4693210 4717281 4754987 4731170 4746278 4747865 4719739 4745698 4720187 4757364 4755166 4734856 4743582 4734335 4718976 4734166 4727787 4767776 4735476 4738986 4739136 4753940 4739608 4730511 4747636 4735725 4726635 4740390 4727147 4721514 4739297 4731719 4722943 4731620 4695859 4723065 4738477 4738545 4726361 4706074 4732785 4744755 4721078 4738877 4745046 4710197 4708962 4746504 4703268 4742352 4721497 4710151 4724858 4726458 4712369 4709168 4751902 4699660 4730969 4718402 4735198 4720763 4702691 4711846 4744300 4730823 4721923 4706473 4712307 4714631 4711006 4740341 4728695 4717932 4719996 4724629 4727496 4706858 4719291 4736634 4732631 4721635 4727052 4699399 4695980 4720642 4692425 4696919 4688068 4718035 4723812 4728955 4698867 4713628 4696133 4707863 4692856 4713201 4704461 4693499 4714011 4727131 4713588 4692604 4693943 4705205 4672805 4718974 4693324 4691648 4698534 4708952 4708598 4708698 4694485 4701783 4691631 4688883 4687163 4676800 4721234 4718058 4669211 4685065 4693887 4689498 4670066 4697018 4660595 4688229 4691718 4686625 4696792 4672222 4688411 4702312 4694811 4680630 4687575 4685559 4702283 4667347 4676116 4687400 4694330 4710499 4692609 4712889 4680767 4666009 4669907 4675839 4689782 4667520 4697934 4672126 4661073 4661175 4679075 4684638 4668693 4691181 4661846 4679895 4681795 4668982 4687281 4656068 4699597 4671028 4663558 4687951 4665920 4678766 4642495 4684704 4660448 4677562 4681723 4644816 4679783 4662072 4695034 4667245 4678622 4647530 4684922 4635805 4686199 4672225 4654243 4665421 4672871 4669261 4681562 4642680 4640386 4670335 4654119 4689649 4649620 4660538 4664360 4635394 4662309 4662557 4671797 4683033 4636934 4643265 4663408 4655010 4662497 4620981 4680382 4633170 4648274 4651517 4642065 4656860 4663520 4648837 4651790 4650478 4629029 4667456 4654519 4668210 4651227 4644911 4646986 4647687 4656626 4645401 4637028 4662749 4649187 4624387 4660216 4621111 4650167 4643333 4642861 4647893 4625101 4634954 4662664 4620102 4633111 4643295 4653106 4661372 4658761 4644795 4627986 4648163 4632751 4616298 4622870 4613444 4617785 4649024 4620971 4631499 4622884 4637298 4641676 4627291 4620617 4626504 4604222 4608138 4618958 4618460 4625565 4589533 4635642 4633027 4637961 4619866 4610529 4618407 4624158 4620519 4603034 4630752 4596467 4621349 4606202 4626925 4624887 4619594 4647375 4613609 4630423 4630250 4577629 4615307 4621903 4595901 4599872 4637940 4592529 4619892 4596515 4584902 4619928 4618915 4624257 4607267 4592419 4606773 4620755 4602790 4604814 4630837 4637434 4634500 4598813 4607443 4581372 4597859 4595617 4610540 4601602 4616559 4575762 4597154 4599012 4614965 4583274 4603932 4596547 4594040 4598698 4600121 4600331 4616765 4592052 4590769 4595499 4576689 4596533 4581280 4620474 4592092 4612938 4585504 4618197 4592860 4581970 4594170 4604859 4592410 4584376 4612843 4593783 4608350 4592904 4585549 4583034 4604924 4577477 4586576 4590577 4589479 4570873 4567138 4590842 4583814 4597648 4597305 4573957 4576800 4574527 4576992 4603783 4597696 4588221 4580437 4607427 4584741 4586103 4603744 4570357 4581917 4576865 4559020 4572106 4583803 4577930 4584169 4566696 4571730 4602864 4571794 4574905 4580133 4580715 4590167 4586459 4573289 4569544 4592825 4539125 4526519 4550812 4546726 4594743 4567375 4550616 4542213 4575851 4563413 4573818 4573539 4563585 4580699 4572438 4574686 4561122 4578753 4573255 4565452 4560863 4545722 4562695 4563921 4560069 4547975 4555642 4571681 4552914 4546802 4563493 4559874 4560613 4538016 4520010 4535930 4567487 4570184 4578720 4568658 4544561 4554861 4545888 4539050 4564260 4554869 4555011 4551964 4515625 4567544 4560077 4575783 4548237 4532351 4546201 4550104 4553298 4512706 4538229 4550802 4528585 4541814 4521993 4542724 4555471 4550677 4558199 4550098 4529518 4545815 4547049 4521570 4554953 4516391 4546388 4545677 4540035 4537335 4529895 4535410 4536538 4549655 4553610 4558655 4540687 4536460 4557165 4514359 4545509 4535578 4538330 4530518 4524203 4518747 4544707 4527458 4523809 4508425 4527037 4528149 4533334 4530194 4522404 4566160 4522758 4513325 4512100 4514884 4552124 4526761 4527509 4530348 4519211 4537115 4506658 4530162 4519432 4510103 4540306 4525915 4498819 4510687 4534633 4529010 4510296 4493938 4504593 4519801 4511950 4534954 4522846 4520206 4486455 4510639 4513150 4519090 4482455 4521962 4517994 4534245 4512107 4512692 4520390 4507088 4496181 4478257 4515279 4529864 4518852 4507987 4517727 4524907 4489375 4519049 4523810 4475872 4495644 4487469 4505682 4512465 4518796 4497438 4485379 4475536 4496492 4498025 4480045 4500381 4478608 4502269 4493867 4493977 4473835 4503833 4482152 4490785 4484726 4470054 4501934 4471880 4499266 4492824 4501889 4487235 4505471 4486659 4489470 4479744 4464915 4500348 4490900 4496319 4493842 4487139 4499888 4480036 4487208 4497476 4496982 4493601 4488516 4489389 4473764 4477426 4465840 4477357 4467769 4490143 4491033 4478332 4465474 4483088 4465950 4466100 4474526 4473681 4484505 4480817 4472580 4450487 4462120 4465242 4472677 4469802 4484441 4456407 4466189 4468510 4468637 4472605 4478546 4477664 4465776 4487403 4464753 4479263 4462270 4456099 4448237 4457439 4466447 4441809 4458965 4433154 4446924 4451025 4435920 4442227 4452664 4432910 4425586 4465434 4448727 4462614 4443113 4442188 4452254 4460427 4496743 4442475 4445124 4483774 4445930 4450062 4433113 4439195 4450176 4468994 4462050 4445543 4431703 4447663 4436606 4452595 4415110 4448164 4452052 4440022 4447968 4445671 4453802 4460494 4456723 4448247 4457984 4463501 4443906 4441341 4422126 4450149 4426095 4443174 4428000 4431362 4445708 4429978 4448259 4426165 4452735 4438519 4431783 4439267 4417982 4440421 4443130 4445050 4432204 4440550 4429605 4433291 4446231 4430277 4466268 4436231 4462448 4440333 4434622 4450914 4425978 4405539 4432796 4434010 4412520 4426909 4421637 4439006 4424439 4415495 4428078 4443009 4431711 4430517 4439048 4411200 4419116 4417686 4437618 4420699 4410281 4434815 4422635 4421458 4434219 4414790 4401036 4396448 4418129 4400964 4451049 4422316 4414185 4417235 4437867 4426902 4409924 4414998 4430067 4415739 4420431 4402236 4403746 4385654 4417782 4406492 4405618 4415469 4403866 4426279 4398654 4395750 4404870 4422582 4413303 4401298 4390725 4397146 4394706 4391368 4404563 4396585 4407879 4390980 4413557 4391201 4384007 4415430 4406792 4417997 4379463 4389419 4405947 4394557 4414033 4390796 4379241 4394610 4405968 4384872 4386633 4396711 4386804 4411119 4382158 4409053 4377112 4405276 4378030 4384875 4402659 4394272 4412598 4370751 4394327 4373857 4406582 4378495 4385057 4379831 4375475 4376652 4394815 4382433 4376280 4389651 4393353 4398003 4396126 4387585 4375517 4396212 4401704 4390325 4376442 4395328 4374073 4371391 4372613 4379775 4362445 4378277 4374139 4386859 4380123 4367870 4381707 4364835 4368189 4369870 4380990 4370147 4367879 4365898 4378831 4373890 4363062 4377391 4372651 4375145 4376736 4361107 4408655 4356478 4382346 4373732 4353182 4363245 4345100 4388200 4350268 4363044 4375509 4361838 4341281 4378291 4370426 4356054 4383583 4356570 4353782 4378727 4357748 4355361 4358191 4344541 4343061 4377342 4348812 4379776 4325651 4382692 4359851 4376689 4340622 4368074 4358638 4342492 4351926 4341913 4367381 4336319 4366899 4363338 4354088 4340793 4338778 4362208 4355498 4350716 4320692 4350936 4338982 4334145 4352441 4347071 4360691 4354786 4349178 4351144 4351093 4326054 4339142 4357904 4327028 4354115 4336688 4344591 4350238 4339075 4346551 4324569 4358092 4348464 4363796 4337817 4352597 4335872 4343129 4352463 4342490 4320335 4337310 4335224 4324751 4343257 4318025 4325793 4366273 4331620 4326362 4343965 4313936 4329536 4309506 4345190 4338918 4333369 4307667 4369249 4323490 4336352 4358087 4341263 4351119 4334624 4335031 4337965 4325964 4320528 4358914 4329888 4331544 4306066 4333231 4335628 4342490 4331048 4329175 4322481 4311026 4333903 4334978 4355813 4323911 4329203 4340178 4333144 4335051 4315682 4322766 4318181 4316615 4347215 4312445 4334823 4334683 4334171 4320900 4313122 4302990 4332744 4312376 4305247 4336287 4324149 4298153 4337526 4303108 4338932 4313023 4331713 4334060 4319715 4289226 4297652 4324439 4287054 4333938 4293625 4329907 4311993 4319723 4306559 4322202 4310437 4310860 4322143 4316340 4311690 4322224 4317480 4336315 4305026 4330210 4315634 4293459 4297214 4283682 4326109 4320017 4318967 4299131 4270801 4291002 4301712 4281543 4297597 4299977 4287107 4315017 4281957 4317825 4304989 4312109 4302389 4309366 4262459 4301705 4307985 4293663 4311172 4297300 4318654 4301105 4265388 4303425 4299758 4275278 4303217 4307459 4314239 4295158 4309426 4319840 4303350 4289226 4279354 4283884 4287648 4297000 4267957 4303304 4289044 4299709 4258784 4305840 4291978 4265292 4292445 4284107 4257183 4271198 4287264 4282774 4288290 4270407 4297081 4266334 4273599 4271772 4279780 4285256 4287676 4291809 4276669 4287317 4257517 4283238 4270371 4264101 4296229 4272168 4284077 4266685 4268006 4263522 4276257 4267588 4260746 4275685 4256998 4273607 4261782 4279087 4276457 4257223 4263346 4269631 4268211 4250362 4290253 4246688 4262599 4261373 4278875 4289311 4258241 4263217 4280577 4263635 4256825 4230912 4270969 4255019 4251792 4262782 4271028 4234350 4260640 4252797 4240970 4259019 4242380 4249656 4225960 4257851 4240250 4250270 4255992 4251218 4246673 4261891 4244217 4263445 4261080 4246156 4246537 4236216 4247632 4234766 4254046 4249888 4266693 4243328 4242628 4264488 4258534 4264052 4266768 4253087 4244540 4255926 4256131 4244461 4247494 4238878 4264216 4223806 4243620 4222564 4228041 4249554 4232223 4234987 4236791 4229325 4250837 4279168 4233658 4237685 4238134 4261283 4225469 4218270 4251940 4235161 4261519 4236468 4238837 4246794 4217093 4239113 4237696 4235768 4216044 4224172 4253737 4207699 4236612 4224360 4227765 4236774 4212568 4221931 4223123 4240713 4232012 4237564 4217616 4236008 4227536 4217820 4236283 4212652 4233616 4233157 4204405 4214543 4208033 4244531 4206459 4221458 4193961 4192091 4230435 4211163 4219538 4225865 4228845 4231842 4208736 4222680 4208005 4212644 4204898 4209808 4188781 4214590 4190677 4201111 4215709 4214456 4199119 4211415 4215812 4214075 4214802 4196030 4211123 4187201 4216787 4187051 4205564 4213798 4205692 4207373 4196080 4199108 4210988 4192655 4224930 4192472 4200202 4195735 4183802 4170597 4196174 4205753 4191928 4177395 4188708 4180839 4173492 4200845 4194092 4190426 4195538 4199356 4195291 4195379 4178930 4184784 4188110 4172965 4206528 4170054 4184240 4200301 4187616 4187298 4188359 4188026 4197808 4203224 4210965 4174897 4188214 4204898 4160223 4190594 4177589 4190612 4187361 4183407 4164611 4196585 4201852 4186021 4164255 4172661 4181761 4184880 4178333 4177822 4180800 4187634 4168791 4188589 4160219 4171338 4190634 4166497 4168452 4179356 4169722 4180094 4140869 4159233 4155143 4164512 4163229 4175953 4148562 4179093 4146319 4169975 4165086 4175500 4161558 4178953 4161991 4146317 4166721 4167674 4159121 4156498 4152192 4180749 4135959 4156664 4169840 4188401 4159199 4178059 4161454 4167750 4185179 4155420 4161612 4177431 4176119 4163740 4137028 4127546 4141556 4157896 4133567 4145466 4154714 4157359 4141721 4125491 4154260 4166557 4158067 4154567 4143545 4139339 4161050 4150405 4170557 4146571 4139476 4153207 4141807 4131799 4157498 4148430 4152754 4149003 4149575 4105302 4131776 4143088 4145172 4152545 4153553 4130533 4167711 4136290 4131471 4159971 4142779 4142352 4138486 4132572 4129628 4142420 4144846 4130789 4126677 4148379 4138953 4104058 4144546 4137954 4143011 4131894 4163695 4116318 4124539 4141003 4128264 4149414 4147291 4134955 4122419 4125344 4145964 4105273 4141116 4146606 4119019 4128092 4132719 4124103 4148017 4125659 4126354 4149458 4127231 4126148 4109836 4147760 4127095 4114630 4132729 4144771 4133852 4109328 4118511 4119378 4110480 4127388 4104170 4121855 4106030 4125670 4116878 4124942 4136050 4127881 4110931 4127121 4125532 4093097 4113858 4112631 4103121 4120032 4105588 4090588 4091895 4091384 4100207 4119982 4105749 4092571 4121706 4095600 4115117 4128683 4098848 4116200 4094714 4085734 4107598 4115756 4094742 4103683 4100886 4099953 4094544 4087052 4132012 4089780 4095401 4112260 4087086 4091167 4130407 4103160 4116235 4098165 4099747 4090327 4119100 4082698 4106455 4115953 4123875 4101728 4084002 4112176 4107618 4097518 4104733 4118582 4092445 4089718 4084215 4104505 4094290 4100711 4058150 4122387 4060311 4086700 4088444 4104577 4102095 4101150 4092007 4091104 4091885 4099035 4092889 4099180 4074520 4079080 4085689 4073988 4099466 4063457 4090376 4075385 4079598 4080119 4085158 4070340 4103355 4083511 4065196 4089341 4068987 4091672 4080731 4085425 4103889 4088908 4070835 4072204 4064472 4075892 4063803 4063424 4071227 4060519 4082260 4047037 4088198 4078768 4041545 4068074 4087005 4059432 4069747 4057921 4067506 4065023 4073035 4050466 4053249 4073397 4052759 4072370 4062673 4066716 4067942 4086356 4053890 4039111 4060809 4053622 4072566 4041853 4053057 4051936 4055997 4066216 4062515 4061931 4060151 4069033 4045980 4052864 4060149 4034307 4050070 4050752 4035079 4057122 4059472 4029916 4053854 4047639 4067990 4068130 4056740 4056659 4053740 4048344 4043482 4063030 4027387 4048322 4037368 4046561 4079288 4055495 4056818 4066290 4052009 4068994 4049158 4020343 4046266 4030469 4048369 4056403 4053039 4052492 4040751 4050578 4044411 4047862 4020362 4039756 4029352 4064010 4044212 4022116 4042408 4035100 4045641 4024950 4032249 4034343 4046178 4043397 4036412 4042709 4051634 4050964 4045119 4040047 4035742 4051375 4056710 4045960 4041176 4039194 4029062 4021102 4035033 4053474 4008144 4050659 4008942 4029289 4047795 4028733 4014070 4024842 4016198 4017240 4038342 4014766 4047663 4023648 4023601 4018629 4032197 4034437 4027295 4013530 4044568 4007869 4011327 4005087 4024705 4023493 4023740 4004860 4012793 4006345 4017867 3996511 4021883 4005520 3987132 4025896 4005464 4008269 4005615 4025420 3992208 3988772 4008858 4000575 4013511 4017997 4018989 3985009 4009116 3995631 4032972 3999398 3992931 4009563 3999353 3985149 4003382 3989782 4008455 4010542 4002262 3995598 4003048 3987191 3991845 3979832 4003859 4011583 4014279 3985162 4003350 3999536 3978522 4000083 3982893 4007276 3976426 4009916 3964335 3990438 4011697 3993407 3988863 3978014 3992159 3989982 3988881 3981961 3993899 4004196 4006105 3978349 3971251 3958827 3985223 3988473 3987350 3973153 3970786 3986884 3971203 3972722 3993800 3985734 3978443 3985324 3984548 4001393 3967416 3981156 3983474 4005594 3979710 3955989 3954380 3997406 3956372 3981612 3971760 3973609 3982427 3964603 3968952 3985489 3968993 3985807 3975266 3960054 3973221 3957696 3955073 3958123 3954537 3969022 3964558 3971906 3951953 3964516 3975089 3981198 3952827 3963255 3948628 3952893 3933248 3949025 3968717 3962493 3959778 3956841 3941483 3923869 3970656 3953200 3962261 3972481 3966057 3957828 3947953 3944652 3959988 3953246 3972142 3951547 3975975 3950364 3950944 3941143 3966265 3948893 3975952 3941656 3940415 3980976 3959860 3936510 3927768 3976402 3941332 3938819 3946349 3970677 3953236 3942720 3944826 3962770 3946170 3934074 3904521 3964482 3948619 3959964 3918778 3939086 3943643 3953719 3939013 3945675 3936119 3924928 3945641 3950622 3931905 3927807 3915260 3941078 3941478 3912723 3928173 3938382 3929728 3912561 3917935 3929869 3931501 3948358 3914176 3911553 3922577 3918338 3920751 3919092 3916779 3928347 3931064 3931639 3910881 3926607 3937659 3919803 3916569 3923477 3922601 3943799 3905672 3908910 3906254 3928885 3941651 3925974 3928134 3904876 3892368 3939035 3912490 3921583 3916188 3902196 3922377 3913536 3898042 3931439 3905946 3925107 3908844 3901245 3906408 3911106 3892350 3926294 3916287 3914313 3912570 3892741 3908757 3916726 3895588 3894533 3908300 3884817 3905216 3919212 3911415 3900296 3926846 3896101 3890909 3893973 3891229 3917705 3891410 3893929 3903229 3890258 3908211 3892416 3882837 3885891 3897228 3891632 3881661 3873502 3888257 3882554 3887460 3916400 3905643 3908485 3898945 3873068 3905520 3885987 3884976 3881458 3886511 3864760 3891111 3871162 3897685 3883035 3873833 3855508 3900970 3876766 3887413 3886635 3881243 3862444 3872088 3895994 3870174 3861685 3889348 3886350 3897353 3889262 3875511 3905495 3905673 3901972 3883410 3859808 3849193 3855768 3868599 3859611 3879322 3865171 3888772 3847533 3856228 3849767 3883636 3876532 3866005 3878940 3872439 3850749 3880417 3878058 3874581 3869220 3877756 3883983 3861559 3842628 3850386 3866843 3848135 3849003 3865149 3844604 3860387 3870416 3876699 3865662 3852316 3865339 3855820 3865056 3870274 3876150 3880050 3853369 3871526 3864567 3839704 3852105 3869725 3864737 3848195 3854571 3847633 3830022 3859634 3840319 3843531 3860349 3830330 3832113 3846066 3833218 3834954 3843829 3851970 3847195 3833278 3863363 3849824 3839668 3842279 3855560 3830264 3828988 3860889 3854979 3825046 3830655 3859930 3841537 3846043 3839080 3846590 3857171 3839832 3848630 3846809 3837258 3843100 3850768 3860832 3821475 3859574 3847642 3806389 3843377 3836899 3832999 3832793 3828667 3836151 3828950 3829741 3840468 3831369 3836508 3810237 3830186 3846427 3826773 3822609 3832350 3819097 3840317 3820855 3826220 3804979 3836223 3812617 3842158 3830158 3820109 3824338 3814252 3815109 3825063 3818353 3821797 3828158 3819306 3828762 3833016 3818291 3826634 3802772 3836415 3804829 3819372 3822457 3828298 3818321 3830682 3824570 3810727 3824183 3806603 3809515 3822069 3833370 3814905 3786184 3804465 3793990 3828740 3814701 3797898 3811078 3808395 3798399 3788513 3802674 3820206 3813041 3804749 3820558 3791840 3814936 3813413 3776724 3802642 3794200 3794066 3799874 3790707 3790476 3787239 3784727 3785741 3812610 3780962 3813651 3801032 3789939 3786358 3803549 3793362 3790399 3799684 3779768 3796450 3780253 3786575 3787213 3787133 3813172 3774932 3781119 3818213 3783945 3796836 3788439 3796536 3799716 3794343 3773870 3778294 3784778 3767511 3781601 3797461 3784487 3794153 3771651 3790104 3785243 3786658 3791899 3783918 3783567 3792436 3790742 3792691 3776975 3782971 3784019 3789238 3790290 3777154 3799815 3776269 3774766 3792179 3783831 3805718 3763158 3796441 3787187 3780095 3774294 3773919 3775351 3773192 3793114 3785782 3797549 3770617 3750818 3778459 3757724 3772985 3775070 3762565 3757611 3768755 3776705 3763471 3746824 3779293 3756690 3767988 3760409 3783597 3773805 3756900 3779259 3760324 3774568 3774773 3757779 3788779 3762498 3754760 3777906 3741204 3739596 3765076 3763958 3752635 3743680 3760504 3754976 3762839 3742854 3738027 3771608 3758455 3745886 3755785 3746790 3764561 3749353 3757986 3768485 3765248 3757520 3750865 3744472 3771913 3772893 3738271 3768396 3756120 3747735 3749051 3748377 3757876 3759504 3743360 3746719 3749757 3740092 3755652 3750061 3734713 3745691 3746267 3754048 3765652 3752452 3722855 3779233 3740352 3717140 3739500 3756656 3738811 3737560 3740690 3741063 3713732 3747353 3735225 3739135 3740303 3725528 3736581 3755855 3727229 3721148 3729670 3733336 3737043 3738754 3727643 3738521 3713705 3709847 3737535 3732147 3727226 3721476 3709603 3732722 3708739 3713944 3729118 3732249 3736666 3705603 3728602 3727990 3721387 3722990 3714289 3728688 3727702 3751898 3707729 3708125 3740429 3723807 3722320 3735482 3693892 3695779 3723675 3704277 3719150 3704167 3727570 3707747 3711142 3717501 3714023 3705293 3728708 3728044 3692816 3701859 3709267 3703669 3730625 3711073 3708248 3713575 3695991 3707598 3706216 3709258 3713439 3728239 3712058 3734355 3698562 3684199 3718099 3719981 3704146 3703986 3699632 3704263 3703974 3689496 3716933 3699779 3694042 3695499 3684843 3700278 3697664 3681724 3703315 3696587 3695927 3699863 3701903 3688402 3690203 3689176 3689541 3699906 3682566 3701955 3691721 3687551 3702263 3687477 3701366 3702550 3714746 3725898 3720191 3700745 3707232 3696967 3688792 3700677 3689594 3712822 3692529 3705347 3708644 3695871 3682849 3703187 3691644 3659303 3710504 3683502 3685706 3680786 3698794 3689977 3686300 3704247 3671840 3679835 3695961 3666386 3682039 3679716 3673909 3692048 3689190 3670835 3660950 3662239 3669078 3685484 3670208 3669546 3647811 3696756 3676814 3680556 3675790 3677549 3678526 3676037 3676359 3676771 3679319 3650261 3645828 3662993 3693990 3675836 3665488 3680327 3658055 3692149 3633244 3668970 3666519 3646685 3688789 3646163 3656897 3651480 3658748 3679778 3670389 3657827 3656523 3651289 3644429 3649339 3673246 3676971 3652210 3663436 3652220 3650879 3662184 3653252 3652468 3661695 3663938 3651186 3665070 3658620 3654592 3659358 3648226 3648566 3638645 3639263 3640184 3658585 3693541 3641662 3662099 3628546 3663317 3649638 3638403 3638587 3627364 3663540 3644422 3642491 3613927 3634158 3647893 3658640 3639715 3636983 3645817 3650878 3641395 3610792 3633842 3648060 3634108 3625180 3628664 3648872 3643386 3625108 3647473 3627084 3614761 3633292 3619297 3642686 3656633 3636491 3623985 3622229 3623906 3634426 3639306 3637329 3631244 3630765 3637693 3634916 3642767 3625079 3615699 3612802 3623407 3625352 3638186 3609387 3615583 3637587 3638790 3619250 3617511 3616218 3616132 3625919 3615357 3625262 3626695 3630993 3614262 3616783 3616657 3621209 3616205 3617405 3611542 3610687 3619280 3589841 3601993 3600472 3599889 3587641 3614230 3610944 3621564 3611389 3621241 3615481 3587345 3595947 3594322 3588002 3588389 3588100 3602057 3595214 3620271 3605401 3628211 3624885 3637493 3612903 3599115 3591768 3614339 3605168 3590943 3595807 3577614 3569339 3592659 3604063 3580807 3588287 3587715 3591175 3598476 3597344 3577023 3589933 3592590 3575332 3589352 3577382 3591364 3597350 3602099 3600044 3595035 3585106 3574048 3588919 3596246 3582277 3581976 3595254 3600879 3598786 3582233 3591663 3581434 3592237 3587363 3569424 3564080 3590945 3572687 3586974 3596872 3582588 3596636 3552858 3589578 3592617 3607205 3573299 3573076 3570330 3577819 3568011 3571906 3609224 3574966 3580500 3579539 3581898 3568944 3545255 3587018 3575793 3593957 3566188 3567826 3569141 3565670 3565745 3566124 3567159 3574464 3572592 3574415 3559934 3567576 3543216 3568705 3544824 3571424 3550514 3553149 3573444 3558954 3571581 3560698 3570839 3574166 3556440 3560187 3555631 3543579 3566604 3558907 3575481 3574276 3564610 3559288 3564368 3554901 3538324 3552251 3582640 3546073 3567305 3569188 3550684 3554396 3553282 3548260 3573514 3546266 3550256 3539819 3545314 3539920 3543900 3551484 3567190 3547888 3546530 3541436 3539611 3566274 3551897 3570444 3533310 3546537 3557557 3539783 3558676 3545800 3526892 3542829 3534030 3535833 3562256 3542925 3547873 3537463 3554544 3553638 3545976 3510901 3559196 3527728 3526975 3529835 3525739 3536107 3524105 3522800 3537618 3535752 3533238 3536635 3560532 3516398 3547380 3547838 3530607 3545324 3541318 3532252 3506823 3521391 3527793 3540230 3539763 3537750 3534981 3534894 3529087 3522053 3535528 3524690 3532976 3541243 3511419 3518859 3555375 3531398 3528777 3534545 3537806 3514576 3512663 3546285 3530896 3553633 3524850 3520257 3518171 3531295 3532142 3515116 3537228 3524714 3506041 3525623 3501706 3505003 3513703 3522357 3521814 3496528 3539184 3498466 3501306 3514961 3536310 3522491 3517917 3498543 3487685 3510676 3507491 3514039 3517512 3506066 3494702 3544549 3524721 3507398 3527521 3509915 3491574 3497970 3501015 3473241 3500495 3515713 3513008 3516075 3501906 3500704 3504278 3499104 3503821 3504059 3506813 3497181 3515770 3500411 3504324 3494475 3505151 3521449 3504718 3486598 3488363 3491759 3494093 3479565 3496451 3481592 3485776 3492644 3486050 3506405 3498328 3500062 3501532 3470092 3497793 3490264 3500080 3477312 3492962 3495981 3498044 3494334 3483763 3488264 3483401 3482644 3491126 3458411 3481839 3475817 3483562 3506039 3476228 3470856 3495330 3500643 3489752 3495885 3486827 3486332 3451753 3500127 3467210 3471605 3494623 3489121 3483206 3506719 3462993 3488782 3494834 3497654 3493981 3469744 3482682 3464873 3466277 3479670 3484581 3480560 3468286 3466423 3455471 3454877 3476626 3490766 3454961 3464707 3478256 3445992 3467954 3445606 3467424 3451683 3438178 3472710 3443526 3469018 3468335 3469609 3449689 3470785 3492496 3444862 3448513 3465183 3464765 3459257 3459409 3434521 3451285 3480652 3435440 3454312 3464326 3442300 3467578 3456882 3444549 3454904 3460661 3449127 3439699 3462825 3430837 3445307 3452939 3438327 3427290 3451150 3442209 3427563 3448224 3445006 3460854 3441457 3434690 3462016 3450869 3467224 3449021 3437878 3454631 3446539 3450504 3440832 3430701 3438672 3414485 3442608 3418072 3423779 3432196 3430828 3452068 3432164 3410486 3425384 3424319 3423766 3446306 3422285 3423732 3416299 3435392 3415808 3411663 3432900 3423990 3428806 3439691 3414118 3426770 3440124 3425529 3445597 3415815 3435437 3421722 3421072 3415081 3421595 3427339 3443040 3421531 3427762 3424692 3414747 3441669 3409827 3415439 3436357 3433055 3424205 3430070 3430710 3420666 3403906 3421010 3419883 3404335 3423476 3426184 3413815 3415491 3411896 3410035 3411821 3432834 3427417 3413844 3401385 3416215 3411096 3417249 3429395 3423275 3381154 3429991 3426958 3402534 3400083 3422503 3399788 3401281 3422328 3407637 3401022 3384541 3414163 3428621 3408568 3404828 3391314 3389487 3397470 3411094 3398712 3397564 3368552 3402943 3402344 3404706 3409525 3402221 3382491 3376578 3423015 3400018 3390712 3407263 3376003 3421303 3386827 3401325 3413450 3387409 3380484 3426477 3406259 3387253 3396167 3419647 3403511 3398288 3391338 3397608 3377240 3417013 3375066 3383591 3397973 3383507 3367741 3400218 3394075 3382779 3383092 3385735 3396145 3383867 3384010 3378032 3374350 3394968 3389363 3402702 3376429 3391452 3371537 3378502 3373238 3398097 3365642 3387385 3363431 3374838 3389882 3374455 3376140 3384516 3356402 3375242 3379924 3377849 3365465 3376175 3376094 3370062 3383117 3391365 3352783 3367351 3384391 3359696 3373128 3369064 3353987 3371425 3392420 3379067 3374778 3356579 3362522 3366933 3346180 3358880 3375395 3356762 3359185 3353424 3370368 3376618 3393472 3351878 3366797 3366493 3360745 3356583 3353043 3371458 3356680 3345947 3361248 3360013 3354585 3377432 3343029 3347615 3372414 3362745 3349414 3351122 3348406 3346519 3347668 3342180 3363819 3342213 3341242 3353020 3353388 3336609 3343115 3346239 3337193 3360358 3354252 3366216 3347879 3354766 3349025 3365813 3346975 3354014 3375715 3333547 3361312 3347435 3357056 3343596 3336624 3352331 3329696 3333518 3344439 3335683 3343410 3348969 3330731 3353443 3320697 3343426 3350295 3325196 3321353 3344301 3322567 3336397 3345327 3349966 3319874 3333586 3339023 3317307 3348146 3327940 3337170 3330225 3329240 3337310 3305052 3305862 3328769 3328834 3317327 3329992 3338366 3348596 3315431 3321600 3334844 3322589 3318740 3326888 3330825 3319200 3333041 3301340 3322737 3324502 3336182 3306068 3310622 3329884 3310486 3322281 3334988 3310624 3334306 3317998 3323189 3332138 3319615 3315326 3322596 3284165 3327670 3314161 3316739 3302578 3306606 3315511 3303873 3314593 3327111 3312507 3295444 3318865 3298715 3324027 3319640 3312248 3331177 3302690 3319533 3302756 3293904 3290031 3292256 3312004 3311032 3315596 3273212 3300609 3297768 3306240 3285793 3284158 3304465 3314811 3312753 3300659 3280941 3309735 3287227 3307243 3286225 3292216 3284908 3290013 3279233 3299552 3279780 3292872 3291639 3297267 3278200 3298827 3310337 3289676 3279608 3303935 3303875 3296647 3304084 3263045 3290869 3291505 3306208 3287698 3282766 3293185 3275322 3291606 3290745 3295670 3278854 3285385 3291871 3291709 3277625 3281319 3286669 3257603 3272060 3283900 3291679 3283101 3286478 3276312 3278753 3295522 3257343 3266367 3274598 3272918 3260657 3285742 3270481 3255762 3279701 3248369 3258663 3254442 3245828 3267473 3269847 3258446 3255423 3277048 3278437 3264455 3289409 3273573 3249249 3269547 3256759 3275162 3259758 3255291 3259210 3284594 3276667 3242213 3267367 3254639 3253994 3258568 3257098 3250294 3267765 3242736 3254750 3257030 3241348 3259054 3246210 3275210 3267606 3256477 3242875 3254103 3272324 3243061 3242440 3255801 3243109 3245675 3250465 3255935 3245552 3244400 3246520 3252811 3252042 3252981 3224177 3273189 3250471 3231955 3243110 3257254 3242560 3243829 3245164 3247665 3231413 3255005 3245815 3254223 3254723 3241643 3239111 3221060 3238913 3221114 3224021 3231436 3225637 3230603 3243960 3232765 3222151 3240374 3230893 3243488 3235348 3244302 3210782 3224255 3230674 3233310 3224621 3254176 3238428 3220000 3241818 3237764 3214786 3237002 3257791 3216638 3216657 3241538 3236117 3213913 3235698 3226665 3233114 3227242 3222982 3221613 3227108 3225055 3220807 3206850 3240829 3229229 3236949 3232536 3224359 3237752 3216965 3220996 3215707 3203353 3215685 3221282 3215670 3216701 3216974 3199026 3220397 3211216 3216039 3190387 3203278 3216977 3198521 3202663 3198699 3211159 3222261 3192207 3207845 3210964 3215537 3210644 3199604 3191277 3205324 3205234 3196637 3209097 3221709 3185340 3181006 3225886 3192624 3197265 3203280 3220072 3228976 3220021 3214036 3185523 3218104 3207061 3190206 3204593 3172867 3205005 3200549 3219091 3210822 3207122 3198745 3183878 3199252 3186719 3202586 3184633 3197105 3193667 3162485 3190554 3199763 3202728 3172063 3196333 3183096 3184593 3183743 3184700 3180462 3176108 3197863 3179185 3181743 3178901 3184799 3174117 3205149 3188459 3202287 3197242 3169739 3160589 3185743 3174606 3148538 3201766 3172150 3182932 3177128 3181892 3188066 3180703 3191532 3181837 3176397 3162954 3193087 3163886 3184819 3158727 3163896 3179343 3162879 3150155 3154417 3171020 3176929 3176740 3169939 3160310 3164025 3150217 3157836 3160656 3154733 3168955 3171203 3157123 3164648 3165806 3175228 3162752 3152688 3155646 3157447 3160501 3147265 3157836 3179757 3179944 3149403 3163127 3165445 3167523 3174656 3153780 3174792 3151842 3156328 3158529 3145976 3171028 3157886 3157183 3174323 3168344 3121735 3141069 3153794 3152903 3142311 3140176 3138982 3150315 3138307 3148186 3147108 3145268 3140029 3155238 3154542 3141118 3154801 3161395 3147975 3154254 3166942 3156821 3134616 3146606 3162376 3152053 3138672 3154520 3143285 3154472 3127548 3141172 3118420 3136226 3151503 3139007 3129887 3126543 3138988 3139034 3148428 3149395 3116175 3124932 3120863 3128768 3144489 3155005 3146594 3135197 3111630 3147949 3147728 3123354 3125181 3120565 3127748 3141146 3115577 3142580 3122677 3135136 3124740 3131563 3141797 3115644 3133408 3110065 3124361 3114002 3092817 3114395 3116718 3113102 3113808 3143350 3100527 3120230 3111285 3115729 3116617 3112190 3101249 3135905 3120483 3114802 3107384 3118977 3137708 3129531 3109633 3118912 3107053 3139332 3120377 3093696 3115497 3106398 3114471 3109726 3104271 3108614 3130079 3119519 3105975 3119023 3108959 3116635 3118657 3099118 3113376 3108438 3098437 3103949 3110517 3112078 3105412 3114889 3111365 3100340 3094624 3116570 3103715 3103182 3095367 3092237 3106587 3095944 3111863 3098397 3088752 3089091 3101142 3107494 3106427 3097569 3096935 3085138 3092229 3095141 3086471 3097939 3081358 3089421 3112189 3108628 3107751 3079792 3087194 3098083 3084275 3098600 3099145 3099832 3097116 3069595 3091752 3083170 3085360 3101119 3091999 3087039 3092190 3089269 3102653 3091193 3077482 3076505 3060470 3068596 3069000 3073257 3082427 3082434 3087291 3058745 3107078 3077651 3067634 3061046 3067445 3079289 3077689 3079965 3068329 3089436 3074682 3093935 3073485 3069388 3042860 3071665 3081807 3084970 3064150 3057471 3084937 3062895 3082460 3069433 3057878 3054052 3078907 3079439 3056341 3077890 3052538 3040006 3047667 3068807 3057686 3059995 3077058 3046267 3078808 3048176 3066653 3060095 3061126 3048365 3055731 3061009 3051987 3073839 3063408 3047711 3052111 3046963 3078609 3061404 3084890 3038597 3070154 3045012 3064505 3052749 3046555 3066925 3035879 3056472 3054048 3057532 3059315 3056817 3051180 3036216 3052403 3051417 3065489 3045237 3034753 3048587 3039454 3027780 3031494 3035430 3046586 3024809 3046377 3048023 3044720 3040933 3035457 3057786 3031398 3032337 3029951 3033593 3017863 3018670 3046229 3041164 3040168 3033846 3027216 3018095 3020446 3037400 3025011 3047300 2998616 3037831 3044808 3025670 3042313 3017513 3041458 3017747 3033987 3019960 3047831 3039924 3029277 3029983 3018003 3028277 3021975 3029067 3010749 3013761 3033407 3019541 3036167 3013427 3012876 3021925 3020917 3031723 3023933 3028641 3019065 3021292 3009327 3007114 3019426 3025255 3019413 3019480 3004826 2993084 3026441 3019611 3009203 3022960 2992436 3002553 3016907 3028701 2987659 2981971 3015778 3001703 3004895 2993872 3003831 2995993 3005802 3016682 3023220 3010115 2985644 3020855 2976689 3001566 2993799 3015351 3006748 3006751 2998647 3004927 2990739 3008402 2985578 3007166 2993651 2990462 3011980 3017635 3006528 3013386 2986705 3004485 3007499 2989770 2995481 3007799 3015595 2997457 3004911 3001877 2991605 3002163 2980367 2977438 2999773 3001313 2981087 2983393 2997294 2994667 3005922 2981834 3000127 2987587 2993276 2974246 2986652 3004901 2987872 2994588 2985257 2987732 2993681 2982150 2985077 2982723 2976580 2995069 2960044 2958835 2969556 2971839 2981488 2991606 2980966 2985210 2988845 2968958 2982263 2971814 2964174 2983405 2966572 2977195 2973143 2976481 2972531 2957163 2978763 2965911 2975192 2987214 2973925 2980159 2967750 2982182 2971647 2979705 2976349 2978244 2960611 2990624 2941692 2953655 2956263 2961595 2978219 2955891 2978252 2962640 2964354 2974826 2945292 2959192 2968887 2950670 2974557 2980934 2937330 2936639 2970312 2971197 2942665 2945077 2974565 2950308 2955666 2937832 2950594 2926006 2937552 2952210 2959136 2958285 2944758 2955257 2954122 2957146 2962922 2962787 2960679 2957748 2951145 2931783 2935272 2957189 2948598 2950605 2943407 2950904 2928439 2940312 2946190 2934129 2942653 2955458 2942835 2946140 2927055 2954876 2948945 2952126 2942887 2931809 2934975 2938126 2938768 2927037 2927121 2922248 2938229 2952497 2936136 2941452 2934487 2932967 2951828 2931802 2932576 2932038 2923950 2942207 2937062 2936559 2930568 2910825 2926974 2934617 2923120 2947198 2932205 2920919 2911214 2926330 2930852 2931075 2914223 2915254 2932030 2924240 2913770 2942791 2934799 2914179 2921447 2937058 2931681 2932451 2927398 2934825 2908496 2894934 2921207 2907381 2909128 2914936 2903304 2907786 2908928 2910091 2924088 2902051 2922406 2926553 2898063 2923648 2915979 2910176 2919875 2913236 2902729 2929497 2912265 2907419 2896549 2919539 2918583 2903437 2903629 2895975 2902751 2903474 2891695 2897616 2906812 2912673 2905585 2902080 2897788 2884926 2912963 2920150 2894044 2907803 2895477 2894191 2899657 2925346 2898517 2906916 2887708 2889374 2907479 2884255 2882125 2890365 2893457 2905051 2892721 2883722 2911398 2898350 2905458 2893969 2892180 2902901 2877016 2880895 2890671 2904156 2907102 2887701 2895101 2896596 2895842 2890329 2885538 2896299 2881252 2894782 2868612 2875199 2883675 2900499 2900102 2873870 2870607 2902637 2901251 2877162 2887688 2895464 2881544 2905339 2862325 2883276 2877305 2883988 2884235 2862261 2890954 2896975 2888149 2876565 2890734 2886560 2866894 2884457 2872711 2891401 2849959 2866587 2866561 2857086 2869350 2858755 2879175 2865844 2856353 2863385 2857899 2869232 2857014 2857272 2862881 2861390 2859983 2879331 2864583 2859861 2868822 2864085 2886559 2854286 2854088 2864525 2866261 2869388 2829692 2861959 2854906 2874130 2873113 2859805 2876476 2889808 2853965 2849331 2855378 2849955 2876474 2851091 2843781 2856162 2862536 2860878 2849046 2864456 2845268 2830110 2853166 2838659 2847164 2868007 2846859 2852953 2850652 2858057 2861277 2843896 2826814 2819397 2846685 2827315 2866362 2842708 2850567 2832738 2862906 2844679 2846556 2856538 2845887 2846961 2842143 2841059 2836072 2845944 2847997 2837242 2828441 2859943 2837741 2830730 2830803 2833985 2837733 2825022 2845372 2837325 2821679 2844905 2835460 2821487 2825381 2832165 2814794 2827821 2816871 2844141 2816355 2824377 2832084 2811096 2824959 2821455 2820574 2829170 2832856 2809161 2834148 2817940 2820545 2804666 2832222 2824134 2812812 2818308 2836305 2836977 2798130 2820438 2816494 2815327 2822045 2814949 2819825 2801511 2826467 2827343 2801391 2830413 2819451 2812399 2809899 2812662 2796630 2813070 2832522 2820788 2827584 2821339 2816282 2802035 2810878 2790169 2801342 2817304 2814701 2804878 2792963 2818080 2827267 2804089 2805993 2805266 2790076 2806888 2794802 2795600 2800793 2795049 2798532 2803381 2798655 2787581 2798046 2797825 2784486 2792006 2796186 2798005 2796593 2768219 2804402 2823602 2783129 2797094 2795086 2788472 2799647 2784516 2795652 2781545 2783143 2803228 2774496 2788509 2801848 2799413 2810005 2798278 2771430 2801712 2793292 2803841 2797490 2799630 2787798 2761178 2766323 2785486 2788840 2786272 2783457 2803210 2800417 2783283 2770687 2778645 2787599 2777250 2764989 2796080 2784884 2783362 2777905 2774796 2773624 2789939 2775941 2773005 2771128 2803748 2770021 2772895 2789899 2767069 2770128 2781316 2761172 2777688 2787402 2788046 2774021 2780377 2764119 2763708 2780921 2779984 2766745 2754388 2784041 2764865 2774816 2739447 2763797 2751099 2773655 2773254 2761488 2778679 2774717 2769036 2756315 2772531 2764317 2776785 2754913 2757685 2753455 2761738 2766925 2752164 2768800 2754904 2773437 2764476 2767267 2766465 2768328 2740893 2768761 2750779 2765775 2772504 2768390 2755621 2761165 2736883 2763002 2744707 2769064 2768423 2757510 2756052 2757129 2757835 2761263 2750966 2729825 2749120 2729157 2748110 2754640 2730917 2757341 2751620 2726939 2751162 2739069 2750938 2742675 2755388 2738435 2761387 2714772 2742607 2748648 2728246 2734518 2729436 2744750 2730300 2718448 2726003 2722476 2729175 2723154 2728798 2726203 2733370 2716671 2723100 2742554 2731484 2724459 2748016 2751354 2743940 2728961 2734976 2745561 2720799 2718567 2729625 2723594 2732968 2729158 2723265 2730431 2741338 2735726 2745302 2717767 2730252 2719153 2742006 2715443 2707823 2730455 2726017 2707363 2710253 2730739 2717753 2733096 2719457 2726526 2716868 2728046 2728282 2729368 2720087 2722808 2732855 2715388 2743207 2723919 2713958 2708598 2716051 2712443 2727107 2722564 2730799 2723393 2720441 2709502 2710465 2725346 2714697 2727777 2716067 2701875 2717274 2717288 2719131 2699215 2705483 2715266 2720811 2732708 2712215 2714017 2708682 2715932 2697052 2714675 2701625 2700312 2701451 2719438 2681602 2703399 2702580 2710412 2699617 2715072 2704513 2702502 2714961 2685818 2697284 2686649 2711777 2689867 2713473 2705940 2697741 2688867 2682724 2694877 2692031 2670871 2703025 2725915 2718942 2693450 2695246 2705706 2717650 2689987 2681800 2699222 2693176 2690314 2676874 2683972 2725508 2679823 2688318 2690654 2671676 2698821 2692410 2676718 2698126 2666367 2701936 2692356 2689439 2671704 2677053 2692622 2676325 2659504 2682953 2688642 2682980 2672882 2698024 2661408 2671254 2683884 2677896 2673150 2683264 2680999 2676377 2675175 2663369 2666703 2687911 2662787 2667754 2648562 2653320 2672800 2683445 2674298 2682897 2666388 2686914 2667806 2659089 2666512 2655688 2679633 2654619 2668314 2685924 2658396 2670689 2665350 2667702 2670859 2680758 2662807 2673218 2651073 2677639 2669607 2655841 2652716 2649589 2672153 2664641 2667691 2675297 2653309 2647357 2643579 2656055 2653591 2676622 2650053 2664705 2661665 2639432 2643040 2635487 2638345 2636469 2664071 2641405 2664858 2649530 2652712 2649965 2636710 2643052 2659217 2646279 2623555 2657387 2656994 2642372 2648207 2653344 2638413 2630142 2646499 2655679 2644241 2657849 2632889 2642034 2640141 2637366 2623092 2640666 2641985 2634764 2634690 2640271 2651789 2652612 2626494 2639997 2644988 2631623 2632597 2625310 2645713 2632637 2642621 2627126 2641217 2620270 2641397 2642625 2628967 2616915 2627063 2630817 2614364 2636568 2603470 2641592 2622131 2639642 2630588 2621890 2640107 2629702 2639465 2603153 2638363 2635075 2633844 2622628 2632511 2615935 2630042 2631389 2629349 2608211 2629146 2626732 2618825 2625939 2618665 2638005 2627036 2631686 2636879 2626800 2635091 2621106 2616962 2614142 2613405 2619501 2619272 2613448 2606717 2594442 2610233 2621101 2606815 2603765 2615159 2599440 2612573 2601938 2605096 2626378 2608577 2606071 2603021 2606807 2610458 2618303 2599106 2609968 2603304 2617889 2605230 2614206 2609041 2608913 2610542 2611924 2616898 2601252 2594771 2614446 2606863 2593620 2587109 2588921 2605215 2592957 2592731 2584233 2593279 2594251 2586732 2592878 2599826 2612366 2596082 2583611 2572262 2607235 2589329 2594247 2581515 2586063 2606265 2586362 2585980 2580209 2597162 2575008 2596956 2582020 2603833 2581883 2572254 2591457 2593978 2597292 2585473 2575648 2571494 2570408 2602241 2580681 2593040 2578471 2587823 2597022 2607906 2580263 2581361 2584621 2587521 2583181 2567063 2566244 2563155 2580216 2579074 2576074 2577472 2585745 2577061 2572324 2573701 2571601 2577856 2579412 2560183 2566847 2571234 2564378 2577212 2572367 2577331 2561555 2576092 2559247 2553608 2580149 2572068 2581353 2562276 2563715 2580676 2579467 2580234 2576517 2563254 2563716 2574037 2557212 2551162 2575294 2577735 2568808 2562312 2559558 2564021 2564791 2553656 2559331 2558456 2549243 2559782 2561640 2550599 2579632 2545939 2544487 2532219 2534705 2534496 2550080 2560092 2548374 2529392 2545872 2557583 2534920 2559595 2562758 2527540 2564001 2543169 2543337 2529669 2534525 2538504 2524264 2545453 2549693 2546487 2546819 2545162 2538621 2527156 2541581 2510576 2569676 2528376 2532571 2536738 2531715 2518622 2508445 2543839 2532659 2532331 2533239 2518903 2549768 2525424 2529982 2526253 2536101 2545475 2538871 2531198 2546235 2528090 2533603 2543125 2530679 2542475 2527096 2526507 2538412 2536804 2521504 2527274 2532498 2515962 2543391 2530538 2538334 2527800 2529141 2537319 2517457 2539814 2526002 2514980 2539286 2496917 2514333 2526949 2515746 2508289 2524539 2525542 2515301 2520370 2515622 2516968 2508170 2529042 2517845 2529721 2530085 2515675 2509736 2532168 2521971 2498054 2514932 2527702 2513255 2513032 2484659 2495673 2513861 2492007 2502077 2493120 2495868 2507612 2504907 2510870 2493496 2516450 2503173 2503209 2532589 2508900 2499582 2525778 2505187 2503376 2511571 2491771 2477207 2492123 2476910 2499757 2475276 2506330 2504302 2509909 2499479 2497853 2501376 2495362 2480355 2483125 2481550 2480605 2502001 2491022 2490666 2496640 2477709 2493005 2490152 2473840 2502823 2491266 2481432 2473895 2486052 2493772 2495269 2496757 2484983 2469648 2473387 2493479 2459561 2489944 2474051 2474739 2486957 2484643 2469973 2474731 2492230 2487439 2484077 2470559 2466793 2491916 2481629 2478702 2468702 2484843 2483227 2482224 2478508 2493010 2469344 2484208 2467218 2476496 2472882 2477482 2469987 2487196 2474109 2463367 2460513 2456589 2471210 2467122 2481022 2469125 2455643 2486751 2459645 2459405 2474001 2469732 2450633 2465057 2473308 2462534 2452596 2450059 2457153 2473685 2463488 2464985 2459643 2491088 2468044 2478426 2471725 2455289 2447362 2468293 2455111 2451880 2445116 2435330 2463732 2446050 2468854 2449886 2453439 2439607 2442804 2442115 2438561 2422710 2421373 2452204 2426669 2445691 2458085 2452643 2448064 2449021 2432639 2438961 2437489 2449417 2426524 2435470 2428429 2440851 2438697 2439891 2445907 2438273 2463191 2447589 2414435 2432085 2441082 2438343 2431859 2432743 2433490 2428204 2436724 2431179 2445447 2435484 2446938 2416835 2416132 2433471 2441711 2464135 2420648 2431458 2425902 2436102 2421986 2420288 2426351 2419643 2439488 2423754 2429103 2433584 2426296 2423268 2407529 2425505 2403047 2424915 2431336 2429591 2433167 2422681 2432436 2403815 2431873 2401069 2432256 2415773 2411533 2418118 2415772 2419570 2411375 2417919 2419771 2416585 2428430 2428072 2413195 2410715 2429053 2430076 2416557 2411653 2411906 2403732 2408221 2401932 2423513 2405484 2418034 2410711 2427964 2410695 2394965 2422339 2432995 2404507 2403273 2395922 2399682 2403594 2385694 2396713 2416153 2397653 2394793 2398000 2392058 2409784 2379258 2383648 2399313 2384250 2397661 2387519 2409464 2379299 2382107 2385751 2399432 2398356 2388322 2403127 2397011 2389090 2395829 2390886 2387804 2385448 2363878 2388178 2397319 2376328 2389175 2397143 2381204 2400233 2399129 2402421 2388985 2381759 2369505 2378048 2384184 2372278 2399438 2380338 2397045 2373753 2403775 2389122 2372099 2369990 2394679 2377706 2382566 2388706 2384238 2372650 2396017 2370977 2373003 2356318 2386901 2372629 2367731 2367144 2373529 2362497 2369450 2365533 2367349 2380238 2355323 2372726 2378614 2370581 2366373 2352750 2379695 2361456 2383974 2367159 2363506 2360235 2373618 2367468 2350908 2357343 2358401 2375630 2365293 2349223 2372235 2350936 2367307 2359630 2334712 2341759 2371613 2327404 2350158 2348093 2358804 2369318 2359424 2362158 2345012 2339313 2346065 2339950 2328553 2352520 2351539 2369097 2339983 2350379 2343291 2349670 2361904 2343018 2357919 2361739 2339268 2343653 2337816 2349059 2353798 2347413 2319745 2337563 2351416 2346713 2346136 2347616 2339687 2348710 2362248 2320273 2328160 2332720 2325813 2342522 2342151 2323615 2330579 2327654 2326249 2336285 2328350 2340584 2322775 2345858 2331804 2329635 2332711 2331555 2322398 2341750 2339537 2337815 2307569 2327592 2310720 2325475 2325991 2308107 2324201 2309834 2347822 2324951 2331178 2347146 2328287 2306585 2308595 2314430 2325496 2331641 2308149 2326263 2325391 2340989 2300160 2329366 2311072 2323014 2328912 2325947 2298724 2312660 2312718 2324835 2305232 2310256 2308381 2323214 2303958 2325340 2311371 2333569 2319793 2310077 2304501 2324113 2302444 2313241 2311996 2297445 2316068 2312985 2322473 2316857 2309170 2320728 2314060 2318955 2290021 2303113 2290817 2293277 2285974 2293109 2299003 2302598 2310569 2301780 2304768 2311587 2283842 2307775 2307696 2317564 2285675 2314221 2298715 2298081 2289039 2298419 2296943 2300679 2293008 2302801 2302912 2285325 2300206 2300432 2303559 2276649 2307283 2286608 2300485 2285894 2305064 2283460 2297647 2284440 2298180 2296616 2290712 2304110 2281055 2306037 2282548 2286708 2268245 2272136 2287680 2290197 2293139 2271029 2282459 2285014 2290503 2269616 2287719 2286825 2295794 2274495 2286061 2280452 2278939 2288671 2274682 2284889 2280202 2265430 2282186 2278444 2287931 2266074 2282199 2260413 2281618 2274404 2276432 2283764 2272067 2257375 2286741 2267793 2287097 2280084 2262428 2271909 2257775 2260381 2278076 2260110 2270512 2238954 2263397 2269669 2256114 2274021 2269129 2275883 2269163 2259753 2254122 2265383 2258875 2263483 2260402 2267304 2246001 2262721 2267171 2261262 2274101 2271540 2271658 2247727 2276651 2259194 2266331 2242400 2264424 2265505 2271117 2258089 2236521 2269612 2234114 2255971 2239992 2249733 2245744 2245674 2254169 2258359 2266238 2245558 2254567 2237234 2244596 2239949 2239479 2235904 2261215 2251003 2246202 2228206 2247351 2240399 2248611 2248810 2228395 2236004 2228463 2236512 2239455 2241797 2244323 2224140 2245795 2239703 2236110 2231388 2232290 2243391 2220598 2221776 2239602 2245344 2224763 2257217 2233858 2218918 2226685 2221789 2229751 2222088 2223375 2225149 2225229 2222482 2220360 2229302 2239055 2242183 2223196 2233379 2234230 2220050 2223277 2234922 2235858 2230541 2217760 2238655 2228871 2230561 2217207 2220139 2237626 2213547 2211247 2232743 2197298 2225816 2219428 2229160 2225586 2207391 2208288 2220247 2217568 2229396 2192157 2219554 2226097 2221384 2224471 2205103 2216913 2223958 2203987 2222327 2202890 2210777 2198686 2218775 2213077 2198802 2207921 2215472 2216495 2215023 2213316 2214560 2190594 2199044 2202118 2197633 2192187 2201458 2204681 2197739 2210484 2199458 2194265 2179935 2186655 2188181 2184447 2187633 2186280 2200090 2196050 2195654 2182077 2209286 2184448 2182750 2199655 2182873 2201370 2205139 2197543 2203448 2185534 2197981 2177802 2195015 2185100 2160298 2197292 2179882 2175468 2180209 2186710 2194929 2196208 2167941 2197349 2177514 2177960 2171545 2178645 2155704 2189994 2168018 2170158 2168061 2172554 2187691 2174462 2178567 2167084 2176961 2165591 2163765 2176166 2174989 2177451 2175265 2155933 2169677 2164853 2161828 2172499 2166313 2149614 2163955 2172616 2163178 2179456 2178347 2169903 2164394 2187812 2161129 2166648 2163252 2159991 2168252 2168928 2158232 2186887 2171609 2167877 2185760 2141586 2154396 2152039 2177446 2158467 2164607 2159716 2175669 2161529 2162308 2146178 2148091 2174640 2140778 2183536 2157463 2156277 2152239 2160728 2134003 2156351 2147441 2146889 2124241 2160512 2136008 2153215 2163661 2125213 2153220 2156387 2144928 2152736 2153526 2138224 2150299 2147670 2139708 2146169 2143930 2155215 2140175 2139826 2143007 2140293 2133751 2137138 2136557 2140192 2139219 2142091 2122763 2137038 2134001 2130847 2141527 2137281 2143310 2133628 2132595 2141266 2143803 2132535 2116182 2117955 2127136 2152949 2122197 2134183 2121835 2117415 2129658 2126049 2131496 2083860 2119071 2123643 2137799 2106355 2119863 2121424 2127699 2117421 2121057 2116625 2108417 2136130 2125577 2100899 2138811 2126283 2119812 2127250 2118402 2111267 2096009 2113388 2112546 2120092 2121221 2110889 2112227 2132833 2133038 2134209 2123502 2111052 2122577 2121561 2120492 2126077 2101878 2118594 2115944 2104035 2096651 2107252 2112907 2116103 2123287 2095693 2098278 2097063 2114094 2101833 2106414 2106311 2112138 2106471 2102486 2090084 2096853 2093884 2085788 2115292 2102002 2101072 2100280 2100049 2099005 2082433 2105034 2098594 2087830 2084700 2097178 2105546 2093638 2096742 2096903 2086338 2104497 2091174 2068631 2092892 2092634 2109805 2094939 2091408 2076834 2084756 2082467 2083618 2108565 2083780 2103063 2095979 2069719 2081098 2085323 2093226 2076363 2081742 2062354 2068320 2074188 2064673 2073926 2087149 2104930 2100178 2091095 2073392 2069398 2074899 2084663 2073143 2071755 2071106 2073211 2081251 2078660 2073284 2081494 2075105 2081554 2086040 2072860 2058489 2072038 2081976 2083095 2078143 2079975 2064968 2079118 2069092 2064143 2075739 2074195 2074478 2083591 2062975 2068437 2064912 2051036 2069735 2080164 2051918 2060584 2045122 2067892 2046526 2063995 2052053 2067889 2065458 2069386 2065963 2071961 2056769 2057005 2070194 2053140 2065452 2056692 2080090 2051087 2060454 2065988 2059423 2058286 2065090 2044079 2055399 2070728 2052010 2056431 2057626 2054867 2064528 2061983 2042649 2065418 2059409 2054832 2044039 2042758 2062283 2037126 2044140 2045650 2050919 2035284 2044263 2051010 2047145 2057451 2048761 2037977 2053615 2036076 2034405 2032595 2032507 2023306 2039233 2045790 2035891 2041050 2036638 2020140 2028912 2044043 2025942 2038045 2021119 2042212 2029834 2058780 2020581 2032092 2029572 2021133 2033095 2028190 2024882 2035648 2016880 2029717 2029403 2032607 2037662 2008193 2036414 2024121 2026297 2031290 2018739 2045904 2015218 2022279 2037297 2034361 2050808 2031750 2020862 2036003 2033691 2023736 2042701 2029998 2017761 2021857 2019832 2033021 2025556 2032443 2004398 2025886 2010538 2033024 2027748 2008642 2013828 2009946 2034598 2000640 2010645 2022192 2023609 2033580 2025090 2016740 2015826 2022612 2028162 2008488 2023409 2000016 2009661 2000891 2009891 2013707 2023022 2028179 2014053 2010106 2022749 2027343 2031585 2030448 2012944 2024826 2026111 2006874 2015968 2022833 2007591 2025484 2004803 2007063 1982044 2022231 2009651 2002252 2002162 2008447 2004766 1997968 2013293 2001555 2009684 2000547 2014336 2004093 2003165 2004029 1996434 2001673 2010751 1999489 2007894 2003332 1993637 1994228 2007414 2004050 1985296 1996024 1995070 1982085 1982954 1970189 1997822 1989602 1993372 2001957 2012339 1997159 1992092 1990168 1996060 1995774 1982243 2005364 1970656 1988807 1983469 2000356 1973477 1989386 1981872 1983984 2011971 1964457 1991292 1970966 1999567 1984861 1982354 1976692 1979565 1982849 1983422 1964628 1983996 1987830 1983226 1993089 1955677 1996762 1990076 1988612 1984640 1975397 1984832 1979330 1972752 1987540 1976590 1981151 1980384 1987497 1987986 1975517 1971794 1970250 1967888 1985425 1949341 1974260 1964539 1961204 1969228 1971655 1973690 1974188 1970928 1973900 1963753 1978360 1975475 1962585 1959390 1979613 1949719 1972945 1968012 1989748 1968013 1952570 1969885 1968615 1973253 1972150 1954401 1957884 1969150 1957181 1953536 1968788 1969359 1957307 1955389 1950758 1962472 1952484 1974073 1962627 1962983 1970351 1955256 1971110 1966714 1973297 1955875 1953085 1959936 1947103 1948171 1950885 1949079 1969760 1952776 1953602 1956300 1929789 1940116 1969897 1940913 1956560 1953282 1948308 1967878 1928799 1947749 1942846 1946270 1949797 1932478 1949326 1953078 1963128 1957515 1932109 1946275 1936741 1950081 1934718 1921052 1931823 1935853 1940404 1929430 1940073 1933394 1946713 1951337 1938560 1919124 1941855 1928075 1926601 1951154 1915041 1932271 1931273 1960515 1924791 1931504 1943729 1925693 1931726 1933859 1926666 1937003 1935946 1934579 1940557 1927945 1935959 1916105 1929694 1936484 1922312 1927560 1940994 1932020 1925368 1931015 1935790 1915538 1926077 1903242 1924666 1919342 1917246 1909083 1922996 1926678 1942196 1924181 1918784 1930090 1911409 1921024 1907131 1918083 1935429 1914978 1915392 1924025 1912047 1908550 1914071 1911754 1911130 1903842 1908178 1919249 1907003 1902385 1911859 1912298 1899967 1898374 1902994 1899974 1887135 1891600 1911724 1907157 1896809 1907877 1917317 1899325 1905922 1920188 1892327 1899919 1896447 1896513 1901060 1896806 1906347 1887139 1918744 1898708 1886093 1897651 1907901 1890563 1891782 1884155 1889458 1894840 1911960 1889088 1894823 1888634 1892240 1899968 1893288 1896736 1896957 1885566 1904384 1876604 1896160 1896967 1904846 1877609 1882781 1884054 1884256 1890774 1888777 1879591 1886006 1903702 1882367 1880123 1888586 1880882 1899018 1895681 1879450 1881076 1889391 1867392 1884386 1896513 1885191 1883526 1884469 1876826 1880019 1876709 1882974 1880841 1866256 1876624 1885549 1871319 1878969 1890100 1862480 1868372 1874015 1862080 1882161 1886402 1868113 1872957 1869528 1867591 1871951 1869262 1880468 1882158 1882490 1892085 1855011 1857694 1876285 1868973 1873110 1884752 1853946 1871713 1867395 1867250 1881907 1874613 1872939 1873735 1879505 1871492 1871824 1878218 1885900 1875400 1874977 1874638 1874094 1876665 1847196 1851445 1861841 1850346 1852190 1851202 1870844 1851291 1867974 1864655 1865147 1857102 1863061 1854636 1846048 1864375 1839862 1857212 1857845 1866488 1848890 1844205 1869316 1852275 1851854 1857432 1844273 1845227 1853311 1844086 1854671 1841836 1855936 1855540 1851267 1850602 1836211 1853595 1844314 1828612 1849538 1856772 1842527 1851729 1846953 1853481 1842346 1843322 1841895 1832549 1834104 1840668 1837458 1856258 1828281 1844967 1850792 1845829 1858733 1838019 1829458 1835456 1833190 1832589 1866133 1841939 1859670 1831885 1827561 1839196 1835216 1827707 1837532 1816315 1847817 1821983 1831175 1835469 1830668 1837859 1827801 1822963 1819634 1829875 1835140 1828398 1821275 1828959 1841225 1816989 1818711 1815153 1836413 1816908 1822014 1819670 1826720 1832317 1822496 1809921 1838907 1818958 1816077 1812363 1829609 1819338 1821778 1808263 1810866 1810334 1804890 1810631 1808703 1826782 1815697 1815777 1806376 1805785 1812287 1812500 1801281 1802374 1823950 1807401 1819027 1820487 1806890 1792821 1804021 1803279 1803417 1803609 1801425 1811058 1798601 1815738 1799579 1799117 1805509 1799707 1799561 1800228 1794080 1814019 1802885 1806050 1810686 1811530 1801415 1796832 1809568 1806870 1803989 1794194 1807598 1793505 1795790 1796156 1786516 1799297 1808154 1795613 1805306 1796503 1797722 1787989 1784038 1786483 1782999 1790761 1798216 1776542 1780129 1791957 1780326 1782658 1782084 1787234 1781828 1787410 1781763 1780019 1772543 1773250 1766887 1777426 1793866 1770959 1783625 1790685 1768903 1777874 1764426 1782949 1790933 1775908 1780962 1788816 1777701 1782780 1765749 1766129 1775532 1759487 1763851 1766567 1764509 1766069 1759133 1772566 1769051 1781363 1766603 1765897 1775624 1745222 1764542 1772789 1755253 1780015 1771938 1773837 1759261 1766491 1779759 1761674 1767356 1763535 1761167 1746769 1757583 1760213 1766438 1745061 1760582 1761591 1753300 1762290 1750994 1770814 1745707 1767574 1771043 1757440 1765213 1748749 1756959 1763487 1772215 1753066 1756446 1751560 1752533 1753100 1758918 1755383 1758147 1753582 1748522 1737529 1748883 1745790 1750158 1764213 1742142 1740746 1751771 1740645 1750602 1743071 1743921 1750489 1749902 1745109 1744607 1746224 1750276 1740193 1731459 1766525 1743668 1739931 1740399 1762070 1749467 1743198 1737213 1738496 1747244 1749096 1738964 1734709 1737262 1749007 1754687 1740948 1741097 1751093 1729420 1733242 1747089 1736306 1751506 1734867 1750111 1739082 1741560 1730757 1758427 1737802 1737305 1715609 1742001 1735608 1736760 1743746 1740201 1732505 1736888 1722954 1717552 1731291 1750925 1734009 1729941 1726337 1737391 1719009 1737081 1717126 1723626 1725281 1726366 1719487 1721748 1730289 1710566 1730339 1733204 1724456 1731933 1721075 1710353 1729284 1715497 1714167 1733587 1709428 1732857 1713001 1731206 1721872 1729425 1715115 1718671 1717584 1710016 1705728 1727054 1714138 1716303 1720193 1713299 1733620 1713242 1721136 1715312 1723493 1706079 1716908 1724402 1715678 1714107 1713978 1714298 1699117 1717175 1709588 1712954 1705092 1699269 1706884 1690007 1700416 1700606 1707817 1704082 1707743 1689566 1699142 1705512 1684230 1697302 1697857 1707432 1701976 1701259 1715772 1689655 1702769 1696341 1689820 1685702 1700390 1710829 1688792 1692113 1699512 1691818 1701612 1693265 1685606 1693679 1701352 1688024 1679969 1696296 1685120 1691034 1688988 1680941 1675338 1698659 1681667 1683032 1691411 1670875 1682676 1661594 1689172 1681252 1693054 1687398 1675818 1676456 1699246 1680421 1679132 1696904 1678841 1691809 1684219 1696376 1687741 1676538 1668158 1699618 1688301 1671964 1681836 1683415 1675650 1674306 1673831 1683840 1685257 1672446 1673236 1677859 1676297 1672996 1671118 1662256 1683522 1664464 1686070 1687875 1665114 1677975 1686126 1672961 1670894 1675862 1683544 1669425 1671592 1672578 1665282 1680672 1674139 1672038 1647957 1673394 1656776 1663811 1667026 1650405 1668472 1665334 1675479 1653052 1678467 1661704 1666156 1664784 1676087 1669223 1652522 1666529 1652130 1665134 1666053 1664250 1649596 1653689 1648805 1647301 1655986 1666322 1649473 1643747 1649012 1654442 1664621 1659821 1656464 1659680 1657966 1656195 1660674 1654436 1639758 1665474 1650698 1646053 1646076 1668706 1625753 1641212 1639387 1655947 1629437 1635520 1636585 1641268 1649485 1647601 1642296 1637275 1638096 1641600 1630647 1648216 1643311 1632024 1620393 1639818 1636574 1634388 1643710 1647381 1628015 1629751 1626515 1634877 1628843 1630400 1627491 1635742 1635594 1620145 1636248 1630872 1619547 1650585 1628379 1644933 1616804 1619597 1633428 1634570 1613321 1620555 1642125 1629665 1618751 1619555 1633067 1635675 1610963 1619911 1612511 1619678 1613194 1622573 1627378 1614002 1619793 1604080 1619652 1610267 1619114 1613122 1597358 1623241 1599372 1628043 1618831 1616877 1605447 1622129 1599227 1620827 1613622 1608298 1609347 1600880 1626178 1607405 1593608 1614734 1620263 1625574 1609622 1612830 1597441 1606768 1589707 1603421 1604529 1599870 1616089 1608137 1598346 1594792 1612291 1604554 1588699 1606188 1607007 1589333 1607154 1601468 1597645 1602557 1592430 1605187 1584436 1604442 1594527 1602140 1604197 1608172 1601176 1601178 1608611 1585504 1599369 1587405 1604368 1584861 1595363 1596873 1593328 1597413 1582736 1595758 1598849 1606264 1586462 1575050 1601589 1591432 1576838 1576238 1582418 1583003 1602561 1579705 1588626 1591332 1582442 1590803 1581945 1580209 1582601 1587360 1595768 1585729 1599111 1582793 1596185 1572290 1586622 1587202 1580601 1584722 1586877 1588898 1568403 1581120 1596960 1584632 1571334 1569448 1569822 1566672 1561173 1577604 1571899 1578426 1574457 1571782 1579238 1560995 1581259 1567005 1555590 1559573 1576104 1562005 1570252 1569909 1568223 1575119 1566546 1564299 1572644 1562951 1566624 1564129 1571942 1581440 1566457 1567575 1572837 1568615 1568271 1561886 1561834 1558300 1570946 1568547 1567779 1553700 1554029 1562459 1572591 1564802 1545997 1560410 1545930 1556958 1543274 1553577 1543188 1544590 1558929 1547159 1543408 1549565 1559978 1558790 1562040 1551707 1539686 1557532 1558206 1563645 1533954 1569764 1557836 1549901 1551676 1543612 1543816 1555536 1551388 1533854 1549727 1542864 1540694 1538301 1535643 1554308 1539645 1545403 1536904 1528786 1549630 1544474 1538606 1533123 1536025 1526265 1527253 1553254 1533045 1530233 1532882 1536305 1532075 1539307 1529820 1528254 1534018 1532075 1527780 1531583 1532546 1525864 1518712 1531341 1521280 1529239 1526757 1523379 1529441 1538132 1527301 1536737 1526285 1530938 1528170 1526725 1530906 1525546 1526612 1519982 1526084 1527386 1511199 1522442 1522838 1521335 1522981 1519862 1526023 1520293 1522685 1524679 1504591 1521646 1516396 1522712 1503397 1516045 1513113 1519140 1510032 1515415 1511344 1497769 1513516 1517477 1512335 1518570 1498381 1519387 1506338 1502981 1499710 1504802 1506199 1511329 1511687 1505072 1520259 1511189 1512958 1505164 1509470 1509000 1497835 1515441 1500157 1515391 1494677 1498003 1492775 1502549 1490355 1498728 1501943 1508524 1518896 1504728 1502614 1502002 1483459 1509083 1491628 1489924 1496246 1504567 1507252 1487927 1477369 1499550 1476355 1491731 1482804 1492545 1493322 1507002 1491260 1476650 1492036 1472059 1488853 1470851 1477563 1486379 1476034 1484617 1500653 1472910 1482139 1478967 1467886 1484711 1481518 1474141 1491820 1499093 1483087 1483683 1472840 1483836 1465554 1477965 1461741 1470801 1466429 1488938 1471244 1474906 1477841 1458686 1476516 1475554 1480564 1480999 1467380 1481732 1468914 1480030 1467947 1463932 1461811 1472809 1460429 1476986 1469849 1486686 1454525 1468266 1468513 1491715 1451569 1466406 1448385 1467880 1462285 1452670 1464333 1462841 1456145 1457280 1456531 1454714 1461359 1457885 1462038 1444643 1462263 1456986 1468456 1466684 1458182 1446002 1458578 1448870 1460197 1460857 1455981 1454540 1454672 1443766 1459638 1454227 1445641 1450854 1456744 1446820 1452799 1453792 1454691 1448004 1441669 1459390 1458391 1443282 1447226 1448979 1438015 1447749 1453307 1437597 1457175 1442157 1446102 1444994 1447964 1455994 1445040 1458287 1438509 1443934 1435407 1455076 1448105 1444060 1435999 1450367 1451410 1444183 1448516 1431438 1444900 1428058 1422731 1444483 1437374 1452419 1443618 1443875 1439788 1441316 1444248 1446545 1444458 1433822 1442405 1430557 1434035 1434347 1418434 1436289 1437570 1436039 1443503 1437451 1421013 1426502 1437644 1429418 1421057 1433234 1433477 1420495 1418955 1413521 1423485 1430773 1422550 1426690 1427828 1438110 1420527 1429440 1431324 1419663 1435605 1430117 1427515 1423108 1414895 1410459 1409209 1430345 1411455 1434870 1423782 1415970 1428000 1433739 1427616 1419215 1407169 1420395 1414207 1413623 1424597 1409378 1412855 1423034 1408495 1432543 1427811 1410822 1412350 1412854 1412054 1421200 1415827 1419157 1412260 1409465 1411249 1395217 1417915 1405901 1401746 1416121 1397776 1402113 1408700 1417804 1416324 1400423 1406109 1408815 1398321 1412797 1391996 1409338 1412471 1391556 1400812 1410681 1414627 1397138 1399171 1410831 1398162 1402412 1411406 1412511 1396200 1398526 1411670 1397493 1406344 1390396 1413685 1405992 1401618 1398814 1390154 1415097 1402079 1400667 1398124 1400446 1405319 1408563 1401838 1402618 1391485 1388518 1403758 1384132 1392942 1401695 1378700 1394913 1373972 1394382 1388911 1398350 1391000 1383809 1379905 1386829 1388924 1376958 1373691 1394514 1389217 1398438 1388196 1377691 1381864 1388764 1371700 1397823 1384241 1381292 1397930 1384505 1390599 1386458 1386597 1370570 1375922 1386975 1383746 1365745 1375858 1381175 1371737 1385148 1386738 1375121 1382035 1373192 1376689 1384541 1365646 1380471 1383975 1381782 1370272 1372697 1381861 1368583 1377773 1377792 1375059 1379643 1376262 1379373 1378170 1366933 1357276 1370236 1368053 1368359 1353279 1351746 1381952 1368695 1366075 1365529 1361412 1385005 1369015 1356382 1358315 1377524 1366402 1365812 1358980 1361377 1358265 1361379 1364421 1351960 1350417 1357719 1352184 1363398 1357624 1360303 1360317 1367977 1364823 1363087 1366811 1362255 1358735 1359340 1361300 1350510 1367655 1340432 1350436 1356390 1352621 1363672 1335383 1361440 1348648 1353607 1327959 1360383 1348040 1344010 1345575 1359295 1348890 1349040 1332469 1352384 1327283 1331805 1352004 1352800 1324045 1341919 1342207 1349667 1342926 1344495 1347938 1329091 1332079 1330939 1326779 1340103 1337345 1345763 1331166 1330688 1325655 1333098 1324712 1337256 1336386 1345183 1340292 1350490 1331621 1340075 1333652 1334877 1341860 1333784 1330333 1323087 1337336 1332131 1330234 1326104 1325969 1317470 1323632 1329948 1331830 1326594 1327479 1327366 1313909 1335341 1338658 1318460 1324065 1311587 1326394 1326481 1328928 1321212 1319875 1321617 1322429 1324445 1318284 1320237 1316877 1311638 1323178 1325085 1337479 1307840 1302382 1311109 1313118 1307798 1324053 1321759 1307941 1318810 1321994 1313762 1309642 1322099 1310186 1311960 1298755 1317408 1316400 1315713 1294284 1305614 1319496 1308588 1318305 1306819 1316680 1306001 1306162 1304172 1314088 1292031 1309312 1302396 1293224 1312259 1319674 1306519 1305216 1308198 1308414 1314009 1308227 1295774 1287105 1295722 1297192 1293318 1306866 1314429 1298381 1294863 1296124 1290480 1297841 1302740 1296255 1303273 1309691 1289056 1298681 1299460 1294828 1298628 1286142 1283929 1296472 1282946 1298210 1296379 1296870 1300922 1284117 1289559 1294748 1281428 1284489 1286382 1275487 1279317 1280763 1288454 1280459 1289223 1294841 1290632 1287649 1286191 1302027 1280457 1291051 1282019 1288940 1288193 1284243 1296767 1286843 1286631 1277979 1275791 1278817 1275431 1284264 1277616 1279295 1275799 1280063 1265987 1286635 1267446 1279792 1279806 1275448 1279872 1265565 1268251 1281948 1279755 1283085 1282363 1279848 1257404 1277031 1284625 1283457 1265910 1265769 1266316 1277146 1264260 1269675 1279514 1265010 1255214 1270943 1256705 1257289 1259879 1262295 1265975 1250715 1270388 1259111 1281756 1260793 1262398 1253898 1269815 1261311 1249146 1252580 1268862 1255374 1257684 1266459 1250003 1242993 1260681 1239215 1252714 1255430 1248910 1253091 1257232 1259703 1264591 1262576 1247849 1253123 1252361 1252571 1255581 1247842 1270373 1249423 1257154 1246037 1256327 1261349 1244146 1244929 1254356 1247738 1252047 1236695 1240818 1245231 1227149 1247491 1241403 1244643 1246933 1236145 1242605 1242323 1243088 1256285 1241263 1239229 1237519 1246711 1251127 1237635 1245078 1252063 1250085 1241112 1232091 1237037 1232526 1242962 1230526 1241807 1233585 1238644 1224779 1221957 1233504 1228949 1238228 1226378 1222715 1234796 1225353 1224922 1217817 1244595 1237952 1226760 1222295 1219906 1220521 1230352 1217796 1217903 1227789 1229609 1230378 1218499 1221249 1234259 1223017 1212577 1227921 1224390 1230796 1212075 1217194 1225044 1223843 1211924 1212215 1214974 1212495 1220679 1208023 1217371 1218871 1212452 1221631 1203162 1214878 1217315 1216893 1201863 1209070 1208078 1202692 1211224 1200793 1208874 1213787 1190765 1204602 1200104 1211890 1200688 1203031 1200965 1210260 1196951 1186792 1199714 1201220 1207698 1196728 1203502 1190445 1191417 1198936 1198422 1199927 1206555 1189272 1190046 1181029 1196881 1191679 1190873 1203552 1193590 1188684 1204600 1188391 1185983 1203877 1189027 1181907 1177119 1188631 1192311 1181688 1183959 1178423 1185631 1193206 1192892 1178912 1188326 1185932 1193678 1190043 1194149 1185393 1201815 1192783 1198657 1180725 1178416 1168562 1173554 1171490 1167491 1178086 1174417 1186783 1176044 1166663 1185077 1177664 1169843 1174981 1171592 1170625 1177480 1179369 1178085 1178281 1166473 1167351 1176901 1170893 1171274 1169987 1178616 1165591 1169418 1165082 1160180 1176367 1158695 1170367 1163116 1169231 1153904 1163708 1163856 1163913 1162795 1157589 1152815 1157508 1163823 1161490 1164762 1170864 1158636 1166193 1144264 1139342 1147638 1149168 1149864 1153367 1161281 1153521 1163484 1154192 1151318 1153743 1147513 1146694 1140756 1156719 1142687 1160920 1146802 1163546 1156123 1142966 1148066 1157748 1145355 1141666 1153460 1152568 1139185 1142958 1147636 1153686 1144700 1144505 1147775 1146579 1147432 1129413 1148055 1144515 1139087 1148807 1140795 1132529 1137718 1140492 1144232 1139273 1125687 1143393 1133235 1124091 1129632 1153040 1139298 1137427 1132549 1118336 1130737 1127036 1142687 1126067 1123346 1132538 1136623 1124367 1128229 1121857 1137810 1128205 1115303 1123597 1122421 1128705 1116547 1116450 1119144 1120643 1123603 1126932 1114737 1112800 1128713 1121336 1113011 1106778 1112922 1113822 1124009 1118459 1101829 1117867 1121713 1124318 1114227 1106880 1113905 1112913 1113881 1094551 1105822 1111465 1105551 1105151 1118815 1107908 1108366 1111484 1110071 1100689 1108830 1109704 1109849 1112906 1099966 1116358 1100660 1091561 1106991 1102054 1094341 1106160 1108232 1115378 1106814 1102795 1101857 1091092 1105250 1092585 1104060 1102137 1093749 1104980 1098995 1103376 1102739 1107119 1108460 1080132 1101304 1092821 1092092 1089876 1110559 1090206 1089782 1094770 1087935 1090410 1092143 1086656 1093193 1087927 1095964 1082609 1082955 1087413 1089053 1087697 1099041 1071071 1081526 1087660 1076781 1083792 1084393 1072419 1095167 1085254 1091569 1077349 1087263 1086810 1074503 1085854 1075814 1074434 1078499 1083650 1084170 1078423 1085356 1078037 1071988 1087132 1073469 1071501 1079860 1076668 1071369 1062018 1072598 1073336 1068852 1066444 1072000 1073643 1065078 1065442 1063995 1082375 1067031 1070116 1059500 1073806 1053935 1067575 1062473 1068711 1063521 1069236 1064817 1053254 1071076 1062016 1058900 1060206 1063513 1057165 1061750 1059473 1045431 1058134 1061912 1060447 1040142 1059443 1053699 1060634 1057648 1043884 1038981 1047630 1048641 1047622 1041664 1062254 1045272 1048896 1048100 1050951 1061404 1055072 1049229 1053734 1054115 1048182 1049572 1051285 1034264 1039717 1037884 1038694 1047761 1049448 1041998 1039326 1045879 1050558 1042765 1044908 1043774 1036528 1033840 1031638 1032616 1040056 1044441 1042207 1024315 1048068 1036236 1039321 1030546 1042121 1036124 1038312 1039652 1030465 1030695 1030660 1033932 1027071 1038584 1038154 1030475 1030783 1028650 1020737 1035866 1040080 1018408 1023180 1015864 1019410 1022661 1010356 1018211 1017193 1024564 1025507 1013664 1024496 1025387 1021746 1017403 1010131 1015626 1017735 1010799 1015338 1005812 1024778 1019887 1017075 1016168 1017759 1001813 1015722 1027603 1014046 1015375 1009093 1015350 1009475 1024862 1010465 998919 1019928 1003592 1008871 1007165 1014031 1004303 1004198 998467 1007288 1006235 1005128 992985 1001466 1010653 1013184 1014218 1013626 999504 1005842 1009282 1008568 1015904 1007217 1000700 1000057 997402 996553 1011788 1012982 997697 1000900 1001040 993395 1007964 1001385 1002936 1005559 1000023 1003087 996557 998185 991000 1002018 1007151 994255 994130 995179 988260 995601 991165 993827 991162 987140 984251 979224 987236 998720 997383 980979 979650 982988 984376 985361 991404 982237 989653 988647 991384 993742 984413 983748 985112 991878 965872 983383 979626 979186 976368 976022 982685 973162 976788 986583 965634 975376 980400 981715 970810 982165 973648 968425 978263 972547 970132 964626 977210 963738 975079 971063 967614 978008 966928 986310 978585 970278 958813 961724 960519 969955 974868 966204 955556 959663 953115 975966 960117 957945 972748 955847 966478 957082 954893 967248 957008 955595 952793 959767 947928 958192 944565 954929 939213 959533 947916 948957 951316 957386 952117 954806 950831 944631 956110 953421 945516 961739 952690 954688 958066 951133 938992 952109 959056 941434 946600 946207 942106 944747 945415 945934 948311 956633 939079 940843 935737 940046 945545 938312 929611 945550 953048 946716 946088 936884 946582 947879 938983 935871 939322 931843 936652 928046 936811 937763 924124 927785 940170 922811 929415 941473 938808 934103 926945 934157 941927 938744 928246 937988 931421 933877 932872 933655 921290 922947 924335 924163 926781 926593 926056 913791 921826 923679 917634 922585 920214 926025 920202 927100 909123 923482 923363 915519 914693 919108 910286 916750 909448 916099 916162 913890 905194 915305 913240 912247 909542 908349 907273 907921 902782 903596 902164 915275 903798 904618 910214 903263 895066 912271 901109 900168 913677 906803 916193 898929 903927 904889 906407 907644 892204 901699 895784 908022 896618 883317 907959 909195 900903 896896 893385 893748 899758 899589 897537 906898 895381 905538 885893 889115 902512 885322 896027 885362 881681 892425 889327 890650 885346 883843 895249 889521 881982 889695 883554 888851 882931 891641 883124 879920 887553 881955 883083 888694 884872 889782 886264 882958 884683 880996 884583 876249 860411 876581 873622 869365 887222 875025 881112 876595 872711 870933 871299 882600 872117 859212 876818 881225 874524 872413 863228 866679 867117 872772 873739 869204 861937 872031 868094 864037 870168 856742 874467 860757 867104 862817 865747 865538 866063 856140 873082 873191 879026 870161 848726 858776 854829 864241 852665 858195 859740 854030 868127 851163 851199 870553 855237 859141 861780 853040 848913 849940 856513 861557 858730 854488 853258 838349 845282 861132 846137 859221 857145 843987 842561 858336 845927 848889 853304 853911 839290 849351 852073 854924 840257 841247 842850 837770 838800 847222 839195 846690 846336 829061 837616 832347 837883 832272 843764 844977 835324 830494 842304 830258 834684 844949 830413 831858 830757 833601 828529 834582 835150 842660 826083 840137 827635 823970 832281 828516 825754 831998 834294 829723 826643 824401 827416 827437 828124 826146 823838 829934 827174 826587 813967 824064 817512 819420 817134 820432 820938 820424 821326 816645 817680 818085 815158 826975 818101 820665 803368 813082 814738 810140 812487 803651 819577 819719 807396 810236 819089 813896 812151 800001 807177 817827 807157 810420 799014 812998 816024 801307 820563 809487 808796 808058 806592 805363 808599 803080 808861 799081 797722 798842 792871 789575 805564 804356 807018 792947 795218 793777 792783 792257 793849 790333 799090 802532 793225 782958 793698 800395 797009 795943 785913 793763 785982 797917 782375 797138 785757 792701 785458 782585 788045 784265 794708 793816 781471 790152 788963 787084 788521 773034 784874 786730 786467 782157 778413 766889 784228 777476 787831 779747 775361 781113 767213 784880 772204 785034 778369 774043 768340 758504 773618 773647 775458 775505 764998 762972 767698 769407 769995 759364 770789 765073 756439 765340 775072 763590 761218 761051 758492 767359 755788 765293 755865 769214 758755 770877 752561 764893 742499 753153 768055 768116 763489 767215 760544 758604 760097 763752 767570 760195 760042 759241 756025 760246 754574 744089 756854 752729 750885 757670 752649 753482 744446 748609 752244 760429 738991 739100 739034 742131 744430 751460 743108 745135 738446 740189 746037 738331 737100 748868 736551 726458 744720 731573 734609 740122 739177 729492 737154 736347 724312 733819 732193 731189 729425 741166 730964 731588 741960 726638 733762 739766 731453 739412 729109 736813 733188 738798 726744 741001 721581 730256 731760 722249 721144 730811 720121 720753 726978 717239 723262 721924 723207 724795 727671 722888 723311 717892 721822 721948 724478 728010 721929 714234 717282 732424 733328 716990 712660 716268 714332 722655 711853 707347 717715 717640 714848 712273 720786 715236 721526 711689 711362 713563 712578 708033 706694 699848 709437 706858 712123 708042 700325 704133 700902 719268 706233 707246 701137 701696 710075 704871 702236 704658 709141 702117 700190 695959 694928 701716 697723 705928 696112 703657 709135 702868 700888 696483 705634 696765 698272 689191 701166 704288 701738 705188 697387 705540 693716 691772 706226 694483 699538 698093 695563 695027 696937 702147 692920 684997 690553 689171 695369 682366 690474 683159 694080 690172 681163 681603 691654 679058 677480 683429 680236 686301 678138 678481 677055 667505 685593 672357 679255 671416 678558 681235 684361 668811 679427 671976 675903 672150 679877 677176 678731 671392 676782 672098 675213 675137 667895 666820 658251 669187 675065 679606 668080 667019 674503 671834 660552 671947 665686 673847 673548 663551 666568 661745 667461 669444 651791 658388 662186 659304 672931 666126 661532 669386 654757 657449 661756 664001 657599 662035 655358 664356 660912 658823 657645 654753 657950 658937 652240 651303 652782 655707 663761 661351 671328 645684 656441 647072 653865 651734 659934 654144 652199 650035 657575 653932 648919 652223 639195 647453 660651 642499 646009 642945 645369 631763 640225 636027 633258 644690 637915 645124 639445 645431 643247 642581 643153 628312 642977 635356 631238 634961 632259 627120 638269 634851 640971 638784 645660 640680 629462 637281 637804 632232 633167 632487 635314 638746 633448 632638 628075 627114 627565 628816 626267 623596 612999 625950 639224 615914 628035 630281 620925 630869 625292 624100 616840 620827 610076 618766 623664 612074 627012 616385 617176 616621 620567 620826 615656 620780 605155 616671 621869 620375 616832 614879 612675 611330 610819 605884 609434 612043 612502 610402 606772 606005 609063 602419 603496 609451 608201 606620 608429 597456 607177 608450 605619 612694 599300 604249 592306 601363 603157 602152 598271 601827 601918 595057 600904 599810 598540 597171 594260 599799 599135 591974 595460 586497 589770 596278 585790 582451 594561 587051 608327 592370 593210 585988 592256 591331 586233 589874 589477 599751 587512 584938 590565 588574 593289 583245 580208 575080 576568 592646 586857 586897 594726 587262 581807 582400 580876 579997 588049 579579 586886 571961 580378 574980 567018 572336 573958 572426 574316 579074 563155 569085 574404 585589 560319 566029 570970 569241 576264 575072 576106 563976 568857 569231 563000 564391 574738 561223 562207 565170 568478 569839 569271 573386 563985 570410 562897 571222 557399 571123 560017 566479 563641 554743 563457 563053 560772 560321 562002 563627 553740 557100 560376 560454 557312 551906 550540 559562 551451 550818 557776 547191 553477 549391 550956 546284 546655 552686 555484 548208 550611 548112 545103 556173 550632 560386 549423 547614 545994 553031 549674 551335 541634 555226 547732 540786 552114 552007 547686 546815 553454 550140 549343 544405 548831 538585 545622 548993 544441 539745 546699 536939 542261 536101 539473 537790 537256 541030 533856 533977 535211 545949 529374 529608 528198 535876 526102 526589 532030 532242 530076 528801 531608 528088 535086 535233 527896 532149 531152 523676 524315 523784 528407 520083 525971 520129 526113 533351 522541 515962 519725 522748 512070 523498 527776 526336 515927 517692 520695 521208 510481 524105 522414 513479 521532 516918 505261 516893 515090 512961 508006 515924 519315 507469 515413 500531 502629 502811 504705 510320 509507 509936 511449 507969 510889 511996 516724 511328 507806 496882 503776 510093 512329 509196 506503 511187 510852 506258 504673 503530 508390 499737 507176 499318 498387 496846 501392 497452 499100 496960 497454 494960 492448 498778 500872 503938 506811 488710 510040 489951 489500 494672 496732 492725 490968 481498 491249 488272 484963 485214 481442 484879 485991 488799 484807 485315 481351 481958 479874 485156 476735 490063 482813 486958 476877 486025 483372 478645 471660 473732 487177 475855 476270 471594 473843 473875 484428 481382 473495 476191 476101 481037 470393 485130 472787 478763 468569 470765 463740 473730 472876 469606 471662 473852 468475 472050 470488 465262 466686 471776 468623 462795 469541 468336 461973 457399 468347 459790 453254 461129 470384 461976 460574 459925 459918 460024 457494 465335 458842 461460 461840 457204 455513 454139 465446 455948 458549 458248 459769 456326 459436 451334 452679 459903 445612 449197 459584 449931 447730 451418 447102 454127 451972 457693 453325 457268 447335 448957 449291 446755 448860 447942 452343 443242 443768 452348 451913 443344 448658 444304 447910 452380 439965 451258 441340 439031 447210 446521 447796 440328 432239 436665 436559 425476 433152 442646 430379 434954 433423 432471 440111 426725 430113 432142 437537 431754 426288 429943 430075 430485 437103 427534 432245 423210 425201 427334 425211 428792 432746 428459 420528 421472 426628 428823 426564 421814 417851 429009 427343 423866 426188 417451 421888 421198 420451 415645 419028 419726 418832 419162 417040 423492 410809 414750 414341 419339 421103 416955 415358 412206 410502 409782 417273 416555 415736 417963 411245 414278 417917 409909 408099 412209 405103 406493 406567 410310 410386 408074 404518 408386 410845 410833 402862 403458 406635 413768 400779 404845 406537 400842 400745 402437 397381 394767 401436 404504 400593 394750 401863 391975 405407 390321 396499 395633 406431 393466 389914 392616 395941 401228 392782 394726 393535 399550 392786 398019 386816 385211 396223 393689 390551 390477 391264 394540 389896 389358 387017 391406 386860 386538 379391 382431 386405 383811 383295 383092 385798 381290 377304 374468 376815 382424 382082 377979 376142 382518 377447 380277 373530 370813 370180 377210 367711 373396 367929 373015 372330 368945 369230 367458 364817 361925 373879 367532 368465 366152 369322 363652 371325 362288 372651 360532 367349 367929 369219 367494 363557 358945 360047 362556 361451 362745 357765 366772 358777 357776 362020 361501 359770 361330 362872 359681 355379 364364 359887 351458 351812 354841 350971 348621 351599 351372 354882 349649 352796 345767 348150 347930 348714 349723 345909 348848 348048 351388 339722 346807 335985 353250 338010 342682 345648 346544 338734 343241 343295 332515 339986 339617 339560 340521 347712 339593 336234 341346 339285 335438 333031 329783 332542 331953 333697 331679 335355 331374 331649 330362 323518 332551 330148 331230 327329 332961 324013 322715 325784 326988 319194 321015 327269 330795 323773 315987 321934 323398 326680 317679 317865 322135 322768 321418 320346 325015 319571 325054 319262 316967 315314 321958 317779 314384 315192 323125 320151 318649 322373 313184 318275 315609 318907 315260 316832 315010 322633 316923 315661 317456 316794 316166 313031 302270 313196 310284 313592 313018 306052 300548 306061 305576 303157 306694 304694 301806 309136 299235 301168 298539 303987 304204 303727 301864 302770 300154 301226 299103 297855 303160 302808 296667 298491 303347 300731 296668 291652 294384 290058 299561 292223 295534 292965 293396 294504 293182 292024 290652 286418 290384 290501 284984 289175 292517 288534 284492 283279 290349 289279 286571 280688 289517 282745 286305 279874 285874 283505 291629 281306 280215 280515 279179 281176 281826 283042 270904 285114 277313 278853 272659 279756 280247 271007 272558 275805 272263 271049 275028 271506 275652 273114 275064 270332 270896 273620 276497 274452 267308 272546 267657 272253 269835 272335 264350 271094 266797 266362 266908 269050 270084 273540 265979 267219 270354 264515 272000 263984 267280 259845 268822 266846 265136 262046 265987 262893 261622 260829 256281 260517 262101 259903 262033 257654 259304 264642 256210 259328 260109 256800 257672 255771 258565 255932 257112 250610 251976 253741 253970 257750 256895 247696 252645 245919 248168 246923 247041 247003 246138 243278 246425 245616 241563 244611 240970 241040 245410 239231 240903 242948 240098 244418 240925 234483 239286 237544 244147 242115 241000 241577 242180 232011 233983 240728 240383 245201 235042 238069 236925 225821 238665 233940 235812 230670 235579 232094 230283 228268 232437 232406 231955 228937 228705 229274 224674 226566 225432 226166 219801 222465 224590 222419 221686 223198 230616 223117 218985 226308 215182 220776 225533 219958 220230 215037 218792 217893 221750 215946 218866 218760 218780 219522 217175 219550 216411 216957 212652 214746 211095 212922 210201 215898 210896 215277 210971 210292 212268 213236 207822 215484 210229 209944 207008 206413 205872 205670 208683 206301 201664 203842 207549 201744 203151 198170 204414 202284 203698 200130 209470 198054 208007 198380 197927 196713 202360 203692 194605 194833 195866 193887 192275 196274 200917 192517 191146 189664 194396 193912 195136 194250 192265 191942 189942 190976 188897 187236 189712 188410 188182 184419 185676 183841 186629 185294 187057 188081 185280 185161 184950 186111 182716 185457 179886 176450 179863 174905 178135 180348 176197 177446 169107 177314 175452 179404 177798 177534 171597 173465 172296 172696 177412 174653 177576 165471 168471 171463 176428 169302 171040 175048 174624 170309 173581 168292 167959 165672 166251 165376 160610 165381 161630 166023 159852 163227 164108 166441 166927 162478 167627 162842 161630 155987 157862 157292 159561 155988 160775 150717 152787 155384 155057 152321 152682 156462 148743 153369 153059 152376 151351 156616 148742 154419 145487 152667 153740 151292 149214 143768 148736 145725 148685 144644 145857 148077 149930 141885 147312 144680 146635 145993 141413 144514 142796 139977 136628 137588 138358 139421 139391 136841 140926 136532 141705 141966 137538 136544 139369 134340 133478 132224 137936 135007 134835 134044 130061 130054 134733 131851 131315 130162 131025 130498 126748 132930 128872 131410 131106 129849 126718 127773 125537 128675 130595 123880 128626 126646 127687 127086 124520 124795 127911 126098 122451 125025 122943 125190 123170 124234 119844 118478 118636 124166 119360 119711 126131 121900 119541 120294 116836 119593 118728 119787 116614 112337 112039 113633 114532 111730 113041 113968 111784 114278 113341 118015 114263 114537 112697 112261 109711 108466 111410 108897 111810 110421 104438 105273 105642 101985 105417 101350 101759 104635 100949 102078 105804 100796 100715 103115 99927 96058 99245 98468 96040 95786 95321 97661 92221 94747 97320 96812 94105 94089 93955 92634 91664 93382 91134 94278 90573 88794 90089 90962 90290 89813 89854 91146 93112 93062 92047 87782 91374 94098 86435 86775 83438 84439 83237 85672 82995 81838 84546 83376 83985 82670 82725 88244 79869 80767 82196 79127 80946 82437 81829 78385 78202 75889 76206 77253 74577 75261 75017 71337 75490 71826 72002 76748 71537 74705 73074 71061 68967 69254 68856 64306 68851 65500 65865 64949 62784 67468 67029 65127 64403 62011 61777 63708 63407 62664 62741 60061 59856 59659 60152 59426 59824 57922 60257 57627 57753 60164 61013 56391 58029 56933 53302 57533 53512 53874 53844 51915 51888 54456 51075 51879 51123 52583 49564 49926 50241 49222 50740 48270 49524 49258 47635 47096 46543 43940 45018 44849 44800 42075 42441 42256 43062 43691 43054 42407 38439 41074 38290 38874 37918 37765 37457 37767 37091 36622 37558 35208 36980 36406 33626 35653 34598 33984 34646 33022 31595 31354 31054 30134 30040 29961 28070 29641 28573 27970 26531 26673 27342 26333 25462 26678 23276 24307 24429 24071 23245 22797 22479 20768 21082 21155 19068 18584 17705 17934 16645 17375 16782 17032 15795 15809 15639 13852 13958 14113 11863 13803 12737 14046 13815 12336 13427 12465 12285 11294 10401 10562 9208 9411 8523 8645 8694 7245 7397 6280 5658 6351 4681 5158 3486 4103 3717 4371 3638 3487 2615 2426 1558 1875 946 928 +0 diff --git a/Student/task3/Test_H/Hard_H/fft.sy b/Student/task3/Test_H/Hard_H/fft.sy new file mode 100644 index 0000000..e96be9e --- /dev/null +++ b/Student/task3/Test_H/Hard_H/fft.sy @@ -0,0 +1,80 @@ +const int mod = 998244353; +int d; + +int multiply(int a, int b){ + if (b == 0) return 0; + if (b == 1) return a % mod; + int cur = multiply(a, b/2); + cur = (cur + cur) % mod; + if (b % 2 == 1) return (cur + a) % mod; + else return cur; +} + +int power(int a, int b){ + if (b == 0) return 1; + int cur = power(a, b/2); + cur = multiply(cur, cur); + if (b % 2 == 1) return multiply(cur, a); + else return cur; +} +const int maxlen = 2097152; +int temp[maxlen], a[maxlen], b[maxlen], c[maxlen]; + +int memmove(int dst[], int dst_pos, int src[], int len){ + int i = 0; + while (i < len){ + dst[dst_pos + i] = src[i]; + i = i + 1; + } + return i; +} + +int fft(int arr[], int begin_pos, int n, int w){ + if (n == 1) return 1; + int i = 0; + while (i < n){ + if (i % 2 == 0) temp[i / 2] = arr[i + begin_pos]; + else temp[n / 2 + i / 2] = arr[i + begin_pos]; + i = i + 1; + } + + memmove(arr, begin_pos, temp, n); + fft(arr, begin_pos, n / 2, multiply(w, w)); + fft(arr, begin_pos + n / 2, n / 2, multiply(w, w)); + i = 0; + int wn = 1; + while (i < n / 2){ + int x = arr[begin_pos + i]; + int y = arr[begin_pos + i + n / 2]; + arr[begin_pos + i] = (x + multiply(wn, y)) % mod; + arr[begin_pos + i + n / 2] = (x - multiply(wn, y) + mod) % mod; + wn = multiply(wn, w); + i = i + 1; + } + return 0; +} + +int main(){ + int n = getarray(a); + int m = getarray(b); + d = 1; + while (d < n + m - 1){ + d = d * 2; + } + fft(a, 0, d, power(3, (mod - 1) / d)); + fft(b, 0, d, power(3, (mod - 1) / d)); + + int i = 0; + while (i < d){ + a[i] = multiply(a[i], b[i]); + i = i + 1; + } + fft(a, 0, d, power(3, mod-1 - (mod-1)/d)); + i = 0; + while (i < d){ + a[i] = multiply(a[i], power(d, mod-2)); + i = i + 1; + } + putarray(n + m - 1, a); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Hard_H/kmp.in b/Student/task3/Test_H/Hard_H/kmp.in new file mode 100644 index 0000000..7e02d20 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/kmp.in @@ -0,0 +1,2 @@ +abcabdbca +aababcabdabdababcabdbcadceadbcababcdcbaabsbda diff --git a/Student/task3/Test_H/Hard_H/kmp.out b/Student/task3/Test_H/Hard_H/kmp.out new file mode 100644 index 0000000..208b018 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/kmp.out @@ -0,0 +1,2 @@ +23 +0 diff --git a/Student/task3/Test_H/Hard_H/kmp.sy b/Student/task3/Test_H/Hard_H/kmp.sy new file mode 100644 index 0000000..b3dd7a9 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/kmp.sy @@ -0,0 +1,62 @@ + +void get_next(int str[], int next[]) +{ + next[0] = -1; + int i = 0, j = -1; + while (str[i]) { + if (j == -1 || str[i] == str[j]) { + j = j + 1; + i = i + 1; + next[i] = j; + } + else + j = next[j]; + } +} + +int KMP(int dst[], int src[]) +{ + int next[4096]; + get_next(dst, next); + + int i = 0, j = 0; + while (src[j]) { + if (dst[i] == src[j]) { + i = i + 1; + j = j + 1; + if (!dst[i]) { + return j; + } + } else { + i = next[i]; + if (i == -1) { + i = i + 1; + j = j + 1; + } + } + } + return -1; +} + +int read_str(int buf[]) +{ + int i = 0; + while (1) { + buf[i] = getch(); + if (buf[i] == 10) + break; + i = i + 1; + } + buf[i] = 0; + return i; +} + +int main() +{ + int dst[4096], src[4096]; + read_str(dst); + read_str(src); + putint(KMP(dst, src)); + putch(10); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Hard_H/long_code.out b/Student/task3/Test_H/Hard_H/long_code.out new file mode 100644 index 0000000..f7bf329 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/long_code.out @@ -0,0 +1,2 @@ +7238926282254275832735749053546579352646394592968929756452279588796363928129015723262728293639586883878996254264273279282290354452459574639657756905929935175115723262728293639586883878996254264273279282290354452459574639657756905929935157232627282936395868838789962542642732792822903544524595746396577569059299351572326272829363958688387899625426427327928229035445245957463965775690592993500014500056800018350002210000119500024160002770003581016102157158658902805545816096195895834243461553125546824662331115043274-77600 +0 diff --git a/Student/task3/Test_H/Hard_H/long_code.sy b/Student/task3/Test_H/Hard_H/long_code.sy new file mode 100644 index 0000000..9eb211e --- /dev/null +++ b/Student/task3/Test_H/Hard_H/long_code.sy @@ -0,0 +1,303 @@ +// Really long code; +int n; + +int bubblesort(int arr[]) { + int i; + int j; + i =0; + while(i < n-1){ + // Last i elements are already in place + j = 0; + while(j < n-i-1){ + if (arr[j] > arr[j+1]) { + // swap(&arr[j], &arr[j+1]); + int tmp; + tmp = arr[j+1]; + arr[j+1] = arr[j]; + arr[j] = tmp; + } + j = j + 1; + } + i = i + 1; + } + return 0; +} + +int insertsort(int a[]) { + int i; + i = 1; + while(i-1&&temp k - 1) + { + j = j - 1; + } + + if(i < j) + { + arr[i] = arr[j]; + i = i + 1; + } + + while(i < j && arr[i] < k) + { + i = i + 1; + } + + if(i < j) + { + arr[j] = arr[i]; + j = j - 1; + } + } + + arr[i] = k; + int tmp; + tmp = i - 1; + tmp = QuickSort(arr, low, tmp); + tmp = i + 1; + tmp = QuickSort(arr, tmp, high); + } + return 0; +} + + +int getMid(int arr[]) { + int mid; + if (n % 2 == 0) { + mid = n / 2; + return (arr[mid] + arr[mid - 1]) / 2; + } else { + mid = n / 2; + return arr[mid]; + } +} + +int getMost(int arr[]) { + int count[1000]; + int i; + i = 0; + while (i < 1000) { + count[i] = 0; + i = i + 1; + } + i = 0; + int max; + int number; + max = 0; + while (i < n) { + int num; + num = arr[i]; + count[num] = count[num] + 1; + if (count[num] > max) { + max = count[num]; + number = num; + } + i = i + 1; + } + return number; +} + +int revert(int arr[]) { + int temp; + int i; + int j; + i = 0; + j = 0; + while (i < j) { + temp = arr[i]; + arr[i] = arr[j]; + arr[j] = temp; + i = i + 1; + j = j - 1; + } + return 0; +} + +int arrCopy(int src[], int target[]) { + int i; + i = 0; + while (i < n) { + target[i] = src[i]; + i = i + 1; + } + return 0; +} + +int calSum(int arr[], int stride) { + int sum; + sum = 0; + int i; + i = 0; + while (i < n) { + sum = sum + arr[i]; + if (i % stride != stride - 1) { + arr[i] = 0; + } else { + arr[i] = sum; + sum = 0; + } + i = i + 1; + } + return 0; +} + +int avgPooling(int arr[], int stride) { + int sum; + int i; + i = 0; + sum = 0; + int lastnum; + while (i < n) { + if (i < stride - 1) { + sum = sum + arr[i]; + } else if (i == stride - 1) { + lastnum = arr[0]; + arr[0] = sum / stride; + } else { + sum = sum + arr[i] - lastnum; + lastnum = arr[i - stride + 1]; + arr[i - stride + 1] = sum / stride; + } + i = i + 1; + } + i = n - stride + 1; + while (i < n) { + arr[i] = 0; + i = i + 1; + } + return 0; +} + +int main() { + n = 32; + int arr[32]; + int result[32]; + arr[0] = 7; + arr[1] = 23; + arr[2] = 89; + arr[3] = 26; + arr[4] = 282; + arr[5] = 254; + arr[6] = 27; + arr[7] = 5; + arr[8] = 83; + arr[9] = 273; + arr[10] = 574; + arr[11] = 905; + arr[12] = 354; + arr[13] = 657; + arr[14] = 935; + arr[15] = 264; + arr[16] = 639; + arr[17] = 459; + arr[18] = 29; + arr[19] = 68; + arr[20] = 929; + arr[21] = 756; + arr[22] = 452; + arr[23] = 279; + arr[24] = 58; + arr[25] = 87; + arr[26] = 96; + arr[27] = 36; + arr[28] = 39; + arr[29] = 28; + arr[30] = 1; + arr[31] = 290; + int t; + t = arrCopy(arr, result); + t = revert(result); + int i; + i = 0; + while (i < 32) { + t = result[i]; + putint(t); + i = i + 1; + } + t = bubblesort(result); + i = 0; + while (i < 32) { + t = result[i]; + putint(t); + i = i + 1; + } + t = getMid(result); + putint(t); + t = getMost(result); + putint(t); + + t = arrCopy(arr, result); + t = bubblesort(result); + i = 0; + while (i < 32) { + t = result[i]; + putint(t); + i = i + 1; + } + + t = arrCopy(arr, result); + t = insertsort(result); + i = 0; + while (i < 32) { + t = result[i]; + putint(t); + i = i + 1; + } + + t = arrCopy(arr, result); + i = 0; + t = 31; + t = QuickSort(result, i, t); + while (i < 32) { + t = result[i]; + putint(t); + i = i + 1; + } + + t = arrCopy(arr, result); + t = calSum(result, 4); + i = 0; + while (i < 32) { + t = result[i]; + putint(t); + i = i + 1; + } + + t = arrCopy(arr, result); + t = avgPooling(result, 3); + i = 0; + while (i < 32) { + t = result[i]; + putint(t); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Hard_H/nested_calls.in b/Student/task3/Test_H/Hard_H/nested_calls.in new file mode 100644 index 0000000..0cbf79a --- /dev/null +++ b/Student/task3/Test_H/Hard_H/nested_calls.in @@ -0,0 +1,3 @@ +1 2 3 4 5 +6 7 8 9 10 +11 12 13 14 diff --git a/Student/task3/Test_H/Hard_H/nested_calls.out b/Student/task3/Test_H/Hard_H/nested_calls.out new file mode 100644 index 0000000..cb1a40d --- /dev/null +++ b/Student/task3/Test_H/Hard_H/nested_calls.out @@ -0,0 +1 @@ +250 diff --git a/Student/task3/Test_H/Hard_H/nested_calls.sy b/Student/task3/Test_H/Hard_H/nested_calls.sy new file mode 100644 index 0000000..2d24b77 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/nested_calls.sy @@ -0,0 +1,95 @@ +int func1(int x, int y, int z) { + if (z == 0) { + return x * y; + } + else { + return func1(x, y - z, 0); + } +} + +int func2(int x, int y) { + if (y) { + return func2(x % y, 0); + } + else { + return x; + } +} + +int func3(int x, int y) { + if (y == 0) { + return x + 1; + } + else { + return func3(x + y, 0); + } +} + +int func4(int x, int y, int z) { + if (x) { + return y; + } + else { + return z; + } +} + +int func5(int x) { + return -x; +} + +int func6(int x, int y) { + if (x && y) { + return 1; + } + else { + return 0; + } +} + +int func7(int x) { + if (!x) { + return 1; + } + else { + return 0; + } +} + +int main() { + int i1 = getint(), i2 = getint(), i3 = getint(), i4 = getint(); + int arr[10]; + int i = 0; + while (i < 10) { + arr[i] = getint(); + i = i + 1; + } + int a = func1( + // this + func2( + // is + func1( + // comment + func3(func4(func5(func3(func2(func6(func7(i1), func5(i2)), i3), + // this + i4)), + // is + arr[0], + // function + func1(func2(func3(func4(func5(arr[1]), + // call + func6(arr[2], func7(arr[3])), + func2(arr[4], func7(arr[5]))), + arr[6]), + arr[7]), + func3(arr[8], func7(arr[9])), i1)), + func2(i2, func3(func7(i3), i4))), + arr[0], arr[1]), + arr[2]), + arr[3], + func3(func2(func1(func2(func3(arr[4], func5(arr[5])), func5(arr[6])), + arr[7], func7(arr[8])), + func5(arr[9])), + i1)); + return a; +} diff --git a/Student/task3/Test_H/Hard_H/percolation.in b/Student/task3/Test_H/Hard_H/percolation.in new file mode 100644 index 0000000..60b26e8 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/percolation.in @@ -0,0 +1,10 @@ +2 2 +3 1 +4 2 +4 4 +1 2 +2 3 +2 1 +3 2 +3 4 +3 1 diff --git a/Student/task3/Test_H/Hard_H/percolation.out b/Student/task3/Test_H/Hard_H/percolation.out new file mode 100644 index 0000000..9807191 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/percolation.out @@ -0,0 +1,2 @@ +8 +0 diff --git a/Student/task3/Test_H/Hard_H/percolation.sy b/Student/task3/Test_H/Hard_H/percolation.sy new file mode 100644 index 0000000..a4fdae8 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/percolation.sy @@ -0,0 +1,82 @@ +int array[110]; +int n; +void init(int n) { + int i = 1; + while (i <= n * n + 1) { + array[i] = -1; + i = i + 1; + } +} + +int findfa(int a) { + if (array[a] == a) + return a; + else { + array[a] = findfa(array[a]); + return array[a]; + } +} +void mmerge(int a, int b) { + int m = findfa(a); + int n = findfa(b); + if (m != n) array[m] = n; +} +int main() { + int t, m; + int a, b; + t = 1; + while (t) { + t = t - 1; + n = 4; + m = 10; + int i = 0; + int flag = 0; + init(n); + int k = n * n + 1; + + while (i < m) { + a = getint(); + b = getint(); + + if (!flag) { + int loc = n * (a - 1) + b; + + array[loc] = loc; + if (a == 1) { + array[0] = 0; + mmerge(loc, 0); + } + if (a == n) { + array[k] = k; + mmerge(loc, k); + } + if (b < n && array[loc + 1] != -1) { + mmerge(loc, loc + 1); + } + if (b > 1 && array[loc - 1] != -1) { + mmerge(loc, loc - 1); + } + if (a < n && array[loc + n] != -1) { + mmerge(loc, loc + n); + } + if (a > 1 && array[loc - n] != -1) { + mmerge(loc, loc - n); + } + + if (array[0] != -1 && array[k] != -1 && findfa(0) == findfa(k)) { + flag = 1; + int tmp = i + 1; + putint(tmp); + putch(10); + } + } + + i = i + 1; + } + if (!flag) { + putint(-1); + putch(10); + } + } + return 0; +} diff --git a/Student/task3/Test_H/Hard_H/scope2.out b/Student/task3/Test_H/Hard_H/scope2.out new file mode 100644 index 0000000..eba9a77 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/scope2.out @@ -0,0 +1,2 @@ +-40 +62 diff --git a/Student/task3/Test_H/Hard_H/scope2.sy b/Student/task3/Test_H/Hard_H/scope2.sy new file mode 100644 index 0000000..4457362 --- /dev/null +++ b/Student/task3/Test_H/Hard_H/scope2.sy @@ -0,0 +1,26 @@ +int k; + +int main() { + k = 3389; + if (k < 10000) { + k = k + 1; + int k = 112; + while (k > 10) { + k = k - 88; + if (k < 1000) { + int g = 9; + { + int l = 11; + { + g = 10; + k = k - g; + int g = 11; + k = k + g + l; + } + } + } + } + putint(k); + } + return k; +} diff --git a/Student/task3/Test_H/Hard_H/side_effect.out b/Student/task3/Test_H/Hard_H/side_effect.out new file mode 100644 index 0000000..6d00d1a --- /dev/null +++ b/Student/task3/Test_H/Hard_H/side_effect.out @@ -0,0 +1,11 @@ +1 +4 2 +5 +8 4 +9 +12 8 +13 +16 16 +24 16 +29 16 +29 diff --git a/Student/task3/Test_H/Hard_H/side_effect.sy b/Student/task3/Test_H/Hard_H/side_effect.sy new file mode 100644 index 0000000..064b67e --- /dev/null +++ b/Student/task3/Test_H/Hard_H/side_effect.sy @@ -0,0 +1,29 @@ + +int a = -1, b = 1; + +int inc_a() +{ + int b = a; + b = b + 1; + a = b; + return a; +} + +int main() +{ + int k = 5; + while (k >= 0) { + if (inc_a() && inc_a() && inc_a()) { + putint(a); putch(32); putint(b); putch(10); + } + if (inc_a() < 14 || inc_a() && inc_a() - inc_a() + 1) { + putint(a); putch(10); + b = b * 2; + } else { + inc_a(); + } + k = k - 1; + } + putint(a); putch(32); putint(b); putch(10); + return a; +} diff --git a/Student/task3/Test_H/Medium_H/add_prior_equal.out b/Student/task3/Test_H/Medium_H/add_prior_equal.out new file mode 100644 index 0000000..9aea9e0 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/add_prior_equal.out @@ -0,0 +1,2 @@ +0 +0 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/add_prior_equal.sy b/Student/task3/Test_H/Medium_H/add_prior_equal.sy new file mode 100644 index 0000000..5996ada --- /dev/null +++ b/Student/task3/Test_H/Medium_H/add_prior_equal.sy @@ -0,0 +1,19 @@ +// Add is prior than equal and not equal +int main () { + int a; + int b; + int c; + a = 1; + b = 4; + c = 28; + int t; + if (c + a != b) { + t = c % -b; + putint(t); + } + if (b - c == a) { + t = c%b+b; + putint(t); + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/array_test.out b/Student/task3/Test_H/Medium_H/array_test.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test_H/Medium_H/array_test.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test_H/Medium_H/array_test.sy b/Student/task3/Test_H/Medium_H/array_test.sy new file mode 100644 index 0000000..90d5622 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/array_test.sy @@ -0,0 +1,17 @@ +const int arr[5] = {1,3,4,2}; +int a = 0; + +int sum(int a, int b){ + return a+b; +} + +int main(){ + int cnt = 0; + while (a < arr[a]) { + a = arr[a]; + if (arr[a + arr[a] - 1] > arr[a] - 1.5) { + cnt = arr[cnt] + 1; + } + } + return sum(arr[a], -cnt); +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/assign_after_continue.out b/Student/task3/Test_H/Medium_H/assign_after_continue.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Student/task3/Test_H/Medium_H/assign_after_continue.out @@ -0,0 +1 @@ +0 diff --git a/Student/task3/Test_H/Medium_H/assign_after_continue.sy b/Student/task3/Test_H/Medium_H/assign_after_continue.sy new file mode 100644 index 0000000..d673578 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/assign_after_continue.sy @@ -0,0 +1,14 @@ +const int arr[5] = {1,3,4,2}; +int a = 0; + +int main(){ + int cnt = 0; + while (a < arr[a]) { + a = arr[a]; + if (arr[a + arr[a] - 1] > arr[a] - 1.5) { + continue; + cnt = arr[cnt] + 1; + } + } + return cnt; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/assign_complex_expr.out b/Student/task3/Test_H/Medium_H/assign_complex_expr.out new file mode 100644 index 0000000..ae3f968 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/assign_complex_expr.out @@ -0,0 +1,2 @@ +-171 +0 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/assign_complex_expr.sy b/Student/task3/Test_H/Medium_H/assign_complex_expr.sy new file mode 100644 index 0000000..c6471a7 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/assign_complex_expr.sy @@ -0,0 +1,18 @@ +// Use complex expression in assign structure +int main () { + int a; + int b; + int c; + int d; + int result; + a = 5; + b = 5; + c = 1; + d = -2; + result = (d * 1 / 2) + (a - b) - -(c + 3) % 2; + putint(result); + result = ((d % 2 + 67) + -(a - b) - -((c + 2) % 2)); + result = result + 3; + putint(result); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/big_int_mul.out b/Student/task3/Test_H/Medium_H/big_int_mul.out new file mode 100644 index 0000000..b902582 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/big_int_mul.out @@ -0,0 +1,2 @@ +3102343761271952753654505476597868729361003112012671299112096683775968059149440439438030623917912792644636180 +0 diff --git a/Student/task3/Test_H/Medium_H/big_int_mul.sy b/Student/task3/Test_H/Medium_H/big_int_mul.sy new file mode 100644 index 0000000..d2f0da1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/big_int_mul.sy @@ -0,0 +1,65 @@ +const int len = 20; + +int main() +{ + int i, j, t, n, temp; + int mult1[len] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0}; + int mult2[len] = {2, 3, 4, 2, 5, 7 ,9 ,9, 0, 1, 9, 8, 7, 6, 4, 3, 2, 1, 2, 2}; + int len1 = len; + int len2 = len; + int c1[len + 5]; + int c2[len + 5]; + int result[len * 2] = {}; + + i = 0; + while (i < len1) { + c1[i] = mult1[i]; + i = i + 1; + } + + i = 0; + while (i < len2) { + c2[i] = mult2[i]; + i = i + 1; + } + + n = len1 + len2 - 1; + + i = 0; + while (i <= n) { + result[i]=0; + i = i + 1; + } + + temp=0; + + i = len2 - 1; + while (i > -1) { + t = c2[i]; + j = len1 - 1; + while (j > -1) { + temp = result[n] + t * c1[j]; + if(temp >= 10) { + result[n] = (temp); + result[n-1] = result[n-1] + temp / 10; + } + else + result[n] = temp; + j = j - 1; + n = n - 1; + } + n = n + len1 - 1; + i = i - 1; + } + + if(result[0] != 0) + putint(result[0]); + + i = 1; + while (i <= len1 + len2 - 1) { + putint(result[i]); + i = i + 1; + } + + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/brainfk.in b/Student/task3/Test_H/Medium_H/brainfk.in new file mode 100644 index 0000000..23a0b41 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/brainfk.in @@ -0,0 +1,2 @@ +4010 +++++++++[->++++++++<]>+++++++++.<+++++[->-----<]>---------.<++++++++[->++++++++<]>++++++.<++++++++[->--------<]>-------------.<+++++++[->+++++++<]>++.<+++++[->+++++<]>+++++++++.+++++.-----.--------.----.<++++[->++++<]>.<++++[->----<]>--------.<++++++++[->--------<]>-.<++++++[->++++++<]>++++.<+++++[->+++++<]>.<++++[->++++<]>+.+++.<+++[->---<]>----.+.<++++++++[->--------<]>---------.<++++++++[->++++++++<]>++++++.<+++[->+++<]>+++.---.--.<++++++++[->--------<]>-------------.<+++++++++[->+++++++++<]>+++.<+++[->---<]>---.---.<++++++++[->--------<]>-----.<++++++[->++++++<]>+.<+++++[->+++++<]>+++.<++++[->++++<]>++.+.<+++++++++[->---------<]>---.<++++++[->++++++<]>++++++.<++++++[->++++++<]>+++++++.-------.-----.++++++.+++.<+++++++++[->---------<]>-.<++++++[->++++++<]>++++.<+++++[->+++++<]>++++++++.--.+.<++++++++[->--------<]>--------.<+++++++[->+++++++<]>++.<++++[->++++<]>.+++++.+++++++..---.<++++++++[->--------<]>.<+++[->---<]>---.<++++++++[->++++++++<]>+.<+++[->+++<]>++++.<+++[->---<]>-.<++++++++[->--------<]>----.<++++++[->++++++<]>+++++.<+++++[->-----<]>---------.<++++++++[->++++++++<]>++++++.<++++++++[->--------<]>-------------.<++++++++[->++++++++<]>++++++++++++++.+.+++++.<+++++++++[->---------<]>---.<++++++++[->++++++++<]>+++++++++.+++++.++++++.<+++[->---<]>------.<+++[->+++<]>++++.<+++[->---<]>----.<+++[->+++<]>+++++.+.<+++[->---<]>------.-.<++++++++[->--------<]>----.<++++++++[->++++++++<]>+++++++++.+++++.<++++++++[->--------<]>--------------.<++++++++[->++++++++<]>+++++++++++++++.+++.<+++[->---<]>-----.+++++.+++++.<+++[->---<]>----.<++++[->++++<]>+.+++++++.<+++++++++[->---------<]>--------.<++++++++[->++++++++<]>++++++++.<+++[->+++<]>++++.--------.<+++[->---<]>---.<+++[->+++<]>++++.+++++.<++++++++[->--------<]>-----.<+++[->---<]>-----.<++++++[->++++++<]>+++++.<+++++[->+++++<]>++++.<++++++++[->--------<]>------.<+++++++++[->+++++++++<]>+++.<+++[->---<]>---.---.<+++[->+++<]>++++.<+++[->---<]>----.<++++++++[->--------<]>-----.<+++++++++[->+++++++++<]>++++++.<++++[->----<]>--.<+++[->+++<]>++++.<+++[->---<]>----.<++++++++[->--------<]>-----.<++++++++[->++++++++<]>+.<+++[->+++<]>++++.<++++++++[->--------<]>--------------.<++++++++[->++++++++<]>+.<+++[->+++<]>++.---.----.+++++++++.<++++++++[->--------<]>--.<+++[->---<]>---.<++++++++[->++++++++<]>+.<++++++++[->--------<]>-.<+++++++++[->+++++++++<]>+++.<+++[->---<]>--.++++.--------.<++++++++[->--------<]>-----.<+++++++++[->+++++++++<]>+++.--.<++++[->----<]>-.<++++[->++++<]>+++++.<++++[->----<]>-.+++++++..-------.<+++[->+++<]>++++.<++++++++[->--------<]>------.<+++[->---<]>---.<++++++++[->++++++++<]>+.<+++[->+++<]>++++.<++++++++[->--------<]>--------------.<++++++++[->++++++++<]>+++++++++++++++.+++++.<+++[->---<]>---.---.<+++[->+++<]>++++.+++++.--------.+++.------.--------.+.<+++[->+++<]>++++.<+++++++++[->---------<]>-.<++++++++[->++++++++<]>+++++++++++++++.+++.<+++++++++[->---------<]>-.<++++++++[->++++++++<]>+.<++++++++[->--------<]>-.<+++++++++[->+++++++++<]>++.++.-----.<+++[->---<]>--.<+++[->+++<]>++++.<+++[->---<]>-.---.<+++[->+++<]>++++.---.<++++++++[->--------<]>---------------.<++++++++[->++++++++<]>+.<+++[->+++<]>+++.++.-.-------.<++++++++[->--------<]>-------.<+++++++++[->+++++++++<]>++++++++.<+++[->---<]>-.++++++.<++++++++[->--------<]>---------.<+++[->---<]>---.<++++++++[->++++++++<]>++++++++++++++++.----.-------.----.<++++[->++++<]>++.<+++[->---<]>-----.<++++++++[->--------<]>-----.<++++++++[->++++++++<]>+++.<+++[->+++<]>+++.--.--------.<++++++++[->--------<]>-----.<+++++++++[->+++++++++<]>+++.-----.<++++++++[->--------<]>---------------.<++++++++[->++++++++<]>+++++++++++++.--------..<+++[->+++<]>++++++.<+++++++++[->---------<]>---.<++++++++[->++++++++<]>+++++++++++++.--------.<++++++++[->--------<]>----.-.<+++++++[->+++++++<]>+++.<++++[->++++<]>++++.-------.<++++[->++++<]>+++.<++++++++[->--------<]>-------------.<++++++++[->++++++++<]>++++++++++++.<+++++++++[->---------<]>--.<++++++++[->++++++++<]>+.<+++[->+++<]>++..<+++++++[->-------<]>-------------.<+++++[->-----<]>--------.---.< diff --git a/Student/task3/Test_H/Medium_H/brainfk.out b/Student/task3/Test_H/Medium_H/brainfk.out new file mode 100644 index 0000000..843dc54 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/brainfk.out @@ -0,0 +1,2 @@ +I'm Suzumiya Haruhi from the East Junior High School, and I'm not interested in ordinary humans. If there were an alien, a time traveller, an otherworlder or a superhero among you, please come to meet me! That's all. +0 diff --git a/Student/task3/Test_H/Medium_H/brainfk.sy b/Student/task3/Test_H/Medium_H/brainfk.sy new file mode 100644 index 0000000..d1ee0c1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/brainfk.sy @@ -0,0 +1,73 @@ +/* +a brainfuck interpreter +reference: https://gist.github.com/maxcountryman/1699708 +*/ + +// tape, input buffer, and read/write pointer +const int TAPE_LEN = 65536, BUFFER_LEN = 32768; +int tape[TAPE_LEN], program[BUFFER_LEN], ptr = 0; + +// read the input program +void read_program() { + int i = 0, len = getint(); + while (i < len) { + program[i] = getch(); + i = i + 1; + } + program[i] = 0; +} + +// interpret the input program +void interpret(int input[]) { + int cur_char, loop, i = 0; + while (input[i]) { + cur_char = input[i]; + if (cur_char == 62) { + // '>' + ptr = ptr + 1; + } + else if (cur_char == 60) { + // '<' + ptr = ptr - 1; + } + else if (cur_char == 43) { + // '+' + tape[ptr] = tape[ptr] + 1; + } + else if (cur_char == 45) { + // '-' + tape[ptr] = tape[ptr] - 1; + } + else if (cur_char == 46) { + // '.' + putch(tape[ptr]); + } + else if (cur_char == 44) { + // ',' + tape[ptr] = getch(); + } + else if (cur_char == 93 && tape[ptr]) { + // ']' + loop = 1; + while (loop > 0) { + i = i - 1; + cur_char = input[i]; + if (cur_char == 91) { + // '[' + loop = loop - 1; + } + else if (cur_char == 93) { + // ']' + loop = loop + 1; + } + } + } + i = i + 1; + } +} + +int main() { + read_program(); + interpret(program); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/decl_after_return.out b/Student/task3/Test_H/Medium_H/decl_after_return.out new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/Student/task3/Test_H/Medium_H/decl_after_return.out @@ -0,0 +1 @@ +3 diff --git a/Student/task3/Test_H/Medium_H/decl_after_return.sy b/Student/task3/Test_H/Medium_H/decl_after_return.sy new file mode 100644 index 0000000..ba31a49 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/decl_after_return.sy @@ -0,0 +1,5 @@ +int main(){ + return 3; + int a = 1; + return a; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/exgcd.out b/Student/task3/Test_H/Medium_H/exgcd.out new file mode 100644 index 0000000..33a9dba --- /dev/null +++ b/Student/task3/Test_H/Medium_H/exgcd.out @@ -0,0 +1,2 @@ +13 +0 diff --git a/Student/task3/Test_H/Medium_H/exgcd.sy b/Student/task3/Test_H/Medium_H/exgcd.sy new file mode 100644 index 0000000..3abdbcf --- /dev/null +++ b/Student/task3/Test_H/Medium_H/exgcd.sy @@ -0,0 +1,22 @@ +int exgcd(int a,int b,int x[],int y[]) { + if(b == 0) { + x[0] = 1; + y[0] = 0; + return a; + } + else { + int r = exgcd(b, a % b, x, y); + int t = x[0]; + x[0] = y[0]; + y[0] = (t - a / b * y[0]); + return r; + } +} + +int main() { + int a = 7, b = 15, x[1] = {1}, y[1] = {1}; + exgcd(a, b, x, y); + x[0] = (x[0] % b + b) % b; + putint(x[0]); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/go_upstairs.out b/Student/task3/Test_H/Medium_H/go_upstairs.out new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/go_upstairs.out @@ -0,0 +1 @@ +8 diff --git a/Student/task3/Test_H/Medium_H/go_upstairs.sy b/Student/task3/Test_H/Medium_H/go_upstairs.sy new file mode 100644 index 0000000..f47b317 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/go_upstairs.sy @@ -0,0 +1,22 @@ +int climbStairs(int n) { + if(n < 4) + return n; + int dp[10]; + dp[0] = 0; + dp[1] = 1; + dp[2] = 2; + int i; + i = 3; + while(i 0) { + hanoi(getint(), 1, 2, 3); + putch(10); + n = n - 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/if_complex_expr.out b/Student/task3/Test_H/Medium_H/if_complex_expr.out new file mode 100644 index 0000000..389e262 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/if_complex_expr.out @@ -0,0 +1,2 @@ +2 +0 diff --git a/Student/task3/Test_H/Medium_H/if_complex_expr.sy b/Student/task3/Test_H/Medium_H/if_complex_expr.sy new file mode 100644 index 0000000..32c897c --- /dev/null +++ b/Student/task3/Test_H/Medium_H/if_complex_expr.sy @@ -0,0 +1,21 @@ +// Use complex expression in if structure +int main () { + int a; + int b; + int c; + int d; + int result; + a = 5; + b = 5; + c = 1; + d = -2; + result = 2; + if ((d * 1 / 2) < 0 || (a - b) != 0 && (c + 3) % 2 != 0) { + putint(result); + } + if ((d % 2 + 67) < 0 || (a - b) != 0 && (c + 2) % 2 != 0) { + result = 4; + putint(result); + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/index_arithmetic_expr.out b/Student/task3/Test_H/Medium_H/index_arithmetic_expr.out new file mode 100644 index 0000000..c393a51 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/index_arithmetic_expr.out @@ -0,0 +1,2 @@ +3 +0 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/index_arithmetic_expr.sy b/Student/task3/Test_H/Medium_H/index_arithmetic_expr.sy new file mode 100644 index 0000000..3ec6dbc --- /dev/null +++ b/Student/task3/Test_H/Medium_H/index_arithmetic_expr.sy @@ -0,0 +1,15 @@ +// Use arithmetic expression as array's index +int main() { + int a; + int b; + int result[3]; + a = 56; + b = 12; + result[0] = 1; + result[1] = 2; + result[2] = 3; + int t; + t = result[(a % b + b) / 5 - 2]; + putint(t); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/index_complex_expr.out b/Student/task3/Test_H/Medium_H/index_complex_expr.out new file mode 100644 index 0000000..53c10fe --- /dev/null +++ b/Student/task3/Test_H/Medium_H/index_complex_expr.out @@ -0,0 +1,2 @@ +45 +0 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/index_complex_expr.sy b/Student/task3/Test_H/Medium_H/index_complex_expr.sy new file mode 100644 index 0000000..3547bca --- /dev/null +++ b/Student/task3/Test_H/Medium_H/index_complex_expr.sy @@ -0,0 +1,23 @@ +// Use complex expression in assign structure +int main () { + int a; + int b; + int c; + int d; + int result[5]; + a = 5; + b = 5; + c = 1; + d = -2; + result[0] = 1; + result[1] = 2; + result[2] = 3; + result[3] = 4; + result[4] = 5; + int t; + t = result[((d * 1 / 2) + 4 + (a - b) - -(c + 3) % 2) % 5]; + putint(t); + t = result[(((c % 2 + 67) + a - b) - -((c + 2) % 2)) % 5]; + putint(t); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/int_literal.out b/Student/task3/Test_H/Medium_H/int_literal.out new file mode 100644 index 0000000..dcb6b5b --- /dev/null +++ b/Student/task3/Test_H/Medium_H/int_literal.out @@ -0,0 +1 @@ +230 diff --git a/Student/task3/Test_H/Medium_H/int_literal.sy b/Student/task3/Test_H/Medium_H/int_literal.sy new file mode 100644 index 0000000..074b099 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/int_literal.sy @@ -0,0 +1,50 @@ +int s = 0; + +int get_ans_se(int ans, int v0, int v1) { + int v = 0; + if (v0 == v1) v = 1; + ans = ans * 2; + ans = ans + v; + s = s + ans; + return ans; +} + +int get_ans(int ans, int v0, int v1) { + int v = 0; + if (v0 == v1) v = 1; + ans = ans * 2; + ans = ans + v; + return ans; +} + +int main() { + const int k0 = -2147483648; + const int k1 = 0x80000000; + const int k2 = 0x80000000 + 1; + const int k3 = 0x7fFffffF; + const int k4 = 0x7fFffffF - 1; + int a1, a2, a3, a4; + a1 = get_ans( 0, k0, k1); + a1 = get_ans(a1, k0 + 1, k2); + a1 = get_ans(a1, k0, -k3 - 1); + a1 = get_ans(a1, k0, k4 + 1); + a1 = get_ans(a1, k1 / 2, k2 / 2); + a1 = get_ans(a1, k1, -k3 - 1); + a1 = get_ans(a1, k1, k4 + 1); + a2 = get_ans( 0, k2, k3); + a2 = get_ans(a2, k2, k4); + a2 = get_ans(a2, k3, k4); + a2 = get_ans(a2, k0 / 2, k1 / 2); + a3 = get_ans_se( 0, k0, k1); + a3 = get_ans_se(a3, k0 + 1, k2); + a3 = get_ans_se(a3, k0, -k3 - 1); + a3 = get_ans_se(a3, k0, k4 + 1); + a3 = get_ans_se(a3, k1 / 2, k2 / 2); + a3 = get_ans_se(a3, k1, -k3 - 1); + a3 = get_ans_se(a3, k1, k4 + 1); + a4 = get_ans_se( 0, k2, k3); + a4 = get_ans_se(a4, k2, k4); + a4 = get_ans_se(a4, k3, k4); + a4 = get_ans_se(a4, k0 / 2, k1 / 2); + return a1 + a2 + a3 + a4; +} diff --git a/Student/task3/Test_H/Medium_H/long_array.out b/Student/task3/Test_H/Medium_H/long_array.out new file mode 100644 index 0000000..a5f9d74 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/long_array.out @@ -0,0 +1,2 @@ +02425294124166176216218-22282-34782142718170218357718485218672718700218877718865218842718825218832718815218822718825218832718815218822718805218 +216 diff --git a/Student/task3/Test_H/Medium_H/long_array.sy b/Student/task3/Test_H/Medium_H/long_array.sy new file mode 100644 index 0000000..251117b --- /dev/null +++ b/Student/task3/Test_H/Medium_H/long_array.sy @@ -0,0 +1,61 @@ +const int N = 10000; + +int long_array(int k) { + int a1[N]; + int a2[N]; + int a3[N]; + int i = 0; + while (i < N) { + a1[i] = (i * i) % 10; + i = i + 1; + } + i = 0; + while (i < N) { + a2[i] = (a1[i] * a1[i]) % 10; + i = i + 1; + } + i = 0; + while (i < N) { + a3[i] = (a2[i] * a2[i]) % 100 + a1[i]; + i = i + 1; + } + int ans = 0; + i = 0; + while (i < N) { + if (i < 10) { + ans = (ans + a3[i]) % 1333; + putint(ans); + } + else if (i < 20) { + int j = N / 2; + while (j < N) { + ans = ans + a3[i] - a1[j]; + j = j + 1; + } + putint(ans); + } + else if (i < 30) { + int j = N / 2; + while (j < N) { + if (j > 2233) { + ans = ans + a2[i] - a1[j]; + j = j + 1; + } + else { + ans = (ans + a1[i] + a3[j]) % 13333; + j = j + 2; + } + } + putint(ans); + } + else { + ans = (ans + a3[i] * k) % 99988; + } + i = i + 1; + } + return ans; +} + +int main() { + return long_array(9); +} diff --git a/Student/task3/Test_H/Medium_H/many_locals.out b/Student/task3/Test_H/Medium_H/many_locals.out new file mode 100644 index 0000000..73f526a --- /dev/null +++ b/Student/task3/Test_H/Medium_H/many_locals.out @@ -0,0 +1,2 @@ +254 +0 diff --git a/Student/task3/Test_H/Medium_H/many_locals.sy b/Student/task3/Test_H/Medium_H/many_locals.sy new file mode 100644 index 0000000..fd0b4c7 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/many_locals.sy @@ -0,0 +1,39 @@ + +int foo() +{ + int arr[16] = {0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3}; + + int a = 3, b = 7, c = 5, d = 6, e = 1, f = 0, g = 3, h = 5, + i = 4, j = 2, k = 7, l = 9, m = 8, n = 1, o = 4, p = 6; + + int sum1 = a + b + c + d + e + f + g + h; + int sum2 = i + j + k + l + m + n + o + p; + + return sum1 + sum2 + arr[a]; +} + +int main() +{ + int a = 3, b = 7, c = 5, d = 6, e = 1, f = 0, g = 3, h = 5, + i = 4, j = 2, k = 7, l = 9, m = 8, n = 1, o = 4, p = 6; + + int sum1 = a + b + c + d + e + f + g + h; + int sum2 = i + j + k + l + m + n + o + p; + + sum1 = sum1 + foo(); + + int q = 4, r = 7, s = 2, t = 5, u = 8, v = 0, w = 6, x = 3; + + sum2 = sum2 + foo(); + + a = i; b = j; c = k; d = l; + e = m; f = n; g = o; h = p; + + int sum3 = q + r + s + t + u + v + w + x; + + int sum = sum1 + sum2 + sum3; + + putint(sum); + putch(10); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/many_param_call.out b/Student/task3/Test_H/Medium_H/many_param_call.out new file mode 100644 index 0000000..57323a8 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/many_param_call.out @@ -0,0 +1,2 @@ +1054100 +0 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/many_param_call.sy b/Student/task3/Test_H/Medium_H/many_param_call.sy new file mode 100644 index 0000000..ec47425 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/many_param_call.sy @@ -0,0 +1,112 @@ +// Call a func with many params. + +int testParam8(int a0, int a1, int a2, int a3, + int a4, int a5, int a6, int a7) { + return a0 + a1 - a2 - a3 - a4 + a5 + a6 + a7; +} + +int testParam16(int a0, int a1, int a2, int a3, + int a4, int a5, int a6, int a7, + int a8, int a9, int a10, int a11, + int a12, int a13, int a14, int a15) { + return a0 + a1 + a2 + a3 + a4 + a5 + a6 + a7 - + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15; +} + +int testParam32(int a0, int a1, int a2, int a3, + int a4, int a5, int a6, int a7, + int a8, int a9, int a10, int a11, + int a12, int a13, int a14, int a15, + int a16, int a17, int a18, int a19, + int a20, int a21, int a22, int a23, + int a24, int a25, int a26, int a27, + int a28, int a29, int a30, int a31) { + return a0 + a1 + a2 + a3 + a4 + a5 + a6 + a7 + + a8 + a9 + a10 + a11 - a12 - a13 - a14 - a15 - + a16 - a17 - a18 - a19 - a20 - a21 + a22 + a23 + + a24 + a25 + a26 + a27 + a28 + a29 + a30 + a31; +} + +int main() { + int a0; + int a1; + int a2; + int a3; + int a4; + int a5; + int a6; + int a7; + int a8; + int a9; + int a10; + int a11; + int a12; + int a13; + int a14; + int a15; + int a16; + int a17; + int a18; + int a19; + int a20; + int a21; + int a22; + int a23; + int a24; + int a25; + int a26; + int a27; + int a28; + int a29; + int a30; + int a31; + a0 = 0; + a1 = 1; + a2 = 2; + a3 = 3; + a4 = 4; + a5 = 5; + a6 = 6; + a7 = 7; + a8 = 8; + a9 = 9; + a10 = 0; + a11 = 1; + a12 = 2; + a13 = 3; + a14 = 4; + a15 = 5; + a16 = 6; + a17 = 7; + a18 = 8; + a19 = 9; + a20 = 0; + a21 = 1; + a22 = 2; + a23 = 3; + a24 = 4; + a25 = 5; + a26 = 6; + a27 = 7; + a28 = 8; + a29 = 9; + a30 = 0; + a31 = 1; + a0 = testParam8(a0, a1, a2, a3, a4, a5, a6, a7); + putint(a0); + a0 = testParam16(a0, a1, a2, a3, + a4, a5, a6, a7, + a8, a9, a10, a11, + a12, a13, a14, a15); + putint(a0); + a0 = testParam32(a0, a1, a2, a3, + a4, a5, a6, a7, + a8, a9, a10, a11, + a12, a13, a14, a15, + a16, a17, a18, a19, + a20, a21, a22, a23, + a24, a25, a26, a27, + a28, a29, a30, a31); + putint(a0); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/max_subsequence_sum.out b/Student/task3/Test_H/Medium_H/max_subsequence_sum.out new file mode 100644 index 0000000..7273c0f --- /dev/null +++ b/Student/task3/Test_H/Medium_H/max_subsequence_sum.out @@ -0,0 +1 @@ +25 diff --git a/Student/task3/Test_H/Medium_H/max_subsequence_sum.sy b/Student/task3/Test_H/Medium_H/max_subsequence_sum.sy new file mode 100644 index 0000000..bbb4a84 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/max_subsequence_sum.sy @@ -0,0 +1,30 @@ +int maxSubArray(int nums[], int n) { + if(n == 0) + return 0; + if(n == 1) + return nums[0]; + int sum; + sum = nums[0]; + int max; + max = sum; + int i; + i = 1; + while(i < n){ + if(sum < 0) + sum = 0; + sum = sum + nums[i]; + if(max < sum) + max = sum; + i = i + 1; + } + return max; +} +int main(){ + int res; + int a[10]; + a[0]=-4;a[1]=3;a[2]=9;a[3]=-2;a[4]=0; + a[5]=1;a[6]=-6;a[7]=5;a[8]=7;a[9]=8; + res = 10; + res = maxSubArray(a, res); + return res; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/minus_with_sub.out b/Student/task3/Test_H/Medium_H/minus_with_sub.out new file mode 100644 index 0000000..9aea9e0 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/minus_with_sub.out @@ -0,0 +1,2 @@ +0 +0 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/minus_with_sub.sy b/Student/task3/Test_H/Medium_H/minus_with_sub.sy new file mode 100644 index 0000000..27940ce --- /dev/null +++ b/Student/task3/Test_H/Medium_H/minus_with_sub.sy @@ -0,0 +1,10 @@ +// Use minus with sub in one expr +int main () { + int a; + int b; + a = -2; + b = 1; + a = a - -b + -(a + b) % -(a - b); + putint(a); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/neg_zero.out b/Student/task3/Test_H/Medium_H/neg_zero.out new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Student/task3/Test_H/Medium_H/neg_zero.out @@ -0,0 +1 @@ +1 diff --git a/Student/task3/Test_H/Medium_H/neg_zero.sy b/Student/task3/Test_H/Medium_H/neg_zero.sy new file mode 100644 index 0000000..fece0b3 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/neg_zero.sy @@ -0,0 +1,13 @@ +int inc(int n){ + return n + 1; +} + +int zero(){ + return 0; +} + +int main(){ + if (-zero()) + return zero(); + return inc(zero()); +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/nested_calls.out b/Student/task3/Test_H/Medium_H/nested_calls.out new file mode 100644 index 0000000..661d826 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/nested_calls.out @@ -0,0 +1,2 @@ +4 +0 diff --git a/Student/task3/Test_H/Medium_H/nested_calls.sy b/Student/task3/Test_H/Medium_H/nested_calls.sy new file mode 100644 index 0000000..be12727 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/nested_calls.sy @@ -0,0 +1,16 @@ +int f(int a, int b) { + return a * b; +} + +int g(int a, int b) { + return a % b; +} + +int h(int a, int b) { + return f(f(2, g(a, b)), g(f(a, b), 4)); +} + +int main () { + putint(h(11, 3)); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/op_priority.in b/Student/task3/Test_H/Medium_H/op_priority.in new file mode 100644 index 0000000..ecfbc7c --- /dev/null +++ b/Student/task3/Test_H/Medium_H/op_priority.in @@ -0,0 +1 @@ +0 1 1 1 1 diff --git a/Student/task3/Test_H/Medium_H/op_priority.out b/Student/task3/Test_H/Medium_H/op_priority.out new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Student/task3/Test_H/Medium_H/op_priority.out @@ -0,0 +1 @@ +1 diff --git a/Student/task3/Test_H/Medium_H/op_priority.sy b/Student/task3/Test_H/Medium_H/op_priority.sy new file mode 100644 index 0000000..6246557 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/op_priority.sy @@ -0,0 +1,19 @@ +int a; +int b; +int c; +int d; +int e; +int main() +{ + a=getint(); + b=getint(); + c=getint(); + d=getint(); + e=getint(); + int flag=0; + if(a-b*c!=d-a/c||a*b/c==e+d||a+b+c==d+e) + { + flag=1; + } + return flag; +} diff --git a/Student/task3/Test_H/Medium_H/register_realloc.out b/Student/task3/Test_H/Medium_H/register_realloc.out new file mode 100644 index 0000000..94361d4 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/register_realloc.out @@ -0,0 +1 @@ +132 diff --git a/Student/task3/Test_H/Medium_H/register_realloc.sy b/Student/task3/Test_H/Medium_H/register_realloc.sy new file mode 100644 index 0000000..0d647be --- /dev/null +++ b/Student/task3/Test_H/Medium_H/register_realloc.sy @@ -0,0 +1,52 @@ +int func(int a, int b){ + int i; + i = a + b; + + int c1;int c2;int c3;int c4; + int d1;int d2;int d3;int d4; + int e1;int e2;int e3;int e4; + int f1;int f2;int f3;int f4; + int g1;int g2;int g3;int g4; + int h1;int h2;int h3;int h4; + int i1;int i2;int i3;int i4; + int j1;int j2;int j3;int j4; + int k1;int k2;int k3;int k4; + c1 = 1;c2 = 2;c3 = 3;c4 = 4; + d1 = 1 + c1;d2 = 2 + c2;d3 = 3 + c3;d4 = 4 + c4; + e1 = 1 + d1;e2 = 2 + d2;e3 = 3 + d3;e4 = 4 + d4; + f1 = 1 + e1;f2 = 2 + e2;f3 = 3 + e3;f4 = 4 + e4; + g1 = 1 + f1;g2 = 2 + f2;g3 = 3 + f3;g4 = 4 + f4; + h1 = 1 + g1;h2 = 2 + g2;h3 = 3 + g3;h4 = 4 + g4; + i1 = 1 + h1;i2 = 2 + h2;i3 = 3 + h3;i4 = 4 + h4; + j1 = 1 + i1;j2 = 2 + i2;j3 = 3 + i3;j4 = 4 + i4; + k1 = 1 + j1;k2 = 2 + j2;k3 = 3 + j3;k4 = 4 + j4; + + i = a - b + 10; + k1 = 1 + j1;k2 = 2 + j2;k3 = 3 + j3;k4 = 4 + j4; + j1 = 1 + i1;j2 = 2 + i2;j3 = 3 + i3;j4 = 4 + i4; + i1 = 1 + h1;i2 = 2 + h2;i3 = 3 + h3;i4 = 4 + h4; + h1 = 1 + g1;h2 = 2 + g2;h3 = 3 + g3;h4 = 4 + g4; + g1 = 1 + f1;g2 = 2 + f2;g3 = 3 + f3;g4 = 4 + f4; + f1 = 1 + e1;f2 = 2 + e2;f3 = 3 + e3;f4 = 4 + e4; + e1 = 1 + d1;e2 = 2 + d2;e3 = 3 + d3;e4 = 4 + d4; + d1 = 1 + c1;d2 = 2 + c2;d3 = 3 + c3;d4 = 4 + c4; + c1 = 1 + k1;c2 = 2 + k2;c3 = 3 + k3;c4 = 4 + k4; + return i + c1 + c2 + c3 + c4 + - d1 - d2 - d3 - d4 + + e1 + e2 + e3 + e4 + - f1 - f2 - f3 - f4 + + g1 + g2 + g3 + g4 + - h1 - h2 - h3 - h4 + + i1 + i2 + i3 + i4 + - j1 - j2 - j3 - j4 + + k1 + k2 + k3 + k4 ; +} + +int main(){ + int a; + int b; + a = 1; + b = a + 2*9; + + return func(a, b); +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/return_after_break.out b/Student/task3/Test_H/Medium_H/return_after_break.out new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/return_after_break.out @@ -0,0 +1 @@ +2 diff --git a/Student/task3/Test_H/Medium_H/return_after_break.sy b/Student/task3/Test_H/Medium_H/return_after_break.sy new file mode 100644 index 0000000..2c43afe --- /dev/null +++ b/Student/task3/Test_H/Medium_H/return_after_break.sy @@ -0,0 +1,16 @@ +const int arr[5] = {1,3,4,2}; +int a = 0; + +int main(){ + int cnt = 0; + while (a < arr[a]) { + a = arr[a]; + if (arr[a + arr[a] - 1] > arr[a] - 1.5) { + cnt = arr[cnt] + 1; + } else { + break; + return 1; + } + } + return cnt; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/reverse_output.in b/Student/task3/Test_H/Medium_H/reverse_output.in new file mode 100644 index 0000000..9bc5347 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/reverse_output.in @@ -0,0 +1,200 @@ +0 +3 +6 +9 +12 +15 +18 +21 +24 +27 +30 +33 +36 +39 +42 +45 +48 +51 +54 +57 +60 +63 +66 +69 +72 +75 +78 +81 +84 +87 +90 +93 +96 +99 +102 +105 +108 +111 +114 +117 +120 +123 +126 +129 +132 +135 +138 +141 +144 +147 +150 +153 +156 +159 +162 +165 +168 +171 +174 +177 +180 +183 +186 +189 +192 +195 +198 +201 +204 +207 +210 +213 +216 +219 +222 +225 +228 +231 +234 +237 +240 +243 +246 +249 +252 +255 +258 +261 +264 +267 +270 +273 +276 +279 +282 +285 +288 +291 +294 +297 +300 +303 +306 +309 +312 +315 +318 +321 +324 +327 +330 +333 +336 +339 +342 +345 +348 +351 +354 +357 +360 +363 +366 +369 +372 +375 +378 +381 +384 +387 +390 +393 +396 +399 +402 +405 +408 +411 +414 +417 +420 +423 +426 +429 +432 +435 +438 +441 +444 +447 +450 +453 +456 +459 +462 +465 +468 +471 +474 +477 +480 +483 +486 +489 +492 +495 +498 +501 +504 +507 +510 +513 +516 +519 +522 +525 +528 +531 +534 +537 +540 +543 +546 +549 +552 +555 +558 +561 +564 +567 +570 +573 +576 +579 +582 +585 +588 +591 +594 +597 diff --git a/Student/task3/Test_H/Medium_H/reverse_output.out b/Student/task3/Test_H/Medium_H/reverse_output.out new file mode 100644 index 0000000..6bfa1bd --- /dev/null +++ b/Student/task3/Test_H/Medium_H/reverse_output.out @@ -0,0 +1,2 @@ +5975945915885855825795765735705675645615585555525495465435405375345315285255225195165135105075045014984954924894864834804774744714684654624594564534504474444414384354324294264234204174144114084054023993963933903873843813783753723693663633603573543513483453423393363333303273243213183153123093063033002972942912882852822792762732702672642612582552522492462432402372342312282252222192162132102072042011981951921891861831801771741711681651621591561531501471441411381351321291261231201171141111081051029996939087848178757269666360575451484542393633302724211815129630 +0 diff --git a/Student/task3/Test_H/Medium_H/reverse_output.sy b/Student/task3/Test_H/Medium_H/reverse_output.sy new file mode 100644 index 0000000..1257b4f --- /dev/null +++ b/Student/task3/Test_H/Medium_H/reverse_output.sy @@ -0,0 +1,18 @@ +void reverse(int n) { + int next; + if (n <= 1) { + next=getint(); + putint(next); + } + else { + next=getint(); + reverse(n-1); + putint(next); + } +} + +int main() { + int i=200; + reverse(i); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/short_circuit.in b/Student/task3/Test_H/Medium_H/short_circuit.in new file mode 100644 index 0000000..71f0f6a --- /dev/null +++ b/Student/task3/Test_H/Medium_H/short_circuit.in @@ -0,0 +1,4 @@ +11 +10 +100 +99 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/short_circuit.out b/Student/task3/Test_H/Medium_H/short_circuit.out new file mode 100644 index 0000000..882e4db --- /dev/null +++ b/Student/task3/Test_H/Medium_H/short_circuit.out @@ -0,0 +1,2 @@ +11111210 +0 diff --git a/Student/task3/Test_H/Medium_H/short_circuit.sy b/Student/task3/Test_H/Medium_H/short_circuit.sy new file mode 100644 index 0000000..322855d --- /dev/null +++ b/Student/task3/Test_H/Medium_H/short_circuit.sy @@ -0,0 +1,21 @@ +int g = 0; + +int func(int n) { + g = g + n; + putint(g); + return g; +} + +int main() { + int i; + i = getint(); + if (i > 10 && func(i)) i = 1; else i = 0; + i = getint(); + if (i > 11 && func(i)) i = 1; else i = 0; + i = getint(); + if (i <= 99 || func(i)) i = 1; else i = 0; + i = getint(); + if (i <= 100 || func(i)) i = 1; else i = 0; + if (!func(99) && func(100)) i = 1; else i = 0; + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/short_circuit2.out b/Student/task3/Test_H/Medium_H/short_circuit2.out new file mode 100644 index 0000000..911faf0 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/short_circuit2.out @@ -0,0 +1,2 @@ +05040 +0 diff --git a/Student/task3/Test_H/Medium_H/short_circuit2.sy b/Student/task3/Test_H/Medium_H/short_circuit2.sy new file mode 100644 index 0000000..7dbfca0 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/short_circuit2.sy @@ -0,0 +1,26 @@ +int func(int n) { + if (n <= 50) { + putint(n); + return 1; + } + else { + putint(n); + return 0; + } +} + +int main() { + int i; + + if (func(0) == 1 || func(50) == 1 && func(100) == 0) + i = 0; + else + i = 1; + + if (func(50) == 1 && func(40) == 1 || func(1) == 1 ) + i = 0; + else + i = 1; + + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/short_circuit3.out b/Student/task3/Test_H/Medium_H/short_circuit3.out new file mode 100644 index 0000000..bf36edb --- /dev/null +++ b/Student/task3/Test_H/Medium_H/short_circuit3.out @@ -0,0 +1,5 @@ +0 3 0 3 +3 3 +ADF +CIJK +0 diff --git a/Student/task3/Test_H/Medium_H/short_circuit3.sy b/Student/task3/Test_H/Medium_H/short_circuit3.sy new file mode 100644 index 0000000..26061ee --- /dev/null +++ b/Student/task3/Test_H/Medium_H/short_circuit3.sy @@ -0,0 +1,44 @@ +int a, b, d; + +int set_a(int val) { a = val; return a; } +int set_b(int val) { b = val; return b; } +int set_d(int val) { d = val; return d; } + +int main() +{ + a = 2; b = 3; + if (set_a(0) && set_b(1)) {} + putint(a); putch(32); + putint(b); putch(32); + + a = 2; b = 3; + if (set_a(0) && set_b(1)) ; + putint(a); putch(32); + putint(b); putch(10); + + const int c = 1; + d = 2; + if (c >= 1 && set_d(3)) ; + putint(d); putch(32); + if (c <= 1 || set_d(4)) {} + putint(d); putch(10); + + if (16 >= (3 - (2 + 1))) { putch(65); } + if ((25 - 7) != (36 - 6 * 3)) putch(66); + if (1 < 8 != 7 % 2) { putch(67); } + if (3 > 4 == 0) { putch(68); } + if (1 == 0x66 <= 077) putch(69); + if (5 - 6 == -!0) putch(70); + putch(10); + + int i0 = 0, i1 = 1, i2 = 2, i3 = 3, i4 = 4; + while (i0 && i1) putch(32); + if (i0 || i1) putch(67); + if (i0 >= i1 || i1 <= i0) putch(72); + if (i2 >= i1 && i4 != i3) { putch(73); } + if (i0 == !i1 && i3 < i3 || i4 >= i4) { putch(74); } + if (i0 == !i1 || i3 < i3 && i4 >= i4) putch(75); + putch(10); + + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/skip_spaces.in b/Student/task3/Test_H/Medium_H/skip_spaces.in new file mode 100644 index 0000000..ce085ff --- /dev/null +++ b/Student/task3/Test_H/Medium_H/skip_spaces.in @@ -0,0 +1,3 @@ +1 2 3 4 5 6 7 8 9 10 +11 12 13 14 15 16 17 18 19 20 +23 233 2333 23333 233333 0 0 diff --git a/Student/task3/Test_H/Medium_H/skip_spaces.out b/Student/task3/Test_H/Medium_H/skip_spaces.out new file mode 100644 index 0000000..c3f407c --- /dev/null +++ b/Student/task3/Test_H/Medium_H/skip_spaces.out @@ -0,0 +1 @@ +55 diff --git a/Student/task3/Test_H/Medium_H/skip_spaces.sy b/Student/task3/Test_H/Medium_H/skip_spaces.sy new file mode 100644 index 0000000..fae3918 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/skip_spaces.sy @@ -0,0 +1,22 @@ +// ??? // ???? + // ????? +/* + +int main() { + int arr[100], i = 0, sum = 0; + while (getint()) { + arr[i] = getint(); + i = i + 1; + }*/ +int main() { + int arr[100], i = 0, sum = 0; + while (getint()) { + arr[i] = getint(); + i = i + 1; + } + while (i) { + i = i - 1; + sum = sum + arr[i]; + } + return sum % 79; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/sort_test1.out b/Student/task3/Test_H/Medium_H/sort_test1.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test1.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test_H/Medium_H/sort_test1.sy b/Student/task3/Test_H/Medium_H/sort_test1.sy new file mode 100644 index 0000000..8491e90 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test1.sy @@ -0,0 +1,41 @@ +int n; +int bubblesort(int arr[]) +{ + int i; + int j; + i =0; + while(i < n-1){ + // Last i elements are already in place + j = 0; + while(j < n-i-1){ + if (arr[j] > arr[j+1]) { + // swap(&arr[j], &arr[j+1]); + int tmp; + tmp = arr[j+1]; + arr[j+1] = arr[j]; + arr[j] = tmp; + } + j = j + 1; + } + i = i + 1; + } + return 0; +} + +int main(){ + n = 10; + int a[10]; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = bubblesort(a); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/sort_test2.out b/Student/task3/Test_H/Medium_H/sort_test2.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test2.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test_H/Medium_H/sort_test2.sy b/Student/task3/Test_H/Medium_H/sort_test2.sy new file mode 100644 index 0000000..8ec1764 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test2.sy @@ -0,0 +1,39 @@ +int n; +int insertsort(int a[]) +{ + int i; + i = 1; + while(i-1&&temp k - 1) + { + j = j - 1; + } + + if(i < j) + { + arr[i] = arr[j]; + i = i + 1; + } + + while(i < j && arr[i] < k) + { + i = i + 1; + } + + if(i < j) + { + arr[j] = arr[i]; + j = j - 1; + } + } + + arr[i] = k; + int tmp; + tmp = i - 1; + tmp = QuickSort(arr, low, tmp); + tmp = i + 1; + tmp = QuickSort(arr, tmp, high); + } + return 0; +} + +int main(){ + n = 10; + int a[10]; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + int tmp; + tmp = 9; + i = QuickSort(a, i, tmp); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/sort_test4.out b/Student/task3/Test_H/Medium_H/sort_test4.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test4.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test_H/Medium_H/sort_test4.sy b/Student/task3/Test_H/Medium_H/sort_test4.sy new file mode 100644 index 0000000..9280cd1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test4.sy @@ -0,0 +1,49 @@ +int n; +int select_sort(int A[],int n) +{ + int i; + int j; + int min; + i =0; + while(i < n-1) + { + min=i;// + j = i + 1; + while(j < n) + { + if(A[min]>A[j]) + { + min=j; + } + j=j+1; + } + if(min!=i) + { + int tmp; + tmp = A[min]; + A[min] = A[i]; + A[i] = tmp; + } + i = i + 1; + } + return 0; +} + +int main(){ + n = 10; + int a[10]; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + i = select_sort(a, n); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/sort_test5.out b/Student/task3/Test_H/Medium_H/sort_test5.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test5.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test_H/Medium_H/sort_test5.sy b/Student/task3/Test_H/Medium_H/sort_test5.sy new file mode 100644 index 0000000..6c634e5 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test5.sy @@ -0,0 +1,65 @@ +int n; +int swap (int array[], int i, int j){ + int temp; + temp = array[i]; + array[i] = array[j]; + array[j] = temp; + return 0; +} +int heap_ajust(int arr[], int start, int end) { + int dad; + dad = start; + int son; + son = dad * 2 + 1; + while (son < end + 1) { // + if (son < end && arr[son] < arr[son + 1]) + son = son + 1; + if (arr[dad] > arr[son]) + return 0; + else { + dad = swap(arr,dad,son); + dad = son; + son = dad * 2 + 1; + } + } + return 0; +} +int heap_sort(int arr[], int len) { + int i; + int tmp; + i = len / 2 - 1; + while ( i > -1) { + tmp = len - 1; + tmp = heap_ajust(arr, i, tmp); + i = i - 1; + } + i = len - 1; + while ( i > 0) { + int tmp0; + tmp0 = 0; + tmp = swap(arr,tmp0,i); + tmp = i - 1; + tmp = heap_ajust(arr, tmp0, tmp); + i = i-1; + } + return 0; +} + +int main(){ + n = 10; + int a[10]; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + i = heap_sort(a, n); + while (i < n) { + int tmp; + tmp = a[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/sort_test6.out b/Student/task3/Test_H/Medium_H/sort_test6.out new file mode 100644 index 0000000..c9f2be1 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test6.out @@ -0,0 +1,11 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +0 diff --git a/Student/task3/Test_H/Medium_H/sort_test6.sy b/Student/task3/Test_H/Medium_H/sort_test6.sy new file mode 100644 index 0000000..24093c7 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/sort_test6.sy @@ -0,0 +1,53 @@ +int n; + +int counting_sort(int ini_arr[], int sorted_arr[], int n) { + int count_arr[10]; + int i; + int j; + int k; + k = 0; + i = 0; + j = 0; + while(k < 10){ + count_arr[k] = 0; + k = k + 1; + } + while(i < n) + { + count_arr[ini_arr[i]] = count_arr[ini_arr[i]] + 1; + i = i + 1; + } + k = 1; + while(k < 10){ + count_arr[k] = count_arr[k] + count_arr[k - 1]; + k = k + 1; + } + j = n; + while( j > 0){ + count_arr[ini_arr[j - 1]] = count_arr[ini_arr[j - 1]] - 1; + sorted_arr[count_arr[ini_arr[j - 1]]] = ini_arr[j - 1]; + j = j - 1; + } + return 0; +} + + +int main(){ + n = 10; + int a[10]; + a[0]=4;a[1]=3;a[2]=9;a[3]=2;a[4]=0; + a[5]=1;a[6]=6;a[7]=5;a[8]=7;a[9]=8; + int i; + i = 0; + int b[10]; + i = counting_sort(a, b, n); + while (i < n) { + int tmp; + tmp = b[i]; + putint(tmp); + tmp = 10; + putch(tmp); + i = i + 1; + } + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/time_prior_plus.out b/Student/task3/Test_H/Medium_H/time_prior_plus.out new file mode 100644 index 0000000..b501ed4 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/time_prior_plus.out @@ -0,0 +1,2 @@ +-4 +0 \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/time_prior_plus.sy b/Student/task3/Test_H/Medium_H/time_prior_plus.sy new file mode 100644 index 0000000..879eea7 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/time_prior_plus.sy @@ -0,0 +1,14 @@ +// Check the priority between time and plus +int main() { + int a; + a = 20; + int b; + b = 5; + int c; + c = 6; + int d; + d = -4; + a = a + c * d - b % (a + d) / a; + putint(a); + return 0; +} diff --git a/Student/task3/Test_H/Medium_H/unary_op.out b/Student/task3/Test_H/Medium_H/unary_op.out new file mode 100644 index 0000000..661d826 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/unary_op.out @@ -0,0 +1,2 @@ +4 +0 diff --git a/Student/task3/Test_H/Medium_H/unary_op.sy b/Student/task3/Test_H/Medium_H/unary_op.sy new file mode 100644 index 0000000..a824266 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/unary_op.sy @@ -0,0 +1,14 @@ +int main() { + int a, b; + a = 070; + b = 0x4; + a = a - - 4 + + b; + if (+-!!!a) { + a = - - -1; + } + else { + a = 0 + + b; + } + putint(a); + return 0; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/while_break_test.out b/Student/task3/Test_H/Medium_H/while_break_test.out new file mode 100644 index 0000000..7f8f011 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/while_break_test.out @@ -0,0 +1 @@ +7 diff --git a/Student/task3/Test_H/Medium_H/while_break_test.sy b/Student/task3/Test_H/Medium_H/while_break_test.sy new file mode 100644 index 0000000..d1c628b --- /dev/null +++ b/Student/task3/Test_H/Medium_H/while_break_test.sy @@ -0,0 +1,29 @@ +const int len = 5; +int arr[len] = {1,3,2,4}; +int a = 1; + +int inc(int x, int inc_num){ + if (x > 10000) + if (inc_num < 2) + return -1; + return (x + inc_num) % 65535; +} + +int find(int n){ + a = inc(a, 2); + return arr[n%len]; +} + +int main(){ + int cnt = 0; + while (a > 0) { + if (find(a)) { + arr[find(a)] = find(a); + if (inc(cnt, 0) != -1) { + cnt = inc(cnt, 1); + } + break; + } + } + return a % 127; +} \ No newline at end of file diff --git a/Student/task3/Test_H/Medium_H/while_if_test.out b/Student/task3/Test_H/Medium_H/while_if_test.out new file mode 100644 index 0000000..ca55a6c --- /dev/null +++ b/Student/task3/Test_H/Medium_H/while_if_test.out @@ -0,0 +1 @@ +198 diff --git a/Student/task3/Test_H/Medium_H/while_if_test.sy b/Student/task3/Test_H/Medium_H/while_if_test.sy new file mode 100644 index 0000000..2d2b9fb --- /dev/null +++ b/Student/task3/Test_H/Medium_H/while_if_test.sy @@ -0,0 +1,25 @@ +// test while-if +int whileIf() { + int a; + a = 0; + int b; + b = 0; + while (a < 100) { + if (a == 5) { + b = 25; + } + else if (a == 10) { + b = 42; + } + else { + b = a * 2; + } + a = a + 1; + } + return (b); +} + + +int main(){ + return (whileIf()); +} diff --git a/Student/task3/Test_H/Medium_H/while_test.out b/Student/task3/Test_H/Medium_H/while_test.out new file mode 100644 index 0000000..fb1e7bc --- /dev/null +++ b/Student/task3/Test_H/Medium_H/while_test.out @@ -0,0 +1 @@ +54 diff --git a/Student/task3/Test_H/Medium_H/while_test.sy b/Student/task3/Test_H/Medium_H/while_test.sy new file mode 100644 index 0000000..d1fad82 --- /dev/null +++ b/Student/task3/Test_H/Medium_H/while_test.sy @@ -0,0 +1,31 @@ +int FourWhile() { + int a; + a = 5; + int b; + int c; + b = 6; + c = 7; + int d; + d = 10; + while (a < 20) { + a = a + 3; + while(b < 10){ + b = b + 1; + while(c == 7){ + c = c - 1; + while(d < 20){ + d = d + 3; + } + d = d - 1; + } + c = c + 1; + } + b = b - 2; + } + + return (a + (b + d) + c); +} + +int main() { + return FourWhile(); +} diff --git a/Student/task3/Test_H/test_H.py b/Student/task3/Test_H/test_H.py new file mode 100644 index 0000000..a2c6078 --- /dev/null +++ b/Student/task3/Test_H/test_H.py @@ -0,0 +1,95 @@ +#!/usr/bin/env python3 +import subprocess +import os + +IRBuild_ptn = '"{}" "-emit-ir" "-o" "{}" "{}"' +ExeGen_ptn = '"clang" "{}" "-o" "{}" "{}" "../../../lib/lib.c"' +Exe_ptn = '"{}"' + +def eval(EXE_PATH, TEST_BASE_PATH, optimization): + print('===========TEST START===========') + print('now in {}'.format(TEST_BASE_PATH)) + dir_succ = True + for case in testcases: + print('Case %s:' % case, end='') + TEST_PATH = TEST_BASE_PATH + case + SY_PATH = TEST_BASE_PATH + case + '.sy' + LL_PATH = TEST_BASE_PATH + case + '.ll' + INPUT_PATH = TEST_BASE_PATH + case + '.in' + OUTPUT_PATH = TEST_BASE_PATH + case + '.out' + need_input = testcases[case] + + IRBuild_result = subprocess.run(IRBuild_ptn.format(EXE_PATH, LL_PATH, SY_PATH), shell=True, stderr=subprocess.PIPE) + if IRBuild_result.returncode == 0: + input_option = None + if need_input: + with open(INPUT_PATH, "rb") as fin: + input_option = fin.read() + + try: + subprocess.run(ExeGen_ptn.format(optimization, TEST_PATH, LL_PATH), shell=True, stderr=subprocess.PIPE) + result = subprocess.run(Exe_ptn.format(TEST_PATH), shell=True, input=input_option, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + out = result.stdout.split(b'\n') + if result.returncode != b'': + out.append(str(result.returncode).encode()) + for i in range(len(out)-1, -1, -1): + out[i] = out[i].strip(b'\r') + if out[i] == b'': + out.remove(b'') + case_succ = True + with open(OUTPUT_PATH, "rb") as fout: + i = 0 + for line in fout.readlines(): + line = line.strip(b'\r').strip(b'\n') + if line == '': + continue + if out[i] != line: + dir_succ = False + case_succ = False + i = i + 1 + if case_succ: + print('\t\033[32mPass\033[0m') + else: + print('\t\033[31mWrong Answer\033[0m') + except Exception as _: + dir_succ = False + print(_, end='') + print('\t\033[31mCodeGen or CodeExecute Fail\033[0m') + finally: + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH]) + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".o"]) + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".ll"]) + + else: + dir_succ = False + print('\t\033[31mIRBuild Fail\033[0m') + if dir_succ: + print('\t\033[32mSuccess\033[0m in dir {}'.format(TEST_BASE_PATH)) + else: + print('\t\033[31mFail\033[0m in dir {}'.format(TEST_BASE_PATH)) + + print('============TEST END============') + + +if __name__ == "__main__": + + # you can only modify this to add your testcase + TEST_DIRS = [ + './Easy_H/', + ] + # you can only modify this to add your testcase + + optimization = "-O0" # -O0 -O1 -O2 -O3 -O4(currently = -O3) -Ofast + for TEST_BASE_PATH in TEST_DIRS: + testcases = {} # { name: need_input } + EXE_PATH = os.path.abspath('../../../build/SysYFCompiler') + testcase_list = list(map(lambda x: x.split('.'), os.listdir(TEST_BASE_PATH))) + testcase_list.sort() + for i in range(len(testcase_list)-1, -1, -1): + if len(testcase_list[i]) == 1: + testcase_list.remove(testcase_list[i]) + for i in range(len(testcase_list)): + testcases[testcase_list[i][0]] = False + for i in range(len(testcase_list)): + testcases[testcase_list[i][0]] = testcases[testcase_list[i][0]] | (testcase_list[i][1] == 'in') + eval(EXE_PATH, TEST_BASE_PATH, optimization=optimization) diff --git a/Student/task3/test.py b/Student/task3/test.py index cede8f7..523012b 100644 --- a/Student/task3/test.py +++ b/Student/task3/test.py @@ -1,92 +1,102 @@ -#!/usr/bin/env python3 -import subprocess -import os - -IRBuild_ptn = '"{}" "-emit-ir" "-o" "{}" "{}"' -ExeGen_ptn = '"clang" "{}" "-o" "{}" "{}" "../../lib/lib.c"' -Exe_ptn = '"{}"' - -def eval(EXE_PATH, TEST_BASE_PATH, optimization): - print('===========TEST START===========') - print('now in {}'.format(TEST_BASE_PATH)) - dir_succ = True - for case in testcases: - print('Case %s:' % case, end='') - TEST_PATH = TEST_BASE_PATH + case - SY_PATH = TEST_BASE_PATH + case + '.sy' - LL_PATH = TEST_BASE_PATH + case + '.ll' - INPUT_PATH = TEST_BASE_PATH + case + '.in' - OUTPUT_PATH = TEST_BASE_PATH + case + '.out' - need_input = testcases[case] - - IRBuild_result = subprocess.run(IRBuild_ptn.format(EXE_PATH, LL_PATH, SY_PATH), shell=True, stderr=subprocess.PIPE) - if IRBuild_result.returncode == 0: - input_option = None - if need_input: - with open(INPUT_PATH, "rb") as fin: - input_option = fin.read() - - try: - subprocess.run(ExeGen_ptn.format(optimization, TEST_PATH, LL_PATH), shell=True, stderr=subprocess.PIPE) - result = subprocess.run(Exe_ptn.format(TEST_PATH), shell=True, input=input_option, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - out = result.stdout.split(b'\n') - if result.returncode != b'': - out.append(str(result.returncode).encode()) - for i in range(len(out)-1, -1, -1): - out[i] = out[i].strip(b'\r') - if out[i] == b'': - out.remove(b'') - case_succ = True - with open(OUTPUT_PATH, "rb") as fout: - i = 0 - for line in fout.readlines(): - line = line.strip(b'\r').strip(b'\n') - if line == '': - continue - if out[i] != line: - dir_succ = False - case_succ = False - i = i + 1 - if case_succ: - print('\t\033[32mPass\033[0m') - else: - print('\t\033[31mWrong Answer\033[0m') - except Exception as _: - dir_succ = False - print(_, end='') - print('\t\033[31mCodeGen or CodeExecute Fail\033[0m') - finally: - subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH]) - subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".o"]) - subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".ll"]) - - else: - dir_succ = False - print('\t\033[31mIRBuild Fail\033[0m') - if dir_succ: - print('\t\033[32mSuccess\033[0m in dir {}'.format(TEST_BASE_PATH)) - else: - print('\t\033[31mFail\033[0m in dir {}'.format(TEST_BASE_PATH)) - - print('============TEST END============') - - -if __name__ == "__main__": - - # you can only modify this to add your testcase - TEST_DIRS = [ - './test/', - ] - # you can only modify this to add your testcase - - optimization = "-O0" # -O0 -O1 -O2 -O3 -O4(currently = -O3) -Ofast - for TEST_BASE_PATH in TEST_DIRS: - testcases = {} # { name: need_input } - EXE_PATH = os.path.abspath('../../build/SysYFCompiler') - testcase_list = list(map(lambda x: x.split('.'), os.listdir(TEST_BASE_PATH))) - testcase_list.sort() - for i in range(len(testcase_list)): - testcases[testcase_list[i][0]] = False - for i in range(len(testcase_list)): - testcases[testcase_list[i][0]] = testcases[testcase_list[i][0]] | (testcase_list[i][1] == 'in') - eval(EXE_PATH, TEST_BASE_PATH, optimization=optimization) +#!/usr/bin/env python3 +import subprocess +import os + +IRBuild_ptn = '"{}" "-emit-ir" "-o" "{}" "{}"' +ExeGen_ptn = '"clang" "{}" "-o" "{}" "{}" "../../lib/lib.c"' +Exe_ptn = '"{}"' + +def eval(EXE_PATH, TEST_BASE_PATH, optimization): + print('===========TEST START===========') + print('now in {}'.format(TEST_BASE_PATH)) + succ = True + for case in testcases: + print('Case %s:' % case, end='') + TEST_PATH = TEST_BASE_PATH + case + SY_PATH = TEST_BASE_PATH + case + '.sy' + LL_PATH = TEST_BASE_PATH + case + '.ll' + INPUT_PATH = TEST_BASE_PATH + case + '.in' + OUTPUT_PATH = TEST_BASE_PATH + case + '.out' + need_input = testcases[case] + + IRBuild_result = subprocess.run(IRBuild_ptn.format(EXE_PATH, LL_PATH, SY_PATH), shell=True, stderr=subprocess.PIPE) + if IRBuild_result.returncode == 0: + input_option = None + if need_input: + with open(INPUT_PATH, "rb") as fin: + input_option = fin.read() + + try: + subprocess.run(ExeGen_ptn.format(optimization, TEST_PATH, LL_PATH), shell=True, stderr=subprocess.PIPE) + result = subprocess.run(Exe_ptn.format(TEST_PATH), shell=True, input=input_option, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + out = result.stdout.split(b'\n') + if result.returncode != b'': + out.append(str(result.returncode).encode()) + for i in range(len(out)-1, -1, -1): + out[i] = out[i].strip(b'\r') + if out[i] == b'': + out.remove(b'') + with open(OUTPUT_PATH, "rb") as fout: + i = 0 + for line in fout.readlines(): + line = line.strip(b'\r').strip(b'\n') + if line == '': + continue + if out[i] != line: + succ = False + print(result.stdout[:100], result.returncode, out[i][:100], line[:100], end='') + print('\t\033[31mWrong Answer\033[0m') + i = i + 1 + print(result.stderr.decode()) + except Exception as _: + succ = False + print(_, end='') + print('\t\033[31mCodeGen or CodeExecute Fail\033[0m') + finally: + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH]) + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".o"]) + subprocess.call(["rm", "-rf", TEST_PATH, TEST_PATH + ".ll"]) + + else: + succ = False + print(IRBuild_result.stderr) + print('\t\033[31mIRBuilder Fail\033[0m') + if succ: + print('\t\033[32mSuccess\033[0m in dir {}'.format(TEST_BASE_PATH)) + else: + print('\t\033[31mFail\033[0m in dir {}'.format(TEST_BASE_PATH)) + + print('============TEST END============') + + +if __name__ == "__main__": + # you can only modify this + TEST_DIRS = [ + './Test_H/Easy_H/', + './Test_H/Medium_H/', + './Test_H/Hard_H/', + './Test/Easy/', + './Test/Medium/', + './Test/Hard/', + ] + # you can only modify this + optimization = "-O0" # -O0 -O1 -O2 -O3 -O4(currently = -O3) -Ofast + for TEST_BASE_PATH in TEST_DIRS: + testcases = {} # { name: need_input } + EXE_PATH = os.path.abspath('../../SysYF_TA/build/SysYFCompiler') + testcase_list = list(map(lambda x: x.split('.'), os.listdir(TEST_BASE_PATH))) + testcase_list.sort() + for i in range(len(testcase_list)-1, -1, -1): + if len(testcase_list[i]) == 1: + testcase_list.remove(testcase_list[i]) + for i in range(len(testcase_list)): + testcases[testcase_list[i][0]] = False + for i in range(len(testcase_list)): + testcases[testcase_list[i][0]] = testcases[testcase_list[i][0]] | (testcase_list[i][1] == 'in') + eval(EXE_PATH, TEST_BASE_PATH, optimization=optimization) + testcase = set() + for case_name in testcase_list: + testcase = testcase | set(case_name) + testcase = testcase - {'in', 'out', 'sy'} + print(TEST_BASE_PATH, "\t", len(testcase)) + # print(sorted(testcase)) diff --git a/Student/task3/test_stu/.gitkeep b/Student/task3/test_stu/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/doc/AST.md b/doc/AST.md old mode 100644 new mode 100755 diff --git a/doc/SysYFIR.md b/doc/SysYFIR.md index df93b1e..8a9cc30 100644 --- a/doc/SysYFIR.md +++ b/doc/SysYFIR.md @@ -269,42 +269,42 @@ - 成员: - instr_list_:指令链表 - - pre_basic_blocks_: bb前驱集合 - - succ_basic_blocks_:bb后继集合 + - pre_bbs_: bb前驱集合 + - succ_bbs_:bb后继集合 - API: ```c++ // 创建并返回BB块,参数分别是BB块所属的Module,name是其名字默认为空,BB块所属的Function - static BasicBlock *create(Module *m, const std::string &name , Function *parent ) + static Ptr create(Ptr m, const std::string &name ,Ptr parent ) // 返回BB块所属的函数 - Function *get_parent(); + Ptr get_parent(); // 返回BB块所属的Module - Module *get_module(); + Ptr get_module(); // 返回BB块的终止指令(ret|br),若BB块最后一条指令不是终止指令返回null - Instruction *get_terminator(); + Ptr get_terminator(); // 将instr指令添加到此BB块指令链表结尾,调用IRBuilder里来创建函数会自动调用此方法 - void add_instruction(Instruction *instr); + void add_instruction(Ptr instr); // 将instr指令添加到此BB块指令链表开头 - void add_instr_begin(Instruction *instr); + void add_instr_begin(Ptr instr); // 将instr指令从BB块指令链表中移除,同时调用api维护好instr的操作数的use链表 - void delete_instr(Instruction *instr); + void delete_instr(Ptr instr); // BB块中指令数为空返回true bool empty(); // 返回BB块中指令的数目 int get_num_of_instr(); //返回BB块的指令链表 - std::list &get_instructions(); + PtrList &get_instructions(); // 将此BB块从所属函数的bb链表中移除 void erase_from_parent(); /****************api about cfg****************/ - std::list &get_pre_basic_blocks() // 返回前驱块集合 - std::list &get_succ_basic_blocks() // 返回后继块集合 - void add_pre_basic_block(BasicBlock *bb) // 添加前驱块 - void add_succ_basic_block(BasicBlock *bb) // 添加后继块 - void remove_pre_basic_block(BasicBlock *bb) // 移除前驱块 - void remove_succ_basic_block(BasicBlock *bb) // 移除后继块 + PtrList &get_pre_basic_blocks() // 返回前驱块集合 + PtrList &get_succ_basic_blocks() // 返回后继块集合 + void add_pre_basic_block(Ptr bb) // 添加前驱块 + void add_succ_basic_block(Ptr bb) // 添加后继块 + void remove_pre_basic_block(Ptr bb) // 移除前驱块 + void remove_succ_basic_block(Ptr bb) // 移除后继块 /****************api about cfg****************/ ``` @@ -319,28 +319,28 @@ - 成员 - - val_:常数值 + - value_:常数值 - API ```cpp int get_value() // 返回该常数类型中存的常数值 - static int get_value(ConstantInt *const_val)// 返回该常数类型const_val中存的常数值 - static ConstantInt *get(int val, Module *m) // 以val值来创建常数类 - static ConstantInt *get(bool val, Module *m) // 以val值来创建bool常数类 + static int get_value(Ptr const_val)// 返回该常数类型const_val中存的常数值 + static Ptr get(int val, Ptr m) // 以val值来创建常数类 + static Ptr get(bool val, Ptr m) // 以val值来创建bool常数类 ``` - - ConstantFP + - ConstantFloat - 含义:float类型的常数 - 成员 - - val_:常数值 + - value_:常数值 - API ```cpp - static ConstantFP *get(float val, Module *m) // 以val值创建并返回浮点数常量类 + static Ptr get(float val, Ptr m) // 以val值创建并返回浮点数常量类 float get_value() // 返回该常数类型中存的常数值 ``` @@ -351,14 +351,14 @@ - API ```cpp - static ConstantZero *get(Type *ty, Module *m);// 创建并返回ConstantZero常量类 + static Ptr get(Ptr ty, Ptr m);// 创建并返回ConstantZero常量类 ``` - ConstantArray - 含义:数组类型的常数 - 成员 - - const_array_:数组常量值 + - const_array:数组常量值 - API:cminus语法不需要数组常量的支持(本次实验不需要用到),在此不过多解释。感兴趣可以自行查看源代码。 ### Function @@ -374,29 +374,29 @@ - API ```cpp - static Function *create(FunctionType *ty, const std::string &name, Module *parent); + static Ptr create(Ptr ty, const std::string &name, Ptr parent); // 创建并返回Function,参数依次是待创建函数类型ty、函数名字name(不可为空)、函数所属的Module - FunctionType *get_function_type() const; + Ptr get_function_type() const; // 返回此函数类的函数类型 - Type *get_return_type() const; + Ptr get_return_type() const; // 返回此函数类型的返回值类型 - void add_basic_block(BasicBlock *bb); + void add_basic_block(Ptr bb); // 将bb添加至Function的bb链表上(调用bb里的创建函数时会自动调用此函数挂在function的bb链表上) unsigned get_num_of_args() const; // 得到函数形参数数量 unsigned get_num_basic_blocks() const; // 得到函数基本块数量 - Module *get_parent() const; + Ptr get_parent() const; // 得到函数所属的Module - std::list::iterator arg_begin() + PtrList::iterator arg_begin() // 得到函数形参的list的起始迭代器 - std::list::iterator arg_end() + PtrList::iterator arg_end() // 得到函数形参的list的终止迭代器 - void remove(BasicBlock* bb) + void remove(Ptr bb) // 从函数的bb链表中删除一个bb - std::list &get_basic_blocks() + PtrList &get_basic_blocks() // 返回函数bb链表 - std::list &get_args() + PtrList &get_args() // 返回函数的形参链表 void set_instr_name(); // 给函数中未命名的基本块和指令命名 @@ -415,7 +415,7 @@ - API ```cpp - Function *get_parent() // 返回参数的所属函数 + Ptr get_parent() // 返回参数的所属函数 unsigned get_arg_no() const // 返回参数在所在函数的第几个参数 ``` ### GlobalVariable @@ -431,9 +431,9 @@ - API ```cpp - BasicBlock *get_insert_block()// 返回正在插入指令的BB - void set_insert_point(BasicBlock *bb)// 设置当前需要插入指令的bb - XXXInst *create_[instr_type]()// 创建instr_type(具体名字参考IRStmtBuilder.h代码)的指令并对应插入到正在插入的BB块,这种类型的指令看函数名字和参数名字和IR文档是一一对应的。 + Ptr get_insert_block()// 返回正在插入指令的BB + void set_insert_point(Ptr bb)// 设置当前需要插入指令的bb + ptr create_[instr_type]()// 创建instr_type(具体名字参考IRStmtBuilder.h代码)的指令并对应插入到正在插入的BB块,这种类型的指令看函数名字和参数名字和IR文档是一一对应的。 ``` @@ -461,13 +461,13 @@ - API ```cpp - Type *get_void_type(); + Ptr get_void_type(); // 得到IR中的void类型其他类型可以用类似的API得到(推荐取得类型采用lab3助教提供的方法Type::get()) - void add_function(Function *f); + void add_function(Ptr f); // 将f挂在module的function链表上,在function被创建的时候会自动调用此方法来添加function - void add_global_variable(GlobalVariable* g); + void add_global_variable(Ptr g); // 将g挂在module的GlobalVariable链表上,在GlobalVariable被创建的时候会自动调用此方法来添加GlobalVariable - std::list get_global_variable(); + PtrList &get_global_variable(); // 获取全局变量列表 std::string get_instr_op_name( Instruction::OpID instr ); // 获取instr对应的指令名(打印ir时调用) @@ -509,17 +509,17 @@ - API ```cpp - static FunctionType *get(Type *result, std::vector params); + static Ptr get(Ptr result, PtrVec params); // 返回函数类型,参数依次是返回值类型result,形参类型列表params unsigned get_num_of_args() const; // 返回形参个数 - Type *get_param_type(unsigned i) const; + Ptr get_param_type(unsigned i) const; // 返回第i个形参的类型 - std::vector::iterator param_begin() + PtrVec::iterator param_begin() // 返回形参类型列表的起始迭代器 - std::vector::iterator param_end() + PtrVec::iterator param_end() // 返回形参类型列表的终止迭代器 - Type *get_return_type() const; + Ptr get_return_type() const; // 返回函数类型中的返回值类型 ``` - ArrayType @@ -532,9 +532,9 @@ - API ```cpp - static ArrayType *get(Type *contained, unsigned num_elements) + static Ptr get(Ptr contained, unsigned num_elements); // 返回数组类型,参数依次是 数组元素的类型contained,数组元素个数num_elements - Type *get_element_type() const + Ptr get_element_type() const // 返回数组元素类型 unsigned get_num_of_elements() const // 返回数组元素个数 @@ -549,21 +549,22 @@ - API ```cpp - Type *get_element_type() const { return contained_; } + Ptr get_element_type() const { return contained_; } // 返回指针指向的类型 - static PointerType *get(Type *contained); + static Ptr get(Ptr contained); + // 返回contained类型的指针类型 + Ptr get_pointer_element_type();// 若是PointerType则返回指向的类型,若不是则返回nullptr。 + static Ptr create(Ptr contained); // 创建指向contained类型的指针类型 - Type *get_pointer_element_type() - // 对于pointertype而言返回指针指向的类型,其他则返回nullptr ``` - API ```cpp bool is_void_type()// 判断是否是void类型其他类型有类似API请查看Type.h - static Type *get_void_type(Module *m);// 得到void类型 - Type *get_pointer_element_type();// 若是PointerType则返回指向的类型,若不是则返回nullptr。 - Type *get_array_element_type();// 若是ArrayType则返回指向的类型,若不是则返回nullptr。 + static Ptr get_void_type(Ptr m);// 得到void类型 + Ptr get_pointer_element_type();// 若是PointerType则返回指向的类型,若不是则返回nullptr。 + Ptr get_array_element_type();// 若是ArrayType则返回指向的类型,若不是则返回nullptr。 ``` @@ -579,17 +580,17 @@ - API ```cpp - Value *get_operand(unsigned i) const; + Ptr get_operand(unsigned i) const; // 从user的操作数链表中取出第i个操作数 - void set_operand(unsigned i, Value *v); + void set_operand(unsigned i, Ptr v); // 将user的第i个操作数设为v - void add_operand(Value *v); + void add_operand(Ptr v); // 将v挂到User的操作数链表上 unsigned get_num_operand() const; // 得到操作数链表的大小 void remove_use_of_ops(); // 从User的操作数链表中的所有操作数处的use_list_ 移除该User; - void remove_operands(int index1,int index2); + void remove_operands(int index1, int index2); // 移除操作数链表中索引为index1-index2的操作数,例如想删除第0个操作数:remove_operands(0,0) ``` @@ -604,16 +605,16 @@ - API ```cpp - Type *get_type() const //返回这个操作数的类型 + Ptr get_type() const //返回这个操作数的类型 std::list &get_use_list() // 返回value的使用者链表 - void add_use(Value *val, unsigned arg_no = 0); + void add_use(Ptr val, unsigned arg_no = 0); // 添加val至this的使用者链表上 - void replace_all_use_with(Value *new_val); + void replace_all_use_with(Ptr new_val); // 将this在所有的地方用new_val替代,并且维护好use_def与def_use链表 - void remove_use(Value *val); + void remove_use(Ptr val); // 将val从this的use_list_中移除 ``` ### 总结 -在本文档里提供了为SysYF语言程序生成LLVM IR可能需要用到的SysYF IR应用编程接口,如果对这些API有问题的请移步issue讨论,本次`SysYF IR`应用编程接口由助教自行设计实现,并做了大量测试,如有对助教的实现方法有异议或者建议的也请移步issue讨论,**请不要直接修改助教的代码,若因修改助教代码造成后续实验仓库合并的冲突请自行解决**。 +在本文档里提供了为SysYF语言程序生成LLVM IR可能需要用到的SysYF IR应用编程接口,如果对这些API有问题的请移步issue讨论,本次`SysYF IR`应用编程接口由助教自行设计实现,并做了大量测试,如有对助教的实现方法有异议或者建议的也请移步issue讨论,**除了选做内容无需修改助教代码**。 diff --git a/doc/SysYF语言定义.pdf b/doc/SysYF语言定义.pdf old mode 100644 new mode 100755 diff --git a/doc/phase2.md b/doc/phase2.md index ce27622..1998775 100644 --- a/doc/phase2.md +++ b/doc/phase2.md @@ -15,14 +15,14 @@ go_upstairs_gen.cpp核心部分(点击展开) ```cpp - // 全局数组,num,x - auto *arrayType_num = ArrayType::get(Int32Type, 2); - auto *arrayType_x = ArrayType::get(Int32Type, 1); - auto zero_initializer = ConstantZero::get(Int32Type, module); - std::vector init_val; + // 全局数组,num,x + auto arrayType_num = ArrayType::get(Int32Type, 2); + auto arrayType_x = ArrayType::get(Int32Type, 1); + auto zero_initializer = ConstantZero::create(Int32Type, module); + std::vector> init_val; init_val.push_back(CONST_INT(4)); init_val.push_back(CONST_INT(8)); - auto num_initializer = ConstantArray::get(arrayType_num, init_val); + auto num_initializer = ConstantArray::create(arrayType_num, init_val); auto num = GlobalVariable::create("num", module, arrayType_num, false, num_initializer);// 是否是常量定义,初始化常量(ConstantZero类) auto x = GlobalVariable::create("x", module, arrayType_x, false, zero_initializer);// 参数解释: 名字name,所属module,全局变量类型type, @@ -31,26 +31,26 @@ // climbStairs函数 // 函数参数类型的vector - std::vector Ints(1, Int32Type); + std::vector> Ints(1, Int32Type); //通过返回值类型与参数类型列表得到函数类型 - auto climbStairsFunTy = FunctionType::get(Int32Type, Ints); + auto climbStairsFunTy = FunctionType::create(Int32Type, Ints); // 由函数类型得到函数 auto climbStairsFun = Function::create(climbStairsFunTy, - "climbStairs", module); + "climbStairs", module); // BB的名字在生成中无所谓,但是可以方便阅读 auto bb = BasicBlock::create(module, "entry", climbStairsFun); - + builder->set_insert_point(bb); // 一个BB的开始,将当前插入指令点的位置设在bb - + auto retAlloca = builder->create_alloca(Int32Type); // 在内存中分配返回值的位置 auto nAlloca = builder->create_alloca(Int32Type); // 在内存中分配参数n的位置 - std::vector args; // 获取climbStairs函数的形参,通过Function中的iterator + std::vector> args; // 获取climbStairs函数的形参,通过Function中的iterator for (auto arg = climbStairsFun->arg_begin(); arg != climbStairsFun->arg_end(); arg++) { - args.push_back(*arg); // * 号运算符是从迭代器中取出迭代器当前指向的元素 + args.push_back(*arg); // * 号运算符是从迭代器中取出迭代器当前指向的元素 } builder->create_store(args[0], nAlloca); // store参数n @@ -72,7 +72,7 @@ builder->create_br(retBB); // br retBB builder->set_insert_point(falseBB); // if false - auto *arrayType_dp = ArrayType::get(Int32Type, 10); + auto arrayType_dp = ArrayType::get(Int32Type, 10); auto dpAlloca = builder->create_alloca(arrayType_dp); auto dp0Gep = builder->create_gep(dpAlloca, {CONST_INT(0), CONST_INT(0)}); diff --git a/doc/phase3.md b/doc/phase3.md index 130dc09..376599b 100644 --- a/doc/phase3.md +++ b/doc/phase3.md @@ -9,6 +9,7 @@ #### 实验框架 本实训项目提供用C++语言编写的SysYF IR 应用编程库,用于构建 LLVM IR的子集。为了简化你的实验,本实训的实验框架代码已完成了SysYF源程序到 C++ 上的抽象语法树的转换。 +##### Scope 在`IRBuilder.h`中,还定义了一个用于存储作用域的类`Scope`。它的作用是在遍历语法树时,辅助管理不同作用域中的变量。它提供了以下接口: ```cpp // 进入一个新的作用域 @@ -16,17 +17,44 @@ void enter(); // 退出一个作用域 void exit(); // 往当前作用域插入新的名字->值映射 -bool push(std::string name, Value *val); +bool push(std::string name, Ptr val); // 根据名字,以及是否为函数的bool值寻找到对应值 // isfunc 为 true 时为寻找函数,否则为寻找其他变量对应的值 -Value* find(std::string name, bool isfunc); +Ptr find(std::string name, bool isfunc); // 判断当前是否在全局作用域内 bool in_global(); ``` 你需要根据语义合理调用`enter`与`exit`,并且在变量声明和使用时正确调用`push`与`find`。在类`SysYFIRBuilder`中,有一个`Scope`类型的成员变量`scope`,它在初始化时已经将特殊函数加入了作用域中。因此,你在进行名字查找时不需要顾虑是否需要对特殊函数进行特殊操作。 +##### shared_ptr +为了防止内存泄漏,助教将框架中的裸指针换成了智能指针,相关的类型定义在`include/internal_types`中,其中以下的类型转换方法: +```cpp +using std::static_pointer_cast; +using std::dynamic_pointer_cast; +using std::const_pointer_cast; +``` +static_pointer_cast和dynamic_pointer_cast用于智能指针的类型转换,隐式完成了拆包、类型转换、重新包装和内存控制块维护,const_pointer_cast在转换时去除const属性,含义和使用方法类似于static_cast、dynamic_cast和const_cast: +```cpp +std::vector> ducks; +ducks.push_back(std::static_pointer_cast(std::make_shared())); +``` + +##### shared_from_this +这是助教在更新代码框架时涉及的部分,在实验中并不会用到,有兴趣的同学了解即可。由于改成了智能指针,我们在使用create方法创建IR中的Value对象时,需要在初始化的时候生成它的智能指针并返回,我们使用了`include/internal_macros.h`中的宏来定义使用了智能指针后新的初始化过程,先创建该对象的智能指针,然后对该智能指针调用init方法,而在init的过程中可能会用到它自身的智能指针,比如`src/SysYFIR\BasicBlock.cpp`中的`parent_->add_basic_block(dynamic_pointer_cast(shared_from_this()));`,这时需要用shared_from_this,原因参考[cpp smart pointer](https://www.cyhone.com/articles/right-way-to-use-cpp-smart-pointer/)。 + +当然,如果你企图直接使用构造函数而不用create方法的话,你会很惊讶地发现你做不到,因为助教已经很贴心地将构造函数设为private或者protected了,所以不用担心不小心的使用,而之所以不在构造函数中使用,原因参考[shared_from_this说明1](https://blog.csdn.net/weixin_38927079/article/details/115505724)和[shared_from_this说明2](https://blog.csdn.net/u012398613/article/details/52243764) + ### 本关具体任务 -1. 你需要在`src/SysYFIRBuilder`文件夹中,调用SysYF IR应用编程接口,填写`IRBuilder.cpp`文件,以实现 LLVM IR 的自动生成。 +1. 你需要在`src/SysYFIRBuilder`文件夹中,调用SysYF IR应用编程接口,填写`IRBuilder.cpp`文件,以实现 LLVM IR 的自动生成。注意以下几点: + * a. 创建include/SysYFIR中的对象时,只能通过create方法,而不能直接使用构造函数(原因参考[shared_from_this](#shared_from_this)),如下: + ```cpp + auto fun = Function::create(fun_type, node.name, module); + ``` + 而不是: + ```cpp + auto fun = new Function(fun_type, node.name, module); + ``` + * b. 尽量不要使用裸指针,而是使用shared_ptr和相关的类型转换方法,即`include/internal_types`定义的类型和方法 2. 在`report.md`内回答[思考题](#思考题) 3. 在`contribution.md`内由组长填写各组员的贡献比 @@ -40,6 +68,11 @@ cd build cmake .. make ``` +请注意,你会发现CMakeLists.txt中的CMAKE_CXX_FLAGS多了很多参数,我们介绍其中一部分(参考[gcc warning options](https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html)): + * -Wextra:打印一些额外的warning信息 + * -Wno-unused:不警告未使用的变量,框架中一些函数有一些不用的参数 + * -Wshadow:如果一个局部变量隐藏掉了其他的变量、参数等,报告warning + * -Werror:将所有的warning都视为error,也就是说如果你觉得你的warning并不对程序正确性有影响,你可以把-Werror删除。 编译后会产生 `SysYFCompiler` 程序,它能将SysYF源程序(sy文件)输出为LLVM IR。 当需要对 sy 文件测试时,可以这样使用: @@ -65,9 +98,13 @@ SysYFCompiler test.sy -emit-ir -o test.ll 选做部分验收方式为线下验收,你需要在线下检查时提供对应代码通过助教给出的选做部分测试样例,并且讲解你的代码。 -选做部分说明如下: - - 多维数组 - +选做部分说明如下:(每个班只展示一部分) + - H班: + - 多维数组 + - 网安班: + - 多维数组 + - 将一维数组指针作为参数 + - 逻辑运算(\&\&, \|\|, \!), 重点考察短路计算 #### 多维数组 @@ -81,6 +118,11 @@ SysYFCompiler test.sy -emit-ir -o test.ll `int a[5][2] = {1,{2,3},{4},{5,6,7}}` `int a[5][2] = {{1,0},{2,3},{4,0},{5,6},{7,0}}` +#### 数组指针参数 & 逻辑运算 + +目前给出的SysYF IR接口支持数组指针参数和逻辑运算的短路计算,因此你不需要修改接口。 +注意`pointer`和`array`的区别以及文法中`&&`和`||`的优先级。 + ### 备注 测试样例除了位于版本库中的公开测例外,还包含不开放的隐藏测例。 diff --git a/include/AST/SyntaxTree.h b/include/AST/SyntaxTree.h old mode 100644 new mode 100755 index 2ccf806..59bd387 --- a/include/AST/SyntaxTree.h +++ b/include/AST/SyntaxTree.h @@ -6,16 +6,12 @@ #include #include "location.hh" +#include "internal_types.h" +namespace SysYF +{ namespace SyntaxTree { -// Use unique postd::stringtype to reference stored objects -template -using Ptr = std::shared_ptr; - -// List of reference of type -template -using PtrList = std::vector>; using Position = yy::location; @@ -108,7 +104,7 @@ struct Node //node for initial value struct InitVal: Node{ bool isExp; - PtrList elementList; + PtrVec elementList; //std::vector> elementList; Ptr expr; void accept(Visitor &visitor) final; @@ -117,7 +113,7 @@ struct InitVal: Node{ // Root node of an ordinary syntax tree. struct Assembly : Node { - PtrList global_defs; + PtrVec global_defs; void accept(Visitor &visitor) final; }; @@ -151,7 +147,7 @@ struct VarDef : Stmt, GlobalDef Type btype; std::string name; bool is_inited; // This is used to verify `{}` - PtrList array_length; // empty for non-array variables + PtrVec array_length; // empty for non-array variables Ptr initializers; void accept(Visitor &visitor) final; }; @@ -174,7 +170,7 @@ struct ReturnStmt : Stmt // BlockStmt statement. struct BlockStmt : Stmt { - PtrList body; + PtrVec body; void accept(Visitor &visitor) final; }; @@ -239,7 +235,7 @@ struct UnaryExpr : AddExpr struct LVal : AddExpr { std::string name; - PtrList array_index; // nullptr if not indexed as array + PtrVec array_index; // nullptr if not indexed as array void accept(Visitor &visitor) final; }; @@ -257,7 +253,7 @@ struct Literal : AddExpr struct FuncCallStmt : AddExpr { std::string name; - PtrList params; + PtrVec params; void accept(Visitor &visitor) final; }; @@ -265,13 +261,13 @@ struct FuncParam : Node { std::string name; Type param_type; - PtrList array_index; // nullptr if not indexed as array + PtrVec array_index; // nullptr if not indexed as array void accept(Visitor &visitor) final; }; struct FuncFParamList : Node { - PtrList params; + PtrVec params; void accept(Visitor &visitor) final; }; @@ -327,7 +323,8 @@ public: virtual void visit(BinaryCondExpr &node) = 0; virtual void visit(InitVal &node) = 0; }; + } -// end namespace SyntaxTree +} #endif // _SYSYF_SYNTAX_TREE_H_ diff --git a/include/AST/SyntaxTreePrinter.h b/include/AST/SyntaxTreePrinter.h old mode 100644 new mode 100755 index fc8bcfd..8991451 --- a/include/AST/SyntaxTreePrinter.h +++ b/include/AST/SyntaxTreePrinter.h @@ -3,6 +3,10 @@ #include "SyntaxTree.h" +namespace SysYF +{ +namespace SyntaxTree +{ class SyntaxTreePrinter : public SyntaxTree::Visitor { public: @@ -33,4 +37,7 @@ private: int indent = 0; }; +} +} + #endif // _SYSYF_SYNTAX_TREE_PRINTER_H_ diff --git a/include/ErrorReporter/ErrorReporter.h b/include/ErrorReporter/ErrorReporter.h old mode 100644 new mode 100755 index b642548..afbab92 --- a/include/ErrorReporter/ErrorReporter.h +++ b/include/ErrorReporter/ErrorReporter.h @@ -7,6 +7,8 @@ #include #include "SyntaxTree.h" +namespace SysYF +{ class ErrorReporter { public: @@ -23,4 +25,5 @@ private: std::ostream &err; }; +} #endif // _SYSYF_ERROR_REPORTER_H_ diff --git a/include/Frontend/SysYFDriver.h b/include/Frontend/SysYFDriver.h old mode 100644 new mode 100755 index 168637d..1bd8e96 --- a/include/Frontend/SysYFDriver.h +++ b/include/Frontend/SysYFDriver.h @@ -33,7 +33,7 @@ public: // Run the parser on file F. // Return 0 on success. - SyntaxTree::Node* parse(const std::string& f); + SysYF::Ptr parse(const std::string& f); // The name of the file being parsed. // Used later to pass the file name to the location tracker. std::string file; @@ -44,7 +44,7 @@ public: void error(const yy::location& l, const std::string& m); void error(const std::string& m); - SyntaxTree::Node* root = nullptr; + SysYF::Ptr root = nullptr; }; #endif // _SYSYF_DRIVER_H_ diff --git a/include/Frontend/SysYFFlexLexer.h b/include/Frontend/SysYFFlexLexer.h old mode 100644 new mode 100755 diff --git a/include/Frontend/SysYFParser.h b/include/Frontend/SysYFParser.h index 8d868ea..c39daa3 100644 --- a/include/Frontend/SysYFParser.h +++ b/include/Frontend/SysYFParser.h @@ -1,4 +1,4 @@ -// A Bison parser, made by GNU Bison 3.7.6. +// A Bison parser, made by GNU Bison 3.8.2. // Skeleton interface for Bison LALR(1) parsers in C++ @@ -32,7 +32,7 @@ /** - ** \file /home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.h + ** \file ./SysYFParser.h ** Define the yy::parser class. */ @@ -42,16 +42,16 @@ // especially those whose name start with YY_ or yy_. They are // private implementation details that can be changed or removed. -#ifndef YY_YY_HOME_HZQ_SYSYF_IR_LAB_2021_SYSYCOMPILER_IR_LAB_BUILD_SYSYFPARSER_H_INCLUDED -# define YY_YY_HOME_HZQ_SYSYF_IR_LAB_2021_SYSYCOMPILER_IR_LAB_BUILD_SYSYFPARSER_H_INCLUDED +#ifndef YY_YY_HOME_CJB_COMPILER_EDUCODER_EDUCODER_2021FALL_COMPILER_IR_LAB_SYSYF_TA_BUILD_SYSYFPARSER_H_INCLUDED +# define YY_YY_HOME_CJB_COMPILER_EDUCODER_EDUCODER_2021FALL_COMPILER_IR_LAB_SYSYF_TA_BUILD_SYSYFPARSER_H_INCLUDED // "%code requires" blocks. -#line 12 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 12 "../../grammar/SysYFParser.yy" #include #include "SyntaxTree.h" class SysYFDriver; -#line 55 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.h" +#line 55 "./SysYFParser.h" # include # include // std::abort @@ -127,12 +127,18 @@ class SysYFDriver; # define YY_USE(E) /* empty */ #endif -#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ /* Suppress an incorrect diagnostic about yylval being uninitialized. */ -# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ +#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# if __GNUC__ * 100 + __GNUC_MINOR__ < 407 +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") +# else +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ _Pragma ("GCC diagnostic push") \ _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \ _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") +# endif # define YY_IGNORE_MAYBE_UNINITIALIZED_END \ _Pragma ("GCC diagnostic pop") #else @@ -185,7 +191,7 @@ class SysYFDriver; #endif namespace yy { -#line 189 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.h" +#line 195 "./SysYFParser.h" @@ -194,27 +200,32 @@ namespace yy { class SysYFParser { public: -#ifndef YYSTYPE +#ifdef YYSTYPE +# ifdef __GNUC__ +# pragma GCC message "bison: do not #define YYSTYPE in C++, use %define api.value.type" +# endif + typedef YYSTYPE value_type; +#else /// A buffer to store and retrieve objects. /// /// Sort of a variant, but does not keep track of the nature /// of the stored data, since that knowledge is available /// via the current parser state. - class semantic_type + class value_type { public: /// Type of *this. - typedef semantic_type self_type; + typedef value_type self_type; /// Empty construction. - semantic_type () YY_NOEXCEPT - : yybuffer_ () + value_type () YY_NOEXCEPT + : yyraw_ () , yytypeid_ (YY_NULLPTR) {} /// Construct and fill. template - semantic_type (YY_RVREF (T) t) + value_type (YY_RVREF (T) t) : yytypeid_ (&typeid (T)) { YY_ASSERT (sizeof (T) <= size); @@ -223,13 +234,13 @@ namespace yy { #if 201103L <= YY_CPLUSPLUS /// Non copyable. - semantic_type (const self_type&) = delete; + value_type (const self_type&) = delete; /// Non copyable. self_type& operator= (const self_type&) = delete; #endif /// Destruction, allowed only if empty. - ~semantic_type () YY_NOEXCEPT + ~value_type () YY_NOEXCEPT { YY_ASSERT (!yytypeid_); } @@ -373,7 +384,7 @@ namespace yy { private: #if YY_CPLUSPLUS < 201103L /// Non copyable. - semantic_type (const self_type&); + value_type (const self_type&); /// Non copyable. self_type& operator= (const self_type&); #endif @@ -383,7 +394,7 @@ namespace yy { T* yyas_ () YY_NOEXCEPT { - void *yyp = yybuffer_.yyraw; + void *yyp = yyraw_; return static_cast (yyp); } @@ -392,7 +403,7 @@ namespace yy { const T* yyas_ () const YY_NOEXCEPT { - const void *yyp = yybuffer_.yyraw; + const void *yyp = yyraw_; return static_cast (yyp); } @@ -400,10 +411,10 @@ namespace yy { union union_type { // CompUnit - char dummy1[sizeof (SyntaxTree::Assembly*)]; + char dummy1[sizeof (SysYF::Ptr)]; // Block - char dummy2[sizeof (SyntaxTree::BlockStmt*)]; + char dummy2[sizeof (SysYF::Ptr)]; // OptionRet // Exp @@ -412,57 +423,57 @@ namespace yy { // LAndExp // LOrExp // CondExp - char dummy3[sizeof (SyntaxTree::Expr*)]; + char dummy3[sizeof (SysYF::Ptr)]; // FuncDef - char dummy4[sizeof (SyntaxTree::FuncDef*)]; + char dummy4[sizeof (SysYF::Ptr)]; // FuncFParam - char dummy5[sizeof (SyntaxTree::FuncParam*)]; + char dummy5[sizeof (SysYF::Ptr)]; // InitVal // InitValList // CommaInitValList - char dummy6[sizeof (SyntaxTree::InitVal*)]; + char dummy6[sizeof (SysYF::Ptr)]; // LVal - char dummy7[sizeof (SyntaxTree::LVal*)]; + char dummy7[sizeof (SysYF::Ptr)]; // Number - char dummy8[sizeof (SyntaxTree::Literal*)]; + char dummy8[sizeof (SysYF::Ptr)]; + + // Stmt + // IfStmt + char dummy9[sizeof (SysYF::Ptr)]; + + // ConstDef + // VarDef + char dummy10[sizeof (SysYF::Ptr)]; // ArrayExpList // ExpList // CommaExpList - char dummy9[sizeof (SyntaxTree::PtrList)]; + char dummy11[sizeof (SysYF::PtrVec)]; // FParamList // CommaFParamList - char dummy10[sizeof (SyntaxTree::PtrList)]; + char dummy12[sizeof (SysYF::PtrVec)]; // GlobalDecl - char dummy11[sizeof (SyntaxTree::PtrList)]; + char dummy13[sizeof (SysYF::PtrVec)]; // BlockItemList // BlockItem - char dummy12[sizeof (SyntaxTree::PtrList)]; + char dummy14[sizeof (SysYF::PtrVec)]; // ConstDecl // ConstDefList // VarDecl // VarDefList - char dummy13[sizeof (SyntaxTree::PtrList)]; - - // Stmt - // IfStmt - char dummy14[sizeof (SyntaxTree::Stmt*)]; + char dummy15[sizeof (SysYF::PtrVec)]; // BType - char dummy15[sizeof (SyntaxTree::Type)]; - - // ConstDef - // VarDef - char dummy16[sizeof (SyntaxTree::VarDef*)]; + char dummy16[sizeof (SysYF::SyntaxTree::Type)]; // FLOATCONST char dummy17[sizeof (float)]; @@ -482,18 +493,19 @@ namespace yy { union { /// Strongest alignment constraints. - long double yyalign_me; + long double yyalign_me_; /// A buffer large enough to store any of the semantic values. - char yyraw[size]; - } yybuffer_; + char yyraw_[size]; + }; /// Whether the content is built: if defined, the name of the stored type. const std::type_info *yytypeid_; }; -#else - typedef YYSTYPE semantic_type; #endif + /// Backward compatibility (Bison 3.8). + typedef value_type semantic_type; + /// Symbol locations. typedef location location_type; @@ -580,7 +592,7 @@ namespace yy { }; /// Token kind, as returned by yylex. - typedef token::yytokentype token_kind_type; + typedef token::token_kind_type token_kind_type; /// Backward compatibility alias (Bison 3.6). typedef token_kind_type token_type; @@ -702,7 +714,7 @@ namespace yy { typedef Base super_type; /// Default constructor. - basic_symbol () + basic_symbol () YY_NOEXCEPT : value () , location () {} @@ -717,11 +729,11 @@ namespace yy { switch (this->kind ()) { case symbol_kind::S_CompUnit: // CompUnit - value.move< SyntaxTree::Assembly* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_Block: // Block - value.move< SyntaxTree::BlockStmt* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_OptionRet: // OptionRet @@ -731,70 +743,70 @@ namespace yy { case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.move< SyntaxTree::Expr* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_FuncDef: // FuncDef - value.move< SyntaxTree::FuncDef* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.move< SyntaxTree::FuncParam* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.move< SyntaxTree::InitVal* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_LVal: // LVal - value.move< SyntaxTree::LVal* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_Number: // Number - value.move< SyntaxTree::Literal* > (std::move (that.value)); + value.move< SysYF::Ptr > (std::move (that.value)); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.move< SysYF::Ptr > (std::move (that.value)); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.move< SysYF::Ptr > (std::move (that.value)); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.move< SyntaxTree::PtrList > (std::move (that.value)); + value.move< SysYF::PtrVec > (std::move (that.value)); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.move< SyntaxTree::PtrList > (std::move (that.value)); + value.move< SysYF::PtrVec > (std::move (that.value)); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.move< SyntaxTree::PtrList > (std::move (that.value)); + value.move< SysYF::PtrVec > (std::move (that.value)); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.move< SyntaxTree::PtrList > (std::move (that.value)); + value.move< SysYF::PtrVec > (std::move (that.value)); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.move< SyntaxTree::PtrList > (std::move (that.value)); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.move< SyntaxTree::Stmt* > (std::move (that.value)); + value.move< SysYF::PtrVec > (std::move (that.value)); break; case symbol_kind::S_BType: // BType - value.move< SyntaxTree::Type > (std::move (that.value)); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.move< SyntaxTree::VarDef* > (std::move (that.value)); + value.move< SysYF::SyntaxTree::Type > (std::move (that.value)); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -834,13 +846,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::Assembly*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::Assembly*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -848,13 +860,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::BlockStmt*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::BlockStmt*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -862,13 +874,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::Expr*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::Expr*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -876,13 +888,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::FuncDef*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::FuncDef*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -890,13 +902,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::FuncParam*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::FuncParam*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -904,13 +916,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::InitVal*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::InitVal*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -918,13 +930,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::LVal*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::LVal*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -932,13 +944,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::Literal*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::Literal*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -946,13 +958,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::PtrList&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::PtrList& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -960,13 +972,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::PtrList&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::Ptr&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::PtrList& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::Ptr& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -974,13 +986,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::PtrList&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::PtrVec&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::PtrList& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::PtrVec& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -988,13 +1000,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::PtrList&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::PtrVec&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::PtrList& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::PtrVec& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -1002,13 +1014,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::PtrList&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::PtrVec&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::PtrList& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::PtrVec& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -1016,13 +1028,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::Stmt*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::PtrVec&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::Stmt*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::PtrVec& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -1030,13 +1042,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::Type&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::PtrVec&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::Type& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::PtrVec& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -1044,13 +1056,13 @@ namespace yy { #endif #if 201103L <= YY_CPLUSPLUS - basic_symbol (typename Base::kind_type t, SyntaxTree::VarDef*&& v, location_type&& l) + basic_symbol (typename Base::kind_type t, SysYF::SyntaxTree::Type&& v, location_type&& l) : Base (t) , value (std::move (v)) , location (std::move (l)) {} #else - basic_symbol (typename Base::kind_type t, const SyntaxTree::VarDef*& v, const location_type& l) + basic_symbol (typename Base::kind_type t, const SysYF::SyntaxTree::Type& v, const location_type& l) : Base (t) , value (v) , location (l) @@ -1105,6 +1117,8 @@ namespace yy { clear (); } + + /// Destroy contents, and record that is empty. void clear () YY_NOEXCEPT { @@ -1122,11 +1136,11 @@ namespace yy { switch (yykind) { case symbol_kind::S_CompUnit: // CompUnit - value.template destroy< SyntaxTree::Assembly* > (); + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_Block: // Block - value.template destroy< SyntaxTree::BlockStmt* > (); + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_OptionRet: // OptionRet @@ -1136,70 +1150,70 @@ switch (yykind) case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.template destroy< SyntaxTree::Expr* > (); + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_FuncDef: // FuncDef - value.template destroy< SyntaxTree::FuncDef* > (); + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.template destroy< SyntaxTree::FuncParam* > (); + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.template destroy< SyntaxTree::InitVal* > (); + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_LVal: // LVal - value.template destroy< SyntaxTree::LVal* > (); + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_Number: // Number - value.template destroy< SyntaxTree::Literal* > (); + value.template destroy< SysYF::Ptr > (); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.template destroy< SysYF::Ptr > (); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.template destroy< SysYF::Ptr > (); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.template destroy< SyntaxTree::PtrList > (); + value.template destroy< SysYF::PtrVec > (); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.template destroy< SyntaxTree::PtrList > (); + value.template destroy< SysYF::PtrVec > (); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.template destroy< SyntaxTree::PtrList > (); + value.template destroy< SysYF::PtrVec > (); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.template destroy< SyntaxTree::PtrList > (); + value.template destroy< SysYF::PtrVec > (); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.template destroy< SyntaxTree::PtrList > (); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.template destroy< SyntaxTree::Stmt* > (); + value.template destroy< SysYF::PtrVec > (); break; case symbol_kind::S_BType: // BType - value.template destroy< SyntaxTree::Type > (); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.template destroy< SyntaxTree::VarDef* > (); + value.template destroy< SysYF::SyntaxTree::Type > (); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -1238,7 +1252,7 @@ switch (yykind) void move (basic_symbol& s); /// The semantic value. - semantic_type value; + value_type value; /// The location. location_type location; @@ -1253,22 +1267,24 @@ switch (yykind) /// Type access provider for token (enum) based symbols. struct by_kind { + /// The symbol kind as needed by the constructor. + typedef token_kind_type kind_type; + /// Default constructor. - by_kind (); + by_kind () YY_NOEXCEPT; #if 201103L <= YY_CPLUSPLUS /// Move constructor. - by_kind (by_kind&& that); + by_kind (by_kind&& that) YY_NOEXCEPT; #endif /// Copy constructor. - by_kind (const by_kind& that); - - /// The symbol kind as needed by the constructor. - typedef token_kind_type kind_type; + by_kind (const by_kind& that) YY_NOEXCEPT; /// Constructor from (external) token numbers. - by_kind (kind_type t); + by_kind (kind_type t) YY_NOEXCEPT; + + /// Record that this symbol is empty. void clear () YY_NOEXCEPT; @@ -1298,17 +1314,18 @@ switch (yykind) typedef basic_symbol super_type; /// Empty symbol. - symbol_type () {} + symbol_type () YY_NOEXCEPT {} /// Constructor for valueless symbols, and symbols from each type. #if 201103L <= YY_CPLUSPLUS symbol_type (int tok, location_type l) - : super_type(token_type (tok), std::move (l)) + : super_type (token_kind_type (tok), std::move (l)) #else symbol_type (int tok, const location_type& l) - : super_type(token_type (tok), l) + : super_type (token_kind_type (tok), l) #endif { +#if !defined _MSC_VER || defined __clang__ YY_ASSERT (tok == token::TOK_YYEOF || tok == token::TOK_YYerror || (token::TOK_YYUNDEF <= tok && tok <= token::TOK_END) @@ -1316,37 +1333,44 @@ switch (yykind) || (token::TOK_LETTER <= tok && tok <= token::TOK_LT) || tok == token::TOK_LRBRACKET || (token::TOK_UPLUS <= tok && tok <= token::TOK_UNOT)); +#endif } #if 201103L <= YY_CPLUSPLUS symbol_type (int tok, float v, location_type l) - : super_type(token_type (tok), std::move (v), std::move (l)) + : super_type (token_kind_type (tok), std::move (v), std::move (l)) #else symbol_type (int tok, const float& v, const location_type& l) - : super_type(token_type (tok), v, l) + : super_type (token_kind_type (tok), v, l) #endif { +#if !defined _MSC_VER || defined __clang__ YY_ASSERT (tok == token::TOK_FLOATCONST); +#endif } #if 201103L <= YY_CPLUSPLUS symbol_type (int tok, int v, location_type l) - : super_type(token_type (tok), std::move (v), std::move (l)) + : super_type (token_kind_type (tok), std::move (v), std::move (l)) #else symbol_type (int tok, const int& v, const location_type& l) - : super_type(token_type (tok), v, l) + : super_type (token_kind_type (tok), v, l) #endif { +#if !defined _MSC_VER || defined __clang__ YY_ASSERT (tok == token::TOK_INTCONST); +#endif } #if 201103L <= YY_CPLUSPLUS symbol_type (int tok, std::string v, location_type l) - : super_type(token_type (tok), std::move (v), std::move (l)) + : super_type (token_kind_type (tok), std::move (v), std::move (l)) #else symbol_type (int tok, const std::string& v, const location_type& l) - : super_type(token_type (tok), v, l) + : super_type (token_kind_type (tok), v, l) #endif { +#if !defined _MSC_VER || defined __clang__ YY_ASSERT (tok == token::TOK_IDENTIFIER || tok == token::TOK_STRINGCONST); +#endif } }; @@ -1395,7 +1419,7 @@ switch (yykind) /// YYSYMBOL. No bounds checking. static std::string symbol_name (symbol_kind_type yysymbol); - // Implementation of make_symbol for each symbol type. + // Implementation of make_symbol for each token kind. #if 201103L <= YY_CPLUSPLUS static symbol_type @@ -2237,19 +2261,19 @@ switch (yykind) /// Whether the given \c yypact_ value indicates a defaulted state. /// \param yyvalue the value to check - static bool yy_pact_value_is_default_ (int yyvalue); + static bool yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT; /// Whether the given \c yytable_ value indicates a syntax error. /// \param yyvalue the value to check - static bool yy_table_value_is_error_ (int yyvalue); + static bool yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT; static const signed char yypact_ninf_; static const signed char yytable_ninf_; /// Convert a scanner token kind \a t to a symbol kind. /// In theory \a t should be a token_kind_type, but character literals - /// are valid, yet not members of the token_type enum. - static symbol_kind_type yytranslate_ (int t); + /// are valid, yet not members of the token_kind_type enum. + static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT; /// Convert the symbol name \a n to a form suitable for a diagnostic. static std::string yytnamerr_ (const char *yystr); @@ -2281,14 +2305,14 @@ switch (yykind) static const unsigned char yycheck_[]; - // YYSTOS[STATE-NUM] -- The (internal number of the) accessing - // symbol of state STATE-NUM. + // YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of + // state STATE-NUM. static const signed char yystos_[]; - // YYR1[YYN] -- Symbol number of symbol that rule YYN derives. + // YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. static const signed char yyr1_[]; - // YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. + // YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. static const signed char yyr2_[]; @@ -2387,7 +2411,7 @@ switch (yykind) typedef typename S::size_type size_type; typedef typename std::ptrdiff_t index_type; - stack (size_type n = 200) + stack (size_type n = 200) YY_NOEXCEPT : seq_ (n) {} @@ -2466,7 +2490,7 @@ switch (yykind) class slice { public: - slice (const stack& stack, index_type range) + slice (const stack& stack, index_type range) YY_NOEXCEPT : stack_ (stack) , range_ (range) {} @@ -2516,7 +2540,7 @@ switch (yykind) void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym); /// Pop \a n symbols from the stack. - void yypop_ (int n = 1); + void yypop_ (int n = 1) YY_NOEXCEPT; /// Constants. enum @@ -2534,7 +2558,7 @@ switch (yykind) inline SysYFParser::symbol_kind_type - SysYFParser::yytranslate_ (int t) + SysYFParser::yytranslate_ (int t) YY_NOEXCEPT { // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to // TOKEN-NUM as returned by yylex. @@ -2580,7 +2604,7 @@ switch (yykind) if (t <= 0) return symbol_kind::S_YYEOF; else if (t <= code_max) - return YY_CAST (symbol_kind_type, translate_table[t]); + return static_cast (translate_table[t]); else return symbol_kind::S_YYUNDEF; } @@ -2595,11 +2619,11 @@ switch (yykind) switch (this->kind ()) { case symbol_kind::S_CompUnit: // CompUnit - value.copy< SyntaxTree::Assembly* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_Block: // Block - value.copy< SyntaxTree::BlockStmt* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_OptionRet: // OptionRet @@ -2609,70 +2633,70 @@ switch (yykind) case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.copy< SyntaxTree::Expr* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_FuncDef: // FuncDef - value.copy< SyntaxTree::FuncDef* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.copy< SyntaxTree::FuncParam* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.copy< SyntaxTree::InitVal* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_LVal: // LVal - value.copy< SyntaxTree::LVal* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_Number: // Number - value.copy< SyntaxTree::Literal* > (YY_MOVE (that.value)); + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.copy< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.copy< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.copy< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.copy< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.copy< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.copy< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.copy< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.copy< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.copy< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.copy< SyntaxTree::PtrList > (YY_MOVE (that.value)); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.copy< SyntaxTree::Stmt* > (YY_MOVE (that.value)); + value.copy< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_BType: // BType - value.copy< SyntaxTree::Type > (YY_MOVE (that.value)); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.copy< SyntaxTree::VarDef* > (YY_MOVE (that.value)); + value.copy< SysYF::SyntaxTree::Type > (YY_MOVE (that.value)); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -2696,6 +2720,7 @@ switch (yykind) + template SysYFParser::symbol_kind_type SysYFParser::basic_symbol::type_get () const YY_NOEXCEPT @@ -2703,6 +2728,7 @@ switch (yykind) return this->kind (); } + template bool SysYFParser::basic_symbol::empty () const YY_NOEXCEPT @@ -2718,11 +2744,11 @@ switch (yykind) switch (this->kind ()) { case symbol_kind::S_CompUnit: // CompUnit - value.move< SyntaxTree::Assembly* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_Block: // Block - value.move< SyntaxTree::BlockStmt* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_OptionRet: // OptionRet @@ -2732,70 +2758,70 @@ switch (yykind) case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.move< SyntaxTree::Expr* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_FuncDef: // FuncDef - value.move< SyntaxTree::FuncDef* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.move< SyntaxTree::FuncParam* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.move< SyntaxTree::InitVal* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_LVal: // LVal - value.move< SyntaxTree::LVal* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_Number: // Number - value.move< SyntaxTree::Literal* > (YY_MOVE (s.value)); + value.move< SysYF::Ptr > (YY_MOVE (s.value)); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.move< SysYF::Ptr > (YY_MOVE (s.value)); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.move< SysYF::Ptr > (YY_MOVE (s.value)); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.move< SyntaxTree::PtrList > (YY_MOVE (s.value)); + value.move< SysYF::PtrVec > (YY_MOVE (s.value)); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.move< SyntaxTree::PtrList > (YY_MOVE (s.value)); + value.move< SysYF::PtrVec > (YY_MOVE (s.value)); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.move< SyntaxTree::PtrList > (YY_MOVE (s.value)); + value.move< SysYF::PtrVec > (YY_MOVE (s.value)); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.move< SyntaxTree::PtrList > (YY_MOVE (s.value)); + value.move< SysYF::PtrVec > (YY_MOVE (s.value)); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.move< SyntaxTree::PtrList > (YY_MOVE (s.value)); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.move< SyntaxTree::Stmt* > (YY_MOVE (s.value)); + value.move< SysYF::PtrVec > (YY_MOVE (s.value)); break; case symbol_kind::S_BType: // BType - value.move< SyntaxTree::Type > (YY_MOVE (s.value)); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.move< SyntaxTree::VarDef* > (YY_MOVE (s.value)); + value.move< SysYF::SyntaxTree::Type > (YY_MOVE (s.value)); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -2820,13 +2846,13 @@ switch (yykind) // by_kind. inline - SysYFParser::by_kind::by_kind () + SysYFParser::by_kind::by_kind () YY_NOEXCEPT : kind_ (symbol_kind::S_YYEMPTY) {} #if 201103L <= YY_CPLUSPLUS inline - SysYFParser::by_kind::by_kind (by_kind&& that) + SysYFParser::by_kind::by_kind (by_kind&& that) YY_NOEXCEPT : kind_ (that.kind_) { that.clear (); @@ -2834,15 +2860,17 @@ switch (yykind) #endif inline - SysYFParser::by_kind::by_kind (const by_kind& that) + SysYFParser::by_kind::by_kind (const by_kind& that) YY_NOEXCEPT : kind_ (that.kind_) {} inline - SysYFParser::by_kind::by_kind (token_kind_type t) + SysYFParser::by_kind::by_kind (token_kind_type t) YY_NOEXCEPT : kind_ (yytranslate_ (t)) {} + + inline void SysYFParser::by_kind::clear () YY_NOEXCEPT @@ -2865,6 +2893,7 @@ switch (yykind) return kind_; } + inline SysYFParser::symbol_kind_type SysYFParser::by_kind::type_get () const YY_NOEXCEPT @@ -2872,10 +2901,11 @@ switch (yykind) return this->kind (); } + } // yy -#line 2877 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.h" +#line 2907 "./SysYFParser.h" -#endif // !YY_YY_HOME_HZQ_SYSYF_IR_LAB_2021_SYSYCOMPILER_IR_LAB_BUILD_SYSYFPARSER_H_INCLUDED +#endif // !YY_YY_HOME_CJB_COMPILER_EDUCODER_EDUCODER_2021FALL_COMPILER_IR_LAB_SYSYF_TA_BUILD_SYSYFPARSER_H_INCLUDED diff --git a/include/Frontend/location.hh b/include/Frontend/location.hh index f171cd1..a4d88d2 100644 --- a/include/Frontend/location.hh +++ b/include/Frontend/location.hh @@ -1,4 +1,4 @@ -// A Bison parser, made by GNU Bison 3.7.6. +// A Bison parser, made by GNU Bison 3.8.2. // Locations for Bison parsers in C++ @@ -31,12 +31,12 @@ // version 2.2 of Bison. /** - ** \file /home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/location.hh + ** \file ./location.hh ** Define the yy::location class. */ -#ifndef YY_YY_HOME_HZQ_SYSYF_IR_LAB_2021_SYSYCOMPILER_IR_LAB_BUILD_LOCATION_HH_INCLUDED -# define YY_YY_HOME_HZQ_SYSYF_IR_LAB_2021_SYSYCOMPILER_IR_LAB_BUILD_LOCATION_HH_INCLUDED +#ifndef YY_YY_HOME_CJB_COMPILER_EDUCODER_EDUCODER_2021FALL_COMPILER_IR_LAB_SYSYF_TA_BUILD_LOCATION_HH_INCLUDED +# define YY_YY_HOME_CJB_COMPILER_EDUCODER_EDUCODER_2021FALL_COMPILER_IR_LAB_SYSYF_TA_BUILD_LOCATION_HH_INCLUDED # include # include @@ -54,7 +54,7 @@ # endif namespace yy { -#line 58 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/location.hh" +#line 58 "./location.hh" /// A point in a source file. class position @@ -299,6 +299,6 @@ namespace yy { } } // yy -#line 303 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/location.hh" +#line 303 "./location.hh" -#endif // !YY_YY_HOME_HZQ_SYSYF_IR_LAB_2021_SYSYCOMPILER_IR_LAB_BUILD_LOCATION_HH_INCLUDED +#endif // !YY_YY_HOME_CJB_COMPILER_EDUCODER_EDUCODER_2021FALL_COMPILER_IR_LAB_SYSYF_TA_BUILD_LOCATION_HH_INCLUDED diff --git a/include/Frontend/position.hh b/include/Frontend/position.hh index 6575075..1bd8e26 100644 --- a/include/Frontend/position.hh +++ b/include/Frontend/position.hh @@ -1,4 +1,4 @@ -// A Bison parser, made by GNU Bison 3.7.6. +// A Bison parser, made by GNU Bison 3.8.2. // Starting with Bison 3.2, this file is useless: the structure it // used to define is now defined in "location.hh". diff --git a/include/Frontend/stack.hh b/include/Frontend/stack.hh index e6c46cc..746965d 100644 --- a/include/Frontend/stack.hh +++ b/include/Frontend/stack.hh @@ -1,4 +1,4 @@ -// A Bison parser, made by GNU Bison 3.7.6. +// A Bison parser, made by GNU Bison 3.8.2. // Starting with Bison 3.2, this file is useless: the structure it // used to define is now defined with the parser itself. diff --git a/include/SysYFIR/BasicBlock.h b/include/SysYFIR/BasicBlock.h index 66c5fe4..4f9f317 100644 --- a/include/SysYFIR/BasicBlock.h +++ b/include/SysYFIR/BasicBlock.h @@ -1,77 +1,86 @@ -#ifndef _SYSYF_BASICBLOCK_H_ -#define _SYSYF_BASICBLOCK_H_ - -#include "Value.h" -#include "Instruction.h" -#include "Module.h" -#include "Function.h" - -#include -#include -#include - -class Function; -class Instruction; -class Module; - -class BasicBlock : public Value -{ -public: - static BasicBlock *create(Module *m, const std::string &name , - Function *parent ) { - auto prefix = name.empty() ? "" : "label_"; - return new BasicBlock(m, prefix + name, parent); - } - - // return parent, or null if none. - Function *get_parent() { return parent_; } - - Module *get_module(); - - /****************api about cfg****************/ - - std::list &get_pre_basic_blocks() { return pre_bbs_; } - std::list &get_succ_basic_blocks() { return succ_bbs_; } - void add_pre_basic_block(BasicBlock *bb) { pre_bbs_.push_back(bb); } - void add_succ_basic_block(BasicBlock *bb) { succ_bbs_.push_back(bb); } - - void remove_pre_basic_block(BasicBlock *bb) { pre_bbs_.remove(bb); } - void remove_succ_basic_block(BasicBlock *bb) { succ_bbs_.remove(bb); } - - /****************api about cfg****************/ - - /// Returns the terminator instruction if the block is well formed or null - /// if the block is not well formed. - const Instruction *get_terminator() const; - Instruction *get_terminator() { - return const_cast( - static_cast(this)->get_terminator()); - } - - void add_instruction(Instruction *instr); - void add_instruction(std::list::iterator instr_pos, Instruction *instr); - void add_instr_begin(Instruction *instr); - - std::list::iterator find_instruction(Instruction *instr); - - void delete_instr(Instruction *instr); - - bool empty() { return instr_list_.empty(); } - - int get_num_of_instr() { return instr_list_.size(); } - std::list &get_instructions() { return instr_list_; } - - void erase_from_parent(); - - virtual std::string print() override; - -private: - explicit BasicBlock(Module *m, const std::string &name , - Function *parent ); - std::list pre_bbs_; - std::list succ_bbs_; - std::list instr_list_; - Function *parent_; -}; - +#ifndef _SYSYF_BASICBLOCK_H_ +#define _SYSYF_BASICBLOCK_H_ + +#include "Value.h" +#include "Instruction.h" +#include "Module.h" +#include "Function.h" + +#include +#include +#include + +namespace SysYF +{ +namespace IR +{ +class Function; +class Instruction; +class Module; + +class BasicBlock : public Value +{ +public: + static Ptr create(Ptr m, const std::string &name , + Ptr parent ) { + auto prefix = name.empty() ? "" : "label_"; + RET_AFTER_INIT(BasicBlock, m, prefix + name, parent); + } + + // return parent, or null if none. + Ptr get_parent() { return parent_; } + + Ptr get_module(); + + /****************api about cfg****************/ + + PtrList &get_pre_basic_blocks() { return pre_bbs_; } + PtrList &get_succ_basic_blocks() { return succ_bbs_; } + void add_pre_basic_block(Ptr bb) { pre_bbs_.push_back(bb); } + void add_succ_basic_block(Ptr bb) { succ_bbs_.push_back(bb); } + + void remove_pre_basic_block(Ptr bb) { pre_bbs_.remove(bb); } + void remove_succ_basic_block(Ptr bb) { succ_bbs_.remove(bb); } + + /****************api about cfg****************/ + + /// Returns the terminator instruction if the block is well formed or null + /// if the block is not well formed. + const Ptr get_terminator() const; + Ptr get_terminator() { + return const_pointer_cast( + static_pointer_cast(shared_from_this())->get_terminator()); + } + + void add_instruction(Ptr instr); + void add_instruction(PtrList::iterator instr_pos, Ptr instr); + void add_instr_begin(Ptr instr); + + PtrList::iterator find_instruction(Ptr instr); + + void delete_instr(Ptr instr); + + bool empty() { return instr_list_.empty(); } + + int get_num_of_instr() { return instr_list_.size(); } + PtrList &get_instructions() { return instr_list_; } + + void erase_from_parent(); + + virtual std::string print() override; + +private: + explicit BasicBlock(Ptr m, const std::string &name , + Ptr parent ); + void init(Ptr m, const std::string &name , + Ptr parent ); + PtrList pre_bbs_; + PtrList succ_bbs_; + PtrList instr_list_; + Ptr parent_; +}; + +} +} + #endif // _SYSYF_BASICBLOCK_H_ \ No newline at end of file diff --git a/include/SysYFIR/Constant.h b/include/SysYFIR/Constant.h index e18bfa1..469ad16 100644 --- a/include/SysYFIR/Constant.h +++ b/include/SysYFIR/Constant.h @@ -1,75 +1,90 @@ -#ifndef _SYSYF_CONSTANT_H_ -#define _SYSYF_CONSTANT_H_ -#include "User.h" -#include "Value.h" -#include "Type.h" - -class Constant : public User -{ -private: - // int value; -public: - Constant(Type *ty, const std::string &name = "", unsigned num_ops = 0) - : User(ty, name, num_ops) {} - ~Constant() = default; -}; - -class ConstantInt : public Constant -{ -private: - int value_; - ConstantInt(Type* ty,int val) - : Constant(ty,"",0),value_(val) {} -public: - - static int get_value(ConstantInt *const_val) { return const_val->value_; } - int get_value() { return value_; } - static ConstantInt *get(int val, Module *m); - static ConstantInt *get(bool val, Module *m); - virtual std::string print() override; -}; - -class ConstantFloat : public Constant -{ -private: - float value_; - ConstantFloat(Type* ty,float val) - : Constant(ty,"",0),value_(val) {} -public: - - static float get_value(ConstantFloat *const_val) { return const_val->value_; } - float get_value() { return value_; } - static ConstantFloat *get(float val, Module *m); - virtual std::string print() override; -}; - -class ConstantArray : public Constant -{ -private: - std::vector const_array; - - ConstantArray(ArrayType *ty, const std::vector &val); -public: - - ~ConstantArray()=default; - - Constant* get_element_value(int index); - - unsigned get_size_of_array() { return const_array.size(); } - - static ConstantArray *get(ArrayType *ty, const std::vector &val); - - virtual std::string print() override; -}; - -class ConstantZero : public Constant -{ -private: - ConstantZero(Type *ty) - : Constant(ty,"",0) {} -public: - static ConstantZero *get(Type *ty, Module *m); - virtual std::string print() override; -}; - -#endif //_SYSYF_CONSTANT_H_ +#ifndef _SYSYF_CONSTANT_H_ +#define _SYSYF_CONSTANT_H_ +#include "User.h" +#include "Value.h" +#include "Type.h" + +namespace SysYF +{ +namespace IR +{ +class Constant : public User +{ +protected: + explicit Constant(Ptr ty, const std::string &name = "", unsigned num_ops = 0) + : User(ty, name, num_ops) {} + void init(Ptr ty, const std::string &name = "", unsigned num_ops = 0) {} + // int value; +public: + ~Constant() = default; +}; + +class ConstantInt : public Constant +{ +private: + int value_; + explicit ConstantInt(Ptr ty, int val) + : Constant(ty,"",0),value_(val) {} + void init(Ptr ty, int val); + +public: + + static int get_value(Ptr const_val) { return const_val->value_; } + int get_value() { return value_; } + static Ptr create(int val, Ptr m); + static Ptr create(bool val, Ptr m); + virtual std::string print() override; +}; + +class ConstantFloat : public Constant +{ +private: + float value_; + explicit ConstantFloat(Ptr ty,float val) + : Constant(ty,"",0),value_(val) {} + void init(Ptr ty, float val); + +public: + + static float get_value(Ptr const_val) { return const_val->value_; } + float get_value() { return value_; } + static Ptr create(float val, Ptr m); + virtual std::string print() override; +}; + +class ConstantArray : public Constant +{ +private: + PtrVec const_array; + explicit ConstantArray(Ptr ty, const PtrVec &val); + void init(Ptr ty, const PtrVec &val); + +public: + + ~ConstantArray() = default; + + Ptr get_element_value(int index); + + unsigned get_size_of_array() { return const_array.size(); } + + static Ptr create(Ptr ty, const PtrVec &val); + + virtual std::string print() override; +}; + +class ConstantZero : public Constant +{ +private: + explicit ConstantZero(Ptr ty) + : Constant(ty,"",0) {} + void init(Ptr ty); + +public: + static Ptr create(Ptr ty, Ptr m); + virtual std::string print() override; +}; + +} +} + +#endif //_SYSYF_CONSTANT_H_ diff --git a/include/SysYFIR/Function.h b/include/SysYFIR/Function.h index fb756bd..c9921d2 100644 --- a/include/SysYFIR/Function.h +++ b/include/SysYFIR/Function.h @@ -1,101 +1,110 @@ -#ifndef _SYSYF_FUNCTION_H_ -#define _SYSYF_FUNCTION_H_ - -#include -#include -#include -#include -#ifdef DEBUG -#include -#endif -#include - -#include "User.h" -#include "Module.h" -#include "BasicBlock.h" -#include "Type.h" - -class Module; -class Argument; -class BasicBlock; -class Type; -class FunctionType; - -class Function : public Value -{ -public: - Function(FunctionType *ty, const std::string &name, Module *parent); - ~Function(); - static Function *create(FunctionType *ty, const std::string &name, Module *parent); - - FunctionType *get_function_type() const; - - Type *get_return_type() const; - - void add_basic_block(BasicBlock *bb); - - unsigned get_num_of_args() const; - unsigned get_num_basic_blocks() const; - - Module *get_parent() const; - - std::list::iterator arg_begin() { return arguments_.begin(); } - std::list::iterator arg_end() { return arguments_.end(); } - - void remove(BasicBlock* bb); - BasicBlock *get_entry_block() { return *basic_blocks_.begin(); } - - std::list &get_basic_blocks() { return basic_blocks_; } - std::list &get_args() { return arguments_; } - std::vector> &get_vreg_set(){ return vreg_set_;} - - bool is_declaration() { return basic_blocks_.empty(); } - void set_unused_reg_num(std::set& set){unused_reg_num_ = set;} - std::set& get_unused_reg_num(){return unused_reg_num_;} - - void set_instr_name(); - std::string print(); - -private: - void build_args(); - -private: - std::list basic_blocks_; // basic blocks - std::list arguments_; // arguments - std::vector> vreg_set_; - Module *parent_; - std::set unused_reg_num_; - unsigned seq_cnt_; - // unsigned num_args_; - // We don't need this, all value inside function should be unnamed - // std::map sym_table_; // Symbol table of args/instructions -}; - -// Argument of Function, does not contain actual value -class Argument : public Value -{ -public: - /// Argument constructor. - explicit Argument(Type *ty, const std::string &name = "", Function *f = nullptr, - unsigned arg_no = 0) - : Value(ty, name), parent_(f), arg_no_(arg_no) {} - ~Argument() {} - - inline const Function *get_parent() const { return parent_; } - inline Function *get_parent() { return parent_; } - - /// For example in "void foo(int a, float b)" a is 0 and b is 1. - unsigned get_arg_no() const { -#ifdef DEBUG - assert(parent_ && "can't get number of unparented arg"); -#endif - return arg_no_; - } - - virtual std::string print() override ; -private: - Function *parent_; - unsigned arg_no_; // argument No. -}; - -#endif // _SYSYF_FUNCTION_H_ +#ifndef _SYSYF_FUNCTION_H_ +#define _SYSYF_FUNCTION_H_ + +#include +#include +#include +#include +#ifdef DEBUG +#include +#endif +#include + +#include "User.h" +#include "Module.h" +#include "BasicBlock.h" +#include "Type.h" + +namespace SysYF +{ +namespace IR +{ +class Module; +class Argument; +class BasicBlock; +class Type; +class FunctionType; + +class Function : public Value +{ +public: + ~Function() = default; + static Ptr create(Ptr ty, const std::string &name, Ptr parent); + + Ptr get_function_type() const; + + Ptr get_return_type() const; + + void add_basic_block(Ptr bb); + + unsigned get_num_of_args() const; + unsigned get_num_basic_blocks() const; + + Ptr get_parent() const; + + PtrList::iterator arg_begin() { return arguments_.begin(); } + PtrList::iterator arg_end() { return arguments_.end(); } + + void remove(Ptr bb); + Ptr get_entry_block() { return *basic_blocks_.begin(); } + + PtrList &get_basic_blocks() { return basic_blocks_; } + PtrList &get_args() { return arguments_; } + std::vector> &get_vreg_set(){ return vreg_set_;} + + bool is_declaration() { return basic_blocks_.empty(); } + void set_unused_reg_num(std::set& set){unused_reg_num_ = set;} + std::set& get_unused_reg_num(){return unused_reg_num_;} + + void set_instr_name(); + std::string print(); + +private: + explicit Function(Ptr ty, const std::string &name, Ptr parent); + void init(Ptr ty, const std::string &name, Ptr parent); + void build_args(); + +private: + PtrList basic_blocks_; // basic blocks + PtrList arguments_; // arguments + std::vector> vreg_set_; + Ptr parent_; + std::set unused_reg_num_; + unsigned seq_cnt_; + // unsigned num_args_; + // We don't need this, all value inside function should be unnamed + // std::map> sym_table_; // Symbol table of args/instructions +}; + +// Argument of Function, does not contain actual value +class Argument : public Value +{ +public: + static Ptr create(Ptr ty, const std::string &name = "", Ptr f = nullptr, + unsigned arg_no = 0); + ~Argument() = default; + + inline const Ptr get_parent() const { return parent_; } + inline Ptr get_parent() { return parent_; } + + /// For example in "void foo(int a, float b)" a is 0 and b is 1. + unsigned get_arg_no() const { +#ifdef DEBUG + assert(parent_ && "can't get number of unparented arg"); +#endif + return arg_no_; + } + + virtual std::string print() override ; +private: + // Argument constructor. + explicit Argument(Ptr ty, const std::string &name = "", Ptr f = nullptr, + unsigned arg_no = 0) + : Value(ty, name), parent_(f), arg_no_(arg_no) {} + Ptr parent_; + unsigned arg_no_; // argument No. +}; + +} +} +#endif // _SYSYF_FUNCTION_H_ diff --git a/include/SysYFIR/GlobalVariable.h b/include/SysYFIR/GlobalVariable.h index f08df3b..7d251e1 100644 --- a/include/SysYFIR/GlobalVariable.h +++ b/include/SysYFIR/GlobalVariable.h @@ -1,22 +1,31 @@ -#ifndef _SYSYF_GLOBALVARIABLE_H_ -#define _SYSYF_GLOBALVARIABLE_H_ - -#include "Module.h" -#include "User.h" -#include "Constant.h" - -class GlobalVariable : public User -{ -private: - bool is_const_ ; - Constant* init_val_; - GlobalVariable(std::string name, Module *m, Type* ty, bool is_const, Constant* init = nullptr); -public: - static GlobalVariable *create(std::string name, Module *m, Type* ty, bool is_const, - Constant* init ); - - Constant *get_init() { return init_val_; } - bool is_const() { return is_const_; } - std::string print(); -}; -#endif //_SYSYF_GLOBALVARIABLE_H_ +#ifndef _SYSYF_GLOBALVARIABLE_H_ +#define _SYSYF_GLOBALVARIABLE_H_ + +#include "Module.h" +#include "User.h" +#include "Constant.h" + +namespace SysYF +{ +namespace IR +{ +class GlobalVariable : public User +{ +private: + bool is_const_ ; + Ptr init_val_; + explicit GlobalVariable(std::string name, Ptr m, Ptr ty, bool is_const, Ptr init_val = nullptr); + void init(std::string name, Ptr m, Ptr ty, bool is_const, Ptr init_val = nullptr); + +public: + static Ptr create(std::string name, Ptr m, Ptr ty, bool is_const, Ptr init_val); + + Ptr get_init() { return init_val_; } + bool is_const() { return is_const_; } + std::string print(); +}; + +} +} + +#endif //_SYSYF_GLOBALVARIABLE_H_ diff --git a/include/SysYFIR/IRPrinter.h b/include/SysYFIR/IRPrinter.h index 1f7b082..e5cae71 100644 --- a/include/SysYFIR/IRPrinter.h +++ b/include/SysYFIR/IRPrinter.h @@ -1,13 +1,25 @@ -#include "Value.h" -#include "Module.h" -#include "Function.h" -#include "GlobalVariable.h" -#include "Constant.h" -#include "BasicBlock.h" -#include "Instruction.h" -#include "User.h" -#include "Type.h" - -std::string print_as_op( Value *v, bool print_ty ); -std::string print_cmp_type( CmpInst::CmpOp op); -std::string print_fcmp_type( FCmpInst::CmpOp op); \ No newline at end of file +#ifndef _SYSYF_IPRINTER_H_ +#define _SYSYF_IPRINTER_H_ + +#include "Value.h" +#include "Module.h" +#include "Function.h" +#include "GlobalVariable.h" +#include "Constant.h" +#include "BasicBlock.h" +#include "Instruction.h" +#include "User.h" +#include "Type.h" + +namespace SysYF +{ +namespace IR +{ +std::string print_as_op(Ptr v, bool print_ty ); +std::string print_cmp_type(CmpInst::CmpOp op); +std::string print_fcmp_type(FCmpInst::CmpOp op); + +} +} + +#endif diff --git a/include/SysYFIR/IRStmtBuilder.h b/include/SysYFIR/IRStmtBuilder.h index 69e99c9..10b1d8c 100644 --- a/include/SysYFIR/IRStmtBuilder.h +++ b/include/SysYFIR/IRStmtBuilder.h @@ -1,75 +1,84 @@ -#ifndef _SYSYF_IRSTMTBUILDER_H_ -#define _SYSYF_IRSTMTBUILDER_H_ - -#include "BasicBlock.h" -#include "Instruction.h" -#include "Value.h" - -class IRStmtBuilder { -private: - BasicBlock *BB_; - Module *m_; -public: - IRStmtBuilder(BasicBlock *bb, Module *m) : BB_(bb), m_(m) {}; - ~IRStmtBuilder() = default; - Module *get_module(){return m_;} - BasicBlock *get_insert_block() { return this->BB_; } - void set_insert_point(BasicBlock *bb) { this->BB_ = bb; } //在某个基本块中插入指令 - BinaryInst *create_iadd( Value *lhs, Value *rhs){ return BinaryInst::create_add( lhs, rhs, this->BB_, m_);} //创建加法指令(以及其他算术指令) - BinaryInst *create_isub( Value *lhs, Value *rhs){ return BinaryInst::create_sub( lhs, rhs, this->BB_, m_);} - BinaryInst *create_imul( Value *lhs, Value *rhs){ return BinaryInst::create_mul( lhs, rhs, this->BB_, m_);} - BinaryInst *create_isdiv( Value *lhs, Value *rhs){ return BinaryInst::create_sdiv( lhs, rhs, this->BB_, m_);} - BinaryInst *create_isrem( Value *lhs, Value *rhs){ return BinaryInst::create_srem( lhs, rhs, this->BB_, m_);} - - CmpInst *create_icmp_eq( Value *lhs, Value *rhs){ return CmpInst::create_cmp(CmpInst::EQ, lhs, rhs, this->BB_, m_); } - CmpInst *create_icmp_ne( Value *lhs, Value *rhs){ return CmpInst::create_cmp(CmpInst::NE, lhs, rhs, this->BB_, m_); } - CmpInst *create_icmp_gt( Value *lhs, Value *rhs){ return CmpInst::create_cmp(CmpInst::GT, lhs, rhs, this->BB_, m_); } - CmpInst *create_icmp_ge( Value *lhs, Value *rhs){ return CmpInst::create_cmp(CmpInst::GE, lhs, rhs, this->BB_, m_); } - CmpInst *create_icmp_lt( Value *lhs, Value *rhs){ return CmpInst::create_cmp(CmpInst::LT, lhs, rhs, this->BB_, m_); } - CmpInst *create_icmp_le( Value *lhs, Value *rhs){ return CmpInst::create_cmp(CmpInst::LE, lhs, rhs, this->BB_, m_); } - - BinaryInst *create_fadd( Value *lhs, Value *rhs){ return BinaryInst::create_fadd( lhs, rhs, this->BB_, m_);} - BinaryInst *create_fsub( Value *lhs, Value *rhs){ return BinaryInst::create_fsub( lhs, rhs, this->BB_, m_);} - BinaryInst *create_fmul( Value *lhs, Value *rhs){ return BinaryInst::create_fmul( lhs, rhs, this->BB_, m_);} - BinaryInst *create_fdiv( Value *lhs, Value *rhs){ return BinaryInst::create_fdiv( lhs, rhs, this->BB_, m_);} - - FCmpInst *create_fcmp_eq( Value *lhs, Value *rhs){ return FCmpInst::create_fcmp(FCmpInst::EQ, lhs, rhs, this->BB_, m_); } - FCmpInst *create_fcmp_ne( Value *lhs, Value *rhs){ return FCmpInst::create_fcmp(FCmpInst::NE, lhs, rhs, this->BB_, m_); } - FCmpInst *create_fcmp_gt( Value *lhs, Value *rhs){ return FCmpInst::create_fcmp(FCmpInst::GT, lhs, rhs, this->BB_, m_); } - FCmpInst *create_fcmp_ge( Value *lhs, Value *rhs){ return FCmpInst::create_fcmp(FCmpInst::GE, lhs, rhs, this->BB_, m_); } - FCmpInst *create_fcmp_lt( Value *lhs, Value *rhs){ return FCmpInst::create_fcmp(FCmpInst::LT, lhs, rhs, this->BB_, m_); } - FCmpInst *create_fcmp_le( Value *lhs, Value *rhs){ return FCmpInst::create_fcmp(FCmpInst::LE, lhs, rhs, this->BB_, m_); } - - CallInst *create_call(Value *func, std::vector args) - { -#ifdef DEBUG - assert( dynamic_cast(func) && "func must be Function * type"); -#endif - return CallInst::create(static_cast(func) ,args, this->BB_); - } - - BranchInst *create_br(BasicBlock *if_true){ return BranchInst::create_br(if_true, this->BB_); } - BranchInst *create_cond_br(Value *cond, BasicBlock *if_true, BasicBlock *if_false){ return BranchInst::create_cond_br(cond, if_true, if_false,this->BB_); } - - ReturnInst *create_ret(Value *val) { return ReturnInst::create_ret(val,this->BB_); } - ReturnInst *create_void_ret() { return ReturnInst::create_void_ret(this->BB_); } - - GetElementPtrInst *create_gep(Value *ptr, std::vector idxs) { return GetElementPtrInst::create_gep(ptr, idxs, this->BB_); } - - StoreInst *create_store(Value *val, Value *ptr) { return StoreInst::create_store(val, ptr, this->BB_ ); } - LoadInst * create_load(Type *ty, Value *ptr) { return LoadInst::create_load(ty, ptr, this->BB_); } - LoadInst * create_load(Value *ptr) - { -#ifdef DEBUG - assert( ptr->get_type()->is_pointer_type() && "ptr must be pointer type" ); -#endif - return LoadInst::create_load(ptr->get_type()->get_pointer_element_type(), ptr, this->BB_); - } - - AllocaInst *create_alloca(Type *ty) { return AllocaInst::create_alloca(ty, this->BB_); } - ZextInst *create_zext(Value *val, Type *ty) { return ZextInst::create_zext(val, ty, this->BB_); } - FpToSiInst *create_fptosi(Value *val, Type *ty) { return FpToSiInst::create_fptosi(val, ty, this->BB_); } - SiToFpInst *create_sitofp(Value *val, Type *ty) { return SiToFpInst::create_sitofp(val, ty, this->BB_); } -}; - -#endif // _SYSYF_IRSTMTBUILDER_H_ +#ifndef _SYSYF_IRSTMTBUILDER_H_ +#define _SYSYF_IRSTMTBUILDER_H_ + +#include "BasicBlock.h" +#include "Instruction.h" +#include "Value.h" + +namespace SysYF +{ +namespace IR +{ +class IRStmtBuilder { +private: + Ptr BB_; + Ptr m_; + explicit IRStmtBuilder(Ptr bb, Ptr m) : BB_(bb), m_(m) {}; + void init(Ptr bb, Ptr m) {} +public: + static Ptr create(Ptr bb, Ptr m) { RET_AFTER_INIT(IRStmtBuilder, bb, m); } + ~IRStmtBuilder() = default; + Ptr get_module(){return m_;} + Ptr get_insert_block() { return this->BB_; } + void set_insert_point(Ptr bb) { this->BB_ = bb; } //在某个基本块中插入指令 + Ptr create_iadd( Ptr lhs, Ptr rhs){ return BinaryInst::create_add( lhs, rhs, this->BB_, m_);} //创建加法指令(以及其他算术指令) + Ptr create_isub( Ptr lhs, Ptr rhs){ return BinaryInst::create_sub( lhs, rhs, this->BB_, m_);} + Ptr create_imul( Ptr lhs, Ptr rhs){ return BinaryInst::create_mul( lhs, rhs, this->BB_, m_);} + Ptr create_isdiv( Ptr lhs, Ptr rhs){ return BinaryInst::create_sdiv( lhs, rhs, this->BB_, m_);} + Ptr create_isrem( Ptr lhs, Ptr rhs){ return BinaryInst::create_srem( lhs, rhs, this->BB_, m_);} + + Ptr create_icmp_eq( Ptr lhs, Ptr rhs){ return CmpInst::create_cmp(CmpInst::EQ, lhs, rhs, this->BB_, m_); } + Ptr create_icmp_ne( Ptr lhs, Ptr rhs){ return CmpInst::create_cmp(CmpInst::NE, lhs, rhs, this->BB_, m_); } + Ptr create_icmp_gt( Ptr lhs, Ptr rhs){ return CmpInst::create_cmp(CmpInst::GT, lhs, rhs, this->BB_, m_); } + Ptr create_icmp_ge( Ptr lhs, Ptr rhs){ return CmpInst::create_cmp(CmpInst::GE, lhs, rhs, this->BB_, m_); } + Ptr create_icmp_lt( Ptr lhs, Ptr rhs){ return CmpInst::create_cmp(CmpInst::LT, lhs, rhs, this->BB_, m_); } + Ptr create_icmp_le( Ptr lhs, Ptr rhs){ return CmpInst::create_cmp(CmpInst::LE, lhs, rhs, this->BB_, m_); } + + Ptr create_fadd( Ptr lhs, Ptr rhs){ return BinaryInst::create_fadd( lhs, rhs, this->BB_, m_);} + Ptr create_fsub( Ptr lhs, Ptr rhs){ return BinaryInst::create_fsub( lhs, rhs, this->BB_, m_);} + Ptr create_fmul( Ptr lhs, Ptr rhs){ return BinaryInst::create_fmul( lhs, rhs, this->BB_, m_);} + Ptr create_fdiv( Ptr lhs, Ptr rhs){ return BinaryInst::create_fdiv( lhs, rhs, this->BB_, m_);} + + Ptr create_fcmp_eq( Ptr lhs, Ptr rhs){ return FCmpInst::create_fcmp(FCmpInst::EQ, lhs, rhs, this->BB_, m_); } + Ptr create_fcmp_ne( Ptr lhs, Ptr rhs){ return FCmpInst::create_fcmp(FCmpInst::NE, lhs, rhs, this->BB_, m_); } + Ptr create_fcmp_gt( Ptr lhs, Ptr rhs){ return FCmpInst::create_fcmp(FCmpInst::GT, lhs, rhs, this->BB_, m_); } + Ptr create_fcmp_ge( Ptr lhs, Ptr rhs){ return FCmpInst::create_fcmp(FCmpInst::GE, lhs, rhs, this->BB_, m_); } + Ptr create_fcmp_lt( Ptr lhs, Ptr rhs){ return FCmpInst::create_fcmp(FCmpInst::LT, lhs, rhs, this->BB_, m_); } + Ptr create_fcmp_le( Ptr lhs, Ptr rhs){ return FCmpInst::create_fcmp(FCmpInst::LE, lhs, rhs, this->BB_, m_); } + + Ptr create_call(Ptr func, PtrVec args) + { +#ifdef DEBUG + assert( dynamic_pointer_cast(func) && "func must be Ptr type"); +#endif + return CallInst::create(static_pointer_cast(func) ,args, this->BB_); + } + + Ptr create_br(Ptr if_true){ return BranchInst::create_br(if_true, this->BB_); } + Ptr create_cond_br(Ptr cond, Ptr if_true, Ptr if_false){ return BranchInst::create_cond_br(cond, if_true, if_false,this->BB_); } + + Ptr create_ret(Ptr val) { return ReturnInst::create_ret(val,this->BB_); } + Ptr create_void_ret() { return ReturnInst::create_void_ret(this->BB_); } + + Ptr create_gep(Ptr ptr, PtrVec idxs) { return GetElementPtrInst::create_gep(ptr, idxs, this->BB_); } + + Ptr create_store(Ptr val, Ptr ptr) { return StoreInst::create_store(val, ptr, this->BB_ ); } + Ptr create_load(Ptr ty, Ptr ptr) { return LoadInst::create_load(ty, ptr, this->BB_); } + Ptr create_load(Ptr ptr) + { +#ifdef DEBUG + assert( ptr->get_type()->is_pointer_type() && "ptr must be pointer type" ); +#endif + return LoadInst::create_load(ptr->get_type()->get_pointer_element_type(), ptr, this->BB_); + } + + Ptr create_alloca(Ptr ty) { return AllocaInst::create_alloca(ty, this->BB_); } + Ptr create_zext(Ptr val, Ptr ty) { return ZextInst::create_zext(val, ty, this->BB_); } + Ptr create_fptosi(Ptr val, Ptr ty) { return FpToSiInst::create_fptosi(val, ty, this->BB_); } + Ptr create_sitofp(Ptr val, Ptr ty) { return SiToFpInst::create_sitofp(val, ty, this->BB_); } +}; + +} +} + +#endif // _SYSYF_IRSTMTBUILDER_H_ diff --git a/include/SysYFIR/Instruction.h b/include/SysYFIR/Instruction.h index 8acceae..9b4a420 100644 --- a/include/SysYFIR/Instruction.h +++ b/include/SysYFIR/Instruction.h @@ -1,405 +1,435 @@ -#ifndef _SYSYF_INSTRUCTION_H_ -#define _SYSYF_INSTRUCTION_H_ - -#include "User.h" -#include "Type.h" -#include "Constant.h" -#include "BasicBlock.h" - -class BasicBlock; -class Function; - -class Instruction : public User -{ -public: - enum OpID - { - // Terminator Instructions - ret, - br, - // Standard binary operators - add, - sub, - mul, - sdiv, - srem, - // Float binaru opeartors - fadd, - fsub, - fmul, - fdiv, - // Memory operators - alloca, - load, - store, - // Other operators - cmp, - fcmp, - phi, - call, - getelementptr, - // Zero extend - zext, - // type cast bewteen float and singed integer - fptosi, - sitofp, - }; - // create instruction, auto insert to bb - // ty here is result type - Instruction(Type *ty, OpID id, unsigned num_ops, - BasicBlock *parent); - Instruction(Type *ty, OpID id, unsigned num_ops); - inline const BasicBlock *get_parent() const { return parent_; } - inline BasicBlock *get_parent() { return parent_; } - void set_parent(BasicBlock *parent) { this->parent_ = parent; } - // Return the function this instruction belongs to. - Function *get_function(); - Module *get_module(); - - OpID get_instr_type() { return op_id_; } - std::string get_instr_op_name() { - switch (op_id_) - { - case ret: return "ret"; break; - case br: return "br"; break; - case add: return "add"; break; - case sub: return "sub"; break; - case mul: return "mul"; break; - case sdiv: return "sdiv"; break; - case srem: return "srem"; break; - case fadd: return "fadd"; break; - case fsub: return "fsub"; break; - case fmul: return "fmul"; break; - case fdiv: return "fdiv"; break; - case alloca: return "alloca"; break; - case load: return "load"; break; - case store: return "store"; break; - case cmp: return "cmp"; break; - case fcmp: return "fcmp"; break; - case phi: return "phi"; break; - case call: return "call"; break; - case getelementptr: return "getelementptr"; break; - case zext: return "zext"; break; - case fptosi: return "fptosi"; break; - case sitofp: return "sitofp"; break; - - default: return ""; break; - } - } - - - - bool is_void() { return ((op_id_ == ret) || (op_id_ == br) || (op_id_ == store) || (op_id_ == call && this->get_type()->is_void_type())); } - - bool is_phi() { return op_id_ == phi; } - bool is_store() { return op_id_ == store; } - bool is_alloca() { return op_id_ == alloca; } - bool is_ret() { return op_id_ == ret; } - bool is_load() { return op_id_ == load; } - bool is_br() { return op_id_ == br; } - - bool is_add() { return op_id_ == add; } - bool is_sub() { return op_id_ == sub; } - bool is_mul() { return op_id_ == mul; } - bool is_div() { return op_id_ == sdiv; } - bool is_rem() { return op_id_ == srem; } - - bool is_fadd() { return op_id_ == fadd; } - bool is_fsub() { return op_id_ == fsub; } - bool is_fmul() { return op_id_ == fmul; } - bool is_fdiv() { return op_id_ == fdiv; } - - bool is_cmp() { return op_id_ == cmp; } - bool is_fcmp() { return op_id_ == fcmp; } - - bool is_call() { return op_id_ == call; } - bool is_gep() { return op_id_ == getelementptr; } - bool is_zext() { return op_id_ == zext; } - bool is_fptosi() { return op_id_ == fptosi; } - bool is_sitofp() { return op_id_ == sitofp; } - - bool isBinary() - { - return (is_add() || is_sub() || is_mul() || is_div() || is_rem() || - is_fadd() || is_fsub() || is_fmul() || is_fdiv()) && - (get_num_operand() == 2); - } - - bool isTerminator() { return is_br() || is_ret(); } - - void set_id(int id){id_ = id;} - int get_id() const{return id_;} - -private: - BasicBlock *parent_; - OpID op_id_; - int id_; - unsigned num_ops_; -}; - -class BinaryInst : public Instruction -{ -private: - BinaryInst(Type *ty, OpID id, Value *v1, Value *v2, - BasicBlock *bb); - -public: - static BinaryInst *create_add(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_sub(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_mul(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_sdiv(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_srem(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_fadd(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_fsub(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_fmul(Value *v1, Value *v2, BasicBlock *bb, Module *m); - static BinaryInst *create_fdiv(Value *v1, Value *v2, BasicBlock *bb, Module *m); - - virtual std::string print() override; - -private: - void assertValid(); -}; - -class CmpInst : public Instruction -{ -public: - enum CmpOp - { - EQ, // == - NE, // != - GT, // > - GE, // >= - LT, // < - LE // <= - }; - -private: - CmpInst(Type *ty, CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb); - -public: - static CmpInst *create_cmp(CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb, Module *m); - - CmpOp get_cmp_op() { return cmp_op_; } - - virtual std::string print() override; - -private: - CmpOp cmp_op_; - - void assertValid(); -}; - -class FCmpInst : public Instruction -{ -public: - enum CmpOp - { - EQ, // == - NE, // != - GT, // > - GE, // >= - LT, // < - LE // <= - }; - -private: - FCmpInst(Type *ty, CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb); - -public: - static FCmpInst *create_fcmp(CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb, Module *m); - - CmpOp get_cmp_op() { return cmp_op_; } - - virtual std::string print() override; - -private: - CmpOp cmp_op_; - - void assertValid(); -}; - -class CallInst : public Instruction -{ -protected: - CallInst(Function *func, std::vector args, BasicBlock *bb); - CallInst(Type *ret_ty, std::vector args, BasicBlock *bb); - -public: - static CallInst *create(Function *func, std::vector args, BasicBlock *bb); - FunctionType *get_function_type() const; - - virtual std::string print() override; - -}; - -class BranchInst : public Instruction -{ -private: - BranchInst(Value *cond, BasicBlock *if_true, BasicBlock *if_false, - BasicBlock *bb); - BranchInst(Value *cond, BasicBlock *bb); - BranchInst(BasicBlock *if_true, BasicBlock *bb); - BranchInst(BasicBlock *bb); - -public: - static BranchInst *create_cond_br(Value *cond, BasicBlock *if_true, BasicBlock *if_false, - BasicBlock *bb); - static BranchInst *create_br(BasicBlock *if_true, BasicBlock *bb); - - bool is_cond_br() const; - - virtual std::string print() override; - -}; - -class ReturnInst : public Instruction -{ -private: - ReturnInst(Value *val, BasicBlock *bb); - ReturnInst(BasicBlock *bb); - -public: - static ReturnInst *create_ret(Value *val, BasicBlock *bb); - static ReturnInst *create_void_ret(BasicBlock *bb); - bool is_void_ret() const; - - virtual std::string print() override; - -}; - -class GetElementPtrInst : public Instruction -{ -private: - GetElementPtrInst(Value *ptr, std::vector idxs, BasicBlock *bb); - -public: - static Type *get_element_type(Value *ptr, std::vector idxs); - static GetElementPtrInst *create_gep(Value *ptr, std::vector idxs, BasicBlock *bb); - Type *get_element_type() const; - - virtual std::string print() override; - -private: - Type *element_ty_; -}; - -class StoreInst : public Instruction -{ -private: - StoreInst(Value *val, Value *ptr, BasicBlock *bb); - -public: - static StoreInst *create_store(Value *val, Value *ptr, BasicBlock *bb); - - Value *get_rval() { return this->get_operand(0); } - Value *get_lval() { return this->get_operand(1); } - - virtual std::string print() override; - -}; - -class LoadInst : public Instruction -{ -private: - LoadInst(Type *ty, Value *ptr, BasicBlock *bb); - -public: - static LoadInst *create_load(Type *ty, Value *ptr, BasicBlock *bb); - Value *get_lval() { return this->get_operand(0); } - - Type *get_load_type() const; - - virtual std::string print() override; - -}; - -class AllocaInst : public Instruction -{ -private: - AllocaInst(Type *ty, BasicBlock *bb); - -public: - static AllocaInst *create_alloca(Type *ty, BasicBlock *bb); - - Type *get_alloca_type() const; - - virtual std::string print() override; - -private: - Type *alloca_ty_; -}; - -class ZextInst : public Instruction -{ -private: - ZextInst(OpID op, Value *val, Type *ty, BasicBlock *bb); - -public: - static ZextInst *create_zext(Value *val, Type *ty, BasicBlock *bb); - - Type *get_dest_type() const; - - virtual std::string print() override; - -private: - Type *dest_ty_; -}; - -class FpToSiInst : public Instruction -{ -private: - FpToSiInst(OpID op, Value *val, Type *ty, BasicBlock *bb); - -public: - static FpToSiInst *create_fptosi(Value *val, Type *ty, BasicBlock *bb); - - Type *get_dest_type() const; - - virtual std::string print() override; - -private: - Type *dest_ty_; -}; - -class SiToFpInst : public Instruction -{ -private: - SiToFpInst(OpID op, Value *val, Type *ty, BasicBlock *bb); - -public: - static SiToFpInst *create_sitofp(Value *val, Type *ty, BasicBlock *bb); - - Type *get_dest_type() const; - - virtual std::string print() override; - -private: - Type *dest_ty_; -}; - -class PhiInst : public Instruction -{ -private: - PhiInst(OpID op, std::vector vals, std::vector val_bbs, Type *ty, BasicBlock *bb); - -public: - static PhiInst *create_phi(Type *ty, BasicBlock *bb); - Value *get_lval() { return l_val_; } - void set_lval(Value *l_val) { l_val_ = l_val; } - void add_phi_pair_operand(Value *val, Value *pre_bb) - { - this->add_operand(val); - this->add_operand(pre_bb); - } - virtual std::string print() override; - -private: - Value *l_val_; - -}; - -#endif // _SYSYF_INSTRUCTION_H_ +#ifndef _SYSYF_INSTRUCTION_H_ +#define _SYSYF_INSTRUCTION_H_ + +#include "User.h" +#include "Type.h" +#include "Constant.h" +#include "BasicBlock.h" + +namespace SysYF +{ +namespace IR +{ +class BasicBlock; +class Function; +class Instruction; + +class Instruction : public User +{ +public: + enum OpID + { + // Terminator Instructions + ret, + br, + // Standard binary operators + add, + sub, + mul, + sdiv, + srem, + // Float binaru opeartors + fadd, + fsub, + fmul, + fdiv, + // Memory operators + alloca, + load, + store, + // Other operators + cmp, + fcmp, + phi, + call, + getelementptr, + // Zero extend + zext, + // type cast bewteen float and singed integer + fptosi, + sitofp, + }; + inline const Ptr get_parent() const { return parent_; } + inline Ptr get_parent() { return parent_; } + void set_parent(Ptr parent) { this->parent_ = parent; } + // Return the function this instruction belongs to. + Ptr get_function(); + Ptr get_module(); + + OpID get_instr_type() { return op_id_; } + std::string get_instr_op_name() { + switch (op_id_) + { + case ret: return "ret"; break; + case br: return "br"; break; + case add: return "add"; break; + case sub: return "sub"; break; + case mul: return "mul"; break; + case sdiv: return "sdiv"; break; + case srem: return "srem"; break; + case fadd: return "fadd"; break; + case fsub: return "fsub"; break; + case fmul: return "fmul"; break; + case fdiv: return "fdiv"; break; + case alloca: return "alloca"; break; + case load: return "load"; break; + case store: return "store"; break; + case cmp: return "cmp"; break; + case fcmp: return "fcmp"; break; + case phi: return "phi"; break; + case call: return "call"; break; + case getelementptr: return "getelementptr"; break; + case zext: return "zext"; break; + case fptosi: return "fptosi"; break; + case sitofp: return "sitofp"; break; + + default: return ""; break; + } + } + + + + bool is_void() { return ((op_id_ == ret) || (op_id_ == br) || (op_id_ == store) || (op_id_ == call && this->get_type()->is_void_type())); } + + bool is_phi() { return op_id_ == phi; } + bool is_store() { return op_id_ == store; } + bool is_alloca() { return op_id_ == alloca; } + bool is_ret() { return op_id_ == ret; } + bool is_load() { return op_id_ == load; } + bool is_br() { return op_id_ == br; } + + bool is_add() { return op_id_ == add; } + bool is_sub() { return op_id_ == sub; } + bool is_mul() { return op_id_ == mul; } + bool is_div() { return op_id_ == sdiv; } + bool is_rem() { return op_id_ == srem; } + + bool is_fadd() { return op_id_ == fadd; } + bool is_fsub() { return op_id_ == fsub; } + bool is_fmul() { return op_id_ == fmul; } + bool is_fdiv() { return op_id_ == fdiv; } + + bool is_cmp() { return op_id_ == cmp; } + bool is_fcmp() { return op_id_ == fcmp; } + + bool is_call() { return op_id_ == call; } + bool is_gep() { return op_id_ == getelementptr; } + bool is_zext() { return op_id_ == zext; } + bool is_fptosi() { return op_id_ == fptosi; } + bool is_sitofp() { return op_id_ == sitofp; } + + bool isBinary() + { + return (is_add() || is_sub() || is_mul() || is_div() || is_rem() || + is_fadd() || is_fsub() || is_fmul() || is_fdiv()) && + (get_num_operand() == 2); + } + + bool isTerminator() { return is_br() || is_ret(); } + + void set_id(int id){id_ = id;} + int get_id() const{return id_;} + +private: + OpID op_id_; + int id_; + unsigned num_ops_; + Ptr parent_; + // must be called after Instruction() in any derived class + void insert_to_bb(); + +protected: + // create instruction, but not insert to bb (insert to bb in method create in the derived class) + // ty here is result type + explicit Instruction(Ptr ty, OpID id, unsigned num_ops, Ptr parent = nullptr); + void init(Ptr ty, OpID id, unsigned num_ops, Ptr parent = nullptr); +}; + +class BinaryInst : public Instruction +{ +private: + explicit BinaryInst(Ptr ty, OpID id, Ptr v1, Ptr v2, + Ptr bb); + +public: + static Ptr create_add(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_sub(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_mul(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_sdiv(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_srem(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_fadd(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_fsub(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_fmul(Ptr v1, Ptr v2, Ptr bb, Ptr m); + static Ptr create_fdiv(Ptr v1, Ptr v2, Ptr bb, Ptr m); + + virtual std::string print() override; + +private: + void init(Ptr ty, OpID id, Ptr v1, Ptr v2, Ptr bb); + void assertValid() {} +}; + +class CmpInst : public Instruction +{ +public: + enum CmpOp + { + EQ, // == + NE, // != + GT, // > + GE, // >= + LT, // < + LE // <= + }; + +private: + explicit CmpInst(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb); + +public: + static Ptr create_cmp(CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb, Ptr m); + + CmpOp get_cmp_op() { return cmp_op_; } + + virtual std::string print() override; + +private: + CmpOp cmp_op_; + void init(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, Ptr bb); + void assertValid() {} +}; + +class FCmpInst : public Instruction +{ +public: + enum CmpOp + { + EQ, // == + NE, // != + GT, // > + GE, // >= + LT, // < + LE // <= + }; + +private: + explicit FCmpInst(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb); + void init(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, Ptr bb); + +public: + static Ptr create_fcmp(CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb, Ptr m); + + CmpOp get_cmp_op() { return cmp_op_; } + + virtual std::string print() override; + +private: + CmpOp cmp_op_; + + void assertValid() {} +}; + +class CallInst : public Instruction +{ +private: + explicit CallInst(Ptr func, PtrVec args, Ptr bb); + void init(Ptr func, PtrVec args, Ptr bb); + explicit CallInst(Ptr ret_ty, PtrVec args, Ptr bb); + void init(Ptr ret_ty, PtrVec args, Ptr bb); + +public: + static Ptr create(Ptr func, PtrVec args, Ptr bb); + Ptr get_function_type() const; + + virtual std::string print() override; + +}; + +class BranchInst : public Instruction +{ +private: + explicit BranchInst(Ptr cond, Ptr if_true, Ptr if_false, + Ptr bb); + void init(Ptr cond, Ptr if_true, Ptr if_false, + Ptr bb); + explicit BranchInst(Ptr cond, Ptr bb); + void init(Ptr cond, Ptr bb); + explicit BranchInst(Ptr if_true, Ptr bb); + void init(Ptr if_true, Ptr bb); + explicit BranchInst(Ptr bb); + void init(Ptr bb); + +public: + static Ptr create_cond_br(Ptr cond, Ptr if_true, Ptr if_false, + Ptr bb); + static Ptr create_br(Ptr if_true, Ptr bb); + + bool is_cond_br() const; + + virtual std::string print() override; + +}; + +class ReturnInst : public Instruction +{ +private: + explicit ReturnInst(Ptr val, Ptr bb); + void init(Ptr val, Ptr bb); + explicit ReturnInst(Ptr bb); + void init(Ptr bb); + +public: + static Ptr create_ret(Ptr val, Ptr bb); + static Ptr create_void_ret(Ptr bb); + bool is_void_ret() const; + + virtual std::string print() override; + +}; + +class GetElementPtrInst : public Instruction +{ +private: + explicit GetElementPtrInst(Ptr ptr, PtrVec idxs, Ptr bb); + void init(Ptr ptr, PtrVec idxs, Ptr bb); + +public: + static Ptr get_element_type(Ptr ptr, PtrVec idxs); + static Ptr create_gep(Ptr ptr, PtrVec idxs, Ptr bb); + Ptr get_element_type() const; + + virtual std::string print() override; + +private: + Ptr element_ty_; +}; + +class StoreInst : public Instruction +{ +private: + explicit StoreInst(Ptr val, Ptr ptr, Ptr bb); + void init(Ptr val, Ptr ptr, Ptr bb); + +public: + static Ptr create_store(Ptr val, Ptr ptr, Ptr bb); + + Ptr get_rval() { return this->get_operand(0); } + Ptr get_lval() { return this->get_operand(1); } + + virtual std::string print() override; + +}; + +class LoadInst : public Instruction +{ +private: + explicit LoadInst(Ptr ty, Ptr ptr, Ptr bb); + void init(Ptr ty, Ptr ptr, Ptr bb); + +public: + static Ptr create_load(Ptr ty, Ptr ptr, Ptr bb); + Ptr get_lval() { return this->get_operand(0); } + + Ptr get_load_type() const; + + virtual std::string print() override; + +}; + +class AllocaInst : public Instruction +{ +private: + explicit AllocaInst(Ptr ty, Ptr bb); + void init(Ptr ty, Ptr bb); + +public: + static Ptr create_alloca(Ptr ty, Ptr bb); + + Ptr get_alloca_type() const; + + virtual std::string print() override; + +private: + Ptr alloca_ty_; +}; + +class ZextInst : public Instruction +{ +private: + explicit ZextInst(OpID op, Ptr val, Ptr ty, Ptr bb); + void init(OpID op, Ptr val, Ptr ty, Ptr bb); + +public: + static Ptr create_zext(Ptr val, Ptr ty, Ptr bb); + + Ptr get_dest_type() const; + + virtual std::string print() override; + +private: + Ptr dest_ty_; +}; + +class FpToSiInst : public Instruction +{ +private: + explicit FpToSiInst(OpID op, Ptr val, Ptr ty, Ptr bb); + void init(OpID op, Ptr val, Ptr ty, Ptr bb); + +public: + static Ptr create_fptosi(Ptr val, Ptr ty, Ptr bb); + + Ptr get_dest_type() const; + + virtual std::string print() override; + +private: + Ptr dest_ty_; +}; + +class SiToFpInst : public Instruction +{ +private: + explicit SiToFpInst(OpID op, Ptr val, Ptr ty, Ptr bb); + void init(OpID op, Ptr val, Ptr ty, Ptr bb); + +public: + static Ptr create_sitofp(Ptr val, Ptr ty, Ptr bb); + + Ptr get_dest_type() const; + + virtual std::string print() override; + +private: + Ptr dest_ty_; +}; + +class PhiInst : public Instruction +{ +private: + explicit PhiInst(OpID op, PtrVec vals, PtrVec val_bbs, Ptr ty, Ptr bb); + void init(OpID op, PtrVec vals, PtrVec val_bbs, Ptr ty, Ptr bb); + +public: + static Ptr create_phi(Ptr ty, Ptr bb); + Ptr get_lval() { return l_val_; } + void set_lval(Ptr l_val) { l_val_ = l_val; } + void add_phi_pair_operand(Ptr val, Ptr pre_bb) + { + this->add_operand(val); + this->add_operand(pre_bb); + } + virtual std::string print() override; + +private: + Ptr l_val_; + +}; + +} +} + +#endif // _SYSYF_INSTRUCTION_H_ diff --git a/include/SysYFIR/Module.h b/include/SysYFIR/Module.h index d5f7f18..831b29c 100644 --- a/include/SysYFIR/Module.h +++ b/include/SysYFIR/Module.h @@ -1,61 +1,73 @@ -#ifndef _SYSYF_MODULE_H_ -#define _SYSYF_MODULE_H_ - -#include -#include -#include - -#include "Type.h" -#include "GlobalVariable.h" -#include "Value.h" -#include "Function.h" - -class GlobalVariable; - -class Module -{ -public: - explicit Module(std::string name); - ~Module(); - - Type *get_void_type(); - Type *get_label_type(); - IntegerType *get_int1_type(); - IntegerType *get_int32_type(); - FloatType *get_float_type(); - PointerType *get_int32_ptr_type(); - PointerType *get_float_ptr_type(); - - PointerType *get_pointer_type(Type *contained); - ArrayType *get_array_type(Type *contained, unsigned num_elements); - - void add_function(Function *f); - std::list &get_functions(); - void add_global_variable(GlobalVariable* g); - std::list &get_global_variable(); - std::string get_instr_op_name( Instruction::OpID instr ) { return instr_id2string_[instr]; } - void set_print_name(); - void set_file_name(std::string name){source_file_name_ = name;} - std::string get_file_name(){return source_file_name_;} - virtual std::string print(); -private: - std::list global_list_; // The Global Variables in the module - std::list function_list_; // The Functions in the module - std::map value_sym_; // Symbol table for values - std::map instr_id2string_; // Instruction from opid to string - - std::string module_name_; // Human readable identifier for the module - std::string source_file_name_; // Original source file name for module, for test and debug - -private: - IntegerType *int1_ty_; - IntegerType *int32_ty_; - FloatType *float32_ty_; - Type *label_ty_; - Type *void_ty_; - - std::map pointer_map_; - std::map, ArrayType *> array_map_; -}; - +#ifndef _SYSYF_MODULE_H_ +#define _SYSYF_MODULE_H_ + +#include +#include +#include + +#include "internal_types.h" +#include "internal_macros.h" +#include "Type.h" +#include "GlobalVariable.h" +#include "Value.h" +#include "Function.h" + +namespace SysYF +{ +namespace IR +{ +class GlobalVariable; +class Module; + +class Module : public std::enable_shared_from_this +{ +public: + static Ptr create(std::string name); + ~Module() = default; + + Ptr get_void_type(); + Ptr get_label_type(); + Ptr get_int1_type(); + Ptr get_int32_type(); + Ptr get_float_type(); + Ptr get_int32_ptr_type(); + Ptr get_float_ptr_type(); + + Ptr get_pointer_type(Ptr contained); + Ptr get_array_type(Ptr contained, unsigned num_elements); + + void add_function(Ptr f); + PtrList &get_functions(); + void add_global_variable(Ptr g); + PtrList &get_global_variable(); + std::string get_instr_op_name( Instruction::OpID instr ) { return instr_id2string_[instr]; } + void set_print_name(); + void set_file_name(std::string name){source_file_name_ = name;} + std::string get_file_name(){return source_file_name_;} + virtual std::string print(); +private: + explicit Module(std::string name); + void init(std::string name); + PtrList global_list_; // The Global Variables in the module + PtrList function_list_; // The Functions in the module + std::map> value_sym_; // Symbol table for values + std::map instr_id2string_; // Instruction from opid to string + + std::string module_name_; // Human readable identifier for the module + std::string source_file_name_; // Original source file name for module, for test and debug + +private: + Ptr int1_ty_; + Ptr int32_ty_; + Ptr float32_ty_; + Ptr label_ty_; + Ptr void_ty_; + + std::map , Ptr> pointer_map_; + std::map ,int>, Ptr > array_map_; +}; + +} +} + #endif // _SYSYF_MODULE_H_ \ No newline at end of file diff --git a/include/SysYFIR/Type.h b/include/SysYFIR/Type.h index f8554f5..59b7e3f 100644 --- a/include/SysYFIR/Type.h +++ b/include/SysYFIR/Type.h @@ -1,146 +1,162 @@ -#ifndef _SYSYF_TYPE_H_ -#define _SYSYF_TYPE_H_ - -#include -#include - -class Module; -class IntegerType; -class FloatType; -class FunctionType; -class ArrayType; -class PointerType; - -class Type -{ -public: - enum TypeID { - VoidTyID, // Void - LabelTyID, // Labels, e.g., BasicBlock - IntegerTyID, // Integers, include 32 bits and 1 bit - FloatTyID, // Floats, only 32 bits - FunctionTyID, // Functions - ArrayTyID, // Arrays - PointerTyID, // Pointer - }; - - explicit Type(TypeID tid, Module *m); - ~Type() = default; - - TypeID get_type_id() const { return tid_; } - - bool is_void_type() const { return get_type_id() == VoidTyID; } - - bool is_label_type() const { return get_type_id() == LabelTyID; } - - bool is_integer_type() const { return get_type_id() == IntegerTyID; } - - bool is_float_type() const { return get_type_id() == FloatTyID; } - - bool is_function_type() const { return get_type_id() == FunctionTyID; } - - bool is_array_type() const { return get_type_id() == ArrayTyID; } - - bool is_pointer_type() const { return get_type_id() == PointerTyID; } - - static bool is_eq_type(Type *ty1, Type *ty2); - - static Type *get_void_type(Module *m); - - static Type *get_label_type(Module *m); - - static IntegerType *get_int1_type(Module *m); - - static IntegerType *get_int32_type(Module *m); - - static FloatType *get_float_type(Module *m); - - static PointerType *get_int32_ptr_type(Module *m); - - static PointerType *get_float_ptr_type(Module *m); - - static PointerType *get_pointer_type(Type *contained); - - static ArrayType *get_array_type(Type *contained, unsigned num_elements); - - Type *get_pointer_element_type(); - - Type *get_array_element_type(); - - int get_size(); - - Module *get_module(); - - std::string print(); - -private: - TypeID tid_; - Module *m_; -}; - -class IntegerType : public Type { -public: - explicit IntegerType(unsigned num_bits ,Module *m); - - static IntegerType *get(unsigned num_bits, Module *m ); - - unsigned get_num_bits(); -private: - unsigned num_bits_; -}; - -class FloatType : public Type { -public: - FloatType(Module *m); - static FloatType *get(Module *m ); -}; - -class FunctionType : public Type { -public: - FunctionType(Type *result, std::vector params); - - static bool is_valid_return_type(Type *ty); - static bool is_valid_argument_type(Type *ty); - - static FunctionType *get(Type *result, - std::vector params); - - unsigned get_num_of_args() const; - - Type *get_param_type(unsigned i) const; - std::vector::iterator param_begin() { return args_.begin(); } - std::vector::iterator param_end() { return args_.end(); } - Type *get_return_type() const; -private: - Type *result_; - std::vector args_; -}; - -class ArrayType : public Type { -public: - ArrayType(Type *contained, unsigned num_elements); - - static bool is_valid_element_type(Type *ty); - - static ArrayType *get(Type *contained, unsigned num_elements); - - Type *get_element_type() const { return contained_; } - unsigned get_num_of_elements() const { return num_elements_; } - -private: - Type *contained_; // The element type of the array. - unsigned num_elements_; // Number of elements in the array. -}; - -class PointerType : public Type { -public: - PointerType(Type *contained); - Type *get_element_type() const { return contained_; } - - static PointerType *get(Type *contained); - -private: - Type *contained_; // The element type of the ptr. -}; - +#ifndef _SYSYF_TYPE_H_ +#define _SYSYF_TYPE_H_ + +#include +#include + +#include "internal_types.h" + +namespace SysYF +{ +namespace IR +{ +class Module; +class IntegerType; +class FloatType; +class FunctionType; +class ArrayType; +class PointerType; +class Type; + +class Type : public std::enable_shared_from_this +{ +public: + enum TypeID { + VoidTyID, // Void + LabelTyID, // Labels, e.g., BasicBlock + IntegerTyID, // Integers, include 32 bits and 1 bit + FloatTyID, // Floats, only 32 bits + FunctionTyID, // Functions + ArrayTyID, // Arrays + PointerTyID, // Pointer + }; + + static Ptr create(TypeID tid, Ptr m); + + ~Type() = default; + + TypeID get_type_id() const { return tid_; } + + bool is_void_type() const { return get_type_id() == VoidTyID; } + + bool is_label_type() const { return get_type_id() == LabelTyID; } + + bool is_integer_type() const { return get_type_id() == IntegerTyID; } + + bool is_float_type() const { return get_type_id() == FloatTyID; } + + bool is_function_type() const { return get_type_id() == FunctionTyID; } + + bool is_array_type() const { return get_type_id() == ArrayTyID; } + + bool is_pointer_type() const { return get_type_id() == PointerTyID; } + + static bool is_eq_type(Ptr ty1, Ptr ty2); + + static Ptr get_void_type(Ptr m); + + static Ptr get_label_type(Ptr m); + + static Ptr get_int1_type(Ptr m); + + static Ptr get_int32_type(Ptr m); + + static Ptr get_float_type(Ptr m); + + static Ptr get_int32_ptr_type(Ptr m); + + static Ptr get_float_ptr_type(Ptr m); + + static Ptr get_pointer_type(Ptr contained); + + static Ptr get_array_type(Ptr contained, unsigned num_elements); + + Ptr get_pointer_element_type(); + + Ptr get_array_element_type(); + + int get_size(); + + Ptr get_module(); + + std::string print(); + +protected: + explicit Type(TypeID tid, Ptr m); + void init(TypeID tid, Ptr m) {} + +private: + TypeID tid_; + Ptr m_; +}; + +class IntegerType : public Type { +public: + static Ptr create(unsigned num_bits, Ptr m ); + + unsigned get_num_bits(); +private: + explicit IntegerType(unsigned num_bits ,Ptr m); + void init(unsigned num_bits ,Ptr m) { Type::init(IntegerTyID, m); } + unsigned num_bits_; +}; + +class FloatType : public Type { +public: + static Ptr create(Ptr m); +private: + explicit FloatType(Ptr m); + void init(Ptr m) { Type::init(FloatTyID, m); } +}; + +class FunctionType : public Type { +public: + static Ptr create(Ptr result, PtrVec params); + static bool is_valid_return_type(Ptr ty); + static bool is_valid_argument_type(Ptr ty); + + unsigned get_num_of_args() const; + + Ptr get_param_type(unsigned i) const; + PtrVec::iterator param_begin() { return args_.begin(); } + PtrVec::iterator param_end() { return args_.end(); } + Ptr get_return_type() const; +private: + explicit FunctionType(Ptr result, PtrVec params); + void init(Ptr result, PtrVec params) { Type::init(FunctionTyID, nullptr); } + Ptr result_; + PtrVec args_; +}; + +class ArrayType : public Type { +public: + static bool is_valid_element_type(Ptr ty); + + static Ptr get(Ptr contained, unsigned num_elements); + static Ptr create(Ptr contained, unsigned num_elements); + + Ptr get_element_type() const { return contained_; } + unsigned get_num_of_elements() const { return num_elements_; } + +private: + explicit ArrayType(Ptr contained, unsigned num_elements); + void init(Ptr contained, unsigned num_elements) { Type::init(ArrayTyID, nullptr); } + Ptr contained_; // The element type of the array. + unsigned num_elements_; // Number of elements in the array. +}; + +class PointerType : public Type { +public: + Ptr get_element_type() const { return contained_; } + static Ptr get(Ptr contained); + static Ptr create(Ptr contained); + +private: + explicit PointerType(Ptr contained); + void init(Ptr contained) { Type::init(PointerTyID, nullptr); } + Ptr contained_; // The element type of the ptr. +}; + +} +} #endif // _SYSYF_TYPE_H_ \ No newline at end of file diff --git a/include/SysYFIR/User.h b/include/SysYFIR/User.h index 6a997ef..88c003e 100644 --- a/include/SysYFIR/User.h +++ b/include/SysYFIR/User.h @@ -1,34 +1,41 @@ -#ifndef _SYSYF_USER_H_ -#define _SYSYF_USER_H_ - -#include "Value.h" -#include -// #include - -class User : public Value -{ -public: - User(Type *ty, const std::string &name = "", unsigned num_ops = 0); - ~User() = default; - - std::vector& get_operands(); - - // start from 0 - Value *get_operand(unsigned i) const; - - // start from 0 - void set_operand(unsigned i, Value *v); - void add_operand( Value *v); - - unsigned get_num_operand() const; - - void remove_use_of_ops(); - void remove_operands(int index1,int index2); - -private: - // std::unique_ptr< std::list > operands_; // operands of this value - std::vector operands_; // operands of this value - unsigned num_ops_; -}; - -#endif // _SYSYF_USER_H_ +#ifndef _SYSYF_USER_H_ +#define _SYSYF_USER_H_ + +#include "Value.h" +#include +// #include + +namespace SysYF +{ +namespace IR +{ +class User : public Value +{ +public: + ~User() = default; + + PtrVec& get_operands(); + + // start from 0 + Ptr get_operand(unsigned i) const; + + // start from 0 + void set_operand(unsigned i, Ptr v); + void add_operand(Ptr v); + + unsigned get_num_operand() const; + + void remove_use_of_ops(); + void remove_operands(int index1,int index2); + +protected: + explicit User(Ptr ty, const std::string &name = "", unsigned num_ops = 0); + +private: + PtrVec operands_; // operands of this value + unsigned num_ops_; +}; + +} +} +#endif // _SYSYF_USER_H_ diff --git a/include/SysYFIR/Value.h b/include/SysYFIR/Value.h index 79e34a3..736c344 100644 --- a/include/SysYFIR/Value.h +++ b/include/SysYFIR/Value.h @@ -1,50 +1,63 @@ -#ifndef _SYSYF_VALUE_H_ -#define _SYSYF_VALUE_H_ - -#include -#include -#include - -class Type; -class Value; - -struct Use -{ - Value *val_; - unsigned arg_no_; // the no. of operand, e.g., func(a, b), a is 0, b is 1 - Use(Value *val, unsigned no) : val_(val), arg_no_(no) {} -}; - -class Value -{ -public: - explicit Value(Type *ty, const std::string &name = ""); - ~Value() = default; - - Type *get_type() const { return type_; } - - std::list &get_use_list() { return use_list_; } - - void add_use(Value *val, unsigned arg_no = 0); - - bool set_name(std::string name) { - if (name_ == "") - { - name_=name; - return true; - } - return false; - } - std::string get_name() const; - - void replace_all_use_with(Value *new_val); - void remove_use(Value *val); - - virtual std::string print() = 0; -private: - Type *type_; - std::list use_list_; // who use this value - std::string name_; // should we put name field here ? -}; - -#endif // _SYSYF_VALUE_H_ +#ifndef _SYSYF_VALUE_H_ +#define _SYSYF_VALUE_H_ + +#include +#include +#include +#include + +#include "internal_types.h" + +namespace SysYF +{ +namespace IR +{ + +class Type; +class Value; + +struct Use +{ + Ptr val_; + unsigned arg_no_; // the no. of operand, e.g., func(a, b), a is 0, b is 1 + Use(Ptr val, unsigned no) : val_(val), arg_no_(no) {} +}; + +class Value : public std::enable_shared_from_this +{ +public: + ~Value() = default; + + Ptr get_type() const { return type_; } + + std::list &get_use_list() { return use_list_; } + + void add_use(Ptr val, unsigned arg_no = 0); + + bool set_name(std::string name) { + if (name_ == "") + { + name_=name; + return true; + } + return false; + } + std::string get_name() const; + + void replace_all_use_with(Ptr new_val); + void remove_use(Ptr val); + + virtual std::string print() = 0; + +protected: + explicit Value(Ptr ty, const std::string &name = ""); + +private: + Ptr type_; + std::list use_list_; // who use this value + std::string name_; // should we put name field here ? +}; + +} +} +#endif // _SYSYF_VALUE_H_ diff --git a/include/SysYFIRBuilder/IRBuilder.h b/include/SysYFIRBuilder/IRBuilder.h index 67afb3a..bb59091 100644 --- a/include/SysYFIRBuilder/IRBuilder.h +++ b/include/SysYFIRBuilder/IRBuilder.h @@ -1,217 +1,226 @@ -#ifndef _SYSYF_IR_BUILDER_H_ -#define _SYSYF_IR_BUILDER_H_ -#include "BasicBlock.h" -#include "Constant.h" -#include "Function.h" -#include "IRStmtBuilder.h" -#include "Module.h" -#include "Type.h" -#include -#include "SyntaxTree.h" - - -class Scope { -public: - // enter a new scope - void enter() { - name2var.push_back({}); - name2func.push_back({}); - } - - // exit a scope - void exit() { - name2var.pop_back(); - name2func.pop_back(); - } - - bool in_global() { - return name2var.size() == 1; - } - - // push a name to scope - // return true if successful - // return false if this name already exits - // but func name could be same with variable name - bool push(std::string name, Value *val) { - bool result; - if (dynamic_cast(val)){ - result = (name2func[name2func.size() - 1].insert({name, val})).second; - } - else{ - result = (name2var[name2var.size() - 1].insert({name, val})).second; - } - return result; - } - - Value* find(std::string name, bool isfunc) { - if (isfunc){ - for (auto s = name2func.rbegin(); s!= name2func.rend();s++) { - auto iter = s->find(name); - if (iter != s->end()) { - return iter->second; - } - } - } - else{ - for (auto s = name2var.rbegin(); s!= name2var.rend();s++) { - auto iter = s->find(name); - if (iter != s->end()) { - return iter->second; - } - } - } - return nullptr; - } - - -private: - std::vector> name2var; - std::vector> name2func; -}; - -class IRBuilder: public SyntaxTree::Visitor -{ -private: - virtual void visit(SyntaxTree::InitVal &) override final; - virtual void visit(SyntaxTree::Assembly &) override final; - virtual void visit(SyntaxTree::FuncDef &) override final; - virtual void visit(SyntaxTree::VarDef &) override final; - virtual void visit(SyntaxTree::AssignStmt &) override final; - virtual void visit(SyntaxTree::ReturnStmt &) override final; - virtual void visit(SyntaxTree::BlockStmt &) override final; - virtual void visit(SyntaxTree::EmptyStmt &) override final; - virtual void visit(SyntaxTree::ExprStmt &) override final; - virtual void visit(SyntaxTree::UnaryCondExpr &) override final; - virtual void visit(SyntaxTree::BinaryCondExpr &) override final; - virtual void visit(SyntaxTree::BinaryExpr &) override final; - virtual void visit(SyntaxTree::UnaryExpr &) override final; - virtual void visit(SyntaxTree::LVal &) override final; - virtual void visit(SyntaxTree::Literal &) override final; - virtual void visit(SyntaxTree::FuncCallStmt &) override final; - virtual void visit(SyntaxTree::FuncParam &) override final; - virtual void visit(SyntaxTree::FuncFParamList &) override final; - virtual void visit(SyntaxTree::IfStmt &) override final; - virtual void visit(SyntaxTree::WhileStmt &) override final; - virtual void visit(SyntaxTree::BreakStmt &) override final; - virtual void visit(SyntaxTree::ContinueStmt &) override final; - - IRStmtBuilder *builder; - Scope scope; - std::unique_ptr module; -public: - IRBuilder(){ - module = std::unique_ptr(new Module("SysYF code")); - builder = new IRStmtBuilder(nullptr, module.get()); - auto TyVoid = Type::get_void_type(module.get()); - auto TyInt32 = Type::get_int32_type(module.get()); - auto TyInt32Ptr = Type::get_int32_ptr_type(module.get()); - auto TyFloat = Type::get_float_type(module.get()); - auto TyFloatPtr = Type::get_float_ptr_type(module.get()); - - auto input_type = FunctionType::get(TyInt32, {}); - auto get_int = - Function::create( - input_type, - "get_int", - module.get()); - - input_type = FunctionType::get(TyFloat, {}); - auto get_float = - Function::create( - input_type, - "get_float", - module.get()); - - input_type = FunctionType::get(TyInt32, {}); - auto get_char = - Function::create( - input_type, - "get_char", - module.get()); - - std::vector input_params; - std::vector().swap(input_params); - input_params.push_back(TyInt32Ptr); - input_type = FunctionType::get(TyInt32, input_params); - auto get_int_array = - Function::create( - input_type, - "get_int_array", - module.get()); - - std::vector().swap(input_params); - input_params.push_back(TyFloatPtr); - input_type = FunctionType::get(TyInt32, input_params); - auto get_float_array = - Function::create( - input_type, - "get_float_array", - module.get()); - - std::vector output_params; - std::vector().swap(output_params); - output_params.push_back(TyInt32); - auto output_type = FunctionType::get(TyVoid, output_params); - auto put_int = - Function::create( - output_type, - "put_int", - module.get()); - - std::vector().swap(output_params); - output_params.push_back(TyFloat); - output_type = FunctionType::get(TyVoid, output_params); - auto put_float = - Function::create( - output_type, - "put_float", - module.get()); - - std::vector().swap(output_params); - output_params.push_back(TyInt32); - output_type = FunctionType::get(TyVoid, output_params); - auto put_char = - Function::create( - output_type, - "put_char", - module.get()); - - std::vector().swap(output_params); - output_params.push_back(TyInt32); - output_params.push_back(TyInt32Ptr); - output_type = FunctionType::get(TyVoid, output_params); - auto put_int_array = - Function::create( - output_type, - "put_int_array", - module.get()); - - std::vector().swap(output_params); - output_params.push_back(TyInt32); - output_params.push_back(TyFloatPtr); - output_type = FunctionType::get(TyVoid, output_params); - auto put_float_array = - Function::create( - output_type, - "put_float_array", - module.get()); - - scope.enter(); - scope.push("getint", get_int); - scope.push("getfloat", get_float); - scope.push("getch", get_char); - scope.push("getarray", get_int_array); - scope.push("get_float_array", get_float_array); - scope.push("putint", put_int); - scope.push("putfloat", put_float); - scope.push("putch", put_char); - scope.push("putarray", put_int_array); - scope.push("putfloatarray", put_float_array); - } - std::unique_ptr getModule() { - return std::move(module); - } -}; - - -#endif // _SYSYF_IR_BUILDER_H_ +#ifndef _SYSYF_IR_BUILDER_H_ +#define _SYSYF_IR_BUILDER_H_ +#include "BasicBlock.h" +#include "Constant.h" +#include "Function.h" +#include "IRStmtBuilder.h" +#include "Module.h" +#include "Type.h" +#include +#include "SyntaxTree.h" + +namespace SysYF +{ +namespace IR +{ +class Scope { +public: + // enter a new scope + void enter() { + name2var.push_back({}); + name2func.push_back({}); + } + + // exit a scope + void exit() { + name2var.pop_back(); + name2func.pop_back(); + } + + bool in_global() { + return name2var.size() == 1; + } + + // push a name to scope + // return true if successful + // return false if this name already exits + // but func name could be same with variable name + bool push(std::string name, Ptr val) { + bool result; + if (dynamic_pointer_cast(val)){ + result = (name2func[name2func.size() - 1].insert({name, val})).second; + } + else{ + result = (name2var[name2var.size() - 1].insert({name, val})).second; + } + return result; + } + + Ptr find(std::string name, bool isfunc) { + if (isfunc){ + for (auto s = name2func.rbegin(); s!= name2func.rend();s++) { + auto iter = s->find(name); + if (iter != s->end()) { + return iter->second; + } + } + } + else{ + for (auto s = name2var.rbegin(); s!= name2var.rend();s++) { + auto iter = s->find(name); + if (iter != s->end()) { + return iter->second; + } + } + } + return nullptr; + } + + +private: + std::vector >> name2var; + std::vector >> name2func; +}; + +class IRBuilder: public SyntaxTree::Visitor +{ +private: + virtual void visit(SyntaxTree::InitVal &) override final; + virtual void visit(SyntaxTree::Assembly &) override final; + virtual void visit(SyntaxTree::FuncDef &) override final; + virtual void visit(SyntaxTree::VarDef &) override final; + virtual void visit(SyntaxTree::AssignStmt &) override final; + virtual void visit(SyntaxTree::ReturnStmt &) override final; + virtual void visit(SyntaxTree::BlockStmt &) override final; + virtual void visit(SyntaxTree::EmptyStmt &) override final; + virtual void visit(SyntaxTree::ExprStmt &) override final; + virtual void visit(SyntaxTree::UnaryCondExpr &) override final; + virtual void visit(SyntaxTree::BinaryCondExpr &) override final; + virtual void visit(SyntaxTree::BinaryExpr &) override final; + virtual void visit(SyntaxTree::UnaryExpr &) override final; + virtual void visit(SyntaxTree::LVal &) override final; + virtual void visit(SyntaxTree::Literal &) override final; + virtual void visit(SyntaxTree::FuncCallStmt &) override final; + virtual void visit(SyntaxTree::FuncParam &) override final; + virtual void visit(SyntaxTree::FuncFParamList &) override final; + virtual void visit(SyntaxTree::IfStmt &) override final; + virtual void visit(SyntaxTree::WhileStmt &) override final; + virtual void visit(SyntaxTree::BreakStmt &) override final; + virtual void visit(SyntaxTree::ContinueStmt &) override final; + + Ptr builder; + Scope scope; + Ptr module; + + IRBuilder() { + module = Module::create("SysYF code"); + builder = IRStmtBuilder::create(nullptr, module); + auto TyVoid = Type::get_void_type(module); + auto TyInt32 = Type::get_int32_type(module); + auto TyInt32Ptr = Type::get_int32_ptr_type(module); + auto TyFloat = Type::get_float_type(module); + auto TyFloatPtr = Type::get_float_ptr_type(module); + + auto input_type = FunctionType::create(TyInt32, {}); + auto get_int = + Function::create( + input_type, + "get_int", + module); + + input_type = FunctionType::create(TyFloat, {}); + auto get_float = + Function::create( + input_type, + "get_float", + module); + + input_type = FunctionType::create(TyInt32, {}); + auto get_char = + Function::create( + input_type, + "get_char", + module); + + PtrVec input_params; + PtrVec ().swap(input_params); + input_params.push_back(TyInt32Ptr); + input_type = FunctionType::create(TyInt32, input_params); + auto get_int_array = + Function::create( + input_type, + "get_int_array", + module); + + PtrVec ().swap(input_params); + input_params.push_back(TyFloatPtr); + input_type = FunctionType::create(TyInt32, input_params); + auto get_float_array = + Function::create( + input_type, + "get_float_array", + module); + + PtrVec output_params; + PtrVec ().swap(output_params); + output_params.push_back(TyInt32); + auto output_type = FunctionType::create(TyVoid, output_params); + auto put_int = + Function::create( + output_type, + "put_int", + module); + + PtrVec ().swap(output_params); + output_params.push_back(TyFloat); + output_type = FunctionType::create(TyVoid, output_params); + auto put_float = + Function::create( + output_type, + "put_float", + module); + + PtrVec ().swap(output_params); + output_params.push_back(TyInt32); + output_type = FunctionType::create(TyVoid, output_params); + auto put_char = + Function::create( + output_type, + "put_char", + module); + + PtrVec ().swap(output_params); + output_params.push_back(TyInt32); + output_params.push_back(TyInt32Ptr); + output_type = FunctionType::create(TyVoid, output_params); + auto put_int_array = + Function::create( + output_type, + "put_int_array", + module); + + PtrVec ().swap(output_params); + output_params.push_back(TyInt32); + output_params.push_back(TyFloatPtr); + output_type = FunctionType::create(TyVoid, output_params); + auto put_float_array = + Function::create( + output_type, + "put_float_array", + module); + + scope.enter(); + scope.push("getint", get_int); + scope.push("getfloat", get_float); + scope.push("getch", get_char); + scope.push("getarray", get_int_array); + scope.push("get_float_array", get_float_array); + scope.push("putint", put_int); + scope.push("putfloat", put_float); + scope.push("putch", put_char); + scope.push("putarray", put_int_array); + scope.push("putfloatarray", put_float_array); + } +public: + static Ptr create() { + return Ptr(new IRBuilder()); + } + Ptr getModule() { + return module; + } +}; + +} +} + +#endif // _SYSYF_IR_BUILDER_H_ diff --git a/include/internal_macros.h b/include/internal_macros.h new file mode 100644 index 0000000..a7f87b7 --- /dev/null +++ b/include/internal_macros.h @@ -0,0 +1,20 @@ +#ifndef _SYSYF_INTERNAL_MACROS_H_ +#define _SYSYF_INTERNAL_MACROS_H_ + +#include "internal_types.h" + +namespace SysYF +{ + +#define _RET_AFTER_INIT(t, ...) \ + { \ + auto tmp = Ptr(new t(__VA_ARGS__)); \ + tmp->init(__VA_ARGS__) ; \ + return tmp; \ + } + +#define RET_AFTER_INIT(t, ...) _RET_AFTER_INIT(t, ##__VA_ARGS__) + +} + +#endif // _SYSYF_INTERNAL_MACROS_H_ \ No newline at end of file diff --git a/include/internal_types.h b/include/internal_types.h new file mode 100644 index 0000000..f412810 --- /dev/null +++ b/include/internal_types.h @@ -0,0 +1,34 @@ +#ifndef _SYSYF_INTERNAL_TYPES_H_ +#define _SYSYF_INTERNAL_TYPES_H_ + +#include +#include +#include +#include + +namespace SysYF +{ + +template +using Ptr = std::shared_ptr; + +// Vector of reference of type +template +using PtrVec = std::vector>; + +// List of reference of type +template +using PtrList = std::list>; + +// Set of reference of type +template +using PtrSet = std::set>; + +using std::static_pointer_cast; +using std::dynamic_pointer_cast; +using std::const_pointer_cast; + +} + + +#endif // !_SYSYF_INTERNAL_TYPES_H_ \ No newline at end of file diff --git a/lib/lib.c b/lib/lib.c index 1231b17..1fa6ff2 100644 --- a/lib/lib.c +++ b/lib/lib.c @@ -1,7 +1,7 @@ #include /* Input & output functions */ int get_int(){int t; scanf("%d",&t); return t; } -int get_float(){float t; scanf("%f",&t); return t; } +float get_float(){float t; scanf("%f",&t); return t; } int get_char(){char c; scanf("%c",&c); return (int)c; } int get_int_array(int a[]){ int n; diff --git a/src/AST/CMakeLists.txt b/src/AST/CMakeLists.txt index 830bdd4..e54cadb 100644 --- a/src/AST/CMakeLists.txt +++ b/src/AST/CMakeLists.txt @@ -1,9 +1,9 @@ -add_library( - ASTLib STATIC - SyntaxTree.cpp -) - -add_library( - ASTPrinter - SyntaxTreePrinter.cpp -) +add_library( + ASTLib STATIC + SyntaxTree.cpp +) + +add_library( + ASTPrinter + SyntaxTreePrinter.cpp +) diff --git a/src/AST/SyntaxTree.cpp b/src/AST/SyntaxTree.cpp old mode 100644 new mode 100755 index a9256dc..f60f0ca --- a/src/AST/SyntaxTree.cpp +++ b/src/AST/SyntaxTree.cpp @@ -1,7 +1,9 @@ #include "SyntaxTree.h" -using namespace SyntaxTree; - +namespace SysYF +{ +namespace SyntaxTree +{ void Assembly::accept(Visitor &visitor) { visitor.visit(*this); } void FuncDef::accept(Visitor &visitor) { visitor.visit(*this); } void BinaryExpr::accept(Visitor &visitor) { visitor.visit(*this); } @@ -24,3 +26,6 @@ void ContinueStmt::accept(Visitor &visitor) { visitor.visit(*this); } void UnaryCondExpr::accept(Visitor &visitor) { visitor.visit(*this); } void BinaryCondExpr::accept(Visitor &visitor) { visitor.visit(*this); } void InitVal::accept(Visitor &visitor) { visitor.visit(*this); } + +} +} \ No newline at end of file diff --git a/src/AST/SyntaxTreePrinter.cpp b/src/AST/SyntaxTreePrinter.cpp old mode 100644 new mode 100755 index 075962d..812ace1 --- a/src/AST/SyntaxTreePrinter.cpp +++ b/src/AST/SyntaxTreePrinter.cpp @@ -4,8 +4,10 @@ #include #include -using namespace SyntaxTree; - +namespace SysYF +{ +namespace SyntaxTree +{ std::map type2str = { {Type::INT, "int"}, {Type::VOID, "void"}, @@ -80,7 +82,6 @@ void SyntaxTreePrinter::visit(BlockStmt &node) void SyntaxTreePrinter::visit(VarDef &node) { print_indent(); - bool is_array = false; if (node.is_constant) std::cout << "const "; std::cout << type2str[node.btype] << " " << node.name; @@ -88,23 +89,11 @@ void SyntaxTreePrinter::visit(VarDef &node) std::cout << "["; length->accept(*this); std::cout << "]"; - is_array = true; } if (node.is_inited) { int tmp = indent; indent = 0; std::cout << " = "; - // if (is_array) - // std::cout << "{"; - // size_t num = 0; - // for (auto init : node.initializers) { - // init->accept(*this); - // if (num < node.initializers.size() - 1) - // std::cout << ", "; - // num++; - // } - // if (is_array) - // std::cout << "}"; node.initializers->accept(*this); indent = tmp; } @@ -323,3 +312,6 @@ void SyntaxTreePrinter::visit(ContinueStmt &node) std::cout << "continue"; std::cout << ";" < SysYFDriver::parse(const std::string &f) { file = f; diff --git a/src/Frontend/SysYFParser.cpp b/src/Frontend/SysYFParser.cpp index 23cbaee..b11d783 100644 --- a/src/Frontend/SysYFParser.cpp +++ b/src/Frontend/SysYFParser.cpp @@ -1,4 +1,4 @@ -// A Bison parser, made by GNU Bison 3.7.6. +// A Bison parser, made by GNU Bison 3.8.2. // Skeleton implementation for Bison LALR(1) parsers in C++ @@ -42,12 +42,12 @@ // Unqualified %code blocks. -#line 35 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 35 "../../grammar/SysYFParser.yy" #include "SysYFDriver.h" #define yylex driver.lexer.yylex -#line 51 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 51 "./SysYFParser.cpp" #ifndef YY_ @@ -139,7 +139,7 @@ #define YYRECOVERING() (!!yyerrstatus_) namespace yy { -#line 143 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 143 "./SysYFParser.cpp" /// Build a parser object. SysYFParser::SysYFParser (SysYFDriver& driver_yyarg) @@ -158,9 +158,9 @@ namespace yy { SysYFParser::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW {} - /*---------------. - | symbol kinds. | - `---------------*/ + /*---------. + | symbol. | + `---------*/ @@ -208,11 +208,11 @@ namespace yy { switch (that.kind ()) { case symbol_kind::S_CompUnit: // CompUnit - value.YY_MOVE_OR_COPY< SyntaxTree::Assembly* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_Block: // Block - value.YY_MOVE_OR_COPY< SyntaxTree::BlockStmt* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_OptionRet: // OptionRet @@ -222,70 +222,70 @@ namespace yy { case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.YY_MOVE_OR_COPY< SyntaxTree::Expr* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_FuncDef: // FuncDef - value.YY_MOVE_OR_COPY< SyntaxTree::FuncDef* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.YY_MOVE_OR_COPY< SyntaxTree::FuncParam* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.YY_MOVE_OR_COPY< SyntaxTree::InitVal* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_LVal: // LVal - value.YY_MOVE_OR_COPY< SyntaxTree::LVal* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_Number: // Number - value.YY_MOVE_OR_COPY< SyntaxTree::Literal* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.YY_MOVE_OR_COPY< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.YY_MOVE_OR_COPY< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.YY_MOVE_OR_COPY< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.YY_MOVE_OR_COPY< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.YY_MOVE_OR_COPY< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.YY_MOVE_OR_COPY< SyntaxTree::PtrList > (YY_MOVE (that.value)); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.YY_MOVE_OR_COPY< SyntaxTree::Stmt* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_BType: // BType - value.YY_MOVE_OR_COPY< SyntaxTree::Type > (YY_MOVE (that.value)); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.YY_MOVE_OR_COPY< SyntaxTree::VarDef* > (YY_MOVE (that.value)); + value.YY_MOVE_OR_COPY< SysYF::SyntaxTree::Type > (YY_MOVE (that.value)); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -317,11 +317,11 @@ namespace yy { switch (that.kind ()) { case symbol_kind::S_CompUnit: // CompUnit - value.move< SyntaxTree::Assembly* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_Block: // Block - value.move< SyntaxTree::BlockStmt* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_OptionRet: // OptionRet @@ -331,70 +331,70 @@ namespace yy { case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.move< SyntaxTree::Expr* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_FuncDef: // FuncDef - value.move< SyntaxTree::FuncDef* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.move< SyntaxTree::FuncParam* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.move< SyntaxTree::InitVal* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_LVal: // LVal - value.move< SyntaxTree::LVal* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_Number: // Number - value.move< SyntaxTree::Literal* > (YY_MOVE (that.value)); + value.move< SysYF::Ptr > (YY_MOVE (that.value)); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.move< SysYF::Ptr > (YY_MOVE (that.value)); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.move< SysYF::Ptr > (YY_MOVE (that.value)); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.move< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.move< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.move< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.move< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.move< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.move< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.move< SyntaxTree::PtrList > (YY_MOVE (that.value)); + value.move< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.move< SyntaxTree::PtrList > (YY_MOVE (that.value)); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.move< SyntaxTree::Stmt* > (YY_MOVE (that.value)); + value.move< SysYF::PtrVec > (YY_MOVE (that.value)); break; case symbol_kind::S_BType: // BType - value.move< SyntaxTree::Type > (YY_MOVE (that.value)); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.move< SyntaxTree::VarDef* > (YY_MOVE (that.value)); + value.move< SysYF::SyntaxTree::Type > (YY_MOVE (that.value)); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -426,11 +426,11 @@ namespace yy { switch (that.kind ()) { case symbol_kind::S_CompUnit: // CompUnit - value.copy< SyntaxTree::Assembly* > (that.value); + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_Block: // Block - value.copy< SyntaxTree::BlockStmt* > (that.value); + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_OptionRet: // OptionRet @@ -440,70 +440,70 @@ namespace yy { case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.copy< SyntaxTree::Expr* > (that.value); + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_FuncDef: // FuncDef - value.copy< SyntaxTree::FuncDef* > (that.value); + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.copy< SyntaxTree::FuncParam* > (that.value); + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.copy< SyntaxTree::InitVal* > (that.value); + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_LVal: // LVal - value.copy< SyntaxTree::LVal* > (that.value); + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_Number: // Number - value.copy< SyntaxTree::Literal* > (that.value); + value.copy< SysYF::Ptr > (that.value); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.copy< SysYF::Ptr > (that.value); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.copy< SysYF::Ptr > (that.value); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.copy< SyntaxTree::PtrList > (that.value); + value.copy< SysYF::PtrVec > (that.value); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.copy< SyntaxTree::PtrList > (that.value); + value.copy< SysYF::PtrVec > (that.value); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.copy< SyntaxTree::PtrList > (that.value); + value.copy< SysYF::PtrVec > (that.value); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.copy< SyntaxTree::PtrList > (that.value); + value.copy< SysYF::PtrVec > (that.value); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.copy< SyntaxTree::PtrList > (that.value); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.copy< SyntaxTree::Stmt* > (that.value); + value.copy< SysYF::PtrVec > (that.value); break; case symbol_kind::S_BType: // BType - value.copy< SyntaxTree::Type > (that.value); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.copy< SyntaxTree::VarDef* > (that.value); + value.copy< SysYF::SyntaxTree::Type > (that.value); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -534,11 +534,11 @@ namespace yy { switch (that.kind ()) { case symbol_kind::S_CompUnit: // CompUnit - value.move< SyntaxTree::Assembly* > (that.value); + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_Block: // Block - value.move< SyntaxTree::BlockStmt* > (that.value); + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_OptionRet: // OptionRet @@ -548,70 +548,70 @@ namespace yy { case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - value.move< SyntaxTree::Expr* > (that.value); + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_FuncDef: // FuncDef - value.move< SyntaxTree::FuncDef* > (that.value); + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_FuncFParam: // FuncFParam - value.move< SyntaxTree::FuncParam* > (that.value); + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - value.move< SyntaxTree::InitVal* > (that.value); + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_LVal: // LVal - value.move< SyntaxTree::LVal* > (that.value); + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_Number: // Number - value.move< SyntaxTree::Literal* > (that.value); + value.move< SysYF::Ptr > (that.value); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + value.move< SysYF::Ptr > (that.value); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + value.move< SysYF::Ptr > (that.value); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - value.move< SyntaxTree::PtrList > (that.value); + value.move< SysYF::PtrVec > (that.value); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - value.move< SyntaxTree::PtrList > (that.value); + value.move< SysYF::PtrVec > (that.value); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - value.move< SyntaxTree::PtrList > (that.value); + value.move< SysYF::PtrVec > (that.value); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - value.move< SyntaxTree::PtrList > (that.value); + value.move< SysYF::PtrVec > (that.value); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - value.move< SyntaxTree::PtrList > (that.value); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - value.move< SyntaxTree::Stmt* > (that.value); + value.move< SysYF::PtrVec > (that.value); break; case symbol_kind::S_BType: // BType - value.move< SyntaxTree::Type > (that.value); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - value.move< SyntaxTree::VarDef* > (that.value); + value.move< SysYF::SyntaxTree::Type > (that.value); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -687,7 +687,7 @@ namespace yy { } void - SysYFParser::yypop_ (int n) + SysYFParser::yypop_ (int n) YY_NOEXCEPT { yystack_.pop (n); } @@ -730,13 +730,13 @@ namespace yy { } bool - SysYFParser::yy_pact_value_is_default_ (int yyvalue) + SysYFParser::yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT { return yyvalue == yypact_ninf_; } bool - SysYFParser::yy_table_value_is_error_ (int yyvalue) + SysYFParser::yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT { return yyvalue == yytable_ninf_; } @@ -775,13 +775,13 @@ namespace yy { // User initialization code. -#line 24 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 24 "../../grammar/SysYFParser.yy" { // Initialize the initial location. yyla.location.begin.filename = yyla.location.end.filename = &driver.file; } -#line 785 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 785 "./SysYFParser.cpp" /* Initialize the stack. The initial state will be set in @@ -897,11 +897,11 @@ yyla.location.begin.filename = yyla.location.end.filename = &driver.file; switch (yyr1_[yyn]) { case symbol_kind::S_CompUnit: // CompUnit - yylhs.value.emplace< SyntaxTree::Assembly* > (); + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_Block: // Block - yylhs.value.emplace< SyntaxTree::BlockStmt* > (); + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_OptionRet: // OptionRet @@ -911,70 +911,70 @@ yyla.location.begin.filename = yyla.location.end.filename = &driver.file; case symbol_kind::S_LAndExp: // LAndExp case symbol_kind::S_LOrExp: // LOrExp case symbol_kind::S_CondExp: // CondExp - yylhs.value.emplace< SyntaxTree::Expr* > (); + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_FuncDef: // FuncDef - yylhs.value.emplace< SyntaxTree::FuncDef* > (); + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_FuncFParam: // FuncFParam - yylhs.value.emplace< SyntaxTree::FuncParam* > (); + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_InitVal: // InitVal case symbol_kind::S_InitValList: // InitValList case symbol_kind::S_CommaInitValList: // CommaInitValList - yylhs.value.emplace< SyntaxTree::InitVal* > (); + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_LVal: // LVal - yylhs.value.emplace< SyntaxTree::LVal* > (); + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_Number: // Number - yylhs.value.emplace< SyntaxTree::Literal* > (); + yylhs.value.emplace< SysYF::Ptr > (); + break; + + case symbol_kind::S_Stmt: // Stmt + case symbol_kind::S_IfStmt: // IfStmt + yylhs.value.emplace< SysYF::Ptr > (); + break; + + case symbol_kind::S_ConstDef: // ConstDef + case symbol_kind::S_VarDef: // VarDef + yylhs.value.emplace< SysYF::Ptr > (); break; case symbol_kind::S_ArrayExpList: // ArrayExpList case symbol_kind::S_ExpList: // ExpList case symbol_kind::S_CommaExpList: // CommaExpList - yylhs.value.emplace< SyntaxTree::PtrList > (); + yylhs.value.emplace< SysYF::PtrVec > (); break; case symbol_kind::S_FParamList: // FParamList case symbol_kind::S_CommaFParamList: // CommaFParamList - yylhs.value.emplace< SyntaxTree::PtrList > (); + yylhs.value.emplace< SysYF::PtrVec > (); break; case symbol_kind::S_GlobalDecl: // GlobalDecl - yylhs.value.emplace< SyntaxTree::PtrList > (); + yylhs.value.emplace< SysYF::PtrVec > (); break; case symbol_kind::S_BlockItemList: // BlockItemList case symbol_kind::S_BlockItem: // BlockItem - yylhs.value.emplace< SyntaxTree::PtrList > (); + yylhs.value.emplace< SysYF::PtrVec > (); break; case symbol_kind::S_ConstDecl: // ConstDecl case symbol_kind::S_ConstDefList: // ConstDefList case symbol_kind::S_VarDecl: // VarDecl case symbol_kind::S_VarDefList: // VarDefList - yylhs.value.emplace< SyntaxTree::PtrList > (); - break; - - case symbol_kind::S_Stmt: // Stmt - case symbol_kind::S_IfStmt: // IfStmt - yylhs.value.emplace< SyntaxTree::Stmt* > (); + yylhs.value.emplace< SysYF::PtrVec > (); break; case symbol_kind::S_BType: // BType - yylhs.value.emplace< SyntaxTree::Type > (); - break; - - case symbol_kind::S_ConstDef: // ConstDef - case symbol_kind::S_VarDef: // VarDef - yylhs.value.emplace< SyntaxTree::VarDef* > (); + yylhs.value.emplace< SysYF::SyntaxTree::Type > (); break; case symbol_kind::S_FLOATCONST: // FLOATCONST @@ -1011,878 +1011,878 @@ yyla.location.begin.filename = yyla.location.end.filename = &driver.file; switch (yyn) { case 2: // Begin: CompUnit END -#line 106 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 106 "../../grammar/SysYFParser.yy" { - yystack_[1].value.as < SyntaxTree::Assembly* > ()->loc = yylhs.location; - driver.root = yystack_[1].value.as < SyntaxTree::Assembly* > (); + yystack_[1].value.as < SysYF::Ptr > ()->loc = yylhs.location; + driver.root = yystack_[1].value.as < SysYF::Ptr > (); return 0; } -#line 1021 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1021 "./SysYFParser.cpp" break; case 3: // CompUnit: CompUnit GlobalDecl -#line 113 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 113 "../../grammar/SysYFParser.yy" { - yystack_[1].value.as < SyntaxTree::Assembly* > ()->global_defs.insert(yystack_[1].value.as < SyntaxTree::Assembly* > ()->global_defs.end(), yystack_[0].value.as < SyntaxTree::PtrList > ().begin(), yystack_[0].value.as < SyntaxTree::PtrList > ().end()); - yylhs.value.as < SyntaxTree::Assembly* > ()=yystack_[1].value.as < SyntaxTree::Assembly* > (); + yystack_[1].value.as < SysYF::Ptr > ()->global_defs.insert(yystack_[1].value.as < SysYF::Ptr > ()->global_defs.end(), yystack_[0].value.as < SysYF::PtrVec > ().begin(), yystack_[0].value.as < SysYF::PtrVec > ().end()); + yylhs.value.as < SysYF::Ptr > ()=yystack_[1].value.as < SysYF::Ptr > (); } -#line 1030 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1030 "./SysYFParser.cpp" break; case 4: // CompUnit: GlobalDecl -#line 117 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 117 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Assembly* > ()=new SyntaxTree::Assembly(); - yylhs.value.as < SyntaxTree::Assembly* > ()->global_defs.insert(yylhs.value.as < SyntaxTree::Assembly* > ()->global_defs.end(), yystack_[0].value.as < SyntaxTree::PtrList > ().begin(), yystack_[0].value.as < SyntaxTree::PtrList > ().end()); + yylhs.value.as < SysYF::Ptr > ()=SysYF::Ptr(new SysYF::SyntaxTree::Assembly()); + yylhs.value.as < SysYF::Ptr > ()->global_defs.insert(yylhs.value.as < SysYF::Ptr > ()->global_defs.end(), yystack_[0].value.as < SysYF::PtrVec > ().begin(), yystack_[0].value.as < SysYF::PtrVec > ().end()); } -#line 1039 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1039 "./SysYFParser.cpp" break; case 5: // GlobalDecl: ConstDecl -#line 123 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 123 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().insert(yylhs.value.as < SyntaxTree::PtrList > ().end(), yystack_[0].value.as < SyntaxTree::PtrList > ().begin(), yystack_[0].value.as < SyntaxTree::PtrList > ().end()); + yylhs.value.as < SysYF::PtrVec > ()=SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().insert(yylhs.value.as < SysYF::PtrVec > ().end(), yystack_[0].value.as < SysYF::PtrVec > ().begin(), yystack_[0].value.as < SysYF::PtrVec > ().end()); } -#line 1048 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1048 "./SysYFParser.cpp" break; case 6: // GlobalDecl: VarDecl -#line 127 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 127 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().insert(yylhs.value.as < SyntaxTree::PtrList > ().end(), yystack_[0].value.as < SyntaxTree::PtrList > ().begin(), yystack_[0].value.as < SyntaxTree::PtrList > ().end()); + yylhs.value.as < SysYF::PtrVec > ()=SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().insert(yylhs.value.as < SysYF::PtrVec > ().end(), yystack_[0].value.as < SysYF::PtrVec > ().begin(), yystack_[0].value.as < SysYF::PtrVec > ().end()); } -#line 1057 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1057 "./SysYFParser.cpp" break; case 7: // GlobalDecl: FuncDef -#line 131 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 131 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::FuncDef* > ())); + yylhs.value.as < SysYF::PtrVec > ()=SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); } -#line 1066 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1066 "./SysYFParser.cpp" break; case 8: // ConstDecl: CONST BType ConstDefList SEMICOLON -#line 137 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 137 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=yystack_[1].value.as < SyntaxTree::PtrList > (); - for (auto &node : yylhs.value.as < SyntaxTree::PtrList > ()) { - node->btype = yystack_[2].value.as < SyntaxTree::Type > (); + yylhs.value.as < SysYF::PtrVec > ()=yystack_[1].value.as < SysYF::PtrVec > (); + for (auto &node : yylhs.value.as < SysYF::PtrVec > ()) { + node->btype = yystack_[2].value.as < SysYF::SyntaxTree::Type > (); } } -#line 1077 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1077 "./SysYFParser.cpp" break; case 9: // ConstDefList: ConstDefList COMMA ConstDef -#line 144 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 144 "../../grammar/SysYFParser.yy" { - yystack_[2].value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::VarDef* > ())); - yylhs.value.as < SyntaxTree::PtrList > ()=yystack_[2].value.as < SyntaxTree::PtrList > (); + yystack_[2].value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::PtrVec > ()=yystack_[2].value.as < SysYF::PtrVec > (); } -#line 1086 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1086 "./SysYFParser.cpp" break; case 10: // ConstDefList: ConstDef -#line 148 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 148 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::VarDef* > ())); + yylhs.value.as < SysYF::PtrVec > ()=SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); } -#line 1095 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1095 "./SysYFParser.cpp" break; case 11: // BType: INT -#line 154 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 154 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Type > ()=SyntaxTree::Type::INT; + yylhs.value.as < SysYF::SyntaxTree::Type > ()=SysYF::SyntaxTree::Type::INT; } -#line 1103 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1103 "./SysYFParser.cpp" break; case 12: // BType: FLOAT -#line 157 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 157 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Type > ()=SyntaxTree::Type::FLOAT; + yylhs.value.as < SysYF::SyntaxTree::Type > ()=SysYF::SyntaxTree::Type::FLOAT; } -#line 1111 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1111 "./SysYFParser.cpp" break; case 13: // ConstDef: IDENTIFIER ArrayExpList ASSIGN InitVal -#line 163 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 163 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::VarDef* > ()=new SyntaxTree::VarDef(); - yylhs.value.as < SyntaxTree::VarDef* > ()->is_constant = true; - yylhs.value.as < SyntaxTree::VarDef* > ()->is_inited = true; - yylhs.value.as < SyntaxTree::VarDef* > ()->name=yystack_[3].value.as < std::string > (); - yylhs.value.as < SyntaxTree::VarDef* > ()->array_length = yystack_[2].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::VarDef* > ()->initializers = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::InitVal* > ()); - yylhs.value.as < SyntaxTree::VarDef* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > ()=SysYF::Ptr(new SysYF::SyntaxTree::VarDef()); + yylhs.value.as < SysYF::Ptr > ()->is_constant = true; + yylhs.value.as < SysYF::Ptr > ()->is_inited = true; + yylhs.value.as < SysYF::Ptr > ()->name=yystack_[3].value.as < std::string > (); + yylhs.value.as < SysYF::Ptr > ()->array_length = yystack_[2].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->initializers = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1125 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1125 "./SysYFParser.cpp" break; case 14: // VarDecl: BType VarDefList SEMICOLON -#line 174 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 174 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=yystack_[1].value.as < SyntaxTree::PtrList > (); - for (auto &node : yylhs.value.as < SyntaxTree::PtrList > ()) { - node->btype = yystack_[2].value.as < SyntaxTree::Type > (); + yylhs.value.as < SysYF::PtrVec > ()=yystack_[1].value.as < SysYF::PtrVec > (); + for (auto &node : yylhs.value.as < SysYF::PtrVec > ()) { + node->btype = yystack_[2].value.as < SysYF::SyntaxTree::Type > (); } } -#line 1136 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1136 "./SysYFParser.cpp" break; case 15: // VarDefList: VarDefList COMMA VarDef -#line 182 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 182 "../../grammar/SysYFParser.yy" { - yystack_[2].value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::VarDef* > ())); - yylhs.value.as < SyntaxTree::PtrList > ()=yystack_[2].value.as < SyntaxTree::PtrList > (); + yystack_[2].value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::PtrVec > ()=yystack_[2].value.as < SysYF::PtrVec > (); } -#line 1145 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1145 "./SysYFParser.cpp" break; case 16: // VarDefList: VarDef -#line 186 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 186 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::VarDef* > ())); + yylhs.value.as < SysYF::PtrVec > ()=SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); } -#line 1154 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1154 "./SysYFParser.cpp" break; case 17: // VarDef: IDENTIFIER ArrayExpList -#line 192 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 192 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::VarDef* > ()=new SyntaxTree::VarDef(); - yylhs.value.as < SyntaxTree::VarDef* > ()->name=yystack_[1].value.as < std::string > (); - yylhs.value.as < SyntaxTree::VarDef* > ()->array_length = yystack_[0].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::VarDef* > ()->is_inited = false; - yylhs.value.as < SyntaxTree::VarDef* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > ()=SysYF::Ptr(new SysYF::SyntaxTree::VarDef()); + yylhs.value.as < SysYF::Ptr > ()->name=yystack_[1].value.as < std::string > (); + yylhs.value.as < SysYF::Ptr > ()->array_length = yystack_[0].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->is_inited = false; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1166 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1166 "./SysYFParser.cpp" break; case 18: // VarDef: IDENTIFIER ArrayExpList ASSIGN InitVal -#line 199 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 199 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::VarDef* > () = new SyntaxTree::VarDef(); - yylhs.value.as < SyntaxTree::VarDef* > ()->name = yystack_[3].value.as < std::string > (); - yylhs.value.as < SyntaxTree::VarDef* > ()->array_length = yystack_[2].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::VarDef* > ()->initializers = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::InitVal* > ()); - yylhs.value.as < SyntaxTree::VarDef* > ()->is_inited = true; - yylhs.value.as < SyntaxTree::VarDef* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::VarDef()); + yylhs.value.as < SysYF::Ptr > ()->name = yystack_[3].value.as < std::string > (); + yylhs.value.as < SysYF::Ptr > ()->array_length = yystack_[2].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->initializers = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > ()->is_inited = true; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1179 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1179 "./SysYFParser.cpp" break; case 19: // ArrayExpList: ArrayExpList LBRACKET Exp RBRACKET -#line 209 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 209 "../../grammar/SysYFParser.yy" { - yystack_[3].value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[1].value.as < SyntaxTree::Expr* > ())); - yylhs.value.as < SyntaxTree::PtrList > ()=yystack_[3].value.as < SyntaxTree::PtrList > (); + yystack_[3].value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[1].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::PtrVec > ()=yystack_[3].value.as < SysYF::PtrVec > (); } -#line 1188 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1188 "./SysYFParser.cpp" break; case 20: // ArrayExpList: %empty -#line 213 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 213 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > ()=SyntaxTree::PtrList(); + yylhs.value.as < SysYF::PtrVec > ()=SysYF::PtrVec(); } -#line 1196 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1196 "./SysYFParser.cpp" break; case 21: // InitVal: Exp -#line 218 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 218 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::InitVal* > () = new SyntaxTree::InitVal(); - yylhs.value.as < SyntaxTree::InitVal* > ()->isExp = true; - yylhs.value.as < SyntaxTree::InitVal* > ()->elementList = SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::InitVal* > ()->expr = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::InitVal* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::InitVal()); + yylhs.value.as < SysYF::Ptr > ()->isExp = true; + yylhs.value.as < SysYF::Ptr > ()->elementList = SysYF::PtrVec(); + yylhs.value.as < SysYF::Ptr > ()->expr = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1208 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1208 "./SysYFParser.cpp" break; case 22: // InitVal: LBRACE InitValList RBRACE -#line 225 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 225 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::InitVal* > () = yystack_[1].value.as < SyntaxTree::InitVal* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[1].value.as < SysYF::Ptr > (); } -#line 1216 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1216 "./SysYFParser.cpp" break; case 23: // InitValList: CommaInitValList InitVal -#line 230 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 230 "../../grammar/SysYFParser.yy" { - yystack_[1].value.as < SyntaxTree::InitVal* > ()->elementList.push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::InitVal* > ())); - yylhs.value.as < SyntaxTree::InitVal* > () = yystack_[1].value.as < SyntaxTree::InitVal* > (); + yystack_[1].value.as < SysYF::Ptr > ()->elementList.push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::Ptr > () = yystack_[1].value.as < SysYF::Ptr > (); } -#line 1225 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1225 "./SysYFParser.cpp" break; case 24: // InitValList: %empty -#line 234 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 234 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::InitVal* > () = new SyntaxTree::InitVal(); - yylhs.value.as < SyntaxTree::InitVal* > ()->isExp = false; - yylhs.value.as < SyntaxTree::InitVal* > ()->elementList = SyntaxTree::PtrList(); - //$$->elementList = std::vector>(); - yylhs.value.as < SyntaxTree::InitVal* > ()->expr = nullptr; - yylhs.value.as < SyntaxTree::InitVal* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::InitVal()); + yylhs.value.as < SysYF::Ptr > ()->isExp = false; + yylhs.value.as < SysYF::Ptr > ()->elementList = SysYF::PtrVec(); + //$$->elementList = std::vector>(); + yylhs.value.as < SysYF::Ptr > ()->expr = nullptr; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1238 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1238 "./SysYFParser.cpp" break; case 25: // CommaInitValList: CommaInitValList InitVal COMMA -#line 244 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 244 "../../grammar/SysYFParser.yy" { - yystack_[2].value.as < SyntaxTree::InitVal* > ()->elementList.push_back(SyntaxTree::Ptr(yystack_[1].value.as < SyntaxTree::InitVal* > ())); - yylhs.value.as < SyntaxTree::InitVal* > () = yystack_[2].value.as < SyntaxTree::InitVal* > (); + yystack_[2].value.as < SysYF::Ptr > ()->elementList.push_back(SysYF::Ptr(yystack_[1].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::Ptr > () = yystack_[2].value.as < SysYF::Ptr > (); } -#line 1247 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1247 "./SysYFParser.cpp" break; case 26: // CommaInitValList: %empty -#line 248 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 248 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::InitVal* > () = new SyntaxTree::InitVal(); - yylhs.value.as < SyntaxTree::InitVal* > ()->isExp = false; - yylhs.value.as < SyntaxTree::InitVal* > ()->elementList = SyntaxTree::PtrList(); - //$$->elementList = std::vector>(); - yylhs.value.as < SyntaxTree::InitVal* > ()->expr = nullptr; - yylhs.value.as < SyntaxTree::InitVal* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::InitVal()); + yylhs.value.as < SysYF::Ptr > ()->isExp = false; + yylhs.value.as < SysYF::Ptr > ()->elementList = SysYF::PtrVec(); + //$$->elementList = std::vector>(); + yylhs.value.as < SysYF::Ptr > ()->expr = nullptr; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1260 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1260 "./SysYFParser.cpp" break; case 27: // ExpList: CommaExpList Exp -#line 258 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 258 "../../grammar/SysYFParser.yy" { - yystack_[1].value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ())); - yylhs.value.as < SyntaxTree::PtrList > () = yystack_[1].value.as < SyntaxTree::PtrList > (); + yystack_[1].value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::PtrVec > () = yystack_[1].value.as < SysYF::PtrVec > (); } -#line 1269 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1269 "./SysYFParser.cpp" break; case 28: // ExpList: %empty -#line 262 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 262 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); } -#line 1277 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1277 "./SysYFParser.cpp" break; case 29: // CommaExpList: CommaExpList Exp COMMA -#line 267 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 267 "../../grammar/SysYFParser.yy" { - yystack_[2].value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[1].value.as < SyntaxTree::Expr* > ())); - yylhs.value.as < SyntaxTree::PtrList > () = yystack_[2].value.as < SyntaxTree::PtrList > (); + yystack_[2].value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[1].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::PtrVec > () = yystack_[2].value.as < SysYF::PtrVec > (); } -#line 1286 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1286 "./SysYFParser.cpp" break; case 30: // CommaExpList: %empty -#line 271 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 271 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); } -#line 1294 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1294 "./SysYFParser.cpp" break; case 31: // FuncFParam: BType IDENTIFIER ArrayExpList -#line 277 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 277 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::FuncParam* > () = new SyntaxTree::FuncParam(); - yylhs.value.as < SyntaxTree::FuncParam* > ()->param_type = yystack_[2].value.as < SyntaxTree::Type > (); - yylhs.value.as < SyntaxTree::FuncParam* > ()->name = yystack_[1].value.as < std::string > (); - yylhs.value.as < SyntaxTree::FuncParam* > ()->array_index = yystack_[0].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::FuncParam* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::FuncParam()); + yylhs.value.as < SysYF::Ptr > ()->param_type = yystack_[2].value.as < SysYF::SyntaxTree::Type > (); + yylhs.value.as < SysYF::Ptr > ()->name = yystack_[1].value.as < std::string > (); + yylhs.value.as < SysYF::Ptr > ()->array_index = yystack_[0].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1306 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1306 "./SysYFParser.cpp" break; case 32: // FuncFParam: BType IDENTIFIER LRBRACKET ArrayExpList -#line 284 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 284 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::FuncParam* > () = new SyntaxTree::FuncParam(); - yylhs.value.as < SyntaxTree::FuncParam* > ()->param_type = yystack_[3].value.as < SyntaxTree::Type > (); - yylhs.value.as < SyntaxTree::FuncParam* > ()->name = yystack_[2].value.as < std::string > (); - yylhs.value.as < SyntaxTree::FuncParam* > ()->array_index = yystack_[0].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::FuncParam* > ()->array_index.insert(yylhs.value.as < SyntaxTree::FuncParam* > ()->array_index.begin(),nullptr); - yylhs.value.as < SyntaxTree::FuncParam* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::FuncParam()); + yylhs.value.as < SysYF::Ptr > ()->param_type = yystack_[3].value.as < SysYF::SyntaxTree::Type > (); + yylhs.value.as < SysYF::Ptr > ()->name = yystack_[2].value.as < std::string > (); + yylhs.value.as < SysYF::Ptr > ()->array_index = yystack_[0].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->array_index.insert(yylhs.value.as < SysYF::Ptr > ()->array_index.begin(),nullptr); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1319 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1319 "./SysYFParser.cpp" break; case 33: // FParamList: CommaFParamList FuncFParam -#line 294 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 294 "../../grammar/SysYFParser.yy" { - yystack_[1].value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::FuncParam* > ())); - yylhs.value.as < SyntaxTree::PtrList > () = yystack_[1].value.as < SyntaxTree::PtrList > (); + yystack_[1].value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::PtrVec > () = yystack_[1].value.as < SysYF::PtrVec > (); } -#line 1328 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1328 "./SysYFParser.cpp" break; case 34: // FParamList: %empty -#line 298 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 298 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); } -#line 1336 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1336 "./SysYFParser.cpp" break; case 35: // CommaFParamList: CommaFParamList FuncFParam COMMA -#line 303 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 303 "../../grammar/SysYFParser.yy" { - yystack_[2].value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[1].value.as < SyntaxTree::FuncParam* > ())); - yylhs.value.as < SyntaxTree::PtrList > () = yystack_[2].value.as < SyntaxTree::PtrList > (); + yystack_[2].value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[1].value.as < SysYF::Ptr > ())); + yylhs.value.as < SysYF::PtrVec > () = yystack_[2].value.as < SysYF::PtrVec > (); } -#line 1345 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1345 "./SysYFParser.cpp" break; case 36: // CommaFParamList: %empty -#line 307 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 307 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); } -#line 1353 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1353 "./SysYFParser.cpp" break; case 37: // FuncDef: BType IDENTIFIER LPARENTHESE FParamList RPARENTHESE Block -#line 311 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 311 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::FuncDef* > () = new SyntaxTree::FuncDef(); - yylhs.value.as < SyntaxTree::FuncDef* > ()->ret_type = yystack_[5].value.as < SyntaxTree::Type > (); - yylhs.value.as < SyntaxTree::FuncDef* > ()->name = yystack_[4].value.as < std::string > (); - auto tmp = new SyntaxTree::FuncFParamList(); - tmp->params = yystack_[2].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::FuncDef* > ()->param_list = SyntaxTree::Ptr(tmp); - yylhs.value.as < SyntaxTree::FuncDef* > ()->body = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::BlockStmt* > ()); - yylhs.value.as < SyntaxTree::FuncDef* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::FuncDef()); + yylhs.value.as < SysYF::Ptr > ()->ret_type = yystack_[5].value.as < SysYF::SyntaxTree::Type > (); + yylhs.value.as < SysYF::Ptr > ()->name = yystack_[4].value.as < std::string > (); + auto tmp = SysYF::Ptr(new SysYF::SyntaxTree::FuncFParamList()); + tmp->params = yystack_[2].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->param_list = SysYF::Ptr(tmp); + yylhs.value.as < SysYF::Ptr > ()->body = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1368 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1368 "./SysYFParser.cpp" break; case 38: // FuncDef: VOID IDENTIFIER LPARENTHESE FParamList RPARENTHESE Block -#line 321 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 321 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::FuncDef* > () = new SyntaxTree::FuncDef(); - yylhs.value.as < SyntaxTree::FuncDef* > ()->ret_type = SyntaxTree::Type::VOID; - yylhs.value.as < SyntaxTree::FuncDef* > ()->name = yystack_[4].value.as < std::string > (); - auto tmp = new SyntaxTree::FuncFParamList(); - tmp->params = yystack_[2].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::FuncDef* > ()->param_list = SyntaxTree::Ptr(tmp); - yylhs.value.as < SyntaxTree::FuncDef* > ()->body = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::BlockStmt* > ()); - yylhs.value.as < SyntaxTree::FuncDef* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::FuncDef()); + yylhs.value.as < SysYF::Ptr > ()->ret_type = SysYF::SyntaxTree::Type::VOID; + yylhs.value.as < SysYF::Ptr > ()->name = yystack_[4].value.as < std::string > (); + auto tmp = SysYF::Ptr(new SysYF::SyntaxTree::FuncFParamList()); + tmp->params = yystack_[2].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->param_list = SysYF::Ptr(tmp); + yylhs.value.as < SysYF::Ptr > ()->body = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1383 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1383 "./SysYFParser.cpp" break; case 39: // Block: LBRACE BlockItemList RBRACE -#line 333 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 333 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::BlockStmt* > () = new SyntaxTree::BlockStmt(); - yylhs.value.as < SyntaxTree::BlockStmt* > ()->body = yystack_[1].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::BlockStmt* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::BlockStmt()); + yylhs.value.as < SysYF::Ptr > ()->body = yystack_[1].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1393 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1393 "./SysYFParser.cpp" break; case 40: // BlockItemList: BlockItemList BlockItem -#line 340 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 340 "../../grammar/SysYFParser.yy" { - yystack_[1].value.as < SyntaxTree::PtrList > ().insert(yystack_[1].value.as < SyntaxTree::PtrList > ().end(), yystack_[0].value.as < SyntaxTree::PtrList > ().begin(), yystack_[0].value.as < SyntaxTree::PtrList > ().end()); - yylhs.value.as < SyntaxTree::PtrList > () = yystack_[1].value.as < SyntaxTree::PtrList > (); + yystack_[1].value.as < SysYF::PtrVec > ().insert(yystack_[1].value.as < SysYF::PtrVec > ().end(), yystack_[0].value.as < SysYF::PtrVec > ().begin(), yystack_[0].value.as < SysYF::PtrVec > ().end()); + yylhs.value.as < SysYF::PtrVec > () = yystack_[1].value.as < SysYF::PtrVec > (); } -#line 1402 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1402 "./SysYFParser.cpp" break; case 41: // BlockItemList: %empty -#line 344 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 344 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); } -#line 1410 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1410 "./SysYFParser.cpp" break; case 42: // BlockItem: VarDecl -#line 349 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 349 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().insert(yylhs.value.as < SyntaxTree::PtrList > ().end(), yystack_[0].value.as < SyntaxTree::PtrList > ().begin(), yystack_[0].value.as < SyntaxTree::PtrList > ().end()); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().insert(yylhs.value.as < SysYF::PtrVec > ().end(), yystack_[0].value.as < SysYF::PtrVec > ().begin(), yystack_[0].value.as < SysYF::PtrVec > ().end()); } -#line 1419 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1419 "./SysYFParser.cpp" break; case 43: // BlockItem: ConstDecl -#line 353 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 353 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().insert(yylhs.value.as < SyntaxTree::PtrList > ().end(), yystack_[0].value.as < SyntaxTree::PtrList > ().begin(), yystack_[0].value.as < SyntaxTree::PtrList > ().end()); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().insert(yylhs.value.as < SysYF::PtrVec > ().end(), yystack_[0].value.as < SysYF::PtrVec > ().begin(), yystack_[0].value.as < SysYF::PtrVec > ().end()); } -#line 1428 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1428 "./SysYFParser.cpp" break; case 44: // BlockItem: Stmt -#line 357 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 357 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::PtrList > () = SyntaxTree::PtrList(); - yylhs.value.as < SyntaxTree::PtrList > ().push_back(SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Stmt* > ())); + yylhs.value.as < SysYF::PtrVec > () = SysYF::PtrVec(); + yylhs.value.as < SysYF::PtrVec > ().push_back(SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ())); } -#line 1437 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1437 "./SysYFParser.cpp" break; case 45: // Stmt: LVal ASSIGN Exp SEMICOLON -#line 363 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 363 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::AssignStmt(); - temp->target = SyntaxTree::Ptr(yystack_[3].value.as < SyntaxTree::LVal* > ()); - temp->value = SyntaxTree::Ptr(yystack_[1].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Stmt* > () = temp; - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::AssignStmt()); + temp->target = SysYF::Ptr(yystack_[3].value.as < SysYF::Ptr > ()); + temp->value = SysYF::Ptr(yystack_[1].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1449 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1449 "./SysYFParser.cpp" break; case 46: // Stmt: Exp SEMICOLON -#line 370 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 370 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::ExprStmt(); - temp->exp = SyntaxTree::Ptr(yystack_[1].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Stmt* > () = temp; - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::ExprStmt()); + temp->exp = SysYF::Ptr(yystack_[1].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1460 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1460 "./SysYFParser.cpp" break; case 47: // Stmt: RETURN OptionRet SEMICOLON -#line 376 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 376 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::ReturnStmt(); - temp->ret = SyntaxTree::Ptr(yystack_[1].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Stmt* > () = temp; - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::ReturnStmt()); + temp->ret = SysYF::Ptr(yystack_[1].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1471 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1471 "./SysYFParser.cpp" break; case 48: // Stmt: Block -#line 382 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 382 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Stmt* > () = yystack_[0].value.as < SyntaxTree::BlockStmt* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1479 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1479 "./SysYFParser.cpp" break; case 49: // Stmt: WHILE LPARENTHESE CondExp RPARENTHESE Stmt -#line 385 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 385 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::WhileStmt(); - temp->cond_exp = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->statement = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Stmt* > ()); - yylhs.value.as < SyntaxTree::Stmt* > () = temp; - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::WhileStmt()); + temp->cond_exp = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->statement = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1491 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1491 "./SysYFParser.cpp" break; case 50: // Stmt: IfStmt -#line 392 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 392 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Stmt* > () = yystack_[0].value.as < SyntaxTree::Stmt* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1499 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1499 "./SysYFParser.cpp" break; case 51: // Stmt: BREAK SEMICOLON -#line 395 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 395 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Stmt* > () = new SyntaxTree::BreakStmt(); - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::BreakStmt()); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1508 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1508 "./SysYFParser.cpp" break; case 52: // Stmt: CONTINUE SEMICOLON -#line 399 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 399 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Stmt* > () = new SyntaxTree::ContinueStmt(); - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::ContinueStmt()); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1517 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1517 "./SysYFParser.cpp" break; case 53: // Stmt: SEMICOLON -#line 403 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 403 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Stmt* > () = new SyntaxTree::EmptyStmt(); - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::EmptyStmt()); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1526 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1526 "./SysYFParser.cpp" break; case 54: // IfStmt: IF LPARENTHESE CondExp RPARENTHESE Stmt -#line 409 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 409 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::IfStmt(); - temp->cond_exp = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->if_statement = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Stmt* > ()); + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::IfStmt()); + temp->cond_exp = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->if_statement = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); temp->else_statement = nullptr; - yylhs.value.as < SyntaxTree::Stmt* > () = temp; - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1539 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1539 "./SysYFParser.cpp" break; case 55: // IfStmt: IF LPARENTHESE CondExp RPARENTHESE Stmt ELSE Stmt -#line 417 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 417 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::IfStmt(); - temp->cond_exp = SyntaxTree::Ptr(yystack_[4].value.as < SyntaxTree::Expr* > ()); - temp->if_statement = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Stmt* > ()); - temp->else_statement = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Stmt* > ()); - yylhs.value.as < SyntaxTree::Stmt* > () = temp; - yylhs.value.as < SyntaxTree::Stmt* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::IfStmt()); + temp->cond_exp = SysYF::Ptr(yystack_[4].value.as < SysYF::Ptr > ()); + temp->if_statement = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->else_statement = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1552 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1552 "./SysYFParser.cpp" break; case 56: // OptionRet: Exp -#line 427 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 427 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::Expr* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1560 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1560 "./SysYFParser.cpp" break; case 57: // OptionRet: %empty -#line 430 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 430 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = nullptr; + yylhs.value.as < SysYF::Ptr > () = nullptr; } -#line 1568 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1568 "./SysYFParser.cpp" break; case 58: // LVal: IDENTIFIER ArrayExpList -#line 435 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 435 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::LVal* > () = new SyntaxTree::LVal(); - yylhs.value.as < SyntaxTree::LVal* > ()->name = yystack_[1].value.as < std::string > (); - yylhs.value.as < SyntaxTree::LVal* > ()->array_index = yystack_[0].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::LVal* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::LVal()); + yylhs.value.as < SysYF::Ptr > ()->name = yystack_[1].value.as < std::string > (); + yylhs.value.as < SysYF::Ptr > ()->array_index = yystack_[0].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1579 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1579 "./SysYFParser.cpp" break; case 59: // Exp: PLUS Exp -#line 447 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 447 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::UnaryExpr(); - temp->op = SyntaxTree::UnaryOp::PLUS; - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::UnaryExpr()); + temp->op = SysYF::SyntaxTree::UnaryOp::PLUS; + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1591 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1591 "./SysYFParser.cpp" break; case 60: // Exp: MINUS Exp -#line 454 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 454 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::UnaryExpr(); - temp->op = SyntaxTree::UnaryOp::MINUS; - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::UnaryExpr()); + temp->op = SysYF::SyntaxTree::UnaryOp::MINUS; + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1603 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1603 "./SysYFParser.cpp" break; case 61: // Exp: NOT Exp -#line 461 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 461 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::UnaryCondExpr(); - temp->op = SyntaxTree::UnaryCondOp::NOT; - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::UnaryCondExpr()); + temp->op = SysYF::SyntaxTree::UnaryCondOp::NOT; + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1615 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1615 "./SysYFParser.cpp" break; case 62: // Exp: Exp PLUS Exp -#line 468 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 468 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryExpr(); - temp->op = SyntaxTree::BinOp::PLUS; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryExpr()); + temp->op = SysYF::SyntaxTree::BinOp::PLUS; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1628 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1628 "./SysYFParser.cpp" break; case 63: // Exp: Exp MINUS Exp -#line 476 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 476 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryExpr(); - temp->op = SyntaxTree::BinOp::MINUS; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryExpr()); + temp->op = SysYF::SyntaxTree::BinOp::MINUS; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1641 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1641 "./SysYFParser.cpp" break; case 64: // Exp: Exp MULTIPLY Exp -#line 484 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 484 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryExpr(); - temp->op = SyntaxTree::BinOp::MULTIPLY; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryExpr()); + temp->op = SysYF::SyntaxTree::BinOp::MULTIPLY; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1654 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1654 "./SysYFParser.cpp" break; case 65: // Exp: Exp DIVIDE Exp -#line 492 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 492 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryExpr(); - temp->op = SyntaxTree::BinOp::DIVIDE; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryExpr()); + temp->op = SysYF::SyntaxTree::BinOp::DIVIDE; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1667 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1667 "./SysYFParser.cpp" break; case 66: // Exp: Exp MODULO Exp -#line 500 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 500 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryExpr(); - temp->op = SyntaxTree::BinOp::MODULO; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryExpr()); + temp->op = SysYF::SyntaxTree::BinOp::MODULO; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1680 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1680 "./SysYFParser.cpp" break; case 67: // Exp: LPARENTHESE Exp RPARENTHESE -#line 508 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 508 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[1].value.as < SyntaxTree::Expr* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[1].value.as < SysYF::Ptr > (); } -#line 1688 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1688 "./SysYFParser.cpp" break; case 68: // Exp: IDENTIFIER LPARENTHESE ExpList RPARENTHESE -#line 511 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 511 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::FuncCallStmt(); + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::FuncCallStmt()); temp->name = yystack_[3].value.as < std::string > (); - temp->params = yystack_[1].value.as < SyntaxTree::PtrList > (); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + temp->params = yystack_[1].value.as < SysYF::PtrVec > (); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1700 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1700 "./SysYFParser.cpp" break; case 69: // Exp: LVal -#line 518 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 518 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::LVal* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1708 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1708 "./SysYFParser.cpp" break; case 70: // Exp: Number -#line 521 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 521 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::Literal* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1716 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1716 "./SysYFParser.cpp" break; case 71: // RelExp: RelExp LT Exp -#line 526 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 526 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::LT; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::LT; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1729 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1729 "./SysYFParser.cpp" break; case 72: // RelExp: RelExp LTE Exp -#line 534 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 534 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::LTE; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::LTE; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1742 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1742 "./SysYFParser.cpp" break; case 73: // RelExp: RelExp GT Exp -#line 542 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 542 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::GT; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::GT; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1755 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1755 "./SysYFParser.cpp" break; case 74: // RelExp: RelExp GTE Exp -#line 550 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 550 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::GTE; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::GTE; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1768 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1768 "./SysYFParser.cpp" break; case 75: // RelExp: Exp -#line 558 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 558 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::Expr* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1776 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1776 "./SysYFParser.cpp" break; case 76: // EqExp: EqExp EQ RelExp -#line 563 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 563 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::EQ; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::EQ; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1789 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1789 "./SysYFParser.cpp" break; case 77: // EqExp: EqExp NEQ RelExp -#line 571 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 571 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::NEQ; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::NEQ; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1802 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1802 "./SysYFParser.cpp" break; case 78: // EqExp: RelExp -#line 579 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 579 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::Expr* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1810 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1810 "./SysYFParser.cpp" break; case 79: // LAndExp: LAndExp LOGICAND EqExp -#line 584 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 584 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::LAND; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::LAND; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1823 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1823 "./SysYFParser.cpp" break; case 80: // LAndExp: EqExp -#line 592 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 592 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::Expr* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1831 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1831 "./SysYFParser.cpp" break; case 81: // LOrExp: LOrExp LOGICOR LAndExp -#line 597 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 597 "../../grammar/SysYFParser.yy" { - auto temp = new SyntaxTree::BinaryCondExpr(); - temp->op = SyntaxTree::BinaryCondOp::LOR; - temp->lhs = SyntaxTree::Ptr(yystack_[2].value.as < SyntaxTree::Expr* > ()); - temp->rhs = SyntaxTree::Ptr(yystack_[0].value.as < SyntaxTree::Expr* > ()); - yylhs.value.as < SyntaxTree::Expr* > () = temp; - yylhs.value.as < SyntaxTree::Expr* > ()->loc = yylhs.location; + auto temp = SysYF::Ptr(new SysYF::SyntaxTree::BinaryCondExpr()); + temp->op = SysYF::SyntaxTree::BinaryCondOp::LOR; + temp->lhs = SysYF::Ptr(yystack_[2].value.as < SysYF::Ptr > ()); + temp->rhs = SysYF::Ptr(yystack_[0].value.as < SysYF::Ptr > ()); + yylhs.value.as < SysYF::Ptr > () = temp; + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1844 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1844 "./SysYFParser.cpp" break; case 82: // LOrExp: LAndExp -#line 605 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 605 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::Expr* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1852 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1852 "./SysYFParser.cpp" break; case 83: // CondExp: LOrExp -#line 610 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 610 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Expr* > () = yystack_[0].value.as < SyntaxTree::Expr* > (); + yylhs.value.as < SysYF::Ptr > () = yystack_[0].value.as < SysYF::Ptr > (); } -#line 1860 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1860 "./SysYFParser.cpp" break; case 84: // Number: INTCONST -#line 615 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 615 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Literal* > () = new SyntaxTree::Literal(); - yylhs.value.as < SyntaxTree::Literal* > ()->literal_type = SyntaxTree::Type::INT; - yylhs.value.as < SyntaxTree::Literal* > ()->int_const = yystack_[0].value.as < int > (); - yylhs.value.as < SyntaxTree::Literal* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::Literal()); + yylhs.value.as < SysYF::Ptr > ()->literal_type = SysYF::SyntaxTree::Type::INT; + yylhs.value.as < SysYF::Ptr > ()->int_const = yystack_[0].value.as < int > (); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1871 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1871 "./SysYFParser.cpp" break; case 85: // Number: FLOATCONST -#line 621 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 621 "../../grammar/SysYFParser.yy" { - yylhs.value.as < SyntaxTree::Literal* > () = new SyntaxTree::Literal(); - yylhs.value.as < SyntaxTree::Literal* > ()->literal_type = SyntaxTree::Type::FLOAT; - yylhs.value.as < SyntaxTree::Literal* > ()->float_const = yystack_[0].value.as < float > (); - yylhs.value.as < SyntaxTree::Literal* > ()->loc = yylhs.location; + yylhs.value.as < SysYF::Ptr > () = SysYF::Ptr(new SysYF::SyntaxTree::Literal()); + yylhs.value.as < SysYF::Ptr > ()->literal_type = SysYF::SyntaxTree::Type::FLOAT; + yylhs.value.as < SysYF::Ptr > ()->float_const = yystack_[0].value.as < float > (); + yylhs.value.as < SysYF::Ptr > ()->loc = yylhs.location; } -#line 1882 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1882 "./SysYFParser.cpp" break; -#line 1886 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 1886 "./SysYFParser.cpp" default: break; @@ -2120,16 +2120,16 @@ yyla.location.begin.filename = yyla.location.end.filename = &driver.file; // Actual number of expected tokens int yycount = 0; - int yyn = yypact_[+yyparser_.yystack_[0].state]; + const int yyn = yypact_[+yyparser_.yystack_[0].state]; if (!yy_pact_value_is_default_ (yyn)) { /* Start YYX at -YYN if negative to avoid negative indexes in YYCHECK. In other words, skip the first -YYN actions for this state because they are default actions. */ - int yyxbegin = yyn < 0 ? -yyn : 0; + const int yyxbegin = yyn < 0 ? -yyn : 0; // Stay within bounds of both yycheck and yytname. - int yychecklim = yylast_ - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + const int yychecklim = yylast_ - yyn + 1; + const int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; for (int yyx = yyxbegin; yyx < yyxend; ++yyx) if (yycheck_[yyx + yyn] == yyx && yyx != symbol_kind::S_YYerror && !yy_table_value_is_error_ (yytable_[yyx + yyn])) @@ -2150,6 +2150,9 @@ yyla.location.begin.filename = yyla.location.end.filename = &driver.file; + + + int SysYFParser::yy_syntax_error_arguments_ (const context& yyctx, symbol_kind_type yyarg[], int yyargn) const @@ -2463,9 +2466,9 @@ yyla.location.begin.filename = yyla.location.end.filename = &driver.file; } // yy -#line 2467 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFParser.cpp" +#line 2470 "./SysYFParser.cpp" -#line 629 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFParser.yy" +#line 629 "../../grammar/SysYFParser.yy" // Register errors to the driver: diff --git a/src/Frontend/SysYFScanner.cpp b/src/Frontend/SysYFScanner.cpp index ab78039..9a3018d 100644 --- a/src/Frontend/SysYFScanner.cpp +++ b/src/Frontend/SysYFScanner.cpp @@ -1,13 +1,12 @@ -#line 2 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFScanner.cpp" +#line 2 "./SysYFScanner.cpp" -#line 4 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFScanner.cpp" +#line 4 "./SysYFScanner.cpp" #define YY_INT_ALIGNED short int /* A lexical scanner generated by flex */ /* %not-for-header */ - /* %if-c-only */ /* %if-not-reentrant */ /* %endif */ @@ -17,7 +16,7 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 6 -#define YY_FLEX_SUBMINOR_VERSION 0 +#define YY_FLEX_SUBMINOR_VERSION 4 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -109,15 +108,19 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#ifndef SIZE_MAX +#define SIZE_MAX (~(size_t)0) +#endif + #endif /* ! C99 */ #endif /* ! FLEXINT_H */ /* %endif */ -/* %if-c++-only */ /* begin standard C++ headers. */ -#include +/* %if-c++-only */ +#include #include #include #include @@ -125,41 +128,25 @@ typedef unsigned int flex_uint32_t; /* end standard C++ headers. */ /* %endif */ -#ifdef __cplusplus - -/* The "const" storage-class-modifier is valid. */ -#define YY_USE_CONST - -#else /* ! __cplusplus */ - -/* C99 requires __STDC__ to be defined as 1. */ -#if defined (__STDC__) - -#define YY_USE_CONST - -#endif /* defined (__STDC__) */ -#endif /* ! __cplusplus */ - -#ifdef YY_USE_CONST +/* TODO: this is always defined, so inline it */ #define yyconst const + +#if defined(__GNUC__) && __GNUC__ >= 3 +#define yynoreturn __attribute__((__noreturn__)) #else -#define yyconst +#define yynoreturn #endif /* %not-for-header */ - /* Returned upon end-of-file. */ #define YY_NULL 0 /* %ok-for-header */ /* %not-for-header */ - -/* Promotes a possibly negative, possibly signed char to an unsigned - * integer for use as an array index. If the signed char is negative, - * we want to instead treat it as an 8-bit unsigned char, hence the - * double cast. +/* Promotes a possibly negative, possibly signed char to an + * integer in range [0..255] for use as an array index. */ -#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) +#define YY_SC_TO_UI(c) ((YY_CHAR) (c)) /* %ok-for-header */ /* %if-reentrant */ @@ -174,20 +161,16 @@ typedef unsigned int flex_uint32_t; * definition of BEGIN. */ #define BEGIN (yy_start) = 1 + 2 * - /* Translate the current start state into a value that can be later handed * to BEGIN to return to the state. The YYSTATE alias is for lex * compatibility. */ #define YY_START (((yy_start) - 1) / 2) #define YYSTATE YY_START - /* Action number for EOF rule of a given start state. */ #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) - /* Special action meaning "start processing a new file". */ #define YY_NEW_FILE yyrestart( yyin ) - #define YY_END_OF_BUFFER_CHAR 0 /* Size of default input buffer. */ @@ -218,7 +201,7 @@ typedef size_t yy_size_t; #endif /* %if-not-reentrant */ -extern yy_size_t yyleng; +extern int yyleng; /* %endif */ /* %if-c-only */ @@ -229,7 +212,7 @@ extern yy_size_t yyleng; #define EOB_ACT_CONTINUE_SCAN 0 #define EOB_ACT_END_OF_FILE 1 #define EOB_ACT_LAST_MATCH 2 - + #define YY_LESS_LINENO(n) #define YY_LINENO_REWIND_TO(ptr) @@ -246,7 +229,6 @@ extern yy_size_t yyleng; YY_DO_BEFORE_ACTION; /* set up yytext again */ \ } \ while ( 0 ) - #define unput(c) yyunput( c, (yytext_ptr) ) #ifndef YY_STRUCT_YY_BUFFER_STATE @@ -257,7 +239,7 @@ struct yy_buffer_state /* %endif */ /* %if-c++-only */ - std::streambuf* yy_input_file; + std::streambuf* yy_input_file; /* %endif */ char *yy_ch_buf; /* input buffer */ @@ -266,7 +248,7 @@ struct yy_buffer_state /* Size of input buffer in bytes, not including room for EOB * characters. */ - yy_size_t yy_buf_size; + int yy_buf_size; /* Number of characters read into yy_ch_buf, not including EOB * characters. @@ -294,7 +276,7 @@ struct yy_buffer_state int yy_bs_lineno; /**< The line count. */ int yy_bs_column; /**< The column count. */ - + /* Whether to try to fill the input buffer when we reach the * end of it. */ @@ -321,7 +303,6 @@ struct yy_buffer_state /* %if-c-only Standard (non-C++) definition */ /* %not-for-header */ - /* %if-not-reentrant */ /* %endif */ /* %ok-for-header */ @@ -337,7 +318,6 @@ struct yy_buffer_state #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ : NULL) - /* Same as previous macro, but useful when we know that the buffer stack is not * NULL or when we need an lvalue. For internal use only. */ @@ -346,18 +326,16 @@ struct yy_buffer_state /* %if-c-only Standard (non-C++) definition */ /* %if-not-reentrant */ /* %not-for-header */ - /* %ok-for-header */ /* %endif */ /* %endif */ -void *yyalloc (yy_size_t ); -void *yyrealloc (void *,yy_size_t ); -void yyfree (void * ); +void *yyalloc ( yy_size_t ); +void *yyrealloc ( void *, yy_size_t ); +void yyfree ( void * ); #define yy_new_buffer yy_create_buffer - #define yy_set_interactive(is_interactive) \ { \ if ( ! YY_CURRENT_BUFFER ){ \ @@ -367,7 +345,6 @@ void yyfree (void * ); } \ YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ } - #define yy_set_bol(at_bol) \ { \ if ( ! YY_CURRENT_BUFFER ){\ @@ -377,7 +354,6 @@ void yyfree (void * ); } \ YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ } - #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) /* %% [1.0] yytext/yyin/yyout/yy_state_type/yylineno etc. def's & init go here */ @@ -385,8 +361,7 @@ void yyfree (void * ); #define YY_SKIP_YYWRAP #define FLEX_DEBUG - -typedef unsigned char YY_CHAR; +typedef flex_uint8_t YY_CHAR; #define yytext_ptr yytext @@ -405,12 +380,11 @@ int yyFlexLexer::yywrap() { return 1; } #define YY_DO_BEFORE_ACTION \ (yytext_ptr) = yy_bp; \ /* %% [2.0] code to fiddle yytext and yyleng for yymore() goes here \ */\ - yyleng = (size_t) (yy_cp - yy_bp); \ + yyleng = (int) (yy_cp - yy_bp); \ (yy_hold_char) = *yy_cp; \ *yy_cp = '\0'; \ /* %% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \ */\ (yy_c_buf_p) = yy_cp; - /* %% [4.0] data tables for the DFA and the user's section 1 definitions go here */ #define YY_NUM_RULES 45 #define YY_END_OF_BUFFER 46 @@ -421,7 +395,7 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[113] = +static const flex_int16_t yy_accept[113] = { 0, 0, 0, 46, 44, 35, 36, 17, 24, 44, 28, 29, 22, 20, 27, 21, 44, 23, 41, 39, 26, @@ -438,7 +412,7 @@ static yyconst flex_int16_t yy_accept[113] = 7, 0 } ; -static yyconst YY_CHAR yy_ec[256] = +static const YY_CHAR yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, @@ -470,7 +444,7 @@ static yyconst YY_CHAR yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst YY_CHAR yy_meta[50] = +static const YY_CHAR yy_meta[50] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, @@ -479,7 +453,7 @@ static yyconst YY_CHAR yy_meta[50] = 3, 3, 3, 3, 3, 3, 1, 1, 1 } ; -static yyconst flex_uint16_t yy_base[121] = +static const flex_int16_t yy_base[121] = { 0, 0, 0, 222, 223, 48, 218, 199, 223, 212, 223, 223, 223, 223, 223, 223, 37, 41, 43, 48, 223, @@ -496,7 +470,7 @@ static yyconst flex_uint16_t yy_base[121] = 0, 223, 168, 171, 174, 69, 177, 180, 183, 186 } ; -static yyconst flex_int16_t yy_def[121] = +static const flex_int16_t yy_def[121] = { 0, 112, 1, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, @@ -513,7 +487,7 @@ static yyconst flex_int16_t yy_def[121] = 113, 0, 112, 112, 112, 112, 112, 112, 112, 112 } ; -static yyconst flex_uint16_t yy_nxt[273] = +static const flex_int16_t yy_nxt[273] = { 0, 4, 5, 6, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, @@ -547,7 +521,7 @@ static yyconst flex_uint16_t yy_nxt[273] = 112, 112 } ; -static yyconst flex_int16_t yy_chk[273] = +static const flex_int16_t yy_chk[273] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -581,13 +555,13 @@ static yyconst flex_int16_t yy_chk[273] = 112, 112 } ; -static yyconst flex_int16_t yy_rule_linenum[45] = +static const flex_int16_t yy_rule_linenum[45] = { 0, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 167, 168, 169, 170, 173, 174, 182, - 190, 198, 199, 201 + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 168, 169, 170, 171, 174, 175, 183, + 191, 199, 200, 202 } ; /* The intent behind this definition is that it'll catch @@ -597,8 +571,8 @@ static yyconst flex_int16_t yy_rule_linenum[45] = #define yymore() yymore_used_but_not_detected #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET -#line 1 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" -#line 2 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 1 "../../grammar/SysYFScanner.ll" +#line 2 "../../grammar/SysYFScanner.ll" # include # include # include @@ -642,7 +616,8 @@ std::map ch2int = { auto mytoken = yy::SysYFParser::make_##name(value, loc);\ loc.step();\ return mytoken; -#line 48 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 620 "./SysYFScanner.cpp" +#line 48 "../../grammar/SysYFScanner.ll" #if defined __clang__ # define CLANG_VERSION (__clang_major__ * 100 + __clang_minor__) #endif @@ -703,12 +678,14 @@ std::map ch2int = { # pragma GCC diagnostic ignored "-Wsign-conversion" # endif #endif +#line 682 "./SysYFScanner.cpp" #define YY_NO_INPUT 1 -#line 113 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 113 "../../grammar/SysYFScanner.ll" // Code run each time a pattern is matched. # define YY_USER_ACTION loc.columns(yyleng); +#line 687 "./SysYFScanner.cpp" /* Regex abbreviations: */ -#line 712 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFScanner.cpp" +#line 689 "./SysYFScanner.cpp" #define INITIAL 0 @@ -738,23 +715,21 @@ std::map ch2int = { /* %if-bison-bridge */ /* %endif */ /* %not-for-header */ - /* %ok-for-header */ /* %endif */ #ifndef yytext_ptr -static void yy_flex_strncpy (char *,yyconst char *,int ); +static void yy_flex_strncpy ( char *, const char *, int ); #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * ); +static int yy_flex_strlen ( const char * ); #endif #ifndef YY_NO_INPUT /* %if-c-only Standard (non-C++) definition */ /* %not-for-header */ - /* %ok-for-header */ /* %endif */ @@ -820,11 +795,9 @@ static int yy_flex_strlen (yyconst char * ); /* %if-tables-serialization structures and prototypes */ /* %not-for-header */ - /* %ok-for-header */ /* %not-for-header */ - /* %tables-yydmap generated elements */ /* %endif */ /* end tables serialization structures and prototypes */ @@ -860,7 +833,6 @@ static int yy_flex_strlen (yyconst char * ); YY_USER_ACTION /* %not-for-header */ - /** The main scanner function which does all the work. */ YY_DECL @@ -905,10 +877,11 @@ YY_DECL { /* %% [7.0] user's declarations go here */ -#line 129 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 129 "../../grammar/SysYFScanner.ll" +#line 131 "../../grammar/SysYFScanner.ll" /* keyword */ -#line 912 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFScanner.cpp" +#line 885 "./SysYFScanner.cpp" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { @@ -938,9 +911,9 @@ yy_match: { yy_current_state = (int) yy_def[yy_current_state]; if ( yy_current_state >= 113 ) - yy_c = yy_meta[(unsigned int) yy_c]; + yy_c = yy_meta[yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; ++yy_cp; } while ( yy_current_state != 112 ); @@ -985,190 +958,190 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 131 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 132 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(FLOAT);} YY_BREAK case 2: YY_RULE_SETUP -#line 132 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 133 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(INT);} YY_BREAK case 3: YY_RULE_SETUP -#line 133 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 134 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(RETURN);} YY_BREAK case 4: YY_RULE_SETUP -#line 134 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 135 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(VOID);} YY_BREAK case 5: YY_RULE_SETUP -#line 135 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 136 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(CONST);} YY_BREAK case 6: YY_RULE_SETUP -#line 136 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 137 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(BREAK);} YY_BREAK case 7: YY_RULE_SETUP -#line 137 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 138 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(CONTINUE);} YY_BREAK case 8: YY_RULE_SETUP -#line 138 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 139 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(WHILE);} YY_BREAK case 9: YY_RULE_SETUP -#line 139 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 140 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(IF);} YY_BREAK case 10: YY_RULE_SETUP -#line 140 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 141 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(ELSE);} YY_BREAK case 11: YY_RULE_SETUP -#line 142 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 143 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LT);} YY_BREAK case 12: YY_RULE_SETUP -#line 143 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 144 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LTE);} YY_BREAK case 13: YY_RULE_SETUP -#line 144 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 145 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(GT);} YY_BREAK case 14: YY_RULE_SETUP -#line 145 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 146 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(GTE);} YY_BREAK case 15: YY_RULE_SETUP -#line 146 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 147 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(EQ);} YY_BREAK case 16: YY_RULE_SETUP -#line 147 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 148 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(NEQ);} YY_BREAK case 17: YY_RULE_SETUP -#line 148 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 149 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(NOT);} YY_BREAK case 18: YY_RULE_SETUP -#line 149 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 150 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LOGICAND);} YY_BREAK case 19: YY_RULE_SETUP -#line 150 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 151 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LOGICOR);} YY_BREAK case 20: YY_RULE_SETUP -#line 151 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 152 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(PLUS);} YY_BREAK case 21: YY_RULE_SETUP -#line 152 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 153 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(MINUS);} YY_BREAK case 22: YY_RULE_SETUP -#line 153 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 154 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(MULTIPLY);} YY_BREAK case 23: YY_RULE_SETUP -#line 154 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 155 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(DIVIDE);} YY_BREAK case 24: YY_RULE_SETUP -#line 155 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 156 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(MODULO);} YY_BREAK case 25: YY_RULE_SETUP -#line 156 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 157 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(ASSIGN);} YY_BREAK case 26: YY_RULE_SETUP -#line 157 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 158 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(SEMICOLON);} YY_BREAK case 27: YY_RULE_SETUP -#line 158 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 159 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(COMMA);} YY_BREAK case 28: YY_RULE_SETUP -#line 159 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 160 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LPARENTHESE);} YY_BREAK case 29: YY_RULE_SETUP -#line 160 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 161 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(RPARENTHESE);} YY_BREAK case 30: YY_RULE_SETUP -#line 161 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 162 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LBRACKET);} YY_BREAK case 31: YY_RULE_SETUP -#line 162 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 163 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(RBRACKET);} YY_BREAK case 32: YY_RULE_SETUP -#line 163 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 164 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LBRACE);} YY_BREAK case 33: YY_RULE_SETUP -#line 164 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 165 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(RBRACE);} YY_BREAK case 34: /* rule 34 can match eol */ YY_RULE_SETUP -#line 167 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 168 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(LRBRACKET);} YY_BREAK case 35: YY_RULE_SETUP -#line 168 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 169 "../../grammar/SysYFScanner.ll" {loc.step();} YY_BREAK case 36: /* rule 36 can match eol */ YY_RULE_SETUP -#line 169 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 170 "../../grammar/SysYFScanner.ll" {loc.lines(yyleng); loc.step();} YY_BREAK case 37: /* rule 37 can match eol */ YY_RULE_SETUP -#line 170 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 171 "../../grammar/SysYFScanner.ll" {std::string s = yytext; size_t n = std::count(s.begin(), s.end(), '\n'); for (size_t i = 0; i < n; i++) loc.lines(1);} @@ -1176,12 +1149,12 @@ YY_RULE_SETUP case 38: /* rule 38 can match eol */ YY_RULE_SETUP -#line 173 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 174 "../../grammar/SysYFScanner.ll" {loc.lines(1);loc.step();} YY_BREAK case 39: YY_RULE_SETUP -#line 174 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 175 "../../grammar/SysYFScanner.ll" {std::string dec = yytext; unsigned sum = 0; int len = dec.size(); @@ -1193,7 +1166,7 @@ YY_RULE_SETUP YY_BREAK case 40: YY_RULE_SETUP -#line 182 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 183 "../../grammar/SysYFScanner.ll" {std::string hex = yytext; unsigned sum = 0; int len = hex.size(); @@ -1205,7 +1178,7 @@ YY_RULE_SETUP YY_BREAK case 41: YY_RULE_SETUP -#line 190 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 191 "../../grammar/SysYFScanner.ll" {std::string oct = yytext; unsigned sum = 0; int len = oct.size(); @@ -1217,29 +1190,29 @@ YY_RULE_SETUP YY_BREAK case 42: YY_RULE_SETUP -#line 198 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 199 "../../grammar/SysYFScanner.ll" {RET_TYPE_TOKEN(IDENTIFIER, yytext);} YY_BREAK case 43: YY_RULE_SETUP -#line 199 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 200 "../../grammar/SysYFScanner.ll" {RET_TYPE_TOKEN(FLOATCONST, std::stod(yytext));} YY_BREAK case YY_STATE_EOF(INITIAL): -#line 200 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 201 "../../grammar/SysYFScanner.ll" {RET_NOTYPE_TOKEN(END);} YY_BREAK case 44: YY_RULE_SETUP -#line 201 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 202 "../../grammar/SysYFScanner.ll" {std::cout << "Error in scanner!" << '\n'; exit(1);} YY_BREAK case 45: YY_RULE_SETUP -#line 202 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" +#line 203 "../../grammar/SysYFScanner.ll" ECHO; YY_BREAK -#line 1243 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/build/SysYFScanner.cpp" +#line 1216 "./SysYFScanner.cpp" case YY_END_OF_BUFFER: { @@ -1380,12 +1353,11 @@ ECHO; /* %if-c++-only */ /* %not-for-header */ - /* The contents of this function are C++ specific, so the () macro is not used. * This constructor simply maintains backward compatibility. * DEPRECATED */ -yyFlexLexer::yyFlexLexer( FLEX_STD istream* arg_yyin, FLEX_STD ostream* arg_yyout ): +yyFlexLexer::yyFlexLexer( std::istream* arg_yyin, std::ostream* arg_yyout ): yyin(arg_yyin ? arg_yyin->rdbuf() : std::cin.rdbuf()), yyout(arg_yyout ? arg_yyout->rdbuf() : std::cout.rdbuf()) { @@ -1421,7 +1393,7 @@ void yyFlexLexer::ctor_common() yy_start_stack_ptr = yy_start_stack_depth = 0; yy_start_stack = NULL; - yy_buffer_stack = 0; + yy_buffer_stack = NULL; yy_buffer_stack_top = 0; yy_buffer_stack_max = 0; @@ -1434,9 +1406,9 @@ void yyFlexLexer::ctor_common() yyFlexLexer::~yyFlexLexer() { delete [] yy_state_buf; - yyfree(yy_start_stack ); + yyfree( yy_start_stack ); yy_delete_buffer( YY_CURRENT_BUFFER ); - yyfree(yy_buffer_stack ); + yyfree( yy_buffer_stack ); } /* The contents of this function are C++ specific, so the () macro is not used. @@ -1519,7 +1491,7 @@ int yyFlexLexer::yy_get_next_buffer() { char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; char *source = (yytext_ptr); - yy_size_t number_to_move, i; + int number_to_move, i; int ret_val; if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) @@ -1548,7 +1520,7 @@ int yyFlexLexer::yy_get_next_buffer() /* Try to read more data. */ /* First move last chars to start of buffer. */ - number_to_move = (yy_size_t) ((yy_c_buf_p) - (yytext_ptr)) - 1; + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1); for ( i = 0; i < number_to_move; ++i ) *(dest++) = *(source++); @@ -1561,7 +1533,7 @@ int yyFlexLexer::yy_get_next_buffer() else { - yy_size_t num_to_read = + int num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; while ( num_to_read <= 0 ) @@ -1575,7 +1547,7 @@ int yyFlexLexer::yy_get_next_buffer() if ( b->yy_is_our_buffer ) { - yy_size_t new_size = b->yy_buf_size * 2; + int new_size = b->yy_buf_size * 2; if ( new_size <= 0 ) b->yy_buf_size += b->yy_buf_size / 8; @@ -1584,11 +1556,12 @@ int yyFlexLexer::yy_get_next_buffer() b->yy_ch_buf = (char *) /* Include room in for 2 EOB chars. */ - yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); + yyrealloc( (void *) b->yy_ch_buf, + (yy_size_t) (b->yy_buf_size + 2) ); } else /* Can't grow it, we don't own it. */ - b->yy_ch_buf = 0; + b->yy_ch_buf = NULL; if ( ! b->yy_ch_buf ) YY_FATAL_ERROR( @@ -1630,12 +1603,15 @@ int yyFlexLexer::yy_get_next_buffer() else ret_val = EOB_ACT_CONTINUE_SCAN; - if ((int) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { /* Extend the array by 50%, plus the number we really need. */ int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( + (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + /* "- 2" to take care of EOB's */ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); } (yy_n_chars) += number_to_move; @@ -1651,7 +1627,6 @@ int yyFlexLexer::yy_get_next_buffer() /* %if-c-only */ /* %not-for-header */ - /* %endif */ /* %if-c++-only */ yy_state_type yyFlexLexer::yy_get_previous_state() @@ -1676,9 +1651,9 @@ int yyFlexLexer::yy_get_next_buffer() { yy_current_state = (int) yy_def[yy_current_state]; if ( yy_current_state >= 113 ) - yy_c = yy_meta[(unsigned int) yy_c]; + yy_c = yy_meta[yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; } return yy_current_state; @@ -1709,9 +1684,9 @@ int yyFlexLexer::yy_get_next_buffer() { yy_current_state = (int) yy_def[yy_current_state]; if ( yy_current_state >= 113 ) - yy_c = yy_meta[(unsigned int) yy_c]; + yy_c = yy_meta[yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; yy_is_jam = (yy_current_state == 112); return yy_is_jam ? 0 : yy_current_state; @@ -1734,7 +1709,7 @@ int yyFlexLexer::yy_get_next_buffer() if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) { /* need to shift things up to make room */ /* +2 for EOB chars. */ - yy_size_t number_to_move = (yy_n_chars) + 2; + int number_to_move = (yy_n_chars) + 2; char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; char *source = @@ -1746,7 +1721,7 @@ int yyFlexLexer::yy_get_next_buffer() yy_cp += (int) (dest - source); yy_bp += (int) (dest - source); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = - (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; + (yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size; if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) YY_FATAL_ERROR( "flex scanner push-back overflow" ); @@ -1786,7 +1761,7 @@ int yyFlexLexer::yy_get_next_buffer() else { /* need more input */ - yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); + int offset = (int) ((yy_c_buf_p) - (yytext_ptr)); ++(yy_c_buf_p); switch ( yy_get_next_buffer( ) ) @@ -1810,7 +1785,7 @@ int yyFlexLexer::yy_get_next_buffer() case EOB_ACT_END_OF_FILE: { if ( yywrap( ) ) - return EOF; + return 0; if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; @@ -1869,6 +1844,9 @@ int yyFlexLexer::yy_get_next_buffer() */ void yyFlexLexer::yyrestart( std::istream* input_file ) { + if( ! input_file ) { + input_file = &yyin; + } yyrestart( *input_file ); } /* %endif */ @@ -1942,16 +1920,16 @@ void yyFlexLexer::yyrestart( std::istream* input_file ) { YY_BUFFER_STATE b; - b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); - b->yy_buf_size = (yy_size_t)size; + b->yy_buf_size = size; /* yy_ch_buf has to be 2 characters longer than the size given because * we need to put in 2 end-of-buffer characters. */ - b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); + b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); if ( ! b->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); @@ -1993,9 +1971,9 @@ void yyFlexLexer::yyrestart( std::istream* input_file ) YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; if ( b->yy_is_our_buffer ) - yyfree((void *) b->yy_ch_buf ); + yyfree( (void *) b->yy_ch_buf ); - yyfree((void *) b ); + yyfree( (void *) b ); } /* Initializes or reinitializes a buffer. @@ -2150,15 +2128,15 @@ void yyFlexLexer::yyensure_buffer_stack(void) * scanner will even need a stack. We use 2 instead of 1 to avoid an * immediate realloc on the next call. */ - num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ + num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc (num_to_alloc * sizeof(struct yy_buffer_state*) ); if ( ! (yy_buffer_stack) ) YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); - + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); - + (yy_buffer_stack_max) = num_to_alloc; (yy_buffer_stack_top) = 0; return; @@ -2204,13 +2182,14 @@ void yyFlexLexer::yyensure_buffer_stack(void) yy_size_t new_size; (yy_start_stack_depth) += YY_START_STACK_INCR; - new_size = (yy_start_stack_depth) * sizeof( int ); + new_size = (yy_size_t) (yy_start_stack_depth) * sizeof( int ); if ( ! (yy_start_stack) ) - (yy_start_stack) = (int *) yyalloc(new_size ); + (yy_start_stack) = (int *) yyalloc( new_size ); else - (yy_start_stack) = (int *) yyrealloc((void *) (yy_start_stack),new_size ); + (yy_start_stack) = (int *) yyrealloc( + (void *) (yy_start_stack), new_size ); if ( ! (yy_start_stack) ) YY_FATAL_ERROR( "out of memory expanding start-condition stack" ); @@ -2249,7 +2228,7 @@ void yyFlexLexer::yyensure_buffer_stack(void) /* %if-c-only */ /* %endif */ /* %if-c++-only */ -void yyFlexLexer::LexerError( yyconst char msg[] ) +void yyFlexLexer::LexerError( const char* msg ) { std::cerr << msg << std::endl; exit( YY_EXIT_FAILURE ); @@ -2300,7 +2279,7 @@ void yyFlexLexer::LexerError( yyconst char msg[] ) */ #ifndef yytext_ptr -static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) +static void yy_flex_strncpy (char* s1, const char * s2, int n ) { int i; @@ -2310,7 +2289,7 @@ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * s ) +static int yy_flex_strlen (const char * s ) { int n; for ( n = 0; s[n]; ++n ) @@ -2322,7 +2301,7 @@ static int yy_flex_strlen (yyconst char * s ) void *yyalloc (yy_size_t size ) { - return (void *) malloc( size ); + return malloc(size); } void *yyrealloc (void * ptr, yy_size_t size ) @@ -2335,7 +2314,7 @@ void *yyrealloc (void * ptr, yy_size_t size ) * any pointer type to void*, and deal with argument conversions * as though doing an assignment. */ - return (void *) realloc( (char *) ptr, size ); + return realloc(ptr, size); } void yyfree (void * ptr ) @@ -2350,8 +2329,7 @@ void yyfree (void * ptr ) /* %ok-for-header */ -#line 202 "/home/hzq/SysYF_IR_Lab/2021_sysycompiler_ir_lab/grammar/SysYFScanner.ll" - +#line 203 "../../grammar/SysYFScanner.ll" int yyFlexLexer::yylex() { diff --git a/src/SysYFIR/BasicBlock.cpp b/src/SysYFIR/BasicBlock.cpp index 319109f..bb04f3c 100644 --- a/src/SysYFIR/BasicBlock.cpp +++ b/src/SysYFIR/BasicBlock.cpp @@ -1,109 +1,122 @@ -#include "Module.h" -#include "BasicBlock.h" -#include "Function.h" -#include "IRPrinter.h" -#ifdef DEBUG -#include -#endif -#include - -BasicBlock::BasicBlock(Module *m, const std::string &name = "", - Function *parent = nullptr) - : Value(Type::get_label_type(m), name), parent_(parent) -{ -#ifdef DEBUG - assert(parent && "currently parent should not be nullptr"); -#endif - parent_->add_basic_block(this); -} - -Module *BasicBlock::get_module() -{ - return get_parent()->get_parent(); -} - -void BasicBlock::add_instruction(Instruction *instr) -{ - instr_list_.push_back(instr); -} - -void BasicBlock::add_instruction(std::list::iterator instr_pos, Instruction *instr) -{ - instr_list_.insert(instr_pos, instr); -} - -void BasicBlock::add_instr_begin(Instruction *instr) -{ - instr_list_.push_front(instr); -} - -std::list::iterator BasicBlock::find_instruction(Instruction *instr) -{ - return std::find(instr_list_.begin(), instr_list_.end(), instr); -} - -void BasicBlock::delete_instr( Instruction *instr ) -{ - instr_list_.remove(instr); - instr->remove_use_of_ops(); -} - -const Instruction *BasicBlock::get_terminator() const -{ - if (instr_list_.empty()){ - return nullptr; - } - switch (instr_list_.back()->get_instr_type()) - { - case Instruction::ret: - return instr_list_.back(); - break; - - case Instruction::br: - return instr_list_.back(); - break; - - default: - return nullptr; - break; - } -} - -void BasicBlock::erase_from_parent() -{ - this->get_parent()->remove(this); -} - -std::string BasicBlock::print() -{ - std::string bb_ir; - bb_ir += this->get_name(); - bb_ir += ":"; - // print prebb - if(!this->get_pre_basic_blocks().empty()) - { - bb_ir += " ; preds = "; - } - for (auto bb : this->get_pre_basic_blocks() ) - { - if( bb != *this->get_pre_basic_blocks().begin() ) - bb_ir += ", "; - bb_ir += print_as_op(bb, false); - } - - // print prebb - if ( !this->get_parent() ) - { - bb_ir += "\n"; - bb_ir += "; Error: Block without parent!"; - } - bb_ir += "\n"; - for ( auto instr : this->get_instructions() ) - { - bb_ir += " "; - bb_ir += instr->print(); - bb_ir += "\n"; - } - - return bb_ir; +#include "Module.h" +#include "BasicBlock.h" +#include "Function.h" +#include "IRPrinter.h" +#ifdef DEBUG +#include +#endif +#include + +namespace SysYF +{ +namespace IR +{ +BasicBlock::BasicBlock(Ptr m, const std::string &name = "", + Ptr parent = nullptr) + : Value(Type::get_label_type(m), name), parent_(parent) +{ +#ifdef DEBUG + assert(parent && "currently parent should not be nullptr"); +#endif + // parent_->add_basic_block(dynamic_pointer_cast(shared_from_this())); +} + +void BasicBlock::init(Ptr m, const std::string &name = "", + Ptr parent = nullptr) +{ + parent_->add_basic_block(dynamic_pointer_cast(shared_from_this())); +} + +Ptr BasicBlock::get_module() +{ + return get_parent()->get_parent(); +} + +void BasicBlock::add_instruction(Ptr instr) +{ + instr_list_.push_back(instr); +} + +void BasicBlock::add_instruction(PtrList::iterator instr_pos, Ptr instr) +{ + instr_list_.insert(instr_pos, instr); +} + +void BasicBlock::add_instr_begin(Ptr instr) +{ + instr_list_.push_front(instr); +} + +PtrList::iterator BasicBlock::find_instruction(Ptr instr) +{ + return std::find(instr_list_.begin(), instr_list_.end(), instr); +} + +void BasicBlock::delete_instr( Ptr instr ) +{ + instr_list_.remove(instr); + instr->remove_use_of_ops(); +} + +const Ptr BasicBlock::get_terminator() const +{ + if (instr_list_.empty()){ + return nullptr; + } + switch (instr_list_.back()->get_instr_type()) + { + case Instruction::ret: + return instr_list_.back(); + break; + + case Instruction::br: + return instr_list_.back(); + break; + + default: + return nullptr; + break; + } +} + +void BasicBlock::erase_from_parent() +{ + this->get_parent()->remove(dynamic_pointer_cast(shared_from_this())); +} + +std::string BasicBlock::print() +{ + std::string bb_ir; + bb_ir += this->get_name(); + bb_ir += ":"; + // print prebb + if(!this->get_pre_basic_blocks().empty()) + { + bb_ir += " ; preds = "; + } + for (auto bb : this->get_pre_basic_blocks() ) + { + if( bb != *this->get_pre_basic_blocks().begin() ) + bb_ir += ", "; + bb_ir += print_as_op(bb, false); + } + + // print prebb + if ( !this->get_parent() ) + { + bb_ir += "\n"; + bb_ir += "; Error: Block without parent!"; + } + bb_ir += "\n"; + for ( auto instr : this->get_instructions() ) + { + bb_ir += " "; + bb_ir += instr->print(); + bb_ir += "\n"; + } + + return bb_ir; +} + +} } \ No newline at end of file diff --git a/src/SysYFIR/CMakeLists.txt b/src/SysYFIR/CMakeLists.txt index 303bd70..240f22f 100644 --- a/src/SysYFIR/CMakeLists.txt +++ b/src/SysYFIR/CMakeLists.txt @@ -1,13 +1,13 @@ -add_library( - IRLib STATIC - Type.cpp - User.cpp - Value.cpp - BasicBlock.cpp - Constant.cpp - Function.cpp - GlobalVariable.cpp - Instruction.cpp - Module.cpp - IRPrinter.cpp -) +add_library( + IRLib STATIC + Type.cpp + User.cpp + Value.cpp + BasicBlock.cpp + Constant.cpp + Function.cpp + GlobalVariable.cpp + Instruction.cpp + Module.cpp + IRPrinter.cpp +) diff --git a/src/SysYFIR/Constant.cpp b/src/SysYFIR/Constant.cpp index ff30cbd..af830d1 100644 --- a/src/SysYFIR/Constant.cpp +++ b/src/SysYFIR/Constant.cpp @@ -1,87 +1,122 @@ -#include "Constant.h" -#include "Module.h" -#include -#include - -ConstantInt *ConstantInt::get(int val, Module *m) -{ - return new ConstantInt(Type::get_int32_type(m), val); -} -ConstantInt *ConstantInt::get(bool val, Module *m) -{ - return new ConstantInt(Type::get_int1_type(m),val?1:0); -} -std::string ConstantInt::print() -{ - std::string const_ir; - Type *ty = this->get_type(); - if ( ty->is_integer_type() && static_cast(ty)->get_num_bits() == 1 ) - { - //int1 - const_ir += (this->get_value() == 0) ? "false" : "true"; - } - else - { - //int32 - const_ir += std::to_string(this->get_value()); - } - return const_ir; -} - -ConstantFloat *ConstantFloat::get(float val, Module *m) -{ - return new ConstantFloat(Type::get_float_type(m), val); -} -std::string ConstantFloat::print() -{ - std::stringstream fp_ir_ss; - std::string fp_ir; - double val = this->get_value(); - fp_ir_ss << "0x"<< std::hex << *(uint64_t *)&val << std::endl; - fp_ir_ss >> fp_ir; - return fp_ir; -} - -ConstantArray::ConstantArray(ArrayType *ty, const std::vector &val) - : Constant(ty, "", val.size()) -{ - for (int i = 0; i < val.size(); i++) - set_operand(i, val[i]); - this->const_array.assign(val.begin(),val.end()); -} - -Constant *ConstantArray::get_element_value(int index) { - return this->const_array[index]; -} - -ConstantArray *ConstantArray::get(ArrayType *ty, const std::vector &val) -{ - return new ConstantArray(ty, val); -} - -std::string ConstantArray::print() -{ - std::string const_ir; - const_ir += "["; - const_ir += this->get_type()->get_array_element_type()->print(); - const_ir += " "; - const_ir += get_element_value(0)->print(); - for ( int i = 1 ; i < this->get_size_of_array() ; i++ ){ - const_ir += ", "; - const_ir += this->get_type()->get_array_element_type()->print(); - const_ir += " "; - const_ir += get_element_value(i)->print(); - } - const_ir += "]"; - return const_ir; -} - -ConstantZero *ConstantZero::get(Type *ty, Module *m) -{ - return new ConstantZero(ty); -} - -std::string ConstantZero::print() -{ - return "zeroinitializer"; -} +#include "Constant.h" +#include "Module.h" +#include "internal_macros.h" +#include +#include +#include + +namespace SysYF +{ +namespace IR +{ +void ConstantInt::init(Ptr ty, int val) +{ + Constant::init(ty, "", 0); +} + +Ptr ConstantInt::create(int val, Ptr m) +{ + RET_AFTER_INIT(ConstantInt, Type::get_int32_type(m), val); +} + +Ptr ConstantInt::create(bool val, Ptr m) +{ + RET_AFTER_INIT(ConstantInt, Type::get_int1_type(m), val?1:0); +} + +std::string ConstantInt::print() +{ + std::string const_ir; + Ptr ty = this->get_type(); + if ( ty->is_integer_type() && static_pointer_cast(ty)->get_num_bits() == 1 ) + { + //int1 + const_ir += (this->get_value() == 0) ? "false" : "true"; + } + else + { + //int32 + const_ir += std::to_string(this->get_value()); + } + return const_ir; +} + +void ConstantFloat::init(Ptr ty, float val) +{ + Constant::init(ty, "", 0); +} + +Ptr ConstantFloat::create(float val, Ptr m) +{ + RET_AFTER_INIT(ConstantFloat, Type::get_float_type(m), val); +} + +std::string ConstantFloat::print() +{ + std::stringstream fp_ir_ss; + std::string fp_ir; + double val = this->get_value(); + uint64_t hex_val = 0; + memcpy(&hex_val, &val, sizeof(double)); + fp_ir_ss << "0x"<< std::hex << hex_val << std::endl; + fp_ir_ss >> fp_ir; + return fp_ir; +} + +ConstantArray::ConstantArray(Ptr ty, const PtrVec &val) + : Constant(ty, "", val.size()) +{ + +} + +void ConstantArray::init(Ptr ty, const PtrVec &val) +{ + Constant::init(ty, "", val.size()); + for (unsigned int i = 0; i < val.size(); i++) + set_operand(i, val[i]); + this->const_array.assign(val.begin(),val.end()); +} + +Ptr ConstantArray::get_element_value(int index) { + return this->const_array[index]; +} + +Ptr ConstantArray::create(Ptr ty, const PtrVec &val) +{ + RET_AFTER_INIT(ConstantArray, ty, val); +} + +std::string ConstantArray::print() +{ + std::string const_ir; + const_ir += "["; + const_ir += this->get_type()->get_array_element_type()->print(); + const_ir += " "; + const_ir += get_element_value(0)->print(); + for (unsigned int i = 1; i < this->get_size_of_array(); i++) { + const_ir += ", "; + const_ir += this->get_type()->get_array_element_type()->print(); + const_ir += " "; + const_ir += get_element_value(i)->print(); + } + const_ir += "]"; + return const_ir; +} + +void ConstantZero::init(Ptr ty) +{ + Constant::init(ty, "", 0); +} + +Ptr ConstantZero::create(Ptr ty, Ptr m) +{ + RET_AFTER_INIT(ConstantZero, ty); +} + +std::string ConstantZero::print() +{ + return "zeroinitializer"; +} + +} +} \ No newline at end of file diff --git a/src/SysYFIR/Function.cpp b/src/SysYFIR/Function.cpp index e5d8fe8..17f2fd8 100644 --- a/src/SysYFIR/Function.cpp +++ b/src/SysYFIR/Function.cpp @@ -1,175 +1,192 @@ -#include "Module.h" -#include "Function.h" -#include "IRPrinter.h" - -Function::Function(FunctionType *ty, const std::string &name, Module *parent) - : Value(ty, name), parent_(parent), seq_cnt_(0) -{ - // num_args_ = ty->getNumParams(); - parent->add_function(this); - build_args(); -} - -Function *Function::create(FunctionType *ty, const std::string &name, Module *parent) -{ - return new Function(ty, name, parent); -} - -FunctionType *Function::get_function_type() const -{ - return static_cast(get_type()); -} - -Type *Function::get_return_type() const -{ - return get_function_type()->get_return_type(); -} - -unsigned Function::get_num_of_args() const -{ - return get_function_type()->get_num_of_args(); -} - -unsigned Function::get_num_basic_blocks() const -{ - return basic_blocks_.size(); -} - -Module *Function::get_parent() const -{ - return parent_; -} - -void Function::remove(BasicBlock* bb) -{ - basic_blocks_.remove(bb); - for (auto pre : bb->get_pre_basic_blocks()) - { - pre->remove_succ_basic_block(bb); - } - for (auto succ : bb->get_succ_basic_blocks()) - { - succ->remove_pre_basic_block(bb); - } -} - -void Function::build_args() -{ - auto *func_ty = get_function_type(); - unsigned num_args = get_num_of_args(); - for (int i = 0; i < num_args; i++) { - arguments_.push_back(new Argument(func_ty->get_param_type(i), "", this, i)); - } -} - -void Function::add_basic_block(BasicBlock *bb) -{ - basic_blocks_.push_back(bb); -} - -void Function::set_instr_name() -{ - std::map seq; - for (auto arg : this->get_args()) - { - if ( seq.find(arg) == seq.end()) - { - auto seq_num = seq.size() + seq_cnt_; - if ( arg->set_name("arg"+std::to_string(seq_num) )) - { - seq.insert( {arg, seq_num} ); - } - } - } - for (auto bb : basic_blocks_) - { - if ( seq.find(bb) == seq.end()) - { - auto seq_num = seq.size() + seq_cnt_; - if ( bb->set_name("label"+std::to_string(seq_num) )) - { - seq.insert( {bb, seq_num} ); - } - } - for (auto instr : bb->get_instructions()) - { - if ( !instr->is_void() && seq.find(instr) == seq.end()) - { - auto seq_num = seq.size() + seq_cnt_; - if ( instr->set_name("op"+std::to_string(seq_num) )) - { - seq.insert( {instr, seq_num} ); - } - } - } - } - seq_cnt_ += seq.size(); -} - -std::string Function::print() -{ - set_instr_name(); - std::string func_ir; - if ( this->is_declaration() ) - { - func_ir += "declare "; - } - else - { - func_ir += "define "; - } - - func_ir += this->get_return_type()->print(); - func_ir += " "; - func_ir += print_as_op(this, false); - func_ir += "("; - - //print arg - if ( this->is_declaration() ) - { - for ( int i = 0 ; i < this->get_num_of_args() ; i++) - { - if(i) - func_ir += ", "; - func_ir += static_cast(this->get_type())->get_param_type(i)->print(); - } - } - else - { - for ( auto arg = this->arg_begin(); arg != arg_end() ; arg++ ) - { - if( arg != this->arg_begin() ) - { - func_ir += ", "; - } - func_ir += static_cast(*arg)->print(); - } - } - func_ir += ")"; - - //print bb - if( this->is_declaration() ) { - func_ir += "\n"; - } - else - { - func_ir += " {"; - func_ir += "\n"; - for ( auto bb : this->get_basic_blocks() ) - { - func_ir += bb->print(); - } - func_ir += "}"; - } - - return func_ir; -} - -std::string Argument::print() -{ - std::string arg_ir; - arg_ir += this->get_type()->print(); - arg_ir += " %"; - arg_ir += this->get_name(); - return arg_ir; +#include "Module.h" +#include "Function.h" +#include "IRPrinter.h" +#include "internal_macros.h" + +namespace SysYF +{ +namespace IR +{ +Function::Function(Ptr ty, const std::string &name, Ptr parent) + : Value(ty, name), parent_(parent), seq_cnt_(0) +{ + +} + +void Function::init(Ptr ty, const std::string &name, Ptr parent) { + parent_->add_function(dynamic_pointer_cast(shared_from_this())); + build_args(); +} + +Ptr Function::create(Ptr ty, const std::string &name, Ptr parent) +{ + RET_AFTER_INIT(Function, ty, name, parent); +} + +Ptr Function::get_function_type() const +{ + return static_pointer_cast(get_type()); +} + +Ptr Function::get_return_type() const +{ + return get_function_type()->get_return_type(); +} + +unsigned Function::get_num_of_args() const +{ + return get_function_type()->get_num_of_args(); +} + +unsigned Function::get_num_basic_blocks() const +{ + return basic_blocks_.size(); +} + +Ptr Function::get_parent() const +{ + return parent_; +} + +void Function::remove(Ptr bb) +{ + basic_blocks_.remove(bb); + for (auto pre : bb->get_pre_basic_blocks()) + { + pre->remove_succ_basic_block(bb); + } + for (auto succ : bb->get_succ_basic_blocks()) + { + succ->remove_pre_basic_block(bb); + } +} + +void Function::build_args() +{ + auto func_ty = get_function_type(); + unsigned int num_args = get_num_of_args(); + for (unsigned int i = 0; i < num_args; i++) { + arguments_.push_back(Argument::create(func_ty->get_param_type(i), "", dynamic_pointer_cast(shared_from_this()), i)); + } +} + +void Function::add_basic_block(Ptr bb) +{ + basic_blocks_.push_back(bb); +} + +void Function::set_instr_name() +{ + std::map , int> seq; + for (auto arg : this->get_args()) + { + if ( seq.find(arg) == seq.end()) + { + auto seq_num = seq.size() + seq_cnt_; + if ( arg->set_name("arg"+std::to_string(seq_num) )) + { + seq.insert( {arg, seq_num} ); + } + } + } + for (auto bb : basic_blocks_) + { + if ( seq.find(bb) == seq.end()) + { + auto seq_num = seq.size() + seq_cnt_; + if ( bb->set_name("label"+std::to_string(seq_num) )) + { + seq.insert( {bb, seq_num} ); + } + } + for (auto instr : bb->get_instructions()) + { + if ( !instr->is_void() && seq.find(instr) == seq.end()) + { + auto seq_num = seq.size() + seq_cnt_; + if ( instr->set_name("op"+std::to_string(seq_num) )) + { + seq.insert( {instr, seq_num} ); + } + } + } + } + seq_cnt_ += seq.size(); +} + +std::string Function::print() +{ + set_instr_name(); + std::string func_ir; + if ( this->is_declaration() ) + { + func_ir += "declare "; + } + else + { + func_ir += "define "; + } + + func_ir += this->get_return_type()->print(); + func_ir += " "; + func_ir += print_as_op(shared_from_this(), false); + func_ir += "("; + + //print arg + if ( this->is_declaration() ) + { + for (unsigned int i = 0; i < this->get_num_of_args(); i++) + { + if(i) + func_ir += ", "; + func_ir += static_pointer_cast(this->get_type())->get_param_type(i)->print(); + } + } + else + { + for ( auto arg = this->arg_begin(); arg != arg_end() ; arg++ ) + { + if( arg != this->arg_begin() ) + { + func_ir += ", "; + } + func_ir += static_pointer_cast(*arg)->print(); + } + } + func_ir += ")"; + + //print bb + if( this->is_declaration() ) { + func_ir += "\n"; + } + else + { + func_ir += " {"; + func_ir += "\n"; + for ( auto bb : this->get_basic_blocks() ) + { + func_ir += bb->print(); + } + func_ir += "}"; + } + + return func_ir; +} + +Ptr Argument::create(Ptr ty, const std::string &name, Ptr f, + unsigned arg_no) +{ + return Ptr(new Argument(ty, name, f, arg_no)); +} + +std::string Argument::print() +{ + std::string arg_ir; + arg_ir += this->get_type()->print(); + arg_ir += " %"; + arg_ir += this->get_name(); + return arg_ir; +} + +} } \ No newline at end of file diff --git a/src/SysYFIR/GlobalVariable.cpp b/src/SysYFIR/GlobalVariable.cpp index ac18044..7b5a74f 100644 --- a/src/SysYFIR/GlobalVariable.cpp +++ b/src/SysYFIR/GlobalVariable.cpp @@ -1,29 +1,41 @@ -#include "GlobalVariable.h" -#include "IRPrinter.h" - -GlobalVariable::GlobalVariable( std::string name, Module *m, Type* ty, bool is_const, Constant* init) - : User(ty, name, init != nullptr), is_const_(is_const), init_val_(init) -{ - m->add_global_variable(this); - if (init) { - this->set_operand(0, init); - } -}//global操作数为initval - -GlobalVariable *GlobalVariable::create(std::string name, Module *m, Type* ty, bool is_const, - Constant* init = nullptr) -{ - return new GlobalVariable(name, m, PointerType::get(ty), is_const, init); -} - -std::string GlobalVariable::print() -{ - std::string global_val_ir; - global_val_ir += print_as_op(this, false); - global_val_ir += " = "; - global_val_ir += (this->is_const() ? "constant " : "global "); - global_val_ir += this->get_type()->get_pointer_element_type()->print(); - global_val_ir += " "; - global_val_ir += this->get_init()->print(); - return global_val_ir; +#include "GlobalVariable.h" +#include "IRPrinter.h" + +namespace SysYF +{ +namespace IR +{ +GlobalVariable::GlobalVariable(std::string name, Ptr m, Ptr ty, bool is_const, Ptr init_val) + : User(ty, name, init_val != nullptr), is_const_(is_const), init_val_(init_val) +{ + +} + +void GlobalVariable::init(std::string name, Ptr m, Ptr ty, bool is_const, Ptr init_val) +{ + m->add_global_variable(dynamic_pointer_cast(shared_from_this())); + if (init_val) { + this->set_operand(0, init_val); + } +}//global操作数为initval + +Ptr GlobalVariable::create(std::string name, Ptr m, Ptr ty, bool is_const, Ptr init_val) +{ + + RET_AFTER_INIT(GlobalVariable, name, m, PointerType::get(ty), is_const, init_val) +} + +std::string GlobalVariable::print() +{ + std::string global_val_ir; + global_val_ir += print_as_op(shared_from_this(), false); + global_val_ir += " = "; + global_val_ir += (this->is_const() ? "constant " : "global "); + global_val_ir += this->get_type()->get_pointer_element_type()->print(); + global_val_ir += " "; + global_val_ir += this->get_init()->print(); + return global_val_ir; +} + +} } \ No newline at end of file diff --git a/src/SysYFIR/IRPrinter.cpp b/src/SysYFIR/IRPrinter.cpp index b2a6b1e..d796eec 100644 --- a/src/SysYFIR/IRPrinter.cpp +++ b/src/SysYFIR/IRPrinter.cpp @@ -1,86 +1,93 @@ -#include "IRPrinter.h" - -std::string print_as_op( Value *v, bool print_ty ) -{ - std::string op_ir; - if( print_ty ) - { - op_ir += v->get_type()->print(); - op_ir += " "; - } - - if (dynamic_cast(v)) - { - op_ir += "@"+v->get_name(); - } - else if ( dynamic_cast(v) ) - { - op_ir += "@"+v->get_name(); - } - else if ( dynamic_cast(v)) - { - op_ir += v->print(); - } - else - { - op_ir += "%"+v->get_name(); - } - - return op_ir; -} - -std::string print_cmp_type( CmpInst::CmpOp op ) -{ - switch (op) - { - case CmpInst::GE: - return "sge"; - break; - case CmpInst::GT: - return "sgt"; - break; - case CmpInst::LE: - return "sle"; - break; - case CmpInst::LT: - return "slt"; - break; - case CmpInst::EQ: - return "eq"; - break; - case CmpInst::NE: - return "ne"; - break; - default: - break; - } - return "wrong cmpop"; -} - -std::string print_fcmp_type( FCmpInst::CmpOp op ) -{ - switch (op) - { - case FCmpInst::GE: - return "uge"; - break; - case FCmpInst::GT: - return "ugt"; - break; - case FCmpInst::LE: - return "ule"; - break; - case FCmpInst::LT: - return "ult"; - break; - case FCmpInst::EQ: - return "ueq"; - break; - case FCmpInst::NE: - return "une"; - break; - default: - break; - } - return "wrong fcmpop"; -} +#include "IRPrinter.h" + +namespace SysYF +{ +namespace IR +{ +std::string print_as_op( Ptr v, bool print_ty ) +{ + std::string op_ir; + if( print_ty ) + { + op_ir += v->get_type()->print(); + op_ir += " "; + } + + if (dynamic_pointer_cast(v)) + { + op_ir += "@"+v->get_name(); + } + else if (dynamic_pointer_cast(v) ) + { + op_ir += "@"+v->get_name(); + } + else if (dynamic_pointer_cast(v)) + { + op_ir += v->print(); + } + else + { + op_ir += "%"+v->get_name(); + } + + return op_ir; +} + +std::string print_cmp_type( CmpInst::CmpOp op ) +{ + switch (op) + { + case CmpInst::GE: + return "sge"; + break; + case CmpInst::GT: + return "sgt"; + break; + case CmpInst::LE: + return "sle"; + break; + case CmpInst::LT: + return "slt"; + break; + case CmpInst::EQ: + return "eq"; + break; + case CmpInst::NE: + return "ne"; + break; + default: + break; + } + return "wrong cmpop"; +} + +std::string print_fcmp_type( FCmpInst::CmpOp op ) +{ + switch (op) + { + case FCmpInst::GE: + return "uge"; + break; + case FCmpInst::GT: + return "ugt"; + break; + case FCmpInst::LE: + return "ule"; + break; + case FCmpInst::LT: + return "ult"; + break; + case FCmpInst::EQ: + return "ueq"; + break; + case FCmpInst::NE: + return "une"; + break; + default: + break; + } + return "wrong fcmpop"; +} + +} +} \ No newline at end of file diff --git a/src/SysYFIR/Instruction.cpp b/src/SysYFIR/Instruction.cpp index 3f03e37..daa65eb 100644 --- a/src/SysYFIR/Instruction.cpp +++ b/src/SysYFIR/Instruction.cpp @@ -1,670 +1,792 @@ -#include "Type.h" -#include "Module.h" -#include "Function.h" -#include "BasicBlock.h" -#include "Instruction.h" -#include "IRPrinter.h" -#ifdef DEBUG -#include -#endif -#include -#include - -Instruction::Instruction(Type *ty, OpID id, unsigned num_ops, - BasicBlock *parent) - : User(ty, "", num_ops), op_id_(id), num_ops_(num_ops), parent_(parent) -{ - parent_->add_instruction(this); -} - -Instruction::Instruction(Type *ty, OpID id, unsigned num_ops) - : User(ty, "", num_ops), op_id_(id), num_ops_(num_ops), parent_(nullptr) -{ - -} - -Function *Instruction::get_function() -{ - return parent_->get_parent(); -} - -Module *Instruction::get_module() -{ - return parent_->get_module(); -} - -BinaryInst::BinaryInst(Type *ty, OpID id, Value *v1, Value *v2, - BasicBlock *bb) - : Instruction(ty, id, 2, bb) -{ - set_operand(0, v1); - set_operand(1, v2); -} - -BinaryInst *BinaryInst::create_add(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(v1->get_type()->is_pointer_type() ? v1->get_type() : v2->get_type(), Instruction::add, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_sub(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_int32_type(m), Instruction::sub, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_mul(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_int32_type(m), Instruction::mul, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_sdiv(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_int32_type(m), Instruction::sdiv, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_srem(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_int32_type(m), Instruction::srem, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_fadd(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_float_type(m), Instruction::fadd, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_fsub(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_float_type(m), Instruction::fsub, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_fmul(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_float_type(m), Instruction::fmul, v1, v2, bb); -} - -BinaryInst *BinaryInst::create_fdiv(Value *v1, Value *v2, BasicBlock *bb, Module *m) -{ - return new BinaryInst(Type::get_float_type(m), Instruction::fdiv, v1, v2, bb); -} - -std::string BinaryInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += ", "; - if (Type::is_eq_type(this->get_operand(0)->get_type(), this->get_operand(1)->get_type())) - { - instr_ir += print_as_op(this->get_operand(1), false); - } - else - { - instr_ir += print_as_op(this->get_operand(1), true); - } - return instr_ir; -} - -CmpInst::CmpInst(Type *ty, CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb) - : Instruction(ty, Instruction::cmp, 2, bb), cmp_op_(op) -{ - set_operand(0, lhs); - set_operand(1, rhs); -} - -CmpInst *CmpInst::create_cmp(CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb, Module *m) -{ - return new CmpInst(m->get_int1_type(), op, lhs, rhs, bb); -} - -std::string CmpInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += print_cmp_type(this->cmp_op_); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += ", "; - if (Type::is_eq_type(this->get_operand(0)->get_type(), this->get_operand(1)->get_type())) - { - instr_ir += print_as_op(this->get_operand(1), false); - } - else - { - instr_ir += print_as_op(this->get_operand(1), true); - } - return instr_ir; -} - -FCmpInst::FCmpInst(Type *ty, CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb) - : Instruction(ty, Instruction::fcmp, 2, bb), cmp_op_(op) -{ - set_operand(0, lhs); - set_operand(1, rhs); -} - -FCmpInst *FCmpInst::create_fcmp(CmpOp op, Value *lhs, Value *rhs, - BasicBlock *bb, Module *m) -{ - return new FCmpInst(m->get_int1_type(), op, lhs, rhs, bb); -} - -std::string FCmpInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += print_fcmp_type(this->cmp_op_); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += ", "; - if (Type::is_eq_type(this->get_operand(0)->get_type(), this->get_operand(1)->get_type())) - { - instr_ir += print_as_op(this->get_operand(1), false); - } - else - { - instr_ir += print_as_op(this->get_operand(1), true); - } - return instr_ir; -} - -CallInst::CallInst(Function *func, std::vector args, BasicBlock *bb) - : Instruction(func->get_return_type(), Instruction::call, args.size() + 1, bb) -{ -#ifdef DEBUG - assert(func->get_num_of_args() == args.size()); -#endif - int num_ops = args.size() + 1; - set_operand(0, func); - for (int i = 1; i < num_ops; i++) { - set_operand(i, args[i-1]); - } -} - -CallInst::CallInst(Type *ret_ty, std::vector args, BasicBlock *bb) - : Instruction(ret_ty, Instruction::call, args.size() + 1, bb) -{ - int num_ops = args.size() + 1; - for (int i = 1; i < num_ops; i++) { - set_operand(i, args[i-1]); - } -} - -CallInst *CallInst::create(Function *func, std::vector args, BasicBlock *bb) -{ - return new CallInst(func, args, bb); -} - -FunctionType *CallInst::get_function_type() const -{ - return static_cast(get_operand(0)->get_type()); -} - -std::string CallInst::print() -{ - std::string instr_ir; - if( !this->is_void() ) - { - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - } - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += this->get_function_type()->get_return_type()->print(); - - instr_ir += " "; -#ifdef DEBUG - assert(dynamic_cast(this->get_operand(0)) && "Wrong call operand function"); -#endif - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += "("; - for (int i = 1; i < this->get_num_operand(); i++) - { - if( i > 1 ) - instr_ir += ", "; - instr_ir += this->get_operand(i)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(i), false); - } - instr_ir += ")"; - return instr_ir; -} - -BranchInst::BranchInst(Value *cond, BasicBlock *if_true, BasicBlock *if_false, - BasicBlock *bb) - : Instruction(Type::get_void_type(if_true->get_module()), Instruction::br, 3, bb) -{ - set_operand(0, cond); - set_operand(1, if_true); - set_operand(2, if_false); -} - -BranchInst::BranchInst(Value *cond, BasicBlock *bb) - : Instruction(Type::get_void_type(bb->get_module()), Instruction::br, 3, bb) -{ - set_operand(0, cond); -} - -BranchInst::BranchInst(BasicBlock *if_true, BasicBlock *bb) - : Instruction(Type::get_void_type(if_true->get_module()), Instruction::br, 1, bb) -{ - set_operand(0, if_true); -} - -BranchInst::BranchInst(BasicBlock *bb) - : Instruction(Type::get_void_type(bb->get_module()), Instruction::br, 1, bb) -{ - -} - -BranchInst *BranchInst::create_cond_br(Value *cond, BasicBlock *if_true, BasicBlock *if_false, - BasicBlock *bb) -{ - if_true->add_pre_basic_block(bb); - if_false->add_pre_basic_block(bb); - bb->add_succ_basic_block(if_false); - bb->add_succ_basic_block(if_true); - - return new BranchInst(cond, if_true, if_false, bb); -} - -BranchInst *BranchInst::create_br(BasicBlock *if_true, BasicBlock *bb) -{ - if_true->add_pre_basic_block(bb); - bb->add_succ_basic_block(if_true); - - return new BranchInst(if_true, bb); -} - -bool BranchInst::is_cond_br() const -{ - return get_num_operand() == 3; -} - -std::string BranchInst::print() -{ - std::string instr_ir; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), true); - if( is_cond_br() ) - { - instr_ir += ", "; - instr_ir += print_as_op(this->get_operand(1), true); - instr_ir += ", "; - instr_ir += print_as_op(this->get_operand(2), true); - } - return instr_ir; -} - -ReturnInst::ReturnInst(Value *val, BasicBlock *bb) - : Instruction(Type::get_void_type(bb->get_module()), Instruction::ret, 1, bb) -{ - set_operand(0, val); -} - -ReturnInst::ReturnInst(BasicBlock *bb) - : Instruction(Type::get_void_type(bb->get_module()), Instruction::ret, 0, bb) -{ - -} - -ReturnInst *ReturnInst::create_ret(Value *val, BasicBlock *bb) -{ - return new ReturnInst(val, bb); -} - -ReturnInst *ReturnInst::create_void_ret(BasicBlock *bb) -{ - return new ReturnInst(bb); -} - -bool ReturnInst::is_void_ret() const -{ - return get_num_operand() == 0; -} - -std::string ReturnInst::print() -{ - std::string instr_ir; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - if ( !is_void_ret() ) - { - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - } - else - { - instr_ir += "void"; - } - - return instr_ir; -} - -GetElementPtrInst::GetElementPtrInst(Value *ptr, std::vector idxs, BasicBlock *bb) - : Instruction(PointerType::get(get_element_type(ptr, idxs)), Instruction::getelementptr, - 1 + idxs.size(), bb) -{ - set_operand(0, ptr); - for (int i = 0; i < idxs.size(); i++) { - set_operand(i + 1, idxs[i]); - } - element_ty_ = get_element_type(ptr, idxs); -} - -Type *GetElementPtrInst::get_element_type(Value *ptr, std::vector idxs) -{ - - Type *ty = ptr->get_type()->get_pointer_element_type(); - if (ty->is_array_type()) - { - ArrayType *arr_ty = static_cast(ty); - for (int i = 1; i < idxs.size(); i++) { - ty = arr_ty->get_element_type(); - if (i < idxs.size() - 1) { -#ifdef DEBUG - assert(ty->is_array_type() && "Index error!"); -#endif - } - if (ty->is_array_type()) { - arr_ty = static_cast(ty); - } - } - } - return ty; -} - -Type *GetElementPtrInst::get_element_type() const -{ - return element_ty_; -} - -GetElementPtrInst *GetElementPtrInst::create_gep(Value *ptr, std::vector idxs, BasicBlock *bb) -{ - return new GetElementPtrInst(ptr, idxs, bb); -} - -std::string GetElementPtrInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; -#ifdef DEBUG - assert(this->get_operand(0)->get_type()->is_pointer_type()); -#endif - instr_ir += this->get_operand(0)->get_type()->get_pointer_element_type()->print(); - instr_ir += ", "; - for (int i = 0; i < this->get_num_operand(); i++) - { - if( i > 0 ) - instr_ir += ", "; - instr_ir += this->get_operand(i)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(i), false); - } - return instr_ir; -} - -StoreInst::StoreInst(Value *val, Value *ptr, BasicBlock *bb) - : Instruction(Type::get_void_type(bb->get_module()), Instruction::store, 2, bb) -{ - set_operand(0, val); - set_operand(1, ptr); -} - -StoreInst *StoreInst::create_store(Value *val, Value *ptr, BasicBlock *bb) -{ - return new StoreInst(val, ptr, bb); -} - -std::string StoreInst::print() -{ - std::string instr_ir; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += ", "; - instr_ir += print_as_op(this->get_operand(1), true); - return instr_ir; -} - -LoadInst::LoadInst(Type *ty, Value *ptr, BasicBlock *bb) - : Instruction(ty, Instruction::load, 1, bb) -{ -#ifdef DEBUG - assert(ptr->get_type()->is_pointer_type()); - assert(ty == static_cast(ptr->get_type())->get_element_type()); -#endif - set_operand(0, ptr); -} - -LoadInst *LoadInst::create_load(Type *ty, Value *ptr, BasicBlock *bb) -{ - return new LoadInst(ty, ptr, bb); -} - -Type *LoadInst::get_load_type() const -{ - return static_cast(get_operand(0)->get_type())->get_element_type(); -} - -std::string LoadInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; -#ifdef DEBUG - assert(this->get_operand(0)->get_type()->is_pointer_type()); -#endif - instr_ir += this->get_operand(0)->get_type()->get_pointer_element_type()->print(); - instr_ir += ","; - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), true); - return instr_ir; -} - -AllocaInst::AllocaInst(Type *ty, BasicBlock *bb) - : Instruction(PointerType::get(ty), Instruction::alloca, 0, bb), alloca_ty_(ty) -{ - -} - -AllocaInst *AllocaInst::create_alloca(Type *ty, BasicBlock *bb) -{ - return new AllocaInst(ty, bb); -} - -Type *AllocaInst::get_alloca_type() const -{ - return alloca_ty_; -} - -std::string AllocaInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += get_alloca_type()->print(); - return instr_ir; -} - -ZextInst::ZextInst(OpID op, Value *val, Type *ty, BasicBlock *bb) - : Instruction(ty, op, 1, bb), dest_ty_(ty) -{ - set_operand(0, val); -} - -ZextInst *ZextInst::create_zext(Value *val, Type *ty, BasicBlock *bb) -{ - return new ZextInst(Instruction::zext, val, ty, bb); -} - -Type *ZextInst::get_dest_type() const -{ - return dest_ty_; -} - -std::string ZextInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += " to "; - instr_ir += this->get_dest_type()->print(); - return instr_ir; -} - -FpToSiInst::FpToSiInst(OpID op, Value *val, Type *ty, BasicBlock *bb) - : Instruction(ty, op, 1, bb), dest_ty_(ty) -{ - set_operand(0, val); -} - -FpToSiInst *FpToSiInst::create_fptosi(Value *val, Type *ty, BasicBlock *bb) -{ - return new FpToSiInst(Instruction::fptosi, val, ty, bb); -} - -Type *FpToSiInst::get_dest_type() const -{ - return dest_ty_; -} - -std::string FpToSiInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += " to "; - instr_ir += this->get_dest_type()->print(); - return instr_ir; -} - -SiToFpInst::SiToFpInst(OpID op, Value *val, Type *ty, BasicBlock *bb) - : Instruction(ty, op, 1, bb), dest_ty_(ty) -{ - set_operand(0, val); -} - -SiToFpInst *SiToFpInst::create_sitofp(Value *val, Type *ty, BasicBlock *bb) -{ - return new SiToFpInst(Instruction::sitofp, val, ty, bb); -} - -Type *SiToFpInst::get_dest_type() const -{ - return dest_ty_; -} - -std::string SiToFpInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - instr_ir += print_as_op(this->get_operand(0), false); - instr_ir += " to "; - instr_ir += this->get_dest_type()->print(); - return instr_ir; -} - -PhiInst::PhiInst(OpID op, std::vector vals, std::vector val_bbs, Type *ty, BasicBlock *bb) - : Instruction(ty, op, 2*vals.size() ) -{ - for ( int i = 0; i < vals.size(); i++) - { - set_operand(2*i, vals[i]); - set_operand(2*i+1, val_bbs[i]); - } - this->set_parent(bb); -} - -PhiInst *PhiInst::create_phi( Type *ty, BasicBlock *bb) -{ - std::vector vals; - std::vector val_bbs; - return new PhiInst(Instruction::phi, vals, val_bbs, ty, bb); -} - -std::string PhiInst::print() -{ - std::string instr_ir; - instr_ir += "%"; - instr_ir += this->get_name(); - instr_ir += " = "; - instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); - instr_ir += " "; - instr_ir += this->get_operand(0)->get_type()->print(); - instr_ir += " "; - for (int i = 0; i < this->get_num_operand()/2; i++) - { - if( i > 0 ) - instr_ir += ", "; - instr_ir += "[ "; - instr_ir += print_as_op(this->get_operand(2*i), false); - instr_ir += ", "; - instr_ir += print_as_op(this->get_operand(2*i+1), false); - instr_ir += " ]"; - } - if ( this->get_num_operand()/2 < this->get_parent()->get_pre_basic_blocks().size() ) - { - for ( auto pre_bb : this->get_parent()->get_pre_basic_blocks() ) - { - if (std::find(this->get_operands().begin(), this->get_operands().end(), static_cast(pre_bb)) == this->get_operands().end()) - { - // find a pre_bb is not in phi - instr_ir += ", [ undef, " +print_as_op(pre_bb, false)+" ]"; - } - } - } - return instr_ir; +#include "Type.h" +#include "Module.h" +#include "Function.h" +#include "BasicBlock.h" +#include "Instruction.h" +#include "IRPrinter.h" +#include "internal_macros.h" + +#ifdef DEBUG +#include +#endif +#include +#include + +namespace SysYF +{ +namespace IR +{ +Instruction::Instruction(Ptr ty, OpID id, unsigned num_ops, Ptr parent) + : User(ty, "", num_ops), op_id_(id), num_ops_(num_ops), parent_(parent) +{ + +} + +void Instruction::insert_to_bb() +{ + parent_ -> add_instruction(dynamic_pointer_cast(shared_from_this())); +} + +void Instruction::init(Ptr ty, OpID id, unsigned num_ops, Ptr parent) +{ + insert_to_bb(); +} + +Ptr Instruction::get_function() +{ + return parent_->get_parent(); +} + +Ptr Instruction::get_module() +{ + return parent_->get_module(); +} + +BinaryInst::BinaryInst(Ptr ty, OpID id, Ptr v1, Ptr v2, Ptr bb) + : Instruction(ty, id, 2, bb) +{ + +} + +void BinaryInst::init(Ptr ty, OpID id, Ptr v1, Ptr v2, Ptr bb) +{ + Instruction::init(ty, id, 2, bb); + set_operand(0, v1); + set_operand(1, v2); +} + +Ptr BinaryInst::create_add(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, v1->get_type()->is_pointer_type() ? v1->get_type() : v2->get_type(), Instruction::add, v1, v2, bb); +} + +Ptr BinaryInst::create_sub(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_int32_type(m), Instruction::sub, v1, v2, bb); +} + +Ptr BinaryInst::create_mul(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_int32_type(m), Instruction::mul, v1, v2, bb); +} + +Ptr BinaryInst::create_sdiv(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_int32_type(m), Instruction::sdiv, v1, v2, bb); +} + +Ptr BinaryInst::create_srem(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_int32_type(m), Instruction::srem, v1, v2, bb); +} + +Ptr BinaryInst::create_fadd(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_float_type(m), Instruction::fadd, v1, v2, bb); +} + +Ptr BinaryInst::create_fsub(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_float_type(m), Instruction::fsub, v1, v2, bb); +} + +Ptr BinaryInst::create_fmul(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_float_type(m), Instruction::fmul, v1, v2, bb); +} + +Ptr BinaryInst::create_fdiv(Ptr v1, Ptr v2, Ptr bb, Ptr m) +{ + RET_AFTER_INIT(BinaryInst, Type::get_float_type(m), Instruction::fdiv, v1, v2, bb); +} + +std::string BinaryInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += ", "; + if (Type::is_eq_type(this->get_operand(0)->get_type(), this->get_operand(1)->get_type())) + { + instr_ir += print_as_op(this->get_operand(1), false); + } + else + { + instr_ir += print_as_op(this->get_operand(1), true); + } + return instr_ir; +} + +CmpInst::CmpInst(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb) + : Instruction(ty, Instruction::cmp, 2, bb), cmp_op_(op) +{ + +} + +void CmpInst::init(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, Ptr bb) +{ + Instruction::init(ty, Instruction::cmp, 2, bb); + set_operand(0, lhs); + set_operand(1, rhs); +} + +Ptr CmpInst::create_cmp(CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb, Ptr m) +{ + RET_AFTER_INIT(CmpInst, m->get_int1_type(), op, lhs, rhs, bb); +} + +std::string CmpInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += print_cmp_type(this->cmp_op_); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += ", "; + if (Type::is_eq_type(this->get_operand(0)->get_type(), this->get_operand(1)->get_type())) + { + instr_ir += print_as_op(this->get_operand(1), false); + } + else + { + instr_ir += print_as_op(this->get_operand(1), true); + } + return instr_ir; +} + +FCmpInst::FCmpInst(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb) + : Instruction(ty, Instruction::fcmp, 2, bb), cmp_op_(op) +{ + +} + +void FCmpInst::init(Ptr ty, CmpOp op, Ptr lhs, Ptr rhs, Ptr bb) +{ + Instruction::init(ty, Instruction::fcmp, 2, bb); + set_operand(0, lhs); + set_operand(1, rhs); +} + +Ptr FCmpInst::create_fcmp(CmpOp op, Ptr lhs, Ptr rhs, + Ptr bb, Ptr m) +{ + RET_AFTER_INIT(FCmpInst, m->get_int1_type(), op, lhs, rhs, bb); +} + +std::string FCmpInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += print_fcmp_type(this->cmp_op_); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += ", "; + if (Type::is_eq_type(this->get_operand(0)->get_type(), this->get_operand(1)->get_type())) + { + instr_ir += print_as_op(this->get_operand(1), false); + } + else + { + instr_ir += print_as_op(this->get_operand(1), true); + } + return instr_ir; +} + +CallInst::CallInst(Ptr func, PtrVec args, Ptr bb) + : Instruction(func->get_return_type(), Instruction::call, args.size() + 1, bb) +{ +#ifdef DEBUG + assert(func->get_num_of_args() == args.size()); +#endif +} + +void CallInst::init(Ptr func, PtrVec args, Ptr bb) +{ + Instruction::init(func->get_return_type(), Instruction::call, args.size() + 1, bb); + int num_ops = args.size() + 1; + set_operand(0, func); + for (int i = 1; i < num_ops; i++) { + set_operand(i, args[i-1]); + } +} + +CallInst::CallInst(Ptr ret_ty, PtrVec args, Ptr bb) + : Instruction(ret_ty, Instruction::call, args.size() + 1, bb) +{ + +} + +void CallInst::init(Ptr ret_ty, PtrVec args, Ptr bb) +{ + Instruction::init(ret_ty, Instruction::call, args.size() + 1, bb); + int num_ops = args.size() + 1; + for (int i = 1; i < num_ops; i++) { + set_operand(i, args[i-1]); + } +} + +Ptr CallInst::create(Ptr func, PtrVec args, Ptr bb) +{ + RET_AFTER_INIT(CallInst, func, args, bb); +} + +Ptr CallInst::get_function_type() const +{ + return static_pointer_cast(get_operand(0)->get_type()); +} + +std::string CallInst::print() +{ + std::string instr_ir; + if( !this->is_void() ) + { + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + } + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += this->get_function_type()->get_return_type()->print(); + + instr_ir += " "; +#ifdef DEBUG + assert(dynamic_pointer_cast(this->get_operand(0)) && "Wrong call operand function"); +#endif + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += "("; + for (unsigned int i = 1; i < this->get_num_operand(); i++) + { + if( i > 1 ) + instr_ir += ", "; + instr_ir += this->get_operand(i)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(i), false); + } + instr_ir += ")"; + return instr_ir; +} + +BranchInst::BranchInst(Ptr cond, Ptr if_true, Ptr if_false, + Ptr bb) + : Instruction(Type::get_void_type(if_true->get_module()), Instruction::br, 3, bb) +{ + +} + +void BranchInst::init(Ptr cond, Ptr if_true, Ptr if_false, + Ptr bb) +{ + Instruction::init(Type::get_void_type(if_true->get_module()), Instruction::br, 3, bb); + set_operand(0, cond); + set_operand(1, if_true); + set_operand(2, if_false); +} + +BranchInst::BranchInst(Ptr cond, Ptr bb) + : Instruction(Type::get_void_type(bb->get_module()), Instruction::br, 3, bb) +{ + +} + +void BranchInst::init(Ptr cond, Ptr bb) +{ + Instruction::init(Type::get_void_type(bb->get_module()), Instruction::br, 3, bb); + set_operand(0, cond); +} + +BranchInst::BranchInst(Ptr if_true, Ptr bb) + : Instruction(Type::get_void_type(if_true->get_module()), Instruction::br, 1, bb) +{ + +} + +void BranchInst::init(Ptr if_true, Ptr bb) +{ + Instruction::init(Type::get_void_type(if_true->get_module()), Instruction::br, 1, bb); + set_operand(0, if_true); +} + +BranchInst::BranchInst(Ptr bb) + : Instruction(Type::get_void_type(bb->get_module()), Instruction::br, 1, bb) +{ + +} + +void BranchInst::init(Ptr bb) +{ + Instruction::init(Type::get_void_type(bb->get_module()), Instruction::br, 1, bb); +} + +Ptr BranchInst::create_cond_br(Ptr cond, Ptr if_true, Ptr if_false, + Ptr bb) +{ + if_true->add_pre_basic_block(bb); + if_false->add_pre_basic_block(bb); + bb->add_succ_basic_block(if_false); + bb->add_succ_basic_block(if_true); + + RET_AFTER_INIT(BranchInst, cond, if_true, if_false, bb); +} + +Ptr BranchInst::create_br(Ptr if_true, Ptr bb) +{ + if_true->add_pre_basic_block(bb); + bb->add_succ_basic_block(if_true); + + RET_AFTER_INIT(BranchInst, if_true, bb); +} + +bool BranchInst::is_cond_br() const +{ + return get_num_operand() == 3; +} + +std::string BranchInst::print() +{ + std::string instr_ir; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), true); + if( is_cond_br() ) + { + instr_ir += ", "; + instr_ir += print_as_op(this->get_operand(1), true); + instr_ir += ", "; + instr_ir += print_as_op(this->get_operand(2), true); + } + return instr_ir; +} + +ReturnInst::ReturnInst(Ptr val, Ptr bb) + : Instruction(Type::get_void_type(bb->get_module()), Instruction::ret, 1, bb) +{ + +} + +void ReturnInst::init(Ptr val, Ptr bb) +{ + Instruction::init(Type::get_void_type(bb->get_module()), Instruction::ret, 1, bb); + set_operand(0, val); +} + +ReturnInst::ReturnInst(Ptr bb) + : Instruction(Type::get_void_type(bb->get_module()), Instruction::ret, 0, bb) +{ + +} + +void ReturnInst::init(Ptr bb) +{ + Instruction::init(Type::get_void_type(bb->get_module()), Instruction::ret, 0, bb); +} + +Ptr ReturnInst::create_ret(Ptr val, Ptr bb) +{ + RET_AFTER_INIT(ReturnInst, val, bb); +} + +Ptr ReturnInst::create_void_ret(Ptr bb) +{ + RET_AFTER_INIT(ReturnInst, bb); +} + +bool ReturnInst::is_void_ret() const +{ + return get_num_operand() == 0; +} + +std::string ReturnInst::print() +{ + std::string instr_ir; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + if ( !is_void_ret() ) + { + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + } + else + { + instr_ir += "void"; + } + + return instr_ir; +} + +GetElementPtrInst::GetElementPtrInst(Ptr ptr, PtrVec idxs, Ptr bb) + : Instruction(PointerType::get(get_element_type(ptr, idxs)), Instruction::getelementptr, + 1 + idxs.size(), bb) +{ + +} + +void GetElementPtrInst::init(Ptr ptr, PtrVec idxs, Ptr bb) +{ + Instruction::init(PointerType::get(get_element_type(ptr, idxs)), Instruction::getelementptr, + 1 + idxs.size(), bb); + set_operand(0, ptr); + for (unsigned int i = 0; i < idxs.size(); i++) { + set_operand(i + 1, idxs[i]); + } + element_ty_ = get_element_type(ptr, idxs); +} + +Ptr GetElementPtrInst::get_element_type(Ptr ptr, PtrVec idxs) +{ + + Ptr ty = ptr->get_type()->get_pointer_element_type(); + if (ty->is_array_type()) + { + Ptr arr_ty = static_pointer_cast(ty); + for (unsigned int i = 1; i < idxs.size(); i++) { + ty = arr_ty->get_element_type(); + if (i < idxs.size() - 1) { +#ifdef DEBUG + assert(ty->is_array_type() && "Index error!"); +#endif + } + if (ty->is_array_type()) { + arr_ty = static_pointer_cast(ty); + } + } + } + return ty; +} + +Ptr GetElementPtrInst::get_element_type() const +{ + return element_ty_; +} + +Ptr GetElementPtrInst::create_gep(Ptr ptr, PtrVec idxs, Ptr bb) +{ + RET_AFTER_INIT(GetElementPtrInst, ptr, idxs, bb); +} + +std::string GetElementPtrInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; +#ifdef DEBUG + assert(this->get_operand(0)->get_type()->is_pointer_type()); +#endif + instr_ir += this->get_operand(0)->get_type()->get_pointer_element_type()->print(); + instr_ir += ", "; + for (unsigned int i = 0; i < this->get_num_operand(); i++) + { + if( i > 0 ) + instr_ir += ", "; + instr_ir += this->get_operand(i)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(i), false); + } + return instr_ir; +} + +StoreInst::StoreInst(Ptr val, Ptr ptr, Ptr bb) + : Instruction(Type::get_void_type(bb->get_module()), Instruction::store, 2, bb) +{ + +} + +void StoreInst::init(Ptr val, Ptr ptr, Ptr bb) +{ + Instruction::init(Type::get_void_type(bb->get_module()), Instruction::store, 2, bb); + set_operand(0, val); + set_operand(1, ptr); +} + +Ptr StoreInst::create_store(Ptr val, Ptr ptr, Ptr bb) +{ + RET_AFTER_INIT(StoreInst, val, ptr, bb); +} + +std::string StoreInst::print() +{ + std::string instr_ir; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += ", "; + instr_ir += print_as_op(this->get_operand(1), true); + return instr_ir; +} + +LoadInst::LoadInst(Ptr ty, Ptr ptr, Ptr bb) + : Instruction(ty, Instruction::load, 1, bb) +{ +#ifdef DEBUG + assert(ptr->get_type()->is_pointer_type()); + assert(ty == static_pointer_cast(ptr->get_type())->get_element_type()); +#endif +} + +void LoadInst::init(Ptr ty, Ptr ptr, Ptr bb) +{ + Instruction::init(ty, Instruction::load, 1, bb); + set_operand(0, ptr); +} + +Ptr LoadInst::create_load(Ptr ty, Ptr ptr, Ptr bb) +{ + RET_AFTER_INIT(LoadInst, ty, ptr, bb); +} + +Ptr LoadInst::get_load_type() const +{ + return static_pointer_cast(get_operand(0)->get_type())->get_element_type(); +} + +std::string LoadInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; +#ifdef DEBUG + assert(this->get_operand(0)->get_type()->is_pointer_type()); +#endif + instr_ir += this->get_operand(0)->get_type()->get_pointer_element_type()->print(); + instr_ir += ","; + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), true); + return instr_ir; +} + +AllocaInst::AllocaInst(Ptr ty, Ptr bb) + : Instruction(PointerType::get(ty), Instruction::alloca, 0, bb), alloca_ty_(ty) +{ + +} + +void AllocaInst::init(Ptr ty, Ptr bb) +{ + Instruction::init(PointerType::get(ty), Instruction::alloca, 0, bb); +} + +Ptr AllocaInst::create_alloca(Ptr ty, Ptr bb) +{ + RET_AFTER_INIT(AllocaInst, ty, bb); +} + +Ptr AllocaInst::get_alloca_type() const +{ + return alloca_ty_; +} + +std::string AllocaInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += get_alloca_type()->print(); + return instr_ir; +} + +ZextInst::ZextInst(OpID op, Ptr val, Ptr ty, Ptr bb) + : Instruction(ty, op, 1, bb), dest_ty_(ty) +{ + +} + +void ZextInst::init(OpID op, Ptr val, Ptr ty, Ptr bb) +{ + Instruction::init(ty, op, 1, bb); + set_operand(0, val); +} + +Ptr ZextInst::create_zext(Ptr val, Ptr ty, Ptr bb) +{ + RET_AFTER_INIT(ZextInst, Instruction::zext, val, ty, bb); +} + +Ptr ZextInst::get_dest_type() const +{ + return dest_ty_; +} + +std::string ZextInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += " to "; + instr_ir += this->get_dest_type()->print(); + return instr_ir; +} + +FpToSiInst::FpToSiInst(OpID op, Ptr val, Ptr ty, Ptr bb) + : Instruction(ty, op, 1, bb), dest_ty_(ty) +{ + +} + +void FpToSiInst::init(OpID op, Ptr val, Ptr ty, Ptr bb) +{ + Instruction::init(ty, op, 1, bb); + set_operand(0, val); +} + +Ptr FpToSiInst::create_fptosi(Ptr val, Ptr ty, Ptr bb) +{ + RET_AFTER_INIT(FpToSiInst, Instruction::fptosi, val, ty, bb); +} + +Ptr FpToSiInst::get_dest_type() const +{ + return dest_ty_; +} + +std::string FpToSiInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += " to "; + instr_ir += this->get_dest_type()->print(); + return instr_ir; +} + +SiToFpInst::SiToFpInst(OpID op, Ptr val, Ptr ty, Ptr bb) + : Instruction(ty, op, 1, bb), dest_ty_(ty) +{ + +} + +void SiToFpInst::init(OpID op, Ptr val, Ptr ty, Ptr bb) +{ + Instruction::init(ty, op, 1, bb); + set_operand(0, val); +} + +Ptr SiToFpInst::create_sitofp(Ptr val, Ptr ty, Ptr bb) +{ + RET_AFTER_INIT(SiToFpInst, Instruction::sitofp, val, ty, bb); +} + +Ptr SiToFpInst::get_dest_type() const +{ + return dest_ty_; +} + +std::string SiToFpInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + instr_ir += print_as_op(this->get_operand(0), false); + instr_ir += " to "; + instr_ir += this->get_dest_type()->print(); + return instr_ir; +} + +PhiInst::PhiInst(OpID op, PtrVec vals, PtrVec val_bbs, Ptr ty, Ptr bb) + : Instruction(ty, op, 2*vals.size()) +{ + +} + +void PhiInst::init(OpID op, PtrVec vals, PtrVec val_bbs, Ptr ty, Ptr bb) +{ + Instruction::init(ty, op, 2*vals.size()); + for (unsigned int i = 0; i < vals.size(); i++) + { + set_operand(2*i, vals[i]); + set_operand(2*i+1, val_bbs[i]); + } + this->set_parent(bb); +} + +Ptr PhiInst::create_phi( Ptr ty, Ptr bb) +{ + PtrVec vals; + PtrVec val_bbs; + RET_AFTER_INIT(PhiInst, Instruction::phi, vals, val_bbs, ty, bb); +} + +std::string PhiInst::print() +{ + std::string instr_ir; + instr_ir += "%"; + instr_ir += this->get_name(); + instr_ir += " = "; + instr_ir += this->get_module()->get_instr_op_name( this->get_instr_type() ); + instr_ir += " "; + instr_ir += this->get_operand(0)->get_type()->print(); + instr_ir += " "; + for (unsigned int i = 0; i < this->get_num_operand()/2; i++) + { + if( i > 0 ) + instr_ir += ", "; + instr_ir += "[ "; + instr_ir += print_as_op(this->get_operand(2*i), false); + instr_ir += ", "; + instr_ir += print_as_op(this->get_operand(2*i+1), false); + instr_ir += " ]"; + } + if ( this->get_num_operand()/2 < this->get_parent()->get_pre_basic_blocks().size() ) + { + for ( auto pre_bb : this->get_parent()->get_pre_basic_blocks() ) + { + if (std::find(this->get_operands().begin(), this->get_operands().end(), static_pointer_cast(pre_bb)) == this->get_operands().end()) + { + // find a pre_bb is not in phi + instr_ir += ", [ undef, " +print_as_op(pre_bb, false)+" ]"; + } + } + } + return instr_ir; +} + +} } \ No newline at end of file diff --git a/src/SysYFIR/Module.cpp b/src/SysYFIR/Module.cpp index b8e4263..5ddfcc3 100644 --- a/src/SysYFIR/Module.cpp +++ b/src/SysYFIR/Module.cpp @@ -1,139 +1,144 @@ -#include "Module.h" - -Module::Module(std::string name) - : module_name_(name) -{ - void_ty_ = new Type(Type::VoidTyID, this); - label_ty_ = new Type(Type::LabelTyID, this); - int1_ty_ = new IntegerType(1, this); - int32_ty_ = new IntegerType(32, this); - float32_ty_ = new FloatType(this); - // init instr_id2string - instr_id2string_.insert({ Instruction::ret, "ret" }); - instr_id2string_.insert({ Instruction::br, "br" }); - - instr_id2string_.insert({ Instruction::add, "add" }); - instr_id2string_.insert({ Instruction::sub, "sub" }); - instr_id2string_.insert({ Instruction::mul, "mul" }); - instr_id2string_.insert({ Instruction::sdiv, "sdiv" }); - instr_id2string_.insert({ Instruction::srem, "srem" }); - - instr_id2string_.insert({ Instruction::fadd, "fadd" }); - instr_id2string_.insert({ Instruction::fsub, "fsub" }); - instr_id2string_.insert({ Instruction::fmul, "fmul" }); - instr_id2string_.insert({ Instruction::fdiv, "fdiv" }); - - instr_id2string_.insert({ Instruction::alloca, "alloca" }); - instr_id2string_.insert({ Instruction::load, "load" }); - instr_id2string_.insert({ Instruction::store, "store" }); - instr_id2string_.insert({ Instruction::cmp, "icmp" }); - instr_id2string_.insert({ Instruction::fcmp, "fcmp" }); - instr_id2string_.insert({ Instruction::phi, "phi" }); - instr_id2string_.insert({ Instruction::call, "call" }); - instr_id2string_.insert({ Instruction::getelementptr, "getelementptr" }); - instr_id2string_.insert({ Instruction::zext, "zext" }); - instr_id2string_.insert({ Instruction::fptosi, "fptosi" }); - instr_id2string_.insert({ Instruction::sitofp, "sitofp" }); -} - -Module::~Module() -{ - delete void_ty_; - delete label_ty_; - delete int1_ty_; - delete int32_ty_; - delete float32_ty_; -} - -Type *Module::get_void_type() -{ - return void_ty_; -} - -Type *Module::get_label_type() -{ - return label_ty_; -} - -IntegerType *Module::get_int1_type() -{ - return int1_ty_; -} - -IntegerType *Module::get_int32_type() -{ - return int32_ty_; -} - -FloatType *Module::get_float_type() -{ - return float32_ty_; -} - -PointerType *Module::get_pointer_type(Type *contained) -{ - if( pointer_map_.find(contained) == pointer_map_.end() ) - { - pointer_map_[contained] = new PointerType(contained); - } - return pointer_map_[contained]; -} - -ArrayType *Module::get_array_type(Type *contained, unsigned num_elements) -{ - if( array_map_.find({contained, num_elements}) == array_map_.end() ) - { - array_map_[{contained, num_elements}] = new ArrayType(contained, num_elements); - } - return array_map_[{contained, num_elements}]; -} - -PointerType *Module::get_int32_ptr_type() -{ - return get_pointer_type(int32_ty_); -} - -PointerType *Module::get_float_ptr_type() -{ - return get_pointer_type(float32_ty_); -} - -void Module::add_function(Function *f) -{ - function_list_.push_back(f); -} -std::list &Module::get_functions(){ - return function_list_; -} -void Module::add_global_variable(GlobalVariable* g) -{ - global_list_.push_back(g); -} -std::list &Module::get_global_variable(){ - return global_list_; -} - -void Module::set_print_name() -{ - for (auto func : this->get_functions()) - { - func->set_instr_name(); - } - return ; -} - -std::string Module::print() -{ - std::string module_ir; - for ( auto global_val : this->global_list_) - { - module_ir += global_val->print(); - module_ir += "\n"; - } - for ( auto func : this->function_list_) - { - module_ir += func->print(); - module_ir += "\n"; - } - return module_ir; -} +#include "Module.h" + +namespace SysYF +{ +namespace IR +{ +Module::Module(std::string name) + : module_name_(name) +{ + // init instr_id2string + instr_id2string_.insert({ Instruction::ret, "ret" }); + instr_id2string_.insert({ Instruction::br, "br" }); + + instr_id2string_.insert({ Instruction::add, "add" }); + instr_id2string_.insert({ Instruction::sub, "sub" }); + instr_id2string_.insert({ Instruction::mul, "mul" }); + instr_id2string_.insert({ Instruction::sdiv, "sdiv" }); + instr_id2string_.insert({ Instruction::srem, "srem" }); + + instr_id2string_.insert({ Instruction::fadd, "fadd" }); + instr_id2string_.insert({ Instruction::fsub, "fsub" }); + instr_id2string_.insert({ Instruction::fmul, "fmul" }); + instr_id2string_.insert({ Instruction::fdiv, "fdiv" }); + + instr_id2string_.insert({ Instruction::alloca, "alloca" }); + instr_id2string_.insert({ Instruction::load, "load" }); + instr_id2string_.insert({ Instruction::store, "store" }); + instr_id2string_.insert({ Instruction::cmp, "icmp" }); + instr_id2string_.insert({ Instruction::fcmp, "fcmp" }); + instr_id2string_.insert({ Instruction::phi, "phi" }); + instr_id2string_.insert({ Instruction::call, "call" }); + instr_id2string_.insert({ Instruction::getelementptr, "getelementptr" }); + instr_id2string_.insert({ Instruction::zext, "zext" }); + instr_id2string_.insert({ Instruction::fptosi, "fptosi" }); + instr_id2string_.insert({ Instruction::sitofp, "sitofp" }); +} + +void Module::init(std::string name) { + void_ty_ = Type::create(Type::VoidTyID, shared_from_this()); + label_ty_ = Type::create(Type::LabelTyID, shared_from_this()); + int1_ty_ = IntegerType::create(1, shared_from_this()); + int32_ty_ = IntegerType::create(32, shared_from_this()); + float32_ty_ = FloatType::create(shared_from_this()); +} + +Ptr Module::create(std::string name) { + RET_AFTER_INIT(Module, name); +} + +Ptr Module::get_void_type() +{ + return void_ty_; +} + +Ptr Module::get_label_type() +{ + return label_ty_; +} + +Ptr Module::get_int1_type() +{ + return int1_ty_; +} + +Ptr Module::get_int32_type() +{ + return int32_ty_; +} + +Ptr Module::get_float_type() +{ + return float32_ty_; +} + +Ptr Module::get_pointer_type(Ptr contained) +{ + if( pointer_map_.find(contained) == pointer_map_.end() ) + { + pointer_map_[contained] = PointerType::create(contained); + } + return pointer_map_[contained]; +} + +Ptr Module::get_array_type(Ptr contained, unsigned num_elements) +{ + if( array_map_.find({contained, num_elements}) == array_map_.end() ) + { + array_map_[{contained, num_elements}] = ArrayType::create(contained, num_elements); + } + return array_map_[{contained, num_elements}]; +} + +Ptr Module::get_int32_ptr_type() +{ + return get_pointer_type(int32_ty_); +} + +Ptr Module::get_float_ptr_type() +{ + return get_pointer_type(float32_ty_); +} + +void Module::add_function(Ptr f) +{ + function_list_.push_back(f); +} +PtrList &Module::get_functions(){ + return function_list_; +} +void Module::add_global_variable(Ptr g) +{ + global_list_.push_back(g); +} +PtrList &Module::get_global_variable(){ + return global_list_; +} + +void Module::set_print_name() +{ + for (auto func : this->get_functions()) + { + func->set_instr_name(); + } + return ; +} + +std::string Module::print() +{ + std::string module_ir; + for ( auto global_val : this->global_list_) + { + module_ir += global_val->print(); + module_ir += "\n"; + } + for ( auto func : this->function_list_) + { + module_ir += func->print(); + module_ir += "\n"; + } + return module_ir; +} + +} +} \ No newline at end of file diff --git a/src/SysYFIR/Type.cpp b/src/SysYFIR/Type.cpp index a69b3de..bc003ae 100644 --- a/src/SysYFIR/Type.cpp +++ b/src/SysYFIR/Type.cpp @@ -1,260 +1,284 @@ -#include "Type.h" -#include "Module.h" - -#ifdef DEBUG -#include -#endif - -Type::Type(TypeID tid, Module *m) -{ - tid_ = tid; - m_ = m; -} - -Module *Type::get_module() -{ - return m_; -} - -bool Type::is_eq_type(Type *ty1, Type *ty2) -{ - return ty1 == ty2; -} - -Type *Type::get_void_type(Module *m) -{ - return m->get_void_type(); -} - -Type *Type::get_label_type(Module *m) -{ - return m->get_label_type(); -} - -IntegerType *Type::get_int1_type(Module *m) -{ - return m->get_int1_type(); -} - -IntegerType *Type::get_int32_type(Module *m) -{ - return m->get_int32_type(); -} - -FloatType *Type::get_float_type(Module *m) -{ - return m->get_float_type(); -} - -PointerType *Type::get_pointer_type(Type *contained) -{ - return PointerType::get(contained); -} - -ArrayType *Type::get_array_type(Type *contained, unsigned num_elements) -{ - return ArrayType::get(contained, num_elements); -} - -PointerType *Type::get_int32_ptr_type(Module *m) -{ - return m->get_int32_ptr_type(); -} - -PointerType *Type::get_float_ptr_type(Module *m) -{ - return m->get_float_ptr_type(); -} - -Type *Type::get_pointer_element_type(){ - if( this->is_pointer_type() ) - return static_cast(this)->get_element_type(); - else - return nullptr; -} - -Type *Type::get_array_element_type(){ - if( this->is_array_type() ) - return static_cast(this)->get_element_type(); - else - return nullptr; -} - -int Type::get_size() -{ - if (this->is_integer_type()) - { - auto bits = static_cast(this)->get_num_bits() / 8; - return bits > 0 ? bits : 1; - } - if (this->is_float_type()) - { - return 4; - } - if (this->is_array_type()) - { - auto element_size = static_cast(this)->get_element_type()->get_size(); - auto num_elements = static_cast(this)->get_num_of_elements(); - return element_size * num_elements; - } - if (this->is_pointer_type()) - { - if (this->get_pointer_element_type()->is_array_type()) - { - return this->get_pointer_element_type()->get_size(); - } - else - { - return 4; - } - } - return 0; -} - -std::string Type::print(){ - std::string type_ir; - switch (this->get_type_id()) - { - case VoidTyID: - type_ir += "void"; - break; - case LabelTyID: - type_ir += "label"; - break; - case IntegerTyID: - type_ir += "i"; - type_ir += std::to_string( static_cast(this)->get_num_bits()); - break; - case FloatTyID: - type_ir += "float"; - break; - case FunctionTyID: - type_ir += static_cast(this)->get_return_type()->print(); - type_ir += " ("; - for( int i = 0 ; i < static_cast(this)->get_num_of_args() ; i++) - { - if(i) - type_ir += ", "; - type_ir += static_cast(this)->get_param_type(i)->print(); - } - type_ir += ")"; - break; - case PointerTyID: - type_ir += this->get_pointer_element_type()->print(); - type_ir += "*"; - break; - case ArrayTyID: - type_ir += "["; - type_ir += std::to_string( static_cast(this)->get_num_of_elements()); - type_ir += " x "; - type_ir += static_cast(this)->get_element_type()->print(); - type_ir += "]"; - break; - default: - break; - } - return type_ir; -} - -IntegerType::IntegerType(unsigned num_bits , Module *m) - : Type(Type::IntegerTyID, m), num_bits_(num_bits) -{ -} - -IntegerType *IntegerType::get(unsigned num_bits, Module *m ) -{ - return new IntegerType(num_bits, m); -} - -unsigned IntegerType::get_num_bits() -{ - return num_bits_; -} - -FloatType::FloatType(Module *m) - : Type(Type::FloatTyID, m) -{ -} - -FloatType *FloatType::get(Module *m ) -{ - return new FloatType(m); -} - -FunctionType::FunctionType(Type *result, std::vector params) - : Type(Type::FunctionTyID, nullptr) -{ -#ifdef DEBUG - assert(is_valid_return_type(result) && "Invalid return type for function!"); -#endif - result_ = result; - - for (auto p : params) { -#ifdef DEBUG - assert(is_valid_argument_type(p) && - "Not a valid type for function argument!"); -#endif - args_.push_back(p); - } -} - -bool FunctionType::is_valid_return_type(Type *ty) -{ - return ty->is_integer_type() || ty->is_void_type(); -} - -bool FunctionType::is_valid_argument_type(Type *ty) -{ - return ty->is_integer_type() || ty->is_pointer_type(); -} - -FunctionType *FunctionType::get(Type *result, - std::vector params) -{ - return new FunctionType(result, params); -} - -unsigned FunctionType::get_num_of_args() const -{ - return args_.size(); -} - -Type *FunctionType::get_param_type(unsigned i) const -{ - return args_[i]; -} - -Type *FunctionType::get_return_type() const -{ - return result_; -} - -ArrayType::ArrayType(Type *contained, unsigned num_elements) - : Type(Type::ArrayTyID, contained->get_module()), num_elements_(num_elements) -{ -#ifdef DEBUG - assert(is_valid_element_type(contained) && "Not a valid type for array element!"); -#endif - contained_ = contained; -} - -bool ArrayType::is_valid_element_type(Type *ty) -{ - return ty->is_integer_type()||ty->is_array_type()||ty->is_float_type(); -} - -ArrayType *ArrayType::get(Type *contained, unsigned num_elements) -{ - return contained->get_module()->get_array_type(contained, num_elements); -} - -PointerType::PointerType(Type *contained) - : Type(Type::PointerTyID, contained->get_module()), contained_(contained) -{ - -} - -PointerType *PointerType::get(Type *contained) -{ - return contained->get_module()->get_pointer_type(contained); -} +#include "Type.h" +#include "Module.h" + +#ifdef DEBUG +#include +#endif + +namespace SysYF +{ +namespace IR +{ +Type::Type(TypeID tid, Ptr m) +{ + tid_ = tid; + m_ = m; +} + +Ptr Type::create(TypeID tid, Ptr m) +{ + RET_AFTER_INIT(Type, tid, m); +} + +Ptr Type::get_module() +{ + return m_; +} + +bool Type::is_eq_type(Ptr ty1, Ptr ty2) +{ + return ty1 == ty2; +} + +Ptr Type::get_void_type(Ptr m) +{ + return m->get_void_type(); +} + +Ptr Type::get_label_type(Ptr m) +{ + return m->get_label_type(); +} + +Ptr Type::get_int1_type(Ptr m) +{ + return m->get_int1_type(); +} + +Ptr Type::get_int32_type(Ptr m) +{ + return m->get_int32_type(); +} + +Ptr Type::get_float_type(Ptr m) +{ + return m->get_float_type(); +} + +Ptr Type::get_pointer_type(Ptr contained) +{ + return PointerType::get(contained); +} + +Ptr Type::get_array_type(Ptr contained, unsigned num_elements) +{ + return ArrayType::get(contained, num_elements); +} + +Ptr Type::get_int32_ptr_type(Ptr m) +{ + return m->get_int32_ptr_type(); +} + +Ptr Type::get_float_ptr_type(Ptr m) +{ + return m->get_float_ptr_type(); +} + +Ptr Type::get_pointer_element_type(){ + if( this->is_pointer_type() ) + return static_pointer_cast(shared_from_this())->get_element_type(); + else + return nullptr; +} + +Ptr Type::get_array_element_type(){ + if( this->is_array_type() ) + return static_pointer_cast(shared_from_this())->get_element_type(); + else + return nullptr; +} + +int Type::get_size() +{ + if (this->is_integer_type()) + { + auto bits = static_pointer_cast(shared_from_this())->get_num_bits() / 8; + return bits > 0 ? bits : 1; + } + if (this->is_float_type()) + { + return 4; + } + if (this->is_array_type()) + { + auto element_size = static_pointer_cast(shared_from_this())->get_element_type()->get_size(); + auto num_elements = static_pointer_cast(shared_from_this())->get_num_of_elements(); + return element_size * num_elements; + } + if (this->is_pointer_type()) + { + if (this->get_pointer_element_type()->is_array_type()) + { + return this->get_pointer_element_type()->get_size(); + } + else + { + return 4; + } + } + return 0; +} + +std::string Type::print(){ + std::string type_ir; + switch (this->get_type_id()) + { + case VoidTyID: + type_ir += "void"; + break; + case LabelTyID: + type_ir += "label"; + break; + case IntegerTyID: + type_ir += "i"; + type_ir += std::to_string( static_pointer_cast(shared_from_this())->get_num_bits()); + break; + case FloatTyID: + type_ir += "float"; + break; + case FunctionTyID: + type_ir += static_pointer_cast(shared_from_this())->get_return_type()->print(); + type_ir += " ("; + for(unsigned int i = 0 ; i < static_pointer_cast(shared_from_this())->get_num_of_args() ; i++) + { + if(i) + type_ir += ", "; + type_ir += static_pointer_cast(shared_from_this())->get_param_type(i)->print(); + } + type_ir += ")"; + break; + case PointerTyID: + type_ir += this->get_pointer_element_type()->print(); + type_ir += "*"; + break; + case ArrayTyID: + type_ir += "["; + type_ir += std::to_string( static_pointer_cast(shared_from_this())->get_num_of_elements()); + type_ir += " x "; + type_ir += static_pointer_cast(shared_from_this())->get_element_type()->print(); + type_ir += "]"; + break; + default: + break; + } + return type_ir; +} + +IntegerType::IntegerType(unsigned num_bits , Ptr m) + : Type(Type::IntegerTyID, m), num_bits_(num_bits) +{ + +} + + +Ptr IntegerType::create(unsigned num_bits, Ptr m ) +{ + RET_AFTER_INIT(IntegerType, num_bits, m); +} + +unsigned IntegerType::get_num_bits() +{ + return num_bits_; +} + +FloatType::FloatType(Ptr m) + : Type(Type::FloatTyID, m) +{ + +} + +Ptr FloatType::create(Ptr m ) +{ + RET_AFTER_INIT(FloatType, m); +} + +FunctionType::FunctionType(Ptr result, PtrVec params) + : Type(Type::FunctionTyID, nullptr) +{ +#ifdef DEBUG + assert(is_valid_return_type(result) && "Invalid return type for function!"); +#endif + result_ = result; + + for (auto p : params) { +#ifdef DEBUG + assert(is_valid_argument_type(p) && + "Not a valid type for function argument!"); +#endif + args_.push_back(p); + } +} + +Ptr FunctionType::create(Ptr result, PtrVec params) +{ + RET_AFTER_INIT(FunctionType, result, params); +} + +bool FunctionType::is_valid_return_type(Ptr ty) +{ + return ty->is_integer_type() || ty->is_void_type(); +} + +bool FunctionType::is_valid_argument_type(Ptr ty) +{ + return ty->is_integer_type() || ty->is_pointer_type(); +} + +unsigned FunctionType::get_num_of_args() const +{ + return args_.size(); +} + +Ptr FunctionType::get_param_type(unsigned i) const +{ + return args_[i]; +} + +Ptr FunctionType::get_return_type() const +{ + return result_; +} + +ArrayType::ArrayType(Ptr contained, unsigned num_elements) + : Type(Type::ArrayTyID, contained->get_module()), num_elements_(num_elements) +{ +#ifdef DEBUG + assert(is_valid_element_type(contained) && "Not a valid type for array element!"); +#endif + contained_ = contained; +} + +bool ArrayType::is_valid_element_type(Ptr ty) +{ + return ty->is_integer_type()||ty->is_array_type()||ty->is_float_type(); +} + +Ptr ArrayType::get(Ptr contained, unsigned num_elements) +{ + return contained->get_module()->get_array_type(contained, num_elements); +} + +Ptr ArrayType::create(Ptr contained, unsigned num_elements) +{ + RET_AFTER_INIT(ArrayType, contained, num_elements); +} + +PointerType::PointerType(Ptr contained) + : Type(Type::PointerTyID, contained->get_module()), contained_(contained) +{ + +} + +Ptr PointerType::get(Ptr contained) +{ + return contained->get_module()->get_pointer_type(contained); +} + +Ptr PointerType::create(Ptr contained) +{ + RET_AFTER_INIT(PointerType, contained); +} + +} +} \ No newline at end of file diff --git a/src/SysYFIR/User.cpp b/src/SysYFIR/User.cpp index c896e9f..1fdacb8 100644 --- a/src/SysYFIR/User.cpp +++ b/src/SysYFIR/User.cpp @@ -1,60 +1,67 @@ -#include "User.h" -#ifdef DEBUG -#include -#endif - -User::User(Type *ty, const std::string &name , unsigned num_ops ) - : Value(ty, name), num_ops_(num_ops) -{ - // if (num_ops_ > 0) - // operands_.reset(new std::list()); - operands_.resize(num_ops_, nullptr); -} - -std::vector& User::get_operands() -{ - return operands_; -} - -Value *User::get_operand(unsigned i) const -{ - return operands_[i]; -} - -void User::set_operand(unsigned i, Value *v) -{ -#ifdef DEBUG - assert(i < num_ops_ && "set_operand out of index"); -#endif - // assert(operands_[i] == nullptr && "ith operand is not null"); - operands_[i] = v; - v->add_use(this, i); -} - -void User::add_operand( Value *v) -{ - operands_.push_back(v); - v->add_use(this, num_ops_); - num_ops_++; -} - -unsigned User::get_num_operand() const -{ - return num_ops_; -} - -void User::remove_use_of_ops() -{ - for (auto op : operands_) { - op->remove_use(this); - } -} - -void User::remove_operands(int index1,int index2){ - for(int i=index1;i<=index2;i++){ - operands_[i]->remove_use(this); - } - operands_.erase(operands_.begin()+index1,operands_.begin()+index2+1); - // std::cout< +#endif + +namespace SysYF +{ +namespace IR +{ +User::User(Ptr ty, const std::string &name , unsigned num_ops) + : Value(ty, name), num_ops_(num_ops) +{ + // if (num_ops_ > 0) + // operands_.reset(new std::list >()); + operands_.resize(num_ops_, nullptr); +} + +PtrVec& User::get_operands() +{ + return operands_; +} + +Ptr User::get_operand(unsigned i) const +{ + return operands_[i]; +} + +void User::set_operand(unsigned i, Ptr v) +{ +#ifdef DEBUG + assert(i < num_ops_ && "set_operand out of index"); +#endif + // assert(operands_[i] == nullptr && "ith operand is not null"); + operands_[i] = v; + v->add_use(shared_from_this(), i); +} + +void User::add_operand(Ptr v) +{ + operands_.push_back(v); + v->add_use(shared_from_this(), num_ops_); + num_ops_++; +} + +unsigned User::get_num_operand() const +{ + return num_ops_; +} + +void User::remove_use_of_ops() +{ + for (auto op : operands_) { + op->remove_use(shared_from_this()); + } +} + +void User::remove_operands(int index1,int index2){ + for(int i=index1;i<=index2;i++){ + operands_[i]->remove_use(shared_from_this()); + } + operands_.erase(operands_.begin()+index1,operands_.begin()+index2+1); + // std::cout< -#endif - -Value::Value(Type *ty, const std::string &name ) - : type_(ty), name_(name) -{ - -} - -void Value::add_use(Value *val, unsigned arg_no ) -{ - use_list_.push_back(Use(val, arg_no)); -} - -std::string Value::get_name() const -{ - return name_; -} - -void Value::replace_all_use_with(Value *new_val) -{ - for (auto use : use_list_) { - auto val = dynamic_cast(use.val_); -#ifdef DEBUG - assert(val && "new_val is not a user"); -#endif - val->set_operand(use.arg_no_, new_val); - } -} - -void Value::remove_use(Value *val) -{ - auto is_val = [val] (const Use &use) { return use.val_ == val; }; - use_list_.remove_if(is_val); +#include "Value.h" +#include "Type.h" +#include "User.h" +#ifdef DEBUG +#include +#endif + +namespace SysYF +{ +namespace IR +{ +Value::Value(Ptr ty, const std::string &name) + : type_(ty), name_(name) +{ + +} + +void Value::add_use(Ptr val, unsigned arg_no) +{ + use_list_.push_back(Use(val, arg_no)); +} + +std::string Value::get_name() const +{ + return name_; +} + +void Value::replace_all_use_with(Ptr new_val) +{ + for (auto use : use_list_) { + auto val = dynamic_pointer_cast(use.val_); +#ifdef DEBUG + assert(val && "new_val is not a user"); +#endif + val->set_operand(use.arg_no_, new_val); + } +} + +void Value::remove_use(Ptr val) +{ + auto is_val = [val] (const Use &use) { return use.val_ == val; }; + use_list_.remove_if(is_val); +} + +} } \ No newline at end of file diff --git a/src/SysYFIRBuilder/CMakeLists.txt b/src/SysYFIRBuilder/CMakeLists.txt index c0b4e4d..59aec00 100644 --- a/src/SysYFIRBuilder/CMakeLists.txt +++ b/src/SysYFIRBuilder/CMakeLists.txt @@ -1,4 +1,4 @@ -add_library( - SysYFIRBuilder STATIC - IRBuilder.cpp -) +add_library( + SysYFIRBuilder STATIC + IRBuilder.cpp +) diff --git a/src/SysYFIRBuilder/IRBuilder.cpp b/src/SysYFIRBuilder/IRBuilder.cpp index 3890091..951bd45 100644 --- a/src/SysYFIRBuilder/IRBuilder.cpp +++ b/src/SysYFIRBuilder/IRBuilder.cpp @@ -1,29 +1,33 @@ #include "IRBuilder.h" -#define CONST_INT(num) ConstantInt::get(num, module.get()) -#define CONST_FLOAT(num) ConstantFloat::get(num, module.get()) - -// You can define global variables and functions here +namespace SysYF +{ +namespace IR +{ +#define CONST_INT(num) ConstantInt::create(num, module) +#define CONST_FLOAT(num) ConstantFloat::create(num, module) + +// You can define global variables here // to store state // store temporary value -Value *tmp_val = nullptr; +Ptr tmp_val = nullptr; // types -Type *VOID_T; -Type *INT1_T; -Type *INT32_T; -Type *FLOAT_T; -Type *INT32PTR_T; -Type *FLOATPTR_T; +Ptr VOID_T; +Ptr INT1_T; +Ptr INT32_T; +Ptr FLOAT_T; +Ptr INT32PTR_T; +Ptr FLOATPTR_T; void IRBuilder::visit(SyntaxTree::Assembly &node) { - VOID_T = Type::get_void_type(module.get()); - INT1_T = Type::get_int1_type(module.get()); - INT32_T = Type::get_int32_type(module.get()); - FLOAT_T = Type::get_float_type(module.get()); - INT32PTR_T = Type::get_int32_ptr_type(module.get()); - FLOATPTR_T = Type::get_float_ptr_type(module.get()); + VOID_T = Type::get_void_type(module); + INT1_T = Type::get_int1_type(module); + INT32_T = Type::get_int32_type(module); + FLOAT_T = Type::get_float_type(module); + INT32PTR_T = Type::get_int32_ptr_type(module); + FLOATPTR_T = Type::get_float_ptr_type(module); for (const auto &def : node.global_defs) { def->accept(*this); } @@ -72,3 +76,6 @@ void IRBuilder::visit(SyntaxTree::WhileStmt &node) {} void IRBuilder::visit(SyntaxTree::BreakStmt &node) {} void IRBuilder::visit(SyntaxTree::ContinueStmt &node) {} + +} +} \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp old mode 100644 new mode 100755 index fd1336f..cae2b75 --- a/src/main.cpp +++ b/src/main.cpp @@ -14,10 +14,9 @@ void print_help(const std::string& exe_name) { int main(int argc, char *argv[]) { - IRBuilder builder; SysYFDriver driver; - SyntaxTreePrinter printer; - ErrorReporter reporter(std::cerr); + SysYF::SyntaxTree::SyntaxTreePrinter printer; + auto builder = SysYF::IR::IRBuilder::create(); bool print_ast = false; bool print_ir = false; @@ -48,8 +47,8 @@ int main(int argc, char *argv[]) if (print_ast) root->accept(printer); if (print_ir) { - root->accept(builder); - auto m = builder.getModule(); + root->accept(*builder); + auto m = builder->getModule(); m->set_file_name(filename); m->set_print_name(); auto IR = m->print();